@stridge/kit 0.1.0-alpha.5 → 0.1.0-alpha.51

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 (398) 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/activity-history/compound/index.d.ts +9 -0
  8. package/dist/activity-history/compound/index.js +1 -0
  9. package/dist/deposit/compound/index.d.ts +4 -3
  10. package/dist/deposit/widgets/index.d.ts +13 -0
  11. package/dist/deposit/widgets/index.js +1 -0
  12. package/dist/drivers/stridge/catalog.d.ts +54 -0
  13. package/dist/drivers/stridge/catalog.js +1 -0
  14. package/dist/drivers/stridge/createStridgeDepositDriver.d.ts +10 -1
  15. package/dist/drivers/stridge/createStridgeDepositDriver.js +1 -1
  16. package/dist/drivers/stridge/createStridgeWithdrawDriver.d.ts +37 -14
  17. package/dist/drivers/stridge/createStridgeWithdrawDriver.js +1 -1
  18. package/dist/drivers/stridge/internal/ensureWalletChain.js +1 -0
  19. package/dist/drivers/stridge/internal/pollOnce.js +1 -1
  20. package/dist/drivers/stridge/internal/resolveAddEthereumChain.js +1 -0
  21. package/dist/drivers/stridge/internal/retry.js +1 -0
  22. package/dist/drivers/stridge/internal/supportedChains.js +1 -0
  23. package/dist/drivers/stridge/types.d.ts +20 -14
  24. package/dist/drivers/stridge/types.js +1 -1
  25. package/dist/drivers/stridge/wagmiSigner.js +1 -1
  26. package/dist/drivers/stridge-mock/createStridgeMockDriver.d.ts +4 -2
  27. package/dist/drivers/stridge-mock/createStridgeMockDriver.js +1 -1
  28. package/dist/drivers/stridge-mock/createStridgeMockWithdrawDriver.d.ts +17 -4
  29. package/dist/drivers/stridge-mock/createStridgeMockWithdrawDriver.js +1 -1
  30. package/dist/drivers/stridge-mock/fixtures.d.ts +14 -12
  31. package/dist/drivers/stridge-mock/fixtures.js +1 -1
  32. package/dist/events/bus/createBus.d.ts +7 -0
  33. package/dist/events/bus/createBus.js +1 -0
  34. package/dist/events/bus/flowIdRegistry.d.ts +17 -0
  35. package/dist/events/bus/flowIdRegistry.js +1 -0
  36. package/dist/events/bus/index.js +1 -0
  37. package/dist/events/bus/metadata.js +1 -0
  38. package/dist/events/context.js +1 -0
  39. package/dist/events/emit/index.js +1 -0
  40. package/dist/events/emit/mapFailure.js +1 -0
  41. package/dist/events/emit/useDepositEmissions.js +1 -0
  42. package/dist/events/emit/useKitEmitter.js +1 -0
  43. package/dist/events/emit/useWithdrawEmissions.js +1 -0
  44. package/dist/events/hooks/index.d.ts +6 -0
  45. package/dist/events/hooks/index.js +1 -0
  46. package/dist/events/hooks/useCurrentFlowId.d.ts +6 -0
  47. package/dist/events/hooks/useCurrentFlowId.js +1 -0
  48. package/dist/events/hooks/useStableHandler.js +1 -0
  49. package/dist/events/hooks/useStridgeEvent.d.ts +8 -0
  50. package/dist/events/hooks/useStridgeEvent.js +1 -0
  51. package/dist/events/hooks/useStridgeEventBus.d.ts +33 -0
  52. package/dist/events/hooks/useStridgeEventBus.js +1 -0
  53. package/dist/events/hooks/useStridgeEvents.d.ts +6 -0
  54. package/dist/events/hooks/useStridgeEvents.js +1 -0
  55. package/dist/events/hooks/useStridgeFlowEvent.d.ts +8 -0
  56. package/dist/events/hooks/useStridgeFlowEvent.js +1 -0
  57. package/dist/events/hooks/useStridgeFlowEvents.d.ts +6 -0
  58. package/dist/events/hooks/useStridgeFlowEvents.js +1 -0
  59. package/dist/events/index.d.ts +14 -0
  60. package/dist/events/index.js +1 -0
  61. package/dist/events/publish.js +1 -0
  62. package/dist/events/types/deposit.d.ts +235 -0
  63. package/dist/events/types/envelope.d.ts +145 -0
  64. package/dist/events/types/index.d.ts +31 -0
  65. package/dist/events/types/kit.d.ts +23 -0
  66. package/dist/events/types/withdraw.d.ts +150 -0
  67. package/dist/flows/deposit/dialog/DepositDialog.d.ts +20 -82
  68. package/dist/flows/deposit/dialog/DepositDialog.js +1 -1
  69. package/dist/flows/deposit/dialog/WalletRequiredState.js +1 -0
  70. package/dist/flows/deposit/dialog/WalletRequiredState.styles.js +1 -0
  71. package/dist/flows/deposit/driver/payloads.d.ts +17 -4
  72. package/dist/flows/deposit/driver/transformers/balanceToBalancesPayload.d.ts +2 -0
  73. package/dist/flows/deposit/driver/transformers/balanceToBalancesPayload.js +1 -1
  74. package/dist/flows/deposit/driver/transformers/index.d.ts +1 -0
  75. package/dist/flows/deposit/driver/transformers/quoteToPayload.d.ts +2 -0
  76. package/dist/flows/deposit/driver/transformers/settlementToPayload.d.ts +25 -0
  77. package/dist/flows/deposit/driver/transformers/startToAddressesPayload.d.ts +2 -0
  78. package/dist/flows/deposit/driver/transformers/startToAddressesPayload.js +1 -1
  79. package/dist/flows/deposit/driver/transformers/startToBrandPayload.d.ts +1 -0
  80. package/dist/flows/deposit/driver/transformers/startToTargetPayload.d.ts +2 -0
  81. package/dist/flows/deposit/driver/transformers/startToTargetPayload.js +1 -1
  82. package/dist/flows/deposit/driver/transformers/walletAddressToWalletPayload.d.ts +1 -0
  83. package/dist/flows/deposit/driver/types.d.ts +64 -3
  84. package/dist/flows/deposit/orchestrator/controller.js +1 -1
  85. package/dist/flows/deposit/orchestrator/reducer.js +1 -1
  86. package/dist/flows/deposit/orchestrator/types.d.ts +103 -1
  87. package/dist/flows/deposit/orchestrator/useDeposit.d.ts +45 -1
  88. package/dist/flows/deposit/orchestrator/useDeposit.js +1 -1
  89. package/dist/flows/deposit/widgets/activity-history/DepositHistoryDetail.d.ts +40 -0
  90. package/dist/flows/deposit/widgets/activity-history/DepositHistoryDetail.js +1 -0
  91. package/dist/flows/deposit/widgets/activity-history/DepositHistoryList.d.ts +38 -0
  92. package/dist/flows/deposit/widgets/activity-history/DepositHistoryList.js +1 -0
  93. package/dist/flows/deposit/widgets/activity-history/index.d.ts +2 -0
  94. package/dist/flows/deposit/widgets/activity-history/index.js +1 -0
  95. package/dist/flows/deposit/widgets/activity-history/useDepositActivityHistorySource.js +1 -0
  96. package/dist/flows/deposit/widgets/amount-entry/AmountEntry.d.ts +32 -5
  97. package/dist/flows/deposit/widgets/amount-entry/AmountEntry.js +1 -1
  98. package/dist/flows/deposit/widgets/amount-entry/footerIntent.js +1 -0
  99. package/dist/flows/deposit/widgets/asset-picker/AssetPicker.d.ts +22 -4
  100. package/dist/flows/deposit/widgets/asset-picker/AssetPicker.js +1 -1
  101. package/dist/flows/deposit/widgets/confirm-deposit/ConfirmDeposit.d.ts +37 -4
  102. package/dist/flows/deposit/widgets/confirm-deposit/ConfirmDeposit.js +1 -1
  103. package/dist/flows/deposit/widgets/deposit/Deposit.d.ts +33 -4
  104. package/dist/flows/deposit/widgets/deposit/Deposit.js +1 -1
  105. package/dist/flows/deposit/widgets/deposit/compound/Deposit.d.ts +32 -0
  106. package/dist/flows/deposit/widgets/deposit/compound/Deposit.js +1 -1
  107. package/dist/flows/deposit/widgets/deposit/compound/Deposit.styles.js +1 -1
  108. package/dist/flows/deposit/widgets/deposit/compound/components/Boundary.d.ts +29 -0
  109. package/dist/flows/deposit/widgets/deposit/compound/components/Boundary.js +1 -0
  110. package/dist/flows/deposit/widgets/deposit/compound/components/Guards.d.ts +28 -0
  111. package/dist/flows/deposit/widgets/deposit/compound/components/Guards.js +1 -0
  112. package/dist/flows/deposit/widgets/deposit/compound/components/Header.d.ts +10 -0
  113. package/dist/flows/deposit/widgets/deposit/compound/components/Header.js +1 -1
  114. package/dist/flows/deposit/widgets/deposit/compound/components/Method.d.ts +6 -0
  115. package/dist/flows/deposit/widgets/deposit/compound/components/Method.js +1 -1
  116. package/dist/flows/deposit/widgets/deposit/compound/components/Steps.d.ts +24 -0
  117. package/dist/flows/deposit/widgets/deposit/compound/components/Steps.js +1 -0
  118. package/dist/flows/deposit/widgets/deposit/compound/index.d.ts +1 -0
  119. package/dist/flows/deposit/widgets/deposit/compound/types.d.ts +6 -3
  120. package/dist/flows/deposit/widgets/deposit-status-banner/DepositStatusBanner.d.ts +41 -1
  121. package/dist/flows/deposit/widgets/deposit-status-banner/DepositStatusBanner.js +1 -1
  122. package/dist/flows/deposit/widgets/deposit-status-banner/compound/DepositStatusBanner.js +1 -1
  123. package/dist/flows/deposit/widgets/deposit-status-banner/compound/components/Hero.js +1 -1
  124. package/dist/flows/deposit/widgets/deposit-status-banner/compound/components/PrimaryAction.js +1 -1
  125. package/dist/flows/deposit/widgets/deposit-status-banner/compound/types.d.ts +5 -5
  126. package/dist/flows/deposit/widgets/error-state/ErrorState.d.ts +39 -4
  127. package/dist/flows/deposit/widgets/error-state/ErrorState.js +1 -1
  128. package/dist/flows/deposit/widgets/processing-state/ProcessingState.d.ts +30 -4
  129. package/dist/flows/deposit/widgets/processing-state/ProcessingState.js +1 -1
  130. package/dist/flows/deposit/widgets/success-state/SuccessState.d.ts +38 -4
  131. package/dist/flows/deposit/widgets/success-state/SuccessState.js +1 -1
  132. package/dist/flows/deposit/widgets/transfer-crypto/TransferCrypto.d.ts +34 -3
  133. package/dist/flows/deposit/widgets/transfer-crypto/TransferCrypto.js +1 -1
  134. package/dist/flows/deposit/widgets/transfer-crypto/compound/TransferCrypto.d.ts +1 -1
  135. package/dist/flows/deposit/widgets/transfer-crypto/compound/TransferCrypto.styles.js +1 -1
  136. package/dist/flows/deposit/widgets/transfer-crypto/compound/components/Address.js +1 -1
  137. package/dist/flows/deposit/widgets/transfer-crypto/compound/components/Disclosure.d.ts +5 -2
  138. package/dist/flows/deposit/widgets/transfer-crypto/compound/components/Disclosure.js +1 -1
  139. package/dist/flows/deposit/widgets/transfer-crypto/compound/components/Header.d.ts +5 -0
  140. package/dist/flows/deposit/widgets/transfer-crypto/compound/components/Header.js +1 -1
  141. package/dist/flows/deposit/widgets/transfer-crypto/compound/components/QrCode.d.ts +4 -10
  142. package/dist/flows/deposit/widgets/transfer-crypto/compound/components/QrCode.js +1 -1
  143. package/dist/flows/deposit/widgets/transfer-crypto/compound/types.d.ts +16 -2
  144. package/dist/flows/shared/transformers/computeQuoteAttrs.d.ts +1 -0
  145. package/dist/flows/shared/transformers/index.d.ts +1 -0
  146. package/dist/flows/shared/transformers/pickRelevantSettlement.d.ts +1 -0
  147. package/dist/flows/shared/transformers/pickRelevantSettlement.js +1 -1
  148. package/dist/flows/shared/transformers/testnets.js +1 -0
  149. package/dist/flows/withdraw/bindings/WithdrawBindings.d.ts +92 -0
  150. package/dist/flows/withdraw/bindings/WithdrawBindings.js +1 -0
  151. package/dist/flows/withdraw/bindings/index.d.ts +1 -0
  152. package/dist/flows/withdraw/bindings/index.js +1 -0
  153. package/dist/flows/withdraw/dialog/WithdrawDialog.d.ts +35 -71
  154. package/dist/flows/withdraw/dialog/WithdrawDialog.js +1 -1
  155. package/dist/flows/withdraw/driver/dto.d.ts +8 -7
  156. package/dist/flows/withdraw/driver/payloads.d.ts +16 -1
  157. package/dist/flows/withdraw/driver/transformers/settlementToWithdrawalPayload.js +1 -1
  158. package/dist/flows/withdraw/driver/transformers/supportedAssetsToReceiveOptionsPayload.js +1 -1
  159. package/dist/flows/withdraw/driver/types.d.ts +111 -14
  160. package/dist/flows/withdraw/orchestrator/controller.js +1 -1
  161. package/dist/flows/withdraw/orchestrator/index.d.ts +1 -1
  162. package/dist/flows/withdraw/orchestrator/reducer.js +1 -1
  163. package/dist/flows/withdraw/orchestrator/types.d.ts +201 -32
  164. package/dist/flows/withdraw/orchestrator/useWithdraw.d.ts +36 -1
  165. package/dist/flows/withdraw/orchestrator/useWithdraw.js +1 -1
  166. package/dist/flows/withdraw/widgets/activity-history/WithdrawHistoryDetail.d.ts +39 -0
  167. package/dist/flows/withdraw/widgets/activity-history/WithdrawHistoryDetail.js +1 -0
  168. package/dist/flows/withdraw/widgets/activity-history/WithdrawHistoryList.d.ts +36 -0
  169. package/dist/flows/withdraw/widgets/activity-history/WithdrawHistoryList.js +1 -0
  170. package/dist/flows/withdraw/widgets/activity-history/index.d.ts +2 -0
  171. package/dist/flows/withdraw/widgets/activity-history/index.js +1 -0
  172. package/dist/flows/withdraw/widgets/activity-history/useWithdrawActivityHistorySource.js +1 -0
  173. package/dist/flows/withdraw/widgets/withdraw/compound/Withdraw.d.ts +60 -0
  174. package/dist/flows/withdraw/widgets/withdraw/compound/Withdraw.js +1 -0
  175. package/dist/flows/withdraw/widgets/withdraw/compound/Withdraw.slots.d.ts +13 -0
  176. package/dist/flows/withdraw/widgets/withdraw/compound/Withdraw.slots.js +1 -0
  177. package/dist/flows/withdraw/widgets/withdraw/compound/components/Boundary.d.ts +29 -0
  178. package/dist/flows/withdraw/widgets/withdraw/compound/components/Boundary.js +1 -0
  179. package/dist/flows/withdraw/widgets/withdraw/compound/components/Guards.d.ts +25 -0
  180. package/dist/flows/withdraw/widgets/withdraw/compound/components/Guards.js +1 -0
  181. package/dist/flows/withdraw/widgets/withdraw/compound/components/Steps.d.ts +27 -0
  182. package/dist/flows/withdraw/widgets/withdraw/compound/components/Steps.js +1 -0
  183. package/dist/flows/withdraw/widgets/withdraw/compound/index.d.ts +3 -0
  184. package/dist/flows/withdraw/widgets/withdraw/compound/index.js +1 -0
  185. package/dist/flows/withdraw/widgets/withdraw-error/WithdrawError.d.ts +45 -2
  186. package/dist/flows/withdraw/widgets/withdraw-error/WithdrawError.js +1 -1
  187. package/dist/flows/withdraw/widgets/withdraw-form/WithdrawForm.d.ts +32 -12
  188. package/dist/flows/withdraw/widgets/withdraw-form/WithdrawForm.js +1 -1
  189. package/dist/flows/withdraw/widgets/withdraw-form/compound/WithdrawForm.js +1 -1
  190. package/dist/flows/withdraw/widgets/withdraw-form/compound/components/Header.d.ts +6 -1
  191. package/dist/flows/withdraw/widgets/withdraw-form/compound/components/Header.js +1 -1
  192. package/dist/flows/withdraw/widgets/withdraw-form/compound/components/RecipientField.d.ts +7 -5
  193. package/dist/flows/withdraw/widgets/withdraw-form/compound/components/RecipientField.js +1 -1
  194. package/dist/flows/withdraw/widgets/withdraw-form/compound/types.d.ts +15 -5
  195. package/dist/flows/withdraw/widgets/withdraw-form/validation.js +1 -1
  196. package/dist/flows/withdraw/widgets/withdraw-in-progress/WithdrawInProgress.d.ts +39 -3
  197. package/dist/flows/withdraw/widgets/withdraw-in-progress/WithdrawInProgress.js +1 -1
  198. package/dist/flows/withdraw/widgets/withdraw-success/WithdrawSuccess.d.ts +46 -2
  199. package/dist/flows/withdraw/widgets/withdraw-success/WithdrawSuccess.js +1 -1
  200. package/dist/i18n/index.d.ts +5 -4
  201. package/dist/i18n/index.js +1 -1
  202. package/dist/i18n/locales/ar.js +1 -1
  203. package/dist/i18n/locales/es.js +1 -1
  204. package/dist/i18n/locales/source-keys.d.ts +12 -0
  205. package/dist/i18n/locales/source-keys.js +0 -0
  206. package/dist/icons/index.d.ts +3 -1
  207. package/dist/icons/index.js +1 -1
  208. package/dist/index.d.ts +22 -9
  209. package/dist/index.js +1 -1
  210. package/dist/package.js +1 -1
  211. package/dist/scope/KitPortalScope.js +1 -1
  212. package/dist/scope/KitScope.d.ts +18 -1
  213. package/dist/scope/KitScope.js +1 -1
  214. package/dist/scope/context.d.ts +17 -1
  215. package/dist/scope/index.d.ts +1 -1
  216. package/dist/shared/attribution/Attribution.js +1 -0
  217. package/dist/shared/attribution/Attribution.slots.js +1 -0
  218. package/dist/shared/attribution/Attribution.styles.js +1 -0
  219. package/dist/shared/attribution/index.js +1 -0
  220. package/dist/shared/chains/index.d.ts +48 -29
  221. package/dist/shared/chains/index.js +1 -1
  222. package/dist/shared/constants/brand-intercom.js +1 -0
  223. package/dist/shared/cuer/Cuer.js +1 -1
  224. package/dist/shared/dialog/Frame.js +1 -1
  225. package/dist/shared/dialog/LoadingState.js +1 -0
  226. package/dist/shared/dialog/LoadingState.styles.js +1 -0
  227. package/dist/shared/dialog/StepTransition.js +1 -1
  228. package/dist/shared/dialog/useDirectionalChevronTransform.js +1 -1
  229. package/dist/shared/driver/types.d.ts +4 -3
  230. package/dist/shared/i18n/KitI18nProvider.d.ts +11 -8
  231. package/dist/shared/i18n/KitI18nProvider.js +1 -1
  232. package/dist/shared/i18n/createKitI18n.d.ts +79 -16
  233. package/dist/shared/i18n/createKitI18n.js +1 -1
  234. package/dist/shared/i18n/useLingui.d.ts +11 -3
  235. package/dist/shared/icons/HistoryIcon.d.ts +12 -0
  236. package/dist/shared/icons/HistoryIcon.js +1 -0
  237. package/dist/shared/icons/LogoIcon.d.ts +13 -0
  238. package/dist/shared/icons/LogoIcon.js +1 -0
  239. package/dist/shared/merchant-link/MerchantLink.d.ts +1 -0
  240. package/dist/shared/merchant-link/MerchantLink.js +1 -0
  241. package/dist/shared/merchant-link/MerchantLinkButton.d.ts +1 -0
  242. package/dist/shared/merchant-link/MerchantLinkButton.js +1 -0
  243. package/dist/shared/merchant-link/index.d.ts +1 -0
  244. package/dist/shared/merchant-link/index.js +1 -0
  245. package/dist/shared/merchant-link/resolveMerchantLink.js +1 -0
  246. package/dist/shared/orchestrator/useSettlementWatcher.js +1 -1
  247. package/dist/shared/primitives/TxHashValue/TxHashValue.js +1 -1
  248. package/dist/shared/support/SupportConfigContext.d.ts +1 -0
  249. package/dist/shared/support/SupportConfigContext.js +1 -0
  250. package/dist/shared/support/SupportLink.d.ts +1 -0
  251. package/dist/shared/support/SupportLink.js +1 -0
  252. package/dist/shared/support/SupportSpinner.d.ts +1 -0
  253. package/dist/shared/support/SupportSpinner.js +1 -0
  254. package/dist/shared/support/index.d.ts +2 -0
  255. package/dist/shared/support/index.js +1 -0
  256. package/dist/shared/support/intercom-loader.d.ts +17 -0
  257. package/dist/shared/support/intercom-loader.js +1 -0
  258. package/dist/shared/support/types.d.ts +43 -0
  259. package/dist/shared/support/useIntercomMerchantContext.d.ts +27 -0
  260. package/dist/shared/support/useIntercomMerchantContext.js +1 -0
  261. package/dist/shared/support/useIntercomShutdownOnUnmount.js +1 -0
  262. package/dist/shared/support/useMerchantContext.d.ts +1 -0
  263. package/dist/shared/support/useMerchantContext.js +1 -0
  264. package/dist/shared/support/useSupportTrigger.js +1 -0
  265. package/dist/shared/terms/TermsConfigContext.d.ts +1 -0
  266. package/dist/shared/terms/TermsConfigContext.js +1 -0
  267. package/dist/shared/terms/TermsLink.d.ts +1 -0
  268. package/dist/shared/terms/TermsLink.js +1 -0
  269. package/dist/shared/terms/index.d.ts +1 -0
  270. package/dist/shared/terms/index.js +1 -0
  271. package/dist/shared/terms/types.d.ts +43 -0
  272. package/dist/shared/ui/Card/Card.styles.js +1 -1
  273. package/dist/shared/ui/Details/Details.d.ts +9 -1
  274. package/dist/shared/ui/Details/Details.styles.js +1 -1
  275. package/dist/shared/ui/Dialog/Dialog.js +1 -1
  276. package/dist/shared/ui/Dialog/Dialog.styles.js +1 -1
  277. package/dist/shared/ui/Select/Select.js +1 -1
  278. package/dist/shared/ui/SelectableTile/SelectableTile.d.ts +21 -8
  279. package/dist/shared/ui/SelectableTile/SelectableTile.js +1 -1
  280. package/dist/shared/ui/Steps/Steps.d.ts +52 -0
  281. package/dist/shared/ui/Steps/Steps.js +1 -0
  282. package/dist/shared/ui/Steps/Steps.slots.d.ts +7 -0
  283. package/dist/shared/ui/Steps/Steps.slots.js +1 -0
  284. package/dist/shared/ui/Steps/Steps.styles.js +1 -0
  285. package/dist/shared/ui/Steps/index.d.ts +2 -0
  286. package/dist/shared/ui/Steps/index.js +1 -0
  287. package/dist/shared/ui/WalletRow/WalletRow.d.ts +1 -1
  288. package/dist/shared/ui/WalletRow/WalletRow.js +1 -1
  289. package/dist/shared/utils/logos/types.d.ts +1 -1
  290. package/dist/shared/utils/useDeepMemo.js +1 -0
  291. package/dist/shared/wallet/ConnectWalletContext.d.ts +17 -0
  292. package/dist/shared/wallet/ConnectWalletContext.js +1 -0
  293. package/dist/shared/widgets/activity-history/ActivityTrigger.js +1 -0
  294. package/dist/shared/widgets/activity-history/ActivityTrigger.styles.js +1 -0
  295. package/dist/shared/widgets/activity-history/adapters/settlementToWidgetProps.js +1 -0
  296. package/dist/shared/widgets/activity-history/compound/ActivityHistory.d.ts +95 -0
  297. package/dist/shared/widgets/activity-history/compound/ActivityHistory.js +1 -0
  298. package/dist/shared/widgets/activity-history/compound/ActivityHistory.slots.d.ts +22 -0
  299. package/dist/shared/widgets/activity-history/compound/ActivityHistory.slots.js +1 -0
  300. package/dist/shared/widgets/activity-history/compound/ActivityHistory.styles.js +1 -0
  301. package/dist/shared/widgets/activity-history/compound/ActivityHistoryDetail.d.ts +75 -0
  302. package/dist/shared/widgets/activity-history/compound/ActivityHistoryDetail.js +1 -0
  303. package/dist/shared/widgets/activity-history/compound/Row.slots.d.ts +21 -0
  304. package/dist/shared/widgets/activity-history/compound/Row.slots.js +1 -0
  305. package/dist/shared/widgets/activity-history/compound/Row.styles.js +1 -0
  306. package/dist/shared/widgets/activity-history/compound/components/Empty.d.ts +15 -0
  307. package/dist/shared/widgets/activity-history/compound/components/Empty.js +1 -0
  308. package/dist/shared/widgets/activity-history/compound/components/ErrorView.d.ts +26 -0
  309. package/dist/shared/widgets/activity-history/compound/components/ErrorView.js +1 -0
  310. package/dist/shared/widgets/activity-history/compound/components/HistoryHeader.d.ts +39 -0
  311. package/dist/shared/widgets/activity-history/compound/components/HistoryHeader.js +1 -0
  312. package/dist/shared/widgets/activity-history/compound/components/List.d.ts +23 -0
  313. package/dist/shared/widgets/activity-history/compound/components/List.js +1 -0
  314. package/dist/shared/widgets/activity-history/compound/components/Row.d.ts +54 -0
  315. package/dist/shared/widgets/activity-history/compound/components/Row.js +1 -0
  316. package/dist/shared/widgets/activity-history/compound/components/StatusPip.js +1 -0
  317. package/dist/shared/widgets/activity-history/compound/context.d.ts +79 -0
  318. package/dist/shared/widgets/activity-history/compound/context.js +1 -0
  319. package/dist/shared/widgets/activity-history/index.js +1 -0
  320. package/dist/shared/widgets/activity-history/payloads.d.ts +81 -0
  321. package/dist/shared/widgets/activity-history/transformers/historyResponseToPayload.js +1 -0
  322. package/dist/shared/widgets/activity-history/transformers/resolveDirection.js +1 -0
  323. package/dist/shared/widgets/amount-entry/compound/AmountEntry.d.ts +4 -1
  324. package/dist/shared/widgets/amount-entry/compound/AmountEntry.js +1 -1
  325. package/dist/shared/widgets/amount-entry/compound/AmountEntry.slots.d.ts +1 -0
  326. package/dist/shared/widgets/amount-entry/compound/AmountEntry.slots.js +1 -1
  327. package/dist/shared/widgets/amount-entry/compound/AmountEntry.styles.js +1 -1
  328. package/dist/shared/widgets/amount-entry/compound/components/Header.d.ts +6 -1
  329. package/dist/shared/widgets/amount-entry/compound/components/Header.js +1 -1
  330. package/dist/shared/widgets/amount-entry/compound/components/Hero/Hero.js +1 -1
  331. package/dist/shared/widgets/amount-entry/compound/components/Hero/SwapBackdrop.js +1 -1
  332. package/dist/shared/widgets/amount-entry/compound/components/Notice.d.ts +7 -0
  333. package/dist/shared/widgets/amount-entry/compound/components/Notice.js +1 -0
  334. package/dist/shared/widgets/amount-entry/compound/types.d.ts +26 -1
  335. package/dist/shared/widgets/asset-picker/compound/AssetPicker.js +1 -1
  336. package/dist/shared/widgets/asset-picker/compound/AssetPicker.styles.js +1 -1
  337. package/dist/shared/widgets/asset-picker/compound/components/Asset.d.ts +7 -1
  338. package/dist/shared/widgets/asset-picker/compound/components/Asset.js +1 -1
  339. package/dist/shared/widgets/asset-picker/compound/components/Header.d.ts +6 -1
  340. package/dist/shared/widgets/asset-picker/compound/components/Header.js +1 -1
  341. package/dist/shared/widgets/asset-picker/compound/types.d.ts +14 -0
  342. package/dist/shared/widgets/confirm-transfer/compound/ConfirmTransfer.styles.js +1 -1
  343. package/dist/shared/widgets/confirm-transfer/compound/components/Disclaimer.d.ts +4 -3
  344. package/dist/shared/widgets/confirm-transfer/compound/components/Disclaimer.js +1 -1
  345. package/dist/shared/widgets/confirm-transfer/compound/components/QuoteTimer.js +1 -1
  346. package/dist/shared/widgets/error-state/compound/components/AssetValue.js +1 -1
  347. package/dist/shared/widgets/error-state/compound/components/HelpInfo.js +1 -1
  348. package/dist/shared/widgets/error-state/compound/components/MoreDetails.d.ts +1 -1
  349. package/dist/shared/widgets/error-state/compound/components/MoreDetails.js +1 -1
  350. package/dist/shared/widgets/error-state/compound/components/StatusValue.js +1 -1
  351. package/dist/shared/widgets/processing-state/compound/ProcessingState.d.ts +1 -5
  352. package/dist/shared/widgets/processing-state/compound/ProcessingState.js +1 -1
  353. package/dist/shared/widgets/processing-state/compound/ProcessingState.slots.d.ts +0 -1
  354. package/dist/shared/widgets/processing-state/compound/ProcessingState.slots.js +1 -1
  355. package/dist/shared/widgets/processing-state/compound/ProcessingState.styles.js +1 -1
  356. package/dist/shared/widgets/processing-state/compound/components/Details.d.ts +6 -1
  357. package/dist/shared/widgets/processing-state/compound/components/Details.js +1 -1
  358. package/dist/shared/widgets/processing-state/compound/components/Header.d.ts +4 -3
  359. package/dist/shared/widgets/processing-state/compound/components/Header.js +1 -1
  360. package/dist/shared/widgets/processing-state/compound/components/Hero.d.ts +14 -7
  361. package/dist/shared/widgets/processing-state/compound/components/Hero.js +1 -1
  362. package/dist/shared/widgets/processing-state/compound/components/Rows.js +1 -1
  363. package/dist/shared/widgets/processing-state/compound/components/StatusPill.js +1 -1
  364. package/dist/shared/widgets/processing-state/compound/components/splitAmount.js +1 -0
  365. package/dist/shared/widgets/processing-state/compound/index.d.ts +1 -1
  366. package/dist/shared/widgets/processing-state/compound/types.d.ts +11 -29
  367. package/dist/shared/widgets/success-state/compound/components/Actions.js +1 -1
  368. package/dist/shared/widgets/success-state/compound/components/AssetValue.js +1 -1
  369. package/dist/shared/widgets/success-state/compound/components/MoreDetails.d.ts +1 -1
  370. package/dist/shared/widgets/success-state/compound/components/MoreDetails.js +1 -1
  371. package/dist/shared/widgets/success-state/compound/components/RouteValue.js +1 -1
  372. package/dist/shared/widgets/success-state/compound/components/StatusPill.js +1 -1
  373. package/dist/shared/widgets/success-state/compound/types.d.ts +5 -5
  374. package/dist/stridge/StridgeProvider.d.ts +165 -35
  375. package/dist/stridge/StridgeProvider.js +1 -1
  376. package/dist/stridge/depositOwner.js +1 -0
  377. package/dist/stridge/optionalWagmi.js +1 -0
  378. package/dist/stridge/stubs.js +1 -1
  379. package/dist/styles/index.css +228 -10
  380. package/dist/types.d.ts +5 -4
  381. package/dist/ui/index.d.ts +3 -1
  382. package/dist/ui/index.js +1 -1
  383. package/dist/withdraw/compound/index.d.ts +5 -2
  384. package/dist/withdraw/compound/index.js +1 -1
  385. package/dist/withdraw/dialog/index.d.ts +3 -1
  386. package/dist/withdraw/widgets/index.d.ts +7 -0
  387. package/dist/withdraw/widgets/index.js +1 -0
  388. package/package.json +23 -7
  389. package/dist/_internal/deposit/widgets/index.d.ts +0 -11
  390. package/dist/_internal/deposit/widgets/index.js +0 -1
  391. package/dist/_internal/withdraw/widgets/index.d.ts +0 -5
  392. package/dist/_internal/withdraw/widgets/index.js +0 -1
  393. package/dist/flows/withdraw/dialog/WithdrawDialogEventsContext.d.ts +0 -36
  394. package/dist/flows/withdraw/dialog/WithdrawDialogEventsContext.js +0 -1
  395. package/dist/shared/widgets/processing-state/compound/components/Actions.d.ts +0 -17
  396. package/dist/shared/widgets/processing-state/compound/components/Actions.js +0 -1
  397. package/dist/stridge/StridgeContext.d.ts +0 -29
  398. package/dist/stridge/StridgeContext.js +0 -1
