@orderly.network/ui-transfer 2.5.2 → 2.5.3-alpha.1

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
@@ -2,7 +2,7 @@
2
2
 
3
3
  var i18n = require('@orderly.network/i18n');
4
4
  var ui = require('@orderly.network/ui');
5
- var Js = require('react');
5
+ var gi = require('react');
6
6
  var hooks = require('@orderly.network/hooks');
7
7
  var utils = require('@orderly.network/utils');
8
8
  var jsxRuntime = require('react/jsx-runtime');
@@ -17,50 +17,53 @@ var core = require('@orderly.network/core');
17
17
 
18
18
  function _interopDefault (e) { return e && e.__esModule ? e : { default: e }; }
19
19
 
20
- var Js__default = /*#__PURE__*/_interopDefault(Js);
20
+ var gi__default = /*#__PURE__*/_interopDefault(gi);
21
21
 
22
- var En=()=>{let{data:e,error:t,isLoading:n}=hooks.useQuery("/v1/public/auto_convert_threshold",{errorRetryCount:3});return {ltv_threshold:Js.useMemo(()=>!e||n?"-":`${new utils.Decimal(e.ltv_threshold).mul(100).toNumber()}%`,[]),negative_usdc_threshold:e?.negative_usdc_threshold,isLoading:n,error:t}};var ni=Js__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"})})),Ln=e=>e>=0&&e<50?"oui-text-success":e>=50&&e<80?"oui-text-warning":e>=80?"oui-text-danger":"",oi=e=>{let{isLoading:t,ltv_threshold:n}=e,{t:o}=i18n.useTranslation();return jsxRuntime.jsxs(ui.Box,{className:"oui-w-72 oui-max-w-72",children:[jsxRuntime.jsx(ui.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")})]})},Ko=e=>{let{t}=i18n.useTranslation(),{currentLtv:n,nextLTV:o,showDiff:a,ltv_threshold:i,isLoading:s}=e;return jsxRuntime.jsxs(ui.Flex,{width:"100%",itemAlign:"center",justify:"between",children:[jsxRuntime.jsxs(ui.Flex,{justify:"start",itemAlign:"center",children:[jsxRuntime.jsx(ui.Text,{size:"2xs",intensity:36,children:t("transfer.LTV")}),jsxRuntime.jsx(ui.Tooltip,{className:"oui-p-2",content:jsxRuntime.jsx(oi,{isLoading:s,ltv_threshold:i}),children:jsxRuntime.jsx(ni,{className:"oui-ml-[2px] oui-cursor-pointer oui-text-base-contrast-36"})})]}),a?jsxRuntime.jsxs(ui.Flex,{itemAlign:"center",justify:"between",gap:1,children:[jsxRuntime.jsxs(ui.Text,{size:"2xs",className:ui.cn("oui-font-semibold",Ln(n)),children:[n,"%"]}),"\u2192",jsxRuntime.jsxs(ui.Text,{size:"2xs",className:ui.cn("oui-font-semibold",Ln(o)),children:[o,"%"]})]}):jsxRuntime.jsxs(ui.Text,{size:"2xs",className:ui.cn("oui-font-semibold",Ln(n)),children:[n,"%"]})]})};var gt=e=>{let t=En();return jsxRuntime.jsx(Ko,{...e,...t})};var Vn=(o=>(o[o.Deposit=0]="Deposit",o[o.Approve=1]="Approve",o[o.Increase=2]="Increase",o))(Vn||{}),Et=(n=>(n.Wallet="wallet",n.Account="accountId",n))(Et||{});var yt=e=>{let{disabled:t,loading:n,actionType:o,symbol:a="USDC",onDeposit:i,onApprove:s,networkId:m}=e,{t:r}=i18n.useTranslation(),l=Js.useMemo(()=>({1:{children:r("transfer.deposit.approve.symbol",{symbol:a}),onClick:s,disabled:false,"data-testid":"oui-testid-deposit-dialog-approve-btn"},2:{children:r("transfer.deposit.increase.symbol",{symbol:a}),onClick:s,"data-testid":"oui-testid-deposit-dialog-increase-btn"},0:{children:r("common.deposit"),onClick:i,"data-testid":"oui-testid-deposit-dialog-deposit-btn"}})[o],[s,i,o,a,r]),p={initial:"md",lg:"lg"};return jsxRuntime.jsx(ui.Box,{className:"oui-w-full lg:oui-w-auto lg:oui-min-w-[184px]",children:jsxRuntime.jsx(uiConnector.AuthGuard,{status:types.AccountStatusEnum.EnableTrading,networkId:m,buttonProps:{fullWidth:true,size:p},children:jsxRuntime.jsx(ui.Button,{fullWidth:true,disabled:t,loading:n,size:p,...l})})})};var ue=e=>{let{amount:t,maxQuantity:n,token:o,loading:a}=e,{t:i}=i18n.useTranslation(),s=o?.display_name||o?.symbol||"",m=o?.precision??o?.decimals??2;return jsxRuntime.jsxs(ui.Flex,{justify:"between",px:2,children:[jsxRuntime.jsxs(ui.Text,{size:"2xs",intensity:36,children:["$",jsxRuntime.jsx(ui.Text.numeral,{dp:2,padding:false,rm:utils.Decimal.ROUND_DOWN,children:t})]}),jsxRuntime.jsxs(ui.Flex,{gapX:2,children:[jsxRuntime.jsxs(ui.Text,{size:"2xs",intensity:36,children:[`${i("common.available")}: `,jsxRuntime.jsx(ui.Text.numeral,{rm:utils.Decimal.ROUND_DOWN,dp:m,padding:false,"data-testid":"oui-testid-withdraw_deposit-dialog-available-value",children:n}),` ${s}`]}),a&&jsxRuntime.jsx(ui.Spinner,{size:"sm"}),jsxRuntime.jsx(ui.Text,{size:"2xs",color:"primary",className:"oui-cursor-pointer oui-select-none",onClick:e.onClick,children:i("common.max")})]})]})};var ze=()=>{let{t:e}=i18n.useTranslation(),{appIcons:t}=reactApp.useAppConfig(),n=hooks.useConfig("brokerName"),o=Js.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(ui.Flex,{justify:"between",children:[jsxRuntime.jsx(ui.Text,{size:"sm",intensity:98,children:e("transfer.brokerAccount",{brokerName:n})}),o]})};var Lt=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"})}),tr=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 nr=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"})}),or=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,[i,s]=Js.useState(false),{t:m}=i18n.useTranslation(),r=o||t?.length>1,l=o?jsxRuntime.jsx(ui.Flex,{width:18,height:18,intensity:100,r:"full",justify:"center",itemAlign:"center",children:jsxRuntime.jsx(ui.Text,{size:"2xs",intensity:80,children:"U"})}):jsxRuntime.jsx(ui.ChainIcon,{className:"oui-size-[18px]",chainId:n?.id}),p=o?"Unknown":n?.info?.network_infos?.name,u=()=>{if(a)return jsxRuntime.jsx(ui.Spinner,{size:"sm"});if(r)return jsxRuntime.jsx(Lt,{className:"oui-text-base-contrast-54"})},c=jsxRuntime.jsxs(ui.Flex,{intensity:500,className:ui.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(ui.Flex,{children:jsxRuntime.jsx(ui.Text,{size:"2xs",intensity:54,children:m("transfer.network")})}),jsxRuntime.jsxs(ui.Flex,{gapX:1,children:[l,jsxRuntime.jsx(ui.Text,{size:"sm",intensity:80,children:p})]})]}),u()]}),w=t.map((y,d)=>{let b=y.chain_id===n?.id;return jsxRuntime.jsxs(ui.Flex,{px:2,r:"base",justify:"between",className:ui.cn("oui-deposit-network-select-item","hover:oui-bg-base-5 oui-h-[30px] oui-cursor-pointer",b&&"oui-bg-base-5",d!==0&&"oui-mt-[2px]"),onClick:async()=>{s(false),await e.onValueChange(y);},children:[jsxRuntime.jsxs(ui.Flex,{gapX:1,itemAlign:"center",children:[jsxRuntime.jsx(ui.ChainIcon,{className:"oui-size-[18px]",chainId:y.chain_id}),jsxRuntime.jsx(ui.Text,{size:"2xs",intensity:54,children:y.name})]}),b&&jsxRuntime.jsx(ui.Box,{width:4,height:4,r:"full",className:"oui-deposit-network-select-active-dot oui-bg-[linear-gradient(270deg,#59B0FE_0%,#26FEFE_100%)]"})]},y.chain_id)});return jsxRuntime.jsxs(ui.DropdownMenuRoot,{open:r?i:false,onOpenChange:s,children:[jsxRuntime.jsx(ui.DropdownMenuTrigger,{asChild:true,children:c}),jsxRuntime.jsx(ui.DropdownMenuPortal,{children:jsxRuntime.jsx(ui.DropdownMenuContent,{onCloseAutoFocus:y=>y.preventDefault(),align:"start",sideOffset:2,className:ui.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(ui.ScrollArea,{children:jsxRuntime.jsx("div",{className:"oui-max-h-[254px]",children:w})})})})]})};var ir=e=>{let{t}=i18n.useTranslation(),{value:n,precision:o}=e;return jsxRuntime.jsxs(ui.Flex,{width:"100%",itemAlign:"center",justify:"between",children:[jsxRuntime.jsx(ui.Flex,{itemAlign:"center",justify:"start",children:jsxRuntime.jsx(ui.Text,{size:"2xs",intensity:36,children:t("transfer.deposit.collateralContribution")})}),jsxRuntime.jsxs(ui.Flex,{itemAlign:"center",justify:"end",gap:1,children:[jsxRuntime.jsx(ui.Text.numeral,{dp:o,size:"2xs",rm:utils.Decimal.ROUND_DOWN,className:ui.cn("oui-font-semibold"),padding:false,children:n}),jsxRuntime.jsx(ui.Text,{size:"2xs",intensity:36,className:"oui-select-none",children:"USDC"})]})]})};var Wi=Js__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"})})),Oi=()=>{let{t:e}=i18n.useTranslation();return jsxRuntime.jsxs(ui.Box,{className:"oui-w-72 oui-max-w-72",children:[jsxRuntime.jsx(ui.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")})]})},lr=e=>{let{t}=i18n.useTranslation(),{value:n}=e;return jsxRuntime.jsxs(ui.Flex,{width:"100%",itemAlign:"center",justify:"between",children:[jsxRuntime.jsxs(ui.Flex,{justify:"start",itemAlign:"center",children:[jsxRuntime.jsx(ui.Text,{size:"2xs",intensity:36,children:t("portfolio.overview.column.collateralRatio")}),jsxRuntime.jsx(ui.Tooltip,{className:"oui-p-2",content:jsxRuntime.jsx(Oi,{}),children:jsxRuntime.jsx(Wi,{className:"oui-ml-[2px] oui-cursor-pointer oui-text-base-contrast-36"})})]}),jsxRuntime.jsx(ui.Text.numeral,{dp:2,rm:utils.Decimal.ROUND_DOWN,coloring:true,className:"oui-font-semibold",rule:"percentages",children:n})]})};var jn=e=>jsxRuntime.jsx(lr,{...e});var le=({icon:e})=>jsxRuntime.jsxs(ui.Flex,{height:40,gapX:3,children:[jsxRuntime.jsx(ui.Flex,{height:1,className:"oui-flex-1 oui-bg-base-contrast-12"}),e||jsxRuntime.jsx(tr,{className:"oui-text-primary-light"}),jsxRuntime.jsx(ui.Flex,{height:1,className:"oui-flex-1 oui-bg-base-contrast-12"})]});var ht=e=>{let{dstGasFee:t,feeQty:n,feeAmount:o,dp:a,nativeSymbol:i}=e,{t:s}=i18n.useTranslation(),m=()=>{let l=jsxRuntime.jsxs("div",{className:"oui-text-2xs",children:[jsxRuntime.jsxs(ui.Flex,{gapX:1,children:[jsxRuntime.jsx(ui.Text,{size:"2xs",intensity:54,children:`${s("transfer.deposit.destinationGasFee")}: `}),jsxRuntime.jsx(ui.Text.numeral,{intensity:80,dp:a,rm:utils.Decimal.ROUND_UP,padding:false,children:n}),jsxRuntime.jsx(ui.Text,{intensity:54,children:i})]}),jsxRuntime.jsx(ui.Box,{mt:2,children:jsxRuntime.jsx(ui.Text,{intensity:36,children:s("transfer.deposit.destinationGasFee.description")})})]});ui.modal.alert({title:s("common.fee"),message:l});},r=!!t&&t!=="0";return jsxRuntime.jsxs(ui.Text,{size:"2xs",intensity:36,className:"oui-border-dashed oui-border-b oui-border-line-12 oui-cursor-pointer",onClick:m,children:[`${s("common.fee")} \u2248 `,jsxRuntime.jsxs(ui.Text,{size:"2xs",intensity:80,children:["$",jsxRuntime.jsx(ui.Text.numeral,{dp:2,padding:false,rm:utils.Decimal.ROUND_UP,children:o})," "]}),r&&jsxRuntime.jsxs("span",{children:["(",jsxRuntime.jsxs(ui.Text,{intensity:54,children:[jsxRuntime.jsx(ui.Text.numeral,{dp:a,padding:false,rm:utils.Decimal.ROUND_UP,children:n}),i]}),")"]})]})};var Qt=e=>{let{t}=i18n.useTranslation(),{value:n,symbol:o,precision:a=6}=e;return jsxRuntime.jsxs(ui.Flex,{width:"100%",itemAlign:"center",justify:"between",children:[jsxRuntime.jsx(ui.Flex,{itemAlign:"center",justify:"start",children:jsxRuntime.jsx(ui.Text,{size:"2xs",intensity:36,children:t("transfer.swapDeposit.minimumReceived")})}),jsxRuntime.jsxs(ui.Flex,{itemAlign:"center",justify:"end",gap:1,children:[jsxRuntime.jsx(ui.Text.numeral,{dp:a,size:"2xs",className:"oui-select-none",intensity:80,children:n}),jsxRuntime.jsx(ui.Text,{size:"2xs",className:"oui-select-none",intensity:36,children:o})]})]})};function pr(e,t){let[n,o]=Js.useState(""),[a,i]=Js.useState(false);return Js.useEffect(()=>{a||typeof t!="function"||!e.address||(i(true),t(e.address,e.decimals).then(s=>{o(s);}).catch(s=>{}).finally(()=>{i(false);}));},[e]),{balance:n,loading:a}}var fr=e=>{let{token:t,isActive:n,displayType:o,onTokenChange:a,fetchBalance:i}=e,{symbol:s,precision:m,insufficientBalance:r}=t,{balance:l,loading:p}=pr(t,i),u=typeof i=="function",{t:c}=i18n.useTranslation();if(o==="vaultBalance"&&r)return jsxRuntime.jsx(ui.Flex,{itemAlign:"center",justify:"between",px:2,r:"base",className:ui.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(ui.Flex,{itemAlign:"center",gapX:1,children:[jsxRuntime.jsx(ui.TokenIcon,{name:s,className:"oui-size-[16px] oui-opacity-50"}),jsxRuntime.jsx(ui.Text,{intensity:36,children:t.label}),jsxRuntime.jsx(ui.Badge,{color:"neutral",size:"xs",children:c("transfer.withdraw.InsufficientVaultBalance")})]})},s);let w=()=>u?p?jsxRuntime.jsx(ui.Spinner,{size:"sm"}):jsxRuntime.jsx(ui.Text.numeral,{rule:"price",dp:m??2,rm:utils.Decimal.ROUND_DOWN,className:ui.cn("oui-text-base-contrast-80 group-hover:oui-text-base-contrast-54",n&&"oui-text-base-contrast-54"),children:l}):null;return jsxRuntime.jsxs(ui.Flex,{justify:"between",px:2,r:"base",className:ui.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(ui.Flex,{gapX:1,children:[jsxRuntime.jsx(ui.TokenIcon,{name:s,className:"oui-size-[16px]"}),jsxRuntime.jsx(ui.Text,{className:ui.cn("oui-text-base-contrast-54 group-hover:oui-text-base-contrast-80",n&&"oui-text-base-contrast-80"),children:t.label})]}),w()]},s)};var Y=Js.forwardRef(e=>{let{token:t,tokens:n=[],classNames:o,label:a,status:i,hintMessage:s,value:m,onValueChange:r,fetchBalance:l,onTokenChange:p,loading:u,placeholder:c,formatters:w,vaultBalanceList:y,displayType:d,...b}=e,{t:x}=i18n.useTranslation(),f=Js.useRef(null),[T,g]=Js.useState(false),[C,S]=Js.useState(0),D=Js.useMemo(()=>n.map(I=>{let O=y?.find(q=>q.token===I.symbol),B=new utils.Decimal(O?.balance??0).lt(m?Number(m):0);return {...I,name:I.display_name||I.symbol,insufficientBalance:B}}),[n,m,y]);Js.useEffect(()=>{let I=f?.current?.getBoundingClientRect();S(I?.width||0);},[f]);let h=I=>{let O=n.find(B=>B.symbol===I);O&&p?.(O);},F=I=>{let O=I.symbol===t?.symbol;return jsxRuntime.jsx(fr,{token:I,isActive:O,fetchBalance:l,displayType:d,onTokenChange:B=>{p?.(B),g(false);}})},k=jsxRuntime.jsxs(ui.Box,{children:[jsxRuntime.jsx(ui.Box,{className:"oui-absolute oui-top-0",children:jsxRuntime.jsx(ui.Text,{size:"2xs",intensity:36,children:a||x("common.quantity")})}),u&&jsxRuntime.jsx(ui.Box,{className:"oui-absolute oui-bottom-1",children:jsxRuntime.jsx(ui.Spinner,{size:"sm"})})]}),v=n.length>1,N=jsxRuntime.jsx("div",{className:"oui-absolute oui-right-0",children:jsxRuntime.jsx(ui.Select.tokens,{open:v?T:false,onOpenChange:g,disabled:b.disabled,variant:"text",tokens:D,value:t?.display_name||t?.symbol,size:b.size,onValueChange:h,showIcon:true,optionRenderer:F,contentProps:{onCloseAutoFocus:I=>{I.preventDefault(),f.current?.focus();},onClick:I=>{I.preventDefault(),f.current?.focus();},style:{width:C},align:"end",sideOffset:5,className:"oui-border oui-border-line-6"}})}),W=jsxRuntime.jsxs(ui.Flex,{mt:1,gapX:1,px:1,children:[jsxRuntime.jsx(ui.Box,{width:4,height:4,r:"full",className:ui.cn(i==="error"&&"oui-bg-danger-light",i==="warning"&&"oui-bg-warning-light")}),jsxRuntime.jsx(ui.Text,{size:"2xs",className:ui.cn(i==="error"&&"oui-text-danger-light",i==="warning"&&"oui-text-warning-light"),children:s})]});return jsxRuntime.jsxs(jsxRuntime.Fragment,{children:[jsxRuntime.jsx(ui.Input,{ref:f,autoComplete:"off",placeholder:c??(u?"":"0"),prefix:k,suffix:N,value:m,onValueChange:I=>{r?.(I);},formatters:w||[ui.inputFormatter.numberFormatter,ui.inputFormatter.dpFormatter(t?.precision??2),ui.inputFormatter.currencyFormatter],...b,classNames:{...o,root:ui.cn("oui-relative oui-h-[54px] oui-px-3","oui-rounded-lg oui-border oui-border-line",i==="error"&&"oui-outline-danger-light focus-within:oui-outline-danger-light",i==="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:ui.cn("oui-absolute oui-bottom-0",o?.input)}}),s&&W]})});var so=[.5,1,2],Je=e=>{let{min:t=.2,max:n=10}=e,[o,a]=Js.useState(),[i,s]=Js.useState(""),[m,r]=Js.useState(false),{t:l}=i18n.useTranslation();Js.useEffect(()=>{e.value&&!so.includes(e.value)?s(e.value.toString()):a(e.value);},[e.value,m]);let p=()=>{r(true);},u=()=>{r(false);},c=f=>{a(f),s("");},w=f=>{if(!f||Number(f)===0){s(f);return}let T=new utils.Decimal(f);a(void 0),T.lt(t)?s(t.toString()):T.gt(n)?s(n.toString()):s(f);},y=()=>i?new utils.Decimal(i)?.toNumber():o,d=()=>{let f=y();return f&&(e.onValueChange?.(f),u(),so.includes(f)&&s("")),Promise.resolve(true)},b=!y(),x=jsxRuntime.jsxs("div",{className:"oui-text-2xs",children:[jsxRuntime.jsxs(ui.Flex,{gapX:2,children:[so.map(f=>jsxRuntime.jsx(fa,{value:f,isActive:o===f,onClick:()=>{c(f);}},f)),jsxRuntime.jsx(ui.Input,{suffix:"%",formatters:[ui.inputFormatter.numberFormatter,ui.inputFormatter.dpFormatter(2)],value:i,onValueChange:w,classNames:{root:ui.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(ui.Box,{mt:5,children:jsxRuntime.jsx(ui.Text,{intensity:54,children:l("transfer.slippage.slippageTolerance.description")})})]});return jsxRuntime.jsxs(jsxRuntime.Fragment,{children:[jsxRuntime.jsx(ui.AlertDialog,{open:m,onOpenChange:r,title:l("transfer.slippage.slippageTolerance"),okLabel:l("common.confirm"),message:x,onOk:d,actions:{primary:{disabled:b}}}),jsxRuntime.jsxs(ui.Flex,{width:"100%",justify:"between",className:"oui-cursor-pointer oui-select-none",onClick:p,children:[jsxRuntime.jsx(ui.Text,{intensity:36,size:"2xs",children:l("transfer.slippage")}),jsxRuntime.jsxs(ui.Flex,{gapX:1,children:[jsxRuntime.jsxs(ui.Text,{size:"2xs",color:"primaryLight",children:[e.value,"%"]}),jsxRuntime.jsx(ui.EditIcon,{className:"oui-size-3 oui-text-primary-light"})]})]})]})},fa=({value:e,isActive:t,onClick:n})=>jsxRuntime.jsx(ui.Flex,{intensity:600,justify:"center",itemAlign:"center",r:"md",width:74,height:40,className:ui.cn("oui-cursor-pointer oui-select-none",t&&"oui-bg-primary-light"),onClick:n,children:jsxRuntime.jsxs(ui.Text,{size:"sm",intensity:80,children:[e,"%"]})});var Zt=e=>{let{message:t,needSwap:n,needCrossSwap:o,wrongNetwork:a,networkId:i}=e,{t:s}=i18n.useTranslation(),m=()=>{ui.modal.show(uiChainSelector.ChainSelectorDialogId,{networkId:i});},r=Js.useMemo(()=>{if(a)return s("connector.wrongNetwork.tooltip");if(t)return t;if(o)return jsxRuntime.jsx(ui.Text,{children:jsxRuntime.jsx(i18n.Trans,{i18nKey:"transfer.swapDeposit.crossSwap.notice",components:[jsxRuntime.jsx(ui.Text,{className:"oui-cursor-pointer",color:"primaryLight",onClick:m},"0")]})});if(n)return s("transfer.swapDeposit.swap.notice")},[t,n,o,a,s]);return r?jsxRuntime.jsx(ui.Box,{mb:3,className:"oui-text-center oui-text-xs oui-text-warning-darken",children:r}):null};var Jt=e=>{let{feeQtys:t,feeAmount:n,feeDetails:o,nativeSymbol:a}=e,{t:i}=i18n.useTranslation(),s=()=>{let r=jsxRuntime.jsx(ui.Box,{className:"oui-text-2xs",children:o?.map((l,p)=>{let u=p===o?.length-1;return jsxRuntime.jsxs(ui.Box,{children:[jsxRuntime.jsxs(ui.Flex,{gapX:1,children:[jsxRuntime.jsxs(ui.Text,{intensity:54,children:[l.title,":"]}),jsxRuntime.jsx(ui.Text,{intensity:80,children:l.value}),jsxRuntime.jsx(ui.Text,{intensity:54,children:l.symbol})]}),jsxRuntime.jsx(ui.Box,{mt:2,children:jsxRuntime.jsx(ui.Text,{intensity:36,children:l.description})}),!u&&jsxRuntime.jsx(ui.Box,{my:3,children:jsxRuntime.jsx(ui.Divider,{intensity:8})})]},p)})});ui.modal.alert({title:i("common.fee"),message:r});},m=()=>{let r=t?.length;if(!r)return;let l=t.map((p,u)=>jsxRuntime.jsxs(ui.Text,{intensity:54,children:[jsxRuntime.jsx(ui.Text.numeral,{dp:p.dp,padding:false,rm:utils.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(ui.Text,{size:"xs",intensity:36,className:"oui-cursor-pointer oui-border-b oui-border-dashed oui-border-line-12",onClick:s,children:[`${i("common.fee")} \u2248 `,jsxRuntime.jsxs(ui.Text,{size:"xs",intensity:80,children:["$",jsxRuntime.jsx(ui.Text.numeral,{dp:2,padding:false,rm:utils.Decimal.ROUND_UP,children:n})," "]}),m()]})};var bt=e=>{let{sourceSymbol:t,targetSymbol:n,indexPrice:o,precision:a=6}=e;return jsxRuntime.jsxs(ui.Flex,{itemAlign:"center",gap:1,className:ui.cn(e.className,"oui-text-2xs"),children:[jsxRuntime.jsx(ui.Text,{size:"2xs",intensity:80,children:"1"}),jsxRuntime.jsx(ui.Text,{size:"2xs",intensity:36,children:t}),"=",jsxRuntime.jsx(ui.Text.numeral,{size:"2xs",intensity:80,dp:a,padding:false,children:o}),jsxRuntime.jsx(ui.Text,{size:"2xs",intensity:36,children:n})]})};var on=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"})}),kr=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"})}),Cr=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"})}),Sr=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 Fr=e=>{let{sourceToken:t,targetToken:n,className:o}=e;return t===n?null:jsxRuntime.jsx(ui.Flex,{width:"100%",itemAlign:"center",justify:"center",className:o,children:jsxRuntime.jsxs(ui.Flex,{itemAlign:"center",justify:"center",gap:1,children:[jsxRuntime.jsxs(ui.Flex,{itemAlign:"center",justify:"center",gap:1,children:[jsxRuntime.jsx(ui.TokenIcon,{className:"oui-size-[18px]",name:t}),jsxRuntime.jsx(ui.Text,{weight:"semibold",intensity:80,size:"sm",children:t})]}),jsxRuntime.jsx(on,{className:"oui-size-4"}),jsxRuntime.jsxs(ui.Flex,{itemAlign:"center",justify:"center",gap:1,children:[jsxRuntime.jsx(ui.TokenIcon,{className:"oui-size-[18px]",name:n}),jsxRuntime.jsx(ui.Text,{weight:"semibold",intensity:80,size:"sm",children:n})]})]})})};var xt=()=>{let{t:e}=i18n.useTranslation(),{wallet:t,connectedChain:n}=hooks.useWalletConnector(),{state:o,account:a}=hooks.useAccount(),i=Js.useMemo(()=>{let s=o.address;return n?.id&&types.ABSTRACT_CHAIN_ID_MAP.has(parseInt(n?.id))&&(s=a.getAdditionalInfo()?.AGWAddress),s},[t,o,a,n]);return jsxRuntime.jsxs(ui.Flex,{justify:"between",children:[jsxRuntime.jsx(ui.Text,{size:"sm",intensity:98,children:e("transfer.web3Wallet.your")}),jsxRuntime.jsxs(ui.Flex,{gapX:1,children:[jsxRuntime.jsx(ui.WalletIcon,{size:"xs",name:t?.label??""}),jsxRuntime.jsx(ui.Text.formatted,{size:"sm",intensity:54,rule:"address",children:i})]})]})};function sn(e){let{srcToken:t,dstToken:n,srcChainId:o,dstChainId:a}=e,[i,s]=Js.useState(false),[m,r]=Js.useState(false);return Js.useEffect(()=>{if(!o||!a||!t||!n)return;let l=o!==a;if(t?.symbol==="USDC"&&!l||t.is_collateral&&t.symbol===n?.symbol){s(false),r(false);return}s(t?.symbol!=="USDC"),l?(r(true),s(true)):r(false);},[t,n,o,a]),{needSwap:i,needCrossSwap:m}}var Tt=[{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"}],_r=[{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"}],Ea="0xEeeeeEeeeEeEeeEeEeEeeEEEeeeeEeeeeeeeEEeE",an=e=>e===Ea,un="https://fi-api.woo.org";var Er=()=>{let[e,{setTrue:t,setFalse:n}]=hooks.useBoolean(false),[o,a]=Js.useState("WAITTING"),i=hooks.useEventEmitter(),[s,m]=Js.useState(),[r,l]=Js.useState(types.WS_WalletStatusEnum.NO),p=Js.useRef(),u=Js.useRef(),c=hooks.useAccountInstance(),w=hooks.useConfig(),y=w.get("brokerId"),d=w.get("networkId"),b=Js.useRef(scanClient.createClient(d)).current,x=Js.useRef();Js.useEffect(()=>{let C=S=>{let{side:D,transStatus:h,trxId:F}=S;D==="DEPOSIT"&&F===p.current&&l(h);};return i.on("wallet:changed",C),()=>{i.off("wallet:changed",C);}},[p.current]);let f=Js.useCallback(C=>{u.current&&clearTimeout(u.current),u.current=setTimeout(async()=>{try{let{messages:S}=await b.getMessagesBySrcTxHash(C);if(S.length>0){let{status:D}=S[0];a(D),D==="DELIVERED"?(m(S[0]),p.current=S[0].dstTxHash):D==="FAILED"?m(S[0]):f(C);}else f(C);}catch{f(C);}},1e3);},[]);Js.useEffect(()=>()=>{x.current&&clearTimeout(x.current);},[]);let T=Js.useCallback(()=>({accountId:c.accountIdHashStr,brokerHash:core.utils.parseBrokerHash(y),tokenHash:core.utils.parseTokenHash("USDC")}),[c,y]);return {swap:async C=>{if(!c.walletAdapter)throw new Error("walletAdapter is undefined");if(!c.address)throw new Error("account.address is undefined");if(!C.crossChainRouteAddress)throw new Error("crossChainRouteAddress is undefined");let{address:S,src:D,dst:h,crossChainRouteAddress:F}=C;if(!e){t();try{let k=await c.walletAdapter.call(F,"quoteLayerZeroFee",[c.address,h,T()],{abi:Tt}),v=await c.walletAdapter.sendTransaction(F,"crossSwap",{from:c.address,to:F,data:[c.address,D,h,T()],value:an(C.src.fromToken)?BigInt(C.src.fromAmount)+k[0]:k[0]},{abi:Tt});return n(),f(v.hash),ramda.pick(["from","to","hash","value"],v)}catch(k){throw n(),new Error(k.errorCode)}}},loading:e,bridgeStatus:o,status:r,message:s}};var pn=e=>{let{status:t,mode:n,statusUrl:o,brokerName:a}=e,{t:i}=i18n.useTranslation(),s=Js.useMemo(()=>{let u=Ja(t),c=eu(t),w=[{title:i(u==="pending"?"transfer.swapDeposit.bridging":"transfer.swapDeposit.bridge"),description:i("transfer.swapDeposit.bridge.description"),state:u},{title:i(c==="pending"?"transfer.swapDeposit.depositing":"transfer.swapDeposit.deposit"),description:i("transfer.swapDeposit.deposit.description",{brokerName:a}),state:c}];return n===0?w.slice(1,2):w},[n,a,t,i]),m=()=>{e.onComplete?.(t===4);},r=t===3||t===1,l=t===0||t===2,p=s.length>1;return jsxRuntime.jsxs("div",{className:"oui-font-semibold",children:[jsxRuntime.jsxs(ui.Box,{intensity:600,p:4,r:"lg",children:[jsxRuntime.jsxs(ui.Flex,{direction:"column",itemAlign:"start",gapY:4,className:"oui-relative",children:[s.map(u=>Js.createElement(Za,{...u,key:u.title})),p&&jsxRuntime.jsx("div",{className:ui.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(ui.Box,{my:3,children:jsxRuntime.jsx(ui.Divider,{intensity:8})}),jsxRuntime.jsxs(ui.Flex,{gapX:1,justify:"center",itemAlign:"center",className:ui.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(ui.Text,{size:"2xs",children:i("transfer.swapDeposit.viewStatus")}),jsxRuntime.jsx(Cr,{})]})]}),jsxRuntime.jsxs(ui.Flex,{direction:"column",justify:"center",itemAlign:"center",mt:8,gapY:3,children:[r&&jsxRuntime.jsx(ui.Text,{size:"xs",className:"oui-text-danger-light",children:i("transfer.swapDeposit.depositFailed")}),jsxRuntime.jsx(ui.Button,{className:"oui-w-full lg:oui-w-[184px]",disabled:l,onClick:m,children:i("common.ok")})]})]})},Za=({title:e,description:t,state:n})=>jsxRuntime.jsxs(ui.Flex,{itemAlign:"start",gapX:2,children:[jsxRuntime.jsx(ui.Flex,{width:20,height:20,justify:"center",children:jsxRuntime.jsx(Ka,{state:n})}),jsxRuntime.jsxs(ui.Flex,{direction:"column",itemAlign:"start",children:[jsxRuntime.jsx(ui.Text,{size:"sm",className:ui.cn(n==="pending"||n==="failed"?"oui-text-base-contrast":"oui-text-base-contrast-54"),children:e}),jsxRuntime.jsx(ui.Text,{size:"2xs",className:ui.cn(n==="pending"?"oui-text-base-contrast-54":"oui-text-base-contrast-20"),children:t})]})]},e),Ka=({state:e})=>e==="pending"?jsxRuntime.jsx(ui.Spinner,{size:"sm"}):e==="failed"?jsxRuntime.jsx(ui.CloseCircleFillIcon,{size:20,opacity:1,className:"oui-text-danger-light"}):e==="success"?jsxRuntime.jsx(ui.CheckedCircleFillIcon,{size:20,opacity:1,className:"oui-text-primary-light"}):jsxRuntime.jsx(ui.Box,{r:"full",width:10,height:10,intensity:200});function Ja(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 dn=(e=[])=>{let t=e.reduce((n,o)=>(n[o.symbol]=o,n),{});return t.USDC||t.USDbC||e[0]},He=e=>(e??2)+3;function Or(e){return /^0x[a-fA-F0-9]{64}$/.test(e)}function fn(e){return e===34?i18n.i18n.t("transfer.internalTransfer.error.transferInProgress"):e===17?i18n.i18n.t("transfer.internalTransfer.error.withdrawalInProgress"):e===35?i18n.i18n.t("transfer.internalTransfer.error.accountIdNotExist"):e===37?i18n.i18n.t("transfer.internalTransfer.error.transferToSelf"):e===46?i18n.i18n.t("transfer.internalTransfer.error.transferToSubAccount"):i18n.i18n.t("transfer.internalTransfer.error.default")}var gn=e=>{let{info:t,mode:n,nativePrice:o,markPrice:a,src:i,dst:s,nativeToken:m,viewMode:r}=e,{t:l}=i18n.useTranslation(),p=jsxRuntime.jsxs(ui.Flex,{justify:"between",children:[jsxRuntime.jsx(Vr,{primary:i?.token,chainId:i.chain,amount:i?.amount,dp:i?.displayDecimals,symbol:i?.token}),jsxRuntime.jsx(on,{className:"oui-text-primary-light"}),jsxRuntime.jsx(Vr,{primary:s?.token,component:jsxRuntime.jsx(Sr,{className:"oui-size-4"}),amount:s?.amount,dp:s?.displayDecimals,symbol:s?.token,reverse:true})]}),u=jsxRuntime.jsx(ui.Box,{my:5,children:jsxRuntime.jsx(ui.Divider,{intensity:12})}),c=[{label:l("transfer.deposit.destinationGasFee"),value:jsxRuntime.jsxs(ui.Flex,{gapX:1,children:[jsxRuntime.jsx(kr,{className:"oui-text-primary-light"}),jsxRuntime.jsx(ui.Text.numeral,{color:"primaryLight",padding:false,rm:utils.Decimal.ROUND_UP,dp:He(m?.precision),children:t.dstGasFee}),jsxRuntime.jsx(ui.Text,{color:"primaryLight",children:m?.symbol}),jsxRuntime.jsxs(ui.Text,{className:"oui-text-primary-light/60",children:["($",jsxRuntime.jsx(ui.Text.numeral,{color:"primaryLight",padding:false,rm:utils.Decimal.ROUND_UP,dp:2,children:new utils.Decimal(t.dstGasFee?.toString()).mul(o||0).toString()}),")"]})]})},{label:l("transfer.swapDeposit.swapFee"),value:jsxRuntime.jsxs(jsxRuntime.Fragment,{children:[jsxRuntime.jsx(ui.Text.numeral,{intensity:80,dp:He(i?.displayDecimals),rm:utils.Decimal.ROUND_UP,padding:false,children:t.swapFee}),` ${i?.token} `,jsxRuntime.jsxs(ui.Text,{className:"oui-text-[#63666D]",children:["($",jsxRuntime.jsx(ui.Text.numeral,{padding:false,rm:utils.Decimal.ROUND_UP,dp:2,children:new utils.Decimal(t.swapFee).mul(a||0).toString()}),")"]})]})},{label:l("transfer.swapDeposit.bridgeFee"),value:n===1&&jsxRuntime.jsxs(jsxRuntime.Fragment,{children:[jsxRuntime.jsx(ui.Text.numeral,{intensity:80,dp:He(i?.displayDecimals),rm:utils.Decimal.ROUND_UP,padding:false,children:t.bridgeFee}),` ${i?.token} `,jsxRuntime.jsxs(ui.Text,{className:"oui-text-[#63666D]",children:["($",jsxRuntime.jsx(ui.Text.numeral,{padding:false,rm:utils.Decimal.ROUND_UP,dp:2,children:new utils.Decimal(t.bridgeFee).mul(a||0).toString()}),")"]})]})},{label:l("transfer.swapDeposit.minimumReceived"),value:jsxRuntime.jsxs(jsxRuntime.Fragment,{children:[jsxRuntime.jsx(ui.Text.numeral,{dp:s?.displayDecimals,rm:utils.Decimal.ROUND_DOWN,padding:false,children:t.received}),` ${s?.token}`]})},{label:l("common.price"),value:jsxRuntime.jsxs(jsxRuntime.Fragment,{children:[`1 ${i?.token} = `,jsxRuntime.jsx(ui.Text.numeral,{dp:3,padding:false,children:t.price}),` ${s?.token}`]})},{label:l("transfer.slippage"),value:`${t.slippage}%`}],w=jsxRuntime.jsx(ui.Flex,{direction:"column",itemAlign:"start",gapY:3,children:c?.map(d=>{if(d.value)return Js.createElement(uu,{...d,key:d.label})})}),y=jsxRuntime.jsx(ui.Flex,{justify:"center",mt:8,children:jsxRuntime.jsx(ui.Button,{className:"oui-w-full lg:oui-w-[184px]",onClick:e.onConfirm,children:l("transfer.swapDeposit.confirmSwap")})});return jsxRuntime.jsxs(ui.Box,{intensity:800,children:[p,jsxRuntime.jsx(lu,{time:t.time??0}),u,r==="details"&&jsxRuntime.jsxs(jsxRuntime.Fragment,{children:[w,y]})]})},uu=e=>jsxRuntime.jsxs(ui.Flex,{gapX:2,justify:"between",width:"100%",children:[jsxRuntime.jsx(ui.Text,{size:"sm",intensity:54,children:e.label}),jsxRuntime.jsx(ui.Text,{size:"sm",intensity:98,as:"div",children:e.value})]}),Vr=e=>jsxRuntime.jsxs(ui.Flex,{gapX:2,direction:e.reverse?"rowReverse":"row",children:[jsxRuntime.jsx(ui.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(ui.TokenIcon,{name:e.primary,size:"md"})}),jsxRuntime.jsxs(ui.Flex,{direction:"column",itemAlign:e.reverse?"end":"start",children:[jsxRuntime.jsx(ui.Text.numeral,{intensity:98,size:"lg",dp:e.dp,children:e.amount}),jsxRuntime.jsx(ui.Text,{intensity:54,size:"xs",children:e.symbol})]})]}),lu=e=>jsxRuntime.jsx(ui.Flex,{justify:"center",children:jsxRuntime.jsx(ui.Flex,{intensity:600,r:"full",gapX:2,justify:"center",py:1,mt:2,width:210,children:jsxRuntime.jsx(ui.Text,{size:"sm",intensity:54,children:jsxRuntime.jsx(i18n.Trans,{i18nKey:"transfer.swapDeposit.averageSwapTime",values:{time:e.time},components:[jsxRuntime.jsx(ui.Text,{color:"primaryLight"},"0")]})})})});var yn=()=>jsxRuntime.jsx(ui.Flex,{justify:"center",gapX:1,mt:3,children:jsxRuntime.jsx(i18n.Trans,{i18nKey:"transfer.swapDeposit.viewFAQs",components:[jsxRuntime.jsx(ui.Text,{size:"xs",color:"primaryLight",onClick:()=>{window.open("https://learn.woo.org/woofi/faqs/woofi-pro");},className:"oui-cursor-pointer"},"0")]})});var qr=e=>{let{transactionData:t,slippage:n,mode:o,dst:a,src:i,chain:s,nativeToken:m,depositFee:r}=e,{t:l}=i18n.useTranslation(),[p,u]=Js.useState(-1),[c,w]=Js.useState("details"),[y,d]=Js.useState(),b=hooks.useEventEmitter(),{swap:x,bridgeStatus:f,message:T,status:g}=Er(),C=Js.useMemo(()=>({price:t.price,slippage:n,time:s?.est_txn_mins,received:a.amount,bridgeFee:t.fees_from.stargate,swapFee:t.fees_from.woofi,dstGasFee:t.dst_infos.gas_fee}),[t,s?.est_txn_mins,o,a]);Js.useEffect(()=>{f==="DELIVERED"&&u(2),f==="FAILED"&&u(1),g===types.WS_WalletStatusEnum.COMPLETED&&u(4),g===types.WS_WalletStatusEnum.FAILED&&u(3);},[f,g]);let S=Js.useCallback(()=>(w("processing"),t?(u(0),x({address:"",crossChainRouteAddress:s?.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(h=>{d(h),ui.toast.success(l("transfer.deposit.requested")),b.emit("deposit:requested");}).catch(h=>{u(1),ui.toast.error(h?.message||"Error");})):Promise.reject("No transaction data")),[t,o,a,i,b]),D=Js.useMemo(()=>{if(!(p<2||!T))return `https://layerzeroscan.com/tx/${T.srcTxHash}`},[p,T]);return jsxRuntime.jsxs(ui.Box,{intensity:800,children:[jsxRuntime.jsx(gn,{viewMode:c,onConfirm:S,info:C,src:e.src,dst:e.dst,mode:o,markPrice:t.mark_prices?.from_token??1,nativePrice:t.mark_prices.native_token,nativeToken:m}),c==="processing"&&jsxRuntime.jsx(pn,{mode:1,status:p,statusUrl:D,onComplete:e.onComplete,brokerName:e.brokerName}),jsxRuntime.jsx(yn,{})]})};var $r=()=>{let[e,{setTrue:t,setFalse:n}]=hooks.useBoolean(false),o=hooks.useAccountInstance(),a=hooks.useConfig("brokerId"),[i,s]=Js.useState(types.WS_WalletStatusEnum.NO),m=Js.useRef(),r=hooks.useEventEmitter();Js.useEffect(()=>{let u=c=>{let{side:w,transStatus:y,trxId:d}=c;w==="DEPOSIT"&&d===m.current&&s(y);};return r.on("wallet:changed",u),()=>{r.off("wallet:changed",u);}},[m.current]);let l=Js.useCallback(()=>({accountId:o.accountIdHashStr,brokerHash:core.utils.parseBrokerHash(a),tokenHash:core.utils.parseTokenHash("USDC")}),[o,a]);return {swap:Js.useCallback(async(u,c,w)=>{if(!o.walletAdapter)throw new Error("walletAdapter is undefined");if(!o.address)throw new Error("account.address is undefined");if(e)return;t();let y={from:o.address,to:u,data:[o.address,c,l()],value:an(c.fromToken)?BigInt(c.fromAmount)+c.orderlyNativeFees:c.orderlyNativeFees};try{let d=await o.walletAdapter.sendTransaction(u,"swap",y,{abi:_r});return n(),m.current=d.hash,ramda.pick(["from","to","hash","value"],d)}catch(d){throw new Error(d.errorCode)}},[e,o]),loading:e,status:i}};var Kr=e=>{let{transactionData:t,slippage:n,mode:o,dst:a,src:i,chain:s,nativeToken:m,depositFee:r}=e,{t:l}=i18n.useTranslation(),[p,u]=Js.useState(-1),[c,w]=Js.useState("details"),[y,d]=Js.useState(),b=hooks.useEventEmitter(),{swap:x,status:f}=$r(),T=Js.useMemo(()=>({price:t.price,slippage:n,time:s?.est_txn_mins,received:a.amount,dstGasFee:new utils.Decimal(r.toString())?.div(new utils.Decimal(10).pow(18))?.toString(),swapFee:t.fees_from}),[t,s?.est_txn_mins,o,a,r]);Js.useEffect(()=>{f===types.WS_WalletStatusEnum.COMPLETED&&u(4),f===types.WS_WalletStatusEnum.FAILED&&u(3);},[f]);let g=Js.useCallback(()=>(w("processing"),t?!s||!s.depositor?Promise.reject("No chain data"):(u(2),x(s.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:i}).then(S=>{d(S),ui.toast.success(l("transfer.deposit.requested")),b.emit("deposit:requested");}).catch(S=>{u(3),ui.toast.error(S?.message||"Error");})):Promise.reject("No transaction data")),[t,o,a,i,b]),C=Js.useMemo(()=>{if(!(p<2||!y))return `${s?.explorer_base_url}/tx/${y.hash}`},[p,y,s]);return jsxRuntime.jsxs(ui.Box,{intensity:800,children:[jsxRuntime.jsx(gn,{viewMode:c,onConfirm:g,info:T,src:e.src,dst:e.dst,mode:o,markPrice:t.mark_prices?.from_token??1,nativePrice:t.mark_prices.native_token,nativeToken:m}),c==="processing"&&jsxRuntime.jsx(pn,{mode:0,status:p,statusUrl:C,onComplete:e.onComplete,brokerName:e.brokerName}),jsxRuntime.jsx(yn,{})]})};var es=e=>{let{mode:t}=e;return t===1?jsxRuntime.jsx(qr,{...e}):jsxRuntime.jsx(Kr,{...e})};var wn=ui.modal.create(e=>{let{isMobile:t}=ui.useScreen(),{t:n}=i18n.useTranslation(),{visible:o,hide:a,resolve:i,reject:s,onOpenChange:m}=ui.useModal(),r=u=>{i(u),a();},l=()=>{s(),a();},p={title:n("transfer.swapDeposit.swapDialog.title"),open:o,onOpenChange:m,classNames:{content:"oui-font-semibold"},children:jsxRuntime.jsx(es,{...e,onComplete:r,onCancel:l})};return t?jsxRuntime.jsx(ui.SimpleSheet,{...p}):jsxRuntime.jsx(ui.SimpleDialog,{...p,size:"md"})});var ts=()=>{let[e,{setTrue:t,setFalse:n}]=hooks.useBoolean(false),o=hooks.useConfig("brokerId"),a=hooks.useAccountInstance(),i=Js.useCallback(()=>({accountId:a.accountIdHashStr,brokerHash:core.utils.parseBrokerHash(o),tokenHash:core.utils.parseTokenHash("USDC")}),[a,o]),s=Js.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,i()],{abi:Tt});return core.utils.formatByUnits(p[0])},[]);return {query:Js.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,c])=>`${u}=${encodeURIComponent(c)}`).join("&");return fetch(`${un}/woofi_dex/cross_chain_swap?${p}`).then(u=>u.ok?u.json():u.json().then(c=>{throw new Error(c.error.message)})).then(u=>{if(u.status==="ok")return u.data;throw new Error(u.message)}).then(u=>s(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(c=>({...u,dst_infos:{...u.dst_infos,gas_fee:c}})).catch(c=>{})).finally(()=>n())},[e,a]),loading:e}};var ns=()=>{let e=hooks.useAccountInstance(),[t,{setTrue:n,setFalse:o}]=hooks.useBoolean(false);return {query:Js.useCallback(i=>{if(t)return Promise.resolve();n();let s={network:i.srcNetwork,from_token:i.srcToken,to_token:i.dstToken,from_amount:i.amount,slippage:i.slippage||1},m=Object.entries(s).map(([r,l])=>`${r}=${encodeURIComponent(l)}`).join("&");return fetch(`${un}/woofi_dex/swap?${m}`).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 hn(e){let{quantity:t,dst:n,queryParams:o,needSwap:a,needCrossSwap:i}=e,{t:s}=i18n.useTranslation(),{query:m}=ns(),{query:r}=ts(),l=Js.useRef(o);l.current=o;let[p,u]=Js.useState(""),[c,w]=Js.useState(""),[y,{setTrue:d,setFalse:b}]=hooks.useBoolean(false),[x,f]=Js.useState({price:0,markPrices:{from_token:0,native_token:0},fee:""}),T=Js.useCallback(()=>i?r(l.current):a?m(l.current):Promise.reject("no need to enquiry"),[a,i]),g=h=>{if(h.mark_prices){let F=i?h.dst_infos.gas_fee:"0",k=i?h.fees_from.woofi:h.fees_from,v=i?h.fees_from.stargate:void 0,N=i?h.fees_from.total:h.fees_from;f({price:h.price,markPrices:h.mark_prices,dstGasFee:F,swapFee:k,bridgeFee:v,fee:N});}if(h.route_infos){let F=i?h.route_infos.dst.amounts[1]:h.route_infos.amounts[1];u(new utils.Decimal(F).div(Math.pow(10,n.decimals)).toString());}return w(""),h},C=h=>{f({fee:"0",markPrices:{from_token:0,native_token:0},price:0,swapFee:"0",bridgeFee:"0",dstGasFee:"0",...h}),u("");},S=h=>{h.message==="contract call failed"?(w(s("transfer.swapDeposit.notEnoughLiquidity")),C()):(w(""),h?.message&&ui.toast.error(h.message));},D=hooks.useDebouncedCallback(()=>(d(),T().then(g,S).finally(()=>{b();})),300);return Js.useEffect(()=>{if(!a&&!i){C({price:1}),u(t);return}let h=Number(t);if(isNaN(h)||h<=0){C();return}D();},[a,i,t]),{enquiry:T,querying:y,warningMessage:c,transactionInfo:x,amount:p,cleanTransactionInfo:C}}function bn(e){let{nativeToken:t,isNativeToken:n,src:o,depositFee:a=0,transactionInfo:i,needSwap:s,needCrossSwap:m}=e,r=t?.symbol,l=o?.symbol,{fee:p="0",swapFee:u="0",bridgeFee:c="0",dstGasFee:w="0",markPrices:y}=i,{from_token:d,native_token:b}=y,{data:x}=hooks.useIndexPrice(`SPOT_${r}_USDC`),{t:f}=i18n.useTranslation();return {...Js.useMemo(()=>{let g="",C=[],S=He(t?.precision),D=He(o?.precision),h=m?w:new utils.Decimal(a.toString()).div(new utils.Decimal(10).pow(18)).toString();if(!s&&!m&&(C=[{value:h,dp:S}],g=new utils.Decimal(h).mul(x||0).toString()),s||m)if(n){let k=new utils.Decimal(h).plus(p);C=[{value:k.toString(),dp:S}],g=k.mul(b??1).toString();}else C=[{value:h,dp:S,symbol:r},{value:p,dp:D,symbol:l}],g=new utils.Decimal(h).mul(b??1).plus(new utils.Decimal(p).mul(d??1)).toString();C=C.filter(k=>!!k.value&&Number(k.value)!==0);let F=[{title:f("transfer.deposit.destinationGasFee"),description:f("transfer.deposit.destinationGasFee.description"),value:h,dp:S,symbol:r},{title:f("transfer.swapDeposit.swapFee"),description:f("transfer.swapDeposit.swapFee.description"),value:u,dp:D,symbol:l},{title:f("transfer.swapDeposit.bridgeFee"),description:f("transfer.swapDeposit.bridgeFee.description"),value:c,dp:D,symbol:l}].filter((k,v)=>v===0||!!k.value&&Number(k.value)!==0).map(k=>{let v=new utils.Decimal(k.value||0).todp(k.dp).toNumber();return {...k,value:utils.toNonExponential(v)}});return {feeAmount:g,feeQtys:C,feeDetails:F}},[a,x,r,l,i,s,m]),nativeSymbol:r}}var ul="orderly_swap_deposit_slippage",is=e=>{let{srcToken:t,currentChain:n,dst:o,quantity:a,isNativeToken:i,depositFee:s,setQuantity:m,needSwap:r,needCrossSwap:l}=e,[p,u]=hooks.useLocalStorage(ul,1),w=hooks.useConfig().get("brokerName")||"",{enquiry:y,transactionInfo:d,amount:b,querying:x,warningMessage:f,cleanTransactionInfo:T}=hn({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 utils.Decimal(a||0).mul(10**(t?.decimals||0)).toString(),slippage:p},needSwap:r,needCrossSwap:l}),g=Js.useCallback(()=>{m(""),T();},[m]),C=Js.useCallback(async()=>y().then(k=>{let v=l?k.route_infos?.dst.amounts[1]:k.route_infos?.amounts[1],N={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 utils.Decimal(v).div(Math.pow(10,o.decimals)).toString(),decimals:o.decimals},chain:n?.info?.network_infos,nativeToken:n?.info?.nativeToken,depositFee:s,transactionData:k,slippage:p,brokerName:w};return ui.modal.show(wn,N)}).then(k=>{k&&g();}).catch(k=>{}),[a,l,o,n,p,s]),S=Js.useMemo(()=>l||r?d.price:1,[d]),D=Js.useMemo(()=>l||r?i?d.markPrices.native_token:d.markPrices.from_token:1,[r,l,i,d]),h=r||l?b:a,F=bn({nativeToken:n?.info?.nativeToken,isNativeToken:i,src:t,depositFee:s,transactionInfo:d,needSwap:r,needCrossSwap:l});return {cleanTransactionInfo:T,onSwapDeposit:C,swapPrice:S,markPrice:D,swapQuantity:h,swapFee:F,swapRevalidating:x,warningMessage:f,needSwap:r,needCrossSwap:l,slippage:p,onSlippageChange:u}};function Ct(e){let{isNativeToken:t,allowance:n,quantity:o,maxQuantity:a}=e;return Js.useMemo(()=>{let s=t?Number.MAX_VALUE:Number(n);if(s<=0)return 1;let m=Number(o),r=Number(a);return s<m&&m<=r?2:0},[t,n,o,a])}function St(){let{t:e}=i18n.useTranslation(),t=hooks.useConfig("networkId"),[n]=hooks.useLocalStorage("orderly_link_device",{}),{connectedChain:o,settingChain:a,setChain:i}=hooks.useWalletConnector(),[s,{findByChainId:m}]=hooks.useChains(t,{pick:"network_infos",filter:p=>p.network_infos?.bridge_enable||p.network_infos?.bridgeless}),r=Js.useMemo(()=>{let p=o?utils.praseChainIdToNumber(o.id):parseInt(n?.chainId);if(!p)return null;let u=m(p);return {...o,id:p,info:u}},[m,o,n]),l=Js.useCallback(async p=>{let u=m(p.chain_id);if(o)return !u||u.network_infos?.chain_id===r?.id?Promise.resolve():i({chainId:utils.int2hex(Number(u.network_infos?.chain_id))}).then(c=>{c?ui.toast.success(e("connector.networkSwitched")):ui.toast.error(e("connector.switchChain.failed"));}).catch(c=>{c&&c.message&&ui.toast.error(`${e("connector.switchChain.failed")}: ${c.message}`);})},[r,i,m]);return {chains:s,currentChain:r,settingChain:a,onChainChange:l}}function It(e){let{quantity:t,allowance:n,approve:o,deposit:a,enableCustomDeposit:i,customDeposit:s,onSuccess:m}=e,[r,l]=Js.useState(false),p=hooks.useEventEmitter(),{t:u}=i18n.useTranslation(),c=Js.useCallback(async()=>{if(!r)return l(true),o(t).then(d=>{ui.toast.success(u("transfer.deposit.approve.success"));}).catch(d=>{ui.toast.error(d.message||d.errorCode||u("transfer.deposit.approve.failed"));}).finally(()=>{l(false);})},[o,r,t,n,u]),w=Js.useCallback(async()=>a().then(d=>{ui.toast.success(u("transfer.deposit.requested")),p.emit("deposit:requested"),m?.();}).catch(d=>{ui.toast.error(d.message||u("transfer.deposit.failed"));}),[a,m,u]),y=Js.useCallback(()=>{let d=Number(t);if(isNaN(d)||d<=0){ui.toast.error(u("transfer.quantity.invalid"));return}if(r)return;l(true),(i?s:w)?.()?.finally(()=>{l(false);});},[t,r,w,i,s,u]);return {submitting:r,onApprove:c,onDeposit:y}}function Ft(e){let{quantity:t,maxQuantity:n}=e,{t:o}=i18n.useTranslation(),[a,i]=Js.useState("default"),[s,m]=Js.useState();return Js.useEffect(()=>{if(!t){i("default"),m("");return}new utils.Decimal(t).gt(n)?(i("error"),m(o("transfer.insufficientBalance"))):(i("default"),m(""));},[t,n]),{inputStatus:a,hintMessage:s}}var Tn=(e,t=()=>true)=>{let[n,o]=Js.useState(),[a,i]=Js.useState(),[s,m]=Js.useState([]),[r,l]=Js.useState([]),p=hooks.useConfig("networkId"),u=Js.useCallback(c=>{if(c&&c?.token_infos?.length>0){let w=c.token_infos?.filter(t);w?.length&&w.sort((d,b)=>d.symbol==="USDC"?-1:b.symbol==="USDC"?1:0);let y=dn(w);if(!y)return;o(y),i(y),m(w),l([y]);}},[]);return Js.useEffect(()=>{u(e?.info);},[e,u]),Js.useEffect(()=>{if(!n||!s.length)return;if(n.symbol==="USDC"){i(n),l([n]);return}let c=s.find(w=>w.symbol==="USDC");if(n.is_collateral){p==="mainnet"&&n.swap_enable?(i(c),l([c,n])):(i(n),l([n]));return}i(c),l([c]);},[p,n,s]),{sourceToken:n,targetToken:a,sourceTokens:s,targetTokens:r,onSourceTokenChange:o,onTargetTokenChange:i}};var {collateralRatio:Ll,collateralContribution:Vl,calcMinimumReceived:zl}=perp.account,kn=3,ko=e=>{let{wrongNetwork:t}=reactApp.useAppContext(),{t:n}=i18n.useTranslation(),o=hooks.useConfig("networkId"),{chains:a,currentChain:i,settingChain:s,onChainChange:m}=St(),{sourceToken:r,targetToken:l,sourceTokens:p,targetTokens:u,onSourceTokenChange:c,onTargetTokenChange:w}=Tn(i),y=Js.useMemo(()=>p?.find(Yo=>Yo.symbol==="USDC"),[p]),{dst:d,balance:b,allowance:x,depositFeeRevalidating:f,depositFee:T,quantity:g,setQuantity:C,approve:S,deposit:D,isNativeToken:h,balanceRevalidating:F,fetchBalance:k}=hooks.useDeposit({address:r?.address,decimals:r?.decimals,srcChainId:i?.id,srcToken:r?.symbol,dstToken:l?.symbol,crossChainRouteAddress:i?.info?.network_infos?.cross_chain_router,depositorAddress:i?.info?.network_infos?.depositor}),v=Js.useMemo(()=>new utils.Decimal(b||0).todp(r?.precision??2,utils.Decimal.ROUND_DOWN).toString(),[b,r?.precision]),{inputStatus:N,hintMessage:W}=Ft({quantity:g,maxQuantity:v}),{needSwap:R,needCrossSwap:I}=sn({srcToken:r,dstToken:l,srcChainId:i?.id,dstChainId:d?.chainId}),{cleanTransactionInfo:O,onSwapDeposit:B,swapRevalidating:q,swapPrice:K,markPrice:oe,swapQuantity:E,swapFee:G,warningMessage:M,slippage:te,onSlippageChange:ie}=is({srcToken:r,currentChain:i,dst:d,quantity:g,isNativeToken:h,depositFee:T,setQuantity:C,needSwap:R,needCrossSwap:I}),ae=Js.useCallback(()=>{C(""),O();},[C]),we=Js.useCallback(()=>{ae(),e.onClose?.();},[ae,e.onClose]),{submitting:We,onApprove:ce,onDeposit:he}=It({quantity:g,allowance:x,approve:S,deposit:D,enableCustomDeposit:R||I,customDeposit:B,onSuccess:we}),me=Js.useMemo(()=>r?.symbol==="USDC"||r?.symbol!==l?.symbol||!r?.is_collateral||!g||isNaN(Number(g))?"":new utils.Decimal(g).gt(r?.user_max_qty)?n("transfer.deposit.userMaxQty.error",{maxQty:r?.user_max_qty,token:r?.symbol}):"",[r,l,g,n]),Oe=We||f,P=!g||Number(g)===0||!r||N==="error"||f||q||!!me,L=Js.useMemo(()=>new utils.Decimal(g||0).mul(1).toNumber(),[g]),j=Ct({isNativeToken:h,allowance:x,quantity:g,maxQuantity:v}),X=Ul({nativeToken:i?.info?.nativeToken,depositFee:T}),{collateralRatio:Ae,collateralContributionQuantity:A,currentLTV:H,nextLTV:Le,indexPrice:Us}=Ql({sourceToken:r,targetToken:l,qty:g}),{ltv_threshold:Qs,negative_usdc_threshold:qs,isLoading:Gs}=ql();Js.useEffect(()=>{ae();},[r,i?.id]);let Hs=Js.useMemo(()=>{if(h&&v===g)return n("transfer.deposit.gasFee.error",{token:r?.symbol})},[v,g,r?.symbol,n]),$s=M||me||Hs,js=Js.useMemo(()=>R?E&&new utils.Decimal(E)?.todp(kn,utils.Decimal.ROUND_DOWN).toString():g,[R,E,g]),Xs=Js.useMemo(()=>E?zl({amount:Number(E),slippage:te}):"-",[E,te]);return {sourceToken:r,targetToken:l,sourceTokens:p,targetTokens:u,onSourceTokenChange:c,onTargetTokenChange:w,amount:L,isNativeToken:h,quantity:g,collateralContributionQuantity:A,maxQuantity:v,indexPrice:Us,onQuantityChange:C,hintMessage:W,inputStatus:N,chains:a,currentChain:i,settingChain:s,onChainChange:m,actionType:j,onDeposit:he,onApprove:ce,fetchBalance:k,dst:d,wrongNetwork:t,balanceRevalidating:F,loading:Oe,disabled:P,networkId:o,fee:X,collateralRatio:Ae,currentLTV:H,nextLTV:Le,ltv_threshold:Qs,negative_usdc_threshold:qs,isConvertThresholdLoading:Gs,slippage:te,onSlippageChange:ie,minimumReceived:Xs,usdcToken:y,needSwap:R,needCrossSwap:I,swapPrice:K,markPrice:oe,swapFee:G,warningMessage:$s,targetQuantity:js,targetQuantityLoading:q}};function Ul(e){let{nativeToken:t,depositFee:n=0}=e,{account:o}=hooks.useAccount(),a=t?.symbol,i=hooks.useTokenInfo(a),{data:s}=hooks.useIndexPrice(`SPOT_${a}_USDC`);return {...Js.useMemo(()=>{let r=new utils.Decimal(n.toString()).div(new utils.Decimal(10).pow(o.walletAdapter?.chainNamespace===types.ChainNamespace.solana?9:18)).toString(),l=new utils.Decimal(r).mul(s||0).toString();return {dstGasFee:r,feeQty:r,feeAmount:l,dp:i?.decimals||8}},[n,s]),nativeSymbol:a}}var Ql=e=>{let{sourceToken:t,targetToken:n}=e,o=Number(e.qty),{data:a}=hooks.useIndexPricesStream(),i=Js.useMemo(()=>{if(t?.symbol==="USDC")return 1;let p=`PERP_${t?.symbol}_USDC`;return a[p]??0},[t?.symbol,a]),s=Js.useMemo(()=>Ll({baseWeight:n?.base_weight??0,discountFactor:n?.discount_factor??0,collateralQty:o,collateralCap:t?.user_max_qty??o,indexPrice:i}),[n,o,t?.user_max_qty,i]),m=Vl({collateralQty:o,collateralCap:t?.user_max_qty??o,collateralRatio:s,indexPrice:i}),r=hooks.useComputedLTV(),l=hooks.useComputedLTV({input:o,token:t?.symbol});return {collateralRatio:s,collateralContributionQuantity:m,currentLTV:r,nextLTV:l,indexPrice:i}},ql=()=>{let{data:e,error:t,isLoading:n}=hooks.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 So=e=>{let{sourceToken:t,targetToken:n,sourceTokens:o,targetTokens:a,onSourceTokenChange:i,onTargetTokenChange:s,amount:m,quantity:r,collateralContributionQuantity:l,maxQuantity:p,onQuantityChange:u,hintMessage:c,inputStatus:w,chains:y,currentChain:d,settingChain:b,onChainChange:x,actionType:f,onDeposit:T,onApprove:g,fetchBalance:C,wrongNetwork:S,balanceRevalidating:D,loading:h,disabled:F,networkId:k,fee:v,collateralRatio:N,currentLTV:W,nextLTV:R,slippage:I,onSlippageChange:O,minimumReceived:B,needSwap:q,needCrossSwap:K,swapPrice:oe,swapFee:E,warningMessage:G,usdcToken:M,targetQuantity:te,targetQuantityLoading:ie}=e,{t:ae}=i18n.useTranslation(),we=()=>q||K?jsxRuntime.jsxs(ui.Flex,{direction:"column",itemAlign:"start",mt:1,gapY:1,children:[jsxRuntime.jsxs(ui.Flex,{width:"100%",itemAlign:"center",justify:"between",children:[jsxRuntime.jsx(ui.Text,{size:"2xs",intensity:36,children:ae("transfer.deposit.convertRate")}),jsxRuntime.jsx(bt,{sourceSymbol:t?.display_name||t?.symbol,targetSymbol:n?.display_name||n?.symbol,precision:kn,indexPrice:oe})]}),jsxRuntime.jsx(Je,{value:I,onValueChange:O}),jsxRuntime.jsx(Qt,{value:B,symbol:n?.symbol??"",precision:kn}),jsxRuntime.jsx(Jt,{...E})]}):jsxRuntime.jsxs(ui.Flex,{direction:"column",itemAlign:"start",mt:2,gap:1,children:[jsxRuntime.jsx(jn,{value:N}),jsxRuntime.jsx(ir,{precision:M?.precision??6,value:l}),jsxRuntime.jsx(gt,{showDiff:typeof r<"u"&&Number(r)>0,currentLtv:W,nextLTV:R}),jsxRuntime.jsx(ht,{...v})]});return jsxRuntime.jsxs(ui.Box,{id:"oui-deposit-form",className:ui.textVariants({weight:"semibold"}),children:[jsxRuntime.jsxs(ui.Box,{className:"oui-mb-6 lg:oui-mb-8",children:[jsxRuntime.jsx(xt,{}),jsxRuntime.jsxs(ui.Box,{mt:3,mb:1,children:[jsxRuntime.jsx(Ue,{chains:y,value:d,onValueChange:x,wrongNetwork:S,loading:b}),jsxRuntime.jsx(Y,{classNames:{root:"oui-mt-[2px] oui-rounded-t-sm oui-rounded-b-xl"},value:r,onValueChange:u,token:t,tokens:o,onTokenChange:i,status:w,hintMessage:c,fetchBalance:C,"data-testId":"oui-testid-deposit-dialog-quantity-input"})]}),jsxRuntime.jsx(ue,{token:t,amount:m,maxQuantity:p,loading:D,onClick:()=>{u(p);}}),jsxRuntime.jsx(le,{}),jsxRuntime.jsx(ze,{}),jsxRuntime.jsx(Y,{readOnly:true,token:n,tokens:a,onTokenChange:s,value:te,loading:ie,classNames:{root:"oui-mt-3 oui-border-transparent focus-within:oui-outline-transparent"}}),we()]}),jsxRuntime.jsx(Fr,{sourceToken:t?.symbol,targetToken:n?.symbol,className:"oui-mb-3"}),jsxRuntime.jsx(Zt,{message:G,needSwap:q,needCrossSwap:K,wrongNetwork:S,networkId:k}),jsxRuntime.jsx(ui.Flex,{justify:"center",children:jsxRuntime.jsx(yt,{actionType:f,symbol:t?.symbol,disabled:F,loading:h,onDeposit:T,onApprove:g,networkId:k})})]})};var At=e=>{let t=ko(e);return jsxRuntime.jsx(So,{...t})};var ds=e=>{let{value:t,onChange:n,status:o,hintMessage:a,placeholder:i,label:s}=e,m=Js.useRef(null),r=u=>{n?.(u.target.value);let c=m.current;c&&(c.style.height="auto",c.style.height=`${c.scrollHeight}px`);};Js.useEffect(()=>{let u=m.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(ui.Text,{size:"2xs",intensity:36,children:s})}),p=jsxRuntime.jsxs(ui.Flex,{mt:1,gapX:1,px:1,children:[jsxRuntime.jsx(ui.Box,{width:4,height:4,r:"full",className:ui.cn(o==="error"&&"oui-bg-danger-light",o==="warning"&&"oui-bg-warning-light")}),jsxRuntime.jsx(ui.Text,{size:"2xs",className:ui.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:m,placeholder:i,className:ui.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 Fn=e=>{let{hasPositions:t,unsettledPnl:n,onSettlePnl:o,tooltipContent:a,dialogContent:i}=e,{t:s}=i18n.useTranslation();if(n===0&&!t)return jsxRuntime.jsx(jsxRuntime.Fragment,{});let m=()=>{ui.modal.confirm({title:s("settle.settlePnl"),content:i,onOk:()=>o()});};return jsxRuntime.jsxs(ui.Flex,{justify:"between",className:"oui-text-2xs oui-text-base-contrast-36",children:[jsxRuntime.jsxs(ui.Flex,{itemAlign:"center",justify:"start",gap:1,children:[jsxRuntime.jsx(ui.Tooltip,{className:"oui-max-w-[274px] oui-font-semibold",content:a,children:jsxRuntime.jsxs(ui.Flex,{itemAlign:"center",justify:"start",gap:1,children:[jsxRuntime.jsx(ui.ExclamationFillIcon,{size:14,className:"oui-text-warning-darken"}),jsxRuntime.jsx(ui.Text,{className:"oui-cursor-pointer oui-border-b oui-border-dashed oui-border-line-12",children:`${s("settle.unsettled")}:`})]})}),jsxRuntime.jsx(ui.Text.numeral,{showIdentifier:true,coloring:true,weight:"semibold",dp:6,"data-testid":"oui-testid-withdraw-dialog-unsettledPnl-value",children:n}),jsxRuntime.jsx(ui.Text,{children:"USDC"})]}),jsxRuntime.jsxs(ui.Flex,{itemAlign:"center",gap:1,className:"oui-cursor-pointer",children:[jsxRuntime.jsx(nr,{className:"oui-text-primary"}),jsxRuntime.jsx(ui.Text,{"data-testid":"oui-testid-withdraw-dialog-settle-text",size:"2xs",color:"primary",className:" oui-select-none",onClick:m,children:s("common.settle")})]})]})};var fs=({address:e,amount:t,currentChain:n})=>{let{t:o}=i18n.useTranslation(),a=Js.useMemo(()=>{if(n&&n.info&&n.info.network_infos)return n.info.network_infos.name},[n]);return jsxRuntime.jsxs(ui.Flex,{direction:"column",itemAlign:"start",justify:"start",className:"oui-gap-1 lg:oui-gap-3",children:[jsxRuntime.jsxs(ui.Flex,{direction:"column",itemAlign:"start",mb:5,className:"oui-gap-3 lg:oui-gap-4",children:[jsxRuntime.jsxs(ui.Flex,{direction:"column",justify:"start",itemAlign:"start",children:[jsxRuntime.jsx(ui.Text,{size:"2xs",intensity:36,children:o("transfer.withdraw.crossChain.recipientAddress")}),jsxRuntime.jsx(ui.Text,{size:"sm",intensity:98,className:"oui-break-all",children:e})]}),jsxRuntime.jsxs(ui.Flex,{direction:"column",justify:"start",itemAlign:"start",children:[jsxRuntime.jsx(ui.Text,{size:"2xs",intensity:36,children:o("transfer.withdraw.crossChain.recipientNetwork")}),jsxRuntime.jsxs(ui.Flex,{gap:1,children:[jsxRuntime.jsx(ui.ChainIcon,{className:"oui-h-[18px] oui-w-[18px]",size:"sm",chainId:n.id}),jsxRuntime.jsx(ui.Text,{size:"sm",intensity:98,children:a})]})]}),jsxRuntime.jsxs(ui.Flex,{direction:"column",justify:"start",itemAlign:"start",children:[jsxRuntime.jsx(ui.Text,{size:"2xs",intensity:36,children:`${o("transfer.withdraw.crossChain.withdrawAmount")} (USDC)`}),jsxRuntime.jsx(ui.Text.numeral,{size:"sm",intensity:98,dp:2,children:t})]})]}),jsxRuntime.jsx(ui.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 Io(e){let{t}=i18n.useTranslation(),n=()=>{ui.modal.show(uiChainSelector.ChainSelectorDialogId,{networkId:e.networkId,bridgeLessOnly:true}).then(o=>{ui.toast.success(t("connector.networkSwitched"));},o=>{});};return jsxRuntime.jsx(ui.Flex,{direction:"column",children:jsxRuntime.jsx(ui.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:i,address:s,currentChain:m,quantity:r,fee:l,checkIsBridgeless:p,onTransfer:u}=e,{t:c}=i18n.useTranslation(),w=Js.useMemo(()=>r?new utils.Decimal(r).minus(l??0).toNumber():0,[r,l]),y=()=>{if(i){ui.modal.confirm({title:c("transfer.withdraw.crossChain.confirmWithdraw"),content:jsxRuntime.jsx(fs,{address:s,amount:w,currentChain:m}),classNames:{content:"oui-font-semibold",body:"!oui-pb-0",footer:"!oui-pt-0"},onOk:async()=>{o();}});return}o();},d={initial:"md",lg:"lg"},b=()=>e.withdrawTo==="accountId"?jsxRuntime.jsx(ui.Button,{fullWidth:true,disabled:t,loading:n,onClick:u,size:d,children:c("common.withdraw")}):p?jsxRuntime.jsx(ui.Button,{"data-testid":"oui-testid-withdraw-dialog-withdraw-btn",fullWidth:true,disabled:t,loading:n,onClick:y,size:d,children:c("common.withdraw")}):jsxRuntime.jsx(Io,{networkId:a,size:d});return jsxRuntime.jsx(ui.Box,{className:"oui-w-full lg:oui-w-auto lg:oui-min-w-[184px]",children:jsxRuntime.jsx(uiConnector.AuthGuard,{status:types.AccountStatusEnum.EnableTrading,networkId:a,bridgeLessOnly:true,buttonProps:{fullWidth:true,size:d},children:b()})})};var xs=({checkIsBridgeless:e,quantity:t,chainVaultBalance:n,currentChain:o,maxAmount:a,crossChainTrans:i})=>{let{t:s}=i18n.useTranslation(),{wrongNetwork:m}=reactApp.useAppContext(),{state:r}=hooks.useAccount(),l=Js.useMemo(()=>{if(o&&o.info&&o.info.network_infos)return o.info.network_infos.name},[o]),p=Js.useMemo(()=>!n||!a||!t||new utils.Decimal(t).gt(a)?false:!!new utils.Decimal(t).gt(n),[t,n]),c=(()=>{if(r.status!==types.AccountStatusEnum.NotConnected){if(i)return s("transfer.withdraw.crossChain.process");if(p)return s("transfer.withdraw.crossChain.vaultWarning",{networkName:l,chainVaultBalance:n})}})();return c?jsxRuntime.jsx(ui.Flex,{className:"oui-text-warning-darken oui-text-xs oui-justify-center oui-text-center",mb:3,children:c}):null};var Fo=e=>{let{address:t,loading:n,disabled:o,quantity:a,onQuantityChange:i,sourceToken:s,amount:m,maxQuantity:r,tokenChains:l,currentChain:p,fee:u,settingChain:c,chainVaultBalance:w,crossChainTrans:y,checkIsBridgeless:d,withdrawTo:b,sourceTokens:x,onSourceTokenChange:f,vaultBalanceList:T}=e,{t:g}=i18n.useTranslation();return jsxRuntime.jsxs(ui.Box,{id:"oui-withdraw-form",className:ui.textVariants({weight:"semibold"}),children:[jsxRuntime.jsxs(ui.Box,{className:"oui-mb-6 lg:oui-mb-8",children:[jsxRuntime.jsx(ze,{}),jsxRuntime.jsx(ui.Box,{mt:3,mb:1,children:jsxRuntime.jsx(Y,{value:a,onValueChange:i,token:s,tokens:x,onTokenChange:f,status:e.inputStatus,hintMessage:e.hintMessage,vaultBalanceList:T,testId:"oui-testid-withdraw-dialog-quantity-input",displayType:"vaultBalance"})}),jsxRuntime.jsx(ue,{token:s,amount:m,maxQuantity:r.toString(),loading:e.balanceRevalidating,onClick:()=>{i(r.toString());}}),jsxRuntime.jsx(ui.Box,{mx:2,mt:1,children:jsxRuntime.jsx(Fn,{unsettledPnl:e.unsettledPnL,hasPositions:e.hasPositions,onSettlePnl:e.onSettlePnl,tooltipContent:g("settle.unsettled.tooltip"),dialogContent:jsxRuntime.jsx(i18n.Trans,{i18nKey:"settle.settlePnl.description"})})}),jsxRuntime.jsx(le,{}),jsxRuntime.jsxs(ui.Tabs,{value:b,onValueChange:e.setWithdrawTo,variant:"contained",size:"lg",classNames:{tabsList:"oui-px-0",tabsContent:"oui-pt-3"},children:[jsxRuntime.jsxs(ui.TabPanel,{title:g("transfer.web3Wallet.my"),icon:jsxRuntime.jsx(ui.WalletIcon,{size:"xs",name:e.walletName??""}),value:"wallet",children:[jsxRuntime.jsx(Ue,{chains:l,value:p,onValueChange:e.onChainChange,wrongNetwork:e.wrongNetwork,loading:c}),jsxRuntime.jsx(Y,{classNames:{root:"oui-mt-[2px] oui-rounded-t-sm oui-rounded-b-xl"},token:s,value:e.showQty,readOnly:true})]}),jsxRuntime.jsxs(ui.TabPanel,{title:g("transfer.withdraw.otherAccount",{brokerName:e.brokerName}),value:"accountId",children:[jsxRuntime.jsx(ds,{label:g("common.accountId"),value:e.toAccountId,onChange:e.setToAccountId,status:e.toAccountIdInputStatus,hintMessage:e.toAccountIdHintMessage}),jsxRuntime.jsx(ui.Box,{my:2,children:jsxRuntime.jsx(ui.Text,{size:"xs",intensity:54,children:g("transfer.withdraw.accountId.tips")})})]})]}),jsxRuntime.jsx(ui.Flex,{direction:"column",mt:1,gapY:1,itemAlign:"start",children:jsxRuntime.jsxs(ui.Text,{size:"xs",intensity:36,children:[g("common.fee"),b==="wallet"?jsxRuntime.jsxs(jsxRuntime.Fragment,{children:[" \u2248 ",jsxRuntime.jsx(ui.Text,{size:"xs",intensity:80,children:u})]}):jsxRuntime.jsxs(jsxRuntime.Fragment,{children:[" = ",jsxRuntime.jsx(ui.Text,{size:"xs",intensity:80,children:"0"})]})]})})]}),jsxRuntime.jsx(xs,{checkIsBridgeless:d,chainVaultBalance:w,currentChain:p,quantity:a,maxAmount:r,crossChainTrans:y}),jsxRuntime.jsx(ui.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:b,onTransfer:e.onTransfer})})]})};var ut=e=>{let{accountId:t}=e||{},{t:n}=i18n.useTranslation(),o=hooks.useEventEmitter(),{account:a,state:i}=hooks.useAccount(),[s]=hooks.usePositionStream();return {hasPositions:Js.useMemo(()=>!!s?.rows?.length,[s]),onSettlePnl:async()=>(t&&i.mainAccountId!==t?a.settleSubAccount({subAccountId:t}):a.settle({accountId:t})).then(u=>(ui.toast.success(n("settle.settlement.requested")),Promise.resolve(u))).catch(u=>{if(u.code==-1104)ui.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)ui.toast.error(n("transfer.rejectTransaction"));else return ui.toast.error(u.message),Promise.reject(u)})}};var Ss=1,Do=e=>{let{t}=i18n.useTranslation(),[n,o]=Js.useState(false),[a,i]=Js.useState(false),{data:s}=hooks.usePrivateQuery("/v1/asset/history",{revalidateOnMount:true}),m=hooks.useConfig(),r=m.get("brokerName"),l=m.get("networkId"),p=hooks.useEventEmitter(),[u,c]=Js.useState(""),[w,y]=Js.useState("default"),[d,b]=Js.useState(),{wrongNetwork:x}=reactApp.useAppContext(),{account:f}=hooks.useAccount(),[T,{findByChainId:g}]=hooks.useChains(l,{filter:A=>A.network_infos?.bridge_enable||A.network_infos?.bridgeless}),[C]=hooks.useLocalStorage("orderly_link_device",{}),{data:S}=hooks.useQuery("/v1/public/vault_balance",{revalidateOnMount:true,errorRetryCount:3}),{connectedChain:D,wallet:h,setChain:F,settingChain:k}=hooks.useWalletConnector(),v=Js.useMemo(()=>{let A=D?utils.praseChainIdToNumber(D.id):Number.parseInt(C?.chainId);if(!A)return null;let H=g(A);return {...D,id:A,info:H}},[g,D,C]),{sourceToken:N,onSourceTokenChange:W,sourceTokens:R}=Tn(v,A=>A.symbol==="USDC"||A.is_collateral),I=Js.useMemo(()=>T.filter(A=>A.token_infos?.some(H=>H.symbol===N?.symbol)).map(A=>A.network_infos),[T,l,N]),{walletName:O,address:B}=Js.useMemo(()=>({walletName:h?.label,address:h?.accounts?.[0].address}),[h]),q=A=>{c(A);},K=Js.useMemo(()=>new utils.Decimal(u||0).mul(Ss).toNumber(),[u,Ss]),{withdraw:oe,maxAmount:E,unsettledPnL:G}=hooks.useWithdraw({token:N?.symbol,decimals:N?.token_decimal}),M=Zc({token:N?.symbol,quantity:u,setQuantity:c,close:e.onClose,setLoading:i}),{withdrawTo:te,toAccountId:ie}=M,ae=Js.useMemo(()=>x||!v?false:l==="testnet"?true:!(!v.info||!v.info.network_infos||!v.info.network_infos.bridgeless),[v,x]),we=()=>{c("");},We=Js.useCallback(async A=>{let H=g(A.chain_id);return !H||H.network_infos?.chain_id===v?.id?Promise.resolve():F?.({chainId:utils.int2hex(Number(H.network_infos?.chain_id))}).then(Le=>{Le?(ui.toast.success(t("connector.networkSwitched")),we()):ui.toast.error(t("connector.switchChain.failed"));}).catch(Le=>{ui.toast.error(`${t("connector.switchChain.failed")}: ${Le.message}`);})},[v,F,g,t]),ce=Js.useMemo(()=>{if(!Array.isArray(S)||!v)return null;let A=S.find(H=>Number.parseInt(H.chain_id)===v?.id);return A?A.balance:null},[T,v,S]),he=Js.useMemo(()=>{if(ce!==null){let A=Number.parseFloat(u);return A>ce&&A<=E}return false},[u,E,ce]),me=Js.useMemo(()=>N?.minimum_withdraw_amount??0,[N]),Oe=async()=>{if(!a&&w==="default"){if(new utils.Decimal(u).lt(me)){ui.toast.error(t("transfer.withdraw.minAmount.error",{minAmount:me}));return}return i(true),oe({amount:u,token:N?.symbol,chainId:v?.id,allowCrossChainWithdraw:he}).then(A=>{ui.toast.success(t("transfer.withdraw.requested")),p.emit("withdraw:requested"),e.onClose?.(),c("");}).catch(A=>{if(A.message.indexOf("user rejected")!==-1){ui.toast.error(t("transfer.rejectTransaction"));return}if(A.message.indexOf("Signing off chain messages with Ledger is not yet supported")!==-1){p.emit("wallet:sign-message-with-ledger-error",{message:A.message,userAddress:f.address});return}ui.toast.error(A.message);}).finally(()=>{i(false);})}},P=Kc({crossChainWithdraw:he,currentChain:v,token:N?.symbol}),L=Js.useMemo(()=>{if(!u)return "";let A=new utils.Decimal(u).sub(P??0);return A.isNegative()?"":A.toNumber()},[P,u]);Js.useEffect(()=>{if(!u){y("default"),b("");return}let A=new utils.Decimal(u??0);G<0&&(A.gt(E)?(y("error"),b(t("transfer.insufficientBalance"))):(y("default"),b("")));},[u,E,G,n]);let j=n||!u||Number(u)===0||["error","warning"].includes(w)||te==="accountId"&&!ie;Js.useEffect(()=>{let A=s?.find(H=>H.trans_status==="pending_rebalance".toUpperCase());o(!!A);},[s]),hooks.useWalletSubscription({onMessage(A){if(!n)return;let{trxId:H,transStatus:Le}=A;H===n&&Le==="COMPLETED"&&o(false);}});let{hasPositions:X,onSettlePnl:Ae}=ut();return {walletName:O,address:B,quantity:u,onQuantityChange:q,sourceToken:N,onSourceTokenChange:W,sourceTokens:R,inputStatus:w,hintMessage:d,amount:K,balanceRevalidating:false,maxQuantity:E,disabled:j,loading:a,unsettledPnL:G,wrongNetwork:x,settingChain:k,tokenChains:I,currentChain:v,onChainChange:We,onWithdraw:Oe,chainVaultBalance:ce,fee:P,crossChainWithdraw:he,crossChainTrans:n,showQty:L,networkId:l,checkIsBridgeless:ae,hasPositions:X,onSettlePnl:Ae,brokerName:r,vaultBalanceList:S?.filter(A=>Number.parseInt(A.chain_id)===v?.id),...M}};function Zc(e){let{token:t,quantity:n,setQuantity:o,close:a,setLoading:i}=e,{t:s}=i18n.useTranslation(),[m,r]=Js.useState("wallet"),[l,p]=Js.useState(""),[u,c]=Js.useState("default"),[w,y]=Js.useState(),{transfer:d,submitting:b}=hooks.useTransfer(),x=Js.useCallback(()=>{let f=Number(n);if(isNaN(f)||f<=0){ui.toast.error(s("transfer.quantity.invalid"));return}b||!l||(i(true),d(t,{account_id:l,amount:new utils.Decimal(n).toNumber()}).then(()=>{ui.toast.success(s("transfer.internalTransfer.success")),o(""),a?.();}).catch(T=>{let g=fn(T.code);ui.toast.error(g);}).finally(()=>{i(false);}));},[s,n,t,b,l,d]);return Js.useEffect(()=>{if(!l){c("default"),y("");return}Or(l)?(c("default"),y("")):(c("error"),y(s("transfer.withdraw.accountId.invalid")));},[l]),{withdrawTo:m,setWithdrawTo:r,toAccountId:l,setToAccountId:p,onTransfer:x,internalWithdrawSubmitting:b,toAccountIdInputStatus:u,toAccountIdHintMessage:w}}function Kc(e){let{crossChainWithdraw:t,currentChain:n,token:o}=e,a=hooks.useTokenInfo(o);return Js.useMemo(()=>{if(!n)return 0;let s=a?.chain_details?.find(m=>Number.parseInt(m.chain_id)===n.id);return s?t?(s.withdrawal_fee||0)+(s.cross_chain_withdrawal_fee||0):s.withdrawal_fee||0:0},[a,o,n,t])}var No=e=>{let t=Do({onClose:e.close});return jsxRuntime.jsx(Fo,{...t})};var am="DepositAndWithdrawWithDialogId",um="DepositAndWithdrawWithSheetId",As=e=>{let[t,n]=Js.useState(e.activeTab||"deposit"),{t:o}=i18n.useTranslation();return jsxRuntime.jsxs(ui.Tabs,{value:t,onValueChange:n,variant:"contained",size:"lg",classNames:{tabsList:"oui-px-0",tabsContent:"oui-pt-5"},children:[jsxRuntime.jsx(ui.TabPanel,{title:o("common.deposit"),icon:jsxRuntime.jsx(ui.ArrowDownSquareFillIcon,{}),value:"deposit",children:jsxRuntime.jsx(At,{onClose:e.close})}),jsxRuntime.jsx(ui.TabPanel,{title:o("common.withdraw"),icon:jsxRuntime.jsx(ui.ArrowUpSquareFillIcon,{}),value:"withdraw",children:jsxRuntime.jsx(No,{...e})})]})};ui.registerSimpleDialog(am,As,{size:"md",classNames:{content:"oui-border oui-border-line-6"}});ui.registerSimpleSheet(um,As);var Ro=e=>{let{token:t,tokens:n,onTokenChange:o,amount:a,quantity:i,maxQuantity:s,swapQuantity:m,onQuantityChange:r,hintMessage:l,inputStatus:p,chains:u,currentChain:c,settingChain:w,onChainChange:y,actionType:d,onDeposit:b,onApprove:x,fetchBalance:f,dst:T,wrongNetwork:g,balanceRevalidating:C,loading:S,disabled:D,networkId:h,slippage:F,onSlippageChange:k,needSwap:v,needCrossSwap:N,swapPrice:W,swapRevalidating:R,warningMessage:I,fee:O}=e;return jsxRuntime.jsxs(ui.Box,{id:"oui-swap-deposit-form",className:ui.textVariants({weight:"semibold"}),children:[jsxRuntime.jsxs(ui.Box,{className:"oui-mb-6 lg:oui-mb-8",children:[jsxRuntime.jsx(xt,{}),jsxRuntime.jsxs(ui.Box,{mt:3,mb:1,children:[jsxRuntime.jsx(Ue,{chains:u,value:c,onValueChange:y,wrongNetwork:g,loading:w}),jsxRuntime.jsx(Y,{classNames:{root:"oui-mt-[2px] oui-rounded-t-sm oui-rounded-b-xl"},value:i,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(ue,{token:t,amount:a,maxQuantity:s,loading:C,onClick:()=>{r(s);}}),jsxRuntime.jsx(le,{}),jsxRuntime.jsx(ze,{}),jsxRuntime.jsx(Y,{readOnly:true,token:T,value:m,loading:R,classNames:{root:"oui-mt-3 oui-border-transparent focus-within:oui-outline-transparent"}}),jsxRuntime.jsxs(ui.Flex,{direction:"column",itemAlign:"start",mt:1,gapY:1,children:[jsxRuntime.jsx(ui.Flex,{justify:"between",width:"100%",children:(v||N)&&jsxRuntime.jsx(Je,{value:F,onValueChange:k})}),jsxRuntime.jsx(Jt,{...O})]})]}),jsxRuntime.jsx(Zt,{message:I,needSwap:v,needCrossSwap:N,wrongNetwork:g,networkId:h}),jsxRuntime.jsx(ui.Flex,{justify:"center",children:jsxRuntime.jsx(yt,{actionType:d,symbol:t?.symbol,disabled:D,loading:S,onDeposit:b,onApprove:x,networkId:h})})]})};function Ns(e){let{currentChain:t,tokensFilter:n}=e,[o,a]=Js.useState(),[i,s]=Js.useState([]),m=Js.useCallback(r=>{if(r&&r?.token_infos?.length>0){let l=typeof n=="function"?n(r):r.token_infos;s(l);let p=dn(l);if(!p)return;a(p);}},[n]);return Js.useEffect(()=>{m(t?.info);},[t?.id,m]),{token:o,tokens:i,onTokenChange:a}}var Bo=e=>{let[t,n]=hooks.useLocalStorage("orderly_swap_deposit_slippage",1),o=hooks.useConfig(),a=o.get("brokerName")||"",i=o.get("networkId"),{wrongNetwork:s}=reactApp.useAppContext(),{chains:m,currentChain:r,settingChain:l,onChainChange:p}=St(),u=Js.useCallback(X=>X.token_infos.filter(Ae=>X.network_infos.bridgeless&&Ae.symbol==="USDC"?true:!!Ae.swap_enable)??[],[]),{token:c,tokens:w,onTokenChange:y}=Ns({currentChain:r,tokensFilter:u}),{dst:d,balance:b,allowance:x,depositFeeRevalidating:f,depositFee:T,quantity:g,setQuantity:C,approve:S,deposit:D,isNativeToken:h,balanceRevalidating:F,fetchBalance:k}=hooks.useDeposit({address:c?.address,decimals:c?.decimals,srcChainId:r?.id,srcToken:c?.symbol,crossChainRouteAddress:r?.info?.network_infos?.cross_chain_router,depositorAddress:r?.info?.network_infos?.depositor}),v=Js.useMemo(()=>new utils.Decimal(b||0).todp(c?.precision??2,utils.Decimal.ROUND_DOWN).toString(),[b,c]),{inputStatus:N,hintMessage:W}=Ft({quantity:g,maxQuantity:v}),{needSwap:R,needCrossSwap:I}=sn({srcToken:c,srcChainId:r?.id,dstChainId:d?.chainId}),{enquiry:O,transactionInfo:B,amount:q,querying:K,warningMessage:oe,cleanTransactionInfo:E}=hn({quantity:g,dst:d,queryParams:{network:d.network,srcToken:c?.address,srcNetwork:r?.info?.network_infos?.shortName,dstToken:d.address,crossChainRouteAddress:r?.info?.network_infos?.cross_chain_router,amount:new utils.Decimal(g||0).mul(10**(c?.decimals||0)).toString(),slippage:t},needSwap:R,needCrossSwap:I}),G=()=>{E(),C("");},M=Js.useCallback(()=>{G(),e.onClose?.();},[e.onClose]),te=Js.useCallback(async()=>O().then(X=>{let Ae=I?X.route_infos?.dst.amounts[1]:X.route_infos?.amounts[1],A={mode:I?1:0,src:{chain:r?.id,token:c.symbol,displayDecimals:c?.precision,amount:g,decimals:c.decimals},dst:{chain:d.chainId,token:d.symbol,displayDecimals:2,amount:new utils.Decimal(Ae).div(Math.pow(10,d.decimals)).toString(),decimals:d.decimals},chain:r?.info?.network_infos,nativeToken:r?.info?.nativeToken,depositFee:T,transactionData:X,slippage:t,brokerName:a};return ui.modal.show(wn,A)}).then(X=>{X&&G();}).catch(X=>{}),[g,I,d,r,t,T]),{submitting:ie,onApprove:ae,onDeposit:we}=It({quantity:g,allowance:x,approve:S,deposit:D,enableCustomDeposit:R||I,customDeposit:te,onSuccess:M}),We=ie||f||K,ce=!g||Number(g)===0||N==="error"||f||K,he=Js.useMemo(()=>I||R?B.price:1,[B]),me=Js.useMemo(()=>I||R?h?B.markPrices.native_token:B.markPrices.from_token:1,[R,I,h,B]),Oe=Js.useMemo(()=>new utils.Decimal(g||0).mul(me).toNumber(),[g,me]),P=R||I?q:g,L=Ct({isNativeToken:h,allowance:x,quantity:g,maxQuantity:v}),j=bn({nativeToken:r?.info?.nativeToken,isNativeToken:h,src:c,depositFee:T,transactionInfo:B,needSwap:R,needCrossSwap:I});return Js.useEffect(()=>{G();},[c,r?.id]),{token:c,tokens:w,onTokenChange:y,amount:Oe,quantity:g,maxQuantity:v,swapQuantity:P,onQuantityChange:C,hintMessage:W,inputStatus:N,chains:m,currentChain:r,settingChain:l,onChainChange:p,actionType:L,onDeposit:we,onApprove:ae,fetchBalance:k,dst:d,wrongNetwork:s,balanceRevalidating:F,loading:We,disabled:ce,networkId:i,slippage:t,onSlippageChange:n,needSwap:R,needCrossSwap:I,swapPrice:he,swapRevalidating:K,warningMessage:oe,fee:j}};var bm=e=>{let t=Bo(e);return jsxRuntime.jsx(Ro,{...t})};function Cm(){ui.installExtension({name:"deposit-form",scope:["*"],positions:[ui.ExtensionPositionEnum.DepositForm],__isInternal:true})(e=>jsxRuntime.jsx(At,{onClose:e.onClose}));}var Wo=e=>{let{subAccounts:t=[],value:n}=e,[o,a]=Js.useState(false),i=t.length>1,s=jsxRuntime.jsxs(ui.Flex,{intensity:500,className:ui.cn("oui-rounded-b-sm oui-rounded-t-xl oui-border oui-border-line",i?"oui-cursor-pointer":"oui-cursor-auto oui-bg-base-6"),height:54,px:3,justify:"between",itemAlign:"center",children:[jsxRuntime.jsxs(ui.Flex,{direction:"column",itemAlign:"start",children:[jsxRuntime.jsx(ui.Text.formatted,{size:"xs",intensity:80,rule:n?.description?void 0:"address",children:n?.description||n?.id}),jsxRuntime.jsxs(ui.Text,{intensity:36,size:"2xs",children:["ID: ",jsxRuntime.jsx(ui.Text.formatted,{rule:"address",children:n?.id})]})]}),i&&jsxRuntime.jsx(Lt,{className:"oui-text-base-contrast-54"})]}),m=t.map((r,l)=>{let p=r.id===n?.id,u=r?.holding?.find(c=>c.token==="USDC")?.holding;return jsxRuntime.jsxs(ui.Flex,{px:2,r:"base",justify:"between",className:ui.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(ui.Flex,{gapX:1,itemAlign:"center",children:jsxRuntime.jsxs(ui.Flex,{direction:"column",itemAlign:"start",className:"oui-text-2xs",children:[jsxRuntime.jsx(ui.Text.formatted,{rule:r?.description?void 0:"address",intensity:80,children:r?.description||r?.id}),jsxRuntime.jsxs(ui.Text,{intensity:36,size:"2xs",children:["ID: ",jsxRuntime.jsx(ui.Text.formatted,{rule:"address",children:r?.id})]})]})}),jsxRuntime.jsxs(ui.Flex,{gapX:3,children:[jsxRuntime.jsx(ui.Text.numeral,{size:"2xs",intensity:54,unit:" USDC",children:u||0}),p&&jsxRuntime.jsx(ui.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(ui.DropdownMenuRoot,{open:i?o:false,onOpenChange:a,children:[jsxRuntime.jsx(ui.DropdownMenuTrigger,{asChild:true,children:s}),jsxRuntime.jsx(ui.DropdownMenuPortal,{children:jsxRuntime.jsx(ui.DropdownMenuContent,{onCloseAutoFocus:r=>r.preventDefault(),align:"start",sideOffset:2,className:ui.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(ui.ScrollArea,{children:jsxRuntime.jsxs("div",{className:"oui-max-h-[254px]",children:[m," "]})})})})]})};var Oo=e=>{let{networkId:t,disabled:n,onTransfer:o,quantity:a,onQuantityChange:i,amount:s,tokens:m,token:r,onTokenChange:l,maxQuantity:p,submitting:u,hintMessage:c,inputStatus:w,hasPositions:y,onSettlePnl:d,unsettledPnL:b,toAccountAsset:x,fromAccounts:f,toAccounts:T,fromAccount:g,onFromAccountChange:C,toAccount:S,onToAccountChange:D,onExchange:h}=e,{t:F}=i18n.useTranslation(),k={initial:"md",lg:"lg"};return jsxRuntime.jsxs(ui.Box,{id:"oui-deposit-form",className:ui.textVariants({weight:"semibold"}),children:[jsxRuntime.jsxs(ui.Box,{className:"oui-mb-6 lg:oui-mb-8",children:[jsxRuntime.jsx(ui.Text,{size:"sm",intensity:98,children:F("transfer.internalTransfer.from")}),jsxRuntime.jsxs(ui.Box,{mt:1,mb:1,children:[jsxRuntime.jsx(Wo,{subAccounts:f,value:g,onValueChange:C}),jsxRuntime.jsx(Y,{classNames:{root:"oui-mt-[2px] oui-rounded-t-sm oui-rounded-b-xl"},value:a,onValueChange:i,tokens:m,token:r,onTokenChange:l,hintMessage:c,status:w})]}),jsxRuntime.jsx(ue,{token:r,amount:s,maxQuantity:p,onClick:()=>{i(p.toString());}}),jsxRuntime.jsx(ui.Box,{mx:2,mt:1,children:jsxRuntime.jsx(Fn,{unsettledPnl:b,hasPositions:y,onSettlePnl:d,tooltipContent:F("transfer.internalTransfer.unsettled.tooltip"),dialogContent:jsxRuntime.jsx(i18n.Trans,{i18nKey:"transfer.internalTransfer.settlePnl.description"})})}),jsxRuntime.jsx(le,{icon:jsxRuntime.jsx(or,{className:"oui-cursor-pointer oui-text-primary",onClick:h})}),jsxRuntime.jsx(ui.Text,{size:"sm",intensity:98,children:F("transfer.internalTransfer.to")}),jsxRuntime.jsxs(ui.Box,{mt:1,children:[jsxRuntime.jsx(Wo,{subAccounts:T,value:S,onValueChange:D}),jsxRuntime.jsxs(ui.Flex,{className:ui.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(ui.Text,{size:"2xs",children:F("transfer.internalTransfer.currentAssetValue")}),jsxRuntime.jsx(ui.Text.numeral,{size:"2xs",intensity:54,unit:` ${r.symbol}`,dp:r?.precision,padding:false,children:x})]})]})]}),jsxRuntime.jsx(ui.Flex,{justify:"center",children:jsxRuntime.jsx(ui.Box,{className:"oui-w-full lg:oui-w-auto lg:oui-min-w-[184px]",children:jsxRuntime.jsx(uiConnector.AuthGuard,{networkId:t,buttonProps:{fullWidth:true,size:k},children:jsxRuntime.jsx(ui.Button,{fullWidth:true,disabled:n,loading:u,size:k,onClick:o,children:F("common.transfer")})})})})]})};var Vo={symbol:"USDC"},zo=e=>{let{t}=i18n.useTranslation(),[n,o]=Js.useState(""),[a,i]=Js.useState(),[s,m]=Js.useState(),[r,l]=Js.useState(),[p,u]=Js.useState([Vo]),[c,w]=Js.useState(Vo),[y,d]=Js.useState({}),b=hooks.useConfig("networkId"),{state:x,isMainAccount:f,subAccount:T}=hooks.useAccount(),g=hooks.useTokensInfo(),{transfer:C,submitting:S,maxAmount:D,unsettledPnL:h}=hooks.useTransfer({fromAccountId:a?.id,token:c.symbol}),F=x.subAccounts,k=x.mainAccountId,v=x.accountId,N=f?a?.id!==k?a?.id:void 0:a?.id,{hasPositions:W,onSettlePnl:R}=ut({accountId:a?.id}),{portfolio:I,positions:O}=hooks.useSubAccountDataObserver(N),B=hooks.useSubAccountMaxWithdrawal({token:c.symbol,unsettledPnL:I?.unsettledPnL,freeCollateral:I?.freeCollateral?.todp(c?.precision).toNumber()||0,holdings:I?.holding}),q=Js.useMemo(()=>!!O?.rows?.length,[O]),K=Js.useMemo(()=>N?q:W,[N,q,W]),{unsettledPnL:oe,maxQuantity:E}=Js.useMemo(()=>N?{unsettledPnL:I?.unsettledPnL,maxQuantity:B}:{unsettledPnL:h,maxQuantity:D},[N,h,D,I?.unsettledPnL,B]),{inputStatus:G,hintMessage:M}=qm({quantity:n,maxQuantity:E,unsettledPnL:oe}),te=Js.useCallback(()=>{let P=Number(n);if(isNaN(P)||P<=0){ui.toast.error(t("transfer.quantity.invalid"));return}S||!s||C(c.symbol,{account_id:s.id,amount:new utils.Decimal(n).toNumber()}).then(()=>{ui.toast.success(t("transfer.internalTransfer.success")),o(""),e.close?.();}).catch(L=>{let j=fn(L.code);ui.toast.error(j);});},[t,c,n,S,C,s]),ie=S||!n||G==="error",ae=Js.useMemo(()=>new utils.Decimal(n||0).mul(1).toNumber(),[n]),we=Js.useMemo(()=>s?.id&&y[s.id]?.find(j=>j.token===c.symbol)?.holding||0,[s,c,y]),{fromAccounts:We,toAccounts:ce}=Js.useMemo(()=>f?{fromAccounts:r?[r,...F||[]]:[],toAccounts:a?.id===k?F:[]}:{fromAccounts:[],toAccounts:[]},[f,k,r,F,a]);Js.useEffect(()=>{if(!k)return;let P={id:k,description:t("common.mainAccount"),holding:[]};l(P),T.refresh().then(L=>{d(L),l({...P,holding:L[k]});});},[t,k]),Js.useEffect(()=>{i(f?r:F?.find(P=>P.id===v));},[f,r,F,v]),Js.useEffect(()=>{if(f){let P=F?.[0],L=e.toAccountId&&F?.find(j=>j.id===e.toAccountId)||P;L&&m(L);}else m(r);},[e?.toAccountId,f,r,F]),Js.useEffect(()=>{let P=g?.map(L=>({symbol:L.token,precision:L.decimals}));if(P?.length){P.sort((j,X)=>j.symbol==="USDC"?-1:X.symbol==="USDC"?1:0);let L=P?.find(j=>j.symbol===e.token);u(P),w(L||P?.[0]||Vo);}},[g,e.token]);let he=Js.useCallback(P=>{i(P);let L=F?.[0];if(P?.id===k){m(L);return}if(P?.id&&P?.id!==k){m(r);return}},[k,r,F]),me=Js.useCallback(P=>{m(P);},[]),Oe=Js.useCallback(()=>{i(s),m(a);},[a,s]);return {networkId:b,onTransfer:te,quantity:n,amount:ae,onQuantityChange:o,maxQuantity:E,tokens:p,token:c,onTokenChange:w,disabled:ie,submitting:S,hintMessage:M,inputStatus:G,hasPositions:K,onSettlePnl:R,unsettledPnL:oe,toAccountAsset:we,fromAccount:a,toAccount:s,fromAccounts:We,onFromAccountChange:he,toAccounts:ce,onToAccountChange:me,onExchange:Oe,isMainAccount:f}};function qm(e){let{quantity:t,maxQuantity:n,unsettledPnL:o=0}=e,{t:a}=i18n.useTranslation(),[i,s]=Js.useState("default"),[m,r]=Js.useState();return Js.useEffect(()=>{if(!t){s("default"),r("");return}let l=new utils.Decimal(t);o<0?l.gt(n)?(s("error"),r(a("transfer.insufficientBalance"))):(s("default"),r("")):l.gt(n)?(s("error"),r(a("transfer.insufficientBalance"))):l.gt(new utils.Decimal(n).minus(o))&&l.lessThanOrEqualTo(n)?(s("warning"),r(a("settle.settlePnl.warning"))):(s("default"),r(""));},[t,n]),{inputStatus:i,hintMessage:m}}var $m="TransferDialogId",jm="TransferSheetId",Xm=e=>{let t=zo({toAccountId:e.toAccountId,token:e.token,close:e.close});return jsxRuntime.jsx(Oo,{...t})},Ms=e=>jsxRuntime.jsx(Xm,{close:e.close,toAccountId:e.toAccountId,token:e.token});ui.registerSimpleDialog($m,Ms,{size:"md",classNames:{content:"oui-border oui-border-line-6"},title:()=>i18n.i18n.t("common.transfer")});ui.registerSimpleSheet(jm,Ms,{title:()=>i18n.i18n.t("common.transfer")});var Es=e=>{let{disabled:t,loading:n,networkId:o,onConvert:a}=e,{t:i}=i18n.useTranslation();return jsxRuntime.jsx(ui.Box,{className:"oui-w-full lg:oui-w-auto lg:oui-min-w-[184px]",children:jsxRuntime.jsx(uiConnector.AuthGuard,{status:types.AccountStatusEnum.EnableTrading,networkId:o,buttonProps:{fullWidth:true,size:{initial:"md",lg:"lg"}},children:jsxRuntime.jsx(ui.Button,{fullWidth:true,disabled:t,loading:n,size:{initial:"md",lg:"lg"},onClick:a,children:i("transfer.convert")})})})};var ap=e=>e.reduce((t,n)=>(n.token?.toUpperCase()==="USDC"?t.usdc.push(n):t.others.push(n),t),{usdc:[],others:[]}),Ws=e=>{let{defaultValue:t}=e,o=hooks.useConfig().get("networkId"),[,{findByChainId:a}]=hooks.useChains(o,{pick:"network_infos",filter:d=>d.network_infos?.bridge_enable||d.network_infos?.bridgeless}),[i,s]=Js.useState(),[m,r]=Js.useState(),[l,p]=Js.useState([]),u=hooks.useTokensInfo(),c=a(types.Arbitrum.id),w=c?.network_infos?.chain_id,y=Js.useMemo(()=>u.map(d=>{let b=c?.token_infos?.find(({symbol:x})=>x===d.token);return {...d,symbol:d.token,address:b?.address,decimals:d.chain_details[0]?.decimals,precision:d.decimals}}),[c?.token_infos,u]);return Js.useEffect(()=>{let{usdc:d,others:b}=ap(y);s(()=>{if(t){let x=b.find(({token:f})=>f===t);return x||b[0]}return b[0]}),p(b),r(d[0]);},[t,y]),{chainId:w,sourceToken:i,sourceTokens:l,onSourceTokenChange:s,targetToken:m}};var {calcMinimumReceived:Tp}=perp.account,kp="orderly_convert_slippage",Cp=(e,t)=>new utils.Decimal(e).mul(new utils.Decimal(10).pow(t)).toFixed(0),Bt=(e,t)=>new utils.Decimal(e).div(new utils.Decimal(10).pow(t)).toString(),Go=e=>{let{token:t,close:n}=e,{t:o}=i18n.useTranslation(),[a,i]=Js.useState(false),[s,m]=Js.useState(false),l=hooks.useConfig().get("networkId"),[p,u]=Js.useState(""),{wrongNetwork:c}=reactApp.useAppContext(),{wallet:w}=hooks.useWalletConnector(),{sourceToken:y,sourceTokens:d,onSourceTokenChange:b,targetToken:x,chainId:f}=Ws({defaultValue:t}),T=Js.useMemo(()=>{let M={...y,precision:y?.decimals??6};return M.token==="ETH"&&(!M.address||M.address===types.nativeTokenAddress)&&(M.address=types.nativeETHAddress),M},[y]),{walletName:g,address:C}=Js.useMemo(()=>({walletName:w?.label,address:w?.accounts?.[0].address}),[w]),S=M=>{u(M);},[D,h]=hooks.useLocalStorage(kp,1),{maxAmount:F,convert:k}=hooks.useConvert({token:T.token}),v=async()=>{if(!s)return m(true),k({amount:Number(p),slippage:new utils.Decimal(D).div(100).toNumber()}).then(()=>{ui.toast.success(o("transfer.convert.completed")),n?.(),u("");}).catch(M=>{ui.toast.error(M.message?.includes("user rejected")?o("transfer.convert.failed"):M.message);}).finally(()=>{m(false);})},[N,{data:W,isMutating:R}]=hooks.useOdosQuote(),I=hooks.useMemoizedFn(N),O=Js.useMemo(()=>!W||R?"-":new utils.Decimal(Bt(W.outAmounts[0],x?.decimals??6)).div(Bt(W.inAmounts[0],T.decimals)).toString(),[R,W,x?.decimals,T?.decimals]);Js.useEffect(()=>{p&&f&&T.address&&x?.address&&I({chainId:f,inputTokens:[{amount:Cp(p,T.decimals),tokenAddress:T.address}],outputTokens:[{proportion:1,tokenAddress:x.address}]});},[p,T,x,f,I]);let B=Js.useMemo(()=>!W||R?0:Tp({amount:W?.outAmounts[0],slippage:Number(D)}),[W,R,D]),q=hooks.useComputedLTV(),K=hooks.useComputedLTV({input:Number(p),token:y?.token}),oe=!p||Number(p)===0;hooks.useWalletSubscription({onMessage(M){if(!a)return;let{trxId:te,transStatus:ie}=M;te===a&&ie==="COMPLETED"&&i(false);}});let{hasPositions:E,onSettlePnl:G}=ut();return {walletName:g,address:C,quantity:p,onQuantityChange:S,token:T,sourceTokens:d,onSourceTokenChange:b,targetToken:x,balanceRevalidating:false,maxQuantity:F,disabled:oe,loading:s,wrongNetwork:c,onConvert:v,crossChainTrans:a,hasPositions:E,onSettlePnl:G,networkId:l,slippage:D,onSlippageChange:h,convertRate:O,minimumReceived:B,isQuoteLoading:R,currentLTV:q,nextLTV:K}};var jo=e=>{let{loading:t,disabled:n,quantity:o,onQuantityChange:a,maxQuantity:i,token:s,targetToken:m,sourceTokens:r,onSourceTokenChange:l,onConvert:p,slippage:u,onSlippageChange:c,convertRate:w,minimumReceived:y,isQuoteLoading:d,currentLTV:b,nextLTV:x,networkId:f,balanceRevalidating:T}=e;return jsxRuntime.jsxs(ui.Box,{className:ui.textVariants({weight:"semibold"}),children:[jsxRuntime.jsxs(ui.Box,{className:"oui-mb-6 lg:oui-mb-8",children:[jsxRuntime.jsx(ui.Box,{mt:3,mb:1,children:jsxRuntime.jsx(Y,{value:o,onValueChange:a,token:s,tokens:r,onTokenChange:l})}),jsxRuntime.jsx(ue,{token:s,amount:o,maxQuantity:i.toString(),loading:T,onClick:()=>{a(i.toString());}}),jsxRuntime.jsx(le,{}),jsxRuntime.jsx(Y,{readOnly:true,loading:d,token:m,value:d||!o?"":Bt(y.toString(),m?.decimals??6)}),jsxRuntime.jsxs(ui.Flex,{direction:"column",itemAlign:"start",mt:2,gap:1,children:[jsxRuntime.jsx(bt,{indexPrice:d||!o?"-":w,sourceSymbol:s?.token,targetSymbol:m?.token}),jsxRuntime.jsx(Je,{value:u,onValueChange:c}),jsxRuntime.jsx(Qt,{symbol:m?.token||"",precision:m?.decimals??6,value:d||!o?"-":Bt(y.toString(),m?.decimals??6)}),jsxRuntime.jsx(gt,{showDiff:typeof o<"u"&&Number(o)>0,currentLtv:b,nextLTV:x}),jsxRuntime.jsx(ht,{dstGasFee:"0"})]})]}),jsxRuntime.jsx(ui.Flex,{itemAlign:"center",justify:"center",children:jsxRuntime.jsx(Es,{networkId:f,disabled:n,loading:t,onConvert:p})})]})};var Fp="ConvertDialogId",Ap="ConverSheetId",Xo=e=>{let t=Go(e);return jsxRuntime.jsx(jo,{...t})};ui.registerSimpleDialog(Fp,Xo,{size:"md",classNames:{content:"oui-border oui-border-line-6"},title:()=>i18n.i18n.t("transfer.convert")});ui.registerSimpleSheet(Ap,Xo,{title:()=>i18n.i18n.t("transfer.convert")});
22
+ var Hn=()=>{let{data:e,error:t,isLoading:n}=hooks.useQuery("/v1/public/auto_convert_threshold",{errorRetryCount:3});return {ltv_threshold:gi.useMemo(()=>!e||n?"-":`${new utils.Decimal(e.ltv_threshold).mul(100).toNumber()}%`,[]),negative_usdc_threshold:e?.negative_usdc_threshold,isLoading:n,error:t}};var hi=gi__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"})})),jn=e=>e>=0&&e<50?"oui-text-success":e>=50&&e<80?"oui-text-warning":e>=80?"oui-text-danger":"",bi=e=>{let{isLoading:t,ltv_threshold:n}=e,{t:r}=i18n.useTranslation();return jsxRuntime.jsxs(ui.Box,{className:"oui-w-72 oui-max-w-72",children:[jsxRuntime.jsx(ui.Text,{size:"2xs",intensity:80,children:r("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:r("tradingLeaderboard.learnMore")})]})},cr=e=>{let{t}=i18n.useTranslation(),{currentLtv:n,nextLTV:r,showDiff:i,ltv_threshold:s,isLoading:a}=e;return jsxRuntime.jsxs(ui.Flex,{width:"100%",itemAlign:"center",justify:"between",children:[jsxRuntime.jsxs(ui.Flex,{justify:"start",itemAlign:"center",children:[jsxRuntime.jsx(ui.Text,{size:"2xs",intensity:36,children:t("transfer.LTV")}),jsxRuntime.jsx(ui.Tooltip,{className:"oui-p-2",content:jsxRuntime.jsx(bi,{isLoading:a,ltv_threshold:s}),children:jsxRuntime.jsx(hi,{className:"oui-ml-[2px] oui-cursor-pointer oui-text-base-contrast-36"})})]}),i?jsxRuntime.jsxs(ui.Flex,{itemAlign:"center",justify:"between",gap:1,children:[jsxRuntime.jsxs(ui.Text,{size:"2xs",className:ui.cn("oui-font-semibold",jn(n)),children:[n,"%"]}),"\u2192",jsxRuntime.jsxs(ui.Text,{size:"2xs",className:ui.cn("oui-font-semibold",jn(r)),children:[r,"%"]})]}):jsxRuntime.jsxs(ui.Text,{size:"2xs",className:ui.cn("oui-font-semibold",jn(n)),children:[n,"%"]})]})};var bt=e=>{let t=Hn();return jsxRuntime.jsx(cr,{...e,...t})};var Yn=(r=>(r[r.Deposit=0]="Deposit",r[r.Approve=1]="Approve",r[r.Increase=2]="Increase",r))(Yn||{}),Ut=(n=>(n.Wallet="wallet",n.Account="accountId",n))(Ut||{});var xt=e=>{let{disabled:t,loading:n,actionType:r,symbol:i="USDC",onDeposit:s,onApprove:a,networkId:m}=e,{t:o}=i18n.useTranslation(),l=gi.useMemo(()=>({1:{children:o("transfer.deposit.approve.symbol",{symbol:i}),onClick:a,disabled:false,"data-testid":"oui-testid-deposit-dialog-approve-btn"},2:{children:o("transfer.deposit.increase.symbol",{symbol:i}),onClick:a,"data-testid":"oui-testid-deposit-dialog-increase-btn"},0:{children:o("common.deposit"),onClick:s,"data-testid":"oui-testid-deposit-dialog-deposit-btn"}})[r],[a,s,r,i,o]),p={initial:"md",lg:"lg"};return jsxRuntime.jsx(ui.Box,{className:"oui-w-full lg:oui-w-auto lg:oui-min-w-[184px]",children:jsxRuntime.jsx(uiConnector.AuthGuard,{status:types.AccountStatusEnum.EnableTrading,networkId:m,buttonProps:{fullWidth:true,size:p},children:jsxRuntime.jsx(ui.Button,{fullWidth:true,disabled:t,loading:n,size:p,...l})})})};var ie=e=>{let{amount:t,maxQuantity:n,token:r,loading:i}=e,{t:s}=i18n.useTranslation(),a=r?.display_name||r?.symbol||"",m=r?.precision??r?.decimals??2;return jsxRuntime.jsxs(ui.Flex,{justify:"between",px:2,children:[jsxRuntime.jsxs(ui.Text,{size:"2xs",intensity:36,children:["$",jsxRuntime.jsx(ui.Text.numeral,{dp:2,padding:false,rm:utils.Decimal.ROUND_DOWN,children:t})]}),jsxRuntime.jsxs(ui.Flex,{gapX:2,itemAlign:"center",children:[jsxRuntime.jsxs(ui.Flex,{gapX:1,itemAlign:"center",children:[jsxRuntime.jsx(ui.Text,{size:"2xs",intensity:36,children:`${s("common.available")}: `}),i?jsxRuntime.jsx(ui.Spinner,{size:"sm"}):jsxRuntime.jsx(ui.Text.numeral,{size:"2xs",intensity:36,rm:utils.Decimal.ROUND_DOWN,dp:m,padding:false,"data-testid":"oui-testid-withdraw_deposit-dialog-available-value",children:n}),jsxRuntime.jsx(ui.Text,{size:"2xs",intensity:36,children:` ${a}`})]}),jsxRuntime.jsx(ui.Text,{size:"2xs",color:"primary",className:"oui-cursor-pointer oui-select-none",onClick:e.onClick,children:s("common.max")})]})]})};var Ue=()=>{let{t:e}=i18n.useTranslation(),{appIcons:t}=reactApp.useAppConfig(),n=hooks.useConfig("brokerName"),r=gi.useMemo(()=>{let{secondary:i}=t||{};if(!i?.img&&i?.component)return null;if(i?.img)return jsxRuntime.jsx("img",{src:i?.img,className:"oui-w-5 oui-h-5"});if(i?.component)return jsxRuntime.jsx(jsxRuntime.Fragment,{children:i.component})},[t]);return jsxRuntime.jsxs(ui.Flex,{justify:"between",children:[jsxRuntime.jsx(ui.Text,{size:"sm",intensity:98,children:e("transfer.brokerAccount",{brokerName:n})}),r]})};var qt=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"})}),pr=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 dr=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"})}),fr=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 Qe=e=>{let{chains:t,value:n,wrongNetwork:r,loading:i}=e,[s,a]=gi.useState(false),{t:m}=i18n.useTranslation(),o=r||t?.length>1,l=r?jsxRuntime.jsx(ui.Flex,{width:18,height:18,intensity:100,r:"full",justify:"center",itemAlign:"center",children:jsxRuntime.jsx(ui.Text,{size:"2xs",intensity:80,children:"U"})}):jsxRuntime.jsx(ui.ChainIcon,{className:"oui-size-[18px]",chainId:n?.id}),p=r?"Unknown":n?.info?.network_infos?.name,u=()=>{if(i)return jsxRuntime.jsx(ui.Spinner,{size:"sm"});if(o)return jsxRuntime.jsx(qt,{className:"oui-text-base-contrast-54"})},c=jsxRuntime.jsxs(ui.Flex,{intensity:500,className:ui.cn("oui-rounded-t-xl oui-rounded-b-sm oui-border oui-border-line",o?"oui-cursor-pointer":"oui-cursor-auto"),height:54,px:3,justify:"between",itemAlign:"center",children:[jsxRuntime.jsxs("div",{children:[jsxRuntime.jsx(ui.Flex,{children:jsxRuntime.jsx(ui.Text,{size:"2xs",intensity:54,children:m("transfer.network")})}),jsxRuntime.jsxs(ui.Flex,{gapX:1,children:[l,jsxRuntime.jsx(ui.Text,{size:"sm",intensity:80,children:p})]})]}),u()]}),w=t.map((y,d)=>{let h=y.chain_id===n?.id;return jsxRuntime.jsxs(ui.Flex,{px:2,r:"base",justify:"between",className:ui.cn("oui-deposit-network-select-item","hover:oui-bg-base-5 oui-h-[30px] oui-cursor-pointer",h&&"oui-bg-base-5",d!==0&&"oui-mt-[2px]"),onClick:async()=>{a(false),await e.onValueChange(y);},children:[jsxRuntime.jsxs(ui.Flex,{gapX:1,itemAlign:"center",children:[jsxRuntime.jsx(ui.ChainIcon,{className:"oui-size-[18px]",chainId:y.chain_id}),jsxRuntime.jsx(ui.Text,{size:"2xs",intensity:54,children:y.name})]}),h&&jsxRuntime.jsx(ui.Box,{width:4,height:4,r:"full",className:"oui-deposit-network-select-active-dot oui-bg-[linear-gradient(270deg,#59B0FE_0%,#26FEFE_100%)]"})]},y.chain_id)});return jsxRuntime.jsxs(ui.DropdownMenuRoot,{open:o?s:false,onOpenChange:a,children:[jsxRuntime.jsx(ui.DropdownMenuTrigger,{asChild:true,children:c}),jsxRuntime.jsx(ui.DropdownMenuPortal,{children:jsxRuntime.jsx(ui.DropdownMenuContent,{onCloseAutoFocus:y=>y.preventDefault(),align:"start",sideOffset:2,className:ui.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(ui.ScrollArea,{children:jsxRuntime.jsx("div",{className:"oui-max-h-[254px]",children:w})})})})]})};var wr=e=>{let{t}=i18n.useTranslation(),{value:n,precision:r}=e;return jsxRuntime.jsxs(ui.Flex,{width:"100%",itemAlign:"center",justify:"between",children:[jsxRuntime.jsx(ui.Flex,{itemAlign:"center",justify:"start",children:jsxRuntime.jsx(ui.Text,{size:"2xs",intensity:36,children:t("transfer.deposit.collateralContribution")})}),jsxRuntime.jsxs(ui.Flex,{itemAlign:"center",justify:"end",gap:1,children:[jsxRuntime.jsx(ui.Text.numeral,{dp:r,size:"2xs",rm:utils.Decimal.ROUND_DOWN,className:ui.cn("oui-font-semibold"),padding:false,children:n}),jsxRuntime.jsx(ui.Text,{size:"2xs",intensity:36,className:"oui-select-none",children:"USDC"})]})]})};var Ji=gi__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"})})),ea=()=>{let{t:e}=i18n.useTranslation();return jsxRuntime.jsxs(ui.Box,{className:"oui-w-72 oui-max-w-72",children:[jsxRuntime.jsx(ui.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")})]})},xr=e=>{let{t}=i18n.useTranslation(),{value:n}=e;return jsxRuntime.jsxs(ui.Flex,{width:"100%",itemAlign:"center",justify:"between",children:[jsxRuntime.jsxs(ui.Flex,{justify:"start",itemAlign:"center",children:[jsxRuntime.jsx(ui.Text,{size:"2xs",intensity:36,children:t("portfolio.overview.column.collateralRatio")}),jsxRuntime.jsx(ui.Tooltip,{className:"oui-p-2",content:jsxRuntime.jsx(ea,{}),children:jsxRuntime.jsx(Ji,{className:"oui-ml-[2px] oui-cursor-pointer oui-text-base-contrast-36"})})]}),jsxRuntime.jsx(ui.Text.numeral,{dp:2,rm:utils.Decimal.ROUND_DOWN,coloring:true,className:"oui-font-semibold",rule:"percentages",children:n})]})};var so=e=>jsxRuntime.jsx(xr,{...e});var ae=({icon:e})=>jsxRuntime.jsxs(ui.Flex,{height:40,gapX:3,children:[jsxRuntime.jsx(ui.Flex,{height:1,className:"oui-flex-1 oui-bg-base-contrast-12"}),e||jsxRuntime.jsx(pr,{className:"oui-text-primary-light"}),jsxRuntime.jsx(ui.Flex,{height:1,className:"oui-flex-1 oui-bg-base-contrast-12"})]});var Tt=e=>{let{dstGasFee:t,feeQty:n,feeAmount:r,dp:i,nativeSymbol:s}=e,{t:a}=i18n.useTranslation(),m=()=>{let l=jsxRuntime.jsxs("div",{className:"oui-text-2xs",children:[jsxRuntime.jsxs(ui.Flex,{gapX:1,children:[jsxRuntime.jsx(ui.Text,{size:"2xs",intensity:54,children:`${a("transfer.deposit.destinationGasFee")}: `}),jsxRuntime.jsx(ui.Text.numeral,{intensity:80,dp:i,rm:utils.Decimal.ROUND_UP,padding:false,children:n}),jsxRuntime.jsx(ui.Text,{intensity:54,children:s})]}),jsxRuntime.jsx(ui.Box,{mt:2,children:jsxRuntime.jsx(ui.Text,{intensity:36,children:a("transfer.deposit.destinationGasFee.description")})})]});ui.modal.alert({title:a("common.fee"),message:l});},o=!!t&&t!=="0";return jsxRuntime.jsxs(ui.Text,{size:"2xs",intensity:36,className:"oui-border-dashed oui-border-b oui-border-line-12 oui-cursor-pointer",onClick:m,children:[`${a("common.fee")} \u2248 `,jsxRuntime.jsxs(ui.Text,{size:"2xs",intensity:80,children:["$",jsxRuntime.jsx(ui.Text.numeral,{dp:2,padding:false,rm:utils.Decimal.ROUND_UP,children:r})," "]}),o&&jsxRuntime.jsxs("span",{children:["(",jsxRuntime.jsxs(ui.Text,{intensity:54,children:[jsxRuntime.jsx(ui.Text.numeral,{dp:i,padding:false,rm:utils.Decimal.ROUND_UP,children:n}),s]}),")"]})]})};var Xt=e=>{let{t}=i18n.useTranslation(),{value:n,symbol:r,precision:i=6}=e;return jsxRuntime.jsxs(ui.Flex,{width:"100%",itemAlign:"center",justify:"between",children:[jsxRuntime.jsx(ui.Flex,{itemAlign:"center",justify:"start",children:jsxRuntime.jsx(ui.Text,{size:"2xs",intensity:36,children:t("transfer.swapDeposit.minimumReceived")})}),jsxRuntime.jsxs(ui.Flex,{itemAlign:"center",justify:"end",gap:1,children:[jsxRuntime.jsx(ui.Text.numeral,{dp:i,size:"2xs",className:"oui-select-none",intensity:80,children:n}),jsxRuntime.jsx(ui.Text,{size:"2xs",className:"oui-select-none",intensity:36,children:r})]})]})};var la=1e3;function Sr(e,t,n){let[r,i]=gi.useState(""),s=gi.useRef(""),[a,m]=gi.useState(false),o=gi.useRef(),l=async(p=0)=>{a||typeof t!="function"||!e.address||(o.current&&clearTimeout(o.current),s.current===""&&m(true),o.current=setTimeout(async()=>{try{let u=await t(e.address,e.decimals);i(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(la);}finally{s.current!==""&&m(false);}},p));};return gi.useEffect(()=>(n&&l(0),()=>{o.current&&clearTimeout(o.current);}),[e,n]),{balance:r,loading:a}}var Ir=e=>{let{token:t,isActive:n,displayType:r,onTokenChange:i,fetchBalance:s,open:a}=e,{symbol:m,precision:o,insufficientBalance:l}=t,{balance:p,loading:u}=Sr(t,s,a),c=typeof s=="function",{t:w}=i18n.useTranslation();if(r==="vaultBalance"&&l)return jsxRuntime.jsx(ui.Flex,{itemAlign:"center",justify:"between",px:2,r:"base",className:ui.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(ui.Flex,{itemAlign:"center",gapX:1,children:[jsxRuntime.jsx(ui.TokenIcon,{name:m,className:"oui-size-[16px] oui-opacity-50"}),jsxRuntime.jsx(ui.Text,{intensity:36,children:t.label}),jsxRuntime.jsx(ui.Badge,{color:"neutral",size:"xs",children:w("transfer.withdraw.InsufficientVaultBalance")})]})},m);let y=()=>c?u?jsxRuntime.jsx(ui.Spinner,{size:"sm"}):jsxRuntime.jsx(ui.Text.numeral,{rule:"price",dp:o??2,rm:utils.Decimal.ROUND_DOWN,className:ui.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(ui.Flex,{justify:"between",px:2,r:"base",className:ui.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:()=>{i?.(t);},children:[jsxRuntime.jsxs(ui.Flex,{gapX:1,children:[jsxRuntime.jsx(ui.TokenIcon,{name:m,className:"oui-size-[16px]"}),jsxRuntime.jsx(ui.Text,{className:ui.cn("oui-text-base-contrast-54 group-hover:oui-text-base-contrast-80",n&&"oui-text-base-contrast-80"),children:t.label})]}),y()]},m)};var j=gi.forwardRef(e=>{let{token:t,tokens:n=[],classNames:r,label:i,status:s,hintMessage:a,value:m,onValueChange:o,fetchBalance:l,onTokenChange:p,loading:u,placeholder:c,formatters:w,vaultBalanceList:y,displayType:d,...h}=e,{t:x}=i18n.useTranslation(),f=gi.useRef(null),[S,g]=gi.useState(false),[T,v]=gi.useState(0),D=gi.useMemo(()=>n.map(P=>{let B=y?.find(G=>G.token===P.symbol),L=new utils.Decimal(B?.balance??0).lt(m?Number(m):0);return {...P,name:P.display_name||P.symbol,insufficientBalance:L}}),[n,m,y]);gi.useEffect(()=>{let P=f?.current?.getBoundingClientRect();v(P?.width||0);},[f]);let b=P=>{let B=n.find(L=>L.symbol===P);B&&p?.(B);},k=n.length>1?S:false,C=P=>{let B=P.symbol===t?.symbol;return jsxRuntime.jsx(Ir,{token:P,isActive:B,fetchBalance:l,displayType:d,onTokenChange:L=>{p?.(L),g(false);},open:k})},A=jsxRuntime.jsxs(ui.Box,{children:[jsxRuntime.jsx(ui.Box,{className:"oui-absolute oui-top-0",children:jsxRuntime.jsx(ui.Text,{size:"2xs",intensity:36,children:i||x("common.quantity")})}),u&&jsxRuntime.jsx(ui.Box,{className:"oui-absolute oui-bottom-1",children:jsxRuntime.jsx(ui.Spinner,{size:"sm"})})]}),q=jsxRuntime.jsx("div",{className:"oui-absolute oui-right-0",children:jsxRuntime.jsx(ui.Select.tokens,{open:k,onOpenChange:g,disabled:h.disabled,variant:"text",tokens:D,value:t?.display_name||t?.symbol,size:h.size,onValueChange:b,showIcon:true,optionRenderer:C,contentProps:{onCloseAutoFocus:P=>{P.preventDefault(),f.current?.focus();},onClick:P=>{P.preventDefault(),f.current?.focus();},style:{width:T},align:"end",sideOffset:5,className:"oui-border oui-border-line-6"}})}),E=jsxRuntime.jsxs(ui.Flex,{mt:1,gapX:1,px:1,children:[jsxRuntime.jsx(ui.Box,{width:4,height:4,r:"full",className:ui.cn(s==="error"&&"oui-bg-danger-light",s==="warning"&&"oui-bg-warning-light")}),jsxRuntime.jsx(ui.Text,{size:"2xs",className:ui.cn(s==="error"&&"oui-text-danger-light",s==="warning"&&"oui-text-warning-light"),children:a})]});return jsxRuntime.jsxs(jsxRuntime.Fragment,{children:[jsxRuntime.jsx(ui.Input,{ref:f,autoComplete:"off",placeholder:c??(u?"":"0"),prefix:A,suffix:q,value:m,onValueChange:P=>{o?.(P);},formatters:w||[ui.inputFormatter.numberFormatter,ui.inputFormatter.dpFormatter(t?.precision??2),ui.inputFormatter.currencyFormatter],...h,classNames:{...r,root:ui.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",r?.root),input:ui.cn("oui-absolute oui-bottom-0",r?.input)}}),a&&E]})});var wo=[.5,1,2],nt=e=>{let{min:t=.2,max:n=10}=e,[r,i]=gi.useState(),[s,a]=gi.useState(""),[m,o]=gi.useState(false),{t:l}=i18n.useTranslation();gi.useEffect(()=>{e.value&&!wo.includes(e.value)?a(e.value.toString()):i(e.value);},[e.value,m]);let p=()=>{o(true);},u=()=>{o(false);},c=f=>{i(f),a("");},w=f=>{if(!f||Number(f)===0){a(f);return}let S=new utils.Decimal(f);i(void 0),S.lt(t)?a(t.toString()):S.gt(n)?a(n.toString()):a(f);},y=()=>s?new utils.Decimal(s)?.toNumber():r,d=()=>{let f=y();return f&&(e.onValueChange?.(f),u(),wo.includes(f)&&a("")),Promise.resolve(true)},h=!y(),x=jsxRuntime.jsxs("div",{className:"oui-text-2xs",children:[jsxRuntime.jsxs(ui.Flex,{gapX:2,children:[wo.map(f=>jsxRuntime.jsx(Pa,{value:f,isActive:r===f,onClick:()=>{c(f);}},f)),jsxRuntime.jsx(ui.Input,{suffix:"%",formatters:[ui.inputFormatter.numberFormatter,ui.inputFormatter.dpFormatter(2)],value:s,onValueChange:w,classNames:{root:ui.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(ui.Box,{mt:5,children:jsxRuntime.jsx(ui.Text,{intensity:54,children:l("transfer.slippage.slippageTolerance.description")})})]});return jsxRuntime.jsxs(jsxRuntime.Fragment,{children:[jsxRuntime.jsx(ui.AlertDialog,{open:m,onOpenChange:o,title:l("transfer.slippage.slippageTolerance"),okLabel:l("common.confirm"),message:x,onOk:d,actions:{primary:{disabled:h}}}),jsxRuntime.jsxs(ui.Flex,{width:"100%",justify:"between",className:"oui-cursor-pointer oui-select-none",onClick:p,children:[jsxRuntime.jsx(ui.Text,{intensity:36,size:"2xs",children:l("transfer.slippage")}),jsxRuntime.jsxs(ui.Flex,{gapX:1,children:[jsxRuntime.jsxs(ui.Text,{size:"2xs",color:"primaryLight",children:[e.value,"%"]}),jsxRuntime.jsx(ui.EditIcon,{className:"oui-size-3 oui-text-primary-light"})]})]})]})},Pa=({value:e,isActive:t,onClick:n})=>jsxRuntime.jsx(ui.Flex,{intensity:600,justify:"center",itemAlign:"center",r:"md",width:74,height:40,className:ui.cn("oui-cursor-pointer oui-select-none",t&&"oui-bg-primary-light"),onClick:n,children:jsxRuntime.jsxs(ui.Text,{size:"sm",intensity:80,children:[e,"%"]})});var nn=e=>{let{message:t,needSwap:n,needCrossSwap:r,wrongNetwork:i,networkId:s}=e,{t:a}=i18n.useTranslation(),m=()=>{ui.modal.show(uiChainSelector.ChainSelectorDialogId,{networkId:s});},o=gi.useMemo(()=>{if(i)return a("connector.wrongNetwork.tooltip");if(t)return t;if(r)return jsxRuntime.jsx(ui.Text,{children:jsxRuntime.jsx(i18n.Trans,{i18nKey:"transfer.swapDeposit.crossSwap.notice",components:[jsxRuntime.jsx(ui.Text,{className:"oui-cursor-pointer",color:"primaryLight",onClick:m},"0")]})});if(n)return a("transfer.swapDeposit.swap.notice")},[t,n,r,i,a]);return o?jsxRuntime.jsx(ui.Box,{mb:3,className:"oui-text-center oui-text-xs oui-text-warning-darken",children:o}):null};var rn=e=>{let{feeQtys:t,feeAmount:n,feeDetails:r,nativeSymbol:i}=e,{t:s}=i18n.useTranslation(),a=()=>{let o=jsxRuntime.jsx(ui.Box,{className:"oui-text-2xs",children:r?.map((l,p)=>{let u=p===r?.length-1;return jsxRuntime.jsxs(ui.Box,{children:[jsxRuntime.jsxs(ui.Flex,{gapX:1,children:[jsxRuntime.jsxs(ui.Text,{intensity:54,children:[l.title,":"]}),jsxRuntime.jsx(ui.Text,{intensity:80,children:l.value}),jsxRuntime.jsx(ui.Text,{intensity:54,children:l.symbol})]}),jsxRuntime.jsx(ui.Box,{mt:2,children:jsxRuntime.jsx(ui.Text,{intensity:36,children:l.description})}),!u&&jsxRuntime.jsx(ui.Box,{my:3,children:jsxRuntime.jsx(ui.Divider,{intensity:8})})]},p)})});ui.modal.alert({title:s("common.fee"),message:o});},m=()=>{let o=t?.length;if(!o)return;let l=t.map((p,u)=>jsxRuntime.jsxs(ui.Text,{intensity:54,children:[jsxRuntime.jsx(ui.Text.numeral,{dp:p.dp,padding:false,rm:utils.Decimal.ROUND_UP,children:p.value}),` ${p.symbol||i}`]},u));if(o===1)return jsxRuntime.jsxs("span",{children:["(",l,")"]});if(o===2)return jsxRuntime.jsxs("span",{children:["(",l[0]," + ",l[1],")"]})};return jsxRuntime.jsxs(ui.Text,{size:"xs",intensity:36,className:"oui-cursor-pointer oui-border-b oui-border-dashed oui-border-line-12",onClick:a,children:[`${s("common.fee")} \u2248 `,jsxRuntime.jsxs(ui.Text,{size:"xs",intensity:80,children:["$",jsxRuntime.jsx(ui.Text.numeral,{dp:2,padding:false,rm:utils.Decimal.ROUND_UP,children:n})," "]}),m()]})};var kt=e=>{let{sourceSymbol:t,targetSymbol:n,indexPrice:r,precision:i=6}=e;return jsxRuntime.jsxs(ui.Flex,{itemAlign:"center",gap:1,className:ui.cn(e.className,"oui-text-2xs"),children:[jsxRuntime.jsx(ui.Text,{size:"2xs",intensity:80,children:"1"}),jsxRuntime.jsx(ui.Text,{size:"2xs",intensity:36,children:t}),"=",jsxRuntime.jsx(ui.Text.numeral,{size:"2xs",intensity:80,dp:i,padding:false,children:r}),jsxRuntime.jsx(ui.Text,{size:"2xs",intensity:36,children:n})]})};var ln=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"})}),Er=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"})}),Mr=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"})}),Br=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 Lr=e=>{let{sourceToken:t,targetToken:n,className:r}=e;return t===n?null:jsxRuntime.jsx(ui.Flex,{width:"100%",itemAlign:"center",justify:"center",className:r,children:jsxRuntime.jsxs(ui.Flex,{itemAlign:"center",justify:"center",gap:1,children:[jsxRuntime.jsxs(ui.Flex,{itemAlign:"center",justify:"center",gap:1,children:[jsxRuntime.jsx(ui.TokenIcon,{className:"oui-size-[18px]",name:t}),jsxRuntime.jsx(ui.Text,{weight:"semibold",intensity:80,size:"sm",children:t})]}),jsxRuntime.jsx(ln,{className:"oui-size-4"}),jsxRuntime.jsxs(ui.Flex,{itemAlign:"center",justify:"center",gap:1,children:[jsxRuntime.jsx(ui.TokenIcon,{className:"oui-size-[18px]",name:n}),jsxRuntime.jsx(ui.Text,{weight:"semibold",intensity:80,size:"sm",children:n})]})]})})};var Ct=()=>{let{t:e}=i18n.useTranslation(),{wallet:t,connectedChain:n}=hooks.useWalletConnector(),{state:r,account:i}=hooks.useAccount(),s=gi.useMemo(()=>{let a=r.address;return n?.id&&types.ABSTRACT_CHAIN_ID_MAP.has(parseInt(n?.id))&&(a=i.getAdditionalInfo()?.AGWAddress),a},[t,r,i,n]);return jsxRuntime.jsxs(ui.Flex,{justify:"between",children:[jsxRuntime.jsx(ui.Text,{size:"sm",intensity:98,children:e("transfer.web3Wallet.your")}),jsxRuntime.jsxs(ui.Flex,{gapX:1,children:[jsxRuntime.jsx(ui.WalletIcon,{size:"xs",name:t?.label??""}),jsxRuntime.jsx(ui.Text.formatted,{size:"sm",intensity:54,rule:"address",children:s})]})]})};function mn(e){let{srcToken:t,dstToken:n,srcChainId:r,dstChainId:i}=e,[s,a]=gi.useState(false),[m,o]=gi.useState(false);return gi.useEffect(()=>{if(!r||!i||!t||!n)return;let l=r!==i;if(t?.symbol==="USDC"&&!l||t.is_collateral&&t.symbol===n?.symbol){a(false),o(false);return}a(t?.symbol!=="USDC"),l?(o(true),a(true)):o(false);},[t,n,r,i]),{needSwap:s,needCrossSwap:m}}var St=[{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"}],qr=[{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"}],Ja="0xEeeeeEeeeEeEeeEeEeEeeEEEeeeeEeeeeeeeEEeE",pn=e=>e===Ja,dn="https://fi-api.woo.org";var Xr=()=>{let[e,{setTrue:t,setFalse:n}]=hooks.useBoolean(false),[r,i]=gi.useState("WAITTING"),s=hooks.useEventEmitter(),[a,m]=gi.useState(),[o,l]=gi.useState(types.WS_WalletStatusEnum.NO),p=gi.useRef(),u=gi.useRef(),c=hooks.useAccountInstance(),w=hooks.useConfig(),y=w.get("brokerId"),d=w.get("networkId"),h=gi.useRef(scanClient.createClient(d)).current,x=gi.useRef();gi.useEffect(()=>{let T=v=>{let{side:D,transStatus:b,trxId:I}=v;D==="DEPOSIT"&&I===p.current&&l(b);};return s.on("wallet:changed",T),()=>{s.off("wallet:changed",T);}},[p.current]);let f=gi.useCallback(T=>{u.current&&clearTimeout(u.current),u.current=setTimeout(async()=>{try{let{messages:v}=await h.getMessagesBySrcTxHash(T);if(v.length>0){let{status:D}=v[0];i(D),D==="DELIVERED"?(m(v[0]),p.current=v[0].dstTxHash):D==="FAILED"?m(v[0]):f(T);}else f(T);}catch{f(T);}},1e3);},[]);gi.useEffect(()=>()=>{x.current&&clearTimeout(x.current);},[]);let S=gi.useCallback(()=>({accountId:c.accountIdHashStr,brokerHash:core.utils.parseBrokerHash(y),tokenHash:core.utils.parseTokenHash("USDC")}),[c,y]);return {swap:async T=>{if(!c.walletAdapter)throw new Error("walletAdapter is undefined");if(!c.address)throw new Error("account.address is undefined");if(!T.crossChainRouteAddress)throw new Error("crossChainRouteAddress is undefined");let{address:v,src:D,dst:b,crossChainRouteAddress:I}=T;if(!e){t();try{let k=await c.walletAdapter.call(I,"quoteLayerZeroFee",[c.address,b,S()],{abi:St}),C=await c.walletAdapter.sendTransaction(I,"crossSwap",{from:c.address,to:I,data:[c.address,D,b,S()],value:pn(T.src.fromToken)?BigInt(T.src.fromAmount)+k[0]:k[0]},{abi:St});return n(),f(C.hash),s.emit("deposit:requested"),ramda.pick(["from","to","hash","value"],C)}catch(k){throw console.error("crossSwap error",k),n(),new Error(k.errorCode)}}},loading:e,bridgeStatus:r,status:o,message:a}};var wn=e=>{let{status:t,mode:n,statusUrl:r,brokerName:i}=e,{t:s}=i18n.useTranslation(),a=gi.useMemo(()=>{let u=yu(t),c=wu(t),w=[{title:s(u==="pending"?"transfer.swapDeposit.bridging":"transfer.swapDeposit.bridge"),description:s("transfer.swapDeposit.bridge.description"),state:u},{title:s(c==="pending"?"transfer.swapDeposit.depositing":"transfer.swapDeposit.deposit"),description:s("transfer.swapDeposit.deposit.description",{brokerName:i}),state:c}];return n===0?w.slice(1,2):w},[n,i,t,s]),m=()=>{e.onComplete?.(t===4);},o=t===3||t===1,l=t===0||t===2,p=a.length>1;return jsxRuntime.jsxs("div",{className:"oui-font-semibold",children:[jsxRuntime.jsxs(ui.Box,{intensity:600,p:4,r:"lg",children:[jsxRuntime.jsxs(ui.Flex,{direction:"column",itemAlign:"start",gapY:4,className:"oui-relative",children:[a.map(u=>gi.createElement(fu,{...u,key:u.title})),p&&jsxRuntime.jsx("div",{className:ui.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(ui.Box,{my:3,children:jsxRuntime.jsx(ui.Divider,{intensity:8})}),jsxRuntime.jsxs(ui.Flex,{gapX:1,justify:"center",itemAlign:"center",className:ui.cn(r?"oui-text-primary-light":"oui-text-base-contrast-20",r?"oui-cursor-pointer":"oui-cursor-not-allowed"),onClick:()=>{r&&window.open(r);},children:[jsxRuntime.jsx(ui.Text,{size:"2xs",children:s("transfer.swapDeposit.viewStatus")}),jsxRuntime.jsx(Mr,{})]})]}),jsxRuntime.jsxs(ui.Flex,{direction:"column",justify:"center",itemAlign:"center",mt:8,gapY:3,children:[o&&jsxRuntime.jsx(ui.Text,{size:"xs",className:"oui-text-danger-light",children:s("transfer.swapDeposit.depositFailed")}),jsxRuntime.jsx(ui.Button,{className:"oui-w-full lg:oui-w-[184px]",disabled:l,onClick:m,children:s("common.ok")})]})]})},fu=({title:e,description:t,state:n})=>jsxRuntime.jsxs(ui.Flex,{itemAlign:"start",gapX:2,children:[jsxRuntime.jsx(ui.Flex,{width:20,height:20,justify:"center",children:jsxRuntime.jsx(gu,{state:n})}),jsxRuntime.jsxs(ui.Flex,{direction:"column",itemAlign:"start",children:[jsxRuntime.jsx(ui.Text,{size:"sm",className:ui.cn(n==="pending"||n==="failed"?"oui-text-base-contrast":"oui-text-base-contrast-54"),children:e}),jsxRuntime.jsx(ui.Text,{size:"2xs",className:ui.cn(n==="pending"?"oui-text-base-contrast-54":"oui-text-base-contrast-20"),children:t})]})]},e),gu=({state:e})=>e==="pending"?jsxRuntime.jsx(ui.Spinner,{size:"sm"}):e==="failed"?jsxRuntime.jsx(ui.CloseCircleFillIcon,{size:20,opacity:1,className:"oui-text-danger-light"}):e==="success"?jsxRuntime.jsx(ui.CheckedCircleFillIcon,{size:20,opacity:1,className:"oui-text-primary-light"}):jsxRuntime.jsx(ui.Box,{r:"full",width:10,height:10,intensity:200});function yu(e){if(e===0)return "pending";if(e===1)return "failed";if(e===4||e===2)return "success"}function wu(e){if(e===2)return "pending";if(e===3)return "failed";if(e===4)return "success"}var hn=(e=[])=>{let t=e.reduce((n,r)=>(n[r.symbol]=r,n),{});return t.USDC||t.USDbC||e[0]},$e=e=>(e??2)+3;function Yr(e){return /^0x[a-fA-F0-9]{64}$/.test(e)}function bn(e){return e===34?i18n.i18n.t("transfer.internalTransfer.error.transferInProgress"):e===17?i18n.i18n.t("transfer.internalTransfer.error.withdrawalInProgress"):e===35?i18n.i18n.t("transfer.internalTransfer.error.accountIdNotExist"):e===37?i18n.i18n.t("transfer.internalTransfer.error.transferToSelf"):e===46?i18n.i18n.t("transfer.internalTransfer.error.transferToSubAccount"):i18n.i18n.t("transfer.internalTransfer.error.default")}var xn=e=>{let{info:t,mode:n,nativePrice:r,markPrice:i,src:s,dst:a,nativeToken:m,viewMode:o}=e,{t:l}=i18n.useTranslation(),p=jsxRuntime.jsxs(ui.Flex,{justify:"between",children:[jsxRuntime.jsx(Kr,{primary:s?.token,chainId:s.chain,amount:s?.amount,dp:s?.displayDecimals,symbol:s?.token}),jsxRuntime.jsx(ln,{className:"oui-text-primary-light"}),jsxRuntime.jsx(Kr,{primary:a?.token,component:jsxRuntime.jsx(Br,{className:"oui-size-4"}),amount:a?.amount,dp:a?.displayDecimals,symbol:a?.token,reverse:true})]}),u=jsxRuntime.jsx(ui.Box,{my:5,children:jsxRuntime.jsx(ui.Divider,{intensity:12})}),c=[{label:l("transfer.deposit.destinationGasFee"),value:jsxRuntime.jsxs(ui.Flex,{gapX:1,children:[jsxRuntime.jsx(Er,{className:"oui-text-primary-light"}),jsxRuntime.jsx(ui.Text.numeral,{color:"primaryLight",padding:false,rm:utils.Decimal.ROUND_UP,dp:$e(m?.precision),children:t.dstGasFee}),jsxRuntime.jsx(ui.Text,{color:"primaryLight",children:m?.symbol}),jsxRuntime.jsxs(ui.Text,{className:"oui-text-primary-light/60",children:["($",jsxRuntime.jsx(ui.Text.numeral,{color:"primaryLight",padding:false,rm:utils.Decimal.ROUND_UP,dp:2,children:new utils.Decimal(t.dstGasFee?.toString()).mul(r||0).toString()}),")"]})]})},{label:l("transfer.swapDeposit.swapFee"),value:jsxRuntime.jsxs(jsxRuntime.Fragment,{children:[jsxRuntime.jsx(ui.Text.numeral,{intensity:80,dp:$e(s?.displayDecimals),rm:utils.Decimal.ROUND_UP,padding:false,children:t.swapFee}),` ${s?.token} `,jsxRuntime.jsxs(ui.Text,{className:"oui-text-[#63666D]",children:["($",jsxRuntime.jsx(ui.Text.numeral,{padding:false,rm:utils.Decimal.ROUND_UP,dp:2,children:new utils.Decimal(t.swapFee).mul(i||0).toString()}),")"]})]})},{label:l("transfer.swapDeposit.bridgeFee"),value:n===1&&jsxRuntime.jsxs(jsxRuntime.Fragment,{children:[jsxRuntime.jsx(ui.Text.numeral,{intensity:80,dp:$e(s?.displayDecimals),rm:utils.Decimal.ROUND_UP,padding:false,children:t.bridgeFee}),` ${s?.token} `,jsxRuntime.jsxs(ui.Text,{className:"oui-text-[#63666D]",children:["($",jsxRuntime.jsx(ui.Text.numeral,{padding:false,rm:utils.Decimal.ROUND_UP,dp:2,children:new utils.Decimal(t.bridgeFee).mul(i||0).toString()}),")"]})]})},{label:l("transfer.swapDeposit.minimumReceived"),value:jsxRuntime.jsxs(jsxRuntime.Fragment,{children:[jsxRuntime.jsx(ui.Text.numeral,{dp:a?.displayDecimals,rm:utils.Decimal.ROUND_DOWN,padding:false,children:t.received}),` ${a?.token}`]})},{label:l("common.price"),value:jsxRuntime.jsxs(jsxRuntime.Fragment,{children:[`1 ${s?.token} = `,jsxRuntime.jsx(ui.Text.numeral,{dp:3,padding:false,children:t.price}),` ${a?.token}`]})},{label:l("transfer.slippage"),value:`${t.slippage}%`}],w=jsxRuntime.jsx(ui.Flex,{direction:"column",itemAlign:"start",gapY:3,children:c?.map(d=>{if(d.value)return gi.createElement(vu,{...d,key:d.label})})}),y=jsxRuntime.jsx(ui.Flex,{justify:"center",mt:8,children:jsxRuntime.jsx(ui.Button,{className:"oui-w-full lg:oui-w-[184px]",onClick:e.onConfirm,children:l("transfer.swapDeposit.confirmSwap")})});return jsxRuntime.jsxs(ui.Box,{intensity:800,children:[p,jsxRuntime.jsx(Iu,{time:t.time??0}),u,o==="details"&&jsxRuntime.jsxs(jsxRuntime.Fragment,{children:[w,y]})]})},vu=e=>jsxRuntime.jsxs(ui.Flex,{gapX:2,justify:"between",width:"100%",children:[jsxRuntime.jsx(ui.Text,{size:"sm",intensity:54,children:e.label}),jsxRuntime.jsx(ui.Text,{size:"sm",intensity:98,as:"div",children:e.value})]}),Kr=e=>jsxRuntime.jsxs(ui.Flex,{gapX:2,direction:e.reverse?"rowReverse":"row",children:[jsxRuntime.jsx(ui.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(ui.TokenIcon,{name:e.primary,size:"md"})}),jsxRuntime.jsxs(ui.Flex,{direction:"column",itemAlign:e.reverse?"end":"start",children:[jsxRuntime.jsx(ui.Text.numeral,{intensity:98,size:"lg",dp:e.dp,children:e.amount}),jsxRuntime.jsx(ui.Text,{intensity:54,size:"xs",children:e.symbol})]})]}),Iu=e=>jsxRuntime.jsx(ui.Flex,{justify:"center",children:jsxRuntime.jsx(ui.Flex,{intensity:600,r:"full",gapX:2,justify:"center",py:1,mt:2,width:210,children:jsxRuntime.jsx(ui.Text,{size:"sm",intensity:54,children:jsxRuntime.jsx(i18n.Trans,{i18nKey:"transfer.swapDeposit.averageSwapTime",values:{time:e.time},components:[jsxRuntime.jsx(ui.Text,{color:"primaryLight"},"0")]})})})});var Tn=()=>jsxRuntime.jsx(ui.Flex,{justify:"center",gapX:1,mt:3,children:jsxRuntime.jsx(i18n.Trans,{i18nKey:"transfer.swapDeposit.viewFAQs",components:[jsxRuntime.jsx(ui.Text,{size:"xs",color:"primaryLight",onClick:()=>{window.open("https://learn.woo.org/woofi/faqs/woofi-pro");},className:"oui-cursor-pointer"},"0")]})});var ns=e=>{let{transactionData:t,slippage:n,mode:r,dst:i,src:s,chain:a,nativeToken:m,depositFee:o}=e,{t:l}=i18n.useTranslation(),[p,u]=gi.useState(-1),[c,w]=gi.useState("details"),[y,d]=gi.useState(),h=hooks.useEventEmitter(),{swap:x,bridgeStatus:f,message:S,status:g}=Xr(),T=gi.useMemo(()=>({price:t.price,slippage:n,time:a?.est_txn_mins,received:i.amount,bridgeFee:t.fees_from.stargate,swapFee:t.fees_from.woofi,dstGasFee:t.dst_infos.gas_fee}),[t,a?.est_txn_mins,r,i]);gi.useEffect(()=>{f==="DELIVERED"&&u(2),f==="FAILED"&&u(1),g===types.WS_WalletStatusEnum.COMPLETED&&u(4),g===types.WS_WalletStatusEnum.FAILED&&u(3);},[f,g]);let v=gi.useCallback(()=>(w("processing"),t?(u(0),x({address:"",crossChainRouteAddress:a?.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:o}}).then(b=>{d(b),ui.toast.success(l("transfer.deposit.requested")),h.emit("deposit:requested");}).catch(b=>{u(1),ui.toast.error(b?.message||"Error");})):Promise.reject("No transaction data")),[t,r,i,s,h]),D=gi.useMemo(()=>{if(!(p<2||!S))return `https://layerzeroscan.com/tx/${S.srcTxHash}`},[p,S]);return jsxRuntime.jsxs(ui.Box,{intensity:800,children:[jsxRuntime.jsx(xn,{viewMode:c,onConfirm:v,info:T,src:e.src,dst:e.dst,mode:r,markPrice:t.mark_prices?.from_token??1,nativePrice:t.mark_prices.native_token,nativeToken:m}),c==="processing"&&jsxRuntime.jsx(wn,{mode:1,status:p,statusUrl:D,onComplete:e.onComplete,brokerName:e.brokerName}),jsxRuntime.jsx(Tn,{})]})};var ss=()=>{let[e,{setTrue:t,setFalse:n}]=hooks.useBoolean(false),r=hooks.useAccountInstance(),i=hooks.useConfig("brokerId"),[s,a]=gi.useState(types.WS_WalletStatusEnum.NO),m=gi.useRef(),o=hooks.useEventEmitter();gi.useEffect(()=>{let u=c=>{let{side:w,transStatus:y,trxId:d}=c;w==="DEPOSIT"&&d===m.current&&a(y);};return o.on("wallet:changed",u),()=>{o.off("wallet:changed",u);}},[m.current]);let l=gi.useCallback(()=>({accountId:r.accountIdHashStr,brokerHash:core.utils.parseBrokerHash(i),tokenHash:core.utils.parseTokenHash("USDC")}),[r,i]);return {swap:gi.useCallback(async(u,c,w)=>{if(!r.walletAdapter)throw new Error("walletAdapter is undefined");if(!r.address)throw new Error("account.address is undefined");if(e)return;t();let y={from:r.address,to:u,data:[r.address,c,l()],value:pn(c.fromToken)?BigInt(c.fromAmount)+c.orderlyNativeFees:c.orderlyNativeFees};try{let d=await r.walletAdapter.sendTransaction(u,"swap",y,{abi:qr});return n(),m.current=d.hash,o.emit("deposit:requested"),ramda.pick(["from","to","hash","value"],d)}catch(d){throw new Error(d.errorCode)}},[e,r]),loading:e,status:s}};var cs=e=>{let{transactionData:t,slippage:n,mode:r,dst:i,src:s,chain:a,nativeToken:m,depositFee:o}=e,{t:l}=i18n.useTranslation(),[p,u]=gi.useState(-1),[c,w]=gi.useState("details"),[y,d]=gi.useState(),h=hooks.useEventEmitter(),{swap:x,status:f}=ss(),S=gi.useMemo(()=>({price:t.price,slippage:n,time:a?.est_txn_mins,received:i.amount,dstGasFee:new utils.Decimal(o.toString())?.div(new utils.Decimal(10).pow(18))?.toString(),swapFee:t.fees_from}),[t,a?.est_txn_mins,r,i,o]);gi.useEffect(()=>{f===types.WS_WalletStatusEnum.COMPLETED&&u(4),f===types.WS_WalletStatusEnum.FAILED&&u(3);},[f]);let g=gi.useCallback(()=>(w("processing"),t?!a||!a.depositor?Promise.reject("No chain data"):(u(2),x(a.depositor,{fromToken:t.infos.from_token,fromAmount:t.infos.from_amount,toToken:t.infos.to_token,minToAmount:t.infos.min_to_amount,orderlyNativeFees:o},{dst:i,src:s}).then(v=>{d(v),ui.toast.success(l("transfer.deposit.requested")),h.emit("deposit:requested");}).catch(v=>{u(3),ui.toast.error(v?.message||"Error");})):Promise.reject("No transaction data")),[t,r,i,s,h]),T=gi.useMemo(()=>{if(!(p<2||!y))return `${a?.explorer_base_url}/tx/${y.hash}`},[p,y,a]);return jsxRuntime.jsxs(ui.Box,{intensity:800,children:[jsxRuntime.jsx(xn,{viewMode:c,onConfirm:g,info:S,src:e.src,dst:e.dst,mode:r,markPrice:t.mark_prices?.from_token??1,nativePrice:t.mark_prices.native_token,nativeToken:m}),c==="processing"&&jsxRuntime.jsx(wn,{mode:0,status:p,statusUrl:T,onComplete:e.onComplete,brokerName:e.brokerName}),jsxRuntime.jsx(Tn,{})]})};var ps=e=>{let{mode:t}=e;return t===1?jsxRuntime.jsx(ns,{...e}):jsxRuntime.jsx(cs,{...e})};var kn=ui.modal.create(e=>{let{isMobile:t}=ui.useScreen(),{t:n}=i18n.useTranslation(),{visible:r,hide:i,resolve:s,reject:a,onOpenChange:m}=ui.useModal(),o=u=>{s(u),i();},l=()=>{a(),i();},p={title:n("transfer.swapDeposit.swapDialog.title"),open:r,onOpenChange:m,classNames:{content:"oui-font-semibold"},children:jsxRuntime.jsx(ps,{...e,onComplete:o,onCancel:l})};return t?jsxRuntime.jsx(ui.SimpleSheet,{...p}):jsxRuntime.jsx(ui.SimpleDialog,{...p,size:"md"})});var ds=()=>{let[e,{setTrue:t,setFalse:n}]=hooks.useBoolean(false),r=hooks.useConfig("brokerId"),i=hooks.useAccountInstance(),s=gi.useCallback(()=>({accountId:i.accountIdHashStr,brokerHash:core.utils.parseBrokerHash(r),tokenHash:core.utils.parseTokenHash("USDC")}),[i,r]),a=gi.useCallback(async(o,l)=>{if(!i.walletAdapter)throw new Error("walletAdapter is not ready");let p=await i.walletAdapter.call(o,"quoteLayerZeroFee",[i.address,l,s()],{abi:St});return core.utils.formatByUnits(p[0])},[]);return {query:gi.useCallback(o=>{if(e)return Promise.resolve();t();let l={src_network:o.srcNetwork,dst_network:"arbitrum",src_token:o.srcToken,dst_token:o.dstToken,src_amount:o.amount,slippage:o.slippage||1},p=Object.entries(l).map(([u,c])=>`${u}=${encodeURIComponent(c)}`).join("&");return fetch(`${dn}/woofi_dex/cross_chain_swap?${p}`).then(u=>u.ok?u.json():u.json().then(c=>{throw new Error(c.error.message)})).then(u=>{if(u.status==="ok")return u.data;throw new Error(u.message)}).then(u=>a(o.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(c=>({...u,dst_infos:{...u.dst_infos,gas_fee:c}})).catch(c=>{console.error("queryDestinationFee error",c);})).finally(()=>n())},[e,i]),loading:e}};var fs=()=>{let e=hooks.useAccountInstance(),[t,{setTrue:n,setFalse:r}]=hooks.useBoolean(false);return {query:gi.useCallback(s=>{if(t)return Promise.resolve();n();let a={network:s.srcNetwork,from_token:s.srcToken,to_token:s.dstToken,from_amount:s.amount,slippage:s.slippage||1},m=Object.entries(a).map(([o,l])=>`${o}=${encodeURIComponent(l)}`).join("&");return fetch(`${dn}/woofi_dex/swap?${m}`).then(o=>o.ok?o.json():o.json().then(l=>{throw new Error(l.error.message)})).then(o=>{if(o.status==="ok")return o.data;throw new Error(o.message)}).finally(()=>r())},[e]),loading:t}};function Cn(e){let{quantity:t,dst:n,queryParams:r,needSwap:i,needCrossSwap:s}=e,{t:a}=i18n.useTranslation(),{query:m}=fs(),{query:o}=ds(),l=gi.useRef(r);l.current=r;let[p,u]=gi.useState(""),[c,w]=gi.useState(""),[y,{setTrue:d,setFalse:h}]=hooks.useBoolean(false),[x,f]=gi.useState({price:0,markPrices:{from_token:0,native_token:0},fee:""}),S=gi.useCallback(()=>s?o(l.current):i?m(l.current):Promise.reject("no need to enquiry"),[i,s]),g=b=>{if(b.mark_prices){let I=s?b.dst_infos.gas_fee:"0",k=s?b.fees_from.woofi:b.fees_from,C=s?b.fees_from.stargate:void 0,A=s?b.fees_from.total:b.fees_from;f({price:b.price,markPrices:b.mark_prices,dstGasFee:I,swapFee:k,bridgeFee:C,fee:A});}if(b.route_infos){let I=s?b.route_infos.dst.amounts[1]:b.route_infos.amounts[1];u(new utils.Decimal(I).div(Math.pow(10,n.decimals)).toString());}return w(""),b},T=b=>{f({fee:"0",markPrices:{from_token:0,native_token:0},price:0,swapFee:"0",bridgeFee:"0",dstGasFee:"0",...b}),u("");},v=b=>{b.message==="contract call failed"?(w(a("transfer.swapDeposit.notEnoughLiquidity")),T()):(w(""),b?.message&&ui.toast.error(b.message));},D=hooks.useDebouncedCallback(()=>(d(),S().then(g,v).finally(()=>{h();})),300);return gi.useEffect(()=>{if(!i&&!s){T({price:1}),u(t);return}let b=Number(t);if(isNaN(b)||b<=0){T();return}D();},[i,s,t]),{enquiry:S,querying:y,warningMessage:c,transactionInfo:x,amount:p,cleanTransactionInfo:T}}function Sn(e){let{nativeToken:t,isNativeToken:n,src:r,depositFee:i=0,transactionInfo:s,needSwap:a,needCrossSwap:m}=e,o=t?.symbol,l=r?.symbol,{fee:p="0",swapFee:u="0",bridgeFee:c="0",dstGasFee:w="0",markPrices:y}=s,{from_token:d,native_token:h}=y,{data:x}=hooks.useIndexPrice(`SPOT_${o}_USDC`),{t:f}=i18n.useTranslation();return {...gi.useMemo(()=>{let g="",T=[],v=$e(t?.precision),D=$e(r?.precision),b=m?w:new utils.Decimal(i.toString()).div(new utils.Decimal(10).pow(18)).toString();if(!a&&!m&&(T=[{value:b,dp:v}],g=new utils.Decimal(b).mul(x||0).toString()),a||m)if(n){let k=new utils.Decimal(b).plus(p);T=[{value:k.toString(),dp:v}],g=k.mul(h??1).toString();}else T=[{value:b,dp:v,symbol:o},{value:p,dp:D,symbol:l}],g=new utils.Decimal(b).mul(h??1).plus(new utils.Decimal(p).mul(d??1)).toString();T=T.filter(k=>!!k.value&&Number(k.value)!==0);let I=[{title:f("transfer.deposit.destinationGasFee"),description:f("transfer.deposit.destinationGasFee.description"),value:b,dp:v,symbol:o},{title:f("transfer.swapDeposit.swapFee"),description:f("transfer.swapDeposit.swapFee.description"),value:u,dp:D,symbol:l},{title:f("transfer.swapDeposit.bridgeFee"),description:f("transfer.swapDeposit.bridgeFee.description"),value:c,dp:D,symbol:l}].filter((k,C)=>C===0||!!k.value&&Number(k.value)!==0).map(k=>{let C=new utils.Decimal(k.value||0).todp(k.dp).toNumber();return {...k,value:utils.toNonExponential(C)}});return {feeAmount:g,feeQtys:T,feeDetails:I}},[i,x,o,l,s,a,m]),nativeSymbol:o}}var vl="orderly_swap_deposit_slippage",hs=e=>{let{srcToken:t,currentChain:n,dst:r,quantity:i,isNativeToken:s,depositFee:a,setQuantity:m,needSwap:o,needCrossSwap:l}=e,[p,u]=hooks.useLocalStorage(vl,1),w=hooks.useConfig().get("brokerName")||"",{enquiry:y,transactionInfo:d,amount:h,querying:x,warningMessage:f,cleanTransactionInfo:S}=Cn({quantity:i,dst:r,queryParams:{network:r.network,srcNetwork:n?.info?.network_infos?.shortName,srcToken:t?.address,dstToken:r.address,crossChainRouteAddress:n?.info?.network_infos?.cross_chain_router,amount:new utils.Decimal(i||0).mul(10**(t?.decimals||0)).toString(),slippage:p},needSwap:o,needCrossSwap:l}),g=gi.useCallback(()=>{m(""),S();},[m]),T=gi.useCallback(async()=>y().then(k=>{let C=l?k.route_infos?.dst.amounts[1]:k.route_infos?.amounts[1],A={mode:l?1:0,src:{chain:n?.id,token:t.symbol,displayDecimals:t?.precision,amount:i,decimals:t.decimals},dst:{chain:r.chainId,token:r.symbol,displayDecimals:2,amount:new utils.Decimal(C).div(Math.pow(10,r.decimals)).toString(),decimals:r.decimals},chain:n?.info?.network_infos,nativeToken:n?.info?.nativeToken,depositFee:a,transactionData:k,slippage:p,brokerName:w};return ui.modal.show(kn,A)}).then(k=>{k&&g();}).catch(k=>{}),[i,l,r,n,p,a]),v=gi.useMemo(()=>l||o?d.price:1,[d]),D=gi.useMemo(()=>l||o?s?d.markPrices.native_token:d.markPrices.from_token:1,[o,l,s,d]),b=o||l?h:i,I=Sn({nativeToken:n?.info?.nativeToken,isNativeToken:s,src:t,depositFee:a,transactionInfo:d,needSwap:o,needCrossSwap:l});return {cleanTransactionInfo:S,onSwapDeposit:T,swapPrice:v,markPrice:D,swapQuantity:b,swapFee:I,swapRevalidating:x,warningMessage:f,needSwap:o,needCrossSwap:l,slippage:p,onSlippageChange:u}};function It(e){let{isNativeToken:t,allowance:n,quantity:r,maxQuantity:i}=e;return gi.useMemo(()=>{let a=t?Number.MAX_VALUE:Number(n);if(a<=0)return 1;let m=Number(r),o=Number(i);return a<m&&m<=o?2:0},[t,n,r,i])}function Ft(){let{t:e}=i18n.useTranslation(),t=hooks.useConfig("networkId"),[n]=hooks.useLocalStorage("orderly_link_device",{}),{connectedChain:r,settingChain:i,setChain:s}=hooks.useWalletConnector(),[a,{findByChainId:m}]=hooks.useChains(t,{pick:"network_infos",filter:p=>p.network_infos?.bridge_enable||p.network_infos?.bridgeless}),o=gi.useMemo(()=>{let p=r?utils.praseChainIdToNumber(r.id):parseInt(n?.chainId);if(!p)return null;let u=m(p);return {...r,id:p,info:u}},[m,r,n]),l=gi.useCallback(async p=>{let u=m(p.chain_id);if(r)return !u||u.network_infos?.chain_id===o?.id?Promise.resolve():s({chainId:utils.int2hex(Number(u.network_infos?.chain_id))}).then(c=>{c?ui.toast.success(e("connector.networkSwitched")):ui.toast.error(e("connector.switchChain.failed"));}).catch(c=>{c&&c.message&&ui.toast.error(`${e("connector.switchChain.failed")}: ${c.message}`);})},[o,s,m]);return {chains:a,currentChain:o,settingChain:i,onChainChange:l}}function Dt(e){let{quantity:t,allowance:n,approve:r,deposit:i,enableCustomDeposit:s,customDeposit:a,onSuccess:m}=e,[o,l]=gi.useState(false),p=hooks.useEventEmitter(),{t:u}=i18n.useTranslation(),c=gi.useCallback(async()=>{if(!o)return l(true),r(t).then(d=>{ui.toast.success(u("transfer.deposit.approve.success"));}).catch(d=>{console.error("approve error",d),ui.toast.error(d.message||d.errorCode||u("transfer.deposit.approve.failed"));}).finally(()=>{l(false);})},[r,o,t,n,u]),w=gi.useCallback(async()=>i().then(d=>{ui.toast.success(u("transfer.deposit.requested")),p.emit("deposit:requested"),m?.();}).catch(d=>{console.error("deposit error",d),ui.toast.error(d.message||u("transfer.deposit.failed"));}),[i,m,u]),y=gi.useCallback(()=>{let d=Number(t);if(isNaN(d)||d<=0){ui.toast.error(u("transfer.quantity.invalid"));return}if(o)return;l(true),(s?a:w)?.()?.finally(()=>{l(false);});},[t,o,w,s,a,u]);return {submitting:o,onApprove:c,onDeposit:y}}function Nt(e){let{quantity:t,maxQuantity:n}=e,{t:r}=i18n.useTranslation(),[i,s]=gi.useState("default"),[a,m]=gi.useState();return gi.useEffect(()=>{if(!t){s("default"),m("");return}new utils.Decimal(t).gt(n)?(s("error"),m(r("transfer.insufficientBalance"))):(s("default"),m(""));},[t,n]),{inputStatus:i,hintMessage:a}}var In=(e,t=()=>true)=>{let[n,r]=gi.useState(),[i,s]=gi.useState(),[a,m]=gi.useState([]),[o,l]=gi.useState([]),p=hooks.useConfig("networkId"),u=gi.useCallback(c=>{if(c&&c?.token_infos?.length>0){let w=c.token_infos?.filter(t);w?.length&&w.sort((d,h)=>d.symbol==="USDC"?-1:h.symbol==="USDC"?1:0);let y=hn(w);if(!y)return;r(y),s(y),m(w),l([y]);}},[]);return gi.useEffect(()=>{u(e?.info);},[e,u]),gi.useEffect(()=>{if(!n||!a.length)return;if(n.symbol==="USDC"){s(n),l([n]);return}let c=a.find(w=>w.symbol==="USDC");if(n.is_collateral){p==="mainnet"&&n.swap_enable?(s(n),l([n,c])):(s(n),l([n]));return}s(c),l([c]);},[p,n,a]),{sourceToken:n,targetToken:i,sourceTokens:a,targetTokens:o,onSourceTokenChange:r,onTargetTokenChange:s}};var {collateralRatio:nc,collateralContribution:oc,calcMinimumReceived:rc}=perp.account,Fn=3,Ro=e=>{let{wrongNetwork:t}=reactApp.useAppContext(),{t:n}=i18n.useTranslation(),r=hooks.useConfig("networkId"),{chains:i,currentChain:s,settingChain:a,onChainChange:m}=Ft(),{sourceToken:o,targetToken:l,sourceTokens:p,targetTokens:u,onSourceTokenChange:c,onTargetTokenChange:w}=In(s),y=gi.useMemo(()=>p?.find(ur=>ur.symbol==="USDC"),[p]),{dst:d,balance:h,allowance:x,depositFeeRevalidating:f,depositFee:S,quantity:g,setQuantity:T,approve:v,deposit:D,isNativeToken:b,balanceRevalidating:I,fetchBalance:k}=hooks.useDeposit({address:o?.address,decimals:o?.decimals,srcChainId:s?.id,srcToken:o?.symbol,dstToken:l?.symbol,crossChainRouteAddress:s?.info?.network_infos?.cross_chain_router,depositorAddress:s?.info?.network_infos?.depositor}),C=gi.useMemo(()=>new utils.Decimal(h||0).todp(o?.precision??2,utils.Decimal.ROUND_DOWN).toString(),[h,o?.precision]),{inputStatus:A,hintMessage:q}=Nt({quantity:g,maxQuantity:C}),{needSwap:E,needCrossSwap:R}=mn({srcToken:o,dstToken:l,srcChainId:s?.id,dstChainId:d?.chainId}),{cleanTransactionInfo:P,onSwapDeposit:B,swapRevalidating:L,swapPrice:G,markPrice:te,swapQuantity:W,swapFee:M,warningMessage:ue,slippage:re,onSlippageChange:ye}=hs({srcToken:o,currentChain:s,dst:d,quantity:g,isNativeToken:b,depositFee:S,setQuantity:T,needSwap:E,needCrossSwap:R}),se=gi.useCallback(()=>{T(""),P();},[T]),we=gi.useCallback(()=>{se(),e.onClose?.();},[se,e.onClose]),{submitting:Oe,onApprove:le,onDeposit:he}=Dt({quantity:g,allowance:x,approve:v,deposit:D,enableCustomDeposit:E||R,customDeposit:B,onSuccess:we}),ce=gi.useMemo(()=>o?.symbol==="USDC"||o?.symbol!==l?.symbol||!o?.is_collateral||!g||isNaN(Number(g))?"":new utils.Decimal(g).gt(o?.user_max_qty)?n("transfer.deposit.userMaxQty.error",{maxQty:o?.user_max_qty,token:o?.symbol}):"",[o,l,g,n]),Le=Oe||f,N=!g||Number(g)===0||!o||A==="error"||f||L||!!ce,O=gi.useMemo(()=>new utils.Decimal(g||0).mul(1).toNumber(),[g]),$=It({isNativeToken:b,allowance:x,quantity:g,maxQuantity:C}),X=sc({nativeToken:s?.info?.nativeToken,depositFee:S}),{collateralRatio:De,collateralContributionQuantity:wt,currentLTV:F,nextLTV:Z,indexPrice:ze}=ic({sourceToken:o,targetToken:l,qty:g}),{ltv_threshold:Gn,negative_usdc_threshold:ii,isLoading:ai}=ac();gi.useEffect(()=>{se();},[o,s?.id]);let ui=gi.useMemo(()=>{if(b&&C===g)return n("transfer.deposit.gasFee.error",{token:o?.symbol})},[C,g,o?.symbol,n]),li=ue||ce||ui,ci=gi.useMemo(()=>E?W&&new utils.Decimal(W)?.todp(Fn,utils.Decimal.ROUND_DOWN).toString():g,[E,W,g]),mi=gi.useMemo(()=>W?rc({amount:Number(W),slippage:re}):"-",[W,re]);return {sourceToken:o,targetToken:l,sourceTokens:p,targetTokens:u,onSourceTokenChange:c,onTargetTokenChange:w,amount:O,isNativeToken:b,quantity:g,collateralContributionQuantity:wt,maxQuantity:C,indexPrice:ze,onQuantityChange:T,hintMessage:q,inputStatus:A,chains:i,currentChain:s,settingChain:a,onChainChange:m,actionType:$,onDeposit:he,onApprove:le,fetchBalance:k,dst:d,wrongNetwork:t,balanceRevalidating:I,loading:Le,disabled:N,networkId:r,fee:X,collateralRatio:De,currentLTV:F,nextLTV:Z,ltv_threshold:Gn,negative_usdc_threshold:ii,isConvertThresholdLoading:ai,slippage:re,onSlippageChange:ye,minimumReceived:mi,usdcToken:y,needSwap:E,needCrossSwap:R,swapPrice:G,markPrice:te,swapFee:M,warningMessage:li,targetQuantity:ci,targetQuantityLoading:L}};function sc(e){let{nativeToken:t,depositFee:n=0}=e,{account:r}=hooks.useAccount(),i=t?.symbol,s=hooks.useTokenInfo(i),{data:a}=hooks.useIndexPrice(`SPOT_${i}_USDC`);return {...gi.useMemo(()=>{let o=new utils.Decimal(n.toString()).div(new utils.Decimal(10).pow(r.walletAdapter?.chainNamespace===types.ChainNamespace.solana?9:18)).toString(),l=new utils.Decimal(o).mul(a||0).toString();return {dstGasFee:o,feeQty:o,feeAmount:l,dp:s?.decimals||8}},[n,a]),nativeSymbol:i}}var ic=e=>{let{sourceToken:t,targetToken:n}=e,r=Number(e.qty),{data:i}=hooks.useIndexPricesStream(),s=gi.useMemo(()=>{if(t?.symbol==="USDC")return 1;let p=`PERP_${t?.symbol}_USDC`;return i[p]??0},[t?.symbol,i]),a=gi.useMemo(()=>nc({baseWeight:n?.base_weight??0,discountFactor:n?.discount_factor??0,collateralQty:r,collateralCap:t?.user_max_qty??r,indexPrice:s}),[n,r,t?.user_max_qty,s]),m=oc({collateralQty:r,collateralCap:t?.user_max_qty??r,collateralRatio:a.toNumber(),indexPrice:s}),o=hooks.useComputedLTV(),l=hooks.useComputedLTV({input:r,token:t?.symbol});return {collateralRatio:a.toNumber(),collateralContributionQuantity:m,currentLTV:o,nextLTV:l,indexPrice:s}},ac=()=>{let{data:e,error:t,isLoading:n}=hooks.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 Mo=e=>{let{sourceToken:t,targetToken:n,sourceTokens:r,targetTokens:i,onSourceTokenChange:s,onTargetTokenChange:a,amount:m,quantity:o,collateralContributionQuantity:l,maxQuantity:p,onQuantityChange:u,hintMessage:c,inputStatus:w,chains:y,currentChain:d,settingChain:h,onChainChange:x,actionType:f,onDeposit:S,onApprove:g,fetchBalance:T,wrongNetwork:v,balanceRevalidating:D,loading:b,disabled:I,networkId:k,fee:C,collateralRatio:A,currentLTV:q,nextLTV:E,slippage:R,onSlippageChange:P,minimumReceived:B,needSwap:L,needCrossSwap:G,swapPrice:te,swapFee:W,warningMessage:M,usdcToken:ue,targetQuantity:re,targetQuantityLoading:ye}=e,{t:se}=i18n.useTranslation(),we=()=>L||G?jsxRuntime.jsxs(ui.Flex,{direction:"column",itemAlign:"start",mt:1,gapY:1,children:[jsxRuntime.jsxs(ui.Flex,{width:"100%",itemAlign:"center",justify:"between",children:[jsxRuntime.jsx(ui.Text,{size:"2xs",intensity:36,children:se("transfer.deposit.convertRate")}),jsxRuntime.jsx(kt,{sourceSymbol:t?.display_name||t?.symbol,targetSymbol:n?.display_name||n?.symbol,precision:Fn,indexPrice:te})]}),jsxRuntime.jsx(nt,{value:R,onValueChange:P}),jsxRuntime.jsx(Xt,{value:B,symbol:n?.symbol??"",precision:Fn}),jsxRuntime.jsx(rn,{...W})]}):jsxRuntime.jsxs(ui.Flex,{direction:"column",itemAlign:"start",mt:2,gap:1,children:[jsxRuntime.jsx(so,{value:A}),jsxRuntime.jsx(wr,{precision:ue?.precision??6,value:l}),jsxRuntime.jsx(bt,{showDiff:typeof o<"u"&&Number(o)>0,currentLtv:q,nextLTV:E}),jsxRuntime.jsx(Tt,{...C})]});return jsxRuntime.jsxs(ui.Box,{id:"oui-deposit-form",className:ui.textVariants({weight:"semibold"}),children:[jsxRuntime.jsxs(ui.Box,{className:"oui-mb-6 lg:oui-mb-8",children:[jsxRuntime.jsx(Ct,{}),jsxRuntime.jsxs(ui.Box,{mt:3,mb:1,children:[jsxRuntime.jsx(Qe,{chains:y,value:d,onValueChange:x,wrongNetwork:v,loading:h}),jsxRuntime.jsx(j,{classNames:{root:"oui-mt-[2px] oui-rounded-t-sm oui-rounded-b-xl"},value:o,onValueChange:u,token:t,tokens:r,onTokenChange:s,status:w,hintMessage:c,fetchBalance:T,"data-testId":"oui-testid-deposit-dialog-quantity-input"})]}),jsxRuntime.jsx(ie,{token:t,amount:m,maxQuantity:p,loading:D,onClick:()=>{u(p);}}),jsxRuntime.jsx(ae,{}),jsxRuntime.jsx(Ue,{}),jsxRuntime.jsx(j,{readOnly:true,token:n,tokens:i,onTokenChange:a,value:re,loading:ye,classNames:{root:"oui-mt-3 oui-border-transparent focus-within:oui-outline-transparent"}}),we()]}),jsxRuntime.jsx(Lr,{sourceToken:t?.symbol,targetToken:n?.symbol,className:"oui-mb-3"}),jsxRuntime.jsx(nn,{message:M,needSwap:L,needCrossSwap:G,wrongNetwork:v,networkId:k}),jsxRuntime.jsx(ui.Flex,{justify:"center",children:jsxRuntime.jsx(xt,{actionType:f,symbol:t?.symbol,disabled:I,loading:b,onDeposit:S,onApprove:g,networkId:k})})]})};var Pt=e=>{let t=Ro(e);return jsxRuntime.jsx(Mo,{...t})};var vs=e=>{let{value:t,onChange:n,status:r,hintMessage:i,placeholder:s,label:a}=e,m=gi.useRef(null),o=u=>{n?.(u.target.value);let c=m.current;c&&(c.style.height="auto",c.style.height=`${c.scrollHeight}px`);};gi.useEffect(()=>{let u=m.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(ui.Text,{size:"2xs",intensity:36,children:a})}),p=jsxRuntime.jsxs(ui.Flex,{mt:1,gapX:1,px:1,children:[jsxRuntime.jsx(ui.Box,{width:4,height:4,r:"full",className:ui.cn(r==="error"&&"oui-bg-danger-light",r==="warning"&&"oui-bg-warning-light")}),jsxRuntime.jsx(ui.Text,{size:"2xs",className:ui.cn(r==="error"&&"oui-text-danger-light",r==="warning"&&"oui-text-warning-light"),children:i})]});return jsxRuntime.jsxs("div",{className:"oui-relative",children:[l,jsxRuntime.jsx("textarea",{ref:m,placeholder:s,className:ui.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",r==="error"&&"oui-border-danger-light focus-within:oui-border-danger-light focus:oui-border-danger-light",r==="warning"&&"oui-border-warning-light focus-within:oui-border-warning-light focus:oui-border-warning-light",e.className),rows:1,value:t,onChange:o}),i&&p]})};var _n=e=>{let{hasPositions:t,unsettledPnl:n,onSettlePnl:r,tooltipContent:i,dialogContent:s}=e,{t:a}=i18n.useTranslation();if(n===0&&!t)return jsxRuntime.jsx(jsxRuntime.Fragment,{});let m=()=>{ui.modal.confirm({title:a("settle.settlePnl"),content:s,onOk:()=>r()});};return jsxRuntime.jsxs(ui.Flex,{justify:"between",className:"oui-text-2xs oui-text-base-contrast-36",children:[jsxRuntime.jsxs(ui.Flex,{itemAlign:"center",justify:"start",gap:1,children:[jsxRuntime.jsx(ui.Tooltip,{className:"oui-max-w-[274px] oui-font-semibold",content:i,children:jsxRuntime.jsxs(ui.Flex,{itemAlign:"center",justify:"start",gap:1,children:[jsxRuntime.jsx(ui.ExclamationFillIcon,{size:14,className:"oui-text-warning-darken"}),jsxRuntime.jsx(ui.Text,{className:"oui-cursor-pointer oui-border-b oui-border-dashed oui-border-line-12",children:`${a("settle.unsettled")}:`})]})}),jsxRuntime.jsx(ui.Text.numeral,{showIdentifier:true,coloring:true,weight:"semibold",dp:6,"data-testid":"oui-testid-withdraw-dialog-unsettledPnl-value",children:n}),jsxRuntime.jsx(ui.Text,{children:"USDC"})]}),jsxRuntime.jsxs(ui.Flex,{itemAlign:"center",gap:1,className:"oui-cursor-pointer",children:[jsxRuntime.jsx(dr,{className:"oui-text-primary"}),jsxRuntime.jsx(ui.Text,{"data-testid":"oui-testid-withdraw-dialog-settle-text",size:"2xs",color:"primary",className:" oui-select-none",onClick:m,children:a("common.settle")})]})]})};var Is=({address:e,amount:t,currentChain:n})=>{let{t:r}=i18n.useTranslation(),i=gi.useMemo(()=>{if(n&&n.info&&n.info.network_infos)return n.info.network_infos.name},[n]);return jsxRuntime.jsxs(ui.Flex,{direction:"column",itemAlign:"start",justify:"start",className:"oui-gap-1 lg:oui-gap-3",children:[jsxRuntime.jsxs(ui.Flex,{direction:"column",itemAlign:"start",mb:5,className:"oui-gap-3 lg:oui-gap-4",children:[jsxRuntime.jsxs(ui.Flex,{direction:"column",justify:"start",itemAlign:"start",children:[jsxRuntime.jsx(ui.Text,{size:"2xs",intensity:36,children:r("transfer.withdraw.crossChain.recipientAddress")}),jsxRuntime.jsx(ui.Text,{size:"sm",intensity:98,className:"oui-break-all",children:e})]}),jsxRuntime.jsxs(ui.Flex,{direction:"column",justify:"start",itemAlign:"start",children:[jsxRuntime.jsx(ui.Text,{size:"2xs",intensity:36,children:r("transfer.withdraw.crossChain.recipientNetwork")}),jsxRuntime.jsxs(ui.Flex,{gap:1,children:[jsxRuntime.jsx(ui.ChainIcon,{className:"oui-h-[18px] oui-w-[18px]",size:"sm",chainId:n.id}),jsxRuntime.jsx(ui.Text,{size:"sm",intensity:98,children:i})]})]}),jsxRuntime.jsxs(ui.Flex,{direction:"column",justify:"start",itemAlign:"start",children:[jsxRuntime.jsx(ui.Text,{size:"2xs",intensity:36,children:`${r("transfer.withdraw.crossChain.withdrawAmount")} (USDC)`}),jsxRuntime.jsx(ui.Text.numeral,{size:"sm",intensity:98,dp:2,children:t})]})]}),jsxRuntime.jsx(ui.Flex,{justify:"center",className:"oui-text-warning-darken oui-text-2xs lg:oui-text-xs oui-text-center",mb:3,children:r("transfer.withdraw.crossChain.warning")})]})};function Wo(e){let{t}=i18n.useTranslation(),n=()=>{ui.modal.show(uiChainSelector.ChainSelectorDialogId,{networkId:e.networkId,bridgeLessOnly:true}).then(r=>{ui.toast.success(t("connector.networkSwitched"));},r=>console.log("[switchChain error]",r));};return jsxRuntime.jsx(ui.Flex,{direction:"column",children:jsxRuntime.jsx(ui.Button,{color:"warning",size:e.size,fullWidth:true,onClick:()=>{n();},children:t("connector.switchNetwork")})})}var Ds=e=>{let{disabled:t,loading:n,onWithdraw:r,networkId:i,crossChainWithdraw:s,address:a,currentChain:m,quantity:o,fee:l,checkIsBridgeless:p,onTransfer:u}=e,{t:c}=i18n.useTranslation(),w=gi.useMemo(()=>o?new utils.Decimal(o).minus(l??0).toNumber():0,[o,l]),y=()=>{if(s){ui.modal.confirm({title:c("transfer.withdraw.crossChain.confirmWithdraw"),content:jsxRuntime.jsx(Is,{address:a,amount:w,currentChain:m}),classNames:{content:"oui-font-semibold",body:"!oui-pb-0",footer:"!oui-pt-0"},onOk:async()=>{r();}});return}r();},d={initial:"md",lg:"lg"},h=()=>e.withdrawTo==="accountId"?jsxRuntime.jsx(ui.Button,{fullWidth:true,disabled:t,loading:n,onClick:u,size:d,children:c("common.withdraw")}):p?jsxRuntime.jsx(ui.Button,{"data-testid":"oui-testid-withdraw-dialog-withdraw-btn",fullWidth:true,disabled:t,loading:n,onClick:y,size:d,children:c("common.withdraw")}):jsxRuntime.jsx(Wo,{networkId:i,size:d});return jsxRuntime.jsx(ui.Box,{className:"oui-w-full lg:oui-w-auto lg:oui-min-w-[184px]",children:jsxRuntime.jsx(uiConnector.AuthGuard,{status:types.AccountStatusEnum.EnableTrading,networkId:i,bridgeLessOnly:true,buttonProps:{fullWidth:true,size:d},children:h()})})};var _s=({checkIsBridgeless:e,quantity:t,chainVaultBalance:n,currentChain:r,maxAmount:i,crossChainTrans:s})=>{let{t:a}=i18n.useTranslation(),{wrongNetwork:m}=reactApp.useAppContext(),{state:o}=hooks.useAccount(),l=gi.useMemo(()=>{if(r&&r.info&&r.info.network_infos)return r.info.network_infos.name},[r]),p=gi.useMemo(()=>!n||!i||!t||new utils.Decimal(t).gt(i)?false:!!new utils.Decimal(t).gt(n),[t,n]),c=(()=>{if(o.status!==types.AccountStatusEnum.NotConnected){if(s)return a("transfer.withdraw.crossChain.process");if(p)return a("transfer.withdraw.crossChain.vaultWarning",{networkName:l,chainVaultBalance:n})}})();return c?jsxRuntime.jsx(ui.Flex,{className:"oui-text-warning-darken oui-text-xs oui-justify-center oui-text-center",mb:3,children:c}):null};var Oo=e=>{let{address:t,loading:n,disabled:r,quantity:i,onQuantityChange:s,sourceToken:a,amount:m,maxQuantity:o,tokenChains:l,currentChain:p,fee:u,settingChain:c,chainVaultBalance:w,crossChainTrans:y,checkIsBridgeless:d,withdrawTo:h,sourceTokens:x,onSourceTokenChange:f,vaultBalanceList:S}=e,{t:g}=i18n.useTranslation();return jsxRuntime.jsxs(ui.Box,{id:"oui-withdraw-form",className:ui.textVariants({weight:"semibold"}),children:[jsxRuntime.jsxs(ui.Box,{className:"oui-mb-6 lg:oui-mb-8",children:[jsxRuntime.jsx(Ue,{}),jsxRuntime.jsx(ui.Box,{mt:3,mb:1,children:jsxRuntime.jsx(j,{value:i,onValueChange:s,token:a,tokens:x,onTokenChange:f,status:e.inputStatus,hintMessage:e.hintMessage,vaultBalanceList:S,testId:"oui-testid-withdraw-dialog-quantity-input",displayType:"vaultBalance"})}),jsxRuntime.jsx(ie,{token:a,amount:m,maxQuantity:o.toString(),loading:e.balanceRevalidating,onClick:()=>{s(o.toString());}}),jsxRuntime.jsx(ui.Box,{mx:2,mt:1,children:jsxRuntime.jsx(_n,{unsettledPnl:e.unsettledPnL,hasPositions:e.hasPositions,onSettlePnl:e.onSettlePnl,tooltipContent:g("settle.unsettled.tooltip"),dialogContent:jsxRuntime.jsx(i18n.Trans,{i18nKey:"settle.settlePnl.description"})})}),jsxRuntime.jsx(ae,{}),jsxRuntime.jsxs(ui.Tabs,{value:h,onValueChange:e.setWithdrawTo,variant:"contained",size:"lg",classNames:{tabsList:"oui-px-0",tabsContent:"oui-pt-3"},children:[jsxRuntime.jsxs(ui.TabPanel,{title:g("transfer.web3Wallet.my"),icon:jsxRuntime.jsx(ui.WalletIcon,{size:"xs",name:e.walletName??""}),value:"wallet",children:[jsxRuntime.jsx(Qe,{chains:l,value:p,onValueChange:e.onChainChange,wrongNetwork:e.wrongNetwork,loading:c}),jsxRuntime.jsx(j,{classNames:{root:"oui-mt-[2px] oui-rounded-t-sm oui-rounded-b-xl"},token:a,value:e.showQty,readOnly:true})]}),jsxRuntime.jsxs(ui.TabPanel,{title:g("transfer.withdraw.otherAccount",{brokerName:e.brokerName}),value:"accountId",children:[jsxRuntime.jsx(vs,{label:g("common.accountId"),value:e.toAccountId,onChange:e.setToAccountId,status:e.toAccountIdInputStatus,hintMessage:e.toAccountIdHintMessage}),jsxRuntime.jsx(ui.Box,{my:2,children:jsxRuntime.jsx(ui.Text,{size:"xs",intensity:54,children:g("transfer.withdraw.accountId.tips")})})]})]}),jsxRuntime.jsx(ui.Flex,{direction:"column",mt:1,gapY:1,itemAlign:"start",children:jsxRuntime.jsxs(ui.Text,{size:"xs",intensity:36,children:[g("common.fee"),h==="wallet"?jsxRuntime.jsxs(jsxRuntime.Fragment,{children:[" \u2248 ",jsxRuntime.jsx(ui.Text,{size:"xs",intensity:80,children:u})]}):jsxRuntime.jsxs(jsxRuntime.Fragment,{children:[" = ",jsxRuntime.jsx(ui.Text,{size:"xs",intensity:80,children:"0"})]})]})})]}),jsxRuntime.jsx(_s,{checkIsBridgeless:d,chainVaultBalance:w,currentChain:p,quantity:i,maxAmount:o,crossChainTrans:y}),jsxRuntime.jsx(ui.Flex,{justify:"center",children:jsxRuntime.jsx(Ds,{checkIsBridgeless:d,networkId:e.networkId,disabled:r,loading:n,onWithdraw:e.onWithdraw,crossChainWithdraw:e.crossChainWithdraw,currentChain:p,address:t,quantity:i,fee:u,withdrawTo:h,onTransfer:e.onTransfer})})]})};var mt=e=>{let{accountId:t}=e||{},{t:n}=i18n.useTranslation(),r=hooks.useEventEmitter(),{account:i,state:s}=hooks.useAccount(),[a]=hooks.usePositionStream();return {hasPositions:gi.useMemo(()=>!!a?.rows?.length,[a]),onSettlePnl:async()=>(t&&s.mainAccountId!==t?i.settleSubAccount({subAccountId:t}):i.settle({accountId:t})).then(u=>(ui.toast.success(n("settle.settlement.requested")),Promise.resolve(u))).catch(u=>{if(u.code==-1104)ui.toast.error(n("settle.settlement.error"));else if(u.message.indexOf("Signing off chain messages with Ledger is not yet supported")!==-1)r.emit("wallet:sign-message-with-ledger-error",{message:u.message,userAddress:i.address});else if(u.message.indexOf("user rejected")!==-1)ui.toast.error(n("transfer.rejectTransaction"));else return ui.toast.error(u.message),Promise.reject(u)})}};var Ws=1,zo=e=>{let{t}=i18n.useTranslation(),[n,r]=gi.useState(false),[i,s]=gi.useState(false),[a]=hooks.useAssetsHistory({page:1,pageSize:1,side:types.AssetHistorySideEnum.WITHDRAW,status:types.AssetHistoryStatusEnum.PENDING_REBALANCE},{shouldUpdateOnWalletChanged:F=>F.side===types.AssetHistorySideEnum.WITHDRAW}),m=hooks.useConfig(),o=m.get("brokerName"),l=m.get("networkId"),p=hooks.useEventEmitter(),[u,c]=gi.useState(""),[w,y]=gi.useState("default"),[d,h]=gi.useState(),{wrongNetwork:x}=reactApp.useAppContext(),{account:f}=hooks.useAccount(),[S,{findByChainId:g}]=hooks.useChains(l,{filter:F=>F.network_infos?.bridge_enable||F.network_infos?.bridgeless}),[T]=hooks.useLocalStorage("orderly_link_device",{}),{data:v}=hooks.useQuery("/v1/public/vault_balance",{revalidateOnMount:true,errorRetryCount:3}),{connectedChain:D,wallet:b,setChain:I,settingChain:k}=hooks.useWalletConnector(),C=gi.useMemo(()=>{let F=D?utils.praseChainIdToNumber(D.id):Number.parseInt(T?.chainId);if(!F)return null;let Z=g(F);return {...D,id:F,info:Z}},[g,D,T]),{sourceToken:A,onSourceTokenChange:q,sourceTokens:E}=In(C,F=>F.symbol==="USDC"||F.is_collateral),R=gi.useMemo(()=>S.filter(F=>F.token_infos?.some(Z=>Z.symbol===A?.symbol)).map(F=>F.network_infos),[S,l,A]),{walletName:P,address:B}=gi.useMemo(()=>({walletName:b?.label,address:b?.accounts?.[0].address}),[b]),L=F=>{c(F);},G=gi.useMemo(()=>new utils.Decimal(u||0).mul(Ws).toNumber(),[u,Ws]),{withdraw:te,maxAmount:W,unsettledPnL:M}=hooks.useWithdraw({token:A?.symbol,decimals:A?.token_decimal}),ue=ym({token:A?.symbol,quantity:u,setQuantity:c,close:e.onClose,setLoading:s}),{withdrawTo:re,toAccountId:ye}=ue,se=gi.useMemo(()=>x||!C?false:l==="testnet"?true:!(!C.info||!C.info.network_infos||!C.info.network_infos.bridgeless),[C,x]),we=()=>{c("");},Oe=gi.useCallback(async F=>{let Z=g(F.chain_id);return !Z||Z.network_infos?.chain_id===C?.id?Promise.resolve():I?.({chainId:utils.int2hex(Number(Z.network_infos?.chain_id))}).then(ze=>{ze?(ui.toast.success(t("connector.networkSwitched")),we()):ui.toast.error(t("connector.switchChain.failed"));}).catch(ze=>{ui.toast.error(`${t("connector.switchChain.failed")}: ${ze.message}`);})},[C,I,g,t]),le=gi.useMemo(()=>{if(!Array.isArray(v)||!C)return null;let F=v.find(Z=>Number.parseInt(Z.chain_id)===C?.id);return F?F.balance:null},[S,C,v]),he=gi.useMemo(()=>{if(le!==null){let F=Number.parseFloat(u);return F>le&&F<=W}return false},[u,W,le]),ce=gi.useMemo(()=>A?.minimum_withdraw_amount??0,[A]),Le=async()=>{if(!i&&w==="default"){if(new utils.Decimal(u).lt(ce)){ui.toast.error(t("transfer.withdraw.minAmount.error",{minAmount:ce}));return}return s(true),te({amount:u,token:A?.symbol,chainId:C?.id,allowCrossChainWithdraw:he}).then(F=>{ui.toast.success(t("transfer.withdraw.requested")),p.emit("withdraw:requested"),e.onClose?.(),c("");}).catch(F=>{if(F.message.indexOf("user rejected")!==-1){ui.toast.error(t("transfer.rejectTransaction"));return}if(F.message.indexOf("Signing off chain messages with Ledger is not yet supported")!==-1){p.emit("wallet:sign-message-with-ledger-error",{message:F.message,userAddress:f.address});return}ui.toast.error(F.message);}).finally(()=>{s(false);})}},N=wm({crossChainWithdraw:he,currentChain:C,token:A?.symbol}),O=gi.useMemo(()=>{if(!u)return "";let F=new utils.Decimal(u).sub(N??0);return F.isNegative()?"":F.toNumber()},[N,u]);gi.useEffect(()=>{if(!u){y("default"),h("");return}let F=new utils.Decimal(u??0);M<0&&(F.gt(W)?(y("error"),h(t("transfer.insufficientBalance"))):(y("default"),h("")));},[u,W,M,n]);let $=n||!u||Number(u)===0||["error","warning"].includes(w)||re==="accountId"&&!ye;gi.useEffect(()=>{r(!!a?.length);},[a]);let X=hooks.useMemoizedFn(F=>{if(!n)return;let Z=a?.[0]?.tx_id,{trxId:ze,transStatus:Gn}=F;ze===Z&&Gn==="COMPLETED"&&r(false);});hooks.useWalletTopic({onMessage:X});let{hasPositions:De,onSettlePnl:wt}=mt();return {walletName:P,address:B,quantity:u,onQuantityChange:L,sourceToken:A,onSourceTokenChange:q,sourceTokens:E,inputStatus:w,hintMessage:d,amount:G,balanceRevalidating:false,maxQuantity:W,disabled:$,loading:i,unsettledPnL:M,wrongNetwork:x,settingChain:k,tokenChains:R,currentChain:C,onChainChange:Oe,onWithdraw:Le,chainVaultBalance:le,fee:N,crossChainWithdraw:he,crossChainTrans:n,showQty:O,networkId:l,checkIsBridgeless:se,hasPositions:De,onSettlePnl:wt,brokerName:o,vaultBalanceList:v?.filter(F=>Number.parseInt(F.chain_id)===C?.id),...ue}};function ym(e){let{token:t,quantity:n,setQuantity:r,close:i,setLoading:s}=e,{t:a}=i18n.useTranslation(),[m,o]=gi.useState("wallet"),[l,p]=gi.useState(""),[u,c]=gi.useState("default"),[w,y]=gi.useState(),{transfer:d,submitting:h}=hooks.useTransfer(),x=gi.useCallback(()=>{let f=Number(n);if(isNaN(f)||f<=0){ui.toast.error(a("transfer.quantity.invalid"));return}h||!l||(s(true),d(t,{account_id:l,amount:new utils.Decimal(n).toNumber()}).then(()=>{ui.toast.success(a("transfer.internalTransfer.success")),r(""),i?.();}).catch(S=>{console.error("transfer error: ",S,S.code);let g=bn(S.code);ui.toast.error(g);}).finally(()=>{s(false);}));},[a,n,t,h,l,d]);return gi.useEffect(()=>{if(!l){c("default"),y("");return}Yr(l)?(c("default"),y("")):(c("error"),y(a("transfer.withdraw.accountId.invalid")));},[l]),{withdrawTo:m,setWithdrawTo:o,toAccountId:l,setToAccountId:p,onTransfer:x,internalWithdrawSubmitting:h,toAccountIdInputStatus:u,toAccountIdHintMessage:w}}function wm(e){let{crossChainWithdraw:t,currentChain:n,token:r}=e,i=hooks.useTokenInfo(r);return gi.useMemo(()=>{if(!n)return 0;let a=i?.chain_details?.find(m=>Number.parseInt(m.chain_id)===n.id);return a?t?(a.withdrawal_fee||0)+(a.cross_chain_withdrawal_fee||0):a.withdrawal_fee||0:0},[i,r,n,t])}var Vo=e=>{let t=zo({onClose:e.close});return jsxRuntime.jsx(Oo,{...t})};var Im="DepositAndWithdrawWithDialogId",Fm="DepositAndWithdrawWithSheetId",Vs=e=>{let[t,n]=gi.useState(e.activeTab||"deposit"),{t:r}=i18n.useTranslation();return jsxRuntime.jsxs(ui.Tabs,{value:t,onValueChange:n,variant:"contained",size:"lg",classNames:{tabsList:"oui-px-0",tabsContent:"oui-pt-5"},children:[jsxRuntime.jsx(ui.TabPanel,{title:r("common.deposit"),icon:jsxRuntime.jsx(ui.ArrowDownSquareFillIcon,{}),value:"deposit",children:jsxRuntime.jsx(Pt,{onClose:e.close})}),jsxRuntime.jsx(ui.TabPanel,{title:r("common.withdraw"),icon:jsxRuntime.jsx(ui.ArrowUpSquareFillIcon,{}),value:"withdraw",children:jsxRuntime.jsx(Vo,{...e})})]})};ui.registerSimpleDialog(Im,Vs,{size:"md",classNames:{content:"oui-border oui-border-line-6"}});ui.registerSimpleSheet(Fm,Vs);var qo=e=>{let{token:t,tokens:n,onTokenChange:r,amount:i,quantity:s,maxQuantity:a,swapQuantity:m,onQuantityChange:o,hintMessage:l,inputStatus:p,chains:u,currentChain:c,settingChain:w,onChainChange:y,actionType:d,onDeposit:h,onApprove:x,fetchBalance:f,dst:S,wrongNetwork:g,balanceRevalidating:T,loading:v,disabled:D,networkId:b,slippage:I,onSlippageChange:k,needSwap:C,needCrossSwap:A,swapPrice:q,swapRevalidating:E,warningMessage:R,fee:P}=e;return jsxRuntime.jsxs(ui.Box,{id:"oui-swap-deposit-form",className:ui.textVariants({weight:"semibold"}),children:[jsxRuntime.jsxs(ui.Box,{className:"oui-mb-6 lg:oui-mb-8",children:[jsxRuntime.jsx(Ct,{}),jsxRuntime.jsxs(ui.Box,{mt:3,mb:1,children:[jsxRuntime.jsx(Qe,{chains:u,value:c,onValueChange:y,wrongNetwork:g,loading:w}),jsxRuntime.jsx(j,{classNames:{root:"oui-mt-[2px] oui-rounded-t-sm oui-rounded-b-xl"},value:s,onValueChange:o,tokens:n,token:t,onTokenChange:r,status:p,hintMessage:l,fetchBalance:f,"data-testid":"oui-testid-swap-deposit-dialog-quantity-input"})]}),jsxRuntime.jsx(ie,{token:t,amount:i,maxQuantity:a,loading:T,onClick:()=>{o(a);}}),jsxRuntime.jsx(ae,{}),jsxRuntime.jsx(Ue,{}),jsxRuntime.jsx(j,{readOnly:true,token:S,value:m,loading:E,classNames:{root:"oui-mt-3 oui-border-transparent focus-within:oui-outline-transparent"}}),jsxRuntime.jsxs(ui.Flex,{direction:"column",itemAlign:"start",mt:1,gapY:1,children:[jsxRuntime.jsx(ui.Flex,{justify:"between",width:"100%",children:(C||A)&&jsxRuntime.jsx(nt,{value:I,onValueChange:k})}),jsxRuntime.jsx(rn,{...P})]})]}),jsxRuntime.jsx(nn,{message:R,needSwap:C,needCrossSwap:A,wrongNetwork:g,networkId:b}),jsxRuntime.jsx(ui.Flex,{justify:"center",children:jsxRuntime.jsx(xt,{actionType:d,symbol:t?.symbol,disabled:D,loading:v,onDeposit:h,onApprove:x,networkId:b})})]})};function Qs(e){let{currentChain:t,tokensFilter:n}=e,[r,i]=gi.useState(),[s,a]=gi.useState([]),m=gi.useCallback(o=>{if(o&&o?.token_infos?.length>0){let l=typeof n=="function"?n(o):o.token_infos;a(l);let p=hn(l);if(!p)return;i(p);}},[n]);return gi.useEffect(()=>{m(t?.info);},[t?.id,m]),{token:r,tokens:s,onTokenChange:i}}var Ho=e=>{let[t,n]=hooks.useLocalStorage("orderly_swap_deposit_slippage",1),r=hooks.useConfig(),i=r.get("brokerName")||"",s=r.get("networkId"),{wrongNetwork:a}=reactApp.useAppContext(),{chains:m,currentChain:o,settingChain:l,onChainChange:p}=Ft(),u=gi.useCallback(X=>X.token_infos.filter(De=>X.network_infos.bridgeless&&De.symbol==="USDC"?true:!!De.swap_enable)??[],[]),{token:c,tokens:w,onTokenChange:y}=Qs({currentChain:o,tokensFilter:u}),{dst:d,balance:h,allowance:x,depositFeeRevalidating:f,depositFee:S,quantity:g,setQuantity:T,approve:v,deposit:D,isNativeToken:b,balanceRevalidating:I,fetchBalance:k}=hooks.useDeposit({address:c?.address,decimals:c?.decimals,srcChainId:o?.id,srcToken:c?.symbol,crossChainRouteAddress:o?.info?.network_infos?.cross_chain_router,depositorAddress:o?.info?.network_infos?.depositor}),C=gi.useMemo(()=>new utils.Decimal(h||0).todp(c?.precision??2,utils.Decimal.ROUND_DOWN).toString(),[h,c]),{inputStatus:A,hintMessage:q}=Nt({quantity:g,maxQuantity:C}),{needSwap:E,needCrossSwap:R}=mn({srcToken:c,srcChainId:o?.id,dstChainId:d?.chainId}),{enquiry:P,transactionInfo:B,amount:L,querying:G,warningMessage:te,cleanTransactionInfo:W}=Cn({quantity:g,dst:d,queryParams:{network:d.network,srcToken:c?.address,srcNetwork:o?.info?.network_infos?.shortName,dstToken:d.address,crossChainRouteAddress:o?.info?.network_infos?.cross_chain_router,amount:new utils.Decimal(g||0).mul(10**(c?.decimals||0)).toString(),slippage:t},needSwap:E,needCrossSwap:R}),M=()=>{W(),T("");},ue=gi.useCallback(()=>{M(),e.onClose?.();},[e.onClose]),re=gi.useCallback(async()=>P().then(X=>{let De=R?X.route_infos?.dst.amounts[1]:X.route_infos?.amounts[1],wt={mode:R?1:0,src:{chain:o?.id,token:c.symbol,displayDecimals:c?.precision,amount:g,decimals:c.decimals},dst:{chain:d.chainId,token:d.symbol,displayDecimals:2,amount:new utils.Decimal(De).div(Math.pow(10,d.decimals)).toString(),decimals:d.decimals},chain:o?.info?.network_infos,nativeToken:o?.info?.nativeToken,depositFee:S,transactionData:X,slippage:t,brokerName:i};return ui.modal.show(kn,wt)}).then(X=>{X&&M();}).catch(X=>{}),[g,R,d,o,t,S]),{submitting:ye,onApprove:se,onDeposit:we}=Dt({quantity:g,allowance:x,approve:v,deposit:D,enableCustomDeposit:E||R,customDeposit:re,onSuccess:ue}),Oe=ye||f||G,le=!g||Number(g)===0||A==="error"||f||G,he=gi.useMemo(()=>R||E?B.price:1,[B]),ce=gi.useMemo(()=>R||E?b?B.markPrices.native_token:B.markPrices.from_token:1,[E,R,b,B]),Le=gi.useMemo(()=>new utils.Decimal(g||0).mul(ce).toNumber(),[g,ce]),N=E||R?L:g,O=It({isNativeToken:b,allowance:x,quantity:g,maxQuantity:C}),$=Sn({nativeToken:o?.info?.nativeToken,isNativeToken:b,src:c,depositFee:S,transactionInfo:B,needSwap:E,needCrossSwap:R});return gi.useEffect(()=>{M();},[c,o?.id]),{token:c,tokens:w,onTokenChange:y,amount:Le,quantity:g,maxQuantity:C,swapQuantity:N,onQuantityChange:T,hintMessage:q,inputStatus:A,chains:m,currentChain:o,settingChain:l,onChainChange:p,actionType:O,onDeposit:we,onApprove:se,fetchBalance:k,dst:d,wrongNetwork:a,balanceRevalidating:I,loading:Oe,disabled:le,networkId:s,slippage:t,onSlippageChange:n,needSwap:E,needCrossSwap:R,swapPrice:he,swapRevalidating:G,warningMessage:te,fee:$}};var Om=e=>{let t=Ho(e);return jsxRuntime.jsx(qo,{...t})};function Um(){ui.installExtension({name:"deposit-form",scope:["*"],positions:[ui.ExtensionPositionEnum.DepositForm],__isInternal:true})(e=>jsxRuntime.jsx(Pt,{onClose:e.onClose}));}var Xo=e=>{let{subAccounts:t=[],value:n}=e,[r,i]=gi.useState(false),s=t.length>1,a=jsxRuntime.jsxs(ui.Flex,{intensity:500,className:ui.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(ui.Flex,{direction:"column",itemAlign:"start",children:[jsxRuntime.jsx(ui.Text.formatted,{size:"xs",intensity:80,rule:n?.description?void 0:"address",children:n?.description||n?.id}),jsxRuntime.jsxs(ui.Text,{intensity:36,size:"2xs",children:["ID: ",jsxRuntime.jsx(ui.Text.formatted,{rule:"address",children:n?.id})]})]}),s&&jsxRuntime.jsx(qt,{className:"oui-text-base-contrast-54"})]}),m=t.map((o,l)=>{let p=o.id===n?.id,u=o?.holding?.find(c=>c.token==="USDC")?.holding;return jsxRuntime.jsxs(ui.Flex,{px:2,r:"base",justify:"between",className:ui.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()=>{i(false),e.onValueChange?.(o);},children:[jsxRuntime.jsx(ui.Flex,{gapX:1,itemAlign:"center",children:jsxRuntime.jsxs(ui.Flex,{direction:"column",itemAlign:"start",className:"oui-text-2xs",children:[jsxRuntime.jsx(ui.Text.formatted,{rule:o?.description?void 0:"address",intensity:80,children:o?.description||o?.id}),jsxRuntime.jsxs(ui.Text,{intensity:36,size:"2xs",children:["ID: ",jsxRuntime.jsx(ui.Text.formatted,{rule:"address",children:o?.id})]})]})}),jsxRuntime.jsxs(ui.Flex,{gapX:3,children:[jsxRuntime.jsx(ui.Text.numeral,{size:"2xs",intensity:54,unit:" USDC",children:u||0}),p&&jsxRuntime.jsx(ui.Box,{width:4,height:4,r:"full",className:"oui-transfer-form-account-select-active-dot oui-bg-[linear-gradient(270deg,#59B0FE_0%,#26FEFE_100%)]"})]})]},o.id)});return jsxRuntime.jsxs(ui.DropdownMenuRoot,{open:s?r:false,onOpenChange:i,children:[jsxRuntime.jsx(ui.DropdownMenuTrigger,{asChild:true,children:a}),jsxRuntime.jsx(ui.DropdownMenuPortal,{children:jsxRuntime.jsx(ui.DropdownMenuContent,{onCloseAutoFocus:o=>o.preventDefault(),align:"start",sideOffset:2,className:ui.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(ui.ScrollArea,{children:jsxRuntime.jsxs("div",{className:"oui-max-h-[254px]",children:[m," "]})})})})]})};var jo=e=>{let{networkId:t,disabled:n,onTransfer:r,quantity:i,onQuantityChange:s,amount:a,tokens:m,token:o,onTokenChange:l,maxQuantity:p,submitting:u,hintMessage:c,inputStatus:w,hasPositions:y,onSettlePnl:d,unsettledPnL:h,toAccountAsset:x,fromAccounts:f,toAccounts:S,fromAccount:g,onFromAccountChange:T,toAccount:v,onToAccountChange:D,onExchange:b}=e,{t:I}=i18n.useTranslation(),k={initial:"md",lg:"lg"};return jsxRuntime.jsxs(ui.Box,{id:"oui-deposit-form",className:ui.textVariants({weight:"semibold"}),children:[jsxRuntime.jsxs(ui.Box,{className:"oui-mb-6 lg:oui-mb-8",children:[jsxRuntime.jsx(ui.Text,{size:"sm",intensity:98,children:I("transfer.internalTransfer.from")}),jsxRuntime.jsxs(ui.Box,{mt:1,mb:1,children:[jsxRuntime.jsx(Xo,{subAccounts:f,value:g,onValueChange:T}),jsxRuntime.jsx(j,{classNames:{root:"oui-mt-[2px] oui-rounded-t-sm oui-rounded-b-xl"},value:i,onValueChange:s,tokens:m,token:o,onTokenChange:l,hintMessage:c,status:w})]}),jsxRuntime.jsx(ie,{token:o,amount:a,maxQuantity:p,onClick:()=>{s(p.toString());}}),jsxRuntime.jsx(ui.Box,{mx:2,mt:1,children:jsxRuntime.jsx(_n,{unsettledPnl:h,hasPositions:y,onSettlePnl:d,tooltipContent:I("transfer.internalTransfer.unsettled.tooltip"),dialogContent:jsxRuntime.jsx(i18n.Trans,{i18nKey:"transfer.internalTransfer.settlePnl.description"})})}),jsxRuntime.jsx(ae,{icon:jsxRuntime.jsx(fr,{className:"oui-cursor-pointer oui-text-primary",onClick:b})}),jsxRuntime.jsx(ui.Text,{size:"sm",intensity:98,children:I("transfer.internalTransfer.to")}),jsxRuntime.jsxs(ui.Box,{mt:1,children:[jsxRuntime.jsx(Xo,{subAccounts:S,value:v,onValueChange:D}),jsxRuntime.jsxs(ui.Flex,{className:ui.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(ui.Text,{size:"2xs",children:I("transfer.internalTransfer.currentAssetValue")}),jsxRuntime.jsx(ui.Text.numeral,{size:"2xs",intensity:54,unit:` ${o.symbol}`,dp:o?.precision,padding:false,children:x})]})]})]}),jsxRuntime.jsx(ui.Flex,{justify:"center",children:jsxRuntime.jsx(ui.Box,{className:"oui-w-full lg:oui-w-auto lg:oui-min-w-[184px]",children:jsxRuntime.jsx(uiConnector.AuthGuard,{networkId:t,buttonProps:{fullWidth:true,size:k},children:jsxRuntime.jsx(ui.Button,{fullWidth:true,disabled:n,loading:u,size:k,onClick:r,children:I("common.transfer")})})})})]})};var Zo={symbol:"USDC"},Ko=e=>{let{t}=i18n.useTranslation(),[n,r]=gi.useState(""),[i,s]=gi.useState(),[a,m]=gi.useState(),[o,l]=gi.useState(),[p,u]=gi.useState([Zo]),[c,w]=gi.useState(Zo),[y,d]=gi.useState({}),h=hooks.useConfig("networkId"),{state:x,isMainAccount:f,subAccount:S}=hooks.useAccount(),g=hooks.useTokensInfo(),{transfer:T,submitting:v,maxAmount:D,unsettledPnL:b}=hooks.useTransfer({fromAccountId:i?.id,token:c.symbol}),I=x.subAccounts,k=x.mainAccountId,C=x.accountId,A=f?i?.id!==k?i?.id:void 0:i?.id,{hasPositions:q,onSettlePnl:E}=mt({accountId:i?.id}),{portfolio:R,positions:P}=hooks.useSubAccountDataObserver(A),B=hooks.useSubAccountMaxWithdrawal({token:c.symbol,unsettledPnL:R?.unsettledPnL,freeCollateral:R?.freeCollateral??utils.zero,holdings:R?.holding}),L=gi.useMemo(()=>!!P?.rows?.length,[P]),G=gi.useMemo(()=>A?L:q,[A,L,q]),{unsettledPnL:te,maxQuantity:W}=gi.useMemo(()=>A?{unsettledPnL:R?.unsettledPnL,maxQuantity:B}:{unsettledPnL:b,maxQuantity:D},[A,b,D,R?.unsettledPnL,B]),{inputStatus:M,hintMessage:ue}=cp({quantity:n,maxQuantity:W,unsettledPnL:te}),re=gi.useCallback(()=>{let N=Number(n);if(isNaN(N)||N<=0){ui.toast.error(t("transfer.quantity.invalid"));return}v||!a||T(c.symbol,{account_id:a.id,amount:new utils.Decimal(n).toNumber()}).then(()=>{ui.toast.success(t("transfer.internalTransfer.success")),r(""),e.close?.();}).catch(O=>{console.error("transfer error: ",O);let $=bn(O.code);ui.toast.error($);});},[t,c,n,v,T,a]),ye=v||!n||M==="error",se=gi.useMemo(()=>new utils.Decimal(n||0).mul(1).toNumber(),[n]),we=gi.useMemo(()=>a?.id&&y[a.id]?.find($=>$.token===c.symbol)?.holding||0,[a,c,y]),{fromAccounts:Oe,toAccounts:le}=gi.useMemo(()=>f?{fromAccounts:o?[o,...I||[]]:[],toAccounts:i?.id===k?I:[]}:{fromAccounts:[],toAccounts:[]},[f,k,o,I,i]);gi.useEffect(()=>{if(!k)return;let N={id:k,description:t("common.mainAccount"),holding:[]};l(N),S.refresh().then(O=>{d(O),l({...N,holding:O[k]});});},[t,k]),gi.useEffect(()=>{s(f?o:I?.find(N=>N.id===C));},[f,o,I,C]),gi.useEffect(()=>{if(f){let N=I?.[0],O=e.toAccountId&&I?.find($=>$.id===e.toAccountId)||N;O&&m(O);}else m(o);},[e?.toAccountId,f,o,I]),gi.useEffect(()=>{let N=g?.map(O=>({symbol:O.token,precision:O.decimals}));if(N?.length){N.sort(($,X)=>$.symbol==="USDC"?-1:X.symbol==="USDC"?1:0);let O=N?.find($=>$.symbol===e.token);u(N),w(O||N?.[0]||Zo);}},[g,e.token]);let he=gi.useCallback(N=>{s(N);let O=I?.[0];if(N?.id===k){m(O);return}if(N?.id&&N?.id!==k){m(o);return}},[k,o,I]),ce=gi.useCallback(N=>{m(N);},[]),Le=gi.useCallback(()=>{s(a),m(i);},[i,a]);return {networkId:h,onTransfer:re,quantity:n,amount:se,onQuantityChange:r,maxQuantity:W,tokens:p,token:c,onTokenChange:w,disabled:ye,submitting:v,hintMessage:ue,inputStatus:M,hasPositions:G,onSettlePnl:E,unsettledPnL:te,toAccountAsset:we,fromAccount:i,toAccount:a,fromAccounts:Oe,onFromAccountChange:he,toAccounts:le,onToAccountChange:ce,onExchange:Le,isMainAccount:f}};function cp(e){let{quantity:t,maxQuantity:n,unsettledPnL:r=0}=e,{t:i}=i18n.useTranslation(),[s,a]=gi.useState("default"),[m,o]=gi.useState();return gi.useEffect(()=>{if(!t){a("default"),o("");return}let l=new utils.Decimal(t);r<0?l.gt(n)?(a("error"),o(i("transfer.insufficientBalance"))):(a("default"),o("")):l.gt(n)?(a("error"),o(i("transfer.insufficientBalance"))):l.gt(new utils.Decimal(n).minus(r))&&l.lessThanOrEqualTo(n)?(a("warning"),o(i("settle.settlePnl.warning"))):(a("default"),o(""));},[t,n]),{inputStatus:s,hintMessage:m}}var dp="TransferDialogId",fp="TransferSheetId",gp=e=>{let t=Ko({toAccountId:e.toAccountId,token:e.token,close:e.close});return jsxRuntime.jsx(jo,{...t})},$s=e=>jsxRuntime.jsx(gp,{close:e.close,toAccountId:e.toAccountId,token:e.token});ui.registerSimpleDialog(dp,$s,{size:"md",classNames:{content:"oui-border oui-border-line-6"},title:()=>i18n.i18n.t("common.transfer")});ui.registerSimpleSheet(fp,$s,{title:()=>i18n.i18n.t("common.transfer")});var js=e=>{let{disabled:t,loading:n,networkId:r,onConvert:i}=e,{t:s}=i18n.useTranslation();return jsxRuntime.jsx(ui.Box,{className:"oui-w-full lg:oui-w-auto lg:oui-min-w-[184px]",children:jsxRuntime.jsx(uiConnector.AuthGuard,{status:types.AccountStatusEnum.EnableTrading,networkId:r,buttonProps:{fullWidth:true,size:{initial:"md",lg:"lg"}},children:jsxRuntime.jsx(ui.Button,{fullWidth:true,disabled:t,loading:n,size:{initial:"md",lg:"lg"},onClick:i,children:s("transfer.convert")})})})};var Fp=e=>e.reduce((t,n)=>(n.token?.toUpperCase()==="USDC"?t.usdc.push(n):t.others.push(n),t),{usdc:[],others:[]}),Ys=e=>{let{defaultValue:t}=e,r=hooks.useConfig().get("networkId"),[,{findByChainId:i}]=hooks.useChains(r,{pick:"network_infos",filter:d=>d.network_infos?.bridge_enable||d.network_infos?.bridgeless}),[s,a]=gi.useState(),[m,o]=gi.useState(),[l,p]=gi.useState([]),u=hooks.useTokensInfo(),c=i(types.Arbitrum.id),w=c?.network_infos?.chain_id,y=gi.useMemo(()=>u.map(d=>{let h=c?.token_infos?.find(({symbol:x})=>x===d.token);return {...d,symbol:d.token,address:h?.address,decimals:d.chain_details[0]?.decimals,precision:d.decimals}}),[c?.token_infos,u]);return gi.useEffect(()=>{let{usdc:d,others:h}=Fp(y);a(()=>{if(t){let x=h.find(({token:f})=>f===t);return x||h[0]}return h[0]}),p(h),o(d[0]);},[t,y]),{chainId:w,sourceToken:s,sourceTokens:l,onSourceTokenChange:a,targetToken:m}};var {calcMinimumReceived:zp}=perp.account,Vp="orderly_convert_slippage",Up=(e,t)=>new utils.Decimal(e).mul(new utils.Decimal(10).pow(t)).toFixed(0),Lt=(e,t)=>new utils.Decimal(e).div(new utils.Decimal(10).pow(t)).toString(),tr=e=>{let{token:t,close:n}=e,{t:r}=i18n.useTranslation(),[i,s]=gi.useState(false),m=hooks.useConfig().get("networkId"),[o,l]=gi.useState(""),{wrongNetwork:p}=reactApp.useAppContext(),{wallet:u}=hooks.useWalletConnector(),{sourceToken:c,sourceTokens:w,onSourceTokenChange:y,targetToken:d,chainId:h}=Ys({defaultValue:t}),x=gi.useMemo(()=>{let M={...c,precision:c?.decimals??6};return M.token==="ETH"&&(!M.address||M.address===types.nativeTokenAddress)&&(M.address=types.nativeETHAddress),M},[c]),{walletName:f,address:S}=gi.useMemo(()=>({walletName:u?.label,address:u?.accounts?.[0].address}),[u]),g=M=>{l(M);},[T,v]=hooks.useLocalStorage(Vp,1),{maxAmount:D,convert:b}=hooks.useConvert({token:x.token}),I=async()=>{if(!i)return s(true),b({amount:Number(o),slippage:new utils.Decimal(T).div(100).toNumber()}).then(()=>{ui.toast.success(r("transfer.convert.completed")),n?.(),l("");}).catch(M=>{ui.toast.error(M.message?.includes("user rejected")?r("transfer.convert.failed"):M.message);}).finally(()=>{s(false);})},[k,{data:C,isMutating:A}]=hooks.useOdosQuote(),q=hooks.useMemoizedFn(k);gi.useEffect(()=>{o&&h&&x.address&&d?.address&&q({chainId:h,inputTokens:[{amount:Up(o,x.decimals),tokenAddress:x.address}],outputTokens:[{proportion:1,tokenAddress:d.address}]});},[o,x,d,h,q]);let E=gi.useMemo(()=>!C||A?"-":C?.outAmounts[0],[C,A]),R=gi.useMemo(()=>!C||A?"-":new utils.Decimal(Lt(C.outAmounts[0],d?.decimals??6)).div(Lt(C.inAmounts[0],x.decimals)).toString(),[A,C,d?.decimals,x?.decimals]),P=gi.useMemo(()=>!C||A?0:zp({amount:C?.outAmounts[0],slippage:Number(T)}),[C,A,T]),B=hooks.useComputedLTV(),L=hooks.useComputedLTV({input:Number(o),token:c?.token}),G=!o||Number(o)===0,{hasPositions:te,onSettlePnl:W}=mt();return {walletName:f,address:S,quantity:o,onQuantityChange:g,token:x,sourceTokens:w,onSourceTokenChange:y,targetToken:d,balanceRevalidating:false,maxQuantity:D,disabled:G,loading:i,wrongNetwork:p,onConvert:I,hasPositions:te,onSettlePnl:W,networkId:m,slippage:T,onSlippageChange:v,convertRate:R,minimumReceived:P,outAmounts:E,isQuoteLoading:A,currentLTV:B,nextLTV:L}};var rr=e=>{let{loading:t,disabled:n,quantity:r,onQuantityChange:i,maxQuantity:s,token:a,targetToken:m,sourceTokens:o,onSourceTokenChange:l,onConvert:p,slippage:u,onSlippageChange:c,convertRate:w,outAmounts:y,minimumReceived:d,isQuoteLoading:h,currentLTV:x,nextLTV:f,networkId:S,balanceRevalidating:g}=e;return jsxRuntime.jsxs(ui.Box,{className:ui.textVariants({weight:"semibold"}),children:[jsxRuntime.jsxs(ui.Box,{className:"oui-mb-6 lg:oui-mb-8",children:[jsxRuntime.jsx(ui.Box,{mt:3,mb:1,children:jsxRuntime.jsx(j,{value:r,onValueChange:i,token:a,tokens:o,onTokenChange:l})}),jsxRuntime.jsx(ie,{token:a,amount:r,maxQuantity:s.toString(),loading:g,onClick:()=>{i(s.toString());}}),jsxRuntime.jsx(ae,{}),jsxRuntime.jsx(j,{readOnly:true,loading:h,token:m,value:h||!r||Number.isNaN(Number(y))?"":Lt(y,m?.decimals??6)}),jsxRuntime.jsxs(ui.Flex,{direction:"column",itemAlign:"start",mt:2,gap:1,children:[jsxRuntime.jsx(kt,{indexPrice:h||!r||Number.isNaN(Number(w))?"-":w,sourceSymbol:a?.token,targetSymbol:m?.token}),jsxRuntime.jsx(nt,{value:u,onValueChange:c}),jsxRuntime.jsx(Xt,{symbol:m?.token||"",precision:m?.decimals??6,value:h||!r||Number.isNaN(Number(d))?"-":Lt(d.toString(),m?.decimals??6)}),jsxRuntime.jsx(bt,{showDiff:typeof r<"u"&&Number(r)>0,currentLtv:x,nextLTV:f}),jsxRuntime.jsx(Tt,{dstGasFee:"0"})]})]}),jsxRuntime.jsx(ui.Flex,{itemAlign:"center",justify:"center",children:jsxRuntime.jsx(js,{networkId:S,disabled:n,loading:t,onConvert:p})})]})};var Hp="ConvertDialogId",$p="ConverSheetId",sr=e=>{let t=tr(e);return jsxRuntime.jsx(rr,{...t})};ui.registerSimpleDialog(Hp,sr,{size:"md",classNames:{content:"oui-border oui-border-line-6"},title:()=>i18n.i18n.t("transfer.convert")});ui.registerSimpleSheet($p,sr,{title:()=>i18n.i18n.t("transfer.convert")});var ir=e=>{let{isSignIn:t,classNames:n}=e;return t?jsxRuntime.jsxs(ui.Flex,{direction:"column",gapY:1,width:"100%",className:ui.cn(e.className,n?.root),children:[jsxRuntime.jsx(ni,{count:e.pendingCount,status:types.AssetHistoryStatusEnum.PENDING,onClick:e.onClick,className:n?.items}),jsxRuntime.jsx(ni,{count:e.completedCount,status:types.AssetHistoryStatusEnum.COMPLETED,onClick:e.onClick,className:n?.items})]}):null},ni=e=>{let{t}=i18n.useTranslation(),{count:n,status:r}=e,i=gi.useMemo(()=>r===types.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,r,n]);if(n===0)return null;let s=typeof e.onClick=="function";return jsxRuntime.jsxs(ui.Flex,{justify:"between",itemAlign:"center",intensity:900,className:ui.cn("oui-font-normal","oui-px-3 lg:oui-px-0","oui-py-2 lg:oui-py-0",s&&"oui-cursor-pointer",e.className),width:"100%",r:"full",onClick:e.onClick,children:[jsxRuntime.jsxs(ui.Flex,{gapX:1,width:"100%",children:[jsxRuntime.jsx(Jp,{className:r===types.AssetHistoryStatusEnum.COMPLETED?"oui-bg-success":"oui-bg-primary"}),jsxRuntime.jsx(ui.Text,{size:"2xs",intensity:80,children:i})]}),jsxRuntime.jsxs(ui.Flex,{gapX:1,children:[jsxRuntime.jsx(Kp,{children:e.count}),s&&jsxRuntime.jsx(ui.ChevronRightIcon,{size:14,opacity:1,className:"oui-text-base-contrast-54"})]})]})},Kp=e=>jsxRuntime.jsx(ui.Flex,{justify:"center",itemAlign:"center",r:"full",width:18,height:18,className:ui.cn("oui-bg-line-12",e.className),children:jsxRuntime.jsx(ui.Text,{size:"3xs",intensity:80,children:e.children})}),Jp=e=>jsxRuntime.jsx("div",{className:ui.cn("oui-mx-[5px] oui-size-2 oui-shrink-0 oui-rounded-full",e.className)});function qn(){let e=Date.now();return [e-1e3*60*60,e]}function ar(){let[e,t]=gi.useState(qn()),[n,r]=gi.useState(qn()),[i,s]=gi.useState(0),[a,m]=gi.useState(0),[o,l]=gi.useState(0),{state:p}=hooks.useAccount(),u=p.status===types.AccountStatusEnum.EnableTrading||p.status===types.AccountStatusEnum.EnableTradingWithoutConnected,[c,{isLoading:w}]=hooks.useAssetsHistory({startTime:e[0],endTime:e[1],page:1,pageSize:200,side:"DEPOSIT"},{shouldUpdateOnWalletChanged:()=>false}),[y,{meta:d}]=hooks.useTransferHistory({dataRange:n,side:"IN",size:100,page:1,main_sub_only:false}),h=hooks.useDebouncedCallback(()=>{t(qn());},300);hooks.useWalletTopic({onMessage(f){let{side:S,transStatus:g}=f;S===types.AssetHistorySideEnum.DEPOSIT&&(g===types.AssetHistoryStatusEnum.PENDING||g===types.AssetHistoryStatusEnum.COMPLETED)&&(console.log("deposit status updated",f),h());}}),hooks.useBalanceTopic({onMessage(f){console.log("balance updated",f),r(qn());}}),gi.useEffect(()=>{if(!c||w)return;let f=c?.filter(g=>g.trans_status===types.AssetHistoryStatusEnum.PENDING),S=c?.filter(g=>g.trans_status===types.AssetHistoryStatusEnum.COMPLETED);s(f?.length||0),m(S?.length||0);},[c,w]),gi.useEffect(()=>{d&&l(d.total||0);},[d]);let x=gi.useMemo(()=>a+o,[a,o]);return {pendingCount:i,completedCount:x,isSignIn:u}}var ud=e=>{let t=ar();return jsxRuntime.jsx(ir,{...t,...e})};
23
23
 
24
- exports.ActionButton = yt;
25
- exports.AvailableQuantity = ue;
26
- exports.BrokerWallet = ze;
27
- exports.ChainSelect = Ue;
28
- exports.ConvertFormUI = jo;
29
- exports.ConvertFormWidget = Xo;
30
- exports.DepositAction = Vn;
31
- exports.DepositAndWithdraw = As;
32
- exports.DepositAndWithdrawWithDialogId = am;
33
- exports.DepositAndWithdrawWithSheetId = um;
34
- exports.DepositForm = So;
35
- exports.DepositFormWidget = At;
36
- exports.ExchangeDivider = le;
37
- exports.Fee = ht;
38
- exports.QuantityInput = Y;
39
- exports.SwapCoin = bt;
40
- exports.SwapDepositForm = Ro;
41
- exports.SwapDepositFormWidget = bm;
42
- exports.TransferDialogId = $m;
43
- exports.TransferForm = Oo;
44
- exports.TransferFormWidget = Xm;
45
- exports.TransferSheetId = jm;
46
- exports.TransferWidget = Ms;
47
- exports.Web3Wallet = xt;
48
- exports.WithdrawFormUI = Fo;
49
- exports.WithdrawFormWidget = No;
50
- exports.WithdrawTo = Et;
51
- exports.checkIsAccountId = Or;
52
- exports.feeDecimalsOffset = He;
53
- exports.getTokenByTokenList = dn;
54
- exports.getTransferErrorMessage = fn;
55
- exports.installDeposit = Cm;
56
- exports.useActionType = Ct;
57
- exports.useChainSelect = St;
58
- exports.useConvertForm = Go;
59
- exports.useDepositAction = It;
60
- exports.useDepositFormScript = ko;
61
- exports.useInputStatus = Ft;
62
- exports.useSwapDepositFormScript = Bo;
63
- exports.useTransferFormScript = zo;
64
- exports.useWithdrawForm = Do;
24
+ exports.ActionButton = xt;
25
+ exports.AvailableQuantity = ie;
26
+ exports.BrokerWallet = Ue;
27
+ exports.ChainSelect = Qe;
28
+ exports.ConvertFormUI = rr;
29
+ exports.ConvertFormWidget = sr;
30
+ exports.DepositAction = Yn;
31
+ exports.DepositAndWithdraw = Vs;
32
+ exports.DepositAndWithdrawWithDialogId = Im;
33
+ exports.DepositAndWithdrawWithSheetId = Fm;
34
+ exports.DepositForm = Mo;
35
+ exports.DepositFormWidget = Pt;
36
+ exports.DepositStatus = ir;
37
+ exports.DepositStatusWidget = ud;
38
+ exports.ExchangeDivider = ae;
39
+ exports.Fee = Tt;
40
+ exports.QuantityInput = j;
41
+ exports.SwapCoin = kt;
42
+ exports.SwapDepositForm = qo;
43
+ exports.SwapDepositFormWidget = Om;
44
+ exports.TransferDialogId = dp;
45
+ exports.TransferForm = jo;
46
+ exports.TransferFormWidget = gp;
47
+ exports.TransferSheetId = fp;
48
+ exports.TransferWidget = $s;
49
+ exports.Web3Wallet = Ct;
50
+ exports.WithdrawFormUI = Oo;
51
+ exports.WithdrawFormWidget = Vo;
52
+ exports.WithdrawTo = Ut;
53
+ exports.checkIsAccountId = Yr;
54
+ exports.feeDecimalsOffset = $e;
55
+ exports.getTokenByTokenList = hn;
56
+ exports.getTransferErrorMessage = bn;
57
+ exports.installDeposit = Um;
58
+ exports.useActionType = It;
59
+ exports.useChainSelect = Ft;
60
+ exports.useConvertForm = tr;
61
+ exports.useDepositAction = Dt;
62
+ exports.useDepositFormScript = Ro;
63
+ exports.useDepositStatusScript = ar;
64
+ exports.useInputStatus = Nt;
65
+ exports.useSwapDepositFormScript = Ho;
66
+ exports.useTransferFormScript = Ko;
67
+ exports.useWithdrawForm = zo;
65
68
  //# sourceMappingURL=out.js.map
66
69
  //# sourceMappingURL=index.js.map