@dhedge/trading-widget 6.3.6 → 7.0.0
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/README.md +4 -17
- package/const.cjs +1 -1
- package/const.js +1 -1
- package/{contract-error-log-xoZ1OAil.cjs → contract-error-log-C66ELh8m.cjs} +1 -1
- package/{contract-error-log-C72hcInG.js → contract-error-log-CaRlTnoL.js} +1 -1
- package/core-kit/const/gmx.d.ts +1 -0
- package/core-kit/types/index.d.ts +9 -9
- package/{gmx-DJ0gqvLq.cjs → gmx-BTdr6Yvr.cjs} +1 -1
- package/{gmx-Cyz_GmV5.js → gmx-Dc6vyoji.js} +4 -2
- package/index.cjs +1 -1
- package/index.js +2698 -2742
- package/limit-orders/common/percentage-input.d.ts +1 -1
- package/limit-orders/common/price-input.d.ts +1 -1
- package/limit-orders/limit-buys/providers/translation-provider/index.d.ts +1 -1
- package/limit-orders/providers/theme-provider/index.d.ts +1 -1
- package/limit-orders/providers/translation-provider/index.d.ts +1 -1
- package/package.json +3 -2
- package/trading-widget/components/common/input/input-number.d.ts +8 -6
- package/trading-widget/components/common/meta/transaction-disclosure/transaction-disclosure-item/transaction-disclosure-item.d.ts +1 -1
- package/trading-widget/components/common/switch/switch.d.ts +2 -1
- package/trading-widget/components/deposit/input-group/input-group.d.ts +2 -1
- package/trading-widget/components/deposit/meta/transaction-disclosure/transaction-disclosure.d.ts +2 -1
- package/trading-widget/components/widget/widget-buttons/switch-network-button/switch-network-button.d.ts +2 -1
- package/trading-widget/components/widget/widget-input/all-assets-composition-table/all-assets-composition-table.d.ts +2 -1
- package/trading-widget/components/widget/widget-input/widget-input.hooks.d.ts +1 -1
- package/trading-widget/components/widget/widget-overlay/token-select-overlay/multi-token-select-item/multi-token-select-item.d.ts +2 -1
- package/trading-widget/components/widget/widget-overlay/token-select-overlay/token-select-item/token-select-item.d.ts +2 -1
- package/trading-widget/components/widget/widget-overlay/trading-overlay/limit-order/limit-order-processing-content.d.ts +2 -1
- package/trading-widget/components/widget/widget-settings/token-allowance-switch/token-allowance-switch.d.ts +2 -1
- package/trading-widget/components/withdraw/complete-step/meta/transaction-disclosure/transaction-disclosure.d.ts +2 -1
- package/trading-widget/components/withdraw/init-step/init-step.d.ts +2 -1
- package/trading-widget/components/withdraw/init-step/input-group/init-withdraw-input-group.d.ts +2 -1
- package/trading-widget/components/withdraw/init-step/meta/transaction-disclosure/transaction-disclosure.d.ts +2 -1
- package/trading-widget/providers/component-provider/index.d.ts +1 -1
- package/trading-widget/providers/config-provider/index.d.ts +1 -1
- package/trading-widget/providers/overlay-provider/overlay-provider.hooks.d.ts +1 -1
- package/trading-widget/providers/theme-provider/index.d.ts +1 -1
- package/trading-widget/providers/translation-provider/index.d.ts +1 -1
- package/utils.cjs +1 -1
- package/utils.js +1 -1
package/index.cjs
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
"use strict";var Vi=Object.create;var On=Object.defineProperty;var qi=Object.getOwnPropertyDescriptor;var Yi=Object.getOwnPropertyNames;var Ki=Object.getPrototypeOf,Qi=Object.prototype.hasOwnProperty;var Zi=(e,t,n)=>t in e?On(e,t,{enumerable:!0,configurable:!0,writable:!0,value:n}):e[t]=n;var Xi=(e,t,n,r)=>{if(t&&typeof t=="object"||typeof t=="function")for(let s of Yi(t))!Qi.call(e,s)&&s!==n&&On(e,s,{get:()=>t[s],enumerable:!(r=qi(t,s))||r.enumerable});return e};var Ln=(e,t,n)=>(n=e!=null?Vi(Ki(e)):{},Xi(t||!e||!e.__esModule?On(n,"default",{value:e,enumerable:!0}):n,e));var Pe=(e,t,n)=>Zi(e,typeof t!="symbol"?t+"":t,n);Object.defineProperty(exports,Symbol.toStringTag,{value:"Module"});const o=require("react/jsx-runtime"),F=require("@headlessui/react"),oe=require("@heroicons/react/24/outline"),N=require("classnames"),Ji=require("react-popper-tooltip"),m=require("react"),ye=require("@heroicons/react/24/solid"),Yn=require("@heroicons/react/16/solid"),w=require("./contract-error-log-xoZ1OAil.cjs"),u=require("./gmx-DJ0gqvLq.cjs"),Vs=require("ts-custom-error"),el=require("wagmi/connectors"),_=require("wagmi"),k=require("viem"),I=require("bignumber.js"),Z=require("wagmi/chains"),fe=require("@tanstack/react-query"),Vt=require("date-fns"),qs=require("wagmi/query"),pe=require("./geoblocking-peuNwHMJ.cjs"),Je=require("@heroicons/react/20/solid"),tl=({tooltipContent:e,children:t,placement:n="top",trigger:r="hover",interactive:s=!0,delayHide:a=50})=>{const{getTooltipProps:i,setTooltipRef:l,setTriggerRef:c,visible:d}=Ji.usePopperTooltip({interactive:s,delayHide:a,offset:[0,12],placement:n,trigger:r});return o.jsxs(o.Fragment,{children:[o.jsx("span",{ref:c,children:t}),d&&o.jsx("span",{ref:l,...i({className:"tooltip-container dtw-z-50 dtw-bg-[color:var(--panel-tooltip-bg)] dtw-text-[color:var(--panel-tooltip-color)] dtw-px-2 dtw-py-1.5 dtw-rounded-md dtw-text-xs dtw-text-center dtw-block dtw-whitespace-normal"}),children:e})]})},ar=({text:e,...t})=>o.jsx(tl,{...t,tooltipContent:o.jsx("span",{className:"dtw-inline-block dtw-max-w-xs",children:e})}),qt=({text:e,placement:t,iconClassName:n="dtw-text-[color:var(--panel-secondary-content-color)]",Icon:r=oe.QuestionMarkCircleIcon})=>o.jsx(ar,{text:e,placement:t,children:o.jsx(r,{className:N("dtw-h-4 dtw-w-4 dtw-cursor-help hover:dtw-text-[color:var(--panel-icon-color-hover))]",n)})}),xt=({label:e,tooltipText:t,children:n})=>o.jsxs("div",{children:[o.jsxs("div",{className:"dtw-flex dtw-items-center dtw-gap-x-1 dtw-text-[length:var(--panel-popup-font-size)] dtw-text-[color:var(--panel-popup-content-color,var(--panel-secondary-content-color))]",children:[o.jsx("span",{children:e}),o.jsx(qt,{text:t,placement:"top"})]}),o.jsx("div",{className:"dtw-mt-1.5",children:n})]}),Ys={depositSlippageWarning:"Excludes entry fee.",withdrawSlippageWarning:"Slippage occurs in both single asset withdrawals and withdrawals from vaults with Aave debt positions. However, for vaults with Aave debt, slippage is only applied to the portion of the withdrawal that corresponds to the Aave position.",minSlippageWarning:"Flexible min slippage value that is likely enough to process the transaction.",highSlippageWarning:"We recommend using another asset to trade with lower slippage.",recommendedMinSlippage:"Recommended min slippage",projectedDailyEarningsTooltip:"Projected daily earnings are based on the current APY and may differ from actual earnings.",dailyEarnings:"Daily earnings",projectedYearlyEarningsTooltip:"Projected yearly earnings are based on the current APY and may differ from actual earnings.",yearlyEarnings:"Yearly earnings",fullReceiveDetails:"See full details influencing what you will receive.",tradeDetails:"Trade details",maxSlippage:"Max slippage",minReceiveAmount:"You will receive no less than this amount.",minReceived:"Minimum received",estimatedMultiAssetFractions:"Pro-rated share of vault assets",infinite:"Infinite approval",tokenAllowance:"Token allowance",entryFee:"Entry fee",exitFee:"Exit fee",entryFeeExplanation:"Entry fee is charged in vault's tokens.",exitFeeExplanation:"Exit fee is charged in vault's tokens.",minDepositUsd:"Minimum deposit in USD.",minDeposit:"Minimum deposit",tokensLockTime:"Purchased tokens will have a {lockTime} lock.",slippageTolerance:"Slippage tolerance",reduceLockupTime:"Reduce lockup time",toggleTokenApprovalAmount:"Toggle between exact and infinite token approval.",auto:"Auto",reduceLockup:"Reduce lockup to {customLockTime} by paying 0.1% fee",max:"Max",allAssets:"All Assets",all:"All",buy:"Buy",sell:"Sell",sellNow:"Sell Now",confirmInWallet:"Please confirm in wallet",pending:"Pending...",approve:"Approve",connectWallet:"Connect Wallet",minimumPurchase:"Minimum purchase is {value}",poolIsInactive:"{poolSymbol} token is no longer active. Please withdraw from them.",poolDepositsAreMaintenance:"{poolSymbol} token is under maintenance. Deposits are temporarily blocked.",exceedsDepositCapacity:"Deposit amount exceeds available {poolSymbol} deposit capacity.",poolWithdrawalsAreMaintenance:"{poolSymbol} token is under maintenance. Withdrawals are temporarily blocked.",poolIsPrivate:"This vault is currently private",confirmMaxSlippage:"Confirm {slippagePercentage}% max slippage",withdrawalLiquidityDisabled:"Intended withdraw value is greater than available liquidity ({value})",withdrawCooldown:"You can sell your {tokenSymbol} tokens in {cooldownEndTime}",termsOfUse:"Terms Of Use",termOfUseDepositListTitle:"Please know the following before depositing",termOfUseDepositAssetSlippage:"When exiting, investors receive single asset or the underlying vault assets. Withdraw slippage can be customized in withdraw settings",termOfUseDepositBugs:"There may be interface bugs on the platform",termOfUseDepositDowntime:"There may be interface downtime (planned and unplanned)",termOfUseDepositAuditRisk:"Smart contracts are audited but a risk is still present",termOfUseDepositAccept:"Accept & Deposit",back:"Back",done:"Done",termOfUseWithdrawAcceptLabel:"I understand and accept the withdraw terms",termOfUseWithdrawPoint1:"Withdrawal requests are intended to settle in USDC. In rare cases where market conditions or high slippage prevent a USDC swap, the order may be settled in the underlying tokens of the respective vault.",termOfUseWithdrawPoint2:"Revoking token approval after placing an order will prevent the order from being executed.",highSlippage:"High Slippage Alert",responsibleHighSlippage:"By proceeding with this trade, you acknowledge and accept the possibility of experiencing high slippage, resulting in a potential difference between the expected and executed price.",highSlippageListTitle:"Please consider the following before confirming",highSlippageQuoteDiff:"Be aware that the final amount of assets you receive may be different from the initially quoted value.",highSlippageRisk:"Ensure that you understand the risks associated with high slippage and are comfortable proceeding with the trade.",confirm:"Confirm",selectToken:"Select token",sendingOrderToWallet:"Sending order to your wallet",settingUpTx:"Setting up transaction",miningTx:"Processing",approveSpending:"Approve spending",pay:"Pay",multiAssetFractions:"pro-rated share of vault underlying assets",swappableAssets:"swappable assets",explorer:"Explorer",as:"As",switchNetwork:"Switch Network",depositAction:"Buy Now",withdrawAction:"Sell Now",unrollAction:"Unroll",unrollAndClaimAction:"Claim",swapAction:"Swap",claimAction:"Claim Without Swap",claimLabel:"Claim Assets",createLimitSellOrder:"Stop order set",swapAndClaimTo:"Swap and claim assets to",orderingLabel:"Ordering",paidLabel:"Paid",soldLabel:"Sold",receivedLabel:"Received",priceLabel:"Price",transactionLabel:"Transaction",limitOrderWithdrawDescription:"You are about to create a withdrawal request. Your vault tokens will be withdrawn within a few minutes.",total:"Total:",showAll:"Show all",hide:"Hide",refreshSwapQuoteTooltip:"Refresh swap quote",tryAgain:"Try again",proceedWithNextStep:"Please proceed with the next step.",aggregatorsLabel:"Swap source",aggregatorsTooltip:"Choose which aggregators to use for your trades.",openNotificationsSettingsLabel:"Enable alerts",addToWallet:"add to wallet",openLimitOrderAfterBuySwitchLabel:"Add Stop Order",stopOrder:"Schedule sell",limitBuy:"Schedule Buy",rate:"Rate",exchangeRate:"Exchange rate",cooldown:"Cooldown",delete:"Delete",withdrawalRequest:"Withdrawal request",pendingWithdrawalRequest:"Pending withdrawal request",deleteWithdrawalRequest:"Delete withdrawal request",insufficientBalance:"Insufficient Balance",expectToReceiveUsdcSoon:"Expect to receive your USDC over the next few minutes",estimated:"estimated",cancel:"Cancel",approveTokensForWithdrawal:"Approve tokens for withdrawal",unrollAssetsToPrepare:"Unroll assets to prepare sell",unrollAndClaimAssets:"Unroll and claim assets",swapToCompleteSell:"Swap to complete sell",success:"Success",approveDepositStep:"1/2 Approve Buy",depositNowStep:"2/2 Buy Now",updateOndoPricesStep:"Refresh Ondo prices",updateOndoPricesHint:"After this transaction is confirmed, the Deposit transaction will be sent to your wallet.",skipSwapAndClaimSymbols:"Skip swap and claim {symbols}",hyperEvmWarningTitle:"Withdrawal Warning",hyperEvmWarningDeposit:"You are depositing into a Hyperliquid managed vault.",hyperEvmWarningWithdraw:"To withdraw, the manager must make withdrawal liquidity available. In the case where the manager does not, you may be unable to withdraw.",hyperEvmWarningTrust:"Only deposit with managers you trust.",hyperEvmUnderstandRisks:"I understand the risks"},Ks=m.createContext(Ys),nl=({children:e,config:t})=>{const n=m.useMemo(()=>({...Ys,...t}),[t]);return o.jsx(Ks.Provider,{value:n,children:e})},E=()=>{const e=m.useContext(Ks);if(!e)throw new Error("TranslationContext is used out of Provider");return e},rl={deposit:"buy",withdraw:"sell"},sl=({tradingType:e})=>{const n=E()[rl[e]];return o.jsx(F.Tab,{className:({selected:r})=>N("dtw-relative dtw-text-[length:var(--panel-tab-font-size,var(--panel-font-size-sm))] dtw-px-[var(--panel-tab-px)] dtw-py-[var(--panel-tab-py)] dtw-font-[var(--panel-tab-font-weight,var(--panel-font-weight-bold))] !dtw-leading-[var(--panel-tab-line-height,var(--panel-line-height))] dtw-outline-0",{"!dtw-text-[color:var(--panel-tab-select-content-color,var(--panel-content-color))]":r,"!dtw-text-[color:var(--panel-tab-content-color,var(--panel-neutral-content-color))] hover:dtw-text-[color:var(--panel-tab-hover-content-color,var(--panel-content-hover-color))]":!r}),children:({selected:r})=>o.jsxs(o.Fragment,{children:[o.jsx("span",{children:n}),r?o.jsx("div",{className:"dtw-flex dtw-items-center dtw-justify-center dtw-absolute dtw-bottom-0 dtw-left-0 dtw-right-0 dtw-h-full dtw-rounded-[var(--panel-radius-secondary)] dtw-bg-[var(--panel-tab-bg,var(--panel-neutral-color))] dtw-shadow-md dtw-pointer-events-none",children:o.jsx("span",{children:n})}):null]})})},H={ERROR:"error",WARNING:"warning",SUCCESS:"success",DEFAULT:"default",CUSTOM:"custom"},G={TERMS_OF_USE:"TERMS_OF_USE",HIGH_SLIPPAGE:"HIGH_SLIPPAGE",TOKEN_SELECT:"TOKEN_SELECT",POOL_SELECT:"POOL_SELECT",TRADING:"TRADING",ERROR_NOTIFICATION:"ERROR_NOTIFICATION",LIMIT_SELLS:"LIMIT_SELLS",LIMIT_BUYS:"LIMIT_BUYS",LIMIT_ORDER_WITHDRAW:"LIMIT_ORDER_WITHDRAW",WITHDRAW_STEPPER:"WITHDRAW_STEPPER",HYPEREVM_WARNING:"HYPEREVM_WARNING"},ol={[H.DEFAULT]:oe.QuestionMarkCircleIcon,[H.ERROR]:oe.ExclamationCircleIcon,[H.SUCCESS]:oe.CheckCircleIcon,[H.WARNING]:oe.ExclamationCircleIcon,[H.CUSTOM]:oe.QuestionMarkCircleIcon},Dn=({tooltipText:e,value:t,label:n,children:r,type:s=H.DEFAULT,className:a,emphasised:i=!1})=>o.jsxs("div",{className:N("dtw-flex dtw-grow dtw-items-center dtw-font-[var(--panel-meta-font-weight,var(--panel-font-weight-light))] dtw-gap-x-1",{"dtw-text-[length:var(--panel-meta-font-size)] dtw-leading-[var(--panel-meta-line-height)] dtw-text-[color:var(--panel-secondary-content-color)]":!i,"dtw-text-[length:var(--panel-meta-emphasised-font-size)] dtw-leading-[var(--panel-meta-emphasised-line-height)] dtw-text-[color:var(--panel-content-color)]":i},a),children:[o.jsxs("div",{className:"dtw-flex dtw-grow dtw-items-start dtw-justify-between",children:[o.jsxs("div",{className:"dtw-flex dtw-items-center dtw-gap-x-1",children:[o.jsx(qt,{text:e,placement:"top",Icon:ol[s],iconClassName:N({"dtw-text-[color:var(--panel-error-content-color)]":s===H.ERROR,"dtw-text-[color:var(--panel-warning-content-color)]":s===H.WARNING})}),o.jsx("p",{className:N({"dtw-text-[color:var(--panel-error-content-color)]":s===H.ERROR,"dtw-text-[color:var(--panel-warning-content-color)]":s===H.WARNING}),children:n})]}),o.jsx("div",{className:N({"dtw-text-[color:var(--panel-error-content-color)]":s===H.ERROR,"dtw-text-[color:var(--panel-warning-content-color)]":s===H.WARNING}),children:t})]}),r]}),ir=({children:e,staticItems:t,collapseItems:n,themeType:r=H.DEFAULT,buttonItemChildren:s})=>{const a=E();return o.jsx("div",{className:"dtw-w-full dtw-flex dtw-flex-col dtw-gap-1",children:o.jsx(F.Disclosure,{children:({open:i})=>o.jsxs(o.Fragment,{children:[t?.map(l=>o.jsx(Dn,{...l},l.label)),o.jsx(F.DisclosureButton,{className:"dtw-p-0 dtw-flex dtw-w-full dtw-justify-between dtw-rounded-[var(--panel-radius-secondary,var(--panel-radius))] hover:dtw-bg-[var(--panel-meta-hover-bg,var(--panel-neutral-color))] focus:dtw-outline-none",children:o.jsxs(Dn,{tooltipText:a.fullReceiveDetails,label:a.tradeDetails,value:"",type:r,emphasised:!0,children:[s,o.jsx(ye.ChevronDownIcon,{className:N("dtw-text-[color:var(--panel-icon-color,var(--panel-content-color))] !dtw-h-[var(--panel-input-token-icon-size,var(--panel-icon-size))] !dtw-w-[var(--panel-input-token-icon-size,var(--panel-icon-size))] sm:dtw-w-[var(--panel-input-token-icon-size-sm,var(--panel-icon-size-sm))] sm:dtw-h-[var(--panel-input-token-icon-size-sm,var(--panel-icon-size-sm))]",{"dtw-rotate-180 dtw-transform":i})})]})}),o.jsx(F.Transition,{show:i,children:o.jsxs(F.DisclosurePanel,{className:"dtw-transition dtw-transform dtw-duration-100 dtw-ease-out data-[closed]:opacity-0 data-[closed]:-dtw-translate-y-2.5 dtw-static dtw-text-[length:var(--panel-label-font-size,var(--panel-font-size-xs))] dtw-leading-[var(--panel-label-line-height,var(--panel-line-height-xs))] dtw-text-[color:var(--panel-secondary-content-color)] dtw-font-[var(--panel-meta-font-weight,var(--panel-font-weight-light))] dtw-rounded-[var(--panel-radius-secondary,var(--panel-radius))] dtw-flex dtw-flex-col dtw-gap-1",children:[n?.map(l=>o.jsx(Dn,{...l},l.label)),e]})})]})})})},Se=({className:e})=>o.jsx("svg",{className:N("dtw-animate-spin dtw-stroke-[color:var(--panel-accent-content-color)]",e),viewBox:"0 0 24 24",fill:"none",xmlns:"http://www.w3.org/2000/svg",children:o.jsx("path",{d:"M12 2C6.47715 2 2 6.47715 2 12C2 17.5228 6.47715 22 12 22C17.5228 22 22 17.5228 22 12C22 9.27455 20.9097 6.80375 19.1414 5",strokeWidth:"2.5",strokeLinecap:"round",strokeLinejoin:"round"})}),al=({children:e})=>o.jsx("div",{className:"dtw-flex dtw-flex-col dtw-gap-[var(--panel-inputs-group-gap,var(--panel-gap))] dtw-px-[var(--panel-inputs-group-px)]",children:e}),il=({children:e})=>o.jsx("div",{className:"dtw-flex dtw-flex-col dtw-gap-[var(--panel-meta-group-gap,var(--panel-gap))] dtw-px-[var(--panel-meta-group-px)] dtw-h-full dtw-relative",children:e}),Yt=({Icon:e,onClick:t,className:n="dtw-h-7 dtw-w-7",containerClassName:r,disabled:s})=>o.jsx("div",{className:N("dtw-group dtw-w-fit dtw-cursor-pointer dtw-self-end dtw-rounded-lg dtw-p-1 hover:dtw-opacity-80",r,{"dtw-pointer-events-none":s}),onClick:t,children:o.jsx(e,{className:N("dtw-text-[color:var(--panel-icon-color)] group-hover:dtw-text-[color:var(--panel-icon-color-hover))]",n)})}),Vr="ondo",ll="https://content-firebaseappcheck.googleapis.com/v1",cl=6e4,Qs=5e3;let me,qr,Qe,Tt,bt;const dl=e=>{const t=e?JSON.stringify(e):void 0;t!==qr&&(qr=t,me=e,Qe=void 0,Tt=void 0,bt=void 0)},Zs=()=>me,ul=(e,t)=>Promise.race([e,new Promise((n,r)=>setTimeout(()=>r(new Error(t)),Qs))]),Xs=async()=>{if(Qe)return Qe;if(!me)return;const{getApp:e,initializeApp:t}=await import("firebase/app"),{firebase:n}=me;try{Qe=t({apiKey:n.apiKey,projectId:n.projectId,appId:n.appId,authDomain:n.authDomain},Vr)}catch{try{Qe=e(Vr)}catch{return}}return Qe},pl=async()=>{if(bt&&bt.expiresAtMs>Date.now()+cl)return bt.value;if(!me)return"";const{firebase:e,recaptcha:t}=me,n=t.debugToken;if(!e.apiKey||!e.projectId||!e.appId||!n)return"";const r=`${ll}/projects/${e.projectId}/apps/${e.appId}:exchangeDebugToken?key=${e.apiKey}`,{token:s,ttl:a}=await w.fetchRequest({url:r,method:"POST",body:{debug_token:n},timeoutMs:Qs}),i=/^([\d.]+)s$/.exec(a??""),l=i?Number(i[1])*1e3:30*60*1e3;return bt={value:s,expiresAtMs:Date.now()+l},s},Js=async()=>{if(Tt)return Tt;if(!w.clientSide||!me)return;const e=me.recaptcha.siteKey;if(!e){console.warn("[OndoAppCheck] recaptcha.siteKey not set — skipping App Check init");return}const t=await Xs();if(!t)return;const{ReCaptchaEnterpriseProvider:n,initializeAppCheck:r}=await import("firebase/app-check");try{Tt=r(t,{provider:new n(e),isTokenAutoRefreshEnabled:!0})}catch(s){console.warn("[OndoAppCheck] initializeAppCheck failed:",s);return}return Tt},ml=()=>{w.clientSide&&me&&(me.recaptcha.debugToken||Js())},wl=async()=>{if(!w.clientSide||!me)return"";try{if(me.recaptcha.debugToken)return await Xs()?await pl():"";const t=await Js();if(!t)return"";const{getToken:n}=await import("firebase/app-check");return(await ul(n(t,!1),"Ondo App Check token timeout")).token}catch(e){return console.warn("[OndoAppCheck] Failed to get token:",e),""}},hl=[{inputs:[{internalType:"address",name:"_pool",type:"address"},{internalType:"uint256",name:"_poolTokenAmount",type:"uint256"},{internalType:"uint256",name:"_slippageTolerance",type:"uint256"}],name:"calculateSwapDataParams",outputs:[{components:[{components:[{internalType:"address",name:"asset",type:"address"},{internalType:"uint256",name:"amount",type:"uint256"}],internalType:"struct ISwapDataConsumingGuard.AssetStructure[]",name:"srcData",type:"tuple[]"},{components:[{internalType:"address",name:"asset",type:"address"},{internalType:"uint256",name:"amount",type:"uint256"}],internalType:"struct ISwapDataConsumingGuard.AssetStructure",name:"dstData",type:"tuple"}],internalType:"struct ISwapDataConsumingGuard.SwapDataParams",name:"swapDataParams",type:"tuple"}],stateMutability:"nonpayable",type:"function"}];class We extends Vs.CustomError{constructor({message:n=u.DEFAULT_ERROR_MESSAGE,link:r,slippage:s,txArgs:a,account:i,onBypass:l,functionName:c}){super(n);Pe(this,"txArgs");Pe(this,"link");Pe(this,"account");Pe(this,"slippage");Pe(this,"functionName");Pe(this,"onBypass");this.link=r,this.txArgs=a,this.account=i,this.slippage=s,this.functionName=c,this.onBypass=l}}class Et extends Vs.CustomError{constructor({message:n,code:r}){super(n);Pe(this,"code");this.code=r}}const gl=async e=>{const n=(e instanceof Response?await e.json().catch(()=>null):w.parseFetchErrorBody(e))?.message;return typeof n=="string"&&n.trim().length>0?n:void 0},rn=async(e,t)=>{const n=await gl(e)??t;throw new Et({message:n})},lr=async()=>{const e=await wl();return e?{"x-firebase-appcheck":e}:{}},cr=()=>{const e=Zs();if(!e)throw new Error("Ondo integration is not configured");return e},fl=async({chainId:e,addresses:t})=>{const{api:n}=cr(),r=await lr();try{return await w.fetchRequest({url:n.priceUpdateUrl,method:"POST",headers:r,body:{chainId:String(e),addresses:t}})}catch(s){return rn(s,"Ondo price update request failed")}},vl=async({chainId:e,addresses:t})=>{const{api:n}=cr();if(!n.getPricesUrl)throw new Error("Ondo getPrices endpoint is not configured");const r=await lr();try{return await w.fetchRequest({url:n.getPricesUrl,method:"POST",headers:r,body:{chainId:String(e),addresses:t},timeoutMs:u.ONDO_PRICES_FETCH_TIMEOUT_MS})}catch(s){return rn(s,"Ondo get-prices request failed")}},eo=async({chainId:e,items:t})=>{const{api:n}=cr(),r=await lr(),s=t.map(({address:a,tokenAmount:i})=>({chainId:String(e),address:a,side:"sell",tokenAmount:i}));try{return await w.fetchRequest({url:n.createAttestationsUrl,method:"POST",headers:r,body:s})}catch(a){return rn(a,"Ondo create-attestations request failed")}},j=()=>{const{address:e,status:t,connector:n,isConnected:r}=_.useAccount();return{account:r?e:void 0,status:t,connector:n,providerName:n?.name,isConnected:r}};function ee(){}const Yr={address:u.AddressZero,symbol:"",decimals:u.DEFAULT_PRECISION,value:""},to=e=>{const t=e?.poolAddress??u.AddressZero,n={address:t,symbol:e?.poolConfigMap?.[t]?.symbol??"",decimals:u.DEFAULT_PRECISION,value:""},r=e?.type??"deposit",s=r==="deposit"?Yr:n,a=r==="deposit"?n:Yr;return{poolAddress:t,poolConfigMap:{...e?.poolConfigMap},settings:{slippage:"auto",isInfiniteAllowance:!1,isMultiAssetWithdrawalEnabled:!0,isMaxSlippageLoading:!1,availableAggregators:[],...e?.settings,selectedAggregators:e?.settings?.selectedAggregators??e?.settings?.availableAggregators??[]},type:r,input:{sendToken:{...s,...e?.input?.sendToken},receiveToken:{...a,...e?.input?.receiveToken}},modal:{isOpen:!1,status:"None",receiveTokens:null,sendTokens:null,...e?.modal},withdrawAction:null,transactions:e?.transactions??[],poolFallbackData:{address:u.AddressZero,...e?.poolFallbackData},customDepositTokensPerChain:e?.customDepositTokensPerChain,defaultChainId:e?.defaultChainId,swapQuoteRefreshTriggered:null}},no=m.createContext({...to({poolAddress:u.AddressZero,poolConfigMap:{}})}),ro=m.createContext({setPoolAddress:ee,setTradingType:ee,updateSendTokenInput:ee,updateReceiveTokenInput:ee,updateTradingSettings:ee,updateTradingModal:ee,updateWithdrawAction:ee,updateTransactions:ee,updatePoolFallbackData:ee,updateCustomDepositTokensPerChain:ee,onTradingSettleError:ee,onTransactionError:ee,onTransactionSuccess:ee,onTransactionEstimationError:ee,onTokenSelector:ee,onLog:ee,onSimulateTransaction:()=>Promise.resolve(null),getSwapQuotes:()=>Promise.resolve(null),updatePoolConfig:ee,addPoolConfig:ee,setSwapQuoteRefreshTriggered:ee,getReferrerAddress:void 0}),Tl=e=>(t,n)=>{switch(n.type){case"SET_POOL_ADDRESS":return{...t,poolAddress:n.payload};case"SET_TRADING_TYPE":return{...t,type:n.payload};case"UPDATE_SEND_TOKEN_INPUT":return{...t,input:{...t.input,sendToken:{...t.input.sendToken,...n.payload}}};case"UPDATE_RECEIVE_TOKEN_INPUT":return{...t,input:{...t.input,receiveToken:{...t.input.receiveToken,...n.payload}}};case"UPDATE_TRADING_SETTINGS":return{...t,settings:{...t.settings,...n.payload}};case"UPDATE_TRADING_MODAL":return{...t,modal:{...t.modal,...n.payload}};case"UPDATE_WITHDRAW_ACTION":return{...t,withdrawAction:n.payload===null?null:{sendToken:{symbol:"",...t.withdrawAction?.sendToken,...n.payload.sendToken},receiveTokens:n.payload.receiveTokens??t.withdrawAction?.receiveTokens??[]}};case"UPDATE_POOL_FALLBACK_DATA":return{...t,poolFallbackData:n.payload};case"UPDATE_POOL_CONFIG":return{...t,poolConfigMap:{...t.poolConfigMap,...Object.entries(n.payload).filter(([r])=>!!t.poolConfigMap?.[r]).reduce((r,[s,a])=>({...r,[s]:{...t.poolConfigMap?.[s],...a}}),t.poolConfigMap)}};case"UPDATE_CUSTOM_DEPOSIT_TOKENS_PER_CHAIN":return{...t,customDepositTokensPerChain:{...t.customDepositTokensPerChain??{},...n.payload}};case"SET_SWAP_QUOTE_REFRESH_TRIGGERED":return{...t,swapQuoteRefreshTriggered:n.payload};case"ADD_POOL_CONFIG":return{...t,poolConfigMap:{...t.poolConfigMap,[n.payload.address]:n.payload}};case"UPDATE_TRADING_TRANSACTIONS":switch(n.payload.type){case"remove":const r=t.transactions.find(a=>a.txHash===n.payload.txHash);return n.payload.status==="success"&&r&&w.logTransactionByActionType({action:r.action,log:e,symbol:r.symbol,chainId:r.chainId,vaultAddress:t.poolAddress}),{...t,transactions:n.payload.txHash?t.transactions.filter(a=>a.txHash!==n.payload.txHash):t.transactions.slice(0,-1)};case"add":return{...t,transactions:[{action:n.payload.action,chainId:n.payload.chainId,txHash:n.payload.txHash,symbol:n.payload.symbol},...t.transactions]};case"update":const s=Math.max(t.transactions.findIndex(({txHash:a})=>a===n.payload.txHash),0);return{...t,transactions:t.transactions.map((a,i)=>i===s?{...a,...n.payload}:a)}}break;default:return t}},bl=({children:e,initialState:t,actions:{onSetPoolAddress:n,onUpdateSendTokenInput:r,onUpdateReceiveTokenInput:s,onUpdateTradingSettings:a,onSetTradingType:i,onUpdateTradingModal:l,onUpdateTransactions:c,onTransactionError:d,onTransactionSuccess:p,onTransactionEstimationError:g,onTokenSelector:h,onLog:f,onSimulateTransaction:v,onTradingSettleError:T,getSwapQuotes:b,getReferrerAddress:A}})=>{const[x,S]=m.useReducer(Tl(f),to(t)),L=m.useCallback(D=>{S({type:"SET_POOL_ADDRESS",payload:D}),n?.(D)},[n]),O=m.useCallback(D=>{S({type:"UPDATE_SEND_TOKEN_INPUT",payload:D}),r?.(D)},[r]),M=m.useCallback(D=>{S({type:"UPDATE_RECEIVE_TOKEN_INPUT",payload:D}),s?.(D)},[s]),P=m.useCallback(D=>{S({type:"UPDATE_TRADING_SETTINGS",payload:D}),a?.(D)},[a]),U=m.useCallback(D=>{S({type:"SET_TRADING_TYPE",payload:D}),i?.(D)},[i]),J=m.useCallback(D=>{S({type:"UPDATE_TRADING_MODAL",payload:D}),l?.(D)},[l]),Y=m.useCallback(D=>{S({type:"UPDATE_WITHDRAW_ACTION",payload:D})},[]),re=m.useCallback(D=>{S({type:"UPDATE_TRADING_TRANSACTIONS",payload:D}),c?.(D)},[c]),ge=m.useCallback(D=>{S({type:"UPDATE_POOL_FALLBACK_DATA",payload:D})},[]),Be=m.useCallback(D=>{S({type:"UPDATE_CUSTOM_DEPOSIT_TOKENS_PER_CHAIN",payload:D})},[]),ft=m.useCallback(D=>{S({type:"UPDATE_POOL_CONFIG",payload:D})},[]),Nn=m.useCallback(D=>{S({type:"ADD_POOL_CONFIG",payload:D})},[]),Pn=m.useCallback(D=>{S({type:"SET_SWAP_QUOTE_REFRESH_TRIGGERED",payload:D})},[]),se=m.useMemo(()=>({setPoolAddress:L,setTradingType:U,updateTradingSettings:P,updateSendTokenInput:O,updateReceiveTokenInput:M,updateTradingModal:J,updateWithdrawAction:Y,updateTransactions:re,updatePoolFallbackData:ge,updateCustomDepositTokensPerChain:Be,onTransactionError:d,onTransactionSuccess:p,onTransactionEstimationError:g,onTokenSelector:h,onLog:f,onSimulateTransaction:v,onTradingSettleError:T,getSwapQuotes:b,updatePoolConfig:ft,addPoolConfig:Nn,setSwapQuoteRefreshTriggered:Pn,getReferrerAddress:A}),[L,U,P,O,M,J,Y,re,ge,Be,d,p,g,h,f,v,T,b,ft,Nn,Pn,A]);return o.jsx(ro.Provider,{value:se,children:o.jsx(no.Provider,{value:x,children:e})})},te=()=>m.useContext(no),W=()=>m.useContext(ro),so=()=>[te().poolAddress,W().setPoolAddress],y=()=>{const{poolAddress:e,poolConfigMap:t}=te();return t[e]??u.EMPTY_POOL_CONFIG},tt=()=>{const{poolConfigMap:e}=te();return m.useMemo(()=>Object.values(e),[e])},Al=e=>{const t=tt();return m.useMemo(()=>t.some(n=>n.address===e),[t,e])},Ge=()=>{const{poolFallbackData:e,poolAddress:t}=te(),n=oo();return[e.address===t?e:{address:t},n]},Ct=()=>{const{settings:{availableAggregators:e,selectedAggregators:t,aggregatorLimitPerChain:n}}=te(),{chainId:r}=y();return m.useMemo(()=>{const s=n?.[r];return s?.length?{effectiveAvailableAggregators:e.filter(a=>s.includes(a)),effectiveSelectedAggregators:t.filter(a=>s.includes(a))}:{effectiveAvailableAggregators:e,effectiveSelectedAggregators:t}},[r,e,t,n])},xl=()=>W().setPoolAddress,yl=()=>W().updateSendTokenInput,Sl=()=>W().updateReceiveTokenInput,El=()=>W().updateTradingSettings,Cl=()=>W().setTradingType,_l=()=>W().updateTradingModal,oo=()=>W().updatePoolFallbackData,ao=()=>W().onTransactionError,Il=()=>W().onTradingSettleError,io=()=>W().onTransactionSuccess,sn=()=>W().onTransactionEstimationError,lo=()=>W().onTokenSelector,ze=()=>W().onLog,co=()=>W().onSimulateTransaction,dr=()=>{const e=W().getSwapQuotes,{effectiveSelectedAggregators:t}=Ct();return m.useCallback(({signal:n,variables:r})=>e({signal:n,variables:{...r,...!!t.length&&{aggregators:t}}}),[e,t])},Nl=()=>W().updatePoolConfig,Pl=()=>W().addPoolConfig,Ol=()=>W().updateCustomDepositTokensPerChain,ur=()=>W().setSwapQuoteRefreshTriggered,uo=()=>W().getReferrerAddress,po=()=>te().input,R=()=>[po().sendToken,W().updateSendTokenInput],B=()=>[po().receiveToken,W().updateReceiveTokenInput],X=()=>[te().settings,W().updateTradingSettings],mo=()=>[te().customDepositTokensPerChain,W().updateCustomDepositTokensPerChain],Q=()=>[te().modal,W().updateTradingModal],_t=()=>[te().withdrawAction,W().updateWithdrawAction],ve=()=>[te().type,W().setTradingType],Le=()=>te().type==="deposit",ne=()=>[te().transactions,W().updateTransactions],Ll=()=>te().defaultChainId,kn=(e,t)=>t.some(({id:n})=>n===e),De=()=>{const{chain:e}=_.useAccount(),{chains:t}=_.useConfig(),{switchChain:n,switchChainAsync:r}=_.useSwitchChain(),s=Ll(),a=e?.id,i=kn(a,t),l=s&&kn(s,t)?s:t[0].id;return{chain:e,isSupported:i,switchNetwork:n,switchNetworkAsync:r,chainId:i?a:void 0,supportedChainId:kn(a,t)?a:l,chains:t}},nt=({tokenAddress:e,ownerAddress:t,spenderAddress:n,chainId:r,skip:s})=>_.useReadContract({address:e,abi:k.erc20Abi,functionName:"allowance",args:[t,n],chainId:r,query:{enabled:!s,refetchInterval:u.DEFAULT_POLLING_INTERVAL}}),Dl=()=>{const{account:e}=j(),[t,n]=m.useState(!1);return m.useEffect(()=>{n(!!e)},[e]),t},pr=()=>{const{connector:e}=j();return e?.id==="rabby"||e?.name==="Rabby Wallet"},mr=e=>_.useBalance({...e,query:{...e?.query,staleTime:u.DEFAULT_POLLING_INTERVAL}});var Ut=typeof globalThis<"u"?globalThis:typeof window<"u"?window:typeof global<"u"?global:typeof self<"u"?self:{};function on(e){return e&&e.__esModule&&Object.prototype.hasOwnProperty.call(e,"default")?e.default:e}function kl(){this.__data__=[],this.size=0}var Rl=kl;function jl(e,t){return e===t||e!==e&&t!==t}var wr=jl,Ml=wr;function Bl(e,t){for(var n=e.length;n--;)if(Ml(e[n][0],t))return n;return-1}var an=Bl,$l=an,Ul=Array.prototype,Fl=Ul.splice;function Wl(e){var t=this.__data__,n=$l(t,e);if(n<0)return!1;var r=t.length-1;return n==r?t.pop():Fl.call(t,n,1),--this.size,!0}var Gl=Wl,zl=an;function Hl(e){var t=this.__data__,n=zl(t,e);return n<0?void 0:t[n][1]}var Vl=Hl,ql=an;function Yl(e){return ql(this.__data__,e)>-1}var Kl=Yl,Ql=an;function Zl(e,t){var n=this.__data__,r=Ql(n,e);return r<0?(++this.size,n.push([e,t])):n[r][1]=t,this}var Xl=Zl,Jl=Rl,ec=Gl,tc=Vl,nc=Kl,rc=Xl;function rt(e){var t=-1,n=e==null?0:e.length;for(this.clear();++t<n;){var r=e[t];this.set(r[0],r[1])}}rt.prototype.clear=Jl;rt.prototype.delete=ec;rt.prototype.get=tc;rt.prototype.has=nc;rt.prototype.set=rc;var ln=rt,sc=ln;function oc(){this.__data__=new sc,this.size=0}var ac=oc;function ic(e){var t=this.__data__,n=t.delete(e);return this.size=t.size,n}var lc=ic;function cc(e){return this.__data__.get(e)}var dc=cc;function uc(e){return this.__data__.has(e)}var pc=uc,mc=typeof Ut=="object"&&Ut&&Ut.Object===Object&&Ut,wo=mc,wc=wo,hc=typeof self=="object"&&self&&self.Object===Object&&self,gc=wc||hc||Function("return this")(),Ee=gc,fc=Ee,vc=fc.Symbol,cn=vc,Kr=cn,ho=Object.prototype,Tc=ho.hasOwnProperty,bc=ho.toString,vt=Kr?Kr.toStringTag:void 0;function Ac(e){var t=Tc.call(e,vt),n=e[vt];try{e[vt]=void 0;var r=!0}catch{}var s=bc.call(e);return r&&(t?e[vt]=n:delete e[vt]),s}var xc=Ac,yc=Object.prototype,Sc=yc.toString;function Ec(e){return Sc.call(e)}var Cc=Ec,Qr=cn,_c=xc,Ic=Cc,Nc="[object Null]",Pc="[object Undefined]",Zr=Qr?Qr.toStringTag:void 0;function Oc(e){return e==null?e===void 0?Pc:Nc:Zr&&Zr in Object(e)?_c(e):Ic(e)}var st=Oc;function Lc(e){var t=typeof e;return e!=null&&(t=="object"||t=="function")}var It=Lc,Dc=st,kc=It,Rc="[object AsyncFunction]",jc="[object Function]",Mc="[object GeneratorFunction]",Bc="[object Proxy]";function $c(e){if(!kc(e))return!1;var t=Dc(e);return t==jc||t==Mc||t==Rc||t==Bc}var go=$c,Uc=Ee,Fc=Uc["__core-js_shared__"],Wc=Fc,Rn=Wc,Xr=function(){var e=/[^.]+$/.exec(Rn&&Rn.keys&&Rn.keys.IE_PROTO||"");return e?"Symbol(src)_1."+e:""}();function Gc(e){return!!Xr&&Xr in e}var zc=Gc,Hc=Function.prototype,Vc=Hc.toString;function qc(e){if(e!=null){try{return Vc.call(e)}catch{}try{return e+""}catch{}}return""}var fo=qc,Yc=go,Kc=zc,Qc=It,Zc=fo,Xc=/[\\^$.*+?()[\]{}|]/g,Jc=/^\[object .+?Constructor\]$/,ed=Function.prototype,td=Object.prototype,nd=ed.toString,rd=td.hasOwnProperty,sd=RegExp("^"+nd.call(rd).replace(Xc,"\\$&").replace(/hasOwnProperty|(function).*?(?=\\\()| for .+?(?=\\\])/g,"$1.*?")+"$");function od(e){if(!Qc(e)||Kc(e))return!1;var t=Yc(e)?sd:Jc;return t.test(Zc(e))}var ad=od;function id(e,t){return e?.[t]}var ld=id,cd=ad,dd=ld;function ud(e,t){var n=dd(e,t);return cd(n)?n:void 0}var ot=ud,pd=ot,md=Ee,wd=pd(md,"Map"),hr=wd,hd=ot,gd=hd(Object,"create"),dn=gd,Jr=dn;function fd(){this.__data__=Jr?Jr(null):{},this.size=0}var vd=fd;function Td(e){var t=this.has(e)&&delete this.__data__[e];return this.size-=t?1:0,t}var bd=Td,Ad=dn,xd="__lodash_hash_undefined__",yd=Object.prototype,Sd=yd.hasOwnProperty;function Ed(e){var t=this.__data__;if(Ad){var n=t[e];return n===xd?void 0:n}return Sd.call(t,e)?t[e]:void 0}var Cd=Ed,_d=dn,Id=Object.prototype,Nd=Id.hasOwnProperty;function Pd(e){var t=this.__data__;return _d?t[e]!==void 0:Nd.call(t,e)}var Od=Pd,Ld=dn,Dd="__lodash_hash_undefined__";function kd(e,t){var n=this.__data__;return this.size+=this.has(e)?0:1,n[e]=Ld&&t===void 0?Dd:t,this}var Rd=kd,jd=vd,Md=bd,Bd=Cd,$d=Od,Ud=Rd;function at(e){var t=-1,n=e==null?0:e.length;for(this.clear();++t<n;){var r=e[t];this.set(r[0],r[1])}}at.prototype.clear=jd;at.prototype.delete=Md;at.prototype.get=Bd;at.prototype.has=$d;at.prototype.set=Ud;var Fd=at,es=Fd,Wd=ln,Gd=hr;function zd(){this.size=0,this.__data__={hash:new es,map:new(Gd||Wd),string:new es}}var Hd=zd;function Vd(e){var t=typeof e;return t=="string"||t=="number"||t=="symbol"||t=="boolean"?e!=="__proto__":e===null}var qd=Vd,Yd=qd;function Kd(e,t){var n=e.__data__;return Yd(t)?n[typeof t=="string"?"string":"hash"]:n.map}var un=Kd,Qd=un;function Zd(e){var t=Qd(this,e).delete(e);return this.size-=t?1:0,t}var Xd=Zd,Jd=un;function eu(e){return Jd(this,e).get(e)}var tu=eu,nu=un;function ru(e){return nu(this,e).has(e)}var su=ru,ou=un;function au(e,t){var n=ou(this,e),r=n.size;return n.set(e,t),this.size+=n.size==r?0:1,this}var iu=au,lu=Hd,cu=Xd,du=tu,uu=su,pu=iu;function it(e){var t=-1,n=e==null?0:e.length;for(this.clear();++t<n;){var r=e[t];this.set(r[0],r[1])}}it.prototype.clear=lu;it.prototype.delete=cu;it.prototype.get=du;it.prototype.has=uu;it.prototype.set=pu;var gr=it,mu=ln,wu=hr,hu=gr,gu=200;function fu(e,t){var n=this.__data__;if(n instanceof mu){var r=n.__data__;if(!wu||r.length<gu-1)return r.push([e,t]),this.size=++n.size,this;n=this.__data__=new hu(r)}return n.set(e,t),this.size=n.size,this}var vu=fu,Tu=ln,bu=ac,Au=lc,xu=dc,yu=pc,Su=vu;function lt(e){var t=this.__data__=new Tu(e);this.size=t.size}lt.prototype.clear=bu;lt.prototype.delete=Au;lt.prototype.get=xu;lt.prototype.has=yu;lt.prototype.set=Su;var vo=lt,Eu="__lodash_hash_undefined__";function Cu(e){return this.__data__.set(e,Eu),this}var _u=Cu;function Iu(e){return this.__data__.has(e)}var Nu=Iu,Pu=gr,Ou=_u,Lu=Nu;function Kt(e){var t=-1,n=e==null?0:e.length;for(this.__data__=new Pu;++t<n;)this.add(e[t])}Kt.prototype.add=Kt.prototype.push=Ou;Kt.prototype.has=Lu;var To=Kt;function Du(e,t){for(var n=-1,r=e==null?0:e.length;++n<r;)if(t(e[n],n,e))return!0;return!1}var ku=Du;function Ru(e,t){return e.has(t)}var bo=Ru,ju=To,Mu=ku,Bu=bo,$u=1,Uu=2;function Fu(e,t,n,r,s,a){var i=n&$u,l=e.length,c=t.length;if(l!=c&&!(i&&c>l))return!1;var d=a.get(e),p=a.get(t);if(d&&p)return d==t&&p==e;var g=-1,h=!0,f=n&Uu?new ju:void 0;for(a.set(e,t),a.set(t,e);++g<l;){var v=e[g],T=t[g];if(r)var b=i?r(T,v,g,t,e,a):r(v,T,g,e,t,a);if(b!==void 0){if(b)continue;h=!1;break}if(f){if(!Mu(t,function(A,x){if(!Bu(f,x)&&(v===A||s(v,A,n,r,a)))return f.push(x)})){h=!1;break}}else if(!(v===T||s(v,T,n,r,a))){h=!1;break}}return a.delete(e),a.delete(t),h}var Ao=Fu,Wu=Ee,Gu=Wu.Uint8Array,zu=Gu;function Hu(e){var t=-1,n=Array(e.size);return e.forEach(function(r,s){n[++t]=[s,r]}),n}var Vu=Hu;function qu(e){var t=-1,n=Array(e.size);return e.forEach(function(r){n[++t]=r}),n}var fr=qu,ts=cn,ns=zu,Yu=wr,Ku=Ao,Qu=Vu,Zu=fr,Xu=1,Ju=2,ep="[object Boolean]",tp="[object Date]",np="[object Error]",rp="[object Map]",sp="[object Number]",op="[object RegExp]",ap="[object Set]",ip="[object String]",lp="[object Symbol]",cp="[object ArrayBuffer]",dp="[object DataView]",rs=ts?ts.prototype:void 0,jn=rs?rs.valueOf:void 0;function up(e,t,n,r,s,a,i){switch(n){case dp:if(e.byteLength!=t.byteLength||e.byteOffset!=t.byteOffset)return!1;e=e.buffer,t=t.buffer;case cp:return!(e.byteLength!=t.byteLength||!a(new ns(e),new ns(t)));case ep:case tp:case sp:return Yu(+e,+t);case np:return e.name==t.name&&e.message==t.message;case op:case ip:return e==t+"";case rp:var l=Qu;case ap:var c=r&Xu;if(l||(l=Zu),e.size!=t.size&&!c)return!1;var d=i.get(e);if(d)return d==t;r|=Ju,i.set(e,t);var p=Ku(l(e),l(t),r,s,a,i);return i.delete(e),p;case lp:if(jn)return jn.call(e)==jn.call(t)}return!1}var pp=up;function mp(e,t){for(var n=-1,r=t.length,s=e.length;++n<r;)e[s+n]=t[n];return e}var wp=mp,hp=Array.isArray,ke=hp,gp=wp,fp=ke;function vp(e,t,n){var r=t(e);return fp(e)?r:gp(r,n(e))}var Tp=vp;function bp(e,t){for(var n=-1,r=e==null?0:e.length,s=0,a=[];++n<r;){var i=e[n];t(i,n,e)&&(a[s++]=i)}return a}var Ap=bp;function xp(){return[]}var yp=xp,Sp=Ap,Ep=yp,Cp=Object.prototype,_p=Cp.propertyIsEnumerable,ss=Object.getOwnPropertySymbols,Ip=ss?function(e){return e==null?[]:(e=Object(e),Sp(ss(e),function(t){return _p.call(e,t)}))}:Ep,Np=Ip;function Pp(e,t){for(var n=-1,r=Array(e);++n<e;)r[n]=t(n);return r}var Op=Pp;function Lp(e){return e!=null&&typeof e=="object"}var ct=Lp,Dp=st,kp=ct,Rp="[object Arguments]";function jp(e){return kp(e)&&Dp(e)==Rp}var Mp=jp,os=Mp,Bp=ct,xo=Object.prototype,$p=xo.hasOwnProperty,Up=xo.propertyIsEnumerable,Fp=os(function(){return arguments}())?os:function(e){return Bp(e)&&$p.call(e,"callee")&&!Up.call(e,"callee")},yo=Fp,Qt={exports:{}};function Wp(){return!1}var Gp=Wp;Qt.exports;(function(e,t){var n=Ee,r=Gp,s=t&&!t.nodeType&&t,a=s&&!0&&e&&!e.nodeType&&e,i=a&&a.exports===s,l=i?n.Buffer:void 0,c=l?l.isBuffer:void 0,d=c||r;e.exports=d})(Qt,Qt.exports);var So=Qt.exports,zp=9007199254740991,Hp=/^(?:0|[1-9]\d*)$/;function Vp(e,t){var n=typeof e;return t=t??zp,!!t&&(n=="number"||n!="symbol"&&Hp.test(e))&&e>-1&&e%1==0&&e<t}var vr=Vp,qp=9007199254740991;function Yp(e){return typeof e=="number"&&e>-1&&e%1==0&&e<=qp}var Tr=Yp,Kp=st,Qp=Tr,Zp=ct,Xp="[object Arguments]",Jp="[object Array]",em="[object Boolean]",tm="[object Date]",nm="[object Error]",rm="[object Function]",sm="[object Map]",om="[object Number]",am="[object Object]",im="[object RegExp]",lm="[object Set]",cm="[object String]",dm="[object WeakMap]",um="[object ArrayBuffer]",pm="[object DataView]",mm="[object Float32Array]",wm="[object Float64Array]",hm="[object Int8Array]",gm="[object Int16Array]",fm="[object Int32Array]",vm="[object Uint8Array]",Tm="[object Uint8ClampedArray]",bm="[object Uint16Array]",Am="[object Uint32Array]",K={};K[mm]=K[wm]=K[hm]=K[gm]=K[fm]=K[vm]=K[Tm]=K[bm]=K[Am]=!0;K[Xp]=K[Jp]=K[um]=K[em]=K[pm]=K[tm]=K[nm]=K[rm]=K[sm]=K[om]=K[am]=K[im]=K[lm]=K[cm]=K[dm]=!1;function xm(e){return Zp(e)&&Qp(e.length)&&!!K[Kp(e)]}var ym=xm;function Sm(e){return function(t){return e(t)}}var Em=Sm,Zt={exports:{}};Zt.exports;(function(e,t){var n=wo,r=t&&!t.nodeType&&t,s=r&&!0&&e&&!e.nodeType&&e,a=s&&s.exports===r,i=a&&n.process,l=function(){try{var c=s&&s.require&&s.require("util").types;return c||i&&i.binding&&i.binding("util")}catch{}}();e.exports=l})(Zt,Zt.exports);var Cm=Zt.exports,_m=ym,Im=Em,as=Cm,is=as&&as.isTypedArray,Nm=is?Im(is):_m,Eo=Nm,Pm=Op,Om=yo,Lm=ke,Dm=So,km=vr,Rm=Eo,jm=Object.prototype,Mm=jm.hasOwnProperty;function Bm(e,t){var n=Lm(e),r=!n&&Om(e),s=!n&&!r&&Dm(e),a=!n&&!r&&!s&&Rm(e),i=n||r||s||a,l=i?Pm(e.length,String):[],c=l.length;for(var d in e)(t||Mm.call(e,d))&&!(i&&(d=="length"||s&&(d=="offset"||d=="parent")||a&&(d=="buffer"||d=="byteLength"||d=="byteOffset")||km(d,c)))&&l.push(d);return l}var $m=Bm,Um=Object.prototype;function Fm(e){var t=e&&e.constructor,n=typeof t=="function"&&t.prototype||Um;return e===n}var Wm=Fm;function Gm(e,t){return function(n){return e(t(n))}}var zm=Gm,Hm=zm,Vm=Hm(Object.keys,Object),qm=Vm,Ym=Wm,Km=qm,Qm=Object.prototype,Zm=Qm.hasOwnProperty;function Xm(e){if(!Ym(e))return Km(e);var t=[];for(var n in Object(e))Zm.call(e,n)&&n!="constructor"&&t.push(n);return t}var Jm=Xm,ew=go,tw=Tr;function nw(e){return e!=null&&tw(e.length)&&!ew(e)}var Co=nw,rw=$m,sw=Jm,ow=Co;function aw(e){return ow(e)?rw(e):sw(e)}var br=aw,iw=Tp,lw=Np,cw=br;function dw(e){return iw(e,cw,lw)}var uw=dw,ls=uw,pw=1,mw=Object.prototype,ww=mw.hasOwnProperty;function hw(e,t,n,r,s,a){var i=n&pw,l=ls(e),c=l.length,d=ls(t),p=d.length;if(c!=p&&!i)return!1;for(var g=c;g--;){var h=l[g];if(!(i?h in t:ww.call(t,h)))return!1}var f=a.get(e),v=a.get(t);if(f&&v)return f==t&&v==e;var T=!0;a.set(e,t),a.set(t,e);for(var b=i;++g<c;){h=l[g];var A=e[h],x=t[h];if(r)var S=i?r(x,A,h,t,e,a):r(A,x,h,e,t,a);if(!(S===void 0?A===x||s(A,x,n,r,a):S)){T=!1;break}b||(b=h=="constructor")}if(T&&!b){var L=e.constructor,O=t.constructor;L!=O&&"constructor"in e&&"constructor"in t&&!(typeof L=="function"&&L instanceof L&&typeof O=="function"&&O instanceof O)&&(T=!1)}return a.delete(e),a.delete(t),T}var gw=hw,fw=ot,vw=Ee,Tw=fw(vw,"DataView"),bw=Tw,Aw=ot,xw=Ee,yw=Aw(xw,"Promise"),Sw=yw,Ew=ot,Cw=Ee,_w=Ew(Cw,"Set"),_o=_w,Iw=ot,Nw=Ee,Pw=Iw(Nw,"WeakMap"),Ow=Pw,Kn=bw,Qn=hr,Zn=Sw,Xn=_o,Jn=Ow,Io=st,dt=fo,cs="[object Map]",Lw="[object Object]",ds="[object Promise]",us="[object Set]",ps="[object WeakMap]",ms="[object DataView]",Dw=dt(Kn),kw=dt(Qn),Rw=dt(Zn),jw=dt(Xn),Mw=dt(Jn),$e=Io;(Kn&&$e(new Kn(new ArrayBuffer(1)))!=ms||Qn&&$e(new Qn)!=cs||Zn&&$e(Zn.resolve())!=ds||Xn&&$e(new Xn)!=us||Jn&&$e(new Jn)!=ps)&&($e=function(e){var t=Io(e),n=t==Lw?e.constructor:void 0,r=n?dt(n):"";if(r)switch(r){case Dw:return ms;case kw:return cs;case Rw:return ds;case jw:return us;case Mw:return ps}return t});var Bw=$e,Mn=vo,$w=Ao,Uw=pp,Fw=gw,ws=Bw,hs=ke,gs=So,Ww=Eo,Gw=1,fs="[object Arguments]",vs="[object Array]",Ft="[object Object]",zw=Object.prototype,Ts=zw.hasOwnProperty;function Hw(e,t,n,r,s,a){var i=hs(e),l=hs(t),c=i?vs:ws(e),d=l?vs:ws(t);c=c==fs?Ft:c,d=d==fs?Ft:d;var p=c==Ft,g=d==Ft,h=c==d;if(h&&gs(e)){if(!gs(t))return!1;i=!0,p=!1}if(h&&!p)return a||(a=new Mn),i||Ww(e)?$w(e,t,n,r,s,a):Uw(e,t,c,n,r,s,a);if(!(n&Gw)){var f=p&&Ts.call(e,"__wrapped__"),v=g&&Ts.call(t,"__wrapped__");if(f||v){var T=f?e.value():e,b=v?t.value():t;return a||(a=new Mn),s(T,b,n,r,a)}}return h?(a||(a=new Mn),Fw(e,t,n,r,s,a)):!1}var Vw=Hw,qw=Vw,bs=ct;function No(e,t,n,r,s){return e===t?!0:e==null||t==null||!bs(e)&&!bs(t)?e!==e&&t!==t:qw(e,t,n,r,No,s)}var Po=No,Yw=vo,Kw=Po,Qw=1,Zw=2;function Xw(e,t,n,r){var s=n.length,a=s,i=!r;if(e==null)return!a;for(e=Object(e);s--;){var l=n[s];if(i&&l[2]?l[1]!==e[l[0]]:!(l[0]in e))return!1}for(;++s<a;){l=n[s];var c=l[0],d=e[c],p=l[1];if(i&&l[2]){if(d===void 0&&!(c in e))return!1}else{var g=new Yw;if(r)var h=r(d,p,c,e,t,g);if(!(h===void 0?Kw(p,d,Qw|Zw,r,g):h))return!1}}return!0}var Jw=Xw,eh=It;function th(e){return e===e&&!eh(e)}var Oo=th,nh=Oo,rh=br;function sh(e){for(var t=rh(e),n=t.length;n--;){var r=t[n],s=e[r];t[n]=[r,s,nh(s)]}return t}var oh=sh;function ah(e,t){return function(n){return n==null?!1:n[e]===t&&(t!==void 0||e in Object(n))}}var Lo=ah,ih=Jw,lh=oh,ch=Lo;function dh(e){var t=lh(e);return t.length==1&&t[0][2]?ch(t[0][0],t[0][1]):function(n){return n===e||ih(n,e,t)}}var uh=dh,ph=st,mh=ct,wh="[object Symbol]";function hh(e){return typeof e=="symbol"||mh(e)&&ph(e)==wh}var pn=hh,gh=ke,fh=pn,vh=/\.|\[(?:[^[\]]*|(["'])(?:(?!\1)[^\\]|\\.)*?\1)\]/,Th=/^\w*$/;function bh(e,t){if(gh(e))return!1;var n=typeof e;return n=="number"||n=="symbol"||n=="boolean"||e==null||fh(e)?!0:Th.test(e)||!vh.test(e)||t!=null&&e in Object(t)}var Ar=bh,Do=gr,Ah="Expected a function";function xr(e,t){if(typeof e!="function"||t!=null&&typeof t!="function")throw new TypeError(Ah);var n=function(){var r=arguments,s=t?t.apply(this,r):r[0],a=n.cache;if(a.has(s))return a.get(s);var i=e.apply(this,r);return n.cache=a.set(s,i)||a,i};return n.cache=new(xr.Cache||Do),n}xr.Cache=Do;var xh=xr,yh=xh,Sh=500;function Eh(e){var t=yh(e,function(r){return n.size===Sh&&n.clear(),r}),n=t.cache;return t}var Ch=Eh,_h=Ch,Ih=/[^.[\]]+|\[(?:(-?\d+(?:\.\d+)?)|(["'])((?:(?!\2)[^\\]|\\.)*?)\2)\]|(?=(?:\.|\[\])(?:\.|\[\]|$))/g,Nh=/\\(\\)?/g,Ph=_h(function(e){var t=[];return e.charCodeAt(0)===46&&t.push(""),e.replace(Ih,function(n,r,s,a){t.push(s?a.replace(Nh,"$1"):r||n)}),t}),Oh=Ph;function Lh(e,t){for(var n=-1,r=e==null?0:e.length,s=Array(r);++n<r;)s[n]=t(e[n],n,e);return s}var Dh=Lh,As=cn,kh=Dh,Rh=ke,jh=pn,xs=As?As.prototype:void 0,ys=xs?xs.toString:void 0;function ko(e){if(typeof e=="string")return e;if(Rh(e))return kh(e,ko)+"";if(jh(e))return ys?ys.call(e):"";var t=e+"";return t=="0"&&1/e==-1/0?"-0":t}var Mh=ko,Bh=Mh;function $h(e){return e==null?"":Bh(e)}var Uh=$h,Fh=ke,Wh=Ar,Gh=Oh,zh=Uh;function Hh(e,t){return Fh(e)?e:Wh(e,t)?[e]:Gh(zh(e))}var Ro=Hh,Vh=pn;function qh(e){if(typeof e=="string"||Vh(e))return e;var t=e+"";return t=="0"&&1/e==-1/0?"-0":t}var mn=qh,Yh=Ro,Kh=mn;function Qh(e,t){t=Yh(t,e);for(var n=0,r=t.length;e!=null&&n<r;)e=e[Kh(t[n++])];return n&&n==r?e:void 0}var jo=Qh,Zh=jo;function Xh(e,t,n){var r=e==null?void 0:Zh(e,t);return r===void 0?n:r}var Jh=Xh;function eg(e,t){return e!=null&&t in Object(e)}var tg=eg,ng=Ro,rg=yo,sg=ke,og=vr,ag=Tr,ig=mn;function lg(e,t,n){t=ng(t,e);for(var r=-1,s=t.length,a=!1;++r<s;){var i=ig(t[r]);if(!(a=e!=null&&n(e,i)))break;e=e[i]}return a||++r!=s?a:(s=e==null?0:e.length,!!s&&ag(s)&&og(i,s)&&(sg(e)||rg(e)))}var cg=lg,dg=tg,ug=cg;function pg(e,t){return e!=null&&ug(e,t,dg)}var mg=pg,wg=Po,hg=Jh,gg=mg,fg=Ar,vg=Oo,Tg=Lo,bg=mn,Ag=1,xg=2;function yg(e,t){return fg(e)&&vg(t)?Tg(bg(e),t):function(n){var r=hg(n,e);return r===void 0&&r===t?gg(n,e):wg(t,r,Ag|xg)}}var Sg=yg;function Eg(e){return e}var Cg=Eg;function _g(e){return function(t){return t?.[e]}}var Ig=_g,Ng=jo;function Pg(e){return function(t){return Ng(t,e)}}var Og=Pg,Lg=Ig,Dg=Og,kg=Ar,Rg=mn;function jg(e){return kg(e)?Lg(Rg(e)):Dg(e)}var Mg=jg,Bg=uh,$g=Sg,Ug=Cg,Fg=ke,Wg=Mg;function Gg(e){return typeof e=="function"?e:e==null?Ug:typeof e=="object"?Fg(e)?$g(e[0],e[1]):Bg(e):Wg(e)}var Mo=Gg;function zg(e){return function(t,n,r){for(var s=-1,a=Object(t),i=r(t),l=i.length;l--;){var c=i[e?l:++s];if(n(a[c],c,a)===!1)break}return t}}var Hg=zg,Vg=Hg,qg=Vg(),Yg=qg,Kg=Yg,Qg=br;function Zg(e,t){return e&&Kg(e,t,Qg)}var Xg=Zg,Jg=Xg;function ef(e,t,n,r){return Jg(e,function(s,a,i){t(r,n(s),a,i)}),r}var tf=ef,nf=tf;function rf(e,t){return function(n,r){return nf(n,e,t(r),{})}}var sf=rf,of=Mo,af=sf,Bo=Object.prototype,lf=Bo.hasOwnProperty,cf=Bo.toString,df=af(function(e,t,n){t!=null&&typeof t.toString!="function"&&(t=cf.call(t)),lf.call(e,t)?e[t].push(n):e[t]=[n]},of),uf=df;const pf=on(uf),Ze="Canceled by user",mf={"exceeds the configured cap":"Please try using a different RPC for your wallet.","denied transaction":Ze,"user rejected the transaction":Ze,"user rejected transaction":Ze,"user rejected the request":Ze,"user canceled":Ze,"not enough available balance":"Attempting to withdraw a balance that exceeds the liquidity currently accessible."},wf=pf(mf);wf[Ze];const $o=e=>typeof e=="object"&&e!==null&&"message"in e&&typeof e.message=="string",Uo=e=>{if($o(e))return e;try{return new Error(JSON.stringify(e))}catch{return new Error(String(e))}},Fo=e=>Uo(e).message,hf=async()=>{},Bn=e=>{const t=e[e.length-1],n=typeof t=="object"&&t!==null&&("value"in t||"gas"in t),r=n?t:{},s=n?e.slice(0,-1):e;return{transactionOverrides:r,argumentsWithoutOverrides:s}},de=({functionName:e,dynamicContractAddress:t,contractId:n,onSettled:r})=>{const{account:s}=j(),{chainId:a,supportedChainId:i}=De(),l=_.useWalletClient({chainId:a}),c=_.usePublicClient({chainId:a}),d=w.getContractAbiById(n),p=t??w.getContractAddressById(n,a??i),g=co(),[{isForceSendEnabled:h,forceSendGas:f}]=X(),{writeContract:v}=_.useWriteContract({mutation:{onSettled:r}}),T=m.useCallback(async(...x)=>{try{const{argumentsWithoutOverrides:S,transactionOverrides:L}=Bn(x),O=await c?.estimateContractGas({address:p,abi:d,functionName:e,args:S,account:s??u.AddressZero,gas:L.gas,value:L.value});if(!O||!a||O===BigInt(0))return{error:u.GAS_ESTIMATION_ERROR,value:BigInt(0)};const M=Math.round(Number(O)*u.GAS_LIMIT_BUFFER_COEFF),P=u.MAX_GAS_LIMIT_MAP[a]??M,U=BigInt(Math.min(P,M));return console.debug(`[core-ui-kit]: estimated gas limit: ${Number(O)}`),{error:"",value:U}}catch(S){return console.error(`Gas estimate error on ${e}`,S),{error:S?.message??S?.shortMessage??S.error?.data?.message??S.data?.message??u.GAS_ESTIMATION_ERROR,value:BigInt(0)}}},[s,a,c,e,p,d]),b=m.useCallback(async(...x)=>{try{if(!g)return{data:null,error:u.DEFAULT_SIMULATION_ERROR};if(!c)return{data:null,error:"Client is not defined"};const{argumentsWithoutOverrides:S,transactionOverrides:L}=Bn(x),O=k.encodeFunctionData({abi:d,functionName:e,args:S});if(s&&O){const M=await g({chainId:a??i,from:s,to:p,input:O,gas:u.MAX_GAS_LIMIT_MAP[a??i]??0,value:L.value?.toString()});return{data:M,error:M?.simulation.error_message}}return{data:null,error:u.DEFAULT_SIMULATION_ERROR}}catch(S){return console.debug("Failed to simulate:",S),{data:null,error:Fo(S)}}},[s,a,c,d,p,e,g,i]),A=m.useCallback(async(...x)=>{const{argumentsWithoutOverrides:S,transactionOverrides:L}=Bn(x);if(L.gas)return v({address:p,abi:d,functionName:e,chainId:a,args:S,...L});const{value:O,error:M}=await T(...x);if(M){if(h){const U=BigInt(f??u.MAX_GAS_LIMIT_MAP[a??i]??u.DEFAULT_MAX_GAS_LIMIT);return console.debug(`[core-ui-kit]: force sending tx with gas: ${U}`),v({address:p,abi:d,functionName:e,chainId:a,args:S,...L,gas:U})}const{data:P}=await Promise.race([b(...x),new Promise(U=>setTimeout(U,u.DEFAULT_PROMISE_TIMEOUT_MS,{data:null,error:u.SIMULATION_TIMEOUT_ERROR}))]);throw new We({message:M,link:P?.link,txArgs:x,account:s,functionName:e,onBypass:()=>l?.data?.writeContract({address:p,abi:d,functionName:e,account:s,chainId:a,args:S,...L,gas:BigInt(u.MAX_GAS_LIMIT_MAP[a??i]??0)})})}return console.debug(`[core-ui-kit]: gas limit to use: ${O}`),v({address:p,abi:d,functionName:e,chainId:a,args:S,...L,gas:O})},[T,v,b,s,e,l?.data,p,d,a,i,h,f]);return{send:a&&c?A:hf,estimate:T}},Wo=e=>_.useEstimateFeesPerGas({...e,query:{...e?.query,staleTime:3e4}}),wn=e=>{m.useEffect(()=>{e?.forEach(({error:t,status:n})=>{n==="failure"&&w.logContractErrorOnce(t)})},[e])},yr=({error:e,status:t})=>{m.useEffect(()=>{t==="failure"&&w.logContractErrorOnce(e)},[e,t])},hn=async({functionName:e,address:t,abi:n,args:r,publicClient:s})=>(await s?.simulateContract({address:t,abi:n,functionName:e,args:r}))?.result,gf=({disabled:e,functionName:t,address:n,abi:r,args:s,chainId:a,refetchInterval:i})=>{const l=_.usePublicClient({chainId:a});return fe.useQuery({queryKey:[{functionName:t,address:n,args:s,chainId:a}],queryFn:async({queryKey:[c]})=>{if(c)return await hn({address:n,abi:r,functionName:c.functionName,args:c.args,publicClient:l})},enabled:!e&&!!a&&!w.isZeroAddress(n)&&!!t,refetchInterval:i})},Xt=({queryKey:e,watch:t=!0})=>{const n=fe.useQueryClient(),{data:r}=_.useBlockNumber({query:{refetchInterval:u.SHORTEN_POLLING_INTERVAL}});m.useEffect(()=>{t&&n.refetchQueries({queryKey:e,stale:!0})},[t,r])},gn="limitOrders",Sr="getAllLimitOrderIds",Er=0,Go="100",ff=1,vf=5,Tf=2,bf=["balanceOf","getFundSummary","getFundComposition","withdrawalContracts","getTrackedAssets","getAssetPrice","allowance","getExitRemainingCooldown","tokenPrice","limitOrders","calculateAvailableManagerFee",gn,Sr],Af=["allowance"],Ss=(e,t)=>e[0]==="readContract"?t.includes(e?.[1]?.functionName??""):e[0]==="readContracts"?!!e[1]?.contracts?.some(({functionName:r})=>t.includes(r??"")):!1,ut=()=>{const e=fe.useQueryClient(),t=m.useCallback(()=>{e.invalidateQueries({predicate:({queryKey:r})=>Ss(r,Af)})},[e]),n=m.useCallback(()=>{e.invalidateQueries({predicate:({queryKey:r})=>Ss(r,bf)})},[e]);return{invalidateAllowanceQueries:t,invalidateTradingQueries:n}},xf={"Lend/Borrow V2":"aave","Lend/Borrow V3":"aave","Lyra Options":"lyra",ULP:"uni"};function yf(e){const t=xf[e];if(t)return t;const n=e.toLowerCase();return n.includes("bear")?"torosbear":n.includes("bull")?"torosbull":n}const Cr=e=>e?`https://raw.githubusercontent.com/dhedge/crypto-icons/main/icons/${yf(e)}.png`:"",zo={countryCode:null,isSanctioned:!1,depositQuoteDiffWarningThreshold:1.5,depositQuoteDiffErrorThreshold:3,defaultWithdrawSlippage:u.DEFAULT_WITHDRAW_SLIPPAGE,defaultLockTime:u.DEFAULT_LOCK_TIME,defaultNoSwapMinDepositAmountGap:u.DEFAULT_NO_SWAP_MIN_DEPOSIT_AMOUNT_GAP,defaultSwapTransactionSlippage:u.DEFAULT_SWAP_TRANSACTION_SLIPPAGE,defaultNotificationDuration:u.DEFAULT_NOTIFICATION_DURATION_MS,stablePrecision:3,defaultPrecision:6,termsOfUseAccepted:!0,standalone:!0,isAllAssetsWithdrawOptionDefault:!1,chainConfig:{[Z.mainnet.id]:{name:"Ethereum",iconPath:""},[Z.arbitrum.id]:{name:"Arbitrum",iconPath:""},[Z.optimism.id]:{name:"Optimism",iconPath:""},[Z.polygon.id]:{name:"Polygon",iconPath:""},[Z.base.id]:{name:"Base",iconPath:""},[Z.hyperEvm.id]:{name:"HyperEVM",iconPath:""}},getFallbackIconPath:Cr,minLimitOrderValue:0,limitOrderThemeConfig:{}},Sf=()=>{const{connect:e}=_.useConnect(),t=m.useCallback(()=>e({connector:el.injected({shimDisconnect:!0})}),[e]),n=m.useCallback(async()=>(console.log("terms of use were accepted. Assume `termsOfUseAccepted` config value switch to true"),Promise.resolve(!0)),[]);return{onConnect:t,onAcceptTermsOfUse:n}},Ef={params:{...zo},actions:{onConnect:()=>{},onAcceptTermsOfUse:()=>Promise.resolve(!0)},ondo:void 0},Ho=m.createContext(Ef),Vo=({children:e,config:t})=>{const n=Sf(),r=m.useMemo(()=>({params:{...zo,...t?.params},actions:{...n,...t?.actions},ondo:t?.ondo}),[t,n]);return m.useEffect(()=>{dl(r.ondo),r.ondo&&ml()},[r.ondo]),m.useEffect(()=>{w.ensureContractErrorRegistryLoaded()},[]),o.jsx(Ho.Provider,{value:r,children:e})},_r=()=>{const e=m.useContext(Ho);if(!e)throw new Error("ConfigContext is used out of Provider");return e},q=()=>_r().params,Ir=()=>_r().actions,fn=()=>!!_r().ondo,Nr=()=>{const{defaultWithdrawSlippage:e}=q(),{chainId:t}=y();return w.isNumberType(e)?e:e[t]??u.DEFAULT_WITHDRAW_SLIPPAGE},Pr=()=>{const{defaultSwapTransactionSlippage:e}=q(),{chainId:t}=y();return w.isNumberType(e)?e:e[t]??u.DEFAULT_SWAP_TRANSACTION_SLIPPAGE},Cf=({children:e,onClose:t})=>{const{defaultNotificationDuration:n}=q();return m.useEffect(()=>{const r=s=>{s.key==="Escape"&&t?.()};return window.addEventListener("keydown",r),()=>{window.removeEventListener("keydown",r)}},[t]),m.useEffect(()=>{const r=setTimeout(()=>{t?.()},n);return()=>{clearTimeout(r)}},[n,t]),o.jsx("div",{className:"dtw-p-4 dtw-absolute dtw-top-0 dtw-inset-x-0 dtw-rounded-xl dtw-bg-[var(--panel-notification-bg,var(--panel-secondary-color))]",children:o.jsxs("div",{className:"dtw-flex dtw-justify-between dtw-items-center",children:[o.jsx("div",{children:e}),!!t&&o.jsx(Yt,{Icon:Yn.XMarkIcon,onClick:t,className:"dtw-w-6 dtw-h-6",containerClassName:"dtw-self-center"})]})})},_f=({children:e,className:t,transparent:n=!1,centered:r=!0,onClose:s,noPadding:a,onBack:i})=>(m.useEffect(()=>{const l=c=>{c.key==="Escape"&&s?.()};return window.addEventListener("keydown",l),()=>{window.removeEventListener("keydown",l)}},[s]),o.jsx("div",{className:N("dtw-absolute dtw-top-0 dtw-inset-0 dtw-rounded-xl dtw-backdrop-blur-md dtw-backdrop-brightness-75 dtw-backdrop-filter",{"dtw-p-1":!a}),children:o.jsxs("div",{className:N("dtw-flex dtw-flex-col dtw-rounded-xl dtw-p-4 dtw-h-full",t,{"dtw-bg-[var(--panel-overlay-bg)]":!n,"dtw-items-center dtw-justify-center":r}),children:[e,!!i&&o.jsx("div",{className:"dtw-absolute dtw-top-5 dtw-left-5",children:o.jsx(Yt,{Icon:Yn.ChevronLeftIcon,onClick:i})}),!!s&&o.jsx("div",{className:"dtw-absolute dtw-top-5 dtw-right-5",children:o.jsx(Yt,{Icon:Yn.XMarkIcon,onClick:s})})]})})),If=({children:e})=>o.jsx(F.TabPanel,{className:"dtw-pt-[var(--panel-content-pt)] dtw-pb-[var(--panel-content-pb)] md:dtw-pb-[var(--panel-content-pb-md)] dtw-px-[var(--panel-content-px)] dtw-flex dtw-flex-col dtw-gap-[var(--panel-content-gap,var(--panel-gap))] dtw-h-full",children:e}),Nf=({className:e,iconClassName:t,onClick:n,children:r})=>{const s=ze(),a=()=>{n?.(),s?.(u.TRADING_PANEL_LOG_EVENT.TRADING_SETTINGS_OPENED)};return o.jsxs(F.Popover,{className:N("dtw-flex dtw-items-center dtw-justify-end",e),children:[o.jsx(F.PopoverButton,{onClick:a,children:o.jsx(oe.Cog6ToothIcon,{className:N("dtw-h-[var(--panel-input-token-icon-size,var(--panel-icon-size))] dtw-w-[var(--panel-input-token-icon-size,var(--panel-icon-size))] sm:dtw-w-[var(--panel-input-token-icon-size-sm,var(--panel-icon-size-sm))] sm:dtw-h-[var(--panel-input-token-icon-size-sm,var(--panel-icon-size-sm))] hover:dtw-opacity-80 dtw-text-[color:var(--panel-icon-color,var(--panel-content-color))]",t)})}),o.jsx(F.PopoverBackdrop,{className:"dtw-absolute dtw-inset-0 dtw-bg-[var(--panel-popup-bg,var(--panel-secondary-color))] dtw-opacity-50"}),o.jsx(F.PopoverPanel,{className:"dtw-absolute dtw-z-10 dtw-max-w-xs dtw-top-14 dtw-right-0 dtw-transition dtw-duration-100 dtw-ease-out data-[closed]:dtw-translate-x-1/2 data-[closed]:dtw-opacity-0",transition:!0,children:o.jsx("div",{className:"dtw-rounded-l-[var(--panel-radius)] dtw-bg-[var(--panel-popup-bg,var(--panel-secondary-color))] dtw-p-4 dtw-flex dtw-flex-col dtw-gap-y-2.5",children:r})})]})},Pf=({children:e})=>o.jsx(F.TabPanel,{children:o.jsx(Nf,{children:e})}),V={InputGroup:al,Meta:il,Settings:Pf,Panel:If,Overlay:_f,Notification:Cf},Of=["dtw-bg-transparent","dtw-border-[var(--panel-action-outline-button-border-color,var(--panel-border-color))]","!dtw-text-[color:var(--panel-action-outline-button-color,var(--panel-content-color))]","active:dtw-border-opacity-100","hover:enabled:dtw-border-[var(--panel-action-outline-button-border-hover-color)]"],Lf=["!dtw-text-[color:var(--panel-action-accent-button-color,var(--panel-accent-content-color))]","dtw-bg-gradient-to-r","dtw-from-[var(--panel-action-accent-button-bg-from,var(--panel-accent-from-color))]","dtw-to-[var(--panel-action-accent-button-bg-to,var(--panel-accent-to-color))]","dtw-border-[color:var(--panel-action-accent-button-border-color)]","dtw-border-[length:var(--panel-action-accent-button-border-width)]","hover:enabled:dtw-from-[var(--panel-action-accent-button-hover-bg-from,var(--panel-accent-hover-from-color))]","hover:enabled:dtw-to-[var(--panel-action-accent-button-hover-bg-to,var(--panel-accent-hover-to-color))]"],z=({children:e,onClick:t,highlighted:n=!0,disabled:r=!1,className:s,type:a,loading:i=!1})=>o.jsxs("button",{className:N("dtw-rounded-[var(--panel-input-button-radius,var(--panel-radius))]","dtw-font-medium","dtw-border","dtw-transition-border","dtw-duration-500","dtw-ease-in-out","disabled:dtw-opacity-50","dtw-py-2","dtw-px-5","dtw-w-full",{[Lf.join(" ")]:n,[Of.join(" ")]:!n,"dtw-flex dtw-items-center dtw-justify-center dtw-gap-1":i},s),onClick:t,disabled:r||i,type:a,children:[i&&o.jsx(Se,{className:"dtw-h-4 dtw-w-4"}),e]}),qo={GeoBlockAlert:()=>o.jsx(Xe,{type:"error",children:o.jsx("span",{className:"dtw-text-sm",children:"Depositing is geo-blocked."})}),SanctionedAlert:()=>o.jsx(Xe,{type:"error",children:o.jsx("span",{className:"dtw-text-sm",children:"Your address has been found on a sanctions list. Deposits are disabled."})}),AvailableLiquidityAlert:({liquidityAmount:e})=>o.jsxs(Xe,{type:"warning",children:[o.jsx("p",{className:"dtw-text-center",children:e?`${e} withdrawal liquidity`:"Liquidity is running low"}),o.jsx("p",{className:"dtw-text-sm dtw-text-center",children:"Sell a smaller amount"})]}),MaxSupplyReachedAlert:({supplyCapInUsd:e})=>o.jsxs(Xe,{type:"warning",children:[o.jsx("p",{className:"dtw-text-center dtw-text-base",children:"Supply caps reached"}),o.jsxs("p",{className:"dtw-text-sm dtw-text-center",children:["Can only buy ",e," more"]})]}),OnDemandWithdrawAlert:()=>o.jsxs(Xe,{type:"info",children:[o.jsx("p",{className:"dtw-text-center",children:"On demand sell"}),o.jsx("p",{className:"dtw-text-sm dtw-text-[color:var(--panel-secondary-content-color)] dtw-text-center",children:"Sell will happen automatically over time as liquidity is made available"})]})},Yo=m.createContext(qo),Df=({children:e,config:t})=>{const n=m.useMemo(()=>({...qo,...t}),[t]);return o.jsx(Yo.Provider,{value:n,children:e})},$=()=>{const e=m.useContext(Yo);if(!e)throw new Error("ComponentContext is used out of Provider");return e},Jt=({children:e,promptText:t})=>{const{ActionButton:n=z}=$();return o.jsxs("div",{children:[o.jsxs("div",{className:"md:dtw-hidden dtw-mb-4 dtw-flex dtw-items-center dtw-justify-center dtw-space-x-1 dtw-text-[var(--panel-warning-content-color)]",children:[o.jsx(oe.ExclamationCircleIcon,{className:"dtw-h-5 dtw-w-5"}),o.jsx("div",{className:"dtw-py-1 dtw-text-xs",children:t})]}),o.jsx(ar,{text:t,children:o.jsx(n,{disabled:!0,children:o.jsxs("div",{className:"dtw-flex dtw-items-center dtw-justify-center dtw-gap-2",children:[o.jsx(oe.LockClosedIcon,{className:"dtw-h-5"}),o.jsx("span",{children:e})]})})})]})},He=({link:e,className:t,children:n,iconClassName:r="dtw-h-5 dtw-w-5",showDefaultIcon:s=!0})=>o.jsxs("a",{className:N("dtw-inline-flex dtw-cursor-pointer dtw-items-center dtw-gap-x-1 dtw-drop-shadow-md hover:dtw-border-themeGray-600 !dtw-text-[color:var(--panel-meta-link-color,var(--panel-content-color))]",t),href:e,target:"_blank",rel:"noreferrer",children:[n,s&&o.jsx(oe.ArrowTopRightOnSquareIcon,{className:r})]}),vn=({defaultEnabled:e=!1,onChange:t,disabled:n=!1,label:r,labelClassName:s,className:a,vertical:i=!1})=>{const[l,c]=m.useState(e);m.useEffect(()=>{c(e)},[e]);const d=p=>{n||(c(p),t?.(p))};return o.jsx(F.Field,{children:o.jsxs("div",{className:N("dtw-flex",a,{"dtw-flex-col dtw-gap-y-0.5":i,"dtw-items-center dtw-justify-between":!i}),children:[r&&o.jsx(F.Label,{className:N("dtw-cursor-pointer dtw-text-xs",s),children:r}),o.jsx(F.Switch,{checked:l,onChange:d,className:N("dtw-p-0 dtw-relative dtw-inline-flex dtw-h-6 dtw-w-11 dtw-flex-shrink-0 dtw-items-center dtw-rounded-full dtw-transition-colors focus:dtw-outline-none",{"!dtw-bg-[color:var(--panel-switch-bg-checked)] !dtw-text-[color:var(--panel-switch-color-checked)]":l,"!dtw-bg-[color:var(--panel-switch-bg)] !dtw-text-[color:var(--panel-switch-color)]":!l,"dtw-pointer-events-none dtw-opacity-50":n}),children:o.jsx("span",{className:N("dtw-inline-block dtw-h-4 dtw-w-4 dtw-transform dtw-rounded-full dtw-transition-transform",{"dtw-translate-x-6 !dtw-bg-[color:var(--panel-switch-thumb-bg-checked)]":l,"dtw-translate-x-1 !dtw-bg-[color:var(--panel-switch-thumb-bg)]":!l})})})]})})},Ko=({balance:e,symbol:t})=>o.jsx("span",{title:t,className:"dtw-text-[length:var(--panel-balance-font-size)] dtw-leading-[var(--panel-balance-line-height)] dtw-text-[color:var(--panel-balance-content-color)] dtw-whitespace-nowrap",children:e}),kf=({onClick:e})=>{const t=E();return o.jsx("button",{className:"dtw-cursor-pointer !dtw-text-[color:var(--panel-input-button-content-color,var(--panel-content-color))] dtw-rounded-[var(--panel-input-button-radius,var(--panel-radius))] !dtw-bg-[var(--panel-input-button-bg,var(--panel-secondary-color))] dtw-border dtw-border-[var(--panel-input-button-border-color,var(--panel-accent-to-color))] dtw-px-[var(--panel-input-button-px)] dtw-text-[length:var(--panel-input-button-font-size,var(--panel-font-size-xs))] dtw-leading-[var(--panel-input-button-line-height,var(--panel-line-height-xs))] hover:dtw-opacity-[var(--panel-action-hover-opacity)] dtw-opacity-[var(--panel-action-opacity)]",onClick:e,children:t.max})},Qo=({style:e,className:t})=>o.jsx("div",{className:N("tw-animate-pulse tw-rounded tw-bg-themeGray-300 tw-bg-opacity-50 tw-h-6",t),style:e}),Zo=e=>o.jsx("img",{...e}),Ae=({symbol:e,address:t,watch:n=!1})=>{const{account:r}=j(),s=y(),a=w.isNativeToken(e,s.chainId),{data:i,queryKey:l}=mr({chainId:s.chainId,address:r,query:{enabled:a&&!!r}}),{data:c,queryKey:d}=_.useReadContracts({contracts:[{address:t,abi:k.erc20Abi,functionName:"balanceOf",chainId:s.chainId,args:[r??u.AddressZero]},{address:t,abi:k.erc20Abi,chainId:s.chainId,functionName:"decimals"}],query:{enabled:!a&&!!r}});return Xt({watch:n&&a,queryKey:l}),Xt({watch:n&&!a,queryKey:d}),a?k.formatUnits(i?.value??BigInt(0),i?.decimals??u.DEFAULT_PRECISION):k.formatUnits(c?.[0]?.result??BigInt(0),c?.[1]?.result??u.DEFAULT_PRECISION)},Tn=({symbol:e,address:t,watch:n=!1})=>{const r=y(),s=w.isNativeToken(e,r.chainId),a=Ae({symbol:e,address:t,watch:n}),{data:i}=Wo({chainId:r.chainId,query:{enabled:s}});return s?w.getNativeTokenInvestableBalance({nativeTokenBalance:a,gasPrice:Number(i?.maxFeePerGas??0),tokenDecimals:u.CHAIN_NATIVE_TOKENS[r.chainId]?.decimals??u.DEFAULT_PRECISION}).toString():a},Nt=()=>{const[{value:e,symbol:t,address:n}]=R(),r=Tn({symbol:t,address:n});return new I(e||0).gt(r??0)},Rf=({address:e,chainId:t})=>[{address:w.getContractAddressById("factory",t),abi:u.PoolFactoryAbi,functionName:"isPool",chainId:t,args:[e]}],jf=e=>({isUserDhedgePool:e[0].result}),Pt=()=>{const{account:e=u.AddressZero}=j(),{chainId:t,supportedChainId:n}=De(),r=t??n,{data:s}=_.useReadContracts({contracts:Rf({address:e,chainId:r}),query:{enabled:!w.isZeroAddress(e),select:jf}});return!!s?.isUserDhedgePool},Mf=({address:e,chainId:t})=>[{address:e??u.AddressZero,abi:u.PoolLogicAbi,functionName:"poolManagerLogic",chainId:t},{address:w.getContractAddressById("easySwapperV2",t),abi:u.EasySwapperV2Abi,functionName:"customCooldownDepositsWhitelist",args:[e],chainId:t},{address:w.getContractAddressById("easySwapperV2",t),abi:u.EasySwapperV2Abi,functionName:"customCooldown",args:[],chainId:t},{address:w.getContractAddressById("factory",t),chainId:t,abi:u.PoolFactoryAbi,functionName:"getAssetGuard",args:[w.getContractAddressById("aaveLendingPoolV3",t)]}],Bf=e=>({poolManagerLogic:e[0].result,isCustomCooldownDepositAllowed:e[1].result,customCooldown:e[2].result,aaveAssetGuardAddress:e[3].result}),Ot=({address:e,chainId:t})=>_.useReadContracts({contracts:Mf({address:e,chainId:t}),query:{enabled:!!e&&!w.isZeroAddress(e),staleTime:1/0,select:Bf}}),Or=({address:e,chainId:t})=>{const[n]=Ge(),{data:{poolManagerLogic:r}={}}=Ot({address:e,chainId:t});return n.managerLogicAddress??r},$f=({address:e,chainId:t,account:n})=>[{address:e,abi:u.PoolManagerLogicAbi,functionName:"getFeeIncreaseInfo",chainId:t},{address:e,abi:u.PoolManagerLogicAbi,functionName:"minDepositUSD",chainId:t},{address:e,abi:u.PoolManagerLogicAbi,functionName:"isMemberAllowed",args:[n??u.AddressZero],chainId:t},{address:e,abi:u.PoolManagerLogicAbi,functionName:"maxSupplyCap",args:[],chainId:t}],Uf=e=>({getFeeIncreaseInfo:e[0].result,minDepositUSD:e[1].result,isMemberAllowed:e[2].result,maxSupplyCapD18:e[3].result}),Lt=({address:e,chainId:t})=>{const n=Or({address:e,chainId:t}),{account:r=u.AddressZero}=j(),s=_.useReadContracts({contracts:$f({address:n??u.AddressZero,chainId:t,account:r}),query:{enabled:!!n&&!w.isZeroAddress(n),staleTime:1/0,select:Uf}});return yr({error:s.error,status:s.status}),s},Ff=({chainId:e,address:t})=>[{address:t,abi:u.PoolManagerLogicAbi,functionName:"getFundComposition",chainId:e},{address:t,abi:u.PoolManagerLogicAbi,functionName:"getSupportedAssets",chainId:e}],Wf=e=>({getFundComposition:e[0].result,getSupportedAssets:e[1].result?.map(({asset:t})=>t)}),Dt=({address:e,chainId:t})=>{const n=Or({address:e,chainId:t});return _.useReadContracts({contracts:Ff({address:n??u.AddressZero,chainId:t}),query:{enabled:!!n&&!w.isZeroAddress(n),select:Wf,refetchInterval:u.DEFAULT_POLLING_INTERVAL}})};function Gf(e,t,n){var r=-1,s=e.length;t<0&&(t=-t>s?0:s+t),n=n>s?s:n,n<0&&(n+=s),s=t>n?0:n-t>>>0,t>>>=0;for(var a=Array(s);++r<s;)a[r]=e[r+t];return a}var zf=Gf,Hf=wr,Vf=Co,qf=vr,Yf=It;function Kf(e,t,n){if(!Yf(n))return!1;var r=typeof t;return(r=="number"?Vf(n)&&qf(t,n.length):r=="string"&&t in n)?Hf(n[t],e):!1}var Qf=Kf,Zf=/\s/;function Xf(e){for(var t=e.length;t--&&Zf.test(e.charAt(t)););return t}var Jf=Xf,ev=Jf,tv=/^\s+/;function nv(e){return e&&e.slice(0,ev(e)+1).replace(tv,"")}var rv=nv,sv=rv,Es=It,ov=pn,Cs=NaN,av=/^[-+]0x[0-9a-f]+$/i,iv=/^0b[01]+$/i,lv=/^0o[0-7]+$/i,cv=parseInt;function dv(e){if(typeof e=="number")return e;if(ov(e))return Cs;if(Es(e)){var t=typeof e.valueOf=="function"?e.valueOf():e;e=Es(t)?t+"":t}if(typeof e!="string")return e===0?e:+e;e=sv(e);var n=iv.test(e);return n||lv.test(e)?cv(e.slice(2),n?2:8):av.test(e)?Cs:+e}var uv=dv,pv=uv,_s=1/0,mv=17976931348623157e292;function wv(e){if(!e)return e===0?e:0;if(e=pv(e),e===_s||e===-_s){var t=e<0?-1:1;return t*mv}return e===e?e:0}var hv=wv,gv=hv;function fv(e){var t=gv(e),n=t%1;return t===t?n?t-n:t:0}var vv=fv,Tv=zf,bv=Qf,Av=vv,xv=Math.ceil,yv=Math.max;function Sv(e,t,n){(n?bv(e,t,n):t===void 0)?t=1:t=yv(Av(t),0);var r=e==null?0:e.length;if(!r||t<1)return[];for(var s=0,a=0,i=Array(xv(r/t));s<r;)i[a++]=Tv(e,s,s+=t);return i}var Ev=Sv;const Xo=on(Ev),Jo=({account:e,chainId:t,address:n})=>[{address:n,abi:u.PoolLogicAbi,functionName:"balanceOf",chainId:t,args:[e]},{address:n,abi:u.PoolLogicAbi,functionName:"tokenPrice",chainId:t,args:[]}],Cv=e=>e.flatMap(Jo),_v=Jo({account:u.AddressZero,chainId:Z.optimism.id,address:u.AddressZero}).length,ea=({account:e})=>{const{chainId:t}=De(),n=tt();return _.useReadContracts({contracts:Cv(n.map(r=>({...r,account:e}))),query:{select:r=>Xo(r,_v).reduce((s,[a,i],l)=>{const c=n?.[l]?.address??u.AddressZero;return{...s,[c]:{balance:a?.result?.toString(),tokenPrice:i?.result?.toString()}}},{}),placeholderData:(r,s)=>{if(s?.queryKey?.[1].chainId!==t)return r},refetchInterval:u.DEFAULT_POLLING_INTERVAL,enabled:!w.isZeroAddress(e)}})},Iv=({chainId:e,address:t})=>[{address:t,abi:u.PoolLogicAbi,functionName:"tokenPrice",chainId:e,args:[]},{address:t,abi:u.PoolLogicAbi,functionName:"getFundSummary",chainId:e}],Nv=([e,t])=>{const n=t?.result;return{tokenPrice:e?.result!==BigInt(0)?e?.result?.toString():u.DEFAULT_VAULT_TOKEN_PRICE,totalValueD18:n?.totalFundValue?.toString(),totalSupplyD18:n?.totalSupply?.toString(),isPrivateVault:n?.privatePool,performanceFee:n?.performanceFeeNumerator?.toString(),streamingFee:n?.managerFeeNumerator?.toString(),entryFee:n?.entryFeeNumerator?.toString(),exitFee:n?.exitFeeNumerator?.toString(),managerAddress:n?.manager?.toString()}},ce=({address:e,chainId:t,refetchInterval:n=u.SHORTEN_POLLING_INTERVAL,enabled:r=!0})=>_.useReadContracts({contracts:Iv({address:e,chainId:t}),query:{enabled:r&&!!e&&!w.isZeroAddress(e),refetchInterval:n,select:Nv}}),ta=({address:e,chainId:t})=>{const{account:n}=j(),{data:{managerAddress:r}={managerAddress:u.AddressZero}}=ce({address:e,chainId:t}),{data:{isMemberAllowed:s=!1}={}}=Lt({address:e,chainId:t});return n?s||w.isEqualAddress(n,r):!1},na=({address:e,chainId:t})=>{const[n]=Ge(),r=m.useMemo(()=>n.poolCompositions?.reduce((p,{tokenAddress:g,tokenName:h,precision:f,asset:v})=>({...p,[g.toLowerCase()]:{tokenName:h,precision:f,asset:v}}),{}),[n.poolCompositions]),{data:{getFundComposition:[s,a,i]=[]}={},isFetched:l}=Dt({address:e,chainId:t}),c=m.useMemo(()=>s?.map(({asset:p})=>p)??[],[s]),{data:d}=_.useReadContracts({contracts:c.flatMap(p=>[{address:p,abi:k.erc20Abi,functionName:"symbol",chainId:t},{address:p,abi:k.erc20Abi,functionName:"decimals",chainId:t}]),query:{enabled:l&&c?.length>0&&!!t&&!c.every(p=>r?.[p.toLowerCase()]),staleTime:1/0}});return wn(d),m.useMemo(()=>{if(!s?.length)return[];const p=Xo(d,2);return s.map(({asset:g,isDeposit:h},f)=>{const v=g.toLowerCase(),[T,b]=p[f]??[],A=u.BRIDGED_TOKENS_SYMBOLS[v.toLowerCase()]??T?.result?.toString()??r?.[v]?.tokenName??w.shortenAddress(v);return{tokenAddress:v,isDeposit:h,rate:i?.[f]?.toString()??"0",amount:a?.[f]?.toString()??"0",tokenName:A,precision:b?.result?Number(b.result):r?.[v]?.precision??u.DEFAULT_PRECISION,asset:{iconSymbols:r?.[v]?.asset.iconSymbols??[A]}}})},[a,i,r,s,d])},Re=({address:e,chainId:t})=>{const[n]=Ge(),r=na({address:e,chainId:t});return r.length?r:n.poolCompositions??[]},Pv=e=>{const t=e?.[0]?.toString()??"",n=e?.[1]?.toString()??"",r=e?.[2]?.toString()??"",s=e?.[3]?.toString()??"",a=e?.[4]?.toString()??"";return{announcedPerformanceFee:t,announcedStreamingFee:n,announcedEntryFee:r,announcedExitFee:s,announcedTimestamp:a}},Lr=(e,t)=>{const{data:{getFeeIncreaseInfo:n,minDepositUSD:r}={}}=Lt({address:e,chainId:t});return{...Pv(n),minDepositUSD:+k.formatUnits(r??BigInt(0),u.DEFAULT_PRECISION)}},Ov=({composition:e,vaultTokensAmount:t,totalSupplyD18:n})=>e.reduce((r,s)=>{const a=r.find(({tokenName:i})=>i===s.tokenName);if(a){const i=new I(a.amount).shiftedBy(-a.precision),l=new I(s.amount).shiftedBy(-s.precision);return a.amount=i.plus(l).shiftedBy(a.precision).toFixed(0),r}return[...r,s]},[]).map(r=>{const s=w.getPoolFraction(r.amount,t,n,r.precision),a=w.getPoolFraction(new I(r.rate).multipliedBy(r.amount).shiftedBy(-r.precision).toFixed(),t,n);return{...r,fraction:s.toFixed(w.getConventionalTokenPriceDecimals(s)),fractionUsd:w.formatToUsd({value:a}),fractionUsdNumber:a}}).filter(({amount:r})=>r!=="0").sort((r,s)=>s.fractionUsdNumber-r.fractionUsdNumber),ra=({address:e,vaultTokensAmount:t,chainId:n})=>{const r=Re({address:e,chainId:n}),{data:{totalSupplyD18:s}={}}=ce({address:e,chainId:n});return m.useMemo(()=>s?Ov({composition:r,vaultTokensAmount:w.shiftBy(t||0),totalSupplyD18:s}):[],[t,r,s])},ue=({address:e,chainId:t,formatter:n=k.formatEther})=>{const[r]=Ge(),{data:s}=ce({address:e,chainId:t});return n(BigInt(s?.tokenPrice??r?.tokenPrice??"0"))},bn=({address:e,chainId:t})=>{const[n]=Ge(),r=w.isEqualAddress(n.address,e)?n:null,{data:{performanceFee:s,streamingFee:a,entryFee:i,exitFee:l}={}}=ce({address:e,chainId:t}),c=i??r?.entryFeeNumerator??"0",d=l??r?.exitFeeNumerator??"0";return m.useMemo(()=>{const p=s??r?.performanceFeeNumerator??"0",g=a??r?.streamingFeeNumerator??"0";return{performanceFee:w.formatNumeratorToPercentage(p,u.MANAGER_FEE_DENOMINATOR),performanceFeeNumber:w.getPercent(+p,u.MANAGER_FEE_DENOMINATOR),streamingFee:w.formatNumeratorToPercentage(g,u.MANAGER_FEE_DENOMINATOR,2),streamingFeeNumber:w.getPercent(+g,u.MANAGER_FEE_DENOMINATOR),entryFee:w.formatNumeratorToPercentage(c,u.MANAGER_FEE_DENOMINATOR,2),entryFeeNumber:w.getPercent(+c,u.MANAGER_FEE_DENOMINATOR),exitFee:w.formatNumeratorToPercentage(d,u.MANAGER_FEE_DENOMINATOR,2),exitFeeNumber:w.getPercent(+d,u.MANAGER_FEE_DENOMINATOR)}},[s,r?.performanceFeeNumerator,r?.streamingFeeNumerator,a,c,d])},sa=()=>{const{address:e,chainId:t}=y(),{queryKey:n}=Dt({address:e,chainId:t});Xt({queryKey:n})},Wt=Z.base.id,Lv=e=>{const t=w.getContractAddressById("flatcoinPointsModule",Wt);return[{address:t,chainId:Wt,abi:u.FlatcoinPointsModuleAbi,functionName:"lockedBalance",args:[e]},{address:t,chainId:Wt,abi:u.FlatcoinPointsModuleAbi,functionName:"getUnlockTax",args:[e]},{address:t,chainId:Wt,abi:u.FlatcoinPointsModuleAbi,functionName:"unlockTime",args:[e]}]},oa=({enabled:e,address:t})=>_.useReadContracts({contracts:Lv(t),query:{enabled:e,select:n=>{const[r,s,a]=n;return{lockedVaultPointsBalance:r?.result,unlockTaxInPercents:s?.result,unlockTime:a?.result}}}}),Dv=[...u.FLAT_MONEY_UNIT_ADDRESSES],Dr=({address:e,chainId:t})=>{const n=Re({address:e,chainId:t}),r=w.getContractAddressById("factory",t);return _.useReadContracts({contracts:n.map(({tokenAddress:s})=>({address:r,abi:u.PoolFactoryAbi,functionName:"isPool",chainId:t,args:[s]})),query:{select:s=>n.some(({amount:a,tokenAddress:i},l)=>(!!s[l]?.result||Dv.some(p=>w.isEqualAddress(p,i)))&&a!=="0"),staleTime:1/0}})},kv=[[30*1e3,5e3],[60*1e3,1e4],[5*60*1e3,2e4]],Rv=e=>{if(!e)return!1;for(const[t,n]of kv)if(e<=t)return n;return u.EXTENDED_POLLING_INTERVAL},$n=e=>Number(e?.toString()??"0")*1e3,jv=({address:e,chainId:t})=>{const{account:n}=j();return _.useReadContract({address:e,abi:u.PoolLogicAbi,functionName:"getExitRemainingCooldown",chainId:t,args:[n??u.AddressZero],query:{enabled:!!n,select:$n,refetchInterval:r=>Rv($n(r.state?.data)),refetchOnWindowFocus:r=>$n(r.state?.data)>0}})};function Mv(e,t,n){if(!e||!t)return{balanceInUsd:"",balanceInUsdNumber:0};const r=+e*w.normalizeNumber(t);return{balanceInUsd:w.formatToUsd({value:r,maximumFractionDigits:n}),balanceInUsdNumber:r}}const aa=(e,t)=>w.nonZeroBigInt(e)?{rawBalance:e?.toString()??"",...Mv(k.formatUnits(e,u.DEFAULT_PRECISION$1),t?.toString())}:{rawBalance:"",balanceInUsd:"",balanceInUsdNumber:0},ia=({account:e}={})=>{const{account:t}=j(),n=e??t??u.AddressZero,{data:r}=ea({account:n});return m.useMemo(()=>w.isZeroAddress(n)?{}:Object.entries(r??{}).reduce((s,[a,i])=>{const l=aa(BigInt(i.balance??"0"),BigInt(i.tokenPrice??"0"));return l.balanceInUsdNumber>0?{...s,[a]:l}:s},{}),[n,r])},la=({account:e,chainId:t,address:n})=>{const{data:r,isFetched:s}=ce({address:n,chainId:t}),{poolFallbackData:a}=te(),i=w.isEqualAddress(a.address,n)?a.tokenPrice??"0":"0";return _.useReadContract({address:e?n:void 0,abi:u.PoolLogicAbi,functionName:"balanceOf",chainId:t,args:[e],query:{enabled:!w.isZeroAddress(e)&&s,select:l=>aa(l,BigInt(r?.tokenPrice??i))}})},Bv=e=>Math.ceil(w.normalizeNumber(e)),ca=({address:e,chainId:t,select:n=Bv})=>{const{data:{totalValueD18:r}={}}=ce({address:e,chainId:t}),{data:{maxSupplyCapD18:s}={}}=Lt({address:e,chainId:t});return _.useReadContract({address:e,chainId:t,abi:u.PoolLogicAbi,functionName:"calculateAvailableManagerFee",args:[BigInt(r??"0")],query:{enabled:!!r&&!!s&&s>0n,select:n}})},da=({address:e,chainId:t})=>{const{data:{maxSupplyCapD18:n}={}}=Lt({address:e,chainId:t}),{data:{totalSupplyD18:r}={}}=ce({address:e,chainId:t}),s=ue({address:e,chainId:t}),{data:a=0}=ca({address:e,chainId:t});if(!n||n===0n)return null;const i=Math.ceil(w.normalizeNumber(r??0)),l=w.normalizeNumber(n),c=Math.max(0,l-a),d=Math.max(0,c-i),p=d*Number(s);return{totalSupplyNumber:i,maxSupplyCapNumber:c,remainingSupplyCapNumber:d,remainingSupplyCapInUsd:p}},$v=({address:e,chainId:t})=>{const{data:{isPrivateVault:n}={isPrivateVault:!1}}=ce({address:e,chainId:t}),s=tt().find(i=>w.isEqualAddress(e,i.address)&&i.chainId===t),a=!!(s?.maintenance||s?.maintenanceDeposits);return n||a},Uv=e=>ce(e),ua=({asset:e,chainId:t})=>{const n=w.getContractAddressById("factory",t),{data:r}=_.useReadContract({address:n,abi:u.PoolFactoryAbi,functionName:"getAssetGuard",args:e?[e]:void 0,chainId:t,query:{enabled:!!e&&!w.isZeroAddress(n),staleTime:1/0}});return r},Fv=e=>{const t=_.useConfig(),n=fe.useQueryClient();return m.useCallback(async r=>{const s=w.getContractAddressById("factory",e);if(!w.isZeroAddress(s))return n.fetchQuery({...qs.readContractQueryOptions(t,{address:s,abi:u.PoolFactoryAbi,functionName:"getAssetGuard",args:[r],chainId:e}),staleTime:1/0})},[e,t,n])},Wv=({address:e,chainId:t,enabled:n=!0})=>{const r=Re({address:e,chainId:t}),s=w.getContractAddressById("factory",t),a=n&&!w.isZeroAddress(s),{data:i}=_.useReadContracts({contracts:r.map(({tokenAddress:c})=>({address:s,abi:u.PoolFactoryAbi,functionName:"getAssetType",args:[c],chainId:t})),query:{enabled:a&&r.length>0,staleTime:1/0}});return{assets:m.useMemo(()=>r.map((c,d)=>{const p=i?.[d]?.result;return{...c,assetType:p===void 0?void 0:Number(p)}}),[r,i]),isReady:!a||i!==void 0}},Gv=[],je=({address:e,chainId:t})=>{const{assets:n,isReady:r}=Wv({address:e,chainId:t,enabled:t===Z.mainnet.id}),s=m.useMemo(()=>{const i=n.filter(l=>l.assetType===pe.ONDO_ASSET_TYPE).map(({tokenAddress:l,tokenName:c})=>({address:l,symbol:c}));return i.length?i:Gv},[n]),a=ua({asset:s[0]?.address,chainId:t});return{assets:s,assetGuardAddress:a,hasAssets:s.length>0,isReady:r}},zv=BigInt(Math.round(u.ONDO_PRICE_MAX_DEVIATION_PERCENT*100)),Hv=e=>{if(e)try{return k.parseUnits(e,u.DEFAULT_PRECISION)}catch{return}},Vv=({address:e,chainId:t,enabled:n=!0})=>{const{assets:r}=je({address:e,chainId:t}),s=w.getContractAddressById("ondoPriceOracle",t),a=m.useMemo(()=>r.map(b=>b.address),[r]),i=t===Z.mainnet.id,l=!!Zs()?.api.getPricesUrl,c=a.length>0,d=n&&i&&c&&l&&!w.isZeroAddress(s),{data:p,isFetching:g,isError:h}=_.useReadContracts({contracts:a.map(b=>({address:s,abi:u.OndoPriceOracleAbi,functionName:"getPrice",args:[b],chainId:t})),query:{enabled:d,refetchOnMount:"always"}}),{data:f,isFetching:v,isError:T}=fe.useQuery({queryKey:["ondo-prices",t,a],queryFn:()=>vl({chainId:t,addresses:a}),enabled:d,refetchOnMount:"always"});return m.useMemo(()=>{if(!n||!i||!c)return{needsPriceUpdate:!1,isChecking:!1};if(!l||w.isZeroAddress(s))return{needsPriceUpdate:!0,isChecking:!1};if(h||T)return{needsPriceUpdate:!0,isChecking:!1};if(g||v||!p||!f)return{needsPriceUpdate:void 0,isChecking:!0};const b=f.prices.some(S=>!!S.address),A=(S,L)=>b?f.prices.find(O=>O.address&&w.isEqualAddress(O.address,S))?.price:f.prices.length===a.length?f.prices[L]?.price:void 0;return{needsPriceUpdate:a.some((S,L)=>{const O=p[L],M=O?.status==="success"?O.result[0]:void 0,P=Hv(A(S,L));return!M||M<=0n||!P||P<=0n?!0:(M>P?M-P:P-M)*10000n>zv*P}),isChecking:!1}},[n,i,c,l,s,h,T,g,v,p,f,a])},pt=({address:e,chainId:t})=>{const n=Re({address:e,chainId:t}),r=n.some(i=>w.isEqualAddress(i.tokenAddress,u.DYTM_OFFICE_ADDRESS_MAINNET)),s=r?u.DYTM_OFFICE_ADDRESS_MAINNET:void 0,a=ua({asset:s,chainId:t});return{dytmOfficeAddress:s,assetGuardAddress:a,hasAssets:r,isReady:t!==Z.mainnet.id||n.length>0}},qv=()=>{const{address:e,symbol:t,chainId:n}=y(),{account:r=u.AddressZero}=j(),s=Ae({symbol:t,address:e}),{data:{totalSupplyD18:a}={}}=ce({address:e,chainId:n}),l=w.isFmpAirdropVaultAddress(e)&&!w.isEqualAddress(r,u.AddressZero),{data:{lockedVaultPointsBalance:c,unlockTaxInPercents:d,unlockTime:p}={},isLoading:g}=oa({enabled:l,address:e});return m.useMemo(()=>{const h=a?new I.BigNumber(s).shiftedBy(u.DEFAULT_PRECISION).dividedBy(a):new I.BigNumber(0),f=c?new I.BigNumber(c.toString()).multipliedBy(h).shiftedBy(-u.DEFAULT_PRECISION):new I.BigNumber(0),v=d?f.multipliedBy(d.toString()).shiftedBy(-u.DEFAULT_PRECISION):new I.BigNumber(0),T=p?Number(p)*1e3:null;return{userPortionOfLockedPointsBalance:f.toFixed(),unlockTaxAmount:v.toFixed(),vestedPointsAmount:f.minus(v).toFixed(),unlockTimestamp:T,unlockDate:T?Vt.format(T,"PPP"):null,isLoading:g}},[a,s,c,d,p,g])},kr=()=>{const{depositQuoteDiffErrorThreshold:e}=q(),[t,n]=m.useState(!1),[{slippage:r,minSlippage:s}]=X(),a=r==="auto"?s??0:r,l=!Nt()&&a>e&&!t,c=m.useCallback(()=>{n(!0)},[]);return{requiresHighSlippageConfirm:l,confirmHighSlippage:c,slippageToBeUsed:a}},kt=e=>{const{depositQuoteDiffErrorThreshold:t,depositQuoteDiffWarningThreshold:n}=q(),r=Math.abs(e);return r>t?H.ERROR:r>n?H.WARNING:H.DEFAULT};var Yv=st,Kv=ct,Qv="[object Number]";function Zv(e){return typeof e=="number"||Kv(e)&&Yv(e)==Qv}var Xv=Zv;const Jv=on(Xv),pa=({tradingType:e,slippage:t,minSlippage:n})=>{const r=Nr();return t!=="auto"?t.toString():Jv(n)?n.toString():e==="deposit"?u.DEFAULT_DEPOSIT_SLIPPAGE.toString():r.toString()},eT=async(e,t=Cr)=>{try{return(await import(`@dhedge/crypto-assets/icons/${e.toLowerCase()}.png`))?.default?.src??t(e)}catch{return t(e)}},tT=(e=[])=>{const{getFallbackIconPath:t}=q(),[n,r]=m.useState([]),[s,a]=m.useState([]);return m.useEffect(()=>{if(e.every(l=>s.includes(l)))return;(async()=>{const l=await Promise.all(e.map(c=>eT(c,t)));r(l),a(e)})()},[e,s,t]),n},ma=()=>{const{pricingAsset:e,symbol:t,chainId:n,address:r}=y(),{minLimitOrderValue:s}=q(),a=Ae({symbol:t,address:r}),i=ue({address:r,chainId:n});return Number(a)*Number(i)>=s&&!!e},nT=(e,t)=>{switch(t.type){case"MERGE_OVERLAY":return{...e,[t.payload.type]:{...e[t.payload.type],isOpen:t.payload.isOpen,isPending:t.payload.isPending??!1,onConfirm:t.payload.onConfirm??e[t.payload.type].onConfirm,meta:t.payload.meta??e[t.payload.type].meta}};default:return e}},wa=Object.values(G).reduce((e,t)=>({...e,[t]:{isOpen:!1,isPending:!1}}),{}),rT=()=>m.useReducer(nT,wa),ha=m.createContext(wa),ga=m.createContext(()=>{}),fa=()=>{const e=m.useContext(ha);if(!e)throw new Error("OverlayStateContext is used out of Provider");return e},we=()=>{const e=m.useContext(ga);if(!e)throw new Error("OverlayDispatchContext is used out of Provider");return e},ae=({type:e})=>{const t=fa(),n=we(),r=m.useCallback(()=>{n({type:"MERGE_OVERLAY",payload:{type:e,isOpen:!1,isPending:!1}})},[n,e]),{onConfirm:s,isPending:a,meta:i}=t[e],l=d=>{n({type:"MERGE_OVERLAY",payload:{type:e,isOpen:!0,isPending:d}})};return{handleReject:r,handleConfirm:async()=>{await s?.(l),r()},isPending:a,meta:i}},Ve=()=>{const e=we(),t=m.useCallback(r=>{e({type:"MERGE_OVERLAY",payload:{type:G.ERROR_NOTIFICATION,isOpen:!0,meta:{error:r}}})},[e]),n=m.useCallback(()=>{e({type:"MERGE_OVERLAY",payload:{type:G.ERROR_NOTIFICATION,isOpen:!1,meta:{error:""}}})},[e]);return{showError:t,closeError:n}},va=()=>{const e=we();return()=>{Object.values(G).forEach(t=>{e({type:"MERGE_OVERLAY",payload:{type:t,isOpen:!1,isPending:!1}})})}},sT=({children:e})=>{const[t,n]=rT(),[{isOpen:r}]=Q();return m.useEffect(()=>{r&&!t.TRADING.isOpen&&n({type:"MERGE_OVERLAY",payload:{type:G.TRADING,isOpen:r}})},[r,t.TRADING.isOpen,n]),m.useEffect(()=>{!r&&t.TRADING.isOpen&&n({type:"MERGE_OVERLAY",payload:{type:G.TRADING,isOpen:r}})},[r,t.TRADING.isOpen,n]),o.jsx(ga.Provider,{value:n,children:o.jsx(ha.Provider,{value:t,children:e})})},oT=()=>{const e=ze(),t=we(),n=ma(),r=m.useCallback(()=>{n&&(t({type:"MERGE_OVERLAY",payload:{type:G.LIMIT_SELLS,isOpen:!0}}),e?.(u.TRADING_PANEL_LOG_EVENT.OPEN_LIMIT_SELL_VIEW,{[u.TRADING_LOG_EVENT_PARAM.SOURCE.NAME]:"overlay"}))},[t,n,e]);return{displayLimitSellOverlay:n,openLimitSellOverlay:r}},An="0x000000000022D473030F116dDEE9F6B43aC78BA3",aT=100,iT=28,lT=1,cT=500,Rr=2,dT=1,uT=5,pT=2,jr={[Z.arbitrum.id]:"0x40F2978D87348250F085ACEbd680B387842a69eF"},Ta={PermitWitnessTransferFrom:[{name:"permitted",type:"TokenPermissions"},{name:"spender",type:"address"},{name:"nonce",type:"uint256"},{name:"deadline",type:"uint256"},{name:"witness",type:"LimitBuyOrder"}],TokenPermissions:[{name:"token",type:"address"},{name:"amount",type:"uint256"}],LimitBuyOrder:[{name:"owner",type:"address"},{name:"targetVault",type:"address"},{name:"pricingAsset",type:"address"},{name:"minTriggerPriceD18",type:"uint256"},{name:"maxTriggerPriceD18",type:"uint256"},{name:"slippageToleranceBps",type:"uint16"}]},mT=()=>{const{pricingAsset:e,chainId:t,maintenance:n,maintenanceDeposits:r}=y(),{limitBuyConfig:s}=q(),a=!!(n||r);return!!e&&!!s&&!!jr[t]&&!a},wT=()=>{const e=ze(),t=we(),n=mT(),r=m.useCallback(()=>{n&&(t({type:"MERGE_OVERLAY",payload:{type:G.LIMIT_BUYS,isOpen:!0}}),e?.(u.TRADING_PANEL_LOG_EVENT.OPEN_LIMIT_BUY_VIEW,{[u.TRADING_LOG_EVENT_PARAM.SOURCE.NAME]:"overlay"}))},[t,n,e]);return{displayLimitBuyOverlay:n,openLimitBuyOverlay:r}},ba=()=>{const e=E(),[{status:t}]=Q(),n=m.useMemo(()=>({Wallet:e.sendingOrderToWallet,None:e.settingUpTx,Mining:e.miningTx,Success:e.success}),[e]);return{status:t,statusLabel:n[t]}},xn=e=>{const t=E(),{status:n}=ba();if(!(!e||n==="Success"))return n==="Mining"?t.miningTx:t.sendingOrderToWallet},hT=()=>{const{chainId:e}=y(),{disableHyperEvmWarning:t}=q();return e===Z.hyperEvm.id&&!t},gT=(e,t)=>e===0?`dtw-z-${(t-1)*10}`:`dtw--ml-2 dtw-z-${(t-e-1)*10}`,fT=e=>{switch(e){case"xs":return{height:"!dtw-h-3 sm:!dtw-h-4 ",width:"!dtw-w-3 sm:!dtw-w-4",diameter:16};case"sm":return{height:"!dtw-h-4 sm:!dtw-h-5 ",width:"!dtw-w-4 sm:!dtw-w-5",diameter:20};case"m":return{height:"!dtw-h-5 sm:!dtw-h-6 ",width:"!dtw-w-5 sm:!dtw-w-6",diameter:24};case"lg":return{height:"!dtw-h-7 sm:!dtw-h-8 ",width:"!dtw-w-7 sm:!dtw-w-8",diameter:32};case"xl":return{height:"!dtw-h-9 sm:!dtw-h-10 ",width:"!dtw-w-9 sm:!dtw-w-10",diameter:36};case"2xl":return{height:"!dtw-h-16 sm:!dtw-h-18",width:"!dtw-w-16 sm:!dtw-w-18",diameter:72}}},xe=({symbols:e,size:t="m",className:n=""})=>{const{Image:r=Zo,customIcons:s}=$(),a=e.join(""),[i,l]=m.useState({[a]:!1}),{height:c,width:d,diameter:p}=fT(t),g=e.length===1?s?.[e[0]]:void 0,h=tT(g?[]:e);if(g)return o.jsx(g,{className:N(c,d,n)});if(!h?.length||!h[0]||i[a])return null;const f=()=>l(v=>({...v,[a]:!0}));return h.length===1?o.jsx(r,{src:h[0],alt:`${e[0]} icon`,className:N(c,d,n),width:p,height:p,onError:f}):o.jsx("span",{className:`dtw-flex-no-wrap dtw-z-0 dtw-flex ${c} ${n}`,children:h.map((v,T)=>o.jsx(r,{src:v,alt:`${e[T]} icon`,className:N("dtw-inline-block dtw-overflow-visible dtw-rounded-full",d,c,gT(T,e.length)),width:p,height:p,onError:f},T))})},Rt=({symbol:e,iconSymbols:t,size:n,symbolClasses:r="dtw-text-sm dtw-font-medium",CustomIcon:s,customTitle:a,className:i})=>{const l=E(),c=a||(e===u.MULTI_ASSET_TOKEN.symbol?l.allAssets:e);return o.jsxs("div",{className:N("dtw-flex dtw-w-full dtw-items-center dtw-space-x-1.5",i),children:[s??o.jsx(xe,{size:n,symbols:t,className:"dtw-flex-shrink-0"}),o.jsx("div",{className:r,title:c,children:c||o.jsx(Qo,{className:"dtw-w-[70px]"})})]})},Xe=({className:e,children:t,type:n="error"})=>o.jsx("div",{className:N("dtw-rounded-[var(--panel-radius)] dtw-p-3",{"dtw-bg-[var(--panel-alert-error-bg)] dtw-text-[var(--panel-alert-error-color)]":n==="error","dtw-bg-[var(--panel-alert-warning-bg)] dtw-text-[var(--panel-alert-warning-color)]":n==="warning","dtw-bg-[var(--panel-alert-info-bg)] dtw-text-[var(--panel-alert-info-color)]":n==="info"},e),children:t}),Un=(e,t=!1)=>{if(!e)return"";let n="";t&&e.startsWith("-")&&(n="-",e=e.slice(1));const[r,s]=e.split("."),a=r?.replace(/\D/g,"");if(!a)return s?`${n}0.${s}`:n;const i=new Intl.NumberFormat().format(Number(a));return s!==void 0?`${n}${i}.${s.replace(/[^\d]/g,"")}`:`${n}${i}`},Fn=e=>e.replace(/,/g,""),vT=m.forwardRef(({value:e,onChange:t,formatOnBlurOnly:n=!1,allowNegative:r=!1,...s},a)=>{const i=c=>{const p=c.target.value.replace(r?/[^0-9.-]/g:/[^0-9.]/g,"").replace(/^(-?\d*\.\d*).*$/,"$1").replace(/^(-?\.)(.*)/,"$1$2");if(n)t?.(p,Fn(p));else{const g=Un(p,r);t?.(g,Fn(g))}},l=()=>{if(!n)return;const c=Un(e,r);t?.(c,Fn(c))};return o.jsx("input",{...s,ref:a,type:"text",inputMode:"decimal",value:Un(e,r),onChange:i,onBlur:l})});vT.displayName="InputNumber";const Ue=({className:e})=>o.jsx("div",{className:N("dtw-w-full dtw-h-[1px] dtw-bg-[var(--panel-divider-color)] dtw-shrink-0",e)}),TT=()=>{const[e]=ve(),[t,n]=X(),[r,s]=m.useState(!1),a=t.slippage!=="auto";return{settings:t,tradingType:e,isCustomSlippage:a,invalidSlippage:r,onDefaultSlippageSelect:()=>{n({slippage:"auto"})},onCustomSlippageSelect:c=>{const d=c.target.value,p=+d<0||+d>100;s(p);let g=t.slippage;p||d.trim().length===0&&a?g="auto":d.trim().length>0&&(g=+d),n({slippage:g})}}},Is=({selected:e=!1,children:t,className:n,onClick:r})=>o.jsx("div",{className:N("dtw-cursor-pointer dtw-rounded-[var(--panel-input-button-radius,var(--panel-radius))] dtw-py-1 dtw-text-center dtw-text-sm",n,{"dtw-bg-[color:var(--panel-switch-bg-checked)] !dtw-text-[color:var(--panel-switch-color-checked)]":e,"dtw-bg-[color:var(--panel-switch-bg)] dtw-text-white hover:dtw-opacity-80 !dtw-text-[color:var(--panel-switch-color)]":!e}),onClick:r,children:t}),bT=0,AT=100,Aa=()=>{const e=E(),{settings:t,tradingType:n,isCustomSlippage:r,invalidSlippage:s,onDefaultSlippageSelect:a,onCustomSlippageSelect:i}=TT(),l=pa({tradingType:n,slippage:t.slippage,minSlippage:t.minSlippage});return o.jsxs("div",{className:"dtw-flex dtw-items-stretch dtw-gap-x-3",children:[o.jsx(Is,{selected:!r,className:"dtw-w-14",onClick:a,children:e.auto}),o.jsxs("div",{className:"dtw-flex dtw-items-center dtw-gap-x-1 dtw-flex-1",children:[o.jsx(Is,{selected:r,className:"dtw-w-14",children:o.jsx("input",{className:N("dtw-w-full dtw-bg-transparent dtw-px-1.5 dtw-outline-none focus:dtw-outline-none dtw-text-center",{"dtw-text-red-600":s}),type:"number",min:bT,max:AT,onChange:i,placeholder:l,defaultValue:r?t.slippage.toString():""})}),o.jsx("span",{children:"%"})]})]})};function yn(e,t,n){const r=u.ALL_SUPPORTED_NETWORKS[n??Z.arbitrum.id]?.blockExplorers?.default?.url;if(r)switch(t){case"transaction":return`${r}/tx/${e}`;default:return`${r}/address/${e}`}}const xa=()=>{const[e,t]=ne(),n=Q()[1],r=ao(),s=io(),[a]=e,i=a?.txHash,l=a?.action,c=l==="approve",d=a?.chainId,p=pr(),{invalidateTradingQueries:g,invalidateAllowanceQueries:h}=ut(),{data:f,error:v,refetch:T}=_.useWaitForTransactionReceipt({hash:i,chainId:d,pollingInterval:u.EXTREMELY_SHORT_POLLING_INTERVAL,query:{enabled:!!i}});m.useEffect(()=>{if(!f)return;const b=()=>{const x=f.transactionHash;if(x){const S=yn(x,"transaction",d);l!=="update_ondo_prices"&&(n({link:S,status:"Success",action:l}),s?.(f,l,S)),t({type:"remove",status:"success",txHash:x})}c?h():g()},A=w.getSettleDelay({chainId:d,action:l,isRabbyWallet:p});if(A>0){const x=setTimeout(b,A);return()=>clearTimeout(x)}else b()},[f,c,d,l,p,s,t,n,h,g]),m.useEffect(()=>{if(v){if(w.shouldSwallowMainnetPollError({chainId:d,txHash:i,error:v})){T();return}n({isOpen:!1,status:"None",link:"",action:l,sendTokens:null,receiveTokens:null}),t({type:"remove",status:"fail"}),r?.(v,l,d,i)}},[v,c,l,d,i,n,t,r,T])},Ce=({action:e,onErrorCallback:t,onSuccessCallback:n})=>{const[,r]=Q(),[,s]=ne(),[,a]=R(),i=Il();return m.useCallback((l,c,d)=>{if(c){r({isOpen:!1,status:"None",link:"",sendTokens:null,receiveTokens:null}),s({type:"remove",status:"fail"}),console.debug(`${e} transaction failed`,c),i?.(c,d),t?.(c);return}if(l){console.debug(`${e} transaction started`,l),s({type:"update",txHash:l});const p=yn(l,"transaction",d.chainId);r({isOpen:!0,status:"Mining",link:p}),e!=="approve"&&e!=="update_ondo_prices"&&a({value:""}),n?.()}},[r,s,e,i,t,a,n])},Mr=({address:e,chainId:t,refetchInterval:n,disabled:r=!1})=>{const{supportedChainId:s}=De(),{address:a}=y(),{data:i}=_.useReadContracts({contracts:[{address:w.getContractAddressById("factory",t??s),abi:u.PoolFactoryAbi,functionName:"getAssetPrice",args:[e],chainId:t}],query:{enabled:!w.isZeroAddress(e)&&!w.isEqualAddress(e,a)&&!r,refetchInterval:n}});return wn(i),i?.[0]?.result},le=({address:e,chainId:t,refetchInterval:n=u.SHORTEN_POLLING_INTERVAL,disabled:r})=>{const s=Mr({address:e,chainId:t,refetchInterval:n,disabled:r});return k.formatUnits(s??BigInt(0),u.DEFAULT_PRECISION)},ya=()=>{const[e]=R(),[t]=B(),n=Tn({address:e.address,symbol:e.symbol}),r=new I(e.value),s=new I(t.value);return(r.gt(0)||s.gt(0))&&r.lte(n??0)};function xT(e,t,n,r){try{if(t===u.MULTI_ASSET_TOKEN.symbol)return"";const s=Number(n),a=Number(r);return s===0||a===0||!isFinite(s)||!isFinite(a)?"":`1 ${e} = ${(a/s).toFixed(6)} ${t}`}catch{return""}}const Sa=()=>{const[e]=R(),[t]=B();return{value:xT(e.symbol,t.symbol,e.value,t.value),isLoading:!!t.isLoading}},qe=()=>{const e=!Le(),[{symbol:t}]=B(),[{isMultiAssetWithdrawalEnabled:n}]=X();return e&&n&&t===u.MULTI_ASSET_TOKEN.symbol},Sn=({onErrorCallback:e}={})=>{const{account:t}=j(),{chainId:n}=y(),r=qe(),[s]=R(),a=new I(s.value||"0").shiftedBy(s.decimals).toFixed(0,I.ROUND_UP),i=w.getContractAddressById("easySwapperV2",n),{canSpend:l,isFetching:c}=Da({tokenAddress:s.address,ownerAddress:t??u.AddressZero,spenderAddress:i,rawAmountToSpend:a,chainId:n,skip:r||a==="0"}),d=La({token:s,rawTokenAmount:a,spenderAddress:i,onErrorCallback:e});return{canSpend:l,approve:d,isCanSpendFetching:c}},yT=({address:e,chainId:t})=>{const n=_.usePublicClient({chainId:t}),{data:{aaveAssetGuardAddress:r=u.AddressZero}={}}=Ot({address:e,chainId:t});return m.useCallback(async({withdrawAmountD18:s,slippage:a})=>hn({address:r,abi:hl,functionName:"calculateSwapDataParams",args:[e,s,w.getSlippageToleranceForContractTransaction(a)],publicClient:n}),[r,e,n])},_e=()=>{const e=Nr(),[{slippage:t}]=X();return t==="auto"?e:t},ST={[Z.mainnet.id]:{ondoGMSwap:u.ONDO_GM_SWAP_ADDRESS_MAINNET,usdc:u.USDC_MAINNET.address}},ET=200n,CT=5n,Ns=10000n,Gt=e=>e.assetType===pe.ONDO_ASSET_TYPE,_T=e=>e.amount*(Ns-CT)/Ns,zt=e=>e.reduce((t,n)=>t+n,0n),IT=(e,t)=>e.reduce((n,r)=>{const s=t(r);return n.set(s,[...n.get(s)??[],r])},new Map),NT=async(e,t,n,r)=>{const[s,a]=await Promise.all([e?.readContract({address:t,abi:w.DytmOfficeAssetGuardAbi,functionName:"dytmWithdrawProcessor"}),hn({address:t,abi:w.DytmOfficeAssetGuardAbi,functionName:"previewWithdrawal",args:[n,r],publicClient:e})]);return{processor:s,assetData:a}},PT=async(e,t,n,r)=>{const s=w.getContractAddressById("ondoPriceOracle",n);if(w.isZeroAddress(s))return new Map;const a=i=>t.fetchQuery({...qs.readContractQueryOptions(e,{address:s,abi:u.OndoPriceOracleAbi,functionName:"getPrice",args:[i],chainId:n}),staleTime:u.ONDO_PRICE_FRESHNESS_WINDOW_MS}).then(([l])=>l).catch(()=>0n);return new Map(await Promise.all([...new Set(r)].map(async i=>[i,await a(i)])))},OT=async(e,t)=>{const{attestations:n}=await eo({chainId:e,items:t.map(s=>({address:s.asset,tokenAmount:k.formatUnits(s.amount,u.DEFAULT_PRECISION$1)}))}),r=IT(n,s=>s.assetAddress.toLowerCase());return t.map((s,a)=>{const i=s.asset.toLowerCase(),l=t.slice(0,a).filter(d=>d.asset.toLowerCase()===i).length,c=r.get(i)?.[l];if(!c)throw new Error(`Chamber Lending Market withdrawal: no Ondo attestation returned for ${s.asset}`);return{collateral:s,attestation:c}})},LT=({collateral:e,attestation:t,target:n,dytmOffice:r,processor:s,chainId:a,slippagePercent:i})=>{const l=w.toBigInt(t.tokenAmount,"tokenAmount");if(l<=0n)throw new Error(`Chamber Lending Market withdrawal: Ondo attestation for ${e.asset} has no redeemable amount`);const c=w.computeAmountOutMinimumUsdc(l,w.toBigInt(t.price,"price"),i);return{collateral:e,actions:w.buildDytmActions({collateral:e,dytmOffice:r,processor:s,gmToken:e.asset,ondoGMSwap:n.ondoGMSwap,usdc:n.usdc,gmAmount:l,amountOutMinimum:c,signature:w.base64ToHex(t.signature),quote:w.mapAttestationToOndoQuote(t,BigInt(a))}),amountOutMinimum:c}},DT=async({plans:e,target:t,dytmOffice:n,processor:r,chainId:s,slippagePercent:a})=>{const i=e.flatMap(h=>h.gmCollaterals),c=(i.length?await OT(s,i):[]).map(({collateral:h,attestation:f})=>LT({collateral:h,attestation:f,target:t,dytmOffice:n,processor:r,chainId:s,slippagePercent:a})),d=e.map(({group:h,outputAssetCollaterals:f})=>{const v=c.filter(x=>x.collateral.accountId===h.accountId),T=f.map(x=>w.buildDytmOutputAssetWithdrawAction({collateral:x,dytmOffice:n,processor:r})),b=zt(f.map(_T)),A=h.debt?w.buildDytmRepayActions({accountId:h.accountId,debtKey:h.debt.debtKey,dytmOffice:n,usdc:t.usdc}):[];return{actions:[...v.flatMap(x=>x.actions),...T,...A],amountOutMinimum:zt(v.map(x=>x.amountOutMinimum))+b,debtAmount:h.debt?.amount??0n}}),p=zt(d.map(h=>h.amountOutMinimum)),g=zt(d.map(h=>h.debtAmount));return{actions:d.flatMap(h=>h.actions),outputAsset:t.usdc,minOutputAmount:p>g?p-g:0n}},Ea=({address:e,chainId:t})=>{const{dytmOfficeAddress:n,assetGuardAddress:r=u.AddressZero,hasAssets:s}=pt({address:e,chainId:t}),a=Fv(t),i=_.usePublicClient({chainId:t}),l=_.useConfig(),c=fe.useQueryClient(),d=fn(),p=_e();return m.useCallback(async g=>{const h=new Map,f=ST[t];if(!i||!s||!n||!f)return h;const v=w.isZeroAddress(r)?await a(n):r;if(!v||w.isZeroAddress(v))return h;const{processor:T,assetData:b}=await NT(i,v,e,g);if(!T||w.isZeroAddress(T)||!b?.length)return h;const A=P=>!Gt(P)&&w.isEqualAddress(P.asset,f.usdc),x=b.filter(P=>Gt(P)&&!P.isDebt&&P.amount>0n).map(P=>P.asset),S=await PT(l,c,t,x),L=P=>Gt(P)&&!w.isUnswappableGmDust(P.amount,S.get(P.asset)),O=w.groupPreviewByAccount(b).map(P=>{const U=P.collaterals.filter(Y=>Y.amount>0n),J=U.filter(Y=>!Gt(Y)&&!A(Y));if(J.length)throw new Error(`Chamber Lending Market withdrawal: no unwind route for collateral ${J.map(Y=>`${Y.asset} (type ${Y.assetType})`).join(", ")}`);return{group:P,gmCollaterals:U.filter(L),outputAssetCollaterals:U.filter(A)}}).filter(P=>P.gmCollaterals.length+P.outputAssetCollaterals.length>0);if(!O.length)return h;if(!d&&O.some(P=>P.gmCollaterals.length>0))throw new Error("Chamber Lending Market withdrawal: Ondo integration is not configured for the collateral unwind");const M=await DT({plans:O,target:f,dytmOffice:n,processor:T,chainId:t,slippagePercent:p});return h.set(n.toLowerCase(),{withdrawData:w.encodeUnwindPlan(M),slippageTolerance:ET}),h},[e,r,t,l,n,a,s,d,i,c,p])},Ca=async({assets:e,getSwapQuotes:t,signal:n,buildKey:r})=>{const s=await Promise.all(e.map(a=>t({signal:n,variables:{...a,fromAddress:u.MULTI_CHAIN_SWAPPER_CONTRACT_ADDRESS}})));return e.reduce((a,i,l)=>{const c=r(i);return a[c]=s[l]??null,a},{})},kT=e=>e.length>1?1:0,RT=async({assets:e,getSwapQuotes:t,signal:n})=>Ca({assets:e,getSwapQuotes:t,signal:n,buildKey:w.buildSwapQuoteKeyForAave}),jT=(e,t)=>{const n=dr(),{effectiveSelectedAggregators:r}=Ct();return fe.useQuery({queryKey:["getSwapsQuotes",e,r],queryFn:async({signal:s,queryKey:[,a]})=>await Ca({assets:a,getSwapQuotes:n,signal:s,buildKey:({sourceAddress:i})=>i}),...t})},MT=new AbortController,BT=MT.signal,$T=({chainId:e})=>{const{account:t=u.AddressZero}=j(),n=dr();return m.useCallback(async({swapParams:r,slippage:s})=>{const a=(r?.srcData??[]).map(({asset:i,amount:l})=>({chainId:e,sourceAddress:i,destinationAddress:r?.dstData.asset??u.AddressZero,walletAddress:t,amount:l.toString(),slippage:s.toString()}));return RT({assets:a,getSwapQuotes:n,signal:BT})},[e,n,t])},_a=({address:e,chainId:t})=>{const{assets:n,assetGuardAddress:r=u.AddressZero,hasAssets:s}=je({address:e,chainId:t}),a=_.usePublicClient({chainId:t}),i=fn(),l=_e();return m.useCallback(async c=>{const d=new Map;if(!i||!a||!s||w.isZeroAddress(r))return d;const p=await Promise.all(n.map(f=>hn({address:r,abi:w.OndoGMTokenAssetGuardAbi,functionName:"previewGmTokenAmount",args:[e,f.address,c],publicClient:a}))),g=n.flatMap((f,v)=>{const T=p[v];return T===void 0||T<=0n?[]:[{address:f.address,tokenAmount:k.formatUnits(T,u.DEFAULT_PRECISION$1)}]});if(g.length===0)return d;const{attestations:h}=await eo({chainId:t,items:g});for(const f of h){const v=w.encodeOndoWithdrawData({attestation:f,chainId:BigInt(t),slippagePercent:l});d.set(f.assetAddress.toLowerCase(),{withdrawData:v,slippageTolerance:u.DEFAULT_ONDO_WITHDRAWAL_CONTRACT_SLIPPAGE})}return d},[e,r,t,i,n,a,s,l])},UT=({address:e,chainId:t})=>{const n=w.getContractAddressById("aaveLendingPoolV3",t),{data:{getSupportedAssets:r}={}}=Dt({address:e,chainId:t}),s=yT({address:e,chainId:t}),a=$T({chainId:t}),i=_a({address:e,chainId:t}),l=Ea({address:e,chainId:t});return m.useCallback(async({withdrawAmountD18:c,slippage:d,isAutoSlippage:p,estimate:g,transactionArgs:h})=>{const f=w.getComplexAssetDataSlippageTolerance({chainId:t,slippage:d}),v=p?w.getAutoSlippageSimulationCandidates({maxSlippage:d}):[],[T,b]=await Promise.all([i(c),l(c)]),A=new Map([...T,...b]);if(!r?.some(P=>w.isEqualAddress(P,n)))return w.createDefaultComplexAssetData(r,f,A);const S=P=>w.enrichAssetsWithSwapQuotes(r,n,{withdrawAmountD18:c,slippage:P,fetchAaveSwapParams:s,fetchAaveSwapQuotes:a});if(p)return await w.tryEstimateWithSlippageValues(v,S,g,h,A)??w.createDefaultComplexAssetData(r,f,A);const L=await S(d),O=w.extractAvailableRouterKeys(L);return await w.tryEstimateWithRouters(O,L,f,g,h,A)??w.createDefaultComplexAssetData(r,f,A)},[n,t,s,a,i,l,r])};function er(e,t,n){const[r,s]=m.useState(n),a=w.clientSide?e==="sessionStorage"?sessionStorage:localStorage:null,i=m.useCallback(l=>{try{s(l),a?.setItem(t,JSON.stringify(l))}catch(c){console.error(c)}},[t,a]);return m.useEffect(()=>{try{const l=a?.getItem(t);l&&s(JSON.parse(l))}catch(l){console.error(l)}},[t,a]),[r,i]}const Br=(e,t)=>{const[n,r]=m.useState(e);return m.useEffect(()=>{const s=setTimeout(()=>{r(e)},t);return()=>{clearTimeout(s)}},[e,t]),n},FT=()=>{const e=y(),[t]=R(),n=qe(),r=_e(),[{slippage:s}]=X(),a=s==="auto",i=UT(e);return m.useCallback(async l=>{const c=w.parseAmountToD18(t.value),d=n?[c]:[e.address,c],p=await i({withdrawAmountD18:c,slippage:r,isAutoSlippage:a,estimate:l,transactionArgs:d});return[...d,p]},[i,a,n,e.address,t.value,r])},WT=({debounceTime:e}={})=>{const t=y(),n=qe(),[r]=R(),s=_e(),{data:{getSupportedAssets:a}={}}=Dt(t),i=Br(r.value||"0",e??0);return m.useMemo(()=>{const l=w.getComplexAssetDataSlippageTolerance({chainId:t.chainId,slippage:s}),c=w.parseAmountToD18(i),d=(a??[]).map(p=>({supportedAsset:p,withdrawData:"",slippageTolerance:l}));return n?[c,d]:[t.address,c,d]},[s,i,a,n,t.address,t.chainId])},GT=(e,{enabled:t})=>{const{address:n,chainId:r}=y(),[s]=B(),{hasAssets:a,isReady:i}=je({address:n,chainId:r}),{hasAssets:l,isReady:c}=pt({address:n,chainId:r}),d=_a({address:n,chainId:r}),p=Ea({address:n,chainId:r}),g=_e(),h=i&&c,f=a||l,v=w.isEqualAddress(s.address,u.USDC_MAINNET.address),{data:T,isError:b,isFetching:A}=fe.useQuery({queryKey:["initWithdrawSimulationWithdrawData",n,r,e.toString(),g],queryFn:async()=>{const[x,S]=await Promise.all([d(e),p(e)]);return new Map([...x,...S])},enabled:t&&f&&h&&v&&e>BigInt(0),refetchOnWindowFocus:!1});return h?f?v?{overrides:b?w.EMPTY_PER_ASSET_WITHDRAW_DATA:T,isFetching:A}:{overrides:void 0,isFetching:!1}:{overrides:w.EMPTY_PER_ASSET_WITHDRAW_DATA,isFetching:!1}:{overrides:void 0,isFetching:!0}},zT=({assets:e,chainId:t})=>e.flatMap(({token:n})=>[{address:n,abi:k.erc20Abi,functionName:"symbol",chainId:t,args:[]},{address:n,abi:k.erc20Abi,functionName:"decimals",chainId:t,args:[]},{address:w.getContractAddressById("factory",t),abi:u.PoolFactoryAbi,functionName:"getAssetPrice",chainId:t,args:[n]}]),HT=3,Ia=({assets:e,chainId:t})=>{const n=m.useCallback(r=>e.map(({token:s,balance:a},i)=>{const l=i*HT,c=l+1,d=c+1,p=Number(r[c]?.result??u.DEFAULT_PRECISION),g=u.BRIDGED_TOKENS_SYMBOLS[s.toLowerCase()]??r[l]?.result?.toString()??"",h=new I(a.toString()).shiftedBy(-p).toNumber(),f=new I(r[d]?.result?.toString()??0).shiftedBy(-u.DEFAULT_PRECISION).toNumber(),v=h*f;return{address:s,symbol:g,decimals:p,rawBalance:a,balance:h,price:f,valueInUsd:v}}).sort((s,a)=>a.valueInUsd-s.valueInUsd),[e]);return _.useReadContracts({contracts:zT({assets:e,chainId:t}),query:{enabled:e.length>0,select:n}})},Ps=e=>typeof e[0]=="string"&&typeof e[1]=="bigint"&&Array.isArray(e[2]),VT=()=>{const e=y(),t=Nt(),{canSpend:n}=Sn(),r=WT({debounceTime:u.EXTENDED_DEBOUNCE_TIME}),s=Ps(r)?r[1]:BigInt(0),a=s!==BigInt(0)&&!t&&n,{overrides:i,isFetching:l}=GT(s,{enabled:a}),c=m.useMemo(()=>Ps(r)&&i?[r[0],r[1],w.overlayWithdrawData(r[2],i)]:void 0,[r,i]),d=!!c&&a,{data:p,isFetching:g,isFetched:h}=_.useSimulateContract({abi:u.EasySwapperV2Abi,address:w.getContractAddressById("easySwapperV2",e.chainId),functionName:u.EASY_SWAPPER_V2_INITIATE_WITHDRAW_METHOD,args:c,query:{enabled:d}}),f=Ia({assets:p?.result[0]??[],chainId:e.chainId});return{...f,isFetching:f.isFetching||l||g,isFetched:h||f.isFetched}},$r=()=>{const[e]=B(),{data:t=[],isFetching:n,isFetched:r}=VT(),s=Pt();return{isUnrollAndClaimTransaction:t?.length===1&&w.isEqualAddress(t[0]?.address,e.address)&&!s,isFetching:n,isFetched:r}},qT=({onErrorCallback:e}={})=>{const t=y(),n=qe(),{isUnrollAndClaimTransaction:r}=$r(),s=FT(),a=ne()[1],i=n?"multi_withdraw":r?"single_withdraw_and_claim":"single_withdraw",l=Ce({action:i,onErrorCallback:e}),c=n?u.DEFAULT_MULTI_ASSET_WITHDRAW_METHOD:r?u.EASY_SWAPPER_V2_UNROLL_AND_CLAIM_METHOD:u.EASY_SWAPPER_V2_INITIATE_WITHDRAW_METHOD,{send:d,estimate:p}=de({contractId:n?"poolLogic":"easySwapperV2",dynamicContractAddress:n?t.address:void 0,functionName:c,onSettled:l});return{withdraw:m.useCallback(async()=>{a({type:"add",action:i,symbol:t.symbol,chainId:t.chainId});const h=await s(p);return console.log("Arguments",h),d(...h)},[a,i,t.symbol,t.chainId,s,p,d]),action:i}},Ur=({trade:e,onErrorCallback:t})=>{const n=E(),{showError:r,closeError:s}=Ve(),{account:a}=j(),i=y(),[l]=R(),[c]=B(),[d]=ve(),p=Q()[1],g=ne()[1],h=sn(),f=qe(),{isUnrollAndClaimTransaction:v}=$r(),T=Ae({symbol:l.symbol,address:l.address}),b=d==="deposit",A=ya(),x=b?"deposit":f?"multi_withdraw":v?"single_withdraw_and_claim":"single_withdraw",S=async()=>{const L=i.chainId;s(),p({isOpen:!0,status:"Wallet",action:x,link:"",sendTokens:[l],receiveTokens:b||v?[c]:null,meta:b?{}:{withdrawPercentage:l.value&&T?new I(l.value).div(T).toNumber():0}});try{await e()}catch(O){console.error(O),(O instanceof We||O instanceof Et)&&(t?.(),r(O.message),O instanceof We&&h?.(O,i.address,L,a)),p({isOpen:!1,status:"None",link:"",sendTokens:null,receiveTokens:null,meta:{}}),g({type:"remove",status:"fail"})}};return{disabled:!A,label:b?n.depositAction:f?n.withdrawAction:v?n.unrollAndClaimAction:n.unrollAction,handleTrade:S}},YT=1,KT="USD",QT=({depositValueInUsd:e,apy:t,apyCurrencyPrice:n,currency:r})=>{if(e===0||!t||!r||n===0)return{yearlyEarnings:"-",dailyEarnings:"-",monthlyEarnings:"-"};const s=e*t/100/n;return{yearlyEarnings:w.formatByCurrency({value:s,currency:r}),dailyEarnings:w.formatByCurrency({value:s/365,currency:r}),monthlyEarnings:w.formatByCurrency({value:s/12,currency:r})}},Na=({currency:e,depositValueInUsd:t,chainId:n,apy:r,disabled:s})=>{const a=e==="ETH"?u.WETH_BY_CHAIN_ID[n]?.address:e==="BTC"?u.WBTC_BY_CHAIN_ID[n]?.address:void 0,i=le({address:a??u.AddressZero,chainId:n,disabled:s||!r||!a}),l=a?Number(i):YT;return m.useMemo(()=>QT({depositValueInUsd:t,apy:r,apyCurrencyPrice:l,currency:a?e:KT}),[t,r,l,e,a])},Pa=()=>{const e=ve()[0]==="deposit",{chainId:t}=y(),[n]=Ge(),[r]=R(),s=le({address:r.address,chainId:t,disabled:!e||!n.apy}),a=Na({chainId:t,apy:n.apy?.value,currency:n.apy?.currency,depositValueInUsd:+r.value*+s,disabled:!e});return e?{showEarnings:!!n.apy?.value,...a}:{dailyEarnings:null,yearlyEarnings:null,monthlyEarnings:null,showEarnings:!1}},ZT=e=>e.chainId?e.sourceAddress?e.destinationAddress?!e.amount||e.amount==="0"||e.amount==="NaN"?{isValid:!1,error:"Missing required parameter: amount or amount must be greater than 0"}:e.slippage?{isValid:!0}:{isValid:!1,error:"Missing required parameter: slippage"}:{isValid:!1,error:"Missing required parameter: destinationAddress"}:{isValid:!1,error:"Missing required parameter: sourceAddress"}:{isValid:!1,error:"Missing required parameter: chainId"},XT=(e,t)=>{const{effectiveSelectedAggregators:n}=Ct(),r=dr(),{isValid:s}=ZT({chainId:String(e.chainId),sourceAddress:e.sourceAddress,destinationAddress:e.destinationAddress,amount:e.amount,slippage:String(e.slippage)});return fe.useQuery({queryKey:["getSwapQuotes",{...e,fromAddress:u.MULTI_CHAIN_SWAPPER_CONTRACT_ADDRESS},n],queryFn:async({signal:a,queryKey:[,i]})=>r({signal:a,variables:i}).then(l=>l?.filter(c=>!!c)??[]),...t,enabled:s&&(t?.enabled??!0)})},En=(e={})=>{const t=e?.extendedDebounceTime??!1,[n]=R(),r=Br(n.value,t?u.EXTENDED_DEBOUNCE_TIME:u.DEFAULT_DEBOUNCE_TIME);return{debouncedSendTokenValue:r,isDebouncing:n.value!==r}},Oa=({account:e,chainId:t})=>_.useReadContract({address:w.getContractAddressById("easySwapperV2",t),abi:u.EasySwapperV2Abi,functionName:"getTrackedAssets",chainId:t,args:[e],query:{enabled:!w.isZeroAddress(e)}}),JT=(e,t)=>w.isEqualAddress(e,u.USDT_MAINNET.address)&&t===Z.mainnet.id,eb=({tokenAddress:e,spenderAddress:t})=>{const{chainId:n}=y(),{account:r=u.AddressZero}=j(),s=JT(e,n),{data:a}=nt({tokenAddress:e,ownerAddress:r,spenderAddress:t,chainId:n,skip:!s}),{invalidateAllowanceQueries:i}=ut(),l=_.useWalletClient({chainId:n}),c=_.usePublicClient({chainId:n});return{resetAllowance:m.useCallback(async()=>{if(!s||!a||a===BigInt(0)||!l.data||!c)return;const p=await l.data.writeContract({address:e,abi:k.erc20Abi,functionName:"approve",args:[t,BigInt(0)],chain:l.data.chain,account:l.data.account});await c.waitForTransactionReceipt({hash:p}),await i()},[a,i,c,s,t,e,l.data])}},Ht="approve",La=({token:e,rawTokenAmount:t,spenderAddress:n,onErrorCallback:r})=>{const s=y(),[{isInfiniteAllowance:a}]=X(),i=ne()[1],l=Q()[1],{resetAllowance:c}=eb({tokenAddress:e.address,spenderAddress:n}),d=Ce({action:Ht,onErrorCallback:r}),{send:p}=de({contractId:"erc20",dynamicContractAddress:e.address,functionName:Ht,onSettled:d});return m.useCallback(async()=>(l({isOpen:!0,status:"Wallet",link:"",action:Ht,sendTokens:[{symbol:e.symbol,address:e.address,decimals:e.decimals,value:""}],receiveTokens:null,meta:{}}),i({type:"add",action:Ht,symbol:e.symbol,chainId:s.chainId}),await c(),p(n,a?u.MaxUint256:t)),[a,s.chainId,t,c,p,n,e.address,e.decimals,e.symbol,i,l])},Da=({rawAmountToSpend:e,tokenAddress:t,ownerAddress:n,spenderAddress:r,chainId:s,skip:a=!1})=>{const{data:i,isFetching:l}=nt({tokenAddress:t,ownerAddress:n,spenderAddress:r,chainId:s,skip:a});return m.useMemo(()=>a?{canSpend:!0,isFetching:!1}:!i||i===BigInt(0)?{canSpend:!1,isFetching:l}:!e||e==="0"?{canSpend:!0,isFetching:l}:{canSpend:new I(i.toString()).gte(e),isFetching:l},[l,e,i,a])},tb=()=>{const[{isInfiniteAllowance:e},t]=X(),n=ze(),r=m.useCallback(s=>{t({isInfiniteAllowance:s}),n?.(u.TRADING_PANEL_LOG_EVENT.INFINITE_ALLOWANCE_CHANGE,{[u.TRADING_LOG_EVENT_PARAM.IS_INFINITE.NAME]:s?1:0})},[t,n]);return m.useMemo(()=>[e,r],[e,r])},ka=()=>{const e=E(),[t,n]=tb();return o.jsx(vn,{defaultEnabled:t,onChange:n,label:e.infinite})},nb=()=>{const[{selectedAggregators:e},t]=X(),{effectiveAvailableAggregators:n,effectiveSelectedAggregators:r}=Ct(),s=m.useCallback(a=>{const i=e.includes(a)?e.filter(l=>l!==a):[...e,a];t({selectedAggregators:i})},[e,t]);return{availableAggregators:n,selectedAggregators:r,onAggregatorToggle:s}},Ra=()=>{const e=E(),{availableAggregators:t,selectedAggregators:n,onAggregatorToggle:r}=nb();return t.length<=1?null:o.jsx(xt,{label:e.aggregatorsLabel,tooltipText:e.aggregatorsTooltip,children:o.jsx("div",{className:"dtw-flex dtw-flex-col dtw-gap-2",children:t.map(s=>o.jsxs("label",{className:"dtw-flex dtw-items-center dtw-justify-between dtw-gap-2 dtw-text-xs dtw-text-[var(--panel-content-color)] dtw-cursor-pointer",children:[s,o.jsx(vn,{defaultEnabled:n.includes(s),onChange:()=>r(s),size:"sm"})]},s))})})},rb=()=>{const e=E();return o.jsxs(o.Fragment,{children:[o.jsx(xt,{label:e.slippageTolerance,tooltipText:e.depositSlippageWarning,children:o.jsx(Aa,{})}),o.jsx(xt,{label:e.tokenAllowance,tooltipText:e.toggleTokenApprovalAmount,children:o.jsx(ka,{})}),o.jsx(Ra,{})]})},sb="ref",ob=({vaultAddress:e,userAddress:t,query:n,logEvent:r,tagInvestorByReferrer:s})=>{const[a,i]=er("localStorage",pe.LOCAL_STORAGE_KEYS.REFERRER,""),[l,c]=er("localStorage",pe.LOCAL_STORAGE_KEYS.REF_POOL,""),d=n[sb];m.useEffect(()=>{!d||typeof d!="string"||w.isZeroAddress(e)||localStorage.getItem(pe.LOCAL_STORAGE_KEYS.REFERRER)||(i(d),c(e),r?.())},[e,d,c,i,r]),m.useEffect(()=>{if(!t||!a||l.toLowerCase()!==e.toLowerCase())return;(async()=>{try{await s({investorAddress:t,poolAddress:l,referrerAddress:a})}catch(g){console.error("[core-ui-kit]: Error on tagging investor by referrer",g)}})()},[l,a,s,t,e])},en={referrerAddress:void 0,referralData:void 0},ab=(e,t)=>{if(!e||!k.isAddress(e)||t&&w.isEqualAddress(e,t))return en;const n=k.encodeAbiParameters([{type:"address"}],[e]);return{referrerAddress:e,referralData:n}},ja=()=>{const e=uo(),{account:t}=j(),{data:n=en}=fe.useQuery({queryKey:["entryReferrer",t],queryFn:async({queryKey:[,r]})=>{if(!e||!r)return en;const s=await e(r);return ab(s,r)},enabled:!!e&&!!t,staleTime:1/0,gcTime:1/0});return n},ib=()=>{const{chainId:e,address:t}=y(),{data:{isCustomCooldownDepositAllowed:n}={}}=Ot({address:t,chainId:e});return n!==!1},Os=(e,t)=>e.length?e.find(({tokenAddress:r})=>Object.values(u.FALLBACK_ASSETS_MAP[t]??{}).some(s=>w.isEqualAddress(s.address,r)))?.tokenAddress??e[0]?.tokenAddress:null,mt=()=>{const[e]=R(),{chainId:t,address:n}=y(),r=Re({address:n,chainId:t}),s=ib();return m.useMemo(()=>{const a=r.filter(({isDeposit:c})=>c);if(w.isNativeToken(e.symbol,t)){const c=a.find(({tokenName:d})=>u.CHAIN_NATIVE_TOKENS[t]?.wrappedNativeTokenName===d);return c?{depositMethod:s?u.EASY_SWAPPER_V2_DEPOSIT_METHODS.NATIVE_CUSTOM:u.EASY_SWAPPER_V2_DEPOSIT_METHODS.NATIVE,vaultDepositTokenAddress:c.tokenAddress}:{depositMethod:s?u.EASY_SWAPPER_V2_DEPOSIT_METHODS.ZAP_NATIVE_DEPOSIT_CUSTOM:u.EASY_SWAPPER_V2_DEPOSIT_METHODS.ZAP_NATIVE_DEPOSIT,vaultDepositTokenAddress:Os(a,t)??e.address}}const l=a.find(({tokenAddress:c})=>w.isEqualAddress(c,e.address));return l?{depositMethod:s?u.EASY_SWAPPER_V2_DEPOSIT_METHODS.DEPOSIT_CUSTOM:u.EASY_SWAPPER_V2_DEPOSIT_METHODS.DEPOSIT,vaultDepositTokenAddress:l.tokenAddress}:{depositMethod:s?u.EASY_SWAPPER_V2_DEPOSIT_METHODS.ZAP_DEPOSIT_CUSTOM:u.EASY_SWAPPER_V2_DEPOSIT_METHODS.ZAP_DEPOSIT,vaultDepositTokenAddress:Os(a,t)??e.address}},[t,s,r,e.address,e.symbol])},jt=()=>{const[e]=R(),{vaultDepositTokenAddress:t}=mt();return!w.isEqualAddress(e.address,t)},Cn=()=>{const e=Pr(),[{slippage:t}]=X(),n=jt();return t==="auto"?n?e:u.DEFAULT_DEPOSIT_SLIPPAGE:t},Mt=()=>{const{account:e=u.AddressZero}=j(),{chainId:t}=y(),[n]=R(),{debouncedSendTokenValue:r}=En(),{vaultDepositTokenAddress:s}=mt(),a=jt(),i=Cn();return XT({sourceAddress:n.address,destinationAddress:s,amount:new I(r).shiftedBy(n.decimals).toFixed(0),chainId:t,slippage:i.toString(),walletAddress:e},{enabled:a&&!!r,refetchInterval:u.SWAP_QUOTE_REFRESH_INTERVAL_MS})},Ma=()=>{const{defaultNoSwapMinDepositAmountGap:e}=q(),{address:t,chainId:n}=y(),[r]=R(),[s]=B(),{data:{entryFee:a}={}}=ce({address:t,chainId:n}),i=w.getPercent(Number(a??"0"),u.MANAGER_FEE_DENOMINATOR),[{slippage:l}]=X(),c=l==="auto",d=Cn(),p=jt(),g=+le({address:r.address,chainId:n}),h=+ue({address:t,chainId:n});if(p){const T=Number(r.value||0)*g*(1-i/100)/h;return new I(T).shiftedBy(s.decimals).times(1-d/100).toFixed(0)}const f=c?e:d;return new I(s.value||"0").shiftedBy(s.decimals).times(1-f/100).toFixed(0)},lb=({isDepositWithSwapTransaction:e,sendTokenAddress:t,sendTokenValue:n})=>{const{chainId:r}=y(),s=+le({address:t,chainId:r}),{vaultDepositTokenAddress:a}=mt(),{data:i}=_.useReadContract({address:a,abi:k.erc20Abi,functionName:"decimals",chainId:r}),l=+le({address:a,chainId:r,refetchInterval:u.SHORTEN_POLLING_INTERVAL,disabled:!e}),c=Number(n||"0")*s;return i&&l!==0&&Number.isFinite(c)?new I(c/l).shiftedBy(i).times(1-u.DEFAULT_RECEIVED_VALUE_GAP/100).toFixed(0):"0"},Ba=()=>{const[e]=R(),{debouncedSendTokenValue:t}=En(),n=jt(),r=lb({isDepositWithSwapTransaction:n,sendTokenAddress:e.address,sendTokenValue:t});if(n)return r;const s=new I(t||"0").shiftedBy(e.decimals);return s.isFinite()?s.toFixed(0):"0"},cb="0x",tr=(e,t,n=[],r)=>{const{vaultAddress:s,vaultDepositTokenAddress:a,vaultDepositTokenAmount:i,minVaultTokensReceivedAmount:l,sendTokenAmount:c}=t,d=r??cb;switch(e){case"nativeDeposit":case"nativeDepositWithCustomCooldown":return[s,l,d,{value:i}];case"deposit":case"depositWithCustomCooldown":return[s,a,i,l,d];case"zapNativeDeposit":case"zapNativeDepositWithCustomCooldown":return[...n,d,{value:c}];case"zapDeposit":case"zapDepositWithCustomCooldown":return[...n,d]}},db=async({baseArgs:e,swapQuotes:t,estimate:n,depositSlippage:r,isAutoSlippage:s,autoSlippageCandidates:a=u.SLIPPAGE_AUTO_SIMULATION_CANDIDATES,sendTokenAddress:i,depositMethod:l,referralData:c})=>{const{vaultAddress:d,vaultDepositTokenAddress:p,vaultDepositTokenAmount:g,minVaultTokensReceivedAmount:h,sendTokenAmount:f}=e;if(!t?.length)return console.warn("[Deposit] No available routers found for swap"),[];if(s){for(const T of a)for(const b of t){const A=w.buildZapDepositTransactionArguments({vaultAddress:d,sendTokenAddress:i,sendTokenAmount:f,minVaultTokensReceivedAmount:h,vaultDepositTokenAddress:p,swapData:b?.rawTransaction.data??"0x",routerKey:b?.routerKey,swapDestinationAmount:g,swapSlippage:T}),x=tr(l,e,A,c),{error:S}=await n(...x);if(!S)return console.debug(`[Deposit] Auto slippage simulation succeeded: slippage=${T}%, router=${b?.routerKey}`),console.debug("[Deposit] Transaction arguments:",x),x}a.length&&console.warn("[Deposit] All slippage simulation candidates failed, falling back to resolved slippage")}let v=[];for(const T of t){const b=w.buildZapDepositTransactionArguments({vaultAddress:d,sendTokenAddress:i,sendTokenAmount:f,minVaultTokensReceivedAmount:h,vaultDepositTokenAddress:p,swapData:T?.rawTransaction.data??"0x",routerKey:T?.routerKey,swapDestinationAmount:g,swapSlippage:r});v=tr(l,e,b,c);const{error:A}=await n(...v);if(!A)return v}return console.warn("[Deposit] No valid routers found for swap"),v},ub=e=>e==="zapNativeDeposit"||e==="zapNativeDepositWithCustomCooldown"||e==="zapDeposit"||e==="zapDepositWithCustomCooldown",pb=({depositMethod:e,vaultDepositTokenAddress:t})=>{const{address:n}=y(),[r]=R(),[{slippage:s}]=X(),a=r.value||"0",i=new I(a).shiftedBy(r.decimals).toFixed(0),l=Ba(),{data:c}=Mt(),d=Ma(),p=Cn(),{referralData:g}=ja(),h=s==="auto",f=h?w.getAutoSlippageSimulationCandidates({maxSlippage:p}):void 0;return m.useCallback(async v=>{const T={vaultAddress:n,vaultDepositTokenAddress:t,vaultDepositTokenAmount:l,minVaultTokensReceivedAmount:d,sendTokenAmount:i},b=ub(e);try{return b?await db({baseArgs:T,swapQuotes:c,estimate:v,depositSlippage:p,isAutoSlippage:h,autoSlippageCandidates:f,sendTokenAddress:r.address,depositMethod:e,referralData:g}):tr(e,T,void 0,g)}catch(A){return console.error(A),[]}},[n,e,p,h,f,d,g,r.address,i,c,t,l])},mb=()=>{const{chainId:e}=y(),[t]=B(),n=ne()[1],{depositMethod:r,vaultDepositTokenAddress:s}=mt(),a=pb({depositMethod:r,vaultDepositTokenAddress:s}),i=m.useCallback(()=>{n({type:"add",action:"deposit",symbol:t.symbol,chainId:e})},[n,t.symbol,e]);return{chainId:e,depositMethod:r,buildDepositTransactionArgs:a,addPendingTransaction:i}},wb="deposit",hb=({onDepositSettled:e})=>{const{depositMethod:t,buildDepositTransactionArgs:n,addPendingTransaction:r}=mb(),s=Ce({action:wb,onErrorCallback:e,onSuccessCallback:e}),{send:a,estimate:i}=de({contractId:"easySwapperV2",functionName:t,onSettled:s});return m.useCallback(async()=>{r();const l=await n(i);return a(...l)},[r,a,n,i])},Wn={},Ls=(e,t)=>`${e}:${t.toLowerCase()}`,Ds=()=>{if(!w.clientSide)return Wn;try{const e=localStorage.getItem(pe.LOCAL_STORAGE_KEYS.ONDO_PRICE_UPDATES);return e?JSON.parse(e):Wn}catch(e){return console.error(e),Wn}},gb=e=>{if(w.clientSide)try{localStorage.setItem(pe.LOCAL_STORAGE_KEYS.ONDO_PRICE_UPDATES,JSON.stringify(e))}catch(t){console.error(t)}},$a=(e,t)=>t-e.updatedAt<u.ONDO_PRICE_FRESHNESS_WINDOW_MS,fb=(e,t)=>Object.fromEntries(Object.entries(e).filter(([,n])=>$a(n,t))),Ua=()=>{const{address:e,chainId:t}=y(),n=m.useCallback(()=>{if(!e)return!1;const s=Ds()[Ls(t,e)];return!!s&&$a(s,Date.now())},[e,t]),r=m.useCallback(s=>{if(!e)return;const a=Date.now();gb({...fb(Ds(),a),[Ls(t,e)]:{updatedAt:a,txHash:s}})},[e,t]);return{isOndoPriceFresh:n,recordOndoPriceUpdate:r}},Gn="update_ondo_prices",Fa=({ondoAssets:e,onSettled:t,onErrorCallback:n})=>{const{chainId:r,symbol:s}=y(),[a]=R(),[i]=B(),l=ne()[1],c=Q()[1],d=Ce({action:Gn,onErrorCallback:n,onSuccessCallback:t}),{send:p}=de({contractId:"ondoPriceOracle",functionName:"updatePrices",onSettled:d});return m.useCallback(async()=>{const g=await fl({chainId:r,addresses:e.map(v=>v.address)});c({isOpen:!0,status:"Wallet",link:"",action:Gn,sendTokens:[a],receiveTokens:[i],meta:{}}),l({type:"add",action:Gn,symbol:s,chainId:r});const{quotes:h,signatures:f}=w.mapOndoApiResponseToUpdatePricesArgs(g);return p(h,f)},[r,e,i,p,a,s,l,c])},vb=()=>{const{account:e=u.AddressZero}=j(),{chainId:t}=y(),[n]=R(),r=w.getContractAddressById("easySwapperV2",t),s=new I(n.value||"0").shiftedBy(n.decimals).toFixed(0,I.ROUND_UP),{canSpend:a}=Da({tokenAddress:n.address,ownerAddress:e,spenderAddress:r,rawAmountToSpend:s,chainId:t,skip:w.isNativeToken(n.symbol,t)||s==="0"});return{approve:La({token:n,rawTokenAmount:s,spenderAddress:r}),canSpend:a}},Tb=()=>{const[e,t]=m.useState("idle"),n=m.useRef(!1),r=m.useRef(!1),s=m.useCallback(()=>{t("idle"),n.current=!1,r.current=!1},[]),a=m.useCallback(()=>{s()},[s]),i=hb({onDepositSettled:a}),{handleTrade:l}=Ur({trade:i,onErrorCallback:a}),{approve:c,canSpend:d}=vb(),{address:p,chainId:g}=y(),[{action:h,status:f}]=Q(),[v]=ne(),{showError:T,closeError:b}=Ve(),A=pr(),x=m.useCallback(async se=>{const D=w.getSettleDelay({chainId:g,action:se,isRabbyWallet:A});D>0&&await new Promise($t=>setTimeout($t,D))},[g,A]),S=m.useCallback(se=>{se instanceof Et&&T(se.message)},[T]),{assets:L,hasAssets:O}=je({address:p,chainId:g}),M=fn(),P=O&&M,{isOndoPriceFresh:U,recordOndoPriceUpdate:J}=Ua(),Y=Fa({ondoAssets:L,onErrorCallback:s}),re=v.find(se=>se.action==="approve")?.txHash,ge=v.find(se=>se.action==="update_ondo_prices")?.txHash,{data:Be}=_.useWaitForTransactionReceipt({hash:re,pollingInterval:u.EXTREMELY_SHORT_POLLING_INTERVAL,query:{enabled:!!re&&e==="waiting-approve-confirmation"}}),{data:ft}=_.useWaitForTransactionReceipt({hash:ge,pollingInterval:u.EXTREMELY_SHORT_POLLING_INTERVAL,query:{enabled:!!ge&&e==="waiting-prices-confirmation"}});return m.useEffect(()=>{(async()=>{if(!Be||e!=="waiting-approve-confirmation")return;const D=P&&!U();if(D&&!r.current){r.current=!0,t("updating-prices");try{await Y(),t("waiting-prices-confirmation")}catch($t){console.debug("Ondo price update failed after approve",$t),S($t),s()}return}!D&&!n.current&&(n.current=!0,await x("approve"),t("depositing"),await l())})()},[Be,g,e,l,P,U,s,S,Y,x]),m.useEffect(()=>{(async()=>{ft&&e==="waiting-prices-confirmation"&&!n.current&&(n.current=!0,J(ge),await x("update_ondo_prices"),t("depositing"),await l())})()},[ft,ge,g,e,l,J,x]),m.useEffect(()=>{e==="waiting-approve-confirmation"&&h==="approve"&&f==="None"&&s()},[e,h,f,s]),m.useEffect(()=>{e==="waiting-prices-confirmation"&&h==="update_ondo_prices"&&f==="None"&&s()},[e,h,f,s]),{approveAndDeposit:m.useCallback(async()=>{if(b(),d){if(!(P&&!U()))return l();n.current=!1,r.current=!0,t("updating-prices");try{await Y(),t("waiting-prices-confirmation")}catch(D){throw S(D),s(),D}return}t("approving"),n.current=!1,r.current=!1;try{await c(),t("waiting-approve-confirmation")}catch(se){throw s(),se}},[d,c,b,l,P,U,s,S,Y]),isLoading:e!=="idle",flowState:e}},bb=({address:e,chainId:t})=>{const[n]=R(),r=Le(),{vaultDepositTokenAddress:s}=mt(),a=Ba(),i=!!(a&&+a>0),l=_.useReadContract({address:w.getContractAddressById("easySwapperV2",t),abi:u.EasySwapperV2Abi,functionName:"depositQuote",args:[e,s,BigInt(a??0)],chainId:t,query:{enabled:r&&i&&!!n.address&&!!a,refetchInterval:u.SHORTEN_POLLING_INTERVAL}});return yr(l),l},Ab=()=>{const{address:e,chainId:t}=y(),n=Le(),[r]=R(),[s,a]=B(),[,i]=X(),{isDebouncing:l,debouncedSendTokenValue:c}=En(),{isFetching:d}=Mt(),{data:p,isFetching:g}=bb({address:e,chainId:t}),h=d||g||l;m.useEffect(()=>{if(!n||h)return;const f=p?new I(p.toString()).shiftedBy(-s.decimals).toFixed(s.decimals):"";a({value:f})},[p,s.decimals,r.address,a,n,h,c]),m.useEffect(()=>{n&&a({isLoading:h})},[n,h,a]),m.useEffect(()=>{n&&(w.isPositiveNumber(r.value)||(a({value:"0"}),i({minSlippage:0})))},[a,i,r.value,n])},Wa=(e={})=>{const{address:t,chainId:n}=y(),{data:r}=ce({address:t,chainId:n}),[s]=R(),[a]=B(),i=le({address:s.address,chainId:n}),l=ue({address:t,chainId:n}),c=e.includesEntryFee?w.getPercent(Number(r?.entryFee??"0"),u.MANAGER_FEE_DENOMINATOR):0;return m.useMemo(()=>{const d=Number(s.value||"0"),p=new I(d).times(i??"0").times(1-c/100),g=Number(a.value||"0"),h=new I(g).times(l??"0");return p.isZero()||h.isZero()?0:p.decimalPlaces(w.getConventionalTokenPriceDecimals(d)).comparedTo(h.decimalPlaces(w.getConventionalTokenPriceDecimals(g)))&&p.isGreaterThan(0)?h.dividedBy(p).minus(1).times(100).decimalPlaces(2,I.ROUND_DOWN).toNumber():0},[c,a.value,s.value,i,l])},xb=()=>{const e=Le(),[t]=B(),[,n]=X(),{isDebouncing:r}=En({extendedDebounceTime:!0}),s=Cn(),a=Wa({includesEntryFee:!0});m.useEffect(()=>{if(!e||t.isLoading||r)return;const i=a-s,l=i<0?Math.abs(Number(i.toFixed(2))):0;n({minSlippage:l})},[n,e,t.isLoading,a,s,r])};function yb(e,t,n,r){for(var s=e.length,a=n+(r?1:-1);r?a--:++a<s;)if(t(e[a],a,e))return a;return-1}var Sb=yb;function Eb(e){return e!==e}var Cb=Eb;function _b(e,t,n){for(var r=n-1,s=e.length;++r<s;)if(e[r]===t)return r;return-1}var Ib=_b,Nb=Sb,Pb=Cb,Ob=Ib;function Lb(e,t,n){return t===t?Ob(e,t,n):Nb(e,Pb,n)}var Db=Lb,kb=Db;function Rb(e,t){var n=e==null?0:e.length;return!!n&&kb(e,t,0)>-1}var jb=Rb;function Mb(e,t,n){for(var r=-1,s=e==null?0:e.length;++r<s;)if(n(t,e[r]))return!0;return!1}var Bb=Mb;function $b(){}var Ub=$b,zn=_o,Fb=Ub,Wb=fr,Gb=1/0,zb=zn&&1/Wb(new zn([,-0]))[1]==Gb?function(e){return new zn(e)}:Fb,Hb=zb,Vb=To,qb=jb,Yb=Bb,Kb=bo,Qb=Hb,Zb=fr,Xb=200;function Jb(e,t,n){var r=-1,s=qb,a=e.length,i=!0,l=[],c=l;if(n)i=!1,s=Yb;else if(a>=Xb){var d=t?null:Qb(e);if(d)return Zb(d);i=!1,s=Kb,c=new Vb}else c=t?[]:l;e:for(;++r<a;){var p=e[r],g=t?t(p):p;if(p=n||p!==0?p:0,i&&g===g){for(var h=c.length;h--;)if(c[h]===g)continue e;t&&c.push(g),l.push(p)}else s(c,g,n)||(c!==l&&c.push(g),l.push(p))}return l}var eA=Jb,tA=Mo,nA=eA;function rA(e,t){return e&&e.length?nA(e,tA(t)):[]}var sA=rA;const oA=on(sA),wt=({excludeNativeToken:e=!1}={})=>{const{address:t,chainId:n,depositParams:r}=y(),{account:s}=j(),a=Re({address:t,chainId:n}),i=Pt(),[{isCustomDepositOptionsDisabled:l}]=X(),[c]=mo(),d=m.useMemo(()=>oA([...a.filter(({isDeposit:f})=>f).map(({tokenAddress:f,tokenName:v,precision:T})=>({address:f.toLowerCase(),symbol:v,decimals:T})),...l?[]:[...r.customTokens.map(f=>({...f,address:f.address.toLowerCase()})),...c?.[n]??[]]],"address"),[a,l,r.customTokens,c,n]),p=!!d.length,g=!!s&&p,{data:h}=_.useReadContracts({contracts:d.map(({address:f})=>({address:f,abi:k.erc20Abi,functionName:"balanceOf",args:[s??u.AddressZero],chainId:n})),query:{enabled:g}});return wn(h),m.useMemo(()=>{if(!p)return[];const f=[];for(let b=0;b<d.length;b++)f[b]={value:"",address:d[b]?.address??u.AddressZero,symbol:d[b]?.symbol??d[b]?.address??u.AddressZero,balance:h?.[b]?.result?w.normalizeNumber((h?.[b]?.result).toString()??"0",d[b]?.decimals??u.DEFAULT_PRECISION):0,decimals:d[b]?.decimals??u.DEFAULT_PRECISION};const v=f.slice().sort((b,A)=>b.balance&&A.balance?A.balance-b.balance:0),T=v.find(({symbol:b})=>b===r.defaultDepositTokenSymbol);return[...T?[T]:[],...v.filter(({symbol:b})=>b!==r.defaultDepositTokenSymbol),...i||l||e?[]:[{value:"",address:u.CHAIN_NATIVE_TOKENS[n]?.address??u.AddressZero,symbol:u.CHAIN_NATIVE_TOKENS[n]?.nativeTokenSymbol??"",decimals:u.CHAIN_NATIVE_TOKENS[n]?.decimals??u.DEFAULT_PRECISION}]]},[p,i,l,e,n,d,h,r.defaultDepositTokenSymbol])},aA=()=>{const e=y(),[t]=wt(),n=R()[1],[r]=ve();m.useEffect(()=>{r==="deposit"&&t?.symbol&&n({address:t?.address,symbol:t.symbol,decimals:t?.decimals,value:"",isLoading:!t.symbol})},[n,e.address,r,t?.symbol,t?.address,t?.decimals])},iA=()=>{const{chainId:e,address:t,deprecated:n}=y(),{data:{isPrivateVault:r}={isPrivateVault:!1}}=ce({address:t,chainId:e}),s=r||n,a=ta({address:t,chainId:e});return{isVaultDepositLocked:s,isAccountWhitelisted:a}},Ga=()=>{const{defaultLockTime:e}=q(),{chainId:t,address:n}=y(),{data:{customCooldown:r}={}}=Ot({address:n,chainId:t}),{depositMethod:s}=mt(),a=r?Vt.formatDuration({minutes:Number(r)/60}):e;switch(s){case"depositWithCustomCooldown":case"nativeDepositWithCustomCooldown":case"zapDepositWithCustomCooldown":case"zapNativeDepositWithCustomCooldown":return a;default:return e}},lA="1",cA=()=>{const{account:e=u.AddressZero}=j(),{address:t,chainId:n}=y(),[r]=B(),s=ue({address:t,chainId:n}),{minDepositUSD:a}=Lr(t,n),{data:i}=la({address:t,chainId:n,account:e}),l=i?.balanceInUsdNumber??0,c=s==="0"?lA:s,d=Math.max(0,a-l),p=new I(r.value||"0").multipliedBy(c);return{requiresMinDeposit:p.isZero()?!1:p.lte(d),requiredMinDepositAmount:w.formatToUsd({value:d})}},Fr=e=>{const[{action:t,status:n}]=Q();return t===e&&(n==="Wallet"||n==="Mining")},dA=e=>{const t=we(),{showError:n}=Ve(),{onAcceptTermsOfUse:r}=Ir(),{termsOfUseAccepted:s}=q(),{swapQuoteRefreshTriggered:a}=te(),i=ur(),l=m.useRef(!1),c=a==="deposit",{disabled:d,label:p,handleTrade:g}=Ur({trade:e}),{isError:h,isLoading:f,isFetching:v}=Mt(),T=Fr("deposit"),b=d||f||c;m.useEffect(()=>(c&&!v&&!h&&!l.current&&(l.current=!0,i(null),g()),c||(l.current=!1),()=>{l.current=!1}),[c,v,h,g,i]);const A=hT(),x=()=>{A?t({type:"MERGE_OVERLAY",payload:{type:G.HYPEREVM_WARNING,isOpen:!0,onConfirm:async()=>{g()}}}):g()};return{handleClick:()=>{if(h){n(u.DEPOSIT_SWAP_DATA_ERROR);return}s?x():t({type:"MERGE_OVERLAY",payload:{type:G.TERMS_OF_USE,isOpen:!0,onConfirm:async L=>{try{L(!0),await r()&&x()}catch{console.error("Failed to verify terms of use acceptance")}finally{L(!1)}}}})},disabled:b,label:p,isLoading:T}},uA=()=>{const e=E(),{approveAndDeposit:t,isLoading:n,flowState:r}=Tb(),{handleClick:s,disabled:a}=dA(t);return{handleClick:s,disabled:a,isLoading:n,buttonText:(()=>{switch(r){case"approving":case"waiting-approve-confirmation":return e.approveDepositStep;case"updating-prices":case"waiting-prices-confirmation":return e.updateOndoPricesStep;case"depositing":return e.depositNowStep;default:return e.depositAction}})()}},pA=()=>{const{ActionButton:e=z}=$(),{handleClick:t,disabled:n,isLoading:r,buttonText:s}=uA();return o.jsx(e,{onClick:t,disabled:n,loading:r,children:s})},mA=()=>{const{deprecated:e,symbol:t,chainId:n,maintenance:r,maintenanceDeposits:s,depositCapacity:a}=y(),[i]=R(),l=Nt(),c=le({address:i.address,chainId:n}),{isVaultDepositLocked:d,isAccountWhitelisted:p}=iA(),{requiresHighSlippageConfirm:g,confirmHighSlippage:h,slippageToBeUsed:f}=kr(),{requiresMinDeposit:v,requiredMinDepositAmount:T}=cA(),A=Number(i.value||"0")*Number(c),x=a!==void 0&&A>a;return{requiresMinDeposit:v,requiresWhitelist:d&&!p,requiresHighSlippageConfirm:g,poolSymbol:t,requiredMinDepositAmount:T,deprecated:e,confirmHighSlippage:h,slippageToBeUsed:f,maintenance:r||s,exceedsDepositCapacity:x,insufficientBalance:l}},wA=()=>{const{ActionButton:e=z}=$(),t=E(),{requiresMinDeposit:n,requiredMinDepositAmount:r,requiresWhitelist:s,requiresHighSlippageConfirm:a,deprecated:i=!1,poolSymbol:l,slippageToBeUsed:c,confirmHighSlippage:d,maintenance:p,insufficientBalance:g,exceedsDepositCapacity:h}=mA();return n?o.jsx(e,{disabled:!0,children:t.minimumPurchase.replace("{value}",r)}):s||p?o.jsx(Jt,{promptText:i?t.poolIsInactive.replace("{poolSymbol}",l):p?t.poolDepositsAreMaintenance.replace("{poolSymbol}",l):t.poolIsPrivate,children:t.depositAction}):h?o.jsx(Jt,{promptText:t.exceedsDepositCapacity.replace("{poolSymbol}",l),children:t.depositAction}):g?o.jsx(e,{disabled:!0,children:t.insufficientBalance}):a?o.jsx(e,{onClick:d,children:t.confirmMaxSlippage.replace("{slippagePercentage}",`${Math.abs(c)}`)}):o.jsx(pA,{})},hA=()=>{const[e,t]=R(),{chainId:n}=y(),r=le({address:e.address,chainId:n}),s=Tn({symbol:e.symbol,address:e.address});return{...e,price:r,balance:s,updater:t}},gA=()=>{const{address:e,chainId:t}=y(),[n]=B(),r=ue({address:e,chainId:t});return{...n,price:r}},fA=()=>{const e=hA(),t=gA(),n=ze(),r=Wa(),[{minSlippage:s}]=X();return{autoFocus:!1,sendToken:e,receiveToken:t,tradingPriceDiff:r,minSlippage:s,onInputFocus:()=>{n?.(u.TRADING_PANEL_LOG_EVENT.INVEST_INPUT_FOCUS,{symbol:e.symbol,address:w.transformAddressForAnalytics(e.address)})},onInputChange:l=>{e.updater({value:l})}}},tn=({children:e})=>o.jsx("table",{className:"dtw-min-w-full dtw-border-separate",style:{borderSpacing:"0px 0.25rem"},children:o.jsx("tbody",{children:e})}),za=({children:e})=>{const t=E();return o.jsx(F.Disclosure,{children:({open:n})=>o.jsxs(o.Fragment,{children:[o.jsxs(F.DisclosureButton,{className:"dtw-px-1.5 dtw-w-[100px] dtw-flex dtw-justify-between dtw-rounded-[var(--panel-radius-secondary,var(--panel-radius))] hover:dtw-bg-[var(--panel-meta-hover-bg,var(--panel-neutral-color))] focus:dtw-outline-none",children:[n?t.hide:t.showAll,o.jsx(ye.ChevronDownIcon,{className:N("dtw-text-[color:var(--panel-icon-color,var(--panel-content-color))] !dtw-h-[var(--panel-input-token-icon-size,var(--panel-icon-size))] !dtw-w-[var(--panel-input-token-icon-size,var(--panel-icon-size))] sm:dtw-w-[var(--panel-input-token-icon-size-sm,var(--panel-icon-size-sm))] sm:dtw-h-[var(--panel-input-token-icon-size-sm,var(--panel-icon-size-sm))]",{"dtw-rotate-180 dtw-transform":n})})]}),o.jsx(F.Transition,{show:n,children:o.jsx(F.DisclosurePanel,{className:"dtw-mt-1 dtw-transition dtw-transform dtw-duration-100 dtw-ease-out data-[closed]:opacity-0 data-[closed]:-dtw-translate-y-2.5 dtw-static dtw-rounded-[var(--panel-radius-secondary,var(--panel-radius))] dtw-flex dtw-flex-col dtw-gap-1",children:e})})]})})},vA=[w.HYPERLIQUID_PERPS_ACCOUNT_ADDRESS,u.USDC_HYPEREVM.address],ks=({tokenAddress:e})=>vA.some(t=>w.isEqualAddress(e,t)),TA=({tokenAddress:e})=>w.isEqualAddress(e,w.HYPERLIQUID_PERPS_ACCOUNT_ADDRESS),Rs=({tokenAddress:e})=>w.isEqualAddress(e,u.USDC_MAINNET.address),bA=(e,t)=>{if(t!==Z.hyperEvm.id||!e.some(TA))return e;const n=e.filter(c=>!ks(c)),r=e.filter(ks),[s]=r;if(!s)return e;const a=r.reduce((c,d)=>c+Number(d.fraction),0),i=r.reduce((c,d)=>c+d.fractionUsdNumber,0),l={...s,tokenName:u.USDC_HYPEREVM.symbol,tokenAddress:u.USDC_HYPEREVM.address,precision:u.USDC_HYPEREVM.decimals,asset:{iconSymbols:[u.USDC_HYPEREVM.symbol]},fraction:a.toFixed(w.getConventionalTokenPriceDecimals(a)),fractionUsd:w.formatToUsd({value:i}),fractionUsdNumber:i};return[...n,l].sort((c,d)=>d.fractionUsdNumber-c.fractionUsdNumber)},AA=(e,t)=>{if(t.length===0)return e;const n=({tokenAddress:c})=>t.some(d=>w.isEqualAddress(c,d)),r=e.filter(c=>n(c)||Rs(c));if(!r.some(n))return e;const[s]=r;if(!s)return e;const a=r.reduce((c,d)=>c+d.fractionUsdNumber,0),i={...s,tokenName:u.USDC_MAINNET.symbol,tokenAddress:u.USDC_MAINNET.address,precision:u.USDC_MAINNET.decimals,asset:{iconSymbols:[u.USDC_MAINNET.symbol]},fraction:a.toFixed(w.getConventionalTokenPriceDecimals(a)),fractionUsd:w.formatToUsd({value:a}),fractionUsdNumber:a};return[...e.filter(c=>!n(c)&&!Rs(c)),i].sort((c,d)=>d.fractionUsdNumber-c.fractionUsdNumber)},xA=e=>{const{address:t,chainId:n}=y(),[{value:r}]=R(),s=ra({vaultTokensAmount:r,address:t,chainId:n}),{assets:a}=je({address:t,chainId:n}),i=m.useMemo(()=>AA(bA(s,n),a.map(({address:v})=>v)),[s,n,a]),l=e?i.length:u.DEFAULT_VISIBLE_ASSETS_LIMIT,c=i.find(({tokenAddress:v})=>u.FLAT_MONEY_UNIT_ADDRESSES.some(T=>w.isEqualAddress(v,T))),d=!!c&&c.amount!=="0",p=i.find(({tokenAddress:v})=>w.isEqualAddress(v,pe.MIDAS_MAPOLLO_ADDRESS)),g=!!p&&p.amount!=="0",{firstPart:h,secondPart:f}=w.sliceByIndex(i,l);return{visibleAssets:h,hiddenAssets:f,showUnitWithdrawalTip:d,unitSymbol:c?.tokenName,unitAddress:c?.tokenAddress??u.AddressZero,showMapolloWithdrawalTip:g,mapolloSymbol:p?.tokenName}},yA=({symbol:e})=>{const t=E();return o.jsxs("div",{className:"dtw-flex dtw-gap-1 dtw-items-center dtw-text-xs dtw-text-[color:var(--panel-secondary-content-color)]",children:[t.as," ",o.jsx(xe,{symbols:[e],size:"xs"})," ",e]})},Ha=({className:e,showFraction:t=!0,iconSize:n,showAllAsset:r=!1})=>{const{visibleAssets:s,hiddenAssets:a,showUnitWithdrawalTip:i,unitSymbol:l,unitAddress:c,showMapolloWithdrawalTip:d,mapolloSymbol:p}=xA(r),g=m.useCallback(({fraction:h,fractionUsd:f,tokenName:v,asset:T,tokenAddress:b})=>{const A=w.isFlatMoneyLeveragedAsset(b);return o.jsxs("tr",{children:[o.jsxs("td",{style:{width:150,maxWidth:150},children:[o.jsx(Rt,{symbol:v,iconSymbols:T.iconSymbols,symbolClasses:"dtw-text-xs dtw-font-bold",size:n}),A&&o.jsx(yA,{symbol:w.getFlatMoneyCollateralByLeverageAddress(b).symbol})]}),t&&o.jsxs("td",{style:{width:150,maxWidth:150},children:[o.jsx("p",{className:"dtw-truncate",children:h}),o.jsx("p",{className:"dtw-truncate dtw-text-xs dtw-text-[color:var(--panel-secondary-content-color)]",children:f})]})]},v)},[n,t]);return o.jsx("div",{className:N("dtw-text-sm dtw-font-light",e),children:s.length>0?o.jsxs(o.Fragment,{children:[o.jsx(tn,{children:s.map(g)}),a.length>0&&o.jsx(za,{children:o.jsx(tn,{children:a.map(g)})}),i&&o.jsxs("p",{className:"dtw-mt-1 dtw-text-[color:var(--panel-warning-content-color)] dtw-text-[length:var(--panel-label-font-size)]",children:[l," can be redeemed using"," ",o.jsxs("a",{className:"dtw-text-[color:var(--panel-warning-content-color)] dtw-inline-flex dtw-gap-0.5 dtw-underline",href:w.getFlatMoneyLinkByUnitAddress(c),target:"_blank",rel:"noreferrer",children:["Flat Money ",o.jsx(oe.ArrowTopRightOnSquareIcon,{className:"dtw-w-3"})]})]}),d&&o.jsxs("p",{className:"dtw-mt-1 dtw-text-[color:var(--panel-warning-content-color)] dtw-text-[length:var(--panel-label-font-size)]",children:[p," can be redeemed using"," ",o.jsxs("a",{className:"dtw-text-[color:var(--panel-warning-content-color)] dtw-inline-flex dtw-gap-0.5 dtw-underline",href:pe.MIDAS_MAPOLLO_LINK,target:"_blank",rel:"noreferrer",children:["Midas ",o.jsx(oe.ArrowTopRightOnSquareIcon,{className:"dtw-w-3"})]})]})]}):o.jsx(Qo,{})})},SA=({symbol:e})=>{const t=tt(),n=we(),{standalone:r}=q(),s=t.some(p=>p.symbol===e),a=e===u.MULTI_ASSET_TOKEN.symbol,i=lo(),l=s&&t.length===1;return{isAllSymbol:a,onClick:()=>{i?.({isOpen:!0,entity:s?"pool":"token"}),r&&n({type:"MERGE_OVERLAY",payload:{type:s?G.POOL_SELECT:G.TOKEN_SELECT,isOpen:!0}})},disabled:l,hideTokenIcon:r&&s}},EA=({symbol:e})=>{const{isAllSymbol:t,onClick:n,disabled:r,hideTokenIcon:s}=SA({symbol:e}),a=E();return o.jsxs("button",{className:N("dtw-flex dtw-items-center dtw-gap-1 dtw-rounded-[var(--panel-input-button-radius,var(--panel-radius))] dtw-border dtw-border-[var(--panel-input-button-border-color,var(--panel-accent-to-color))] !dtw-bg-[var(--panel-input-button-bg,var(--panel-secondary-color))] dtw-px-[var(--panel-input-button-px)] dtw-py-[var(--panel-input-button-py)] hover:dtw-opacity-[var(--panel-action-hover-opacity)] dtw-opacity-[var(--panel-action-opacity)]",{"dtw-pr-2 dtw-pointer-events-none":r}),onClick:n,disabled:r,children:[o.jsx(Rt,{symbol:e,iconSymbols:s?[]:[e],symbolClasses:"dtw-font-[var(--panel-input-token-font-weight,var(--panel-font-weight-medium))] dtw-text-[length:var(--panel-input-token-font-size,var(--panel-font-size-xs))] dtw-line-height-[length:var(--panel-input-token-line-height,var(--panel-line-height-xs))] sm:dtw-text-[length:var(--panel-input-token-font-size-sm,var(--panel-font-size))] sm:dtw-leading-[var(--panel-input-token-line-height-sm,var(--panel-line-height))] dtw-text-[color:var(--panel-input-button-content-color)]",CustomIcon:t?o.jsx(Je.CircleStackIcon,{className:"dtw-h-[var(--panel-input-token-icon-size,var(--panel-icon-size))] dtw-w-[var(--panel-input-token-icon-size,var(--panel-icon-size))] sm:dtw-w-[var(--panel-input-token-icon-size-sm,var(--panel-icon-size-sm))] sm:dtw-h-[var(--panel-input-token-icon-size-sm,var(--panel-icon-size-sm))] dtw-text-[color:var(--panel-icon-color,var(--panel-content-color))]"}):void 0,customTitle:t?a.all:void 0}),!r&&o.jsx(Je.ChevronDownIcon,{className:"dtw-flex-shrink-0 dtw-text-[color:var(--panel-icon-color,var(--panel-content-color))] dtw-h-[var(--panel-input-token-icon-size,var(--panel-icon-size))] dtw-w-[var(--panel-input-token-icon-size,var(--panel-icon-size))] sm:dtw-w-[var(--panel-input-token-icon-size-sm,var(--panel-icon-size-sm))] sm:dtw-h-[var(--panel-input-token-icon-size-sm,var(--panel-icon-size-sm))]","aria-hidden":"true"})]})};function CA(e,t){const n=new I(e);return t&&n.gt(0)?n.toFixed(6):e}function js(e){if(!e)return e;const[t,n]=e.split("."),r=(t||"").replace(/\B(?=(\d{3})+(?!\d))/g,",");return n!==void 0?`${r}.${n}`:r}function _A(e){return e.replace(/,/g,"")}const IA=e=>{e.currentTarget.blur()},NA=({displayCalculatedValue:e,assetInput:t="",assetPrice:n,tradingPriceDiff:r=0,type:s,onInputChange:a,maxBalance:i,autoFocus:l=!1,disabled:c=!1})=>{const d=m.useRef(null),{usdAmount:p,isEstimated:g}=m.useMemo(()=>{const T=Number(t||0)*Number(n||0);if(!e||isNaN(T))return{usdAmount:"",isEstimated:!1};const b=w.formatToUsd({value:T,maximumFractionDigits:w.getConventionalTokenPriceDecimals(T)});return r?{usdAmount:`${b} (${r>0?"+":""}${r}%${s===H.ERROR?"⚠":""})`,isEstimated:c}:{usdAmount:b,isEstimated:c}},[t,n,r,e,s,c]),h=()=>{d.current?.focus()},f=T=>{if(!a)return;const b=T.target.selectionStart??0,A=T.target.value,x=_A(A);if(x!==""&&!/^\d*\.?\d*$/.test(x))return;const S=x==="."?"0.":x,L=(A.slice(0,b).match(/,/g)||[]).length,O=b-L+S.length-x.length;a(S),requestAnimationFrame(()=>{if(!d.current)return;const M=js(S);let P=0,U=M.length;for(let J=0;J<M.length;J++){if(P===O){U=J;break}M[J]!==","&&P++}d.current.setSelectionRange(U,U)})},v=()=>{a&&i&&a(i)};return{inputRef:d,usdAmount:p,isEstimated:g,value:js(CA(t,c)),autoFocus:l,onContainerClick:h,onMaxBalanceClick:v,onInputChange:f}},yt=e=>{const{inputRef:t,usdAmount:n,isEstimated:r,autoFocus:s,value:a,onContainerClick:i,onMaxBalanceClick:l,onInputChange:c}=NA(e),{assetSymbol:d,onInputFocus:p,disabled:g=!1,displayMax:h=!1,displayCalculatedValue:f=!1,type:v=H.DEFAULT,isLoading:T=!1,children:b}=e,A=E(),x=N({"dtw-text-[color:var(--panel-error-content-color)]":v===H.ERROR&&!T,"dtw-text-[color:var(--panel-warning-content-color)]":v===H.WARNING&&!T});return o.jsxs("div",{className:N("dtw-relative dtw-flex dtw-flex-col dtw-gap-[var(--panel-input-group-gap,var(--panel-gap))] dtw-rounded-[var(--panel-input-radius,var(--panel-radius))] dtw-border dtw-bg-[var(--panel-input-bg,var(--panel-neutral-color))] dtw-py-[var(--panel-input-py)] dtw-px-[var(--panel-input-px)] dtw-shadow-md",{"focus-within:dtw-border-[var(--panel-input-focus-border-color)] focus-within:dtw-bg-[var(--panel-input-focus-bg)]":!g,"dtw-border-[var(--panel-input-border-color)]":v===H.DEFAULT||T,"dtw-border-[color:var(--panel-error-content-color)]":v===H.ERROR&&!T,"dtw-border-[color:var(--panel-warning-content-color)]":v===H.WARNING&&!T}),onClick:i,children:[o.jsxs("div",{className:N("dtw-flex dtw-justify-between dtw-items-center dtw-text-[length:var(--panel-input-label-font-size,var(--panel-font-size-sm))] dtw-leading-[var(--panel-input-label-line-height,var(--panel-line-height-sm))] dtw-font-[var(--panel-input-label-font-weight,var(--panel-font-weight-light))] dtw-gap-x-2"),children:[o.jsx("div",{className:"transparent-scrollbar dtw-flex-1 dtw-overflow-x-auto",children:d===u.MULTI_ASSET_TOKEN.symbol?o.jsx(Ha,{iconSize:"sm"}):o.jsx("input",{className:N("dtw-appearance-none dtw-bg-transparent dtw-text-[color:var(--panel-input-content-color,var(--panel-content-color))] placeholder:dtw-text-[color:var(--panel-input-placeholder-color,var(--panel-secondary-content-color))] dtw-text-[length:var(--panel-input-font-size,var(--panel-font-size-sm))] !dtw-leading-[var(--panel-input-line-height,var(--panel-line-height-sm))] dtw-font-[var(--panel-input-font-weight,var(--panel-font-weight-light))] dtw-outline-none focus:dtw-outline-none lg:dtw-text-[length:var(--panel-input-font-size-lg,var(--panel-font-size-lg))] lg:dtw-leading-[var(--panel-input-line-height-lg,var(--panel-line-height-lg))] dtw-w-full",x),ref:t,autoFocus:s,type:"text",inputMode:"decimal",value:a,onChange:c,onFocus:p,placeholder:"0",disabled:g,onWheelCapture:IA})}),o.jsx(EA,{symbol:d})]}),o.jsxs("div",{className:"dtw-flex dtw-items-center dtw-justify-between dtw-gap-x-2",children:[o.jsx("div",{className:"dtw-flex dtw-items-center dtw-gap-[var(--panel-input-price-gap,var(--panel-gap))] dtw-flex-1 dtw-overflow-x-auto transparent-scrollbar",children:f&&o.jsx(o.Fragment,{children:T?o.jsx("div",{className:"dtw-h-[18px]",children:o.jsx(Se,{className:"dtw-stroke-[color:var(--panel-accent-from-color)] dtw-h-[var(--panel-icon-secondary-size)] sm:dtw-h-[var(--panel-icon-secondary-size-sm)] dtw-w-[var(--panel-icon-secondary-size)] sm:dtw-w-[var(--panel-icon-secondary-size-sm)]"})}):o.jsxs("span",{className:N("dtw-flex-1 dtw-py-[1px]",{"dtw-text-[color:var(--panel-input-loading-content-color,var(--panel-loading-content-color))]":T,"!dtw-text-[color:var(--panel-secondary-content-color)] dtw-text-[length:var(--panel-balance-font-size)] !dtw-leading-[var(--panel-label-line-height,var(--panel-line-height-xs))]":!T&&v===H.DEFAULT},x),children:[n,r&&o.jsx("span",{className:"dtw-ml-1",children:A.estimated})]})})}),b,h&&o.jsx(kf,{onClick:l})]})]})},PA=()=>{const{stablePrecision:e,defaultPrecision:t}=q(),[{symbol:n,address:r}]=R(),s=Ae({symbol:n,address:r,watch:!0});return{formattedBalance:w.formatTokenBalance({balance:s,symbol:n,precision:w.isStableSymbol(n)?e:t,truncateSymbol:!0}),symbol:n}},Va=()=>{const{formattedBalance:e,symbol:t}=PA();return o.jsx(Ko,{balance:e,symbol:t})},OA=()=>{const{stablePrecision:e,defaultPrecision:t}=q(),[{symbol:n,address:r}]=B(),s=Ae({symbol:n,address:r,watch:!0});return{formattedBalance:w.formatTokenBalance({balance:s,symbol:n,precision:w.isStableSymbol(n)?e:t,truncateSymbol:!0}),symbol:n}},qa=()=>{const{formattedBalance:e,symbol:t}=OA();return o.jsx(Ko,{balance:e,symbol:t})},LA=()=>{const e=Pr(),t=Nr(),n=!Le(),{isCompleteWithdrawStep:r,isFetching:s}=Ye(),[a]=B(),[,i]=X(),l=Qa();m.useEffect(()=>{if(!(!n||a.isLoading||s)){if(r){const c=l<0?Math.abs(l):0,d=Number((c+e).toFixed(2));i({minSlippage:d});return}i({minSlippage:t})}},[i,a.isLoading,n,l,r,t,e,s])},DA=()=>{const{account:e=u.AddressZero}=j(),{chainId:t}=y();return _.useReadContract({address:w.getContractAddressById("easySwapperV2",t),abi:u.EasySwapperV2Abi,functionName:"withdrawalContracts",chainId:t,args:[e],query:{enabled:!w.isZeroAddress(e)}})},Wr=()=>{const{chainId:e}=y(),[t]=B(),n=Mr({address:t.address,chainId:e}),r=_e(),{data:s=[]}=ie(),a=s.filter(({address:g})=>w.isEqualAddress(g,t.address)).reduce((g,{rawBalance:h})=>g+h,BigInt(0)),i=s.filter(({address:g})=>!w.isEqualAddress(g,t.address)).reduce((g,{valueInUsd:h})=>g+h,0),l=new I(i).shiftedBy(u.DEFAULT_PRECISION).div(n?.toString()??"1").shiftedBy(t.decimals).toFixed(0,I.ROUND_DOWN),c=new I(l).times(1-u.DEFAULT_RECEIVED_VALUE_GAP/100).times(1-r/100).toFixed(0,I.ROUND_DOWN),d=new I(a.toString()).plus(l).toFixed(0,I.ROUND_DOWN),p=new I(a.toString()).plus(c).toFixed(0,I.ROUND_DOWN);return{expectedReceiveAmount:d,minExpectedReceiveAmount:p}},Ya=({isClaim:e,onErrorCallback:t}={})=>{const n=y(),{data:r=[]}=ie(),{data:s={}}=Me(),[a]=B(),{minExpectedReceiveAmount:i}=Wr(),l=_e(),[{slippage:c}]=X(),d=c==="auto",p=ne()[1],g=e?"claim":"swap",h=Ce({action:g,onErrorCallback:t}),f=Za(),{send:v,estimate:T}=de({contractId:"easySwapperV2",functionName:u.EASY_SWAPPER_V2_COMPLETE_WITHDRAW_METHOD,onSettled:h}),b=m.useCallback(async()=>{if(e||!f)return[];const A=Object.values(s)[0]?.map(({routerKey:S})=>S);if(!A?.length)return console.warn("[Complete Withdraw] No available routers found for swap"),[];const x=d?w.getAutoSlippageSimulationCandidates({maxSlippage:l}):[l];for(const S of x)for(const L of A){const O=Object.entries(s).reduce((U,[J,Y])=>{const re=Y?.find(ge=>ge.routerKey===L);return{...U,[J]:re}},{}),M=w.buildSwapWithdrawTransactionData({assets:r,swapData:O,receiveAssetAddress:a.address,slippage:S}),{error:P}=await T(M,i);if(!P)return console.debug(`[Complete Withdraw] Estimation succeeded: slippage=${S}%, router=${L}`),console.debug("[Complete Withdraw] Transaction arguments:",[M,i]),[M,i]}return console.error("[Complete Withdraw] All routers failed estimation"),[]},[e,f,s,r,a.address,d,l,T,i]);return m.useCallback(async()=>{p({type:"add",action:g,symbol:n.symbol,chainId:n.chainId});const A=await b();return console.log("Arguments",A),v(...A)},[g,n.chainId,n.symbol,v,b,p])},kA=()=>{const{data:e=[]}=ie();return e.reduce((t,{balance:n,price:r})=>t+n*r,0)},ie=()=>{const{account:e=u.AddressZero}=j(),{chainId:t}=y(),{data:n=[]}=Oa({account:e,chainId:t});return Ia({assets:n,chainId:t})},Ye=()=>{const{data:e=[],isFetching:t}=ie();return{isCompleteWithdrawStep:e?.length>0,isFetching:t}},Me=()=>{const e=Pr(),{chainId:t}=y(),{account:n=u.AddressZero}=j(),[{slippage:r}]=X(),[s]=B(),{data:a=[]}=ie(),i=Za(),l=m.useMemo(()=>a.filter(({address:c})=>!w.isEqualAddress(c,s.address)).map(({address:c,rawBalance:d})=>({chainId:t,sourceAddress:c,destinationAddress:s.address,walletAddress:n,amount:d.toString(),slippage:(r==="auto"?e:r).toString()})),[a,t,e,s.address,r,n]);return jT(l,{enabled:i,refetchInterval:u.SWAP_QUOTE_REFRESH_INTERVAL_MS})},RA=()=>{const[e,t]=B(),{data:n=[]}=ie(),{data:r,isFetching:s,isError:a}=Me();m.useEffect(()=>{t({isLoading:s})},[s,t]),m.useEffect(()=>{if(n.length===0||s||a)return;const i=n.reduce((l,c)=>{if(w.isEqualAddress(c.address,e.address))return l.plus(c.rawBalance.toString());const d=r?.[c.address]??[],g=d[kT(d)]?.destinationAmount??"0";return l.plus(g)},new I(0));t({value:k.formatUnits(BigInt(i.toFixed()),e.decimals)})},[n,a,s,e.address,e.decimals,r,t])},Ka=({withdraw:e,isClaim:t,onErrorCallback:n})=>{const r=E(),{showError:s}=Ve(),{account:a}=j(),i=y(),[l]=B(),c=Q()[1],d=ne()[1],p=sn(),{data:g}=ie(),{isFetching:h}=Me(),f=m.useCallback(async()=>{const v=i.chainId,T=(g??[]).map(({address:A,decimals:x,symbol:S,balance:L})=>({address:A,decimals:x,symbol:S,value:L.toString()})),b=t?null:T.filter(A=>!w.isEqualAddress(A.address,l.address));c({isOpen:!0,status:"Wallet",action:t?"claim":"swap",link:"",sendTokens:b,receiveTokens:t?T:[l]});try{await e()}catch(A){A instanceof We&&(n?.(),s(A.message),p?.(A,i.address,v,a)),c({isOpen:!1,status:"None",link:"",sendTokens:null,receiveTokens:null}),d({type:"remove",status:"fail"})}},[a,g,t,n,p,i.address,i.chainId,l,s,d,c,e]);return{disabled:t?!1:h,label:t?r.claimAction:r.swapAction,handleTrade:f}},Qa=()=>{const{expectedReceiveAmount:e}=Wr(),[t]=B(),n=new I(t.value||"0").shiftedBy(t.decimals);return e==="0"||n.isZero()?0:n.dividedBy(e).minus(1).times(100).decimalPlaces(2,I.ROUND_DOWN).toNumber()},Za=()=>{const[e]=B(),{data:t=[]}=ie();return t.length>0&&t.some(({address:n})=>!w.isEqualAddress(n,e.address))},jA=({handleTrade:e,onError:t})=>{const{showError:n}=Ve(),{data:r=[]}=ie(),{data:s,isFetching:a,isError:i}=Me(),l=m.useRef(!1),c=r.length===0,d=r.length>1;m.useEffect(()=>{i&&(t(),n(u.WITHDRAW_SWAP_DATA_ERROR))},[i,t,n]),m.useEffect(()=>{const p=d?!!s&&Object.values(s).length>0:!0;try{if(c||!p||a||l.current)return;l.current=!0,e()}catch(g){console.error(g)}},[r,a,s,e,d,c])},Gr=()=>{const e=y(),[t]=wt(),{isAllAssetsWithdrawOptionDefault:n}=q(),{data:r=[]}=ie(),s=r.length>0,{data:a}=Dr(e),{hasAssets:i,isReady:l}=pt({address:e.address,chainId:e.chainId}),c=ve()[1],d=R()[1],p=B()[1],g=()=>{d({...t,value:"",isLoading:!t}),p({address:e.address,symbol:e.symbol,decimals:u.DEFAULT_PRECISION,value:""})},h=()=>{const{customTokens:f,defaultWithdrawTokenSymbol:v}=e.withdrawParams,T=f.find(({symbol:x})=>x===v)??f[0]??u.MULTI_ASSET_TOKEN,b=l&&!i&&(n||v===u.MULTI_ASSET_TOKEN.symbol),A=s?T:a||b?u.MULTI_ASSET_TOKEN:T;d({address:e.address,symbol:e.symbol,decimals:u.DEFAULT_PRECISION,value:""}),p({...A,value:"",isLoading:!1})};return f=>{switch(c(f),f){case"deposit":return g();case"withdraw":return h()}}},MA=()=>{xa(),aA(),sa(),ie()},et=["deposit","withdraw"],BA=()=>{const[e]=ve(),t=Gr();return{handleClick:()=>{const r=et.find(s=>s!==e);r&&t(r)}}},Xa=()=>{const{handleClick:e}=BA();return o.jsx("div",{onClick:e,className:"dtw-cursor-pointer dtw-group dtw-absolute dtw-left-1/2 -dtw-top-[calc(var(--panel-inputs-group-gap)*0.5)] -dtw-translate-y-1/2 -dtw-translate-x-1/2 dtw-flex dtw-items-center dtw-justify-center dtw-rounded-[var(--panel-inputs-arrow-radius)] dtw-p-0.5 dtw-bg-[color:var(--panel-background-color)] dtw-backdrop-blur-3xl",children:o.jsx("button",{className:"!dtw-bg-[var(--panel-inputs-arrow-bg)] dtw-rounded-[var(--panel-inputs-arrow-radius)] dtw-px-[var(--panel-inputs-group-px-arrow)] dtw-py-[var(--panel-inputs-group-py-arrow)]",children:o.jsx(ye.ArrowDownIcon,{className:"dtw-h-[var(--panel-inputs-group-arrow-size)] dtw-w-[var(--panel-inputs-group-arrow-size)] dtw-text-[color:var(--panel-inputs-arrow-color)] group-hover:dtw-opacity-[var(--panel-action-hover-opacity)] group-hover:dtw-rotate-180 dtw-transition-transform"})})})},$A=()=>{const{sendToken:e,receiveToken:t,autoFocus:n,tradingPriceDiff:r,minSlippage:s,onInputFocus:a,onInputChange:i}=fA(),l=kt(s??0);return o.jsxs(o.Fragment,{children:[o.jsx(yt,{assetInput:e.value,onInputChange:i,onInputFocus:a,autoFocus:n,assetSymbol:e.symbol,assetPrice:e.price??"",displayMax:!0,maxBalance:e.balance,displayCalculatedValue:!0,isLoading:e.isLoading,children:o.jsx(Va,{})}),o.jsxs(yt,{assetInput:t.value,assetSymbol:t.symbol,assetPrice:t.price??"",displayCalculatedValue:!0,disabled:!0,tradingPriceDiff:r,type:l,isLoading:t.isLoading,children:[o.jsx(qa,{}),o.jsx(Xa,{})]})]})},UA=()=>{const{address:e,chainId:t}=y(),n=da({address:e,chainId:t}),[r]=B();if(!n)return{isMaxSupplyCapReached:!1,supplyCapInUsd:""};const{totalSupplyNumber:s,maxSupplyCapNumber:a,remainingSupplyCapInUsd:i}=n,l=Number(r.value||"0"),c=s+l>a,d=w.formatToUsd({value:i,maximumFractionDigits:0,minimumFractionDigits:0});return{isMaxSupplyCapReached:c,supplyCapInUsd:d}},FA=()=>{const{yearlyEarnings:e,dailyEarnings:t,showEarnings:n}=Pa(),r=E();return n?o.jsxs("div",{className:"dtw-flex dtw-gap-2",children:[o.jsxs("div",{className:"dtw-flex dtw-flex-col dtw-flex-1 dtw-rounded-[var(--panel-radius)] dtw-p-3",style:{backgroundColor:"var(--panel-success-bg-color)"},children:[o.jsxs("div",{className:"dtw-flex dtw-items-center dtw-gap-1",children:[o.jsx("span",{className:"dtw-text-[length:var(--panel-font-size-xs)] dtw-font-semibold dtw-text-[color:var(--panel-success-content-color)]",children:r.yearlyEarnings}),o.jsx(qt,{text:r.projectedYearlyEarningsTooltip,placement:"top",iconClassName:"dtw-h-3 dtw-w-3 dtw-text-[color:var(--panel-success-content-color)]"})]}),o.jsx("span",{className:"dtw-text-[length:var(--panel-font-size-sm)] dtw-font-medium dtw-text-[color:var(--panel-success-content-color)]",children:e})]}),o.jsxs("div",{className:"dtw-flex dtw-flex-col dtw-flex-1 dtw-rounded-[var(--panel-radius)] dtw-p-3",style:{backgroundColor:"var(--panel-success-bg-color)"},children:[o.jsxs("div",{className:"dtw-flex dtw-items-center dtw-gap-1",children:[o.jsx("span",{className:"dtw-text-[length:var(--panel-font-size-xs)] dtw-font-semibold dtw-text-[color:var(--panel-success-content-color)]",children:r.dailyEarnings}),o.jsx(qt,{text:r.projectedDailyEarningsTooltip,placement:"top",iconClassName:"dtw-h-3 dtw-w-3 dtw-text-[color:var(--panel-success-content-color)]"})]}),o.jsx("span",{className:"dtw-text-[length:var(--panel-font-size-sm)] dtw-font-medium dtw-text-[color:var(--panel-success-content-color)]",children:t})]})]}):null},WA=()=>{const e=E(),[{slippage:t,minSlippage:n,isMaxSlippageLoading:r}]=X(),s=t==="auto",a=Ma(),[i]=B(),{address:l,chainId:c}=y(),{entryFee:d}=bn({address:l,chainId:c}),{minDepositUSD:p}=Lr(l,c),g=Ga(),h=jt(),f=p?w.formatToUsd({value:p,minimumFractionDigits:0}):"",v=kt(s?n??0:t),T=pa({tradingType:"deposit",slippage:t,minSlippage:n}),b=v===H.DEFAULT?e.depositSlippageWarning:e.highSlippageWarning,A=w.formatNumberToLimitedDecimals({value:new I(a).shiftedBy(-u.DEFAULT_PRECISION).toFixed(),decimals:4});return{themeType:v,slippageTooltipText:b,isMaxSlippageLoading:r,slippagePlaceholder:T,minReceive:`${A} ${i.symbol.toUpperCase()}`,entryFee:d,entryFeeTooltipText:e.entryFeeExplanation,minDeposit:f,lockTime:g,showMinimumReceivedAmount:h}},zr=({className:e})=>{const{value:t,isLoading:n}=Sa();return o.jsxs("div",{className:N("dtw-flex dtw-h-[var(--panel-icon-secondary-size)] dtw-justify-end dtw-gap-x-2",e),children:[n&&o.jsx(Se,{className:"dtw-stroke-[color:var(--panel-accent-from-color)] dtw-h-[var(--panel-icon-secondary-size)] dtw-w-[var(--panel-icon-secondary-size)]"}),o.jsx("p",{className:N("dtw-text-right dtw-text-[length:var(--panel-meta-font-size)] dtw-leading-[var(--panel-meta-line-height)] dtw-text-[color:var(--panel-secondary-content-color)] dtw-font-[var(--panel-meta-font-weight,var(--panel-font-weight-light))]",{"dtw-text-[color:var(--panel-loading-content-color)]":n}),children:t})]})},GA=()=>{const e=E(),{slippageTooltipText:t,slippagePlaceholder:n,isMaxSlippageLoading:r,minReceive:s,themeType:a,entryFee:i,entryFeeTooltipText:l,minDeposit:c,lockTime:d,showMinimumReceivedAmount:p}=WA(),g=m.useMemo(()=>{const h=[{tooltipText:e.exchangeRate,label:e.rate,value:o.jsx(zr,{})},{tooltipText:t,label:e.maxSlippage,value:o.jsxs("div",{className:"dtw-flex dtw-gap-1",children:[r&&o.jsx(Se,{className:"dtw-stroke-[color:var(--panel-accent-from-color)] dtw-h-[var(--panel-icon-secondary-size)] sm:dtw-h-[var(--panel-icon-secondary-size-sm)] dtw-w-[var(--panel-icon-secondary-size)] sm:dtw-w-[var(--panel-icon-secondary-size-sm)]"}),o.jsxs("span",{className:N({"dtw-text-[color:var(--panel-loading-content-color)]":r}),children:[n,"%"]})]})}];return p&&h.push({tooltipText:e.minReceiveAmount,label:e.minReceived,value:s}),h.push({tooltipText:l,label:e.entryFee,value:i}),c&&h.push({tooltipText:e.minDepositUsd,label:e.minDeposit,value:c}),h.push({tooltipText:e.tokensLockTime.replace("{lockTime}",d),label:e.cooldown,value:d}),h},[t,e.maxSlippage,e.entryFee,e.minReceiveAmount,e.minReceived,e.minDepositUsd,e.minDeposit,e.exchangeRate,e.rate,e.tokensLockTime,e.cooldown,r,n,p,l,i,c,s,d]);return o.jsx(ir,{collapseItems:g,themeType:a})},zA=({children:e})=>{const{DepositMetaInfo:t,MaxSupplyReachedAlert:n}=$(),{isMaxSupplyCapReached:r,supplyCapInUsd:s}=UA();return o.jsxs(V.Meta,{children:[r&&!!n&&o.jsx(n,{supplyCapInUsd:s}),o.jsx("div",{className:"dtw-bg-[var(--panel-meta-action-panel-bg)]",children:e}),o.jsx(FA,{}),o.jsx(GA,{}),t&&o.jsx(t,{})]})},HA=()=>{Ab(),xb()},VA=()=>{const{countryCode:e}=q(),{address:t,chainId:n}=y(),{hasAssets:r}=je({address:t,chainId:n}),s=e?pe.BLOCKED_COUNTRY_CODES_MAP[e]:void 0,a=e?pe.ONDO_BLOCKED_COUNTRY_CODES_MAP[e]:void 0;return{isGeoBlocked:!!s||r&&!!a,blockedCountryName:s??a??""}},qA=()=>{const{ActionButton:e=z}=$(),t=E(),{status:n}=_.useConnect(),{onConnect:r}=Ir();return o.jsx(e,{onClick:r,className:"dtw-whitespace-nowrap dtw-text-sm",loading:n==="pending",children:t.connectWallet})},YA=()=>{const{ActionButton:e=z}=$(),{switchNetwork:t}=De(),{chainId:n}=y(),r=E(),s=()=>{t?.({chainId:n})};return o.jsx(e,{onClick:s,children:r.switchNetwork})},Ja=()=>{const{account:e}=j(),{chainId:t}=De(),n=y();return{isDisconnected:!e,isWrongNetwork:t!==n.chainId}},Hr=({children:e})=>{const{isDisconnected:t,isWrongNetwork:n}=Ja();return t?o.jsx(qA,{}):n?o.jsx(YA,{}):e},KA=({onClick:e,tooltipText:t,disabled:n})=>{const[r,s]=m.useState(!1),a=()=>{e(),s(!0)};return m.useEffect(()=>{if(!r)return;const i=setTimeout(()=>{s(!1)},u.SWAP_QUOTE_REFRESH_INTERVAL_MS);return()=>clearTimeout(i)},[r]),{disabled:n||r,tooltipText:t,handleClick:a}},ei=e=>{const{disabled:t,tooltipText:n,handleClick:r}=KA(e);return o.jsx(ar,{text:n,children:o.jsx(Yt,{Icon:ye.ArrowPathIcon,onClick:r,disabled:t,containerClassName:"!dtw-self-center",className:N("dtw-h-[var(--panel-input-token-icon-size,var(--panel-icon-size))] dtw-w-[var(--panel-input-token-icon-size,var(--panel-icon-size))] sm:dtw-w-[var(--panel-input-token-icon-size-sm,var(--panel-icon-size-sm))] sm:dtw-h-[var(--panel-input-token-icon-size-sm,var(--panel-icon-size-sm))]",{"dtw-opacity-50":t})})})},QA=()=>{const{refetch:e,isFetched:t}=Mt(),{invalidateTradingQueries:n}=ut();return{handleSwapQuoteReload:()=>{n(),e()},disabled:!t}},ZA=()=>{const e=E(),{handleSwapQuoteReload:t,disabled:n}=QA();return o.jsx(ei,{tooltipText:e.refreshSwapQuoteTooltip,onClick:t,disabled:n})},XA=()=>{const{refetch:e,isFetched:t}=Me(),{invalidateTradingQueries:n}=ut();return{handleSwapQuoteReload:()=>{n(),e()},disabled:!t}},JA=()=>{const e=E(),{handleSwapQuoteReload:t,disabled:n}=XA();return o.jsx(ei,{tooltipText:e.refreshSwapQuoteTooltip,onClick:t,disabled:n})},ex=()=>Le()?o.jsx(ZA,{}):o.jsx(JA,{}),ti=({children:e,...t})=>{const{ActionButton:n=z}=$(),{openLimitSellOverlay:r,displayLimitSellOverlay:s}=oT();return s?o.jsx(n,{...t,onClick:r,children:e}):null},tx=({children:e,...t})=>{const{ActionButton:n=z}=$(),{openLimitBuyOverlay:r,displayLimitBuyOverlay:s}=wT();return s?o.jsx(n,{...t,onClick:r,children:e}):null},ni=({children:e,...t})=>{const{ActionButton:n=z}=$(),{onOpenNotificationsSettings:r}=Ir();return r?o.jsx(n,{...t,onClick:r,children:e}):null},nx=()=>{const{address:e,symbol:t}=y();return{handleAddToWallet:m.useCallback(()=>{w.addTokenToWallet({address:e,symbol:t,decimals:u.DEFAULT_PRECISION,image:Cr(t)})},[e,t])}},rx=()=>{const e=E(),{handleAddToWallet:t}=nx();return o.jsx("button",{type:"button",onClick:t,className:"dtw-underline dtw-text-[color:var(--panel-accent-from-color)] hover:dtw-opacity-80",children:e.addToWallet})},sx=()=>{const e=E(),t=we();Sn();const{symbol:n}=y(),[r]=R(),[s]=B(),a=_t()[1],{isCompleteWithdrawStep:i}=Ye(),{swapQuoteRefreshTriggered:l}=te(),c=ur(),{isFetching:d,isError:p}=Me(),g=m.useRef(!1),h=m.useCallback(()=>{a({sendToken:{symbol:n,...!i&&{amount:w.formatNumberToLimitedDecimals({value:r.value})}},receiveTokens:[{symbol:s.symbol,...s.value&&{amount:w.formatNumberToLimitedDecimals({value:s.value})}}]}),t({type:"MERGE_OVERLAY",payload:{type:G.WITHDRAW_STEPPER,isOpen:!0}})},[i,a,n,r.value,s.symbol,s.value,t]);return m.useEffect(()=>(l==="withdraw"&&!d&&!p&&!g.current&&(g.current=!0,c(null),h()),l!=="withdraw"&&(g.current=!1),()=>{g.current=!1}),[l,d,p,h,c]),{handleClick:h,disabled:l==="withdraw"&&d,label:i?e.swapAction:e.sellNow}},ri=()=>{const{ActionButton:e=z}=$(),{handleClick:t,label:n,disabled:r}=sx();return o.jsx(e,{onClick:t,disabled:r,children:n})},ox=()=>{HA();const e=E(),{isSanctioned:t}=q(),{GeoBlockAlert:n,SanctionedAlert:r,CustomDepositMeta:s}=$(),{isGeoBlocked:a,blockedCountryName:i}=VA(),l=a||t,c=[{Component:n?()=>o.jsx(n,{countryName:i}):void 0,value:a,key:"geo-block"},{Component:r,value:t,key:"sanctioned"}].filter(({value:d})=>d);return o.jsxs(o.Fragment,{children:[o.jsx(V.InputGroup,{children:o.jsx($A,{})}),o.jsx(zA,{children:l?c.map(({Component:d,key:p})=>d&&o.jsx(d,{},p)):o.jsx(o.Fragment,{children:o.jsx(Hr,{children:o.jsxs("div",{className:"tw-flex tw-flex-col tw-gap-2",children:[o.jsx(wA,{}),o.jsx(tx,{highlighted:!1,children:e.limitBuy})]})})})}),s&&o.jsx(s,{})]})},ax=()=>o.jsx(V.Panel,{children:o.jsx(ox,{})}),ix=e=>Object.keys(G).some(t=>t===e),lx=({children:e})=>{const t=fa();let n=null;return m.Children.forEach(e,r=>{if(m.isValidElement(r)){const s=r.props.type;ix(s)&&t[s]&&t[s].isOpen&&(n=r)}}),n},cx=({type:e})=>{const t=E(),{DepositTermsOfUse:n,ActionButton:r=z}=$(),{handleReject:s,handleConfirm:a,isPending:i}=ae({type:e});return o.jsxs(V.Overlay,{className:"dtw-justify-between dtw-gap-y-1 dtw-overflow-y-auto theme-scrollbar",children:[o.jsxs("div",{className:"dtw-flex dtw-gap-1 dtw-items-center dtw-text-warning",children:[o.jsx(oe.ExclamationCircleIcon,{className:"dtw-h-5 dtw-w-5"}),o.jsx("p",{children:t.termsOfUse})]}),o.jsxs("div",{className:"dtw-flex dtw-flex-col dtw-gap-2",children:[o.jsxs("p",{className:"dtw-self-start dtw-text-sm",children:[t.termOfUseDepositListTitle,":"]}),o.jsxs("ul",{className:"dtw-list-inside dtw-list-disc dtw-flex dtw-flex-col dtw-gap-y-1 dtw-text-sm dtw-text-[color:var(--panel-secondary-content-color)]",children:[o.jsx("li",{children:t.termOfUseDepositAssetSlippage}),o.jsx("li",{children:t.termOfUseDepositBugs}),o.jsx("li",{children:t.termOfUseDepositDowntime}),o.jsx("li",{children:t.termOfUseDepositAuditRisk})]}),n&&o.jsx(n,{})]}),o.jsxs("div",{className:"dtw-flex dtw-flex-col dtw-gap-2 dtw-w-full",children:[o.jsx(r,{highlighted:!1,onClick:s,children:t.back}),o.jsx(r,{onClick:a,disabled:i,loading:i,children:o.jsx("span",{children:i?t.confirmInWallet:t.termOfUseDepositAccept})})]})]})},dx=({type:e})=>{const t=E(),{ActionButton:n=z}=$(),{handleReject:r,handleConfirm:s}=ae({type:e});return o.jsxs(V.Overlay,{className:"dtw-justify-between dtw-gap-y-1",children:[o.jsxs("div",{className:"dtw-flex dtw-gap-1 dtw-items-center dtw-text-warning",children:[o.jsx(oe.ExclamationCircleIcon,{className:"dtw-h-5 dtw-w-5"}),o.jsx("p",{children:t.highSlippage})]}),o.jsx("p",{className:"dtw-text-sm",children:t.responsibleHighSlippage}),o.jsxs("p",{className:"dtw-text-sm dtw-self-start",children:[t.highSlippageListTitle,":"]}),o.jsxs("ul",{className:"dtw-list-inside dtw-list-disc dtw-flex dtw-flex-col dtw-gap-y-1 dtw-text-sm dtw-text-[color:var(--panel-secondary-content-color)] dtw-max-h-28 dtw-overflow-y-auto theme-scrollbar",children:[o.jsx("li",{children:t.termOfUseDepositAssetSlippage}),o.jsx("li",{children:t.termOfUseDepositBugs}),o.jsx("li",{children:t.termOfUseDepositDowntime}),o.jsx("li",{children:t.termOfUseDepositAuditRisk})]}),o.jsxs("div",{className:"dtw-flex dtw-flex-col dtw-gap-2 dtw-w-full",children:[o.jsx(n,{highlighted:!1,onClick:r,children:t.back}),o.jsx(n,{onClick:s,children:t.confirm})]})]})},ux=({type:e})=>{const t=E(),{ActionButton:n=z}=$(),{handleReject:r,handleConfirm:s}=ae({type:e});return o.jsxs(V.Overlay,{className:"dtw-justify-between dtw-gap-y-3",children:[o.jsx("div",{className:"dtw-flex dtw-gap-1 dtw-items-center",children:o.jsx("p",{children:t.hyperEvmWarningTitle})}),o.jsxs("div",{className:"dtw-flex dtw-flex-col dtw-gap-2 dtw-text-sm dtw-text-[color:var(--panel-secondary-content-color)]",children:[o.jsx("p",{children:t.hyperEvmWarningDeposit}),o.jsx("p",{children:t.hyperEvmWarningWithdraw}),o.jsx("p",{className:"dtw-text-[color:var(--panel-content-color)]",children:t.hyperEvmWarningTrust})]}),o.jsxs("div",{className:"dtw-flex dtw-flex-col dtw-gap-2 dtw-w-full",children:[o.jsx(n,{highlighted:!1,onClick:r,children:t.back}),o.jsx(n,{onClick:s,children:t.hyperEvmUnderstandRisks})]})]})},px=({token:e,onSelect:t})=>({onClick:()=>{t(e)}}),mx=({token:e,onSelect:t})=>{const{onClick:n}=px({token:e,onSelect:t});return o.jsxs("div",{className:"dtw-space-y-3 dtw-rounded-xl dtw-py-3 dtw-pl-4 dtw-pr-3",onClick:n,children:[o.jsx(Rt,{symbol:e.symbol,iconSymbols:[e.symbol],size:"xl",CustomIcon:o.jsx(Je.CircleStackIcon,{className:"dtw-h-10 dtw-w-10 group-hover:dtw-opacity-100 dtw-opacity-100 sm:dtw-opacity-50"}),symbolClasses:"dtw-text-sm dtw-font-medium group-hover:dtw-opacity-100 dtw-opacity-100 sm:dtw-opacity-80"}),o.jsx(Ha,{className:"dtw-pt-2",showFraction:!1,showAllAsset:!0})]})},wx=({token:e,onSelect:t,isActive:n,onClose:r})=>{const s=Ae({symbol:e.symbol,address:e.address}),{defaultPrecision:a}=q();return{formattedBalance:new I.BigNumber(s).toFixed(a,I.BigNumber.ROUND_DOWN),onClick:()=>{if(n){r();return}t(e)}}},si=({token:e,onSelect:t,onClose:n,isActive:r=!1})=>{const{onClick:s,formattedBalance:a}=wx({token:e,onSelect:t,onClose:n,isActive:r});return o.jsxs("div",{className:"dtw-flex dtw-items-center dtw-rounded-xl dtw-gap-x-2 dtw-py-3 dtw-pl-4 dtw-pr-3",onClick:s,children:[o.jsx(Rt,{symbol:e.symbol,iconSymbols:[e.symbol],size:"xl",symbolClasses:N("group-hover:dtw-opacity-100 dtw-text-sm dtw-font-medium",{"dtw-opacity-100 sm:dtw-opacity-80":!r,"dtw-opacity-100":r}),className:N("group-hover:dtw-opacity-100",{"dtw-opacity-100 sm:dtw-opacity-50":!r,"dtw-opacity-100":r})}),o.jsxs("div",{className:"dtw-flex dtw-flex-col dtw-self-end dtw-text-sm dtw-font-light dtw-text-[color:var(--panel-balance-content-color)]",children:[r&&o.jsx(Je.CheckIcon,{className:"dtw-w-4 dtw-self-end dtw-text-themeGreen"}),o.jsxs("div",{children:[o.jsx("span",{className:"dtw-mr-1 dtw-text-xs",children:e.symbol}),a]})]})]})},hx=[],gx=()=>{const e=y(),[t]=ve(),[n,r]=R(),[s,a]=B(),{data:i}=Dr(e),l=wt(),c=i?hx:e.withdrawParams.customTokens;return m.useMemo(()=>({tokens:t==="deposit"?l:c,updater:t==="deposit"?r:a,activeTokens:[n,s]}),[t,l,c,r,a,n,s])},fx=({searchQuery:e,type:t})=>{const[{isMultiAssetWithdrawalEnabled:n}]=X(),{isCompleteWithdrawStep:r}=Ye(),s=Pt(),[a]=ve(),{handleReject:i}=ae({type:t}),{address:l,chainId:c}=y(),{hasAssets:d,isReady:p}=pt({address:l,chainId:c}),{tokens:g,updater:h,activeTokens:f}=gx(),v=m.useMemo(()=>e?g.filter(({symbol:b})=>b.toLowerCase().includes(e)):g,[e,g]),T=m.useCallback(({address:b,value:A,decimals:x,symbol:S})=>{h({address:b,value:A,decimals:x,symbol:S}),i()},[h,i]);return{tokenList:v,activeTokens:f,onSelect:T,onClose:i,showMultiAssetWithdrawalOption:n&&a==="withdraw"&&!s&&!r&&p&&!d}},vx=({type:e,searchQuery:t})=>{const n=E(),{tokenList:r,activeTokens:s,onSelect:a,showMultiAssetWithdrawalOption:i,onClose:l}=fx({type:e,searchQuery:t});return o.jsxs(V.Overlay,{onClose:l,centered:!1,className:"dtw-gap-[var(--panel-gap)]",children:[o.jsx("span",{className:"dtw-text-center dtw-text-[length:var(--panel-font-size-sm)] dtw-font-[var(--panel-font-weight-medium)]",children:n.selectToken}),o.jsxs("ul",{className:"dtw-grid dtw-gap-[calc(var(--panel-gap) * 0.5)] dtw-overflow-y-auto theme-scrollbar",children:[r.map(c=>{const d=s.some(({address:p,symbol:g})=>p===c.address&&g===c.symbol);return o.jsx("li",{className:"dtw-cursor-pointer dtw-rounded-xl dtw-drop-shadow-md even:odd:dtw-bg-[color:var(--panel-popup-list-item-bg-even)] odd:dtw-bg-[color:var(--panel-popup-list-item-bg-odd)] dtw-group",children:o.jsx(si,{token:c,onSelect:a,isActive:d,onClose:l})},`${c.address}_${c.symbol}`)}),i&&o.jsx("li",{className:"dtw-cursor-pointer dtw-rounded-xl dtw-p-0.5 even:dtw-bg-[color:var(--panel-popup-list-item-bg-even)] odd:dtw-bg-[color:var(--panel-popup-list-item-bg-odd)] dtw-group",children:o.jsx(mx,{token:u.MULTI_ASSET_TOKEN,onSelect:a})})]})]})},Tx=({children:e,chainId:t})=>{const{chainConfig:n}=q(),{Image:r=Zo}=$(),s=n[t]?.iconPath,a=n[t]?.name;return o.jsxs("div",{children:[o.jsxs("div",{className:"dtw-sticky dtw-top-0 dtw-z-10 dtw-flex dtw-items-center dtw-space-x-3 dtw-bg-[color:var(--panel-popup-list-header-bg)] dtw-drop-shadow-md dtw-p-3",children:[s&&o.jsx("div",{className:"dtw-h-6 dtw-w-6",children:o.jsx(r,{className:"dtw-h-full dtw-w-full dtw-rounded-full dtw-object-contain",src:s,alt:"chain icon",width:100,height:100})}),o.jsx("p",{className:"dtw-whitespace-nowrap dtw-text-sm",children:a??t})]}),e]})},nr=(e,t)=>e.address in t?{balanceInUsd:t[e.address]?.balanceInUsd??w.formatToUsd({value:0}),balanceInUsdNumber:t[e.address]?.balanceInUsdNumber??0}:{balanceInUsd:w.formatToUsd({value:0}),balanceInUsdNumber:0},bx=e=>(t,n)=>nr(n,e).balanceInUsdNumber-nr(t,e).balanceInUsdNumber,Ax=({searchQuery:e,type:t})=>{const n=ia(),r=tt(),s=y(),{handleReject:a}=ae({type:t}),[i]=ve(),l=R()[1],c=B()[1],d=so()[1],p=m.useCallback(({address:h,value:f,decimals:v,symbol:T})=>{(i==="deposit"?c:l)({address:h,value:f,decimals:v,symbol:T}),d(h),a()},[i,l,c,a,d]);return{poolList:m.useMemo(()=>Array.from(new Set(r.map(({chainId:h})=>h))).map(h=>({chainId:h,configs:[...r.filter(f=>f.chainId===h&&!f.deprecated).map(f=>({...f,...nr(f,n),isActive:s.address===f.address})).filter(({symbol:f})=>e?f.toLowerCase().includes(e):!0).slice().sort(bx(n))]})),[e,n,r,s]),onClose:a,onSelect:p}},xx=({type:e,searchQuery:t})=>{const n=E(),{poolList:r,onClose:s,onSelect:a}=Ax({type:e,searchQuery:t});return o.jsxs(V.Overlay,{onClose:s,centered:!1,className:"dtw-gap-[var(--panel-gap)]",children:[o.jsx("span",{className:"dtw-text-center dtw-text-[length:var(--panel-font-size-sm)] dtw-font-[var(--panel-font-weight-medium)]",children:n.selectToken}),o.jsx("div",{className:"dtw-grid dtw-gap-[calc(var(--panel-gap) * 0.5)] dtw-overflow-y-auto theme-scrollbar",children:r.map(({chainId:i,configs:l})=>o.jsx(Tx,{chainId:i,children:l.map(({isActive:c,symbol:d,address:p})=>o.jsx("div",{className:N("dtw-rounded-xl dtw-drop-shadow-md even:odd:dtw-bg-[color:var(--panel-popup-list-item-bg-even)] odd:dtw-bg-[color:var(--panel-popup-list-item-bg-odd)] dtw-group",{"dtw-cursor-pointer ":!c}),children:o.jsx(si,{token:{symbol:d,address:p,value:"",decimals:u.DEFAULT_PRECISION},onSelect:a,isActive:c,onClose:s})},`${p}_${d}`))},i))})]})},yx=({type:e})=>{const{address:t,symbol:n,chainId:r}=y(),[{link:s,sendTokens:a},i]=Q(),{handleReject:l}=ae({type:e}),c=a?.[0],d=w.getTxHashShort(s),p=ue({address:t,chainId:r}),g=m.useCallback(()=>{i({isOpen:!1}),l()},[i,l]),h=pe.COVERED_CALL_VAULT_ADDRESSES.has(t.toLowerCase());return{onClose:g,link:s,vaultAddress:t,vaultSymbol:n,paidToken:c,txHash:d,vaultTokenPrice:w.formatToUsd({value:p}),showDeriveBanner:h}},Sx=e=>{const t=E(),{link:n,onClose:r,showDeriveBanner:s,vaultSymbol:a,paidToken:i,txHash:l,vaultTokenPrice:c}=yx(e),{ActionButton:d=z,DeriveSuccessBanner:p}=$(),g=ma();return o.jsxs(V.Overlay,{className:"dtw-justify-between dtw-gap-y-4",noPadding:!0,children:[o.jsxs("div",{className:"dtw-flex dtw-flex-col dtw-items-center dtw-justify-center dtw-gap-3 dtw-pt-1 dtw-px-2 dtw-w-full",children:[o.jsxs("div",{className:"dtw-flex dtw-flex-col dtw-items-center dtw-text-[color:var(--panel-success-content-color)] dtw-mb-2",children:[o.jsx(ye.CheckIcon,{className:"dtw-h-16 dtw-w-16 lg:dtw-h-24 lg:dtw-w-24 dtw-shrink-0"}),"Success"]}),o.jsx(Ue,{}),o.jsxs("div",{className:"dtw-flex dtw-items-center dtw-justify-between dtw-gap-2 dtw-w-full",children:[o.jsx("p",{children:t.orderingLabel}),o.jsxs("div",{className:"dtw-flex dtw-items-center dtw-gap-2 dtw-text-[color:var(--panel-secondary-content-color)]",children:[o.jsx("span",{children:a}),o.jsx(rx,{})]})]}),o.jsx(Ue,{}),i&&o.jsxs(o.Fragment,{children:[o.jsxs("div",{className:"dtw-flex dtw-items-center dtw-justify-between dtw-gap-2 dtw-w-full",children:[o.jsx("p",{children:t.paidLabel}),o.jsxs("div",{className:"dtw-flex dtw-flex-col dtw-items-end dtw-justify-center dtw-gap-1 dtw-text-[color:var(--panel-secondary-content-color)]",children:[i.value?w.formatNumberToLimitedDecimals({value:+i.value,decimals:4}):null," ",i.symbol]})]}),o.jsx(Ue,{})]}),o.jsxs("div",{className:"dtw-flex dtw-items-center dtw-justify-between dtw-gap-2 dtw-w-full",children:[o.jsx("p",{children:t.priceLabel}),o.jsx("p",{className:"dtw-text-[color:var(--panel-secondary-content-color)]",children:c})]}),n&&o.jsxs(o.Fragment,{children:[o.jsx(Ue,{}),o.jsxs("div",{className:"dtw-flex dtw-items-center dtw-justify-between dtw-gap-2 dtw-w-full",children:[o.jsx("p",{children:t.transactionLabel}),o.jsx(He,{link:n,children:l??t.explorer})]})]})]}),!!p&&s&&o.jsx(p,{}),o.jsxs("div",{className:"dtw-flex dtw-flex-col dtw-gap-2 dtw-w-full",children:[g?o.jsx(ti,{children:t.openLimitOrderAfterBuySwitchLabel}):s?null:o.jsx(ni,{children:t.openNotificationsSettingsLabel}),o.jsx(d,{highlighted:!1,onClick:r,children:t.done})]})]})},Ex=()=>{const e=E(),{LogoSpinner:t=Se}=$(),[{link:n}]=Q();return o.jsxs("div",{className:"dtw-flex dtw-flex-col dtw-items-center dtw-justify-center dtw-gap-2 dtw-pt-1 dtw-px-4 dtw-w-full dtw-h-full md:dtw-w-1/2 md:dtw-h-1/2",children:[o.jsx(t,{className:"dtw-h-16 dtw-w-16 lg:dtw-h-24 lg:dtw-w-24 dtw-shrink-0"}),e.miningTx,n&&o.jsx(He,{link:n,className:"dtw-text-sm",iconClassName:"dtw-w-4 dtw-h-4",children:e.explorer})]})},Cx=({onClose:e})=>{const t=E(),{ActionButton:n=z}=$(),[{link:r}]=Q();return o.jsxs(o.Fragment,{children:[o.jsxs("div",{className:"dtw-flex dtw-flex-col dtw-items-center dtw-justify-center dtw-gap-2 dtw-pt-1 dtw-px-4 dtw-w-full dtw-h-full md:dtw-w-1/2 md:dtw-h-1/2",children:[o.jsxs("div",{className:"dtw-flex dtw-flex-col dtw-items-center dtw-gap-2 dtw-text-[color:var(--panel-success-content-color)]",children:[o.jsx(ye.CheckIcon,{className:"dtw-h-16 dtw-w-16 lg:dtw-h-24 lg:dtw-w-24 dtw-shrink-0"}),t.createLimitSellOrder]}),r&&o.jsx(He,{link:r,className:"dtw-text-sm",iconClassName:"dtw-w-4 dtw-h-4",children:t.explorer})]}),o.jsxs("div",{className:"dtw-flex dtw-flex-col dtw-gap-2 dtw-w-full",children:[o.jsx(ni,{children:t.openNotificationsSettingsLabel}),o.jsx(n,{highlighted:!1,onClick:e,children:t.done})]})]})},_x=({type:e})=>{const[{status:t},n]=Q(),{handleReject:r}=ae({type:e}),s=t==="Mining";return{onClose:m.useCallback(()=>{n({isOpen:!1}),r()},[r,n]),isProcessing:s}},Ix=e=>{const{onClose:t,isProcessing:n}=_x(e);return o.jsx(V.Overlay,{className:"dtw-justify-between dtw-gap-y-4",onClose:t,noPadding:!0,children:n?o.jsx(Ex,{}):o.jsx(Cx,{onClose:t})})},Nx=({type:e})=>{const{statusLabel:t,status:n}=ba(),[{link:r,action:s},a]=Q(),i=n=="Success",{handleReject:l}=ae({type:e}),c=s==="single_withdraw"&&i,d=i&&s==="deposit",p=i&&s&&u.COMPLETE_WITHDRAW_ACTIONS.includes(s);return{title:t??n,isSuccessTx:i,link:r,onClose:()=>{a({isOpen:!1}),l()},showNextStepTip:c,displaySuccessDepositOverlay:d,displaySuccessWithdrawalOverlay:p,displayLimitOrderTransactionOverlay:s==="create_limit_sell_order",displayWithdrawLimitOrderOverlay:s==="limit_order_withdraw"}},Px=({sendTokens:e})=>{const t=E(),[n]=e??[];return n?o.jsxs("div",{className:"dtw-flex dtw-items-center dtw-gap-1 dtw-flex-wrap dtw-overflow-hidden",children:[o.jsx("span",{children:t.approveSpending}),o.jsx(xe,{size:"sm",symbols:[n.symbol]}),o.jsx("span",{children:n.symbol})]}):null},Ox=({receiveTokens:e})=>{const t=E(),[n]=e??[];return n?o.jsxs("div",{className:"dtw-flex dtw-flex-wrap dtw-items-center dtw-gap-1",children:[t.swapAndClaimTo," ",o.jsxs("div",{className:"dtw-flex dtw-items-center dtw-gap-1",children:[o.jsx(xe,{size:"sm",symbols:[n.symbol]})," ",n.symbol]})]}):null},Lx=({sendTokens:e,receiveTokens:t,action:n})=>{const r=E(),[s]=e??[],[a]=t??[];return s?o.jsxs("div",{className:"dtw-flex dtw-flex-wrap dtw-items-center dtw-gap-x-1",children:[n==="deposit"?r.pay:n==="multi_withdraw"?r.sell:r.unrollAction,o.jsxs("div",{className:"dtw-flex dtw-items-center dtw-gap-1",children:[o.jsx(xe,{size:"sm",symbols:[s.symbol]})," ",s.symbol]})," ","to receive",o.jsx("div",{className:"dtw-flex dtw-items-center dtw-gap-1",children:a?o.jsxs(o.Fragment,{children:[o.jsx(xe,{size:"sm",symbols:[a.symbol]})," ",a.symbol]}):o.jsx(o.Fragment,{children:n==="multi_withdraw"?r.multiAssetFractions:r.swappableAssets})})]}):null},Dx=()=>{const e=E(),[{action:t,receiveTokens:n,sendTokens:r}]=Q();return t==="approve"?o.jsx(Px,{sendTokens:r}):t==="swap"?o.jsx(Ox,{receiveTokens:n}):t==="claim"?o.jsx(o.Fragment,{children:e.claimLabel}):t==="create_limit_sell_order"?o.jsx(o.Fragment,{children:e.createLimitSellOrder}):t==="delete_limit_order_withdraw"?o.jsx(o.Fragment,{children:e.deleteWithdrawalRequest}):t==="update_ondo_prices"?o.jsxs("div",{className:"dtw-flex dtw-flex-col dtw-gap-1",children:[o.jsx("span",{children:e.updateOndoPricesStep}),o.jsx("span",{className:"dtw-text-xs dtw-text-[color:var(--panel-secondary-content-color)]",children:e.updateOndoPricesHint})]}):o.jsx(Lx,{action:t,sendTokens:r,receiveTokens:n})},kx=({type:e})=>{const[,t]=Q(),{handleReject:n}=ae({type:e}),[{link:r,status:s}]=Q(),a=s=="Success";return{onClose:m.useCallback(()=>{t({isOpen:!1}),n()},[n,t]),link:r,isSuccessTx:a}},Rx=e=>{const t=E(),{ActionButton:n=z}=$(),{onClose:r,link:s,isSuccessTx:a}=kx(e);return a?o.jsxs(V.Overlay,{className:"dtw-justify-between dtw-gap-y-4",onClose:r,noPadding:!0,children:[o.jsxs("div",{className:"dtw-flex dtw-flex-col dtw-items-center dtw-justify-center dtw-gap-3 dtw-pt-1 dtw-px-4 dtw-w-full dtw-h-full",children:[o.jsx(ye.CheckIcon,{className:"dtw-h-16 dtw-w-16 lg:dtw-h-24 lg:dtw-w-24 dtw-shrink-0 dtw-text-[color:var(--panel-success-content-color)]"}),o.jsx("div",{className:"dtw-text-center dtw-text-2xl dtw-font-semibold",children:t.withdrawalRequest}),o.jsx("div",{className:"dtw-text-center dtw-text-[color:var(--panel-secondary-content-color)]",children:t.expectToReceiveUsdcSoon}),s&&o.jsx(He,{link:s,className:"dtw-text-sm",iconClassName:"dtw-w-4 dtw-h-4",children:t.explorer})]}),o.jsx("div",{className:"dtw-flex dtw-flex-col dtw-gap-2 dtw-w-full",children:o.jsx(n,{highlighted:!1,onClick:r,children:t.done})})]}):null},jx=({type:e})=>{const{address:t,symbol:n}=y(),[{link:r},s]=Q(),{handleReject:a}=ae({type:e}),[i]=_t(),l=w.getTxHashShort(r);return{onClose:m.useCallback(()=>{s({isOpen:!1,status:"None"}),a()},[s,a]),link:r,vaultAddress:t,receiveTokens:i?.receiveTokens,vaultAmount:i?.sendToken?.amount||"",vaultSymbol:i?.sendToken?.symbol||n,txHash:l}},Mx=e=>{const t=E(),{link:n,onClose:r,vaultSymbol:s,vaultAmount:a,receiveTokens:i,txHash:l}=jx(e),{ActionButton:c=z}=$();return o.jsxs(V.Overlay,{className:"dtw-justify-between dtw-gap-y-4",noPadding:!0,children:[o.jsxs("div",{className:"dtw-flex dtw-flex-col dtw-items-center dtw-justify-center dtw-gap-3 dtw-pt-1 dtw-px-2 dtw-w-full",children:[o.jsxs("div",{className:"dtw-flex dtw-flex-col dtw-items-center dtw-text-[color:var(--panel-success-content-color)] dtw-mb-2",children:[o.jsx(ye.CheckIcon,{className:"dtw-h-16 dtw-w-16 lg:dtw-h-24 lg:dtw-w-24 dtw-shrink-0"}),"Success"]}),o.jsx(Ue,{}),o.jsxs("div",{className:"dtw-flex dtw-items-center dtw-justify-between dtw-gap-2 dtw-w-full",children:[o.jsx("p",{children:t.soldLabel}),o.jsxs("div",{className:"dtw-text-[color:var(--panel-secondary-content-color)]",children:[a," ",s]})]}),i&&i.length>0&&o.jsxs(o.Fragment,{children:[o.jsx(Ue,{}),o.jsxs("div",{className:"dtw-flex dtw-items-center dtw-justify-between dtw-gap-2 dtw-w-full",children:[o.jsx("p",{children:t.receivedLabel}),o.jsx("div",{className:"dtw-flex dtw-flex-col dtw-items-end dtw-text-[color:var(--panel-secondary-content-color)]",children:i.map(d=>o.jsxs("span",{children:[!!d.amount&&`${d.amount} `,d.symbol]},d.symbol))})]})]}),n&&o.jsxs(o.Fragment,{children:[o.jsx(Ue,{}),o.jsxs("div",{className:"dtw-flex dtw-items-center dtw-justify-between dtw-gap-2 dtw-w-full",children:[o.jsx("p",{children:t.transactionLabel}),o.jsx(He,{link:n,children:l??t.explorer})]})]})]}),o.jsx(c,{highlighted:!1,onClick:r,children:t.done})]})},Bx=({type:e})=>{const{link:t,title:n,onClose:r,isSuccessTx:s,showNextStepTip:a,displaySuccessDepositOverlay:i,displaySuccessWithdrawalOverlay:l,displayLimitOrderTransactionOverlay:c,displayWithdrawLimitOrderOverlay:d}=Nx({type:e}),{LogoSpinner:p=Se}=$(),g=E();return c?o.jsx(Ix,{type:e}):i?o.jsx(Sx,{type:e}):l?o.jsx(Mx,{type:e}):d?o.jsx(Rx,{type:e}):o.jsxs(V.Notification,{onClose:r,children:[o.jsxs("div",{className:"dtw-flex dtw-items-center dtw-gap-1.5",children:[o.jsx("span",{className:"dtw-font-semibold dtw-drop-shadow-md",children:n}),s?o.jsx(oe.CheckCircleIcon,{className:"dtw-h-6 dtw-w-6 dtw-text-[color:var(--panel-success-content-color)]"}):o.jsx(p,{className:"dtw-h-5 dtw-w-5 "})]}),o.jsx("div",{className:"dtw-font-light dtw-text-sm dtw-max-h-16 dtw-overflow-y-auto theme-scrollbar dtw-break-all",children:o.jsx(Dx,{})}),t&&o.jsx(He,{link:t,className:"dtw-text-sm",iconClassName:"dtw-w-4 dtw-h-4",children:g.explorer}),a&&o.jsx("p",{className:"dtw-text-xs",children:g.proceedWithNextStep})]})},oi=e=>o.jsxs("svg",{width:"123",height:"123",viewBox:"0 0 123 123",fill:"none",xmlns:"http://www.w3.org/2000/svg",...e,children:[o.jsxs("defs",{children:[o.jsxs("linearGradient",{id:"sad-face-gradient",x1:"61.5",y1:"120",x2:"61.5",y2:"4.7",gradientTransform:"translate(0 123.9) scale(1 -1)",gradientUnits:"userSpaceOnUse",children:[o.jsx("stop",{offset:"0.1",stopColor:"#5790E4"}),o.jsx("stop",{offset:"1",stopColor:"#3567AF"})]}),o.jsxs("linearGradient",{id:"sad-face-gradient1",x1:"68",y1:"56.4",x2:"68",y2:"30.4",gradientTransform:"translate(0 123.9) scale(1 -1)",gradientUnits:"userSpaceOnUse",children:[o.jsx("stop",{offset:"0.1",stopColor:"#5790E4"}),o.jsx("stop",{offset:"1",stopColor:"#3567AF"})]})]}),o.jsx("path",{d:"M61.5,119.2c31.8,0,57.7-25.8,57.7-57.7S93.3,3.8,61.5,3.8,3.8,29.7,3.8,61.5s25.8,57.7,57.7,57.7Z",fill:"none",stroke:"url(#sad-face-gradient)",strokeWidth:"4.8",strokeMiterlimit:"10"}),o.jsx("circle",{cx:"50",cy:"49.5",r:"8",fill:"#578FE3"}),o.jsx("circle",{cx:"93",cy:"49.5",r:"8",fill:"#578FE3"}),o.jsx("path",{d:"M94,93.5c0-14.4-11.6-26-26-26s-26,11.6-26,26",fill:"none",stroke:"url(#sad-face-gradient1)",strokeWidth:"4.8",strokeMiterlimit:"10"})]}),ai=({triggerType:e,refetch:t,isFetched:n,onClose:r})=>{const s=ur(),{invalidateTradingQueries:a}=ut();return{handleClick:()=>{s(e),a(),t(),r?.()},disabled:!n}},$x=e=>{const{refetch:t,isFetched:n}=Mt();return ai({triggerType:"deposit",refetch:t,isFetched:n,onClose:e})},ii=({handleClick:e,disabled:t})=>{const n=E(),{ActionButton:r=z}=$();return o.jsx(r,{onClick:e,disabled:t,highlighted:!0,children:n.tryAgain})},Ux=({onClose:e})=>{const{handleClick:t,disabled:n}=$x(e);return o.jsx(ii,{handleClick:t,disabled:n})},Fx=({error:e,onCancel:t})=>{const n=E(),{ActionButton:r=z}=$();return o.jsxs(V.Overlay,{className:"dtw-justify-between dtw-gap-y-4",children:[o.jsx(r,{highlighted:!1,onClick:t,className:"!dtw-p-1 !dtw-w-24 dtw-self-start",children:n.cancel}),o.jsxs("div",{className:"dtw-flex dtw-flex-col dtw-items-center dtw-justify-center dtw-gap-4 dtw-pt-4 dtw-px-4 dtw-w-full dtw-flex-1",children:[o.jsx(oi,{className:"dtw-size-32"}),o.jsxs("div",{className:"dtw-flex dtw-flex-col dtw-items-center dtw-gap-2 dtw-text-center",children:[o.jsx("p",{className:"dtw-text-lg dtw-font-medium",children:e.title}),e.hint&&o.jsx("p",{className:"dtw-text-sm dtw-text-[color:var(--panel-secondary-content-color)]",children:e.hint})]})]}),o.jsx(Ux,{onClose:t})]})},Wx=u.EasySwapperV2Abi.filter(({type:e})=>e==="error").map(({name:e})=>e),Gx=({type:e})=>{const{handleReject:t,meta:n}=ae({type:e}),{isCompleteWithdrawStep:r}=Ye(),s=Le(),a=r&&!s,i=n?.error??"",l=i===u.DEPOSIT_SWAP_DATA_ERROR||i===u.WITHDRAW_SWAP_DATA_ERROR||i.includes(u.SWAP_FAILED_ERROR),c=w.parseContractErrorMessage({errorMessage:n?.error,abiErrors:Wx});return{handleReject:t,error:c,showCompleteWithdrawErrorOverlay:a,isDepositSwapError:s&&l,isWithdrawSwapError:a&&l}},zx=e=>{const{refetch:t,isFetched:n}=Me();return ai({triggerType:"withdraw",refetch:t,isFetched:n,onClose:e})},Hx=({onClose:e})=>{const{handleClick:t,disabled:n}=zx(e);return o.jsx(ii,{handleClick:t,disabled:n})},Ms=!0,Vx=e=>{const{isWrongNetwork:t}=Ja(),n=_t()[1],{data:r=[]}=ie(),s=Ya({isClaim:Ms}),{disabled:a,label:i,handleTrade:l}=Ka({withdraw:s,isClaim:Ms}),c=Fr("claim");return{disabled:a,label:i,handleTrade:()=>{n({receiveTokens:r.map(({symbol:p,balance:g})=>({symbol:p,amount:w.formatNumberToLimitedDecimals({value:g})}))}),e?.(),l()},isWrongNetwork:t,isLoading:c}},li=({highlighted:e,className:t,onClick:n})=>{const{ActionButton:r=z}=$(),{handleTrade:s,disabled:a,label:i,isWrongNetwork:l,isLoading:c}=Vx(n);return l?null:o.jsx(r,{onClick:s,disabled:a,highlighted:e,className:t,loading:c,children:i})},qx=e=>e.length<=1?e[0]??"":[...e.slice(0,-1),`and ${e[e.length-1]}`].join(e.length===2?" ":", "),Yx=({error:e,onCancel:t,isSwapError:n=!1})=>{const r=E(),{ActionButton:s=z}=$(),[a,i]=m.useState(!1),{data:l=[]}=ie(),c=m.useMemo(()=>{const d=l.map(({symbol:g})=>g),p=qx(d);return r.skipSwapAndClaimSymbols.replace("{symbols}",p)},[l,r.skipSwapAndClaimSymbols]);return o.jsxs(V.Overlay,{className:"dtw-justify-between dtw-gap-y-4",children:[o.jsx(s,{highlighted:!1,onClick:t,className:"!dtw-p-1 !dtw-w-24 dtw-self-start",children:r.cancel}),o.jsxs("div",{className:"dtw-flex dtw-flex-col dtw-items-center dtw-justify-center dtw-gap-4 dtw-pt-4 dtw-px-4 dtw-w-full dtw-flex-1",children:[o.jsx(oi,{className:"dtw-size-32"}),o.jsxs("div",{className:"dtw-flex dtw-flex-col dtw-items-center dtw-gap-2 dtw-text-center",children:[o.jsx("p",{className:"dtw-text-lg dtw-font-medium",children:e.title}),e.hint&&o.jsx("p",{className:"dtw-text-sm dtw-text-[color:var(--panel-secondary-content-color)]",children:e.hint})]}),n&&o.jsx("div",{className:"dtw-py-2 dtw-px-4 dtw-bg-[color:var(--panel-input-bg)] dtw-rounded-full",children:o.jsx(vn,{label:c,labelClassName:"!dtw-text-sm",defaultEnabled:a,onChange:i,className:"!dtw-gap-x-2"})})]}),o.jsx("div",{className:"dtw-flex dtw-flex-col dtw-gap-2 dtw-w-full",children:n&&!a?o.jsx(Hx,{onClose:t}):o.jsx(li,{onClick:t,highlighted:!0})})]})},Kx=e=>{const{handleReject:t,error:n,showCompleteWithdrawErrorOverlay:r,isDepositSwapError:s,isWithdrawSwapError:a}=Gx(e);return n?r?o.jsx(Yx,{error:n,onCancel:t,isSwapError:a}):s?o.jsx(Fx,{error:n,onCancel:t}):o.jsxs(V.Notification,{onClose:t,children:[o.jsx("p",{className:"dtw-text-sm",children:n.title}),n.hint&&o.jsx("p",{className:"dtw-text-xs",children:n.hint})]}):null},Qx=["dtw-bg-transparent","dtw-border-[var(--limit-order-action-outline-button-border-color,var(--limit-order-border-color))]","!dtw-text-[color:var(--limit-order-action-outline-button-color,var(--limit-order-content-color))]","active:dtw-border-opacity-100","hover:enabled:dtw-border-[var(--limit-order-action-outline-button-border-hover-color)]"],Zx=["!dtw-text-[color:var(--limit-order-action-accent-button-color,var(--limit-order-accent-content-color))]","dtw-bg-gradient-to-r","dtw-from-[var(--limit-order-action-accent-button-bg-from,var(--limit-order-accent-from-color))]","dtw-to-[var(--limit-order-action-accent-button-bg-to,var(--limit-order-accent-to-color))]","dtw-border-[color:var(--limit-order-action-accent-button-border-color)]","dtw-border-[length:var(--limit-order-action-accent-button-border-width)]","hover:enabled:dtw-from-[var(--limit-order-action-accent-button-hover-bg-from,var(--limit-order-accent-hover-from-color))]","hover:enabled:dtw-to-[var(--limit-order-action-accent-button-hover-bg-to,var(--limit-order-accent-hover-to-color))]"],be=({children:e,onClick:t,highlighted:n=!0,disabled:r=!1,className:s,type:a,loading:i=!1})=>o.jsxs("button",{className:N("dtw-rounded-[var(--limit-order-input-button-radius,var(--limit-order-radius))]","dtw-font-medium","dtw-border","dtw-transition-border","dtw-duration-500","dtw-ease-in-out","disabled:dtw-opacity-50","dtw-py-2","dtw-px-5","dtw-w-full",{[Zx.join(" ")]:n,[Qx.join(" ")]:!n,"dtw-flex dtw-items-center dtw-justify-center dtw-gap-1":i},s),onClick:t,disabled:r||i,type:a,children:[i&&o.jsx(Se,{className:"dtw-h-4 dtw-w-4 dtw-stroke-[var(--limit-order-accent-content-color)]"}),e]}),Xx=e=>{const{chainId:t,switchNetwork:n}=De(),r=m.useCallback(()=>{n?.({chainId:e})},[n,e]);return{isWrongNetwork:t!==e,handleNetworkSwitch:r}},ci=({vaultChainId:e,switchNetworkLabel:t,children:n})=>{const{isWrongNetwork:r,handleNetworkSwitch:s}=Xx(e);return r?o.jsx(be,{onClick:s,children:t}):n},di={switchNetwork:"Switch Network",approve:"Approve",lowerLimitLabel:"Lower limit",lowerLimitSubtitle:"Sells when price drops",upperLimitLabel:"Upper limit",upperLimitSubtitle:"Sells when price rises",partialSellLabel:"Partial sell",partialSellSubtitle:"Sells a portion when price hits limits",price:"price",currentPrice:"Current {symbol} price",limitOrderTerms:"I understand and accept limit orders are not guaranteed",create:"Create",modify:"Modify",approveLimitOrderStep:"1/2 Approve",createLimitOrderStep:"2/2 Create",modifyLimitOrderStep:"2/2 Modify",delete:"Delete",cancel:"Cancel",invalidLimitOrderPriceError:"The upper limit price must be higher than the current price, and the lower limit price must be lower than the current price.",minimumVaultBalanceRequired:"Minimum vault balance required: {amount}",limitOrdersTitle:"Order details",acceptTerms:"I understand and accept",termsPoint1:"A limit order requires an unchanged vault token balance — any transfers or withdrawals may block execution.",termsPoint2:"Revoking token approval after placing an order will prevent the order from being executed.",termsPoint3:"If the vault tokens are still subject to a lock-up period, the order cannot be executed.",termsPoint4:"Limit sells are intended to settle in USDC. In rare cases where market conditions or high slippage prevent a USDC swap, the order may be settled in the underlying tokens of the respective vault.",termsPoint5:"While limit sells are generally expected to execute, they are currently in beta and execution is not guaranteed."},ui=m.createContext(di),pi=({children:e,config:t})=>{const n=m.useMemo(()=>({...di,...t}),[t]);return o.jsx(ui.Provider,{value:n,children:e})},Ie=()=>{const e=m.useContext(ui);if(!e)throw new Error("TranslationContext is used out of Provider");return e},mi=({symbol:e,price:t})=>{const n=Ie();return o.jsxs("div",{className:"dtw-px-3 dtw-py-2.5 dtw-flex dtw-justify-between dtw-bg-[color:var(--limit-order-secondary-color)] dtw-text-[length:var(--limit-order-font-size-xs)] dtw-rounded-[var(--limit-order-radius)]",children:[o.jsx("span",{className:"dtw-text-[length:var(--limit-order-font-size)]",children:n.currentPrice.replace("{symbol}",e)}),o.jsx("span",{className:"dtw-font-[var(--limit-order-font-weight-bold)] dtw-text-[length:var(--limit-order-font-size)]",children:t})]})},Jx=100,ey=3,ty=({inputValue:e="",onInputChange:t,autoFocus:n=!1})=>{const[r,s]=m.useState(e),a=m.useRef(null);return{inputRef:a,value:r,autoFocus:n,onContainerClick:()=>{a.current?.focus()},onInputChange:c=>{const d=c.target.value.replace(/[^0-9]/g,"");if(d.length>ey)return;const p=Number(d);!isNaN(p)&&p<=Jx&&(s(d),t?.(d))}}},ny=e=>{const{disabled:t,placeholder:n,suffix:r="%",postfix:s}=e,{inputRef:a,autoFocus:i,value:l,onContainerClick:c,onInputChange:d}=ty(e);return o.jsx("div",{className:"dtw-flex dtw-flex-col dtw-gap-[var(--limit-order-input-group-gap,var(--limit-order-gap))] dtw-border-[var(--limit-order-input-border-color)] dtw-rounded-[var(--limit-order-input-radius,var(--limit-order-radius))] dtw-border dtw-bg-[var(--limit-order-input-bg,var(--limit-order-neutral-color))] dtw-py-[var(--limit-order-input-py)] dtw-px-[var(--limit-order-input-px)] focus-within:dtw-border-[var(--limit-order-input-focus-border-color)] focus-within:dtw-bg-[var(--limit-order-input-focus-bg)] dtw-shadow-md",onClick:c,children:o.jsxs("div",{className:"transparent-scrollbar dtw-flex dtw-items-center dtw-gap-1 dtw-text-[color:var(--limit-order-input-content-color,var(--limit-order-secondary-content-color))]",children:[r?o.jsx("span",{className:"dtw-font-light dtw-whitespace-nowrap dtw-text-[color:var(--limit-order-secondary-content-color)]",children:r}):null,o.jsx("input",{className:"dtw-w-full dtw-appearance-none dtw-bg-transparent placeholder:dtw-text-[color:var(--limit-order-input-placeholder-color,var(--limit-order-secondary-content-color))] dtw-text-[length:var(--limit-order-input-font-size,var(--limit-order-font-size-sm))] dtw-leading-[var(--limit-order-input-line-height,var(--limit-order-line-height-sm))] dtw-font-[var(--limit-order-input-font-weight,var(--limit-order-font-weight-light))] dtw-outline-none focus:dtw-outline-none lg:dtw-text-[length:var(--limit-order-input-font-size-lg,var(--limit-order-font-size-lg))] lg:dtw-leading-[var(--limit-order-input-line-height-lg,var(--limit-order-line-height-lg))]",ref:a,autoFocus:i,type:"text",min:0,value:l,onChange:d,disabled:t,placeholder:n}),o.jsx("div",{className:"dtw-font-light dtw-text-[length:var(--limit-order-input-suffix-font-size,var(--limit-order-font-size-sm))] dtw-text-[color:var(--limit-order-secondary-content-color)]",children:s})]})})},ry=7,rr=4,Bs=e=>{if(!e)return"";const[t="",n]=e.replace(/,/g,"").split("."),r=n&&n.length>rr?n.slice(0,rr):n,s=t.replace(/\B(?=(\d{3})+(?!\d))/g,",");return r!==void 0?`${s}.${r}`:s},sy=({inputValue:e="",onInputChange:t,autoFocus:n=!1})=>{const[r,s]=m.useState(Bs(e)),a=m.useRef(null);return{inputRef:a,value:r,autoFocus:n,onContainerClick:()=>{a.current?.focus()},onInputChange:c=>{const d=c.target.value.replace(/[^\d.]/g,"").replace(/(\..*)\./g,"$1"),[p="",g=""]=d.split(".");t&&p.length<=ry&&g.length<=rr&&/^\d*(\.\d*)?$/.test(d)&&(s(Bs(d)),t(d))}}},nn=e=>{const{disabled:t,placeholder:n,percentage:r,suffix:s}=e,{inputRef:a,autoFocus:i,value:l,onContainerClick:c,onInputChange:d}=sy(e);return o.jsx("div",{className:"dtw-flex dtw-flex-col dtw-gap-[var(--limit-order-input-group-gap,var(--limit-order-gap))] dtw-border-[var(--limit-order-input-border-color)] dtw-rounded-[var(--limit-order-input-radius,var(--limit-order-radius))] dtw-border dtw-bg-[var(--limit-order-input-bg,var(--limit-order-neutral-color))] dtw-py-[var(--limit-order-input-py)] dtw-px-[var(--limit-order-input-px)] focus-within:dtw-border-[var(--limit-order-input-focus-border-color)] focus-within:dtw-bg-[var(--limit-order-input-focus-bg)] dtw-shadow-md",onClick:c,children:o.jsxs("div",{className:"transparent-scrollbar dtw-flex dtw-items-center dtw-gap-1 dtw-text-[color:var(--limit-order-input-content-color,var(--limit-order-secondary-content-color))]",children:[o.jsx("span",{className:"dtw-text-[length:var(--limit-order-input-font-size,var(--limit-order-font-size-sm))] dtw-leading-[var(--limit-order-input-line-height,var(--limit-order-line-height-sm))] dtw-font-[var(--limit-order-input-font-weight,var(--limit-order-font-weight-light))] dtw-outline-none focus:dtw-outline-none lg:dtw-text-[length:var(--limit-order-input-font-size-lg,var(--limit-order-font-size-lg))] lg:dtw-leading-[var(--limit-order-input-line-height-lg,var(--limit-order-line-height-lg))]",children:"$"}),o.jsx("input",{className:"dtw-w-full dtw-appearance-none dtw-bg-transparent placeholder:dtw-text-[color:var(--limit-order-input-placeholder-color,var(--limit-order-secondary-content-color))] dtw-text-[length:var(--limit-order-input-font-size,var(--limit-order-font-size-sm))] dtw-leading-[var(--limit-order-input-line-height,var(--limit-order-line-height-sm))] dtw-font-[var(--limit-order-input-font-weight,var(--limit-order-font-weight-light))] dtw-outline-none focus:dtw-outline-none lg:dtw-text-[length:var(--limit-order-input-font-size-lg,var(--limit-order-font-size-lg))] lg:dtw-leading-[var(--limit-order-input-line-height-lg,var(--limit-order-line-height-lg))]",ref:a,autoFocus:i,type:"text",min:0,value:l,onChange:d,disabled:t,placeholder:n}),s?o.jsx("span",{className:"dtw-font-light dtw-whitespace-nowrap dtw-text-[length:var(--limit-order-input-suffix-font-size,var(--limit-order-font-size-sm))] dtw-text-[color:var(--limit-order-secondary-content-color)]",children:s}):null,r?o.jsx("span",{className:"dtw-font-light dtw-text-[length:var(--limit-order-input-suffix-font-size,var(--limit-order-font-size-sm))] dtw-text-[color:var(--limit-order-secondary-content-color)]",children:r}):null]})})},At=({title:e,subtitle:t,defaultEnabled:n,onDisable:r,children:s})=>{const[a,i]=m.useState(n),l=c=>{i(c),c||r()};return o.jsxs("div",{className:"dtw-px-3 dtw-py-2 dtw-flex dtw-flex-col dtw-gap-2 dtw-border dtw-border-[var(--limit-order-switch-panel-border-color)] dtw-rounded-[var(--limit-order-switch-panel-radius,var(--limit-order-radius))] dtw-bg-[color:var(--limit-order-secondary-color)]",children:[o.jsxs("div",{className:"dtw-flex dtw-justify-between dtw-text-[length:var(--limit-order-input-label-font-size,var(--limit-order-font-size))] dtw-leading-[var(--limit-order-input-label-line-height,var(--limit-order-line-height))] dtw-font-[var(--limit-order-input-label-font-weight,var(--limit-order-font-weight-light))] dtw-gap-x-2",children:[o.jsxs("div",{className:"dtw-flex dtw-flex-col dtw-gap-0.5 dtw-text-[color:var(--limit-order-primary-content-color)] dtw-text-[length:var(--limit-order-font-size)]",children:[o.jsx("span",{children:e}),o.jsx("span",{className:"dtw-text-[length:var(--limit-order-font-size-sm)] dtw-text-[color:var(--limit-order-secondary-content-color)]",children:t})]}),o.jsx(vn,{onChange:l,defaultEnabled:a})]}),a&&s]})},wi={upperLimitPrice:"",lowerLimitPrice:"",sellPercentage:"",termsAccepted:!1},oy=(e,t)=>{switch(t.type){case"SET_UPPER_LIMIT_PRICE":return{...e,form:{...e.form,upperLimitPrice:t.payload}};case"SET_LOWER_LIMIT_PRICE":return{...e,form:{...e.form,lowerLimitPrice:t.payload}};case"SET_SELL_PERCENTAGE":return{...e,form:{...e.form,sellPercentage:t.payload}};case"SET_IS_MODAL_OPEN":return{...e,isModalOpen:t.payload};case"SET_TERMS_ACCEPTED":return{...e,form:{...e.form,termsAccepted:t.payload}};case"RESET":return{...e,form:wi};case"SET_PENDING_TRANSACTION":return{...e,pendingTransaction:t.payload};default:return e}};function Oe(){}const hi=e=>({vaultAddress:e.vaultAddress,vaultChainId:e.vaultChainId,isModalOpen:e.isModalOpen??!1,form:{...wi,...e.form},pendingTransaction:null,pricingAsset:e.pricingAsset,minAmountInUsd:e.minAmountInUsd}),gi=m.createContext(hi({vaultAddress:u.AddressZero,vaultChainId:0,pricingAsset:{address:u.AddressZero,symbol:""},minAmountInUsd:Er,form:{lowerLimitPrice:"",upperLimitPrice:""}})),fi=m.createContext({setIsModalOpen:Oe,setUpperLimitPrice:Oe,setLowerLimitPrice:Oe,setTermsAccepted:Oe,setSellPercentage:Oe,reset:Oe,setPendingTransaction:Oe,onLog:Oe}),vi=({children:e,initialState:t,actions:n})=>{const[r,s]=m.useReducer(oy,hi(t)),a=m.useCallback(f=>{s({type:"SET_UPPER_LIMIT_PRICE",payload:f})},[]),i=m.useCallback(f=>{s({type:"SET_LOWER_LIMIT_PRICE",payload:f})},[]),l=m.useCallback(f=>{s({type:"SET_IS_MODAL_OPEN",payload:f})},[]),c=m.useCallback(f=>{s({type:"SET_TERMS_ACCEPTED",payload:f})},[]),d=m.useCallback(f=>{s({type:"SET_SELL_PERCENTAGE",payload:f})},[]),p=m.useCallback(()=>{s({type:"RESET"})},[]),g=m.useCallback(f=>{s({type:"SET_PENDING_TRANSACTION",payload:f})},[]),h=m.useMemo(()=>({setUpperLimitPrice:a,setIsModalOpen:l,setLowerLimitPrice:i,setTermsAccepted:c,setSellPercentage:d,reset:p,setPendingTransaction:g,onTransactionSuccess:n?.onTransactionSuccess,onTransactionError:n?.onTransactionError,onTransactionSettled:n?.onTransactionSettled,onLog:n?.onLog}),[a,l,i,c,d,p,g,n?.onTransactionSuccess,n?.onTransactionError,n?.onTransactionSettled,n?.onLog]);return o.jsx(fi.Provider,{value:h,children:o.jsx(gi.Provider,{value:r,children:e})})},he=()=>m.useContext(gi),ht=()=>m.useContext(fi),_n=()=>{const{account:e}=j(),{vaultAddress:t,vaultChainId:n,form:{sellPercentage:r}}=he(),{data:s}=mr({address:e,token:t,chainId:n});return m.useMemo(()=>{const a=r||Go;if(!s)return{raw:"0",formatted:"0",symbol:""};const i=new I(s.value).times(a).dividedBy(100).toFixed(0,I.ROUND_DOWN),l=w.formatNumberToLimitedDecimals({value:new I(i).shiftedBy(-u.DEFAULT_PRECISION).toFixed(),decimals:2});return{raw:i,formatted:l,symbol:s.symbol}},[s,r])},Ti=({userAddress:e,vaultAddress:t})=>{const n=k.encodePacked(["address","address"],[e,t]);return k.keccak256(n)},ay=({price:e,markPrice:t})=>new I(e).gt(t)?`+${w.formatPercentage((+e/+t-1)*100,2)}`:"",iy=({price:e,markPrice:t})=>new I(e).lt(t)?`-${w.formatPercentage((1-+e/+t)*100,2)}`:"",ly=({error:e,translationMap:t})=>e?e.title===u.INVALID_PRICES_LIMIT_ORDER_TITLE?{...e,hint:t.invalidLimitOrderPriceError}:e:null,cy=()=>{const e=Ie(),{form:{upperLimitPrice:t,lowerLimitPrice:n,sellPercentage:r},pricingAsset:s,vaultChainId:a}=he(),{setUpperLimitPrice:i,setLowerLimitPrice:l,setSellPercentage:c}=ht(),d=le({address:s.address,chainId:a,refetchInterval:u.SHORTEN_POLLING_INTERVAL}),p=Number(d)<ff?vf:Tf,{formatted:g,symbol:h}=_n(),f=ay({price:t,markPrice:d}),v=iy({price:n,markPrice:d}),T=m.useCallback(()=>{i("")},[i]),b=m.useCallback(()=>{l("")},[l]),A=m.useCallback(()=>{c("")},[c]),x=`${s.symbol} ${e.price}`;return{upperLimitPrice:t,lowerLimitPrice:n,sellPercentage:r,setUpperLimitPrice:i,setLowerLimitPrice:l,setSellPercentage:c,onDisableUpperLimitPrice:T,onDisableLowerLimitPrice:b,onDisableSellPercentage:A,pricingAssetPrice:d==="0"?null:w.formatToUsd({value:d,maximumFractionDigits:p}),upperLimitPriceDifference:f,lowerLimitPriceDifference:v,pricingAssetSymbol:s.symbol,inputSuffix:x,coveredVaultAmount:g,vaultSymbol:h}},dy=()=>{const e=Ie(),{upperLimitPrice:t,lowerLimitPrice:n,setUpperLimitPrice:r,setLowerLimitPrice:s,onDisableUpperLimitPrice:a,onDisableLowerLimitPrice:i,pricingAssetPrice:l,upperLimitPriceDifference:c,lowerLimitPriceDifference:d,pricingAssetSymbol:p,inputSuffix:g,sellPercentage:h,setSellPercentage:f,onDisableSellPercentage:v,coveredVaultAmount:T,vaultSymbol:b}=cy();return o.jsx(o.Fragment,{children:o.jsxs("div",{className:"dtw-flex dtw-flex-col dtw-gap-[var(--limit-order-input-group-gap,var(--limit-order-gap))] dtw-px-[var(--limit-order-group-px)]",children:[o.jsx(mi,{symbol:p,price:l}),o.jsx(At,{title:e.upperLimitLabel,subtitle:e.upperLimitSubtitle,defaultEnabled:!0,onDisable:a,children:o.jsx(nn,{inputValue:t,onInputChange:r,percentage:c,symbol:p,suffix:g})}),o.jsx(At,{title:e.lowerLimitLabel,subtitle:e.lowerLimitSubtitle,defaultEnabled:!!n,onDisable:i,children:o.jsx(nn,{inputValue:n,onInputChange:s,percentage:d,symbol:p,suffix:g})}),o.jsx(At,{title:e.partialSellLabel,subtitle:e.partialSellSubtitle,defaultEnabled:!!h,onDisable:v,children:o.jsx(ny,{inputValue:h,onInputChange:f,suffix:"%",placeholder:Go,postfix:o.jsxs("div",{className:"dtw-flex dtw-flex-col dtw-items-end dtw-justify-center",children:[o.jsx("span",{className:"dtw-text-[color:var(--limit-order-primary-content-color)]",children:T}),o.jsx("span",{className:"dtw-text-[color:var(--limit-order-secondary-content-color)]",children:b})]})})})]})})},uy=()=>{const{account:e=u.AddressZero}=j(),{vaultAddress:t,vaultChainId:n}=he(),r=w.getContractAddressById("limitOrder",n),s=_n(),{data:a}=nt({tokenAddress:t,ownerAddress:e,spenderAddress:r,chainId:n,skip:w.isZeroAddress(r)});return a?new I(s.raw).lte(a.toString()):!1},py=()=>{const{vaultAddress:e,vaultChainId:t}=he(),{setPendingTransaction:n}=ht(),[r,s]=m.useState(!1),a=w.getContractAddressById("limitOrder",t),{send:i}=de({contractId:"erc20",dynamicContractAddress:e,functionName:"approve",onSettled(c){n(c?{hash:c,action:"approve"}:null),s(!1)}});return{approveLimitOrder:async()=>{w.isZeroAddress(a)||(s(!0),await i(a,u.MaxUint256))},isApproving:r}},bi=({createLimitOrder:e})=>{const[t,n]=m.useState("idle"),[r,s]=m.useState(void 0),a=m.useRef(!1),i=uy(),{approveLimitOrder:l,isApproving:c}=py(),{vaultChainId:d,pendingTransaction:p}=he(),{data:g}=_.useWaitForTransactionReceipt({hash:r,pollingInterval:u.EXTREMELY_SHORT_POLLING_INTERVAL,query:{enabled:!!r&&t==="waiting-confirmation"}}),h=m.useCallback(()=>{n("idle"),s(void 0),a.current=!1},[]);return m.useEffect(()=>{p?.action==="approve"&&p.hash&&t==="approving"&&(s(p.hash),n("waiting-confirmation"))},[p,t]),m.useEffect(()=>{t==="approving"&&!c&&!r&&!p&&h()},[t,c,r,p,h]),m.useEffect(()=>{(async()=>{if(g&&t==="waiting-confirmation"&&!a.current){a.current=!0,n("creating");const A=u.TRANSACTION_SETTLE_DELAY[d]??1e3;await new Promise(x=>setTimeout(x,A));try{await e()}finally{h()}}})()},[g,d,t,e,h]),{approveAndCreate:m.useCallback(async()=>{if(i){n("creating");try{await e()}finally{h()}return}n("approving"),a.current=!1;try{await l()}catch(b){throw h(),b}},[i,l,e,h]),isLoading:t!=="idle",flowState:t,needsApproval:!i}},Ai=e=>{const{setIsModalOpen:t,reset:n,setPendingTransaction:r,onTransactionSettled:s}=ht();return m.useCallback((...a)=>{const[i]=a;if(s?.(...a),!i)return r(null);r({hash:i,action:e}),t(!1),n()},[s,r,e,t,n])},my=([e,t,n,r,s,a])=>w.isZeroAddress(s)?null:{takeProfitPrice:k.formatUnits(n,u.DEFAULT_PRECISION),stopLossPrice:k.formatUnits(t,u.DEFAULT_PRECISION),takeProfitPriceD18:n,stopLossPriceD18:t,amountD18:e,user:r,vault:s,pricingAsset:a},wy=e=>{const t=e.state.data;if(!t)return!1;const[,n,r,,s]=t;return!w.isZeroAddress(s)&&n===BigInt(0)&&r===u.MaxUint256?u.SHORTEN_POLLING_INTERVAL:!1},gt=({chainId:e,userAddress:t,vaultAddress:n})=>{const r=w.getContractAddressById("limitOrder",e);return _.useReadContract({address:r,abi:u.LimitOrderAbi,chainId:e,functionName:gn,args:[Ti({userAddress:t,vaultAddress:n})],query:{enabled:!w.isZeroAddress(r)&&!w.isZeroAddress(t)&&!w.isZeroAddress(n),select:my,refetchInterval:wy}})},hy=u.LimitOrderAbi.filter(({type:e})=>e==="error").map(({name:e})=>e),gy="create",xi=()=>{const{account:e=u.AddressZero}=j(),{vaultAddress:t,vaultChainId:n,form:{lowerLimitPrice:r,upperLimitPrice:s},pricingAsset:a}=he(),i=_n(),{data:l}=gt({userAddress:e,vaultAddress:t,chainId:n}),[c,d]=m.useState(null),p=Ai(gy),g=!!l,{send:h}=de({onSettled:p,contractId:"limitOrder",functionName:g?"modifyLimitOrder":"createLimitOrder"}),f=m.useCallback(async()=>{const T=BigInt(r?w.shiftBy(r,u.DEFAULT_PRECISION):0),b=s?BigInt(w.shiftBy(s,u.DEFAULT_PRECISION)):u.MaxUint256,A=[i.raw,T,b,e,t,a.address];try{await h(A),d(null)}catch(x){x instanceof We&&d(x.message)}},[r,s,i.raw,e,t,a.address,h]),v=w.parseContractErrorMessage({errorMessage:c,abiErrors:hy});return{createLimitOrder:f,isModifyTransaction:g,error:v??null}},fy=()=>{const e=Ie(),{vaultAddress:t,vaultChainId:n,minAmountInUsd:r}=he(),s=_n(),a=ue({address:t,chainId:n}),{createLimitOrder:i,isModifyTransaction:l,error:c}=xi(),p=new I.BigNumber(s.formatted).multipliedBy(a??"0").gte(r),g=!p,{approveAndCreate:h,isLoading:f,flowState:v,needsApproval:T}=bi({createLimitOrder:i}),b=()=>{switch(v){case"approving":case"waiting-confirmation":return e.approveLimitOrderStep;case"creating":return T?l?e.modifyLimitOrderStep:e.createLimitOrderStep:l?e.modify:e.create;default:return T?e.approveLimitOrderStep:l?e.modify:e.create}};return{handleClick:h,disabled:g,error:ly({error:c,translationMap:e}),isLoading:f,isAmountSufficient:p,minAmount:w.formatToUsd({value:r.toString(),maximumFractionDigits:0,minimumFractionDigits:0}),buttonText:b()}},vy=({disabled:e,onClick:t})=>{const n=Ie(),{handleClick:r,disabled:s,error:a,isLoading:i,minAmount:l,isAmountSufficient:c,buttonText:d}=fy();return o.jsxs("div",{children:[a&&o.jsxs("div",{className:"dtw-mb-2 dtw-flex dtw-flex-col dtw-gap-1 dtw-text-error",children:[o.jsx("span",{className:"dtw-text-sm",children:a.title}),a.hint&&o.jsx("span",{className:"dtw-text-xs",children:a.hint})]}),!c&&o.jsx("div",{className:"dtw-mb-1 dtw-text-warning dtw-text-sm",children:n.minimumVaultBalanceRequired.replace("{amount}",l)}),o.jsx(be,{onClick:t??r,disabled:e||s,loading:i,children:d})]})},Ty="remove",by=()=>{const{account:e=u.AddressZero}=j(),{vaultAddress:t,vaultChainId:n,pendingTransaction:r}=he(),{data:s}=gt({userAddress:e,vaultAddress:t,chainId:n}),a=Ai(Ty),{send:i}=de({onSettled:a,contractId:"limitOrder",functionName:"deleteLimitOrder"}),l=async()=>i(t),c=!!r,d=!!s?.amountD18&&!new I(s.amountD18.toString()).isZero();return{deleteLimitOrder:l,isPending:c,displayButton:d}},Ay=()=>{const e=Ie(),{deleteLimitOrder:t,isPending:n,displayButton:r}=by();return r?o.jsx(be,{highlighted:!1,className:"!dtw-py-1",onClick:t,loading:n,children:e.delete}):null},$s=e=>{const t=e?.trim();return t?!isNaN(Number(t)):!1},xy=()=>{const{form:{lowerLimitPrice:e,upperLimitPrice:t}}=he(),n=$s(e)&&Number(e)!==0,r=$s(t);return{limitOrderButtonDisabled:!n&&!r}},yy=["termsPoint1","termsPoint2","termsPoint3","termsPoint4","termsPoint5"],Sy=({onAccept:e,onCancel:t,isLoading:n=!1})=>{const r=Ie();return o.jsxs("div",{className:"dtw-flex dtw-flex-col dtw-gap-6 dtw-py-2",children:[o.jsx("div",{className:"dtw-flex dtw-flex-col dtw-gap-4 dtw-px-2",children:yy.map(s=>o.jsx("p",{className:"dtw-text-[length:var(--limit-order-font-size)] dtw-text-[color:var(--limit-order-secondary-content-color)] dtw-leading-relaxed",children:r[s]},s))}),o.jsxs("div",{className:"dtw-flex dtw-flex-col dtw-gap-2",children:[o.jsx(be,{onClick:e,loading:n,children:r.acceptTerms}),o.jsx(be,{highlighted:!1,onClick:t,disabled:n,children:r.cancel})]})]})},yi=({onClose:e,hideDeleteButton:t})=>{const n=Ie(),{limitOrderButtonDisabled:r}=xy(),{vaultChainId:s,form:{termsAccepted:a}}=he(),{setTermsAccepted:i}=ht(),[l,c]=m.useState(!1),{createLimitOrder:d}=xi(),{approveAndCreate:p,isLoading:g}=bi({createLimitOrder:d}),h=()=>{i(!0),c(!1),p()};return l?o.jsx(Sy,{onAccept:h,onCancel:()=>c(!1),isLoading:g}):o.jsxs("div",{className:"dtw-flex dtw-flex-col dtw-gap-2",children:[o.jsx(dy,{}),o.jsxs(ci,{vaultChainId:s,switchNetworkLabel:n.switchNetwork,children:[o.jsx(vy,{disabled:r,onClick:a?void 0:()=>c(!0)}),!t&&o.jsx(Ay,{})]}),!!e&&o.jsx(be,{highlighted:!1,onClick:e,children:n.cancel})]})},Si=({vaultAddress:e,vaultChainId:t})=>{const{account:n=u.AddressZero}=j(),{isFetched:r,data:s}=gt({vaultAddress:e,chainId:t,userAddress:n}),a=s&&s.takeProfitPriceD18!==u.MaxUint256?s.takeProfitPrice:"",i=s&&s.stopLossPriceD18!==BigInt(0)?s.stopLossPrice:"";return{isFetched:r,upperLimitPrice:a,lowerLimitPrice:i}},Ey=[gn,Sr,"allowance"],Ei=()=>{const e=fe.useQueryClient();return m.useCallback(()=>{e.invalidateQueries({predicate:({queryKey:t})=>{const n=t[1]?.functionName;return t[0]==="readContract"&&Ey.some(r=>r===n)}})},[e])},Ci=()=>{const{pendingTransaction:e,vaultChainId:t,vaultAddress:n}=he(),{setPendingTransaction:r,onTransactionSuccess:s,onTransactionError:a,onLog:i}=ht(),l=Ei(),{data:c,error:d}=_.useWaitForTransactionReceipt({hash:e?.hash??void 0,chainId:t,pollingInterval:u.SHORTEN_POLLING_INTERVAL});m.useEffect(()=>{c&&(e?.action==="create"&&i?.(u.TRADING_PANEL_LOG_EVENT.CREATE_LIMIT_SELL_ORDER,{[u.TRADING_LOG_EVENT_PARAM.ADDRESS.NAME]:n,[u.TRADING_LOG_EVENT_PARAM.CHAIN_ID.NAME]:t}),l(),r(null),s?.(c.transactionHash))},[c,l,s,i,t,r,e?.action,n]),m.useEffect(()=>{d&&e&&(a?.(e.hash),r(null))},[d,a,e,r])},C={ERROR:"#dd376a",WARNING:"#fbbf24",INFO:"#504c56",WHITE:{DEFAULT:"#ffffff"},DARK:{DEFAULT:"#181C25",400:"#2A3648",700:"#12171F",800:"#1B2432"},RED:{500:"#EF4444"},GRAY:{DEFAULT:"#B1B6C1",300:"#EBEBF0",600:"#9DA2AD",700:"#4C505B",800:"#2B313E"},GREEN:{DEFAULT:"#73D393",700:"#34855E"},BLUE:{DEFAULT:"#152E4D",dark:"#162435"},AMBER:{400:"#AFA58D"}},In=({children:e,config:t})=>o.jsx("div",{style:{"--limit-order-radius":`${t?.global?.style?.radiusPrimary??"1rem"}`,"--limit-order-radius-secondary":`${t?.global?.style?.radiusSecondary??"1rem"}`,"--limit-order-background-color":`${t?.global?.color?.colorBgPrimary??C.DARK[800]}`,"--limit-order-gap":`${t?.global?.size?.gap??"0.25rem"}`,"--limit-order-spacer":`${t?.global?.size?.spacer??"4px"}`,"--limit-order-content-color":`${t?.global?.color?.colorTextPrimary??C.WHITE.DEFAULT}`,"--limit-order-content-hover-color":`${t?.global?.color?.colorTextPrimaryHover??`${C.WHITE.DEFAULT}CC`}`,"--limit-order-secondary-color":`${t?.global?.color?.colorBgSecondary??C.GRAY[800]}`,"--limit-order-secondary-content-color":`${t?.global?.color?.colorTextSecondary??C.GRAY[600]}`,"--limit-order-accent-from-color":`${t?.global?.color?.colorBgAccentFrom??C.GREEN.DEFAULT}`,"--limit-order-accent-to-color":`${t?.global?.color?.colorBgAccentTo??C.GREEN[700]}`,"--limit-order-accent-hover-from-color":`${t?.global?.color?.colorBgAccentFromHover??`${C.GREEN.DEFAULT}CC`}`,"--limit-order-accent-hover-to-color":`${t?.global?.color?.colorBgAccentToHover??C.BLUE.dark}`,"--limit-order-accent-content-color":`${t?.global?.color?.colorTextAccent??C.WHITE.DEFAULT}`,"--limit-order-accent-content-hover-color":`${t?.global?.color?.colorTextAccentHover??`${C.WHITE.DEFAULT}CC`}`,"--limit-order-neutral-color":`${t?.global?.color?.colorBgNeutral??`${C.GRAY[600]}33`}`,"--limit-order-neutral-content-color":`${t?.global?.color?.colorTextNeutral??`${C.GRAY[600]}80`}`,"--limit-order-loading-content-color":`${t?.global?.color?.colorTextLoading??`${C.WHITE.DEFAULT}99`}`,"--limit-order-error-content-color":`${t?.global?.color?.colorTextError??C.RED[500]}`,"--limit-order-warning-content-color":`${t?.global?.color?.colorTextWarning??C.AMBER[400]}`,"--limit-order-border-color":`${t?.global?.color?.colorBorderPrimary??"var(--limit-order-content-color)"}`,"--limit-order-scrollbar-color":`${t?.global?.color?.colorScrollbar??`${C.GREEN.DEFAULT}80`}`,"--limit-order-font-size":`${t?.global?.size?.fontSizeBase??"16px"}`,"--limit-order-line-height":`${t?.global?.size?.lineHeightBase??"24px"}`,"--limit-order-font-size-lg":`${t?.global?.size?.fontSizeLg??"18px"}`,"--limit-order-line-height-lg":`${t?.global?.size?.lineHeightLg??"28px"}`,"--limit-order-font-size-sm":`${t?.global?.size?.fontSizeSm??"14px"}`,"--limit-order-line-height-sm":`${t?.global?.size?.lineHeightSm??"20px"}`,"--limit-order-font-size-xs":`${t?.global?.size?.fontSizeXs??"12px"}`,"--limit-order-line-height-xs":`${t?.global?.size?.lineHeightXs??"16px"}`,"--limit-order-font-weight-light":`${t?.global?.style?.fontWeightLight??300}`,"--limit-order-font-weight-medium":`${t?.global?.style?.fontWeightMedium??500}`,"--limit-order-font-weight-bold":`${t?.global?.style?.fontWeightBold??700}`,"--limit-order-action-opacity":`${t?.global?.style?.actionOpacity??1}`,"--limit-order-action-hover-opacity":`${t?.global?.style?.actionOpacityHover??.8}`,"--limit-order-label-font-size":`${t?.global?.size?.labelFontSize??"var(--limit-order-font-size-xs)"}`,"--limit-order-label-line-height":`${t?.global?.size?.labelLineHeight??"var(--limit-order-line-height-xs)"}`,"--limit-order-action-accent-button-border-width":`${t?.component?.actionButton?.size?.borderWidth??"1px"}`,"--limit-order-action-accent-button-bg-from":`${t?.component?.actionButton?.color?.colorBgFrom??"var(--limit-order-accent-from-color)"}`,"--limit-order-action-accent-button-bg-to":`${t?.component?.actionButton?.color?.colorBgTo??"var(--limit-order-accent-to-color)"}`,"--limit-order-action-accent-button-hover-bg-from":`${t?.component?.actionButton?.color?.colorBgFromHover??"var(--limit-order-accent-hover-from-color)"}`,"--limit-order-action-accent-button-hover-bg-to":`${t?.component?.actionButton?.color?.colorBgToHover??"var(--limit-order-accent-hover-to-color)"}`,"--limit-order-action-accent-button-border-color":`${t?.component?.actionButton?.color?.colorBorder??"var(--limit-order-accent-from-color)"}`,"--limit-order-action-accent-button-color":`${t?.component?.actionButton?.color?.colorText??"var(--limit-order-accent-content-color)"}`,"--limit-order-action-outline-button-border-color":`${t?.component?.actionButton?.color?.outlineColorBorder??`${C.WHITE.DEFAULT}33`}`,"--limit-order-action-outline-button-border-hover-color":`${t?.component?.actionButton?.color?.outlineColorBorderHover??`${C.WHITE.DEFAULT}CC`}`,"--limit-order-action-outline-button-color":`${t?.component?.actionButton?.color?.outlineColorText??"var(--limit-order-content-color)"}`,"--limit-order-icon-size":`${t?.global?.size?.iconSize??"20px"}`,"--limit-order-icon-size-sm":`${t?.global?.size?.iconSizeSm??"24px"}`,"--limit-order-icon-secondary-size":`${t?.global?.size?.iconSecondarySize??"16px"}`,"--limit-order-icon-secondary-size-sm":`${t?.global?.size?.iconSecondarySizeSm??"16px"}`,"--limit-order-icon-color":`${t?.global?.color?.colorIcon??"var(--limit-order-content-color)"}`,"--limit-order-inputs-group-gap":`${t?.component?.inputGroup?.size?.gap??"var(--limit-order-gap)"}`,"--limit-order-inputs-group-px":`${t?.component?.inputGroup?.size?.px??"calc(var(--limit-order-spacer) * 3)"}`,"--limit-order-input-radius":`${t?.component?.input?.style?.radius??"var(--limit-order-radius)"}`,"--limit-order-input-group-gap":`${t?.component?.input?.size?.gap??"calc(var(--limit-order-gap) * 2)"}`,"--limit-order-input-px":`${t?.component?.input?.size?.px??"calc(var(--limit-order-spacer) * 3)"}`,"--limit-order-input-py":`${t?.component?.input?.size?.py??"calc(var(--limit-order-spacer) * 2)"}`,"--limit-order-input-price-gap":`${t?.component?.input?.size?.priceGap??"calc(var(--limit-order-gap) * 2)"}`,"--limit-order-input-token-icon-size":`${t?.component?.input?.size?.iconSize??"var(--limit-order-icon-size)"}`,"--limit-order-input-token-icon-size-sm":`${t?.component?.input?.size?.iconSizeSm??"var(--limit-order-icon-size-sm)"}`,"--limit-order-input-content-color":`${t?.component?.input?.color?.textColor??"var(--limit-order-secondary-content-color)"}`,"--limit-order-input-loading-content-color":`${t?.component?.input?.color?.loadingTextColor??"var(--limit-order-loading-content-color)"}`,"--limit-order-input-bg":`${t?.component?.input?.color?.bgColor??"var(--limit-order-neutral-color)"}`,"--limit-order-input-focus-bg":`${t?.component?.input?.color?.bgColorFocus??"transparent"}`,"--limit-order-input-border-color":`${t?.component?.input?.color?.borderColor??C.GRAY[700]}`,"--limit-order-input-focus-border-color":`${t?.component?.input?.color?.borderColorFocus??"var(--limit-order-content-color)"}`,"--limit-order-input-placeholder-color":`${t?.component?.input?.color?.placeholderColor??"var(--limit-order-secondary-content-color)"}`,"--limit-order-input-label-font-size":`${t?.component?.input?.size?.labelFontSize??"var(--limit-order-font-size)"}`,"--limit-order-input-label-line-height":`${t?.component?.input?.size?.labelLineHeight??"var(--limit-order-line-height)"}`,"--limit-order-input-label-font-weight":`${t?.component?.input?.style?.labelFontWeight??"var(--limit-order-font-weight-light)"}`,"--limit-order-input-font-size":`${t?.component?.input?.size?.fontSize??"var(--limit-order-font-size-sm)"}`,"--limit-order-input-line-height":`${t?.component?.input?.size?.lineHeight??"var(--limit-order-line-height-sm)"}`,"--limit-order-input-font-size-lg":`${t?.component?.input?.size?.fontSizeLg??"var(--limit-order-font-size-lg)"}`,"--limit-order-input-line-height-lg":`${t?.component?.input?.size?.lineHeightLg??"var(--limit-order-line-height-lg)"}`,"--limit-order-input-suffix-font-size":`${t?.component?.input?.size?.suffixFontSize??"var(--limit-order-font-size-sm)"}`,"--limit-order-input-font-weight":`${t?.component?.input?.style?.fontWeight??"var(--limit-order-font-weight-light)"}`,"--limit-order-input-token-font-size":`${t?.component?.input?.size?.tokenFontSize??"var(--limit-order-font-size-xs)"}`,"--limit-order-input-token-line-height":`${t?.component?.input?.size?.tokenLineHeight??"var(--limit-order-line-height-xs)"}`,"--limit-order-input-token-font-size-sm":`${t?.component?.input?.size?.tokenFontSizeSm??"var(--limit-order-font-size)"}`,"--limit-order-input-token-line-height-sm":`${t?.component?.input?.size?.tokenLineHeightSm??"var(--limit-order-line-height)"}`,"--limit-order-input-token-font-weight":`${t?.component?.input?.style?.tokenFontWeight??"var(--limit-order-font-weight-medium)"}`,"--limit-order-input-button-radius":`${t?.component?.input?.style?.buttonRadius??"30px"}`,"--limit-order-input-button-px":`${t?.component?.input?.size?.buttonPx??"calc(var(--limit-order-spacer) * 2)"}`,"--limit-order-input-button-py":`${t?.component?.input?.size?.buttonPy??"var(--limit-order-spacer)"}`,"--limit-order-input-button-bg":`${t?.component?.input?.color?.buttonBgColor??"var(--limit-order-secondary-color)"}`,"--limit-order-input-button-border-color":`${t?.component?.input?.color?.buttonBorderColor??"var(--limit-order-accent-to-color)"}`,"--limit-order-input-button-content-color":`${t?.component?.input?.color?.buttonTextColor??"var(--limit-order-content-color)"}`,"--limit-order-input-button-font-size":`${t?.component?.input?.size?.buttonFontSize??"var(--limit-order-font-size-xs)"}`,"--limit-order-input-button-line-height":`${t?.component?.input?.size?.buttonLineHeight??"var(--limit-order-line-height-xs)"}`,"--limit-order-tooltip-bg":`${t?.component?.tooltip?.color?.colorBg??C.DARK[700]}`,"--limit-order-tooltip-color":`${t?.component?.tooltip?.color?.colorText??C.WHITE.DEFAULT}`,"--limit-order-switch-panel-border-color":`${t?.component?.switchPanel?.color?.colorBorder??"var(--limit-order-action-accent-button-border-color)"}`,"--limit-order-switch-panel-radius":`${t?.component?.switchPanel?.style?.radius??"var(--limit-order-input-radius)"}`,"--panel-switch-bg-checked":`${t?.component?.switch?.color?.colorBgChecked??C.BLUE.DEFAULT}`,"--panel-switch-bg":`${t?.component?.switch?.color?.colorBg??C.GRAY[700]}`,"--panel-switch-thumb-bg-checked":`${t?.component?.switch?.color?.colorThumbBgChecked??C.WHITE.DEFAULT}`,"--panel-switch-thumb-bg":`${t?.component?.switch?.color?.colorThumbBg??C.WHITE.DEFAULT}`,"--panel-switch-color-checked":t?.component?.switch?.color?.colorChecked,"--panel-switch-color":t?.component?.switch?.color?.color,"--panel-checkbox-bg-checked":`${t?.component?.checkbox?.color?.colorBgChecked??C.GRAY[700]}`,"--panel-checkbox-bg":`${t?.component?.checkbox?.color?.colorBg??"transparent"}`,"--panel-checkbox-border-color-checked":`${t?.component?.checkbox?.color?.colorBorder??"transparent"}`,"--panel-checkbox-border-color":`${t?.component?.checkbox?.color?.colorBorderChecked??C.GRAY.DEFAULT}`,"--panel-checkbox-color":`${t?.component?.checkbox?.color?.color??C.GRAY[300]}`,"--panel-checkbox-size":`${t?.component?.checkbox?.size?.size??"20px"}`,"--panel-checkbox-icon-size":`${t?.component?.checkbox?.size?.iconSize??"16px"}`,"--panel-checkbox-radius":`${t?.component?.checkbox?.style?.radius??"4px"}`},children:e}),Cy=({themeConfig:e})=>(Ci(),o.jsx(In,{config:e,children:o.jsx(yi,{hideDeleteButton:!0})})),_y=({vaultChainId:e,vaultAddress:t,pricingAsset:n,translation:r,minAmountInUsd:s=Er,actions:a,themeConfig:i})=>{const{isFetched:l,upperLimitPrice:c,lowerLimitPrice:d}=Si({vaultAddress:t,vaultChainId:e}),p=m.useMemo(()=>({vaultAddress:t,vaultChainId:e,pricingAsset:n,minAmountInUsd:s,form:{upperLimitPrice:c,lowerLimitPrice:d}}),[t,e,n,s,c,d]);return l?o.jsx(pi,{config:r,children:o.jsx(vi,{initialState:p,actions:a,children:o.jsx(Cy,{themeConfig:i})})}):null},Iy=({type:e})=>{const{minLimitOrderValue:t}=q(),{address:n,chainId:r,pricingAsset:s,symbol:a}=y(),{handleReject:i}=ae({type:e}),l=Q()[1],c=ne()[1],d=va(),p=m.useMemo(()=>({onTransactionSettled:h=>{h&&(i(),c({type:"add",txHash:h,action:"create_limit_sell_order",chainId:r,symbol:a}),l({isOpen:!0,action:"create_limit_sell_order",status:"Mining",link:h?yn(h,"transaction",r):void 0,sendTokens:null,receiveTokens:null}))}}),[r,i,a,c,l]),g=m.useCallback(()=>{l({isOpen:!1}),d()},[d,l]);return{handleReject:i,address:n,chainId:r,pricingAsset:s,minLimitOrderValue:t,actions:p,closeAllOverlays:g}},Ny=e=>{const{limitOrderThemeConfig:t}=q(),{handleReject:n,chainId:r,address:s,pricingAsset:a,minLimitOrderValue:i,actions:l,closeAllOverlays:c}=Iy(e);return a?o.jsx(V.Overlay,{onClose:c,onBack:n,className:"!dtw-px-2",noPadding:!0,children:o.jsx("div",{className:"dtw-mt-10 dtw-px-2 dtw-w-full dtw-overflow-y-auto theme-scrollbar",children:o.jsx(_y,{vaultAddress:s,vaultChainId:r,pricingAsset:a,minAmountInUsd:i,actions:l,themeConfig:t})})}):null},_i={upperLimitPrice:"",lowerLimitPrice:"",inputAmount:"",slippageBps:aT.toString(),deadlineDays:iT.toString(),termsAccepted:!1},Py=(e,t)=>{switch(t.type){case"SET_UPPER_LIMIT_PRICE":return{...e,form:{...e.form,upperLimitPrice:t.payload}};case"SET_LOWER_LIMIT_PRICE":return{...e,form:{...e.form,lowerLimitPrice:t.payload}};case"SET_INPUT_AMOUNT":return{...e,form:{...e.form,inputAmount:t.payload}};case"SET_SLIPPAGE_BPS":return{...e,form:{...e.form,slippageBps:t.payload}};case"SET_DEADLINE_DAYS":return{...e,form:{...e.form,deadlineDays:t.payload}};case"SET_TERMS_ACCEPTED":return{...e,form:{...e.form,termsAccepted:t.payload}};case"SET_INPUT_TOKEN":return{...e,inputToken:t.payload};case"SET_IS_SUBMITTING":return{...e,isSubmitting:t.payload};case"RESET":return{...e,form:_i,isSubmitting:!1};default:return e}};function Te(){}const Ii=e=>{const[t]=e.depositTokens;return{vaultAddress:e.vaultAddress,vaultChainId:e.vaultChainId,limitBuyManagerAddress:e.limitBuyManagerAddress,pricingAsset:e.pricingAsset,depositTokens:e.depositTokens,inputToken:t??{address:u.AddressZero,symbol:"",decimals:u.DEFAULT_PRECISION},form:{..._i},isSubmitting:!1}},Ni=m.createContext(Ii({vaultAddress:u.AddressZero,vaultChainId:0,limitBuyManagerAddress:u.AddressZero,pricingAsset:{address:u.AddressZero,symbol:""},depositTokens:[]})),Oy=()=>Promise.resolve(),Pi=m.createContext({setUpperLimitPrice:Te,setLowerLimitPrice:Te,setInputAmount:Te,setSlippageBps:Te,setDeadlineDays:Te,setTermsAccepted:Te,setInputToken:Te,setIsSubmitting:Te,reset:Te,onSubmitOrder:Oy,onLog:Te}),Oi=({children:e,initialState:t,actions:n})=>{const[r,s]=m.useReducer(Py,Ii(t)),a=m.useCallback(T=>{s({type:"SET_UPPER_LIMIT_PRICE",payload:T})},[]),i=m.useCallback(T=>{s({type:"SET_LOWER_LIMIT_PRICE",payload:T})},[]),l=m.useCallback(T=>{s({type:"SET_INPUT_AMOUNT",payload:T})},[]),c=m.useCallback(T=>{s({type:"SET_SLIPPAGE_BPS",payload:T})},[]),d=m.useCallback(T=>{s({type:"SET_DEADLINE_DAYS",payload:T})},[]),p=m.useCallback(T=>{s({type:"SET_TERMS_ACCEPTED",payload:T})},[]),g=m.useCallback(T=>{s({type:"SET_INPUT_TOKEN",payload:T})},[]),h=m.useCallback(T=>{s({type:"SET_IS_SUBMITTING",payload:T})},[]),f=m.useCallback(()=>{s({type:"RESET"})},[]),v=m.useMemo(()=>({setUpperLimitPrice:a,setLowerLimitPrice:i,setInputAmount:l,setSlippageBps:c,setDeadlineDays:d,setTermsAccepted:p,setInputToken:g,setIsSubmitting:h,reset:f,onSubmitOrder:n.onSubmitOrder,onOrderCreated:n?.onOrderCreated,onOrderError:n?.onOrderError,onLog:n?.onLog}),[a,i,l,c,d,p,g,h,f,n.onSubmitOrder,n?.onOrderCreated,n?.onOrderError,n?.onLog]);return o.jsx(Pi.Provider,{value:v,children:o.jsx(Ni.Provider,{value:r,children:e})})},Ne=()=>m.useContext(Ni),Bt=()=>m.useContext(Pi),Li={switchNetwork:"Switch Network",limitBuyTitle:"Order details",upperLimitLabel:"Upper limit",upperLimitSubtitle:"Buys when price rises above target",lowerLimitLabel:"Lower limit",lowerLimitSubtitle:"Buys when price drops to target",inputAmountLabel:"Amount",slippageLabel:"Slippage tolerance",deadlineLabel:"Order expiry",deadlineDaysSuffix:"days",price:"price",limitBuyTerms:"I understand and accept limit buy orders are not guaranteed",acceptTerms:"I understand and accept",signAndSubmit:"Submit Order",approvePermit2Step:"Step 1/2: Approve",signOrderStep:"Step 2/2: Submit Order",balanceLabel:"Balance",cancel:"Cancel",termsPoint1:"A limit buy order requires sufficient token approval via Permit2 — revoking approval will prevent the order from being executed.",termsPoint2:"Ensure your wallet holds enough input tokens at the time of execution. If the balance is insufficient, the order will fail.",termsPoint3:"While limit buys are generally expected to execute, they are currently in beta and execution is not guaranteed."},Di=m.createContext(Li),ki=({children:e,config:t})=>{const n=m.useMemo(()=>({...Li,...t}),[t]);return o.jsx(Di.Provider,{value:n,children:e})},Ke=()=>{const e=m.useContext(Di);if(!e)throw new Error("LimitBuyTranslationContext is used out of Provider");return e},Ly=()=>{const e=Ke(),{form:{upperLimitPrice:t,lowerLimitPrice:n},pricingAsset:r,vaultChainId:s}=Ne(),{setUpperLimitPrice:a,setLowerLimitPrice:i}=Bt(),l=le({address:r.address,chainId:s,refetchInterval:u.SHORTEN_POLLING_INTERVAL}),c=Number(l)<dT?uT:pT,d=m.useCallback(()=>{a("")},[a]),p=m.useCallback(()=>{i("")},[i]),g=`${r.symbol} ${e.price}`;return{upperLimitPrice:t,lowerLimitPrice:n,setUpperLimitPrice:a,setLowerLimitPrice:i,onDisableUpperLimitPrice:d,onDisableLowerLimitPrice:p,pricingAssetPrice:l==="0"?null:w.formatToUsd({value:l,maximumFractionDigits:c}),pricingAssetSymbol:r.symbol,inputSuffix:g,upperLimitLabel:e.upperLimitLabel,upperLimitSubtitle:e.upperLimitSubtitle,lowerLimitLabel:e.lowerLimitLabel,lowerLimitSubtitle:e.lowerLimitSubtitle}},Dy=()=>{const e=Ke(),{form:{inputAmount:t},inputToken:n,depositTokens:r}=Ne(),{setInputAmount:s,setInputToken:a}=Bt(),i=m.useCallback(d=>{s(d.replace(/[^\d.]/g,"").replace(/(\..*)\./g,"$1"))},[s]),l=m.useCallback(d=>{a(d),s("")},[a,s]),c=Ae({symbol:n.symbol,address:n.address,watch:!0});return{inputAmount:t,handleInputAmountChange:i,inputToken:n,depositTokens:r,handleInputTokenChange:l,tokenBalance:c,inputAmountLabel:e.inputAmountLabel,balanceLabel:e.balanceLabel}},ky=({depositTokens:e,activeAddress:t,onSelect:n,onClose:r})=>o.jsxs("div",{className:"dtw-absolute dtw-inset-0 dtw-z-10 dtw-flex dtw-flex-col dtw-bg-[var(--limit-order-background-color)] dtw-rounded-[var(--limit-order-radius)]",children:[o.jsxs("div",{className:"dtw-flex dtw-items-center dtw-justify-between dtw-px-4 dtw-py-3 dtw-border-b dtw-border-[var(--limit-order-input-border-color)]",children:[o.jsx("span",{className:"dtw-text-[length:var(--limit-order-font-size)] dtw-font-medium dtw-text-[color:var(--limit-order-primary-content-color)]",children:"Select token"}),o.jsx("button",{type:"button",className:"dtw-text-[color:var(--limit-order-secondary-content-color)] dtw-text-lg dtw-cursor-pointer dtw-px-1",onClick:r,children:"×"})]}),o.jsx("ul",{className:"dtw-flex dtw-flex-col dtw-overflow-y-auto dtw-flex-1",children:e.map(s=>{const a=s.address===t;return o.jsx("li",{children:o.jsxs("button",{type:"button",className:"dtw-flex dtw-items-center dtw-gap-3 dtw-w-full dtw-px-4 dtw-py-3 dtw-cursor-pointer hover:dtw-bg-[var(--limit-order-input-focus-bg)] dtw-transition-colors",onClick:()=>n(s),children:[o.jsx(xe,{symbols:[s.symbol],size:"lg",className:"dtw-flex-shrink-0"}),o.jsx("span",{className:"dtw-text-[length:var(--limit-order-font-size)] dtw-font-medium dtw-text-[color:var(--limit-order-primary-content-color)]",children:s.symbol}),a&&o.jsx(Je.CheckIcon,{className:"dtw-w-4 dtw-h-4 dtw-ml-auto dtw-text-themeGreen"})]})},s.address)})})]}),Ry=()=>{const[e,t]=m.useState(!1),{inputAmount:n,handleInputAmountChange:r,inputToken:s,depositTokens:a,handleInputTokenChange:i,tokenBalance:l,inputAmountLabel:c,balanceLabel:d}=Dy();return o.jsxs(o.Fragment,{children:[o.jsxs("div",{className:"dtw-px-3 dtw-py-2 dtw-flex dtw-flex-col dtw-gap-2 dtw-border dtw-border-[var(--limit-order-switch-panel-border-color)] dtw-rounded-[var(--limit-order-switch-panel-radius,var(--limit-order-radius))] dtw-bg-[color:var(--limit-order-secondary-color)]",children:[o.jsxs("div",{className:"dtw-flex dtw-items-center dtw-justify-between",children:[o.jsx("span",{className:"dtw-text-[color:var(--limit-order-primary-content-color)] dtw-text-[length:var(--limit-order-font-size)]",children:c}),o.jsxs("span",{className:"dtw-text-[color:var(--limit-order-secondary-content-color)] dtw-text-[length:var(--limit-order-font-size-sm)]",children:[d,": ",l??"0"," ",s.symbol]})]}),o.jsx("div",{className:"dtw-flex dtw-border-[var(--limit-order-input-border-color)] dtw-rounded-[var(--limit-order-input-radius,var(--limit-order-radius))] dtw-border dtw-bg-[var(--limit-order-input-bg,var(--limit-order-neutral-color))] dtw-py-[var(--limit-order-input-py)] dtw-px-[var(--limit-order-input-px)] focus-within:dtw-border-[var(--limit-order-input-focus-border-color)] focus-within:dtw-bg-[var(--limit-order-input-focus-bg)] dtw-shadow-md",children:o.jsxs("div",{className:"dtw-flex dtw-items-center dtw-gap-1 dtw-w-full dtw-text-[color:var(--limit-order-input-content-color,var(--limit-order-secondary-content-color))]",children:[o.jsx("input",{className:"dtw-w-full dtw-appearance-none dtw-bg-transparent placeholder:dtw-text-[color:var(--limit-order-input-placeholder-color,var(--limit-order-secondary-content-color))] dtw-text-[length:var(--limit-order-input-font-size,var(--limit-order-font-size-sm))] dtw-leading-[var(--limit-order-input-line-height,var(--limit-order-line-height-sm))] dtw-font-[var(--limit-order-input-font-weight,var(--limit-order-font-weight-light))] dtw-outline-none focus:dtw-outline-none lg:dtw-text-[length:var(--limit-order-input-font-size-lg,var(--limit-order-font-size-lg))] lg:dtw-leading-[var(--limit-order-input-line-height-lg,var(--limit-order-line-height-lg))]",type:"text",inputMode:"decimal",min:0,value:n,onChange:p=>r(p.target.value),placeholder:"0.00"}),o.jsxs("button",{type:"button",className:"dtw-flex dtw-items-center dtw-gap-1.5 dtw-cursor-pointer dtw-rounded-full dtw-border dtw-border-[var(--limit-order-input-button-border-color)] dtw-px-2 dtw-py-1 dtw-bg-[var(--limit-order-input-button-bg)] hover:dtw-bg-[var(--limit-order-input-focus-bg)]",onClick:()=>t(!0),children:[o.jsx(xe,{symbols:[s.symbol],size:"xs",className:"dtw-flex-shrink-0"}),o.jsx("span",{className:"dtw-font-light dtw-whitespace-nowrap dtw-text-[length:var(--limit-order-input-suffix-font-size,var(--limit-order-font-size-sm))] dtw-text-[color:var(--limit-order-secondary-content-color)]",children:s.symbol}),a.length>1&&o.jsx(Je.ChevronDownIcon,{className:"dtw-h-4 dtw-w-4 dtw-text-[color:var(--limit-order-secondary-content-color)] dtw-flex-shrink-0","aria-hidden":"true"})]})]})})]}),e&&o.jsx(ky,{depositTokens:a,activeAddress:s.address,onSelect:p=>{i(p),t(!1)},onClose:()=>t(!1)})]})},Ri=10**Rr,jy=new RegExp(`^\\d*\\.?\\d{0,${Rr}}$`),Us=e=>e?(Number(e)/Ri).toString():"",My=()=>{const e=Ke(),{form:{slippageBps:t}}=Ne(),{setSlippageBps:n}=Bt(),[r,s]=m.useState(()=>Us(t));m.useEffect(()=>{const i=Us(t);s(l=>Number(l)===Number(i)?l:i)},[t]);const a=m.useCallback(i=>{if(i===""){s(""),n("");return}const l=Number(i);!Number.isNaN(l)&&l>=0&&l<=100&&jy.test(i)&&(s(i),n(Math.round(l*Ri).toString()))},[n]);return{slippagePercent:r,handleSlippagePercentChange:a,slippageLabel:e.slippageLabel}},By=()=>{const{slippagePercent:e,handleSlippagePercentChange:t,slippageLabel:n}=My();return o.jsxs("div",{className:"dtw-px-3 dtw-py-2 dtw-flex dtw-flex-col dtw-gap-2 dtw-border dtw-border-[var(--limit-order-switch-panel-border-color)] dtw-rounded-[var(--limit-order-switch-panel-radius,var(--limit-order-radius))] dtw-bg-[color:var(--limit-order-secondary-color)]",children:[o.jsx("span",{className:"dtw-text-[color:var(--limit-order-primary-content-color)] dtw-text-[length:var(--limit-order-font-size)]",children:n}),o.jsx("div",{className:"dtw-flex dtw-flex-col dtw-gap-[var(--limit-order-input-group-gap,var(--limit-order-gap))] dtw-border-[var(--limit-order-input-border-color)] dtw-rounded-[var(--limit-order-input-radius,var(--limit-order-radius))] dtw-border dtw-bg-[var(--limit-order-input-bg,var(--limit-order-neutral-color))] dtw-py-[var(--limit-order-input-py)] dtw-px-[var(--limit-order-input-px)] focus-within:dtw-border-[var(--limit-order-input-focus-border-color)] focus-within:dtw-bg-[var(--limit-order-input-focus-bg)] dtw-shadow-md",children:o.jsxs("div",{className:"dtw-flex dtw-items-center dtw-gap-1 dtw-text-[color:var(--limit-order-input-content-color,var(--limit-order-secondary-content-color))]",children:[o.jsx("input",{className:"dtw-w-full dtw-appearance-none dtw-bg-transparent placeholder:dtw-text-[color:var(--limit-order-input-placeholder-color,var(--limit-order-secondary-content-color))] dtw-text-[length:var(--limit-order-input-font-size,var(--limit-order-font-size-sm))] dtw-leading-[var(--limit-order-input-line-height,var(--limit-order-line-height-sm))] dtw-font-[var(--limit-order-input-font-weight,var(--limit-order-font-weight-light))] dtw-outline-none focus:dtw-outline-none lg:dtw-text-[length:var(--limit-order-input-font-size-lg,var(--limit-order-font-size-lg))] lg:dtw-leading-[var(--limit-order-input-line-height-lg,var(--limit-order-line-height-lg))]",type:"text",inputMode:"decimal",value:e,onChange:r=>t(r.target.value)}),o.jsx("span",{className:"dtw-font-light dtw-whitespace-nowrap dtw-text-[length:var(--limit-order-input-suffix-font-size,var(--limit-order-font-size-sm))] dtw-text-[color:var(--limit-order-secondary-content-color)]",children:"Percent"})]})})]})},$y=()=>{const{upperLimitPrice:e,lowerLimitPrice:t,setUpperLimitPrice:n,setLowerLimitPrice:r,onDisableUpperLimitPrice:s,onDisableLowerLimitPrice:a,pricingAssetPrice:i,pricingAssetSymbol:l,inputSuffix:c,upperLimitLabel:d,upperLimitSubtitle:p,lowerLimitLabel:g,lowerLimitSubtitle:h}=Ly();return o.jsx(o.Fragment,{children:o.jsxs("div",{className:"dtw-flex dtw-flex-col dtw-gap-[var(--limit-order-input-group-gap,var(--limit-order-gap))] dtw-px-[var(--limit-order-group-px)]",children:[o.jsx(mi,{symbol:l,price:i}),o.jsx(At,{title:d,subtitle:p,defaultEnabled:!!e,onDisable:s,children:o.jsx(nn,{inputValue:e,onInputChange:n,symbol:l,suffix:c})}),o.jsx(At,{title:g,subtitle:h,defaultEnabled:!0,onDisable:a,children:o.jsx(nn,{inputValue:t,onInputChange:r,symbol:l,suffix:c})}),o.jsx(Ry,{}),o.jsx(By,{})]})})},Uy=()=>{const{account:e=u.AddressZero}=j(),{inputToken:t,vaultChainId:n,form:{inputAmount:r}}=Ne(),{data:s}=nt({tokenAddress:t.address,ownerAddress:e,spenderAddress:An,chainId:n,skip:w.isZeroAddress(t.address)}),a=r?w.shiftBy(r,t.decimals):"0";return s?new I(a).lte(s.toString()):!1},Fy=()=>{const{inputToken:e}=Ne(),[t,n]=m.useState(!1),[r,s]=m.useState(),{send:a}=de({contractId:"erc20",dynamicContractAddress:e.address,functionName:"approve",onSettled(l){s(l??void 0),n(!1)}});return{approvePermit2:async()=>{w.isZeroAddress(e.address)||(n(!0),await a(An,u.MaxUint256))},isApproving:t,txHash:r}},Wy=()=>{const e=crypto.getRandomValues(new Uint8Array(6));return BigInt("0x"+Array.from(e).map(t=>t.toString(16).padStart(2,"0")).join(""))},Gy=e=>Math.floor(Date.now()/1e3+Number(e)*24*60*60),zy=()=>{const{data:e}=_.useWalletClient(),{account:t}=j(),n=Ne(),{onSubmitOrder:r,onOrderCreated:s,onOrderError:a,setIsSubmitting:i}=Bt();return{signAndSubmit:m.useCallback(async()=>{if(!e||!t)return;const{vaultAddress:c,vaultChainId:d,limitBuyManagerAddress:p,pricingAsset:g,inputToken:h,form:{upperLimitPrice:f,lowerLimitPrice:v,inputAmount:T,slippageBps:b,deadlineDays:A}}=n,x=BigInt(w.shiftBy(T,h.decimals)),S=!!v,O=BigInt(!!f?w.shiftBy(f,u.DEFAULT_PRECISION$1):0),M=S?BigInt(w.shiftBy(v,u.DEFAULT_PRECISION$1)):u.MaxUint256,P=Wy(),U=Gy(A),J={owner:t,targetVault:c,pricingAsset:g.address,minTriggerPriceD18:O,maxTriggerPriceD18:M,slippageToleranceBps:Number(b)},Y={permitted:{token:h.address,amount:x},spender:p,nonce:P,deadline:BigInt(U),witness:J};i(!0);try{const re={name:"Permit2",chainId:d,verifyingContract:An},ge=await e.signTypedData({account:t,domain:re,types:Ta,primaryType:"PermitWitnessTransferFrom",message:Y}),Be={order:J,permit:{token:h.address,amount:x.toString(),nonce:P.toString(),deadline:U},owner:t,signature:ge,chainId:d};await r(Be),s?.()}catch(re){a?.(re instanceof Error?re:new Error(String(re)))}finally{i(!1)}},[e,t,n,r,s,a,i])}},ji=()=>{const[e,t]=m.useState("idle"),n=m.useRef(!1),r=Uy(),{approvePermit2:s,isApproving:a,txHash:i}=Fy(),{signAndSubmit:l}=zy(),{vaultChainId:c}=Ne(),{data:d}=_.useWaitForTransactionReceipt({hash:i,pollingInterval:u.EXTREMELY_SHORT_POLLING_INTERVAL,query:{enabled:!!i&&e==="waiting-confirmation"}}),p=m.useCallback(()=>{t("idle"),n.current=!1},[]);return m.useEffect(()=>{i&&e==="approving"&&t("waiting-confirmation")},[i,e]),m.useEffect(()=>{e==="approving"&&!a&&!i&&p()},[e,a,i,p]),m.useEffect(()=>{(async()=>{if(d&&e==="waiting-confirmation"&&!n.current){n.current=!0,t("signing");const T=u.TRANSACTION_SETTLE_DELAY[c]??1e3;await new Promise(b=>setTimeout(b,T));try{await l()}finally{p()}}})()},[d,c,e,l,p]),{approveAndSign:m.useCallback(async()=>{if(r){t("signing");try{await l()}finally{p()}return}t("approving"),n.current=!1;try{await s()}catch(v){throw p(),v}},[r,s,l,p]),isLoading:e!=="idle",flowState:e,needsApproval:!r}},Hy=()=>{const e=Ke(),{form:{upperLimitPrice:t,lowerLimitPrice:n,inputAmount:r,slippageBps:s}}=Ne(),{approveAndSign:a,isLoading:i,flowState:l,needsApproval:c}=ji(),d=w.isPositiveNumber(t)||w.isPositiveNumber(n),p=w.isPositiveNumber(r),g=Number(s),h=!isNaN(g)&&g>=lT&&g<=cT;return{handleClick:a,disabled:!d||!p||!h,isLoading:i,buttonText:(()=>{switch(l){case"approving":case"waiting-confirmation":return e.approvePermit2Step;case"signing":return c?e.signOrderStep:e.signAndSubmit;default:return c?e.approvePermit2Step:e.signAndSubmit}})()}},Vy=({onClick:e})=>{const{handleClick:t,disabled:n,isLoading:r,buttonText:s}=Hy();return o.jsx(be,{onClick:e??t,disabled:n,loading:r,children:s})},qy=["termsPoint1","termsPoint2","termsPoint3"],Yy=({onAccept:e,onCancel:t,isLoading:n=!1})=>{const r=Ke();return o.jsxs("div",{className:"dtw-flex dtw-flex-col dtw-gap-6 dtw-py-2",children:[o.jsx("div",{className:"dtw-flex dtw-flex-col dtw-gap-4 dtw-px-2",children:qy.map(s=>o.jsx("p",{className:"dtw-text-[length:var(--limit-order-font-size)] dtw-text-[color:var(--limit-order-secondary-content-color)] dtw-leading-relaxed",children:r[s]},s))}),o.jsxs("div",{className:"dtw-flex dtw-flex-col dtw-gap-2",children:[o.jsx(be,{onClick:e,loading:n,children:r.acceptTerms}),o.jsx(be,{highlighted:!1,onClick:t,disabled:n,children:r.cancel})]})]})},Mi=({onClose:e})=>{const t=Ke(),{vaultChainId:n,form:{termsAccepted:r}}=Ne(),{setTermsAccepted:s}=Bt(),[a,i]=m.useState(!1),{approveAndSign:l,isLoading:c}=ji(),d=()=>{s(!0),i(!1),l()};return a?o.jsx(Yy,{onAccept:d,onCancel:()=>i(!1),isLoading:c}):o.jsxs("div",{className:"dtw-relative dtw-flex dtw-flex-col dtw-gap-2",children:[o.jsx($y,{}),o.jsx(ci,{vaultChainId:n,switchNetworkLabel:t.switchNetwork,children:o.jsx(Vy,{onClick:r?void 0:()=>i(!0)})}),!!e&&o.jsx(be,{highlighted:!1,onClick:e,children:t.cancel})]})},Ky=({themeConfig:e})=>o.jsx(In,{config:e,children:o.jsx(Mi,{})}),Bi=({vaultChainId:e,vaultAddress:t,limitBuyManagerAddress:n,pricingAsset:r,depositTokens:s,translation:a,actions:i,themeConfig:l})=>{const c=m.useMemo(()=>({vaultAddress:t,vaultChainId:e,limitBuyManagerAddress:n,pricingAsset:r,depositTokens:s}),[t,e,n,r,s]);return o.jsx(ki,{config:a,children:o.jsx(Oi,{initialState:c,actions:i,children:o.jsx(Ky,{themeConfig:l})})})},Qy=({type:e})=>{const{limitBuyConfig:t,limitOrderThemeConfig:n}=q(),{address:r,chainId:s,pricingAsset:a}=y(),{handleReject:i}=ae({type:e}),l=Q()[1],c=va(),d=jr[s],p=wt({excludeNativeToken:!0}),g=m.useMemo(()=>t?{...t,onOrderCreated:()=>{i(),t.onOrderCreated?.()}}:void 0,[t,i]),h=m.useCallback(()=>{l({isOpen:!1}),c()},[c,l]);return{handleReject:i,address:r,chainId:s,pricingAsset:a,limitBuyManagerAddress:d,depositTokens:p,limitOrderThemeConfig:n,actions:g,closeAllOverlays:h}},Zy=e=>{const{handleReject:t,chainId:n,address:r,pricingAsset:s,limitBuyManagerAddress:a,depositTokens:i,limitOrderThemeConfig:l,actions:c,closeAllOverlays:d}=Qy(e);return!s||!a||!i.length||!c?null:o.jsx(V.Overlay,{onClose:d,onBack:t,className:"!dtw-px-2",noPadding:!0,children:o.jsx("div",{className:"dtw-mt-10 dtw-px-2 dtw-overflow-y-auto theme-scrollbar",children:o.jsx(Bi,{vaultAddress:r,vaultChainId:n,limitBuyManagerAddress:a,pricingAsset:s,depositTokens:i,actions:c,themeConfig:l})})})},Xy=({className:e,checked:t,label:n,labelClassName:r,...s})=>o.jsxs(F.Field,{className:"dtw-flex dtw-items-center dtw-gap-2",children:[o.jsx(F.Checkbox,{...s,checked:t,className:N("dtw-group dtw-flex dtw-items-center dtw-justify-center dtw-shrink-0 dtw-size-[var(--panel-checkbox-size)] dtw-rounded-[var(--panel-checkbox-radius)] dtw-p-0.5 dtw-right-0 dtw-outline-0 dtw-cursor-pointer dtw-border",{"dtw-bg-[color:var(--panel-checkbox-bg-checked)] dtw-border-[color:var(--panel-checkbox-border-color-checked)]":t,"dtw-bg-[color:var(--panel-checkbox-bg)] dtw-border-[color:var(--panel-checkbox-border-color)]":!t},e),children:o.jsx(ye.CheckIcon,{className:"dtw-opacity-0 dtw-size-[var(--panel-checkbox-icon-size)] dtw-fill-[color:var(--panel-checkbox-color)] group-data-[checked]:dtw-opacity-100 dtw-shrink-0"})}),n&&o.jsx(F.Label,{className:N("dtw-select-none",r),children:n})]}),$i=()=>{const[e]=R();return new I(e.value||"0").shiftedBy(e.decimals)},Jy=()=>{const{account:e=u.AddressZero}=j(),{address:t,chainId:n}=y(),r=w.getContractAddressById("limitOrder",n),s=$i(),{data:a}=nt({tokenAddress:t,ownerAddress:e,spenderAddress:r,chainId:n,skip:w.isZeroAddress(r)});return a?s.lte(a.toString()):!1},Fs="approve",eS=()=>{const{address:e,chainId:t,symbol:n}=y(),[r,s]=m.useState(!1),a=w.getContractAddressById("limitOrder",t),i=ne()[1],l=Ce({action:Fs}),{send:c}=de({contractId:"erc20",dynamicContractAddress:e,functionName:"approve",onSettled(...p){s(!1),l(...p)}});return{approveLimitOrder:async()=>{w.isZeroAddress(a)||(i({type:"add",action:Fs,symbol:n,chainId:t}),s(!0),c(a,u.MaxUint256))},isApprovePending:r}},tS=()=>{const e=Jy(),{approveLimitOrder:t,isApprovePending:n}=eS();return{isApproved:e,approveLimitOrder:t,isApprovePending:n}},nS=({children:e})=>{const t=E(),{ActionButton:n=z}=$(),{isApproved:r,approveLimitOrder:s,isApprovePending:a}=tS();return r?e:o.jsx(n,{onClick:s,loading:a,children:t.approve})},Ui=()=>{const{chainId:e,pricingAsset:t}=y();return t??u.ON_DEMAND_PRICING_ASSET_BY_CHAIN_MAP[e]},Ws="limit_order_withdraw",rS=e=>{const{account:t=u.AddressZero}=j(),{address:n,chainId:r,symbol:s}=y(),a=Ui(),i=ne()[1],l=Ce({action:Ws}),c=m.useCallback((...f)=>{l(...f),e()},[l,e]),d=$i(),{data:p}=gt({userAddress:t,vaultAddress:n,chainId:r}),g=!!p,{send:h}=de({onSettled:c,contractId:"limitOrder",functionName:g?"modifyLimitOrder":"createLimitOrder"});return m.useCallback(async()=>{i({type:"add",action:Ws,symbol:s,chainId:r});const f=BigInt(0),v=u.MaxUint256,T=[BigInt(d.toFixed()),f,v,t,n,a?.address];return h(T)},[i,s,r,d,t,n,a?.address,h])},sS=({limitOrderHandler:e,action:t})=>{const n=E(),{showError:r}=Ve(),{account:s}=j(),a=y(),[i]=R(),l=Q()[1],c=ne()[1],d=sn(),p=t==="delete_limit_order_withdraw",g=async()=>{const h=a.chainId;l({isOpen:!0,status:"Wallet",action:t,link:"",sendTokens:[i],receiveTokens:null,meta:{}});try{await e()}catch(f){f instanceof We&&(r(f.message),d?.(f,a.address,h,s)),l({isOpen:!1,status:"None",link:"",sendTokens:null,receiveTokens:null,meta:{}}),c({type:"remove",status:"fail"})}};return{label:p?n.delete:n.withdrawAction,handleLimitOrderWithdraw:g}},oS="limit_order_withdraw",aS=()=>{const e=we(),t=Fr("limit_order_withdraw"),n=m.useCallback(()=>e({type:"MERGE_OVERLAY",payload:{type:G.LIMIT_ORDER_WITHDRAW,isOpen:!1}}),[e]),r=rS(n),{handleLimitOrderWithdraw:s,label:a}=sS({limitOrderHandler:r,action:oS});return{label:a,handleLimitOrderWithdraw:s,isLoading:t}},iS=({disabled:e})=>{const{ActionButton:t=z}=$(),{label:n,handleLimitOrderWithdraw:r,isLoading:s}=aS();return o.jsx(t,{onClick:r,disabled:e,loading:s,children:n})},lS=["termOfUseWithdrawPoint1","termOfUseWithdrawPoint2"],cS=({className:e})=>{const t=E();return o.jsxs(o.Fragment,{children:[o.jsx("p",{children:t.limitOrderWithdrawDescription}),o.jsx("div",{className:N("dtw-w-full dtw-text-sm dtw-overflow-y-auto theme-scrollbar dtw-text-[color:var(--panel-secondary-content-color)]",e),children:o.jsx("ol",{className:"dtw-list-decimal dtw-list-inside dtw-space-y-2",children:lS.map((n,r)=>o.jsxs("li",{className:"dtw-text-pretty",children:[r+1,". ",t[n]]},n))})})]})},dS=({type:e})=>{const t=E(),{ActionButton:n=z}=$(),{handleReject:r}=ae({type:e}),[s,a]=m.useState(!1);return o.jsx(V.Overlay,{onClose:r,children:o.jsxs("div",{className:"dtw-flex dtw-flex-col dtw-gap-2 dtw-w-full",children:[o.jsxs("div",{className:"dtw-px-2 dtw-flex dtw-flex-col dtw-gap-2",children:[o.jsx(cS,{}),o.jsx("div",{className:"dtw-mt-1 dtw-flex dtw-items-center dtw-gap-1.5",children:o.jsx(Xy,{checked:s,onChange:i=>a(i),label:t.termOfUseWithdrawAcceptLabel,labelClassName:"dtw-text-sm dtw-cursor-pointer"})})]}),o.jsx(n,{highlighted:!1,onClick:r,children:t.back}),o.jsx(nS,{children:o.jsx(iS,{disabled:!s})})]})})},uS=({isActive:e,onError:t})=>{const n=E(),r=xn(e),{canSpend:s,approve:a,isCanSpendFetching:i}=Sn({onErrorCallback:t}),l=m.useRef(!1);return m.useEffect(()=>{if(!i){if(s){l.current=!0;return}l.current||(l.current=!0,a())}},[i,s,a]),{label:n.approveTokensForWithdrawal,description:r}},Fe=({stepNumber:e,isActive:t,isFinished:n,label:r,description:s})=>o.jsxs("div",{className:N("dtw-flex dtw-items-center dtw-gap-3 dtw-p-2 dtw-rounded-xl",{"dtw-bg-[color:var(--panel-popup-list-item-bg-even)]":t}),children:[o.jsxs("div",{className:N("dtw-relative dtw-flex dtw-items-center dtw-justify-center dtw-w-7 dtw-h-7 dtw-text-sm",{"dtw-text-[color:var(--panel-secondary-content-color)]":!t}),children:[t&&o.jsx("div",{className:"dtw-absolute dtw-inset-0 dtw-rounded-full dtw-border-2 dtw-border-transparent dtw-border-t-[var(--panel-content-color)] dtw-animate-spin"}),o.jsx("div",{className:N("dtw-flex dtw-items-center dtw-justify-center dtw-w-full dtw-h-full dtw-rounded-full dtw-border dtw-bg-[color:var(--panel-popup-list-item-bg-even)]",{"dtw-border-transparent":t||!n,"dtw-border-[var(--panel-secondary-content-color)]":n&&!t}),children:e})]}),o.jsxs("div",{className:"dtw-flex dtw-flex-col",children:[o.jsx("span",{className:N({"dtw-text-[color:var(--panel-secondary-content-color)]":!t}),children:r}),s&&o.jsx("span",{className:"dtw-text-xs dtw-text-[color:var(--panel-secondary-content-color)]",children:s})]})]}),pS=({isActive:e,onError:t,stepNumber:n,isFinished:r})=>{const{label:s,description:a}=uS({isActive:e,onError:t});return o.jsx(Fe,{stepNumber:n,isFinished:r,isActive:e,label:s,description:a})},Hn=0,mS=1e3,wS=e=>e?{approve:0,oracleUpdate:1,initWithdraw:2,completeWithdraw:3}:{approve:0,oracleUpdate:-1,initWithdraw:1,completeWithdraw:2},hS=(e,t,n)=>{m.useEffect(()=>{t==="Success"&&n&&u.COMPLETE_WITHDRAW_ACTIONS.includes(n)&&e()},[t,n,e])},gS=e=>{const[t,n]=m.useState(!1);return m.useEffect(()=>{if(!e){n(!1);return}const r=setTimeout(()=>{n(!0)},mS);return()=>clearTimeout(r)},[e]),t},fS=()=>{const{address:e,chainId:t}=y(),{hasAssets:n,isReady:r}=pt({address:e,chainId:t}),{hasAssets:s,isReady:a}=je({address:e,chainId:t}),i=fn(),l=pr(),[c]=ne(),{isOndoPriceFresh:d,recordOndoPriceUpdate:p}=Ua(),g=r&&a,h=n&&s&&i,f=h,[v,T]=m.useState(null),{needsPriceUpdate:b}=Vv({address:e,chainId:t,enabled:h&&v===null});m.useEffect(()=>{if(!(!h||v!==null)){if(d()){T(!1);return}b!==void 0&&T(b)}},[h,b,v,d]),m.useEffect(()=>{if(!h||v!==null)return;const Y=setTimeout(()=>T(!0),u.ONDO_PRICE_CHECK_TIMEOUT_MS);return()=>clearTimeout(Y)},[h,v]);const A=v===!0,x=c.find(Y=>Y.action==="update_ondo_prices")?.txHash,{data:S}=_.useWaitForTransactionReceipt({hash:x,chainId:t,pollingInterval:u.EXTREMELY_SHORT_POLLING_INTERVAL,query:{enabled:A&&!!x}}),L=!!S,[O,M]=m.useState(!1);m.useEffect(()=>{!L||O||(M(!0),p(x))},[L,O,p,x]);const[P,U]=m.useState(!1);return m.useEffect(()=>{if(!A||!O)return;const Y=w.getSettleDelay({chainId:t,action:"update_ondo_prices",isRabbyWallet:l});if(Y<=0){U(!0);return}const re=setTimeout(()=>U(!0),Y);return()=>clearTimeout(re)},[A,O,t,l]),{hasOracleUpdateStep:f,needsOracleUpdate:A,oracleUpdateDone:!f||v===!1||A&&P,isVaultDataReady:g}},vS=({type:e})=>{const{handleReject:t}=ae({type:e}),[n]=_t(),[{status:r,action:s}]=Q(),{isCompleteWithdrawStep:a}=Ye(),{isUnrollAndClaimTransaction:i,isFetching:l,isFetched:c}=$r(),{canSpend:d}=Sn({onErrorCallback:t}),{hasOracleUpdateStep:p,needsOracleUpdate:g,oracleUpdateDone:h,isVaultDataReady:f}=fS(),v=wS(p),T=gS(d);hS(t,r,s);const b=a&&!i,A=b?v.completeWithdraw:d?p&&!h?v.oracleUpdate:v.initWithdraw:v.approve,x=n?.receiveTokens?.[0],S=n?.receiveTokens?.length===1&&x?.symbol,L=x?.symbol!==u.MULTI_ASSET_TOKEN.symbol?x?.amount:"";return{isUnrollAndClaimTransaction:i,activeStepIndex:A,hasOracleUpdateStep:p,needsOracleUpdate:g,stepIndices:v,canSpend:d,isCompleteWithdrawStep:b,handleReject:t,isUnrollAndClaimCheckFetching:l,isTransactionTypeReady:(c||T)&&f,withdrawAction:n,displayReceiveTokenInfo:S,receiveToken:x,receiveTokenAmount:L}},TS=({isActive:e,onError:t})=>{const n=E(),r=xn(e),s=Ya({onErrorCallback:t}),{handleTrade:a}=Ka({withdraw:s,onErrorCallback:t});return jA({handleTrade:a,onError:t}),{label:n.swapToCompleteSell,description:r}},bS=({stepNumber:e,isActive:t,isFinished:n,onError:r})=>{const{label:s,description:a}=TS({isActive:t,onError:r});return o.jsx(Fe,{isFinished:n,stepNumber:e,isActive:t,label:s,description:a})},AS=({isActive:e,isCompleteWithdrawStep:t,isPending:n,onError:r})=>{const s=xn(e),{withdraw:a}=qT({onErrorCallback:r}),{handleTrade:i}=Ur({trade:a,onErrorCallback:r}),l=m.useRef(!1);return m.useEffect(()=>{n||e&&!t&&!l.current&&(l.current=!0,i())},[n,e,t,i]),{description:s}},xS=({stepNumber:e,isActive:t,isFinished:n,isPending:r,onError:s,isCompleteWithdrawStep:a,canSpend:i,label:l})=>{const{description:c}=AS({isActive:t,isCompleteWithdrawStep:a,isPending:r,onError:s});return o.jsx(Fe,{isFinished:n,stepNumber:e,isActive:t,label:l,description:c})},yS=({isActive:e,isUpdateRequired:t,onError:n})=>{const r=E(),s=xn(e),{address:a,chainId:i}=y(),{assets:l}=je({address:a,chainId:i}),{showError:c}=Ve(),d=m.useRef("idle"),p=m.useCallback(h=>{d.current!=="failed"&&(d.current="failed",h instanceof Et&&c(h.message),n())},[n,c]),g=Fa({ondoAssets:l,onErrorCallback:p});return m.useEffect(()=>{!e||!t||d.current!=="idle"||(d.current="fired",g().catch(p))},[e,t,g,p]),{label:r.updateOndoPricesStep,description:s}},SS=({stepNumber:e,isActive:t,isFinished:n,isUpdateRequired:r,onError:s})=>{const{label:a,description:i}=yS({isActive:t,isUpdateRequired:r,onError:s});return o.jsx(Fe,{stepNumber:e,isFinished:n,isActive:t,label:a,description:i})},ES=({canSpend:e,isTransactionTypeReady:t,isUnrollAndClaimTransaction:n,hasOracleUpdateStep:r,stepIndices:s,activeStepIndex:a})=>{const i=E(),l=qe(),c=d=>({stepNumber:d+1,isActive:a===d,isFinished:a>d});return{showLoadingPlaceholder:!e||!t,oracleUpdateStep:r?c(s.oracleUpdate):void 0,initWithdrawStep:c(s.initWithdraw),completeWithdrawStep:c(s.completeWithdraw),showCompleteWithdrawStep:!n&&!l,initWithdrawLabel:n||l?i.unrollAndClaimAssets:i.unrollAssetsToPrepare}},CS=e=>{const t=E(),{showLoadingPlaceholder:n,oracleUpdateStep:r,initWithdrawStep:s,completeWithdrawStep:a,showCompleteWithdrawStep:i,initWithdrawLabel:l}=ES(e);return n?o.jsxs(o.Fragment,{children:[r&&o.jsx(Fe,{isFinished:!1,stepNumber:r.stepNumber,isActive:!1,label:t.updateOndoPricesStep}),o.jsx(Fe,{isFinished:!1,stepNumber:s.stepNumber,isActive:!1,label:t.unrollAssetsToPrepare}),o.jsx(Fe,{isFinished:!1,stepNumber:a.stepNumber,isActive:!1,label:t.swapToCompleteSell})]}):o.jsxs(o.Fragment,{children:[r&&o.jsx(SS,{...r,isUpdateRequired:e.needsOracleUpdate,onError:e.onError}),o.jsx(xS,{...s,canSpend:e.canSpend,isCompleteWithdrawStep:e.isCompleteWithdrawStep,isPending:e.isUnrollAndClaimCheckFetching,onError:e.onError,label:l}),i&&o.jsx(bS,{...a,onError:e.onError})]})},_S=e=>{const t=E(),{ActionButton:n=z}=$(),{isUnrollAndClaimTransaction:r,activeStepIndex:s,hasOracleUpdateStep:a,needsOracleUpdate:i,stepIndices:l,canSpend:c,isCompleteWithdrawStep:d,handleReject:p,isUnrollAndClaimCheckFetching:g,isTransactionTypeReady:h,withdrawAction:f,receiveToken:v,displayReceiveTokenInfo:T,receiveTokenAmount:b}=vS(e);return o.jsxs(V.Overlay,{centered:!1,className:"dtw-gap-4",children:[o.jsx(n,{highlighted:!1,onClick:p,className:"!dtw-p-1 !dtw-w-24 dtw-self-start",children:t.cancel}),o.jsxs("div",{className:"dtw-flex dtw-flex-col dtw-items-center dtw-gap-2",children:[o.jsx(xe,{symbols:[f?.sendToken?.symbol??""],size:"2xl"}),o.jsxs("div",{className:"dtw-text-center",children:[o.jsxs("p",{className:"dtw-text-lg",children:[t.sell," ",f?.sendToken.amount??""," ",f?.sendToken.symbol]}),T&&v?.symbol&&o.jsxs("p",{className:"dtw-text-sm dtw-text-[color:var(--panel-secondary-content-color)]",children:["for ",b," ",v.symbol]})]})]}),o.jsxs("div",{className:"dtw-mt-4 dtw-flex dtw-flex-col dtw-gap-2",children:[o.jsx(pS,{isFinished:s>Hn,isActive:s===Hn,onError:p,stepNumber:Hn+1}),o.jsx(CS,{canSpend:c,isTransactionTypeReady:h,isUnrollAndClaimTransaction:r,isCompleteWithdrawStep:d,isUnrollAndClaimCheckFetching:g,hasOracleUpdateStep:a,needsOracleUpdate:i,stepIndices:l,activeStepIndex:s,onError:p})]})]})},IS=()=>{const e=E();return o.jsxs(o.Fragment,{children:[o.jsx(xt,{label:e.slippageTolerance,tooltipText:e.withdrawSlippageWarning,children:o.jsx(Aa,{})}),o.jsx(xt,{label:e.tokenAllowance,tooltipText:e.toggleTokenApprovalAmount,children:o.jsx(ka,{})}),o.jsx(Ra,{})]})},NS=({assets:e=[]})=>{const{stablePrecision:t}=q(),{firstPart:n,secondPart:r}=w.sliceByIndex(e,u.DEFAULT_VISIBLE_ASSETS_LIMIT),s=m.useCallback(({symbol:a,address:i,rawBalance:l,decimals:c,valueInUsd:d})=>o.jsxs("tr",{children:[o.jsxs("td",{children:[o.jsx(Rt,{symbol:a,iconSymbols:[a],symbolClasses:"dtw-text-xs dtw-font-bold",size:"sm"}),o.jsx("p",{className:"dtw-truncate dtw-text-xs dtw-text-[color:var(--panel-secondary-content-color)]",children:w.formatToUsd({value:d})})]}),o.jsx("td",{className:"dtw-text-right",children:o.jsx("p",{className:"dtw-truncate",children:w.formatNumberToLimitedDecimals({value:k.formatUnits(l,c),decimals:t})})})]},i),[t]);return o.jsxs("div",{className:"dtw-text-sm dtw-font-light ",children:[o.jsx(tn,{children:n.map(s)}),r.length>0&&o.jsx(za,{children:o.jsx(tn,{children:r.map(s)})})]})},PS=()=>{const{chainId:e}=y(),{stablePrecision:t}=q(),{data:n=[]}=ie(),r=kA(),{data:s=u.AddressZero}=DA();return{assets:n,usdAmount:w.formatToUsd({value:r,maximumFractionDigits:t}),withdrawalVaultLink:yn(s,"address",e)}},OS=()=>{const e=E(),{assets:t,usdAmount:n,withdrawalVaultLink:r}=PS();return o.jsxs(o.Fragment,{children:[o.jsxs("div",{className:"dtw-text-sm dtw-flex dtw-items-center dtw-gap-1",children:[o.jsx("span",{className:"dtw-text-[color:var(--panel-secondary-content-color)]",children:e.total}),o.jsx(He,{link:r??"",iconClassName:"dtw-h-4 dtw-w-4 dtw-text-[color:var(--panel-content-color)]",children:o.jsx("span",{className:"dtw-text-[color:var(--panel-content-color)]",children:n})})]}),o.jsx("div",{className:"dtw-flex dtw-flex-col dtw-gap-[var(--panel-input-group-gap,var(--panel-gap))] dtw-rounded-[var(--panel-input-radius,var(--panel-radius))] dtw-border dtw-bg-[var(--panel-input-bg,var(--panel-neutral-color))] dtw-py-[var(--panel-input-py)] dtw-px-[var(--panel-input-px)] dtw-shadow-md dtw-border-[var(--panel-input-border-color)]",children:o.jsx(NS,{assets:t})})]})},LS=()=>{const e=we(),{requiresHighSlippageConfirm:t,confirmHighSlippage:n,slippageToBeUsed:r}=kr();return{requiresHighSlippageConfirm:t,slippageToBeUsed:r,handleHighSlippageClick:()=>{e({type:"MERGE_OVERLAY",payload:{type:G.HIGH_SLIPPAGE,isOpen:!0,onConfirm:async()=>n()}})}}},DS=({children:e})=>{const{ActionButton:t=z}=$(),n=E(),{requiresHighSlippageConfirm:r,slippageToBeUsed:s,handleHighSlippageClick:a}=LS();return r?o.jsx(t,{onClick:a,children:n.confirmMaxSlippage.replace("{slippagePercentage}",`${Math.abs(s)}`)}):e},kS=()=>{const{chainId:e}=y(),[t]=B(),n=le({address:t.address,chainId:e}),r=Qa(),s=kt(Math.min(0,r));return{receiveToken:{...t,price:n},swapDiff:r,themeType:s}},RS=()=>{const{receiveToken:e,swapDiff:t,themeType:n}=kS();return o.jsx(yt,{assetInput:e.value,autoFocus:!1,disabled:!0,assetSymbol:e.symbol,assetPrice:e.price,displayCalculatedValue:!0,isLoading:e.isLoading,tradingPriceDiff:t,type:n})},jS=()=>{const e=E(),{stablePrecision:t}=q(),[n]=B(),r=_e(),{minExpectedReceiveAmount:s}=Wr(),a=kt(r),i=a===H.DEFAULT?e.withdrawSlippageWarning:e.highSlippageWarning;return{themeType:a,slippageTooltipText:i,slippagePlaceholder:r.toString(),minReceive:`${w.formatNumberToLimitedDecimals({value:k.formatUnits(BigInt(s),n.decimals),decimals:t})} ${n.symbol}`}},MS=()=>{const e=E(),{slippageTooltipText:t,slippagePlaceholder:n,minReceive:r}=jS(),s=m.useMemo(()=>[{tooltipText:e.exchangeRate,label:e.rate,value:o.jsx(zr,{})},{tooltipText:t,label:e.maxSlippage,value:o.jsxs("span",{children:[n,"%"]})},{tooltipText:e.minReceiveAmount,label:e.minReceived,value:r}],[r,n,t,e.maxSlippage,e.minReceiveAmount,e.minReceived,e.exchangeRate,e.rate]);return o.jsx(ir,{collapseItems:s})},BS=({children:e})=>o.jsxs(V.Meta,{children:[o.jsx("div",{className:"dtw-bg-[var(--panel-meta-action-panel-bg)]",children:e}),o.jsx(MS,{})]}),$S=()=>(RA(),o.jsxs(o.Fragment,{children:[o.jsxs(V.InputGroup,{children:[o.jsx(OS,{}),o.jsx(RS,{})]}),o.jsx(BS,{children:o.jsx(Hr,{children:o.jsxs("div",{className:"tw-flex tw-flex-col tw-gap-2",children:[o.jsx(DS,{children:o.jsx(ri,{})}),o.jsx(li,{highlighted:!1})]})})})]})),US=()=>{const{chainId:e,address:t}=y(),{exitFeeNumber:n}=bn({address:t,chainId:e}),[r]=R(),[s,a]=B(),i=ue({address:t,chainId:e}),l=le({address:s.address,chainId:e});m.useEffect(()=>{if(!r.value||r.value==="0"){a({value:""});return}if(!l||l==="0"){a({value:""});return}const d=new I(r.value).times(i).times(1-n/100).dividedBy(l).toFixed(s.decimals);a({value:w.isNumeric(d)?d:""})},[n,s.decimals,l,r.value,i,a])},FS=()=>{const e=E(),t=we(),n=()=>t({type:"MERGE_OVERLAY",payload:{type:G.LIMIT_ORDER_WITHDRAW,isOpen:!0}});return{label:e.withdrawAction,openLimitOrderWithdrawOverlay:n}},WS=()=>{const{ActionButton:e=z}=$(),{label:t,openLimitOrderWithdrawOverlay:n}=FS();return o.jsx(e,{onClick:n,children:t})},Vn=[{isLeveragedAsset:w.isFlatMoneyLeveragedAsset,getWithdrawAssetByLeverageAddress:w.getFlatMoneyCollateralByLeverageAddress,getWithdrawAssetByVaultAddress:()=>{},isLentAndBorrowedAsset:w.isAaveLendAndBorrowAsset},{isLeveragedAsset:w.isGmxLeveragedAsset,getWithdrawAssetByLeverageAddress:w.getGmxWithdrawAssetByLeverageAddress,getWithdrawAssetByVaultAddress:w.getGmxWithdrawAssetByVaultAddress,isLentAndBorrowedAsset:w.isAaveLendAndBorrowAsset}],qn={requiresLeveragedCollateralLiquidity:!1,leveragedCollateralValueFormatted:"$0"},Fi=(e,{precision:t,rate:n})=>I(e).shiftedBy(-t).times(n).shiftedBy(-u.DEFAULT_PRECISION).toNumber(),St=e=>Fi(e.amount,e),sr=e=>e.reduce((t,n)=>t+St(n),0),or=(e,t)=>({requiresLeveragedCollateralLiquidity:t>e,leveragedCollateralValueFormatted:w.formatToUsd({value:e})}),Gs=({tokenAddress:e})=>w.isHyperliquidCorePositionAsset(e),zs=({tokenAddress:e})=>w.isEqualAddress(w.getHyperliquidWithdrawAsset().address,e),GS=({config:e,composition:t,sendTokenValue:n})=>{const r=e.chainId===Z.hyperEvm.id,s=r?t.filter(h=>h.amount!=="0"&&!Gs(h)&&!zs(h)):[],{data:a}=_.useReadContracts({contracts:s.map(({tokenAddress:h})=>({address:h,abi:k.erc20Abi,functionName:"balanceOf",chainId:e.chainId,args:[e.address]})),query:{enabled:s.length>0}});if(!r)return null;const i=sr(t.filter(Gs)),l=s.reduce((h,f,v)=>{const T=a?.[v];if(T?.status!=="success")return h;const b=Fi(String(T.result),f);return h+Math.max(0,St(f)-b)},0),c=i+l;if(c<=0)return null;const d=t.find(zs),p=d?St(d):0,g=sr(t)*p/(p+c);return or(g,n)},Wi=()=>{const e=y(),t=Re(e),[n]=R(),r=ue(e),s=Number(n.value||"0")*Number(r),a=GS({config:e,composition:t,sendTokenValue:s});if(a)return a;const i=t.find(({tokenAddress:h,amount:f})=>Vn.some(v=>v.isLeveragedAsset(h)&&f!=="0"));if(!i)return qn;const l=Vn.find(h=>h.isLeveragedAsset(i.tokenAddress));if(!l)return qn;const c=l.getWithdrawAssetByVaultAddress(e.address)?.address??l.getWithdrawAssetByLeverageAddress(i.tokenAddress).address,d=t.find(({tokenAddress:h})=>w.isEqualAddress(c,h));if(!d)return qn;const p=St(d);if(t.find(({tokenAddress:h,amount:f})=>Vn.some(v=>v.isLentAndBorrowedAsset({address:h,chainId:e.chainId})&&f!=="0"))){const h=St(i),f=sr(t),v=p/f,T=h/f,A=v/(v+T)*f;return or(A,s)}return or(p,s)},Gi=()=>{const{chainId:e,onDemandWithdrawalEnabled:t}=y(),{requiresLeveragedCollateralLiquidity:n}=Wi(),r=Pt(),s=Ui();return n&&!!s&&!!t&&(e===Z.arbitrum.id||!r)},zS=()=>{const{address:e,chainId:t,maintenance:n,maintenanceWithdrawals:r,symbol:s}=y(),[a]=R(),i=we(),l=Gi(),c=Nt(),{data:d=0}=jv({address:e,chainId:t}),p=d>0,g=Vt.formatDuration(Vt.intervalToDuration({start:0,end:d})),{requiresHighSlippageConfirm:h,confirmHighSlippage:f,slippageToBeUsed:v}=kr(),T=()=>{i({type:"MERGE_OVERLAY",payload:{type:G.HIGH_SLIPPAGE,isOpen:!0,onConfirm:async()=>f()}})};return{isEmptyInput:!w.isPositiveNumber(a.value),requiresEndOfCooldown:p,requiresHighSlippageConfirm:h,sendTokenSymbol:a.symbol,slippageToBeUsed:v,dynamicCooldownEndsInTime:g,handleHighSlippageClick:T,maintenance:n||r,poolSymbol:s,isLimitOrderWithdraw:l,insufficientBalance:c}},HS=({children:e})=>{const{ActionButton:t=z}=$(),n=E(),{isEmptyInput:r,requiresEndOfCooldown:s,requiresHighSlippageConfirm:a,sendTokenSymbol:i,slippageToBeUsed:l,dynamicCooldownEndsInTime:c,handleHighSlippageClick:d,maintenance:p,poolSymbol:g,isLimitOrderWithdraw:h,insufficientBalance:f}=zS();return r?o.jsx(t,{disabled:!0,children:n.sellNow}):p?o.jsx(Jt,{promptText:n.poolWithdrawalsAreMaintenance.replace("{poolSymbol}",g),children:n.sellNow}):s?o.jsx(Jt,{promptText:n.withdrawCooldown.replace("{tokenSymbol}",i).replace("{cooldownEndTime}",c),children:n.sellNow}):f?o.jsx(t,{disabled:!0,children:n.insufficientBalance}):h?o.jsx(WS,{}):a?o.jsx(t,{onClick:d,children:n.confirmMaxSlippage.replace("{slippagePercentage}",`${Math.abs(l)}`)}):e},VS=()=>{const{address:e,chainId:t}=y(),[n,r]=R(),s=Ae({symbol:n.symbol,address:n.address}),a=ue({address:e,chainId:t});return{...n,updater:r,balance:s,price:a}},qS=()=>{const{chainId:e}=y(),[t,n]=B(),r=le({address:t.address,chainId:e});return{...t,updater:n,price:r,displayCalculatedValue:t.symbol!==u.MULTI_ASSET_TOKEN.symbol}},YS=()=>{const e=VS(),t=qS();return{sendToken:e,onInputChange:r=>{e.updater({value:r})},receiveToken:t}},KS=()=>{const{sendToken:e,onInputChange:t,receiveToken:n}=YS();return o.jsxs(o.Fragment,{children:[o.jsx(yt,{assetInput:e.value,onInputChange:t,assetSymbol:e.symbol,assetPrice:e.price??"",displayMax:!0,maxBalance:e.balance,displayCalculatedValue:!0,children:o.jsx(Va,{})}),o.jsxs(yt,{assetInput:n.value,autoFocus:!1,disabled:!0,assetSymbol:n.symbol,assetPrice:n.price,displayCalculatedValue:n.displayCalculatedValue,isLoading:n.isLoading,children:[o.jsx(Xa,{}),n.displayCalculatedValue?o.jsx(qa,{}):null]})]})},Hs="delete_limit_order_withdraw",QS=()=>{const{address:e,symbol:t,chainId:n}=y(),r=ne()[1],s=Ce({action:Hs}),{send:a}=de({onSettled:s,contractId:"limitOrder",functionName:"deleteLimitOrder"});return m.useCallback(async()=>(r({type:"add",action:Hs,symbol:t,chainId:n}),a(e)),[n,a,t,r,e])},ZS=()=>{const{account:e=u.AddressZero}=j(),{address:t,chainId:n}=y(),{data:r}=gt({userAddress:e,vaultAddress:t,chainId:n});return m.useMemo(()=>{const s=!!r&&r.stopLossPriceD18===BigInt(0)&&r.takeProfitPriceD18===u.MaxUint256,a=s?k.formatUnits(r.amountD18,u.DEFAULT_PRECISION):"0";return{hasPendingLimitOrderWithdraw:s,pendingLimitOrderWithdrawAmount:a}},[r])},XS=()=>{const{address:e,chainId:t,symbol:n}=y(),{hasPendingLimitOrderWithdraw:r,pendingLimitOrderWithdrawAmount:s}=ZS(),a=ue({address:e,chainId:t}),i=QS(),c=ne()[0].some(h=>h.action==="delete_limit_order_withdraw"),d=w.formatBalance(s,u.DEFAULT_TOKEN_DECIMALS),p=new I(s).multipliedBy(a).toNumber(),g=p>0?w.formatToUsd({value:p}):"";return{hasPendingLimitOrderWithdraw:r,symbol:n,formattedAmount:d,formattedUsdValue:g,cancel:i,isCancelling:c}},JS=()=>{const e=E(),{hasPendingLimitOrderWithdraw:t,symbol:n,formattedAmount:r,formattedUsdValue:s,cancel:a,isCancelling:i}=XS();return t?o.jsx(Xe,{type:"info",className:"dtw-mb-2",children:o.jsxs("div",{className:"dtw-flex dtw-items-center dtw-justify-between dtw-gap-3",children:[o.jsxs("div",{className:"dtw-flex dtw-flex-col dtw-min-w-0",children:[o.jsxs("span",{className:"dtw-text-sm dtw-font-medium dtw-flex dtw-items-center dtw-gap-1.5",children:[o.jsx(Se,{className:"dtw-h-3 dtw-w-3 dtw-shrink-0"}),e.pendingWithdrawalRequest]}),o.jsxs("span",{className:"dtw-text-sm dtw-truncate dtw-text-[color:var(--panel-secondary-content-color)]",children:[r," ",n,s&&` · ${s}`]})]}),o.jsx(z,{highlighted:!1,className:"!dtw-py-1 !dtw-px-3 !dtw-w-auto dtw-shrink-0 dtw-text-sm",onClick:a,loading:i,children:e.cancel})]})}):null},eE=()=>{const e=E(),{address:t,chainId:n}=y(),[{isMaxSlippageLoading:r}]=X(),{exitFeeNumber:s}=bn({address:t,chainId:n}),a=_e(),i=qe();return{slippageTooltipText:kt(a)===H.DEFAULT?e.withdrawSlippageWarning:e.highSlippageWarning,isMaxSlippageLoading:r,slippagePlaceholder:`${a}%`,exitFee:w.formatPercentage(s,2),minReceivedText:e.estimatedMultiAssetFractions,showMinReceivedText:i}},tE=()=>{const e=E(),{slippageTooltipText:t,slippagePlaceholder:n,isMaxSlippageLoading:r,exitFee:s,minReceivedText:a,showMinReceivedText:i}=eE(),l=m.useMemo(()=>{const c=[{tooltipText:e.exchangeRate,label:e.rate,value:o.jsx(zr,{})},{tooltipText:t,label:e.maxSlippage,value:o.jsxs("div",{className:"dtw-flex dtw-gap-1",children:[r&&o.jsx(Se,{className:"dtw-stroke-[color:var(--panel-accent-from-color)] dtw-h-[var(--panel-icon-secondary-size)] sm:dtw-h-[var(--panel-icon-secondary-size-sm)] dtw-w-[var(--panel-icon-secondary-size)] sm:dtw-w-[var(--panel-icon-secondary-size-sm)]"}),o.jsx("span",{className:N({"dtw-text-[color:var(--panel-loading-content-color)]":r}),children:n})]})},{label:e.exitFee,value:s,tooltipText:e.exitFeeExplanation}];return i&&c.push({tooltipText:e.minReceiveAmount,label:e.minReceived,value:a}),c},[t,e.maxSlippage,e.exitFee,e.exitFeeExplanation,e.minReceiveAmount,e.minReceived,e.exchangeRate,e.rate,r,n,s,i,a]);return o.jsx(ir,{collapseItems:l})},nE=({children:e})=>{const{WithdrawMetaInfo:t,AvailableLiquidityAlert:n,OnDemandWithdrawAlert:r}=$(),{requiresLeveragedCollateralLiquidity:s,leveragedCollateralValueFormatted:a}=Wi(),i=Gi();return o.jsxs(V.Meta,{children:[o.jsx(JS,{}),o.jsx("div",{children:s?i?o.jsx(o.Fragment,{children:!!r&&o.jsx(r,{})}):o.jsx(o.Fragment,{children:!!n&&o.jsx(n,{liquidityAmount:a})}):null}),o.jsx("div",{className:"dtw-bg-[var(--panel-meta-action-panel-bg)]",children:e}),o.jsx(tE,{}),t&&o.jsx(t,{})]})},rE=()=>{const e=E();return US(),o.jsxs(o.Fragment,{children:[o.jsx(V.InputGroup,{children:o.jsx(KS,{})}),o.jsx(nE,{children:o.jsx(Hr,{children:o.jsxs("div",{className:"dtw-flex dtw-flex-col dtw-gap-2 dtw-w-full",children:[o.jsx(HS,{children:o.jsx(ri,{})}),o.jsx(ti,{highlighted:!1,children:e.stopOrder})]})})})]})},sE=()=>{LA();const{isCompleteWithdrawStep:e}=Ye();return{isCompleteWithdrawStep:e}},oE=()=>{const{isCompleteWithdrawStep:e}=sE();return e?o.jsx($S,{}):o.jsx(rE,{})},aE=()=>o.jsx(V.Panel,{children:o.jsx(oE,{})}),iE=({tradingType:e})=>o.jsxs(F.TabGroup,{selectedIndex:et.indexOf(e),children:[o.jsx(F.TabList,{className:"dtw-flex",children:et.map(t=>o.jsx(F.Tab,{className:"dtw-hidden"},t))}),o.jsxs(F.TabPanels,{children:[o.jsx(V.Settings,{children:o.jsx(rb,{})}),o.jsx(V.Settings,{children:o.jsx(IS,{})})]})]}),lE=({children:e})=>o.jsxs(F.TabList,{className:"dtw-flex dtw-px-[var(--panel-tab-group-px)] dtw-justify-between dtw-items-center",children:[o.jsx("div",{className:"dtw-bg-[var(--panel-tab-list-bg)] dtw-rounded-[var(--panel-tab-list-radius)] dtw-px-[var(--panel-tab-list-px)] dtw-py-[var(--panel-tab-list-py)]",children:et.map(t=>o.jsx(sl,{tradingType:t},t))}),e]}),cE=et.reduce((e,t,n)=>(e[n]=t,e),{}),dE=()=>{const[e]=ve(),t=y(),{standalone:n}=q();MA();const r=Gr(),s=a=>{const i=cE[a];i&&r(i)};return m.useEffect(()=>{n||r("deposit")},[t.address,n]),m.useEffect(()=>{n&&r(e)},[t.address,n,e]),{type:e,onTabChange:s}},uE=()=>{const{type:e,onTabChange:t}=dE();return o.jsxs("div",{className:"trading-widget dtw-relative dtw-pt-3 dtw-bg-[var(--panel-background-color)] dtw-text-[color:var(--panel-content-color)] dtw-rounded-[var(--widget-radius)] md:dtw-rounded-[var(--widget-radius-md)] dtw-overflow-hidden dtw-h-full",children:[o.jsxs(F.TabGroup,{selectedIndex:et.indexOf(e),onChange:t,className:"dtw-flex dtw-flex-col dtw-h-full",children:[o.jsx(lE,{children:o.jsxs("div",{className:"dtw-flex dtw-gap-2 dtw-items-center dtw-justify-end",children:[o.jsx(ex,{}),o.jsx(iE,{tradingType:e})]})}),o.jsxs(F.TabPanels,{className:"dtw-flex-1 dtw-overflow-y-auto",children:[o.jsx(ax,{}),o.jsx(aE,{})]})]}),o.jsxs(lx,{children:[o.jsx(cx,{type:G.TERMS_OF_USE}),o.jsx(dx,{type:G.HIGH_SLIPPAGE}),o.jsx(ux,{type:G.HYPEREVM_WARNING}),o.jsx(vx,{type:G.TOKEN_SELECT,searchQuery:""}),o.jsx(xx,{type:G.POOL_SELECT,searchQuery:""}),o.jsx(Bx,{type:G.TRADING}),o.jsx(Ny,{type:G.LIMIT_SELLS}),o.jsx(Zy,{type:G.LIMIT_BUYS}),o.jsx(dS,{type:G.LIMIT_ORDER_WITHDRAW}),o.jsx(_S,{type:G.WITHDRAW_STEPPER}),o.jsx(Kx,{type:G.ERROR_NOTIFICATION})]})]})},pE=({children:e,config:t,className:n})=>o.jsx("div",{className:n,style:{"--panel-radius":`${t?.global?.style?.radiusPrimary??"1rem"}`,"--panel-radius-secondary":`${t?.global?.style?.radiusSecondary??"1rem"}`,"--panel-background-color":`${t?.global?.color?.colorBgPrimary??C.DARK[800]}`,"--panel-gap":`${t?.global?.size?.gap??"0.25rem"}`,"--panel-spacer":`${t?.global?.size?.spacer??"4px"}`,"--panel-content-color":`${t?.global?.color?.colorTextPrimary??C.WHITE.DEFAULT}`,"--panel-content-hover-color":`${t?.global?.color?.colorTextPrimaryHover??`${C.WHITE.DEFAULT}CC`}`,"--panel-secondary-color":`${t?.global?.color?.colorBgSecondary??C.GRAY[800]}`,"--panel-secondary-content-color":`${t?.global?.color?.colorTextSecondary??C.GRAY[600]}`,"--panel-accent-from-color":`${t?.global?.color?.colorBgAccentFrom??C.GREEN.DEFAULT}`,"--panel-accent-to-color":`${t?.global?.color?.colorBgAccentTo??C.GREEN[700]}`,"--panel-accent-hover-from-color":`${t?.global?.color?.colorBgAccentFromHover??`${C.GREEN.DEFAULT}CC`}`,"--panel-accent-hover-to-color":`${t?.global?.color?.colorBgAccentToHover??C.BLUE.dark}`,"--panel-accent-content-color":`${t?.global?.color?.colorTextAccent??C.WHITE.DEFAULT}`,"--panel-accent-content-hover-color":`${t?.global?.color?.colorTextAccentHover??`${C.WHITE.DEFAULT}CC`}`,"--panel-neutral-color":`${t?.global?.color?.colorBgNeutral??`${C.GRAY[600]}33`}`,"--panel-neutral-content-color":`${t?.global?.color?.colorTextNeutral??`${C.GRAY[600]}80`}`,"--panel-loading-content-color":`${t?.global?.color?.colorTextLoading??`${C.WHITE.DEFAULT}99`}`,"--panel-error-content-color":`${t?.global?.color?.colorTextError??C.RED[500]}`,"--panel-warning-content-color":`${t?.global?.color?.colorTextWarning??C.WARNING}`,"--panel-success-content-color":`${t?.global?.color?.colorTextSuccess??C.GREEN.DEFAULT}`,"--panel-success-bg-color":`${t?.global?.color?.colorBgSuccess??"rgba(115, 211, 147, 0.15)"}`,"--panel-error-overlay-icon-color":`${t?.global?.color?.colorErrorOverlayIcon??"var(--panel-accent-from-color)"}`,"--panel-border-color":`${t?.global?.color?.colorBorderPrimary??"var(--panel-content-color)"}`,"--widget-radius":`${t?.component?.widget?.style?.radius??"var(--panel-radius)"}`,"--widget-radius-md":`${t?.component?.widget?.style?.radiusMd??"var(--panel-radius)"}`,"--panel-divider-color":`${t?.component?.divider?.color?.colorBg??"var(--panel-secondary-content-color)"}`,"--panel-scrollbar-color":`${t?.global?.color?.colorScrollbar??`${C.GREEN.DEFAULT}80`}`,"--panel-font-size":`${t?.global?.size?.fontSizeBase??"16px"}`,"--panel-line-height":`${t?.global?.size?.lineHeightBase??"24px"}`,"--panel-font-size-lg":`${t?.global?.size?.fontSizeLg??"18px"}`,"--panel-line-height-lg":`${t?.global?.size?.lineHeightLg??"28px"}`,"--panel-font-size-sm":`${t?.global?.size?.fontSizeSm??"14px"}`,"--panel-line-height-sm":`${t?.global?.size?.lineHeightSm??"20px"}`,"--panel-font-size-xs":`${t?.global?.size?.fontSizeXs??"12px"}`,"--panel-line-height-xs":`${t?.global?.size?.lineHeightXs??"16px"}`,"--panel-font-weight-light":`${t?.global?.style?.fontWeightLight??300}`,"--panel-font-weight-medium":`${t?.global?.style?.fontWeightMedium??500}`,"--panel-font-weight-bold":`${t?.global?.style?.fontWeightBold??700}`,"--panel-action-opacity":`${t?.global?.style?.actionOpacity??1}`,"--panel-action-hover-opacity":`${t?.global?.style?.actionOpacityHover??.8}`,"--panel-label-font-size":`${t?.global?.size?.labelFontSize??"var(--panel-font-size)"}`,"--panel-label-line-height":`${t?.global?.size?.labelLineHeight??"var(--panel-line-height-xs)"}`,"--panel-icon-size":`${t?.global?.size?.iconSize??"20px"}`,"--panel-icon-size-sm":`${t?.global?.size?.iconSizeSm??"24px"}`,"--panel-icon-secondary-size":`${t?.global?.size?.iconSecondarySize??"16px"}`,"--panel-icon-secondary-size-sm":`${t?.global?.size?.iconSecondarySizeSm??"16px"}`,"--panel-icon-color":`${t?.global?.color?.colorIcon??"var(--panel-content-color)"}`,"--panel-icon-color-hover":`${t?.global?.color?.colorIconHover??"var(--panel-content-hover-color)"}`,"--panel-notification-bg":`${t?.component?.notification?.color?.colorBg??"var(--panel-secondary-color)"}`,"--panel-popup-content-color":`${t?.component?.popup?.color?.colorText??"var(--panel-secondary-content-color)"}`,"--panel-popup-bg":`${t?.component?.popup?.color?.colorBg??"var(--panel-secondary-color)"}`,"--panel-overlay-bg":`${t?.component?.overlay?.color?.colorBg??"var(--panel-popup-bg)"}`,"--panel-popup-border-color":`${t?.component?.popup?.color?.colorBorder??"var(--panel-secondary-content-color)"}`,"--panel-popup-font-size":`${t?.component?.popup?.size?.fontSize??t?.global?.size?.fontSizeXs??"12px"}`,"--panel-popup-list-header-bg":`${t?.component?.popupList?.color?.headerBg??C.DARK[800]}`,"--panel-popup-list-item-bg-even":`${t?.component?.popupList?.color?.itemBgEven??"transparent"}`,"--panel-popup-list-item-bg-odd":`${t?.component?.popupList?.color?.itemBgOdd??C.DARK[400]}`,"--panel-tab-group-px":`${t?.component?.tabGroup?.size?.px??"calc(var(--panel-spacer) * 6)"}`,"--panel-tab-list-bg":`${t?.component?.tabList?.color?.colorBg??C.DARK.DEFAULT}`,"--panel-tab-list-px":`${t?.component?.tabList?.size?.px??"calc(var(--panel-spacer) * 3)"}`,"--panel-tab-list-py":`${t?.component?.tabList?.size?.py??"calc(var(--panel-spacer) * 2)"}`,"--panel-tab-list-radius":`${t?.component?.tabList?.style?.radius??"var(--panel-radius-secondary)"}`,"--panel-content-pt":`${t?.component?.tabContent?.size?.pt??"calc(var(--panel-spacer) * 2)"}`,"--panel-content-pb":`${t?.component?.tabContent?.size?.pb??"calc(var(--panel-spacer) * 9)"}`,"--panel-content-pb-md":`${t?.component?.tabContent?.size?.pbMd??"var(--panel-content-pb)"}`,"--panel-content-px":`${t?.component?.tabContent?.size?.px??"0px"}`,"--panel-content-gap":`${t?.component?.tabContent?.size?.gap??"calc(var(--panel-gap) * 2)"}`,"--panel-tab-px":`${t?.component?.tab?.size?.px??"calc(var(--panel-spacer) * 9)"}`,"--panel-tab-py":`${t?.component?.tab?.size?.py??"calc(var(--panel-spacer) * 2)"}`,"--panel-tab-bg":`${t?.component?.tab?.color?.colorBg??"var(--panel-neutral-color)"}`,"--panel-tab-content-color":`${t?.component?.tab?.color?.colorText??"var(--panel-neutral-content-color)"}`,"--panel-tab-select-content-color":`${t?.component?.tab?.color?.selectColorText??"var(--panel-content-color)"}`,"--panel-tab-hover-content-color":`${t?.component?.tab?.color?.colorTextHover??"var(--panel-content-hover-color)"}`,"--panel-tab-font-size":`${t?.component?.tab?.size?.fontSize??"var(--panel-font-size-sm)"}`,"--panel-tab-font-weight":`${t?.component?.tab?.style?.fontWeight??"var(--panel-font-weight-medium)"}`,"--panel-tab-line-height":`${t?.component?.tab?.style?.lineHeight??"var(--panel-line-height-sm)"}`,"--panel-balance-group-px":`${t?.component?.balance?.size?.px??"calc(var(--panel-spacer) * 6)"}`,"--panel-balance-group-gap":`${t?.component?.balance?.size?.gap??"var(--panel-gap)"}`,"--panel-balance-content-color":`${t?.component?.balance?.color?.colorText??"var(--panel-secondary-content-color)"}`,"--panel-balance-price-content-color":`${t?.component?.balance?.color?.priceColorText??"var(--panel-secondary-content-color)"}`,"--panel-balance-font-size":`${t?.component?.balance?.size?.fontSize??"var(--panel-font-size-xs)"}`,"--panel-balance-line-height":`${t?.component?.balance?.size?.lineHeight??"var(--panel-line-height-xs)"}`,"--panel-balance-price-font-size":`${t?.component?.balance?.size?.priceFontSize??"var(--panel-font-size)"}`,"--panel-balance-price-line-height":`${t?.component?.balance?.size?.priceLineHeight??"var(--panel-line-height)"}`,"--panel-inputs-group-gap":`${t?.component?.inputGroup?.size?.gap??"var(--panel-gap)"}`,"--panel-inputs-group-px":`${t?.component?.inputGroup?.size?.px??"calc(var(--panel-spacer) * 6)"}`,"--panel-inputs-group-px-arrow":`${t?.component?.inputGroup?.size?.pxArrow??"var(--panel-spacer)"}`,"--panel-inputs-group-py-arrow":`${t?.component?.inputGroup?.size?.pyArrow??"var(--panel-spacer)"}`,"--panel-inputs-group-arrow-size":`${t?.component?.inputGroup?.size?.arrowSize??"var(--panel-input-token-icon-size)"}`,"--panel-inputs-arrow-bg":`${t?.component?.inputGroup?.color?.colorBgArrow??"var(--panel-input-bg)"}`,"--panel-inputs-arrow-color":`${t?.component?.inputGroup?.color?.colorArrow??"var(--panel-input-content-color)"}`,"--panel-inputs-arrow-border-color":`${t?.component?.inputGroup?.color?.colorBorderArrow??"var(--panel-input-border-color)"}`,"--panel-inputs-arrow-radius":`${t?.component?.inputGroup?.style?.radiusArrow??"var(--panel-radius-secondary)"}`,"--panel-input-radius":`${t?.component?.input?.style?.radius??"var(--panel-radius)"}`,"--panel-input-group-gap":`${t?.component?.input?.size?.gap??"calc(var(--panel-gap) * 2)"}`,"--panel-input-px":`${t?.component?.input?.size?.px??"calc(var(--panel-spacer) * 3)"}`,"--panel-input-py":`${t?.component?.input?.size?.py??"calc(var(--panel-spacer) * 5)"}`,"--panel-input-price-gap":`${t?.component?.input?.size?.priceGap??"calc(var(--panel-gap) * 2)"}`,"--panel-input-token-icon-size":`${t?.component?.input?.size?.iconSize??"var(--panel-icon-size)"}`,"--panel-input-token-icon-size-sm":`${t?.component?.input?.size?.iconSizeSm??"var(--panel-icon-size-sm)"}`,"--panel-input-content-color":`${t?.component?.input?.color?.textColor??"var(--panel-content-color)"}`,"--panel-input-loading-content-color":`${t?.component?.input?.color?.loadingTextColor??"var(--panel-loading-content-color)"}`,"--panel-input-bg":`${t?.component?.input?.color?.bgColor??"var(--panel-neutral-color)"}`,"--panel-input-focus-bg":`${t?.component?.input?.color?.bgColorFocus??"transparent"}`,"--panel-input-border-color":`${t?.component?.input?.color?.borderColor??C.GRAY[700]}`,"--panel-input-focus-border-color":`${t?.component?.input?.color?.borderColorFocus??"var(--panel-content-color)"}`,"--panel-input-placeholder-color":`${t?.component?.input?.color?.placeholderColor??"var(--panel-secondary-content-color)"}`,"--panel-input-label-font-size":`${t?.component?.input?.size?.labelFontSize??"var(--panel-font-size-sm)"}`,"--panel-input-label-line-height":`${t?.component?.input?.size?.labelLineHeight??"var(--panel-line-height-sm)"}`,"--panel-input-label-font-weight":`${t?.component?.input?.style?.labelFontWeight??"var(--panel-font-weight-light)"}`,"--panel-input-font-size":`${t?.component?.input?.size?.fontSize??"var(--panel-font-size-sm)"}`,"--panel-input-line-height":`${t?.component?.input?.size?.lineHeight??"var(--panel-line-height-sm)"}`,"--panel-input-font-size-lg":`${t?.component?.input?.size?.fontSizeLg??"var(--panel-font-size-lg)"}`,"--panel-input-line-height-lg":`${t?.component?.input?.size?.lineHeightLg??"var(--panel-line-height-lg)"}`,"--panel-input-font-weight":`${t?.component?.input?.style?.fontWeight??"var(--panel-font-weight-light)"}`,"--panel-input-token-font-size":`${t?.component?.input?.size?.tokenFontSize??"var(--panel-font-size-xs)"}`,"--panel-input-token-line-height":`${t?.component?.input?.size?.tokenLineHeight??"var(--panel-line-height-xs)"}`,"--panel-input-token-font-size-sm":`${t?.component?.input?.size?.tokenFontSizeSm??"var(--panel-font-size)"}`,"--panel-input-token-line-height-sm":`${t?.component?.input?.size?.tokenLineHeightSm??"var(--panel-line-height)"}`,"--panel-input-token-font-weight":`${t?.component?.input?.style?.tokenFontWeight??"var(--panel-font-weight-medium)"}`,"--panel-input-button-radius":`${t?.component?.input?.style?.buttonRadius??"30px"}`,"--panel-input-button-px":`${t?.component?.input?.size?.buttonPx??"calc(var(--panel-spacer) * 2)"}`,"--panel-input-button-py":`${t?.component?.input?.size?.buttonPy??"var(--panel-spacer)"}`,"--panel-input-button-bg":`${t?.component?.input?.color?.buttonBgColor??"var(--panel-secondary-color)"}`,"--panel-input-button-border-color":`${t?.component?.input?.color?.buttonBorderColor??"var(--panel-accent-to-color)"}`,"--panel-input-button-content-color":`${t?.component?.input?.color?.buttonTextColor??"var(--panel-content-color)"}`,"--panel-input-button-font-size":`${t?.component?.input?.size?.buttonFontSize??"var(--panel-font-size-xs)"}`,"--panel-input-button-line-height":`${t?.component?.input?.size?.buttonLineHeight??"var(--panel-line-height-xs)"}`,"--panel-action-accent-button-border-width":`${t?.component?.actionButton?.size?.borderWidth??"1px"}`,"--panel-action-accent-button-bg-from":`${t?.component?.actionButton?.color?.colorBgFrom??"var(--panel-accent-from-color)"}`,"--panel-action-accent-button-bg-to":`${t?.component?.actionButton?.color?.colorBgTo??"var(--panel-accent-to-color)"}`,"--panel-action-accent-button-hover-bg-from":`${t?.component?.actionButton?.color?.colorBgFromHover??"var(--panel-accent-hover-from-color)"}`,"--panel-action-accent-button-hover-bg-to":`${t?.component?.actionButton?.color?.colorBgToHover??"var(--panel-accent-hover-to-color)"}`,"--panel-action-accent-button-border-color":`${t?.component?.actionButton?.color?.colorBorder??"var(--panel-accent-from-color)"}`,"--panel-action-accent-button-color":`${t?.component?.actionButton?.color?.colorText??"var(--panel-accent-content-color)"}`,"--panel-action-outline-button-border-color":`${t?.component?.actionButton?.color?.outlineColorBorder??`${C.WHITE.DEFAULT}33`}`,"--panel-action-outline-button-border-hover-color":`${t?.component?.actionButton?.color?.outlineColorBorderHover??`${C.WHITE.DEFAULT}CC`}`,"--panel-action-outline-button-color":`${t?.component?.actionButton?.color?.outlineColorText??"var(--panel-content-color)"}`,"--panel-meta-group-gap":`${t?.component?.meta?.size?.gap??"var(--panel-gap)"}`,"--panel-meta-group-px":`${t?.component?.meta?.size?.px??"calc(var(--panel-spacer) * 6)"}`,"--panel-meta-link-color":`${t?.component?.meta?.color?.linkTextColor??"var(--panel-accent-from-color)"}`,"--panel-meta-hover-bg":`${t?.component?.meta?.color?.panelBgHover??"var(--panel-neutral-color)"}`,"--panel-meta-action-panel-bg":`${t?.component?.meta?.color?.actionPanelBg??"var(--panel-background-color)"}`,"--panel-meta-font-size":`${t?.component?.meta?.size?.fontSize??"var(--panel-font-size-xs)"}`,"--panel-meta-line-height":`${t?.component?.meta?.size?.lineHeight??"var(--panel-line-height-xs)"}`,"--panel-meta-emphasised-font-size":`${t?.component?.meta?.size?.emphasisedFontSize??"var(--panel-font-size-sm)"}`,"--panel-meta-emphasised-line-height":`${t?.component?.meta?.size?.emphasisedLineHeight??"var(--panel-line-height-sm)"}`,"--panel-tooltip-bg":`${t?.component?.tooltip?.color?.colorBg??C.DARK[700]}`,"--panel-tooltip-color":`${t?.component?.tooltip?.color?.colorText??C.WHITE.DEFAULT}`,"--panel-alert-error-bg":`${t?.component?.alert?.color?.errorBg??`${C.ERROR}4D`}`,"--panel-alert-warning-bg":`${t?.component?.alert?.color?.warningBg??`${C.WARNING}4D`}`,"--panel-alert-info-bg":`${t?.component?.alert?.color?.infoBg??`${C.INFO}4D`}`,"--panel-alert-error-color":`${t?.component?.alert?.color?.errorTextColor??"var(--panel-error-content-color)"}`,"--panel-alert-warning-color":`${t?.component?.alert?.color?.warningTextColor??"var(--panel-warning-content-color)"}`,"--panel-alert-info-color":`${t?.component?.alert?.color?.infoTextColor??"var(--panel-content-color)"}`,"--panel-switch-bg-checked":`${t?.component?.switch?.color?.colorBgChecked??C.BLUE.DEFAULT}`,"--panel-switch-bg":`${t?.component?.switch?.color?.colorBg??C.GRAY[700]}`,"--panel-switch-thumb-bg-checked":`${t?.component?.switch?.color?.colorThumbBgChecked??C.WHITE.DEFAULT}`,"--panel-switch-thumb-bg":`${t?.component?.switch?.color?.colorThumbBg??C.WHITE.DEFAULT}`,"--panel-switch-color-checked":t?.component?.switch?.color?.colorChecked,"--panel-switch-color":t?.component?.switch?.color?.color,"--panel-checkbox-bg-checked":`${t?.component?.checkbox?.color?.colorBgChecked??C.GRAY[700]}`,"--panel-checkbox-bg":`${t?.component?.checkbox?.color?.colorBg??"transparent"}`,"--panel-checkbox-border-color-checked":`${t?.component?.checkbox?.color?.colorBorder??"transparent"}`,"--panel-checkbox-border-color":`${t?.component?.checkbox?.color?.colorBorderChecked??C.GRAY.DEFAULT}`,"--panel-checkbox-color":`${t?.component?.checkbox?.color?.color??C.GRAY[300]}`,"--panel-checkbox-size":`${t?.component?.checkbox?.size?.size??"20px"}`,"--panel-checkbox-icon-size":`${t?.component?.checkbox?.size?.iconSize??"16px"}`,"--panel-checkbox-radius":`${t?.component?.checkbox?.style?.radius??"4px"}`},children:e}),mE=({children:e,config:t,theme:n,components:r,translation:s,className:a})=>o.jsx(nl,{config:s,children:o.jsx(pE,{config:n,className:a,children:o.jsx(Vo,{config:t,children:o.jsx(Df,{config:r,children:o.jsx(sT,{children:e})})})})}),wE=e=>o.jsx(mE,{...e,children:o.jsx(uE,{})}),zi=({title:e,children:t,className:n,titleClassName:r})=>o.jsxs("div",{className:N("dtw-relative dtw-flex dtw-flex-col dtw-gap-4 dtw-rounded-xl dtw-p-3 dtw-w-full dtw-bg-[var(--limit-order-background-color)]",n),children:[e&&o.jsx("h1",{className:N("dtw-mb-6 !dtw-text-[length:var(--limit-order-font-size-lg)] dtw-drop-shadow-md dtw-text-[color:var(--limit-order-secondary-content-color)]",r),children:e}),o.jsx("div",{className:"dtw-w-full",children:t})]}),Hi=({isOpen:e,onClose:t,children:n,className:r,ThemeProvider:s=m.Fragment})=>{const a=m.useRef(null);return o.jsx(F.Dialog,{open:e,initialFocus:a,as:"div",className:N("dtw-relative dtw-z-20 dtw-overflow-y-auto theme-scrollbar",r),onClose:t,children:o.jsx(s,{children:o.jsxs(o.Fragment,{children:[o.jsx(F.DialogBackdrop,{className:"dtw-fixed dtw-inset-0 dtw-backdrop-blur-md dtw-backdrop-brightness-75 dtw-backdrop-filter"}),o.jsx("div",{className:"dtw-fixed dtw-inset-0 dtw-flex dtw-w-screen dtw-items-center dtw-justify-center dtw-p-4",ref:a,children:o.jsx(F.DialogPanel,{transition:!0,className:"dtw-inline-block dtw-transform dtw-duration-100 dtw-ease-out dtw-overflow-hidden dtw-rounded-2xl dtw-text-left dtw-align-middle dtw-shadow-xl data-[closed]:dtw-opacity-0 data-[closed]:dtw-scale-75",children:n})})]})})})},hE=()=>{const e=ze(),{isModalOpen:t,pendingTransaction:n}=he(),{setIsModalOpen:r}=ht(),s=m.useCallback(()=>{r(!0),e?.(u.TRADING_PANEL_LOG_EVENT.OPEN_LIMIT_SELL_VIEW,{[u.TRADING_LOG_EVENT_PARAM.SOURCE.NAME]:"modal"})},[e,r]),a=m.useCallback(()=>r(!1),[r]);return{isModalOpen:t,onOpen:s,onClose:a,isTransactionPending:!!n}},gE=({children:e,themeConfig:t})=>{const{onOpen:n,isModalOpen:r,onClose:s,isTransactionPending:a}=hE(),i=Ie();Ci();const l=m.useCallback(({children:c})=>o.jsx(In,{config:t,children:c}),[t]);return o.jsxs(o.Fragment,{children:[e({onClick:n,isTransactionPending:a}),o.jsx(Hi,{isOpen:r,onClose:s,ThemeProvider:l,className:"limit-order",children:o.jsx(zi,{title:i.limitOrdersTitle,className:"dtw-text-[color:var(--limit-order-content-color)] dtw-text-[length:var(--limit-order-font-size)] dtw-w-full md:!dtw-w-[430px]",children:o.jsx(yi,{onClose:s})})})]})},fE=({children:e,vaultChainId:t,vaultAddress:n,pricingAsset:r,translation:s,minAmountInUsd:a=Er,actions:i,themeConfig:l,isModalOpen:c})=>{const{isFetched:d,upperLimitPrice:p,lowerLimitPrice:g}=Si({vaultAddress:n,vaultChainId:t}),h=m.useMemo(()=>({vaultAddress:n,vaultChainId:t,pricingAsset:r,minAmountInUsd:a,isModalOpen:c,form:{upperLimitPrice:p,lowerLimitPrice:g}}),[n,t,r,a,c,p,g]);return d?o.jsx(pi,{config:s,children:o.jsx(vi,{initialState:h,actions:i,children:o.jsx(gE,{themeConfig:l,children:e})})}):null},vE=({children:e,themeConfig:t,isOpen:n,onOpen:r,onClose:s})=>{const a=Ke(),i=m.useCallback(({children:l})=>o.jsx(In,{config:t,children:l}),[t]);return o.jsxs(o.Fragment,{children:[e({onClick:r}),o.jsx(Hi,{isOpen:n,onClose:s,ThemeProvider:i,className:"limit-order",children:o.jsx(zi,{title:a.limitBuyTitle,className:"dtw-text-[color:var(--limit-order-content-color)] dtw-text-[length:var(--limit-order-font-size)] dtw-w-full md:!dtw-w-[430px]",children:o.jsx(Mi,{onClose:s})})})]})},TE=({children:e,vaultChainId:t,vaultAddress:n,limitBuyManagerAddress:r,pricingAsset:s,translation:a,actions:i,themeConfig:l})=>{const[c,d]=m.useState(!1),p=wt({excludeNativeToken:!0}),g=m.useCallback(()=>d(!0),[]),h=m.useCallback(()=>d(!1),[]),f=m.useMemo(()=>({vaultAddress:n,vaultChainId:t,limitBuyManagerAddress:r,pricingAsset:s,depositTokens:p}),[n,t,r,s,p]),v=m.useMemo(()=>({...i,onOrderCreated:()=>{h(),i.onOrderCreated?.()}}),[i,h]);return o.jsx(ki,{config:a,children:o.jsx(Oi,{initialState:f,actions:v,children:o.jsx(vE,{isOpen:c,onOpen:g,onClose:h,themeConfig:l,children:e})})})};exports.clientSide=w.clientSide;exports.commify=w.commify;exports.formatByCurrency=w.formatByCurrency;exports.formatNumberToLimitedDecimals=w.formatNumberToLimitedDecimals;exports.formatNumeratorToPercentage=w.formatNumeratorToPercentage;exports.formatPercentage=w.formatPercentage;exports.formatToUsd=w.formatToUsd;exports.getContractAbiById=w.getContractAbiById;exports.getContractAddressById=w.getContractAddressById;exports.getConventionalTokenPriceDecimals=w.getConventionalTokenPriceDecimals;exports.getNativeTokenInvestableBalance=w.getNativeTokenInvestableBalance;exports.getPercent=w.getPercent;exports.getPoolFraction=w.getPoolFraction;exports.isAaveLendAndBorrowAsset=w.isAaveLendAndBorrowAsset;exports.isEqualAddress=w.isEqualAddress;exports.isFmpAirdropVaultAddress=w.isFmpAirdropVaultAddress;exports.isNativeToken=w.isNativeToken;exports.isZeroAddress=w.isZeroAddress;exports.normalizeNumber=w.normalizeNumber;exports.removeInsignificantTrailingZeros=w.removeInsignificantTrailingZeros;exports.shiftBy=w.shiftBy;exports.shortenAddress=w.shortenAddress;exports.transformAddressForAnalytics=w.transformAddressForAnalytics;exports.validateLoggerEventParams=w.validateLoggerEventParams;exports.ALCHEMY_RPC_URL_MAP=u.ALCHEMY_RPC_URL_MAP;exports.AaveLendingPoolAbi=u.AaveLendingPoolAbi;exports.AddressZero=u.AddressZero;exports.BRIDGED_TOKENS_SYMBOLS=u.BRIDGED_TOKENS_SYMBOLS;exports.BRIDGED_USDC_ARBITRUM=u.BRIDGED_USDC_ARBITRUM;exports.BRIDGED_USDC_OPTIMISM=u.BRIDGED_USDC_OPTIMISM;exports.BRIDGED_USDC_POLYGON=u.BRIDGED_USDC_POLYGON;exports.CBBTC_BASE=u.CBBTC_BASE;exports.CBETH_BASE=u.CBETH_BASE;exports.CHAIN_MAP=u.CHAIN_MAP;exports.CHAIN_NATIVE_TOKENS=u.CHAIN_NATIVE_TOKENS;exports.COMPLETE_WITHDRAW_ACTIONS=u.COMPLETE_WITHDRAW_ACTIONS;exports.CURRENCY_SYMBOL_MAP=u.CURRENCY_SYMBOL_MAP;exports.DAI_OPTIMISM=u.DAI_OPTIMISM;exports.DAI_POLYGON=u.DAI_POLYGON;exports.DEFAULT_DEPOSIT_METHOD=u.DEFAULT_DEPOSIT_METHOD;exports.DEFAULT_DEPOSIT_SLIPPAGE=u.DEFAULT_DEPOSIT_SLIPPAGE;exports.DEFAULT_DEPOSIT_SLIPPAGE_SCALE=u.DEFAULT_DEPOSIT_SLIPPAGE_SCALE;exports.DEFAULT_ERROR_MESSAGE=u.DEFAULT_ERROR_MESSAGE;exports.DEFAULT_LOCK_TIME=u.DEFAULT_LOCK_TIME;exports.DEFAULT_MAX_GAS_LIMIT=u.DEFAULT_MAX_GAS_LIMIT;exports.DEFAULT_MULTI_ASSET_WITHDRAW_METHOD=u.DEFAULT_MULTI_ASSET_WITHDRAW_METHOD;exports.DEFAULT_POLLING_INTERVAL=u.DEFAULT_POLLING_INTERVAL;exports.DEFAULT_PRECISION=u.DEFAULT_PRECISION;exports.DEFAULT_PROMISE_TIMEOUT_MS=u.DEFAULT_PROMISE_TIMEOUT_MS;exports.DEFAULT_SIMULATION_ERROR=u.DEFAULT_SIMULATION_ERROR;exports.DEFAULT_WITHDRAW_SLIPPAGE=u.DEFAULT_WITHDRAW_SLIPPAGE;exports.EMPTY_POOL_CONFIG=u.EMPTY_POOL_CONFIG;exports.EXTENDED_POLLING_INTERVAL=u.EXTENDED_POLLING_INTERVAL;exports.EasySwapperV2Abi=u.EasySwapperV2Abi;exports.GAS_ESTIMATION_ERROR=u.GAS_ESTIMATION_ERROR;exports.GAS_LIMIT_BUFFER_COEFF=u.GAS_LIMIT_BUFFER_COEFF;exports.GMX_MARKET_ASSETS=u.GMX_MARKET_ASSETS;exports.GMX_MARKET_ASSETS_MAP=u.GMX_MARKET_ASSETS_MAP;exports.LINK_ARBITRUM=u.LINK_ARBITRUM;exports.LINK_OPTIMISM=u.LINK_OPTIMISM;exports.LimitOrderAbi=u.LimitOrderAbi;exports.MANAGER_FEE_DENOMINATOR=u.MANAGER_FEE_DENOMINATOR;exports.MAX_GAS_LIMIT_MAP=u.MAX_GAS_LIMIT_MAP;exports.MULTI_ASSET_TOKEN=u.MULTI_ASSET_TOKEN;exports.MaxUint256=u.MaxUint256;exports.NATIVE_TOKEN_GAS_RESERVE_UNITS=u.NATIVE_TOKEN_GAS_RESERVE_UNITS;exports.PAXG_POLYGON=u.PAXG_POLYGON;exports.PYTH_API_LINK=u.PYTH_API_LINK;exports.PoolFactoryAbi=u.PoolFactoryAbi;exports.PoolLogicAbi=u.PoolLogicAbi;exports.PoolManagerLogicAbi=u.PoolManagerLogicAbi;exports.RETH_BASE=u.RETH_BASE;exports.RewardDistributionAbi=u.RewardDistributionAbi;exports.SETH_OPTIMISM=u.SETH_OPTIMISM;exports.SHORTEN_POLLING_INTERVAL=u.SHORTEN_POLLING_INTERVAL;exports.SIMULATION_TIMEOUT_ERROR=u.SIMULATION_TIMEOUT_ERROR;exports.SUSD_OPTIMISM=u.SUSD_OPTIMISM;exports.TBTC_ARBITRUM=u.TBTC_ARBITRUM;exports.TBTC_BASE=u.TBTC_BASE;exports.TBTC_OPTIMISM=u.TBTC_OPTIMISM;exports.TBTC_POLYGON=u.TBTC_POLYGON;exports.TRADING_LOG_EVENT_PARAM=u.TRADING_LOG_EVENT_PARAM;exports.TRADING_PANEL_LOG_EVENT=u.TRADING_PANEL_LOG_EVENT;exports.USDCBC_BASE=u.USDCBC_BASE;exports.USDC_ARBITRUM=u.USDC_ARBITRUM;exports.USDC_BASE=u.USDC_BASE;exports.USDC_HYPEREVM=u.USDC_HYPEREVM;exports.USDC_MAINNET=u.USDC_MAINNET;exports.USDC_OPTIMISM=u.USDC_OPTIMISM;exports.USDC_POLYGON=u.USDC_POLYGON;exports.USDT_ARBITRUM=u.USDT_ARBITRUM;exports.USDT_MAINNET=u.USDT_MAINNET;exports.USDT_OPTIMISM=u.USDT_OPTIMISM;exports.USDT_POLYGON=u.USDT_POLYGON;exports.WBNB_ARBITRUM=u.WBNB_ARBITRUM;exports.WBTC_ARBITRUM=u.WBTC_ARBITRUM;exports.WBTC_BY_CHAIN_ID=u.WBTC_BY_CHAIN_ID;exports.WBTC_MAINNET=u.WBTC_MAINNET;exports.WBTC_OPTIMISM=u.WBTC_OPTIMISM;exports.WBTC_POLYGON=u.WBTC_POLYGON;exports.WETH_ARBITRUM=u.WETH_ARBITRUM;exports.WETH_BASE=u.WETH_BASE;exports.WETH_BY_CHAIN_ID=u.WETH_BY_CHAIN_ID;exports.WETH_MAINNET=u.WETH_MAINNET;exports.WETH_OPTIMISM=u.WETH_OPTIMISM;exports.WETH_POLYGON=u.WETH_POLYGON;exports.WPOL_POLYGON=u.WPOL_POLYGON;exports.WSOL_ARBITRUM=u.WSOL_ARBITRUM;exports.WSTETH_ARBITRUM=u.WSTETH_ARBITRUM;exports.WSTETH_BASE=u.WSTETH_BASE;exports.WSTETH_OPTIMISM=u.WSTETH_OPTIMISM;exports.XAUT_MAINNET=u.XAUT_MAINNET;exports.contractsAbisMap=u.contractsAbisMap;exports.contractsAddressesMap=u.contractsAddressesMap;Object.defineProperty(exports,"useBlockNumber",{enumerable:!0,get:()=>_.useBlockNumber});Object.defineProperty(exports,"useConnect",{enumerable:!0,get:()=>_.useConnect});Object.defineProperty(exports,"useDisconnect",{enumerable:!0,get:()=>_.useDisconnect});Object.defineProperty(exports,"usePublicClient",{enumerable:!0,get:()=>_.usePublicClient});Object.defineProperty(exports,"useReadContract",{enumerable:!0,get:()=>_.useReadContract});Object.defineProperty(exports,"useReadContracts",{enumerable:!0,get:()=>_.useReadContracts});Object.defineProperty(exports,"useSendTransaction",{enumerable:!0,get:()=>_.useSendTransaction});Object.defineProperty(exports,"useWaitForTransactionReceipt",{enumerable:!0,get:()=>_.useWaitForTransactionReceipt});Object.defineProperty(exports,"useWalletClient",{enumerable:!0,get:()=>_.useWalletClient});Object.defineProperty(exports,"useWriteContract",{enumerable:!0,get:()=>_.useWriteContract});Object.defineProperty(exports,"decodeErrorResult",{enumerable:!0,get:()=>k.decodeErrorResult});Object.defineProperty(exports,"encodeFunctionData",{enumerable:!0,get:()=>k.encodeFunctionData});Object.defineProperty(exports,"erc20Abi",{enumerable:!0,get:()=>k.erc20Abi});Object.defineProperty(exports,"formatEther",{enumerable:!0,get:()=>k.formatEther});Object.defineProperty(exports,"formatUnits",{enumerable:!0,get:()=>k.formatUnits});Object.defineProperty(exports,"hexToString",{enumerable:!0,get:()=>k.hexToString});Object.defineProperty(exports,"trim",{enumerable:!0,get:()=>k.trim});Object.defineProperty(exports,"arbitrum",{enumerable:!0,get:()=>Z.arbitrum});Object.defineProperty(exports,"base",{enumerable:!0,get:()=>Z.base});Object.defineProperty(exports,"optimism",{enumerable:!0,get:()=>Z.optimism});Object.defineProperty(exports,"polygon",{enumerable:!0,get:()=>Z.polygon});exports.ConfigProvider=Vo;exports.EIP712_TYPES=Ta;exports.EstimationError=We;exports.GET_ALL_LIMIT_SELL_ORDER_IDS_FUNCTION_NAME=Sr;exports.LIMIT_BUY_MANAGER_ADDRESS_MAP=jr;exports.LIMIT_BUY_SLIPPAGE_PERCENT_DECIMALS=Rr;exports.LIMIT_SELL_ORDER_READ_FUNCTION_NAME=gn;exports.LimitBuyOrderModal=TE;exports.LimitBuyOverlay=Bi;exports.LimitSellOrderModal=fE;exports.OndoApiError=Et;exports.PERMIT2_ADDRESS=An;exports.TradingPanelProvider=bl;exports.TradingWidget=wE;exports.getErrorMessage=Fo;exports.getLimitSellOrderId=Ti;exports.isErrorWithMessage=$o;exports.throwOndoApiError=rn;exports.toErrorWithMessage=Uo;exports.useAccount=j;exports.useAddPoolConfig=Pl;exports.useAssetPrice=le;exports.useAvailableManagerFee=ca;exports.useBalance=mr;exports.useBrowserStorage=er;exports.useCheckWhitelist=ta;exports.useCompleteWithdrawSwapQuotes=Me;exports.useCompleteWithdrawTrackedAssets=ie;exports.useContractFunction=de;exports.useContractPoolComposition=na;exports.useContractReadErrorLogging=yr;exports.useContractReadsErrorLogging=wn;exports.useCustomDepositTokensPerChain=mo;exports.useDebounce=Br;exports.useDepositLockTime=Ga;exports.useDepositProjectedEarnings=Pa;exports.useDytmVaultData=pt;exports.useEasySwapperTrackedAssets=Oa;exports.useEffectiveAggregators=Ct;exports.useExchangeRate=Sa;exports.useFlatmoneyPointsUserBalances=qv;exports.useGasPrice=Wo;exports.useGetReferrerAddress=uo;exports.useHasSingleAssetWithdrawBlockers=Dr;exports.useInvalidateLimitSellOrderQuery=Ei;exports.useInvalidateOnBlock=Xt;exports.useInvalidatePoolContractData=sa;exports.useInvalidateTradingQueries=ut;exports.useIsCompleteWithdrawStep=Ye;exports.useIsDepositBlocked=$v;exports.useIsDepositTradingPanelType=Le;exports.useIsDhedgeVaultConnected=Pt;exports.useIsInsufficientBalance=Nt;exports.useIsPoolAddress=Al;exports.useIsTradingEnabled=ya;exports.useIsWalletConnected=Dl;exports.useLegacyReferralProgram=ob;exports.useManagerLogicAddress=Or;exports.useNetwork=De;exports.useOnSimulateTransaction=co;exports.useOnTokenSelector=lo;exports.useOnTradingTypeChange=Gr;exports.useOnTransactionError=ao;exports.useOnTransactionEstimationError=sn;exports.useOnTransactionSuccess=io;exports.usePoolComposition=Re;exports.usePoolCompositionWithFraction=ra;exports.usePoolDynamic=ce;exports.usePoolFees=bn;exports.usePoolManagerDynamic=Dt;exports.usePoolManagerLogicData=Lr;exports.usePoolManagerStatic=Lt;exports.usePoolStatic=Ot;exports.usePoolTokenPrice=ue;exports.useProjectedEarningsCore=Na;exports.useRawAssetPrice=Mr;exports.useReceiveTokenInput=B;exports.useReferralAddress=ja;exports.useSendTokenInput=R;exports.useSetPoolAddress=xl;exports.useSetTradingType=Cl;exports.useStaticCallQuery=gf;exports.useTokenAllowance=nt;exports.useTradingPanelActions=W;exports.useTradingPanelLogger=ze;exports.useTradingPanelModal=Q;exports.useTradingPanelPoolAddress=so;exports.useTradingPanelPoolConfig=y;exports.useTradingPanelPoolConfigs=tt;exports.useTradingPanelPoolFallbackData=Ge;exports.useTradingPanelSettings=X;exports.useTradingPanelState=te;exports.useTradingPanelTransactions=ne;exports.useTradingPanelType=ve;exports.useTradingResultHandling=xa;exports.useTradingSettleHandler=Ce;exports.useUpdateCustomDepositTokensPerChain=Ol;exports.useUpdatePoolConfig=Nl;exports.useUpdatePoolFallbackData=oo;exports.useUpdateReceiveTokenInput=Sl;exports.useUpdateSendTokenInput=yl;exports.useUpdateTradingModal=_l;exports.useUpdateTradingSettings=El;exports.useUserBalancesDynamic=ea;exports.useUserLimitSellOrder=gt;exports.useUserTokenBalance=Ae;exports.useUserTokenSpendableBalance=Tn;exports.useUserVaultBalance=la;exports.useUserVaultsBalances=ia;exports.useVaultContractData=Uv;exports.useVaultDepositTokens=wt;exports.useVaultSupplyCap=da;exports.useVaultVestedPoints=oa;exports.useWithdrawAction=_t;
|
|
1
|
+
"use strict";var zi=Object.create;var On=Object.defineProperty;var Hi=Object.getOwnPropertyDescriptor;var Vi=Object.getOwnPropertyNames;var qi=Object.getPrototypeOf,Yi=Object.prototype.hasOwnProperty;var Ki=(e,t,n)=>t in e?On(e,t,{enumerable:!0,configurable:!0,writable:!0,value:n}):e[t]=n;var Qi=(e,t,n,r)=>{if(t&&typeof t=="object"||typeof t=="function")for(let s of Vi(t))!Yi.call(e,s)&&s!==n&&On(e,s,{get:()=>t[s],enumerable:!(r=Hi(t,s))||r.enumerable});return e};var Ln=(e,t,n)=>(n=e!=null?zi(qi(e)):{},Qi(t||!e||!e.__esModule?On(n,"default",{value:e,enumerable:!0}):n,e));var Pe=(e,t,n)=>Ki(e,typeof t!="symbol"?t+"":t,n);Object.defineProperty(exports,Symbol.toStringTag,{value:"Module"});const o=require("react/jsx-runtime"),F=require("@headlessui/react"),oe=require("@heroicons/react/24/outline"),N=require("classnames"),Zi=require("react-popper-tooltip"),m=require("react"),ye=require("@heroicons/react/24/solid"),Vn=require("@heroicons/react/16/solid"),w=require("./contract-error-log-C66ELh8m.cjs"),u=require("./gmx-BTdr6Yvr.cjs"),zs=require("ts-custom-error"),Xi=require("wagmi/connectors"),_=require("wagmi"),k=require("viem"),I=require("bignumber.js"),Z=require("wagmi/chains"),fe=require("@tanstack/react-query"),Vt=require("date-fns"),Hs=require("wagmi/query"),pe=require("./geoblocking-peuNwHMJ.cjs"),Je=require("@heroicons/react/20/solid"),Ji=({tooltipContent:e,children:t,placement:n="top",trigger:r="hover",interactive:s=!0,delayHide:a=50})=>{const{getTooltipProps:i,setTooltipRef:l,setTriggerRef:c,visible:d}=Zi.usePopperTooltip({interactive:s,delayHide:a,offset:[0,12],placement:n,trigger:r});return o.jsxs(o.Fragment,{children:[o.jsx("span",{ref:c,children:t}),d&&o.jsx("span",{ref:l,...i({className:"tooltip-container dtw-z-50 dtw-bg-[color:var(--panel-tooltip-bg)] dtw-text-[color:var(--panel-tooltip-color)] dtw-px-2 dtw-py-1.5 dtw-rounded-md dtw-text-xs dtw-text-center dtw-block dtw-whitespace-normal"}),children:e})]})},sr=({text:e,...t})=>o.jsx(Ji,{...t,tooltipContent:o.jsx("span",{className:"dtw-inline-block dtw-max-w-xs",children:e})}),qt=({text:e,placement:t,iconClassName:n="dtw-text-[color:var(--panel-secondary-content-color)]",Icon:r=oe.QuestionMarkCircleIcon})=>o.jsx(sr,{text:e,placement:t,children:o.jsx(r,{className:N("dtw-h-4 dtw-w-4 dtw-cursor-help hover:dtw-text-[color:var(--panel-icon-color-hover))]",n)})}),xt=({label:e,tooltipText:t,children:n})=>o.jsxs("div",{children:[o.jsxs("div",{className:"dtw-flex dtw-items-center dtw-gap-x-1 dtw-text-[length:var(--panel-popup-font-size)] dtw-text-[color:var(--panel-popup-content-color,var(--panel-secondary-content-color))]",children:[o.jsx("span",{children:e}),o.jsx(qt,{text:t,placement:"top"})]}),o.jsx("div",{className:"dtw-mt-1.5",children:n})]}),Vs={depositSlippageWarning:"Excludes entry fee.",withdrawSlippageWarning:"Slippage occurs in both single asset withdrawals and withdrawals from vaults with Aave debt positions. However, for vaults with Aave debt, slippage is only applied to the portion of the withdrawal that corresponds to the Aave position.",minSlippageWarning:"Flexible min slippage value that is likely enough to process the transaction.",highSlippageWarning:"We recommend using another asset to trade with lower slippage.",recommendedMinSlippage:"Recommended min slippage",projectedDailyEarningsTooltip:"Projected daily earnings are based on the current APY and may differ from actual earnings.",dailyEarnings:"Daily earnings",projectedYearlyEarningsTooltip:"Projected yearly earnings are based on the current APY and may differ from actual earnings.",yearlyEarnings:"Yearly earnings",fullReceiveDetails:"See full details influencing what you will receive.",tradeDetails:"Trade details",maxSlippage:"Max slippage",minReceiveAmount:"You will receive no less than this amount.",minReceived:"Minimum received",estimatedMultiAssetFractions:"Pro-rated share of vault assets",infinite:"Infinite approval",tokenAllowance:"Token allowance",entryFee:"Entry fee",exitFee:"Exit fee",entryFeeExplanation:"Entry fee is charged in vault's tokens.",exitFeeExplanation:"Exit fee is charged in vault's tokens.",minDepositUsd:"Minimum deposit in USD.",minDeposit:"Minimum deposit",tokensLockTime:"Purchased tokens will have a {lockTime} lock.",slippageTolerance:"Slippage tolerance",reduceLockupTime:"Reduce lockup time",toggleTokenApprovalAmount:"Toggle between exact and infinite token approval.",auto:"Auto",reduceLockup:"Reduce lockup to {customLockTime} by paying 0.1% fee",max:"Max",allAssets:"All Assets",all:"All",buy:"Buy",sell:"Sell",sellNow:"Sell Now",confirmInWallet:"Please confirm in wallet",pending:"Pending...",approve:"Approve",connectWallet:"Connect Wallet",minimumPurchase:"Minimum purchase is {value}",poolIsInactive:"{poolSymbol} token is no longer active. Please withdraw from them.",poolDepositsAreMaintenance:"{poolSymbol} token is under maintenance. Deposits are temporarily blocked.",exceedsDepositCapacity:"Deposit amount exceeds available {poolSymbol} deposit capacity.",poolWithdrawalsAreMaintenance:"{poolSymbol} token is under maintenance. Withdrawals are temporarily blocked.",poolIsPrivate:"This vault is currently private",confirmMaxSlippage:"Confirm {slippagePercentage}% max slippage",withdrawalLiquidityDisabled:"Intended withdraw value is greater than available liquidity ({value})",withdrawCooldown:"You can sell your {tokenSymbol} tokens in {cooldownEndTime}",termsOfUse:"Terms Of Use",termOfUseDepositListTitle:"Please know the following before depositing",termOfUseDepositAssetSlippage:"When exiting, investors receive single asset or the underlying vault assets. Withdraw slippage can be customized in withdraw settings",termOfUseDepositBugs:"There may be interface bugs on the platform",termOfUseDepositDowntime:"There may be interface downtime (planned and unplanned)",termOfUseDepositAuditRisk:"Smart contracts are audited but a risk is still present",termOfUseDepositAccept:"Accept & Deposit",back:"Back",done:"Done",termOfUseWithdrawAcceptLabel:"I understand and accept the withdraw terms",termOfUseWithdrawPoint1:"Withdrawal requests are intended to settle in USDC. In rare cases where market conditions or high slippage prevent a USDC swap, the order may be settled in the underlying tokens of the respective vault.",termOfUseWithdrawPoint2:"Revoking token approval after placing an order will prevent the order from being executed.",highSlippage:"High Slippage Alert",responsibleHighSlippage:"By proceeding with this trade, you acknowledge and accept the possibility of experiencing high slippage, resulting in a potential difference between the expected and executed price.",highSlippageListTitle:"Please consider the following before confirming",highSlippageQuoteDiff:"Be aware that the final amount of assets you receive may be different from the initially quoted value.",highSlippageRisk:"Ensure that you understand the risks associated with high slippage and are comfortable proceeding with the trade.",confirm:"Confirm",selectToken:"Select token",sendingOrderToWallet:"Sending order to your wallet",settingUpTx:"Setting up transaction",miningTx:"Processing",approveSpending:"Approve spending",pay:"Pay",multiAssetFractions:"pro-rated share of vault underlying assets",swappableAssets:"swappable assets",explorer:"Explorer",as:"As",switchNetwork:"Switch Network",depositAction:"Buy Now",withdrawAction:"Sell Now",unrollAction:"Unroll",unrollAndClaimAction:"Claim",swapAction:"Swap",claimAction:"Claim Without Swap",claimLabel:"Claim Assets",createLimitSellOrder:"Stop order set",swapAndClaimTo:"Swap and claim assets to",orderingLabel:"Ordering",paidLabel:"Paid",soldLabel:"Sold",receivedLabel:"Received",priceLabel:"Price",transactionLabel:"Transaction",limitOrderWithdrawDescription:"You are about to create a withdrawal request. Your vault tokens will be withdrawn within a few minutes.",total:"Total:",showAll:"Show all",hide:"Hide",refreshSwapQuoteTooltip:"Refresh swap quote",tryAgain:"Try again",proceedWithNextStep:"Please proceed with the next step.",aggregatorsLabel:"Swap source",aggregatorsTooltip:"Choose which aggregators to use for your trades.",openNotificationsSettingsLabel:"Enable alerts",addToWallet:"add to wallet",openLimitOrderAfterBuySwitchLabel:"Add Stop Order",stopOrder:"Schedule sell",limitBuy:"Schedule Buy",rate:"Rate",exchangeRate:"Exchange rate",cooldown:"Cooldown",delete:"Delete",withdrawalRequest:"Withdrawal request",pendingWithdrawalRequest:"Pending withdrawal request",deleteWithdrawalRequest:"Delete withdrawal request",insufficientBalance:"Insufficient Balance",expectToReceiveUsdcSoon:"Expect to receive your USDC over the next few minutes",estimated:"estimated",cancel:"Cancel",approveTokensForWithdrawal:"Approve tokens for withdrawal",unrollAssetsToPrepare:"Unroll assets to prepare sell",unrollAndClaimAssets:"Unroll and claim assets",swapToCompleteSell:"Swap to complete sell",success:"Success",approveDepositStep:"1/2 Approve Buy",depositNowStep:"2/2 Buy Now",updateOndoPricesStep:"Refresh Ondo prices",updateOndoPricesHint:"After this transaction is confirmed, the Deposit transaction will be sent to your wallet.",skipSwapAndClaimSymbols:"Skip swap and claim {symbols}",hyperEvmWarningTitle:"Withdrawal Warning",hyperEvmWarningDeposit:"You are depositing into a Hyperliquid managed vault.",hyperEvmWarningWithdraw:"To withdraw, the manager must make withdrawal liquidity available. In the case where the manager does not, you may be unable to withdraw.",hyperEvmWarningTrust:"Only deposit with managers you trust.",hyperEvmUnderstandRisks:"I understand the risks"},qs=m.createContext(Vs),el=({children:e,config:t})=>{const n=m.useMemo(()=>({...Vs,...t}),[t]);return o.jsx(qs.Provider,{value:n,children:e})},E=()=>{const e=m.useContext(qs);if(!e)throw new Error("TranslationContext is used out of Provider");return e},tl={deposit:"buy",withdraw:"sell"},nl=({tradingType:e})=>{const n=E()[tl[e]];return o.jsx(F.Tab,{className:({selected:r})=>N("dtw-relative dtw-text-[length:var(--panel-tab-font-size,var(--panel-font-size-sm))] dtw-px-[var(--panel-tab-px)] dtw-py-[var(--panel-tab-py)] dtw-font-[var(--panel-tab-font-weight,var(--panel-font-weight-bold))] !dtw-leading-[var(--panel-tab-line-height,var(--panel-line-height))] dtw-outline-0",{"!dtw-text-[color:var(--panel-tab-select-content-color,var(--panel-content-color))]":r,"!dtw-text-[color:var(--panel-tab-content-color,var(--panel-neutral-content-color))] hover:dtw-text-[color:var(--panel-tab-hover-content-color,var(--panel-content-hover-color))]":!r}),children:({selected:r})=>o.jsxs(o.Fragment,{children:[o.jsx("span",{children:n}),r?o.jsx("div",{className:"dtw-flex dtw-items-center dtw-justify-center dtw-absolute dtw-bottom-0 dtw-left-0 dtw-right-0 dtw-h-full dtw-rounded-[var(--panel-radius-secondary)] dtw-bg-[var(--panel-tab-bg,var(--panel-neutral-color))] dtw-shadow-md dtw-pointer-events-none",children:o.jsx("span",{children:n})}):null]})})},H={ERROR:"error",WARNING:"warning",SUCCESS:"success",DEFAULT:"default",CUSTOM:"custom"},G={TERMS_OF_USE:"TERMS_OF_USE",HIGH_SLIPPAGE:"HIGH_SLIPPAGE",TOKEN_SELECT:"TOKEN_SELECT",POOL_SELECT:"POOL_SELECT",TRADING:"TRADING",ERROR_NOTIFICATION:"ERROR_NOTIFICATION",LIMIT_SELLS:"LIMIT_SELLS",LIMIT_BUYS:"LIMIT_BUYS",LIMIT_ORDER_WITHDRAW:"LIMIT_ORDER_WITHDRAW",WITHDRAW_STEPPER:"WITHDRAW_STEPPER",HYPEREVM_WARNING:"HYPEREVM_WARNING"},rl={[H.DEFAULT]:oe.QuestionMarkCircleIcon,[H.ERROR]:oe.ExclamationCircleIcon,[H.SUCCESS]:oe.CheckCircleIcon,[H.WARNING]:oe.ExclamationCircleIcon,[H.CUSTOM]:oe.QuestionMarkCircleIcon},Dn=({tooltipText:e,value:t,label:n,children:r,type:s=H.DEFAULT,className:a,emphasised:i=!1})=>o.jsxs("div",{className:N("dtw-flex dtw-grow dtw-items-center dtw-font-[var(--panel-meta-font-weight,var(--panel-font-weight-light))] dtw-gap-x-1",{"dtw-text-[length:var(--panel-meta-font-size)] dtw-leading-[var(--panel-meta-line-height)] dtw-text-[color:var(--panel-secondary-content-color)]":!i,"dtw-text-[length:var(--panel-meta-emphasised-font-size)] dtw-leading-[var(--panel-meta-emphasised-line-height)] dtw-text-[color:var(--panel-content-color)]":i},a),children:[o.jsxs("div",{className:"dtw-flex dtw-grow dtw-items-start dtw-justify-between",children:[o.jsxs("div",{className:"dtw-flex dtw-items-center dtw-gap-x-1",children:[o.jsx(qt,{text:e,placement:"top",Icon:rl[s],iconClassName:N({"dtw-text-[color:var(--panel-error-content-color)]":s===H.ERROR,"dtw-text-[color:var(--panel-warning-content-color)]":s===H.WARNING})}),o.jsx("p",{className:N({"dtw-text-[color:var(--panel-error-content-color)]":s===H.ERROR,"dtw-text-[color:var(--panel-warning-content-color)]":s===H.WARNING}),children:n})]}),o.jsx("div",{className:N({"dtw-text-[color:var(--panel-error-content-color)]":s===H.ERROR,"dtw-text-[color:var(--panel-warning-content-color)]":s===H.WARNING}),children:t})]}),r]}),or=({children:e,staticItems:t,collapseItems:n,themeType:r=H.DEFAULT,buttonItemChildren:s})=>{const a=E();return o.jsx("div",{className:"dtw-w-full dtw-flex dtw-flex-col dtw-gap-1",children:o.jsx(F.Disclosure,{children:({open:i})=>o.jsxs(o.Fragment,{children:[t?.map(l=>o.jsx(Dn,{...l},l.label)),o.jsx(F.DisclosureButton,{className:"dtw-p-0 dtw-flex dtw-w-full dtw-justify-between dtw-rounded-[var(--panel-radius-secondary,var(--panel-radius))] hover:dtw-bg-[var(--panel-meta-hover-bg,var(--panel-neutral-color))] focus:dtw-outline-none",children:o.jsxs(Dn,{tooltipText:a.fullReceiveDetails,label:a.tradeDetails,value:"",type:r,emphasised:!0,children:[s,o.jsx(ye.ChevronDownIcon,{className:N("dtw-text-[color:var(--panel-icon-color,var(--panel-content-color))] !dtw-h-[var(--panel-input-token-icon-size,var(--panel-icon-size))] !dtw-w-[var(--panel-input-token-icon-size,var(--panel-icon-size))] sm:dtw-w-[var(--panel-input-token-icon-size-sm,var(--panel-icon-size-sm))] sm:dtw-h-[var(--panel-input-token-icon-size-sm,var(--panel-icon-size-sm))]",{"dtw-rotate-180 dtw-transform":i})})]})}),o.jsx(F.Transition,{show:i,children:o.jsxs(F.DisclosurePanel,{className:"dtw-transition dtw-transform dtw-duration-100 dtw-ease-out data-[closed]:opacity-0 data-[closed]:-dtw-translate-y-2.5 dtw-static dtw-text-[length:var(--panel-label-font-size,var(--panel-font-size-xs))] dtw-leading-[var(--panel-label-line-height,var(--panel-line-height-xs))] dtw-text-[color:var(--panel-secondary-content-color)] dtw-font-[var(--panel-meta-font-weight,var(--panel-font-weight-light))] dtw-rounded-[var(--panel-radius-secondary,var(--panel-radius))] dtw-flex dtw-flex-col dtw-gap-1",children:[n?.map(l=>o.jsx(Dn,{...l},l.label)),e]})})]})})})},Se=({className:e})=>o.jsx("svg",{className:N("dtw-animate-spin dtw-stroke-[color:var(--panel-accent-content-color)]",e),viewBox:"0 0 24 24",fill:"none",xmlns:"http://www.w3.org/2000/svg",children:o.jsx("path",{d:"M12 2C6.47715 2 2 6.47715 2 12C2 17.5228 6.47715 22 12 22C17.5228 22 22 17.5228 22 12C22 9.27455 20.9097 6.80375 19.1414 5",strokeWidth:"2.5",strokeLinecap:"round",strokeLinejoin:"round"})}),sl=({children:e})=>o.jsx("div",{className:"dtw-flex dtw-flex-col dtw-gap-[var(--panel-inputs-group-gap,var(--panel-gap))] dtw-px-[var(--panel-inputs-group-px)]",children:e}),ol=({children:e})=>o.jsx("div",{className:"dtw-flex dtw-flex-col dtw-gap-[var(--panel-meta-group-gap,var(--panel-gap))] dtw-px-[var(--panel-meta-group-px)] dtw-h-full dtw-relative",children:e}),Yt=({Icon:e,onClick:t,className:n="dtw-h-7 dtw-w-7",containerClassName:r,disabled:s})=>o.jsx("div",{className:N("dtw-group dtw-w-fit dtw-cursor-pointer dtw-self-end dtw-rounded-lg dtw-p-1 hover:dtw-opacity-80",r,{"dtw-pointer-events-none":s}),onClick:t,children:o.jsx(e,{className:N("dtw-text-[color:var(--panel-icon-color)] group-hover:dtw-text-[color:var(--panel-icon-color-hover))]",n)})}),zr="ondo",al="https://content-firebaseappcheck.googleapis.com/v1",il=6e4,Ys=5e3;let me,Hr,Qe,Tt,bt;const ll=e=>{const t=e?JSON.stringify(e):void 0;t!==Hr&&(Hr=t,me=e,Qe=void 0,Tt=void 0,bt=void 0)},Ks=()=>me,cl=(e,t)=>Promise.race([e,new Promise((n,r)=>setTimeout(()=>r(new Error(t)),Ys))]),Qs=async()=>{if(Qe)return Qe;if(!me)return;const{getApp:e,initializeApp:t}=await import("firebase/app"),{firebase:n}=me;try{Qe=t({apiKey:n.apiKey,projectId:n.projectId,appId:n.appId,authDomain:n.authDomain},zr)}catch{try{Qe=e(zr)}catch{return}}return Qe},dl=async()=>{if(bt&&bt.expiresAtMs>Date.now()+il)return bt.value;if(!me)return"";const{firebase:e,recaptcha:t}=me,n=t.debugToken;if(!e.apiKey||!e.projectId||!e.appId||!n)return"";const r=`${al}/projects/${e.projectId}/apps/${e.appId}:exchangeDebugToken?key=${e.apiKey}`,{token:s,ttl:a}=await w.fetchRequest({url:r,method:"POST",body:{debug_token:n},timeoutMs:Ys}),i=/^([\d.]+)s$/.exec(a??""),l=i?Number(i[1])*1e3:30*60*1e3;return bt={value:s,expiresAtMs:Date.now()+l},s},Zs=async()=>{if(Tt)return Tt;if(!w.clientSide||!me)return;const e=me.recaptcha.siteKey;if(!e){console.warn("[OndoAppCheck] recaptcha.siteKey not set — skipping App Check init");return}const t=await Qs();if(!t)return;const{ReCaptchaEnterpriseProvider:n,initializeAppCheck:r}=await import("firebase/app-check");try{Tt=r(t,{provider:new n(e),isTokenAutoRefreshEnabled:!0})}catch(s){console.warn("[OndoAppCheck] initializeAppCheck failed:",s);return}return Tt},ul=()=>{w.clientSide&&me&&(me.recaptcha.debugToken||Zs())},pl=async()=>{if(!w.clientSide||!me)return"";try{if(me.recaptcha.debugToken)return await Qs()?await dl():"";const t=await Zs();if(!t)return"";const{getToken:n}=await import("firebase/app-check");return(await cl(n(t,!1),"Ondo App Check token timeout")).token}catch(e){return console.warn("[OndoAppCheck] Failed to get token:",e),""}},ml=[{inputs:[{internalType:"address",name:"_pool",type:"address"},{internalType:"uint256",name:"_poolTokenAmount",type:"uint256"},{internalType:"uint256",name:"_slippageTolerance",type:"uint256"}],name:"calculateSwapDataParams",outputs:[{components:[{components:[{internalType:"address",name:"asset",type:"address"},{internalType:"uint256",name:"amount",type:"uint256"}],internalType:"struct ISwapDataConsumingGuard.AssetStructure[]",name:"srcData",type:"tuple[]"},{components:[{internalType:"address",name:"asset",type:"address"},{internalType:"uint256",name:"amount",type:"uint256"}],internalType:"struct ISwapDataConsumingGuard.AssetStructure",name:"dstData",type:"tuple"}],internalType:"struct ISwapDataConsumingGuard.SwapDataParams",name:"swapDataParams",type:"tuple"}],stateMutability:"nonpayable",type:"function"}];class We extends zs.CustomError{constructor({message:n=u.DEFAULT_ERROR_MESSAGE,link:r,slippage:s,txArgs:a,account:i,onBypass:l,functionName:c}){super(n);Pe(this,"txArgs");Pe(this,"link");Pe(this,"account");Pe(this,"slippage");Pe(this,"functionName");Pe(this,"onBypass");this.link=r,this.txArgs=a,this.account=i,this.slippage=s,this.functionName=c,this.onBypass=l}}class Et extends zs.CustomError{constructor({message:n,code:r}){super(n);Pe(this,"code");this.code=r}}const wl=async e=>{const n=(e instanceof Response?await e.json().catch(()=>null):w.parseFetchErrorBody(e))?.message;return typeof n=="string"&&n.trim().length>0?n:void 0},rn=async(e,t)=>{const n=await wl(e)??t;throw new Et({message:n})},ar=async()=>{const e=await pl();return e?{"x-firebase-appcheck":e}:{}},ir=()=>{const e=Ks();if(!e)throw new Error("Ondo integration is not configured");return e},hl=async({chainId:e,addresses:t})=>{const{api:n}=ir(),r=await ar();try{return await w.fetchRequest({url:n.priceUpdateUrl,method:"POST",headers:r,body:{chainId:String(e),addresses:t}})}catch(s){return rn(s,"Ondo price update request failed")}},gl=async({chainId:e,addresses:t})=>{const{api:n}=ir();if(!n.getPricesUrl)throw new Error("Ondo getPrices endpoint is not configured");const r=await ar();try{return await w.fetchRequest({url:n.getPricesUrl,method:"POST",headers:r,body:{chainId:String(e),addresses:t},timeoutMs:u.ONDO_PRICES_FETCH_TIMEOUT_MS})}catch(s){return rn(s,"Ondo get-prices request failed")}},Xs=async({chainId:e,items:t})=>{const{api:n}=ir(),r=await ar(),s=t.map(({address:a,tokenAmount:i})=>({chainId:String(e),address:a,side:"sell",tokenAmount:i}));try{return await w.fetchRequest({url:n.createAttestationsUrl,method:"POST",headers:r,body:s})}catch(a){return rn(a,"Ondo create-attestations request failed")}},j=()=>{const{address:e,status:t,connector:n,isConnected:r}=_.useAccount();return{account:r?e:void 0,status:t,connector:n,providerName:n?.name,isConnected:r}};function ee(){}const Vr={address:u.AddressZero,symbol:"",decimals:u.DEFAULT_PRECISION,value:""},Js=e=>{const t=e?.poolAddress??u.AddressZero,n={address:t,symbol:e?.poolConfigMap?.[t]?.symbol??"",decimals:u.DEFAULT_PRECISION,value:""},r=e?.type??"deposit",s=r==="deposit"?Vr:n,a=r==="deposit"?n:Vr;return{poolAddress:t,poolConfigMap:{...e?.poolConfigMap},settings:{slippage:"auto",isInfiniteAllowance:!1,isMultiAssetWithdrawalEnabled:!0,isMaxSlippageLoading:!1,availableAggregators:[],...e?.settings,selectedAggregators:e?.settings?.selectedAggregators??e?.settings?.availableAggregators??[]},type:r,input:{sendToken:{...s,...e?.input?.sendToken},receiveToken:{...a,...e?.input?.receiveToken}},modal:{isOpen:!1,status:"None",receiveTokens:null,sendTokens:null,...e?.modal},withdrawAction:null,transactions:e?.transactions??[],poolFallbackData:{address:u.AddressZero,...e?.poolFallbackData},customDepositTokensPerChain:e?.customDepositTokensPerChain,defaultChainId:e?.defaultChainId,swapQuoteRefreshTriggered:null}},eo=m.createContext({...Js({poolAddress:u.AddressZero,poolConfigMap:{}})}),to=m.createContext({setPoolAddress:ee,setTradingType:ee,updateSendTokenInput:ee,updateReceiveTokenInput:ee,updateTradingSettings:ee,updateTradingModal:ee,updateWithdrawAction:ee,updateTransactions:ee,updatePoolFallbackData:ee,updateCustomDepositTokensPerChain:ee,onTradingSettleError:ee,onTransactionError:ee,onTransactionSuccess:ee,onTransactionEstimationError:ee,onTokenSelector:ee,onLog:ee,onSimulateTransaction:()=>Promise.resolve(null),getSwapQuotes:()=>Promise.resolve(null),updatePoolConfig:ee,addPoolConfig:ee,setSwapQuoteRefreshTriggered:ee,getReferrerAddress:void 0}),fl=e=>(t,n)=>{switch(n.type){case"SET_POOL_ADDRESS":return{...t,poolAddress:n.payload};case"SET_TRADING_TYPE":return{...t,type:n.payload};case"UPDATE_SEND_TOKEN_INPUT":return{...t,input:{...t.input,sendToken:{...t.input.sendToken,...n.payload}}};case"UPDATE_RECEIVE_TOKEN_INPUT":return{...t,input:{...t.input,receiveToken:{...t.input.receiveToken,...n.payload}}};case"UPDATE_TRADING_SETTINGS":return{...t,settings:{...t.settings,...n.payload}};case"UPDATE_TRADING_MODAL":return{...t,modal:{...t.modal,...n.payload}};case"UPDATE_WITHDRAW_ACTION":return{...t,withdrawAction:n.payload===null?null:{sendToken:{symbol:"",...t.withdrawAction?.sendToken,...n.payload.sendToken},receiveTokens:n.payload.receiveTokens??t.withdrawAction?.receiveTokens??[]}};case"UPDATE_POOL_FALLBACK_DATA":return{...t,poolFallbackData:n.payload};case"UPDATE_POOL_CONFIG":return{...t,poolConfigMap:{...t.poolConfigMap,...Object.entries(n.payload).filter(([r])=>!!t.poolConfigMap?.[r]).reduce((r,[s,a])=>({...r,[s]:{...t.poolConfigMap?.[s],...a}}),t.poolConfigMap)}};case"UPDATE_CUSTOM_DEPOSIT_TOKENS_PER_CHAIN":return{...t,customDepositTokensPerChain:{...t.customDepositTokensPerChain??{},...n.payload}};case"SET_SWAP_QUOTE_REFRESH_TRIGGERED":return{...t,swapQuoteRefreshTriggered:n.payload};case"ADD_POOL_CONFIG":return{...t,poolConfigMap:{...t.poolConfigMap,[n.payload.address]:n.payload}};case"UPDATE_TRADING_TRANSACTIONS":switch(n.payload.type){case"remove":const r=t.transactions.find(a=>a.txHash===n.payload.txHash);return n.payload.status==="success"&&r&&w.logTransactionByActionType({action:r.action,log:e,symbol:r.symbol,chainId:r.chainId,vaultAddress:t.poolAddress}),{...t,transactions:n.payload.txHash?t.transactions.filter(a=>a.txHash!==n.payload.txHash):t.transactions.slice(0,-1)};case"add":return{...t,transactions:[{action:n.payload.action,chainId:n.payload.chainId,txHash:n.payload.txHash,symbol:n.payload.symbol},...t.transactions]};case"update":const s=Math.max(t.transactions.findIndex(({txHash:a})=>a===n.payload.txHash),0);return{...t,transactions:t.transactions.map((a,i)=>i===s?{...a,...n.payload}:a)}}break;default:return t}},vl=({children:e,initialState:t,actions:{onSetPoolAddress:n,onUpdateSendTokenInput:r,onUpdateReceiveTokenInput:s,onUpdateTradingSettings:a,onSetTradingType:i,onUpdateTradingModal:l,onUpdateTransactions:c,onTransactionError:d,onTransactionSuccess:p,onTransactionEstimationError:g,onTokenSelector:h,onLog:f,onSimulateTransaction:v,onTradingSettleError:T,getSwapQuotes:b,getReferrerAddress:A}})=>{const[x,S]=m.useReducer(fl(f),Js(t)),L=m.useCallback(D=>{S({type:"SET_POOL_ADDRESS",payload:D}),n?.(D)},[n]),O=m.useCallback(D=>{S({type:"UPDATE_SEND_TOKEN_INPUT",payload:D}),r?.(D)},[r]),M=m.useCallback(D=>{S({type:"UPDATE_RECEIVE_TOKEN_INPUT",payload:D}),s?.(D)},[s]),P=m.useCallback(D=>{S({type:"UPDATE_TRADING_SETTINGS",payload:D}),a?.(D)},[a]),U=m.useCallback(D=>{S({type:"SET_TRADING_TYPE",payload:D}),i?.(D)},[i]),J=m.useCallback(D=>{S({type:"UPDATE_TRADING_MODAL",payload:D}),l?.(D)},[l]),Y=m.useCallback(D=>{S({type:"UPDATE_WITHDRAW_ACTION",payload:D})},[]),re=m.useCallback(D=>{S({type:"UPDATE_TRADING_TRANSACTIONS",payload:D}),c?.(D)},[c]),ge=m.useCallback(D=>{S({type:"UPDATE_POOL_FALLBACK_DATA",payload:D})},[]),Be=m.useCallback(D=>{S({type:"UPDATE_CUSTOM_DEPOSIT_TOKENS_PER_CHAIN",payload:D})},[]),ft=m.useCallback(D=>{S({type:"UPDATE_POOL_CONFIG",payload:D})},[]),Nn=m.useCallback(D=>{S({type:"ADD_POOL_CONFIG",payload:D})},[]),Pn=m.useCallback(D=>{S({type:"SET_SWAP_QUOTE_REFRESH_TRIGGERED",payload:D})},[]),se=m.useMemo(()=>({setPoolAddress:L,setTradingType:U,updateTradingSettings:P,updateSendTokenInput:O,updateReceiveTokenInput:M,updateTradingModal:J,updateWithdrawAction:Y,updateTransactions:re,updatePoolFallbackData:ge,updateCustomDepositTokensPerChain:Be,onTransactionError:d,onTransactionSuccess:p,onTransactionEstimationError:g,onTokenSelector:h,onLog:f,onSimulateTransaction:v,onTradingSettleError:T,getSwapQuotes:b,updatePoolConfig:ft,addPoolConfig:Nn,setSwapQuoteRefreshTriggered:Pn,getReferrerAddress:A}),[L,U,P,O,M,J,Y,re,ge,Be,d,p,g,h,f,v,T,b,ft,Nn,Pn,A]);return o.jsx(to.Provider,{value:se,children:o.jsx(eo.Provider,{value:x,children:e})})},te=()=>m.useContext(eo),W=()=>m.useContext(to),no=()=>[te().poolAddress,W().setPoolAddress],y=()=>{const{poolAddress:e,poolConfigMap:t}=te();return t[e]??u.EMPTY_POOL_CONFIG},tt=()=>{const{poolConfigMap:e}=te();return m.useMemo(()=>Object.values(e),[e])},Tl=e=>{const t=tt();return m.useMemo(()=>t.some(n=>n.address===e),[t,e])},Ge=()=>{const{poolFallbackData:e,poolAddress:t}=te(),n=ro();return[e.address===t?e:{address:t},n]},Ct=()=>{const{settings:{availableAggregators:e,selectedAggregators:t,aggregatorLimitPerChain:n}}=te(),{chainId:r}=y();return m.useMemo(()=>{const s=n?.[r];return s?.length?{effectiveAvailableAggregators:e.filter(a=>s.includes(a)),effectiveSelectedAggregators:t.filter(a=>s.includes(a))}:{effectiveAvailableAggregators:e,effectiveSelectedAggregators:t}},[r,e,t,n])},bl=()=>W().setPoolAddress,Al=()=>W().updateSendTokenInput,xl=()=>W().updateReceiveTokenInput,yl=()=>W().updateTradingSettings,Sl=()=>W().setTradingType,El=()=>W().updateTradingModal,ro=()=>W().updatePoolFallbackData,so=()=>W().onTransactionError,Cl=()=>W().onTradingSettleError,oo=()=>W().onTransactionSuccess,sn=()=>W().onTransactionEstimationError,ao=()=>W().onTokenSelector,ze=()=>W().onLog,io=()=>W().onSimulateTransaction,lr=()=>{const e=W().getSwapQuotes,{effectiveSelectedAggregators:t}=Ct();return m.useCallback(({signal:n,variables:r})=>e({signal:n,variables:{...r,...!!t.length&&{aggregators:t}}}),[e,t])},_l=()=>W().updatePoolConfig,Il=()=>W().addPoolConfig,Nl=()=>W().updateCustomDepositTokensPerChain,cr=()=>W().setSwapQuoteRefreshTriggered,lo=()=>W().getReferrerAddress,co=()=>te().input,R=()=>[co().sendToken,W().updateSendTokenInput],B=()=>[co().receiveToken,W().updateReceiveTokenInput],X=()=>[te().settings,W().updateTradingSettings],uo=()=>[te().customDepositTokensPerChain,W().updateCustomDepositTokensPerChain],Q=()=>[te().modal,W().updateTradingModal],_t=()=>[te().withdrawAction,W().updateWithdrawAction],ve=()=>[te().type,W().setTradingType],Le=()=>te().type==="deposit",ne=()=>[te().transactions,W().updateTransactions],Pl=()=>te().defaultChainId,kn=(e,t)=>t.some(({id:n})=>n===e),De=()=>{const{chain:e}=_.useAccount(),{chains:t}=_.useConfig(),{switchChain:n,switchChainAsync:r}=_.useSwitchChain(),s=Pl(),a=e?.id,i=kn(a,t),l=s&&kn(s,t)?s:t[0].id;return{chain:e,isSupported:i,switchNetwork:n,switchNetworkAsync:r,chainId:i?a:void 0,supportedChainId:kn(a,t)?a:l,chains:t}},nt=({tokenAddress:e,ownerAddress:t,spenderAddress:n,chainId:r,skip:s})=>_.useReadContract({address:e,abi:k.erc20Abi,functionName:"allowance",args:[t,n],chainId:r,query:{enabled:!s,refetchInterval:u.DEFAULT_POLLING_INTERVAL}}),Ol=()=>{const{account:e}=j(),[t,n]=m.useState(!1);return m.useEffect(()=>{n(!!e)},[e]),t},dr=()=>{const{connector:e}=j();return e?.id==="rabby"||e?.name==="Rabby Wallet"},ur=e=>_.useBalance({...e,query:{...e?.query,staleTime:u.DEFAULT_POLLING_INTERVAL}});var Ut=typeof globalThis<"u"?globalThis:typeof window<"u"?window:typeof global<"u"?global:typeof self<"u"?self:{};function on(e){return e&&e.__esModule&&Object.prototype.hasOwnProperty.call(e,"default")?e.default:e}function Ll(){this.__data__=[],this.size=0}var Dl=Ll;function kl(e,t){return e===t||e!==e&&t!==t}var pr=kl,Rl=pr;function jl(e,t){for(var n=e.length;n--;)if(Rl(e[n][0],t))return n;return-1}var an=jl,Ml=an,Bl=Array.prototype,$l=Bl.splice;function Ul(e){var t=this.__data__,n=Ml(t,e);if(n<0)return!1;var r=t.length-1;return n==r?t.pop():$l.call(t,n,1),--this.size,!0}var Fl=Ul,Wl=an;function Gl(e){var t=this.__data__,n=Wl(t,e);return n<0?void 0:t[n][1]}var zl=Gl,Hl=an;function Vl(e){return Hl(this.__data__,e)>-1}var ql=Vl,Yl=an;function Kl(e,t){var n=this.__data__,r=Yl(n,e);return r<0?(++this.size,n.push([e,t])):n[r][1]=t,this}var Ql=Kl,Zl=Dl,Xl=Fl,Jl=zl,ec=ql,tc=Ql;function rt(e){var t=-1,n=e==null?0:e.length;for(this.clear();++t<n;){var r=e[t];this.set(r[0],r[1])}}rt.prototype.clear=Zl;rt.prototype.delete=Xl;rt.prototype.get=Jl;rt.prototype.has=ec;rt.prototype.set=tc;var ln=rt,nc=ln;function rc(){this.__data__=new nc,this.size=0}var sc=rc;function oc(e){var t=this.__data__,n=t.delete(e);return this.size=t.size,n}var ac=oc;function ic(e){return this.__data__.get(e)}var lc=ic;function cc(e){return this.__data__.has(e)}var dc=cc,uc=typeof Ut=="object"&&Ut&&Ut.Object===Object&&Ut,po=uc,pc=po,mc=typeof self=="object"&&self&&self.Object===Object&&self,wc=pc||mc||Function("return this")(),Ee=wc,hc=Ee,gc=hc.Symbol,cn=gc,qr=cn,mo=Object.prototype,fc=mo.hasOwnProperty,vc=mo.toString,vt=qr?qr.toStringTag:void 0;function Tc(e){var t=fc.call(e,vt),n=e[vt];try{e[vt]=void 0;var r=!0}catch{}var s=vc.call(e);return r&&(t?e[vt]=n:delete e[vt]),s}var bc=Tc,Ac=Object.prototype,xc=Ac.toString;function yc(e){return xc.call(e)}var Sc=yc,Yr=cn,Ec=bc,Cc=Sc,_c="[object Null]",Ic="[object Undefined]",Kr=Yr?Yr.toStringTag:void 0;function Nc(e){return e==null?e===void 0?Ic:_c:Kr&&Kr in Object(e)?Ec(e):Cc(e)}var st=Nc;function Pc(e){var t=typeof e;return e!=null&&(t=="object"||t=="function")}var It=Pc,Oc=st,Lc=It,Dc="[object AsyncFunction]",kc="[object Function]",Rc="[object GeneratorFunction]",jc="[object Proxy]";function Mc(e){if(!Lc(e))return!1;var t=Oc(e);return t==kc||t==Rc||t==Dc||t==jc}var wo=Mc,Bc=Ee,$c=Bc["__core-js_shared__"],Uc=$c,Rn=Uc,Qr=function(){var e=/[^.]+$/.exec(Rn&&Rn.keys&&Rn.keys.IE_PROTO||"");return e?"Symbol(src)_1."+e:""}();function Fc(e){return!!Qr&&Qr in e}var Wc=Fc,Gc=Function.prototype,zc=Gc.toString;function Hc(e){if(e!=null){try{return zc.call(e)}catch{}try{return e+""}catch{}}return""}var ho=Hc,Vc=wo,qc=Wc,Yc=It,Kc=ho,Qc=/[\\^$.*+?()[\]{}|]/g,Zc=/^\[object .+?Constructor\]$/,Xc=Function.prototype,Jc=Object.prototype,ed=Xc.toString,td=Jc.hasOwnProperty,nd=RegExp("^"+ed.call(td).replace(Qc,"\\$&").replace(/hasOwnProperty|(function).*?(?=\\\()| for .+?(?=\\\])/g,"$1.*?")+"$");function rd(e){if(!Yc(e)||qc(e))return!1;var t=Vc(e)?nd:Zc;return t.test(Kc(e))}var sd=rd;function od(e,t){return e?.[t]}var ad=od,id=sd,ld=ad;function cd(e,t){var n=ld(e,t);return id(n)?n:void 0}var ot=cd,dd=ot,ud=Ee,pd=dd(ud,"Map"),mr=pd,md=ot,wd=md(Object,"create"),dn=wd,Zr=dn;function hd(){this.__data__=Zr?Zr(null):{},this.size=0}var gd=hd;function fd(e){var t=this.has(e)&&delete this.__data__[e];return this.size-=t?1:0,t}var vd=fd,Td=dn,bd="__lodash_hash_undefined__",Ad=Object.prototype,xd=Ad.hasOwnProperty;function yd(e){var t=this.__data__;if(Td){var n=t[e];return n===bd?void 0:n}return xd.call(t,e)?t[e]:void 0}var Sd=yd,Ed=dn,Cd=Object.prototype,_d=Cd.hasOwnProperty;function Id(e){var t=this.__data__;return Ed?t[e]!==void 0:_d.call(t,e)}var Nd=Id,Pd=dn,Od="__lodash_hash_undefined__";function Ld(e,t){var n=this.__data__;return this.size+=this.has(e)?0:1,n[e]=Pd&&t===void 0?Od:t,this}var Dd=Ld,kd=gd,Rd=vd,jd=Sd,Md=Nd,Bd=Dd;function at(e){var t=-1,n=e==null?0:e.length;for(this.clear();++t<n;){var r=e[t];this.set(r[0],r[1])}}at.prototype.clear=kd;at.prototype.delete=Rd;at.prototype.get=jd;at.prototype.has=Md;at.prototype.set=Bd;var $d=at,Xr=$d,Ud=ln,Fd=mr;function Wd(){this.size=0,this.__data__={hash:new Xr,map:new(Fd||Ud),string:new Xr}}var Gd=Wd;function zd(e){var t=typeof e;return t=="string"||t=="number"||t=="symbol"||t=="boolean"?e!=="__proto__":e===null}var Hd=zd,Vd=Hd;function qd(e,t){var n=e.__data__;return Vd(t)?n[typeof t=="string"?"string":"hash"]:n.map}var un=qd,Yd=un;function Kd(e){var t=Yd(this,e).delete(e);return this.size-=t?1:0,t}var Qd=Kd,Zd=un;function Xd(e){return Zd(this,e).get(e)}var Jd=Xd,eu=un;function tu(e){return eu(this,e).has(e)}var nu=tu,ru=un;function su(e,t){var n=ru(this,e),r=n.size;return n.set(e,t),this.size+=n.size==r?0:1,this}var ou=su,au=Gd,iu=Qd,lu=Jd,cu=nu,du=ou;function it(e){var t=-1,n=e==null?0:e.length;for(this.clear();++t<n;){var r=e[t];this.set(r[0],r[1])}}it.prototype.clear=au;it.prototype.delete=iu;it.prototype.get=lu;it.prototype.has=cu;it.prototype.set=du;var wr=it,uu=ln,pu=mr,mu=wr,wu=200;function hu(e,t){var n=this.__data__;if(n instanceof uu){var r=n.__data__;if(!pu||r.length<wu-1)return r.push([e,t]),this.size=++n.size,this;n=this.__data__=new mu(r)}return n.set(e,t),this.size=n.size,this}var gu=hu,fu=ln,vu=sc,Tu=ac,bu=lc,Au=dc,xu=gu;function lt(e){var t=this.__data__=new fu(e);this.size=t.size}lt.prototype.clear=vu;lt.prototype.delete=Tu;lt.prototype.get=bu;lt.prototype.has=Au;lt.prototype.set=xu;var go=lt,yu="__lodash_hash_undefined__";function Su(e){return this.__data__.set(e,yu),this}var Eu=Su;function Cu(e){return this.__data__.has(e)}var _u=Cu,Iu=wr,Nu=Eu,Pu=_u;function Kt(e){var t=-1,n=e==null?0:e.length;for(this.__data__=new Iu;++t<n;)this.add(e[t])}Kt.prototype.add=Kt.prototype.push=Nu;Kt.prototype.has=Pu;var fo=Kt;function Ou(e,t){for(var n=-1,r=e==null?0:e.length;++n<r;)if(t(e[n],n,e))return!0;return!1}var Lu=Ou;function Du(e,t){return e.has(t)}var vo=Du,ku=fo,Ru=Lu,ju=vo,Mu=1,Bu=2;function $u(e,t,n,r,s,a){var i=n&Mu,l=e.length,c=t.length;if(l!=c&&!(i&&c>l))return!1;var d=a.get(e),p=a.get(t);if(d&&p)return d==t&&p==e;var g=-1,h=!0,f=n&Bu?new ku:void 0;for(a.set(e,t),a.set(t,e);++g<l;){var v=e[g],T=t[g];if(r)var b=i?r(T,v,g,t,e,a):r(v,T,g,e,t,a);if(b!==void 0){if(b)continue;h=!1;break}if(f){if(!Ru(t,function(A,x){if(!ju(f,x)&&(v===A||s(v,A,n,r,a)))return f.push(x)})){h=!1;break}}else if(!(v===T||s(v,T,n,r,a))){h=!1;break}}return a.delete(e),a.delete(t),h}var To=$u,Uu=Ee,Fu=Uu.Uint8Array,Wu=Fu;function Gu(e){var t=-1,n=Array(e.size);return e.forEach(function(r,s){n[++t]=[s,r]}),n}var zu=Gu;function Hu(e){var t=-1,n=Array(e.size);return e.forEach(function(r){n[++t]=r}),n}var hr=Hu,Jr=cn,es=Wu,Vu=pr,qu=To,Yu=zu,Ku=hr,Qu=1,Zu=2,Xu="[object Boolean]",Ju="[object Date]",ep="[object Error]",tp="[object Map]",np="[object Number]",rp="[object RegExp]",sp="[object Set]",op="[object String]",ap="[object Symbol]",ip="[object ArrayBuffer]",lp="[object DataView]",ts=Jr?Jr.prototype:void 0,jn=ts?ts.valueOf:void 0;function cp(e,t,n,r,s,a,i){switch(n){case lp:if(e.byteLength!=t.byteLength||e.byteOffset!=t.byteOffset)return!1;e=e.buffer,t=t.buffer;case ip:return!(e.byteLength!=t.byteLength||!a(new es(e),new es(t)));case Xu:case Ju:case np:return Vu(+e,+t);case ep:return e.name==t.name&&e.message==t.message;case rp:case op:return e==t+"";case tp:var l=Yu;case sp:var c=r&Qu;if(l||(l=Ku),e.size!=t.size&&!c)return!1;var d=i.get(e);if(d)return d==t;r|=Zu,i.set(e,t);var p=qu(l(e),l(t),r,s,a,i);return i.delete(e),p;case ap:if(jn)return jn.call(e)==jn.call(t)}return!1}var dp=cp;function up(e,t){for(var n=-1,r=t.length,s=e.length;++n<r;)e[s+n]=t[n];return e}var pp=up,mp=Array.isArray,ke=mp,wp=pp,hp=ke;function gp(e,t,n){var r=t(e);return hp(e)?r:wp(r,n(e))}var fp=gp;function vp(e,t){for(var n=-1,r=e==null?0:e.length,s=0,a=[];++n<r;){var i=e[n];t(i,n,e)&&(a[s++]=i)}return a}var Tp=vp;function bp(){return[]}var Ap=bp,xp=Tp,yp=Ap,Sp=Object.prototype,Ep=Sp.propertyIsEnumerable,ns=Object.getOwnPropertySymbols,Cp=ns?function(e){return e==null?[]:(e=Object(e),xp(ns(e),function(t){return Ep.call(e,t)}))}:yp,_p=Cp;function Ip(e,t){for(var n=-1,r=Array(e);++n<e;)r[n]=t(n);return r}var Np=Ip;function Pp(e){return e!=null&&typeof e=="object"}var ct=Pp,Op=st,Lp=ct,Dp="[object Arguments]";function kp(e){return Lp(e)&&Op(e)==Dp}var Rp=kp,rs=Rp,jp=ct,bo=Object.prototype,Mp=bo.hasOwnProperty,Bp=bo.propertyIsEnumerable,$p=rs(function(){return arguments}())?rs:function(e){return jp(e)&&Mp.call(e,"callee")&&!Bp.call(e,"callee")},Ao=$p,Qt={exports:{}};function Up(){return!1}var Fp=Up;Qt.exports;(function(e,t){var n=Ee,r=Fp,s=t&&!t.nodeType&&t,a=s&&!0&&e&&!e.nodeType&&e,i=a&&a.exports===s,l=i?n.Buffer:void 0,c=l?l.isBuffer:void 0,d=c||r;e.exports=d})(Qt,Qt.exports);var xo=Qt.exports,Wp=9007199254740991,Gp=/^(?:0|[1-9]\d*)$/;function zp(e,t){var n=typeof e;return t=t??Wp,!!t&&(n=="number"||n!="symbol"&&Gp.test(e))&&e>-1&&e%1==0&&e<t}var gr=zp,Hp=9007199254740991;function Vp(e){return typeof e=="number"&&e>-1&&e%1==0&&e<=Hp}var fr=Vp,qp=st,Yp=fr,Kp=ct,Qp="[object Arguments]",Zp="[object Array]",Xp="[object Boolean]",Jp="[object Date]",em="[object Error]",tm="[object Function]",nm="[object Map]",rm="[object Number]",sm="[object Object]",om="[object RegExp]",am="[object Set]",im="[object String]",lm="[object WeakMap]",cm="[object ArrayBuffer]",dm="[object DataView]",um="[object Float32Array]",pm="[object Float64Array]",mm="[object Int8Array]",wm="[object Int16Array]",hm="[object Int32Array]",gm="[object Uint8Array]",fm="[object Uint8ClampedArray]",vm="[object Uint16Array]",Tm="[object Uint32Array]",K={};K[um]=K[pm]=K[mm]=K[wm]=K[hm]=K[gm]=K[fm]=K[vm]=K[Tm]=!0;K[Qp]=K[Zp]=K[cm]=K[Xp]=K[dm]=K[Jp]=K[em]=K[tm]=K[nm]=K[rm]=K[sm]=K[om]=K[am]=K[im]=K[lm]=!1;function bm(e){return Kp(e)&&Yp(e.length)&&!!K[qp(e)]}var Am=bm;function xm(e){return function(t){return e(t)}}var ym=xm,Zt={exports:{}};Zt.exports;(function(e,t){var n=po,r=t&&!t.nodeType&&t,s=r&&!0&&e&&!e.nodeType&&e,a=s&&s.exports===r,i=a&&n.process,l=function(){try{var c=s&&s.require&&s.require("util").types;return c||i&&i.binding&&i.binding("util")}catch{}}();e.exports=l})(Zt,Zt.exports);var Sm=Zt.exports,Em=Am,Cm=ym,ss=Sm,os=ss&&ss.isTypedArray,_m=os?Cm(os):Em,yo=_m,Im=Np,Nm=Ao,Pm=ke,Om=xo,Lm=gr,Dm=yo,km=Object.prototype,Rm=km.hasOwnProperty;function jm(e,t){var n=Pm(e),r=!n&&Nm(e),s=!n&&!r&&Om(e),a=!n&&!r&&!s&&Dm(e),i=n||r||s||a,l=i?Im(e.length,String):[],c=l.length;for(var d in e)(t||Rm.call(e,d))&&!(i&&(d=="length"||s&&(d=="offset"||d=="parent")||a&&(d=="buffer"||d=="byteLength"||d=="byteOffset")||Lm(d,c)))&&l.push(d);return l}var Mm=jm,Bm=Object.prototype;function $m(e){var t=e&&e.constructor,n=typeof t=="function"&&t.prototype||Bm;return e===n}var Um=$m;function Fm(e,t){return function(n){return e(t(n))}}var Wm=Fm,Gm=Wm,zm=Gm(Object.keys,Object),Hm=zm,Vm=Um,qm=Hm,Ym=Object.prototype,Km=Ym.hasOwnProperty;function Qm(e){if(!Vm(e))return qm(e);var t=[];for(var n in Object(e))Km.call(e,n)&&n!="constructor"&&t.push(n);return t}var Zm=Qm,Xm=wo,Jm=fr;function ew(e){return e!=null&&Jm(e.length)&&!Xm(e)}var So=ew,tw=Mm,nw=Zm,rw=So;function sw(e){return rw(e)?tw(e):nw(e)}var vr=sw,ow=fp,aw=_p,iw=vr;function lw(e){return ow(e,iw,aw)}var cw=lw,as=cw,dw=1,uw=Object.prototype,pw=uw.hasOwnProperty;function mw(e,t,n,r,s,a){var i=n&dw,l=as(e),c=l.length,d=as(t),p=d.length;if(c!=p&&!i)return!1;for(var g=c;g--;){var h=l[g];if(!(i?h in t:pw.call(t,h)))return!1}var f=a.get(e),v=a.get(t);if(f&&v)return f==t&&v==e;var T=!0;a.set(e,t),a.set(t,e);for(var b=i;++g<c;){h=l[g];var A=e[h],x=t[h];if(r)var S=i?r(x,A,h,t,e,a):r(A,x,h,e,t,a);if(!(S===void 0?A===x||s(A,x,n,r,a):S)){T=!1;break}b||(b=h=="constructor")}if(T&&!b){var L=e.constructor,O=t.constructor;L!=O&&"constructor"in e&&"constructor"in t&&!(typeof L=="function"&&L instanceof L&&typeof O=="function"&&O instanceof O)&&(T=!1)}return a.delete(e),a.delete(t),T}var ww=mw,hw=ot,gw=Ee,fw=hw(gw,"DataView"),vw=fw,Tw=ot,bw=Ee,Aw=Tw(bw,"Promise"),xw=Aw,yw=ot,Sw=Ee,Ew=yw(Sw,"Set"),Eo=Ew,Cw=ot,_w=Ee,Iw=Cw(_w,"WeakMap"),Nw=Iw,qn=vw,Yn=mr,Kn=xw,Qn=Eo,Zn=Nw,Co=st,dt=ho,is="[object Map]",Pw="[object Object]",ls="[object Promise]",cs="[object Set]",ds="[object WeakMap]",us="[object DataView]",Ow=dt(qn),Lw=dt(Yn),Dw=dt(Kn),kw=dt(Qn),Rw=dt(Zn),$e=Co;(qn&&$e(new qn(new ArrayBuffer(1)))!=us||Yn&&$e(new Yn)!=is||Kn&&$e(Kn.resolve())!=ls||Qn&&$e(new Qn)!=cs||Zn&&$e(new Zn)!=ds)&&($e=function(e){var t=Co(e),n=t==Pw?e.constructor:void 0,r=n?dt(n):"";if(r)switch(r){case Ow:return us;case Lw:return is;case Dw:return ls;case kw:return cs;case Rw:return ds}return t});var jw=$e,Mn=go,Mw=To,Bw=dp,$w=ww,ps=jw,ms=ke,ws=xo,Uw=yo,Fw=1,hs="[object Arguments]",gs="[object Array]",Ft="[object Object]",Ww=Object.prototype,fs=Ww.hasOwnProperty;function Gw(e,t,n,r,s,a){var i=ms(e),l=ms(t),c=i?gs:ps(e),d=l?gs:ps(t);c=c==hs?Ft:c,d=d==hs?Ft:d;var p=c==Ft,g=d==Ft,h=c==d;if(h&&ws(e)){if(!ws(t))return!1;i=!0,p=!1}if(h&&!p)return a||(a=new Mn),i||Uw(e)?Mw(e,t,n,r,s,a):Bw(e,t,c,n,r,s,a);if(!(n&Fw)){var f=p&&fs.call(e,"__wrapped__"),v=g&&fs.call(t,"__wrapped__");if(f||v){var T=f?e.value():e,b=v?t.value():t;return a||(a=new Mn),s(T,b,n,r,a)}}return h?(a||(a=new Mn),$w(e,t,n,r,s,a)):!1}var zw=Gw,Hw=zw,vs=ct;function _o(e,t,n,r,s){return e===t?!0:e==null||t==null||!vs(e)&&!vs(t)?e!==e&&t!==t:Hw(e,t,n,r,_o,s)}var Io=_o,Vw=go,qw=Io,Yw=1,Kw=2;function Qw(e,t,n,r){var s=n.length,a=s,i=!r;if(e==null)return!a;for(e=Object(e);s--;){var l=n[s];if(i&&l[2]?l[1]!==e[l[0]]:!(l[0]in e))return!1}for(;++s<a;){l=n[s];var c=l[0],d=e[c],p=l[1];if(i&&l[2]){if(d===void 0&&!(c in e))return!1}else{var g=new Vw;if(r)var h=r(d,p,c,e,t,g);if(!(h===void 0?qw(p,d,Yw|Kw,r,g):h))return!1}}return!0}var Zw=Qw,Xw=It;function Jw(e){return e===e&&!Xw(e)}var No=Jw,eh=No,th=vr;function nh(e){for(var t=th(e),n=t.length;n--;){var r=t[n],s=e[r];t[n]=[r,s,eh(s)]}return t}var rh=nh;function sh(e,t){return function(n){return n==null?!1:n[e]===t&&(t!==void 0||e in Object(n))}}var Po=sh,oh=Zw,ah=rh,ih=Po;function lh(e){var t=ah(e);return t.length==1&&t[0][2]?ih(t[0][0],t[0][1]):function(n){return n===e||oh(n,e,t)}}var ch=lh,dh=st,uh=ct,ph="[object Symbol]";function mh(e){return typeof e=="symbol"||uh(e)&&dh(e)==ph}var pn=mh,wh=ke,hh=pn,gh=/\.|\[(?:[^[\]]*|(["'])(?:(?!\1)[^\\]|\\.)*?\1)\]/,fh=/^\w*$/;function vh(e,t){if(wh(e))return!1;var n=typeof e;return n=="number"||n=="symbol"||n=="boolean"||e==null||hh(e)?!0:fh.test(e)||!gh.test(e)||t!=null&&e in Object(t)}var Tr=vh,Oo=wr,Th="Expected a function";function br(e,t){if(typeof e!="function"||t!=null&&typeof t!="function")throw new TypeError(Th);var n=function(){var r=arguments,s=t?t.apply(this,r):r[0],a=n.cache;if(a.has(s))return a.get(s);var i=e.apply(this,r);return n.cache=a.set(s,i)||a,i};return n.cache=new(br.Cache||Oo),n}br.Cache=Oo;var bh=br,Ah=bh,xh=500;function yh(e){var t=Ah(e,function(r){return n.size===xh&&n.clear(),r}),n=t.cache;return t}var Sh=yh,Eh=Sh,Ch=/[^.[\]]+|\[(?:(-?\d+(?:\.\d+)?)|(["'])((?:(?!\2)[^\\]|\\.)*?)\2)\]|(?=(?:\.|\[\])(?:\.|\[\]|$))/g,_h=/\\(\\)?/g,Ih=Eh(function(e){var t=[];return e.charCodeAt(0)===46&&t.push(""),e.replace(Ch,function(n,r,s,a){t.push(s?a.replace(_h,"$1"):r||n)}),t}),Nh=Ih;function Ph(e,t){for(var n=-1,r=e==null?0:e.length,s=Array(r);++n<r;)s[n]=t(e[n],n,e);return s}var Oh=Ph,Ts=cn,Lh=Oh,Dh=ke,kh=pn,bs=Ts?Ts.prototype:void 0,As=bs?bs.toString:void 0;function Lo(e){if(typeof e=="string")return e;if(Dh(e))return Lh(e,Lo)+"";if(kh(e))return As?As.call(e):"";var t=e+"";return t=="0"&&1/e==-1/0?"-0":t}var Rh=Lo,jh=Rh;function Mh(e){return e==null?"":jh(e)}var Bh=Mh,$h=ke,Uh=Tr,Fh=Nh,Wh=Bh;function Gh(e,t){return $h(e)?e:Uh(e,t)?[e]:Fh(Wh(e))}var Do=Gh,zh=pn;function Hh(e){if(typeof e=="string"||zh(e))return e;var t=e+"";return t=="0"&&1/e==-1/0?"-0":t}var mn=Hh,Vh=Do,qh=mn;function Yh(e,t){t=Vh(t,e);for(var n=0,r=t.length;e!=null&&n<r;)e=e[qh(t[n++])];return n&&n==r?e:void 0}var ko=Yh,Kh=ko;function Qh(e,t,n){var r=e==null?void 0:Kh(e,t);return r===void 0?n:r}var Zh=Qh;function Xh(e,t){return e!=null&&t in Object(e)}var Jh=Xh,eg=Do,tg=Ao,ng=ke,rg=gr,sg=fr,og=mn;function ag(e,t,n){t=eg(t,e);for(var r=-1,s=t.length,a=!1;++r<s;){var i=og(t[r]);if(!(a=e!=null&&n(e,i)))break;e=e[i]}return a||++r!=s?a:(s=e==null?0:e.length,!!s&&sg(s)&&rg(i,s)&&(ng(e)||tg(e)))}var ig=ag,lg=Jh,cg=ig;function dg(e,t){return e!=null&&cg(e,t,lg)}var ug=dg,pg=Io,mg=Zh,wg=ug,hg=Tr,gg=No,fg=Po,vg=mn,Tg=1,bg=2;function Ag(e,t){return hg(e)&&gg(t)?fg(vg(e),t):function(n){var r=mg(n,e);return r===void 0&&r===t?wg(n,e):pg(t,r,Tg|bg)}}var xg=Ag;function yg(e){return e}var Sg=yg;function Eg(e){return function(t){return t?.[e]}}var Cg=Eg,_g=ko;function Ig(e){return function(t){return _g(t,e)}}var Ng=Ig,Pg=Cg,Og=Ng,Lg=Tr,Dg=mn;function kg(e){return Lg(e)?Pg(Dg(e)):Og(e)}var Rg=kg,jg=ch,Mg=xg,Bg=Sg,$g=ke,Ug=Rg;function Fg(e){return typeof e=="function"?e:e==null?Bg:typeof e=="object"?$g(e)?Mg(e[0],e[1]):jg(e):Ug(e)}var Ro=Fg;function Wg(e){return function(t,n,r){for(var s=-1,a=Object(t),i=r(t),l=i.length;l--;){var c=i[e?l:++s];if(n(a[c],c,a)===!1)break}return t}}var Gg=Wg,zg=Gg,Hg=zg(),Vg=Hg,qg=Vg,Yg=vr;function Kg(e,t){return e&&qg(e,t,Yg)}var Qg=Kg,Zg=Qg;function Xg(e,t,n,r){return Zg(e,function(s,a,i){t(r,n(s),a,i)}),r}var Jg=Xg,ef=Jg;function tf(e,t){return function(n,r){return ef(n,e,t(r),{})}}var nf=tf,rf=Ro,sf=nf,jo=Object.prototype,of=jo.hasOwnProperty,af=jo.toString,lf=sf(function(e,t,n){t!=null&&typeof t.toString!="function"&&(t=af.call(t)),of.call(e,t)?e[t].push(n):e[t]=[n]},rf),cf=lf;const df=on(cf),Ze="Canceled by user",uf={"exceeds the configured cap":"Please try using a different RPC for your wallet.","denied transaction":Ze,"user rejected the transaction":Ze,"user rejected transaction":Ze,"user rejected the request":Ze,"user canceled":Ze,"not enough available balance":"Attempting to withdraw a balance that exceeds the liquidity currently accessible."},pf=df(uf);pf[Ze];const Mo=e=>typeof e=="object"&&e!==null&&"message"in e&&typeof e.message=="string",Bo=e=>{if(Mo(e))return e;try{return new Error(JSON.stringify(e))}catch{return new Error(String(e))}},$o=e=>Bo(e).message,mf=async()=>{},Bn=e=>{const t=e[e.length-1],n=typeof t=="object"&&t!==null&&("value"in t||"gas"in t),r=n?t:{},s=n?e.slice(0,-1):e;return{transactionOverrides:r,argumentsWithoutOverrides:s}},de=({functionName:e,dynamicContractAddress:t,contractId:n,onSettled:r})=>{const{account:s}=j(),{chainId:a,supportedChainId:i}=De(),l=_.useWalletClient({chainId:a}),c=_.usePublicClient({chainId:a}),d=w.getContractAbiById(n),p=t??w.getContractAddressById(n,a??i),g=io(),[{isForceSendEnabled:h,forceSendGas:f}]=X(),{writeContract:v}=_.useWriteContract({mutation:{onSettled:r}}),T=m.useCallback(async(...x)=>{try{const{argumentsWithoutOverrides:S,transactionOverrides:L}=Bn(x),O=await c?.estimateContractGas({address:p,abi:d,functionName:e,args:S,account:s??u.AddressZero,gas:L.gas,value:L.value});if(!O||!a||O===BigInt(0))return{error:u.GAS_ESTIMATION_ERROR,value:BigInt(0)};const M=Math.round(Number(O)*u.GAS_LIMIT_BUFFER_COEFF),P=u.MAX_GAS_LIMIT_MAP[a]??M,U=BigInt(Math.min(P,M));return console.debug(`[core-ui-kit]: estimated gas limit: ${Number(O)}`),{error:"",value:U}}catch(S){return console.error(`Gas estimate error on ${e}`,S),{error:S?.message??S?.shortMessage??S.error?.data?.message??S.data?.message??u.GAS_ESTIMATION_ERROR,value:BigInt(0)}}},[s,a,c,e,p,d]),b=m.useCallback(async(...x)=>{try{if(!g)return{data:null,error:u.DEFAULT_SIMULATION_ERROR};if(!c)return{data:null,error:"Client is not defined"};const{argumentsWithoutOverrides:S,transactionOverrides:L}=Bn(x),O=k.encodeFunctionData({abi:d,functionName:e,args:S});if(s&&O){const M=await g({chainId:a??i,from:s,to:p,input:O,gas:u.MAX_GAS_LIMIT_MAP[a??i]??0,value:L.value?.toString()});return{data:M,error:M?.simulation.error_message}}return{data:null,error:u.DEFAULT_SIMULATION_ERROR}}catch(S){return console.debug("Failed to simulate:",S),{data:null,error:$o(S)}}},[s,a,c,d,p,e,g,i]),A=m.useCallback(async(...x)=>{const{argumentsWithoutOverrides:S,transactionOverrides:L}=Bn(x);if(L.gas)return v({address:p,abi:d,functionName:e,chainId:a,args:S,...L});const{value:O,error:M}=await T(...x);if(M){if(h){const U=BigInt(f??u.MAX_GAS_LIMIT_MAP[a??i]??u.DEFAULT_MAX_GAS_LIMIT);return console.debug(`[core-ui-kit]: force sending tx with gas: ${U}`),v({address:p,abi:d,functionName:e,chainId:a,args:S,...L,gas:U})}const{data:P}=await Promise.race([b(...x),new Promise(U=>setTimeout(U,u.DEFAULT_PROMISE_TIMEOUT_MS,{data:null,error:u.SIMULATION_TIMEOUT_ERROR}))]);throw new We({message:M,link:P?.link,txArgs:x,account:s,functionName:e,onBypass:()=>l?.data?.writeContract({address:p,abi:d,functionName:e,account:s,chainId:a,args:S,...L,gas:BigInt(u.MAX_GAS_LIMIT_MAP[a??i]??0)})})}return console.debug(`[core-ui-kit]: gas limit to use: ${O}`),v({address:p,abi:d,functionName:e,chainId:a,args:S,...L,gas:O})},[T,v,b,s,e,l?.data,p,d,a,i,h,f]);return{send:a&&c?A:mf,estimate:T}},Uo=e=>_.useEstimateFeesPerGas({...e,query:{...e?.query,staleTime:3e4}}),wn=e=>{m.useEffect(()=>{e?.forEach(({error:t,status:n})=>{n==="failure"&&w.logContractErrorOnce(t)})},[e])},Ar=({error:e,status:t})=>{m.useEffect(()=>{t==="failure"&&w.logContractErrorOnce(e)},[e,t])},hn=async({functionName:e,address:t,abi:n,args:r,publicClient:s})=>(await s?.simulateContract({address:t,abi:n,functionName:e,args:r}))?.result,wf=({disabled:e,functionName:t,address:n,abi:r,args:s,chainId:a,refetchInterval:i})=>{const l=_.usePublicClient({chainId:a});return fe.useQuery({queryKey:[{functionName:t,address:n,args:s,chainId:a}],queryFn:async({queryKey:[c]})=>{if(c)return await hn({address:n,abi:r,functionName:c.functionName,args:c.args,publicClient:l})},enabled:!e&&!!a&&!w.isZeroAddress(n)&&!!t,refetchInterval:i})},Xt=({queryKey:e,watch:t=!0})=>{const n=fe.useQueryClient(),{data:r}=_.useBlockNumber({query:{refetchInterval:u.SHORTEN_POLLING_INTERVAL}});m.useEffect(()=>{t&&n.refetchQueries({queryKey:e,stale:!0})},[t,r])},gn="limitOrders",xr="getAllLimitOrderIds",yr=0,Fo="100",hf=1,gf=5,ff=2,vf=["balanceOf","getFundSummary","getFundComposition","withdrawalContracts","getTrackedAssets","getAssetPrice","allowance","getExitRemainingCooldown","tokenPrice","limitOrders","calculateAvailableManagerFee",gn,xr],Tf=["allowance"],xs=(e,t)=>e[0]==="readContract"?t.includes(e?.[1]?.functionName??""):e[0]==="readContracts"?!!e[1]?.contracts?.some(({functionName:r})=>t.includes(r??"")):!1,ut=()=>{const e=fe.useQueryClient(),t=m.useCallback(()=>{e.invalidateQueries({predicate:({queryKey:r})=>xs(r,Tf)})},[e]),n=m.useCallback(()=>{e.invalidateQueries({predicate:({queryKey:r})=>xs(r,vf)})},[e]);return{invalidateAllowanceQueries:t,invalidateTradingQueries:n}},bf={"Lend/Borrow V2":"aave","Lend/Borrow V3":"aave","Lyra Options":"lyra",ULP:"uni"};function Af(e){const t=bf[e];if(t)return t;const n=e.toLowerCase();return n.includes("bear")?"torosbear":n.includes("bull")?"torosbull":n}const Sr=e=>e?`https://raw.githubusercontent.com/dhedge/crypto-icons/main/icons/${Af(e)}.png`:"",Wo={countryCode:null,isSanctioned:!1,depositQuoteDiffWarningThreshold:1.5,depositQuoteDiffErrorThreshold:3,defaultWithdrawSlippage:u.DEFAULT_WITHDRAW_SLIPPAGE,defaultLockTime:u.DEFAULT_LOCK_TIME,defaultNoSwapMinDepositAmountGap:u.DEFAULT_NO_SWAP_MIN_DEPOSIT_AMOUNT_GAP,defaultSwapTransactionSlippage:u.DEFAULT_SWAP_TRANSACTION_SLIPPAGE,defaultNotificationDuration:u.DEFAULT_NOTIFICATION_DURATION_MS,stablePrecision:3,defaultPrecision:6,termsOfUseAccepted:!0,standalone:!0,isAllAssetsWithdrawOptionDefault:!1,chainConfig:{[Z.mainnet.id]:{name:"Ethereum",iconPath:""},[Z.arbitrum.id]:{name:"Arbitrum",iconPath:""},[Z.optimism.id]:{name:"Optimism",iconPath:""},[Z.polygon.id]:{name:"Polygon",iconPath:""},[Z.base.id]:{name:"Base",iconPath:""},[Z.hyperEvm.id]:{name:"HyperEVM",iconPath:""}},getFallbackIconPath:Sr,minLimitOrderValue:0,limitOrderThemeConfig:{}},xf=()=>{const{connect:e}=_.useConnect(),t=m.useCallback(()=>e({connector:Xi.injected({shimDisconnect:!0})}),[e]),n=m.useCallback(async()=>(console.log("terms of use were accepted. Assume `termsOfUseAccepted` config value switch to true"),Promise.resolve(!0)),[]);return{onConnect:t,onAcceptTermsOfUse:n}},yf={params:{...Wo},actions:{onConnect:()=>{},onAcceptTermsOfUse:()=>Promise.resolve(!0)},ondo:void 0},Go=m.createContext(yf),zo=({children:e,config:t})=>{const n=xf(),r=m.useMemo(()=>({params:{...Wo,...t?.params},actions:{...n,...t?.actions},ondo:t?.ondo}),[t,n]);return m.useEffect(()=>{ll(r.ondo),r.ondo&&ul()},[r.ondo]),m.useEffect(()=>{w.ensureContractErrorRegistryLoaded()},[]),o.jsx(Go.Provider,{value:r,children:e})},Er=()=>{const e=m.useContext(Go);if(!e)throw new Error("ConfigContext is used out of Provider");return e},q=()=>Er().params,Cr=()=>Er().actions,fn=()=>!!Er().ondo,_r=()=>{const{defaultWithdrawSlippage:e}=q(),{chainId:t}=y();return w.isNumberType(e)?e:e[t]??u.DEFAULT_WITHDRAW_SLIPPAGE},Ir=()=>{const{defaultSwapTransactionSlippage:e}=q(),{chainId:t}=y();return w.isNumberType(e)?e:e[t]??u.DEFAULT_SWAP_TRANSACTION_SLIPPAGE},Sf=({children:e,onClose:t})=>{const{defaultNotificationDuration:n}=q();return m.useEffect(()=>{const r=s=>{s.key==="Escape"&&t?.()};return window.addEventListener("keydown",r),()=>{window.removeEventListener("keydown",r)}},[t]),m.useEffect(()=>{const r=setTimeout(()=>{t?.()},n);return()=>{clearTimeout(r)}},[n,t]),o.jsx("div",{className:"dtw-p-4 dtw-absolute dtw-top-0 dtw-inset-x-0 dtw-rounded-xl dtw-bg-[var(--panel-notification-bg,var(--panel-secondary-color))]",children:o.jsxs("div",{className:"dtw-flex dtw-justify-between dtw-items-center",children:[o.jsx("div",{children:e}),!!t&&o.jsx(Yt,{Icon:Vn.XMarkIcon,onClick:t,className:"dtw-w-6 dtw-h-6",containerClassName:"dtw-self-center"})]})})},Ef=({children:e,className:t,transparent:n=!1,centered:r=!0,onClose:s,noPadding:a,onBack:i})=>(m.useEffect(()=>{const l=c=>{c.key==="Escape"&&s?.()};return window.addEventListener("keydown",l),()=>{window.removeEventListener("keydown",l)}},[s]),o.jsx("div",{className:N("dtw-absolute dtw-top-0 dtw-inset-0 dtw-rounded-xl dtw-backdrop-blur-md dtw-backdrop-brightness-75 dtw-backdrop-filter",{"dtw-p-1":!a}),children:o.jsxs("div",{className:N("dtw-flex dtw-flex-col dtw-rounded-xl dtw-p-4 dtw-h-full",t,{"dtw-bg-[var(--panel-overlay-bg)]":!n,"dtw-items-center dtw-justify-center":r}),children:[e,!!i&&o.jsx("div",{className:"dtw-absolute dtw-top-5 dtw-left-5",children:o.jsx(Yt,{Icon:Vn.ChevronLeftIcon,onClick:i})}),!!s&&o.jsx("div",{className:"dtw-absolute dtw-top-5 dtw-right-5",children:o.jsx(Yt,{Icon:Vn.XMarkIcon,onClick:s})})]})})),Cf=({children:e})=>o.jsx(F.TabPanel,{className:"dtw-pt-[var(--panel-content-pt)] dtw-pb-[var(--panel-content-pb)] md:dtw-pb-[var(--panel-content-pb-md)] dtw-px-[var(--panel-content-px)] dtw-flex dtw-flex-col dtw-gap-[var(--panel-content-gap,var(--panel-gap))] dtw-h-full",children:e}),_f=({className:e,iconClassName:t,onClick:n,children:r})=>{const s=ze(),a=()=>{n?.(),s?.(u.TRADING_PANEL_LOG_EVENT.TRADING_SETTINGS_OPENED)};return o.jsxs(F.Popover,{className:N("dtw-flex dtw-items-center dtw-justify-end",e),children:[o.jsx(F.PopoverButton,{onClick:a,children:o.jsx(oe.Cog6ToothIcon,{className:N("dtw-h-[var(--panel-input-token-icon-size,var(--panel-icon-size))] dtw-w-[var(--panel-input-token-icon-size,var(--panel-icon-size))] sm:dtw-w-[var(--panel-input-token-icon-size-sm,var(--panel-icon-size-sm))] sm:dtw-h-[var(--panel-input-token-icon-size-sm,var(--panel-icon-size-sm))] hover:dtw-opacity-80 dtw-text-[color:var(--panel-icon-color,var(--panel-content-color))]",t)})}),o.jsx(F.PopoverBackdrop,{className:"dtw-absolute dtw-inset-0 dtw-bg-[var(--panel-popup-bg,var(--panel-secondary-color))] dtw-opacity-50"}),o.jsx(F.PopoverPanel,{className:"dtw-absolute dtw-z-10 dtw-max-w-xs dtw-top-14 dtw-right-0 dtw-transition dtw-duration-100 dtw-ease-out data-[closed]:dtw-translate-x-1/2 data-[closed]:dtw-opacity-0",transition:!0,children:o.jsx("div",{className:"dtw-rounded-l-[var(--panel-radius)] dtw-bg-[var(--panel-popup-bg,var(--panel-secondary-color))] dtw-p-4 dtw-flex dtw-flex-col dtw-gap-y-2.5",children:r})})]})},If=({children:e})=>o.jsx(F.TabPanel,{children:o.jsx(_f,{children:e})}),V={InputGroup:sl,Meta:ol,Settings:If,Panel:Cf,Overlay:Ef,Notification:Sf},Nf=["dtw-bg-transparent","dtw-border-[var(--panel-action-outline-button-border-color,var(--panel-border-color))]","!dtw-text-[color:var(--panel-action-outline-button-color,var(--panel-content-color))]","active:dtw-border-opacity-100","hover:enabled:dtw-border-[var(--panel-action-outline-button-border-hover-color)]"],Pf=["!dtw-text-[color:var(--panel-action-accent-button-color,var(--panel-accent-content-color))]","dtw-bg-gradient-to-r","dtw-from-[var(--panel-action-accent-button-bg-from,var(--panel-accent-from-color))]","dtw-to-[var(--panel-action-accent-button-bg-to,var(--panel-accent-to-color))]","dtw-border-[color:var(--panel-action-accent-button-border-color)]","dtw-border-[length:var(--panel-action-accent-button-border-width)]","hover:enabled:dtw-from-[var(--panel-action-accent-button-hover-bg-from,var(--panel-accent-hover-from-color))]","hover:enabled:dtw-to-[var(--panel-action-accent-button-hover-bg-to,var(--panel-accent-hover-to-color))]"],z=({children:e,onClick:t,highlighted:n=!0,disabled:r=!1,className:s,type:a,loading:i=!1})=>o.jsxs("button",{className:N("dtw-rounded-[var(--panel-input-button-radius,var(--panel-radius))]","dtw-font-medium","dtw-border","dtw-transition-border","dtw-duration-500","dtw-ease-in-out","disabled:dtw-opacity-50","dtw-py-2","dtw-px-5","dtw-w-full",{[Pf.join(" ")]:n,[Nf.join(" ")]:!n,"dtw-flex dtw-items-center dtw-justify-center dtw-gap-1":i},s),onClick:t,disabled:r||i,type:a,children:[i&&o.jsx(Se,{className:"dtw-h-4 dtw-w-4"}),e]}),Ho={GeoBlockAlert:()=>o.jsx(Xe,{type:"error",children:o.jsx("span",{className:"dtw-text-sm",children:"Depositing is geo-blocked."})}),SanctionedAlert:()=>o.jsx(Xe,{type:"error",children:o.jsx("span",{className:"dtw-text-sm",children:"Your address has been found on a sanctions list. Deposits are disabled."})}),AvailableLiquidityAlert:({liquidityAmount:e})=>o.jsxs(Xe,{type:"warning",children:[o.jsx("p",{className:"dtw-text-center",children:e?`${e} withdrawal liquidity`:"Liquidity is running low"}),o.jsx("p",{className:"dtw-text-sm dtw-text-center",children:"Sell a smaller amount"})]}),MaxSupplyReachedAlert:({supplyCapInUsd:e})=>o.jsxs(Xe,{type:"warning",children:[o.jsx("p",{className:"dtw-text-center dtw-text-base",children:"Supply caps reached"}),o.jsxs("p",{className:"dtw-text-sm dtw-text-center",children:["Can only buy ",e," more"]})]}),OnDemandWithdrawAlert:()=>o.jsxs(Xe,{type:"info",children:[o.jsx("p",{className:"dtw-text-center",children:"On demand sell"}),o.jsx("p",{className:"dtw-text-sm dtw-text-[color:var(--panel-secondary-content-color)] dtw-text-center",children:"Sell will happen automatically over time as liquidity is made available"})]})},Vo=m.createContext(Ho),Of=({children:e,config:t})=>{const n=m.useMemo(()=>({...Ho,...t}),[t]);return o.jsx(Vo.Provider,{value:n,children:e})},$=()=>{const e=m.useContext(Vo);if(!e)throw new Error("ComponentContext is used out of Provider");return e},Jt=({children:e,promptText:t})=>{const{ActionButton:n=z}=$();return o.jsxs("div",{children:[o.jsxs("div",{className:"md:dtw-hidden dtw-mb-4 dtw-flex dtw-items-center dtw-justify-center dtw-space-x-1 dtw-text-[var(--panel-warning-content-color)]",children:[o.jsx(oe.ExclamationCircleIcon,{className:"dtw-h-5 dtw-w-5"}),o.jsx("div",{className:"dtw-py-1 dtw-text-xs",children:t})]}),o.jsx(sr,{text:t,children:o.jsx(n,{disabled:!0,children:o.jsxs("div",{className:"dtw-flex dtw-items-center dtw-justify-center dtw-gap-2",children:[o.jsx(oe.LockClosedIcon,{className:"dtw-h-5"}),o.jsx("span",{children:e})]})})})]})},He=({link:e,className:t,children:n,iconClassName:r="dtw-h-5 dtw-w-5",showDefaultIcon:s=!0})=>o.jsxs("a",{className:N("dtw-inline-flex dtw-cursor-pointer dtw-items-center dtw-gap-x-1 dtw-drop-shadow-md hover:dtw-border-themeGray-600 !dtw-text-[color:var(--panel-meta-link-color,var(--panel-content-color))]",t),href:e,target:"_blank",rel:"noreferrer",children:[n,s&&o.jsx(oe.ArrowTopRightOnSquareIcon,{className:r})]}),vn=({defaultEnabled:e=!1,onChange:t,disabled:n=!1,label:r,labelClassName:s,className:a,vertical:i=!1})=>{const[l,c]=m.useState(e);m.useEffect(()=>{c(e)},[e]);const d=p=>{n||(c(p),t?.(p))};return o.jsx(F.Field,{children:o.jsxs("div",{className:N("dtw-flex",a,{"dtw-flex-col dtw-gap-y-0.5":i,"dtw-items-center dtw-justify-between":!i}),children:[r&&o.jsx(F.Label,{className:N("dtw-cursor-pointer dtw-text-xs",s),children:r}),o.jsx(F.Switch,{checked:l,onChange:d,className:N("dtw-p-0 dtw-relative dtw-inline-flex dtw-h-6 dtw-w-11 dtw-flex-shrink-0 dtw-items-center dtw-rounded-full dtw-transition-colors focus:dtw-outline-none",{"!dtw-bg-[color:var(--panel-switch-bg-checked)] !dtw-text-[color:var(--panel-switch-color-checked)]":l,"!dtw-bg-[color:var(--panel-switch-bg)] !dtw-text-[color:var(--panel-switch-color)]":!l,"dtw-pointer-events-none dtw-opacity-50":n}),children:o.jsx("span",{className:N("dtw-inline-block dtw-h-4 dtw-w-4 dtw-transform dtw-rounded-full dtw-transition-transform",{"dtw-translate-x-6 !dtw-bg-[color:var(--panel-switch-thumb-bg-checked)]":l,"dtw-translate-x-1 !dtw-bg-[color:var(--panel-switch-thumb-bg)]":!l})})})]})})},qo=({balance:e,symbol:t})=>o.jsx("span",{title:t,className:"dtw-text-[length:var(--panel-balance-font-size)] dtw-leading-[var(--panel-balance-line-height)] dtw-text-[color:var(--panel-balance-content-color)] dtw-whitespace-nowrap",children:e}),Lf=({onClick:e})=>{const t=E();return o.jsx("button",{className:"dtw-cursor-pointer !dtw-text-[color:var(--panel-input-button-content-color,var(--panel-content-color))] dtw-rounded-[var(--panel-input-button-radius,var(--panel-radius))] !dtw-bg-[var(--panel-input-button-bg,var(--panel-secondary-color))] dtw-border dtw-border-[var(--panel-input-button-border-color,var(--panel-accent-to-color))] dtw-px-[var(--panel-input-button-px)] dtw-text-[length:var(--panel-input-button-font-size,var(--panel-font-size-xs))] dtw-leading-[var(--panel-input-button-line-height,var(--panel-line-height-xs))] hover:dtw-opacity-[var(--panel-action-hover-opacity)] dtw-opacity-[var(--panel-action-opacity)]",onClick:e,children:t.max})},Yo=({style:e,className:t})=>o.jsx("div",{className:N("tw-animate-pulse tw-rounded tw-bg-themeGray-300 tw-bg-opacity-50 tw-h-6",t),style:e}),Ko=e=>o.jsx("img",{...e}),Ae=({symbol:e,address:t,watch:n=!1})=>{const{account:r}=j(),s=y(),a=w.isNativeToken(e,s.chainId),{data:i,queryKey:l}=ur({chainId:s.chainId,address:r,query:{enabled:a&&!!r}}),{data:c,queryKey:d}=_.useReadContracts({contracts:[{address:t,abi:k.erc20Abi,functionName:"balanceOf",chainId:s.chainId,args:[r??u.AddressZero]},{address:t,abi:k.erc20Abi,chainId:s.chainId,functionName:"decimals"}],query:{enabled:!a&&!!r}});return Xt({watch:n&&a,queryKey:l}),Xt({watch:n&&!a,queryKey:d}),a?k.formatUnits(i?.value??BigInt(0),i?.decimals??u.DEFAULT_PRECISION):k.formatUnits(c?.[0]?.result??BigInt(0),c?.[1]?.result??u.DEFAULT_PRECISION)},Tn=({symbol:e,address:t,watch:n=!1})=>{const r=y(),s=w.isNativeToken(e,r.chainId),a=Ae({symbol:e,address:t,watch:n}),{data:i}=Uo({chainId:r.chainId,query:{enabled:s}});return s?w.getNativeTokenInvestableBalance({nativeTokenBalance:a,gasPrice:Number(i?.maxFeePerGas??0),tokenDecimals:u.CHAIN_NATIVE_TOKENS[r.chainId]?.decimals??u.DEFAULT_PRECISION}).toString():a},Nt=()=>{const[{value:e,symbol:t,address:n}]=R(),r=Tn({symbol:t,address:n});return new I(e||0).gt(r??0)},Df=({address:e,chainId:t})=>[{address:w.getContractAddressById("factory",t),abi:u.PoolFactoryAbi,functionName:"isPool",chainId:t,args:[e]}],kf=e=>({isUserDhedgePool:e[0].result}),Pt=()=>{const{account:e=u.AddressZero}=j(),{chainId:t,supportedChainId:n}=De(),r=t??n,{data:s}=_.useReadContracts({contracts:Df({address:e,chainId:r}),query:{enabled:!w.isZeroAddress(e),select:kf}});return!!s?.isUserDhedgePool},Rf=({address:e,chainId:t})=>[{address:e??u.AddressZero,abi:u.PoolLogicAbi,functionName:"poolManagerLogic",chainId:t},{address:w.getContractAddressById("easySwapperV2",t),abi:u.EasySwapperV2Abi,functionName:"customCooldownDepositsWhitelist",args:[e],chainId:t},{address:w.getContractAddressById("easySwapperV2",t),abi:u.EasySwapperV2Abi,functionName:"customCooldown",args:[],chainId:t},{address:w.getContractAddressById("factory",t),chainId:t,abi:u.PoolFactoryAbi,functionName:"getAssetGuard",args:[w.getContractAddressById("aaveLendingPoolV3",t)]}],jf=e=>({poolManagerLogic:e[0].result,isCustomCooldownDepositAllowed:e[1].result,customCooldown:e[2].result,aaveAssetGuardAddress:e[3].result}),Ot=({address:e,chainId:t})=>_.useReadContracts({contracts:Rf({address:e,chainId:t}),query:{enabled:!!e&&!w.isZeroAddress(e),staleTime:1/0,select:jf}}),Nr=({address:e,chainId:t})=>{const[n]=Ge(),{data:{poolManagerLogic:r}={}}=Ot({address:e,chainId:t});return n.managerLogicAddress??r},Mf=({address:e,chainId:t,account:n})=>[{address:e,abi:u.PoolManagerLogicAbi,functionName:"getFeeIncreaseInfo",chainId:t},{address:e,abi:u.PoolManagerLogicAbi,functionName:"minDepositUSD",chainId:t},{address:e,abi:u.PoolManagerLogicAbi,functionName:"isMemberAllowed",args:[n??u.AddressZero],chainId:t},{address:e,abi:u.PoolManagerLogicAbi,functionName:"maxSupplyCap",args:[],chainId:t}],Bf=e=>({getFeeIncreaseInfo:e[0].result,minDepositUSD:e[1].result,isMemberAllowed:e[2].result,maxSupplyCapD18:e[3].result}),Lt=({address:e,chainId:t})=>{const n=Nr({address:e,chainId:t}),{account:r=u.AddressZero}=j(),s=_.useReadContracts({contracts:Mf({address:n??u.AddressZero,chainId:t,account:r}),query:{enabled:!!n&&!w.isZeroAddress(n),staleTime:1/0,select:Bf}});return Ar({error:s.error,status:s.status}),s},$f=({chainId:e,address:t})=>[{address:t,abi:u.PoolManagerLogicAbi,functionName:"getFundComposition",chainId:e},{address:t,abi:u.PoolManagerLogicAbi,functionName:"getSupportedAssets",chainId:e}],Uf=e=>({getFundComposition:e[0].result,getSupportedAssets:e[1].result?.map(({asset:t})=>t)}),Dt=({address:e,chainId:t})=>{const n=Nr({address:e,chainId:t});return _.useReadContracts({contracts:$f({address:n??u.AddressZero,chainId:t}),query:{enabled:!!n&&!w.isZeroAddress(n),select:Uf,refetchInterval:u.DEFAULT_POLLING_INTERVAL}})};function Ff(e,t,n){var r=-1,s=e.length;t<0&&(t=-t>s?0:s+t),n=n>s?s:n,n<0&&(n+=s),s=t>n?0:n-t>>>0,t>>>=0;for(var a=Array(s);++r<s;)a[r]=e[r+t];return a}var Wf=Ff,Gf=pr,zf=So,Hf=gr,Vf=It;function qf(e,t,n){if(!Vf(n))return!1;var r=typeof t;return(r=="number"?zf(n)&&Hf(t,n.length):r=="string"&&t in n)?Gf(n[t],e):!1}var Yf=qf,Kf=/\s/;function Qf(e){for(var t=e.length;t--&&Kf.test(e.charAt(t)););return t}var Zf=Qf,Xf=Zf,Jf=/^\s+/;function ev(e){return e&&e.slice(0,Xf(e)+1).replace(Jf,"")}var tv=ev,nv=tv,ys=It,rv=pn,Ss=NaN,sv=/^[-+]0x[0-9a-f]+$/i,ov=/^0b[01]+$/i,av=/^0o[0-7]+$/i,iv=parseInt;function lv(e){if(typeof e=="number")return e;if(rv(e))return Ss;if(ys(e)){var t=typeof e.valueOf=="function"?e.valueOf():e;e=ys(t)?t+"":t}if(typeof e!="string")return e===0?e:+e;e=nv(e);var n=ov.test(e);return n||av.test(e)?iv(e.slice(2),n?2:8):sv.test(e)?Ss:+e}var cv=lv,dv=cv,Es=1/0,uv=17976931348623157e292;function pv(e){if(!e)return e===0?e:0;if(e=dv(e),e===Es||e===-Es){var t=e<0?-1:1;return t*uv}return e===e?e:0}var mv=pv,wv=mv;function hv(e){var t=wv(e),n=t%1;return t===t?n?t-n:t:0}var gv=hv,fv=Wf,vv=Yf,Tv=gv,bv=Math.ceil,Av=Math.max;function xv(e,t,n){(n?vv(e,t,n):t===void 0)?t=1:t=Av(Tv(t),0);var r=e==null?0:e.length;if(!r||t<1)return[];for(var s=0,a=0,i=Array(bv(r/t));s<r;)i[a++]=fv(e,s,s+=t);return i}var yv=xv;const Qo=on(yv),Zo=({account:e,chainId:t,address:n})=>[{address:n,abi:u.PoolLogicAbi,functionName:"balanceOf",chainId:t,args:[e]},{address:n,abi:u.PoolLogicAbi,functionName:"tokenPrice",chainId:t,args:[]}],Sv=e=>e.flatMap(Zo),Ev=Zo({account:u.AddressZero,chainId:Z.optimism.id,address:u.AddressZero}).length,Xo=({account:e})=>{const{chainId:t}=De(),n=tt();return _.useReadContracts({contracts:Sv(n.map(r=>({...r,account:e}))),query:{select:r=>Qo(r,Ev).reduce((s,[a,i],l)=>{const c=n?.[l]?.address??u.AddressZero;return{...s,[c]:{balance:a?.result?.toString(),tokenPrice:i?.result?.toString()}}},{}),placeholderData:(r,s)=>{if(s?.queryKey?.[1].chainId!==t)return r},refetchInterval:u.DEFAULT_POLLING_INTERVAL,enabled:!w.isZeroAddress(e)}})},Cv=({chainId:e,address:t})=>[{address:t,abi:u.PoolLogicAbi,functionName:"tokenPrice",chainId:e,args:[]},{address:t,abi:u.PoolLogicAbi,functionName:"getFundSummary",chainId:e}],_v=([e,t])=>{const n=t?.result;return{tokenPrice:e?.result!==BigInt(0)?e?.result?.toString():u.DEFAULT_VAULT_TOKEN_PRICE,totalValueD18:n?.totalFundValue?.toString(),totalSupplyD18:n?.totalSupply?.toString(),isPrivateVault:n?.privatePool,performanceFee:n?.performanceFeeNumerator?.toString(),streamingFee:n?.managerFeeNumerator?.toString(),entryFee:n?.entryFeeNumerator?.toString(),exitFee:n?.exitFeeNumerator?.toString(),managerAddress:n?.manager?.toString()}},ce=({address:e,chainId:t,refetchInterval:n=u.SHORTEN_POLLING_INTERVAL,enabled:r=!0})=>_.useReadContracts({contracts:Cv({address:e,chainId:t}),query:{enabled:r&&!!e&&!w.isZeroAddress(e),refetchInterval:n,select:_v}}),Jo=({address:e,chainId:t})=>{const{account:n}=j(),{data:{managerAddress:r}={managerAddress:u.AddressZero}}=ce({address:e,chainId:t}),{data:{isMemberAllowed:s=!1}={}}=Lt({address:e,chainId:t});return n?s||w.isEqualAddress(n,r):!1},ea=({address:e,chainId:t})=>{const[n]=Ge(),r=m.useMemo(()=>n.poolCompositions?.reduce((p,{tokenAddress:g,tokenName:h,precision:f,asset:v})=>({...p,[g.toLowerCase()]:{tokenName:h,precision:f,asset:v}}),{}),[n.poolCompositions]),{data:{getFundComposition:[s,a,i]=[]}={},isFetched:l}=Dt({address:e,chainId:t}),c=m.useMemo(()=>s?.map(({asset:p})=>p)??[],[s]),{data:d}=_.useReadContracts({contracts:c.flatMap(p=>[{address:p,abi:k.erc20Abi,functionName:"symbol",chainId:t},{address:p,abi:k.erc20Abi,functionName:"decimals",chainId:t}]),query:{enabled:l&&c?.length>0&&!!t&&!c.every(p=>r?.[p.toLowerCase()]),staleTime:1/0}});return wn(d),m.useMemo(()=>{if(!s?.length)return[];const p=Qo(d,2);return s.map(({asset:g,isDeposit:h},f)=>{const v=g.toLowerCase(),[T,b]=p[f]??[],A=u.BRIDGED_TOKENS_SYMBOLS[v.toLowerCase()]??T?.result?.toString()??r?.[v]?.tokenName??w.shortenAddress(v);return{tokenAddress:v,isDeposit:h,rate:i?.[f]?.toString()??"0",amount:a?.[f]?.toString()??"0",tokenName:A,precision:b?.result?Number(b.result):r?.[v]?.precision??u.DEFAULT_PRECISION,asset:{iconSymbols:r?.[v]?.asset.iconSymbols??[A]}}})},[a,i,r,s,d])},Re=({address:e,chainId:t})=>{const[n]=Ge(),r=ea({address:e,chainId:t});return r.length?r:n.poolCompositions??[]},Iv=e=>{const t=e?.[0]?.toString()??"",n=e?.[1]?.toString()??"",r=e?.[2]?.toString()??"",s=e?.[3]?.toString()??"",a=e?.[4]?.toString()??"";return{announcedPerformanceFee:t,announcedStreamingFee:n,announcedEntryFee:r,announcedExitFee:s,announcedTimestamp:a}},Pr=(e,t)=>{const{data:{getFeeIncreaseInfo:n,minDepositUSD:r}={}}=Lt({address:e,chainId:t});return{...Iv(n),minDepositUSD:+k.formatUnits(r??BigInt(0),u.DEFAULT_PRECISION)}},Nv=({composition:e,vaultTokensAmount:t,totalSupplyD18:n})=>e.reduce((r,s)=>{const a=r.find(({tokenName:i})=>i===s.tokenName);if(a){const i=new I(a.amount).shiftedBy(-a.precision),l=new I(s.amount).shiftedBy(-s.precision);return a.amount=i.plus(l).shiftedBy(a.precision).toFixed(0),r}return[...r,s]},[]).map(r=>{const s=w.getPoolFraction(r.amount,t,n,r.precision),a=w.getPoolFraction(new I(r.rate).multipliedBy(r.amount).shiftedBy(-r.precision).toFixed(),t,n);return{...r,fraction:s.toFixed(w.getConventionalTokenPriceDecimals(s)),fractionUsd:w.formatToUsd({value:a}),fractionUsdNumber:a}}).filter(({amount:r})=>r!=="0").sort((r,s)=>s.fractionUsdNumber-r.fractionUsdNumber),ta=({address:e,vaultTokensAmount:t,chainId:n})=>{const r=Re({address:e,chainId:n}),{data:{totalSupplyD18:s}={}}=ce({address:e,chainId:n});return m.useMemo(()=>s?Nv({composition:r,vaultTokensAmount:w.shiftBy(t||0),totalSupplyD18:s}):[],[t,r,s])},ue=({address:e,chainId:t,formatter:n=k.formatEther})=>{const[r]=Ge(),{data:s}=ce({address:e,chainId:t});return n(BigInt(s?.tokenPrice??r?.tokenPrice??"0"))},bn=({address:e,chainId:t})=>{const[n]=Ge(),r=w.isEqualAddress(n.address,e)?n:null,{data:{performanceFee:s,streamingFee:a,entryFee:i,exitFee:l}={}}=ce({address:e,chainId:t}),c=i??r?.entryFeeNumerator??"0",d=l??r?.exitFeeNumerator??"0";return m.useMemo(()=>{const p=s??r?.performanceFeeNumerator??"0",g=a??r?.streamingFeeNumerator??"0";return{performanceFee:w.formatNumeratorToPercentage(p,u.MANAGER_FEE_DENOMINATOR),performanceFeeNumber:w.getPercent(+p,u.MANAGER_FEE_DENOMINATOR),streamingFee:w.formatNumeratorToPercentage(g,u.MANAGER_FEE_DENOMINATOR,2),streamingFeeNumber:w.getPercent(+g,u.MANAGER_FEE_DENOMINATOR),entryFee:w.formatNumeratorToPercentage(c,u.MANAGER_FEE_DENOMINATOR,2),entryFeeNumber:w.getPercent(+c,u.MANAGER_FEE_DENOMINATOR),exitFee:w.formatNumeratorToPercentage(d,u.MANAGER_FEE_DENOMINATOR,2),exitFeeNumber:w.getPercent(+d,u.MANAGER_FEE_DENOMINATOR)}},[s,r?.performanceFeeNumerator,r?.streamingFeeNumerator,a,c,d])},na=()=>{const{address:e,chainId:t}=y(),{queryKey:n}=Dt({address:e,chainId:t});Xt({queryKey:n})},Wt=Z.base.id,Pv=e=>{const t=w.getContractAddressById("flatcoinPointsModule",Wt);return[{address:t,chainId:Wt,abi:u.FlatcoinPointsModuleAbi,functionName:"lockedBalance",args:[e]},{address:t,chainId:Wt,abi:u.FlatcoinPointsModuleAbi,functionName:"getUnlockTax",args:[e]},{address:t,chainId:Wt,abi:u.FlatcoinPointsModuleAbi,functionName:"unlockTime",args:[e]}]},ra=({enabled:e,address:t})=>_.useReadContracts({contracts:Pv(t),query:{enabled:e,select:n=>{const[r,s,a]=n;return{lockedVaultPointsBalance:r?.result,unlockTaxInPercents:s?.result,unlockTime:a?.result}}}}),Ov=[...u.FLAT_MONEY_UNIT_ADDRESSES],Or=({address:e,chainId:t})=>{const n=Re({address:e,chainId:t}),r=w.getContractAddressById("factory",t);return _.useReadContracts({contracts:n.map(({tokenAddress:s})=>({address:r,abi:u.PoolFactoryAbi,functionName:"isPool",chainId:t,args:[s]})),query:{select:s=>n.some(({amount:a,tokenAddress:i},l)=>(!!s[l]?.result||Ov.some(p=>w.isEqualAddress(p,i)))&&a!=="0"),staleTime:1/0}})},Lv=[[30*1e3,5e3],[60*1e3,1e4],[5*60*1e3,2e4]],Dv=e=>{if(!e)return!1;for(const[t,n]of Lv)if(e<=t)return n;return u.EXTENDED_POLLING_INTERVAL},$n=e=>Number(e?.toString()??"0")*1e3,kv=({address:e,chainId:t})=>{const{account:n}=j();return _.useReadContract({address:e,abi:u.PoolLogicAbi,functionName:"getExitRemainingCooldown",chainId:t,args:[n??u.AddressZero],query:{enabled:!!n,select:$n,refetchInterval:r=>Dv($n(r.state?.data)),refetchOnWindowFocus:r=>$n(r.state?.data)>0}})};function Rv(e,t,n){if(!e||!t)return{balanceInUsd:"",balanceInUsdNumber:0};const r=+e*w.normalizeNumber(t);return{balanceInUsd:w.formatToUsd({value:r,maximumFractionDigits:n}),balanceInUsdNumber:r}}const sa=(e,t)=>w.nonZeroBigInt(e)?{rawBalance:e?.toString()??"",...Rv(k.formatUnits(e,u.DEFAULT_PRECISION$1),t?.toString())}:{rawBalance:"",balanceInUsd:"",balanceInUsdNumber:0},oa=({account:e}={})=>{const{account:t}=j(),n=e??t??u.AddressZero,{data:r}=Xo({account:n});return m.useMemo(()=>w.isZeroAddress(n)?{}:Object.entries(r??{}).reduce((s,[a,i])=>{const l=sa(BigInt(i.balance??"0"),BigInt(i.tokenPrice??"0"));return l.balanceInUsdNumber>0?{...s,[a]:l}:s},{}),[n,r])},aa=({account:e,chainId:t,address:n})=>{const{data:r,isFetched:s}=ce({address:n,chainId:t}),{poolFallbackData:a}=te(),i=w.isEqualAddress(a.address,n)?a.tokenPrice??"0":"0";return _.useReadContract({address:e?n:void 0,abi:u.PoolLogicAbi,functionName:"balanceOf",chainId:t,args:[e],query:{enabled:!w.isZeroAddress(e)&&s,select:l=>sa(l,BigInt(r?.tokenPrice??i))}})},jv=e=>Math.ceil(w.normalizeNumber(e)),ia=({address:e,chainId:t,select:n=jv})=>{const{data:{totalValueD18:r}={}}=ce({address:e,chainId:t}),{data:{maxSupplyCapD18:s}={}}=Lt({address:e,chainId:t});return _.useReadContract({address:e,chainId:t,abi:u.PoolLogicAbi,functionName:"calculateAvailableManagerFee",args:[BigInt(r??"0")],query:{enabled:!!r&&!!s&&s>0n,select:n}})},la=({address:e,chainId:t})=>{const{data:{maxSupplyCapD18:n}={}}=Lt({address:e,chainId:t}),{data:{totalSupplyD18:r}={}}=ce({address:e,chainId:t}),s=ue({address:e,chainId:t}),{data:a=0}=ia({address:e,chainId:t});if(!n||n===0n)return null;const i=Math.ceil(w.normalizeNumber(r??0)),l=w.normalizeNumber(n),c=Math.max(0,l-a),d=Math.max(0,c-i),p=d*Number(s);return{totalSupplyNumber:i,maxSupplyCapNumber:c,remainingSupplyCapNumber:d,remainingSupplyCapInUsd:p}},Mv=({address:e,chainId:t})=>{const{data:{isPrivateVault:n}={isPrivateVault:!1}}=ce({address:e,chainId:t}),s=tt().find(i=>w.isEqualAddress(e,i.address)&&i.chainId===t),a=!!(s?.maintenance||s?.maintenanceDeposits);return n||a},Bv=e=>ce(e),ca=({asset:e,chainId:t})=>{const n=w.getContractAddressById("factory",t),{data:r}=_.useReadContract({address:n,abi:u.PoolFactoryAbi,functionName:"getAssetGuard",args:e?[e]:void 0,chainId:t,query:{enabled:!!e&&!w.isZeroAddress(n),staleTime:1/0}});return r},$v=e=>{const t=_.useConfig(),n=fe.useQueryClient();return m.useCallback(async r=>{const s=w.getContractAddressById("factory",e);if(!w.isZeroAddress(s))return n.fetchQuery({...Hs.readContractQueryOptions(t,{address:s,abi:u.PoolFactoryAbi,functionName:"getAssetGuard",args:[r],chainId:e}),staleTime:1/0})},[e,t,n])},Uv=({address:e,chainId:t,enabled:n=!0})=>{const r=Re({address:e,chainId:t}),s=w.getContractAddressById("factory",t),a=n&&!w.isZeroAddress(s),{data:i}=_.useReadContracts({contracts:r.map(({tokenAddress:c})=>({address:s,abi:u.PoolFactoryAbi,functionName:"getAssetType",args:[c],chainId:t})),query:{enabled:a&&r.length>0,staleTime:1/0}});return{assets:m.useMemo(()=>r.map((c,d)=>{const p=i?.[d]?.result;return{...c,assetType:p===void 0?void 0:Number(p)}}),[r,i]),isReady:!a||i!==void 0}},Fv=[],je=({address:e,chainId:t})=>{const{assets:n,isReady:r}=Uv({address:e,chainId:t,enabled:t===Z.mainnet.id}),s=m.useMemo(()=>{const i=n.filter(l=>l.assetType===pe.ONDO_ASSET_TYPE).map(({tokenAddress:l,tokenName:c})=>({address:l,symbol:c}));return i.length?i:Fv},[n]),a=ca({asset:s[0]?.address,chainId:t});return{assets:s,assetGuardAddress:a,hasAssets:s.length>0,isReady:r}},Wv=BigInt(Math.round(u.ONDO_PRICE_MAX_DEVIATION_PERCENT*100)),Gv=e=>{if(e)try{return k.parseUnits(e,u.DEFAULT_PRECISION)}catch{return}},zv=({address:e,chainId:t,enabled:n=!0})=>{const{assets:r}=je({address:e,chainId:t}),s=w.getContractAddressById("ondoPriceOracle",t),a=m.useMemo(()=>r.map(b=>b.address),[r]),i=t===Z.mainnet.id,l=!!Ks()?.api.getPricesUrl,c=a.length>0,d=n&&i&&c&&l&&!w.isZeroAddress(s),{data:p,isFetching:g,isError:h}=_.useReadContracts({contracts:a.map(b=>({address:s,abi:u.OndoPriceOracleAbi,functionName:"getPrice",args:[b],chainId:t})),query:{enabled:d,refetchOnMount:"always"}}),{data:f,isFetching:v,isError:T}=fe.useQuery({queryKey:["ondo-prices",t,a],queryFn:()=>gl({chainId:t,addresses:a}),enabled:d,refetchOnMount:"always"});return m.useMemo(()=>{if(!n||!i||!c)return{needsPriceUpdate:!1,isChecking:!1};if(!l||w.isZeroAddress(s))return{needsPriceUpdate:!0,isChecking:!1};if(h||T)return{needsPriceUpdate:!0,isChecking:!1};if(g||v||!p||!f)return{needsPriceUpdate:void 0,isChecking:!0};const b=f.prices.some(S=>!!S.address),A=(S,L)=>b?f.prices.find(O=>O.address&&w.isEqualAddress(O.address,S))?.price:f.prices.length===a.length?f.prices[L]?.price:void 0;return{needsPriceUpdate:a.some((S,L)=>{const O=p[L],M=O?.status==="success"?O.result[0]:void 0,P=Gv(A(S,L));return!M||M<=0n||!P||P<=0n?!0:(M>P?M-P:P-M)*10000n>Wv*P}),isChecking:!1}},[n,i,c,l,s,h,T,g,v,p,f,a])},pt=({address:e,chainId:t})=>{const n=Re({address:e,chainId:t}),r=n.some(i=>w.isEqualAddress(i.tokenAddress,u.DYTM_OFFICE_ADDRESS_MAINNET)),s=r?u.DYTM_OFFICE_ADDRESS_MAINNET:void 0,a=ca({asset:s,chainId:t});return{dytmOfficeAddress:s,assetGuardAddress:a,hasAssets:r,isReady:t!==Z.mainnet.id||n.length>0}},Hv=()=>{const{address:e,symbol:t,chainId:n}=y(),{account:r=u.AddressZero}=j(),s=Ae({symbol:t,address:e}),{data:{totalSupplyD18:a}={}}=ce({address:e,chainId:n}),l=w.isFmpAirdropVaultAddress(e)&&!w.isEqualAddress(r,u.AddressZero),{data:{lockedVaultPointsBalance:c,unlockTaxInPercents:d,unlockTime:p}={},isLoading:g}=ra({enabled:l,address:e});return m.useMemo(()=>{const h=a?new I.BigNumber(s).shiftedBy(u.DEFAULT_PRECISION).dividedBy(a):new I.BigNumber(0),f=c?new I.BigNumber(c.toString()).multipliedBy(h).shiftedBy(-u.DEFAULT_PRECISION):new I.BigNumber(0),v=d?f.multipliedBy(d.toString()).shiftedBy(-u.DEFAULT_PRECISION):new I.BigNumber(0),T=p?Number(p)*1e3:null;return{userPortionOfLockedPointsBalance:f.toFixed(),unlockTaxAmount:v.toFixed(),vestedPointsAmount:f.minus(v).toFixed(),unlockTimestamp:T,unlockDate:T?Vt.format(T,"PPP"):null,isLoading:g}},[a,s,c,d,p,g])},Lr=()=>{const{depositQuoteDiffErrorThreshold:e}=q(),[t,n]=m.useState(!1),[{slippage:r,minSlippage:s}]=X(),a=r==="auto"?s??0:r,l=!Nt()&&a>e&&!t,c=m.useCallback(()=>{n(!0)},[]);return{requiresHighSlippageConfirm:l,confirmHighSlippage:c,slippageToBeUsed:a}},kt=e=>{const{depositQuoteDiffErrorThreshold:t,depositQuoteDiffWarningThreshold:n}=q(),r=Math.abs(e);return r>t?H.ERROR:r>n?H.WARNING:H.DEFAULT};var Vv=st,qv=ct,Yv="[object Number]";function Kv(e){return typeof e=="number"||qv(e)&&Vv(e)==Yv}var Qv=Kv;const Zv=on(Qv),da=({tradingType:e,slippage:t,minSlippage:n})=>{const r=_r();return t!=="auto"?t.toString():Zv(n)?n.toString():e==="deposit"?u.DEFAULT_DEPOSIT_SLIPPAGE.toString():r.toString()},Xv=async(e,t=Sr)=>{try{return(await import(`@dhedge/crypto-assets/icons/${e.toLowerCase()}.png`))?.default?.src??t(e)}catch{return t(e)}},Jv=(e=[])=>{const{getFallbackIconPath:t}=q(),[n,r]=m.useState([]),[s,a]=m.useState([]);return m.useEffect(()=>{if(e.every(l=>s.includes(l)))return;(async()=>{const l=await Promise.all(e.map(c=>Xv(c,t)));r(l),a(e)})()},[e,s,t]),n},ua=()=>{const{pricingAsset:e,symbol:t,chainId:n,address:r}=y(),{minLimitOrderValue:s}=q(),a=Ae({symbol:t,address:r}),i=ue({address:r,chainId:n});return Number(a)*Number(i)>=s&&!!e},eT=(e,t)=>{switch(t.type){case"MERGE_OVERLAY":return{...e,[t.payload.type]:{...e[t.payload.type],isOpen:t.payload.isOpen,isPending:t.payload.isPending??!1,onConfirm:t.payload.onConfirm??e[t.payload.type].onConfirm,meta:t.payload.meta??e[t.payload.type].meta}};default:return e}},pa=Object.values(G).reduce((e,t)=>({...e,[t]:{isOpen:!1,isPending:!1}}),{}),tT=()=>m.useReducer(eT,pa),ma=m.createContext(pa),wa=m.createContext(()=>{}),ha=()=>{const e=m.useContext(ma);if(!e)throw new Error("OverlayStateContext is used out of Provider");return e},we=()=>{const e=m.useContext(wa);if(!e)throw new Error("OverlayDispatchContext is used out of Provider");return e},ae=({type:e})=>{const t=ha(),n=we(),r=m.useCallback(()=>{n({type:"MERGE_OVERLAY",payload:{type:e,isOpen:!1,isPending:!1}})},[n,e]),{onConfirm:s,isPending:a,meta:i}=t[e],l=d=>{n({type:"MERGE_OVERLAY",payload:{type:e,isOpen:!0,isPending:d}})};return{handleReject:r,handleConfirm:async()=>{await s?.(l),r()},isPending:a,meta:i}},Ve=()=>{const e=we(),t=m.useCallback(r=>{e({type:"MERGE_OVERLAY",payload:{type:G.ERROR_NOTIFICATION,isOpen:!0,meta:{error:r}}})},[e]),n=m.useCallback(()=>{e({type:"MERGE_OVERLAY",payload:{type:G.ERROR_NOTIFICATION,isOpen:!1,meta:{error:""}}})},[e]);return{showError:t,closeError:n}},ga=()=>{const e=we();return()=>{Object.values(G).forEach(t=>{e({type:"MERGE_OVERLAY",payload:{type:t,isOpen:!1,isPending:!1}})})}},nT=({children:e})=>{const[t,n]=tT(),[{isOpen:r}]=Q();return m.useEffect(()=>{r&&!t.TRADING.isOpen&&n({type:"MERGE_OVERLAY",payload:{type:G.TRADING,isOpen:r}})},[r,t.TRADING.isOpen,n]),m.useEffect(()=>{!r&&t.TRADING.isOpen&&n({type:"MERGE_OVERLAY",payload:{type:G.TRADING,isOpen:r}})},[r,t.TRADING.isOpen,n]),o.jsx(wa.Provider,{value:n,children:o.jsx(ma.Provider,{value:t,children:e})})},rT=()=>{const e=ze(),t=we(),n=ua(),r=m.useCallback(()=>{n&&(t({type:"MERGE_OVERLAY",payload:{type:G.LIMIT_SELLS,isOpen:!0}}),e?.(u.TRADING_PANEL_LOG_EVENT.OPEN_LIMIT_SELL_VIEW,{[u.TRADING_LOG_EVENT_PARAM.SOURCE.NAME]:"overlay"}))},[t,n,e]);return{displayLimitSellOverlay:n,openLimitSellOverlay:r}},An="0x000000000022D473030F116dDEE9F6B43aC78BA3",sT=100,oT=28,aT=1,iT=500,Dr=2,lT=1,cT=5,dT=2,kr={[Z.arbitrum.id]:"0x40F2978D87348250F085ACEbd680B387842a69eF"},fa={PermitWitnessTransferFrom:[{name:"permitted",type:"TokenPermissions"},{name:"spender",type:"address"},{name:"nonce",type:"uint256"},{name:"deadline",type:"uint256"},{name:"witness",type:"LimitBuyOrder"}],TokenPermissions:[{name:"token",type:"address"},{name:"amount",type:"uint256"}],LimitBuyOrder:[{name:"owner",type:"address"},{name:"targetVault",type:"address"},{name:"pricingAsset",type:"address"},{name:"minTriggerPriceD18",type:"uint256"},{name:"maxTriggerPriceD18",type:"uint256"},{name:"slippageToleranceBps",type:"uint16"}]},uT=()=>{const{pricingAsset:e,chainId:t,maintenance:n,maintenanceDeposits:r}=y(),{limitBuyConfig:s}=q(),a=!!(n||r);return!!e&&!!s&&!!kr[t]&&!a},pT=()=>{const e=ze(),t=we(),n=uT(),r=m.useCallback(()=>{n&&(t({type:"MERGE_OVERLAY",payload:{type:G.LIMIT_BUYS,isOpen:!0}}),e?.(u.TRADING_PANEL_LOG_EVENT.OPEN_LIMIT_BUY_VIEW,{[u.TRADING_LOG_EVENT_PARAM.SOURCE.NAME]:"overlay"}))},[t,n,e]);return{displayLimitBuyOverlay:n,openLimitBuyOverlay:r}},va=()=>{const e=E(),[{status:t}]=Q(),n=m.useMemo(()=>({Wallet:e.sendingOrderToWallet,None:e.settingUpTx,Mining:e.miningTx,Success:e.success}),[e]);return{status:t,statusLabel:n[t]}},xn=e=>{const t=E(),{status:n}=va();if(!(!e||n==="Success"))return n==="Mining"?t.miningTx:t.sendingOrderToWallet},mT=()=>{const{chainId:e}=y(),{disableHyperEvmWarning:t}=q();return e===Z.hyperEvm.id&&!t},wT=(e,t)=>e===0?`dtw-z-${(t-1)*10}`:`dtw--ml-2 dtw-z-${(t-e-1)*10}`,hT=e=>{switch(e){case"xs":return{height:"!dtw-h-3 sm:!dtw-h-4 ",width:"!dtw-w-3 sm:!dtw-w-4",diameter:16};case"sm":return{height:"!dtw-h-4 sm:!dtw-h-5 ",width:"!dtw-w-4 sm:!dtw-w-5",diameter:20};case"m":return{height:"!dtw-h-5 sm:!dtw-h-6 ",width:"!dtw-w-5 sm:!dtw-w-6",diameter:24};case"lg":return{height:"!dtw-h-7 sm:!dtw-h-8 ",width:"!dtw-w-7 sm:!dtw-w-8",diameter:32};case"xl":return{height:"!dtw-h-9 sm:!dtw-h-10 ",width:"!dtw-w-9 sm:!dtw-w-10",diameter:36};case"2xl":return{height:"!dtw-h-16 sm:!dtw-h-18",width:"!dtw-w-16 sm:!dtw-w-18",diameter:72}}},xe=({symbols:e,size:t="m",className:n=""})=>{const{Image:r=Ko,customIcons:s}=$(),a=e.join(""),[i,l]=m.useState({[a]:!1}),{height:c,width:d,diameter:p}=hT(t),g=e.length===1?s?.[e[0]]:void 0,h=Jv(g?[]:e);if(g)return o.jsx(g,{className:N(c,d,n)});if(!h?.length||!h[0]||i[a])return null;const f=()=>l(v=>({...v,[a]:!0}));return h.length===1?o.jsx(r,{src:h[0],alt:`${e[0]} icon`,className:N(c,d,n),width:p,height:p,onError:f}):o.jsx("span",{className:`dtw-flex-no-wrap dtw-z-0 dtw-flex ${c} ${n}`,children:h.map((v,T)=>o.jsx(r,{src:v,alt:`${e[T]} icon`,className:N("dtw-inline-block dtw-overflow-visible dtw-rounded-full",d,c,wT(T,e.length)),width:p,height:p,onError:f},T))})},Rt=({symbol:e,iconSymbols:t,size:n,symbolClasses:r="dtw-text-sm dtw-font-medium",CustomIcon:s,customTitle:a,className:i})=>{const l=E(),c=a||(e===u.MULTI_ASSET_TOKEN.symbol?l.allAssets:e);return o.jsxs("div",{className:N("dtw-flex dtw-w-full dtw-items-center dtw-space-x-1.5",i),children:[s??o.jsx(xe,{size:n,symbols:t,className:"dtw-flex-shrink-0"}),o.jsx("div",{className:r,title:c,children:c||o.jsx(Yo,{className:"dtw-w-[70px]"})})]})},Xe=({className:e,children:t,type:n="error"})=>o.jsx("div",{className:N("dtw-rounded-[var(--panel-radius)] dtw-p-3",{"dtw-bg-[var(--panel-alert-error-bg)] dtw-text-[var(--panel-alert-error-color)]":n==="error","dtw-bg-[var(--panel-alert-warning-bg)] dtw-text-[var(--panel-alert-warning-color)]":n==="warning","dtw-bg-[var(--panel-alert-info-bg)] dtw-text-[var(--panel-alert-info-color)]":n==="info"},e),children:t}),Ue=({className:e})=>o.jsx("div",{className:N("dtw-w-full dtw-h-[1px] dtw-bg-[var(--panel-divider-color)] dtw-shrink-0",e)}),gT=()=>{const[e]=ve(),[t,n]=X(),[r,s]=m.useState(!1),a=t.slippage!=="auto";return{settings:t,tradingType:e,isCustomSlippage:a,invalidSlippage:r,onDefaultSlippageSelect:()=>{n({slippage:"auto"})},onCustomSlippageSelect:c=>{const d=c.target.value,p=+d<0||+d>100;s(p);let g=t.slippage;p||d.trim().length===0&&a?g="auto":d.trim().length>0&&(g=+d),n({slippage:g})}}},Cs=({selected:e=!1,children:t,className:n,onClick:r})=>o.jsx("div",{className:N("dtw-cursor-pointer dtw-rounded-[var(--panel-input-button-radius,var(--panel-radius))] dtw-py-1 dtw-text-center dtw-text-sm",n,{"dtw-bg-[color:var(--panel-switch-bg-checked)] !dtw-text-[color:var(--panel-switch-color-checked)]":e,"dtw-bg-[color:var(--panel-switch-bg)] dtw-text-white hover:dtw-opacity-80 !dtw-text-[color:var(--panel-switch-color)]":!e}),onClick:r,children:t}),fT=0,vT=100,Ta=()=>{const e=E(),{settings:t,tradingType:n,isCustomSlippage:r,invalidSlippage:s,onDefaultSlippageSelect:a,onCustomSlippageSelect:i}=gT(),l=da({tradingType:n,slippage:t.slippage,minSlippage:t.minSlippage});return o.jsxs("div",{className:"dtw-flex dtw-items-stretch dtw-gap-x-3",children:[o.jsx(Cs,{selected:!r,className:"dtw-w-14",onClick:a,children:e.auto}),o.jsxs("div",{className:"dtw-flex dtw-items-center dtw-gap-x-1 dtw-flex-1",children:[o.jsx(Cs,{selected:r,className:"dtw-w-14",children:o.jsx("input",{className:N("dtw-w-full dtw-bg-transparent dtw-px-1.5 dtw-outline-none focus:dtw-outline-none dtw-text-center",{"dtw-text-red-600":s}),type:"number",min:fT,max:vT,onChange:i,placeholder:l,defaultValue:r?t.slippage.toString():""})}),o.jsx("span",{children:"%"})]})]})};function yn(e,t,n){const r=u.ALL_SUPPORTED_NETWORKS[n??Z.arbitrum.id]?.blockExplorers?.default?.url;if(r)switch(t){case"transaction":return`${r}/tx/${e}`;default:return`${r}/address/${e}`}}const ba=()=>{const[e,t]=ne(),n=Q()[1],r=so(),s=oo(),[a]=e,i=a?.txHash,l=a?.action,c=l==="approve",d=a?.chainId,p=dr(),{invalidateTradingQueries:g,invalidateAllowanceQueries:h}=ut(),{data:f,error:v,refetch:T}=_.useWaitForTransactionReceipt({hash:i,chainId:d,pollingInterval:u.EXTREMELY_SHORT_POLLING_INTERVAL,query:{enabled:!!i}});m.useEffect(()=>{if(!f)return;const b=()=>{const x=f.transactionHash;if(x){const S=yn(x,"transaction",d);l!=="update_ondo_prices"&&(n({link:S,status:"Success",action:l}),s?.(f,l,S)),t({type:"remove",status:"success",txHash:x})}c?h():g()},A=w.getSettleDelay({chainId:d,action:l,isRabbyWallet:p});if(A>0){const x=setTimeout(b,A);return()=>clearTimeout(x)}else b()},[f,c,d,l,p,s,t,n,h,g]),m.useEffect(()=>{if(v){if(w.shouldSwallowMainnetPollError({chainId:d,txHash:i,error:v})){T();return}n({isOpen:!1,status:"None",link:"",action:l,sendTokens:null,receiveTokens:null}),t({type:"remove",status:"fail"}),r?.(v,l,d,i)}},[v,c,l,d,i,n,t,r,T])},Ce=({action:e,onErrorCallback:t,onSuccessCallback:n})=>{const[,r]=Q(),[,s]=ne(),[,a]=R(),i=Cl();return m.useCallback((l,c,d)=>{if(c){r({isOpen:!1,status:"None",link:"",sendTokens:null,receiveTokens:null}),s({type:"remove",status:"fail"}),console.debug(`${e} transaction failed`,c),i?.(c,d),t?.(c);return}if(l){console.debug(`${e} transaction started`,l),s({type:"update",txHash:l});const p=yn(l,"transaction",d.chainId);r({isOpen:!0,status:"Mining",link:p}),e!=="approve"&&e!=="update_ondo_prices"&&a({value:""}),n?.()}},[r,s,e,i,t,a,n])},Rr=({address:e,chainId:t,refetchInterval:n,disabled:r=!1})=>{const{supportedChainId:s}=De(),{address:a}=y(),{data:i}=_.useReadContracts({contracts:[{address:w.getContractAddressById("factory",t??s),abi:u.PoolFactoryAbi,functionName:"getAssetPrice",args:[e],chainId:t}],query:{enabled:!w.isZeroAddress(e)&&!w.isEqualAddress(e,a)&&!r,refetchInterval:n}});return wn(i),i?.[0]?.result},le=({address:e,chainId:t,refetchInterval:n=u.SHORTEN_POLLING_INTERVAL,disabled:r})=>{const s=Rr({address:e,chainId:t,refetchInterval:n,disabled:r});return k.formatUnits(s??BigInt(0),u.DEFAULT_PRECISION)},Aa=()=>{const[e]=R(),[t]=B(),n=Tn({address:e.address,symbol:e.symbol}),r=new I(e.value),s=new I(t.value);return(r.gt(0)||s.gt(0))&&r.lte(n??0)};function TT(e,t,n,r){try{if(t===u.MULTI_ASSET_TOKEN.symbol)return"";const s=Number(n),a=Number(r);return s===0||a===0||!isFinite(s)||!isFinite(a)?"":`1 ${e} = ${(a/s).toFixed(6)} ${t}`}catch{return""}}const xa=()=>{const[e]=R(),[t]=B();return{value:TT(e.symbol,t.symbol,e.value,t.value),isLoading:!!t.isLoading}},qe=()=>{const e=!Le(),[{symbol:t}]=B(),[{isMultiAssetWithdrawalEnabled:n}]=X();return e&&n&&t===u.MULTI_ASSET_TOKEN.symbol},Sn=({onErrorCallback:e}={})=>{const{account:t}=j(),{chainId:n}=y(),r=qe(),[s]=R(),a=new I(s.value||"0").shiftedBy(s.decimals).toFixed(0,I.ROUND_UP),i=w.getContractAddressById("easySwapperV2",n),{canSpend:l,isFetching:c}=Oa({tokenAddress:s.address,ownerAddress:t??u.AddressZero,spenderAddress:i,rawAmountToSpend:a,chainId:n,skip:r||a==="0"}),d=Pa({token:s,rawTokenAmount:a,spenderAddress:i,onErrorCallback:e});return{canSpend:l,approve:d,isCanSpendFetching:c}},bT=({address:e,chainId:t})=>{const n=_.usePublicClient({chainId:t}),{data:{aaveAssetGuardAddress:r=u.AddressZero}={}}=Ot({address:e,chainId:t});return m.useCallback(async({withdrawAmountD18:s,slippage:a})=>hn({address:r,abi:ml,functionName:"calculateSwapDataParams",args:[e,s,w.getSlippageToleranceForContractTransaction(a)],publicClient:n}),[r,e,n])},_e=()=>{const e=_r(),[{slippage:t}]=X();return t==="auto"?e:t},AT={[Z.mainnet.id]:{ondoGMSwap:u.ONDO_GM_SWAP_ADDRESS_MAINNET,usdc:u.USDC_MAINNET.address}},xT=200n,yT=5n,_s=10000n,Gt=e=>e.assetType===pe.ONDO_ASSET_TYPE,ST=e=>e.amount*(_s-yT)/_s,zt=e=>e.reduce((t,n)=>t+n,0n),ET=(e,t)=>e.reduce((n,r)=>{const s=t(r);return n.set(s,[...n.get(s)??[],r])},new Map),CT=async(e,t,n,r)=>{const[s,a]=await Promise.all([e?.readContract({address:t,abi:w.DytmOfficeAssetGuardAbi,functionName:"dytmWithdrawProcessor"}),hn({address:t,abi:w.DytmOfficeAssetGuardAbi,functionName:"previewWithdrawal",args:[n,r],publicClient:e})]);return{processor:s,assetData:a}},_T=async(e,t,n,r)=>{const s=w.getContractAddressById("ondoPriceOracle",n);if(w.isZeroAddress(s))return new Map;const a=i=>t.fetchQuery({...Hs.readContractQueryOptions(e,{address:s,abi:u.OndoPriceOracleAbi,functionName:"getPrice",args:[i],chainId:n}),staleTime:u.ONDO_PRICE_FRESHNESS_WINDOW_MS}).then(([l])=>l).catch(()=>0n);return new Map(await Promise.all([...new Set(r)].map(async i=>[i,await a(i)])))},IT=async(e,t)=>{const{attestations:n}=await Xs({chainId:e,items:t.map(s=>({address:s.asset,tokenAmount:k.formatUnits(s.amount,u.DEFAULT_PRECISION$1)}))}),r=ET(n,s=>s.assetAddress.toLowerCase());return t.map((s,a)=>{const i=s.asset.toLowerCase(),l=t.slice(0,a).filter(d=>d.asset.toLowerCase()===i).length,c=r.get(i)?.[l];if(!c)throw new Error(`Chamber Lending Market withdrawal: no Ondo attestation returned for ${s.asset}`);return{collateral:s,attestation:c}})},NT=({collateral:e,attestation:t,target:n,dytmOffice:r,processor:s,chainId:a,slippagePercent:i})=>{const l=w.toBigInt(t.tokenAmount,"tokenAmount");if(l<=0n)throw new Error(`Chamber Lending Market withdrawal: Ondo attestation for ${e.asset} has no redeemable amount`);const c=w.computeAmountOutMinimumUsdc(l,w.toBigInt(t.price,"price"),i);return{collateral:e,actions:w.buildDytmActions({collateral:e,dytmOffice:r,processor:s,gmToken:e.asset,ondoGMSwap:n.ondoGMSwap,usdc:n.usdc,gmAmount:l,amountOutMinimum:c,signature:w.base64ToHex(t.signature),quote:w.mapAttestationToOndoQuote(t,BigInt(a))}),amountOutMinimum:c}},PT=async({plans:e,target:t,dytmOffice:n,processor:r,chainId:s,slippagePercent:a})=>{const i=e.flatMap(h=>h.gmCollaterals),c=(i.length?await IT(s,i):[]).map(({collateral:h,attestation:f})=>NT({collateral:h,attestation:f,target:t,dytmOffice:n,processor:r,chainId:s,slippagePercent:a})),d=e.map(({group:h,outputAssetCollaterals:f})=>{const v=c.filter(x=>x.collateral.accountId===h.accountId),T=f.map(x=>w.buildDytmOutputAssetWithdrawAction({collateral:x,dytmOffice:n,processor:r})),b=zt(f.map(ST)),A=h.debt?w.buildDytmRepayActions({accountId:h.accountId,debtKey:h.debt.debtKey,dytmOffice:n,usdc:t.usdc}):[];return{actions:[...v.flatMap(x=>x.actions),...T,...A],amountOutMinimum:zt(v.map(x=>x.amountOutMinimum))+b,debtAmount:h.debt?.amount??0n}}),p=zt(d.map(h=>h.amountOutMinimum)),g=zt(d.map(h=>h.debtAmount));return{actions:d.flatMap(h=>h.actions),outputAsset:t.usdc,minOutputAmount:p>g?p-g:0n}},ya=({address:e,chainId:t})=>{const{dytmOfficeAddress:n,assetGuardAddress:r=u.AddressZero,hasAssets:s}=pt({address:e,chainId:t}),a=$v(t),i=_.usePublicClient({chainId:t}),l=_.useConfig(),c=fe.useQueryClient(),d=fn(),p=_e();return m.useCallback(async g=>{const h=new Map,f=AT[t];if(!i||!s||!n||!f)return h;const v=w.isZeroAddress(r)?await a(n):r;if(!v||w.isZeroAddress(v))return h;const{processor:T,assetData:b}=await CT(i,v,e,g);if(!T||w.isZeroAddress(T)||!b?.length)return h;const A=P=>!Gt(P)&&w.isEqualAddress(P.asset,f.usdc),x=b.filter(P=>Gt(P)&&!P.isDebt&&P.amount>0n).map(P=>P.asset),S=await _T(l,c,t,x),L=P=>Gt(P)&&!w.isUnswappableGmDust(P.amount,S.get(P.asset)),O=w.groupPreviewByAccount(b).map(P=>{const U=P.collaterals.filter(Y=>Y.amount>0n),J=U.filter(Y=>!Gt(Y)&&!A(Y));if(J.length)throw new Error(`Chamber Lending Market withdrawal: no unwind route for collateral ${J.map(Y=>`${Y.asset} (type ${Y.assetType})`).join(", ")}`);return{group:P,gmCollaterals:U.filter(L),outputAssetCollaterals:U.filter(A)}}).filter(P=>P.gmCollaterals.length+P.outputAssetCollaterals.length>0);if(!O.length)return h;if(!d&&O.some(P=>P.gmCollaterals.length>0))throw new Error("Chamber Lending Market withdrawal: Ondo integration is not configured for the collateral unwind");const M=await PT({plans:O,target:f,dytmOffice:n,processor:T,chainId:t,slippagePercent:p});return h.set(n.toLowerCase(),{withdrawData:w.encodeUnwindPlan(M),slippageTolerance:xT}),h},[e,r,t,l,n,a,s,d,i,c,p])},Sa=async({assets:e,getSwapQuotes:t,signal:n,buildKey:r})=>{const s=await Promise.all(e.map(a=>t({signal:n,variables:{...a,fromAddress:u.MULTI_CHAIN_SWAPPER_CONTRACT_ADDRESS}})));return e.reduce((a,i,l)=>{const c=r(i);return a[c]=s[l]??null,a},{})},OT=e=>e.length>1?1:0,LT=async({assets:e,getSwapQuotes:t,signal:n})=>Sa({assets:e,getSwapQuotes:t,signal:n,buildKey:w.buildSwapQuoteKeyForAave}),DT=(e,t)=>{const n=lr(),{effectiveSelectedAggregators:r}=Ct();return fe.useQuery({queryKey:["getSwapsQuotes",e,r],queryFn:async({signal:s,queryKey:[,a]})=>await Sa({assets:a,getSwapQuotes:n,signal:s,buildKey:({sourceAddress:i})=>i}),...t})},kT=new AbortController,RT=kT.signal,jT=({chainId:e})=>{const{account:t=u.AddressZero}=j(),n=lr();return m.useCallback(async({swapParams:r,slippage:s})=>{const a=(r?.srcData??[]).map(({asset:i,amount:l})=>({chainId:e,sourceAddress:i,destinationAddress:r?.dstData.asset??u.AddressZero,walletAddress:t,amount:l.toString(),slippage:s.toString()}));return LT({assets:a,getSwapQuotes:n,signal:RT})},[e,n,t])},Ea=({address:e,chainId:t})=>{const{assets:n,assetGuardAddress:r=u.AddressZero,hasAssets:s}=je({address:e,chainId:t}),a=_.usePublicClient({chainId:t}),i=fn(),l=_e();return m.useCallback(async c=>{const d=new Map;if(!i||!a||!s||w.isZeroAddress(r))return d;const p=await Promise.all(n.map(f=>hn({address:r,abi:w.OndoGMTokenAssetGuardAbi,functionName:"previewGmTokenAmount",args:[e,f.address,c],publicClient:a}))),g=n.flatMap((f,v)=>{const T=p[v];return T===void 0||T<=0n?[]:[{address:f.address,tokenAmount:k.formatUnits(T,u.DEFAULT_PRECISION$1)}]});if(g.length===0)return d;const{attestations:h}=await Xs({chainId:t,items:g});for(const f of h){const v=w.encodeOndoWithdrawData({attestation:f,chainId:BigInt(t),slippagePercent:l});d.set(f.assetAddress.toLowerCase(),{withdrawData:v,slippageTolerance:u.DEFAULT_ONDO_WITHDRAWAL_CONTRACT_SLIPPAGE})}return d},[e,r,t,i,n,a,s,l])},MT=({address:e,chainId:t})=>{const n=w.getContractAddressById("aaveLendingPoolV3",t),{data:{getSupportedAssets:r}={}}=Dt({address:e,chainId:t}),s=bT({address:e,chainId:t}),a=jT({chainId:t}),i=Ea({address:e,chainId:t}),l=ya({address:e,chainId:t});return m.useCallback(async({withdrawAmountD18:c,slippage:d,isAutoSlippage:p,estimate:g,transactionArgs:h})=>{const f=w.getComplexAssetDataSlippageTolerance({chainId:t,slippage:d}),v=p?w.getAutoSlippageSimulationCandidates({maxSlippage:d}):[],[T,b]=await Promise.all([i(c),l(c)]),A=new Map([...T,...b]);if(!r?.some(P=>w.isEqualAddress(P,n)))return w.createDefaultComplexAssetData(r,f,A);const S=P=>w.enrichAssetsWithSwapQuotes(r,n,{withdrawAmountD18:c,slippage:P,fetchAaveSwapParams:s,fetchAaveSwapQuotes:a});if(p)return await w.tryEstimateWithSlippageValues(v,S,g,h,A)??w.createDefaultComplexAssetData(r,f,A);const L=await S(d),O=w.extractAvailableRouterKeys(L);return await w.tryEstimateWithRouters(O,L,f,g,h,A)??w.createDefaultComplexAssetData(r,f,A)},[n,t,s,a,i,l,r])};function Xn(e,t,n){const[r,s]=m.useState(n),a=w.clientSide?e==="sessionStorage"?sessionStorage:localStorage:null,i=m.useCallback(l=>{try{s(l),a?.setItem(t,JSON.stringify(l))}catch(c){console.error(c)}},[t,a]);return m.useEffect(()=>{try{const l=a?.getItem(t);l&&s(JSON.parse(l))}catch(l){console.error(l)}},[t,a]),[r,i]}const jr=(e,t)=>{const[n,r]=m.useState(e);return m.useEffect(()=>{const s=setTimeout(()=>{r(e)},t);return()=>{clearTimeout(s)}},[e,t]),n},BT=()=>{const e=y(),[t]=R(),n=qe(),r=_e(),[{slippage:s}]=X(),a=s==="auto",i=MT(e);return m.useCallback(async l=>{const c=w.parseAmountToD18(t.value),d=n?[c]:[e.address,c],p=await i({withdrawAmountD18:c,slippage:r,isAutoSlippage:a,estimate:l,transactionArgs:d});return[...d,p]},[i,a,n,e.address,t.value,r])},$T=({debounceTime:e}={})=>{const t=y(),n=qe(),[r]=R(),s=_e(),{data:{getSupportedAssets:a}={}}=Dt(t),i=jr(r.value||"0",e??0);return m.useMemo(()=>{const l=w.getComplexAssetDataSlippageTolerance({chainId:t.chainId,slippage:s}),c=w.parseAmountToD18(i),d=(a??[]).map(p=>({supportedAsset:p,withdrawData:"",slippageTolerance:l}));return n?[c,d]:[t.address,c,d]},[s,i,a,n,t.address,t.chainId])},UT=(e,{enabled:t})=>{const{address:n,chainId:r}=y(),[s]=B(),{hasAssets:a,isReady:i}=je({address:n,chainId:r}),{hasAssets:l,isReady:c}=pt({address:n,chainId:r}),d=Ea({address:n,chainId:r}),p=ya({address:n,chainId:r}),g=_e(),h=i&&c,f=a||l,v=w.isEqualAddress(s.address,u.USDC_MAINNET.address),{data:T,isError:b,isFetching:A}=fe.useQuery({queryKey:["initWithdrawSimulationWithdrawData",n,r,e.toString(),g],queryFn:async()=>{const[x,S]=await Promise.all([d(e),p(e)]);return new Map([...x,...S])},enabled:t&&f&&h&&v&&e>BigInt(0),refetchOnWindowFocus:!1});return h?f?v?{overrides:b?w.EMPTY_PER_ASSET_WITHDRAW_DATA:T,isFetching:A}:{overrides:void 0,isFetching:!1}:{overrides:w.EMPTY_PER_ASSET_WITHDRAW_DATA,isFetching:!1}:{overrides:void 0,isFetching:!0}},FT=({assets:e,chainId:t})=>e.flatMap(({token:n})=>[{address:n,abi:k.erc20Abi,functionName:"symbol",chainId:t,args:[]},{address:n,abi:k.erc20Abi,functionName:"decimals",chainId:t,args:[]},{address:w.getContractAddressById("factory",t),abi:u.PoolFactoryAbi,functionName:"getAssetPrice",chainId:t,args:[n]}]),WT=3,Ca=({assets:e,chainId:t})=>{const n=m.useCallback(r=>e.map(({token:s,balance:a},i)=>{const l=i*WT,c=l+1,d=c+1,p=Number(r[c]?.result??u.DEFAULT_PRECISION),g=u.BRIDGED_TOKENS_SYMBOLS[s.toLowerCase()]??r[l]?.result?.toString()??"",h=new I(a.toString()).shiftedBy(-p).toNumber(),f=new I(r[d]?.result?.toString()??0).shiftedBy(-u.DEFAULT_PRECISION).toNumber(),v=h*f;return{address:s,symbol:g,decimals:p,rawBalance:a,balance:h,price:f,valueInUsd:v}}).sort((s,a)=>a.valueInUsd-s.valueInUsd),[e]);return _.useReadContracts({contracts:FT({assets:e,chainId:t}),query:{enabled:e.length>0,select:n}})},Is=e=>typeof e[0]=="string"&&typeof e[1]=="bigint"&&Array.isArray(e[2]),GT=()=>{const e=y(),t=Nt(),{canSpend:n}=Sn(),r=$T({debounceTime:u.EXTENDED_DEBOUNCE_TIME}),s=Is(r)?r[1]:BigInt(0),a=s!==BigInt(0)&&!t&&n,{overrides:i,isFetching:l}=UT(s,{enabled:a}),c=m.useMemo(()=>Is(r)&&i?[r[0],r[1],w.overlayWithdrawData(r[2],i)]:void 0,[r,i]),d=!!c&&a,{data:p,isFetching:g,isFetched:h}=_.useSimulateContract({abi:u.EasySwapperV2Abi,address:w.getContractAddressById("easySwapperV2",e.chainId),functionName:u.EASY_SWAPPER_V2_INITIATE_WITHDRAW_METHOD,args:c,query:{enabled:d}}),f=Ca({assets:p?.result[0]??[],chainId:e.chainId});return{...f,isFetching:f.isFetching||l||g,isFetched:h||f.isFetched}},Mr=()=>{const[e]=B(),{data:t=[],isFetching:n,isFetched:r}=GT(),s=Pt();return{isUnrollAndClaimTransaction:t?.length===1&&w.isEqualAddress(t[0]?.address,e.address)&&!s,isFetching:n,isFetched:r}},zT=({onErrorCallback:e}={})=>{const t=y(),n=qe(),{isUnrollAndClaimTransaction:r}=Mr(),s=BT(),a=ne()[1],i=n?"multi_withdraw":r?"single_withdraw_and_claim":"single_withdraw",l=Ce({action:i,onErrorCallback:e}),c=n?u.DEFAULT_MULTI_ASSET_WITHDRAW_METHOD:r?u.EASY_SWAPPER_V2_UNROLL_AND_CLAIM_METHOD:u.EASY_SWAPPER_V2_INITIATE_WITHDRAW_METHOD,{send:d,estimate:p}=de({contractId:n?"poolLogic":"easySwapperV2",dynamicContractAddress:n?t.address:void 0,functionName:c,onSettled:l});return{withdraw:m.useCallback(async()=>{a({type:"add",action:i,symbol:t.symbol,chainId:t.chainId});const h=await s(p);return console.log("Arguments",h),d(...h)},[a,i,t.symbol,t.chainId,s,p,d]),action:i}},Br=({trade:e,onErrorCallback:t})=>{const n=E(),{showError:r,closeError:s}=Ve(),{account:a}=j(),i=y(),[l]=R(),[c]=B(),[d]=ve(),p=Q()[1],g=ne()[1],h=sn(),f=qe(),{isUnrollAndClaimTransaction:v}=Mr(),T=Ae({symbol:l.symbol,address:l.address}),b=d==="deposit",A=Aa(),x=b?"deposit":f?"multi_withdraw":v?"single_withdraw_and_claim":"single_withdraw",S=async()=>{const L=i.chainId;s(),p({isOpen:!0,status:"Wallet",action:x,link:"",sendTokens:[l],receiveTokens:b||v?[c]:null,meta:b?{}:{withdrawPercentage:l.value&&T?new I(l.value).div(T).toNumber():0}});try{await e()}catch(O){console.error(O),(O instanceof We||O instanceof Et)&&(t?.(),r(O.message),O instanceof We&&h?.(O,i.address,L,a)),p({isOpen:!1,status:"None",link:"",sendTokens:null,receiveTokens:null,meta:{}}),g({type:"remove",status:"fail"})}};return{disabled:!A,label:b?n.depositAction:f?n.withdrawAction:v?n.unrollAndClaimAction:n.unrollAction,handleTrade:S}},HT=1,VT="USD",qT=({depositValueInUsd:e,apy:t,apyCurrencyPrice:n,currency:r})=>{if(e===0||!t||!r||n===0)return{yearlyEarnings:"-",dailyEarnings:"-",monthlyEarnings:"-"};const s=e*t/100/n;return{yearlyEarnings:w.formatByCurrency({value:s,currency:r}),dailyEarnings:w.formatByCurrency({value:s/365,currency:r}),monthlyEarnings:w.formatByCurrency({value:s/12,currency:r})}},_a=({currency:e,depositValueInUsd:t,chainId:n,apy:r,disabled:s})=>{const a=e==="ETH"?u.WETH_BY_CHAIN_ID[n]?.address:e==="BTC"?u.WBTC_BY_CHAIN_ID[n]?.address:void 0,i=le({address:a??u.AddressZero,chainId:n,disabled:s||!r||!a}),l=a?Number(i):HT;return m.useMemo(()=>qT({depositValueInUsd:t,apy:r,apyCurrencyPrice:l,currency:a?e:VT}),[t,r,l,e,a])},Ia=()=>{const e=ve()[0]==="deposit",{chainId:t}=y(),[n]=Ge(),[r]=R(),s=le({address:r.address,chainId:t,disabled:!e||!n.apy}),a=_a({chainId:t,apy:n.apy?.value,currency:n.apy?.currency,depositValueInUsd:+r.value*+s,disabled:!e});return e?{showEarnings:!!n.apy?.value,...a}:{dailyEarnings:null,yearlyEarnings:null,monthlyEarnings:null,showEarnings:!1}},YT=e=>e.chainId?e.sourceAddress?e.destinationAddress?!e.amount||e.amount==="0"||e.amount==="NaN"?{isValid:!1,error:"Missing required parameter: amount or amount must be greater than 0"}:e.slippage?{isValid:!0}:{isValid:!1,error:"Missing required parameter: slippage"}:{isValid:!1,error:"Missing required parameter: destinationAddress"}:{isValid:!1,error:"Missing required parameter: sourceAddress"}:{isValid:!1,error:"Missing required parameter: chainId"},KT=(e,t)=>{const{effectiveSelectedAggregators:n}=Ct(),r=lr(),{isValid:s}=YT({chainId:String(e.chainId),sourceAddress:e.sourceAddress,destinationAddress:e.destinationAddress,amount:e.amount,slippage:String(e.slippage)});return fe.useQuery({queryKey:["getSwapQuotes",{...e,fromAddress:u.MULTI_CHAIN_SWAPPER_CONTRACT_ADDRESS},n],queryFn:async({signal:a,queryKey:[,i]})=>r({signal:a,variables:i}).then(l=>l?.filter(c=>!!c)??[]),...t,enabled:s&&(t?.enabled??!0)})},En=(e={})=>{const t=e?.extendedDebounceTime??!1,[n]=R(),r=jr(n.value,t?u.EXTENDED_DEBOUNCE_TIME:u.DEFAULT_DEBOUNCE_TIME);return{debouncedSendTokenValue:r,isDebouncing:n.value!==r}},Na=({account:e,chainId:t})=>_.useReadContract({address:w.getContractAddressById("easySwapperV2",t),abi:u.EasySwapperV2Abi,functionName:"getTrackedAssets",chainId:t,args:[e],query:{enabled:!w.isZeroAddress(e)}}),QT=(e,t)=>w.isEqualAddress(e,u.USDT_MAINNET.address)&&t===Z.mainnet.id,ZT=({tokenAddress:e,spenderAddress:t})=>{const{chainId:n}=y(),{account:r=u.AddressZero}=j(),s=QT(e,n),{data:a}=nt({tokenAddress:e,ownerAddress:r,spenderAddress:t,chainId:n,skip:!s}),{invalidateAllowanceQueries:i}=ut(),l=_.useWalletClient({chainId:n}),c=_.usePublicClient({chainId:n});return{resetAllowance:m.useCallback(async()=>{if(!s||!a||a===BigInt(0)||!l.data||!c)return;const p=await l.data.writeContract({address:e,abi:k.erc20Abi,functionName:"approve",args:[t,BigInt(0)],chain:l.data.chain,account:l.data.account});await c.waitForTransactionReceipt({hash:p}),await i()},[a,i,c,s,t,e,l.data])}},Ht="approve",Pa=({token:e,rawTokenAmount:t,spenderAddress:n,onErrorCallback:r})=>{const s=y(),[{isInfiniteAllowance:a}]=X(),i=ne()[1],l=Q()[1],{resetAllowance:c}=ZT({tokenAddress:e.address,spenderAddress:n}),d=Ce({action:Ht,onErrorCallback:r}),{send:p}=de({contractId:"erc20",dynamicContractAddress:e.address,functionName:Ht,onSettled:d});return m.useCallback(async()=>(l({isOpen:!0,status:"Wallet",link:"",action:Ht,sendTokens:[{symbol:e.symbol,address:e.address,decimals:e.decimals,value:""}],receiveTokens:null,meta:{}}),i({type:"add",action:Ht,symbol:e.symbol,chainId:s.chainId}),await c(),p(n,a?u.MaxUint256:t)),[a,s.chainId,t,c,p,n,e.address,e.decimals,e.symbol,i,l])},Oa=({rawAmountToSpend:e,tokenAddress:t,ownerAddress:n,spenderAddress:r,chainId:s,skip:a=!1})=>{const{data:i,isFetching:l}=nt({tokenAddress:t,ownerAddress:n,spenderAddress:r,chainId:s,skip:a});return m.useMemo(()=>a?{canSpend:!0,isFetching:!1}:!i||i===BigInt(0)?{canSpend:!1,isFetching:l}:!e||e==="0"?{canSpend:!0,isFetching:l}:{canSpend:new I(i.toString()).gte(e),isFetching:l},[l,e,i,a])},XT=()=>{const[{isInfiniteAllowance:e},t]=X(),n=ze(),r=m.useCallback(s=>{t({isInfiniteAllowance:s}),n?.(u.TRADING_PANEL_LOG_EVENT.INFINITE_ALLOWANCE_CHANGE,{[u.TRADING_LOG_EVENT_PARAM.IS_INFINITE.NAME]:s?1:0})},[t,n]);return m.useMemo(()=>[e,r],[e,r])},La=()=>{const e=E(),[t,n]=XT();return o.jsx(vn,{defaultEnabled:t,onChange:n,label:e.infinite})},JT=()=>{const[{selectedAggregators:e},t]=X(),{effectiveAvailableAggregators:n,effectiveSelectedAggregators:r}=Ct(),s=m.useCallback(a=>{const i=e.includes(a)?e.filter(l=>l!==a):[...e,a];t({selectedAggregators:i})},[e,t]);return{availableAggregators:n,selectedAggregators:r,onAggregatorToggle:s}},Da=()=>{const e=E(),{availableAggregators:t,selectedAggregators:n,onAggregatorToggle:r}=JT();return t.length<=1?null:o.jsx(xt,{label:e.aggregatorsLabel,tooltipText:e.aggregatorsTooltip,children:o.jsx("div",{className:"dtw-flex dtw-flex-col dtw-gap-2",children:t.map(s=>o.jsxs("label",{className:"dtw-flex dtw-items-center dtw-justify-between dtw-gap-2 dtw-text-xs dtw-text-[var(--panel-content-color)] dtw-cursor-pointer",children:[s,o.jsx(vn,{defaultEnabled:n.includes(s),onChange:()=>r(s),size:"sm"})]},s))})})},eb=()=>{const e=E();return o.jsxs(o.Fragment,{children:[o.jsx(xt,{label:e.slippageTolerance,tooltipText:e.depositSlippageWarning,children:o.jsx(Ta,{})}),o.jsx(xt,{label:e.tokenAllowance,tooltipText:e.toggleTokenApprovalAmount,children:o.jsx(La,{})}),o.jsx(Da,{})]})},tb="ref",nb=({vaultAddress:e,userAddress:t,query:n,logEvent:r,tagInvestorByReferrer:s})=>{const[a,i]=Xn("localStorage",pe.LOCAL_STORAGE_KEYS.REFERRER,""),[l,c]=Xn("localStorage",pe.LOCAL_STORAGE_KEYS.REF_POOL,""),d=n[tb];m.useEffect(()=>{!d||typeof d!="string"||w.isZeroAddress(e)||localStorage.getItem(pe.LOCAL_STORAGE_KEYS.REFERRER)||(i(d),c(e),r?.())},[e,d,c,i,r]),m.useEffect(()=>{if(!t||!a||l.toLowerCase()!==e.toLowerCase())return;(async()=>{try{await s({investorAddress:t,poolAddress:l,referrerAddress:a})}catch(g){console.error("[core-ui-kit]: Error on tagging investor by referrer",g)}})()},[l,a,s,t,e])},en={referrerAddress:void 0,referralData:void 0},rb=(e,t)=>{if(!e||!k.isAddress(e)||t&&w.isEqualAddress(e,t))return en;const n=k.encodeAbiParameters([{type:"address"}],[e]);return{referrerAddress:e,referralData:n}},ka=()=>{const e=lo(),{account:t}=j(),{data:n=en}=fe.useQuery({queryKey:["entryReferrer",t],queryFn:async({queryKey:[,r]})=>{if(!e||!r)return en;const s=await e(r);return rb(s,r)},enabled:!!e&&!!t,staleTime:1/0,gcTime:1/0});return n},sb=()=>{const{chainId:e,address:t}=y(),{data:{isCustomCooldownDepositAllowed:n}={}}=Ot({address:t,chainId:e});return n!==!1},Ns=(e,t)=>e.length?e.find(({tokenAddress:r})=>Object.values(u.FALLBACK_ASSETS_MAP[t]??{}).some(s=>w.isEqualAddress(s.address,r)))?.tokenAddress??e[0]?.tokenAddress:null,mt=()=>{const[e]=R(),{chainId:t,address:n}=y(),r=Re({address:n,chainId:t}),s=sb();return m.useMemo(()=>{const a=r.filter(({isDeposit:c})=>c);if(w.isNativeToken(e.symbol,t)){const c=a.find(({tokenName:d})=>u.CHAIN_NATIVE_TOKENS[t]?.wrappedNativeTokenName===d);return c?{depositMethod:s?u.EASY_SWAPPER_V2_DEPOSIT_METHODS.NATIVE_CUSTOM:u.EASY_SWAPPER_V2_DEPOSIT_METHODS.NATIVE,vaultDepositTokenAddress:c.tokenAddress}:{depositMethod:s?u.EASY_SWAPPER_V2_DEPOSIT_METHODS.ZAP_NATIVE_DEPOSIT_CUSTOM:u.EASY_SWAPPER_V2_DEPOSIT_METHODS.ZAP_NATIVE_DEPOSIT,vaultDepositTokenAddress:Ns(a,t)??e.address}}const l=a.find(({tokenAddress:c})=>w.isEqualAddress(c,e.address));return l?{depositMethod:s?u.EASY_SWAPPER_V2_DEPOSIT_METHODS.DEPOSIT_CUSTOM:u.EASY_SWAPPER_V2_DEPOSIT_METHODS.DEPOSIT,vaultDepositTokenAddress:l.tokenAddress}:{depositMethod:s?u.EASY_SWAPPER_V2_DEPOSIT_METHODS.ZAP_DEPOSIT_CUSTOM:u.EASY_SWAPPER_V2_DEPOSIT_METHODS.ZAP_DEPOSIT,vaultDepositTokenAddress:Ns(a,t)??e.address}},[t,s,r,e.address,e.symbol])},jt=()=>{const[e]=R(),{vaultDepositTokenAddress:t}=mt();return!w.isEqualAddress(e.address,t)},Cn=()=>{const e=Ir(),[{slippage:t}]=X(),n=jt();return t==="auto"?n?e:u.DEFAULT_DEPOSIT_SLIPPAGE:t},Mt=()=>{const{account:e=u.AddressZero}=j(),{chainId:t}=y(),[n]=R(),{debouncedSendTokenValue:r}=En(),{vaultDepositTokenAddress:s}=mt(),a=jt(),i=Cn();return KT({sourceAddress:n.address,destinationAddress:s,amount:new I(r).shiftedBy(n.decimals).toFixed(0),chainId:t,slippage:i.toString(),walletAddress:e},{enabled:a&&!!r,refetchInterval:u.SWAP_QUOTE_REFRESH_INTERVAL_MS})},Ra=()=>{const{defaultNoSwapMinDepositAmountGap:e}=q(),{address:t,chainId:n}=y(),[r]=R(),[s]=B(),{data:{entryFee:a}={}}=ce({address:t,chainId:n}),i=w.getPercent(Number(a??"0"),u.MANAGER_FEE_DENOMINATOR),[{slippage:l}]=X(),c=l==="auto",d=Cn(),p=jt(),g=+le({address:r.address,chainId:n}),h=+ue({address:t,chainId:n});if(p){const T=Number(r.value||0)*g*(1-i/100)/h;return new I(T).shiftedBy(s.decimals).times(1-d/100).toFixed(0)}const f=c?e:d;return new I(s.value||"0").shiftedBy(s.decimals).times(1-f/100).toFixed(0)},ob=({isDepositWithSwapTransaction:e,sendTokenAddress:t,sendTokenValue:n})=>{const{chainId:r}=y(),s=+le({address:t,chainId:r}),{vaultDepositTokenAddress:a}=mt(),{data:i}=_.useReadContract({address:a,abi:k.erc20Abi,functionName:"decimals",chainId:r}),l=+le({address:a,chainId:r,refetchInterval:u.SHORTEN_POLLING_INTERVAL,disabled:!e}),c=Number(n||"0")*s;return i&&l!==0&&Number.isFinite(c)?new I(c/l).shiftedBy(i).times(1-u.DEFAULT_RECEIVED_VALUE_GAP/100).toFixed(0):"0"},ja=()=>{const[e]=R(),{debouncedSendTokenValue:t}=En(),n=jt(),r=ob({isDepositWithSwapTransaction:n,sendTokenAddress:e.address,sendTokenValue:t});if(n)return r;const s=new I(t||"0").shiftedBy(e.decimals);return s.isFinite()?s.toFixed(0):"0"},ab="0x",Jn=(e,t,n=[],r)=>{const{vaultAddress:s,vaultDepositTokenAddress:a,vaultDepositTokenAmount:i,minVaultTokensReceivedAmount:l,sendTokenAmount:c}=t,d=r??ab;switch(e){case"nativeDeposit":case"nativeDepositWithCustomCooldown":return[s,l,d,{value:i}];case"deposit":case"depositWithCustomCooldown":return[s,a,i,l,d];case"zapNativeDeposit":case"zapNativeDepositWithCustomCooldown":return[...n,d,{value:c}];case"zapDeposit":case"zapDepositWithCustomCooldown":return[...n,d]}},ib=async({baseArgs:e,swapQuotes:t,estimate:n,depositSlippage:r,isAutoSlippage:s,autoSlippageCandidates:a=u.SLIPPAGE_AUTO_SIMULATION_CANDIDATES,sendTokenAddress:i,depositMethod:l,referralData:c})=>{const{vaultAddress:d,vaultDepositTokenAddress:p,vaultDepositTokenAmount:g,minVaultTokensReceivedAmount:h,sendTokenAmount:f}=e;if(!t?.length)return console.warn("[Deposit] No available routers found for swap"),[];if(s){for(const T of a)for(const b of t){const A=w.buildZapDepositTransactionArguments({vaultAddress:d,sendTokenAddress:i,sendTokenAmount:f,minVaultTokensReceivedAmount:h,vaultDepositTokenAddress:p,swapData:b?.rawTransaction.data??"0x",routerKey:b?.routerKey,swapDestinationAmount:g,swapSlippage:T}),x=Jn(l,e,A,c),{error:S}=await n(...x);if(!S)return console.debug(`[Deposit] Auto slippage simulation succeeded: slippage=${T}%, router=${b?.routerKey}`),console.debug("[Deposit] Transaction arguments:",x),x}a.length&&console.warn("[Deposit] All slippage simulation candidates failed, falling back to resolved slippage")}let v=[];for(const T of t){const b=w.buildZapDepositTransactionArguments({vaultAddress:d,sendTokenAddress:i,sendTokenAmount:f,minVaultTokensReceivedAmount:h,vaultDepositTokenAddress:p,swapData:T?.rawTransaction.data??"0x",routerKey:T?.routerKey,swapDestinationAmount:g,swapSlippage:r});v=Jn(l,e,b,c);const{error:A}=await n(...v);if(!A)return v}return console.warn("[Deposit] No valid routers found for swap"),v},lb=e=>e==="zapNativeDeposit"||e==="zapNativeDepositWithCustomCooldown"||e==="zapDeposit"||e==="zapDepositWithCustomCooldown",cb=({depositMethod:e,vaultDepositTokenAddress:t})=>{const{address:n}=y(),[r]=R(),[{slippage:s}]=X(),a=r.value||"0",i=new I(a).shiftedBy(r.decimals).toFixed(0),l=ja(),{data:c}=Mt(),d=Ra(),p=Cn(),{referralData:g}=ka(),h=s==="auto",f=h?w.getAutoSlippageSimulationCandidates({maxSlippage:p}):void 0;return m.useCallback(async v=>{const T={vaultAddress:n,vaultDepositTokenAddress:t,vaultDepositTokenAmount:l,minVaultTokensReceivedAmount:d,sendTokenAmount:i},b=lb(e);try{return b?await ib({baseArgs:T,swapQuotes:c,estimate:v,depositSlippage:p,isAutoSlippage:h,autoSlippageCandidates:f,sendTokenAddress:r.address,depositMethod:e,referralData:g}):Jn(e,T,void 0,g)}catch(A){return console.error(A),[]}},[n,e,p,h,f,d,g,r.address,i,c,t,l])},db=()=>{const{chainId:e}=y(),[t]=B(),n=ne()[1],{depositMethod:r,vaultDepositTokenAddress:s}=mt(),a=cb({depositMethod:r,vaultDepositTokenAddress:s}),i=m.useCallback(()=>{n({type:"add",action:"deposit",symbol:t.symbol,chainId:e})},[n,t.symbol,e]);return{chainId:e,depositMethod:r,buildDepositTransactionArgs:a,addPendingTransaction:i}},ub="deposit",pb=({onDepositSettled:e})=>{const{depositMethod:t,buildDepositTransactionArgs:n,addPendingTransaction:r}=db(),s=Ce({action:ub,onErrorCallback:e,onSuccessCallback:e}),{send:a,estimate:i}=de({contractId:"easySwapperV2",functionName:t,onSettled:s});return m.useCallback(async()=>{r();const l=await n(i);return a(...l)},[r,a,n,i])},Un={},Ps=(e,t)=>`${e}:${t.toLowerCase()}`,Os=()=>{if(!w.clientSide)return Un;try{const e=localStorage.getItem(pe.LOCAL_STORAGE_KEYS.ONDO_PRICE_UPDATES);return e?JSON.parse(e):Un}catch(e){return console.error(e),Un}},mb=e=>{if(w.clientSide)try{localStorage.setItem(pe.LOCAL_STORAGE_KEYS.ONDO_PRICE_UPDATES,JSON.stringify(e))}catch(t){console.error(t)}},Ma=(e,t)=>t-e.updatedAt<u.ONDO_PRICE_FRESHNESS_WINDOW_MS,wb=(e,t)=>Object.fromEntries(Object.entries(e).filter(([,n])=>Ma(n,t))),Ba=()=>{const{address:e,chainId:t}=y(),n=m.useCallback(()=>{if(!e)return!1;const s=Os()[Ps(t,e)];return!!s&&Ma(s,Date.now())},[e,t]),r=m.useCallback(s=>{if(!e)return;const a=Date.now();mb({...wb(Os(),a),[Ps(t,e)]:{updatedAt:a,txHash:s}})},[e,t]);return{isOndoPriceFresh:n,recordOndoPriceUpdate:r}},Fn="update_ondo_prices",$a=({ondoAssets:e,onSettled:t,onErrorCallback:n})=>{const{chainId:r,symbol:s}=y(),[a]=R(),[i]=B(),l=ne()[1],c=Q()[1],d=Ce({action:Fn,onErrorCallback:n,onSuccessCallback:t}),{send:p}=de({contractId:"ondoPriceOracle",functionName:"updatePrices",onSettled:d});return m.useCallback(async()=>{const g=await hl({chainId:r,addresses:e.map(v=>v.address)});c({isOpen:!0,status:"Wallet",link:"",action:Fn,sendTokens:[a],receiveTokens:[i],meta:{}}),l({type:"add",action:Fn,symbol:s,chainId:r});const{quotes:h,signatures:f}=w.mapOndoApiResponseToUpdatePricesArgs(g);return p(h,f)},[r,e,i,p,a,s,l,c])},hb=()=>{const{account:e=u.AddressZero}=j(),{chainId:t}=y(),[n]=R(),r=w.getContractAddressById("easySwapperV2",t),s=new I(n.value||"0").shiftedBy(n.decimals).toFixed(0,I.ROUND_UP),{canSpend:a}=Oa({tokenAddress:n.address,ownerAddress:e,spenderAddress:r,rawAmountToSpend:s,chainId:t,skip:w.isNativeToken(n.symbol,t)||s==="0"});return{approve:Pa({token:n,rawTokenAmount:s,spenderAddress:r}),canSpend:a}},gb=()=>{const[e,t]=m.useState("idle"),n=m.useRef(!1),r=m.useRef(!1),s=m.useCallback(()=>{t("idle"),n.current=!1,r.current=!1},[]),a=m.useCallback(()=>{s()},[s]),i=pb({onDepositSettled:a}),{handleTrade:l}=Br({trade:i,onErrorCallback:a}),{approve:c,canSpend:d}=hb(),{address:p,chainId:g}=y(),[{action:h,status:f}]=Q(),[v]=ne(),{showError:T,closeError:b}=Ve(),A=dr(),x=m.useCallback(async se=>{const D=w.getSettleDelay({chainId:g,action:se,isRabbyWallet:A});D>0&&await new Promise($t=>setTimeout($t,D))},[g,A]),S=m.useCallback(se=>{se instanceof Et&&T(se.message)},[T]),{assets:L,hasAssets:O}=je({address:p,chainId:g}),M=fn(),P=O&&M,{isOndoPriceFresh:U,recordOndoPriceUpdate:J}=Ba(),Y=$a({ondoAssets:L,onErrorCallback:s}),re=v.find(se=>se.action==="approve")?.txHash,ge=v.find(se=>se.action==="update_ondo_prices")?.txHash,{data:Be}=_.useWaitForTransactionReceipt({hash:re,pollingInterval:u.EXTREMELY_SHORT_POLLING_INTERVAL,query:{enabled:!!re&&e==="waiting-approve-confirmation"}}),{data:ft}=_.useWaitForTransactionReceipt({hash:ge,pollingInterval:u.EXTREMELY_SHORT_POLLING_INTERVAL,query:{enabled:!!ge&&e==="waiting-prices-confirmation"}});return m.useEffect(()=>{(async()=>{if(!Be||e!=="waiting-approve-confirmation")return;const D=P&&!U();if(D&&!r.current){r.current=!0,t("updating-prices");try{await Y(),t("waiting-prices-confirmation")}catch($t){console.debug("Ondo price update failed after approve",$t),S($t),s()}return}!D&&!n.current&&(n.current=!0,await x("approve"),t("depositing"),await l())})()},[Be,g,e,l,P,U,s,S,Y,x]),m.useEffect(()=>{(async()=>{ft&&e==="waiting-prices-confirmation"&&!n.current&&(n.current=!0,J(ge),await x("update_ondo_prices"),t("depositing"),await l())})()},[ft,ge,g,e,l,J,x]),m.useEffect(()=>{e==="waiting-approve-confirmation"&&h==="approve"&&f==="None"&&s()},[e,h,f,s]),m.useEffect(()=>{e==="waiting-prices-confirmation"&&h==="update_ondo_prices"&&f==="None"&&s()},[e,h,f,s]),{approveAndDeposit:m.useCallback(async()=>{if(b(),d){if(!(P&&!U()))return l();n.current=!1,r.current=!0,t("updating-prices");try{await Y(),t("waiting-prices-confirmation")}catch(D){throw S(D),s(),D}return}t("approving"),n.current=!1,r.current=!1;try{await c(),t("waiting-approve-confirmation")}catch(se){throw s(),se}},[d,c,b,l,P,U,s,S,Y]),isLoading:e!=="idle",flowState:e}},fb=({address:e,chainId:t})=>{const[n]=R(),r=Le(),{vaultDepositTokenAddress:s}=mt(),a=ja(),i=!!(a&&+a>0),l=_.useReadContract({address:w.getContractAddressById("easySwapperV2",t),abi:u.EasySwapperV2Abi,functionName:"depositQuote",args:[e,s,BigInt(a??0)],chainId:t,query:{enabled:r&&i&&!!n.address&&!!a,refetchInterval:u.SHORTEN_POLLING_INTERVAL}});return Ar(l),l},vb=()=>{const{address:e,chainId:t}=y(),n=Le(),[r]=R(),[s,a]=B(),[,i]=X(),{isDebouncing:l,debouncedSendTokenValue:c}=En(),{isFetching:d}=Mt(),{data:p,isFetching:g}=fb({address:e,chainId:t}),h=d||g||l;m.useEffect(()=>{if(!n||h)return;const f=p?new I(p.toString()).shiftedBy(-s.decimals).toFixed(s.decimals):"";a({value:f})},[p,s.decimals,r.address,a,n,h,c]),m.useEffect(()=>{n&&a({isLoading:h})},[n,h,a]),m.useEffect(()=>{n&&(w.isPositiveNumber(r.value)||(a({value:"0"}),i({minSlippage:0})))},[a,i,r.value,n])},Ua=(e={})=>{const{address:t,chainId:n}=y(),{data:r}=ce({address:t,chainId:n}),[s]=R(),[a]=B(),i=le({address:s.address,chainId:n}),l=ue({address:t,chainId:n}),c=e.includesEntryFee?w.getPercent(Number(r?.entryFee??"0"),u.MANAGER_FEE_DENOMINATOR):0;return m.useMemo(()=>{const d=Number(s.value||"0"),p=new I(d).times(i??"0").times(1-c/100),g=Number(a.value||"0"),h=new I(g).times(l??"0");return p.isZero()||h.isZero()?0:p.decimalPlaces(w.getConventionalTokenPriceDecimals(d)).comparedTo(h.decimalPlaces(w.getConventionalTokenPriceDecimals(g)))&&p.isGreaterThan(0)?h.dividedBy(p).minus(1).times(100).decimalPlaces(2,I.ROUND_DOWN).toNumber():0},[c,a.value,s.value,i,l])},Tb=()=>{const e=Le(),[t]=B(),[,n]=X(),{isDebouncing:r}=En({extendedDebounceTime:!0}),s=Cn(),a=Ua({includesEntryFee:!0});m.useEffect(()=>{if(!e||t.isLoading||r)return;const i=a-s,l=i<0?Math.abs(Number(i.toFixed(2))):0;n({minSlippage:l})},[n,e,t.isLoading,a,s,r])};function bb(e,t,n,r){for(var s=e.length,a=n+(r?1:-1);r?a--:++a<s;)if(t(e[a],a,e))return a;return-1}var Ab=bb;function xb(e){return e!==e}var yb=xb;function Sb(e,t,n){for(var r=n-1,s=e.length;++r<s;)if(e[r]===t)return r;return-1}var Eb=Sb,Cb=Ab,_b=yb,Ib=Eb;function Nb(e,t,n){return t===t?Ib(e,t,n):Cb(e,_b,n)}var Pb=Nb,Ob=Pb;function Lb(e,t){var n=e==null?0:e.length;return!!n&&Ob(e,t,0)>-1}var Db=Lb;function kb(e,t,n){for(var r=-1,s=e==null?0:e.length;++r<s;)if(n(t,e[r]))return!0;return!1}var Rb=kb;function jb(){}var Mb=jb,Wn=Eo,Bb=Mb,$b=hr,Ub=1/0,Fb=Wn&&1/$b(new Wn([,-0]))[1]==Ub?function(e){return new Wn(e)}:Bb,Wb=Fb,Gb=fo,zb=Db,Hb=Rb,Vb=vo,qb=Wb,Yb=hr,Kb=200;function Qb(e,t,n){var r=-1,s=zb,a=e.length,i=!0,l=[],c=l;if(n)i=!1,s=Hb;else if(a>=Kb){var d=t?null:qb(e);if(d)return Yb(d);i=!1,s=Vb,c=new Gb}else c=t?[]:l;e:for(;++r<a;){var p=e[r],g=t?t(p):p;if(p=n||p!==0?p:0,i&&g===g){for(var h=c.length;h--;)if(c[h]===g)continue e;t&&c.push(g),l.push(p)}else s(c,g,n)||(c!==l&&c.push(g),l.push(p))}return l}var Zb=Qb,Xb=Ro,Jb=Zb;function eA(e,t){return e&&e.length?Jb(e,Xb(t)):[]}var tA=eA;const nA=on(tA),wt=({excludeNativeToken:e=!1}={})=>{const{address:t,chainId:n,depositParams:r}=y(),{account:s}=j(),a=Re({address:t,chainId:n}),i=Pt(),[{isCustomDepositOptionsDisabled:l}]=X(),[c]=uo(),d=m.useMemo(()=>nA([...a.filter(({isDeposit:f})=>f).map(({tokenAddress:f,tokenName:v,precision:T})=>({address:f.toLowerCase(),symbol:v,decimals:T})),...l?[]:[...r.customTokens.map(f=>({...f,address:f.address.toLowerCase()})),...c?.[n]??[]]],"address"),[a,l,r.customTokens,c,n]),p=!!d.length,g=!!s&&p,{data:h}=_.useReadContracts({contracts:d.map(({address:f})=>({address:f,abi:k.erc20Abi,functionName:"balanceOf",args:[s??u.AddressZero],chainId:n})),query:{enabled:g}});return wn(h),m.useMemo(()=>{if(!p)return[];const f=[];for(let b=0;b<d.length;b++)f[b]={value:"",address:d[b]?.address??u.AddressZero,symbol:d[b]?.symbol??d[b]?.address??u.AddressZero,balance:h?.[b]?.result?w.normalizeNumber((h?.[b]?.result).toString()??"0",d[b]?.decimals??u.DEFAULT_PRECISION):0,decimals:d[b]?.decimals??u.DEFAULT_PRECISION};const v=f.slice().sort((b,A)=>b.balance&&A.balance?A.balance-b.balance:0),T=v.find(({symbol:b})=>b===r.defaultDepositTokenSymbol);return[...T?[T]:[],...v.filter(({symbol:b})=>b!==r.defaultDepositTokenSymbol),...i||l||e?[]:[{value:"",address:u.CHAIN_NATIVE_TOKENS[n]?.address??u.AddressZero,symbol:u.CHAIN_NATIVE_TOKENS[n]?.nativeTokenSymbol??"",decimals:u.CHAIN_NATIVE_TOKENS[n]?.decimals??u.DEFAULT_PRECISION}]]},[p,i,l,e,n,d,h,r.defaultDepositTokenSymbol])},rA=()=>{const e=y(),[t]=wt(),n=R()[1],[r]=ve();m.useEffect(()=>{r==="deposit"&&t?.symbol&&n({address:t?.address,symbol:t.symbol,decimals:t?.decimals,value:"",isLoading:!t.symbol})},[n,e.address,r,t?.symbol,t?.address,t?.decimals])},sA=()=>{const{chainId:e,address:t,deprecated:n}=y(),{data:{isPrivateVault:r}={isPrivateVault:!1}}=ce({address:t,chainId:e}),s=r||n,a=Jo({address:t,chainId:e});return{isVaultDepositLocked:s,isAccountWhitelisted:a}},Fa=()=>{const{defaultLockTime:e}=q(),{chainId:t,address:n}=y(),{data:{customCooldown:r}={}}=Ot({address:n,chainId:t}),{depositMethod:s}=mt(),a=r?Vt.formatDuration({minutes:Number(r)/60}):e;switch(s){case"depositWithCustomCooldown":case"nativeDepositWithCustomCooldown":case"zapDepositWithCustomCooldown":case"zapNativeDepositWithCustomCooldown":return a;default:return e}},oA="1",aA=()=>{const{account:e=u.AddressZero}=j(),{address:t,chainId:n}=y(),[r]=B(),s=ue({address:t,chainId:n}),{minDepositUSD:a}=Pr(t,n),{data:i}=aa({address:t,chainId:n,account:e}),l=i?.balanceInUsdNumber??0,c=s==="0"?oA:s,d=Math.max(0,a-l),p=new I(r.value||"0").multipliedBy(c);return{requiresMinDeposit:p.isZero()?!1:p.lte(d),requiredMinDepositAmount:w.formatToUsd({value:d})}},$r=e=>{const[{action:t,status:n}]=Q();return t===e&&(n==="Wallet"||n==="Mining")},iA=e=>{const t=we(),{showError:n}=Ve(),{onAcceptTermsOfUse:r}=Cr(),{termsOfUseAccepted:s}=q(),{swapQuoteRefreshTriggered:a}=te(),i=cr(),l=m.useRef(!1),c=a==="deposit",{disabled:d,label:p,handleTrade:g}=Br({trade:e}),{isError:h,isLoading:f,isFetching:v}=Mt(),T=$r("deposit"),b=d||f||c;m.useEffect(()=>(c&&!v&&!h&&!l.current&&(l.current=!0,i(null),g()),c||(l.current=!1),()=>{l.current=!1}),[c,v,h,g,i]);const A=mT(),x=()=>{A?t({type:"MERGE_OVERLAY",payload:{type:G.HYPEREVM_WARNING,isOpen:!0,onConfirm:async()=>{g()}}}):g()};return{handleClick:()=>{if(h){n(u.DEPOSIT_SWAP_DATA_ERROR);return}s?x():t({type:"MERGE_OVERLAY",payload:{type:G.TERMS_OF_USE,isOpen:!0,onConfirm:async L=>{try{L(!0),await r()&&x()}catch{console.error("Failed to verify terms of use acceptance")}finally{L(!1)}}}})},disabled:b,label:p,isLoading:T}},lA=()=>{const e=E(),{approveAndDeposit:t,isLoading:n,flowState:r}=gb(),{handleClick:s,disabled:a}=iA(t);return{handleClick:s,disabled:a,isLoading:n,buttonText:(()=>{switch(r){case"approving":case"waiting-approve-confirmation":return e.approveDepositStep;case"updating-prices":case"waiting-prices-confirmation":return e.updateOndoPricesStep;case"depositing":return e.depositNowStep;default:return e.depositAction}})()}},cA=()=>{const{ActionButton:e=z}=$(),{handleClick:t,disabled:n,isLoading:r,buttonText:s}=lA();return o.jsx(e,{onClick:t,disabled:n,loading:r,children:s})},dA=()=>{const{deprecated:e,symbol:t,chainId:n,maintenance:r,maintenanceDeposits:s,depositCapacity:a}=y(),[i]=R(),l=Nt(),c=le({address:i.address,chainId:n}),{isVaultDepositLocked:d,isAccountWhitelisted:p}=sA(),{requiresHighSlippageConfirm:g,confirmHighSlippage:h,slippageToBeUsed:f}=Lr(),{requiresMinDeposit:v,requiredMinDepositAmount:T}=aA(),A=Number(i.value||"0")*Number(c),x=a!==void 0&&A>a;return{requiresMinDeposit:v,requiresWhitelist:d&&!p,requiresHighSlippageConfirm:g,poolSymbol:t,requiredMinDepositAmount:T,deprecated:e,confirmHighSlippage:h,slippageToBeUsed:f,maintenance:r||s,exceedsDepositCapacity:x,insufficientBalance:l}},uA=()=>{const{ActionButton:e=z}=$(),t=E(),{requiresMinDeposit:n,requiredMinDepositAmount:r,requiresWhitelist:s,requiresHighSlippageConfirm:a,deprecated:i=!1,poolSymbol:l,slippageToBeUsed:c,confirmHighSlippage:d,maintenance:p,insufficientBalance:g,exceedsDepositCapacity:h}=dA();return n?o.jsx(e,{disabled:!0,children:t.minimumPurchase.replace("{value}",r)}):s||p?o.jsx(Jt,{promptText:i?t.poolIsInactive.replace("{poolSymbol}",l):p?t.poolDepositsAreMaintenance.replace("{poolSymbol}",l):t.poolIsPrivate,children:t.depositAction}):h?o.jsx(Jt,{promptText:t.exceedsDepositCapacity.replace("{poolSymbol}",l),children:t.depositAction}):g?o.jsx(e,{disabled:!0,children:t.insufficientBalance}):a?o.jsx(e,{onClick:d,children:t.confirmMaxSlippage.replace("{slippagePercentage}",`${Math.abs(c)}`)}):o.jsx(cA,{})},pA=()=>{const[e,t]=R(),{chainId:n}=y(),r=le({address:e.address,chainId:n}),s=Tn({symbol:e.symbol,address:e.address});return{...e,price:r,balance:s,updater:t}},mA=()=>{const{address:e,chainId:t}=y(),[n]=B(),r=ue({address:e,chainId:t});return{...n,price:r}},wA=()=>{const e=pA(),t=mA(),n=ze(),r=Ua(),[{minSlippage:s}]=X();return{autoFocus:!1,sendToken:e,receiveToken:t,tradingPriceDiff:r,minSlippage:s,onInputFocus:()=>{n?.(u.TRADING_PANEL_LOG_EVENT.INVEST_INPUT_FOCUS,{symbol:e.symbol,address:w.transformAddressForAnalytics(e.address)})},onInputChange:l=>{e.updater({value:l})}}},tn=({children:e})=>o.jsx("table",{className:"dtw-min-w-full dtw-border-separate",style:{borderSpacing:"0px 0.25rem"},children:o.jsx("tbody",{children:e})}),Wa=({children:e})=>{const t=E();return o.jsx(F.Disclosure,{children:({open:n})=>o.jsxs(o.Fragment,{children:[o.jsxs(F.DisclosureButton,{className:"dtw-px-1.5 dtw-w-[100px] dtw-flex dtw-justify-between dtw-rounded-[var(--panel-radius-secondary,var(--panel-radius))] hover:dtw-bg-[var(--panel-meta-hover-bg,var(--panel-neutral-color))] focus:dtw-outline-none",children:[n?t.hide:t.showAll,o.jsx(ye.ChevronDownIcon,{className:N("dtw-text-[color:var(--panel-icon-color,var(--panel-content-color))] !dtw-h-[var(--panel-input-token-icon-size,var(--panel-icon-size))] !dtw-w-[var(--panel-input-token-icon-size,var(--panel-icon-size))] sm:dtw-w-[var(--panel-input-token-icon-size-sm,var(--panel-icon-size-sm))] sm:dtw-h-[var(--panel-input-token-icon-size-sm,var(--panel-icon-size-sm))]",{"dtw-rotate-180 dtw-transform":n})})]}),o.jsx(F.Transition,{show:n,children:o.jsx(F.DisclosurePanel,{className:"dtw-mt-1 dtw-transition dtw-transform dtw-duration-100 dtw-ease-out data-[closed]:opacity-0 data-[closed]:-dtw-translate-y-2.5 dtw-static dtw-rounded-[var(--panel-radius-secondary,var(--panel-radius))] dtw-flex dtw-flex-col dtw-gap-1",children:e})})]})})},hA=[w.HYPERLIQUID_PERPS_ACCOUNT_ADDRESS,u.USDC_HYPEREVM.address],Ls=({tokenAddress:e})=>hA.some(t=>w.isEqualAddress(e,t)),gA=({tokenAddress:e})=>w.isEqualAddress(e,w.HYPERLIQUID_PERPS_ACCOUNT_ADDRESS),Ds=({tokenAddress:e})=>w.isEqualAddress(e,u.USDC_MAINNET.address),fA=(e,t)=>{if(t!==Z.hyperEvm.id||!e.some(gA))return e;const n=e.filter(c=>!Ls(c)),r=e.filter(Ls),[s]=r;if(!s)return e;const a=r.reduce((c,d)=>c+Number(d.fraction),0),i=r.reduce((c,d)=>c+d.fractionUsdNumber,0),l={...s,tokenName:u.USDC_HYPEREVM.symbol,tokenAddress:u.USDC_HYPEREVM.address,precision:u.USDC_HYPEREVM.decimals,asset:{iconSymbols:[u.USDC_HYPEREVM.symbol]},fraction:a.toFixed(w.getConventionalTokenPriceDecimals(a)),fractionUsd:w.formatToUsd({value:i}),fractionUsdNumber:i};return[...n,l].sort((c,d)=>d.fractionUsdNumber-c.fractionUsdNumber)},vA=(e,t)=>{if(t.length===0)return e;const n=({tokenAddress:c})=>t.some(d=>w.isEqualAddress(c,d)),r=e.filter(c=>n(c)||Ds(c));if(!r.some(n))return e;const[s]=r;if(!s)return e;const a=r.reduce((c,d)=>c+d.fractionUsdNumber,0),i={...s,tokenName:u.USDC_MAINNET.symbol,tokenAddress:u.USDC_MAINNET.address,precision:u.USDC_MAINNET.decimals,asset:{iconSymbols:[u.USDC_MAINNET.symbol]},fraction:a.toFixed(w.getConventionalTokenPriceDecimals(a)),fractionUsd:w.formatToUsd({value:a}),fractionUsdNumber:a};return[...e.filter(c=>!n(c)&&!Ds(c)),i].sort((c,d)=>d.fractionUsdNumber-c.fractionUsdNumber)},TA=e=>{const{address:t,chainId:n}=y(),[{value:r}]=R(),s=ta({vaultTokensAmount:r,address:t,chainId:n}),{assets:a}=je({address:t,chainId:n}),i=m.useMemo(()=>vA(fA(s,n),a.map(({address:v})=>v)),[s,n,a]),l=e?i.length:u.DEFAULT_VISIBLE_ASSETS_LIMIT,c=i.find(({tokenAddress:v})=>u.FLAT_MONEY_UNIT_ADDRESSES.some(T=>w.isEqualAddress(v,T))),d=!!c&&c.amount!=="0",p=i.find(({tokenAddress:v})=>w.isEqualAddress(v,pe.MIDAS_MAPOLLO_ADDRESS)),g=!!p&&p.amount!=="0",{firstPart:h,secondPart:f}=w.sliceByIndex(i,l);return{visibleAssets:h,hiddenAssets:f,showUnitWithdrawalTip:d,unitSymbol:c?.tokenName,unitAddress:c?.tokenAddress??u.AddressZero,showMapolloWithdrawalTip:g,mapolloSymbol:p?.tokenName}},bA=({symbol:e})=>{const t=E();return o.jsxs("div",{className:"dtw-flex dtw-gap-1 dtw-items-center dtw-text-xs dtw-text-[color:var(--panel-secondary-content-color)]",children:[t.as," ",o.jsx(xe,{symbols:[e],size:"xs"})," ",e]})},Ga=({className:e,showFraction:t=!0,iconSize:n,showAllAsset:r=!1})=>{const{visibleAssets:s,hiddenAssets:a,showUnitWithdrawalTip:i,unitSymbol:l,unitAddress:c,showMapolloWithdrawalTip:d,mapolloSymbol:p}=TA(r),g=m.useCallback(({fraction:h,fractionUsd:f,tokenName:v,asset:T,tokenAddress:b})=>{const A=w.isFlatMoneyLeveragedAsset(b);return o.jsxs("tr",{children:[o.jsxs("td",{style:{width:150,maxWidth:150},children:[o.jsx(Rt,{symbol:v,iconSymbols:T.iconSymbols,symbolClasses:"dtw-text-xs dtw-font-bold",size:n}),A&&o.jsx(bA,{symbol:w.getFlatMoneyCollateralByLeverageAddress(b).symbol})]}),t&&o.jsxs("td",{style:{width:150,maxWidth:150},children:[o.jsx("p",{className:"dtw-truncate",children:h}),o.jsx("p",{className:"dtw-truncate dtw-text-xs dtw-text-[color:var(--panel-secondary-content-color)]",children:f})]})]},v)},[n,t]);return o.jsx("div",{className:N("dtw-text-sm dtw-font-light",e),children:s.length>0?o.jsxs(o.Fragment,{children:[o.jsx(tn,{children:s.map(g)}),a.length>0&&o.jsx(Wa,{children:o.jsx(tn,{children:a.map(g)})}),i&&o.jsxs("p",{className:"dtw-mt-1 dtw-text-[color:var(--panel-warning-content-color)] dtw-text-[length:var(--panel-label-font-size)]",children:[l," can be redeemed using"," ",o.jsxs("a",{className:"dtw-text-[color:var(--panel-warning-content-color)] dtw-inline-flex dtw-gap-0.5 dtw-underline",href:w.getFlatMoneyLinkByUnitAddress(c),target:"_blank",rel:"noreferrer",children:["Flat Money ",o.jsx(oe.ArrowTopRightOnSquareIcon,{className:"dtw-w-3"})]})]}),d&&o.jsxs("p",{className:"dtw-mt-1 dtw-text-[color:var(--panel-warning-content-color)] dtw-text-[length:var(--panel-label-font-size)]",children:[p," can be redeemed using"," ",o.jsxs("a",{className:"dtw-text-[color:var(--panel-warning-content-color)] dtw-inline-flex dtw-gap-0.5 dtw-underline",href:pe.MIDAS_MAPOLLO_LINK,target:"_blank",rel:"noreferrer",children:["Midas ",o.jsx(oe.ArrowTopRightOnSquareIcon,{className:"dtw-w-3"})]})]})]}):o.jsx(Yo,{})})},AA=({symbol:e})=>{const t=tt(),n=we(),{standalone:r}=q(),s=t.some(p=>p.symbol===e),a=e===u.MULTI_ASSET_TOKEN.symbol,i=ao(),l=s&&t.length===1;return{isAllSymbol:a,onClick:()=>{i?.({isOpen:!0,entity:s?"pool":"token"}),r&&n({type:"MERGE_OVERLAY",payload:{type:s?G.POOL_SELECT:G.TOKEN_SELECT,isOpen:!0}})},disabled:l,hideTokenIcon:r&&s}},xA=({symbol:e})=>{const{isAllSymbol:t,onClick:n,disabled:r,hideTokenIcon:s}=AA({symbol:e}),a=E();return o.jsxs("button",{className:N("dtw-flex dtw-items-center dtw-gap-1 dtw-rounded-[var(--panel-input-button-radius,var(--panel-radius))] dtw-border dtw-border-[var(--panel-input-button-border-color,var(--panel-accent-to-color))] !dtw-bg-[var(--panel-input-button-bg,var(--panel-secondary-color))] dtw-px-[var(--panel-input-button-px)] dtw-py-[var(--panel-input-button-py)] hover:dtw-opacity-[var(--panel-action-hover-opacity)] dtw-opacity-[var(--panel-action-opacity)]",{"dtw-pr-2 dtw-pointer-events-none":r}),onClick:n,disabled:r,children:[o.jsx(Rt,{symbol:e,iconSymbols:s?[]:[e],symbolClasses:"dtw-font-[var(--panel-input-token-font-weight,var(--panel-font-weight-medium))] dtw-text-[length:var(--panel-input-token-font-size,var(--panel-font-size-xs))] dtw-line-height-[length:var(--panel-input-token-line-height,var(--panel-line-height-xs))] sm:dtw-text-[length:var(--panel-input-token-font-size-sm,var(--panel-font-size))] sm:dtw-leading-[var(--panel-input-token-line-height-sm,var(--panel-line-height))] dtw-text-[color:var(--panel-input-button-content-color)]",CustomIcon:t?o.jsx(Je.CircleStackIcon,{className:"dtw-h-[var(--panel-input-token-icon-size,var(--panel-icon-size))] dtw-w-[var(--panel-input-token-icon-size,var(--panel-icon-size))] sm:dtw-w-[var(--panel-input-token-icon-size-sm,var(--panel-icon-size-sm))] sm:dtw-h-[var(--panel-input-token-icon-size-sm,var(--panel-icon-size-sm))] dtw-text-[color:var(--panel-icon-color,var(--panel-content-color))]"}):void 0,customTitle:t?a.all:void 0}),!r&&o.jsx(Je.ChevronDownIcon,{className:"dtw-flex-shrink-0 dtw-text-[color:var(--panel-icon-color,var(--panel-content-color))] dtw-h-[var(--panel-input-token-icon-size,var(--panel-icon-size))] dtw-w-[var(--panel-input-token-icon-size,var(--panel-icon-size))] sm:dtw-w-[var(--panel-input-token-icon-size-sm,var(--panel-icon-size-sm))] sm:dtw-h-[var(--panel-input-token-icon-size-sm,var(--panel-icon-size-sm))]","aria-hidden":"true"})]})};function yA(e,t){const n=new I(e);return t&&n.gt(0)?n.toFixed(6):e}function ks(e){if(!e)return e;const[t,n]=e.split("."),r=(t||"").replace(/\B(?=(\d{3})+(?!\d))/g,",");return n!==void 0?`${r}.${n}`:r}function SA(e){return e.replace(/,/g,"")}const EA=e=>{e.currentTarget.blur()},CA=({displayCalculatedValue:e,assetInput:t="",assetPrice:n,tradingPriceDiff:r=0,type:s,onInputChange:a,maxBalance:i,autoFocus:l=!1,disabled:c=!1})=>{const d=m.useRef(null),{usdAmount:p,isEstimated:g}=m.useMemo(()=>{const T=Number(t||0)*Number(n||0);if(!e||isNaN(T))return{usdAmount:"",isEstimated:!1};const b=w.formatToUsd({value:T,maximumFractionDigits:w.getConventionalTokenPriceDecimals(T)});return r?{usdAmount:`${b} (${r>0?"+":""}${r}%${s===H.ERROR?"⚠":""})`,isEstimated:c}:{usdAmount:b,isEstimated:c}},[t,n,r,e,s,c]),h=()=>{d.current?.focus()},f=T=>{if(!a)return;const b=T.target.selectionStart??0,A=T.target.value,x=SA(A);if(x!==""&&!/^\d*\.?\d*$/.test(x))return;const S=x==="."?"0.":x,L=(A.slice(0,b).match(/,/g)||[]).length,O=b-L+S.length-x.length;a(S),requestAnimationFrame(()=>{if(!d.current)return;const M=ks(S);let P=0,U=M.length;for(let J=0;J<M.length;J++){if(P===O){U=J;break}M[J]!==","&&P++}d.current.setSelectionRange(U,U)})},v=()=>{a&&i&&a(i)};return{inputRef:d,usdAmount:p,isEstimated:g,value:ks(yA(t,c)),autoFocus:l,onContainerClick:h,onMaxBalanceClick:v,onInputChange:f}},yt=e=>{const{inputRef:t,usdAmount:n,isEstimated:r,autoFocus:s,value:a,onContainerClick:i,onMaxBalanceClick:l,onInputChange:c}=CA(e),{assetSymbol:d,onInputFocus:p,disabled:g=!1,displayMax:h=!1,displayCalculatedValue:f=!1,type:v=H.DEFAULT,isLoading:T=!1,children:b}=e,A=E(),x=N({"dtw-text-[color:var(--panel-error-content-color)]":v===H.ERROR&&!T,"dtw-text-[color:var(--panel-warning-content-color)]":v===H.WARNING&&!T});return o.jsxs("div",{className:N("dtw-relative dtw-flex dtw-flex-col dtw-gap-[var(--panel-input-group-gap,var(--panel-gap))] dtw-rounded-[var(--panel-input-radius,var(--panel-radius))] dtw-border dtw-bg-[var(--panel-input-bg,var(--panel-neutral-color))] dtw-py-[var(--panel-input-py)] dtw-px-[var(--panel-input-px)] dtw-shadow-md",{"focus-within:dtw-border-[var(--panel-input-focus-border-color)] focus-within:dtw-bg-[var(--panel-input-focus-bg)]":!g,"dtw-border-[var(--panel-input-border-color)]":v===H.DEFAULT||T,"dtw-border-[color:var(--panel-error-content-color)]":v===H.ERROR&&!T,"dtw-border-[color:var(--panel-warning-content-color)]":v===H.WARNING&&!T}),onClick:i,children:[o.jsxs("div",{className:N("dtw-flex dtw-justify-between dtw-items-center dtw-text-[length:var(--panel-input-label-font-size,var(--panel-font-size-sm))] dtw-leading-[var(--panel-input-label-line-height,var(--panel-line-height-sm))] dtw-font-[var(--panel-input-label-font-weight,var(--panel-font-weight-light))] dtw-gap-x-2"),children:[o.jsx("div",{className:"transparent-scrollbar dtw-flex-1 dtw-overflow-x-auto",children:d===u.MULTI_ASSET_TOKEN.symbol?o.jsx(Ga,{iconSize:"sm"}):o.jsx("input",{className:N("dtw-appearance-none dtw-bg-transparent dtw-text-[color:var(--panel-input-content-color,var(--panel-content-color))] placeholder:dtw-text-[color:var(--panel-input-placeholder-color,var(--panel-secondary-content-color))] dtw-text-[length:var(--panel-input-font-size,var(--panel-font-size-sm))] !dtw-leading-[var(--panel-input-line-height,var(--panel-line-height-sm))] dtw-font-[var(--panel-input-font-weight,var(--panel-font-weight-light))] dtw-outline-none focus:dtw-outline-none lg:dtw-text-[length:var(--panel-input-font-size-lg,var(--panel-font-size-lg))] lg:dtw-leading-[var(--panel-input-line-height-lg,var(--panel-line-height-lg))] dtw-w-full",x),ref:t,autoFocus:s,type:"text",inputMode:"decimal",value:a,onChange:c,onFocus:p,placeholder:"0",disabled:g,onWheelCapture:EA})}),o.jsx(xA,{symbol:d})]}),o.jsxs("div",{className:"dtw-flex dtw-items-center dtw-justify-between dtw-gap-x-2",children:[o.jsx("div",{className:"dtw-flex dtw-items-center dtw-gap-[var(--panel-input-price-gap,var(--panel-gap))] dtw-flex-1 dtw-overflow-x-auto transparent-scrollbar",children:f&&o.jsx(o.Fragment,{children:T?o.jsx("div",{className:"dtw-h-[18px]",children:o.jsx(Se,{className:"dtw-stroke-[color:var(--panel-accent-from-color)] dtw-h-[var(--panel-icon-secondary-size)] sm:dtw-h-[var(--panel-icon-secondary-size-sm)] dtw-w-[var(--panel-icon-secondary-size)] sm:dtw-w-[var(--panel-icon-secondary-size-sm)]"})}):o.jsxs("span",{className:N("dtw-flex-1 dtw-py-[1px]",{"dtw-text-[color:var(--panel-input-loading-content-color,var(--panel-loading-content-color))]":T,"!dtw-text-[color:var(--panel-secondary-content-color)] dtw-text-[length:var(--panel-balance-font-size)] !dtw-leading-[var(--panel-label-line-height,var(--panel-line-height-xs))]":!T&&v===H.DEFAULT},x),children:[n,r&&o.jsx("span",{className:"dtw-ml-1",children:A.estimated})]})})}),b,h&&o.jsx(Lf,{onClick:l})]})]})},_A=()=>{const{stablePrecision:e,defaultPrecision:t}=q(),[{symbol:n,address:r}]=R(),s=Ae({symbol:n,address:r,watch:!0});return{formattedBalance:w.formatTokenBalance({balance:s,symbol:n,precision:w.isStableSymbol(n)?e:t,truncateSymbol:!0}),symbol:n}},za=()=>{const{formattedBalance:e,symbol:t}=_A();return o.jsx(qo,{balance:e,symbol:t})},IA=()=>{const{stablePrecision:e,defaultPrecision:t}=q(),[{symbol:n,address:r}]=B(),s=Ae({symbol:n,address:r,watch:!0});return{formattedBalance:w.formatTokenBalance({balance:s,symbol:n,precision:w.isStableSymbol(n)?e:t,truncateSymbol:!0}),symbol:n}},Ha=()=>{const{formattedBalance:e,symbol:t}=IA();return o.jsx(qo,{balance:e,symbol:t})},NA=()=>{const e=Ir(),t=_r(),n=!Le(),{isCompleteWithdrawStep:r,isFetching:s}=Ye(),[a]=B(),[,i]=X(),l=Ya();m.useEffect(()=>{if(!(!n||a.isLoading||s)){if(r){const c=l<0?Math.abs(l):0,d=Number((c+e).toFixed(2));i({minSlippage:d});return}i({minSlippage:t})}},[i,a.isLoading,n,l,r,t,e,s])},PA=()=>{const{account:e=u.AddressZero}=j(),{chainId:t}=y();return _.useReadContract({address:w.getContractAddressById("easySwapperV2",t),abi:u.EasySwapperV2Abi,functionName:"withdrawalContracts",chainId:t,args:[e],query:{enabled:!w.isZeroAddress(e)}})},Ur=()=>{const{chainId:e}=y(),[t]=B(),n=Rr({address:t.address,chainId:e}),r=_e(),{data:s=[]}=ie(),a=s.filter(({address:g})=>w.isEqualAddress(g,t.address)).reduce((g,{rawBalance:h})=>g+h,BigInt(0)),i=s.filter(({address:g})=>!w.isEqualAddress(g,t.address)).reduce((g,{valueInUsd:h})=>g+h,0),l=new I(i).shiftedBy(u.DEFAULT_PRECISION).div(n?.toString()??"1").shiftedBy(t.decimals).toFixed(0,I.ROUND_DOWN),c=new I(l).times(1-u.DEFAULT_RECEIVED_VALUE_GAP/100).times(1-r/100).toFixed(0,I.ROUND_DOWN),d=new I(a.toString()).plus(l).toFixed(0,I.ROUND_DOWN),p=new I(a.toString()).plus(c).toFixed(0,I.ROUND_DOWN);return{expectedReceiveAmount:d,minExpectedReceiveAmount:p}},Va=({isClaim:e,onErrorCallback:t}={})=>{const n=y(),{data:r=[]}=ie(),{data:s={}}=Me(),[a]=B(),{minExpectedReceiveAmount:i}=Ur(),l=_e(),[{slippage:c}]=X(),d=c==="auto",p=ne()[1],g=e?"claim":"swap",h=Ce({action:g,onErrorCallback:t}),f=Ka(),{send:v,estimate:T}=de({contractId:"easySwapperV2",functionName:u.EASY_SWAPPER_V2_COMPLETE_WITHDRAW_METHOD,onSettled:h}),b=m.useCallback(async()=>{if(e||!f)return[];const A=Object.values(s)[0]?.map(({routerKey:S})=>S);if(!A?.length)return console.warn("[Complete Withdraw] No available routers found for swap"),[];const x=d?w.getAutoSlippageSimulationCandidates({maxSlippage:l}):[l];for(const S of x)for(const L of A){const O=Object.entries(s).reduce((U,[J,Y])=>{const re=Y?.find(ge=>ge.routerKey===L);return{...U,[J]:re}},{}),M=w.buildSwapWithdrawTransactionData({assets:r,swapData:O,receiveAssetAddress:a.address,slippage:S}),{error:P}=await T(M,i);if(!P)return console.debug(`[Complete Withdraw] Estimation succeeded: slippage=${S}%, router=${L}`),console.debug("[Complete Withdraw] Transaction arguments:",[M,i]),[M,i]}return console.error("[Complete Withdraw] All routers failed estimation"),[]},[e,f,s,r,a.address,d,l,T,i]);return m.useCallback(async()=>{p({type:"add",action:g,symbol:n.symbol,chainId:n.chainId});const A=await b();return console.log("Arguments",A),v(...A)},[g,n.chainId,n.symbol,v,b,p])},OA=()=>{const{data:e=[]}=ie();return e.reduce((t,{balance:n,price:r})=>t+n*r,0)},ie=()=>{const{account:e=u.AddressZero}=j(),{chainId:t}=y(),{data:n=[]}=Na({account:e,chainId:t});return Ca({assets:n,chainId:t})},Ye=()=>{const{data:e=[],isFetching:t}=ie();return{isCompleteWithdrawStep:e?.length>0,isFetching:t}},Me=()=>{const e=Ir(),{chainId:t}=y(),{account:n=u.AddressZero}=j(),[{slippage:r}]=X(),[s]=B(),{data:a=[]}=ie(),i=Ka(),l=m.useMemo(()=>a.filter(({address:c})=>!w.isEqualAddress(c,s.address)).map(({address:c,rawBalance:d})=>({chainId:t,sourceAddress:c,destinationAddress:s.address,walletAddress:n,amount:d.toString(),slippage:(r==="auto"?e:r).toString()})),[a,t,e,s.address,r,n]);return DT(l,{enabled:i,refetchInterval:u.SWAP_QUOTE_REFRESH_INTERVAL_MS})},LA=()=>{const[e,t]=B(),{data:n=[]}=ie(),{data:r,isFetching:s,isError:a}=Me();m.useEffect(()=>{t({isLoading:s})},[s,t]),m.useEffect(()=>{if(n.length===0||s||a)return;const i=n.reduce((l,c)=>{if(w.isEqualAddress(c.address,e.address))return l.plus(c.rawBalance.toString());const d=r?.[c.address]??[],g=d[OT(d)]?.destinationAmount??"0";return l.plus(g)},new I(0));t({value:k.formatUnits(BigInt(i.toFixed()),e.decimals)})},[n,a,s,e.address,e.decimals,r,t])},qa=({withdraw:e,isClaim:t,onErrorCallback:n})=>{const r=E(),{showError:s}=Ve(),{account:a}=j(),i=y(),[l]=B(),c=Q()[1],d=ne()[1],p=sn(),{data:g}=ie(),{isFetching:h}=Me(),f=m.useCallback(async()=>{const v=i.chainId,T=(g??[]).map(({address:A,decimals:x,symbol:S,balance:L})=>({address:A,decimals:x,symbol:S,value:L.toString()})),b=t?null:T.filter(A=>!w.isEqualAddress(A.address,l.address));c({isOpen:!0,status:"Wallet",action:t?"claim":"swap",link:"",sendTokens:b,receiveTokens:t?T:[l]});try{await e()}catch(A){A instanceof We&&(n?.(),s(A.message),p?.(A,i.address,v,a)),c({isOpen:!1,status:"None",link:"",sendTokens:null,receiveTokens:null}),d({type:"remove",status:"fail"})}},[a,g,t,n,p,i.address,i.chainId,l,s,d,c,e]);return{disabled:t?!1:h,label:t?r.claimAction:r.swapAction,handleTrade:f}},Ya=()=>{const{expectedReceiveAmount:e}=Ur(),[t]=B(),n=new I(t.value||"0").shiftedBy(t.decimals);return e==="0"||n.isZero()?0:n.dividedBy(e).minus(1).times(100).decimalPlaces(2,I.ROUND_DOWN).toNumber()},Ka=()=>{const[e]=B(),{data:t=[]}=ie();return t.length>0&&t.some(({address:n})=>!w.isEqualAddress(n,e.address))},DA=({handleTrade:e,onError:t})=>{const{showError:n}=Ve(),{data:r=[]}=ie(),{data:s,isFetching:a,isError:i}=Me(),l=m.useRef(!1),c=r.length===0,d=r.length>1;m.useEffect(()=>{i&&(t(),n(u.WITHDRAW_SWAP_DATA_ERROR))},[i,t,n]),m.useEffect(()=>{const p=d?!!s&&Object.values(s).length>0:!0;try{if(c||!p||a||l.current)return;l.current=!0,e()}catch(g){console.error(g)}},[r,a,s,e,d,c])},Fr=()=>{const e=y(),[t]=wt(),{isAllAssetsWithdrawOptionDefault:n}=q(),{data:r=[]}=ie(),s=r.length>0,{data:a}=Or(e),{hasAssets:i,isReady:l}=pt({address:e.address,chainId:e.chainId}),c=ve()[1],d=R()[1],p=B()[1],g=()=>{d({...t,value:"",isLoading:!t}),p({address:e.address,symbol:e.symbol,decimals:u.DEFAULT_PRECISION,value:""})},h=()=>{const{customTokens:f,defaultWithdrawTokenSymbol:v}=e.withdrawParams,T=f.find(({symbol:x})=>x===v)??f[0]??u.MULTI_ASSET_TOKEN,b=l&&!i&&(n||v===u.MULTI_ASSET_TOKEN.symbol),A=s?T:a||b?u.MULTI_ASSET_TOKEN:T;d({address:e.address,symbol:e.symbol,decimals:u.DEFAULT_PRECISION,value:""}),p({...A,value:"",isLoading:!1})};return f=>{switch(c(f),f){case"deposit":return g();case"withdraw":return h()}}},kA=()=>{ba(),rA(),na(),ie()},et=["deposit","withdraw"],RA=()=>{const[e]=ve(),t=Fr();return{handleClick:()=>{const r=et.find(s=>s!==e);r&&t(r)}}},Qa=()=>{const{handleClick:e}=RA();return o.jsx("div",{onClick:e,className:"dtw-cursor-pointer dtw-group dtw-absolute dtw-left-1/2 -dtw-top-[calc(var(--panel-inputs-group-gap)*0.5)] -dtw-translate-y-1/2 -dtw-translate-x-1/2 dtw-flex dtw-items-center dtw-justify-center dtw-rounded-[var(--panel-inputs-arrow-radius)] dtw-p-0.5 dtw-bg-[color:var(--panel-background-color)] dtw-backdrop-blur-3xl",children:o.jsx("button",{className:"!dtw-bg-[var(--panel-inputs-arrow-bg)] dtw-rounded-[var(--panel-inputs-arrow-radius)] dtw-px-[var(--panel-inputs-group-px-arrow)] dtw-py-[var(--panel-inputs-group-py-arrow)]",children:o.jsx(ye.ArrowDownIcon,{className:"dtw-h-[var(--panel-inputs-group-arrow-size)] dtw-w-[var(--panel-inputs-group-arrow-size)] dtw-text-[color:var(--panel-inputs-arrow-color)] group-hover:dtw-opacity-[var(--panel-action-hover-opacity)] group-hover:dtw-rotate-180 dtw-transition-transform"})})})},jA=()=>{const{sendToken:e,receiveToken:t,autoFocus:n,tradingPriceDiff:r,minSlippage:s,onInputFocus:a,onInputChange:i}=wA(),l=kt(s??0);return o.jsxs(o.Fragment,{children:[o.jsx(yt,{assetInput:e.value,onInputChange:i,onInputFocus:a,autoFocus:n,assetSymbol:e.symbol,assetPrice:e.price??"",displayMax:!0,maxBalance:e.balance,displayCalculatedValue:!0,isLoading:e.isLoading,children:o.jsx(za,{})}),o.jsxs(yt,{assetInput:t.value,assetSymbol:t.symbol,assetPrice:t.price??"",displayCalculatedValue:!0,disabled:!0,tradingPriceDiff:r,type:l,isLoading:t.isLoading,children:[o.jsx(Ha,{}),o.jsx(Qa,{})]})]})},MA=()=>{const{address:e,chainId:t}=y(),n=la({address:e,chainId:t}),[r]=B();if(!n)return{isMaxSupplyCapReached:!1,supplyCapInUsd:""};const{totalSupplyNumber:s,maxSupplyCapNumber:a,remainingSupplyCapInUsd:i}=n,l=Number(r.value||"0"),c=s+l>a,d=w.formatToUsd({value:i,maximumFractionDigits:0,minimumFractionDigits:0});return{isMaxSupplyCapReached:c,supplyCapInUsd:d}},BA=()=>{const{yearlyEarnings:e,dailyEarnings:t,showEarnings:n}=Ia(),r=E();return n?o.jsxs("div",{className:"dtw-flex dtw-gap-2",children:[o.jsxs("div",{className:"dtw-flex dtw-flex-col dtw-flex-1 dtw-rounded-[var(--panel-radius)] dtw-p-3",style:{backgroundColor:"var(--panel-success-bg-color)"},children:[o.jsxs("div",{className:"dtw-flex dtw-items-center dtw-gap-1",children:[o.jsx("span",{className:"dtw-text-[length:var(--panel-font-size-xs)] dtw-font-semibold dtw-text-[color:var(--panel-success-content-color)]",children:r.yearlyEarnings}),o.jsx(qt,{text:r.projectedYearlyEarningsTooltip,placement:"top",iconClassName:"dtw-h-3 dtw-w-3 dtw-text-[color:var(--panel-success-content-color)]"})]}),o.jsx("span",{className:"dtw-text-[length:var(--panel-font-size-sm)] dtw-font-medium dtw-text-[color:var(--panel-success-content-color)]",children:e})]}),o.jsxs("div",{className:"dtw-flex dtw-flex-col dtw-flex-1 dtw-rounded-[var(--panel-radius)] dtw-p-3",style:{backgroundColor:"var(--panel-success-bg-color)"},children:[o.jsxs("div",{className:"dtw-flex dtw-items-center dtw-gap-1",children:[o.jsx("span",{className:"dtw-text-[length:var(--panel-font-size-xs)] dtw-font-semibold dtw-text-[color:var(--panel-success-content-color)]",children:r.dailyEarnings}),o.jsx(qt,{text:r.projectedDailyEarningsTooltip,placement:"top",iconClassName:"dtw-h-3 dtw-w-3 dtw-text-[color:var(--panel-success-content-color)]"})]}),o.jsx("span",{className:"dtw-text-[length:var(--panel-font-size-sm)] dtw-font-medium dtw-text-[color:var(--panel-success-content-color)]",children:t})]})]}):null},$A=()=>{const e=E(),[{slippage:t,minSlippage:n,isMaxSlippageLoading:r}]=X(),s=t==="auto",a=Ra(),[i]=B(),{address:l,chainId:c}=y(),{entryFee:d}=bn({address:l,chainId:c}),{minDepositUSD:p}=Pr(l,c),g=Fa(),h=jt(),f=p?w.formatToUsd({value:p,minimumFractionDigits:0}):"",v=kt(s?n??0:t),T=da({tradingType:"deposit",slippage:t,minSlippage:n}),b=v===H.DEFAULT?e.depositSlippageWarning:e.highSlippageWarning,A=w.formatNumberToLimitedDecimals({value:new I(a).shiftedBy(-u.DEFAULT_PRECISION).toFixed(),decimals:4});return{themeType:v,slippageTooltipText:b,isMaxSlippageLoading:r,slippagePlaceholder:T,minReceive:`${A} ${i.symbol.toUpperCase()}`,entryFee:d,entryFeeTooltipText:e.entryFeeExplanation,minDeposit:f,lockTime:g,showMinimumReceivedAmount:h}},Wr=({className:e})=>{const{value:t,isLoading:n}=xa();return o.jsxs("div",{className:N("dtw-flex dtw-h-[var(--panel-icon-secondary-size)] dtw-justify-end dtw-gap-x-2",e),children:[n&&o.jsx(Se,{className:"dtw-stroke-[color:var(--panel-accent-from-color)] dtw-h-[var(--panel-icon-secondary-size)] dtw-w-[var(--panel-icon-secondary-size)]"}),o.jsx("p",{className:N("dtw-text-right dtw-text-[length:var(--panel-meta-font-size)] dtw-leading-[var(--panel-meta-line-height)] dtw-text-[color:var(--panel-secondary-content-color)] dtw-font-[var(--panel-meta-font-weight,var(--panel-font-weight-light))]",{"dtw-text-[color:var(--panel-loading-content-color)]":n}),children:t})]})},UA=()=>{const e=E(),{slippageTooltipText:t,slippagePlaceholder:n,isMaxSlippageLoading:r,minReceive:s,themeType:a,entryFee:i,entryFeeTooltipText:l,minDeposit:c,lockTime:d,showMinimumReceivedAmount:p}=$A(),g=m.useMemo(()=>{const h=[{tooltipText:e.exchangeRate,label:e.rate,value:o.jsx(Wr,{})},{tooltipText:t,label:e.maxSlippage,value:o.jsxs("div",{className:"dtw-flex dtw-gap-1",children:[r&&o.jsx(Se,{className:"dtw-stroke-[color:var(--panel-accent-from-color)] dtw-h-[var(--panel-icon-secondary-size)] sm:dtw-h-[var(--panel-icon-secondary-size-sm)] dtw-w-[var(--panel-icon-secondary-size)] sm:dtw-w-[var(--panel-icon-secondary-size-sm)]"}),o.jsxs("span",{className:N({"dtw-text-[color:var(--panel-loading-content-color)]":r}),children:[n,"%"]})]})}];return p&&h.push({tooltipText:e.minReceiveAmount,label:e.minReceived,value:s}),h.push({tooltipText:l,label:e.entryFee,value:i}),c&&h.push({tooltipText:e.minDepositUsd,label:e.minDeposit,value:c}),h.push({tooltipText:e.tokensLockTime.replace("{lockTime}",d),label:e.cooldown,value:d}),h},[t,e.maxSlippage,e.entryFee,e.minReceiveAmount,e.minReceived,e.minDepositUsd,e.minDeposit,e.exchangeRate,e.rate,e.tokensLockTime,e.cooldown,r,n,p,l,i,c,s,d]);return o.jsx(or,{collapseItems:g,themeType:a})},FA=({children:e})=>{const{DepositMetaInfo:t,MaxSupplyReachedAlert:n}=$(),{isMaxSupplyCapReached:r,supplyCapInUsd:s}=MA();return o.jsxs(V.Meta,{children:[r&&!!n&&o.jsx(n,{supplyCapInUsd:s}),o.jsx("div",{className:"dtw-bg-[var(--panel-meta-action-panel-bg)]",children:e}),o.jsx(BA,{}),o.jsx(UA,{}),t&&o.jsx(t,{})]})},WA=()=>{vb(),Tb()},GA=()=>{const{countryCode:e}=q(),{address:t,chainId:n}=y(),{hasAssets:r}=je({address:t,chainId:n}),s=e?pe.BLOCKED_COUNTRY_CODES_MAP[e]:void 0,a=e?pe.ONDO_BLOCKED_COUNTRY_CODES_MAP[e]:void 0;return{isGeoBlocked:!!s||r&&!!a,blockedCountryName:s??a??""}},zA=()=>{const{ActionButton:e=z}=$(),t=E(),{status:n}=_.useConnect(),{onConnect:r}=Cr();return o.jsx(e,{onClick:r,className:"dtw-whitespace-nowrap dtw-text-sm",loading:n==="pending",children:t.connectWallet})},HA=()=>{const{ActionButton:e=z}=$(),{switchNetwork:t}=De(),{chainId:n}=y(),r=E(),s=()=>{t?.({chainId:n})};return o.jsx(e,{onClick:s,children:r.switchNetwork})},Za=()=>{const{account:e}=j(),{chainId:t}=De(),n=y();return{isDisconnected:!e,isWrongNetwork:t!==n.chainId}},Gr=({children:e})=>{const{isDisconnected:t,isWrongNetwork:n}=Za();return t?o.jsx(zA,{}):n?o.jsx(HA,{}):e},VA=({onClick:e,tooltipText:t,disabled:n})=>{const[r,s]=m.useState(!1),a=()=>{e(),s(!0)};return m.useEffect(()=>{if(!r)return;const i=setTimeout(()=>{s(!1)},u.SWAP_QUOTE_REFRESH_INTERVAL_MS);return()=>clearTimeout(i)},[r]),{disabled:n||r,tooltipText:t,handleClick:a}},Xa=e=>{const{disabled:t,tooltipText:n,handleClick:r}=VA(e);return o.jsx(sr,{text:n,children:o.jsx(Yt,{Icon:ye.ArrowPathIcon,onClick:r,disabled:t,containerClassName:"!dtw-self-center",className:N("dtw-h-[var(--panel-input-token-icon-size,var(--panel-icon-size))] dtw-w-[var(--panel-input-token-icon-size,var(--panel-icon-size))] sm:dtw-w-[var(--panel-input-token-icon-size-sm,var(--panel-icon-size-sm))] sm:dtw-h-[var(--panel-input-token-icon-size-sm,var(--panel-icon-size-sm))]",{"dtw-opacity-50":t})})})},qA=()=>{const{refetch:e,isFetched:t}=Mt(),{invalidateTradingQueries:n}=ut();return{handleSwapQuoteReload:()=>{n(),e()},disabled:!t}},YA=()=>{const e=E(),{handleSwapQuoteReload:t,disabled:n}=qA();return o.jsx(Xa,{tooltipText:e.refreshSwapQuoteTooltip,onClick:t,disabled:n})},KA=()=>{const{refetch:e,isFetched:t}=Me(),{invalidateTradingQueries:n}=ut();return{handleSwapQuoteReload:()=>{n(),e()},disabled:!t}},QA=()=>{const e=E(),{handleSwapQuoteReload:t,disabled:n}=KA();return o.jsx(Xa,{tooltipText:e.refreshSwapQuoteTooltip,onClick:t,disabled:n})},ZA=()=>Le()?o.jsx(YA,{}):o.jsx(QA,{}),Ja=({children:e,...t})=>{const{ActionButton:n=z}=$(),{openLimitSellOverlay:r,displayLimitSellOverlay:s}=rT();return s?o.jsx(n,{...t,onClick:r,children:e}):null},XA=({children:e,...t})=>{const{ActionButton:n=z}=$(),{openLimitBuyOverlay:r,displayLimitBuyOverlay:s}=pT();return s?o.jsx(n,{...t,onClick:r,children:e}):null},ei=({children:e,...t})=>{const{ActionButton:n=z}=$(),{onOpenNotificationsSettings:r}=Cr();return r?o.jsx(n,{...t,onClick:r,children:e}):null},JA=()=>{const{address:e,symbol:t}=y();return{handleAddToWallet:m.useCallback(()=>{w.addTokenToWallet({address:e,symbol:t,decimals:u.DEFAULT_PRECISION,image:Sr(t)})},[e,t])}},ex=()=>{const e=E(),{handleAddToWallet:t}=JA();return o.jsx("button",{type:"button",onClick:t,className:"dtw-underline dtw-text-[color:var(--panel-accent-from-color)] hover:dtw-opacity-80",children:e.addToWallet})},tx=()=>{const e=E(),t=we();Sn();const{symbol:n}=y(),[r]=R(),[s]=B(),a=_t()[1],{isCompleteWithdrawStep:i}=Ye(),{swapQuoteRefreshTriggered:l}=te(),c=cr(),{isFetching:d,isError:p}=Me(),g=m.useRef(!1),h=m.useCallback(()=>{a({sendToken:{symbol:n,...!i&&{amount:w.formatNumberToLimitedDecimals({value:r.value})}},receiveTokens:[{symbol:s.symbol,...s.value&&{amount:w.formatNumberToLimitedDecimals({value:s.value})}}]}),t({type:"MERGE_OVERLAY",payload:{type:G.WITHDRAW_STEPPER,isOpen:!0}})},[i,a,n,r.value,s.symbol,s.value,t]);return m.useEffect(()=>(l==="withdraw"&&!d&&!p&&!g.current&&(g.current=!0,c(null),h()),l!=="withdraw"&&(g.current=!1),()=>{g.current=!1}),[l,d,p,h,c]),{handleClick:h,disabled:l==="withdraw"&&d,label:i?e.swapAction:e.sellNow}},ti=()=>{const{ActionButton:e=z}=$(),{handleClick:t,label:n,disabled:r}=tx();return o.jsx(e,{onClick:t,disabled:r,children:n})},nx=()=>{WA();const e=E(),{isSanctioned:t}=q(),{GeoBlockAlert:n,SanctionedAlert:r,CustomDepositMeta:s}=$(),{isGeoBlocked:a,blockedCountryName:i}=GA(),l=a||t,c=[{Component:n?()=>o.jsx(n,{countryName:i}):void 0,value:a,key:"geo-block"},{Component:r,value:t,key:"sanctioned"}].filter(({value:d})=>d);return o.jsxs(o.Fragment,{children:[o.jsx(V.InputGroup,{children:o.jsx(jA,{})}),o.jsx(FA,{children:l?c.map(({Component:d,key:p})=>d&&o.jsx(d,{},p)):o.jsx(o.Fragment,{children:o.jsx(Gr,{children:o.jsxs("div",{className:"tw-flex tw-flex-col tw-gap-2",children:[o.jsx(uA,{}),o.jsx(XA,{highlighted:!1,children:e.limitBuy})]})})})}),s&&o.jsx(s,{})]})},rx=()=>o.jsx(V.Panel,{children:o.jsx(nx,{})}),sx=e=>Object.keys(G).some(t=>t===e),ox=({children:e})=>{const t=ha();let n=null;return m.Children.forEach(e,r=>{if(m.isValidElement(r)){const s=r.props.type;sx(s)&&t[s]&&t[s].isOpen&&(n=r)}}),n},ax=({type:e})=>{const t=E(),{DepositTermsOfUse:n,ActionButton:r=z}=$(),{handleReject:s,handleConfirm:a,isPending:i}=ae({type:e});return o.jsxs(V.Overlay,{className:"dtw-justify-between dtw-gap-y-1 dtw-overflow-y-auto theme-scrollbar",children:[o.jsxs("div",{className:"dtw-flex dtw-gap-1 dtw-items-center dtw-text-warning",children:[o.jsx(oe.ExclamationCircleIcon,{className:"dtw-h-5 dtw-w-5"}),o.jsx("p",{children:t.termsOfUse})]}),o.jsxs("div",{className:"dtw-flex dtw-flex-col dtw-gap-2",children:[o.jsxs("p",{className:"dtw-self-start dtw-text-sm",children:[t.termOfUseDepositListTitle,":"]}),o.jsxs("ul",{className:"dtw-list-inside dtw-list-disc dtw-flex dtw-flex-col dtw-gap-y-1 dtw-text-sm dtw-text-[color:var(--panel-secondary-content-color)]",children:[o.jsx("li",{children:t.termOfUseDepositAssetSlippage}),o.jsx("li",{children:t.termOfUseDepositBugs}),o.jsx("li",{children:t.termOfUseDepositDowntime}),o.jsx("li",{children:t.termOfUseDepositAuditRisk})]}),n&&o.jsx(n,{})]}),o.jsxs("div",{className:"dtw-flex dtw-flex-col dtw-gap-2 dtw-w-full",children:[o.jsx(r,{highlighted:!1,onClick:s,children:t.back}),o.jsx(r,{onClick:a,disabled:i,loading:i,children:o.jsx("span",{children:i?t.confirmInWallet:t.termOfUseDepositAccept})})]})]})},ix=({type:e})=>{const t=E(),{ActionButton:n=z}=$(),{handleReject:r,handleConfirm:s}=ae({type:e});return o.jsxs(V.Overlay,{className:"dtw-justify-between dtw-gap-y-1",children:[o.jsxs("div",{className:"dtw-flex dtw-gap-1 dtw-items-center dtw-text-warning",children:[o.jsx(oe.ExclamationCircleIcon,{className:"dtw-h-5 dtw-w-5"}),o.jsx("p",{children:t.highSlippage})]}),o.jsx("p",{className:"dtw-text-sm",children:t.responsibleHighSlippage}),o.jsxs("p",{className:"dtw-text-sm dtw-self-start",children:[t.highSlippageListTitle,":"]}),o.jsxs("ul",{className:"dtw-list-inside dtw-list-disc dtw-flex dtw-flex-col dtw-gap-y-1 dtw-text-sm dtw-text-[color:var(--panel-secondary-content-color)] dtw-max-h-28 dtw-overflow-y-auto theme-scrollbar",children:[o.jsx("li",{children:t.termOfUseDepositAssetSlippage}),o.jsx("li",{children:t.termOfUseDepositBugs}),o.jsx("li",{children:t.termOfUseDepositDowntime}),o.jsx("li",{children:t.termOfUseDepositAuditRisk})]}),o.jsxs("div",{className:"dtw-flex dtw-flex-col dtw-gap-2 dtw-w-full",children:[o.jsx(n,{highlighted:!1,onClick:r,children:t.back}),o.jsx(n,{onClick:s,children:t.confirm})]})]})},lx=({type:e})=>{const t=E(),{ActionButton:n=z}=$(),{handleReject:r,handleConfirm:s}=ae({type:e});return o.jsxs(V.Overlay,{className:"dtw-justify-between dtw-gap-y-3",children:[o.jsx("div",{className:"dtw-flex dtw-gap-1 dtw-items-center",children:o.jsx("p",{children:t.hyperEvmWarningTitle})}),o.jsxs("div",{className:"dtw-flex dtw-flex-col dtw-gap-2 dtw-text-sm dtw-text-[color:var(--panel-secondary-content-color)]",children:[o.jsx("p",{children:t.hyperEvmWarningDeposit}),o.jsx("p",{children:t.hyperEvmWarningWithdraw}),o.jsx("p",{className:"dtw-text-[color:var(--panel-content-color)]",children:t.hyperEvmWarningTrust})]}),o.jsxs("div",{className:"dtw-flex dtw-flex-col dtw-gap-2 dtw-w-full",children:[o.jsx(n,{highlighted:!1,onClick:r,children:t.back}),o.jsx(n,{onClick:s,children:t.hyperEvmUnderstandRisks})]})]})},cx=({token:e,onSelect:t})=>({onClick:()=>{t(e)}}),dx=({token:e,onSelect:t})=>{const{onClick:n}=cx({token:e,onSelect:t});return o.jsxs("div",{className:"dtw-space-y-3 dtw-rounded-xl dtw-py-3 dtw-pl-4 dtw-pr-3",onClick:n,children:[o.jsx(Rt,{symbol:e.symbol,iconSymbols:[e.symbol],size:"xl",CustomIcon:o.jsx(Je.CircleStackIcon,{className:"dtw-h-10 dtw-w-10 group-hover:dtw-opacity-100 dtw-opacity-100 sm:dtw-opacity-50"}),symbolClasses:"dtw-text-sm dtw-font-medium group-hover:dtw-opacity-100 dtw-opacity-100 sm:dtw-opacity-80"}),o.jsx(Ga,{className:"dtw-pt-2",showFraction:!1,showAllAsset:!0})]})},ux=({token:e,onSelect:t,isActive:n,onClose:r})=>{const s=Ae({symbol:e.symbol,address:e.address}),{defaultPrecision:a}=q();return{formattedBalance:new I.BigNumber(s).toFixed(a,I.BigNumber.ROUND_DOWN),onClick:()=>{if(n){r();return}t(e)}}},ni=({token:e,onSelect:t,onClose:n,isActive:r=!1})=>{const{onClick:s,formattedBalance:a}=ux({token:e,onSelect:t,onClose:n,isActive:r});return o.jsxs("div",{className:"dtw-flex dtw-items-center dtw-rounded-xl dtw-gap-x-2 dtw-py-3 dtw-pl-4 dtw-pr-3",onClick:s,children:[o.jsx(Rt,{symbol:e.symbol,iconSymbols:[e.symbol],size:"xl",symbolClasses:N("group-hover:dtw-opacity-100 dtw-text-sm dtw-font-medium",{"dtw-opacity-100 sm:dtw-opacity-80":!r,"dtw-opacity-100":r}),className:N("group-hover:dtw-opacity-100",{"dtw-opacity-100 sm:dtw-opacity-50":!r,"dtw-opacity-100":r})}),o.jsxs("div",{className:"dtw-flex dtw-flex-col dtw-self-end dtw-text-sm dtw-font-light dtw-text-[color:var(--panel-balance-content-color)]",children:[r&&o.jsx(Je.CheckIcon,{className:"dtw-w-4 dtw-self-end dtw-text-themeGreen"}),o.jsxs("div",{children:[o.jsx("span",{className:"dtw-mr-1 dtw-text-xs",children:e.symbol}),a]})]})]})},px=[],mx=()=>{const e=y(),[t]=ve(),[n,r]=R(),[s,a]=B(),{data:i}=Or(e),l=wt(),c=i?px:e.withdrawParams.customTokens;return m.useMemo(()=>({tokens:t==="deposit"?l:c,updater:t==="deposit"?r:a,activeTokens:[n,s]}),[t,l,c,r,a,n,s])},wx=({searchQuery:e,type:t})=>{const[{isMultiAssetWithdrawalEnabled:n}]=X(),{isCompleteWithdrawStep:r}=Ye(),s=Pt(),[a]=ve(),{handleReject:i}=ae({type:t}),{address:l,chainId:c}=y(),{hasAssets:d,isReady:p}=pt({address:l,chainId:c}),{tokens:g,updater:h,activeTokens:f}=mx(),v=m.useMemo(()=>e?g.filter(({symbol:b})=>b.toLowerCase().includes(e)):g,[e,g]),T=m.useCallback(({address:b,value:A,decimals:x,symbol:S})=>{h({address:b,value:A,decimals:x,symbol:S}),i()},[h,i]);return{tokenList:v,activeTokens:f,onSelect:T,onClose:i,showMultiAssetWithdrawalOption:n&&a==="withdraw"&&!s&&!r&&p&&!d}},hx=({type:e,searchQuery:t})=>{const n=E(),{tokenList:r,activeTokens:s,onSelect:a,showMultiAssetWithdrawalOption:i,onClose:l}=wx({type:e,searchQuery:t});return o.jsxs(V.Overlay,{onClose:l,centered:!1,className:"dtw-gap-[var(--panel-gap)]",children:[o.jsx("span",{className:"dtw-text-center dtw-text-[length:var(--panel-font-size-sm)] dtw-font-[var(--panel-font-weight-medium)]",children:n.selectToken}),o.jsxs("ul",{className:"dtw-grid dtw-gap-[calc(var(--panel-gap) * 0.5)] dtw-overflow-y-auto theme-scrollbar",children:[r.map(c=>{const d=s.some(({address:p,symbol:g})=>p===c.address&&g===c.symbol);return o.jsx("li",{className:"dtw-cursor-pointer dtw-rounded-xl dtw-drop-shadow-md even:odd:dtw-bg-[color:var(--panel-popup-list-item-bg-even)] odd:dtw-bg-[color:var(--panel-popup-list-item-bg-odd)] dtw-group",children:o.jsx(ni,{token:c,onSelect:a,isActive:d,onClose:l})},`${c.address}_${c.symbol}`)}),i&&o.jsx("li",{className:"dtw-cursor-pointer dtw-rounded-xl dtw-p-0.5 even:dtw-bg-[color:var(--panel-popup-list-item-bg-even)] odd:dtw-bg-[color:var(--panel-popup-list-item-bg-odd)] dtw-group",children:o.jsx(dx,{token:u.MULTI_ASSET_TOKEN,onSelect:a})})]})]})},gx=({children:e,chainId:t})=>{const{chainConfig:n}=q(),{Image:r=Ko}=$(),s=n[t]?.iconPath,a=n[t]?.name;return o.jsxs("div",{children:[o.jsxs("div",{className:"dtw-sticky dtw-top-0 dtw-z-10 dtw-flex dtw-items-center dtw-space-x-3 dtw-bg-[color:var(--panel-popup-list-header-bg)] dtw-drop-shadow-md dtw-p-3",children:[s&&o.jsx("div",{className:"dtw-h-6 dtw-w-6",children:o.jsx(r,{className:"dtw-h-full dtw-w-full dtw-rounded-full dtw-object-contain",src:s,alt:"chain icon",width:100,height:100})}),o.jsx("p",{className:"dtw-whitespace-nowrap dtw-text-sm",children:a??t})]}),e]})},er=(e,t)=>e.address in t?{balanceInUsd:t[e.address]?.balanceInUsd??w.formatToUsd({value:0}),balanceInUsdNumber:t[e.address]?.balanceInUsdNumber??0}:{balanceInUsd:w.formatToUsd({value:0}),balanceInUsdNumber:0},fx=e=>(t,n)=>er(n,e).balanceInUsdNumber-er(t,e).balanceInUsdNumber,vx=({searchQuery:e,type:t})=>{const n=oa(),r=tt(),s=y(),{handleReject:a}=ae({type:t}),[i]=ve(),l=R()[1],c=B()[1],d=no()[1],p=m.useCallback(({address:h,value:f,decimals:v,symbol:T})=>{(i==="deposit"?c:l)({address:h,value:f,decimals:v,symbol:T}),d(h),a()},[i,l,c,a,d]);return{poolList:m.useMemo(()=>Array.from(new Set(r.map(({chainId:h})=>h))).map(h=>({chainId:h,configs:[...r.filter(f=>f.chainId===h&&!f.deprecated).map(f=>({...f,...er(f,n),isActive:s.address===f.address})).filter(({symbol:f})=>e?f.toLowerCase().includes(e):!0).slice().sort(fx(n))]})),[e,n,r,s]),onClose:a,onSelect:p}},Tx=({type:e,searchQuery:t})=>{const n=E(),{poolList:r,onClose:s,onSelect:a}=vx({type:e,searchQuery:t});return o.jsxs(V.Overlay,{onClose:s,centered:!1,className:"dtw-gap-[var(--panel-gap)]",children:[o.jsx("span",{className:"dtw-text-center dtw-text-[length:var(--panel-font-size-sm)] dtw-font-[var(--panel-font-weight-medium)]",children:n.selectToken}),o.jsx("div",{className:"dtw-grid dtw-gap-[calc(var(--panel-gap) * 0.5)] dtw-overflow-y-auto theme-scrollbar",children:r.map(({chainId:i,configs:l})=>o.jsx(gx,{chainId:i,children:l.map(({isActive:c,symbol:d,address:p})=>o.jsx("div",{className:N("dtw-rounded-xl dtw-drop-shadow-md even:odd:dtw-bg-[color:var(--panel-popup-list-item-bg-even)] odd:dtw-bg-[color:var(--panel-popup-list-item-bg-odd)] dtw-group",{"dtw-cursor-pointer ":!c}),children:o.jsx(ni,{token:{symbol:d,address:p,value:"",decimals:u.DEFAULT_PRECISION},onSelect:a,isActive:c,onClose:s})},`${p}_${d}`))},i))})]})},bx=({type:e})=>{const{address:t,symbol:n,chainId:r}=y(),[{link:s,sendTokens:a},i]=Q(),{handleReject:l}=ae({type:e}),c=a?.[0],d=w.getTxHashShort(s),p=ue({address:t,chainId:r}),g=m.useCallback(()=>{i({isOpen:!1}),l()},[i,l]),h=pe.COVERED_CALL_VAULT_ADDRESSES.has(t.toLowerCase());return{onClose:g,link:s,vaultAddress:t,vaultSymbol:n,paidToken:c,txHash:d,vaultTokenPrice:w.formatToUsd({value:p}),showDeriveBanner:h}},Ax=e=>{const t=E(),{link:n,onClose:r,showDeriveBanner:s,vaultSymbol:a,paidToken:i,txHash:l,vaultTokenPrice:c}=bx(e),{ActionButton:d=z,DeriveSuccessBanner:p}=$(),g=ua();return o.jsxs(V.Overlay,{className:"dtw-justify-between dtw-gap-y-4",noPadding:!0,children:[o.jsxs("div",{className:"dtw-flex dtw-flex-col dtw-items-center dtw-justify-center dtw-gap-3 dtw-pt-1 dtw-px-2 dtw-w-full",children:[o.jsxs("div",{className:"dtw-flex dtw-flex-col dtw-items-center dtw-text-[color:var(--panel-success-content-color)] dtw-mb-2",children:[o.jsx(ye.CheckIcon,{className:"dtw-h-16 dtw-w-16 lg:dtw-h-24 lg:dtw-w-24 dtw-shrink-0"}),"Success"]}),o.jsx(Ue,{}),o.jsxs("div",{className:"dtw-flex dtw-items-center dtw-justify-between dtw-gap-2 dtw-w-full",children:[o.jsx("p",{children:t.orderingLabel}),o.jsxs("div",{className:"dtw-flex dtw-items-center dtw-gap-2 dtw-text-[color:var(--panel-secondary-content-color)]",children:[o.jsx("span",{children:a}),o.jsx(ex,{})]})]}),o.jsx(Ue,{}),i&&o.jsxs(o.Fragment,{children:[o.jsxs("div",{className:"dtw-flex dtw-items-center dtw-justify-between dtw-gap-2 dtw-w-full",children:[o.jsx("p",{children:t.paidLabel}),o.jsxs("div",{className:"dtw-flex dtw-flex-col dtw-items-end dtw-justify-center dtw-gap-1 dtw-text-[color:var(--panel-secondary-content-color)]",children:[i.value?w.formatNumberToLimitedDecimals({value:+i.value,decimals:4}):null," ",i.symbol]})]}),o.jsx(Ue,{})]}),o.jsxs("div",{className:"dtw-flex dtw-items-center dtw-justify-between dtw-gap-2 dtw-w-full",children:[o.jsx("p",{children:t.priceLabel}),o.jsx("p",{className:"dtw-text-[color:var(--panel-secondary-content-color)]",children:c})]}),n&&o.jsxs(o.Fragment,{children:[o.jsx(Ue,{}),o.jsxs("div",{className:"dtw-flex dtw-items-center dtw-justify-between dtw-gap-2 dtw-w-full",children:[o.jsx("p",{children:t.transactionLabel}),o.jsx(He,{link:n,children:l??t.explorer})]})]})]}),!!p&&s&&o.jsx(p,{}),o.jsxs("div",{className:"dtw-flex dtw-flex-col dtw-gap-2 dtw-w-full",children:[g?o.jsx(Ja,{children:t.openLimitOrderAfterBuySwitchLabel}):s?null:o.jsx(ei,{children:t.openNotificationsSettingsLabel}),o.jsx(d,{highlighted:!1,onClick:r,children:t.done})]})]})},xx=()=>{const e=E(),{LogoSpinner:t=Se}=$(),[{link:n}]=Q();return o.jsxs("div",{className:"dtw-flex dtw-flex-col dtw-items-center dtw-justify-center dtw-gap-2 dtw-pt-1 dtw-px-4 dtw-w-full dtw-h-full md:dtw-w-1/2 md:dtw-h-1/2",children:[o.jsx(t,{className:"dtw-h-16 dtw-w-16 lg:dtw-h-24 lg:dtw-w-24 dtw-shrink-0"}),e.miningTx,n&&o.jsx(He,{link:n,className:"dtw-text-sm",iconClassName:"dtw-w-4 dtw-h-4",children:e.explorer})]})},yx=({onClose:e})=>{const t=E(),{ActionButton:n=z}=$(),[{link:r}]=Q();return o.jsxs(o.Fragment,{children:[o.jsxs("div",{className:"dtw-flex dtw-flex-col dtw-items-center dtw-justify-center dtw-gap-2 dtw-pt-1 dtw-px-4 dtw-w-full dtw-h-full md:dtw-w-1/2 md:dtw-h-1/2",children:[o.jsxs("div",{className:"dtw-flex dtw-flex-col dtw-items-center dtw-gap-2 dtw-text-[color:var(--panel-success-content-color)]",children:[o.jsx(ye.CheckIcon,{className:"dtw-h-16 dtw-w-16 lg:dtw-h-24 lg:dtw-w-24 dtw-shrink-0"}),t.createLimitSellOrder]}),r&&o.jsx(He,{link:r,className:"dtw-text-sm",iconClassName:"dtw-w-4 dtw-h-4",children:t.explorer})]}),o.jsxs("div",{className:"dtw-flex dtw-flex-col dtw-gap-2 dtw-w-full",children:[o.jsx(ei,{children:t.openNotificationsSettingsLabel}),o.jsx(n,{highlighted:!1,onClick:e,children:t.done})]})]})},Sx=({type:e})=>{const[{status:t},n]=Q(),{handleReject:r}=ae({type:e}),s=t==="Mining";return{onClose:m.useCallback(()=>{n({isOpen:!1}),r()},[r,n]),isProcessing:s}},Ex=e=>{const{onClose:t,isProcessing:n}=Sx(e);return o.jsx(V.Overlay,{className:"dtw-justify-between dtw-gap-y-4",onClose:t,noPadding:!0,children:n?o.jsx(xx,{}):o.jsx(yx,{onClose:t})})},Cx=({type:e})=>{const{statusLabel:t,status:n}=va(),[{link:r,action:s},a]=Q(),i=n=="Success",{handleReject:l}=ae({type:e}),c=s==="single_withdraw"&&i,d=i&&s==="deposit",p=i&&s&&u.COMPLETE_WITHDRAW_ACTIONS.includes(s);return{title:t??n,isSuccessTx:i,link:r,onClose:()=>{a({isOpen:!1}),l()},showNextStepTip:c,displaySuccessDepositOverlay:d,displaySuccessWithdrawalOverlay:p,displayLimitOrderTransactionOverlay:s==="create_limit_sell_order",displayWithdrawLimitOrderOverlay:s==="limit_order_withdraw"}},_x=({sendTokens:e})=>{const t=E(),[n]=e??[];return n?o.jsxs("div",{className:"dtw-flex dtw-items-center dtw-gap-1 dtw-flex-wrap dtw-overflow-hidden",children:[o.jsx("span",{children:t.approveSpending}),o.jsx(xe,{size:"sm",symbols:[n.symbol]}),o.jsx("span",{children:n.symbol})]}):null},Ix=({receiveTokens:e})=>{const t=E(),[n]=e??[];return n?o.jsxs("div",{className:"dtw-flex dtw-flex-wrap dtw-items-center dtw-gap-1",children:[t.swapAndClaimTo," ",o.jsxs("div",{className:"dtw-flex dtw-items-center dtw-gap-1",children:[o.jsx(xe,{size:"sm",symbols:[n.symbol]})," ",n.symbol]})]}):null},Nx=({sendTokens:e,receiveTokens:t,action:n})=>{const r=E(),[s]=e??[],[a]=t??[];return s?o.jsxs("div",{className:"dtw-flex dtw-flex-wrap dtw-items-center dtw-gap-x-1",children:[n==="deposit"?r.pay:n==="multi_withdraw"?r.sell:r.unrollAction,o.jsxs("div",{className:"dtw-flex dtw-items-center dtw-gap-1",children:[o.jsx(xe,{size:"sm",symbols:[s.symbol]})," ",s.symbol]})," ","to receive",o.jsx("div",{className:"dtw-flex dtw-items-center dtw-gap-1",children:a?o.jsxs(o.Fragment,{children:[o.jsx(xe,{size:"sm",symbols:[a.symbol]})," ",a.symbol]}):o.jsx(o.Fragment,{children:n==="multi_withdraw"?r.multiAssetFractions:r.swappableAssets})})]}):null},Px=()=>{const e=E(),[{action:t,receiveTokens:n,sendTokens:r}]=Q();return t==="approve"?o.jsx(_x,{sendTokens:r}):t==="swap"?o.jsx(Ix,{receiveTokens:n}):t==="claim"?o.jsx(o.Fragment,{children:e.claimLabel}):t==="create_limit_sell_order"?o.jsx(o.Fragment,{children:e.createLimitSellOrder}):t==="delete_limit_order_withdraw"?o.jsx(o.Fragment,{children:e.deleteWithdrawalRequest}):t==="update_ondo_prices"?o.jsxs("div",{className:"dtw-flex dtw-flex-col dtw-gap-1",children:[o.jsx("span",{children:e.updateOndoPricesStep}),o.jsx("span",{className:"dtw-text-xs dtw-text-[color:var(--panel-secondary-content-color)]",children:e.updateOndoPricesHint})]}):o.jsx(Nx,{action:t,sendTokens:r,receiveTokens:n})},Ox=({type:e})=>{const[,t]=Q(),{handleReject:n}=ae({type:e}),[{link:r,status:s}]=Q(),a=s=="Success";return{onClose:m.useCallback(()=>{t({isOpen:!1}),n()},[n,t]),link:r,isSuccessTx:a}},Lx=e=>{const t=E(),{ActionButton:n=z}=$(),{onClose:r,link:s,isSuccessTx:a}=Ox(e);return a?o.jsxs(V.Overlay,{className:"dtw-justify-between dtw-gap-y-4",onClose:r,noPadding:!0,children:[o.jsxs("div",{className:"dtw-flex dtw-flex-col dtw-items-center dtw-justify-center dtw-gap-3 dtw-pt-1 dtw-px-4 dtw-w-full dtw-h-full",children:[o.jsx(ye.CheckIcon,{className:"dtw-h-16 dtw-w-16 lg:dtw-h-24 lg:dtw-w-24 dtw-shrink-0 dtw-text-[color:var(--panel-success-content-color)]"}),o.jsx("div",{className:"dtw-text-center dtw-text-2xl dtw-font-semibold",children:t.withdrawalRequest}),o.jsx("div",{className:"dtw-text-center dtw-text-[color:var(--panel-secondary-content-color)]",children:t.expectToReceiveUsdcSoon}),s&&o.jsx(He,{link:s,className:"dtw-text-sm",iconClassName:"dtw-w-4 dtw-h-4",children:t.explorer})]}),o.jsx("div",{className:"dtw-flex dtw-flex-col dtw-gap-2 dtw-w-full",children:o.jsx(n,{highlighted:!1,onClick:r,children:t.done})})]}):null},Dx=({type:e})=>{const{address:t,symbol:n}=y(),[{link:r},s]=Q(),{handleReject:a}=ae({type:e}),[i]=_t(),l=w.getTxHashShort(r);return{onClose:m.useCallback(()=>{s({isOpen:!1,status:"None"}),a()},[s,a]),link:r,vaultAddress:t,receiveTokens:i?.receiveTokens,vaultAmount:i?.sendToken?.amount||"",vaultSymbol:i?.sendToken?.symbol||n,txHash:l}},kx=e=>{const t=E(),{link:n,onClose:r,vaultSymbol:s,vaultAmount:a,receiveTokens:i,txHash:l}=Dx(e),{ActionButton:c=z}=$();return o.jsxs(V.Overlay,{className:"dtw-justify-between dtw-gap-y-4",noPadding:!0,children:[o.jsxs("div",{className:"dtw-flex dtw-flex-col dtw-items-center dtw-justify-center dtw-gap-3 dtw-pt-1 dtw-px-2 dtw-w-full",children:[o.jsxs("div",{className:"dtw-flex dtw-flex-col dtw-items-center dtw-text-[color:var(--panel-success-content-color)] dtw-mb-2",children:[o.jsx(ye.CheckIcon,{className:"dtw-h-16 dtw-w-16 lg:dtw-h-24 lg:dtw-w-24 dtw-shrink-0"}),"Success"]}),o.jsx(Ue,{}),o.jsxs("div",{className:"dtw-flex dtw-items-center dtw-justify-between dtw-gap-2 dtw-w-full",children:[o.jsx("p",{children:t.soldLabel}),o.jsxs("div",{className:"dtw-text-[color:var(--panel-secondary-content-color)]",children:[a," ",s]})]}),i&&i.length>0&&o.jsxs(o.Fragment,{children:[o.jsx(Ue,{}),o.jsxs("div",{className:"dtw-flex dtw-items-center dtw-justify-between dtw-gap-2 dtw-w-full",children:[o.jsx("p",{children:t.receivedLabel}),o.jsx("div",{className:"dtw-flex dtw-flex-col dtw-items-end dtw-text-[color:var(--panel-secondary-content-color)]",children:i.map(d=>o.jsxs("span",{children:[!!d.amount&&`${d.amount} `,d.symbol]},d.symbol))})]})]}),n&&o.jsxs(o.Fragment,{children:[o.jsx(Ue,{}),o.jsxs("div",{className:"dtw-flex dtw-items-center dtw-justify-between dtw-gap-2 dtw-w-full",children:[o.jsx("p",{children:t.transactionLabel}),o.jsx(He,{link:n,children:l??t.explorer})]})]})]}),o.jsx(c,{highlighted:!1,onClick:r,children:t.done})]})},Rx=({type:e})=>{const{link:t,title:n,onClose:r,isSuccessTx:s,showNextStepTip:a,displaySuccessDepositOverlay:i,displaySuccessWithdrawalOverlay:l,displayLimitOrderTransactionOverlay:c,displayWithdrawLimitOrderOverlay:d}=Cx({type:e}),{LogoSpinner:p=Se}=$(),g=E();return c?o.jsx(Ex,{type:e}):i?o.jsx(Ax,{type:e}):l?o.jsx(kx,{type:e}):d?o.jsx(Lx,{type:e}):o.jsxs(V.Notification,{onClose:r,children:[o.jsxs("div",{className:"dtw-flex dtw-items-center dtw-gap-1.5",children:[o.jsx("span",{className:"dtw-font-semibold dtw-drop-shadow-md",children:n}),s?o.jsx(oe.CheckCircleIcon,{className:"dtw-h-6 dtw-w-6 dtw-text-[color:var(--panel-success-content-color)]"}):o.jsx(p,{className:"dtw-h-5 dtw-w-5 "})]}),o.jsx("div",{className:"dtw-font-light dtw-text-sm dtw-max-h-16 dtw-overflow-y-auto theme-scrollbar dtw-break-all",children:o.jsx(Px,{})}),t&&o.jsx(He,{link:t,className:"dtw-text-sm",iconClassName:"dtw-w-4 dtw-h-4",children:g.explorer}),a&&o.jsx("p",{className:"dtw-text-xs",children:g.proceedWithNextStep})]})},ri=e=>o.jsxs("svg",{width:"123",height:"123",viewBox:"0 0 123 123",fill:"none",xmlns:"http://www.w3.org/2000/svg",...e,children:[o.jsxs("defs",{children:[o.jsxs("linearGradient",{id:"sad-face-gradient",x1:"61.5",y1:"120",x2:"61.5",y2:"4.7",gradientTransform:"translate(0 123.9) scale(1 -1)",gradientUnits:"userSpaceOnUse",children:[o.jsx("stop",{offset:"0.1",stopColor:"#5790E4"}),o.jsx("stop",{offset:"1",stopColor:"#3567AF"})]}),o.jsxs("linearGradient",{id:"sad-face-gradient1",x1:"68",y1:"56.4",x2:"68",y2:"30.4",gradientTransform:"translate(0 123.9) scale(1 -1)",gradientUnits:"userSpaceOnUse",children:[o.jsx("stop",{offset:"0.1",stopColor:"#5790E4"}),o.jsx("stop",{offset:"1",stopColor:"#3567AF"})]})]}),o.jsx("path",{d:"M61.5,119.2c31.8,0,57.7-25.8,57.7-57.7S93.3,3.8,61.5,3.8,3.8,29.7,3.8,61.5s25.8,57.7,57.7,57.7Z",fill:"none",stroke:"url(#sad-face-gradient)",strokeWidth:"4.8",strokeMiterlimit:"10"}),o.jsx("circle",{cx:"50",cy:"49.5",r:"8",fill:"#578FE3"}),o.jsx("circle",{cx:"93",cy:"49.5",r:"8",fill:"#578FE3"}),o.jsx("path",{d:"M94,93.5c0-14.4-11.6-26-26-26s-26,11.6-26,26",fill:"none",stroke:"url(#sad-face-gradient1)",strokeWidth:"4.8",strokeMiterlimit:"10"})]}),si=({triggerType:e,refetch:t,isFetched:n,onClose:r})=>{const s=cr(),{invalidateTradingQueries:a}=ut();return{handleClick:()=>{s(e),a(),t(),r?.()},disabled:!n}},jx=e=>{const{refetch:t,isFetched:n}=Mt();return si({triggerType:"deposit",refetch:t,isFetched:n,onClose:e})},oi=({handleClick:e,disabled:t})=>{const n=E(),{ActionButton:r=z}=$();return o.jsx(r,{onClick:e,disabled:t,highlighted:!0,children:n.tryAgain})},Mx=({onClose:e})=>{const{handleClick:t,disabled:n}=jx(e);return o.jsx(oi,{handleClick:t,disabled:n})},Bx=({error:e,onCancel:t})=>{const n=E(),{ActionButton:r=z}=$();return o.jsxs(V.Overlay,{className:"dtw-justify-between dtw-gap-y-4",children:[o.jsx(r,{highlighted:!1,onClick:t,className:"!dtw-p-1 !dtw-w-24 dtw-self-start",children:n.cancel}),o.jsxs("div",{className:"dtw-flex dtw-flex-col dtw-items-center dtw-justify-center dtw-gap-4 dtw-pt-4 dtw-px-4 dtw-w-full dtw-flex-1",children:[o.jsx(ri,{className:"dtw-size-32"}),o.jsxs("div",{className:"dtw-flex dtw-flex-col dtw-items-center dtw-gap-2 dtw-text-center",children:[o.jsx("p",{className:"dtw-text-lg dtw-font-medium",children:e.title}),e.hint&&o.jsx("p",{className:"dtw-text-sm dtw-text-[color:var(--panel-secondary-content-color)]",children:e.hint})]})]}),o.jsx(Mx,{onClose:t})]})},$x=u.EasySwapperV2Abi.filter(({type:e})=>e==="error").map(({name:e})=>e),Ux=({type:e})=>{const{handleReject:t,meta:n}=ae({type:e}),{isCompleteWithdrawStep:r}=Ye(),s=Le(),a=r&&!s,i=n?.error??"",l=i===u.DEPOSIT_SWAP_DATA_ERROR||i===u.WITHDRAW_SWAP_DATA_ERROR||i.includes(u.SWAP_FAILED_ERROR),c=w.parseContractErrorMessage({errorMessage:n?.error,abiErrors:$x});return{handleReject:t,error:c,showCompleteWithdrawErrorOverlay:a,isDepositSwapError:s&&l,isWithdrawSwapError:a&&l}},Fx=e=>{const{refetch:t,isFetched:n}=Me();return si({triggerType:"withdraw",refetch:t,isFetched:n,onClose:e})},Wx=({onClose:e})=>{const{handleClick:t,disabled:n}=Fx(e);return o.jsx(oi,{handleClick:t,disabled:n})},Rs=!0,Gx=e=>{const{isWrongNetwork:t}=Za(),n=_t()[1],{data:r=[]}=ie(),s=Va({isClaim:Rs}),{disabled:a,label:i,handleTrade:l}=qa({withdraw:s,isClaim:Rs}),c=$r("claim");return{disabled:a,label:i,handleTrade:()=>{n({receiveTokens:r.map(({symbol:p,balance:g})=>({symbol:p,amount:w.formatNumberToLimitedDecimals({value:g})}))}),e?.(),l()},isWrongNetwork:t,isLoading:c}},ai=({highlighted:e,className:t,onClick:n})=>{const{ActionButton:r=z}=$(),{handleTrade:s,disabled:a,label:i,isWrongNetwork:l,isLoading:c}=Gx(n);return l?null:o.jsx(r,{onClick:s,disabled:a,highlighted:e,className:t,loading:c,children:i})},zx=e=>e.length<=1?e[0]??"":[...e.slice(0,-1),`and ${e[e.length-1]}`].join(e.length===2?" ":", "),Hx=({error:e,onCancel:t,isSwapError:n=!1})=>{const r=E(),{ActionButton:s=z}=$(),[a,i]=m.useState(!1),{data:l=[]}=ie(),c=m.useMemo(()=>{const d=l.map(({symbol:g})=>g),p=zx(d);return r.skipSwapAndClaimSymbols.replace("{symbols}",p)},[l,r.skipSwapAndClaimSymbols]);return o.jsxs(V.Overlay,{className:"dtw-justify-between dtw-gap-y-4",children:[o.jsx(s,{highlighted:!1,onClick:t,className:"!dtw-p-1 !dtw-w-24 dtw-self-start",children:r.cancel}),o.jsxs("div",{className:"dtw-flex dtw-flex-col dtw-items-center dtw-justify-center dtw-gap-4 dtw-pt-4 dtw-px-4 dtw-w-full dtw-flex-1",children:[o.jsx(ri,{className:"dtw-size-32"}),o.jsxs("div",{className:"dtw-flex dtw-flex-col dtw-items-center dtw-gap-2 dtw-text-center",children:[o.jsx("p",{className:"dtw-text-lg dtw-font-medium",children:e.title}),e.hint&&o.jsx("p",{className:"dtw-text-sm dtw-text-[color:var(--panel-secondary-content-color)]",children:e.hint})]}),n&&o.jsx("div",{className:"dtw-py-2 dtw-px-4 dtw-bg-[color:var(--panel-input-bg)] dtw-rounded-full",children:o.jsx(vn,{label:c,labelClassName:"!dtw-text-sm",defaultEnabled:a,onChange:i,className:"!dtw-gap-x-2"})})]}),o.jsx("div",{className:"dtw-flex dtw-flex-col dtw-gap-2 dtw-w-full",children:n&&!a?o.jsx(Wx,{onClose:t}):o.jsx(ai,{onClick:t,highlighted:!0})})]})},Vx=e=>{const{handleReject:t,error:n,showCompleteWithdrawErrorOverlay:r,isDepositSwapError:s,isWithdrawSwapError:a}=Ux(e);return n?r?o.jsx(Hx,{error:n,onCancel:t,isSwapError:a}):s?o.jsx(Bx,{error:n,onCancel:t}):o.jsxs(V.Notification,{onClose:t,children:[o.jsx("p",{className:"dtw-text-sm",children:n.title}),n.hint&&o.jsx("p",{className:"dtw-text-xs",children:n.hint})]}):null},qx=["dtw-bg-transparent","dtw-border-[var(--limit-order-action-outline-button-border-color,var(--limit-order-border-color))]","!dtw-text-[color:var(--limit-order-action-outline-button-color,var(--limit-order-content-color))]","active:dtw-border-opacity-100","hover:enabled:dtw-border-[var(--limit-order-action-outline-button-border-hover-color)]"],Yx=["!dtw-text-[color:var(--limit-order-action-accent-button-color,var(--limit-order-accent-content-color))]","dtw-bg-gradient-to-r","dtw-from-[var(--limit-order-action-accent-button-bg-from,var(--limit-order-accent-from-color))]","dtw-to-[var(--limit-order-action-accent-button-bg-to,var(--limit-order-accent-to-color))]","dtw-border-[color:var(--limit-order-action-accent-button-border-color)]","dtw-border-[length:var(--limit-order-action-accent-button-border-width)]","hover:enabled:dtw-from-[var(--limit-order-action-accent-button-hover-bg-from,var(--limit-order-accent-hover-from-color))]","hover:enabled:dtw-to-[var(--limit-order-action-accent-button-hover-bg-to,var(--limit-order-accent-hover-to-color))]"],be=({children:e,onClick:t,highlighted:n=!0,disabled:r=!1,className:s,type:a,loading:i=!1})=>o.jsxs("button",{className:N("dtw-rounded-[var(--limit-order-input-button-radius,var(--limit-order-radius))]","dtw-font-medium","dtw-border","dtw-transition-border","dtw-duration-500","dtw-ease-in-out","disabled:dtw-opacity-50","dtw-py-2","dtw-px-5","dtw-w-full",{[Yx.join(" ")]:n,[qx.join(" ")]:!n,"dtw-flex dtw-items-center dtw-justify-center dtw-gap-1":i},s),onClick:t,disabled:r||i,type:a,children:[i&&o.jsx(Se,{className:"dtw-h-4 dtw-w-4 dtw-stroke-[var(--limit-order-accent-content-color)]"}),e]}),Kx=e=>{const{chainId:t,switchNetwork:n}=De(),r=m.useCallback(()=>{n?.({chainId:e})},[n,e]);return{isWrongNetwork:t!==e,handleNetworkSwitch:r}},ii=({vaultChainId:e,switchNetworkLabel:t,children:n})=>{const{isWrongNetwork:r,handleNetworkSwitch:s}=Kx(e);return r?o.jsx(be,{onClick:s,children:t}):n},li={switchNetwork:"Switch Network",approve:"Approve",lowerLimitLabel:"Lower limit",lowerLimitSubtitle:"Sells when price drops",upperLimitLabel:"Upper limit",upperLimitSubtitle:"Sells when price rises",partialSellLabel:"Partial sell",partialSellSubtitle:"Sells a portion when price hits limits",price:"price",currentPrice:"Current {symbol} price",limitOrderTerms:"I understand and accept limit orders are not guaranteed",create:"Create",modify:"Modify",approveLimitOrderStep:"1/2 Approve",createLimitOrderStep:"2/2 Create",modifyLimitOrderStep:"2/2 Modify",delete:"Delete",cancel:"Cancel",invalidLimitOrderPriceError:"The upper limit price must be higher than the current price, and the lower limit price must be lower than the current price.",minimumVaultBalanceRequired:"Minimum vault balance required: {amount}",limitOrdersTitle:"Order details",acceptTerms:"I understand and accept",termsPoint1:"A limit order requires an unchanged vault token balance — any transfers or withdrawals may block execution.",termsPoint2:"Revoking token approval after placing an order will prevent the order from being executed.",termsPoint3:"If the vault tokens are still subject to a lock-up period, the order cannot be executed.",termsPoint4:"Limit sells are intended to settle in USDC. In rare cases where market conditions or high slippage prevent a USDC swap, the order may be settled in the underlying tokens of the respective vault.",termsPoint5:"While limit sells are generally expected to execute, they are currently in beta and execution is not guaranteed."},ci=m.createContext(li),di=({children:e,config:t})=>{const n=m.useMemo(()=>({...li,...t}),[t]);return o.jsx(ci.Provider,{value:n,children:e})},Ie=()=>{const e=m.useContext(ci);if(!e)throw new Error("TranslationContext is used out of Provider");return e},ui=({symbol:e,price:t})=>{const n=Ie();return o.jsxs("div",{className:"dtw-px-3 dtw-py-2.5 dtw-flex dtw-justify-between dtw-bg-[color:var(--limit-order-secondary-color)] dtw-text-[length:var(--limit-order-font-size-xs)] dtw-rounded-[var(--limit-order-radius)]",children:[o.jsx("span",{className:"dtw-text-[length:var(--limit-order-font-size)]",children:n.currentPrice.replace("{symbol}",e)}),o.jsx("span",{className:"dtw-font-[var(--limit-order-font-weight-bold)] dtw-text-[length:var(--limit-order-font-size)]",children:t})]})},Qx=100,Zx=3,Xx=({inputValue:e="",onInputChange:t,autoFocus:n=!1})=>{const[r,s]=m.useState(e),a=m.useRef(null);return{inputRef:a,value:r,autoFocus:n,onContainerClick:()=>{a.current?.focus()},onInputChange:c=>{const d=c.target.value.replace(/[^0-9]/g,"");if(d.length>Zx)return;const p=Number(d);!isNaN(p)&&p<=Qx&&(s(d),t?.(d))}}},Jx=e=>{const{disabled:t,placeholder:n,suffix:r="%",postfix:s}=e,{inputRef:a,autoFocus:i,value:l,onContainerClick:c,onInputChange:d}=Xx(e);return o.jsx("div",{className:"dtw-flex dtw-flex-col dtw-gap-[var(--limit-order-input-group-gap,var(--limit-order-gap))] dtw-border-[var(--limit-order-input-border-color)] dtw-rounded-[var(--limit-order-input-radius,var(--limit-order-radius))] dtw-border dtw-bg-[var(--limit-order-input-bg,var(--limit-order-neutral-color))] dtw-py-[var(--limit-order-input-py)] dtw-px-[var(--limit-order-input-px)] focus-within:dtw-border-[var(--limit-order-input-focus-border-color)] focus-within:dtw-bg-[var(--limit-order-input-focus-bg)] dtw-shadow-md",onClick:c,children:o.jsxs("div",{className:"transparent-scrollbar dtw-flex dtw-items-center dtw-gap-1 dtw-text-[color:var(--limit-order-input-content-color,var(--limit-order-secondary-content-color))]",children:[r?o.jsx("span",{className:"dtw-font-light dtw-whitespace-nowrap dtw-text-[color:var(--limit-order-secondary-content-color)]",children:r}):null,o.jsx("input",{className:"dtw-w-full dtw-appearance-none dtw-bg-transparent placeholder:dtw-text-[color:var(--limit-order-input-placeholder-color,var(--limit-order-secondary-content-color))] dtw-text-[length:var(--limit-order-input-font-size,var(--limit-order-font-size-sm))] dtw-leading-[var(--limit-order-input-line-height,var(--limit-order-line-height-sm))] dtw-font-[var(--limit-order-input-font-weight,var(--limit-order-font-weight-light))] dtw-outline-none focus:dtw-outline-none lg:dtw-text-[length:var(--limit-order-input-font-size-lg,var(--limit-order-font-size-lg))] lg:dtw-leading-[var(--limit-order-input-line-height-lg,var(--limit-order-line-height-lg))]",ref:a,autoFocus:i,type:"text",min:0,value:l,onChange:d,disabled:t,placeholder:n}),o.jsx("div",{className:"dtw-font-light dtw-text-[length:var(--limit-order-input-suffix-font-size,var(--limit-order-font-size-sm))] dtw-text-[color:var(--limit-order-secondary-content-color)]",children:s})]})})},ey=7,tr=4,js=e=>{if(!e)return"";const[t="",n]=e.replace(/,/g,"").split("."),r=n&&n.length>tr?n.slice(0,tr):n,s=t.replace(/\B(?=(\d{3})+(?!\d))/g,",");return r!==void 0?`${s}.${r}`:s},ty=({inputValue:e="",onInputChange:t,autoFocus:n=!1})=>{const[r,s]=m.useState(js(e)),a=m.useRef(null);return{inputRef:a,value:r,autoFocus:n,onContainerClick:()=>{a.current?.focus()},onInputChange:c=>{const d=c.target.value.replace(/[^\d.]/g,"").replace(/(\..*)\./g,"$1"),[p="",g=""]=d.split(".");t&&p.length<=ey&&g.length<=tr&&/^\d*(\.\d*)?$/.test(d)&&(s(js(d)),t(d))}}},nn=e=>{const{disabled:t,placeholder:n,percentage:r,suffix:s}=e,{inputRef:a,autoFocus:i,value:l,onContainerClick:c,onInputChange:d}=ty(e);return o.jsx("div",{className:"dtw-flex dtw-flex-col dtw-gap-[var(--limit-order-input-group-gap,var(--limit-order-gap))] dtw-border-[var(--limit-order-input-border-color)] dtw-rounded-[var(--limit-order-input-radius,var(--limit-order-radius))] dtw-border dtw-bg-[var(--limit-order-input-bg,var(--limit-order-neutral-color))] dtw-py-[var(--limit-order-input-py)] dtw-px-[var(--limit-order-input-px)] focus-within:dtw-border-[var(--limit-order-input-focus-border-color)] focus-within:dtw-bg-[var(--limit-order-input-focus-bg)] dtw-shadow-md",onClick:c,children:o.jsxs("div",{className:"transparent-scrollbar dtw-flex dtw-items-center dtw-gap-1 dtw-text-[color:var(--limit-order-input-content-color,var(--limit-order-secondary-content-color))]",children:[o.jsx("span",{className:"dtw-text-[length:var(--limit-order-input-font-size,var(--limit-order-font-size-sm))] dtw-leading-[var(--limit-order-input-line-height,var(--limit-order-line-height-sm))] dtw-font-[var(--limit-order-input-font-weight,var(--limit-order-font-weight-light))] dtw-outline-none focus:dtw-outline-none lg:dtw-text-[length:var(--limit-order-input-font-size-lg,var(--limit-order-font-size-lg))] lg:dtw-leading-[var(--limit-order-input-line-height-lg,var(--limit-order-line-height-lg))]",children:"$"}),o.jsx("input",{className:"dtw-w-full dtw-appearance-none dtw-bg-transparent placeholder:dtw-text-[color:var(--limit-order-input-placeholder-color,var(--limit-order-secondary-content-color))] dtw-text-[length:var(--limit-order-input-font-size,var(--limit-order-font-size-sm))] dtw-leading-[var(--limit-order-input-line-height,var(--limit-order-line-height-sm))] dtw-font-[var(--limit-order-input-font-weight,var(--limit-order-font-weight-light))] dtw-outline-none focus:dtw-outline-none lg:dtw-text-[length:var(--limit-order-input-font-size-lg,var(--limit-order-font-size-lg))] lg:dtw-leading-[var(--limit-order-input-line-height-lg,var(--limit-order-line-height-lg))]",ref:a,autoFocus:i,type:"text",min:0,value:l,onChange:d,disabled:t,placeholder:n}),s?o.jsx("span",{className:"dtw-font-light dtw-whitespace-nowrap dtw-text-[length:var(--limit-order-input-suffix-font-size,var(--limit-order-font-size-sm))] dtw-text-[color:var(--limit-order-secondary-content-color)]",children:s}):null,r?o.jsx("span",{className:"dtw-font-light dtw-text-[length:var(--limit-order-input-suffix-font-size,var(--limit-order-font-size-sm))] dtw-text-[color:var(--limit-order-secondary-content-color)]",children:r}):null]})})},At=({title:e,subtitle:t,defaultEnabled:n,onDisable:r,children:s})=>{const[a,i]=m.useState(n),l=c=>{i(c),c||r()};return o.jsxs("div",{className:"dtw-px-3 dtw-py-2 dtw-flex dtw-flex-col dtw-gap-2 dtw-border dtw-border-[var(--limit-order-switch-panel-border-color)] dtw-rounded-[var(--limit-order-switch-panel-radius,var(--limit-order-radius))] dtw-bg-[color:var(--limit-order-secondary-color)]",children:[o.jsxs("div",{className:"dtw-flex dtw-justify-between dtw-text-[length:var(--limit-order-input-label-font-size,var(--limit-order-font-size))] dtw-leading-[var(--limit-order-input-label-line-height,var(--limit-order-line-height))] dtw-font-[var(--limit-order-input-label-font-weight,var(--limit-order-font-weight-light))] dtw-gap-x-2",children:[o.jsxs("div",{className:"dtw-flex dtw-flex-col dtw-gap-0.5 dtw-text-[color:var(--limit-order-primary-content-color)] dtw-text-[length:var(--limit-order-font-size)]",children:[o.jsx("span",{children:e}),o.jsx("span",{className:"dtw-text-[length:var(--limit-order-font-size-sm)] dtw-text-[color:var(--limit-order-secondary-content-color)]",children:t})]}),o.jsx(vn,{onChange:l,defaultEnabled:a})]}),a&&s]})},pi={upperLimitPrice:"",lowerLimitPrice:"",sellPercentage:"",termsAccepted:!1},ny=(e,t)=>{switch(t.type){case"SET_UPPER_LIMIT_PRICE":return{...e,form:{...e.form,upperLimitPrice:t.payload}};case"SET_LOWER_LIMIT_PRICE":return{...e,form:{...e.form,lowerLimitPrice:t.payload}};case"SET_SELL_PERCENTAGE":return{...e,form:{...e.form,sellPercentage:t.payload}};case"SET_IS_MODAL_OPEN":return{...e,isModalOpen:t.payload};case"SET_TERMS_ACCEPTED":return{...e,form:{...e.form,termsAccepted:t.payload}};case"RESET":return{...e,form:pi};case"SET_PENDING_TRANSACTION":return{...e,pendingTransaction:t.payload};default:return e}};function Oe(){}const mi=e=>({vaultAddress:e.vaultAddress,vaultChainId:e.vaultChainId,isModalOpen:e.isModalOpen??!1,form:{...pi,...e.form},pendingTransaction:null,pricingAsset:e.pricingAsset,minAmountInUsd:e.minAmountInUsd}),wi=m.createContext(mi({vaultAddress:u.AddressZero,vaultChainId:0,pricingAsset:{address:u.AddressZero,symbol:""},minAmountInUsd:yr,form:{lowerLimitPrice:"",upperLimitPrice:""}})),hi=m.createContext({setIsModalOpen:Oe,setUpperLimitPrice:Oe,setLowerLimitPrice:Oe,setTermsAccepted:Oe,setSellPercentage:Oe,reset:Oe,setPendingTransaction:Oe,onLog:Oe}),gi=({children:e,initialState:t,actions:n})=>{const[r,s]=m.useReducer(ny,mi(t)),a=m.useCallback(f=>{s({type:"SET_UPPER_LIMIT_PRICE",payload:f})},[]),i=m.useCallback(f=>{s({type:"SET_LOWER_LIMIT_PRICE",payload:f})},[]),l=m.useCallback(f=>{s({type:"SET_IS_MODAL_OPEN",payload:f})},[]),c=m.useCallback(f=>{s({type:"SET_TERMS_ACCEPTED",payload:f})},[]),d=m.useCallback(f=>{s({type:"SET_SELL_PERCENTAGE",payload:f})},[]),p=m.useCallback(()=>{s({type:"RESET"})},[]),g=m.useCallback(f=>{s({type:"SET_PENDING_TRANSACTION",payload:f})},[]),h=m.useMemo(()=>({setUpperLimitPrice:a,setIsModalOpen:l,setLowerLimitPrice:i,setTermsAccepted:c,setSellPercentage:d,reset:p,setPendingTransaction:g,onTransactionSuccess:n?.onTransactionSuccess,onTransactionError:n?.onTransactionError,onTransactionSettled:n?.onTransactionSettled,onLog:n?.onLog}),[a,l,i,c,d,p,g,n?.onTransactionSuccess,n?.onTransactionError,n?.onTransactionSettled,n?.onLog]);return o.jsx(hi.Provider,{value:h,children:o.jsx(wi.Provider,{value:r,children:e})})},he=()=>m.useContext(wi),ht=()=>m.useContext(hi),_n=()=>{const{account:e}=j(),{vaultAddress:t,vaultChainId:n,form:{sellPercentage:r}}=he(),{data:s}=ur({address:e,token:t,chainId:n});return m.useMemo(()=>{const a=r||Fo;if(!s)return{raw:"0",formatted:"0",symbol:""};const i=new I(s.value).times(a).dividedBy(100).toFixed(0,I.ROUND_DOWN),l=w.formatNumberToLimitedDecimals({value:new I(i).shiftedBy(-u.DEFAULT_PRECISION).toFixed(),decimals:2});return{raw:i,formatted:l,symbol:s.symbol}},[s,r])},fi=({userAddress:e,vaultAddress:t})=>{const n=k.encodePacked(["address","address"],[e,t]);return k.keccak256(n)},ry=({price:e,markPrice:t})=>new I(e).gt(t)?`+${w.formatPercentage((+e/+t-1)*100,2)}`:"",sy=({price:e,markPrice:t})=>new I(e).lt(t)?`-${w.formatPercentage((1-+e/+t)*100,2)}`:"",oy=({error:e,translationMap:t})=>e?e.title===u.INVALID_PRICES_LIMIT_ORDER_TITLE?{...e,hint:t.invalidLimitOrderPriceError}:e:null,ay=()=>{const e=Ie(),{form:{upperLimitPrice:t,lowerLimitPrice:n,sellPercentage:r},pricingAsset:s,vaultChainId:a}=he(),{setUpperLimitPrice:i,setLowerLimitPrice:l,setSellPercentage:c}=ht(),d=le({address:s.address,chainId:a,refetchInterval:u.SHORTEN_POLLING_INTERVAL}),p=Number(d)<hf?gf:ff,{formatted:g,symbol:h}=_n(),f=ry({price:t,markPrice:d}),v=sy({price:n,markPrice:d}),T=m.useCallback(()=>{i("")},[i]),b=m.useCallback(()=>{l("")},[l]),A=m.useCallback(()=>{c("")},[c]),x=`${s.symbol} ${e.price}`;return{upperLimitPrice:t,lowerLimitPrice:n,sellPercentage:r,setUpperLimitPrice:i,setLowerLimitPrice:l,setSellPercentage:c,onDisableUpperLimitPrice:T,onDisableLowerLimitPrice:b,onDisableSellPercentage:A,pricingAssetPrice:d==="0"?null:w.formatToUsd({value:d,maximumFractionDigits:p}),upperLimitPriceDifference:f,lowerLimitPriceDifference:v,pricingAssetSymbol:s.symbol,inputSuffix:x,coveredVaultAmount:g,vaultSymbol:h}},iy=()=>{const e=Ie(),{upperLimitPrice:t,lowerLimitPrice:n,setUpperLimitPrice:r,setLowerLimitPrice:s,onDisableUpperLimitPrice:a,onDisableLowerLimitPrice:i,pricingAssetPrice:l,upperLimitPriceDifference:c,lowerLimitPriceDifference:d,pricingAssetSymbol:p,inputSuffix:g,sellPercentage:h,setSellPercentage:f,onDisableSellPercentage:v,coveredVaultAmount:T,vaultSymbol:b}=ay();return o.jsx(o.Fragment,{children:o.jsxs("div",{className:"dtw-flex dtw-flex-col dtw-gap-[var(--limit-order-input-group-gap,var(--limit-order-gap))] dtw-px-[var(--limit-order-group-px)]",children:[o.jsx(ui,{symbol:p,price:l}),o.jsx(At,{title:e.upperLimitLabel,subtitle:e.upperLimitSubtitle,defaultEnabled:!0,onDisable:a,children:o.jsx(nn,{inputValue:t,onInputChange:r,percentage:c,symbol:p,suffix:g})}),o.jsx(At,{title:e.lowerLimitLabel,subtitle:e.lowerLimitSubtitle,defaultEnabled:!!n,onDisable:i,children:o.jsx(nn,{inputValue:n,onInputChange:s,percentage:d,symbol:p,suffix:g})}),o.jsx(At,{title:e.partialSellLabel,subtitle:e.partialSellSubtitle,defaultEnabled:!!h,onDisable:v,children:o.jsx(Jx,{inputValue:h,onInputChange:f,suffix:"%",placeholder:Fo,postfix:o.jsxs("div",{className:"dtw-flex dtw-flex-col dtw-items-end dtw-justify-center",children:[o.jsx("span",{className:"dtw-text-[color:var(--limit-order-primary-content-color)]",children:T}),o.jsx("span",{className:"dtw-text-[color:var(--limit-order-secondary-content-color)]",children:b})]})})})]})})},ly=()=>{const{account:e=u.AddressZero}=j(),{vaultAddress:t,vaultChainId:n}=he(),r=w.getContractAddressById("limitOrder",n),s=_n(),{data:a}=nt({tokenAddress:t,ownerAddress:e,spenderAddress:r,chainId:n,skip:w.isZeroAddress(r)});return a?new I(s.raw).lte(a.toString()):!1},cy=()=>{const{vaultAddress:e,vaultChainId:t}=he(),{setPendingTransaction:n}=ht(),[r,s]=m.useState(!1),a=w.getContractAddressById("limitOrder",t),{send:i}=de({contractId:"erc20",dynamicContractAddress:e,functionName:"approve",onSettled(c){n(c?{hash:c,action:"approve"}:null),s(!1)}});return{approveLimitOrder:async()=>{w.isZeroAddress(a)||(s(!0),await i(a,u.MaxUint256))},isApproving:r}},vi=({createLimitOrder:e})=>{const[t,n]=m.useState("idle"),[r,s]=m.useState(void 0),a=m.useRef(!1),i=ly(),{approveLimitOrder:l,isApproving:c}=cy(),{vaultChainId:d,pendingTransaction:p}=he(),{data:g}=_.useWaitForTransactionReceipt({hash:r,pollingInterval:u.EXTREMELY_SHORT_POLLING_INTERVAL,query:{enabled:!!r&&t==="waiting-confirmation"}}),h=m.useCallback(()=>{n("idle"),s(void 0),a.current=!1},[]);return m.useEffect(()=>{p?.action==="approve"&&p.hash&&t==="approving"&&(s(p.hash),n("waiting-confirmation"))},[p,t]),m.useEffect(()=>{t==="approving"&&!c&&!r&&!p&&h()},[t,c,r,p,h]),m.useEffect(()=>{(async()=>{if(g&&t==="waiting-confirmation"&&!a.current){a.current=!0,n("creating");const A=u.TRANSACTION_SETTLE_DELAY[d]??1e3;await new Promise(x=>setTimeout(x,A));try{await e()}finally{h()}}})()},[g,d,t,e,h]),{approveAndCreate:m.useCallback(async()=>{if(i){n("creating");try{await e()}finally{h()}return}n("approving"),a.current=!1;try{await l()}catch(b){throw h(),b}},[i,l,e,h]),isLoading:t!=="idle",flowState:t,needsApproval:!i}},Ti=e=>{const{setIsModalOpen:t,reset:n,setPendingTransaction:r,onTransactionSettled:s}=ht();return m.useCallback((...a)=>{const[i]=a;if(s?.(...a),!i)return r(null);r({hash:i,action:e}),t(!1),n()},[s,r,e,t,n])},dy=([e,t,n,r,s,a])=>w.isZeroAddress(s)?null:{takeProfitPrice:k.formatUnits(n,u.DEFAULT_PRECISION),stopLossPrice:k.formatUnits(t,u.DEFAULT_PRECISION),takeProfitPriceD18:n,stopLossPriceD18:t,amountD18:e,user:r,vault:s,pricingAsset:a},uy=e=>{const t=e.state.data;if(!t)return!1;const[,n,r,,s]=t;return!w.isZeroAddress(s)&&n===BigInt(0)&&r===u.MaxUint256?u.SHORTEN_POLLING_INTERVAL:!1},gt=({chainId:e,userAddress:t,vaultAddress:n})=>{const r=w.getContractAddressById("limitOrder",e);return _.useReadContract({address:r,abi:u.LimitOrderAbi,chainId:e,functionName:gn,args:[fi({userAddress:t,vaultAddress:n})],query:{enabled:!w.isZeroAddress(r)&&!w.isZeroAddress(t)&&!w.isZeroAddress(n),select:dy,refetchInterval:uy}})},py=u.LimitOrderAbi.filter(({type:e})=>e==="error").map(({name:e})=>e),my="create",bi=()=>{const{account:e=u.AddressZero}=j(),{vaultAddress:t,vaultChainId:n,form:{lowerLimitPrice:r,upperLimitPrice:s},pricingAsset:a}=he(),i=_n(),{data:l}=gt({userAddress:e,vaultAddress:t,chainId:n}),[c,d]=m.useState(null),p=Ti(my),g=!!l,{send:h}=de({onSettled:p,contractId:"limitOrder",functionName:g?"modifyLimitOrder":"createLimitOrder"}),f=m.useCallback(async()=>{const T=BigInt(r?w.shiftBy(r,u.DEFAULT_PRECISION):0),b=s?BigInt(w.shiftBy(s,u.DEFAULT_PRECISION)):u.MaxUint256,A=[i.raw,T,b,e,t,a.address];try{await h(A),d(null)}catch(x){x instanceof We&&d(x.message)}},[r,s,i.raw,e,t,a.address,h]),v=w.parseContractErrorMessage({errorMessage:c,abiErrors:py});return{createLimitOrder:f,isModifyTransaction:g,error:v??null}},wy=()=>{const e=Ie(),{vaultAddress:t,vaultChainId:n,minAmountInUsd:r}=he(),s=_n(),a=ue({address:t,chainId:n}),{createLimitOrder:i,isModifyTransaction:l,error:c}=bi(),p=new I.BigNumber(s.formatted).multipliedBy(a??"0").gte(r),g=!p,{approveAndCreate:h,isLoading:f,flowState:v,needsApproval:T}=vi({createLimitOrder:i}),b=()=>{switch(v){case"approving":case"waiting-confirmation":return e.approveLimitOrderStep;case"creating":return T?l?e.modifyLimitOrderStep:e.createLimitOrderStep:l?e.modify:e.create;default:return T?e.approveLimitOrderStep:l?e.modify:e.create}};return{handleClick:h,disabled:g,error:oy({error:c,translationMap:e}),isLoading:f,isAmountSufficient:p,minAmount:w.formatToUsd({value:r.toString(),maximumFractionDigits:0,minimumFractionDigits:0}),buttonText:b()}},hy=({disabled:e,onClick:t})=>{const n=Ie(),{handleClick:r,disabled:s,error:a,isLoading:i,minAmount:l,isAmountSufficient:c,buttonText:d}=wy();return o.jsxs("div",{children:[a&&o.jsxs("div",{className:"dtw-mb-2 dtw-flex dtw-flex-col dtw-gap-1 dtw-text-error",children:[o.jsx("span",{className:"dtw-text-sm",children:a.title}),a.hint&&o.jsx("span",{className:"dtw-text-xs",children:a.hint})]}),!c&&o.jsx("div",{className:"dtw-mb-1 dtw-text-warning dtw-text-sm",children:n.minimumVaultBalanceRequired.replace("{amount}",l)}),o.jsx(be,{onClick:t??r,disabled:e||s,loading:i,children:d})]})},gy="remove",fy=()=>{const{account:e=u.AddressZero}=j(),{vaultAddress:t,vaultChainId:n,pendingTransaction:r}=he(),{data:s}=gt({userAddress:e,vaultAddress:t,chainId:n}),a=Ti(gy),{send:i}=de({onSettled:a,contractId:"limitOrder",functionName:"deleteLimitOrder"}),l=async()=>i(t),c=!!r,d=!!s?.amountD18&&!new I(s.amountD18.toString()).isZero();return{deleteLimitOrder:l,isPending:c,displayButton:d}},vy=()=>{const e=Ie(),{deleteLimitOrder:t,isPending:n,displayButton:r}=fy();return r?o.jsx(be,{highlighted:!1,className:"!dtw-py-1",onClick:t,loading:n,children:e.delete}):null},Ms=e=>{const t=e?.trim();return t?!isNaN(Number(t)):!1},Ty=()=>{const{form:{lowerLimitPrice:e,upperLimitPrice:t}}=he(),n=Ms(e)&&Number(e)!==0,r=Ms(t);return{limitOrderButtonDisabled:!n&&!r}},by=["termsPoint1","termsPoint2","termsPoint3","termsPoint4","termsPoint5"],Ay=({onAccept:e,onCancel:t,isLoading:n=!1})=>{const r=Ie();return o.jsxs("div",{className:"dtw-flex dtw-flex-col dtw-gap-6 dtw-py-2",children:[o.jsx("div",{className:"dtw-flex dtw-flex-col dtw-gap-4 dtw-px-2",children:by.map(s=>o.jsx("p",{className:"dtw-text-[length:var(--limit-order-font-size)] dtw-text-[color:var(--limit-order-secondary-content-color)] dtw-leading-relaxed",children:r[s]},s))}),o.jsxs("div",{className:"dtw-flex dtw-flex-col dtw-gap-2",children:[o.jsx(be,{onClick:e,loading:n,children:r.acceptTerms}),o.jsx(be,{highlighted:!1,onClick:t,disabled:n,children:r.cancel})]})]})},Ai=({onClose:e,hideDeleteButton:t})=>{const n=Ie(),{limitOrderButtonDisabled:r}=Ty(),{vaultChainId:s,form:{termsAccepted:a}}=he(),{setTermsAccepted:i}=ht(),[l,c]=m.useState(!1),{createLimitOrder:d}=bi(),{approveAndCreate:p,isLoading:g}=vi({createLimitOrder:d}),h=()=>{i(!0),c(!1),p()};return l?o.jsx(Ay,{onAccept:h,onCancel:()=>c(!1),isLoading:g}):o.jsxs("div",{className:"dtw-flex dtw-flex-col dtw-gap-2",children:[o.jsx(iy,{}),o.jsxs(ii,{vaultChainId:s,switchNetworkLabel:n.switchNetwork,children:[o.jsx(hy,{disabled:r,onClick:a?void 0:()=>c(!0)}),!t&&o.jsx(vy,{})]}),!!e&&o.jsx(be,{highlighted:!1,onClick:e,children:n.cancel})]})},xi=({vaultAddress:e,vaultChainId:t})=>{const{account:n=u.AddressZero}=j(),{isFetched:r,data:s}=gt({vaultAddress:e,chainId:t,userAddress:n}),a=s&&s.takeProfitPriceD18!==u.MaxUint256?s.takeProfitPrice:"",i=s&&s.stopLossPriceD18!==BigInt(0)?s.stopLossPrice:"";return{isFetched:r,upperLimitPrice:a,lowerLimitPrice:i}},xy=[gn,xr,"allowance"],yi=()=>{const e=fe.useQueryClient();return m.useCallback(()=>{e.invalidateQueries({predicate:({queryKey:t})=>{const n=t[1]?.functionName;return t[0]==="readContract"&&xy.some(r=>r===n)}})},[e])},Si=()=>{const{pendingTransaction:e,vaultChainId:t,vaultAddress:n}=he(),{setPendingTransaction:r,onTransactionSuccess:s,onTransactionError:a,onLog:i}=ht(),l=yi(),{data:c,error:d}=_.useWaitForTransactionReceipt({hash:e?.hash??void 0,chainId:t,pollingInterval:u.SHORTEN_POLLING_INTERVAL});m.useEffect(()=>{c&&(e?.action==="create"&&i?.(u.TRADING_PANEL_LOG_EVENT.CREATE_LIMIT_SELL_ORDER,{[u.TRADING_LOG_EVENT_PARAM.ADDRESS.NAME]:n,[u.TRADING_LOG_EVENT_PARAM.CHAIN_ID.NAME]:t}),l(),r(null),s?.(c.transactionHash))},[c,l,s,i,t,r,e?.action,n]),m.useEffect(()=>{d&&e&&(a?.(e.hash),r(null))},[d,a,e,r])},C={ERROR:"#dd376a",WARNING:"#fbbf24",INFO:"#504c56",WHITE:{DEFAULT:"#ffffff"},DARK:{DEFAULT:"#181C25",400:"#2A3648",700:"#12171F",800:"#1B2432"},RED:{500:"#EF4444"},GRAY:{DEFAULT:"#B1B6C1",300:"#EBEBF0",600:"#9DA2AD",700:"#4C505B",800:"#2B313E"},GREEN:{DEFAULT:"#73D393",700:"#34855E"},BLUE:{DEFAULT:"#152E4D",dark:"#162435"},AMBER:{400:"#AFA58D"}},In=({children:e,config:t})=>o.jsx("div",{style:{"--limit-order-radius":`${t?.global?.style?.radiusPrimary??"1rem"}`,"--limit-order-radius-secondary":`${t?.global?.style?.radiusSecondary??"1rem"}`,"--limit-order-background-color":`${t?.global?.color?.colorBgPrimary??C.DARK[800]}`,"--limit-order-gap":`${t?.global?.size?.gap??"0.25rem"}`,"--limit-order-spacer":`${t?.global?.size?.spacer??"4px"}`,"--limit-order-content-color":`${t?.global?.color?.colorTextPrimary??C.WHITE.DEFAULT}`,"--limit-order-content-hover-color":`${t?.global?.color?.colorTextPrimaryHover??`${C.WHITE.DEFAULT}CC`}`,"--limit-order-secondary-color":`${t?.global?.color?.colorBgSecondary??C.GRAY[800]}`,"--limit-order-secondary-content-color":`${t?.global?.color?.colorTextSecondary??C.GRAY[600]}`,"--limit-order-accent-from-color":`${t?.global?.color?.colorBgAccentFrom??C.GREEN.DEFAULT}`,"--limit-order-accent-to-color":`${t?.global?.color?.colorBgAccentTo??C.GREEN[700]}`,"--limit-order-accent-hover-from-color":`${t?.global?.color?.colorBgAccentFromHover??`${C.GREEN.DEFAULT}CC`}`,"--limit-order-accent-hover-to-color":`${t?.global?.color?.colorBgAccentToHover??C.BLUE.dark}`,"--limit-order-accent-content-color":`${t?.global?.color?.colorTextAccent??C.WHITE.DEFAULT}`,"--limit-order-accent-content-hover-color":`${t?.global?.color?.colorTextAccentHover??`${C.WHITE.DEFAULT}CC`}`,"--limit-order-neutral-color":`${t?.global?.color?.colorBgNeutral??`${C.GRAY[600]}33`}`,"--limit-order-neutral-content-color":`${t?.global?.color?.colorTextNeutral??`${C.GRAY[600]}80`}`,"--limit-order-loading-content-color":`${t?.global?.color?.colorTextLoading??`${C.WHITE.DEFAULT}99`}`,"--limit-order-error-content-color":`${t?.global?.color?.colorTextError??C.RED[500]}`,"--limit-order-warning-content-color":`${t?.global?.color?.colorTextWarning??C.AMBER[400]}`,"--limit-order-border-color":`${t?.global?.color?.colorBorderPrimary??"var(--limit-order-content-color)"}`,"--limit-order-scrollbar-color":`${t?.global?.color?.colorScrollbar??`${C.GREEN.DEFAULT}80`}`,"--limit-order-font-size":`${t?.global?.size?.fontSizeBase??"16px"}`,"--limit-order-line-height":`${t?.global?.size?.lineHeightBase??"24px"}`,"--limit-order-font-size-lg":`${t?.global?.size?.fontSizeLg??"18px"}`,"--limit-order-line-height-lg":`${t?.global?.size?.lineHeightLg??"28px"}`,"--limit-order-font-size-sm":`${t?.global?.size?.fontSizeSm??"14px"}`,"--limit-order-line-height-sm":`${t?.global?.size?.lineHeightSm??"20px"}`,"--limit-order-font-size-xs":`${t?.global?.size?.fontSizeXs??"12px"}`,"--limit-order-line-height-xs":`${t?.global?.size?.lineHeightXs??"16px"}`,"--limit-order-font-weight-light":`${t?.global?.style?.fontWeightLight??300}`,"--limit-order-font-weight-medium":`${t?.global?.style?.fontWeightMedium??500}`,"--limit-order-font-weight-bold":`${t?.global?.style?.fontWeightBold??700}`,"--limit-order-action-opacity":`${t?.global?.style?.actionOpacity??1}`,"--limit-order-action-hover-opacity":`${t?.global?.style?.actionOpacityHover??.8}`,"--limit-order-label-font-size":`${t?.global?.size?.labelFontSize??"var(--limit-order-font-size-xs)"}`,"--limit-order-label-line-height":`${t?.global?.size?.labelLineHeight??"var(--limit-order-line-height-xs)"}`,"--limit-order-action-accent-button-border-width":`${t?.component?.actionButton?.size?.borderWidth??"1px"}`,"--limit-order-action-accent-button-bg-from":`${t?.component?.actionButton?.color?.colorBgFrom??"var(--limit-order-accent-from-color)"}`,"--limit-order-action-accent-button-bg-to":`${t?.component?.actionButton?.color?.colorBgTo??"var(--limit-order-accent-to-color)"}`,"--limit-order-action-accent-button-hover-bg-from":`${t?.component?.actionButton?.color?.colorBgFromHover??"var(--limit-order-accent-hover-from-color)"}`,"--limit-order-action-accent-button-hover-bg-to":`${t?.component?.actionButton?.color?.colorBgToHover??"var(--limit-order-accent-hover-to-color)"}`,"--limit-order-action-accent-button-border-color":`${t?.component?.actionButton?.color?.colorBorder??"var(--limit-order-accent-from-color)"}`,"--limit-order-action-accent-button-color":`${t?.component?.actionButton?.color?.colorText??"var(--limit-order-accent-content-color)"}`,"--limit-order-action-outline-button-border-color":`${t?.component?.actionButton?.color?.outlineColorBorder??`${C.WHITE.DEFAULT}33`}`,"--limit-order-action-outline-button-border-hover-color":`${t?.component?.actionButton?.color?.outlineColorBorderHover??`${C.WHITE.DEFAULT}CC`}`,"--limit-order-action-outline-button-color":`${t?.component?.actionButton?.color?.outlineColorText??"var(--limit-order-content-color)"}`,"--limit-order-icon-size":`${t?.global?.size?.iconSize??"20px"}`,"--limit-order-icon-size-sm":`${t?.global?.size?.iconSizeSm??"24px"}`,"--limit-order-icon-secondary-size":`${t?.global?.size?.iconSecondarySize??"16px"}`,"--limit-order-icon-secondary-size-sm":`${t?.global?.size?.iconSecondarySizeSm??"16px"}`,"--limit-order-icon-color":`${t?.global?.color?.colorIcon??"var(--limit-order-content-color)"}`,"--limit-order-inputs-group-gap":`${t?.component?.inputGroup?.size?.gap??"var(--limit-order-gap)"}`,"--limit-order-inputs-group-px":`${t?.component?.inputGroup?.size?.px??"calc(var(--limit-order-spacer) * 3)"}`,"--limit-order-input-radius":`${t?.component?.input?.style?.radius??"var(--limit-order-radius)"}`,"--limit-order-input-group-gap":`${t?.component?.input?.size?.gap??"calc(var(--limit-order-gap) * 2)"}`,"--limit-order-input-px":`${t?.component?.input?.size?.px??"calc(var(--limit-order-spacer) * 3)"}`,"--limit-order-input-py":`${t?.component?.input?.size?.py??"calc(var(--limit-order-spacer) * 2)"}`,"--limit-order-input-price-gap":`${t?.component?.input?.size?.priceGap??"calc(var(--limit-order-gap) * 2)"}`,"--limit-order-input-token-icon-size":`${t?.component?.input?.size?.iconSize??"var(--limit-order-icon-size)"}`,"--limit-order-input-token-icon-size-sm":`${t?.component?.input?.size?.iconSizeSm??"var(--limit-order-icon-size-sm)"}`,"--limit-order-input-content-color":`${t?.component?.input?.color?.textColor??"var(--limit-order-secondary-content-color)"}`,"--limit-order-input-loading-content-color":`${t?.component?.input?.color?.loadingTextColor??"var(--limit-order-loading-content-color)"}`,"--limit-order-input-bg":`${t?.component?.input?.color?.bgColor??"var(--limit-order-neutral-color)"}`,"--limit-order-input-focus-bg":`${t?.component?.input?.color?.bgColorFocus??"transparent"}`,"--limit-order-input-border-color":`${t?.component?.input?.color?.borderColor??C.GRAY[700]}`,"--limit-order-input-focus-border-color":`${t?.component?.input?.color?.borderColorFocus??"var(--limit-order-content-color)"}`,"--limit-order-input-placeholder-color":`${t?.component?.input?.color?.placeholderColor??"var(--limit-order-secondary-content-color)"}`,"--limit-order-input-label-font-size":`${t?.component?.input?.size?.labelFontSize??"var(--limit-order-font-size)"}`,"--limit-order-input-label-line-height":`${t?.component?.input?.size?.labelLineHeight??"var(--limit-order-line-height)"}`,"--limit-order-input-label-font-weight":`${t?.component?.input?.style?.labelFontWeight??"var(--limit-order-font-weight-light)"}`,"--limit-order-input-font-size":`${t?.component?.input?.size?.fontSize??"var(--limit-order-font-size-sm)"}`,"--limit-order-input-line-height":`${t?.component?.input?.size?.lineHeight??"var(--limit-order-line-height-sm)"}`,"--limit-order-input-font-size-lg":`${t?.component?.input?.size?.fontSizeLg??"var(--limit-order-font-size-lg)"}`,"--limit-order-input-line-height-lg":`${t?.component?.input?.size?.lineHeightLg??"var(--limit-order-line-height-lg)"}`,"--limit-order-input-suffix-font-size":`${t?.component?.input?.size?.suffixFontSize??"var(--limit-order-font-size-sm)"}`,"--limit-order-input-font-weight":`${t?.component?.input?.style?.fontWeight??"var(--limit-order-font-weight-light)"}`,"--limit-order-input-token-font-size":`${t?.component?.input?.size?.tokenFontSize??"var(--limit-order-font-size-xs)"}`,"--limit-order-input-token-line-height":`${t?.component?.input?.size?.tokenLineHeight??"var(--limit-order-line-height-xs)"}`,"--limit-order-input-token-font-size-sm":`${t?.component?.input?.size?.tokenFontSizeSm??"var(--limit-order-font-size)"}`,"--limit-order-input-token-line-height-sm":`${t?.component?.input?.size?.tokenLineHeightSm??"var(--limit-order-line-height)"}`,"--limit-order-input-token-font-weight":`${t?.component?.input?.style?.tokenFontWeight??"var(--limit-order-font-weight-medium)"}`,"--limit-order-input-button-radius":`${t?.component?.input?.style?.buttonRadius??"30px"}`,"--limit-order-input-button-px":`${t?.component?.input?.size?.buttonPx??"calc(var(--limit-order-spacer) * 2)"}`,"--limit-order-input-button-py":`${t?.component?.input?.size?.buttonPy??"var(--limit-order-spacer)"}`,"--limit-order-input-button-bg":`${t?.component?.input?.color?.buttonBgColor??"var(--limit-order-secondary-color)"}`,"--limit-order-input-button-border-color":`${t?.component?.input?.color?.buttonBorderColor??"var(--limit-order-accent-to-color)"}`,"--limit-order-input-button-content-color":`${t?.component?.input?.color?.buttonTextColor??"var(--limit-order-content-color)"}`,"--limit-order-input-button-font-size":`${t?.component?.input?.size?.buttonFontSize??"var(--limit-order-font-size-xs)"}`,"--limit-order-input-button-line-height":`${t?.component?.input?.size?.buttonLineHeight??"var(--limit-order-line-height-xs)"}`,"--limit-order-tooltip-bg":`${t?.component?.tooltip?.color?.colorBg??C.DARK[700]}`,"--limit-order-tooltip-color":`${t?.component?.tooltip?.color?.colorText??C.WHITE.DEFAULT}`,"--limit-order-switch-panel-border-color":`${t?.component?.switchPanel?.color?.colorBorder??"var(--limit-order-action-accent-button-border-color)"}`,"--limit-order-switch-panel-radius":`${t?.component?.switchPanel?.style?.radius??"var(--limit-order-input-radius)"}`,"--panel-switch-bg-checked":`${t?.component?.switch?.color?.colorBgChecked??C.BLUE.DEFAULT}`,"--panel-switch-bg":`${t?.component?.switch?.color?.colorBg??C.GRAY[700]}`,"--panel-switch-thumb-bg-checked":`${t?.component?.switch?.color?.colorThumbBgChecked??C.WHITE.DEFAULT}`,"--panel-switch-thumb-bg":`${t?.component?.switch?.color?.colorThumbBg??C.WHITE.DEFAULT}`,"--panel-switch-color-checked":t?.component?.switch?.color?.colorChecked,"--panel-switch-color":t?.component?.switch?.color?.color,"--panel-checkbox-bg-checked":`${t?.component?.checkbox?.color?.colorBgChecked??C.GRAY[700]}`,"--panel-checkbox-bg":`${t?.component?.checkbox?.color?.colorBg??"transparent"}`,"--panel-checkbox-border-color-checked":`${t?.component?.checkbox?.color?.colorBorder??"transparent"}`,"--panel-checkbox-border-color":`${t?.component?.checkbox?.color?.colorBorderChecked??C.GRAY.DEFAULT}`,"--panel-checkbox-color":`${t?.component?.checkbox?.color?.color??C.GRAY[300]}`,"--panel-checkbox-size":`${t?.component?.checkbox?.size?.size??"20px"}`,"--panel-checkbox-icon-size":`${t?.component?.checkbox?.size?.iconSize??"16px"}`,"--panel-checkbox-radius":`${t?.component?.checkbox?.style?.radius??"4px"}`},children:e}),yy=({themeConfig:e})=>(Si(),o.jsx(In,{config:e,children:o.jsx(Ai,{hideDeleteButton:!0})})),Sy=({vaultChainId:e,vaultAddress:t,pricingAsset:n,translation:r,minAmountInUsd:s=yr,actions:a,themeConfig:i})=>{const{isFetched:l,upperLimitPrice:c,lowerLimitPrice:d}=xi({vaultAddress:t,vaultChainId:e}),p=m.useMemo(()=>({vaultAddress:t,vaultChainId:e,pricingAsset:n,minAmountInUsd:s,form:{upperLimitPrice:c,lowerLimitPrice:d}}),[t,e,n,s,c,d]);return l?o.jsx(di,{config:r,children:o.jsx(gi,{initialState:p,actions:a,children:o.jsx(yy,{themeConfig:i})})}):null},Ey=({type:e})=>{const{minLimitOrderValue:t}=q(),{address:n,chainId:r,pricingAsset:s,symbol:a}=y(),{handleReject:i}=ae({type:e}),l=Q()[1],c=ne()[1],d=ga(),p=m.useMemo(()=>({onTransactionSettled:h=>{h&&(i(),c({type:"add",txHash:h,action:"create_limit_sell_order",chainId:r,symbol:a}),l({isOpen:!0,action:"create_limit_sell_order",status:"Mining",link:h?yn(h,"transaction",r):void 0,sendTokens:null,receiveTokens:null}))}}),[r,i,a,c,l]),g=m.useCallback(()=>{l({isOpen:!1}),d()},[d,l]);return{handleReject:i,address:n,chainId:r,pricingAsset:s,minLimitOrderValue:t,actions:p,closeAllOverlays:g}},Cy=e=>{const{limitOrderThemeConfig:t}=q(),{handleReject:n,chainId:r,address:s,pricingAsset:a,minLimitOrderValue:i,actions:l,closeAllOverlays:c}=Ey(e);return a?o.jsx(V.Overlay,{onClose:c,onBack:n,className:"!dtw-px-2",noPadding:!0,children:o.jsx("div",{className:"dtw-mt-10 dtw-px-2 dtw-w-full dtw-overflow-y-auto theme-scrollbar",children:o.jsx(Sy,{vaultAddress:s,vaultChainId:r,pricingAsset:a,minAmountInUsd:i,actions:l,themeConfig:t})})}):null},Ei={upperLimitPrice:"",lowerLimitPrice:"",inputAmount:"",slippageBps:sT.toString(),deadlineDays:oT.toString(),termsAccepted:!1},_y=(e,t)=>{switch(t.type){case"SET_UPPER_LIMIT_PRICE":return{...e,form:{...e.form,upperLimitPrice:t.payload}};case"SET_LOWER_LIMIT_PRICE":return{...e,form:{...e.form,lowerLimitPrice:t.payload}};case"SET_INPUT_AMOUNT":return{...e,form:{...e.form,inputAmount:t.payload}};case"SET_SLIPPAGE_BPS":return{...e,form:{...e.form,slippageBps:t.payload}};case"SET_DEADLINE_DAYS":return{...e,form:{...e.form,deadlineDays:t.payload}};case"SET_TERMS_ACCEPTED":return{...e,form:{...e.form,termsAccepted:t.payload}};case"SET_INPUT_TOKEN":return{...e,inputToken:t.payload};case"SET_IS_SUBMITTING":return{...e,isSubmitting:t.payload};case"RESET":return{...e,form:Ei,isSubmitting:!1};default:return e}};function Te(){}const Ci=e=>{const[t]=e.depositTokens;return{vaultAddress:e.vaultAddress,vaultChainId:e.vaultChainId,limitBuyManagerAddress:e.limitBuyManagerAddress,pricingAsset:e.pricingAsset,depositTokens:e.depositTokens,inputToken:t??{address:u.AddressZero,symbol:"",decimals:u.DEFAULT_PRECISION},form:{...Ei},isSubmitting:!1}},_i=m.createContext(Ci({vaultAddress:u.AddressZero,vaultChainId:0,limitBuyManagerAddress:u.AddressZero,pricingAsset:{address:u.AddressZero,symbol:""},depositTokens:[]})),Iy=()=>Promise.resolve(),Ii=m.createContext({setUpperLimitPrice:Te,setLowerLimitPrice:Te,setInputAmount:Te,setSlippageBps:Te,setDeadlineDays:Te,setTermsAccepted:Te,setInputToken:Te,setIsSubmitting:Te,reset:Te,onSubmitOrder:Iy,onLog:Te}),Ni=({children:e,initialState:t,actions:n})=>{const[r,s]=m.useReducer(_y,Ci(t)),a=m.useCallback(T=>{s({type:"SET_UPPER_LIMIT_PRICE",payload:T})},[]),i=m.useCallback(T=>{s({type:"SET_LOWER_LIMIT_PRICE",payload:T})},[]),l=m.useCallback(T=>{s({type:"SET_INPUT_AMOUNT",payload:T})},[]),c=m.useCallback(T=>{s({type:"SET_SLIPPAGE_BPS",payload:T})},[]),d=m.useCallback(T=>{s({type:"SET_DEADLINE_DAYS",payload:T})},[]),p=m.useCallback(T=>{s({type:"SET_TERMS_ACCEPTED",payload:T})},[]),g=m.useCallback(T=>{s({type:"SET_INPUT_TOKEN",payload:T})},[]),h=m.useCallback(T=>{s({type:"SET_IS_SUBMITTING",payload:T})},[]),f=m.useCallback(()=>{s({type:"RESET"})},[]),v=m.useMemo(()=>({setUpperLimitPrice:a,setLowerLimitPrice:i,setInputAmount:l,setSlippageBps:c,setDeadlineDays:d,setTermsAccepted:p,setInputToken:g,setIsSubmitting:h,reset:f,onSubmitOrder:n.onSubmitOrder,onOrderCreated:n?.onOrderCreated,onOrderError:n?.onOrderError,onLog:n?.onLog}),[a,i,l,c,d,p,g,h,f,n.onSubmitOrder,n?.onOrderCreated,n?.onOrderError,n?.onLog]);return o.jsx(Ii.Provider,{value:v,children:o.jsx(_i.Provider,{value:r,children:e})})},Ne=()=>m.useContext(_i),Bt=()=>m.useContext(Ii),Pi={switchNetwork:"Switch Network",limitBuyTitle:"Order details",upperLimitLabel:"Upper limit",upperLimitSubtitle:"Buys when price rises above target",lowerLimitLabel:"Lower limit",lowerLimitSubtitle:"Buys when price drops to target",inputAmountLabel:"Amount",slippageLabel:"Slippage tolerance",deadlineLabel:"Order expiry",deadlineDaysSuffix:"days",price:"price",limitBuyTerms:"I understand and accept limit buy orders are not guaranteed",acceptTerms:"I understand and accept",signAndSubmit:"Submit Order",approvePermit2Step:"Step 1/2: Approve",signOrderStep:"Step 2/2: Submit Order",balanceLabel:"Balance",cancel:"Cancel",termsPoint1:"A limit buy order requires sufficient token approval via Permit2 — revoking approval will prevent the order from being executed.",termsPoint2:"Ensure your wallet holds enough input tokens at the time of execution. If the balance is insufficient, the order will fail.",termsPoint3:"While limit buys are generally expected to execute, they are currently in beta and execution is not guaranteed."},Oi=m.createContext(Pi),Li=({children:e,config:t})=>{const n=m.useMemo(()=>({...Pi,...t}),[t]);return o.jsx(Oi.Provider,{value:n,children:e})},Ke=()=>{const e=m.useContext(Oi);if(!e)throw new Error("LimitBuyTranslationContext is used out of Provider");return e},Ny=()=>{const e=Ke(),{form:{upperLimitPrice:t,lowerLimitPrice:n},pricingAsset:r,vaultChainId:s}=Ne(),{setUpperLimitPrice:a,setLowerLimitPrice:i}=Bt(),l=le({address:r.address,chainId:s,refetchInterval:u.SHORTEN_POLLING_INTERVAL}),c=Number(l)<lT?cT:dT,d=m.useCallback(()=>{a("")},[a]),p=m.useCallback(()=>{i("")},[i]),g=`${r.symbol} ${e.price}`;return{upperLimitPrice:t,lowerLimitPrice:n,setUpperLimitPrice:a,setLowerLimitPrice:i,onDisableUpperLimitPrice:d,onDisableLowerLimitPrice:p,pricingAssetPrice:l==="0"?null:w.formatToUsd({value:l,maximumFractionDigits:c}),pricingAssetSymbol:r.symbol,inputSuffix:g,upperLimitLabel:e.upperLimitLabel,upperLimitSubtitle:e.upperLimitSubtitle,lowerLimitLabel:e.lowerLimitLabel,lowerLimitSubtitle:e.lowerLimitSubtitle}},Py=()=>{const e=Ke(),{form:{inputAmount:t},inputToken:n,depositTokens:r}=Ne(),{setInputAmount:s,setInputToken:a}=Bt(),i=m.useCallback(d=>{s(d.replace(/[^\d.]/g,"").replace(/(\..*)\./g,"$1"))},[s]),l=m.useCallback(d=>{a(d),s("")},[a,s]),c=Ae({symbol:n.symbol,address:n.address,watch:!0});return{inputAmount:t,handleInputAmountChange:i,inputToken:n,depositTokens:r,handleInputTokenChange:l,tokenBalance:c,inputAmountLabel:e.inputAmountLabel,balanceLabel:e.balanceLabel}},Oy=({depositTokens:e,activeAddress:t,onSelect:n,onClose:r})=>o.jsxs("div",{className:"dtw-absolute dtw-inset-0 dtw-z-10 dtw-flex dtw-flex-col dtw-bg-[var(--limit-order-background-color)] dtw-rounded-[var(--limit-order-radius)]",children:[o.jsxs("div",{className:"dtw-flex dtw-items-center dtw-justify-between dtw-px-4 dtw-py-3 dtw-border-b dtw-border-[var(--limit-order-input-border-color)]",children:[o.jsx("span",{className:"dtw-text-[length:var(--limit-order-font-size)] dtw-font-medium dtw-text-[color:var(--limit-order-primary-content-color)]",children:"Select token"}),o.jsx("button",{type:"button",className:"dtw-text-[color:var(--limit-order-secondary-content-color)] dtw-text-lg dtw-cursor-pointer dtw-px-1",onClick:r,children:"×"})]}),o.jsx("ul",{className:"dtw-flex dtw-flex-col dtw-overflow-y-auto dtw-flex-1",children:e.map(s=>{const a=s.address===t;return o.jsx("li",{children:o.jsxs("button",{type:"button",className:"dtw-flex dtw-items-center dtw-gap-3 dtw-w-full dtw-px-4 dtw-py-3 dtw-cursor-pointer hover:dtw-bg-[var(--limit-order-input-focus-bg)] dtw-transition-colors",onClick:()=>n(s),children:[o.jsx(xe,{symbols:[s.symbol],size:"lg",className:"dtw-flex-shrink-0"}),o.jsx("span",{className:"dtw-text-[length:var(--limit-order-font-size)] dtw-font-medium dtw-text-[color:var(--limit-order-primary-content-color)]",children:s.symbol}),a&&o.jsx(Je.CheckIcon,{className:"dtw-w-4 dtw-h-4 dtw-ml-auto dtw-text-themeGreen"})]})},s.address)})})]}),Ly=()=>{const[e,t]=m.useState(!1),{inputAmount:n,handleInputAmountChange:r,inputToken:s,depositTokens:a,handleInputTokenChange:i,tokenBalance:l,inputAmountLabel:c,balanceLabel:d}=Py();return o.jsxs(o.Fragment,{children:[o.jsxs("div",{className:"dtw-px-3 dtw-py-2 dtw-flex dtw-flex-col dtw-gap-2 dtw-border dtw-border-[var(--limit-order-switch-panel-border-color)] dtw-rounded-[var(--limit-order-switch-panel-radius,var(--limit-order-radius))] dtw-bg-[color:var(--limit-order-secondary-color)]",children:[o.jsxs("div",{className:"dtw-flex dtw-items-center dtw-justify-between",children:[o.jsx("span",{className:"dtw-text-[color:var(--limit-order-primary-content-color)] dtw-text-[length:var(--limit-order-font-size)]",children:c}),o.jsxs("span",{className:"dtw-text-[color:var(--limit-order-secondary-content-color)] dtw-text-[length:var(--limit-order-font-size-sm)]",children:[d,": ",l??"0"," ",s.symbol]})]}),o.jsx("div",{className:"dtw-flex dtw-border-[var(--limit-order-input-border-color)] dtw-rounded-[var(--limit-order-input-radius,var(--limit-order-radius))] dtw-border dtw-bg-[var(--limit-order-input-bg,var(--limit-order-neutral-color))] dtw-py-[var(--limit-order-input-py)] dtw-px-[var(--limit-order-input-px)] focus-within:dtw-border-[var(--limit-order-input-focus-border-color)] focus-within:dtw-bg-[var(--limit-order-input-focus-bg)] dtw-shadow-md",children:o.jsxs("div",{className:"dtw-flex dtw-items-center dtw-gap-1 dtw-w-full dtw-text-[color:var(--limit-order-input-content-color,var(--limit-order-secondary-content-color))]",children:[o.jsx("input",{className:"dtw-w-full dtw-appearance-none dtw-bg-transparent placeholder:dtw-text-[color:var(--limit-order-input-placeholder-color,var(--limit-order-secondary-content-color))] dtw-text-[length:var(--limit-order-input-font-size,var(--limit-order-font-size-sm))] dtw-leading-[var(--limit-order-input-line-height,var(--limit-order-line-height-sm))] dtw-font-[var(--limit-order-input-font-weight,var(--limit-order-font-weight-light))] dtw-outline-none focus:dtw-outline-none lg:dtw-text-[length:var(--limit-order-input-font-size-lg,var(--limit-order-font-size-lg))] lg:dtw-leading-[var(--limit-order-input-line-height-lg,var(--limit-order-line-height-lg))]",type:"text",inputMode:"decimal",min:0,value:n,onChange:p=>r(p.target.value),placeholder:"0.00"}),o.jsxs("button",{type:"button",className:"dtw-flex dtw-items-center dtw-gap-1.5 dtw-cursor-pointer dtw-rounded-full dtw-border dtw-border-[var(--limit-order-input-button-border-color)] dtw-px-2 dtw-py-1 dtw-bg-[var(--limit-order-input-button-bg)] hover:dtw-bg-[var(--limit-order-input-focus-bg)]",onClick:()=>t(!0),children:[o.jsx(xe,{symbols:[s.symbol],size:"xs",className:"dtw-flex-shrink-0"}),o.jsx("span",{className:"dtw-font-light dtw-whitespace-nowrap dtw-text-[length:var(--limit-order-input-suffix-font-size,var(--limit-order-font-size-sm))] dtw-text-[color:var(--limit-order-secondary-content-color)]",children:s.symbol}),a.length>1&&o.jsx(Je.ChevronDownIcon,{className:"dtw-h-4 dtw-w-4 dtw-text-[color:var(--limit-order-secondary-content-color)] dtw-flex-shrink-0","aria-hidden":"true"})]})]})})]}),e&&o.jsx(Oy,{depositTokens:a,activeAddress:s.address,onSelect:p=>{i(p),t(!1)},onClose:()=>t(!1)})]})},Di=10**Dr,Dy=new RegExp(`^\\d*\\.?\\d{0,${Dr}}$`),Bs=e=>e?(Number(e)/Di).toString():"",ky=()=>{const e=Ke(),{form:{slippageBps:t}}=Ne(),{setSlippageBps:n}=Bt(),[r,s]=m.useState(()=>Bs(t));m.useEffect(()=>{const i=Bs(t);s(l=>Number(l)===Number(i)?l:i)},[t]);const a=m.useCallback(i=>{if(i===""){s(""),n("");return}const l=Number(i);!Number.isNaN(l)&&l>=0&&l<=100&&Dy.test(i)&&(s(i),n(Math.round(l*Di).toString()))},[n]);return{slippagePercent:r,handleSlippagePercentChange:a,slippageLabel:e.slippageLabel}},Ry=()=>{const{slippagePercent:e,handleSlippagePercentChange:t,slippageLabel:n}=ky();return o.jsxs("div",{className:"dtw-px-3 dtw-py-2 dtw-flex dtw-flex-col dtw-gap-2 dtw-border dtw-border-[var(--limit-order-switch-panel-border-color)] dtw-rounded-[var(--limit-order-switch-panel-radius,var(--limit-order-radius))] dtw-bg-[color:var(--limit-order-secondary-color)]",children:[o.jsx("span",{className:"dtw-text-[color:var(--limit-order-primary-content-color)] dtw-text-[length:var(--limit-order-font-size)]",children:n}),o.jsx("div",{className:"dtw-flex dtw-flex-col dtw-gap-[var(--limit-order-input-group-gap,var(--limit-order-gap))] dtw-border-[var(--limit-order-input-border-color)] dtw-rounded-[var(--limit-order-input-radius,var(--limit-order-radius))] dtw-border dtw-bg-[var(--limit-order-input-bg,var(--limit-order-neutral-color))] dtw-py-[var(--limit-order-input-py)] dtw-px-[var(--limit-order-input-px)] focus-within:dtw-border-[var(--limit-order-input-focus-border-color)] focus-within:dtw-bg-[var(--limit-order-input-focus-bg)] dtw-shadow-md",children:o.jsxs("div",{className:"dtw-flex dtw-items-center dtw-gap-1 dtw-text-[color:var(--limit-order-input-content-color,var(--limit-order-secondary-content-color))]",children:[o.jsx("input",{className:"dtw-w-full dtw-appearance-none dtw-bg-transparent placeholder:dtw-text-[color:var(--limit-order-input-placeholder-color,var(--limit-order-secondary-content-color))] dtw-text-[length:var(--limit-order-input-font-size,var(--limit-order-font-size-sm))] dtw-leading-[var(--limit-order-input-line-height,var(--limit-order-line-height-sm))] dtw-font-[var(--limit-order-input-font-weight,var(--limit-order-font-weight-light))] dtw-outline-none focus:dtw-outline-none lg:dtw-text-[length:var(--limit-order-input-font-size-lg,var(--limit-order-font-size-lg))] lg:dtw-leading-[var(--limit-order-input-line-height-lg,var(--limit-order-line-height-lg))]",type:"text",inputMode:"decimal",value:e,onChange:r=>t(r.target.value)}),o.jsx("span",{className:"dtw-font-light dtw-whitespace-nowrap dtw-text-[length:var(--limit-order-input-suffix-font-size,var(--limit-order-font-size-sm))] dtw-text-[color:var(--limit-order-secondary-content-color)]",children:"Percent"})]})})]})},jy=()=>{const{upperLimitPrice:e,lowerLimitPrice:t,setUpperLimitPrice:n,setLowerLimitPrice:r,onDisableUpperLimitPrice:s,onDisableLowerLimitPrice:a,pricingAssetPrice:i,pricingAssetSymbol:l,inputSuffix:c,upperLimitLabel:d,upperLimitSubtitle:p,lowerLimitLabel:g,lowerLimitSubtitle:h}=Ny();return o.jsx(o.Fragment,{children:o.jsxs("div",{className:"dtw-flex dtw-flex-col dtw-gap-[var(--limit-order-input-group-gap,var(--limit-order-gap))] dtw-px-[var(--limit-order-group-px)]",children:[o.jsx(ui,{symbol:l,price:i}),o.jsx(At,{title:d,subtitle:p,defaultEnabled:!!e,onDisable:s,children:o.jsx(nn,{inputValue:e,onInputChange:n,symbol:l,suffix:c})}),o.jsx(At,{title:g,subtitle:h,defaultEnabled:!0,onDisable:a,children:o.jsx(nn,{inputValue:t,onInputChange:r,symbol:l,suffix:c})}),o.jsx(Ly,{}),o.jsx(Ry,{})]})})},My=()=>{const{account:e=u.AddressZero}=j(),{inputToken:t,vaultChainId:n,form:{inputAmount:r}}=Ne(),{data:s}=nt({tokenAddress:t.address,ownerAddress:e,spenderAddress:An,chainId:n,skip:w.isZeroAddress(t.address)}),a=r?w.shiftBy(r,t.decimals):"0";return s?new I(a).lte(s.toString()):!1},By=()=>{const{inputToken:e}=Ne(),[t,n]=m.useState(!1),[r,s]=m.useState(),{send:a}=de({contractId:"erc20",dynamicContractAddress:e.address,functionName:"approve",onSettled(l){s(l??void 0),n(!1)}});return{approvePermit2:async()=>{w.isZeroAddress(e.address)||(n(!0),await a(An,u.MaxUint256))},isApproving:t,txHash:r}},$y=()=>{const e=crypto.getRandomValues(new Uint8Array(6));return BigInt("0x"+Array.from(e).map(t=>t.toString(16).padStart(2,"0")).join(""))},Uy=e=>Math.floor(Date.now()/1e3+Number(e)*24*60*60),Fy=()=>{const{data:e}=_.useWalletClient(),{account:t}=j(),n=Ne(),{onSubmitOrder:r,onOrderCreated:s,onOrderError:a,setIsSubmitting:i}=Bt();return{signAndSubmit:m.useCallback(async()=>{if(!e||!t)return;const{vaultAddress:c,vaultChainId:d,limitBuyManagerAddress:p,pricingAsset:g,inputToken:h,form:{upperLimitPrice:f,lowerLimitPrice:v,inputAmount:T,slippageBps:b,deadlineDays:A}}=n,x=BigInt(w.shiftBy(T,h.decimals)),S=!!v,O=BigInt(!!f?w.shiftBy(f,u.DEFAULT_PRECISION$1):0),M=S?BigInt(w.shiftBy(v,u.DEFAULT_PRECISION$1)):u.MaxUint256,P=$y(),U=Uy(A),J={owner:t,targetVault:c,pricingAsset:g.address,minTriggerPriceD18:O,maxTriggerPriceD18:M,slippageToleranceBps:Number(b)},Y={permitted:{token:h.address,amount:x},spender:p,nonce:P,deadline:BigInt(U),witness:J};i(!0);try{const re={name:"Permit2",chainId:d,verifyingContract:An},ge=await e.signTypedData({account:t,domain:re,types:fa,primaryType:"PermitWitnessTransferFrom",message:Y}),Be={order:J,permit:{token:h.address,amount:x.toString(),nonce:P.toString(),deadline:U},owner:t,signature:ge,chainId:d};await r(Be),s?.()}catch(re){a?.(re instanceof Error?re:new Error(String(re)))}finally{i(!1)}},[e,t,n,r,s,a,i])}},ki=()=>{const[e,t]=m.useState("idle"),n=m.useRef(!1),r=My(),{approvePermit2:s,isApproving:a,txHash:i}=By(),{signAndSubmit:l}=Fy(),{vaultChainId:c}=Ne(),{data:d}=_.useWaitForTransactionReceipt({hash:i,pollingInterval:u.EXTREMELY_SHORT_POLLING_INTERVAL,query:{enabled:!!i&&e==="waiting-confirmation"}}),p=m.useCallback(()=>{t("idle"),n.current=!1},[]);return m.useEffect(()=>{i&&e==="approving"&&t("waiting-confirmation")},[i,e]),m.useEffect(()=>{e==="approving"&&!a&&!i&&p()},[e,a,i,p]),m.useEffect(()=>{(async()=>{if(d&&e==="waiting-confirmation"&&!n.current){n.current=!0,t("signing");const T=u.TRANSACTION_SETTLE_DELAY[c]??1e3;await new Promise(b=>setTimeout(b,T));try{await l()}finally{p()}}})()},[d,c,e,l,p]),{approveAndSign:m.useCallback(async()=>{if(r){t("signing");try{await l()}finally{p()}return}t("approving"),n.current=!1;try{await s()}catch(v){throw p(),v}},[r,s,l,p]),isLoading:e!=="idle",flowState:e,needsApproval:!r}},Wy=()=>{const e=Ke(),{form:{upperLimitPrice:t,lowerLimitPrice:n,inputAmount:r,slippageBps:s}}=Ne(),{approveAndSign:a,isLoading:i,flowState:l,needsApproval:c}=ki(),d=w.isPositiveNumber(t)||w.isPositiveNumber(n),p=w.isPositiveNumber(r),g=Number(s),h=!isNaN(g)&&g>=aT&&g<=iT;return{handleClick:a,disabled:!d||!p||!h,isLoading:i,buttonText:(()=>{switch(l){case"approving":case"waiting-confirmation":return e.approvePermit2Step;case"signing":return c?e.signOrderStep:e.signAndSubmit;default:return c?e.approvePermit2Step:e.signAndSubmit}})()}},Gy=({onClick:e})=>{const{handleClick:t,disabled:n,isLoading:r,buttonText:s}=Wy();return o.jsx(be,{onClick:e??t,disabled:n,loading:r,children:s})},zy=["termsPoint1","termsPoint2","termsPoint3"],Hy=({onAccept:e,onCancel:t,isLoading:n=!1})=>{const r=Ke();return o.jsxs("div",{className:"dtw-flex dtw-flex-col dtw-gap-6 dtw-py-2",children:[o.jsx("div",{className:"dtw-flex dtw-flex-col dtw-gap-4 dtw-px-2",children:zy.map(s=>o.jsx("p",{className:"dtw-text-[length:var(--limit-order-font-size)] dtw-text-[color:var(--limit-order-secondary-content-color)] dtw-leading-relaxed",children:r[s]},s))}),o.jsxs("div",{className:"dtw-flex dtw-flex-col dtw-gap-2",children:[o.jsx(be,{onClick:e,loading:n,children:r.acceptTerms}),o.jsx(be,{highlighted:!1,onClick:t,disabled:n,children:r.cancel})]})]})},Ri=({onClose:e})=>{const t=Ke(),{vaultChainId:n,form:{termsAccepted:r}}=Ne(),{setTermsAccepted:s}=Bt(),[a,i]=m.useState(!1),{approveAndSign:l,isLoading:c}=ki(),d=()=>{s(!0),i(!1),l()};return a?o.jsx(Hy,{onAccept:d,onCancel:()=>i(!1),isLoading:c}):o.jsxs("div",{className:"dtw-relative dtw-flex dtw-flex-col dtw-gap-2",children:[o.jsx(jy,{}),o.jsx(ii,{vaultChainId:n,switchNetworkLabel:t.switchNetwork,children:o.jsx(Gy,{onClick:r?void 0:()=>i(!0)})}),!!e&&o.jsx(be,{highlighted:!1,onClick:e,children:t.cancel})]})},Vy=({themeConfig:e})=>o.jsx(In,{config:e,children:o.jsx(Ri,{})}),ji=({vaultChainId:e,vaultAddress:t,limitBuyManagerAddress:n,pricingAsset:r,depositTokens:s,translation:a,actions:i,themeConfig:l})=>{const c=m.useMemo(()=>({vaultAddress:t,vaultChainId:e,limitBuyManagerAddress:n,pricingAsset:r,depositTokens:s}),[t,e,n,r,s]);return o.jsx(Li,{config:a,children:o.jsx(Ni,{initialState:c,actions:i,children:o.jsx(Vy,{themeConfig:l})})})},qy=({type:e})=>{const{limitBuyConfig:t,limitOrderThemeConfig:n}=q(),{address:r,chainId:s,pricingAsset:a}=y(),{handleReject:i}=ae({type:e}),l=Q()[1],c=ga(),d=kr[s],p=wt({excludeNativeToken:!0}),g=m.useMemo(()=>t?{...t,onOrderCreated:()=>{i(),t.onOrderCreated?.()}}:void 0,[t,i]),h=m.useCallback(()=>{l({isOpen:!1}),c()},[c,l]);return{handleReject:i,address:r,chainId:s,pricingAsset:a,limitBuyManagerAddress:d,depositTokens:p,limitOrderThemeConfig:n,actions:g,closeAllOverlays:h}},Yy=e=>{const{handleReject:t,chainId:n,address:r,pricingAsset:s,limitBuyManagerAddress:a,depositTokens:i,limitOrderThemeConfig:l,actions:c,closeAllOverlays:d}=qy(e);return!s||!a||!i.length||!c?null:o.jsx(V.Overlay,{onClose:d,onBack:t,className:"!dtw-px-2",noPadding:!0,children:o.jsx("div",{className:"dtw-mt-10 dtw-px-2 dtw-overflow-y-auto theme-scrollbar",children:o.jsx(ji,{vaultAddress:r,vaultChainId:n,limitBuyManagerAddress:a,pricingAsset:s,depositTokens:i,actions:c,themeConfig:l})})})},Ky=({className:e,checked:t,label:n,labelClassName:r,...s})=>o.jsxs(F.Field,{className:"dtw-flex dtw-items-center dtw-gap-2",children:[o.jsx(F.Checkbox,{...s,checked:t,className:N("dtw-group dtw-flex dtw-items-center dtw-justify-center dtw-shrink-0 dtw-size-[var(--panel-checkbox-size)] dtw-rounded-[var(--panel-checkbox-radius)] dtw-p-0.5 dtw-right-0 dtw-outline-0 dtw-cursor-pointer dtw-border",{"dtw-bg-[color:var(--panel-checkbox-bg-checked)] dtw-border-[color:var(--panel-checkbox-border-color-checked)]":t,"dtw-bg-[color:var(--panel-checkbox-bg)] dtw-border-[color:var(--panel-checkbox-border-color)]":!t},e),children:o.jsx(ye.CheckIcon,{className:"dtw-opacity-0 dtw-size-[var(--panel-checkbox-icon-size)] dtw-fill-[color:var(--panel-checkbox-color)] group-data-[checked]:dtw-opacity-100 dtw-shrink-0"})}),n&&o.jsx(F.Label,{className:N("dtw-select-none",r),children:n})]}),Mi=()=>{const[e]=R();return new I(e.value||"0").shiftedBy(e.decimals)},Qy=()=>{const{account:e=u.AddressZero}=j(),{address:t,chainId:n}=y(),r=w.getContractAddressById("limitOrder",n),s=Mi(),{data:a}=nt({tokenAddress:t,ownerAddress:e,spenderAddress:r,chainId:n,skip:w.isZeroAddress(r)});return a?s.lte(a.toString()):!1},$s="approve",Zy=()=>{const{address:e,chainId:t,symbol:n}=y(),[r,s]=m.useState(!1),a=w.getContractAddressById("limitOrder",t),i=ne()[1],l=Ce({action:$s}),{send:c}=de({contractId:"erc20",dynamicContractAddress:e,functionName:"approve",onSettled(...p){s(!1),l(...p)}});return{approveLimitOrder:async()=>{w.isZeroAddress(a)||(i({type:"add",action:$s,symbol:n,chainId:t}),s(!0),c(a,u.MaxUint256))},isApprovePending:r}},Xy=()=>{const e=Qy(),{approveLimitOrder:t,isApprovePending:n}=Zy();return{isApproved:e,approveLimitOrder:t,isApprovePending:n}},Jy=({children:e})=>{const t=E(),{ActionButton:n=z}=$(),{isApproved:r,approveLimitOrder:s,isApprovePending:a}=Xy();return r?e:o.jsx(n,{onClick:s,loading:a,children:t.approve})},Bi=()=>{const{chainId:e,pricingAsset:t}=y();return t??u.ON_DEMAND_PRICING_ASSET_BY_CHAIN_MAP[e]},Us="limit_order_withdraw",eS=e=>{const{account:t=u.AddressZero}=j(),{address:n,chainId:r,symbol:s}=y(),a=Bi(),i=ne()[1],l=Ce({action:Us}),c=m.useCallback((...f)=>{l(...f),e()},[l,e]),d=Mi(),{data:p}=gt({userAddress:t,vaultAddress:n,chainId:r}),g=!!p,{send:h}=de({onSettled:c,contractId:"limitOrder",functionName:g?"modifyLimitOrder":"createLimitOrder"});return m.useCallback(async()=>{i({type:"add",action:Us,symbol:s,chainId:r});const f=BigInt(0),v=u.MaxUint256,T=[BigInt(d.toFixed()),f,v,t,n,a?.address];return h(T)},[i,s,r,d,t,n,a?.address,h])},tS=({limitOrderHandler:e,action:t})=>{const n=E(),{showError:r}=Ve(),{account:s}=j(),a=y(),[i]=R(),l=Q()[1],c=ne()[1],d=sn(),p=t==="delete_limit_order_withdraw",g=async()=>{const h=a.chainId;l({isOpen:!0,status:"Wallet",action:t,link:"",sendTokens:[i],receiveTokens:null,meta:{}});try{await e()}catch(f){f instanceof We&&(r(f.message),d?.(f,a.address,h,s)),l({isOpen:!1,status:"None",link:"",sendTokens:null,receiveTokens:null,meta:{}}),c({type:"remove",status:"fail"})}};return{label:p?n.delete:n.withdrawAction,handleLimitOrderWithdraw:g}},nS="limit_order_withdraw",rS=()=>{const e=we(),t=$r("limit_order_withdraw"),n=m.useCallback(()=>e({type:"MERGE_OVERLAY",payload:{type:G.LIMIT_ORDER_WITHDRAW,isOpen:!1}}),[e]),r=eS(n),{handleLimitOrderWithdraw:s,label:a}=tS({limitOrderHandler:r,action:nS});return{label:a,handleLimitOrderWithdraw:s,isLoading:t}},sS=({disabled:e})=>{const{ActionButton:t=z}=$(),{label:n,handleLimitOrderWithdraw:r,isLoading:s}=rS();return o.jsx(t,{onClick:r,disabled:e,loading:s,children:n})},oS=["termOfUseWithdrawPoint1","termOfUseWithdrawPoint2"],aS=({className:e})=>{const t=E();return o.jsxs(o.Fragment,{children:[o.jsx("p",{children:t.limitOrderWithdrawDescription}),o.jsx("div",{className:N("dtw-w-full dtw-text-sm dtw-overflow-y-auto theme-scrollbar dtw-text-[color:var(--panel-secondary-content-color)]",e),children:o.jsx("ol",{className:"dtw-list-decimal dtw-list-inside dtw-space-y-2",children:oS.map((n,r)=>o.jsxs("li",{className:"dtw-text-pretty",children:[r+1,". ",t[n]]},n))})})]})},iS=({type:e})=>{const t=E(),{ActionButton:n=z}=$(),{handleReject:r}=ae({type:e}),[s,a]=m.useState(!1);return o.jsx(V.Overlay,{onClose:r,children:o.jsxs("div",{className:"dtw-flex dtw-flex-col dtw-gap-2 dtw-w-full",children:[o.jsxs("div",{className:"dtw-px-2 dtw-flex dtw-flex-col dtw-gap-2",children:[o.jsx(aS,{}),o.jsx("div",{className:"dtw-mt-1 dtw-flex dtw-items-center dtw-gap-1.5",children:o.jsx(Ky,{checked:s,onChange:i=>a(i),label:t.termOfUseWithdrawAcceptLabel,labelClassName:"dtw-text-sm dtw-cursor-pointer"})})]}),o.jsx(n,{highlighted:!1,onClick:r,children:t.back}),o.jsx(Jy,{children:o.jsx(sS,{disabled:!s})})]})})},lS=({isActive:e,onError:t})=>{const n=E(),r=xn(e),{canSpend:s,approve:a,isCanSpendFetching:i}=Sn({onErrorCallback:t}),l=m.useRef(!1);return m.useEffect(()=>{if(!i){if(s){l.current=!0;return}l.current||(l.current=!0,a())}},[i,s,a]),{label:n.approveTokensForWithdrawal,description:r}},Fe=({stepNumber:e,isActive:t,isFinished:n,label:r,description:s})=>o.jsxs("div",{className:N("dtw-flex dtw-items-center dtw-gap-3 dtw-p-2 dtw-rounded-xl",{"dtw-bg-[color:var(--panel-popup-list-item-bg-even)]":t}),children:[o.jsxs("div",{className:N("dtw-relative dtw-flex dtw-items-center dtw-justify-center dtw-w-7 dtw-h-7 dtw-text-sm",{"dtw-text-[color:var(--panel-secondary-content-color)]":!t}),children:[t&&o.jsx("div",{className:"dtw-absolute dtw-inset-0 dtw-rounded-full dtw-border-2 dtw-border-transparent dtw-border-t-[var(--panel-content-color)] dtw-animate-spin"}),o.jsx("div",{className:N("dtw-flex dtw-items-center dtw-justify-center dtw-w-full dtw-h-full dtw-rounded-full dtw-border dtw-bg-[color:var(--panel-popup-list-item-bg-even)]",{"dtw-border-transparent":t||!n,"dtw-border-[var(--panel-secondary-content-color)]":n&&!t}),children:e})]}),o.jsxs("div",{className:"dtw-flex dtw-flex-col",children:[o.jsx("span",{className:N({"dtw-text-[color:var(--panel-secondary-content-color)]":!t}),children:r}),s&&o.jsx("span",{className:"dtw-text-xs dtw-text-[color:var(--panel-secondary-content-color)]",children:s})]})]}),cS=({isActive:e,onError:t,stepNumber:n,isFinished:r})=>{const{label:s,description:a}=lS({isActive:e,onError:t});return o.jsx(Fe,{stepNumber:n,isFinished:r,isActive:e,label:s,description:a})},Gn=0,dS=1e3,uS=e=>e?{approve:0,oracleUpdate:1,initWithdraw:2,completeWithdraw:3}:{approve:0,oracleUpdate:-1,initWithdraw:1,completeWithdraw:2},pS=(e,t,n)=>{m.useEffect(()=>{t==="Success"&&n&&u.COMPLETE_WITHDRAW_ACTIONS.includes(n)&&e()},[t,n,e])},mS=e=>{const[t,n]=m.useState(!1);return m.useEffect(()=>{if(!e){n(!1);return}const r=setTimeout(()=>{n(!0)},dS);return()=>clearTimeout(r)},[e]),t},wS=()=>{const{address:e,chainId:t}=y(),{hasAssets:n,isReady:r}=pt({address:e,chainId:t}),{hasAssets:s,isReady:a}=je({address:e,chainId:t}),i=fn(),l=dr(),[c]=ne(),{isOndoPriceFresh:d,recordOndoPriceUpdate:p}=Ba(),g=r&&a,h=n&&s&&i,f=h,[v,T]=m.useState(null),{needsPriceUpdate:b}=zv({address:e,chainId:t,enabled:h&&v===null});m.useEffect(()=>{if(!(!h||v!==null)){if(d()){T(!1);return}b!==void 0&&T(b)}},[h,b,v,d]),m.useEffect(()=>{if(!h||v!==null)return;const Y=setTimeout(()=>T(!0),u.ONDO_PRICE_CHECK_TIMEOUT_MS);return()=>clearTimeout(Y)},[h,v]);const A=v===!0,x=c.find(Y=>Y.action==="update_ondo_prices")?.txHash,{data:S}=_.useWaitForTransactionReceipt({hash:x,chainId:t,pollingInterval:u.EXTREMELY_SHORT_POLLING_INTERVAL,query:{enabled:A&&!!x}}),L=!!S,[O,M]=m.useState(!1);m.useEffect(()=>{!L||O||(M(!0),p(x))},[L,O,p,x]);const[P,U]=m.useState(!1);return m.useEffect(()=>{if(!A||!O)return;const Y=w.getSettleDelay({chainId:t,action:"update_ondo_prices",isRabbyWallet:l});if(Y<=0){U(!0);return}const re=setTimeout(()=>U(!0),Y);return()=>clearTimeout(re)},[A,O,t,l]),{hasOracleUpdateStep:f,needsOracleUpdate:A,oracleUpdateDone:!f||v===!1||A&&P,isVaultDataReady:g}},hS=({type:e})=>{const{handleReject:t}=ae({type:e}),[n]=_t(),[{status:r,action:s}]=Q(),{isCompleteWithdrawStep:a}=Ye(),{isUnrollAndClaimTransaction:i,isFetching:l,isFetched:c}=Mr(),{canSpend:d}=Sn({onErrorCallback:t}),{hasOracleUpdateStep:p,needsOracleUpdate:g,oracleUpdateDone:h,isVaultDataReady:f}=wS(),v=uS(p),T=mS(d);pS(t,r,s);const b=a&&!i,A=b?v.completeWithdraw:d?p&&!h?v.oracleUpdate:v.initWithdraw:v.approve,x=n?.receiveTokens?.[0],S=n?.receiveTokens?.length===1&&x?.symbol,L=x?.symbol!==u.MULTI_ASSET_TOKEN.symbol?x?.amount:"";return{isUnrollAndClaimTransaction:i,activeStepIndex:A,hasOracleUpdateStep:p,needsOracleUpdate:g,stepIndices:v,canSpend:d,isCompleteWithdrawStep:b,handleReject:t,isUnrollAndClaimCheckFetching:l,isTransactionTypeReady:(c||T)&&f,withdrawAction:n,displayReceiveTokenInfo:S,receiveToken:x,receiveTokenAmount:L}},gS=({isActive:e,onError:t})=>{const n=E(),r=xn(e),s=Va({onErrorCallback:t}),{handleTrade:a}=qa({withdraw:s,onErrorCallback:t});return DA({handleTrade:a,onError:t}),{label:n.swapToCompleteSell,description:r}},fS=({stepNumber:e,isActive:t,isFinished:n,onError:r})=>{const{label:s,description:a}=gS({isActive:t,onError:r});return o.jsx(Fe,{isFinished:n,stepNumber:e,isActive:t,label:s,description:a})},vS=({isActive:e,isCompleteWithdrawStep:t,isPending:n,onError:r})=>{const s=xn(e),{withdraw:a}=zT({onErrorCallback:r}),{handleTrade:i}=Br({trade:a,onErrorCallback:r}),l=m.useRef(!1);return m.useEffect(()=>{n||e&&!t&&!l.current&&(l.current=!0,i())},[n,e,t,i]),{description:s}},TS=({stepNumber:e,isActive:t,isFinished:n,isPending:r,onError:s,isCompleteWithdrawStep:a,canSpend:i,label:l})=>{const{description:c}=vS({isActive:t,isCompleteWithdrawStep:a,isPending:r,onError:s});return o.jsx(Fe,{isFinished:n,stepNumber:e,isActive:t,label:l,description:c})},bS=({isActive:e,isUpdateRequired:t,onError:n})=>{const r=E(),s=xn(e),{address:a,chainId:i}=y(),{assets:l}=je({address:a,chainId:i}),{showError:c}=Ve(),d=m.useRef("idle"),p=m.useCallback(h=>{d.current!=="failed"&&(d.current="failed",h instanceof Et&&c(h.message),n())},[n,c]),g=$a({ondoAssets:l,onErrorCallback:p});return m.useEffect(()=>{!e||!t||d.current!=="idle"||(d.current="fired",g().catch(p))},[e,t,g,p]),{label:r.updateOndoPricesStep,description:s}},AS=({stepNumber:e,isActive:t,isFinished:n,isUpdateRequired:r,onError:s})=>{const{label:a,description:i}=bS({isActive:t,isUpdateRequired:r,onError:s});return o.jsx(Fe,{stepNumber:e,isFinished:n,isActive:t,label:a,description:i})},xS=({canSpend:e,isTransactionTypeReady:t,isUnrollAndClaimTransaction:n,hasOracleUpdateStep:r,stepIndices:s,activeStepIndex:a})=>{const i=E(),l=qe(),c=d=>({stepNumber:d+1,isActive:a===d,isFinished:a>d});return{showLoadingPlaceholder:!e||!t,oracleUpdateStep:r?c(s.oracleUpdate):void 0,initWithdrawStep:c(s.initWithdraw),completeWithdrawStep:c(s.completeWithdraw),showCompleteWithdrawStep:!n&&!l,initWithdrawLabel:n||l?i.unrollAndClaimAssets:i.unrollAssetsToPrepare}},yS=e=>{const t=E(),{showLoadingPlaceholder:n,oracleUpdateStep:r,initWithdrawStep:s,completeWithdrawStep:a,showCompleteWithdrawStep:i,initWithdrawLabel:l}=xS(e);return n?o.jsxs(o.Fragment,{children:[r&&o.jsx(Fe,{isFinished:!1,stepNumber:r.stepNumber,isActive:!1,label:t.updateOndoPricesStep}),o.jsx(Fe,{isFinished:!1,stepNumber:s.stepNumber,isActive:!1,label:t.unrollAssetsToPrepare}),o.jsx(Fe,{isFinished:!1,stepNumber:a.stepNumber,isActive:!1,label:t.swapToCompleteSell})]}):o.jsxs(o.Fragment,{children:[r&&o.jsx(AS,{...r,isUpdateRequired:e.needsOracleUpdate,onError:e.onError}),o.jsx(TS,{...s,canSpend:e.canSpend,isCompleteWithdrawStep:e.isCompleteWithdrawStep,isPending:e.isUnrollAndClaimCheckFetching,onError:e.onError,label:l}),i&&o.jsx(fS,{...a,onError:e.onError})]})},SS=e=>{const t=E(),{ActionButton:n=z}=$(),{isUnrollAndClaimTransaction:r,activeStepIndex:s,hasOracleUpdateStep:a,needsOracleUpdate:i,stepIndices:l,canSpend:c,isCompleteWithdrawStep:d,handleReject:p,isUnrollAndClaimCheckFetching:g,isTransactionTypeReady:h,withdrawAction:f,receiveToken:v,displayReceiveTokenInfo:T,receiveTokenAmount:b}=hS(e);return o.jsxs(V.Overlay,{centered:!1,className:"dtw-gap-4",children:[o.jsx(n,{highlighted:!1,onClick:p,className:"!dtw-p-1 !dtw-w-24 dtw-self-start",children:t.cancel}),o.jsxs("div",{className:"dtw-flex dtw-flex-col dtw-items-center dtw-gap-2",children:[o.jsx(xe,{symbols:[f?.sendToken?.symbol??""],size:"2xl"}),o.jsxs("div",{className:"dtw-text-center",children:[o.jsxs("p",{className:"dtw-text-lg",children:[t.sell," ",f?.sendToken.amount??""," ",f?.sendToken.symbol]}),T&&v?.symbol&&o.jsxs("p",{className:"dtw-text-sm dtw-text-[color:var(--panel-secondary-content-color)]",children:["for ",b," ",v.symbol]})]})]}),o.jsxs("div",{className:"dtw-mt-4 dtw-flex dtw-flex-col dtw-gap-2",children:[o.jsx(cS,{isFinished:s>Gn,isActive:s===Gn,onError:p,stepNumber:Gn+1}),o.jsx(yS,{canSpend:c,isTransactionTypeReady:h,isUnrollAndClaimTransaction:r,isCompleteWithdrawStep:d,isUnrollAndClaimCheckFetching:g,hasOracleUpdateStep:a,needsOracleUpdate:i,stepIndices:l,activeStepIndex:s,onError:p})]})]})},ES=()=>{const e=E();return o.jsxs(o.Fragment,{children:[o.jsx(xt,{label:e.slippageTolerance,tooltipText:e.withdrawSlippageWarning,children:o.jsx(Ta,{})}),o.jsx(xt,{label:e.tokenAllowance,tooltipText:e.toggleTokenApprovalAmount,children:o.jsx(La,{})}),o.jsx(Da,{})]})},CS=({assets:e=[]})=>{const{stablePrecision:t}=q(),{firstPart:n,secondPart:r}=w.sliceByIndex(e,u.DEFAULT_VISIBLE_ASSETS_LIMIT),s=m.useCallback(({symbol:a,address:i,rawBalance:l,decimals:c,valueInUsd:d})=>o.jsxs("tr",{children:[o.jsxs("td",{children:[o.jsx(Rt,{symbol:a,iconSymbols:[a],symbolClasses:"dtw-text-xs dtw-font-bold",size:"sm"}),o.jsx("p",{className:"dtw-truncate dtw-text-xs dtw-text-[color:var(--panel-secondary-content-color)]",children:w.formatToUsd({value:d})})]}),o.jsx("td",{className:"dtw-text-right",children:o.jsx("p",{className:"dtw-truncate",children:w.formatNumberToLimitedDecimals({value:k.formatUnits(l,c),decimals:t})})})]},i),[t]);return o.jsxs("div",{className:"dtw-text-sm dtw-font-light ",children:[o.jsx(tn,{children:n.map(s)}),r.length>0&&o.jsx(Wa,{children:o.jsx(tn,{children:r.map(s)})})]})},_S=()=>{const{chainId:e}=y(),{stablePrecision:t}=q(),{data:n=[]}=ie(),r=OA(),{data:s=u.AddressZero}=PA();return{assets:n,usdAmount:w.formatToUsd({value:r,maximumFractionDigits:t}),withdrawalVaultLink:yn(s,"address",e)}},IS=()=>{const e=E(),{assets:t,usdAmount:n,withdrawalVaultLink:r}=_S();return o.jsxs(o.Fragment,{children:[o.jsxs("div",{className:"dtw-text-sm dtw-flex dtw-items-center dtw-gap-1",children:[o.jsx("span",{className:"dtw-text-[color:var(--panel-secondary-content-color)]",children:e.total}),o.jsx(He,{link:r??"",iconClassName:"dtw-h-4 dtw-w-4 dtw-text-[color:var(--panel-content-color)]",children:o.jsx("span",{className:"dtw-text-[color:var(--panel-content-color)]",children:n})})]}),o.jsx("div",{className:"dtw-flex dtw-flex-col dtw-gap-[var(--panel-input-group-gap,var(--panel-gap))] dtw-rounded-[var(--panel-input-radius,var(--panel-radius))] dtw-border dtw-bg-[var(--panel-input-bg,var(--panel-neutral-color))] dtw-py-[var(--panel-input-py)] dtw-px-[var(--panel-input-px)] dtw-shadow-md dtw-border-[var(--panel-input-border-color)]",children:o.jsx(CS,{assets:t})})]})},NS=()=>{const e=we(),{requiresHighSlippageConfirm:t,confirmHighSlippage:n,slippageToBeUsed:r}=Lr();return{requiresHighSlippageConfirm:t,slippageToBeUsed:r,handleHighSlippageClick:()=>{e({type:"MERGE_OVERLAY",payload:{type:G.HIGH_SLIPPAGE,isOpen:!0,onConfirm:async()=>n()}})}}},PS=({children:e})=>{const{ActionButton:t=z}=$(),n=E(),{requiresHighSlippageConfirm:r,slippageToBeUsed:s,handleHighSlippageClick:a}=NS();return r?o.jsx(t,{onClick:a,children:n.confirmMaxSlippage.replace("{slippagePercentage}",`${Math.abs(s)}`)}):e},OS=()=>{const{chainId:e}=y(),[t]=B(),n=le({address:t.address,chainId:e}),r=Ya(),s=kt(Math.min(0,r));return{receiveToken:{...t,price:n},swapDiff:r,themeType:s}},LS=()=>{const{receiveToken:e,swapDiff:t,themeType:n}=OS();return o.jsx(yt,{assetInput:e.value,autoFocus:!1,disabled:!0,assetSymbol:e.symbol,assetPrice:e.price,displayCalculatedValue:!0,isLoading:e.isLoading,tradingPriceDiff:t,type:n})},DS=()=>{const e=E(),{stablePrecision:t}=q(),[n]=B(),r=_e(),{minExpectedReceiveAmount:s}=Ur(),a=kt(r),i=a===H.DEFAULT?e.withdrawSlippageWarning:e.highSlippageWarning;return{themeType:a,slippageTooltipText:i,slippagePlaceholder:r.toString(),minReceive:`${w.formatNumberToLimitedDecimals({value:k.formatUnits(BigInt(s),n.decimals),decimals:t})} ${n.symbol}`}},kS=()=>{const e=E(),{slippageTooltipText:t,slippagePlaceholder:n,minReceive:r}=DS(),s=m.useMemo(()=>[{tooltipText:e.exchangeRate,label:e.rate,value:o.jsx(Wr,{})},{tooltipText:t,label:e.maxSlippage,value:o.jsxs("span",{children:[n,"%"]})},{tooltipText:e.minReceiveAmount,label:e.minReceived,value:r}],[r,n,t,e.maxSlippage,e.minReceiveAmount,e.minReceived,e.exchangeRate,e.rate]);return o.jsx(or,{collapseItems:s})},RS=({children:e})=>o.jsxs(V.Meta,{children:[o.jsx("div",{className:"dtw-bg-[var(--panel-meta-action-panel-bg)]",children:e}),o.jsx(kS,{})]}),jS=()=>(LA(),o.jsxs(o.Fragment,{children:[o.jsxs(V.InputGroup,{children:[o.jsx(IS,{}),o.jsx(LS,{})]}),o.jsx(RS,{children:o.jsx(Gr,{children:o.jsxs("div",{className:"tw-flex tw-flex-col tw-gap-2",children:[o.jsx(PS,{children:o.jsx(ti,{})}),o.jsx(ai,{highlighted:!1})]})})})]})),MS=()=>{const{chainId:e,address:t}=y(),{exitFeeNumber:n}=bn({address:t,chainId:e}),[r]=R(),[s,a]=B(),i=ue({address:t,chainId:e}),l=le({address:s.address,chainId:e});m.useEffect(()=>{if(!r.value||r.value==="0"){a({value:""});return}if(!l||l==="0"){a({value:""});return}const d=new I(r.value).times(i).times(1-n/100).dividedBy(l).toFixed(s.decimals);a({value:w.isNumeric(d)?d:""})},[n,s.decimals,l,r.value,i,a])},BS=()=>{const e=E(),t=we(),n=()=>t({type:"MERGE_OVERLAY",payload:{type:G.LIMIT_ORDER_WITHDRAW,isOpen:!0}});return{label:e.withdrawAction,openLimitOrderWithdrawOverlay:n}},$S=()=>{const{ActionButton:e=z}=$(),{label:t,openLimitOrderWithdrawOverlay:n}=BS();return o.jsx(e,{onClick:n,children:t})},zn=[{isLeveragedAsset:w.isFlatMoneyLeveragedAsset,getWithdrawAssetByLeverageAddress:w.getFlatMoneyCollateralByLeverageAddress,getWithdrawAssetByVaultAddress:()=>{},isLentAndBorrowedAsset:w.isAaveLendAndBorrowAsset},{isLeveragedAsset:w.isGmxLeveragedAsset,getWithdrawAssetByLeverageAddress:w.getGmxWithdrawAssetByLeverageAddress,getWithdrawAssetByVaultAddress:w.getGmxWithdrawAssetByVaultAddress,isLentAndBorrowedAsset:w.isAaveLendAndBorrowAsset}],Hn={requiresLeveragedCollateralLiquidity:!1,leveragedCollateralValueFormatted:"$0"},$i=(e,{precision:t,rate:n})=>I(e).shiftedBy(-t).times(n).shiftedBy(-u.DEFAULT_PRECISION).toNumber(),St=e=>$i(e.amount,e),nr=e=>e.reduce((t,n)=>t+St(n),0),rr=(e,t)=>({requiresLeveragedCollateralLiquidity:t>e,leveragedCollateralValueFormatted:w.formatToUsd({value:e})}),Fs=({tokenAddress:e})=>w.isHyperliquidCorePositionAsset(e),Ws=({tokenAddress:e})=>w.isEqualAddress(w.getHyperliquidWithdrawAsset().address,e),US=({config:e,composition:t,sendTokenValue:n})=>{const r=e.chainId===Z.hyperEvm.id,s=r?t.filter(h=>h.amount!=="0"&&!Fs(h)&&!Ws(h)):[],{data:a}=_.useReadContracts({contracts:s.map(({tokenAddress:h})=>({address:h,abi:k.erc20Abi,functionName:"balanceOf",chainId:e.chainId,args:[e.address]})),query:{enabled:s.length>0}});if(!r)return null;const i=nr(t.filter(Fs)),l=s.reduce((h,f,v)=>{const T=a?.[v];if(T?.status!=="success")return h;const b=$i(String(T.result),f);return h+Math.max(0,St(f)-b)},0),c=i+l;if(c<=0)return null;const d=t.find(Ws),p=d?St(d):0,g=nr(t)*p/(p+c);return rr(g,n)},Ui=()=>{const e=y(),t=Re(e),[n]=R(),r=ue(e),s=Number(n.value||"0")*Number(r),a=US({config:e,composition:t,sendTokenValue:s});if(a)return a;const i=t.find(({tokenAddress:h,amount:f})=>zn.some(v=>v.isLeveragedAsset(h)&&f!=="0"));if(!i)return Hn;const l=zn.find(h=>h.isLeveragedAsset(i.tokenAddress));if(!l)return Hn;const c=l.getWithdrawAssetByVaultAddress(e.address)?.address??l.getWithdrawAssetByLeverageAddress(i.tokenAddress).address,d=t.find(({tokenAddress:h})=>w.isEqualAddress(c,h));if(!d)return Hn;const p=St(d);if(t.find(({tokenAddress:h,amount:f})=>zn.some(v=>v.isLentAndBorrowedAsset({address:h,chainId:e.chainId})&&f!=="0"))){const h=St(i),f=nr(t),v=p/f,T=h/f,A=v/(v+T)*f;return rr(A,s)}return rr(p,s)},Fi=()=>{const{chainId:e,onDemandWithdrawalEnabled:t}=y(),{requiresLeveragedCollateralLiquidity:n}=Ui(),r=Pt(),s=Bi();return n&&!!s&&!!t&&(e===Z.arbitrum.id||!r)},FS=()=>{const{address:e,chainId:t,maintenance:n,maintenanceWithdrawals:r,symbol:s}=y(),[a]=R(),i=we(),l=Fi(),c=Nt(),{data:d=0}=kv({address:e,chainId:t}),p=d>0,g=Vt.formatDuration(Vt.intervalToDuration({start:0,end:d})),{requiresHighSlippageConfirm:h,confirmHighSlippage:f,slippageToBeUsed:v}=Lr(),T=()=>{i({type:"MERGE_OVERLAY",payload:{type:G.HIGH_SLIPPAGE,isOpen:!0,onConfirm:async()=>f()}})};return{isEmptyInput:!w.isPositiveNumber(a.value),requiresEndOfCooldown:p,requiresHighSlippageConfirm:h,sendTokenSymbol:a.symbol,slippageToBeUsed:v,dynamicCooldownEndsInTime:g,handleHighSlippageClick:T,maintenance:n||r,poolSymbol:s,isLimitOrderWithdraw:l,insufficientBalance:c}},WS=({children:e})=>{const{ActionButton:t=z}=$(),n=E(),{isEmptyInput:r,requiresEndOfCooldown:s,requiresHighSlippageConfirm:a,sendTokenSymbol:i,slippageToBeUsed:l,dynamicCooldownEndsInTime:c,handleHighSlippageClick:d,maintenance:p,poolSymbol:g,isLimitOrderWithdraw:h,insufficientBalance:f}=FS();return r?o.jsx(t,{disabled:!0,children:n.sellNow}):p?o.jsx(Jt,{promptText:n.poolWithdrawalsAreMaintenance.replace("{poolSymbol}",g),children:n.sellNow}):s?o.jsx(Jt,{promptText:n.withdrawCooldown.replace("{tokenSymbol}",i).replace("{cooldownEndTime}",c),children:n.sellNow}):f?o.jsx(t,{disabled:!0,children:n.insufficientBalance}):h?o.jsx($S,{}):a?o.jsx(t,{onClick:d,children:n.confirmMaxSlippage.replace("{slippagePercentage}",`${Math.abs(l)}`)}):e},GS=()=>{const{address:e,chainId:t}=y(),[n,r]=R(),s=Ae({symbol:n.symbol,address:n.address}),a=ue({address:e,chainId:t});return{...n,updater:r,balance:s,price:a}},zS=()=>{const{chainId:e}=y(),[t,n]=B(),r=le({address:t.address,chainId:e});return{...t,updater:n,price:r,displayCalculatedValue:t.symbol!==u.MULTI_ASSET_TOKEN.symbol}},HS=()=>{const e=GS(),t=zS();return{sendToken:e,onInputChange:r=>{e.updater({value:r})},receiveToken:t}},VS=()=>{const{sendToken:e,onInputChange:t,receiveToken:n}=HS();return o.jsxs(o.Fragment,{children:[o.jsx(yt,{assetInput:e.value,onInputChange:t,assetSymbol:e.symbol,assetPrice:e.price??"",displayMax:!0,maxBalance:e.balance,displayCalculatedValue:!0,children:o.jsx(za,{})}),o.jsxs(yt,{assetInput:n.value,autoFocus:!1,disabled:!0,assetSymbol:n.symbol,assetPrice:n.price,displayCalculatedValue:n.displayCalculatedValue,isLoading:n.isLoading,children:[o.jsx(Qa,{}),n.displayCalculatedValue?o.jsx(Ha,{}):null]})]})},Gs="delete_limit_order_withdraw",qS=()=>{const{address:e,symbol:t,chainId:n}=y(),r=ne()[1],s=Ce({action:Gs}),{send:a}=de({onSettled:s,contractId:"limitOrder",functionName:"deleteLimitOrder"});return m.useCallback(async()=>(r({type:"add",action:Gs,symbol:t,chainId:n}),a(e)),[n,a,t,r,e])},YS=()=>{const{account:e=u.AddressZero}=j(),{address:t,chainId:n}=y(),{data:r}=gt({userAddress:e,vaultAddress:t,chainId:n});return m.useMemo(()=>{const s=!!r&&r.stopLossPriceD18===BigInt(0)&&r.takeProfitPriceD18===u.MaxUint256,a=s?k.formatUnits(r.amountD18,u.DEFAULT_PRECISION):"0";return{hasPendingLimitOrderWithdraw:s,pendingLimitOrderWithdrawAmount:a}},[r])},KS=()=>{const{address:e,chainId:t,symbol:n}=y(),{hasPendingLimitOrderWithdraw:r,pendingLimitOrderWithdrawAmount:s}=YS(),a=ue({address:e,chainId:t}),i=qS(),c=ne()[0].some(h=>h.action==="delete_limit_order_withdraw"),d=w.formatBalance(s,u.DEFAULT_TOKEN_DECIMALS),p=new I(s).multipliedBy(a).toNumber(),g=p>0?w.formatToUsd({value:p}):"";return{hasPendingLimitOrderWithdraw:r,symbol:n,formattedAmount:d,formattedUsdValue:g,cancel:i,isCancelling:c}},QS=()=>{const e=E(),{hasPendingLimitOrderWithdraw:t,symbol:n,formattedAmount:r,formattedUsdValue:s,cancel:a,isCancelling:i}=KS();return t?o.jsx(Xe,{type:"info",className:"dtw-mb-2",children:o.jsxs("div",{className:"dtw-flex dtw-items-center dtw-justify-between dtw-gap-3",children:[o.jsxs("div",{className:"dtw-flex dtw-flex-col dtw-min-w-0",children:[o.jsxs("span",{className:"dtw-text-sm dtw-font-medium dtw-flex dtw-items-center dtw-gap-1.5",children:[o.jsx(Se,{className:"dtw-h-3 dtw-w-3 dtw-shrink-0"}),e.pendingWithdrawalRequest]}),o.jsxs("span",{className:"dtw-text-sm dtw-truncate dtw-text-[color:var(--panel-secondary-content-color)]",children:[r," ",n,s&&` · ${s}`]})]}),o.jsx(z,{highlighted:!1,className:"!dtw-py-1 !dtw-px-3 !dtw-w-auto dtw-shrink-0 dtw-text-sm",onClick:a,loading:i,children:e.cancel})]})}):null},ZS=()=>{const e=E(),{address:t,chainId:n}=y(),[{isMaxSlippageLoading:r}]=X(),{exitFeeNumber:s}=bn({address:t,chainId:n}),a=_e(),i=qe();return{slippageTooltipText:kt(a)===H.DEFAULT?e.withdrawSlippageWarning:e.highSlippageWarning,isMaxSlippageLoading:r,slippagePlaceholder:`${a}%`,exitFee:w.formatPercentage(s,2),minReceivedText:e.estimatedMultiAssetFractions,showMinReceivedText:i}},XS=()=>{const e=E(),{slippageTooltipText:t,slippagePlaceholder:n,isMaxSlippageLoading:r,exitFee:s,minReceivedText:a,showMinReceivedText:i}=ZS(),l=m.useMemo(()=>{const c=[{tooltipText:e.exchangeRate,label:e.rate,value:o.jsx(Wr,{})},{tooltipText:t,label:e.maxSlippage,value:o.jsxs("div",{className:"dtw-flex dtw-gap-1",children:[r&&o.jsx(Se,{className:"dtw-stroke-[color:var(--panel-accent-from-color)] dtw-h-[var(--panel-icon-secondary-size)] sm:dtw-h-[var(--panel-icon-secondary-size-sm)] dtw-w-[var(--panel-icon-secondary-size)] sm:dtw-w-[var(--panel-icon-secondary-size-sm)]"}),o.jsx("span",{className:N({"dtw-text-[color:var(--panel-loading-content-color)]":r}),children:n})]})},{label:e.exitFee,value:s,tooltipText:e.exitFeeExplanation}];return i&&c.push({tooltipText:e.minReceiveAmount,label:e.minReceived,value:a}),c},[t,e.maxSlippage,e.exitFee,e.exitFeeExplanation,e.minReceiveAmount,e.minReceived,e.exchangeRate,e.rate,r,n,s,i,a]);return o.jsx(or,{collapseItems:l})},JS=({children:e})=>{const{WithdrawMetaInfo:t,AvailableLiquidityAlert:n,OnDemandWithdrawAlert:r}=$(),{requiresLeveragedCollateralLiquidity:s,leveragedCollateralValueFormatted:a}=Ui(),i=Fi();return o.jsxs(V.Meta,{children:[o.jsx(QS,{}),o.jsx("div",{children:s?i?o.jsx(o.Fragment,{children:!!r&&o.jsx(r,{})}):o.jsx(o.Fragment,{children:!!n&&o.jsx(n,{liquidityAmount:a})}):null}),o.jsx("div",{className:"dtw-bg-[var(--panel-meta-action-panel-bg)]",children:e}),o.jsx(XS,{}),t&&o.jsx(t,{})]})},eE=()=>{const e=E();return MS(),o.jsxs(o.Fragment,{children:[o.jsx(V.InputGroup,{children:o.jsx(VS,{})}),o.jsx(JS,{children:o.jsx(Gr,{children:o.jsxs("div",{className:"dtw-flex dtw-flex-col dtw-gap-2 dtw-w-full",children:[o.jsx(WS,{children:o.jsx(ti,{})}),o.jsx(Ja,{highlighted:!1,children:e.stopOrder})]})})})]})},tE=()=>{NA();const{isCompleteWithdrawStep:e}=Ye();return{isCompleteWithdrawStep:e}},nE=()=>{const{isCompleteWithdrawStep:e}=tE();return e?o.jsx(jS,{}):o.jsx(eE,{})},rE=()=>o.jsx(V.Panel,{children:o.jsx(nE,{})}),sE=({tradingType:e})=>o.jsxs(F.TabGroup,{selectedIndex:et.indexOf(e),children:[o.jsx(F.TabList,{className:"dtw-flex",children:et.map(t=>o.jsx(F.Tab,{className:"dtw-hidden"},t))}),o.jsxs(F.TabPanels,{children:[o.jsx(V.Settings,{children:o.jsx(eb,{})}),o.jsx(V.Settings,{children:o.jsx(ES,{})})]})]}),oE=({children:e})=>o.jsxs(F.TabList,{className:"dtw-flex dtw-px-[var(--panel-tab-group-px)] dtw-justify-between dtw-items-center",children:[o.jsx("div",{className:"dtw-bg-[var(--panel-tab-list-bg)] dtw-rounded-[var(--panel-tab-list-radius)] dtw-px-[var(--panel-tab-list-px)] dtw-py-[var(--panel-tab-list-py)]",children:et.map(t=>o.jsx(nl,{tradingType:t},t))}),e]}),aE=et.reduce((e,t,n)=>(e[n]=t,e),{}),iE=()=>{const[e]=ve(),t=y(),{standalone:n}=q();kA();const r=Fr(),s=a=>{const i=aE[a];i&&r(i)};return m.useEffect(()=>{n||r("deposit")},[t.address,n]),m.useEffect(()=>{n&&r(e)},[t.address,n,e]),{type:e,onTabChange:s}},lE=()=>{const{type:e,onTabChange:t}=iE();return o.jsxs("div",{className:"trading-widget dtw-relative dtw-pt-3 dtw-bg-[var(--panel-background-color)] dtw-text-[color:var(--panel-content-color)] dtw-rounded-[var(--widget-radius)] md:dtw-rounded-[var(--widget-radius-md)] dtw-overflow-hidden dtw-h-full",children:[o.jsxs(F.TabGroup,{selectedIndex:et.indexOf(e),onChange:t,className:"dtw-flex dtw-flex-col dtw-h-full",children:[o.jsx(oE,{children:o.jsxs("div",{className:"dtw-flex dtw-gap-2 dtw-items-center dtw-justify-end",children:[o.jsx(ZA,{}),o.jsx(sE,{tradingType:e})]})}),o.jsxs(F.TabPanels,{className:"dtw-flex-1 dtw-overflow-y-auto",children:[o.jsx(rx,{}),o.jsx(rE,{})]})]}),o.jsxs(ox,{children:[o.jsx(ax,{type:G.TERMS_OF_USE}),o.jsx(ix,{type:G.HIGH_SLIPPAGE}),o.jsx(lx,{type:G.HYPEREVM_WARNING}),o.jsx(hx,{type:G.TOKEN_SELECT,searchQuery:""}),o.jsx(Tx,{type:G.POOL_SELECT,searchQuery:""}),o.jsx(Rx,{type:G.TRADING}),o.jsx(Cy,{type:G.LIMIT_SELLS}),o.jsx(Yy,{type:G.LIMIT_BUYS}),o.jsx(iS,{type:G.LIMIT_ORDER_WITHDRAW}),o.jsx(SS,{type:G.WITHDRAW_STEPPER}),o.jsx(Vx,{type:G.ERROR_NOTIFICATION})]})]})},cE=({children:e,config:t,className:n})=>o.jsx("div",{className:n,style:{"--panel-radius":`${t?.global?.style?.radiusPrimary??"1rem"}`,"--panel-radius-secondary":`${t?.global?.style?.radiusSecondary??"1rem"}`,"--panel-background-color":`${t?.global?.color?.colorBgPrimary??C.DARK[800]}`,"--panel-gap":`${t?.global?.size?.gap??"0.25rem"}`,"--panel-spacer":`${t?.global?.size?.spacer??"4px"}`,"--panel-content-color":`${t?.global?.color?.colorTextPrimary??C.WHITE.DEFAULT}`,"--panel-content-hover-color":`${t?.global?.color?.colorTextPrimaryHover??`${C.WHITE.DEFAULT}CC`}`,"--panel-secondary-color":`${t?.global?.color?.colorBgSecondary??C.GRAY[800]}`,"--panel-secondary-content-color":`${t?.global?.color?.colorTextSecondary??C.GRAY[600]}`,"--panel-accent-from-color":`${t?.global?.color?.colorBgAccentFrom??C.GREEN.DEFAULT}`,"--panel-accent-to-color":`${t?.global?.color?.colorBgAccentTo??C.GREEN[700]}`,"--panel-accent-hover-from-color":`${t?.global?.color?.colorBgAccentFromHover??`${C.GREEN.DEFAULT}CC`}`,"--panel-accent-hover-to-color":`${t?.global?.color?.colorBgAccentToHover??C.BLUE.dark}`,"--panel-accent-content-color":`${t?.global?.color?.colorTextAccent??C.WHITE.DEFAULT}`,"--panel-accent-content-hover-color":`${t?.global?.color?.colorTextAccentHover??`${C.WHITE.DEFAULT}CC`}`,"--panel-neutral-color":`${t?.global?.color?.colorBgNeutral??`${C.GRAY[600]}33`}`,"--panel-neutral-content-color":`${t?.global?.color?.colorTextNeutral??`${C.GRAY[600]}80`}`,"--panel-loading-content-color":`${t?.global?.color?.colorTextLoading??`${C.WHITE.DEFAULT}99`}`,"--panel-error-content-color":`${t?.global?.color?.colorTextError??C.RED[500]}`,"--panel-warning-content-color":`${t?.global?.color?.colorTextWarning??C.WARNING}`,"--panel-success-content-color":`${t?.global?.color?.colorTextSuccess??C.GREEN.DEFAULT}`,"--panel-success-bg-color":`${t?.global?.color?.colorBgSuccess??"rgba(115, 211, 147, 0.15)"}`,"--panel-error-overlay-icon-color":`${t?.global?.color?.colorErrorOverlayIcon??"var(--panel-accent-from-color)"}`,"--panel-border-color":`${t?.global?.color?.colorBorderPrimary??"var(--panel-content-color)"}`,"--widget-radius":`${t?.component?.widget?.style?.radius??"var(--panel-radius)"}`,"--widget-radius-md":`${t?.component?.widget?.style?.radiusMd??"var(--panel-radius)"}`,"--panel-divider-color":`${t?.component?.divider?.color?.colorBg??"var(--panel-secondary-content-color)"}`,"--panel-scrollbar-color":`${t?.global?.color?.colorScrollbar??`${C.GREEN.DEFAULT}80`}`,"--panel-font-size":`${t?.global?.size?.fontSizeBase??"16px"}`,"--panel-line-height":`${t?.global?.size?.lineHeightBase??"24px"}`,"--panel-font-size-lg":`${t?.global?.size?.fontSizeLg??"18px"}`,"--panel-line-height-lg":`${t?.global?.size?.lineHeightLg??"28px"}`,"--panel-font-size-sm":`${t?.global?.size?.fontSizeSm??"14px"}`,"--panel-line-height-sm":`${t?.global?.size?.lineHeightSm??"20px"}`,"--panel-font-size-xs":`${t?.global?.size?.fontSizeXs??"12px"}`,"--panel-line-height-xs":`${t?.global?.size?.lineHeightXs??"16px"}`,"--panel-font-weight-light":`${t?.global?.style?.fontWeightLight??300}`,"--panel-font-weight-medium":`${t?.global?.style?.fontWeightMedium??500}`,"--panel-font-weight-bold":`${t?.global?.style?.fontWeightBold??700}`,"--panel-action-opacity":`${t?.global?.style?.actionOpacity??1}`,"--panel-action-hover-opacity":`${t?.global?.style?.actionOpacityHover??.8}`,"--panel-label-font-size":`${t?.global?.size?.labelFontSize??"var(--panel-font-size)"}`,"--panel-label-line-height":`${t?.global?.size?.labelLineHeight??"var(--panel-line-height-xs)"}`,"--panel-icon-size":`${t?.global?.size?.iconSize??"20px"}`,"--panel-icon-size-sm":`${t?.global?.size?.iconSizeSm??"24px"}`,"--panel-icon-secondary-size":`${t?.global?.size?.iconSecondarySize??"16px"}`,"--panel-icon-secondary-size-sm":`${t?.global?.size?.iconSecondarySizeSm??"16px"}`,"--panel-icon-color":`${t?.global?.color?.colorIcon??"var(--panel-content-color)"}`,"--panel-icon-color-hover":`${t?.global?.color?.colorIconHover??"var(--panel-content-hover-color)"}`,"--panel-notification-bg":`${t?.component?.notification?.color?.colorBg??"var(--panel-secondary-color)"}`,"--panel-popup-content-color":`${t?.component?.popup?.color?.colorText??"var(--panel-secondary-content-color)"}`,"--panel-popup-bg":`${t?.component?.popup?.color?.colorBg??"var(--panel-secondary-color)"}`,"--panel-overlay-bg":`${t?.component?.overlay?.color?.colorBg??"var(--panel-popup-bg)"}`,"--panel-popup-border-color":`${t?.component?.popup?.color?.colorBorder??"var(--panel-secondary-content-color)"}`,"--panel-popup-font-size":`${t?.component?.popup?.size?.fontSize??t?.global?.size?.fontSizeXs??"12px"}`,"--panel-popup-list-header-bg":`${t?.component?.popupList?.color?.headerBg??C.DARK[800]}`,"--panel-popup-list-item-bg-even":`${t?.component?.popupList?.color?.itemBgEven??"transparent"}`,"--panel-popup-list-item-bg-odd":`${t?.component?.popupList?.color?.itemBgOdd??C.DARK[400]}`,"--panel-tab-group-px":`${t?.component?.tabGroup?.size?.px??"calc(var(--panel-spacer) * 6)"}`,"--panel-tab-list-bg":`${t?.component?.tabList?.color?.colorBg??C.DARK.DEFAULT}`,"--panel-tab-list-px":`${t?.component?.tabList?.size?.px??"calc(var(--panel-spacer) * 3)"}`,"--panel-tab-list-py":`${t?.component?.tabList?.size?.py??"calc(var(--panel-spacer) * 2)"}`,"--panel-tab-list-radius":`${t?.component?.tabList?.style?.radius??"var(--panel-radius-secondary)"}`,"--panel-content-pt":`${t?.component?.tabContent?.size?.pt??"calc(var(--panel-spacer) * 2)"}`,"--panel-content-pb":`${t?.component?.tabContent?.size?.pb??"calc(var(--panel-spacer) * 9)"}`,"--panel-content-pb-md":`${t?.component?.tabContent?.size?.pbMd??"var(--panel-content-pb)"}`,"--panel-content-px":`${t?.component?.tabContent?.size?.px??"0px"}`,"--panel-content-gap":`${t?.component?.tabContent?.size?.gap??"calc(var(--panel-gap) * 2)"}`,"--panel-tab-px":`${t?.component?.tab?.size?.px??"calc(var(--panel-spacer) * 9)"}`,"--panel-tab-py":`${t?.component?.tab?.size?.py??"calc(var(--panel-spacer) * 2)"}`,"--panel-tab-bg":`${t?.component?.tab?.color?.colorBg??"var(--panel-neutral-color)"}`,"--panel-tab-content-color":`${t?.component?.tab?.color?.colorText??"var(--panel-neutral-content-color)"}`,"--panel-tab-select-content-color":`${t?.component?.tab?.color?.selectColorText??"var(--panel-content-color)"}`,"--panel-tab-hover-content-color":`${t?.component?.tab?.color?.colorTextHover??"var(--panel-content-hover-color)"}`,"--panel-tab-font-size":`${t?.component?.tab?.size?.fontSize??"var(--panel-font-size-sm)"}`,"--panel-tab-font-weight":`${t?.component?.tab?.style?.fontWeight??"var(--panel-font-weight-medium)"}`,"--panel-tab-line-height":`${t?.component?.tab?.style?.lineHeight??"var(--panel-line-height-sm)"}`,"--panel-balance-group-px":`${t?.component?.balance?.size?.px??"calc(var(--panel-spacer) * 6)"}`,"--panel-balance-group-gap":`${t?.component?.balance?.size?.gap??"var(--panel-gap)"}`,"--panel-balance-content-color":`${t?.component?.balance?.color?.colorText??"var(--panel-secondary-content-color)"}`,"--panel-balance-price-content-color":`${t?.component?.balance?.color?.priceColorText??"var(--panel-secondary-content-color)"}`,"--panel-balance-font-size":`${t?.component?.balance?.size?.fontSize??"var(--panel-font-size-xs)"}`,"--panel-balance-line-height":`${t?.component?.balance?.size?.lineHeight??"var(--panel-line-height-xs)"}`,"--panel-balance-price-font-size":`${t?.component?.balance?.size?.priceFontSize??"var(--panel-font-size)"}`,"--panel-balance-price-line-height":`${t?.component?.balance?.size?.priceLineHeight??"var(--panel-line-height)"}`,"--panel-inputs-group-gap":`${t?.component?.inputGroup?.size?.gap??"var(--panel-gap)"}`,"--panel-inputs-group-px":`${t?.component?.inputGroup?.size?.px??"calc(var(--panel-spacer) * 6)"}`,"--panel-inputs-group-px-arrow":`${t?.component?.inputGroup?.size?.pxArrow??"var(--panel-spacer)"}`,"--panel-inputs-group-py-arrow":`${t?.component?.inputGroup?.size?.pyArrow??"var(--panel-spacer)"}`,"--panel-inputs-group-arrow-size":`${t?.component?.inputGroup?.size?.arrowSize??"var(--panel-input-token-icon-size)"}`,"--panel-inputs-arrow-bg":`${t?.component?.inputGroup?.color?.colorBgArrow??"var(--panel-input-bg)"}`,"--panel-inputs-arrow-color":`${t?.component?.inputGroup?.color?.colorArrow??"var(--panel-input-content-color)"}`,"--panel-inputs-arrow-border-color":`${t?.component?.inputGroup?.color?.colorBorderArrow??"var(--panel-input-border-color)"}`,"--panel-inputs-arrow-radius":`${t?.component?.inputGroup?.style?.radiusArrow??"var(--panel-radius-secondary)"}`,"--panel-input-radius":`${t?.component?.input?.style?.radius??"var(--panel-radius)"}`,"--panel-input-group-gap":`${t?.component?.input?.size?.gap??"calc(var(--panel-gap) * 2)"}`,"--panel-input-px":`${t?.component?.input?.size?.px??"calc(var(--panel-spacer) * 3)"}`,"--panel-input-py":`${t?.component?.input?.size?.py??"calc(var(--panel-spacer) * 5)"}`,"--panel-input-price-gap":`${t?.component?.input?.size?.priceGap??"calc(var(--panel-gap) * 2)"}`,"--panel-input-token-icon-size":`${t?.component?.input?.size?.iconSize??"var(--panel-icon-size)"}`,"--panel-input-token-icon-size-sm":`${t?.component?.input?.size?.iconSizeSm??"var(--panel-icon-size-sm)"}`,"--panel-input-content-color":`${t?.component?.input?.color?.textColor??"var(--panel-content-color)"}`,"--panel-input-loading-content-color":`${t?.component?.input?.color?.loadingTextColor??"var(--panel-loading-content-color)"}`,"--panel-input-bg":`${t?.component?.input?.color?.bgColor??"var(--panel-neutral-color)"}`,"--panel-input-focus-bg":`${t?.component?.input?.color?.bgColorFocus??"transparent"}`,"--panel-input-border-color":`${t?.component?.input?.color?.borderColor??C.GRAY[700]}`,"--panel-input-focus-border-color":`${t?.component?.input?.color?.borderColorFocus??"var(--panel-content-color)"}`,"--panel-input-placeholder-color":`${t?.component?.input?.color?.placeholderColor??"var(--panel-secondary-content-color)"}`,"--panel-input-label-font-size":`${t?.component?.input?.size?.labelFontSize??"var(--panel-font-size-sm)"}`,"--panel-input-label-line-height":`${t?.component?.input?.size?.labelLineHeight??"var(--panel-line-height-sm)"}`,"--panel-input-label-font-weight":`${t?.component?.input?.style?.labelFontWeight??"var(--panel-font-weight-light)"}`,"--panel-input-font-size":`${t?.component?.input?.size?.fontSize??"var(--panel-font-size-sm)"}`,"--panel-input-line-height":`${t?.component?.input?.size?.lineHeight??"var(--panel-line-height-sm)"}`,"--panel-input-font-size-lg":`${t?.component?.input?.size?.fontSizeLg??"var(--panel-font-size-lg)"}`,"--panel-input-line-height-lg":`${t?.component?.input?.size?.lineHeightLg??"var(--panel-line-height-lg)"}`,"--panel-input-font-weight":`${t?.component?.input?.style?.fontWeight??"var(--panel-font-weight-light)"}`,"--panel-input-token-font-size":`${t?.component?.input?.size?.tokenFontSize??"var(--panel-font-size-xs)"}`,"--panel-input-token-line-height":`${t?.component?.input?.size?.tokenLineHeight??"var(--panel-line-height-xs)"}`,"--panel-input-token-font-size-sm":`${t?.component?.input?.size?.tokenFontSizeSm??"var(--panel-font-size)"}`,"--panel-input-token-line-height-sm":`${t?.component?.input?.size?.tokenLineHeightSm??"var(--panel-line-height)"}`,"--panel-input-token-font-weight":`${t?.component?.input?.style?.tokenFontWeight??"var(--panel-font-weight-medium)"}`,"--panel-input-button-radius":`${t?.component?.input?.style?.buttonRadius??"30px"}`,"--panel-input-button-px":`${t?.component?.input?.size?.buttonPx??"calc(var(--panel-spacer) * 2)"}`,"--panel-input-button-py":`${t?.component?.input?.size?.buttonPy??"var(--panel-spacer)"}`,"--panel-input-button-bg":`${t?.component?.input?.color?.buttonBgColor??"var(--panel-secondary-color)"}`,"--panel-input-button-border-color":`${t?.component?.input?.color?.buttonBorderColor??"var(--panel-accent-to-color)"}`,"--panel-input-button-content-color":`${t?.component?.input?.color?.buttonTextColor??"var(--panel-content-color)"}`,"--panel-input-button-font-size":`${t?.component?.input?.size?.buttonFontSize??"var(--panel-font-size-xs)"}`,"--panel-input-button-line-height":`${t?.component?.input?.size?.buttonLineHeight??"var(--panel-line-height-xs)"}`,"--panel-action-accent-button-border-width":`${t?.component?.actionButton?.size?.borderWidth??"1px"}`,"--panel-action-accent-button-bg-from":`${t?.component?.actionButton?.color?.colorBgFrom??"var(--panel-accent-from-color)"}`,"--panel-action-accent-button-bg-to":`${t?.component?.actionButton?.color?.colorBgTo??"var(--panel-accent-to-color)"}`,"--panel-action-accent-button-hover-bg-from":`${t?.component?.actionButton?.color?.colorBgFromHover??"var(--panel-accent-hover-from-color)"}`,"--panel-action-accent-button-hover-bg-to":`${t?.component?.actionButton?.color?.colorBgToHover??"var(--panel-accent-hover-to-color)"}`,"--panel-action-accent-button-border-color":`${t?.component?.actionButton?.color?.colorBorder??"var(--panel-accent-from-color)"}`,"--panel-action-accent-button-color":`${t?.component?.actionButton?.color?.colorText??"var(--panel-accent-content-color)"}`,"--panel-action-outline-button-border-color":`${t?.component?.actionButton?.color?.outlineColorBorder??`${C.WHITE.DEFAULT}33`}`,"--panel-action-outline-button-border-hover-color":`${t?.component?.actionButton?.color?.outlineColorBorderHover??`${C.WHITE.DEFAULT}CC`}`,"--panel-action-outline-button-color":`${t?.component?.actionButton?.color?.outlineColorText??"var(--panel-content-color)"}`,"--panel-meta-group-gap":`${t?.component?.meta?.size?.gap??"var(--panel-gap)"}`,"--panel-meta-group-px":`${t?.component?.meta?.size?.px??"calc(var(--panel-spacer) * 6)"}`,"--panel-meta-link-color":`${t?.component?.meta?.color?.linkTextColor??"var(--panel-accent-from-color)"}`,"--panel-meta-hover-bg":`${t?.component?.meta?.color?.panelBgHover??"var(--panel-neutral-color)"}`,"--panel-meta-action-panel-bg":`${t?.component?.meta?.color?.actionPanelBg??"var(--panel-background-color)"}`,"--panel-meta-font-size":`${t?.component?.meta?.size?.fontSize??"var(--panel-font-size-xs)"}`,"--panel-meta-line-height":`${t?.component?.meta?.size?.lineHeight??"var(--panel-line-height-xs)"}`,"--panel-meta-emphasised-font-size":`${t?.component?.meta?.size?.emphasisedFontSize??"var(--panel-font-size-sm)"}`,"--panel-meta-emphasised-line-height":`${t?.component?.meta?.size?.emphasisedLineHeight??"var(--panel-line-height-sm)"}`,"--panel-tooltip-bg":`${t?.component?.tooltip?.color?.colorBg??C.DARK[700]}`,"--panel-tooltip-color":`${t?.component?.tooltip?.color?.colorText??C.WHITE.DEFAULT}`,"--panel-alert-error-bg":`${t?.component?.alert?.color?.errorBg??`${C.ERROR}4D`}`,"--panel-alert-warning-bg":`${t?.component?.alert?.color?.warningBg??`${C.WARNING}4D`}`,"--panel-alert-info-bg":`${t?.component?.alert?.color?.infoBg??`${C.INFO}4D`}`,"--panel-alert-error-color":`${t?.component?.alert?.color?.errorTextColor??"var(--panel-error-content-color)"}`,"--panel-alert-warning-color":`${t?.component?.alert?.color?.warningTextColor??"var(--panel-warning-content-color)"}`,"--panel-alert-info-color":`${t?.component?.alert?.color?.infoTextColor??"var(--panel-content-color)"}`,"--panel-switch-bg-checked":`${t?.component?.switch?.color?.colorBgChecked??C.BLUE.DEFAULT}`,"--panel-switch-bg":`${t?.component?.switch?.color?.colorBg??C.GRAY[700]}`,"--panel-switch-thumb-bg-checked":`${t?.component?.switch?.color?.colorThumbBgChecked??C.WHITE.DEFAULT}`,"--panel-switch-thumb-bg":`${t?.component?.switch?.color?.colorThumbBg??C.WHITE.DEFAULT}`,"--panel-switch-color-checked":t?.component?.switch?.color?.colorChecked,"--panel-switch-color":t?.component?.switch?.color?.color,"--panel-checkbox-bg-checked":`${t?.component?.checkbox?.color?.colorBgChecked??C.GRAY[700]}`,"--panel-checkbox-bg":`${t?.component?.checkbox?.color?.colorBg??"transparent"}`,"--panel-checkbox-border-color-checked":`${t?.component?.checkbox?.color?.colorBorder??"transparent"}`,"--panel-checkbox-border-color":`${t?.component?.checkbox?.color?.colorBorderChecked??C.GRAY.DEFAULT}`,"--panel-checkbox-color":`${t?.component?.checkbox?.color?.color??C.GRAY[300]}`,"--panel-checkbox-size":`${t?.component?.checkbox?.size?.size??"20px"}`,"--panel-checkbox-icon-size":`${t?.component?.checkbox?.size?.iconSize??"16px"}`,"--panel-checkbox-radius":`${t?.component?.checkbox?.style?.radius??"4px"}`},children:e}),dE=({children:e,config:t,theme:n,components:r,translation:s,className:a})=>o.jsx(el,{config:s,children:o.jsx(cE,{config:n,className:a,children:o.jsx(zo,{config:t,children:o.jsx(Of,{config:r,children:o.jsx(nT,{children:e})})})})}),uE=e=>o.jsx(dE,{...e,children:o.jsx(lE,{})}),Wi=({title:e,children:t,className:n,titleClassName:r})=>o.jsxs("div",{className:N("dtw-relative dtw-flex dtw-flex-col dtw-gap-4 dtw-rounded-xl dtw-p-3 dtw-w-full dtw-bg-[var(--limit-order-background-color)]",n),children:[e&&o.jsx("h1",{className:N("dtw-mb-6 !dtw-text-[length:var(--limit-order-font-size-lg)] dtw-drop-shadow-md dtw-text-[color:var(--limit-order-secondary-content-color)]",r),children:e}),o.jsx("div",{className:"dtw-w-full",children:t})]}),Gi=({isOpen:e,onClose:t,children:n,className:r,ThemeProvider:s=m.Fragment})=>{const a=m.useRef(null);return o.jsx(F.Dialog,{open:e,initialFocus:a,as:"div",className:N("dtw-relative dtw-z-20 dtw-overflow-y-auto theme-scrollbar",r),onClose:t,children:o.jsx(s,{children:o.jsxs(o.Fragment,{children:[o.jsx(F.DialogBackdrop,{className:"dtw-fixed dtw-inset-0 dtw-backdrop-blur-md dtw-backdrop-brightness-75 dtw-backdrop-filter"}),o.jsx("div",{className:"dtw-fixed dtw-inset-0 dtw-flex dtw-w-screen dtw-items-center dtw-justify-center dtw-p-4",ref:a,children:o.jsx(F.DialogPanel,{transition:!0,className:"dtw-inline-block dtw-transform dtw-duration-100 dtw-ease-out dtw-overflow-hidden dtw-rounded-2xl dtw-text-left dtw-align-middle dtw-shadow-xl data-[closed]:dtw-opacity-0 data-[closed]:dtw-scale-75",children:n})})]})})})},pE=()=>{const e=ze(),{isModalOpen:t,pendingTransaction:n}=he(),{setIsModalOpen:r}=ht(),s=m.useCallback(()=>{r(!0),e?.(u.TRADING_PANEL_LOG_EVENT.OPEN_LIMIT_SELL_VIEW,{[u.TRADING_LOG_EVENT_PARAM.SOURCE.NAME]:"modal"})},[e,r]),a=m.useCallback(()=>r(!1),[r]);return{isModalOpen:t,onOpen:s,onClose:a,isTransactionPending:!!n}},mE=({children:e,themeConfig:t})=>{const{onOpen:n,isModalOpen:r,onClose:s,isTransactionPending:a}=pE(),i=Ie();Si();const l=m.useCallback(({children:c})=>o.jsx(In,{config:t,children:c}),[t]);return o.jsxs(o.Fragment,{children:[e({onClick:n,isTransactionPending:a}),o.jsx(Gi,{isOpen:r,onClose:s,ThemeProvider:l,className:"limit-order",children:o.jsx(Wi,{title:i.limitOrdersTitle,className:"dtw-text-[color:var(--limit-order-content-color)] dtw-text-[length:var(--limit-order-font-size)] dtw-w-full md:!dtw-w-[430px]",children:o.jsx(Ai,{onClose:s})})})]})},wE=({children:e,vaultChainId:t,vaultAddress:n,pricingAsset:r,translation:s,minAmountInUsd:a=yr,actions:i,themeConfig:l,isModalOpen:c})=>{const{isFetched:d,upperLimitPrice:p,lowerLimitPrice:g}=xi({vaultAddress:n,vaultChainId:t}),h=m.useMemo(()=>({vaultAddress:n,vaultChainId:t,pricingAsset:r,minAmountInUsd:a,isModalOpen:c,form:{upperLimitPrice:p,lowerLimitPrice:g}}),[n,t,r,a,c,p,g]);return d?o.jsx(di,{config:s,children:o.jsx(gi,{initialState:h,actions:i,children:o.jsx(mE,{themeConfig:l,children:e})})}):null},hE=({children:e,themeConfig:t,isOpen:n,onOpen:r,onClose:s})=>{const a=Ke(),i=m.useCallback(({children:l})=>o.jsx(In,{config:t,children:l}),[t]);return o.jsxs(o.Fragment,{children:[e({onClick:r}),o.jsx(Gi,{isOpen:n,onClose:s,ThemeProvider:i,className:"limit-order",children:o.jsx(Wi,{title:a.limitBuyTitle,className:"dtw-text-[color:var(--limit-order-content-color)] dtw-text-[length:var(--limit-order-font-size)] dtw-w-full md:!dtw-w-[430px]",children:o.jsx(Ri,{onClose:s})})})]})},gE=({children:e,vaultChainId:t,vaultAddress:n,limitBuyManagerAddress:r,pricingAsset:s,translation:a,actions:i,themeConfig:l})=>{const[c,d]=m.useState(!1),p=wt({excludeNativeToken:!0}),g=m.useCallback(()=>d(!0),[]),h=m.useCallback(()=>d(!1),[]),f=m.useMemo(()=>({vaultAddress:n,vaultChainId:t,limitBuyManagerAddress:r,pricingAsset:s,depositTokens:p}),[n,t,r,s,p]),v=m.useMemo(()=>({...i,onOrderCreated:()=>{h(),i.onOrderCreated?.()}}),[i,h]);return o.jsx(Li,{config:a,children:o.jsx(Ni,{initialState:f,actions:v,children:o.jsx(hE,{isOpen:c,onOpen:g,onClose:h,themeConfig:l,children:e})})})};exports.clientSide=w.clientSide;exports.commify=w.commify;exports.formatByCurrency=w.formatByCurrency;exports.formatNumberToLimitedDecimals=w.formatNumberToLimitedDecimals;exports.formatNumeratorToPercentage=w.formatNumeratorToPercentage;exports.formatPercentage=w.formatPercentage;exports.formatToUsd=w.formatToUsd;exports.getContractAbiById=w.getContractAbiById;exports.getContractAddressById=w.getContractAddressById;exports.getConventionalTokenPriceDecimals=w.getConventionalTokenPriceDecimals;exports.getNativeTokenInvestableBalance=w.getNativeTokenInvestableBalance;exports.getPercent=w.getPercent;exports.getPoolFraction=w.getPoolFraction;exports.isAaveLendAndBorrowAsset=w.isAaveLendAndBorrowAsset;exports.isEqualAddress=w.isEqualAddress;exports.isFmpAirdropVaultAddress=w.isFmpAirdropVaultAddress;exports.isNativeToken=w.isNativeToken;exports.isZeroAddress=w.isZeroAddress;exports.normalizeNumber=w.normalizeNumber;exports.removeInsignificantTrailingZeros=w.removeInsignificantTrailingZeros;exports.shiftBy=w.shiftBy;exports.shortenAddress=w.shortenAddress;exports.transformAddressForAnalytics=w.transformAddressForAnalytics;exports.validateLoggerEventParams=w.validateLoggerEventParams;exports.ALCHEMY_RPC_URL_MAP=u.ALCHEMY_RPC_URL_MAP;exports.AaveLendingPoolAbi=u.AaveLendingPoolAbi;exports.AddressZero=u.AddressZero;exports.BRIDGED_TOKENS_SYMBOLS=u.BRIDGED_TOKENS_SYMBOLS;exports.BRIDGED_USDC_ARBITRUM=u.BRIDGED_USDC_ARBITRUM;exports.BRIDGED_USDC_OPTIMISM=u.BRIDGED_USDC_OPTIMISM;exports.BRIDGED_USDC_POLYGON=u.BRIDGED_USDC_POLYGON;exports.CBBTC_BASE=u.CBBTC_BASE;exports.CBETH_BASE=u.CBETH_BASE;exports.CHAIN_MAP=u.CHAIN_MAP;exports.CHAIN_NATIVE_TOKENS=u.CHAIN_NATIVE_TOKENS;exports.COMPLETE_WITHDRAW_ACTIONS=u.COMPLETE_WITHDRAW_ACTIONS;exports.CURRENCY_SYMBOL_MAP=u.CURRENCY_SYMBOL_MAP;exports.DAI_OPTIMISM=u.DAI_OPTIMISM;exports.DAI_POLYGON=u.DAI_POLYGON;exports.DEFAULT_DEPOSIT_METHOD=u.DEFAULT_DEPOSIT_METHOD;exports.DEFAULT_DEPOSIT_SLIPPAGE=u.DEFAULT_DEPOSIT_SLIPPAGE;exports.DEFAULT_DEPOSIT_SLIPPAGE_SCALE=u.DEFAULT_DEPOSIT_SLIPPAGE_SCALE;exports.DEFAULT_ERROR_MESSAGE=u.DEFAULT_ERROR_MESSAGE;exports.DEFAULT_LOCK_TIME=u.DEFAULT_LOCK_TIME;exports.DEFAULT_MAX_GAS_LIMIT=u.DEFAULT_MAX_GAS_LIMIT;exports.DEFAULT_MULTI_ASSET_WITHDRAW_METHOD=u.DEFAULT_MULTI_ASSET_WITHDRAW_METHOD;exports.DEFAULT_POLLING_INTERVAL=u.DEFAULT_POLLING_INTERVAL;exports.DEFAULT_PRECISION=u.DEFAULT_PRECISION;exports.DEFAULT_PROMISE_TIMEOUT_MS=u.DEFAULT_PROMISE_TIMEOUT_MS;exports.DEFAULT_SIMULATION_ERROR=u.DEFAULT_SIMULATION_ERROR;exports.DEFAULT_WITHDRAW_SLIPPAGE=u.DEFAULT_WITHDRAW_SLIPPAGE;exports.EMPTY_POOL_CONFIG=u.EMPTY_POOL_CONFIG;exports.EXTENDED_POLLING_INTERVAL=u.EXTENDED_POLLING_INTERVAL;exports.EasySwapperV2Abi=u.EasySwapperV2Abi;exports.GAS_ESTIMATION_ERROR=u.GAS_ESTIMATION_ERROR;exports.GAS_LIMIT_BUFFER_COEFF=u.GAS_LIMIT_BUFFER_COEFF;exports.GMX_MARKET_ASSETS=u.GMX_MARKET_ASSETS;exports.GMX_MARKET_ASSETS_MAP=u.GMX_MARKET_ASSETS_MAP;exports.LINK_ARBITRUM=u.LINK_ARBITRUM;exports.LINK_OPTIMISM=u.LINK_OPTIMISM;exports.LimitOrderAbi=u.LimitOrderAbi;exports.MANAGER_FEE_DENOMINATOR=u.MANAGER_FEE_DENOMINATOR;exports.MAX_GAS_LIMIT_MAP=u.MAX_GAS_LIMIT_MAP;exports.MULTI_ASSET_TOKEN=u.MULTI_ASSET_TOKEN;exports.MaxUint256=u.MaxUint256;exports.NATIVE_TOKEN_GAS_RESERVE_UNITS=u.NATIVE_TOKEN_GAS_RESERVE_UNITS;exports.PAXG_POLYGON=u.PAXG_POLYGON;exports.PYTH_API_LINK=u.PYTH_API_LINK;exports.PoolFactoryAbi=u.PoolFactoryAbi;exports.PoolLogicAbi=u.PoolLogicAbi;exports.PoolManagerLogicAbi=u.PoolManagerLogicAbi;exports.RETH_BASE=u.RETH_BASE;exports.RewardDistributionAbi=u.RewardDistributionAbi;exports.SETH_OPTIMISM=u.SETH_OPTIMISM;exports.SHORTEN_POLLING_INTERVAL=u.SHORTEN_POLLING_INTERVAL;exports.SIMULATION_TIMEOUT_ERROR=u.SIMULATION_TIMEOUT_ERROR;exports.SUSD_OPTIMISM=u.SUSD_OPTIMISM;exports.TBTC_ARBITRUM=u.TBTC_ARBITRUM;exports.TBTC_BASE=u.TBTC_BASE;exports.TBTC_OPTIMISM=u.TBTC_OPTIMISM;exports.TBTC_POLYGON=u.TBTC_POLYGON;exports.TRADING_LOG_EVENT_PARAM=u.TRADING_LOG_EVENT_PARAM;exports.TRADING_PANEL_LOG_EVENT=u.TRADING_PANEL_LOG_EVENT;exports.USDCBC_BASE=u.USDCBC_BASE;exports.USDC_ARBITRUM=u.USDC_ARBITRUM;exports.USDC_BASE=u.USDC_BASE;exports.USDC_HYPEREVM=u.USDC_HYPEREVM;exports.USDC_MAINNET=u.USDC_MAINNET;exports.USDC_OPTIMISM=u.USDC_OPTIMISM;exports.USDC_POLYGON=u.USDC_POLYGON;exports.USDT_ARBITRUM=u.USDT_ARBITRUM;exports.USDT_MAINNET=u.USDT_MAINNET;exports.USDT_OPTIMISM=u.USDT_OPTIMISM;exports.USDT_POLYGON=u.USDT_POLYGON;exports.WBNB_ARBITRUM=u.WBNB_ARBITRUM;exports.WBTC_ARBITRUM=u.WBTC_ARBITRUM;exports.WBTC_BY_CHAIN_ID=u.WBTC_BY_CHAIN_ID;exports.WBTC_MAINNET=u.WBTC_MAINNET;exports.WBTC_OPTIMISM=u.WBTC_OPTIMISM;exports.WBTC_POLYGON=u.WBTC_POLYGON;exports.WETH_ARBITRUM=u.WETH_ARBITRUM;exports.WETH_BASE=u.WETH_BASE;exports.WETH_BY_CHAIN_ID=u.WETH_BY_CHAIN_ID;exports.WETH_MAINNET=u.WETH_MAINNET;exports.WETH_OPTIMISM=u.WETH_OPTIMISM;exports.WETH_POLYGON=u.WETH_POLYGON;exports.WPOL_POLYGON=u.WPOL_POLYGON;exports.WSOL_ARBITRUM=u.WSOL_ARBITRUM;exports.WSTETH_ARBITRUM=u.WSTETH_ARBITRUM;exports.WSTETH_BASE=u.WSTETH_BASE;exports.WSTETH_OPTIMISM=u.WSTETH_OPTIMISM;exports.XAUT_MAINNET=u.XAUT_MAINNET;exports.contractsAbisMap=u.contractsAbisMap;exports.contractsAddressesMap=u.contractsAddressesMap;Object.defineProperty(exports,"useBlockNumber",{enumerable:!0,get:()=>_.useBlockNumber});Object.defineProperty(exports,"useConnect",{enumerable:!0,get:()=>_.useConnect});Object.defineProperty(exports,"useDisconnect",{enumerable:!0,get:()=>_.useDisconnect});Object.defineProperty(exports,"usePublicClient",{enumerable:!0,get:()=>_.usePublicClient});Object.defineProperty(exports,"useReadContract",{enumerable:!0,get:()=>_.useReadContract});Object.defineProperty(exports,"useReadContracts",{enumerable:!0,get:()=>_.useReadContracts});Object.defineProperty(exports,"useSendTransaction",{enumerable:!0,get:()=>_.useSendTransaction});Object.defineProperty(exports,"useWaitForTransactionReceipt",{enumerable:!0,get:()=>_.useWaitForTransactionReceipt});Object.defineProperty(exports,"useWalletClient",{enumerable:!0,get:()=>_.useWalletClient});Object.defineProperty(exports,"useWriteContract",{enumerable:!0,get:()=>_.useWriteContract});Object.defineProperty(exports,"decodeErrorResult",{enumerable:!0,get:()=>k.decodeErrorResult});Object.defineProperty(exports,"encodeFunctionData",{enumerable:!0,get:()=>k.encodeFunctionData});Object.defineProperty(exports,"erc20Abi",{enumerable:!0,get:()=>k.erc20Abi});Object.defineProperty(exports,"formatEther",{enumerable:!0,get:()=>k.formatEther});Object.defineProperty(exports,"formatUnits",{enumerable:!0,get:()=>k.formatUnits});Object.defineProperty(exports,"hexToString",{enumerable:!0,get:()=>k.hexToString});Object.defineProperty(exports,"trim",{enumerable:!0,get:()=>k.trim});Object.defineProperty(exports,"arbitrum",{enumerable:!0,get:()=>Z.arbitrum});Object.defineProperty(exports,"base",{enumerable:!0,get:()=>Z.base});Object.defineProperty(exports,"optimism",{enumerable:!0,get:()=>Z.optimism});Object.defineProperty(exports,"polygon",{enumerable:!0,get:()=>Z.polygon});exports.ConfigProvider=zo;exports.EIP712_TYPES=fa;exports.EstimationError=We;exports.GET_ALL_LIMIT_SELL_ORDER_IDS_FUNCTION_NAME=xr;exports.LIMIT_BUY_MANAGER_ADDRESS_MAP=kr;exports.LIMIT_BUY_SLIPPAGE_PERCENT_DECIMALS=Dr;exports.LIMIT_SELL_ORDER_READ_FUNCTION_NAME=gn;exports.LimitBuyOrderModal=gE;exports.LimitBuyOverlay=ji;exports.LimitSellOrderModal=wE;exports.OndoApiError=Et;exports.PERMIT2_ADDRESS=An;exports.TradingPanelProvider=vl;exports.TradingWidget=uE;exports.getErrorMessage=$o;exports.getLimitSellOrderId=fi;exports.isErrorWithMessage=Mo;exports.throwOndoApiError=rn;exports.toErrorWithMessage=Bo;exports.useAccount=j;exports.useAddPoolConfig=Il;exports.useAssetPrice=le;exports.useAvailableManagerFee=ia;exports.useBalance=ur;exports.useBrowserStorage=Xn;exports.useCheckWhitelist=Jo;exports.useCompleteWithdrawSwapQuotes=Me;exports.useCompleteWithdrawTrackedAssets=ie;exports.useContractFunction=de;exports.useContractPoolComposition=ea;exports.useContractReadErrorLogging=Ar;exports.useContractReadsErrorLogging=wn;exports.useCustomDepositTokensPerChain=uo;exports.useDebounce=jr;exports.useDepositLockTime=Fa;exports.useDepositProjectedEarnings=Ia;exports.useDytmVaultData=pt;exports.useEasySwapperTrackedAssets=Na;exports.useEffectiveAggregators=Ct;exports.useExchangeRate=xa;exports.useFlatmoneyPointsUserBalances=Hv;exports.useGasPrice=Uo;exports.useGetReferrerAddress=lo;exports.useHasSingleAssetWithdrawBlockers=Or;exports.useInvalidateLimitSellOrderQuery=yi;exports.useInvalidateOnBlock=Xt;exports.useInvalidatePoolContractData=na;exports.useInvalidateTradingQueries=ut;exports.useIsCompleteWithdrawStep=Ye;exports.useIsDepositBlocked=Mv;exports.useIsDepositTradingPanelType=Le;exports.useIsDhedgeVaultConnected=Pt;exports.useIsInsufficientBalance=Nt;exports.useIsPoolAddress=Tl;exports.useIsTradingEnabled=Aa;exports.useIsWalletConnected=Ol;exports.useLegacyReferralProgram=nb;exports.useManagerLogicAddress=Nr;exports.useNetwork=De;exports.useOnSimulateTransaction=io;exports.useOnTokenSelector=ao;exports.useOnTradingTypeChange=Fr;exports.useOnTransactionError=so;exports.useOnTransactionEstimationError=sn;exports.useOnTransactionSuccess=oo;exports.usePoolComposition=Re;exports.usePoolCompositionWithFraction=ta;exports.usePoolDynamic=ce;exports.usePoolFees=bn;exports.usePoolManagerDynamic=Dt;exports.usePoolManagerLogicData=Pr;exports.usePoolManagerStatic=Lt;exports.usePoolStatic=Ot;exports.usePoolTokenPrice=ue;exports.useProjectedEarningsCore=_a;exports.useRawAssetPrice=Rr;exports.useReceiveTokenInput=B;exports.useReferralAddress=ka;exports.useSendTokenInput=R;exports.useSetPoolAddress=bl;exports.useSetTradingType=Sl;exports.useStaticCallQuery=wf;exports.useTokenAllowance=nt;exports.useTradingPanelActions=W;exports.useTradingPanelLogger=ze;exports.useTradingPanelModal=Q;exports.useTradingPanelPoolAddress=no;exports.useTradingPanelPoolConfig=y;exports.useTradingPanelPoolConfigs=tt;exports.useTradingPanelPoolFallbackData=Ge;exports.useTradingPanelSettings=X;exports.useTradingPanelState=te;exports.useTradingPanelTransactions=ne;exports.useTradingPanelType=ve;exports.useTradingResultHandling=ba;exports.useTradingSettleHandler=Ce;exports.useUpdateCustomDepositTokensPerChain=Nl;exports.useUpdatePoolConfig=_l;exports.useUpdatePoolFallbackData=ro;exports.useUpdateReceiveTokenInput=xl;exports.useUpdateSendTokenInput=Al;exports.useUpdateTradingModal=El;exports.useUpdateTradingSettings=yl;exports.useUserBalancesDynamic=Xo;exports.useUserLimitSellOrder=gt;exports.useUserTokenBalance=Ae;exports.useUserTokenSpendableBalance=Tn;exports.useUserVaultBalance=aa;exports.useUserVaultsBalances=oa;exports.useVaultContractData=Bv;exports.useVaultDepositTokens=wt;exports.useVaultSupplyCap=la;exports.useVaultVestedPoints=ra;exports.useWithdrawAction=_t;
|