@dhedge/trading-widget 5.3.0 → 5.3.1
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
package/index.cjs
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
"use strict";var Vl=Object.defineProperty;var ql=(e,t,n)=>t in e?Vl(e,t,{enumerable:!0,configurable:!0,writable:!0,value:n}):e[t]=n;var Le=(e,t,n)=>ql(e,typeof t!="symbol"?t+"":t,n);Object.defineProperty(exports,Symbol.toStringTag,{value:"Module"});const r=require("react/jsx-runtime"),R=require("@headlessui/react"),E=require("wagmi"),u=require("react"),h=require("wagmi/chains"),Et=require("date-fns"),D=require("viem"),T=require("bignumber.js"),Yl=require("ts-custom-error"),tt=require("@tanstack/react-query"),se=require("@heroicons/react/24/outline"),C=require("classnames"),Kl=require("react-popper-tooltip"),Ql=require("wagmi/connectors"),Se=require("@heroicons/react/24/solid"),Zn=require("@heroicons/react/16/solid"),an=require("@heroicons/react/20/solid"),B=()=>{const{address:e,status:t,connector:n,isConnected:a}=E.useAccount();return{account:a?e:void 0,status:t,connector:n,providerName:n?.name,isConnected:a}},_="0x0000000000000000000000000000000000000000",Ue=BigInt("0xffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff"),O=18,Xl="1000000000000000000",Zl=59e3,nt=3e4,ze=15e3,ya=5e3,cr=400,dr=cr*1.2,pr=Et.formatDuration({hours:24}),ur={address:_,symbol:"",chainId:h.optimism.id,depositParams:{customTokens:[]},withdrawParams:{customTokens:[]},deprecated:!1},Jl="deposit",mr=1,yn=0,ec=.5,yr=.02,tc=.75,nc=[yn],wr="withdrawSafe",hr="initWithdrawal",ac="unrollAndClaim",sc="completeWithdrawal",gr=3e7,fr=1.25,ye=1e4,Tr=13e3,br=3,wa=2e4,rc=15e3,oc={[h.mainnet.id]:h.mainnet,[h.polygon.id]:h.polygon,[h.optimism.id]:h.optimism,[h.arbitrum.id]:h.arbitrum,[h.base.id]:h.base},Ze={[h.mainnet.id]:{nativeTokenSymbol:"ETH",wrappedNativeTokenName:"WETH",address:"0xc02aaa39b223fe8d0a0e5c4f27ead9083c756cc2",decimals:O},[h.polygon.id]:{nativeTokenSymbol:"POL",wrappedNativeTokenName:"WPOL",address:"0x0d500b1d8e8ef31e21c99d1db9a6444d3adf1270",decimals:O},[h.optimism.id]:{nativeTokenSymbol:"ETH",wrappedNativeTokenName:"WETH",address:"0x4200000000000000000000000000000000000006",decimals:O},[h.arbitrum.id]:{nativeTokenSymbol:"ETH",wrappedNativeTokenName:"WETH",address:"0x82af49447d8a07e3bd95bd0d56f35241523fbab1",decimals:O},[h.base.id]:{nativeTokenSymbol:"ETH",wrappedNativeTokenName:"WETH",address:"0x4200000000000000000000000000000000000006",decimals:O}},Xt={[h.mainnet.id]:299e5,[h.polygon.id]:299e5,[h.optimism.id]:299e5,[h.arbitrum.id]:299e5,[h.base.id]:299e5},ic={[h.mainnet.id]:"https://eth-mainnet.g.alchemy.com/v2",[h.optimism.id]:"https://opt-mainnet.g.alchemy.com/v2",[h.polygon.id]:"https://polygon-mainnet.g.alchemy.com/v2",[h.arbitrum.id]:"https://arb-mainnet.g.alchemy.com/v2",[h.base.id]:"https://base-mainnet.g.alchemy.com/v2"},vr={USD:"$",ETH:"Ξ",BTC:"₿"},lc={USD:2,ETH:4,BTC:6},cc=["USDC","USDT"],X={INVEST_INPUT_FOCUS:"invest_input_focus",APPROVED_TOKEN:"approved_token",DEPOSIT:"deposit",MULTI_ASSET_WITHDRAW:"multi_asset_withdraw",SINGLE_ASSET_WITHDRAW:"single_asset_unroll",SINGLE_ASSET_WITHDRAW_AND_CLAIM:"single_asset_unroll_and_claim",CLAIM:"claim_unrolled_assets",SWAP:"swap_unrolled_assets",WITHDRAWAL:"withdrawal",TRADING_SETTINGS_OPENED:"trading_settings_opened",INFINITE_ALLOWANCE_CHANGE:"infinite_allowance_change",BATCH_TRANSACTIONS_CHANGE:"batch_transactions_change",CREATE_LIMIT_SELL_ORDER:"limit_order_create",OPEN_LIMIT_SELL_VIEW:"open_limit_sell_view",LIMIT_ORDER_WITHDRAW:"limit_order_withdraw",LIMIT_ORDER_WITHDRAW_DELETE:"limit_order_withdraw_delete"},dc={approve:[X.APPROVED_TOKEN],deposit:[X.DEPOSIT],multi_withdraw:[X.WITHDRAWAL,X.MULTI_ASSET_WITHDRAW],single_withdraw:[X.WITHDRAWAL,X.SINGLE_ASSET_WITHDRAW],single_withdraw_and_claim:[X.WITHDRAWAL,X.SINGLE_ASSET_WITHDRAW_AND_CLAIM],claim:[X.CLAIM],swap:[X.SWAP],create_limit_sell_order:[X.CREATE_LIMIT_SELL_ORDER],limit_order_withdraw:[X.LIMIT_ORDER_WITHDRAW],delete_limit_order_withdraw:[X.LIMIT_ORDER_WITHDRAW_DELETE]},Te={IS_INFINITE:{NAME:"is_infinite",TYPE:"number"},SYMBOL:{NAME:"symbol",TYPE:"string"},CHAIN_ID:{NAME:"chain_id",TYPE:"number"},ADDRESS:{NAME:"address",TYPE:"string"},IS_BATCH_TRANSACTIONS_ENABLED:{NAME:"is_batch_enabled",TYPE:"number"},SOURCE:{NAME:"source",TYPE:"string"}};var pe=(e=>(e.ETH="ETH",e.MAINNET="MAINNET",e.POLYGON="POLYGON",e.OE="OPTIMISM",e.ARBI="ARBITRUM",e.BASE="BASE",e))(pe||{});const gt=process.env.NEXT_PUBLIC_INFURA_API_KEY;h.arbitrum.id+"",`${gt}`,h.optimism.id+"",`${gt}`,h.polygon.id+"",`${gt}`,h.base.id+"",`${gt}`,h.mainnet.id+"",`${gt}`;const pc={[h.arbitrum.id]:{...h.arbitrum,name:"Arbitrum",iconPath:"/icons/arbitrum-network.svg",chainId:h.arbitrum.id,shortName:"ARB",blockchainCode:pe.ARBI},[h.optimism.id]:{...h.optimism,name:"Optimism",iconPath:"/icons/optimism-network.svg",chainId:h.optimism.id,shortName:"OP",blockchainCode:pe.OE},[h.polygon.id]:{...h.polygon,chainId:h.polygon.id,iconPath:"/icons/polygon-network.svg",shortName:"POLY",blockchainCode:pe.POLYGON},[h.base.id]:{...h.base,chainId:h.base.id,iconPath:"/icons/base-network.svg",shortName:"BASE",blockchainCode:pe.BASE},[h.mainnet.id]:{...h.mainnet,chainId:h.mainnet.id,iconPath:"/icons/ethereum-network.svg",shortName:"ETHEREUM",blockchainCode:pe.ETH}};pe.ETH+"",h.mainnet.id,pe.MAINNET+"",h.mainnet.id,pe.POLYGON+"",h.polygon.id,pe.OE+"",h.optimism.id,pe.ARBI+"",h.arbitrum.id,pe.BASE+"",h.base.id;h.mainnet.id+"",h.optimism.id+"",h.polygon.id+"",h.arbitrum.id+"",h.base.id+"";const ha="0x0000000000000000000000000000000000000000";BigInt("0xffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff");h.mainnet.id+"",BigInt(100),h.optimism.id+"",BigInt(600),h.polygon.id+"",BigInt(600),h.base.id+"",BigInt(600),h.arbitrum.id+"",BigInt(5300);const uc="0x96D33bCF84DdE326014248E2896F79bbb9c13D6d",xr="0xbDd84294bC8299861A2121F749A25EFEb7168a32",mc="0x87870Bca3F3fD6335C3F4ce8392D69350B4fA4E2",yc="0xffFb5fB14606EB3a548C113026355020dDF27535",wc="0x794a61358D6845594F94dc1DB02A252b5b4814aD",Ar="0xA5679C4272A056Bb83f039961fae7D99C48529F5",Sr="0x26a687e8244f1866E9Aa2D400c8b9957Aa8e6Ad4",hc="0x49Afe3abCf66CF09Fab86cb1139D8811C8afe56F",Cr="0xf067575Eb60c7587C11e867907AA7284833704d1",gc="0x59525b9b23adc475ef91d98dae06b568ba574ce5",fc="0xa907504d7a4c415b4e6e1d0866d96afe8202f0e5",Tc="0x1849324228d852a67eb7443e42d967e480ffe95d",bc="0xa238dd80c259a72e81d7e4664a9801593f98d1c5",Er="0xFcBEc28c43E356693971a24bf3F2Fd7D965E2ebA",vc="0x07e144e336fcc3fe928a8a2a5714da64354c1aab",xc="0x5e61a079A178f0E5784107a4963baAe0c5a680c6",Ac="0x794a61358D6845594F94dc1DB02A252b5b4814aD",Ir="0x2Ed1bd7f66e47113672f3870308b5E867C5bb743",_r="0x3bFE2a472d2964Ea4070725b7Fb0A868b3f08b63",Sc="0xfdc7b8bFe0DD3513Cc669bB8d601Cb83e2F69cB0",Cc="0x8dFf5E27EA6b7AC08EbFdf9eB090F32ee9a30fcf",Ec="0x794a61358D6845594F94dc1DB02A252b5b4814aD",Dr="0x45b90480D6F643dE2f128db091A357C3c90399f2",Nr="0xB71410736d2C8F2DAf30dA9D332dA10534d2624d",Or="0x4F754e0F0924afD74980886b0B479Fa1D7C58D0D";h.mainnet.id+"",h.arbitrum.id+"",h.base.id+"",h.optimism.id+"",h.polygon.id+"";h.mainnet.id+"",h.arbitrum.id+"",h.base.id+"",h.optimism.id+"",h.polygon.id+"";const Jn=[{anonymous:!1,inputs:[{indexed:!0,internalType:"address",name:"reserve",type:"address"},{indexed:!1,internalType:"address",name:"user",type:"address"},{indexed:!0,internalType:"address",name:"onBehalfOf",type:"address"},{indexed:!1,internalType:"uint256",name:"amount",type:"uint256"},{indexed:!1,internalType:"uint256",name:"borrowRateMode",type:"uint256"},{indexed:!1,internalType:"uint256",name:"borrowRate",type:"uint256"},{indexed:!0,internalType:"uint16",name:"referral",type:"uint16"}],name:"Borrow",type:"event"},{anonymous:!1,inputs:[{indexed:!0,internalType:"address",name:"reserve",type:"address"},{indexed:!1,internalType:"address",name:"user",type:"address"},{indexed:!0,internalType:"address",name:"onBehalfOf",type:"address"},{indexed:!1,internalType:"uint256",name:"amount",type:"uint256"},{indexed:!0,internalType:"uint16",name:"referral",type:"uint16"}],name:"Deposit",type:"event"},{anonymous:!1,inputs:[{indexed:!0,internalType:"address",name:"target",type:"address"},{indexed:!0,internalType:"address",name:"initiator",type:"address"},{indexed:!0,internalType:"address",name:"asset",type:"address"},{indexed:!1,internalType:"uint256",name:"amount",type:"uint256"},{indexed:!1,internalType:"uint256",name:"premium",type:"uint256"},{indexed:!1,internalType:"uint16",name:"referralCode",type:"uint16"}],name:"FlashLoan",type:"event"},{anonymous:!1,inputs:[{indexed:!0,internalType:"address",name:"collateralAsset",type:"address"},{indexed:!0,internalType:"address",name:"debtAsset",type:"address"},{indexed:!0,internalType:"address",name:"user",type:"address"},{indexed:!1,internalType:"uint256",name:"debtToCover",type:"uint256"},{indexed:!1,internalType:"uint256",name:"liquidatedCollateralAmount",type:"uint256"},{indexed:!1,internalType:"address",name:"liquidator",type:"address"},{indexed:!1,internalType:"bool",name:"receiveAToken",type:"bool"}],name:"LiquidationCall",type:"event"},{anonymous:!1,inputs:[],name:"Paused",type:"event"},{anonymous:!1,inputs:[{indexed:!0,internalType:"address",name:"reserve",type:"address"},{indexed:!0,internalType:"address",name:"user",type:"address"}],name:"RebalanceStableBorrowRate",type:"event"},{anonymous:!1,inputs:[{indexed:!0,internalType:"address",name:"reserve",type:"address"},{indexed:!0,internalType:"address",name:"user",type:"address"},{indexed:!0,internalType:"address",name:"repayer",type:"address"},{indexed:!1,internalType:"uint256",name:"amount",type:"uint256"}],name:"Repay",type:"event"},{anonymous:!1,inputs:[{indexed:!0,internalType:"address",name:"reserve",type:"address"},{indexed:!1,internalType:"uint256",name:"liquidityRate",type:"uint256"},{indexed:!1,internalType:"uint256",name:"stableBorrowRate",type:"uint256"},{indexed:!1,internalType:"uint256",name:"variableBorrowRate",type:"uint256"},{indexed:!1,internalType:"uint256",name:"liquidityIndex",type:"uint256"},{indexed:!1,internalType:"uint256",name:"variableBorrowIndex",type:"uint256"}],name:"ReserveDataUpdated",type:"event"},{anonymous:!1,inputs:[{indexed:!0,internalType:"address",name:"reserve",type:"address"},{indexed:!0,internalType:"address",name:"user",type:"address"}],name:"ReserveUsedAsCollateralDisabled",type:"event"},{anonymous:!1,inputs:[{indexed:!0,internalType:"address",name:"reserve",type:"address"},{indexed:!0,internalType:"address",name:"user",type:"address"}],name:"ReserveUsedAsCollateralEnabled",type:"event"},{anonymous:!1,inputs:[{indexed:!0,internalType:"address",name:"reserve",type:"address"},{indexed:!0,internalType:"address",name:"user",type:"address"},{indexed:!1,internalType:"uint256",name:"rateMode",type:"uint256"}],name:"Swap",type:"event"},{anonymous:!1,inputs:[],name:"Unpaused",type:"event"},{anonymous:!1,inputs:[{indexed:!0,internalType:"address",name:"reserve",type:"address"},{indexed:!0,internalType:"address",name:"user",type:"address"},{indexed:!0,internalType:"address",name:"to",type:"address"},{indexed:!1,internalType:"uint256",name:"amount",type:"uint256"}],name:"Withdraw",type:"event"},{inputs:[],name:"FLASHLOAN_PREMIUM_TOTAL",outputs:[{internalType:"uint256",name:"",type:"uint256"}],stateMutability:"view",type:"function"},{inputs:[],name:"LENDINGPOOL_REVISION",outputs:[{internalType:"uint256",name:"",type:"uint256"}],stateMutability:"view",type:"function"},{inputs:[],name:"MAX_NUMBER_RESERVES",outputs:[{internalType:"uint256",name:"",type:"uint256"}],stateMutability:"view",type:"function"},{inputs:[],name:"MAX_STABLE_RATE_BORROW_SIZE_PERCENT",outputs:[{internalType:"uint256",name:"",type:"uint256"}],stateMutability:"view",type:"function"},{inputs:[{internalType:"address",name:"asset",type:"address"},{internalType:"uint256",name:"amount",type:"uint256"},{internalType:"uint256",name:"interestRateMode",type:"uint256"},{internalType:"uint16",name:"referralCode",type:"uint16"},{internalType:"address",name:"onBehalfOf",type:"address"}],name:"borrow",outputs:[],stateMutability:"nonpayable",type:"function"},{inputs:[{internalType:"address",name:"asset",type:"address"},{internalType:"uint256",name:"amount",type:"uint256"},{internalType:"address",name:"onBehalfOf",type:"address"},{internalType:"uint16",name:"referralCode",type:"uint16"}],name:"deposit",outputs:[],stateMutability:"nonpayable",type:"function"},{inputs:[{internalType:"address",name:"asset",type:"address"},{internalType:"address",name:"from",type:"address"},{internalType:"address",name:"to",type:"address"},{internalType:"uint256",name:"amount",type:"uint256"},{internalType:"uint256",name:"balanceFromBefore",type:"uint256"},{internalType:"uint256",name:"balanceToBefore",type:"uint256"}],name:"finalizeTransfer",outputs:[],stateMutability:"nonpayable",type:"function"},{inputs:[{internalType:"address",name:"receiverAddress",type:"address"},{internalType:"address[]",name:"assets",type:"address[]"},{internalType:"uint256[]",name:"amounts",type:"uint256[]"},{internalType:"uint256[]",name:"modes",type:"uint256[]"},{internalType:"address",name:"onBehalfOf",type:"address"},{internalType:"bytes",name:"params",type:"bytes"},{internalType:"uint16",name:"referralCode",type:"uint16"}],name:"flashLoan",outputs:[],stateMutability:"nonpayable",type:"function"},{inputs:[],name:"getAddressesProvider",outputs:[{internalType:"contract ILendingPoolAddressesProvider",name:"",type:"address"}],stateMutability:"view",type:"function"},{inputs:[{internalType:"address",name:"asset",type:"address"}],name:"getConfiguration",outputs:[{components:[{internalType:"uint256",name:"data",type:"uint256"}],internalType:"struct DataTypes.ReserveConfigurationMap",name:"",type:"tuple"}],stateMutability:"view",type:"function"},{inputs:[{internalType:"address",name:"asset",type:"address"}],name:"getReserveData",outputs:[{components:[{components:[{internalType:"uint256",name:"data",type:"uint256"}],internalType:"struct DataTypes.ReserveConfigurationMap",name:"configuration",type:"tuple"},{internalType:"uint128",name:"liquidityIndex",type:"uint128"},{internalType:"uint128",name:"variableBorrowIndex",type:"uint128"},{internalType:"uint128",name:"currentLiquidityRate",type:"uint128"},{internalType:"uint128",name:"currentVariableBorrowRate",type:"uint128"},{internalType:"uint128",name:"currentStableBorrowRate",type:"uint128"},{internalType:"uint40",name:"lastUpdateTimestamp",type:"uint40"},{internalType:"address",name:"aTokenAddress",type:"address"},{internalType:"address",name:"stableDebtTokenAddress",type:"address"},{internalType:"address",name:"variableDebtTokenAddress",type:"address"},{internalType:"address",name:"interestRateStrategyAddress",type:"address"},{internalType:"uint8",name:"id",type:"uint8"}],internalType:"struct DataTypes.ReserveData",name:"",type:"tuple"}],stateMutability:"view",type:"function"},{inputs:[{internalType:"address",name:"asset",type:"address"}],name:"getReserveNormalizedIncome",outputs:[{internalType:"uint256",name:"",type:"uint256"}],stateMutability:"view",type:"function"},{inputs:[{internalType:"address",name:"asset",type:"address"}],name:"getReserveNormalizedVariableDebt",outputs:[{internalType:"uint256",name:"",type:"uint256"}],stateMutability:"view",type:"function"},{inputs:[],name:"getReservesList",outputs:[{internalType:"address[]",name:"",type:"address[]"}],stateMutability:"view",type:"function"},{inputs:[{internalType:"address",name:"user",type:"address"}],name:"getUserAccountData",outputs:[{internalType:"uint256",name:"totalCollateralETH",type:"uint256"},{internalType:"uint256",name:"totalDebtETH",type:"uint256"},{internalType:"uint256",name:"availableBorrowsETH",type:"uint256"},{internalType:"uint256",name:"currentLiquidationThreshold",type:"uint256"},{internalType:"uint256",name:"ltv",type:"uint256"},{internalType:"uint256",name:"healthFactor",type:"uint256"}],stateMutability:"view",type:"function"},{inputs:[{internalType:"address",name:"user",type:"address"}],name:"getUserConfiguration",outputs:[{components:[{internalType:"uint256",name:"data",type:"uint256"}],internalType:"struct DataTypes.UserConfigurationMap",name:"",type:"tuple"}],stateMutability:"view",type:"function"},{inputs:[{internalType:"address",name:"asset",type:"address"},{internalType:"address",name:"aTokenAddress",type:"address"},{internalType:"address",name:"stableDebtAddress",type:"address"},{internalType:"address",name:"variableDebtAddress",type:"address"},{internalType:"address",name:"interestRateStrategyAddress",type:"address"}],name:"initReserve",outputs:[],stateMutability:"nonpayable",type:"function"},{inputs:[{internalType:"contract ILendingPoolAddressesProvider",name:"provider",type:"address"}],name:"initialize",outputs:[],stateMutability:"nonpayable",type:"function"},{inputs:[{internalType:"address",name:"collateralAsset",type:"address"},{internalType:"address",name:"debtAsset",type:"address"},{internalType:"address",name:"user",type:"address"},{internalType:"uint256",name:"debtToCover",type:"uint256"},{internalType:"bool",name:"receiveAToken",type:"bool"}],name:"liquidationCall",outputs:[],stateMutability:"nonpayable",type:"function"},{inputs:[],name:"paused",outputs:[{internalType:"bool",name:"",type:"bool"}],stateMutability:"view",type:"function"},{inputs:[{internalType:"address",name:"asset",type:"address"},{internalType:"address",name:"user",type:"address"}],name:"rebalanceStableBorrowRate",outputs:[],stateMutability:"nonpayable",type:"function"},{inputs:[{internalType:"address",name:"asset",type:"address"},{internalType:"uint256",name:"amount",type:"uint256"},{internalType:"uint256",name:"rateMode",type:"uint256"},{internalType:"address",name:"onBehalfOf",type:"address"}],name:"repay",outputs:[{internalType:"uint256",name:"",type:"uint256"}],stateMutability:"nonpayable",type:"function"},{inputs:[{internalType:"address",name:"asset",type:"address"},{internalType:"uint256",name:"configuration",type:"uint256"}],name:"setConfiguration",outputs:[],stateMutability:"nonpayable",type:"function"},{inputs:[{internalType:"bool",name:"val",type:"bool"}],name:"setPause",outputs:[],stateMutability:"nonpayable",type:"function"},{inputs:[{internalType:"address",name:"asset",type:"address"},{internalType:"address",name:"rateStrategyAddress",type:"address"}],name:"setReserveInterestRateStrategyAddress",outputs:[],stateMutability:"nonpayable",type:"function"},{inputs:[{internalType:"address",name:"asset",type:"address"},{internalType:"bool",name:"useAsCollateral",type:"bool"}],name:"setUserUseReserveAsCollateral",outputs:[],stateMutability:"nonpayable",type:"function"},{inputs:[{internalType:"address",name:"asset",type:"address"},{internalType:"uint256",name:"rateMode",type:"uint256"}],name:"swapBorrowRateMode",outputs:[],stateMutability:"nonpayable",type:"function"},{inputs:[{internalType:"address",name:"asset",type:"address"},{internalType:"uint256",name:"amount",type:"uint256"},{internalType:"address",name:"to",type:"address"}],name:"withdraw",outputs:[{internalType:"uint256",name:"",type:"uint256"}],stateMutability:"nonpayable",type:"function"}],Ic=[{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"}],He=[{inputs:[{internalType:"address",name:"asset",type:"address"}],name:"getAssetPrice",outputs:[{internalType:"uint256",name:"price",type:"uint256"}],stateMutability:"view",type:"function"},{inputs:[{internalType:"address",name:"",type:"address"}],name:"isPool",outputs:[{internalType:"bool",name:"",type:"bool"}],stateMutability:"view",type:"function"},{inputs:[{internalType:"address",name:"extContract",type:"address"}],name:"getAssetGuard",outputs:[{internalType:"address",name:"guard",type:"address"}],stateMutability:"view",type:"function"},{inputs:[{internalType:"address",name:"extContract",type:"address"}],name:"getContractGuard",outputs:[{internalType:"address",name:"guard",type:"address"}],stateMutability:"view",type:"function"}],be=[{inputs:[{internalType:"address",name:"owner",type:"address"},{internalType:"address",name:"spender",type:"address"}],name:"allowance",outputs:[{internalType:"uint256",name:"",type:"uint256"}],stateMutability:"view",type:"function"},{inputs:[{internalType:"address",name:"spender",type:"address"},{internalType:"uint256",name:"amount",type:"uint256"}],name:"approve",outputs:[{internalType:"bool",name:"",type:"bool"}],stateMutability:"nonpayable",type:"function"},{inputs:[{internalType:"address",name:"account",type:"address"}],name:"balanceOf",outputs:[{internalType:"uint256",name:"",type:"uint256"}],stateMutability:"view",type:"function"},{inputs:[{internalType:"uint256",name:"fundValue",type:"uint256"}],name:"calculateAvailableManagerFee",outputs:[{internalType:"uint256",name:"fee",type:"uint256"}],stateMutability:"view",type:"function"},{inputs:[],name:"decimals",outputs:[{internalType:"uint8",name:"",type:"uint8"}],stateMutability:"view",type:"function"},{inputs:[{internalType:"address",name:"_asset",type:"address"},{internalType:"uint256",name:"_amount",type:"uint256"}],name:"deposit",outputs:[{internalType:"uint256",name:"liquidityMinted",type:"uint256"}],stateMutability:"nonpayable",type:"function"},{inputs:[{internalType:"address",name:"sender",type:"address"}],name:"getExitRemainingCooldown",outputs:[{internalType:"uint256",name:"remaining",type:"uint256"}],stateMutability:"view",type:"function"},{inputs:[],name:"getFundSummary",outputs:[{components:[{internalType:"string",name:"name",type:"string"},{internalType:"uint256",name:"totalSupply",type:"uint256"},{internalType:"uint256",name:"totalFundValue",type:"uint256"},{internalType:"address",name:"manager",type:"address"},{internalType:"string",name:"managerName",type:"string"},{internalType:"uint256",name:"creationTime",type:"uint256"},{internalType:"bool",name:"privatePool",type:"bool"},{internalType:"uint256",name:"performanceFeeNumerator",type:"uint256"},{internalType:"uint256",name:"managerFeeNumerator",type:"uint256"},{internalType:"uint256",name:"managerFeeDenominator",type:"uint256"},{internalType:"uint256",name:"exitFeeNumerator",type:"uint256"},{internalType:"uint256",name:"exitFeeDenominator",type:"uint256"},{internalType:"uint256",name:"entryFeeNumerator",type:"uint256"}],internalType:"struct PoolLogic.FundSummary",name:"",type:"tuple"}],stateMutability:"view",type:"function"},{inputs:[],name:"mintManagerFee",outputs:[],stateMutability:"nonpayable",type:"function"},{inputs:[],name:"name",outputs:[{internalType:"string",name:"",type:"string"}],stateMutability:"view",type:"function"},{inputs:[],name:"poolManagerLogic",outputs:[{internalType:"address",name:"",type:"address"}],stateMutability:"view",type:"function"},{inputs:[],name:"symbol",outputs:[{internalType:"string",name:"",type:"string"}],stateMutability:"view",type:"function"},{inputs:[],name:"tokenPrice",outputs:[{internalType:"uint256",name:"price",type:"uint256"}],stateMutability:"view",type:"function"},{inputs:[],name:"totalSupply",outputs:[{internalType:"uint256",name:"",type:"uint256"}],stateMutability:"view",type:"function"},{inputs:[{internalType:"uint256",name:"_fundTokenAmount",type:"uint256"},{components:[{internalType:"address",name:"supportedAsset",type:"address"},{internalType:"bytes",name:"withdrawData",type:"bytes"},{internalType:"uint256",name:"slippageTolerance",type:"uint256"}],internalType:"struct IPoolLogic.ComplexAsset[]",name:"_complexAssetsData",type:"tuple[]"}],name:"withdrawSafe",outputs:[],stateMutability:"nonpayable",type:"function"},{inputs:[{internalType:"uint256",name:"_fundTokenAmount",type:"uint256"},{internalType:"uint256",name:"_slippageTolerance",type:"uint256"}],name:"withdrawSafe",outputs:[],stateMutability:"nonpayable",type:"function"}],_c=[{type:"tuple[]",components:[{type:"address",name:"asset"},{type:"uint256",name:"amount"},{type:"tuple",name:"swapData",components:[{type:"bytes32",name:"routerKey"},{type:"bytes",name:"txData"}]}]}],Dc=[{type:"tuple",components:[{type:"bytes",name:"encodedSrcData"},{type:"tuple",name:"dstData",components:[{type:"address",name:"dstAddress"},{type:"uint256",name:"dstAmount"}]},{type:"uint256",name:"slippage"}]}],De=[{inputs:[],name:"getFundComposition",outputs:[{components:[{internalType:"address",name:"asset",type:"address"},{internalType:"bool",name:"isDeposit",type:"bool"}],internalType:"struct IHasSupportedAsset.Asset[]",name:"assets",type:"tuple[]"},{internalType:"uint256[]",name:"balances",type:"uint256[]"},{internalType:"uint256[]",name:"rates",type:"uint256[]"}],stateMutability:"view",type:"function"},{inputs:[],name:"getFeeIncreaseInfo",outputs:[{internalType:"uint256",name:"",type:"uint256"},{internalType:"uint256",name:"",type:"uint256"},{internalType:"uint256",name:"",type:"uint256"},{internalType:"uint256",name:"",type:"uint256"},{internalType:"uint256",name:"",type:"uint256"}],stateMutability:"view",type:"function"},{inputs:[{internalType:"address",name:"member",type:"address"}],name:"isMemberAllowed",outputs:[{internalType:"bool",name:"",type:"bool"}],stateMutability:"view",type:"function"},{inputs:[],name:"minDepositUSD",outputs:[{internalType:"uint256",name:"",type:"uint256"}],stateMutability:"view",type:"function"},{inputs:[],name:"totalFundValueMutable",outputs:[{internalType:"uint256",name:"",type:"uint256"}],stateMutability:"nonpayable",type:"function"},{inputs:[],name:"getSupportedAssets",outputs:[{components:[{internalType:"address",name:"asset",type:"address"},{internalType:"bool",name:"isDeposit",type:"bool"}],internalType:"struct IHasSupportedAsset.Asset[]",name:"",type:"tuple[]"}],stateMutability:"view",type:"function"},{inputs:[],name:"maxSupplyCap",outputs:[{internalType:"uint256",name:"",type:"uint256"}],stateMutability:"view",type:"function"},{inputs:[],name:"poolFeeShareNumerator",outputs:[{internalType:"uint256",name:"",type:"uint256"}],stateMutability:"view",type:"function"}],Pr=[{anonymous:!1,inputs:[{components:[{internalType:"address",name:"pool",type:"address"},{internalType:"uint256",name:"amount",type:"uint256"}],indexed:!1,internalType:"struct RewardDistribution.RewardSummary[]",name:"distributedRewards",type:"tuple[]"},{indexed:!1,internalType:"uint256",name:"totalDistributedRewards",type:"uint256"}],name:"RewardsDistribution",type:"event"},{inputs:[],name:"calculateEligiblePoolsRewards",outputs:[{components:[{internalType:"address",name:"pool",type:"address"},{internalType:"uint256",name:"amount",type:"uint256"}],internalType:"struct RewardDistribution.RewardSummary[]",name:"rewards",type:"tuple[]"},{internalType:"uint256",name:"totalRewardsToDistribute",type:"uint256"}],stateMutability:"view",type:"function"},{inputs:[],name:"getEligiblePoolsWithTvl",outputs:[{internalType:"uint256",name:"tvl",type:"uint256"},{components:[{internalType:"address",name:"pool",type:"address"},{internalType:"uint256",name:"tvl",type:"uint256"}],internalType:"struct RewardDistribution.EligiblePool[]",name:"eligiblePools",type:"tuple[]"}],stateMutability:"view",type:"function"},{inputs:[],name:"getRewardsAPY",outputs:[{internalType:"uint256",name:"apy",type:"uint256"}],stateMutability:"view",type:"function"},{inputs:[],name:"getWhitelistedPools",outputs:[{internalType:"address[]",name:"",type:"address[]"}],stateMutability:"view",type:"function"},{inputs:[],name:"lastDistributionTime",outputs:[{internalType:"uint256",name:"",type:"uint256"}],stateMutability:"view",type:"function"},{inputs:[],name:"rewardAmountPerSecond",outputs:[{internalType:"uint256",name:"",type:"uint256"}],stateMutability:"view",type:"function"},{inputs:[],name:"rewardToken",outputs:[{internalType:"contract IERC20",name:"",type:"address"}],stateMutability:"view",type:"function"}],Zt=[{inputs:[{internalType:"address",name:"account",type:"address"}],name:"balanceOf",outputs:[{internalType:"uint256",name:"",type:"uint256"}],stateMutability:"view",type:"function"},{inputs:[{internalType:"address",name:"account",type:"address"}],name:"getUnlockTax",outputs:[{internalType:"uint256",name:"unlockTax",type:"uint256"}],stateMutability:"view",type:"function"},{inputs:[{internalType:"address",name:"account",type:"address"}],name:"lockedBalance",outputs:[{internalType:"uint256",name:"amount",type:"uint256"}],stateMutability:"view",type:"function"},{inputs:[{internalType:"address",name:"account",type:"address"}],name:"unlockTime",outputs:[{internalType:"uint256",name:"unlockTime",type:"uint256"}],stateMutability:"view",type:"function"}],Nc=[{inputs:[],name:"EmptyPayload",type:"error"},{inputs:[],name:"FailedInnerCall",type:"error"},{inputs:[{internalType:"bytes",name:"returnData",type:"bytes"}],name:"FailedToApproveParaswap",type:"error"},{inputs:[{internalType:"contract IERC20",name:"destToken",type:"address"},{internalType:"uint256",name:"receivedAmount",type:"uint256"},{internalType:"uint256",name:"minAmount",type:"uint256"}],name:"InsufficientAmountReceived",type:"error"},{inputs:[{internalType:"bytes32",name:"routerKey",type:"bytes32"}],name:"InvalidAggregator",type:"error"},{inputs:[],name:"InvalidNativeTokenTransferEncoding",type:"error"},{inputs:[],name:"NativeTokenSentWithoutNativeSwap",type:"error"},{inputs:[{internalType:"uint256",name:"expectedAmount",type:"uint256"},{internalType:"uint256",name:"sentAmount",type:"uint256"}],name:"NotEnoughNativeTokenSent",type:"error"},{inputs:[{internalType:"address",name:"token",type:"address"}],name:"SafeERC20FailedOperation",type:"error"},{inputs:[{internalType:"address",name:"router",type:"address"},{components:[{internalType:"contract IERC20",name:"token",type:"address"},{internalType:"uint256",name:"amount",type:"uint256"},{components:[{internalType:"bytes32",name:"routerKey",type:"bytes32"},{internalType:"bytes",name:"swapData",type:"bytes"}],internalType:"struct AggregatorData",name:"aggregatorData",type:"tuple"}],internalType:"struct SrcTokenSwapDetails",name:"srcTokenSwapDetails",type:"tuple"},{internalType:"bytes",name:"returnData",type:"bytes"}],name:"SwapFailed",type:"error"},{inputs:[{internalType:"enum Permit2TransferType",name:"transferType",type:"uint8"}],name:"UnsupportedPermit2Method",type:"error"},{inputs:[],name:"UnsupportedTokenTransferMethod",type:"error"}],ve=[...Nc,{anonymous:!1,inputs:[{indexed:!1,internalType:"address",name:"limitOrderVault",type:"address"},{indexed:!0,internalType:"address",name:"depositor",type:"address"}],name:"LimitOrderVaultCreated",type:"event"},{anonymous:!1,inputs:[{indexed:!1,internalType:"address",name:"withdrawalVault",type:"address"},{indexed:!0,internalType:"address",name:"depositor",type:"address"}],name:"WithdrawalCompleted",type:"event"},{anonymous:!1,inputs:[{indexed:!1,internalType:"address",name:"withdrawalVault",type:"address"},{indexed:!0,internalType:"address",name:"depositor",type:"address"},{indexed:!1,internalType:"address",name:"dHedgeVault",type:"address"},{indexed:!1,internalType:"uint256",name:"amountWithdrawn",type:"uint256"}],name:"WithdrawalInitiated",type:"event"},{anonymous:!1,inputs:[{indexed:!0,internalType:"address",name:"depositor",type:"address"},{indexed:!0,internalType:"address",name:"dHedgeVault",type:"address"},{indexed:!1,internalType:"contract IERC20",name:"vaultDepositToken",type:"address"},{indexed:!1,internalType:"contract IERC20",name:"userDepositToken",type:"address"},{indexed:!1,internalType:"uint256",name:"amountReceived",type:"uint256"},{indexed:!1,internalType:"uint256",name:"lockupTime",type:"uint256"}],name:"ZapDepositCompleted",type:"event"},{inputs:[{components:[{components:[{internalType:"contract IERC20",name:"token",type:"address"},{internalType:"uint256",name:"amount",type:"uint256"},{components:[{internalType:"bytes32",name:"routerKey",type:"bytes32"},{internalType:"bytes",name:"swapData",type:"bytes"}],internalType:"struct ISwapper.AggregatorData",name:"aggregatorData",type:"tuple"}],internalType:"struct ISwapper.SrcTokenSwapDetails[]",name:"srcData",type:"tuple[]"},{components:[{internalType:"contract IERC20",name:"destToken",type:"address"},{internalType:"uint256",name:"minDestAmount",type:"uint256"}],internalType:"struct ISwapper.DestData",name:"destData",type:"tuple"}],internalType:"struct IWithdrawalVault.MultiInSingleOutData",name:"_swapData",type:"tuple"},{internalType:"uint256",name:"_expectedDestTokenAmount",type:"uint256"}],name:"completeLimitOrderWithdrawal",outputs:[{internalType:"uint256",name:"destTokenAmount",type:"uint256"}],stateMutability:"nonpayable",type:"function"},{inputs:[],name:"completeLimitOrderWithdrawal",outputs:[],stateMutability:"nonpayable",type:"function"},{inputs:[{internalType:"address",name:"_user",type:"address"},{components:[{components:[{internalType:"contract IERC20",name:"token",type:"address"},{internalType:"uint256",name:"amount",type:"uint256"},{components:[{internalType:"bytes32",name:"routerKey",type:"bytes32"},{internalType:"bytes",name:"swapData",type:"bytes"}],internalType:"struct ISwapper.AggregatorData",name:"aggregatorData",type:"tuple"}],internalType:"struct ISwapper.SrcTokenSwapDetails[]",name:"srcData",type:"tuple[]"},{components:[{internalType:"contract IERC20",name:"destToken",type:"address"},{internalType:"uint256",name:"minDestAmount",type:"uint256"}],internalType:"struct ISwapper.DestData",name:"destData",type:"tuple"}],internalType:"struct IWithdrawalVault.MultiInSingleOutData",name:"_swapData",type:"tuple"},{internalType:"uint256",name:"_expectedDestTokenAmount",type:"uint256"}],name:"completeLimitOrderWithdrawalFor",outputs:[{internalType:"uint256",name:"destTokenAmount",type:"uint256"}],stateMutability:"nonpayable",type:"function"},{inputs:[{internalType:"address",name:"_user",type:"address"}],name:"completeLimitOrderWithdrawalFor",outputs:[],stateMutability:"nonpayable",type:"function"},{inputs:[{components:[{components:[{internalType:"contract IERC20",name:"token",type:"address"},{internalType:"uint256",name:"amount",type:"uint256"},{components:[{internalType:"bytes32",name:"routerKey",type:"bytes32"},{internalType:"bytes",name:"swapData",type:"bytes"}],internalType:"struct ISwapper.AggregatorData",name:"aggregatorData",type:"tuple"}],internalType:"struct ISwapper.SrcTokenSwapDetails[]",name:"srcData",type:"tuple[]"},{components:[{internalType:"contract IERC20",name:"destToken",type:"address"},{internalType:"uint256",name:"minDestAmount",type:"uint256"}],internalType:"struct ISwapper.DestData",name:"destData",type:"tuple"}],internalType:"struct IWithdrawalVault.MultiInSingleOutData",name:"_swapData",type:"tuple"},{internalType:"uint256",name:"_expectedDestTokenAmount",type:"uint256"}],name:"completeWithdrawal",outputs:[{internalType:"uint256",name:"destTokenAmount",type:"uint256"}],stateMutability:"nonpayable",type:"function"},{inputs:[],name:"completeWithdrawal",outputs:[],stateMutability:"nonpayable",type:"function"},{inputs:[],name:"customCooldown",outputs:[{internalType:"uint256",name:"",type:"uint256"}],stateMutability:"view",type:"function"},{inputs:[{internalType:"address",name:"",type:"address"}],name:"customCooldownDepositsWhitelist",outputs:[{internalType:"bool",name:"",type:"bool"}],stateMutability:"view",type:"function"},{inputs:[],name:"dHedgePoolFactory",outputs:[{internalType:"address",name:"",type:"address"}],stateMutability:"view",type:"function"},{inputs:[{internalType:"address",name:"_dHedgeVault",type:"address"},{internalType:"contract IERC20",name:"_vaultDepositToken",type:"address"},{internalType:"uint256",name:"_depositAmount",type:"uint256"},{internalType:"uint256",name:"_expectedAmountReceived",type:"uint256"}],name:"deposit",outputs:[],stateMutability:"nonpayable",type:"function"},{inputs:[{internalType:"address",name:"_dHedgeVault",type:"address"},{internalType:"address",name:"_vaultDepositToken",type:"address"},{internalType:"uint256",name:"_depositAmount",type:"uint256"}],name:"depositQuote",outputs:[{internalType:"uint256",name:"expectedAmountReceived",type:"uint256"}],stateMutability:"view",type:"function"},{inputs:[{internalType:"address",name:"_dHedgeVault",type:"address"},{internalType:"contract IERC20",name:"_vaultDepositToken",type:"address"},{internalType:"uint256",name:"_depositAmount",type:"uint256"},{internalType:"uint256",name:"_expectedAmountReceived",type:"uint256"}],name:"depositWithCustomCooldown",outputs:[],stateMutability:"nonpayable",type:"function"},{inputs:[{internalType:"uint8",name:"",type:"uint8"}],name:"getLogic",outputs:[{internalType:"address",name:"",type:"address"}],stateMutability:"view",type:"function"},{inputs:[{internalType:"address",name:"_depositor",type:"address"}],name:"getTrackedAssets",outputs:[{components:[{internalType:"address",name:"token",type:"address"},{internalType:"uint256",name:"balance",type:"uint256"}],internalType:"struct IWithdrawalVault.TrackedAsset[]",name:"trackedAssets",type:"tuple[]"}],stateMutability:"view",type:"function"},{inputs:[{internalType:"address",name:"_depositor",type:"address"}],name:"getTrackedAssetsFromLimitOrders",outputs:[{components:[{internalType:"address",name:"token",type:"address"},{internalType:"uint256",name:"balance",type:"uint256"}],internalType:"struct IWithdrawalVault.TrackedAsset[]",name:"trackedAssets",type:"tuple[]"}],stateMutability:"view",type:"function"},{inputs:[{internalType:"address",name:"_user",type:"address"},{internalType:"address",name:"_dHedgeVault",type:"address"},{internalType:"uint256",name:"_amountIn",type:"uint256"},{components:[{internalType:"address",name:"supportedAsset",type:"address"},{internalType:"bytes",name:"withdrawData",type:"bytes"},{internalType:"uint256",name:"slippageTolerance",type:"uint256"}],internalType:"struct IPoolLogic.ComplexAsset[]",name:"_complexAssetsData",type:"tuple[]"}],name:"initLimitOrderWithdrawalFor",outputs:[{components:[{internalType:"address",name:"token",type:"address"},{internalType:"uint256",name:"balance",type:"uint256"}],internalType:"struct IWithdrawalVault.TrackedAsset[]",name:"trackedAssets",type:"tuple[]"},{internalType:"address",name:"vault",type:"address"}],stateMutability:"nonpayable",type:"function"},{inputs:[{internalType:"address",name:"_dHedgeVault",type:"address"},{internalType:"uint256",name:"_amountIn",type:"uint256"},{components:[{internalType:"address",name:"supportedAsset",type:"address"},{internalType:"bytes",name:"withdrawData",type:"bytes"},{internalType:"uint256",name:"slippageTolerance",type:"uint256"}],internalType:"struct IPoolLogic.ComplexAsset[]",name:"_complexAssetsData",type:"tuple[]"}],name:"initWithdrawal",outputs:[{components:[{internalType:"address",name:"token",type:"address"},{internalType:"uint256",name:"balance",type:"uint256"}],internalType:"struct IWithdrawalVault.TrackedAsset[]",name:"trackedAssets",type:"tuple[]"},{internalType:"address",name:"vault",type:"address"}],stateMutability:"nonpayable",type:"function"},{inputs:[{internalType:"address",name:"",type:"address"}],name:"isAuthorizedWithdrawer",outputs:[{internalType:"bool",name:"",type:"bool"}],stateMutability:"view",type:"function"},{inputs:[{internalType:"address",name:"_dHedgeVault",type:"address"}],name:"isdHedgeVault",outputs:[{internalType:"bool",name:"isVault",type:"bool"}],stateMutability:"view",type:"function"},{inputs:[{internalType:"address",name:"",type:"address"}],name:"limitOrderContracts",outputs:[{internalType:"address",name:"",type:"address"}],stateMutability:"view",type:"function"},{inputs:[{internalType:"address",name:"_dHedgeVault",type:"address"},{internalType:"uint256",name:"_expectedAmountReceived",type:"uint256"}],name:"nativeDeposit",outputs:[],stateMutability:"payable",type:"function"},{inputs:[{internalType:"address",name:"_dHedgeVault",type:"address"},{internalType:"uint256",name:"_expectedAmountReceived",type:"uint256"}],name:"nativeDepositWithCustomCooldown",outputs:[],stateMutability:"payable",type:"function"},{inputs:[],name:"owner",outputs:[{internalType:"address",name:"",type:"address"}],stateMutability:"view",type:"function"},{inputs:[{internalType:"uint256",name:"_portion",type:"uint256"},{internalType:"address",name:"_to",type:"address"}],name:"partialWithdraw",outputs:[],stateMutability:"nonpayable",type:"function"},{inputs:[],name:"renounceOwnership",outputs:[],stateMutability:"nonpayable",type:"function"},{inputs:[{components:[{internalType:"address",name:"toWhitelist",type:"address"},{internalType:"bool",name:"whitelisted",type:"bool"}],internalType:"struct EasySwapperV2.WhitelistSetting[]",name:"_whitelistSettings",type:"tuple[]"}],name:"setAuthorizedWithdrawers",outputs:[],stateMutability:"nonpayable",type:"function"},{inputs:[{internalType:"uint256",name:"_customCooldown",type:"uint256"}],name:"setCustomCooldown",outputs:[],stateMutability:"nonpayable",type:"function"},{inputs:[{components:[{internalType:"address",name:"toWhitelist",type:"address"},{internalType:"bool",name:"whitelisted",type:"bool"}],internalType:"struct EasySwapperV2.WhitelistSetting[]",name:"_whitelistSettings",type:"tuple[]"}],name:"setCustomCooldownWhitelist",outputs:[],stateMutability:"nonpayable",type:"function"},{inputs:[{internalType:"address",name:"_vaultLogic",type:"address"}],name:"setLogic",outputs:[],stateMutability:"nonpayable",type:"function"},{inputs:[{internalType:"contract ISwapper",name:"_swapper",type:"address"}],name:"setSwapper",outputs:[],stateMutability:"nonpayable",type:"function"},{inputs:[{internalType:"address",name:"_dHedgePoolFactory",type:"address"}],name:"setdHedgePoolFactory",outputs:[],stateMutability:"nonpayable",type:"function"},{inputs:[],name:"swapper",outputs:[{internalType:"contract ISwapper",name:"",type:"address"}],stateMutability:"view",type:"function"},{inputs:[{internalType:"address",name:"newOwner",type:"address"}],name:"transferOwnership",outputs:[],stateMutability:"nonpayable",type:"function"},{inputs:[{internalType:"address",name:"_dHedgeVault",type:"address"},{internalType:"uint256",name:"_amountIn",type:"uint256"},{components:[{internalType:"address",name:"supportedAsset",type:"address"},{internalType:"bytes",name:"withdrawData",type:"bytes"},{internalType:"uint256",name:"slippageTolerance",type:"uint256"}],internalType:"struct IPoolLogic.ComplexAsset[]",name:"_complexAssetsData",type:"tuple[]"}],name:"unrollAndClaim",outputs:[{components:[{internalType:"address",name:"token",type:"address"},{internalType:"uint256",name:"balance",type:"uint256"}],internalType:"struct IWithdrawalVault.TrackedAsset[]",name:"",type:"tuple[]"}],stateMutability:"nonpayable",type:"function"},{inputs:[],name:"weth",outputs:[{internalType:"address",name:"",type:"address"}],stateMutability:"view",type:"function"},{inputs:[{internalType:"address",name:"",type:"address"}],name:"withdrawalContracts",outputs:[{internalType:"address",name:"",type:"address"}],stateMutability:"view",type:"function"},{inputs:[],name:"wrappedNativeToken",outputs:[{internalType:"contract IWETH",name:"",type:"address"}],stateMutability:"view",type:"function"},{inputs:[{internalType:"address",name:"_dHedgeVault",type:"address"},{components:[{components:[{internalType:"contract IERC20",name:"token",type:"address"},{internalType:"uint256",name:"amount",type:"uint256"},{components:[{internalType:"bytes32",name:"routerKey",type:"bytes32"},{internalType:"bytes",name:"swapData",type:"bytes"}],internalType:"struct ISwapper.AggregatorData",name:"aggregatorData",type:"tuple"}],internalType:"struct ISwapper.SrcTokenSwapDetails",name:"srcData",type:"tuple"},{components:[{internalType:"contract IERC20",name:"destToken",type:"address"},{internalType:"uint256",name:"minDestAmount",type:"uint256"}],internalType:"struct ISwapper.DestData",name:"destData",type:"tuple"}],internalType:"struct EasySwapperV2.SingleInSingleOutData",name:"_swapData",type:"tuple"},{internalType:"uint256",name:"_expectedAmountReceived",type:"uint256"}],name:"zapDeposit",outputs:[],stateMutability:"nonpayable",type:"function"},{inputs:[{internalType:"address",name:"_dHedgeVault",type:"address"},{components:[{components:[{internalType:"contract IERC20",name:"token",type:"address"},{internalType:"uint256",name:"amount",type:"uint256"},{components:[{internalType:"bytes32",name:"routerKey",type:"bytes32"},{internalType:"bytes",name:"swapData",type:"bytes"}],internalType:"struct ISwapper.AggregatorData",name:"aggregatorData",type:"tuple"}],internalType:"struct ISwapper.SrcTokenSwapDetails",name:"srcData",type:"tuple"},{components:[{internalType:"contract IERC20",name:"destToken",type:"address"},{internalType:"uint256",name:"minDestAmount",type:"uint256"}],internalType:"struct ISwapper.DestData",name:"destData",type:"tuple"}],internalType:"struct EasySwapperV2.SingleInSingleOutData",name:"_swapData",type:"tuple"},{internalType:"uint256",name:"_expectedAmountReceived",type:"uint256"}],name:"zapDepositWithCustomCooldown",outputs:[],stateMutability:"nonpayable",type:"function"},{inputs:[{internalType:"address",name:"_dHedgeVault",type:"address"},{components:[{components:[{internalType:"contract IERC20",name:"token",type:"address"},{internalType:"uint256",name:"amount",type:"uint256"},{components:[{internalType:"bytes32",name:"routerKey",type:"bytes32"},{internalType:"bytes",name:"swapData",type:"bytes"}],internalType:"struct ISwapper.AggregatorData",name:"aggregatorData",type:"tuple"}],internalType:"struct ISwapper.SrcTokenSwapDetails",name:"srcData",type:"tuple"},{components:[{internalType:"contract IERC20",name:"destToken",type:"address"},{internalType:"uint256",name:"minDestAmount",type:"uint256"}],internalType:"struct ISwapper.DestData",name:"destData",type:"tuple"}],internalType:"struct EasySwapperV2.SingleInSingleOutData",name:"_swapData",type:"tuple"},{internalType:"uint256",name:"_expectedAmountReceived",type:"uint256"}],name:"zapNativeDeposit",outputs:[],stateMutability:"payable",type:"function"},{inputs:[{internalType:"address",name:"_dHedgeVault",type:"address"},{components:[{components:[{internalType:"contract IERC20",name:"token",type:"address"},{internalType:"uint256",name:"amount",type:"uint256"},{components:[{internalType:"bytes32",name:"routerKey",type:"bytes32"},{internalType:"bytes",name:"swapData",type:"bytes"}],internalType:"struct ISwapper.AggregatorData",name:"aggregatorData",type:"tuple"}],internalType:"struct ISwapper.SrcTokenSwapDetails",name:"srcData",type:"tuple"},{components:[{internalType:"contract IERC20",name:"destToken",type:"address"},{internalType:"uint256",name:"minDestAmount",type:"uint256"}],internalType:"struct ISwapper.DestData",name:"destData",type:"tuple"}],internalType:"struct EasySwapperV2.SingleInSingleOutData",name:"_swapData",type:"tuple"},{internalType:"uint256",name:"_expectedAmountReceived",type:"uint256"}],name:"zapNativeDepositWithCustomCooldown",outputs:[],stateMutability:"payable",type:"function"}],wn=[{inputs:[],name:"ExternalCallerNotAllowed",type:"error"},{inputs:[{internalType:"address",name:"asset",type:"address"}],name:"InvalidAsset",type:"error"},{inputs:[{internalType:"address",name:"pool",type:"address"}],name:"InvalidPool",type:"error"},{inputs:[{internalType:"uint256",name:"stopLossPriceD18",type:"uint256"},{internalType:"uint256",name:"takeProfitPriceD18",type:"uint256"},{internalType:"uint256",name:"currentPrice",type:"uint256"}],name:"InvalidPrices",type:"error"},{inputs:[{internalType:"string",name:"varName",type:"string"}],name:"InvalidValue",type:"error"},{inputs:[{internalType:"address",name:"user",type:"address"},{internalType:"address",name:"pool",type:"address"}],name:"LimitOrderAlreadyExists",type:"error"},{inputs:[{internalType:"uint256",name:"currentPriceD18",type:"uint256"},{internalType:"uint256",name:"stopLossPriceD18",type:"uint256"},{internalType:"uint256",name:"takeProfitPriceD18",type:"uint256"}],name:"LimitOrderNotFillable",type:"error"},{inputs:[{internalType:"bytes32",name:"id",type:"bytes32"}],name:"LimitOrderNotFound",type:"error"},{inputs:[{internalType:"address",name:"caller",type:"address"}],name:"NotAuthorizedKeeper",type:"error"},{inputs:[{internalType:"address",name:"account",type:"address"}],name:"OwnableUnauthorizedAccount",type:"error"},{inputs:[{internalType:"address",name:"token",type:"address"}],name:"SafeERC20FailedOperation",type:"error"},{inputs:[{internalType:"address",name:"user",type:"address"}],name:"SettlementOrderNotFound",type:"error"},{anonymous:!1,inputs:[{indexed:!0,internalType:"address",name:"user",type:"address"},{indexed:!0,internalType:"address",name:"pool",type:"address"},{indexed:!1,internalType:"bytes32",name:"id",type:"bytes32"}],name:"LimitOrderCreated",type:"event"},{anonymous:!1,inputs:[{indexed:!0,internalType:"address",name:"user",type:"address"},{indexed:!0,internalType:"address",name:"pool",type:"address"},{indexed:!1,internalType:"bytes32",name:"id",type:"bytes32"}],name:"LimitOrderDeleted",type:"event"},{anonymous:!1,inputs:[{indexed:!0,internalType:"address",name:"user",type:"address"},{indexed:!0,internalType:"address",name:"pool",type:"address"},{indexed:!1,internalType:"bytes32",name:"id",type:"bytes32"}],name:"LimitOrderExecuted",type:"event"},{anonymous:!1,inputs:[{indexed:!1,internalType:"bytes32",name:"id",type:"bytes32"},{indexed:!1,internalType:"bytes",name:"reason",type:"bytes"}],name:"LimitOrderExecutionFailed",type:"event"},{anonymous:!1,inputs:[{indexed:!0,internalType:"address",name:"user",type:"address"},{indexed:!0,internalType:"address",name:"pool",type:"address"},{indexed:!1,internalType:"bytes32",name:"id",type:"bytes32"}],name:"LimitOrderModified",type:"event"},{anonymous:!1,inputs:[{indexed:!0,internalType:"address",name:"user",type:"address"},{indexed:!1,internalType:"uint256",name:"destTokenAmountReceived",type:"uint256"}],name:"SettlementOrderExecuted",type:"event"},{inputs:[],name:"SLIPPAGE_DENOMINATOR",outputs:[{internalType:"uint16",name:"",type:"uint16"}],stateMutability:"view",type:"function"},{inputs:[{internalType:"bytes32",name:"orderId_",type:"bytes32"},{components:[{internalType:"address",name:"supportedAsset",type:"address"},{internalType:"bytes",name:"withdrawData",type:"bytes"},{internalType:"uint256",name:"slippageTolerance",type:"uint256"}],internalType:"struct IPoolLogic.ComplexAsset[]",name:"complexAssetsData_",type:"tuple[]"}],name:"_executeLimitOrder",outputs:[],stateMutability:"nonpayable",type:"function"},{inputs:[{internalType:"address",name:"user_",type:"address"},{components:[{components:[{internalType:"contract IERC20",name:"token",type:"address"},{internalType:"uint256",name:"amount",type:"uint256"},{components:[{internalType:"bytes32",name:"routerKey",type:"bytes32"},{internalType:"bytes",name:"swapData",type:"bytes"}],internalType:"struct ISwapper.AggregatorData",name:"aggregatorData",type:"tuple"}],internalType:"struct ISwapper.SrcTokenSwapDetails[]",name:"srcData",type:"tuple[]"},{components:[{internalType:"contract IERC20",name:"destToken",type:"address"},{internalType:"uint256",name:"minDestAmount",type:"uint256"}],internalType:"struct ISwapper.DestData",name:"destData",type:"tuple"}],internalType:"struct IWithdrawalVault.MultiInSingleOutData",name:"swapData_",type:"tuple"}],name:"_executeSettlementOrder",outputs:[],stateMutability:"nonpayable",type:"function"},{inputs:[{components:[{internalType:"uint256",name:"amount",type:"uint256"},{internalType:"uint256",name:"stopLossPriceD18",type:"uint256"},{internalType:"uint256",name:"takeProfitPriceD18",type:"uint256"},{internalType:"address",name:"user",type:"address"},{internalType:"address",name:"pool",type:"address"},{internalType:"address",name:"pricingAsset",type:"address"}],internalType:"struct PoolLimitOrderManager.LimitOrderInfo",name:"limitOrderInfo_",type:"tuple"}],name:"createLimitOrder",outputs:[],stateMutability:"nonpayable",type:"function"},{inputs:[],name:"defaultSlippageTolerance",outputs:[{internalType:"uint16",name:"",type:"uint16"}],stateMutability:"view",type:"function"},{inputs:[{internalType:"address",name:"pool_",type:"address"}],name:"deleteLimitOrder",outputs:[],stateMutability:"nonpayable",type:"function"},{inputs:[],name:"easySwapper",outputs:[{internalType:"contract IEasySwapperV2",name:"",type:"address"}],stateMutability:"view",type:"function"},{inputs:[{internalType:"bytes32",name:"orderId_",type:"bytes32"},{components:[{internalType:"address",name:"supportedAsset",type:"address"},{internalType:"bytes",name:"withdrawData",type:"bytes"},{internalType:"uint256",name:"slippageTolerance",type:"uint256"}],internalType:"struct IPoolLogic.ComplexAsset[]",name:"complexAssetsData_",type:"tuple[]"}],name:"executeLimitOrder",outputs:[],stateMutability:"nonpayable",type:"function"},{inputs:[{components:[{internalType:"bytes32",name:"orderId",type:"bytes32"},{components:[{internalType:"address",name:"supportedAsset",type:"address"},{internalType:"bytes",name:"withdrawData",type:"bytes"},{internalType:"uint256",name:"slippageTolerance",type:"uint256"}],internalType:"struct IPoolLogic.ComplexAsset[]",name:"complexAssetsData",type:"tuple[]"}],internalType:"struct PoolLimitOrderManager.LimitOrderExecution[]",name:"orders_",type:"tuple[]"}],name:"executeLimitOrders",outputs:[],stateMutability:"nonpayable",type:"function"},{inputs:[{components:[{internalType:"bytes32",name:"orderId",type:"bytes32"},{components:[{internalType:"address",name:"supportedAsset",type:"address"},{internalType:"bytes",name:"withdrawData",type:"bytes"},{internalType:"uint256",name:"slippageTolerance",type:"uint256"}],internalType:"struct IPoolLogic.ComplexAsset[]",name:"complexAssetsData",type:"tuple[]"}],internalType:"struct PoolLimitOrderManager.LimitOrderExecution[]",name:"orders_",type:"tuple[]"}],name:"executeLimitOrdersSafe",outputs:[],stateMutability:"nonpayable",type:"function"},{inputs:[{internalType:"address",name:"user_",type:"address"},{components:[{components:[{internalType:"contract IERC20",name:"token",type:"address"},{internalType:"uint256",name:"amount",type:"uint256"},{components:[{internalType:"bytes32",name:"routerKey",type:"bytes32"},{internalType:"bytes",name:"swapData",type:"bytes"}],internalType:"struct ISwapper.AggregatorData",name:"aggregatorData",type:"tuple"}],internalType:"struct ISwapper.SrcTokenSwapDetails[]",name:"srcData",type:"tuple[]"},{components:[{internalType:"contract IERC20",name:"destToken",type:"address"},{internalType:"uint256",name:"minDestAmount",type:"uint256"}],internalType:"struct ISwapper.DestData",name:"destData",type:"tuple"}],internalType:"struct IWithdrawalVault.MultiInSingleOutData",name:"swapData_",type:"tuple"}],name:"executeSettlementOrder",outputs:[],stateMutability:"nonpayable",type:"function"},{inputs:[{components:[{internalType:"address",name:"user",type:"address"},{components:[{components:[{internalType:"contract IERC20",name:"token",type:"address"},{internalType:"uint256",name:"amount",type:"uint256"},{components:[{internalType:"bytes32",name:"routerKey",type:"bytes32"},{internalType:"bytes",name:"swapData",type:"bytes"}],internalType:"struct ISwapper.AggregatorData",name:"aggregatorData",type:"tuple"}],internalType:"struct ISwapper.SrcTokenSwapDetails[]",name:"srcData",type:"tuple[]"},{components:[{internalType:"contract IERC20",name:"destToken",type:"address"},{internalType:"uint256",name:"minDestAmount",type:"uint256"}],internalType:"struct ISwapper.DestData",name:"destData",type:"tuple"}],internalType:"struct IWithdrawalVault.MultiInSingleOutData",name:"swapData",type:"tuple"}],internalType:"struct PoolLimitOrderManager.SettlementOrderExecution[]",name:"orders_",type:"tuple[]"}],name:"executeSettlementOrders",outputs:[],stateMutability:"nonpayable",type:"function"},{inputs:[{components:[{internalType:"address",name:"user",type:"address"},{components:[{components:[{internalType:"contract IERC20",name:"token",type:"address"},{internalType:"uint256",name:"amount",type:"uint256"},{components:[{internalType:"bytes32",name:"routerKey",type:"bytes32"},{internalType:"bytes",name:"swapData",type:"bytes"}],internalType:"struct ISwapper.AggregatorData",name:"aggregatorData",type:"tuple"}],internalType:"struct ISwapper.SrcTokenSwapDetails[]",name:"srcData",type:"tuple[]"},{components:[{internalType:"contract IERC20",name:"destToken",type:"address"},{internalType:"uint256",name:"minDestAmount",type:"uint256"}],internalType:"struct ISwapper.DestData",name:"destData",type:"tuple"}],internalType:"struct IWithdrawalVault.MultiInSingleOutData",name:"swapData",type:"tuple"}],internalType:"struct PoolLimitOrderManager.SettlementOrderExecution[]",name:"orders_",type:"tuple[]"}],name:"executeSettlementOrdersSafe",outputs:[],stateMutability:"nonpayable",type:"function"},{inputs:[],name:"getAllLimitOrderIds",outputs:[{internalType:"bytes32[]",name:"limitOrderIds_",type:"bytes32[]"}],stateMutability:"view",type:"function"},{inputs:[],name:"getAllUsersToSettle",outputs:[{internalType:"address[]",name:"usersToSettle_",type:"address[]"}],stateMutability:"view",type:"function"},{inputs:[],name:"limitOrderSettlementToken",outputs:[{internalType:"address",name:"",type:"address"}],stateMutability:"view",type:"function"},{inputs:[{internalType:"bytes32",name:"orderId",type:"bytes32"}],name:"limitOrders",outputs:[{internalType:"uint256",name:"amount",type:"uint256"},{internalType:"uint256",name:"stopLossPriceD18",type:"uint256"},{internalType:"uint256",name:"takeProfitPriceD18",type:"uint256"},{internalType:"address",name:"user",type:"address"},{internalType:"address",name:"pool",type:"address"},{internalType:"address",name:"pricingAsset",type:"address"}],stateMutability:"view",type:"function"},{inputs:[{components:[{internalType:"uint256",name:"amount",type:"uint256"},{internalType:"uint256",name:"stopLossPriceD18",type:"uint256"},{internalType:"uint256",name:"takeProfitPriceD18",type:"uint256"},{internalType:"address",name:"user",type:"address"},{internalType:"address",name:"pool",type:"address"},{internalType:"address",name:"pricingAsset",type:"address"}],internalType:"struct PoolLimitOrderManager.LimitOrderInfo",name:"modificationInfo_",type:"tuple"}],name:"modifyLimitOrder",outputs:[],stateMutability:"nonpayable",type:"function"},{inputs:[{internalType:"address",name:"limitOrderSettlementToken_",type:"address"}],name:"setLimitOrderSettlementToken",outputs:[],stateMutability:"nonpayable",type:"function"}],kr={[h.mainnet.id]:{factory:uc,easySwapperV2:xr,aaveLendingPoolV3:mc},[h.polygon.id]:{factory:Sc,aaveLendingPoolV2:Cc,aaveLendingPoolV3:Ec,easySwapperV2:Dr,limitOrder:Nr},[h.optimism.id]:{factory:xc,rewardDistribution:vc,aaveLendingPoolV3:Ac,easySwapperV2:Ir,limitOrder:_r},[h.arbitrum.id]:{factory:yc,aaveLendingPoolV3:wc,easySwapperV2:Ar,limitOrder:Sr},[h.base.id]:{factory:hc,flatcoinPointsModule:gc,easySwapperV2:Cr,aaveLendingPoolV3:bc,limitOrder:Er}},Rr={factory:He,aaveLendingPoolV2:Jn,aaveLendingPoolV3:Jn,rewardDistribution:Pr,poolManagerLogic:De,erc20:D.erc20Abi,poolLogic:be,flatcoinPointsModule:Zt,easySwapperV2:ve,limitOrder:wn},ea="Gas estimate error occurred",Lr="See console logs to report error details.",ta="Missing simulation params",Mr="Simulation timeout",jr="swap_data_deposit_error",Br="swap_data_withdraw_error",ft={title:"Low Slippage",hint:"Please increase slippage tolerance and try again."},$r={"invalid liquidityMinted":ft,"high withdraw slippage":ft,"high deposit slippage":ft,"high swap slippage":ft,InsufficientAmountReceived:ft,SwapFailed:{title:"Swap Failed",hint:"Please refresh the swap quote or choose another swap source in settings and try again."},"assetType not handled":{title:"Single Asset Withdrawal not available",hint:"Please use All Assets option."},[jr]:{title:"Swap Quote Fetching Error",hint:"Please select a different deposit option, refresh the swap quote, or choose another swap source in settings."},[Br]:{title:"Swap Quote Fetching Error",hint:"Please refresh the swap quote, choose another swap source in settings, or claim your assets without a swap."},dh1:{title:"Factory contract is paused",hint:"Try again later or contact the team on Discord if the issue persists."},dh2:{title:"Vault is paused",hint:"Try again later or contact the team on Discord if the issue persists."},dh3:{title:"Vault tokens are in cooldown period",hint:"Wait for the cooldown period to expire and try again."},dh4:{title:"Only vault manager allowed",hint:"Only the vault manager can perform this action."},dh5:{title:"Only allowed addresses can use custom cooldown",hint:"Only whitelisted addresses can perform this action."},dh6:{title:"Invalid cooldown duration",hint:"Cooldown must be between 5 minutes and the maximum exit cooldown."},dh7:{title:"Only whitelisted vault members allowed",hint:"Only the manager or whitelisted members can deposit to this private vault."},dh8:{title:"Asset not supported for deposits",hint:"Use a supported deposit asset."},dh9:{title:"ERC721 tokens not supported as deposit asset",hint:"Use an ERC20 token for deposits."},dh10:{title:"Amount below minimum threshold",hint:"Change amount to meet the minimum threshold."},dh11:{title:"Withdrawal too soon after deposit",hint:"Wait at least one block after deposit before withdrawing."},dh12:{title:"Insufficient balance for withdrawal",hint:"Check if you have enough vault tokens for withdrawal."},dh13:{title:"Liquidity allocation invariant breach",hint:"Contact the team on Discord."},dh14:{title:"Exit fee transfer failed",hint:"Contact the team on Discord."},dh15:{title:"Withdraw asset can not be zero",hint:"Contact the team on Discord."},dh16:{title:"Value calculation mismatch during withdrawal",hint:"Try again later or contact the team on Discord if the issue persists."},dh17:{title:"Supply calculation mismatch during withdrawal",hint:"Try again later or contact the team on Discord if the issue persists."},dh18:{title:"Address can not be zero",hint:"Contact the team on Discord."},dh19:{title:"Asset mismatch in complex asset data",hint:"Contact the team on Discord."},dh20:{title:"Trading is paused for this vault",hint:"Try again later or contact the team on Discord if the issue persists."},dh21:{title:"ERC721 transfer not verified",hint:"If you believe this is a bug, contact the team on Discord."},dh22:{title:"Asset not enabled in vault",hint:"Add the asset to the vault's supported assets."},dh23:{title:"Invalid transaction",hint:"dHEDGE protocol either does not support this action or this is a bug."},dh24:{title:"Unauthorized transaction executor",hint:"Only manager, trader, or public transactions are allowed."},dh25:{title:"Deposit value below minimum USD requirement",hint:"Increase deposit amount to meet the minimum USD value requirement."},dh26:{title:"Withdrawal slippage tolerance exceeded",hint:"Increase slippage tolerance or try again with better market conditions."},dh27:{title:"High withdrawal slippage protection triggered",hint:"Try again with better market conditions or contact the team on Discord if the issue persists."},dh28:{title:"Unauthorized sender",hint:"Only factory or owner can peform this action."},dh29:{title:"Invalid flash loan initiator",hint:"If you believe this is a bug, contact the team on Discord."},dh30:{title:"Invalid flash loan sender",hint:"If you believe this is a bug, contact the team on Discord."},dh31:{title:"Only PoolManagerLogic contract allowed",hint:"If you believe this is a bug, contact the team on Discord."},dh32:{title:"Maximum supply cap reached",hint:"Cannot mint such amount of vault tokens as it would exceed the maximum supply cap."}},Fr="Invalid limit order prices",Wr={InvalidPrices:{title:Fr}},Oc=[...Object.keys($r),...Object.keys(Wr)],U=18,ga={address:"0xff970a61a04b1ca14834a43f5de4533ebddb5cc8",symbol:"USDCe",decimals:6,value:""},le={address:"0xaf88d065e77c8cC2239327C5EDb3A432268e5831",symbol:"USDC",decimals:6,value:""},It={address:"0x82af49447d8a07e3bd95bd0d56f35241523fbab1",symbol:"WETH",decimals:U,value:""},Be={address:"0x2f2a2543b76a4166549f7aab2e75bef0aefc5b0f",symbol:"WBTC",decimals:8,value:""},Pc={address:"0x6c84a8f1c29108F47a79964b5Fe888D4f4D0dE40",symbol:"tBTC",decimals:U,value:""},kc={address:"0x5979D7b546E38E414F7E9822514be443A4800529",symbol:"wstETH",decimals:U,value:""},Rc={address:"0xfd086bc7cd5c481dcc9c85ebe478a1c0b69fcbb9",symbol:"USDT",decimals:6,value:""},Lc={address:"0x2bcC6D6CdBbDC0a4071e48bb3B969b06B3330c07",symbol:"SOL",decimals:9,value:""},Mc={address:"0xa9004a5421372e1d83fb1f85b0fc986c912f91f3",symbol:"WBNB",decimals:U,value:""},jc={address:"0xf97f4df75117a78c1a5a0dbb814af92458539fb4",symbol:"LINK",decimals:U,value:""},Ur={address:"0x833589fcd6edb6e08f4c7c32d4f71b54bda02913",symbol:"USDC",decimals:6,value:""},Bc={address:"0xd9aaec86b65d86f6a7b5b1b0c42ffa531710b6ca",symbol:"USDbC",decimals:6,value:""},fa={address:"0x4200000000000000000000000000000000000006",symbol:"WETH",decimals:U,value:""},$c={address:"0x2ae3f1ec7f1f5012cfeab0185bfc7aa3cf0dec22",symbol:"cbETH",decimals:U,value:""},zr={address:"0xcbb7c0000ab88b473b1f5afd9ef808440eed33bf",symbol:"cbBTC",decimals:8,value:""},Jt={address:"0xb6fe221fe9eef5aba221c348ba20a1bf5e73624c",symbol:"rETH",decimals:U,value:""},Fc={address:"0x236aa50979D5f3De3Bd1Eeb40E81137F22ab794b",symbol:"tBTC",decimals:U,value:""},Wc={address:"0xc1cba3fcea344f92d9239c08c0568f6f2f0ee452",symbol:"wstETH",decimals:U,value:""},Ta={address:"0x7F5c764cBc14f9669B88837ca1490cCa17c31607",symbol:"USDCe",decimals:6,value:""},Hr={address:"0x0b2C639c533813f4Aa9D7837CAf62653d097Ff85",symbol:"USDC",decimals:6,value:""},Gr={address:"0x94b008aa00579c1307b0ef2c499ad98a8ce58e58",symbol:"USDT",decimals:6,value:""},ba={address:"0x4200000000000000000000000000000000000006",symbol:"WETH",decimals:U,value:""},Uc={address:"0x8c6f28f2F1A3C87F0f938b96d27520d9751ec8d9",symbol:"sUSD",decimals:U,value:""},Vr={address:"0xda10009cbd5d07dd0cecc66161fc93d7c9000da1",symbol:"DAI",decimals:U,value:""},Je={address:"0x68f180fcce6836688e9084f035309e29bf0a2095",symbol:"WBTC",decimals:8,value:""},zc={address:"0xe405de8f52ba7559f9df3c368500b6e6ae6cee49",symbol:"sETH",decimals:U,value:""},Hc={address:"0x350a791bfc2c21f9ed5d10980dad2e2638ffa7f6",symbol:"LINK",decimals:U,value:""},Gc={address:"0x6c84a8f1c29108F47a79964b5Fe888D4f4D0dE40",symbol:"tBTC",decimals:U,value:""},Vc={address:"0x1F32b1c2345538c0c6f582fCB022739c4A194Ebb",symbol:"wstETH",decimals:U,value:""},va={address:"0x7ceB23fD6bC0adD59E62ac25578270cFf1b9f619",symbol:"WETH",decimals:U,value:""},xa={address:"0x2791Bca1f2de4661ED88A30C99A7a9449Aa84174",symbol:"USDCe",decimals:6,value:""},qr={address:"0x3c499c542cEF5E3811e1192ce70d8cC03d5c3359",symbol:"USDC",decimals:6,value:""},qc={address:"0x553d3d295e0f695b9228246232edf400ed3560b5",symbol:"PAXG",decimals:U,value:""},Aa={address:"0x1BFD67037B42Cf73acF2047067bd4F2C47D9BfD6",symbol:"WBTC",decimals:8,value:""},Yr={address:"0x0d500B1d8E8eF31E21C99d1Db9A6444d3ADf1270",symbol:"WPOL",decimals:U,value:""},Kr={address:"0xc2132d05d31c914a87c6611c10748aeb04b58e8f",symbol:"USDT",decimals:6,value:""},Qr={address:"0x8f3cf7ad23cd3cadbd9735aff958023239c6a063",symbol:"DAI",decimals:U,value:""},Yc={address:"0x236aa50979d5f3de3bd1eeb40e81137f22ab794b",symbol:"tBTC",decimals:U,value:""},Sa={address:"0xc02aaa39b223fe8d0a0e5c4f27ead9083c756cc2",symbol:"WETH",decimals:U,value:""},Xr={address:"0xa0b86991c6218b36c1d19d4a2e9eb0ce3606eb48",symbol:"USDC",decimals:6,value:""},Ca={address:"0x2260fac5e5542a773aa44fbcfedf7c193bc2c599",symbol:"WBTC",decimals:8,value:""},Zr={address:"0xdac17f958d2ee523a2206206994597c13d831ec7",symbol:"USDT",decimals:6,value:""},Kc={address:"0x68749665ff8d2d112fa859aa293f07a622782f38",symbol:"XAUt",decimals:6,value:""},sn={address:ha,symbol:"all",decimals:U,value:""},Ea={[ga.address.toLowerCase()]:"USDCe",[Ta.address.toLowerCase()]:"USDCe",[xa.address.toLowerCase()]:"USDCe"},Jr={[h.mainnet.id]:Sa,[h.optimism.id]:ba,[h.base.id]:fa,[h.polygon.id]:va,[h.arbitrum.id]:It},eo={[h.optimism.id]:Je,[h.base.id]:zr,[h.polygon.id]:Aa,[h.arbitrum.id]:Be,[h.mainnet.id]:Ca},Qc={[h.optimism.id]:{WETH:ba,USDC:Hr,WBTC:Je,USDCe:Ta,USDT:Gr,DAI:Vr},[h.polygon.id]:{WMATIC:Yr,WETH:va,USDC:qr,WBTC:Aa,USDCe:xa,USDT:Kr,DAI:Qr},[h.arbitrum.id]:{WETH:It,USDC:le,WBTC:Be,USDCe:ga},[h.base.id]:{WETH:fa,USDC:Ur},[h.mainnet.id]:{WETH:Sa,USDC:Xr,WBTC:Ca,USDT:Zr}},Xc="https://hermes.pyth.network",Zc="https://flat.money/flatcoin",Jc="https://v1.flat.money/flatcoin",en={RETH_BASE:"0xdb0cd65dcc7fe07003ce1201f91e1f966fa95768",WBTC_OPTIMISM:"0x6d857e9d24a7566bb72a3fb0847a3e0e4e1c2879",WBTC_ARBITRUM:"0xb1353d51991e79fefd4bfdba2a03e9f0232814a6"},ed=Object.values(en),td={[en.RETH_BASE]:{symbol:Jt.symbol,decimals:Jt.decimals,address:Jt.address},[en.WBTC_OPTIMISM]:{symbol:Je.symbol,decimals:Je.decimals,address:Je.address},[en.WBTC_ARBITRUM]:{symbol:Be.symbol,decimals:Be.decimals,address:Be.address}},to="0xb95fb324b8a2faf8ec4f76e3df46c718402736e2",no=[to,"0x357cb23571ef7a3d6189b7facfc361ea71f7cab5"],nd={[h.base.id]:2e3,[h.mainnet.id]:300,[h.optimism.id]:300,[h.arbitrum.id]:300,[h.polygon.id]:300},Ie={DEPOSIT:"deposit",DEPOSIT_CUSTOM:"depositWithCustomCooldown",NATIVE:"nativeDeposit",NATIVE_CUSTOM:"nativeDepositWithCustomCooldown",ZAP_NATIVE_DEPOSIT:"zapNativeDeposit",ZAP_NATIVE_DEPOSIT_CUSTOM:"zapNativeDepositWithCustomCooldown",ZAP_DEPOSIT:"zapDeposit",ZAP_DEPOSIT_CUSTOM:"zapDepositWithCustomCooldown"},Ia=["multi_withdraw","swap","claim","single_withdraw_and_claim"],ae={SOL_ARBITRUM:"0x09400d9db990d5ed3f35d7be61dfaeb900af03c9",BTC_ARBITRUM:"0x47c031236e19d024b42f8ae6780e44a573170703",WETH_WETH_ARBITRUM:"0x70d95587d40a2caf56bd97485ab3eec10bee6336",WETH_USDC_ARBITRUM:"0x450bb6774dd8a756274e0ab4107953259d2ac541",SUI_ARBITRUM:"0x6ecf2133e2c9751caadcb6958b9654bae198a797",DOGE_ARBITRUM:"0x6853ea96ff216fab11d2d930ce3c508556a4bdc4",XRP_ARBITRUM:"0x0ccb4faa6f1f1b30911619f1184082ab4e25813c",CRV_ARBITRUM:"0x0e46941f9bff8d0784bffa3d0d7883cdb82d7ae7",HYPE_ARBITRUM:"0xbcb8fe13d02b023e8f94f6881cc0192fd918a5c0",BNB_ARBITRUM:"0x2d340912aa47e33c90efb078e69e70efe2b34b9b",BNB_WBTC_USDC_ARBITRUM:"0x065577D05c3D4C11505ed7bc97BBF85d462A6A6f",LINK_ARBITRUM:"0x7f1fa204bb700853d36994da19f830b6ad18455c",PUMP_ARBITRUM:"0x4c0bb704529fa49a26bd854802d70206982c6f1b"},ao=Object.values(ae),ad={[ae.SOL_ARBITRUM]:le,[ae.BTC_ARBITRUM]:Be,[ae.WETH_WETH_ARBITRUM]:It,[ae.WETH_USDC_ARBITRUM]:It,[ae.SUI_ARBITRUM]:le,[ae.DOGE_ARBITRUM]:le,[ae.XRP_ARBITRUM]:le,[ae.CRV_ARBITRUM]:le,[ae.HYPE_ARBITRUM]:le,[ae.BNB_ARBITRUM]:le,[ae.LINK_ARBITRUM]:le,[ae.PUMP_ARBITRUM]:le,[ae.BNB_WBTC_USDC_ARBITRUM]:le},sd={"0x9a916e55f5b67226734cd7b465d51bce1d11a89a":le},Ct={IS_BATCH_TRANSACTIONS_ENABLED:"isBatchTransactionsEnabled",REFERRER:"referrer",REF_POOL:"ref_pool"},rd=()=>typeof window<"u";function od(){return rd()&&typeof window.ethereum<"u"}async function id(e){try{if(od())return window.ethereum.request({method:"wallet_watchAsset",params:{type:"ERC20",options:e}})}catch{return!1}return!1}const H=(e,t)=>e?.toLowerCase()===t?.toLowerCase(),ee=e=>H(e,ha),z=(e,t)=>kr[t]?.[e]??_,so=e=>Rr[e],ro=e=>e&&`${e.substring(0,6)}...${e.substring(e.length-4,e.length)}`,na=({address:e,chainId:t})=>{const n=z("aaveLendingPoolV3",t);return H(e,n)},oo=({sourceAddress:e,amount:t})=>`${e}_${t}`,io=(e,t)=>{const n=e.slice(0,t),a=e.slice(t);return{firstPart:n,secondPart:a}},Ne=(e,t)=>e/t*100,_t=e=>e<1?4:e<10?3:2,rn=(e,t=O)=>new T(e.toString()).shiftedBy(t).toFixed(0),aa=(e,t,n,a)=>new T(t).dividedBy(n).multipliedBy(e).shiftedBy(-(a||O)).toNumber(),lo=e=>BigInt(new T(e||"0").shiftedBy(O).toFixed(0,T.ROUND_DOWN)),_a=e=>{const t=new T(.01),n=new T(e),a=!n.isZero()&&n.lt(t)?t:n;return BigInt(a.multipliedBy(100).toFixed(0))},hs=({vaultAddress:e,swapData:t,sendTokenAddress:n,sendTokenAmount:a,vaultDepositTokenAddress:s,minVaultTokensReceivedAmount:o,routerKey:i="ONE_INCH",swapDestinationAmount:l,swapSlippage:c})=>{const d=new T(l).multipliedBy(1-c/100).toFixed(0),p=[D.stringToHex(i,{size:32}),t];return[e,[[n,a,p],[s,d]],o]},ld=({receiveAssetAddress:e,assets:t,swapData:n})=>{const a={srcData:[],destAmount:new T("0")},{srcData:s}=t?.reduce((o,i)=>{const l=n?.[i.address];if(!l)return o;const c=[D.stringToHex(l.routerKey,{size:32}),l.rawTransaction.data],d=[i.address,i.rawBalance,c];return{srcData:[...o.srcData,d],destAmount:o.destAmount.plus(l.destinationAmount)}},a)??a;return[s,[e,"0"]]},cd=({assetAddress:e,swapQuotes:t,swapParams:n,slippageToleranceForContractTransaction:a,routerKey:s})=>{if(!n)return{supportedAsset:e,withdrawData:"",slippageTolerance:BigInt(0)};const{srcData:o,dstData:i}=n,l=o.map(({asset:p,amount:m})=>{const y=t?.[oo({sourceAddress:p,amount:m.toString()})]?.find(w=>w.routerKey===s);return{asset:p,amount:m,swapData:{routerKey:D.stringToHex(y?.routerKey??"",{size:32}),txData:y?.rawTransaction.data??"0x"}}}),c=D.encodeAbiParameters(_c,[l]),d=D.encodeAbiParameters(Dc,[{encodedSrcData:c,dstData:{dstAddress:i.asset,dstAmount:i.amount},slippage:a}]);return{supportedAsset:e,withdrawData:d,slippageTolerance:a}},hn=(e,t)=>Ze[t]?.nativeTokenSymbol===e,co=({nativeTokenBalance:e,tokenDecimals:t,gasPrice:n})=>{const a=new T(n).multipliedBy(gr).shiftedBy(-t),s=new T(e).minus(a);return s.gt("0")?s:new T("0")},po=e=>cc.includes(e),dd=e=>{const t=Object.values(e).reduce((n,{type:a})=>(n[a]=n[a]+1,n),{string:0,number:0});if(t.string>10)throw new Error("logger params must contain up to 10 string values");if(t.number>40)throw new Error("logger params must contain up to 40 numeric values");return!0},pd=(e,t=150)=>e.length>t?e.substring(0,t):e,gs=(e,t=Oc)=>{const n=e.toLowerCase();return t.sort((a,s)=>s.length-a.length).find(a=>n.includes(a.toLowerCase()))},fs=e=>$r[e]??Wr[e],uo=({errorMessage:e,abiErrors:t})=>{if(!e||e.includes("User rejected"))return null;const n=t.find(o=>e.includes(o));if(n&&gs(n))return fs(n);const a=gs(e);if(a)return fs(a);const[s]=e.split(n?".":"Contract").map(o=>o.trim());return{title:"Transaction failed",hint:`${pd(s??"")} ${n?`: ${n}`:""}`}},ud=e=>typeof e=="bigint"&&e!==BigInt(0),Fe=(e,t=U)=>new T(e).shiftedBy(-t).toNumber(),mo=e=>!isNaN(parseFloat(e))&&!isNaN(e),te=({value:e,minimumFractionDigits:t=2,maximumFractionDigits:n=2,compact:a=!1,normalize:s=!1})=>new Intl.NumberFormat("en-US",{style:"currency",currency:"USD",notation:a?"compact":void 0,minimumFractionDigits:t,maximumFractionDigits:n}).format(s?Fe(e):Number(e)),sa=e=>mo(e)?new T(e).toFixed():"",Ts=["₀","₁","₂","₃","₄","₅","₆","₇","₈","₉"],Ge=({value:e,decimals:t})=>{const n=new T(e);if(n.isGreaterThan(1)||n.isZero())return sa(n.toFixed(t));const s=(/e/i.test(e.toString())?parseFloat(e.toString()).toFixed(U):e.toString()).match(/^0\.(0+)(\d+)$/);if(s){const[,o,i]=s;if(o.length>=t&&o.length<Ts.length)return`0.0${Ts[o.length]}${i.slice(0,3)}`}return sa(n.toFixed(t))},Ot=(e,t=0)=>`${e.toLocaleString("en-US",{maximumFractionDigits:t})}%`,md=e=>e.toString().replace(/\B(?=(\d{3})+(?!\d))/g,","),xt=(e,t,n=0)=>{const a=Ne(+e,t);return Ot(a,n)},tn=({currency:e,value:t})=>e==="USD"?te({value:t}):`${vr[e]} ${Ge({value:t,decimals:lc[e]})}`,yd=(e,t)=>new T(new T(e).toFixed(t,T.ROUND_DOWN)).toString(),wd=(e,t=3,n=2)=>{if(e.length<=5)return e;const a="...";return e.length<=t+n+a.length?e:`${e.slice(0,t)}${a}${e.slice(-n)}`},yo=({balance:e,symbol:t,precision:n,truncateSymbol:a})=>`${yd(e,n)} ${wd(t)}`,wo=e=>{if(!e)return;const t=e.match(/0x[a-fA-F0-9]{64}/);if(!t)return;const n=t[0];return`${n.slice(0,4)}...${n.slice(-3)}`},gn=typeof window<"u",ho=e=>H(fc,e)||H(Tc,e),go=e=>ed.some(t=>H(t,e)),fo=e=>td[e.toLowerCase()]??{symbol:"",decimals:18,address:_},hd=e=>H(e,to)?Jc:Zc,Da=e=>`eth_${e}`,gd=({action:e,log:t,symbol:n,vaultAddress:a,chainId:s})=>{const o={[Te.SYMBOL.NAME]:n,[Te.CHAIN_ID.NAME]:s,[Te.ADDRESS.NAME]:Da(a)};dc[e].forEach(i=>{t?.(i,o)})},fd=e=>ao.some(t=>H(t,e)),Td=e=>ad[e.toLowerCase()]??{symbol:"",decimals:18,address:_},bd=e=>sd[e.toLowerCase()];function vd(){if(gn)try{const e=localStorage.getItem(Ct.IS_BATCH_TRANSACTIONS_ENABLED);return e?JSON.parse(e):void 0}catch{return}}function xd(e){if(gn)try{localStorage.setItem(Ct.IS_BATCH_TRANSACTIONS_ENABLED,JSON.stringify(e))}catch(t){console.error("[core-kit]: Failed to persist batch transactions setting",t)}}const Ad=e=>{const t=e.find(({swapQuotes:n})=>n);return t?.swapQuotes?Object.values(t.swapQuotes)[0]?.map(({routerKey:n})=>n)??[]:[]},Sd=(e,t,n)=>e.map(({asset:a,swapParams:s,swapQuotes:o})=>!s||!o?{supportedAsset:a,withdrawData:"",slippageTolerance:n}:cd({assetAddress:a,swapQuotes:o,swapParams:s,slippageToleranceForContractTransaction:n,routerKey:t})),Cd=async(e,t,n,a,s)=>{for(const o of e){const i=Sd(t,o,n),{error:l}=await a(...s,i);if(!l)return i}return null},bs=(e,t)=>(e??[]).map(n=>({supportedAsset:n,withdrawData:"",slippageTolerance:t})),Ed=async(e,t,{fetchAaveSwapParams:n,fetchAaveSwapQuotes:a,withdrawAmountD18:s,slippage:o})=>Promise.all((e??[]).map(async i=>{if(!H(i,t))return{asset:i};try{const c=await n({withdrawAmountD18:s,slippage:o});if(c?.srcData.length){const d=await a({swapParams:c,slippage:o});return{asset:i,swapParams:c,swapQuotes:d}}return{asset:i}}catch(c){return console.error(c),{asset:i}}}));function Z(){}const vs={address:_,symbol:"",decimals:O,value:""},To=e=>{const t=e?.poolAddress??_,n={address:t,symbol:e?.poolConfigMap?.[t]?.symbol??"",decimals:O,value:""},a=e?.type??"deposit",s=a==="deposit"?vs:n,o=a==="deposit"?n:vs;return{poolAddress:t,poolConfigMap:{...e?.poolConfigMap},settings:{slippage:"auto",isInfiniteAllowance:!1,isMultiAssetWithdrawalEnabled:!0,isMaxSlippageLoading:!1,availableAggregators:[],...e?.settings,isBatchTransactionsEnabled:vd()??e?.settings?.isBatchTransactionsEnabled??!1,selectedAggregators:e?.settings?.selectedAggregators??e?.settings?.availableAggregators??[]},type:a,input:{sendToken:{...s,...e?.input?.sendToken},receiveToken:{...o,...e?.input?.receiveToken}},modal:{isOpen:!1,status:"None",receiveTokens:null,sendTokens:null,...e?.modal},stepper:null,transactions:e?.transactions??[],poolFallbackData:{address:_,...e?.poolFallbackData},customDepositTokensPerChain:e?.customDepositTokensPerChain,defaultChainId:e?.defaultChainId}},bo=u.createContext({...To({poolAddress:_,poolConfigMap:{}})}),vo=u.createContext({setPoolAddress:Z,setTradingType:Z,updateSendTokenInput:Z,updateReceiveTokenInput:Z,updateTradingSettings:Z,updateTradingModal:Z,updateStepper:Z,updateTransactions:Z,updatePoolFallbackData:Z,updateCustomDepositTokensPerChain:Z,onTradingSettleError:Z,onTransactionError:Z,onTransactionSuccess:Z,onTransactionEstimationError:Z,onTokenSelector:Z,onLog:Z,onSimulateTransaction:()=>Promise.resolve(null),getSwapQuotes:()=>Promise.resolve(null),updatePoolConfig:Z,addPoolConfig:Z}),Id=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_STEPPER":return{...t,stepper:n.payload===null?null:{...t.stepper,...n.payload}};case"UPDATE_POOL_FALLBACK_DATA":return{...t,poolFallbackData:n.payload};case"UPDATE_POOL_CONFIG":return{...t,poolConfigMap:{...t.poolConfigMap,...Object.entries(n.payload).filter(([a])=>!!t.poolConfigMap?.[a]).reduce((a,[s,o])=>({...a,[s]:{...t.poolConfigMap?.[s],...o}}),t.poolConfigMap)}};case"UPDATE_CUSTOM_DEPOSIT_TOKENS_PER_CHAIN":return{...t,customDepositTokensPerChain:{...t.customDepositTokensPerChain??{},...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 a=t.transactions.find(o=>o.txHash===n.payload.txHash);return n.payload.status==="success"&&a&&gd({action:a.action,log:e,symbol:a.symbol,chainId:a.chainId,vaultAddress:t.poolAddress}),{...t,transactions:n.payload.txHash?t.transactions.filter(o=>o.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:o})=>o===n.payload.txHash),0);return{...t,transactions:t.transactions.map((o,i)=>i===s?{...o,...n.payload}:o)}}break;default:return t}},_d=({children:e,initialState:t,actions:{onSetPoolAddress:n,onUpdateSendTokenInput:a,onUpdateReceiveTokenInput:s,onUpdateTradingSettings:o,onSetTradingType:i,onUpdateTradingModal:l,onUpdateTransactions:c,onTransactionError:d,onTransactionSuccess:p,onTransactionEstimationError:m,onTokenSelector:y,onLog:w,onSimulateTransaction:f,onTradingSettleError:g,getSwapQuotes:v}})=>{const[S,I]=u.useReducer(Id(w),To(t)),k=u.useCallback(j=>{I({type:"SET_POOL_ADDRESS",payload:j}),n?.(j)},[n]),M=u.useCallback(j=>{I({type:"UPDATE_SEND_TOKEN_INPUT",payload:j}),a?.(j)},[a]),ne=u.useCallback(j=>{I({type:"UPDATE_RECEIVE_TOKEN_INPUT",payload:j}),s?.(j)},[s]),Ae=u.useCallback(j=>{I({type:"UPDATE_TRADING_SETTINGS",payload:j}),o?.(j)},[o]),Xe=u.useCallback(j=>{I({type:"SET_TRADING_TYPE",payload:j}),i?.(j)},[i]),Gt=u.useCallback(j=>{I({type:"UPDATE_TRADING_MODAL",payload:j}),l?.(j)},[l]),Vt=u.useCallback(j=>{I({type:"UPDATE_STEPPER",payload:j})},[]),ht=u.useCallback(j=>{I({type:"UPDATE_TRADING_TRANSACTIONS",payload:j}),c?.(j)},[c]),us=u.useCallback(j=>{I({type:"UPDATE_POOL_FALLBACK_DATA",payload:j})},[]),ms=u.useCallback(j=>{I({type:"UPDATE_CUSTOM_DEPOSIT_TOKENS_PER_CHAIN",payload:j})},[]),ys=u.useCallback(j=>{I({type:"UPDATE_POOL_CONFIG",payload:j})},[]),ws=u.useCallback(j=>{I({type:"ADD_POOL_CONFIG",payload:j})},[]),Gl=u.useMemo(()=>({setPoolAddress:k,setTradingType:Xe,updateTradingSettings:Ae,updateSendTokenInput:M,updateReceiveTokenInput:ne,updateTradingModal:Gt,updateStepper:Vt,updateTransactions:ht,updatePoolFallbackData:us,updateCustomDepositTokensPerChain:ms,onTransactionError:d,onTransactionSuccess:p,onTransactionEstimationError:m,onTokenSelector:y,onLog:w,onSimulateTransaction:f,onTradingSettleError:g,getSwapQuotes:v,updatePoolConfig:ys,addPoolConfig:ws}),[k,Xe,Ae,M,ne,Gt,Vt,ht,us,ms,d,p,m,y,w,f,g,v,ys,ws]);return r.jsx(vo.Provider,{value:Gl,children:r.jsx(bo.Provider,{value:S,children:e})})},J=()=>u.useContext(bo),F=()=>u.useContext(vo),Dd=()=>F().setPoolAddress,Nd=()=>F().updateSendTokenInput,Od=()=>F().updateReceiveTokenInput,Pd=()=>F().updateTradingSettings,kd=()=>F().setTradingType,Rd=()=>F().updateTradingModal,xo=()=>F().updatePoolFallbackData,Ao=()=>F().onTransactionError,So=()=>F().onTradingSettleError,Co=()=>F().onTransactionSuccess,fn=()=>F().onTransactionEstimationError,Eo=()=>F().onTokenSelector,Ve=()=>F().onLog,Io=()=>F().onSimulateTransaction,Na=()=>{const e=F().getSwapQuotes,{settings:{selectedAggregators:t}}=J();return u.useCallback(({signal:n,variables:a})=>e({signal:n,variables:{...a,...!!t.length&&{aggregators:t}}}),[e,t])},Ld=()=>F().updatePoolConfig,Md=()=>F().addPoolConfig,jd=()=>F().updateCustomDepositTokensPerChain,_o=()=>[J().poolAddress,F().setPoolAddress],b=()=>{const{poolAddress:e,poolConfigMap:t}=J();return t[e]??ur},at=()=>{const{poolConfigMap:e}=J();return u.useMemo(()=>Object.values(e),[e])},Bd=e=>{const t=at();return u.useMemo(()=>t.some(n=>n.address===e),[t,e])},qe=()=>{const{poolFallbackData:e,poolAddress:t}=J(),n=xo();return[e.address===t?e:{address:t},n]},Do=()=>J().input,N=()=>[Do().sendToken,F().updateSendTokenInput],P=()=>[Do().receiveToken,F().updateReceiveTokenInput],Q=()=>[J().settings,F().updateTradingSettings],No=()=>[J().customDepositTokensPerChain,F().updateCustomDepositTokensPerChain],K=()=>[J().modal,F().updateTradingModal],Oo=()=>[J().stepper,F().updateStepper],we=()=>[J().type,F().setTradingType],Oe=()=>J().type==="deposit",re=()=>[J().transactions,F().updateTransactions],$d=()=>J().defaultChainId,Bn=(e,t)=>t.some(({id:n})=>n===e),Ce=()=>{const{chain:e}=E.useAccount(),{chains:t}=E.useConfig(),{switchChain:n,switchChainAsync:a}=E.useSwitchChain(),s=$d(),o=e?.id,i=Bn(o,t),l=s&&Bn(s,t)?s:t[0].id;return{chain:e,isSupported:i,switchNetwork:n,switchNetworkAsync:a,chainId:i?o:void 0,supportedChainId:Bn(o,t)?o:l,chains:t}},Tn=({tokenAddress:e,ownerAddress:t,spenderAddress:n,chainId:a,skip:s})=>E.useReadContract({address:e,abi:D.erc20Abi,functionName:"allowance",args:[t,n],chainId:a,query:{enabled:!s,refetchInterval:nt}}),Fd=()=>{const{account:e}=B(),[t,n]=u.useState(!1);return u.useEffect(()=>{n(!!e)},[e]),t},Oa=e=>E.useBalance({...e,query:{...e?.query,staleTime:nt}});var qt=typeof globalThis<"u"?globalThis:typeof window<"u"?window:typeof global<"u"?global:typeof self<"u"?self:{};function bn(e){return e&&e.__esModule&&Object.prototype.hasOwnProperty.call(e,"default")?e.default:e}function Wd(){this.__data__=[],this.size=0}var Ud=Wd;function zd(e,t){return e===t||e!==e&&t!==t}var Pa=zd,Hd=Pa;function Gd(e,t){for(var n=e.length;n--;)if(Hd(e[n][0],t))return n;return-1}var vn=Gd,Vd=vn,qd=Array.prototype,Yd=qd.splice;function Kd(e){var t=this.__data__,n=Vd(t,e);if(n<0)return!1;var a=t.length-1;return n==a?t.pop():Yd.call(t,n,1),--this.size,!0}var Qd=Kd,Xd=vn;function Zd(e){var t=this.__data__,n=Xd(t,e);return n<0?void 0:t[n][1]}var Jd=Zd,ep=vn;function tp(e){return ep(this.__data__,e)>-1}var np=tp,ap=vn;function sp(e,t){var n=this.__data__,a=ap(n,e);return a<0?(++this.size,n.push([e,t])):n[a][1]=t,this}var rp=sp,op=Ud,ip=Qd,lp=Jd,cp=np,dp=rp;function st(e){var t=-1,n=e==null?0:e.length;for(this.clear();++t<n;){var a=e[t];this.set(a[0],a[1])}}st.prototype.clear=op;st.prototype.delete=ip;st.prototype.get=lp;st.prototype.has=cp;st.prototype.set=dp;var xn=st,pp=xn;function up(){this.__data__=new pp,this.size=0}var mp=up;function yp(e){var t=this.__data__,n=t.delete(e);return this.size=t.size,n}var wp=yp;function hp(e){return this.__data__.get(e)}var gp=hp;function fp(e){return this.__data__.has(e)}var Tp=fp,bp=typeof qt=="object"&&qt&&qt.Object===Object&&qt,Po=bp,vp=Po,xp=typeof self=="object"&&self&&self.Object===Object&&self,Ap=vp||xp||Function("return this")(),Ee=Ap,Sp=Ee,Cp=Sp.Symbol,An=Cp,xs=An,ko=Object.prototype,Ep=ko.hasOwnProperty,Ip=ko.toString,Tt=xs?xs.toStringTag:void 0;function _p(e){var t=Ep.call(e,Tt),n=e[Tt];try{e[Tt]=void 0;var a=!0}catch{}var s=Ip.call(e);return a&&(t?e[Tt]=n:delete e[Tt]),s}var Dp=_p,Np=Object.prototype,Op=Np.toString;function Pp(e){return Op.call(e)}var kp=Pp,As=An,Rp=Dp,Lp=kp,Mp="[object Null]",jp="[object Undefined]",Ss=As?As.toStringTag:void 0;function Bp(e){return e==null?e===void 0?jp:Mp:Ss&&Ss in Object(e)?Rp(e):Lp(e)}var rt=Bp;function $p(e){var t=typeof e;return e!=null&&(t=="object"||t=="function")}var Pt=$p,Fp=rt,Wp=Pt,Up="[object AsyncFunction]",zp="[object Function]",Hp="[object GeneratorFunction]",Gp="[object Proxy]";function Vp(e){if(!Wp(e))return!1;var t=Fp(e);return t==zp||t==Hp||t==Up||t==Gp}var Ro=Vp,qp=Ee,Yp=qp["__core-js_shared__"],Kp=Yp,$n=Kp,Cs=function(){var e=/[^.]+$/.exec($n&&$n.keys&&$n.keys.IE_PROTO||"");return e?"Symbol(src)_1."+e:""}();function Qp(e){return!!Cs&&Cs in e}var Xp=Qp,Zp=Function.prototype,Jp=Zp.toString;function eu(e){if(e!=null){try{return Jp.call(e)}catch{}try{return e+""}catch{}}return""}var Lo=eu,tu=Ro,nu=Xp,au=Pt,su=Lo,ru=/[\\^$.*+?()[\]{}|]/g,ou=/^\[object .+?Constructor\]$/,iu=Function.prototype,lu=Object.prototype,cu=iu.toString,du=lu.hasOwnProperty,pu=RegExp("^"+cu.call(du).replace(ru,"\\$&").replace(/hasOwnProperty|(function).*?(?=\\\()| for .+?(?=\\\])/g,"$1.*?")+"$");function uu(e){if(!au(e)||nu(e))return!1;var t=tu(e)?pu:ou;return t.test(su(e))}var mu=uu;function yu(e,t){return e?.[t]}var wu=yu,hu=mu,gu=wu;function fu(e,t){var n=gu(e,t);return hu(n)?n:void 0}var ot=fu,Tu=ot,bu=Ee,vu=Tu(bu,"Map"),ka=vu,xu=ot,Au=xu(Object,"create"),Sn=Au,Es=Sn;function Su(){this.__data__=Es?Es(null):{},this.size=0}var Cu=Su;function Eu(e){var t=this.has(e)&&delete this.__data__[e];return this.size-=t?1:0,t}var Iu=Eu,_u=Sn,Du="__lodash_hash_undefined__",Nu=Object.prototype,Ou=Nu.hasOwnProperty;function Pu(e){var t=this.__data__;if(_u){var n=t[e];return n===Du?void 0:n}return Ou.call(t,e)?t[e]:void 0}var ku=Pu,Ru=Sn,Lu=Object.prototype,Mu=Lu.hasOwnProperty;function ju(e){var t=this.__data__;return Ru?t[e]!==void 0:Mu.call(t,e)}var Bu=ju,$u=Sn,Fu="__lodash_hash_undefined__";function Wu(e,t){var n=this.__data__;return this.size+=this.has(e)?0:1,n[e]=$u&&t===void 0?Fu:t,this}var Uu=Wu,zu=Cu,Hu=Iu,Gu=ku,Vu=Bu,qu=Uu;function it(e){var t=-1,n=e==null?0:e.length;for(this.clear();++t<n;){var a=e[t];this.set(a[0],a[1])}}it.prototype.clear=zu;it.prototype.delete=Hu;it.prototype.get=Gu;it.prototype.has=Vu;it.prototype.set=qu;var Yu=it,Is=Yu,Ku=xn,Qu=ka;function Xu(){this.size=0,this.__data__={hash:new Is,map:new(Qu||Ku),string:new Is}}var Zu=Xu;function Ju(e){var t=typeof e;return t=="string"||t=="number"||t=="symbol"||t=="boolean"?e!=="__proto__":e===null}var em=Ju,tm=em;function nm(e,t){var n=e.__data__;return tm(t)?n[typeof t=="string"?"string":"hash"]:n.map}var Cn=nm,am=Cn;function sm(e){var t=am(this,e).delete(e);return this.size-=t?1:0,t}var rm=sm,om=Cn;function im(e){return om(this,e).get(e)}var lm=im,cm=Cn;function dm(e){return cm(this,e).has(e)}var pm=dm,um=Cn;function mm(e,t){var n=um(this,e),a=n.size;return n.set(e,t),this.size+=n.size==a?0:1,this}var ym=mm,wm=Zu,hm=rm,gm=lm,fm=pm,Tm=ym;function lt(e){var t=-1,n=e==null?0:e.length;for(this.clear();++t<n;){var a=e[t];this.set(a[0],a[1])}}lt.prototype.clear=wm;lt.prototype.delete=hm;lt.prototype.get=gm;lt.prototype.has=fm;lt.prototype.set=Tm;var Ra=lt,bm=xn,vm=ka,xm=Ra,Am=200;function Sm(e,t){var n=this.__data__;if(n instanceof bm){var a=n.__data__;if(!vm||a.length<Am-1)return a.push([e,t]),this.size=++n.size,this;n=this.__data__=new xm(a)}return n.set(e,t),this.size=n.size,this}var Cm=Sm,Em=xn,Im=mp,_m=wp,Dm=gp,Nm=Tp,Om=Cm;function ct(e){var t=this.__data__=new Em(e);this.size=t.size}ct.prototype.clear=Im;ct.prototype.delete=_m;ct.prototype.get=Dm;ct.prototype.has=Nm;ct.prototype.set=Om;var Mo=ct,Pm="__lodash_hash_undefined__";function km(e){return this.__data__.set(e,Pm),this}var Rm=km;function Lm(e){return this.__data__.has(e)}var Mm=Lm,jm=Ra,Bm=Rm,$m=Mm;function on(e){var t=-1,n=e==null?0:e.length;for(this.__data__=new jm;++t<n;)this.add(e[t])}on.prototype.add=on.prototype.push=Bm;on.prototype.has=$m;var jo=on;function Fm(e,t){for(var n=-1,a=e==null?0:e.length;++n<a;)if(t(e[n],n,e))return!0;return!1}var Wm=Fm;function Um(e,t){return e.has(t)}var Bo=Um,zm=jo,Hm=Wm,Gm=Bo,Vm=1,qm=2;function Ym(e,t,n,a,s,o){var i=n&Vm,l=e.length,c=t.length;if(l!=c&&!(i&&c>l))return!1;var d=o.get(e),p=o.get(t);if(d&&p)return d==t&&p==e;var m=-1,y=!0,w=n&qm?new zm:void 0;for(o.set(e,t),o.set(t,e);++m<l;){var f=e[m],g=t[m];if(a)var v=i?a(g,f,m,t,e,o):a(f,g,m,e,t,o);if(v!==void 0){if(v)continue;y=!1;break}if(w){if(!Hm(t,function(S,I){if(!Gm(w,I)&&(f===S||s(f,S,n,a,o)))return w.push(I)})){y=!1;break}}else if(!(f===g||s(f,g,n,a,o))){y=!1;break}}return o.delete(e),o.delete(t),y}var $o=Ym,Km=Ee,Qm=Km.Uint8Array,Xm=Qm;function Zm(e){var t=-1,n=Array(e.size);return e.forEach(function(a,s){n[++t]=[s,a]}),n}var Jm=Zm;function ey(e){var t=-1,n=Array(e.size);return e.forEach(function(a){n[++t]=a}),n}var La=ey,_s=An,Ds=Xm,ty=Pa,ny=$o,ay=Jm,sy=La,ry=1,oy=2,iy="[object Boolean]",ly="[object Date]",cy="[object Error]",dy="[object Map]",py="[object Number]",uy="[object RegExp]",my="[object Set]",yy="[object String]",wy="[object Symbol]",hy="[object ArrayBuffer]",gy="[object DataView]",Ns=_s?_s.prototype:void 0,Fn=Ns?Ns.valueOf:void 0;function fy(e,t,n,a,s,o,i){switch(n){case gy:if(e.byteLength!=t.byteLength||e.byteOffset!=t.byteOffset)return!1;e=e.buffer,t=t.buffer;case hy:return!(e.byteLength!=t.byteLength||!o(new Ds(e),new Ds(t)));case iy:case ly:case py:return ty(+e,+t);case cy:return e.name==t.name&&e.message==t.message;case uy:case yy:return e==t+"";case dy:var l=ay;case my:var c=a&ry;if(l||(l=sy),e.size!=t.size&&!c)return!1;var d=i.get(e);if(d)return d==t;a|=oy,i.set(e,t);var p=ny(l(e),l(t),a,s,o,i);return i.delete(e),p;case wy:if(Fn)return Fn.call(e)==Fn.call(t)}return!1}var Ty=fy;function by(e,t){for(var n=-1,a=t.length,s=e.length;++n<a;)e[s+n]=t[n];return e}var vy=by,xy=Array.isArray,Pe=xy,Ay=vy,Sy=Pe;function Cy(e,t,n){var a=t(e);return Sy(e)?a:Ay(a,n(e))}var Ey=Cy;function Iy(e,t){for(var n=-1,a=e==null?0:e.length,s=0,o=[];++n<a;){var i=e[n];t(i,n,e)&&(o[s++]=i)}return o}var _y=Iy;function Dy(){return[]}var Ny=Dy,Oy=_y,Py=Ny,ky=Object.prototype,Ry=ky.propertyIsEnumerable,Os=Object.getOwnPropertySymbols,Ly=Os?function(e){return e==null?[]:(e=Object(e),Oy(Os(e),function(t){return Ry.call(e,t)}))}:Py,My=Ly;function jy(e,t){for(var n=-1,a=Array(e);++n<e;)a[n]=t(n);return a}var By=jy;function $y(e){return e!=null&&typeof e=="object"}var dt=$y,Fy=rt,Wy=dt,Uy="[object Arguments]";function zy(e){return Wy(e)&&Fy(e)==Uy}var Hy=zy,Ps=Hy,Gy=dt,Fo=Object.prototype,Vy=Fo.hasOwnProperty,qy=Fo.propertyIsEnumerable,Yy=Ps(function(){return arguments}())?Ps:function(e){return Gy(e)&&Vy.call(e,"callee")&&!qy.call(e,"callee")},Wo=Yy,ln={exports:{}};function Ky(){return!1}var Qy=Ky;ln.exports;(function(e,t){var n=Ee,a=Qy,s=t&&!t.nodeType&&t,o=s&&!0&&e&&!e.nodeType&&e,i=o&&o.exports===s,l=i?n.Buffer:void 0,c=l?l.isBuffer:void 0,d=c||a;e.exports=d})(ln,ln.exports);var Uo=ln.exports,Xy=9007199254740991,Zy=/^(?:0|[1-9]\d*)$/;function Jy(e,t){var n=typeof e;return t=t??Xy,!!t&&(n=="number"||n!="symbol"&&Zy.test(e))&&e>-1&&e%1==0&&e<t}var Ma=Jy,ew=9007199254740991;function tw(e){return typeof e=="number"&&e>-1&&e%1==0&&e<=ew}var ja=tw,nw=rt,aw=ja,sw=dt,rw="[object Arguments]",ow="[object Array]",iw="[object Boolean]",lw="[object Date]",cw="[object Error]",dw="[object Function]",pw="[object Map]",uw="[object Number]",mw="[object Object]",yw="[object RegExp]",ww="[object Set]",hw="[object String]",gw="[object WeakMap]",fw="[object ArrayBuffer]",Tw="[object DataView]",bw="[object Float32Array]",vw="[object Float64Array]",xw="[object Int8Array]",Aw="[object Int16Array]",Sw="[object Int32Array]",Cw="[object Uint8Array]",Ew="[object Uint8ClampedArray]",Iw="[object Uint16Array]",_w="[object Uint32Array]",V={};V[bw]=V[vw]=V[xw]=V[Aw]=V[Sw]=V[Cw]=V[Ew]=V[Iw]=V[_w]=!0;V[rw]=V[ow]=V[fw]=V[iw]=V[Tw]=V[lw]=V[cw]=V[dw]=V[pw]=V[uw]=V[mw]=V[yw]=V[ww]=V[hw]=V[gw]=!1;function Dw(e){return sw(e)&&aw(e.length)&&!!V[nw(e)]}var Nw=Dw;function Ow(e){return function(t){return e(t)}}var Pw=Ow,cn={exports:{}};cn.exports;(function(e,t){var n=Po,a=t&&!t.nodeType&&t,s=a&&!0&&e&&!e.nodeType&&e,o=s&&s.exports===a,i=o&&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})(cn,cn.exports);var kw=cn.exports,Rw=Nw,Lw=Pw,ks=kw,Rs=ks&&ks.isTypedArray,Mw=Rs?Lw(Rs):Rw,zo=Mw,jw=By,Bw=Wo,$w=Pe,Fw=Uo,Ww=Ma,Uw=zo,zw=Object.prototype,Hw=zw.hasOwnProperty;function Gw(e,t){var n=$w(e),a=!n&&Bw(e),s=!n&&!a&&Fw(e),o=!n&&!a&&!s&&Uw(e),i=n||a||s||o,l=i?jw(e.length,String):[],c=l.length;for(var d in e)(t||Hw.call(e,d))&&!(i&&(d=="length"||s&&(d=="offset"||d=="parent")||o&&(d=="buffer"||d=="byteLength"||d=="byteOffset")||Ww(d,c)))&&l.push(d);return l}var Vw=Gw,qw=Object.prototype;function Yw(e){var t=e&&e.constructor,n=typeof t=="function"&&t.prototype||qw;return e===n}var Kw=Yw;function Qw(e,t){return function(n){return e(t(n))}}var Xw=Qw,Zw=Xw,Jw=Zw(Object.keys,Object),eh=Jw,th=Kw,nh=eh,ah=Object.prototype,sh=ah.hasOwnProperty;function rh(e){if(!th(e))return nh(e);var t=[];for(var n in Object(e))sh.call(e,n)&&n!="constructor"&&t.push(n);return t}var oh=rh,ih=Ro,lh=ja;function ch(e){return e!=null&&lh(e.length)&&!ih(e)}var Ho=ch,dh=Vw,ph=oh,uh=Ho;function mh(e){return uh(e)?dh(e):ph(e)}var Ba=mh,yh=Ey,wh=My,hh=Ba;function gh(e){return yh(e,hh,wh)}var fh=gh,Ls=fh,Th=1,bh=Object.prototype,vh=bh.hasOwnProperty;function xh(e,t,n,a,s,o){var i=n&Th,l=Ls(e),c=l.length,d=Ls(t),p=d.length;if(c!=p&&!i)return!1;for(var m=c;m--;){var y=l[m];if(!(i?y in t:vh.call(t,y)))return!1}var w=o.get(e),f=o.get(t);if(w&&f)return w==t&&f==e;var g=!0;o.set(e,t),o.set(t,e);for(var v=i;++m<c;){y=l[m];var S=e[y],I=t[y];if(a)var k=i?a(I,S,y,t,e,o):a(S,I,y,e,t,o);if(!(k===void 0?S===I||s(S,I,n,a,o):k)){g=!1;break}v||(v=y=="constructor")}if(g&&!v){var M=e.constructor,ne=t.constructor;M!=ne&&"constructor"in e&&"constructor"in t&&!(typeof M=="function"&&M instanceof M&&typeof ne=="function"&&ne instanceof ne)&&(g=!1)}return o.delete(e),o.delete(t),g}var Ah=xh,Sh=ot,Ch=Ee,Eh=Sh(Ch,"DataView"),Ih=Eh,_h=ot,Dh=Ee,Nh=_h(Dh,"Promise"),Oh=Nh,Ph=ot,kh=Ee,Rh=Ph(kh,"Set"),Go=Rh,Lh=ot,Mh=Ee,jh=Lh(Mh,"WeakMap"),Bh=jh,ra=Ih,oa=ka,ia=Oh,la=Go,ca=Bh,Vo=rt,pt=Lo,Ms="[object Map]",$h="[object Object]",js="[object Promise]",Bs="[object Set]",$s="[object WeakMap]",Fs="[object DataView]",Fh=pt(ra),Wh=pt(oa),Uh=pt(ia),zh=pt(la),Hh=pt(ca),Me=Vo;(ra&&Me(new ra(new ArrayBuffer(1)))!=Fs||oa&&Me(new oa)!=Ms||ia&&Me(ia.resolve())!=js||la&&Me(new la)!=Bs||ca&&Me(new ca)!=$s)&&(Me=function(e){var t=Vo(e),n=t==$h?e.constructor:void 0,a=n?pt(n):"";if(a)switch(a){case Fh:return Fs;case Wh:return Ms;case Uh:return js;case zh:return Bs;case Hh:return $s}return t});var Gh=Me,Wn=Mo,Vh=$o,qh=Ty,Yh=Ah,Ws=Gh,Us=Pe,zs=Uo,Kh=zo,Qh=1,Hs="[object Arguments]",Gs="[object Array]",Yt="[object Object]",Xh=Object.prototype,Vs=Xh.hasOwnProperty;function Zh(e,t,n,a,s,o){var i=Us(e),l=Us(t),c=i?Gs:Ws(e),d=l?Gs:Ws(t);c=c==Hs?Yt:c,d=d==Hs?Yt:d;var p=c==Yt,m=d==Yt,y=c==d;if(y&&zs(e)){if(!zs(t))return!1;i=!0,p=!1}if(y&&!p)return o||(o=new Wn),i||Kh(e)?Vh(e,t,n,a,s,o):qh(e,t,c,n,a,s,o);if(!(n&Qh)){var w=p&&Vs.call(e,"__wrapped__"),f=m&&Vs.call(t,"__wrapped__");if(w||f){var g=w?e.value():e,v=f?t.value():t;return o||(o=new Wn),s(g,v,n,a,o)}}return y?(o||(o=new Wn),Yh(e,t,n,a,s,o)):!1}var Jh=Zh,eg=Jh,qs=dt;function qo(e,t,n,a,s){return e===t?!0:e==null||t==null||!qs(e)&&!qs(t)?e!==e&&t!==t:eg(e,t,n,a,qo,s)}var Yo=qo,tg=Mo,ng=Yo,ag=1,sg=2;function rg(e,t,n,a){var s=n.length,o=s,i=!a;if(e==null)return!o;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<o;){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 m=new tg;if(a)var y=a(d,p,c,e,t,m);if(!(y===void 0?ng(p,d,ag|sg,a,m):y))return!1}}return!0}var og=rg,ig=Pt;function lg(e){return e===e&&!ig(e)}var Ko=lg,cg=Ko,dg=Ba;function pg(e){for(var t=dg(e),n=t.length;n--;){var a=t[n],s=e[a];t[n]=[a,s,cg(s)]}return t}var ug=pg;function mg(e,t){return function(n){return n==null?!1:n[e]===t&&(t!==void 0||e in Object(n))}}var Qo=mg,yg=og,wg=ug,hg=Qo;function gg(e){var t=wg(e);return t.length==1&&t[0][2]?hg(t[0][0],t[0][1]):function(n){return n===e||yg(n,e,t)}}var fg=gg,Tg=rt,bg=dt,vg="[object Symbol]";function xg(e){return typeof e=="symbol"||bg(e)&&Tg(e)==vg}var En=xg,Ag=Pe,Sg=En,Cg=/\.|\[(?:[^[\]]*|(["'])(?:(?!\1)[^\\]|\\.)*?\1)\]/,Eg=/^\w*$/;function Ig(e,t){if(Ag(e))return!1;var n=typeof e;return n=="number"||n=="symbol"||n=="boolean"||e==null||Sg(e)?!0:Eg.test(e)||!Cg.test(e)||t!=null&&e in Object(t)}var $a=Ig,Xo=Ra,_g="Expected a function";function Fa(e,t){if(typeof e!="function"||t!=null&&typeof t!="function")throw new TypeError(_g);var n=function(){var a=arguments,s=t?t.apply(this,a):a[0],o=n.cache;if(o.has(s))return o.get(s);var i=e.apply(this,a);return n.cache=o.set(s,i)||o,i};return n.cache=new(Fa.Cache||Xo),n}Fa.Cache=Xo;var Dg=Fa,Ng=Dg,Og=500;function Pg(e){var t=Ng(e,function(a){return n.size===Og&&n.clear(),a}),n=t.cache;return t}var kg=Pg,Rg=kg,Lg=/[^.[\]]+|\[(?:(-?\d+(?:\.\d+)?)|(["'])((?:(?!\2)[^\\]|\\.)*?)\2)\]|(?=(?:\.|\[\])(?:\.|\[\]|$))/g,Mg=/\\(\\)?/g,jg=Rg(function(e){var t=[];return e.charCodeAt(0)===46&&t.push(""),e.replace(Lg,function(n,a,s,o){t.push(s?o.replace(Mg,"$1"):a||n)}),t}),Bg=jg;function $g(e,t){for(var n=-1,a=e==null?0:e.length,s=Array(a);++n<a;)s[n]=t(e[n],n,e);return s}var Fg=$g,Ys=An,Wg=Fg,Ug=Pe,zg=En,Ks=Ys?Ys.prototype:void 0,Qs=Ks?Ks.toString:void 0;function Zo(e){if(typeof e=="string")return e;if(Ug(e))return Wg(e,Zo)+"";if(zg(e))return Qs?Qs.call(e):"";var t=e+"";return t=="0"&&1/e==-1/0?"-0":t}var Hg=Zo,Gg=Hg;function Vg(e){return e==null?"":Gg(e)}var qg=Vg,Yg=Pe,Kg=$a,Qg=Bg,Xg=qg;function Zg(e,t){return Yg(e)?e:Kg(e,t)?[e]:Qg(Xg(e))}var Jo=Zg,Jg=En;function ef(e){if(typeof e=="string"||Jg(e))return e;var t=e+"";return t=="0"&&1/e==-1/0?"-0":t}var In=ef,tf=Jo,nf=In;function af(e,t){t=tf(t,e);for(var n=0,a=t.length;e!=null&&n<a;)e=e[nf(t[n++])];return n&&n==a?e:void 0}var ei=af,sf=ei;function rf(e,t,n){var a=e==null?void 0:sf(e,t);return a===void 0?n:a}var of=rf;function lf(e,t){return e!=null&&t in Object(e)}var cf=lf,df=Jo,pf=Wo,uf=Pe,mf=Ma,yf=ja,wf=In;function hf(e,t,n){t=df(t,e);for(var a=-1,s=t.length,o=!1;++a<s;){var i=wf(t[a]);if(!(o=e!=null&&n(e,i)))break;e=e[i]}return o||++a!=s?o:(s=e==null?0:e.length,!!s&&yf(s)&&mf(i,s)&&(uf(e)||pf(e)))}var gf=hf,ff=cf,Tf=gf;function bf(e,t){return e!=null&&Tf(e,t,ff)}var vf=bf,xf=Yo,Af=of,Sf=vf,Cf=$a,Ef=Ko,If=Qo,_f=In,Df=1,Nf=2;function Of(e,t){return Cf(e)&&Ef(t)?If(_f(e),t):function(n){var a=Af(n,e);return a===void 0&&a===t?Sf(n,e):xf(t,a,Df|Nf)}}var Pf=Of;function kf(e){return e}var Rf=kf;function Lf(e){return function(t){return t?.[e]}}var Mf=Lf,jf=ei;function Bf(e){return function(t){return jf(t,e)}}var $f=Bf,Ff=Mf,Wf=$f,Uf=$a,zf=In;function Hf(e){return Uf(e)?Ff(zf(e)):Wf(e)}var Gf=Hf,Vf=fg,qf=Pf,Yf=Rf,Kf=Pe,Qf=Gf;function Xf(e){return typeof e=="function"?e:e==null?Yf:typeof e=="object"?Kf(e)?qf(e[0],e[1]):Vf(e):Qf(e)}var ti=Xf;function Zf(e){return function(t,n,a){for(var s=-1,o=Object(t),i=a(t),l=i.length;l--;){var c=i[e?l:++s];if(n(o[c],c,o)===!1)break}return t}}var Jf=Zf,eT=Jf,tT=eT(),nT=tT,aT=nT,sT=Ba;function rT(e,t){return e&&aT(e,t,sT)}var oT=rT,iT=oT;function lT(e,t,n,a){return iT(e,function(s,o,i){t(a,n(s),o,i)}),a}var cT=lT,dT=cT;function pT(e,t){return function(n,a){return dT(n,e,t(a),{})}}var uT=pT,mT=ti,yT=uT,ni=Object.prototype,wT=ni.hasOwnProperty,hT=ni.toString,gT=yT(function(e,t,n){t!=null&&typeof t.toString!="function"&&(t=hT.call(t)),wT.call(e,t)?e[t].push(n):e[t]=[n]},mT),fT=gT;const TT=bn(fT),bt="Canceled by user",bT={"exceeds the configured cap":"Please try using a different RPC for your wallet.","denied transaction":bt,"user rejected the transaction":bt,"user rejected transaction":bt,"user rejected the request":bt,"user canceled":bt,"not enough available balance":"Attempting to withdraw a balance that exceeds the liquidity currently accessible."};TT(bT);const ai=e=>typeof e=="object"&&e!==null&&"message"in e&&typeof e.message=="string",si=e=>{if(ai(e))return e;try{return new Error(JSON.stringify(e))}catch{return new Error(String(e))}},ri=e=>si(e).message;class ut extends Yl.CustomError{constructor({message:n=Lr,link:a,slippage:s,txArgs:o,account:i,onBypass:l,functionName:c}){super(n);Le(this,"txArgs");Le(this,"link");Le(this,"account");Le(this,"slippage");Le(this,"functionName");Le(this,"onBypass");this.link=a,this.txArgs=o,this.account=i,this.slippage=s,this.functionName=c,this.onBypass=l}}const vT=async()=>{},Un=e=>{const t=e[e.length-1],n=typeof t=="object"&&t!==null&&("value"in t||"gas"in t),a=n?t:{},s=n?e.slice(0,-1):e;return{transactionOverrides:a,argumentsWithoutOverrides:s}},xe=({functionName:e,dynamicContractAddress:t,contractId:n,onSettled:a})=>{const{account:s}=B(),{chainId:o,supportedChainId:i}=Ce(),l=E.useWalletClient({chainId:o}),c=E.usePublicClient({chainId:o}),d=so(n),p=t??z(n,o??i),m=Io(),{writeContract:y}=E.useWriteContract({mutation:{onSettled:a}}),w=u.useCallback(async(...v)=>{try{const{argumentsWithoutOverrides:S,transactionOverrides:I}=Un(v),k=await c?.estimateContractGas({address:p,abi:d,functionName:e,args:S,account:s??_,gas:I.gas,value:I.value});if(!k||!o||k===BigInt(0))return{error:ea,value:BigInt(0)};const M=Math.round(Number(k)*fr),ne=Xt[o]??M,Ae=BigInt(Math.min(ne,M));return console.debug(`[core-ui-kit]: estimated gas limit: ${Number(k)}`),{error:"",value:Ae}}catch(S){return console.error(`Gas estimate error on ${e}`,S),{error:S?.message??S?.shortMessage??S.error?.data?.message??S.data?.message??ea,value:BigInt(0)}}},[s,o,c,e,p,d]),f=u.useCallback(async(...v)=>{try{if(!m)return{data:null,error:ta};if(!c)return{data:null,error:"Client is not defined"};const{argumentsWithoutOverrides:S,transactionOverrides:I}=Un(v),k=D.encodeFunctionData({abi:d,functionName:e,args:S});if(s&&k){const M=await m({chainId:o??i,from:s,to:p,input:k,gas:Xt[o??i]??0,value:I.value?.toString()});return{data:M,error:M?.simulation.error_message}}return{data:null,error:ta}}catch(S){return console.debug("Failed to simulate:",S),{data:null,error:ri(S)}}},[s,o,c,d,p,e,m,i]),g=u.useCallback(async(...v)=>{const{argumentsWithoutOverrides:S,transactionOverrides:I}=Un(v);if(I.gas)return y({address:p,abi:d,functionName:e,chainId:o,args:S,...I});const{value:k,error:M}=await w(...v);if(M){const{data:ne}=await Promise.race([f(...v),new Promise(Ae=>setTimeout(Ae,Tr,{data:null,error:Mr}))]);throw new ut({message:M,link:ne?.link,txArgs:v,account:s,functionName:e,onBypass:()=>l?.data?.writeContract({address:p,abi:d,functionName:e,account:s,chainId:o,args:S,...I,gas:BigInt(Xt[o??i]??0)})})}return console.debug(`[core-ui-kit]: gas limit to use: ${k}`),y({address:p,abi:d,functionName:e,chainId:o,args:S,...I,gas:k})},[w,y,f,s,e,l?.data,p,d,o,i]);return{send:o&&c?g:vT,estimate:w}},oi=e=>E.useEstimateFeesPerGas({...e,query:{...e?.query,staleTime:3e4}}),_n=e=>{u.useEffect(()=>{e&&e.forEach(({error:t,status:n})=>{n==="failure"&&console.warn(t?.message)})},[e])},Wa=({error:e,status:t})=>{u.useEffect(()=>{e&&t==="failure"&&console.warn(e?.message)},[e,t])},ii=async({functionName:e,address:t,abi:n,args:a,publicClient:s})=>(await s?.simulateContract({address:t,abi:n,functionName:e,args:a}))?.result,xT=({disabled:e,functionName:t,address:n,abi:a,args:s,chainId:o,refetchInterval:i})=>{const l=E.usePublicClient({chainId:o});return tt.useQuery({queryKey:[{functionName:t,address:n,args:s,chainId:o}],queryFn:async({queryKey:[c]})=>{if(c)return await ii({address:n,abi:a,functionName:c.functionName,args:c.args,publicClient:l})},enabled:!e&&!!o&&!ee(n)&&!!t,refetchInterval:i})},dn=({queryKey:e,watch:t=!0})=>{const n=tt.useQueryClient(),{data:a}=E.useBlockNumber({query:{refetchInterval:ze}});u.useEffect(()=>{t&&n.refetchQueries({queryKey:e,stale:!0})},[t,a])},Dn="limitOrders",Ua="getAllLimitOrderIds",za=0,li="100",AT=1,ST=5,CT=2,ET=["balanceOf","getFundSummary","getFundComposition","withdrawalContracts","getTrackedAssets","getAssetPrice","allowance","getExitRemainingCooldown","tokenPrice","limitOrders","calculateAvailableManagerFee",Dn,Ua],IT=["allowance"],Xs=(e,t)=>e[0]==="readContract"?t.includes(e?.[1]?.functionName??""):e[0]==="readContracts"?!!e[1]?.contracts?.some(({functionName:a})=>t.includes(a??"")):!1,Nn=()=>{const e=tt.useQueryClient(),t=u.useCallback(()=>{e.invalidateQueries({predicate:({queryKey:a})=>Xs(a,IT)})},[e]),n=u.useCallback(()=>{e.invalidateQueries({predicate:({queryKey:a})=>Xs(a,ET)})},[e]);return{invalidateAllowanceQueries:t,invalidateTradingQueries:n}},On=()=>{const{chainId:e}=Ce(),{data:t}=E.useCapabilities();if(!e||!t)return!1;const n=t?.[e]?.atomic?.status;return!!n&&n!=="unsupported"},_T=({tooltipContent:e,children:t,placement:n="top",trigger:a="hover",interactive:s=!0,delayHide:o=50})=>{const{getTooltipProps:i,setTooltipRef:l,setTriggerRef:c,visible:d}=Kl.usePopperTooltip({interactive:s,delayHide:o,offset:[0,12],placement:n,trigger:a});return r.jsxs(r.Fragment,{children:[r.jsx("span",{ref:c,children:t}),d&&r.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})]})},Ha=({text:e,...t})=>r.jsx(_T,{...t,tooltipContent:r.jsx("span",{className:"dtw-inline-block dtw-max-w-xs",children:e})}),ci=({text:e,placement:t,iconClassName:n="dtw-text-[color:var(--panel-secondary-content-color)]",Icon:a=se.QuestionMarkCircleIcon})=>r.jsx(Ha,{text:e,placement:t,children:r.jsx(a,{className:C("dtw-h-4 dtw-w-4 dtw-cursor-help hover:dtw-text-[color:var(--panel-icon-color-hover))]",n)})}),$e=({label:e,tooltipText:t,children:n})=>r.jsxs("div",{children:[r.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:[r.jsx("span",{children:e}),r.jsx(ci,{text:t,placement:"top"})]}),r.jsx("div",{className:"dtw-mt-1.5",children:n})]}),he=({symbol:e,address:t,watch:n=!1})=>{const{account:a}=B(),s=b(),o=hn(e,s.chainId),{data:i}=oi({chainId:s.chainId,query:{enabled:o}}),{data:l,queryKey:c}=Oa({chainId:s.chainId,address:a,query:{enabled:o&&!!a}}),{data:d,queryKey:p}=E.useReadContracts({contracts:[{address:t,abi:D.erc20Abi,functionName:"balanceOf",chainId:s.chainId,args:[a??_]},{address:t,abi:D.erc20Abi,chainId:s.chainId,functionName:"decimals"}],query:{enabled:!o&&!!a}});return dn({watch:n&&o,queryKey:c}),dn({watch:n&&!o,queryKey:p}),o?co({nativeTokenBalance:D.formatUnits(l?.value??BigInt(0),l?.decimals??O),gasPrice:Number(i?.maxFeePerGas??0),tokenDecimals:l?.decimals??O}).toString():D.formatUnits(d?.[0]?.result??BigInt(0),d?.[1]?.result??O)},kt=()=>{const[{value:e,symbol:t,address:n}]=N(),a=he({symbol:t,address:n});return new T(e||0).gt(a??0)},DT=({address:e,chainId:t})=>[{address:z("factory",t),abi:He,functionName:"isPool",chainId:t,args:[e]}],NT=e=>({isUserDhedgePool:e[0].result}),Rt=()=>{const{account:e=_}=B(),{chainId:t,supportedChainId:n}=Ce(),a=t??n,{data:s}=E.useReadContracts({contracts:DT({address:e,chainId:a}),query:{enabled:!ee(e),select:NT}});return!!s?.isUserDhedgePool},OT=({address:e,chainId:t})=>[{address:e??_,abi:be,functionName:"poolManagerLogic",chainId:t},{address:z("easySwapperV2",t),abi:ve,functionName:"customCooldownDepositsWhitelist",args:[e],chainId:t},{address:z("easySwapperV2",t),abi:ve,functionName:"customCooldown",args:[],chainId:t},{address:z("factory",t),chainId:t,abi:He,functionName:"getAssetGuard",args:[z("aaveLendingPoolV3",t)]}],PT=e=>({poolManagerLogic:e[0].result,isCustomCooldownDepositAllowed:e[1].result,customCooldown:e[2].result,aaveAssetGuardAddress:e[3].result}),Lt=({address:e,chainId:t})=>E.useReadContracts({contracts:OT({address:e,chainId:t}),query:{enabled:!!e&&!ee(e),staleTime:1/0,select:PT}}),Ga=({address:e,chainId:t})=>{const[n]=qe(),{data:{poolManagerLogic:a}={}}=Lt({address:e,chainId:t});return n.managerLogicAddress??a},kT=({address:e,chainId:t,account:n})=>[{address:e,abi:De,functionName:"getFeeIncreaseInfo",chainId:t},{address:e,abi:De,functionName:"minDepositUSD",chainId:t},{address:e,abi:De,functionName:"isMemberAllowed",args:[n??_],chainId:t},{address:e,abi:De,functionName:"maxSupplyCap",args:[],chainId:t}],RT=e=>({getFeeIncreaseInfo:e[0].result,minDepositUSD:e[1].result,isMemberAllowed:e[2].result,maxSupplyCapD18:e[3].result}),Mt=({address:e,chainId:t})=>{const n=Ga({address:e,chainId:t}),{account:a=_}=B(),s=E.useReadContracts({contracts:kT({address:n??_,chainId:t,account:a}),query:{enabled:!!n&&!ee(n),staleTime:1/0,select:RT}});return Wa({error:s.error,status:s.status}),s},LT=({chainId:e,address:t})=>[{address:t,abi:De,functionName:"getFundComposition",chainId:e},{address:t,abi:De,functionName:"getSupportedAssets",chainId:e}],MT=e=>({getFundComposition:e[0].result,getSupportedAssets:e[1].result?.map(({asset:t})=>t)}),jt=({address:e,chainId:t})=>{const n=Ga({address:e,chainId:t});return E.useReadContracts({contracts:LT({address:n??_,chainId:t}),query:{enabled:!!n&&!ee(n),select:MT,refetchInterval:nt}})};function jT(e,t,n){var a=-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 o=Array(s);++a<s;)o[a]=e[a+t];return o}var BT=jT,$T=Pa,FT=Ho,WT=Ma,UT=Pt;function zT(e,t,n){if(!UT(n))return!1;var a=typeof t;return(a=="number"?FT(n)&&WT(t,n.length):a=="string"&&t in n)?$T(n[t],e):!1}var HT=zT,GT=/\s/;function VT(e){for(var t=e.length;t--&>.test(e.charAt(t)););return t}var qT=VT,YT=qT,KT=/^\s+/;function QT(e){return e&&e.slice(0,YT(e)+1).replace(KT,"")}var XT=QT,ZT=XT,Zs=Pt,JT=En,Js=NaN,eb=/^[-+]0x[0-9a-f]+$/i,tb=/^0b[01]+$/i,nb=/^0o[0-7]+$/i,ab=parseInt;function sb(e){if(typeof e=="number")return e;if(JT(e))return Js;if(Zs(e)){var t=typeof e.valueOf=="function"?e.valueOf():e;e=Zs(t)?t+"":t}if(typeof e!="string")return e===0?e:+e;e=ZT(e);var n=tb.test(e);return n||nb.test(e)?ab(e.slice(2),n?2:8):eb.test(e)?Js:+e}var rb=sb,ob=rb,er=1/0,ib=17976931348623157e292;function lb(e){if(!e)return e===0?e:0;if(e=ob(e),e===er||e===-er){var t=e<0?-1:1;return t*ib}return e===e?e:0}var cb=lb,db=cb;function pb(e){var t=db(e),n=t%1;return t===t?n?t-n:t:0}var ub=pb,mb=BT,yb=HT,wb=ub,hb=Math.ceil,gb=Math.max;function fb(e,t,n){(n?yb(e,t,n):t===void 0)?t=1:t=gb(wb(t),0);var a=e==null?0:e.length;if(!a||t<1)return[];for(var s=0,o=0,i=Array(hb(a/t));s<a;)i[o++]=mb(e,s,s+=t);return i}var Tb=fb;const di=bn(Tb),pi=({account:e,chainId:t,address:n})=>[{address:n,abi:be,functionName:"balanceOf",chainId:t,args:[e]},{address:n,abi:be,functionName:"tokenPrice",chainId:t,args:[]}],bb=e=>e.flatMap(pi),vb=pi({account:_,chainId:h.optimism.id,address:_}).length,ui=({account:e})=>{const{chainId:t}=Ce(),n=at();return E.useReadContracts({contracts:bb(n.map(a=>({...a,account:e}))),query:{select:a=>di(a,vb).reduce((s,[o,i],l)=>{const c=n?.[l]?.address??_;return{...s,[c]:{balance:o?.result?.toString(),tokenPrice:i?.result?.toString()}}},{}),placeholderData:(a,s)=>{if(s?.queryKey?.[1].chainId!==t)return a},refetchInterval:nt,enabled:!ee(e)}})},xb=({chainId:e,address:t})=>[{address:t,abi:be,functionName:"tokenPrice",chainId:e,args:[]},{address:t,abi:be,functionName:"getFundSummary",chainId:e}],Ab=([e,t])=>{const n=t?.result;return{tokenPrice:e?.result!==BigInt(0)?e?.result?.toString():Xl,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()}},oe=({address:e,chainId:t,refetchInterval:n,enabled:a=!0})=>E.useReadContracts({contracts:xb({address:e,chainId:t}),query:{enabled:a&&!!e&&!ee(e),refetchInterval:n,select:Ab}}),mi=({address:e,chainId:t})=>{const{account:n}=B(),{data:{managerAddress:a}={managerAddress:_}}=oe({address:e,chainId:t}),{data:{isMemberAllowed:s=!1}={}}=Mt({address:e,chainId:t});return n?s||H(n,a):!1},yi=({address:e,chainId:t})=>{const[n]=qe(),a=u.useMemo(()=>n.poolCompositions?.reduce((p,{tokenAddress:m,tokenName:y,precision:w,asset:f})=>({...p,[m.toLowerCase()]:{tokenName:y,precision:w,asset:f}}),{}),[n.poolCompositions]),{data:{getFundComposition:[s,o,i]=[]}={},isFetched:l}=jt({address:e,chainId:t}),c=u.useMemo(()=>s?.map(({asset:p})=>p)??[],[s]),{data:d}=E.useReadContracts({contracts:c.flatMap(p=>[{address:p,abi:D.erc20Abi,functionName:"symbol",chainId:t},{address:p,abi:D.erc20Abi,functionName:"decimals",chainId:t}]),query:{enabled:l&&c?.length>0&&!!t&&!c.every(p=>a?.[p.toLowerCase()]),staleTime:1/0}});return _n(d),u.useMemo(()=>{if(!s?.length)return[];const p=di(d,2);return s.map(({asset:m,isDeposit:y},w)=>{const f=m.toLowerCase(),[g,v]=p[w]??[],S=Ea[f.toLowerCase()]??g?.result?.toString()??a?.[f]?.tokenName??ro(f);return{tokenAddress:f,isDeposit:y,rate:i?.[w]?.toString()??"0",amount:o?.[w]?.toString()??"0",tokenName:S,precision:v?.result?Number(v.result):a?.[f]?.precision??O,asset:{iconSymbols:a?.[f]?.asset.iconSymbols??[S]}}})},[o,i,a,s,d])},mt=({address:e,chainId:t})=>{const[n]=qe(),a=yi({address:e,chainId:t});return a.length?a:n.poolCompositions??[]},Sb=e=>{const t=e?.[0]?.toString()??"",n=e?.[1]?.toString()??"",a=e?.[2]?.toString()??"",s=e?.[3]?.toString()??"",o=e?.[4]?.toString()??"";return{announcedPerformanceFee:t,announcedStreamingFee:n,announcedEntryFee:a,announcedExitFee:s,announcedTimestamp:o}},Va=(e,t)=>{const{data:{getFeeIncreaseInfo:n,minDepositUSD:a}={}}=Mt({address:e,chainId:t});return{...Sb(n),minDepositUSD:+D.formatUnits(a??BigInt(0),O)}},Cb=({composition:e,vaultTokensAmount:t,totalSupplyD18:n})=>e.reduce((a,s)=>{const o=a.find(({tokenName:i})=>i===s.tokenName);if(o){const i=new T(o.amount).shiftedBy(-o.precision),l=new T(s.amount).shiftedBy(-s.precision);return o.amount=i.plus(l).shiftedBy(o.precision).toFixed(0),a}return[...a,s]},[]).map(a=>{const s=aa(a.amount,t,n,a.precision),o=aa(new T(a.rate).multipliedBy(a.amount).shiftedBy(-a.precision).toFixed(),t,n);return{...a,fraction:s.toFixed(_t(s)),fractionUsd:te({value:o}),fractionUsdNumber:o}}).filter(({amount:a})=>a!=="0").sort((a,s)=>s.fractionUsdNumber-a.fractionUsdNumber),wi=({address:e,vaultTokensAmount:t,chainId:n})=>{const a=mt({address:e,chainId:n}),{data:{totalSupplyD18:s}={}}=oe({address:e,chainId:n});return u.useMemo(()=>s?Cb({composition:a,vaultTokensAmount:rn(t||0),totalSupplyD18:s}):[],[t,a,s])},ue=({address:e,chainId:t,formatter:n=D.formatEther})=>{const[a]=qe(),{data:s}=oe({address:e,chainId:t,refetchInterval:nt});return n(BigInt(s?.tokenPrice??a?.tokenPrice??"0"))},Pn=({address:e,chainId:t})=>{const[n]=qe(),a=H(n.address,e)?n:null,{data:{performanceFee:s,streamingFee:o,entryFee:i,exitFee:l}={}}=oe({address:e,chainId:t}),c=i??a?.entryFeeNumerator??"0",d=l??a?.exitFeeNumerator??"0";return u.useMemo(()=>{const p=s??a?.performanceFeeNumerator??"0",m=o??a?.streamingFeeNumerator??"0";return{performanceFee:xt(p,ye),performanceFeeNumber:Ne(+p,ye),streamingFee:xt(m,ye,2),streamingFeeNumber:Ne(+m,ye),entryFee:xt(c,ye,2),entryFeeNumber:Ne(+c,ye),exitFee:xt(d,ye,2),exitFeeNumber:Ne(+d,ye)}},[s,a?.performanceFeeNumerator,a?.streamingFeeNumerator,o,c,d])},hi=()=>{const{address:e,chainId:t}=b(),{queryKey:n}=jt({address:e,chainId:t});dn({queryKey:n})},Kt=h.base.id,Eb=e=>{const t=z("flatcoinPointsModule",Kt);return[{address:t,chainId:Kt,abi:Zt,functionName:"lockedBalance",args:[e]},{address:t,chainId:Kt,abi:Zt,functionName:"getUnlockTax",args:[e]},{address:t,chainId:Kt,abi:Zt,functionName:"unlockTime",args:[e]}]},gi=({enabled:e,address:t})=>E.useReadContracts({contracts:Eb(t),query:{enabled:e,select:n=>{const[a,s,o]=n;return{lockedVaultPointsBalance:a?.result,unlockTaxInPercents:s?.result,unlockTime:o?.result}}}}),Ib=[...no],qa=({address:e,chainId:t})=>{const n=mt({address:e,chainId:t}),a=z("factory",t);return E.useReadContracts({contracts:n.map(({tokenAddress:s})=>({address:a,abi:He,functionName:"isPool",chainId:t,args:[s]})),query:{select:s=>n.some(({amount:o,tokenAddress:i},l)=>(!!s[l]?.result||Ib.some(p=>H(p,i)))&&o!=="0"),staleTime:1/0}})},_b=[[30*1e3,5e3],[60*1e3,1e4],[5*60*1e3,2e4]],Db=e=>{if(!e)return!1;for(const[t,n]of _b)if(e<=t)return n;return Zl},zn=e=>Number(e?.toString()??"0")*1e3,Nb=({address:e,chainId:t})=>{const{account:n}=B();return E.useReadContract({address:e,abi:be,functionName:"getExitRemainingCooldown",chainId:t,args:[n??_],query:{enabled:!!n,select:zn,refetchInterval:a=>Db(zn(a.state?.data)),refetchOnWindowFocus:a=>zn(a.state?.data)>0}})};function Ob(e,t,n){if(!e||!t)return{balanceInUsd:"",balanceInUsdNumber:0};const a=+e*Fe(t);return{balanceInUsd:te({value:a,maximumFractionDigits:n}),balanceInUsdNumber:a}}const fi=(e,t)=>ud(e)?{rawBalance:e?.toString()??"",...Ob(D.formatUnits(e,U),t?.toString())}:{rawBalance:"",balanceInUsd:"",balanceInUsdNumber:0},Ti=({account:e}={})=>{const{account:t}=B(),n=e??t??_,{data:a}=ui({account:n});return u.useMemo(()=>ee(n)?{}:Object.entries(a??{}).reduce((s,[o,i])=>{const l=fi(BigInt(i.balance??"0"),BigInt(i.tokenPrice??"0"));return l.balanceInUsdNumber>0?{...s,[o]:l}:s},{}),[n,a])},bi=({account:e,chainId:t,address:n})=>{const{data:a,isFetched:s}=oe({address:n,chainId:t}),{poolFallbackData:o}=J(),i=H(o.address,n)?o.tokenPrice??"0":"0";return E.useReadContract({address:e?n:void 0,abi:be,functionName:"balanceOf",chainId:t,args:[e],query:{enabled:!ee(e)&&s,select:l=>fi(l,BigInt(a?.tokenPrice??i))}})},Pb=e=>Math.ceil(Fe(e)),vi=({address:e,chainId:t,select:n=Pb})=>{const{data:{totalValueD18:a}={}}=oe({address:e,chainId:t}),{data:{maxSupplyCapD18:s}={}}=Mt({address:e,chainId:t});return E.useReadContract({address:e,chainId:t,abi:be,functionName:"calculateAvailableManagerFee",args:[BigInt(a??"0")],query:{enabled:!!a&&!!s&&s>0n,select:n}})},xi=({address:e,chainId:t})=>{const{data:{maxSupplyCapD18:n}={}}=Mt({address:e,chainId:t}),{data:{totalSupplyD18:a}={}}=oe({address:e,chainId:t}),s=ue({address:e,chainId:t}),{data:o=0}=vi({address:e,chainId:t});if(!n||n===0n)return null;const i=Math.ceil(Fe(a??0)),l=Fe(n),c=Math.max(0,l-o),d=Math.max(0,c-i),p=d*Number(s);return{totalSupplyNumber:i,maxSupplyCapNumber:c,remainingSupplyCapNumber:d,remainingSupplyCapInUsd:p}},kb=({address:e,chainId:t})=>{const{data:{isPrivateVault:n}={isPrivateVault:!1}}=oe({address:e,chainId:t}),s=at().find(i=>H(e,i.address)&&i.chainId===t),o=!!(s?.maintenance||s?.maintenanceDeposits);return n||o},Rb=e=>oe(e),Lb=()=>{const{address:e,symbol:t,chainId:n}=b(),{account:a=_}=B(),s=he({symbol:t,address:e}),{data:{totalSupplyD18:o}={}}=oe({address:e,chainId:n}),l=ho(e)&&!H(a,_),{data:{lockedVaultPointsBalance:c,unlockTaxInPercents:d,unlockTime:p}={},isLoading:m}=gi({enabled:l,address:e});return u.useMemo(()=>{const y=o?new T.BigNumber(s).shiftedBy(O).dividedBy(o):new T.BigNumber(0),w=c?new T.BigNumber(c.toString()).multipliedBy(y).shiftedBy(-O):new T.BigNumber(0),f=d?w.multipliedBy(d.toString()).shiftedBy(-O):new T.BigNumber(0),g=p?Number(p)*1e3:null;return{userPortionOfLockedPointsBalance:w.toFixed(),unlockTaxAmount:f.toFixed(),vestedPointsAmount:w.minus(f).toFixed(),unlockTimestamp:g,unlockDate:g?Et.format(g,"PPP"):null,isLoading:m}},[o,s,c,d,p,m])},Mb={"Lend/Borrow V2":"aave","Lend/Borrow V3":"aave","Lyra Options":"lyra",ULP:"uni"};function jb(e){const t=Mb[e];if(t)return t;const n=e.toLowerCase();return n.includes("bear")?"torosbear":n.includes("bull")?"torosbull":n}const Ya=e=>e?`https://raw.githubusercontent.com/dhedge/crypto-icons/main/icons/${jb(e)}.png`:"",Ai={isGeoBlocked:!1,isSanctioned:!1,depositQuoteDiffWarningThreshold:1.5,depositQuoteDiffErrorThreshold:3,defaultWithdrawSlippage:mr,defaultLockTime:pr,defaultNoSwapMinDepositAmountGap:ec,defaultSwapTransactionSlippage:tc,defaultNotificationDuration:rc,stablePrecision:3,defaultPrecision:6,termsOfUseAccepted:!0,standalone:!0,isAllAssetsWithdrawOptionDefault:!1,chainConfig:{[h.mainnet.id]:{name:"Ethereum",iconPath:""},[h.arbitrum.id]:{name:"Arbitrum",iconPath:""},[h.optimism.id]:{name:"Optimism",iconPath:""},[h.polygon.id]:{name:"Polygon",iconPath:""},[h.base.id]:{name:"Base",iconPath:""}},getFallbackIconPath:Ya,minLimitOrderValue:0,limitOrderThemeConfig:{}},Bb=()=>{const{connect:e}=E.useConnect(),t=u.useCallback(()=>e({connector:Ql.injected({shimDisconnect:!0})}),[e]),n=u.useCallback(async()=>(console.log("terms of use were accepted. Assume `termsOfUseAccepted` config value switch to true"),Promise.resolve(!0)),[]);return{onConnect:t,onAcceptTermsOfUse:n}},$b={params:{...Ai},actions:{onConnect:()=>{},onAcceptTermsOfUse:()=>Promise.resolve(!0)}},Si=u.createContext($b),Ci=({children:e,config:t})=>{const n=Bb(),a=u.useMemo(()=>({params:{...Ai,...t?.params},actions:{...n,...t?.actions}}),[t,n]);return r.jsx(Si.Provider,{value:a,children:e})},Ei=()=>{const e=u.useContext(Si);if(!e)throw new Error("ConfigContext is used out of Provider");return e},G=()=>Ei().params,Ka=()=>Ei().actions,Qa=()=>{const{depositQuoteDiffErrorThreshold:e}=G(),[t,n]=u.useState(!1),[{slippage:a,minSlippage:s}]=Q(),o=a==="auto"?s??0:a,l=!kt()&&o>e&&!t,c=u.useCallback(()=>{n(!0)},[]);return{requiresHighSlippageConfirm:l,confirmHighSlippage:c,slippageToBeUsed:o}},W={ERROR:"error",WARNING:"warning",SUCCESS:"success",DEFAULT:"default",CUSTOM:"custom"},$={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_ORDER_WITHDRAW:"LIMIT_ORDER_WITHDRAW",WITHDRAW_STEPPER:"WITHDRAW_STEPPER"},Bt=e=>{const{depositQuoteDiffErrorThreshold:t,depositQuoteDiffWarningThreshold:n}=G(),a=Math.abs(e);return a>t?W.ERROR:a>n?W.WARNING:W.DEFAULT};var Fb=rt,Wb=dt,Ub="[object Number]";function zb(e){return typeof e=="number"||Wb(e)&&Fb(e)==Ub}var Hb=zb;const Gb=bn(Hb),Ii=({tradingType:e,slippage:t,minSlippage:n})=>{const{defaultWithdrawSlippage:a}=G();return t!=="auto"?t.toString():Gb(n)?n.toString():e==="deposit"?yn.toString():a.toString()},_i={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",deposit:"Buy",withdraw:"Sell",max:"Max",allAssets:"All Assets",all:"All",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",withdrawAction:"Sell",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",proceedWithNextStep:"Please proceed with the next step.",aggregatorsLabel:"Swap source",aggregatorsTooltip:"Choose which aggregators to use for your trades.",batchTransactionsLabel:"Batch transactions",batchTransactionsSwitchLabel:"Batch",openNotificationsSettingsLabel:"Enable alerts",addToWallet:"add to wallet",batchTransactionsTooltip:"Group transaction calls into a single batch transaction. Disable if you prefer separate prompts.",openLimitOrderAfterBuySwitchLabel:"Add Stop Order",stopOrder:"Schedule sell",rate:"Rate",exchangeRate:"Exchange rate",cooldown:"Cooldown",delete:"Delete",withdrawalRequest:"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"},Di=u.createContext(_i),Vb=({children:e,config:t})=>{const n=u.useMemo(()=>({..._i,...t}),[t]);return r.jsx(Di.Provider,{value:n,children:e})},A=()=>{const e=u.useContext(Di);if(!e)throw new Error("TranslationContext is used out of Provider");return e},Xa=e=>{const t=A(),{symbol:n}=b(),a=`${n}${e}`;return t?.[a]??t[e]},qb=async(e,t=Ya)=>{try{return(await import(`@dhedge/crypto-assets/icons/${e.toLowerCase()}.png`))?.default?.src??t(e)}catch{return t(e)}},Yb=(e=[])=>{const{getFallbackIconPath:t}=G(),[n,a]=u.useState([]),[s,o]=u.useState([]);return u.useEffect(()=>{if(e.every(l=>s.includes(l)))return;(async()=>{const l=await Promise.all(e.map(c=>qb(c,t)));a(l),o(e)})()},[e,s,t]),n},Ni=()=>{const{pricingAsset:e,symbol:t,chainId:n,address:a}=b(),{minLimitOrderValue:s}=G(),o=he({symbol:t,address:a}),i=ue({address:a,chainId:n});return Number(o)*Number(i)>=s&&!!e},Kb=(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}},Oi=Object.values($).reduce((e,t)=>({...e,[t]:{isOpen:!1,isPending:!1}}),{}),Qb=()=>u.useReducer(Kb,Oi),Pi=u.createContext(Oi),ki=u.createContext(()=>{}),Ri=()=>{const e=u.useContext(Pi);if(!e)throw new Error("OverlayStateContext is used out of Provider");return e},ie=()=>{const e=u.useContext(ki);if(!e)throw new Error("OverlayDispatchContext is used out of Provider");return e},de=({type:e})=>{const t=Ri(),n=ie(),a=u.useCallback(()=>{n({type:"MERGE_OVERLAY",payload:{type:e,isOpen:!1,isPending:!1}})},[n,e]),{onConfirm:s,isPending:o,meta:i}=t[e],l=d=>{n({type:"MERGE_OVERLAY",payload:{type:e,isOpen:!0,isPending:d}})};return{handleReject:a,handleConfirm:async()=>{await s?.(l),a()},isPending:o,meta:i}},Xb=()=>{const e=ie();return()=>{Object.values($).forEach(t=>{e({type:"MERGE_OVERLAY",payload:{type:t,isOpen:!1,isPending:!1}})})}},Zb=({children:e})=>{const[t,n]=Qb(),[{isOpen:a}]=K();return u.useEffect(()=>{a&&!t.TRADING.isOpen&&n({type:"MERGE_OVERLAY",payload:{type:$.TRADING,isOpen:a}})},[a,t.TRADING.isOpen,n]),u.useEffect(()=>{!a&&t.TRADING.isOpen&&n({type:"MERGE_OVERLAY",payload:{type:$.TRADING,isOpen:a}})},[a,t.TRADING.isOpen,n]),r.jsx(ki.Provider,{value:n,children:r.jsx(Pi.Provider,{value:t,children:e})})},Jb=()=>{const e=Ve(),t=ie(),n=Ni(),a=u.useCallback(()=>{n&&(t({type:"MERGE_OVERLAY",payload:{type:$.LIMIT_SELLS,isOpen:!0}}),e?.(X.OPEN_LIMIT_SELL_VIEW,{[Te.SOURCE.NAME]:"overlay"}))},[t,n,e]);return{displayLimitSellOverlay:n,openLimitSellOverlay:a}},Li=()=>{const e=A(),[{status:t}]=K(),n=u.useMemo(()=>({Wallet:e.sendingOrderToWallet,None:e.settingUpTx,Mining:e.miningTx,Success:e.success}),[e]);return{status:t,statusLabel:n[t]}},Za=e=>{const t=A(),{status:n}=Li();if(!(!e||n==="Success"))return n==="Mining"?t.miningTx:t.sendingOrderToWallet},ev=({tradingType:e})=>{const t=Xa(e);return r.jsx(R.Tab,{className:({selected:n})=>C("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))]":n,"!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))]":!n}),children:({selected:n})=>r.jsxs(r.Fragment,{children:[r.jsx("span",{children:t}),n?r.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:r.jsx("span",{children:t})}):null]})})},tv={[W.DEFAULT]:se.QuestionMarkCircleIcon,[W.ERROR]:se.ExclamationCircleIcon,[W.SUCCESS]:se.CheckCircleIcon,[W.WARNING]:se.ExclamationCircleIcon,[W.CUSTOM]:se.QuestionMarkCircleIcon},Hn=({tooltipText:e,value:t,label:n,children:a,type:s=W.DEFAULT,className:o,emphasised:i=!1})=>r.jsxs("div",{className:C("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},o),children:[r.jsxs("div",{className:"dtw-flex dtw-grow dtw-items-start dtw-justify-between",children:[r.jsxs("div",{className:"dtw-flex dtw-items-center dtw-gap-x-1",children:[r.jsx(ci,{text:e,placement:"top",Icon:tv[s],iconClassName:C({"dtw-text-[color:var(--panel-error-content-color)]":s===W.ERROR,"dtw-text-[color:var(--panel-warning-content-color)]":s===W.WARNING})}),r.jsx("p",{className:C({"dtw-text-[color:var(--panel-error-content-color)]":s===W.ERROR,"dtw-text-[color:var(--panel-warning-content-color)]":s===W.WARNING}),children:n})]}),r.jsx("div",{className:C({"dtw-text-[color:var(--panel-error-content-color)]":s===W.ERROR,"dtw-text-[color:var(--panel-warning-content-color)]":s===W.WARNING}),children:t})]}),a]}),Ja=({children:e,staticItems:t,collapseItems:n,themeType:a=W.DEFAULT,buttonItemChildren:s})=>{const o=A();return r.jsx("div",{className:"dtw-w-full dtw-flex dtw-flex-col dtw-gap-1",children:r.jsx(R.Disclosure,{children:({open:i})=>r.jsxs(r.Fragment,{children:[t?.map(l=>r.jsx(Hn,{...l},l.label)),r.jsx(R.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:r.jsxs(Hn,{tooltipText:o.fullReceiveDetails,label:o.tradeDetails,value:"",type:a,emphasised:!0,children:[s,r.jsx(Se.ChevronDownIcon,{className:C("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})})]})}),r.jsx(R.Transition,{show:i,children:r.jsxs(R.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=>r.jsx(Hn,{...l},l.label)),e]})})]})})})},ke=({className:e})=>r.jsx("svg",{className:C("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:r.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"})}),nv=({children:e})=>r.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}),av=({children:e})=>r.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}),pn=({Icon:e,onClick:t,className:n="dtw-h-7 dtw-w-7",containerClassName:a,disabled:s})=>r.jsx("div",{className:C("dtw-group dtw-w-fit dtw-cursor-pointer dtw-self-end dtw-rounded-lg dtw-p-1 hover:dtw-opacity-80",a,{"dtw-pointer-events-none":s}),onClick:t,children:r.jsx(e,{className:C("dtw-text-[color:var(--panel-icon-color)] group-hover:dtw-text-[color:var(--panel-icon-color-hover))]",n)})}),sv=({children:e,onClose:t})=>{const{defaultNotificationDuration:n}=G();return u.useEffect(()=>{const a=s=>{s.key==="Escape"&&t?.()};return window.addEventListener("keydown",a),()=>{window.removeEventListener("keydown",a)}},[t]),u.useEffect(()=>{const a=setTimeout(()=>{t?.()},n);return()=>{clearTimeout(a)}},[n,t]),r.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:r.jsxs("div",{className:"dtw-flex dtw-justify-between dtw-items-center",children:[r.jsx("div",{children:e}),!!t&&r.jsx(pn,{Icon:Zn.XMarkIcon,onClick:t,className:"dtw-w-6 dtw-h-6",containerClassName:"dtw-self-center"})]})})},rv=({children:e,className:t,transparent:n=!1,centered:a=!0,onClose:s,noPadding:o,onBack:i})=>(u.useEffect(()=>{const l=c=>{c.key==="Escape"&&s?.()};return window.addEventListener("keydown",l),()=>{window.removeEventListener("keydown",l)}},[s]),r.jsx("div",{className:C("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":!o}),children:r.jsxs("div",{className:C("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":a}),children:[e,!!i&&r.jsx("div",{className:"dtw-absolute dtw-top-5 dtw-left-5",children:r.jsx(pn,{Icon:Zn.ChevronLeftIcon,onClick:i})}),!!s&&r.jsx("div",{className:"dtw-absolute dtw-top-5 dtw-right-5",children:r.jsx(pn,{Icon:Zn.XMarkIcon,onClick:s})})]})})),ov=({children:e})=>r.jsx(R.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}),iv=({className:e,iconClassName:t,onClick:n,children:a})=>{const s=Ve(),o=()=>{n?.(),s?.(X.TRADING_SETTINGS_OPENED)};return r.jsxs(R.Popover,{className:C("dtw-flex dtw-items-center dtw-justify-end",e),children:[r.jsx(R.PopoverButton,{onClick:o,children:r.jsx(se.Cog6ToothIcon,{className:C("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)})}),r.jsx(R.PopoverBackdrop,{className:"dtw-absolute dtw-inset-0 dtw-bg-[var(--panel-popup-bg,var(--panel-secondary-color))] dtw-opacity-50"}),r.jsx(R.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:r.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:a})})]})},lv=({children:e})=>r.jsx(R.TabPanel,{children:r.jsx(iv,{children:e})}),q={InputGroup:nv,Meta:av,Settings:lv,Panel:ov,Overlay:rv,Notification:sv},cv=["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)]"],dv=["!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))]"],Y=({children:e,onClick:t,highlighted:n=!0,disabled:a=!1,className:s,type:o,loading:i=!1})=>r.jsxs("button",{className:C("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",{[dv.join(" ")]:n,[cv.join(" ")]:!n,"dtw-flex dtw-items-center dtw-justify-center dtw-gap-1":i},s),onClick:t,disabled:a||i,type:o,children:[i&&r.jsx(ke,{className:"dtw-h-4 dtw-w-4"}),e]}),Mi={GeoBlockAlert:()=>r.jsx(vt,{type:"error",children:r.jsx("span",{className:"dtw-text-sm",children:"Depositing is geo-blocked."})}),SanctionedAlert:()=>r.jsx(vt,{type:"error",children:r.jsx("span",{className:"dtw-text-sm",children:"Your address has been found on a sanctions list. Deposits are disabled."})}),AvailableLiquidityAlert:({liquidityAmount:e})=>r.jsxs(vt,{type:"warning",children:[r.jsx("p",{className:"dtw-text-center",children:e?`${e} withdrawal liquidity`:"Liquidity is running low"}),r.jsx("p",{className:"dtw-text-sm dtw-text-center",children:"Sell a smaller amount"})]}),MaxSupplyReachedAlert:({supplyCapInUsd:e})=>r.jsxs(vt,{type:"warning",children:[r.jsx("p",{className:"dtw-text-center dtw-text-base",children:"Supply caps reached"}),r.jsxs("p",{className:"dtw-text-sm dtw-text-center",children:["Can only buy ",e," more"]})]}),OnDemandWithdrawAlert:()=>r.jsxs(vt,{type:"info",children:[r.jsx("p",{className:"dtw-text-center",children:"On demand sell"}),r.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"})]})},ji=u.createContext(Mi),pv=({children:e,config:t})=>{const n=u.useMemo(()=>({...Mi,...t}),[t]);return r.jsx(ji.Provider,{value:n,children:e})},L=()=>{const e=u.useContext(ji);if(!e)throw new Error("ComponentContext is used out of Provider");return e},un=({children:e,promptText:t})=>{const{ActionButton:n=Y}=L();return r.jsxs("div",{children:[r.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:[r.jsx(se.ExclamationCircleIcon,{className:"dtw-h-5 dtw-w-5"}),r.jsx("div",{className:"dtw-py-1 dtw-text-xs",children:t})]}),r.jsx(Ha,{text:t,children:r.jsx(n,{disabled:!0,children:r.jsxs("div",{className:"dtw-flex dtw-items-center dtw-justify-center dtw-gap-2",children:[r.jsx(se.LockClosedIcon,{className:"dtw-h-5"}),r.jsx("span",{children:e})]})})})]})},Ye=({link:e,className:t,children:n,iconClassName:a="dtw-h-5 dtw-w-5",showDefaultIcon:s=!0})=>r.jsxs("a",{className:C("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&&r.jsx(se.ArrowTopRightOnSquareIcon,{className:a})]}),kn=({defaultEnabled:e=!1,onChange:t,disabled:n=!1,label:a,vertical:s=!1})=>{const[o,i]=u.useState(e);u.useEffect(()=>{i(e)},[e]);const l=c=>{n||(i(c),t?.(c))};return r.jsx(R.Field,{children:r.jsxs("div",{className:C("dtw-flex",{"dtw-flex-col dtw-gap-y-0.5":s,"dtw-items-center dtw-justify-between":!s}),children:[a&&r.jsx(R.Label,{className:"dtw-cursor-pointer dtw-text-xs",children:a}),r.jsx(R.Switch,{checked:o,onChange:l,className:C("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)]":o,"!dtw-bg-[color:var(--panel-switch-bg)] !dtw-text-[color:var(--panel-switch-color)]":!o,"dtw-pointer-events-none dtw-opacity-50":n}),children:r.jsx("span",{className:C("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)]":o,"dtw-translate-x-1 !dtw-bg-[color:var(--panel-switch-thumb-bg)]":!o})})})]})})},Bi=({balance:e,symbol:t})=>r.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}),uv=({onClick:e})=>{const t=A();return r.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})},$i=({style:e,className:t})=>r.jsx("div",{className:C("tw-animate-pulse tw-rounded tw-bg-themeGray-300 tw-bg-opacity-50 tw-h-6",t),style:e}),Fi=e=>r.jsx("img",{...e}),mv=(e,t)=>e===0?`dtw-z-${(t-1)*10}`:`dtw--ml-2 dtw-z-${(t-e-1)*10}`,yv=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}}},We=({symbols:e,size:t="m",className:n=""})=>{const{Image:a=Fi}=L(),s=e.join(""),[o,i]=u.useState({[s]:!1}),{height:l,width:c,diameter:d}=yv(t),p=Yb(e);if(!p?.length||!p[0]||o[s])return null;const m=()=>i(y=>({...y,[s]:!0}));return p.length===1?r.jsx(a,{src:p[0],alt:`${e[0]} icon`,className:C(l,c,n),width:d,height:d,onError:m}):r.jsx("span",{className:`dtw-flex-no-wrap dtw-z-0 dtw-flex ${l} ${n}`,children:p.map((y,w)=>r.jsx(a,{src:y,alt:`${e[w]} icon`,className:C("dtw-inline-block dtw-overflow-visible dtw-rounded-full",c,l,mv(w,e.length)),width:d,height:d,onError:m},w))})},$t=({symbol:e,iconSymbols:t,size:n,symbolClasses:a="dtw-text-sm dtw-font-medium",CustomIcon:s,customTitle:o,className:i})=>{const l=A(),c=o||(e==="all"?l.allAssets:e);return r.jsxs("div",{className:C("dtw-flex dtw-w-full dtw-items-center dtw-space-x-1.5",i),children:[s??r.jsx(We,{size:n,symbols:t,className:"dtw-flex-shrink-0"}),r.jsx("div",{className:a,title:c,children:c||r.jsx($i,{className:"dtw-w-[70px]"})})]})},vt=({className:e,children:t,type:n="error"})=>r.jsx("div",{className:C("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}),Gn=(e,t=!1)=>{if(!e)return"";let n="";t&&e.startsWith("-")&&(n="-",e=e.slice(1));const[a,s]=e.split("."),o=a?.replace(/\D/g,"");if(!o)return s?`${n}0.${s}`:n;const i=new Intl.NumberFormat().format(Number(o));return s!==void 0?`${n}${i}.${s.replace(/[^\d]/g,"")}`:`${n}${i}`},Vn=e=>e.replace(/,/g,""),wv=u.forwardRef(({value:e,onChange:t,formatOnBlurOnly:n=!1,allowNegative:a=!1,...s},o)=>{const i=c=>{const p=c.target.value.replace(a?/[^0-9.-]/g:/[^0-9.]/g,"").replace(/^(-?\d*\.\d*).*$/,"$1").replace(/^(-?\.)(.*)/,"$1$2");if(n)t?.(p,Vn(p));else{const m=Gn(p,a);t?.(m,Vn(m))}},l=()=>{if(!n)return;const c=Gn(e,a);t?.(c,Vn(c))};return r.jsx("input",{...s,ref:o,type:"text",inputMode:"decimal",value:Gn(e,a),onChange:i,onBlur:l})});wv.displayName="InputNumber";const je=({className:e})=>r.jsx("div",{className:C("dtw-w-full dtw-h-[1px] dtw-bg-[var(--panel-divider-color)] dtw-shrink-0",e)}),hv=()=>{const[e]=we(),[t,n]=Q(),[a,s]=u.useState(!1),o=t.slippage!=="auto";return{settings:t,tradingType:e,isCustomSlippage:o,invalidSlippage:a,onDefaultSlippageSelect:()=>{n({slippage:"auto"})},onCustomSlippageSelect:c=>{const d=c.target.value,p=+d<0||+d>100;s(p);let m=t.slippage;p||d.trim().length===0&&o?m="auto":d.trim().length>0&&(m=+d),n({slippage:m})}}},tr=({selected:e=!1,children:t,className:n,onClick:a})=>r.jsx("div",{className:C("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:a,children:t}),gv=0,fv=100,Wi=()=>{const e=A(),{settings:t,tradingType:n,isCustomSlippage:a,invalidSlippage:s,onDefaultSlippageSelect:o,onCustomSlippageSelect:i}=hv(),l=Ii({tradingType:n,slippage:t.slippage,minSlippage:t.minSlippage});return r.jsxs("div",{className:"dtw-flex dtw-items-stretch dtw-gap-x-3",children:[r.jsx(tr,{selected:!a,className:"dtw-w-14",onClick:o,children:e.auto}),r.jsxs("div",{className:"dtw-flex dtw-items-center dtw-gap-x-1 dtw-flex-1",children:[r.jsx(tr,{selected:a,className:"dtw-w-14",children:r.jsx("input",{className:C("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:gv,max:fv,onChange:i,placeholder:l,defaultValue:a?t.slippage.toString():""})}),r.jsx("span",{children:"%"})]})]})};function Rn(e,t,n){const a=pc[n??h.arbitrum.id]?.blockExplorers?.default?.url;if(a)switch(t){case"transaction":return`${a}/tx/${e}`;default:return`${a}/address/${e}`}}const Tv=({batchId:e,updatePendingTransactions:t})=>{const{data:n}=E.useWaitForCallsStatus({id:e,pollingInterval:ya,query:{enabled:!!e}}),a=n?.receipts?.[0]?.transactionHash;u.useEffect(()=>{a&&t({type:"update",txHash:a})},[a,t])},Ui=()=>{const[e,t]=re(),n=K()[1],a=Ao(),s=Co(),[o]=e,i=o?.batchId,l=o?.txHash,c=o?.action,d=c==="approve",p=o?.chainId,{invalidateTradingQueries:m,invalidateAllowanceQueries:y}=Nn();Tv({batchId:i,updatePendingTransactions:t});const{data:w,error:f}=E.useWaitForTransactionReceipt({hash:l,chainId:p,pollingInterval:ya,query:{enabled:!!l}});u.useEffect(()=>{if(w){const g=w.transactionHash;if(g){const v=Rn(g,"transaction",p);n({link:v,status:"Success",action:c}),t({type:"remove",status:"success",txHash:g}),s?.(w,c,v)}d?y():m()}},[w,d,p,c,s,t,n,y,m]),u.useEffect(()=>{f&&(n({isOpen:!1,status:"None",link:"",action:c,sendTokens:null,receiveTokens:null}),t({type:"remove",status:"fail"}),a?.(f,c,p,l))},[f,d,c,p,l,n,t,a])},Ke=({action:e,onErrorCallback:t,onSuccessCallback:n})=>{const[,a]=K(),[,s]=re(),[,o]=N(),i=So();return u.useCallback((l,c,d)=>{if(c){a({isOpen:!1,status:"None",link:"",sendTokens:null,receiveTokens:null}),s({type:"remove",status:"fail"}),console.debug(`${e} transaction failed`,c),i?.(c),t?.(c);return}if(l){console.debug(`${e} transaction started`,l),s({type:"update",txHash:l});const p=Rn(l,"transaction",d.chainId);a({isOpen:!0,status:"Mining",link:p}),e!=="approve"&&o({value:""}),n?.()}},[a,s,e,i,t,o,n])},es=({address:e,chainId:t,refetchInterval:n,disabled:a=!1})=>{const{supportedChainId:s}=Ce(),{data:o}=E.useReadContracts({contracts:[{address:z("factory",t??s),abi:He,functionName:"getAssetPrice",args:[e],chainId:t}],query:{enabled:!ee(e)&&!a,refetchInterval:n}});return _n(o),o?.[0]?.result},ce=({address:e,chainId:t,refetchInterval:n=ze,disabled:a})=>{const s=es({address:e,chainId:t,refetchInterval:n,disabled:a});return D.formatUnits(s??BigInt(0),O)},zi=()=>{const[e]=N(),[t]=P(),n=he({address:e.address,symbol:e.symbol}),a=new T(e.value),s=new T(t.value);return(a.gt(0)||s.gt(0))&&a.lte(n??0)};function bv(e,t,n,a){try{if(t==="all")return"";const s=Number(n),o=Number(a);return s===0||o===0||!isFinite(s)||!isFinite(o)?"":`1 ${e} = ${(o/s).toFixed(6)} ${t}`}catch{return""}}const Hi=()=>{const[e]=N(),[t]=P();return{value:bv(e.symbol,t.symbol,e.value,t.value),isLoading:!!t.isLoading}},Qe=()=>{const e=!Oe(),[{symbol:t}]=P(),[{isMultiAssetWithdrawalEnabled:n}]=Q();return e&&n&&t==="all"},ts=({onErrorCallback:e}={})=>{const{account:t}=B(),{chainId:n}=b(),a=Qe(),[s]=N(),o=new T(s.value||"0").shiftedBy(s.decimals).toFixed(0,T.ROUND_UP),i=z("easySwapperV2",n),{canSpend:l,isFetching:c}=al({tokenAddress:s.address,ownerAddress:t??_,spenderAddress:i,rawAmountToSpend:o,chainId:n,skip:a||o==="0"}),d=nl({token:s,rawTokenAmount:o,spenderAddress:i,onErrorCallback:e});return{canSpend:l,approve:d,isCanSpendFetching:c}},vv=({address:e,chainId:t})=>{const n=E.usePublicClient({chainId:t}),{data:{aaveAssetGuardAddress:a=_}={}}=Lt({address:e,chainId:t});return u.useCallback(async({withdrawAmountD18:s,slippage:o})=>ii({address:a,abi:Ic,functionName:"calculateSwapDataParams",args:[e,s,_a(o)],publicClient:n}),[a,e,n])},Gi=async({assets:e,getSwapQuotes:t,signal:n,buildKey:a})=>{const s=await Promise.all(e.map(o=>t({signal:n,variables:{...o,fromAddress:Or}})));return e.reduce((o,i,l)=>{const c=a(i);return o[c]=s[l]??null,o},{})},Vi=e=>e.length>1?1:0,xv=async({assets:e,getSwapQuotes:t,signal:n})=>Gi({assets:e,getSwapQuotes:t,signal:n,buildKey:oo}),Av=(e,t)=>{const n=Na(),{settings:{selectedAggregators:a}}=J();return tt.useQuery({queryKey:["getSwapsQuotes",e,a],queryFn:async({signal:s,queryKey:[,o]})=>await Gi({assets:o,getSwapQuotes:n,signal:s,buildKey:({sourceAddress:i})=>i}),...t})},Sv=new AbortController,Cv=Sv.signal,Ev=({chainId:e})=>{const{account:t=_}=B(),n=Na();return u.useCallback(async({swapParams:a,slippage:s})=>{const o=(a?.srcData??[]).map(({asset:i,amount:l})=>({chainId:e,sourceAddress:i,destinationAddress:a?.dstData.asset??_,walletAddress:t,amount:l.toString(),slippage:s.toString()}));return xv({assets:o,getSwapQuotes:n,signal:Cv})},[e,n,t])},Iv=({address:e,chainId:t})=>{const n=z("aaveLendingPoolV3",t),{data:{getSupportedAssets:a}={}}=jt({address:e,chainId:t}),s=vv({address:e,chainId:t}),o=Ev({chainId:t});return u.useCallback(async({withdrawAmountD18:i,slippage:l,estimate:c,transactionArgs:d})=>{const p=_a(l);if(!a?.some(g=>H(g,n)))return bs(a,p);const y=await Ed(a,n,{withdrawAmountD18:i,slippage:l,fetchAaveSwapParams:s,fetchAaveSwapQuotes:o}),w=Ad(y);return await Cd(w,y,p,c,d)??bs(a,p)},[n,s,o,a])},_v=()=>{const{defaultWithdrawSlippage:e,defaultSwapTransactionSlippage:t}=G(),n=!Oe(),{isCompleteWithdrawStep:a,isFetching:s}=Re(),[o]=P(),[,i]=Q(),l=Zi();u.useEffect(()=>{if(!(!n||o.isLoading||s)){if(a){const c=l<0?Math.abs(l):0,d=Number((c+t).toFixed(2));i({minSlippage:d});return}i({minSlippage:e})}},[i,o.isLoading,n,l,a,e,t,s])},Dv=()=>{const{account:e=_}=B(),{chainId:t}=b();return E.useReadContract({address:z("easySwapperV2",t),abi:ve,functionName:"withdrawalContracts",chainId:t,args:[e],query:{enabled:!ee(e)}})},ns=()=>{const{chainId:e}=b(),[t]=P(),n=es({address:t.address,chainId:e}),a=Ft(),s=Yi(),o=new T(s).shiftedBy(O).div(n?.toString()??"1").shiftedBy(t.decimals).toFixed(0,T.ROUND_DOWN),i=new T(o).times(1-yr/100).times(1-a/100).toFixed(0,T.ROUND_DOWN);return{expectedReceiveAmount:o,minExpectedReceiveAmount:i}},qi=({isClaim:e,onErrorCallback:t}={})=>{const n=b(),{data:a=[]}=me(),{data:s={}}=yt(),[o]=P(),{minExpectedReceiveAmount:i}=ns(),l=re()[1],c=e?"claim":"swap",d=Ke({action:c,onErrorCallback:t}),p=Ji(),{send:m,estimate:y}=xe({contractId:"easySwapperV2",functionName:sc,onSettled:d}),w=u.useCallback(async()=>{if(e||!p)return[];const f=Object.values(s)[0]?.map(({routerKey:g})=>g);if(!f?.length)return console.warn("[Complete Withdraw] No available routers found for swap"),[];for(const g of f){const v=Object.entries(s).reduce((k,[M,ne])=>{const Ae=ne?.find(Xe=>Xe.routerKey===g);return{...k,[M]:Ae}},{}),S=ld({assets:a,swapData:v,receiveAssetAddress:o.address}),{error:I}=await y(S,i);if(!I)return[S,i]}return console.error("[Complete Withdraw] All routers failed estimation"),[]},[e,p,s,i,a,o.address,y]);return u.useCallback(async()=>{l({type:"add",action:c,symbol:n.symbol,chainId:n.chainId});const f=await w();return console.log("Arguments",f),m(...f)},[c,n.chainId,n.symbol,m,w,l])},Yi=()=>{const{data:e=[]}=me();return e.reduce((t,{balance:n,price:a})=>t+n*a,0)},Ki=({account:e,chainId:t})=>E.useReadContract({address:z("easySwapperV2",t),abi:ve,functionName:"getTrackedAssets",chainId:t,args:[e],query:{enabled:!ee(e)}}),Nv=({assets:e,chainId:t})=>e.flatMap(({token:n})=>[{address:n,abi:D.erc20Abi,functionName:"symbol",chainId:t,args:[]},{address:n,abi:D.erc20Abi,functionName:"decimals",chainId:t,args:[]},{address:z("factory",t),abi:He,functionName:"getAssetPrice",chainId:t,args:[n]}]),Ov=3,Qi=({assets:e,chainId:t})=>{const n=u.useCallback(a=>e.map(({token:s,balance:o},i)=>{const l=i*Ov,c=l+1,d=c+1,p=Number(a[c]?.result??O),m=Ea[s.toLowerCase()]??a[l]?.result?.toString()??"";return{address:s,symbol:m,decimals:p,rawBalance:o,balance:new T(o.toString()).shiftedBy(-p).toNumber(),price:new T(a[d]?.result?.toString()??0).shiftedBy(-O).toNumber()}}),[e]);return E.useReadContracts({contracts:Nv({assets:e,chainId:t}),query:{enabled:e.length>0,select:n}})},me=()=>{const{account:e=_}=B(),{chainId:t}=b(),{data:n=[]}=Ki({account:e,chainId:t});return Qi({assets:n,chainId:t})},Re=()=>{const{data:e=[],isFetching:t}=me();return{isCompleteWithdrawStep:e?.length>0,isFetching:t}},yt=()=>{const{defaultSwapTransactionSlippage:e}=G(),{chainId:t}=b(),{account:n=_}=B(),[{slippage:a}]=Q(),[s]=P(),{data:o=[]}=me(),i=Ji(),l=u.useMemo(()=>o.filter(({address:c})=>!H(c,s.address)).map(({address:c,rawBalance:d})=>({chainId:t,sourceAddress:c,destinationAddress:s.address,walletAddress:n,amount:d.toString(),slippage:(a==="auto"?e:a).toString()})),[o,t,e,s.address,a,n]);return Av(l,{enabled:i,refetchInterval:wa})},Pv=()=>{const[e,t]=P(),{data:n=[]}=me(),{data:a,isFetching:s,isError:o}=yt();u.useEffect(()=>{t({isLoading:s})},[s,t]),u.useEffect(()=>{if(n.length===0||s||o)return;const i=n.reduce((l,c)=>{if(H(c.address,e.address))return l.plus(c.rawBalance.toString());const d=a?.[c.address]??[],m=d[Vi(d)]?.destinationAmount??"0";return l.plus(m)},new T(0));t({value:D.formatUnits(BigInt(i.toFixed()),e.decimals)})},[n,o,s,e.address,e.decimals,a,t])},Xi=({withdraw:e,isClaim:t,onErrorCallback:n})=>{const a=A(),s=ie(),{account:o}=B(),i=b(),[l]=P(),c=K()[1],d=re()[1],p=fn(),{data:m}=me(),{isFetching:y}=yt(),w=u.useCallback(async()=>{const f=i.chainId,g=(m??[]).map(({address:S,decimals:I,symbol:k,balance:M})=>({address:S,decimals:I,symbol:k,value:M.toString()})),v=t?null:g.filter(S=>!H(S.address,l.address));c({isOpen:!0,status:"Wallet",action:t?"claim":"swap",link:"",sendTokens:v,receiveTokens:t?g:[l]});try{await e()}catch(S){S instanceof ut&&(n?.(),s({type:"MERGE_OVERLAY",payload:{type:$.ERROR_NOTIFICATION,isOpen:!0,meta:{error:S.message}}}),p?.(S,i.address,f,o)),c({isOpen:!1,status:"None",link:"",sendTokens:null,receiveTokens:null}),d({type:"remove",status:"fail"})}},[o,m,s,t,n,p,i.address,i.chainId,l,d,c,e]);return{disabled:t?!1:y,label:t?a.claimAction:a.swapAction,handleTrade:w}},Zi=()=>{const{expectedReceiveAmount:e}=ns(),[t]=P(),n=new T(t.value||"0").shiftedBy(t.decimals);return e==="0"||n.isZero()?0:n.dividedBy(e).minus(1).times(100).decimalPlaces(2,T.ROUND_DOWN).toNumber()},Ji=()=>{const[e]=P(),{data:t=[]}=me();return t.length>0&&t.some(({address:n})=>!H(n,e.address))},kv=({handleTrade:e,onError:t})=>{const n=ie(),{data:a=[]}=me(),{data:s,isFetching:o,isError:i}=yt(),l=u.useRef(!1),c=a.length===0,d=a.length>1;u.useEffect(()=>{i&&(t(),n({type:"MERGE_OVERLAY",payload:{type:$.ERROR_NOTIFICATION,isOpen:!0,meta:{error:Br}}}))},[n,i,t]),u.useEffect(()=>{const p=d?!!s&&Object.values(s).length>0:!0;try{if(c||!p||o||l.current)return;l.current=!0,e()}catch(m){console.error(m)}},[a,o,s,e,d,c])},Ft=()=>{const{defaultWithdrawSlippage:e}=G(),{isCompleteWithdrawStep:t}=Re(),[{slippage:n,minSlippage:a}]=Q();return n==="auto"?t?a??e:e:n};function da(e,t,n){const[a,s]=u.useState(n),o=gn?e==="sessionStorage"?sessionStorage:localStorage:null,i=u.useCallback(l=>{try{s(l),o?.setItem(t,JSON.stringify(l))}catch(c){console.error(c)}},[t,o]);return u.useEffect(()=>{try{const l=o?.getItem(t);l&&s(JSON.parse(l))}catch(l){console.error(l)}},[t,o]),[a,i]}const as=(e,t)=>{const[n,a]=u.useState(e);return u.useEffect(()=>{const s=setTimeout(()=>{a(e)},t);return()=>{clearTimeout(s)}},[e,t]),n},Rv=()=>{const e=b(),[t]=N(),n=Qe(),a=Ft(),s=Iv(e);return u.useCallback(async o=>{const i=lo(t.value),l=n?[i]:[e.address,i],c=await s({withdrawAmountD18:i,slippage:a,estimate:o,transactionArgs:l});return[...l,c]},[s,n,e.address,t.value,a])},Lv=({debounceTime:e}={})=>{const t=b(),n=Qe(),[a]=N(),s=Ft(),{data:{getSupportedAssets:o}={}}=jt(t),i=as(a.value||"0",e??0);return u.useMemo(()=>{const l=_a(s),c=lo(i),d=(o??[]).map(p=>({supportedAsset:p,withdrawData:"",slippageTolerance:l}));return n?[c,d]:[t.address,c,d]},[s,i,o,n,t.address])},Mv=e=>typeof e[0]=="string"&&typeof e[1]=="bigint"&&Array.isArray(e[2]),jv=()=>{const e=b(),t=kt(),{canSpend:n}=ts(),a=Lv({debounceTime:dr}),s=Mv(a)&&a[1]!==BigInt(0)&&!t&&n,{data:o}=E.useSimulateContract({abi:ve,address:z("easySwapperV2",e.chainId),functionName:hr,args:a,query:{enabled:s}});return Qi({assets:o?.result[0]??[],chainId:e.chainId})},ss=()=>{const[e]=P(),{data:t=[],isFetching:n,isFetched:a}=jv(),s=Rt();return{isUnrollAndClaimTransaction:t?.length===1&&H(t[0]?.address,e.address)&&!s,isFetching:n,isFetched:a}},Bv=({onErrorCallback:e}={})=>{const t=b(),n=Qe(),{isUnrollAndClaimTransaction:a}=ss(),s=Rv(),o=re()[1],i=n?"multi_withdraw":a?"single_withdraw_and_claim":"single_withdraw",l=Ke({action:i,onErrorCallback:e}),c=n?wr:a?ac:hr,{send:d,estimate:p}=xe({contractId:n?"poolLogic":"easySwapperV2",dynamicContractAddress:n?t.address:void 0,functionName:c,onSettled:l});return{withdraw:u.useCallback(async()=>{o({type:"add",action:i,symbol:t.symbol,chainId:t.chainId});const y=await s(p);return console.log("Arguments",y),d(...y)},[o,i,t.symbol,t.chainId,s,p,d]),action:i}},rs=({trade:e,onErrorCallback:t})=>{const n=A(),a=ie(),{account:s}=B(),o=b(),[i]=N(),[l]=P(),[c]=we(),d=K()[1],p=re()[1],m=fn(),y=Qe(),{isUnrollAndClaimTransaction:w}=ss(),f=he({symbol:i.symbol,address:i.address}),g=c==="deposit",v=zi(),S=g?"deposit":y?"multi_withdraw":w?"single_withdraw_and_claim":"single_withdraw",I=async()=>{const k=o.chainId;d({isOpen:!0,status:"Wallet",action:S,link:"",sendTokens:[i],receiveTokens:g||w?[l]:null,meta:g?{}:{withdrawPercentage:i.value&&f?new T(i.value).div(f).toNumber():0}});try{await e()}catch(M){M instanceof ut&&(t?.(),a({type:"MERGE_OVERLAY",payload:{type:$.ERROR_NOTIFICATION,isOpen:!0,meta:{error:M.message}}}),m?.(M,o.address,k,s)),d({isOpen:!1,status:"None",link:"",sendTokens:null,receiveTokens:null,meta:{}}),p({type:"remove",status:"fail"})}};return{disabled:!v,label:g?n.depositAction:y?n.withdrawAction:w?n.unrollAndClaimAction:n.unrollAction,handleTrade:I}},$v=1,Fv="USD",Wv=({depositValueInUsd:e,apy:t,apyCurrencyPrice:n,currency:a})=>{if(e===0||!t||!a||n===0)return{yearlyEarnings:"-",dailyEarnings:"-",monthlyEarnings:"-"};const s=e*t/100/n;return{yearlyEarnings:tn({value:s,currency:a}),dailyEarnings:tn({value:s/365,currency:a}),monthlyEarnings:tn({value:s/12,currency:a})}},el=({currency:e,depositValueInUsd:t,chainId:n,apy:a,disabled:s})=>{const o=e==="ETH"?Jr[n]?.address:e==="BTC"?eo[n]?.address:void 0,i=ce({address:o??_,chainId:n,disabled:s||!a||!o}),l=o?Number(i):$v;return u.useMemo(()=>Wv({depositValueInUsd:t,apy:a,apyCurrencyPrice:l,currency:o?e:Fv}),[t,a,l,e,o])},tl=()=>{const e=we()[0]==="deposit",{chainId:t}=b(),[n]=qe(),[a]=N(),s=ce({address:a.address,chainId:t,disabled:!e||!n.apy}),o=el({chainId:t,apy:n.apy?.value,currency:n.apy?.currency,depositValueInUsd:+a.value*+s,disabled:!e});return e?{showEarnings:!!n.apy?.value,...o}:{dailyEarnings:null,yearlyEarnings:null,monthlyEarnings:null,showEarnings:!1}},Uv=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"},zv=(e,t)=>{const{settings:{selectedAggregators:n}}=J(),a=Na(),{isValid:s}=Uv({chainId:String(e.chainId),sourceAddress:e.sourceAddress,destinationAddress:e.destinationAddress,amount:e.amount,slippage:String(e.slippage)});return tt.useQuery({queryKey:["getSwapQuotes",{...e,fromAddress:Or},n],queryFn:async({signal:o,queryKey:[,i]})=>a({signal:o,variables:i}).then(l=>l?.filter(c=>!!c)??[]),...t,enabled:s&&(t?.enabled??!0)})},Ln=(e={})=>{const t=e?.extendedDebounceTime??!1,[n]=N(),a=as(n.value,t?dr:cr);return{debouncedSendTokenValue:a,isDebouncing:n.value!==a}},Hv=()=>{const e=On(),[{isBatchTransactionsEnabled:t}]=Q();return e&&t},Qt="approve",nl=({token:e,rawTokenAmount:t,spenderAddress:n,onErrorCallback:a})=>{const s=b(),[{isInfiniteAllowance:o}]=Q(),i=re()[1],l=K()[1],c=Ke({action:Qt,onErrorCallback:a}),{send:d}=xe({contractId:"erc20",dynamicContractAddress:e.address,functionName:Qt,onSettled:c});return u.useCallback(async()=>(l({isOpen:!0,status:"Wallet",link:"",action:Qt,sendTokens:[{symbol:e.symbol,address:e.address,decimals:e.decimals,value:""}],receiveTokens:null,meta:{}}),i({type:"add",action:Qt,symbol:e.symbol,chainId:s.chainId}),d(n,o?Ue:t)),[o,s.chainId,t,d,n,e.address,e.decimals,e.symbol,i,l])},al=({rawAmountToSpend:e,tokenAddress:t,ownerAddress:n,spenderAddress:a,chainId:s,skip:o=!1})=>{const{data:i,isFetching:l}=Tn({tokenAddress:t,ownerAddress:n,spenderAddress:a,chainId:s,skip:o});return u.useMemo(()=>o?{canSpend:!0,isFetching:!1}:!i||i===BigInt(0)?{canSpend:!1,isFetching:l}:!e||e==="0"?{canSpend:!0,isFetching:l}:{canSpend:new T(i.toString()).gte(e),isFetching:l},[l,e,i,o])},Gv=()=>{const[{isInfiniteAllowance:e},t]=Q(),n=Ve(),a=u.useCallback(s=>{t({isInfiniteAllowance:s}),n?.(X.INFINITE_ALLOWANCE_CHANGE,{[Te.IS_INFINITE.NAME]:s?1:0})},[t,n]);return u.useMemo(()=>[e,a],[e,a])},sl=()=>{const e=A(),[t,n]=Gv();return r.jsx(kn,{defaultEnabled:t,onChange:n,label:e.infinite})},Vv=()=>{const[{isBatchTransactionsEnabled:e},t]=Q(),n=Ve(),a=u.useCallback(s=>{t({isBatchTransactionsEnabled:s}),xd(s),n?.(X.BATCH_TRANSACTIONS_CHANGE,{[Te.IS_BATCH_TRANSACTIONS_ENABLED.NAME]:s?1:0})},[t,n]);return u.useMemo(()=>[e,a],[e,a])},rl=()=>{const e=A(),[t,n]=Vv();return r.jsx(kn,{defaultEnabled:t,onChange:n,label:e.batchTransactionsSwitchLabel})},qv=()=>{const[{availableAggregators:e,selectedAggregators:t},n]=Q(),a=u.useCallback(s=>{const o=t.includes(s)?t.filter(i=>i!==s):[...t,s];n({selectedAggregators:o})},[t,n]);return{availableAggregators:e,selectedAggregators:t,onAggregatorToggle:a}},ol=()=>{const e=A(),{availableAggregators:t,selectedAggregators:n,onAggregatorToggle:a}=qv();return t.length<=1?null:r.jsx($e,{label:e.aggregatorsLabel,tooltipText:e.aggregatorsTooltip,children:r.jsx("div",{className:"dtw-flex dtw-flex-col dtw-gap-2",children:t.map(s=>r.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,r.jsx(kn,{defaultEnabled:n.includes(s),onChange:()=>a(s),size:"sm"})]},s))})})},Yv=()=>{const e=On(),t=A();return r.jsxs(r.Fragment,{children:[r.jsx($e,{label:t.slippageTolerance,tooltipText:t.depositSlippageWarning,children:r.jsx(Wi,{})}),r.jsx($e,{label:t.tokenAllowance,tooltipText:t.toggleTokenApprovalAmount,children:r.jsx(sl,{})}),e&&r.jsx($e,{label:t.batchTransactionsLabel,tooltipText:t.batchTransactionsTooltip,children:r.jsx(rl,{})}),r.jsx(ol,{})]})},Kv=()=>{const{chainId:e,address:t}=b(),{data:{isCustomCooldownDepositAllowed:n}={}}=Lt({address:t,chainId:e});return n!==!1},nr=(e,t)=>e.length?e.find(({tokenAddress:a})=>Object.values(Qc[t]??{}).some(s=>H(s.address,a)))?.tokenAddress??e[0]?.tokenAddress:null,wt=()=>{const[e]=N(),{chainId:t,address:n}=b(),a=mt({address:n,chainId:t}),s=Kv();return u.useMemo(()=>{const o=a.filter(({isDeposit:c})=>c);if(hn(e.symbol,t)){const c=o.find(({tokenName:d})=>Ze[t]?.wrappedNativeTokenName===d);return c?{depositMethod:s?Ie.NATIVE_CUSTOM:Ie.NATIVE,vaultDepositTokenAddress:c.tokenAddress}:{depositMethod:s?Ie.ZAP_NATIVE_DEPOSIT_CUSTOM:Ie.ZAP_NATIVE_DEPOSIT,vaultDepositTokenAddress:nr(o,t)??e.address}}const l=o.find(({tokenAddress:c})=>H(c,e.address));return l?{depositMethod:s?Ie.DEPOSIT_CUSTOM:Ie.DEPOSIT,vaultDepositTokenAddress:l.tokenAddress}:{depositMethod:s?Ie.ZAP_DEPOSIT_CUSTOM:Ie.ZAP_DEPOSIT,vaultDepositTokenAddress:nr(o,t)??e.address}},[t,s,a,e.address,e.symbol])},Wt=()=>{const[e]=N(),{vaultDepositTokenAddress:t}=wt();return!H(e.address,t)},os=()=>{const{defaultSwapTransactionSlippage:e}=G(),[{slippage:t}]=Q(),n=Wt();return t==="auto"?n?e:yn:t},Mn=()=>{const{account:e=_}=B(),{chainId:t}=b(),[n]=N(),{debouncedSendTokenValue:a}=Ln(),{vaultDepositTokenAddress:s}=wt(),o=Wt();return zv({sourceAddress:n.address,destinationAddress:s,amount:new T(a).shiftedBy(n.decimals).toFixed(0),chainId:t,slippage:"33",walletAddress:e},{enabled:o&&!!a,refetchInterval:wa})},il=()=>{const{defaultNoSwapMinDepositAmountGap:e}=G(),{address:t,chainId:n}=b(),[a]=N(),[s]=P(),{data:{entryFee:o}={}}=oe({address:t,chainId:n}),i=Ne(Number(o??"0"),ye),[{slippage:l}]=Q(),c=l==="auto",d=os(),p=Wt(),m=+ce({address:a.address,chainId:n}),y=+ue({address:t,chainId:n});if(p){const g=Number(a.value||0)*m*(1-i/100)/y;return new T(g).shiftedBy(s.decimals).times(1-d/100).toFixed(0)}const w=c?e:d;return new T(s.value||"0").shiftedBy(s.decimals).times(1-w/100).toFixed(0)},Qv=({isDepositWithSwapTransaction:e,sendTokenAddress:t,sendTokenValue:n})=>{const{chainId:a}=b(),s=+ce({address:t,chainId:a}),{vaultDepositTokenAddress:o}=wt(),{data:i}=E.useReadContract({address:o,abi:D.erc20Abi,functionName:"decimals",chainId:a}),l=+ce({address:o,chainId:a,refetchInterval:ze,disabled:!e}),c=Number(n||"0")*s;return i&&l!==0?new T(c/l).shiftedBy(i).times(1-yr/100).toFixed(0):"0"},ll=()=>{const[e]=N(),{debouncedSendTokenValue:t}=Ln(),n=Wt(),a=Qv({isDepositWithSwapTransaction:n,sendTokenAddress:e.address,sendTokenValue:t});return n?a:new T(t||"0").shiftedBy(e.decimals).toFixed(0)},pa=(e,t,n=[])=>{const{vaultAddress:a,vaultDepositTokenAddress:s,vaultDepositTokenAmount:o,minVaultTokensReceivedAmount:i,sendTokenAmount:l}=t;switch(e){case"nativeDeposit":case"nativeDepositWithCustomCooldown":return[a,i,{value:o}];case"deposit":case"depositWithCustomCooldown":return[a,s,o,i];case"zapNativeDeposit":case"zapNativeDepositWithCustomCooldown":return[...n,{value:l}];case"zapDeposit":case"zapDepositWithCustomCooldown":return n}},Xv=async({baseArgs:e,swapQuotes:t,estimate:n,depositSlippage:a,sendTokenAddress:s,depositMethod:o})=>{const{vaultAddress:i,vaultDepositTokenAddress:l,vaultDepositTokenAmount:c,minVaultTokensReceivedAmount:d,sendTokenAmount:p}=e;if(!t?.length)return console.warn("[Deposit] No available routers found for swap"),[];if(!n){const y=t[Vi(t)],w=hs({vaultAddress:i,sendTokenAddress:s,sendTokenAmount:p,minVaultTokensReceivedAmount:d,vaultDepositTokenAddress:l,swapData:y?.rawTransaction.data??"0x",routerKey:y?.routerKey,swapDestinationAmount:c,swapSlippage:a});return pa(o,e,w)}let m=[];for(const y of t){const w=hs({vaultAddress:i,sendTokenAddress:s,sendTokenAmount:p,minVaultTokensReceivedAmount:d,vaultDepositTokenAddress:l,swapData:y?.rawTransaction.data??"0x",routerKey:y?.routerKey,swapDestinationAmount:c,swapSlippage:a});m=pa(o,e,w);const{error:f}=await n(...m);if(!f)return m}return console.warn("[Deposit] No valid routers found for swap"),m},Zv=e=>e==="zapNativeDeposit"||e==="zapNativeDepositWithCustomCooldown"||e==="zapDeposit"||e==="zapDepositWithCustomCooldown",Jv=({depositMethod:e,vaultDepositTokenAddress:t})=>{const{address:n}=b(),[a]=N(),s=a.value||"0",o=new T(s).shiftedBy(a.decimals).toFixed(0),i=ll(),{data:l}=Mn(),c=il(),d=os();return u.useCallback(async p=>{const m={vaultAddress:n,vaultDepositTokenAddress:t,vaultDepositTokenAmount:i,minVaultTokensReceivedAmount:c,sendTokenAmount:o},y=Zv(e);try{return y?Xv({baseArgs:m,swapQuotes:l,estimate:p,depositSlippage:d,sendTokenAddress:a.address,depositMethod:e}):pa(e,m)}catch(w){return console.error(w),[]}},[n,e,d,c,a.address,o,l,t,i])},cl=()=>{const{chainId:e}=b(),[t]=P(),n=re()[1],{depositMethod:a,vaultDepositTokenAddress:s}=wt(),o=Jv({depositMethod:a,vaultDepositTokenAddress:s}),i=u.useCallback(()=>{n({type:"add",action:"deposit",symbol:t.symbol,chainId:e})},[n,t.symbol,e]);return{chainId:e,depositMethod:a,buildDepositTransactionArgs:o,addPendingTransaction:i}},ex="deposit",tx=({onDepositSettled:e})=>{const{depositMethod:t,buildDepositTransactionArgs:n,addPendingTransaction:a}=cl(),s=Ke({action:ex,onErrorCallback:e,onSuccessCallback:e}),{send:o,estimate:i}=xe({contractId:"easySwapperV2",functionName:t,onSettled:s});return u.useCallback(async()=>{a();const l=await n(i);return o(...l)},[a,o,n,i])},dl=()=>{const{account:e=_}=B(),{chainId:t}=b(),[n]=N(),a=z("easySwapperV2",t),s=new T(n.value||"0").shiftedBy(n.decimals).toFixed(0,T.ROUND_UP),{canSpend:o}=al({tokenAddress:n.address,ownerAddress:e,spenderAddress:a,rawAmountToSpend:s,chainId:t,skip:hn(n.symbol,t)||s==="0"});return{approve:nl({token:n,rawTokenAmount:s,spenderAddress:a}),canSpend:o}},nx=()=>{const[e,t]=u.useState("idle"),n=u.useRef(!1),a=u.useCallback(()=>{t("idle"),n.current=!1},[]),s=tx({onDepositSettled:a}),{handleTrade:o}=rs({trade:s,onErrorCallback:a}),{approve:i,canSpend:l}=dl(),{chainId:c}=b(),[{action:d,status:p}]=K(),[m]=re(),y=m.find(v=>v.action==="approve")?.txHash,{data:w}=E.useWaitForTransactionReceipt({hash:y,pollingInterval:ya,query:{enabled:!!y&&e==="waiting-confirmation"}});return u.useEffect(()=>{(async()=>{if(w&&e==="waiting-confirmation"&&!n.current){n.current=!0,t("depositing");const S=nd[c];await new Promise(I=>setTimeout(I,S)),await o()}})()},[w,c,e,o]),u.useEffect(()=>{e==="waiting-confirmation"&&d==="approve"&&p==="None"&&(t("idle"),n.current=!1)},[e,d,p]),{approveAndDeposit:u.useCallback(async()=>{if(l)return o();t("approving"),n.current=!1;try{await i(),t("waiting-confirmation")}catch(v){throw t("idle"),v}},[l,i,o]),isLoading:e!=="idle",flowState:e}},ax=({address:e,chainId:t})=>{const[n]=N(),a=Oe(),{vaultDepositTokenAddress:s}=wt(),o=ll(),i=!!(o&&+o>0),l=E.useReadContract({address:z("easySwapperV2",t),abi:ve,functionName:"depositQuote",args:[e,s,BigInt(o??0)],chainId:t,query:{enabled:a&&i&&!!n.address&&!!o,refetchInterval:ze}});return Wa(l),l},sx=()=>{const{address:e,chainId:t}=b(),n=Oe(),[a]=N(),[s,o]=P(),[,i]=Q(),{isDebouncing:l,debouncedSendTokenValue:c}=Ln(),{isFetching:d}=Mn(),{data:p,isFetching:m}=ax({address:e,chainId:t}),y=d||m||l;u.useEffect(()=>{if(!n||y)return;const w=p?new T(p.toString()).shiftedBy(-s.decimals).toFixed(s.decimals):"";o({value:w})},[p,s.decimals,a.address,o,n,y,c]),u.useEffect(()=>{n&&o({isLoading:y})},[n,y,o]),u.useEffect(()=>{n&&(!a.value||a.value==="0")&&(o({value:"0"}),i({minSlippage:0}))},[o,i,a.value,n])},pl=(e={})=>{const{address:t,chainId:n}=b(),{data:a}=oe({address:t,chainId:n}),[s]=N(),[o]=P(),i=ce({address:s.address,chainId:n}),l=ue({address:t,chainId:n}),c=e.includesEntryFee?Ne(Number(a?.entryFee??"0"),ye):0;return u.useMemo(()=>{const d=Number(s.value||"0"),p=new T(d).times(i??"0").times(1-c/100),m=Number(o.value||"0"),y=new T(m).times(l??"0");return p.isZero()||y.isZero()?0:p.decimalPlaces(_t(d)).comparedTo(y.decimalPlaces(_t(m)))&&p.isGreaterThan(0)?y.dividedBy(p).minus(1).times(100).decimalPlaces(2,T.ROUND_DOWN).toNumber():0},[c,o.value,s.value,i,l])},rx=()=>{const e=Oe(),[t]=P(),[,n]=Q(),{isDebouncing:a}=Ln({extendedDebounceTime:!0}),s=os(),o=pl({includesEntryFee:!0});u.useEffect(()=>{if(!e||t.isLoading||a)return;const i=o-s,l=i<0?Math.abs(Number(i.toFixed(2))):0;n({minSlippage:l})},[n,e,t.isLoading,o,s,a])};function ox(e,t,n,a){for(var s=e.length,o=n+(a?1:-1);a?o--:++o<s;)if(t(e[o],o,e))return o;return-1}var ix=ox;function lx(e){return e!==e}var cx=lx;function dx(e,t,n){for(var a=n-1,s=e.length;++a<s;)if(e[a]===t)return a;return-1}var px=dx,ux=ix,mx=cx,yx=px;function wx(e,t,n){return t===t?yx(e,t,n):ux(e,mx,n)}var hx=wx,gx=hx;function fx(e,t){var n=e==null?0:e.length;return!!n&&gx(e,t,0)>-1}var Tx=fx;function bx(e,t,n){for(var a=-1,s=e==null?0:e.length;++a<s;)if(n(t,e[a]))return!0;return!1}var vx=bx;function xx(){}var Ax=xx,qn=Go,Sx=Ax,Cx=La,Ex=1/0,Ix=qn&&1/Cx(new qn([,-0]))[1]==Ex?function(e){return new qn(e)}:Sx,_x=Ix,Dx=jo,Nx=Tx,Ox=vx,Px=Bo,kx=_x,Rx=La,Lx=200;function Mx(e,t,n){var a=-1,s=Nx,o=e.length,i=!0,l=[],c=l;if(n)i=!1,s=Ox;else if(o>=Lx){var d=t?null:kx(e);if(d)return Rx(d);i=!1,s=Px,c=new Dx}else c=t?[]:l;e:for(;++a<o;){var p=e[a],m=t?t(p):p;if(p=n||p!==0?p:0,i&&m===m){for(var y=c.length;y--;)if(c[y]===m)continue e;t&&c.push(m),l.push(p)}else s(c,m,n)||(c!==l&&c.push(m),l.push(p))}return l}var jx=Mx,Bx=ti,$x=jx;function Fx(e,t){return e&&e.length?$x(e,Bx(t)):[]}var Wx=Fx;const Ux=bn(Wx),jn=()=>{const{address:e,chainId:t,depositParams:n}=b(),{account:a}=B(),s=mt({address:e,chainId:t}),o=Rt(),[{isCustomDepositOptionsDisabled:i}]=Q(),[l]=No(),c=u.useMemo(()=>Ux([...s.filter(({isDeposit:y})=>y).map(({tokenAddress:y,tokenName:w,precision:f})=>({address:y.toLowerCase(),symbol:w,decimals:f})),...i?[]:[...n.customTokens.map(y=>({...y,address:y.address.toLowerCase()})),...l?.[t]??[]]],"address"),[s,i,n.customTokens,l,t]),d=!!c.length,p=!!a&&d,{data:m}=E.useReadContracts({contracts:c.map(({address:y})=>({address:y,abi:D.erc20Abi,functionName:"balanceOf",args:[a??_],chainId:t})),query:{enabled:p}});return _n(m),u.useMemo(()=>{if(!d)return[];const y=[];for(let g=0;g<c.length;g++)y[g]={value:"",address:c[g]?.address??_,symbol:c[g]?.symbol??c[g]?.address??_,balance:m?.[g]?.result?Fe((m?.[g]?.result).toString()??"0",c[g]?.decimals??O):0,decimals:c[g]?.decimals??O};const w=y.slice().sort((g,v)=>g.balance&&v.balance?v.balance-g.balance:0),f=w.find(({symbol:g})=>g===n.defaultDepositTokenSymbol);return[...f?[f]:[],...w.filter(({symbol:g})=>g!==n.defaultDepositTokenSymbol),...o||i?[]:[{value:"",address:Ze[t]?.address??_,symbol:Ze[t]?.nativeTokenSymbol??"",decimals:Ze[t]?.decimals??O}]]},[d,o,i,t,c,m,n.defaultDepositTokenSymbol])},zx=()=>{const e=b(),[t]=jn(),n=N()[1],[a]=we();u.useEffect(()=>{a==="deposit"&&t?.symbol&&n({address:t?.address,symbol:t.symbol,decimals:t?.decimals,value:"",isLoading:!t.symbol})},[n,e.address,a,t?.symbol,t?.address,t?.decimals])},Hx=()=>{const{chainId:e,address:t,deprecated:n}=b(),{data:{isPrivateVault:a}={isPrivateVault:!1}}=oe({address:t,chainId:e}),s=a||n,o=mi({address:t,chainId:e});return{isVaultDepositLocked:s,isAccountWhitelisted:o}},ul=()=>{const{defaultLockTime:e}=G(),{chainId:t,address:n}=b(),{data:{customCooldown:a}={}}=Lt({address:n,chainId:t}),{depositMethod:s}=wt(),o=a?Et.formatDuration({minutes:Number(a)/60}):e;switch(s){case"depositWithCustomCooldown":case"nativeDepositWithCustomCooldown":case"zapDepositWithCustomCooldown":case"zapNativeDepositWithCustomCooldown":return o;default:return e}},Gx="1",Vx=()=>{const{account:e=_}=B(),{address:t,chainId:n}=b(),[a]=P(),s=ue({address:t,chainId:n}),{minDepositUSD:o}=Va(t,n),{data:i}=bi({address:t,chainId:n,account:e}),l=i?.balanceInUsdNumber??0,c=s==="0"?Gx:s,d=Math.max(0,o-l),p=new T(a.value||"0").multipliedBy(c);return{requiresMinDeposit:p.isZero()?!1:p.lte(d),requiredMinDepositAmount:te({value:d})}},is=e=>{const[{action:t,status:n}]=K();return t===e&&(n==="Wallet"||n==="Mining")},ml=e=>{const t=ie(),{onAcceptTermsOfUse:n}=Ka(),{termsOfUseAccepted:a}=G(),{disabled:s,label:o,handleTrade:i}=rs({trade:e}),{isError:l,isLoading:c}=Mn(),d=is("deposit");return{handleClick:()=>{if(l){t({type:"MERGE_OVERLAY",payload:{type:$.ERROR_NOTIFICATION,isOpen:!0,meta:{error:jr}}});return}a?i():t({type:"MERGE_OVERLAY",payload:{type:$.TERMS_OF_USE,isOpen:!0,onConfirm:async y=>{try{y(!0),await n()&&i()}catch{console.error("Failed to verify terms of use acceptance")}finally{y(!1)}}}})},disabled:s||c,label:o,isLoading:d}},qx=()=>{const e=A(),{approveAndDeposit:t,isLoading:n,flowState:a}=nx(),{handleClick:s,disabled:o}=ml(t);return{handleClick:s,disabled:o,isLoading:n,buttonText:(()=>{switch(a){case"approving":case"waiting-confirmation":return e.approveDepositStep;case"depositing":return e.depositNowStep;default:return e.deposit}})()}},Yx=()=>{const{ActionButton:e=Y}=L(),{handleClick:t,disabled:n,isLoading:a,buttonText:s}=qx();return r.jsx(e,{onClick:t,disabled:n,loading:a,children:s})},Kx=()=>{const{chainId:e}=b(),[t]=N(),n=z("easySwapperV2",e),a=new T(t.value||"0").shiftedBy(t.decimals).toFixed(0,T.ROUND_UP);return u.useMemo(()=>({address:t.address,abi:D.erc20Abi,functionName:"approve",chainId:e,args:[n,a]}),[e,a,t.address,n])},Qx=e=>{const[,t]=K(),[,n]=re(),[,a]=N(),[,s]=Q(),o=So();return u.useCallback((i,l)=>{if(l){s({isBatchTransactionsEnabled:!1}),t({isOpen:!1,status:"None",link:"",sendTokens:null,receiveTokens:null}),n({type:"remove",status:"fail"}),console.debug(`${e} transaction failed`,l),o?.(l);return}const c=i?.id;c&&(console.debug(`${e} transaction started, batch id:`,c),n({type:"update",batchId:c}),t({isOpen:!0,status:"Mining"}),a({value:""}))},[s,t,n,e,o,a])},Xx=({address:e,abi:t,functionName:n,args:a,value:s})=>({to:e,data:D.encodeFunctionData({abi:t,functionName:n,args:a}),value:s}),Zx=({onSettled:e})=>{const{sendCalls:t}=E.useSendCalls({mutation:{onSettled:e}});return u.useCallback(async n=>t({calls:n.map(Xx),forceAtomic:!0}),[t])},Jx="deposit",eA=()=>{const{chainId:e,depositMethod:t,buildDepositTransactionArgs:n,addPendingTransaction:a}=cl(),s=Kx(),o=Qx(Jx),i=Zx({onSettled:o});return u.useCallback(async()=>{a();const l=await n(),c={address:z("easySwapperV2",e),abi:ve,functionName:t,args:l};return i([s,c])},[a,e,t,n,i,s])},tA=()=>{const{ActionButton:e=Y}=L(),t=eA(),{handleClick:n,label:a,disabled:s,isLoading:o}=ml(t);return r.jsx(e,{onClick:n,disabled:s,loading:o,children:a})},nA=()=>{const e=Hv(),{deprecated:t,symbol:n,chainId:a,maintenance:s,maintenanceDeposits:o,depositCapacity:i}=b(),[l]=N(),c=kt(),d=ce({address:l.address,chainId:a}),{isVaultDepositLocked:p,isAccountWhitelisted:m}=Hx(),{canSpend:y}=dl(),{requiresHighSlippageConfirm:w,confirmHighSlippage:f,slippageToBeUsed:g}=Qa(),{requiresMinDeposit:v,requiredMinDepositAmount:S}=Vx(),k=Number(l.value||"0")*Number(d),M=i!==void 0&&k>i;return{requiresMinDeposit:v,requiresWhitelist:p&&!m,requiresApprove:!y,requiresHighSlippageConfirm:w,poolSymbol:n,requiredMinDepositAmount:S,deprecated:t,confirmHighSlippage:f,slippageToBeUsed:g,maintenance:s||o,exceedsDepositCapacity:M,isBatchContractWritesTrading:e,insufficientBalance:c}},aA=()=>{const{ActionButton:e=Y}=L(),t=A(),n=Xa("deposit"),{requiresMinDeposit:a,requiredMinDepositAmount:s,requiresApprove:o,requiresWhitelist:i,requiresHighSlippageConfirm:l,deprecated:c=!1,poolSymbol:d,slippageToBeUsed:p,confirmHighSlippage:m,maintenance:y,isBatchContractWritesTrading:w,insufficientBalance:f,exceedsDepositCapacity:g}=nA();return a?r.jsx(e,{disabled:!0,children:t.minimumPurchase.replace("{value}",s)}):i||y?r.jsx(un,{promptText:c?t.poolIsInactive.replace("{poolSymbol}",d):y?t.poolDepositsAreMaintenance.replace("{poolSymbol}",d):t.poolIsPrivate,children:n}):g?r.jsx(un,{promptText:t.exceedsDepositCapacity.replace("{poolSymbol}",d),children:n}):f?r.jsx(e,{disabled:!0,children:t.insufficientBalance}):l?r.jsx(e,{onClick:m,children:t.confirmMaxSlippage.replace("{slippagePercentage}",`${Math.abs(p)}`)}):o&&w?r.jsx(tA,{}):r.jsx(Yx,{})},sA=()=>{const[e,t]=N(),{chainId:n}=b(),a=ce({address:e.address,chainId:n}),s=he({symbol:e.symbol,address:e.address});return{...e,price:a,balance:s,updater:t}},rA=()=>{const{address:e,chainId:t}=b(),[n]=P(),a=ue({address:e,chainId:t});return{...n,price:a}},oA=()=>{const e=sA(),t=rA(),n=Ve(),a=pl(),[{minSlippage:s}]=Q();return{autoFocus:!1,sendToken:e,receiveToken:t,tradingPriceDiff:a,minSlippage:s,onInputFocus:()=>{n?.(X.INVEST_INPUT_FOCUS,{symbol:e.symbol,address:Da(e.address)})},onInputChange:l=>{e.updater({value:l})}}},mn=({children:e})=>r.jsx("table",{className:"dtw-min-w-full dtw-border-separate",style:{borderSpacing:"0px 0.25rem"},children:r.jsx("tbody",{children:e})}),yl=({children:e})=>{const t=A();return r.jsx(R.Disclosure,{children:({open:n})=>r.jsxs(r.Fragment,{children:[r.jsxs(R.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,r.jsx(Se.ChevronDownIcon,{className:C("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})})]}),r.jsx(R.Transition,{show:n,children:r.jsx(R.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})})]})})},iA=e=>{const{address:t,chainId:n}=b(),[{value:a}]=N(),s=wi({vaultTokensAmount:a,address:t,chainId:n}),o=e?s.length:br,i=s.find(({tokenAddress:p})=>no.some(m=>H(p,m))),l=!!i&&i.amount!=="0",{firstPart:c,secondPart:d}=io(s,o);return{visibleAssets:c,hiddenAssets:d,showUnitWithdrawalTip:l,unitSymbol:i?.tokenName,unitAddress:i?.tokenAddress??_}},lA=({symbol:e})=>{const t=A();return r.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," ",r.jsx(We,{symbols:[e],size:"xs"})," ",e]})},wl=({className:e,showFraction:t=!0,iconSize:n,showAllAsset:a=!1})=>{const{visibleAssets:s,hiddenAssets:o,showUnitWithdrawalTip:i,unitSymbol:l,unitAddress:c}=iA(a),d=u.useCallback(({fraction:p,fractionUsd:m,tokenName:y,asset:w,tokenAddress:f})=>{const g=go(f);return r.jsxs("tr",{children:[r.jsxs("td",{style:{width:150,maxWidth:150},children:[r.jsx($t,{symbol:y,iconSymbols:w.iconSymbols,symbolClasses:"dtw-text-xs dtw-font-bold",size:n}),g&&r.jsx(lA,{symbol:fo(f).symbol})]}),t&&r.jsxs("td",{style:{width:150,maxWidth:150},children:[r.jsx("p",{className:"dtw-truncate",children:p}),r.jsx("p",{className:"dtw-truncate dtw-text-xs dtw-text-[color:var(--panel-secondary-content-color)]",children:m})]})]},y)},[n,t]);return r.jsx("div",{className:C("dtw-text-sm dtw-font-light",e),children:s.length>0?r.jsxs(r.Fragment,{children:[r.jsx(mn,{children:s.map(d)}),o.length>0&&r.jsx(yl,{children:r.jsx(mn,{children:o.map(d)})}),i&&r.jsxs("p",{className:"dtw-text-warning dtw-text-[length:var(--panel-label-font-size)]",children:[l," can be redeemed using"," ",r.jsxs("a",{className:"dtw-text-warning dtw-inline-flex dtw-gap-0.5",href:hd(c),target:"_blank",rel:"noreferrer",children:["Flat Money ",r.jsx(se.ArrowTopRightOnSquareIcon,{className:"dtw-w-3"})]})]})]}):r.jsx($i,{})})},cA=({symbol:e})=>{const t=at(),n=ie(),{standalone:a}=G(),s=t.some(p=>p.symbol===e),o=e==="all",i=Eo(),l=s&&t.length===1;return{isAllSymbol:o,onClick:()=>{i?.({isOpen:!0,entity:s?"pool":"token"}),a&&n({type:"MERGE_OVERLAY",payload:{type:s?$.POOL_SELECT:$.TOKEN_SELECT,isOpen:!0}})},disabled:l,hideTokenIcon:a&&s}},dA=({symbol:e})=>{const{isAllSymbol:t,onClick:n,disabled:a,hideTokenIcon:s}=cA({symbol:e}),o=A();return r.jsxs("button",{className:C("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":a}),onClick:n,disabled:a,children:[r.jsx($t,{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?r.jsx(an.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?o.all:void 0}),!a&&r.jsx(an.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 pA(e,t){const n=new T(e);return t&&n.gt(0)?n.toFixed(6):e}const uA=e=>{e.currentTarget.blur()},mA=({displayCalculatedValue:e,assetInput:t="",assetPrice:n,tradingPriceDiff:a=0,type:s,onInputChange:o,maxBalance:i,autoFocus:l=!1,disabled:c=!1})=>{const d=u.useRef(null),{usdAmount:p,isEstimated:m}=u.useMemo(()=>{const g=Number(t||0)*Number(n||0);if(!e||isNaN(g))return{usdAmount:"",isEstimated:!1};const v=te({value:g,maximumFractionDigits:_t(g)});return a?{usdAmount:`${v} (${a>0?"+":""}${a}%${s===W.ERROR?"⚠":""})`,isEstimated:c}:{usdAmount:v,isEstimated:c}},[t,n,a,e,s,c]),y=()=>{d.current?.focus()},w=g=>{o&&o(g.target.value)},f=()=>{o&&i&&o(i)};return{inputRef:d,usdAmount:p,isEstimated:m,value:pA(t,c),autoFocus:l,onContainerClick:y,onMaxBalanceClick:f,onInputChange:w}},Dt=e=>{const{inputRef:t,usdAmount:n,isEstimated:a,autoFocus:s,value:o,onContainerClick:i,onMaxBalanceClick:l,onInputChange:c}=mA(e),{assetSymbol:d,onInputFocus:p,disabled:m=!1,displayMax:y=!1,displayCalculatedValue:w=!1,type:f=W.DEFAULT,isLoading:g=!1,children:v}=e,S=A(),I=C({"dtw-text-[color:var(--panel-error-content-color)]":f===W.ERROR&&!g,"dtw-text-[color:var(--panel-warning-content-color)]":f===W.WARNING&&!g});return r.jsxs("div",{className:C("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)]":!m,"dtw-border-[var(--panel-input-border-color)]":f===W.DEFAULT||g,"dtw-border-[color:var(--panel-error-content-color)]":f===W.ERROR&&!g,"dtw-border-[color:var(--panel-warning-content-color)]":f===W.WARNING&&!g}),onClick:i,children:[r.jsxs("div",{className:C("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:[r.jsx("div",{className:"transparent-scrollbar dtw-flex-1 dtw-overflow-x-auto",children:d==="all"?r.jsx(wl,{iconSize:"sm"}):r.jsx("input",{className:C("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",I),ref:t,autoFocus:s,type:"number",min:0,value:o,onChange:c,onFocus:p,placeholder:"0",disabled:m,onWheelCapture:uA})}),r.jsx(dA,{symbol:d})]}),r.jsxs("div",{className:"dtw-flex dtw-items-center dtw-justify-between dtw-gap-x-2",children:[r.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:w&&r.jsx(r.Fragment,{children:g?r.jsx("div",{className:"dtw-h-[18px]",children:r.jsx(ke,{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)]"})}):r.jsxs("span",{className:C("dtw-flex-1 dtw-py-[1px]",{"dtw-text-[color:var(--panel-input-loading-content-color,var(--panel-loading-content-color))]":g,"!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))]":!g&&f===W.DEFAULT},I),children:[n,a&&r.jsx("span",{className:"dtw-ml-1",children:S.estimated})]})})}),v,y&&r.jsx(uv,{onClick:l})]})]})},yA=()=>{const{stablePrecision:e,defaultPrecision:t}=G(),[{symbol:n,address:a}]=N(),s=he({symbol:n,address:a,watch:!0});return{formattedBalance:yo({balance:s,symbol:n,precision:po(n)?e:t,truncateSymbol:!0}),symbol:n}},hl=()=>{const{formattedBalance:e,symbol:t}=yA();return r.jsx(Bi,{balance:e,symbol:t})},wA=()=>{const{stablePrecision:e,defaultPrecision:t}=G(),[{symbol:n,address:a}]=P(),s=he({symbol:n,address:a,watch:!0});return{formattedBalance:yo({balance:s,symbol:n,precision:po(n)?e:t,truncateSymbol:!0}),symbol:n}},gl=()=>{const{formattedBalance:e,symbol:t}=wA();return r.jsx(Bi,{balance:e,symbol:t})},ls=()=>{const e=b(),[t]=jn(),{isAllAssetsWithdrawOptionDefault:n}=G(),{data:a=[]}=me(),s=a.length>0,{data:o}=qa(e),i=we()[1],l=N()[1],c=P()[1],d=()=>{l({...t,value:"",isLoading:!t}),c({address:e.address,symbol:e.symbol,decimals:O,value:""})},p=()=>{const{customTokens:m,defaultWithdrawTokenSymbol:y}=e.withdrawParams,w=m.find(({symbol:g})=>g===y)??m[0]??sn,f=s?w:o||n?sn:w;l({address:e.address,symbol:e.symbol,decimals:O,value:""}),c({...f,value:"",isLoading:!1})};return m=>{switch(i(m),m){case"deposit":return d();case"withdraw":return p()}}},hA=()=>{Ui(),zx(),hi(),me()},et=["deposit","withdraw"],gA=()=>{const[e]=we(),t=ls();return{handleClick:()=>{const a=et.find(s=>s!==e);a&&t(a)}}},fl=()=>{const{handleClick:e}=gA();return r.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:r.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:r.jsx(Se.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"})})})},fA=()=>{const{sendToken:e,receiveToken:t,autoFocus:n,tradingPriceDiff:a,minSlippage:s,onInputFocus:o,onInputChange:i}=oA(),l=Bt(s??0);return r.jsxs(r.Fragment,{children:[r.jsx(Dt,{assetInput:e.value,onInputChange:i,onInputFocus:o,autoFocus:n,assetSymbol:e.symbol,assetPrice:e.price??"",displayMax:!0,maxBalance:e.balance,displayCalculatedValue:!0,isLoading:e.isLoading,children:r.jsx(hl,{})}),r.jsxs(Dt,{assetInput:t.value,assetSymbol:t.symbol,assetPrice:t.price??"",displayCalculatedValue:!0,disabled:!0,tradingPriceDiff:a,type:l,isLoading:t.isLoading,children:[r.jsx(gl,{}),r.jsx(fl,{})]})]})},TA=()=>{const{address:e,chainId:t}=b(),n=xi({address:e,chainId:t}),[a]=P();if(!n)return{isMaxSupplyCapReached:!1,supplyCapInUsd:""};const{totalSupplyNumber:s,maxSupplyCapNumber:o,remainingSupplyCapInUsd:i}=n,l=Number(a.value||"0"),c=s+l>o,d=te({value:i,maximumFractionDigits:0,minimumFractionDigits:0});return{isMaxSupplyCapReached:c,supplyCapInUsd:d}},bA=()=>{const e=A(),[{slippage:t,minSlippage:n,isMaxSlippageLoading:a}]=Q(),s=t==="auto",o=il(),[i]=P(),{address:l,chainId:c}=b(),{entryFee:d}=Pn({address:l,chainId:c}),{minDepositUSD:p}=Va(l,c),m=tl(),y=ul(),w=Wt(),f=p?te({value:p,minimumFractionDigits:0}):"",g=Bt(s?n??0:t),v=Ii({tradingType:"deposit",slippage:t,minSlippage:n}),S=g===W.DEFAULT?e.depositSlippageWarning:e.highSlippageWarning,I=Ge({value:new T(o).shiftedBy(-O).toFixed(),decimals:4});return{projectedEarnings:m,themeType:g,slippageTooltipText:S,isMaxSlippageLoading:a,slippagePlaceholder:v,minReceive:`${I} ${i.symbol.toUpperCase()}`,entryFee:d,entryFeeTooltipText:e.entryFeeExplanation,minDeposit:f,lockTime:y,showMinimumReceivedAmount:w}},cs=({className:e})=>{const{value:t,isLoading:n}=Hi();return r.jsxs("div",{className:C("dtw-flex dtw-h-[var(--panel-icon-secondary-size)] dtw-justify-end dtw-gap-x-2",e),children:[n&&r.jsx(ke,{className:"dtw-stroke-[color:var(--panel-accent-from-color)] dtw-h-[var(--panel-icon-secondary-size)] dtw-w-[var(--panel-icon-secondary-size)]"}),r.jsx("p",{className:C("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})]})},vA=()=>{const e=A(),{projectedEarnings:{yearlyEarnings:t,dailyEarnings:n,showEarnings:a},slippageTooltipText:s,slippagePlaceholder:o,isMaxSlippageLoading:i,minReceive:l,themeType:c,entryFee:d,entryFeeTooltipText:p,minDeposit:m,lockTime:y,showMinimumReceivedAmount:w}=bA(),f=a?[{tooltipText:e.projectedYearlyEarningsTooltip,label:e.yearlyEarnings,value:t,emphasised:!0},{tooltipText:e.projectedDailyEarningsTooltip,label:e.dailyEarnings,value:n,emphasised:!0}]:[],g=u.useMemo(()=>{const v=[{tooltipText:e.exchangeRate,label:e.rate,value:r.jsx(cs,{})},{tooltipText:s,label:e.maxSlippage,value:r.jsxs("div",{className:"dtw-flex dtw-gap-1",children:[i&&r.jsx(ke,{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)]"}),r.jsxs("span",{className:C({"dtw-text-[color:var(--panel-loading-content-color)]":i}),children:[o,"%"]})]})}];return w&&v.push({tooltipText:e.minReceiveAmount,label:e.minReceived,value:l}),v.push({tooltipText:p,label:e.entryFee,value:d}),m&&v.push({tooltipText:e.minDepositUsd,label:e.minDeposit,value:m}),v.push({tooltipText:e.tokensLockTime.replace("{lockTime}",y),label:e.cooldown,value:y}),v},[s,e.maxSlippage,e.entryFee,e.minReceiveAmount,e.minReceived,e.minDepositUsd,e.minDeposit,e.exchangeRate,e.rate,e.tokensLockTime,e.cooldown,i,o,w,p,d,m,l,y]);return r.jsx(Ja,{staticItems:f,collapseItems:g,themeType:c})},xA=({children:e})=>{const{DepositMetaInfo:t,MaxSupplyReachedAlert:n}=L(),{isMaxSupplyCapReached:a,supplyCapInUsd:s}=TA();return r.jsxs(q.Meta,{children:[a&&!!n&&r.jsx(n,{supplyCapInUsd:s}),r.jsx(vA,{}),t&&r.jsx(t,{}),r.jsx("div",{className:"dtw-sticky dtw-bottom-0 dtw-bg-[var(--panel-meta-action-panel-bg)]",children:e})]})},AA=()=>{sx(),rx()},SA=()=>{const{ActionButton:e=Y}=L(),t=A(),{status:n}=E.useConnect(),{onConnect:a}=Ka();return r.jsx(e,{onClick:a,className:"dtw-whitespace-nowrap dtw-text-sm",loading:n==="pending",children:t.connectWallet})},CA=()=>{const{ActionButton:e=Y}=L(),{switchNetwork:t}=Ce(),{chainId:n}=b(),a=A(),s=()=>{t?.({chainId:n})};return r.jsx(e,{onClick:s,children:a.switchNetwork})},Tl=()=>{const{account:e}=B(),{chainId:t}=Ce(),n=b();return{isDisconnected:!e,isWrongNetwork:t!==n.chainId}},ds=({children:e})=>{const{isDisconnected:t,isWrongNetwork:n}=Tl();return t?r.jsx(SA,{}):n?r.jsx(CA,{}):e},EA=({onClick:e,tooltipText:t,disabled:n})=>{const[a,s]=u.useState(!1),o=()=>{e(),s(!0)};return u.useEffect(()=>{if(!a)return;const i=setTimeout(()=>{s(!1)},wa);return()=>clearTimeout(i)},[a]),{disabled:n||a,tooltipText:t,handleClick:o}},bl=e=>{const{disabled:t,tooltipText:n,handleClick:a}=EA(e);return r.jsx(Ha,{text:n,children:r.jsx(pn,{Icon:Se.ArrowPathIcon,onClick:a,disabled:t,containerClassName:"!dtw-self-center",className:C("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})})})},IA=()=>{const{refetch:e,isFetched:t}=Mn(),{invalidateTradingQueries:n}=Nn();return{handleSwapQuoteReload:()=>{n(),e()},disabled:!t}},_A=()=>{const e=A(),{handleSwapQuoteReload:t,disabled:n}=IA();return r.jsx(bl,{tooltipText:e.refreshSwapQuoteTooltip,onClick:t,disabled:n})},DA=()=>{const{refetch:e,isFetched:t}=yt(),{invalidateTradingQueries:n}=Nn();return{handleSwapQuoteReload:()=>{n(),e()},disabled:!t}},NA=()=>{const e=A(),{handleSwapQuoteReload:t,disabled:n}=DA();return r.jsx(bl,{tooltipText:e.refreshSwapQuoteTooltip,onClick:t,disabled:n})},OA=()=>Oe()?r.jsx(_A,{}):r.jsx(NA,{}),vl=({children:e,...t})=>{const{ActionButton:n=Y}=L(),{openLimitSellOverlay:a,displayLimitSellOverlay:s}=Jb();return s?r.jsx(n,{...t,onClick:a,children:e}):null},xl=({children:e,...t})=>{const{ActionButton:n=Y}=L(),{onOpenNotificationsSettings:a}=Ka();return a?r.jsx(n,{...t,onClick:a,children:e}):null},PA=()=>{const{address:e,symbol:t}=b();return{handleAddToWallet:u.useCallback(()=>{id({address:e,symbol:t,decimals:O,image:Ya(t)})},[e,t])}},kA=()=>{const e=A(),{handleAddToWallet:t}=PA();return r.jsx("button",{type:"button",onClick:t,className:"dtw-underline dtw-text-[color:var(--panel-accent-from-color)] hover:dtw-opacity-80",children:e.addToWallet})},RA=()=>{const e=A(),t=ie(),{symbol:n}=b(),[a]=N(),[s]=P(),[,o]=Oo(),{isCompleteWithdrawStep:i}=Re();return{handleClick:u.useCallback(()=>{o({type:"withdraw",sendTokenSymbol:n,receiveTokenSymbol:s.symbol,...!i&&{sendTokenAmount:a.value},...s.value&&{receiveTokenAmount:s.value}}),t({type:"MERGE_OVERLAY",payload:{type:$.WITHDRAW_STEPPER,isOpen:!0}})},[t,o,n,a.value,s.symbol,s.value,i]),label:i?e.swapAction:e.sellNow}},Al=()=>{const{ActionButton:e=Y}=L(),{handleClick:t,label:n}=RA();return r.jsx(e,{onClick:t,children:n})},LA=()=>{AA();const{isGeoBlocked:e,isSanctioned:t}=G(),{GeoBlockAlert:n,SanctionedAlert:a,CustomDepositMeta:s}=L(),o=e||t,i=[{Component:n,value:e,key:"geo-block"},{Component:a,value:t,key:"sanctioned"}].filter(({value:l})=>l);return r.jsxs(r.Fragment,{children:[r.jsx(q.InputGroup,{children:r.jsx(fA,{})}),s&&r.jsx(s,{}),r.jsx(xA,{children:o?i.map(({Component:l,key:c})=>l&&r.jsx(l,{},c)):r.jsx(r.Fragment,{children:r.jsx(ds,{children:r.jsx(aA,{})})})})]})},MA=()=>r.jsx(q.Panel,{children:r.jsx(LA,{})}),jA=e=>Object.keys($).some(t=>t===e),BA=({children:e})=>{const t=Ri();let n=null;return u.Children.forEach(e,a=>{if(u.isValidElement(a)){const s=a.props.type;jA(s)&&t[s]&&t[s].isOpen&&(n=a)}}),n},$A=({type:e})=>{const t=A(),{DepositTermsOfUse:n,ActionButton:a=Y}=L(),{handleReject:s,handleConfirm:o,isPending:i}=de({type:e});return r.jsxs(q.Overlay,{className:"dtw-justify-between dtw-gap-y-1 dtw-overflow-y-auto theme-scrollbar",children:[r.jsxs("div",{className:"dtw-flex dtw-gap-1 dtw-items-center dtw-text-warning",children:[r.jsx(se.ExclamationCircleIcon,{className:"dtw-h-5 dtw-w-5"}),r.jsx("p",{children:t.termsOfUse})]}),r.jsxs("div",{className:"dtw-flex dtw-flex-col dtw-gap-2",children:[r.jsxs("p",{className:"dtw-self-start dtw-text-sm",children:[t.termOfUseDepositListTitle,":"]}),r.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:[r.jsx("li",{children:t.termOfUseDepositAssetSlippage}),r.jsx("li",{children:t.termOfUseDepositBugs}),r.jsx("li",{children:t.termOfUseDepositDowntime}),r.jsx("li",{children:t.termOfUseDepositAuditRisk})]}),n&&r.jsx(n,{})]}),r.jsxs("div",{className:"dtw-flex dtw-flex-col dtw-gap-2 dtw-w-full",children:[r.jsx(a,{highlighted:!1,onClick:s,children:t.back}),r.jsx(a,{onClick:o,disabled:i,loading:i,children:r.jsx("span",{children:i?t.confirmInWallet:t.termOfUseDepositAccept})})]})]})},FA=({type:e})=>{const t=A(),{ActionButton:n=Y}=L(),{handleReject:a,handleConfirm:s}=de({type:e});return r.jsxs(q.Overlay,{className:"dtw-justify-between dtw-gap-y-1",children:[r.jsxs("div",{className:"dtw-flex dtw-gap-1 dtw-items-center dtw-text-warning",children:[r.jsx(se.ExclamationCircleIcon,{className:"dtw-h-5 dtw-w-5"}),r.jsx("p",{children:t.highSlippage})]}),r.jsx("p",{className:"dtw-text-sm",children:t.responsibleHighSlippage}),r.jsxs("p",{className:"dtw-text-sm dtw-self-start",children:[t.highSlippageListTitle,":"]}),r.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:[r.jsx("li",{children:t.termOfUseDepositAssetSlippage}),r.jsx("li",{children:t.termOfUseDepositBugs}),r.jsx("li",{children:t.termOfUseDepositDowntime}),r.jsx("li",{children:t.termOfUseDepositAuditRisk})]}),r.jsxs("div",{className:"dtw-flex dtw-flex-col dtw-gap-2 dtw-w-full",children:[r.jsx(n,{highlighted:!1,onClick:a,children:t.back}),r.jsx(n,{onClick:s,children:t.confirm})]})]})},WA=({token:e,onSelect:t})=>({onClick:()=>{t(e)}}),UA=({token:e,onSelect:t})=>{const{onClick:n}=WA({token:e,onSelect:t});return r.jsxs("div",{className:"dtw-space-y-3 dtw-rounded-xl dtw-py-3 dtw-pl-4 dtw-pr-3",onClick:n,children:[r.jsx($t,{symbol:e.symbol,iconSymbols:[e.symbol],size:"xl",CustomIcon:r.jsx(an.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"}),r.jsx(wl,{className:"dtw-pt-2",showFraction:!1,showAllAsset:!0})]})},zA=({token:e,onSelect:t,isActive:n,onClose:a})=>{const s=he({symbol:e.symbol,address:e.address}),{defaultPrecision:o}=G();return{formattedBalance:new T.BigNumber(s).toFixed(o,T.BigNumber.ROUND_DOWN),onClick:()=>{if(n){a();return}t(e)}}},Sl=({token:e,onSelect:t,onClose:n,isActive:a=!1})=>{const{onClick:s,formattedBalance:o}=zA({token:e,onSelect:t,onClose:n,isActive:a});return r.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:[r.jsx($t,{symbol:e.symbol,iconSymbols:[e.symbol],size:"xl",symbolClasses:C("group-hover:dtw-opacity-100 dtw-text-sm dtw-font-medium",{"dtw-opacity-100 sm:dtw-opacity-80":!a,"dtw-opacity-100":a}),className:C("group-hover:dtw-opacity-100",{"dtw-opacity-100 sm:dtw-opacity-50":!a,"dtw-opacity-100":a})}),r.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:[a&&r.jsx(an.CheckIcon,{className:"dtw-w-4 dtw-self-end dtw-text-themeGreen"}),r.jsxs("div",{children:[r.jsx("span",{className:"dtw-mr-1 dtw-text-xs",children:e.symbol}),o]})]})]})},HA=[],GA=()=>{const e=b(),[t]=we(),[n,a]=N(),[s,o]=P(),{data:i}=qa(e),l=jn(),c=i?HA:e.withdrawParams.customTokens;return u.useMemo(()=>({tokens:t==="deposit"?l:c,updater:t==="deposit"?a:o,activeTokens:[n,s]}),[t,l,c,a,o,n,s])},VA=({searchQuery:e,type:t})=>{const[{isMultiAssetWithdrawalEnabled:n}]=Q(),{isCompleteWithdrawStep:a}=Re(),s=Rt(),[o]=we(),{handleReject:i}=de({type:t}),{tokens:l,updater:c,activeTokens:d}=GA(),p=u.useMemo(()=>e?l.filter(({symbol:y})=>y.toLowerCase().includes(e)):l,[e,l]),m=u.useCallback(({address:y,value:w,decimals:f,symbol:g})=>{c({address:y,value:w,decimals:f,symbol:g}),i()},[c,i]);return{tokenList:p,activeTokens:d,onSelect:m,onClose:i,showMultiAssetWithdrawalOption:n&&o==="withdraw"&&!s&&!a}},qA=({type:e,searchQuery:t})=>{const n=A(),{tokenList:a,activeTokens:s,onSelect:o,showMultiAssetWithdrawalOption:i,onClose:l}=VA({type:e,searchQuery:t});return r.jsxs(q.Overlay,{onClose:l,centered:!1,className:"dtw-gap-[var(--panel-gap)]",children:[r.jsx("span",{className:"dtw-text-center dtw-text-[length:var(--panel-font-size-sm)] dtw-font-[var(--panel-font-weight-medium)]",children:n.selectToken}),r.jsxs("ul",{className:"dtw-grid dtw-gap-[calc(var(--panel-gap) * 0.5)] dtw-overflow-y-auto theme-scrollbar",children:[a.map(c=>{const d=s.some(({address:p,symbol:m})=>p===c.address&&m===c.symbol);return r.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:r.jsx(Sl,{token:c,onSelect:o,isActive:d,onClose:l})},`${c.address}_${c.symbol}`)}),i&&r.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:r.jsx(UA,{token:sn,onSelect:o})})]})]})},YA=({children:e,chainId:t})=>{const{chainConfig:n}=G(),{Image:a=Fi}=L(),s=n[t]?.iconPath,o=n[t]?.name;return r.jsxs("div",{children:[r.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&&r.jsx("div",{className:"dtw-h-6 dtw-w-6",children:r.jsx(a,{className:"dtw-h-full dtw-w-full dtw-rounded-full dtw-object-contain",src:s,alt:"chain icon",width:100,height:100})}),r.jsx("p",{className:"dtw-whitespace-nowrap dtw-text-sm",children:o??t})]}),e]})},ua=(e,t)=>e.address in t?{balanceInUsd:t[e.address]?.balanceInUsd??te({value:0}),balanceInUsdNumber:t[e.address]?.balanceInUsdNumber??0}:{balanceInUsd:te({value:0}),balanceInUsdNumber:0},KA=e=>(t,n)=>ua(n,e).balanceInUsdNumber-ua(t,e).balanceInUsdNumber,QA=({searchQuery:e,type:t})=>{const n=Ti(),a=at(),s=b(),{handleReject:o}=de({type:t}),[i]=we(),l=N()[1],c=P()[1],d=_o()[1],p=u.useCallback(({address:y,value:w,decimals:f,symbol:g})=>{(i==="deposit"?c:l)({address:y,value:w,decimals:f,symbol:g}),d(y),o()},[i,l,c,o,d]);return{poolList:u.useMemo(()=>Array.from(new Set(a.map(({chainId:y})=>y))).map(y=>({chainId:y,configs:[...a.filter(w=>w.chainId===y&&!w.deprecated).map(w=>({...w,...ua(w,n),isActive:s.address===w.address})).filter(({symbol:w})=>e?w.toLowerCase().includes(e):!0).slice().sort(KA(n))]})),[e,n,a,s]),onClose:o,onSelect:p}},XA=({type:e,searchQuery:t})=>{const n=A(),{poolList:a,onClose:s,onSelect:o}=QA({type:e,searchQuery:t});return r.jsxs(q.Overlay,{onClose:s,centered:!1,className:"dtw-gap-[var(--panel-gap)]",children:[r.jsx("span",{className:"dtw-text-center dtw-text-[length:var(--panel-font-size-sm)] dtw-font-[var(--panel-font-weight-medium)]",children:n.selectToken}),r.jsx("div",{className:"dtw-grid dtw-gap-[calc(var(--panel-gap) * 0.5)] dtw-overflow-y-auto theme-scrollbar",children:a.map(({chainId:i,configs:l})=>r.jsx(YA,{chainId:i,children:l.map(({isActive:c,symbol:d,address:p})=>r.jsx("div",{className:C("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:r.jsx(Sl,{token:{symbol:d,address:p,value:"",decimals:O},onSelect:o,isActive:c,onClose:s})},`${p}_${d}`))},i))})]})},ZA=({type:e})=>{const{address:t,symbol:n,chainId:a}=b(),[{link:s,sendTokens:o},i]=K(),{handleReject:l}=de({type:e}),c=o?.[0],d=wo(s),p=ue({address:t,chainId:a});return{onClose:u.useCallback(()=>{i({isOpen:!1}),l()},[i,l]),link:s,vaultSymbol:n,paidToken:c,txHash:d,vaultTokenPrice:te({value:p})}},JA=e=>{const t=A(),{link:n,onClose:a,vaultSymbol:s,paidToken:o,txHash:i,vaultTokenPrice:l}=ZA(e),{ActionButton:c=Y}=L(),d=Ni();return r.jsxs(q.Overlay,{className:"dtw-justify-between dtw-gap-y-4",noPadding:!0,children:[r.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:[r.jsxs("div",{className:"dtw-flex dtw-flex-col dtw-items-center dtw-text-[color:var(--panel-success-content-color)] dtw-mb-2",children:[r.jsx(Se.CheckIcon,{className:"dtw-h-16 dtw-w-16 lg:dtw-h-24 lg:dtw-w-24 dtw-shrink-0"}),"Success"]}),r.jsx(je,{}),r.jsxs("div",{className:"dtw-flex dtw-items-center dtw-justify-between dtw-gap-2 dtw-w-full",children:[r.jsx("p",{children:t.orderingLabel}),r.jsxs("div",{className:"dtw-flex dtw-items-center dtw-gap-2 dtw-text-[color:var(--panel-secondary-content-color)]",children:[r.jsx("span",{children:s}),r.jsx(kA,{})]})]}),r.jsx(je,{}),o&&r.jsxs(r.Fragment,{children:[r.jsxs("div",{className:"dtw-flex dtw-items-center dtw-justify-between dtw-gap-2 dtw-w-full",children:[r.jsx("p",{children:t.paidLabel}),r.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:[o.value?Ge({value:+o.value,decimals:4}):null," ",o.symbol]})]}),r.jsx(je,{})]}),r.jsxs("div",{className:"dtw-flex dtw-items-center dtw-justify-between dtw-gap-2 dtw-w-full",children:[r.jsx("p",{children:t.priceLabel}),r.jsx("p",{className:"dtw-text-[color:var(--panel-secondary-content-color)]",children:l})]}),n&&r.jsxs(r.Fragment,{children:[r.jsx(je,{}),r.jsxs("div",{className:"dtw-flex dtw-items-center dtw-justify-between dtw-gap-2 dtw-w-full",children:[r.jsx("p",{children:t.transactionLabel}),r.jsx(Ye,{link:n,children:i??t.explorer})]})]})]}),r.jsxs("div",{className:"dtw-flex dtw-flex-col dtw-gap-2 dtw-w-full",children:[d?r.jsx(vl,{children:t.openLimitOrderAfterBuySwitchLabel}):r.jsx(xl,{children:t.openNotificationsSettingsLabel}),r.jsx(c,{highlighted:!1,onClick:a,children:t.done})]})]})},eS=()=>{const e=A(),{LogoSpinner:t=ke}=L(),[{link:n}]=K();return r.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:[r.jsx(t,{className:"dtw-h-16 dtw-w-16 lg:dtw-h-24 lg:dtw-w-24 dtw-shrink-0"}),e.miningTx,n&&r.jsx(Ye,{link:n,className:"dtw-text-sm",iconClassName:"dtw-w-4 dtw-h-4",children:e.explorer})]})},tS=({onClose:e})=>{const t=A(),{ActionButton:n=Y}=L(),[{link:a}]=K();return r.jsxs(r.Fragment,{children:[r.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:[r.jsxs("div",{className:"dtw-flex dtw-flex-col dtw-items-center dtw-gap-2 dtw-text-[color:var(--panel-success-content-color)]",children:[r.jsx(Se.CheckIcon,{className:"dtw-h-16 dtw-w-16 lg:dtw-h-24 lg:dtw-w-24 dtw-shrink-0"}),t.createLimitSellOrder]}),a&&r.jsx(Ye,{link:a,className:"dtw-text-sm",iconClassName:"dtw-w-4 dtw-h-4",children:t.explorer})]}),r.jsxs("div",{className:"dtw-flex dtw-flex-col dtw-gap-2 dtw-w-full",children:[r.jsx(xl,{children:t.openNotificationsSettingsLabel}),r.jsx(n,{highlighted:!1,onClick:e,children:t.done})]})]})},nS=({type:e})=>{const[{status:t},n]=K(),{handleReject:a}=de({type:e}),s=t==="Mining";return{onClose:u.useCallback(()=>{n({isOpen:!1}),a()},[a,n]),isProcessing:s}},aS=e=>{const{onClose:t,isProcessing:n}=nS(e);return r.jsx(q.Overlay,{className:"dtw-justify-between dtw-gap-y-4",onClose:t,noPadding:!0,children:n?r.jsx(eS,{}):r.jsx(tS,{onClose:t})})},sS=({type:e})=>{const{statusLabel:t,status:n}=Li(),[{link:a,action:s},o]=K(),i=n=="Success",{handleReject:l}=de({type:e}),c=s==="single_withdraw"&&i,d=i&&s==="deposit",p=i&&s&&Ia.includes(s);return{title:t??n,isSuccessTx:i,link:a,onClose:()=>{o({isOpen:!1}),l()},showNextStepTip:c,displaySuccessDepositOverlay:d,displaySuccessWithdrawalOverlay:p,displayLimitOrderTransactionOverlay:s==="create_limit_sell_order",displayWithdrawLimitOrderOverlay:s==="limit_order_withdraw"}},rS=({sendTokens:e})=>{const t=A(),[n]=e??[];return n?r.jsxs("div",{className:"dtw-flex dtw-items-center dtw-gap-1 dtw-flex-wrap dtw-overflow-hidden",children:[r.jsx("span",{children:t.approveSpending}),r.jsx(We,{size:"sm",symbols:[n.symbol]}),r.jsx("span",{children:n.symbol})]}):null},oS=({receiveTokens:e})=>{const t=A(),[n]=e??[];return n?r.jsxs("div",{className:"dtw-flex dtw-flex-wrap dtw-items-center dtw-gap-1",children:[t.swapAndClaimTo," ",r.jsxs("div",{className:"dtw-flex dtw-items-center dtw-gap-1",children:[r.jsx(We,{size:"sm",symbols:[n.symbol]})," ",n.symbol]})]}):null},iS=({sendTokens:e,receiveTokens:t,action:n})=>{const a=A(),[s]=e??[],[o]=t??[];return s?r.jsxs("div",{className:"dtw-flex dtw-flex-wrap dtw-items-center dtw-gap-x-1",children:[n==="deposit"?a.pay:n==="multi_withdraw"?a.sell:a.unrollAction,r.jsxs("div",{className:"dtw-flex dtw-items-center dtw-gap-1",children:[r.jsx(We,{size:"sm",symbols:[s.symbol]})," ",s.symbol]})," ","to receive",r.jsx("div",{className:"dtw-flex dtw-items-center dtw-gap-1",children:o?r.jsxs(r.Fragment,{children:[r.jsx(We,{size:"sm",symbols:[o.symbol]})," ",o.symbol]}):r.jsx(r.Fragment,{children:n==="multi_withdraw"?a.multiAssetFractions:a.swappableAssets})})]}):null},lS=()=>{const e=A(),[{action:t,receiveTokens:n,sendTokens:a}]=K();return t==="approve"?r.jsx(rS,{sendTokens:a}):t==="swap"?r.jsx(oS,{receiveTokens:n}):t==="claim"?r.jsx(r.Fragment,{children:e.claimLabel}):t==="create_limit_sell_order"?r.jsx(r.Fragment,{children:e.createLimitSellOrder}):t==="delete_limit_order_withdraw"?r.jsx(r.Fragment,{children:e.deleteWithdrawalRequest}):r.jsx(iS,{action:t,sendTokens:a,receiveTokens:n})},cS=({type:e})=>{const[,t]=K(),{handleReject:n}=de({type:e}),[{link:a,status:s}]=K(),o=s=="Success";return{onClose:u.useCallback(()=>{t({isOpen:!1}),n()},[n,t]),link:a,isSuccessTx:o}},dS=e=>{const t=A(),{ActionButton:n=Y}=L(),{onClose:a,link:s,isSuccessTx:o}=cS(e);return o?r.jsxs(q.Overlay,{className:"dtw-justify-between dtw-gap-y-4",onClose:a,noPadding:!0,children:[r.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:[r.jsx(Se.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)]"}),r.jsx("div",{className:"dtw-text-center dtw-text-2xl dtw-font-semibold",children:t.withdrawalRequest}),r.jsx("div",{className:"dtw-text-center dtw-text-[color:var(--panel-secondary-content-color)]",children:t.expectToReceiveUsdcSoon}),s&&r.jsx(Ye,{link:s,className:"dtw-text-sm",iconClassName:"dtw-w-4 dtw-h-4",children:t.explorer})]}),r.jsx("div",{className:"dtw-flex dtw-flex-col dtw-gap-2 dtw-w-full",children:r.jsx(n,{highlighted:!1,onClick:a,children:t.done})})]}):null},pS=({type:e})=>{const{address:t,symbol:n}=b(),[{link:a,receiveTokens:s},o]=K(),{handleReject:i}=de({type:e}),l=s?.[0],c=wo(a);return{onClose:u.useCallback(()=>{o({isOpen:!1,status:"None"}),i()},[o,i]),link:a,vaultAddress:t,vaultSymbol:n,receivedToken:l,txHash:c}},uS=e=>{const t=A(),{link:n,onClose:a,vaultSymbol:s,receivedToken:o,txHash:i}=pS(e),{ActionButton:l=Y}=L();return r.jsxs(q.Overlay,{className:"dtw-justify-between dtw-gap-y-4",noPadding:!0,children:[r.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:[r.jsxs("div",{className:"dtw-flex dtw-flex-col dtw-items-center dtw-text-[color:var(--panel-success-content-color)] dtw-mb-2",children:[r.jsx(Se.CheckIcon,{className:"dtw-h-16 dtw-w-16 lg:dtw-h-24 lg:dtw-w-24 dtw-shrink-0"}),"Success"]}),r.jsx(je,{}),r.jsxs("div",{className:"dtw-flex dtw-items-center dtw-justify-between dtw-gap-2 dtw-w-full",children:[r.jsx("p",{children:t.soldLabel}),r.jsx("div",{className:"dtw-text-[color:var(--panel-secondary-content-color)]",children:s})]}),o&&r.jsxs(r.Fragment,{children:[r.jsx(je,{}),r.jsxs("div",{className:"dtw-flex dtw-items-center dtw-justify-between dtw-gap-2 dtw-w-full",children:[r.jsx("p",{children:t.receivedLabel}),r.jsx("div",{className:"dtw-text-[color:var(--panel-secondary-content-color)]",children:o.symbol})]})]}),n&&r.jsxs(r.Fragment,{children:[r.jsx(je,{}),r.jsxs("div",{className:"dtw-flex dtw-items-center dtw-justify-between dtw-gap-2 dtw-w-full",children:[r.jsx("p",{children:t.transactionLabel}),r.jsx(Ye,{link:n,children:i??t.explorer})]})]})]}),r.jsx(l,{highlighted:!1,onClick:a,children:t.done})]})},mS=({type:e})=>{const{link:t,title:n,onClose:a,isSuccessTx:s,showNextStepTip:o,displaySuccessDepositOverlay:i,displaySuccessWithdrawalOverlay:l,displayLimitOrderTransactionOverlay:c,displayWithdrawLimitOrderOverlay:d}=sS({type:e}),{LogoSpinner:p=ke}=L(),m=A();return c?r.jsx(aS,{type:e}):i?r.jsx(JA,{type:e}):l?r.jsx(uS,{type:e}):d?r.jsx(dS,{type:e}):r.jsxs(q.Notification,{onClose:a,children:[r.jsxs("div",{className:"dtw-flex dtw-items-center dtw-gap-1.5",children:[r.jsx("span",{className:"dtw-font-semibold dtw-drop-shadow-md",children:n}),s?r.jsx(se.CheckCircleIcon,{className:"dtw-h-6 dtw-w-6 dtw-text-[color:var(--panel-success-content-color)]"}):r.jsx(p,{className:"dtw-h-5 dtw-w-5 "})]}),r.jsx("div",{className:"dtw-font-light dtw-text-sm dtw-max-h-16 dtw-overflow-y-auto theme-scrollbar dtw-break-all",children:r.jsx(lS,{})}),t&&r.jsx(Ye,{link:t,className:"dtw-text-sm",iconClassName:"dtw-w-4 dtw-h-4",children:m.explorer}),o&&r.jsx("p",{className:"dtw-text-xs",children:m.proceedWithNextStep})]})},ar=!0,yS=()=>{const{isWrongNetwork:e}=Tl(),t=qi({isClaim:ar}),{disabled:n,label:a,handleTrade:s}=Xi({withdraw:t,isClaim:ar}),o=is("claim");return{disabled:n,label:a,handleTrade:s,isWrongNetwork:e,isLoading:o}},Cl=({highlighted:e,className:t})=>{const{ActionButton:n=Y}=L(),{handleTrade:a,disabled:s,label:o,isWrongNetwork:i,isLoading:l}=yS();return i?null:r.jsx(n,{onClick:a,disabled:s,highlighted:e,className:t,loading:l,children:o})},wS=({error:e,onCancel:t})=>{const n=A(),{ActionButton:a=Y}=L();return r.jsxs(q.Overlay,{className:"dtw-justify-between dtw-gap-y-4",children:[r.jsx(a,{highlighted:!1,onClick:t,className:"!dtw-p-1 !dtw-w-24 dtw-self-start",children:n.cancel}),r.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:[r.jsx(se.FaceFrownIcon,{className:"dtw-h-24 dtw-w-24 dtw-text-[color:var(--panel-error-overlay-icon-color)]"}),r.jsxs("div",{className:"dtw-flex dtw-flex-col dtw-items-center dtw-gap-2 dtw-text-center",children:[r.jsx("p",{className:"dtw-text-lg dtw-font-medium",children:e.title}),e.hint&&r.jsx("p",{className:"dtw-text-sm dtw-text-[color:var(--panel-secondary-content-color)]",children:e.hint})]})]}),r.jsx(Cl,{})]})},hS=ve.filter(({type:e})=>e==="error").map(({name:e})=>e),gS=({type:e})=>{const{handleReject:t,meta:n}=de({type:e}),{isCompleteWithdrawStep:a}=Re(),s=Oe(),o=a&&!s;return{handleReject:t,error:uo({errorMessage:n?.error,abiErrors:hS}),showCompleteWithdrawErrorOverlay:o}},fS=e=>{const{handleReject:t,error:n,showCompleteWithdrawErrorOverlay:a}=gS(e);return n?a?r.jsx(wS,{error:n,onCancel:t}):r.jsxs(q.Notification,{onClose:t,children:[r.jsx("p",{className:"dtw-text-sm",children:n.title}),n.hint&&r.jsx("p",{className:"dtw-text-xs",children:n.hint})]}):null},TS=["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)]"],bS=["!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))]"],Ut=({children:e,onClick:t,highlighted:n=!0,disabled:a=!1,className:s,type:o,loading:i=!1})=>r.jsxs("button",{className:C("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",{[bS.join(" ")]:n,[TS.join(" ")]:!n,"dtw-flex dtw-items-center dtw-justify-center dtw-gap-1":i},s),onClick:t,disabled:a||i,type:o,children:[i&&r.jsx(ke,{className:"dtw-h-4 dtw-w-4 dtw-stroke-[var(--limit-order-accent-content-color)]"}),e]}),El={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",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:"Set limit orders",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."},Il=u.createContext(El),_l=({children:e,config:t})=>{const n=u.useMemo(()=>({...El,...t}),[t]);return r.jsx(Il.Provider,{value:n,children:e})},ge=()=>{const e=u.useContext(Il);if(!e)throw new Error("TranslationContext is used out of Provider");return e},vS=({symbol:e,price:t})=>{const n=ge();return r.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:[r.jsx("span",{className:"dtw-text-xs",children:n.currentPrice.replace("{symbol}",e)}),r.jsx("span",{className:"dtw-font-[var(--limit-order-font-weight-bold)]",children:t})]})},xS=100,AS=3,SS=({inputValue:e="",onInputChange:t,autoFocus:n=!1})=>{const[a,s]=u.useState(e),o=u.useRef(null);return{inputRef:o,value:a,autoFocus:n,onContainerClick:()=>{o.current?.focus()},onInputChange:c=>{const d=c.target.value.replace(/[^0-9]/g,"");if(d.length>AS)return;const p=Number(d);!isNaN(p)&&p<=xS&&(s(d),t?.(d))}}},CS=e=>{const{disabled:t,placeholder:n,suffix:a="%",postfix:s}=e,{inputRef:o,autoFocus:i,value:l,onContainerClick:c,onInputChange:d}=SS(e);return r.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:r.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:[a?r.jsx("span",{className:"dtw-font-light dtw-whitespace-nowrap dtw-text-[color:var(--limit-order-secondary-content-color)]",children:a}):null,r.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:o,autoFocus:i,type:"text",min:0,value:l,onChange:d,disabled:t,placeholder:n}),r.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})]})})},ES=7,ma=4,sr=e=>{if(!e)return"";const[t="",n]=e.replace(/,/g,"").split("."),a=n&&n.length>ma?n.slice(0,ma):n,s=t.replace(/\B(?=(\d{3})+(?!\d))/g,",");return a!==void 0?`${s}.${a}`:s},IS=({inputValue:e="",onInputChange:t,autoFocus:n=!1})=>{const[a,s]=u.useState(sr(e)),o=u.useRef(null);return{inputRef:o,value:a,autoFocus:n,onContainerClick:()=>{o.current?.focus()},onInputChange:c=>{const d=c.target.value.replace(/[^\d.]/g,"").replace(/(\..*)\./g,"$1"),[p="",m=""]=d.split(".");t&&p.length<=ES&&m.length<=ma&&/^\d*(\.\d*)?$/.test(d)&&(s(sr(d)),t(d))}}},rr=e=>{const{disabled:t,placeholder:n,percentage:a,suffix:s}=e,{inputRef:o,autoFocus:i,value:l,onContainerClick:c,onInputChange:d}=IS(e);return r.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:r.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.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:"$"}),r.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:o,autoFocus:i,type:"text",min:0,value:l,onChange:d,disabled:t,placeholder:n}),s?r.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,a?r.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:a}):null]})})},Yn=({title:e,subtitle:t,defaultEnabled:n,onDisable:a,children:s})=>{const[o,i]=u.useState(n),l=c=>{i(c),c||a()};return r.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))]",children:[r.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:[r.jsxs("div",{className:"dtw-flex dtw-flex-col dtw-gap-0.5 dtw-text-[color:var(--limit-order-secondary-content-color)]",children:[r.jsx("span",{children:e}),r.jsx("span",{className:"dtw-text-[length:var(--limit-order-font-size-xs)]",children:t})]}),r.jsx(kn,{onChange:l,defaultEnabled:o})]}),o&&s]})},Dl={upperLimitPrice:"",lowerLimitPrice:"",sellPercentage:"",termsAccepted:!1},_S=(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:Dl};case"SET_PENDING_TRANSACTION":return{...e,pendingTransaction:t.payload};default:return e}};function _e(){}const Nl=e=>({vaultAddress:e.vaultAddress,vaultChainId:e.vaultChainId,isModalOpen:e.isModalOpen??!1,form:{...Dl,...e.form},pendingTransaction:null,pricingAsset:e.pricingAsset,minAmountInUsd:e.minAmountInUsd}),Ol=u.createContext(Nl({vaultAddress:_,vaultChainId:0,pricingAsset:{address:_,symbol:""},minAmountInUsd:za,form:{lowerLimitPrice:"",upperLimitPrice:""}})),Pl=u.createContext({setIsModalOpen:_e,setUpperLimitPrice:_e,setLowerLimitPrice:_e,setTermsAccepted:_e,setSellPercentage:_e,reset:_e,setPendingTransaction:_e,onLog:_e}),kl=({children:e,initialState:t,actions:n})=>{const[a,s]=u.useReducer(_S,Nl(t)),o=u.useCallback(w=>{s({type:"SET_UPPER_LIMIT_PRICE",payload:w})},[]),i=u.useCallback(w=>{s({type:"SET_LOWER_LIMIT_PRICE",payload:w})},[]),l=u.useCallback(w=>{s({type:"SET_IS_MODAL_OPEN",payload:w})},[]),c=u.useCallback(w=>{s({type:"SET_TERMS_ACCEPTED",payload:w})},[]),d=u.useCallback(w=>{s({type:"SET_SELL_PERCENTAGE",payload:w})},[]),p=u.useCallback(()=>{s({type:"RESET"})},[]),m=u.useCallback(w=>{s({type:"SET_PENDING_TRANSACTION",payload:w})},[]),y=u.useMemo(()=>({setUpperLimitPrice:o,setIsModalOpen:l,setLowerLimitPrice:i,setTermsAccepted:c,setSellPercentage:d,reset:p,setPendingTransaction:m,onTransactionSuccess:n?.onTransactionSuccess,onTransactionError:n?.onTransactionError,onTransactionSettled:n?.onTransactionSettled,onLog:n?.onLog}),[o,l,i,c,d,p,m,n?.onTransactionSuccess,n?.onTransactionError,n?.onTransactionSettled,n?.onLog]);return r.jsx(Pl.Provider,{value:y,children:r.jsx(Ol.Provider,{value:a,children:e})})},fe=()=>u.useContext(Ol),zt=()=>u.useContext(Pl),ps=()=>{const{account:e}=B(),{vaultAddress:t,vaultChainId:n,form:{sellPercentage:a}}=fe(),{data:s}=Oa({address:e,token:t,chainId:n});return u.useMemo(()=>{const o=a||li;if(!s)return{raw:"0",formatted:"0",symbol:""};const i=new T(s.value).times(o).dividedBy(100).toFixed(0,T.ROUND_DOWN),l=Ge({value:new T(i).shiftedBy(-O).toFixed(),decimals:2});return{raw:i,formatted:l,symbol:s.symbol}},[s,a])},Rl=({userAddress:e,vaultAddress:t})=>{const n=D.encodePacked(["address","address"],[e,t]);return D.keccak256(n)},DS=({price:e,markPrice:t})=>new T(e).gt(t)?`+${Ot((+e/+t-1)*100,2)}`:"",NS=({price:e,markPrice:t})=>new T(e).lt(t)?`-${Ot((1-+e/+t)*100,2)}`:"",OS=({error:e,translationMap:t})=>e?e.title===Fr?{...e,hint:t.invalidLimitOrderPriceError}:e:null,PS=()=>{const e=ge(),{form:{upperLimitPrice:t,lowerLimitPrice:n,sellPercentage:a,termsAccepted:s},pricingAsset:o,vaultChainId:i}=fe(),{setUpperLimitPrice:l,setLowerLimitPrice:c,setSellPercentage:d,setTermsAccepted:p}=zt(),m=ce({address:o.address,chainId:i,refetchInterval:ze}),y=Number(m)<AT?ST:CT,{formatted:w,symbol:f}=ps(),g=DS({price:t,markPrice:m}),v=NS({price:n,markPrice:m}),S=u.useCallback(()=>{l("")},[l]),I=u.useCallback(()=>{c("")},[c]),k=u.useCallback(()=>{d("")},[d]),M=`${o.symbol} ${e.price}`;return{upperLimitPrice:t,lowerLimitPrice:n,sellPercentage:a,setUpperLimitPrice:l,setLowerLimitPrice:c,setSellPercentage:d,onDisableUpperLimitPrice:S,onDisableLowerLimitPrice:I,onDisableSellPercentage:k,termsAccepted:s,setTermsAccepted:p,pricingAssetPrice:m==="0"?null:te({value:m,maximumFractionDigits:y}),upperLimitPriceDifference:g,lowerLimitPriceDifference:v,pricingAssetSymbol:o.symbol,inputSuffix:M,coveredVaultAmount:w,vaultSymbol:f}},kS=["termsPoint1","termsPoint2","termsPoint3","termsPoint4","termsPoint5"],RS=({className:e})=>{const t=ge();return r.jsx("div",{className:C("dtw-w-full dtw-text-[length:var(--limit-order-font-size-xs)] dtw-max-h-[120px] dtw-overflow-y-auto theme-scrollbar dtw-text-[color:var(--limit-order-secondary-content-color)]",e),children:r.jsx("ol",{className:"dtw-list-decimal dtw-list-inside dtw-space-y-2",children:kS.map((n,a)=>r.jsxs("li",{className:"dtw-text-pretty",children:[a+1,". ",t[n]]},n))})})},Ll=({className:e,checked:t,label:n,labelClassName:a,...s})=>r.jsxs(R.Field,{className:"dtw-flex dtw-items-center dtw-gap-2",children:[r.jsx(R.Checkbox,{...s,checked:t,className:C("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:r.jsx(Se.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&&r.jsx(R.Label,{className:C("dtw-select-none",a),children:n})]}),LS=()=>{const e=ge(),{upperLimitPrice:t,lowerLimitPrice:n,setUpperLimitPrice:a,setLowerLimitPrice:s,onDisableUpperLimitPrice:o,onDisableLowerLimitPrice:i,setTermsAccepted:l,termsAccepted:c,pricingAssetPrice:d,upperLimitPriceDifference:p,lowerLimitPriceDifference:m,pricingAssetSymbol:y,inputSuffix:w,sellPercentage:f,setSellPercentage:g,onDisableSellPercentage:v,coveredVaultAmount:S,vaultSymbol:I}=PS();return r.jsxs(r.Fragment,{children:[r.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:[r.jsx(vS,{symbol:y,price:d}),r.jsx(Yn,{title:e.upperLimitLabel,subtitle:e.upperLimitSubtitle,defaultEnabled:!0,onDisable:o,children:r.jsx(rr,{inputValue:t,onInputChange:a,percentage:p,symbol:y,suffix:w})}),r.jsx(Yn,{title:e.lowerLimitLabel,subtitle:e.lowerLimitSubtitle,defaultEnabled:!!n,onDisable:i,children:r.jsx(rr,{inputValue:n,onInputChange:s,percentage:m,symbol:y,suffix:w})}),r.jsx(Yn,{title:e.partialSellLabel,subtitle:e.partialSellSubtitle,defaultEnabled:!!f,onDisable:v,children:r.jsx(CS,{inputValue:f,onInputChange:g,suffix:"%",placeholder:li,postfix:r.jsxs("div",{className:"dtw-flex dtw-flex-col dtw-items-end dtw-justify-center",children:[r.jsx("span",{className:"dtw-text-[color:var(--limit-order-primary-content-color)]",children:S}),r.jsx("span",{className:"dtw-text-[color:var(--limit-order-secondary-content-color)]",children:I})]})})})]}),r.jsx("div",{className:"dtw-mt-3 dtw-px-2 dtw-flex dtw-items-center dtw-gap-1.5",children:r.jsx(Ll,{checked:c,onChange:k=>l(k),label:e.limitOrderTerms,labelClassName:"dtw-text-[length:var(--limit-order-font-size-xs)] dtw-cursor-pointer"})}),r.jsx(RS,{className:"dtw-px-2"})]})},MS=()=>{const{account:e=_}=B(),{vaultAddress:t,vaultChainId:n}=fe(),a=z("limitOrder",n),s=ps(),{data:o}=Tn({tokenAddress:t,ownerAddress:e,spenderAddress:a,chainId:n});return o?new T(s.raw).lte(o.toString()):!1},jS=()=>{const{vaultAddress:e,vaultChainId:t,pendingTransaction:n}=fe(),{setPendingTransaction:a}=zt(),[s,o]=u.useState(!1),i=z("limitOrder",t),{send:l}=xe({contractId:"erc20",dynamicContractAddress:e,functionName:"approve",onSettled(d){a(d?{hash:d,action:"approve"}:null),o(!1)}});return{approveLimitOrder:async()=>{o(!0),l(i,Ue)},isApprovePending:s||!!n}},BS=()=>{const e=MS(),{approveLimitOrder:t,isApprovePending:n}=jS(),{form:{termsAccepted:a}}=fe();return{isApproved:e,approveLimitOrder:t,isApprovePending:n,disabled:!a}},$S=({children:e})=>{const t=ge(),{isApproved:n,approveLimitOrder:a,isApprovePending:s,disabled:o}=BS();return n?e:r.jsx(Ut,{onClick:a,loading:s,disabled:o,children:t.approve})},Ml=e=>{const{setIsModalOpen:t,reset:n,setPendingTransaction:a,onTransactionSettled:s}=zt();return u.useCallback((...o)=>{const[i]=o;if(s?.(...o),!i)return a(null);a({hash:i,action:e}),t(!1),n()},[s,a,e,t,n])},FS=([e,t,n,a,s,o])=>ee(s)?null:{takeProfitPrice:D.formatUnits(n,O),stopLossPrice:D.formatUnits(t,O),takeProfitPriceD18:n,stopLossPriceD18:t,amountD18:e,user:a,vault:s,pricingAsset:o},Ht=({chainId:e,userAddress:t,vaultAddress:n})=>E.useReadContract({address:z("limitOrder",e),abi:wn,chainId:e,functionName:Dn,args:[Rl({userAddress:t,vaultAddress:n})],query:{enabled:!ee(t)&&!ee(n),select:FS}}),WS=wn.filter(({type:e})=>e==="error").map(({name:e})=>e),US="create",zS=()=>{const e=ge(),{account:t=_}=B(),{vaultAddress:n,vaultChainId:a,form:{lowerLimitPrice:s,upperLimitPrice:o,termsAccepted:i},pricingAsset:l,pendingTransaction:c,minAmountInUsd:d}=fe(),p=ps(),{data:m}=Ht({userAddress:t,vaultAddress:n,chainId:a}),y=ue({address:n,chainId:a}),[w,f]=u.useState(null),g=Ml(US),v=!!m,{send:S}=xe({onSettled:g,contractId:"limitOrder",functionName:v?"modifyLimitOrder":"createLimitOrder"}),k=new T.BigNumber(p.formatted).multipliedBy(y??"0").gte(d),M=!i||!k,ne=!!c;return{modifyLimitOrder:async()=>{const Xe=BigInt(s?rn(s,O):0),Gt=o?BigInt(rn(o,O)):Ue,Vt=[p.raw,Xe,Gt,t,n,l.address];try{await S(Vt),f(null)}catch(ht){ht instanceof ut&&f(ht.message)}},disabled:M,error:OS({error:uo({errorMessage:w,abiErrors:WS})??null,translationMap:e}),isPending:ne,isAmountSufficient:k,minAmount:te({value:d.toString(),maximumFractionDigits:0,minimumFractionDigits:0}),isModifyTransaction:v}},HS=({disabled:e})=>{const t=ge(),{modifyLimitOrder:n,disabled:a,error:s,isPending:o,minAmount:i,isAmountSufficient:l,isModifyTransaction:c}=zS();return r.jsxs("div",{children:[s&&r.jsxs("div",{className:"dtw-mb-2 dtw-flex dtw-flex-col dtw-gap-1 dtw-text-error",children:[r.jsx("span",{className:"dtw-text-sm",children:s.title}),s.hint&&r.jsx("span",{className:"dtw-text-xs",children:s.hint})]}),!l&&r.jsx("div",{className:"dtw-mb-1 dtw-text-warning dtw-text-sm",children:t.minimumVaultBalanceRequired.replace("{amount}",i)}),r.jsx(Ut,{onClick:n,disabled:e||a,loading:o,children:c?t.modify:t.create})]})},GS="remove",VS=()=>{const{account:e=_}=B(),{vaultAddress:t,vaultChainId:n,pendingTransaction:a}=fe(),{data:s}=Ht({userAddress:e,vaultAddress:t,chainId:n}),o=Ml(GS),{send:i}=xe({onSettled:o,contractId:"limitOrder",functionName:"deleteLimitOrder"}),l=async()=>i(t),c=!!a,d=!!s?.amountD18&&!new T(s.amountD18.toString()).isZero();return{deleteLimitOrder:l,isPending:c,displayButton:d}},qS=()=>{const e=ge(),{deleteLimitOrder:t,isPending:n,displayButton:a}=VS();return a?r.jsx(Ut,{highlighted:!1,className:"!dtw-py-1",onClick:t,loading:n,children:e.delete}):null},YS=()=>{const{chainId:e,switchNetwork:t}=Ce(),{vaultChainId:n}=fe();return{isWrongNetwork:e!==n,handleNetworkSwitch:()=>{t?.({chainId:n})}}},KS=({children:e})=>{const t=ge(),{isWrongNetwork:n,handleNetworkSwitch:a}=YS();return n?r.jsx(Ut,{onClick:a,children:t.switchNetwork}):e},or=e=>{const t=e?.trim();return t?!isNaN(Number(t)):!1},QS=()=>{const{form:{lowerLimitPrice:e,upperLimitPrice:t}}=fe(),n=or(e)&&Number(e)!==0,a=or(t);return{limitOrderButtonDisabled:!n&&!a}},jl=({onClose:e,hideDeleteButton:t})=>{const n=ge(),{limitOrderButtonDisabled:a}=QS();return r.jsxs("div",{className:"dtw-flex dtw-flex-col dtw-gap-2",children:[r.jsx(LS,{}),r.jsxs(KS,{children:[r.jsx($S,{children:r.jsx(HS,{disabled:a})}),!t&&r.jsx(qS,{})]}),!!e&&r.jsx(Ut,{highlighted:!1,onClick:e,children:n.cancel})]})},Bl=({vaultAddress:e,vaultChainId:t})=>{const{account:n=_}=B(),{isFetched:a,data:s}=Ht({vaultAddress:e,chainId:t,userAddress:n}),o=s&&s.takeProfitPriceD18!==Ue?s.takeProfitPrice:"",i=s&&s.stopLossPriceD18!==BigInt(0)?s.stopLossPrice:"";return{isFetched:a,upperLimitPrice:o,lowerLimitPrice:i}},XS=[Dn,Ua,"allowance"],$l=()=>{const e=tt.useQueryClient();return u.useCallback(()=>{e.invalidateQueries({predicate:({queryKey:t})=>{const n=t[1]?.functionName;return t[0]==="readContract"&&XS.some(a=>a===n)}})},[e])},Fl=()=>{const{pendingTransaction:e,vaultChainId:t,vaultAddress:n}=fe(),{setPendingTransaction:a,onTransactionSuccess:s,onTransactionError:o,onLog:i}=zt(),l=$l(),{data:c,error:d}=E.useWaitForTransactionReceipt({hash:e?.hash??void 0,chainId:t,pollingInterval:ze});u.useEffect(()=>{c&&(e?.action==="create"&&i?.(X.CREATE_LIMIT_SELL_ORDER,{[Te.ADDRESS.NAME]:n,[Te.CHAIN_ID.NAME]:t}),l(),a(null),s?.(c.transactionHash))},[c,l,s,i,t,a,e?.action,n]),u.useEffect(()=>{d&&e&&(o?.(e.hash),a(null))},[d,o,e,a])},x={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"}},Wl=({children:e,config:t})=>r.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??x.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??x.WHITE.DEFAULT}`,"--limit-order-content-hover-color":`${t?.global?.color?.colorTextPrimaryHover??`${x.WHITE.DEFAULT}CC`}`,"--limit-order-secondary-color":`${t?.global?.color?.colorBgSecondary??x.GRAY[800]}`,"--limit-order-secondary-content-color":`${t?.global?.color?.colorTextSecondary??x.GRAY[600]}`,"--limit-order-accent-from-color":`${t?.global?.color?.colorBgAccentFrom??x.GREEN.DEFAULT}`,"--limit-order-accent-to-color":`${t?.global?.color?.colorBgAccentTo??x.GREEN[700]}`,"--limit-order-accent-hover-from-color":`${t?.global?.color?.colorBgAccentFromHover??`${x.GREEN.DEFAULT}CC`}`,"--limit-order-accent-hover-to-color":`${t?.global?.color?.colorBgAccentToHover??x.BLUE.dark}`,"--limit-order-accent-content-color":`${t?.global?.color?.colorTextAccent??x.WHITE.DEFAULT}`,"--limit-order-accent-content-hover-color":`${t?.global?.color?.colorTextAccentHover??`${x.WHITE.DEFAULT}CC`}`,"--limit-order-neutral-color":`${t?.global?.color?.colorBgNeutral??`${x.GRAY[600]}33`}`,"--limit-order-neutral-content-color":`${t?.global?.color?.colorTextNeutral??`${x.GRAY[600]}80`}`,"--limit-order-loading-content-color":`${t?.global?.color?.colorTextLoading??`${x.WHITE.DEFAULT}99`}`,"--limit-order-error-content-color":`${t?.global?.color?.colorTextError??x.RED[500]}`,"--limit-order-warning-content-color":`${t?.global?.color?.colorTextWarning??x.AMBER[400]}`,"--limit-order-border-color":`${t?.global?.color?.colorBorderPrimary??"var(--limit-order-content-color)"}`,"--limit-order-scrollbar-color":`${t?.global?.color?.colorScrollbar??`${x.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??`${x.WHITE.DEFAULT}33`}`,"--limit-order-action-outline-button-border-hover-color":`${t?.component?.actionButton?.color?.outlineColorBorderHover??`${x.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??x.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??x.DARK[700]}`,"--limit-order-tooltip-color":`${t?.component?.tooltip?.color?.colorText??x.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??x.BLUE.DEFAULT}`,"--panel-switch-bg":`${t?.component?.switch?.color?.colorBg??x.GRAY[700]}`,"--panel-switch-thumb-bg-checked":`${t?.component?.switch?.color?.colorThumbBgChecked??x.WHITE.DEFAULT}`,"--panel-switch-thumb-bg":`${t?.component?.switch?.color?.colorThumbBg??x.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??x.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??x.GRAY.DEFAULT}`,"--panel-checkbox-color":`${t?.component?.checkbox?.color?.color??x.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}),ZS=({themeConfig:e})=>(Fl(),r.jsx(Wl,{config:e,children:r.jsx(jl,{hideDeleteButton:!0})})),JS=({vaultChainId:e,vaultAddress:t,pricingAsset:n,translation:a,minAmountInUsd:s=za,actions:o,themeConfig:i})=>{const{isFetched:l,upperLimitPrice:c,lowerLimitPrice:d}=Bl({vaultAddress:t,vaultChainId:e}),p=u.useMemo(()=>({vaultAddress:t,vaultChainId:e,pricingAsset:n,minAmountInUsd:s,form:{upperLimitPrice:c,lowerLimitPrice:d}}),[t,e,n,s,c,d]);return l?r.jsx(_l,{config:a,children:r.jsx(kl,{initialState:p,actions:o,children:r.jsx(ZS,{themeConfig:i})})}):null},eC=({type:e})=>{const{minLimitOrderValue:t}=G(),{address:n,chainId:a,pricingAsset:s,symbol:o}=b(),{handleReject:i}=de({type:e}),l=K()[1],c=re()[1],d=Xb(),p=u.useMemo(()=>({onTransactionSettled:y=>{y&&(i(),c({type:"add",txHash:y,action:"create_limit_sell_order",chainId:a,symbol:o}),l({isOpen:!0,action:"create_limit_sell_order",status:"Mining",link:y?Rn(y,"transaction",a):void 0,sendTokens:null,receiveTokens:null}))}}),[a,i,o,c,l]),m=u.useCallback(()=>{l({isOpen:!1}),d()},[d,l]);return{handleReject:i,address:n,chainId:a,pricingAsset:s,minLimitOrderValue:t,actions:p,closeAllOverlays:m}},tC=e=>{const{limitOrderThemeConfig:t}=G(),{handleReject:n,chainId:a,address:s,pricingAsset:o,minLimitOrderValue:i,actions:l,closeAllOverlays:c}=eC(e);return o?r.jsx(q.Overlay,{onClose:c,onBack:n,className:"!dtw-px-2",noPadding:!0,children:r.jsx("div",{className:"dtw-mt-10 dtw-px-2 dtw-overflow-y-auto theme-scrollbar",children:r.jsx(JS,{vaultAddress:s,vaultChainId:a,pricingAsset:o,minAmountInUsd:i,actions:l,themeConfig:t})})}):null},Ul=()=>{const[e]=N();return new T(e.value||"0").shiftedBy(e.decimals)},nC=()=>{const{account:e=_}=B(),{address:t,chainId:n}=b(),a=z("limitOrder",n),s=Ul(),{data:o}=Tn({tokenAddress:t,ownerAddress:e,spenderAddress:a,chainId:n});return o?s.lte(o.toString()):!1},ir="approve",aC=()=>{const{address:e,chainId:t,symbol:n}=b(),[a,s]=u.useState(!1),o=z("limitOrder",t),i=re()[1],l=Ke({action:ir}),{send:c}=xe({contractId:"erc20",dynamicContractAddress:e,functionName:"approve",onSettled(...p){s(!1),l(...p)}});return{approveLimitOrder:async()=>{i({type:"add",action:ir,symbol:n,chainId:t}),s(!0),c(o,Ue)},isApprovePending:a}},sC=()=>{const e=nC(),{approveLimitOrder:t,isApprovePending:n}=aC();return{isApproved:e,approveLimitOrder:t,isApprovePending:n}},rC=({children:e})=>{const t=A(),{ActionButton:n=Y}=L(),{isApproved:a,approveLimitOrder:s,isApprovePending:o}=sC();return a?e:r.jsx(n,{onClick:s,loading:o,children:t.approve})},lr="limit_order_withdraw",oC=e=>{const{account:t=_}=B(),{address:n,chainId:a,pricingAsset:s,symbol:o}=b(),i=re()[1],l=Ke({action:lr}),c=u.useCallback((...w)=>{l(...w),e()},[l,e]),d=Ul(),{data:p}=Ht({userAddress:t,vaultAddress:n,chainId:a}),m=!!p,{send:y}=xe({onSettled:c,contractId:"limitOrder",functionName:m?"modifyLimitOrder":"createLimitOrder"});return u.useCallback(async()=>{i({type:"add",action:lr,symbol:o,chainId:a});const w=BigInt(0),f=Ue,g=[BigInt(d.toFixed()),w,f,t,n,s?.address];return y(g)},[i,o,a,d,t,n,s?.address,y])},iC=({limitOrderHandler:e,action:t})=>{const n=A(),a=ie(),{account:s}=B(),o=b(),[i]=N(),l=K()[1],c=re()[1],d=fn(),p=t==="delete_limit_order_withdraw",m=async()=>{const y=o.chainId;l({isOpen:!0,status:"Wallet",action:t,link:"",sendTokens:[i],receiveTokens:null,meta:{}});try{await e()}catch(w){w instanceof ut&&(a({type:"MERGE_OVERLAY",payload:{type:$.ERROR_NOTIFICATION,isOpen:!0,meta:{error:w.message}}}),d?.(w,o.address,y,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:m}},lC="limit_order_withdraw",cC=()=>{const e=ie(),t=is("limit_order_withdraw"),n=u.useCallback(()=>e({type:"MERGE_OVERLAY",payload:{type:$.LIMIT_ORDER_WITHDRAW,isOpen:!1}}),[e]),a=oC(n),{handleLimitOrderWithdraw:s,label:o}=iC({limitOrderHandler:a,action:lC});return{label:o,handleLimitOrderWithdraw:s,isLoading:t}},dC=({disabled:e})=>{const{ActionButton:t=Y}=L(),{label:n,handleLimitOrderWithdraw:a,isLoading:s}=cC();return r.jsx(t,{onClick:a,disabled:e,loading:s,children:n})},pC=["termOfUseWithdrawPoint1","termOfUseWithdrawPoint2"],uC=({className:e})=>{const t=A();return r.jsxs(r.Fragment,{children:[r.jsx("p",{children:t.limitOrderWithdrawDescription}),r.jsx("div",{className:C("dtw-w-full dtw-text-sm dtw-overflow-y-auto theme-scrollbar dtw-text-[color:var(--panel-secondary-content-color)]",e),children:r.jsx("ol",{className:"dtw-list-decimal dtw-list-inside dtw-space-y-2",children:pC.map((n,a)=>r.jsxs("li",{className:"dtw-text-pretty",children:[a+1,". ",t[n]]},n))})})]})},mC=({type:e})=>{const t=A(),{ActionButton:n=Y}=L(),{handleReject:a}=de({type:e}),[s,o]=u.useState(!1);return r.jsx(q.Overlay,{onClose:a,children:r.jsxs("div",{className:"dtw-flex dtw-flex-col dtw-gap-2 dtw-w-full",children:[r.jsxs("div",{className:"dtw-px-2 dtw-flex dtw-flex-col dtw-gap-2",children:[r.jsx(uC,{}),r.jsx("div",{className:"dtw-mt-1 dtw-flex dtw-items-center dtw-gap-1.5",children:r.jsx(Ll,{checked:s,onChange:i=>o(i),label:t.termOfUseWithdrawAcceptLabel,labelClassName:"dtw-text-sm dtw-cursor-pointer"})})]}),r.jsx(n,{highlighted:!1,onClick:a,children:t.back}),r.jsx(rC,{children:r.jsx(dC,{disabled:!s})})]})})},yC=({isActive:e,onError:t})=>{const n=A(),a=Za(e),{canSpend:s,approve:o,isCanSpendFetching:i}=ts({onErrorCallback:t}),l=u.useRef(!1);return u.useEffect(()=>{if(!i){if(s){l.current=!0;return}l.current||(l.current=!0,o())}},[i,s,o]),{label:n.approveTokensForWithdrawal,description:a}},Nt=({stepNumber:e,isActive:t,isFinished:n,label:a,description:s})=>r.jsxs("div",{className:C("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:[r.jsxs("div",{className:C("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&&r.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"}),r.jsx("div",{className:C("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})]}),r.jsxs("div",{className:"dtw-flex dtw-flex-col",children:[r.jsx("span",{className:C({"dtw-text-[color:var(--panel-secondary-content-color)]":!t}),children:a}),s&&r.jsx("span",{className:"dtw-text-xs dtw-text-[color:var(--panel-secondary-content-color)]",children:s})]})]}),wC=({isActive:e,onError:t,stepNumber:n,isFinished:a})=>{const{label:s,description:o}=yC({isActive:e,onError:t});return r.jsx(Nt,{stepNumber:n,isFinished:a,isActive:e,label:s,description:o})},nn=0,At=1,St=2,hC=1e3,gC=(e,t,n)=>{u.useEffect(()=>{t==="Success"&&n&&Ia.includes(n)&&e()},[t,n,e])},fC=e=>{const[t,n]=u.useState(!1);return u.useEffect(()=>{if(!e){n(!1);return}const a=setTimeout(()=>{n(!0)},hC);return()=>clearTimeout(a)},[e]),t},TC=({type:e})=>{const{handleReject:t}=de({type:e}),[n]=Oo(),[{status:a,action:s}]=K(),{isCompleteWithdrawStep:o}=Re(),{isUnrollAndClaimTransaction:i,isFetching:l,isFetched:c}=ss(),{canSpend:d}=ts({onErrorCallback:t}),p=fC(d);return gC(t,a,s),{isUnrollAndClaimTransaction:i,activeStepIndex:o?St:d?At:nn,canSpend:d,isCompleteWithdrawStep:o,handleReject:t,stepper:n,isUnrollAndClaimCheckFetching:l,isTransactionTypeReady:c||p}},bC=({isActive:e,onError:t})=>{const n=A(),a=Za(e),s=qi({onErrorCallback:t}),{handleTrade:o}=Xi({withdraw:s,onErrorCallback:t});return kv({handleTrade:o,onError:t}),{label:n.swapToCompleteSell,description:a}},vC=({stepNumber:e,isActive:t,isFinished:n,onError:a})=>{const{label:s,description:o}=bC({isActive:t,onError:a});return r.jsx(Nt,{isFinished:n,stepNumber:e,isActive:t,label:s,description:o})},xC=({isActive:e,canSpend:t,isCompleteWithdrawStep:n,isPending:a,onError:s})=>{const o=Za(e),{withdraw:i}=Bv({onErrorCallback:s}),{handleTrade:l}=rs({trade:i,onErrorCallback:s}),c=u.useRef(!1);return u.useEffect(()=>{a||t&&!n&&!c.current&&(c.current=!0,l())},[a,t,n,l]),{description:o}},AC=({stepNumber:e,isActive:t,isFinished:n,isPending:a,onError:s,isCompleteWithdrawStep:o,canSpend:i,label:l})=>{const{description:c}=xC({isActive:t,canSpend:i,isCompleteWithdrawStep:o,isPending:a,onError:s});return r.jsx(Nt,{isFinished:n,stepNumber:e,isActive:t,label:l,description:c})},SC=({canSpend:e,isTransactionTypeReady:t,isUnrollAndClaimTransaction:n,isCompleteWithdrawStep:a,isUnrollAndClaimCheckFetching:s,activeStepIndex:o,onError:i})=>{const l=A(),c=Qe();return!e||!t?r.jsxs(r.Fragment,{children:[r.jsx(Nt,{isFinished:!1,stepNumber:At+1,isActive:!1,label:l.unrollAssetsToPrepare}),r.jsx(Nt,{isFinished:!1,stepNumber:St+1,isActive:!1,label:l.swapToCompleteSell})]}):r.jsxs(r.Fragment,{children:[r.jsx(AC,{stepNumber:At+1,isFinished:o>At,isActive:o===At,canSpend:e,isCompleteWithdrawStep:n?!1:a,isPending:s,onError:i,label:n||c?l.unrollAndClaimAssets:l.unrollAssetsToPrepare}),!n&&!c&&r.jsx(vC,{stepNumber:St+1,isFinished:o>St,isActive:o===St,onError:i})]})},CC=e=>{const t=A(),{ActionButton:n=Y}=L(),{isUnrollAndClaimTransaction:a,activeStepIndex:s,canSpend:o,isCompleteWithdrawStep:i,handleReject:l,stepper:c,isUnrollAndClaimCheckFetching:d,isTransactionTypeReady:p}=TC(e);return r.jsxs(q.Overlay,{centered:!1,className:"dtw-gap-4",children:[r.jsx(n,{highlighted:!1,onClick:l,className:"!dtw-p-1 !dtw-w-24 dtw-self-start",children:t.cancel}),r.jsxs("div",{className:"dtw-flex dtw-flex-col dtw-items-center dtw-gap-2",children:[r.jsx(We,{symbols:[c?.sendTokenSymbol??""],size:"2xl"}),r.jsxs("div",{className:"dtw-text-center",children:[r.jsxs("p",{className:"dtw-text-lg",children:[t.sell," ",c?.sendTokenAmount," ",c?.sendTokenSymbol]}),c?.receiveTokenSymbol&&r.jsxs("p",{className:"dtw-text-sm dtw-text-[color:var(--panel-secondary-content-color)]",children:["for ",c.receiveTokenAmount," ",c.receiveTokenSymbol]})]})]}),r.jsxs("div",{className:"dtw-mt-4 dtw-flex dtw-flex-col dtw-gap-2",children:[r.jsx(wC,{isFinished:s>nn,isActive:s===nn,onError:l,stepNumber:nn+1}),r.jsx(SC,{canSpend:o,isTransactionTypeReady:p,isUnrollAndClaimTransaction:a,isCompleteWithdrawStep:i,isUnrollAndClaimCheckFetching:d,activeStepIndex:s,onError:l})]})]})},EC=()=>{const e=On(),t=A();return r.jsxs(r.Fragment,{children:[r.jsx($e,{label:t.slippageTolerance,tooltipText:t.withdrawSlippageWarning,children:r.jsx(Wi,{})}),r.jsx($e,{label:t.tokenAllowance,tooltipText:t.toggleTokenApprovalAmount,children:r.jsx(sl,{})}),e&&r.jsx($e,{label:t.batchTransactionsLabel,tooltipText:t.batchTransactionsTooltip??"",children:r.jsx(rl,{})}),r.jsx(ol,{})]})},IC=({assets:e=[]})=>{const{stablePrecision:t}=G(),{firstPart:n,secondPart:a}=io(e,br),s=u.useCallback(({symbol:o,address:i,rawBalance:l,decimals:c,price:d,balance:p})=>r.jsxs("tr",{children:[r.jsxs("td",{children:[r.jsx($t,{symbol:o,iconSymbols:[o],symbolClasses:"dtw-text-xs dtw-font-bold",size:"sm"}),r.jsx("p",{className:"dtw-truncate dtw-text-xs dtw-text-[color:var(--panel-secondary-content-color)]",children:te({value:p*d})})]}),r.jsx("td",{className:"dtw-text-right",children:r.jsx("p",{className:"dtw-truncate",children:Ge({value:D.formatUnits(l,c),decimals:t})})})]},i),[t]);return r.jsxs("div",{className:"dtw-text-sm dtw-font-light ",children:[r.jsx(mn,{children:n.map(s)}),a.length>0&&r.jsx(yl,{children:r.jsx(mn,{children:a.map(s)})})]})},_C=()=>{const{chainId:e}=b(),{stablePrecision:t}=G(),{data:n=[]}=me(),a=Yi(),{data:s=_}=Dv();return{assets:n,usdAmount:te({value:a,maximumFractionDigits:t}),withdrawalVaultLink:Rn(s,"address",e)}},DC=()=>{const e=A(),{assets:t,usdAmount:n,withdrawalVaultLink:a}=_C();return r.jsxs(r.Fragment,{children:[r.jsxs("div",{className:"dtw-text-sm dtw-flex dtw-items-center dtw-gap-1",children:[r.jsx("span",{className:"dtw-text-[color:var(--panel-secondary-content-color)]",children:e.total}),r.jsx(Ye,{link:a??"",iconClassName:"dtw-h-4 dtw-w-4 dtw-text-[color:var(--panel-content-color)]",children:r.jsx("span",{className:"dtw-text-[color:var(--panel-content-color)]",children:n})})]}),r.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:r.jsx(IC,{assets:t})})]})},NC=()=>{const e=ie(),{requiresHighSlippageConfirm:t,confirmHighSlippage:n,slippageToBeUsed:a}=Qa();return{requiresHighSlippageConfirm:t,slippageToBeUsed:a,handleHighSlippageClick:()=>{e({type:"MERGE_OVERLAY",payload:{type:$.HIGH_SLIPPAGE,isOpen:!0,onConfirm:async()=>n()}})}}},OC=({children:e})=>{const{ActionButton:t=Y}=L(),n=A(),{requiresHighSlippageConfirm:a,slippageToBeUsed:s,handleHighSlippageClick:o}=NC();return a?r.jsx(t,{onClick:o,children:n.confirmMaxSlippage.replace("{slippagePercentage}",`${Math.abs(s)}`)}):e},PC=()=>{const{chainId:e}=b(),[t]=P(),n=ce({address:t.address,chainId:e}),a=Zi(),s=Bt(Math.min(0,a));return{receiveToken:{...t,price:n},swapDiff:a,themeType:s}},kC=()=>{const{receiveToken:e,swapDiff:t,themeType:n}=PC();return r.jsx(Dt,{assetInput:e.value,autoFocus:!1,disabled:!0,assetSymbol:e.symbol,assetPrice:e.price,displayCalculatedValue:!0,isLoading:e.isLoading,tradingPriceDiff:t,type:n})},RC=()=>{const e=A(),{stablePrecision:t}=G(),[n]=P(),a=Ft(),{minExpectedReceiveAmount:s}=ns(),o=Bt(a),i=o===W.DEFAULT?e.withdrawSlippageWarning:e.highSlippageWarning;return{themeType:o,slippageTooltipText:i,slippagePlaceholder:a.toString(),minReceive:`${Ge({value:D.formatUnits(BigInt(s),n.decimals),decimals:t})} ${n.symbol}`}},LC=()=>{const e=A(),{slippageTooltipText:t,slippagePlaceholder:n,minReceive:a}=RC(),s=u.useMemo(()=>[{tooltipText:e.exchangeRate,label:e.rate,value:r.jsx(cs,{})},{tooltipText:t,label:e.maxSlippage,value:r.jsxs("span",{children:[n,"%"]})},{tooltipText:e.minReceiveAmount,label:e.minReceived,value:a}],[a,n,t,e.maxSlippage,e.minReceiveAmount,e.minReceived,e.exchangeRate,e.rate]);return r.jsx(Ja,{collapseItems:s})},MC=({children:e})=>r.jsxs(q.Meta,{children:[r.jsx(LC,{}),r.jsx("div",{className:"dtw-sticky dtw-bottom-0 dtw-bg-[var(--panel-meta-action-panel-bg)]",children:e})]}),jC=()=>(Pv(),r.jsxs(r.Fragment,{children:[r.jsxs(q.InputGroup,{children:[r.jsx(DC,{}),r.jsx(kC,{})]}),r.jsx(MC,{children:r.jsx(ds,{children:r.jsxs("div",{className:"tw-flex tw-flex-col tw-gap-2",children:[r.jsx(OC,{children:r.jsx(Al,{})}),r.jsx(Cl,{highlighted:!1})]})})})]})),BC=()=>{const{chainId:e,address:t}=b(),{exitFeeNumber:n}=Pn({address:t,chainId:e}),[a]=N(),[s,o]=P(),i=ue({address:t,chainId:e}),l=ce({address:s.address,chainId:e});u.useEffect(()=>{if(!a.value||a.value==="0"){o({value:""});return}if(!l||l==="0"){o({value:""});return}const d=new T(a.value).times(i).times(1-n/100).dividedBy(l).toFixed(s.decimals);o({value:mo(d)?d:""})},[n,s.decimals,l,a.value,i,o])},$C=()=>{const e=A(),t=ie(),n=()=>t({type:"MERGE_OVERLAY",payload:{type:$.LIMIT_ORDER_WITHDRAW,isOpen:!0}});return{label:e.withdrawAction,openLimitOrderWithdrawOverlay:n}},FC=()=>{const{ActionButton:e=Y}=L(),{label:t,openLimitOrderWithdrawOverlay:n}=$C();return r.jsx(e,{onClick:n,children:t})},Kn=[{isLeveragedAsset:go,getWithdrawAssetByLeverageAddress:fo,getWithdrawAssetByVaultAddress:()=>{},isLentAndBorrowedAsset:na},{isLeveragedAsset:fd,getWithdrawAssetByLeverageAddress:Td,getWithdrawAssetByVaultAddress:bd,isLentAndBorrowedAsset:na}],Qn={requiresLeveragedCollateralLiquidity:!1,leveragedCollateralValueFormatted:"$0"},Xn=e=>T(e.amount).shiftedBy(-e.precision).times(e.rate).shiftedBy(-O).toNumber(),zl=()=>{const e=b(),t=mt(e),[n]=N(),a=ue(e),s=t.find(({tokenAddress:m,amount:y})=>Kn.some(w=>w.isLeveragedAsset(m)&&y!=="0"));if(!s)return Qn;const o=Kn.find(m=>m.isLeveragedAsset(s.tokenAddress));if(!o)return Qn;const i=o.getWithdrawAssetByVaultAddress(e.address)?.address??o.getWithdrawAssetByLeverageAddress(s.tokenAddress).address,l=t.find(({tokenAddress:m})=>H(i,m));if(!l)return Qn;const c=Number(n.value||"0")*Number(a),d=Xn(l);if(t.find(({tokenAddress:m,amount:y})=>Kn.some(w=>w.isLentAndBorrowedAsset({address:m,chainId:e.chainId})&&y!=="0"))){const m=Xn(s),y=t.reduce((S,I)=>S+Xn(I),0),w=d/y,f=m/y,v=w/(w+f)*y;return{requiresLeveragedCollateralLiquidity:c>v,leveragedCollateralValueFormatted:te({value:v})}}return{requiresLeveragedCollateralLiquidity:c>d,leveragedCollateralValueFormatted:te({value:d})}},Hl=()=>{const{chainId:e,pricingAsset:t,onDemandWithdrawalEnabled:n}=b(),{requiresLeveragedCollateralLiquidity:a}=zl(),s=Rt();return a&&!!t&&!!n&&(e===h.arbitrum.id||!s)},WC=()=>{const{address:e,chainId:t,maintenance:n,maintenanceWithdrawals:a,symbol:s}=b(),[o]=N(),i=ie(),l=Hl(),c=kt(),{data:d=0}=Nb({address:e,chainId:t}),p=d>0,m=Et.formatDuration(Et.intervalToDuration({start:0,end:d})),{requiresHighSlippageConfirm:y,confirmHighSlippage:w,slippageToBeUsed:f}=Qa(),g=()=>{i({type:"MERGE_OVERLAY",payload:{type:$.HIGH_SLIPPAGE,isOpen:!0,onConfirm:async()=>w()}})};return{isEmptyInput:!o.value||o.value==="0",requiresEndOfCooldown:p,requiresHighSlippageConfirm:y,sendTokenSymbol:o.symbol,slippageToBeUsed:f,dynamicCooldownEndsInTime:m,handleHighSlippageClick:g,maintenance:n||a,poolSymbol:s,isLimitOrderWithdraw:l,insufficientBalance:c}},UC=({children:e})=>{const{ActionButton:t=Y}=L(),n=A(),a=Xa("withdraw"),{isEmptyInput:s,requiresEndOfCooldown:o,requiresHighSlippageConfirm:i,sendTokenSymbol:l,slippageToBeUsed:c,dynamicCooldownEndsInTime:d,handleHighSlippageClick:p,maintenance:m,poolSymbol:y,isLimitOrderWithdraw:w,insufficientBalance:f}=WC();return s?r.jsx(t,{disabled:!0,children:a}):m?r.jsx(un,{promptText:n.poolWithdrawalsAreMaintenance.replace("{poolSymbol}",y),children:a}):o?r.jsx(un,{promptText:n.withdrawCooldown.replace("{tokenSymbol}",l).replace("{cooldownEndTime}",d),children:a}):f?r.jsx(t,{disabled:!0,children:n.insufficientBalance}):w?r.jsx(FC,{}):i?r.jsx(t,{onClick:p,children:n.confirmMaxSlippage.replace("{slippagePercentage}",`${Math.abs(c)}`)}):e},zC=()=>{const{address:e,chainId:t}=b(),[n,a]=N(),s=he({symbol:n.symbol,address:n.address}),o=ue({address:e,chainId:t});return{...n,updater:a,balance:s,price:o}},HC=()=>{const{chainId:e}=b(),[t,n]=P(),a=ce({address:t.address,chainId:e});return{...t,updater:n,price:a}},GC=()=>{const e=zC(),t=HC();return{sendToken:e,onInputChange:a=>{e.updater({value:a})},receiveToken:t}},VC=()=>{const{sendToken:e,onInputChange:t,receiveToken:n}=GC();return r.jsxs(r.Fragment,{children:[r.jsx(Dt,{assetInput:e.value,onInputChange:t,assetSymbol:e.symbol,assetPrice:e.price??"",displayMax:!0,maxBalance:e.balance,displayCalculatedValue:!0,children:r.jsx(hl,{})}),r.jsxs(Dt,{assetInput:n.value,autoFocus:!1,disabled:!0,assetSymbol:n.symbol,assetPrice:n.price,displayCalculatedValue:!0,isLoading:n.isLoading,children:[r.jsx(fl,{}),n.symbol==="all"?null:r.jsx(gl,{})]})]})},qC=()=>{const e=A(),{address:t,chainId:n}=b(),[{isMaxSlippageLoading:a}]=Q(),{exitFeeNumber:s}=Pn({address:t,chainId:n}),o=Ft(),i=Qe();return{slippageTooltipText:Bt(o)===W.DEFAULT?e.withdrawSlippageWarning:e.highSlippageWarning,isMaxSlippageLoading:a,slippagePlaceholder:`${o}%`,exitFee:Ot(s,2),minReceivedText:e.estimatedMultiAssetFractions,showMinReceivedText:i}},YC=()=>{const e=A(),{slippageTooltipText:t,slippagePlaceholder:n,isMaxSlippageLoading:a,exitFee:s,minReceivedText:o,showMinReceivedText:i}=qC(),l=u.useMemo(()=>{const c=[{tooltipText:e.exchangeRate,label:e.rate,value:r.jsx(cs,{})},{tooltipText:t,label:e.maxSlippage,value:r.jsxs("div",{className:"dtw-flex dtw-gap-1",children:[a&&r.jsx(ke,{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)]"}),r.jsx("span",{className:C({"dtw-text-[color:var(--panel-loading-content-color)]":a}),children:n})]})},{label:e.exitFee,value:s,tooltipText:e.exitFeeExplanation}];return i&&c.push({tooltipText:e.minReceiveAmount,label:e.minReceived,value:o}),c},[t,e.maxSlippage,e.exitFee,e.exitFeeExplanation,e.minReceiveAmount,e.minReceived,e.exchangeRate,e.rate,a,n,s,i,o]);return r.jsx(Ja,{collapseItems:l})},KC=({children:e})=>{const{WithdrawMetaInfo:t,AvailableLiquidityAlert:n,OnDemandWithdrawAlert:a}=L(),{requiresLeveragedCollateralLiquidity:s,leveragedCollateralValueFormatted:o}=zl(),i=Hl();return r.jsxs(q.Meta,{children:[r.jsx("div",{children:s?i?r.jsx(r.Fragment,{children:!!a&&r.jsx(a,{})}):r.jsx(r.Fragment,{children:!!n&&r.jsx(n,{liquidityAmount:o})}):null}),r.jsx(YC,{}),t&&r.jsx(t,{}),r.jsx("div",{className:"dtw-sticky dtw-bottom-0 dtw-bg-[var(--panel-meta-action-panel-bg)]",children:e})]})},QC=()=>{const e=A();return BC(),r.jsxs(r.Fragment,{children:[r.jsx(q.InputGroup,{children:r.jsx(VC,{})}),r.jsx(KC,{children:r.jsx(ds,{children:r.jsxs("div",{className:"dtw-flex dtw-flex-col dtw-gap-2 dtw-w-full",children:[r.jsx(UC,{children:r.jsx(Al,{})}),r.jsx(vl,{highlighted:!1,children:e.stopOrder})]})})})]})},XC=()=>{_v();const{isCompleteWithdrawStep:e}=Re();return{isCompleteWithdrawStep:e}},ZC=()=>{const{isCompleteWithdrawStep:e}=XC();return e?r.jsx(jC,{}):r.jsx(QC,{})},JC=()=>r.jsx(q.Panel,{children:r.jsx(ZC,{})}),eE=({tradingType:e})=>r.jsxs(R.TabGroup,{selectedIndex:et.indexOf(e),children:[r.jsx(R.TabList,{className:"dtw-flex",children:et.map(t=>r.jsx(R.Tab,{className:"dtw-hidden"},t))}),r.jsxs(R.TabPanels,{children:[r.jsx(q.Settings,{children:r.jsx(Yv,{})}),r.jsx(q.Settings,{children:r.jsx(EC,{})})]})]}),tE=({children:e})=>r.jsxs(R.TabList,{className:"dtw-flex dtw-px-[var(--panel-tab-group-px)] dtw-justify-between dtw-items-center",children:[r.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=>r.jsx(ev,{tradingType:t},t))}),e]}),nE=et.reduce((e,t,n)=>(e[n]=t,e),{}),aE=()=>{const[e]=we(),t=b(),{standalone:n}=G();hA();const a=ls(),s=o=>{const i=nE[o];i&&a(i)};return u.useEffect(()=>{n||a("deposit")},[t.address,n]),u.useEffect(()=>{n&&a(e)},[t.address,n,e]),{type:e,onTabChange:s}},sE=()=>{const{type:e,onTabChange:t}=aE();return r.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:[r.jsxs(R.TabGroup,{selectedIndex:et.indexOf(e),onChange:t,className:"dtw-flex dtw-flex-col dtw-h-full",children:[r.jsx(tE,{children:r.jsxs("div",{className:"dtw-flex dtw-gap-2 dtw-items-center dtw-justify-end",children:[r.jsx(OA,{}),r.jsx(eE,{tradingType:e})]})}),r.jsxs(R.TabPanels,{className:"dtw-flex-1 dtw-overflow-y-auto",children:[r.jsx(MA,{}),r.jsx(JC,{})]})]}),r.jsxs(BA,{children:[r.jsx(fS,{type:$.ERROR_NOTIFICATION}),r.jsx($A,{type:$.TERMS_OF_USE}),r.jsx(FA,{type:$.HIGH_SLIPPAGE}),r.jsx(qA,{type:$.TOKEN_SELECT,searchQuery:""}),r.jsx(XA,{type:$.POOL_SELECT,searchQuery:""}),r.jsx(mS,{type:$.TRADING}),r.jsx(tC,{type:$.LIMIT_SELLS}),r.jsx(mC,{type:$.LIMIT_ORDER_WITHDRAW}),r.jsx(CC,{type:$.WITHDRAW_STEPPER})]})]})},rE=({children:e,config:t,className:n})=>r.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??x.DARK[800]}`,"--panel-gap":`${t?.global?.size?.gap??"0.25rem"}`,"--panel-spacer":`${t?.global?.size?.spacer??"4px"}`,"--panel-content-color":`${t?.global?.color?.colorTextPrimary??x.WHITE.DEFAULT}`,"--panel-content-hover-color":`${t?.global?.color?.colorTextPrimaryHover??`${x.WHITE.DEFAULT}CC`}`,"--panel-secondary-color":`${t?.global?.color?.colorBgSecondary??x.GRAY[800]}`,"--panel-secondary-content-color":`${t?.global?.color?.colorTextSecondary??x.GRAY[600]}`,"--panel-accent-from-color":`${t?.global?.color?.colorBgAccentFrom??x.GREEN.DEFAULT}`,"--panel-accent-to-color":`${t?.global?.color?.colorBgAccentTo??x.GREEN[700]}`,"--panel-accent-hover-from-color":`${t?.global?.color?.colorBgAccentFromHover??`${x.GREEN.DEFAULT}CC`}`,"--panel-accent-hover-to-color":`${t?.global?.color?.colorBgAccentToHover??x.BLUE.dark}`,"--panel-accent-content-color":`${t?.global?.color?.colorTextAccent??x.WHITE.DEFAULT}`,"--panel-accent-content-hover-color":`${t?.global?.color?.colorTextAccentHover??`${x.WHITE.DEFAULT}CC`}`,"--panel-neutral-color":`${t?.global?.color?.colorBgNeutral??`${x.GRAY[600]}33`}`,"--panel-neutral-content-color":`${t?.global?.color?.colorTextNeutral??`${x.GRAY[600]}80`}`,"--panel-loading-content-color":`${t?.global?.color?.colorTextLoading??`${x.WHITE.DEFAULT}99`}`,"--panel-error-content-color":`${t?.global?.color?.colorTextError??x.RED[500]}`,"--panel-warning-content-color":`${t?.global?.color?.colorTextWarning??x.WARNING}`,"--panel-success-content-color":`${t?.global?.color?.colorTextSuccess??x.GREEN.DEFAULT}`,"--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??`${x.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??x.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??x.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??x.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??x.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??`${x.WHITE.DEFAULT}33`}`,"--panel-action-outline-button-border-hover-color":`${t?.component?.actionButton?.color?.outlineColorBorderHover??`${x.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??x.DARK[700]}`,"--panel-tooltip-color":`${t?.component?.tooltip?.color?.colorText??x.WHITE.DEFAULT}`,"--panel-alert-error-bg":`${t?.component?.alert?.color?.errorBg??`${x.ERROR}4D`}`,"--panel-alert-warning-bg":`${t?.component?.alert?.color?.warningBg??`${x.WARNING}4D`}`,"--panel-alert-info-bg":`${t?.component?.alert?.color?.infoBg??`${x.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??x.BLUE.DEFAULT}`,"--panel-switch-bg":`${t?.component?.switch?.color?.colorBg??x.GRAY[700]}`,"--panel-switch-thumb-bg-checked":`${t?.component?.switch?.color?.colorThumbBgChecked??x.WHITE.DEFAULT}`,"--panel-switch-thumb-bg":`${t?.component?.switch?.color?.colorThumbBg??x.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??x.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??x.GRAY.DEFAULT}`,"--panel-checkbox-color":`${t?.component?.checkbox?.color?.color??x.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}),oE=({children:e,config:t,theme:n,components:a,translation:s,className:o})=>r.jsx(Vb,{config:s,children:r.jsx(rE,{config:n,className:o,children:r.jsx(Ci,{config:t,children:r.jsx(pv,{config:a,children:r.jsx(Zb,{children:e})})})})}),iE=e=>r.jsx(oE,{...e,children:r.jsx(sE,{})}),lE="ref",cE=({vaultAddress:e,userAddress:t,query:n,logEvent:a,tagInvestorByReferrer:s})=>{const[o,i]=da("localStorage",Ct.REFERRER,""),[l,c]=da("localStorage",Ct.REF_POOL,""),d=n[lE];u.useEffect(()=>{!d||typeof d!="string"||ee(e)||localStorage.getItem(Ct.REFERRER)||(i(d),c(e),a?.())},[e,d,c,i,a]),u.useEffect(()=>{if(!t||!o||l.toLowerCase()!==e.toLowerCase())return;(async()=>{try{await s({investorAddress:t,poolAddress:l,referrerAddress:o})}catch(m){console.error("[core-ui-kit]: Error on tagging investor by referrer",m)}})()},[l,o,s,t,e])},dE=({title:e,children:t,className:n,titleClassName:a})=>r.jsxs("div",{className:C("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&&r.jsx("h1",{className:C("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)]",a),children:e}),r.jsx("div",{className:"dtw-w-full",children:t})]}),pE=({isOpen:e,onClose:t,children:n,className:a,ThemeProvider:s=u.Fragment})=>{const o=u.useRef(null);return r.jsx(R.Dialog,{open:e,initialFocus:o,as:"div",className:C("dtw-relative dtw-z-20 dtw-overflow-y-auto theme-scrollbar",a),onClose:t,children:r.jsx(s,{children:r.jsxs(r.Fragment,{children:[r.jsx(R.DialogBackdrop,{className:"dtw-fixed dtw-inset-0 dtw-backdrop-blur-md dtw-backdrop-brightness-75 dtw-backdrop-filter"}),r.jsx("div",{className:"dtw-fixed dtw-inset-0 dtw-flex dtw-w-screen dtw-items-center dtw-justify-center dtw-p-4",ref:o,children:r.jsx(R.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})})]})})})},uE=()=>{const e=Ve(),{isModalOpen:t,pendingTransaction:n}=fe(),{setIsModalOpen:a}=zt(),s=u.useCallback(()=>{a(!0),e?.(X.OPEN_LIMIT_SELL_VIEW,{[Te.SOURCE.NAME]:"modal"})},[e,a]),o=u.useCallback(()=>a(!1),[a]);return{isModalOpen:t,onOpen:s,onClose:o,isTransactionPending:!!n}},mE=({children:e,themeConfig:t})=>{const{onOpen:n,isModalOpen:a,onClose:s,isTransactionPending:o}=uE(),i=ge();Fl();const l=u.useCallback(({children:c})=>r.jsx(Wl,{config:t,children:c}),[t]);return r.jsxs(r.Fragment,{children:[e({onClick:n,isTransactionPending:o}),r.jsx(pE,{isOpen:a,onClose:s,ThemeProvider:l,className:"limit-order",children:r.jsx(dE,{title:i.limitOrdersTitle,className:"dtw-text-[color:var(--limit-order-content-color)] dtw-text-[length:var(--limit-order-font-size)] dtw-max-w-[430px]",children:r.jsx(jl,{onClose:s})})})]})},yE=({children:e,vaultChainId:t,vaultAddress:n,pricingAsset:a,translation:s,minAmountInUsd:o=za,actions:i,themeConfig:l,isModalOpen:c})=>{const{isFetched:d,upperLimitPrice:p,lowerLimitPrice:m}=Bl({vaultAddress:n,vaultChainId:t}),y=u.useMemo(()=>({vaultAddress:n,vaultChainId:t,pricingAsset:a,minAmountInUsd:o,isModalOpen:c,form:{upperLimitPrice:p,lowerLimitPrice:m}}),[n,t,a,o,c,p,m]);return d?r.jsx(_l,{config:s,children:r.jsx(kl,{initialState:y,actions:i,children:r.jsx(mE,{themeConfig:l,children:e})})}):null};Object.defineProperty(exports,"useBlockNumber",{enumerable:!0,get:()=>E.useBlockNumber});Object.defineProperty(exports,"useConnect",{enumerable:!0,get:()=>E.useConnect});Object.defineProperty(exports,"useDisconnect",{enumerable:!0,get:()=>E.useDisconnect});Object.defineProperty(exports,"usePublicClient",{enumerable:!0,get:()=>E.usePublicClient});Object.defineProperty(exports,"useReadContract",{enumerable:!0,get:()=>E.useReadContract});Object.defineProperty(exports,"useReadContracts",{enumerable:!0,get:()=>E.useReadContracts});Object.defineProperty(exports,"useSendTransaction",{enumerable:!0,get:()=>E.useSendTransaction});Object.defineProperty(exports,"useWaitForTransactionReceipt",{enumerable:!0,get:()=>E.useWaitForTransactionReceipt});Object.defineProperty(exports,"useWalletClient",{enumerable:!0,get:()=>E.useWalletClient});Object.defineProperty(exports,"useWriteContract",{enumerable:!0,get:()=>E.useWriteContract});Object.defineProperty(exports,"arbitrum",{enumerable:!0,get:()=>h.arbitrum});Object.defineProperty(exports,"base",{enumerable:!0,get:()=>h.base});Object.defineProperty(exports,"optimism",{enumerable:!0,get:()=>h.optimism});Object.defineProperty(exports,"polygon",{enumerable:!0,get:()=>h.polygon});Object.defineProperty(exports,"decodeErrorResult",{enumerable:!0,get:()=>D.decodeErrorResult});Object.defineProperty(exports,"encodeFunctionData",{enumerable:!0,get:()=>D.encodeFunctionData});Object.defineProperty(exports,"erc20Abi",{enumerable:!0,get:()=>D.erc20Abi});Object.defineProperty(exports,"formatEther",{enumerable:!0,get:()=>D.formatEther});Object.defineProperty(exports,"formatUnits",{enumerable:!0,get:()=>D.formatUnits});Object.defineProperty(exports,"hexToString",{enumerable:!0,get:()=>D.hexToString});Object.defineProperty(exports,"trim",{enumerable:!0,get:()=>D.trim});exports.ALCHEMY_RPC_URL_MAP=ic;exports.AaveLendingPoolAbi=Jn;exports.AddressZero=_;exports.BRIDGED_TOKENS_SYMBOLS=Ea;exports.BRIDGED_USDC_ARBITRUM=ga;exports.BRIDGED_USDC_OPTIMISM=Ta;exports.BRIDGED_USDC_POLYGON=xa;exports.CBBTC_BASE=zr;exports.CBETH_BASE=$c;exports.CHAIN_MAP=oc;exports.CHAIN_NATIVE_TOKENS=Ze;exports.COMPLETE_WITHDRAW_ACTIONS=Ia;exports.CURRENCY_SYMBOL_MAP=vr;exports.ConfigProvider=Ci;exports.DAI_OPTIMISM=Vr;exports.DAI_POLYGON=Qr;exports.DEFAULT_DEPOSIT_METHOD=Jl;exports.DEFAULT_DEPOSIT_SLIPPAGE=yn;exports.DEFAULT_DEPOSIT_SLIPPAGE_SCALE=nc;exports.DEFAULT_ERROR_MESSAGE=Lr;exports.DEFAULT_LOCK_TIME=pr;exports.DEFAULT_MULTI_ASSET_WITHDRAW_METHOD=wr;exports.DEFAULT_POLLING_INTERVAL=nt;exports.DEFAULT_PRECISION=O;exports.DEFAULT_PROMISE_TIMEOUT_MS=Tr;exports.DEFAULT_SIMULATION_ERROR=ta;exports.DEFAULT_WITHDRAW_SLIPPAGE=mr;exports.EMPTY_POOL_CONFIG=ur;exports.EasySwapperV2Abi=ve;exports.EstimationError=ut;exports.GAS_ESTIMATION_ERROR=ea;exports.GAS_LIMIT_BUFFER_COEFF=fr;exports.GET_ALL_LIMIT_ORDER_IDS_FUNCTION_NAME=Ua;exports.GMX_MARKET_ASSETS=ao;exports.GMX_MARKET_ASSETS_MAP=ae;exports.LIMIT_ORDER_READ_FUNCTION_NAME=Dn;exports.LINK_ARBITRUM=jc;exports.LINK_OPTIMISM=Hc;exports.LimitOrderAbi=wn;exports.LimitOrderModal=yE;exports.MANAGER_FEE_DENOMINATOR=ye;exports.MAX_GAS_LIMIT_MAP=Xt;exports.MULTI_ASSET_TOKEN=sn;exports.MaxUint256=Ue;exports.NATIVE_TOKEN_DEPOSIT_GAS_LIMIT=gr;exports.PAXG_POLYGON=qc;exports.PYTH_API_LINK=Xc;exports.PoolFactoryAbi=He;exports.PoolLogicAbi=be;exports.PoolManagerLogicAbi=De;exports.RETH_BASE=Jt;exports.RewardDistributionAbi=Pr;exports.SETH_OPTIMISM=zc;exports.SHORTEN_POLLING_INTERVAL=ze;exports.SIMULATION_TIMEOUT_ERROR=Mr;exports.SUSD_OPTIMISM=Uc;exports.TBTC_ARBITRUM=Pc;exports.TBTC_BASE=Fc;exports.TBTC_OPTIMISM=Gc;exports.TBTC_POLYGON=Yc;exports.TRADING_LOG_EVENT_PARAM=Te;exports.TRADING_PANEL_LOG_EVENT=X;exports.TradingPanelProvider=_d;exports.TradingWidget=iE;exports.USDCBC_BASE=Bc;exports.USDC_ARBITRUM=le;exports.USDC_BASE=Ur;exports.USDC_MAINNET=Xr;exports.USDC_OPTIMISM=Hr;exports.USDC_POLYGON=qr;exports.USDT_ARBITRUM=Rc;exports.USDT_MAINNET=Zr;exports.USDT_OPTIMISM=Gr;exports.USDT_POLYGON=Kr;exports.WBNB_ARBITRUM=Mc;exports.WBTC_ARBITRUM=Be;exports.WBTC_BY_CHAIN_ID=eo;exports.WBTC_MAINNET=Ca;exports.WBTC_OPTIMISM=Je;exports.WBTC_POLYGON=Aa;exports.WETH_ARBITRUM=It;exports.WETH_BASE=fa;exports.WETH_BY_CHAIN_ID=Jr;exports.WETH_MAINNET=Sa;exports.WETH_OPTIMISM=ba;exports.WETH_POLYGON=va;exports.WPOL_POLYGON=Yr;exports.WSOL_ARBITRUM=Lc;exports.WSTETH_ARBITRUM=kc;exports.WSTETH_BASE=Wc;exports.WSTETH_OPTIMISM=Vc;exports.XAUT_MAINNET=Kc;exports.clientSide=gn;exports.commify=md;exports.contractsAbisMap=Rr;exports.contractsAddressesMap=kr;exports.formatByCurrency=tn;exports.formatNumberToLimitedDecimals=Ge;exports.formatNumeratorToPercentage=xt;exports.formatPercentage=Ot;exports.formatToUsd=te;exports.getContractAbiById=so;exports.getContractAddressById=z;exports.getConventionalTokenPriceDecimals=_t;exports.getErrorMessage=ri;exports.getLimitOrderId=Rl;exports.getNativeTokenInvestableBalance=co;exports.getPercent=Ne;exports.getPoolFraction=aa;exports.isAaveLendAndBorrowAsset=na;exports.isEqualAddress=H;exports.isErrorWithMessage=ai;exports.isFmpAirdropVaultAddress=ho;exports.isNativeToken=hn;exports.isZeroAddress=ee;exports.normalizeNumber=Fe;exports.removeInsignificantTrailingZeros=sa;exports.shiftBy=rn;exports.shortenAddress=ro;exports.toErrorWithMessage=si;exports.transformAddressForAnalytics=Da;exports.useAccount=B;exports.useAddPoolConfig=Md;exports.useAssetPrice=ce;exports.useAvailableManagerFee=vi;exports.useBalance=Oa;exports.useBrowserStorage=da;exports.useCheckWhitelist=mi;exports.useCompleteWithdrawSwapQuotes=yt;exports.useCompleteWithdrawTrackedAssets=me;exports.useContractFunction=xe;exports.useContractPoolComposition=yi;exports.useContractReadErrorLogging=Wa;exports.useContractReadsErrorLogging=_n;exports.useCustomDepositTokensPerChain=No;exports.useDebounce=as;exports.useDepositLockTime=ul;exports.useDepositProjectedEarnings=tl;exports.useEasySwapperTrackedAssets=Ki;exports.useExchangeRate=Hi;exports.useFlatmoneyPointsUserBalances=Lb;exports.useGasPrice=oi;exports.useHasSingleAssetWithdrawBlockers=qa;exports.useInvalidateLimitOrderQuery=$l;exports.useInvalidateOnBlock=dn;exports.useInvalidatePoolContractData=hi;exports.useInvalidateTradingQueries=Nn;exports.useIsBatchContractWritesSupported=On;exports.useIsCompleteWithdrawStep=Re;exports.useIsDepositBlocked=kb;exports.useIsDepositTradingPanelType=Oe;exports.useIsDhedgeVaultConnected=Rt;exports.useIsInsufficientBalance=kt;exports.useIsPoolAddress=Bd;exports.useIsTradingEnabled=zi;exports.useIsWalletConnected=Fd;exports.useManagerLogicAddress=Ga;exports.useNetwork=Ce;exports.useOnSimulateTransaction=Io;exports.useOnTokenSelector=Eo;exports.useOnTradingTypeChange=ls;exports.useOnTransactionError=Ao;exports.useOnTransactionEstimationError=fn;exports.useOnTransactionSuccess=Co;exports.usePoolComposition=mt;exports.usePoolCompositionWithFraction=wi;exports.usePoolDynamic=oe;exports.usePoolFees=Pn;exports.usePoolManagerDynamic=jt;exports.usePoolManagerLogicData=Va;exports.usePoolManagerStatic=Mt;exports.usePoolStatic=Lt;exports.usePoolTokenPrice=ue;exports.useProjectedEarningsCore=el;exports.useRawAssetPrice=es;exports.useReceiveTokenInput=P;exports.useReferralProgram=cE;exports.useSendTokenInput=N;exports.useSetPoolAddress=Dd;exports.useSetTradingType=kd;exports.useStaticCallQuery=xT;exports.useTokenAllowance=Tn;exports.useTradingPanelActions=F;exports.useTradingPanelLogger=Ve;exports.useTradingPanelModal=K;exports.useTradingPanelPoolAddress=_o;exports.useTradingPanelPoolConfig=b;exports.useTradingPanelPoolConfigs=at;exports.useTradingPanelPoolFallbackData=qe;exports.useTradingPanelSettings=Q;exports.useTradingPanelState=J;exports.useTradingPanelTransactions=re;exports.useTradingPanelType=we;exports.useTradingResultHandling=Ui;exports.useTradingSettleHandler=Ke;exports.useUpdateCustomDepositTokensPerChain=jd;exports.useUpdatePoolConfig=Ld;exports.useUpdatePoolFallbackData=xo;exports.useUpdateReceiveTokenInput=Od;exports.useUpdateSendTokenInput=Nd;exports.useUpdateTradingModal=Rd;exports.useUpdateTradingSettings=Pd;exports.useUserBalancesDynamic=ui;exports.useUserLimitOrder=Ht;exports.useUserTokenBalance=he;exports.useUserVaultBalance=bi;exports.useUserVaultsBalances=Ti;exports.useVaultContractData=Rb;exports.useVaultDepositTokens=jn;exports.useVaultSupplyCap=xi;exports.useVaultVestedPoints=gi;exports.validateLoggerEventParams=dd;
|
|
1
|
+
"use strict";var Vl=Object.defineProperty;var ql=(e,t,n)=>t in e?Vl(e,t,{enumerable:!0,configurable:!0,writable:!0,value:n}):e[t]=n;var Le=(e,t,n)=>ql(e,typeof t!="symbol"?t+"":t,n);Object.defineProperty(exports,Symbol.toStringTag,{value:"Module"});const r=require("react/jsx-runtime"),R=require("@headlessui/react"),E=require("wagmi"),u=require("react"),h=require("wagmi/chains"),Et=require("date-fns"),D=require("viem"),T=require("bignumber.js"),Yl=require("ts-custom-error"),tt=require("@tanstack/react-query"),se=require("@heroicons/react/24/outline"),C=require("classnames"),Kl=require("react-popper-tooltip"),Ql=require("wagmi/connectors"),Se=require("@heroicons/react/24/solid"),Zn=require("@heroicons/react/16/solid"),an=require("@heroicons/react/20/solid"),B=()=>{const{address:e,status:t,connector:n,isConnected:a}=E.useAccount();return{account:a?e:void 0,status:t,connector:n,providerName:n?.name,isConnected:a}},_="0x0000000000000000000000000000000000000000",Ue=BigInt("0xffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff"),O=18,Xl="1000000000000000000",Zl=59e3,nt=3e4,ze=15e3,ya=5e3,cr=400,dr=cr*1.2,pr=Et.formatDuration({hours:24}),ur={address:_,symbol:"",chainId:h.optimism.id,depositParams:{customTokens:[]},withdrawParams:{customTokens:[]},deprecated:!1},Jl="deposit",mr=1,yn=0,ec=.5,yr=.02,tc=.75,nc=[yn],wr="withdrawSafe",hr="initWithdrawal",ac="unrollAndClaim",sc="completeWithdrawal",gr=3e7,fr=1.25,ye=1e4,Tr=13e3,br=3,wa=2e4,rc=15e3,oc={[h.mainnet.id]:h.mainnet,[h.polygon.id]:h.polygon,[h.optimism.id]:h.optimism,[h.arbitrum.id]:h.arbitrum,[h.base.id]:h.base},Ze={[h.mainnet.id]:{nativeTokenSymbol:"ETH",wrappedNativeTokenName:"WETH",address:"0xc02aaa39b223fe8d0a0e5c4f27ead9083c756cc2",decimals:O},[h.polygon.id]:{nativeTokenSymbol:"POL",wrappedNativeTokenName:"WPOL",address:"0x0d500b1d8e8ef31e21c99d1db9a6444d3adf1270",decimals:O},[h.optimism.id]:{nativeTokenSymbol:"ETH",wrappedNativeTokenName:"WETH",address:"0x4200000000000000000000000000000000000006",decimals:O},[h.arbitrum.id]:{nativeTokenSymbol:"ETH",wrappedNativeTokenName:"WETH",address:"0x82af49447d8a07e3bd95bd0d56f35241523fbab1",decimals:O},[h.base.id]:{nativeTokenSymbol:"ETH",wrappedNativeTokenName:"WETH",address:"0x4200000000000000000000000000000000000006",decimals:O}},Xt={[h.mainnet.id]:299e5,[h.polygon.id]:299e5,[h.optimism.id]:299e5,[h.arbitrum.id]:299e5,[h.base.id]:299e5},ic={[h.mainnet.id]:"https://eth-mainnet.g.alchemy.com/v2",[h.optimism.id]:"https://opt-mainnet.g.alchemy.com/v2",[h.polygon.id]:"https://polygon-mainnet.g.alchemy.com/v2",[h.arbitrum.id]:"https://arb-mainnet.g.alchemy.com/v2",[h.base.id]:"https://base-mainnet.g.alchemy.com/v2"},vr={USD:"$",ETH:"Ξ",BTC:"₿"},lc={USD:2,ETH:4,BTC:6},cc=["USDC","USDT"],X={INVEST_INPUT_FOCUS:"invest_input_focus",APPROVED_TOKEN:"approved_token",DEPOSIT:"deposit",MULTI_ASSET_WITHDRAW:"multi_asset_withdraw",SINGLE_ASSET_WITHDRAW:"single_asset_unroll",SINGLE_ASSET_WITHDRAW_AND_CLAIM:"single_asset_unroll_and_claim",CLAIM:"claim_unrolled_assets",SWAP:"swap_unrolled_assets",WITHDRAWAL:"withdrawal",TRADING_SETTINGS_OPENED:"trading_settings_opened",INFINITE_ALLOWANCE_CHANGE:"infinite_allowance_change",BATCH_TRANSACTIONS_CHANGE:"batch_transactions_change",CREATE_LIMIT_SELL_ORDER:"limit_order_create",OPEN_LIMIT_SELL_VIEW:"open_limit_sell_view",LIMIT_ORDER_WITHDRAW:"limit_order_withdraw",LIMIT_ORDER_WITHDRAW_DELETE:"limit_order_withdraw_delete"},dc={approve:[X.APPROVED_TOKEN],deposit:[X.DEPOSIT],multi_withdraw:[X.WITHDRAWAL,X.MULTI_ASSET_WITHDRAW],single_withdraw:[X.WITHDRAWAL,X.SINGLE_ASSET_WITHDRAW],single_withdraw_and_claim:[X.WITHDRAWAL,X.SINGLE_ASSET_WITHDRAW_AND_CLAIM],claim:[X.CLAIM],swap:[X.SWAP],create_limit_sell_order:[X.CREATE_LIMIT_SELL_ORDER],limit_order_withdraw:[X.LIMIT_ORDER_WITHDRAW],delete_limit_order_withdraw:[X.LIMIT_ORDER_WITHDRAW_DELETE]},Te={IS_INFINITE:{NAME:"is_infinite",TYPE:"number"},SYMBOL:{NAME:"symbol",TYPE:"string"},CHAIN_ID:{NAME:"chain_id",TYPE:"number"},ADDRESS:{NAME:"address",TYPE:"string"},IS_BATCH_TRANSACTIONS_ENABLED:{NAME:"is_batch_enabled",TYPE:"number"},SOURCE:{NAME:"source",TYPE:"string"}};var pe=(e=>(e.ETH="ETH",e.MAINNET="MAINNET",e.POLYGON="POLYGON",e.OE="OPTIMISM",e.ARBI="ARBITRUM",e.BASE="BASE",e))(pe||{});const gt=process.env.NEXT_PUBLIC_INFURA_API_KEY;h.arbitrum.id+"",`${gt}`,h.optimism.id+"",`${gt}`,h.polygon.id+"",`${gt}`,h.base.id+"",`${gt}`,h.mainnet.id+"",`${gt}`;const pc={[h.arbitrum.id]:{...h.arbitrum,name:"Arbitrum",iconPath:"/icons/arbitrum-network.svg",chainId:h.arbitrum.id,shortName:"ARB",blockchainCode:pe.ARBI},[h.optimism.id]:{...h.optimism,name:"Optimism",iconPath:"/icons/optimism-network.svg",chainId:h.optimism.id,shortName:"OP",blockchainCode:pe.OE},[h.polygon.id]:{...h.polygon,chainId:h.polygon.id,iconPath:"/icons/polygon-network.svg",shortName:"POLY",blockchainCode:pe.POLYGON},[h.base.id]:{...h.base,chainId:h.base.id,iconPath:"/icons/base-network.svg",shortName:"BASE",blockchainCode:pe.BASE},[h.mainnet.id]:{...h.mainnet,chainId:h.mainnet.id,iconPath:"/icons/ethereum-network.svg",shortName:"ETHEREUM",blockchainCode:pe.ETH}};pe.ETH+"",h.mainnet.id,pe.MAINNET+"",h.mainnet.id,pe.POLYGON+"",h.polygon.id,pe.OE+"",h.optimism.id,pe.ARBI+"",h.arbitrum.id,pe.BASE+"",h.base.id;h.mainnet.id+"",h.optimism.id+"",h.polygon.id+"",h.arbitrum.id+"",h.base.id+"";const ha="0x0000000000000000000000000000000000000000";BigInt("0xffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff");h.mainnet.id+"",BigInt(100),h.optimism.id+"",BigInt(600),h.polygon.id+"",BigInt(600),h.base.id+"",BigInt(600),h.arbitrum.id+"",BigInt(5300);const uc="0x96D33bCF84DdE326014248E2896F79bbb9c13D6d",xr="0xbDd84294bC8299861A2121F749A25EFEb7168a32",mc="0x87870Bca3F3fD6335C3F4ce8392D69350B4fA4E2",yc="0xffFb5fB14606EB3a548C113026355020dDF27535",wc="0x794a61358D6845594F94dc1DB02A252b5b4814aD",Ar="0xA5679C4272A056Bb83f039961fae7D99C48529F5",Sr="0x26a687e8244f1866E9Aa2D400c8b9957Aa8e6Ad4",hc="0x49Afe3abCf66CF09Fab86cb1139D8811C8afe56F",Cr="0xf067575Eb60c7587C11e867907AA7284833704d1",gc="0x59525b9b23adc475ef91d98dae06b568ba574ce5",fc="0xa907504d7a4c415b4e6e1d0866d96afe8202f0e5",Tc="0x1849324228d852a67eb7443e42d967e480ffe95d",bc="0xa238dd80c259a72e81d7e4664a9801593f98d1c5",Er="0xFcBEc28c43E356693971a24bf3F2Fd7D965E2ebA",vc="0x07e144e336fcc3fe928a8a2a5714da64354c1aab",xc="0x5e61a079A178f0E5784107a4963baAe0c5a680c6",Ac="0x794a61358D6845594F94dc1DB02A252b5b4814aD",Ir="0x2Ed1bd7f66e47113672f3870308b5E867C5bb743",_r="0x3bFE2a472d2964Ea4070725b7Fb0A868b3f08b63",Sc="0xfdc7b8bFe0DD3513Cc669bB8d601Cb83e2F69cB0",Cc="0x8dFf5E27EA6b7AC08EbFdf9eB090F32ee9a30fcf",Ec="0x794a61358D6845594F94dc1DB02A252b5b4814aD",Dr="0x45b90480D6F643dE2f128db091A357C3c90399f2",Nr="0xB71410736d2C8F2DAf30dA9D332dA10534d2624d",Or="0x4F754e0F0924afD74980886b0B479Fa1D7C58D0D";h.mainnet.id+"",h.arbitrum.id+"",h.base.id+"",h.optimism.id+"",h.polygon.id+"";h.mainnet.id+"",h.arbitrum.id+"",h.base.id+"",h.optimism.id+"",h.polygon.id+"";const Jn=[{anonymous:!1,inputs:[{indexed:!0,internalType:"address",name:"reserve",type:"address"},{indexed:!1,internalType:"address",name:"user",type:"address"},{indexed:!0,internalType:"address",name:"onBehalfOf",type:"address"},{indexed:!1,internalType:"uint256",name:"amount",type:"uint256"},{indexed:!1,internalType:"uint256",name:"borrowRateMode",type:"uint256"},{indexed:!1,internalType:"uint256",name:"borrowRate",type:"uint256"},{indexed:!0,internalType:"uint16",name:"referral",type:"uint16"}],name:"Borrow",type:"event"},{anonymous:!1,inputs:[{indexed:!0,internalType:"address",name:"reserve",type:"address"},{indexed:!1,internalType:"address",name:"user",type:"address"},{indexed:!0,internalType:"address",name:"onBehalfOf",type:"address"},{indexed:!1,internalType:"uint256",name:"amount",type:"uint256"},{indexed:!0,internalType:"uint16",name:"referral",type:"uint16"}],name:"Deposit",type:"event"},{anonymous:!1,inputs:[{indexed:!0,internalType:"address",name:"target",type:"address"},{indexed:!0,internalType:"address",name:"initiator",type:"address"},{indexed:!0,internalType:"address",name:"asset",type:"address"},{indexed:!1,internalType:"uint256",name:"amount",type:"uint256"},{indexed:!1,internalType:"uint256",name:"premium",type:"uint256"},{indexed:!1,internalType:"uint16",name:"referralCode",type:"uint16"}],name:"FlashLoan",type:"event"},{anonymous:!1,inputs:[{indexed:!0,internalType:"address",name:"collateralAsset",type:"address"},{indexed:!0,internalType:"address",name:"debtAsset",type:"address"},{indexed:!0,internalType:"address",name:"user",type:"address"},{indexed:!1,internalType:"uint256",name:"debtToCover",type:"uint256"},{indexed:!1,internalType:"uint256",name:"liquidatedCollateralAmount",type:"uint256"},{indexed:!1,internalType:"address",name:"liquidator",type:"address"},{indexed:!1,internalType:"bool",name:"receiveAToken",type:"bool"}],name:"LiquidationCall",type:"event"},{anonymous:!1,inputs:[],name:"Paused",type:"event"},{anonymous:!1,inputs:[{indexed:!0,internalType:"address",name:"reserve",type:"address"},{indexed:!0,internalType:"address",name:"user",type:"address"}],name:"RebalanceStableBorrowRate",type:"event"},{anonymous:!1,inputs:[{indexed:!0,internalType:"address",name:"reserve",type:"address"},{indexed:!0,internalType:"address",name:"user",type:"address"},{indexed:!0,internalType:"address",name:"repayer",type:"address"},{indexed:!1,internalType:"uint256",name:"amount",type:"uint256"}],name:"Repay",type:"event"},{anonymous:!1,inputs:[{indexed:!0,internalType:"address",name:"reserve",type:"address"},{indexed:!1,internalType:"uint256",name:"liquidityRate",type:"uint256"},{indexed:!1,internalType:"uint256",name:"stableBorrowRate",type:"uint256"},{indexed:!1,internalType:"uint256",name:"variableBorrowRate",type:"uint256"},{indexed:!1,internalType:"uint256",name:"liquidityIndex",type:"uint256"},{indexed:!1,internalType:"uint256",name:"variableBorrowIndex",type:"uint256"}],name:"ReserveDataUpdated",type:"event"},{anonymous:!1,inputs:[{indexed:!0,internalType:"address",name:"reserve",type:"address"},{indexed:!0,internalType:"address",name:"user",type:"address"}],name:"ReserveUsedAsCollateralDisabled",type:"event"},{anonymous:!1,inputs:[{indexed:!0,internalType:"address",name:"reserve",type:"address"},{indexed:!0,internalType:"address",name:"user",type:"address"}],name:"ReserveUsedAsCollateralEnabled",type:"event"},{anonymous:!1,inputs:[{indexed:!0,internalType:"address",name:"reserve",type:"address"},{indexed:!0,internalType:"address",name:"user",type:"address"},{indexed:!1,internalType:"uint256",name:"rateMode",type:"uint256"}],name:"Swap",type:"event"},{anonymous:!1,inputs:[],name:"Unpaused",type:"event"},{anonymous:!1,inputs:[{indexed:!0,internalType:"address",name:"reserve",type:"address"},{indexed:!0,internalType:"address",name:"user",type:"address"},{indexed:!0,internalType:"address",name:"to",type:"address"},{indexed:!1,internalType:"uint256",name:"amount",type:"uint256"}],name:"Withdraw",type:"event"},{inputs:[],name:"FLASHLOAN_PREMIUM_TOTAL",outputs:[{internalType:"uint256",name:"",type:"uint256"}],stateMutability:"view",type:"function"},{inputs:[],name:"LENDINGPOOL_REVISION",outputs:[{internalType:"uint256",name:"",type:"uint256"}],stateMutability:"view",type:"function"},{inputs:[],name:"MAX_NUMBER_RESERVES",outputs:[{internalType:"uint256",name:"",type:"uint256"}],stateMutability:"view",type:"function"},{inputs:[],name:"MAX_STABLE_RATE_BORROW_SIZE_PERCENT",outputs:[{internalType:"uint256",name:"",type:"uint256"}],stateMutability:"view",type:"function"},{inputs:[{internalType:"address",name:"asset",type:"address"},{internalType:"uint256",name:"amount",type:"uint256"},{internalType:"uint256",name:"interestRateMode",type:"uint256"},{internalType:"uint16",name:"referralCode",type:"uint16"},{internalType:"address",name:"onBehalfOf",type:"address"}],name:"borrow",outputs:[],stateMutability:"nonpayable",type:"function"},{inputs:[{internalType:"address",name:"asset",type:"address"},{internalType:"uint256",name:"amount",type:"uint256"},{internalType:"address",name:"onBehalfOf",type:"address"},{internalType:"uint16",name:"referralCode",type:"uint16"}],name:"deposit",outputs:[],stateMutability:"nonpayable",type:"function"},{inputs:[{internalType:"address",name:"asset",type:"address"},{internalType:"address",name:"from",type:"address"},{internalType:"address",name:"to",type:"address"},{internalType:"uint256",name:"amount",type:"uint256"},{internalType:"uint256",name:"balanceFromBefore",type:"uint256"},{internalType:"uint256",name:"balanceToBefore",type:"uint256"}],name:"finalizeTransfer",outputs:[],stateMutability:"nonpayable",type:"function"},{inputs:[{internalType:"address",name:"receiverAddress",type:"address"},{internalType:"address[]",name:"assets",type:"address[]"},{internalType:"uint256[]",name:"amounts",type:"uint256[]"},{internalType:"uint256[]",name:"modes",type:"uint256[]"},{internalType:"address",name:"onBehalfOf",type:"address"},{internalType:"bytes",name:"params",type:"bytes"},{internalType:"uint16",name:"referralCode",type:"uint16"}],name:"flashLoan",outputs:[],stateMutability:"nonpayable",type:"function"},{inputs:[],name:"getAddressesProvider",outputs:[{internalType:"contract ILendingPoolAddressesProvider",name:"",type:"address"}],stateMutability:"view",type:"function"},{inputs:[{internalType:"address",name:"asset",type:"address"}],name:"getConfiguration",outputs:[{components:[{internalType:"uint256",name:"data",type:"uint256"}],internalType:"struct DataTypes.ReserveConfigurationMap",name:"",type:"tuple"}],stateMutability:"view",type:"function"},{inputs:[{internalType:"address",name:"asset",type:"address"}],name:"getReserveData",outputs:[{components:[{components:[{internalType:"uint256",name:"data",type:"uint256"}],internalType:"struct DataTypes.ReserveConfigurationMap",name:"configuration",type:"tuple"},{internalType:"uint128",name:"liquidityIndex",type:"uint128"},{internalType:"uint128",name:"variableBorrowIndex",type:"uint128"},{internalType:"uint128",name:"currentLiquidityRate",type:"uint128"},{internalType:"uint128",name:"currentVariableBorrowRate",type:"uint128"},{internalType:"uint128",name:"currentStableBorrowRate",type:"uint128"},{internalType:"uint40",name:"lastUpdateTimestamp",type:"uint40"},{internalType:"address",name:"aTokenAddress",type:"address"},{internalType:"address",name:"stableDebtTokenAddress",type:"address"},{internalType:"address",name:"variableDebtTokenAddress",type:"address"},{internalType:"address",name:"interestRateStrategyAddress",type:"address"},{internalType:"uint8",name:"id",type:"uint8"}],internalType:"struct DataTypes.ReserveData",name:"",type:"tuple"}],stateMutability:"view",type:"function"},{inputs:[{internalType:"address",name:"asset",type:"address"}],name:"getReserveNormalizedIncome",outputs:[{internalType:"uint256",name:"",type:"uint256"}],stateMutability:"view",type:"function"},{inputs:[{internalType:"address",name:"asset",type:"address"}],name:"getReserveNormalizedVariableDebt",outputs:[{internalType:"uint256",name:"",type:"uint256"}],stateMutability:"view",type:"function"},{inputs:[],name:"getReservesList",outputs:[{internalType:"address[]",name:"",type:"address[]"}],stateMutability:"view",type:"function"},{inputs:[{internalType:"address",name:"user",type:"address"}],name:"getUserAccountData",outputs:[{internalType:"uint256",name:"totalCollateralETH",type:"uint256"},{internalType:"uint256",name:"totalDebtETH",type:"uint256"},{internalType:"uint256",name:"availableBorrowsETH",type:"uint256"},{internalType:"uint256",name:"currentLiquidationThreshold",type:"uint256"},{internalType:"uint256",name:"ltv",type:"uint256"},{internalType:"uint256",name:"healthFactor",type:"uint256"}],stateMutability:"view",type:"function"},{inputs:[{internalType:"address",name:"user",type:"address"}],name:"getUserConfiguration",outputs:[{components:[{internalType:"uint256",name:"data",type:"uint256"}],internalType:"struct DataTypes.UserConfigurationMap",name:"",type:"tuple"}],stateMutability:"view",type:"function"},{inputs:[{internalType:"address",name:"asset",type:"address"},{internalType:"address",name:"aTokenAddress",type:"address"},{internalType:"address",name:"stableDebtAddress",type:"address"},{internalType:"address",name:"variableDebtAddress",type:"address"},{internalType:"address",name:"interestRateStrategyAddress",type:"address"}],name:"initReserve",outputs:[],stateMutability:"nonpayable",type:"function"},{inputs:[{internalType:"contract ILendingPoolAddressesProvider",name:"provider",type:"address"}],name:"initialize",outputs:[],stateMutability:"nonpayable",type:"function"},{inputs:[{internalType:"address",name:"collateralAsset",type:"address"},{internalType:"address",name:"debtAsset",type:"address"},{internalType:"address",name:"user",type:"address"},{internalType:"uint256",name:"debtToCover",type:"uint256"},{internalType:"bool",name:"receiveAToken",type:"bool"}],name:"liquidationCall",outputs:[],stateMutability:"nonpayable",type:"function"},{inputs:[],name:"paused",outputs:[{internalType:"bool",name:"",type:"bool"}],stateMutability:"view",type:"function"},{inputs:[{internalType:"address",name:"asset",type:"address"},{internalType:"address",name:"user",type:"address"}],name:"rebalanceStableBorrowRate",outputs:[],stateMutability:"nonpayable",type:"function"},{inputs:[{internalType:"address",name:"asset",type:"address"},{internalType:"uint256",name:"amount",type:"uint256"},{internalType:"uint256",name:"rateMode",type:"uint256"},{internalType:"address",name:"onBehalfOf",type:"address"}],name:"repay",outputs:[{internalType:"uint256",name:"",type:"uint256"}],stateMutability:"nonpayable",type:"function"},{inputs:[{internalType:"address",name:"asset",type:"address"},{internalType:"uint256",name:"configuration",type:"uint256"}],name:"setConfiguration",outputs:[],stateMutability:"nonpayable",type:"function"},{inputs:[{internalType:"bool",name:"val",type:"bool"}],name:"setPause",outputs:[],stateMutability:"nonpayable",type:"function"},{inputs:[{internalType:"address",name:"asset",type:"address"},{internalType:"address",name:"rateStrategyAddress",type:"address"}],name:"setReserveInterestRateStrategyAddress",outputs:[],stateMutability:"nonpayable",type:"function"},{inputs:[{internalType:"address",name:"asset",type:"address"},{internalType:"bool",name:"useAsCollateral",type:"bool"}],name:"setUserUseReserveAsCollateral",outputs:[],stateMutability:"nonpayable",type:"function"},{inputs:[{internalType:"address",name:"asset",type:"address"},{internalType:"uint256",name:"rateMode",type:"uint256"}],name:"swapBorrowRateMode",outputs:[],stateMutability:"nonpayable",type:"function"},{inputs:[{internalType:"address",name:"asset",type:"address"},{internalType:"uint256",name:"amount",type:"uint256"},{internalType:"address",name:"to",type:"address"}],name:"withdraw",outputs:[{internalType:"uint256",name:"",type:"uint256"}],stateMutability:"nonpayable",type:"function"}],Ic=[{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"}],He=[{inputs:[{internalType:"address",name:"asset",type:"address"}],name:"getAssetPrice",outputs:[{internalType:"uint256",name:"price",type:"uint256"}],stateMutability:"view",type:"function"},{inputs:[{internalType:"address",name:"",type:"address"}],name:"isPool",outputs:[{internalType:"bool",name:"",type:"bool"}],stateMutability:"view",type:"function"},{inputs:[{internalType:"address",name:"extContract",type:"address"}],name:"getAssetGuard",outputs:[{internalType:"address",name:"guard",type:"address"}],stateMutability:"view",type:"function"},{inputs:[{internalType:"address",name:"extContract",type:"address"}],name:"getContractGuard",outputs:[{internalType:"address",name:"guard",type:"address"}],stateMutability:"view",type:"function"}],be=[{inputs:[{internalType:"address",name:"owner",type:"address"},{internalType:"address",name:"spender",type:"address"}],name:"allowance",outputs:[{internalType:"uint256",name:"",type:"uint256"}],stateMutability:"view",type:"function"},{inputs:[{internalType:"address",name:"spender",type:"address"},{internalType:"uint256",name:"amount",type:"uint256"}],name:"approve",outputs:[{internalType:"bool",name:"",type:"bool"}],stateMutability:"nonpayable",type:"function"},{inputs:[{internalType:"address",name:"account",type:"address"}],name:"balanceOf",outputs:[{internalType:"uint256",name:"",type:"uint256"}],stateMutability:"view",type:"function"},{inputs:[{internalType:"uint256",name:"fundValue",type:"uint256"}],name:"calculateAvailableManagerFee",outputs:[{internalType:"uint256",name:"fee",type:"uint256"}],stateMutability:"view",type:"function"},{inputs:[],name:"decimals",outputs:[{internalType:"uint8",name:"",type:"uint8"}],stateMutability:"view",type:"function"},{inputs:[{internalType:"address",name:"_asset",type:"address"},{internalType:"uint256",name:"_amount",type:"uint256"}],name:"deposit",outputs:[{internalType:"uint256",name:"liquidityMinted",type:"uint256"}],stateMutability:"nonpayable",type:"function"},{inputs:[{internalType:"address",name:"sender",type:"address"}],name:"getExitRemainingCooldown",outputs:[{internalType:"uint256",name:"remaining",type:"uint256"}],stateMutability:"view",type:"function"},{inputs:[],name:"getFundSummary",outputs:[{components:[{internalType:"string",name:"name",type:"string"},{internalType:"uint256",name:"totalSupply",type:"uint256"},{internalType:"uint256",name:"totalFundValue",type:"uint256"},{internalType:"address",name:"manager",type:"address"},{internalType:"string",name:"managerName",type:"string"},{internalType:"uint256",name:"creationTime",type:"uint256"},{internalType:"bool",name:"privatePool",type:"bool"},{internalType:"uint256",name:"performanceFeeNumerator",type:"uint256"},{internalType:"uint256",name:"managerFeeNumerator",type:"uint256"},{internalType:"uint256",name:"managerFeeDenominator",type:"uint256"},{internalType:"uint256",name:"exitFeeNumerator",type:"uint256"},{internalType:"uint256",name:"exitFeeDenominator",type:"uint256"},{internalType:"uint256",name:"entryFeeNumerator",type:"uint256"}],internalType:"struct PoolLogic.FundSummary",name:"",type:"tuple"}],stateMutability:"view",type:"function"},{inputs:[],name:"mintManagerFee",outputs:[],stateMutability:"nonpayable",type:"function"},{inputs:[],name:"name",outputs:[{internalType:"string",name:"",type:"string"}],stateMutability:"view",type:"function"},{inputs:[],name:"poolManagerLogic",outputs:[{internalType:"address",name:"",type:"address"}],stateMutability:"view",type:"function"},{inputs:[],name:"symbol",outputs:[{internalType:"string",name:"",type:"string"}],stateMutability:"view",type:"function"},{inputs:[],name:"tokenPrice",outputs:[{internalType:"uint256",name:"price",type:"uint256"}],stateMutability:"view",type:"function"},{inputs:[],name:"totalSupply",outputs:[{internalType:"uint256",name:"",type:"uint256"}],stateMutability:"view",type:"function"},{inputs:[{internalType:"uint256",name:"_fundTokenAmount",type:"uint256"},{components:[{internalType:"address",name:"supportedAsset",type:"address"},{internalType:"bytes",name:"withdrawData",type:"bytes"},{internalType:"uint256",name:"slippageTolerance",type:"uint256"}],internalType:"struct IPoolLogic.ComplexAsset[]",name:"_complexAssetsData",type:"tuple[]"}],name:"withdrawSafe",outputs:[],stateMutability:"nonpayable",type:"function"},{inputs:[{internalType:"uint256",name:"_fundTokenAmount",type:"uint256"},{internalType:"uint256",name:"_slippageTolerance",type:"uint256"}],name:"withdrawSafe",outputs:[],stateMutability:"nonpayable",type:"function"}],_c=[{type:"tuple[]",components:[{type:"address",name:"asset"},{type:"uint256",name:"amount"},{type:"tuple",name:"swapData",components:[{type:"bytes32",name:"routerKey"},{type:"bytes",name:"txData"}]}]}],Dc=[{type:"tuple",components:[{type:"bytes",name:"encodedSrcData"},{type:"tuple",name:"dstData",components:[{type:"address",name:"dstAddress"},{type:"uint256",name:"dstAmount"}]},{type:"uint256",name:"slippage"}]}],De=[{inputs:[],name:"getFundComposition",outputs:[{components:[{internalType:"address",name:"asset",type:"address"},{internalType:"bool",name:"isDeposit",type:"bool"}],internalType:"struct IHasSupportedAsset.Asset[]",name:"assets",type:"tuple[]"},{internalType:"uint256[]",name:"balances",type:"uint256[]"},{internalType:"uint256[]",name:"rates",type:"uint256[]"}],stateMutability:"view",type:"function"},{inputs:[],name:"getFeeIncreaseInfo",outputs:[{internalType:"uint256",name:"",type:"uint256"},{internalType:"uint256",name:"",type:"uint256"},{internalType:"uint256",name:"",type:"uint256"},{internalType:"uint256",name:"",type:"uint256"},{internalType:"uint256",name:"",type:"uint256"}],stateMutability:"view",type:"function"},{inputs:[{internalType:"address",name:"member",type:"address"}],name:"isMemberAllowed",outputs:[{internalType:"bool",name:"",type:"bool"}],stateMutability:"view",type:"function"},{inputs:[],name:"minDepositUSD",outputs:[{internalType:"uint256",name:"",type:"uint256"}],stateMutability:"view",type:"function"},{inputs:[],name:"totalFundValueMutable",outputs:[{internalType:"uint256",name:"",type:"uint256"}],stateMutability:"nonpayable",type:"function"},{inputs:[],name:"getSupportedAssets",outputs:[{components:[{internalType:"address",name:"asset",type:"address"},{internalType:"bool",name:"isDeposit",type:"bool"}],internalType:"struct IHasSupportedAsset.Asset[]",name:"",type:"tuple[]"}],stateMutability:"view",type:"function"},{inputs:[],name:"maxSupplyCap",outputs:[{internalType:"uint256",name:"",type:"uint256"}],stateMutability:"view",type:"function"},{inputs:[],name:"poolFeeShareNumerator",outputs:[{internalType:"uint256",name:"",type:"uint256"}],stateMutability:"view",type:"function"}],Pr=[{anonymous:!1,inputs:[{components:[{internalType:"address",name:"pool",type:"address"},{internalType:"uint256",name:"amount",type:"uint256"}],indexed:!1,internalType:"struct RewardDistribution.RewardSummary[]",name:"distributedRewards",type:"tuple[]"},{indexed:!1,internalType:"uint256",name:"totalDistributedRewards",type:"uint256"}],name:"RewardsDistribution",type:"event"},{inputs:[],name:"calculateEligiblePoolsRewards",outputs:[{components:[{internalType:"address",name:"pool",type:"address"},{internalType:"uint256",name:"amount",type:"uint256"}],internalType:"struct RewardDistribution.RewardSummary[]",name:"rewards",type:"tuple[]"},{internalType:"uint256",name:"totalRewardsToDistribute",type:"uint256"}],stateMutability:"view",type:"function"},{inputs:[],name:"getEligiblePoolsWithTvl",outputs:[{internalType:"uint256",name:"tvl",type:"uint256"},{components:[{internalType:"address",name:"pool",type:"address"},{internalType:"uint256",name:"tvl",type:"uint256"}],internalType:"struct RewardDistribution.EligiblePool[]",name:"eligiblePools",type:"tuple[]"}],stateMutability:"view",type:"function"},{inputs:[],name:"getRewardsAPY",outputs:[{internalType:"uint256",name:"apy",type:"uint256"}],stateMutability:"view",type:"function"},{inputs:[],name:"getWhitelistedPools",outputs:[{internalType:"address[]",name:"",type:"address[]"}],stateMutability:"view",type:"function"},{inputs:[],name:"lastDistributionTime",outputs:[{internalType:"uint256",name:"",type:"uint256"}],stateMutability:"view",type:"function"},{inputs:[],name:"rewardAmountPerSecond",outputs:[{internalType:"uint256",name:"",type:"uint256"}],stateMutability:"view",type:"function"},{inputs:[],name:"rewardToken",outputs:[{internalType:"contract IERC20",name:"",type:"address"}],stateMutability:"view",type:"function"}],Zt=[{inputs:[{internalType:"address",name:"account",type:"address"}],name:"balanceOf",outputs:[{internalType:"uint256",name:"",type:"uint256"}],stateMutability:"view",type:"function"},{inputs:[{internalType:"address",name:"account",type:"address"}],name:"getUnlockTax",outputs:[{internalType:"uint256",name:"unlockTax",type:"uint256"}],stateMutability:"view",type:"function"},{inputs:[{internalType:"address",name:"account",type:"address"}],name:"lockedBalance",outputs:[{internalType:"uint256",name:"amount",type:"uint256"}],stateMutability:"view",type:"function"},{inputs:[{internalType:"address",name:"account",type:"address"}],name:"unlockTime",outputs:[{internalType:"uint256",name:"unlockTime",type:"uint256"}],stateMutability:"view",type:"function"}],Nc=[{inputs:[],name:"EmptyPayload",type:"error"},{inputs:[],name:"FailedInnerCall",type:"error"},{inputs:[{internalType:"bytes",name:"returnData",type:"bytes"}],name:"FailedToApproveParaswap",type:"error"},{inputs:[{internalType:"contract IERC20",name:"destToken",type:"address"},{internalType:"uint256",name:"receivedAmount",type:"uint256"},{internalType:"uint256",name:"minAmount",type:"uint256"}],name:"InsufficientAmountReceived",type:"error"},{inputs:[{internalType:"bytes32",name:"routerKey",type:"bytes32"}],name:"InvalidAggregator",type:"error"},{inputs:[],name:"InvalidNativeTokenTransferEncoding",type:"error"},{inputs:[],name:"NativeTokenSentWithoutNativeSwap",type:"error"},{inputs:[{internalType:"uint256",name:"expectedAmount",type:"uint256"},{internalType:"uint256",name:"sentAmount",type:"uint256"}],name:"NotEnoughNativeTokenSent",type:"error"},{inputs:[{internalType:"address",name:"token",type:"address"}],name:"SafeERC20FailedOperation",type:"error"},{inputs:[{internalType:"address",name:"router",type:"address"},{components:[{internalType:"contract IERC20",name:"token",type:"address"},{internalType:"uint256",name:"amount",type:"uint256"},{components:[{internalType:"bytes32",name:"routerKey",type:"bytes32"},{internalType:"bytes",name:"swapData",type:"bytes"}],internalType:"struct AggregatorData",name:"aggregatorData",type:"tuple"}],internalType:"struct SrcTokenSwapDetails",name:"srcTokenSwapDetails",type:"tuple"},{internalType:"bytes",name:"returnData",type:"bytes"}],name:"SwapFailed",type:"error"},{inputs:[{internalType:"enum Permit2TransferType",name:"transferType",type:"uint8"}],name:"UnsupportedPermit2Method",type:"error"},{inputs:[],name:"UnsupportedTokenTransferMethod",type:"error"}],ve=[...Nc,{anonymous:!1,inputs:[{indexed:!1,internalType:"address",name:"limitOrderVault",type:"address"},{indexed:!0,internalType:"address",name:"depositor",type:"address"}],name:"LimitOrderVaultCreated",type:"event"},{anonymous:!1,inputs:[{indexed:!1,internalType:"address",name:"withdrawalVault",type:"address"},{indexed:!0,internalType:"address",name:"depositor",type:"address"}],name:"WithdrawalCompleted",type:"event"},{anonymous:!1,inputs:[{indexed:!1,internalType:"address",name:"withdrawalVault",type:"address"},{indexed:!0,internalType:"address",name:"depositor",type:"address"},{indexed:!1,internalType:"address",name:"dHedgeVault",type:"address"},{indexed:!1,internalType:"uint256",name:"amountWithdrawn",type:"uint256"}],name:"WithdrawalInitiated",type:"event"},{anonymous:!1,inputs:[{indexed:!0,internalType:"address",name:"depositor",type:"address"},{indexed:!0,internalType:"address",name:"dHedgeVault",type:"address"},{indexed:!1,internalType:"contract IERC20",name:"vaultDepositToken",type:"address"},{indexed:!1,internalType:"contract IERC20",name:"userDepositToken",type:"address"},{indexed:!1,internalType:"uint256",name:"amountReceived",type:"uint256"},{indexed:!1,internalType:"uint256",name:"lockupTime",type:"uint256"}],name:"ZapDepositCompleted",type:"event"},{inputs:[{components:[{components:[{internalType:"contract IERC20",name:"token",type:"address"},{internalType:"uint256",name:"amount",type:"uint256"},{components:[{internalType:"bytes32",name:"routerKey",type:"bytes32"},{internalType:"bytes",name:"swapData",type:"bytes"}],internalType:"struct ISwapper.AggregatorData",name:"aggregatorData",type:"tuple"}],internalType:"struct ISwapper.SrcTokenSwapDetails[]",name:"srcData",type:"tuple[]"},{components:[{internalType:"contract IERC20",name:"destToken",type:"address"},{internalType:"uint256",name:"minDestAmount",type:"uint256"}],internalType:"struct ISwapper.DestData",name:"destData",type:"tuple"}],internalType:"struct IWithdrawalVault.MultiInSingleOutData",name:"_swapData",type:"tuple"},{internalType:"uint256",name:"_expectedDestTokenAmount",type:"uint256"}],name:"completeLimitOrderWithdrawal",outputs:[{internalType:"uint256",name:"destTokenAmount",type:"uint256"}],stateMutability:"nonpayable",type:"function"},{inputs:[],name:"completeLimitOrderWithdrawal",outputs:[],stateMutability:"nonpayable",type:"function"},{inputs:[{internalType:"address",name:"_user",type:"address"},{components:[{components:[{internalType:"contract IERC20",name:"token",type:"address"},{internalType:"uint256",name:"amount",type:"uint256"},{components:[{internalType:"bytes32",name:"routerKey",type:"bytes32"},{internalType:"bytes",name:"swapData",type:"bytes"}],internalType:"struct ISwapper.AggregatorData",name:"aggregatorData",type:"tuple"}],internalType:"struct ISwapper.SrcTokenSwapDetails[]",name:"srcData",type:"tuple[]"},{components:[{internalType:"contract IERC20",name:"destToken",type:"address"},{internalType:"uint256",name:"minDestAmount",type:"uint256"}],internalType:"struct ISwapper.DestData",name:"destData",type:"tuple"}],internalType:"struct IWithdrawalVault.MultiInSingleOutData",name:"_swapData",type:"tuple"},{internalType:"uint256",name:"_expectedDestTokenAmount",type:"uint256"}],name:"completeLimitOrderWithdrawalFor",outputs:[{internalType:"uint256",name:"destTokenAmount",type:"uint256"}],stateMutability:"nonpayable",type:"function"},{inputs:[{internalType:"address",name:"_user",type:"address"}],name:"completeLimitOrderWithdrawalFor",outputs:[],stateMutability:"nonpayable",type:"function"},{inputs:[{components:[{components:[{internalType:"contract IERC20",name:"token",type:"address"},{internalType:"uint256",name:"amount",type:"uint256"},{components:[{internalType:"bytes32",name:"routerKey",type:"bytes32"},{internalType:"bytes",name:"swapData",type:"bytes"}],internalType:"struct ISwapper.AggregatorData",name:"aggregatorData",type:"tuple"}],internalType:"struct ISwapper.SrcTokenSwapDetails[]",name:"srcData",type:"tuple[]"},{components:[{internalType:"contract IERC20",name:"destToken",type:"address"},{internalType:"uint256",name:"minDestAmount",type:"uint256"}],internalType:"struct ISwapper.DestData",name:"destData",type:"tuple"}],internalType:"struct IWithdrawalVault.MultiInSingleOutData",name:"_swapData",type:"tuple"},{internalType:"uint256",name:"_expectedDestTokenAmount",type:"uint256"}],name:"completeWithdrawal",outputs:[{internalType:"uint256",name:"destTokenAmount",type:"uint256"}],stateMutability:"nonpayable",type:"function"},{inputs:[],name:"completeWithdrawal",outputs:[],stateMutability:"nonpayable",type:"function"},{inputs:[],name:"customCooldown",outputs:[{internalType:"uint256",name:"",type:"uint256"}],stateMutability:"view",type:"function"},{inputs:[{internalType:"address",name:"",type:"address"}],name:"customCooldownDepositsWhitelist",outputs:[{internalType:"bool",name:"",type:"bool"}],stateMutability:"view",type:"function"},{inputs:[],name:"dHedgePoolFactory",outputs:[{internalType:"address",name:"",type:"address"}],stateMutability:"view",type:"function"},{inputs:[{internalType:"address",name:"_dHedgeVault",type:"address"},{internalType:"contract IERC20",name:"_vaultDepositToken",type:"address"},{internalType:"uint256",name:"_depositAmount",type:"uint256"},{internalType:"uint256",name:"_expectedAmountReceived",type:"uint256"}],name:"deposit",outputs:[],stateMutability:"nonpayable",type:"function"},{inputs:[{internalType:"address",name:"_dHedgeVault",type:"address"},{internalType:"address",name:"_vaultDepositToken",type:"address"},{internalType:"uint256",name:"_depositAmount",type:"uint256"}],name:"depositQuote",outputs:[{internalType:"uint256",name:"expectedAmountReceived",type:"uint256"}],stateMutability:"view",type:"function"},{inputs:[{internalType:"address",name:"_dHedgeVault",type:"address"},{internalType:"contract IERC20",name:"_vaultDepositToken",type:"address"},{internalType:"uint256",name:"_depositAmount",type:"uint256"},{internalType:"uint256",name:"_expectedAmountReceived",type:"uint256"}],name:"depositWithCustomCooldown",outputs:[],stateMutability:"nonpayable",type:"function"},{inputs:[{internalType:"uint8",name:"",type:"uint8"}],name:"getLogic",outputs:[{internalType:"address",name:"",type:"address"}],stateMutability:"view",type:"function"},{inputs:[{internalType:"address",name:"_depositor",type:"address"}],name:"getTrackedAssets",outputs:[{components:[{internalType:"address",name:"token",type:"address"},{internalType:"uint256",name:"balance",type:"uint256"}],internalType:"struct IWithdrawalVault.TrackedAsset[]",name:"trackedAssets",type:"tuple[]"}],stateMutability:"view",type:"function"},{inputs:[{internalType:"address",name:"_depositor",type:"address"}],name:"getTrackedAssetsFromLimitOrders",outputs:[{components:[{internalType:"address",name:"token",type:"address"},{internalType:"uint256",name:"balance",type:"uint256"}],internalType:"struct IWithdrawalVault.TrackedAsset[]",name:"trackedAssets",type:"tuple[]"}],stateMutability:"view",type:"function"},{inputs:[{internalType:"address",name:"_user",type:"address"},{internalType:"address",name:"_dHedgeVault",type:"address"},{internalType:"uint256",name:"_amountIn",type:"uint256"},{components:[{internalType:"address",name:"supportedAsset",type:"address"},{internalType:"bytes",name:"withdrawData",type:"bytes"},{internalType:"uint256",name:"slippageTolerance",type:"uint256"}],internalType:"struct IPoolLogic.ComplexAsset[]",name:"_complexAssetsData",type:"tuple[]"}],name:"initLimitOrderWithdrawalFor",outputs:[{components:[{internalType:"address",name:"token",type:"address"},{internalType:"uint256",name:"balance",type:"uint256"}],internalType:"struct IWithdrawalVault.TrackedAsset[]",name:"trackedAssets",type:"tuple[]"},{internalType:"address",name:"vault",type:"address"}],stateMutability:"nonpayable",type:"function"},{inputs:[{internalType:"address",name:"_dHedgeVault",type:"address"},{internalType:"uint256",name:"_amountIn",type:"uint256"},{components:[{internalType:"address",name:"supportedAsset",type:"address"},{internalType:"bytes",name:"withdrawData",type:"bytes"},{internalType:"uint256",name:"slippageTolerance",type:"uint256"}],internalType:"struct IPoolLogic.ComplexAsset[]",name:"_complexAssetsData",type:"tuple[]"}],name:"initWithdrawal",outputs:[{components:[{internalType:"address",name:"token",type:"address"},{internalType:"uint256",name:"balance",type:"uint256"}],internalType:"struct IWithdrawalVault.TrackedAsset[]",name:"trackedAssets",type:"tuple[]"},{internalType:"address",name:"vault",type:"address"}],stateMutability:"nonpayable",type:"function"},{inputs:[{internalType:"address",name:"",type:"address"}],name:"isAuthorizedWithdrawer",outputs:[{internalType:"bool",name:"",type:"bool"}],stateMutability:"view",type:"function"},{inputs:[{internalType:"address",name:"_dHedgeVault",type:"address"}],name:"isdHedgeVault",outputs:[{internalType:"bool",name:"isVault",type:"bool"}],stateMutability:"view",type:"function"},{inputs:[{internalType:"address",name:"",type:"address"}],name:"limitOrderContracts",outputs:[{internalType:"address",name:"",type:"address"}],stateMutability:"view",type:"function"},{inputs:[{internalType:"address",name:"_dHedgeVault",type:"address"},{internalType:"uint256",name:"_expectedAmountReceived",type:"uint256"}],name:"nativeDeposit",outputs:[],stateMutability:"payable",type:"function"},{inputs:[{internalType:"address",name:"_dHedgeVault",type:"address"},{internalType:"uint256",name:"_expectedAmountReceived",type:"uint256"}],name:"nativeDepositWithCustomCooldown",outputs:[],stateMutability:"payable",type:"function"},{inputs:[],name:"owner",outputs:[{internalType:"address",name:"",type:"address"}],stateMutability:"view",type:"function"},{inputs:[{internalType:"uint256",name:"_portion",type:"uint256"},{internalType:"address",name:"_to",type:"address"}],name:"partialWithdraw",outputs:[],stateMutability:"nonpayable",type:"function"},{inputs:[],name:"renounceOwnership",outputs:[],stateMutability:"nonpayable",type:"function"},{inputs:[{components:[{internalType:"address",name:"toWhitelist",type:"address"},{internalType:"bool",name:"whitelisted",type:"bool"}],internalType:"struct EasySwapperV2.WhitelistSetting[]",name:"_whitelistSettings",type:"tuple[]"}],name:"setAuthorizedWithdrawers",outputs:[],stateMutability:"nonpayable",type:"function"},{inputs:[{internalType:"uint256",name:"_customCooldown",type:"uint256"}],name:"setCustomCooldown",outputs:[],stateMutability:"nonpayable",type:"function"},{inputs:[{components:[{internalType:"address",name:"toWhitelist",type:"address"},{internalType:"bool",name:"whitelisted",type:"bool"}],internalType:"struct EasySwapperV2.WhitelistSetting[]",name:"_whitelistSettings",type:"tuple[]"}],name:"setCustomCooldownWhitelist",outputs:[],stateMutability:"nonpayable",type:"function"},{inputs:[{internalType:"address",name:"_vaultLogic",type:"address"}],name:"setLogic",outputs:[],stateMutability:"nonpayable",type:"function"},{inputs:[{internalType:"contract ISwapper",name:"_swapper",type:"address"}],name:"setSwapper",outputs:[],stateMutability:"nonpayable",type:"function"},{inputs:[{internalType:"address",name:"_dHedgePoolFactory",type:"address"}],name:"setdHedgePoolFactory",outputs:[],stateMutability:"nonpayable",type:"function"},{inputs:[],name:"swapper",outputs:[{internalType:"contract ISwapper",name:"",type:"address"}],stateMutability:"view",type:"function"},{inputs:[{internalType:"address",name:"newOwner",type:"address"}],name:"transferOwnership",outputs:[],stateMutability:"nonpayable",type:"function"},{inputs:[{internalType:"address",name:"_dHedgeVault",type:"address"},{internalType:"uint256",name:"_amountIn",type:"uint256"},{components:[{internalType:"address",name:"supportedAsset",type:"address"},{internalType:"bytes",name:"withdrawData",type:"bytes"},{internalType:"uint256",name:"slippageTolerance",type:"uint256"}],internalType:"struct IPoolLogic.ComplexAsset[]",name:"_complexAssetsData",type:"tuple[]"}],name:"unrollAndClaim",outputs:[{components:[{internalType:"address",name:"token",type:"address"},{internalType:"uint256",name:"balance",type:"uint256"}],internalType:"struct IWithdrawalVault.TrackedAsset[]",name:"",type:"tuple[]"}],stateMutability:"nonpayable",type:"function"},{inputs:[],name:"weth",outputs:[{internalType:"address",name:"",type:"address"}],stateMutability:"view",type:"function"},{inputs:[{internalType:"address",name:"",type:"address"}],name:"withdrawalContracts",outputs:[{internalType:"address",name:"",type:"address"}],stateMutability:"view",type:"function"},{inputs:[],name:"wrappedNativeToken",outputs:[{internalType:"contract IWETH",name:"",type:"address"}],stateMutability:"view",type:"function"},{inputs:[{internalType:"address",name:"_dHedgeVault",type:"address"},{components:[{components:[{internalType:"contract IERC20",name:"token",type:"address"},{internalType:"uint256",name:"amount",type:"uint256"},{components:[{internalType:"bytes32",name:"routerKey",type:"bytes32"},{internalType:"bytes",name:"swapData",type:"bytes"}],internalType:"struct ISwapper.AggregatorData",name:"aggregatorData",type:"tuple"}],internalType:"struct ISwapper.SrcTokenSwapDetails",name:"srcData",type:"tuple"},{components:[{internalType:"contract IERC20",name:"destToken",type:"address"},{internalType:"uint256",name:"minDestAmount",type:"uint256"}],internalType:"struct ISwapper.DestData",name:"destData",type:"tuple"}],internalType:"struct EasySwapperV2.SingleInSingleOutData",name:"_swapData",type:"tuple"},{internalType:"uint256",name:"_expectedAmountReceived",type:"uint256"}],name:"zapDeposit",outputs:[],stateMutability:"nonpayable",type:"function"},{inputs:[{internalType:"address",name:"_dHedgeVault",type:"address"},{components:[{components:[{internalType:"contract IERC20",name:"token",type:"address"},{internalType:"uint256",name:"amount",type:"uint256"},{components:[{internalType:"bytes32",name:"routerKey",type:"bytes32"},{internalType:"bytes",name:"swapData",type:"bytes"}],internalType:"struct ISwapper.AggregatorData",name:"aggregatorData",type:"tuple"}],internalType:"struct ISwapper.SrcTokenSwapDetails",name:"srcData",type:"tuple"},{components:[{internalType:"contract IERC20",name:"destToken",type:"address"},{internalType:"uint256",name:"minDestAmount",type:"uint256"}],internalType:"struct ISwapper.DestData",name:"destData",type:"tuple"}],internalType:"struct EasySwapperV2.SingleInSingleOutData",name:"_swapData",type:"tuple"},{internalType:"uint256",name:"_expectedAmountReceived",type:"uint256"}],name:"zapDepositWithCustomCooldown",outputs:[],stateMutability:"nonpayable",type:"function"},{inputs:[{internalType:"address",name:"_dHedgeVault",type:"address"},{components:[{components:[{internalType:"contract IERC20",name:"token",type:"address"},{internalType:"uint256",name:"amount",type:"uint256"},{components:[{internalType:"bytes32",name:"routerKey",type:"bytes32"},{internalType:"bytes",name:"swapData",type:"bytes"}],internalType:"struct ISwapper.AggregatorData",name:"aggregatorData",type:"tuple"}],internalType:"struct ISwapper.SrcTokenSwapDetails",name:"srcData",type:"tuple"},{components:[{internalType:"contract IERC20",name:"destToken",type:"address"},{internalType:"uint256",name:"minDestAmount",type:"uint256"}],internalType:"struct ISwapper.DestData",name:"destData",type:"tuple"}],internalType:"struct EasySwapperV2.SingleInSingleOutData",name:"_swapData",type:"tuple"},{internalType:"uint256",name:"_expectedAmountReceived",type:"uint256"}],name:"zapNativeDeposit",outputs:[],stateMutability:"payable",type:"function"},{inputs:[{internalType:"address",name:"_dHedgeVault",type:"address"},{components:[{components:[{internalType:"contract IERC20",name:"token",type:"address"},{internalType:"uint256",name:"amount",type:"uint256"},{components:[{internalType:"bytes32",name:"routerKey",type:"bytes32"},{internalType:"bytes",name:"swapData",type:"bytes"}],internalType:"struct ISwapper.AggregatorData",name:"aggregatorData",type:"tuple"}],internalType:"struct ISwapper.SrcTokenSwapDetails",name:"srcData",type:"tuple"},{components:[{internalType:"contract IERC20",name:"destToken",type:"address"},{internalType:"uint256",name:"minDestAmount",type:"uint256"}],internalType:"struct ISwapper.DestData",name:"destData",type:"tuple"}],internalType:"struct EasySwapperV2.SingleInSingleOutData",name:"_swapData",type:"tuple"},{internalType:"uint256",name:"_expectedAmountReceived",type:"uint256"}],name:"zapNativeDepositWithCustomCooldown",outputs:[],stateMutability:"payable",type:"function"}],wn=[{inputs:[],name:"ExternalCallerNotAllowed",type:"error"},{inputs:[{internalType:"address",name:"asset",type:"address"}],name:"InvalidAsset",type:"error"},{inputs:[{internalType:"address",name:"pool",type:"address"}],name:"InvalidPool",type:"error"},{inputs:[{internalType:"uint256",name:"stopLossPriceD18",type:"uint256"},{internalType:"uint256",name:"takeProfitPriceD18",type:"uint256"},{internalType:"uint256",name:"currentPrice",type:"uint256"}],name:"InvalidPrices",type:"error"},{inputs:[{internalType:"string",name:"varName",type:"string"}],name:"InvalidValue",type:"error"},{inputs:[{internalType:"address",name:"user",type:"address"},{internalType:"address",name:"pool",type:"address"}],name:"LimitOrderAlreadyExists",type:"error"},{inputs:[{internalType:"uint256",name:"currentPriceD18",type:"uint256"},{internalType:"uint256",name:"stopLossPriceD18",type:"uint256"},{internalType:"uint256",name:"takeProfitPriceD18",type:"uint256"}],name:"LimitOrderNotFillable",type:"error"},{inputs:[{internalType:"bytes32",name:"id",type:"bytes32"}],name:"LimitOrderNotFound",type:"error"},{inputs:[{internalType:"address",name:"caller",type:"address"}],name:"NotAuthorizedKeeper",type:"error"},{inputs:[{internalType:"address",name:"account",type:"address"}],name:"OwnableUnauthorizedAccount",type:"error"},{inputs:[{internalType:"address",name:"token",type:"address"}],name:"SafeERC20FailedOperation",type:"error"},{inputs:[{internalType:"address",name:"user",type:"address"}],name:"SettlementOrderNotFound",type:"error"},{anonymous:!1,inputs:[{indexed:!0,internalType:"address",name:"user",type:"address"},{indexed:!0,internalType:"address",name:"pool",type:"address"},{indexed:!1,internalType:"bytes32",name:"id",type:"bytes32"}],name:"LimitOrderCreated",type:"event"},{anonymous:!1,inputs:[{indexed:!0,internalType:"address",name:"user",type:"address"},{indexed:!0,internalType:"address",name:"pool",type:"address"},{indexed:!1,internalType:"bytes32",name:"id",type:"bytes32"}],name:"LimitOrderDeleted",type:"event"},{anonymous:!1,inputs:[{indexed:!0,internalType:"address",name:"user",type:"address"},{indexed:!0,internalType:"address",name:"pool",type:"address"},{indexed:!1,internalType:"bytes32",name:"id",type:"bytes32"}],name:"LimitOrderExecuted",type:"event"},{anonymous:!1,inputs:[{indexed:!1,internalType:"bytes32",name:"id",type:"bytes32"},{indexed:!1,internalType:"bytes",name:"reason",type:"bytes"}],name:"LimitOrderExecutionFailed",type:"event"},{anonymous:!1,inputs:[{indexed:!0,internalType:"address",name:"user",type:"address"},{indexed:!0,internalType:"address",name:"pool",type:"address"},{indexed:!1,internalType:"bytes32",name:"id",type:"bytes32"}],name:"LimitOrderModified",type:"event"},{anonymous:!1,inputs:[{indexed:!0,internalType:"address",name:"user",type:"address"},{indexed:!1,internalType:"uint256",name:"destTokenAmountReceived",type:"uint256"}],name:"SettlementOrderExecuted",type:"event"},{inputs:[],name:"SLIPPAGE_DENOMINATOR",outputs:[{internalType:"uint16",name:"",type:"uint16"}],stateMutability:"view",type:"function"},{inputs:[{internalType:"bytes32",name:"orderId_",type:"bytes32"},{components:[{internalType:"address",name:"supportedAsset",type:"address"},{internalType:"bytes",name:"withdrawData",type:"bytes"},{internalType:"uint256",name:"slippageTolerance",type:"uint256"}],internalType:"struct IPoolLogic.ComplexAsset[]",name:"complexAssetsData_",type:"tuple[]"}],name:"_executeLimitOrder",outputs:[],stateMutability:"nonpayable",type:"function"},{inputs:[{internalType:"address",name:"user_",type:"address"},{components:[{components:[{internalType:"contract IERC20",name:"token",type:"address"},{internalType:"uint256",name:"amount",type:"uint256"},{components:[{internalType:"bytes32",name:"routerKey",type:"bytes32"},{internalType:"bytes",name:"swapData",type:"bytes"}],internalType:"struct ISwapper.AggregatorData",name:"aggregatorData",type:"tuple"}],internalType:"struct ISwapper.SrcTokenSwapDetails[]",name:"srcData",type:"tuple[]"},{components:[{internalType:"contract IERC20",name:"destToken",type:"address"},{internalType:"uint256",name:"minDestAmount",type:"uint256"}],internalType:"struct ISwapper.DestData",name:"destData",type:"tuple"}],internalType:"struct IWithdrawalVault.MultiInSingleOutData",name:"swapData_",type:"tuple"}],name:"_executeSettlementOrder",outputs:[],stateMutability:"nonpayable",type:"function"},{inputs:[{components:[{internalType:"uint256",name:"amount",type:"uint256"},{internalType:"uint256",name:"stopLossPriceD18",type:"uint256"},{internalType:"uint256",name:"takeProfitPriceD18",type:"uint256"},{internalType:"address",name:"user",type:"address"},{internalType:"address",name:"pool",type:"address"},{internalType:"address",name:"pricingAsset",type:"address"}],internalType:"struct PoolLimitOrderManager.LimitOrderInfo",name:"limitOrderInfo_",type:"tuple"}],name:"createLimitOrder",outputs:[],stateMutability:"nonpayable",type:"function"},{inputs:[],name:"defaultSlippageTolerance",outputs:[{internalType:"uint16",name:"",type:"uint16"}],stateMutability:"view",type:"function"},{inputs:[{internalType:"address",name:"pool_",type:"address"}],name:"deleteLimitOrder",outputs:[],stateMutability:"nonpayable",type:"function"},{inputs:[],name:"easySwapper",outputs:[{internalType:"contract IEasySwapperV2",name:"",type:"address"}],stateMutability:"view",type:"function"},{inputs:[{internalType:"bytes32",name:"orderId_",type:"bytes32"},{components:[{internalType:"address",name:"supportedAsset",type:"address"},{internalType:"bytes",name:"withdrawData",type:"bytes"},{internalType:"uint256",name:"slippageTolerance",type:"uint256"}],internalType:"struct IPoolLogic.ComplexAsset[]",name:"complexAssetsData_",type:"tuple[]"}],name:"executeLimitOrder",outputs:[],stateMutability:"nonpayable",type:"function"},{inputs:[{components:[{internalType:"bytes32",name:"orderId",type:"bytes32"},{components:[{internalType:"address",name:"supportedAsset",type:"address"},{internalType:"bytes",name:"withdrawData",type:"bytes"},{internalType:"uint256",name:"slippageTolerance",type:"uint256"}],internalType:"struct IPoolLogic.ComplexAsset[]",name:"complexAssetsData",type:"tuple[]"}],internalType:"struct PoolLimitOrderManager.LimitOrderExecution[]",name:"orders_",type:"tuple[]"}],name:"executeLimitOrders",outputs:[],stateMutability:"nonpayable",type:"function"},{inputs:[{components:[{internalType:"bytes32",name:"orderId",type:"bytes32"},{components:[{internalType:"address",name:"supportedAsset",type:"address"},{internalType:"bytes",name:"withdrawData",type:"bytes"},{internalType:"uint256",name:"slippageTolerance",type:"uint256"}],internalType:"struct IPoolLogic.ComplexAsset[]",name:"complexAssetsData",type:"tuple[]"}],internalType:"struct PoolLimitOrderManager.LimitOrderExecution[]",name:"orders_",type:"tuple[]"}],name:"executeLimitOrdersSafe",outputs:[],stateMutability:"nonpayable",type:"function"},{inputs:[{internalType:"address",name:"user_",type:"address"},{components:[{components:[{internalType:"contract IERC20",name:"token",type:"address"},{internalType:"uint256",name:"amount",type:"uint256"},{components:[{internalType:"bytes32",name:"routerKey",type:"bytes32"},{internalType:"bytes",name:"swapData",type:"bytes"}],internalType:"struct ISwapper.AggregatorData",name:"aggregatorData",type:"tuple"}],internalType:"struct ISwapper.SrcTokenSwapDetails[]",name:"srcData",type:"tuple[]"},{components:[{internalType:"contract IERC20",name:"destToken",type:"address"},{internalType:"uint256",name:"minDestAmount",type:"uint256"}],internalType:"struct ISwapper.DestData",name:"destData",type:"tuple"}],internalType:"struct IWithdrawalVault.MultiInSingleOutData",name:"swapData_",type:"tuple"}],name:"executeSettlementOrder",outputs:[],stateMutability:"nonpayable",type:"function"},{inputs:[{components:[{internalType:"address",name:"user",type:"address"},{components:[{components:[{internalType:"contract IERC20",name:"token",type:"address"},{internalType:"uint256",name:"amount",type:"uint256"},{components:[{internalType:"bytes32",name:"routerKey",type:"bytes32"},{internalType:"bytes",name:"swapData",type:"bytes"}],internalType:"struct ISwapper.AggregatorData",name:"aggregatorData",type:"tuple"}],internalType:"struct ISwapper.SrcTokenSwapDetails[]",name:"srcData",type:"tuple[]"},{components:[{internalType:"contract IERC20",name:"destToken",type:"address"},{internalType:"uint256",name:"minDestAmount",type:"uint256"}],internalType:"struct ISwapper.DestData",name:"destData",type:"tuple"}],internalType:"struct IWithdrawalVault.MultiInSingleOutData",name:"swapData",type:"tuple"}],internalType:"struct PoolLimitOrderManager.SettlementOrderExecution[]",name:"orders_",type:"tuple[]"}],name:"executeSettlementOrders",outputs:[],stateMutability:"nonpayable",type:"function"},{inputs:[{components:[{internalType:"address",name:"user",type:"address"},{components:[{components:[{internalType:"contract IERC20",name:"token",type:"address"},{internalType:"uint256",name:"amount",type:"uint256"},{components:[{internalType:"bytes32",name:"routerKey",type:"bytes32"},{internalType:"bytes",name:"swapData",type:"bytes"}],internalType:"struct ISwapper.AggregatorData",name:"aggregatorData",type:"tuple"}],internalType:"struct ISwapper.SrcTokenSwapDetails[]",name:"srcData",type:"tuple[]"},{components:[{internalType:"contract IERC20",name:"destToken",type:"address"},{internalType:"uint256",name:"minDestAmount",type:"uint256"}],internalType:"struct ISwapper.DestData",name:"destData",type:"tuple"}],internalType:"struct IWithdrawalVault.MultiInSingleOutData",name:"swapData",type:"tuple"}],internalType:"struct PoolLimitOrderManager.SettlementOrderExecution[]",name:"orders_",type:"tuple[]"}],name:"executeSettlementOrdersSafe",outputs:[],stateMutability:"nonpayable",type:"function"},{inputs:[],name:"getAllLimitOrderIds",outputs:[{internalType:"bytes32[]",name:"limitOrderIds_",type:"bytes32[]"}],stateMutability:"view",type:"function"},{inputs:[],name:"getAllUsersToSettle",outputs:[{internalType:"address[]",name:"usersToSettle_",type:"address[]"}],stateMutability:"view",type:"function"},{inputs:[],name:"limitOrderSettlementToken",outputs:[{internalType:"address",name:"",type:"address"}],stateMutability:"view",type:"function"},{inputs:[{internalType:"bytes32",name:"orderId",type:"bytes32"}],name:"limitOrders",outputs:[{internalType:"uint256",name:"amount",type:"uint256"},{internalType:"uint256",name:"stopLossPriceD18",type:"uint256"},{internalType:"uint256",name:"takeProfitPriceD18",type:"uint256"},{internalType:"address",name:"user",type:"address"},{internalType:"address",name:"pool",type:"address"},{internalType:"address",name:"pricingAsset",type:"address"}],stateMutability:"view",type:"function"},{inputs:[{components:[{internalType:"uint256",name:"amount",type:"uint256"},{internalType:"uint256",name:"stopLossPriceD18",type:"uint256"},{internalType:"uint256",name:"takeProfitPriceD18",type:"uint256"},{internalType:"address",name:"user",type:"address"},{internalType:"address",name:"pool",type:"address"},{internalType:"address",name:"pricingAsset",type:"address"}],internalType:"struct PoolLimitOrderManager.LimitOrderInfo",name:"modificationInfo_",type:"tuple"}],name:"modifyLimitOrder",outputs:[],stateMutability:"nonpayable",type:"function"},{inputs:[{internalType:"address",name:"limitOrderSettlementToken_",type:"address"}],name:"setLimitOrderSettlementToken",outputs:[],stateMutability:"nonpayable",type:"function"}],kr={[h.mainnet.id]:{factory:uc,easySwapperV2:xr,aaveLendingPoolV3:mc},[h.polygon.id]:{factory:Sc,aaveLendingPoolV2:Cc,aaveLendingPoolV3:Ec,easySwapperV2:Dr,limitOrder:Nr},[h.optimism.id]:{factory:xc,rewardDistribution:vc,aaveLendingPoolV3:Ac,easySwapperV2:Ir,limitOrder:_r},[h.arbitrum.id]:{factory:yc,aaveLendingPoolV3:wc,easySwapperV2:Ar,limitOrder:Sr},[h.base.id]:{factory:hc,flatcoinPointsModule:gc,easySwapperV2:Cr,aaveLendingPoolV3:bc,limitOrder:Er}},Rr={factory:He,aaveLendingPoolV2:Jn,aaveLendingPoolV3:Jn,rewardDistribution:Pr,poolManagerLogic:De,erc20:D.erc20Abi,poolLogic:be,flatcoinPointsModule:Zt,easySwapperV2:ve,limitOrder:wn},ea="Gas estimate error occurred",Lr="See console logs to report error details.",ta="Missing simulation params",Mr="Simulation timeout",jr="swap_data_deposit_error",Br="swap_data_withdraw_error",ft={title:"Low Slippage",hint:"Please increase slippage tolerance and try again."},$r={"invalid liquidityMinted":ft,"high withdraw slippage":ft,"high deposit slippage":ft,"high swap slippage":ft,InsufficientAmountReceived:ft,SwapFailed:{title:"Swap Failed",hint:"Please refresh the swap quote or choose another swap source in settings and try again."},"assetType not handled":{title:"Single Asset Withdrawal not available",hint:"Please use All Assets option."},[jr]:{title:"Swap Quote Fetching Error",hint:"Please select a different deposit option, refresh the swap quote, or choose another swap source in settings."},[Br]:{title:"Swap Quote Fetching Error",hint:"Please refresh the swap quote, choose another swap source in settings, or claim your assets without a swap."},dh1:{title:"Factory contract is paused",hint:"Try again later or contact the team on Discord if the issue persists."},dh2:{title:"Vault is paused",hint:"Try again later or contact the team on Discord if the issue persists."},dh3:{title:"Vault tokens are in cooldown period",hint:"Wait for the cooldown period to expire and try again."},dh4:{title:"Only vault manager allowed",hint:"Only the vault manager can perform this action."},dh5:{title:"Only allowed addresses can use custom cooldown",hint:"Only whitelisted addresses can perform this action."},dh6:{title:"Invalid cooldown duration",hint:"Cooldown must be between 5 minutes and the maximum exit cooldown."},dh7:{title:"Only whitelisted vault members allowed",hint:"Only the manager or whitelisted members can deposit to this private vault."},dh8:{title:"Asset not supported for deposits",hint:"Use a supported deposit asset."},dh9:{title:"ERC721 tokens not supported as deposit asset",hint:"Use an ERC20 token for deposits."},dh10:{title:"Amount below minimum threshold",hint:"Change amount to meet the minimum threshold."},dh11:{title:"Withdrawal too soon after deposit",hint:"Wait at least one block after deposit before withdrawing."},dh12:{title:"Insufficient balance for withdrawal",hint:"Check if you have enough vault tokens for withdrawal."},dh13:{title:"Liquidity allocation invariant breach",hint:"Contact the team on Discord."},dh14:{title:"Exit fee transfer failed",hint:"Contact the team on Discord."},dh15:{title:"Withdraw asset can not be zero",hint:"Contact the team on Discord."},dh16:{title:"Value calculation mismatch during withdrawal",hint:"Try again later or contact the team on Discord if the issue persists."},dh17:{title:"Supply calculation mismatch during withdrawal",hint:"Try again later or contact the team on Discord if the issue persists."},dh18:{title:"Address can not be zero",hint:"Contact the team on Discord."},dh19:{title:"Asset mismatch in complex asset data",hint:"Contact the team on Discord."},dh20:{title:"Trading is paused for this vault",hint:"Try again later or contact the team on Discord if the issue persists."},dh21:{title:"ERC721 transfer not verified",hint:"If you believe this is a bug, contact the team on Discord."},dh22:{title:"Asset not enabled in vault",hint:"Add the asset to the vault's supported assets."},dh23:{title:"Invalid transaction",hint:"dHEDGE protocol either does not support this action or this is a bug."},dh24:{title:"Unauthorized transaction executor",hint:"Only manager, trader, or public transactions are allowed."},dh25:{title:"Deposit value below minimum USD requirement",hint:"Increase deposit amount to meet the minimum USD value requirement."},dh26:{title:"Withdrawal slippage tolerance exceeded",hint:"Increase slippage tolerance or try again with better market conditions."},dh27:{title:"High withdrawal slippage protection triggered",hint:"Try again with better market conditions or contact the team on Discord if the issue persists."},dh28:{title:"Unauthorized sender",hint:"Only factory or owner can peform this action."},dh29:{title:"Invalid flash loan initiator",hint:"If you believe this is a bug, contact the team on Discord."},dh30:{title:"Invalid flash loan sender",hint:"If you believe this is a bug, contact the team on Discord."},dh31:{title:"Only PoolManagerLogic contract allowed",hint:"If you believe this is a bug, contact the team on Discord."},dh32:{title:"Maximum supply cap reached",hint:"Cannot mint such amount of vault tokens as it would exceed the maximum supply cap."}},Fr="Invalid limit order prices",Wr={InvalidPrices:{title:Fr}},Oc=[...Object.keys($r),...Object.keys(Wr)],U=18,ga={address:"0xff970a61a04b1ca14834a43f5de4533ebddb5cc8",symbol:"USDCe",decimals:6,value:""},le={address:"0xaf88d065e77c8cC2239327C5EDb3A432268e5831",symbol:"USDC",decimals:6,value:""},It={address:"0x82af49447d8a07e3bd95bd0d56f35241523fbab1",symbol:"WETH",decimals:U,value:""},Be={address:"0x2f2a2543b76a4166549f7aab2e75bef0aefc5b0f",symbol:"WBTC",decimals:8,value:""},Pc={address:"0x6c84a8f1c29108F47a79964b5Fe888D4f4D0dE40",symbol:"tBTC",decimals:U,value:""},kc={address:"0x5979D7b546E38E414F7E9822514be443A4800529",symbol:"wstETH",decimals:U,value:""},Rc={address:"0xfd086bc7cd5c481dcc9c85ebe478a1c0b69fcbb9",symbol:"USDT",decimals:6,value:""},Lc={address:"0x2bcC6D6CdBbDC0a4071e48bb3B969b06B3330c07",symbol:"SOL",decimals:9,value:""},Mc={address:"0xa9004a5421372e1d83fb1f85b0fc986c912f91f3",symbol:"WBNB",decimals:U,value:""},jc={address:"0xf97f4df75117a78c1a5a0dbb814af92458539fb4",symbol:"LINK",decimals:U,value:""},Ur={address:"0x833589fcd6edb6e08f4c7c32d4f71b54bda02913",symbol:"USDC",decimals:6,value:""},Bc={address:"0xd9aaec86b65d86f6a7b5b1b0c42ffa531710b6ca",symbol:"USDbC",decimals:6,value:""},fa={address:"0x4200000000000000000000000000000000000006",symbol:"WETH",decimals:U,value:""},$c={address:"0x2ae3f1ec7f1f5012cfeab0185bfc7aa3cf0dec22",symbol:"cbETH",decimals:U,value:""},zr={address:"0xcbb7c0000ab88b473b1f5afd9ef808440eed33bf",symbol:"cbBTC",decimals:8,value:""},Jt={address:"0xb6fe221fe9eef5aba221c348ba20a1bf5e73624c",symbol:"rETH",decimals:U,value:""},Fc={address:"0x236aa50979D5f3De3Bd1Eeb40E81137F22ab794b",symbol:"tBTC",decimals:U,value:""},Wc={address:"0xc1cba3fcea344f92d9239c08c0568f6f2f0ee452",symbol:"wstETH",decimals:U,value:""},Ta={address:"0x7F5c764cBc14f9669B88837ca1490cCa17c31607",symbol:"USDCe",decimals:6,value:""},Hr={address:"0x0b2C639c533813f4Aa9D7837CAf62653d097Ff85",symbol:"USDC",decimals:6,value:""},Gr={address:"0x94b008aa00579c1307b0ef2c499ad98a8ce58e58",symbol:"USDT",decimals:6,value:""},ba={address:"0x4200000000000000000000000000000000000006",symbol:"WETH",decimals:U,value:""},Uc={address:"0x8c6f28f2F1A3C87F0f938b96d27520d9751ec8d9",symbol:"sUSD",decimals:U,value:""},Vr={address:"0xda10009cbd5d07dd0cecc66161fc93d7c9000da1",symbol:"DAI",decimals:U,value:""},Je={address:"0x68f180fcce6836688e9084f035309e29bf0a2095",symbol:"WBTC",decimals:8,value:""},zc={address:"0xe405de8f52ba7559f9df3c368500b6e6ae6cee49",symbol:"sETH",decimals:U,value:""},Hc={address:"0x350a791bfc2c21f9ed5d10980dad2e2638ffa7f6",symbol:"LINK",decimals:U,value:""},Gc={address:"0x6c84a8f1c29108F47a79964b5Fe888D4f4D0dE40",symbol:"tBTC",decimals:U,value:""},Vc={address:"0x1F32b1c2345538c0c6f582fCB022739c4A194Ebb",symbol:"wstETH",decimals:U,value:""},va={address:"0x7ceB23fD6bC0adD59E62ac25578270cFf1b9f619",symbol:"WETH",decimals:U,value:""},xa={address:"0x2791Bca1f2de4661ED88A30C99A7a9449Aa84174",symbol:"USDCe",decimals:6,value:""},qr={address:"0x3c499c542cEF5E3811e1192ce70d8cC03d5c3359",symbol:"USDC",decimals:6,value:""},qc={address:"0x553d3d295e0f695b9228246232edf400ed3560b5",symbol:"PAXG",decimals:U,value:""},Aa={address:"0x1BFD67037B42Cf73acF2047067bd4F2C47D9BfD6",symbol:"WBTC",decimals:8,value:""},Yr={address:"0x0d500B1d8E8eF31E21C99d1Db9A6444d3ADf1270",symbol:"WPOL",decimals:U,value:""},Kr={address:"0xc2132d05d31c914a87c6611c10748aeb04b58e8f",symbol:"USDT",decimals:6,value:""},Qr={address:"0x8f3cf7ad23cd3cadbd9735aff958023239c6a063",symbol:"DAI",decimals:U,value:""},Yc={address:"0x236aa50979d5f3de3bd1eeb40e81137f22ab794b",symbol:"tBTC",decimals:U,value:""},Sa={address:"0xc02aaa39b223fe8d0a0e5c4f27ead9083c756cc2",symbol:"WETH",decimals:U,value:""},Xr={address:"0xa0b86991c6218b36c1d19d4a2e9eb0ce3606eb48",symbol:"USDC",decimals:6,value:""},Ca={address:"0x2260fac5e5542a773aa44fbcfedf7c193bc2c599",symbol:"WBTC",decimals:8,value:""},Zr={address:"0xdac17f958d2ee523a2206206994597c13d831ec7",symbol:"USDT",decimals:6,value:""},Kc={address:"0x68749665ff8d2d112fa859aa293f07a622782f38",symbol:"XAUt",decimals:6,value:""},sn={address:ha,symbol:"all",decimals:U,value:""},Ea={[ga.address.toLowerCase()]:"USDCe",[Ta.address.toLowerCase()]:"USDCe",[xa.address.toLowerCase()]:"USDCe"},Jr={[h.mainnet.id]:Sa,[h.optimism.id]:ba,[h.base.id]:fa,[h.polygon.id]:va,[h.arbitrum.id]:It},eo={[h.optimism.id]:Je,[h.base.id]:zr,[h.polygon.id]:Aa,[h.arbitrum.id]:Be,[h.mainnet.id]:Ca},Qc={[h.optimism.id]:{WETH:ba,USDC:Hr,WBTC:Je,USDCe:Ta,USDT:Gr,DAI:Vr},[h.polygon.id]:{WMATIC:Yr,WETH:va,USDC:qr,WBTC:Aa,USDCe:xa,USDT:Kr,DAI:Qr},[h.arbitrum.id]:{WETH:It,USDC:le,WBTC:Be,USDCe:ga},[h.base.id]:{WETH:fa,USDC:Ur},[h.mainnet.id]:{WETH:Sa,USDC:Xr,WBTC:Ca,USDT:Zr}},Xc="https://hermes.pyth.network",Zc="https://flat.money/flatcoin",Jc="https://v1.flat.money/flatcoin",en={RETH_BASE:"0xdb0cd65dcc7fe07003ce1201f91e1f966fa95768",WBTC_OPTIMISM:"0x6d857e9d24a7566bb72a3fb0847a3e0e4e1c2879",WBTC_ARBITRUM:"0xb1353d51991e79fefd4bfdba2a03e9f0232814a6"},ed=Object.values(en),td={[en.RETH_BASE]:{symbol:Jt.symbol,decimals:Jt.decimals,address:Jt.address},[en.WBTC_OPTIMISM]:{symbol:Je.symbol,decimals:Je.decimals,address:Je.address},[en.WBTC_ARBITRUM]:{symbol:Be.symbol,decimals:Be.decimals,address:Be.address}},to="0xb95fb324b8a2faf8ec4f76e3df46c718402736e2",no=[to,"0x357cb23571ef7a3d6189b7facfc361ea71f7cab5"],nd={[h.base.id]:2e3,[h.mainnet.id]:300,[h.optimism.id]:300,[h.arbitrum.id]:300,[h.polygon.id]:300},Ie={DEPOSIT:"deposit",DEPOSIT_CUSTOM:"depositWithCustomCooldown",NATIVE:"nativeDeposit",NATIVE_CUSTOM:"nativeDepositWithCustomCooldown",ZAP_NATIVE_DEPOSIT:"zapNativeDeposit",ZAP_NATIVE_DEPOSIT_CUSTOM:"zapNativeDepositWithCustomCooldown",ZAP_DEPOSIT:"zapDeposit",ZAP_DEPOSIT_CUSTOM:"zapDepositWithCustomCooldown"},Ia=["multi_withdraw","swap","claim","single_withdraw_and_claim"],ae={SOL_ARBITRUM:"0x09400d9db990d5ed3f35d7be61dfaeb900af03c9",BTC_ARBITRUM:"0x47c031236e19d024b42f8ae6780e44a573170703",WETH_WETH_ARBITRUM:"0x70d95587d40a2caf56bd97485ab3eec10bee6336",WETH_USDC_ARBITRUM:"0x450bb6774dd8a756274e0ab4107953259d2ac541",SUI_ARBITRUM:"0x6ecf2133e2c9751caadcb6958b9654bae198a797",DOGE_ARBITRUM:"0x6853ea96ff216fab11d2d930ce3c508556a4bdc4",XRP_ARBITRUM:"0x0ccb4faa6f1f1b30911619f1184082ab4e25813c",CRV_ARBITRUM:"0x0e46941f9bff8d0784bffa3d0d7883cdb82d7ae7",HYPE_ARBITRUM:"0xbcb8fe13d02b023e8f94f6881cc0192fd918a5c0",BNB_ARBITRUM:"0x2d340912aa47e33c90efb078e69e70efe2b34b9b",BNB_WBTC_USDC_ARBITRUM:"0x065577D05c3D4C11505ed7bc97BBF85d462A6A6f",LINK_ARBITRUM:"0x7f1fa204bb700853d36994da19f830b6ad18455c",PUMP_ARBITRUM:"0x4c0bb704529fa49a26bd854802d70206982c6f1b"},ao=Object.values(ae),ad={[ae.SOL_ARBITRUM]:le,[ae.BTC_ARBITRUM]:Be,[ae.WETH_WETH_ARBITRUM]:It,[ae.WETH_USDC_ARBITRUM]:It,[ae.SUI_ARBITRUM]:le,[ae.DOGE_ARBITRUM]:le,[ae.XRP_ARBITRUM]:le,[ae.CRV_ARBITRUM]:le,[ae.HYPE_ARBITRUM]:le,[ae.BNB_ARBITRUM]:le,[ae.LINK_ARBITRUM]:le,[ae.PUMP_ARBITRUM]:le,[ae.BNB_WBTC_USDC_ARBITRUM]:le},sd={"0x9a916e55f5b67226734cd7b465d51bce1d11a89a":le},Ct={IS_BATCH_TRANSACTIONS_ENABLED:"isBatchTransactionsEnabled",REFERRER:"referrer",REF_POOL:"ref_pool"},rd=()=>typeof window<"u";function od(){return rd()&&typeof window.ethereum<"u"}async function id(e){try{if(od())return window.ethereum.request({method:"wallet_watchAsset",params:{type:"ERC20",options:e}})}catch{return!1}return!1}const H=(e,t)=>e?.toLowerCase()===t?.toLowerCase(),ee=e=>H(e,ha),z=(e,t)=>kr[t]?.[e]??_,so=e=>Rr[e],ro=e=>e&&`${e.substring(0,6)}...${e.substring(e.length-4,e.length)}`,na=({address:e,chainId:t})=>{const n=z("aaveLendingPoolV3",t);return H(e,n)},oo=({sourceAddress:e,amount:t})=>`${e}_${t}`,io=(e,t)=>{const n=e.slice(0,t),a=e.slice(t);return{firstPart:n,secondPart:a}},Ne=(e,t)=>e/t*100,_t=e=>e<1?4:e<10?3:2,rn=(e,t=O)=>new T(e.toString()).shiftedBy(t).toFixed(0),aa=(e,t,n,a)=>new T(t).dividedBy(n).multipliedBy(e).shiftedBy(-(a||O)).toNumber(),lo=e=>BigInt(new T(e||"0").shiftedBy(O).toFixed(0,T.ROUND_DOWN)),_a=e=>{const t=new T(.01),n=new T(e),a=!n.isZero()&&n.lt(t)?t:n;return BigInt(a.multipliedBy(100).toFixed(0))},hs=({vaultAddress:e,swapData:t,sendTokenAddress:n,sendTokenAmount:a,vaultDepositTokenAddress:s,minVaultTokensReceivedAmount:o,routerKey:i="ONE_INCH",swapDestinationAmount:l,swapSlippage:c})=>{const d=new T(l).multipliedBy(1-c/100).toFixed(0),p=[D.stringToHex(i,{size:32}),t];return[e,[[n,a,p],[s,d]],o]},ld=({receiveAssetAddress:e,assets:t,swapData:n})=>{const a={srcData:[],destAmount:new T("0")},{srcData:s}=t?.reduce((o,i)=>{const l=n?.[i.address];if(!l)return o;const c=[D.stringToHex(l.routerKey,{size:32}),l.rawTransaction.data],d=[i.address,i.rawBalance,c];return{srcData:[...o.srcData,d],destAmount:o.destAmount.plus(l.destinationAmount)}},a)??a;return[s,[e,"0"]]},cd=({assetAddress:e,swapQuotes:t,swapParams:n,slippageToleranceForContractTransaction:a,routerKey:s})=>{if(!n)return{supportedAsset:e,withdrawData:"",slippageTolerance:BigInt(0)};const{srcData:o,dstData:i}=n,l=o.map(({asset:p,amount:m})=>{const y=t?.[oo({sourceAddress:p,amount:m.toString()})]?.find(w=>w.routerKey===s);return{asset:p,amount:m,swapData:{routerKey:D.stringToHex(y?.routerKey??"",{size:32}),txData:y?.rawTransaction.data??"0x"}}}),c=D.encodeAbiParameters(_c,[l]),d=D.encodeAbiParameters(Dc,[{encodedSrcData:c,dstData:{dstAddress:i.asset,dstAmount:i.amount},slippage:a}]);return{supportedAsset:e,withdrawData:d,slippageTolerance:a}},hn=(e,t)=>Ze[t]?.nativeTokenSymbol===e,co=({nativeTokenBalance:e,tokenDecimals:t,gasPrice:n})=>{const a=new T(n).multipliedBy(gr).shiftedBy(-t),s=new T(e).minus(a);return s.gt("0")?s:new T("0")},po=e=>cc.includes(e),dd=e=>{const t=Object.values(e).reduce((n,{type:a})=>(n[a]=n[a]+1,n),{string:0,number:0});if(t.string>10)throw new Error("logger params must contain up to 10 string values");if(t.number>40)throw new Error("logger params must contain up to 40 numeric values");return!0},pd=(e,t=150)=>e.length>t?e.substring(0,t):e,gs=(e,t=Oc)=>{const n=e.toLowerCase();return t.sort((a,s)=>s.length-a.length).find(a=>n.includes(a.toLowerCase()))},fs=e=>$r[e]??Wr[e],uo=({errorMessage:e,abiErrors:t})=>{if(!e||e.includes("User rejected"))return null;const n=t.find(o=>e.includes(o));if(n&&gs(n))return fs(n);const a=gs(e);if(a)return fs(a);const[s]=e.split(n?".":"Contract").map(o=>o.trim());return{title:"Transaction failed",hint:`${pd(s??"")} ${n?`: ${n}`:""}`}},ud=e=>typeof e=="bigint"&&e!==BigInt(0),Fe=(e,t=U)=>new T(e).shiftedBy(-t).toNumber(),mo=e=>!isNaN(parseFloat(e))&&!isNaN(e),te=({value:e,minimumFractionDigits:t=2,maximumFractionDigits:n=2,compact:a=!1,normalize:s=!1})=>new Intl.NumberFormat("en-US",{style:"currency",currency:"USD",notation:a?"compact":void 0,minimumFractionDigits:t,maximumFractionDigits:n}).format(s?Fe(e):Number(e)),sa=e=>mo(e)?new T(e).toFixed():"",Ts=["₀","₁","₂","₃","₄","₅","₆","₇","₈","₉"],Ge=({value:e,decimals:t})=>{const n=new T(e);if(n.isGreaterThan(1)||n.isZero())return sa(n.toFixed(t));const s=(/e/i.test(e.toString())?parseFloat(e.toString()).toFixed(U):e.toString()).match(/^0\.(0+)(\d+)$/);if(s){const[,o,i]=s;if(o.length>=t&&o.length<Ts.length)return`0.0${Ts[o.length]}${i.slice(0,3)}`}return sa(n.toFixed(t))},Ot=(e,t=0)=>`${e.toLocaleString("en-US",{maximumFractionDigits:t})}%`,md=e=>e.toString().replace(/\B(?=(\d{3})+(?!\d))/g,","),xt=(e,t,n=0)=>{const a=Ne(+e,t);return Ot(a,n)},tn=({currency:e,value:t})=>e==="USD"?te({value:t}):`${vr[e]} ${Ge({value:t,decimals:lc[e]})}`,yd=(e,t)=>new T(new T(e).toFixed(t,T.ROUND_DOWN)).toString(),wd=(e,t=3,n=2)=>{if(e.length<=5)return e;const a="...";return e.length<=t+n+a.length?e:`${e.slice(0,t)}${a}${e.slice(-n)}`},yo=({balance:e,symbol:t,precision:n,truncateSymbol:a})=>`${yd(e,n)} ${wd(t)}`,wo=e=>{if(!e)return;const t=e.match(/0x[a-fA-F0-9]{64}/);if(!t)return;const n=t[0];return`${n.slice(0,4)}...${n.slice(-3)}`},gn=typeof window<"u",ho=e=>H(fc,e)||H(Tc,e),go=e=>ed.some(t=>H(t,e)),fo=e=>td[e.toLowerCase()]??{symbol:"",decimals:18,address:_},hd=e=>H(e,to)?Jc:Zc,Da=e=>`eth_${e}`,gd=({action:e,log:t,symbol:n,vaultAddress:a,chainId:s})=>{const o={[Te.SYMBOL.NAME]:n,[Te.CHAIN_ID.NAME]:s,[Te.ADDRESS.NAME]:Da(a)};dc[e].forEach(i=>{t?.(i,o)})},fd=e=>ao.some(t=>H(t,e)),Td=e=>ad[e.toLowerCase()]??{symbol:"",decimals:18,address:_},bd=e=>sd[e.toLowerCase()];function vd(){if(gn)try{const e=localStorage.getItem(Ct.IS_BATCH_TRANSACTIONS_ENABLED);return e?JSON.parse(e):void 0}catch{return}}function xd(e){if(gn)try{localStorage.setItem(Ct.IS_BATCH_TRANSACTIONS_ENABLED,JSON.stringify(e))}catch(t){console.error("[core-kit]: Failed to persist batch transactions setting",t)}}const Ad=e=>{const t=e.find(({swapQuotes:n})=>n);return t?.swapQuotes?Object.values(t.swapQuotes)[0]?.map(({routerKey:n})=>n)??[]:[]},Sd=(e,t,n)=>e.map(({asset:a,swapParams:s,swapQuotes:o})=>!s||!o?{supportedAsset:a,withdrawData:"",slippageTolerance:n}:cd({assetAddress:a,swapQuotes:o,swapParams:s,slippageToleranceForContractTransaction:n,routerKey:t})),Cd=async(e,t,n,a,s)=>{for(const o of e){const i=Sd(t,o,n),{error:l}=await a(...s,i);if(!l)return i}return null},bs=(e,t)=>(e??[]).map(n=>({supportedAsset:n,withdrawData:"",slippageTolerance:t})),Ed=async(e,t,{fetchAaveSwapParams:n,fetchAaveSwapQuotes:a,withdrawAmountD18:s,slippage:o})=>Promise.all((e??[]).map(async i=>{if(!H(i,t))return{asset:i};try{const c=await n({withdrawAmountD18:s,slippage:o});if(c?.srcData.length){const d=await a({swapParams:c,slippage:o});return{asset:i,swapParams:c,swapQuotes:d}}return{asset:i}}catch(c){return console.error(c),{asset:i}}}));function Z(){}const vs={address:_,symbol:"",decimals:O,value:""},To=e=>{const t=e?.poolAddress??_,n={address:t,symbol:e?.poolConfigMap?.[t]?.symbol??"",decimals:O,value:""},a=e?.type??"deposit",s=a==="deposit"?vs:n,o=a==="deposit"?n:vs;return{poolAddress:t,poolConfigMap:{...e?.poolConfigMap},settings:{slippage:"auto",isInfiniteAllowance:!1,isMultiAssetWithdrawalEnabled:!0,isMaxSlippageLoading:!1,availableAggregators:[],...e?.settings,isBatchTransactionsEnabled:vd()??e?.settings?.isBatchTransactionsEnabled??!1,selectedAggregators:e?.settings?.selectedAggregators??e?.settings?.availableAggregators??[]},type:a,input:{sendToken:{...s,...e?.input?.sendToken},receiveToken:{...o,...e?.input?.receiveToken}},modal:{isOpen:!1,status:"None",receiveTokens:null,sendTokens:null,...e?.modal},stepper:null,transactions:e?.transactions??[],poolFallbackData:{address:_,...e?.poolFallbackData},customDepositTokensPerChain:e?.customDepositTokensPerChain,defaultChainId:e?.defaultChainId}},bo=u.createContext({...To({poolAddress:_,poolConfigMap:{}})}),vo=u.createContext({setPoolAddress:Z,setTradingType:Z,updateSendTokenInput:Z,updateReceiveTokenInput:Z,updateTradingSettings:Z,updateTradingModal:Z,updateStepper:Z,updateTransactions:Z,updatePoolFallbackData:Z,updateCustomDepositTokensPerChain:Z,onTradingSettleError:Z,onTransactionError:Z,onTransactionSuccess:Z,onTransactionEstimationError:Z,onTokenSelector:Z,onLog:Z,onSimulateTransaction:()=>Promise.resolve(null),getSwapQuotes:()=>Promise.resolve(null),updatePoolConfig:Z,addPoolConfig:Z}),Id=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_STEPPER":return{...t,stepper:n.payload===null?null:{...t.stepper,...n.payload}};case"UPDATE_POOL_FALLBACK_DATA":return{...t,poolFallbackData:n.payload};case"UPDATE_POOL_CONFIG":return{...t,poolConfigMap:{...t.poolConfigMap,...Object.entries(n.payload).filter(([a])=>!!t.poolConfigMap?.[a]).reduce((a,[s,o])=>({...a,[s]:{...t.poolConfigMap?.[s],...o}}),t.poolConfigMap)}};case"UPDATE_CUSTOM_DEPOSIT_TOKENS_PER_CHAIN":return{...t,customDepositTokensPerChain:{...t.customDepositTokensPerChain??{},...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 a=t.transactions.find(o=>o.txHash===n.payload.txHash);return n.payload.status==="success"&&a&&gd({action:a.action,log:e,symbol:a.symbol,chainId:a.chainId,vaultAddress:t.poolAddress}),{...t,transactions:n.payload.txHash?t.transactions.filter(o=>o.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:o})=>o===n.payload.txHash),0);return{...t,transactions:t.transactions.map((o,i)=>i===s?{...o,...n.payload}:o)}}break;default:return t}},_d=({children:e,initialState:t,actions:{onSetPoolAddress:n,onUpdateSendTokenInput:a,onUpdateReceiveTokenInput:s,onUpdateTradingSettings:o,onSetTradingType:i,onUpdateTradingModal:l,onUpdateTransactions:c,onTransactionError:d,onTransactionSuccess:p,onTransactionEstimationError:m,onTokenSelector:y,onLog:w,onSimulateTransaction:f,onTradingSettleError:g,getSwapQuotes:v}})=>{const[S,I]=u.useReducer(Id(w),To(t)),k=u.useCallback(j=>{I({type:"SET_POOL_ADDRESS",payload:j}),n?.(j)},[n]),M=u.useCallback(j=>{I({type:"UPDATE_SEND_TOKEN_INPUT",payload:j}),a?.(j)},[a]),ne=u.useCallback(j=>{I({type:"UPDATE_RECEIVE_TOKEN_INPUT",payload:j}),s?.(j)},[s]),Ae=u.useCallback(j=>{I({type:"UPDATE_TRADING_SETTINGS",payload:j}),o?.(j)},[o]),Xe=u.useCallback(j=>{I({type:"SET_TRADING_TYPE",payload:j}),i?.(j)},[i]),Gt=u.useCallback(j=>{I({type:"UPDATE_TRADING_MODAL",payload:j}),l?.(j)},[l]),Vt=u.useCallback(j=>{I({type:"UPDATE_STEPPER",payload:j})},[]),ht=u.useCallback(j=>{I({type:"UPDATE_TRADING_TRANSACTIONS",payload:j}),c?.(j)},[c]),us=u.useCallback(j=>{I({type:"UPDATE_POOL_FALLBACK_DATA",payload:j})},[]),ms=u.useCallback(j=>{I({type:"UPDATE_CUSTOM_DEPOSIT_TOKENS_PER_CHAIN",payload:j})},[]),ys=u.useCallback(j=>{I({type:"UPDATE_POOL_CONFIG",payload:j})},[]),ws=u.useCallback(j=>{I({type:"ADD_POOL_CONFIG",payload:j})},[]),Gl=u.useMemo(()=>({setPoolAddress:k,setTradingType:Xe,updateTradingSettings:Ae,updateSendTokenInput:M,updateReceiveTokenInput:ne,updateTradingModal:Gt,updateStepper:Vt,updateTransactions:ht,updatePoolFallbackData:us,updateCustomDepositTokensPerChain:ms,onTransactionError:d,onTransactionSuccess:p,onTransactionEstimationError:m,onTokenSelector:y,onLog:w,onSimulateTransaction:f,onTradingSettleError:g,getSwapQuotes:v,updatePoolConfig:ys,addPoolConfig:ws}),[k,Xe,Ae,M,ne,Gt,Vt,ht,us,ms,d,p,m,y,w,f,g,v,ys,ws]);return r.jsx(vo.Provider,{value:Gl,children:r.jsx(bo.Provider,{value:S,children:e})})},J=()=>u.useContext(bo),F=()=>u.useContext(vo),Dd=()=>F().setPoolAddress,Nd=()=>F().updateSendTokenInput,Od=()=>F().updateReceiveTokenInput,Pd=()=>F().updateTradingSettings,kd=()=>F().setTradingType,Rd=()=>F().updateTradingModal,xo=()=>F().updatePoolFallbackData,Ao=()=>F().onTransactionError,So=()=>F().onTradingSettleError,Co=()=>F().onTransactionSuccess,fn=()=>F().onTransactionEstimationError,Eo=()=>F().onTokenSelector,Ve=()=>F().onLog,Io=()=>F().onSimulateTransaction,Na=()=>{const e=F().getSwapQuotes,{settings:{selectedAggregators:t}}=J();return u.useCallback(({signal:n,variables:a})=>e({signal:n,variables:{...a,...!!t.length&&{aggregators:t}}}),[e,t])},Ld=()=>F().updatePoolConfig,Md=()=>F().addPoolConfig,jd=()=>F().updateCustomDepositTokensPerChain,_o=()=>[J().poolAddress,F().setPoolAddress],b=()=>{const{poolAddress:e,poolConfigMap:t}=J();return t[e]??ur},at=()=>{const{poolConfigMap:e}=J();return u.useMemo(()=>Object.values(e),[e])},Bd=e=>{const t=at();return u.useMemo(()=>t.some(n=>n.address===e),[t,e])},qe=()=>{const{poolFallbackData:e,poolAddress:t}=J(),n=xo();return[e.address===t?e:{address:t},n]},Do=()=>J().input,N=()=>[Do().sendToken,F().updateSendTokenInput],P=()=>[Do().receiveToken,F().updateReceiveTokenInput],Q=()=>[J().settings,F().updateTradingSettings],No=()=>[J().customDepositTokensPerChain,F().updateCustomDepositTokensPerChain],K=()=>[J().modal,F().updateTradingModal],Oo=()=>[J().stepper,F().updateStepper],we=()=>[J().type,F().setTradingType],Oe=()=>J().type==="deposit",re=()=>[J().transactions,F().updateTransactions],$d=()=>J().defaultChainId,Bn=(e,t)=>t.some(({id:n})=>n===e),Ce=()=>{const{chain:e}=E.useAccount(),{chains:t}=E.useConfig(),{switchChain:n,switchChainAsync:a}=E.useSwitchChain(),s=$d(),o=e?.id,i=Bn(o,t),l=s&&Bn(s,t)?s:t[0].id;return{chain:e,isSupported:i,switchNetwork:n,switchNetworkAsync:a,chainId:i?o:void 0,supportedChainId:Bn(o,t)?o:l,chains:t}},Tn=({tokenAddress:e,ownerAddress:t,spenderAddress:n,chainId:a,skip:s})=>E.useReadContract({address:e,abi:D.erc20Abi,functionName:"allowance",args:[t,n],chainId:a,query:{enabled:!s,refetchInterval:nt}}),Fd=()=>{const{account:e}=B(),[t,n]=u.useState(!1);return u.useEffect(()=>{n(!!e)},[e]),t},Oa=e=>E.useBalance({...e,query:{...e?.query,staleTime:nt}});var qt=typeof globalThis<"u"?globalThis:typeof window<"u"?window:typeof global<"u"?global:typeof self<"u"?self:{};function bn(e){return e&&e.__esModule&&Object.prototype.hasOwnProperty.call(e,"default")?e.default:e}function Wd(){this.__data__=[],this.size=0}var Ud=Wd;function zd(e,t){return e===t||e!==e&&t!==t}var Pa=zd,Hd=Pa;function Gd(e,t){for(var n=e.length;n--;)if(Hd(e[n][0],t))return n;return-1}var vn=Gd,Vd=vn,qd=Array.prototype,Yd=qd.splice;function Kd(e){var t=this.__data__,n=Vd(t,e);if(n<0)return!1;var a=t.length-1;return n==a?t.pop():Yd.call(t,n,1),--this.size,!0}var Qd=Kd,Xd=vn;function Zd(e){var t=this.__data__,n=Xd(t,e);return n<0?void 0:t[n][1]}var Jd=Zd,ep=vn;function tp(e){return ep(this.__data__,e)>-1}var np=tp,ap=vn;function sp(e,t){var n=this.__data__,a=ap(n,e);return a<0?(++this.size,n.push([e,t])):n[a][1]=t,this}var rp=sp,op=Ud,ip=Qd,lp=Jd,cp=np,dp=rp;function st(e){var t=-1,n=e==null?0:e.length;for(this.clear();++t<n;){var a=e[t];this.set(a[0],a[1])}}st.prototype.clear=op;st.prototype.delete=ip;st.prototype.get=lp;st.prototype.has=cp;st.prototype.set=dp;var xn=st,pp=xn;function up(){this.__data__=new pp,this.size=0}var mp=up;function yp(e){var t=this.__data__,n=t.delete(e);return this.size=t.size,n}var wp=yp;function hp(e){return this.__data__.get(e)}var gp=hp;function fp(e){return this.__data__.has(e)}var Tp=fp,bp=typeof qt=="object"&&qt&&qt.Object===Object&&qt,Po=bp,vp=Po,xp=typeof self=="object"&&self&&self.Object===Object&&self,Ap=vp||xp||Function("return this")(),Ee=Ap,Sp=Ee,Cp=Sp.Symbol,An=Cp,xs=An,ko=Object.prototype,Ep=ko.hasOwnProperty,Ip=ko.toString,Tt=xs?xs.toStringTag:void 0;function _p(e){var t=Ep.call(e,Tt),n=e[Tt];try{e[Tt]=void 0;var a=!0}catch{}var s=Ip.call(e);return a&&(t?e[Tt]=n:delete e[Tt]),s}var Dp=_p,Np=Object.prototype,Op=Np.toString;function Pp(e){return Op.call(e)}var kp=Pp,As=An,Rp=Dp,Lp=kp,Mp="[object Null]",jp="[object Undefined]",Ss=As?As.toStringTag:void 0;function Bp(e){return e==null?e===void 0?jp:Mp:Ss&&Ss in Object(e)?Rp(e):Lp(e)}var rt=Bp;function $p(e){var t=typeof e;return e!=null&&(t=="object"||t=="function")}var Pt=$p,Fp=rt,Wp=Pt,Up="[object AsyncFunction]",zp="[object Function]",Hp="[object GeneratorFunction]",Gp="[object Proxy]";function Vp(e){if(!Wp(e))return!1;var t=Fp(e);return t==zp||t==Hp||t==Up||t==Gp}var Ro=Vp,qp=Ee,Yp=qp["__core-js_shared__"],Kp=Yp,$n=Kp,Cs=function(){var e=/[^.]+$/.exec($n&&$n.keys&&$n.keys.IE_PROTO||"");return e?"Symbol(src)_1."+e:""}();function Qp(e){return!!Cs&&Cs in e}var Xp=Qp,Zp=Function.prototype,Jp=Zp.toString;function eu(e){if(e!=null){try{return Jp.call(e)}catch{}try{return e+""}catch{}}return""}var Lo=eu,tu=Ro,nu=Xp,au=Pt,su=Lo,ru=/[\\^$.*+?()[\]{}|]/g,ou=/^\[object .+?Constructor\]$/,iu=Function.prototype,lu=Object.prototype,cu=iu.toString,du=lu.hasOwnProperty,pu=RegExp("^"+cu.call(du).replace(ru,"\\$&").replace(/hasOwnProperty|(function).*?(?=\\\()| for .+?(?=\\\])/g,"$1.*?")+"$");function uu(e){if(!au(e)||nu(e))return!1;var t=tu(e)?pu:ou;return t.test(su(e))}var mu=uu;function yu(e,t){return e?.[t]}var wu=yu,hu=mu,gu=wu;function fu(e,t){var n=gu(e,t);return hu(n)?n:void 0}var ot=fu,Tu=ot,bu=Ee,vu=Tu(bu,"Map"),ka=vu,xu=ot,Au=xu(Object,"create"),Sn=Au,Es=Sn;function Su(){this.__data__=Es?Es(null):{},this.size=0}var Cu=Su;function Eu(e){var t=this.has(e)&&delete this.__data__[e];return this.size-=t?1:0,t}var Iu=Eu,_u=Sn,Du="__lodash_hash_undefined__",Nu=Object.prototype,Ou=Nu.hasOwnProperty;function Pu(e){var t=this.__data__;if(_u){var n=t[e];return n===Du?void 0:n}return Ou.call(t,e)?t[e]:void 0}var ku=Pu,Ru=Sn,Lu=Object.prototype,Mu=Lu.hasOwnProperty;function ju(e){var t=this.__data__;return Ru?t[e]!==void 0:Mu.call(t,e)}var Bu=ju,$u=Sn,Fu="__lodash_hash_undefined__";function Wu(e,t){var n=this.__data__;return this.size+=this.has(e)?0:1,n[e]=$u&&t===void 0?Fu:t,this}var Uu=Wu,zu=Cu,Hu=Iu,Gu=ku,Vu=Bu,qu=Uu;function it(e){var t=-1,n=e==null?0:e.length;for(this.clear();++t<n;){var a=e[t];this.set(a[0],a[1])}}it.prototype.clear=zu;it.prototype.delete=Hu;it.prototype.get=Gu;it.prototype.has=Vu;it.prototype.set=qu;var Yu=it,Is=Yu,Ku=xn,Qu=ka;function Xu(){this.size=0,this.__data__={hash:new Is,map:new(Qu||Ku),string:new Is}}var Zu=Xu;function Ju(e){var t=typeof e;return t=="string"||t=="number"||t=="symbol"||t=="boolean"?e!=="__proto__":e===null}var em=Ju,tm=em;function nm(e,t){var n=e.__data__;return tm(t)?n[typeof t=="string"?"string":"hash"]:n.map}var Cn=nm,am=Cn;function sm(e){var t=am(this,e).delete(e);return this.size-=t?1:0,t}var rm=sm,om=Cn;function im(e){return om(this,e).get(e)}var lm=im,cm=Cn;function dm(e){return cm(this,e).has(e)}var pm=dm,um=Cn;function mm(e,t){var n=um(this,e),a=n.size;return n.set(e,t),this.size+=n.size==a?0:1,this}var ym=mm,wm=Zu,hm=rm,gm=lm,fm=pm,Tm=ym;function lt(e){var t=-1,n=e==null?0:e.length;for(this.clear();++t<n;){var a=e[t];this.set(a[0],a[1])}}lt.prototype.clear=wm;lt.prototype.delete=hm;lt.prototype.get=gm;lt.prototype.has=fm;lt.prototype.set=Tm;var Ra=lt,bm=xn,vm=ka,xm=Ra,Am=200;function Sm(e,t){var n=this.__data__;if(n instanceof bm){var a=n.__data__;if(!vm||a.length<Am-1)return a.push([e,t]),this.size=++n.size,this;n=this.__data__=new xm(a)}return n.set(e,t),this.size=n.size,this}var Cm=Sm,Em=xn,Im=mp,_m=wp,Dm=gp,Nm=Tp,Om=Cm;function ct(e){var t=this.__data__=new Em(e);this.size=t.size}ct.prototype.clear=Im;ct.prototype.delete=_m;ct.prototype.get=Dm;ct.prototype.has=Nm;ct.prototype.set=Om;var Mo=ct,Pm="__lodash_hash_undefined__";function km(e){return this.__data__.set(e,Pm),this}var Rm=km;function Lm(e){return this.__data__.has(e)}var Mm=Lm,jm=Ra,Bm=Rm,$m=Mm;function on(e){var t=-1,n=e==null?0:e.length;for(this.__data__=new jm;++t<n;)this.add(e[t])}on.prototype.add=on.prototype.push=Bm;on.prototype.has=$m;var jo=on;function Fm(e,t){for(var n=-1,a=e==null?0:e.length;++n<a;)if(t(e[n],n,e))return!0;return!1}var Wm=Fm;function Um(e,t){return e.has(t)}var Bo=Um,zm=jo,Hm=Wm,Gm=Bo,Vm=1,qm=2;function Ym(e,t,n,a,s,o){var i=n&Vm,l=e.length,c=t.length;if(l!=c&&!(i&&c>l))return!1;var d=o.get(e),p=o.get(t);if(d&&p)return d==t&&p==e;var m=-1,y=!0,w=n&qm?new zm:void 0;for(o.set(e,t),o.set(t,e);++m<l;){var f=e[m],g=t[m];if(a)var v=i?a(g,f,m,t,e,o):a(f,g,m,e,t,o);if(v!==void 0){if(v)continue;y=!1;break}if(w){if(!Hm(t,function(S,I){if(!Gm(w,I)&&(f===S||s(f,S,n,a,o)))return w.push(I)})){y=!1;break}}else if(!(f===g||s(f,g,n,a,o))){y=!1;break}}return o.delete(e),o.delete(t),y}var $o=Ym,Km=Ee,Qm=Km.Uint8Array,Xm=Qm;function Zm(e){var t=-1,n=Array(e.size);return e.forEach(function(a,s){n[++t]=[s,a]}),n}var Jm=Zm;function ey(e){var t=-1,n=Array(e.size);return e.forEach(function(a){n[++t]=a}),n}var La=ey,_s=An,Ds=Xm,ty=Pa,ny=$o,ay=Jm,sy=La,ry=1,oy=2,iy="[object Boolean]",ly="[object Date]",cy="[object Error]",dy="[object Map]",py="[object Number]",uy="[object RegExp]",my="[object Set]",yy="[object String]",wy="[object Symbol]",hy="[object ArrayBuffer]",gy="[object DataView]",Ns=_s?_s.prototype:void 0,Fn=Ns?Ns.valueOf:void 0;function fy(e,t,n,a,s,o,i){switch(n){case gy:if(e.byteLength!=t.byteLength||e.byteOffset!=t.byteOffset)return!1;e=e.buffer,t=t.buffer;case hy:return!(e.byteLength!=t.byteLength||!o(new Ds(e),new Ds(t)));case iy:case ly:case py:return ty(+e,+t);case cy:return e.name==t.name&&e.message==t.message;case uy:case yy:return e==t+"";case dy:var l=ay;case my:var c=a&ry;if(l||(l=sy),e.size!=t.size&&!c)return!1;var d=i.get(e);if(d)return d==t;a|=oy,i.set(e,t);var p=ny(l(e),l(t),a,s,o,i);return i.delete(e),p;case wy:if(Fn)return Fn.call(e)==Fn.call(t)}return!1}var Ty=fy;function by(e,t){for(var n=-1,a=t.length,s=e.length;++n<a;)e[s+n]=t[n];return e}var vy=by,xy=Array.isArray,Pe=xy,Ay=vy,Sy=Pe;function Cy(e,t,n){var a=t(e);return Sy(e)?a:Ay(a,n(e))}var Ey=Cy;function Iy(e,t){for(var n=-1,a=e==null?0:e.length,s=0,o=[];++n<a;){var i=e[n];t(i,n,e)&&(o[s++]=i)}return o}var _y=Iy;function Dy(){return[]}var Ny=Dy,Oy=_y,Py=Ny,ky=Object.prototype,Ry=ky.propertyIsEnumerable,Os=Object.getOwnPropertySymbols,Ly=Os?function(e){return e==null?[]:(e=Object(e),Oy(Os(e),function(t){return Ry.call(e,t)}))}:Py,My=Ly;function jy(e,t){for(var n=-1,a=Array(e);++n<e;)a[n]=t(n);return a}var By=jy;function $y(e){return e!=null&&typeof e=="object"}var dt=$y,Fy=rt,Wy=dt,Uy="[object Arguments]";function zy(e){return Wy(e)&&Fy(e)==Uy}var Hy=zy,Ps=Hy,Gy=dt,Fo=Object.prototype,Vy=Fo.hasOwnProperty,qy=Fo.propertyIsEnumerable,Yy=Ps(function(){return arguments}())?Ps:function(e){return Gy(e)&&Vy.call(e,"callee")&&!qy.call(e,"callee")},Wo=Yy,ln={exports:{}};function Ky(){return!1}var Qy=Ky;ln.exports;(function(e,t){var n=Ee,a=Qy,s=t&&!t.nodeType&&t,o=s&&!0&&e&&!e.nodeType&&e,i=o&&o.exports===s,l=i?n.Buffer:void 0,c=l?l.isBuffer:void 0,d=c||a;e.exports=d})(ln,ln.exports);var Uo=ln.exports,Xy=9007199254740991,Zy=/^(?:0|[1-9]\d*)$/;function Jy(e,t){var n=typeof e;return t=t??Xy,!!t&&(n=="number"||n!="symbol"&&Zy.test(e))&&e>-1&&e%1==0&&e<t}var Ma=Jy,ew=9007199254740991;function tw(e){return typeof e=="number"&&e>-1&&e%1==0&&e<=ew}var ja=tw,nw=rt,aw=ja,sw=dt,rw="[object Arguments]",ow="[object Array]",iw="[object Boolean]",lw="[object Date]",cw="[object Error]",dw="[object Function]",pw="[object Map]",uw="[object Number]",mw="[object Object]",yw="[object RegExp]",ww="[object Set]",hw="[object String]",gw="[object WeakMap]",fw="[object ArrayBuffer]",Tw="[object DataView]",bw="[object Float32Array]",vw="[object Float64Array]",xw="[object Int8Array]",Aw="[object Int16Array]",Sw="[object Int32Array]",Cw="[object Uint8Array]",Ew="[object Uint8ClampedArray]",Iw="[object Uint16Array]",_w="[object Uint32Array]",V={};V[bw]=V[vw]=V[xw]=V[Aw]=V[Sw]=V[Cw]=V[Ew]=V[Iw]=V[_w]=!0;V[rw]=V[ow]=V[fw]=V[iw]=V[Tw]=V[lw]=V[cw]=V[dw]=V[pw]=V[uw]=V[mw]=V[yw]=V[ww]=V[hw]=V[gw]=!1;function Dw(e){return sw(e)&&aw(e.length)&&!!V[nw(e)]}var Nw=Dw;function Ow(e){return function(t){return e(t)}}var Pw=Ow,cn={exports:{}};cn.exports;(function(e,t){var n=Po,a=t&&!t.nodeType&&t,s=a&&!0&&e&&!e.nodeType&&e,o=s&&s.exports===a,i=o&&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})(cn,cn.exports);var kw=cn.exports,Rw=Nw,Lw=Pw,ks=kw,Rs=ks&&ks.isTypedArray,Mw=Rs?Lw(Rs):Rw,zo=Mw,jw=By,Bw=Wo,$w=Pe,Fw=Uo,Ww=Ma,Uw=zo,zw=Object.prototype,Hw=zw.hasOwnProperty;function Gw(e,t){var n=$w(e),a=!n&&Bw(e),s=!n&&!a&&Fw(e),o=!n&&!a&&!s&&Uw(e),i=n||a||s||o,l=i?jw(e.length,String):[],c=l.length;for(var d in e)(t||Hw.call(e,d))&&!(i&&(d=="length"||s&&(d=="offset"||d=="parent")||o&&(d=="buffer"||d=="byteLength"||d=="byteOffset")||Ww(d,c)))&&l.push(d);return l}var Vw=Gw,qw=Object.prototype;function Yw(e){var t=e&&e.constructor,n=typeof t=="function"&&t.prototype||qw;return e===n}var Kw=Yw;function Qw(e,t){return function(n){return e(t(n))}}var Xw=Qw,Zw=Xw,Jw=Zw(Object.keys,Object),eh=Jw,th=Kw,nh=eh,ah=Object.prototype,sh=ah.hasOwnProperty;function rh(e){if(!th(e))return nh(e);var t=[];for(var n in Object(e))sh.call(e,n)&&n!="constructor"&&t.push(n);return t}var oh=rh,ih=Ro,lh=ja;function ch(e){return e!=null&&lh(e.length)&&!ih(e)}var Ho=ch,dh=Vw,ph=oh,uh=Ho;function mh(e){return uh(e)?dh(e):ph(e)}var Ba=mh,yh=Ey,wh=My,hh=Ba;function gh(e){return yh(e,hh,wh)}var fh=gh,Ls=fh,Th=1,bh=Object.prototype,vh=bh.hasOwnProperty;function xh(e,t,n,a,s,o){var i=n&Th,l=Ls(e),c=l.length,d=Ls(t),p=d.length;if(c!=p&&!i)return!1;for(var m=c;m--;){var y=l[m];if(!(i?y in t:vh.call(t,y)))return!1}var w=o.get(e),f=o.get(t);if(w&&f)return w==t&&f==e;var g=!0;o.set(e,t),o.set(t,e);for(var v=i;++m<c;){y=l[m];var S=e[y],I=t[y];if(a)var k=i?a(I,S,y,t,e,o):a(S,I,y,e,t,o);if(!(k===void 0?S===I||s(S,I,n,a,o):k)){g=!1;break}v||(v=y=="constructor")}if(g&&!v){var M=e.constructor,ne=t.constructor;M!=ne&&"constructor"in e&&"constructor"in t&&!(typeof M=="function"&&M instanceof M&&typeof ne=="function"&&ne instanceof ne)&&(g=!1)}return o.delete(e),o.delete(t),g}var Ah=xh,Sh=ot,Ch=Ee,Eh=Sh(Ch,"DataView"),Ih=Eh,_h=ot,Dh=Ee,Nh=_h(Dh,"Promise"),Oh=Nh,Ph=ot,kh=Ee,Rh=Ph(kh,"Set"),Go=Rh,Lh=ot,Mh=Ee,jh=Lh(Mh,"WeakMap"),Bh=jh,ra=Ih,oa=ka,ia=Oh,la=Go,ca=Bh,Vo=rt,pt=Lo,Ms="[object Map]",$h="[object Object]",js="[object Promise]",Bs="[object Set]",$s="[object WeakMap]",Fs="[object DataView]",Fh=pt(ra),Wh=pt(oa),Uh=pt(ia),zh=pt(la),Hh=pt(ca),Me=Vo;(ra&&Me(new ra(new ArrayBuffer(1)))!=Fs||oa&&Me(new oa)!=Ms||ia&&Me(ia.resolve())!=js||la&&Me(new la)!=Bs||ca&&Me(new ca)!=$s)&&(Me=function(e){var t=Vo(e),n=t==$h?e.constructor:void 0,a=n?pt(n):"";if(a)switch(a){case Fh:return Fs;case Wh:return Ms;case Uh:return js;case zh:return Bs;case Hh:return $s}return t});var Gh=Me,Wn=Mo,Vh=$o,qh=Ty,Yh=Ah,Ws=Gh,Us=Pe,zs=Uo,Kh=zo,Qh=1,Hs="[object Arguments]",Gs="[object Array]",Yt="[object Object]",Xh=Object.prototype,Vs=Xh.hasOwnProperty;function Zh(e,t,n,a,s,o){var i=Us(e),l=Us(t),c=i?Gs:Ws(e),d=l?Gs:Ws(t);c=c==Hs?Yt:c,d=d==Hs?Yt:d;var p=c==Yt,m=d==Yt,y=c==d;if(y&&zs(e)){if(!zs(t))return!1;i=!0,p=!1}if(y&&!p)return o||(o=new Wn),i||Kh(e)?Vh(e,t,n,a,s,o):qh(e,t,c,n,a,s,o);if(!(n&Qh)){var w=p&&Vs.call(e,"__wrapped__"),f=m&&Vs.call(t,"__wrapped__");if(w||f){var g=w?e.value():e,v=f?t.value():t;return o||(o=new Wn),s(g,v,n,a,o)}}return y?(o||(o=new Wn),Yh(e,t,n,a,s,o)):!1}var Jh=Zh,eg=Jh,qs=dt;function qo(e,t,n,a,s){return e===t?!0:e==null||t==null||!qs(e)&&!qs(t)?e!==e&&t!==t:eg(e,t,n,a,qo,s)}var Yo=qo,tg=Mo,ng=Yo,ag=1,sg=2;function rg(e,t,n,a){var s=n.length,o=s,i=!a;if(e==null)return!o;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<o;){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 m=new tg;if(a)var y=a(d,p,c,e,t,m);if(!(y===void 0?ng(p,d,ag|sg,a,m):y))return!1}}return!0}var og=rg,ig=Pt;function lg(e){return e===e&&!ig(e)}var Ko=lg,cg=Ko,dg=Ba;function pg(e){for(var t=dg(e),n=t.length;n--;){var a=t[n],s=e[a];t[n]=[a,s,cg(s)]}return t}var ug=pg;function mg(e,t){return function(n){return n==null?!1:n[e]===t&&(t!==void 0||e in Object(n))}}var Qo=mg,yg=og,wg=ug,hg=Qo;function gg(e){var t=wg(e);return t.length==1&&t[0][2]?hg(t[0][0],t[0][1]):function(n){return n===e||yg(n,e,t)}}var fg=gg,Tg=rt,bg=dt,vg="[object Symbol]";function xg(e){return typeof e=="symbol"||bg(e)&&Tg(e)==vg}var En=xg,Ag=Pe,Sg=En,Cg=/\.|\[(?:[^[\]]*|(["'])(?:(?!\1)[^\\]|\\.)*?\1)\]/,Eg=/^\w*$/;function Ig(e,t){if(Ag(e))return!1;var n=typeof e;return n=="number"||n=="symbol"||n=="boolean"||e==null||Sg(e)?!0:Eg.test(e)||!Cg.test(e)||t!=null&&e in Object(t)}var $a=Ig,Xo=Ra,_g="Expected a function";function Fa(e,t){if(typeof e!="function"||t!=null&&typeof t!="function")throw new TypeError(_g);var n=function(){var a=arguments,s=t?t.apply(this,a):a[0],o=n.cache;if(o.has(s))return o.get(s);var i=e.apply(this,a);return n.cache=o.set(s,i)||o,i};return n.cache=new(Fa.Cache||Xo),n}Fa.Cache=Xo;var Dg=Fa,Ng=Dg,Og=500;function Pg(e){var t=Ng(e,function(a){return n.size===Og&&n.clear(),a}),n=t.cache;return t}var kg=Pg,Rg=kg,Lg=/[^.[\]]+|\[(?:(-?\d+(?:\.\d+)?)|(["'])((?:(?!\2)[^\\]|\\.)*?)\2)\]|(?=(?:\.|\[\])(?:\.|\[\]|$))/g,Mg=/\\(\\)?/g,jg=Rg(function(e){var t=[];return e.charCodeAt(0)===46&&t.push(""),e.replace(Lg,function(n,a,s,o){t.push(s?o.replace(Mg,"$1"):a||n)}),t}),Bg=jg;function $g(e,t){for(var n=-1,a=e==null?0:e.length,s=Array(a);++n<a;)s[n]=t(e[n],n,e);return s}var Fg=$g,Ys=An,Wg=Fg,Ug=Pe,zg=En,Ks=Ys?Ys.prototype:void 0,Qs=Ks?Ks.toString:void 0;function Zo(e){if(typeof e=="string")return e;if(Ug(e))return Wg(e,Zo)+"";if(zg(e))return Qs?Qs.call(e):"";var t=e+"";return t=="0"&&1/e==-1/0?"-0":t}var Hg=Zo,Gg=Hg;function Vg(e){return e==null?"":Gg(e)}var qg=Vg,Yg=Pe,Kg=$a,Qg=Bg,Xg=qg;function Zg(e,t){return Yg(e)?e:Kg(e,t)?[e]:Qg(Xg(e))}var Jo=Zg,Jg=En;function ef(e){if(typeof e=="string"||Jg(e))return e;var t=e+"";return t=="0"&&1/e==-1/0?"-0":t}var In=ef,tf=Jo,nf=In;function af(e,t){t=tf(t,e);for(var n=0,a=t.length;e!=null&&n<a;)e=e[nf(t[n++])];return n&&n==a?e:void 0}var ei=af,sf=ei;function rf(e,t,n){var a=e==null?void 0:sf(e,t);return a===void 0?n:a}var of=rf;function lf(e,t){return e!=null&&t in Object(e)}var cf=lf,df=Jo,pf=Wo,uf=Pe,mf=Ma,yf=ja,wf=In;function hf(e,t,n){t=df(t,e);for(var a=-1,s=t.length,o=!1;++a<s;){var i=wf(t[a]);if(!(o=e!=null&&n(e,i)))break;e=e[i]}return o||++a!=s?o:(s=e==null?0:e.length,!!s&&yf(s)&&mf(i,s)&&(uf(e)||pf(e)))}var gf=hf,ff=cf,Tf=gf;function bf(e,t){return e!=null&&Tf(e,t,ff)}var vf=bf,xf=Yo,Af=of,Sf=vf,Cf=$a,Ef=Ko,If=Qo,_f=In,Df=1,Nf=2;function Of(e,t){return Cf(e)&&Ef(t)?If(_f(e),t):function(n){var a=Af(n,e);return a===void 0&&a===t?Sf(n,e):xf(t,a,Df|Nf)}}var Pf=Of;function kf(e){return e}var Rf=kf;function Lf(e){return function(t){return t?.[e]}}var Mf=Lf,jf=ei;function Bf(e){return function(t){return jf(t,e)}}var $f=Bf,Ff=Mf,Wf=$f,Uf=$a,zf=In;function Hf(e){return Uf(e)?Ff(zf(e)):Wf(e)}var Gf=Hf,Vf=fg,qf=Pf,Yf=Rf,Kf=Pe,Qf=Gf;function Xf(e){return typeof e=="function"?e:e==null?Yf:typeof e=="object"?Kf(e)?qf(e[0],e[1]):Vf(e):Qf(e)}var ti=Xf;function Zf(e){return function(t,n,a){for(var s=-1,o=Object(t),i=a(t),l=i.length;l--;){var c=i[e?l:++s];if(n(o[c],c,o)===!1)break}return t}}var Jf=Zf,eT=Jf,tT=eT(),nT=tT,aT=nT,sT=Ba;function rT(e,t){return e&&aT(e,t,sT)}var oT=rT,iT=oT;function lT(e,t,n,a){return iT(e,function(s,o,i){t(a,n(s),o,i)}),a}var cT=lT,dT=cT;function pT(e,t){return function(n,a){return dT(n,e,t(a),{})}}var uT=pT,mT=ti,yT=uT,ni=Object.prototype,wT=ni.hasOwnProperty,hT=ni.toString,gT=yT(function(e,t,n){t!=null&&typeof t.toString!="function"&&(t=hT.call(t)),wT.call(e,t)?e[t].push(n):e[t]=[n]},mT),fT=gT;const TT=bn(fT),bt="Canceled by user",bT={"exceeds the configured cap":"Please try using a different RPC for your wallet.","denied transaction":bt,"user rejected the transaction":bt,"user rejected transaction":bt,"user rejected the request":bt,"user canceled":bt,"not enough available balance":"Attempting to withdraw a balance that exceeds the liquidity currently accessible."};TT(bT);const ai=e=>typeof e=="object"&&e!==null&&"message"in e&&typeof e.message=="string",si=e=>{if(ai(e))return e;try{return new Error(JSON.stringify(e))}catch{return new Error(String(e))}},ri=e=>si(e).message;class ut extends Yl.CustomError{constructor({message:n=Lr,link:a,slippage:s,txArgs:o,account:i,onBypass:l,functionName:c}){super(n);Le(this,"txArgs");Le(this,"link");Le(this,"account");Le(this,"slippage");Le(this,"functionName");Le(this,"onBypass");this.link=a,this.txArgs=o,this.account=i,this.slippage=s,this.functionName=c,this.onBypass=l}}const vT=async()=>{},Un=e=>{const t=e[e.length-1],n=typeof t=="object"&&t!==null&&("value"in t||"gas"in t),a=n?t:{},s=n?e.slice(0,-1):e;return{transactionOverrides:a,argumentsWithoutOverrides:s}},xe=({functionName:e,dynamicContractAddress:t,contractId:n,onSettled:a})=>{const{account:s}=B(),{chainId:o,supportedChainId:i}=Ce(),l=E.useWalletClient({chainId:o}),c=E.usePublicClient({chainId:o}),d=so(n),p=t??z(n,o??i),m=Io(),{writeContract:y}=E.useWriteContract({mutation:{onSettled:a}}),w=u.useCallback(async(...v)=>{try{const{argumentsWithoutOverrides:S,transactionOverrides:I}=Un(v),k=await c?.estimateContractGas({address:p,abi:d,functionName:e,args:S,account:s??_,gas:I.gas,value:I.value});if(!k||!o||k===BigInt(0))return{error:ea,value:BigInt(0)};const M=Math.round(Number(k)*fr),ne=Xt[o]??M,Ae=BigInt(Math.min(ne,M));return console.debug(`[core-ui-kit]: estimated gas limit: ${Number(k)}`),{error:"",value:Ae}}catch(S){return console.error(`Gas estimate error on ${e}`,S),{error:S?.message??S?.shortMessage??S.error?.data?.message??S.data?.message??ea,value:BigInt(0)}}},[s,o,c,e,p,d]),f=u.useCallback(async(...v)=>{try{if(!m)return{data:null,error:ta};if(!c)return{data:null,error:"Client is not defined"};const{argumentsWithoutOverrides:S,transactionOverrides:I}=Un(v),k=D.encodeFunctionData({abi:d,functionName:e,args:S});if(s&&k){const M=await m({chainId:o??i,from:s,to:p,input:k,gas:Xt[o??i]??0,value:I.value?.toString()});return{data:M,error:M?.simulation.error_message}}return{data:null,error:ta}}catch(S){return console.debug("Failed to simulate:",S),{data:null,error:ri(S)}}},[s,o,c,d,p,e,m,i]),g=u.useCallback(async(...v)=>{const{argumentsWithoutOverrides:S,transactionOverrides:I}=Un(v);if(I.gas)return y({address:p,abi:d,functionName:e,chainId:o,args:S,...I});const{value:k,error:M}=await w(...v);if(M){const{data:ne}=await Promise.race([f(...v),new Promise(Ae=>setTimeout(Ae,Tr,{data:null,error:Mr}))]);throw new ut({message:M,link:ne?.link,txArgs:v,account:s,functionName:e,onBypass:()=>l?.data?.writeContract({address:p,abi:d,functionName:e,account:s,chainId:o,args:S,...I,gas:BigInt(Xt[o??i]??0)})})}return console.debug(`[core-ui-kit]: gas limit to use: ${k}`),y({address:p,abi:d,functionName:e,chainId:o,args:S,...I,gas:k})},[w,y,f,s,e,l?.data,p,d,o,i]);return{send:o&&c?g:vT,estimate:w}},oi=e=>E.useEstimateFeesPerGas({...e,query:{...e?.query,staleTime:3e4}}),_n=e=>{u.useEffect(()=>{e&&e.forEach(({error:t,status:n})=>{n==="failure"&&console.warn(t?.message)})},[e])},Wa=({error:e,status:t})=>{u.useEffect(()=>{e&&t==="failure"&&console.warn(e?.message)},[e,t])},ii=async({functionName:e,address:t,abi:n,args:a,publicClient:s})=>(await s?.simulateContract({address:t,abi:n,functionName:e,args:a}))?.result,xT=({disabled:e,functionName:t,address:n,abi:a,args:s,chainId:o,refetchInterval:i})=>{const l=E.usePublicClient({chainId:o});return tt.useQuery({queryKey:[{functionName:t,address:n,args:s,chainId:o}],queryFn:async({queryKey:[c]})=>{if(c)return await ii({address:n,abi:a,functionName:c.functionName,args:c.args,publicClient:l})},enabled:!e&&!!o&&!ee(n)&&!!t,refetchInterval:i})},dn=({queryKey:e,watch:t=!0})=>{const n=tt.useQueryClient(),{data:a}=E.useBlockNumber({query:{refetchInterval:ze}});u.useEffect(()=>{t&&n.refetchQueries({queryKey:e,stale:!0})},[t,a])},Dn="limitOrders",Ua="getAllLimitOrderIds",za=0,li="100",AT=1,ST=5,CT=2,ET=["balanceOf","getFundSummary","getFundComposition","withdrawalContracts","getTrackedAssets","getAssetPrice","allowance","getExitRemainingCooldown","tokenPrice","limitOrders","calculateAvailableManagerFee",Dn,Ua],IT=["allowance"],Xs=(e,t)=>e[0]==="readContract"?t.includes(e?.[1]?.functionName??""):e[0]==="readContracts"?!!e[1]?.contracts?.some(({functionName:a})=>t.includes(a??"")):!1,Nn=()=>{const e=tt.useQueryClient(),t=u.useCallback(()=>{e.invalidateQueries({predicate:({queryKey:a})=>Xs(a,IT)})},[e]),n=u.useCallback(()=>{e.invalidateQueries({predicate:({queryKey:a})=>Xs(a,ET)})},[e]);return{invalidateAllowanceQueries:t,invalidateTradingQueries:n}},On=()=>{const{chainId:e}=Ce(),{data:t}=E.useCapabilities();if(!e||!t)return!1;const n=t?.[e]?.atomic?.status;return!!n&&n!=="unsupported"},_T=({tooltipContent:e,children:t,placement:n="top",trigger:a="hover",interactive:s=!0,delayHide:o=50})=>{const{getTooltipProps:i,setTooltipRef:l,setTriggerRef:c,visible:d}=Kl.usePopperTooltip({interactive:s,delayHide:o,offset:[0,12],placement:n,trigger:a});return r.jsxs(r.Fragment,{children:[r.jsx("span",{ref:c,children:t}),d&&r.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})]})},Ha=({text:e,...t})=>r.jsx(_T,{...t,tooltipContent:r.jsx("span",{className:"dtw-inline-block dtw-max-w-xs",children:e})}),ci=({text:e,placement:t,iconClassName:n="dtw-text-[color:var(--panel-secondary-content-color)]",Icon:a=se.QuestionMarkCircleIcon})=>r.jsx(Ha,{text:e,placement:t,children:r.jsx(a,{className:C("dtw-h-4 dtw-w-4 dtw-cursor-help hover:dtw-text-[color:var(--panel-icon-color-hover))]",n)})}),$e=({label:e,tooltipText:t,children:n})=>r.jsxs("div",{children:[r.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:[r.jsx("span",{children:e}),r.jsx(ci,{text:t,placement:"top"})]}),r.jsx("div",{className:"dtw-mt-1.5",children:n})]}),he=({symbol:e,address:t,watch:n=!1})=>{const{account:a}=B(),s=b(),o=hn(e,s.chainId),{data:i}=oi({chainId:s.chainId,query:{enabled:o}}),{data:l,queryKey:c}=Oa({chainId:s.chainId,address:a,query:{enabled:o&&!!a}}),{data:d,queryKey:p}=E.useReadContracts({contracts:[{address:t,abi:D.erc20Abi,functionName:"balanceOf",chainId:s.chainId,args:[a??_]},{address:t,abi:D.erc20Abi,chainId:s.chainId,functionName:"decimals"}],query:{enabled:!o&&!!a}});return dn({watch:n&&o,queryKey:c}),dn({watch:n&&!o,queryKey:p}),o?co({nativeTokenBalance:D.formatUnits(l?.value??BigInt(0),l?.decimals??O),gasPrice:Number(i?.maxFeePerGas??0),tokenDecimals:l?.decimals??O}).toString():D.formatUnits(d?.[0]?.result??BigInt(0),d?.[1]?.result??O)},kt=()=>{const[{value:e,symbol:t,address:n}]=N(),a=he({symbol:t,address:n});return new T(e||0).gt(a??0)},DT=({address:e,chainId:t})=>[{address:z("factory",t),abi:He,functionName:"isPool",chainId:t,args:[e]}],NT=e=>({isUserDhedgePool:e[0].result}),Rt=()=>{const{account:e=_}=B(),{chainId:t,supportedChainId:n}=Ce(),a=t??n,{data:s}=E.useReadContracts({contracts:DT({address:e,chainId:a}),query:{enabled:!ee(e),select:NT}});return!!s?.isUserDhedgePool},OT=({address:e,chainId:t})=>[{address:e??_,abi:be,functionName:"poolManagerLogic",chainId:t},{address:z("easySwapperV2",t),abi:ve,functionName:"customCooldownDepositsWhitelist",args:[e],chainId:t},{address:z("easySwapperV2",t),abi:ve,functionName:"customCooldown",args:[],chainId:t},{address:z("factory",t),chainId:t,abi:He,functionName:"getAssetGuard",args:[z("aaveLendingPoolV3",t)]}],PT=e=>({poolManagerLogic:e[0].result,isCustomCooldownDepositAllowed:e[1].result,customCooldown:e[2].result,aaveAssetGuardAddress:e[3].result}),Lt=({address:e,chainId:t})=>E.useReadContracts({contracts:OT({address:e,chainId:t}),query:{enabled:!!e&&!ee(e),staleTime:1/0,select:PT}}),Ga=({address:e,chainId:t})=>{const[n]=qe(),{data:{poolManagerLogic:a}={}}=Lt({address:e,chainId:t});return n.managerLogicAddress??a},kT=({address:e,chainId:t,account:n})=>[{address:e,abi:De,functionName:"getFeeIncreaseInfo",chainId:t},{address:e,abi:De,functionName:"minDepositUSD",chainId:t},{address:e,abi:De,functionName:"isMemberAllowed",args:[n??_],chainId:t},{address:e,abi:De,functionName:"maxSupplyCap",args:[],chainId:t}],RT=e=>({getFeeIncreaseInfo:e[0].result,minDepositUSD:e[1].result,isMemberAllowed:e[2].result,maxSupplyCapD18:e[3].result}),Mt=({address:e,chainId:t})=>{const n=Ga({address:e,chainId:t}),{account:a=_}=B(),s=E.useReadContracts({contracts:kT({address:n??_,chainId:t,account:a}),query:{enabled:!!n&&!ee(n),staleTime:1/0,select:RT}});return Wa({error:s.error,status:s.status}),s},LT=({chainId:e,address:t})=>[{address:t,abi:De,functionName:"getFundComposition",chainId:e},{address:t,abi:De,functionName:"getSupportedAssets",chainId:e}],MT=e=>({getFundComposition:e[0].result,getSupportedAssets:e[1].result?.map(({asset:t})=>t)}),jt=({address:e,chainId:t})=>{const n=Ga({address:e,chainId:t});return E.useReadContracts({contracts:LT({address:n??_,chainId:t}),query:{enabled:!!n&&!ee(n),select:MT,refetchInterval:nt}})};function jT(e,t,n){var a=-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 o=Array(s);++a<s;)o[a]=e[a+t];return o}var BT=jT,$T=Pa,FT=Ho,WT=Ma,UT=Pt;function zT(e,t,n){if(!UT(n))return!1;var a=typeof t;return(a=="number"?FT(n)&&WT(t,n.length):a=="string"&&t in n)?$T(n[t],e):!1}var HT=zT,GT=/\s/;function VT(e){for(var t=e.length;t--&>.test(e.charAt(t)););return t}var qT=VT,YT=qT,KT=/^\s+/;function QT(e){return e&&e.slice(0,YT(e)+1).replace(KT,"")}var XT=QT,ZT=XT,Zs=Pt,JT=En,Js=NaN,eb=/^[-+]0x[0-9a-f]+$/i,tb=/^0b[01]+$/i,nb=/^0o[0-7]+$/i,ab=parseInt;function sb(e){if(typeof e=="number")return e;if(JT(e))return Js;if(Zs(e)){var t=typeof e.valueOf=="function"?e.valueOf():e;e=Zs(t)?t+"":t}if(typeof e!="string")return e===0?e:+e;e=ZT(e);var n=tb.test(e);return n||nb.test(e)?ab(e.slice(2),n?2:8):eb.test(e)?Js:+e}var rb=sb,ob=rb,er=1/0,ib=17976931348623157e292;function lb(e){if(!e)return e===0?e:0;if(e=ob(e),e===er||e===-er){var t=e<0?-1:1;return t*ib}return e===e?e:0}var cb=lb,db=cb;function pb(e){var t=db(e),n=t%1;return t===t?n?t-n:t:0}var ub=pb,mb=BT,yb=HT,wb=ub,hb=Math.ceil,gb=Math.max;function fb(e,t,n){(n?yb(e,t,n):t===void 0)?t=1:t=gb(wb(t),0);var a=e==null?0:e.length;if(!a||t<1)return[];for(var s=0,o=0,i=Array(hb(a/t));s<a;)i[o++]=mb(e,s,s+=t);return i}var Tb=fb;const di=bn(Tb),pi=({account:e,chainId:t,address:n})=>[{address:n,abi:be,functionName:"balanceOf",chainId:t,args:[e]},{address:n,abi:be,functionName:"tokenPrice",chainId:t,args:[]}],bb=e=>e.flatMap(pi),vb=pi({account:_,chainId:h.optimism.id,address:_}).length,ui=({account:e})=>{const{chainId:t}=Ce(),n=at();return E.useReadContracts({contracts:bb(n.map(a=>({...a,account:e}))),query:{select:a=>di(a,vb).reduce((s,[o,i],l)=>{const c=n?.[l]?.address??_;return{...s,[c]:{balance:o?.result?.toString(),tokenPrice:i?.result?.toString()}}},{}),placeholderData:(a,s)=>{if(s?.queryKey?.[1].chainId!==t)return a},refetchInterval:nt,enabled:!ee(e)}})},xb=({chainId:e,address:t})=>[{address:t,abi:be,functionName:"tokenPrice",chainId:e,args:[]},{address:t,abi:be,functionName:"getFundSummary",chainId:e}],Ab=([e,t])=>{const n=t?.result;return{tokenPrice:e?.result!==BigInt(0)?e?.result?.toString():Xl,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()}},oe=({address:e,chainId:t,refetchInterval:n,enabled:a=!0})=>E.useReadContracts({contracts:xb({address:e,chainId:t}),query:{enabled:a&&!!e&&!ee(e),refetchInterval:n,select:Ab}}),mi=({address:e,chainId:t})=>{const{account:n}=B(),{data:{managerAddress:a}={managerAddress:_}}=oe({address:e,chainId:t}),{data:{isMemberAllowed:s=!1}={}}=Mt({address:e,chainId:t});return n?s||H(n,a):!1},yi=({address:e,chainId:t})=>{const[n]=qe(),a=u.useMemo(()=>n.poolCompositions?.reduce((p,{tokenAddress:m,tokenName:y,precision:w,asset:f})=>({...p,[m.toLowerCase()]:{tokenName:y,precision:w,asset:f}}),{}),[n.poolCompositions]),{data:{getFundComposition:[s,o,i]=[]}={},isFetched:l}=jt({address:e,chainId:t}),c=u.useMemo(()=>s?.map(({asset:p})=>p)??[],[s]),{data:d}=E.useReadContracts({contracts:c.flatMap(p=>[{address:p,abi:D.erc20Abi,functionName:"symbol",chainId:t},{address:p,abi:D.erc20Abi,functionName:"decimals",chainId:t}]),query:{enabled:l&&c?.length>0&&!!t&&!c.every(p=>a?.[p.toLowerCase()]),staleTime:1/0}});return _n(d),u.useMemo(()=>{if(!s?.length)return[];const p=di(d,2);return s.map(({asset:m,isDeposit:y},w)=>{const f=m.toLowerCase(),[g,v]=p[w]??[],S=Ea[f.toLowerCase()]??g?.result?.toString()??a?.[f]?.tokenName??ro(f);return{tokenAddress:f,isDeposit:y,rate:i?.[w]?.toString()??"0",amount:o?.[w]?.toString()??"0",tokenName:S,precision:v?.result?Number(v.result):a?.[f]?.precision??O,asset:{iconSymbols:a?.[f]?.asset.iconSymbols??[S]}}})},[o,i,a,s,d])},mt=({address:e,chainId:t})=>{const[n]=qe(),a=yi({address:e,chainId:t});return a.length?a:n.poolCompositions??[]},Sb=e=>{const t=e?.[0]?.toString()??"",n=e?.[1]?.toString()??"",a=e?.[2]?.toString()??"",s=e?.[3]?.toString()??"",o=e?.[4]?.toString()??"";return{announcedPerformanceFee:t,announcedStreamingFee:n,announcedEntryFee:a,announcedExitFee:s,announcedTimestamp:o}},Va=(e,t)=>{const{data:{getFeeIncreaseInfo:n,minDepositUSD:a}={}}=Mt({address:e,chainId:t});return{...Sb(n),minDepositUSD:+D.formatUnits(a??BigInt(0),O)}},Cb=({composition:e,vaultTokensAmount:t,totalSupplyD18:n})=>e.reduce((a,s)=>{const o=a.find(({tokenName:i})=>i===s.tokenName);if(o){const i=new T(o.amount).shiftedBy(-o.precision),l=new T(s.amount).shiftedBy(-s.precision);return o.amount=i.plus(l).shiftedBy(o.precision).toFixed(0),a}return[...a,s]},[]).map(a=>{const s=aa(a.amount,t,n,a.precision),o=aa(new T(a.rate).multipliedBy(a.amount).shiftedBy(-a.precision).toFixed(),t,n);return{...a,fraction:s.toFixed(_t(s)),fractionUsd:te({value:o}),fractionUsdNumber:o}}).filter(({amount:a})=>a!=="0").sort((a,s)=>s.fractionUsdNumber-a.fractionUsdNumber),wi=({address:e,vaultTokensAmount:t,chainId:n})=>{const a=mt({address:e,chainId:n}),{data:{totalSupplyD18:s}={}}=oe({address:e,chainId:n});return u.useMemo(()=>s?Cb({composition:a,vaultTokensAmount:rn(t||0),totalSupplyD18:s}):[],[t,a,s])},ue=({address:e,chainId:t,formatter:n=D.formatEther})=>{const[a]=qe(),{data:s}=oe({address:e,chainId:t,refetchInterval:nt});return n(BigInt(s?.tokenPrice??a?.tokenPrice??"0"))},Pn=({address:e,chainId:t})=>{const[n]=qe(),a=H(n.address,e)?n:null,{data:{performanceFee:s,streamingFee:o,entryFee:i,exitFee:l}={}}=oe({address:e,chainId:t}),c=i??a?.entryFeeNumerator??"0",d=l??a?.exitFeeNumerator??"0";return u.useMemo(()=>{const p=s??a?.performanceFeeNumerator??"0",m=o??a?.streamingFeeNumerator??"0";return{performanceFee:xt(p,ye),performanceFeeNumber:Ne(+p,ye),streamingFee:xt(m,ye,2),streamingFeeNumber:Ne(+m,ye),entryFee:xt(c,ye,2),entryFeeNumber:Ne(+c,ye),exitFee:xt(d,ye,2),exitFeeNumber:Ne(+d,ye)}},[s,a?.performanceFeeNumerator,a?.streamingFeeNumerator,o,c,d])},hi=()=>{const{address:e,chainId:t}=b(),{queryKey:n}=jt({address:e,chainId:t});dn({queryKey:n})},Kt=h.base.id,Eb=e=>{const t=z("flatcoinPointsModule",Kt);return[{address:t,chainId:Kt,abi:Zt,functionName:"lockedBalance",args:[e]},{address:t,chainId:Kt,abi:Zt,functionName:"getUnlockTax",args:[e]},{address:t,chainId:Kt,abi:Zt,functionName:"unlockTime",args:[e]}]},gi=({enabled:e,address:t})=>E.useReadContracts({contracts:Eb(t),query:{enabled:e,select:n=>{const[a,s,o]=n;return{lockedVaultPointsBalance:a?.result,unlockTaxInPercents:s?.result,unlockTime:o?.result}}}}),Ib=[...no],qa=({address:e,chainId:t})=>{const n=mt({address:e,chainId:t}),a=z("factory",t);return E.useReadContracts({contracts:n.map(({tokenAddress:s})=>({address:a,abi:He,functionName:"isPool",chainId:t,args:[s]})),query:{select:s=>n.some(({amount:o,tokenAddress:i},l)=>(!!s[l]?.result||Ib.some(p=>H(p,i)))&&o!=="0"),staleTime:1/0}})},_b=[[30*1e3,5e3],[60*1e3,1e4],[5*60*1e3,2e4]],Db=e=>{if(!e)return!1;for(const[t,n]of _b)if(e<=t)return n;return Zl},zn=e=>Number(e?.toString()??"0")*1e3,Nb=({address:e,chainId:t})=>{const{account:n}=B();return E.useReadContract({address:e,abi:be,functionName:"getExitRemainingCooldown",chainId:t,args:[n??_],query:{enabled:!!n,select:zn,refetchInterval:a=>Db(zn(a.state?.data)),refetchOnWindowFocus:a=>zn(a.state?.data)>0}})};function Ob(e,t,n){if(!e||!t)return{balanceInUsd:"",balanceInUsdNumber:0};const a=+e*Fe(t);return{balanceInUsd:te({value:a,maximumFractionDigits:n}),balanceInUsdNumber:a}}const fi=(e,t)=>ud(e)?{rawBalance:e?.toString()??"",...Ob(D.formatUnits(e,U),t?.toString())}:{rawBalance:"",balanceInUsd:"",balanceInUsdNumber:0},Ti=({account:e}={})=>{const{account:t}=B(),n=e??t??_,{data:a}=ui({account:n});return u.useMemo(()=>ee(n)?{}:Object.entries(a??{}).reduce((s,[o,i])=>{const l=fi(BigInt(i.balance??"0"),BigInt(i.tokenPrice??"0"));return l.balanceInUsdNumber>0?{...s,[o]:l}:s},{}),[n,a])},bi=({account:e,chainId:t,address:n})=>{const{data:a,isFetched:s}=oe({address:n,chainId:t}),{poolFallbackData:o}=J(),i=H(o.address,n)?o.tokenPrice??"0":"0";return E.useReadContract({address:e?n:void 0,abi:be,functionName:"balanceOf",chainId:t,args:[e],query:{enabled:!ee(e)&&s,select:l=>fi(l,BigInt(a?.tokenPrice??i))}})},Pb=e=>Math.ceil(Fe(e)),vi=({address:e,chainId:t,select:n=Pb})=>{const{data:{totalValueD18:a}={}}=oe({address:e,chainId:t}),{data:{maxSupplyCapD18:s}={}}=Mt({address:e,chainId:t});return E.useReadContract({address:e,chainId:t,abi:be,functionName:"calculateAvailableManagerFee",args:[BigInt(a??"0")],query:{enabled:!!a&&!!s&&s>0n,select:n}})},xi=({address:e,chainId:t})=>{const{data:{maxSupplyCapD18:n}={}}=Mt({address:e,chainId:t}),{data:{totalSupplyD18:a}={}}=oe({address:e,chainId:t}),s=ue({address:e,chainId:t}),{data:o=0}=vi({address:e,chainId:t});if(!n||n===0n)return null;const i=Math.ceil(Fe(a??0)),l=Fe(n),c=Math.max(0,l-o),d=Math.max(0,c-i),p=d*Number(s);return{totalSupplyNumber:i,maxSupplyCapNumber:c,remainingSupplyCapNumber:d,remainingSupplyCapInUsd:p}},kb=({address:e,chainId:t})=>{const{data:{isPrivateVault:n}={isPrivateVault:!1}}=oe({address:e,chainId:t}),s=at().find(i=>H(e,i.address)&&i.chainId===t),o=!!(s?.maintenance||s?.maintenanceDeposits);return n||o},Rb=e=>oe(e),Lb=()=>{const{address:e,symbol:t,chainId:n}=b(),{account:a=_}=B(),s=he({symbol:t,address:e}),{data:{totalSupplyD18:o}={}}=oe({address:e,chainId:n}),l=ho(e)&&!H(a,_),{data:{lockedVaultPointsBalance:c,unlockTaxInPercents:d,unlockTime:p}={},isLoading:m}=gi({enabled:l,address:e});return u.useMemo(()=>{const y=o?new T.BigNumber(s).shiftedBy(O).dividedBy(o):new T.BigNumber(0),w=c?new T.BigNumber(c.toString()).multipliedBy(y).shiftedBy(-O):new T.BigNumber(0),f=d?w.multipliedBy(d.toString()).shiftedBy(-O):new T.BigNumber(0),g=p?Number(p)*1e3:null;return{userPortionOfLockedPointsBalance:w.toFixed(),unlockTaxAmount:f.toFixed(),vestedPointsAmount:w.minus(f).toFixed(),unlockTimestamp:g,unlockDate:g?Et.format(g,"PPP"):null,isLoading:m}},[o,s,c,d,p,m])},Mb={"Lend/Borrow V2":"aave","Lend/Borrow V3":"aave","Lyra Options":"lyra",ULP:"uni"};function jb(e){const t=Mb[e];if(t)return t;const n=e.toLowerCase();return n.includes("bear")?"torosbear":n.includes("bull")?"torosbull":n}const Ya=e=>e?`https://raw.githubusercontent.com/dhedge/crypto-icons/main/icons/${jb(e)}.png`:"",Ai={isGeoBlocked:!1,isSanctioned:!1,depositQuoteDiffWarningThreshold:1.5,depositQuoteDiffErrorThreshold:3,defaultWithdrawSlippage:mr,defaultLockTime:pr,defaultNoSwapMinDepositAmountGap:ec,defaultSwapTransactionSlippage:tc,defaultNotificationDuration:rc,stablePrecision:3,defaultPrecision:6,termsOfUseAccepted:!0,standalone:!0,isAllAssetsWithdrawOptionDefault:!1,chainConfig:{[h.mainnet.id]:{name:"Ethereum",iconPath:""},[h.arbitrum.id]:{name:"Arbitrum",iconPath:""},[h.optimism.id]:{name:"Optimism",iconPath:""},[h.polygon.id]:{name:"Polygon",iconPath:""},[h.base.id]:{name:"Base",iconPath:""}},getFallbackIconPath:Ya,minLimitOrderValue:0,limitOrderThemeConfig:{}},Bb=()=>{const{connect:e}=E.useConnect(),t=u.useCallback(()=>e({connector:Ql.injected({shimDisconnect:!0})}),[e]),n=u.useCallback(async()=>(console.log("terms of use were accepted. Assume `termsOfUseAccepted` config value switch to true"),Promise.resolve(!0)),[]);return{onConnect:t,onAcceptTermsOfUse:n}},$b={params:{...Ai},actions:{onConnect:()=>{},onAcceptTermsOfUse:()=>Promise.resolve(!0)}},Si=u.createContext($b),Ci=({children:e,config:t})=>{const n=Bb(),a=u.useMemo(()=>({params:{...Ai,...t?.params},actions:{...n,...t?.actions}}),[t,n]);return r.jsx(Si.Provider,{value:a,children:e})},Ei=()=>{const e=u.useContext(Si);if(!e)throw new Error("ConfigContext is used out of Provider");return e},G=()=>Ei().params,Ka=()=>Ei().actions,Qa=()=>{const{depositQuoteDiffErrorThreshold:e}=G(),[t,n]=u.useState(!1),[{slippage:a,minSlippage:s}]=Q(),o=a==="auto"?s??0:a,l=!kt()&&o>e&&!t,c=u.useCallback(()=>{n(!0)},[]);return{requiresHighSlippageConfirm:l,confirmHighSlippage:c,slippageToBeUsed:o}},W={ERROR:"error",WARNING:"warning",SUCCESS:"success",DEFAULT:"default",CUSTOM:"custom"},$={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_ORDER_WITHDRAW:"LIMIT_ORDER_WITHDRAW",WITHDRAW_STEPPER:"WITHDRAW_STEPPER"},Bt=e=>{const{depositQuoteDiffErrorThreshold:t,depositQuoteDiffWarningThreshold:n}=G(),a=Math.abs(e);return a>t?W.ERROR:a>n?W.WARNING:W.DEFAULT};var Fb=rt,Wb=dt,Ub="[object Number]";function zb(e){return typeof e=="number"||Wb(e)&&Fb(e)==Ub}var Hb=zb;const Gb=bn(Hb),Ii=({tradingType:e,slippage:t,minSlippage:n})=>{const{defaultWithdrawSlippage:a}=G();return t!=="auto"?t.toString():Gb(n)?n.toString():e==="deposit"?yn.toString():a.toString()},_i={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",deposit:"Buy",withdraw:"Sell",max:"Max",allAssets:"All Assets",all:"All",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",withdrawAction:"Sell",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",proceedWithNextStep:"Please proceed with the next step.",aggregatorsLabel:"Swap source",aggregatorsTooltip:"Choose which aggregators to use for your trades.",batchTransactionsLabel:"Batch transactions",batchTransactionsSwitchLabel:"Batch",openNotificationsSettingsLabel:"Enable alerts",addToWallet:"add to wallet",batchTransactionsTooltip:"Group transaction calls into a single batch transaction. Disable if you prefer separate prompts.",openLimitOrderAfterBuySwitchLabel:"Add Stop Order",stopOrder:"Schedule sell",rate:"Rate",exchangeRate:"Exchange rate",cooldown:"Cooldown",delete:"Delete",withdrawalRequest:"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"},Di=u.createContext(_i),Vb=({children:e,config:t})=>{const n=u.useMemo(()=>({..._i,...t}),[t]);return r.jsx(Di.Provider,{value:n,children:e})},A=()=>{const e=u.useContext(Di);if(!e)throw new Error("TranslationContext is used out of Provider");return e},Xa=e=>{const t=A(),{symbol:n}=b(),a=`${n}${e}`;return t?.[a]??t[e]},qb=async(e,t=Ya)=>{try{return(await import(`@dhedge/crypto-assets/icons/${e.toLowerCase()}.png`))?.default?.src??t(e)}catch{return t(e)}},Yb=(e=[])=>{const{getFallbackIconPath:t}=G(),[n,a]=u.useState([]),[s,o]=u.useState([]);return u.useEffect(()=>{if(e.every(l=>s.includes(l)))return;(async()=>{const l=await Promise.all(e.map(c=>qb(c,t)));a(l),o(e)})()},[e,s,t]),n},Ni=()=>{const{pricingAsset:e,symbol:t,chainId:n,address:a}=b(),{minLimitOrderValue:s}=G(),o=he({symbol:t,address:a}),i=ue({address:a,chainId:n});return Number(o)*Number(i)>=s&&!!e},Kb=(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}},Oi=Object.values($).reduce((e,t)=>({...e,[t]:{isOpen:!1,isPending:!1}}),{}),Qb=()=>u.useReducer(Kb,Oi),Pi=u.createContext(Oi),ki=u.createContext(()=>{}),Ri=()=>{const e=u.useContext(Pi);if(!e)throw new Error("OverlayStateContext is used out of Provider");return e},ie=()=>{const e=u.useContext(ki);if(!e)throw new Error("OverlayDispatchContext is used out of Provider");return e},de=({type:e})=>{const t=Ri(),n=ie(),a=u.useCallback(()=>{n({type:"MERGE_OVERLAY",payload:{type:e,isOpen:!1,isPending:!1}})},[n,e]),{onConfirm:s,isPending:o,meta:i}=t[e],l=d=>{n({type:"MERGE_OVERLAY",payload:{type:e,isOpen:!0,isPending:d}})};return{handleReject:a,handleConfirm:async()=>{await s?.(l),a()},isPending:o,meta:i}},Xb=()=>{const e=ie();return()=>{Object.values($).forEach(t=>{e({type:"MERGE_OVERLAY",payload:{type:t,isOpen:!1,isPending:!1}})})}},Zb=({children:e})=>{const[t,n]=Qb(),[{isOpen:a}]=K();return u.useEffect(()=>{a&&!t.TRADING.isOpen&&n({type:"MERGE_OVERLAY",payload:{type:$.TRADING,isOpen:a}})},[a,t.TRADING.isOpen,n]),u.useEffect(()=>{!a&&t.TRADING.isOpen&&n({type:"MERGE_OVERLAY",payload:{type:$.TRADING,isOpen:a}})},[a,t.TRADING.isOpen,n]),r.jsx(ki.Provider,{value:n,children:r.jsx(Pi.Provider,{value:t,children:e})})},Jb=()=>{const e=Ve(),t=ie(),n=Ni(),a=u.useCallback(()=>{n&&(t({type:"MERGE_OVERLAY",payload:{type:$.LIMIT_SELLS,isOpen:!0}}),e?.(X.OPEN_LIMIT_SELL_VIEW,{[Te.SOURCE.NAME]:"overlay"}))},[t,n,e]);return{displayLimitSellOverlay:n,openLimitSellOverlay:a}},Li=()=>{const e=A(),[{status:t}]=K(),n=u.useMemo(()=>({Wallet:e.sendingOrderToWallet,None:e.settingUpTx,Mining:e.miningTx,Success:e.success}),[e]);return{status:t,statusLabel:n[t]}},Za=e=>{const t=A(),{status:n}=Li();if(!(!e||n==="Success"))return n==="Mining"?t.miningTx:t.sendingOrderToWallet},ev=({tradingType:e})=>{const t=Xa(e);return r.jsx(R.Tab,{className:({selected:n})=>C("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))]":n,"!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))]":!n}),children:({selected:n})=>r.jsxs(r.Fragment,{children:[r.jsx("span",{children:t}),n?r.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:r.jsx("span",{children:t})}):null]})})},tv={[W.DEFAULT]:se.QuestionMarkCircleIcon,[W.ERROR]:se.ExclamationCircleIcon,[W.SUCCESS]:se.CheckCircleIcon,[W.WARNING]:se.ExclamationCircleIcon,[W.CUSTOM]:se.QuestionMarkCircleIcon},Hn=({tooltipText:e,value:t,label:n,children:a,type:s=W.DEFAULT,className:o,emphasised:i=!1})=>r.jsxs("div",{className:C("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},o),children:[r.jsxs("div",{className:"dtw-flex dtw-grow dtw-items-start dtw-justify-between",children:[r.jsxs("div",{className:"dtw-flex dtw-items-center dtw-gap-x-1",children:[r.jsx(ci,{text:e,placement:"top",Icon:tv[s],iconClassName:C({"dtw-text-[color:var(--panel-error-content-color)]":s===W.ERROR,"dtw-text-[color:var(--panel-warning-content-color)]":s===W.WARNING})}),r.jsx("p",{className:C({"dtw-text-[color:var(--panel-error-content-color)]":s===W.ERROR,"dtw-text-[color:var(--panel-warning-content-color)]":s===W.WARNING}),children:n})]}),r.jsx("div",{className:C({"dtw-text-[color:var(--panel-error-content-color)]":s===W.ERROR,"dtw-text-[color:var(--panel-warning-content-color)]":s===W.WARNING}),children:t})]}),a]}),Ja=({children:e,staticItems:t,collapseItems:n,themeType:a=W.DEFAULT,buttonItemChildren:s})=>{const o=A();return r.jsx("div",{className:"dtw-w-full dtw-flex dtw-flex-col dtw-gap-1",children:r.jsx(R.Disclosure,{children:({open:i})=>r.jsxs(r.Fragment,{children:[t?.map(l=>r.jsx(Hn,{...l},l.label)),r.jsx(R.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:r.jsxs(Hn,{tooltipText:o.fullReceiveDetails,label:o.tradeDetails,value:"",type:a,emphasised:!0,children:[s,r.jsx(Se.ChevronDownIcon,{className:C("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})})]})}),r.jsx(R.Transition,{show:i,children:r.jsxs(R.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=>r.jsx(Hn,{...l},l.label)),e]})})]})})})},ke=({className:e})=>r.jsx("svg",{className:C("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:r.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"})}),nv=({children:e})=>r.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}),av=({children:e})=>r.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}),pn=({Icon:e,onClick:t,className:n="dtw-h-7 dtw-w-7",containerClassName:a,disabled:s})=>r.jsx("div",{className:C("dtw-group dtw-w-fit dtw-cursor-pointer dtw-self-end dtw-rounded-lg dtw-p-1 hover:dtw-opacity-80",a,{"dtw-pointer-events-none":s}),onClick:t,children:r.jsx(e,{className:C("dtw-text-[color:var(--panel-icon-color)] group-hover:dtw-text-[color:var(--panel-icon-color-hover))]",n)})}),sv=({children:e,onClose:t})=>{const{defaultNotificationDuration:n}=G();return u.useEffect(()=>{const a=s=>{s.key==="Escape"&&t?.()};return window.addEventListener("keydown",a),()=>{window.removeEventListener("keydown",a)}},[t]),u.useEffect(()=>{const a=setTimeout(()=>{t?.()},n);return()=>{clearTimeout(a)}},[n,t]),r.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:r.jsxs("div",{className:"dtw-flex dtw-justify-between dtw-items-center",children:[r.jsx("div",{children:e}),!!t&&r.jsx(pn,{Icon:Zn.XMarkIcon,onClick:t,className:"dtw-w-6 dtw-h-6",containerClassName:"dtw-self-center"})]})})},rv=({children:e,className:t,transparent:n=!1,centered:a=!0,onClose:s,noPadding:o,onBack:i})=>(u.useEffect(()=>{const l=c=>{c.key==="Escape"&&s?.()};return window.addEventListener("keydown",l),()=>{window.removeEventListener("keydown",l)}},[s]),r.jsx("div",{className:C("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":!o}),children:r.jsxs("div",{className:C("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":a}),children:[e,!!i&&r.jsx("div",{className:"dtw-absolute dtw-top-5 dtw-left-5",children:r.jsx(pn,{Icon:Zn.ChevronLeftIcon,onClick:i})}),!!s&&r.jsx("div",{className:"dtw-absolute dtw-top-5 dtw-right-5",children:r.jsx(pn,{Icon:Zn.XMarkIcon,onClick:s})})]})})),ov=({children:e})=>r.jsx(R.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}),iv=({className:e,iconClassName:t,onClick:n,children:a})=>{const s=Ve(),o=()=>{n?.(),s?.(X.TRADING_SETTINGS_OPENED)};return r.jsxs(R.Popover,{className:C("dtw-flex dtw-items-center dtw-justify-end",e),children:[r.jsx(R.PopoverButton,{onClick:o,children:r.jsx(se.Cog6ToothIcon,{className:C("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)})}),r.jsx(R.PopoverBackdrop,{className:"dtw-absolute dtw-inset-0 dtw-bg-[var(--panel-popup-bg,var(--panel-secondary-color))] dtw-opacity-50"}),r.jsx(R.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:r.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:a})})]})},lv=({children:e})=>r.jsx(R.TabPanel,{children:r.jsx(iv,{children:e})}),q={InputGroup:nv,Meta:av,Settings:lv,Panel:ov,Overlay:rv,Notification:sv},cv=["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)]"],dv=["!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))]"],Y=({children:e,onClick:t,highlighted:n=!0,disabled:a=!1,className:s,type:o,loading:i=!1})=>r.jsxs("button",{className:C("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",{[dv.join(" ")]:n,[cv.join(" ")]:!n,"dtw-flex dtw-items-center dtw-justify-center dtw-gap-1":i},s),onClick:t,disabled:a||i,type:o,children:[i&&r.jsx(ke,{className:"dtw-h-4 dtw-w-4"}),e]}),Mi={GeoBlockAlert:()=>r.jsx(vt,{type:"error",children:r.jsx("span",{className:"dtw-text-sm",children:"Depositing is geo-blocked."})}),SanctionedAlert:()=>r.jsx(vt,{type:"error",children:r.jsx("span",{className:"dtw-text-sm",children:"Your address has been found on a sanctions list. Deposits are disabled."})}),AvailableLiquidityAlert:({liquidityAmount:e})=>r.jsxs(vt,{type:"warning",children:[r.jsx("p",{className:"dtw-text-center",children:e?`${e} withdrawal liquidity`:"Liquidity is running low"}),r.jsx("p",{className:"dtw-text-sm dtw-text-center",children:"Sell a smaller amount"})]}),MaxSupplyReachedAlert:({supplyCapInUsd:e})=>r.jsxs(vt,{type:"warning",children:[r.jsx("p",{className:"dtw-text-center dtw-text-base",children:"Supply caps reached"}),r.jsxs("p",{className:"dtw-text-sm dtw-text-center",children:["Can only buy ",e," more"]})]}),OnDemandWithdrawAlert:()=>r.jsxs(vt,{type:"info",children:[r.jsx("p",{className:"dtw-text-center",children:"On demand sell"}),r.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"})]})},ji=u.createContext(Mi),pv=({children:e,config:t})=>{const n=u.useMemo(()=>({...Mi,...t}),[t]);return r.jsx(ji.Provider,{value:n,children:e})},L=()=>{const e=u.useContext(ji);if(!e)throw new Error("ComponentContext is used out of Provider");return e},un=({children:e,promptText:t})=>{const{ActionButton:n=Y}=L();return r.jsxs("div",{children:[r.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:[r.jsx(se.ExclamationCircleIcon,{className:"dtw-h-5 dtw-w-5"}),r.jsx("div",{className:"dtw-py-1 dtw-text-xs",children:t})]}),r.jsx(Ha,{text:t,children:r.jsx(n,{disabled:!0,children:r.jsxs("div",{className:"dtw-flex dtw-items-center dtw-justify-center dtw-gap-2",children:[r.jsx(se.LockClosedIcon,{className:"dtw-h-5"}),r.jsx("span",{children:e})]})})})]})},Ye=({link:e,className:t,children:n,iconClassName:a="dtw-h-5 dtw-w-5",showDefaultIcon:s=!0})=>r.jsxs("a",{className:C("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&&r.jsx(se.ArrowTopRightOnSquareIcon,{className:a})]}),kn=({defaultEnabled:e=!1,onChange:t,disabled:n=!1,label:a,vertical:s=!1})=>{const[o,i]=u.useState(e);u.useEffect(()=>{i(e)},[e]);const l=c=>{n||(i(c),t?.(c))};return r.jsx(R.Field,{children:r.jsxs("div",{className:C("dtw-flex",{"dtw-flex-col dtw-gap-y-0.5":s,"dtw-items-center dtw-justify-between":!s}),children:[a&&r.jsx(R.Label,{className:"dtw-cursor-pointer dtw-text-xs",children:a}),r.jsx(R.Switch,{checked:o,onChange:l,className:C("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)]":o,"!dtw-bg-[color:var(--panel-switch-bg)] !dtw-text-[color:var(--panel-switch-color)]":!o,"dtw-pointer-events-none dtw-opacity-50":n}),children:r.jsx("span",{className:C("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)]":o,"dtw-translate-x-1 !dtw-bg-[color:var(--panel-switch-thumb-bg)]":!o})})})]})})},Bi=({balance:e,symbol:t})=>r.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}),uv=({onClick:e})=>{const t=A();return r.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})},$i=({style:e,className:t})=>r.jsx("div",{className:C("tw-animate-pulse tw-rounded tw-bg-themeGray-300 tw-bg-opacity-50 tw-h-6",t),style:e}),Fi=e=>r.jsx("img",{...e}),mv=(e,t)=>e===0?`dtw-z-${(t-1)*10}`:`dtw--ml-2 dtw-z-${(t-e-1)*10}`,yv=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}}},We=({symbols:e,size:t="m",className:n=""})=>{const{Image:a=Fi}=L(),s=e.join(""),[o,i]=u.useState({[s]:!1}),{height:l,width:c,diameter:d}=yv(t),p=Yb(e);if(!p?.length||!p[0]||o[s])return null;const m=()=>i(y=>({...y,[s]:!0}));return p.length===1?r.jsx(a,{src:p[0],alt:`${e[0]} icon`,className:C(l,c,n),width:d,height:d,onError:m}):r.jsx("span",{className:`dtw-flex-no-wrap dtw-z-0 dtw-flex ${l} ${n}`,children:p.map((y,w)=>r.jsx(a,{src:y,alt:`${e[w]} icon`,className:C("dtw-inline-block dtw-overflow-visible dtw-rounded-full",c,l,mv(w,e.length)),width:d,height:d,onError:m},w))})},$t=({symbol:e,iconSymbols:t,size:n,symbolClasses:a="dtw-text-sm dtw-font-medium",CustomIcon:s,customTitle:o,className:i})=>{const l=A(),c=o||(e==="all"?l.allAssets:e);return r.jsxs("div",{className:C("dtw-flex dtw-w-full dtw-items-center dtw-space-x-1.5",i),children:[s??r.jsx(We,{size:n,symbols:t,className:"dtw-flex-shrink-0"}),r.jsx("div",{className:a,title:c,children:c||r.jsx($i,{className:"dtw-w-[70px]"})})]})},vt=({className:e,children:t,type:n="error"})=>r.jsx("div",{className:C("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}),Gn=(e,t=!1)=>{if(!e)return"";let n="";t&&e.startsWith("-")&&(n="-",e=e.slice(1));const[a,s]=e.split("."),o=a?.replace(/\D/g,"");if(!o)return s?`${n}0.${s}`:n;const i=new Intl.NumberFormat().format(Number(o));return s!==void 0?`${n}${i}.${s.replace(/[^\d]/g,"")}`:`${n}${i}`},Vn=e=>e.replace(/,/g,""),wv=u.forwardRef(({value:e,onChange:t,formatOnBlurOnly:n=!1,allowNegative:a=!1,...s},o)=>{const i=c=>{const p=c.target.value.replace(a?/[^0-9.-]/g:/[^0-9.]/g,"").replace(/^(-?\d*\.\d*).*$/,"$1").replace(/^(-?\.)(.*)/,"$1$2");if(n)t?.(p,Vn(p));else{const m=Gn(p,a);t?.(m,Vn(m))}},l=()=>{if(!n)return;const c=Gn(e,a);t?.(c,Vn(c))};return r.jsx("input",{...s,ref:o,type:"text",inputMode:"decimal",value:Gn(e,a),onChange:i,onBlur:l})});wv.displayName="InputNumber";const je=({className:e})=>r.jsx("div",{className:C("dtw-w-full dtw-h-[1px] dtw-bg-[var(--panel-divider-color)] dtw-shrink-0",e)}),hv=()=>{const[e]=we(),[t,n]=Q(),[a,s]=u.useState(!1),o=t.slippage!=="auto";return{settings:t,tradingType:e,isCustomSlippage:o,invalidSlippage:a,onDefaultSlippageSelect:()=>{n({slippage:"auto"})},onCustomSlippageSelect:c=>{const d=c.target.value,p=+d<0||+d>100;s(p);let m=t.slippage;p||d.trim().length===0&&o?m="auto":d.trim().length>0&&(m=+d),n({slippage:m})}}},tr=({selected:e=!1,children:t,className:n,onClick:a})=>r.jsx("div",{className:C("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:a,children:t}),gv=0,fv=100,Wi=()=>{const e=A(),{settings:t,tradingType:n,isCustomSlippage:a,invalidSlippage:s,onDefaultSlippageSelect:o,onCustomSlippageSelect:i}=hv(),l=Ii({tradingType:n,slippage:t.slippage,minSlippage:t.minSlippage});return r.jsxs("div",{className:"dtw-flex dtw-items-stretch dtw-gap-x-3",children:[r.jsx(tr,{selected:!a,className:"dtw-w-14",onClick:o,children:e.auto}),r.jsxs("div",{className:"dtw-flex dtw-items-center dtw-gap-x-1 dtw-flex-1",children:[r.jsx(tr,{selected:a,className:"dtw-w-14",children:r.jsx("input",{className:C("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:gv,max:fv,onChange:i,placeholder:l,defaultValue:a?t.slippage.toString():""})}),r.jsx("span",{children:"%"})]})]})};function Rn(e,t,n){const a=pc[n??h.arbitrum.id]?.blockExplorers?.default?.url;if(a)switch(t){case"transaction":return`${a}/tx/${e}`;default:return`${a}/address/${e}`}}const Tv=({batchId:e,updatePendingTransactions:t})=>{const{data:n}=E.useWaitForCallsStatus({id:e,pollingInterval:ya,query:{enabled:!!e}}),a=n?.receipts?.[0]?.transactionHash;u.useEffect(()=>{a&&t({type:"update",txHash:a})},[a,t])},Ui=()=>{const[e,t]=re(),n=K()[1],a=Ao(),s=Co(),[o]=e,i=o?.batchId,l=o?.txHash,c=o?.action,d=c==="approve",p=o?.chainId,{invalidateTradingQueries:m,invalidateAllowanceQueries:y}=Nn();Tv({batchId:i,updatePendingTransactions:t});const{data:w,error:f}=E.useWaitForTransactionReceipt({hash:l,chainId:p,pollingInterval:ya,query:{enabled:!!l}});u.useEffect(()=>{if(w){const g=w.transactionHash;if(g){const v=Rn(g,"transaction",p);n({link:v,status:"Success",action:c}),t({type:"remove",status:"success",txHash:g}),s?.(w,c,v)}d?y():m()}},[w,d,p,c,s,t,n,y,m]),u.useEffect(()=>{f&&(n({isOpen:!1,status:"None",link:"",action:c,sendTokens:null,receiveTokens:null}),t({type:"remove",status:"fail"}),a?.(f,c,p,l))},[f,d,c,p,l,n,t,a])},Ke=({action:e,onErrorCallback:t,onSuccessCallback:n})=>{const[,a]=K(),[,s]=re(),[,o]=N(),i=So();return u.useCallback((l,c,d)=>{if(c){a({isOpen:!1,status:"None",link:"",sendTokens:null,receiveTokens:null}),s({type:"remove",status:"fail"}),console.debug(`${e} transaction failed`,c),i?.(c),t?.(c);return}if(l){console.debug(`${e} transaction started`,l),s({type:"update",txHash:l});const p=Rn(l,"transaction",d.chainId);a({isOpen:!0,status:"Mining",link:p}),e!=="approve"&&o({value:""}),n?.()}},[a,s,e,i,t,o,n])},es=({address:e,chainId:t,refetchInterval:n,disabled:a=!1})=>{const{supportedChainId:s}=Ce(),{data:o}=E.useReadContracts({contracts:[{address:z("factory",t??s),abi:He,functionName:"getAssetPrice",args:[e],chainId:t}],query:{enabled:!ee(e)&&!a,refetchInterval:n}});return _n(o),o?.[0]?.result},ce=({address:e,chainId:t,refetchInterval:n=ze,disabled:a})=>{const s=es({address:e,chainId:t,refetchInterval:n,disabled:a});return D.formatUnits(s??BigInt(0),O)},zi=()=>{const[e]=N(),[t]=P(),n=he({address:e.address,symbol:e.symbol}),a=new T(e.value),s=new T(t.value);return(a.gt(0)||s.gt(0))&&a.lte(n??0)};function bv(e,t,n,a){try{if(t==="all")return"";const s=Number(n),o=Number(a);return s===0||o===0||!isFinite(s)||!isFinite(o)?"":`1 ${e} = ${(o/s).toFixed(6)} ${t}`}catch{return""}}const Hi=()=>{const[e]=N(),[t]=P();return{value:bv(e.symbol,t.symbol,e.value,t.value),isLoading:!!t.isLoading}},Qe=()=>{const e=!Oe(),[{symbol:t}]=P(),[{isMultiAssetWithdrawalEnabled:n}]=Q();return e&&n&&t==="all"},ts=({onErrorCallback:e}={})=>{const{account:t}=B(),{chainId:n}=b(),a=Qe(),[s]=N(),o=new T(s.value||"0").shiftedBy(s.decimals).toFixed(0,T.ROUND_UP),i=z("easySwapperV2",n),{canSpend:l,isFetching:c}=al({tokenAddress:s.address,ownerAddress:t??_,spenderAddress:i,rawAmountToSpend:o,chainId:n,skip:a||o==="0"}),d=nl({token:s,rawTokenAmount:o,spenderAddress:i,onErrorCallback:e});return{canSpend:l,approve:d,isCanSpendFetching:c}},vv=({address:e,chainId:t})=>{const n=E.usePublicClient({chainId:t}),{data:{aaveAssetGuardAddress:a=_}={}}=Lt({address:e,chainId:t});return u.useCallback(async({withdrawAmountD18:s,slippage:o})=>ii({address:a,abi:Ic,functionName:"calculateSwapDataParams",args:[e,s,_a(o)],publicClient:n}),[a,e,n])},Gi=async({assets:e,getSwapQuotes:t,signal:n,buildKey:a})=>{const s=await Promise.all(e.map(o=>t({signal:n,variables:{...o,fromAddress:Or}})));return e.reduce((o,i,l)=>{const c=a(i);return o[c]=s[l]??null,o},{})},Vi=e=>e.length>1?1:0,xv=async({assets:e,getSwapQuotes:t,signal:n})=>Gi({assets:e,getSwapQuotes:t,signal:n,buildKey:oo}),Av=(e,t)=>{const n=Na(),{settings:{selectedAggregators:a}}=J();return tt.useQuery({queryKey:["getSwapsQuotes",e,a],queryFn:async({signal:s,queryKey:[,o]})=>await Gi({assets:o,getSwapQuotes:n,signal:s,buildKey:({sourceAddress:i})=>i}),...t})},Sv=new AbortController,Cv=Sv.signal,Ev=({chainId:e})=>{const{account:t=_}=B(),n=Na();return u.useCallback(async({swapParams:a,slippage:s})=>{const o=(a?.srcData??[]).map(({asset:i,amount:l})=>({chainId:e,sourceAddress:i,destinationAddress:a?.dstData.asset??_,walletAddress:t,amount:l.toString(),slippage:s.toString()}));return xv({assets:o,getSwapQuotes:n,signal:Cv})},[e,n,t])},Iv=({address:e,chainId:t})=>{const n=z("aaveLendingPoolV3",t),{data:{getSupportedAssets:a}={}}=jt({address:e,chainId:t}),s=vv({address:e,chainId:t}),o=Ev({chainId:t});return u.useCallback(async({withdrawAmountD18:i,slippage:l,estimate:c,transactionArgs:d})=>{const p=_a(l);if(!a?.some(g=>H(g,n)))return bs(a,p);const y=await Ed(a,n,{withdrawAmountD18:i,slippage:l,fetchAaveSwapParams:s,fetchAaveSwapQuotes:o}),w=Ad(y);return await Cd(w,y,p,c,d)??bs(a,p)},[n,s,o,a])},_v=()=>{const{defaultWithdrawSlippage:e,defaultSwapTransactionSlippage:t}=G(),n=!Oe(),{isCompleteWithdrawStep:a,isFetching:s}=Re(),[o]=P(),[,i]=Q(),l=Zi();u.useEffect(()=>{if(!(!n||o.isLoading||s)){if(a){const c=l<0?Math.abs(l):0,d=Number((c+t).toFixed(2));i({minSlippage:d});return}i({minSlippage:e})}},[i,o.isLoading,n,l,a,e,t,s])},Dv=()=>{const{account:e=_}=B(),{chainId:t}=b();return E.useReadContract({address:z("easySwapperV2",t),abi:ve,functionName:"withdrawalContracts",chainId:t,args:[e],query:{enabled:!ee(e)}})},ns=()=>{const{chainId:e}=b(),[t]=P(),n=es({address:t.address,chainId:e}),a=Ft(),s=Yi(),o=new T(s).shiftedBy(O).div(n?.toString()??"1").shiftedBy(t.decimals).toFixed(0,T.ROUND_DOWN),i=new T(o).times(1-yr/100).times(1-a/100).toFixed(0,T.ROUND_DOWN);return{expectedReceiveAmount:o,minExpectedReceiveAmount:i}},qi=({isClaim:e,onErrorCallback:t}={})=>{const n=b(),{data:a=[]}=me(),{data:s={}}=yt(),[o]=P(),{minExpectedReceiveAmount:i}=ns(),l=re()[1],c=e?"claim":"swap",d=Ke({action:c,onErrorCallback:t}),p=Ji(),{send:m,estimate:y}=xe({contractId:"easySwapperV2",functionName:sc,onSettled:d}),w=u.useCallback(async()=>{if(e||!p)return[];const f=Object.values(s)[0]?.map(({routerKey:g})=>g);if(!f?.length)return console.warn("[Complete Withdraw] No available routers found for swap"),[];for(const g of f){const v=Object.entries(s).reduce((k,[M,ne])=>{const Ae=ne?.find(Xe=>Xe.routerKey===g);return{...k,[M]:Ae}},{}),S=ld({assets:a,swapData:v,receiveAssetAddress:o.address}),{error:I}=await y(S,i);if(!I)return[S,i]}return console.error("[Complete Withdraw] All routers failed estimation"),[]},[e,p,s,i,a,o.address,y]);return u.useCallback(async()=>{l({type:"add",action:c,symbol:n.symbol,chainId:n.chainId});const f=await w();return console.log("Arguments",f),m(...f)},[c,n.chainId,n.symbol,m,w,l])},Yi=()=>{const{data:e=[]}=me();return e.reduce((t,{balance:n,price:a})=>t+n*a,0)},Ki=({account:e,chainId:t})=>E.useReadContract({address:z("easySwapperV2",t),abi:ve,functionName:"getTrackedAssets",chainId:t,args:[e],query:{enabled:!ee(e)}}),Nv=({assets:e,chainId:t})=>e.flatMap(({token:n})=>[{address:n,abi:D.erc20Abi,functionName:"symbol",chainId:t,args:[]},{address:n,abi:D.erc20Abi,functionName:"decimals",chainId:t,args:[]},{address:z("factory",t),abi:He,functionName:"getAssetPrice",chainId:t,args:[n]}]),Ov=3,Qi=({assets:e,chainId:t})=>{const n=u.useCallback(a=>e.map(({token:s,balance:o},i)=>{const l=i*Ov,c=l+1,d=c+1,p=Number(a[c]?.result??O),m=Ea[s.toLowerCase()]??a[l]?.result?.toString()??"";return{address:s,symbol:m,decimals:p,rawBalance:o,balance:new T(o.toString()).shiftedBy(-p).toNumber(),price:new T(a[d]?.result?.toString()??0).shiftedBy(-O).toNumber()}}),[e]);return E.useReadContracts({contracts:Nv({assets:e,chainId:t}),query:{enabled:e.length>0,select:n}})},me=()=>{const{account:e=_}=B(),{chainId:t}=b(),{data:n=[]}=Ki({account:e,chainId:t});return Qi({assets:n,chainId:t})},Re=()=>{const{data:e=[],isFetching:t}=me();return{isCompleteWithdrawStep:e?.length>0,isFetching:t}},yt=()=>{const{defaultSwapTransactionSlippage:e}=G(),{chainId:t}=b(),{account:n=_}=B(),[{slippage:a}]=Q(),[s]=P(),{data:o=[]}=me(),i=Ji(),l=u.useMemo(()=>o.filter(({address:c})=>!H(c,s.address)).map(({address:c,rawBalance:d})=>({chainId:t,sourceAddress:c,destinationAddress:s.address,walletAddress:n,amount:d.toString(),slippage:(a==="auto"?e:a).toString()})),[o,t,e,s.address,a,n]);return Av(l,{enabled:i,refetchInterval:wa})},Pv=()=>{const[e,t]=P(),{data:n=[]}=me(),{data:a,isFetching:s,isError:o}=yt();u.useEffect(()=>{t({isLoading:s})},[s,t]),u.useEffect(()=>{if(n.length===0||s||o)return;const i=n.reduce((l,c)=>{if(H(c.address,e.address))return l.plus(c.rawBalance.toString());const d=a?.[c.address]??[],m=d[Vi(d)]?.destinationAmount??"0";return l.plus(m)},new T(0));t({value:D.formatUnits(BigInt(i.toFixed()),e.decimals)})},[n,o,s,e.address,e.decimals,a,t])},Xi=({withdraw:e,isClaim:t,onErrorCallback:n})=>{const a=A(),s=ie(),{account:o}=B(),i=b(),[l]=P(),c=K()[1],d=re()[1],p=fn(),{data:m}=me(),{isFetching:y}=yt(),w=u.useCallback(async()=>{const f=i.chainId,g=(m??[]).map(({address:S,decimals:I,symbol:k,balance:M})=>({address:S,decimals:I,symbol:k,value:M.toString()})),v=t?null:g.filter(S=>!H(S.address,l.address));c({isOpen:!0,status:"Wallet",action:t?"claim":"swap",link:"",sendTokens:v,receiveTokens:t?g:[l]});try{await e()}catch(S){S instanceof ut&&(n?.(),s({type:"MERGE_OVERLAY",payload:{type:$.ERROR_NOTIFICATION,isOpen:!0,meta:{error:S.message}}}),p?.(S,i.address,f,o)),c({isOpen:!1,status:"None",link:"",sendTokens:null,receiveTokens:null}),d({type:"remove",status:"fail"})}},[o,m,s,t,n,p,i.address,i.chainId,l,d,c,e]);return{disabled:t?!1:y,label:t?a.claimAction:a.swapAction,handleTrade:w}},Zi=()=>{const{expectedReceiveAmount:e}=ns(),[t]=P(),n=new T(t.value||"0").shiftedBy(t.decimals);return e==="0"||n.isZero()?0:n.dividedBy(e).minus(1).times(100).decimalPlaces(2,T.ROUND_DOWN).toNumber()},Ji=()=>{const[e]=P(),{data:t=[]}=me();return t.length>0&&t.some(({address:n})=>!H(n,e.address))},kv=({handleTrade:e,onError:t})=>{const n=ie(),{data:a=[]}=me(),{data:s,isFetching:o,isError:i}=yt(),l=u.useRef(!1),c=a.length===0,d=a.length>1;u.useEffect(()=>{i&&(t(),n({type:"MERGE_OVERLAY",payload:{type:$.ERROR_NOTIFICATION,isOpen:!0,meta:{error:Br}}}))},[n,i,t]),u.useEffect(()=>{const p=d?!!s&&Object.values(s).length>0:!0;try{if(c||!p||o||l.current)return;l.current=!0,e()}catch(m){console.error(m)}},[a,o,s,e,d,c])},Ft=()=>{const{defaultWithdrawSlippage:e}=G(),{isCompleteWithdrawStep:t}=Re(),[{slippage:n,minSlippage:a}]=Q();return n==="auto"?t?a??e:e:n};function da(e,t,n){const[a,s]=u.useState(n),o=gn?e==="sessionStorage"?sessionStorage:localStorage:null,i=u.useCallback(l=>{try{s(l),o?.setItem(t,JSON.stringify(l))}catch(c){console.error(c)}},[t,o]);return u.useEffect(()=>{try{const l=o?.getItem(t);l&&s(JSON.parse(l))}catch(l){console.error(l)}},[t,o]),[a,i]}const as=(e,t)=>{const[n,a]=u.useState(e);return u.useEffect(()=>{const s=setTimeout(()=>{a(e)},t);return()=>{clearTimeout(s)}},[e,t]),n},Rv=()=>{const e=b(),[t]=N(),n=Qe(),a=Ft(),s=Iv(e);return u.useCallback(async o=>{const i=lo(t.value),l=n?[i]:[e.address,i],c=await s({withdrawAmountD18:i,slippage:a,estimate:o,transactionArgs:l});return[...l,c]},[s,n,e.address,t.value,a])},Lv=({debounceTime:e}={})=>{const t=b(),n=Qe(),[a]=N(),s=Ft(),{data:{getSupportedAssets:o}={}}=jt(t),i=as(a.value||"0",e??0);return u.useMemo(()=>{const l=_a(s),c=lo(i),d=(o??[]).map(p=>({supportedAsset:p,withdrawData:"",slippageTolerance:l}));return n?[c,d]:[t.address,c,d]},[s,i,o,n,t.address])},Mv=e=>typeof e[0]=="string"&&typeof e[1]=="bigint"&&Array.isArray(e[2]),jv=()=>{const e=b(),t=kt(),{canSpend:n}=ts(),a=Lv({debounceTime:dr}),s=Mv(a)&&a[1]!==BigInt(0)&&!t&&n,{data:o}=E.useSimulateContract({abi:ve,address:z("easySwapperV2",e.chainId),functionName:hr,args:a,query:{enabled:s}});return Qi({assets:o?.result[0]??[],chainId:e.chainId})},ss=()=>{const[e]=P(),{data:t=[],isFetching:n,isFetched:a}=jv(),s=Rt();return{isUnrollAndClaimTransaction:t?.length===1&&H(t[0]?.address,e.address)&&!s,isFetching:n,isFetched:a}},Bv=({onErrorCallback:e}={})=>{const t=b(),n=Qe(),{isUnrollAndClaimTransaction:a}=ss(),s=Rv(),o=re()[1],i=n?"multi_withdraw":a?"single_withdraw_and_claim":"single_withdraw",l=Ke({action:i,onErrorCallback:e}),c=n?wr:a?ac:hr,{send:d,estimate:p}=xe({contractId:n?"poolLogic":"easySwapperV2",dynamicContractAddress:n?t.address:void 0,functionName:c,onSettled:l});return{withdraw:u.useCallback(async()=>{o({type:"add",action:i,symbol:t.symbol,chainId:t.chainId});const y=await s(p);return console.log("Arguments",y),d(...y)},[o,i,t.symbol,t.chainId,s,p,d]),action:i}},rs=({trade:e,onErrorCallback:t})=>{const n=A(),a=ie(),{account:s}=B(),o=b(),[i]=N(),[l]=P(),[c]=we(),d=K()[1],p=re()[1],m=fn(),y=Qe(),{isUnrollAndClaimTransaction:w}=ss(),f=he({symbol:i.symbol,address:i.address}),g=c==="deposit",v=zi(),S=g?"deposit":y?"multi_withdraw":w?"single_withdraw_and_claim":"single_withdraw",I=async()=>{const k=o.chainId;d({isOpen:!0,status:"Wallet",action:S,link:"",sendTokens:[i],receiveTokens:g||w?[l]:null,meta:g?{}:{withdrawPercentage:i.value&&f?new T(i.value).div(f).toNumber():0}});try{await e()}catch(M){M instanceof ut&&(t?.(),a({type:"MERGE_OVERLAY",payload:{type:$.ERROR_NOTIFICATION,isOpen:!0,meta:{error:M.message}}}),m?.(M,o.address,k,s)),d({isOpen:!1,status:"None",link:"",sendTokens:null,receiveTokens:null,meta:{}}),p({type:"remove",status:"fail"})}};return{disabled:!v,label:g?n.depositAction:y?n.withdrawAction:w?n.unrollAndClaimAction:n.unrollAction,handleTrade:I}},$v=1,Fv="USD",Wv=({depositValueInUsd:e,apy:t,apyCurrencyPrice:n,currency:a})=>{if(e===0||!t||!a||n===0)return{yearlyEarnings:"-",dailyEarnings:"-",monthlyEarnings:"-"};const s=e*t/100/n;return{yearlyEarnings:tn({value:s,currency:a}),dailyEarnings:tn({value:s/365,currency:a}),monthlyEarnings:tn({value:s/12,currency:a})}},el=({currency:e,depositValueInUsd:t,chainId:n,apy:a,disabled:s})=>{const o=e==="ETH"?Jr[n]?.address:e==="BTC"?eo[n]?.address:void 0,i=ce({address:o??_,chainId:n,disabled:s||!a||!o}),l=o?Number(i):$v;return u.useMemo(()=>Wv({depositValueInUsd:t,apy:a,apyCurrencyPrice:l,currency:o?e:Fv}),[t,a,l,e,o])},tl=()=>{const e=we()[0]==="deposit",{chainId:t}=b(),[n]=qe(),[a]=N(),s=ce({address:a.address,chainId:t,disabled:!e||!n.apy}),o=el({chainId:t,apy:n.apy?.value,currency:n.apy?.currency,depositValueInUsd:+a.value*+s,disabled:!e});return e?{showEarnings:!!n.apy?.value,...o}:{dailyEarnings:null,yearlyEarnings:null,monthlyEarnings:null,showEarnings:!1}},Uv=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"},zv=(e,t)=>{const{settings:{selectedAggregators:n}}=J(),a=Na(),{isValid:s}=Uv({chainId:String(e.chainId),sourceAddress:e.sourceAddress,destinationAddress:e.destinationAddress,amount:e.amount,slippage:String(e.slippage)});return tt.useQuery({queryKey:["getSwapQuotes",{...e,fromAddress:Or},n],queryFn:async({signal:o,queryKey:[,i]})=>a({signal:o,variables:i}).then(l=>l?.filter(c=>!!c)??[]),...t,enabled:s&&(t?.enabled??!0)})},Ln=(e={})=>{const t=e?.extendedDebounceTime??!1,[n]=N(),a=as(n.value,t?dr:cr);return{debouncedSendTokenValue:a,isDebouncing:n.value!==a}},Hv=()=>{const e=On(),[{isBatchTransactionsEnabled:t}]=Q();return e&&t},Qt="approve",nl=({token:e,rawTokenAmount:t,spenderAddress:n,onErrorCallback:a})=>{const s=b(),[{isInfiniteAllowance:o}]=Q(),i=re()[1],l=K()[1],c=Ke({action:Qt,onErrorCallback:a}),{send:d}=xe({contractId:"erc20",dynamicContractAddress:e.address,functionName:Qt,onSettled:c});return u.useCallback(async()=>(l({isOpen:!0,status:"Wallet",link:"",action:Qt,sendTokens:[{symbol:e.symbol,address:e.address,decimals:e.decimals,value:""}],receiveTokens:null,meta:{}}),i({type:"add",action:Qt,symbol:e.symbol,chainId:s.chainId}),d(n,o?Ue:t)),[o,s.chainId,t,d,n,e.address,e.decimals,e.symbol,i,l])},al=({rawAmountToSpend:e,tokenAddress:t,ownerAddress:n,spenderAddress:a,chainId:s,skip:o=!1})=>{const{data:i,isFetching:l}=Tn({tokenAddress:t,ownerAddress:n,spenderAddress:a,chainId:s,skip:o});return u.useMemo(()=>o?{canSpend:!0,isFetching:!1}:!i||i===BigInt(0)?{canSpend:!1,isFetching:l}:!e||e==="0"?{canSpend:!0,isFetching:l}:{canSpend:new T(i.toString()).gte(e),isFetching:l},[l,e,i,o])},Gv=()=>{const[{isInfiniteAllowance:e},t]=Q(),n=Ve(),a=u.useCallback(s=>{t({isInfiniteAllowance:s}),n?.(X.INFINITE_ALLOWANCE_CHANGE,{[Te.IS_INFINITE.NAME]:s?1:0})},[t,n]);return u.useMemo(()=>[e,a],[e,a])},sl=()=>{const e=A(),[t,n]=Gv();return r.jsx(kn,{defaultEnabled:t,onChange:n,label:e.infinite})},Vv=()=>{const[{isBatchTransactionsEnabled:e},t]=Q(),n=Ve(),a=u.useCallback(s=>{t({isBatchTransactionsEnabled:s}),xd(s),n?.(X.BATCH_TRANSACTIONS_CHANGE,{[Te.IS_BATCH_TRANSACTIONS_ENABLED.NAME]:s?1:0})},[t,n]);return u.useMemo(()=>[e,a],[e,a])},rl=()=>{const e=A(),[t,n]=Vv();return r.jsx(kn,{defaultEnabled:t,onChange:n,label:e.batchTransactionsSwitchLabel})},qv=()=>{const[{availableAggregators:e,selectedAggregators:t},n]=Q(),a=u.useCallback(s=>{const o=t.includes(s)?t.filter(i=>i!==s):[...t,s];n({selectedAggregators:o})},[t,n]);return{availableAggregators:e,selectedAggregators:t,onAggregatorToggle:a}},ol=()=>{const e=A(),{availableAggregators:t,selectedAggregators:n,onAggregatorToggle:a}=qv();return t.length<=1?null:r.jsx($e,{label:e.aggregatorsLabel,tooltipText:e.aggregatorsTooltip,children:r.jsx("div",{className:"dtw-flex dtw-flex-col dtw-gap-2",children:t.map(s=>r.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,r.jsx(kn,{defaultEnabled:n.includes(s),onChange:()=>a(s),size:"sm"})]},s))})})},Yv=()=>{const e=On(),t=A();return r.jsxs(r.Fragment,{children:[r.jsx($e,{label:t.slippageTolerance,tooltipText:t.depositSlippageWarning,children:r.jsx(Wi,{})}),r.jsx($e,{label:t.tokenAllowance,tooltipText:t.toggleTokenApprovalAmount,children:r.jsx(sl,{})}),e&&r.jsx($e,{label:t.batchTransactionsLabel,tooltipText:t.batchTransactionsTooltip,children:r.jsx(rl,{})}),r.jsx(ol,{})]})},Kv=()=>{const{chainId:e,address:t}=b(),{data:{isCustomCooldownDepositAllowed:n}={}}=Lt({address:t,chainId:e});return n!==!1},nr=(e,t)=>e.length?e.find(({tokenAddress:a})=>Object.values(Qc[t]??{}).some(s=>H(s.address,a)))?.tokenAddress??e[0]?.tokenAddress:null,wt=()=>{const[e]=N(),{chainId:t,address:n}=b(),a=mt({address:n,chainId:t}),s=Kv();return u.useMemo(()=>{const o=a.filter(({isDeposit:c})=>c);if(hn(e.symbol,t)){const c=o.find(({tokenName:d})=>Ze[t]?.wrappedNativeTokenName===d);return c?{depositMethod:s?Ie.NATIVE_CUSTOM:Ie.NATIVE,vaultDepositTokenAddress:c.tokenAddress}:{depositMethod:s?Ie.ZAP_NATIVE_DEPOSIT_CUSTOM:Ie.ZAP_NATIVE_DEPOSIT,vaultDepositTokenAddress:nr(o,t)??e.address}}const l=o.find(({tokenAddress:c})=>H(c,e.address));return l?{depositMethod:s?Ie.DEPOSIT_CUSTOM:Ie.DEPOSIT,vaultDepositTokenAddress:l.tokenAddress}:{depositMethod:s?Ie.ZAP_DEPOSIT_CUSTOM:Ie.ZAP_DEPOSIT,vaultDepositTokenAddress:nr(o,t)??e.address}},[t,s,a,e.address,e.symbol])},Wt=()=>{const[e]=N(),{vaultDepositTokenAddress:t}=wt();return!H(e.address,t)},os=()=>{const{defaultSwapTransactionSlippage:e}=G(),[{slippage:t}]=Q(),n=Wt();return t==="auto"?n?e:yn:t},Mn=()=>{const{account:e=_}=B(),{chainId:t}=b(),[n]=N(),{debouncedSendTokenValue:a}=Ln(),{vaultDepositTokenAddress:s}=wt(),o=Wt();return zv({sourceAddress:n.address,destinationAddress:s,amount:new T(a).shiftedBy(n.decimals).toFixed(0),chainId:t,slippage:"33",walletAddress:e},{enabled:o&&!!a,refetchInterval:wa})},il=()=>{const{defaultNoSwapMinDepositAmountGap:e}=G(),{address:t,chainId:n}=b(),[a]=N(),[s]=P(),{data:{entryFee:o}={}}=oe({address:t,chainId:n}),i=Ne(Number(o??"0"),ye),[{slippage:l}]=Q(),c=l==="auto",d=os(),p=Wt(),m=+ce({address:a.address,chainId:n}),y=+ue({address:t,chainId:n});if(p){const g=Number(a.value||0)*m*(1-i/100)/y;return new T(g).shiftedBy(s.decimals).times(1-d/100).toFixed(0)}const w=c?e:d;return new T(s.value||"0").shiftedBy(s.decimals).times(1-w/100).toFixed(0)},Qv=({isDepositWithSwapTransaction:e,sendTokenAddress:t,sendTokenValue:n})=>{const{chainId:a}=b(),s=+ce({address:t,chainId:a}),{vaultDepositTokenAddress:o}=wt(),{data:i}=E.useReadContract({address:o,abi:D.erc20Abi,functionName:"decimals",chainId:a}),l=+ce({address:o,chainId:a,refetchInterval:ze,disabled:!e}),c=Number(n||"0")*s;return i&&l!==0?new T(c/l).shiftedBy(i).times(1-yr/100).toFixed(0):"0"},ll=()=>{const[e]=N(),{debouncedSendTokenValue:t}=Ln(),n=Wt(),a=Qv({isDepositWithSwapTransaction:n,sendTokenAddress:e.address,sendTokenValue:t});return n?a:new T(t||"0").shiftedBy(e.decimals).toFixed(0)},pa=(e,t,n=[])=>{const{vaultAddress:a,vaultDepositTokenAddress:s,vaultDepositTokenAmount:o,minVaultTokensReceivedAmount:i,sendTokenAmount:l}=t;switch(e){case"nativeDeposit":case"nativeDepositWithCustomCooldown":return[a,i,{value:o}];case"deposit":case"depositWithCustomCooldown":return[a,s,o,i];case"zapNativeDeposit":case"zapNativeDepositWithCustomCooldown":return[...n,{value:l}];case"zapDeposit":case"zapDepositWithCustomCooldown":return n}},Xv=async({baseArgs:e,swapQuotes:t,estimate:n,depositSlippage:a,sendTokenAddress:s,depositMethod:o})=>{const{vaultAddress:i,vaultDepositTokenAddress:l,vaultDepositTokenAmount:c,minVaultTokensReceivedAmount:d,sendTokenAmount:p}=e;if(!t?.length)return console.warn("[Deposit] No available routers found for swap"),[];if(!n){const y=t[Vi(t)],w=hs({vaultAddress:i,sendTokenAddress:s,sendTokenAmount:p,minVaultTokensReceivedAmount:d,vaultDepositTokenAddress:l,swapData:y?.rawTransaction.data??"0x",routerKey:y?.routerKey,swapDestinationAmount:c,swapSlippage:a});return pa(o,e,w)}let m=[];for(const y of t){const w=hs({vaultAddress:i,sendTokenAddress:s,sendTokenAmount:p,minVaultTokensReceivedAmount:d,vaultDepositTokenAddress:l,swapData:y?.rawTransaction.data??"0x",routerKey:y?.routerKey,swapDestinationAmount:c,swapSlippage:a});m=pa(o,e,w);const{error:f}=await n(...m);if(!f)return m}return console.warn("[Deposit] No valid routers found for swap"),m},Zv=e=>e==="zapNativeDeposit"||e==="zapNativeDepositWithCustomCooldown"||e==="zapDeposit"||e==="zapDepositWithCustomCooldown",Jv=({depositMethod:e,vaultDepositTokenAddress:t})=>{const{address:n}=b(),[a]=N(),s=a.value||"0",o=new T(s).shiftedBy(a.decimals).toFixed(0),i=ll(),{data:l}=Mn(),c=il(),d=os();return u.useCallback(async p=>{const m={vaultAddress:n,vaultDepositTokenAddress:t,vaultDepositTokenAmount:i,minVaultTokensReceivedAmount:c,sendTokenAmount:o},y=Zv(e);try{return y?Xv({baseArgs:m,swapQuotes:l,estimate:p,depositSlippage:d,sendTokenAddress:a.address,depositMethod:e}):pa(e,m)}catch(w){return console.error(w),[]}},[n,e,d,c,a.address,o,l,t,i])},cl=()=>{const{chainId:e}=b(),[t]=P(),n=re()[1],{depositMethod:a,vaultDepositTokenAddress:s}=wt(),o=Jv({depositMethod:a,vaultDepositTokenAddress:s}),i=u.useCallback(()=>{n({type:"add",action:"deposit",symbol:t.symbol,chainId:e})},[n,t.symbol,e]);return{chainId:e,depositMethod:a,buildDepositTransactionArgs:o,addPendingTransaction:i}},ex="deposit",tx=({onDepositSettled:e})=>{const{depositMethod:t,buildDepositTransactionArgs:n,addPendingTransaction:a}=cl(),s=Ke({action:ex,onErrorCallback:e,onSuccessCallback:e}),{send:o,estimate:i}=xe({contractId:"easySwapperV2",functionName:t,onSettled:s});return u.useCallback(async()=>{a();const l=await n(i);return o(...l)},[a,o,n,i])},dl=()=>{const{account:e=_}=B(),{chainId:t}=b(),[n]=N(),a=z("easySwapperV2",t),s=new T(n.value||"0").shiftedBy(n.decimals).toFixed(0,T.ROUND_UP),{canSpend:o}=al({tokenAddress:n.address,ownerAddress:e,spenderAddress:a,rawAmountToSpend:s,chainId:t,skip:hn(n.symbol,t)||s==="0"});return{approve:nl({token:n,rawTokenAmount:s,spenderAddress:a}),canSpend:o}},nx=()=>{const[e,t]=u.useState("idle"),n=u.useRef(!1),a=u.useCallback(()=>{t("idle"),n.current=!1},[]),s=tx({onDepositSettled:a}),{handleTrade:o}=rs({trade:s,onErrorCallback:a}),{approve:i,canSpend:l}=dl(),{chainId:c}=b(),[{action:d,status:p}]=K(),[m]=re(),y=m.find(v=>v.action==="approve")?.txHash,{data:w}=E.useWaitForTransactionReceipt({hash:y,pollingInterval:ya,query:{enabled:!!y&&e==="waiting-confirmation"}});return u.useEffect(()=>{(async()=>{if(w&&e==="waiting-confirmation"&&!n.current){n.current=!0,t("depositing");const S=nd[c];await new Promise(I=>setTimeout(I,S)),await o()}})()},[w,c,e,o]),u.useEffect(()=>{e==="waiting-confirmation"&&d==="approve"&&p==="None"&&(t("idle"),n.current=!1)},[e,d,p]),{approveAndDeposit:u.useCallback(async()=>{if(l)return o();t("approving"),n.current=!1;try{await i(),t("waiting-confirmation")}catch(v){throw t("idle"),v}},[l,i,o]),isLoading:e!=="idle",flowState:e}},ax=({address:e,chainId:t})=>{const[n]=N(),a=Oe(),{vaultDepositTokenAddress:s}=wt(),o=ll(),i=!!(o&&+o>0),l=E.useReadContract({address:z("easySwapperV2",t),abi:ve,functionName:"depositQuote",args:[e,s,BigInt(o??0)],chainId:t,query:{enabled:a&&i&&!!n.address&&!!o,refetchInterval:ze}});return Wa(l),l},sx=()=>{const{address:e,chainId:t}=b(),n=Oe(),[a]=N(),[s,o]=P(),[,i]=Q(),{isDebouncing:l,debouncedSendTokenValue:c}=Ln(),{isFetching:d}=Mn(),{data:p,isFetching:m}=ax({address:e,chainId:t}),y=d||m||l;u.useEffect(()=>{if(!n||y)return;const w=p?new T(p.toString()).shiftedBy(-s.decimals).toFixed(s.decimals):"";o({value:w})},[p,s.decimals,a.address,o,n,y,c]),u.useEffect(()=>{n&&o({isLoading:y})},[n,y,o]),u.useEffect(()=>{n&&(!a.value||a.value==="0")&&(o({value:"0"}),i({minSlippage:0}))},[o,i,a.value,n])},pl=(e={})=>{const{address:t,chainId:n}=b(),{data:a}=oe({address:t,chainId:n}),[s]=N(),[o]=P(),i=ce({address:s.address,chainId:n}),l=ue({address:t,chainId:n}),c=e.includesEntryFee?Ne(Number(a?.entryFee??"0"),ye):0;return u.useMemo(()=>{const d=Number(s.value||"0"),p=new T(d).times(i??"0").times(1-c/100),m=Number(o.value||"0"),y=new T(m).times(l??"0");return p.isZero()||y.isZero()?0:p.decimalPlaces(_t(d)).comparedTo(y.decimalPlaces(_t(m)))&&p.isGreaterThan(0)?y.dividedBy(p).minus(1).times(100).decimalPlaces(2,T.ROUND_DOWN).toNumber():0},[c,o.value,s.value,i,l])},rx=()=>{const e=Oe(),[t]=P(),[,n]=Q(),{isDebouncing:a}=Ln({extendedDebounceTime:!0}),s=os(),o=pl({includesEntryFee:!0});u.useEffect(()=>{if(!e||t.isLoading||a)return;const i=o-s,l=i<0?Math.abs(Number(i.toFixed(2))):0;n({minSlippage:l})},[n,e,t.isLoading,o,s,a])};function ox(e,t,n,a){for(var s=e.length,o=n+(a?1:-1);a?o--:++o<s;)if(t(e[o],o,e))return o;return-1}var ix=ox;function lx(e){return e!==e}var cx=lx;function dx(e,t,n){for(var a=n-1,s=e.length;++a<s;)if(e[a]===t)return a;return-1}var px=dx,ux=ix,mx=cx,yx=px;function wx(e,t,n){return t===t?yx(e,t,n):ux(e,mx,n)}var hx=wx,gx=hx;function fx(e,t){var n=e==null?0:e.length;return!!n&&gx(e,t,0)>-1}var Tx=fx;function bx(e,t,n){for(var a=-1,s=e==null?0:e.length;++a<s;)if(n(t,e[a]))return!0;return!1}var vx=bx;function xx(){}var Ax=xx,qn=Go,Sx=Ax,Cx=La,Ex=1/0,Ix=qn&&1/Cx(new qn([,-0]))[1]==Ex?function(e){return new qn(e)}:Sx,_x=Ix,Dx=jo,Nx=Tx,Ox=vx,Px=Bo,kx=_x,Rx=La,Lx=200;function Mx(e,t,n){var a=-1,s=Nx,o=e.length,i=!0,l=[],c=l;if(n)i=!1,s=Ox;else if(o>=Lx){var d=t?null:kx(e);if(d)return Rx(d);i=!1,s=Px,c=new Dx}else c=t?[]:l;e:for(;++a<o;){var p=e[a],m=t?t(p):p;if(p=n||p!==0?p:0,i&&m===m){for(var y=c.length;y--;)if(c[y]===m)continue e;t&&c.push(m),l.push(p)}else s(c,m,n)||(c!==l&&c.push(m),l.push(p))}return l}var jx=Mx,Bx=ti,$x=jx;function Fx(e,t){return e&&e.length?$x(e,Bx(t)):[]}var Wx=Fx;const Ux=bn(Wx),jn=()=>{const{address:e,chainId:t,depositParams:n}=b(),{account:a}=B(),s=mt({address:e,chainId:t}),o=Rt(),[{isCustomDepositOptionsDisabled:i}]=Q(),[l]=No(),c=u.useMemo(()=>Ux([...s.filter(({isDeposit:y})=>y).map(({tokenAddress:y,tokenName:w,precision:f})=>({address:y.toLowerCase(),symbol:w,decimals:f})),...i?[]:[...n.customTokens.map(y=>({...y,address:y.address.toLowerCase()})),...l?.[t]??[]]],"address"),[s,i,n.customTokens,l,t]),d=!!c.length,p=!!a&&d,{data:m}=E.useReadContracts({contracts:c.map(({address:y})=>({address:y,abi:D.erc20Abi,functionName:"balanceOf",args:[a??_],chainId:t})),query:{enabled:p}});return _n(m),u.useMemo(()=>{if(!d)return[];const y=[];for(let g=0;g<c.length;g++)y[g]={value:"",address:c[g]?.address??_,symbol:c[g]?.symbol??c[g]?.address??_,balance:m?.[g]?.result?Fe((m?.[g]?.result).toString()??"0",c[g]?.decimals??O):0,decimals:c[g]?.decimals??O};const w=y.slice().sort((g,v)=>g.balance&&v.balance?v.balance-g.balance:0),f=w.find(({symbol:g})=>g===n.defaultDepositTokenSymbol);return[...f?[f]:[],...w.filter(({symbol:g})=>g!==n.defaultDepositTokenSymbol),...o||i?[]:[{value:"",address:Ze[t]?.address??_,symbol:Ze[t]?.nativeTokenSymbol??"",decimals:Ze[t]?.decimals??O}]]},[d,o,i,t,c,m,n.defaultDepositTokenSymbol])},zx=()=>{const e=b(),[t]=jn(),n=N()[1],[a]=we();u.useEffect(()=>{a==="deposit"&&t?.symbol&&n({address:t?.address,symbol:t.symbol,decimals:t?.decimals,value:"",isLoading:!t.symbol})},[n,e.address,a,t?.symbol,t?.address,t?.decimals])},Hx=()=>{const{chainId:e,address:t,deprecated:n}=b(),{data:{isPrivateVault:a}={isPrivateVault:!1}}=oe({address:t,chainId:e}),s=a||n,o=mi({address:t,chainId:e});return{isVaultDepositLocked:s,isAccountWhitelisted:o}},ul=()=>{const{defaultLockTime:e}=G(),{chainId:t,address:n}=b(),{data:{customCooldown:a}={}}=Lt({address:n,chainId:t}),{depositMethod:s}=wt(),o=a?Et.formatDuration({minutes:Number(a)/60}):e;switch(s){case"depositWithCustomCooldown":case"nativeDepositWithCustomCooldown":case"zapDepositWithCustomCooldown":case"zapNativeDepositWithCustomCooldown":return o;default:return e}},Gx="1",Vx=()=>{const{account:e=_}=B(),{address:t,chainId:n}=b(),[a]=P(),s=ue({address:t,chainId:n}),{minDepositUSD:o}=Va(t,n),{data:i}=bi({address:t,chainId:n,account:e}),l=i?.balanceInUsdNumber??0,c=s==="0"?Gx:s,d=Math.max(0,o-l),p=new T(a.value||"0").multipliedBy(c);return{requiresMinDeposit:p.isZero()?!1:p.lte(d),requiredMinDepositAmount:te({value:d})}},is=e=>{const[{action:t,status:n}]=K();return t===e&&(n==="Wallet"||n==="Mining")},ml=e=>{const t=ie(),{onAcceptTermsOfUse:n}=Ka(),{termsOfUseAccepted:a}=G(),{disabled:s,label:o,handleTrade:i}=rs({trade:e}),{isError:l,isLoading:c}=Mn(),d=is("deposit");return{handleClick:()=>{if(l){t({type:"MERGE_OVERLAY",payload:{type:$.ERROR_NOTIFICATION,isOpen:!0,meta:{error:jr}}});return}a?i():t({type:"MERGE_OVERLAY",payload:{type:$.TERMS_OF_USE,isOpen:!0,onConfirm:async y=>{try{y(!0),await n()&&i()}catch{console.error("Failed to verify terms of use acceptance")}finally{y(!1)}}}})},disabled:s||c,label:o,isLoading:d}},qx=()=>{const e=A(),{approveAndDeposit:t,isLoading:n,flowState:a}=nx(),{handleClick:s,disabled:o}=ml(t);return{handleClick:s,disabled:o,isLoading:n,buttonText:(()=>{switch(a){case"approving":case"waiting-confirmation":return e.approveDepositStep;case"depositing":return e.depositNowStep;default:return e.deposit}})()}},Yx=()=>{const{ActionButton:e=Y}=L(),{handleClick:t,disabled:n,isLoading:a,buttonText:s}=qx();return r.jsx(e,{onClick:t,disabled:n,loading:a,children:s})},Kx=()=>{const{chainId:e}=b(),[t]=N(),n=z("easySwapperV2",e),a=new T(t.value||"0").shiftedBy(t.decimals).toFixed(0,T.ROUND_UP);return u.useMemo(()=>({address:t.address,abi:D.erc20Abi,functionName:"approve",chainId:e,args:[n,a]}),[e,a,t.address,n])},Qx=e=>{const[,t]=K(),[,n]=re(),[,a]=N(),[,s]=Q(),o=So();return u.useCallback((i,l)=>{if(l){s({isBatchTransactionsEnabled:!1}),t({isOpen:!1,status:"None",link:"",sendTokens:null,receiveTokens:null}),n({type:"remove",status:"fail"}),console.debug(`${e} transaction failed`,l),o?.(l);return}const c=i?.id;c&&(console.debug(`${e} transaction started, batch id:`,c),n({type:"update",batchId:c}),t({isOpen:!0,status:"Mining"}),a({value:""}))},[s,t,n,e,o,a])},Xx=({address:e,abi:t,functionName:n,args:a,value:s})=>({to:e,data:D.encodeFunctionData({abi:t,functionName:n,args:a}),value:s}),Zx=({onSettled:e})=>{const{sendCalls:t}=E.useSendCalls({mutation:{onSettled:e}});return u.useCallback(async n=>t({calls:n.map(Xx),forceAtomic:!0}),[t])},Jx="deposit",eA=()=>{const{chainId:e,depositMethod:t,buildDepositTransactionArgs:n,addPendingTransaction:a}=cl(),s=Kx(),o=Qx(Jx),i=Zx({onSettled:o});return u.useCallback(async()=>{a();const l=await n(),c={address:z("easySwapperV2",e),abi:ve,functionName:t,args:l};return i([s,c])},[a,e,t,n,i,s])},tA=()=>{const{ActionButton:e=Y}=L(),t=eA(),{handleClick:n,label:a,disabled:s,isLoading:o}=ml(t);return r.jsx(e,{onClick:n,disabled:s,loading:o,children:a})},nA=()=>{const e=Hv(),{deprecated:t,symbol:n,chainId:a,maintenance:s,maintenanceDeposits:o,depositCapacity:i}=b(),[l]=N(),c=kt(),d=ce({address:l.address,chainId:a}),{isVaultDepositLocked:p,isAccountWhitelisted:m}=Hx(),{canSpend:y}=dl(),{requiresHighSlippageConfirm:w,confirmHighSlippage:f,slippageToBeUsed:g}=Qa(),{requiresMinDeposit:v,requiredMinDepositAmount:S}=Vx(),k=Number(l.value||"0")*Number(d),M=i!==void 0&&k>i;return{requiresMinDeposit:v,requiresWhitelist:p&&!m,requiresApprove:!y,requiresHighSlippageConfirm:w,poolSymbol:n,requiredMinDepositAmount:S,deprecated:t,confirmHighSlippage:f,slippageToBeUsed:g,maintenance:s||o,exceedsDepositCapacity:M,isBatchContractWritesTrading:e,insufficientBalance:c}},aA=()=>{const{ActionButton:e=Y}=L(),t=A(),n=Xa("deposit"),{requiresMinDeposit:a,requiredMinDepositAmount:s,requiresApprove:o,requiresWhitelist:i,requiresHighSlippageConfirm:l,deprecated:c=!1,poolSymbol:d,slippageToBeUsed:p,confirmHighSlippage:m,maintenance:y,isBatchContractWritesTrading:w,insufficientBalance:f,exceedsDepositCapacity:g}=nA();return a?r.jsx(e,{disabled:!0,children:t.minimumPurchase.replace("{value}",s)}):i||y?r.jsx(un,{promptText:c?t.poolIsInactive.replace("{poolSymbol}",d):y?t.poolDepositsAreMaintenance.replace("{poolSymbol}",d):t.poolIsPrivate,children:n}):g?r.jsx(un,{promptText:t.exceedsDepositCapacity.replace("{poolSymbol}",d),children:n}):f?r.jsx(e,{disabled:!0,children:t.insufficientBalance}):l?r.jsx(e,{onClick:m,children:t.confirmMaxSlippage.replace("{slippagePercentage}",`${Math.abs(p)}`)}):o&&w?r.jsx(tA,{}):r.jsx(Yx,{})},sA=()=>{const[e,t]=N(),{chainId:n}=b(),a=ce({address:e.address,chainId:n}),s=he({symbol:e.symbol,address:e.address});return{...e,price:a,balance:s,updater:t}},rA=()=>{const{address:e,chainId:t}=b(),[n]=P(),a=ue({address:e,chainId:t});return{...n,price:a}},oA=()=>{const e=sA(),t=rA(),n=Ve(),a=pl(),[{minSlippage:s}]=Q();return{autoFocus:!1,sendToken:e,receiveToken:t,tradingPriceDiff:a,minSlippage:s,onInputFocus:()=>{n?.(X.INVEST_INPUT_FOCUS,{symbol:e.symbol,address:Da(e.address)})},onInputChange:l=>{e.updater({value:l})}}},mn=({children:e})=>r.jsx("table",{className:"dtw-min-w-full dtw-border-separate",style:{borderSpacing:"0px 0.25rem"},children:r.jsx("tbody",{children:e})}),yl=({children:e})=>{const t=A();return r.jsx(R.Disclosure,{children:({open:n})=>r.jsxs(r.Fragment,{children:[r.jsxs(R.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,r.jsx(Se.ChevronDownIcon,{className:C("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})})]}),r.jsx(R.Transition,{show:n,children:r.jsx(R.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})})]})})},iA=e=>{const{address:t,chainId:n}=b(),[{value:a}]=N(),s=wi({vaultTokensAmount:a,address:t,chainId:n}),o=e?s.length:br,i=s.find(({tokenAddress:p})=>no.some(m=>H(p,m))),l=!!i&&i.amount!=="0",{firstPart:c,secondPart:d}=io(s,o);return{visibleAssets:c,hiddenAssets:d,showUnitWithdrawalTip:l,unitSymbol:i?.tokenName,unitAddress:i?.tokenAddress??_}},lA=({symbol:e})=>{const t=A();return r.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," ",r.jsx(We,{symbols:[e],size:"xs"})," ",e]})},wl=({className:e,showFraction:t=!0,iconSize:n,showAllAsset:a=!1})=>{const{visibleAssets:s,hiddenAssets:o,showUnitWithdrawalTip:i,unitSymbol:l,unitAddress:c}=iA(a),d=u.useCallback(({fraction:p,fractionUsd:m,tokenName:y,asset:w,tokenAddress:f})=>{const g=go(f);return r.jsxs("tr",{children:[r.jsxs("td",{style:{width:150,maxWidth:150},children:[r.jsx($t,{symbol:y,iconSymbols:w.iconSymbols,symbolClasses:"dtw-text-xs dtw-font-bold",size:n}),g&&r.jsx(lA,{symbol:fo(f).symbol})]}),t&&r.jsxs("td",{style:{width:150,maxWidth:150},children:[r.jsx("p",{className:"dtw-truncate",children:p}),r.jsx("p",{className:"dtw-truncate dtw-text-xs dtw-text-[color:var(--panel-secondary-content-color)]",children:m})]})]},y)},[n,t]);return r.jsx("div",{className:C("dtw-text-sm dtw-font-light",e),children:s.length>0?r.jsxs(r.Fragment,{children:[r.jsx(mn,{children:s.map(d)}),o.length>0&&r.jsx(yl,{children:r.jsx(mn,{children:o.map(d)})}),i&&r.jsxs("p",{className:"dtw-text-warning dtw-text-[length:var(--panel-label-font-size)]",children:[l," can be redeemed using"," ",r.jsxs("a",{className:"dtw-text-warning dtw-inline-flex dtw-gap-0.5",href:hd(c),target:"_blank",rel:"noreferrer",children:["Flat Money ",r.jsx(se.ArrowTopRightOnSquareIcon,{className:"dtw-w-3"})]})]})]}):r.jsx($i,{})})},cA=({symbol:e})=>{const t=at(),n=ie(),{standalone:a}=G(),s=t.some(p=>p.symbol===e),o=e==="all",i=Eo(),l=s&&t.length===1;return{isAllSymbol:o,onClick:()=>{i?.({isOpen:!0,entity:s?"pool":"token"}),a&&n({type:"MERGE_OVERLAY",payload:{type:s?$.POOL_SELECT:$.TOKEN_SELECT,isOpen:!0}})},disabled:l,hideTokenIcon:a&&s}},dA=({symbol:e})=>{const{isAllSymbol:t,onClick:n,disabled:a,hideTokenIcon:s}=cA({symbol:e}),o=A();return r.jsxs("button",{className:C("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":a}),onClick:n,disabled:a,children:[r.jsx($t,{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?r.jsx(an.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?o.all:void 0}),!a&&r.jsx(an.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 pA(e,t){const n=new T(e);return t&&n.gt(0)?n.toFixed(6):e}const uA=e=>{e.currentTarget.blur()},mA=({displayCalculatedValue:e,assetInput:t="",assetPrice:n,tradingPriceDiff:a=0,type:s,onInputChange:o,maxBalance:i,autoFocus:l=!1,disabled:c=!1})=>{const d=u.useRef(null),{usdAmount:p,isEstimated:m}=u.useMemo(()=>{const g=Number(t||0)*Number(n||0);if(!e||isNaN(g))return{usdAmount:"",isEstimated:!1};const v=te({value:g,maximumFractionDigits:_t(g)});return a?{usdAmount:`${v} (${a>0?"+":""}${a}%${s===W.ERROR?"⚠":""})`,isEstimated:c}:{usdAmount:v,isEstimated:c}},[t,n,a,e,s,c]),y=()=>{d.current?.focus()},w=g=>{o&&o(g.target.value)},f=()=>{o&&i&&o(i)};return{inputRef:d,usdAmount:p,isEstimated:m,value:pA(t,c),autoFocus:l,onContainerClick:y,onMaxBalanceClick:f,onInputChange:w}},Dt=e=>{const{inputRef:t,usdAmount:n,isEstimated:a,autoFocus:s,value:o,onContainerClick:i,onMaxBalanceClick:l,onInputChange:c}=mA(e),{assetSymbol:d,onInputFocus:p,disabled:m=!1,displayMax:y=!1,displayCalculatedValue:w=!1,type:f=W.DEFAULT,isLoading:g=!1,children:v}=e,S=A(),I=C({"dtw-text-[color:var(--panel-error-content-color)]":f===W.ERROR&&!g,"dtw-text-[color:var(--panel-warning-content-color)]":f===W.WARNING&&!g});return r.jsxs("div",{className:C("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)]":!m,"dtw-border-[var(--panel-input-border-color)]":f===W.DEFAULT||g,"dtw-border-[color:var(--panel-error-content-color)]":f===W.ERROR&&!g,"dtw-border-[color:var(--panel-warning-content-color)]":f===W.WARNING&&!g}),onClick:i,children:[r.jsxs("div",{className:C("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:[r.jsx("div",{className:"transparent-scrollbar dtw-flex-1 dtw-overflow-x-auto",children:d==="all"?r.jsx(wl,{iconSize:"sm"}):r.jsx("input",{className:C("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",I),ref:t,autoFocus:s,type:"number",min:0,value:o,onChange:c,onFocus:p,placeholder:"0",disabled:m,onWheelCapture:uA})}),r.jsx(dA,{symbol:d})]}),r.jsxs("div",{className:"dtw-flex dtw-items-center dtw-justify-between dtw-gap-x-2",children:[r.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:w&&r.jsx(r.Fragment,{children:g?r.jsx("div",{className:"dtw-h-[18px]",children:r.jsx(ke,{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)]"})}):r.jsxs("span",{className:C("dtw-flex-1 dtw-py-[1px]",{"dtw-text-[color:var(--panel-input-loading-content-color,var(--panel-loading-content-color))]":g,"!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))]":!g&&f===W.DEFAULT},I),children:[n,a&&r.jsx("span",{className:"dtw-ml-1",children:S.estimated})]})})}),v,y&&r.jsx(uv,{onClick:l})]})]})},yA=()=>{const{stablePrecision:e,defaultPrecision:t}=G(),[{symbol:n,address:a}]=N(),s=he({symbol:n,address:a,watch:!0});return{formattedBalance:yo({balance:s,symbol:n,precision:po(n)?e:t,truncateSymbol:!0}),symbol:n}},hl=()=>{const{formattedBalance:e,symbol:t}=yA();return r.jsx(Bi,{balance:e,symbol:t})},wA=()=>{const{stablePrecision:e,defaultPrecision:t}=G(),[{symbol:n,address:a}]=P(),s=he({symbol:n,address:a,watch:!0});return{formattedBalance:yo({balance:s,symbol:n,precision:po(n)?e:t,truncateSymbol:!0}),symbol:n}},gl=()=>{const{formattedBalance:e,symbol:t}=wA();return r.jsx(Bi,{balance:e,symbol:t})},ls=()=>{const e=b(),[t]=jn(),{isAllAssetsWithdrawOptionDefault:n}=G(),{data:a=[]}=me(),s=a.length>0,{data:o}=qa(e),i=we()[1],l=N()[1],c=P()[1],d=()=>{l({...t,value:"",isLoading:!t}),c({address:e.address,symbol:e.symbol,decimals:O,value:""})},p=()=>{const{customTokens:m,defaultWithdrawTokenSymbol:y}=e.withdrawParams,w=m.find(({symbol:g})=>g===y)??m[0]??sn,f=s?w:o||n?sn:w;l({address:e.address,symbol:e.symbol,decimals:O,value:""}),c({...f,value:"",isLoading:!1})};return m=>{switch(i(m),m){case"deposit":return d();case"withdraw":return p()}}},hA=()=>{Ui(),zx(),hi(),me()},et=["deposit","withdraw"],gA=()=>{const[e]=we(),t=ls();return{handleClick:()=>{const a=et.find(s=>s!==e);a&&t(a)}}},fl=()=>{const{handleClick:e}=gA();return r.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:r.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:r.jsx(Se.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"})})})},fA=()=>{const{sendToken:e,receiveToken:t,autoFocus:n,tradingPriceDiff:a,minSlippage:s,onInputFocus:o,onInputChange:i}=oA(),l=Bt(s??0);return r.jsxs(r.Fragment,{children:[r.jsx(Dt,{assetInput:e.value,onInputChange:i,onInputFocus:o,autoFocus:n,assetSymbol:e.symbol,assetPrice:e.price??"",displayMax:!0,maxBalance:e.balance,displayCalculatedValue:!0,isLoading:e.isLoading,children:r.jsx(hl,{})}),r.jsxs(Dt,{assetInput:t.value,assetSymbol:t.symbol,assetPrice:t.price??"",displayCalculatedValue:!0,disabled:!0,tradingPriceDiff:a,type:l,isLoading:t.isLoading,children:[r.jsx(gl,{}),r.jsx(fl,{})]})]})},TA=()=>{const{address:e,chainId:t}=b(),n=xi({address:e,chainId:t}),[a]=P();if(!n)return{isMaxSupplyCapReached:!1,supplyCapInUsd:""};const{totalSupplyNumber:s,maxSupplyCapNumber:o,remainingSupplyCapInUsd:i}=n,l=Number(a.value||"0"),c=s+l>o,d=te({value:i,maximumFractionDigits:0,minimumFractionDigits:0});return{isMaxSupplyCapReached:c,supplyCapInUsd:d}},bA=()=>{const e=A(),[{slippage:t,minSlippage:n,isMaxSlippageLoading:a}]=Q(),s=t==="auto",o=il(),[i]=P(),{address:l,chainId:c}=b(),{entryFee:d}=Pn({address:l,chainId:c}),{minDepositUSD:p}=Va(l,c),m=tl(),y=ul(),w=Wt(),f=p?te({value:p,minimumFractionDigits:0}):"",g=Bt(s?n??0:t),v=Ii({tradingType:"deposit",slippage:t,minSlippage:n}),S=g===W.DEFAULT?e.depositSlippageWarning:e.highSlippageWarning,I=Ge({value:new T(o).shiftedBy(-O).toFixed(),decimals:4});return{projectedEarnings:m,themeType:g,slippageTooltipText:S,isMaxSlippageLoading:a,slippagePlaceholder:v,minReceive:`${I} ${i.symbol.toUpperCase()}`,entryFee:d,entryFeeTooltipText:e.entryFeeExplanation,minDeposit:f,lockTime:y,showMinimumReceivedAmount:w}},cs=({className:e})=>{const{value:t,isLoading:n}=Hi();return r.jsxs("div",{className:C("dtw-flex dtw-h-[var(--panel-icon-secondary-size)] dtw-justify-end dtw-gap-x-2",e),children:[n&&r.jsx(ke,{className:"dtw-stroke-[color:var(--panel-accent-from-color)] dtw-h-[var(--panel-icon-secondary-size)] dtw-w-[var(--panel-icon-secondary-size)]"}),r.jsx("p",{className:C("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})]})},vA=()=>{const e=A(),{projectedEarnings:{yearlyEarnings:t,dailyEarnings:n,showEarnings:a},slippageTooltipText:s,slippagePlaceholder:o,isMaxSlippageLoading:i,minReceive:l,themeType:c,entryFee:d,entryFeeTooltipText:p,minDeposit:m,lockTime:y,showMinimumReceivedAmount:w}=bA(),f=a?[{tooltipText:e.projectedYearlyEarningsTooltip,label:e.yearlyEarnings,value:t,emphasised:!0},{tooltipText:e.projectedDailyEarningsTooltip,label:e.dailyEarnings,value:n,emphasised:!0}]:[],g=u.useMemo(()=>{const v=[{tooltipText:e.exchangeRate,label:e.rate,value:r.jsx(cs,{})},{tooltipText:s,label:e.maxSlippage,value:r.jsxs("div",{className:"dtw-flex dtw-gap-1",children:[i&&r.jsx(ke,{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)]"}),r.jsxs("span",{className:C({"dtw-text-[color:var(--panel-loading-content-color)]":i}),children:[o,"%"]})]})}];return w&&v.push({tooltipText:e.minReceiveAmount,label:e.minReceived,value:l}),v.push({tooltipText:p,label:e.entryFee,value:d}),m&&v.push({tooltipText:e.minDepositUsd,label:e.minDeposit,value:m}),v.push({tooltipText:e.tokensLockTime.replace("{lockTime}",y),label:e.cooldown,value:y}),v},[s,e.maxSlippage,e.entryFee,e.minReceiveAmount,e.minReceived,e.minDepositUsd,e.minDeposit,e.exchangeRate,e.rate,e.tokensLockTime,e.cooldown,i,o,w,p,d,m,l,y]);return r.jsx(Ja,{staticItems:f,collapseItems:g,themeType:c})},xA=({children:e})=>{const{DepositMetaInfo:t,MaxSupplyReachedAlert:n}=L(),{isMaxSupplyCapReached:a,supplyCapInUsd:s}=TA();return r.jsxs(q.Meta,{children:[a&&!!n&&r.jsx(n,{supplyCapInUsd:s}),r.jsx(vA,{}),t&&r.jsx(t,{}),r.jsx("div",{className:"dtw-sticky dtw-bottom-0 dtw-bg-[var(--panel-meta-action-panel-bg)]",children:e})]})},AA=()=>{sx(),rx()},SA=()=>{const{ActionButton:e=Y}=L(),t=A(),{status:n}=E.useConnect(),{onConnect:a}=Ka();return r.jsx(e,{onClick:a,className:"dtw-whitespace-nowrap dtw-text-sm",loading:n==="pending",children:t.connectWallet})},CA=()=>{const{ActionButton:e=Y}=L(),{switchNetwork:t}=Ce(),{chainId:n}=b(),a=A(),s=()=>{t?.({chainId:n})};return r.jsx(e,{onClick:s,children:a.switchNetwork})},Tl=()=>{const{account:e}=B(),{chainId:t}=Ce(),n=b();return{isDisconnected:!e,isWrongNetwork:t!==n.chainId}},ds=({children:e})=>{const{isDisconnected:t,isWrongNetwork:n}=Tl();return t?r.jsx(SA,{}):n?r.jsx(CA,{}):e},EA=({onClick:e,tooltipText:t,disabled:n})=>{const[a,s]=u.useState(!1),o=()=>{e(),s(!0)};return u.useEffect(()=>{if(!a)return;const i=setTimeout(()=>{s(!1)},wa);return()=>clearTimeout(i)},[a]),{disabled:n||a,tooltipText:t,handleClick:o}},bl=e=>{const{disabled:t,tooltipText:n,handleClick:a}=EA(e);return r.jsx(Ha,{text:n,children:r.jsx(pn,{Icon:Se.ArrowPathIcon,onClick:a,disabled:t,containerClassName:"!dtw-self-center",className:C("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})})})},IA=()=>{const{refetch:e,isFetched:t}=Mn(),{invalidateTradingQueries:n}=Nn();return{handleSwapQuoteReload:()=>{n(),e()},disabled:!t}},_A=()=>{const e=A(),{handleSwapQuoteReload:t,disabled:n}=IA();return r.jsx(bl,{tooltipText:e.refreshSwapQuoteTooltip,onClick:t,disabled:n})},DA=()=>{const{refetch:e,isFetched:t}=yt(),{invalidateTradingQueries:n}=Nn();return{handleSwapQuoteReload:()=>{n(),e()},disabled:!t}},NA=()=>{const e=A(),{handleSwapQuoteReload:t,disabled:n}=DA();return r.jsx(bl,{tooltipText:e.refreshSwapQuoteTooltip,onClick:t,disabled:n})},OA=()=>Oe()?r.jsx(_A,{}):r.jsx(NA,{}),vl=({children:e,...t})=>{const{ActionButton:n=Y}=L(),{openLimitSellOverlay:a,displayLimitSellOverlay:s}=Jb();return s?r.jsx(n,{...t,onClick:a,children:e}):null},xl=({children:e,...t})=>{const{ActionButton:n=Y}=L(),{onOpenNotificationsSettings:a}=Ka();return a?r.jsx(n,{...t,onClick:a,children:e}):null},PA=()=>{const{address:e,symbol:t}=b();return{handleAddToWallet:u.useCallback(()=>{id({address:e,symbol:t,decimals:O,image:Ya(t)})},[e,t])}},kA=()=>{const e=A(),{handleAddToWallet:t}=PA();return r.jsx("button",{type:"button",onClick:t,className:"dtw-underline dtw-text-[color:var(--panel-accent-from-color)] hover:dtw-opacity-80",children:e.addToWallet})},RA=()=>{const e=A(),t=ie(),{symbol:n}=b(),[a]=N(),[s]=P(),[,o]=Oo(),{isCompleteWithdrawStep:i}=Re();return{handleClick:u.useCallback(()=>{o({type:"withdraw",sendTokenSymbol:n,receiveTokenSymbol:s.symbol,...!i&&{sendTokenAmount:a.value},...s.value&&{receiveTokenAmount:s.value}}),t({type:"MERGE_OVERLAY",payload:{type:$.WITHDRAW_STEPPER,isOpen:!0}})},[t,o,n,a.value,s.symbol,s.value,i]),label:i?e.swapAction:e.sellNow}},Al=()=>{const{ActionButton:e=Y}=L(),{handleClick:t,label:n}=RA();return r.jsx(e,{onClick:t,children:n})},LA=()=>{AA();const{isGeoBlocked:e,isSanctioned:t}=G(),{GeoBlockAlert:n,SanctionedAlert:a,CustomDepositMeta:s}=L(),o=e||t,i=[{Component:n,value:e,key:"geo-block"},{Component:a,value:t,key:"sanctioned"}].filter(({value:l})=>l);return r.jsxs(r.Fragment,{children:[r.jsx(q.InputGroup,{children:r.jsx(fA,{})}),s&&r.jsx(s,{}),r.jsx(xA,{children:o?i.map(({Component:l,key:c})=>l&&r.jsx(l,{},c)):r.jsx(r.Fragment,{children:r.jsx(ds,{children:r.jsx(aA,{})})})})]})},MA=()=>r.jsx(q.Panel,{children:r.jsx(LA,{})}),jA=e=>Object.keys($).some(t=>t===e),BA=({children:e})=>{const t=Ri();let n=null;return u.Children.forEach(e,a=>{if(u.isValidElement(a)){const s=a.props.type;jA(s)&&t[s]&&t[s].isOpen&&(n=a)}}),n},$A=({type:e})=>{const t=A(),{DepositTermsOfUse:n,ActionButton:a=Y}=L(),{handleReject:s,handleConfirm:o,isPending:i}=de({type:e});return r.jsxs(q.Overlay,{className:"dtw-justify-between dtw-gap-y-1 dtw-overflow-y-auto theme-scrollbar",children:[r.jsxs("div",{className:"dtw-flex dtw-gap-1 dtw-items-center dtw-text-warning",children:[r.jsx(se.ExclamationCircleIcon,{className:"dtw-h-5 dtw-w-5"}),r.jsx("p",{children:t.termsOfUse})]}),r.jsxs("div",{className:"dtw-flex dtw-flex-col dtw-gap-2",children:[r.jsxs("p",{className:"dtw-self-start dtw-text-sm",children:[t.termOfUseDepositListTitle,":"]}),r.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:[r.jsx("li",{children:t.termOfUseDepositAssetSlippage}),r.jsx("li",{children:t.termOfUseDepositBugs}),r.jsx("li",{children:t.termOfUseDepositDowntime}),r.jsx("li",{children:t.termOfUseDepositAuditRisk})]}),n&&r.jsx(n,{})]}),r.jsxs("div",{className:"dtw-flex dtw-flex-col dtw-gap-2 dtw-w-full",children:[r.jsx(a,{highlighted:!1,onClick:s,children:t.back}),r.jsx(a,{onClick:o,disabled:i,loading:i,children:r.jsx("span",{children:i?t.confirmInWallet:t.termOfUseDepositAccept})})]})]})},FA=({type:e})=>{const t=A(),{ActionButton:n=Y}=L(),{handleReject:a,handleConfirm:s}=de({type:e});return r.jsxs(q.Overlay,{className:"dtw-justify-between dtw-gap-y-1",children:[r.jsxs("div",{className:"dtw-flex dtw-gap-1 dtw-items-center dtw-text-warning",children:[r.jsx(se.ExclamationCircleIcon,{className:"dtw-h-5 dtw-w-5"}),r.jsx("p",{children:t.highSlippage})]}),r.jsx("p",{className:"dtw-text-sm",children:t.responsibleHighSlippage}),r.jsxs("p",{className:"dtw-text-sm dtw-self-start",children:[t.highSlippageListTitle,":"]}),r.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:[r.jsx("li",{children:t.termOfUseDepositAssetSlippage}),r.jsx("li",{children:t.termOfUseDepositBugs}),r.jsx("li",{children:t.termOfUseDepositDowntime}),r.jsx("li",{children:t.termOfUseDepositAuditRisk})]}),r.jsxs("div",{className:"dtw-flex dtw-flex-col dtw-gap-2 dtw-w-full",children:[r.jsx(n,{highlighted:!1,onClick:a,children:t.back}),r.jsx(n,{onClick:s,children:t.confirm})]})]})},WA=({token:e,onSelect:t})=>({onClick:()=>{t(e)}}),UA=({token:e,onSelect:t})=>{const{onClick:n}=WA({token:e,onSelect:t});return r.jsxs("div",{className:"dtw-space-y-3 dtw-rounded-xl dtw-py-3 dtw-pl-4 dtw-pr-3",onClick:n,children:[r.jsx($t,{symbol:e.symbol,iconSymbols:[e.symbol],size:"xl",CustomIcon:r.jsx(an.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"}),r.jsx(wl,{className:"dtw-pt-2",showFraction:!1,showAllAsset:!0})]})},zA=({token:e,onSelect:t,isActive:n,onClose:a})=>{const s=he({symbol:e.symbol,address:e.address}),{defaultPrecision:o}=G();return{formattedBalance:new T.BigNumber(s).toFixed(o,T.BigNumber.ROUND_DOWN),onClick:()=>{if(n){a();return}t(e)}}},Sl=({token:e,onSelect:t,onClose:n,isActive:a=!1})=>{const{onClick:s,formattedBalance:o}=zA({token:e,onSelect:t,onClose:n,isActive:a});return r.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:[r.jsx($t,{symbol:e.symbol,iconSymbols:[e.symbol],size:"xl",symbolClasses:C("group-hover:dtw-opacity-100 dtw-text-sm dtw-font-medium",{"dtw-opacity-100 sm:dtw-opacity-80":!a,"dtw-opacity-100":a}),className:C("group-hover:dtw-opacity-100",{"dtw-opacity-100 sm:dtw-opacity-50":!a,"dtw-opacity-100":a})}),r.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:[a&&r.jsx(an.CheckIcon,{className:"dtw-w-4 dtw-self-end dtw-text-themeGreen"}),r.jsxs("div",{children:[r.jsx("span",{className:"dtw-mr-1 dtw-text-xs",children:e.symbol}),o]})]})]})},HA=[],GA=()=>{const e=b(),[t]=we(),[n,a]=N(),[s,o]=P(),{data:i}=qa(e),l=jn(),c=i?HA:e.withdrawParams.customTokens;return u.useMemo(()=>({tokens:t==="deposit"?l:c,updater:t==="deposit"?a:o,activeTokens:[n,s]}),[t,l,c,a,o,n,s])},VA=({searchQuery:e,type:t})=>{const[{isMultiAssetWithdrawalEnabled:n}]=Q(),{isCompleteWithdrawStep:a}=Re(),s=Rt(),[o]=we(),{handleReject:i}=de({type:t}),{tokens:l,updater:c,activeTokens:d}=GA(),p=u.useMemo(()=>e?l.filter(({symbol:y})=>y.toLowerCase().includes(e)):l,[e,l]),m=u.useCallback(({address:y,value:w,decimals:f,symbol:g})=>{c({address:y,value:w,decimals:f,symbol:g}),i()},[c,i]);return{tokenList:p,activeTokens:d,onSelect:m,onClose:i,showMultiAssetWithdrawalOption:n&&o==="withdraw"&&!s&&!a}},qA=({type:e,searchQuery:t})=>{const n=A(),{tokenList:a,activeTokens:s,onSelect:o,showMultiAssetWithdrawalOption:i,onClose:l}=VA({type:e,searchQuery:t});return r.jsxs(q.Overlay,{onClose:l,centered:!1,className:"dtw-gap-[var(--panel-gap)]",children:[r.jsx("span",{className:"dtw-text-center dtw-text-[length:var(--panel-font-size-sm)] dtw-font-[var(--panel-font-weight-medium)]",children:n.selectToken}),r.jsxs("ul",{className:"dtw-grid dtw-gap-[calc(var(--panel-gap) * 0.5)] dtw-overflow-y-auto theme-scrollbar",children:[a.map(c=>{const d=s.some(({address:p,symbol:m})=>p===c.address&&m===c.symbol);return r.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:r.jsx(Sl,{token:c,onSelect:o,isActive:d,onClose:l})},`${c.address}_${c.symbol}`)}),i&&r.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:r.jsx(UA,{token:sn,onSelect:o})})]})]})},YA=({children:e,chainId:t})=>{const{chainConfig:n}=G(),{Image:a=Fi}=L(),s=n[t]?.iconPath,o=n[t]?.name;return r.jsxs("div",{children:[r.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&&r.jsx("div",{className:"dtw-h-6 dtw-w-6",children:r.jsx(a,{className:"dtw-h-full dtw-w-full dtw-rounded-full dtw-object-contain",src:s,alt:"chain icon",width:100,height:100})}),r.jsx("p",{className:"dtw-whitespace-nowrap dtw-text-sm",children:o??t})]}),e]})},ua=(e,t)=>e.address in t?{balanceInUsd:t[e.address]?.balanceInUsd??te({value:0}),balanceInUsdNumber:t[e.address]?.balanceInUsdNumber??0}:{balanceInUsd:te({value:0}),balanceInUsdNumber:0},KA=e=>(t,n)=>ua(n,e).balanceInUsdNumber-ua(t,e).balanceInUsdNumber,QA=({searchQuery:e,type:t})=>{const n=Ti(),a=at(),s=b(),{handleReject:o}=de({type:t}),[i]=we(),l=N()[1],c=P()[1],d=_o()[1],p=u.useCallback(({address:y,value:w,decimals:f,symbol:g})=>{(i==="deposit"?c:l)({address:y,value:w,decimals:f,symbol:g}),d(y),o()},[i,l,c,o,d]);return{poolList:u.useMemo(()=>Array.from(new Set(a.map(({chainId:y})=>y))).map(y=>({chainId:y,configs:[...a.filter(w=>w.chainId===y&&!w.deprecated).map(w=>({...w,...ua(w,n),isActive:s.address===w.address})).filter(({symbol:w})=>e?w.toLowerCase().includes(e):!0).slice().sort(KA(n))]})),[e,n,a,s]),onClose:o,onSelect:p}},XA=({type:e,searchQuery:t})=>{const n=A(),{poolList:a,onClose:s,onSelect:o}=QA({type:e,searchQuery:t});return r.jsxs(q.Overlay,{onClose:s,centered:!1,className:"dtw-gap-[var(--panel-gap)]",children:[r.jsx("span",{className:"dtw-text-center dtw-text-[length:var(--panel-font-size-sm)] dtw-font-[var(--panel-font-weight-medium)]",children:n.selectToken}),r.jsx("div",{className:"dtw-grid dtw-gap-[calc(var(--panel-gap) * 0.5)] dtw-overflow-y-auto theme-scrollbar",children:a.map(({chainId:i,configs:l})=>r.jsx(YA,{chainId:i,children:l.map(({isActive:c,symbol:d,address:p})=>r.jsx("div",{className:C("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:r.jsx(Sl,{token:{symbol:d,address:p,value:"",decimals:O},onSelect:o,isActive:c,onClose:s})},`${p}_${d}`))},i))})]})},ZA=({type:e})=>{const{address:t,symbol:n,chainId:a}=b(),[{link:s,sendTokens:o},i]=K(),{handleReject:l}=de({type:e}),c=o?.[0],d=wo(s),p=ue({address:t,chainId:a});return{onClose:u.useCallback(()=>{i({isOpen:!1}),l()},[i,l]),link:s,vaultSymbol:n,paidToken:c,txHash:d,vaultTokenPrice:te({value:p})}},JA=e=>{const t=A(),{link:n,onClose:a,vaultSymbol:s,paidToken:o,txHash:i,vaultTokenPrice:l}=ZA(e),{ActionButton:c=Y}=L(),d=Ni();return r.jsxs(q.Overlay,{className:"dtw-justify-between dtw-gap-y-4",noPadding:!0,children:[r.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:[r.jsxs("div",{className:"dtw-flex dtw-flex-col dtw-items-center dtw-text-[color:var(--panel-success-content-color)] dtw-mb-2",children:[r.jsx(Se.CheckIcon,{className:"dtw-h-16 dtw-w-16 lg:dtw-h-24 lg:dtw-w-24 dtw-shrink-0"}),"Success"]}),r.jsx(je,{}),r.jsxs("div",{className:"dtw-flex dtw-items-center dtw-justify-between dtw-gap-2 dtw-w-full",children:[r.jsx("p",{children:t.orderingLabel}),r.jsxs("div",{className:"dtw-flex dtw-items-center dtw-gap-2 dtw-text-[color:var(--panel-secondary-content-color)]",children:[r.jsx("span",{children:s}),r.jsx(kA,{})]})]}),r.jsx(je,{}),o&&r.jsxs(r.Fragment,{children:[r.jsxs("div",{className:"dtw-flex dtw-items-center dtw-justify-between dtw-gap-2 dtw-w-full",children:[r.jsx("p",{children:t.paidLabel}),r.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:[o.value?Ge({value:+o.value,decimals:4}):null," ",o.symbol]})]}),r.jsx(je,{})]}),r.jsxs("div",{className:"dtw-flex dtw-items-center dtw-justify-between dtw-gap-2 dtw-w-full",children:[r.jsx("p",{children:t.priceLabel}),r.jsx("p",{className:"dtw-text-[color:var(--panel-secondary-content-color)]",children:l})]}),n&&r.jsxs(r.Fragment,{children:[r.jsx(je,{}),r.jsxs("div",{className:"dtw-flex dtw-items-center dtw-justify-between dtw-gap-2 dtw-w-full",children:[r.jsx("p",{children:t.transactionLabel}),r.jsx(Ye,{link:n,children:i??t.explorer})]})]})]}),r.jsxs("div",{className:"dtw-flex dtw-flex-col dtw-gap-2 dtw-w-full",children:[d?r.jsx(vl,{children:t.openLimitOrderAfterBuySwitchLabel}):r.jsx(xl,{children:t.openNotificationsSettingsLabel}),r.jsx(c,{highlighted:!1,onClick:a,children:t.done})]})]})},eS=()=>{const e=A(),{LogoSpinner:t=ke}=L(),[{link:n}]=K();return r.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:[r.jsx(t,{className:"dtw-h-16 dtw-w-16 lg:dtw-h-24 lg:dtw-w-24 dtw-shrink-0"}),e.miningTx,n&&r.jsx(Ye,{link:n,className:"dtw-text-sm",iconClassName:"dtw-w-4 dtw-h-4",children:e.explorer})]})},tS=({onClose:e})=>{const t=A(),{ActionButton:n=Y}=L(),[{link:a}]=K();return r.jsxs(r.Fragment,{children:[r.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:[r.jsxs("div",{className:"dtw-flex dtw-flex-col dtw-items-center dtw-gap-2 dtw-text-[color:var(--panel-success-content-color)]",children:[r.jsx(Se.CheckIcon,{className:"dtw-h-16 dtw-w-16 lg:dtw-h-24 lg:dtw-w-24 dtw-shrink-0"}),t.createLimitSellOrder]}),a&&r.jsx(Ye,{link:a,className:"dtw-text-sm",iconClassName:"dtw-w-4 dtw-h-4",children:t.explorer})]}),r.jsxs("div",{className:"dtw-flex dtw-flex-col dtw-gap-2 dtw-w-full",children:[r.jsx(xl,{children:t.openNotificationsSettingsLabel}),r.jsx(n,{highlighted:!1,onClick:e,children:t.done})]})]})},nS=({type:e})=>{const[{status:t},n]=K(),{handleReject:a}=de({type:e}),s=t==="Mining";return{onClose:u.useCallback(()=>{n({isOpen:!1}),a()},[a,n]),isProcessing:s}},aS=e=>{const{onClose:t,isProcessing:n}=nS(e);return r.jsx(q.Overlay,{className:"dtw-justify-between dtw-gap-y-4",onClose:t,noPadding:!0,children:n?r.jsx(eS,{}):r.jsx(tS,{onClose:t})})},sS=({type:e})=>{const{statusLabel:t,status:n}=Li(),[{link:a,action:s},o]=K(),i=n=="Success",{handleReject:l}=de({type:e}),c=s==="single_withdraw"&&i,d=i&&s==="deposit",p=i&&s&&Ia.includes(s);return{title:t??n,isSuccessTx:i,link:a,onClose:()=>{o({isOpen:!1}),l()},showNextStepTip:c,displaySuccessDepositOverlay:d,displaySuccessWithdrawalOverlay:p,displayLimitOrderTransactionOverlay:s==="create_limit_sell_order",displayWithdrawLimitOrderOverlay:s==="limit_order_withdraw"}},rS=({sendTokens:e})=>{const t=A(),[n]=e??[];return n?r.jsxs("div",{className:"dtw-flex dtw-items-center dtw-gap-1 dtw-flex-wrap dtw-overflow-hidden",children:[r.jsx("span",{children:t.approveSpending}),r.jsx(We,{size:"sm",symbols:[n.symbol]}),r.jsx("span",{children:n.symbol})]}):null},oS=({receiveTokens:e})=>{const t=A(),[n]=e??[];return n?r.jsxs("div",{className:"dtw-flex dtw-flex-wrap dtw-items-center dtw-gap-1",children:[t.swapAndClaimTo," ",r.jsxs("div",{className:"dtw-flex dtw-items-center dtw-gap-1",children:[r.jsx(We,{size:"sm",symbols:[n.symbol]})," ",n.symbol]})]}):null},iS=({sendTokens:e,receiveTokens:t,action:n})=>{const a=A(),[s]=e??[],[o]=t??[];return s?r.jsxs("div",{className:"dtw-flex dtw-flex-wrap dtw-items-center dtw-gap-x-1",children:[n==="deposit"?a.pay:n==="multi_withdraw"?a.sell:a.unrollAction,r.jsxs("div",{className:"dtw-flex dtw-items-center dtw-gap-1",children:[r.jsx(We,{size:"sm",symbols:[s.symbol]})," ",s.symbol]})," ","to receive",r.jsx("div",{className:"dtw-flex dtw-items-center dtw-gap-1",children:o?r.jsxs(r.Fragment,{children:[r.jsx(We,{size:"sm",symbols:[o.symbol]})," ",o.symbol]}):r.jsx(r.Fragment,{children:n==="multi_withdraw"?a.multiAssetFractions:a.swappableAssets})})]}):null},lS=()=>{const e=A(),[{action:t,receiveTokens:n,sendTokens:a}]=K();return t==="approve"?r.jsx(rS,{sendTokens:a}):t==="swap"?r.jsx(oS,{receiveTokens:n}):t==="claim"?r.jsx(r.Fragment,{children:e.claimLabel}):t==="create_limit_sell_order"?r.jsx(r.Fragment,{children:e.createLimitSellOrder}):t==="delete_limit_order_withdraw"?r.jsx(r.Fragment,{children:e.deleteWithdrawalRequest}):r.jsx(iS,{action:t,sendTokens:a,receiveTokens:n})},cS=({type:e})=>{const[,t]=K(),{handleReject:n}=de({type:e}),[{link:a,status:s}]=K(),o=s=="Success";return{onClose:u.useCallback(()=>{t({isOpen:!1}),n()},[n,t]),link:a,isSuccessTx:o}},dS=e=>{const t=A(),{ActionButton:n=Y}=L(),{onClose:a,link:s,isSuccessTx:o}=cS(e);return o?r.jsxs(q.Overlay,{className:"dtw-justify-between dtw-gap-y-4",onClose:a,noPadding:!0,children:[r.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:[r.jsx(Se.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)]"}),r.jsx("div",{className:"dtw-text-center dtw-text-2xl dtw-font-semibold",children:t.withdrawalRequest}),r.jsx("div",{className:"dtw-text-center dtw-text-[color:var(--panel-secondary-content-color)]",children:t.expectToReceiveUsdcSoon}),s&&r.jsx(Ye,{link:s,className:"dtw-text-sm",iconClassName:"dtw-w-4 dtw-h-4",children:t.explorer})]}),r.jsx("div",{className:"dtw-flex dtw-flex-col dtw-gap-2 dtw-w-full",children:r.jsx(n,{highlighted:!1,onClick:a,children:t.done})})]}):null},pS=({type:e})=>{const{address:t,symbol:n}=b(),[{link:a,receiveTokens:s},o]=K(),{handleReject:i}=de({type:e}),l=s?.[0],c=wo(a);return{onClose:u.useCallback(()=>{o({isOpen:!1,status:"None"}),i()},[o,i]),link:a,vaultAddress:t,vaultSymbol:n,receivedToken:l,txHash:c}},uS=e=>{const t=A(),{link:n,onClose:a,vaultSymbol:s,receivedToken:o,txHash:i}=pS(e),{ActionButton:l=Y}=L();return r.jsxs(q.Overlay,{className:"dtw-justify-between dtw-gap-y-4",noPadding:!0,children:[r.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:[r.jsxs("div",{className:"dtw-flex dtw-flex-col dtw-items-center dtw-text-[color:var(--panel-success-content-color)] dtw-mb-2",children:[r.jsx(Se.CheckIcon,{className:"dtw-h-16 dtw-w-16 lg:dtw-h-24 lg:dtw-w-24 dtw-shrink-0"}),"Success"]}),r.jsx(je,{}),r.jsxs("div",{className:"dtw-flex dtw-items-center dtw-justify-between dtw-gap-2 dtw-w-full",children:[r.jsx("p",{children:t.soldLabel}),r.jsx("div",{className:"dtw-text-[color:var(--panel-secondary-content-color)]",children:s})]}),o&&r.jsxs(r.Fragment,{children:[r.jsx(je,{}),r.jsxs("div",{className:"dtw-flex dtw-items-center dtw-justify-between dtw-gap-2 dtw-w-full",children:[r.jsx("p",{children:t.receivedLabel}),r.jsx("div",{className:"dtw-text-[color:var(--panel-secondary-content-color)]",children:o.symbol})]})]}),n&&r.jsxs(r.Fragment,{children:[r.jsx(je,{}),r.jsxs("div",{className:"dtw-flex dtw-items-center dtw-justify-between dtw-gap-2 dtw-w-full",children:[r.jsx("p",{children:t.transactionLabel}),r.jsx(Ye,{link:n,children:i??t.explorer})]})]})]}),r.jsx(l,{highlighted:!1,onClick:a,children:t.done})]})},mS=({type:e})=>{const{link:t,title:n,onClose:a,isSuccessTx:s,showNextStepTip:o,displaySuccessDepositOverlay:i,displaySuccessWithdrawalOverlay:l,displayLimitOrderTransactionOverlay:c,displayWithdrawLimitOrderOverlay:d}=sS({type:e}),{LogoSpinner:p=ke}=L(),m=A();return c?r.jsx(aS,{type:e}):i?r.jsx(JA,{type:e}):l?r.jsx(uS,{type:e}):d?r.jsx(dS,{type:e}):r.jsxs(q.Notification,{onClose:a,children:[r.jsxs("div",{className:"dtw-flex dtw-items-center dtw-gap-1.5",children:[r.jsx("span",{className:"dtw-font-semibold dtw-drop-shadow-md",children:n}),s?r.jsx(se.CheckCircleIcon,{className:"dtw-h-6 dtw-w-6 dtw-text-[color:var(--panel-success-content-color)]"}):r.jsx(p,{className:"dtw-h-5 dtw-w-5 "})]}),r.jsx("div",{className:"dtw-font-light dtw-text-sm dtw-max-h-16 dtw-overflow-y-auto theme-scrollbar dtw-break-all",children:r.jsx(lS,{})}),t&&r.jsx(Ye,{link:t,className:"dtw-text-sm",iconClassName:"dtw-w-4 dtw-h-4",children:m.explorer}),o&&r.jsx("p",{className:"dtw-text-xs",children:m.proceedWithNextStep})]})},ar=!0,yS=()=>{const{isWrongNetwork:e}=Tl(),t=qi({isClaim:ar}),{disabled:n,label:a,handleTrade:s}=Xi({withdraw:t,isClaim:ar}),o=is("claim");return{disabled:n,label:a,handleTrade:s,isWrongNetwork:e,isLoading:o}},Cl=({highlighted:e,className:t,onClick:n})=>{const{ActionButton:a=Y}=L(),{handleTrade:s,disabled:o,label:i,isWrongNetwork:l,isLoading:c}=yS(),d=()=>{n?.(),s()};return l?null:r.jsx(a,{onClick:d,disabled:o,highlighted:e,className:t,loading:c,children:i})},wS=({error:e,onCancel:t})=>{const n=A(),{ActionButton:a=Y}=L();return r.jsxs(q.Overlay,{className:"dtw-justify-between dtw-gap-y-4",children:[r.jsx(a,{highlighted:!1,onClick:t,className:"!dtw-p-1 !dtw-w-24 dtw-self-start",children:n.cancel}),r.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:[r.jsx(se.FaceFrownIcon,{className:"dtw-h-24 dtw-w-24 dtw-text-[color:var(--panel-error-overlay-icon-color)]"}),r.jsxs("div",{className:"dtw-flex dtw-flex-col dtw-items-center dtw-gap-2 dtw-text-center",children:[r.jsx("p",{className:"dtw-text-lg dtw-font-medium",children:e.title}),e.hint&&r.jsx("p",{className:"dtw-text-sm dtw-text-[color:var(--panel-secondary-content-color)]",children:e.hint})]})]}),r.jsx(Cl,{onClick:t})]})},hS=ve.filter(({type:e})=>e==="error").map(({name:e})=>e),gS=({type:e})=>{const{handleReject:t,meta:n}=de({type:e}),{isCompleteWithdrawStep:a}=Re(),s=Oe(),o=a&&!s;return{handleReject:t,error:uo({errorMessage:n?.error,abiErrors:hS}),showCompleteWithdrawErrorOverlay:o}},fS=e=>{const{handleReject:t,error:n,showCompleteWithdrawErrorOverlay:a}=gS(e);return n?a?r.jsx(wS,{error:n,onCancel:t}):r.jsxs(q.Notification,{onClose:t,children:[r.jsx("p",{className:"dtw-text-sm",children:n.title}),n.hint&&r.jsx("p",{className:"dtw-text-xs",children:n.hint})]}):null},TS=["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)]"],bS=["!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))]"],Ut=({children:e,onClick:t,highlighted:n=!0,disabled:a=!1,className:s,type:o,loading:i=!1})=>r.jsxs("button",{className:C("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",{[bS.join(" ")]:n,[TS.join(" ")]:!n,"dtw-flex dtw-items-center dtw-justify-center dtw-gap-1":i},s),onClick:t,disabled:a||i,type:o,children:[i&&r.jsx(ke,{className:"dtw-h-4 dtw-w-4 dtw-stroke-[var(--limit-order-accent-content-color)]"}),e]}),El={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",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:"Set limit orders",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."},Il=u.createContext(El),_l=({children:e,config:t})=>{const n=u.useMemo(()=>({...El,...t}),[t]);return r.jsx(Il.Provider,{value:n,children:e})},ge=()=>{const e=u.useContext(Il);if(!e)throw new Error("TranslationContext is used out of Provider");return e},vS=({symbol:e,price:t})=>{const n=ge();return r.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:[r.jsx("span",{className:"dtw-text-xs",children:n.currentPrice.replace("{symbol}",e)}),r.jsx("span",{className:"dtw-font-[var(--limit-order-font-weight-bold)]",children:t})]})},xS=100,AS=3,SS=({inputValue:e="",onInputChange:t,autoFocus:n=!1})=>{const[a,s]=u.useState(e),o=u.useRef(null);return{inputRef:o,value:a,autoFocus:n,onContainerClick:()=>{o.current?.focus()},onInputChange:c=>{const d=c.target.value.replace(/[^0-9]/g,"");if(d.length>AS)return;const p=Number(d);!isNaN(p)&&p<=xS&&(s(d),t?.(d))}}},CS=e=>{const{disabled:t,placeholder:n,suffix:a="%",postfix:s}=e,{inputRef:o,autoFocus:i,value:l,onContainerClick:c,onInputChange:d}=SS(e);return r.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:r.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:[a?r.jsx("span",{className:"dtw-font-light dtw-whitespace-nowrap dtw-text-[color:var(--limit-order-secondary-content-color)]",children:a}):null,r.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:o,autoFocus:i,type:"text",min:0,value:l,onChange:d,disabled:t,placeholder:n}),r.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})]})})},ES=7,ma=4,sr=e=>{if(!e)return"";const[t="",n]=e.replace(/,/g,"").split("."),a=n&&n.length>ma?n.slice(0,ma):n,s=t.replace(/\B(?=(\d{3})+(?!\d))/g,",");return a!==void 0?`${s}.${a}`:s},IS=({inputValue:e="",onInputChange:t,autoFocus:n=!1})=>{const[a,s]=u.useState(sr(e)),o=u.useRef(null);return{inputRef:o,value:a,autoFocus:n,onContainerClick:()=>{o.current?.focus()},onInputChange:c=>{const d=c.target.value.replace(/[^\d.]/g,"").replace(/(\..*)\./g,"$1"),[p="",m=""]=d.split(".");t&&p.length<=ES&&m.length<=ma&&/^\d*(\.\d*)?$/.test(d)&&(s(sr(d)),t(d))}}},rr=e=>{const{disabled:t,placeholder:n,percentage:a,suffix:s}=e,{inputRef:o,autoFocus:i,value:l,onContainerClick:c,onInputChange:d}=IS(e);return r.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:r.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.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:"$"}),r.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:o,autoFocus:i,type:"text",min:0,value:l,onChange:d,disabled:t,placeholder:n}),s?r.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,a?r.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:a}):null]})})},Yn=({title:e,subtitle:t,defaultEnabled:n,onDisable:a,children:s})=>{const[o,i]=u.useState(n),l=c=>{i(c),c||a()};return r.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))]",children:[r.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:[r.jsxs("div",{className:"dtw-flex dtw-flex-col dtw-gap-0.5 dtw-text-[color:var(--limit-order-secondary-content-color)]",children:[r.jsx("span",{children:e}),r.jsx("span",{className:"dtw-text-[length:var(--limit-order-font-size-xs)]",children:t})]}),r.jsx(kn,{onChange:l,defaultEnabled:o})]}),o&&s]})},Dl={upperLimitPrice:"",lowerLimitPrice:"",sellPercentage:"",termsAccepted:!1},_S=(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:Dl};case"SET_PENDING_TRANSACTION":return{...e,pendingTransaction:t.payload};default:return e}};function _e(){}const Nl=e=>({vaultAddress:e.vaultAddress,vaultChainId:e.vaultChainId,isModalOpen:e.isModalOpen??!1,form:{...Dl,...e.form},pendingTransaction:null,pricingAsset:e.pricingAsset,minAmountInUsd:e.minAmountInUsd}),Ol=u.createContext(Nl({vaultAddress:_,vaultChainId:0,pricingAsset:{address:_,symbol:""},minAmountInUsd:za,form:{lowerLimitPrice:"",upperLimitPrice:""}})),Pl=u.createContext({setIsModalOpen:_e,setUpperLimitPrice:_e,setLowerLimitPrice:_e,setTermsAccepted:_e,setSellPercentage:_e,reset:_e,setPendingTransaction:_e,onLog:_e}),kl=({children:e,initialState:t,actions:n})=>{const[a,s]=u.useReducer(_S,Nl(t)),o=u.useCallback(w=>{s({type:"SET_UPPER_LIMIT_PRICE",payload:w})},[]),i=u.useCallback(w=>{s({type:"SET_LOWER_LIMIT_PRICE",payload:w})},[]),l=u.useCallback(w=>{s({type:"SET_IS_MODAL_OPEN",payload:w})},[]),c=u.useCallback(w=>{s({type:"SET_TERMS_ACCEPTED",payload:w})},[]),d=u.useCallback(w=>{s({type:"SET_SELL_PERCENTAGE",payload:w})},[]),p=u.useCallback(()=>{s({type:"RESET"})},[]),m=u.useCallback(w=>{s({type:"SET_PENDING_TRANSACTION",payload:w})},[]),y=u.useMemo(()=>({setUpperLimitPrice:o,setIsModalOpen:l,setLowerLimitPrice:i,setTermsAccepted:c,setSellPercentage:d,reset:p,setPendingTransaction:m,onTransactionSuccess:n?.onTransactionSuccess,onTransactionError:n?.onTransactionError,onTransactionSettled:n?.onTransactionSettled,onLog:n?.onLog}),[o,l,i,c,d,p,m,n?.onTransactionSuccess,n?.onTransactionError,n?.onTransactionSettled,n?.onLog]);return r.jsx(Pl.Provider,{value:y,children:r.jsx(Ol.Provider,{value:a,children:e})})},fe=()=>u.useContext(Ol),zt=()=>u.useContext(Pl),ps=()=>{const{account:e}=B(),{vaultAddress:t,vaultChainId:n,form:{sellPercentage:a}}=fe(),{data:s}=Oa({address:e,token:t,chainId:n});return u.useMemo(()=>{const o=a||li;if(!s)return{raw:"0",formatted:"0",symbol:""};const i=new T(s.value).times(o).dividedBy(100).toFixed(0,T.ROUND_DOWN),l=Ge({value:new T(i).shiftedBy(-O).toFixed(),decimals:2});return{raw:i,formatted:l,symbol:s.symbol}},[s,a])},Rl=({userAddress:e,vaultAddress:t})=>{const n=D.encodePacked(["address","address"],[e,t]);return D.keccak256(n)},DS=({price:e,markPrice:t})=>new T(e).gt(t)?`+${Ot((+e/+t-1)*100,2)}`:"",NS=({price:e,markPrice:t})=>new T(e).lt(t)?`-${Ot((1-+e/+t)*100,2)}`:"",OS=({error:e,translationMap:t})=>e?e.title===Fr?{...e,hint:t.invalidLimitOrderPriceError}:e:null,PS=()=>{const e=ge(),{form:{upperLimitPrice:t,lowerLimitPrice:n,sellPercentage:a,termsAccepted:s},pricingAsset:o,vaultChainId:i}=fe(),{setUpperLimitPrice:l,setLowerLimitPrice:c,setSellPercentage:d,setTermsAccepted:p}=zt(),m=ce({address:o.address,chainId:i,refetchInterval:ze}),y=Number(m)<AT?ST:CT,{formatted:w,symbol:f}=ps(),g=DS({price:t,markPrice:m}),v=NS({price:n,markPrice:m}),S=u.useCallback(()=>{l("")},[l]),I=u.useCallback(()=>{c("")},[c]),k=u.useCallback(()=>{d("")},[d]),M=`${o.symbol} ${e.price}`;return{upperLimitPrice:t,lowerLimitPrice:n,sellPercentage:a,setUpperLimitPrice:l,setLowerLimitPrice:c,setSellPercentage:d,onDisableUpperLimitPrice:S,onDisableLowerLimitPrice:I,onDisableSellPercentage:k,termsAccepted:s,setTermsAccepted:p,pricingAssetPrice:m==="0"?null:te({value:m,maximumFractionDigits:y}),upperLimitPriceDifference:g,lowerLimitPriceDifference:v,pricingAssetSymbol:o.symbol,inputSuffix:M,coveredVaultAmount:w,vaultSymbol:f}},kS=["termsPoint1","termsPoint2","termsPoint3","termsPoint4","termsPoint5"],RS=({className:e})=>{const t=ge();return r.jsx("div",{className:C("dtw-w-full dtw-text-[length:var(--limit-order-font-size-xs)] dtw-max-h-[120px] dtw-overflow-y-auto theme-scrollbar dtw-text-[color:var(--limit-order-secondary-content-color)]",e),children:r.jsx("ol",{className:"dtw-list-decimal dtw-list-inside dtw-space-y-2",children:kS.map((n,a)=>r.jsxs("li",{className:"dtw-text-pretty",children:[a+1,". ",t[n]]},n))})})},Ll=({className:e,checked:t,label:n,labelClassName:a,...s})=>r.jsxs(R.Field,{className:"dtw-flex dtw-items-center dtw-gap-2",children:[r.jsx(R.Checkbox,{...s,checked:t,className:C("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:r.jsx(Se.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&&r.jsx(R.Label,{className:C("dtw-select-none",a),children:n})]}),LS=()=>{const e=ge(),{upperLimitPrice:t,lowerLimitPrice:n,setUpperLimitPrice:a,setLowerLimitPrice:s,onDisableUpperLimitPrice:o,onDisableLowerLimitPrice:i,setTermsAccepted:l,termsAccepted:c,pricingAssetPrice:d,upperLimitPriceDifference:p,lowerLimitPriceDifference:m,pricingAssetSymbol:y,inputSuffix:w,sellPercentage:f,setSellPercentage:g,onDisableSellPercentage:v,coveredVaultAmount:S,vaultSymbol:I}=PS();return r.jsxs(r.Fragment,{children:[r.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:[r.jsx(vS,{symbol:y,price:d}),r.jsx(Yn,{title:e.upperLimitLabel,subtitle:e.upperLimitSubtitle,defaultEnabled:!0,onDisable:o,children:r.jsx(rr,{inputValue:t,onInputChange:a,percentage:p,symbol:y,suffix:w})}),r.jsx(Yn,{title:e.lowerLimitLabel,subtitle:e.lowerLimitSubtitle,defaultEnabled:!!n,onDisable:i,children:r.jsx(rr,{inputValue:n,onInputChange:s,percentage:m,symbol:y,suffix:w})}),r.jsx(Yn,{title:e.partialSellLabel,subtitle:e.partialSellSubtitle,defaultEnabled:!!f,onDisable:v,children:r.jsx(CS,{inputValue:f,onInputChange:g,suffix:"%",placeholder:li,postfix:r.jsxs("div",{className:"dtw-flex dtw-flex-col dtw-items-end dtw-justify-center",children:[r.jsx("span",{className:"dtw-text-[color:var(--limit-order-primary-content-color)]",children:S}),r.jsx("span",{className:"dtw-text-[color:var(--limit-order-secondary-content-color)]",children:I})]})})})]}),r.jsx("div",{className:"dtw-mt-3 dtw-px-2 dtw-flex dtw-items-center dtw-gap-1.5",children:r.jsx(Ll,{checked:c,onChange:k=>l(k),label:e.limitOrderTerms,labelClassName:"dtw-text-[length:var(--limit-order-font-size-xs)] dtw-cursor-pointer"})}),r.jsx(RS,{className:"dtw-px-2"})]})},MS=()=>{const{account:e=_}=B(),{vaultAddress:t,vaultChainId:n}=fe(),a=z("limitOrder",n),s=ps(),{data:o}=Tn({tokenAddress:t,ownerAddress:e,spenderAddress:a,chainId:n});return o?new T(s.raw).lte(o.toString()):!1},jS=()=>{const{vaultAddress:e,vaultChainId:t,pendingTransaction:n}=fe(),{setPendingTransaction:a}=zt(),[s,o]=u.useState(!1),i=z("limitOrder",t),{send:l}=xe({contractId:"erc20",dynamicContractAddress:e,functionName:"approve",onSettled(d){a(d?{hash:d,action:"approve"}:null),o(!1)}});return{approveLimitOrder:async()=>{o(!0),l(i,Ue)},isApprovePending:s||!!n}},BS=()=>{const e=MS(),{approveLimitOrder:t,isApprovePending:n}=jS(),{form:{termsAccepted:a}}=fe();return{isApproved:e,approveLimitOrder:t,isApprovePending:n,disabled:!a}},$S=({children:e})=>{const t=ge(),{isApproved:n,approveLimitOrder:a,isApprovePending:s,disabled:o}=BS();return n?e:r.jsx(Ut,{onClick:a,loading:s,disabled:o,children:t.approve})},Ml=e=>{const{setIsModalOpen:t,reset:n,setPendingTransaction:a,onTransactionSettled:s}=zt();return u.useCallback((...o)=>{const[i]=o;if(s?.(...o),!i)return a(null);a({hash:i,action:e}),t(!1),n()},[s,a,e,t,n])},FS=([e,t,n,a,s,o])=>ee(s)?null:{takeProfitPrice:D.formatUnits(n,O),stopLossPrice:D.formatUnits(t,O),takeProfitPriceD18:n,stopLossPriceD18:t,amountD18:e,user:a,vault:s,pricingAsset:o},Ht=({chainId:e,userAddress:t,vaultAddress:n})=>E.useReadContract({address:z("limitOrder",e),abi:wn,chainId:e,functionName:Dn,args:[Rl({userAddress:t,vaultAddress:n})],query:{enabled:!ee(t)&&!ee(n),select:FS}}),WS=wn.filter(({type:e})=>e==="error").map(({name:e})=>e),US="create",zS=()=>{const e=ge(),{account:t=_}=B(),{vaultAddress:n,vaultChainId:a,form:{lowerLimitPrice:s,upperLimitPrice:o,termsAccepted:i},pricingAsset:l,pendingTransaction:c,minAmountInUsd:d}=fe(),p=ps(),{data:m}=Ht({userAddress:t,vaultAddress:n,chainId:a}),y=ue({address:n,chainId:a}),[w,f]=u.useState(null),g=Ml(US),v=!!m,{send:S}=xe({onSettled:g,contractId:"limitOrder",functionName:v?"modifyLimitOrder":"createLimitOrder"}),k=new T.BigNumber(p.formatted).multipliedBy(y??"0").gte(d),M=!i||!k,ne=!!c;return{modifyLimitOrder:async()=>{const Xe=BigInt(s?rn(s,O):0),Gt=o?BigInt(rn(o,O)):Ue,Vt=[p.raw,Xe,Gt,t,n,l.address];try{await S(Vt),f(null)}catch(ht){ht instanceof ut&&f(ht.message)}},disabled:M,error:OS({error:uo({errorMessage:w,abiErrors:WS})??null,translationMap:e}),isPending:ne,isAmountSufficient:k,minAmount:te({value:d.toString(),maximumFractionDigits:0,minimumFractionDigits:0}),isModifyTransaction:v}},HS=({disabled:e})=>{const t=ge(),{modifyLimitOrder:n,disabled:a,error:s,isPending:o,minAmount:i,isAmountSufficient:l,isModifyTransaction:c}=zS();return r.jsxs("div",{children:[s&&r.jsxs("div",{className:"dtw-mb-2 dtw-flex dtw-flex-col dtw-gap-1 dtw-text-error",children:[r.jsx("span",{className:"dtw-text-sm",children:s.title}),s.hint&&r.jsx("span",{className:"dtw-text-xs",children:s.hint})]}),!l&&r.jsx("div",{className:"dtw-mb-1 dtw-text-warning dtw-text-sm",children:t.minimumVaultBalanceRequired.replace("{amount}",i)}),r.jsx(Ut,{onClick:n,disabled:e||a,loading:o,children:c?t.modify:t.create})]})},GS="remove",VS=()=>{const{account:e=_}=B(),{vaultAddress:t,vaultChainId:n,pendingTransaction:a}=fe(),{data:s}=Ht({userAddress:e,vaultAddress:t,chainId:n}),o=Ml(GS),{send:i}=xe({onSettled:o,contractId:"limitOrder",functionName:"deleteLimitOrder"}),l=async()=>i(t),c=!!a,d=!!s?.amountD18&&!new T(s.amountD18.toString()).isZero();return{deleteLimitOrder:l,isPending:c,displayButton:d}},qS=()=>{const e=ge(),{deleteLimitOrder:t,isPending:n,displayButton:a}=VS();return a?r.jsx(Ut,{highlighted:!1,className:"!dtw-py-1",onClick:t,loading:n,children:e.delete}):null},YS=()=>{const{chainId:e,switchNetwork:t}=Ce(),{vaultChainId:n}=fe();return{isWrongNetwork:e!==n,handleNetworkSwitch:()=>{t?.({chainId:n})}}},KS=({children:e})=>{const t=ge(),{isWrongNetwork:n,handleNetworkSwitch:a}=YS();return n?r.jsx(Ut,{onClick:a,children:t.switchNetwork}):e},or=e=>{const t=e?.trim();return t?!isNaN(Number(t)):!1},QS=()=>{const{form:{lowerLimitPrice:e,upperLimitPrice:t}}=fe(),n=or(e)&&Number(e)!==0,a=or(t);return{limitOrderButtonDisabled:!n&&!a}},jl=({onClose:e,hideDeleteButton:t})=>{const n=ge(),{limitOrderButtonDisabled:a}=QS();return r.jsxs("div",{className:"dtw-flex dtw-flex-col dtw-gap-2",children:[r.jsx(LS,{}),r.jsxs(KS,{children:[r.jsx($S,{children:r.jsx(HS,{disabled:a})}),!t&&r.jsx(qS,{})]}),!!e&&r.jsx(Ut,{highlighted:!1,onClick:e,children:n.cancel})]})},Bl=({vaultAddress:e,vaultChainId:t})=>{const{account:n=_}=B(),{isFetched:a,data:s}=Ht({vaultAddress:e,chainId:t,userAddress:n}),o=s&&s.takeProfitPriceD18!==Ue?s.takeProfitPrice:"",i=s&&s.stopLossPriceD18!==BigInt(0)?s.stopLossPrice:"";return{isFetched:a,upperLimitPrice:o,lowerLimitPrice:i}},XS=[Dn,Ua,"allowance"],$l=()=>{const e=tt.useQueryClient();return u.useCallback(()=>{e.invalidateQueries({predicate:({queryKey:t})=>{const n=t[1]?.functionName;return t[0]==="readContract"&&XS.some(a=>a===n)}})},[e])},Fl=()=>{const{pendingTransaction:e,vaultChainId:t,vaultAddress:n}=fe(),{setPendingTransaction:a,onTransactionSuccess:s,onTransactionError:o,onLog:i}=zt(),l=$l(),{data:c,error:d}=E.useWaitForTransactionReceipt({hash:e?.hash??void 0,chainId:t,pollingInterval:ze});u.useEffect(()=>{c&&(e?.action==="create"&&i?.(X.CREATE_LIMIT_SELL_ORDER,{[Te.ADDRESS.NAME]:n,[Te.CHAIN_ID.NAME]:t}),l(),a(null),s?.(c.transactionHash))},[c,l,s,i,t,a,e?.action,n]),u.useEffect(()=>{d&&e&&(o?.(e.hash),a(null))},[d,o,e,a])},x={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"}},Wl=({children:e,config:t})=>r.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??x.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??x.WHITE.DEFAULT}`,"--limit-order-content-hover-color":`${t?.global?.color?.colorTextPrimaryHover??`${x.WHITE.DEFAULT}CC`}`,"--limit-order-secondary-color":`${t?.global?.color?.colorBgSecondary??x.GRAY[800]}`,"--limit-order-secondary-content-color":`${t?.global?.color?.colorTextSecondary??x.GRAY[600]}`,"--limit-order-accent-from-color":`${t?.global?.color?.colorBgAccentFrom??x.GREEN.DEFAULT}`,"--limit-order-accent-to-color":`${t?.global?.color?.colorBgAccentTo??x.GREEN[700]}`,"--limit-order-accent-hover-from-color":`${t?.global?.color?.colorBgAccentFromHover??`${x.GREEN.DEFAULT}CC`}`,"--limit-order-accent-hover-to-color":`${t?.global?.color?.colorBgAccentToHover??x.BLUE.dark}`,"--limit-order-accent-content-color":`${t?.global?.color?.colorTextAccent??x.WHITE.DEFAULT}`,"--limit-order-accent-content-hover-color":`${t?.global?.color?.colorTextAccentHover??`${x.WHITE.DEFAULT}CC`}`,"--limit-order-neutral-color":`${t?.global?.color?.colorBgNeutral??`${x.GRAY[600]}33`}`,"--limit-order-neutral-content-color":`${t?.global?.color?.colorTextNeutral??`${x.GRAY[600]}80`}`,"--limit-order-loading-content-color":`${t?.global?.color?.colorTextLoading??`${x.WHITE.DEFAULT}99`}`,"--limit-order-error-content-color":`${t?.global?.color?.colorTextError??x.RED[500]}`,"--limit-order-warning-content-color":`${t?.global?.color?.colorTextWarning??x.AMBER[400]}`,"--limit-order-border-color":`${t?.global?.color?.colorBorderPrimary??"var(--limit-order-content-color)"}`,"--limit-order-scrollbar-color":`${t?.global?.color?.colorScrollbar??`${x.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??`${x.WHITE.DEFAULT}33`}`,"--limit-order-action-outline-button-border-hover-color":`${t?.component?.actionButton?.color?.outlineColorBorderHover??`${x.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??x.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??x.DARK[700]}`,"--limit-order-tooltip-color":`${t?.component?.tooltip?.color?.colorText??x.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??x.BLUE.DEFAULT}`,"--panel-switch-bg":`${t?.component?.switch?.color?.colorBg??x.GRAY[700]}`,"--panel-switch-thumb-bg-checked":`${t?.component?.switch?.color?.colorThumbBgChecked??x.WHITE.DEFAULT}`,"--panel-switch-thumb-bg":`${t?.component?.switch?.color?.colorThumbBg??x.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??x.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??x.GRAY.DEFAULT}`,"--panel-checkbox-color":`${t?.component?.checkbox?.color?.color??x.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}),ZS=({themeConfig:e})=>(Fl(),r.jsx(Wl,{config:e,children:r.jsx(jl,{hideDeleteButton:!0})})),JS=({vaultChainId:e,vaultAddress:t,pricingAsset:n,translation:a,minAmountInUsd:s=za,actions:o,themeConfig:i})=>{const{isFetched:l,upperLimitPrice:c,lowerLimitPrice:d}=Bl({vaultAddress:t,vaultChainId:e}),p=u.useMemo(()=>({vaultAddress:t,vaultChainId:e,pricingAsset:n,minAmountInUsd:s,form:{upperLimitPrice:c,lowerLimitPrice:d}}),[t,e,n,s,c,d]);return l?r.jsx(_l,{config:a,children:r.jsx(kl,{initialState:p,actions:o,children:r.jsx(ZS,{themeConfig:i})})}):null},eC=({type:e})=>{const{minLimitOrderValue:t}=G(),{address:n,chainId:a,pricingAsset:s,symbol:o}=b(),{handleReject:i}=de({type:e}),l=K()[1],c=re()[1],d=Xb(),p=u.useMemo(()=>({onTransactionSettled:y=>{y&&(i(),c({type:"add",txHash:y,action:"create_limit_sell_order",chainId:a,symbol:o}),l({isOpen:!0,action:"create_limit_sell_order",status:"Mining",link:y?Rn(y,"transaction",a):void 0,sendTokens:null,receiveTokens:null}))}}),[a,i,o,c,l]),m=u.useCallback(()=>{l({isOpen:!1}),d()},[d,l]);return{handleReject:i,address:n,chainId:a,pricingAsset:s,minLimitOrderValue:t,actions:p,closeAllOverlays:m}},tC=e=>{const{limitOrderThemeConfig:t}=G(),{handleReject:n,chainId:a,address:s,pricingAsset:o,minLimitOrderValue:i,actions:l,closeAllOverlays:c}=eC(e);return o?r.jsx(q.Overlay,{onClose:c,onBack:n,className:"!dtw-px-2",noPadding:!0,children:r.jsx("div",{className:"dtw-mt-10 dtw-px-2 dtw-overflow-y-auto theme-scrollbar",children:r.jsx(JS,{vaultAddress:s,vaultChainId:a,pricingAsset:o,minAmountInUsd:i,actions:l,themeConfig:t})})}):null},Ul=()=>{const[e]=N();return new T(e.value||"0").shiftedBy(e.decimals)},nC=()=>{const{account:e=_}=B(),{address:t,chainId:n}=b(),a=z("limitOrder",n),s=Ul(),{data:o}=Tn({tokenAddress:t,ownerAddress:e,spenderAddress:a,chainId:n});return o?s.lte(o.toString()):!1},ir="approve",aC=()=>{const{address:e,chainId:t,symbol:n}=b(),[a,s]=u.useState(!1),o=z("limitOrder",t),i=re()[1],l=Ke({action:ir}),{send:c}=xe({contractId:"erc20",dynamicContractAddress:e,functionName:"approve",onSettled(...p){s(!1),l(...p)}});return{approveLimitOrder:async()=>{i({type:"add",action:ir,symbol:n,chainId:t}),s(!0),c(o,Ue)},isApprovePending:a}},sC=()=>{const e=nC(),{approveLimitOrder:t,isApprovePending:n}=aC();return{isApproved:e,approveLimitOrder:t,isApprovePending:n}},rC=({children:e})=>{const t=A(),{ActionButton:n=Y}=L(),{isApproved:a,approveLimitOrder:s,isApprovePending:o}=sC();return a?e:r.jsx(n,{onClick:s,loading:o,children:t.approve})},lr="limit_order_withdraw",oC=e=>{const{account:t=_}=B(),{address:n,chainId:a,pricingAsset:s,symbol:o}=b(),i=re()[1],l=Ke({action:lr}),c=u.useCallback((...w)=>{l(...w),e()},[l,e]),d=Ul(),{data:p}=Ht({userAddress:t,vaultAddress:n,chainId:a}),m=!!p,{send:y}=xe({onSettled:c,contractId:"limitOrder",functionName:m?"modifyLimitOrder":"createLimitOrder"});return u.useCallback(async()=>{i({type:"add",action:lr,symbol:o,chainId:a});const w=BigInt(0),f=Ue,g=[BigInt(d.toFixed()),w,f,t,n,s?.address];return y(g)},[i,o,a,d,t,n,s?.address,y])},iC=({limitOrderHandler:e,action:t})=>{const n=A(),a=ie(),{account:s}=B(),o=b(),[i]=N(),l=K()[1],c=re()[1],d=fn(),p=t==="delete_limit_order_withdraw",m=async()=>{const y=o.chainId;l({isOpen:!0,status:"Wallet",action:t,link:"",sendTokens:[i],receiveTokens:null,meta:{}});try{await e()}catch(w){w instanceof ut&&(a({type:"MERGE_OVERLAY",payload:{type:$.ERROR_NOTIFICATION,isOpen:!0,meta:{error:w.message}}}),d?.(w,o.address,y,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:m}},lC="limit_order_withdraw",cC=()=>{const e=ie(),t=is("limit_order_withdraw"),n=u.useCallback(()=>e({type:"MERGE_OVERLAY",payload:{type:$.LIMIT_ORDER_WITHDRAW,isOpen:!1}}),[e]),a=oC(n),{handleLimitOrderWithdraw:s,label:o}=iC({limitOrderHandler:a,action:lC});return{label:o,handleLimitOrderWithdraw:s,isLoading:t}},dC=({disabled:e})=>{const{ActionButton:t=Y}=L(),{label:n,handleLimitOrderWithdraw:a,isLoading:s}=cC();return r.jsx(t,{onClick:a,disabled:e,loading:s,children:n})},pC=["termOfUseWithdrawPoint1","termOfUseWithdrawPoint2"],uC=({className:e})=>{const t=A();return r.jsxs(r.Fragment,{children:[r.jsx("p",{children:t.limitOrderWithdrawDescription}),r.jsx("div",{className:C("dtw-w-full dtw-text-sm dtw-overflow-y-auto theme-scrollbar dtw-text-[color:var(--panel-secondary-content-color)]",e),children:r.jsx("ol",{className:"dtw-list-decimal dtw-list-inside dtw-space-y-2",children:pC.map((n,a)=>r.jsxs("li",{className:"dtw-text-pretty",children:[a+1,". ",t[n]]},n))})})]})},mC=({type:e})=>{const t=A(),{ActionButton:n=Y}=L(),{handleReject:a}=de({type:e}),[s,o]=u.useState(!1);return r.jsx(q.Overlay,{onClose:a,children:r.jsxs("div",{className:"dtw-flex dtw-flex-col dtw-gap-2 dtw-w-full",children:[r.jsxs("div",{className:"dtw-px-2 dtw-flex dtw-flex-col dtw-gap-2",children:[r.jsx(uC,{}),r.jsx("div",{className:"dtw-mt-1 dtw-flex dtw-items-center dtw-gap-1.5",children:r.jsx(Ll,{checked:s,onChange:i=>o(i),label:t.termOfUseWithdrawAcceptLabel,labelClassName:"dtw-text-sm dtw-cursor-pointer"})})]}),r.jsx(n,{highlighted:!1,onClick:a,children:t.back}),r.jsx(rC,{children:r.jsx(dC,{disabled:!s})})]})})},yC=({isActive:e,onError:t})=>{const n=A(),a=Za(e),{canSpend:s,approve:o,isCanSpendFetching:i}=ts({onErrorCallback:t}),l=u.useRef(!1);return u.useEffect(()=>{if(!i){if(s){l.current=!0;return}l.current||(l.current=!0,o())}},[i,s,o]),{label:n.approveTokensForWithdrawal,description:a}},Nt=({stepNumber:e,isActive:t,isFinished:n,label:a,description:s})=>r.jsxs("div",{className:C("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:[r.jsxs("div",{className:C("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&&r.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"}),r.jsx("div",{className:C("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})]}),r.jsxs("div",{className:"dtw-flex dtw-flex-col",children:[r.jsx("span",{className:C({"dtw-text-[color:var(--panel-secondary-content-color)]":!t}),children:a}),s&&r.jsx("span",{className:"dtw-text-xs dtw-text-[color:var(--panel-secondary-content-color)]",children:s})]})]}),wC=({isActive:e,onError:t,stepNumber:n,isFinished:a})=>{const{label:s,description:o}=yC({isActive:e,onError:t});return r.jsx(Nt,{stepNumber:n,isFinished:a,isActive:e,label:s,description:o})},nn=0,At=1,St=2,hC=1e3,gC=(e,t,n)=>{u.useEffect(()=>{t==="Success"&&n&&Ia.includes(n)&&e()},[t,n,e])},fC=e=>{const[t,n]=u.useState(!1);return u.useEffect(()=>{if(!e){n(!1);return}const a=setTimeout(()=>{n(!0)},hC);return()=>clearTimeout(a)},[e]),t},TC=({type:e})=>{const{handleReject:t}=de({type:e}),[n]=Oo(),[{status:a,action:s}]=K(),{isCompleteWithdrawStep:o}=Re(),{isUnrollAndClaimTransaction:i,isFetching:l,isFetched:c}=ss(),{canSpend:d}=ts({onErrorCallback:t}),p=fC(d);return gC(t,a,s),{isUnrollAndClaimTransaction:i,activeStepIndex:o?St:d?At:nn,canSpend:d,isCompleteWithdrawStep:o,handleReject:t,stepper:n,isUnrollAndClaimCheckFetching:l,isTransactionTypeReady:c||p}},bC=({isActive:e,onError:t})=>{const n=A(),a=Za(e),s=qi({onErrorCallback:t}),{handleTrade:o}=Xi({withdraw:s,onErrorCallback:t});return kv({handleTrade:o,onError:t}),{label:n.swapToCompleteSell,description:a}},vC=({stepNumber:e,isActive:t,isFinished:n,onError:a})=>{const{label:s,description:o}=bC({isActive:t,onError:a});return r.jsx(Nt,{isFinished:n,stepNumber:e,isActive:t,label:s,description:o})},xC=({isActive:e,canSpend:t,isCompleteWithdrawStep:n,isPending:a,onError:s})=>{const o=Za(e),{withdraw:i}=Bv({onErrorCallback:s}),{handleTrade:l}=rs({trade:i,onErrorCallback:s}),c=u.useRef(!1);return u.useEffect(()=>{a||t&&!n&&!c.current&&(c.current=!0,l())},[a,t,n,l]),{description:o}},AC=({stepNumber:e,isActive:t,isFinished:n,isPending:a,onError:s,isCompleteWithdrawStep:o,canSpend:i,label:l})=>{const{description:c}=xC({isActive:t,canSpend:i,isCompleteWithdrawStep:o,isPending:a,onError:s});return r.jsx(Nt,{isFinished:n,stepNumber:e,isActive:t,label:l,description:c})},SC=({canSpend:e,isTransactionTypeReady:t,isUnrollAndClaimTransaction:n,isCompleteWithdrawStep:a,isUnrollAndClaimCheckFetching:s,activeStepIndex:o,onError:i})=>{const l=A(),c=Qe();return!e||!t?r.jsxs(r.Fragment,{children:[r.jsx(Nt,{isFinished:!1,stepNumber:At+1,isActive:!1,label:l.unrollAssetsToPrepare}),r.jsx(Nt,{isFinished:!1,stepNumber:St+1,isActive:!1,label:l.swapToCompleteSell})]}):r.jsxs(r.Fragment,{children:[r.jsx(AC,{stepNumber:At+1,isFinished:o>At,isActive:o===At,canSpend:e,isCompleteWithdrawStep:n?!1:a,isPending:s,onError:i,label:n||c?l.unrollAndClaimAssets:l.unrollAssetsToPrepare}),!n&&!c&&r.jsx(vC,{stepNumber:St+1,isFinished:o>St,isActive:o===St,onError:i})]})},CC=e=>{const t=A(),{ActionButton:n=Y}=L(),{isUnrollAndClaimTransaction:a,activeStepIndex:s,canSpend:o,isCompleteWithdrawStep:i,handleReject:l,stepper:c,isUnrollAndClaimCheckFetching:d,isTransactionTypeReady:p}=TC(e);return r.jsxs(q.Overlay,{centered:!1,className:"dtw-gap-4",children:[r.jsx(n,{highlighted:!1,onClick:l,className:"!dtw-p-1 !dtw-w-24 dtw-self-start",children:t.cancel}),r.jsxs("div",{className:"dtw-flex dtw-flex-col dtw-items-center dtw-gap-2",children:[r.jsx(We,{symbols:[c?.sendTokenSymbol??""],size:"2xl"}),r.jsxs("div",{className:"dtw-text-center",children:[r.jsxs("p",{className:"dtw-text-lg",children:[t.sell," ",c?.sendTokenAmount," ",c?.sendTokenSymbol]}),c?.receiveTokenSymbol&&r.jsxs("p",{className:"dtw-text-sm dtw-text-[color:var(--panel-secondary-content-color)]",children:["for ",c.receiveTokenAmount," ",c.receiveTokenSymbol]})]})]}),r.jsxs("div",{className:"dtw-mt-4 dtw-flex dtw-flex-col dtw-gap-2",children:[r.jsx(wC,{isFinished:s>nn,isActive:s===nn,onError:l,stepNumber:nn+1}),r.jsx(SC,{canSpend:o,isTransactionTypeReady:p,isUnrollAndClaimTransaction:a,isCompleteWithdrawStep:i,isUnrollAndClaimCheckFetching:d,activeStepIndex:s,onError:l})]})]})},EC=()=>{const e=On(),t=A();return r.jsxs(r.Fragment,{children:[r.jsx($e,{label:t.slippageTolerance,tooltipText:t.withdrawSlippageWarning,children:r.jsx(Wi,{})}),r.jsx($e,{label:t.tokenAllowance,tooltipText:t.toggleTokenApprovalAmount,children:r.jsx(sl,{})}),e&&r.jsx($e,{label:t.batchTransactionsLabel,tooltipText:t.batchTransactionsTooltip??"",children:r.jsx(rl,{})}),r.jsx(ol,{})]})},IC=({assets:e=[]})=>{const{stablePrecision:t}=G(),{firstPart:n,secondPart:a}=io(e,br),s=u.useCallback(({symbol:o,address:i,rawBalance:l,decimals:c,price:d,balance:p})=>r.jsxs("tr",{children:[r.jsxs("td",{children:[r.jsx($t,{symbol:o,iconSymbols:[o],symbolClasses:"dtw-text-xs dtw-font-bold",size:"sm"}),r.jsx("p",{className:"dtw-truncate dtw-text-xs dtw-text-[color:var(--panel-secondary-content-color)]",children:te({value:p*d})})]}),r.jsx("td",{className:"dtw-text-right",children:r.jsx("p",{className:"dtw-truncate",children:Ge({value:D.formatUnits(l,c),decimals:t})})})]},i),[t]);return r.jsxs("div",{className:"dtw-text-sm dtw-font-light ",children:[r.jsx(mn,{children:n.map(s)}),a.length>0&&r.jsx(yl,{children:r.jsx(mn,{children:a.map(s)})})]})},_C=()=>{const{chainId:e}=b(),{stablePrecision:t}=G(),{data:n=[]}=me(),a=Yi(),{data:s=_}=Dv();return{assets:n,usdAmount:te({value:a,maximumFractionDigits:t}),withdrawalVaultLink:Rn(s,"address",e)}},DC=()=>{const e=A(),{assets:t,usdAmount:n,withdrawalVaultLink:a}=_C();return r.jsxs(r.Fragment,{children:[r.jsxs("div",{className:"dtw-text-sm dtw-flex dtw-items-center dtw-gap-1",children:[r.jsx("span",{className:"dtw-text-[color:var(--panel-secondary-content-color)]",children:e.total}),r.jsx(Ye,{link:a??"",iconClassName:"dtw-h-4 dtw-w-4 dtw-text-[color:var(--panel-content-color)]",children:r.jsx("span",{className:"dtw-text-[color:var(--panel-content-color)]",children:n})})]}),r.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:r.jsx(IC,{assets:t})})]})},NC=()=>{const e=ie(),{requiresHighSlippageConfirm:t,confirmHighSlippage:n,slippageToBeUsed:a}=Qa();return{requiresHighSlippageConfirm:t,slippageToBeUsed:a,handleHighSlippageClick:()=>{e({type:"MERGE_OVERLAY",payload:{type:$.HIGH_SLIPPAGE,isOpen:!0,onConfirm:async()=>n()}})}}},OC=({children:e})=>{const{ActionButton:t=Y}=L(),n=A(),{requiresHighSlippageConfirm:a,slippageToBeUsed:s,handleHighSlippageClick:o}=NC();return a?r.jsx(t,{onClick:o,children:n.confirmMaxSlippage.replace("{slippagePercentage}",`${Math.abs(s)}`)}):e},PC=()=>{const{chainId:e}=b(),[t]=P(),n=ce({address:t.address,chainId:e}),a=Zi(),s=Bt(Math.min(0,a));return{receiveToken:{...t,price:n},swapDiff:a,themeType:s}},kC=()=>{const{receiveToken:e,swapDiff:t,themeType:n}=PC();return r.jsx(Dt,{assetInput:e.value,autoFocus:!1,disabled:!0,assetSymbol:e.symbol,assetPrice:e.price,displayCalculatedValue:!0,isLoading:e.isLoading,tradingPriceDiff:t,type:n})},RC=()=>{const e=A(),{stablePrecision:t}=G(),[n]=P(),a=Ft(),{minExpectedReceiveAmount:s}=ns(),o=Bt(a),i=o===W.DEFAULT?e.withdrawSlippageWarning:e.highSlippageWarning;return{themeType:o,slippageTooltipText:i,slippagePlaceholder:a.toString(),minReceive:`${Ge({value:D.formatUnits(BigInt(s),n.decimals),decimals:t})} ${n.symbol}`}},LC=()=>{const e=A(),{slippageTooltipText:t,slippagePlaceholder:n,minReceive:a}=RC(),s=u.useMemo(()=>[{tooltipText:e.exchangeRate,label:e.rate,value:r.jsx(cs,{})},{tooltipText:t,label:e.maxSlippage,value:r.jsxs("span",{children:[n,"%"]})},{tooltipText:e.minReceiveAmount,label:e.minReceived,value:a}],[a,n,t,e.maxSlippage,e.minReceiveAmount,e.minReceived,e.exchangeRate,e.rate]);return r.jsx(Ja,{collapseItems:s})},MC=({children:e})=>r.jsxs(q.Meta,{children:[r.jsx(LC,{}),r.jsx("div",{className:"dtw-sticky dtw-bottom-0 dtw-bg-[var(--panel-meta-action-panel-bg)]",children:e})]}),jC=()=>(Pv(),r.jsxs(r.Fragment,{children:[r.jsxs(q.InputGroup,{children:[r.jsx(DC,{}),r.jsx(kC,{})]}),r.jsx(MC,{children:r.jsx(ds,{children:r.jsxs("div",{className:"tw-flex tw-flex-col tw-gap-2",children:[r.jsx(OC,{children:r.jsx(Al,{})}),r.jsx(Cl,{highlighted:!1})]})})})]})),BC=()=>{const{chainId:e,address:t}=b(),{exitFeeNumber:n}=Pn({address:t,chainId:e}),[a]=N(),[s,o]=P(),i=ue({address:t,chainId:e}),l=ce({address:s.address,chainId:e});u.useEffect(()=>{if(!a.value||a.value==="0"){o({value:""});return}if(!l||l==="0"){o({value:""});return}const d=new T(a.value).times(i).times(1-n/100).dividedBy(l).toFixed(s.decimals);o({value:mo(d)?d:""})},[n,s.decimals,l,a.value,i,o])},$C=()=>{const e=A(),t=ie(),n=()=>t({type:"MERGE_OVERLAY",payload:{type:$.LIMIT_ORDER_WITHDRAW,isOpen:!0}});return{label:e.withdrawAction,openLimitOrderWithdrawOverlay:n}},FC=()=>{const{ActionButton:e=Y}=L(),{label:t,openLimitOrderWithdrawOverlay:n}=$C();return r.jsx(e,{onClick:n,children:t})},Kn=[{isLeveragedAsset:go,getWithdrawAssetByLeverageAddress:fo,getWithdrawAssetByVaultAddress:()=>{},isLentAndBorrowedAsset:na},{isLeveragedAsset:fd,getWithdrawAssetByLeverageAddress:Td,getWithdrawAssetByVaultAddress:bd,isLentAndBorrowedAsset:na}],Qn={requiresLeveragedCollateralLiquidity:!1,leveragedCollateralValueFormatted:"$0"},Xn=e=>T(e.amount).shiftedBy(-e.precision).times(e.rate).shiftedBy(-O).toNumber(),zl=()=>{const e=b(),t=mt(e),[n]=N(),a=ue(e),s=t.find(({tokenAddress:m,amount:y})=>Kn.some(w=>w.isLeveragedAsset(m)&&y!=="0"));if(!s)return Qn;const o=Kn.find(m=>m.isLeveragedAsset(s.tokenAddress));if(!o)return Qn;const i=o.getWithdrawAssetByVaultAddress(e.address)?.address??o.getWithdrawAssetByLeverageAddress(s.tokenAddress).address,l=t.find(({tokenAddress:m})=>H(i,m));if(!l)return Qn;const c=Number(n.value||"0")*Number(a),d=Xn(l);if(t.find(({tokenAddress:m,amount:y})=>Kn.some(w=>w.isLentAndBorrowedAsset({address:m,chainId:e.chainId})&&y!=="0"))){const m=Xn(s),y=t.reduce((S,I)=>S+Xn(I),0),w=d/y,f=m/y,v=w/(w+f)*y;return{requiresLeveragedCollateralLiquidity:c>v,leveragedCollateralValueFormatted:te({value:v})}}return{requiresLeveragedCollateralLiquidity:c>d,leveragedCollateralValueFormatted:te({value:d})}},Hl=()=>{const{chainId:e,pricingAsset:t,onDemandWithdrawalEnabled:n}=b(),{requiresLeveragedCollateralLiquidity:a}=zl(),s=Rt();return a&&!!t&&!!n&&(e===h.arbitrum.id||!s)},WC=()=>{const{address:e,chainId:t,maintenance:n,maintenanceWithdrawals:a,symbol:s}=b(),[o]=N(),i=ie(),l=Hl(),c=kt(),{data:d=0}=Nb({address:e,chainId:t}),p=d>0,m=Et.formatDuration(Et.intervalToDuration({start:0,end:d})),{requiresHighSlippageConfirm:y,confirmHighSlippage:w,slippageToBeUsed:f}=Qa(),g=()=>{i({type:"MERGE_OVERLAY",payload:{type:$.HIGH_SLIPPAGE,isOpen:!0,onConfirm:async()=>w()}})};return{isEmptyInput:!o.value||o.value==="0",requiresEndOfCooldown:p,requiresHighSlippageConfirm:y,sendTokenSymbol:o.symbol,slippageToBeUsed:f,dynamicCooldownEndsInTime:m,handleHighSlippageClick:g,maintenance:n||a,poolSymbol:s,isLimitOrderWithdraw:l,insufficientBalance:c}},UC=({children:e})=>{const{ActionButton:t=Y}=L(),n=A(),a=Xa("withdraw"),{isEmptyInput:s,requiresEndOfCooldown:o,requiresHighSlippageConfirm:i,sendTokenSymbol:l,slippageToBeUsed:c,dynamicCooldownEndsInTime:d,handleHighSlippageClick:p,maintenance:m,poolSymbol:y,isLimitOrderWithdraw:w,insufficientBalance:f}=WC();return s?r.jsx(t,{disabled:!0,children:a}):m?r.jsx(un,{promptText:n.poolWithdrawalsAreMaintenance.replace("{poolSymbol}",y),children:a}):o?r.jsx(un,{promptText:n.withdrawCooldown.replace("{tokenSymbol}",l).replace("{cooldownEndTime}",d),children:a}):f?r.jsx(t,{disabled:!0,children:n.insufficientBalance}):w?r.jsx(FC,{}):i?r.jsx(t,{onClick:p,children:n.confirmMaxSlippage.replace("{slippagePercentage}",`${Math.abs(c)}`)}):e},zC=()=>{const{address:e,chainId:t}=b(),[n,a]=N(),s=he({symbol:n.symbol,address:n.address}),o=ue({address:e,chainId:t});return{...n,updater:a,balance:s,price:o}},HC=()=>{const{chainId:e}=b(),[t,n]=P(),a=ce({address:t.address,chainId:e});return{...t,updater:n,price:a}},GC=()=>{const e=zC(),t=HC();return{sendToken:e,onInputChange:a=>{e.updater({value:a})},receiveToken:t}},VC=()=>{const{sendToken:e,onInputChange:t,receiveToken:n}=GC();return r.jsxs(r.Fragment,{children:[r.jsx(Dt,{assetInput:e.value,onInputChange:t,assetSymbol:e.symbol,assetPrice:e.price??"",displayMax:!0,maxBalance:e.balance,displayCalculatedValue:!0,children:r.jsx(hl,{})}),r.jsxs(Dt,{assetInput:n.value,autoFocus:!1,disabled:!0,assetSymbol:n.symbol,assetPrice:n.price,displayCalculatedValue:!0,isLoading:n.isLoading,children:[r.jsx(fl,{}),n.symbol==="all"?null:r.jsx(gl,{})]})]})},qC=()=>{const e=A(),{address:t,chainId:n}=b(),[{isMaxSlippageLoading:a}]=Q(),{exitFeeNumber:s}=Pn({address:t,chainId:n}),o=Ft(),i=Qe();return{slippageTooltipText:Bt(o)===W.DEFAULT?e.withdrawSlippageWarning:e.highSlippageWarning,isMaxSlippageLoading:a,slippagePlaceholder:`${o}%`,exitFee:Ot(s,2),minReceivedText:e.estimatedMultiAssetFractions,showMinReceivedText:i}},YC=()=>{const e=A(),{slippageTooltipText:t,slippagePlaceholder:n,isMaxSlippageLoading:a,exitFee:s,minReceivedText:o,showMinReceivedText:i}=qC(),l=u.useMemo(()=>{const c=[{tooltipText:e.exchangeRate,label:e.rate,value:r.jsx(cs,{})},{tooltipText:t,label:e.maxSlippage,value:r.jsxs("div",{className:"dtw-flex dtw-gap-1",children:[a&&r.jsx(ke,{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)]"}),r.jsx("span",{className:C({"dtw-text-[color:var(--panel-loading-content-color)]":a}),children:n})]})},{label:e.exitFee,value:s,tooltipText:e.exitFeeExplanation}];return i&&c.push({tooltipText:e.minReceiveAmount,label:e.minReceived,value:o}),c},[t,e.maxSlippage,e.exitFee,e.exitFeeExplanation,e.minReceiveAmount,e.minReceived,e.exchangeRate,e.rate,a,n,s,i,o]);return r.jsx(Ja,{collapseItems:l})},KC=({children:e})=>{const{WithdrawMetaInfo:t,AvailableLiquidityAlert:n,OnDemandWithdrawAlert:a}=L(),{requiresLeveragedCollateralLiquidity:s,leveragedCollateralValueFormatted:o}=zl(),i=Hl();return r.jsxs(q.Meta,{children:[r.jsx("div",{children:s?i?r.jsx(r.Fragment,{children:!!a&&r.jsx(a,{})}):r.jsx(r.Fragment,{children:!!n&&r.jsx(n,{liquidityAmount:o})}):null}),r.jsx(YC,{}),t&&r.jsx(t,{}),r.jsx("div",{className:"dtw-sticky dtw-bottom-0 dtw-bg-[var(--panel-meta-action-panel-bg)]",children:e})]})},QC=()=>{const e=A();return BC(),r.jsxs(r.Fragment,{children:[r.jsx(q.InputGroup,{children:r.jsx(VC,{})}),r.jsx(KC,{children:r.jsx(ds,{children:r.jsxs("div",{className:"dtw-flex dtw-flex-col dtw-gap-2 dtw-w-full",children:[r.jsx(UC,{children:r.jsx(Al,{})}),r.jsx(vl,{highlighted:!1,children:e.stopOrder})]})})})]})},XC=()=>{_v();const{isCompleteWithdrawStep:e}=Re();return{isCompleteWithdrawStep:e}},ZC=()=>{const{isCompleteWithdrawStep:e}=XC();return e?r.jsx(jC,{}):r.jsx(QC,{})},JC=()=>r.jsx(q.Panel,{children:r.jsx(ZC,{})}),eE=({tradingType:e})=>r.jsxs(R.TabGroup,{selectedIndex:et.indexOf(e),children:[r.jsx(R.TabList,{className:"dtw-flex",children:et.map(t=>r.jsx(R.Tab,{className:"dtw-hidden"},t))}),r.jsxs(R.TabPanels,{children:[r.jsx(q.Settings,{children:r.jsx(Yv,{})}),r.jsx(q.Settings,{children:r.jsx(EC,{})})]})]}),tE=({children:e})=>r.jsxs(R.TabList,{className:"dtw-flex dtw-px-[var(--panel-tab-group-px)] dtw-justify-between dtw-items-center",children:[r.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=>r.jsx(ev,{tradingType:t},t))}),e]}),nE=et.reduce((e,t,n)=>(e[n]=t,e),{}),aE=()=>{const[e]=we(),t=b(),{standalone:n}=G();hA();const a=ls(),s=o=>{const i=nE[o];i&&a(i)};return u.useEffect(()=>{n||a("deposit")},[t.address,n]),u.useEffect(()=>{n&&a(e)},[t.address,n,e]),{type:e,onTabChange:s}},sE=()=>{const{type:e,onTabChange:t}=aE();return r.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:[r.jsxs(R.TabGroup,{selectedIndex:et.indexOf(e),onChange:t,className:"dtw-flex dtw-flex-col dtw-h-full",children:[r.jsx(tE,{children:r.jsxs("div",{className:"dtw-flex dtw-gap-2 dtw-items-center dtw-justify-end",children:[r.jsx(OA,{}),r.jsx(eE,{tradingType:e})]})}),r.jsxs(R.TabPanels,{className:"dtw-flex-1 dtw-overflow-y-auto",children:[r.jsx(MA,{}),r.jsx(JC,{})]})]}),r.jsxs(BA,{children:[r.jsx($A,{type:$.TERMS_OF_USE}),r.jsx(FA,{type:$.HIGH_SLIPPAGE}),r.jsx(qA,{type:$.TOKEN_SELECT,searchQuery:""}),r.jsx(XA,{type:$.POOL_SELECT,searchQuery:""}),r.jsx(mS,{type:$.TRADING}),r.jsx(tC,{type:$.LIMIT_SELLS}),r.jsx(mC,{type:$.LIMIT_ORDER_WITHDRAW}),r.jsx(CC,{type:$.WITHDRAW_STEPPER}),r.jsx(fS,{type:$.ERROR_NOTIFICATION})]})]})},rE=({children:e,config:t,className:n})=>r.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??x.DARK[800]}`,"--panel-gap":`${t?.global?.size?.gap??"0.25rem"}`,"--panel-spacer":`${t?.global?.size?.spacer??"4px"}`,"--panel-content-color":`${t?.global?.color?.colorTextPrimary??x.WHITE.DEFAULT}`,"--panel-content-hover-color":`${t?.global?.color?.colorTextPrimaryHover??`${x.WHITE.DEFAULT}CC`}`,"--panel-secondary-color":`${t?.global?.color?.colorBgSecondary??x.GRAY[800]}`,"--panel-secondary-content-color":`${t?.global?.color?.colorTextSecondary??x.GRAY[600]}`,"--panel-accent-from-color":`${t?.global?.color?.colorBgAccentFrom??x.GREEN.DEFAULT}`,"--panel-accent-to-color":`${t?.global?.color?.colorBgAccentTo??x.GREEN[700]}`,"--panel-accent-hover-from-color":`${t?.global?.color?.colorBgAccentFromHover??`${x.GREEN.DEFAULT}CC`}`,"--panel-accent-hover-to-color":`${t?.global?.color?.colorBgAccentToHover??x.BLUE.dark}`,"--panel-accent-content-color":`${t?.global?.color?.colorTextAccent??x.WHITE.DEFAULT}`,"--panel-accent-content-hover-color":`${t?.global?.color?.colorTextAccentHover??`${x.WHITE.DEFAULT}CC`}`,"--panel-neutral-color":`${t?.global?.color?.colorBgNeutral??`${x.GRAY[600]}33`}`,"--panel-neutral-content-color":`${t?.global?.color?.colorTextNeutral??`${x.GRAY[600]}80`}`,"--panel-loading-content-color":`${t?.global?.color?.colorTextLoading??`${x.WHITE.DEFAULT}99`}`,"--panel-error-content-color":`${t?.global?.color?.colorTextError??x.RED[500]}`,"--panel-warning-content-color":`${t?.global?.color?.colorTextWarning??x.WARNING}`,"--panel-success-content-color":`${t?.global?.color?.colorTextSuccess??x.GREEN.DEFAULT}`,"--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??`${x.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??x.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??x.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??x.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??x.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??`${x.WHITE.DEFAULT}33`}`,"--panel-action-outline-button-border-hover-color":`${t?.component?.actionButton?.color?.outlineColorBorderHover??`${x.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??x.DARK[700]}`,"--panel-tooltip-color":`${t?.component?.tooltip?.color?.colorText??x.WHITE.DEFAULT}`,"--panel-alert-error-bg":`${t?.component?.alert?.color?.errorBg??`${x.ERROR}4D`}`,"--panel-alert-warning-bg":`${t?.component?.alert?.color?.warningBg??`${x.WARNING}4D`}`,"--panel-alert-info-bg":`${t?.component?.alert?.color?.infoBg??`${x.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??x.BLUE.DEFAULT}`,"--panel-switch-bg":`${t?.component?.switch?.color?.colorBg??x.GRAY[700]}`,"--panel-switch-thumb-bg-checked":`${t?.component?.switch?.color?.colorThumbBgChecked??x.WHITE.DEFAULT}`,"--panel-switch-thumb-bg":`${t?.component?.switch?.color?.colorThumbBg??x.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??x.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??x.GRAY.DEFAULT}`,"--panel-checkbox-color":`${t?.component?.checkbox?.color?.color??x.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}),oE=({children:e,config:t,theme:n,components:a,translation:s,className:o})=>r.jsx(Vb,{config:s,children:r.jsx(rE,{config:n,className:o,children:r.jsx(Ci,{config:t,children:r.jsx(pv,{config:a,children:r.jsx(Zb,{children:e})})})})}),iE=e=>r.jsx(oE,{...e,children:r.jsx(sE,{})}),lE="ref",cE=({vaultAddress:e,userAddress:t,query:n,logEvent:a,tagInvestorByReferrer:s})=>{const[o,i]=da("localStorage",Ct.REFERRER,""),[l,c]=da("localStorage",Ct.REF_POOL,""),d=n[lE];u.useEffect(()=>{!d||typeof d!="string"||ee(e)||localStorage.getItem(Ct.REFERRER)||(i(d),c(e),a?.())},[e,d,c,i,a]),u.useEffect(()=>{if(!t||!o||l.toLowerCase()!==e.toLowerCase())return;(async()=>{try{await s({investorAddress:t,poolAddress:l,referrerAddress:o})}catch(m){console.error("[core-ui-kit]: Error on tagging investor by referrer",m)}})()},[l,o,s,t,e])},dE=({title:e,children:t,className:n,titleClassName:a})=>r.jsxs("div",{className:C("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&&r.jsx("h1",{className:C("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)]",a),children:e}),r.jsx("div",{className:"dtw-w-full",children:t})]}),pE=({isOpen:e,onClose:t,children:n,className:a,ThemeProvider:s=u.Fragment})=>{const o=u.useRef(null);return r.jsx(R.Dialog,{open:e,initialFocus:o,as:"div",className:C("dtw-relative dtw-z-20 dtw-overflow-y-auto theme-scrollbar",a),onClose:t,children:r.jsx(s,{children:r.jsxs(r.Fragment,{children:[r.jsx(R.DialogBackdrop,{className:"dtw-fixed dtw-inset-0 dtw-backdrop-blur-md dtw-backdrop-brightness-75 dtw-backdrop-filter"}),r.jsx("div",{className:"dtw-fixed dtw-inset-0 dtw-flex dtw-w-screen dtw-items-center dtw-justify-center dtw-p-4",ref:o,children:r.jsx(R.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})})]})})})},uE=()=>{const e=Ve(),{isModalOpen:t,pendingTransaction:n}=fe(),{setIsModalOpen:a}=zt(),s=u.useCallback(()=>{a(!0),e?.(X.OPEN_LIMIT_SELL_VIEW,{[Te.SOURCE.NAME]:"modal"})},[e,a]),o=u.useCallback(()=>a(!1),[a]);return{isModalOpen:t,onOpen:s,onClose:o,isTransactionPending:!!n}},mE=({children:e,themeConfig:t})=>{const{onOpen:n,isModalOpen:a,onClose:s,isTransactionPending:o}=uE(),i=ge();Fl();const l=u.useCallback(({children:c})=>r.jsx(Wl,{config:t,children:c}),[t]);return r.jsxs(r.Fragment,{children:[e({onClick:n,isTransactionPending:o}),r.jsx(pE,{isOpen:a,onClose:s,ThemeProvider:l,className:"limit-order",children:r.jsx(dE,{title:i.limitOrdersTitle,className:"dtw-text-[color:var(--limit-order-content-color)] dtw-text-[length:var(--limit-order-font-size)] dtw-max-w-[430px]",children:r.jsx(jl,{onClose:s})})})]})},yE=({children:e,vaultChainId:t,vaultAddress:n,pricingAsset:a,translation:s,minAmountInUsd:o=za,actions:i,themeConfig:l,isModalOpen:c})=>{const{isFetched:d,upperLimitPrice:p,lowerLimitPrice:m}=Bl({vaultAddress:n,vaultChainId:t}),y=u.useMemo(()=>({vaultAddress:n,vaultChainId:t,pricingAsset:a,minAmountInUsd:o,isModalOpen:c,form:{upperLimitPrice:p,lowerLimitPrice:m}}),[n,t,a,o,c,p,m]);return d?r.jsx(_l,{config:s,children:r.jsx(kl,{initialState:y,actions:i,children:r.jsx(mE,{themeConfig:l,children:e})})}):null};Object.defineProperty(exports,"useBlockNumber",{enumerable:!0,get:()=>E.useBlockNumber});Object.defineProperty(exports,"useConnect",{enumerable:!0,get:()=>E.useConnect});Object.defineProperty(exports,"useDisconnect",{enumerable:!0,get:()=>E.useDisconnect});Object.defineProperty(exports,"usePublicClient",{enumerable:!0,get:()=>E.usePublicClient});Object.defineProperty(exports,"useReadContract",{enumerable:!0,get:()=>E.useReadContract});Object.defineProperty(exports,"useReadContracts",{enumerable:!0,get:()=>E.useReadContracts});Object.defineProperty(exports,"useSendTransaction",{enumerable:!0,get:()=>E.useSendTransaction});Object.defineProperty(exports,"useWaitForTransactionReceipt",{enumerable:!0,get:()=>E.useWaitForTransactionReceipt});Object.defineProperty(exports,"useWalletClient",{enumerable:!0,get:()=>E.useWalletClient});Object.defineProperty(exports,"useWriteContract",{enumerable:!0,get:()=>E.useWriteContract});Object.defineProperty(exports,"arbitrum",{enumerable:!0,get:()=>h.arbitrum});Object.defineProperty(exports,"base",{enumerable:!0,get:()=>h.base});Object.defineProperty(exports,"optimism",{enumerable:!0,get:()=>h.optimism});Object.defineProperty(exports,"polygon",{enumerable:!0,get:()=>h.polygon});Object.defineProperty(exports,"decodeErrorResult",{enumerable:!0,get:()=>D.decodeErrorResult});Object.defineProperty(exports,"encodeFunctionData",{enumerable:!0,get:()=>D.encodeFunctionData});Object.defineProperty(exports,"erc20Abi",{enumerable:!0,get:()=>D.erc20Abi});Object.defineProperty(exports,"formatEther",{enumerable:!0,get:()=>D.formatEther});Object.defineProperty(exports,"formatUnits",{enumerable:!0,get:()=>D.formatUnits});Object.defineProperty(exports,"hexToString",{enumerable:!0,get:()=>D.hexToString});Object.defineProperty(exports,"trim",{enumerable:!0,get:()=>D.trim});exports.ALCHEMY_RPC_URL_MAP=ic;exports.AaveLendingPoolAbi=Jn;exports.AddressZero=_;exports.BRIDGED_TOKENS_SYMBOLS=Ea;exports.BRIDGED_USDC_ARBITRUM=ga;exports.BRIDGED_USDC_OPTIMISM=Ta;exports.BRIDGED_USDC_POLYGON=xa;exports.CBBTC_BASE=zr;exports.CBETH_BASE=$c;exports.CHAIN_MAP=oc;exports.CHAIN_NATIVE_TOKENS=Ze;exports.COMPLETE_WITHDRAW_ACTIONS=Ia;exports.CURRENCY_SYMBOL_MAP=vr;exports.ConfigProvider=Ci;exports.DAI_OPTIMISM=Vr;exports.DAI_POLYGON=Qr;exports.DEFAULT_DEPOSIT_METHOD=Jl;exports.DEFAULT_DEPOSIT_SLIPPAGE=yn;exports.DEFAULT_DEPOSIT_SLIPPAGE_SCALE=nc;exports.DEFAULT_ERROR_MESSAGE=Lr;exports.DEFAULT_LOCK_TIME=pr;exports.DEFAULT_MULTI_ASSET_WITHDRAW_METHOD=wr;exports.DEFAULT_POLLING_INTERVAL=nt;exports.DEFAULT_PRECISION=O;exports.DEFAULT_PROMISE_TIMEOUT_MS=Tr;exports.DEFAULT_SIMULATION_ERROR=ta;exports.DEFAULT_WITHDRAW_SLIPPAGE=mr;exports.EMPTY_POOL_CONFIG=ur;exports.EasySwapperV2Abi=ve;exports.EstimationError=ut;exports.GAS_ESTIMATION_ERROR=ea;exports.GAS_LIMIT_BUFFER_COEFF=fr;exports.GET_ALL_LIMIT_ORDER_IDS_FUNCTION_NAME=Ua;exports.GMX_MARKET_ASSETS=ao;exports.GMX_MARKET_ASSETS_MAP=ae;exports.LIMIT_ORDER_READ_FUNCTION_NAME=Dn;exports.LINK_ARBITRUM=jc;exports.LINK_OPTIMISM=Hc;exports.LimitOrderAbi=wn;exports.LimitOrderModal=yE;exports.MANAGER_FEE_DENOMINATOR=ye;exports.MAX_GAS_LIMIT_MAP=Xt;exports.MULTI_ASSET_TOKEN=sn;exports.MaxUint256=Ue;exports.NATIVE_TOKEN_DEPOSIT_GAS_LIMIT=gr;exports.PAXG_POLYGON=qc;exports.PYTH_API_LINK=Xc;exports.PoolFactoryAbi=He;exports.PoolLogicAbi=be;exports.PoolManagerLogicAbi=De;exports.RETH_BASE=Jt;exports.RewardDistributionAbi=Pr;exports.SETH_OPTIMISM=zc;exports.SHORTEN_POLLING_INTERVAL=ze;exports.SIMULATION_TIMEOUT_ERROR=Mr;exports.SUSD_OPTIMISM=Uc;exports.TBTC_ARBITRUM=Pc;exports.TBTC_BASE=Fc;exports.TBTC_OPTIMISM=Gc;exports.TBTC_POLYGON=Yc;exports.TRADING_LOG_EVENT_PARAM=Te;exports.TRADING_PANEL_LOG_EVENT=X;exports.TradingPanelProvider=_d;exports.TradingWidget=iE;exports.USDCBC_BASE=Bc;exports.USDC_ARBITRUM=le;exports.USDC_BASE=Ur;exports.USDC_MAINNET=Xr;exports.USDC_OPTIMISM=Hr;exports.USDC_POLYGON=qr;exports.USDT_ARBITRUM=Rc;exports.USDT_MAINNET=Zr;exports.USDT_OPTIMISM=Gr;exports.USDT_POLYGON=Kr;exports.WBNB_ARBITRUM=Mc;exports.WBTC_ARBITRUM=Be;exports.WBTC_BY_CHAIN_ID=eo;exports.WBTC_MAINNET=Ca;exports.WBTC_OPTIMISM=Je;exports.WBTC_POLYGON=Aa;exports.WETH_ARBITRUM=It;exports.WETH_BASE=fa;exports.WETH_BY_CHAIN_ID=Jr;exports.WETH_MAINNET=Sa;exports.WETH_OPTIMISM=ba;exports.WETH_POLYGON=va;exports.WPOL_POLYGON=Yr;exports.WSOL_ARBITRUM=Lc;exports.WSTETH_ARBITRUM=kc;exports.WSTETH_BASE=Wc;exports.WSTETH_OPTIMISM=Vc;exports.XAUT_MAINNET=Kc;exports.clientSide=gn;exports.commify=md;exports.contractsAbisMap=Rr;exports.contractsAddressesMap=kr;exports.formatByCurrency=tn;exports.formatNumberToLimitedDecimals=Ge;exports.formatNumeratorToPercentage=xt;exports.formatPercentage=Ot;exports.formatToUsd=te;exports.getContractAbiById=so;exports.getContractAddressById=z;exports.getConventionalTokenPriceDecimals=_t;exports.getErrorMessage=ri;exports.getLimitOrderId=Rl;exports.getNativeTokenInvestableBalance=co;exports.getPercent=Ne;exports.getPoolFraction=aa;exports.isAaveLendAndBorrowAsset=na;exports.isEqualAddress=H;exports.isErrorWithMessage=ai;exports.isFmpAirdropVaultAddress=ho;exports.isNativeToken=hn;exports.isZeroAddress=ee;exports.normalizeNumber=Fe;exports.removeInsignificantTrailingZeros=sa;exports.shiftBy=rn;exports.shortenAddress=ro;exports.toErrorWithMessage=si;exports.transformAddressForAnalytics=Da;exports.useAccount=B;exports.useAddPoolConfig=Md;exports.useAssetPrice=ce;exports.useAvailableManagerFee=vi;exports.useBalance=Oa;exports.useBrowserStorage=da;exports.useCheckWhitelist=mi;exports.useCompleteWithdrawSwapQuotes=yt;exports.useCompleteWithdrawTrackedAssets=me;exports.useContractFunction=xe;exports.useContractPoolComposition=yi;exports.useContractReadErrorLogging=Wa;exports.useContractReadsErrorLogging=_n;exports.useCustomDepositTokensPerChain=No;exports.useDebounce=as;exports.useDepositLockTime=ul;exports.useDepositProjectedEarnings=tl;exports.useEasySwapperTrackedAssets=Ki;exports.useExchangeRate=Hi;exports.useFlatmoneyPointsUserBalances=Lb;exports.useGasPrice=oi;exports.useHasSingleAssetWithdrawBlockers=qa;exports.useInvalidateLimitOrderQuery=$l;exports.useInvalidateOnBlock=dn;exports.useInvalidatePoolContractData=hi;exports.useInvalidateTradingQueries=Nn;exports.useIsBatchContractWritesSupported=On;exports.useIsCompleteWithdrawStep=Re;exports.useIsDepositBlocked=kb;exports.useIsDepositTradingPanelType=Oe;exports.useIsDhedgeVaultConnected=Rt;exports.useIsInsufficientBalance=kt;exports.useIsPoolAddress=Bd;exports.useIsTradingEnabled=zi;exports.useIsWalletConnected=Fd;exports.useManagerLogicAddress=Ga;exports.useNetwork=Ce;exports.useOnSimulateTransaction=Io;exports.useOnTokenSelector=Eo;exports.useOnTradingTypeChange=ls;exports.useOnTransactionError=Ao;exports.useOnTransactionEstimationError=fn;exports.useOnTransactionSuccess=Co;exports.usePoolComposition=mt;exports.usePoolCompositionWithFraction=wi;exports.usePoolDynamic=oe;exports.usePoolFees=Pn;exports.usePoolManagerDynamic=jt;exports.usePoolManagerLogicData=Va;exports.usePoolManagerStatic=Mt;exports.usePoolStatic=Lt;exports.usePoolTokenPrice=ue;exports.useProjectedEarningsCore=el;exports.useRawAssetPrice=es;exports.useReceiveTokenInput=P;exports.useReferralProgram=cE;exports.useSendTokenInput=N;exports.useSetPoolAddress=Dd;exports.useSetTradingType=kd;exports.useStaticCallQuery=xT;exports.useTokenAllowance=Tn;exports.useTradingPanelActions=F;exports.useTradingPanelLogger=Ve;exports.useTradingPanelModal=K;exports.useTradingPanelPoolAddress=_o;exports.useTradingPanelPoolConfig=b;exports.useTradingPanelPoolConfigs=at;exports.useTradingPanelPoolFallbackData=qe;exports.useTradingPanelSettings=Q;exports.useTradingPanelState=J;exports.useTradingPanelTransactions=re;exports.useTradingPanelType=we;exports.useTradingResultHandling=Ui;exports.useTradingSettleHandler=Ke;exports.useUpdateCustomDepositTokensPerChain=jd;exports.useUpdatePoolConfig=Ld;exports.useUpdatePoolFallbackData=xo;exports.useUpdateReceiveTokenInput=Od;exports.useUpdateSendTokenInput=Nd;exports.useUpdateTradingModal=Rd;exports.useUpdateTradingSettings=Pd;exports.useUserBalancesDynamic=ui;exports.useUserLimitOrder=Ht;exports.useUserTokenBalance=he;exports.useUserVaultBalance=bi;exports.useUserVaultsBalances=Ti;exports.useVaultContractData=Rb;exports.useVaultDepositTokens=jn;exports.useVaultSupplyCap=xi;exports.useVaultVestedPoints=gi;exports.validateLoggerEventParams=dd;
|