@@ -1,4 +1,12 @@
1
- import { ComponentProps } from "react";
1
+ import { ErrorStateBodyProps, ErrorStateRowProps } from "../../../../shared/widgets/error-state/compound/types.js";
2
+ import { ErrorStateActions } from "../../../../shared/widgets/error-state/compound/components/Actions.js";
3
+ import { ErrorStateDetails } from "../../../../shared/widgets/error-state/compound/components/Details.js";
4
+ import { ErrorStateHeader } from "../../../../shared/widgets/error-state/compound/components/Header.js";
5
+ import { ErrorStateHelpInfo } from "../../../../shared/widgets/error-state/compound/components/HelpInfo.js";
6
+ import { ErrorStateHero } from "../../../../shared/widgets/error-state/compound/components/Hero.js";
7
+ import { ErrorStateMoreDetails } from "../../../../shared/widgets/error-state/compound/components/MoreDetails.js";
8
+ import { ErrorStateDestinationRow, ErrorStateFailedAtRow, ErrorStateFillStatusRow, ErrorStateSourceRow, ErrorStateSubmittedAtRow, ErrorStateYouReceiveRow } from "../../../../shared/widgets/error-state/compound/components/Rows.js";
9
+ import { ComponentProps, ReactNode } from "react";
2
10
  import * as _$react_jsx_runtime0 from "react/jsx-runtime";
