@stridge/kit 0.1.0-alpha.55 → 0.1.0-alpha.57
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.
- package/dist/KitProvider.d.ts +21 -0
- package/dist/KitProvider.js +1 -1
- package/dist/_internal/deposit/driver/index.d.ts +2 -2
- package/dist/deposit/compound/index.d.ts +11 -5
- package/dist/deposit/compound/index.js +1 -1
- package/dist/deposit/widgets/index.d.ts +3 -1
- package/dist/deposit/widgets/index.js +1 -1
- package/dist/drivers/stridge/createStridgeDepositDriver.js +1 -1
- package/dist/drivers/stridge-mock/createStridgeMockDriver.js +1 -1
- package/dist/drivers/stridge-mock/fixtures.js +1 -1
- package/dist/events/emit/useDepositEmissions.js +1 -1
- package/dist/flows/deposit/bindings/DepositBindings.d.ts +87 -0
- package/dist/flows/deposit/bindings/DepositBindings.js +1 -0
- package/dist/flows/deposit/bindings/index.d.ts +1 -0
- package/dist/flows/deposit/bindings/index.js +1 -0
- package/dist/flows/deposit/dialog/DepositDialog.js +1 -1
- package/dist/flows/deposit/driver/payloads.d.ts +35 -1
- package/dist/flows/deposit/driver/types.d.ts +10 -1
- package/dist/flows/deposit/orchestrator/controller.js +1 -1
- package/dist/flows/deposit/orchestrator/index.d.ts +5 -0
- package/dist/flows/deposit/orchestrator/reducer.d.ts +1 -0
- package/dist/flows/deposit/orchestrator/reducer.js +1 -1
- package/dist/flows/deposit/orchestrator/types.d.ts +107 -2
- package/dist/flows/deposit/orchestrator/useDeposit.js +1 -1
- package/dist/flows/deposit/shared/cash.d.ts +20 -0
- package/dist/flows/deposit/shared/cash.js +1 -0
- package/dist/flows/deposit/widgets/amount-entry/AmountEntry.d.ts +1 -1
- package/dist/flows/deposit/widgets/amount-entry/AmountEntry.js +1 -1
- package/dist/flows/deposit/widgets/cash-amount-entry/CashAmountEntry.d.ts +71 -0
- package/dist/flows/deposit/widgets/cash-amount-entry/CashAmountEntry.js +1 -0
- package/dist/flows/deposit/widgets/cash-amount-entry/compound/CashAmountEntry.d.ts +69 -0
- package/dist/flows/deposit/widgets/cash-amount-entry/compound/CashAmountEntry.js +1 -0
- package/dist/flows/deposit/widgets/cash-amount-entry/compound/CashAmountEntry.slots.d.ts +16 -0
- package/dist/flows/deposit/widgets/cash-amount-entry/compound/CashAmountEntry.slots.js +1 -0
- package/dist/flows/deposit/widgets/cash-amount-entry/compound/CashAmountEntry.styles.js +1 -0
- package/dist/flows/deposit/widgets/cash-amount-entry/compound/components/HeroLabel.d.ts +13 -0
- package/dist/flows/deposit/widgets/cash-amount-entry/compound/components/HeroLabel.js +1 -0
- package/dist/flows/deposit/widgets/cash-amount-entry/compound/components/MethodChip.d.ts +18 -0
- package/dist/flows/deposit/widgets/cash-amount-entry/compound/components/MethodChip.js +1 -0
- package/dist/flows/deposit/widgets/cash-amount-entry/compound/components/ReceiveChip.d.ts +14 -0
- package/dist/flows/deposit/widgets/cash-amount-entry/compound/components/ReceiveChip.js +1 -0
- package/dist/flows/deposit/widgets/cash-amount-entry/compound/context.js +1 -0
- package/dist/flows/deposit/widgets/cash-amount-entry/compound/index.d.ts +3 -0
- package/dist/flows/deposit/widgets/cash-amount-entry/compound/index.js +1 -0
- package/dist/flows/deposit/widgets/cash-amount-entry/compound/types.d.ts +42 -0
- package/dist/flows/deposit/widgets/cash-amount-entry/index.d.ts +1 -0
- package/dist/flows/deposit/widgets/cash-amount-entry/index.js +1 -0
- package/dist/flows/deposit/widgets/cash-confirm/CashConfirm.d.ts +63 -0
- package/dist/flows/deposit/widgets/cash-confirm/CashConfirm.js +1 -0
- package/dist/flows/deposit/widgets/cash-confirm/compound/CashConfirm.d.ts +54 -0
- package/dist/flows/deposit/widgets/cash-confirm/compound/CashConfirm.js +1 -0
- package/dist/flows/deposit/widgets/cash-confirm/compound/CashConfirm.slots.d.ts +33 -0
- package/dist/flows/deposit/widgets/cash-confirm/compound/CashConfirm.slots.js +1 -0
- package/dist/flows/deposit/widgets/cash-confirm/compound/CashConfirm.styles.js +1 -0
- package/dist/flows/deposit/widgets/cash-confirm/compound/cashConfirmDimensions.js +1 -0
- package/dist/flows/deposit/widgets/cash-confirm/compound/components/ApplePayBody.d.ts +15 -0
- package/dist/flows/deposit/widgets/cash-confirm/compound/components/ApplePayBody.js +1 -0
- package/dist/flows/deposit/widgets/cash-confirm/compound/components/Body.d.ts +22 -0
- package/dist/flows/deposit/widgets/cash-confirm/compound/components/Body.js +1 -0
- package/dist/flows/deposit/widgets/cash-confirm/compound/components/BodyLabel.js +1 -0
- package/dist/flows/deposit/widgets/cash-confirm/compound/components/CardBody.d.ts +16 -0
- package/dist/flows/deposit/widgets/cash-confirm/compound/components/CardBody.js +1 -0
- package/dist/flows/deposit/widgets/cash-confirm/compound/components/CardInputRow.icons.js +1 -0
- package/dist/flows/deposit/widgets/cash-confirm/compound/components/CardInputRow.js +1 -0
- package/dist/flows/deposit/widgets/cash-confirm/compound/components/CardInputRow.keys.js +1 -0
- package/dist/flows/deposit/widgets/cash-confirm/compound/components/CardInputRow.state.js +1 -0
- package/dist/flows/deposit/widgets/cash-confirm/compound/components/CardInputRow.styles.js +1 -0
- package/dist/flows/deposit/widgets/cash-confirm/compound/components/GooglePayBody.d.ts +16 -0
- package/dist/flows/deposit/widgets/cash-confirm/compound/components/GooglePayBody.js +1 -0
- package/dist/flows/deposit/widgets/cash-confirm/compound/components/Header.d.ts +21 -0
- package/dist/flows/deposit/widgets/cash-confirm/compound/components/Header.js +1 -0
- package/dist/flows/deposit/widgets/cash-confirm/compound/components/Summary.d.ts +17 -0
- package/dist/flows/deposit/widgets/cash-confirm/compound/components/Summary.js +1 -0
- package/dist/flows/deposit/widgets/cash-confirm/compound/components/cardFormat.js +1 -0
- package/dist/flows/deposit/widgets/cash-confirm/compound/context.js +1 -0
- package/dist/flows/deposit/widgets/cash-confirm/compound/index.d.ts +3 -0
- package/dist/flows/deposit/widgets/cash-confirm/compound/index.js +1 -0
- package/dist/flows/deposit/widgets/cash-confirm/compound/types.d.ts +66 -0
- package/dist/flows/deposit/widgets/cash-confirm/index.d.ts +1 -0
- package/dist/flows/deposit/widgets/cash-confirm/index.js +1 -0
- package/dist/flows/deposit/widgets/cash-confirm/mocks.js +1 -0
- package/dist/flows/deposit/widgets/deposit/Deposit.d.ts +6 -0
- package/dist/flows/deposit/widgets/deposit/Deposit.js +1 -1
- package/dist/flows/deposit/widgets/deposit/compound/Deposit.d.ts +26 -1
- package/dist/flows/deposit/widgets/deposit/compound/Deposit.js +1 -1
- package/dist/flows/deposit/widgets/deposit/compound/Deposit.slots.d.ts +6 -0
- package/dist/flows/deposit/widgets/deposit/compound/Deposit.slots.js +1 -1
- package/dist/flows/deposit/widgets/deposit/compound/Deposit.styles.js +1 -1
- package/dist/flows/deposit/widgets/deposit/compound/components/Guards.js +1 -1
- package/dist/flows/deposit/widgets/deposit/compound/components/Method.d.ts +1 -0
- package/dist/flows/deposit/widgets/deposit/compound/components/Method.js +1 -1
- package/dist/flows/deposit/widgets/deposit/compound/components/MethodSection.d.ts +40 -0
- package/dist/flows/deposit/widgets/deposit/compound/components/MethodSection.js +1 -0
- package/dist/flows/deposit/widgets/deposit/compound/components/Methods.d.ts +16 -9
- package/dist/flows/deposit/widgets/deposit/compound/components/Methods.js +1 -1
- package/dist/flows/deposit/widgets/deposit/compound/components/Rail.d.ts +18 -0
- package/dist/flows/deposit/widgets/deposit/compound/components/Rail.js +1 -0
- package/dist/flows/deposit/widgets/deposit/compound/components/RailPicker.d.ts +43 -0
- package/dist/flows/deposit/widgets/deposit/compound/components/RailPicker.js +1 -0
- package/dist/flows/deposit/widgets/deposit/compound/index.d.ts +1 -1
- package/dist/flows/deposit/widgets/deposit/compound/types.d.ts +100 -1
- package/dist/flows/deposit/widgets/transfer-crypto/compound/components/QrCode.js +1 -1
- package/dist/flows/withdraw/orchestrator/reducer.js +1 -1
- package/dist/i18n/locales/ar.js +1 -1
- package/dist/i18n/locales/es.js +1 -1
- package/dist/i18n/locales/source-keys.d.ts +1 -1
- package/dist/icons/index.d.ts +10 -1
- package/dist/icons/index.js +1 -1
- package/dist/index.d.ts +7 -5
- package/dist/index.js +1 -1
- package/dist/package.js +1 -1
- package/dist/shared/icons/AmexIcon.d.ts +14 -0
- package/dist/shared/icons/AmexIcon.js +1 -0
- package/dist/shared/icons/ApplePayIcon.d.ts +15 -0
- package/dist/shared/icons/ApplePayIcon.js +1 -0
- package/dist/shared/icons/BitcoinIcon.d.ts +17 -0
- package/dist/shared/icons/BitcoinIcon.js +1 -0
- package/dist/shared/icons/CardIcon.d.ts +16 -0
- package/dist/shared/icons/CardIcon.js +1 -0
- package/dist/shared/icons/CashIcon.d.ts +16 -0
- package/dist/shared/icons/CashIcon.js +1 -0
- package/dist/shared/icons/DiscoverIcon.d.ts +14 -0
- package/dist/shared/icons/DiscoverIcon.js +1 -0
- package/dist/shared/icons/GooglePayIcon.d.ts +15 -0
- package/dist/shared/icons/GooglePayIcon.js +1 -0
- package/dist/shared/icons/MastercardIcon.d.ts +16 -0
- package/dist/shared/icons/MastercardIcon.js +1 -0
- package/dist/shared/icons/VisaIcon.d.ts +15 -0
- package/dist/shared/icons/VisaIcon.js +1 -0
- package/dist/shared/ui/Tabs/Tabs.d.ts +79 -0
- package/dist/shared/ui/Tabs/Tabs.js +1 -0
- package/dist/shared/ui/Tabs/Tabs.slots.d.ts +11 -0
- package/dist/shared/ui/Tabs/Tabs.slots.js +1 -0
- package/dist/shared/ui/Tabs/Tabs.styles.js +1 -0
- package/dist/shared/ui/Tabs/index.d.ts +2 -0
- package/dist/shared/ui/Tabs/index.js +1 -0
- package/dist/shared/utils/assertNever.js +1 -0
- package/dist/shared/widgets/amount-entry/compound/AmountEntry.d.ts +7 -2
- package/dist/shared/widgets/amount-entry/compound/AmountEntry.js +1 -1
- package/dist/shared/widgets/amount-entry/compound/AmountEntry.slots.d.ts +5 -0
- package/dist/shared/widgets/amount-entry/compound/AmountEntry.slots.js +1 -1
- package/dist/shared/widgets/amount-entry/compound/AmountEntry.styles.js +1 -1
- package/dist/shared/widgets/amount-entry/compound/components/Details.d.ts +34 -0
- package/dist/shared/widgets/amount-entry/compound/components/Details.js +1 -0
- package/dist/shared/widgets/amount-entry/compound/components/Footer.d.ts +2 -1
- package/dist/shared/widgets/amount-entry/compound/components/Footer.js +1 -1
- package/dist/shared/widgets/amount-entry/compound/index.d.ts +1 -1
- package/dist/shared/widgets/amount-entry/compound/types.d.ts +37 -1
- package/dist/shared/widgets/confirm-transfer/compound/components/Breakdown.js +1 -1
- package/dist/storage/context.d.ts +9 -1
- package/dist/storage/context.js +1 -1
- package/dist/storage/index.d.ts +1 -1
- package/dist/stridge/StridgeProvider.d.ts +10 -0
- package/dist/stridge/StridgeProvider.js +1 -1
- package/dist/stridge/stubs.js +1 -1
- package/dist/styles/index.css +275 -2
- package/dist/types.d.ts +3 -3
- package/dist/ui/index.d.ts +3 -1
- package/dist/ui/index.js +1 -1
- package/dist/withdraw/compound/index.d.ts +2 -2
- package/package.json +3 -3
|
@@ -1 +1 @@
|
|
|
1
|
-
"use client";import{
|
|
1
|
+
"use client";import{useOptionalKitStorage as e}from"../../../../storage/context.js";import"../../../../storage/index.js";import{useLingui as t}from"../../../../shared/i18n/useLingui.js";import"../../../../i18n/index.js";import{useDepositSnapshot as n}from"../../driver/context.js";import{useCashRailUnlocked as r,useDepositActions as i,useDepositEffectiveState as a,useDepositMethodsConfig as o,useEnabledRails as s}from"../../orchestrator/controller.js";import{ApplePayIcon as c}from"../../../../shared/icons/ApplePayIcon.js";import{BitcoinIcon as l}from"../../../../shared/icons/BitcoinIcon.js";import{CardIcon as ee}from"../../../../shared/icons/CardIcon.js";import{CashIcon as u}from"../../../../shared/icons/CashIcon.js";import{GooglePayIcon as d}from"../../../../shared/icons/GooglePayIcon.js";import{QrCodeIcon as te}from"../../../../shared/icons/QrCodeIcon.js";import{WalletIcon as ne}from"../../../../shared/icons/WalletIcon.js";import"../../../../icons/index.js";import{DialogShell as f}from"../../../../shared/dialog/DialogShell.js";import{Image as p}from"../../../../shared/ui/Image/Image.js";import{Skeleton as re}from"../../../../shared/ui/Skeleton/Skeleton.js";import"../../../../shared/ui/Skeleton/index.js";import{TokenLogo as m}from"../../../../shared/ui/TokenLogo/TokenLogo.js";import"../../../../shared/ui/TokenLogo/index.js";import"../../../../ui/index.js";import{Deposit as h}from"./compound/Deposit.js";import"./compound/index.js";import{useMemo as g}from"react";import{Fragment as ie,jsx as _,jsxs as v}from"react/jsx-runtime";const y={width:18,height:18,"aria-hidden":!0},ae={card:`card`,"apple-pay":`applePay`,"google-pay":`googlePay`},b=`deposit.last-rail`;function x({children:f,...p}){let m=n(),x=a().name,{selectMethod:S,selectCashMethod:C}=i(),w=o(),T=r(),E=e(),{_:D}=t(),O=m.wallet,k=O.status===`ready`||O.status===`stale`?O.payload:void 0,A=k!==void 0,j=m.brand,M=j.status===`ready`||j.status===`stale`?j.payload:void 0,N=m.addresses,P=N.status===`ready`||N.status===`stale`?N.payload:[],F=m.balances.status===`error`,I=!k?.balanceTotalUsd?.formatted&&!F,L=!!m.brand,R=M?.name?D({id:`ogD_nm`,message:`Deposit to {0}`,values:{0:M.name}}):void 0,z=g(()=>oe(P),[P]),B=w?.wallet,V=w?.transfer,H=w?.card,U=w?.applePay,W=w?.googlePay,G=w?.cashRail?.enabled===!0,K=m.cashMethods,q=K?.status,J=q===`ready`||q===`stale`?K?.payload:void 0,Y=T&&G&&J!==void 0,se=g(()=>{let e=!A||I,t=B?.disabled??!1,n=e||t,r=t?B?.disabledHint:void 0,i=(()=>{if(t)return r;if(!A)return D({id:`5AApJw`,message:`Connect a wallet to continue`});if(k?.balanceTotalUsd?.formatted)return k.balanceTotalUsd.formatted;if(!F)return _(re,{width:56,height:12})})(),a=[{id:`wallet`,title:D({id:`sb9Y58`,message:`Wallet`}),icon:_(ne,{...y}),...k&&!t?{titleAdornment:k.address.formatted}:{},...i===void 0?{}:{meta:i},recommended:!0,disabled:n,onSelect:n?void 0:()=>S(`wallet`)}];if(L){let e=V?.disabled??!1,t=e?V?.disabledHint:void 0,n=e?t:[D({id:`qtoOYG`,message:`No limit`}),D({id:`D79cZK`,message:`Instant`})];a.push({id:`transfer`,title:D({id:`3dqPLT`,message:`Transfer Crypto`}),icon:_(te,{...y}),...n===void 0?{}:{meta:n},...z?{trailing:z}:{},disabled:e,onSelect:e?void 0:()=>S(`transfer`)})}return a},[k,F,I,A,L,z,B,V,S,D]),X=g(()=>{let e=(e,n)=>{if(e!==void 0)return e;if(!n)return;let r=[];n.limit?.formatted&&r.push(D({id:`jtKSW-`,message:`{0} limit`,values:{0:n.limit.formatted}}));let i=t(n.processingTime);return i&&r.push(i),r.length>0?r:void 0},t=e=>{if(e)return e.value===0?D({id:`D79cZK`,message:`Instant`}):e.formatted||void 0},n=(t,n,r,i,a)=>{let o=i?.disabled??!1,s=e(o?i?.disabledHint:void 0,a);return{id:t,title:n,icon:r,...s===void 0?{}:{meta:s},metaEmphasis:`uniform`,disabled:o,onSelect:o?void 0:()=>C(ae[t])}};return{card:n(`card`,D({id:`kryGs-`,message:`Card`}),_(ee,{...y}),H,J?.card),applePay:n(`apple-pay`,D({id:`6ws9A3`,message:`Apple Pay`}),_(c,{...y}),U,J?.applePay),googlePay:n(`google-pay`,D({id:`ybKOj4`,message:`Google Pay`}),_(d,{...y}),W,J?.googlePay)}},[H,U,W,J,C,D]),Z=s(g(()=>{let e=[{value:`crypto`,label:D({id:`CS69m9`,message:`Use Crypto`}),icon:_(l,{width:12,height:12,"aria-hidden":!0})}];return Y&&e.push({value:`cash`,label:D({id:`LSs4cd`,message:`Use Cash`}),icon:_(u,{width:12,height:12,"aria-hidden":!0})}),e},[D,Y]));if(x!==`deposit`)return null;let Q={crypto:_(h.Methods,{}),cash:v(h.Methods,{children:[_(h.MethodSection,{label:D({id:`y1ypMV`,message:`Most popular`}),children:_(h.Method,{...X.card})}),v(h.MethodSection,{label:D({id:`xOUCt3`,message:`Other options`}),children:[_(h.Method,{...X.applePay}),_(h.Method,{...X.googlePay})]})]})},[$]=Z,ce=E?.get(b)??null,le=Z.find(e=>e.value===ce)?.value??$?.value,ue=v(ie,{children:[_(h.Header,{}),_(h.Body,{children:Z.length>=2?_(h.RailPicker,{defaultValue:le,rails:Z,onValueChange:e=>E?.set(b,e),children:Z.map(e=>_(h.Rail,{value:e.value,children:Q[e.value]},e.value))}):Q[$?.value??`crypto`]})]});return _(h,{...p,...R?{title:R}:{},methods:se,children:f??ue})}function oe(e){if(e.length!==0)return _(p.Group,{max:4,overflow:Math.max(0,e.length-4),size:`md`,children:e.map(e=>_(m,{isNative:!0,symbol:e.networkName,...e.eip155Id?{chainId:Number(e.eip155Id)}:{},...e.chainLogoUrl?{logoUrl:e.chainLogoUrl}:{},hideChainBadge:!0},e.eip155Id??e.networkName))})}function S({open:e,defaultOpen:t,onOpenChange:n,trigger:r,...i}){return _(f,{open:e,defaultOpen:t,onOpenChange:n,trigger:r,children:_(x,{...i})})}(function(e){e.Dialog=S,e.Header=h.Header,e.Body=h.Body,e.Methods=h.Methods,e.Method=h.Method,e.MethodSection=h.MethodSection,e.Steps=h.Steps,e.Step=h.Step,e.RailPicker=h.RailPicker,e.Rail=h.Rail})(x||={});export{x as Deposit};
|
|
@@ -1,10 +1,13 @@
|
|
|
1
1
|
import { DepositStateName } from "../../../orchestrator/types.js";
|
|
2
2
|
import { DepositBoundary, Props } from "./components/Boundary.js";
|
|
3
3
|
import { DepositGuards, Props as Props$1 } from "./components/Guards.js";
|
|
4
|
-
import { DepositBodyProps, DepositDialogProps, DepositHeaderProps, DepositMethodProps, DepositMethodsProps, DepositProps } from "./types.js";
|
|
4
|
+
import { DepositBodyProps, DepositDialogProps, DepositHeaderProps, DepositMethodProps, DepositMethodSectionProps, DepositMethodsProps, DepositProps, DepositRailPickerProps, DepositRailProps } from "./types.js";
|
|
5
5
|
import { DepositHeader } from "./components/Header.js";
|
|
6
6
|
import { DepositMethod } from "./components/Method.js";
|
|
7
|
+
import { DepositMethodSection } from "./components/MethodSection.js";
|
|
7
8
|
import { DepositMethods } from "./components/Methods.js";
|
|
9
|
+
import { DepositRail } from "./components/Rail.js";
|
|
10
|
+
import { DepositRailPicker } from "./components/RailPicker.js";
|
|
8
11
|
import { DepositSteps, DepositStepsProps } from "./components/Steps.js";
|
|
9
12
|
import { ReactNode } from "react";
|
|
10
13
|
import * as _$react_jsx_runtime0 from "react/jsx-runtime";
|
|
@@ -52,15 +55,26 @@ declare namespace Deposit {
|
|
|
52
55
|
type BodyProps = DepositBodyProps;
|
|
53
56
|
type MethodsProps = DepositMethodsProps;
|
|
54
57
|
type MethodProps = DepositMethodProps;
|
|
58
|
+
type MethodSectionProps = DepositMethodSectionProps;
|
|
55
59
|
type DialogProps = DepositDialogProps;
|
|
56
60
|
type StepsProps = DepositStepsProps;
|
|
57
61
|
type StepProps = DepositStepProps;
|
|
58
62
|
type GuardsProps = Props$1;
|
|
59
63
|
type BoundaryProps = Props;
|
|
64
|
+
type RailPickerProps = DepositRailPickerProps;
|
|
65
|
+
type RailProps = DepositRailProps;
|
|
60
66
|
const Header: typeof DepositHeader;
|
|
61
67
|
const Body: typeof DepositBody;
|
|
62
68
|
const Methods: typeof DepositMethods;
|
|
63
69
|
const Method: typeof DepositMethod;
|
|
70
|
+
/**
|
|
71
|
+
* Labelled cluster of methods within a single rail (Paper artboard
|
|
72
|
+
* `1IIA-0` partitions the cash picker into "Most popular" and
|
|
73
|
+
* "Other options"). Detected by `Deposit.Methods` via element identity;
|
|
74
|
+
* when present the parent skips its own label + tile-group and each
|
|
75
|
+
* section owns its label and roving-focus group.
|
|
76
|
+
*/
|
|
77
|
+
const MethodSection: typeof DepositMethodSection;
|
|
64
78
|
const Dialog: typeof DepositDialog;
|
|
65
79
|
const Steps: typeof DepositSteps;
|
|
66
80
|
/**
|
|
@@ -78,6 +92,17 @@ declare namespace Deposit {
|
|
|
78
92
|
* `onReset` calls `useDeposit().close()` internally; `onError` is host-supplied.
|
|
79
93
|
*/
|
|
80
94
|
const Boundary: typeof DepositBoundary;
|
|
95
|
+
/**
|
|
96
|
+
* Segmented payment-rail switcher above the methods list. One panel per rail
|
|
97
|
+
* via {@link Deposit.Rail}. Uncontrolled by default; controllable via
|
|
98
|
+
* `value` + `onValueChange`.
|
|
99
|
+
*/
|
|
100
|
+
const RailPicker: typeof DepositRailPicker;
|
|
101
|
+
/**
|
|
102
|
+
* One panel inside {@link Deposit.RailPicker}. `value` matches a descriptor
|
|
103
|
+
* passed to the picker's `rails` prop.
|
|
104
|
+
*/
|
|
105
|
+
const Rail: typeof DepositRail;
|
|
81
106
|
}
|
|
82
107
|
//#endregion
|
|
83
108
|
export { Deposit };
|
|
@@ -1 +1 @@
|
|
|
1
|
-
"use client";import{DialogShell as e}from"../../../../../shared/dialog/DialogShell.js";import{Card as t}from"../../../../../shared/ui/Card/Card.js";import{Step as n}from"../../../../../shared/ui/Steps/Steps.js";import"../../../../../shared/ui/Steps/index.js";import{Tooltip as r}from"../../../../../shared/ui/Tooltip/Tooltip.js";import"../../../../../shared/ui/Tooltip/index.js";import"../../../../../ui/index.js";import{Frame as i}from"../../../../../shared/dialog/Frame.js";import{DepositBoundary as a}from"./components/Boundary.js";import{DepositGuards as o}from"./components/Guards.js";import{DepositContext as s}from"./context.js";import{DEPOSIT_SLOTS as c}from"./Deposit.slots.js";import{styles as l}from"./Deposit.styles.js";import{DepositHeader as u}from"./components/Header.js";import{DepositMethod as d}from"./components/Method.js";import{
|
|
1
|
+
"use client";import{DialogShell as e}from"../../../../../shared/dialog/DialogShell.js";import{Card as t}from"../../../../../shared/ui/Card/Card.js";import{Step as n}from"../../../../../shared/ui/Steps/Steps.js";import"../../../../../shared/ui/Steps/index.js";import{Tooltip as r}from"../../../../../shared/ui/Tooltip/Tooltip.js";import"../../../../../shared/ui/Tooltip/index.js";import"../../../../../ui/index.js";import{Frame as i}from"../../../../../shared/dialog/Frame.js";import{DepositBoundary as a}from"./components/Boundary.js";import{DepositGuards as o}from"./components/Guards.js";import{DepositContext as s}from"./context.js";import{DEPOSIT_SLOTS as c}from"./Deposit.slots.js";import{styles as l}from"./Deposit.styles.js";import{DepositHeader as u}from"./components/Header.js";import{DepositMethod as d}from"./components/Method.js";import{DepositMethodSection as f}from"./components/MethodSection.js";import{DepositMethods as p}from"./components/Methods.js";import{DepositRail as m}from"./components/Rail.js";import{DepositRailPicker as h}from"./components/RailPicker.js";import{DepositSteps as g}from"./components/Steps.js";import{useMemo as _}from"react";import{jsx as v}from"react/jsx-runtime";import*as y from"@stylexjs/stylex";const b=[];function x(e){let{title:t,methodsLabel:n,methods:a=b,children:o}=e,u=_(()=>({title:t,methodsLabel:n,methods:a}),[t,n,a]);return v(s.Provider,{value:u,children:v(r.Provider,{children:v(i,{"data-stridge-slot":c.root,...y.props(l.root),children:o})})})}function S(e){return v(t.Body,{"data-stridge-slot":c.body,...e})}function C({open:t,defaultOpen:n,onOpenChange:r,trigger:i,children:a,...o}){return v(e,{open:t,defaultOpen:n,onOpenChange:r,trigger:i,children:v(x,{...o,children:a})})}(function(e){e.Header=u,e.Body=S,e.Methods=p,e.Method=d,e.MethodSection=f,e.Dialog=C,e.Steps=g,e.Step=n,e.Guards=o,e.Boundary=a,e.RailPicker=h,e.Rail=m})(x||={});export{x as Deposit};
|
|
@@ -5,6 +5,12 @@ declare const DEPOSIT_SLOTS: {
|
|
|
5
5
|
readonly body: "deposit-body";
|
|
6
6
|
readonly methods: "deposit-methods";
|
|
7
7
|
readonly method: "deposit-method";
|
|
8
|
+
readonly methodSection: "deposit-method-section";
|
|
9
|
+
readonly methodSectionLabel: "deposit-method-section-label";
|
|
10
|
+
readonly railPicker: "deposit-rail-picker";
|
|
11
|
+
readonly railList: "deposit-rail-list";
|
|
12
|
+
readonly railTab: "deposit-rail-tab";
|
|
13
|
+
readonly rail: "deposit-rail";
|
|
8
14
|
};
|
|
9
15
|
type DepositSlot = (typeof DEPOSIT_SLOTS)[keyof typeof DEPOSIT_SLOTS];
|
|
10
16
|
//#endregion
|
|
@@ -1 +1 @@
|
|
|
1
|
-
const e={root:`deposit`,header:`deposit-header`,body:`deposit-body`,methods:`deposit-methods`,method:`deposit-method`};export{e as DEPOSIT_SLOTS};
|
|
1
|
+
const e={root:`deposit`,header:`deposit-header`,body:`deposit-body`,methods:`deposit-methods`,method:`deposit-method`,methodSection:`deposit-method-section`,methodSectionLabel:`deposit-method-section-label`,railPicker:`deposit-rail-picker`,railList:`deposit-rail-list`,railTab:`deposit-rail-tab`,rail:`deposit-rail`};export{e as DEPOSIT_SLOTS};
|
|
@@ -1 +1 @@
|
|
|
1
|
-
const e={root:{"Deposit__styles.root":`Deposit__styles.root`,"position-kVAEAm":`x1n2onr6`,"width-kzqmXN":`xh8yej3`,"maxWidth-ks0D6T":`x17fpy1y`,$$css:`@stridge/kit:src/flows/deposit/widgets/deposit/compound/Deposit.styles.ts:17`},header:{"Deposit__styles.header":`Deposit__styles.header`,"justifyContent-kjj79g":`x1qughib`,$$css:`@stridge/kit:src/flows/deposit/widgets/deposit/compound/Deposit.styles.ts:25`},headerTrailing:{"Deposit__styles.headerTrailing":`Deposit__styles.headerTrailing`,"display-k1xSpc":`x78zum5`,"alignItems-kGNEyG":`x6s0dn4`,"gap-kOIVth":`x1a6yh9e`,$$css:`@stridge/kit:src/flows/deposit/widgets/deposit/compound/Deposit.styles.ts:30`},closeIcon:{"Deposit__styles.closeIcon":`Deposit__styles.closeIcon`,"color-kMwMTN":`xdksllq`,"strokeWidth-kfJifR":`x1k315e8`,$$css:`@stridge/kit:src/flows/deposit/widgets/deposit/compound/Deposit.styles.ts:35`},section:{"Deposit__styles.section":`Deposit__styles.section`,"display-k1xSpc":`x78zum5`,"flexDirection-kXwgrk":`xdt5ytf`,"gap-kOIVth":`x883omv`,"paddingInlineEnd-kwRFfy":`x1o5r3ls`,"paddingInlineStart-kZCmMZ":`xz7312c`,$$css:`@stridge/kit:src/flows/deposit/widgets/deposit/compound/Deposit.styles.ts:40`},sectionMethods:{"Deposit__styles.sectionMethods":`Deposit__styles.sectionMethods`,"paddingTop-kLKAdn":`x1cnzs8`,"paddingBottom-kGO01o":`x1t4gjm`,$$css:`@stridge/kit:src/flows/deposit/widgets/deposit/compound/Deposit.styles.ts:47`},methodsList:{"Deposit__styles.methodsList":`Deposit__styles.methodsList`,"display-k1xSpc":`x78zum5`,"flexDirection-kXwgrk":`xdt5ytf`,"gap-kOIVth":`x167g77z`,$$css:`@stridge/kit:src/flows/deposit/widgets/deposit/compound/Deposit.styles.ts:52`},methodRow:{"Deposit__styles.methodRow":`Deposit__styles.methodRow`,"gap-kOIVth":`x1af02g3`,"paddingInlineStart-kZCmMZ":`xwn43p0`,$$css:`@stridge/kit:src/flows/deposit/widgets/deposit/compound/Deposit.styles.ts:
|
|
1
|
+
const e={root:{"Deposit__styles.root":`Deposit__styles.root`,"position-kVAEAm":`x1n2onr6`,"width-kzqmXN":`xh8yej3`,"maxWidth-ks0D6T":`x17fpy1y`,$$css:`@stridge/kit:src/flows/deposit/widgets/deposit/compound/Deposit.styles.ts:17`},header:{"Deposit__styles.header":`Deposit__styles.header`,"justifyContent-kjj79g":`x1qughib`,$$css:`@stridge/kit:src/flows/deposit/widgets/deposit/compound/Deposit.styles.ts:25`},headerTrailing:{"Deposit__styles.headerTrailing":`Deposit__styles.headerTrailing`,"display-k1xSpc":`x78zum5`,"alignItems-kGNEyG":`x6s0dn4`,"gap-kOIVth":`x1a6yh9e`,$$css:`@stridge/kit:src/flows/deposit/widgets/deposit/compound/Deposit.styles.ts:30`},closeIcon:{"Deposit__styles.closeIcon":`Deposit__styles.closeIcon`,"color-kMwMTN":`xdksllq`,"strokeWidth-kfJifR":`x1k315e8`,$$css:`@stridge/kit:src/flows/deposit/widgets/deposit/compound/Deposit.styles.ts:35`},section:{"Deposit__styles.section":`Deposit__styles.section`,"display-k1xSpc":`x78zum5`,"flexDirection-kXwgrk":`xdt5ytf`,"gap-kOIVth":`x883omv`,"paddingInlineEnd-kwRFfy":`x1o5r3ls`,"paddingInlineStart-kZCmMZ":`xz7312c`,$$css:`@stridge/kit:src/flows/deposit/widgets/deposit/compound/Deposit.styles.ts:40`},sectionMethods:{"Deposit__styles.sectionMethods":`Deposit__styles.sectionMethods`,"paddingTop-kLKAdn":`x1cnzs8`,"paddingBottom-kGO01o":`x1t4gjm`,$$css:`@stridge/kit:src/flows/deposit/widgets/deposit/compound/Deposit.styles.ts:47`},methodsList:{"Deposit__styles.methodsList":`Deposit__styles.methodsList`,"display-k1xSpc":`x78zum5`,"flexDirection-kXwgrk":`xdt5ytf`,"gap-kOIVth":`x167g77z`,$$css:`@stridge/kit:src/flows/deposit/widgets/deposit/compound/Deposit.styles.ts:52`},methodSection:{"Deposit__styles.methodSection":`Deposit__styles.methodSection`,"display-k1xSpc":`x78zum5`,"flexDirection-kXwgrk":`xdt5ytf`,"gap-kOIVth":`x2blr79`,$$css:`@stridge/kit:src/flows/deposit/widgets/deposit/compound/Deposit.styles.ts:65`},sectionMethodsGrouped:{"Deposit__styles.sectionMethodsGrouped":`Deposit__styles.sectionMethodsGrouped`,"gap-kOIVth":`xsfdumc`,$$css:`@stridge/kit:src/flows/deposit/widgets/deposit/compound/Deposit.styles.ts:76`},railPicker:{"Deposit__styles.railPicker":`Deposit__styles.railPicker`,"display-k1xSpc":`x78zum5`,"flexDirection-kXwgrk":`xdt5ytf`,"gap-kOIVth":`xxhr3t`,$$css:`@stridge/kit:src/flows/deposit/widgets/deposit/compound/Deposit.styles.ts:86`},railList:{"Deposit__styles.railList":`Deposit__styles.railList`,"display-k1xSpc":`x78zum5`,"marginInlineEnd-k71WvV":`xnqxrjt`,"marginInlineStart-keTefX":`xnzr9dm`,"marginTop-keoZOQ":`xw7yly9`,$$css:`@stridge/kit:src/flows/deposit/widgets/deposit/compound/Deposit.styles.ts:91`},railListInner:{"Deposit__styles.railListInner":`Deposit__styles.railListInner`,"flexGrow-kzQI83":`x1iyjqo2`,"flexShrink-kmuXW":`xs83m0k`,$$css:`@stridge/kit:src/flows/deposit/widgets/deposit/compound/Deposit.styles.ts:97`},railTabBadge:{"Deposit__styles.railTabBadge":`Deposit__styles.railTabBadge`,"display-k1xSpc":`x3nfvp2`,"alignItems-kGNEyG":`x6s0dn4`,"justifyContent-kjj79g":`xl56j7k`,"width-kzqmXN":`x17z2i9w`,"height-kZKoxP":`x17rw0jw`,"flexShrink-kmuXW":`x2lah0s`,"borderRadius-kaIpWk":`x1npxkrn`,"borderWidth-kMzoRj":`xmkeg23`,"borderStyle-ksu8eU":`x1y0btm7`,"borderColor-kVAM5u":`x1bue7yx`,"backgroundColor-kWkggS":`xp5aqsh`,"transitionProperty-k1ekBW":`x1eaenvl`,"transitionDuration-kIyJzY":`x1vhb3u9`,"transitionTimingFunction-kAMwcw":`x1xv5090`,"[data-active]_backgroundColor-kUQuju":`x1anawn6`,"[data-active]_borderColor-kE2G9j":`x7kzco9`,"[data-active]_color-kZgtTg":`xuz9cdh`,$$css:`@stridge/kit:src/flows/deposit/widgets/deposit/compound/Deposit.styles.ts:114`},methodRow:{"Deposit__styles.methodRow":`Deposit__styles.methodRow`,"gap-kOIVth":`x1af02g3`,"paddingInlineStart-kZCmMZ":`xwn43p0`,$$css:`@stridge/kit:src/flows/deposit/widgets/deposit/compound/Deposit.styles.ts:141`},methodIconSlot:{"Deposit__styles.methodIconSlot":`Deposit__styles.methodIconSlot`,"display-k1xSpc":`x78zum5`,"alignItems-kGNEyG":`x6s0dn4`,"justifyContent-kjj79g":`xl56j7k`,"width-kzqmXN":`x14qfxbe`,"height-kZKoxP":`xc9qbxq`,"flexShrink-kmuXW":`x2lah0s`,"borderRadius-kaIpWk":`xi9trdq`,"backgroundColor-kWkggS":`xp5aqsh`,"borderWidth-kMzoRj":`xmkeg23`,"borderStyle-ksu8eU":`x1y0btm7`,"borderColor-kVAM5u":`x1bue7yx`,"color-kMwMTN":`xzn0pkc`,$$css:`@stridge/kit:src/flows/deposit/widgets/deposit/compound/Deposit.styles.ts:145`},methodText:{"Deposit__styles.methodText":`Deposit__styles.methodText`,"display-k1xSpc":`x78zum5`,"flexDirection-kXwgrk":`xdt5ytf`,"flexBasis-kCS8Yb":`x1r8uery`,"flexGrow-kzQI83":`x1iyjqo2`,"flexShrink-kmuXW":`xs83m0k`,"gap-kOIVth":`x1ed6fcf`,"minWidth-k7Eaqz":`xeuugli`,$$css:`@stridge/kit:src/flows/deposit/widgets/deposit/compound/Deposit.styles.ts:159`},methodTitleRow:{"Deposit__styles.methodTitleRow":`Deposit__styles.methodTitleRow`,"display-k1xSpc":`x78zum5`,"alignItems-kGNEyG":`x6s0dn4`,"gap-kOIVth":`x167g77z`,"minWidth-k7Eaqz":`xeuugli`,$$css:`@stridge/kit:src/flows/deposit/widgets/deposit/compound/Deposit.styles.ts:168`},methodMeta:{"Deposit__styles.methodMeta":`Deposit__styles.methodMeta`,"display-k1xSpc":`x78zum5`,"flexDirection-kXwgrk":`x1q0g3np`,"alignItems-kGNEyG":`x6s0dn4`,"gap-kOIVth":`x17d4w8g`,$$css:`@stridge/kit:src/flows/deposit/widgets/deposit/compound/Deposit.styles.ts:174`},methodMetaItem:{"Deposit__styles.methodMetaItem":`Deposit__styles.methodMetaItem`,"display-k1xSpc":`x3nfvp2`,"alignItems-kGNEyG":`x6s0dn4`,"whiteSpace-khDVqt":`xuxw1ft`,$$css:`@stridge/kit:src/flows/deposit/widgets/deposit/compound/Deposit.styles.ts:180`},methodTrailing:{"Deposit__styles.methodTrailing":`Deposit__styles.methodTrailing`,"display-k1xSpc":`x78zum5`,"alignItems-kGNEyG":`x6s0dn4`,"flexShrink-kmuXW":`x2lah0s`,$$css:`@stridge/kit:src/flows/deposit/widgets/deposit/compound/Deposit.styles.ts:185`},methodChevron:{"Deposit__styles.methodChevron":`Deposit__styles.methodChevron`,"width-kzqmXN":`x6jxa94`,"height-kZKoxP":`x1v9usgg`,"flexShrink-kmuXW":`x2lah0s`,"color-kMwMTN":`xdksllq`,"strokeWidth-kfJifR":`x1k315e8`,$$css:`@stridge/kit:src/flows/deposit/widgets/deposit/compound/Deposit.styles.ts:190`},methodRecommendedBar:{"Deposit__styles.methodRecommendedBar":`Deposit__styles.methodRecommendedBar`,"position-kVAEAm":`x10l6tqk`,"top-k87sOh":`xuivejd`,"bottom-krVfgx":`xmbx2d0`,"insetInlineStart-kLqNvP":`x1o0tod`,"width-kzqmXN":`xfo62xy`,"borderStartEndRadius-kfmiAY":`x1e4oeot`,"borderEndEndRadius-kT0f0o":`x1ui04y5`,"backgroundColor-kWkggS":`xdmxa9o`,$$css:`@stridge/kit:src/flows/deposit/widgets/deposit/compound/Deposit.styles.ts:197`}};export{e as styles};
|
|
@@ -1 +1 @@
|
|
|
1
|
-
"use client";import{useDepositSnapshot as e}from"../../../../driver/context.js";import{useDepositEffectiveState as t}from"../../../../orchestrator/controller.js";import{useDepositOwnerContext as n}from"../../../../../../stridge/depositOwner.js";import{DepositBootstrapErrorState as r}from"../../../../dialog/DepositBootstrapErrorState.js";import{WalletRequiredState as i}from"../../../../dialog/WalletRequiredState.js";import{LoadingState as a}from"../../../../../../shared/dialog/LoadingState.js";import{Fragment as o,jsx as s}from"react/jsx-runtime";const c=new Set([`deposit`,`assetPicker`,`amountEntry`,`confirmDeposit`,`transferCrypto`]);function l({children:l}){let u=t(),d=e(),f=n(),p=c.has(u.name);return f!==null&&!f.resolved&&p?s(i,{}):d.target.status===`error`&&p?s(r,{}):(d.target.status===`loading`||d.target.status===`idle`)&&p?s(a,{slot:`deposit`}):s(o,{children:l})}export{l as DepositGuards};
|
|
1
|
+
"use client";import{useDepositSnapshot as e}from"../../../../driver/context.js";import{useDepositEffectiveState as t}from"../../../../orchestrator/controller.js";import{useDepositOwnerContext as n}from"../../../../../../stridge/depositOwner.js";import{DepositBootstrapErrorState as r}from"../../../../dialog/DepositBootstrapErrorState.js";import{WalletRequiredState as i}from"../../../../dialog/WalletRequiredState.js";import{LoadingState as a}from"../../../../../../shared/dialog/LoadingState.js";import{Fragment as o,jsx as s}from"react/jsx-runtime";const c=new Set([`deposit`,`assetPicker`,`amountEntry`,`cashAmountEntry`,`cashConfirm`,`confirmDeposit`,`transferCrypto`]);function l({children:l}){let u=t(),d=e(),f=n(),p=c.has(u.name);return f!==null&&!f.resolved&&p?s(i,{}):d.target.status===`error`&&p?s(r,{}):(d.target.status===`loading`||d.target.status===`idle`)&&p?s(a,{slot:`deposit`}):s(o,{children:l})}export{l as DepositGuards};
|
|
@@ -1 +1 @@
|
|
|
1
|
-
"use client";import{ChevronRightIcon as e}from"../../../../../../shared/icons/ChevronRightIcon.js";import"../../../../../../icons/index.js";import{SelectableTile as t}from"../../../../../../shared/ui/SelectableTile/SelectableTile.js";import"../../../../../../shared/ui/SelectableTile/index.js";import{text as n}from"../../../../../../shared/ui/Text/Text.js";import"../../../../../../ui/index.js";import{DEPOSIT_SLOTS as r}from"../Deposit.slots.js";import{styles as i}from"../Deposit.styles.js";import{Fragment as a}from"react";import{jsx as o,jsxs as s}from"react/jsx-runtime";import*as c from"@stylexjs/stylex";function l({title:a,titleAdornment:l,meta:d,icon:
|
|
1
|
+
"use client";import{ChevronRightIcon as e}from"../../../../../../shared/icons/ChevronRightIcon.js";import"../../../../../../icons/index.js";import{SelectableTile as t}from"../../../../../../shared/ui/SelectableTile/SelectableTile.js";import"../../../../../../shared/ui/SelectableTile/index.js";import{text as n}from"../../../../../../shared/ui/Text/Text.js";import"../../../../../../ui/index.js";import{DEPOSIT_SLOTS as r}from"../Deposit.slots.js";import{styles as i}from"../Deposit.styles.js";import{Fragment as a}from"react";import{jsx as o,jsxs as s}from"react/jsx-runtime";import*as c from"@stylexjs/stylex";function l({title:a,titleAdornment:l,meta:d,metaEmphasis:f=`lead`,icon:p,trailing:m,recommended:h=!1,disabled:g=!1,onSelect:_}){let v=g&&typeof d==`string`&&d.length>0?`${a} — ${d}`:a;return s(t,{shape:`card`,interactive:!0,onClick:g?void 0:_,disabled:g,"aria-label":v,"aria-disabled":g||void 0,"data-stridge-slot":r.method,"data-recommended":h||void 0,"data-disabled":g||void 0,...c.props(i.methodRow),children:[h?o(`span`,{"aria-hidden":!0,...c.props(i.methodRecommendedBar)}):null,o(`span`,{...c.props(i.methodIconSlot),children:p}),s(`span`,{...c.props(i.methodText),children:[s(`span`,{...c.props(i.methodTitleRow),children:[o(n.span,{size:`sm`,fontWeight:`semibold`,leading:`tight`,tracking:`tight`,truncate:!0,children:a}),l?o(n.span,{size:`xs`,leading:`tight`,tracking:`wide`,color:`subdued`,font:`mono`,style:{flexShrink:0},children:l}):null]}),d?o(u,{meta:d,emphasis:f}):null]}),o(`span`,{...c.props(i.methodTrailing),children:m??o(e,{"aria-hidden":!0,...c.props(i.methodChevron)})})]})}function u({meta:e,emphasis:t=`lead`}){return Array.isArray(e)?o(n.span,{size:`xs`,leading:`tight`,color:`subdued`,...c.props(i.methodMeta),children:e.map((e,r)=>{let l=t===`uniform`||r===0,u=t===`lead`&&r===0;return s(a,{children:[r>0?o(`span`,{...c.props(i.methodMetaItem),children:`·`}):null,o(n.span,{size:`xs`,leading:`tight`,fontWeight:l?`medium`:`normal`,color:u?`default`:`inherit`,...c.props(i.methodMetaItem),children:e})]},r)})}):o(n.span,{size:`xs`,leading:`tight`,color:`subdued`,...c.props(i.methodMeta),children:e})}export{l as DepositMethod};
|
|
@@ -0,0 +1,40 @@
|
|
|
1
|
+
import { DepositMethodSectionProps } from "../types.js";
|
|
2
|
+
import * as _$react_jsx_runtime0 from "react/jsx-runtime";
|
|
3
|
+
|
|
4
|
+
//#region src/flows/deposit/widgets/deposit/compound/components/MethodSection.d.ts
|
|
5
|
+
/**
|
|
6
|
+
* MethodSection part — labelled cluster of `Deposit.Method` rows inside a
|
|
7
|
+
* single rail. Renders its own label + `SelectableTileGroup` so each section
|
|
8
|
+
* owns a roving-focus group whose arrow-key navigation stays contained.
|
|
9
|
+
*
|
|
10
|
+
* Detected by the enclosing `<Deposit.Methods>` walker via React element
|
|
11
|
+
* identity (`child.type === DepositMethodSection`); when at least one section
|
|
12
|
+
* child is present, `Methods` skips its own label + tile-group wrapper and
|
|
13
|
+
* delegates that chrome to the sections. Flat-list behavior (no sections) is
|
|
14
|
+
* unchanged.
|
|
15
|
+
*
|
|
16
|
+
* Consumer shape — JSX composition, not data shape, so moving a method
|
|
17
|
+
* between sections, swapping a label per-locale, or dropping a section
|
|
18
|
+
* entirely never touches `DepositMethodInput` or the orchestrator:
|
|
19
|
+
*
|
|
20
|
+
* ```tsx
|
|
21
|
+
* <Deposit.Methods>
|
|
22
|
+
* <Deposit.MethodSection label={t`Most popular`}>
|
|
23
|
+
* <Deposit.Method {...card} />
|
|
24
|
+
* </Deposit.MethodSection>
|
|
25
|
+
* <Deposit.MethodSection label={t`Other options`}>
|
|
26
|
+
* <Deposit.Method {...applePay} />
|
|
27
|
+
* <Deposit.Method {...googlePay} />
|
|
28
|
+
* </Deposit.MethodSection>
|
|
29
|
+
* </Deposit.Methods>
|
|
30
|
+
* ```
|
|
31
|
+
*/
|
|
32
|
+
declare function DepositMethodSection({
|
|
33
|
+
label,
|
|
34
|
+
children
|
|
35
|
+
}: DepositMethodSectionProps): _$react_jsx_runtime0.JSX.Element;
|
|
36
|
+
declare namespace DepositMethodSection {
|
|
37
|
+
var displayName: string;
|
|
38
|
+
}
|
|
39
|
+
//#endregion
|
|
40
|
+
export { DepositMethodSection };
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
"use client";import{SelectableTileGroup as e}from"../../../../../../shared/ui/SelectableTile/SelectableTileGroup.js";import"../../../../../../shared/ui/SelectableTile/index.js";import{text as t}from"../../../../../../shared/ui/Text/Text.js";import"../../../../../../ui/index.js";import{DEPOSIT_SLOTS as n}from"../Deposit.slots.js";import{styles as r}from"../Deposit.styles.js";import{useId as i}from"react";import{jsx as a,jsxs as o}from"react/jsx-runtime";import*as s from"@stylexjs/stylex";function c({label:c,children:l}){let u=i();return o(`div`,{"data-stridge-slot":n.methodSection,...s.props(r.methodSection),children:[a(t.span,{id:u,"data-stridge-slot":n.methodSectionLabel,size:`2xs`,fontWeight:`medium`,leading:`tight`,tracking:`widest`,transform:`uppercase`,color:`subdued`,children:c}),a(e,{"aria-labelledby":u,...s.props(r.methodsList),children:l})]})}c.displayName=`Deposit.MethodSection`;export{c as DepositMethodSection};
|
|
@@ -3,16 +3,23 @@ import * as _$react_jsx_runtime0 from "react/jsx-runtime";
|
|
|
3
3
|
|
|
4
4
|
//#region src/flows/deposit/widgets/deposit/compound/components/Methods.d.ts
|
|
5
5
|
/**
|
|
6
|
-
* Methods part — section wrapper around the payment-method list.
|
|
7
|
-
* the "Payment Method" label and a vertical column for `Deposit.Method`
|
|
8
|
-
* children. The list participates in arrow-key navigation via
|
|
9
|
-
* `SelectableTileGroup` (roving-tabindex). No `value` is supplied here —
|
|
10
|
-
* each row's click navigates to the next step rather than toggling a
|
|
11
|
-
* pressed state, so the group is purely a keyboard-affordance wrapper.
|
|
6
|
+
* Methods part — section wrapper around the payment-method list.
|
|
12
7
|
*
|
|
13
|
-
*
|
|
14
|
-
*
|
|
15
|
-
*
|
|
8
|
+
* Two modes, picked automatically off the shape of `children`:
|
|
9
|
+
*
|
|
10
|
+
* - **Flat** (default): renders the "PAYMENT METHOD" label and a single
|
|
11
|
+
* `SelectableTileGroup` (roving-tabindex) containing one `Deposit.Method`
|
|
12
|
+
* per entry on the {@link Deposit} root's `methods` prop, or the passed
|
|
13
|
+
* `children` if supplied.
|
|
14
|
+
* - **Sectioned**: when at least one `<Deposit.MethodSection>` child is
|
|
15
|
+
* detected, the outer label and tile-group are skipped — each section
|
|
16
|
+
* owns its own label and roving-focus group so arrow-key navigation
|
|
17
|
+
* stays contained inside a single section (the Paper artboard `1IIA-0`
|
|
18
|
+
* cash picker shape).
|
|
19
|
+
*
|
|
20
|
+
* No `value` is supplied to the tile group — each row's click navigates to
|
|
21
|
+
* the next step rather than toggling a pressed state, so the group is purely
|
|
22
|
+
* a keyboard-affordance wrapper.
|
|
16
23
|
*/
|
|
17
24
|
declare function DepositMethods({
|
|
18
25
|
label,
|
|
@@ -1 +1 @@
|
|
|
1
|
-
"use client";import{useLingui as e}from"../../../../../../shared/i18n/useLingui.js";import"../../../../../../i18n/index.js";import{SelectableTileGroup as t}from"../../../../../../shared/ui/SelectableTile/SelectableTileGroup.js";import"../../../../../../shared/ui/SelectableTile/index.js";import{text as n}from"../../../../../../shared/ui/Text/Text.js";import"../../../../../../ui/index.js";import{useDepositContext as r}from"../context.js";import{DEPOSIT_SLOTS as i}from"../Deposit.slots.js";import{styles as a}from"../Deposit.styles.js";import{DepositMethod as o}from"./Method.js";import{
|
|
1
|
+
"use client";import{useLingui as e}from"../../../../../../shared/i18n/useLingui.js";import"../../../../../../i18n/index.js";import{SelectableTileGroup as t}from"../../../../../../shared/ui/SelectableTile/SelectableTileGroup.js";import"../../../../../../shared/ui/SelectableTile/index.js";import{text as n}from"../../../../../../shared/ui/Text/Text.js";import"../../../../../../ui/index.js";import{useDepositContext as r}from"../context.js";import{DEPOSIT_SLOTS as i}from"../Deposit.slots.js";import{styles as a}from"../Deposit.styles.js";import{DepositMethod as o}from"./Method.js";import{DepositMethodSection as s}from"./MethodSection.js";import{Children as c,isValidElement as l,useId as u}from"react";import{Fragment as d,jsx as f,jsxs as p}from"react/jsx-runtime";import*as m from"@stylexjs/stylex";function h(e){let t=!1;return c.forEach(e,e=>{t||l(e)&&e.type===s&&(t=!0)}),t}function g({label:s,methods:c,children:l}={}){let g=r(`Deposit.Methods`),{_}=e(),v=u(),y=s??g.methodsLabel??_({id:`sbwbC0`,message:`Payment Method`}),b=c??g.methods,x=l!==void 0&&h(l);return f(`div`,{"data-stridge-slot":i.methods,"data-sectioned":x?``:void 0,...m.props(a.section,a.sectionMethods,x&&a.sectionMethodsGrouped),children:x?l:p(d,{children:[f(n.span,{id:v,size:`2xs`,fontWeight:`medium`,leading:`tight`,tracking:`widest`,transform:`uppercase`,color:`subdued`,children:y}),f(t,{"aria-labelledby":v,...m.props(a.methodsList),children:l??b.map(e=>f(o,{...e},e.id))})]})})}export{g as DepositMethods};
|
|
@@ -0,0 +1,18 @@
|
|
|
1
|
+
import { DepositRailProps } from "../types.js";
|
|
2
|
+
|
|
3
|
+
//#region src/flows/deposit/widgets/deposit/compound/components/Rail.d.ts
|
|
4
|
+
/**
|
|
5
|
+
* Rail marker — declarative slot consumed by `Deposit.RailPicker`. The
|
|
6
|
+
* component itself renders nothing; its children are lifted by the
|
|
7
|
+
* enclosing `RailPicker` when `value` matches the active rail and
|
|
8
|
+
* wrapped in the kit's `StepTransition` (slide + blur on rail change,
|
|
9
|
+
* animated height between commits) — same animation primitive the
|
|
10
|
+
* orchestrated dialog uses between FSM steps. Outside a `RailPicker`
|
|
11
|
+
* the component is a no-op.
|
|
12
|
+
*/
|
|
13
|
+
declare function DepositRail(_props: DepositRailProps): null;
|
|
14
|
+
declare namespace DepositRail {
|
|
15
|
+
var displayName: string;
|
|
16
|
+
}
|
|
17
|
+
//#endregion
|
|
18
|
+
export { DepositRail };
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
"use client";function e(e){return null}e.displayName=`Deposit.Rail`;export{e as DepositRail};
|
|
@@ -0,0 +1,43 @@
|
|
|
1
|
+
import { DepositRailPickerProps } from "../types.js";
|
|
2
|
+
import * as _$react_jsx_runtime0 from "react/jsx-runtime";
|
|
3
|
+
|
|
4
|
+
//#region src/flows/deposit/widgets/deposit/compound/components/RailPicker.d.ts
|
|
5
|
+
/**
|
|
6
|
+
* RailPicker part — segmented switcher above the methods list. Renders a
|
|
7
|
+
* `Tabs.List` with one `Tabs.Tab` per `rails` descriptor (each tab
|
|
8
|
+
* composes a 22px circular icon badge + label) plus a floating
|
|
9
|
+
* `Tabs.Indicator` pill that animates between tabs. The active rail's
|
|
10
|
+
* panel content is lifted from the matching `<Deposit.Rail>` marker
|
|
11
|
+
* child and wrapped in the kit's `StepTransition` — same slide+blur+
|
|
12
|
+
* layout-height animation used between FSM steps in the orchestrated
|
|
13
|
+
* dialog, so the picker reads as one orchestrated surface with the
|
|
14
|
+
* rest of the flow. Direction follows `StepTransition`'s history-stack
|
|
15
|
+
* logic: novel rail = forward (slides in from the right), known rail
|
|
16
|
+
* = backward (slides in from the left).
|
|
17
|
+
*
|
|
18
|
+
* The badge inversion (idle chip surface ↔ active foreground fill)
|
|
19
|
+
* still rides through the parent Base UI Tab's `data-active` via the
|
|
20
|
+
* `render` prop (StyleX does not compile parent-ancestor combinators).
|
|
21
|
+
*
|
|
22
|
+
* The active panel is rendered as a single manual `<div role="tabpanel">`
|
|
23
|
+
* tied to the active tab via `aria-labelledby` (each tab carries an
|
|
24
|
+
* `id={idPrefix}-{rail.value}` matching the panel's `aria-labelledby`),
|
|
25
|
+
* **not** as one `Tabs.Panel` per descriptor. The marker-walking pattern
|
|
26
|
+
* lifts the matched `<Deposit.Rail>`'s children into a single slot wrapped
|
|
27
|
+
* in `StepTransition`, so the picker reads as one orchestrated surface
|
|
28
|
+
* across rail changes. The tradeoff is losing Base UI's per-panel
|
|
29
|
+
* `aria-controls` wiring and its built-in hidden-when-inactive focus
|
|
30
|
+
* management; the manual `aria-labelledby` plus the marker-walker's
|
|
31
|
+
* one-panel-at-a-time render restore the equivalent semantics.
|
|
32
|
+
*
|
|
33
|
+
* Empty `rails` short-circuits to `null` — the orchestrated default composition only
|
|
34
|
+
* mounts the picker when `enabledRails.length >= 2`, but `Deposit.RailPicker` is part
|
|
35
|
+
* of the public API and a composition-path host could pass `rails={[]}` directly. The
|
|
36
|
+
* inner component owns the hooks so the early-return stays above any hook call.
|
|
37
|
+
*/
|
|
38
|
+
declare function DepositRailPicker(props: DepositRailPickerProps): _$react_jsx_runtime0.JSX.Element | null;
|
|
39
|
+
declare namespace DepositRailPicker {
|
|
40
|
+
var displayName: string;
|
|
41
|
+
}
|
|
42
|
+
//#endregion
|
|
43
|
+
export { DepositRailPicker };
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
"use client";import{StepTransition as e}from"../../../../../../shared/dialog/StepTransition.js";import{Tabs as t}from"../../../../../../shared/ui/Tabs/Tabs.js";import"../../../../../../shared/ui/Tabs/index.js";import{DEPOSIT_SLOTS as n}from"../Deposit.slots.js";import{styles as r}from"../Deposit.styles.js";import{DepositRail as i}from"./Rail.js";import{Children as a,isValidElement as o,useId as s,useMemo as c,useState as l}from"react";import{jsx as u,jsxs as d}from"react/jsx-runtime";import*as f from"@stylexjs/stylex";function p(e,t){let n=null;return a.forEach(e,e=>{n===null&&o(e)&&e.type===i&&e.props.value===t&&(n=e.props.children)}),n}function m(e){return e.rails.length===0?null:u(h,{...e})}m.displayName=`Deposit.RailPicker`;function h({defaultValue:i,value:a,onValueChange:o,rails:m,variant:h=`default`,children:g}){let[_]=m;if(!_)return null;let[v,y]=l(i??_.value),b=a!==void 0,x=b?a:v,S=s(),C=e=>{e!==`crypto`&&e!==`cash`||(b||y(e),o?.(e))},w=c(()=>p(g,x),[g,x]);return d(t.Root,{"data-stridge-slot":n.railPicker,value:x,onValueChange:C,...f.props(r.railPicker),children:[u(`div`,{...f.props(r.railList),children:d(t.List,{"data-stridge-slot":n.railList,variant:h,...f.props(r.railListInner),children:[m.map(e=>u(t.Tab,{id:`${S}-${e.value}`,"data-stridge-slot":n.railTab,"data-rail":e.value,value:e.value,disabled:e.disabled,render:(t,n)=>d(`button`,{type:`button`,...t,children:[e.icon?u(`span`,{"data-active":n.active?``:void 0,...f.props(r.railTabBadge),children:e.icon}):null,e.label]})},e.value)),u(t.Indicator,{})]})}),u(e,{stateKey:x,children:u(`div`,{role:`tabpanel`,"aria-labelledby":`${S}-${x}`,"data-stridge-slot":n.rail,"data-rail":x,children:w})})]})}export{m as DepositRailPicker};
|
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
import { DepositBodyProps, DepositDialogProps, DepositHeaderProps, DepositMethodInput, DepositMethodOption, DepositMethodProps, DepositMethodsProps, DepositProps } from "./types.js";
|
|
1
|
+
import { DepositBodyProps, DepositDialogProps, DepositHeaderProps, DepositMethodInput, DepositMethodOption, DepositMethodProps, DepositMethodSectionProps, DepositMethodsProps, DepositProps, DepositRail, DepositRailDescriptor, DepositRailPickerProps, DepositRailProps } from "./types.js";
|
|
2
2
|
import { DepositStepsProps } from "./components/Steps.js";
|
|
3
3
|
import { Deposit } from "./Deposit.js";
|
|
4
4
|
import { DEPOSIT_SLOTS, DepositSlot } from "./Deposit.slots.js";
|
|
@@ -1,4 +1,5 @@
|
|
|
1
1
|
import { DialogShellControls } from "../../../../../shared/dialog/DialogShell.js";
|
|
2
|
+
import { Tabs } from "../../../../../shared/ui/Tabs/Tabs.js";
|
|
2
3
|
import { ComponentProps, ReactNode } from "react";
|
|
3
4
|
|
|
4
5
|
//#region src/flows/deposit/widgets/deposit/compound/types.d.ts
|
|
@@ -23,6 +24,14 @@ interface DepositMethodOption {
|
|
|
23
24
|
* by middle-dot separators (e.g. `["$24.50", "Instant"]`).
|
|
24
25
|
*/
|
|
25
26
|
meta?: ReactNode;
|
|
27
|
+
/**
|
|
28
|
+
* Emphasis treatment for a multi-segment `meta` array. `"lead"` (the
|
|
29
|
+
* default) renders the first segment at `medium` weight with full-foreground
|
|
30
|
+
* colour and subdues the rest — the wallet and transfer-crypto tiles.
|
|
31
|
+
* `"uniform"` renders every segment at `medium` weight with subdued colour —
|
|
32
|
+
* the cash method tiles. Ignored when `meta` is a single node.
|
|
33
|
+
*/
|
|
34
|
+
metaEmphasis?: "lead" | "uniform";
|
|
26
35
|
/** Icon rendered inside the 36×36 slot on the left of the row. */
|
|
27
36
|
icon?: ReactNode;
|
|
28
37
|
/**
|
|
@@ -128,5 +137,95 @@ interface DepositMethodProps extends DepositMethodOption {
|
|
|
128
137
|
/** Fired when the user clicks the row. */
|
|
129
138
|
onSelect?: () => void;
|
|
130
139
|
}
|
|
140
|
+
/**
|
|
141
|
+
* Method section part props. A `<Deposit.MethodSection>` is a labelled cluster
|
|
142
|
+
* of methods within a single rail — Paper artboard `1IIA-0` partitions the
|
|
143
|
+
* cash picker into "Most popular" (Card) and "Other options" (Apple Pay /
|
|
144
|
+
* Google Pay). Sections live in the JSX composition rather than on the method
|
|
145
|
+
* data shape, so moving a method between sections, swapping a label per
|
|
146
|
+
* locale, or dropping a section entirely never touches `DepositMethodInput`
|
|
147
|
+
* or the orchestrator. Each section owns its own roving-focus
|
|
148
|
+
* `SelectableTileGroup`, so arrow-key navigation does not cross section
|
|
149
|
+
* boundaries.
|
|
150
|
+
*
|
|
151
|
+
* Sections are detected by the enclosing `<Deposit.Methods>` walker; when at
|
|
152
|
+
* least one `MethodSection` child is present, `Methods` skips its own
|
|
153
|
+
* "Payment Method" label and tile-group wrapper so each section owns its
|
|
154
|
+
* label + group. Flat-list behavior (no sections) is unchanged.
|
|
155
|
+
*/
|
|
156
|
+
interface DepositMethodSectionProps {
|
|
157
|
+
/**
|
|
158
|
+
* Section label rendered above the method group, in the same uppercase /
|
|
159
|
+
* tracking-widest / `text-2xs` treatment the outer `Methods` label uses
|
|
160
|
+
* (e.g. "MOST POPULAR", "OTHER OPTIONS").
|
|
161
|
+
*/
|
|
162
|
+
label: ReactNode;
|
|
163
|
+
/** `Deposit.Method` children rendered inside this section's roving-focus group. */
|
|
164
|
+
children: ReactNode;
|
|
165
|
+
}
|
|
166
|
+
/**
|
|
167
|
+
* Payment rail discriminator. The first-step picker is partitioned by rail,
|
|
168
|
+
* then by method within the active rail. Crypto rail hosts the existing
|
|
169
|
+
* wallet / transfer methods; cash rail will host bank / card / cash-pickup
|
|
170
|
+
* methods once they ship.
|
|
171
|
+
*
|
|
172
|
+
* Lives in the compound layer while it is UI-only. Promotes to
|
|
173
|
+
* `orchestrator/types.ts` the first time the FSM needs to branch on rail
|
|
174
|
+
* (e.g. when a cash method dispatches a different reducer event than
|
|
175
|
+
* `selectMethod`).
|
|
176
|
+
*/
|
|
177
|
+
type DepositRail = "crypto" | "cash";
|
|
178
|
+
/**
|
|
179
|
+
* A single rail tab — the label rendered in the `Deposit.RailPicker` tab
|
|
180
|
+
* strip plus the value that maps to a `Deposit.Rail` panel.
|
|
181
|
+
*/
|
|
182
|
+
interface DepositRailDescriptor {
|
|
183
|
+
/** Discriminator matching a `Deposit.Rail` panel's `value` prop. */
|
|
184
|
+
value: DepositRail;
|
|
185
|
+
/** Tab label. */
|
|
186
|
+
label: ReactNode;
|
|
187
|
+
/**
|
|
188
|
+
* Optional 12×12 glyph rendered inside a 22×22 pill badge in front of
|
|
189
|
+
* the label. The badge surface inverts on the active tab (idle paints
|
|
190
|
+
* `secondary` with `mutedForeground` glyph; active paints `foreground`
|
|
191
|
+
* with `background` glyph) so the icon reads as the heaviest element
|
|
192
|
+
* of the active tab.
|
|
193
|
+
*/
|
|
194
|
+
icon?: ReactNode;
|
|
195
|
+
/** When `true`, the tab renders as `aria-disabled` and isn't activatable. */
|
|
196
|
+
disabled?: boolean;
|
|
197
|
+
}
|
|
198
|
+
/**
|
|
199
|
+
* Props for `<Deposit.RailPicker>` — the segmented switcher above the
|
|
200
|
+
* methods list. Uncontrolled by default via `defaultValue`; pass `value`
|
|
201
|
+
* + `onValueChange` to drive the rail from outside.
|
|
202
|
+
*/
|
|
203
|
+
interface DepositRailPickerProps {
|
|
204
|
+
/** Uncontrolled default. */
|
|
205
|
+
defaultValue?: DepositRail;
|
|
206
|
+
/** Controlled value. When set, `defaultValue` is ignored. */
|
|
207
|
+
value?: DepositRail;
|
|
208
|
+
/** Fired when the user activates a different rail. */
|
|
209
|
+
onValueChange?: (rail: DepositRail) => void;
|
|
210
|
+
/**
|
|
211
|
+
* Rail tabs rendered in the strip. Order in the array determines visual order.
|
|
212
|
+
* The kit ships `crypto` and `cash` today; consumers pick the subset they want
|
|
213
|
+
* to surface based on host capabilities.
|
|
214
|
+
*/
|
|
215
|
+
rails: readonly DepositRailDescriptor[];
|
|
216
|
+
/** Visual variant forwarded to the underlying `Tabs.List`. Defaults to `"default"`. */
|
|
217
|
+
variant?: Tabs.Variant;
|
|
218
|
+
/** `Deposit.Rail` children. One panel per rail value. */
|
|
219
|
+
children?: ReactNode;
|
|
220
|
+
}
|
|
221
|
+
/**
|
|
222
|
+
* Props for `<Deposit.Rail>` — a single rail panel. `value` matches one of
|
|
223
|
+
* the descriptors passed to `<Deposit.RailPicker>`.
|
|
224
|
+
*/
|
|
225
|
+
interface DepositRailProps {
|
|
226
|
+
/** Rail this panel renders for. */
|
|
227
|
+
value: DepositRail;
|
|
228
|
+
children?: ReactNode;
|
|
229
|
+
}
|
|
131
230
|
//#endregion
|
|
132
|
-
export { DepositBodyProps, DepositDialogProps, DepositHeaderProps, DepositMethodInput, DepositMethodOption, DepositMethodProps, DepositMethodsProps, DepositProps };
|
|
231
|
+
export { DepositBodyProps, DepositDialogProps, DepositHeaderProps, DepositMethodInput, DepositMethodOption, DepositMethodProps, DepositMethodSectionProps, DepositMethodsProps, DepositProps, DepositRail, DepositRailDescriptor, DepositRailPickerProps, DepositRailProps };
|
|
@@ -1 +1 @@
|
|
|
1
|
-
"use client";import{resolveChainLogoChain as e}from"../../../../../../shared/utils/logos/resolveLogoSrc.js";import"../../../../../../shared/utils/logos/index.js";import{
|
|
1
|
+
"use client";import{resolveChainLogoChain as e}from"../../../../../../shared/utils/logos/resolveLogoSrc.js";import"../../../../../../shared/utils/logos/index.js";import{Cuer as t}from"../../../../../../shared/cuer/Cuer.js";import"../../../../../../shared/cuer/index.js";import{useTransferCryptoContext as n}from"../context.js";import{TRANSFER_CRYPTO_SLOTS as r}from"../TransferCrypto.slots.js";import{styles as i}from"../TransferCrypto.styles.js";import{useEffect as a,useState as o}from"react";import{jsx as s,jsxs as c}from"react/jsx-runtime";import*as l from"@stylexjs/stylex";function u(){let u=n(`TransferCrypto.QrCode`),d=e({...u.chain.chainId===void 0?{}:{chainId:u.chain.chainId},...u.chain.logoUrl===void 0?{}:{chainLogoUrl:u.chain.logoUrl}}),[f,p]=o(0);a(()=>{p(0)},[d.join(`|`)]);let m=d[f];return s(`div`,{"data-stridge-slot":r.qr,...l.props(i.qrFrame),children:c(t.Root,{value:u.depositAddress,size:160,...l.props(i.qrSvg),children:[s(t.Finder,{}),s(t.Cells,{}),m&&s(t.Arena,{href:m,"aria-label":u.chain.symbol,"data-stridge-slot":r.qrArena,onError:()=>{f<d.length-1&&p(f+1)}},m)]})})}export{u as TransferCryptoQrCode};
|
|
@@ -1 +1 @@
|
|
|
1
|
-
import{createActivityReducers as e}from"../../../shared/orchestrator/createActivityReducers.js";import{isUserRejectionFailure as t}from"../../../shared/orchestrator/userRejection.js";import"../../../shared/orchestrator/index.js";const
|
|
1
|
+
import{createActivityReducers as e}from"../../../shared/orchestrator/createActivityReducers.js";import{isUserRejectionFailure as t}from"../../../shared/orchestrator/userRejection.js";import"../../../shared/orchestrator/index.js";import{assertNever as n}from"../../../shared/utils/assertNever.js";const r={name:`closed`},{reduceFromActivityList:i,reduceFromActivityDetail:a}=e({activityList:e=>({name:`activityList`,ctx:{backTarget:e}}),activityDetail:(e,t,n)=>({name:`activityDetail`,ctx:{settlementId:e,backTarget:t,viaList:n}}),closed:()=>({name:`closed`}),restoreFromBackTarget:e=>p(e)});function o(e,t){switch(e.name){case`closed`:return s(t);case`form`:return c(e,t);case`submitting`:return l(e,t);case`inProgress`:return u(e,t);case`success`:return d(e,t);case`error`:return f(e,t);case`activityList`:return i(e,t);case`activityDetail`:return a(e,t);default:return n(e)}}function s(e){return e.type===`OPEN`?{name:`form`}:{name:`closed`}}function c(e,t){switch(t.type){case`SUBMIT`:return{name:`submitting`,ctx:{input:t.input}};case`CLEAR_NOTICE`:return e.ctx?.notice?{name:`form`}:e;case`OPEN_ACTIVITY`:return{name:`activityList`,ctx:{backTarget:{kind:`form`,...e.ctx?.notice?{notice:e.ctx.notice}:{}}}};case`CLOSE`:return{name:`closed`};default:return e}}function l(e,n){switch(n.type){case`BEGIN_PROCESSING`:return{name:`inProgress`,ctx:{input:e.ctx.input,submittedAt:n.submittedAt,...n.tx?{tx:n.tx}:{}}};case`SET_TX_HASH`:return{name:`inProgress`,ctx:{input:e.ctx.input,submittedAt:n.submittedAt,tx:n.tx}};case`MARK_SUCCEEDED`:return{name:`success`,ctx:{input:e.ctx.input}};case`MARK_FAILED`:return{name:`error`,ctx:{input:e.ctx.input,...n.failure?{failure:n.failure}:{}}};case`SUBMIT_FAILED`:return t(n.failure)?{name:`form`,ctx:{notice:n.failure.reason}}:{name:`error`,ctx:{input:n.input,failure:n.failure}};case`CLOSE`:return{name:`closed`};default:return e}}function u(e,t){switch(t.type){case`SET_TX_HASH`:return{name:`inProgress`,ctx:{...e.ctx,tx:t.tx}};case`BEGIN_PROCESSING`:return{name:`inProgress`,ctx:{input:e.ctx.input,submittedAt:e.ctx.submittedAt,...e.ctx.tx?{tx:e.ctx.tx}:t.tx?{tx:t.tx}:{}}};case`MARK_SUCCEEDED`:return{name:`success`,ctx:{input:e.ctx.input,...e.ctx.tx?{tx:e.ctx.tx}:{}}};case`MARK_FAILED`:return{name:`error`,ctx:{input:e.ctx.input,...e.ctx.tx?{tx:e.ctx.tx}:{},...t.failure?{failure:t.failure}:{}}};case`SETTLEMENT_SUCCEEDED`:return{name:`success`,ctx:{input:e.ctx.input,...e.ctx.tx?{tx:e.ctx.tx}:{}}};case`SETTLEMENT_FAILED`:return{name:`error`,ctx:{input:e.ctx.input,...e.ctx.tx?{tx:e.ctx.tx}:{},...t.failure?{failure:t.failure}:{}}};case`CLOSE`:return{name:`closed`};default:return e}}function d(e,t){switch(t.type){case`RESET`:return{name:`form`};case`CLOSE`:return{name:`closed`};default:return e}}function f(e,t){switch(t.type){case`RESET`:return{name:`form`};case`CLOSE`:return{name:`closed`};default:return e}}function p(e){return e.notice?{name:`form`,ctx:{notice:e.notice}}:{name:`form`}}export{r as initialState,o as reducer};
|
package/dist/i18n/locales/ar.js
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
const e=JSON.parse(`{"--OGth":["نجح الإيداع"],"-I_tc5":["
|
|
1
|
+
const e=JSON.parse(`{"--OGth":["نجح الإيداع"],"-I_tc5":["الحد الأقصى ",["formattedCap"]],"-nuEh_":["الوقت المُقدَّر"],"-tu7Q8":["المزيد عن ",["0"]],"02NghK":["أغلق هذا الحوار وحاول مرة أخرى بعد قليل. إذا استمرت المشكلة، فتحقق من مفتاح البوابة في تكاملك."],"0eg2g7":["جاري تقدير الغاز…"],"0lHlRj":["قيد النقل"],"1zDzn9":["الدفع عبر Google Pay"],"2Eoi_a":["عرض التفاصيل"],"3dqPLT":["تحويل العملة الرقمية"],"3eKjkO":["الحد الأدنى للإيداع ",["formattedMin"]],"3kg1gB":["اكتمل الإيداع"],"3qkDVZ":["عرض التفاصيل"],"3yd3IL":["فشل برنامج تشغيل الإيداع في تحميل إعدادات البوابة."],"5AApJw":["اتصل بمحفظة للمتابعة"],"5joj8M":["تفاصيل المعاملة"],"60ahSE":["معاملة السحب"],"64M0UA":["رمز الأمان غير مكتمل"],"69Gavs":["التفاصيل التقنية"],"6D8qH6":["أرسل العملة المختارة على الشبكة المختارة إلى هذا العنوان. تظهر الأموال في حسابك بمجرد تأكيد الشبكة للتحويل."],"6RDwJM":["العملات"],"6ja7nr":["اضغط للدفع"],"6ws9A3":["Apple Pay"],"6yS5kL":["السحب قيد التنفيذ"],"72c5Qo":["الإجمالي"],"7Bj3x9":["فشل"],"7evBec":["وقت المعالجة: ",["resolvedProcessingTime"]],"88cUW-":["تستلم"],"9JHY2T":["تمت إضافة أموال إيداعك إلى حسابك."],"9XIJb8":["T…"],"9cCjMJ":["إيداع الحد الأقصى من الرصيد"],"< 1 min":["< دقيقة"],"AHyker":["الحد الأقصى ",["0"]],"AO44G_":["عرض الإيصال"],"AOPSKq":["إيداع ",["0"]],"AWtGgd":["احصل على المساعدة"],"AeXO77":["حساب"],"AeZIvT":["ستستلم"],"AikETk":["الحد الأدنى ",["minDeposit"]],"B-4zEC":["تعذر تحميل النشاط. حاول مرة أخرى."],"BhQhbU":["استخدم عنوان المستلم المقترح"],"BoQOH3":["يلزم وجود محفظة لإجراء الإيداع"],"C7cyXd":["تغطي رسوم المعالجة تكلفة معالجة دفعتك عبر طريقة الدفع المختارة."],"CK1KXz":["الأقصى"],"CS69m9":["الدفع بالعملة الرقمية"],"Ck1xL4":["ترسل"],"Cs44l6":["الإيداع قيد التنفيذ"],"D79cZK":["فوري"],"DO0IYK":["تاريخ الانتهاء غير صالح"],"DPfwMq":["تم"],"Dd7jP5":["تواجه مشكلات؟"],"DoS2vD":["إخفاء التفاصيل التقنية"],"ELhVSL":["فشل إرسال الإيداع."],"Ej5HL9":["رُفض التوقيع. حاول مرة أخرى."],"Enslfm":["الوجهة"],"FWbwx6":["Cash deposit unavailable for your account"],"FkAVbF":["جاري الدفع عبر Google Pay"],"G-SK3q":["واجهت الواجهة خطأً غير متوقع وتعذَّر إكمال العرض. حاول مرة أخرى، أو أغلق هذا الحوار وأعد المحاولة من التطبيق."],"GX8GKD":["الأصول"],"GXkBas":["الحد الأقصى ",["formattedLimit"]],"GZPxmc":["أدخل عنوان مستلم صالحاً"],"GcuGHR":["تمت الإضافة إلى ",["captionSuffix"]],"GwkmPx":["تبديل المبلغ المعروض"],"HalPBQ":["الشحن إلى"],"I2Iug_":["ادفع ",["amountFormatted"]," بأمان"],"IDt4jm":[["0","plural",{"zero":["#"," ثانية"],"one":["#"," ثانية"],"two":["#"," ثانية"],"few":["#"," ثوانٍ"],"many":["#"," ثانية"],"other":["#"," ثانية"]}]," متبقية على عرض السعر"],"IRogzB":["تمت إضافة أموال إيداعك إلى ",["brand"],"."],"JYp-ic":["Deposit processing"],"KDw4GX":["حاول مرة أخرى"],"KGoAE6":["تلقائي · ",["value"]],"KTNWsg":["فشل السحب"],"KuqCAK":["~ 2 دقيقة"],"LEbOpR":["مزيد من التفاصيل"],"LSs4cd":["الدفع نقداً"],"Ly6geA":["جاري إعادة احتساب عرض السعر…"],"MZ_nQf":["عنوان المستلم"],"N2DUxS":["رصيد غير كافٍ"],"OLF0i7":["تعذَّر تحميل خيارات الإيداع"],"OSBXx5":["الآن"],"Offl0a":["ستُضاف أموال إيداعك إلى حسابك."],"Oi8TiZ":["عرض التقدم"],"OsyKSt":["سحب"],"P9fBwv":["Stack"],"PiH3UR":["تم النسخ!"],"PknXwq":["ادفع الآن"],"Q12Rrs":["معاملة الإيداع"],"QFwptY":["رسوم المعالجة"],"QU2cIs":["لديك أسئلة؟"],"Qdn2XH":["الشراء عبر Google Pay"],"Rm325-":["سحب ",["amount"],"، ",["date"]],"Rxjdjn":["لم يكتمل الإيداع"],"SMl3YV":["رقم البطاقة غير مكتمل"],"SOVBoe":["نسخ عنوان الإيداع"],"SZRUQ4":["أقصى انزلاق سعري"],"Sjplg3":["عرض في المستكشف"],"SlfejT":["خطأ"],"TG4WOd":["ستُضاف أموال إيداعك إلى ",["brand"],"."],"TMA5Ot":["جاري الدفع عبر Apple Pay"],"TT0aVH":["تم إرسال الطلب"],"Uevt3L":["جاري تقدير العرض"],"UqHbdz":["إغلاق إشعار الإيداع قيد التنفيذ"],"V1fa9u":["عرض المزيد"],"VAZUpd":["فشل الطلب"],"VAxOSg":["تدفع"],"VHOVEJ":["اتصل بالمحفظة"],"WkRH60":["الحد الأدنى ",["0"]],"Wqz0SO":["رصيد منخفض"],"WsByvK":["الدفع عبر Apple Pay"],"XFvFyp":["تم إرسال تفاصيل البطاقة"],"XJOV1Y":["Activity"],"Xzw7uC":["ستظهر إيداعاتك وعمليات السحب هنا."],"YKfMl6":["جاري تحميل إدخال البطاقة الآمن..."],"YruUmm":["تاريخ الانتهاء غير مكتمل"],"Z1WbO6":["الأموال آمنة على شبكة المصدر — تواصل مع الدعم للاسترجاع."],"ZqugiS":["الرصيد: ",["0"]," ",["1"]],"_QZdX-":["تم سحب أموالك بنجاح."],"_girqu":["نجح السحب"],"_kXBrK":["إجمالي الوقت"],"a2WllD":["العملة المستلمة"],"aXFOuf":["لا يوجد نشاط بعد"],"aiEUrg":["إظهار التفاصيل التقنية"],"bAy57M":["الدفع بالبطاقة"],"bGtkfz":["تاريخ الانتهاء"],"bOZXx5":["تحديث الطلب"],"bZnukT":["تكلفة الشبكة"],"c3aao_":["View activity"],"c6Bl9M":["تبديل التفاصيل التقنية"],"cGYrpE":["تطبَّق الشروط"],"cHPbBJ":["تعذَّر على الجسر تمويل معاملة الوجهة (نفد رصيد الغاز)."],"cxR5Qy":["معاملة التسوية"],"e3xU5E":["تم استلام الإيداع"],"eUbBqz":["1 ",["0"]," = ",["1"]],"f-nEg4":["تُدفع رسوم الشبكة لعمَّال التعدين ومدققي البلوكشين لضمان معالجة المعاملة وتأكيدها."],"fKSGnu":["الحد الأدنى للمبلغ المطلوب على هذه الشبكة لتغطية رسوم الشبكة والتوجيه."],"fWsBTs":["حدث خطأ. حاول مرة أخرى."],"flMR3h":["تم سحب أموالك بنجاح."],"g2UNkE":["مشغل بواسطة"],"gfh8CC":["الشبكات"],"hBIHD-":["إيداع ",["amount"],"، ",["date"]],"hKMHs1":["الفرق بين الناتج المتوقع للمسار وسعر السوق الأوسط الأساسي."],"he3ygx":["نسخ"],"hehnjM":["المبلغ"],"i-4Fbp":["فشل الإيداع"],"i-EgW-":["التكلفة التقديرية لبث هذه المعاملة على سلسلة الوجهة."],"iH8pgl":["رجوع"],"iROlQr":["تفاصيل البطاقة"],"jKZO-R":["اكتمل السحب"],"jtKSW-":["حد ",["0"]],"junZX6":["تم استلام الإيداع وجاري المعالجة…"],"kH6wUX":["تأثير السعر"],"kR8ayx":["بالنقر على تأكيد الإيداع، فإنك توافق على <0>الشروط</0>."],"kUFhUv":["فشل السحب."],"kj3M8S":["إيداع"],"kjrq_8":["مزيد من المعلومات"],"kryGs-":["بطاقة"],"lDgVWA":["استلام"],"lOEm_1":["تم تنفيذ الطلب"],"ldK3jJ":["فشل إرسال السحب."],"lxjao1":["مسار السيولة المختار المستخدم لتسوية هذا السحب."],"mF_ucv":["اتصل بمحفظة حتى تتمكن البوابة من توفير عنوان إيداع وتوجيه تحويلك."],"meq3YR":["رقم البطاقة غير صالح"],"mgLWEL":["تراجعت معاملة الوجهة على السلسلة."],"mvYQx_":["تم الاكتشاف"],"njn4bC":["أكِّد المعاملة في محفظتك"],"nr03QI":["أدخل عنوان المستلم"],"nwtY4N":["حدث خطأ"],"o-XJ9D":["تغيير"],"oBNGNc":["تغيَّر الناتج المتوقَّع للمسار أثناء انتظار معاملتك."],"oFmN8a":["إيداع ",["symbol"]],"oW1G8i":["تم إيداع أموالك بنجاح."],"ob8R_m":["حاول مرة أخرى أو تواصل معنا إذا استمرت المشكلة."],"ogD_nm":["إيداع إلى ",["0"]],"olEUh2":["ناجح"],"pCzTTC":["عنوان الإيداع الخاص بك"],"pfAinS":["امسح للدفع"],"q32Nt8":["اكتمل السحب"],"qQ5VJt":["يتعذَّر الوصول إلى البوابة الآن"],"qj0vvX":["تأكيد الإيداع"],"qtoOYG":["بدون حد"],"rT8e1f":["المسار"],"rZdp61":["معاملة الإكمال"],"sSiLKx":["شبكة الاستلام"],"sb9Y58":["محفظة"],"sbwbC0":["طريقة الدفع"],"srsA0x":["رُفض السحب."],"t-aixw":["أكّد في محفظة Google"],"t1k2Bt":["إخفاء التفاصيل"],"tInLgk":["جاري الدفع بالبطاقة"],"uPo3PQ":["عرض أقل"],"vepIdX":["سعر العملة الرقمية"],"vrnnn9":["جاري المعالجة"],"w-2VR9":["جاري السحب…"],"wB8KqP":["امسح بكاميرا iPhone"],"wLmRnI":["رمز الأمان"],"wdxz7K":["المصدر"],"wkskq5":["استخدام الحد الأقصى"],"xDAtGP":["الرسالة"],"xGVfLh":["متابعة"],"xHIEQ5":["رقم البطاقة"],"xOUCt3":["خيارات أخرى"],"y1ypMV":["الأكثر شيوعاً"],"y62Dys":["رسوم الشبكة"],"yH9V_J":["أدخل المبلغ"],"yLEjmm":[["resolvedPriceImpact"],"% price impact"],"yMg5R0":["انتهت صلاحية البطاقة"],"yQE2r9":["جارٍ التحميل"],"y_0uwd":["أمس"],"ybKOj4":["Google Pay"],"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};
|