@kodiak-finance/orderly-ui-transfer 2.8.3 → 2.8.5

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/index.js CHANGED
@@ -21,7 +21,7 @@ function _interopDefault (e) { return e && e.__esModule ? e : { default: e }; }
21
21
 
22
22
  var Ri__default = /*#__PURE__*/_interopDefault(Ri);
23
23
 
24
- var Kn=()=>{let{data:e,error:t,isLoading:n}=orderlyHooks.useQuery("/v1/public/auto_convert_threshold",{errorRetryCount:3,revalidateOnFocus:false});return {ltv_threshold:Ri.useMemo(()=>!e||n?"-":`${new orderlyUtils.Decimal(e.ltv_threshold).mul(100).toNumber()}%`,[]),negative_usdc_threshold:e?.negative_usdc_threshold,isLoading:n,error:t}};var Bi=Ri__default.default.forwardRef((e,t)=>jsxRuntime.jsx("svg",{width:12,height:12,viewBox:"0 0 12 12",fill:"currentColor",xmlns:"http://www.w3.org/2000/svg",focusable:false,ref:t,...e,children:jsxRuntime.jsx("path",{d:"M5.999 1.007a5 5 0 1 0 0 10 5 5 0 0 0 0-10m0 2.5a.5.5 0 1 1 0 1 .5.5 0 0 1 0-1m0 1.5a.5.5 0 0 1 .5.5v2.5a.5.5 0 0 1-1 0v-2.5a.5.5 0 0 1 .5-.5"})})),to=e=>e>=0&&e<50?"oui-text-success":e>=50&&e<80?"oui-text-warning":e>=80?"oui-text-danger":"",Wi=e=>{let{isLoading:t,ltv_threshold:n}=e,{t:o}=orderlyI18n.useTranslation();return jsxRuntime.jsxs(orderlyUi.Box,{className:"oui-w-72 oui-max-w-72",children:[jsxRuntime.jsx(orderlyUi.Text,{size:"2xs",intensity:80,children:o("transfer.LTV.description",{threshold:t?"-":n})})," ",jsxRuntime.jsx("a",{href:"https://orderly.network/docs/introduction/trade-on-orderly/multi-collateral",target:"_blank",rel:"noreferrer",className:"oui-border-b oui-border-dashed oui-border-line-12 oui-text-2xs oui-text-primary",children:o("tradingLeaderboard.learnMore")})]})},wr=e=>{let{t}=orderlyI18n.useTranslation(),{currentLtv:n,nextLTV:o,showDiff:a,ltv_threshold:s,isLoading:i}=e;return jsxRuntime.jsxs(orderlyUi.Flex,{width:"100%",itemAlign:"center",justify:"between",children:[jsxRuntime.jsxs(orderlyUi.Flex,{justify:"start",itemAlign:"center",children:[jsxRuntime.jsx(orderlyUi.Text,{size:"2xs",intensity:36,children:t("transfer.LTV")}),jsxRuntime.jsx(orderlyUi.Tooltip,{className:"oui-p-2",content:jsxRuntime.jsx(Wi,{isLoading:i,ltv_threshold:s}),children:jsxRuntime.jsx(Bi,{className:"oui-ml-[2px] oui-cursor-pointer oui-text-base-contrast-36"})})]}),a?jsxRuntime.jsxs(orderlyUi.Flex,{itemAlign:"center",justify:"between",gap:1,children:[jsxRuntime.jsxs(orderlyUi.Text,{size:"2xs",className:orderlyUi.cn("oui-font-semibold",to(n)),children:[n,"%"]}),"\u2192",jsxRuntime.jsxs(orderlyUi.Text,{size:"2xs",className:orderlyUi.cn("oui-font-semibold",to(o)),children:[o,"%"]})]}):jsxRuntime.jsxs(orderlyUi.Text,{size:"2xs",className:orderlyUi.cn("oui-font-semibold",to(n)),children:[n,"%"]})]})};var ze=e=>{let t=Kn();return jsxRuntime.jsx(wr,{...e,...t})};var no=(o=>(o[o.Deposit=0]="Deposit",o[o.Approve=1]="Approve",o[o.ApproveAndDeposit=2]="ApproveAndDeposit",o))(no||{}),Ct=(n=>(n.Wallet="wallet",n.Account="accountId",n))(Ct||{});var St=e=>{let{disabled:t,loading:n,actionType:o,symbol:a="USDC",onDeposit:s,onApprove:i,onApproveAndDeposit:c,networkId:r}=e,{t:l}=orderlyI18n.useTranslation(),p=Ri.useMemo(()=>({2:{children:`${l("transfer.deposit.approve")} & ${l("common.deposit")}`,onClick:c},0:{children:l("common.deposit"),onClick:s,"data-testid":"oui-testid-deposit-dialog-deposit-btn"}})[o],[i,s,o,a,l]),u={initial:"md",lg:"lg"};return jsxRuntime.jsx(orderlyUi.Box,{className:"oui-w-full lg:oui-w-auto lg:oui-min-w-[184px]",children:jsxRuntime.jsx(orderlyUiConnector.AuthGuard,{status:orderlyTypes.AccountStatusEnum.EnableTrading,networkId:r,buttonProps:{fullWidth:true,size:u},children:jsxRuntime.jsx(orderlyUi.Button,{fullWidth:true,disabled:t,loading:n,size:u,...p})})})};var ae=e=>{let{amount:t,maxQuantity:n,token:o,loading:a}=e,{t:s}=orderlyI18n.useTranslation(),i=o?.display_name||o?.symbol||"",c=o?.precision??o?.decimals??2;return jsxRuntime.jsxs(orderlyUi.Flex,{px:2,children:[t!==void 0&&jsxRuntime.jsxs(orderlyUi.Text,{size:"2xs",intensity:36,children:["$",jsxRuntime.jsx(orderlyUi.Text.numeral,{dp:2,padding:false,rm:orderlyUtils.Decimal.ROUND_DOWN,children:t})]}),jsxRuntime.jsxs(orderlyUi.Flex,{gapX:2,itemAlign:"center",className:"oui-ml-auto",children:[jsxRuntime.jsxs(orderlyUi.Flex,{gapX:1,itemAlign:"center",children:[jsxRuntime.jsx(orderlyUi.Text,{size:"2xs",intensity:36,children:`${s("common.available")}: `}),a?jsxRuntime.jsx(orderlyUi.Spinner,{size:"sm"}):jsxRuntime.jsx(orderlyUi.Text.numeral,{size:"2xs",intensity:36,rm:orderlyUtils.Decimal.ROUND_DOWN,dp:c,padding:false,"data-testid":"oui-testid-withdraw_deposit-dialog-available-value",children:n}),jsxRuntime.jsx(orderlyUi.Text,{size:"2xs",intensity:36,children:` ${i}`})]}),jsxRuntime.jsx(orderlyUi.Text,{size:"2xs",color:"primary",className:"oui-cursor-pointer oui-select-none",onClick:e.onClick,children:s("common.max")})]})]})};var qe=()=>{let{t:e}=orderlyI18n.useTranslation(),{appIcons:t}=orderlyReactApp.useAppConfig(),n=orderlyHooks.useConfig("brokerName"),o=Ri.useMemo(()=>{let{secondary:a}=t||{};if(!a?.img&&a?.component)return null;if(a?.img)return jsxRuntime.jsx("img",{src:a?.img,className:"oui-w-5 oui-h-5"});if(a?.component)return jsxRuntime.jsx(jsxRuntime.Fragment,{children:a.component})},[t]);return jsxRuntime.jsxs(orderlyUi.Flex,{justify:"between",children:[jsxRuntime.jsx(orderlyUi.Text,{size:"sm",intensity:98,children:e("transfer.brokerAccount",{brokerName:n})}),o]})};var $t=e=>jsxRuntime.jsx("svg",{width:"12",height:"12",viewBox:"0 0 12 12",fill:"currentColor",xmlns:"http://www.w3.org/2000/svg",...e,children:jsxRuntime.jsx("path",{d:"M10.997 8.004a.5.5 0 0 0-.14-.36l-1.86-1.843-.703.703.984 1h-7.28a.5.5 0 0 0 0 1h7.28l-.984 1 .703.703 1.86-1.844a.5.5 0 0 0 .14-.36m-.5-4a.5.5 0 0 0-.5-.5H2.716l.984-1-.703-.703-1.859 1.843a.515.515 0 0 0 0 .719l1.86 1.844.702-.703-.984-1h7.281a.5.5 0 0 0 .5-.5"})}),xr=e=>jsxRuntime.jsx("svg",{width:"20",height:"21",viewBox:"0 0 20 21",fill:"currentColor",xmlns:"http://www.w3.org/2000/svg",...e,children:jsxRuntime.jsx("path",{d:"M9.994 5.51a.83.83 0 0 0-.832.833v6.295l-2.498-2.471-1.17 1.17 3.902 3.929a.84.84 0 0 0 .599.244.84.84 0 0 0 .597-.244l3.903-3.928-1.171-1.171-2.498 2.471V6.343a.83.83 0 0 0-.832-.833"})});var Tr=e=>jsxRuntime.jsx("svg",{width:"12",height:"12",viewBox:"0 0 12 12",fill:"currentColor",xmlns:"http://www.w3.org/2000/svg",...e,children:jsxRuntime.jsx("path",{d:"M6.00342 1.49561C4.97642 1.49561 3.99542 1.84011 3.20642 2.46461C2.98992 2.63561 2.95692 2.9511 3.12842 3.1676C3.29992 3.3841 3.61492 3.4171 3.83142 3.2456C4.44492 2.7601 5.20392 2.4956 6.00342 2.4956C7.93642 2.4956 9.50342 4.0626 9.50342 5.9956H8.50342L10.0034 7.9956L11.5034 5.9956H10.5034C10.5034 3.5101 8.48892 1.49561 6.00342 1.49561ZM2.00342 3.9956L0.503418 5.9956H1.50342C1.50342 8.4811 3.51792 10.4956 6.00342 10.4956C7.03092 10.4956 8.01142 10.1516 8.80042 9.52659C9.01692 9.35559 9.04992 9.0401 8.87842 8.8236C8.70692 8.6071 8.39191 8.5741 8.17542 8.7456C7.56142 9.2316 6.80342 9.4956 6.00342 9.4956C4.07042 9.4956 2.50342 7.9286 2.50342 5.9956H3.50342L2.00342 3.9956Z"})}),kr=e=>jsxRuntime.jsx("svg",{width:"20",height:"21",viewBox:"0 0 20 21",fill:"currentColor",xmlns:"http://www.w3.org/2000/svg",...e,children:jsxRuntime.jsx("path",{d:"M12.385 4.565a.6.6 0 0 0-.427.167L9.764 6.944l.837.837 1.19-1.17v8.66a.595.595 0 0 0 1.19 0v-8.66l1.189 1.17.836-.837-2.193-2.212a.6.6 0 0 0-.428-.167m-4.758.595a.595.595 0 0 0-.595.595v8.661l-1.19-1.17-.836.836L7.2 16.294a.61.61 0 0 0 .855 0l2.194-2.212-.837-.836-1.19 1.17V5.755a.595.595 0 0 0-.594-.595"})});var Ue=e=>{let{chains:t,value:n,wrongNetwork:o,loading:a}=e,[s,i]=Ri.useState(false),{t:c}=orderlyI18n.useTranslation(),r=o||t?.length>1,l=o?jsxRuntime.jsx(orderlyUi.Flex,{width:18,height:18,intensity:100,r:"full",justify:"center",itemAlign:"center",children:jsxRuntime.jsx(orderlyUi.Text,{size:"2xs",intensity:80,children:"U"})}):jsxRuntime.jsx(orderlyUi.ChainIcon,{className:"oui-size-[18px]",chainId:n?.id}),p=o?"Unknown":n?.info?.network_infos?.name,u=()=>{if(a)return jsxRuntime.jsx(orderlyUi.Spinner,{size:"sm"});if(r)return jsxRuntime.jsx($t,{className:"oui-text-base-contrast-54"})},m=jsxRuntime.jsxs(orderlyUi.Flex,{intensity:500,className:orderlyUi.cn("oui-rounded-t-xl oui-rounded-b-sm oui-border oui-border-line",r?"oui-cursor-pointer":"oui-cursor-auto"),height:54,px:3,justify:"between",itemAlign:"center",children:[jsxRuntime.jsxs("div",{children:[jsxRuntime.jsx(orderlyUi.Flex,{children:jsxRuntime.jsx(orderlyUi.Text,{size:"2xs",intensity:54,children:c("transfer.network")})}),jsxRuntime.jsxs(orderlyUi.Flex,{gapX:1,children:[l,jsxRuntime.jsx(orderlyUi.Text,{size:"sm",intensity:80,children:p})]})]}),u()]}),b=t.map((h,d)=>{let g=h.chain_id===n?.id;return jsxRuntime.jsxs(orderlyUi.Flex,{px:2,r:"base",justify:"between",className:orderlyUi.cn("oui-deposit-network-select-item","hover:oui-bg-base-5 oui-h-[30px] oui-cursor-pointer",g&&"oui-bg-base-5",d!==0&&"oui-mt-[2px]"),onClick:async()=>{i(false),await e.onValueChange(h);},children:[jsxRuntime.jsxs(orderlyUi.Flex,{gapX:1,itemAlign:"center",children:[jsxRuntime.jsx(orderlyUi.ChainIcon,{className:"oui-size-[18px]",chainId:h.chain_id}),jsxRuntime.jsx(orderlyUi.Text,{size:"2xs",intensity:54,children:h.name})]}),g&&jsxRuntime.jsx(orderlyUi.Box,{width:4,height:4,r:"full",className:"oui-deposit-network-select-active-dot oui-bg-[linear-gradient(270deg,#59B0FE_0%,#26FEFE_100%)]"})]},h.chain_id)});return jsxRuntime.jsxs(orderlyUi.DropdownMenuRoot,{open:r?s:false,onOpenChange:i,children:[jsxRuntime.jsx(orderlyUi.DropdownMenuTrigger,{asChild:true,children:m}),jsxRuntime.jsx(orderlyUi.DropdownMenuPortal,{children:jsxRuntime.jsx(orderlyUi.DropdownMenuContent,{onCloseAutoFocus:h=>h.preventDefault(),align:"start",sideOffset:2,className:orderlyUi.cn("oui-deposit-token-select-dropdown-menu-content","oui-bg-base-8 oui-p-1","oui-w-[var(--radix-dropdown-menu-trigger-width)]","oui-rounded-md oui-select-none"),children:jsxRuntime.jsx(orderlyUi.ScrollArea,{children:jsxRuntime.jsx("div",{className:"oui-max-h-[254px]",children:b})})})})]})};var vr=e=>{let{t}=orderlyI18n.useTranslation(),{value:n,precision:o}=e;return jsxRuntime.jsxs(orderlyUi.Flex,{width:"100%",itemAlign:"center",justify:"between",children:[jsxRuntime.jsx(orderlyUi.Flex,{itemAlign:"center",justify:"start",children:jsxRuntime.jsx(orderlyUi.Text,{size:"2xs",intensity:36,children:t("transfer.deposit.collateralContribution")})}),jsxRuntime.jsxs(orderlyUi.Flex,{itemAlign:"center",justify:"end",gap:1,children:[jsxRuntime.jsx(orderlyUi.Text.numeral,{dp:o,size:"2xs",rm:orderlyUtils.Decimal.ROUND_DOWN,className:orderlyUi.cn("oui-font-semibold"),padding:false,children:n}),jsxRuntime.jsx(orderlyUi.Text,{size:"2xs",intensity:36,className:"oui-select-none",children:"USDC"})]})]})};var ha=Ri__default.default.forwardRef((e,t)=>jsxRuntime.jsx("svg",{width:12,height:12,viewBox:"0 0 12 12",fill:"currentColor",xmlns:"http://www.w3.org/2000/svg",focusable:false,ref:t,...e,children:jsxRuntime.jsx("path",{d:"M5.999 1.007a5 5 0 1 0 0 10 5 5 0 0 0 0-10m0 2.5a.5.5 0 1 1 0 1 .5.5 0 0 1 0-1m0 1.5a.5.5 0 0 1 .5.5v2.5a.5.5 0 0 1-1 0v-2.5a.5.5 0 0 1 .5-.5"})})),wa=()=>{let{t:e}=orderlyI18n.useTranslation();return jsxRuntime.jsxs(orderlyUi.Box,{className:"oui-w-72 oui-max-w-72",children:[jsxRuntime.jsx(orderlyUi.Text,{size:"2xs",intensity:80,children:e("portfolio.overview.column.collateralRatio.explain")})," ",jsxRuntime.jsx("a",{href:"https://orderly.network/docs/introduction/trade-on-orderly/multi-collateral",target:"_blank",rel:"noreferrer",className:"oui-border-b oui-border-dashed oui-border-line-12 oui-text-2xs oui-text-primary",children:e("tradingLeaderboard.learnMore")})]})},Ar=e=>{let{t}=orderlyI18n.useTranslation(),{value:n}=e;return jsxRuntime.jsxs(orderlyUi.Flex,{width:"100%",itemAlign:"center",justify:"between",children:[jsxRuntime.jsxs(orderlyUi.Flex,{justify:"start",itemAlign:"center",children:[jsxRuntime.jsx(orderlyUi.Text,{size:"2xs",intensity:36,children:t("portfolio.overview.column.collateralRatio")}),jsxRuntime.jsx(orderlyUi.Tooltip,{className:"oui-p-2",content:jsxRuntime.jsx(wa,{}),children:jsxRuntime.jsx(ha,{className:"oui-ml-[2px] oui-cursor-pointer oui-text-base-contrast-36"})})]}),jsxRuntime.jsx(orderlyUi.Text.numeral,{dp:2,rm:orderlyUtils.Decimal.ROUND_DOWN,coloring:true,className:"oui-font-semibold",rule:"percentages",children:n})]})};var mo=e=>jsxRuntime.jsx(Ar,{...e});var ue=({icon:e})=>jsxRuntime.jsxs(orderlyUi.Flex,{height:40,gapX:3,children:[jsxRuntime.jsx(orderlyUi.Flex,{height:1,className:"oui-flex-1 oui-bg-base-contrast-12"}),e||jsxRuntime.jsx(xr,{className:"oui-text-primary-light"}),jsxRuntime.jsx(orderlyUi.Flex,{height:1,className:"oui-flex-1 oui-bg-base-contrast-12"})]});var vt=e=>{let{dstGasFee:t,feeQty:n,feeAmount:o,dp:a,nativeSymbol:s}=e,{t:i}=orderlyI18n.useTranslation(),c=()=>{let l=jsxRuntime.jsxs("div",{className:"oui-text-2xs",children:[jsxRuntime.jsxs(orderlyUi.Flex,{gapX:1,children:[jsxRuntime.jsx(orderlyUi.Text,{size:"2xs",intensity:54,children:`${i("transfer.deposit.destinationGasFee")}: `}),jsxRuntime.jsx(orderlyUi.Text.numeral,{intensity:80,dp:a,rm:orderlyUtils.Decimal.ROUND_UP,padding:false,children:n}),jsxRuntime.jsx(orderlyUi.Text,{intensity:54,children:s})]}),jsxRuntime.jsx(orderlyUi.Box,{mt:2,children:jsxRuntime.jsx(orderlyUi.Text,{intensity:36,children:i("transfer.deposit.destinationGasFee.description")})})]});orderlyUi.modal.alert({title:i("common.fee"),message:l});},r=!!t&&t!=="0";return jsxRuntime.jsxs(orderlyUi.Text,{size:"2xs",intensity:36,className:"oui-border-dashed oui-border-b oui-border-line-12 oui-cursor-pointer",onClick:c,children:[`${i("common.fee")} \u2248 `,jsxRuntime.jsxs(orderlyUi.Text,{size:"2xs",intensity:80,children:["$",jsxRuntime.jsx(orderlyUi.Text.numeral,{dp:2,padding:false,rm:orderlyUtils.Decimal.ROUND_UP,children:o})," "]}),r&&jsxRuntime.jsxs("span",{children:["(",jsxRuntime.jsxs(orderlyUi.Text,{intensity:54,children:[jsxRuntime.jsx(orderlyUi.Text.numeral,{dp:a,padding:false,rm:orderlyUtils.Decimal.ROUND_UP,children:n}),s]}),")"]})]})};var Zt=e=>{let{t}=orderlyI18n.useTranslation(),{value:n,symbol:o,precision:a=6}=e;return jsxRuntime.jsxs(orderlyUi.Flex,{width:"100%",itemAlign:"center",justify:"between",children:[jsxRuntime.jsx(orderlyUi.Flex,{itemAlign:"center",justify:"start",children:jsxRuntime.jsx(orderlyUi.Text,{size:"2xs",intensity:36,children:t("transfer.swapDeposit.minimumReceived")})}),jsxRuntime.jsxs(orderlyUi.Flex,{itemAlign:"center",justify:"end",gap:1,children:[jsxRuntime.jsx(orderlyUi.Text.numeral,{dp:a,size:"2xs",className:"oui-select-none",intensity:80,children:n}),jsxRuntime.jsx(orderlyUi.Text,{size:"2xs",className:"oui-select-none",intensity:36,children:o})]})]})};var Fa=1e3;function _r(e,t,n){let[o,a]=Ri.useState(""),s=Ri.useRef(""),[i,c]=Ri.useState(false),r=Ri.useRef(),l=async(p=0)=>{i||typeof t!="function"||!e.address||(r.current&&clearTimeout(r.current),s.current===""&&c(true),r.current=setTimeout(async()=>{try{let u=await t(e.address,e.decimals);a(u),s.current=u,console.log("balance",e.symbol,e.address,u);}catch(u){console.error("get balance error",e.symbol,e.address,u),l(Fa);}finally{s.current!==""&&c(false);}},p));};return Ri.useEffect(()=>(n&&l(0),()=>{r.current&&clearTimeout(r.current);}),[e,n]),{balance:o,loading:i}}var Er=e=>{let{token:t,isActive:n,displayType:o,onTokenChange:a,fetchBalance:s,open:i}=e,{symbol:c,precision:r,insufficientBalance:l}=t,{balance:p,loading:u}=_r(t,s,i),m=typeof s=="function",{t:b}=orderlyI18n.useTranslation();if(o==="vaultBalance"&&l)return jsxRuntime.jsx(orderlyUi.Flex,{itemAlign:"center",justify:"between",px:2,r:"base",className:orderlyUi.cn("group","oui-h-[30px]","oui-text-2xs oui-font-semibold",n&&"oui-bg-base-5",e.index!==0&&"oui-mt-[2px]","oui-cursor-not-allowed"),children:jsxRuntime.jsxs(orderlyUi.Flex,{itemAlign:"center",gapX:1,children:[jsxRuntime.jsx(orderlyUi.TokenIcon,{name:c,className:"oui-size-[16px] oui-opacity-50"}),jsxRuntime.jsx(orderlyUi.Text,{intensity:36,children:t.label}),jsxRuntime.jsx(orderlyUi.Badge,{color:"neutral",size:"xs",children:b("transfer.withdraw.InsufficientVaultBalance")})]})},c);let h=()=>m?u?jsxRuntime.jsx(orderlyUi.Spinner,{size:"sm"}):jsxRuntime.jsx(orderlyUi.Text.numeral,{rule:"price",dp:r??2,rm:orderlyUtils.Decimal.ROUND_DOWN,className:orderlyUi.cn("oui-text-base-contrast-80 group-hover:oui-text-base-contrast-54",n&&"oui-text-base-contrast-54"),children:p}):null;return jsxRuntime.jsxs(orderlyUi.Flex,{justify:"between",px:2,r:"base",className:orderlyUi.cn("group","oui-h-[30px] hover:oui-bg-base-5","oui-text-2xs oui-font-semibold","oui-cursor-pointer",n&&"oui-bg-base-5",e.index!==0&&"oui-mt-[2px]"),onClick:()=>{a?.(t);},children:[jsxRuntime.jsxs(orderlyUi.Flex,{gapX:1,children:[jsxRuntime.jsx(orderlyUi.TokenIcon,{name:c,className:"oui-size-[16px]"}),jsxRuntime.jsx(orderlyUi.Text,{className:orderlyUi.cn("oui-text-base-contrast-54 group-hover:oui-text-base-contrast-80",n&&"oui-text-base-contrast-80"),children:t.label})]}),h()]},c)};var j=e=>{let{token:t,tokens:n=[],classNames:o,label:a,status:s,hintMessage:i,value:c,onValueChange:r,fetchBalance:l,onTokenChange:p,loading:u,placeholder:m,formatters:b,vaultBalanceList:h,displayType:d,...g}=e,{t:T}=orderlyI18n.useTranslation(),f=Ri.useRef(null),[I,y]=Ri.useState(false),[k,C]=Ri.useState(0),A=Ri.useMemo(()=>n.map(_=>{let W=h?.find(Q=>Q.token===_.symbol),z=new orderlyUtils.Decimal(W?.balance??0).lt(c?Number(c):0);return {..._,name:_.display_name||_.symbol,insufficientBalance:z}}),[n,c,h]);Ri.useEffect(()=>{let _=f?.current?.getBoundingClientRect();C(_?.width||0);},[f]);let x=_=>{let W=n.find(z=>z.symbol===_);W&&p?.(W);},S=n.length>1?I:false,w=_=>{let W=_.symbol===t?.symbol;return jsxRuntime.jsx(Er,{token:_,isActive:W,fetchBalance:l,displayType:d,onTokenChange:z=>{p?.(z),y(false);},open:S})},v=jsxRuntime.jsxs(orderlyUi.Box,{children:[jsxRuntime.jsx(orderlyUi.Box,{className:"oui-absolute oui-top-0",children:jsxRuntime.jsx(orderlyUi.Text,{size:"2xs",intensity:36,children:a||T("common.quantity")})}),u&&jsxRuntime.jsx(orderlyUi.Box,{className:"oui-absolute oui-bottom-1",children:jsxRuntime.jsx(orderlyUi.Spinner,{size:"sm"})})]}),B=jsxRuntime.jsx("div",{className:"oui-absolute oui-right-0",children:jsxRuntime.jsx(orderlyUi.Select.tokens,{open:S,onOpenChange:y,disabled:g.disabled,variant:"text",tokens:A,value:t?.display_name||t?.symbol,size:g.size,onValueChange:x,showIcon:true,optionRenderer:w,contentProps:{onCloseAutoFocus:_=>{_.preventDefault(),f.current?.focus();},onClick:_=>{_.preventDefault(),f.current?.focus();},style:{width:k},align:"end",sideOffset:5,className:"oui-border oui-border-line-6"}})}),M=jsxRuntime.jsxs(orderlyUi.Flex,{mt:1,gapX:1,px:1,children:[jsxRuntime.jsx(orderlyUi.Box,{width:4,height:4,r:"full",className:orderlyUi.cn(s==="error"&&"oui-bg-danger-light",s==="warning"&&"oui-bg-warning-light")}),jsxRuntime.jsx(orderlyUi.Text,{size:"2xs",className:orderlyUi.cn(s==="error"&&"oui-text-danger-light",s==="warning"&&"oui-text-warning-light"),children:i})]});return jsxRuntime.jsxs(jsxRuntime.Fragment,{children:[jsxRuntime.jsx(orderlyUi.Input,{ref:f,autoComplete:"off",placeholder:m??(u?"":"0"),prefix:v,suffix:B,value:c,onValueChange:_=>{r?.(_);},formatters:b||[orderlyUi.inputFormatter.numberFormatter,orderlyUi.inputFormatter.dpFormatter(t?.precision??2),orderlyUi.inputFormatter.currencyFormatter],...g,classNames:{...o,root:orderlyUi.cn("oui-relative oui-h-[54px] oui-px-3","oui-rounded-lg oui-border oui-border-line",s==="error"&&"oui-outline-danger-light focus-within:oui-outline-danger-light",s==="warning"&&"oui-outline-warning-light focus-within:oui-outline-warning-light",e.readOnly?"oui-border-none oui-bg-base-6 focus-within:oui-outline-0":"oui-bg-base-5",o?.root),input:orderlyUi.cn("oui-absolute oui-bottom-0",o?.input)}}),i&&M]})};var Co=[.5,1,2],ot=e=>{let{min:t=.2,max:n=10}=e,[o,a]=Ri.useState(),[s,i]=Ri.useState(""),[c,r]=Ri.useState(false),{t:l}=orderlyI18n.useTranslation();Ri.useEffect(()=>{e.value&&!Co.includes(e.value)?i(e.value.toString()):a(e.value);},[e.value,c]);let p=()=>{r(true);},u=()=>{r(false);},m=f=>{a(f),i("");},b=f=>{if(!f||Number(f)===0){i(f);return}let I=new orderlyUtils.Decimal(f);a(void 0),I.lt(t)?i(t.toString()):I.gt(n)?i(n.toString()):i(f);},h=()=>s?new orderlyUtils.Decimal(s)?.toNumber():o,d=()=>{let f=h();return f&&(e.onValueChange?.(f),u(),Co.includes(f)&&i("")),Promise.resolve(true)},g=!h(),T=jsxRuntime.jsxs("div",{className:"oui-text-2xs",children:[jsxRuntime.jsxs(orderlyUi.Flex,{gapX:2,children:[Co.map(f=>jsxRuntime.jsx(Xa,{value:f,isActive:o===f,onClick:()=>{m(f);}},f)),jsxRuntime.jsx(orderlyUi.Input,{suffix:"%",formatters:[orderlyUi.inputFormatter.numberFormatter,orderlyUi.inputFormatter.dpFormatter(2)],value:s,onValueChange:b,classNames:{root:orderlyUi.cn("oui-rounded-md oui-bg-base-6","oui-h-[40px] oui-w-[74px]"),input:"oui-text-base-contrast",additional:"oui-pl-1"}})]}),jsxRuntime.jsx(orderlyUi.Box,{mt:5,children:jsxRuntime.jsx(orderlyUi.Text,{intensity:54,children:l("transfer.slippage.slippageTolerance.description")})})]});return jsxRuntime.jsxs(jsxRuntime.Fragment,{children:[jsxRuntime.jsx(orderlyUi.AlertDialog,{open:c,onOpenChange:r,title:l("transfer.slippage.slippageTolerance"),okLabel:l("common.confirm"),message:T,onOk:d,actions:{primary:{disabled:g}}}),jsxRuntime.jsxs(orderlyUi.Flex,{width:"100%",justify:"between",className:"oui-cursor-pointer oui-select-none",onClick:p,children:[jsxRuntime.jsx(orderlyUi.Text,{intensity:36,size:"2xs",children:l("transfer.slippage")}),jsxRuntime.jsxs(orderlyUi.Flex,{gapX:1,children:[jsxRuntime.jsxs(orderlyUi.Text,{size:"2xs",color:"primaryLight",children:[e.value,"%"]}),jsxRuntime.jsx(orderlyUi.EditIcon,{className:"oui-size-3 oui-text-primary-light"})]})]})]})},Xa=({value:e,isActive:t,onClick:n})=>jsxRuntime.jsx(orderlyUi.Flex,{intensity:600,justify:"center",itemAlign:"center",r:"md",width:74,height:40,className:orderlyUi.cn("oui-cursor-pointer oui-select-none",t&&"oui-bg-primary-light"),onClick:n,children:jsxRuntime.jsxs(orderlyUi.Text,{size:"sm",intensity:80,children:[e,"%"]})});var sn=e=>{let{message:t,needSwap:n,needCrossSwap:o,wrongNetwork:a,networkId:s}=e,{t:i}=orderlyI18n.useTranslation(),c=()=>{orderlyUi.modal.show(orderlyUiChainSelector.ChainSelectorDialogId,{networkId:s});},r=Ri.useMemo(()=>{if(a)return i("connector.wrongNetwork.tooltip");if(t)return t;if(o)return jsxRuntime.jsx(orderlyUi.Text,{children:jsxRuntime.jsx(orderlyI18n.Trans,{i18nKey:"transfer.swapDeposit.crossSwap.notice",components:[jsxRuntime.jsx(orderlyUi.Text,{className:"oui-cursor-pointer",color:"primaryLight",onClick:c},"0")]})});if(n)return i("transfer.swapDeposit.swap.notice")},[t,n,o,a,i]);return r?jsxRuntime.jsx(orderlyUi.Box,{mb:3,className:"oui-text-center oui-text-xs oui-text-warning-darken",children:r}):null};var un=e=>{let{feeQtys:t,feeAmount:n,feeDetails:o,nativeSymbol:a}=e,{t:s}=orderlyI18n.useTranslation(),i=()=>{let r=jsxRuntime.jsx(orderlyUi.Box,{className:"oui-text-2xs",children:o?.map((l,p)=>{let u=p===o?.length-1;return jsxRuntime.jsxs(orderlyUi.Box,{children:[jsxRuntime.jsxs(orderlyUi.Flex,{gapX:1,children:[jsxRuntime.jsxs(orderlyUi.Text,{intensity:54,children:[l.title,":"]}),jsxRuntime.jsx(orderlyUi.Text,{intensity:80,children:l.value}),jsxRuntime.jsx(orderlyUi.Text,{intensity:54,children:l.symbol})]}),jsxRuntime.jsx(orderlyUi.Box,{mt:2,children:jsxRuntime.jsx(orderlyUi.Text,{intensity:36,children:l.description})}),!u&&jsxRuntime.jsx(orderlyUi.Box,{my:3,children:jsxRuntime.jsx(orderlyUi.Divider,{intensity:8})})]},p)})});orderlyUi.modal.alert({title:s("common.fee"),message:r});},c=()=>{let r=t?.length;if(!r)return;let l=t.map((p,u)=>jsxRuntime.jsxs(orderlyUi.Text,{intensity:54,children:[jsxRuntime.jsx(orderlyUi.Text.numeral,{dp:p.dp,padding:false,rm:orderlyUtils.Decimal.ROUND_UP,children:p.value}),` ${p.symbol||a}`]},u));if(r===1)return jsxRuntime.jsxs("span",{children:["(",l,")"]});if(r===2)return jsxRuntime.jsxs("span",{children:["(",l[0]," + ",l[1],")"]})};return jsxRuntime.jsxs(orderlyUi.Text,{size:"xs",intensity:36,className:"oui-cursor-pointer oui-border-b oui-border-dashed oui-border-line-12",onClick:i,children:[`${s("common.fee")} \u2248 `,jsxRuntime.jsxs(orderlyUi.Text,{size:"xs",intensity:80,children:["$",jsxRuntime.jsx(orderlyUi.Text.numeral,{dp:2,padding:false,rm:orderlyUtils.Decimal.ROUND_UP,children:n})," "]}),c()]})};var It=e=>{let{sourceSymbol:t,targetSymbol:n,indexPrice:o,precision:a=6}=e;return jsxRuntime.jsxs(orderlyUi.Flex,{itemAlign:"center",gap:1,className:orderlyUi.cn(e.className,"oui-text-2xs"),children:[jsxRuntime.jsx(orderlyUi.Text,{size:"2xs",intensity:80,children:"1"}),jsxRuntime.jsx(orderlyUi.Text,{size:"2xs",intensity:36,children:t}),"=",jsxRuntime.jsx(orderlyUi.Text.numeral,{size:"2xs",intensity:80,dp:a,padding:false,children:o}),jsxRuntime.jsx(orderlyUi.Text,{size:"2xs",intensity:36,children:n})]})};var pn=e=>jsxRuntime.jsx("svg",{width:"24",height:"25",viewBox:"0 0 24 25",fill:"currentColor",xmlns:"http://www.w3.org/2000/svg",...e,children:jsxRuntime.jsx("path",{d:"M6.012 12.493a1 1 0 0 1 .999-1h7.555L11.6 8.498l1.405-1.405 4.714 4.683c.196.195.293.457.293.719 0 .26-.098.522-.293.717l-4.714 4.683L11.6 16.49l2.966-2.997H7.011a1 1 0 0 1-.999-1"})}),qr=e=>jsxRuntime.jsx("svg",{width:"16",height:"16",viewBox:"0 0 16 16",fill:"currentColor",xmlns:"http://www.w3.org/2000/svg",...e,children:jsxRuntime.jsx("path",{fillRule:"evenodd",clipRule:"evenodd",d:"M4 2.67v10.663h4.667V2.667H4zm6-.003v2.666h1c.218 0 .53.06.806.26.31.223.527.59.527 1.074V12h1V6.667c0-.045 0-.154-.027-.277a.5.5 0 0 0-.11-.252l-1.668-1.667a.667.667 0 0 1 .943-.942l1.667 1.666c.294.294.417.658.472.915.057.264.057.486.057.555V12c0 .484-.217.85-.527 1.074-.277.2-.589.26-.807.26h-1c-.484 0-.85-.217-1.074-.528a1.4 1.4 0 0 1-.26-.806V6.667H10v6.666h.667a.667.667 0 0 1 0 1.334H2a.667.667 0 0 1 0-1.334h.667V2.667c0-.218.06-.53.259-.807.223-.31.59-.527 1.074-.527h4.667c.217 0 .53.06.806.26.31.223.527.59.527 1.074m-4.667 2a.667.667 0 0 0 0 1.333h2a.667.667 0 0 0 0-1.333z"})}),Ur=e=>jsxRuntime.jsx("svg",{width:"13",height:"12",viewBox:"0 0 13 12",fill:"currentColor",xmlns:"http://www.w3.org/2000/svg",...e,children:jsxRuntime.jsx("path",{d:"M8.996 10.496a2 2 0 0 0 2-2v-5a2 2 0 0 0-2-2h-5a2 2 0 0 0-2 2v5a2 2 0 0 0 2 2zm-4-2.5a.5.5 0 0 1-.36-.14.515.515 0 0 1 0-.72l2-2-1.14-1.14h3v3l-1.14-1.14-2 2a.5.5 0 0 1-.36.14"})}),Gr=e=>jsxRuntime.jsxs("svg",{width:"24",height:"24",viewBox:"0 0 24 24",fill:"none",xmlns:"http://www.w3.org/2000/svg",...e,children:[jsxRuntime.jsx("rect",{width:"24",height:"24",rx:"12",fill:"#07080A"}),jsxRuntime.jsx("path",{d:"M5.077 7.385h2.269l1.604 5.28c.106.348.196.73.196.73s.138-.413.28-.742l.885-2.052a1.8 1.8 0 0 1 .66-.782 1.81 1.81 0 0 1 1.974 0c.293.191.523.463.662.782l2.143 4.91v1.095h-1.402c-.235 0-.464-.07-.66-.2a1.17 1.17 0 0 1-.434-.53l-1.303-3.16-1.243 3.152a1.19 1.19 0 0 1-1.105.747h-.848c-.235 0-.465-.075-.654-.214a1.1 1.1 0 0 1-.4-.556z",fill:"#FEFEFE"}),jsxRuntime.jsx("path",{d:"m18.146 10.846 1.066-3.461h-2.396l-1.066 3.461z",fill:"url(#a)"}),jsxRuntime.jsx("path",{d:"m15.371 12-1.208 3.865v.009c-.073.216-.194.529-.514.51a.33.33 0 0 1-.207-.058c.211.186.482.29.763.29h1.428a1.065 1.065 0 0 0 .928-.75L17.769 12z",fill:"url(#b)"}),jsxRuntime.jsxs("defs",{children:[jsxRuntime.jsxs("linearGradient",{id:"a",x1:"14.618",y1:"16.592",x2:"17.597",y2:"7.455",gradientUnits:"userSpaceOnUse",children:[jsxRuntime.jsx("stop",{stopColor:"#59B0FE"}),jsxRuntime.jsx("stop",{offset:"1",stopColor:"#26FEFE"})]}),jsxRuntime.jsxs("linearGradient",{id:"b",x1:"16.192",y1:"16.587",x2:"18.206",y2:"7.458",gradientUnits:"userSpaceOnUse",children:[jsxRuntime.jsx("stop",{stopColor:"#59B0FE"}),jsxRuntime.jsx("stop",{offset:"1",stopColor:"#26FEFE"})]})]})]});var $r=e=>{let{sourceToken:t,targetToken:n,className:o}=e;return t===n?null:jsxRuntime.jsx(orderlyUi.Flex,{width:"100%",itemAlign:"center",justify:"center",className:o,children:jsxRuntime.jsxs(orderlyUi.Flex,{itemAlign:"center",justify:"center",gap:1,children:[jsxRuntime.jsxs(orderlyUi.Flex,{itemAlign:"center",justify:"center",gap:1,children:[jsxRuntime.jsx(orderlyUi.TokenIcon,{className:"oui-size-[18px]",name:t}),jsxRuntime.jsx(orderlyUi.Text,{weight:"semibold",intensity:80,size:"sm",children:t})]}),jsxRuntime.jsx(pn,{className:"oui-size-4"}),jsxRuntime.jsxs(orderlyUi.Flex,{itemAlign:"center",justify:"center",gap:1,children:[jsxRuntime.jsx(orderlyUi.TokenIcon,{className:"oui-size-[18px]",name:n}),jsxRuntime.jsx(orderlyUi.Text,{weight:"semibold",intensity:80,size:"sm",children:n})]})]})})};var Ft=()=>{let{t:e}=orderlyI18n.useTranslation(),{wallet:t,connectedChain:n}=orderlyHooks.useWalletConnector(),{state:o,account:a}=orderlyHooks.useAccount(),s=Ri.useMemo(()=>{let i=o.address;return n?.id&&orderlyTypes.ABSTRACT_CHAIN_ID_MAP.has(parseInt(n?.id))&&(i=a.getAdditionalInfo()?.AGWAddress),i},[t,o,a,n]);return jsxRuntime.jsxs(orderlyUi.Flex,{justify:"between",children:[jsxRuntime.jsx(orderlyUi.Text,{size:"sm",intensity:98,children:e("transfer.web3Wallet.your")}),jsxRuntime.jsxs(orderlyUi.Flex,{gapX:1,children:[jsxRuntime.jsx(orderlyUi.WalletIcon,{size:"xs",name:t?.label??""}),jsxRuntime.jsx(orderlyUi.Text.formatted,{size:"sm",intensity:54,rule:"address",children:s})]})]})};function fn(e){let{srcToken:t,dstToken:n,srcChainId:o,dstChainId:a}=e,[s,i]=Ri.useState(false),[c,r]=Ri.useState(false);return Ri.useEffect(()=>{if(!o||!a||!t||!n)return;let l=o!==a;if(t?.symbol==="USDC"&&!l||t.is_collateral&&t.symbol===n?.symbol){i(false),r(false);return}i(t?.symbol!=="USDC"),l?(r(true),i(true)):r(false);},[t,n,o,a]),{needSwap:s,needCrossSwap:c}}var At=[{inputs:[],stateMutability:"nonpayable",type:"constructor"},{anonymous:false,inputs:[{indexed:false,internalType:"uint8",name:"version",type:"uint8"}],name:"Initialized",type:"event"},{anonymous:false,inputs:[{indexed:true,internalType:"address",name:"previousOwner",type:"address"},{indexed:true,internalType:"address",name:"newOwner",type:"address"}],name:"OwnershipTransferred",type:"event"},{anonymous:false,inputs:[{indexed:false,internalType:"address",name:"account",type:"address"}],name:"Paused",type:"event"},{anonymous:false,inputs:[{indexed:false,internalType:"address",name:"account",type:"address"}],name:"Unpaused",type:"event"},{anonymous:false,inputs:[{indexed:false,internalType:"uint16",name:"srcChainId",type:"uint16"},{indexed:true,internalType:"uint256",name:"nonce",type:"uint256"},{indexed:true,internalType:"address",name:"sender",type:"address"},{indexed:true,internalType:"address",name:"to",type:"address"},{indexed:false,internalType:"address",name:"bridgedToken",type:"address"},{indexed:false,internalType:"uint256",name:"bridgedAmount",type:"uint256"},{indexed:false,internalType:"address",name:"toToken",type:"address"},{indexed:false,internalType:"uint256",name:"minToAmount",type:"uint256"},{indexed:false,internalType:"address",name:"realToToken",type:"address"},{indexed:false,internalType:"uint256",name:"realToAmount",type:"uint256"},{indexed:false,internalType:"uint256",name:"orderlyNativeFees",type:"uint256"},{indexed:false,internalType:"bytes32",name:"accountId",type:"bytes32"},{indexed:false,internalType:"bytes32",name:"brokerHash",type:"bytes32"},{indexed:false,internalType:"bytes32",name:"tokenHash",type:"bytes32"},{indexed:false,internalType:"uint128",name:"tokenAmount",type:"uint128"}],name:"WOOFiDexCrossSwapOnDstChain",type:"event"},{anonymous:false,inputs:[{indexed:false,internalType:"uint16",name:"dstChainId",type:"uint16"},{indexed:true,internalType:"uint256",name:"nonce",type:"uint256"},{indexed:true,internalType:"address",name:"sender",type:"address"},{indexed:true,internalType:"address",name:"to",type:"address"},{indexed:false,internalType:"address",name:"fromToken",type:"address"},{indexed:false,internalType:"uint256",name:"fromAmount",type:"uint256"},{indexed:false,internalType:"address",name:"bridgeToken",type:"address"},{indexed:false,internalType:"uint256",name:"minBridgeAmount",type:"uint256"},{indexed:false,internalType:"uint256",name:"bridgeAmount",type:"uint256"}],name:"WOOFiDexCrossSwapOnSrcChain",type:"event"},{inputs:[],name:"MAX_BRIDGE_SLIPPAGE",outputs:[{internalType:"uint256",name:"",type:"uint256"}],stateMutability:"view",type:"function"},{inputs:[],name:"NATIVE_PLACEHOLDER",outputs:[{internalType:"address",name:"",type:"address"}],stateMutability:"view",type:"function"},{inputs:[{internalType:"address",name:"token",type:"address"}],name:"addDirectBridgeToken",outputs:[],stateMutability:"nonpayable",type:"function"},{inputs:[],name:"allDirectBridgeTokens",outputs:[{internalType:"address[]",name:"",type:"address[]"}],stateMutability:"view",type:"function"},{inputs:[],name:"allDirectBridgeTokensLength",outputs:[{internalType:"uint256",name:"",type:"uint256"}],stateMutability:"view",type:"function"},{inputs:[],name:"bridgeSlippage",outputs:[{internalType:"uint256",name:"",type:"uint256"}],stateMutability:"view",type:"function"},{inputs:[{internalType:"address payable",name:"to",type:"address"},{components:[{internalType:"address",name:"fromToken",type:"address"},{internalType:"uint256",name:"fromAmount",type:"uint256"},{internalType:"address",name:"bridgeToken",type:"address"},{internalType:"uint256",name:"minBridgeAmount",type:"uint256"}],internalType:"struct IWOOFiDexCrossChainRouter.SrcInfos",name:"srcInfos",type:"tuple"},{components:[{internalType:"uint16",name:"chainId",type:"uint16"},{internalType:"address",name:"bridgedToken",type:"address"},{internalType:"address",name:"toToken",type:"address"},{internalType:"uint256",name:"minToAmount",type:"uint256"},{internalType:"uint256",name:"orderlyNativeFees",type:"uint256"}],internalType:"struct IWOOFiDexCrossChainRouter.DstInfos",name:"dstInfos",type:"tuple"},{components:[{internalType:"bytes32",name:"accountId",type:"bytes32"},{internalType:"bytes32",name:"brokerHash",type:"bytes32"},{internalType:"bytes32",name:"tokenHash",type:"bytes32"}],internalType:"struct IWOOFiDexCrossChainRouter.DstVaultDeposit",name:"dstVaultDeposit",type:"tuple"}],name:"crossSwap",outputs:[],stateMutability:"payable",type:"function"},{inputs:[],name:"dstGasForNoSwapCall",outputs:[{internalType:"uint256",name:"",type:"uint256"}],stateMutability:"view",type:"function"},{inputs:[],name:"dstGasForSwapCall",outputs:[{internalType:"uint256",name:"",type:"uint256"}],stateMutability:"view",type:"function"},{inputs:[{internalType:"address",name:"stuckToken",type:"address"}],name:"inCaseTokenGotStuck",outputs:[],stateMutability:"nonpayable",type:"function"},{inputs:[{internalType:"address",name:"_weth",type:"address"},{internalType:"address",name:"_nonceCounter",type:"address"},{internalType:"address",name:"_wooRouter",type:"address"},{internalType:"address",name:"_sgRouter",type:"address"},{internalType:"uint16",name:"_sgChainIdLocal",type:"uint16"}],name:"initialize",outputs:[],stateMutability:"nonpayable",type:"function"},{inputs:[],name:"nonceCounter",outputs:[{internalType:"address",name:"",type:"address"}],stateMutability:"view",type:"function"},{inputs:[],name:"orderlyFeeToggle",outputs:[{internalType:"bool",name:"",type:"bool"}],stateMutability:"view",type:"function"},{inputs:[],name:"owner",outputs:[{internalType:"address",name:"",type:"address"}],stateMutability:"view",type:"function"},{inputs:[],name:"pause",outputs:[],stateMutability:"nonpayable",type:"function"},{inputs:[],name:"paused",outputs:[{internalType:"bool",name:"",type:"bool"}],stateMutability:"view",type:"function"},{inputs:[{internalType:"address",name:"to",type:"address"},{components:[{internalType:"uint16",name:"chainId",type:"uint16"},{internalType:"address",name:"bridgedToken",type:"address"},{internalType:"address",name:"toToken",type:"address"},{internalType:"uint256",name:"minToAmount",type:"uint256"},{internalType:"uint256",name:"orderlyNativeFees",type:"uint256"}],internalType:"struct IWOOFiDexCrossChainRouter.DstInfos",name:"dstInfos",type:"tuple"},{components:[{internalType:"bytes32",name:"accountId",type:"bytes32"},{internalType:"bytes32",name:"brokerHash",type:"bytes32"},{internalType:"bytes32",name:"tokenHash",type:"bytes32"}],internalType:"struct IWOOFiDexCrossChainRouter.DstVaultDeposit",name:"dstVaultDeposit",type:"tuple"}],name:"quoteLayerZeroFee",outputs:[{internalType:"uint256",name:"nativeAmount",type:"uint256"},{internalType:"uint256",name:"zroAmount",type:"uint256"}],stateMutability:"view",type:"function"},{inputs:[{internalType:"address",name:"token",type:"address"}],name:"removeDirectBridgeToken",outputs:[],stateMutability:"nonpayable",type:"function"},{inputs:[],name:"renounceOwnership",outputs:[],stateMutability:"nonpayable",type:"function"},{inputs:[{internalType:"uint256",name:"_bridgeSlippage",type:"uint256"}],name:"setBridgeSlippage",outputs:[],stateMutability:"nonpayable",type:"function"},{inputs:[{internalType:"uint256",name:"_dstGasForNoSwapCall",type:"uint256"}],name:"setDstGasForNoSwapCall",outputs:[],stateMutability:"nonpayable",type:"function"},{inputs:[{internalType:"uint256",name:"_dstGasForSwapCall",type:"uint256"}],name:"setDstGasForSwapCall",outputs:[],stateMutability:"nonpayable",type:"function"},{inputs:[{internalType:"address",name:"_nonceCounter",type:"address"}],name:"setNonceCounter",outputs:[],stateMutability:"nonpayable",type:"function"},{inputs:[{internalType:"bool",name:"_orderlyFeeToggle",type:"bool"}],name:"setOrderlyFeeToggle",outputs:[],stateMutability:"nonpayable",type:"function"},{inputs:[{internalType:"uint16",name:"_sgChainIdLocal",type:"uint16"}],name:"setSgChainIdLocal",outputs:[],stateMutability:"nonpayable",type:"function"},{inputs:[{internalType:"uint16",name:"chainId",type:"uint16"},{internalType:"address",name:"token",type:"address"}],name:"setSgETH",outputs:[],stateMutability:"nonpayable",type:"function"},{inputs:[{internalType:"uint16",name:"chainId",type:"uint16"},{internalType:"address",name:"token",type:"address"},{internalType:"uint256",name:"poolId",type:"uint256"}],name:"setSgPoolId",outputs:[],stateMutability:"nonpayable",type:"function"},{inputs:[{internalType:"address",name:"_sgRouter",type:"address"}],name:"setSgRouter",outputs:[],stateMutability:"nonpayable",type:"function"},{inputs:[{internalType:"uint16",name:"chainId",type:"uint16"},{internalType:"address",name:"woofiDexCrossChainRouter",type:"address"}],name:"setWOOFiDexCrossChainRouter",outputs:[],stateMutability:"nonpayable",type:"function"},{inputs:[{internalType:"uint16",name:"chainId",type:"uint16"},{internalType:"address",name:"token",type:"address"},{internalType:"address",name:"woofiDexVault",type:"address"}],name:"setWOOFiDexVault",outputs:[],stateMutability:"nonpayable",type:"function"},{inputs:[{internalType:"address",name:"_wooRouter",type:"address"}],name:"setWooRouter",outputs:[],stateMutability:"nonpayable",type:"function"},{inputs:[],name:"sgChainIdLocal",outputs:[{internalType:"uint16",name:"",type:"uint16"}],stateMutability:"view",type:"function"},{inputs:[{internalType:"uint16",name:"",type:"uint16"}],name:"sgETHs",outputs:[{internalType:"address",name:"",type:"address"}],stateMutability:"view",type:"function"},{inputs:[{internalType:"uint16",name:"",type:"uint16"},{internalType:"address",name:"",type:"address"}],name:"sgPoolIds",outputs:[{internalType:"uint256",name:"",type:"uint256"}],stateMutability:"view",type:"function"},{inputs:[{internalType:"uint16",name:"srcChainId",type:"uint16"},{internalType:"bytes",name:"",type:"bytes"},{internalType:"uint256",name:"",type:"uint256"},{internalType:"address",name:"bridgedToken",type:"address"},{internalType:"uint256",name:"bridgedAmount",type:"uint256"},{internalType:"bytes",name:"payload",type:"bytes"}],name:"sgReceive",outputs:[],stateMutability:"nonpayable",type:"function"},{inputs:[],name:"sgRouter",outputs:[{internalType:"address",name:"",type:"address"}],stateMutability:"view",type:"function"},{inputs:[{internalType:"address",name:"newOwner",type:"address"}],name:"transferOwnership",outputs:[],stateMutability:"nonpayable",type:"function"},{inputs:[],name:"unpause",outputs:[],stateMutability:"nonpayable",type:"function"},{inputs:[],name:"weth",outputs:[{internalType:"address",name:"",type:"address"}],stateMutability:"view",type:"function"},{inputs:[],name:"wooRouter",outputs:[{internalType:"address",name:"",type:"address"}],stateMutability:"view",type:"function"},{inputs:[{internalType:"uint16",name:"",type:"uint16"}],name:"woofiDexCrossChainRouters",outputs:[{internalType:"address",name:"",type:"address"}],stateMutability:"view",type:"function"},{inputs:[{internalType:"uint16",name:"",type:"uint16"},{internalType:"address",name:"",type:"address"}],name:"woofiDexVaults",outputs:[{internalType:"address",name:"",type:"address"}],stateMutability:"view",type:"function"},{stateMutability:"payable",type:"receive"}],Kr=[{inputs:[],stateMutability:"nonpayable",type:"constructor"},{anonymous:false,inputs:[{indexed:false,internalType:"uint8",name:"version",type:"uint8"}],name:"Initialized",type:"event"},{anonymous:false,inputs:[{indexed:true,internalType:"address",name:"previousOwner",type:"address"},{indexed:true,internalType:"address",name:"newOwner",type:"address"}],name:"OwnershipTransferred",type:"event"},{anonymous:false,inputs:[{indexed:false,internalType:"address",name:"account",type:"address"}],name:"Paused",type:"event"},{anonymous:false,inputs:[{indexed:false,internalType:"address",name:"account",type:"address"}],name:"Unpaused",type:"event"},{anonymous:false,inputs:[{indexed:true,internalType:"address",name:"sender",type:"address"},{indexed:true,internalType:"address",name:"to",type:"address"},{indexed:false,internalType:"address",name:"fromToken",type:"address"},{indexed:false,internalType:"uint256",name:"fromAmount",type:"uint256"},{indexed:false,internalType:"address",name:"toToken",type:"address"},{indexed:false,internalType:"uint256",name:"minToAmount",type:"uint256"},{indexed:false,internalType:"uint256",name:"toAmount",type:"uint256"},{indexed:false,internalType:"uint256",name:"orderlyNativeFees",type:"uint256"},{indexed:false,internalType:"bytes32",name:"accountId",type:"bytes32"},{indexed:false,internalType:"bytes32",name:"brokerHash",type:"bytes32"},{indexed:false,internalType:"bytes32",name:"tokenHash",type:"bytes32"},{indexed:false,internalType:"uint128",name:"tokenAmount",type:"uint128"}],name:"WOOFiDexSwap",type:"event"},{inputs:[],name:"NATIVE_PLACEHOLDER",outputs:[{internalType:"address",name:"",type:"address"}],stateMutability:"view",type:"function"},{inputs:[{internalType:"address",name:"stuckToken",type:"address"}],name:"inCaseTokenGotStuck",outputs:[],stateMutability:"nonpayable",type:"function"},{inputs:[{internalType:"address",name:"_wooRouter",type:"address"}],name:"initialize",outputs:[],stateMutability:"nonpayable",type:"function"},{inputs:[],name:"orderlyFeeToggle",outputs:[{internalType:"bool",name:"",type:"bool"}],stateMutability:"view",type:"function"},{inputs:[],name:"owner",outputs:[{internalType:"address",name:"",type:"address"}],stateMutability:"view",type:"function"},{inputs:[],name:"pause",outputs:[],stateMutability:"nonpayable",type:"function"},{inputs:[],name:"paused",outputs:[{internalType:"bool",name:"",type:"bool"}],stateMutability:"view",type:"function"},{inputs:[],name:"renounceOwnership",outputs:[],stateMutability:"nonpayable",type:"function"},{inputs:[{internalType:"bool",name:"_orderlyFeeToggle",type:"bool"}],name:"setOrderlyFeeToggle",outputs:[],stateMutability:"nonpayable",type:"function"},{inputs:[{internalType:"address",name:"token",type:"address"},{internalType:"address",name:"woofiDexVault",type:"address"}],name:"setWOOFiDexVault",outputs:[],stateMutability:"nonpayable",type:"function"},{inputs:[{internalType:"address",name:"_wooRouter",type:"address"}],name:"setWooRouter",outputs:[],stateMutability:"nonpayable",type:"function"},{inputs:[{internalType:"address payable",name:"to",type:"address"},{components:[{internalType:"address",name:"fromToken",type:"address"},{internalType:"uint256",name:"fromAmount",type:"uint256"},{internalType:"address",name:"toToken",type:"address"},{internalType:"uint256",name:"minToAmount",type:"uint256"},{internalType:"uint256",name:"orderlyNativeFees",type:"uint256"}],internalType:"struct IWOOFiDexDepositor.Infos",name:"infos",type:"tuple"},{components:[{internalType:"bytes32",name:"accountId",type:"bytes32"},{internalType:"bytes32",name:"brokerHash",type:"bytes32"},{internalType:"bytes32",name:"tokenHash",type:"bytes32"}],internalType:"struct IWOOFiDexDepositor.VaultDeposit",name:"vaultDeposit",type:"tuple"}],name:"swap",outputs:[],stateMutability:"payable",type:"function"},{inputs:[{internalType:"address",name:"newOwner",type:"address"}],name:"transferOwnership",outputs:[],stateMutability:"nonpayable",type:"function"},{inputs:[],name:"unpause",outputs:[],stateMutability:"nonpayable",type:"function"},{inputs:[],name:"wooRouter",outputs:[{internalType:"address",name:"",type:"address"}],stateMutability:"view",type:"function"},{inputs:[{internalType:"address",name:"",type:"address"}],name:"woofiDexVaults",outputs:[{internalType:"address",name:"",type:"address"}],stateMutability:"view",type:"function"},{stateMutability:"payable",type:"receive"}],yu="0xEeeeeEeeeEeEeeEeEeEeeEEEeeeeEeeeeeeeEEeE",gn=e=>e===yu,yn="https://fi-api.woo.org";var ns=()=>{let[e,{setTrue:t,setFalse:n}]=orderlyHooks.useBoolean(false),[o,a]=Ri.useState("WAITTING"),s=orderlyHooks.useEventEmitter(),[i,c]=Ri.useState(),[r,l]=Ri.useState(orderlyTypes.WS_WalletStatusEnum.NO),p=Ri.useRef(),u=Ri.useRef(),m=orderlyHooks.useAccountInstance(),b=orderlyHooks.useConfig(),h=b.get("brokerId"),d=b.get("networkId"),g=Ri.useRef(scanClient.createClient(d)).current,T=Ri.useRef();Ri.useEffect(()=>{let k=C=>{let{side:A,transStatus:x,trxId:F}=C;A==="DEPOSIT"&&F===p.current&&l(x);};return s.on("wallet:changed",k),()=>{s.off("wallet:changed",k);}},[p.current]);let f=Ri.useCallback(k=>{u.current&&clearTimeout(u.current),u.current=setTimeout(async()=>{try{let{messages:C}=await g.getMessagesBySrcTxHash(k);if(C.length>0){let{status:A}=C[0];a(A),A==="DELIVERED"?(c(C[0]),p.current=C[0].dstTxHash):A==="FAILED"?c(C[0]):f(k);}else f(k);}catch{f(k);}},1e3);},[]);Ri.useEffect(()=>()=>{T.current&&clearTimeout(T.current);},[]);let I=Ri.useCallback(()=>({accountId:m.accountIdHashStr,brokerHash:orderlyCore.utils.parseBrokerHash(h),tokenHash:orderlyCore.utils.parseTokenHash("USDC")}),[m,h]);return {swap:async k=>{if(!m.walletAdapter)throw new Error("walletAdapter is undefined");if(!m.address)throw new Error("account.address is undefined");if(!k.crossChainRouteAddress)throw new Error("crossChainRouteAddress is undefined");let{address:C,src:A,dst:x,crossChainRouteAddress:F}=k;if(!e){t();try{let S=await m.walletAdapter.call(F,"quoteLayerZeroFee",[m.address,x,I()],{abi:At}),w=await m.walletAdapter.sendTransaction(F,"crossSwap",{from:m.address,to:F,data:[m.address,A,x,I()],value:gn(k.src.fromToken)?BigInt(k.src.fromAmount)+S[0]:S[0]},{abi:At});return n(),f(w.hash),s.emit("deposit:requested"),ramda.pick(["from","to","hash","value"],w)}catch(S){throw console.error("crossSwap error",S),n(),new Error(S.errorCode)}}},loading:e,bridgeStatus:o,status:r,message:i}};var xn=e=>{let{status:t,mode:n,statusUrl:o,brokerName:a}=e,{t:s}=orderlyI18n.useTranslation(),i=Ri.useMemo(()=>{let u=Ru(t),m=Eu(t),b=[{title:s(u==="pending"?"transfer.swapDeposit.bridging":"transfer.swapDeposit.bridge"),description:s("transfer.swapDeposit.bridge.description"),state:u},{title:s(m==="pending"?"transfer.swapDeposit.depositing":"transfer.swapDeposit.deposit"),description:s("transfer.swapDeposit.deposit.description",{brokerName:a}),state:m}];return n===0?b.slice(1,2):b},[n,a,t,s]),c=()=>{e.onComplete?.(t===4);},r=t===3||t===1,l=t===0||t===2,p=i.length>1;return jsxRuntime.jsxs("div",{className:"oui-font-semibold",children:[jsxRuntime.jsxs(orderlyUi.Box,{intensity:600,p:4,r:"lg",children:[jsxRuntime.jsxs(orderlyUi.Flex,{direction:"column",itemAlign:"start",gapY:4,className:"oui-relative",children:[i.map(u=>Ri.createElement(Pu,{...u,key:u.title})),p&&jsxRuntime.jsx("div",{className:orderlyUi.cn("oui-absolute oui-left-[10px] oui-top-[20px] oui-bottom-[38px]","oui-w-[1px] oui-h-[34px]","oui-border-r oui-border-dashed oui-border-r-line-16")})]}),jsxRuntime.jsx(orderlyUi.Box,{my:3,children:jsxRuntime.jsx(orderlyUi.Divider,{intensity:8})}),jsxRuntime.jsxs(orderlyUi.Flex,{gapX:1,justify:"center",itemAlign:"center",className:orderlyUi.cn(o?"oui-text-primary-light":"oui-text-base-contrast-20",o?"oui-cursor-pointer":"oui-cursor-not-allowed"),onClick:()=>{o&&window.open(o);},children:[jsxRuntime.jsx(orderlyUi.Text,{size:"2xs",children:s("transfer.swapDeposit.viewStatus")}),jsxRuntime.jsx(Ur,{})]})]}),jsxRuntime.jsxs(orderlyUi.Flex,{direction:"column",justify:"center",itemAlign:"center",mt:8,gapY:3,children:[r&&jsxRuntime.jsx(orderlyUi.Text,{size:"xs",className:"oui-text-danger-light",children:s("transfer.swapDeposit.depositFailed")}),jsxRuntime.jsx(orderlyUi.Button,{className:"oui-w-full lg:oui-w-[184px]",disabled:l,onClick:c,children:s("common.ok")})]})]})},Pu=({title:e,description:t,state:n})=>jsxRuntime.jsxs(orderlyUi.Flex,{itemAlign:"start",gapX:2,children:[jsxRuntime.jsx(orderlyUi.Flex,{width:20,height:20,justify:"center",children:jsxRuntime.jsx(_u,{state:n})}),jsxRuntime.jsxs(orderlyUi.Flex,{direction:"column",itemAlign:"start",children:[jsxRuntime.jsx(orderlyUi.Text,{size:"sm",className:orderlyUi.cn(n==="pending"||n==="failed"?"oui-text-base-contrast":"oui-text-base-contrast-54"),children:e}),jsxRuntime.jsx(orderlyUi.Text,{size:"2xs",className:orderlyUi.cn(n==="pending"?"oui-text-base-contrast-54":"oui-text-base-contrast-20"),children:t})]})]},e),_u=({state:e})=>e==="pending"?jsxRuntime.jsx(orderlyUi.Spinner,{size:"sm"}):e==="failed"?jsxRuntime.jsx(orderlyUi.CloseCircleFillIcon,{size:20,opacity:1,className:"oui-text-danger-light"}):e==="success"?jsxRuntime.jsx(orderlyUi.CheckedCircleFillIcon,{size:20,opacity:1,className:"oui-text-primary-light"}):jsxRuntime.jsx(orderlyUi.Box,{r:"full",width:10,height:10,intensity:200});function Ru(e){if(e===0)return "pending";if(e===1)return "failed";if(e===4||e===2)return "success"}function Eu(e){if(e===2)return "pending";if(e===3)return "failed";if(e===4)return "success"}var Tn=(e=[])=>{let t=e.reduce((n,o)=>(n[o.symbol]=o,n),{});return t.USDC||t.USDbC||e[0]},$e=e=>(e??2)+3;function rs(e){return /^0x[a-fA-F0-9]{64}$/.test(e)}function kn(e){return e===34?orderlyI18n.i18n.t("transfer.internalTransfer.error.transferInProgress"):e===17?orderlyI18n.i18n.t("transfer.internalTransfer.error.withdrawalInProgress"):e===35?orderlyI18n.i18n.t("transfer.internalTransfer.error.accountIdNotExist"):e===37?orderlyI18n.i18n.t("transfer.internalTransfer.error.transferToSelf"):e===46?orderlyI18n.i18n.t("transfer.internalTransfer.error.transferToSubAccount"):orderlyI18n.i18n.t("transfer.internalTransfer.error.default")}var Cn=e=>{let{info:t,mode:n,nativePrice:o,markPrice:a,src:s,dst:i,nativeToken:c,viewMode:r}=e,{t:l}=orderlyI18n.useTranslation(),p=jsxRuntime.jsxs(orderlyUi.Flex,{justify:"between",children:[jsxRuntime.jsx(is,{primary:s?.token,chainId:s.chain,amount:s?.amount,dp:s?.displayDecimals,symbol:s?.token}),jsxRuntime.jsx(pn,{className:"oui-text-primary-light"}),jsxRuntime.jsx(is,{primary:i?.token,component:jsxRuntime.jsx(Gr,{className:"oui-size-4"}),amount:i?.amount,dp:i?.displayDecimals,symbol:i?.token,reverse:true})]}),u=jsxRuntime.jsx(orderlyUi.Box,{my:5,children:jsxRuntime.jsx(orderlyUi.Divider,{intensity:12})}),m=[{label:l("transfer.deposit.destinationGasFee"),value:jsxRuntime.jsxs(orderlyUi.Flex,{gapX:1,children:[jsxRuntime.jsx(qr,{className:"oui-text-primary-light"}),jsxRuntime.jsx(orderlyUi.Text.numeral,{color:"primaryLight",padding:false,rm:orderlyUtils.Decimal.ROUND_UP,dp:$e(c?.precision),children:t.dstGasFee}),jsxRuntime.jsx(orderlyUi.Text,{color:"primaryLight",children:c?.symbol}),jsxRuntime.jsxs(orderlyUi.Text,{className:"oui-text-primary-light/60",children:["($",jsxRuntime.jsx(orderlyUi.Text.numeral,{color:"primaryLight",padding:false,rm:orderlyUtils.Decimal.ROUND_UP,dp:2,children:new orderlyUtils.Decimal(t.dstGasFee?.toString()).mul(o||0).toString()}),")"]})]})},{label:l("transfer.swapDeposit.swapFee"),value:jsxRuntime.jsxs(jsxRuntime.Fragment,{children:[jsxRuntime.jsx(orderlyUi.Text.numeral,{intensity:80,dp:$e(s?.displayDecimals),rm:orderlyUtils.Decimal.ROUND_UP,padding:false,children:t.swapFee}),` ${s?.token} `,jsxRuntime.jsxs(orderlyUi.Text,{className:"oui-text-[#63666D]",children:["($",jsxRuntime.jsx(orderlyUi.Text.numeral,{padding:false,rm:orderlyUtils.Decimal.ROUND_UP,dp:2,children:new orderlyUtils.Decimal(t.swapFee).mul(a||0).toString()}),")"]})]})},{label:l("transfer.swapDeposit.bridgeFee"),value:n===1&&jsxRuntime.jsxs(jsxRuntime.Fragment,{children:[jsxRuntime.jsx(orderlyUi.Text.numeral,{intensity:80,dp:$e(s?.displayDecimals),rm:orderlyUtils.Decimal.ROUND_UP,padding:false,children:t.bridgeFee}),` ${s?.token} `,jsxRuntime.jsxs(orderlyUi.Text,{className:"oui-text-[#63666D]",children:["($",jsxRuntime.jsx(orderlyUi.Text.numeral,{padding:false,rm:orderlyUtils.Decimal.ROUND_UP,dp:2,children:new orderlyUtils.Decimal(t.bridgeFee).mul(a||0).toString()}),")"]})]})},{label:l("transfer.swapDeposit.minimumReceived"),value:jsxRuntime.jsxs(jsxRuntime.Fragment,{children:[jsxRuntime.jsx(orderlyUi.Text.numeral,{dp:i?.displayDecimals,rm:orderlyUtils.Decimal.ROUND_DOWN,padding:false,children:t.received}),` ${i?.token}`]})},{label:l("common.price"),value:jsxRuntime.jsxs(jsxRuntime.Fragment,{children:[`1 ${s?.token} = `,jsxRuntime.jsx(orderlyUi.Text.numeral,{dp:3,padding:false,children:t.price}),` ${i?.token}`]})},{label:l("transfer.slippage"),value:`${t.slippage}%`}],b=jsxRuntime.jsx(orderlyUi.Flex,{direction:"column",itemAlign:"start",gapY:3,children:m?.map(d=>{if(d.value)return Ri.createElement(qu,{...d,key:d.label})})}),h=jsxRuntime.jsx(orderlyUi.Flex,{justify:"center",mt:8,children:jsxRuntime.jsx(orderlyUi.Button,{className:"oui-w-full lg:oui-w-[184px]",onClick:e.onConfirm,children:l("transfer.swapDeposit.confirmSwap")})});return jsxRuntime.jsxs(orderlyUi.Box,{intensity:800,children:[p,jsxRuntime.jsx(Uu,{time:t.time??0}),u,r==="details"&&jsxRuntime.jsxs(jsxRuntime.Fragment,{children:[b,h]})]})},qu=e=>jsxRuntime.jsxs(orderlyUi.Flex,{gapX:2,justify:"between",width:"100%",children:[jsxRuntime.jsx(orderlyUi.Text,{size:"sm",intensity:54,children:e.label}),jsxRuntime.jsx(orderlyUi.Text,{size:"sm",intensity:98,as:"div",children:e.value})]}),is=e=>jsxRuntime.jsxs(orderlyUi.Flex,{gapX:2,direction:e.reverse?"rowReverse":"row",children:[jsxRuntime.jsx(orderlyUi.Icon.combine,{secondary:{chainId:e.chainId,component:e.component,className:"oui-w-4 oui-h-4 oui-outline-base-8 oui-rounded-full"},children:jsxRuntime.jsx(orderlyUi.TokenIcon,{name:e.primary,size:"md"})}),jsxRuntime.jsxs(orderlyUi.Flex,{direction:"column",itemAlign:e.reverse?"end":"start",children:[jsxRuntime.jsx(orderlyUi.Text.numeral,{intensity:98,size:"lg",dp:e.dp,children:e.amount}),jsxRuntime.jsx(orderlyUi.Text,{intensity:54,size:"xs",children:e.symbol})]})]}),Uu=e=>jsxRuntime.jsx(orderlyUi.Flex,{justify:"center",children:jsxRuntime.jsx(orderlyUi.Flex,{intensity:600,r:"full",gapX:2,justify:"center",py:1,mt:2,width:210,children:jsxRuntime.jsx(orderlyUi.Text,{size:"sm",intensity:54,children:jsxRuntime.jsx(orderlyI18n.Trans,{i18nKey:"transfer.swapDeposit.averageSwapTime",values:{time:e.time},components:[jsxRuntime.jsx(orderlyUi.Text,{color:"primaryLight"},"0")]})})})});var Sn=()=>jsxRuntime.jsx(orderlyUi.Flex,{justify:"center",gapX:1,mt:3,children:jsxRuntime.jsx(orderlyI18n.Trans,{i18nKey:"transfer.swapDeposit.viewFAQs",components:[jsxRuntime.jsx(orderlyUi.Text,{size:"xs",color:"primaryLight",onClick:()=>{window.open("https://learn.woo.org/woofi/faqs/woofi-pro");},className:"oui-cursor-pointer"},"0")]})});var cs=e=>{let{transactionData:t,slippage:n,mode:o,dst:a,src:s,chain:i,nativeToken:c,depositFee:r}=e,{t:l}=orderlyI18n.useTranslation(),[p,u]=Ri.useState(-1),[m,b]=Ri.useState("details"),[h,d]=Ri.useState(),g=orderlyHooks.useEventEmitter(),{swap:T,bridgeStatus:f,message:I,status:y}=ns(),k=Ri.useMemo(()=>({price:t.price,slippage:n,time:i?.est_txn_mins,received:a.amount,bridgeFee:t.fees_from.stargate,swapFee:t.fees_from.woofi,dstGasFee:t.dst_infos.gas_fee}),[t,i?.est_txn_mins,o,a]);Ri.useEffect(()=>{f==="DELIVERED"&&u(2),f==="FAILED"&&u(1),y===orderlyTypes.WS_WalletStatusEnum.COMPLETED&&u(4),y===orderlyTypes.WS_WalletStatusEnum.FAILED&&u(3);},[f,y]);let C=Ri.useCallback(()=>(b("processing"),t?(u(0),T({address:"",crossChainRouteAddress:i?.cross_chain_router,src:{fromToken:t.src_infos.from_token,fromAmount:BigInt(t.src_infos.from_amount),bridgeToken:t.src_infos.bridge_token,minBridgeAmount:BigInt(t.src_infos.min_bridge_amount)},dst:{chainId:t.dst_infos.chain_id,bridgedToken:t.dst_infos.bridged_token,toToken:t.dst_infos.to_token,minToAmount:BigInt(t.dst_infos.min_to_amount),orderlyNativeFees:r}}).then(x=>{d(x),orderlyUi.toast.success(l("transfer.deposit.requested")),g.emit("deposit:requested");}).catch(x=>{u(1),orderlyUi.toast.error(x?.message||"Error");})):Promise.reject("No transaction data")),[t,o,a,s,g]),A=Ri.useMemo(()=>{if(!(p<2||!I))return `https://layerzeroscan.com/tx/${I.srcTxHash}`},[p,I]);return jsxRuntime.jsxs(orderlyUi.Box,{intensity:800,children:[jsxRuntime.jsx(Cn,{viewMode:m,onConfirm:C,info:k,src:e.src,dst:e.dst,mode:o,markPrice:t.mark_prices?.from_token??1,nativePrice:t.mark_prices.native_token,nativeToken:c}),m==="processing"&&jsxRuntime.jsx(xn,{mode:1,status:p,statusUrl:A,onComplete:e.onComplete,brokerName:e.brokerName}),jsxRuntime.jsx(Sn,{})]})};var ds=()=>{let[e,{setTrue:t,setFalse:n}]=orderlyHooks.useBoolean(false),o=orderlyHooks.useAccountInstance(),a=orderlyHooks.useConfig("brokerId"),[s,i]=Ri.useState(orderlyTypes.WS_WalletStatusEnum.NO),c=Ri.useRef(),r=orderlyHooks.useEventEmitter();Ri.useEffect(()=>{let u=m=>{let{side:b,transStatus:h,trxId:d}=m;b==="DEPOSIT"&&d===c.current&&i(h);};return r.on("wallet:changed",u),()=>{r.off("wallet:changed",u);}},[c.current]);let l=Ri.useCallback(()=>({accountId:o.accountIdHashStr,brokerHash:orderlyCore.utils.parseBrokerHash(a),tokenHash:orderlyCore.utils.parseTokenHash("USDC")}),[o,a]);return {swap:Ri.useCallback(async(u,m,b)=>{if(!o.walletAdapter)throw new Error("walletAdapter is undefined");if(!o.address)throw new Error("account.address is undefined");if(e)return;t();let h={from:o.address,to:u,data:[o.address,m,l()],value:gn(m.fromToken)?BigInt(m.fromAmount)+m.orderlyNativeFees:m.orderlyNativeFees};try{let d=await o.walletAdapter.sendTransaction(u,"swap",h,{abi:Kr});return n(),c.current=d.hash,r.emit("deposit:requested"),ramda.pick(["from","to","hash","value"],d)}catch(d){throw new Error(d.errorCode)}},[e,o]),loading:e,status:s}};var ws=e=>{let{transactionData:t,slippage:n,mode:o,dst:a,src:s,chain:i,nativeToken:c,depositFee:r}=e,{t:l}=orderlyI18n.useTranslation(),[p,u]=Ri.useState(-1),[m,b]=Ri.useState("details"),[h,d]=Ri.useState(),g=orderlyHooks.useEventEmitter(),{swap:T,status:f}=ds(),I=Ri.useMemo(()=>({price:t.price,slippage:n,time:i?.est_txn_mins,received:a.amount,dstGasFee:new orderlyUtils.Decimal(r.toString())?.div(new orderlyUtils.Decimal(10).pow(18))?.toString(),swapFee:t.fees_from}),[t,i?.est_txn_mins,o,a,r]);Ri.useEffect(()=>{f===orderlyTypes.WS_WalletStatusEnum.COMPLETED&&u(4),f===orderlyTypes.WS_WalletStatusEnum.FAILED&&u(3);},[f]);let y=Ri.useCallback(()=>(b("processing"),t?!i||!i.depositor?Promise.reject("No chain data"):(u(2),T(i.depositor,{fromToken:t.infos.from_token,fromAmount:t.infos.from_amount,toToken:t.infos.to_token,minToAmount:t.infos.min_to_amount,orderlyNativeFees:r},{dst:a,src:s}).then(C=>{d(C),orderlyUi.toast.success(l("transfer.deposit.requested")),g.emit("deposit:requested");}).catch(C=>{u(3),orderlyUi.toast.error(C?.message||"Error");})):Promise.reject("No transaction data")),[t,o,a,s,g]),k=Ri.useMemo(()=>{if(!(p<2||!h))return `${i?.explorer_base_url}/tx/${h.hash}`},[p,h,i]);return jsxRuntime.jsxs(orderlyUi.Box,{intensity:800,children:[jsxRuntime.jsx(Cn,{viewMode:m,onConfirm:y,info:I,src:e.src,dst:e.dst,mode:o,markPrice:t.mark_prices?.from_token??1,nativePrice:t.mark_prices.native_token,nativeToken:c}),m==="processing"&&jsxRuntime.jsx(xn,{mode:0,status:p,statusUrl:k,onComplete:e.onComplete,brokerName:e.brokerName}),jsxRuntime.jsx(Sn,{})]})};var xs=e=>{let{mode:t}=e;return t===1?jsxRuntime.jsx(cs,{...e}):jsxRuntime.jsx(ws,{...e})};var vn=orderlyUi.modal.create(e=>{let{isMobile:t}=orderlyUi.useScreen(),{t:n}=orderlyI18n.useTranslation(),{visible:o,hide:a,resolve:s,reject:i,onOpenChange:c}=orderlyUi.useModal(),r=u=>{s(u),a();},l=()=>{i(),a();},p={title:n("transfer.swapDeposit.swapDialog.title"),open:o,onOpenChange:c,classNames:{content:"oui-font-semibold"},children:jsxRuntime.jsx(xs,{...e,onComplete:r,onCancel:l})};return t?jsxRuntime.jsx(orderlyUi.SimpleSheet,{...p}):jsxRuntime.jsx(orderlyUi.SimpleDialog,{...p,size:"md"})});var Ts=()=>{let[e,{setTrue:t,setFalse:n}]=orderlyHooks.useBoolean(false),o=orderlyHooks.useConfig("brokerId"),a=orderlyHooks.useAccountInstance(),s=Ri.useCallback(()=>({accountId:a.accountIdHashStr,brokerHash:orderlyCore.utils.parseBrokerHash(o),tokenHash:orderlyCore.utils.parseTokenHash("USDC")}),[a,o]),i=Ri.useCallback(async(r,l)=>{if(!a.walletAdapter)throw new Error("walletAdapter is not ready");let p=await a.walletAdapter.call(r,"quoteLayerZeroFee",[a.address,l,s()],{abi:At});return orderlyCore.utils.formatByUnits(p[0])},[]);return {query:Ri.useCallback(r=>{if(e)return Promise.resolve();t();let l={src_network:r.srcNetwork,dst_network:"arbitrum",src_token:r.srcToken,dst_token:r.dstToken,src_amount:r.amount,slippage:r.slippage||1},p=Object.entries(l).map(([u,m])=>`${u}=${encodeURIComponent(m)}`).join("&");return fetch(`${yn}/woofi_dex/cross_chain_swap?${p}`).then(u=>u.ok?u.json():u.json().then(m=>{throw new Error(m.error.message)})).then(u=>{if(u.status==="ok")return u.data;throw new Error(u.message)}).then(u=>i(r.crossChainRouteAddress,{chainId:u.dst_infos.chain_id,bridgedToken:u.dst_infos.bridged_token,toToken:u.dst_infos.to_token,minToAmount:BigInt(u.dst_infos.min_to_amount),orderlyNativeFees:0n}).then(m=>({...u,dst_infos:{...u.dst_infos,gas_fee:m}})).catch(m=>{console.error("queryDestinationFee error",m);})).finally(()=>n())},[e,a]),loading:e}};var ks=()=>{let e=orderlyHooks.useAccountInstance(),[t,{setTrue:n,setFalse:o}]=orderlyHooks.useBoolean(false);return {query:Ri.useCallback(s=>{if(t)return Promise.resolve();n();let i={network:s.srcNetwork,from_token:s.srcToken,to_token:s.dstToken,from_amount:s.amount,slippage:s.slippage||1},c=Object.entries(i).map(([r,l])=>`${r}=${encodeURIComponent(l)}`).join("&");return fetch(`${yn}/woofi_dex/swap?${c}`).then(r=>r.ok?r.json():r.json().then(l=>{throw new Error(l.error.message)})).then(r=>{if(r.status==="ok")return r.data;throw new Error(r.message)}).finally(()=>o())},[e]),loading:t}};function In(e){let{quantity:t,dst:n,queryParams:o,needSwap:a,needCrossSwap:s}=e,{t:i}=orderlyI18n.useTranslation(),{query:c}=ks(),{query:r}=Ts(),l=Ri.useRef(o);l.current=o;let[p,u]=Ri.useState(""),[m,b]=Ri.useState(""),[h,{setTrue:d,setFalse:g}]=orderlyHooks.useBoolean(false),[T,f]=Ri.useState({price:0,markPrices:{from_token:0,native_token:0},fee:""}),I=Ri.useCallback(()=>s?r(l.current):a?c(l.current):Promise.reject("no need to enquiry"),[a,s]),y=x=>{if(x.mark_prices){let F=s?x.dst_infos.gas_fee:"0",S=s?x.fees_from.woofi:x.fees_from,w=s?x.fees_from.stargate:void 0,v=s?x.fees_from.total:x.fees_from;f({price:x.price,markPrices:x.mark_prices,dstGasFee:F,swapFee:S,bridgeFee:w,fee:v});}if(x.route_infos){let F=s?x.route_infos.dst.amounts[1]:x.route_infos.amounts[1];u(new orderlyUtils.Decimal(F).div(Math.pow(10,n.decimals)).toString());}return b(""),x},k=x=>{f({fee:"0",markPrices:{from_token:0,native_token:0},price:0,swapFee:"0",bridgeFee:"0",dstGasFee:"0",...x}),u("");},C=x=>{x.message==="contract call failed"?(b(i("transfer.swapDeposit.notEnoughLiquidity")),k()):(b(""),x?.message&&orderlyUi.toast.error(x.message));},A=orderlyHooks.useDebouncedCallback(()=>(d(),I().then(y,C).finally(()=>{g();})),300);return Ri.useEffect(()=>{if(!a&&!s){k({price:1}),u(t);return}let x=Number(t);if(isNaN(x)||x<=0){k();return}A();},[a,s,t]),{enquiry:I,querying:h,warningMessage:m,transactionInfo:T,amount:p,cleanTransactionInfo:k}}function Fn(e){let{nativeToken:t,isNativeToken:n,src:o,depositFee:a=0,transactionInfo:s,needSwap:i,needCrossSwap:c}=e,r=t?.symbol,l=o?.symbol,{fee:p="0",swapFee:u="0",bridgeFee:m="0",dstGasFee:b="0",markPrices:h}=s,{from_token:d,native_token:g}=h,{data:T}=orderlyHooks.useIndexPrice(`SPOT_${r}_USDC`),{t:f}=orderlyI18n.useTranslation();return {...Ri.useMemo(()=>{let y="",k=[],C=$e(t?.precision),A=$e(o?.precision),x=c?b:new orderlyUtils.Decimal(a.toString()).div(new orderlyUtils.Decimal(10).pow(18)).toString();if(!i&&!c&&(k=[{value:x,dp:C}],y=new orderlyUtils.Decimal(x).mul(T||0).toString()),i||c)if(n){let S=new orderlyUtils.Decimal(x).plus(p);k=[{value:S.toString(),dp:C}],y=S.mul(g??1).toString();}else k=[{value:x,dp:C,symbol:r},{value:p,dp:A,symbol:l}],y=new orderlyUtils.Decimal(x).mul(g??1).plus(new orderlyUtils.Decimal(p).mul(d??1)).toString();k=k.filter(S=>!!S.value&&Number(S.value)!==0);let F=[{title:f("transfer.deposit.destinationGasFee"),description:f("transfer.deposit.destinationGasFee.description"),value:x,dp:C,symbol:r},{title:f("transfer.swapDeposit.swapFee"),description:f("transfer.swapDeposit.swapFee.description"),value:u,dp:A,symbol:l},{title:f("transfer.swapDeposit.bridgeFee"),description:f("transfer.swapDeposit.bridgeFee.description"),value:m,dp:A,symbol:l}].filter((S,w)=>w===0||!!S.value&&Number(S.value)!==0).map(S=>{let w=new orderlyUtils.Decimal(S.value||0).todp(S.dp).toNumber();return {...S,value:orderlyUtils.toNonExponential(w)}});return {feeAmount:y,feeQtys:k,feeDetails:F}},[a,T,r,l,s,i,c]),nativeSymbol:r}}var ql="orderly_swap_deposit_slippage",Is=e=>{let{srcToken:t,currentChain:n,dst:o,quantity:a,isNativeToken:s,depositFee:i,setQuantity:c,needSwap:r,needCrossSwap:l}=e,[p,u]=orderlyHooks.useLocalStorage(ql,1),b=orderlyHooks.useConfig().get("brokerName")||"",{enquiry:h,transactionInfo:d,amount:g,querying:T,warningMessage:f,cleanTransactionInfo:I}=In({quantity:a,dst:o,queryParams:{network:o.network,srcNetwork:n?.info?.network_infos?.shortName,srcToken:t?.address,dstToken:o.address,crossChainRouteAddress:n?.info?.network_infos?.cross_chain_router,amount:new orderlyUtils.Decimal(a||0).mul(10**(t?.decimals||0)).toString(),slippage:p},needSwap:r,needCrossSwap:l}),y=Ri.useCallback(()=>{c(""),I();},[c]),k=Ri.useCallback(async()=>h().then(S=>{let w=l?S.route_infos?.dst.amounts[1]:S.route_infos?.amounts[1],v={mode:l?1:0,src:{chain:n?.id,token:t.symbol,displayDecimals:t?.precision,amount:a,decimals:t.decimals},dst:{chain:o.chainId,token:o.symbol,displayDecimals:2,amount:new orderlyUtils.Decimal(w).div(Math.pow(10,o.decimals)).toString(),decimals:o.decimals},chain:n?.info?.network_infos,nativeToken:n?.info?.nativeToken,depositFee:i,transactionData:S,slippage:p,brokerName:b};return orderlyUi.modal.show(vn,v)}).then(S=>{S&&y();}).catch(S=>{}),[a,l,o,n,p,i]),C=Ri.useMemo(()=>l||r?d.price:1,[d]),A=Ri.useMemo(()=>l||r?s?d.markPrices.native_token:d.markPrices.from_token:1,[r,l,s,d]),x=r||l?g:a,F=Fn({nativeToken:n?.info?.nativeToken,isNativeToken:s,src:t,depositFee:i,transactionInfo:d,needSwap:r,needCrossSwap:l});return {cleanTransactionInfo:I,onSwapDeposit:k,swapPrice:C,markPrice:A,swapQuantity:x,swapFee:F,swapRevalidating:T,warningMessage:f,needSwap:r,needCrossSwap:l,slippage:p,onSlippageChange:u}};function Dt(e){let{isNativeToken:t,allowance:n,quantity:o,maxQuantity:a}=e;return Ri.useMemo(()=>{let i=t?Number.MAX_VALUE:Number(n);if(i<=0)return 2;let c=Number(o),r=Number(a);return i<c&&c<=r?2:0},[t,n,o,a])}function Pt(){let{t:e}=orderlyI18n.useTranslation(),t=orderlyHooks.useConfig("networkId"),[n]=orderlyHooks.useLocalStorage("orderly_link_device",{}),{connectedChain:o,settingChain:a,setChain:s}=orderlyHooks.useWalletConnector(),[i,{findByChainId:c}]=orderlyHooks.useChains(t,{pick:"network_infos",filter:p=>p.network_infos?.bridge_enable||p.network_infos?.bridgeless}),r=Ri.useMemo(()=>{let p=o?orderlyUtils.praseChainIdToNumber(o.id):parseInt(n?.chainId);if(!p)return null;let u=c(p);return {...o,id:p,info:u}},[c,o,n]),l=Ri.useCallback(async p=>{let u=c(p.chain_id);if(o)return !u||u.network_infos?.chain_id===r?.id?Promise.resolve():s({chainId:orderlyUtils.int2hex(Number(u.network_infos?.chain_id))}).then(m=>{m?orderlyUi.toast.success(e("connector.networkSwitched")):orderlyUi.toast.error(e("connector.switchChain.failed"));}).catch(m=>{m&&m.message&&orderlyUi.toast.error(`${e("connector.switchChain.failed")}: ${m.message}`);})},[r,s,c]);return {chains:i,currentChain:r,settingChain:a,onChainChange:l}}function Rt(e){let{quantity:t,allowance:n,approve:o,deposit:a,enableCustomDeposit:s,customDeposit:i,onSuccess:c}=e,[r,l]=Ri.useState(false),p=orderlyHooks.useEventEmitter(),{t:u}=orderlyI18n.useTranslation(),m=Ri.useCallback(async()=>{try{await a(),orderlyUi.toast.success(u("transfer.deposit.requested")),p.emit("deposit:requested"),c?.();}catch(g){console.error("deposit error",g),orderlyUi.toast.error(g.message||u("transfer.deposit.failed"));}},[a,c,u]),b=Ri.useCallback(async()=>{let g=Number(t);if(isNaN(g)||g<=0){orderlyUi.toast.error(u("transfer.quantity.invalid"));return}if(r)return;l(true),await(s?i:m)?.()?.finally(()=>{l(false);});},[t,r,m,s,i,u]),h=Ri.useCallback(async()=>{if(!r){l(true);try{await o(t),orderlyUi.toast.success(u("transfer.deposit.approve.success"));}catch(g){throw console.error("approve error",g),orderlyUi.toast.error(g.message||g?.errorCode||u("transfer.deposit.approve.failed")),g}finally{l(false);}}},[o,r,t,n,u]),d=Ri.useCallback(async()=>{if(!r){l(true);try{await h(),await b();}catch(g){console.error("approve and deposit error",g);}finally{l(false);}}},[r,h,b]);return {submitting:r,onApprove:h,onDeposit:b,onApproveAndDeposit:d}}function Et(e){let{quantity:t,maxQuantity:n}=e,{t:o}=orderlyI18n.useTranslation(),[a,s]=Ri.useState("default"),[i,c]=Ri.useState();return Ri.useEffect(()=>{if(!t){s("default"),c("");return}new orderlyUtils.Decimal(t).gt(n)?(s("error"),c(o("transfer.insufficientBalance"))):(s("default"),c(""));},[t,n]),{inputStatus:a,hintMessage:i}}var Dn=(e,t=()=>true)=>{let[n,o]=Ri.useState(),[a,s]=Ri.useState(),[i,c]=Ri.useState([]),[r,l]=Ri.useState([]),p=orderlyHooks.useConfig("networkId"),u=Ri.useCallback(m=>{if(m&&m?.token_infos?.length>0){let b=m.token_infos?.filter(t);b?.length&&b.sort((d,g)=>d.symbol==="USDC"?-1:g.symbol==="USDC"?1:0);let h=Tn(b);if(!h)return;o(h),s(h),c(b),l([h]);}},[]);return Ri.useEffect(()=>{u(e?.info);},[e,u]),Ri.useEffect(()=>{if(!n||!i.length)return;if(n.symbol==="USDC"){s(n),l([n]);return}let m=i.find(b=>b.symbol==="USDC");if(n.is_collateral){p==="mainnet"&&n.swap_enable?(s(n),l([n,m])):(s(n),l([n]));return}s(m),l([m]);},[p,n,i]),{sourceToken:n,targetToken:a,sourceTokens:i,targetTokens:r,onSourceTokenChange:o,onTargetTokenChange:s}};var {collateralRatio:bc,collateralContribution:xc,calcMinimumReceived:Tc}=orderlyPerp.account,Pn=3,Oo=e=>{let{wrongNetwork:t}=orderlyReactApp.useAppContext(),{t:n}=orderlyI18n.useTranslation(),o=orderlyHooks.useConfig("networkId"),{chains:a,currentChain:s,settingChain:i,onChainChange:c}=Pt(),{sourceToken:r,targetToken:l,sourceTokens:p,targetTokens:u,onSourceTokenChange:m,onTargetTokenChange:b}=Dn(s),h=Ri.useMemo(()=>p?.find(yr=>yr.symbol==="USDC"),[p]),{dst:d,balance:g,allowance:T,depositFeeRevalidating:f,depositFee:I,quantity:y,setQuantity:k,approve:C,deposit:A,isNativeToken:x,balanceRevalidating:F,fetchBalance:S}=orderlyHooks.useDeposit({address:r?.address,decimals:r?.decimals,srcChainId:s?.id,srcToken:r?.symbol,dstToken:l?.symbol,crossChainRouteAddress:s?.info?.network_infos?.cross_chain_router,depositorAddress:s?.info?.network_infos?.depositor}),w=Ri.useMemo(()=>new orderlyUtils.Decimal(g||0).todp(r?.precision??2,orderlyUtils.Decimal.ROUND_DOWN).toString(),[g,r?.precision]),{inputStatus:v,hintMessage:B}=Et({quantity:y,maxQuantity:w}),{needSwap:M,needCrossSwap:D}=fn({srcToken:r,dstToken:l,srcChainId:s?.id,dstChainId:d?.chainId}),{cleanTransactionInfo:_,onSwapDeposit:W,swapRevalidating:z,swapPrice:Q,markPrice:te,swapQuantity:P,swapFee:Z,warningMessage:ce,slippage:se,onSlippageChange:ge}=Is({srcToken:r,currentChain:s,dst:d,quantity:y,isNativeToken:x,depositFee:I,setQuantity:k,needSwap:M,needCrossSwap:D}),ie=Ri.useCallback(()=>{k(""),_();},[k]),ye=Ri.useCallback(()=>{ie(),e.close?.();},[ie,e.close]),{submitting:he,onApprove:K,onDeposit:Ne,onApproveAndDeposit:we}=Rt({quantity:y,allowance:T,approve:C,deposit:A,enableCustomDeposit:M||D,customDeposit:W,onSuccess:ye}),me=Ri.useMemo(()=>r?.symbol==="USDC"||r?.symbol!==l?.symbol||!r?.is_collateral||!y||isNaN(Number(y))?"":new orderlyUtils.Decimal(y).gt(r?.user_max_qty)?n("transfer.deposit.userMaxQty.error",{maxQty:r?.user_max_qty,token:r?.symbol}):"",[r,l,y,n]),R=he||f,O=!y||Number(y)===0||!r||v==="error"||f||z||!!me,U=Ri.useMemo(()=>new orderlyUtils.Decimal(y||0).mul(1).toNumber(),[y]),$=Dt({isNativeToken:x,allowance:T,quantity:y,maxQuantity:w}),De=kc({nativeToken:s?.info?.nativeToken,depositFee:I}),{collateralRatio:Tt,collateralContributionQuantity:Hn,currentLTV:$n,nextLTV:Xn,indexPrice:jn}=Cc({sourceToken:r,targetToken:l,qty:y}),{ltv_threshold:Yn,negative_usdc_threshold:N,isLoading:X}=Sc();Ri.useEffect(()=>{ie();},[r,s?.id]);let Le=Ri.useMemo(()=>{if(x&&w===y)return n("transfer.deposit.gasFee.error",{token:r?.symbol})},[w,y,r?.symbol,n]),Zn=ce||me||Le,Ai=Ri.useMemo(()=>M?P&&new orderlyUtils.Decimal(P)?.todp(Pn,orderlyUtils.Decimal.ROUND_DOWN).toString():y,[M,P,y]),Ni=Ri.useMemo(()=>P?Tc({amount:Number(P),slippage:se}):"-",[P,se]);return {sourceToken:r,targetToken:l,sourceTokens:p,targetTokens:u,onSourceTokenChange:m,onTargetTokenChange:b,amount:U,isNativeToken:x,quantity:y,collateralContributionQuantity:Hn,maxQuantity:w,indexPrice:jn,onQuantityChange:k,hintMessage:B,inputStatus:v,chains:a,currentChain:s,settingChain:i,onChainChange:c,actionType:$,onDeposit:Ne,onApprove:K,onApproveAndDeposit:we,fetchBalance:S,dst:d,wrongNetwork:t,balanceRevalidating:F,loading:R,disabled:O,networkId:o,fee:De,collateralRatio:Tt,currentLTV:$n,nextLTV:Xn,ltv_threshold:Yn,negative_usdc_threshold:N,isConvertThresholdLoading:X,slippage:se,onSlippageChange:ge,minimumReceived:Ni,usdcToken:h,needSwap:M,needCrossSwap:D,swapPrice:Q,markPrice:te,swapFee:Z,warningMessage:Zn,targetQuantity:Ai,targetQuantityLoading:z}};function kc(e){let{nativeToken:t,depositFee:n=0}=e,{account:o}=orderlyHooks.useAccount(),a=t?.symbol,s=orderlyHooks.useTokenInfo(a),{data:i}=orderlyHooks.useIndexPrice(`SPOT_${a}_USDC`);return {...Ri.useMemo(()=>{let r=new orderlyUtils.Decimal(n.toString()).div(new orderlyUtils.Decimal(10).pow(o.walletAdapter?.chainNamespace===orderlyTypes.ChainNamespace.solana?9:18)).toString(),l=new orderlyUtils.Decimal(r).mul(i||0).toString();return {dstGasFee:r,feeQty:r,feeAmount:l,dp:s?.decimals||8}},[n,i]),nativeSymbol:a}}var Cc=e=>{let{sourceToken:t,targetToken:n}=e,o=Number(e.qty),{data:a}=orderlyHooks.useIndexPricesStream(),s=Ri.useMemo(()=>{if(t?.symbol==="USDC")return 1;let p=`PERP_${t?.symbol}_USDC`;return a[p]??0},[t?.symbol,a]),i=Ri.useMemo(()=>bc({baseWeight:n?.base_weight??0,discountFactor:n?.discount_factor??0,collateralQty:o,collateralCap:t?.user_max_qty??o,indexPrice:s}),[n,o,t?.user_max_qty,s]),c=xc({collateralQty:o,collateralCap:t?.user_max_qty??o,collateralRatio:i.toNumber(),indexPrice:s}),r=orderlyHooks.useComputedLTV(),l=orderlyHooks.useComputedLTV({input:o,token:t?.symbol});return {collateralRatio:i.toNumber(),collateralContributionQuantity:c,currentLTV:r,nextLTV:l,indexPrice:s}},Sc=()=>{let{data:e,error:t,isLoading:n}=orderlyHooks.useQuery("/v1/public/auto_convert_threshold",{errorRetryCount:3});return {ltv_threshold:e?.ltv_threshold,negative_usdc_threshold:e?.negative_usdc_threshold,isLoading:n,error:t}};var Vo=e=>{let{sourceToken:t,targetToken:n,sourceTokens:o,targetTokens:a,onSourceTokenChange:s,onTargetTokenChange:i,amount:c,quantity:r,collateralContributionQuantity:l,maxQuantity:p,onQuantityChange:u,hintMessage:m,inputStatus:b,chains:h,currentChain:d,settingChain:g,onChainChange:T,actionType:f,onDeposit:I,onApprove:y,onApproveAndDeposit:k,fetchBalance:C,wrongNetwork:A,balanceRevalidating:x,loading:F,disabled:S,networkId:w,fee:v,collateralRatio:B,currentLTV:M,nextLTV:D,slippage:_,onSlippageChange:W,minimumReceived:z,needSwap:Q,needCrossSwap:te,swapPrice:P,swapFee:Z,warningMessage:ce,usdcToken:se,targetQuantity:ge,targetQuantityLoading:ie}=e,{t:ye}=orderlyI18n.useTranslation(),he=()=>Q||te?jsxRuntime.jsxs(orderlyUi.Flex,{direction:"column",itemAlign:"start",mt:1,gapY:1,children:[jsxRuntime.jsxs(orderlyUi.Flex,{width:"100%",itemAlign:"center",justify:"between",children:[jsxRuntime.jsx(orderlyUi.Text,{size:"2xs",intensity:36,children:ye("transfer.deposit.convertRate")}),jsxRuntime.jsx(It,{sourceSymbol:t?.display_name||t?.symbol,targetSymbol:n?.display_name||n?.symbol,precision:Pn,indexPrice:P})]}),jsxRuntime.jsx(ot,{value:_,onValueChange:W}),jsxRuntime.jsx(Zt,{value:z,symbol:n?.symbol??"",precision:Pn}),jsxRuntime.jsx(un,{...Z})]}):jsxRuntime.jsxs(orderlyUi.Flex,{direction:"column",itemAlign:"start",mt:2,gap:1,children:[jsxRuntime.jsx(mo,{value:B}),jsxRuntime.jsx(vr,{precision:se?.precision??6,value:l}),jsxRuntime.jsx(ze,{showDiff:typeof r<"u"&&Number(r)>0,currentLtv:M,nextLTV:D}),jsxRuntime.jsx(vt,{...v})]});return jsxRuntime.jsxs(orderlyUi.Box,{id:"oui-deposit-form",className:orderlyUi.textVariants({weight:"semibold"}),children:[jsxRuntime.jsxs(orderlyUi.Box,{className:"oui-mb-6 lg:oui-mb-8",children:[jsxRuntime.jsx(Ft,{}),jsxRuntime.jsxs(orderlyUi.Box,{mt:3,mb:1,children:[jsxRuntime.jsx(Ue,{chains:h,value:d,onValueChange:T,wrongNetwork:A,loading:g}),jsxRuntime.jsx(j,{classNames:{root:"oui-mt-[2px] oui-rounded-t-sm oui-rounded-b-xl"},value:r,onValueChange:u,token:t,tokens:o,onTokenChange:s,status:b,hintMessage:m,fetchBalance:C,"data-testId":"oui-testid-deposit-dialog-quantity-input"})]}),jsxRuntime.jsx(ae,{token:t,amount:c,maxQuantity:p,loading:x,onClick:()=>{u(p);}}),jsxRuntime.jsx(ue,{}),jsxRuntime.jsx(qe,{}),jsxRuntime.jsx(j,{readOnly:true,token:n,tokens:a,onTokenChange:i,value:ge,loading:ie,classNames:{root:"oui-mt-3 oui-border-transparent focus-within:oui-outline-transparent"}}),he()]}),jsxRuntime.jsx($r,{sourceToken:t?.symbol,targetToken:n?.symbol,className:"oui-mb-3"}),jsxRuntime.jsx(sn,{message:ce,needSwap:Q,needCrossSwap:te,wrongNetwork:A,networkId:w}),jsxRuntime.jsx(orderlyUi.Flex,{justify:"center",children:jsxRuntime.jsx(St,{actionType:f,symbol:t?.symbol,disabled:S,loading:F,onDeposit:I,onApprove:y,onApproveAndDeposit:k,networkId:w})})]})};var zo=e=>{let t=Oo(e);return jsxRuntime.jsx(Vo,{...t})};var Rs=e=>{let{value:t,onChange:n,status:o,hintMessage:a,placeholder:s,label:i}=e,c=Ri.useRef(null),r=u=>{n?.(u.target.value);let m=c.current;m&&(m.style.height="auto",m.style.height=`${m.scrollHeight}px`);};Ri.useEffect(()=>{let u=c.current;u&&(u.style.height="auto",u.style.height=`${u.scrollHeight}px`);},[t]);let l=jsxRuntime.jsx("div",{className:"oui-absolute oui-left-3 oui-top-0.5 oui-z-[1]",children:jsxRuntime.jsx(orderlyUi.Text,{size:"2xs",intensity:36,children:i})}),p=jsxRuntime.jsxs(orderlyUi.Flex,{mt:1,gapX:1,px:1,children:[jsxRuntime.jsx(orderlyUi.Box,{width:4,height:4,r:"full",className:orderlyUi.cn(o==="error"&&"oui-bg-danger-light",o==="warning"&&"oui-bg-warning-light")}),jsxRuntime.jsx(orderlyUi.Text,{size:"2xs",className:orderlyUi.cn(o==="error"&&"oui-text-danger-light",o==="warning"&&"oui-text-warning-light"),children:a})]});return jsxRuntime.jsxs("div",{className:"oui-relative",children:[l,jsxRuntime.jsx("textarea",{ref:c,placeholder:s,className:orderlyUi.cn("oui-resize-none oui-overflow-y-hidden","oui-relative oui-min-h-[54px] oui-px-3 oui-pb-2 oui-pt-5","oui-w-full oui-bg-base-5 oui-text-sm oui-text-base-contrast","oui-rounded-lg oui-outline-none","oui-border oui-border-line focus:oui-border-primary-light",o==="error"&&"oui-border-danger-light focus-within:oui-border-danger-light focus:oui-border-danger-light",o==="warning"&&"oui-border-warning-light focus-within:oui-border-warning-light focus:oui-border-warning-light",e.className),rows:1,value:t,onChange:r}),a&&p]})};var Bn=e=>{let{hasPositions:t,unsettledPnl:n,onSettlePnl:o,tooltipContent:a,dialogContent:s}=e,{t:i}=orderlyI18n.useTranslation();if(n===0&&!t)return jsxRuntime.jsx(jsxRuntime.Fragment,{});let c=()=>{orderlyUi.modal.confirm({title:i("settle.settlePnl"),content:s,onOk:()=>o()});};return jsxRuntime.jsxs(orderlyUi.Flex,{justify:"between",className:"oui-text-2xs oui-text-base-contrast-36",children:[jsxRuntime.jsxs(orderlyUi.Flex,{itemAlign:"center",justify:"start",gap:1,children:[jsxRuntime.jsx(orderlyUi.Tooltip,{className:"oui-max-w-[274px] oui-font-semibold",content:a,children:jsxRuntime.jsxs(orderlyUi.Flex,{itemAlign:"center",justify:"start",gap:1,children:[jsxRuntime.jsx(orderlyUi.ExclamationFillIcon,{size:14,className:"oui-text-warning-darken"}),jsxRuntime.jsx(orderlyUi.Text,{className:"oui-cursor-pointer oui-border-b oui-border-dashed oui-border-line-12",children:`${i("settle.unsettled")}:`})]})}),jsxRuntime.jsx(orderlyUi.Text.numeral,{showIdentifier:true,coloring:true,weight:"semibold",dp:6,"data-testid":"oui-testid-withdraw-dialog-unsettledPnl-value",children:n}),jsxRuntime.jsx(orderlyUi.Text,{children:"USDC"})]}),jsxRuntime.jsxs(orderlyUi.Flex,{itemAlign:"center",gap:1,className:"oui-cursor-pointer",children:[jsxRuntime.jsx(Tr,{className:"oui-text-primary"}),jsxRuntime.jsx(orderlyUi.Text,{"data-testid":"oui-testid-withdraw-dialog-settle-text",size:"2xs",color:"primary",className:" oui-select-none",onClick:c,children:i("common.settle")})]})]})};var Es=({address:e,amount:t,currentChain:n})=>{let{t:o}=orderlyI18n.useTranslation(),a=Ri.useMemo(()=>{if(n&&n.info&&n.info.network_infos)return n.info.network_infos.name},[n]);return jsxRuntime.jsxs(orderlyUi.Flex,{direction:"column",itemAlign:"start",justify:"start",className:"oui-gap-1 lg:oui-gap-3",children:[jsxRuntime.jsxs(orderlyUi.Flex,{direction:"column",itemAlign:"start",mb:5,className:"oui-gap-3 lg:oui-gap-4",children:[jsxRuntime.jsxs(orderlyUi.Flex,{direction:"column",justify:"start",itemAlign:"start",children:[jsxRuntime.jsx(orderlyUi.Text,{size:"2xs",intensity:36,children:o("transfer.withdraw.crossChain.recipientAddress")}),jsxRuntime.jsx(orderlyUi.Text,{size:"sm",intensity:98,className:"oui-break-all",children:e})]}),jsxRuntime.jsxs(orderlyUi.Flex,{direction:"column",justify:"start",itemAlign:"start",children:[jsxRuntime.jsx(orderlyUi.Text,{size:"2xs",intensity:36,children:o("transfer.withdraw.crossChain.recipientNetwork")}),jsxRuntime.jsxs(orderlyUi.Flex,{gap:1,children:[jsxRuntime.jsx(orderlyUi.ChainIcon,{className:"oui-h-[18px] oui-w-[18px]",size:"sm",chainId:n.id}),jsxRuntime.jsx(orderlyUi.Text,{size:"sm",intensity:98,children:a})]})]}),jsxRuntime.jsxs(orderlyUi.Flex,{direction:"column",justify:"start",itemAlign:"start",children:[jsxRuntime.jsx(orderlyUi.Text,{size:"2xs",intensity:36,children:`${o("transfer.withdraw.crossChain.withdrawAmount")} (USDC)`}),jsxRuntime.jsx(orderlyUi.Text.numeral,{size:"sm",intensity:98,dp:2,children:t})]})]}),jsxRuntime.jsx(orderlyUi.Flex,{justify:"center",className:"oui-text-warning-darken oui-text-2xs lg:oui-text-xs oui-text-center",mb:3,children:o("transfer.withdraw.crossChain.warning")})]})};function Uo(e){let{t}=orderlyI18n.useTranslation(),n=()=>{orderlyUi.modal.show(orderlyUiChainSelector.ChainSelectorDialogId,{networkId:e.networkId,bridgeLessOnly:true}).then(o=>{orderlyUi.toast.success(t("connector.networkSwitched"));},o=>console.log("[switchChain error]",o));};return jsxRuntime.jsx(orderlyUi.Flex,{direction:"column",children:jsxRuntime.jsx(orderlyUi.Button,{color:"warning",size:e.size,fullWidth:true,onClick:()=>{n();},children:t("connector.switchNetwork")})})}var Ws=e=>{let{disabled:t,loading:n,onWithdraw:o,networkId:a,crossChainWithdraw:s,address:i,currentChain:c,quantity:r,fee:l,checkIsBridgeless:p,onTransfer:u}=e,{t:m}=orderlyI18n.useTranslation(),b=Ri.useMemo(()=>r?new orderlyUtils.Decimal(r).minus(l??0).toNumber():0,[r,l]),h=()=>{if(s){orderlyUi.modal.confirm({title:m("transfer.withdraw.crossChain.confirmWithdraw"),content:jsxRuntime.jsx(Es,{address:i,amount:b,currentChain:c}),classNames:{content:"oui-font-semibold",body:"!oui-pb-0",footer:"!oui-pt-0"},onOk:async()=>{o();}});return}o();},d={initial:"md",lg:"lg"},g=()=>e.withdrawTo==="accountId"?jsxRuntime.jsx(orderlyUi.Button,{fullWidth:true,disabled:t,loading:n,onClick:u,size:d,children:m("common.withdraw")}):p?jsxRuntime.jsx(orderlyUi.Button,{"data-testid":"oui-testid-withdraw-dialog-withdraw-btn",fullWidth:true,disabled:t,loading:n,onClick:h,size:d,children:m("common.withdraw")}):jsxRuntime.jsx(Uo,{networkId:a,size:d});return jsxRuntime.jsx(orderlyUi.Box,{className:"oui-w-full lg:oui-w-auto lg:oui-min-w-[184px]",children:jsxRuntime.jsx(orderlyUiConnector.AuthGuard,{status:orderlyTypes.AccountStatusEnum.EnableTrading,networkId:a,bridgeLessOnly:true,buttonProps:{fullWidth:true,size:d},children:g()})})};var Os=e=>{let{chainVaultBalance:t,currentChain:n,crossChainTrans:o,tokenName:a,qtyGreaterThanMaxAmount:s,qtyGreaterThanVault:i}=e,{t:c}=orderlyI18n.useTranslation(),{state:r}=orderlyHooks.useAccount(),l=Ri.useMemo(()=>{if(n&&n.info&&n.info.network_infos)return n.info.network_infos.name},[n]),u=r.status===orderlyTypes.AccountStatusEnum.NotConnected?null:o?c("transfer.withdraw.crossChain.process"):s?c("transfer.insufficientBalance"):i?c("transfer.withdraw.vaultWarning",{tokenName:a,chainName:l,balance:t}):e.message;return u?jsxRuntime.jsx(orderlyUi.Flex,{my:4,className:"oui-justify-center oui-text-center oui-text-xs oui-text-warning-darken",children:u}):null};var Go=e=>{let{address:t,loading:n,disabled:o,quantity:a,onQuantityChange:s,sourceToken:i,amount:c,maxQuantity:r,tokenChains:l,currentChain:p,fee:u,settingChain:m,chainVaultBalance:b,crossChainTrans:h,checkIsBridgeless:d,withdrawTo:g,sourceTokens:T,onSourceTokenChange:f,vaultBalanceList:I,qtyGreaterThanMaxAmount:y,qtyGreaterThanVault:k}=e,{t:C}=orderlyI18n.useTranslation(),A=jsxRuntime.jsxs(orderlyUi.TabPanel,{title:C("transfer.withdraw.otherAccount",{brokerName:e.brokerName}),value:"accountId",children:[jsxRuntime.jsx(Rs,{label:C("common.accountId"),value:e.toAccountId,onChange:e.setToAccountId,status:e.toAccountIdInputStatus,hintMessage:e.toAccountIdHintMessage}),jsxRuntime.jsx(orderlyUi.Box,{my:2,children:jsxRuntime.jsx(orderlyUi.Text,{size:"xs",intensity:54,children:C("transfer.withdraw.accountId.tips")})})]});return jsxRuntime.jsxs(orderlyUi.Box,{id:"oui-withdraw-form",className:orderlyUi.textVariants({weight:"semibold"}),children:[jsxRuntime.jsxs(orderlyUi.Box,{className:"oui-mb-6 lg:oui-mb-8",children:[jsxRuntime.jsx(qe,{}),jsxRuntime.jsx(orderlyUi.Box,{mt:3,mb:1,children:jsxRuntime.jsx(j,{value:a,onValueChange:s,token:i,tokens:T,onTokenChange:f,status:e.inputStatus,hintMessage:e.hintMessage,vaultBalanceList:I,testId:"oui-testid-withdraw-dialog-quantity-input",displayType:"vaultBalance"})}),jsxRuntime.jsx(ae,{token:i,amount:c,maxQuantity:r.toString(),loading:e.balanceRevalidating,onClick:()=>{s(r.toString());}}),jsxRuntime.jsx(orderlyUi.Box,{mx:2,mt:1,children:jsxRuntime.jsx(Bn,{unsettledPnl:e.unsettledPnL,hasPositions:e.hasPositions,onSettlePnl:e.onSettlePnl,tooltipContent:C("settle.unsettled.tooltip"),dialogContent:jsxRuntime.jsx(orderlyI18n.Trans,{i18nKey:"settle.settlePnl.description"})})}),jsxRuntime.jsx(ue,{}),jsxRuntime.jsxs(orderlyUi.Tabs,{value:g,onValueChange:e.setWithdrawTo,variant:"contained",size:"lg",classNames:{tabsList:"oui-px-0",tabsContent:"oui-pt-3"},children:[jsxRuntime.jsxs(orderlyUi.TabPanel,{title:C("transfer.web3Wallet.my"),icon:jsxRuntime.jsx(orderlyUi.WalletIcon,{size:"xs",name:e.walletName??""}),value:"wallet",children:[jsxRuntime.jsx(Ue,{chains:l,value:p,onValueChange:e.onChainChange,wrongNetwork:e.wrongNetwork,loading:m}),jsxRuntime.jsx(j,{classNames:{root:"oui-mt-[2px] oui-rounded-t-sm oui-rounded-b-xl"},token:i,value:e.showQty,readOnly:true})]}),A]}),jsxRuntime.jsx(orderlyUi.Box,{mt:2,children:jsxRuntime.jsx(ze,{showDiff:typeof a<"u"&&Number(a)>0,currentLtv:e.currentLTV,nextLTV:e.nextLTV})}),jsxRuntime.jsx(orderlyUi.Flex,{direction:"column",mt:1,gapY:1,itemAlign:"start",children:jsxRuntime.jsxs(orderlyUi.Text,{size:"xs",intensity:36,children:[C("common.fee"),g==="wallet"?jsxRuntime.jsxs(jsxRuntime.Fragment,{children:[" \u2248 ",jsxRuntime.jsx(orderlyUi.Text,{size:"xs",intensity:80,children:u})]}):jsxRuntime.jsxs(jsxRuntime.Fragment,{children:[" = ",jsxRuntime.jsx(orderlyUi.Text,{size:"xs",intensity:80,children:"0"})]})]})})]}),jsxRuntime.jsx(Os,{checkIsBridgeless:d,chainVaultBalance:b,currentChain:p,crossChainTrans:h,tokenName:i?.symbol,qtyGreaterThanVault:k,qtyGreaterThanMaxAmount:y,message:e.ltvWarningMessage}),jsxRuntime.jsx(orderlyUi.Flex,{justify:"center",children:jsxRuntime.jsx(Ws,{checkIsBridgeless:d,networkId:e.networkId,disabled:o,loading:n,onWithdraw:e.onWithdraw,crossChainWithdraw:e.crossChainWithdraw,currentChain:p,address:t,quantity:a,fee:u,withdrawTo:g,onTransfer:e.onTransfer})})]})};var dt=e=>{let{accountId:t}=e||{},{t:n}=orderlyI18n.useTranslation(),o=orderlyHooks.useEventEmitter(),{account:a,state:s}=orderlyHooks.useAccount(),[i]=orderlyHooks.usePositionStream();return {hasPositions:Ri.useMemo(()=>!!i?.rows?.length,[i]),onSettlePnl:async()=>(t&&s.mainAccountId!==t?a.settleSubAccount({subAccountId:t}):a.settle({accountId:t})).then(u=>(orderlyUi.toast.success(n("settle.settlement.requested")),Promise.resolve(u))).catch(u=>{if(u.code==-1104)orderlyUi.toast.error(n("settle.settlement.error"));else if(u.message.indexOf("Signing off chain messages with Ledger is not yet supported")!==-1)o.emit("wallet:sign-message-with-ledger-error",{message:u.message,userAddress:a.address});else if(u.message.indexOf("user rejected")!==-1)orderlyUi.toast.error(n("transfer.rejectTransaction"));else return orderlyUi.toast.error(u.message),Promise.reject(u)})}};function qs(e){let{token:t,quantity:n,setQuantity:o,close:a,setLoading:s,decimals:i}=e,{t:c}=orderlyI18n.useTranslation(),[r,l]=Ri.useState("wallet"),[p,u]=Ri.useState(""),[m,b]=Ri.useState("default"),[h,d]=Ri.useState(),{transfer:g,submitting:T}=orderlyHooks.useInternalTransfer(),f=Ri.useCallback(()=>{let I=Number(n);if(Number.isNaN(I)||I<=0){orderlyUi.toast.error(c("transfer.quantity.invalid"));return}T||!p||(s(true),g({token:t,receiver:p,amount:n,decimals:i}).then(()=>{orderlyUi.toast.success(c("transfer.internalTransfer.success")),o(""),a?.();}).catch(y=>{console.log("transfer error",y);let k=kn(y.code);orderlyUi.toast.error(k);}).finally(()=>{s(false);}));},[c,n,t,T,p,g]);return Ri.useEffect(()=>{if(!p){b("default"),d("");return}rs(p)?(b("default"),d("")):(b("error"),d(c("transfer.withdraw.accountId.invalid")));},[p]),{withdrawTo:r,setWithdrawTo:l,toAccountId:p,setToAccountId:u,onTransfer:f,internalWithdrawSubmitting:T,toAccountIdInputStatus:m,toAccountIdHintMessage:h}}function Us(e){let{crossChainWithdraw:t,currentChain:n,token:o}=e,a=orderlyHooks.useTokenInfo(o);return Ri.useMemo(()=>{if(!n)return 0;let i=a?.chain_details?.find(c=>Number.parseInt(c.chain_id)===n.id);return i?t?(i.withdrawal_fee||0)+(i.cross_chain_withdrawal_fee||0):i.withdrawal_fee||0:0},[a,o,n,t])}var Qs=e=>{let{token:t,quantity:n}=e,{ltv_threshold:o}=vm(),{t:a}=orderlyI18n.useTranslation(),s=orderlyHooks.useComputedLTV(),i=orderlyHooks.useComputedLTV({input:n?-Number(n):0,token:t}),c=Ri.useMemo(()=>{if(o&&i){let r=o*100;if(i>r)return a("transfer.withdraw.LTV.error",{threshold:r})}return ""},[i,o]);return {currentLTV:s,nextLTV:i,ltvWarningMessage:c,t:a}},vm=()=>{let{data:e}=orderlyHooks.useQuery("/v1/public/auto_convert_threshold",{revalidateOnFocus:false});return {ltv_threshold:e?.ltv_threshold,negative_usdc_threshold:e?.negative_usdc_threshold}};var Xs=1,Ho=e=>{let{t}=orderlyI18n.useTranslation(),[n,o]=Ri.useState(false),[a,s]=Ri.useState(false),[i]=orderlyHooks.useAssetsHistory({page:1,pageSize:1,side:orderlyTypes.AssetHistorySideEnum.WITHDRAW,status:orderlyTypes.AssetHistoryStatusEnum.PENDING_REBALANCE},{shouldUpdateOnWalletChanged:N=>N.side===orderlyTypes.AssetHistorySideEnum.WITHDRAW}),c=orderlyHooks.useConfig(),r=c.get("brokerName"),l=c.get("networkId"),p=orderlyHooks.useEventEmitter(),[u,m]=Ri.useState(""),[b,h]=Ri.useState("default"),[d,g]=Ri.useState(),{wrongNetwork:T}=orderlyReactApp.useAppContext(),{account:f}=orderlyHooks.useAccount(),[I,{findByChainId:y}]=orderlyHooks.useChains(l,{filter:N=>N.network_infos?.bridge_enable||N.network_infos?.bridgeless}),[k]=orderlyHooks.useLocalStorage("orderly_link_device",{}),{data:C}=orderlyHooks.useQuery("/v1/public/vault_balance",{revalidateOnMount:true,errorRetryCount:3}),{connectedChain:A,wallet:x,setChain:F,settingChain:S}=orderlyHooks.useWalletConnector(),w=Ri.useMemo(()=>{let N=A?orderlyUtils.praseChainIdToNumber(A.id):Number.parseInt(k?.chainId);if(!N)return null;let X=y(N);return {...A,id:N,info:X}},[y,A,k]),{sourceToken:v,onSourceTokenChange:B,sourceTokens:M}=Dn(w,N=>N.symbol==="USDC"||N.is_collateral),D=Ri.useMemo(()=>I.filter(N=>N.token_infos?.some(X=>X.symbol===v?.symbol)).map(N=>N.network_infos),[I,l,v]),{walletName:_,address:W}=Ri.useMemo(()=>({walletName:x?.label,address:x?.accounts?.[0].address}),[x]),z=N=>{m(N);},Q=Ri.useMemo(()=>new orderlyUtils.Decimal(u||0).mul(Xs).toNumber(),[u,Xs]),{withdraw:te,maxAmount:P,unsettledPnL:Z}=orderlyHooks.useWithdraw({token:v?.symbol,decimals:v?.token_decimal}),ce=qs({token:v?.symbol,decimals:v?.token_decimal,quantity:u,setQuantity:m,close:e.close,setLoading:s}),{withdrawTo:se,toAccountId:ge}=ce,ie=Ri.useMemo(()=>T||!w?false:l==="testnet"?true:!(!w.info||!w.info.network_infos||!w.info.network_infos.bridgeless),[w,T]),ye=()=>{m("");},he=Ri.useCallback(async N=>{let X=y(N.chain_id);return !X||X.network_infos?.chain_id===w?.id?Promise.resolve():F?.({chainId:orderlyUtils.int2hex(Number(X.network_infos?.chain_id))}).then(Le=>{Le?(orderlyUi.toast.success(t("connector.networkSwitched")),ye()):orderlyUi.toast.error(t("connector.switchChain.failed"));}).catch(Le=>{orderlyUi.toast.error(`${t("connector.switchChain.failed")}: ${Le.message}`);})},[w,F,y,t]),K=Ri.useMemo(()=>{if(!Array.isArray(C)||!w)return null;let N=C.find(X=>Number.parseInt(X.chain_id)===w?.id&&X.token===v?.symbol);return N?N.balance:null},[I,w,C,v?.symbol]),Ne=Ri.useMemo(()=>!u||Number.isNaN(u)?false:!P||Number.isNaN(P)?true:new orderlyUtils.Decimal(u).gt(P),[u,P]),we=Ri.useMemo(()=>!u||Number.isNaN(u)?false:!K||Number.isNaN(K)?true:new orderlyUtils.Decimal(u).gt(K),[u,K]),me=Ri.useMemo(()=>{if(K!==null){let N=Number.parseFloat(u);return N>K&&N<=P}return false},[u,P,K]),R=Ri.useMemo(()=>v?.minimum_withdraw_amount??0,[v]),O=async()=>{if(!a&&b==="default"){if(new orderlyUtils.Decimal(u).lt(R)){orderlyUi.toast.error(t("transfer.withdraw.minAmount.error",{minAmount:R}));return}return s(true),te({amount:u,token:v?.symbol,chainId:w?.id,allowCrossChainWithdraw:me}).then(N=>{orderlyUi.toast.success(t("transfer.withdraw.requested")),p.emit("withdraw:requested"),e.close?.(),m("");}).catch(N=>{if(N.message.indexOf("user rejected")!==-1){orderlyUi.toast.error(t("transfer.rejectTransaction"));return}if(N.message.indexOf("Signing off chain messages with Ledger is not yet supported")!==-1){p.emit("wallet:sign-message-with-ledger-error",{message:N.message,userAddress:f.address});return}orderlyUi.toast.error(N.message);}).finally(()=>{s(false);})}},U=Us({crossChainWithdraw:me,currentChain:w,token:v?.symbol}),$=Ri.useMemo(()=>{if(!u)return "";let N=new orderlyUtils.Decimal(u).sub(U??0);return N.isNegative()?"":N.toNumber()},[U,u]);Ri.useEffect(()=>{if(!u){h("default"),g("");return}let N=new orderlyUtils.Decimal(u??0);Z<0&&(N.gt(P)?(h("error"),g(t("transfer.insufficientBalance"))):(h("default"),g("")));},[u,P,Z,n]);let De=n||!u||Number(u)===0||["error","warning"].includes(b)||se==="accountId"&&!ge||Ne||we;Ri.useEffect(()=>{o(!!i?.length);},[i?.length]);let Tt=orderlyHooks.useMemoizedFn(N=>{if(!n)return;let X=i?.[0]?.tx_id,{trxId:Le,transStatus:Zn}=N;Le===X&&Zn==="COMPLETED"&&o(false);});orderlyHooks.useWalletTopic({onMessage:Tt});let{hasPositions:Hn,onSettlePnl:$n}=dt(),{currentLTV:Xn,nextLTV:jn,ltvWarningMessage:Yn}=Qs({token:v?.symbol,quantity:u});return {walletName:_,address:W,quantity:u,onQuantityChange:z,sourceToken:v,onSourceTokenChange:B,sourceTokens:M,inputStatus:b,hintMessage:d,amount:Q,balanceRevalidating:false,maxQuantity:P,disabled:De,loading:a,unsettledPnL:Z,wrongNetwork:T,settingChain:S,tokenChains:D,currentChain:w,onChainChange:he,onWithdraw:O,chainVaultBalance:K,fee:U,crossChainWithdraw:me,crossChainTrans:n,showQty:$,networkId:l,checkIsBridgeless:ie,hasPositions:Hn,onSettlePnl:$n,brokerName:r,qtyGreaterThanMaxAmount:Ne,qtyGreaterThanVault:we,vaultBalanceList:C?.filter(N=>Number.parseInt(N.chain_id)===w?.id),...ce,currentLTV:Xn,nextLTV:jn,ltvWarningMessage:Yn}};var $o=e=>{let t=Ho(e);return jsxRuntime.jsx(Go,{...t})};var js=e=>jsxRuntime.jsx(orderlyUi.ExtensionSlot,{position:orderlyUi.ExtensionPositionEnum.DepositForm,defaultWidget:zo,...e});var Ys=e=>jsxRuntime.jsx(orderlyUi.ExtensionSlot,{position:orderlyUi.ExtensionPositionEnum.WithdrawForm,defaultWidget:$o,...e});var op="DepositAndWithdrawWithDialogId",rp="DepositAndWithdrawWithSheetId",Ks=e=>{let[t,n]=Ri.useState(e.activeTab||"deposit"),{t:o}=orderlyI18n.useTranslation();return jsxRuntime.jsxs(orderlyUi.Tabs,{value:t,onValueChange:n,variant:"contained",size:"lg",classNames:{tabsList:"oui-px-0",tabsContent:"oui-pt-5"},children:[jsxRuntime.jsx(orderlyUi.TabPanel,{title:o("common.deposit"),icon:jsxRuntime.jsx(orderlyUi.ArrowDownSquareFillIcon,{}),value:"deposit",children:jsxRuntime.jsx(js,{close:e.close})}),jsxRuntime.jsx(orderlyUi.TabPanel,{title:o("common.withdraw"),icon:jsxRuntime.jsx(orderlyUi.ArrowUpSquareFillIcon,{}),value:"withdraw",children:jsxRuntime.jsx(Ys,{close:e.close})})]})};orderlyUi.registerSimpleDialog(op,Ks,{size:"md",classNames:{content:"oui-border oui-border-line-6"}});orderlyUi.registerSimpleSheet(rp,Ks);var Yo=e=>{let{token:t,tokens:n,onTokenChange:o,amount:a,quantity:s,maxQuantity:i,swapQuantity:c,onQuantityChange:r,hintMessage:l,inputStatus:p,chains:u,currentChain:m,settingChain:b,onChainChange:h,actionType:d,onDeposit:g,onApprove:T,fetchBalance:f,dst:I,wrongNetwork:y,balanceRevalidating:k,loading:C,disabled:A,networkId:x,slippage:F,onSlippageChange:S,needSwap:w,needCrossSwap:v,swapPrice:B,swapRevalidating:M,warningMessage:D,fee:_}=e;return jsxRuntime.jsxs(orderlyUi.Box,{id:"oui-swap-deposit-form",className:orderlyUi.textVariants({weight:"semibold"}),children:[jsxRuntime.jsxs(orderlyUi.Box,{className:"oui-mb-6 lg:oui-mb-8",children:[jsxRuntime.jsx(Ft,{}),jsxRuntime.jsxs(orderlyUi.Box,{mt:3,mb:1,children:[jsxRuntime.jsx(Ue,{chains:u,value:m,onValueChange:h,wrongNetwork:y,loading:b}),jsxRuntime.jsx(j,{classNames:{root:"oui-mt-[2px] oui-rounded-t-sm oui-rounded-b-xl"},value:s,onValueChange:r,tokens:n,token:t,onTokenChange:o,status:p,hintMessage:l,fetchBalance:f,"data-testid":"oui-testid-swap-deposit-dialog-quantity-input"})]}),jsxRuntime.jsx(ae,{token:t,amount:a,maxQuantity:i,loading:k,onClick:()=>{r(i);}}),jsxRuntime.jsx(ue,{}),jsxRuntime.jsx(qe,{}),jsxRuntime.jsx(j,{readOnly:true,token:I,value:c,loading:M,classNames:{root:"oui-mt-3 oui-border-transparent focus-within:oui-outline-transparent"}}),jsxRuntime.jsxs(orderlyUi.Flex,{direction:"column",itemAlign:"start",mt:1,gapY:1,children:[jsxRuntime.jsx(orderlyUi.Flex,{justify:"between",width:"100%",children:(w||v)&&jsxRuntime.jsx(ot,{value:F,onValueChange:S})}),jsxRuntime.jsx(un,{..._})]})]}),jsxRuntime.jsx(sn,{message:D,needSwap:w,needCrossSwap:v,wrongNetwork:y,networkId:x}),jsxRuntime.jsx(orderlyUi.Flex,{justify:"center",children:jsxRuntime.jsx(St,{actionType:d,symbol:t?.symbol,disabled:A,loading:C,onDeposit:g,onApprove:T,networkId:x})})]})};function ei(e){let{currentChain:t,tokensFilter:n}=e,[o,a]=Ri.useState(),[s,i]=Ri.useState([]),c=Ri.useCallback(r=>{if(r&&r?.token_infos?.length>0){let l=typeof n=="function"?n(r):r.token_infos;i(l);let p=Tn(l);if(!p)return;a(p);}},[n]);return Ri.useEffect(()=>{c(t?.info);},[t?.id,c]),{token:o,tokens:s,onTokenChange:a}}var Ko=e=>{let[t,n]=orderlyHooks.useLocalStorage("orderly_swap_deposit_slippage",1),o=orderlyHooks.useConfig(),a=o.get("brokerName")||"",s=o.get("networkId"),{wrongNetwork:i}=orderlyReactApp.useAppContext(),{chains:c,currentChain:r,settingChain:l,onChainChange:p}=Pt(),u=Ri.useCallback($=>$.token_infos.filter(De=>$.network_infos.bridgeless&&De.symbol==="USDC"?true:!!De.swap_enable)??[],[]),{token:m,tokens:b,onTokenChange:h}=ei({currentChain:r,tokensFilter:u}),{dst:d,balance:g,allowance:T,depositFeeRevalidating:f,depositFee:I,quantity:y,setQuantity:k,approve:C,deposit:A,isNativeToken:x,balanceRevalidating:F,fetchBalance:S}=orderlyHooks.useDeposit({address:m?.address,decimals:m?.decimals,srcChainId:r?.id,srcToken:m?.symbol,crossChainRouteAddress:r?.info?.network_infos?.cross_chain_router,depositorAddress:r?.info?.network_infos?.depositor}),w=Ri.useMemo(()=>new orderlyUtils.Decimal(g||0).todp(m?.precision??2,orderlyUtils.Decimal.ROUND_DOWN).toString(),[g,m]),{inputStatus:v,hintMessage:B}=Et({quantity:y,maxQuantity:w}),{needSwap:M,needCrossSwap:D}=fn({srcToken:m,srcChainId:r?.id,dstChainId:d?.chainId}),{enquiry:_,transactionInfo:W,amount:z,querying:Q,warningMessage:te,cleanTransactionInfo:P}=In({quantity:y,dst:d,queryParams:{network:d.network,srcToken:m?.address,srcNetwork:r?.info?.network_infos?.shortName,dstToken:d.address,crossChainRouteAddress:r?.info?.network_infos?.cross_chain_router,amount:new orderlyUtils.Decimal(y||0).mul(10**(m?.decimals||0)).toString(),slippage:t},needSwap:M,needCrossSwap:D}),Z=()=>{P(),k("");},ce=Ri.useCallback(()=>{Z(),e.onClose?.();},[e.onClose]),se=Ri.useCallback(async()=>_().then($=>{let De=D?$.route_infos?.dst.amounts[1]:$.route_infos?.amounts[1],Tt={mode:D?1:0,src:{chain:r?.id,token:m.symbol,displayDecimals:m?.precision,amount:y,decimals:m.decimals},dst:{chain:d.chainId,token:d.symbol,displayDecimals:2,amount:new orderlyUtils.Decimal(De).div(Math.pow(10,d.decimals)).toString(),decimals:d.decimals},chain:r?.info?.network_infos,nativeToken:r?.info?.nativeToken,depositFee:I,transactionData:$,slippage:t,brokerName:a};return orderlyUi.modal.show(vn,Tt)}).then($=>{$&&Z();}).catch($=>{}),[y,D,d,r,t,I]),{submitting:ge,onApprove:ie,onDeposit:ye}=Rt({quantity:y,allowance:T,approve:C,deposit:A,enableCustomDeposit:M||D,customDeposit:se,onSuccess:ce}),he=ge||f||Q,K=!y||Number(y)===0||v==="error"||f||Q,Ne=Ri.useMemo(()=>D||M?W.price:1,[W]),we=Ri.useMemo(()=>D||M?x?W.markPrices.native_token:W.markPrices.from_token:1,[M,D,x,W]),me=Ri.useMemo(()=>new orderlyUtils.Decimal(y||0).mul(we).toNumber(),[y,we]),R=M||D?z:y,O=Dt({isNativeToken:x,allowance:T,quantity:y,maxQuantity:w}),U=Fn({nativeToken:r?.info?.nativeToken,isNativeToken:x,src:m,depositFee:I,transactionInfo:W,needSwap:M,needCrossSwap:D});return Ri.useEffect(()=>{Z();},[m,r?.id]),{token:m,tokens:b,onTokenChange:h,amount:me,quantity:y,maxQuantity:w,swapQuantity:R,onQuantityChange:k,hintMessage:B,inputStatus:v,chains:c,currentChain:r,settingChain:l,onChainChange:p,actionType:O,onDeposit:ye,onApprove:ie,fetchBalance:S,dst:d,wrongNetwork:i,balanceRevalidating:F,loading:he,disabled:K,networkId:s,slippage:t,onSlippageChange:n,needSwap:M,needCrossSwap:D,swapPrice:Ne,swapRevalidating:Q,warningMessage:te,fee:U}};var gp=e=>{let t=Ko(e);return jsxRuntime.jsx(Yo,{...t})};var er=e=>{let{subAccounts:t=[],value:n}=e,[o,a]=Ri.useState(false),s=t.length>1,i=jsxRuntime.jsxs(orderlyUi.Flex,{intensity:500,className:orderlyUi.cn("oui-rounded-b-sm oui-rounded-t-xl oui-border oui-border-line",s?"oui-cursor-pointer":"oui-cursor-auto oui-bg-base-6"),height:54,px:3,justify:"between",itemAlign:"center",children:[jsxRuntime.jsxs(orderlyUi.Flex,{direction:"column",itemAlign:"start",children:[jsxRuntime.jsx(orderlyUi.Text.formatted,{size:"xs",intensity:80,rule:n?.description?void 0:"address",children:n?.description||n?.id}),jsxRuntime.jsxs(orderlyUi.Text,{intensity:36,size:"2xs",children:["ID: ",jsxRuntime.jsx(orderlyUi.Text.formatted,{rule:"address",children:n?.id})]})]}),s&&jsxRuntime.jsx($t,{className:"oui-text-base-contrast-54"})]}),c=t.map((r,l)=>{let p=r.id===n?.id,u=r?.holding?.find(m=>m.token==="USDC")?.holding;return jsxRuntime.jsxs(orderlyUi.Flex,{px:2,r:"base",justify:"between",className:orderlyUi.cn("oui-transfer-form-account-select-item","oui-cursor-pointer oui-py-[6px] hover:oui-bg-base-5",p&&"oui-bg-base-5",l!==0&&"oui-mt-[2px]"),onClick:async()=>{a(false),e.onValueChange?.(r);},children:[jsxRuntime.jsx(orderlyUi.Flex,{gapX:1,itemAlign:"center",children:jsxRuntime.jsxs(orderlyUi.Flex,{direction:"column",itemAlign:"start",className:"oui-text-2xs",children:[jsxRuntime.jsx(orderlyUi.Text.formatted,{rule:r?.description?void 0:"address",intensity:80,children:r?.description||r?.id}),jsxRuntime.jsxs(orderlyUi.Text,{intensity:36,size:"2xs",children:["ID: ",jsxRuntime.jsx(orderlyUi.Text.formatted,{rule:"address",children:r?.id})]})]})}),jsxRuntime.jsxs(orderlyUi.Flex,{gapX:3,children:[jsxRuntime.jsx(orderlyUi.Text.numeral,{size:"2xs",intensity:54,unit:" USDC",children:u||0}),p&&jsxRuntime.jsx(orderlyUi.Box,{width:4,height:4,r:"full",className:"oui-transfer-form-account-select-active-dot oui-bg-[linear-gradient(270deg,#59B0FE_0%,#26FEFE_100%)]"})]})]},r.id)});return jsxRuntime.jsxs(orderlyUi.DropdownMenuRoot,{open:s?o:false,onOpenChange:a,children:[jsxRuntime.jsx(orderlyUi.DropdownMenuTrigger,{asChild:true,children:i}),jsxRuntime.jsx(orderlyUi.DropdownMenuPortal,{children:jsxRuntime.jsx(orderlyUi.DropdownMenuContent,{onCloseAutoFocus:r=>r.preventDefault(),align:"start",sideOffset:2,className:orderlyUi.cn("oui-transfer-form-account-select-dropdown-menu-content","oui-font-semibold","oui-bg-base-8 oui-p-1","oui-w-[var(--radix-dropdown-menu-trigger-width)]","oui-select-none oui-rounded-md"),children:jsxRuntime.jsx(orderlyUi.ScrollArea,{children:jsxRuntime.jsxs("div",{className:"oui-max-h-[254px]",children:[c," "]})})})})]})};var tr=e=>{let{networkId:t,disabled:n,onTransfer:o,quantity:a,onQuantityChange:s,amount:i,tokens:c,token:r,onTokenChange:l,maxQuantity:p,submitting:u,hintMessage:m,inputStatus:b,hasPositions:h,onSettlePnl:d,unsettledPnL:g,toAccountAsset:T,fromAccounts:f,toAccounts:I,fromAccount:y,onFromAccountChange:k,toAccount:C,onToAccountChange:A,onExchange:x}=e,{t:F}=orderlyI18n.useTranslation(),S={initial:"md",lg:"lg"};return jsxRuntime.jsxs(orderlyUi.Box,{id:"oui-deposit-form",className:orderlyUi.textVariants({weight:"semibold"}),children:[jsxRuntime.jsxs(orderlyUi.Box,{className:"oui-mb-6 lg:oui-mb-8",children:[jsxRuntime.jsx(orderlyUi.Text,{size:"sm",intensity:98,children:F("transfer.internalTransfer.from")}),jsxRuntime.jsxs(orderlyUi.Box,{mt:1,mb:1,children:[jsxRuntime.jsx(er,{subAccounts:f,value:y,onValueChange:k}),jsxRuntime.jsx(j,{classNames:{root:"oui-mt-[2px] oui-rounded-t-sm oui-rounded-b-xl"},value:a,onValueChange:s,tokens:c,token:r,onTokenChange:l,hintMessage:m,status:b})]}),jsxRuntime.jsx(ae,{token:r,amount:i,maxQuantity:p,onClick:()=>{s(p.toString());}}),jsxRuntime.jsx(orderlyUi.Box,{mx:2,mt:1,children:jsxRuntime.jsx(Bn,{unsettledPnl:g,hasPositions:h,onSettlePnl:d,tooltipContent:F("transfer.internalTransfer.unsettled.tooltip"),dialogContent:jsxRuntime.jsx(orderlyI18n.Trans,{i18nKey:"transfer.internalTransfer.settlePnl.description"})})}),jsxRuntime.jsx(ue,{icon:jsxRuntime.jsx(kr,{className:"oui-cursor-pointer oui-text-primary",onClick:x})}),jsxRuntime.jsx(orderlyUi.Text,{size:"sm",intensity:98,children:F("transfer.internalTransfer.to")}),jsxRuntime.jsxs(orderlyUi.Box,{mt:1,children:[jsxRuntime.jsx(er,{subAccounts:I,value:C,onValueChange:A}),jsxRuntime.jsxs(orderlyUi.Flex,{className:orderlyUi.cn("oui-mt-[2px] oui-h-[31px] oui-text-base-contrast-54","oui-rounded-b-xl oui-rounded-t-sm"),justify:"between",itemAlign:"center",px:3,intensity:600,children:[jsxRuntime.jsx(orderlyUi.Text,{size:"2xs",children:F("transfer.internalTransfer.currentAssetValue")}),jsxRuntime.jsx(orderlyUi.Text.numeral,{size:"2xs",intensity:54,unit:` ${r.symbol}`,dp:r?.precision,padding:false,children:T})]})]})]}),jsxRuntime.jsx(orderlyUi.Flex,{justify:"center",children:jsxRuntime.jsx(orderlyUi.Box,{className:"oui-w-full lg:oui-w-auto lg:oui-min-w-[184px]",children:jsxRuntime.jsx(orderlyUiConnector.AuthGuard,{networkId:t,buttonProps:{fullWidth:true,size:S},children:jsxRuntime.jsx(orderlyUi.Button,{fullWidth:true,disabled:n,loading:u,size:S,onClick:o,children:F("common.transfer")})})})})]})};var or={symbol:"USDC"},rr=e=>{let{t}=orderlyI18n.useTranslation(),[n,o]=Ri.useState(""),[a,s]=Ri.useState(),[i,c]=Ri.useState(),[r,l]=Ri.useState(),[p,u]=Ri.useState([or]),[m,b]=Ri.useState(or),[h,d]=Ri.useState({}),g=orderlyHooks.useConfig("networkId"),{state:T,isMainAccount:f,subAccount:I}=orderlyHooks.useAccount(),y=orderlyHooks.useTokensInfo(),{transfer:k,submitting:C,maxAmount:A,unsettledPnL:x}=orderlyHooks.useTransfer({fromAccountId:a?.id,token:m.symbol}),F=T.subAccounts,S=T.mainAccountId,w=T.accountId,v=f?a?.id!==S?a?.id:void 0:a?.id,{hasPositions:B,onSettlePnl:M}=dt({accountId:a?.id}),{portfolio:D,positions:_}=orderlyHooks.useSubAccountDataObserver(v),W=orderlyHooks.useSubAccountMaxWithdrawal({token:m.symbol,unsettledPnL:D?.unsettledPnL,freeCollateral:D?.freeCollateral??orderlyUtils.zero,holdings:D?.holding}),z=Ri.useMemo(()=>!!_?.rows?.length,[_]),Q=Ri.useMemo(()=>v?z:B,[v,z,B]),{unsettledPnL:te,maxQuantity:P}=Ri.useMemo(()=>v?{unsettledPnL:D?.unsettledPnL,maxQuantity:W}:{unsettledPnL:x,maxQuantity:A},[v,x,A,D?.unsettledPnL,W]),{inputStatus:Z,hintMessage:ce}=Wp({quantity:n,maxQuantity:P,unsettledPnL:te}),se=Ri.useCallback(()=>{let R=Number(n);if(isNaN(R)||R<=0){orderlyUi.toast.error(t("transfer.quantity.invalid"));return}C||!i||k(m.symbol,{account_id:i.id,amount:new orderlyUtils.Decimal(n).toNumber()}).then(()=>{orderlyUi.toast.success(t("transfer.internalTransfer.success")),o(""),e.close?.();}).catch(O=>{console.error("transfer error: ",O);let U=kn(O.code);orderlyUi.toast.error(U);});},[t,m,n,C,k,i]),ge=C||!n||Z==="error",ie=Ri.useMemo(()=>new orderlyUtils.Decimal(n||0).mul(1).toNumber(),[n]),ye=Ri.useMemo(()=>i?.id&&h[i.id]?.find(U=>U.token===m.symbol)?.holding||0,[i,m,h]),{fromAccounts:he,toAccounts:K}=Ri.useMemo(()=>f?{fromAccounts:r?[r,...F||[]]:[],toAccounts:a?.id===S?F:[]}:{fromAccounts:[],toAccounts:[]},[f,S,r,F,a]);Ri.useEffect(()=>{if(!S)return;let R={id:S,description:t("common.mainAccount"),holding:[]};l(R),I.refresh().then(O=>{d(O),l({...R,holding:O[S]});});},[t,S]),Ri.useEffect(()=>{s(f?r:F?.find(R=>R.id===w));},[f,r,F,w]),Ri.useEffect(()=>{if(f){let R=F?.[0],O=e.toAccountId&&F?.find(U=>U.id===e.toAccountId)||R;O&&c(O);}else c(r);},[e?.toAccountId,f,r,F]),Ri.useEffect(()=>{let R=y?.map(O=>({symbol:O.token,precision:O.decimals}));if(R?.length){R.sort((U,$)=>U.symbol==="USDC"?-1:$.symbol==="USDC"?1:0);let O=R?.find(U=>U.symbol===e.token);u(R),b(O||R?.[0]||or);}},[y,e.token]);let Ne=Ri.useCallback(R=>{s(R);let O=F?.[0];if(R?.id===S){c(O);return}if(R?.id&&R?.id!==S){c(r);return}},[S,r,F]),we=Ri.useCallback(R=>{c(R);},[]),me=Ri.useCallback(()=>{s(i),c(a);},[a,i]);return {networkId:g,onTransfer:se,quantity:n,amount:ie,onQuantityChange:o,maxQuantity:P,tokens:p,token:m,onTokenChange:b,disabled:ge,submitting:C,hintMessage:ce,inputStatus:Z,hasPositions:Q,onSettlePnl:M,unsettledPnL:te,toAccountAsset:ye,fromAccount:a,toAccount:i,fromAccounts:he,onFromAccountChange:Ne,toAccounts:K,onToAccountChange:we,onExchange:me,isMainAccount:f}};function Wp(e){let{quantity:t,maxQuantity:n,unsettledPnL:o=0}=e,{t:a}=orderlyI18n.useTranslation(),[s,i]=Ri.useState("default"),[c,r]=Ri.useState();return Ri.useEffect(()=>{if(!t){i("default"),r("");return}let l=new orderlyUtils.Decimal(t);o<0?l.gt(n)?(i("error"),r(a("transfer.insufficientBalance"))):(i("default"),r("")):l.gt(n)?(i("error"),r(a("transfer.insufficientBalance"))):l.gt(new orderlyUtils.Decimal(n).minus(o))&&l.lessThanOrEqualTo(n)?(i("warning"),r(a("settle.settlePnl.warning"))):(i("default"),r(""));},[t,n]),{inputStatus:s,hintMessage:c}}var Vp="TransferDialogId",zp="TransferSheetId",qp=e=>{let t=rr({toAccountId:e.toAccountId,token:e.token,close:e.close});return jsxRuntime.jsx(tr,{...t})},ri=e=>jsxRuntime.jsx(qp,{close:e.close,toAccountId:e.toAccountId,token:e.token});orderlyUi.registerSimpleDialog(Vp,ri,{size:"md",classNames:{content:"oui-border oui-border-line-6"},title:()=>orderlyI18n.i18n.t("common.transfer")});orderlyUi.registerSimpleSheet(zp,ri,{title:()=>orderlyI18n.i18n.t("common.transfer")});var ii=e=>{let{disabled:t,loading:n,networkId:o,onConvert:a}=e,{t:s}=orderlyI18n.useTranslation();return jsxRuntime.jsx(orderlyUi.Box,{className:"oui-w-full lg:oui-w-auto lg:oui-min-w-[184px]",children:jsxRuntime.jsx(orderlyUiConnector.AuthGuard,{status:orderlyTypes.AccountStatusEnum.EnableTrading,networkId:o,buttonProps:{fullWidth:true,size:{initial:"md",lg:"lg"}},children:jsxRuntime.jsx(orderlyUi.Button,{fullWidth:true,disabled:t,loading:n,size:{initial:"md",lg:"lg"},onClick:a,children:s("transfer.convert")})})})};var ed=e=>e.reduce((t,n)=>(n.token?.toUpperCase()==="USDC"?t.usdc.push(n):t.others.push(n),t),{usdc:[],others:[]}),ai=e=>{let{defaultValue:t}=e,o=orderlyHooks.useConfig().get("networkId"),[,{findByChainId:a}]=orderlyHooks.useChains(o,{pick:"network_infos",filter:d=>d.network_infos?.bridge_enable||d.network_infos?.bridgeless}),[s,i]=Ri.useState(),[c,r]=Ri.useState(),[l,p]=Ri.useState([]),u=orderlyHooks.useTokensInfo(),m=a(orderlyTypes.Arbitrum.id),b=m?.network_infos?.chain_id,h=Ri.useMemo(()=>u.filter(d=>d.on_chain_swap).map(d=>{let g=m?.token_infos?.find(({symbol:T})=>T===d.token);return {...d,symbol:d.token,address:g?.address,decimals:d.chain_details[0]?.decimals,precision:d.decimals}}),[m?.token_infos,u]);return Ri.useEffect(()=>{let{usdc:d,others:g}=ed(h);i(()=>{if(t){let T=g.find(({token:f})=>f===t);return T||g[0]}return g[0]}),p(g),r(d[0]);},[t,h]),{chainId:b,sourceToken:s,sourceTokens:l,onSourceTokenChange:i,targetToken:c}};var {calcMinimumReceived:pd}=orderlyPerp.account,dd="orderly_convert_slippage",fd=(e,t)=>new orderlyUtils.Decimal(e).mul(new orderlyUtils.Decimal(10).pow(t)).toFixed(0),zt=(e,t)=>new orderlyUtils.Decimal(e).div(new orderlyUtils.Decimal(10).pow(t)).toString(),ar=e=>{let{token:t,close:n}=e,{t:o}=orderlyI18n.useTranslation(),[a,s]=Ri.useState(false),c=orderlyHooks.useConfig().get("networkId"),[r,l]=Ri.useState(""),{wrongNetwork:p}=orderlyReactApp.useAppContext(),{wallet:u}=orderlyHooks.useWalletConnector(),{sourceToken:m,sourceTokens:b,onSourceTokenChange:h,targetToken:d,chainId:g}=ai({defaultValue:t}),T=Ri.useMemo(()=>{let P={...m,precision:m?.decimals??6};return P.token==="ETH"&&(!P.address||P.address===orderlyTypes.nativeTokenAddress)&&(P.address=orderlyTypes.nativeETHAddress),P},[m]),{walletName:f,address:I}=Ri.useMemo(()=>({walletName:u?.label,address:u?.accounts?.[0].address}),[u]),y=P=>{l(P);},[k,C]=orderlyHooks.useLocalStorage(dd,1),{maxAmount:A,convert:x}=orderlyHooks.useConvert({token:T.token}),F=async()=>{if(!a)return s(true),x({amount:Number(r),slippage:new orderlyUtils.Decimal(k).div(100).toNumber()}).then(()=>{orderlyUi.toast.success(o("transfer.convert.completed")),n?.(),l("");}).catch(P=>{orderlyUi.toast.error(P.message?.includes("user rejected")?o("transfer.convert.failed"):P.message);}).finally(()=>{s(false);})},[S,{data:w,isMutating:v}]=orderlyHooks.useOdosQuote();Ri.useEffect(()=>{r&&g&&T.address&&d?.address&&S({chainId:g,inputTokens:[{amount:fd(r,T.decimals),tokenAddress:T.address}],outputTokens:[{proportion:1,tokenAddress:d.address}]});},[r,T,d,g,S]);let B=Ri.useMemo(()=>!w||v?"-":w?.outAmounts[0],[w,v]),M=Ri.useMemo(()=>!w||v?"-":new orderlyUtils.Decimal(zt(w.outAmounts[0],d?.decimals??6)).div(zt(w.inAmounts[0],T.decimals)).toString(),[v,w,d?.decimals,T?.decimals]),D=Ri.useMemo(()=>!w||v?0:pd({amount:w?.outAmounts[0],slippage:Number(k)}),[w,v,k]),_=orderlyHooks.useComputedLTV(),W=orderlyHooks.useComputedLTV({input:Number(r),token:m?.token}),z=!r||Number(r)===0,{hasPositions:Q,onSettlePnl:te}=dt();return {walletName:f,address:I,quantity:r,onQuantityChange:y,token:T,sourceTokens:b,onSourceTokenChange:h,targetToken:d,balanceRevalidating:false,maxQuantity:A,disabled:z,loading:a,wrongNetwork:p,onConvert:F,hasPositions:Q,onSettlePnl:te,networkId:c,slippage:k,onSlippageChange:C,convertRate:M,minimumReceived:D,outAmounts:B,isQuoteLoading:v,currentLTV:_,nextLTV:W}};var cr=e=>{let{loading:t,disabled:n,quantity:o,onQuantityChange:a,maxQuantity:s,token:i,targetToken:c,sourceTokens:r,onSourceTokenChange:l,onConvert:p,slippage:u,onSlippageChange:m,convertRate:b,outAmounts:h,minimumReceived:d,isQuoteLoading:g,currentLTV:T,nextLTV:f,networkId:I,balanceRevalidating:y}=e;return jsxRuntime.jsxs(orderlyUi.Box,{className:orderlyUi.textVariants({weight:"semibold"}),children:[jsxRuntime.jsxs(orderlyUi.Box,{className:"oui-mb-6 lg:oui-mb-8",children:[jsxRuntime.jsx(orderlyUi.Box,{mt:3,mb:1,children:jsxRuntime.jsx(j,{value:o,onValueChange:a,token:i,tokens:r,onTokenChange:l})}),jsxRuntime.jsx(ae,{token:i,amount:o,maxQuantity:s.toString(),loading:y,onClick:()=>{a(s.toString());}}),jsxRuntime.jsx(ue,{}),jsxRuntime.jsx(j,{readOnly:true,loading:g,token:c,value:g||!o||Number.isNaN(Number(h))?"":zt(h,c?.decimals??6)}),jsxRuntime.jsxs(orderlyUi.Flex,{direction:"column",itemAlign:"start",mt:2,gap:1,children:[jsxRuntime.jsx(It,{indexPrice:g||!o||Number.isNaN(Number(b))?"-":b,sourceSymbol:i?.token,targetSymbol:c?.token}),jsxRuntime.jsx(ot,{value:u,onValueChange:m}),jsxRuntime.jsx(Zt,{symbol:c?.token||"",precision:c?.decimals??6,value:g||!o||Number.isNaN(Number(d))?"-":zt(d.toString(),c?.decimals??6)}),jsxRuntime.jsx(ze,{showDiff:typeof o<"u"&&Number(o)>0,currentLtv:T,nextLTV:f}),jsxRuntime.jsx(vt,{dstGasFee:"0"})]})]}),jsxRuntime.jsx(orderlyUi.Flex,{itemAlign:"center",justify:"center",children:jsxRuntime.jsx(ii,{networkId:I,disabled:n,loading:t,onConvert:p})})]})};var wd="ConvertDialogId",bd="ConvertSheetId",mr=e=>{let t=ar(e);return jsxRuntime.jsx(cr,{...t})};orderlyUi.registerSimpleDialog(wd,mr,{size:"md",classNames:{content:"oui-border oui-border-line-6"},title:()=>orderlyI18n.i18n.t("transfer.convert")});orderlyUi.registerSimpleSheet(bd,mr,{title:()=>orderlyI18n.i18n.t("transfer.convert")});var dr=e=>{let{canTrade:t,className:n,classNames:o,pendingCount:a,completedCount:s}=e;return !t||a===0&&s===0?null:jsxRuntime.jsxs(orderlyUi.Flex,{direction:"column",gapY:1,width:"100%",className:orderlyUi.cn(n,o?.root),children:[jsxRuntime.jsx(di,{className:o?.items,count:a,status:orderlyTypes.AssetHistoryStatusEnum.PENDING,onClick:e.onClick,estimatedTime:e.estimatedTime,onClose:e.onClose}),jsxRuntime.jsx(di,{className:o?.items,count:s,status:orderlyTypes.AssetHistoryStatusEnum.COMPLETED,onClick:e.onClick,onClose:e.onClose})]})},di=e=>{let{t}=orderlyI18n.useTranslation(),{count:n,status:o,estimatedTime:a}=e,s=Ri.useMemo(()=>o===orderlyTypes.AssetHistoryStatusEnum.PENDING?n>1?t("transfer.deposit.status.pending.multiple"):t("transfer.deposit.status.pending.one"):n>1?t("transfer.deposit.status.completed.multiple"):t("transfer.deposit.status.completed.one"),[t,o,n]);if(n===0)return null;let i=typeof e.onClick=="function",c=()=>o===orderlyTypes.AssetHistoryStatusEnum.PENDING&&n===1&&a?jsxRuntime.jsxs(orderlyUi.Text,{size:"2xs",color:"primary",children:["~ ",a]}):jsxRuntime.jsx(Sd,{children:e.count});return jsxRuntime.jsxs(orderlyUi.Flex,{intensity:900,gapX:1,width:"100%",r:"full",className:orderlyUi.cn("oui-px-3 lg:oui-px-0","oui-py-2 lg:oui-py-0",e.className),children:[jsxRuntime.jsxs(orderlyUi.Flex,{justify:"between",itemAlign:"center",className:orderlyUi.cn("oui-font-normal","oui-text-base-contrast-80 hover:oui-text-base-contrast",i&&"oui-cursor-pointer"),width:"100%",onClick:e.onClick,children:[jsxRuntime.jsxs(orderlyUi.Flex,{gapX:1,children:[jsxRuntime.jsx(vd,{className:o===orderlyTypes.AssetHistoryStatusEnum.COMPLETED?"oui-bg-success":"oui-bg-primary"}),jsxRuntime.jsx(orderlyUi.Text,{size:"2xs",children:s})]}),c()]}),jsxRuntime.jsx(orderlyUi.CloseIcon,{size:14,opacity:1,className:"oui-text-base-contrast-54 hover:oui-text-base-contrast",onClick:r=>{r.preventDefault(),r.stopPropagation(),e.onClose(o);}})]})},Sd=e=>jsxRuntime.jsx(orderlyUi.Flex,{justify:"center",itemAlign:"center",r:"full",width:18,height:18,className:orderlyUi.cn("oui-bg-line-12",e.className),children:jsxRuntime.jsx(orderlyUi.Text,{size:"3xs",intensity:80,children:e.children})}),vd=e=>jsxRuntime.jsx("div",{className:orderlyUi.cn("oui-mx-[5px] oui-size-2 oui-shrink-0 oui-rounded-full",e.className)});var Fd=5;async function fi(e){let t=new ethers.ethers.JsonRpcProvider(e.network_infos.public_rpc_url),n=await t.getBlockNumber(),a=(await Promise.all(Array.from({length:Fd},(i,c)=>t.getBlock(n-c)))).filter(i=>i?.timestamp!=null).map(i=>Number(i?.timestamp));if(a.length<2)return 0;let s=0;for(let i=0;i<a.length-1;i++){let c=a[i]-a[i+1];s+=c;}return s/(a.length-1)}async function gi(e,t){if(!t)return 0;let n=new orderlyDefaultSolanaAdapter.DefaultSolanaWalletAdapter;n.active({address:t.accounts[0].address,chain:{id:e.network_infos.chain_id},provider:t.provider});let o=await n.connection.getRecentPerformanceSamples(60),a=0,s=0;for(let i of o)if(i.numSlots>0&&i.samplePeriodSecs>0){let c=i.samplePeriodSecs/i.numSlots;a+=c,s++;}return a/s}async function yi(e){let{chainId:t,chain:n,wallet:o}=e;return orderlyUtils.isSolana(t)?gi(n,o):fi(n)}var hi=[{inputs:[{internalType:"address",name:"_oapp",type:"address"},{internalType:"uint32",name:"_remoteEid",type:"uint32"}],name:"getAppUlnConfig",outputs:[{components:[{internalType:"uint64",name:"confirmations",type:"uint64"},{internalType:"uint8",name:"requiredDVNCount",type:"uint8"},{internalType:"uint8",name:"optionalDVNCount",type:"uint8"},{internalType:"uint8",name:"optionalDVNThreshold",type:"uint8"},{internalType:"address[]",name:"requiredDVNs",type:"address[]"},{internalType:"address[]",name:"optionalDVNs",type:"address[]"}],internalType:"struct UlnConfig",name:"",type:"tuple"}],stateMutability:"view",type:"function"}];var Pd={1:30101,10:30111,42161:30110,137:30109,8453:30184,59144:30183,534352:30214,324:30165,1101:30158,169:30217,5e3:30181,81457:30243,252:30255,34443:30260,167e3:30290,7777777:30195,11155420:40232,421614:40231,84532:40245,300:40305,11155111:40161,17e3:40217,56:30102,204:30202,97:40102,43114:30106,43113:40106,250:30112,100:30145,42220:30125,16666e5:30116,25:30359,388:30360,1088:30151,1284:30126,1285:30167,592:30210,3776:30257,7700:30159,122:30138,2222:30177,82:30176,1313161554:30211,53935:30115,7979:30149,666666666:30267,432204:30118,19011:30265,7332:30215,1992:30182,1559:30173,40:30199,710420:30238,88:30196,37:30216,660279:30236,111188:30237,2525:30234,1380012617:30235,148:30230,2046399126:30273,291:30213,1116:30153,1030:30212,14:30295,1625:30294,81:30285,8217:30150,66:30155,4337:30198,5151706:30197,957:30311,2818:30322,"":30325,6001:30293,7560:30283,8822:30284,1996:30278,1329:30280,60808:30279,5165:30363,69e3:30372,33139:30312,80094:30362,11501:30317,200901:30314,3637:30376,81224:30323,12739:30366,68770:30315,41923:30328,747:30336,42793:30292,1300:30342,2345:30361,43419:30371,295:30316,43111:30329,999:30367,57073:30339,747474:30375,232:30373,1890:30309,1135:30321,4200:30266,6900:30369,8227:30341,3338:30302,98866:30370,1729:30313,30:30333,1868:30340,146:30332,50104:30334,1514:30364,964:30374,55244:30327,1923:30335,239:30377,130:30320,1480:30330,480:30319,196:30274,94524:30291,50:30365,48900:30303,810180:30301,2741:30324,42170:30175,21e6:30331,998:40362,80069:40371,10143:40204,80002:40267,101:30168,103:40168,900900900:30168,901901901:40168,728126428:30420,2494104990:40420};function wi(e){return Pd[e]}async function xi(e){let t=e.network_infos.chain_id,n=e.network_infos.mainnet,o=n?"https://rpc.orderly.network":"https://testnet-rpc.orderly.org",a=n?"0xCFf08a35A5f27F306e2DA99ff198dB90f13DEF77":"0x3013C32e5F45E69ceA9baD4d96786704C2aE148c",s=wi(t),i="0x0000000000000000000000000000000000000000",c=new ethers.ethers.JsonRpcProvider(o),l=await new ethers.ethers.Contract(a,hi,c).getAppUlnConfig(i,s);return Number(l.confirmations||0)}var Si=e=>{let[t,n]=Ri.useState(0),[o,a]=Ri.useState(0),s=Ri.useRef({}),i=Ri.useRef({}),[,{findByChainId:c}]=orderlyHooks.useChains(),{wallet:r}=orderlyHooks.useWalletConnector(),l=Ri.useMemo(()=>{if(!e)return;let u=typeof e=="number"?e:Number.parseInt(e);return c(u)},[e,c]);return Ri.useEffect(()=>{if(!l||!r)return;let u=l.network_infos.chain_id;s.current[u]?n(s.current[u]):yi({chainId:u,chain:l,wallet:r}).then(m=>{console.log("average block time",u,m),n(m),s.current[u]=m;}).catch(m=>{console.error("getBlockTime error",m);}),i.current[u]?a(i.current[u]):xi(l).then(m=>{console.log("confirmations",u,m),a(m),i.current[u]=m;}).catch(m=>{console.error("getChainConfirmations error",m);});},[l,r]),Ri.useMemo(()=>t&&o?t*o:0,[t,o])};function Qn(){let e=Date.now();return [e-1e3*60*60,e]}function gr(){let[e,t]=Ri.useState(Qn()),[n,o]=Ri.useState(Qn()),[a,s]=Ri.useState(0),[i,c]=Ri.useState(0),[r,l]=Ri.useState(0),[p,u]=Ri.useState([]),[m,b]=orderlyHooks.useLocalStorage("orderly_deposit_status_hide_notification_time",{[orderlyTypes.AssetHistoryStatusEnum.PENDING]:0,[orderlyTypes.AssetHistoryStatusEnum.COMPLETED]:0}),{state:h}=orderlyHooks.useAccount(),d=h.status===orderlyTypes.AccountStatusEnum.EnableTrading||h.status===orderlyTypes.AccountStatusEnum.EnableTradingWithoutConnected,{chainId:g,blockTime:T}=Ri.useMemo(()=>d&&p.length===1?{chainId:p[0].chain_id,blockTime:p[0].block_time}:{chainId:void 0,blockTime:void 0},[d,p]),f=Si(g),I=Ri.useMemo(()=>{if(f&&T){let w=T/1e3+f-Date.now()/1e3;return console.log("transactionTime",f,w),Ud(w)}return 0},[f,T]),[y,{isLoading:k}]=orderlyHooks.useAssetsHistory({startTime:e[0],endTime:e[1],page:1,pageSize:200,side:"DEPOSIT"},{shouldUpdateOnWalletChanged:()=>false}),[C]=orderlyHooks.useTransferHistory({dataRange:n,side:"IN",size:200,page:1,main_sub_only:false}),A=orderlyHooks.useDebouncedCallback(w=>{t(Qn());},300);orderlyHooks.useWalletTopic({onMessage(w){let{side:v,transStatus:B}=w;v===orderlyTypes.AssetHistorySideEnum.DEPOSIT&&(B===orderlyTypes.AssetHistoryStatusEnum.PENDING||B===orderlyTypes.AssetHistoryStatusEnum.COMPLETED)&&(console.log("deposit status updated",w),A(w));}});let x=orderlyHooks.useDebouncedCallback(w=>{o(Qn());},300);orderlyHooks.useBalanceTopic({onMessage(w){console.log("balance updated",w),x(w);}}),Ri.useEffect(()=>{if(!y||k)return;let w=m[orderlyTypes.AssetHistoryStatusEnum.PENDING],v=m[orderlyTypes.AssetHistoryStatusEnum.COMPLETED],B=y.filter(D=>D.trans_status===orderlyTypes.AssetHistoryStatusEnum.PENDING);w&&(B=B.filter(D=>D.created_time>w));let M=y.filter(D=>D.trans_status===orderlyTypes.AssetHistoryStatusEnum.COMPLETED);v&&(M=M.filter(D=>D.created_time>v)),s(B?.length||0),c(M?.length||0),u(B||[]);},[y,k,m]),Ri.useEffect(()=>{if(!C)return;let w=m[orderlyTypes.AssetHistoryStatusEnum.COMPLETED],v=w?C.filter(B=>B.created_time>w):C;l(v.length);},[C,m]);let F=Ri.useMemo(()=>i+r,[i,r]),S=Ri.useCallback(w=>{b({...m,[w]:Date.now()});},[m]);return {pendingCount:a,completedCount:F,canTrade:d,estimatedTime:I,onClose:S}}function Ud(e){let t=Math.max(30,e),n=Math.floor(t/60),o=t%60;return o>0&&o<=30?o=30:o>30&&(n+=1,o=0),n>0?o>0?`${n} m ${o} s`:`${n} m`:`${o} s`}var Gd=e=>{let t=gr();return jsxRuntime.jsx(dr,{...t,...e})};
24
+ var Kn=()=>{let{data:e,error:t,isLoading:n}=orderlyHooks.useQuery("/v1/public/auto_convert_threshold",{errorRetryCount:3,revalidateOnFocus:false});return {ltv_threshold:Ri.useMemo(()=>!e||n?"-":`${new orderlyUtils.Decimal(e.ltv_threshold).mul(100).toNumber()}%`,[]),negative_usdc_threshold:e?.negative_usdc_threshold,isLoading:n,error:t}};var Bi=Ri__default.default.forwardRef((e,t)=>jsxRuntime.jsx("svg",{width:12,height:12,viewBox:"0 0 12 12",fill:"currentColor",xmlns:"http://www.w3.org/2000/svg",focusable:false,ref:t,...e,children:jsxRuntime.jsx("path",{d:"M5.999 1.007a5 5 0 1 0 0 10 5 5 0 0 0 0-10m0 2.5a.5.5 0 1 1 0 1 .5.5 0 0 1 0-1m0 1.5a.5.5 0 0 1 .5.5v2.5a.5.5 0 0 1-1 0v-2.5a.5.5 0 0 1 .5-.5"})})),to=e=>e>=0&&e<50?"oui-text-success":e>=50&&e<80?"oui-text-warning":e>=80?"oui-text-danger":"",Wi=e=>{let{isLoading:t,ltv_threshold:n}=e,{t:o}=orderlyI18n.useTranslation();return jsxRuntime.jsxs(orderlyUi.Box,{className:"oui-w-72 oui-max-w-72",children:[jsxRuntime.jsx(orderlyUi.Text,{size:"2xs",intensity:80,children:o("transfer.LTV.description",{threshold:t?"-":n})})," ",jsxRuntime.jsx("a",{href:"https://orderly.network/docs/introduction/trade-on-orderly/multi-collateral",target:"_blank",rel:"noreferrer",className:"oui-border-b oui-border-dashed oui-border-line-12 oui-text-2xs oui-text-primary",children:o("tradingLeaderboard.learnMore")})]})},wr=e=>{let{t}=orderlyI18n.useTranslation(),{currentLtv:n,nextLTV:o,showDiff:a,ltv_threshold:s,isLoading:i}=e;return jsxRuntime.jsxs(orderlyUi.Flex,{width:"100%",itemAlign:"center",justify:"between",children:[jsxRuntime.jsxs(orderlyUi.Flex,{justify:"start",itemAlign:"center",children:[jsxRuntime.jsx(orderlyUi.Text,{size:"2xs",intensity:36,children:t("transfer.LTV")}),jsxRuntime.jsx(orderlyUi.Tooltip,{className:"oui-p-2",content:jsxRuntime.jsx(Wi,{isLoading:i,ltv_threshold:s}),children:jsxRuntime.jsx(Bi,{className:"oui-ml-[2px] oui-cursor-pointer oui-text-base-contrast-36"})})]}),a?jsxRuntime.jsxs(orderlyUi.Flex,{itemAlign:"center",justify:"between",gap:1,children:[jsxRuntime.jsxs(orderlyUi.Text,{size:"2xs",className:orderlyUi.cn("oui-font-semibold",to(n)),children:[n,"%"]}),"\u2192",jsxRuntime.jsxs(orderlyUi.Text,{size:"2xs",className:orderlyUi.cn("oui-font-semibold",to(o)),children:[o,"%"]})]}):jsxRuntime.jsxs(orderlyUi.Text,{size:"2xs",className:orderlyUi.cn("oui-font-semibold",to(n)),children:[n,"%"]})]})};var ze=e=>{let t=Kn();return jsxRuntime.jsx(wr,{...e,...t})};var no=(o=>(o[o.Deposit=0]="Deposit",o[o.Approve=1]="Approve",o[o.ApproveAndDeposit=2]="ApproveAndDeposit",o))(no||{}),Ct=(n=>(n.Wallet="wallet",n.Account="accountId",n))(Ct||{});var St=e=>{let{disabled:t,loading:n,actionType:o,symbol:a="USDC",onDeposit:s,onApprove:i,onApproveAndDeposit:c,networkId:r}=e,{t:l}=orderlyI18n.useTranslation(),p=Ri.useMemo(()=>({2:{children:`${l("transfer.deposit.approve")} & ${l("common.deposit")}`,onClick:c},0:{children:l("common.deposit"),onClick:s,"data-testid":"oui-testid-deposit-dialog-deposit-btn"}})[o],[i,s,o,a,l]),u={initial:"md",lg:"lg"};return jsxRuntime.jsx(orderlyUi.Box,{className:"oui-w-full lg:oui-w-auto lg:oui-min-w-[184px]",children:jsxRuntime.jsx(orderlyUiConnector.AuthGuard,{status:orderlyTypes.AccountStatusEnum.EnableTrading,networkId:r,buttonProps:{fullWidth:true,size:u},children:jsxRuntime.jsx(orderlyUi.Button,{fullWidth:true,disabled:t,loading:n,size:u,...p})})})};var ae=e=>{let{amount:t,maxQuantity:n,token:o,loading:a}=e,{t:s}=orderlyI18n.useTranslation(),i=o?.display_name||o?.symbol||"",c=o?.precision??o?.decimals??2;return jsxRuntime.jsxs(orderlyUi.Flex,{px:2,children:[t!==void 0&&jsxRuntime.jsxs(orderlyUi.Text,{size:"2xs",intensity:36,children:["$",jsxRuntime.jsx(orderlyUi.Text.numeral,{dp:2,padding:false,rm:orderlyUtils.Decimal.ROUND_DOWN,children:t})]}),jsxRuntime.jsxs(orderlyUi.Flex,{gapX:2,itemAlign:"center",className:"oui-ml-auto",children:[jsxRuntime.jsxs(orderlyUi.Flex,{gapX:1,itemAlign:"center",children:[jsxRuntime.jsx(orderlyUi.Text,{size:"2xs",intensity:36,children:`${s("common.available")}: `}),a?jsxRuntime.jsx(orderlyUi.Spinner,{size:"sm"}):jsxRuntime.jsx(orderlyUi.Text.numeral,{size:"2xs",intensity:36,rm:orderlyUtils.Decimal.ROUND_DOWN,dp:c,padding:false,"data-testid":"oui-testid-withdraw_deposit-dialog-available-value",children:n}),jsxRuntime.jsx(orderlyUi.Text,{size:"2xs",intensity:36,children:` ${i}`})]}),jsxRuntime.jsx(orderlyUi.Text,{size:"2xs",color:"primary",className:"oui-cursor-pointer oui-select-none",onClick:e.onClick,children:s("common.max")})]})]})};var qe=()=>{let{t:e}=orderlyI18n.useTranslation(),{appIcons:t}=orderlyReactApp.useAppConfig(),n=orderlyHooks.useConfig("brokerName"),o=Ri.useMemo(()=>{let{secondary:a}=t||{};if(!a?.img&&a?.component)return null;if(a?.img)return jsxRuntime.jsx("img",{src:a?.img,className:"oui-w-5 oui-h-5"});if(a?.component)return jsxRuntime.jsx(jsxRuntime.Fragment,{children:a.component})},[t]);return jsxRuntime.jsxs(orderlyUi.Flex,{justify:"between",children:[jsxRuntime.jsx(orderlyUi.Text,{size:"sm",intensity:98,children:e("transfer.brokerAccount",{brokerName:n})}),o]})};var $t=e=>jsxRuntime.jsx("svg",{width:"12",height:"12",viewBox:"0 0 12 12",fill:"currentColor",xmlns:"http://www.w3.org/2000/svg",...e,children:jsxRuntime.jsx("path",{d:"M10.997 8.004a.5.5 0 0 0-.14-.36l-1.86-1.843-.703.703.984 1h-7.28a.5.5 0 0 0 0 1h7.28l-.984 1 .703.703 1.86-1.844a.5.5 0 0 0 .14-.36m-.5-4a.5.5 0 0 0-.5-.5H2.716l.984-1-.703-.703-1.859 1.843a.515.515 0 0 0 0 .719l1.86 1.844.702-.703-.984-1h7.281a.5.5 0 0 0 .5-.5"})}),xr=e=>jsxRuntime.jsx("svg",{width:"20",height:"21",viewBox:"0 0 20 21",fill:"currentColor",xmlns:"http://www.w3.org/2000/svg",...e,children:jsxRuntime.jsx("path",{d:"M9.994 5.51a.83.83 0 0 0-.832.833v6.295l-2.498-2.471-1.17 1.17 3.902 3.929a.84.84 0 0 0 .599.244.84.84 0 0 0 .597-.244l3.903-3.928-1.171-1.171-2.498 2.471V6.343a.83.83 0 0 0-.832-.833"})});var Tr=e=>jsxRuntime.jsx("svg",{width:"12",height:"12",viewBox:"0 0 12 12",fill:"currentColor",xmlns:"http://www.w3.org/2000/svg",...e,children:jsxRuntime.jsx("path",{d:"M6.00342 1.49561C4.97642 1.49561 3.99542 1.84011 3.20642 2.46461C2.98992 2.63561 2.95692 2.9511 3.12842 3.1676C3.29992 3.3841 3.61492 3.4171 3.83142 3.2456C4.44492 2.7601 5.20392 2.4956 6.00342 2.4956C7.93642 2.4956 9.50342 4.0626 9.50342 5.9956H8.50342L10.0034 7.9956L11.5034 5.9956H10.5034C10.5034 3.5101 8.48892 1.49561 6.00342 1.49561ZM2.00342 3.9956L0.503418 5.9956H1.50342C1.50342 8.4811 3.51792 10.4956 6.00342 10.4956C7.03092 10.4956 8.01142 10.1516 8.80042 9.52659C9.01692 9.35559 9.04992 9.0401 8.87842 8.8236C8.70692 8.6071 8.39191 8.5741 8.17542 8.7456C7.56142 9.2316 6.80342 9.4956 6.00342 9.4956C4.07042 9.4956 2.50342 7.9286 2.50342 5.9956H3.50342L2.00342 3.9956Z"})}),kr=e=>jsxRuntime.jsx("svg",{width:"20",height:"21",viewBox:"0 0 20 21",fill:"currentColor",xmlns:"http://www.w3.org/2000/svg",...e,children:jsxRuntime.jsx("path",{d:"M12.385 4.565a.6.6 0 0 0-.427.167L9.764 6.944l.837.837 1.19-1.17v8.66a.595.595 0 0 0 1.19 0v-8.66l1.189 1.17.836-.837-2.193-2.212a.6.6 0 0 0-.428-.167m-4.758.595a.595.595 0 0 0-.595.595v8.661l-1.19-1.17-.836.836L7.2 16.294a.61.61 0 0 0 .855 0l2.194-2.212-.837-.836-1.19 1.17V5.755a.595.595 0 0 0-.594-.595"})});var Ue=e=>{let{chains:t,value:n,wrongNetwork:o,loading:a}=e,[s,i]=Ri.useState(false),{t:c}=orderlyI18n.useTranslation(),r=o||t?.length>1,l=o?jsxRuntime.jsx(orderlyUi.Flex,{width:18,height:18,intensity:100,r:"full",justify:"center",itemAlign:"center",children:jsxRuntime.jsx(orderlyUi.Text,{size:"2xs",intensity:80,children:"U"})}):jsxRuntime.jsx(orderlyUi.ChainIcon,{className:"oui-size-[18px]",chainId:n?.id}),p=o?"Unknown":n?.info?.network_infos?.name,u=()=>{if(a)return jsxRuntime.jsx(orderlyUi.Spinner,{size:"sm"});if(r)return jsxRuntime.jsx($t,{className:"oui-text-base-contrast-54"})},m=jsxRuntime.jsxs(orderlyUi.Flex,{intensity:500,className:orderlyUi.cn("oui-rounded-t-xl oui-rounded-b-sm oui-border oui-border-line",r?"oui-cursor-pointer":"oui-cursor-auto"),height:54,px:3,justify:"between",itemAlign:"center",children:[jsxRuntime.jsxs("div",{children:[jsxRuntime.jsx(orderlyUi.Flex,{children:jsxRuntime.jsx(orderlyUi.Text,{size:"2xs",intensity:54,children:c("transfer.network")})}),jsxRuntime.jsxs(orderlyUi.Flex,{gapX:1,children:[l,jsxRuntime.jsx(orderlyUi.Text,{size:"sm",intensity:80,children:p})]})]}),u()]}),b=t.map((h,d)=>{let g=h.chain_id===n?.id;return jsxRuntime.jsxs(orderlyUi.Flex,{px:2,r:"base",justify:"between",className:orderlyUi.cn("oui-deposit-network-select-item","hover:oui-bg-base-5 oui-h-[30px] oui-cursor-pointer",g&&"oui-bg-base-5",d!==0&&"oui-mt-[2px]"),onClick:async()=>{i(false),await e.onValueChange(h);},children:[jsxRuntime.jsxs(orderlyUi.Flex,{gapX:1,itemAlign:"center",children:[jsxRuntime.jsx(orderlyUi.ChainIcon,{className:"oui-size-[18px]",chainId:h.chain_id}),jsxRuntime.jsx(orderlyUi.Text,{size:"2xs",intensity:54,children:h.name})]}),g&&jsxRuntime.jsx(orderlyUi.Box,{width:4,height:4,r:"full",className:"oui-deposit-network-select-active-dot oui-bg-[linear-gradient(270deg,#59B0FE_0%,#26FEFE_100%)]"})]},h.chain_id)});return jsxRuntime.jsxs(orderlyUi.DropdownMenuRoot,{open:r?s:false,onOpenChange:i,children:[jsxRuntime.jsx(orderlyUi.DropdownMenuTrigger,{asChild:true,children:m}),jsxRuntime.jsx(orderlyUi.DropdownMenuPortal,{children:jsxRuntime.jsx(orderlyUi.DropdownMenuContent,{onCloseAutoFocus:h=>h.preventDefault(),align:"start",sideOffset:2,className:orderlyUi.cn("oui-deposit-token-select-dropdown-menu-content","oui-bg-base-8 oui-p-1","oui-w-[var(--radix-dropdown-menu-trigger-width)]","oui-rounded-md oui-select-none"),children:jsxRuntime.jsx(orderlyUi.ScrollArea,{className:"oui-h-[254px]",children:jsxRuntime.jsx("div",{children:b})})})})]})};var vr=e=>{let{t}=orderlyI18n.useTranslation(),{value:n,precision:o}=e;return jsxRuntime.jsxs(orderlyUi.Flex,{width:"100%",itemAlign:"center",justify:"between",children:[jsxRuntime.jsx(orderlyUi.Flex,{itemAlign:"center",justify:"start",children:jsxRuntime.jsx(orderlyUi.Text,{size:"2xs",intensity:36,children:t("transfer.deposit.collateralContribution")})}),jsxRuntime.jsxs(orderlyUi.Flex,{itemAlign:"center",justify:"end",gap:1,children:[jsxRuntime.jsx(orderlyUi.Text.numeral,{dp:o,size:"2xs",rm:orderlyUtils.Decimal.ROUND_DOWN,className:orderlyUi.cn("oui-font-semibold"),padding:false,children:n}),jsxRuntime.jsx(orderlyUi.Text,{size:"2xs",intensity:36,className:"oui-select-none",children:"USDC"})]})]})};var ha=Ri__default.default.forwardRef((e,t)=>jsxRuntime.jsx("svg",{width:12,height:12,viewBox:"0 0 12 12",fill:"currentColor",xmlns:"http://www.w3.org/2000/svg",focusable:false,ref:t,...e,children:jsxRuntime.jsx("path",{d:"M5.999 1.007a5 5 0 1 0 0 10 5 5 0 0 0 0-10m0 2.5a.5.5 0 1 1 0 1 .5.5 0 0 1 0-1m0 1.5a.5.5 0 0 1 .5.5v2.5a.5.5 0 0 1-1 0v-2.5a.5.5 0 0 1 .5-.5"})})),wa=()=>{let{t:e}=orderlyI18n.useTranslation();return jsxRuntime.jsxs(orderlyUi.Box,{className:"oui-w-72 oui-max-w-72",children:[jsxRuntime.jsx(orderlyUi.Text,{size:"2xs",intensity:80,children:e("portfolio.overview.column.collateralRatio.explain")})," ",jsxRuntime.jsx("a",{href:"https://orderly.network/docs/introduction/trade-on-orderly/multi-collateral",target:"_blank",rel:"noreferrer",className:"oui-border-b oui-border-dashed oui-border-line-12 oui-text-2xs oui-text-primary",children:e("tradingLeaderboard.learnMore")})]})},Ar=e=>{let{t}=orderlyI18n.useTranslation(),{value:n}=e;return jsxRuntime.jsxs(orderlyUi.Flex,{width:"100%",itemAlign:"center",justify:"between",children:[jsxRuntime.jsxs(orderlyUi.Flex,{justify:"start",itemAlign:"center",children:[jsxRuntime.jsx(orderlyUi.Text,{size:"2xs",intensity:36,children:t("portfolio.overview.column.collateralRatio")}),jsxRuntime.jsx(orderlyUi.Tooltip,{className:"oui-p-2",content:jsxRuntime.jsx(wa,{}),children:jsxRuntime.jsx(ha,{className:"oui-ml-[2px] oui-cursor-pointer oui-text-base-contrast-36"})})]}),jsxRuntime.jsx(orderlyUi.Text.numeral,{dp:2,rm:orderlyUtils.Decimal.ROUND_DOWN,coloring:true,className:"oui-font-semibold",rule:"percentages",children:n})]})};var mo=e=>jsxRuntime.jsx(Ar,{...e});var ue=({icon:e})=>jsxRuntime.jsxs(orderlyUi.Flex,{height:40,gapX:3,children:[jsxRuntime.jsx(orderlyUi.Flex,{height:1,className:"oui-flex-1 oui-bg-base-contrast-12"}),e||jsxRuntime.jsx(xr,{className:"oui-text-primary-light"}),jsxRuntime.jsx(orderlyUi.Flex,{height:1,className:"oui-flex-1 oui-bg-base-contrast-12"})]});var vt=e=>{let{dstGasFee:t,feeQty:n,feeAmount:o,dp:a,nativeSymbol:s}=e,{t:i}=orderlyI18n.useTranslation(),c=()=>{let l=jsxRuntime.jsxs("div",{className:"oui-text-2xs",children:[jsxRuntime.jsxs(orderlyUi.Flex,{gapX:1,children:[jsxRuntime.jsx(orderlyUi.Text,{size:"2xs",intensity:54,children:`${i("transfer.deposit.destinationGasFee")}: `}),jsxRuntime.jsx(orderlyUi.Text.numeral,{intensity:80,dp:a,rm:orderlyUtils.Decimal.ROUND_UP,padding:false,children:n}),jsxRuntime.jsx(orderlyUi.Text,{intensity:54,children:s})]}),jsxRuntime.jsx(orderlyUi.Box,{mt:2,children:jsxRuntime.jsx(orderlyUi.Text,{intensity:36,children:i("transfer.deposit.destinationGasFee.description")})})]});orderlyUi.modal.alert({title:i("common.fee"),message:l});},r=!!t&&t!=="0";return jsxRuntime.jsxs(orderlyUi.Text,{size:"2xs",intensity:36,className:"oui-border-dashed oui-border-b oui-border-line-12 oui-cursor-pointer",onClick:c,children:[`${i("common.fee")} \u2248 `,jsxRuntime.jsxs(orderlyUi.Text,{size:"2xs",intensity:80,children:["$",jsxRuntime.jsx(orderlyUi.Text.numeral,{dp:2,padding:false,rm:orderlyUtils.Decimal.ROUND_UP,children:o})," "]}),r&&jsxRuntime.jsxs("span",{children:["(",jsxRuntime.jsxs(orderlyUi.Text,{intensity:54,children:[jsxRuntime.jsx(orderlyUi.Text.numeral,{dp:a,padding:false,rm:orderlyUtils.Decimal.ROUND_UP,children:n}),s]}),")"]})]})};var Zt=e=>{let{t}=orderlyI18n.useTranslation(),{value:n,symbol:o,precision:a=6}=e;return jsxRuntime.jsxs(orderlyUi.Flex,{width:"100%",itemAlign:"center",justify:"between",children:[jsxRuntime.jsx(orderlyUi.Flex,{itemAlign:"center",justify:"start",children:jsxRuntime.jsx(orderlyUi.Text,{size:"2xs",intensity:36,children:t("transfer.swapDeposit.minimumReceived")})}),jsxRuntime.jsxs(orderlyUi.Flex,{itemAlign:"center",justify:"end",gap:1,children:[jsxRuntime.jsx(orderlyUi.Text.numeral,{dp:a,size:"2xs",className:"oui-select-none",intensity:80,children:n}),jsxRuntime.jsx(orderlyUi.Text,{size:"2xs",className:"oui-select-none",intensity:36,children:o})]})]})};var Fa=1e3;function _r(e,t,n){let[o,a]=Ri.useState(""),s=Ri.useRef(""),[i,c]=Ri.useState(false),r=Ri.useRef(),l=async(p=0)=>{i||typeof t!="function"||!e.address||(r.current&&clearTimeout(r.current),s.current===""&&c(true),r.current=setTimeout(async()=>{try{let u=await t(e.address,e.decimals);a(u),s.current=u,console.log("balance",e.symbol,e.address,u);}catch(u){console.error("get balance error",e.symbol,e.address,u),l(Fa);}finally{s.current!==""&&c(false);}},p));};return Ri.useEffect(()=>(n&&l(0),()=>{r.current&&clearTimeout(r.current);}),[e,n]),{balance:o,loading:i}}var Er=e=>{let{token:t,isActive:n,displayType:o,onTokenChange:a,fetchBalance:s,open:i}=e,{symbol:c,precision:r,insufficientBalance:l}=t,{balance:p,loading:u}=_r(t,s,i),m=typeof s=="function",{t:b}=orderlyI18n.useTranslation();if(o==="vaultBalance"&&l)return jsxRuntime.jsx(orderlyUi.Flex,{itemAlign:"center",justify:"between",px:2,r:"base",className:orderlyUi.cn("group","oui-h-[30px]","oui-text-2xs oui-font-semibold",n&&"oui-bg-base-5",e.index!==0&&"oui-mt-[2px]","oui-cursor-not-allowed"),children:jsxRuntime.jsxs(orderlyUi.Flex,{itemAlign:"center",gapX:1,children:[jsxRuntime.jsx(orderlyUi.TokenIcon,{name:c,className:"oui-size-[16px] oui-opacity-50"}),jsxRuntime.jsx(orderlyUi.Text,{intensity:36,children:t.label}),jsxRuntime.jsx(orderlyUi.Badge,{color:"neutral",size:"xs",children:b("transfer.withdraw.InsufficientVaultBalance")})]})},c);let h=()=>m?u?jsxRuntime.jsx(orderlyUi.Spinner,{size:"sm"}):jsxRuntime.jsx(orderlyUi.Text.numeral,{rule:"price",dp:r??2,rm:orderlyUtils.Decimal.ROUND_DOWN,className:orderlyUi.cn("oui-text-base-contrast-80 group-hover:oui-text-base-contrast-54",n&&"oui-text-base-contrast-54"),children:p}):null;return jsxRuntime.jsxs(orderlyUi.Flex,{justify:"between",px:2,r:"base",className:orderlyUi.cn("group","oui-h-[30px] hover:oui-bg-base-5","oui-text-2xs oui-font-semibold","oui-cursor-pointer",n&&"oui-bg-base-5",e.index!==0&&"oui-mt-[2px]"),onClick:()=>{a?.(t);},children:[jsxRuntime.jsxs(orderlyUi.Flex,{gapX:1,children:[jsxRuntime.jsx(orderlyUi.TokenIcon,{name:c,className:"oui-size-[16px]"}),jsxRuntime.jsx(orderlyUi.Text,{className:orderlyUi.cn("oui-text-base-contrast-54 group-hover:oui-text-base-contrast-80",n&&"oui-text-base-contrast-80"),children:t.label})]}),h()]},c)};var j=e=>{let{token:t,tokens:n=[],classNames:o,label:a,status:s,hintMessage:i,value:c,onValueChange:r,fetchBalance:l,onTokenChange:p,loading:u,placeholder:m,formatters:b,vaultBalanceList:h,displayType:d,...g}=e,{t:T}=orderlyI18n.useTranslation(),f=Ri.useRef(null),[I,y]=Ri.useState(false),[k,C]=Ri.useState(0),A=Ri.useMemo(()=>n.map(_=>{let W=h?.find(Q=>Q.token===_.symbol),z=new orderlyUtils.Decimal(W?.balance??0).lt(c?Number(c):0);return {..._,name:_.display_name||_.symbol,insufficientBalance:z}}),[n,c,h]);Ri.useEffect(()=>{let _=f?.current?.getBoundingClientRect();C(_?.width||0);},[f]);let x=_=>{let W=n.find(z=>z.symbol===_);W&&p?.(W);},S=n.length>1?I:false,w=_=>{let W=_.symbol===t?.symbol;return jsxRuntime.jsx(Er,{token:_,isActive:W,fetchBalance:l,displayType:d,onTokenChange:z=>{p?.(z),y(false);},open:S})},v=jsxRuntime.jsxs(orderlyUi.Box,{children:[jsxRuntime.jsx(orderlyUi.Box,{className:"oui-absolute oui-top-0",children:jsxRuntime.jsx(orderlyUi.Text,{size:"2xs",intensity:36,children:a||T("common.quantity")})}),u&&jsxRuntime.jsx(orderlyUi.Box,{className:"oui-absolute oui-bottom-1",children:jsxRuntime.jsx(orderlyUi.Spinner,{size:"sm"})})]}),B=jsxRuntime.jsx("div",{className:"oui-absolute oui-right-0",children:jsxRuntime.jsx(orderlyUi.Select.tokens,{open:S,onOpenChange:y,disabled:g.disabled,variant:"text",tokens:A,value:t?.display_name||t?.symbol,size:g.size,onValueChange:x,showIcon:true,optionRenderer:w,contentProps:{onCloseAutoFocus:_=>{_.preventDefault(),f.current?.focus();},onClick:_=>{_.preventDefault(),f.current?.focus();},style:{width:k},align:"end",sideOffset:5,className:"oui-border oui-border-line-6"}})}),M=jsxRuntime.jsxs(orderlyUi.Flex,{mt:1,gapX:1,px:1,children:[jsxRuntime.jsx(orderlyUi.Box,{width:4,height:4,r:"full",className:orderlyUi.cn(s==="error"&&"oui-bg-danger-light",s==="warning"&&"oui-bg-warning-light")}),jsxRuntime.jsx(orderlyUi.Text,{size:"2xs",className:orderlyUi.cn(s==="error"&&"oui-text-danger-light",s==="warning"&&"oui-text-warning-light"),children:i})]});return jsxRuntime.jsxs(jsxRuntime.Fragment,{children:[jsxRuntime.jsx(orderlyUi.Input,{ref:f,autoComplete:"off",placeholder:m??(u?"":"0"),prefix:v,suffix:B,value:c,onValueChange:_=>{r?.(_);},formatters:b||[orderlyUi.inputFormatter.numberFormatter,orderlyUi.inputFormatter.dpFormatter(t?.precision??2),orderlyUi.inputFormatter.currencyFormatter],...g,classNames:{...o,root:orderlyUi.cn("oui-relative oui-h-[54px] oui-px-3","oui-rounded-lg oui-border oui-border-line",s==="error"&&"oui-outline-danger-light focus-within:oui-outline-danger-light",s==="warning"&&"oui-outline-warning-light focus-within:oui-outline-warning-light",e.readOnly?"oui-border-none oui-bg-base-6 focus-within:oui-outline-0":"oui-bg-base-5",o?.root),input:orderlyUi.cn("oui-absolute oui-bottom-0",o?.input)}}),i&&M]})};var Co=[.5,1,2],ot=e=>{let{min:t=.2,max:n=10}=e,[o,a]=Ri.useState(),[s,i]=Ri.useState(""),[c,r]=Ri.useState(false),{t:l}=orderlyI18n.useTranslation();Ri.useEffect(()=>{e.value&&!Co.includes(e.value)?i(e.value.toString()):a(e.value);},[e.value,c]);let p=()=>{r(true);},u=()=>{r(false);},m=f=>{a(f),i("");},b=f=>{if(!f||Number(f)===0){i(f);return}let I=new orderlyUtils.Decimal(f);a(void 0),I.lt(t)?i(t.toString()):I.gt(n)?i(n.toString()):i(f);},h=()=>s?new orderlyUtils.Decimal(s)?.toNumber():o,d=()=>{let f=h();return f&&(e.onValueChange?.(f),u(),Co.includes(f)&&i("")),Promise.resolve(true)},g=!h(),T=jsxRuntime.jsxs("div",{className:"oui-text-2xs",children:[jsxRuntime.jsxs(orderlyUi.Flex,{gapX:2,children:[Co.map(f=>jsxRuntime.jsx(Xa,{value:f,isActive:o===f,onClick:()=>{m(f);}},f)),jsxRuntime.jsx(orderlyUi.Input,{suffix:"%",formatters:[orderlyUi.inputFormatter.numberFormatter,orderlyUi.inputFormatter.dpFormatter(2)],value:s,onValueChange:b,classNames:{root:orderlyUi.cn("oui-rounded-md oui-bg-base-6","oui-h-[40px] oui-w-[74px]"),input:"oui-text-base-contrast",additional:"oui-pl-1"}})]}),jsxRuntime.jsx(orderlyUi.Box,{mt:5,children:jsxRuntime.jsx(orderlyUi.Text,{intensity:54,children:l("transfer.slippage.slippageTolerance.description")})})]});return jsxRuntime.jsxs(jsxRuntime.Fragment,{children:[jsxRuntime.jsx(orderlyUi.AlertDialog,{open:c,onOpenChange:r,title:l("transfer.slippage.slippageTolerance"),okLabel:l("common.confirm"),message:T,onOk:d,actions:{primary:{disabled:g}}}),jsxRuntime.jsxs(orderlyUi.Flex,{width:"100%",justify:"between",className:"oui-cursor-pointer oui-select-none",onClick:p,children:[jsxRuntime.jsx(orderlyUi.Text,{intensity:36,size:"2xs",children:l("transfer.slippage")}),jsxRuntime.jsxs(orderlyUi.Flex,{gapX:1,children:[jsxRuntime.jsxs(orderlyUi.Text,{size:"2xs",color:"primaryLight",children:[e.value,"%"]}),jsxRuntime.jsx(orderlyUi.EditIcon,{className:"oui-size-3 oui-text-primary-light"})]})]})]})},Xa=({value:e,isActive:t,onClick:n})=>jsxRuntime.jsx(orderlyUi.Flex,{intensity:600,justify:"center",itemAlign:"center",r:"md",width:74,height:40,className:orderlyUi.cn("oui-cursor-pointer oui-select-none",t&&"oui-bg-primary-light"),onClick:n,children:jsxRuntime.jsxs(orderlyUi.Text,{size:"sm",intensity:80,children:[e,"%"]})});var sn=e=>{let{message:t,needSwap:n,needCrossSwap:o,wrongNetwork:a,networkId:s}=e,{t:i}=orderlyI18n.useTranslation(),c=()=>{orderlyUi.modal.show(orderlyUiChainSelector.ChainSelectorDialogId,{networkId:s});},r=Ri.useMemo(()=>{if(a)return i("connector.wrongNetwork.tooltip");if(t)return t;if(o)return jsxRuntime.jsx(orderlyUi.Text,{children:jsxRuntime.jsx(orderlyI18n.Trans,{i18nKey:"transfer.swapDeposit.crossSwap.notice",components:[jsxRuntime.jsx(orderlyUi.Text,{className:"oui-cursor-pointer",color:"primaryLight",onClick:c},"0")]})});if(n)return i("transfer.swapDeposit.swap.notice")},[t,n,o,a,i]);return r?jsxRuntime.jsx(orderlyUi.Box,{mb:3,className:"oui-text-center oui-text-xs oui-text-warning-darken",children:r}):null};var un=e=>{let{feeQtys:t,feeAmount:n,feeDetails:o,nativeSymbol:a}=e,{t:s}=orderlyI18n.useTranslation(),i=()=>{let r=jsxRuntime.jsx(orderlyUi.Box,{className:"oui-text-2xs",children:o?.map((l,p)=>{let u=p===o?.length-1;return jsxRuntime.jsxs(orderlyUi.Box,{children:[jsxRuntime.jsxs(orderlyUi.Flex,{gapX:1,children:[jsxRuntime.jsxs(orderlyUi.Text,{intensity:54,children:[l.title,":"]}),jsxRuntime.jsx(orderlyUi.Text,{intensity:80,children:l.value}),jsxRuntime.jsx(orderlyUi.Text,{intensity:54,children:l.symbol})]}),jsxRuntime.jsx(orderlyUi.Box,{mt:2,children:jsxRuntime.jsx(orderlyUi.Text,{intensity:36,children:l.description})}),!u&&jsxRuntime.jsx(orderlyUi.Box,{my:3,children:jsxRuntime.jsx(orderlyUi.Divider,{intensity:8})})]},p)})});orderlyUi.modal.alert({title:s("common.fee"),message:r});},c=()=>{let r=t?.length;if(!r)return;let l=t.map((p,u)=>jsxRuntime.jsxs(orderlyUi.Text,{intensity:54,children:[jsxRuntime.jsx(orderlyUi.Text.numeral,{dp:p.dp,padding:false,rm:orderlyUtils.Decimal.ROUND_UP,children:p.value}),` ${p.symbol||a}`]},u));if(r===1)return jsxRuntime.jsxs("span",{children:["(",l,")"]});if(r===2)return jsxRuntime.jsxs("span",{children:["(",l[0]," + ",l[1],")"]})};return jsxRuntime.jsxs(orderlyUi.Text,{size:"xs",intensity:36,className:"oui-cursor-pointer oui-border-b oui-border-dashed oui-border-line-12",onClick:i,children:[`${s("common.fee")} \u2248 `,jsxRuntime.jsxs(orderlyUi.Text,{size:"xs",intensity:80,children:["$",jsxRuntime.jsx(orderlyUi.Text.numeral,{dp:2,padding:false,rm:orderlyUtils.Decimal.ROUND_UP,children:n})," "]}),c()]})};var It=e=>{let{sourceSymbol:t,targetSymbol:n,indexPrice:o,precision:a=6}=e;return jsxRuntime.jsxs(orderlyUi.Flex,{itemAlign:"center",gap:1,className:orderlyUi.cn(e.className,"oui-text-2xs"),children:[jsxRuntime.jsx(orderlyUi.Text,{size:"2xs",intensity:80,children:"1"}),jsxRuntime.jsx(orderlyUi.Text,{size:"2xs",intensity:36,children:t}),"=",jsxRuntime.jsx(orderlyUi.Text.numeral,{size:"2xs",intensity:80,dp:a,padding:false,children:o}),jsxRuntime.jsx(orderlyUi.Text,{size:"2xs",intensity:36,children:n})]})};var pn=e=>jsxRuntime.jsx("svg",{width:"24",height:"25",viewBox:"0 0 24 25",fill:"currentColor",xmlns:"http://www.w3.org/2000/svg",...e,children:jsxRuntime.jsx("path",{d:"M6.012 12.493a1 1 0 0 1 .999-1h7.555L11.6 8.498l1.405-1.405 4.714 4.683c.196.195.293.457.293.719 0 .26-.098.522-.293.717l-4.714 4.683L11.6 16.49l2.966-2.997H7.011a1 1 0 0 1-.999-1"})}),qr=e=>jsxRuntime.jsx("svg",{width:"16",height:"16",viewBox:"0 0 16 16",fill:"currentColor",xmlns:"http://www.w3.org/2000/svg",...e,children:jsxRuntime.jsx("path",{fillRule:"evenodd",clipRule:"evenodd",d:"M4 2.67v10.663h4.667V2.667H4zm6-.003v2.666h1c.218 0 .53.06.806.26.31.223.527.59.527 1.074V12h1V6.667c0-.045 0-.154-.027-.277a.5.5 0 0 0-.11-.252l-1.668-1.667a.667.667 0 0 1 .943-.942l1.667 1.666c.294.294.417.658.472.915.057.264.057.486.057.555V12c0 .484-.217.85-.527 1.074-.277.2-.589.26-.807.26h-1c-.484 0-.85-.217-1.074-.528a1.4 1.4 0 0 1-.26-.806V6.667H10v6.666h.667a.667.667 0 0 1 0 1.334H2a.667.667 0 0 1 0-1.334h.667V2.667c0-.218.06-.53.259-.807.223-.31.59-.527 1.074-.527h4.667c.217 0 .53.06.806.26.31.223.527.59.527 1.074m-4.667 2a.667.667 0 0 0 0 1.333h2a.667.667 0 0 0 0-1.333z"})}),Ur=e=>jsxRuntime.jsx("svg",{width:"13",height:"12",viewBox:"0 0 13 12",fill:"currentColor",xmlns:"http://www.w3.org/2000/svg",...e,children:jsxRuntime.jsx("path",{d:"M8.996 10.496a2 2 0 0 0 2-2v-5a2 2 0 0 0-2-2h-5a2 2 0 0 0-2 2v5a2 2 0 0 0 2 2zm-4-2.5a.5.5 0 0 1-.36-.14.515.515 0 0 1 0-.72l2-2-1.14-1.14h3v3l-1.14-1.14-2 2a.5.5 0 0 1-.36.14"})}),Gr=e=>jsxRuntime.jsxs("svg",{width:"24",height:"24",viewBox:"0 0 24 24",fill:"none",xmlns:"http://www.w3.org/2000/svg",...e,children:[jsxRuntime.jsx("rect",{width:"24",height:"24",rx:"12",fill:"#07080A"}),jsxRuntime.jsx("path",{d:"M5.077 7.385h2.269l1.604 5.28c.106.348.196.73.196.73s.138-.413.28-.742l.885-2.052a1.8 1.8 0 0 1 .66-.782 1.81 1.81 0 0 1 1.974 0c.293.191.523.463.662.782l2.143 4.91v1.095h-1.402c-.235 0-.464-.07-.66-.2a1.17 1.17 0 0 1-.434-.53l-1.303-3.16-1.243 3.152a1.19 1.19 0 0 1-1.105.747h-.848c-.235 0-.465-.075-.654-.214a1.1 1.1 0 0 1-.4-.556z",fill:"#FEFEFE"}),jsxRuntime.jsx("path",{d:"m18.146 10.846 1.066-3.461h-2.396l-1.066 3.461z",fill:"url(#a)"}),jsxRuntime.jsx("path",{d:"m15.371 12-1.208 3.865v.009c-.073.216-.194.529-.514.51a.33.33 0 0 1-.207-.058c.211.186.482.29.763.29h1.428a1.065 1.065 0 0 0 .928-.75L17.769 12z",fill:"url(#b)"}),jsxRuntime.jsxs("defs",{children:[jsxRuntime.jsxs("linearGradient",{id:"a",x1:"14.618",y1:"16.592",x2:"17.597",y2:"7.455",gradientUnits:"userSpaceOnUse",children:[jsxRuntime.jsx("stop",{stopColor:"#59B0FE"}),jsxRuntime.jsx("stop",{offset:"1",stopColor:"#26FEFE"})]}),jsxRuntime.jsxs("linearGradient",{id:"b",x1:"16.192",y1:"16.587",x2:"18.206",y2:"7.458",gradientUnits:"userSpaceOnUse",children:[jsxRuntime.jsx("stop",{stopColor:"#59B0FE"}),jsxRuntime.jsx("stop",{offset:"1",stopColor:"#26FEFE"})]})]})]});var $r=e=>{let{sourceToken:t,targetToken:n,className:o}=e;return t===n?null:jsxRuntime.jsx(orderlyUi.Flex,{width:"100%",itemAlign:"center",justify:"center",className:o,children:jsxRuntime.jsxs(orderlyUi.Flex,{itemAlign:"center",justify:"center",gap:1,children:[jsxRuntime.jsxs(orderlyUi.Flex,{itemAlign:"center",justify:"center",gap:1,children:[jsxRuntime.jsx(orderlyUi.TokenIcon,{className:"oui-size-[18px]",name:t}),jsxRuntime.jsx(orderlyUi.Text,{weight:"semibold",intensity:80,size:"sm",children:t})]}),jsxRuntime.jsx(pn,{className:"oui-size-4"}),jsxRuntime.jsxs(orderlyUi.Flex,{itemAlign:"center",justify:"center",gap:1,children:[jsxRuntime.jsx(orderlyUi.TokenIcon,{className:"oui-size-[18px]",name:n}),jsxRuntime.jsx(orderlyUi.Text,{weight:"semibold",intensity:80,size:"sm",children:n})]})]})})};var Ft=()=>{let{t:e}=orderlyI18n.useTranslation(),{wallet:t,connectedChain:n}=orderlyHooks.useWalletConnector(),{state:o,account:a}=orderlyHooks.useAccount(),s=Ri.useMemo(()=>{let i=o.address;return n?.id&&orderlyTypes.ABSTRACT_CHAIN_ID_MAP.has(parseInt(n?.id))&&(i=a.getAdditionalInfo()?.AGWAddress),i},[t,o,a,n]);return jsxRuntime.jsxs(orderlyUi.Flex,{justify:"between",children:[jsxRuntime.jsx(orderlyUi.Text,{size:"sm",intensity:98,children:e("transfer.web3Wallet.your")}),jsxRuntime.jsxs(orderlyUi.Flex,{gapX:1,children:[jsxRuntime.jsx(orderlyUi.WalletIcon,{size:"xs",name:t?.label??""}),jsxRuntime.jsx(orderlyUi.Text.formatted,{size:"sm",intensity:54,rule:"address",children:s})]})]})};function fn(e){let{srcToken:t,dstToken:n,srcChainId:o,dstChainId:a}=e,[s,i]=Ri.useState(false),[c,r]=Ri.useState(false);return Ri.useEffect(()=>{if(!o||!a||!t||!n)return;let l=o!==a;if(t?.symbol==="USDC"&&!l||t.is_collateral&&t.symbol===n?.symbol){i(false),r(false);return}i(t?.symbol!=="USDC"),l?(r(true),i(true)):r(false);},[t,n,o,a]),{needSwap:s,needCrossSwap:c}}var At=[{inputs:[],stateMutability:"nonpayable",type:"constructor"},{anonymous:false,inputs:[{indexed:false,internalType:"uint8",name:"version",type:"uint8"}],name:"Initialized",type:"event"},{anonymous:false,inputs:[{indexed:true,internalType:"address",name:"previousOwner",type:"address"},{indexed:true,internalType:"address",name:"newOwner",type:"address"}],name:"OwnershipTransferred",type:"event"},{anonymous:false,inputs:[{indexed:false,internalType:"address",name:"account",type:"address"}],name:"Paused",type:"event"},{anonymous:false,inputs:[{indexed:false,internalType:"address",name:"account",type:"address"}],name:"Unpaused",type:"event"},{anonymous:false,inputs:[{indexed:false,internalType:"uint16",name:"srcChainId",type:"uint16"},{indexed:true,internalType:"uint256",name:"nonce",type:"uint256"},{indexed:true,internalType:"address",name:"sender",type:"address"},{indexed:true,internalType:"address",name:"to",type:"address"},{indexed:false,internalType:"address",name:"bridgedToken",type:"address"},{indexed:false,internalType:"uint256",name:"bridgedAmount",type:"uint256"},{indexed:false,internalType:"address",name:"toToken",type:"address"},{indexed:false,internalType:"uint256",name:"minToAmount",type:"uint256"},{indexed:false,internalType:"address",name:"realToToken",type:"address"},{indexed:false,internalType:"uint256",name:"realToAmount",type:"uint256"},{indexed:false,internalType:"uint256",name:"orderlyNativeFees",type:"uint256"},{indexed:false,internalType:"bytes32",name:"accountId",type:"bytes32"},{indexed:false,internalType:"bytes32",name:"brokerHash",type:"bytes32"},{indexed:false,internalType:"bytes32",name:"tokenHash",type:"bytes32"},{indexed:false,internalType:"uint128",name:"tokenAmount",type:"uint128"}],name:"WOOFiDexCrossSwapOnDstChain",type:"event"},{anonymous:false,inputs:[{indexed:false,internalType:"uint16",name:"dstChainId",type:"uint16"},{indexed:true,internalType:"uint256",name:"nonce",type:"uint256"},{indexed:true,internalType:"address",name:"sender",type:"address"},{indexed:true,internalType:"address",name:"to",type:"address"},{indexed:false,internalType:"address",name:"fromToken",type:"address"},{indexed:false,internalType:"uint256",name:"fromAmount",type:"uint256"},{indexed:false,internalType:"address",name:"bridgeToken",type:"address"},{indexed:false,internalType:"uint256",name:"minBridgeAmount",type:"uint256"},{indexed:false,internalType:"uint256",name:"bridgeAmount",type:"uint256"}],name:"WOOFiDexCrossSwapOnSrcChain",type:"event"},{inputs:[],name:"MAX_BRIDGE_SLIPPAGE",outputs:[{internalType:"uint256",name:"",type:"uint256"}],stateMutability:"view",type:"function"},{inputs:[],name:"NATIVE_PLACEHOLDER",outputs:[{internalType:"address",name:"",type:"address"}],stateMutability:"view",type:"function"},{inputs:[{internalType:"address",name:"token",type:"address"}],name:"addDirectBridgeToken",outputs:[],stateMutability:"nonpayable",type:"function"},{inputs:[],name:"allDirectBridgeTokens",outputs:[{internalType:"address[]",name:"",type:"address[]"}],stateMutability:"view",type:"function"},{inputs:[],name:"allDirectBridgeTokensLength",outputs:[{internalType:"uint256",name:"",type:"uint256"}],stateMutability:"view",type:"function"},{inputs:[],name:"bridgeSlippage",outputs:[{internalType:"uint256",name:"",type:"uint256"}],stateMutability:"view",type:"function"},{inputs:[{internalType:"address payable",name:"to",type:"address"},{components:[{internalType:"address",name:"fromToken",type:"address"},{internalType:"uint256",name:"fromAmount",type:"uint256"},{internalType:"address",name:"bridgeToken",type:"address"},{internalType:"uint256",name:"minBridgeAmount",type:"uint256"}],internalType:"struct IWOOFiDexCrossChainRouter.SrcInfos",name:"srcInfos",type:"tuple"},{components:[{internalType:"uint16",name:"chainId",type:"uint16"},{internalType:"address",name:"bridgedToken",type:"address"},{internalType:"address",name:"toToken",type:"address"},{internalType:"uint256",name:"minToAmount",type:"uint256"},{internalType:"uint256",name:"orderlyNativeFees",type:"uint256"}],internalType:"struct IWOOFiDexCrossChainRouter.DstInfos",name:"dstInfos",type:"tuple"},{components:[{internalType:"bytes32",name:"accountId",type:"bytes32"},{internalType:"bytes32",name:"brokerHash",type:"bytes32"},{internalType:"bytes32",name:"tokenHash",type:"bytes32"}],internalType:"struct IWOOFiDexCrossChainRouter.DstVaultDeposit",name:"dstVaultDeposit",type:"tuple"}],name:"crossSwap",outputs:[],stateMutability:"payable",type:"function"},{inputs:[],name:"dstGasForNoSwapCall",outputs:[{internalType:"uint256",name:"",type:"uint256"}],stateMutability:"view",type:"function"},{inputs:[],name:"dstGasForSwapCall",outputs:[{internalType:"uint256",name:"",type:"uint256"}],stateMutability:"view",type:"function"},{inputs:[{internalType:"address",name:"stuckToken",type:"address"}],name:"inCaseTokenGotStuck",outputs:[],stateMutability:"nonpayable",type:"function"},{inputs:[{internalType:"address",name:"_weth",type:"address"},{internalType:"address",name:"_nonceCounter",type:"address"},{internalType:"address",name:"_wooRouter",type:"address"},{internalType:"address",name:"_sgRouter",type:"address"},{internalType:"uint16",name:"_sgChainIdLocal",type:"uint16"}],name:"initialize",outputs:[],stateMutability:"nonpayable",type:"function"},{inputs:[],name:"nonceCounter",outputs:[{internalType:"address",name:"",type:"address"}],stateMutability:"view",type:"function"},{inputs:[],name:"orderlyFeeToggle",outputs:[{internalType:"bool",name:"",type:"bool"}],stateMutability:"view",type:"function"},{inputs:[],name:"owner",outputs:[{internalType:"address",name:"",type:"address"}],stateMutability:"view",type:"function"},{inputs:[],name:"pause",outputs:[],stateMutability:"nonpayable",type:"function"},{inputs:[],name:"paused",outputs:[{internalType:"bool",name:"",type:"bool"}],stateMutability:"view",type:"function"},{inputs:[{internalType:"address",name:"to",type:"address"},{components:[{internalType:"uint16",name:"chainId",type:"uint16"},{internalType:"address",name:"bridgedToken",type:"address"},{internalType:"address",name:"toToken",type:"address"},{internalType:"uint256",name:"minToAmount",type:"uint256"},{internalType:"uint256",name:"orderlyNativeFees",type:"uint256"}],internalType:"struct IWOOFiDexCrossChainRouter.DstInfos",name:"dstInfos",type:"tuple"},{components:[{internalType:"bytes32",name:"accountId",type:"bytes32"},{internalType:"bytes32",name:"brokerHash",type:"bytes32"},{internalType:"bytes32",name:"tokenHash",type:"bytes32"}],internalType:"struct IWOOFiDexCrossChainRouter.DstVaultDeposit",name:"dstVaultDeposit",type:"tuple"}],name:"quoteLayerZeroFee",outputs:[{internalType:"uint256",name:"nativeAmount",type:"uint256"},{internalType:"uint256",name:"zroAmount",type:"uint256"}],stateMutability:"view",type:"function"},{inputs:[{internalType:"address",name:"token",type:"address"}],name:"removeDirectBridgeToken",outputs:[],stateMutability:"nonpayable",type:"function"},{inputs:[],name:"renounceOwnership",outputs:[],stateMutability:"nonpayable",type:"function"},{inputs:[{internalType:"uint256",name:"_bridgeSlippage",type:"uint256"}],name:"setBridgeSlippage",outputs:[],stateMutability:"nonpayable",type:"function"},{inputs:[{internalType:"uint256",name:"_dstGasForNoSwapCall",type:"uint256"}],name:"setDstGasForNoSwapCall",outputs:[],stateMutability:"nonpayable",type:"function"},{inputs:[{internalType:"uint256",name:"_dstGasForSwapCall",type:"uint256"}],name:"setDstGasForSwapCall",outputs:[],stateMutability:"nonpayable",type:"function"},{inputs:[{internalType:"address",name:"_nonceCounter",type:"address"}],name:"setNonceCounter",outputs:[],stateMutability:"nonpayable",type:"function"},{inputs:[{internalType:"bool",name:"_orderlyFeeToggle",type:"bool"}],name:"setOrderlyFeeToggle",outputs:[],stateMutability:"nonpayable",type:"function"},{inputs:[{internalType:"uint16",name:"_sgChainIdLocal",type:"uint16"}],name:"setSgChainIdLocal",outputs:[],stateMutability:"nonpayable",type:"function"},{inputs:[{internalType:"uint16",name:"chainId",type:"uint16"},{internalType:"address",name:"token",type:"address"}],name:"setSgETH",outputs:[],stateMutability:"nonpayable",type:"function"},{inputs:[{internalType:"uint16",name:"chainId",type:"uint16"},{internalType:"address",name:"token",type:"address"},{internalType:"uint256",name:"poolId",type:"uint256"}],name:"setSgPoolId",outputs:[],stateMutability:"nonpayable",type:"function"},{inputs:[{internalType:"address",name:"_sgRouter",type:"address"}],name:"setSgRouter",outputs:[],stateMutability:"nonpayable",type:"function"},{inputs:[{internalType:"uint16",name:"chainId",type:"uint16"},{internalType:"address",name:"woofiDexCrossChainRouter",type:"address"}],name:"setWOOFiDexCrossChainRouter",outputs:[],stateMutability:"nonpayable",type:"function"},{inputs:[{internalType:"uint16",name:"chainId",type:"uint16"},{internalType:"address",name:"token",type:"address"},{internalType:"address",name:"woofiDexVault",type:"address"}],name:"setWOOFiDexVault",outputs:[],stateMutability:"nonpayable",type:"function"},{inputs:[{internalType:"address",name:"_wooRouter",type:"address"}],name:"setWooRouter",outputs:[],stateMutability:"nonpayable",type:"function"},{inputs:[],name:"sgChainIdLocal",outputs:[{internalType:"uint16",name:"",type:"uint16"}],stateMutability:"view",type:"function"},{inputs:[{internalType:"uint16",name:"",type:"uint16"}],name:"sgETHs",outputs:[{internalType:"address",name:"",type:"address"}],stateMutability:"view",type:"function"},{inputs:[{internalType:"uint16",name:"",type:"uint16"},{internalType:"address",name:"",type:"address"}],name:"sgPoolIds",outputs:[{internalType:"uint256",name:"",type:"uint256"}],stateMutability:"view",type:"function"},{inputs:[{internalType:"uint16",name:"srcChainId",type:"uint16"},{internalType:"bytes",name:"",type:"bytes"},{internalType:"uint256",name:"",type:"uint256"},{internalType:"address",name:"bridgedToken",type:"address"},{internalType:"uint256",name:"bridgedAmount",type:"uint256"},{internalType:"bytes",name:"payload",type:"bytes"}],name:"sgReceive",outputs:[],stateMutability:"nonpayable",type:"function"},{inputs:[],name:"sgRouter",outputs:[{internalType:"address",name:"",type:"address"}],stateMutability:"view",type:"function"},{inputs:[{internalType:"address",name:"newOwner",type:"address"}],name:"transferOwnership",outputs:[],stateMutability:"nonpayable",type:"function"},{inputs:[],name:"unpause",outputs:[],stateMutability:"nonpayable",type:"function"},{inputs:[],name:"weth",outputs:[{internalType:"address",name:"",type:"address"}],stateMutability:"view",type:"function"},{inputs:[],name:"wooRouter",outputs:[{internalType:"address",name:"",type:"address"}],stateMutability:"view",type:"function"},{inputs:[{internalType:"uint16",name:"",type:"uint16"}],name:"woofiDexCrossChainRouters",outputs:[{internalType:"address",name:"",type:"address"}],stateMutability:"view",type:"function"},{inputs:[{internalType:"uint16",name:"",type:"uint16"},{internalType:"address",name:"",type:"address"}],name:"woofiDexVaults",outputs:[{internalType:"address",name:"",type:"address"}],stateMutability:"view",type:"function"},{stateMutability:"payable",type:"receive"}],Kr=[{inputs:[],stateMutability:"nonpayable",type:"constructor"},{anonymous:false,inputs:[{indexed:false,internalType:"uint8",name:"version",type:"uint8"}],name:"Initialized",type:"event"},{anonymous:false,inputs:[{indexed:true,internalType:"address",name:"previousOwner",type:"address"},{indexed:true,internalType:"address",name:"newOwner",type:"address"}],name:"OwnershipTransferred",type:"event"},{anonymous:false,inputs:[{indexed:false,internalType:"address",name:"account",type:"address"}],name:"Paused",type:"event"},{anonymous:false,inputs:[{indexed:false,internalType:"address",name:"account",type:"address"}],name:"Unpaused",type:"event"},{anonymous:false,inputs:[{indexed:true,internalType:"address",name:"sender",type:"address"},{indexed:true,internalType:"address",name:"to",type:"address"},{indexed:false,internalType:"address",name:"fromToken",type:"address"},{indexed:false,internalType:"uint256",name:"fromAmount",type:"uint256"},{indexed:false,internalType:"address",name:"toToken",type:"address"},{indexed:false,internalType:"uint256",name:"minToAmount",type:"uint256"},{indexed:false,internalType:"uint256",name:"toAmount",type:"uint256"},{indexed:false,internalType:"uint256",name:"orderlyNativeFees",type:"uint256"},{indexed:false,internalType:"bytes32",name:"accountId",type:"bytes32"},{indexed:false,internalType:"bytes32",name:"brokerHash",type:"bytes32"},{indexed:false,internalType:"bytes32",name:"tokenHash",type:"bytes32"},{indexed:false,internalType:"uint128",name:"tokenAmount",type:"uint128"}],name:"WOOFiDexSwap",type:"event"},{inputs:[],name:"NATIVE_PLACEHOLDER",outputs:[{internalType:"address",name:"",type:"address"}],stateMutability:"view",type:"function"},{inputs:[{internalType:"address",name:"stuckToken",type:"address"}],name:"inCaseTokenGotStuck",outputs:[],stateMutability:"nonpayable",type:"function"},{inputs:[{internalType:"address",name:"_wooRouter",type:"address"}],name:"initialize",outputs:[],stateMutability:"nonpayable",type:"function"},{inputs:[],name:"orderlyFeeToggle",outputs:[{internalType:"bool",name:"",type:"bool"}],stateMutability:"view",type:"function"},{inputs:[],name:"owner",outputs:[{internalType:"address",name:"",type:"address"}],stateMutability:"view",type:"function"},{inputs:[],name:"pause",outputs:[],stateMutability:"nonpayable",type:"function"},{inputs:[],name:"paused",outputs:[{internalType:"bool",name:"",type:"bool"}],stateMutability:"view",type:"function"},{inputs:[],name:"renounceOwnership",outputs:[],stateMutability:"nonpayable",type:"function"},{inputs:[{internalType:"bool",name:"_orderlyFeeToggle",type:"bool"}],name:"setOrderlyFeeToggle",outputs:[],stateMutability:"nonpayable",type:"function"},{inputs:[{internalType:"address",name:"token",type:"address"},{internalType:"address",name:"woofiDexVault",type:"address"}],name:"setWOOFiDexVault",outputs:[],stateMutability:"nonpayable",type:"function"},{inputs:[{internalType:"address",name:"_wooRouter",type:"address"}],name:"setWooRouter",outputs:[],stateMutability:"nonpayable",type:"function"},{inputs:[{internalType:"address payable",name:"to",type:"address"},{components:[{internalType:"address",name:"fromToken",type:"address"},{internalType:"uint256",name:"fromAmount",type:"uint256"},{internalType:"address",name:"toToken",type:"address"},{internalType:"uint256",name:"minToAmount",type:"uint256"},{internalType:"uint256",name:"orderlyNativeFees",type:"uint256"}],internalType:"struct IWOOFiDexDepositor.Infos",name:"infos",type:"tuple"},{components:[{internalType:"bytes32",name:"accountId",type:"bytes32"},{internalType:"bytes32",name:"brokerHash",type:"bytes32"},{internalType:"bytes32",name:"tokenHash",type:"bytes32"}],internalType:"struct IWOOFiDexDepositor.VaultDeposit",name:"vaultDeposit",type:"tuple"}],name:"swap",outputs:[],stateMutability:"payable",type:"function"},{inputs:[{internalType:"address",name:"newOwner",type:"address"}],name:"transferOwnership",outputs:[],stateMutability:"nonpayable",type:"function"},{inputs:[],name:"unpause",outputs:[],stateMutability:"nonpayable",type:"function"},{inputs:[],name:"wooRouter",outputs:[{internalType:"address",name:"",type:"address"}],stateMutability:"view",type:"function"},{inputs:[{internalType:"address",name:"",type:"address"}],name:"woofiDexVaults",outputs:[{internalType:"address",name:"",type:"address"}],stateMutability:"view",type:"function"},{stateMutability:"payable",type:"receive"}],yu="0xEeeeeEeeeEeEeeEeEeEeeEEEeeeeEeeeeeeeEEeE",gn=e=>e===yu,yn="https://fi-api.woo.org";var ns=()=>{let[e,{setTrue:t,setFalse:n}]=orderlyHooks.useBoolean(false),[o,a]=Ri.useState("WAITTING"),s=orderlyHooks.useEventEmitter(),[i,c]=Ri.useState(),[r,l]=Ri.useState(orderlyTypes.WS_WalletStatusEnum.NO),p=Ri.useRef(),u=Ri.useRef(),m=orderlyHooks.useAccountInstance(),b=orderlyHooks.useConfig(),h=b.get("brokerId"),d=b.get("networkId"),g=Ri.useRef(scanClient.createClient(d)).current,T=Ri.useRef();Ri.useEffect(()=>{let k=C=>{let{side:A,transStatus:x,trxId:F}=C;A==="DEPOSIT"&&F===p.current&&l(x);};return s.on("wallet:changed",k),()=>{s.off("wallet:changed",k);}},[p.current]);let f=Ri.useCallback(k=>{u.current&&clearTimeout(u.current),u.current=setTimeout(async()=>{try{let{messages:C}=await g.getMessagesBySrcTxHash(k);if(C.length>0){let{status:A}=C[0];a(A),A==="DELIVERED"?(c(C[0]),p.current=C[0].dstTxHash):A==="FAILED"?c(C[0]):f(k);}else f(k);}catch{f(k);}},1e3);},[]);Ri.useEffect(()=>()=>{T.current&&clearTimeout(T.current);},[]);let I=Ri.useCallback(()=>({accountId:m.accountIdHashStr,brokerHash:orderlyCore.utils.parseBrokerHash(h),tokenHash:orderlyCore.utils.parseTokenHash("USDC")}),[m,h]);return {swap:async k=>{if(!m.walletAdapter)throw new Error("walletAdapter is undefined");if(!m.address)throw new Error("account.address is undefined");if(!k.crossChainRouteAddress)throw new Error("crossChainRouteAddress is undefined");let{address:C,src:A,dst:x,crossChainRouteAddress:F}=k;if(!e){t();try{let S=await m.walletAdapter.call(F,"quoteLayerZeroFee",[m.address,x,I()],{abi:At}),w=await m.walletAdapter.sendTransaction(F,"crossSwap",{from:m.address,to:F,data:[m.address,A,x,I()],value:gn(k.src.fromToken)?BigInt(k.src.fromAmount)+S[0]:S[0]},{abi:At});return n(),f(w.hash),s.emit("deposit:requested"),ramda.pick(["from","to","hash","value"],w)}catch(S){throw console.error("crossSwap error",S),n(),new Error(S.errorCode)}}},loading:e,bridgeStatus:o,status:r,message:i}};var xn=e=>{let{status:t,mode:n,statusUrl:o,brokerName:a}=e,{t:s}=orderlyI18n.useTranslation(),i=Ri.useMemo(()=>{let u=Ru(t),m=Eu(t),b=[{title:s(u==="pending"?"transfer.swapDeposit.bridging":"transfer.swapDeposit.bridge"),description:s("transfer.swapDeposit.bridge.description"),state:u},{title:s(m==="pending"?"transfer.swapDeposit.depositing":"transfer.swapDeposit.deposit"),description:s("transfer.swapDeposit.deposit.description",{brokerName:a}),state:m}];return n===0?b.slice(1,2):b},[n,a,t,s]),c=()=>{e.onComplete?.(t===4);},r=t===3||t===1,l=t===0||t===2,p=i.length>1;return jsxRuntime.jsxs("div",{className:"oui-font-semibold",children:[jsxRuntime.jsxs(orderlyUi.Box,{intensity:600,p:4,r:"lg",children:[jsxRuntime.jsxs(orderlyUi.Flex,{direction:"column",itemAlign:"start",gapY:4,className:"oui-relative",children:[i.map(u=>Ri.createElement(Pu,{...u,key:u.title})),p&&jsxRuntime.jsx("div",{className:orderlyUi.cn("oui-absolute oui-left-[10px] oui-top-[20px] oui-bottom-[38px]","oui-w-[1px] oui-h-[34px]","oui-border-r oui-border-dashed oui-border-r-line-16")})]}),jsxRuntime.jsx(orderlyUi.Box,{my:3,children:jsxRuntime.jsx(orderlyUi.Divider,{intensity:8})}),jsxRuntime.jsxs(orderlyUi.Flex,{gapX:1,justify:"center",itemAlign:"center",className:orderlyUi.cn(o?"oui-text-primary-light":"oui-text-base-contrast-20",o?"oui-cursor-pointer":"oui-cursor-not-allowed"),onClick:()=>{o&&window.open(o);},children:[jsxRuntime.jsx(orderlyUi.Text,{size:"2xs",children:s("transfer.swapDeposit.viewStatus")}),jsxRuntime.jsx(Ur,{})]})]}),jsxRuntime.jsxs(orderlyUi.Flex,{direction:"column",justify:"center",itemAlign:"center",mt:8,gapY:3,children:[r&&jsxRuntime.jsx(orderlyUi.Text,{size:"xs",className:"oui-text-danger-light",children:s("transfer.swapDeposit.depositFailed")}),jsxRuntime.jsx(orderlyUi.Button,{className:"oui-w-full lg:oui-w-[184px]",disabled:l,onClick:c,children:s("common.ok")})]})]})},Pu=({title:e,description:t,state:n})=>jsxRuntime.jsxs(orderlyUi.Flex,{itemAlign:"start",gapX:2,children:[jsxRuntime.jsx(orderlyUi.Flex,{width:20,height:20,justify:"center",children:jsxRuntime.jsx(_u,{state:n})}),jsxRuntime.jsxs(orderlyUi.Flex,{direction:"column",itemAlign:"start",children:[jsxRuntime.jsx(orderlyUi.Text,{size:"sm",className:orderlyUi.cn(n==="pending"||n==="failed"?"oui-text-base-contrast":"oui-text-base-contrast-54"),children:e}),jsxRuntime.jsx(orderlyUi.Text,{size:"2xs",className:orderlyUi.cn(n==="pending"?"oui-text-base-contrast-54":"oui-text-base-contrast-20"),children:t})]})]},e),_u=({state:e})=>e==="pending"?jsxRuntime.jsx(orderlyUi.Spinner,{size:"sm"}):e==="failed"?jsxRuntime.jsx(orderlyUi.CloseCircleFillIcon,{size:20,opacity:1,className:"oui-text-danger-light"}):e==="success"?jsxRuntime.jsx(orderlyUi.CheckedCircleFillIcon,{size:20,opacity:1,className:"oui-text-primary-light"}):jsxRuntime.jsx(orderlyUi.Box,{r:"full",width:10,height:10,intensity:200});function Ru(e){if(e===0)return "pending";if(e===1)return "failed";if(e===4||e===2)return "success"}function Eu(e){if(e===2)return "pending";if(e===3)return "failed";if(e===4)return "success"}var Tn=(e=[])=>{let t=e.reduce((n,o)=>(n[o.symbol]=o,n),{});return t.USDC||t.USDbC||e[0]},$e=e=>(e??2)+3;function rs(e){return /^0x[a-fA-F0-9]{64}$/.test(e)}function kn(e){return e===34?orderlyI18n.i18n.t("transfer.internalTransfer.error.transferInProgress"):e===17?orderlyI18n.i18n.t("transfer.internalTransfer.error.withdrawalInProgress"):e===35?orderlyI18n.i18n.t("transfer.internalTransfer.error.accountIdNotExist"):e===37?orderlyI18n.i18n.t("transfer.internalTransfer.error.transferToSelf"):e===46?orderlyI18n.i18n.t("transfer.internalTransfer.error.transferToSubAccount"):orderlyI18n.i18n.t("transfer.internalTransfer.error.default")}var Cn=e=>{let{info:t,mode:n,nativePrice:o,markPrice:a,src:s,dst:i,nativeToken:c,viewMode:r}=e,{t:l}=orderlyI18n.useTranslation(),p=jsxRuntime.jsxs(orderlyUi.Flex,{justify:"between",children:[jsxRuntime.jsx(is,{primary:s?.token,chainId:s.chain,amount:s?.amount,dp:s?.displayDecimals,symbol:s?.token}),jsxRuntime.jsx(pn,{className:"oui-text-primary-light"}),jsxRuntime.jsx(is,{primary:i?.token,component:jsxRuntime.jsx(Gr,{className:"oui-size-4"}),amount:i?.amount,dp:i?.displayDecimals,symbol:i?.token,reverse:true})]}),u=jsxRuntime.jsx(orderlyUi.Box,{my:5,children:jsxRuntime.jsx(orderlyUi.Divider,{intensity:12})}),m=[{label:l("transfer.deposit.destinationGasFee"),value:jsxRuntime.jsxs(orderlyUi.Flex,{gapX:1,children:[jsxRuntime.jsx(qr,{className:"oui-text-primary-light"}),jsxRuntime.jsx(orderlyUi.Text.numeral,{color:"primaryLight",padding:false,rm:orderlyUtils.Decimal.ROUND_UP,dp:$e(c?.precision),children:t.dstGasFee}),jsxRuntime.jsx(orderlyUi.Text,{color:"primaryLight",children:c?.symbol}),jsxRuntime.jsxs(orderlyUi.Text,{className:"oui-text-primary-light/60",children:["($",jsxRuntime.jsx(orderlyUi.Text.numeral,{color:"primaryLight",padding:false,rm:orderlyUtils.Decimal.ROUND_UP,dp:2,children:new orderlyUtils.Decimal(t.dstGasFee?.toString()).mul(o||0).toString()}),")"]})]})},{label:l("transfer.swapDeposit.swapFee"),value:jsxRuntime.jsxs(jsxRuntime.Fragment,{children:[jsxRuntime.jsx(orderlyUi.Text.numeral,{intensity:80,dp:$e(s?.displayDecimals),rm:orderlyUtils.Decimal.ROUND_UP,padding:false,children:t.swapFee}),` ${s?.token} `,jsxRuntime.jsxs(orderlyUi.Text,{className:"oui-text-[#63666D]",children:["($",jsxRuntime.jsx(orderlyUi.Text.numeral,{padding:false,rm:orderlyUtils.Decimal.ROUND_UP,dp:2,children:new orderlyUtils.Decimal(t.swapFee).mul(a||0).toString()}),")"]})]})},{label:l("transfer.swapDeposit.bridgeFee"),value:n===1&&jsxRuntime.jsxs(jsxRuntime.Fragment,{children:[jsxRuntime.jsx(orderlyUi.Text.numeral,{intensity:80,dp:$e(s?.displayDecimals),rm:orderlyUtils.Decimal.ROUND_UP,padding:false,children:t.bridgeFee}),` ${s?.token} `,jsxRuntime.jsxs(orderlyUi.Text,{className:"oui-text-[#63666D]",children:["($",jsxRuntime.jsx(orderlyUi.Text.numeral,{padding:false,rm:orderlyUtils.Decimal.ROUND_UP,dp:2,children:new orderlyUtils.Decimal(t.bridgeFee).mul(a||0).toString()}),")"]})]})},{label:l("transfer.swapDeposit.minimumReceived"),value:jsxRuntime.jsxs(jsxRuntime.Fragment,{children:[jsxRuntime.jsx(orderlyUi.Text.numeral,{dp:i?.displayDecimals,rm:orderlyUtils.Decimal.ROUND_DOWN,padding:false,children:t.received}),` ${i?.token}`]})},{label:l("common.price"),value:jsxRuntime.jsxs(jsxRuntime.Fragment,{children:[`1 ${s?.token} = `,jsxRuntime.jsx(orderlyUi.Text.numeral,{dp:3,padding:false,children:t.price}),` ${i?.token}`]})},{label:l("transfer.slippage"),value:`${t.slippage}%`}],b=jsxRuntime.jsx(orderlyUi.Flex,{direction:"column",itemAlign:"start",gapY:3,children:m?.map(d=>{if(d.value)return Ri.createElement(qu,{...d,key:d.label})})}),h=jsxRuntime.jsx(orderlyUi.Flex,{justify:"center",mt:8,children:jsxRuntime.jsx(orderlyUi.Button,{className:"oui-w-full lg:oui-w-[184px]",onClick:e.onConfirm,children:l("transfer.swapDeposit.confirmSwap")})});return jsxRuntime.jsxs(orderlyUi.Box,{intensity:800,children:[p,jsxRuntime.jsx(Uu,{time:t.time??0}),u,r==="details"&&jsxRuntime.jsxs(jsxRuntime.Fragment,{children:[b,h]})]})},qu=e=>jsxRuntime.jsxs(orderlyUi.Flex,{gapX:2,justify:"between",width:"100%",children:[jsxRuntime.jsx(orderlyUi.Text,{size:"sm",intensity:54,children:e.label}),jsxRuntime.jsx(orderlyUi.Text,{size:"sm",intensity:98,as:"div",children:e.value})]}),is=e=>jsxRuntime.jsxs(orderlyUi.Flex,{gapX:2,direction:e.reverse?"rowReverse":"row",children:[jsxRuntime.jsx(orderlyUi.Icon.combine,{secondary:{chainId:e.chainId,component:e.component,className:"oui-w-4 oui-h-4 oui-outline-base-8 oui-rounded-full"},children:jsxRuntime.jsx(orderlyUi.TokenIcon,{name:e.primary,size:"md"})}),jsxRuntime.jsxs(orderlyUi.Flex,{direction:"column",itemAlign:e.reverse?"end":"start",children:[jsxRuntime.jsx(orderlyUi.Text.numeral,{intensity:98,size:"lg",dp:e.dp,children:e.amount}),jsxRuntime.jsx(orderlyUi.Text,{intensity:54,size:"xs",children:e.symbol})]})]}),Uu=e=>jsxRuntime.jsx(orderlyUi.Flex,{justify:"center",children:jsxRuntime.jsx(orderlyUi.Flex,{intensity:600,r:"full",gapX:2,justify:"center",py:1,mt:2,width:210,children:jsxRuntime.jsx(orderlyUi.Text,{size:"sm",intensity:54,children:jsxRuntime.jsx(orderlyI18n.Trans,{i18nKey:"transfer.swapDeposit.averageSwapTime",values:{time:e.time},components:[jsxRuntime.jsx(orderlyUi.Text,{color:"primaryLight"},"0")]})})})});var Sn=()=>jsxRuntime.jsx(orderlyUi.Flex,{justify:"center",gapX:1,mt:3,children:jsxRuntime.jsx(orderlyI18n.Trans,{i18nKey:"transfer.swapDeposit.viewFAQs",components:[jsxRuntime.jsx(orderlyUi.Text,{size:"xs",color:"primaryLight",onClick:()=>{window.open("https://learn.woo.org/woofi/faqs/woofi-pro");},className:"oui-cursor-pointer"},"0")]})});var cs=e=>{let{transactionData:t,slippage:n,mode:o,dst:a,src:s,chain:i,nativeToken:c,depositFee:r}=e,{t:l}=orderlyI18n.useTranslation(),[p,u]=Ri.useState(-1),[m,b]=Ri.useState("details"),[h,d]=Ri.useState(),g=orderlyHooks.useEventEmitter(),{swap:T,bridgeStatus:f,message:I,status:y}=ns(),k=Ri.useMemo(()=>({price:t.price,slippage:n,time:i?.est_txn_mins,received:a.amount,bridgeFee:t.fees_from.stargate,swapFee:t.fees_from.woofi,dstGasFee:t.dst_infos.gas_fee}),[t,i?.est_txn_mins,o,a]);Ri.useEffect(()=>{f==="DELIVERED"&&u(2),f==="FAILED"&&u(1),y===orderlyTypes.WS_WalletStatusEnum.COMPLETED&&u(4),y===orderlyTypes.WS_WalletStatusEnum.FAILED&&u(3);},[f,y]);let C=Ri.useCallback(()=>(b("processing"),t?(u(0),T({address:"",crossChainRouteAddress:i?.cross_chain_router,src:{fromToken:t.src_infos.from_token,fromAmount:BigInt(t.src_infos.from_amount),bridgeToken:t.src_infos.bridge_token,minBridgeAmount:BigInt(t.src_infos.min_bridge_amount)},dst:{chainId:t.dst_infos.chain_id,bridgedToken:t.dst_infos.bridged_token,toToken:t.dst_infos.to_token,minToAmount:BigInt(t.dst_infos.min_to_amount),orderlyNativeFees:r}}).then(x=>{d(x),orderlyUi.toast.success(l("transfer.deposit.requested")),g.emit("deposit:requested");}).catch(x=>{u(1),orderlyUi.toast.error(x?.message||"Error");})):Promise.reject("No transaction data")),[t,o,a,s,g]),A=Ri.useMemo(()=>{if(!(p<2||!I))return `https://layerzeroscan.com/tx/${I.srcTxHash}`},[p,I]);return jsxRuntime.jsxs(orderlyUi.Box,{intensity:800,children:[jsxRuntime.jsx(Cn,{viewMode:m,onConfirm:C,info:k,src:e.src,dst:e.dst,mode:o,markPrice:t.mark_prices?.from_token??1,nativePrice:t.mark_prices.native_token,nativeToken:c}),m==="processing"&&jsxRuntime.jsx(xn,{mode:1,status:p,statusUrl:A,onComplete:e.onComplete,brokerName:e.brokerName}),jsxRuntime.jsx(Sn,{})]})};var ds=()=>{let[e,{setTrue:t,setFalse:n}]=orderlyHooks.useBoolean(false),o=orderlyHooks.useAccountInstance(),a=orderlyHooks.useConfig("brokerId"),[s,i]=Ri.useState(orderlyTypes.WS_WalletStatusEnum.NO),c=Ri.useRef(),r=orderlyHooks.useEventEmitter();Ri.useEffect(()=>{let u=m=>{let{side:b,transStatus:h,trxId:d}=m;b==="DEPOSIT"&&d===c.current&&i(h);};return r.on("wallet:changed",u),()=>{r.off("wallet:changed",u);}},[c.current]);let l=Ri.useCallback(()=>({accountId:o.accountIdHashStr,brokerHash:orderlyCore.utils.parseBrokerHash(a),tokenHash:orderlyCore.utils.parseTokenHash("USDC")}),[o,a]);return {swap:Ri.useCallback(async(u,m,b)=>{if(!o.walletAdapter)throw new Error("walletAdapter is undefined");if(!o.address)throw new Error("account.address is undefined");if(e)return;t();let h={from:o.address,to:u,data:[o.address,m,l()],value:gn(m.fromToken)?BigInt(m.fromAmount)+m.orderlyNativeFees:m.orderlyNativeFees};try{let d=await o.walletAdapter.sendTransaction(u,"swap",h,{abi:Kr});return n(),c.current=d.hash,r.emit("deposit:requested"),ramda.pick(["from","to","hash","value"],d)}catch(d){throw new Error(d.errorCode)}},[e,o]),loading:e,status:s}};var ws=e=>{let{transactionData:t,slippage:n,mode:o,dst:a,src:s,chain:i,nativeToken:c,depositFee:r}=e,{t:l}=orderlyI18n.useTranslation(),[p,u]=Ri.useState(-1),[m,b]=Ri.useState("details"),[h,d]=Ri.useState(),g=orderlyHooks.useEventEmitter(),{swap:T,status:f}=ds(),I=Ri.useMemo(()=>({price:t.price,slippage:n,time:i?.est_txn_mins,received:a.amount,dstGasFee:new orderlyUtils.Decimal(r.toString())?.div(new orderlyUtils.Decimal(10).pow(18))?.toString(),swapFee:t.fees_from}),[t,i?.est_txn_mins,o,a,r]);Ri.useEffect(()=>{f===orderlyTypes.WS_WalletStatusEnum.COMPLETED&&u(4),f===orderlyTypes.WS_WalletStatusEnum.FAILED&&u(3);},[f]);let y=Ri.useCallback(()=>(b("processing"),t?!i||!i.depositor?Promise.reject("No chain data"):(u(2),T(i.depositor,{fromToken:t.infos.from_token,fromAmount:t.infos.from_amount,toToken:t.infos.to_token,minToAmount:t.infos.min_to_amount,orderlyNativeFees:r},{dst:a,src:s}).then(C=>{d(C),orderlyUi.toast.success(l("transfer.deposit.requested")),g.emit("deposit:requested");}).catch(C=>{u(3),orderlyUi.toast.error(C?.message||"Error");})):Promise.reject("No transaction data")),[t,o,a,s,g]),k=Ri.useMemo(()=>{if(!(p<2||!h))return `${i?.explorer_base_url}/tx/${h.hash}`},[p,h,i]);return jsxRuntime.jsxs(orderlyUi.Box,{intensity:800,children:[jsxRuntime.jsx(Cn,{viewMode:m,onConfirm:y,info:I,src:e.src,dst:e.dst,mode:o,markPrice:t.mark_prices?.from_token??1,nativePrice:t.mark_prices.native_token,nativeToken:c}),m==="processing"&&jsxRuntime.jsx(xn,{mode:0,status:p,statusUrl:k,onComplete:e.onComplete,brokerName:e.brokerName}),jsxRuntime.jsx(Sn,{})]})};var xs=e=>{let{mode:t}=e;return t===1?jsxRuntime.jsx(cs,{...e}):jsxRuntime.jsx(ws,{...e})};var vn=orderlyUi.modal.create(e=>{let{isMobile:t}=orderlyUi.useScreen(),{t:n}=orderlyI18n.useTranslation(),{visible:o,hide:a,resolve:s,reject:i,onOpenChange:c}=orderlyUi.useModal(),r=u=>{s(u),a();},l=()=>{i(),a();},p={title:n("transfer.swapDeposit.swapDialog.title"),open:o,onOpenChange:c,classNames:{content:"oui-font-semibold"},children:jsxRuntime.jsx(xs,{...e,onComplete:r,onCancel:l})};return t?jsxRuntime.jsx(orderlyUi.SimpleSheet,{...p}):jsxRuntime.jsx(orderlyUi.SimpleDialog,{...p,size:"md"})});var Ts=()=>{let[e,{setTrue:t,setFalse:n}]=orderlyHooks.useBoolean(false),o=orderlyHooks.useConfig("brokerId"),a=orderlyHooks.useAccountInstance(),s=Ri.useCallback(()=>({accountId:a.accountIdHashStr,brokerHash:orderlyCore.utils.parseBrokerHash(o),tokenHash:orderlyCore.utils.parseTokenHash("USDC")}),[a,o]),i=Ri.useCallback(async(r,l)=>{if(!a.walletAdapter)throw new Error("walletAdapter is not ready");let p=await a.walletAdapter.call(r,"quoteLayerZeroFee",[a.address,l,s()],{abi:At});return orderlyCore.utils.formatByUnits(p[0])},[]);return {query:Ri.useCallback(r=>{if(e)return Promise.resolve();t();let l={src_network:r.srcNetwork,dst_network:"arbitrum",src_token:r.srcToken,dst_token:r.dstToken,src_amount:r.amount,slippage:r.slippage||1},p=Object.entries(l).map(([u,m])=>`${u}=${encodeURIComponent(m)}`).join("&");return fetch(`${yn}/woofi_dex/cross_chain_swap?${p}`).then(u=>u.ok?u.json():u.json().then(m=>{throw new Error(m.error.message)})).then(u=>{if(u.status==="ok")return u.data;throw new Error(u.message)}).then(u=>i(r.crossChainRouteAddress,{chainId:u.dst_infos.chain_id,bridgedToken:u.dst_infos.bridged_token,toToken:u.dst_infos.to_token,minToAmount:BigInt(u.dst_infos.min_to_amount),orderlyNativeFees:0n}).then(m=>({...u,dst_infos:{...u.dst_infos,gas_fee:m}})).catch(m=>{console.error("queryDestinationFee error",m);})).finally(()=>n())},[e,a]),loading:e}};var ks=()=>{let e=orderlyHooks.useAccountInstance(),[t,{setTrue:n,setFalse:o}]=orderlyHooks.useBoolean(false);return {query:Ri.useCallback(s=>{if(t)return Promise.resolve();n();let i={network:s.srcNetwork,from_token:s.srcToken,to_token:s.dstToken,from_amount:s.amount,slippage:s.slippage||1},c=Object.entries(i).map(([r,l])=>`${r}=${encodeURIComponent(l)}`).join("&");return fetch(`${yn}/woofi_dex/swap?${c}`).then(r=>r.ok?r.json():r.json().then(l=>{throw new Error(l.error.message)})).then(r=>{if(r.status==="ok")return r.data;throw new Error(r.message)}).finally(()=>o())},[e]),loading:t}};function In(e){let{quantity:t,dst:n,queryParams:o,needSwap:a,needCrossSwap:s}=e,{t:i}=orderlyI18n.useTranslation(),{query:c}=ks(),{query:r}=Ts(),l=Ri.useRef(o);l.current=o;let[p,u]=Ri.useState(""),[m,b]=Ri.useState(""),[h,{setTrue:d,setFalse:g}]=orderlyHooks.useBoolean(false),[T,f]=Ri.useState({price:0,markPrices:{from_token:0,native_token:0},fee:""}),I=Ri.useCallback(()=>s?r(l.current):a?c(l.current):Promise.reject("no need to enquiry"),[a,s]),y=x=>{if(x.mark_prices){let F=s?x.dst_infos.gas_fee:"0",S=s?x.fees_from.woofi:x.fees_from,w=s?x.fees_from.stargate:void 0,v=s?x.fees_from.total:x.fees_from;f({price:x.price,markPrices:x.mark_prices,dstGasFee:F,swapFee:S,bridgeFee:w,fee:v});}if(x.route_infos){let F=s?x.route_infos.dst.amounts[1]:x.route_infos.amounts[1];u(new orderlyUtils.Decimal(F).div(Math.pow(10,n.decimals)).toString());}return b(""),x},k=x=>{f({fee:"0",markPrices:{from_token:0,native_token:0},price:0,swapFee:"0",bridgeFee:"0",dstGasFee:"0",...x}),u("");},C=x=>{x.message==="contract call failed"?(b(i("transfer.swapDeposit.notEnoughLiquidity")),k()):(b(""),x?.message&&orderlyUi.toast.error(x.message));},A=orderlyHooks.useDebouncedCallback(()=>(d(),I().then(y,C).finally(()=>{g();})),300);return Ri.useEffect(()=>{if(!a&&!s){k({price:1}),u(t);return}let x=Number(t);if(isNaN(x)||x<=0){k();return}A();},[a,s,t]),{enquiry:I,querying:h,warningMessage:m,transactionInfo:T,amount:p,cleanTransactionInfo:k}}function Fn(e){let{nativeToken:t,isNativeToken:n,src:o,depositFee:a=0,transactionInfo:s,needSwap:i,needCrossSwap:c}=e,r=t?.symbol,l=o?.symbol,{fee:p="0",swapFee:u="0",bridgeFee:m="0",dstGasFee:b="0",markPrices:h}=s,{from_token:d,native_token:g}=h,{data:T}=orderlyHooks.useIndexPrice(`SPOT_${r}_USDC`),{t:f}=orderlyI18n.useTranslation();return {...Ri.useMemo(()=>{let y="",k=[],C=$e(t?.precision),A=$e(o?.precision),x=c?b:new orderlyUtils.Decimal(a.toString()).div(new orderlyUtils.Decimal(10).pow(18)).toString();if(!i&&!c&&(k=[{value:x,dp:C}],y=new orderlyUtils.Decimal(x).mul(T||0).toString()),i||c)if(n){let S=new orderlyUtils.Decimal(x).plus(p);k=[{value:S.toString(),dp:C}],y=S.mul(g??1).toString();}else k=[{value:x,dp:C,symbol:r},{value:p,dp:A,symbol:l}],y=new orderlyUtils.Decimal(x).mul(g??1).plus(new orderlyUtils.Decimal(p).mul(d??1)).toString();k=k.filter(S=>!!S.value&&Number(S.value)!==0);let F=[{title:f("transfer.deposit.destinationGasFee"),description:f("transfer.deposit.destinationGasFee.description"),value:x,dp:C,symbol:r},{title:f("transfer.swapDeposit.swapFee"),description:f("transfer.swapDeposit.swapFee.description"),value:u,dp:A,symbol:l},{title:f("transfer.swapDeposit.bridgeFee"),description:f("transfer.swapDeposit.bridgeFee.description"),value:m,dp:A,symbol:l}].filter((S,w)=>w===0||!!S.value&&Number(S.value)!==0).map(S=>{let w=new orderlyUtils.Decimal(S.value||0).todp(S.dp).toNumber();return {...S,value:orderlyUtils.toNonExponential(w)}});return {feeAmount:y,feeQtys:k,feeDetails:F}},[a,T,r,l,s,i,c]),nativeSymbol:r}}var ql="orderly_swap_deposit_slippage",Is=e=>{let{srcToken:t,currentChain:n,dst:o,quantity:a,isNativeToken:s,depositFee:i,setQuantity:c,needSwap:r,needCrossSwap:l}=e,[p,u]=orderlyHooks.useLocalStorage(ql,1),b=orderlyHooks.useConfig().get("brokerName")||"",{enquiry:h,transactionInfo:d,amount:g,querying:T,warningMessage:f,cleanTransactionInfo:I}=In({quantity:a,dst:o,queryParams:{network:o.network,srcNetwork:n?.info?.network_infos?.shortName,srcToken:t?.address,dstToken:o.address,crossChainRouteAddress:n?.info?.network_infos?.cross_chain_router,amount:new orderlyUtils.Decimal(a||0).mul(10**(t?.decimals||0)).toString(),slippage:p},needSwap:r,needCrossSwap:l}),y=Ri.useCallback(()=>{c(""),I();},[c]),k=Ri.useCallback(async()=>h().then(S=>{let w=l?S.route_infos?.dst.amounts[1]:S.route_infos?.amounts[1],v={mode:l?1:0,src:{chain:n?.id,token:t.symbol,displayDecimals:t?.precision,amount:a,decimals:t.decimals},dst:{chain:o.chainId,token:o.symbol,displayDecimals:2,amount:new orderlyUtils.Decimal(w).div(Math.pow(10,o.decimals)).toString(),decimals:o.decimals},chain:n?.info?.network_infos,nativeToken:n?.info?.nativeToken,depositFee:i,transactionData:S,slippage:p,brokerName:b};return orderlyUi.modal.show(vn,v)}).then(S=>{S&&y();}).catch(S=>{}),[a,l,o,n,p,i]),C=Ri.useMemo(()=>l||r?d.price:1,[d]),A=Ri.useMemo(()=>l||r?s?d.markPrices.native_token:d.markPrices.from_token:1,[r,l,s,d]),x=r||l?g:a,F=Fn({nativeToken:n?.info?.nativeToken,isNativeToken:s,src:t,depositFee:i,transactionInfo:d,needSwap:r,needCrossSwap:l});return {cleanTransactionInfo:I,onSwapDeposit:k,swapPrice:C,markPrice:A,swapQuantity:x,swapFee:F,swapRevalidating:T,warningMessage:f,needSwap:r,needCrossSwap:l,slippage:p,onSlippageChange:u}};function Dt(e){let{isNativeToken:t,allowance:n,quantity:o,maxQuantity:a}=e;return Ri.useMemo(()=>{let i=t?Number.MAX_VALUE:Number(n);if(i<=0)return 2;let c=Number(o),r=Number(a);return i<c&&c<=r?2:0},[t,n,o,a])}function Pt(){let{t:e}=orderlyI18n.useTranslation(),t=orderlyHooks.useConfig("networkId"),[n]=orderlyHooks.useLocalStorage("orderly_link_device",{}),{connectedChain:o,settingChain:a,setChain:s}=orderlyHooks.useWalletConnector(),[i,{findByChainId:c}]=orderlyHooks.useChains(t,{pick:"network_infos",filter:p=>p.network_infos?.bridge_enable||p.network_infos?.bridgeless}),r=Ri.useMemo(()=>{let p=o?orderlyUtils.praseChainIdToNumber(o.id):parseInt(n?.chainId);if(!p)return null;let u=c(p);return {...o,id:p,info:u}},[c,o,n]),l=Ri.useCallback(async p=>{let u=c(p.chain_id);if(o)return !u||u.network_infos?.chain_id===r?.id?Promise.resolve():s({chainId:orderlyUtils.int2hex(Number(u.network_infos?.chain_id))}).then(m=>{m?orderlyUi.toast.success(e("connector.networkSwitched")):orderlyUi.toast.error(e("connector.switchChain.failed"));}).catch(m=>{m&&m.message&&orderlyUi.toast.error(`${e("connector.switchChain.failed")}: ${m.message}`);})},[r,s,c]);return {chains:i,currentChain:r,settingChain:a,onChainChange:l}}function Rt(e){let{quantity:t,allowance:n,approve:o,deposit:a,enableCustomDeposit:s,customDeposit:i,onSuccess:c}=e,[r,l]=Ri.useState(false),p=orderlyHooks.useEventEmitter(),{t:u}=orderlyI18n.useTranslation(),m=Ri.useCallback(async()=>{try{await a(),orderlyUi.toast.success(u("transfer.deposit.requested")),p.emit("deposit:requested"),c?.();}catch(g){console.error("deposit error",g),orderlyUi.toast.error(g.message||u("transfer.deposit.failed"));}},[a,c,u]),b=Ri.useCallback(async()=>{let g=Number(t);if(isNaN(g)||g<=0){orderlyUi.toast.error(u("transfer.quantity.invalid"));return}if(r)return;l(true),await(s?i:m)?.()?.finally(()=>{l(false);});},[t,r,m,s,i,u]),h=Ri.useCallback(async()=>{if(!r){l(true);try{await o(t),orderlyUi.toast.success(u("transfer.deposit.approve.success"));}catch(g){throw console.error("approve error",g),orderlyUi.toast.error(g.message||g?.errorCode||u("transfer.deposit.approve.failed")),g}finally{l(false);}}},[o,r,t,n,u]),d=Ri.useCallback(async()=>{if(!r){l(true);try{await h(),await b();}catch(g){console.error("approve and deposit error",g);}finally{l(false);}}},[r,h,b]);return {submitting:r,onApprove:h,onDeposit:b,onApproveAndDeposit:d}}function Et(e){let{quantity:t,maxQuantity:n}=e,{t:o}=orderlyI18n.useTranslation(),[a,s]=Ri.useState("default"),[i,c]=Ri.useState();return Ri.useEffect(()=>{if(!t){s("default"),c("");return}new orderlyUtils.Decimal(t).gt(n)?(s("error"),c(o("transfer.insufficientBalance"))):(s("default"),c(""));},[t,n]),{inputStatus:a,hintMessage:i}}var Dn=(e,t=()=>true)=>{let[n,o]=Ri.useState(),[a,s]=Ri.useState(),[i,c]=Ri.useState([]),[r,l]=Ri.useState([]),p=orderlyHooks.useConfig("networkId"),u=Ri.useCallback(m=>{if(m&&m?.token_infos?.length>0){let b=m.token_infos?.filter(t);b?.length&&b.sort((d,g)=>d.symbol==="USDC"?-1:g.symbol==="USDC"?1:0);let h=Tn(b);if(!h)return;o(h),s(h),c(b),l([h]);}},[]);return Ri.useEffect(()=>{u(e?.info);},[e,u]),Ri.useEffect(()=>{if(!n||!i.length)return;if(n.symbol==="USDC"){s(n),l([n]);return}let m=i.find(b=>b.symbol==="USDC");if(n.is_collateral){p==="mainnet"&&n.swap_enable?(s(n),l([n,m])):(s(n),l([n]));return}s(m),l([m]);},[p,n,i]),{sourceToken:n,targetToken:a,sourceTokens:i,targetTokens:r,onSourceTokenChange:o,onTargetTokenChange:s}};var {collateralRatio:bc,collateralContribution:xc,calcMinimumReceived:Tc}=orderlyPerp.account,Pn=3,Oo=e=>{let{wrongNetwork:t}=orderlyReactApp.useAppContext(),{t:n}=orderlyI18n.useTranslation(),o=orderlyHooks.useConfig("networkId"),{chains:a,currentChain:s,settingChain:i,onChainChange:c}=Pt(),{sourceToken:r,targetToken:l,sourceTokens:p,targetTokens:u,onSourceTokenChange:m,onTargetTokenChange:b}=Dn(s),h=Ri.useMemo(()=>p?.find(yr=>yr.symbol==="USDC"),[p]),{dst:d,balance:g,allowance:T,depositFeeRevalidating:f,depositFee:I,quantity:y,setQuantity:k,approve:C,deposit:A,isNativeToken:x,balanceRevalidating:F,fetchBalance:S}=orderlyHooks.useDeposit({address:r?.address,decimals:r?.decimals,srcChainId:s?.id,srcToken:r?.symbol,dstToken:l?.symbol,crossChainRouteAddress:s?.info?.network_infos?.cross_chain_router,depositorAddress:s?.info?.network_infos?.depositor}),w=Ri.useMemo(()=>new orderlyUtils.Decimal(g||0).todp(r?.precision??2,orderlyUtils.Decimal.ROUND_DOWN).toString(),[g,r?.precision]),{inputStatus:v,hintMessage:B}=Et({quantity:y,maxQuantity:w}),{needSwap:M,needCrossSwap:D}=fn({srcToken:r,dstToken:l,srcChainId:s?.id,dstChainId:d?.chainId}),{cleanTransactionInfo:_,onSwapDeposit:W,swapRevalidating:z,swapPrice:Q,markPrice:te,swapQuantity:P,swapFee:Z,warningMessage:ce,slippage:se,onSlippageChange:ge}=Is({srcToken:r,currentChain:s,dst:d,quantity:y,isNativeToken:x,depositFee:I,setQuantity:k,needSwap:M,needCrossSwap:D}),ie=Ri.useCallback(()=>{k(""),_();},[k]),ye=Ri.useCallback(()=>{ie(),e.close?.();},[ie,e.close]),{submitting:he,onApprove:K,onDeposit:Ne,onApproveAndDeposit:we}=Rt({quantity:y,allowance:T,approve:C,deposit:A,enableCustomDeposit:M||D,customDeposit:W,onSuccess:ye}),me=Ri.useMemo(()=>r?.symbol==="USDC"||r?.symbol!==l?.symbol||!r?.is_collateral||!y||isNaN(Number(y))?"":new orderlyUtils.Decimal(y).gt(r?.user_max_qty)?n("transfer.deposit.userMaxQty.error",{maxQty:r?.user_max_qty,token:r?.symbol}):"",[r,l,y,n]),R=he||f,O=!y||Number(y)===0||!r||v==="error"||f||z||!!me,U=Ri.useMemo(()=>new orderlyUtils.Decimal(y||0).mul(1).toNumber(),[y]),$=Dt({isNativeToken:x,allowance:T,quantity:y,maxQuantity:w}),De=kc({nativeToken:s?.info?.nativeToken,depositFee:I}),{collateralRatio:Tt,collateralContributionQuantity:Hn,currentLTV:$n,nextLTV:Xn,indexPrice:jn}=Cc({sourceToken:r,targetToken:l,qty:y}),{ltv_threshold:Yn,negative_usdc_threshold:N,isLoading:X}=Sc();Ri.useEffect(()=>{ie();},[r,s?.id]);let Le=Ri.useMemo(()=>{if(x&&w===y)return n("transfer.deposit.gasFee.error",{token:r?.symbol})},[w,y,r?.symbol,n]),Zn=ce||me||Le,Ai=Ri.useMemo(()=>M?P&&new orderlyUtils.Decimal(P)?.todp(Pn,orderlyUtils.Decimal.ROUND_DOWN).toString():y,[M,P,y]),Ni=Ri.useMemo(()=>P?Tc({amount:Number(P),slippage:se}):"-",[P,se]);return {sourceToken:r,targetToken:l,sourceTokens:p,targetTokens:u,onSourceTokenChange:m,onTargetTokenChange:b,amount:U,isNativeToken:x,quantity:y,collateralContributionQuantity:Hn,maxQuantity:w,indexPrice:jn,onQuantityChange:k,hintMessage:B,inputStatus:v,chains:a,currentChain:s,settingChain:i,onChainChange:c,actionType:$,onDeposit:Ne,onApprove:K,onApproveAndDeposit:we,fetchBalance:S,dst:d,wrongNetwork:t,balanceRevalidating:F,loading:R,disabled:O,networkId:o,fee:De,collateralRatio:Tt,currentLTV:$n,nextLTV:Xn,ltv_threshold:Yn,negative_usdc_threshold:N,isConvertThresholdLoading:X,slippage:se,onSlippageChange:ge,minimumReceived:Ni,usdcToken:h,needSwap:M,needCrossSwap:D,swapPrice:Q,markPrice:te,swapFee:Z,warningMessage:Zn,targetQuantity:Ai,targetQuantityLoading:z}};function kc(e){let{nativeToken:t,depositFee:n=0}=e,{account:o}=orderlyHooks.useAccount(),a=t?.symbol,s=orderlyHooks.useTokenInfo(a),{data:i}=orderlyHooks.useIndexPrice(`SPOT_${a}_USDC`);return {...Ri.useMemo(()=>{let r=new orderlyUtils.Decimal(n.toString()).div(new orderlyUtils.Decimal(10).pow(o.walletAdapter?.chainNamespace===orderlyTypes.ChainNamespace.solana?9:18)).toString(),l=new orderlyUtils.Decimal(r).mul(i||0).toString();return {dstGasFee:r,feeQty:r,feeAmount:l,dp:s?.decimals||8}},[n,i]),nativeSymbol:a}}var Cc=e=>{let{sourceToken:t,targetToken:n}=e,o=Number(e.qty),{data:a}=orderlyHooks.useIndexPricesStream(),s=Ri.useMemo(()=>{if(t?.symbol==="USDC")return 1;let p=`PERP_${t?.symbol}_USDC`;return a[p]??0},[t?.symbol,a]),i=Ri.useMemo(()=>bc({baseWeight:n?.base_weight??0,discountFactor:n?.discount_factor??0,collateralQty:o,collateralCap:t?.user_max_qty??o,indexPrice:s}),[n,o,t?.user_max_qty,s]),c=xc({collateralQty:o,collateralCap:t?.user_max_qty??o,collateralRatio:i.toNumber(),indexPrice:s}),r=orderlyHooks.useComputedLTV(),l=orderlyHooks.useComputedLTV({input:o,token:t?.symbol});return {collateralRatio:i.toNumber(),collateralContributionQuantity:c,currentLTV:r,nextLTV:l,indexPrice:s}},Sc=()=>{let{data:e,error:t,isLoading:n}=orderlyHooks.useQuery("/v1/public/auto_convert_threshold",{errorRetryCount:3});return {ltv_threshold:e?.ltv_threshold,negative_usdc_threshold:e?.negative_usdc_threshold,isLoading:n,error:t}};var Vo=e=>{let{sourceToken:t,targetToken:n,sourceTokens:o,targetTokens:a,onSourceTokenChange:s,onTargetTokenChange:i,amount:c,quantity:r,collateralContributionQuantity:l,maxQuantity:p,onQuantityChange:u,hintMessage:m,inputStatus:b,chains:h,currentChain:d,settingChain:g,onChainChange:T,actionType:f,onDeposit:I,onApprove:y,onApproveAndDeposit:k,fetchBalance:C,wrongNetwork:A,balanceRevalidating:x,loading:F,disabled:S,networkId:w,fee:v,collateralRatio:B,currentLTV:M,nextLTV:D,slippage:_,onSlippageChange:W,minimumReceived:z,needSwap:Q,needCrossSwap:te,swapPrice:P,swapFee:Z,warningMessage:ce,usdcToken:se,targetQuantity:ge,targetQuantityLoading:ie}=e,{t:ye}=orderlyI18n.useTranslation(),he=()=>Q||te?jsxRuntime.jsxs(orderlyUi.Flex,{direction:"column",itemAlign:"start",mt:1,gapY:1,children:[jsxRuntime.jsxs(orderlyUi.Flex,{width:"100%",itemAlign:"center",justify:"between",children:[jsxRuntime.jsx(orderlyUi.Text,{size:"2xs",intensity:36,children:ye("transfer.deposit.convertRate")}),jsxRuntime.jsx(It,{sourceSymbol:t?.display_name||t?.symbol,targetSymbol:n?.display_name||n?.symbol,precision:Pn,indexPrice:P})]}),jsxRuntime.jsx(ot,{value:_,onValueChange:W}),jsxRuntime.jsx(Zt,{value:z,symbol:n?.symbol??"",precision:Pn}),jsxRuntime.jsx(un,{...Z})]}):jsxRuntime.jsxs(orderlyUi.Flex,{direction:"column",itemAlign:"start",mt:2,gap:1,children:[jsxRuntime.jsx(mo,{value:B}),jsxRuntime.jsx(vr,{precision:se?.precision??6,value:l}),jsxRuntime.jsx(ze,{showDiff:typeof r<"u"&&Number(r)>0,currentLtv:M,nextLTV:D}),jsxRuntime.jsx(vt,{...v})]});return jsxRuntime.jsxs(orderlyUi.Box,{id:"oui-deposit-form",className:orderlyUi.textVariants({weight:"semibold"}),children:[jsxRuntime.jsxs(orderlyUi.Box,{className:"oui-mb-6 lg:oui-mb-8",children:[jsxRuntime.jsx(Ft,{}),jsxRuntime.jsxs(orderlyUi.Box,{mt:3,mb:1,children:[jsxRuntime.jsx(Ue,{chains:h,value:d,onValueChange:T,wrongNetwork:A,loading:g}),jsxRuntime.jsx(j,{classNames:{root:"oui-mt-[2px] oui-rounded-t-sm oui-rounded-b-xl"},value:r,onValueChange:u,token:t,tokens:o,onTokenChange:s,status:b,hintMessage:m,fetchBalance:C,"data-testId":"oui-testid-deposit-dialog-quantity-input"})]}),jsxRuntime.jsx(ae,{token:t,amount:c,maxQuantity:p,loading:x,onClick:()=>{u(p);}}),jsxRuntime.jsx(ue,{}),jsxRuntime.jsx(qe,{}),jsxRuntime.jsx(j,{readOnly:true,token:n,tokens:a,onTokenChange:i,value:ge,loading:ie,classNames:{root:"oui-mt-3 oui-border-transparent focus-within:oui-outline-transparent"}}),he()]}),jsxRuntime.jsx($r,{sourceToken:t?.symbol,targetToken:n?.symbol,className:"oui-mb-3"}),jsxRuntime.jsx(sn,{message:ce,needSwap:Q,needCrossSwap:te,wrongNetwork:A,networkId:w}),jsxRuntime.jsx(orderlyUi.Flex,{justify:"center",children:jsxRuntime.jsx(St,{actionType:f,symbol:t?.symbol,disabled:S,loading:F,onDeposit:I,onApprove:y,onApproveAndDeposit:k,networkId:w})})]})};var zo=e=>{let t=Oo(e);return jsxRuntime.jsx(Vo,{...t})};var Rs=e=>{let{value:t,onChange:n,status:o,hintMessage:a,placeholder:s,label:i}=e,c=Ri.useRef(null),r=u=>{n?.(u.target.value);let m=c.current;m&&(m.style.height="auto",m.style.height=`${m.scrollHeight}px`);};Ri.useEffect(()=>{let u=c.current;u&&(u.style.height="auto",u.style.height=`${u.scrollHeight}px`);},[t]);let l=jsxRuntime.jsx("div",{className:"oui-absolute oui-left-3 oui-top-0.5 oui-z-[1]",children:jsxRuntime.jsx(orderlyUi.Text,{size:"2xs",intensity:36,children:i})}),p=jsxRuntime.jsxs(orderlyUi.Flex,{mt:1,gapX:1,px:1,children:[jsxRuntime.jsx(orderlyUi.Box,{width:4,height:4,r:"full",className:orderlyUi.cn(o==="error"&&"oui-bg-danger-light",o==="warning"&&"oui-bg-warning-light")}),jsxRuntime.jsx(orderlyUi.Text,{size:"2xs",className:orderlyUi.cn(o==="error"&&"oui-text-danger-light",o==="warning"&&"oui-text-warning-light"),children:a})]});return jsxRuntime.jsxs("div",{className:"oui-relative",children:[l,jsxRuntime.jsx("textarea",{ref:c,placeholder:s,className:orderlyUi.cn("oui-resize-none oui-overflow-y-hidden","oui-relative oui-min-h-[54px] oui-px-3 oui-pb-2 oui-pt-5","oui-w-full oui-bg-base-5 oui-text-sm oui-text-base-contrast","oui-rounded-lg oui-outline-none","oui-border oui-border-line focus:oui-border-primary-light",o==="error"&&"oui-border-danger-light focus-within:oui-border-danger-light focus:oui-border-danger-light",o==="warning"&&"oui-border-warning-light focus-within:oui-border-warning-light focus:oui-border-warning-light",e.className),rows:1,value:t,onChange:r}),a&&p]})};var Bn=e=>{let{hasPositions:t,unsettledPnl:n,onSettlePnl:o,tooltipContent:a,dialogContent:s}=e,{t:i}=orderlyI18n.useTranslation();if(n===0&&!t)return jsxRuntime.jsx(jsxRuntime.Fragment,{});let c=()=>{orderlyUi.modal.confirm({title:i("settle.settlePnl"),content:s,onOk:()=>o()});};return jsxRuntime.jsxs(orderlyUi.Flex,{justify:"between",className:"oui-text-2xs oui-text-base-contrast-36",children:[jsxRuntime.jsxs(orderlyUi.Flex,{itemAlign:"center",justify:"start",gap:1,children:[jsxRuntime.jsx(orderlyUi.Tooltip,{className:"oui-max-w-[274px] oui-font-semibold",content:a,children:jsxRuntime.jsxs(orderlyUi.Flex,{itemAlign:"center",justify:"start",gap:1,children:[jsxRuntime.jsx(orderlyUi.ExclamationFillIcon,{size:14,className:"oui-text-warning-darken"}),jsxRuntime.jsx(orderlyUi.Text,{className:"oui-cursor-pointer oui-border-b oui-border-dashed oui-border-line-12",children:`${i("settle.unsettled")}:`})]})}),jsxRuntime.jsx(orderlyUi.Text.numeral,{showIdentifier:true,coloring:true,weight:"semibold",dp:6,"data-testid":"oui-testid-withdraw-dialog-unsettledPnl-value",children:n}),jsxRuntime.jsx(orderlyUi.Text,{children:"USDC"})]}),jsxRuntime.jsxs(orderlyUi.Flex,{itemAlign:"center",gap:1,className:"oui-cursor-pointer",children:[jsxRuntime.jsx(Tr,{className:"oui-text-primary"}),jsxRuntime.jsx(orderlyUi.Text,{"data-testid":"oui-testid-withdraw-dialog-settle-text",size:"2xs",color:"primary",className:" oui-select-none",onClick:c,children:i("common.settle")})]})]})};var Es=({address:e,amount:t,currentChain:n})=>{let{t:o}=orderlyI18n.useTranslation(),a=Ri.useMemo(()=>{if(n&&n.info&&n.info.network_infos)return n.info.network_infos.name},[n]);return jsxRuntime.jsxs(orderlyUi.Flex,{direction:"column",itemAlign:"start",justify:"start",className:"oui-gap-1 lg:oui-gap-3",children:[jsxRuntime.jsxs(orderlyUi.Flex,{direction:"column",itemAlign:"start",mb:5,className:"oui-gap-3 lg:oui-gap-4",children:[jsxRuntime.jsxs(orderlyUi.Flex,{direction:"column",justify:"start",itemAlign:"start",children:[jsxRuntime.jsx(orderlyUi.Text,{size:"2xs",intensity:36,children:o("transfer.withdraw.crossChain.recipientAddress")}),jsxRuntime.jsx(orderlyUi.Text,{size:"sm",intensity:98,className:"oui-break-all",children:e})]}),jsxRuntime.jsxs(orderlyUi.Flex,{direction:"column",justify:"start",itemAlign:"start",children:[jsxRuntime.jsx(orderlyUi.Text,{size:"2xs",intensity:36,children:o("transfer.withdraw.crossChain.recipientNetwork")}),jsxRuntime.jsxs(orderlyUi.Flex,{gap:1,children:[jsxRuntime.jsx(orderlyUi.ChainIcon,{className:"oui-h-[18px] oui-w-[18px]",size:"sm",chainId:n.id}),jsxRuntime.jsx(orderlyUi.Text,{size:"sm",intensity:98,children:a})]})]}),jsxRuntime.jsxs(orderlyUi.Flex,{direction:"column",justify:"start",itemAlign:"start",children:[jsxRuntime.jsx(orderlyUi.Text,{size:"2xs",intensity:36,children:`${o("transfer.withdraw.crossChain.withdrawAmount")} (USDC)`}),jsxRuntime.jsx(orderlyUi.Text.numeral,{size:"sm",intensity:98,dp:2,children:t})]})]}),jsxRuntime.jsx(orderlyUi.Flex,{justify:"center",className:"oui-text-warning-darken oui-text-2xs lg:oui-text-xs oui-text-center",mb:3,children:o("transfer.withdraw.crossChain.warning")})]})};function Uo(e){let{t}=orderlyI18n.useTranslation(),n=()=>{orderlyUi.modal.show(orderlyUiChainSelector.ChainSelectorDialogId,{networkId:e.networkId,bridgeLessOnly:true}).then(o=>{orderlyUi.toast.success(t("connector.networkSwitched"));},o=>console.log("[switchChain error]",o));};return jsxRuntime.jsx(orderlyUi.Flex,{direction:"column",children:jsxRuntime.jsx(orderlyUi.Button,{color:"warning",size:e.size,fullWidth:true,onClick:()=>{n();},children:t("connector.switchNetwork")})})}var Ws=e=>{let{disabled:t,loading:n,onWithdraw:o,networkId:a,crossChainWithdraw:s,address:i,currentChain:c,quantity:r,fee:l,checkIsBridgeless:p,onTransfer:u}=e,{t:m}=orderlyI18n.useTranslation(),b=Ri.useMemo(()=>r?new orderlyUtils.Decimal(r).minus(l??0).toNumber():0,[r,l]),h=()=>{if(s){orderlyUi.modal.confirm({title:m("transfer.withdraw.crossChain.confirmWithdraw"),content:jsxRuntime.jsx(Es,{address:i,amount:b,currentChain:c}),classNames:{content:"oui-font-semibold",body:"!oui-pb-0",footer:"!oui-pt-0"},onOk:async()=>{o();}});return}o();},d={initial:"md",lg:"lg"},g=()=>e.withdrawTo==="accountId"?jsxRuntime.jsx(orderlyUi.Button,{fullWidth:true,disabled:t,loading:n,onClick:u,size:d,children:m("common.withdraw")}):p?jsxRuntime.jsx(orderlyUi.Button,{"data-testid":"oui-testid-withdraw-dialog-withdraw-btn",fullWidth:true,disabled:t,loading:n,onClick:h,size:d,children:m("common.withdraw")}):jsxRuntime.jsx(Uo,{networkId:a,size:d});return jsxRuntime.jsx(orderlyUi.Box,{className:"oui-w-full lg:oui-w-auto lg:oui-min-w-[184px]",children:jsxRuntime.jsx(orderlyUiConnector.AuthGuard,{status:orderlyTypes.AccountStatusEnum.EnableTrading,networkId:a,bridgeLessOnly:true,buttonProps:{fullWidth:true,size:d},children:g()})})};var Os=e=>{let{chainVaultBalance:t,currentChain:n,crossChainTrans:o,tokenName:a,qtyGreaterThanMaxAmount:s,qtyGreaterThanVault:i}=e,{t:c}=orderlyI18n.useTranslation(),{state:r}=orderlyHooks.useAccount(),l=Ri.useMemo(()=>{if(n&&n.info&&n.info.network_infos)return n.info.network_infos.name},[n]),u=r.status===orderlyTypes.AccountStatusEnum.NotConnected?null:o?c("transfer.withdraw.crossChain.process"):s?c("transfer.insufficientBalance"):i?c("transfer.withdraw.vaultWarning",{tokenName:a,chainName:l,balance:t}):e.message;return u?jsxRuntime.jsx(orderlyUi.Flex,{my:4,className:"oui-justify-center oui-text-center oui-text-xs oui-text-warning-darken",children:u}):null};var Go=e=>{let{address:t,loading:n,disabled:o,quantity:a,onQuantityChange:s,sourceToken:i,amount:c,maxQuantity:r,tokenChains:l,currentChain:p,fee:u,settingChain:m,chainVaultBalance:b,crossChainTrans:h,checkIsBridgeless:d,withdrawTo:g,sourceTokens:T,onSourceTokenChange:f,vaultBalanceList:I,qtyGreaterThanMaxAmount:y,qtyGreaterThanVault:k}=e,{t:C}=orderlyI18n.useTranslation(),A=jsxRuntime.jsxs(orderlyUi.TabPanel,{title:C("transfer.withdraw.otherAccount",{brokerName:e.brokerName}),value:"accountId",children:[jsxRuntime.jsx(Rs,{label:C("common.accountId"),value:e.toAccountId,onChange:e.setToAccountId,status:e.toAccountIdInputStatus,hintMessage:e.toAccountIdHintMessage}),jsxRuntime.jsx(orderlyUi.Box,{my:2,children:jsxRuntime.jsx(orderlyUi.Text,{size:"xs",intensity:54,children:C("transfer.withdraw.accountId.tips")})})]});return jsxRuntime.jsxs(orderlyUi.Box,{id:"oui-withdraw-form",className:orderlyUi.textVariants({weight:"semibold"}),children:[jsxRuntime.jsxs(orderlyUi.Box,{className:"oui-mb-6 lg:oui-mb-8",children:[jsxRuntime.jsx(qe,{}),jsxRuntime.jsx(orderlyUi.Box,{mt:3,mb:1,children:jsxRuntime.jsx(j,{value:a,onValueChange:s,token:i,tokens:T,onTokenChange:f,status:e.inputStatus,hintMessage:e.hintMessage,vaultBalanceList:I,testId:"oui-testid-withdraw-dialog-quantity-input",displayType:"vaultBalance"})}),jsxRuntime.jsx(ae,{token:i,amount:c,maxQuantity:r.toString(),loading:e.balanceRevalidating,onClick:()=>{s(r.toString());}}),jsxRuntime.jsx(orderlyUi.Box,{mx:2,mt:1,children:jsxRuntime.jsx(Bn,{unsettledPnl:e.unsettledPnL,hasPositions:e.hasPositions,onSettlePnl:e.onSettlePnl,tooltipContent:C("settle.unsettled.tooltip"),dialogContent:jsxRuntime.jsx(orderlyI18n.Trans,{i18nKey:"settle.settlePnl.description"})})}),jsxRuntime.jsx(ue,{}),jsxRuntime.jsxs(orderlyUi.Tabs,{value:g,onValueChange:e.setWithdrawTo,variant:"contained",size:"lg",classNames:{tabsList:"oui-px-0",tabsContent:"oui-pt-3"},children:[jsxRuntime.jsxs(orderlyUi.TabPanel,{title:C("transfer.web3Wallet.my"),icon:jsxRuntime.jsx(orderlyUi.WalletIcon,{size:"xs",name:e.walletName??""}),value:"wallet",children:[jsxRuntime.jsx(Ue,{chains:l,value:p,onValueChange:e.onChainChange,wrongNetwork:e.wrongNetwork,loading:m}),jsxRuntime.jsx(j,{classNames:{root:"oui-mt-[2px] oui-rounded-t-sm oui-rounded-b-xl"},token:i,value:e.showQty,readOnly:true})]}),A]}),jsxRuntime.jsx(orderlyUi.Box,{mt:2,children:jsxRuntime.jsx(ze,{showDiff:typeof a<"u"&&Number(a)>0,currentLtv:e.currentLTV,nextLTV:e.nextLTV})}),jsxRuntime.jsx(orderlyUi.Flex,{direction:"column",mt:1,gapY:1,itemAlign:"start",children:jsxRuntime.jsxs(orderlyUi.Text,{size:"xs",intensity:36,children:[C("common.fee"),g==="wallet"?jsxRuntime.jsxs(jsxRuntime.Fragment,{children:[" \u2248 ",jsxRuntime.jsx(orderlyUi.Text,{size:"xs",intensity:80,children:u})]}):jsxRuntime.jsxs(jsxRuntime.Fragment,{children:[" = ",jsxRuntime.jsx(orderlyUi.Text,{size:"xs",intensity:80,children:"0"})]})]})})]}),jsxRuntime.jsx(Os,{checkIsBridgeless:d,chainVaultBalance:b,currentChain:p,crossChainTrans:h,tokenName:i?.symbol,qtyGreaterThanVault:k,qtyGreaterThanMaxAmount:y,message:e.ltvWarningMessage}),jsxRuntime.jsx(orderlyUi.Flex,{justify:"center",children:jsxRuntime.jsx(Ws,{checkIsBridgeless:d,networkId:e.networkId,disabled:o,loading:n,onWithdraw:e.onWithdraw,crossChainWithdraw:e.crossChainWithdraw,currentChain:p,address:t,quantity:a,fee:u,withdrawTo:g,onTransfer:e.onTransfer})})]})};var dt=e=>{let{accountId:t}=e||{},{t:n}=orderlyI18n.useTranslation(),o=orderlyHooks.useEventEmitter(),{account:a,state:s}=orderlyHooks.useAccount(),[i]=orderlyHooks.usePositionStream();return {hasPositions:Ri.useMemo(()=>!!i?.rows?.length,[i]),onSettlePnl:async()=>(t&&s.mainAccountId!==t?a.settleSubAccount({subAccountId:t}):a.settle({accountId:t})).then(u=>(orderlyUi.toast.success(n("settle.settlement.requested")),Promise.resolve(u))).catch(u=>{if(u.code==-1104)orderlyUi.toast.error(n("settle.settlement.error"));else if(u.message.indexOf("Signing off chain messages with Ledger is not yet supported")!==-1)o.emit("wallet:sign-message-with-ledger-error",{message:u.message,userAddress:a.address});else if(u.message.indexOf("user rejected")!==-1)orderlyUi.toast.error(n("transfer.rejectTransaction"));else return orderlyUi.toast.error(u.message),Promise.reject(u)})}};function qs(e){let{token:t,quantity:n,setQuantity:o,close:a,setLoading:s,decimals:i}=e,{t:c}=orderlyI18n.useTranslation(),[r,l]=Ri.useState("wallet"),[p,u]=Ri.useState(""),[m,b]=Ri.useState("default"),[h,d]=Ri.useState(),{transfer:g,submitting:T}=orderlyHooks.useInternalTransfer(),f=Ri.useCallback(()=>{let I=Number(n);if(Number.isNaN(I)||I<=0){orderlyUi.toast.error(c("transfer.quantity.invalid"));return}T||!p||(s(true),g({token:t,receiver:p,amount:n,decimals:i}).then(()=>{orderlyUi.toast.success(c("transfer.internalTransfer.success")),o(""),a?.();}).catch(y=>{console.log("transfer error",y);let k=kn(y.code);orderlyUi.toast.error(k);}).finally(()=>{s(false);}));},[c,n,t,T,p,g]);return Ri.useEffect(()=>{if(!p){b("default"),d("");return}rs(p)?(b("default"),d("")):(b("error"),d(c("transfer.withdraw.accountId.invalid")));},[p]),{withdrawTo:r,setWithdrawTo:l,toAccountId:p,setToAccountId:u,onTransfer:f,internalWithdrawSubmitting:T,toAccountIdInputStatus:m,toAccountIdHintMessage:h}}function Us(e){let{crossChainWithdraw:t,currentChain:n,token:o}=e,a=orderlyHooks.useTokenInfo(o);return Ri.useMemo(()=>{if(!n)return 0;let i=a?.chain_details?.find(c=>Number.parseInt(c.chain_id)===n.id);return i?t?(i.withdrawal_fee||0)+(i.cross_chain_withdrawal_fee||0):i.withdrawal_fee||0:0},[a,o,n,t])}var Qs=e=>{let{token:t,quantity:n}=e,{ltv_threshold:o}=vm(),{t:a}=orderlyI18n.useTranslation(),s=orderlyHooks.useComputedLTV(),i=orderlyHooks.useComputedLTV({input:n?-Number(n):0,token:t}),c=Ri.useMemo(()=>{if(o&&i){let r=o*100;if(i>r)return a("transfer.withdraw.LTV.error",{threshold:r})}return ""},[i,o]);return {currentLTV:s,nextLTV:i,ltvWarningMessage:c,t:a}},vm=()=>{let{data:e}=orderlyHooks.useQuery("/v1/public/auto_convert_threshold",{revalidateOnFocus:false});return {ltv_threshold:e?.ltv_threshold,negative_usdc_threshold:e?.negative_usdc_threshold}};var Xs=1,Ho=e=>{let{t}=orderlyI18n.useTranslation(),[n,o]=Ri.useState(false),[a,s]=Ri.useState(false),[i]=orderlyHooks.useAssetsHistory({page:1,pageSize:1,side:orderlyTypes.AssetHistorySideEnum.WITHDRAW,status:orderlyTypes.AssetHistoryStatusEnum.PENDING_REBALANCE},{shouldUpdateOnWalletChanged:N=>N.side===orderlyTypes.AssetHistorySideEnum.WITHDRAW}),c=orderlyHooks.useConfig(),r=c.get("brokerName"),l=c.get("networkId"),p=orderlyHooks.useEventEmitter(),[u,m]=Ri.useState(""),[b,h]=Ri.useState("default"),[d,g]=Ri.useState(),{wrongNetwork:T}=orderlyReactApp.useAppContext(),{account:f}=orderlyHooks.useAccount(),[I,{findByChainId:y}]=orderlyHooks.useChains(l,{filter:N=>N.network_infos?.bridge_enable||N.network_infos?.bridgeless}),[k]=orderlyHooks.useLocalStorage("orderly_link_device",{}),{data:C}=orderlyHooks.useQuery("/v1/public/vault_balance",{revalidateOnMount:true,errorRetryCount:3}),{connectedChain:A,wallet:x,setChain:F,settingChain:S}=orderlyHooks.useWalletConnector(),w=Ri.useMemo(()=>{let N=A?orderlyUtils.praseChainIdToNumber(A.id):Number.parseInt(k?.chainId);if(!N)return null;let X=y(N);return {...A,id:N,info:X}},[y,A,k]),{sourceToken:v,onSourceTokenChange:B,sourceTokens:M}=Dn(w,N=>N.symbol==="USDC"||N.is_collateral),D=Ri.useMemo(()=>I.filter(N=>N.token_infos?.some(X=>X.symbol===v?.symbol)).map(N=>N.network_infos),[I,l,v]),{walletName:_,address:W}=Ri.useMemo(()=>({walletName:x?.label,address:x?.accounts?.[0].address}),[x]),z=N=>{m(N);},Q=Ri.useMemo(()=>new orderlyUtils.Decimal(u||0).mul(Xs).toNumber(),[u,Xs]),{withdraw:te,maxAmount:P,unsettledPnL:Z}=orderlyHooks.useWithdraw({token:v?.symbol,decimals:v?.token_decimal}),ce=qs({token:v?.symbol,decimals:v?.token_decimal,quantity:u,setQuantity:m,close:e.close,setLoading:s}),{withdrawTo:se,toAccountId:ge}=ce,ie=Ri.useMemo(()=>T||!w?false:l==="testnet"?true:!(!w.info||!w.info.network_infos||!w.info.network_infos.bridgeless),[w,T]),ye=()=>{m("");},he=Ri.useCallback(async N=>{let X=y(N.chain_id);return !X||X.network_infos?.chain_id===w?.id?Promise.resolve():F?.({chainId:orderlyUtils.int2hex(Number(X.network_infos?.chain_id))}).then(Le=>{Le?(orderlyUi.toast.success(t("connector.networkSwitched")),ye()):orderlyUi.toast.error(t("connector.switchChain.failed"));}).catch(Le=>{orderlyUi.toast.error(`${t("connector.switchChain.failed")}: ${Le.message}`);})},[w,F,y,t]),K=Ri.useMemo(()=>{if(!Array.isArray(C)||!w)return null;let N=C.find(X=>Number.parseInt(X.chain_id)===w?.id&&X.token===v?.symbol);return N?N.balance:null},[I,w,C,v?.symbol]),Ne=Ri.useMemo(()=>!u||Number.isNaN(u)?false:!P||Number.isNaN(P)?true:new orderlyUtils.Decimal(u).gt(P),[u,P]),we=Ri.useMemo(()=>!u||Number.isNaN(u)?false:!K||Number.isNaN(K)?true:new orderlyUtils.Decimal(u).gt(K),[u,K]),me=Ri.useMemo(()=>{if(K!==null){let N=Number.parseFloat(u);return N>K&&N<=P}return false},[u,P,K]),R=Ri.useMemo(()=>v?.minimum_withdraw_amount??0,[v]),O=async()=>{if(!a&&b==="default"){if(new orderlyUtils.Decimal(u).lt(R)){orderlyUi.toast.error(t("transfer.withdraw.minAmount.error",{minAmount:R}));return}return s(true),te({amount:u,token:v?.symbol,chainId:w?.id,allowCrossChainWithdraw:me}).then(N=>{orderlyUi.toast.success(t("transfer.withdraw.requested")),p.emit("withdraw:requested"),e.close?.(),m("");}).catch(N=>{if(N.message.indexOf("user rejected")!==-1){orderlyUi.toast.error(t("transfer.rejectTransaction"));return}if(N.message.indexOf("Signing off chain messages with Ledger is not yet supported")!==-1){p.emit("wallet:sign-message-with-ledger-error",{message:N.message,userAddress:f.address});return}orderlyUi.toast.error(N.message);}).finally(()=>{s(false);})}},U=Us({crossChainWithdraw:me,currentChain:w,token:v?.symbol}),$=Ri.useMemo(()=>{if(!u)return "";let N=new orderlyUtils.Decimal(u).sub(U??0);return N.isNegative()?"":N.toNumber()},[U,u]);Ri.useEffect(()=>{if(!u){h("default"),g("");return}let N=new orderlyUtils.Decimal(u??0);Z<0&&(N.gt(P)?(h("error"),g(t("transfer.insufficientBalance"))):(h("default"),g("")));},[u,P,Z,n]);let De=n||!u||Number(u)===0||["error","warning"].includes(b)||se==="accountId"&&!ge||Ne||we;Ri.useEffect(()=>{o(!!i?.length);},[i?.length]);let Tt=orderlyHooks.useMemoizedFn(N=>{if(!n)return;let X=i?.[0]?.tx_id,{trxId:Le,transStatus:Zn}=N;Le===X&&Zn==="COMPLETED"&&o(false);});orderlyHooks.useWalletTopic({onMessage:Tt});let{hasPositions:Hn,onSettlePnl:$n}=dt(),{currentLTV:Xn,nextLTV:jn,ltvWarningMessage:Yn}=Qs({token:v?.symbol,quantity:u});return {walletName:_,address:W,quantity:u,onQuantityChange:z,sourceToken:v,onSourceTokenChange:B,sourceTokens:M,inputStatus:b,hintMessage:d,amount:Q,balanceRevalidating:false,maxQuantity:P,disabled:De,loading:a,unsettledPnL:Z,wrongNetwork:T,settingChain:S,tokenChains:D,currentChain:w,onChainChange:he,onWithdraw:O,chainVaultBalance:K,fee:U,crossChainWithdraw:me,crossChainTrans:n,showQty:$,networkId:l,checkIsBridgeless:ie,hasPositions:Hn,onSettlePnl:$n,brokerName:r,qtyGreaterThanMaxAmount:Ne,qtyGreaterThanVault:we,vaultBalanceList:C?.filter(N=>Number.parseInt(N.chain_id)===w?.id),...ce,currentLTV:Xn,nextLTV:jn,ltvWarningMessage:Yn}};var $o=e=>{let t=Ho(e);return jsxRuntime.jsx(Go,{...t})};var js=e=>jsxRuntime.jsx(orderlyUi.ExtensionSlot,{position:orderlyUi.ExtensionPositionEnum.DepositForm,defaultWidget:zo,...e});var Ys=e=>jsxRuntime.jsx(orderlyUi.ExtensionSlot,{position:orderlyUi.ExtensionPositionEnum.WithdrawForm,defaultWidget:$o,...e});var op="DepositAndWithdrawWithDialogId",rp="DepositAndWithdrawWithSheetId",Ks=e=>{let[t,n]=Ri.useState(e.activeTab||"deposit"),{t:o}=orderlyI18n.useTranslation();return jsxRuntime.jsxs(orderlyUi.Tabs,{value:t,onValueChange:n,variant:"contained",size:"lg",classNames:{tabsList:"oui-px-0",tabsContent:"oui-pt-5"},children:[jsxRuntime.jsx(orderlyUi.TabPanel,{title:o("common.deposit"),icon:jsxRuntime.jsx(orderlyUi.ArrowDownSquareFillIcon,{}),value:"deposit",children:jsxRuntime.jsx(js,{close:e.close})}),jsxRuntime.jsx(orderlyUi.TabPanel,{title:o("common.withdraw"),icon:jsxRuntime.jsx(orderlyUi.ArrowUpSquareFillIcon,{}),value:"withdraw",children:jsxRuntime.jsx(Ys,{close:e.close})})]})};orderlyUi.registerSimpleDialog(op,Ks,{size:"md",classNames:{content:"oui-border oui-border-line-6"}});orderlyUi.registerSimpleSheet(rp,Ks);var Yo=e=>{let{token:t,tokens:n,onTokenChange:o,amount:a,quantity:s,maxQuantity:i,swapQuantity:c,onQuantityChange:r,hintMessage:l,inputStatus:p,chains:u,currentChain:m,settingChain:b,onChainChange:h,actionType:d,onDeposit:g,onApprove:T,fetchBalance:f,dst:I,wrongNetwork:y,balanceRevalidating:k,loading:C,disabled:A,networkId:x,slippage:F,onSlippageChange:S,needSwap:w,needCrossSwap:v,swapPrice:B,swapRevalidating:M,warningMessage:D,fee:_}=e;return jsxRuntime.jsxs(orderlyUi.Box,{id:"oui-swap-deposit-form",className:orderlyUi.textVariants({weight:"semibold"}),children:[jsxRuntime.jsxs(orderlyUi.Box,{className:"oui-mb-6 lg:oui-mb-8",children:[jsxRuntime.jsx(Ft,{}),jsxRuntime.jsxs(orderlyUi.Box,{mt:3,mb:1,children:[jsxRuntime.jsx(Ue,{chains:u,value:m,onValueChange:h,wrongNetwork:y,loading:b}),jsxRuntime.jsx(j,{classNames:{root:"oui-mt-[2px] oui-rounded-t-sm oui-rounded-b-xl"},value:s,onValueChange:r,tokens:n,token:t,onTokenChange:o,status:p,hintMessage:l,fetchBalance:f,"data-testid":"oui-testid-swap-deposit-dialog-quantity-input"})]}),jsxRuntime.jsx(ae,{token:t,amount:a,maxQuantity:i,loading:k,onClick:()=>{r(i);}}),jsxRuntime.jsx(ue,{}),jsxRuntime.jsx(qe,{}),jsxRuntime.jsx(j,{readOnly:true,token:I,value:c,loading:M,classNames:{root:"oui-mt-3 oui-border-transparent focus-within:oui-outline-transparent"}}),jsxRuntime.jsxs(orderlyUi.Flex,{direction:"column",itemAlign:"start",mt:1,gapY:1,children:[jsxRuntime.jsx(orderlyUi.Flex,{justify:"between",width:"100%",children:(w||v)&&jsxRuntime.jsx(ot,{value:F,onValueChange:S})}),jsxRuntime.jsx(un,{..._})]})]}),jsxRuntime.jsx(sn,{message:D,needSwap:w,needCrossSwap:v,wrongNetwork:y,networkId:x}),jsxRuntime.jsx(orderlyUi.Flex,{justify:"center",children:jsxRuntime.jsx(St,{actionType:d,symbol:t?.symbol,disabled:A,loading:C,onDeposit:g,onApprove:T,networkId:x})})]})};function ei(e){let{currentChain:t,tokensFilter:n}=e,[o,a]=Ri.useState(),[s,i]=Ri.useState([]),c=Ri.useCallback(r=>{if(r&&r?.token_infos?.length>0){let l=typeof n=="function"?n(r):r.token_infos;i(l);let p=Tn(l);if(!p)return;a(p);}},[n]);return Ri.useEffect(()=>{c(t?.info);},[t?.id,c]),{token:o,tokens:s,onTokenChange:a}}var Ko=e=>{let[t,n]=orderlyHooks.useLocalStorage("orderly_swap_deposit_slippage",1),o=orderlyHooks.useConfig(),a=o.get("brokerName")||"",s=o.get("networkId"),{wrongNetwork:i}=orderlyReactApp.useAppContext(),{chains:c,currentChain:r,settingChain:l,onChainChange:p}=Pt(),u=Ri.useCallback($=>$.token_infos.filter(De=>$.network_infos.bridgeless&&De.symbol==="USDC"?true:!!De.swap_enable)??[],[]),{token:m,tokens:b,onTokenChange:h}=ei({currentChain:r,tokensFilter:u}),{dst:d,balance:g,allowance:T,depositFeeRevalidating:f,depositFee:I,quantity:y,setQuantity:k,approve:C,deposit:A,isNativeToken:x,balanceRevalidating:F,fetchBalance:S}=orderlyHooks.useDeposit({address:m?.address,decimals:m?.decimals,srcChainId:r?.id,srcToken:m?.symbol,crossChainRouteAddress:r?.info?.network_infos?.cross_chain_router,depositorAddress:r?.info?.network_infos?.depositor}),w=Ri.useMemo(()=>new orderlyUtils.Decimal(g||0).todp(m?.precision??2,orderlyUtils.Decimal.ROUND_DOWN).toString(),[g,m]),{inputStatus:v,hintMessage:B}=Et({quantity:y,maxQuantity:w}),{needSwap:M,needCrossSwap:D}=fn({srcToken:m,srcChainId:r?.id,dstChainId:d?.chainId}),{enquiry:_,transactionInfo:W,amount:z,querying:Q,warningMessage:te,cleanTransactionInfo:P}=In({quantity:y,dst:d,queryParams:{network:d.network,srcToken:m?.address,srcNetwork:r?.info?.network_infos?.shortName,dstToken:d.address,crossChainRouteAddress:r?.info?.network_infos?.cross_chain_router,amount:new orderlyUtils.Decimal(y||0).mul(10**(m?.decimals||0)).toString(),slippage:t},needSwap:M,needCrossSwap:D}),Z=()=>{P(),k("");},ce=Ri.useCallback(()=>{Z(),e.onClose?.();},[e.onClose]),se=Ri.useCallback(async()=>_().then($=>{let De=D?$.route_infos?.dst.amounts[1]:$.route_infos?.amounts[1],Tt={mode:D?1:0,src:{chain:r?.id,token:m.symbol,displayDecimals:m?.precision,amount:y,decimals:m.decimals},dst:{chain:d.chainId,token:d.symbol,displayDecimals:2,amount:new orderlyUtils.Decimal(De).div(Math.pow(10,d.decimals)).toString(),decimals:d.decimals},chain:r?.info?.network_infos,nativeToken:r?.info?.nativeToken,depositFee:I,transactionData:$,slippage:t,brokerName:a};return orderlyUi.modal.show(vn,Tt)}).then($=>{$&&Z();}).catch($=>{}),[y,D,d,r,t,I]),{submitting:ge,onApprove:ie,onDeposit:ye}=Rt({quantity:y,allowance:T,approve:C,deposit:A,enableCustomDeposit:M||D,customDeposit:se,onSuccess:ce}),he=ge||f||Q,K=!y||Number(y)===0||v==="error"||f||Q,Ne=Ri.useMemo(()=>D||M?W.price:1,[W]),we=Ri.useMemo(()=>D||M?x?W.markPrices.native_token:W.markPrices.from_token:1,[M,D,x,W]),me=Ri.useMemo(()=>new orderlyUtils.Decimal(y||0).mul(we).toNumber(),[y,we]),R=M||D?z:y,O=Dt({isNativeToken:x,allowance:T,quantity:y,maxQuantity:w}),U=Fn({nativeToken:r?.info?.nativeToken,isNativeToken:x,src:m,depositFee:I,transactionInfo:W,needSwap:M,needCrossSwap:D});return Ri.useEffect(()=>{Z();},[m,r?.id]),{token:m,tokens:b,onTokenChange:h,amount:me,quantity:y,maxQuantity:w,swapQuantity:R,onQuantityChange:k,hintMessage:B,inputStatus:v,chains:c,currentChain:r,settingChain:l,onChainChange:p,actionType:O,onDeposit:ye,onApprove:ie,fetchBalance:S,dst:d,wrongNetwork:i,balanceRevalidating:F,loading:he,disabled:K,networkId:s,slippage:t,onSlippageChange:n,needSwap:M,needCrossSwap:D,swapPrice:Ne,swapRevalidating:Q,warningMessage:te,fee:U}};var gp=e=>{let t=Ko(e);return jsxRuntime.jsx(Yo,{...t})};var er=e=>{let{subAccounts:t=[],value:n}=e,[o,a]=Ri.useState(false),s=t.length>1,i=jsxRuntime.jsxs(orderlyUi.Flex,{intensity:500,className:orderlyUi.cn("oui-rounded-b-sm oui-rounded-t-xl oui-border oui-border-line",s?"oui-cursor-pointer":"oui-cursor-auto oui-bg-base-6"),height:54,px:3,justify:"between",itemAlign:"center",children:[jsxRuntime.jsxs(orderlyUi.Flex,{direction:"column",itemAlign:"start",children:[jsxRuntime.jsx(orderlyUi.Text.formatted,{size:"xs",intensity:80,rule:n?.description?void 0:"address",children:n?.description||n?.id}),jsxRuntime.jsxs(orderlyUi.Text,{intensity:36,size:"2xs",children:["ID: ",jsxRuntime.jsx(orderlyUi.Text.formatted,{rule:"address",children:n?.id})]})]}),s&&jsxRuntime.jsx($t,{className:"oui-text-base-contrast-54"})]}),c=t.map((r,l)=>{let p=r.id===n?.id,u=r?.holding?.find(m=>m.token==="USDC")?.holding;return jsxRuntime.jsxs(orderlyUi.Flex,{px:2,r:"base",justify:"between",className:orderlyUi.cn("oui-transfer-form-account-select-item","oui-cursor-pointer oui-py-[6px] hover:oui-bg-base-5",p&&"oui-bg-base-5",l!==0&&"oui-mt-[2px]"),onClick:async()=>{a(false),e.onValueChange?.(r);},children:[jsxRuntime.jsx(orderlyUi.Flex,{gapX:1,itemAlign:"center",children:jsxRuntime.jsxs(orderlyUi.Flex,{direction:"column",itemAlign:"start",className:"oui-text-2xs",children:[jsxRuntime.jsx(orderlyUi.Text.formatted,{rule:r?.description?void 0:"address",intensity:80,children:r?.description||r?.id}),jsxRuntime.jsxs(orderlyUi.Text,{intensity:36,size:"2xs",children:["ID: ",jsxRuntime.jsx(orderlyUi.Text.formatted,{rule:"address",children:r?.id})]})]})}),jsxRuntime.jsxs(orderlyUi.Flex,{gapX:3,children:[jsxRuntime.jsx(orderlyUi.Text.numeral,{size:"2xs",intensity:54,unit:" USDC",children:u||0}),p&&jsxRuntime.jsx(orderlyUi.Box,{width:4,height:4,r:"full",className:"oui-transfer-form-account-select-active-dot oui-bg-[linear-gradient(270deg,#59B0FE_0%,#26FEFE_100%)]"})]})]},r.id)});return jsxRuntime.jsxs(orderlyUi.DropdownMenuRoot,{open:s?o:false,onOpenChange:a,children:[jsxRuntime.jsx(orderlyUi.DropdownMenuTrigger,{asChild:true,children:i}),jsxRuntime.jsx(orderlyUi.DropdownMenuPortal,{children:jsxRuntime.jsx(orderlyUi.DropdownMenuContent,{onCloseAutoFocus:r=>r.preventDefault(),align:"start",sideOffset:2,className:orderlyUi.cn("oui-transfer-form-account-select-dropdown-menu-content","oui-font-semibold","oui-bg-base-8 oui-p-1","oui-w-[var(--radix-dropdown-menu-trigger-width)]","oui-select-none oui-rounded-md"),children:jsxRuntime.jsx(orderlyUi.ScrollArea,{className:"oui-h-[254px]",children:jsxRuntime.jsxs("div",{children:[c," "]})})})})]})};var tr=e=>{let{networkId:t,disabled:n,onTransfer:o,quantity:a,onQuantityChange:s,amount:i,tokens:c,token:r,onTokenChange:l,maxQuantity:p,submitting:u,hintMessage:m,inputStatus:b,hasPositions:h,onSettlePnl:d,unsettledPnL:g,toAccountAsset:T,fromAccounts:f,toAccounts:I,fromAccount:y,onFromAccountChange:k,toAccount:C,onToAccountChange:A,onExchange:x}=e,{t:F}=orderlyI18n.useTranslation(),S={initial:"md",lg:"lg"};return jsxRuntime.jsxs(orderlyUi.Box,{id:"oui-deposit-form",className:orderlyUi.textVariants({weight:"semibold"}),children:[jsxRuntime.jsxs(orderlyUi.Box,{className:"oui-mb-6 lg:oui-mb-8",children:[jsxRuntime.jsx(orderlyUi.Text,{size:"sm",intensity:98,children:F("transfer.internalTransfer.from")}),jsxRuntime.jsxs(orderlyUi.Box,{mt:1,mb:1,children:[jsxRuntime.jsx(er,{subAccounts:f,value:y,onValueChange:k}),jsxRuntime.jsx(j,{classNames:{root:"oui-mt-[2px] oui-rounded-t-sm oui-rounded-b-xl"},value:a,onValueChange:s,tokens:c,token:r,onTokenChange:l,hintMessage:m,status:b})]}),jsxRuntime.jsx(ae,{token:r,amount:i,maxQuantity:p,onClick:()=>{s(p.toString());}}),jsxRuntime.jsx(orderlyUi.Box,{mx:2,mt:1,children:jsxRuntime.jsx(Bn,{unsettledPnl:g,hasPositions:h,onSettlePnl:d,tooltipContent:F("transfer.internalTransfer.unsettled.tooltip"),dialogContent:jsxRuntime.jsx(orderlyI18n.Trans,{i18nKey:"transfer.internalTransfer.settlePnl.description"})})}),jsxRuntime.jsx(ue,{icon:jsxRuntime.jsx(kr,{className:"oui-cursor-pointer oui-text-primary",onClick:x})}),jsxRuntime.jsx(orderlyUi.Text,{size:"sm",intensity:98,children:F("transfer.internalTransfer.to")}),jsxRuntime.jsxs(orderlyUi.Box,{mt:1,children:[jsxRuntime.jsx(er,{subAccounts:I,value:C,onValueChange:A}),jsxRuntime.jsxs(orderlyUi.Flex,{className:orderlyUi.cn("oui-mt-[2px] oui-h-[31px] oui-text-base-contrast-54","oui-rounded-b-xl oui-rounded-t-sm"),justify:"between",itemAlign:"center",px:3,intensity:600,children:[jsxRuntime.jsx(orderlyUi.Text,{size:"2xs",children:F("transfer.internalTransfer.currentAssetValue")}),jsxRuntime.jsx(orderlyUi.Text.numeral,{size:"2xs",intensity:54,unit:` ${r.symbol}`,dp:r?.precision,padding:false,children:T})]})]})]}),jsxRuntime.jsx(orderlyUi.Flex,{justify:"center",children:jsxRuntime.jsx(orderlyUi.Box,{className:"oui-w-full lg:oui-w-auto lg:oui-min-w-[184px]",children:jsxRuntime.jsx(orderlyUiConnector.AuthGuard,{networkId:t,buttonProps:{fullWidth:true,size:S},children:jsxRuntime.jsx(orderlyUi.Button,{fullWidth:true,disabled:n,loading:u,size:S,onClick:o,children:F("common.transfer")})})})})]})};var or={symbol:"USDC"},rr=e=>{let{t}=orderlyI18n.useTranslation(),[n,o]=Ri.useState(""),[a,s]=Ri.useState(),[i,c]=Ri.useState(),[r,l]=Ri.useState(),[p,u]=Ri.useState([or]),[m,b]=Ri.useState(or),[h,d]=Ri.useState({}),g=orderlyHooks.useConfig("networkId"),{state:T,isMainAccount:f,subAccount:I}=orderlyHooks.useAccount(),y=orderlyHooks.useTokensInfo(),{transfer:k,submitting:C,maxAmount:A,unsettledPnL:x}=orderlyHooks.useTransfer({fromAccountId:a?.id,token:m.symbol}),F=T.subAccounts,S=T.mainAccountId,w=T.accountId,v=f?a?.id!==S?a?.id:void 0:a?.id,{hasPositions:B,onSettlePnl:M}=dt({accountId:a?.id}),{portfolio:D,positions:_}=orderlyHooks.useSubAccountDataObserver(v),W=orderlyHooks.useSubAccountMaxWithdrawal({token:m.symbol,unsettledPnL:D?.unsettledPnL,freeCollateral:D?.freeCollateral??orderlyUtils.zero,holdings:D?.holding}),z=Ri.useMemo(()=>!!_?.rows?.length,[_]),Q=Ri.useMemo(()=>v?z:B,[v,z,B]),{unsettledPnL:te,maxQuantity:P}=Ri.useMemo(()=>v?{unsettledPnL:D?.unsettledPnL,maxQuantity:W}:{unsettledPnL:x,maxQuantity:A},[v,x,A,D?.unsettledPnL,W]),{inputStatus:Z,hintMessage:ce}=Wp({quantity:n,maxQuantity:P,unsettledPnL:te}),se=Ri.useCallback(()=>{let R=Number(n);if(isNaN(R)||R<=0){orderlyUi.toast.error(t("transfer.quantity.invalid"));return}C||!i||k(m.symbol,{account_id:i.id,amount:new orderlyUtils.Decimal(n).toNumber()}).then(()=>{orderlyUi.toast.success(t("transfer.internalTransfer.success")),o(""),e.close?.();}).catch(O=>{console.error("transfer error: ",O);let U=kn(O.code);orderlyUi.toast.error(U);});},[t,m,n,C,k,i]),ge=C||!n||Z==="error",ie=Ri.useMemo(()=>new orderlyUtils.Decimal(n||0).mul(1).toNumber(),[n]),ye=Ri.useMemo(()=>i?.id&&h[i.id]?.find(U=>U.token===m.symbol)?.holding||0,[i,m,h]),{fromAccounts:he,toAccounts:K}=Ri.useMemo(()=>f?{fromAccounts:r?[r,...F||[]]:[],toAccounts:a?.id===S?F:[]}:{fromAccounts:[],toAccounts:[]},[f,S,r,F,a]);Ri.useEffect(()=>{if(!S)return;let R={id:S,description:t("common.mainAccount"),holding:[]};l(R),I.refresh().then(O=>{d(O),l({...R,holding:O[S]});});},[t,S]),Ri.useEffect(()=>{s(f?r:F?.find(R=>R.id===w));},[f,r,F,w]),Ri.useEffect(()=>{if(f){let R=F?.[0],O=e.toAccountId&&F?.find(U=>U.id===e.toAccountId)||R;O&&c(O);}else c(r);},[e?.toAccountId,f,r,F]),Ri.useEffect(()=>{let R=y?.map(O=>({symbol:O.token,precision:O.decimals}));if(R?.length){R.sort((U,$)=>U.symbol==="USDC"?-1:$.symbol==="USDC"?1:0);let O=R?.find(U=>U.symbol===e.token);u(R),b(O||R?.[0]||or);}},[y,e.token]);let Ne=Ri.useCallback(R=>{s(R);let O=F?.[0];if(R?.id===S){c(O);return}if(R?.id&&R?.id!==S){c(r);return}},[S,r,F]),we=Ri.useCallback(R=>{c(R);},[]),me=Ri.useCallback(()=>{s(i),c(a);},[a,i]);return {networkId:g,onTransfer:se,quantity:n,amount:ie,onQuantityChange:o,maxQuantity:P,tokens:p,token:m,onTokenChange:b,disabled:ge,submitting:C,hintMessage:ce,inputStatus:Z,hasPositions:Q,onSettlePnl:M,unsettledPnL:te,toAccountAsset:ye,fromAccount:a,toAccount:i,fromAccounts:he,onFromAccountChange:Ne,toAccounts:K,onToAccountChange:we,onExchange:me,isMainAccount:f}};function Wp(e){let{quantity:t,maxQuantity:n,unsettledPnL:o=0}=e,{t:a}=orderlyI18n.useTranslation(),[s,i]=Ri.useState("default"),[c,r]=Ri.useState();return Ri.useEffect(()=>{if(!t){i("default"),r("");return}let l=new orderlyUtils.Decimal(t);o<0?l.gt(n)?(i("error"),r(a("transfer.insufficientBalance"))):(i("default"),r("")):l.gt(n)?(i("error"),r(a("transfer.insufficientBalance"))):l.gt(new orderlyUtils.Decimal(n).minus(o))&&l.lessThanOrEqualTo(n)?(i("warning"),r(a("settle.settlePnl.warning"))):(i("default"),r(""));},[t,n]),{inputStatus:s,hintMessage:c}}var Vp="TransferDialogId",zp="TransferSheetId",qp=e=>{let t=rr({toAccountId:e.toAccountId,token:e.token,close:e.close});return jsxRuntime.jsx(tr,{...t})},ri=e=>jsxRuntime.jsx(qp,{close:e.close,toAccountId:e.toAccountId,token:e.token});orderlyUi.registerSimpleDialog(Vp,ri,{size:"md",classNames:{content:"oui-border oui-border-line-6"},title:()=>orderlyI18n.i18n.t("common.transfer")});orderlyUi.registerSimpleSheet(zp,ri,{title:()=>orderlyI18n.i18n.t("common.transfer")});var ii=e=>{let{disabled:t,loading:n,networkId:o,onConvert:a}=e,{t:s}=orderlyI18n.useTranslation();return jsxRuntime.jsx(orderlyUi.Box,{className:"oui-w-full lg:oui-w-auto lg:oui-min-w-[184px]",children:jsxRuntime.jsx(orderlyUiConnector.AuthGuard,{status:orderlyTypes.AccountStatusEnum.EnableTrading,networkId:o,buttonProps:{fullWidth:true,size:{initial:"md",lg:"lg"}},children:jsxRuntime.jsx(orderlyUi.Button,{fullWidth:true,disabled:t,loading:n,size:{initial:"md",lg:"lg"},onClick:a,children:s("transfer.convert")})})})};var ed=e=>e.reduce((t,n)=>(n.token?.toUpperCase()==="USDC"?t.usdc.push(n):t.others.push(n),t),{usdc:[],others:[]}),ai=e=>{let{defaultValue:t}=e,o=orderlyHooks.useConfig().get("networkId"),[,{findByChainId:a}]=orderlyHooks.useChains(o,{pick:"network_infos",filter:d=>d.network_infos?.bridge_enable||d.network_infos?.bridgeless}),[s,i]=Ri.useState(),[c,r]=Ri.useState(),[l,p]=Ri.useState([]),u=orderlyHooks.useTokensInfo(),m=a(orderlyTypes.Arbitrum.id),b=m?.network_infos?.chain_id,h=Ri.useMemo(()=>u.filter(d=>d.on_chain_swap).map(d=>{let g=m?.token_infos?.find(({symbol:T})=>T===d.token);return {...d,symbol:d.token,address:g?.address,decimals:d.chain_details[0]?.decimals,precision:d.decimals}}),[m?.token_infos,u]);return Ri.useEffect(()=>{let{usdc:d,others:g}=ed(h);i(()=>{if(t){let T=g.find(({token:f})=>f===t);return T||g[0]}return g[0]}),p(g),r(d[0]);},[t,h]),{chainId:b,sourceToken:s,sourceTokens:l,onSourceTokenChange:i,targetToken:c}};var {calcMinimumReceived:pd}=orderlyPerp.account,dd="orderly_convert_slippage",fd=(e,t)=>new orderlyUtils.Decimal(e).mul(new orderlyUtils.Decimal(10).pow(t)).toFixed(0),zt=(e,t)=>new orderlyUtils.Decimal(e).div(new orderlyUtils.Decimal(10).pow(t)).toString(),ar=e=>{let{token:t,close:n}=e,{t:o}=orderlyI18n.useTranslation(),[a,s]=Ri.useState(false),c=orderlyHooks.useConfig().get("networkId"),[r,l]=Ri.useState(""),{wrongNetwork:p}=orderlyReactApp.useAppContext(),{wallet:u}=orderlyHooks.useWalletConnector(),{sourceToken:m,sourceTokens:b,onSourceTokenChange:h,targetToken:d,chainId:g}=ai({defaultValue:t}),T=Ri.useMemo(()=>{let P={...m,precision:m?.decimals??6};return P.token==="ETH"&&(!P.address||P.address===orderlyTypes.nativeTokenAddress)&&(P.address=orderlyTypes.nativeETHAddress),P},[m]),{walletName:f,address:I}=Ri.useMemo(()=>({walletName:u?.label,address:u?.accounts?.[0].address}),[u]),y=P=>{l(P);},[k,C]=orderlyHooks.useLocalStorage(dd,1),{maxAmount:A,convert:x}=orderlyHooks.useConvert({token:T.token}),F=async()=>{if(!a)return s(true),x({amount:Number(r),slippage:new orderlyUtils.Decimal(k).div(100).toNumber()}).then(()=>{orderlyUi.toast.success(o("transfer.convert.completed")),n?.(),l("");}).catch(P=>{orderlyUi.toast.error(P.message?.includes("user rejected")?o("transfer.convert.failed"):P.message);}).finally(()=>{s(false);})},[S,{data:w,isMutating:v}]=orderlyHooks.useOdosQuote();Ri.useEffect(()=>{r&&g&&T.address&&d?.address&&S({chainId:g,inputTokens:[{amount:fd(r,T.decimals),tokenAddress:T.address}],outputTokens:[{proportion:1,tokenAddress:d.address}]});},[r,T,d,g,S]);let B=Ri.useMemo(()=>!w||v?"-":w?.outAmounts[0],[w,v]),M=Ri.useMemo(()=>!w||v?"-":new orderlyUtils.Decimal(zt(w.outAmounts[0],d?.decimals??6)).div(zt(w.inAmounts[0],T.decimals)).toString(),[v,w,d?.decimals,T?.decimals]),D=Ri.useMemo(()=>!w||v?0:pd({amount:w?.outAmounts[0],slippage:Number(k)}),[w,v,k]),_=orderlyHooks.useComputedLTV(),W=orderlyHooks.useComputedLTV({input:Number(r),token:m?.token}),z=!r||Number(r)===0,{hasPositions:Q,onSettlePnl:te}=dt();return {walletName:f,address:I,quantity:r,onQuantityChange:y,token:T,sourceTokens:b,onSourceTokenChange:h,targetToken:d,balanceRevalidating:false,maxQuantity:A,disabled:z,loading:a,wrongNetwork:p,onConvert:F,hasPositions:Q,onSettlePnl:te,networkId:c,slippage:k,onSlippageChange:C,convertRate:M,minimumReceived:D,outAmounts:B,isQuoteLoading:v,currentLTV:_,nextLTV:W}};var cr=e=>{let{loading:t,disabled:n,quantity:o,onQuantityChange:a,maxQuantity:s,token:i,targetToken:c,sourceTokens:r,onSourceTokenChange:l,onConvert:p,slippage:u,onSlippageChange:m,convertRate:b,outAmounts:h,minimumReceived:d,isQuoteLoading:g,currentLTV:T,nextLTV:f,networkId:I,balanceRevalidating:y}=e;return jsxRuntime.jsxs(orderlyUi.Box,{className:orderlyUi.textVariants({weight:"semibold"}),children:[jsxRuntime.jsxs(orderlyUi.Box,{className:"oui-mb-6 lg:oui-mb-8",children:[jsxRuntime.jsx(orderlyUi.Box,{mt:3,mb:1,children:jsxRuntime.jsx(j,{value:o,onValueChange:a,token:i,tokens:r,onTokenChange:l})}),jsxRuntime.jsx(ae,{token:i,amount:o,maxQuantity:s.toString(),loading:y,onClick:()=>{a(s.toString());}}),jsxRuntime.jsx(ue,{}),jsxRuntime.jsx(j,{readOnly:true,loading:g,token:c,value:g||!o||Number.isNaN(Number(h))?"":zt(h,c?.decimals??6)}),jsxRuntime.jsxs(orderlyUi.Flex,{direction:"column",itemAlign:"start",mt:2,gap:1,children:[jsxRuntime.jsx(It,{indexPrice:g||!o||Number.isNaN(Number(b))?"-":b,sourceSymbol:i?.token,targetSymbol:c?.token}),jsxRuntime.jsx(ot,{value:u,onValueChange:m}),jsxRuntime.jsx(Zt,{symbol:c?.token||"",precision:c?.decimals??6,value:g||!o||Number.isNaN(Number(d))?"-":zt(d.toString(),c?.decimals??6)}),jsxRuntime.jsx(ze,{showDiff:typeof o<"u"&&Number(o)>0,currentLtv:T,nextLTV:f}),jsxRuntime.jsx(vt,{dstGasFee:"0"})]})]}),jsxRuntime.jsx(orderlyUi.Flex,{itemAlign:"center",justify:"center",children:jsxRuntime.jsx(ii,{networkId:I,disabled:n,loading:t,onConvert:p})})]})};var wd="ConvertDialogId",bd="ConvertSheetId",mr=e=>{let t=ar(e);return jsxRuntime.jsx(cr,{...t})};orderlyUi.registerSimpleDialog(wd,mr,{size:"md",classNames:{content:"oui-border oui-border-line-6"},title:()=>orderlyI18n.i18n.t("transfer.convert")});orderlyUi.registerSimpleSheet(bd,mr,{title:()=>orderlyI18n.i18n.t("transfer.convert")});var dr=e=>{let{canTrade:t,className:n,classNames:o,pendingCount:a,completedCount:s}=e;return !t||a===0&&s===0?null:jsxRuntime.jsxs(orderlyUi.Flex,{direction:"column",gapY:1,width:"100%",className:orderlyUi.cn(n,o?.root),children:[jsxRuntime.jsx(di,{className:o?.items,count:a,status:orderlyTypes.AssetHistoryStatusEnum.PENDING,onClick:e.onClick,estimatedTime:e.estimatedTime,onClose:e.onClose}),jsxRuntime.jsx(di,{className:o?.items,count:s,status:orderlyTypes.AssetHistoryStatusEnum.COMPLETED,onClick:e.onClick,onClose:e.onClose})]})},di=e=>{let{t}=orderlyI18n.useTranslation(),{count:n,status:o,estimatedTime:a}=e,s=Ri.useMemo(()=>o===orderlyTypes.AssetHistoryStatusEnum.PENDING?n>1?t("transfer.deposit.status.pending.multiple"):t("transfer.deposit.status.pending.one"):n>1?t("transfer.deposit.status.completed.multiple"):t("transfer.deposit.status.completed.one"),[t,o,n]);if(n===0)return null;let i=typeof e.onClick=="function",c=()=>o===orderlyTypes.AssetHistoryStatusEnum.PENDING&&n===1&&a?jsxRuntime.jsxs(orderlyUi.Text,{size:"2xs",color:"primary",children:["~ ",a]}):jsxRuntime.jsx(Sd,{children:e.count});return jsxRuntime.jsxs(orderlyUi.Flex,{intensity:900,gapX:1,width:"100%",r:"full",className:orderlyUi.cn("oui-px-3 lg:oui-px-0","oui-py-2 lg:oui-py-0",e.className),children:[jsxRuntime.jsxs(orderlyUi.Flex,{justify:"between",itemAlign:"center",className:orderlyUi.cn("oui-font-normal","oui-text-base-contrast-80 hover:oui-text-base-contrast",i&&"oui-cursor-pointer"),width:"100%",onClick:e.onClick,children:[jsxRuntime.jsxs(orderlyUi.Flex,{gapX:1,children:[jsxRuntime.jsx(vd,{className:o===orderlyTypes.AssetHistoryStatusEnum.COMPLETED?"oui-bg-success":"oui-bg-primary"}),jsxRuntime.jsx(orderlyUi.Text,{size:"2xs",children:s})]}),c()]}),jsxRuntime.jsx(orderlyUi.CloseIcon,{size:14,opacity:1,className:"oui-text-base-contrast-54 hover:oui-text-base-contrast",onClick:r=>{r.preventDefault(),r.stopPropagation(),e.onClose(o);}})]})},Sd=e=>jsxRuntime.jsx(orderlyUi.Flex,{justify:"center",itemAlign:"center",r:"full",width:18,height:18,className:orderlyUi.cn("oui-bg-line-12",e.className),children:jsxRuntime.jsx(orderlyUi.Text,{size:"3xs",intensity:80,children:e.children})}),vd=e=>jsxRuntime.jsx("div",{className:orderlyUi.cn("oui-mx-[5px] oui-size-2 oui-shrink-0 oui-rounded-full",e.className)});var Fd=5;async function fi(e){let t=new ethers.ethers.JsonRpcProvider(e.network_infos.public_rpc_url),n=await t.getBlockNumber(),a=(await Promise.all(Array.from({length:Fd},(i,c)=>t.getBlock(n-c)))).filter(i=>i?.timestamp!=null).map(i=>Number(i?.timestamp));if(a.length<2)return 0;let s=0;for(let i=0;i<a.length-1;i++){let c=a[i]-a[i+1];s+=c;}return s/(a.length-1)}async function gi(e,t){if(!t)return 0;let n=new orderlyDefaultSolanaAdapter.DefaultSolanaWalletAdapter;n.active({address:t.accounts[0].address,chain:{id:e.network_infos.chain_id},provider:t.provider});let o=await n.connection.getRecentPerformanceSamples(60),a=0,s=0;for(let i of o)if(i.numSlots>0&&i.samplePeriodSecs>0){let c=i.samplePeriodSecs/i.numSlots;a+=c,s++;}return a/s}async function yi(e){let{chainId:t,chain:n,wallet:o}=e;return orderlyUtils.isSolana(t)?gi(n,o):fi(n)}var hi=[{inputs:[{internalType:"address",name:"_oapp",type:"address"},{internalType:"uint32",name:"_remoteEid",type:"uint32"}],name:"getAppUlnConfig",outputs:[{components:[{internalType:"uint64",name:"confirmations",type:"uint64"},{internalType:"uint8",name:"requiredDVNCount",type:"uint8"},{internalType:"uint8",name:"optionalDVNCount",type:"uint8"},{internalType:"uint8",name:"optionalDVNThreshold",type:"uint8"},{internalType:"address[]",name:"requiredDVNs",type:"address[]"},{internalType:"address[]",name:"optionalDVNs",type:"address[]"}],internalType:"struct UlnConfig",name:"",type:"tuple"}],stateMutability:"view",type:"function"}];var Pd={1:30101,10:30111,42161:30110,137:30109,8453:30184,59144:30183,534352:30214,324:30165,1101:30158,169:30217,5e3:30181,81457:30243,252:30255,34443:30260,167e3:30290,7777777:30195,11155420:40232,421614:40231,84532:40245,300:40305,11155111:40161,17e3:40217,56:30102,204:30202,97:40102,43114:30106,43113:40106,250:30112,100:30145,42220:30125,16666e5:30116,25:30359,388:30360,1088:30151,1284:30126,1285:30167,592:30210,3776:30257,7700:30159,122:30138,2222:30177,82:30176,1313161554:30211,53935:30115,7979:30149,666666666:30267,432204:30118,19011:30265,7332:30215,1992:30182,1559:30173,40:30199,710420:30238,88:30196,37:30216,660279:30236,111188:30237,2525:30234,1380012617:30235,148:30230,2046399126:30273,291:30213,1116:30153,1030:30212,14:30295,1625:30294,81:30285,8217:30150,66:30155,4337:30198,5151706:30197,957:30311,2818:30322,"":30325,6001:30293,7560:30283,8822:30284,1996:30278,1329:30280,60808:30279,5165:30363,69e3:30372,33139:30312,80094:30362,11501:30317,200901:30314,3637:30376,81224:30323,12739:30366,68770:30315,41923:30328,747:30336,42793:30292,1300:30342,2345:30361,43419:30371,295:30316,43111:30329,999:30367,57073:30339,747474:30375,232:30373,1890:30309,1135:30321,4200:30266,6900:30369,8227:30341,3338:30302,98866:30370,1729:30313,30:30333,1868:30340,146:30332,50104:30334,1514:30364,964:30374,55244:30327,1923:30335,239:30377,130:30320,1480:30330,480:30319,196:30274,94524:30291,50:30365,48900:30303,810180:30301,2741:30324,42170:30175,21e6:30331,998:40362,80069:40371,10143:40204,80002:40267,101:30168,103:40168,900900900:30168,901901901:40168,728126428:30420,2494104990:40420};function wi(e){return Pd[e]}async function xi(e){let t=e.network_infos.chain_id,n=e.network_infos.mainnet,o=n?"https://rpc.orderly.network":"https://testnet-rpc.orderly.org",a=n?"0xCFf08a35A5f27F306e2DA99ff198dB90f13DEF77":"0x3013C32e5F45E69ceA9baD4d96786704C2aE148c",s=wi(t),i="0x0000000000000000000000000000000000000000",c=new ethers.ethers.JsonRpcProvider(o),l=await new ethers.ethers.Contract(a,hi,c).getAppUlnConfig(i,s);return Number(l.confirmations||0)}var Si=e=>{let[t,n]=Ri.useState(0),[o,a]=Ri.useState(0),s=Ri.useRef({}),i=Ri.useRef({}),[,{findByChainId:c}]=orderlyHooks.useChains(),{wallet:r}=orderlyHooks.useWalletConnector(),l=Ri.useMemo(()=>{if(!e)return;let u=typeof e=="number"?e:Number.parseInt(e);return c(u)},[e,c]);return Ri.useEffect(()=>{if(!l||!r)return;let u=l.network_infos.chain_id;s.current[u]?n(s.current[u]):yi({chainId:u,chain:l,wallet:r}).then(m=>{console.log("average block time",u,m),n(m),s.current[u]=m;}).catch(m=>{console.error("getBlockTime error",m);}),i.current[u]?a(i.current[u]):xi(l).then(m=>{console.log("confirmations",u,m),a(m),i.current[u]=m;}).catch(m=>{console.error("getChainConfirmations error",m);});},[l,r]),Ri.useMemo(()=>t&&o?t*o:0,[t,o])};function Qn(){let e=Date.now();return [e-1e3*60*60,e]}function gr(){let[e,t]=Ri.useState(Qn()),[n,o]=Ri.useState(Qn()),[a,s]=Ri.useState(0),[i,c]=Ri.useState(0),[r,l]=Ri.useState(0),[p,u]=Ri.useState([]),[m,b]=orderlyHooks.useLocalStorage("orderly_deposit_status_hide_notification_time",{[orderlyTypes.AssetHistoryStatusEnum.PENDING]:0,[orderlyTypes.AssetHistoryStatusEnum.COMPLETED]:0}),{state:h}=orderlyHooks.useAccount(),d=h.status===orderlyTypes.AccountStatusEnum.EnableTrading||h.status===orderlyTypes.AccountStatusEnum.EnableTradingWithoutConnected,{chainId:g,blockTime:T}=Ri.useMemo(()=>d&&p.length===1?{chainId:p[0].chain_id,blockTime:p[0].block_time}:{chainId:void 0,blockTime:void 0},[d,p]),f=Si(g),I=Ri.useMemo(()=>{if(f&&T){let w=T/1e3+f-Date.now()/1e3;return console.log("transactionTime",f,w),Ud(w)}return 0},[f,T]),[y,{isLoading:k}]=orderlyHooks.useAssetsHistory({startTime:e[0],endTime:e[1],page:1,pageSize:200,side:"DEPOSIT"},{shouldUpdateOnWalletChanged:()=>false}),[C]=orderlyHooks.useTransferHistory({dataRange:n,side:"IN",size:200,page:1,main_sub_only:false}),A=orderlyHooks.useDebouncedCallback(w=>{t(Qn());},300);orderlyHooks.useWalletTopic({onMessage(w){let{side:v,transStatus:B}=w;v===orderlyTypes.AssetHistorySideEnum.DEPOSIT&&(B===orderlyTypes.AssetHistoryStatusEnum.PENDING||B===orderlyTypes.AssetHistoryStatusEnum.COMPLETED)&&(console.log("deposit status updated",w),A(w));}});let x=orderlyHooks.useDebouncedCallback(w=>{o(Qn());},300);orderlyHooks.useBalanceTopic({onMessage(w){console.log("balance updated",w),x(w);}}),Ri.useEffect(()=>{if(!y||k)return;let w=m[orderlyTypes.AssetHistoryStatusEnum.PENDING],v=m[orderlyTypes.AssetHistoryStatusEnum.COMPLETED],B=y.filter(D=>D.trans_status===orderlyTypes.AssetHistoryStatusEnum.PENDING);w&&(B=B.filter(D=>D.created_time>w));let M=y.filter(D=>D.trans_status===orderlyTypes.AssetHistoryStatusEnum.COMPLETED);v&&(M=M.filter(D=>D.created_time>v)),s(B?.length||0),c(M?.length||0),u(B||[]);},[y,k,m]),Ri.useEffect(()=>{if(!C)return;let w=m[orderlyTypes.AssetHistoryStatusEnum.COMPLETED],v=w?C.filter(B=>B.created_time>w):C;l(v.length);},[C,m]);let F=Ri.useMemo(()=>i+r,[i,r]),S=Ri.useCallback(w=>{b({...m,[w]:Date.now()});},[m]);return {pendingCount:a,completedCount:F,canTrade:d,estimatedTime:I,onClose:S}}function Ud(e){let t=Math.max(30,e),n=Math.floor(t/60),o=t%60;return o>0&&o<=30?o=30:o>30&&(n+=1,o=0),n>0?o>0?`${n} m ${o} s`:`${n} m`:`${o} s`}var Gd=e=>{let t=gr();return jsxRuntime.jsx(dr,{...t,...e})};
25
25
 
26
26
  exports.ActionButton = St;
27
27
  exports.AvailableQuantity = ae;