3
11
 
4
12
  //#region src/flows/withdraw/widgets/withdraw-error/WithdrawError.d.ts
@@ -17,6 +25,41 @@ import * as _$react_jsx_runtime0 from "react/jsx-runtime";
17
25
  *
18
26
  * The CTA wires to `actions.reset()` so clicking `Try again` returns the user to the empty form.
19
27
  */
20
- declare function WithdrawError(props: ComponentProps<"div">): _$react_jsx_runtime0.JSX.Element | null;
28
+ interface WithdrawErrorOwnProps {
29
+ /**
30
+ * Optional custom composition. Defaults vary by branch — settlement-derived failures render
31
+ * the receipt (`<Header />` + `<Body><Hero /><Details>…rows…</Details><HelpInfo /></Body>` +
32
+ * `<Actions />`); FSM-derived failures render the minimal headline-only shape. Pass children
33
+ * once and they apply to whichever branch renders.
34
+ */
35
+ children?: ReactNode;
36
+ }
37
+ declare function WithdrawError({
38
+ children,
39
+ ...props
40
+ }: ComponentProps<"div"> & WithdrawErrorOwnProps): _$react_jsx_runtime0.JSX.Element | null;
41
+ /**
42
+ * Withdraw-tuned default for the source-tx row label. Without this wrapper, hosts composing
43
+ * `<WithdrawError.DepositTxRow />` would inherit the deposit-flow's "Deposit tx" default —
44
+ * the wrong copy for a withdrawal. Host-supplied `label` overrides.
45
+ */
46
+ declare function WithdrawErrorDepositTxRow(props?: ErrorStateRowProps): _$react_jsx_runtime0.JSX.Element;
47
+ declare namespace WithdrawError {
48
+ type Props = ComponentProps<"div"> & WithdrawErrorOwnProps;
49
+ const Header: typeof ErrorStateHeader;
50
+ const Body: (props: ErrorStateBodyProps) => _$react_jsx_runtime0.JSX.Element;
51
+ const Hero: typeof ErrorStateHero;
52
+ const Details: typeof ErrorStateDetails;
53
+ const FillStatusRow: typeof ErrorStateFillStatusRow;
54
+ const SourceRow: typeof ErrorStateSourceRow;
55
+ const DestinationRow: typeof ErrorStateDestinationRow;
56
+ const YouReceiveRow: typeof ErrorStateYouReceiveRow;
57
+ const MoreDetails: typeof ErrorStateMoreDetails;
58
+ const DepositTxRow: typeof WithdrawErrorDepositTxRow;
59
+ const SubmittedAtRow: typeof ErrorStateSubmittedAtRow;
60
+ const FailedAtRow: typeof ErrorStateFailedAtRow;
61
+ const HelpInfo: typeof ErrorStateHelpInfo;
62
+ const Actions: typeof ErrorStateActions;
63
+ }
21
64
  //#endregion
22
65
  export { WithdrawError };
@@ -1 +1 @@
1
- "use client";import{useLingui as e}from"../../../../shared/i18n/useLingui.js";import"../../../../i18n/index.js";import{useFailureReasonForKind as t}from"../../../../shared/orchestrator/failureReason.js";import"../../../../shared/orchestrator/index.js";import{useWithdrawSnapshot as n}from"../../driver/context.js";import{useWithdrawActions as r,useWithdrawEffectiveState as i}from"../../orchestrator/controller.js";import{ErrorState as a}from"../../../../shared/widgets/error-state/compound/ErrorState.js";import"../../../../shared/widgets/error-state/compound/index.js";import{toAssetDescriptor as o}from"../../../../shared/widgets/asset-descriptor.js";import{jsx as s,jsxs as c}from"react/jsx-runtime";function l(l){let u=n(),d=i(),{reset:f}=r(),{_:p}=e(),m=t();if(d.name!==`error`)return null;let h=u.settlement,g=h.status===`ready`&&h.payload.kind===`failed`?h.payload:void 0,_=d.ctx.failure,v=p({id:`KTNWsg`,message:`Withdrawal failed`}),y=g?m(g.failureKind):_?.reason;if(!g)return c(a,{...l,headerTitle:v,headline:v,reason:y,onTryAgain:f,children:[s(a.Header,{}),s(a.Body,{children:s(a.Hero,{})}),s(a.Actions,{})]});let b=g,x={address:b.recipient.formatted},S=o(b.receiveAsset)??{symbol:b.receiveAsset.symbol},C=b.txHash?{hash:b.txHash.formatted,explorerUrl:b.txExplorerUrl}:void 0;return c(a,{...l,headerTitle:v,headline:v,reason:y,destination:x,receiveAmount:b.receiveAmount.formatted,receiveAsset:S,depositTx:C,submittedAt:b.submittedAt.formatted,failedAt:b.failedAt.formatted,onTryAgain:f,children:[s(a.Header,{}),c(a.Body,{children:[s(a.Hero,{}),c(a.Details,{children:[s(a.FillStatusRow,{}),s(a.DestinationRow,{}),s(a.YouReceiveRow,{}),c(a.MoreDetails,{children:[C?s(a.DepositTxRow,{label:p({id:`60ahSE`,message:`Withdrawal tx`})}):null,s(a.SubmittedAtRow,{}),s(a.FailedAtRow,{})]})]}),s(a.HelpInfo,{})]}),s(a.Actions,{})]})}export{l as WithdrawError};
1
+ "use client";import{useLingui as e}from"../../../../shared/i18n/useLingui.js";import"../../../../i18n/index.js";import{useFailureReasonForKind as t}from"../../../../shared/orchestrator/failureReason.js";import"../../../../shared/orchestrator/index.js";import{useWithdrawSnapshot as n}from"../../driver/context.js";import{useWithdrawActions as r,useWithdrawEffectiveState as i}from"../../orchestrator/controller.js";import{ErrorState as a}from"../../../../shared/widgets/error-state/compound/ErrorState.js";import"../../../../shared/widgets/error-state/compound/index.js";import{toAssetDescriptor as o}from"../../../../shared/widgets/asset-descriptor.js";import{Fragment as s,jsx as c,jsxs as l}from"react/jsx-runtime";function u({children:u,...d}){let f=n(),p=i(),{reset:m}=r(),{_:h}=e(),g=t();if(p.name!==`error`)return null;let _=f.settlement,v=_.status===`ready`&&_.payload.kind===`failed`?_.payload:void 0,y=p.ctx.failure,b=h({id:`KTNWsg`,message:`Withdrawal failed`}),x=v?g(v.failureKind):y?.reason;if(!v)return c(a,{...d,headerTitle:b,headline:b,reason:x,onTryAgain:m,children:u??l(s,{children:[c(a.Header,{}),c(a.Body,{children:c(a.Hero,{})}),c(a.Actions,{})]})});let S=v,C={address:S.recipient.formatted},w=o(S.receiveAsset)??{symbol:S.receiveAsset.symbol},T=S.txHash?{hash:S.txHash.formatted,explorerUrl:S.txExplorerUrl}:void 0;return c(a,{...d,headerTitle:b,headline:b,reason:x,destination:C,receiveAmount:S.receiveAmount.formatted,receiveAsset:w,depositTx:T,submittedAt:S.submittedAt.formatted,failedAt:S.failedAt.formatted,onTryAgain:m,children:u??l(s,{children:[c(a.Header,{}),l(a.Body,{children:[c(a.Hero,{}),l(a.Details,{children:[c(a.FillStatusRow,{}),c(a.DestinationRow,{}),c(a.YouReceiveRow,{}),l(a.MoreDetails,{children:[T?c(a.DepositTxRow,{label:h({id:`60ahSE`,message:`Withdrawal tx`})}):null,c(a.SubmittedAtRow,{}),c(a.FailedAtRow,{})]})]}),c(a.HelpInfo,{})]}),c(a.Actions,{})]})})}function d(t={}){let{_:n}=e();return c(a.DepositTxRow,{...t,label:t.label??n({id:`60ahSE`,message:`Withdrawal tx`})})}(function(e){e.Header=a.Header,e.Body=a.Body,e.Hero=a.Hero,e.Details=a.Details,e.FillStatusRow=a.FillStatusRow,e.SourceRow=a.SourceRow,e.DestinationRow=a.DestinationRow,e.YouReceiveRow=a.YouReceiveRow,e.MoreDetails=a.MoreDetails,e.DepositTxRow=d,e.SubmittedAtRow=a.SubmittedAtRow,e.FailedAtRow=a.FailedAtRow,e.HelpInfo=a.HelpInfo,e.Actions=a.Actions})(u||={});export{u as WithdrawError};
@@ -1,16 +1,14 @@
1
- import { WithdrawFormEventCallbacks } from "../../dialog/WithdrawDialogEventsContext.js";
2
- import { ComponentProps } from "react";
1
+ import { WithdrawFormAmountField } from "./compound/components/AmountField.js";
2
+ import { WithdrawFormBody } from "./compound/components/Body.js";
3
+ import { WithdrawFormBreakdownCard } from "./compound/components/BreakdownCard.js";
4
+ import { WithdrawFormFooter } from "./compound/components/Footer.js";
5
+ import { WithdrawFormHeader } from "./compound/components/Header.js";
6
+ import { WithdrawFormReceiveSelectors } from "./compound/components/ReceiveSelectors.js";
7
+ import { WithdrawFormRecipientField } from "./compound/components/RecipientField.js";
8
+ import { ReactNode } from "react";
3
9
  import * as _$react_jsx_runtime0 from "react/jsx-runtime";
4
10
 
5
11
  //#region src/flows/withdraw/widgets/withdraw-form/WithdrawForm.d.ts
6
- type OrchestratedProps = ComponentProps<"div"> & {
7
- /**
8
- * Form-level event callbacks. Optional — when omitted, the form falls back to whatever the
9
- * enclosing `<WithdrawDialog>` provides via context. Hosts using `<WithdrawForm>` directly
10
- * (custom UI without the dialog) can pass callbacks here.
11
- */
12
- events?: WithdrawFormEventCallbacks;
13
- };
14
12
  /**
15
13
  * Orchestrated `WithdrawForm` widget. Reads source-side balances, the receive-options catalog,
16
14
  * and the active quote payload from the driver, drives the FSM via `useWithdrawActions().submit`,
@@ -21,9 +19,31 @@ type OrchestratedProps = ComponentProps<"div"> & {
21
19
  * Quote lifecycle: the form fires `driver.requestQuote(...)` (debounced ~400ms) whenever both
22
20
  * `recipientAddress` and `amount > 0` are populated and re-fires on receive-side changes. Stale
23
21
  * entity transitions keep showing the last-known payload until the user changes a field.
22
+ *
23
+ * Interaction events (`withdraw.recipient.changed`, `withdraw.amount.changed`, `withdraw.amount.maxed`,
24
+ * `withdraw.receive.token.changed`, `withdraw.receive.chain.changed`, `withdraw.submit.clicked`)
25
+ * flow through the unified event bus — the form takes no callback props.
24
26
  */
27
+ interface WithdrawFormOwnProps {
28
+ /**
29
+ * Optional custom composition. Defaults to `<Header />` + `<Body><RecipientField />
30
+ * <AmountField /><ReceiveSelectors /><BreakdownCard /></Body>` + `<Footer />`. Pass children
31
+ * to interleave your own elements between compound parts.
32
+ */
33
+ children?: ReactNode;
34
+ }
25
35
  declare function WithdrawForm({
26
- events: localEvents
27
- }: OrchestratedProps): _$react_jsx_runtime0.JSX.Element | null;
36
+ children
37
+ }?: WithdrawFormOwnProps): _$react_jsx_runtime0.JSX.Element | null;
38
+ declare namespace WithdrawForm {
39
+ type Props = WithdrawFormOwnProps;
40
+ const Header: typeof WithdrawFormHeader;
41
+ const Body: typeof WithdrawFormBody;
42
+ const RecipientField: typeof WithdrawFormRecipientField;
43
+ const AmountField: typeof WithdrawFormAmountField;
44
+ const ReceiveSelectors: typeof WithdrawFormReceiveSelectors;
45
+ const BreakdownCard: typeof WithdrawFormBreakdownCard;
46
+ const Footer: typeof WithdrawFormFooter;
47
+ }
28
48
  //#endregion
29
49
  export { WithdrawForm };
@@ -1 +1 @@
1
- "use client";import{useKitI18n as e}from"../../../../shared/i18n/useKitI18n.js";import{useLingui as t}from"../../../../shared/i18n/useLingui.js";import"../../../../i18n/index.js";import{useWithdrawDriverInstance as n,useWithdrawSnapshot as r}from"../../driver/context.js";import{useWithdrawActions as i,useWithdrawEffectiveState as ee}from"../../orchestrator/controller.js";import{parseAmountInputValue as a}from"../../../../shared/ui/AmountInput/utils.js";import"../../../../shared/ui/AmountInput/index.js";import{toAssetDescriptor as o}from"../../../../shared/widgets/asset-descriptor.js";import{useQuoteCountdown as te}from"../../../../shared/quote/useQuoteCountdown.js";import"../../../../shared/quote/index.js";import{WithdrawForm as s}from"./compound/WithdrawForm.js";import"./compound/index.js";import{useWithdrawDialogEvents as ne}from"../../dialog/WithdrawDialogEventsContext.js";import{isValidEvmAddress as re,resolveSubmitLabel as ie}from"./validation.js";import{useCallback as c,useEffect as l,useMemo as u,useRef as d,useState as f}from"react";import{jsx as p,jsxs as ae}from"react/jsx-runtime";import{useAccount as oe}from"wagmi";function m({events:m}){let h=r(),g=n(),_=ee(),v=i(),{_:y}=t(),b=ne(),se=u(()=>({...b,...m??{}}),[b,m]),x=d(se);x.current=se;let{address:ce}=oe(),le=ce??``,[S,ue]=f(``),[de,fe]=f(``),C=_.name===`submitting`,w=_.name===`form`?_.ctx?.notice:void 0,T=d(w);T.current=w;let E=h.withdrawableBalances.status===`ready`||h.withdrawableBalances.status===`stale`?h.withdrawableBalances.payload[0]:void 0,D=u(()=>o(E)??{symbol:`USDC`},[E]),pe=u(()=>o(E?{symbol:E.networkName,eip155Id:E.eip155Id,isNative:!0,logoUrl:E.chainLogoUrl}:void 0)??{symbol:`BSC`},[E]),me=E?{amount:E.amount.formatted,symbol:E.symbol}:void 0,O=h.receiveOptions.status===`ready`||h.receiveOptions.status===`stale`?h.receiveOptions.payload:[],k=E?.eip155Id?Number(E.eip155Id):void 0,A=E?.symbol??D.symbol,j=u(()=>{let e=new Map;for(let t of O)for(let n of t.tokens){let r=n.symbol.toUpperCase(),i=e.get(r);i?i.push({chain:t,token:n}):e.set(r,[{chain:t,token:n}])}return e},[O]),M=u(()=>{if(j.size===0)return;let e=A.toUpperCase();return j.has(e)?e:j.keys().next().value},[j,A]),N=c(e=>{let t=j.get(e);if(!(!t||t.length===0))return(k===void 0?void 0:t.find(e=>e.chain.eip155Id===k))??t[0]},[j,k]),[P,F]=f(void 0),[I,L]=f(void 0);l(()=>{if(I||!M)return;let e=N(M);e&&(F(e.chain),L(e.token))},[M,N,I]);let R=c(()=>{T.current&&v.clearNotice()},[v]),he=c(e=>{R(),ue(e),x.current.onRecipientChanged?.(e)},[R]),z=e().locale,B=c(e=>{R(),fe(e);let t=a(e,z);x.current.onAmountChanged?.({raw:e,numeric:t})},[R,z]),V=c(e=>{R();let t=e.symbol.toUpperCase(),n=j.get(t)?.find(e=>e.chain.eip155Id===P?.eip155Id)??N(t);n&&(F(n.chain),L(n.token),x.current.onReceiveTokenChanged?.(n.token),n.chain.eip155Id!==P?.eip155Id&&x.current.onReceiveChainChanged?.(n.chain))},[R,j,N,P?.eip155Id]),ge=c(e=>{R(),F(e);let t=I?.symbol.toUpperCase(),n=(t?e.tokens.find(e=>e.symbol.toUpperCase()===t):void 0)??e.tokens[0];n&&L(n),x.current.onReceiveChainChanged?.(e),n&&n.symbol!==I?.symbol&&x.current.onReceiveTokenChanged?.(n)},[R,I?.symbol]),H=a(de,z),U=H!==null&&H>0,_e=S.trim(),ve=_e.length>0,W=re(_e),G=P!==void 0&&I!==void 0,K=U&&E!==void 0&&H>E.amount.value,[q,ye]=f(null),J=(h.quote.status===`ready`||h.quote.status===`stale`)&&ve&&U&&G&&q!==null&&q.recipient===S&&q.amount===H&&q.receiveChainId===P.eip155Id&&q.receiveSymbol===I.symbol?h.quote.payload:void 0,be=u(()=>j.size===0?[D]:[...j.values()].map(e=>{let t=e[0];return o({symbol:t.token.symbol,eip155Id:t.chain.eip155Id,address:t.token.address,isNative:t.token.isNative,logoUrl:t.token.assetLogoUrl})??{symbol:t.token.symbol}}),[j,D]),xe=u(()=>{let e=I?.symbol.toUpperCase(),t=e?j.get(e):void 0;return(t?t.map(e=>e.chain):O).map(e=>o({symbol:e.networkName,eip155Id:e.eip155Id,isNative:!0,logoUrl:e.chainLogoUrl})??{symbol:e.networkName})},[I?.symbol,j,O]),Se=I?o({symbol:I.symbol,eip155Id:P?.eip155Id,address:I.address,isNative:I.isNative,logoUrl:I.assetLogoUrl}):D,Ce=P?o({symbol:P.networkName,eip155Id:P.eip155Id,isNative:!0,logoUrl:P.chainLogoUrl}):pe,we=u(()=>{if(J?.breakdown)return{route:J.breakdown.selectedRoute?.label,networkCost:J.breakdown.networkCost?.formatted,priceImpact:J.breakdown.priceImpact?.formatted}},[J]),Te=u(()=>{if(U)return J?.receiveAmountUsd?J.receiveAmountUsd.formatted:`$${H.toFixed(2)}`},[H,U,J]),Ee=J&&U?J.receiveAmount.formatted:void 0,De=J?.receiveAmountUsd?.formatted,Y=W&&U&&!K&&G&&J===void 0&&h.quote.status!==`error`,X=W&&U&&!K&&G&&J!==void 0,Oe=te({expiresAt:J?.expiresAt,enabled:X}),ke=X&&J?J.quoteTotalSeconds:void 0,[Z,Q]=f(!1);l(()=>{Q(!1)},[S,H,P?.eip155Id,I?.symbol,_.name]),l(()=>{if(!X||!J||_.name!==`form`||Z)return;let e=Math.max(0,J.expiresAt-Date.now()),t=setTimeout(()=>{Q(!0)},e);return()=>clearTimeout(t)},[X,J,_.name,Z]),l(()=>{if(!Z||_.name!==`form`||k===void 0||!P||!I||!W||!U||K)return;let e=new AbortController,t={recipient:S,amount:H??0,receiveChainId:P.eip155Id,receiveSymbol:I.symbol},n={sourceAssetSymbol:A,sourceChainId:k,amount:H??0,receiveTokenSymbol:I.symbol,receiveChainId:P.eip155Id,recipientAddress:S};return x.current.onQuoteRequested?.(n),g.requestQuote(n,e.signal).then(()=>{e.signal.aborted||ye(t)}).catch(()=>{}).finally(()=>{e.signal.aborted||Q(!1)}),()=>e.abort()},[Z,g,S,H,W,U,K,k,A,P,I,_.name]);let $=!W||!U||K||!G||Y||Z,Ae=ie({enterRecipientAddress:y({id:`nr03QI`,message:`Enter Recipient Address`}),enterValidRecipientAddress:y({id:`GZPxmc`,message:`Enter Valid Recipient Address`}),enterAmount:y({id:`yH9V_J`,message:`Enter Amount`}),insufficientBalance:y({id:`N2DUxS`,message:`Insufficient Balance`}),regeneratingQuote:y({id:`Ly6geA`,message:`Regenerating quote…`}),estimatingQuote:y({id:`Uevt3L`,message:`Estimating quote`})},{isRecipientFilled:ve,isRecipientValid:W,isAmountValid:U,exceedsBalance:K,quoteEstimating:Y,quoteRegenerating:Z}),je=d(null);l(()=>{if(je.current?.abort(),!W||!U||K||!G||_.name!==`form`||k===void 0)return;let e=new AbortController;je.current=e;let t={recipient:S,amount:H,receiveChainId:P.eip155Id,receiveSymbol:I.symbol},n=setTimeout(()=>{let n={sourceAssetSymbol:A,sourceChainId:k,amount:H,receiveTokenSymbol:I.symbol,receiveChainId:P.eip155Id,recipientAddress:S};x.current.onQuoteRequested?.(n),g.requestQuote(n,e.signal).then(()=>{e.signal.aborted||ye(t)}).catch(()=>{})},400);return()=>{clearTimeout(n),e.abort()}},[g,S,H,W,U,K,G,k,A,P?.eip155Id,I?.symbol,_.name]);let Me=c(()=>{E&&B(E.amount.formatted)},[E,B]),Ne=c(()=>{C||$||k===void 0||!P||!I||v.submit({sourceAssetSymbol:A,sourceChainId:k,amount:H??0,recipientAddress:S,receiveTokenSymbol:I.symbol,receiveChainId:P.eip155Id})},[v,H,k,A,P,I,S,$,C]),Pe=c(e=>{let t=O.find(t=>String(t.eip155Id)===String(e.chainId));t&&ge(t)},[ge,O]),Fe=c(e=>{let t=e.symbol.toUpperCase(),n=j.get(t);!n||n.length===0||V((n.find(e=>e.chain.eip155Id===P?.eip155Id)??n[0]).token)},[V,j,P?.eip155Id]);return _.name!==`form`&&_.name!==`submitting`?null:ae(s,{recipientAddress:S,onRecipientChange:he,connectedAddress:le,amount:de,onAmountChange:B,onAmountMax:Me,sourceAsset:D,sourceChain:pe,receiveAsset:Se,receiveChain:Ce,receiveAssetOptions:be,onReceiveAssetChange:Fe,receiveChainOptions:xe,onReceiveChainChange:Pe,balance:me,amountUsd:Te,receiveAmount:Ee,receiveAmountUsd:De,breakdown:we,quoteEstimating:Y,quoteRegenerating:Z,...Oe===void 0?{}:{quoteSeconds:Oe},...ke===void 0?{}:{quoteTotalSeconds:ke},submitting:C,submitDisabled:$,submitLabel:Ae,...w?{notice:w}:{},onSubmit:Ne,children:[p(s.Header,{}),ae(s.Body,{children:[p(s.RecipientField,{}),p(s.AmountField,{}),p(s.ReceiveSelectors,{}),p(s.BreakdownCard,{})]}),p(s.Footer,{})]})}export{m as WithdrawForm};
1
+ "use client";import{isValidAddressForChainType as e}from"../../../../shared/chains/index.js";import{useKitI18n as t}from"../../../../shared/i18n/useKitI18n.js";import{useLingui as n}from"../../../../shared/i18n/useLingui.js";import"../../../../i18n/index.js";import{useWithdrawBindingsValue as ee}from"../../bindings/WithdrawBindings.js";import"../../bindings/index.js";import{useWithdrawDriverInstance as r,useWithdrawSnapshot as te}from"../../driver/context.js";import{useWithdrawActions as ne,useWithdrawEffectiveState as re}from"../../orchestrator/controller.js";import{formatTokenAmount as ie}from"../../../../shared/format/formatTokenAmount.js";import{useKitEmitter as ae}from"../../../../events/emit/useKitEmitter.js";import"../../../../events/emit/index.js";import{parseAmountInputValue as oe}from"../../../../shared/ui/AmountInput/utils.js";import"../../../../shared/ui/AmountInput/index.js";import{toAssetDescriptor as i}from"../../../../shared/widgets/asset-descriptor.js";import{useQuoteCountdown as se}from"../../../../shared/quote/useQuoteCountdown.js";import"../../../../shared/quote/index.js";import{WithdrawForm as a}from"./compound/WithdrawForm.js";import"./compound/index.js";import{resolveSubmitLabel as ce}from"./validation.js";import{useCallback as o,useEffect as s,useMemo as c,useRef as le,useState as l}from"react";import{Fragment as ue,jsx as u,jsxs as de}from"react/jsx-runtime";function fe({children:fe}={}){let d=te(),f=r(),p=re(),m=ne(),{i18n:pe,_:h}=n(),g=ae(),{balance:_,suggestedRecipient:me}=ee(),[v,he]=l(``),[ge,_e]=l(``),y=p.name===`submitting`,b=p.name===`form`?p.ctx?.notice:void 0,ve=le(b);ve.current=b;let x=d.withdrawableBalances.status===`ready`||d.withdrawableBalances.status===`stale`?d.withdrawableBalances.payload[0]:void 0,S=c(()=>i(x)??{symbol:`USDC`},[x]),ye=c(()=>i(x?{symbol:x.networkName,eip155Id:x.eip155Id,isNative:!0,logoUrl:x.chainLogoUrl}:void 0)??{symbol:`BSC`},[x]),C=typeof _==`number`?_:typeof _==`object`?_.amount:void 0,be=x?.symbol??S.symbol,w=C??x?.amount.value,xe=C===void 0?x?.symbol:be,T=w!==void 0&&xe!==void 0?{amount:C===void 0?x?.amount.formatted??ie(w,pe):ie(C,pe),symbol:xe}:void 0,E=d.receiveOptions.status===`ready`||d.receiveOptions.status===`stale`?d.receiveOptions.payload:[],D=x?.eip155Id?Number(x.eip155Id):void 0,O=x?.symbol??S.symbol,k=c(()=>{let e=new Map;for(let t of E)for(let n of t.tokens){let ee=n.symbol.toUpperCase(),r=e.get(ee);r?r.push({chain:t,token:n}):e.set(ee,[{chain:t,token:n}])}return e},[E]),A=c(()=>{if(k.size===0)return;let e=O.toUpperCase();return k.has(e)?e:k.keys().next().value},[k,O]),j=o(e=>{let t=k.get(e);if(!(!t||t.length===0))return(D===void 0?void 0:t.find(e=>e.chain.eip155Id===D))??t[0]},[k,D]),[M,N]=l(void 0),[P,F]=l(void 0);s(()=>{if(P||!A)return;let e=j(A);e&&(N(e.chain),F(e.token))},[A,j,P]);let I=o(()=>{ve.current&&m.clearNotice()},[m]),Se=o(e=>{I(),he(e),g({type:`withdraw.recipient.changed`,flow:`withdraw`,tier:`ui`,payload:{value:e}})},[I,g]),L=t().locale,R=o(e=>{I(),_e(e),g({type:`withdraw.amount.changed`,flow:`withdraw`,tier:`ui`,payload:{raw:e,numeric:oe(e,L)}})},[I,g,L]),Ce=o(e=>{I();let t=e.symbol.toUpperCase(),n=k.get(t)?.find(e=>e.chain.eip155Id===M?.eip155Id)??j(t);n&&(N(n.chain),F(n.token),g({type:`withdraw.receive.token.changed`,flow:`withdraw`,tier:`ui`,payload:{token:n.token}}),n.chain.eip155Id!==M?.eip155Id&&g({type:`withdraw.receive.chain.changed`,flow:`withdraw`,tier:`ui`,payload:{chain:n.chain}}))},[I,g,k,j,M?.eip155Id]),we=o(e=>{I(),N(e);let t=P?.symbol.toUpperCase(),n=(t?e.tokens.find(e=>e.symbol.toUpperCase()===t):void 0)??e.tokens[0];n&&F(n),g({type:`withdraw.receive.chain.changed`,flow:`withdraw`,tier:`ui`,payload:{chain:e}}),n!==void 0&&(P===void 0||n.address!==P.address)&&g({type:`withdraw.receive.token.changed`,flow:`withdraw`,tier:`ui`,payload:{token:n}})},[I,g,P]),z=oe(ge,L),B=z!==null&&z>0,Te=v.trim(),Ee=Te.length>0,De=M?.chainType??`unknown`,V=e(Te,De),H=M!==void 0&&P!==void 0,U=B&&w!==void 0&&z>w,W=d.minAmountUsd,G=d.maxAmountUsd,Oe=x?.amountUsd&&x.amount.value>0?x.amountUsd.value/x.amount.value:void 0,K=Oe!==void 0&&z!==null?z*Oe:void 0,q=B&&K!==void 0&&W!==void 0&&W.value>0&&K<W.value,J=B&&K!==void 0&&G!==void 0&&G.value>0&&K>G.value,[Y,ke]=l(null),X=(d.quote.status===`ready`||d.quote.status===`stale`)&&Ee&&B&&H&&Y!==null&&Y.recipient===v&&Y.amount===z&&Y.receiveChainId===M.eip155Id&&Y.receiveSymbol===P.symbol?d.quote.payload:void 0,Ae=c(()=>k.size===0?[S]:[...k.values()].map(e=>{let t=e[0];return i({symbol:t.token.symbol,eip155Id:t.chain.eip155Id,address:t.token.address,isNative:t.token.isNative,logoUrl:t.token.assetLogoUrl})??{symbol:t.token.symbol}}),[k,S]),je=c(()=>{let e=P?.symbol.toUpperCase(),t=e?k.get(e):void 0;return(t?t.map(e=>e.chain):E).map(e=>i({symbol:e.networkName,eip155Id:e.eip155Id,isNative:!0,logoUrl:e.chainLogoUrl})??{symbol:e.networkName})},[P?.symbol,k,E]),Me=P?i({symbol:P.symbol,eip155Id:M?.eip155Id,address:P.address,isNative:P.isNative,logoUrl:P.assetLogoUrl}):S,Ne=M?i({symbol:M.networkName,eip155Id:M.eip155Id,isNative:!0,logoUrl:M.chainLogoUrl}):ye,Pe=c(()=>{if(X?.breakdown)return{route:X.breakdown.selectedRoute?.label,networkCost:X.breakdown.networkCost?.formatted,priceImpact:X.breakdown.priceImpact?.formatted}},[X]),Z=c(()=>{if(B)return X?.receiveAmountUsd?X.receiveAmountUsd.formatted:`$${z.toFixed(2)}`},[z,B,X]),Fe=X&&B?X.receiveAmount.formatted:void 0,Ie=X?.receiveAmountUsd?.formatted,Le=V&&B&&!U&&!q&&!J&&H&&X===void 0&&d.quote.status!==`error`,Q=V&&B&&!U&&!q&&!J&&H&&X!==void 0,Re=se({expiresAt:X?.expiresAt,enabled:Q}),ze=Q&&X?X.quoteTotalSeconds:void 0,[$,Be]=l(!1);s(()=>{Be(!1)},[v,z,M?.eip155Id,P?.symbol,p.name]),s(()=>{if(!Q||!X||p.name!==`form`||$)return;let e=Math.max(0,X.expiresAt-Date.now()),t=setTimeout(()=>{Be(!0),g({type:`withdraw.quote.expired`,flow:`withdraw`,tier:`flow`,payload:{}})},e);return()=>clearTimeout(t)},[g,Q,X,p.name,$]),s(()=>{if(!$||p.name!==`form`||D===void 0||!M||!P||!V||!B||U||q||J)return;let e=new AbortController,t={recipient:v,amount:z??0,receiveChainId:M.eip155Id,receiveSymbol:P.symbol},n={sourceAssetSymbol:O,sourceChainId:D,amount:z??0,receiveTokenSymbol:P.symbol,receiveChainId:M.eip155Id,recipientAddress:v};return g({type:`withdraw.quote.requested`,flow:`withdraw`,tier:`flow`,payload:{input:n}}),f.requestQuote(n,e.signal).then(()=>{e.signal.aborted||ke(t)}).catch(()=>{}).finally(()=>{e.signal.aborted||Be(!1)}),()=>e.abort()},[g,$,f,v,z,V,B,U,q,J,D,O,M,P,p.name]);let Ve=!V||!B||U||q||J||!H||Le||$,He=ce({enterRecipientAddress:h({id:`nr03QI`,message:`Enter Recipient Address`}),enterValidRecipientAddress:h({id:`GZPxmc`,message:`Enter Valid Recipient Address`}),enterAmount:h({id:`yH9V_J`,message:`Enter Amount`}),insufficientBalance:h({id:`N2DUxS`,message:`Insufficient Balance`}),...W?{belowMinimumAmount:h({id:`WkRH60`,message:`Min {0}`,values:{0:W.formatted}})}:{},...G?{aboveCapAmount:h({id:`AHyker`,message:`Max {0}`,values:{0:G.formatted}})}:{},regeneratingQuote:h({id:`Ly6geA`,message:`Regenerating quote…`}),estimatingQuote:h({id:`Uevt3L`,message:`Estimating quote`})},{isRecipientFilled:Ee,isRecipientValid:V,isAmountValid:B,exceedsBalance:U,belowMinimum:q,aboveCap:J,quoteEstimating:Le,quoteRegenerating:$}),Ue=le(null);s(()=>{if(Ue.current?.abort(),!V||!B||U||q||J||!H||p.name!==`form`||D===void 0)return;let e=new AbortController;Ue.current=e;let t={recipient:v,amount:z,receiveChainId:M.eip155Id,receiveSymbol:P.symbol},n=setTimeout(()=>{let n={sourceAssetSymbol:O,sourceChainId:D,amount:z,receiveTokenSymbol:P.symbol,receiveChainId:M.eip155Id,recipientAddress:v};g({type:`withdraw.quote.requested`,flow:`withdraw`,tier:`flow`,payload:{input:n}}),f.requestQuote(n,e.signal).then(()=>{e.signal.aborted||ke(t)}).catch(()=>{})},400);return()=>{clearTimeout(n),e.abort()}},[g,f,v,z,V,B,U,q,J,H,D,O,M?.eip155Id,P?.symbol,p.name]);let We=o(()=>{T&&(R(T.amount),g({type:`withdraw.max.clicked`,flow:`withdraw`,tier:`ui`,payload:{}}))},[T,g,R]),Ge=o(()=>{g({type:`withdraw.submit.clicked`,flow:`withdraw`,tier:`ui`,payload:{}}),!(y||Ve)&&(D===void 0||!M||!P||m.submit({sourceAssetSymbol:O,sourceChainId:D,amount:z??0,recipientAddress:v,receiveTokenSymbol:P.symbol,receiveChainId:M.eip155Id,...Z?{amountUsd:Z}:{}}))},[m,z,Z,g,D,O,M,P,v,Ve,y]),Ke=o(e=>{let t=E.find(t=>String(t.eip155Id)===String(e.chainId));t&&we(t)},[we,E]),qe=o(e=>{let t=e.symbol.toUpperCase(),n=k.get(t);!n||n.length===0||Ce((n.find(e=>e.chain.eip155Id===M?.eip155Id)??n[0]).token)},[Ce,k,M?.eip155Id]);return p.name!==`form`&&p.name!==`submitting`?null:u(a,{recipientAddress:v,onRecipientChange:Se,recipientChainType:De,...me?{suggestedRecipient:me}:{},amount:ge,onAmountChange:R,onAmountMax:We,sourceAsset:S,sourceChain:ye,receiveAsset:Me,receiveChain:Ne,receiveAssetOptions:Ae,onReceiveAssetChange:qe,receiveChainOptions:je,onReceiveChainChange:Ke,balance:T,amountUsd:Z,receiveAmount:Fe,receiveAmountUsd:Ie,breakdown:Pe,quoteEstimating:Le,quoteRegenerating:$,...Re===void 0?{}:{quoteSeconds:Re},...ze===void 0?{}:{quoteTotalSeconds:ze},submitting:y,submitDisabled:Ve,submitLabel:He,...b?{notice:b}:{},onSubmit:Ge,onBreakdownOpenChange:e=>g({type:`withdraw.breakdown.clicked`,flow:`withdraw`,tier:`ui`,payload:{open:e}}),children:fe??de(ue,{children:[u(a.Header,{}),de(a.Body,{children:[u(a.RecipientField,{}),u(a.AmountField,{}),u(a.ReceiveSelectors,{}),u(a.BreakdownCard,{})]}),u(a.Footer,{})]})})}(function(e){e.Header=a.Header,e.Body=a.Body,e.RecipientField=a.RecipientField,e.AmountField=a.AmountField,e.ReceiveSelectors=a.ReceiveSelectors,e.BreakdownCard=a.BreakdownCard,e.Footer=a.Footer})(fe||={});export{fe as WithdrawForm};
@@ -1 +1 @@
1
- "use client";import{DialogShell as e}from"../../../../../shared/dialog/DialogShell.js";import{Tooltip as t}from"../../../../../shared/ui/Tooltip/Tooltip.js";import"../../../../../shared/ui/Tooltip/index.js";import{Frame as n}from"../../../../../shared/dialog/Frame.js";import{WithdrawFormContext as r}from"./context.js";import{WITHDRAW_FORM_SLOTS as i}from"./WithdrawForm.slots.js";import{styles as a}from"./WithdrawForm.styles.js";import{WithdrawFormAmountField as o}from"./components/AmountField.js";import{WithdrawFormBody as s}from"./components/Body.js";import{WithdrawFormBreakdownCard as c}from"./components/BreakdownCard.js";import{WithdrawFormFooter as l}from"./components/Footer.js";import{WithdrawFormHeader as u}from"./components/Header.js";import{WithdrawFormReceiveSelectors as d}from"./components/ReceiveSelectors.js";import{WithdrawFormRecipientField as f}from"./components/RecipientField.js";import{useCallback as p,useMemo as m,useState as h}from"react";import{jsx as g}from"react/jsx-runtime";import*as _ from"@stylexjs/stylex";const v=()=>void 0;function y(e){let{recipientAddress:o=``,onRecipientChange:s,connectedAddress:c,amount:l=``,onAmountChange:u,onAmountMax:d,sourceAsset:f,sourceChain:y,receiveAsset:b,receiveChain:x,receiveAssetOptions:S,onReceiveAssetChange:C,receiveChainOptions:w,onReceiveChainChange:T,balance:E,amountUsd:D,receiveAmount:O,receiveAmountUsd:k,breakdown:A,quoteEstimating:j=!1,quoteRegenerating:M=!1,quoteSeconds:N,quoteTotalSeconds:P,submitting:F=!1,submitDisabled:I=!1,submitLabel:L,notice:R,onSubmit:z,defaultBreakdownOpen:B=!1,breakdownOpen:V,onBreakdownOpenChange:H,children:U}=e,[W,G]=h(B),K=V!==void 0,q=K?V:W,J=p(e=>{K||G(e),H?.(e)},[K,H]),Y=b??f,X=x??y;return g(r,{value:m(()=>({recipientAddress:o,onRecipientChange:s??v,connectedAddress:c,amount:l,onAmountChange:u??v,onAmountMax:d,sourceAsset:f,sourceChain:y,receiveAsset:Y,receiveChain:X,receiveAssetOptions:S,onReceiveAssetChange:C,receiveChainOptions:w,onReceiveChainChange:T,balance:E,amountUsd:D,receiveAmount:O,receiveAmountUsd:k,breakdown:A,quoteEstimating:j,quoteRegenerating:M,quoteSeconds:N,quoteTotalSeconds:P,submitting:F,submitDisabled:I,submitLabel:L,notice:R,onSubmit:z,breakdownOpen:q,onBreakdownOpenChange:J}),[o,s,c,l,u,d,f,y,Y,X,S,C,w,T,E,D,O,k,A,j,M,N,P,F,I,L,R,z,q,J]),children:g(t.Provider,{children:g(n,{"data-stridge-slot":i.root,..._.props(a.root),children:U})})})}function b({open:t,defaultOpen:n,onOpenChange:r,trigger:i,children:a,...o}){return g(e,{open:t,defaultOpen:n,onOpenChange:r,trigger:i,children:g(y,{...o,children:a})})}(function(e){e.Header=u,e.Body=s,e.RecipientField=f,e.AmountField=o,e.ReceiveSelectors=d,e.BreakdownCard=c,e.Footer=l,e.Dialog=b})(y||={});export{y as WithdrawForm};
1
+ "use client";import{DialogShell as e}from"../../../../../shared/dialog/DialogShell.js";import{Tooltip as t}from"../../../../../shared/ui/Tooltip/Tooltip.js";import"../../../../../shared/ui/Tooltip/index.js";import{Frame as n}from"../../../../../shared/dialog/Frame.js";import{WithdrawFormContext as r}from"./context.js";import{WITHDRAW_FORM_SLOTS as i}from"./WithdrawForm.slots.js";import{styles as a}from"./WithdrawForm.styles.js";import{WithdrawFormAmountField as o}from"./components/AmountField.js";import{WithdrawFormBody as s}from"./components/Body.js";import{WithdrawFormBreakdownCard as c}from"./components/BreakdownCard.js";import{WithdrawFormFooter as l}from"./components/Footer.js";import{WithdrawFormHeader as u}from"./components/Header.js";import{WithdrawFormReceiveSelectors as d}from"./components/ReceiveSelectors.js";import{WithdrawFormRecipientField as f}from"./components/RecipientField.js";import{useCallback as p,useMemo as m,useState as h}from"react";import{jsx as g}from"react/jsx-runtime";import*as _ from"@stylexjs/stylex";const v=()=>void 0;function y(e){let{recipientAddress:o=``,onRecipientChange:s,recipientChainType:c=`evm`,suggestedRecipient:l,amount:u=``,onAmountChange:d,onAmountMax:f,sourceAsset:y,sourceChain:b,receiveAsset:x,receiveChain:S,receiveAssetOptions:C,onReceiveAssetChange:w,receiveChainOptions:T,onReceiveChainChange:E,balance:D,amountUsd:O,receiveAmount:k,receiveAmountUsd:A,breakdown:j,quoteEstimating:M=!1,quoteRegenerating:N=!1,quoteSeconds:P,quoteTotalSeconds:F,submitting:I=!1,submitDisabled:L=!1,submitLabel:R,notice:z,onSubmit:B,defaultBreakdownOpen:V=!1,breakdownOpen:H,onBreakdownOpenChange:U,children:W}=e,[G,K]=h(V),q=H!==void 0,J=q?H:G,Y=p(e=>{q||K(e),U?.(e)},[q,U]),X=x??y,Z=S??b;return g(r,{value:m(()=>({recipientAddress:o,onRecipientChange:s??v,recipientChainType:c,suggestedRecipient:l,amount:u,onAmountChange:d??v,onAmountMax:f,sourceAsset:y,sourceChain:b,receiveAsset:X,receiveChain:Z,receiveAssetOptions:C,onReceiveAssetChange:w,receiveChainOptions:T,onReceiveChainChange:E,balance:D,amountUsd:O,receiveAmount:k,receiveAmountUsd:A,breakdown:j,quoteEstimating:M,quoteRegenerating:N,quoteSeconds:P,quoteTotalSeconds:F,submitting:I,submitDisabled:L,submitLabel:R,notice:z,onSubmit:B,breakdownOpen:J,onBreakdownOpenChange:Y}),[o,s,c,l,u,d,f,y,b,X,Z,C,w,T,E,D,O,k,A,j,M,N,P,F,I,L,R,z,B,J,Y]),children:g(t.Provider,{children:g(n,{"data-stridge-slot":i.root,..._.props(a.root),children:W})})})}function b({open:t,defaultOpen:n,onOpenChange:r,trigger:i,children:a,...o}){return g(e,{open:t,defaultOpen:n,onOpenChange:r,trigger:i,children:g(y,{...o,children:a})})}(function(e){e.Header=u,e.Body=s,e.RecipientField=f,e.AmountField=o,e.ReceiveSelectors=d,e.BreakdownCard=c,e.Footer=l,e.Dialog=b})(y||={});export{y as WithdrawForm};
@@ -5,13 +5,18 @@ import * as _$react_jsx_runtime0 from "react/jsx-runtime";
5
5
  /**
6
6
  * Header part — back chevron + title + (optional) quote countdown ring + dialog close. Mirrors
7
7
  * `TransferCrypto.Header`'s shape so both flows render the same modal-chrome rhythm. The chevron
8
- * only renders when `onBack` is supplied; in V2 the orchestrated wrapper omits it (`form` has no
8
+ * only renders when `onBack` is supplied; the orchestrated wrapper omits it (`form` has no
9
9
  * parent step).
10
10
  *
11
11
  * The quote countdown ring renders only when the orchestrated wrapper supplies both
12
12
  * `quoteSeconds` and `quoteTotalSeconds` — i.e. when there's an actively-tracked quote whose
13
13
  * freshness window is meaningful (recipient is valid, amount > 0, balance covers it). Mirrors
14
14
  * deposit's confirm-deposit timer.
15
+ *
16
+ * Activity-history trigger — between the optional quote timer and the close X, an
17
+ * `<ActivityTrigger>` button opens the cross-flow activity surface. Gated on the host driver
18
+ * implementing `refreshHistory`; the steps router only mounts this header on `form`, so an
19
+ * additional FSM-state allow-list would be redundant.
15
20
  */
16
21
  declare function WithdrawFormHeader({
17
22
  onBack,
@@ -1 +1 @@
1
- "use client";import{useLingui as e}from"../../../../../../shared/i18n/useLingui.js";import"../../../../../../i18n/index.js";import{ChevronLeftIcon as t}from"../../../../../../shared/icons/ChevronLeftIcon.js";import"../../../../../../icons/index.js";import{IconButton as n}from"../../../../../../shared/ui/IconButton/IconButton.js";import{Dialog as r}from"../../../../../../shared/ui/Dialog/Dialog.js";import"../../../../../../shared/ui/Dialog/index.js";import{Card as i}from"../../../../../../shared/ui/Card/Card.js";import{text as a}from"../../../../../../shared/ui/Text/Text.js";import"../../../../../../ui/index.js";import{QuoteTimer as o}from"../../../../../../shared/widgets/confirm-transfer/compound/components/QuoteTimer.js";import{useWithdrawFormContext as s}from"../context.js";import{WITHDRAW_FORM_SLOTS as c}from"../WithdrawForm.slots.js";import{styles as l}from"../WithdrawForm.styles.js";import{jsx as u,jsxs as d}from"react/jsx-runtime";import*as f from"@stylexjs/stylex";function p({onBack:p,title:m}){let{_:h}=e(),g=s(`WithdrawForm.Header`),_=m??h({id:`OsyKSt`,message:`Withdraw`}),v=g.quoteSeconds!==void 0&&g.quoteTotalSeconds!==void 0&&g.quoteTotalSeconds>0;return d(i.Header,{"data-stridge-slot":c.header,...f.props(l.header),children:[d(`div`,{...f.props(l.headerLeft),children:[typeof p==`function`?u(n,{"aria-label":h({id:`iH8pgl`,message:`Back`}),onClick:p,children:u(t,{"aria-hidden":!0,...f.props(l.backIcon)})}):null,u(a.span,{size:`base`,fontWeight:`semibold`,leading:`tight`,tracking:`tight`,style:{margin:0},children:_})]}),d(`div`,{...f.props(l.headerRight),children:[v?u(o,{seconds:g.quoteSeconds??0,total:g.quoteTotalSeconds}):null,u(r.CloseButton,{})]})]})}export{p as WithdrawFormHeader};
1
+ "use client";import{useLingui as e}from"../../../../../../shared/i18n/useLingui.js";import"../../../../../../i18n/index.js";import{useWithdrawDriverInstance as t}from"../../../../driver/context.js";import{useWithdrawActions as n}from"../../../../orchestrator/controller.js";import{ChevronLeftIcon as r}from"../../../../../../shared/icons/ChevronLeftIcon.js";import"../../../../../../icons/index.js";import{IconButton as i}from"../../../../../../shared/ui/IconButton/IconButton.js";import{Dialog as a}from"../../../../../../shared/ui/Dialog/Dialog.js";import"../../../../../../shared/ui/Dialog/index.js";import{Card as o}from"../../../../../../shared/ui/Card/Card.js";import{text as s}from"../../../../../../shared/ui/Text/Text.js";import"../../../../../../ui/index.js";import{ActivityTrigger as c}from"../../../../../../shared/widgets/activity-history/ActivityTrigger.js";import"../../../../../../shared/widgets/activity-history/index.js";import{QuoteTimer as l}from"../../../../../../shared/widgets/confirm-transfer/compound/components/QuoteTimer.js";import{useWithdrawFormContext as u}from"../context.js";import{WITHDRAW_FORM_SLOTS as d}from"../WithdrawForm.slots.js";import{styles as f}from"../WithdrawForm.styles.js";import{jsx as p,jsxs as m}from"react/jsx-runtime";import*as h from"@stylexjs/stylex";function g({onBack:g,title:_}){let{_:v}=e(),y=u(`WithdrawForm.Header`),{openHistory:b}=n(),x=typeof t().refreshHistory==`function`,S=_??v({id:`OsyKSt`,message:`Withdraw`}),C=y.quoteSeconds!==void 0&&y.quoteTotalSeconds!==void 0&&y.quoteTotalSeconds>0;return m(o.Header,{"data-stridge-slot":d.header,...h.props(f.header),children:[m(`div`,{...h.props(f.headerLeft),children:[typeof g==`function`?p(i,{"aria-label":v({id:`iH8pgl`,message:`Back`}),onClick:g,children:p(r,{"aria-hidden":!0,...h.props(f.backIcon)})}):null,p(s.span,{size:`base`,fontWeight:`semibold`,leading:`tight`,tracking:`tight`,style:{margin:0},children:S})]}),m(`div`,{...h.props(f.headerRight),children:[C?p(l,{seconds:y.quoteSeconds??0,total:y.quoteTotalSeconds}):null,x?p(c,{onOpen:b}):null,p(a.CloseButton,{})]})]})}export{g as WithdrawFormHeader};
@@ -2,17 +2,19 @@ import * as _$react_jsx_runtime0 from "react/jsx-runtime";
2
2
 
3
3
  //#region src/flows/withdraw/widgets/withdraw-form/compound/components/RecipientField.d.ts
4
4
  /**
5
- * Recipient address field — label + auto-growing textarea + trailing wallet pill.
5
+ * Recipient address field — label + auto-growing textarea + trailing prefill chip.
6
6
  *
7
7
  * The textarea wraps long hex addresses up to `maxBlockSize`, then scrolls. Single-line semantics
8
8
  * are kept by stripping any `\r\n` in `onChange` — no `onKeyDown` Enter-blocker, since that would
9
9
  * also swallow IME composition keys for CJK input. The stripping handler lives here (not in
10
10
  * `InputGroup.Textarea`) so the kit primitive stays neutral on the single-vs-multi-line decision.
11
11
  *
12
- * The pill becomes an interactive button when `connectedAddress` is set; clicking it fills the
13
- * input. Omitted entirely when `connectedAddress` is absent. The pill renders the truncated
14
- * address (`0x70…79C8`) the user recognizes their own address, making the action self-evident
15
- * while keeping pill width deterministic across locales.
12
+ * The chip is host-controlled via `suggestedRecipient` on `<WithdrawDialog>` (or the compound
13
+ * root prop). Clicking it fills the input. Hidden entirely when no suggestion is supplied. The
14
+ * chip's `aria-label` reads off the host-supplied `label` so screen readers describe which
15
+ * address is being prefilled; the visible text shows the truncated address so sighted users
16
+ * see "this is mine" recognition. The kit no longer auto-derives this from `wagmi.address` —
17
+ * that misled users on embedded-wallet integrations.
16
18
  */
17
19
  declare function WithdrawFormRecipientField(): _$react_jsx_runtime0.JSX.Element;
18
20
  //#endregion
@@ -1 +1 @@
1
- "use client";import{useLingui as e}from"../../../../../../shared/i18n/useLingui.js";import"../../../../../../i18n/index.js";import{Field as t}from"../../../../../../shared/ui/Field/Field.js";import"../../../../../../shared/ui/Field/index.js";import{Image as n}from"../../../../../../shared/ui/Image/Image.js";import"../../../../../../shared/ui/Image/index.js";import{InputGroup as r}from"../../../../../../shared/ui/InputGroup/InputGroup.js";import"../../../../../../shared/ui/InputGroup/index.js";import{useWithdrawFormContext as i}from"../context.js";import{WITHDRAW_FORM_SLOTS as a}from"../WithdrawForm.slots.js";import{styles as o}from"../WithdrawForm.styles.js";import{useCallback as s,useId as c}from"react";import{jsx as l,jsxs as u}from"react/jsx-runtime";import*as d from"@stylexjs/stylex";function f(){let f=i(`WithdrawForm.RecipientField`),{_:m}=e(),h=m({id:`yy2rkt`,message:`0x…`}),g=m({id:`MZ_nQf`,message:`Recipient address`}),_=c(),{connectedAddress:v,onRecipientChange:y}=f,b=s(e=>{y(e.target.value.replace(/[\r\n]+/g,``))},[y]),x=s(()=>{v&&y(v)},[v,y]),S=v?p(v):``;return u(t,{"data-stridge-slot":a.recipientField,children:[l(t.Label,{htmlFor:_,children:g}),u(r,{children:[l(r.Textarea,{id:_,"data-stridge-slot":a.recipientInput,rows:1,spellCheck:!1,autoComplete:`off`,autoCorrect:`off`,autoCapitalize:`off`,placeholder:h,value:f.recipientAddress,onChange:b,...d.props(o.recipientInputMono)}),v?l(r.Addon,{align:`inline-end`,children:u(`button`,{type:`button`,"data-stridge-slot":a.recipientPill,onClick:x,"aria-label":m({id:`8Fcmiu`,message:`Use connected wallet address`}),...d.props(o.pillBase,o.pillInteractive,o.recipientPill),children:[l(n,{size:`sm`,alt:m({id:`sb9Y58`,message:`Wallet`})}),l(`span`,{...d.props(o.recipientPillText),children:S})]})}):null]})]})}function p(e){return e.length<=10?e:`${e.slice(0,4)}…${e.slice(-4)}`}export{f as WithdrawFormRecipientField};
1
+ "use client";import{useLingui as e}from"../../../../../../shared/i18n/useLingui.js";import"../../../../../../i18n/index.js";import{Field as t}from"../../../../../../shared/ui/Field/Field.js";import"../../../../../../shared/ui/Field/index.js";import{Image as n}from"../../../../../../shared/ui/Image/Image.js";import"../../../../../../shared/ui/Image/index.js";import{InputGroup as r}from"../../../../../../shared/ui/InputGroup/InputGroup.js";import"../../../../../../shared/ui/InputGroup/index.js";import{useWithdrawFormContext as i}from"../context.js";import{WITHDRAW_FORM_SLOTS as a}from"../WithdrawForm.slots.js";import{styles as o}from"../WithdrawForm.styles.js";import{useCallback as s,useId as c}from"react";import{jsx as l,jsxs as u}from"react/jsx-runtime";import*as d from"@stylexjs/stylex";function f(){let f=i(`WithdrawForm.RecipientField`),{_:m}=e(),h=f.recipientChainType===`tron`?m({id:`9XIJb8`,message:`T…`}):m({id:`yy2rkt`,message:`0x…`}),g=m({id:`MZ_nQf`,message:`Recipient address`}),_=c(),{suggestedRecipient:v,onRecipientChange:y}=f,b=v?.address,x=v?.label?.trim()||m({id:`BhQhbU`,message:`Use suggested recipient address`}),S=s(e=>{y(e.target.value.replace(/[\r\n]+/g,``))},[y]),C=s(()=>{b&&y(b)},[b,y]),w=b?p(b):``;return u(t,{"data-stridge-slot":a.recipientField,children:[l(t.Label,{htmlFor:_,children:g}),u(r,{children:[l(r.Textarea,{id:_,"data-stridge-slot":a.recipientInput,rows:1,spellCheck:!1,autoComplete:`off`,autoCorrect:`off`,autoCapitalize:`off`,placeholder:h,value:f.recipientAddress,onChange:S,...d.props(o.recipientInputMono)}),b?l(r.Addon,{align:`inline-end`,children:u(`button`,{type:`button`,"data-stridge-slot":a.recipientPill,onClick:C,"aria-label":x,...d.props(o.pillBase,o.pillInteractive,o.recipientPill),children:[l(n,{size:`sm`,alt:m({id:`sb9Y58`,message:`Wallet`})}),l(`span`,{...d.props(o.recipientPillText),children:w})]})}):null]})]})}function p(e){return e.length<=10?e:`${e.slice(0,4)}…${e.slice(-4)}`}export{f as WithdrawFormRecipientField};
@@ -1,5 +1,7 @@
1
+ import { ChainType } from "../../../../../shared/chains/index.js";
1
2
  import { DialogShellControls } from "../../../../../shared/dialog/DialogShell.js";
2
3
  import { AssetDescriptor } from "../../../../../shared/widgets/asset-descriptor.js";
4
+ import { WithdrawSuggestedRecipient } from "../../../bindings/WithdrawBindings.js";
3
5
  import { ComponentProps, ReactNode } from "react";
4
6
 
5
7
  //#region src/flows/withdraw/widgets/withdraw-form/compound/types.d.ts
@@ -38,12 +40,20 @@ interface WithdrawFormProps {
38
40
  /** Fired when the user types into the recipient field. */
39
41
  onRecipientChange?: (next: string) => void;
40
42
  /**
41
- * Connected-wallet address surfaced behind the trailing "Use connected" pill in
42
- * {@link WithdrawForm.RecipientField}. When provided, clicking the pill fills the recipient
43
- * input with this address (via {@link WithdrawFormProps.onRecipientChange}). When omitted,
44
- * the pill renders as a static decorative chip.
43
+ * Chain family of the selected receive chain. Drives the recipient field's placeholder
44
+ * (`0x…` for EVM, `T…` for Tron) so the hint matches the address shape the user must enter.
45
+ * Defaults to `"evm"` when omitted the historical behavior before non-EVM receive chains.
45
46
  */
46
- connectedAddress?: string;
47
+ recipientChainType?: ChainType;
48
+ /**
49
+ * Host-supplied recipient suggestion surfaced as a prefill chip on
50
+ * {@link WithdrawForm.RecipientField}. Clicking the chip fills the recipient input via
51
+ * {@link WithdrawFormProps.onRecipientChange}. The chip's accessible name reads off
52
+ * `suggestedRecipient.label` so the user knows which address they are filling with. When
53
+ * omitted, no chip renders. See {@link WithdrawSuggestedRecipient} for the rationale —
54
+ * the kit no longer auto-derives this from `wagmi.address`.
55
+ */
56
+ suggestedRecipient?: WithdrawSuggestedRecipient;
47
57
  /** Current amount-field value, in display units, as a string (controlled). */
48
58
  amount?: string;
49
59
  /** Fired when the user types into the amount field. */
@@ -1 +1 @@
1
- function e(e){return/^0x[0-9a-fA-F]{40}$/.test(e)}function t(e,t){if(!t.isRecipientFilled)return e.enterRecipientAddress;if(!t.isRecipientValid)return e.enterValidRecipientAddress;if(!t.isAmountValid)return e.enterAmount;if(t.exceedsBalance)return e.insufficientBalance;if(t.quoteRegenerating)return e.regeneratingQuote;if(t.quoteEstimating)return e.estimatingQuote}export{e as isValidEvmAddress,t as resolveSubmitLabel};
1
+ function e(e,t){if(!t.isRecipientFilled)return e.enterRecipientAddress;if(!t.isRecipientValid)return e.enterValidRecipientAddress;if(!t.isAmountValid)return e.enterAmount;if(t.exceedsBalance)return e.insufficientBalance;if(t.belowMinimum&&e.belowMinimumAmount)return e.belowMinimumAmount;if(t.aboveCap&&e.aboveCapAmount)return e.aboveCapAmount;if(t.quoteRegenerating)return e.regeneratingQuote;if(t.quoteEstimating)return e.estimatingQuote}export{e as resolveSubmitLabel};
@@ -1,19 +1,55 @@
1
- import { ComponentProps } from "react";
1
+ import { ProcessingStateBodyProps, ProcessingStateRowProps } from "../../../../shared/widgets/processing-state/compound/types.js";
2
+ import { ProcessingStateDetails } from "../../../../shared/widgets/processing-state/compound/components/Details.js";
3
+ import { ProcessingStateHeader } from "../../../../shared/widgets/processing-state/compound/components/Header.js";
4
+ import { ProcessingStateHero } from "../../../../shared/widgets/processing-state/compound/components/Hero.js";
5
+ import { ProcessingStateDetectedAtRow, ProcessingStateSourceRow, ProcessingStateSubmittedAtRow } from "../../../../shared/widgets/processing-state/compound/components/Rows.js";
6
+ import { ProcessingStateStatusPill } from "../../../../shared/widgets/processing-state/compound/components/StatusPill.js";
7
+ import { ComponentProps, ReactNode } from "react";
2
8
  import * as _$react_jsx_runtime0 from "react/jsx-runtime";
3
9
 
4
10
  //#region src/flows/withdraw/widgets/withdraw-in-progress/WithdrawInProgress.d.ts
5
11
  /**
6
12
  * Orchestrated `WithdrawInProgress` widget. Composes the shared `ProcessingState` compound so
7
13
  * the in-flight surface matches the deposit flow's processing screen 1:1 — same Hero / StatusPill /
8
- * Details / Actions architecture. Withdraw-specific deltas:
14
+ * Details architecture. Withdraw-specific deltas:
9
15
  *
10
16
  * - No source-wallet row (the user IS the source); `<SourceRow>` is omitted.
11
17
  * - The single broadcast hash is surfaced through `<SourceTxRow>` with the "Withdrawal tx" label.
12
18
  * - No "Detected" row (no indexer step in the withdraw flow).
13
19
  * - Hero subcaption is the recipient address (truncated) — passed through `creditedTo`.
20
+ * - Hero promotes the USD figure (`amountUsd`) over the token amount, which drops to a subline.
14
21
  *
15
22
  * Renders only while the FSM is on `inProgress`.
16
23
  */
17
- declare function WithdrawInProgress(props: ComponentProps<"div">): _$react_jsx_runtime0.JSX.Element | null;
24
+ interface WithdrawInProgressOwnProps {
25
+ /**
26
+ * Optional custom composition. Defaults to `<Header />` + `<Body><Hero /><StatusPill />
27
+ * <Details><SourceTxRow label="Withdrawal tx" /><SubmittedAtRow /></Details></Body>`. Pass
28
+ * children to interleave your own elements between compound parts.
29
+ */
30
+ children?: ReactNode;
31
+ }
32
+ declare function WithdrawInProgress({
33
+ children,
34
+ ...props
35
+ }: ComponentProps<"div"> & WithdrawInProgressOwnProps): _$react_jsx_runtime0.JSX.Element | null;
36
+ /**
37
+ * Withdraw-tuned default for the source-tx row label. Without this wrapper, hosts composing
38
+ * `<WithdrawInProgress.SourceTxRow />` would inherit the deposit-flow's "Deposit tx" default —
39
+ * the wrong copy for a withdrawal. Host-supplied `label` overrides.
40
+ */
41
+ declare function WithdrawInProgressSourceTxRow(props?: ProcessingStateRowProps): _$react_jsx_runtime0.JSX.Element;
42
+ declare namespace WithdrawInProgress {
43
+ type Props = ComponentProps<"div"> & WithdrawInProgressOwnProps;
44
+ const Header: typeof ProcessingStateHeader;
45
+ const Body: (props: ProcessingStateBodyProps) => _$react_jsx_runtime0.JSX.Element;
46
+ const Hero: typeof ProcessingStateHero;
47
+ const StatusPill: typeof ProcessingStateStatusPill;
48
+ const Details: typeof ProcessingStateDetails;
49
+ const SourceRow: typeof ProcessingStateSourceRow;
50
+ const SourceTxRow: typeof WithdrawInProgressSourceTxRow;
51
+ const SubmittedAtRow: typeof ProcessingStateSubmittedAtRow;
52
+ const DetectedAtRow: typeof ProcessingStateDetectedAtRow;
53
+ }
18
54
  //#endregion
19
55
  export { WithdrawInProgress };
@@ -1 +1 @@
1
- "use client";import{useLingui as e}from"../../../../shared/i18n/useLingui.js";import"../../../../i18n/index.js";import{useWithdrawSnapshot as t}from"../../driver/context.js";import{useWithdrawActions as n,useWithdrawEffectiveState as r}from"../../orchestrator/controller.js";import{formatTokenAmount as i}from"../../../../shared/format/formatTokenAmount.js";import{ProcessingState as a}from"../../../../shared/widgets/processing-state/compound/ProcessingState.js";import"../../../../shared/widgets/processing-state/compound/index.js";import{toAssetDescriptor as o}from"../../../../shared/widgets/asset-descriptor.js";import{jsx as s,jsxs as c}from"react/jsx-runtime";function l(l){let u=t(),d=r(),{close:f}=n(),{_:p,i18n:m}=e(),h=u.settlement,g=(h.status===`ready`||h.status===`stale`)&&h.payload.kind===`pending`?h.payload:void 0;if(d.name!==`inProgress`)return null;let _=d.ctx.input,v=g?.txHash?.formatted,y=g?.txExplorerUrl,b=g?.recipient.formatted,x=g?.receiveAsset,S=g?.receiveAmount,C=S&&S.value>0?S.formatted:i(_.amount,m,{...x?.decimals===void 0?{}:{maxDecimals:x.decimals}}),w=x?.symbol??_.receiveTokenSymbol,T=o(x)??{symbol:w},E=v?{hash:v,explorerUrl:y}:void 0;return c(a,{...l,headerTitle:p({id:`w-2VR9`,message:`Withdrawal in progress…`}),amount:C,creditedAsset:T,creditedTo:b,sourceTx:E,submittedAt:g?.submittedAt.formatted,onClose:f,children:[s(a.Header,{}),c(a.Body,{children:[s(a.Hero,{}),s(a.StatusPill,{}),c(a.Details,{children:[s(a.SourceTxRow,{label:p({id:`60ahSE`,message:`Withdrawal tx`})}),s(a.SubmittedAtRow,{})]})]}),s(a.Actions,{})]})}export{l as WithdrawInProgress};
1
+ "use client";import{useLingui as e}from"../../../../shared/i18n/useLingui.js";import"../../../../i18n/index.js";import{useWithdrawSnapshot as t}from"../../driver/context.js";import{useWithdrawEffectiveState as n}from"../../orchestrator/controller.js";import{ProcessingState as r}from"../../../../shared/widgets/processing-state/compound/ProcessingState.js";import"../../../../shared/widgets/processing-state/compound/index.js";import{toAssetDescriptor as i}from"../../../../shared/widgets/asset-descriptor.js";import{Fragment as a,jsx as o,jsxs as s}from"react/jsx-runtime";function c({children:c,...l}){let u=t(),d=n(),{_:f}=e(),p=u.settlement,m=(p.status===`ready`||p.status===`stale`)&&p.payload.kind===`pending`?p.payload:void 0;if(d.name!==`inProgress`)return null;let h=d.ctx.input,g=m?.txHash?.formatted,_=m?.txExplorerUrl,v=m?.recipient.formatted,y=u.quote,b=y.status===`ready`||y.status===`stale`?y.payload:void 0,x=i(m?.receiveAsset??b?.receiveAsset)??{symbol:h.receiveTokenSymbol},S=m?.receiveAmount,C=S&&S.value>0?S.formatted:b?.receiveAmount.formatted,w=C===void 0,T=m?.receiveAmountUsd?.formatted??b?.receiveAmountUsd?.formatted??h.amountUsd,E=g?{hash:g,explorerUrl:_}:void 0;return o(r,{...l,headerTitle:f({id:`w-2VR9`,message:`Withdrawal in progress…`}),amount:C??``,...T?{amountUsd:T}:{},...w?{loading:!0}:{},creditedAsset:x,creditedTo:v,sourceTx:E,submittedAt:m?.submittedAt.formatted,children:c??s(a,{children:[o(r.Header,{}),s(r.Body,{children:[o(r.Hero,{}),o(r.StatusPill,{}),s(r.Details,{children:[o(r.SourceTxRow,{label:f({id:`60ahSE`,message:`Withdrawal tx`})}),o(r.SubmittedAtRow,{})]})]})]})})}function l(t={}){let{_:n}=e();return o(r.SourceTxRow,{...t,label:t.label??n({id:`60ahSE`,message:`Withdrawal tx`})})}(function(e){e.Header=r.Header,e.Body=r.Body,e.Hero=r.Hero,e.StatusPill=r.StatusPill,e.Details=r.Details,e.SourceRow=r.SourceRow,e.SourceTxRow=l,e.SubmittedAtRow=r.SubmittedAtRow,e.DetectedAtRow=r.DetectedAtRow})(c||={});export{c as WithdrawInProgress};
@@ -1,4 +1,11 @@
1
- import { ComponentProps } from "react";
1
+ import { SuccessStateBodyProps, SuccessStateRowProps } from "../../../../shared/widgets/success-state/compound/types.js";
2
+ import { SuccessStateActions } from "../../../../shared/widgets/success-state/compound/components/Actions.js";
3
+ import { SuccessStateDetails } from "../../../../shared/widgets/success-state/compound/components/Details.js";
4
+ import { SuccessStateHeader } from "../../../../shared/widgets/success-state/compound/components/Header.js";
5
+ import { SuccessStateHeadline } from "../../../../shared/widgets/success-state/compound/components/Headline.js";
6
+ import { SuccessStateMoreDetails } from "../../../../shared/widgets/success-state/compound/components/MoreDetails.js";
7
+ import { SuccessStateCompletionTxRow, SuccessStateDestinationRow, SuccessStateFillStatusRow, SuccessStateFilledAtRow, SuccessStateSourceRow, SuccessStateSubmittedAtRow, SuccessStateTotalTimeRow, SuccessStateYouReceiveRow } from "../../../../shared/widgets/success-state/compound/components/Rows.js";
8
+ import { ComponentProps, ReactNode } from "react";
2
9
  import * as _$react_jsx_runtime0 from "react/jsx-runtime";
3
10
 
4
11
  //#region src/flows/withdraw/widgets/withdraw-success/WithdrawSuccess.d.ts
@@ -15,6 +22,43 @@ import * as _$react_jsx_runtime0 from "react/jsx-runtime";
15
22
  *
16
23
  * Renders only when the FSM is on `success`.
17
24
  */
18
- declare function WithdrawSuccess(props: ComponentProps<"div">): _$react_jsx_runtime0.JSX.Element | null;
25
+ interface WithdrawSuccessOwnProps {
26
+ /**
27
+ * Optional custom composition. Defaults to the withdraw-tuned receipt: `<Header />` +
28
+ * `<Body><Headline /><Details><FillStatusRow /><TotalTimeRow /><DestinationRow />
29
+ * <YouReceiveRow /><MoreDetails>…tx rows…</MoreDetails></Details></Body>` + `<Actions />`.
30
+ * The default conditionally mounts `<MoreDetails>` when at least one of the tx / timestamp
31
+ * fields is available. Pass children to interleave your own elements.
32
+ */
33
+ children?: ReactNode;
34
+ }
35
+ declare function WithdrawSuccess({
36
+ children,
37
+ ...props
38
+ }: ComponentProps<"div"> & WithdrawSuccessOwnProps): _$react_jsx_runtime0.JSX.Element | null;
39
+ /**
40
+ * Withdraw-tuned default for the source-tx row label. Without this wrapper, hosts composing
41
+ * `<WithdrawSuccess.DepositTxRow />` would inherit the deposit-flow's "Deposit tx" default —
42
+ * the wrong copy for a withdrawal. Host-supplied `label` overrides.
43
+ */
44
+ declare function WithdrawSuccessDepositTxRow(props?: SuccessStateRowProps): _$react_jsx_runtime0.JSX.Element;
45
+ declare namespace WithdrawSuccess {
46
+ type Props = ComponentProps<"div"> & WithdrawSuccessOwnProps;
47
+ const Header: typeof SuccessStateHeader;
48
+ const Body: (props: SuccessStateBodyProps) => _$react_jsx_runtime0.JSX.Element;
49
+ const Headline: typeof SuccessStateHeadline;
50
+ const Details: typeof SuccessStateDetails;
51
+ const FillStatusRow: typeof SuccessStateFillStatusRow;
52
+ const TotalTimeRow: typeof SuccessStateTotalTimeRow;
53
+ const SourceRow: typeof SuccessStateSourceRow;
54
+ const DestinationRow: typeof SuccessStateDestinationRow;
55
+ const YouReceiveRow: typeof SuccessStateYouReceiveRow;
56
+ const MoreDetails: typeof SuccessStateMoreDetails;
57
+ const DepositTxRow: typeof WithdrawSuccessDepositTxRow;
58
+ const CompletionTxRow: typeof SuccessStateCompletionTxRow;
59
+ const SubmittedAtRow: typeof SuccessStateSubmittedAtRow;
60
+ const FilledAtRow: typeof SuccessStateFilledAtRow;
61
+ const Actions: typeof SuccessStateActions;
62
+ }
19
63
  //#endregion
20
64
  export { WithdrawSuccess };
@@ -1 +1 @@
1
- "use client";import{useLingui as e}from"../../../../shared/i18n/useLingui.js";import"../../../../i18n/index.js";import{useWithdrawSnapshot as t}from"../../driver/context.js";import{useWithdrawActions as n,useWithdrawEffectiveState as r}from"../../orchestrator/controller.js";import{formatTokenAmount as i}from"../../../../shared/format/formatTokenAmount.js";import{SuccessState as a}from"../../../../shared/widgets/success-state/compound/SuccessState.js";import"../../../../shared/widgets/success-state/compound/index.js";import{toAssetDescriptor as o}from"../../../../shared/widgets/asset-descriptor.js";import{jsx as s,jsxs as c}from"react/jsx-runtime";function l(l){let u=t(),d=r(),{close:f}=n(),{_:p,i18n:m}=e();if(d.name!==`success`)return null;let h=u.settlement,g=(h.status===`ready`||h.status===`stale`)&&h.payload.kind===`succeeded`?h.payload:void 0,_=d.ctx.input,v=g?.receiveAsset,y=o(v)??{symbol:_.receiveTokenSymbol},b=g?.recipient.formatted,x=g?.txHash?{hash:g.txHash.formatted,explorerUrl:g.txExplorerUrl}:void 0,S=g?.completionTx?{hash:g.completionTx.hash.formatted,...g.completionTx.explorerUrl?{explorerUrl:g.completionTx.explorerUrl}:{}}:void 0;return c(a,{...l,amount:g?.receiveAmount.formatted??i(_.amount,m,{...v?.decimals===void 0?{}:{maxDecimals:v.decimals}}),creditedAsset:y,creditedTo:b,depositTx:x,...S?{completionTx:S}:{},submittedAt:g?.submittedAt.formatted,filledAt:g?.filledAt.formatted,totalTime:g?.totalTime.formatted,headerTitle:p({id:`q32Nt8`,message:`Withdrawal complete`}),headlineTitle:p({id:`_girqu`,message:`Withdrawal successful`}),headlineDescription:p({id:`flMR3h`,message:`Your funds were successfully withdrawn.`}),onDone:f,doneLabel:p({id:`DPfwMq`,message:`Done`}),children:[s(a.Header,{}),c(a.Body,{children:[s(a.Headline,{}),c(a.Details,{children:[s(a.FillStatusRow,{}),s(a.TotalTimeRow,{}),s(a.DestinationRow,{}),s(a.YouReceiveRow,{}),x||S||g?.submittedAt||g?.filledAt?c(a.MoreDetails,{children:[s(a.DepositTxRow,{label:p({id:`60ahSE`,message:`Withdrawal tx`})}),s(a.CompletionTxRow,{}),s(a.SubmittedAtRow,{}),s(a.FilledAtRow,{})]}):null]})]}),s(a.Actions,{})]})}export{l as WithdrawSuccess};
1
+ "use client";import{useLingui as e}from"../../../../shared/i18n/useLingui.js";import"../../../../i18n/index.js";import{useWithdrawSnapshot as t}from"../../driver/context.js";import{useWithdrawActions as n,useWithdrawEffectiveState as r}from"../../orchestrator/controller.js";import{SuccessState as i}from"../../../../shared/widgets/success-state/compound/SuccessState.js";import"../../../../shared/widgets/success-state/compound/index.js";import{toAssetDescriptor as a}from"../../../../shared/widgets/asset-descriptor.js";import{Fragment as o,jsx as s,jsxs as c}from"react/jsx-runtime";function l({children:l,...u}){let d=t(),f=r(),{close:p}=n(),{_:m}=e();if(f.name!==`success`)return null;let h=d.settlement,g=(h.status===`ready`||h.status===`stale`)&&h.payload.kind===`succeeded`?h.payload:void 0,_=f.ctx.input,v=d.quote,y=v.status===`ready`||v.status===`stale`?v.payload:void 0,b=a(g?.receiveAsset??y?.receiveAsset)??{symbol:_.receiveTokenSymbol},x=g?.receiveAmount.formatted??y?.receiveAmount.formatted??``,S=g?.recipient.formatted,C=g?.txHash?{hash:g.txHash.formatted,explorerUrl:g.txExplorerUrl}:void 0,w=g?.completionTx?{hash:g.completionTx.hash.formatted,...g.completionTx.explorerUrl?{explorerUrl:g.completionTx.explorerUrl}:{}}:void 0;return s(i,{...u,amount:x,creditedAsset:b,creditedTo:S,depositTx:C,...w?{completionTx:w}:{},submittedAt:g?.submittedAt.formatted,filledAt:g?.filledAt.formatted,totalTime:g?.totalTime.formatted,headerTitle:m({id:`q32Nt8`,message:`Withdrawal complete`}),headlineTitle:m({id:`_girqu`,message:`Withdrawal successful`}),headlineDescription:m({id:`flMR3h`,message:`Your funds were successfully withdrawn.`}),onDone:p,doneLabel:m({id:`DPfwMq`,message:`Done`}),children:l??c(o,{children:[s(i.Header,{}),c(i.Body,{children:[s(i.Headline,{}),c(i.Details,{children:[s(i.FillStatusRow,{}),s(i.TotalTimeRow,{}),s(i.DestinationRow,{}),s(i.YouReceiveRow,{}),C||w||g?.submittedAt||g?.filledAt?c(i.MoreDetails,{children:[s(i.DepositTxRow,{label:m({id:`60ahSE`,message:`Withdrawal tx`})}),s(i.CompletionTxRow,{}),s(i.SubmittedAtRow,{}),s(i.FilledAtRow,{})]}):null]})]}),s(i.Actions,{})]})})}function u(t={}){let{_:n}=e();return s(i.DepositTxRow,{...t,label:t.label??n({id:`60ahSE`,message:`Withdrawal tx`})})}(function(e){e.Header=i.Header,e.Body=i.Body,e.Headline=i.Headline,e.Details=i.Details,e.FillStatusRow=i.FillStatusRow,e.TotalTimeRow=i.TotalTimeRow,e.SourceRow=i.SourceRow,e.DestinationRow=i.DestinationRow,e.YouReceiveRow=i.YouReceiveRow,e.MoreDetails=i.MoreDetails,e.DepositTxRow=u,e.CompletionTxRow=i.CompletionTxRow,e.SubmittedAtRow=i.SubmittedAtRow,e.FilledAtRow=i.FilledAtRow,e.Actions=i.Actions})(l||={});export{l as WithdrawSuccess};
@@ -1,9 +1,10 @@
1
- import { KitCatalogs, KitI18nConfig, createKitI18n } from "../shared/i18n/createKitI18n.js";
1
+ import { SUPPORTED_LOCALES, SupportedLocale } from "../shared/i18n/locales.js";
2
+ import { KitTranslatableKey } from "./locales/source-keys.js";
3
+ import { KitI18nConfig, KitLocale, KitMessages, createKitI18n, defineMessages } from "../shared/i18n/createKitI18n.js";
2
4
  import { getLocaleDirection } from "../shared/i18n/getLocaleDirection.js";
3
5
  import { KitI18nProvider } from "../shared/i18n/KitI18nProvider.js";
4
- import { SUPPORTED_LOCALES, SupportedLocale } from "../shared/i18n/locales.js";
5
6
  import { KitTransProps, Trans } from "../shared/i18n/Trans.js";
6
7
  import { useKitI18n } from "../shared/i18n/useKitI18n.js";
7
- import { useLingui } from "../shared/i18n/useLingui.js";
8
+ import { KitLinguiContextValue, useLingui } from "../shared/i18n/useLingui.js";
8
9
  import { useT } from "../shared/i18n/useT.js";
9
- export { type KitCatalogs, type KitI18nConfig, KitI18nProvider, type KitTransProps, SUPPORTED_LOCALES, type SupportedLocale, Trans, createKitI18n, getLocaleDirection, useKitI18n, useLingui, useT };
10
+ export { type KitI18nConfig, KitI18nProvider, type KitLinguiContextValue, type KitLocale, type KitMessages, type KitTransProps, type KitTranslatableKey, SUPPORTED_LOCALES, type SupportedLocale, Trans, createKitI18n, defineMessages, getLocaleDirection, useKitI18n, useLingui, useT };
@@ -1 +1 @@
1
- import{createKitI18n as e}from"../shared/i18n/createKitI18n.js";import{getLocaleDirection as t}from"../shared/i18n/getLocaleDirection.js";import{KitI18nProvider as n}from"../shared/i18n/KitI18nProvider.js";import{SUPPORTED_LOCALES as r}from"../shared/i18n/locales.js";import{useKitI18n as i}from"../shared/i18n/useKitI18n.js";import{Trans as a}from"../shared/i18n/Trans.js";import{useLingui as o}from"../shared/i18n/useLingui.js";import{useT as s}from"../shared/i18n/useT.js";export{n as KitI18nProvider,r as SUPPORTED_LOCALES,a as Trans,e as createKitI18n,t as getLocaleDirection,i as useKitI18n,o as useLingui,s as useT};
1
+ import{createKitI18n as e,defineMessages as t}from"../shared/i18n/createKitI18n.js";import{getLocaleDirection as n}from"../shared/i18n/getLocaleDirection.js";import{KitI18nProvider as r}from"../shared/i18n/KitI18nProvider.js";import{SUPPORTED_LOCALES as i}from"../shared/i18n/locales.js";import{useKitI18n as a}from"../shared/i18n/useKitI18n.js";import{Trans as o}from"../shared/i18n/Trans.js";import{useLingui as s}from"../shared/i18n/useLingui.js";import{useT as c}from"../shared/i18n/useT.js";export{r as KitI18nProvider,i as SUPPORTED_LOCALES,o as Trans,e as createKitI18n,t as defineMessages,n as getLocaleDirection,a as useKitI18n,s as useLingui,c as useT};
@@ -1 +1 @@
1
- const e=JSON.parse(`{"--OGth":["نجح الإيداع"],"-nuEh_":["الوقت المُقدَّر"],"-tu7Q8":["المزيد عن ",["0"]],"02NghK":["Close this dialog and try again in a moment. If the problem persists, double-check the gateway key on your integration."],"0eg2g7":["جاري تقدير الغاز…"],"0lHlRj":["قيد النقل"],"2Eoi_a":["عرض التفاصيل"],"3dqPLT":["تحويل العملة الرقمية"],"3eKjkO":["الحد الأدنى للإيداع ",["formattedMin"]],"3kg1gB":["اكتمل الإيداع"],"3yd3IL":["The deposit driver failed to load gateway configuration."],"5joj8M":["تفاصيل المعاملة"],"60ahSE":["معاملة السحب"],"69Gavs":["Technical details"],"6D8qH6":["أرسل العملة المختارة على الشبكة المختارة إلى هذا العنوان. تظهر الأموال في حسابك بمجرد تأكيد الشبكة للتحويل."],"6RDwJM":["العملات"],"7Bj3x9":["فشل"],"7evBec":["وقت المعالجة: ",["resolvedProcessingTime"]],"88cUW-":["تستلم"],"8Fcmiu":["استخدم عنوان المحفظة المتصلة"],"9JHY2T":["تمت إضافة أموال إيداعك إلى حسابك."],"9cCjMJ":["إيداع الحد الأقصى من الرصيد"],"< 1 min":["< دقيقة"],"AO44G_":["عرض الإيصال"],"AOPSKq":["إيداع ",["0"]],"AWtGgd":["احصل على المساعدة"],"AeXO77":["حساب"],"AeZIvT":["ستستلم"],"AikETk":["الحد الأدنى ",["minDeposit"]],"CK1KXz":["الأقصى"],"Ck1xL4":["ترسل"],"D79cZK":["فوري"],"DPfwMq":["تم"],"Dd7jP5":["تواجه مشكلات؟"],"DoS2vD":["إخفاء التفاصيل التقنية"],"ELhVSL":["Failed to submit deposit."],"Ej5HL9":["Signature declined. Please try again."],"Enslfm":["الوجهة"],"G-SK3q":["واجهت الواجهة خطأً غير متوقع وتعذَّر إكمال العرض. حاول مرة أخرى، أو أغلق هذا الحوار وأعد المحاولة من التطبيق."],"GX8GKD":["الأصول"],"GZPxmc":["Enter Valid Recipient Address"],"GcuGHR":["تمت الإضافة إلى ",["captionSuffix"]],"GwkmPx":["تبديل المبلغ المعروض"],"HfPDJV":["إغلاق — سنُشعرك"],"IDt4jm":[["0","plural",{"one":["#"," second"],"other":["#"," seconds"]}]," left on quote"],"IRogzB":["تمت إضافة أموال إيداعك إلى ",["brand"],"."],"KDw4GX":["حاول مرة أخرى"],"KGoAE6":["تلقائي · ",["value"]],"KTNWsg":["فشل السحب"],"KuqCAK":["~ 2 دقيقة"],"LEbOpR":["مزيد من التفاصيل"],"Ly6geA":["جاري إعادة احتساب عرض السعر…"],"MZ_nQf":["عنوان المستلم"],"N2DUxS":["Insufficient Balance"],"OLF0i7":["Couldn't load deposit options"],"Offl0a":["ستُضاف أموال إيداعك إلى حسابك."],"Oi8TiZ":["عرض التقدم"],"OsyKSt":["سحب"],"P9fBwv":["Stack"],"PiH3UR":["تم النسخ!"],"Q12Rrs":["معاملة الإيداع"],"QU2cIs":["لديك أسئلة؟"],"Rxjdjn":["لم يكتمل الإيداع"],"SOVBoe":["نسخ عنوان الإيداع"],"SZRUQ4":["أقصى انزلاق سعري"],"Sjplg3":["عرض في المستكشف"],"SlfejT":["Error"],"TG4WOd":["ستُضاف أموال إيداعك إلى ",["brand"],"."],"TT0aVH":["تم إرسال الطلب"],"Uevt3L":["جاري تقدير العرض"],"UqHbdz":["إغلاق إشعار الإيداع قيد التنفيذ"],"V1fa9u":["عرض المزيد"],"VAZUpd":["فشل الطلب"],"WkRH60":["الحد الأدنى ",["0"]],"Wqz0SO":["رصيد منخفض"],"Z1WbO6":["الأموال آمنة على شبكة المصدر — تواصل مع الدعم للاسترجاع."],"ZqugiS":["الرصيد: ",["0"]," ",["1"]],"_girqu":["نجح السحب"],"_kXBrK":["إجمالي الوقت"],"a2WllD":["العملة المستلمة"],"aiEUrg":["إظهار التفاصيل التقنية"],"bOZXx5":["تحديث الطلب"],"bZnukT":["تكلفة الشبكة"],"c6Bl9M":["Toggle technical details"],"cGYrpE":["تطبَّق الشروط"],"cHPbBJ":["تعذَّر على الجسر تمويل معاملة الوجهة (نفد رصيد الغاز)."],"cxR5Qy":["معاملة التسوية"],"e3xU5E":["تم استلام الإيداع"],"fKSGnu":["الحد الأدنى للمبلغ المطلوب على هذه الشبكة لتغطية رسوم الشبكة والتوجيه."],"fWsBTs":["حدث خطأ. حاول مرة أخرى."],"flMR3h":["تم سحب أموالك بنجاح."],"gfh8CC":["الشبكات"],"hKMHs1":["الفرق بين الناتج المتوقع للمسار وسعر السوق الأوسط الأساسي."],"he3ygx":["نسخ"],"hehnjM":["المبلغ"],"i-4Fbp":["فشل الإيداع"],"i-EgW-":["التكلفة التقديرية لبث هذه المعاملة على سلسلة الوجهة."],"iH8pgl":["رجوع"],"junZX6":["تم استلام الإيداع وجاري المعالجة…"],"kH6wUX":["تأثير السعر"],"kR8ayx":["بالنقر على تأكيد الإيداع، فإنك توافق على <0>الشروط</0>."],"kUFhUv":["Withdrawal failed."],"kj3M8S":["إيداع"],"kjrq_8":["مزيد من المعلومات"],"lOEm_1":["تم تنفيذ الطلب"],"ldK3jJ":["Failed to submit withdrawal."],"lxjao1":["مسار السيولة المختار المستخدم لتسوية هذا السحب."],"mgLWEL":["تراجعت معاملة الوجهة على السلسلة."],"mvYQx_":["تم الاكتشاف"],"njn4bC":["أكِّد المعاملة في محفظتك"],"nr03QI":["أدخل عنوان المستلم"],"nwtY4N":["حدث خطأ"],"oBNGNc":["The route's expected output drifted while your transaction was pending."],"oFmN8a":["إيداع ",["symbol"]],"oW1G8i":["تم إيداع أموالك بنجاح."],"ob8R_m":["حاول مرة أخرى أو تواصل معنا إذا استمرت المشكلة."],"ogD_nm":["إيداع إلى ",["0"]],"olEUh2":["ناجح"],"pCzTTC":["عنوان الإيداع الخاص بك"],"q32Nt8":["اكتمل السحب"],"qQ5VJt":["We can't reach the gateway right now"],"qj0vvX":["تأكيد الإيداع"],"qtoOYG":["بدون حد"],"rT8e1f":["المسار"],"rZdp61":["معاملة الإكمال"],"sSiLKx":["شبكة الاستلام"],"sb9Y58":["محفظة"],"sbwbC0":["طريقة الدفع"],"uPo3PQ":["عرض أقل"],"vrnnn9":["جاري المعالجة"],"w-2VR9":["جاري السحب…"],"wdxz7K":["المصدر"],"xDAtGP":["Message"],"xGVfLh":["متابعة"],"yH9V_J":["أدخل المبلغ"],"yrvWai":["معاملة المصدر"],"yxnt3y":["حالة التنفيذ"],"yy2rkt":["0x…"],"yz7wBu":["إغلاق"],"zYD5xm":["جاري الإضافة"],"zbtijb":["إيداع ",["0"]," إلى ",["1"]],"znqB4T":["رصيد غير كافٍ"],"{hours} hr":[["hours"]," ساعة"],"{minutes} min":[["minutes"]," دقيقة"],"{n}h":[["n"],"س"],"{n}m":[["n"],"د"],"{n}s":[["n"],"ث"]}`);export{e as messages};
1
+ const e=JSON.parse(`{"--OGth":["نجح الإيداع"],"-I_tc5":["Max ",["formattedCap"]],"-nuEh_":["الوقت المُقدَّر"],"-tu7Q8":["المزيد عن ",["0"]],"02NghK":["Close this dialog and try again in a moment. If the problem persists, double-check the gateway key on your integration."],"0eg2g7":["جاري تقدير الغاز…"],"0lHlRj":["قيد النقل"],"2Eoi_a":["عرض التفاصيل"],"3dqPLT":["تحويل العملة الرقمية"],"3eKjkO":["الحد الأدنى للإيداع ",["formattedMin"]],"3kg1gB":["اكتمل الإيداع"],"3yd3IL":["The deposit driver failed to load gateway configuration."],"5AApJw":["اتصل بمحفظة للمتابعة"],"5joj8M":["تفاصيل المعاملة"],"60ahSE":["معاملة السحب"],"69Gavs":["Technical details"],"6D8qH6":["أرسل العملة المختارة على الشبكة المختارة إلى هذا العنوان. تظهر الأموال في حسابك بمجرد تأكيد الشبكة للتحويل."],"6RDwJM":["العملات"],"7Bj3x9":["فشل"],"7evBec":["وقت المعالجة: ",["resolvedProcessingTime"]],"88cUW-":["تستلم"],"9JHY2T":["تمت إضافة أموال إيداعك إلى حسابك."],"9XIJb8":["T…"],"9cCjMJ":["إيداع الحد الأقصى من الرصيد"],"< 1 min":["< دقيقة"],"AHyker":["Max ",["0"]],"AO44G_":["عرض الإيصال"],"AOPSKq":["إيداع ",["0"]],"AWtGgd":["احصل على المساعدة"],"AeXO77":["حساب"],"AeZIvT":["ستستلم"],"AikETk":["الحد الأدنى ",["minDeposit"]],"B-4zEC":["Couldn't load activity. Please try again."],"BhQhbU":["استخدم عنوان المستلم المقترح"],"BoQOH3":["يلزم وجود محفظة لإجراء الإيداع"],"CK1KXz":["الأقصى"],"Ck1xL4":["ترسل"],"D79cZK":["فوري"],"DPfwMq":["تم"],"Dd7jP5":["تواجه مشكلات؟"],"Deposit completed":["Deposit completed"],"Deposit failed":["Deposit failed"],"Deposit in progress":["Deposit in progress"],"Deposit of {amount}, {date}":["Deposit of ",["amount"],", ",["date"]],"DoS2vD":["إخفاء التفاصيل التقنية"],"ELhVSL":["Failed to submit deposit."],"Ej5HL9":["Signature declined. Please try again."],"Enslfm":["الوجهة"],"G-SK3q":["واجهت الواجهة خطأً غير متوقع وتعذَّر إكمال العرض. حاول مرة أخرى، أو أغلق هذا الحوار وأعد المحاولة من التطبيق."],"GX8GKD":["الأصول"],"GZPxmc":["Enter Valid Recipient Address"],"GcuGHR":["تمت الإضافة إلى ",["captionSuffix"]],"GwkmPx":["تبديل المبلغ المعروض"],"IDt4jm":[["0","plural",{"one":["#"," second"],"other":["#"," seconds"]}]," left on quote"],"IRogzB":["تمت إضافة أموال إيداعك إلى ",["brand"],"."],"Just now":["Just now"],"KDw4GX":["حاول مرة أخرى"],"KGoAE6":["تلقائي · ",["value"]],"KTNWsg":["فشل السحب"],"KuqCAK":["~ 2 دقيقة"],"LEbOpR":["مزيد من التفاصيل"],"Ly6geA":["جاري إعادة احتساب عرض السعر…"],"MZ_nQf":["عنوان المستلم"],"N2DUxS":["Insufficient Balance"],"OLF0i7":["Couldn't load deposit options"],"Offl0a":["ستُضاف أموال إيداعك إلى حسابك."],"Oi8TiZ":["عرض التقدم"],"OsyKSt":["سحب"],"P9fBwv":["Stack"],"PiH3UR":["تم النسخ!"],"Q12Rrs":["معاملة الإيداع"],"QU2cIs":["لديك أسئلة؟"],"Rxjdjn":["لم يكتمل الإيداع"],"SOVBoe":["نسخ عنوان الإيداع"],"SZRUQ4":["أقصى انزلاق سعري"],"Sjplg3":["عرض في المستكشف"],"SlfejT":["Error"],"TG4WOd":["ستُضاف أموال إيداعك إلى ",["brand"],"."],"TT0aVH":["تم إرسال الطلب"],"Uevt3L":["جاري تقدير العرض"],"UqHbdz":["إغلاق إشعار الإيداع قيد التنفيذ"],"V1fa9u":["عرض المزيد"],"VAZUpd":["فشل الطلب"],"VHOVEJ":["اتصل بالمحفظة"],"Vj6_6B":["View activity history"],"Withdrawal completed":["Withdrawal completed"],"Withdrawal failed":["Withdrawal failed"],"Withdrawal in progress":["Withdrawal in progress"],"Withdrawal of {amount}, {date}":["Withdrawal of ",["amount"],", ",["date"]],"WkRH60":["الحد الأدنى ",["0"]],"Wqz0SO":["رصيد منخفض"],"XJOV1Y":["Activity"],"XdtTGf":["Activity details"],"Xzw7uC":["Your deposits and withdrawals will appear here."],"Yesterday":["Yesterday"],"Z1WbO6":["الأموال آمنة على شبكة المصدر — تواصل مع الدعم للاسترجاع."],"ZqugiS":["الرصيد: ",["0"]," ",["1"]],"_QZdX-":["Your withdrawal was completed successfully."],"_girqu":["نجح السحب"],"_kXBrK":["إجمالي الوقت"],"a2WllD":["العملة المستلمة"],"aXFOuf":["No activity yet"],"aiEUrg":["إظهار التفاصيل التقنية"],"bOZXx5":["تحديث الطلب"],"bZnukT":["تكلفة الشبكة"],"c6Bl9M":["Toggle technical details"],"cGYrpE":["تطبَّق الشروط"],"cHPbBJ":["تعذَّر على الجسر تمويل معاملة الوجهة (نفد رصيد الغاز)."],"cxR5Qy":["معاملة التسوية"],"e3xU5E":["تم استلام الإيداع"],"fKSGnu":["الحد الأدنى للمبلغ المطلوب على هذه الشبكة لتغطية رسوم الشبكة والتوجيه."],"fWsBTs":["حدث خطأ. حاول مرة أخرى."],"flMR3h":["تم سحب أموالك بنجاح."],"g2UNkE":["مشغل بواسطة"],"gfh8CC":["الشبكات"],"hKMHs1":["الفرق بين الناتج المتوقع للمسار وسعر السوق الأوسط الأساسي."],"he3ygx":["نسخ"],"hehnjM":["المبلغ"],"i-4Fbp":["فشل الإيداع"],"i-EgW-":["التكلفة التقديرية لبث هذه المعاملة على سلسلة الوجهة."],"iH8pgl":["رجوع"],"junZX6":["تم استلام الإيداع وجاري المعالجة…"],"kH6wUX":["تأثير السعر"],"kR8ayx":["بالنقر على تأكيد الإيداع، فإنك توافق على <0>الشروط</0>."],"kUFhUv":["Withdrawal failed."],"kj3M8S":["إيداع"],"kjrq_8":["مزيد من المعلومات"],"lOEm_1":["تم تنفيذ الطلب"],"ldK3jJ":["Failed to submit withdrawal."],"lxjao1":["مسار السيولة المختار المستخدم لتسوية هذا السحب."],"mF_ucv":["اتصل بمحفظة حتى تتمكن البوابة من توفير عنوان إيداع وتوجيه تحويلك."],"mgLWEL":["تراجعت معاملة الوجهة على السلسلة."],"mvYQx_":["تم الاكتشاف"],"njn4bC":["أكِّد المعاملة في محفظتك"],"nr03QI":["أدخل عنوان المستلم"],"nwtY4N":["حدث خطأ"],"oBNGNc":["The route's expected output drifted while your transaction was pending."],"oFmN8a":["إيداع ",["symbol"]],"oW1G8i":["تم إيداع أموالك بنجاح."],"ob8R_m":["حاول مرة أخرى أو تواصل معنا إذا استمرت المشكلة."],"ogD_nm":["إيداع إلى ",["0"]],"olEUh2":["ناجح"],"pCzTTC":["عنوان الإيداع الخاص بك"],"q32Nt8":["اكتمل السحب"],"qQ5VJt":["We can't reach the gateway right now"],"qj0vvX":["تأكيد الإيداع"],"qtoOYG":["بدون حد"],"rT8e1f":["المسار"],"rZdp61":["معاملة الإكمال"],"sSiLKx":["شبكة الاستلام"],"sb9Y58":["محفظة"],"sbwbC0":["طريقة الدفع"],"srsA0x":["Withdrawal declined."],"uPo3PQ":["عرض أقل"],"vrnnn9":["جاري المعالجة"],"w-2VR9":["جاري السحب…"],"wdxz7K":["المصدر"],"xDAtGP":["Message"],"xGVfLh":["متابعة"],"yH9V_J":["أدخل المبلغ"],"yLEjmm":[["resolvedPriceImpact"],"% price impact"],"yQE2r9":["جارٍ التحميل"],"yrvWai":["معاملة المصدر"],"yxnt3y":["حالة التنفيذ"],"yy2rkt":["0x…"],"yz7wBu":["إغلاق"],"zYD5xm":["جاري الإضافة"],"zbtijb":["إيداع ",["0"]," إلى ",["1"]],"znqB4T":["رصيد غير كافٍ"],"{hours} hr":[["hours"]," ساعة"],"{minutes} min":[["minutes"]," دقيقة"],"{n}h":[["n"],"س"],"{n}m":[["n"],"د"],"{n}s":[["n"],"ث"]}`);export{e as messages};