@dhedge/trading-widget 4.7.0 → 5.0.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/README.md +17 -18
- package/core-kit/hooks/state/action.d.ts +0 -4
- package/core-kit/hooks/state/index.d.ts +1 -1
- package/core-kit/hooks/trading/index.d.ts +1 -3
- package/core-kit/hooks/trading/withdraw-v2/init-step/use-fetch-init-withdraw-aave-swap-quotes.d.ts +5 -0
- package/core-kit/hooks/trading/withdraw-v2/init-step/use-fetch-init-withdraw-complex-asset-data.d.ts +8 -4
- package/core-kit/hooks/trading/withdraw-v2/init-step/use-get-init-withdraw-transaction-arguments.d.ts +2 -2
- package/core-kit/types/state.types.d.ts +1 -6
- package/core-kit/utils/aave.d.ts +1 -1
- package/core-kit/utils/complex-withdraw-asset-data.d.ts +22 -0
- package/core-kit/utils/index.d.ts +1 -0
- package/core-kit/utils/number.d.ts +6 -0
- package/core-kit/utils/swap-data.d.ts +3 -12
- package/core-kit/utils/transaction.d.ts +6 -4
- package/index.cjs +1 -1
- package/index.js +2161 -2166
- package/package.json +1 -1
- package/trading-widget/providers/config-provider/config-provider.types.d.ts +0 -1
- package/core-kit/hooks/trading/withdraw-v2/init-step/use-fetch-init-withdraw-aave-swap-data.d.ts +0 -5
- package/core-kit/hooks/user/multicall/use-user-multicall.d.ts +0 -1248
package/index.cjs
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
"use strict";var Rl=Object.defineProperty;var Ml=(e,t,n)=>t in e?Rl(e,t,{enumerable:!0,configurable:!0,writable:!0,value:n}):e[t]=n;var Le=(e,t,n)=>Ml(e,typeof t!="symbol"?t+"":t,n);Object.defineProperty(exports,Symbol.toStringTag,{value:"Module"});const r=require("react/jsx-runtime"),k=require("@headlessui/react"),E=require("wagmi"),u=require("react"),g=require("wagmi/chains"),At=require("date-fns"),D=require("viem"),b=require("bignumber.js"),jl=require("ts-custom-error"),Ze=require("@tanstack/react-query"),ne=require("@heroicons/react/24/outline"),A=require("classnames"),Bl=require("react-popper-tooltip"),$l=require("wagmi/connectors"),Oe=require("@heroicons/react/24/solid"),Yn=require("@heroicons/react/16/solid"),Jt=require("@heroicons/react/20/solid"),M=()=>{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}},I="0x0000000000000000000000000000000000000000",Fe=BigInt("0xffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff"),P=18,Fl="1000000000000000000",Wl=59e3,Je=3e4,We=15e3,rr=5e3,or=400,ir=or*1.2,lr=At.formatDuration({hours:24}),cr={address:I,symbol:"",chainId:g.optimism.id,depositParams:{customTokens:[]},withdrawParams:{customTokens:[]},deprecated:!1},Ul="deposit",dr=1,dn=0,zl=.5,pr=.02,Hl=.75,Gl=[dn],ur="withdrawSafe",mr="initWithdrawal",Vl="unrollAndClaim",ql="completeWithdrawal",yr=3e7,wr=1.25,me=1e4,hr=13e3,gr=3,pa=2e4,Yl=15e3,Kl={[g.mainnet.id]:g.mainnet,[g.polygon.id]:g.polygon,[g.optimism.id]:g.optimism,[g.arbitrum.id]:g.arbitrum,[g.base.id]:g.base},Ye={[g.mainnet.id]:{nativeTokenSymbol:"ETH",wrappedNativeTokenName:"WETH",address:"0xc02aaa39b223fe8d0a0e5c4f27ead9083c756cc2",decimals:P},[g.polygon.id]:{nativeTokenSymbol:"POL",wrappedNativeTokenName:"WPOL",address:"0x0d500b1d8e8ef31e21c99d1db9a6444d3adf1270",decimals:P},[g.optimism.id]:{nativeTokenSymbol:"ETH",wrappedNativeTokenName:"WETH",address:"0x4200000000000000000000000000000000000006",decimals:P},[g.arbitrum.id]:{nativeTokenSymbol:"ETH",wrappedNativeTokenName:"WETH",address:"0x82af49447d8a07e3bd95bd0d56f35241523fbab1",decimals:P},[g.base.id]:{nativeTokenSymbol:"ETH",wrappedNativeTokenName:"WETH",address:"0x4200000000000000000000000000000000000006",decimals:P}},Yt={[g.mainnet.id]:299e5,[g.polygon.id]:299e5,[g.optimism.id]:299e5,[g.arbitrum.id]:299e5,[g.base.id]:299e5},Ql={[g.mainnet.id]:"https://eth-mainnet.g.alchemy.com/v2",[g.optimism.id]:"https://opt-mainnet.g.alchemy.com/v2",[g.polygon.id]:"https://polygon-mainnet.g.alchemy.com/v2",[g.arbitrum.id]:"https://arb-mainnet.g.alchemy.com/v2",[g.base.id]:"https://base-mainnet.g.alchemy.com/v2"},Tr={USD:"$",ETH:"Ξ",BTC:"₿"},Xl={USD:2,ETH:4,BTC:6},Zl=["USDC","USDT"],Q={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:"create_limit_sell_order",OPEN_LIMIT_SELL_VIEW:"open_limit_sell_view",LIMIT_ORDER_WITHDRAW:"limit_order_withdraw",LIMIT_ORDER_WITHDRAW_DELETE:"limit_order_withdraw_delete"},Jl={approve:[Q.APPROVED_TOKEN],deposit:[Q.DEPOSIT],multi_withdraw:[Q.WITHDRAWAL,Q.MULTI_ASSET_WITHDRAW],single_withdraw:[Q.WITHDRAWAL,Q.SINGLE_ASSET_WITHDRAW],single_withdraw_and_claim:[Q.WITHDRAWAL,Q.SINGLE_ASSET_WITHDRAW_AND_CLAIM],claim:[Q.CLAIM],swap:[Q.SWAP],create_limit_sell_order:[Q.CREATE_LIMIT_SELL_ORDER],limit_order_withdraw:[Q.LIMIT_ORDER_WITHDRAW],delete_limit_order_withdraw:[Q.LIMIT_ORDER_WITHDRAW_DELETE]},be={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 Re=(e=>(e.ETH="ETH",e.MAINNET="MAINNET",e.POLYGON="POLYGON",e.OE="OPTIMISM",e.ARBI="ARBITRUM",e.BASE="BASE",e))(Re||{});const ht=process.env.NEXT_PUBLIC_INFURA_API_KEY;g.arbitrum.id+"",`${ht}`,g.optimism.id+"",`${ht}`,g.polygon.id+"",`${ht}`,g.base.id+"",`${ht}`,g.mainnet.id+"",`${ht}`;const ec={[g.arbitrum.id]:{...g.arbitrum,name:"Arbitrum",iconPath:"/icons/arbitrum-network.svg",chainId:g.arbitrum.id,shortName:"ARB"},[g.optimism.id]:{...g.optimism,name:"Optimism",iconPath:"/icons/optimism-network.svg",chainId:g.optimism.id,shortName:"OP"},[g.polygon.id]:{...g.polygon,chainId:g.polygon.id,iconPath:"/icons/polygon-network.svg",shortName:"POLY"},[g.base.id]:{...g.base,chainId:g.base.id,iconPath:"/icons/base-network.svg",shortName:"BASE"},[g.mainnet.id]:{...g.mainnet,chainId:g.mainnet.id,iconPath:"/icons/ethereum-network.svg",shortName:"ETHEREUM"}};Re.ETH+"",g.mainnet.id,Re.MAINNET+"",g.mainnet.id,Re.POLYGON+"",g.polygon.id,Re.OE+"",g.optimism.id,Re.ARBI+"",g.arbitrum.id,Re.BASE+"",g.base.id;g.mainnet.id+"",g.optimism.id+"",g.polygon.id+"",g.arbitrum.id+"",g.base.id+"";const ua="0x0000000000000000000000000000000000000000";BigInt("0xffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff");g.mainnet.id+"",BigInt(100),g.optimism.id+"",BigInt(600),g.polygon.id+"",BigInt(600),g.base.id+"",BigInt(600),g.arbitrum.id+"",BigInt(5300);const tc="0x96D33bCF84DdE326014248E2896F79bbb9c13D6d",br="0xbDd84294bC8299861A2121F749A25EFEb7168a32",nc="0x87870Bca3F3fD6335C3F4ce8392D69350B4fA4E2",ac="0xffFb5fB14606EB3a548C113026355020dDF27535",sc="0x794a61358D6845594F94dc1DB02A252b5b4814aD",fr="0xA5679C4272A056Bb83f039961fae7D99C48529F5",vr="0x26a687e8244f1866E9Aa2D400c8b9957Aa8e6Ad4",rc="0x49Afe3abCf66CF09Fab86cb1139D8811C8afe56F",xr="0xf067575Eb60c7587C11e867907AA7284833704d1",oc="0x59525b9b23adc475ef91d98dae06b568ba574ce5",ic="0xa907504d7a4c415b4e6e1d0866d96afe8202f0e5",lc="0x1849324228d852a67eb7443e42d967e480ffe95d",cc="0xa238dd80c259a72e81d7e4664a9801593f98d1c5",Ar="0xFcBEc28c43E356693971a24bf3F2Fd7D965E2ebA",dc="0x07e144e336fcc3fe928a8a2a5714da64354c1aab",pc="0x5e61a079A178f0E5784107a4963baAe0c5a680c6",uc="0x794a61358D6845594F94dc1DB02A252b5b4814aD",Sr="0x2Ed1bd7f66e47113672f3870308b5E867C5bb743",Cr="0x3bFE2a472d2964Ea4070725b7Fb0A868b3f08b63",mc="0xfdc7b8bFe0DD3513Cc669bB8d601Cb83e2F69cB0",yc="0x8dFf5E27EA6b7AC08EbFdf9eB090F32ee9a30fcf",wc="0x794a61358D6845594F94dc1DB02A252b5b4814aD",Er="0x45b90480D6F643dE2f128db091A357C3c90399f2",Ir="0xB71410736d2C8F2DAf30dA9D332dA10534d2624d",ma="0x4F754e0F0924afD74980886b0B479Fa1D7C58D0D";g.mainnet.id+"",g.arbitrum.id+"",g.base.id+"",g.optimism.id+"",g.polygon.id+"";g.mainnet.id+"",g.arbitrum.id+"",g.base.id+"",g.optimism.id+"",g.polygon.id+"";const Kn=[{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"}],hc=[{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"}],Ue=[{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"}],fe=[{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"}],gc=[{type:"tuple[]",components:[{type:"address",name:"asset"},{type:"uint256",name:"amount"},{type:"tuple",name:"swapData",components:[{type:"bytes32",name:"routerKey"},{type:"bytes",name:"txData"}]}]}],Tc=[{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"}],_r=[{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"}],Kt=[{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"}],bc=[{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"}],ye=[...bc,{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"}],pn=[{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"}],Dr={[g.mainnet.id]:{factory:tc,easySwapperV2:br,aaveLendingPoolV3:nc},[g.polygon.id]:{factory:mc,aaveLendingPoolV2:yc,aaveLendingPoolV3:wc,easySwapperV2:Er,limitOrder:Ir},[g.optimism.id]:{factory:pc,rewardDistribution:dc,aaveLendingPoolV3:uc,easySwapperV2:Sr,limitOrder:Cr},[g.arbitrum.id]:{factory:ac,aaveLendingPoolV3:sc,easySwapperV2:fr,limitOrder:vr},[g.base.id]:{factory:rc,flatcoinPointsModule:oc,easySwapperV2:xr,aaveLendingPoolV3:cc,limitOrder:Ar}},Nr={factory:Ue,aaveLendingPoolV2:Kn,aaveLendingPoolV3:Kn,rewardDistribution:_r,poolManagerLogic:De,erc20:D.erc20Abi,poolLogic:fe,flatcoinPointsModule:Kt,easySwapperV2:ye,limitOrder:pn},Qn="Gas estimate error occurred",Or="See console logs to report error details.",Xn="Missing simulation params",Pr="Simulation timeout",kr="swap_data_deposit_error",Lr="swap_data_withdraw_error",gt={title:"Low Slippage",hint:"Please increase slippage tolerance and try again."},Rr={"invalid liquidityMinted":gt,"high withdraw slippage":gt,"high deposit slippage":gt,"high swap slippage":gt,InsufficientAmountReceived:gt,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."},[kr]:{title:"Swap Quote Fetching Error",hint:"Please select a different deposit option, refresh the swap quote, or choose another swap source in settings."},[Lr]:{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."}},Mr="Invalid limit order prices",jr={InvalidPrices:{title:Mr}},fc=[...Object.keys(Rr),...Object.keys(jr)],U=18,ya={address:"0xff970a61a04b1ca14834a43f5de4533ebddb5cc8",symbol:"USDCe",decimals:6,value:""},le={address:"0xaf88d065e77c8cC2239327C5EDb3A432268e5831",symbol:"USDC",decimals:6,value:""},St={address:"0x82af49447d8a07e3bd95bd0d56f35241523fbab1",symbol:"WETH",decimals:U,value:""},je={address:"0x2f2a2543b76a4166549f7aab2e75bef0aefc5b0f",symbol:"WBTC",decimals:8,value:""},vc={address:"0x6c84a8f1c29108F47a79964b5Fe888D4f4D0dE40",symbol:"tBTC",decimals:U,value:""},xc={address:"0x5979D7b546E38E414F7E9822514be443A4800529",symbol:"wstETH",decimals:U,value:""},Ac={address:"0xfd086bc7cd5c481dcc9c85ebe478a1c0b69fcbb9",symbol:"USDT",decimals:6,value:""},Sc={address:"0x2bcC6D6CdBbDC0a4071e48bb3B969b06B3330c07",symbol:"SOL",decimals:9,value:""},Cc={address:"0xa9004a5421372e1d83fb1f85b0fc986c912f91f3",symbol:"WBNB",decimals:U,value:""},Ec={address:"0xf97f4df75117a78c1a5a0dbb814af92458539fb4",symbol:"LINK",decimals:U,value:""},Br={address:"0x833589fcd6edb6e08f4c7c32d4f71b54bda02913",symbol:"USDC",decimals:6,value:""},Ic={address:"0xd9aaec86b65d86f6a7b5b1b0c42ffa531710b6ca",symbol:"USDbC",decimals:6,value:""},wa={address:"0x4200000000000000000000000000000000000006",symbol:"WETH",decimals:U,value:""},_c={address:"0x2ae3f1ec7f1f5012cfeab0185bfc7aa3cf0dec22",symbol:"cbETH",decimals:U,value:""},$r={address:"0xcbb7c0000ab88b473b1f5afd9ef808440eed33bf",symbol:"cbBTC",decimals:8,value:""},Qt={address:"0xb6fe221fe9eef5aba221c348ba20a1bf5e73624c",symbol:"rETH",decimals:U,value:""},Dc={address:"0x236aa50979D5f3De3Bd1Eeb40E81137F22ab794b",symbol:"tBTC",decimals:U,value:""},Nc={address:"0xc1cba3fcea344f92d9239c08c0568f6f2f0ee452",symbol:"wstETH",decimals:U,value:""},ha={address:"0x7F5c764cBc14f9669B88837ca1490cCa17c31607",symbol:"USDCe",decimals:6,value:""},Fr={address:"0x0b2C639c533813f4Aa9D7837CAf62653d097Ff85",symbol:"USDC",decimals:6,value:""},Wr={address:"0x94b008aa00579c1307b0ef2c499ad98a8ce58e58",symbol:"USDT",decimals:6,value:""},ga={address:"0x4200000000000000000000000000000000000006",symbol:"WETH",decimals:U,value:""},Oc={address:"0x8c6f28f2F1A3C87F0f938b96d27520d9751ec8d9",symbol:"sUSD",decimals:U,value:""},Ur={address:"0xda10009cbd5d07dd0cecc66161fc93d7c9000da1",symbol:"DAI",decimals:U,value:""},Ke={address:"0x68f180fcce6836688e9084f035309e29bf0a2095",symbol:"WBTC",decimals:8,value:""},Pc={address:"0xe405de8f52ba7559f9df3c368500b6e6ae6cee49",symbol:"sETH",decimals:U,value:""},kc={address:"0x350a791bfc2c21f9ed5d10980dad2e2638ffa7f6",symbol:"LINK",decimals:U,value:""},Lc={address:"0x6c84a8f1c29108F47a79964b5Fe888D4f4D0dE40",symbol:"tBTC",decimals:U,value:""},Rc={address:"0x1F32b1c2345538c0c6f582fCB022739c4A194Ebb",symbol:"wstETH",decimals:U,value:""},Ta={address:"0x7ceB23fD6bC0adD59E62ac25578270cFf1b9f619",symbol:"WETH",decimals:U,value:""},ba={address:"0x2791Bca1f2de4661ED88A30C99A7a9449Aa84174",symbol:"USDCe",decimals:6,value:""},zr={address:"0x3c499c542cEF5E3811e1192ce70d8cC03d5c3359",symbol:"USDC",decimals:6,value:""},Mc={address:"0x553d3d295e0f695b9228246232edf400ed3560b5",symbol:"PAXG",decimals:U,value:""},fa={address:"0x1BFD67037B42Cf73acF2047067bd4F2C47D9BfD6",symbol:"WBTC",decimals:8,value:""},Hr={address:"0x0d500B1d8E8eF31E21C99d1Db9A6444d3ADf1270",symbol:"WPOL",decimals:U,value:""},Gr={address:"0xc2132d05d31c914a87c6611c10748aeb04b58e8f",symbol:"USDT",decimals:6,value:""},Vr={address:"0x8f3cf7ad23cd3cadbd9735aff958023239c6a063",symbol:"DAI",decimals:U,value:""},jc={address:"0x236aa50979d5f3de3bd1eeb40e81137f22ab794b",symbol:"tBTC",decimals:U,value:""},va={address:"0xc02aaa39b223fe8d0a0e5c4f27ead9083c756cc2",symbol:"WETH",decimals:U,value:""},qr={address:"0xa0b86991c6218b36c1d19d4a2e9eb0ce3606eb48",symbol:"USDC",decimals:6,value:""},xa={address:"0x2260fac5e5542a773aa44fbcfedf7c193bc2c599",symbol:"WBTC",decimals:8,value:""},Yr={address:"0xdac17f958d2ee523a2206206994597c13d831ec7",symbol:"USDT",decimals:6,value:""},en={address:ua,symbol:"all",decimals:U,value:""},Aa={[ya.address.toLowerCase()]:"USDCe",[ha.address.toLowerCase()]:"USDCe",[ba.address.toLowerCase()]:"USDCe"},Kr={[g.mainnet.id]:va,[g.optimism.id]:ga,[g.base.id]:wa,[g.polygon.id]:Ta,[g.arbitrum.id]:St},Qr={[g.optimism.id]:Ke,[g.base.id]:$r,[g.polygon.id]:fa,[g.arbitrum.id]:je,[g.mainnet.id]:xa},Bc={[g.optimism.id]:{WETH:ga,USDC:Fr,WBTC:Ke,USDCe:ha,USDT:Wr,DAI:Ur},[g.polygon.id]:{WMATIC:Hr,WETH:Ta,USDC:zr,WBTC:fa,USDCe:ba,USDT:Gr,DAI:Vr},[g.arbitrum.id]:{WETH:St,USDC:le,WBTC:je,USDCe:ya},[g.base.id]:{WETH:wa,USDC:Br},[g.mainnet.id]:{WETH:va,USDC:qr,WBTC:xa,USDT:Yr}},$c="https://hermes.pyth.network",Fc="https://flat.money/flatcoin",Wc="https://v1.flat.money/flatcoin",Xt={RETH_BASE:"0xdb0cd65dcc7fe07003ce1201f91e1f966fa95768",WBTC_OPTIMISM:"0x6d857e9d24a7566bb72a3fb0847a3e0e4e1c2879",WBTC_ARBITRUM:"0xb1353d51991e79fefd4bfdba2a03e9f0232814a6"},Uc=Object.values(Xt),zc={[Xt.RETH_BASE]:{symbol:Qt.symbol,decimals:Qt.decimals,address:Qt.address},[Xt.WBTC_OPTIMISM]:{symbol:Ke.symbol,decimals:Ke.decimals,address:Ke.address},[Xt.WBTC_ARBITRUM]:{symbol:je.symbol,decimals:je.decimals,address:je.address}},Xr="0xb95fb324b8a2faf8ec4f76e3df46c718402736e2",Zr=[Xr,"0x357cb23571ef7a3d6189b7facfc361ea71f7cab5"],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"},se={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"},Jr=Object.values(se),Hc={[se.SOL_ARBITRUM]:le,[se.BTC_ARBITRUM]:je,[se.WETH_WETH_ARBITRUM]:St,[se.WETH_USDC_ARBITRUM]:St,[se.SUI_ARBITRUM]:le,[se.DOGE_ARBITRUM]:le,[se.XRP_ARBITRUM]:le,[se.CRV_ARBITRUM]:le,[se.HYPE_ARBITRUM]:le,[se.BNB_ARBITRUM]:le,[se.LINK_ARBITRUM]:le,[se.PUMP_ARBITRUM]:le,[se.BNB_WBTC_USDC_ARBITRUM]:le},Gc={"0x9a916e55f5b67226734cd7b465d51bce1d11a89a":le},xt={IS_BATCH_TRANSACTIONS_ENABLED:"isBatchTransactionsEnabled",REFERRER:"referrer",REF_POOL:"ref_pool"},Vc={AUTO_COMPLETE_WITHDRAW:"auto-complete-withdraw"},G=(e,t)=>e?.toLowerCase()===t?.toLowerCase(),ee=e=>G(e,ua),W=(e,t)=>Dr[t]?.[e]??I,eo=e=>Nr[e],to=e=>e&&`${e.substring(0,6)}...${e.substring(e.length-4,e.length)}`,Zn=({address:e,chainId:t})=>{const n=W("aaveLendingPoolV3",t);return G(e,n)},no=({sourceAddress:e,amount:t})=>`${e}_${t}`,ao=(e,t)=>{const n=e.slice(0,t),a=e.slice(t);return{firstPart:n,secondPart:a}},Ne=(e,t)=>e/t*100,Ct=e=>e<1?4:e<10?3:2,tn=(e,t=P)=>new b(e.toString()).shiftedBy(t).toFixed(0),Jn=(e,t,n,a)=>new b(t).dividedBy(n).multipliedBy(e).shiftedBy(-(a||P)).toNumber(),Sa=e=>{const t=new b(.01),n=new b(e),a=!n.isZero()&&n.lt(t)?t:n;return BigInt(a.multipliedBy(100).toFixed(0))},ds=({vaultAddress:e,swapData:t,sendTokenAddress:n,sendTokenAmount:a,vaultDepositTokenAddress:s,minVaultTokensReceivedAmount:o,routerKey:i="ONE_INCH",swapDestinationAmount:l,swapSlippage:c})=>{const d=new b(l).multipliedBy(1-c/100).toFixed(0),p=[D.stringToHex(i,{size:32}),t];return[e,[[n,a,p],[s,d]],o]},qc=({receiveAssetAddress:e,assets:t,swapData:n})=>{const a={srcData:[],destAmount:new b("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"]]},Yc=({assetAddress:e,swapData:t,swapParams:n,slippageToleranceForContractTransaction:a})=>{if(!n)return{supportedAsset:e,withdrawData:"",slippageTolerance:BigInt(0)};const{srcData:s,dstData:o}=n,i=s.map(({asset:d,amount:p})=>{const m=t?.[no({sourceAddress:d,amount:p.toString()})];return{asset:d,amount:p,swapData:{routerKey:D.stringToHex(m?.routerKey??"",{size:32}),txData:m?.rawTransaction.data??"0x"}}}),l=D.encodeAbiParameters(gc,[i]),c=D.encodeAbiParameters(Tc,[{encodedSrcData:l,dstData:{dstAddress:o.asset,dstAmount:o.amount},slippage:a}]);return{supportedAsset:e,withdrawData:c,slippageTolerance:a}},un=(e,t)=>Ye[t]?.nativeTokenSymbol===e,so=({nativeTokenBalance:e,tokenDecimals:t,gasPrice:n})=>{const a=new b(n).multipliedBy(yr).shiftedBy(-t),s=new b(e).minus(a);return s.gt("0")?s:new b("0")},ro=e=>Zl.includes(e),Kc=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},Qc=(e,t=150)=>e.length>t?e.substring(0,t):e,ps=(e,t=fc)=>{const n=e.toLowerCase();return t.sort((a,s)=>s.length-a.length).find(a=>n.includes(a.toLowerCase()))},us=e=>Rr[e]??jr[e],oo=({errorMessage:e,abiErrors:t})=>{if(!e||e.includes("User rejected"))return null;const n=t.find(o=>e.includes(o));if(n&&ps(n))return us(n);const a=ps(e);if(a)return us(a);const[s]=e.split(n?".":"Contract").map(o=>o.trim());return{title:"Transaction failed",hint:`${Qc(s??"")} ${n?`: ${n}`:""}`}},Xc=e=>typeof e=="bigint"&&e!==BigInt(0),$e=(e,t=U)=>new b(e).shiftedBy(-t).toNumber(),io=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?$e(e):Number(e)),ea=e=>io(e)?new b(e).toFixed():"",ms=["₀","₁","₂","₃","₄","₅","₆","₇","₈","₉"],Ae=({value:e,decimals:t})=>{const n=new b(e);if(n.isGreaterThan(1)||n.isZero())return ea(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<ms.length)return`0.0${ms[o.length]}${i.slice(0,3)}`}return ea(n.toFixed(t))},It=(e,t=0)=>`${e.toLocaleString("en-US",{maximumFractionDigits:t})}%`,lo=e=>e.toString().replace(/\B(?=(\d{3})+(?!\d))/g,","),vt=(e,t,n=0)=>{const a=Ne(+e,t);return It(a,n)},Zt=({currency:e,value:t})=>e==="USD"?te({value:t}):`${Tr[e]} ${Ae({value:t,decimals:Xl[e]})}`,Zc=(e,t)=>new b(new b(e).toFixed(t,b.ROUND_DOWN)).toString(),Jc=(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)}`},co=({balance:e,symbol:t,precision:n,truncateSymbol:a})=>`${Zc(e,n)} ${Jc(t)}`,mn=typeof window<"u",Ca=e=>G(ic,e)||G(lc,e),po=e=>Uc.some(t=>G(t,e)),uo=e=>zc[e.toLowerCase()]??{symbol:"",decimals:18,address:I},ed=e=>G(e,Xr)?Wc:Fc,Ea=e=>`eth_${e}`,td=({action:e,log:t,symbol:n,vaultAddress:a,chainId:s})=>{const o={[be.SYMBOL.NAME]:n,[be.CHAIN_ID.NAME]:s,[be.ADDRESS.NAME]:Ea(a)};Jl[e].forEach(i=>{t?.(i,o)})},nd=e=>Jr.some(t=>G(t,e)),ad=e=>Hc[e.toLowerCase()]??{symbol:"",decimals:18,address:I},sd=e=>Gc[e.toLowerCase()];function rd(){if(mn)try{const e=localStorage.getItem(xt.IS_BATCH_TRANSACTIONS_ENABLED);return e?JSON.parse(e):void 0}catch{return}}function od(e){if(mn)try{localStorage.setItem(xt.IS_BATCH_TRANSACTIONS_ENABLED,JSON.stringify(e))}catch(t){console.error("[core-kit]: Failed to persist batch transactions setting",t)}}function J(){}const ys={address:I,symbol:"",decimals:P,value:""},mo=e=>{const t=e?.poolAddress??I,n={address:t,symbol:e?.poolConfigMap?.[t]?.symbol??"",decimals:P,value:""},a=e?.type??"deposit",s=a==="deposit"?ys:n,o=a==="deposit"?n:ys;return{poolAddress:t,poolConfigMap:{...e?.poolConfigMap},settings:{slippage:"auto",isInfiniteAllowance:!1,isMultiAssetWithdrawalEnabled:!0,isMaxSlippageLoading:!1,availableAggregators:[],...e?.settings,isBatchTransactionsEnabled:rd()??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},transactions:e?.transactions??[],poolFallbackData:{address:I,...e?.poolFallbackData},customDepositTokensPerChain:e?.customDepositTokensPerChain,defaultChainId:e?.defaultChainId}},yo=u.createContext({...mo({poolAddress:I,poolConfigMap:{}})}),wo=u.createContext({setPoolAddress:J,setTradingType:J,updateSendTokenInput:J,updateReceiveTokenInput:J,updateTradingSettings:J,updateTradingModal:J,updateTransactions:J,updatePoolFallbackData:J,updateCustomDepositTokensPerChain:J,onTradingSettleError:J,onTransactionError:J,onTransactionSuccess:J,onTransactionEstimationError:J,onTokenSelector:J,onLog:J,onSimulateTransaction:()=>Promise.resolve(null),getSwapData:()=>Promise.resolve(null),getSwapQuotes:()=>Promise.resolve(null),updatePoolConfig:J,addPoolConfig:J}),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_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&&td({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}},ld=({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:h,onTradingSettleError:T,getSwapData:f,getSwapQuotes:C}})=>{const[O,_]=u.useReducer(id(w),mo(t)),Y=u.useCallback(j=>{_({type:"SET_POOL_ADDRESS",payload:j}),n?.(j)},[n]),ae=u.useCallback(j=>{_({type:"UPDATE_SEND_TOKEN_INPUT",payload:j}),a?.(j)},[a]),xe=u.useCallback(j=>{_({type:"UPDATE_RECEIVE_TOKEN_INPUT",payload:j}),s?.(j)},[s]),Wt=u.useCallback(j=>{_({type:"UPDATE_TRADING_SETTINGS",payload:j}),o?.(j)},[o]),Ut=u.useCallback(j=>{_({type:"SET_TRADING_TYPE",payload:j}),i?.(j)},[i]),zt=u.useCallback(j=>{_({type:"UPDATE_TRADING_MODAL",payload:j}),l?.(j)},[l]),wt=u.useCallback(j=>{_({type:"UPDATE_TRADING_TRANSACTIONS",payload:j}),c?.(j)},[c]),os=u.useCallback(j=>{_({type:"UPDATE_POOL_FALLBACK_DATA",payload:j})},[]),is=u.useCallback(j=>{_({type:"UPDATE_CUSTOM_DEPOSIT_TOKENS_PER_CHAIN",payload:j})},[]),ls=u.useCallback(j=>{_({type:"UPDATE_POOL_CONFIG",payload:j})},[]),cs=u.useCallback(j=>{_({type:"ADD_POOL_CONFIG",payload:j})},[]),Ll=u.useMemo(()=>({setPoolAddress:Y,setTradingType:Ut,updateTradingSettings:Wt,updateSendTokenInput:ae,updateReceiveTokenInput:xe,updateTradingModal:zt,updateTransactions:wt,updatePoolFallbackData:os,updateCustomDepositTokensPerChain:is,onTransactionError:d,onTransactionSuccess:p,onTransactionEstimationError:m,onTokenSelector:y,onLog:w,onSimulateTransaction:h,onTradingSettleError:T,getSwapData:f,getSwapQuotes:C,updatePoolConfig:ls,addPoolConfig:cs}),[Y,Ut,Wt,ae,xe,zt,wt,os,is,d,p,m,y,w,h,T,f,C,ls,cs]);return r.jsx(wo.Provider,{value:Ll,children:r.jsx(yo.Provider,{value:O,children:e})})},Z=()=>u.useContext(yo),F=()=>u.useContext(wo),cd=()=>F().setPoolAddress,dd=()=>F().updateSendTokenInput,pd=()=>F().updateReceiveTokenInput,ud=()=>F().updateTradingSettings,md=()=>F().setTradingType,yd=()=>F().updateTradingModal,ho=()=>F().updatePoolFallbackData,go=()=>F().onTransactionError,To=()=>F().onTradingSettleError,bo=()=>F().onTransactionSuccess,yn=()=>F().onTransactionEstimationError,fo=()=>F().onTokenSelector,ze=()=>F().onLog,vo=()=>F().onSimulateTransaction,wd=()=>{const e=F().getSwapData,{settings:{selectedAggregators:t}}=Z();return u.useCallback(({signal:n,variables:a})=>e({signal:n,variables:{...a,...!!t.length&&{aggregators:t}}}),[e,t])},xo=()=>{const e=F().getSwapQuotes,{settings:{selectedAggregators:t}}=Z();return u.useCallback(({signal:n,variables:a})=>e({signal:n,variables:{...a,...!!t.length&&{aggregators:t}}}),[e,t])},hd=()=>F().updatePoolConfig,gd=()=>F().addPoolConfig,Td=()=>F().updateCustomDepositTokensPerChain,Ao=()=>[Z().poolAddress,F().setPoolAddress],x=()=>{const{poolAddress:e,poolConfigMap:t}=Z();return t[e]??cr},et=()=>{const{poolConfigMap:e}=Z();return u.useMemo(()=>Object.values(e),[e])},bd=e=>{const t=et();return u.useMemo(()=>t.some(n=>n.address===e),[t,e])},He=()=>{const{poolFallbackData:e,poolAddress:t}=Z(),n=ho();return[e.address===t?e:{address:t},n]},So=()=>Z().input,N=()=>[So().sendToken,F().updateSendTokenInput],L=()=>[So().receiveToken,F().updateReceiveTokenInput],K=()=>[Z().settings,F().updateTradingSettings],Co=()=>[Z().customDepositTokensPerChain,F().updateCustomDepositTokensPerChain],X=()=>[Z().modal,F().updateTradingModal],we=()=>[Z().type,F().setTradingType],Ge=()=>Z().type==="deposit",re=()=>[Z().transactions,F().updateTransactions],fd=()=>Z().defaultChainId,Ln=(e,t)=>t.some(({id:n})=>n===e),Se=()=>{const{chain:e}=E.useAccount(),{chains:t}=E.useConfig(),{switchChain:n,switchChainAsync:a}=E.useSwitchChain(),s=fd(),o=e?.id,i=Ln(o,t),l=s&&Ln(s,t)?s:t[0].id;return{chain:e,isSupported:i,switchNetwork:n,switchNetworkAsync:a,chainId:i?o:void 0,supportedChainId:Ln(o,t)?o:l,chains:t}},wn=({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:Je}}),vd=()=>{const{account:e}=M(),[t,n]=u.useState(!1);return u.useEffect(()=>{n(!!e)},[e]),t},Ia=e=>E.useBalance({...e,query:{...e?.query,staleTime:Je}});var Ht=typeof globalThis<"u"?globalThis:typeof window<"u"?window:typeof global<"u"?global:typeof self<"u"?self:{};function hn(e){return e&&e.__esModule&&Object.prototype.hasOwnProperty.call(e,"default")?e.default:e}function xd(){this.__data__=[],this.size=0}var Ad=xd;function Sd(e,t){return e===t||e!==e&&t!==t}var _a=Sd,Cd=_a;function Ed(e,t){for(var n=e.length;n--;)if(Cd(e[n][0],t))return n;return-1}var gn=Ed,Id=gn,_d=Array.prototype,Dd=_d.splice;function Nd(e){var t=this.__data__,n=Id(t,e);if(n<0)return!1;var a=t.length-1;return n==a?t.pop():Dd.call(t,n,1),--this.size,!0}var Od=Nd,Pd=gn;function kd(e){var t=this.__data__,n=Pd(t,e);return n<0?void 0:t[n][1]}var Ld=kd,Rd=gn;function Md(e){return Rd(this.__data__,e)>-1}var jd=Md,Bd=gn;function $d(e,t){var n=this.__data__,a=Bd(n,e);return a<0?(++this.size,n.push([e,t])):n[a][1]=t,this}var Fd=$d,Wd=Ad,Ud=Od,zd=Ld,Hd=jd,Gd=Fd;function tt(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])}}tt.prototype.clear=Wd;tt.prototype.delete=Ud;tt.prototype.get=zd;tt.prototype.has=Hd;tt.prototype.set=Gd;var Tn=tt,Vd=Tn;function qd(){this.__data__=new Vd,this.size=0}var Yd=qd;function Kd(e){var t=this.__data__,n=t.delete(e);return this.size=t.size,n}var Qd=Kd;function Xd(e){return this.__data__.get(e)}var Zd=Xd;function Jd(e){return this.__data__.has(e)}var ep=Jd,tp=typeof Ht=="object"&&Ht&&Ht.Object===Object&&Ht,Eo=tp,np=Eo,ap=typeof self=="object"&&self&&self.Object===Object&&self,sp=np||ap||Function("return this")(),Ce=sp,rp=Ce,op=rp.Symbol,bn=op,ws=bn,Io=Object.prototype,ip=Io.hasOwnProperty,lp=Io.toString,Tt=ws?ws.toStringTag:void 0;function cp(e){var t=ip.call(e,Tt),n=e[Tt];try{e[Tt]=void 0;var a=!0}catch{}var s=lp.call(e);return a&&(t?e[Tt]=n:delete e[Tt]),s}var dp=cp,pp=Object.prototype,up=pp.toString;function mp(e){return up.call(e)}var yp=mp,hs=bn,wp=dp,hp=yp,gp="[object Null]",Tp="[object Undefined]",gs=hs?hs.toStringTag:void 0;function bp(e){return e==null?e===void 0?Tp:gp:gs&&gs in Object(e)?wp(e):hp(e)}var nt=bp;function fp(e){var t=typeof e;return e!=null&&(t=="object"||t=="function")}var _t=fp,vp=nt,xp=_t,Ap="[object AsyncFunction]",Sp="[object Function]",Cp="[object GeneratorFunction]",Ep="[object Proxy]";function Ip(e){if(!xp(e))return!1;var t=vp(e);return t==Sp||t==Cp||t==Ap||t==Ep}var _o=Ip,_p=Ce,Dp=_p["__core-js_shared__"],Np=Dp,Rn=Np,Ts=function(){var e=/[^.]+$/.exec(Rn&&Rn.keys&&Rn.keys.IE_PROTO||"");return e?"Symbol(src)_1."+e:""}();function Op(e){return!!Ts&&Ts in e}var Pp=Op,kp=Function.prototype,Lp=kp.toString;function Rp(e){if(e!=null){try{return Lp.call(e)}catch{}try{return e+""}catch{}}return""}var Do=Rp,Mp=_o,jp=Pp,Bp=_t,$p=Do,Fp=/[\\^$.*+?()[\]{}|]/g,Wp=/^\[object .+?Constructor\]$/,Up=Function.prototype,zp=Object.prototype,Hp=Up.toString,Gp=zp.hasOwnProperty,Vp=RegExp("^"+Hp.call(Gp).replace(Fp,"\\$&").replace(/hasOwnProperty|(function).*?(?=\\\()| for .+?(?=\\\])/g,"$1.*?")+"$");function qp(e){if(!Bp(e)||jp(e))return!1;var t=Mp(e)?Vp:Wp;return t.test($p(e))}var Yp=qp;function Kp(e,t){return e?.[t]}var Qp=Kp,Xp=Yp,Zp=Qp;function Jp(e,t){var n=Zp(e,t);return Xp(n)?n:void 0}var at=Jp,eu=at,tu=Ce,nu=eu(tu,"Map"),Da=nu,au=at,su=au(Object,"create"),fn=su,bs=fn;function ru(){this.__data__=bs?bs(null):{},this.size=0}var ou=ru;function iu(e){var t=this.has(e)&&delete this.__data__[e];return this.size-=t?1:0,t}var lu=iu,cu=fn,du="__lodash_hash_undefined__",pu=Object.prototype,uu=pu.hasOwnProperty;function mu(e){var t=this.__data__;if(cu){var n=t[e];return n===du?void 0:n}return uu.call(t,e)?t[e]:void 0}var yu=mu,wu=fn,hu=Object.prototype,gu=hu.hasOwnProperty;function Tu(e){var t=this.__data__;return wu?t[e]!==void 0:gu.call(t,e)}var bu=Tu,fu=fn,vu="__lodash_hash_undefined__";function xu(e,t){var n=this.__data__;return this.size+=this.has(e)?0:1,n[e]=fu&&t===void 0?vu:t,this}var Au=xu,Su=ou,Cu=lu,Eu=yu,Iu=bu,_u=Au;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=Su;st.prototype.delete=Cu;st.prototype.get=Eu;st.prototype.has=Iu;st.prototype.set=_u;var Du=st,fs=Du,Nu=Tn,Ou=Da;function Pu(){this.size=0,this.__data__={hash:new fs,map:new(Ou||Nu),string:new fs}}var ku=Pu;function Lu(e){var t=typeof e;return t=="string"||t=="number"||t=="symbol"||t=="boolean"?e!=="__proto__":e===null}var Ru=Lu,Mu=Ru;function ju(e,t){var n=e.__data__;return Mu(t)?n[typeof t=="string"?"string":"hash"]:n.map}var vn=ju,Bu=vn;function $u(e){var t=Bu(this,e).delete(e);return this.size-=t?1:0,t}var Fu=$u,Wu=vn;function Uu(e){return Wu(this,e).get(e)}var zu=Uu,Hu=vn;function Gu(e){return Hu(this,e).has(e)}var Vu=Gu,qu=vn;function Yu(e,t){var n=qu(this,e),a=n.size;return n.set(e,t),this.size+=n.size==a?0:1,this}var Ku=Yu,Qu=ku,Xu=Fu,Zu=zu,Ju=Vu,em=Ku;function rt(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])}}rt.prototype.clear=Qu;rt.prototype.delete=Xu;rt.prototype.get=Zu;rt.prototype.has=Ju;rt.prototype.set=em;var Na=rt,tm=Tn,nm=Da,am=Na,sm=200;function rm(e,t){var n=this.__data__;if(n instanceof tm){var a=n.__data__;if(!nm||a.length<sm-1)return a.push([e,t]),this.size=++n.size,this;n=this.__data__=new am(a)}return n.set(e,t),this.size=n.size,this}var om=rm,im=Tn,lm=Yd,cm=Qd,dm=Zd,pm=ep,um=om;function ot(e){var t=this.__data__=new im(e);this.size=t.size}ot.prototype.clear=lm;ot.prototype.delete=cm;ot.prototype.get=dm;ot.prototype.has=pm;ot.prototype.set=um;var No=ot,mm="__lodash_hash_undefined__";function ym(e){return this.__data__.set(e,mm),this}var wm=ym;function hm(e){return this.__data__.has(e)}var gm=hm,Tm=Na,bm=wm,fm=gm;function nn(e){var t=-1,n=e==null?0:e.length;for(this.__data__=new Tm;++t<n;)this.add(e[t])}nn.prototype.add=nn.prototype.push=bm;nn.prototype.has=fm;var Oo=nn;function vm(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 xm=vm;function Am(e,t){return e.has(t)}var Po=Am,Sm=Oo,Cm=xm,Em=Po,Im=1,_m=2;function Dm(e,t,n,a,s,o){var i=n&Im,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&_m?new Sm:void 0;for(o.set(e,t),o.set(t,e);++m<l;){var h=e[m],T=t[m];if(a)var f=i?a(T,h,m,t,e,o):a(h,T,m,e,t,o);if(f!==void 0){if(f)continue;y=!1;break}if(w){if(!Cm(t,function(C,O){if(!Em(w,O)&&(h===C||s(h,C,n,a,o)))return w.push(O)})){y=!1;break}}else if(!(h===T||s(h,T,n,a,o))){y=!1;break}}return o.delete(e),o.delete(t),y}var ko=Dm,Nm=Ce,Om=Nm.Uint8Array,Pm=Om;function km(e){var t=-1,n=Array(e.size);return e.forEach(function(a,s){n[++t]=[s,a]}),n}var Lm=km;function Rm(e){var t=-1,n=Array(e.size);return e.forEach(function(a){n[++t]=a}),n}var Oa=Rm,vs=bn,xs=Pm,Mm=_a,jm=ko,Bm=Lm,$m=Oa,Fm=1,Wm=2,Um="[object Boolean]",zm="[object Date]",Hm="[object Error]",Gm="[object Map]",Vm="[object Number]",qm="[object RegExp]",Ym="[object Set]",Km="[object String]",Qm="[object Symbol]",Xm="[object ArrayBuffer]",Zm="[object DataView]",As=vs?vs.prototype:void 0,Mn=As?As.valueOf:void 0;function Jm(e,t,n,a,s,o,i){switch(n){case Zm:if(e.byteLength!=t.byteLength||e.byteOffset!=t.byteOffset)return!1;e=e.buffer,t=t.buffer;case Xm:return!(e.byteLength!=t.byteLength||!o(new xs(e),new xs(t)));case Um:case zm:case Vm:return Mm(+e,+t);case Hm:return e.name==t.name&&e.message==t.message;case qm:case Km:return e==t+"";case Gm:var l=Bm;case Ym:var c=a&Fm;if(l||(l=$m),e.size!=t.size&&!c)return!1;var d=i.get(e);if(d)return d==t;a|=Wm,i.set(e,t);var p=jm(l(e),l(t),a,s,o,i);return i.delete(e),p;case Qm:if(Mn)return Mn.call(e)==Mn.call(t)}return!1}var ey=Jm;function ty(e,t){for(var n=-1,a=t.length,s=e.length;++n<a;)e[s+n]=t[n];return e}var ny=ty,ay=Array.isArray,Pe=ay,sy=ny,ry=Pe;function oy(e,t,n){var a=t(e);return ry(e)?a:sy(a,n(e))}var iy=oy;function ly(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 cy=ly;function dy(){return[]}var py=dy,uy=cy,my=py,yy=Object.prototype,wy=yy.propertyIsEnumerable,Ss=Object.getOwnPropertySymbols,hy=Ss?function(e){return e==null?[]:(e=Object(e),uy(Ss(e),function(t){return wy.call(e,t)}))}:my,gy=hy;function Ty(e,t){for(var n=-1,a=Array(e);++n<e;)a[n]=t(n);return a}var by=Ty;function fy(e){return e!=null&&typeof e=="object"}var it=fy,vy=nt,xy=it,Ay="[object Arguments]";function Sy(e){return xy(e)&&vy(e)==Ay}var Cy=Sy,Cs=Cy,Ey=it,Lo=Object.prototype,Iy=Lo.hasOwnProperty,_y=Lo.propertyIsEnumerable,Dy=Cs(function(){return arguments}())?Cs:function(e){return Ey(e)&&Iy.call(e,"callee")&&!_y.call(e,"callee")},Ro=Dy,an={exports:{}};function Ny(){return!1}var Oy=Ny;an.exports;(function(e,t){var n=Ce,a=Oy,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})(an,an.exports);var Mo=an.exports,Py=9007199254740991,ky=/^(?:0|[1-9]\d*)$/;function Ly(e,t){var n=typeof e;return t=t??Py,!!t&&(n=="number"||n!="symbol"&&ky.test(e))&&e>-1&&e%1==0&&e<t}var Pa=Ly,Ry=9007199254740991;function My(e){return typeof e=="number"&&e>-1&&e%1==0&&e<=Ry}var ka=My,jy=nt,By=ka,$y=it,Fy="[object Arguments]",Wy="[object Array]",Uy="[object Boolean]",zy="[object Date]",Hy="[object Error]",Gy="[object Function]",Vy="[object Map]",qy="[object Number]",Yy="[object Object]",Ky="[object RegExp]",Qy="[object Set]",Xy="[object String]",Zy="[object WeakMap]",Jy="[object ArrayBuffer]",ew="[object DataView]",tw="[object Float32Array]",nw="[object Float64Array]",aw="[object Int8Array]",sw="[object Int16Array]",rw="[object Int32Array]",ow="[object Uint8Array]",iw="[object Uint8ClampedArray]",lw="[object Uint16Array]",cw="[object Uint32Array]",H={};H[tw]=H[nw]=H[aw]=H[sw]=H[rw]=H[ow]=H[iw]=H[lw]=H[cw]=!0;H[Fy]=H[Wy]=H[Jy]=H[Uy]=H[ew]=H[zy]=H[Hy]=H[Gy]=H[Vy]=H[qy]=H[Yy]=H[Ky]=H[Qy]=H[Xy]=H[Zy]=!1;function dw(e){return $y(e)&&By(e.length)&&!!H[jy(e)]}var pw=dw;function uw(e){return function(t){return e(t)}}var mw=uw,sn={exports:{}};sn.exports;(function(e,t){var n=Eo,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})(sn,sn.exports);var yw=sn.exports,ww=pw,hw=mw,Es=yw,Is=Es&&Es.isTypedArray,gw=Is?hw(Is):ww,jo=gw,Tw=by,bw=Ro,fw=Pe,vw=Mo,xw=Pa,Aw=jo,Sw=Object.prototype,Cw=Sw.hasOwnProperty;function Ew(e,t){var n=fw(e),a=!n&&bw(e),s=!n&&!a&&vw(e),o=!n&&!a&&!s&&Aw(e),i=n||a||s||o,l=i?Tw(e.length,String):[],c=l.length;for(var d in e)(t||Cw.call(e,d))&&!(i&&(d=="length"||s&&(d=="offset"||d=="parent")||o&&(d=="buffer"||d=="byteLength"||d=="byteOffset")||xw(d,c)))&&l.push(d);return l}var Iw=Ew,_w=Object.prototype;function Dw(e){var t=e&&e.constructor,n=typeof t=="function"&&t.prototype||_w;return e===n}var Nw=Dw;function Ow(e,t){return function(n){return e(t(n))}}var Pw=Ow,kw=Pw,Lw=kw(Object.keys,Object),Rw=Lw,Mw=Nw,jw=Rw,Bw=Object.prototype,$w=Bw.hasOwnProperty;function Fw(e){if(!Mw(e))return jw(e);var t=[];for(var n in Object(e))$w.call(e,n)&&n!="constructor"&&t.push(n);return t}var Ww=Fw,Uw=_o,zw=ka;function Hw(e){return e!=null&&zw(e.length)&&!Uw(e)}var Bo=Hw,Gw=Iw,Vw=Ww,qw=Bo;function Yw(e){return qw(e)?Gw(e):Vw(e)}var La=Yw,Kw=iy,Qw=gy,Xw=La;function Zw(e){return Kw(e,Xw,Qw)}var Jw=Zw,_s=Jw,eh=1,th=Object.prototype,nh=th.hasOwnProperty;function ah(e,t,n,a,s,o){var i=n&eh,l=_s(e),c=l.length,d=_s(t),p=d.length;if(c!=p&&!i)return!1;for(var m=c;m--;){var y=l[m];if(!(i?y in t:nh.call(t,y)))return!1}var w=o.get(e),h=o.get(t);if(w&&h)return w==t&&h==e;var T=!0;o.set(e,t),o.set(t,e);for(var f=i;++m<c;){y=l[m];var C=e[y],O=t[y];if(a)var _=i?a(O,C,y,t,e,o):a(C,O,y,e,t,o);if(!(_===void 0?C===O||s(C,O,n,a,o):_)){T=!1;break}f||(f=y=="constructor")}if(T&&!f){var Y=e.constructor,ae=t.constructor;Y!=ae&&"constructor"in e&&"constructor"in t&&!(typeof Y=="function"&&Y instanceof Y&&typeof ae=="function"&&ae instanceof ae)&&(T=!1)}return o.delete(e),o.delete(t),T}var sh=ah,rh=at,oh=Ce,ih=rh(oh,"DataView"),lh=ih,ch=at,dh=Ce,ph=ch(dh,"Promise"),uh=ph,mh=at,yh=Ce,wh=mh(yh,"Set"),$o=wh,hh=at,gh=Ce,Th=hh(gh,"WeakMap"),bh=Th,ta=lh,na=Da,aa=uh,sa=$o,ra=bh,Fo=nt,lt=Do,Ds="[object Map]",fh="[object Object]",Ns="[object Promise]",Os="[object Set]",Ps="[object WeakMap]",ks="[object DataView]",vh=lt(ta),xh=lt(na),Ah=lt(aa),Sh=lt(sa),Ch=lt(ra),Me=Fo;(ta&&Me(new ta(new ArrayBuffer(1)))!=ks||na&&Me(new na)!=Ds||aa&&Me(aa.resolve())!=Ns||sa&&Me(new sa)!=Os||ra&&Me(new ra)!=Ps)&&(Me=function(e){var t=Fo(e),n=t==fh?e.constructor:void 0,a=n?lt(n):"";if(a)switch(a){case vh:return ks;case xh:return Ds;case Ah:return Ns;case Sh:return Os;case Ch:return Ps}return t});var Eh=Me,jn=No,Ih=ko,_h=ey,Dh=sh,Ls=Eh,Rs=Pe,Ms=Mo,Nh=jo,Oh=1,js="[object Arguments]",Bs="[object Array]",Gt="[object Object]",Ph=Object.prototype,$s=Ph.hasOwnProperty;function kh(e,t,n,a,s,o){var i=Rs(e),l=Rs(t),c=i?Bs:Ls(e),d=l?Bs:Ls(t);c=c==js?Gt:c,d=d==js?Gt:d;var p=c==Gt,m=d==Gt,y=c==d;if(y&&Ms(e)){if(!Ms(t))return!1;i=!0,p=!1}if(y&&!p)return o||(o=new jn),i||Nh(e)?Ih(e,t,n,a,s,o):_h(e,t,c,n,a,s,o);if(!(n&Oh)){var w=p&&$s.call(e,"__wrapped__"),h=m&&$s.call(t,"__wrapped__");if(w||h){var T=w?e.value():e,f=h?t.value():t;return o||(o=new jn),s(T,f,n,a,o)}}return y?(o||(o=new jn),Dh(e,t,n,a,s,o)):!1}var Lh=kh,Rh=Lh,Fs=it;function Wo(e,t,n,a,s){return e===t?!0:e==null||t==null||!Fs(e)&&!Fs(t)?e!==e&&t!==t:Rh(e,t,n,a,Wo,s)}var Uo=Wo,Mh=No,jh=Uo,Bh=1,$h=2;function Fh(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 Mh;if(a)var y=a(d,p,c,e,t,m);if(!(y===void 0?jh(p,d,Bh|$h,a,m):y))return!1}}return!0}var Wh=Fh,Uh=_t;function zh(e){return e===e&&!Uh(e)}var zo=zh,Hh=zo,Gh=La;function Vh(e){for(var t=Gh(e),n=t.length;n--;){var a=t[n],s=e[a];t[n]=[a,s,Hh(s)]}return t}var qh=Vh;function Yh(e,t){return function(n){return n==null?!1:n[e]===t&&(t!==void 0||e in Object(n))}}var Ho=Yh,Kh=Wh,Qh=qh,Xh=Ho;function Zh(e){var t=Qh(e);return t.length==1&&t[0][2]?Xh(t[0][0],t[0][1]):function(n){return n===e||Kh(n,e,t)}}var Jh=Zh,eg=nt,tg=it,ng="[object Symbol]";function ag(e){return typeof e=="symbol"||tg(e)&&eg(e)==ng}var xn=ag,sg=Pe,rg=xn,og=/\.|\[(?:[^[\]]*|(["'])(?:(?!\1)[^\\]|\\.)*?\1)\]/,ig=/^\w*$/;function lg(e,t){if(sg(e))return!1;var n=typeof e;return n=="number"||n=="symbol"||n=="boolean"||e==null||rg(e)?!0:ig.test(e)||!og.test(e)||t!=null&&e in Object(t)}var Ra=lg,Go=Na,cg="Expected a function";function Ma(e,t){if(typeof e!="function"||t!=null&&typeof t!="function")throw new TypeError(cg);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(Ma.Cache||Go),n}Ma.Cache=Go;var dg=Ma,pg=dg,ug=500;function mg(e){var t=pg(e,function(a){return n.size===ug&&n.clear(),a}),n=t.cache;return t}var yg=mg,wg=yg,hg=/[^.[\]]+|\[(?:(-?\d+(?:\.\d+)?)|(["'])((?:(?!\2)[^\\]|\\.)*?)\2)\]|(?=(?:\.|\[\])(?:\.|\[\]|$))/g,gg=/\\(\\)?/g,Tg=wg(function(e){var t=[];return e.charCodeAt(0)===46&&t.push(""),e.replace(hg,function(n,a,s,o){t.push(s?o.replace(gg,"$1"):a||n)}),t}),bg=Tg;function fg(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 vg=fg,Ws=bn,xg=vg,Ag=Pe,Sg=xn,Us=Ws?Ws.prototype:void 0,zs=Us?Us.toString:void 0;function Vo(e){if(typeof e=="string")return e;if(Ag(e))return xg(e,Vo)+"";if(Sg(e))return zs?zs.call(e):"";var t=e+"";return t=="0"&&1/e==-1/0?"-0":t}var Cg=Vo,Eg=Cg;function Ig(e){return e==null?"":Eg(e)}var _g=Ig,Dg=Pe,Ng=Ra,Og=bg,Pg=_g;function kg(e,t){return Dg(e)?e:Ng(e,t)?[e]:Og(Pg(e))}var qo=kg,Lg=xn;function Rg(e){if(typeof e=="string"||Lg(e))return e;var t=e+"";return t=="0"&&1/e==-1/0?"-0":t}var An=Rg,Mg=qo,jg=An;function Bg(e,t){t=Mg(t,e);for(var n=0,a=t.length;e!=null&&n<a;)e=e[jg(t[n++])];return n&&n==a?e:void 0}var Yo=Bg,$g=Yo;function Fg(e,t,n){var a=e==null?void 0:$g(e,t);return a===void 0?n:a}var Wg=Fg;function Ug(e,t){return e!=null&&t in Object(e)}var zg=Ug,Hg=qo,Gg=Ro,Vg=Pe,qg=Pa,Yg=ka,Kg=An;function Qg(e,t,n){t=Hg(t,e);for(var a=-1,s=t.length,o=!1;++a<s;){var i=Kg(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&&Yg(s)&&qg(i,s)&&(Vg(e)||Gg(e)))}var Xg=Qg,Zg=zg,Jg=Xg;function eT(e,t){return e!=null&&Jg(e,t,Zg)}var tT=eT,nT=Uo,aT=Wg,sT=tT,rT=Ra,oT=zo,iT=Ho,lT=An,cT=1,dT=2;function pT(e,t){return rT(e)&&oT(t)?iT(lT(e),t):function(n){var a=aT(n,e);return a===void 0&&a===t?sT(n,e):nT(t,a,cT|dT)}}var uT=pT;function mT(e){return e}var yT=mT;function wT(e){return function(t){return t?.[e]}}var hT=wT,gT=Yo;function TT(e){return function(t){return gT(t,e)}}var bT=TT,fT=hT,vT=bT,xT=Ra,AT=An;function ST(e){return xT(e)?fT(AT(e)):vT(e)}var CT=ST,ET=Jh,IT=uT,_T=yT,DT=Pe,NT=CT;function OT(e){return typeof e=="function"?e:e==null?_T:typeof e=="object"?DT(e)?IT(e[0],e[1]):ET(e):NT(e)}var Ko=OT;function PT(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 kT=PT,LT=kT,RT=LT(),MT=RT,jT=MT,BT=La;function $T(e,t){return e&&jT(e,t,BT)}var FT=$T,WT=FT;function UT(e,t,n,a){return WT(e,function(s,o,i){t(a,n(s),o,i)}),a}var zT=UT,HT=zT;function GT(e,t){return function(n,a){return HT(n,e,t(a),{})}}var VT=GT,qT=Ko,YT=VT,Qo=Object.prototype,KT=Qo.hasOwnProperty,QT=Qo.toString,XT=YT(function(e,t,n){t!=null&&typeof t.toString!="function"&&(t=QT.call(t)),KT.call(e,t)?e[t].push(n):e[t]=[n]},qT),ZT=XT;const JT=hn(ZT),bt="Canceled by user",eb={"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."};JT(eb);const Xo=e=>typeof e=="object"&&e!==null&&"message"in e&&typeof e.message=="string",Zo=e=>{if(Xo(e))return e;try{return new Error(JSON.stringify(e))}catch{return new Error(String(e))}},Jo=e=>Zo(e).message;class ct extends jl.CustomError{constructor({message:n=Or,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 tb=async()=>{},Bn=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}},ve=({functionName:e,dynamicContractAddress:t,contractId:n,onSettled:a})=>{const{account:s}=M(),{chainId:o,supportedChainId:i}=Se(),l=E.useWalletClient({chainId:o}),c=E.usePublicClient({chainId:o}),d=eo(n),p=t??W(n,o??i),m=vo(),{writeContract:y}=E.useWriteContract({mutation:{onSettled:a}}),w=u.useCallback(async(...f)=>{try{const{argumentsWithoutOverrides:C,transactionOverrides:O}=Bn(f),_=await c?.estimateContractGas({address:p,abi:d,functionName:e,args:C,account:s??I,gas:O.gas,value:O.value});if(!_||!o||_===BigInt(0))return{error:Qn,value:BigInt(0)};const Y=Math.round(Number(_)*wr),ae=Yt[o]??Y,xe=BigInt(Math.min(ae,Y));return console.debug(`[core-ui-kit]: estimated gas limit: ${Number(_)}`),{error:"",value:xe}}catch(C){return console.error(`Gas estimate error on ${e}`,C),{error:C?.message??C?.shortMessage??C.error?.data?.message??C.data?.message??Qn,value:BigInt(0)}}},[s,o,c,e,p,d]),h=u.useCallback(async(...f)=>{try{if(!m)return{data:null,error:Xn};if(!c)return{data:null,error:"Client is not defined"};const{argumentsWithoutOverrides:C,transactionOverrides:O}=Bn(f),_=D.encodeFunctionData({abi:d,functionName:e,args:C});if(s&&_){const Y=await m({chainId:o??i,from:s,to:p,input:_,gas:Yt[o??i]??0,value:O.value?.toString()});return{data:Y,error:Y?.simulation.error_message}}return{data:null,error:Xn}}catch(C){return console.debug("Failed to simulate:",C),{data:null,error:Jo(C)}}},[s,o,c,d,p,e,m,i]),T=u.useCallback(async(...f)=>{const{argumentsWithoutOverrides:C,transactionOverrides:O}=Bn(f);if(O.gas)return y({address:p,abi:d,functionName:e,chainId:o,args:C,...O});const{value:_,error:Y}=await w(...f);if(Y){const{data:ae}=await Promise.race([h(...f),new Promise(xe=>setTimeout(xe,hr,{data:null,error:Pr}))]);throw new ct({message:Y,link:ae?.link,txArgs:f,account:s,functionName:e,onBypass:()=>l?.data?.writeContract({address:p,abi:d,functionName:e,account:s,chainId:o,args:C,...O,gas:BigInt(Yt[o??i]??0)})})}return console.debug(`[core-ui-kit]: gas limit to use: ${_}`),y({address:p,abi:d,functionName:e,chainId:o,args:C,...O,gas:_})},[w,y,h,s,e,l?.data,p,d,o,i]);return{send:o&&c?T:tb,estimate:w}},ei=e=>E.useEstimateFeesPerGas({...e,query:{...e?.query,staleTime:3e4}}),Sn=e=>{u.useEffect(()=>{e&&e.forEach(({error:t,status:n})=>{n==="failure"&&console.warn(t?.message)})},[e])},ja=({error:e,status:t})=>{u.useEffect(()=>{e&&t==="failure"&&console.warn(e?.message)},[e,t])},ti=async({functionName:e,address:t,abi:n,args:a,publicClient:s})=>(await s?.simulateContract({address:t,abi:n,functionName:e,args:a}))?.result,nb=({disabled:e,functionName:t,address:n,abi:a,args:s,chainId:o,refetchInterval:i})=>{const l=E.usePublicClient({chainId:o});return Ze.useQuery({queryKey:[{functionName:t,address:n,args:s,chainId:o}],queryFn:async({queryKey:[c]})=>{if(c)return await ti({address:n,abi:a,functionName:c.functionName,args:c.args,publicClient:l})},enabled:!e&&!!o&&!ee(n)&&!!t,refetchInterval:i})},rn=({queryKey:e,watch:t=!0})=>{const n=Ze.useQueryClient(),{data:a}=E.useBlockNumber({query:{refetchInterval:We}});u.useEffect(()=>{t&&n.refetchQueries({queryKey:e,stale:!0})},[t,a])},Cn="limitOrders",Ba="getAllLimitOrderIds",$a=0,ni="100",ab=1,sb=5,rb=2,ob=["balanceOf","getFundSummary","getFundComposition","withdrawalContracts","getTrackedAssets","getAssetPrice","allowance","getExitRemainingCooldown","tokenPrice","limitOrders","calculateAvailableManagerFee",Cn,Ba],ib=["allowance"],Hs=(e,t)=>e[0]==="readContract"?t.includes(e?.[1]?.functionName??""):e[0]==="readContracts"?!!e[1]?.contracts?.some(({functionName:a})=>t.includes(a??"")):!1,En=()=>{const e=Ze.useQueryClient(),t=u.useCallback(()=>{e.invalidateQueries({predicate:({queryKey:a})=>Hs(a,ib)})},[e]),n=u.useCallback(()=>{e.invalidateQueries({predicate:({queryKey:a})=>Hs(a,ob)})},[e]);return{invalidateAllowanceQueries:t,invalidateTradingQueries:n}},In=()=>{const{chainId:e}=Se(),{data:t}=E.useCapabilities();if(!e||!t)return!1;const n=t?.[e]?.atomic?.status;return!!n&&n!=="unsupported"},lb=({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}=Bl.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})]})},Fa=({text:e,...t})=>r.jsx(lb,{...t,tooltipContent:r.jsx("span",{className:"dtw-inline-block dtw-max-w-xs",children:e})}),on=({text:e,placement:t,iconClassName:n="dtw-text-[color:var(--panel-secondary-content-color)]",Icon:a=ne.QuestionMarkCircleIcon})=>r.jsx(Fa,{text:e,placement:t,children:r.jsx(a,{className:A("dtw-h-4 dtw-w-4 dtw-cursor-help hover:dtw-text-[color:var(--panel-icon-color-hover))]",n)})}),Be=({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(on,{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}=M(),s=x(),o=un(e,s.chainId),{data:i}=ei({chainId:s.chainId,query:{enabled:o}}),{data:l,queryKey:c}=Ia({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??I]},{address:t,abi:D.erc20Abi,chainId:s.chainId,functionName:"decimals"}],query:{enabled:!o&&!!a}});return rn({watch:n&&o,queryKey:c}),rn({watch:n&&!o,queryKey:p}),o?so({nativeTokenBalance:D.formatUnits(l?.value??BigInt(0),l?.decimals??P),gasPrice:Number(i?.maxFeePerGas??0),tokenDecimals:l?.decimals??P}).toString():D.formatUnits(d?.[0]?.result??BigInt(0),d?.[1]?.result??P)},Dt=()=>{const[{value:e,symbol:t,address:n}]=N(),a=he({symbol:t,address:n});return new b(e||0).gt(a??0)},cb=({address:e,chainId:t})=>[{address:W("factory",t),abi:Ue,functionName:"isPool",chainId:t,args:[e]},{address:W("easySwapperV2",t),abi:ye,functionName:"withdrawalContracts",args:[e]}],db=e=>({isUserDhedgePool:e[0].result,withdrawalContractAddress:e[1].result}),pb=({address:e,chainId:t})=>E.useReadContracts({contracts:cb({address:e,chainId:t}),query:{enabled:!ee(e),select:db}}),Nt=()=>{const{account:e=I}=M(),{chainId:t,supportedChainId:n}=Se(),{data:{isUserDhedgePool:a}={}}=pb({address:e,chainId:t??n});return!!a},ub=({address:e,chainId:t})=>[{address:e??I,abi:fe,functionName:"poolManagerLogic",chainId:t},{address:W("easySwapperV2",t),abi:ye,functionName:"customCooldownDepositsWhitelist",args:[e],chainId:t},{address:W("easySwapperV2",t),abi:ye,functionName:"customCooldown",args:[],chainId:t},{address:W("factory",t),chainId:t,abi:Ue,functionName:"getAssetGuard",args:[W("aaveLendingPoolV3",t)]}],mb=e=>({poolManagerLogic:e[0].result,isCustomCooldownDepositAllowed:e[1].result,customCooldown:e[2].result,aaveAssetGuardAddress:e[3].result}),Ot=({address:e,chainId:t})=>E.useReadContracts({contracts:ub({address:e,chainId:t}),query:{enabled:!!e&&!ee(e),staleTime:1/0,select:mb}}),Wa=({address:e,chainId:t})=>{const[n]=He(),{data:{poolManagerLogic:a}={}}=Ot({address:e,chainId:t});return n.managerLogicAddress??a},yb=({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??I],chainId:t},{address:e,abi:De,functionName:"maxSupplyCap",args:[],chainId:t}],wb=e=>({getFeeIncreaseInfo:e[0].result,minDepositUSD:e[1].result,isMemberAllowed:e[2].result,maxSupplyCapD18:e[3].result}),Pt=({address:e,chainId:t})=>{const n=Wa({address:e,chainId:t}),{account:a=I}=M(),s=E.useReadContracts({contracts:yb({address:n??I,chainId:t,account:a}),query:{enabled:!!n&&!ee(n),staleTime:1/0,select:wb}});return ja({error:s.error,status:s.status}),s},hb=({chainId:e,address:t})=>[{address:t,abi:De,functionName:"getFundComposition",chainId:e},{address:t,abi:De,functionName:"getSupportedAssets",chainId:e}],gb=e=>({getFundComposition:e[0].result,getSupportedAssets:e[1].result?.map(({asset:t})=>t)}),kt=({address:e,chainId:t})=>{const n=Wa({address:e,chainId:t});return E.useReadContracts({contracts:hb({address:n??I,chainId:t}),query:{enabled:!!n&&!ee(n),select:gb,refetchInterval:Je}})};function Tb(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 bb=Tb,fb=_a,vb=Bo,xb=Pa,Ab=_t;function Sb(e,t,n){if(!Ab(n))return!1;var a=typeof t;return(a=="number"?vb(n)&&xb(t,n.length):a=="string"&&t in n)?fb(n[t],e):!1}var Cb=Sb,Eb=/\s/;function Ib(e){for(var t=e.length;t--&&Eb.test(e.charAt(t)););return t}var _b=Ib,Db=_b,Nb=/^\s+/;function Ob(e){return e&&e.slice(0,Db(e)+1).replace(Nb,"")}var Pb=Ob,kb=Pb,Gs=_t,Lb=xn,Vs=NaN,Rb=/^[-+]0x[0-9a-f]+$/i,Mb=/^0b[01]+$/i,jb=/^0o[0-7]+$/i,Bb=parseInt;function $b(e){if(typeof e=="number")return e;if(Lb(e))return Vs;if(Gs(e)){var t=typeof e.valueOf=="function"?e.valueOf():e;e=Gs(t)?t+"":t}if(typeof e!="string")return e===0?e:+e;e=kb(e);var n=Mb.test(e);return n||jb.test(e)?Bb(e.slice(2),n?2:8):Rb.test(e)?Vs:+e}var Fb=$b,Wb=Fb,Ub=1/0,zb=17976931348623157e292;function Hb(e){if(!e)return e===0?e:0;if(e=Wb(e),e===Ub||e===-1/0){var t=e<0?-1:1;return t*zb}return e===e?e:0}var Gb=Hb,Vb=Gb;function qb(e){var t=Vb(e),n=t%1;return t===t?n?t-n:t:0}var Yb=qb,Kb=bb,Qb=Cb,Xb=Yb,Zb=Math.ceil,Jb=Math.max;function ef(e,t,n){(n?Qb(e,t,n):t===void 0)?t=1:t=Jb(Xb(t),0);var a=e==null?0:e.length;if(!a||t<1)return[];for(var s=0,o=0,i=Array(Zb(a/t));s<a;)i[o++]=Kb(e,s,s+=t);return i}var tf=ef;const ai=hn(tf),si=({account:e,chainId:t,address:n})=>[{address:n,abi:fe,functionName:"balanceOf",chainId:t,args:[e]},{address:n,abi:fe,functionName:"tokenPrice",chainId:t,args:[]}],nf=e=>e.flatMap(si),af=si({account:I,chainId:g.optimism.id,address:I}).length,ri=({account:e})=>{const{chainId:t}=Se(),n=et();return E.useReadContracts({contracts:nf(n.map(a=>({...a,account:e}))),query:{select:a=>ai(a,af).reduce((s,[o,i],l)=>{const c=n?.[l]?.address??I;return{...s,[c]:{balance:o?.result?.toString(),tokenPrice:i?.result?.toString()}}},{}),placeholderData:(a,s)=>{if(s?.queryKey?.[1].chainId!==t)return a},refetchInterval:Je,enabled:!ee(e)}})},sf=({chainId:e,address:t})=>[{address:t,abi:fe,functionName:"tokenPrice",chainId:e,args:[]},{address:t,abi:fe,functionName:"getFundSummary",chainId:e}],rf=([e,t])=>{const n=t?.result;return{tokenPrice:e?.result!==BigInt(0)?e?.result?.toString():Fl,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:sf({address:e,chainId:t}),query:{enabled:a&&!!e&&!ee(e),refetchInterval:n,select:rf}}),oi=({address:e,chainId:t})=>{const{account:n}=M(),{data:{managerAddress:a}={managerAddress:I}}=oe({address:e,chainId:t}),{data:{isMemberAllowed:s=!1}={}}=Pt({address:e,chainId:t});return n?s||G(n,a):!1},ii=({address:e,chainId:t})=>{const[n]=He(),a=u.useMemo(()=>n.poolCompositions?.reduce((p,{tokenAddress:m,tokenName:y,precision:w,asset:h})=>({...p,[m.toLowerCase()]:{tokenName:y,precision:w,asset:h}}),{}),[n.poolCompositions]),{data:{getFundComposition:[s,o,i]=[]}={},isFetched:l}=kt({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 Sn(d),u.useMemo(()=>{if(!s?.length)return[];const p=ai(d,2);return s.map(({asset:m,isDeposit:y},w)=>{const h=m.toLowerCase(),[T,f]=p[w]??[],C=Aa[h.toLowerCase()]??T?.result?.toString()??a?.[h]?.tokenName??to(h);return{tokenAddress:h,isDeposit:y,rate:i?.[w]?.toString()??"0",amount:o?.[w]?.toString()??"0",tokenName:C,precision:f?.result?Number(f.result):a?.[h]?.precision??P,asset:{iconSymbols:a?.[h]?.asset.iconSymbols??[C]}}})},[o,i,a,s,d])},dt=({address:e,chainId:t})=>{const[n]=He(),a=ii({address:e,chainId:t});return a.length?a:n.poolCompositions??[]},of=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}},Ua=(e,t)=>{const{data:{getFeeIncreaseInfo:n,minDepositUSD:a}={}}=Pt({address:e,chainId:t});return{...of(n),minDepositUSD:+D.formatUnits(a??BigInt(0),P)}},lf=({composition:e,vaultTokensAmount:t,totalSupplyD18:n})=>e.reduce((a,s)=>{const o=a.find(({tokenName:i})=>i===s.tokenName);if(o){const i=new b(o.amount).shiftedBy(-o.precision),l=new b(s.amount).shiftedBy(-s.precision);return o.amount=i.plus(l).shiftedBy(o.precision).toFixed(0),a}return[...a,s]},[]).map(a=>{const s=Jn(a.amount,t,n,a.precision),o=Jn(new b(a.rate).multipliedBy(a.amount).shiftedBy(-a.precision).toFixed(),t,n);return{...a,fraction:s.toFixed(Ct(s)),fractionUsd:te({value:o}),fractionUsdNumber:o}}).filter(({amount:a})=>a!=="0").sort((a,s)=>s.fractionUsdNumber-a.fractionUsdNumber),li=({address:e,vaultTokensAmount:t,chainId:n})=>{const a=dt({address:e,chainId:n}),{data:{totalSupplyD18:s}={}}=oe({address:e,chainId:n});return u.useMemo(()=>s?lf({composition:a,vaultTokensAmount:tn(t||0),totalSupplyD18:s}):[],[t,a,s])},ce=({address:e,chainId:t,formatter:n=D.formatEther})=>{const[a]=He(),{data:s}=oe({address:e,chainId:t,refetchInterval:Je});return n(BigInt(s?.tokenPrice??a?.tokenPrice??"0"))},_n=({address:e,chainId:t})=>{const[n]=He(),a=G(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:vt(p,me),performanceFeeNumber:Ne(+p,me),streamingFee:vt(m,me,2),streamingFeeNumber:Ne(+m,me),entryFee:vt(c,me,2),entryFeeNumber:Ne(+c,me),exitFee:vt(d,me,2),exitFeeNumber:Ne(+d,me)}},[s,a?.performanceFeeNumerator,a?.streamingFeeNumerator,o,c,d])},ci=()=>{const{address:e,chainId:t}=x(),{queryKey:n}=kt({address:e,chainId:t});rn({queryKey:n})},Vt=g.base.id,cf=e=>{const t=W("flatcoinPointsModule",Vt);return[{address:t,chainId:Vt,abi:Kt,functionName:"lockedBalance",args:[e]},{address:t,chainId:Vt,abi:Kt,functionName:"getUnlockTax",args:[e]},{address:t,chainId:Vt,abi:Kt,functionName:"unlockTime",args:[e]}]},di=({enabled:e,address:t})=>E.useReadContracts({contracts:cf(t),query:{enabled:e,select:n=>{const[a,s,o]=n;return{lockedVaultPointsBalance:a?.result,unlockTaxInPercents:s?.result,unlockTime:o?.result}}}}),df=[...Zr],za=({address:e,chainId:t})=>{const n=dt({address:e,chainId:t}),a=W("factory",t);return E.useReadContracts({contracts:n.map(({tokenAddress:s})=>({address:a,abi:Ue,functionName:"isPool",chainId:t,args:[s]})),query:{select:s=>n.some(({amount:o,tokenAddress:i},l)=>(!!s[l]?.result||df.some(p=>G(p,i)))&&o!=="0"),staleTime:1/0}})},pf=[[30*1e3,5e3],[60*1e3,1e4],[5*60*1e3,2e4]],uf=e=>{if(!e)return!1;for(const[t,n]of pf)if(e<=t)return n;return Wl},$n=e=>Number(e?.toString()??"0")*1e3,mf=({address:e,chainId:t})=>{const{account:n}=M();return E.useReadContract({address:e,abi:fe,functionName:"getExitRemainingCooldown",chainId:t,args:[n??I],query:{enabled:!!n,select:$n,refetchInterval:a=>uf($n(a.state?.data)),refetchOnWindowFocus:a=>$n(a.state?.data)>0}})};function yf(e,t,n){if(!e||!t)return{balanceInUsd:"",balanceInUsdNumber:0};const a=+e*$e(t);return{balanceInUsd:te({value:a,maximumFractionDigits:n}),balanceInUsdNumber:a}}const pi=(e,t)=>Xc(e)?{rawBalance:e?.toString()??"",...yf(D.formatUnits(e,U),t?.toString())}:{rawBalance:"",balanceInUsd:"",balanceInUsdNumber:0},ui=({account:e}={})=>{const{account:t}=M(),n=e??t??I,{data:a}=ri({account:n});return u.useMemo(()=>ee(n)?{}:Object.entries(a??{}).reduce((s,[o,i])=>{const l=pi(BigInt(i.balance??"0"),BigInt(i.tokenPrice??"0"));return l.balanceInUsdNumber>0?{...s,[o]:l}:s},{}),[n,a])},mi=({account:e,chainId:t,address:n})=>{const{data:a,isFetched:s}=oe({address:n,chainId:t}),{poolFallbackData:o}=Z(),i=G(o.address,n)?o.tokenPrice??"0":"0";return E.useReadContract({address:e?n:void 0,abi:fe,functionName:"balanceOf",chainId:t,args:[e],query:{enabled:!ee(e)&&s,select:l=>pi(l,BigInt(a?.tokenPrice??i))}})},wf=e=>Math.ceil($e(e)),yi=({address:e,chainId:t,select:n=wf})=>{const{data:{totalValueD18:a}={}}=oe({address:e,chainId:t}),{data:{maxSupplyCapD18:s}={}}=Pt({address:e,chainId:t});return E.useReadContract({address:e,chainId:t,abi:fe,functionName:"calculateAvailableManagerFee",args:[BigInt(a??"0")],query:{enabled:!!a&&!!s&&s>0n,select:n}})},wi=({address:e,chainId:t})=>{const{data:{maxSupplyCapD18:n}={}}=Pt({address:e,chainId:t}),{data:{totalSupplyD18:a}={}}=oe({address:e,chainId:t}),s=ce({address:e,chainId:t}),{data:o=0}=yi({address:e,chainId:t});if(!n||n===0n)return null;const i=Math.ceil($e(a??0)),l=$e(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}},hf=({address:e,chainId:t})=>{const{data:{isPrivateVault:n}={isPrivateVault:!1}}=oe({address:e,chainId:t}),s=et().find(i=>G(e,i.address)&&i.chainId===t),o=!!(s?.maintenance||s?.maintenanceDeposits);return n||o},gf=e=>oe(e),hi=()=>{const{address:e,symbol:t,chainId:n}=x(),{account:a=I}=M(),s=he({symbol:t,address:e}),{data:{totalSupplyD18:o}={}}=oe({address:e,chainId:n}),l=Ca(e)&&!G(a,I),{data:{lockedVaultPointsBalance:c,unlockTaxInPercents:d,unlockTime:p}={},isLoading:m}=di({enabled:l,address:e});return u.useMemo(()=>{const y=o?new b.BigNumber(s).shiftedBy(P).dividedBy(o):new b.BigNumber(0),w=c?new b.BigNumber(c.toString()).multipliedBy(y).shiftedBy(-18):new b.BigNumber(0),h=d?w.multipliedBy(d.toString()).shiftedBy(-18):new b.BigNumber(0),T=p?Number(p)*1e3:null;return{userPortionOfLockedPointsBalance:w.toFixed(),unlockTaxAmount:h.toFixed(),vestedPointsAmount:w.minus(h).toFixed(),unlockTimestamp:T,unlockDate:T?At.format(T,"PPP"):null,isLoading:m}},[o,s,c,d,p,m])},Tf={"Lend/Borrow V2":"aave","Lend/Borrow V3":"aave","Lyra Options":"lyra",ULP:"uni"};function bf(e){const t=Tf[e];if(t)return t;const n=e.toLowerCase();return n.includes("bear")?"torosbear":n.includes("bull")?"torosbull":n}const gi=e=>e?`https://raw.githubusercontent.com/dhedge/crypto-icons/main/icons/${bf(e)}.png`:"",Ti={isGeoBlocked:!1,isSanctioned:!1,depositQuoteDiffWarningThreshold:1.5,depositQuoteDiffErrorThreshold:3,defaultWithdrawSlippage:dr,defaultLockTime:lr,defaultNoSwapMinDepositAmountGap:zl,defaultSwapTransactionSlippage:Hl,defaultNotificationDuration:Yl,stablePrecision:3,defaultPrecision:6,termsOfUseAccepted:!0,standalone:!0,isAllAssetsWithdrawOptionDefault:!1,chainConfig:{[g.mainnet.id]:{name:"Ethereum",iconPath:""},[g.arbitrum.id]:{name:"Arbitrum",iconPath:""},[g.optimism.id]:{name:"Optimism",iconPath:""},[g.polygon.id]:{name:"Polygon",iconPath:""},[g.base.id]:{name:"Base",iconPath:""}},aaveOffchainWithdrawMinValue:50,getFallbackIconPath:gi,minLimitOrderValue:0,limitOrderThemeConfig:{}},ff=()=>{const{connect:e}=E.useConnect(),t=u.useCallback(()=>e({connector:$l.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}},vf={params:{...Ti},actions:{onConnect:()=>{},onAcceptTermsOfUse:()=>Promise.resolve(!0)}},bi=u.createContext(vf),fi=({children:e,config:t})=>{const n=ff(),a=u.useMemo(()=>({params:{...Ti,...t?.params},actions:{...n,...t?.actions}}),[t,n]);return r.jsx(bi.Provider,{value:a,children:e})},vi=()=>{const e=u.useContext(bi);if(!e)throw new Error("ConfigContext is used out of Provider");return e},z=()=>vi().params,xi=()=>vi().actions,Ha=()=>{const{depositQuoteDiffErrorThreshold:e}=z(),[t,n]=u.useState(!1),[{slippage:a,minSlippage:s}]=K(),o=a==="auto"?s??0:a,l=!Dt()&&o>e&&!t,c=u.useCallback(()=>{n(!0)},[]);return{requiresHighSlippageConfirm:l,confirmHighSlippage:c,slippageToBeUsed:o}},$={ERROR:"error",WARNING:"warning",SUCCESS:"success",DEFAULT:"default",CUSTOM:"custom"},B={TERMS_OF_USE:"TERMS_OF_USE",HIGH_SLIPPAGE:"HIGH_SLIPPAGE",FMP_WITHDRAWAL:"FMP_WITHDRAWAL",TOKEN_SELECT:"TOKEN_SELECT",POOL_SELECT:"POOL_SELECT",TRADING:"TRADING",ERROR_NOTIFICATION:"ERROR_NOTIFICATION",LIMIT_SELLS:"LIMIT_SELLS",LIMIT_ORDER_WITHDRAW:"LIMIT_ORDER_WITHDRAW"},Lt=e=>{const{depositQuoteDiffErrorThreshold:t,depositQuoteDiffWarningThreshold:n}=z(),a=Math.abs(e);return a>t?$.ERROR:a>n?$.WARNING:$.DEFAULT};var xf=nt,Af=it,Sf="[object Number]";function Cf(e){return typeof e=="number"||Af(e)&&xf(e)==Sf}var Ef=Cf;const If=hn(Ef),Ai=({tradingType:e,slippage:t,minSlippage:n})=>{const{defaultWithdrawSlippage:a}=z();return t!=="auto"?t.toString():If(n)?n.toString():e==="deposit"?dn.toString():a.toString()},Si={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",receiveEstimated:"Receive (estimated)",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.",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",priceLabel:"Price",transactionLabel:"Transaction",initWithdrawDescription:"Unroll",initWithdrawTooltip:"Unroll prepares assets for single asset withdrawal.",completeWithdrawDescription:"Claim",completeWithdrawTooltip:"This final step swaps all assets to a single asset and sends it to your wallet.",unrollAndClaimDescription:"Claim",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",batchTransactionsTooltip:"Group transaction calls into a single batch transaction. Disable if you prefer separate prompts.",openLimitOrderAfterBuySwitchLabel:"Add Stop Order",stopOrder:"Stop Order",send:"Send",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"},Ci=u.createContext(Si),_f=({children:e,config:t})=>{const n=u.useMemo(()=>({...Si,...t}),[t]);return r.jsx(Ci.Provider,{value:n,children:e})},S=()=>{const e=u.useContext(Ci);if(!e)throw new Error("TranslationContext is used out of Provider");return e},Ga=e=>{const t=S(),{symbol:n}=x(),a=`${n}${e}`;return t?.[a]??t[e]},Df=async(e,t=gi)=>{try{return(await import(`@dhedge/crypto-assets/icons/${e.toLowerCase()}.png`))?.default?.src??t(e)}catch{return t(e)}},Nf=(e=[])=>{const{getFallbackIconPath:t}=z(),[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=>Df(c,t)));a(l),o(e)})()},[e,s,t]),n},Of=(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}},Ei=Object.values(B).reduce((e,t)=>({...e,[t]:{isOpen:!1,isPending:!1}}),{}),Pf=()=>u.useReducer(Of,Ei),Ii=u.createContext(Ei),_i=u.createContext(()=>{}),Di=()=>{const e=u.useContext(Ii);if(!e)throw new Error("OverlayStateContext is used out of Provider");return e},ie=()=>{const e=u.useContext(_i);if(!e)throw new Error("OverlayDispatchContext is used out of Provider");return e},pe=({type:e})=>{const t=Di(),n=ie(),a=()=>{n({type:"MERGE_OVERLAY",payload:{type:e,isOpen:!1,isPending:!1}})},{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}},kf=()=>{const e=ie();return()=>{Object.values(B).forEach(t=>{e({type:"MERGE_OVERLAY",payload:{type:t,isOpen:!1,isPending:!1}})})}},Lf=({children:e})=>{const[t,n]=Pf(),[{isOpen:a}]=X();return u.useEffect(()=>{a&&!t.TRADING.isOpen&&n({type:"MERGE_OVERLAY",payload:{type:B.TRADING,isOpen:a}})},[a,t.TRADING.isOpen,n]),u.useEffect(()=>{!a&&t.TRADING.isOpen&&n({type:"MERGE_OVERLAY",payload:{type:B.TRADING,isOpen:a}})},[a,t.TRADING.isOpen,n]),r.jsx(_i.Provider,{value:n,children:r.jsx(Ii.Provider,{value:t,children:e})})},Rf=()=>{const e=ze(),{pricingAsset:t,symbol:n,chainId:a,address:s}=x(),{minLimitOrderValue:o}=z(),i=ie(),l=he({symbol:n,address:s}),c=ce({address:s,chainId:a}),m=Number(l)*Number(c)>=o&&!!t,y=u.useCallback(()=>{m&&(i({type:"MERGE_OVERLAY",payload:{type:B.LIMIT_SELLS,isOpen:!0}}),e?.(Q.OPEN_LIMIT_SELL_VIEW,{[be.SOURCE.NAME]:"overlay"}))},[i,m,e]);return{displayLimitSellOverlay:m,openLimitSellOverlay:y}},Mf=({tradingType:e})=>{const t=Ga(e);return r.jsx(k.Tab,{className:({selected:n})=>A("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]})})},jf={[$.DEFAULT]:ne.QuestionMarkCircleIcon,[$.ERROR]:ne.ExclamationCircleIcon,[$.SUCCESS]:ne.CheckCircleIcon,[$.WARNING]:ne.ExclamationCircleIcon,[$.CUSTOM]:ne.QuestionMarkCircleIcon},Fn=({tooltipText:e,value:t,label:n,children:a,type:s=$.DEFAULT,className:o,emphasised:i=!1})=>r.jsxs("div",{className:A("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(on,{text:e,placement:"right",Icon:jf[s],iconClassName:A({"dtw-text-[color:var(--panel-error-content-color)]":s===$.ERROR,"dtw-text-[color:var(--panel-warning-content-color)]":s===$.WARNING})}),r.jsx("p",{className:A({"dtw-text-[color:var(--panel-error-content-color)]":s===$.ERROR,"dtw-text-[color:var(--panel-warning-content-color)]":s===$.WARNING}),children:n})]}),r.jsx("div",{className:A({"dtw-text-[color:var(--panel-error-content-color)]":s===$.ERROR,"dtw-text-[color:var(--panel-warning-content-color)]":s===$.WARNING}),children:t})]}),a]}),Va=({children:e,staticItems:t,collapseItems:n,themeType:a=$.DEFAULT,buttonItemChildren:s})=>{const o=S();return r.jsx("div",{className:"dtw-w-full dtw-flex dtw-flex-col dtw-gap-1",children:r.jsx(k.Disclosure,{children:({open:i})=>r.jsxs(r.Fragment,{children:[t?.map(l=>r.jsx(Fn,{...l},l.label)),r.jsx(k.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(Fn,{tooltipText:o.fullReceiveDetails,label:o.tradeDetails,value:"",type:a,emphasised:!0,children:[s,r.jsx(Oe.ChevronDownIcon,{className:A("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(k.Transition,{show:i,children:r.jsxs(k.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(Fn,{...l},l.label)),e]})})]})})})},Ee=({className:e})=>r.jsx("svg",{className:A("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"})}),Bf=({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}),$f=({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}),ln=({Icon:e,onClick:t,className:n="dtw-h-7 dtw-w-7",containerClassName:a,disabled:s})=>r.jsx("div",{className:A("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:A("dtw-text-[color:var(--panel-icon-color)] group-hover:dtw-text-[color:var(--panel-icon-color-hover))]",n)})}),Ff=({children:e,onClose:t})=>{const{defaultNotificationDuration:n}=z();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(ln,{Icon:Yn.XMarkIcon,onClick:t,className:"dtw-w-6 dtw-h-6",containerClassName:"dtw-self-center"})]})})},Wf=({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:A("dtw-absolute dtw-top-0 dtw-inset-0 dtw-rounded-xl dtw-backdrop-blur-md dtw-backdrop-brightness-75 dtw-backdrop-filter",{"dtw-p-4":!o}),children:r.jsxs("div",{className:A("dtw-flex dtw-flex-col dtw-rounded-xl dtw-p-4 dtw-h-full",t,{"dtw-bg-[var(--panel-popup-bg,var(--panel-secondary-color))]":!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(ln,{Icon:Yn.ChevronLeftIcon,onClick:i})}),!!s&&r.jsx("div",{className:"dtw-absolute dtw-top-5 dtw-right-5",children:r.jsx(ln,{Icon:Yn.XMarkIcon,onClick:s})})]})})),Uf=({children:e})=>r.jsx(k.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}),zf=({className:e,iconClassName:t,onClick:n,children:a})=>{const s=ze(),o=()=>{n?.(),s?.(Q.TRADING_SETTINGS_OPENED)};return r.jsxs(k.Popover,{className:A("dtw-flex dtw-items-center dtw-justify-end",e),children:[r.jsx(k.PopoverButton,{onClick:o,children:r.jsx(ne.Cog6ToothIcon,{className:A("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(k.PopoverBackdrop,{className:"dtw-absolute dtw-inset-0 dtw-bg-[var(--panel-popup-bg,var(--panel-secondary-color))] dtw-opacity-50"}),r.jsx(k.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})})]})},Hf=({children:e})=>r.jsx(k.TabPanel,{children:r.jsx(zf,{children:e})}),V={InputGroup:Bf,Meta:$f,Settings:Hf,Panel:Uf,Overlay:Wf,Notification:Ff},Gf=["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)]"],Vf=["!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))]"],q=({children:e,onClick:t,highlighted:n=!0,disabled:a=!1,className:s,type:o,loading:i=!1})=>r.jsxs("button",{className:A("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",{[Vf.join(" ")]:n,[Gf.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(Ee,{className:"dtw-h-4 dtw-w-4"}),e]}),Ni={GeoBlockAlert:()=>r.jsx(ft,{type:"error",children:r.jsx("span",{className:"dtw-text-sm",children:"Depositing is geo-blocked."})}),SanctionedAlert:()=>r.jsx(ft,{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(ft,{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(ft,{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(ft,{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"})]})},Oi=u.createContext(Ni),qf=({children:e,config:t})=>{const n=u.useMemo(()=>({...Ni,...t}),[t]);return r.jsx(Oi.Provider,{value:n,children:e})},R=()=>{const e=u.useContext(Oi);if(!e)throw new Error("ComponentContext is used out of Provider");return e},oa=({children:e,promptText:t})=>{const{ActionButton:n=q}=R();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(ne.ExclamationCircleIcon,{className:"dtw-h-5 dtw-w-5"}),r.jsx("div",{className:"dtw-py-1 dtw-text-xs",children:t})]}),r.jsx(Fa,{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(ne.LockClosedIcon,{className:"dtw-h-5"}),r.jsx("span",{children:e})]})})})]})},pt=({link:e,className:t,children:n,iconClassName:a="dtw-h-5 dtw-w-5",showDefaultIcon:s=!0})=>r.jsxs("a",{className:A("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(ne.ArrowTopRightOnSquareIcon,{className:a})]}),Dn=({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(k.Field,{children:r.jsxs("div",{className:A("dtw-flex",{"dtw-flex-col dtw-gap-y-0.5":s,"dtw-items-center dtw-justify-between":!s}),children:[a&&r.jsx(k.Label,{className:"dtw-cursor-pointer dtw-text-xs",children:a}),r.jsx(k.Switch,{checked:o,onChange:l,className:A("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:A("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})})})]})})},Pi=({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}),Yf=({onClick:e})=>{const t=S();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})},ki=({style:e,className:t})=>r.jsx("div",{className:A("tw-animate-pulse tw-rounded tw-bg-themeGray-300 tw-bg-opacity-50 tw-h-6",t),style:e}),Li=e=>r.jsx("img",{...e}),Kf=(e,t)=>e===0?`dtw-z-${(t-1)*10}`:`dtw--ml-2 dtw-z-${(t-e-1)*10}`,Qf=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}}},Qe=({symbols:e,size:t="m",className:n=""})=>{const{Image:a=Li}=R(),s=e.join(""),[o,i]=u.useState({[s]:!1}),{height:l,width:c,diameter:d}=Qf(t),p=Nf(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:A(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:A("dtw-inline-block dtw-overflow-visible dtw-rounded-full",c,l,Kf(w,e.length)),width:d,height:d,onError:m},w))})},Rt=({symbol:e,iconSymbols:t,size:n,symbolClasses:a="dtw-text-sm dtw-font-medium",CustomIcon:s,customTitle:o,className:i})=>{const l=S(),c=o||(e==="all"?l.allAssets:e);return r.jsxs("div",{className:A("dtw-flex dtw-w-full dtw-items-center dtw-space-x-1.5",i),children:[s??r.jsx(Qe,{size:n,symbols:t,className:"dtw-flex-shrink-0"}),r.jsx("div",{className:a,title:c,children:c||r.jsx(ki,{className:"dtw-w-[70px]"})})]})},Xf=({title:e,text:t})=>{const{LogoSpinner:n=Ee}=R();return r.jsx(V.Overlay,{transparent:!0,children:r.jsxs("div",{className:"dtw-flex dtw-flex-col dtw-items-center dtw-rounded-xl dtw-px-5 dtw-py-5",children:[e&&r.jsx("span",{className:"dtw-mb-8 dtw-font-medium dtw-text-[color:var(--panel-secondary-content-color)]",children:e}),r.jsx(n,{className:"dtw-h-[80px] dtw-w-[60px]"}),t&&r.jsx("p",{className:"dtw-mt-6 dtw-text-xl dtw-font-light",children:t})]})})},ft=({className:e,children:t,type:n="error"})=>r.jsx("div",{className:A("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}),Wn=(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}`},Un=e=>e.replace(/,/g,""),Zf=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,Un(p));else{const m=Wn(p,a);t?.(m,Un(m))}},l=()=>{if(!n)return;const c=Wn(e,a);t?.(c,Un(c))};return r.jsx("input",{...s,ref:o,type:"text",inputMode:"decimal",value:Wn(e,a),onChange:i,onBlur:l})});Zf.displayName="InputNumber";const qt=({className:e})=>r.jsx("div",{className:A("dtw-w-full dtw-h-[1px] dtw-bg-[var(--panel-divider-color)] dtw-shrink-0",e)}),Jf=()=>{const[e]=we(),[t,n]=K(),[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})}}},qs=({selected:e=!1,children:t,className:n,onClick:a})=>r.jsx("div",{className:A("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}),ev=0,tv=100,Ri=()=>{const e=S(),{settings:t,tradingType:n,isCustomSlippage:a,invalidSlippage:s,onDefaultSlippageSelect:o,onCustomSlippageSelect:i}=Jf(),l=Ai({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(qs,{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(qs,{selected:a,className:"dtw-w-14",children:r.jsx("input",{className:A("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:ev,max:tv,onChange:i,placeholder:l,defaultValue:a?t.slippage.toString():""})}),r.jsx("span",{children:"%"})]})]})};function Nn(e,t,n){const a=ec[n??g.arbitrum.id]?.blockExplorers?.default?.url;if(a)switch(t){case"transaction":return`${a}/tx/${e}`;default:return`${a}/address/${e}`}}const nv=({batchId:e,updatePendingTransactions:t})=>{const{data:n}=E.useWaitForCallsStatus({id:e,pollingInterval:rr,query:{enabled:!!e}}),a=n?.receipts?.[0]?.transactionHash;u.useEffect(()=>{a&&t({type:"update",txHash:a})},[a,t])},Mi=()=>{const[e,t]=re(),n=X()[1],a=go(),s=bo(),[o]=e,i=o?.batchId,l=o?.txHash,c=o?.action,d=c==="approve",p=o?.chainId,{invalidateTradingQueries:m,invalidateAllowanceQueries:y}=En();nv({batchId:i,updatePendingTransactions:t});const{data:w,error:h}=E.useWaitForTransactionReceipt({hash:l,chainId:p,pollingInterval:rr,query:{enabled:!!l}});u.useEffect(()=>{if(w){const T=w.transactionHash;if(T){const f=Nn(T,"transaction",p);n({link:f,status:"Success",action:c}),t({type:"remove",status:"success",txHash:T}),s?.(w,c,f)}d?y():m()}},[w,d,p,c,s,t,n,y,m]),u.useEffect(()=>{h&&(n({isOpen:!1,status:"None",link:"",action:c,sendTokens:null,receiveTokens:null}),t({type:"remove",status:"fail"}),a?.(h,c,p,l))},[h,d,c,p,l,n,t,a])},Ve=e=>{const[,t]=X(),[,n]=re(),[,a]=N(),s=To();return u.useCallback((o,i,l)=>{if(i){t({isOpen:!1,status:"None",link:"",sendTokens:null,receiveTokens:null}),n({type:"remove",status:"fail"}),console.debug(`${e} transaction failed`,i),s?.(i);return}if(o){console.debug(`${e} transaction started`,o),n({type:"update",txHash:o});const c=Nn(o,"transaction",l.chainId);t({isOpen:!0,status:"Mining",link:c}),e!=="approve"&&a({value:""})}},[e,n,a,t,s])},qa=({address:e,chainId:t,refetchInterval:n,disabled:a=!1})=>{const{supportedChainId:s}=Se(),{data:o}=E.useReadContracts({contracts:[{address:W("factory",t??s),abi:Ue,functionName:"getAssetPrice",args:[e],chainId:t}],query:{enabled:!ee(e)&&!a,refetchInterval:n}});return Sn(o),o?.[0]?.result},de=({address:e,chainId:t,refetchInterval:n=We,disabled:a})=>{const s=qa({address:e,chainId:t,refetchInterval:n,disabled:a});return D.formatUnits(s??BigInt(0),P)},Ya=()=>{const[e]=N(),[t]=L(),n=he({address:e.address,symbol:e.symbol}),a=new b(e.value),s=new b(t.value);return(a.gt(0)||s.gt(0))&&a.lte(n??0)};function av(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 ji=()=>{const[e]=N(),[t]=L();return{value:av(e.symbol,t.symbol,e.value,t.value),isLoading:!!t.isLoading}},ke=()=>{const e=!Ge(),[{symbol:t}]=L(),[{isMultiAssetWithdrawalEnabled:n}]=K();return e&&n&&t==="all"},Ka=()=>{const{account:e}=M(),{chainId:t}=x(),n=ke(),[a]=N(),s=new b(a.value||"0").shiftedBy(a.decimals).toFixed(0,b.ROUND_UP),o=W("easySwapperV2",t),i=Ki({tokenAddress:a.address,ownerAddress:e??I,spenderAddress:o,rawAmountToSpend:s,chainId:t,skip:n||s==="0"}),l=Yi({token:a,rawTokenAmount:s,spenderAddress:o});return{canSpend:i,approve:l}},sv=({address:e,chainId:t})=>{const n=E.usePublicClient({chainId:t}),{data:{aaveAssetGuardAddress:a=I}={}}=Ot({address:e,chainId:t});return u.useCallback(async({withdrawAmountD18:s,slippage:o})=>ti({address:a,abi:hc,functionName:"calculateSwapDataParams",args:[e,s,Sa(o)],publicClient:n}),[a,e,n])},rv=async({assets:e,getSwapData:t,signal:n,buildKey:a})=>{const s=await Promise.all(e.map(o=>t({signal:n,variables:{...o,fromAddress:ma}})));return e.reduce((o,i,l)=>{const c=a(i);return o[c]=s[l]??null,o},{})},ov=async({assets:e,getSwapQuotes:t,signal:n,buildKey:a})=>{const s=await Promise.all(e.map(o=>t({signal:n,variables:{...o,fromAddress:ma}})));return e.reduce((o,i,l)=>{const c=a(i);return o[c]=s[l]??null,o},{})},Bi=e=>e.length>1?1:0,iv=async({assets:e,getSwapData:t,signal:n})=>rv({assets:e,getSwapData:t,signal:n,buildKey:no}),lv=new AbortController,cv=lv.signal,dv=({chainId:e})=>{const{account:t=I}=M(),n=wd();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??I,walletAddress:t,amount:l.toString(),slippage:s.toString()}));return iv({assets:o,getSwapData:n,signal:cv})},[e,n,t])},pv=({address:e,chainId:t})=>{const n=W("aaveLendingPoolV3",t),{aaveOffchainWithdrawMinValue:a}=z(),{data:{getSupportedAssets:s}={}}=kt({address:e,chainId:t}),o=sv({address:e,chainId:t}),i=dv({chainId:t});return u.useCallback(async({withdrawAmountD18:l,vaultTokenPrice:c,slippage:d})=>{const p=new b(l.toString()).shiftedBy(-18).times(c).gt(a);return await Promise.all((s??[]).map(async m=>{const y=G(m,n),w=Sa(d);if(p&&y)try{const h=await o({withdrawAmountD18:l,slippage:d});if(h?.srcData.length){const T=await i({swapParams:h,slippage:d});return Yc({assetAddress:m,swapData:T,swapParams:h,slippageToleranceForContractTransaction:w})}}catch(h){console.error(h)}return{supportedAsset:m,withdrawData:"",slippageTolerance:w}}))},[n,a,i,o,s])},uv=()=>{const{defaultWithdrawSlippage:e,defaultSwapTransactionSlippage:t}=z(),n=!Ge(),{isCompleteWithdrawStep:a,isFetching:s}=ut(),[o]=L(),[,i]=K(),l=Hi();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])},mv=()=>{const{account:e=I}=M(),{chainId:t}=x();return E.useReadContract({address:W("easySwapperV2",t),abi:ye,functionName:"withdrawalContracts",chainId:t,args:[e],query:{enabled:!ee(e)}})},Qa=()=>{const{chainId:e}=x(),[t]=L(),n=qa({address:t.address,chainId:e}),a=Mt(),s=Fi(),o=new b(s).shiftedBy(P).div(n?.toString()??"1").shiftedBy(t.decimals).toFixed(0,b.ROUND_DOWN),i=new b(o).times(1-pr/100).times(1-a/100).toFixed(0,b.ROUND_DOWN);return{expectedReceiveAmount:o,minExpectedReceiveAmount:i}},$i=({isClaim:e}={})=>{const t=x(),{data:n=[]}=ue(),{data:a={}}=qe(),[s]=L(),{minExpectedReceiveAmount:o}=Qa(),i=re()[1],l=e?"claim":"swap",c=Ve(l),d=Xa(),{send:p,estimate:m}=ve({contractId:"easySwapperV2",functionName:ql,onSettled:c}),y=u.useCallback(async()=>{if(e||!d)return[];const w=Object.values(a)[0]?.map(({routerKey:h})=>h);if(!w?.length)return console.warn("[Complete Withdraw] No available routers found for swap"),[];for(const h of w){const T=Object.entries(a).reduce((O,[_,Y])=>{const ae=Y?.find(xe=>xe.routerKey===h);return{...O,[_]:ae}},{}),f=qc({assets:n,swapData:T,receiveAssetAddress:s.address}),{error:C}=await m(f,o);if(!C)return[f,o]}return console.error("[Complete Withdraw] All routers failed estimation"),[]},[e,d,a,o,n,s.address,m]);return u.useCallback(async()=>{i({type:"add",action:l,symbol:t.symbol,chainId:t.chainId});const w=await y();return console.log("Arguments",w),p(...w)},[l,t.chainId,t.symbol,p,y,i])},Fi=()=>{const{data:e=[]}=ue();return e.reduce((t,{balance:n,price:a})=>t+n*a,0)},Wi=({account:e,chainId:t})=>E.useReadContract({address:W("easySwapperV2",t),abi:ye,functionName:"getTrackedAssets",chainId:t,args:[e],query:{enabled:!ee(e)}}),yv=({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:W("factory",t),abi:Ue,functionName:"getAssetPrice",chainId:t,args:[n]}]),wv=3,Ui=({assets:e,chainId:t})=>{const n=u.useCallback(a=>e.map(({token:s,balance:o},i)=>{const l=i*wv,c=l+1,d=c+1,p=Number(a[c]?.result??P),m=Aa[s.toLowerCase()]??a[l]?.result?.toString()??"";return{address:s,symbol:m,decimals:p,rawBalance:o,balance:new b(o.toString()).shiftedBy(-p).toNumber(),price:new b(a[d]?.result?.toString()??0).shiftedBy(-18).toNumber()}}),[e]);return E.useReadContracts({contracts:yv({assets:e,chainId:t}),query:{enabled:e.length>0,select:n}})},ue=()=>{const{account:e=I}=M(),{chainId:t}=x(),{data:n=[]}=Wi({account:e,chainId:t});return Ui({assets:n,chainId:t})},ut=()=>{const{data:e=[],isFetching:t}=ue();return{isCompleteWithdrawStep:e?.length>0,isFetching:t}},hv=(e,t)=>{const n=xo(),{settings:{selectedAggregators:a}}=Z();return Ze.useQuery({queryKey:["getSwapsQuotes",e,a],queryFn:async({signal:s,queryKey:[,o]})=>await ov({assets:o,getSwapQuotes:n,signal:s,buildKey:({sourceAddress:i})=>i}),...t})},qe=()=>{const{defaultSwapTransactionSlippage:e}=z(),{chainId:t}=x(),{account:n=I}=M(),[{slippage:a}]=K(),[s]=L(),{data:o=[]}=ue(),i=Xa(),l=u.useMemo(()=>o.filter(({address:c})=>!G(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 hv(l,{enabled:i,refetchInterval:pa})},gv=()=>{const[e,t]=L(),{data:n=[]}=ue(),{data:a,isFetching:s,isError:o}=qe();u.useEffect(()=>{t({isLoading:s})},[s,t]),u.useEffect(()=>{if(n.length===0||s||o)return;const i=n.reduce((l,c)=>{if(G(c.address,e.address))return l.plus(c.rawBalance.toString());const d=a?.[c.address]??[],m=d[Bi(d)]?.destinationAmount??"0";return l.plus(m)},new b(0));t({value:D.formatUnits(BigInt(i.toFixed()),e.decimals)})},[n,o,s,e.address,e.decimals,a,t])},zi=({withdraw:e,isClaim:t})=>{const n=S(),a=ie(),{account:s}=M(),o=x(),[i]=L(),l=X()[1],c=re()[1],d=yn(),{data:p}=ue(),{isFetching:m}=qe(),y=u.useCallback(async()=>{const w=o.chainId,h=(p??[]).map(({address:f,decimals:C,symbol:O,balance:_})=>({address:f,decimals:C,symbol:O,value:_.toString()})),T=t?null:h.filter(f=>!G(f.address,i.address));l({isOpen:!0,status:"Wallet",action:t?"claim":"swap",link:"",sendTokens:T,receiveTokens:t?h:[i]});try{await e()}catch(f){f instanceof ct&&(a({type:"MERGE_OVERLAY",payload:{type:B.ERROR_NOTIFICATION,isOpen:!0,meta:{error:f.message}}}),d?.(f,o.address,w,s)),l({isOpen:!1,status:"None",link:"",sendTokens:null,receiveTokens:null}),c({type:"remove",status:"fail"})}},[s,p,a,t,d,o.address,o.chainId,i,c,l,e]);return{disabled:t?!1:m,label:t?n.claimAction:n.swapAction,handleTrade:y}},Hi=()=>{const{expectedReceiveAmount:e}=Qa(),[t]=L(),n=new b(t.value||"0").shiftedBy(t.decimals);return e==="0"||n.isZero()?0:n.dividedBy(e).minus(1).times(100).decimalPlaces(2,b.ROUND_DOWN).toNumber()},Xa=()=>{const[e]=L(),{data:t=[]}=ue();return t.length>0&&t.some(({address:n})=>!G(n,e.address))},Tv=e=>e.length===0?"":`${Vc.AUTO_COMPLETE_WITHDRAW}-${e.map(t=>`${t.address}-${t.rawBalance.toString()}`).sort().join("_")}`,bv=e=>{const{data:t=[]}=ue(),{data:n,isFetching:a}=qe();u.useEffect(()=>{const s=!!n&&Object.values(n).length>0;try{const o=Tv(t),i=o?sessionStorage.getItem(o):!0;if(!s||a||i)return;sessionStorage.setItem(o,"true"),e()}catch(o){console.error(o)}},[t,a,n,e])},Mt=()=>{const{defaultWithdrawSlippage:e}=z(),{isCompleteWithdrawStep:t}=ut(),[{slippage:n,minSlippage:a}]=K();return n==="auto"?t?a??e:e:n};function ia(e,t,n){const[a,s]=u.useState(n),o=mn?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 Za=(e,t)=>{const[n,a]=u.useState(e);return u.useEffect(()=>{const s=setTimeout(()=>{a(e)},t);return()=>{clearTimeout(s)}},[e,t]),n},fv=e=>Ae({value:D.formatEther(e),decimals:2}),vv=()=>{const e=x(),[t]=N(),n=ke(),a=Mt(),s=pv(e),o=ce({address:e.address,formatter:fv,chainId:e.chainId});return u.useCallback(async()=>{const i=BigInt(new b(t.value||"0").shiftedBy(P).toFixed(0,b.ROUND_DOWN)),l=await s({withdrawAmountD18:i,vaultTokenPrice:o,slippage:a});return n?[i,l]:[e.address,i,l]},[s,n,e.address,t.value,a,o])},xv=({debounceTime:e}={})=>{const t=x(),n=ke(),[a]=N(),s=Mt(),{data:{getSupportedAssets:o}={}}=kt(t),i=Za(new b(a.value||"0").shiftedBy(P).toFixed(0,b.ROUND_DOWN),e??0);return u.useMemo(()=>{const l=Sa(s),c=BigInt(i),d=(o??[]).map(p=>({supportedAsset:p,withdrawData:"",slippageTolerance:l}));return n?[c,d]:[t.address,c,d]},[s,i,o,n,t.address])},Av=e=>typeof e[0]=="string"&&typeof e[1]=="bigint"&&Array.isArray(e[2]),Sv=()=>{const e=x(),t=Dt(),{canSpend:n}=Ka(),a=xv({debounceTime:ir}),s=Av(a)&&a[1]!==BigInt(0)&&!t&&n,{data:o}=E.useSimulateContract({abi:ye,address:W("easySwapperV2",e.chainId),functionName:mr,args:a,query:{enabled:s}});return Ui({assets:o?.result[0]??[],chainId:e.chainId})},Ja=()=>{const[e]=L(),{data:t=[]}=Sv(),n=Nt();return t?.length===1&&G(t[0]?.address,e.address)&&!n},Cv=()=>{const e=x(),t=ke(),n=Ja(),a=vv(),s=re()[1],o=t?"multi_withdraw":n?"single_withdraw_and_claim":"single_withdraw",i=Ve(o),l=t?ur:n?Vl:mr,{send:c}=ve({contractId:t?"poolLogic":"easySwapperV2",dynamicContractAddress:t?e.address:void 0,functionName:l,onSettled:i});return{withdraw:u.useCallback(async()=>{s({type:"add",action:o,symbol:e.symbol,chainId:e.chainId});const p=await a();return console.log("Arguments",p),c(...p)},[s,o,e.symbol,e.chainId,a,c]),action:o}},Gi=e=>{const t=S(),n=ie(),{account:a}=M(),s=x(),[o]=N(),[i]=L(),[l]=we(),c=X()[1],d=re()[1],p=yn(),m=ke(),y=Ja(),w=he({symbol:o.symbol,address:o.address}),h=l==="deposit",T=Ya(),f=h?"deposit":m?"multi_withdraw":y?"single_withdraw_and_claim":"single_withdraw",C=async()=>{const O=s.chainId;c({isOpen:!0,status:"Wallet",action:f,link:"",sendTokens:[o],receiveTokens:h||y?[i]:null,meta:h?{}:{withdrawPercentage:o.value&&w?new b(o.value).div(w).toNumber():0}});try{await e()}catch(_){_ instanceof ct&&(n({type:"MERGE_OVERLAY",payload:{type:B.ERROR_NOTIFICATION,isOpen:!0,meta:{error:_.message}}}),p?.(_,s.address,O,a)),c({isOpen:!1,status:"None",link:"",sendTokens:null,receiveTokens:null,meta:{}}),d({type:"remove",status:"fail"})}};return{disabled:!T,label:h?t.depositAction:m?t.withdrawAction:y?t.unrollAndClaimAction:t.unrollAction,handleTrade:C}},Ev=1,Iv="USD",_v=({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:Zt({value:s,currency:a}),dailyEarnings:Zt({value:s/365,currency:a}),monthlyEarnings:Zt({value:s/12,currency:a})}},Vi=({currency:e,depositValueInUsd:t,chainId:n,apy:a,disabled:s})=>{const o=e==="ETH"?Kr[n]?.address:e==="BTC"?Qr[n]?.address:void 0,i=de({address:o??I,chainId:n,disabled:s||!a||!o}),l=o?Number(i):Ev;return u.useMemo(()=>_v({depositValueInUsd:t,apy:a,apyCurrencyPrice:l,currency:o?e:Iv}),[t,a,l,e,o])},qi=()=>{const e=we()[0]==="deposit",{chainId:t}=x(),[n]=He(),[a]=N(),s=de({address:a.address,chainId:t,disabled:!e||!n.apy}),o=Vi({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}},Dv=(e,t)=>{const{settings:{selectedAggregators:n}}=Z(),a=xo();return Ze.useQuery({queryKey:["getSwapQuotes",{...e,fromAddress:ma},n],queryFn:async({signal:s,queryKey:[,o]})=>a({signal:s,variables:o}).then(i=>i?.filter(l=>!!l)??[]),...t})},On=(e={})=>{const t=e?.extendedDebounceTime??!1,[n]=N(),a=Za(n.value,t?ir:or);return{debouncedSendTokenValue:a,isDebouncing:n.value!==a}},Nv=()=>{const e=In(),[{isBatchTransactionsEnabled:t}]=K();return e&&t},Yi=({token:e,rawTokenAmount:t,spenderAddress:n})=>{const a=x(),[{isInfiniteAllowance:s}]=K(),o=re()[1],i=X()[1],l=Ve("approve"),{send:c}=ve({contractId:"erc20",dynamicContractAddress:e.address,functionName:"approve",onSettled:l});return u.useCallback(async()=>(i({isOpen:!0,status:"Wallet",link:"",action:"approve",sendTokens:[{symbol:e.symbol,address:e.address,decimals:e.decimals,value:""}],receiveTokens:null,meta:{}}),o({type:"add",action:"approve",symbol:e.symbol,chainId:a.chainId}),c(n,s?Fe:t)),[s,a.chainId,t,c,n,e.address,e.decimals,e.symbol,o,i])},Ki=({rawAmountToSpend:e,tokenAddress:t,ownerAddress:n,spenderAddress:a,chainId:s,skip:o=!1})=>{const{data:i}=wn({tokenAddress:t,ownerAddress:n,spenderAddress:a,chainId:s,skip:o});return u.useMemo(()=>o?!0:!i||i===BigInt(0)?!1:!e||e==="0"?!0:new b(i.toString()).gte(e),[e,i,o])},Ov=()=>{const[{isInfiniteAllowance:e},t]=K(),n=ze(),a=u.useCallback(s=>{t({isInfiniteAllowance:s}),n?.(Q.INFINITE_ALLOWANCE_CHANGE,{[be.IS_INFINITE.NAME]:s?1:0})},[t,n]);return u.useMemo(()=>[e,a],[e,a])},Qi=()=>{const e=S(),[t,n]=Ov();return r.jsx(Dn,{defaultEnabled:t,onChange:n,label:e.infinite})},Pv=()=>{const[{isBatchTransactionsEnabled:e},t]=K(),n=ze(),a=u.useCallback(s=>{t({isBatchTransactionsEnabled:s}),od(s),n?.(Q.BATCH_TRANSACTIONS_CHANGE,{[be.IS_BATCH_TRANSACTIONS_ENABLED.NAME]:s?1:0})},[t,n]);return u.useMemo(()=>[e,a],[e,a])},Xi=()=>{const e=S(),[t,n]=Pv();return r.jsx(Dn,{defaultEnabled:t,onChange:n,label:e.batchTransactionsSwitchLabel})},kv=()=>{const[{availableAggregators:e,selectedAggregators:t},n]=K(),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}},Zi=()=>{const e=S(),{availableAggregators:t,selectedAggregators:n,onAggregatorToggle:a}=kv();return t.length<=1?null:r.jsx(Be,{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(Dn,{defaultEnabled:n.includes(s),onChange:()=>a(s),size:"sm"})]},s))})})},Lv=()=>{const e=In(),t=S();return r.jsxs(r.Fragment,{children:[r.jsx(Be,{label:t.slippageTolerance,tooltipText:t.depositSlippageWarning,children:r.jsx(Ri,{})}),r.jsx(Be,{label:t.tokenAllowance,tooltipText:t.toggleTokenApprovalAmount,children:r.jsx(Qi,{})}),e&&r.jsx(Be,{label:t.batchTransactionsLabel,tooltipText:t.batchTransactionsTooltip,children:r.jsx(Xi,{})}),r.jsx(Zi,{})]})},Rv=()=>{const{chainId:e}=x(),[t]=N(),n=W("easySwapperV2",e),a=new b(t.value||"0").shiftedBy(t.decimals).toFixed(0,b.ROUND_UP);return u.useMemo(()=>({address:t.address,abi:D.erc20Abi,functionName:"approve",chainId:e,args:[n,a]}),[e,a,t.address,n])},Mv=()=>{const{chainId:e,address:t}=x(),{data:{isCustomCooldownDepositAllowed:n}={}}=Ot({address:t,chainId:e});return n!==!1},Ys=(e,t)=>e.length?e.find(({tokenAddress:a})=>Object.values(Bc[t]??{}).some(s=>G(s.address,a)))?.tokenAddress??e[0]?.tokenAddress:null,mt=()=>{const[e]=N(),{chainId:t,address:n}=x(),a=dt({address:n,chainId:t}),s=Mv();return u.useMemo(()=>{const o=a.filter(({isDeposit:c})=>c);if(un(e.symbol,t)){const c=o.find(({tokenName:d})=>Ye[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:Ys(o,t)??e.address}}const l=o.find(({tokenAddress:c})=>G(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:Ys(o,t)??e.address}},[t,s,a,e.address,e.symbol])},jt=()=>{const[e]=N(),{vaultDepositTokenAddress:t}=mt();return!G(e.address,t)},es=()=>{const{defaultSwapTransactionSlippage:e}=z(),[{slippage:t}]=K(),n=jt();return t==="auto"?n?e:dn:t},Pn=()=>{const{account:e=I}=M(),{chainId:t}=x(),[n]=N(),{debouncedSendTokenValue:a}=On(),{vaultDepositTokenAddress:s}=mt(),o=jt();return Dv({sourceAddress:n.address,destinationAddress:s,amount:new b(a).shiftedBy(n.decimals).toFixed(0),chainId:t,slippage:"33",walletAddress:e},{enabled:o&&!!a,refetchInterval:pa})},Ji=()=>{const{defaultNoSwapMinDepositAmountGap:e}=z(),{address:t,chainId:n}=x(),[a]=N(),[s]=L(),{data:{entryFee:o}={}}=oe({address:t,chainId:n}),i=Ne(Number(o??"0"),me),[{slippage:l}]=K(),c=l==="auto",d=es(),p=jt(),m=+de({address:a.address,chainId:n}),y=+ce({address:t,chainId:n});if(p){const T=Number(a.value||0)*m*(1-i/100)/y;return new b(T).shiftedBy(s.decimals).times(1-d/100).toFixed(0)}const w=c?e:d;return new b(s.value||"0").shiftedBy(s.decimals).times(1-w/100).toFixed(0)},jv=({isDepositWithSwapTransaction:e,sendTokenAddress:t,sendTokenValue:n})=>{const{chainId:a}=x(),s=+de({address:t,chainId:a}),{vaultDepositTokenAddress:o}=mt(),{data:i}=E.useReadContract({address:o,abi:D.erc20Abi,functionName:"decimals",chainId:a}),l=+de({address:o,chainId:a,refetchInterval:We,disabled:!e}),c=Number(n||"0")*s;return i&&l!==0?new b(c/l).shiftedBy(i).times(1-pr/100).toFixed(0):"0"},el=()=>{const[e]=N(),{debouncedSendTokenValue:t}=On(),n=jt(),a=jv({isDepositWithSwapTransaction:n,sendTokenAddress:e.address,sendTokenValue:t});return n?a:new b(t||"0").shiftedBy(e.decimals).toFixed(0)},la=(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}},Bv=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[Bi(t)],w=ds({vaultAddress:i,sendTokenAddress:s,sendTokenAmount:p,minVaultTokensReceivedAmount:d,vaultDepositTokenAddress:l,swapData:y?.rawTransaction.data??"0x",routerKey:y?.routerKey,swapDestinationAmount:c,swapSlippage:a});return la(o,e,w)}let m=[];for(const y of t){const w=ds({vaultAddress:i,sendTokenAddress:s,sendTokenAmount:p,minVaultTokensReceivedAmount:d,vaultDepositTokenAddress:l,swapData:y?.rawTransaction.data??"0x",routerKey:y?.routerKey,swapDestinationAmount:c,swapSlippage:a});m=la(o,e,w);const{error:h}=await n(...m);if(!h)return m}return console.warn("[Deposit] No valid routers found for swap"),m},$v=e=>e==="zapNativeDeposit"||e==="zapNativeDepositWithCustomCooldown"||e==="zapDeposit"||e==="zapDepositWithCustomCooldown",Fv=({depositMethod:e,vaultDepositTokenAddress:t})=>{const{address:n}=x(),[a]=N(),s=a.value||"0",o=new b(s).shiftedBy(a.decimals).toFixed(0),i=el(),{data:l}=Pn(),c=Ji(),d=es();return u.useCallback(async p=>{const m={vaultAddress:n,vaultDepositTokenAddress:t,vaultDepositTokenAmount:i,minVaultTokensReceivedAmount:c,sendTokenAmount:o},y=$v(e);try{return y?Bv({baseArgs:m,swapQuotes:l,estimate:p,depositSlippage:d,sendTokenAddress:a.address,depositMethod:e}):la(e,m)}catch(w){return console.error(w),[]}},[n,e,d,c,a.address,o,l,t,i])},tl=()=>{const{chainId:e}=x(),[t]=L(),n=re()[1],{depositMethod:a,vaultDepositTokenAddress:s}=mt(),o=Fv({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}},Wv=e=>{const[,t]=X(),[,n]=re(),[,a]=N(),[,s]=K(),o=To();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])},Uv=({address:e,abi:t,functionName:n,args:a,value:s})=>({to:e,data:D.encodeFunctionData({abi:t,functionName:n,args:a}),value:s}),zv=({onSettled:e})=>{const{sendCalls:t}=E.useSendCalls({mutation:{onSettled:e}});return u.useCallback(async n=>t({calls:n.map(Uv),forceAtomic:!0}),[t])},Hv="deposit",Gv=()=>{const{chainId:e,depositMethod:t,buildDepositTransactionArgs:n,addPendingTransaction:a}=tl(),s=Rv(),o=Wv(Hv),i=zv({onSettled:o});return u.useCallback(async()=>{a();const l=await n(),c={address:W("easySwapperV2",e),abi:ye,functionName:t,args:l};return i([s,c])},[a,e,t,n,i,s])},Vv="deposit",qv=()=>{const{depositMethod:e,buildDepositTransactionArgs:t,addPendingTransaction:n}=tl(),a=Ve(Vv),{send:s,estimate:o}=ve({contractId:"easySwapperV2",functionName:e,onSettled:a});return u.useCallback(async()=>{n();const i=await t(o);return s(...i)},[n,s,t,o])},Yv=()=>{const{account:e=I}=M(),{chainId:t}=x(),[n]=N(),a=W("easySwapperV2",t),s=new b(n.value||"0").shiftedBy(n.decimals).toFixed(0,b.ROUND_UP),o=Ki({tokenAddress:n.address,ownerAddress:e,spenderAddress:a,rawAmountToSpend:s,chainId:t,skip:un(n.symbol,t)||s==="0"});return{approve:Yi({token:n,rawTokenAmount:s,spenderAddress:a}),canSpend:o}},Kv=({address:e,chainId:t})=>{const[n]=N(),a=Ge(),{vaultDepositTokenAddress:s}=mt(),o=el(),i=!!(o&&+o>0),l=E.useReadContract({address:W("easySwapperV2",t),abi:ye,functionName:"depositQuote",args:[e,s,BigInt(o??0)],chainId:t,query:{enabled:a&&i&&!!n.address&&!!o,refetchInterval:We}});return ja(l),l},Qv=()=>{const{address:e,chainId:t}=x(),n=Ge(),[a]=N(),[s,o]=L(),[,i]=K(),{isDebouncing:l,debouncedSendTokenValue:c}=On(),{isFetching:d}=Pn(),{data:p,isFetching:m}=Kv({address:e,chainId:t}),y=d||m||l;u.useEffect(()=>{if(!n||y)return;const w=p?new b(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])},nl=(e={})=>{const{address:t,chainId:n}=x(),{data:a}=oe({address:t,chainId:n}),[s]=N(),[o]=L(),i=de({address:s.address,chainId:n}),l=ce({address:t,chainId:n}),c=e.includesEntryFee?Ne(Number(a?.entryFee??"0"),me):0;return u.useMemo(()=>{const d=Number(s.value||"0"),p=new b(d).times(i??"0").times(1-c/100),m=Number(o.value||"0"),y=new b(m).times(l??"0");return p.isZero()||y.isZero()?0:p.decimalPlaces(Ct(d)).comparedTo(y.decimalPlaces(Ct(m)))&&p.isGreaterThan(0)?y.dividedBy(p).minus(1).times(100).decimalPlaces(2,b.ROUND_DOWN).toNumber():0},[c,o.value,s.value,i,l])},Xv=()=>{const e=Ge(),[t]=L(),[,n]=K(),{isDebouncing:a}=On({extendedDebounceTime:!0}),s=es(),o=nl({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 Zv(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 Jv=Zv;function ex(e){return e!==e}var tx=ex;function nx(e,t,n){for(var a=n-1,s=e.length;++a<s;)if(e[a]===t)return a;return-1}var ax=nx,sx=Jv,rx=tx,ox=ax;function ix(e,t,n){return t===t?ox(e,t,n):sx(e,rx,n)}var lx=ix,cx=lx;function dx(e,t){var n=e==null?0:e.length;return!!n&&cx(e,t,0)>-1}var px=dx;function ux(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 mx=ux;function yx(){}var wx=yx,zn=$o,hx=wx,gx=Oa,Tx=1/0,bx=zn&&1/gx(new zn([,-0]))[1]==Tx?function(e){return new zn(e)}:hx,fx=bx,vx=Oo,xx=px,Ax=mx,Sx=Po,Cx=fx,Ex=Oa,Ix=200;function _x(e,t,n){var a=-1,s=xx,o=e.length,i=!0,l=[],c=l;if(n)i=!1,s=Ax;else if(o>=Ix){var d=t?null:Cx(e);if(d)return Ex(d);i=!1,s=Sx,c=new vx}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 Dx=_x,Nx=Ko,Ox=Dx;function Px(e,t){return e&&e.length?Ox(e,Nx(t)):[]}var kx=Px;const Lx=hn(kx),kn=()=>{const{address:e,chainId:t,depositParams:n}=x(),{account:a}=M(),s=dt({address:e,chainId:t}),o=Nt(),[{isCustomDepositOptionsDisabled:i}]=K(),[l]=Co(),c=u.useMemo(()=>Lx([...s.filter(({isDeposit:y})=>y).map(({tokenAddress:y,tokenName:w,precision:h})=>({address:y.toLowerCase(),symbol:w,decimals:h})),...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??I],chainId:t})),query:{enabled:p}});return Sn(m),u.useMemo(()=>{if(!d)return[];const y=[];for(let T=0;T<c.length;T++)y[T]={value:"",address:c[T]?.address??I,symbol:c[T]?.symbol??c[T]?.address??I,balance:m?.[T]?.result?$e((m?.[T]?.result).toString()??"0",c[T]?.decimals??P):0,decimals:c[T]?.decimals??P};const w=y.slice().sort((T,f)=>T.balance&&f.balance?f.balance-T.balance:0),h=w.find(({symbol:T})=>T===n.defaultDepositTokenSymbol);return[...h?[h]:[],...w.filter(({symbol:T})=>T!==n.defaultDepositTokenSymbol),...o||i?[]:[{value:"",address:Ye[t]?.address??I,symbol:Ye[t]?.nativeTokenSymbol??"",decimals:Ye[t]?.decimals??P}]]},[d,o,i,t,c,m,n.defaultDepositTokenSymbol])},Rx=()=>{const e=x(),[t]=kn(),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])},Mx=()=>{const{chainId:e,address:t,deprecated:n}=x(),{data:{isPrivateVault:a}={isPrivateVault:!1}}=oe({address:t,chainId:e}),s=a||n,o=oi({address:t,chainId:e});return{isVaultDepositLocked:s,isAccountWhitelisted:o}},al=()=>{const{defaultLockTime:e}=z(),{chainId:t,address:n}=x(),{data:{customCooldown:a}={}}=Ot({address:n,chainId:t}),{depositMethod:s}=mt(),o=a?At.formatDuration({minutes:Number(a)/60}):e;switch(s){case"depositWithCustomCooldown":case"nativeDepositWithCustomCooldown":case"zapDepositWithCustomCooldown":case"zapNativeDepositWithCustomCooldown":return o;default:return e}},jx="1",Bx=()=>{const{account:e=I}=M(),{address:t,chainId:n}=x(),[a]=L(),s=ce({address:t,chainId:n}),{minDepositUSD:o}=Ua(t,n),{data:i}=mi({address:t,chainId:n,account:e}),l=i?.balanceInUsdNumber??0,c=s==="0"?jx:s,d=Math.max(0,o-l),p=new b(a.value||"0").multipliedBy(c);return{requiresMinDeposit:p.isZero()?!1:p.lte(d),requiredMinDepositAmount:te({value:d})}},yt=e=>{const[{action:t,status:n}]=X();return t===e&&(n==="Wallet"||n==="Mining")},sl=e=>{const t=ie(),{onAcceptTermsOfUse:n}=xi(),{termsOfUseAccepted:a}=z(),{disabled:s,label:o,handleTrade:i}=Gi(e),{isError:l,isLoading:c}=Pn(),d=yt("deposit");return{handleClick:()=>{if(l){t({type:"MERGE_OVERLAY",payload:{type:B.ERROR_NOTIFICATION,isOpen:!0,meta:{error:kr}}});return}a?i():t({type:"MERGE_OVERLAY",payload:{type:B.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}},$x=()=>{const{ActionButton:e=q}=R(),t=Gv(),{handleClick:n,label:a,disabled:s,isLoading:o}=sl(t);return r.jsx(e,{onClick:n,disabled:s,loading:o,children:a})},Fx=()=>{const{ActionButton:e=q}=R(),t=qv(),{handleClick:n,label:a,disabled:s,isLoading:o}=sl(t);return r.jsx(e,{onClick:n,disabled:s,loading:o,children:a})},Wx=()=>{const e=Nv(),{deprecated:t,symbol:n,maintenance:a,maintenanceDeposits:s}=x(),[o]=N(),i=Dt(),{isVaultDepositLocked:l,isAccountWhitelisted:c}=Mx(),{approve:d,canSpend:p}=Yv(),{requiresHighSlippageConfirm:m,confirmHighSlippage:y,slippageToBeUsed:w}=Ha(),{requiresMinDeposit:h,requiredMinDepositAmount:T}=Bx();return{requiresMinDeposit:h,requiresWhitelist:l&&!c,requiresApprove:!p,requiresHighSlippageConfirm:m,sendTokenSymbol:o.symbol,poolSymbol:n,requiredMinDepositAmount:T,deprecated:t,approve:d,confirmHighSlippage:y,slippageToBeUsed:w,maintenance:a||s,isBatchContractWritesTrading:e,insufficientBalance:i}},Ux=()=>{const{ActionButton:e=q}=R(),t=S(),{status:n}=E.useConnect(),{onConnect:a}=xi();return r.jsx(e,{onClick:a,className:"dtw-whitespace-nowrap dtw-text-sm",loading:n==="pending",children:t.connectWallet})},zx=()=>{const{ActionButton:e=q}=R(),{switchNetwork:t}=Se(),{chainId:n}=x(),a=S(),s=()=>{t?.({chainId:n})};return r.jsx(e,{onClick:s,children:a.switchNetwork})},rl=()=>{const{account:e}=M(),{chainId:t}=Se(),n=x();return{isDisconnected:!e,isWrongNetwork:t!==n.chainId}},ts=({children:e})=>{const{isDisconnected:t,isWrongNetwork:n}=rl();return t?r.jsx(Ux,{}):n?r.jsx(zx,{}):e},Hx=()=>{const e=Ya(),t=yt("approve");return{disabled:!e,isLoading:t}},ol=({onApprove:e,symbol:t})=>{const{ActionButton:n=q}=R(),a=S(),{disabled:s,isLoading:o}=Hx();return r.jsx(n,{disabled:s,onClick:e,loading:o,children:r.jsxs("span",{children:[a.approve," ",t]})})},Gx=({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)},pa);return()=>clearTimeout(i)},[a]),{disabled:n||a,tooltipText:t,handleClick:o}},il=e=>{const{disabled:t,tooltipText:n,handleClick:a}=Gx(e);return r.jsx(Fa,{text:n,children:r.jsx(ln,{Icon:Oe.ArrowPathIcon,onClick:a,disabled:t,containerClassName:"!dtw-self-center",className:A("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})})})},Vx=()=>{const{refetch:e,isFetched:t}=Pn(),{invalidateTradingQueries:n}=En();return{handleSwapQuoteReload:()=>{n(),e()},disabled:!t}},qx=()=>{const e=S(),{handleSwapQuoteReload:t,disabled:n}=Vx();return r.jsx(il,{tooltipText:e.refreshSwapQuoteTooltip,onClick:t,disabled:n})},Yx=()=>{const{refetch:e,isFetched:t}=qe(),{invalidateTradingQueries:n}=En();return{handleSwapQuoteReload:()=>{n(),e()},disabled:!t}},Kx=()=>{const e=S(),{handleSwapQuoteReload:t,disabled:n}=Yx();return r.jsx(il,{tooltipText:e.refreshSwapQuoteTooltip,onClick:t,disabled:n})},Qx=()=>Ge()?r.jsx(qx,{}):r.jsx(Kx,{}),ll=({children:e,...t})=>{const{ActionButton:n=q}=R(),{openLimitSellOverlay:a,displayLimitSellOverlay:s}=Rf();return s?r.jsx(n,{...t,onClick:a,children:e}):null},Xx=()=>{const{ActionButton:e=q}=R(),t=S(),n=Ga("deposit"),{requiresMinDeposit:a,requiredMinDepositAmount:s,requiresApprove:o,requiresWhitelist:i,requiresHighSlippageConfirm:l,deprecated:c=!1,poolSymbol:d,sendTokenSymbol:p,slippageToBeUsed:m,approve:y,confirmHighSlippage:w,maintenance:h,isBatchContractWritesTrading:T,insufficientBalance:f}=Wx();return a?r.jsx(e,{disabled:!0,children:t.minimumPurchase.replace("{value}",s)}):i||h?r.jsx(oa,{promptText:c?t.poolIsInactive.replace("{poolSymbol}",d):h?t.poolDepositsAreMaintenance.replace("{poolSymbol}",d):t.poolIsPrivate,children:n}):f?r.jsx(e,{disabled:!0,children:t.insufficientBalance}):l?r.jsx(e,{onClick:w,children:t.confirmMaxSlippage.replace("{slippagePercentage}",`${Math.abs(m)}`)}):o?T?r.jsx($x,{}):r.jsx(ol,{symbol:p,onApprove:y}):r.jsx(Fx,{})},Zx=()=>{const[e,t]=N(),{chainId:n}=x(),a=de({address:e.address,chainId:n}),s=he({symbol:e.symbol,address:e.address});return{...e,price:a,balance:s,updater:t}},Jx=()=>{const{address:e,chainId:t}=x(),[n]=L(),a=ce({address:e,chainId:t});return{...n,price:a}},eA=()=>{const e=Zx(),t=Jx(),n=ze(),a=nl(),[{minSlippage:s}]=K();return{autoFocus:!1,sendToken:e,receiveToken:t,tradingPriceDiff:a,minSlippage:s,onInputFocus:()=>{n?.(Q.INVEST_INPUT_FOCUS,{symbol:e.symbol,address:Ea(e.address)})},onInputChange:l=>{e.updater({value:l})}}},cn=({children:e})=>r.jsx("table",{className:"dtw-min-w-full dtw-border-separate",style:{borderSpacing:"0px 0.25rem"},children:r.jsx("tbody",{children:e})}),cl=({children:e})=>{const t=S();return r.jsx(k.Disclosure,{children:({open:n})=>r.jsxs(r.Fragment,{children:[r.jsxs(k.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(Oe.ChevronDownIcon,{className:A("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(k.Transition,{show:n,children:r.jsx(k.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})})]})})},tA=e=>{const{address:t,chainId:n}=x(),[{value:a}]=N(),s=li({vaultTokensAmount:a,address:t,chainId:n}),o=e?s.length:gr,i=s.find(({tokenAddress:p})=>Zr.some(m=>G(p,m))),l=!!i&&i.amount!=="0",{firstPart:c,secondPart:d}=ao(s,o);return{visibleAssets:c,hiddenAssets:d,showUnitWithdrawalTip:l,unitSymbol:i?.tokenName,unitAddress:i?.tokenAddress??I}},nA=({symbol:e})=>{const t=S();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(Qe,{symbols:[e],size:"xs"})," ",e]})},dl=({className:e,showFraction:t=!0,iconSize:n,showAllAsset:a=!1})=>{const{visibleAssets:s,hiddenAssets:o,showUnitWithdrawalTip:i,unitSymbol:l,unitAddress:c}=tA(a),d=u.useCallback(({fraction:p,fractionUsd:m,tokenName:y,asset:w,tokenAddress:h})=>{const T=po(h);return r.jsxs("tr",{children:[r.jsxs("td",{style:{width:150,maxWidth:150},children:[r.jsx(Rt,{symbol:y,iconSymbols:w.iconSymbols,symbolClasses:"dtw-text-xs dtw-font-bold",size:n}),T&&r.jsx(nA,{symbol:uo(h).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:A("dtw-text-sm dtw-font-light",e),children:s.length>0?r.jsxs(r.Fragment,{children:[r.jsx(cn,{children:s.map(d)}),o.length>0&&r.jsx(cl,{children:r.jsx(cn,{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:ed(c),target:"_blank",rel:"noreferrer",children:["Flat Money ",r.jsx(ne.ArrowTopRightOnSquareIcon,{className:"dtw-w-3"})]})]})]}):r.jsx(ki,{})})},aA=({symbol:e})=>{const t=et(),n=ie(),{standalone:a}=z(),s=t.some(p=>p.symbol===e),o=e==="all",i=fo(),l=s&&t.length===1;return{isAllSymbol:o,onClick:()=>{i?.({isOpen:!0,entity:s?"pool":"token"}),a&&n({type:"MERGE_OVERLAY",payload:{type:s?B.POOL_SELECT:B.TOKEN_SELECT,isOpen:!0}})},disabled:l,hideTokenIcon:a&&s}},sA=({symbol:e})=>{const{isAllSymbol:t,onClick:n,disabled:a,hideTokenIcon:s}=aA({symbol:e}),o=S();return r.jsxs("button",{className:A("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(Rt,{symbol:e,iconSymbols:s?[]:[e],symbolClasses:"dtw-font-[var(--panel-input-token-font-weight,var(--panel-font-weight-medium))] dtw-text-[length:var(--panel-input-token-font-size,var(--panel-font-size-xs))] dtw-line-height-[length:var(--panel-input-token-line-height,var(--panel-line-height-xs))] sm:dtw-text-[length:var(--panel-input-token-font-size-sm,var(--panel-font-size))] sm:dtw-leading-[var(--panel-input-token-line-height-sm,var(--panel-line-height))] dtw-text-[color:var(--panel-input-button-content-color)]",CustomIcon:t?r.jsx(Jt.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(Jt.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 rA(e,t){const n=new b(e);return t&&n.gt(0)?n.toFixed(6):e}const oA=e=>{e.currentTarget.blur()},iA=({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),p=u.useMemo(()=>{const h=Number(t||0)*Number(n||0);if(!e||isNaN(h))return"";const T=te({value:h,maximumFractionDigits:Ct(h)});return a?`${T} (${a>0?"+":""}${a}% ${s===$.ERROR?"⚠":""})`:T},[t,n,a,e,s]),m=()=>{d.current?.focus()},y=h=>{o&&o(h.target.value)},w=()=>{o&&i&&o(i)};return{inputRef:d,usdAmount:p,value:rA(t,c),autoFocus:l,onContainerClick:m,onMaxBalanceClick:w,onInputChange:y}},Et=e=>{const{inputRef:t,usdAmount:n,autoFocus:a,value:s,onContainerClick:o,onMaxBalanceClick:i,onInputChange:l}=iA(e),{label:c,assetSymbol:d,onInputFocus:p,disabled:m=!1,displayMax:y=!1,displayCalculatedValue:w=!1,type:h=$.DEFAULT,isLoading:T=!1,children:f}=e,C=A({"dtw-text-[color:var(--panel-error-content-color)]":h===$.ERROR&&!T,"dtw-text-[color:var(--panel-warning-content-color)]":h===$.WARNING&&!T});return r.jsxs("div",{className:A("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)]":h===$.DEFAULT||T,"dtw-border-[color:var(--panel-error-content-color)]":h===$.ERROR&&!T,"dtw-border-[color:var(--panel-warning-content-color)]":h===$.WARNING&&!T}),onClick:o,children:[r.jsx("span",{className:A(C,{"dtw-text-[color:var(--panel-secondary-content-color)] dtw-text-[length:var(--panel-label-font-size)] dtw-leading-[var(--panel-label-line-height,var(--panel-line-height-xs))]":T||h===$.DEFAULT}),children:c}),r.jsxs("div",{className:A("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(dl,{iconSize:"sm"}):r.jsx("input",{className:A("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",C),ref:t,autoFocus:a,type:"number",min:0,value:s,onChange:l,onFocus:p,placeholder:"0",disabled:m,onWheelCapture:oA})}),r.jsx(sA,{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:T?r.jsx("div",{className:"dtw-h-[18px]",children:r.jsx(Ee,{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("input",{className:A("dtw-appearance-none dtw-bg-transparent dtw-outline-none dtw-pointer-events-none dtw-flex-1 dtw-py-[1px]",{"dtw-text-[color:var(--panel-input-loading-content-color,var(--panel-loading-content-color))]":T,"!dtw-text-[color:var(--panel-secondary-content-color)] dtw-text-[length:var(--panel-label-font-size)] !dtw-leading-[var(--panel-label-line-height,var(--panel-line-height-xs))]":!T&&h===$.DEFAULT},C),value:n,disabled:!0})})}),f,y&&r.jsx(Yf,{onClick:i})]})]})},lA=()=>{const{stablePrecision:e,defaultPrecision:t}=z(),[{symbol:n,address:a}]=N(),s=he({symbol:n,address:a,watch:!0});return{formattedBalance:co({balance:s,symbol:n,precision:ro(n)?e:t,truncateSymbol:!0}),symbol:n}},pl=()=>{const{formattedBalance:e,symbol:t}=lA();return r.jsx(Pi,{balance:e,symbol:t})},cA=()=>{const{stablePrecision:e,defaultPrecision:t}=z(),[{symbol:n,address:a}]=L(),s=he({symbol:n,address:a,watch:!0});return{formattedBalance:co({balance:s,symbol:n,precision:ro(n)?e:t,truncateSymbol:!0}),symbol:n}},ul=()=>{const{formattedBalance:e,symbol:t}=cA();return r.jsx(Pi,{balance:e,symbol:t})},ns=()=>{const e=x(),[t]=kn(),{isAllAssetsWithdrawOptionDefault:n}=z(),{data:a=[]}=ue(),s=a.length>0,{data:o}=za(e),i=we()[1],l=N()[1],c=L()[1],d=()=>{l({...t,value:"",isLoading:!t}),c({address:e.address,symbol:e.symbol,decimals:P,value:""})},p=()=>{const{customTokens:m,defaultWithdrawTokenSymbol:y}=e.withdrawParams,w=m.find(({symbol:T})=>T===y)??m[0]??en,h=s?w:o||n?en:w;l({address:e.address,symbol:e.symbol,decimals:P,value:""}),c({...h,value:"",isLoading:!1})};return m=>{switch(i(m),m){case"deposit":return d();case"withdraw":return p()}}},dA=()=>{Mi(),Rx(),ci(),ue()},Xe=["deposit","withdraw"],pA=()=>{const[e]=we(),t=ns();return{handleClick:()=>{const a=Xe.find(s=>s!==e);a&&t(a)}}},ml=()=>{const{handleClick:e}=pA();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(Oe.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"})})})},uA=()=>{const{sendToken:e,receiveToken:t,autoFocus:n,tradingPriceDiff:a,minSlippage:s,onInputFocus:o,onInputChange:i}=eA(),l=Lt(s??0),c=S();return r.jsxs(r.Fragment,{children:[r.jsx(Et,{label:c.send,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(pl,{})}),r.jsxs(Et,{label:c.receiveEstimated,assetInput:t.value,assetSymbol:t.symbol,assetPrice:t.price??"",displayCalculatedValue:!0,disabled:!0,tradingPriceDiff:a,type:l,isLoading:t.isLoading,children:[r.jsx(ul,{}),r.jsx(ml,{})]})]})},mA=()=>{const{address:e,chainId:t}=x(),n=wi({address:e,chainId:t}),[a]=L();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}},yA=()=>{const e=S(),[{slippage:t,minSlippage:n,isMaxSlippageLoading:a}]=K(),s=t==="auto",o=Ji(),[i]=L(),{address:l,chainId:c}=x(),{entryFee:d}=_n({address:l,chainId:c}),{minDepositUSD:p}=Ua(l,c),m=qi(),y=al(),w=jt(),h=p?te({value:p,minimumFractionDigits:0}):"",T=Lt(s?n??0:t),f=Ai({tradingType:"deposit",slippage:t,minSlippage:n}),C=T===$.DEFAULT?e.depositSlippageWarning:e.highSlippageWarning,O=Ae({value:new b(o).shiftedBy(-18).toFixed(),decimals:4});return{projectedEarnings:m,themeType:T,slippageTooltipText:C,isMaxSlippageLoading:a,slippagePlaceholder:f,minReceive:`${O} ${i.symbol.toUpperCase()}`,entryFee:d,entryFeeTooltipText:e.entryFeeExplanation,minDeposit:h,lockTime:y,showMinimumReceivedAmount:w}},as=({className:e})=>{const{value:t,isLoading:n}=ji();return r.jsxs("div",{className:A("dtw-flex dtw-h-[var(--panel-icon-secondary-size)] dtw-justify-end dtw-gap-x-2",e),children:[n&&r.jsx(Ee,{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:A("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})]})},wA=()=>{const e=S(),{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}=yA(),h=a?[{tooltipText:e.projectedYearlyEarningsTooltip,label:e.yearlyEarnings,value:t,emphasised:!0},{tooltipText:e.projectedDailyEarningsTooltip,label:e.dailyEarnings,value:n,emphasised:!0}]:[],T=u.useMemo(()=>{const f=[{tooltipText:e.exchangeRate,label:e.rate,value:r.jsx(as,{})},{tooltipText:s,label:e.maxSlippage,value:r.jsxs("div",{className:"dtw-flex dtw-gap-1",children:[i&&r.jsx(Ee,{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:A({"dtw-text-[color:var(--panel-loading-content-color)]":i}),children:[o,"%"]})]})}];return w&&f.push({tooltipText:e.minReceiveAmount,label:e.minReceived,value:l}),f.push({tooltipText:p,label:e.entryFee,value:d}),m&&f.push({tooltipText:e.minDepositUsd,label:e.minDeposit,value:m}),f.push({tooltipText:e.tokensLockTime.replace("{lockTime}",y),label:e.cooldown,value:y}),f},[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(Va,{staticItems:h,collapseItems:T,themeType:c})},hA=({children:e})=>{const{DepositMetaInfo:t,MaxSupplyReachedAlert:n}=R(),{isMaxSupplyCapReached:a,supplyCapInUsd:s}=mA();return r.jsxs(V.Meta,{children:[a&&!!n&&r.jsx(n,{supplyCapInUsd:s}),r.jsx(wA,{}),t&&r.jsx(t,{}),r.jsx("div",{className:"dtw-sticky dtw-bottom-0 dtw-bg-[var(--panel-meta-action-panel-bg)]",children:e})]})},gA=()=>{Qv(),Xv()},TA=()=>{gA();const{isGeoBlocked:e,isSanctioned:t}=z(),{GeoBlockAlert:n,SanctionedAlert:a,CustomDepositMeta:s}=R(),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(V.InputGroup,{children:r.jsx(uA,{})}),s&&r.jsx(s,{}),r.jsx(hA,{children:o?i.map(({Component:l,key:c})=>l&&r.jsx(l,{},c)):r.jsx(r.Fragment,{children:r.jsx(ts,{children:r.jsx(Xx,{})})})})]})},bA=()=>r.jsx(V.Panel,{children:r.jsx(TA,{})}),fA=e=>Object.keys(B).some(t=>t===e),vA=({children:e})=>{const t=Di();let n=null;return u.Children.forEach(e,a=>{if(u.isValidElement(a)){const s=a.props.type;fA(s)&&t[s]&&t[s].isOpen&&(n=a)}}),n},xA=({type:e})=>{const t=S(),{DepositTermsOfUse:n,ActionButton:a=q}=R(),{handleReject:s,handleConfirm:o,isPending:i}=pe({type:e});return r.jsxs(V.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(ne.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})})]})]})},AA=({type:e})=>{const t=S(),{ActionButton:n=q}=R(),{handleReject:a,handleConfirm:s}=pe({type:e});return r.jsxs(V.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(ne.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})]})]})},SA=({type:e})=>{const{handleReject:t,handleConfirm:n}=pe({type:e}),{unlockTaxAmount:a,unlockDate:s,unlockTimestamp:o,isLoading:i}=hi(),l=!!o&&Date.now()<o;return{isLoading:i,showUnlockTaxTip:l,showUnlockTaxAmount:!!a&&a!=="0",unlockTaxAmount:lo(Ae({value:a,decimals:0})),unlockDate:s,handleReject:t,handleConfirm:n}},CA=e=>{const{ActionButton:t=q}=R(),{isLoading:n,showUnlockTaxTip:a,showUnlockTaxAmount:s,unlockDate:o,unlockTaxAmount:i,handleReject:l,handleConfirm:c}=SA(e);return n?r.jsx(Xf,{}):r.jsxs(V.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(ne.ExclamationCircleIcon,{className:"dtw-h-5 dtw-w-5"}),r.jsx("p",{children:"Withdraw Alert"})]}),a?r.jsx("p",{className:"dtw-text-sm",children:"By proceeding with this trade, you acknowledge and accept the possibility of losing a part of your rewards (FMP)."}):null,r.jsx("p",{className:"dtw-text-sm dtw-self-start",children:"Please consider the following before confirming:"}),r.jsxs("ul",{className:"dtw-self-start 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:[s&&r.jsxs(r.Fragment,{children:[r.jsxs("li",{className:"dtw-text-warning",children:["If you withdraw now, you will incur a penalty of ",i," ","FMP"]}),r.jsxs("li",{className:"dtw-text-warning",children:["Wait until ",o," for locked points vesting to complete"]})]}),r.jsx("li",{children:"After withdrawal, you won’t be able to redeposit"})]}),r.jsxs("div",{className:"dtw-flex dtw-flex-col dtw-gap-2 dtw-w-full",children:[r.jsx(t,{highlighted:!1,onClick:l,children:"Back"}),r.jsx(t,{onClick:c,children:"Confirm"})]})]})},EA=({token:e,onSelect:t})=>({onClick:()=>{t(e)}}),IA=({token:e,onSelect:t})=>{const{onClick:n}=EA({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(Rt,{symbol:e.symbol,iconSymbols:[e.symbol],size:"xl",CustomIcon:r.jsx(Jt.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(dl,{className:"dtw-pt-2",showFraction:!1,showAllAsset:!0})]})},_A=({token:e,onSelect:t,isActive:n,onClose:a})=>{const s=he({symbol:e.symbol,address:e.address}),{defaultPrecision:o}=z();return{formattedBalance:new b.BigNumber(s).toFixed(o,b.BigNumber.ROUND_DOWN),onClick:()=>{if(n){a();return}t(e)}}},yl=({token:e,onSelect:t,onClose:n,isActive:a=!1})=>{const{onClick:s,formattedBalance:o}=_A({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(Rt,{symbol:e.symbol,iconSymbols:[e.symbol],size:"xl",symbolClasses:A("group-hover:dtw-opacity-100 dtw-text-sm dtw-font-medium",{"dtw-opacity-100 sm:dtw-opacity-80":!a,"dtw-opacity-100":a}),className:A("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(Jt.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]})]})]})},DA=[],NA=()=>{const e=x(),[t]=we(),[n,a]=N(),[s,o]=L(),{data:i}=za(e),l=kn(),c=i?DA: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])},OA=({searchQuery:e,type:t})=>{const[{isMultiAssetWithdrawalEnabled:n}]=K(),{isCompleteWithdrawStep:a}=ut(),s=Nt(),[o]=we(),{handleReject:i}=pe({type:t}),{tokens:l,updater:c,activeTokens:d}=NA(),p=u.useMemo(()=>e?l.filter(({symbol:y})=>y.toLowerCase().includes(e)):l,[e,l]),m=u.useCallback(({address:y,value:w,decimals:h,symbol:T})=>{c({address:y,value:w,decimals:h,symbol:T}),i()},[c,i]);return{tokenList:p,activeTokens:d,onSelect:m,onClose:i,showMultiAssetWithdrawalOption:n&&o==="withdraw"&&!s&&!a}},PA=({type:e,searchQuery:t})=>{const n=S(),{tokenList:a,activeTokens:s,onSelect:o,showMultiAssetWithdrawalOption:i,onClose:l}=OA({type:e,searchQuery:t});return r.jsxs(V.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(yl,{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(IA,{token:en,onSelect:o})})]})]})},kA=({children:e,chainId:t})=>{const{chainConfig:n}=z(),{Image:a=Li}=R(),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]})},ca=(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},LA=e=>(t,n)=>ca(n,e).balanceInUsdNumber-ca(t,e).balanceInUsdNumber,RA=({searchQuery:e,type:t})=>{const n=ui(),a=et(),s=x(),{handleReject:o}=pe({type:t}),[i]=we(),l=N()[1],c=L()[1],d=Ao()[1],p=u.useCallback(({address:y,value:w,decimals:h,symbol:T})=>{(i==="deposit"?c:l)({address:y,value:w,decimals:h,symbol:T}),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,...ca(w,n),isActive:s.address===w.address})).filter(({symbol:w})=>e?w.toLowerCase().includes(e):!0).slice().sort(LA(n))]})),[e,n,a,s]),onClose:o,onSelect:p}},MA=({type:e,searchQuery:t})=>{const n=S(),{poolList:a,onClose:s,onSelect:o}=RA({type:e,searchQuery:t});return r.jsxs(V.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(kA,{chainId:i,children:l.map(({isActive:c,symbol:d,address:p})=>r.jsx("div",{className:A("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(yl,{token:{symbol:d,address:p,value:"",decimals:P},onSelect:o,isActive:c,onClose:s})},`${p}_${d}`))},i))})]})},jA=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)}`},BA=({type:e})=>{const{address:t,symbol:n,chainId:a}=x(),[{link:s,sendTokens:o},i]=X(),{handleReject:l}=pe({type:e}),c=o?.[0],d=jA(s),p=ce({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})}},$A=e=>{const t=S(),{link:n,onClose:a,vaultSymbol:s,paidToken:o,txHash:i,vaultTokenPrice:l}=BA(e),{ActionButton:c=q}=R();return r.jsxs(V.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-2 dtw-pt-1 dtw-px-4 dtw-w-full",children:[r.jsxs("div",{className:"dtw-text-[color:var(--panel-success-content-color)] dtw-mb-2",children:[r.jsx(Oe.CheckIcon,{className:"dtw-h-16 dtw-w-16 lg:dtw-h-24 lg:dtw-w-24 dtw-shrink-0"}),"Success"]}),r.jsx(qt,{}),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.jsx("p",{className:"dtw-text-[color:var(--panel-secondary-content-color)]",children:s})]}),r.jsx(qt,{}),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?Ae({value:+o.value,decimals:4}):null," ",o.symbol]})]}),r.jsx(qt,{})]}),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(qt,{}),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(pt,{link:n,children:i??t.explorer})]})]})]}),r.jsxs("div",{className:"dtw-flex dtw-flex-col dtw-gap-2 dtw-w-full",children:[r.jsx(ll,{children:t.openLimitOrderAfterBuySwitchLabel}),r.jsx(c,{highlighted:!1,onClick:a,children:t.done})]})]})},FA=()=>{const e=S(),{LogoSpinner:t=Ee}=R(),[{link:n}]=X();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(pt,{link:n,className:"dtw-text-sm",iconClassName:"dtw-w-4 dtw-h-4",children:e.explorer})]})},WA=({onClose:e})=>{const t=S(),{ActionButton:n=q}=R(),[{link:a}]=X();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(Oe.CheckIcon,{className:"dtw-h-16 dtw-w-16 lg:dtw-h-24 lg:dtw-w-24 dtw-shrink-0"}),t.createLimitSellOrder]}),a&&r.jsx(pt,{link:a,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:e,children:t.done})})]})},UA=({type:e})=>{const[{status:t},n]=X(),{handleReject:a}=pe({type:e}),s=t==="Mining";return{onClose:u.useCallback(()=>{n({isOpen:!1}),a()},[a,n]),isProcessing:s}},zA=e=>{const{onClose:t,isProcessing:n}=UA(e);return r.jsx(V.Overlay,{className:"dtw-justify-between dtw-gap-y-4",onClose:t,noPadding:!0,children:n?r.jsx(FA,{}):r.jsx(WA,{onClose:t})})},HA=({type:e})=>{const t=S(),[{status:n,link:a,action:s},o]=X(),i=n=="Success",{handleReject:l}=pe({type:e}),c=s==="single_withdraw"&&i,d=i&&s==="deposit",p=s==="create_limit_sell_order",m=s==="limit_order_withdraw",y=u.useMemo(()=>({Wallet:t.sendingOrderToWallet,None:t.settingUpTx,Mining:t.miningTx}),[t]),w=()=>{o({isOpen:!1}),l()};return{title:y[n]??n,isSuccessTx:i,link:a,onClose:w,showNextStepTip:c,displaySuccessDepositOverlay:d,displayLimitOrderTransactionOverlay:p,displayWithdrawLimitOrderOverlay:m}},GA=({sendTokens:e})=>{const t=S(),[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(Qe,{size:"sm",symbols:[n.symbol]}),r.jsx("span",{children:n.symbol})]}):null},VA=({receiveTokens:e})=>{const t=S(),[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(Qe,{size:"sm",symbols:[n.symbol]})," ",n.symbol]})]}):null},qA=({sendTokens:e,receiveTokens:t,action:n})=>{const a=S(),[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(Qe,{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(Qe,{size:"sm",symbols:[o.symbol]})," ",o.symbol]}):r.jsx(r.Fragment,{children:n==="multi_withdraw"?a.multiAssetFractions:a.swappableAssets})})]}):null},YA=()=>{const e=S(),[{action:t,receiveTokens:n,sendTokens:a}]=X();return t==="approve"?r.jsx(GA,{sendTokens:a}):t==="swap"?r.jsx(VA,{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(qA,{action:t,sendTokens:a,receiveTokens:n})},KA=({type:e})=>{const[,t]=X(),{handleReject:n}=pe({type:e}),[{link:a,status:s}]=X(),o=s=="Success";return{onClose:u.useCallback(()=>{t({isOpen:!1}),n()},[n,t]),link:a,isSuccessTx:o}},QA=e=>{const t=S(),{ActionButton:n=q}=R(),{onClose:a,link:s,isSuccessTx:o}=KA(e);return o?r.jsxs(V.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(Oe.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(pt,{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},XA=({type:e})=>{const{link:t,title:n,onClose:a,isSuccessTx:s,showNextStepTip:o,displaySuccessDepositOverlay:i,displayLimitOrderTransactionOverlay:l,displayWithdrawLimitOrderOverlay:c}=HA({type:e}),{LogoSpinner:d=Ee}=R(),p=S();return l?r.jsx(zA,{type:e}):i?r.jsx($A,{type:e}):c?r.jsx(QA,{type:e}):r.jsxs(V.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(ne.CheckCircleIcon,{className:"dtw-h-6 dtw-w-6 dtw-text-[color:var(--panel-success-content-color)]"}):r.jsx(d,{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(YA,{})}),t&&r.jsx(pt,{link:t,className:"dtw-text-sm",iconClassName:"dtw-w-4 dtw-h-4",children:p.explorer}),o&&r.jsx("p",{className:"dtw-text-xs",children:p.proceedWithNextStep})]})},ZA=ye.filter(({type:e})=>e==="error").map(({name:e})=>e),JA=({type:e})=>{const{handleReject:t,meta:n}=pe({type:e});return{handleReject:t,error:oo({errorMessage:n?.error,abiErrors:ZA})}},eS=e=>{const{handleReject:t,error:n}=JA(e);return n?r.jsxs(V.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)]"],nS=["!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))]"],Bt=({children:e,onClick:t,highlighted:n=!0,disabled:a=!1,className:s,type:o,loading:i=!1})=>r.jsxs("button",{className:A("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",{[nS.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(Ee,{className:"dtw-h-4 dtw-w-4 dtw-stroke-[var(--limit-order-accent-content-color)]"}),e]}),wl={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."},hl=u.createContext(wl),gl=({children:e,config:t})=>{const n=u.useMemo(()=>({...wl,...t}),[t]);return r.jsx(hl.Provider,{value:n,children:e})},ge=()=>{const e=u.useContext(hl);if(!e)throw new Error("TranslationContext is used out of Provider");return e},aS=({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})]})},sS=100,rS=3,oS=({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>rS)return;const p=Number(d);!isNaN(p)&&p<=sS&&(s(d),t?.(d))}}},iS=e=>{const{disabled:t,placeholder:n,suffix:a="%",postfix:s}=e,{inputRef:o,autoFocus:i,value:l,onContainerClick:c,onInputChange:d}=oS(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})]})})},lS=7,da=4,Ks=e=>{if(!e)return"";const[t="",n]=e.replace(/,/g,"").split("."),a=n&&n.length>da?n.slice(0,da):n,s=t.replace(/\B(?=(\d{3})+(?!\d))/g,",");return a!==void 0?`${s}.${a}`:s},cS=({inputValue:e="",onInputChange:t,autoFocus:n=!1})=>{const[a,s]=u.useState(Ks(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<=lS&&m.length<=da&&/^\d*(\.\d*)?$/.test(d)&&(s(Ks(d)),t(d))}}},Qs=e=>{const{disabled:t,placeholder:n,percentage:a,suffix:s}=e,{inputRef:o,autoFocus:i,value:l,onContainerClick:c,onInputChange:d}=cS(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]})})},Hn=({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(Dn,{onChange:l,defaultEnabled:o})]}),o&&s]})},Tl={upperLimitPrice:"",lowerLimitPrice:"",sellPercentage:"",termsAccepted:!1},dS=(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:Tl};case"SET_PENDING_TRANSACTION":return{...e,pendingTransaction:t.payload};default:return e}};function _e(){}const bl=e=>({vaultAddress:e.vaultAddress,vaultChainId:e.vaultChainId,isModalOpen:e.isModalOpen??!1,form:{...Tl,...e.form},pendingTransaction:null,pricingAsset:e.pricingAsset,minAmountInUsd:e.minAmountInUsd}),fl=u.createContext(bl({vaultAddress:I,vaultChainId:0,pricingAsset:{address:I,symbol:""},minAmountInUsd:$a,form:{lowerLimitPrice:"",upperLimitPrice:""}})),vl=u.createContext({setIsModalOpen:_e,setUpperLimitPrice:_e,setLowerLimitPrice:_e,setTermsAccepted:_e,setSellPercentage:_e,reset:_e,setPendingTransaction:_e,onLog:_e}),xl=({children:e,initialState:t,actions:n})=>{const[a,s]=u.useReducer(dS,bl(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(vl.Provider,{value:y,children:r.jsx(fl.Provider,{value:a,children:e})})},Te=()=>u.useContext(fl),$t=()=>u.useContext(vl),ss=()=>{const{account:e}=M(),{vaultAddress:t,vaultChainId:n,form:{sellPercentage:a}}=Te(),{data:s}=Ia({address:e,token:t,chainId:n});return u.useMemo(()=>{const o=a||ni;if(!s)return{raw:"0",formatted:"0",symbol:""};const i=new b(s.value).times(o).dividedBy(100).toFixed(0,b.ROUND_DOWN),l=Ae({value:new b(i).shiftedBy(-18).toFixed(),decimals:2});return{raw:i,formatted:l,symbol:s.symbol}},[s,a])},Al=({userAddress:e,vaultAddress:t})=>{const n=D.encodePacked(["address","address"],[e,t]);return D.keccak256(n)},pS=({price:e,markPrice:t})=>new b(e).gt(t)?`+${It((+e/+t-1)*100,2)}`:"",uS=({price:e,markPrice:t})=>new b(e).lt(t)?`-${It((1-+e/+t)*100,2)}`:"",mS=({error:e,translationMap:t})=>e?e.title===Mr?{...e,hint:t.invalidLimitOrderPriceError}:e:null,yS=()=>{const e=ge(),{form:{upperLimitPrice:t,lowerLimitPrice:n,sellPercentage:a,termsAccepted:s},pricingAsset:o,vaultChainId:i}=Te(),{setUpperLimitPrice:l,setLowerLimitPrice:c,setSellPercentage:d,setTermsAccepted:p}=$t(),m=de({address:o.address,chainId:i,refetchInterval:We}),y=Number(m)<ab?sb:rb,{formatted:w,symbol:h}=ss(),T=pS({price:t,markPrice:m}),f=uS({price:n,markPrice:m}),C=u.useCallback(()=>{l("")},[l]),O=u.useCallback(()=>{c("")},[c]),_=u.useCallback(()=>{d("")},[d]),Y=`${o.symbol} ${e.price}`;return{upperLimitPrice:t,lowerLimitPrice:n,sellPercentage:a,setUpperLimitPrice:l,setLowerLimitPrice:c,setSellPercentage:d,onDisableUpperLimitPrice:C,onDisableLowerLimitPrice:O,onDisableSellPercentage:_,termsAccepted:s,setTermsAccepted:p,pricingAssetPrice:m==="0"?null:te({value:m,maximumFractionDigits:y}),upperLimitPriceDifference:T,lowerLimitPriceDifference:f,pricingAssetSymbol:o.symbol,inputSuffix:Y,coveredVaultAmount:w,vaultSymbol:h}},wS=["termsPoint1","termsPoint2","termsPoint3","termsPoint4","termsPoint5"],hS=({className:e})=>{const t=ge();return r.jsx("div",{className:A("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:wS.map((n,a)=>r.jsxs("li",{className:"dtw-text-pretty",children:[a+1,". ",t[n]]},n))})})},Sl=({className:e,checked:t,label:n,labelClassName:a,...s})=>r.jsxs(k.Field,{className:"dtw-flex dtw-items-center dtw-gap-2",children:[r.jsx(k.Checkbox,{...s,checked:t,className:A("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(Oe.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(k.Label,{className:A("dtw-select-none",a),children:n})]}),gS=()=>{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:h,setSellPercentage:T,onDisableSellPercentage:f,coveredVaultAmount:C,vaultSymbol:O}=yS();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(aS,{symbol:y,price:d}),r.jsx(Hn,{title:e.upperLimitLabel,subtitle:e.upperLimitSubtitle,defaultEnabled:!0,onDisable:o,children:r.jsx(Qs,{inputValue:t,onInputChange:a,percentage:p,symbol:y,suffix:w})}),r.jsx(Hn,{title:e.lowerLimitLabel,subtitle:e.lowerLimitSubtitle,defaultEnabled:!!n,onDisable:i,children:r.jsx(Qs,{inputValue:n,onInputChange:s,percentage:m,symbol:y,suffix:w})}),r.jsx(Hn,{title:e.partialSellLabel,subtitle:e.partialSellSubtitle,defaultEnabled:!!h,onDisable:f,children:r.jsx(iS,{inputValue:h,onInputChange:T,suffix:"%",placeholder:ni,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:C}),r.jsx("span",{className:"dtw-text-[color:var(--limit-order-secondary-content-color)]",children:O})]})})})]}),r.jsx("div",{className:"dtw-mt-3 dtw-px-2 dtw-flex dtw-items-center dtw-gap-1.5",children:r.jsx(Sl,{checked:c,onChange:_=>l(_),label:e.limitOrderTerms,labelClassName:"dtw-text-[length:var(--limit-order-font-size-xs)] dtw-cursor-pointer"})}),r.jsx(hS,{className:"dtw-px-2"})]})},TS=()=>{const{account:e=I}=M(),{vaultAddress:t,vaultChainId:n}=Te(),a=W("limitOrder",n),s=ss(),{data:o}=wn({tokenAddress:t,ownerAddress:e,spenderAddress:a,chainId:n});return o?new b(s.raw).lte(o.toString()):!1},bS=()=>{const{vaultAddress:e,vaultChainId:t,pendingTransaction:n}=Te(),{setPendingTransaction:a}=$t(),[s,o]=u.useState(!1),i=W("limitOrder",t),{send:l}=ve({contractId:"erc20",dynamicContractAddress:e,functionName:"approve",onSettled(d){a(d?{hash:d,action:"approve"}:null),o(!1)}});return{approveLimitOrder:async()=>{o(!0),l(i,Fe)},isApprovePending:s||!!n}},fS=()=>{const e=TS(),{approveLimitOrder:t,isApprovePending:n}=bS(),{form:{termsAccepted:a}}=Te();return{isApproved:e,approveLimitOrder:t,isApprovePending:n,disabled:!a}},vS=({children:e})=>{const t=ge(),{isApproved:n,approveLimitOrder:a,isApprovePending:s,disabled:o}=fS();return n?e:r.jsx(Bt,{onClick:a,loading:s,disabled:o,children:t.approve})},Cl=e=>{const{setIsModalOpen:t,reset:n,setPendingTransaction:a,onTransactionSettled:s}=$t();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])},xS=([e,t,n,a,s,o])=>ee(s)?null:{takeProfitPrice:D.formatUnits(n,P),stopLossPrice:D.formatUnits(t,P),takeProfitPriceD18:n,stopLossPriceD18:t,amountD18:e,user:a,vault:s,pricingAsset:o},Ft=({chainId:e,userAddress:t,vaultAddress:n})=>E.useReadContract({address:W("limitOrder",e),abi:pn,chainId:e,functionName:Cn,args:[Al({userAddress:t,vaultAddress:n})],query:{enabled:!ee(t)&&!ee(n),select:xS}}),AS=pn.filter(({type:e})=>e==="error").map(({name:e})=>e),SS="create",CS=()=>{const e=ge(),{account:t=I}=M(),{vaultAddress:n,vaultChainId:a,form:{lowerLimitPrice:s,upperLimitPrice:o,termsAccepted:i},pricingAsset:l,pendingTransaction:c,minAmountInUsd:d}=Te(),p=ss(),{data:m}=Ft({userAddress:t,vaultAddress:n,chainId:a}),y=ce({address:n,chainId:a}),[w,h]=u.useState(null),T=Cl(SS),f=!!m,{send:C}=ve({onSettled:T,contractId:"limitOrder",functionName:f?"modifyLimitOrder":"createLimitOrder"}),_=new b.BigNumber(p.formatted).multipliedBy(y??"0").gte(d),Y=!i||!_,ae=!!c;return{modifyLimitOrder:async()=>{const Wt=BigInt(s?tn(s,P):0),Ut=o?BigInt(tn(o,P)):Fe,zt=[p.raw,Wt,Ut,t,n,l.address];try{await C(zt),h(null)}catch(wt){wt instanceof ct&&h(wt.message)}},disabled:Y,error:mS({error:oo({errorMessage:w,abiErrors:AS})??null,translationMap:e}),isPending:ae,isAmountSufficient:_,minAmount:te({value:d.toString(),maximumFractionDigits:0,minimumFractionDigits:0}),isModifyTransaction:f}},ES=({disabled:e})=>{const t=ge(),{modifyLimitOrder:n,disabled:a,error:s,isPending:o,minAmount:i,isAmountSufficient:l,isModifyTransaction:c}=CS();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(Bt,{onClick:n,disabled:e||a,loading:o,children:c?t.modify:t.create})]})},IS="remove",_S=()=>{const{account:e=I}=M(),{vaultAddress:t,vaultChainId:n,pendingTransaction:a}=Te(),{data:s}=Ft({userAddress:e,vaultAddress:t,chainId:n}),o=Cl(IS),{send:i}=ve({onSettled:o,contractId:"limitOrder",functionName:"deleteLimitOrder"}),l=async()=>i(t),c=!!a,d=!!s?.amountD18&&!new b(s.amountD18.toString()).isZero();return{deleteLimitOrder:l,isPending:c,displayButton:d}},DS=()=>{const e=ge(),{deleteLimitOrder:t,isPending:n,displayButton:a}=_S();return a?r.jsx(Bt,{highlighted:!1,className:"!dtw-py-1",onClick:t,loading:n,children:e.delete}):null},NS=()=>{const{chainId:e,switchNetwork:t}=Se(),{vaultChainId:n}=Te();return{isWrongNetwork:e!==n,handleNetworkSwitch:()=>{t?.({chainId:n})}}},OS=({children:e})=>{const t=ge(),{isWrongNetwork:n,handleNetworkSwitch:a}=NS();return n?r.jsx(Bt,{onClick:a,children:t.switchNetwork}):e},Xs=e=>{const t=e?.trim();return t?!isNaN(Number(t)):!1},PS=()=>{const{form:{lowerLimitPrice:e,upperLimitPrice:t}}=Te(),n=Xs(e)&&Number(e)!==0,a=Xs(t);return{limitOrderButtonDisabled:!n&&!a}},El=({onClose:e,hideDeleteButton:t})=>{const n=ge(),{limitOrderButtonDisabled:a}=PS();return r.jsxs("div",{className:"dtw-flex dtw-flex-col dtw-gap-2",children:[r.jsx(gS,{}),r.jsxs(OS,{children:[r.jsx(vS,{children:r.jsx(ES,{disabled:a})}),!t&&r.jsx(DS,{})]}),!!e&&r.jsx(Bt,{highlighted:!1,onClick:e,children:n.cancel})]})},Il=({vaultAddress:e,vaultChainId:t})=>{const{account:n=I}=M(),{isFetched:a,data:s}=Ft({vaultAddress:e,chainId:t,userAddress:n}),o=s&&s.takeProfitPriceD18!==Fe?s.takeProfitPrice:"",i=s&&s.stopLossPriceD18!==BigInt(0)?s.stopLossPrice:"";return{isFetched:a,upperLimitPrice:o,lowerLimitPrice:i}},kS=[Cn,Ba,"allowance"],_l=()=>{const e=Ze.useQueryClient();return u.useCallback(()=>{e.invalidateQueries({predicate:({queryKey:t})=>{const n=t[1]?.functionName;return t[0]==="readContract"&&kS.some(a=>a===n)}})},[e])},Dl=()=>{const{pendingTransaction:e,vaultChainId:t,vaultAddress:n}=Te(),{setPendingTransaction:a,onTransactionSuccess:s,onTransactionError:o,onLog:i}=$t(),l=_l(),{data:c,error:d}=E.useWaitForTransactionReceipt({hash:e?.hash??void 0,chainId:t,pollingInterval:We});u.useEffect(()=>{c&&(e?.action==="create"&&i?.(Q.CREATE_LIMIT_SELL_ORDER,{[be.ADDRESS.NAME]:n,[be.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])},v={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"}},Nl=({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??v.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??v.WHITE.DEFAULT}`,"--limit-order-content-hover-color":`${t?.global?.color?.colorTextPrimaryHover??`${v.WHITE.DEFAULT}CC`}`,"--limit-order-secondary-color":`${t?.global?.color?.colorBgSecondary??v.GRAY[800]}`,"--limit-order-secondary-content-color":`${t?.global?.color?.colorTextSecondary??v.GRAY[600]}`,"--limit-order-accent-from-color":`${t?.global?.color?.colorBgAccentFrom??v.GREEN.DEFAULT}`,"--limit-order-accent-to-color":`${t?.global?.color?.colorBgAccentTo??v.GREEN[700]}`,"--limit-order-accent-hover-from-color":`${t?.global?.color?.colorBgAccentFromHover??`${v.GREEN.DEFAULT}CC`}`,"--limit-order-accent-hover-to-color":`${t?.global?.color?.colorBgAccentToHover??v.BLUE.dark}`,"--limit-order-accent-content-color":`${t?.global?.color?.colorTextAccent??v.WHITE.DEFAULT}`,"--limit-order-accent-content-hover-color":`${t?.global?.color?.colorTextAccentHover??`${v.WHITE.DEFAULT}CC`}`,"--limit-order-neutral-color":`${t?.global?.color?.colorBgNeutral??`${v.GRAY[600]}33`}`,"--limit-order-neutral-content-color":`${t?.global?.color?.colorTextNeutral??`${v.GRAY[600]}80`}`,"--limit-order-loading-content-color":`${t?.global?.color?.colorTextLoading??`${v.WHITE.DEFAULT}99`}`,"--limit-order-error-content-color":`${t?.global?.color?.colorTextError??v.RED[500]}`,"--limit-order-warning-content-color":`${t?.global?.color?.colorTextWarning??v.AMBER[400]}`,"--limit-order-border-color":`${t?.global?.color?.colorBorderPrimary??"var(--limit-order-content-color)"}`,"--limit-order-scrollbar-color":`${t?.global?.color?.colorScrollbar??`${v.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??`${v.WHITE.DEFAULT}33`}`,"--limit-order-action-outline-button-border-hover-color":`${t?.component?.actionButton?.color?.outlineColorBorderHover??`${v.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??v.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??v.DARK[700]}`,"--limit-order-tooltip-color":`${t?.component?.tooltip?.color?.colorText??v.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??v.BLUE.DEFAULT}`,"--panel-switch-bg":`${t?.component?.switch?.color?.colorBg??v.GRAY[700]}`,"--panel-switch-thumb-bg-checked":`${t?.component?.switch?.color?.colorThumbBgChecked??v.WHITE.DEFAULT}`,"--panel-switch-thumb-bg":`${t?.component?.switch?.color?.colorThumbBg??v.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??v.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??v.GRAY.DEFAULT}`,"--panel-checkbox-color":`${t?.component?.checkbox?.color?.color??v.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}),LS=({themeConfig:e})=>(Dl(),r.jsx(Nl,{config:e,children:r.jsx(El,{hideDeleteButton:!0})})),RS=({vaultChainId:e,vaultAddress:t,pricingAsset:n,translation:a,minAmountInUsd:s=$a,actions:o,themeConfig:i})=>{const{isFetched:l,upperLimitPrice:c,lowerLimitPrice:d}=Il({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(gl,{config:a,children:r.jsx(xl,{initialState:p,actions:o,children:r.jsx(LS,{themeConfig:i})})}):null},MS=({type:e})=>{const{minLimitOrderValue:t}=z(),{address:n,chainId:a,pricingAsset:s,symbol:o}=x(),{handleReject:i}=pe({type:e}),l=X()[1],c=re()[1],d=kf(),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?Nn(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}},jS=e=>{const{limitOrderThemeConfig:t}=z(),{handleReject:n,chainId:a,address:s,pricingAsset:o,minLimitOrderValue:i,actions:l,closeAllOverlays:c}=MS(e);return o?r.jsx(V.Overlay,{onClose:c,onBack:n,className:"!dtw-px-2",noPadding:!0,children:r.jsx("div",{className:"dtw-mt-8 dtw-px-2 dtw-overflow-y-auto theme-scrollbar",children:r.jsx(RS,{vaultAddress:s,vaultChainId:a,pricingAsset:o,minAmountInUsd:i,actions:l,themeConfig:t})})}):null},Ol=()=>{const[e]=N();return new b(e.value||"0").shiftedBy(e.decimals)},BS=()=>{const{account:e=I}=M(),{address:t,chainId:n}=x(),a=W("limitOrder",n),s=Ol(),{data:o}=wn({tokenAddress:t,ownerAddress:e,spenderAddress:a,chainId:n});return o?s.lte(o.toString()):!1},Zs="approve",$S=()=>{const{address:e,chainId:t,symbol:n}=x(),[a,s]=u.useState(!1),o=W("limitOrder",t),i=re()[1],l=Ve(Zs),{send:c}=ve({contractId:"erc20",dynamicContractAddress:e,functionName:"approve",onSettled(...p){s(!1),l(...p)}});return{approveLimitOrder:async()=>{i({type:"add",action:Zs,symbol:n,chainId:t}),s(!0),c(o,Fe)},isApprovePending:a}},FS=()=>{const e=BS(),{approveLimitOrder:t,isApprovePending:n}=$S();return{isApproved:e,approveLimitOrder:t,isApprovePending:n}},WS=({children:e})=>{const t=S(),{ActionButton:n=q}=R(),{isApproved:a,approveLimitOrder:s,isApprovePending:o}=FS();return a?e:r.jsx(n,{onClick:s,loading:o,children:t.approve})},Js="limit_order_withdraw",US=e=>{const{account:t=I}=M(),{address:n,chainId:a,pricingAsset:s,symbol:o}=x(),i=re()[1],l=Ve(Js),c=u.useCallback((...w)=>{l(...w),e()},[l,e]),d=Ol(),{data:p}=Ft({userAddress:t,vaultAddress:n,chainId:a}),m=!!p,{send:y}=ve({onSettled:c,contractId:"limitOrder",functionName:m?"modifyLimitOrder":"createLimitOrder"});return u.useCallback(async()=>{i({type:"add",action:Js,symbol:o,chainId:a});const w=BigInt(0),h=Fe,T=[BigInt(d.toFixed()),w,h,t,n,s?.address];return y(T)},[i,o,a,d,t,n,s?.address,y])},zS=({limitOrderHandler:e,action:t})=>{const n=S(),a=ie(),{account:s}=M(),o=x(),[i]=N(),l=X()[1],c=re()[1],d=yn(),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 ct&&(a({type:"MERGE_OVERLAY",payload:{type:B.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}},HS="limit_order_withdraw",GS=()=>{const e=ie(),t=yt("limit_order_withdraw"),n=u.useCallback(()=>e({type:"MERGE_OVERLAY",payload:{type:B.LIMIT_ORDER_WITHDRAW,isOpen:!1}}),[e]),a=US(n),{handleLimitOrderWithdraw:s,label:o}=zS({limitOrderHandler:a,action:HS});return{label:o,handleLimitOrderWithdraw:s,isLoading:t}},VS=({disabled:e})=>{const{ActionButton:t=q}=R(),{label:n,handleLimitOrderWithdraw:a,isLoading:s}=GS();return r.jsx(t,{onClick:a,disabled:e,loading:s,children:n})},qS=["termOfUseWithdrawPoint1","termOfUseWithdrawPoint2"],YS=({className:e})=>{const t=S();return r.jsxs(r.Fragment,{children:[r.jsx("p",{children:t.limitOrderWithdrawDescription}),r.jsx("div",{className:A("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:qS.map((n,a)=>r.jsxs("li",{className:"dtw-text-pretty",children:[a+1,". ",t[n]]},n))})})]})},KS=({type:e})=>{const t=S(),{ActionButton:n=q}=R(),{handleReject:a}=pe({type:e}),[s,o]=u.useState(!1);return r.jsx(V.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(YS,{}),r.jsx("div",{className:"dtw-mt-1 dtw-flex dtw-items-center dtw-gap-1.5",children:r.jsx(Sl,{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(WS,{children:r.jsx(VS,{disabled:!s})})]})})},QS=()=>{const e=In(),t=S();return r.jsxs(r.Fragment,{children:[r.jsx(Be,{label:t.slippageTolerance,tooltipText:t.withdrawSlippageWarning,children:r.jsx(Ri,{})}),r.jsx(Be,{label:t.tokenAllowance,tooltipText:t.toggleTokenApprovalAmount,children:r.jsx(Qi,{})}),e&&r.jsx(Be,{label:t.batchTransactionsLabel,tooltipText:t.batchTransactionsTooltip??"",children:r.jsx(Xi,{})}),r.jsx(Zi,{})]})},XS=({assets:e=[]})=>{const{stablePrecision:t}=z(),{firstPart:n,secondPart:a}=ao(e,gr),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(Rt,{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:Ae({value:D.formatUnits(l,c),decimals:t})})})]},i),[t]);return r.jsxs("div",{className:"dtw-text-sm dtw-font-light ",children:[r.jsx(cn,{children:n.map(s)}),a.length>0&&r.jsx(cl,{children:r.jsx(cn,{children:a.map(s)})})]})},ZS=()=>{const{chainId:e}=x(),{stablePrecision:t}=z(),{data:n=[]}=ue(),a=Fi(),{data:s=I}=mv();return{assets:n,usdAmount:te({value:a,maximumFractionDigits:t}),withdrawalVaultLink:Nn(s,"address",e)}},JS=()=>{const e=S(),{assets:t,usdAmount:n,withdrawalVaultLink:a}=ZS();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(pt,{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(XS,{assets:t})})]})},er=!0,eC=()=>{const{isWrongNetwork:e}=rl(),t=$i({isClaim:er}),{disabled:n,label:a,handleTrade:s}=zi({withdraw:t,isClaim:er}),o=yt("claim");return{disabled:n,label:a,handleTrade:s,isWrongNetwork:e,isLoading:o}},tr=({highlighted:e,className:t})=>{const{ActionButton:n=q}=R(),{handleTrade:a,disabled:s,label:o,isWrongNetwork:i,isLoading:l}=eC();return i?null:r.jsx(n,{onClick:a,disabled:s,highlighted:e,className:t,loading:l,children:o})},tC=()=>{const e=ie(),t=$i(),{isError:n}=qe(),{disabled:a,label:s,handleTrade:o}=zi({withdraw:t}),i=yt("swap");return bv(o),{disabled:a,label:s,handleClick:()=>{if(n){e({type:"MERGE_OVERLAY",payload:{type:B.ERROR_NOTIFICATION,isOpen:!0,meta:{error:Lr}}});return}o()},isLoading:i}},nC=()=>{const{ActionButton:e=q}=R(),{handleClick:t,disabled:n,label:a,isLoading:s}=tC();return r.jsx(e,{onClick:t,disabled:n,loading:s,children:a})},aC=()=>{const e=ie(),{requiresHighSlippageConfirm:t,confirmHighSlippage:n,slippageToBeUsed:a}=Ha();return{requiresHighSlippageConfirm:t,slippageToBeUsed:a,handleHighSlippageClick:()=>{e({type:"MERGE_OVERLAY",payload:{type:B.HIGH_SLIPPAGE,isOpen:!0,onConfirm:async()=>n()}})}}},sC=({children:e})=>{const{ActionButton:t=q}=R(),n=S(),{requiresHighSlippageConfirm:a,slippageToBeUsed:s,handleHighSlippageClick:o}=aC();return a?r.jsx(t,{onClick:o,children:n.confirmMaxSlippage.replace("{slippagePercentage}",`${Math.abs(s)}`)}):e},rC=()=>{gv();const e=Xa(),t=ke();return{showSwapButton:e&&!t}},oC=()=>{const{chainId:e}=x(),[t]=L(),n=de({address:t.address,chainId:e}),a=Hi(),s=Lt(Math.min(0,a));return{receiveToken:{...t,price:n},swapDiff:a,themeType:s}},iC=()=>{const e=S(),{receiveToken:t,swapDiff:n,themeType:a}=oC();return r.jsx(Et,{label:e.receiveEstimated,assetInput:t.value,autoFocus:!1,disabled:!0,assetSymbol:t.symbol,assetPrice:t.price,displayCalculatedValue:!0,isLoading:t.isLoading,tradingPriceDiff:n,type:a})},lC=()=>{const e=S(),{stablePrecision:t}=z(),[n]=L(),a=Mt(),{minExpectedReceiveAmount:s}=Qa(),o=Lt(a),i=o===$.DEFAULT?e.withdrawSlippageWarning:e.highSlippageWarning;return{themeType:o,slippageTooltipText:i,slippagePlaceholder:a.toString(),minReceive:`${Ae({value:D.formatUnits(BigInt(s),n.decimals),decimals:t})} ${n.symbol}`}},cC=()=>{const e=S(),{slippageTooltipText:t,slippagePlaceholder:n,minReceive:a}=lC(),s=u.useMemo(()=>[{tooltipText:e.exchangeRate,label:e.rate,value:r.jsx(as,{})},{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(Va,{collapseItems:s})},dC=({children:e})=>r.jsxs(V.Meta,{children:[r.jsx(cC,{}),r.jsx("div",{className:"dtw-sticky dtw-bottom-0 dtw-bg-[var(--panel-meta-action-panel-bg)]",children:e})]}),Gn=[{isLeveragedAsset:po,getWithdrawAssetByLeverageAddress:uo,getWithdrawAssetByVaultAddress:()=>{},isLentAndBorrowedAsset:Zn},{isLeveragedAsset:nd,getWithdrawAssetByLeverageAddress:ad,getWithdrawAssetByVaultAddress:sd,isLentAndBorrowedAsset:Zn}],Vn={requiresLeveragedCollateralLiquidity:!1,leveragedCollateralValueFormatted:"$0"},qn=e=>b(e.amount).shiftedBy(-e.precision).times(e.rate).shiftedBy(-18).toNumber(),Pl=()=>{const e=x(),t=dt(e),[n]=N(),a=ce(e),s=t.find(({tokenAddress:m,amount:y})=>Gn.some(w=>w.isLeveragedAsset(m)&&y!=="0"));if(!s)return Vn;const o=Gn.find(m=>m.isLeveragedAsset(s.tokenAddress));if(!o)return Vn;const i=o.getWithdrawAssetByVaultAddress(e.address)?.address??o.getWithdrawAssetByLeverageAddress(s.tokenAddress).address,l=t.find(({tokenAddress:m})=>G(i,m));if(!l)return Vn;const c=Number(n.value||"0")*Number(a),d=qn(l);if(t.find(({tokenAddress:m,amount:y})=>Gn.some(w=>w.isLentAndBorrowedAsset({address:m,chainId:e.chainId})&&y!=="0"))){const m=qn(s),y=t.reduce((C,O)=>C+qn(O),0),w=d/y,h=m/y,f=w/(w+h)*y;return{requiresLeveragedCollateralLiquidity:c>f,leveragedCollateralValueFormatted:te({value:f})}}return{requiresLeveragedCollateralLiquidity:c>d,leveragedCollateralValueFormatted:te({value:d})}},rs=()=>{const{pricingAsset:e,onDemandWithdrawalEnabled:t}=x(),{requiresLeveragedCollateralLiquidity:n}=Pl(),a=Nt();return n&&!!e&&!!t&&!a},nr=0,ar=1,sr=2,pC=()=>{const e=S(),{isCompleteWithdrawStep:t}=ut(),{canSpend:n}=Ka(),a=ke(),s=Ja(),o=rs(),i=u.useMemo(()=>{const c=[{index:nr,description:r.jsx(r.Fragment,{children:e.approve})},{index:ar,description:s?e.unrollAndClaimDescription:r.jsxs(r.Fragment,{children:[e.initWithdrawDescription," ",r.jsx(on,{text:e.initWithdrawTooltip,iconClassName:"!dtw-inline"})]})}],d={index:sr,description:r.jsxs(r.Fragment,{children:[r.jsx("span",{children:e.completeWithdrawDescription}),r.jsx(on,{text:e.completeWithdrawTooltip,iconClassName:"!dtw-inline"})]})};return[...c,...s?[]:[d]]},[e.approve,e.unrollAndClaimDescription,e.initWithdrawDescription,e.initWithdrawTooltip,e.completeWithdrawDescription,e.completeWithdrawTooltip,s]);return{hideStepper:a||o,activeStepIndex:t?sr:n?ar:nr,steps:i}},kl=({children:e})=>{const{hideStepper:t,steps:n,activeStepIndex:a}=pC();return t?e:r.jsx("div",{className:"dtw-mt-1 dtw-grid dtw-gap-1 dtw-grid-cols-[auto_1fr] dtw-auto-rows-min",children:n.map((s,o)=>{const i=s.index<a,l=s.index===a,c=o===n.length-1;return r.jsxs(u.Fragment,{children:[r.jsxs("div",{className:A("dtw-grid dtw-grid-cols-1 dtw-h-full dtw-gap-0.5",{"dtw-text-themeGreen":i,"dtw-text-[color:var(--panel-secondary-content-color)]":!i&&!l,"dtw-grid-rows-[auto_1fr]":!c}),children:[i?r.jsx(ne.CheckCircleIcon,{className:"dtw-w-[18px]"}):r.jsxs("span",{className:"dtw-text-center dtw-text-sm",children:[o+1,"."]}),!c&&r.jsx("div",{className:"dtw-h-full dtw-min-h-1",children:r.jsx("div",{className:A("dtw-w-[1px] dtw-h-full dtw-m-auto dtw-bg-[color:var(--panel-secondary-content-color)]")})})]}),r.jsxs("div",{className:"dtw-flex dtw-flex-col dtw-gap-0.5 dtw-text-[length:var(--panel-input-label-font-size,var(--panel-font-size-sm))] dtw-text-[color:var(--panel-content-color)]",children:[r.jsx("div",{className:A("dtw-mt-0.5 dtw-flex dtw-gap-1 dtw-leading-none dtw-items-center",{"dtw-text-[color:var(--panel-secondary-content-color)]":!i&&!l}),children:s.description}),l&&r.jsx("div",{className:A({"dtw-my-1":!c,"dtw-mt-1":c}),children:e})]},s.index)]},s.index)})})},uC=()=>{const{showSwapButton:e}=rC();return r.jsxs(r.Fragment,{children:[r.jsxs(V.InputGroup,{children:[r.jsx(JS,{}),r.jsx(iC,{})]}),r.jsx(dC,{children:r.jsx(kl,{children:r.jsx(ts,{children:e?r.jsxs(r.Fragment,{children:[r.jsx(sC,{children:r.jsx(nC,{})}),r.jsx(tr,{highlighted:!1,className:"dtw-mt-1.5 !dtw-py-1 dtw-text-[length:var(--panel-input-button-font-size,var(--panel-font-size-xs))]"})]}):r.jsx(tr,{})})})})]})},mC=()=>{const{chainId:e,address:t}=x(),{exitFeeNumber:n}=_n({address:t,chainId:e}),[a]=N(),[s,o]=L(),i=ce({address:t,chainId:e}),l=de({address:s.address,chainId:e});u.useEffect(()=>{if(!a.value||a.value==="0"){o({value:""});return}const d=new b(a.value).times(i).times(1-n/100).dividedBy(l).toFixed(s.decimals);o({value:io(d)?d:""})},[n,s.decimals,l,a.value,i,o])},yC=()=>{const{withdraw:e,action:t}=Cv(),{disabled:n,label:a,handleTrade:s}=Gi(e),o=ie(),{address:i}=x(),l=Ca(i);return{isLoading:yt(t),disabled:n,label:a,handleTrade:()=>{l?o({type:"MERGE_OVERLAY",payload:{type:B.FMP_WITHDRAWAL,isOpen:!0,onConfirm:async()=>{s()}}}):s()}}},wC=()=>{const{ActionButton:e=q}=R(),{handleTrade:t,disabled:n,label:a,isLoading:s}=yC();return r.jsx(e,{onClick:t,disabled:n,loading:s,children:a})},hC=()=>{const e=S(),t=ie(),n=()=>t({type:"MERGE_OVERLAY",payload:{type:B.LIMIT_ORDER_WITHDRAW,isOpen:!0}});return{label:e.withdrawAction,openLimitOrderWithdrawOverlay:n}},gC=()=>{const{ActionButton:e=q}=R(),{label:t,openLimitOrderWithdrawOverlay:n}=hC();return r.jsx(e,{onClick:n,children:t})},TC=()=>{const{address:e,chainId:t,maintenance:n,maintenanceWithdrawals:a,symbol:s}=x(),[o]=N(),i=ie(),l=rs(),c=Dt(),{data:d=0}=mf({address:e,chainId:t}),p=d>0,m=At.formatDuration(At.intervalToDuration({start:0,end:d})),{approve:y,canSpend:w}=Ka(),{requiresHighSlippageConfirm:h,confirmHighSlippage:T,slippageToBeUsed:f}=Ha(),C=()=>{i({type:"MERGE_OVERLAY",payload:{type:B.HIGH_SLIPPAGE,isOpen:!0,onConfirm:async()=>T()}})};return{requiresEndOfCooldown:p,requiresApprove:!w,requiresHighSlippageConfirm:h,sendTokenSymbol:o.symbol,slippageToBeUsed:f,dynamicCooldownEndsInTime:m,approve:y,handleHighSlippageClick:C,maintenance:n||a,poolSymbol:s,isLimitOrderWithdraw:l,insufficientBalance:c}},bC=({children:e})=>{const{ActionButton:t=q}=R(),n=S(),a=Ga("withdraw"),{requiresEndOfCooldown:s,requiresApprove:o,requiresHighSlippageConfirm:i,sendTokenSymbol:l,slippageToBeUsed:c,dynamicCooldownEndsInTime:d,approve:p,handleHighSlippageClick:m,maintenance:y,poolSymbol:w,isLimitOrderWithdraw:h,insufficientBalance:T}=TC();return y?r.jsx(oa,{promptText:n.poolWithdrawalsAreMaintenance.replace("{poolSymbol}",w),children:a}):s?r.jsx(oa,{promptText:n.withdrawCooldown.replace("{tokenSymbol}",l).replace("{cooldownEndTime}",d),children:a}):T?r.jsx(t,{disabled:!0,children:n.insufficientBalance}):h?r.jsx(gC,{}):o?r.jsx(ol,{onApprove:p,symbol:l}):i?r.jsx(t,{onClick:m,children:n.confirmMaxSlippage.replace("{slippagePercentage}",`${Math.abs(c)}`)}):e},fC=()=>{const{address:e,chainId:t}=x(),[n,a]=N(),s=he({symbol:n.symbol,address:n.address}),o=ce({address:e,chainId:t});return{...n,updater:a,balance:s,price:o}},vC=()=>{const{chainId:e}=x(),[t,n]=L(),a=de({address:t.address,chainId:e});return{...t,updater:n,price:a}},xC=()=>{const e=fC(),t=vC();return{sendToken:e,onInputChange:a=>{e.updater({value:a})},receiveToken:t}},AC=()=>{const e=S(),{sendToken:t,onInputChange:n,receiveToken:a}=xC();return r.jsxs(r.Fragment,{children:[r.jsx(Et,{label:e.send,assetInput:t.value,onInputChange:n,assetSymbol:t.symbol,assetPrice:t.price??"",displayMax:!0,maxBalance:t.balance,displayCalculatedValue:!0,children:r.jsx(pl,{})}),r.jsxs(Et,{label:e.receiveEstimated,assetInput:a.value,autoFocus:!1,disabled:!0,assetSymbol:a.symbol,assetPrice:a.price,displayCalculatedValue:!0,isLoading:a.isLoading,children:[r.jsx(ml,{}),a.symbol==="all"?null:r.jsx(ul,{})]})]})},SC=()=>{const e=S(),{address:t,chainId:n}=x(),[{isMaxSlippageLoading:a}]=K(),{exitFeeNumber:s}=_n({address:t,chainId:n}),o=Mt(),i=ke();return{slippageTooltipText:Lt(o)===$.DEFAULT?e.withdrawSlippageWarning:e.highSlippageWarning,isMaxSlippageLoading:a,slippagePlaceholder:`${o}%`,exitFee:It(s,2),minReceivedText:e.estimatedMultiAssetFractions,showMinReceivedText:i}},CC=()=>{const e=S(),{slippageTooltipText:t,slippagePlaceholder:n,isMaxSlippageLoading:a,exitFee:s,minReceivedText:o,showMinReceivedText:i}=SC(),l=u.useMemo(()=>{const c=[{tooltipText:e.exchangeRate,label:e.rate,value:r.jsx(as,{})},{tooltipText:t,label:e.maxSlippage,value:r.jsxs("div",{className:"dtw-flex dtw-gap-1",children:[a&&r.jsx(Ee,{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:A({"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(Va,{collapseItems:l})},EC=({children:e})=>{const{WithdrawMetaInfo:t,AvailableLiquidityAlert:n,OnDemandWithdrawAlert:a}=R(),{requiresLeveragedCollateralLiquidity:s,leveragedCollateralValueFormatted:o}=Pl(),i=rs();return r.jsxs(V.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(CC,{}),t&&r.jsx(t,{}),r.jsx("div",{className:"dtw-sticky dtw-bottom-0 dtw-bg-[var(--panel-meta-action-panel-bg)]",children:e})]})},IC=()=>{const e=S();return mC(),r.jsxs(r.Fragment,{children:[r.jsx(V.InputGroup,{children:r.jsx(AC,{})}),r.jsx(EC,{children:r.jsx(kl,{children:r.jsx(ts,{children:r.jsx(bC,{children:r.jsxs("div",{className:"dtw-flex dtw-flex-col dtw-gap-2 dtw-w-full",children:[r.jsx(wC,{}),r.jsx(ll,{highlighted:!1,children:e.stopOrder})]})})})})})]})},_C=()=>{uv();const{isCompleteWithdrawStep:e}=ut();return{isCompleteWithdrawStep:e}},DC=()=>{const{isCompleteWithdrawStep:e}=_C();return e?r.jsx(uC,{}):r.jsx(IC,{})},NC=()=>r.jsx(V.Panel,{children:r.jsx(DC,{})}),OC=({tradingType:e})=>r.jsxs(k.TabGroup,{selectedIndex:Xe.indexOf(e),children:[r.jsx(k.TabList,{className:"dtw-flex",children:Xe.map(t=>r.jsx(k.Tab,{className:"dtw-hidden"},t))}),r.jsxs(k.TabPanels,{children:[r.jsx(V.Settings,{children:r.jsx(Lv,{})}),r.jsx(V.Settings,{children:r.jsx(QS,{})})]})]}),PC=({children:e})=>r.jsxs(k.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:Xe.map(t=>r.jsx(Mf,{tradingType:t},t))}),e]}),kC=Xe.reduce((e,t,n)=>(e[n]=t,e),{}),LC=()=>{const[e]=we(),t=x(),{standalone:n}=z();dA();const a=ns(),s=o=>{const i=kC[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}},RC=()=>{const{type:e,onTabChange:t}=LC();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(k.TabGroup,{selectedIndex:Xe.indexOf(e),onChange:t,className:"dtw-flex dtw-flex-col dtw-h-full",children:[r.jsx(PC,{children:r.jsxs("div",{className:"dtw-flex dtw-gap-2 dtw-items-center dtw-justify-end",children:[r.jsx(Qx,{}),r.jsx(OC,{tradingType:e})]})}),r.jsxs(k.TabPanels,{className:"dtw-flex-1 dtw-overflow-y-auto",children:[r.jsx(bA,{}),r.jsx(NC,{})]})]}),r.jsxs(vA,{children:[r.jsx(eS,{type:B.ERROR_NOTIFICATION}),r.jsx(xA,{type:B.TERMS_OF_USE}),r.jsx(AA,{type:B.HIGH_SLIPPAGE}),r.jsx(CA,{type:B.FMP_WITHDRAWAL}),r.jsx(PA,{type:B.TOKEN_SELECT,searchQuery:""}),r.jsx(MA,{type:B.POOL_SELECT,searchQuery:""}),r.jsx(XA,{type:B.TRADING}),r.jsx(jS,{type:B.LIMIT_SELLS}),r.jsx(KS,{type:B.LIMIT_ORDER_WITHDRAW})]})]})},MC=({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??v.DARK[800]}`,"--panel-gap":`${t?.global?.size?.gap??"0.25rem"}`,"--panel-spacer":`${t?.global?.size?.spacer??"4px"}`,"--panel-content-color":`${t?.global?.color?.colorTextPrimary??v.WHITE.DEFAULT}`,"--panel-content-hover-color":`${t?.global?.color?.colorTextPrimaryHover??`${v.WHITE.DEFAULT}CC`}`,"--panel-secondary-color":`${t?.global?.color?.colorBgSecondary??v.GRAY[800]}`,"--panel-secondary-content-color":`${t?.global?.color?.colorTextSecondary??v.GRAY[600]}`,"--panel-accent-from-color":`${t?.global?.color?.colorBgAccentFrom??v.GREEN.DEFAULT}`,"--panel-accent-to-color":`${t?.global?.color?.colorBgAccentTo??v.GREEN[700]}`,"--panel-accent-hover-from-color":`${t?.global?.color?.colorBgAccentFromHover??`${v.GREEN.DEFAULT}CC`}`,"--panel-accent-hover-to-color":`${t?.global?.color?.colorBgAccentToHover??v.BLUE.dark}`,"--panel-accent-content-color":`${t?.global?.color?.colorTextAccent??v.WHITE.DEFAULT}`,"--panel-accent-content-hover-color":`${t?.global?.color?.colorTextAccentHover??`${v.WHITE.DEFAULT}CC`}`,"--panel-neutral-color":`${t?.global?.color?.colorBgNeutral??`${v.GRAY[600]}33`}`,"--panel-neutral-content-color":`${t?.global?.color?.colorTextNeutral??`${v.GRAY[600]}80`}`,"--panel-loading-content-color":`${t?.global?.color?.colorTextLoading??`${v.WHITE.DEFAULT}99`}`,"--panel-error-content-color":`${t?.global?.color?.colorTextError??v.RED[500]}`,"--panel-warning-content-color":`${t?.global?.color?.colorTextWarning??v.WARNING}`,"--panel-success-content-color":`${t?.global?.color?.colorTextSuccess??v.GREEN.DEFAULT}`,"--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??`${v.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-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??v.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??v.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??v.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) * 2)"}`,"--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??v.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??`${v.WHITE.DEFAULT}33`}`,"--panel-action-outline-button-border-hover-color":`${t?.component?.actionButton?.color?.outlineColorBorderHover??`${v.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??v.DARK[700]}`,"--panel-tooltip-color":`${t?.component?.tooltip?.color?.colorText??v.WHITE.DEFAULT}`,"--panel-alert-error-bg":`${t?.component?.alert?.color?.errorBg??`${v.ERROR}4D`}`,"--panel-alert-warning-bg":`${t?.component?.alert?.color?.warningBg??`${v.WARNING}4D`}`,"--panel-alert-info-bg":`${t?.component?.alert?.color?.infoBg??`${v.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??v.BLUE.DEFAULT}`,"--panel-switch-bg":`${t?.component?.switch?.color?.colorBg??v.GRAY[700]}`,"--panel-switch-thumb-bg-checked":`${t?.component?.switch?.color?.colorThumbBgChecked??v.WHITE.DEFAULT}`,"--panel-switch-thumb-bg":`${t?.component?.switch?.color?.colorThumbBg??v.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??v.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??v.GRAY.DEFAULT}`,"--panel-checkbox-color":`${t?.component?.checkbox?.color?.color??v.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}),jC=({children:e,config:t,theme:n,components:a,translation:s,className:o})=>r.jsx(_f,{config:s,children:r.jsx(MC,{config:n,className:o,children:r.jsx(fi,{config:t,children:r.jsx(qf,{config:a,children:r.jsx(Lf,{children:e})})})})}),BC=e=>r.jsx(jC,{...e,children:r.jsx(RC,{})}),$C="ref",FC=({vaultAddress:e,userAddress:t,query:n,logEvent:a,tagInvestorByReferrer:s})=>{const[o,i]=ia("localStorage",xt.REFERRER,""),[l,c]=ia("localStorage",xt.REF_POOL,""),d=n[$C];u.useEffect(()=>{!d||typeof d!="string"||ee(e)||localStorage.getItem(xt.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])},WC=({title:e,children:t,className:n,titleClassName:a})=>r.jsxs("div",{className:A("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:A("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})]}),UC=({isOpen:e,onClose:t,children:n,className:a,ThemeProvider:s=u.Fragment})=>{const o=u.useRef(null);return r.jsx(k.Dialog,{open:e,initialFocus:o,as:"div",className:A("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(k.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(k.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})})]})})})},zC=()=>{const e=ze(),{isModalOpen:t,pendingTransaction:n}=Te(),{setIsModalOpen:a}=$t(),s=u.useCallback(()=>{a(!0),e?.(Q.OPEN_LIMIT_SELL_VIEW,{[be.SOURCE.NAME]:"modal"})},[e,a]),o=u.useCallback(()=>a(!1),[a]);return{isModalOpen:t,onOpen:s,onClose:o,isTransactionPending:!!n}},HC=({children:e,themeConfig:t})=>{const{onOpen:n,isModalOpen:a,onClose:s,isTransactionPending:o}=zC(),i=ge();Dl();const l=u.useCallback(({children:c})=>r.jsx(Nl,{config:t,children:c}),[t]);return r.jsxs(r.Fragment,{children:[e({onClick:n,isTransactionPending:o}),r.jsx(UC,{isOpen:a,onClose:s,ThemeProvider:l,className:"limit-order",children:r.jsx(WC,{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(El,{onClose:s})})})]})},GC=({children:e,vaultChainId:t,vaultAddress:n,pricingAsset:a,translation:s,minAmountInUsd:o=$a,actions:i,themeConfig:l,isModalOpen:c})=>{const{isFetched:d,upperLimitPrice:p,lowerLimitPrice:m}=Il({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(gl,{config:s,children:r.jsx(xl,{initialState:y,actions:i,children:r.jsx(HC,{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:()=>g.arbitrum});Object.defineProperty(exports,"base",{enumerable:!0,get:()=>g.base});Object.defineProperty(exports,"optimism",{enumerable:!0,get:()=>g.optimism});Object.defineProperty(exports,"polygon",{enumerable:!0,get:()=>g.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=Ql;exports.AaveLendingPoolAbi=Kn;exports.AddressZero=I;exports.BRIDGED_TOKENS_SYMBOLS=Aa;exports.BRIDGED_USDC_ARBITRUM=ya;exports.BRIDGED_USDC_OPTIMISM=ha;exports.BRIDGED_USDC_POLYGON=ba;exports.CBBTC_BASE=$r;exports.CBETH_BASE=_c;exports.CHAIN_MAP=Kl;exports.CHAIN_NATIVE_TOKENS=Ye;exports.CURRENCY_SYMBOL_MAP=Tr;exports.ConfigProvider=fi;exports.DAI_OPTIMISM=Ur;exports.DAI_POLYGON=Vr;exports.DEFAULT_DEPOSIT_METHOD=Ul;exports.DEFAULT_DEPOSIT_SLIPPAGE=dn;exports.DEFAULT_DEPOSIT_SLIPPAGE_SCALE=Gl;exports.DEFAULT_ERROR_MESSAGE=Or;exports.DEFAULT_LOCK_TIME=lr;exports.DEFAULT_MULTI_ASSET_WITHDRAW_METHOD=ur;exports.DEFAULT_POLLING_INTERVAL=Je;exports.DEFAULT_PRECISION=P;exports.DEFAULT_PROMISE_TIMEOUT_MS=hr;exports.DEFAULT_SIMULATION_ERROR=Xn;exports.DEFAULT_WITHDRAW_SLIPPAGE=dr;exports.EMPTY_POOL_CONFIG=cr;exports.EasySwapperV2Abi=ye;exports.EstimationError=ct;exports.GAS_ESTIMATION_ERROR=Qn;exports.GAS_LIMIT_BUFFER_COEFF=wr;exports.GET_ALL_LIMIT_ORDER_IDS_FUNCTION_NAME=Ba;exports.GMX_MARKET_ASSETS=Jr;exports.GMX_MARKET_ASSETS_MAP=se;exports.LIMIT_ORDER_READ_FUNCTION_NAME=Cn;exports.LINK_ARBITRUM=Ec;exports.LINK_OPTIMISM=kc;exports.LimitOrderAbi=pn;exports.LimitOrderModal=GC;exports.MANAGER_FEE_DENOMINATOR=me;exports.MAX_GAS_LIMIT_MAP=Yt;exports.MULTI_ASSET_TOKEN=en;exports.MaxUint256=Fe;exports.NATIVE_TOKEN_DEPOSIT_GAS_LIMIT=yr;exports.PAXG_POLYGON=Mc;exports.PYTH_API_LINK=$c;exports.PoolFactoryAbi=Ue;exports.PoolLogicAbi=fe;exports.PoolManagerLogicAbi=De;exports.RETH_BASE=Qt;exports.RewardDistributionAbi=_r;exports.SETH_OPTIMISM=Pc;exports.SHORTEN_POLLING_INTERVAL=We;exports.SIMULATION_TIMEOUT_ERROR=Pr;exports.SUSD_OPTIMISM=Oc;exports.TBTC_ARBITRUM=vc;exports.TBTC_BASE=Dc;exports.TBTC_OPTIMISM=Lc;exports.TBTC_POLYGON=jc;exports.TRADING_LOG_EVENT_PARAM=be;exports.TRADING_PANEL_LOG_EVENT=Q;exports.TradingPanelProvider=ld;exports.TradingWidget=BC;exports.USDCBC_BASE=Ic;exports.USDC_ARBITRUM=le;exports.USDC_BASE=Br;exports.USDC_MAINNET=qr;exports.USDC_OPTIMISM=Fr;exports.USDC_POLYGON=zr;exports.USDT_ARBITRUM=Ac;exports.USDT_MAINNET=Yr;exports.USDT_OPTIMISM=Wr;exports.USDT_POLYGON=Gr;exports.WBNB_ARBITRUM=Cc;exports.WBTC_ARBITRUM=je;exports.WBTC_BY_CHAIN_ID=Qr;exports.WBTC_MAINNET=xa;exports.WBTC_OPTIMISM=Ke;exports.WBTC_POLYGON=fa;exports.WETH_ARBITRUM=St;exports.WETH_BASE=wa;exports.WETH_BY_CHAIN_ID=Kr;exports.WETH_MAINNET=va;exports.WETH_OPTIMISM=ga;exports.WETH_POLYGON=Ta;exports.WPOL_POLYGON=Hr;exports.WSOL_ARBITRUM=Sc;exports.WSTETH_ARBITRUM=xc;exports.WSTETH_BASE=Nc;exports.WSTETH_OPTIMISM=Rc;exports.clientSide=mn;exports.commify=lo;exports.contractsAbisMap=Nr;exports.contractsAddressesMap=Dr;exports.formatByCurrency=Zt;exports.formatNumberToLimitedDecimals=Ae;exports.formatNumeratorToPercentage=vt;exports.formatPercentage=It;exports.formatToUsd=te;exports.getContractAbiById=eo;exports.getContractAddressById=W;exports.getConventionalTokenPriceDecimals=Ct;exports.getErrorMessage=Jo;exports.getLimitOrderId=Al;exports.getNativeTokenInvestableBalance=so;exports.getPercent=Ne;exports.getPoolFraction=Jn;exports.isAaveLendAndBorrowAsset=Zn;exports.isEqualAddress=G;exports.isErrorWithMessage=Xo;exports.isFmpAirdropVaultAddress=Ca;exports.isNativeToken=un;exports.isZeroAddress=ee;exports.normalizeNumber=$e;exports.removeInsignificantTrailingZeros=ea;exports.shiftBy=tn;exports.shortenAddress=to;exports.toErrorWithMessage=Zo;exports.transformAddressForAnalytics=Ea;exports.useAccount=M;exports.useAddPoolConfig=gd;exports.useAssetPrice=de;exports.useAvailableManagerFee=yi;exports.useBalance=Ia;exports.useBrowserStorage=ia;exports.useCheckWhitelist=oi;exports.useCompleteWithdrawSwapQuotes=qe;exports.useCompleteWithdrawTrackedAssets=ue;exports.useContractFunction=ve;exports.useContractPoolComposition=ii;exports.useContractReadErrorLogging=ja;exports.useContractReadsErrorLogging=Sn;exports.useCustomDepositTokensPerChain=Co;exports.useDebounce=Za;exports.useDepositLockTime=al;exports.useDepositProjectedEarnings=qi;exports.useEasySwapperTrackedAssets=Wi;exports.useExchangeRate=ji;exports.useFlatmoneyPointsUserBalances=hi;exports.useGasPrice=ei;exports.useHasSingleAssetWithdrawBlockers=za;exports.useInvalidateLimitOrderQuery=_l;exports.useInvalidateOnBlock=rn;exports.useInvalidatePoolContractData=ci;exports.useInvalidateTradingQueries=En;exports.useIsBatchContractWritesSupported=In;exports.useIsCompleteWithdrawStep=ut;exports.useIsDepositBlocked=hf;exports.useIsDepositTradingPanelType=Ge;exports.useIsDhedgeVaultConnected=Nt;exports.useIsInsufficientBalance=Dt;exports.useIsPoolAddress=bd;exports.useIsTradingEnabled=Ya;exports.useIsWalletConnected=vd;exports.useManagerLogicAddress=Wa;exports.useNetwork=Se;exports.useOnSimulateTransaction=vo;exports.useOnTokenSelector=fo;exports.useOnTradingTypeChange=ns;exports.useOnTransactionError=go;exports.useOnTransactionEstimationError=yn;exports.useOnTransactionSuccess=bo;exports.usePoolComposition=dt;exports.usePoolCompositionWithFraction=li;exports.usePoolDynamic=oe;exports.usePoolFees=_n;exports.usePoolManagerDynamic=kt;exports.usePoolManagerLogicData=Ua;exports.usePoolManagerStatic=Pt;exports.usePoolStatic=Ot;exports.usePoolTokenPrice=ce;exports.useProjectedEarningsCore=Vi;exports.useRawAssetPrice=qa;exports.useReceiveTokenInput=L;exports.useReferralProgram=FC;exports.useSendTokenInput=N;exports.useSetPoolAddress=cd;exports.useSetTradingType=md;exports.useStaticCallQuery=nb;exports.useTokenAllowance=wn;exports.useTradingPanelActions=F;exports.useTradingPanelLogger=ze;exports.useTradingPanelModal=X;exports.useTradingPanelPoolAddress=Ao;exports.useTradingPanelPoolConfig=x;exports.useTradingPanelPoolConfigs=et;exports.useTradingPanelPoolFallbackData=He;exports.useTradingPanelSettings=K;exports.useTradingPanelState=Z;exports.useTradingPanelTransactions=re;exports.useTradingPanelType=we;exports.useTradingResultHandling=Mi;exports.useTradingSettleHandler=Ve;exports.useUpdateCustomDepositTokensPerChain=Td;exports.useUpdatePoolConfig=hd;exports.useUpdatePoolFallbackData=ho;exports.useUpdateReceiveTokenInput=pd;exports.useUpdateSendTokenInput=dd;exports.useUpdateTradingModal=yd;exports.useUpdateTradingSettings=ud;exports.useUserBalancesDynamic=ri;exports.useUserLimitOrder=Ft;exports.useUserTokenBalance=he;exports.useUserVaultBalance=mi;exports.useUserVaultsBalances=ui;exports.useVaultContractData=gf;exports.useVaultDepositTokens=kn;exports.useVaultSupplyCap=wi;exports.useVaultVestedPoints=di;exports.validateLoggerEventParams=Kc;
|
|
1
|
+
"use strict";var jl=Object.defineProperty;var Bl=(e,t,n)=>t in e?jl(e,t,{enumerable:!0,configurable:!0,writable:!0,value:n}):e[t]=n;var Re=(e,t,n)=>Bl(e,typeof t!="symbol"?t+"":t,n);Object.defineProperty(exports,Symbol.toStringTag,{value:"Module"});const r=require("react/jsx-runtime"),P=require("@headlessui/react"),C=require("wagmi"),u=require("react"),h=require("wagmi/chains"),At=require("date-fns"),D=require("viem"),b=require("bignumber.js"),$l=require("ts-custom-error"),Ze=require("@tanstack/react-query"),ne=require("@heroicons/react/24/outline"),A=require("classnames"),Fl=require("react-popper-tooltip"),Wl=require("wagmi/connectors"),Ne=require("@heroicons/react/24/solid"),Yn=require("@heroicons/react/16/solid"),Jt=require("@heroicons/react/20/solid"),M=()=>{const{address:e,status:t,connector:n,isConnected:a}=C.useAccount();return{account:a?e:void 0,status:t,connector:n,providerName:n?.name,isConnected:a}},I="0x0000000000000000000000000000000000000000",Fe=BigInt("0xffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff"),k=18,Ul="1000000000000000000",zl=59e3,Je=3e4,We=15e3,rr=5e3,or=400,ir=or*1.2,lr=At.formatDuration({hours:24}),cr={address:I,symbol:"",chainId:h.optimism.id,depositParams:{customTokens:[]},withdrawParams:{customTokens:[]},deprecated:!1},Hl="deposit",dr=1,dn=0,Gl=.5,pr=.02,Vl=.75,ql=[dn],ur="withdrawSafe",mr="initWithdrawal",Yl="unrollAndClaim",Kl="completeWithdrawal",yr=3e7,wr=1.25,me=1e4,hr=13e3,gr=3,pa=2e4,Ql=15e3,Xl={[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},Ye={[h.mainnet.id]:{nativeTokenSymbol:"ETH",wrappedNativeTokenName:"WETH",address:"0xc02aaa39b223fe8d0a0e5c4f27ead9083c756cc2",decimals:k},[h.polygon.id]:{nativeTokenSymbol:"POL",wrappedNativeTokenName:"WPOL",address:"0x0d500b1d8e8ef31e21c99d1db9a6444d3adf1270",decimals:k},[h.optimism.id]:{nativeTokenSymbol:"ETH",wrappedNativeTokenName:"WETH",address:"0x4200000000000000000000000000000000000006",decimals:k},[h.arbitrum.id]:{nativeTokenSymbol:"ETH",wrappedNativeTokenName:"WETH",address:"0x82af49447d8a07e3bd95bd0d56f35241523fbab1",decimals:k},[h.base.id]:{nativeTokenSymbol:"ETH",wrappedNativeTokenName:"WETH",address:"0x4200000000000000000000000000000000000006",decimals:k}},Yt={[h.mainnet.id]:299e5,[h.polygon.id]:299e5,[h.optimism.id]:299e5,[h.arbitrum.id]:299e5,[h.base.id]:299e5},Zl={[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"},Tr={USD:"$",ETH:"Ξ",BTC:"₿"},Jl={USD:2,ETH:4,BTC:6},ec=["USDC","USDT"],Q={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:"create_limit_sell_order",OPEN_LIMIT_SELL_VIEW:"open_limit_sell_view",LIMIT_ORDER_WITHDRAW:"limit_order_withdraw",LIMIT_ORDER_WITHDRAW_DELETE:"limit_order_withdraw_delete"},tc={approve:[Q.APPROVED_TOKEN],deposit:[Q.DEPOSIT],multi_withdraw:[Q.WITHDRAWAL,Q.MULTI_ASSET_WITHDRAW],single_withdraw:[Q.WITHDRAWAL,Q.SINGLE_ASSET_WITHDRAW],single_withdraw_and_claim:[Q.WITHDRAWAL,Q.SINGLE_ASSET_WITHDRAW_AND_CLAIM],claim:[Q.CLAIM],swap:[Q.SWAP],create_limit_sell_order:[Q.CREATE_LIMIT_SELL_ORDER],limit_order_withdraw:[Q.LIMIT_ORDER_WITHDRAW],delete_limit_order_withdraw:[Q.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 ke=(e=>(e.ETH="ETH",e.MAINNET="MAINNET",e.POLYGON="POLYGON",e.OE="OPTIMISM",e.ARBI="ARBITRUM",e.BASE="BASE",e))(ke||{});const ht=process.env.NEXT_PUBLIC_INFURA_API_KEY;h.arbitrum.id+"",`${ht}`,h.optimism.id+"",`${ht}`,h.polygon.id+"",`${ht}`,h.base.id+"",`${ht}`,h.mainnet.id+"",`${ht}`;const nc={[h.arbitrum.id]:{...h.arbitrum,name:"Arbitrum",iconPath:"/icons/arbitrum-network.svg",chainId:h.arbitrum.id,shortName:"ARB"},[h.optimism.id]:{...h.optimism,name:"Optimism",iconPath:"/icons/optimism-network.svg",chainId:h.optimism.id,shortName:"OP"},[h.polygon.id]:{...h.polygon,chainId:h.polygon.id,iconPath:"/icons/polygon-network.svg",shortName:"POLY"},[h.base.id]:{...h.base,chainId:h.base.id,iconPath:"/icons/base-network.svg",shortName:"BASE"},[h.mainnet.id]:{...h.mainnet,chainId:h.mainnet.id,iconPath:"/icons/ethereum-network.svg",shortName:"ETHEREUM"}};ke.ETH+"",h.mainnet.id,ke.MAINNET+"",h.mainnet.id,ke.POLYGON+"",h.polygon.id,ke.OE+"",h.optimism.id,ke.ARBI+"",h.arbitrum.id,ke.BASE+"",h.base.id;h.mainnet.id+"",h.optimism.id+"",h.polygon.id+"",h.arbitrum.id+"",h.base.id+"";const ua="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 ac="0x96D33bCF84DdE326014248E2896F79bbb9c13D6d",br="0xbDd84294bC8299861A2121F749A25EFEb7168a32",sc="0x87870Bca3F3fD6335C3F4ce8392D69350B4fA4E2",rc="0xffFb5fB14606EB3a548C113026355020dDF27535",oc="0x794a61358D6845594F94dc1DB02A252b5b4814aD",fr="0xA5679C4272A056Bb83f039961fae7D99C48529F5",vr="0x26a687e8244f1866E9Aa2D400c8b9957Aa8e6Ad4",ic="0x49Afe3abCf66CF09Fab86cb1139D8811C8afe56F",xr="0xf067575Eb60c7587C11e867907AA7284833704d1",lc="0x59525b9b23adc475ef91d98dae06b568ba574ce5",cc="0xa907504d7a4c415b4e6e1d0866d96afe8202f0e5",dc="0x1849324228d852a67eb7443e42d967e480ffe95d",pc="0xa238dd80c259a72e81d7e4664a9801593f98d1c5",Ar="0xFcBEc28c43E356693971a24bf3F2Fd7D965E2ebA",uc="0x07e144e336fcc3fe928a8a2a5714da64354c1aab",mc="0x5e61a079A178f0E5784107a4963baAe0c5a680c6",yc="0x794a61358D6845594F94dc1DB02A252b5b4814aD",Sr="0x2Ed1bd7f66e47113672f3870308b5E867C5bb743",Cr="0x3bFE2a472d2964Ea4070725b7Fb0A868b3f08b63",wc="0xfdc7b8bFe0DD3513Cc669bB8d601Cb83e2F69cB0",hc="0x8dFf5E27EA6b7AC08EbFdf9eB090F32ee9a30fcf",gc="0x794a61358D6845594F94dc1DB02A252b5b4814aD",Er="0x45b90480D6F643dE2f128db091A357C3c90399f2",Ir="0xB71410736d2C8F2DAf30dA9D332dA10534d2624d",_r="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 Kn=[{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"}],Tc=[{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"}],Ue=[{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"}],bc=[{type:"tuple[]",components:[{type:"address",name:"asset"},{type:"uint256",name:"amount"},{type:"tuple",name:"swapData",components:[{type:"bytes32",name:"routerKey"},{type:"bytes",name:"txData"}]}]}],fc=[{type:"tuple",components:[{type:"bytes",name:"encodedSrcData"},{type:"tuple",name:"dstData",components:[{type:"address",name:"dstAddress"},{type:"uint256",name:"dstAmount"}]},{type:"uint256",name:"slippage"}]}],_e=[{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"}],Dr=[{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"}],Kt=[{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"}],vc=[{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"}],fe=[...vc,{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"}],pn=[{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"}],Nr={[h.mainnet.id]:{factory:ac,easySwapperV2:br,aaveLendingPoolV3:sc},[h.polygon.id]:{factory:wc,aaveLendingPoolV2:hc,aaveLendingPoolV3:gc,easySwapperV2:Er,limitOrder:Ir},[h.optimism.id]:{factory:mc,rewardDistribution:uc,aaveLendingPoolV3:yc,easySwapperV2:Sr,limitOrder:Cr},[h.arbitrum.id]:{factory:rc,aaveLendingPoolV3:oc,easySwapperV2:fr,limitOrder:vr},[h.base.id]:{factory:ic,flatcoinPointsModule:lc,easySwapperV2:xr,aaveLendingPoolV3:pc,limitOrder:Ar}},Or={factory:Ue,aaveLendingPoolV2:Kn,aaveLendingPoolV3:Kn,rewardDistribution:Dr,poolManagerLogic:_e,erc20:D.erc20Abi,poolLogic:be,flatcoinPointsModule:Kt,easySwapperV2:fe,limitOrder:pn},Qn="Gas estimate error occurred",Pr="See console logs to report error details.",Xn="Missing simulation params",Lr="Simulation timeout",Rr="swap_data_deposit_error",kr="swap_data_withdraw_error",gt={title:"Low Slippage",hint:"Please increase slippage tolerance and try again."},Mr={"invalid liquidityMinted":gt,"high withdraw slippage":gt,"high deposit slippage":gt,"high swap slippage":gt,InsufficientAmountReceived:gt,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."},[Rr]:{title:"Swap Quote Fetching Error",hint:"Please select a different deposit option, refresh the swap quote, or choose another swap source in settings."},[kr]:{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."}},jr="Invalid limit order prices",Br={InvalidPrices:{title:jr}},xc=[...Object.keys(Mr),...Object.keys(Br)],F=18,ma={address:"0xff970a61a04b1ca14834a43f5de4533ebddb5cc8",symbol:"USDCe",decimals:6,value:""},le={address:"0xaf88d065e77c8cC2239327C5EDb3A432268e5831",symbol:"USDC",decimals:6,value:""},St={address:"0x82af49447d8a07e3bd95bd0d56f35241523fbab1",symbol:"WETH",decimals:F,value:""},je={address:"0x2f2a2543b76a4166549f7aab2e75bef0aefc5b0f",symbol:"WBTC",decimals:8,value:""},Ac={address:"0x6c84a8f1c29108F47a79964b5Fe888D4f4D0dE40",symbol:"tBTC",decimals:F,value:""},Sc={address:"0x5979D7b546E38E414F7E9822514be443A4800529",symbol:"wstETH",decimals:F,value:""},Cc={address:"0xfd086bc7cd5c481dcc9c85ebe478a1c0b69fcbb9",symbol:"USDT",decimals:6,value:""},Ec={address:"0x2bcC6D6CdBbDC0a4071e48bb3B969b06B3330c07",symbol:"SOL",decimals:9,value:""},Ic={address:"0xa9004a5421372e1d83fb1f85b0fc986c912f91f3",symbol:"WBNB",decimals:F,value:""},_c={address:"0xf97f4df75117a78c1a5a0dbb814af92458539fb4",symbol:"LINK",decimals:F,value:""},$r={address:"0x833589fcd6edb6e08f4c7c32d4f71b54bda02913",symbol:"USDC",decimals:6,value:""},Dc={address:"0xd9aaec86b65d86f6a7b5b1b0c42ffa531710b6ca",symbol:"USDbC",decimals:6,value:""},ya={address:"0x4200000000000000000000000000000000000006",symbol:"WETH",decimals:F,value:""},Nc={address:"0x2ae3f1ec7f1f5012cfeab0185bfc7aa3cf0dec22",symbol:"cbETH",decimals:F,value:""},Fr={address:"0xcbb7c0000ab88b473b1f5afd9ef808440eed33bf",symbol:"cbBTC",decimals:8,value:""},Qt={address:"0xb6fe221fe9eef5aba221c348ba20a1bf5e73624c",symbol:"rETH",decimals:F,value:""},Oc={address:"0x236aa50979D5f3De3Bd1Eeb40E81137F22ab794b",symbol:"tBTC",decimals:F,value:""},Pc={address:"0xc1cba3fcea344f92d9239c08c0568f6f2f0ee452",symbol:"wstETH",decimals:F,value:""},wa={address:"0x7F5c764cBc14f9669B88837ca1490cCa17c31607",symbol:"USDCe",decimals:6,value:""},Wr={address:"0x0b2C639c533813f4Aa9D7837CAf62653d097Ff85",symbol:"USDC",decimals:6,value:""},Ur={address:"0x94b008aa00579c1307b0ef2c499ad98a8ce58e58",symbol:"USDT",decimals:6,value:""},ha={address:"0x4200000000000000000000000000000000000006",symbol:"WETH",decimals:F,value:""},Lc={address:"0x8c6f28f2F1A3C87F0f938b96d27520d9751ec8d9",symbol:"sUSD",decimals:F,value:""},zr={address:"0xda10009cbd5d07dd0cecc66161fc93d7c9000da1",symbol:"DAI",decimals:F,value:""},Ke={address:"0x68f180fcce6836688e9084f035309e29bf0a2095",symbol:"WBTC",decimals:8,value:""},Rc={address:"0xe405de8f52ba7559f9df3c368500b6e6ae6cee49",symbol:"sETH",decimals:F,value:""},kc={address:"0x350a791bfc2c21f9ed5d10980dad2e2638ffa7f6",symbol:"LINK",decimals:F,value:""},Mc={address:"0x6c84a8f1c29108F47a79964b5Fe888D4f4D0dE40",symbol:"tBTC",decimals:F,value:""},jc={address:"0x1F32b1c2345538c0c6f582fCB022739c4A194Ebb",symbol:"wstETH",decimals:F,value:""},ga={address:"0x7ceB23fD6bC0adD59E62ac25578270cFf1b9f619",symbol:"WETH",decimals:F,value:""},Ta={address:"0x2791Bca1f2de4661ED88A30C99A7a9449Aa84174",symbol:"USDCe",decimals:6,value:""},Hr={address:"0x3c499c542cEF5E3811e1192ce70d8cC03d5c3359",symbol:"USDC",decimals:6,value:""},Bc={address:"0x553d3d295e0f695b9228246232edf400ed3560b5",symbol:"PAXG",decimals:F,value:""},ba={address:"0x1BFD67037B42Cf73acF2047067bd4F2C47D9BfD6",symbol:"WBTC",decimals:8,value:""},Gr={address:"0x0d500B1d8E8eF31E21C99d1Db9A6444d3ADf1270",symbol:"WPOL",decimals:F,value:""},Vr={address:"0xc2132d05d31c914a87c6611c10748aeb04b58e8f",symbol:"USDT",decimals:6,value:""},qr={address:"0x8f3cf7ad23cd3cadbd9735aff958023239c6a063",symbol:"DAI",decimals:F,value:""},$c={address:"0x236aa50979d5f3de3bd1eeb40e81137f22ab794b",symbol:"tBTC",decimals:F,value:""},fa={address:"0xc02aaa39b223fe8d0a0e5c4f27ead9083c756cc2",symbol:"WETH",decimals:F,value:""},Yr={address:"0xa0b86991c6218b36c1d19d4a2e9eb0ce3606eb48",symbol:"USDC",decimals:6,value:""},va={address:"0x2260fac5e5542a773aa44fbcfedf7c193bc2c599",symbol:"WBTC",decimals:8,value:""},Kr={address:"0xdac17f958d2ee523a2206206994597c13d831ec7",symbol:"USDT",decimals:6,value:""},en={address:ua,symbol:"all",decimals:F,value:""},xa={[ma.address.toLowerCase()]:"USDCe",[wa.address.toLowerCase()]:"USDCe",[Ta.address.toLowerCase()]:"USDCe"},Qr={[h.mainnet.id]:fa,[h.optimism.id]:ha,[h.base.id]:ya,[h.polygon.id]:ga,[h.arbitrum.id]:St},Xr={[h.optimism.id]:Ke,[h.base.id]:Fr,[h.polygon.id]:ba,[h.arbitrum.id]:je,[h.mainnet.id]:va},Fc={[h.optimism.id]:{WETH:ha,USDC:Wr,WBTC:Ke,USDCe:wa,USDT:Ur,DAI:zr},[h.polygon.id]:{WMATIC:Gr,WETH:ga,USDC:Hr,WBTC:ba,USDCe:Ta,USDT:Vr,DAI:qr},[h.arbitrum.id]:{WETH:St,USDC:le,WBTC:je,USDCe:ma},[h.base.id]:{WETH:ya,USDC:$r},[h.mainnet.id]:{WETH:fa,USDC:Yr,WBTC:va,USDT:Kr}},Wc="https://hermes.pyth.network",Uc="https://flat.money/flatcoin",zc="https://v1.flat.money/flatcoin",Xt={RETH_BASE:"0xdb0cd65dcc7fe07003ce1201f91e1f966fa95768",WBTC_OPTIMISM:"0x6d857e9d24a7566bb72a3fb0847a3e0e4e1c2879",WBTC_ARBITRUM:"0xb1353d51991e79fefd4bfdba2a03e9f0232814a6"},Hc=Object.values(Xt),Gc={[Xt.RETH_BASE]:{symbol:Qt.symbol,decimals:Qt.decimals,address:Qt.address},[Xt.WBTC_OPTIMISM]:{symbol:Ke.symbol,decimals:Ke.decimals,address:Ke.address},[Xt.WBTC_ARBITRUM]:{symbol:je.symbol,decimals:je.decimals,address:je.address}},Zr="0xb95fb324b8a2faf8ec4f76e3df46c718402736e2",Jr=[Zr,"0x357cb23571ef7a3d6189b7facfc361ea71f7cab5"],Ee={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"},se={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"},eo=Object.values(se),Vc={[se.SOL_ARBITRUM]:le,[se.BTC_ARBITRUM]:je,[se.WETH_WETH_ARBITRUM]:St,[se.WETH_USDC_ARBITRUM]:St,[se.SUI_ARBITRUM]:le,[se.DOGE_ARBITRUM]:le,[se.XRP_ARBITRUM]:le,[se.CRV_ARBITRUM]:le,[se.HYPE_ARBITRUM]:le,[se.BNB_ARBITRUM]:le,[se.LINK_ARBITRUM]:le,[se.PUMP_ARBITRUM]:le,[se.BNB_WBTC_USDC_ARBITRUM]:le},qc={"0x9a916e55f5b67226734cd7b465d51bce1d11a89a":le},xt={IS_BATCH_TRANSACTIONS_ENABLED:"isBatchTransactionsEnabled",REFERRER:"referrer",REF_POOL:"ref_pool"},Yc={AUTO_COMPLETE_WITHDRAW:"auto-complete-withdraw"},z=(e,t)=>e?.toLowerCase()===t?.toLowerCase(),J=e=>z(e,ua),U=(e,t)=>Nr[t]?.[e]??I,to=e=>Or[e],no=e=>e&&`${e.substring(0,6)}...${e.substring(e.length-4,e.length)}`,Zn=({address:e,chainId:t})=>{const n=U("aaveLendingPoolV3",t);return z(e,n)},ao=({sourceAddress:e,amount:t})=>`${e}_${t}`,so=(e,t)=>{const n=e.slice(0,t),a=e.slice(t);return{firstPart:n,secondPart:a}},De=(e,t)=>e/t*100,Ct=e=>e<1?4:e<10?3:2,tn=(e,t=k)=>new b(e.toString()).shiftedBy(t).toFixed(0),Jn=(e,t,n,a)=>new b(t).dividedBy(n).multipliedBy(e).shiftedBy(-(a||k)).toNumber(),ro=e=>BigInt(new b(e||"0").shiftedBy(k).toFixed(0,b.ROUND_DOWN)),Aa=e=>{const t=new b(.01),n=new b(e),a=!n.isZero()&&n.lt(t)?t:n;return BigInt(a.multipliedBy(100).toFixed(0))},cs=({vaultAddress:e,swapData:t,sendTokenAddress:n,sendTokenAmount:a,vaultDepositTokenAddress:s,minVaultTokensReceivedAmount:o,routerKey:i="ONE_INCH",swapDestinationAmount:l,swapSlippage:c})=>{const d=new b(l).multipliedBy(1-c/100).toFixed(0),p=[D.stringToHex(i,{size:32}),t];return[e,[[n,a,p],[s,d]],o]},Kc=({receiveAssetAddress:e,assets:t,swapData:n})=>{const a={srcData:[],destAmount:new b("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"]]},Qc=({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?.[ao({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(bc,[l]),d=D.encodeAbiParameters(fc,[{encodedSrcData:c,dstData:{dstAddress:i.asset,dstAmount:i.amount},slippage:a}]);return{supportedAsset:e,withdrawData:d,slippageTolerance:a}},un=(e,t)=>Ye[t]?.nativeTokenSymbol===e,oo=({nativeTokenBalance:e,tokenDecimals:t,gasPrice:n})=>{const a=new b(n).multipliedBy(yr).shiftedBy(-t),s=new b(e).minus(a);return s.gt("0")?s:new b("0")},io=e=>ec.includes(e),Xc=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},Zc=(e,t=150)=>e.length>t?e.substring(0,t):e,ds=(e,t=xc)=>{const n=e.toLowerCase();return t.sort((a,s)=>s.length-a.length).find(a=>n.includes(a.toLowerCase()))},ps=e=>Mr[e]??Br[e],lo=({errorMessage:e,abiErrors:t})=>{if(!e||e.includes("User rejected"))return null;const n=t.find(o=>e.includes(o));if(n&&ds(n))return ps(n);const a=ds(e);if(a)return ps(a);const[s]=e.split(n?".":"Contract").map(o=>o.trim());return{title:"Transaction failed",hint:`${Zc(s??"")} ${n?`: ${n}`:""}`}},Jc=e=>typeof e=="bigint"&&e!==BigInt(0),$e=(e,t=F)=>new b(e).shiftedBy(-t).toNumber(),co=e=>!isNaN(parseFloat(e))&&!isNaN(e),ee=({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?$e(e):Number(e)),ea=e=>co(e)?new b(e).toFixed():"",us=["₀","₁","₂","₃","₄","₅","₆","₇","₈","₉"],Oe=({value:e,decimals:t})=>{const n=new b(e);if(n.isGreaterThan(1)||n.isZero())return ea(n.toFixed(t));const s=(/e/i.test(e.toString())?parseFloat(e.toString()).toFixed(F):e.toString()).match(/^0\.(0+)(\d+)$/);if(s){const[,o,i]=s;if(o.length>=t&&o.length<us.length)return`0.0${us[o.length]}${i.slice(0,3)}`}return ea(n.toFixed(t))},It=(e,t=0)=>`${e.toLocaleString("en-US",{maximumFractionDigits:t})}%`,po=e=>e.toString().replace(/\B(?=(\d{3})+(?!\d))/g,","),vt=(e,t,n=0)=>{const a=De(+e,t);return It(a,n)},Zt=({currency:e,value:t})=>e==="USD"?ee({value:t}):`${Tr[e]} ${Oe({value:t,decimals:Jl[e]})}`,ed=(e,t)=>new b(new b(e).toFixed(t,b.ROUND_DOWN)).toString(),td=(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)}`},uo=({balance:e,symbol:t,precision:n,truncateSymbol:a})=>`${ed(e,n)} ${td(t)}`,mn=typeof window<"u",Sa=e=>z(cc,e)||z(dc,e),mo=e=>Hc.some(t=>z(t,e)),yo=e=>Gc[e.toLowerCase()]??{symbol:"",decimals:18,address:I},nd=e=>z(e,Zr)?zc:Uc,Ca=e=>`eth_${e}`,ad=({action:e,log:t,symbol:n,vaultAddress:a,chainId:s})=>{const o={[Te.SYMBOL.NAME]:n,[Te.CHAIN_ID.NAME]:s,[Te.ADDRESS.NAME]:Ca(a)};tc[e].forEach(i=>{t?.(i,o)})},sd=e=>eo.some(t=>z(t,e)),rd=e=>Vc[e.toLowerCase()]??{symbol:"",decimals:18,address:I},od=e=>qc[e.toLowerCase()];function id(){if(mn)try{const e=localStorage.getItem(xt.IS_BATCH_TRANSACTIONS_ENABLED);return e?JSON.parse(e):void 0}catch{return}}function ld(e){if(mn)try{localStorage.setItem(xt.IS_BATCH_TRANSACTIONS_ENABLED,JSON.stringify(e))}catch(t){console.error("[core-kit]: Failed to persist batch transactions setting",t)}}const cd=e=>{const t=e.find(({swapQuotes:n})=>n);return t?.swapQuotes?Object.values(t.swapQuotes)[0]?.map(({routerKey:n})=>n)??[]:[]},dd=(e,t,n)=>e.map(({asset:a,swapParams:s,swapQuotes:o})=>!s||!o?{supportedAsset:a,withdrawData:"",slippageTolerance:n}:Qc({assetAddress:a,swapQuotes:o,swapParams:s,slippageToleranceForContractTransaction:n,routerKey:t})),pd=async(e,t,n,a,s)=>{for(const o of e){const i=dd(t,o,n),{error:l}=await a(...s,i);if(!l)return i}return null},ms=(e,t)=>(e??[]).map(n=>({supportedAsset:n,withdrawData:"",slippageTolerance:t})),ud=async(e,t,{fetchAaveSwapParams:n,fetchAaveSwapQuotes:a,withdrawAmountD18:s,slippage:o})=>Promise.all((e??[]).map(async i=>{if(!z(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 ys={address:I,symbol:"",decimals:k,value:""},wo=e=>{const t=e?.poolAddress??I,n={address:t,symbol:e?.poolConfigMap?.[t]?.symbol??"",decimals:k,value:""},a=e?.type??"deposit",s=a==="deposit"?ys:n,o=a==="deposit"?n:ys;return{poolAddress:t,poolConfigMap:{...e?.poolConfigMap},settings:{slippage:"auto",isInfiniteAllowance:!1,isMultiAssetWithdrawalEnabled:!0,isMaxSlippageLoading:!1,availableAggregators:[],...e?.settings,isBatchTransactionsEnabled:id()??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},transactions:e?.transactions??[],poolFallbackData:{address:I,...e?.poolFallbackData},customDepositTokensPerChain:e?.customDepositTokensPerChain,defaultChainId:e?.defaultChainId}},ho=u.createContext({...wo({poolAddress:I,poolConfigMap:{}})}),go=u.createContext({setPoolAddress:Z,setTradingType:Z,updateSendTokenInput:Z,updateReceiveTokenInput:Z,updateTradingSettings:Z,updateTradingModal: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}),md=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_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&&ad({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}},yd=({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:g,onTradingSettleError:T,getSwapQuotes:f}})=>{const[E,_]=u.useReducer(md(w),wo(t)),O=u.useCallback(j=>{_({type:"SET_POOL_ADDRESS",payload:j}),n?.(j)},[n]),Y=u.useCallback(j=>{_({type:"UPDATE_SEND_TOKEN_INPUT",payload:j}),a?.(j)},[a]),ae=u.useCallback(j=>{_({type:"UPDATE_RECEIVE_TOKEN_INPUT",payload:j}),s?.(j)},[s]),xe=u.useCallback(j=>{_({type:"UPDATE_TRADING_SETTINGS",payload:j}),o?.(j)},[o]),Wt=u.useCallback(j=>{_({type:"SET_TRADING_TYPE",payload:j}),i?.(j)},[i]),Ut=u.useCallback(j=>{_({type:"UPDATE_TRADING_MODAL",payload:j}),l?.(j)},[l]),zt=u.useCallback(j=>{_({type:"UPDATE_TRADING_TRANSACTIONS",payload:j}),c?.(j)},[c]),wt=u.useCallback(j=>{_({type:"UPDATE_POOL_FALLBACK_DATA",payload:j})},[]),os=u.useCallback(j=>{_({type:"UPDATE_CUSTOM_DEPOSIT_TOKENS_PER_CHAIN",payload:j})},[]),is=u.useCallback(j=>{_({type:"UPDATE_POOL_CONFIG",payload:j})},[]),ls=u.useCallback(j=>{_({type:"ADD_POOL_CONFIG",payload:j})},[]),Ml=u.useMemo(()=>({setPoolAddress:O,setTradingType:Wt,updateTradingSettings:xe,updateSendTokenInput:Y,updateReceiveTokenInput:ae,updateTradingModal:Ut,updateTransactions:zt,updatePoolFallbackData:wt,updateCustomDepositTokensPerChain:os,onTransactionError:d,onTransactionSuccess:p,onTransactionEstimationError:m,onTokenSelector:y,onLog:w,onSimulateTransaction:g,onTradingSettleError:T,getSwapQuotes:f,updatePoolConfig:is,addPoolConfig:ls}),[O,Wt,xe,Y,ae,Ut,zt,wt,os,d,p,m,y,w,g,T,f,is,ls]);return r.jsx(go.Provider,{value:Ml,children:r.jsx(ho.Provider,{value:E,children:e})})},te=()=>u.useContext(ho),W=()=>u.useContext(go),wd=()=>W().setPoolAddress,hd=()=>W().updateSendTokenInput,gd=()=>W().updateReceiveTokenInput,Td=()=>W().updateTradingSettings,bd=()=>W().setTradingType,fd=()=>W().updateTradingModal,To=()=>W().updatePoolFallbackData,bo=()=>W().onTransactionError,fo=()=>W().onTradingSettleError,vo=()=>W().onTransactionSuccess,yn=()=>W().onTransactionEstimationError,xo=()=>W().onTokenSelector,ze=()=>W().onLog,Ao=()=>W().onSimulateTransaction,Ea=()=>{const e=W().getSwapQuotes,{settings:{selectedAggregators:t}}=te();return u.useCallback(({signal:n,variables:a})=>e({signal:n,variables:{...a,...!!t.length&&{aggregators:t}}}),[e,t])},vd=()=>W().updatePoolConfig,xd=()=>W().addPoolConfig,Ad=()=>W().updateCustomDepositTokensPerChain,So=()=>[te().poolAddress,W().setPoolAddress],x=()=>{const{poolAddress:e,poolConfigMap:t}=te();return t[e]??cr},et=()=>{const{poolConfigMap:e}=te();return u.useMemo(()=>Object.values(e),[e])},Sd=e=>{const t=et();return u.useMemo(()=>t.some(n=>n.address===e),[t,e])},He=()=>{const{poolFallbackData:e,poolAddress:t}=te(),n=To();return[e.address===t?e:{address:t},n]},Co=()=>te().input,N=()=>[Co().sendToken,W().updateSendTokenInput],L=()=>[Co().receiveToken,W().updateReceiveTokenInput],K=()=>[te().settings,W().updateTradingSettings],Eo=()=>[te().customDepositTokensPerChain,W().updateCustomDepositTokensPerChain],X=()=>[te().modal,W().updateTradingModal],ye=()=>[te().type,W().setTradingType],Ge=()=>te().type==="deposit",re=()=>[te().transactions,W().updateTransactions],Cd=()=>te().defaultChainId,Rn=(e,t)=>t.some(({id:n})=>n===e),Ae=()=>{const{chain:e}=C.useAccount(),{chains:t}=C.useConfig(),{switchChain:n,switchChainAsync:a}=C.useSwitchChain(),s=Cd(),o=e?.id,i=Rn(o,t),l=s&&Rn(s,t)?s:t[0].id;return{chain:e,isSupported:i,switchNetwork:n,switchNetworkAsync:a,chainId:i?o:void 0,supportedChainId:Rn(o,t)?o:l,chains:t}},wn=({tokenAddress:e,ownerAddress:t,spenderAddress:n,chainId:a,skip:s})=>C.useReadContract({address:e,abi:D.erc20Abi,functionName:"allowance",args:[t,n],chainId:a,query:{enabled:!s,refetchInterval:Je}}),Ed=()=>{const{account:e}=M(),[t,n]=u.useState(!1);return u.useEffect(()=>{n(!!e)},[e]),t},Ia=e=>C.useBalance({...e,query:{...e?.query,staleTime:Je}});var Ht=typeof globalThis<"u"?globalThis:typeof window<"u"?window:typeof global<"u"?global:typeof self<"u"?self:{};function hn(e){return e&&e.__esModule&&Object.prototype.hasOwnProperty.call(e,"default")?e.default:e}function Id(){this.__data__=[],this.size=0}var _d=Id;function Dd(e,t){return e===t||e!==e&&t!==t}var _a=Dd,Nd=_a;function Od(e,t){for(var n=e.length;n--;)if(Nd(e[n][0],t))return n;return-1}var gn=Od,Pd=gn,Ld=Array.prototype,Rd=Ld.splice;function kd(e){var t=this.__data__,n=Pd(t,e);if(n<0)return!1;var a=t.length-1;return n==a?t.pop():Rd.call(t,n,1),--this.size,!0}var Md=kd,jd=gn;function Bd(e){var t=this.__data__,n=jd(t,e);return n<0?void 0:t[n][1]}var $d=Bd,Fd=gn;function Wd(e){return Fd(this.__data__,e)>-1}var Ud=Wd,zd=gn;function Hd(e,t){var n=this.__data__,a=zd(n,e);return a<0?(++this.size,n.push([e,t])):n[a][1]=t,this}var Gd=Hd,Vd=_d,qd=Md,Yd=$d,Kd=Ud,Qd=Gd;function tt(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])}}tt.prototype.clear=Vd;tt.prototype.delete=qd;tt.prototype.get=Yd;tt.prototype.has=Kd;tt.prototype.set=Qd;var Tn=tt,Xd=Tn;function Zd(){this.__data__=new Xd,this.size=0}var Jd=Zd;function ep(e){var t=this.__data__,n=t.delete(e);return this.size=t.size,n}var tp=ep;function np(e){return this.__data__.get(e)}var ap=np;function sp(e){return this.__data__.has(e)}var rp=sp,op=typeof Ht=="object"&&Ht&&Ht.Object===Object&&Ht,Io=op,ip=Io,lp=typeof self=="object"&&self&&self.Object===Object&&self,cp=ip||lp||Function("return this")(),Se=cp,dp=Se,pp=dp.Symbol,bn=pp,ws=bn,_o=Object.prototype,up=_o.hasOwnProperty,mp=_o.toString,Tt=ws?ws.toStringTag:void 0;function yp(e){var t=up.call(e,Tt),n=e[Tt];try{e[Tt]=void 0;var a=!0}catch{}var s=mp.call(e);return a&&(t?e[Tt]=n:delete e[Tt]),s}var wp=yp,hp=Object.prototype,gp=hp.toString;function Tp(e){return gp.call(e)}var bp=Tp,hs=bn,fp=wp,vp=bp,xp="[object Null]",Ap="[object Undefined]",gs=hs?hs.toStringTag:void 0;function Sp(e){return e==null?e===void 0?Ap:xp:gs&&gs in Object(e)?fp(e):vp(e)}var nt=Sp;function Cp(e){var t=typeof e;return e!=null&&(t=="object"||t=="function")}var _t=Cp,Ep=nt,Ip=_t,_p="[object AsyncFunction]",Dp="[object Function]",Np="[object GeneratorFunction]",Op="[object Proxy]";function Pp(e){if(!Ip(e))return!1;var t=Ep(e);return t==Dp||t==Np||t==_p||t==Op}var Do=Pp,Lp=Se,Rp=Lp["__core-js_shared__"],kp=Rp,kn=kp,Ts=function(){var e=/[^.]+$/.exec(kn&&kn.keys&&kn.keys.IE_PROTO||"");return e?"Symbol(src)_1."+e:""}();function Mp(e){return!!Ts&&Ts in e}var jp=Mp,Bp=Function.prototype,$p=Bp.toString;function Fp(e){if(e!=null){try{return $p.call(e)}catch{}try{return e+""}catch{}}return""}var No=Fp,Wp=Do,Up=jp,zp=_t,Hp=No,Gp=/[\\^$.*+?()[\]{}|]/g,Vp=/^\[object .+?Constructor\]$/,qp=Function.prototype,Yp=Object.prototype,Kp=qp.toString,Qp=Yp.hasOwnProperty,Xp=RegExp("^"+Kp.call(Qp).replace(Gp,"\\$&").replace(/hasOwnProperty|(function).*?(?=\\\()| for .+?(?=\\\])/g,"$1.*?")+"$");function Zp(e){if(!zp(e)||Up(e))return!1;var t=Wp(e)?Xp:Vp;return t.test(Hp(e))}var Jp=Zp;function eu(e,t){return e?.[t]}var tu=eu,nu=Jp,au=tu;function su(e,t){var n=au(e,t);return nu(n)?n:void 0}var at=su,ru=at,ou=Se,iu=ru(ou,"Map"),Da=iu,lu=at,cu=lu(Object,"create"),fn=cu,bs=fn;function du(){this.__data__=bs?bs(null):{},this.size=0}var pu=du;function uu(e){var t=this.has(e)&&delete this.__data__[e];return this.size-=t?1:0,t}var mu=uu,yu=fn,wu="__lodash_hash_undefined__",hu=Object.prototype,gu=hu.hasOwnProperty;function Tu(e){var t=this.__data__;if(yu){var n=t[e];return n===wu?void 0:n}return gu.call(t,e)?t[e]:void 0}var bu=Tu,fu=fn,vu=Object.prototype,xu=vu.hasOwnProperty;function Au(e){var t=this.__data__;return fu?t[e]!==void 0:xu.call(t,e)}var Su=Au,Cu=fn,Eu="__lodash_hash_undefined__";function Iu(e,t){var n=this.__data__;return this.size+=this.has(e)?0:1,n[e]=Cu&&t===void 0?Eu:t,this}var _u=Iu,Du=pu,Nu=mu,Ou=bu,Pu=Su,Lu=_u;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=Du;st.prototype.delete=Nu;st.prototype.get=Ou;st.prototype.has=Pu;st.prototype.set=Lu;var Ru=st,fs=Ru,ku=Tn,Mu=Da;function ju(){this.size=0,this.__data__={hash:new fs,map:new(Mu||ku),string:new fs}}var Bu=ju;function $u(e){var t=typeof e;return t=="string"||t=="number"||t=="symbol"||t=="boolean"?e!=="__proto__":e===null}var Fu=$u,Wu=Fu;function Uu(e,t){var n=e.__data__;return Wu(t)?n[typeof t=="string"?"string":"hash"]:n.map}var vn=Uu,zu=vn;function Hu(e){var t=zu(this,e).delete(e);return this.size-=t?1:0,t}var Gu=Hu,Vu=vn;function qu(e){return Vu(this,e).get(e)}var Yu=qu,Ku=vn;function Qu(e){return Ku(this,e).has(e)}var Xu=Qu,Zu=vn;function Ju(e,t){var n=Zu(this,e),a=n.size;return n.set(e,t),this.size+=n.size==a?0:1,this}var em=Ju,tm=Bu,nm=Gu,am=Yu,sm=Xu,rm=em;function rt(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])}}rt.prototype.clear=tm;rt.prototype.delete=nm;rt.prototype.get=am;rt.prototype.has=sm;rt.prototype.set=rm;var Na=rt,om=Tn,im=Da,lm=Na,cm=200;function dm(e,t){var n=this.__data__;if(n instanceof om){var a=n.__data__;if(!im||a.length<cm-1)return a.push([e,t]),this.size=++n.size,this;n=this.__data__=new lm(a)}return n.set(e,t),this.size=n.size,this}var pm=dm,um=Tn,mm=Jd,ym=tp,wm=ap,hm=rp,gm=pm;function ot(e){var t=this.__data__=new um(e);this.size=t.size}ot.prototype.clear=mm;ot.prototype.delete=ym;ot.prototype.get=wm;ot.prototype.has=hm;ot.prototype.set=gm;var Oo=ot,Tm="__lodash_hash_undefined__";function bm(e){return this.__data__.set(e,Tm),this}var fm=bm;function vm(e){return this.__data__.has(e)}var xm=vm,Am=Na,Sm=fm,Cm=xm;function nn(e){var t=-1,n=e==null?0:e.length;for(this.__data__=new Am;++t<n;)this.add(e[t])}nn.prototype.add=nn.prototype.push=Sm;nn.prototype.has=Cm;var Po=nn;function Em(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 Im=Em;function _m(e,t){return e.has(t)}var Lo=_m,Dm=Po,Nm=Im,Om=Lo,Pm=1,Lm=2;function Rm(e,t,n,a,s,o){var i=n&Pm,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&Lm?new Dm:void 0;for(o.set(e,t),o.set(t,e);++m<l;){var g=e[m],T=t[m];if(a)var f=i?a(T,g,m,t,e,o):a(g,T,m,e,t,o);if(f!==void 0){if(f)continue;y=!1;break}if(w){if(!Nm(t,function(E,_){if(!Om(w,_)&&(g===E||s(g,E,n,a,o)))return w.push(_)})){y=!1;break}}else if(!(g===T||s(g,T,n,a,o))){y=!1;break}}return o.delete(e),o.delete(t),y}var Ro=Rm,km=Se,Mm=km.Uint8Array,jm=Mm;function Bm(e){var t=-1,n=Array(e.size);return e.forEach(function(a,s){n[++t]=[s,a]}),n}var $m=Bm;function Fm(e){var t=-1,n=Array(e.size);return e.forEach(function(a){n[++t]=a}),n}var Oa=Fm,vs=bn,xs=jm,Wm=_a,Um=Ro,zm=$m,Hm=Oa,Gm=1,Vm=2,qm="[object Boolean]",Ym="[object Date]",Km="[object Error]",Qm="[object Map]",Xm="[object Number]",Zm="[object RegExp]",Jm="[object Set]",ey="[object String]",ty="[object Symbol]",ny="[object ArrayBuffer]",ay="[object DataView]",As=vs?vs.prototype:void 0,Mn=As?As.valueOf:void 0;function sy(e,t,n,a,s,o,i){switch(n){case ay:if(e.byteLength!=t.byteLength||e.byteOffset!=t.byteOffset)return!1;e=e.buffer,t=t.buffer;case ny:return!(e.byteLength!=t.byteLength||!o(new xs(e),new xs(t)));case qm:case Ym:case Xm:return Wm(+e,+t);case Km:return e.name==t.name&&e.message==t.message;case Zm:case ey:return e==t+"";case Qm:var l=zm;case Jm:var c=a&Gm;if(l||(l=Hm),e.size!=t.size&&!c)return!1;var d=i.get(e);if(d)return d==t;a|=Vm,i.set(e,t);var p=Um(l(e),l(t),a,s,o,i);return i.delete(e),p;case ty:if(Mn)return Mn.call(e)==Mn.call(t)}return!1}var ry=sy;function oy(e,t){for(var n=-1,a=t.length,s=e.length;++n<a;)e[s+n]=t[n];return e}var iy=oy,ly=Array.isArray,Pe=ly,cy=iy,dy=Pe;function py(e,t,n){var a=t(e);return dy(e)?a:cy(a,n(e))}var uy=py;function my(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 yy=my;function wy(){return[]}var hy=wy,gy=yy,Ty=hy,by=Object.prototype,fy=by.propertyIsEnumerable,Ss=Object.getOwnPropertySymbols,vy=Ss?function(e){return e==null?[]:(e=Object(e),gy(Ss(e),function(t){return fy.call(e,t)}))}:Ty,xy=vy;function Ay(e,t){for(var n=-1,a=Array(e);++n<e;)a[n]=t(n);return a}var Sy=Ay;function Cy(e){return e!=null&&typeof e=="object"}var it=Cy,Ey=nt,Iy=it,_y="[object Arguments]";function Dy(e){return Iy(e)&&Ey(e)==_y}var Ny=Dy,Cs=Ny,Oy=it,ko=Object.prototype,Py=ko.hasOwnProperty,Ly=ko.propertyIsEnumerable,Ry=Cs(function(){return arguments}())?Cs:function(e){return Oy(e)&&Py.call(e,"callee")&&!Ly.call(e,"callee")},Mo=Ry,an={exports:{}};function ky(){return!1}var My=ky;an.exports;(function(e,t){var n=Se,a=My,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})(an,an.exports);var jo=an.exports,jy=9007199254740991,By=/^(?:0|[1-9]\d*)$/;function $y(e,t){var n=typeof e;return t=t??jy,!!t&&(n=="number"||n!="symbol"&&By.test(e))&&e>-1&&e%1==0&&e<t}var Pa=$y,Fy=9007199254740991;function Wy(e){return typeof e=="number"&&e>-1&&e%1==0&&e<=Fy}var La=Wy,Uy=nt,zy=La,Hy=it,Gy="[object Arguments]",Vy="[object Array]",qy="[object Boolean]",Yy="[object Date]",Ky="[object Error]",Qy="[object Function]",Xy="[object Map]",Zy="[object Number]",Jy="[object Object]",ew="[object RegExp]",tw="[object Set]",nw="[object String]",aw="[object WeakMap]",sw="[object ArrayBuffer]",rw="[object DataView]",ow="[object Float32Array]",iw="[object Float64Array]",lw="[object Int8Array]",cw="[object Int16Array]",dw="[object Int32Array]",pw="[object Uint8Array]",uw="[object Uint8ClampedArray]",mw="[object Uint16Array]",yw="[object Uint32Array]",G={};G[ow]=G[iw]=G[lw]=G[cw]=G[dw]=G[pw]=G[uw]=G[mw]=G[yw]=!0;G[Gy]=G[Vy]=G[sw]=G[qy]=G[rw]=G[Yy]=G[Ky]=G[Qy]=G[Xy]=G[Zy]=G[Jy]=G[ew]=G[tw]=G[nw]=G[aw]=!1;function ww(e){return Hy(e)&&zy(e.length)&&!!G[Uy(e)]}var hw=ww;function gw(e){return function(t){return e(t)}}var Tw=gw,sn={exports:{}};sn.exports;(function(e,t){var n=Io,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})(sn,sn.exports);var bw=sn.exports,fw=hw,vw=Tw,Es=bw,Is=Es&&Es.isTypedArray,xw=Is?vw(Is):fw,Bo=xw,Aw=Sy,Sw=Mo,Cw=Pe,Ew=jo,Iw=Pa,_w=Bo,Dw=Object.prototype,Nw=Dw.hasOwnProperty;function Ow(e,t){var n=Cw(e),a=!n&&Sw(e),s=!n&&!a&&Ew(e),o=!n&&!a&&!s&&_w(e),i=n||a||s||o,l=i?Aw(e.length,String):[],c=l.length;for(var d in e)(t||Nw.call(e,d))&&!(i&&(d=="length"||s&&(d=="offset"||d=="parent")||o&&(d=="buffer"||d=="byteLength"||d=="byteOffset")||Iw(d,c)))&&l.push(d);return l}var Pw=Ow,Lw=Object.prototype;function Rw(e){var t=e&&e.constructor,n=typeof t=="function"&&t.prototype||Lw;return e===n}var kw=Rw;function Mw(e,t){return function(n){return e(t(n))}}var jw=Mw,Bw=jw,$w=Bw(Object.keys,Object),Fw=$w,Ww=kw,Uw=Fw,zw=Object.prototype,Hw=zw.hasOwnProperty;function Gw(e){if(!Ww(e))return Uw(e);var t=[];for(var n in Object(e))Hw.call(e,n)&&n!="constructor"&&t.push(n);return t}var Vw=Gw,qw=Do,Yw=La;function Kw(e){return e!=null&&Yw(e.length)&&!qw(e)}var $o=Kw,Qw=Pw,Xw=Vw,Zw=$o;function Jw(e){return Zw(e)?Qw(e):Xw(e)}var Ra=Jw,eh=uy,th=xy,nh=Ra;function ah(e){return eh(e,nh,th)}var sh=ah,_s=sh,rh=1,oh=Object.prototype,ih=oh.hasOwnProperty;function lh(e,t,n,a,s,o){var i=n&rh,l=_s(e),c=l.length,d=_s(t),p=d.length;if(c!=p&&!i)return!1;for(var m=c;m--;){var y=l[m];if(!(i?y in t:ih.call(t,y)))return!1}var w=o.get(e),g=o.get(t);if(w&&g)return w==t&&g==e;var T=!0;o.set(e,t),o.set(t,e);for(var f=i;++m<c;){y=l[m];var E=e[y],_=t[y];if(a)var O=i?a(_,E,y,t,e,o):a(E,_,y,e,t,o);if(!(O===void 0?E===_||s(E,_,n,a,o):O)){T=!1;break}f||(f=y=="constructor")}if(T&&!f){var Y=e.constructor,ae=t.constructor;Y!=ae&&"constructor"in e&&"constructor"in t&&!(typeof Y=="function"&&Y instanceof Y&&typeof ae=="function"&&ae instanceof ae)&&(T=!1)}return o.delete(e),o.delete(t),T}var ch=lh,dh=at,ph=Se,uh=dh(ph,"DataView"),mh=uh,yh=at,wh=Se,hh=yh(wh,"Promise"),gh=hh,Th=at,bh=Se,fh=Th(bh,"Set"),Fo=fh,vh=at,xh=Se,Ah=vh(xh,"WeakMap"),Sh=Ah,ta=mh,na=Da,aa=gh,sa=Fo,ra=Sh,Wo=nt,lt=No,Ds="[object Map]",Ch="[object Object]",Ns="[object Promise]",Os="[object Set]",Ps="[object WeakMap]",Ls="[object DataView]",Eh=lt(ta),Ih=lt(na),_h=lt(aa),Dh=lt(sa),Nh=lt(ra),Me=Wo;(ta&&Me(new ta(new ArrayBuffer(1)))!=Ls||na&&Me(new na)!=Ds||aa&&Me(aa.resolve())!=Ns||sa&&Me(new sa)!=Os||ra&&Me(new ra)!=Ps)&&(Me=function(e){var t=Wo(e),n=t==Ch?e.constructor:void 0,a=n?lt(n):"";if(a)switch(a){case Eh:return Ls;case Ih:return Ds;case _h:return Ns;case Dh:return Os;case Nh:return Ps}return t});var Oh=Me,jn=Oo,Ph=Ro,Lh=ry,Rh=ch,Rs=Oh,ks=Pe,Ms=jo,kh=Bo,Mh=1,js="[object Arguments]",Bs="[object Array]",Gt="[object Object]",jh=Object.prototype,$s=jh.hasOwnProperty;function Bh(e,t,n,a,s,o){var i=ks(e),l=ks(t),c=i?Bs:Rs(e),d=l?Bs:Rs(t);c=c==js?Gt:c,d=d==js?Gt:d;var p=c==Gt,m=d==Gt,y=c==d;if(y&&Ms(e)){if(!Ms(t))return!1;i=!0,p=!1}if(y&&!p)return o||(o=new jn),i||kh(e)?Ph(e,t,n,a,s,o):Lh(e,t,c,n,a,s,o);if(!(n&Mh)){var w=p&&$s.call(e,"__wrapped__"),g=m&&$s.call(t,"__wrapped__");if(w||g){var T=w?e.value():e,f=g?t.value():t;return o||(o=new jn),s(T,f,n,a,o)}}return y?(o||(o=new jn),Rh(e,t,n,a,s,o)):!1}var $h=Bh,Fh=$h,Fs=it;function Uo(e,t,n,a,s){return e===t?!0:e==null||t==null||!Fs(e)&&!Fs(t)?e!==e&&t!==t:Fh(e,t,n,a,Uo,s)}var zo=Uo,Wh=Oo,Uh=zo,zh=1,Hh=2;function Gh(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 Wh;if(a)var y=a(d,p,c,e,t,m);if(!(y===void 0?Uh(p,d,zh|Hh,a,m):y))return!1}}return!0}var Vh=Gh,qh=_t;function Yh(e){return e===e&&!qh(e)}var Ho=Yh,Kh=Ho,Qh=Ra;function Xh(e){for(var t=Qh(e),n=t.length;n--;){var a=t[n],s=e[a];t[n]=[a,s,Kh(s)]}return t}var Zh=Xh;function Jh(e,t){return function(n){return n==null?!1:n[e]===t&&(t!==void 0||e in Object(n))}}var Go=Jh,eg=Vh,tg=Zh,ng=Go;function ag(e){var t=tg(e);return t.length==1&&t[0][2]?ng(t[0][0],t[0][1]):function(n){return n===e||eg(n,e,t)}}var sg=ag,rg=nt,og=it,ig="[object Symbol]";function lg(e){return typeof e=="symbol"||og(e)&&rg(e)==ig}var xn=lg,cg=Pe,dg=xn,pg=/\.|\[(?:[^[\]]*|(["'])(?:(?!\1)[^\\]|\\.)*?\1)\]/,ug=/^\w*$/;function mg(e,t){if(cg(e))return!1;var n=typeof e;return n=="number"||n=="symbol"||n=="boolean"||e==null||dg(e)?!0:ug.test(e)||!pg.test(e)||t!=null&&e in Object(t)}var ka=mg,Vo=Na,yg="Expected a function";function Ma(e,t){if(typeof e!="function"||t!=null&&typeof t!="function")throw new TypeError(yg);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(Ma.Cache||Vo),n}Ma.Cache=Vo;var wg=Ma,hg=wg,gg=500;function Tg(e){var t=hg(e,function(a){return n.size===gg&&n.clear(),a}),n=t.cache;return t}var bg=Tg,fg=bg,vg=/[^.[\]]+|\[(?:(-?\d+(?:\.\d+)?)|(["'])((?:(?!\2)[^\\]|\\.)*?)\2)\]|(?=(?:\.|\[\])(?:\.|\[\]|$))/g,xg=/\\(\\)?/g,Ag=fg(function(e){var t=[];return e.charCodeAt(0)===46&&t.push(""),e.replace(vg,function(n,a,s,o){t.push(s?o.replace(xg,"$1"):a||n)}),t}),Sg=Ag;function Cg(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 Eg=Cg,Ws=bn,Ig=Eg,_g=Pe,Dg=xn,Us=Ws?Ws.prototype:void 0,zs=Us?Us.toString:void 0;function qo(e){if(typeof e=="string")return e;if(_g(e))return Ig(e,qo)+"";if(Dg(e))return zs?zs.call(e):"";var t=e+"";return t=="0"&&1/e==-1/0?"-0":t}var Ng=qo,Og=Ng;function Pg(e){return e==null?"":Og(e)}var Lg=Pg,Rg=Pe,kg=ka,Mg=Sg,jg=Lg;function Bg(e,t){return Rg(e)?e:kg(e,t)?[e]:Mg(jg(e))}var Yo=Bg,$g=xn;function Fg(e){if(typeof e=="string"||$g(e))return e;var t=e+"";return t=="0"&&1/e==-1/0?"-0":t}var An=Fg,Wg=Yo,Ug=An;function zg(e,t){t=Wg(t,e);for(var n=0,a=t.length;e!=null&&n<a;)e=e[Ug(t[n++])];return n&&n==a?e:void 0}var Ko=zg,Hg=Ko;function Gg(e,t,n){var a=e==null?void 0:Hg(e,t);return a===void 0?n:a}var Vg=Gg;function qg(e,t){return e!=null&&t in Object(e)}var Yg=qg,Kg=Yo,Qg=Mo,Xg=Pe,Zg=Pa,Jg=La,eT=An;function tT(e,t,n){t=Kg(t,e);for(var a=-1,s=t.length,o=!1;++a<s;){var i=eT(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&&Jg(s)&&Zg(i,s)&&(Xg(e)||Qg(e)))}var nT=tT,aT=Yg,sT=nT;function rT(e,t){return e!=null&&sT(e,t,aT)}var oT=rT,iT=zo,lT=Vg,cT=oT,dT=ka,pT=Ho,uT=Go,mT=An,yT=1,wT=2;function hT(e,t){return dT(e)&&pT(t)?uT(mT(e),t):function(n){var a=lT(n,e);return a===void 0&&a===t?cT(n,e):iT(t,a,yT|wT)}}var gT=hT;function TT(e){return e}var bT=TT;function fT(e){return function(t){return t?.[e]}}var vT=fT,xT=Ko;function AT(e){return function(t){return xT(t,e)}}var ST=AT,CT=vT,ET=ST,IT=ka,_T=An;function DT(e){return IT(e)?CT(_T(e)):ET(e)}var NT=DT,OT=sg,PT=gT,LT=bT,RT=Pe,kT=NT;function MT(e){return typeof e=="function"?e:e==null?LT:typeof e=="object"?RT(e)?PT(e[0],e[1]):OT(e):kT(e)}var Qo=MT;function jT(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 BT=jT,$T=BT,FT=$T(),WT=FT,UT=WT,zT=Ra;function HT(e,t){return e&&UT(e,t,zT)}var GT=HT,VT=GT;function qT(e,t,n,a){return VT(e,function(s,o,i){t(a,n(s),o,i)}),a}var YT=qT,KT=YT;function QT(e,t){return function(n,a){return KT(n,e,t(a),{})}}var XT=QT,ZT=Qo,JT=XT,Xo=Object.prototype,eb=Xo.hasOwnProperty,tb=Xo.toString,nb=JT(function(e,t,n){t!=null&&typeof t.toString!="function"&&(t=tb.call(t)),eb.call(e,t)?e[t].push(n):e[t]=[n]},ZT),ab=nb;const sb=hn(ab),bt="Canceled by user",rb={"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."};sb(rb);const Zo=e=>typeof e=="object"&&e!==null&&"message"in e&&typeof e.message=="string",Jo=e=>{if(Zo(e))return e;try{return new Error(JSON.stringify(e))}catch{return new Error(String(e))}},ei=e=>Jo(e).message;class ct extends $l.CustomError{constructor({message:n=Pr,link:a,slippage:s,txArgs:o,account:i,onBypass:l,functionName:c}){super(n);Re(this,"txArgs");Re(this,"link");Re(this,"account");Re(this,"slippage");Re(this,"functionName");Re(this,"onBypass");this.link=a,this.txArgs=o,this.account=i,this.slippage=s,this.functionName=c,this.onBypass=l}}const ob=async()=>{},Bn=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}},ve=({functionName:e,dynamicContractAddress:t,contractId:n,onSettled:a})=>{const{account:s}=M(),{chainId:o,supportedChainId:i}=Ae(),l=C.useWalletClient({chainId:o}),c=C.usePublicClient({chainId:o}),d=to(n),p=t??U(n,o??i),m=Ao(),{writeContract:y}=C.useWriteContract({mutation:{onSettled:a}}),w=u.useCallback(async(...f)=>{try{const{argumentsWithoutOverrides:E,transactionOverrides:_}=Bn(f),O=await c?.estimateContractGas({address:p,abi:d,functionName:e,args:E,account:s??I,gas:_.gas,value:_.value});if(!O||!o||O===BigInt(0))return{error:Qn,value:BigInt(0)};const Y=Math.round(Number(O)*wr),ae=Yt[o]??Y,xe=BigInt(Math.min(ae,Y));return console.debug(`[core-ui-kit]: estimated gas limit: ${Number(O)}`),{error:"",value:xe}}catch(E){return console.error(`Gas estimate error on ${e}`,E),{error:E?.message??E?.shortMessage??E.error?.data?.message??E.data?.message??Qn,value:BigInt(0)}}},[s,o,c,e,p,d]),g=u.useCallback(async(...f)=>{try{if(!m)return{data:null,error:Xn};if(!c)return{data:null,error:"Client is not defined"};const{argumentsWithoutOverrides:E,transactionOverrides:_}=Bn(f),O=D.encodeFunctionData({abi:d,functionName:e,args:E});if(s&&O){const Y=await m({chainId:o??i,from:s,to:p,input:O,gas:Yt[o??i]??0,value:_.value?.toString()});return{data:Y,error:Y?.simulation.error_message}}return{data:null,error:Xn}}catch(E){return console.debug("Failed to simulate:",E),{data:null,error:ei(E)}}},[s,o,c,d,p,e,m,i]),T=u.useCallback(async(...f)=>{const{argumentsWithoutOverrides:E,transactionOverrides:_}=Bn(f);if(_.gas)return y({address:p,abi:d,functionName:e,chainId:o,args:E,..._});const{value:O,error:Y}=await w(...f);if(Y){const{data:ae}=await Promise.race([g(...f),new Promise(xe=>setTimeout(xe,hr,{data:null,error:Lr}))]);throw new ct({message:Y,link:ae?.link,txArgs:f,account:s,functionName:e,onBypass:()=>l?.data?.writeContract({address:p,abi:d,functionName:e,account:s,chainId:o,args:E,..._,gas:BigInt(Yt[o??i]??0)})})}return console.debug(`[core-ui-kit]: gas limit to use: ${O}`),y({address:p,abi:d,functionName:e,chainId:o,args:E,..._,gas:O})},[w,y,g,s,e,l?.data,p,d,o,i]);return{send:o&&c?T:ob,estimate:w}},ti=e=>C.useEstimateFeesPerGas({...e,query:{...e?.query,staleTime:3e4}}),Sn=e=>{u.useEffect(()=>{e&&e.forEach(({error:t,status:n})=>{n==="failure"&&console.warn(t?.message)})},[e])},ja=({error:e,status:t})=>{u.useEffect(()=>{e&&t==="failure"&&console.warn(e?.message)},[e,t])},ni=async({functionName:e,address:t,abi:n,args:a,publicClient:s})=>(await s?.simulateContract({address:t,abi:n,functionName:e,args:a}))?.result,ib=({disabled:e,functionName:t,address:n,abi:a,args:s,chainId:o,refetchInterval:i})=>{const l=C.usePublicClient({chainId:o});return Ze.useQuery({queryKey:[{functionName:t,address:n,args:s,chainId:o}],queryFn:async({queryKey:[c]})=>{if(c)return await ni({address:n,abi:a,functionName:c.functionName,args:c.args,publicClient:l})},enabled:!e&&!!o&&!J(n)&&!!t,refetchInterval:i})},rn=({queryKey:e,watch:t=!0})=>{const n=Ze.useQueryClient(),{data:a}=C.useBlockNumber({query:{refetchInterval:We}});u.useEffect(()=>{t&&n.refetchQueries({queryKey:e,stale:!0})},[t,a])},Cn="limitOrders",Ba="getAllLimitOrderIds",$a=0,ai="100",lb=1,cb=5,db=2,pb=["balanceOf","getFundSummary","getFundComposition","withdrawalContracts","getTrackedAssets","getAssetPrice","allowance","getExitRemainingCooldown","tokenPrice","limitOrders","calculateAvailableManagerFee",Cn,Ba],ub=["allowance"],Hs=(e,t)=>e[0]==="readContract"?t.includes(e?.[1]?.functionName??""):e[0]==="readContracts"?!!e[1]?.contracts?.some(({functionName:a})=>t.includes(a??"")):!1,En=()=>{const e=Ze.useQueryClient(),t=u.useCallback(()=>{e.invalidateQueries({predicate:({queryKey:a})=>Hs(a,ub)})},[e]),n=u.useCallback(()=>{e.invalidateQueries({predicate:({queryKey:a})=>Hs(a,pb)})},[e]);return{invalidateAllowanceQueries:t,invalidateTradingQueries:n}},In=()=>{const{chainId:e}=Ae(),{data:t}=C.useCapabilities();if(!e||!t)return!1;const n=t?.[e]?.atomic?.status;return!!n&&n!=="unsupported"},mb=({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}=Fl.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})]})},Fa=({text:e,...t})=>r.jsx(mb,{...t,tooltipContent:r.jsx("span",{className:"dtw-inline-block dtw-max-w-xs",children:e})}),on=({text:e,placement:t,iconClassName:n="dtw-text-[color:var(--panel-secondary-content-color)]",Icon:a=ne.QuestionMarkCircleIcon})=>r.jsx(Fa,{text:e,placement:t,children:r.jsx(a,{className:A("dtw-h-4 dtw-w-4 dtw-cursor-help hover:dtw-text-[color:var(--panel-icon-color-hover))]",n)})}),Be=({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(on,{text:t,placement:"top"})]}),r.jsx("div",{className:"dtw-mt-1.5",children:n})]}),we=({symbol:e,address:t,watch:n=!1})=>{const{account:a}=M(),s=x(),o=un(e,s.chainId),{data:i}=ti({chainId:s.chainId,query:{enabled:o}}),{data:l,queryKey:c}=Ia({chainId:s.chainId,address:a,query:{enabled:o&&!!a}}),{data:d,queryKey:p}=C.useReadContracts({contracts:[{address:t,abi:D.erc20Abi,functionName:"balanceOf",chainId:s.chainId,args:[a??I]},{address:t,abi:D.erc20Abi,chainId:s.chainId,functionName:"decimals"}],query:{enabled:!o&&!!a}});return rn({watch:n&&o,queryKey:c}),rn({watch:n&&!o,queryKey:p}),o?oo({nativeTokenBalance:D.formatUnits(l?.value??BigInt(0),l?.decimals??k),gasPrice:Number(i?.maxFeePerGas??0),tokenDecimals:l?.decimals??k}).toString():D.formatUnits(d?.[0]?.result??BigInt(0),d?.[1]?.result??k)},Dt=()=>{const[{value:e,symbol:t,address:n}]=N(),a=we({symbol:t,address:n});return new b(e||0).gt(a??0)},yb=({address:e,chainId:t})=>[{address:U("factory",t),abi:Ue,functionName:"isPool",chainId:t,args:[e]}],wb=e=>({isUserDhedgePool:e[0].result}),Nt=()=>{const{account:e=I}=M(),{chainId:t,supportedChainId:n}=Ae(),a=t??n,{data:s}=C.useReadContracts({contracts:yb({address:e,chainId:a}),query:{enabled:!J(e),select:wb}});return!!s?.isUserDhedgePool},hb=({address:e,chainId:t})=>[{address:e??I,abi:be,functionName:"poolManagerLogic",chainId:t},{address:U("easySwapperV2",t),abi:fe,functionName:"customCooldownDepositsWhitelist",args:[e],chainId:t},{address:U("easySwapperV2",t),abi:fe,functionName:"customCooldown",args:[],chainId:t},{address:U("factory",t),chainId:t,abi:Ue,functionName:"getAssetGuard",args:[U("aaveLendingPoolV3",t)]}],gb=e=>({poolManagerLogic:e[0].result,isCustomCooldownDepositAllowed:e[1].result,customCooldown:e[2].result,aaveAssetGuardAddress:e[3].result}),Ot=({address:e,chainId:t})=>C.useReadContracts({contracts:hb({address:e,chainId:t}),query:{enabled:!!e&&!J(e),staleTime:1/0,select:gb}}),Wa=({address:e,chainId:t})=>{const[n]=He(),{data:{poolManagerLogic:a}={}}=Ot({address:e,chainId:t});return n.managerLogicAddress??a},Tb=({address:e,chainId:t,account:n})=>[{address:e,abi:_e,functionName:"getFeeIncreaseInfo",chainId:t},{address:e,abi:_e,functionName:"minDepositUSD",chainId:t},{address:e,abi:_e,functionName:"isMemberAllowed",args:[n??I],chainId:t},{address:e,abi:_e,functionName:"maxSupplyCap",args:[],chainId:t}],bb=e=>({getFeeIncreaseInfo:e[0].result,minDepositUSD:e[1].result,isMemberAllowed:e[2].result,maxSupplyCapD18:e[3].result}),Pt=({address:e,chainId:t})=>{const n=Wa({address:e,chainId:t}),{account:a=I}=M(),s=C.useReadContracts({contracts:Tb({address:n??I,chainId:t,account:a}),query:{enabled:!!n&&!J(n),staleTime:1/0,select:bb}});return ja({error:s.error,status:s.status}),s},fb=({chainId:e,address:t})=>[{address:t,abi:_e,functionName:"getFundComposition",chainId:e},{address:t,abi:_e,functionName:"getSupportedAssets",chainId:e}],vb=e=>({getFundComposition:e[0].result,getSupportedAssets:e[1].result?.map(({asset:t})=>t)}),Lt=({address:e,chainId:t})=>{const n=Wa({address:e,chainId:t});return C.useReadContracts({contracts:fb({address:n??I,chainId:t}),query:{enabled:!!n&&!J(n),select:vb,refetchInterval:Je}})};function xb(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 Ab=xb,Sb=_a,Cb=$o,Eb=Pa,Ib=_t;function _b(e,t,n){if(!Ib(n))return!1;var a=typeof t;return(a=="number"?Cb(n)&&Eb(t,n.length):a=="string"&&t in n)?Sb(n[t],e):!1}var Db=_b,Nb=/\s/;function Ob(e){for(var t=e.length;t--&&Nb.test(e.charAt(t)););return t}var Pb=Ob,Lb=Pb,Rb=/^\s+/;function kb(e){return e&&e.slice(0,Lb(e)+1).replace(Rb,"")}var Mb=kb,jb=Mb,Gs=_t,Bb=xn,Vs=NaN,$b=/^[-+]0x[0-9a-f]+$/i,Fb=/^0b[01]+$/i,Wb=/^0o[0-7]+$/i,Ub=parseInt;function zb(e){if(typeof e=="number")return e;if(Bb(e))return Vs;if(Gs(e)){var t=typeof e.valueOf=="function"?e.valueOf():e;e=Gs(t)?t+"":t}if(typeof e!="string")return e===0?e:+e;e=jb(e);var n=Fb.test(e);return n||Wb.test(e)?Ub(e.slice(2),n?2:8):$b.test(e)?Vs:+e}var Hb=zb,Gb=Hb,Vb=1/0,qb=17976931348623157e292;function Yb(e){if(!e)return e===0?e:0;if(e=Gb(e),e===Vb||e===-1/0){var t=e<0?-1:1;return t*qb}return e===e?e:0}var Kb=Yb,Qb=Kb;function Xb(e){var t=Qb(e),n=t%1;return t===t?n?t-n:t:0}var Zb=Xb,Jb=Ab,ef=Db,tf=Zb,nf=Math.ceil,af=Math.max;function sf(e,t,n){(n?ef(e,t,n):t===void 0)?t=1:t=af(tf(t),0);var a=e==null?0:e.length;if(!a||t<1)return[];for(var s=0,o=0,i=Array(nf(a/t));s<a;)i[o++]=Jb(e,s,s+=t);return i}var rf=sf;const si=hn(rf),ri=({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:[]}],of=e=>e.flatMap(ri),lf=ri({account:I,chainId:h.optimism.id,address:I}).length,oi=({account:e})=>{const{chainId:t}=Ae(),n=et();return C.useReadContracts({contracts:of(n.map(a=>({...a,account:e}))),query:{select:a=>si(a,lf).reduce((s,[o,i],l)=>{const c=n?.[l]?.address??I;return{...s,[c]:{balance:o?.result?.toString(),tokenPrice:i?.result?.toString()}}},{}),placeholderData:(a,s)=>{if(s?.queryKey?.[1].chainId!==t)return a},refetchInterval:Je,enabled:!J(e)}})},cf=({chainId:e,address:t})=>[{address:t,abi:be,functionName:"tokenPrice",chainId:e,args:[]},{address:t,abi:be,functionName:"getFundSummary",chainId:e}],df=([e,t])=>{const n=t?.result;return{tokenPrice:e?.result!==BigInt(0)?e?.result?.toString():Ul,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})=>C.useReadContracts({contracts:cf({address:e,chainId:t}),query:{enabled:a&&!!e&&!J(e),refetchInterval:n,select:df}}),ii=({address:e,chainId:t})=>{const{account:n}=M(),{data:{managerAddress:a}={managerAddress:I}}=oe({address:e,chainId:t}),{data:{isMemberAllowed:s=!1}={}}=Pt({address:e,chainId:t});return n?s||z(n,a):!1},li=({address:e,chainId:t})=>{const[n]=He(),a=u.useMemo(()=>n.poolCompositions?.reduce((p,{tokenAddress:m,tokenName:y,precision:w,asset:g})=>({...p,[m.toLowerCase()]:{tokenName:y,precision:w,asset:g}}),{}),[n.poolCompositions]),{data:{getFundComposition:[s,o,i]=[]}={},isFetched:l}=Lt({address:e,chainId:t}),c=u.useMemo(()=>s?.map(({asset:p})=>p)??[],[s]),{data:d}=C.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 Sn(d),u.useMemo(()=>{if(!s?.length)return[];const p=si(d,2);return s.map(({asset:m,isDeposit:y},w)=>{const g=m.toLowerCase(),[T,f]=p[w]??[],E=xa[g.toLowerCase()]??T?.result?.toString()??a?.[g]?.tokenName??no(g);return{tokenAddress:g,isDeposit:y,rate:i?.[w]?.toString()??"0",amount:o?.[w]?.toString()??"0",tokenName:E,precision:f?.result?Number(f.result):a?.[g]?.precision??k,asset:{iconSymbols:a?.[g]?.asset.iconSymbols??[E]}}})},[o,i,a,s,d])},dt=({address:e,chainId:t})=>{const[n]=He(),a=li({address:e,chainId:t});return a.length?a:n.poolCompositions??[]},pf=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}},Ua=(e,t)=>{const{data:{getFeeIncreaseInfo:n,minDepositUSD:a}={}}=Pt({address:e,chainId:t});return{...pf(n),minDepositUSD:+D.formatUnits(a??BigInt(0),k)}},uf=({composition:e,vaultTokensAmount:t,totalSupplyD18:n})=>e.reduce((a,s)=>{const o=a.find(({tokenName:i})=>i===s.tokenName);if(o){const i=new b(o.amount).shiftedBy(-o.precision),l=new b(s.amount).shiftedBy(-s.precision);return o.amount=i.plus(l).shiftedBy(o.precision).toFixed(0),a}return[...a,s]},[]).map(a=>{const s=Jn(a.amount,t,n,a.precision),o=Jn(new b(a.rate).multipliedBy(a.amount).shiftedBy(-a.precision).toFixed(),t,n);return{...a,fraction:s.toFixed(Ct(s)),fractionUsd:ee({value:o}),fractionUsdNumber:o}}).filter(({amount:a})=>a!=="0").sort((a,s)=>s.fractionUsdNumber-a.fractionUsdNumber),ci=({address:e,vaultTokensAmount:t,chainId:n})=>{const a=dt({address:e,chainId:n}),{data:{totalSupplyD18:s}={}}=oe({address:e,chainId:n});return u.useMemo(()=>s?uf({composition:a,vaultTokensAmount:tn(t||0),totalSupplyD18:s}):[],[t,a,s])},de=({address:e,chainId:t,formatter:n=D.formatEther})=>{const[a]=He(),{data:s}=oe({address:e,chainId:t,refetchInterval:Je});return n(BigInt(s?.tokenPrice??a?.tokenPrice??"0"))},_n=({address:e,chainId:t})=>{const[n]=He(),a=z(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:vt(p,me),performanceFeeNumber:De(+p,me),streamingFee:vt(m,me,2),streamingFeeNumber:De(+m,me),entryFee:vt(c,me,2),entryFeeNumber:De(+c,me),exitFee:vt(d,me,2),exitFeeNumber:De(+d,me)}},[s,a?.performanceFeeNumerator,a?.streamingFeeNumerator,o,c,d])},di=()=>{const{address:e,chainId:t}=x(),{queryKey:n}=Lt({address:e,chainId:t});rn({queryKey:n})},Vt=h.base.id,mf=e=>{const t=U("flatcoinPointsModule",Vt);return[{address:t,chainId:Vt,abi:Kt,functionName:"lockedBalance",args:[e]},{address:t,chainId:Vt,abi:Kt,functionName:"getUnlockTax",args:[e]},{address:t,chainId:Vt,abi:Kt,functionName:"unlockTime",args:[e]}]},pi=({enabled:e,address:t})=>C.useReadContracts({contracts:mf(t),query:{enabled:e,select:n=>{const[a,s,o]=n;return{lockedVaultPointsBalance:a?.result,unlockTaxInPercents:s?.result,unlockTime:o?.result}}}}),yf=[...Jr],za=({address:e,chainId:t})=>{const n=dt({address:e,chainId:t}),a=U("factory",t);return C.useReadContracts({contracts:n.map(({tokenAddress:s})=>({address:a,abi:Ue,functionName:"isPool",chainId:t,args:[s]})),query:{select:s=>n.some(({amount:o,tokenAddress:i},l)=>(!!s[l]?.result||yf.some(p=>z(p,i)))&&o!=="0"),staleTime:1/0}})},wf=[[30*1e3,5e3],[60*1e3,1e4],[5*60*1e3,2e4]],hf=e=>{if(!e)return!1;for(const[t,n]of wf)if(e<=t)return n;return zl},$n=e=>Number(e?.toString()??"0")*1e3,gf=({address:e,chainId:t})=>{const{account:n}=M();return C.useReadContract({address:e,abi:be,functionName:"getExitRemainingCooldown",chainId:t,args:[n??I],query:{enabled:!!n,select:$n,refetchInterval:a=>hf($n(a.state?.data)),refetchOnWindowFocus:a=>$n(a.state?.data)>0}})};function Tf(e,t,n){if(!e||!t)return{balanceInUsd:"",balanceInUsdNumber:0};const a=+e*$e(t);return{balanceInUsd:ee({value:a,maximumFractionDigits:n}),balanceInUsdNumber:a}}const ui=(e,t)=>Jc(e)?{rawBalance:e?.toString()??"",...Tf(D.formatUnits(e,F),t?.toString())}:{rawBalance:"",balanceInUsd:"",balanceInUsdNumber:0},mi=({account:e}={})=>{const{account:t}=M(),n=e??t??I,{data:a}=oi({account:n});return u.useMemo(()=>J(n)?{}:Object.entries(a??{}).reduce((s,[o,i])=>{const l=ui(BigInt(i.balance??"0"),BigInt(i.tokenPrice??"0"));return l.balanceInUsdNumber>0?{...s,[o]:l}:s},{}),[n,a])},yi=({account:e,chainId:t,address:n})=>{const{data:a,isFetched:s}=oe({address:n,chainId:t}),{poolFallbackData:o}=te(),i=z(o.address,n)?o.tokenPrice??"0":"0";return C.useReadContract({address:e?n:void 0,abi:be,functionName:"balanceOf",chainId:t,args:[e],query:{enabled:!J(e)&&s,select:l=>ui(l,BigInt(a?.tokenPrice??i))}})},bf=e=>Math.ceil($e(e)),wi=({address:e,chainId:t,select:n=bf})=>{const{data:{totalValueD18:a}={}}=oe({address:e,chainId:t}),{data:{maxSupplyCapD18:s}={}}=Pt({address:e,chainId:t});return C.useReadContract({address:e,chainId:t,abi:be,functionName:"calculateAvailableManagerFee",args:[BigInt(a??"0")],query:{enabled:!!a&&!!s&&s>0n,select:n}})},hi=({address:e,chainId:t})=>{const{data:{maxSupplyCapD18:n}={}}=Pt({address:e,chainId:t}),{data:{totalSupplyD18:a}={}}=oe({address:e,chainId:t}),s=de({address:e,chainId:t}),{data:o=0}=wi({address:e,chainId:t});if(!n||n===0n)return null;const i=Math.ceil($e(a??0)),l=$e(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}},ff=({address:e,chainId:t})=>{const{data:{isPrivateVault:n}={isPrivateVault:!1}}=oe({address:e,chainId:t}),s=et().find(i=>z(e,i.address)&&i.chainId===t),o=!!(s?.maintenance||s?.maintenanceDeposits);return n||o},vf=e=>oe(e),gi=()=>{const{address:e,symbol:t,chainId:n}=x(),{account:a=I}=M(),s=we({symbol:t,address:e}),{data:{totalSupplyD18:o}={}}=oe({address:e,chainId:n}),l=Sa(e)&&!z(a,I),{data:{lockedVaultPointsBalance:c,unlockTaxInPercents:d,unlockTime:p}={},isLoading:m}=pi({enabled:l,address:e});return u.useMemo(()=>{const y=o?new b.BigNumber(s).shiftedBy(k).dividedBy(o):new b.BigNumber(0),w=c?new b.BigNumber(c.toString()).multipliedBy(y).shiftedBy(-18):new b.BigNumber(0),g=d?w.multipliedBy(d.toString()).shiftedBy(-18):new b.BigNumber(0),T=p?Number(p)*1e3:null;return{userPortionOfLockedPointsBalance:w.toFixed(),unlockTaxAmount:g.toFixed(),vestedPointsAmount:w.minus(g).toFixed(),unlockTimestamp:T,unlockDate:T?At.format(T,"PPP"):null,isLoading:m}},[o,s,c,d,p,m])},xf={"Lend/Borrow V2":"aave","Lend/Borrow V3":"aave","Lyra Options":"lyra",ULP:"uni"};function Af(e){const t=xf[e];if(t)return t;const n=e.toLowerCase();return n.includes("bear")?"torosbear":n.includes("bull")?"torosbull":n}const Ti=e=>e?`https://raw.githubusercontent.com/dhedge/crypto-icons/main/icons/${Af(e)}.png`:"",bi={isGeoBlocked:!1,isSanctioned:!1,depositQuoteDiffWarningThreshold:1.5,depositQuoteDiffErrorThreshold:3,defaultWithdrawSlippage:dr,defaultLockTime:lr,defaultNoSwapMinDepositAmountGap:Gl,defaultSwapTransactionSlippage:Vl,defaultNotificationDuration:Ql,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:Ti,minLimitOrderValue:0,limitOrderThemeConfig:{}},Sf=()=>{const{connect:e}=C.useConnect(),t=u.useCallback(()=>e({connector:Wl.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}},Cf={params:{...bi},actions:{onConnect:()=>{},onAcceptTermsOfUse:()=>Promise.resolve(!0)}},fi=u.createContext(Cf),vi=({children:e,config:t})=>{const n=Sf(),a=u.useMemo(()=>({params:{...bi,...t?.params},actions:{...n,...t?.actions}}),[t,n]);return r.jsx(fi.Provider,{value:a,children:e})},xi=()=>{const e=u.useContext(fi);if(!e)throw new Error("ConfigContext is used out of Provider");return e},H=()=>xi().params,Ai=()=>xi().actions,Ha=()=>{const{depositQuoteDiffErrorThreshold:e}=H(),[t,n]=u.useState(!1),[{slippage:a,minSlippage:s}]=K(),o=a==="auto"?s??0:a,l=!Dt()&&o>e&&!t,c=u.useCallback(()=>{n(!0)},[]);return{requiresHighSlippageConfirm:l,confirmHighSlippage:c,slippageToBeUsed:o}},$={ERROR:"error",WARNING:"warning",SUCCESS:"success",DEFAULT:"default",CUSTOM:"custom"},B={TERMS_OF_USE:"TERMS_OF_USE",HIGH_SLIPPAGE:"HIGH_SLIPPAGE",FMP_WITHDRAWAL:"FMP_WITHDRAWAL",TOKEN_SELECT:"TOKEN_SELECT",POOL_SELECT:"POOL_SELECT",TRADING:"TRADING",ERROR_NOTIFICATION:"ERROR_NOTIFICATION",LIMIT_SELLS:"LIMIT_SELLS",LIMIT_ORDER_WITHDRAW:"LIMIT_ORDER_WITHDRAW"},Rt=e=>{const{depositQuoteDiffErrorThreshold:t,depositQuoteDiffWarningThreshold:n}=H(),a=Math.abs(e);return a>t?$.ERROR:a>n?$.WARNING:$.DEFAULT};var Ef=nt,If=it,_f="[object Number]";function Df(e){return typeof e=="number"||If(e)&&Ef(e)==_f}var Nf=Df;const Of=hn(Nf),Si=({tradingType:e,slippage:t,minSlippage:n})=>{const{defaultWithdrawSlippage:a}=H();return t!=="auto"?t.toString():Of(n)?n.toString():e==="deposit"?dn.toString():a.toString()},Ci={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",receiveEstimated:"Receive (estimated)",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.",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",priceLabel:"Price",transactionLabel:"Transaction",initWithdrawDescription:"Unroll",initWithdrawTooltip:"Unroll prepares assets for single asset withdrawal.",completeWithdrawDescription:"Claim",completeWithdrawTooltip:"This final step swaps all assets to a single asset and sends it to your wallet.",unrollAndClaimDescription:"Claim",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",batchTransactionsTooltip:"Group transaction calls into a single batch transaction. Disable if you prefer separate prompts.",openLimitOrderAfterBuySwitchLabel:"Add Stop Order",stopOrder:"Stop Order",send:"Send",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"},Ei=u.createContext(Ci),Pf=({children:e,config:t})=>{const n=u.useMemo(()=>({...Ci,...t}),[t]);return r.jsx(Ei.Provider,{value:n,children:e})},S=()=>{const e=u.useContext(Ei);if(!e)throw new Error("TranslationContext is used out of Provider");return e},Ga=e=>{const t=S(),{symbol:n}=x(),a=`${n}${e}`;return t?.[a]??t[e]},Lf=async(e,t=Ti)=>{try{return(await import(`@dhedge/crypto-assets/icons/${e.toLowerCase()}.png`))?.default?.src??t(e)}catch{return t(e)}},Rf=(e=[])=>{const{getFallbackIconPath:t}=H(),[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=>Lf(c,t)));a(l),o(e)})()},[e,s,t]),n},kf=(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}},Ii=Object.values(B).reduce((e,t)=>({...e,[t]:{isOpen:!1,isPending:!1}}),{}),Mf=()=>u.useReducer(kf,Ii),_i=u.createContext(Ii),Di=u.createContext(()=>{}),Ni=()=>{const e=u.useContext(_i);if(!e)throw new Error("OverlayStateContext is used out of Provider");return e},ie=()=>{const e=u.useContext(Di);if(!e)throw new Error("OverlayDispatchContext is used out of Provider");return e},pe=({type:e})=>{const t=Ni(),n=ie(),a=()=>{n({type:"MERGE_OVERLAY",payload:{type:e,isOpen:!1,isPending:!1}})},{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}},jf=()=>{const e=ie();return()=>{Object.values(B).forEach(t=>{e({type:"MERGE_OVERLAY",payload:{type:t,isOpen:!1,isPending:!1}})})}},Bf=({children:e})=>{const[t,n]=Mf(),[{isOpen:a}]=X();return u.useEffect(()=>{a&&!t.TRADING.isOpen&&n({type:"MERGE_OVERLAY",payload:{type:B.TRADING,isOpen:a}})},[a,t.TRADING.isOpen,n]),u.useEffect(()=>{!a&&t.TRADING.isOpen&&n({type:"MERGE_OVERLAY",payload:{type:B.TRADING,isOpen:a}})},[a,t.TRADING.isOpen,n]),r.jsx(Di.Provider,{value:n,children:r.jsx(_i.Provider,{value:t,children:e})})},$f=()=>{const e=ze(),{pricingAsset:t,symbol:n,chainId:a,address:s}=x(),{minLimitOrderValue:o}=H(),i=ie(),l=we({symbol:n,address:s}),c=de({address:s,chainId:a}),m=Number(l)*Number(c)>=o&&!!t,y=u.useCallback(()=>{m&&(i({type:"MERGE_OVERLAY",payload:{type:B.LIMIT_SELLS,isOpen:!0}}),e?.(Q.OPEN_LIMIT_SELL_VIEW,{[Te.SOURCE.NAME]:"overlay"}))},[i,m,e]);return{displayLimitSellOverlay:m,openLimitSellOverlay:y}},Ff=({tradingType:e})=>{const t=Ga(e);return r.jsx(P.Tab,{className:({selected:n})=>A("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]})})},Wf={[$.DEFAULT]:ne.QuestionMarkCircleIcon,[$.ERROR]:ne.ExclamationCircleIcon,[$.SUCCESS]:ne.CheckCircleIcon,[$.WARNING]:ne.ExclamationCircleIcon,[$.CUSTOM]:ne.QuestionMarkCircleIcon},Fn=({tooltipText:e,value:t,label:n,children:a,type:s=$.DEFAULT,className:o,emphasised:i=!1})=>r.jsxs("div",{className:A("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(on,{text:e,placement:"right",Icon:Wf[s],iconClassName:A({"dtw-text-[color:var(--panel-error-content-color)]":s===$.ERROR,"dtw-text-[color:var(--panel-warning-content-color)]":s===$.WARNING})}),r.jsx("p",{className:A({"dtw-text-[color:var(--panel-error-content-color)]":s===$.ERROR,"dtw-text-[color:var(--panel-warning-content-color)]":s===$.WARNING}),children:n})]}),r.jsx("div",{className:A({"dtw-text-[color:var(--panel-error-content-color)]":s===$.ERROR,"dtw-text-[color:var(--panel-warning-content-color)]":s===$.WARNING}),children:t})]}),a]}),Va=({children:e,staticItems:t,collapseItems:n,themeType:a=$.DEFAULT,buttonItemChildren:s})=>{const o=S();return r.jsx("div",{className:"dtw-w-full dtw-flex dtw-flex-col dtw-gap-1",children:r.jsx(P.Disclosure,{children:({open:i})=>r.jsxs(r.Fragment,{children:[t?.map(l=>r.jsx(Fn,{...l},l.label)),r.jsx(P.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(Fn,{tooltipText:o.fullReceiveDetails,label:o.tradeDetails,value:"",type:a,emphasised:!0,children:[s,r.jsx(Ne.ChevronDownIcon,{className:A("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(P.Transition,{show:i,children:r.jsxs(P.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(Fn,{...l},l.label)),e]})})]})})})},Ce=({className:e})=>r.jsx("svg",{className:A("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"})}),Uf=({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}),zf=({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}),ln=({Icon:e,onClick:t,className:n="dtw-h-7 dtw-w-7",containerClassName:a,disabled:s})=>r.jsx("div",{className:A("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:A("dtw-text-[color:var(--panel-icon-color)] group-hover:dtw-text-[color:var(--panel-icon-color-hover))]",n)})}),Hf=({children:e,onClose:t})=>{const{defaultNotificationDuration:n}=H();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(ln,{Icon:Yn.XMarkIcon,onClick:t,className:"dtw-w-6 dtw-h-6",containerClassName:"dtw-self-center"})]})})},Gf=({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:A("dtw-absolute dtw-top-0 dtw-inset-0 dtw-rounded-xl dtw-backdrop-blur-md dtw-backdrop-brightness-75 dtw-backdrop-filter",{"dtw-p-4":!o}),children:r.jsxs("div",{className:A("dtw-flex dtw-flex-col dtw-rounded-xl dtw-p-4 dtw-h-full",t,{"dtw-bg-[var(--panel-popup-bg,var(--panel-secondary-color))]":!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(ln,{Icon:Yn.ChevronLeftIcon,onClick:i})}),!!s&&r.jsx("div",{className:"dtw-absolute dtw-top-5 dtw-right-5",children:r.jsx(ln,{Icon:Yn.XMarkIcon,onClick:s})})]})})),Vf=({children:e})=>r.jsx(P.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}),qf=({className:e,iconClassName:t,onClick:n,children:a})=>{const s=ze(),o=()=>{n?.(),s?.(Q.TRADING_SETTINGS_OPENED)};return r.jsxs(P.Popover,{className:A("dtw-flex dtw-items-center dtw-justify-end",e),children:[r.jsx(P.PopoverButton,{onClick:o,children:r.jsx(ne.Cog6ToothIcon,{className:A("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(P.PopoverBackdrop,{className:"dtw-absolute dtw-inset-0 dtw-bg-[var(--panel-popup-bg,var(--panel-secondary-color))] dtw-opacity-50"}),r.jsx(P.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})})]})},Yf=({children:e})=>r.jsx(P.TabPanel,{children:r.jsx(qf,{children:e})}),V={InputGroup:Uf,Meta:zf,Settings:Yf,Panel:Vf,Overlay:Gf,Notification:Hf},Kf=["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)]"],Qf=["!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))]"],q=({children:e,onClick:t,highlighted:n=!0,disabled:a=!1,className:s,type:o,loading:i=!1})=>r.jsxs("button",{className:A("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",{[Qf.join(" ")]:n,[Kf.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(Ce,{className:"dtw-h-4 dtw-w-4"}),e]}),Oi={GeoBlockAlert:()=>r.jsx(ft,{type:"error",children:r.jsx("span",{className:"dtw-text-sm",children:"Depositing is geo-blocked."})}),SanctionedAlert:()=>r.jsx(ft,{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(ft,{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(ft,{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(ft,{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"})]})},Pi=u.createContext(Oi),Xf=({children:e,config:t})=>{const n=u.useMemo(()=>({...Oi,...t}),[t]);return r.jsx(Pi.Provider,{value:n,children:e})},R=()=>{const e=u.useContext(Pi);if(!e)throw new Error("ComponentContext is used out of Provider");return e},oa=({children:e,promptText:t})=>{const{ActionButton:n=q}=R();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(ne.ExclamationCircleIcon,{className:"dtw-h-5 dtw-w-5"}),r.jsx("div",{className:"dtw-py-1 dtw-text-xs",children:t})]}),r.jsx(Fa,{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(ne.LockClosedIcon,{className:"dtw-h-5"}),r.jsx("span",{children:e})]})})})]})},pt=({link:e,className:t,children:n,iconClassName:a="dtw-h-5 dtw-w-5",showDefaultIcon:s=!0})=>r.jsxs("a",{className:A("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(ne.ArrowTopRightOnSquareIcon,{className:a})]}),Dn=({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(P.Field,{children:r.jsxs("div",{className:A("dtw-flex",{"dtw-flex-col dtw-gap-y-0.5":s,"dtw-items-center dtw-justify-between":!s}),children:[a&&r.jsx(P.Label,{className:"dtw-cursor-pointer dtw-text-xs",children:a}),r.jsx(P.Switch,{checked:o,onChange:l,className:A("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:A("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})})})]})})},Li=({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}),Zf=({onClick:e})=>{const t=S();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})},Ri=({style:e,className:t})=>r.jsx("div",{className:A("tw-animate-pulse tw-rounded tw-bg-themeGray-300 tw-bg-opacity-50 tw-h-6",t),style:e}),ki=e=>r.jsx("img",{...e}),Jf=(e,t)=>e===0?`dtw-z-${(t-1)*10}`:`dtw--ml-2 dtw-z-${(t-e-1)*10}`,ev=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}}},Qe=({symbols:e,size:t="m",className:n=""})=>{const{Image:a=ki}=R(),s=e.join(""),[o,i]=u.useState({[s]:!1}),{height:l,width:c,diameter:d}=ev(t),p=Rf(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:A(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:A("dtw-inline-block dtw-overflow-visible dtw-rounded-full",c,l,Jf(w,e.length)),width:d,height:d,onError:m},w))})},kt=({symbol:e,iconSymbols:t,size:n,symbolClasses:a="dtw-text-sm dtw-font-medium",CustomIcon:s,customTitle:o,className:i})=>{const l=S(),c=o||(e==="all"?l.allAssets:e);return r.jsxs("div",{className:A("dtw-flex dtw-w-full dtw-items-center dtw-space-x-1.5",i),children:[s??r.jsx(Qe,{size:n,symbols:t,className:"dtw-flex-shrink-0"}),r.jsx("div",{className:a,title:c,children:c||r.jsx(Ri,{className:"dtw-w-[70px]"})})]})},tv=({title:e,text:t})=>{const{LogoSpinner:n=Ce}=R();return r.jsx(V.Overlay,{transparent:!0,children:r.jsxs("div",{className:"dtw-flex dtw-flex-col dtw-items-center dtw-rounded-xl dtw-px-5 dtw-py-5",children:[e&&r.jsx("span",{className:"dtw-mb-8 dtw-font-medium dtw-text-[color:var(--panel-secondary-content-color)]",children:e}),r.jsx(n,{className:"dtw-h-[80px] dtw-w-[60px]"}),t&&r.jsx("p",{className:"dtw-mt-6 dtw-text-xl dtw-font-light",children:t})]})})},ft=({className:e,children:t,type:n="error"})=>r.jsx("div",{className:A("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}),Wn=(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}`},Un=e=>e.replace(/,/g,""),nv=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,Un(p));else{const m=Wn(p,a);t?.(m,Un(m))}},l=()=>{if(!n)return;const c=Wn(e,a);t?.(c,Un(c))};return r.jsx("input",{...s,ref:o,type:"text",inputMode:"decimal",value:Wn(e,a),onChange:i,onBlur:l})});nv.displayName="InputNumber";const qt=({className:e})=>r.jsx("div",{className:A("dtw-w-full dtw-h-[1px] dtw-bg-[var(--panel-divider-color)] dtw-shrink-0",e)}),av=()=>{const[e]=ye(),[t,n]=K(),[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})}}},qs=({selected:e=!1,children:t,className:n,onClick:a})=>r.jsx("div",{className:A("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}),sv=0,rv=100,Mi=()=>{const e=S(),{settings:t,tradingType:n,isCustomSlippage:a,invalidSlippage:s,onDefaultSlippageSelect:o,onCustomSlippageSelect:i}=av(),l=Si({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(qs,{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(qs,{selected:a,className:"dtw-w-14",children:r.jsx("input",{className:A("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:sv,max:rv,onChange:i,placeholder:l,defaultValue:a?t.slippage.toString():""})}),r.jsx("span",{children:"%"})]})]})};function Nn(e,t,n){const a=nc[n??h.arbitrum.id]?.blockExplorers?.default?.url;if(a)switch(t){case"transaction":return`${a}/tx/${e}`;default:return`${a}/address/${e}`}}const ov=({batchId:e,updatePendingTransactions:t})=>{const{data:n}=C.useWaitForCallsStatus({id:e,pollingInterval:rr,query:{enabled:!!e}}),a=n?.receipts?.[0]?.transactionHash;u.useEffect(()=>{a&&t({type:"update",txHash:a})},[a,t])},ji=()=>{const[e,t]=re(),n=X()[1],a=bo(),s=vo(),[o]=e,i=o?.batchId,l=o?.txHash,c=o?.action,d=c==="approve",p=o?.chainId,{invalidateTradingQueries:m,invalidateAllowanceQueries:y}=En();ov({batchId:i,updatePendingTransactions:t});const{data:w,error:g}=C.useWaitForTransactionReceipt({hash:l,chainId:p,pollingInterval:rr,query:{enabled:!!l}});u.useEffect(()=>{if(w){const T=w.transactionHash;if(T){const f=Nn(T,"transaction",p);n({link:f,status:"Success",action:c}),t({type:"remove",status:"success",txHash:T}),s?.(w,c,f)}d?y():m()}},[w,d,p,c,s,t,n,y,m]),u.useEffect(()=>{g&&(n({isOpen:!1,status:"None",link:"",action:c,sendTokens:null,receiveTokens:null}),t({type:"remove",status:"fail"}),a?.(g,c,p,l))},[g,d,c,p,l,n,t,a])},Ve=e=>{const[,t]=X(),[,n]=re(),[,a]=N(),s=fo();return u.useCallback((o,i,l)=>{if(i){t({isOpen:!1,status:"None",link:"",sendTokens:null,receiveTokens:null}),n({type:"remove",status:"fail"}),console.debug(`${e} transaction failed`,i),s?.(i);return}if(o){console.debug(`${e} transaction started`,o),n({type:"update",txHash:o});const c=Nn(o,"transaction",l.chainId);t({isOpen:!0,status:"Mining",link:c}),e!=="approve"&&a({value:""})}},[e,n,a,t,s])},qa=({address:e,chainId:t,refetchInterval:n,disabled:a=!1})=>{const{supportedChainId:s}=Ae(),{data:o}=C.useReadContracts({contracts:[{address:U("factory",t??s),abi:Ue,functionName:"getAssetPrice",args:[e],chainId:t}],query:{enabled:!J(e)&&!a,refetchInterval:n}});return Sn(o),o?.[0]?.result},ce=({address:e,chainId:t,refetchInterval:n=We,disabled:a})=>{const s=qa({address:e,chainId:t,refetchInterval:n,disabled:a});return D.formatUnits(s??BigInt(0),k)},Ya=()=>{const[e]=N(),[t]=L(),n=we({address:e.address,symbol:e.symbol}),a=new b(e.value),s=new b(t.value);return(a.gt(0)||s.gt(0))&&a.lte(n??0)};function iv(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 Bi=()=>{const[e]=N(),[t]=L();return{value:iv(e.symbol,t.symbol,e.value,t.value),isLoading:!!t.isLoading}},Le=()=>{const e=!Ge(),[{symbol:t}]=L(),[{isMultiAssetWithdrawalEnabled:n}]=K();return e&&n&&t==="all"},Ka=()=>{const{account:e}=M(),{chainId:t}=x(),n=Le(),[a]=N(),s=new b(a.value||"0").shiftedBy(a.decimals).toFixed(0,b.ROUND_UP),o=U("easySwapperV2",t),i=Xi({tokenAddress:a.address,ownerAddress:e??I,spenderAddress:o,rawAmountToSpend:s,chainId:t,skip:n||s==="0"}),l=Qi({token:a,rawTokenAmount:s,spenderAddress:o});return{canSpend:i,approve:l}},lv=({address:e,chainId:t})=>{const n=C.usePublicClient({chainId:t}),{data:{aaveAssetGuardAddress:a=I}={}}=Ot({address:e,chainId:t});return u.useCallback(async({withdrawAmountD18:s,slippage:o})=>ni({address:a,abi:Tc,functionName:"calculateSwapDataParams",args:[e,s,Aa(o)],publicClient:n}),[a,e,n])},$i=async({assets:e,getSwapQuotes:t,signal:n,buildKey:a})=>{const s=await Promise.all(e.map(o=>t({signal:n,variables:{...o,fromAddress:_r}})));return e.reduce((o,i,l)=>{const c=a(i);return o[c]=s[l]??null,o},{})},Fi=e=>e.length>1?1:0,cv=async({assets:e,getSwapQuotes:t,signal:n})=>$i({assets:e,getSwapQuotes:t,signal:n,buildKey:ao}),dv=(e,t)=>{const n=Ea(),{settings:{selectedAggregators:a}}=te();return Ze.useQuery({queryKey:["getSwapsQuotes",e,a],queryFn:async({signal:s,queryKey:[,o]})=>await $i({assets:o,getSwapQuotes:n,signal:s,buildKey:({sourceAddress:i})=>i}),...t})},pv=new AbortController,uv=pv.signal,mv=({chainId:e})=>{const{account:t=I}=M(),n=Ea();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??I,walletAddress:t,amount:l.toString(),slippage:s.toString()}));return cv({assets:o,getSwapQuotes:n,signal:uv})},[e,n,t])},yv=({address:e,chainId:t})=>{const n=U("aaveLendingPoolV3",t),{data:{getSupportedAssets:a}={}}=Lt({address:e,chainId:t}),s=lv({address:e,chainId:t}),o=mv({chainId:t});return u.useCallback(async({withdrawAmountD18:i,slippage:l,estimate:c,transactionArgs:d})=>{const p=Aa(l);if(!a?.some(T=>z(T,n)))return ms(a,p);const y=await ud(a,n,{withdrawAmountD18:i,slippage:l,fetchAaveSwapParams:s,fetchAaveSwapQuotes:o}),w=cd(y);return await pd(w,y,p,c,d)??ms(a,p)},[n,s,o,a])},wv=()=>{const{defaultWithdrawSlippage:e,defaultSwapTransactionSlippage:t}=H(),n=!Ge(),{isCompleteWithdrawStep:a,isFetching:s}=ut(),[o]=L(),[,i]=K(),l=Vi();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])},hv=()=>{const{account:e=I}=M(),{chainId:t}=x();return C.useReadContract({address:U("easySwapperV2",t),abi:fe,functionName:"withdrawalContracts",chainId:t,args:[e],query:{enabled:!J(e)}})},Qa=()=>{const{chainId:e}=x(),[t]=L(),n=qa({address:t.address,chainId:e}),a=Mt(),s=Ui(),o=new b(s).shiftedBy(k).div(n?.toString()??"1").shiftedBy(t.decimals).toFixed(0,b.ROUND_DOWN),i=new b(o).times(1-pr/100).times(1-a/100).toFixed(0,b.ROUND_DOWN);return{expectedReceiveAmount:o,minExpectedReceiveAmount:i}},Wi=({isClaim:e}={})=>{const t=x(),{data:n=[]}=ue(),{data:a={}}=qe(),[s]=L(),{minExpectedReceiveAmount:o}=Qa(),i=re()[1],l=e?"claim":"swap",c=Ve(l),d=Xa(),{send:p,estimate:m}=ve({contractId:"easySwapperV2",functionName:Kl,onSettled:c}),y=u.useCallback(async()=>{if(e||!d)return[];const w=Object.values(a)[0]?.map(({routerKey:g})=>g);if(!w?.length)return console.warn("[Complete Withdraw] No available routers found for swap"),[];for(const g of w){const T=Object.entries(a).reduce((_,[O,Y])=>{const ae=Y?.find(xe=>xe.routerKey===g);return{..._,[O]:ae}},{}),f=Kc({assets:n,swapData:T,receiveAssetAddress:s.address}),{error:E}=await m(f,o);if(!E)return[f,o]}return console.error("[Complete Withdraw] All routers failed estimation"),[]},[e,d,a,o,n,s.address,m]);return u.useCallback(async()=>{i({type:"add",action:l,symbol:t.symbol,chainId:t.chainId});const w=await y();return console.log("Arguments",w),p(...w)},[l,t.chainId,t.symbol,p,y,i])},Ui=()=>{const{data:e=[]}=ue();return e.reduce((t,{balance:n,price:a})=>t+n*a,0)},zi=({account:e,chainId:t})=>C.useReadContract({address:U("easySwapperV2",t),abi:fe,functionName:"getTrackedAssets",chainId:t,args:[e],query:{enabled:!J(e)}}),gv=({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:U("factory",t),abi:Ue,functionName:"getAssetPrice",chainId:t,args:[n]}]),Tv=3,Hi=({assets:e,chainId:t})=>{const n=u.useCallback(a=>e.map(({token:s,balance:o},i)=>{const l=i*Tv,c=l+1,d=c+1,p=Number(a[c]?.result??k),m=xa[s.toLowerCase()]??a[l]?.result?.toString()??"";return{address:s,symbol:m,decimals:p,rawBalance:o,balance:new b(o.toString()).shiftedBy(-p).toNumber(),price:new b(a[d]?.result?.toString()??0).shiftedBy(-18).toNumber()}}),[e]);return C.useReadContracts({contracts:gv({assets:e,chainId:t}),query:{enabled:e.length>0,select:n}})},ue=()=>{const{account:e=I}=M(),{chainId:t}=x(),{data:n=[]}=zi({account:e,chainId:t});return Hi({assets:n,chainId:t})},ut=()=>{const{data:e=[],isFetching:t}=ue();return{isCompleteWithdrawStep:e?.length>0,isFetching:t}},qe=()=>{const{defaultSwapTransactionSlippage:e}=H(),{chainId:t}=x(),{account:n=I}=M(),[{slippage:a}]=K(),[s]=L(),{data:o=[]}=ue(),i=Xa(),l=u.useMemo(()=>o.filter(({address:c})=>!z(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 dv(l,{enabled:i,refetchInterval:pa})},bv=()=>{const[e,t]=L(),{data:n=[]}=ue(),{data:a,isFetching:s,isError:o}=qe();u.useEffect(()=>{t({isLoading:s})},[s,t]),u.useEffect(()=>{if(n.length===0||s||o)return;const i=n.reduce((l,c)=>{if(z(c.address,e.address))return l.plus(c.rawBalance.toString());const d=a?.[c.address]??[],m=d[Fi(d)]?.destinationAmount??"0";return l.plus(m)},new b(0));t({value:D.formatUnits(BigInt(i.toFixed()),e.decimals)})},[n,o,s,e.address,e.decimals,a,t])},Gi=({withdraw:e,isClaim:t})=>{const n=S(),a=ie(),{account:s}=M(),o=x(),[i]=L(),l=X()[1],c=re()[1],d=yn(),{data:p}=ue(),{isFetching:m}=qe(),y=u.useCallback(async()=>{const w=o.chainId,g=(p??[]).map(({address:f,decimals:E,symbol:_,balance:O})=>({address:f,decimals:E,symbol:_,value:O.toString()})),T=t?null:g.filter(f=>!z(f.address,i.address));l({isOpen:!0,status:"Wallet",action:t?"claim":"swap",link:"",sendTokens:T,receiveTokens:t?g:[i]});try{await e()}catch(f){f instanceof ct&&(a({type:"MERGE_OVERLAY",payload:{type:B.ERROR_NOTIFICATION,isOpen:!0,meta:{error:f.message}}}),d?.(f,o.address,w,s)),l({isOpen:!1,status:"None",link:"",sendTokens:null,receiveTokens:null}),c({type:"remove",status:"fail"})}},[s,p,a,t,d,o.address,o.chainId,i,c,l,e]);return{disabled:t?!1:m,label:t?n.claimAction:n.swapAction,handleTrade:y}},Vi=()=>{const{expectedReceiveAmount:e}=Qa(),[t]=L(),n=new b(t.value||"0").shiftedBy(t.decimals);return e==="0"||n.isZero()?0:n.dividedBy(e).minus(1).times(100).decimalPlaces(2,b.ROUND_DOWN).toNumber()},Xa=()=>{const[e]=L(),{data:t=[]}=ue();return t.length>0&&t.some(({address:n})=>!z(n,e.address))},fv=e=>e.length===0?"":`${Yc.AUTO_COMPLETE_WITHDRAW}-${e.map(t=>`${t.address}-${t.rawBalance.toString()}`).sort().join("_")}`,vv=e=>{const{data:t=[]}=ue(),{data:n,isFetching:a}=qe();u.useEffect(()=>{const s=!!n&&Object.values(n).length>0;try{const o=fv(t),i=o?sessionStorage.getItem(o):!0;if(!s||a||i)return;sessionStorage.setItem(o,"true"),e()}catch(o){console.error(o)}},[t,a,n,e])},Mt=()=>{const{defaultWithdrawSlippage:e}=H(),{isCompleteWithdrawStep:t}=ut(),[{slippage:n,minSlippage:a}]=K();return n==="auto"?t?a??e:e:n};function ia(e,t,n){const[a,s]=u.useState(n),o=mn?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 Za=(e,t)=>{const[n,a]=u.useState(e);return u.useEffect(()=>{const s=setTimeout(()=>{a(e)},t);return()=>{clearTimeout(s)}},[e,t]),n},xv=()=>{const e=x(),[t]=N(),n=Le(),a=Mt(),s=yv(e);return u.useCallback(async o=>{const i=ro(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])},Av=({debounceTime:e}={})=>{const t=x(),n=Le(),[a]=N(),s=Mt(),{data:{getSupportedAssets:o}={}}=Lt(t),i=Za(a.value||"0",e??0);return u.useMemo(()=>{const l=Aa(s),c=ro(i),d=(o??[]).map(p=>({supportedAsset:p,withdrawData:"",slippageTolerance:l}));return n?[c,d]:[t.address,c,d]},[s,i,o,n,t.address])},Sv=e=>typeof e[0]=="string"&&typeof e[1]=="bigint"&&Array.isArray(e[2]),Cv=()=>{const e=x(),t=Dt(),{canSpend:n}=Ka(),a=Av({debounceTime:ir}),s=Sv(a)&&a[1]!==BigInt(0)&&!t&&n,{data:o}=C.useSimulateContract({abi:fe,address:U("easySwapperV2",e.chainId),functionName:mr,args:a,query:{enabled:s}});return Hi({assets:o?.result[0]??[],chainId:e.chainId})},Ja=()=>{const[e]=L(),{data:t=[]}=Cv(),n=Nt();return t?.length===1&&z(t[0]?.address,e.address)&&!n},Ev=()=>{const e=x(),t=Le(),n=Ja(),a=xv(),s=re()[1],o=t?"multi_withdraw":n?"single_withdraw_and_claim":"single_withdraw",i=Ve(o),l=t?ur:n?Yl:mr,{send:c,estimate:d}=ve({contractId:t?"poolLogic":"easySwapperV2",dynamicContractAddress:t?e.address:void 0,functionName:l,onSettled:i});return{withdraw:u.useCallback(async()=>{s({type:"add",action:o,symbol:e.symbol,chainId:e.chainId});const m=await a(d);return console.log("Arguments",m),c(...m)},[s,o,e.symbol,e.chainId,a,d,c]),action:o}},qi=e=>{const t=S(),n=ie(),{account:a}=M(),s=x(),[o]=N(),[i]=L(),[l]=ye(),c=X()[1],d=re()[1],p=yn(),m=Le(),y=Ja(),w=we({symbol:o.symbol,address:o.address}),g=l==="deposit",T=Ya(),f=g?"deposit":m?"multi_withdraw":y?"single_withdraw_and_claim":"single_withdraw",E=async()=>{const _=s.chainId;c({isOpen:!0,status:"Wallet",action:f,link:"",sendTokens:[o],receiveTokens:g||y?[i]:null,meta:g?{}:{withdrawPercentage:o.value&&w?new b(o.value).div(w).toNumber():0}});try{await e()}catch(O){O instanceof ct&&(n({type:"MERGE_OVERLAY",payload:{type:B.ERROR_NOTIFICATION,isOpen:!0,meta:{error:O.message}}}),p?.(O,s.address,_,a)),c({isOpen:!1,status:"None",link:"",sendTokens:null,receiveTokens:null,meta:{}}),d({type:"remove",status:"fail"})}};return{disabled:!T,label:g?t.depositAction:m?t.withdrawAction:y?t.unrollAndClaimAction:t.unrollAction,handleTrade:E}},Iv=1,_v="USD",Dv=({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:Zt({value:s,currency:a}),dailyEarnings:Zt({value:s/365,currency:a}),monthlyEarnings:Zt({value:s/12,currency:a})}},Yi=({currency:e,depositValueInUsd:t,chainId:n,apy:a,disabled:s})=>{const o=e==="ETH"?Qr[n]?.address:e==="BTC"?Xr[n]?.address:void 0,i=ce({address:o??I,chainId:n,disabled:s||!a||!o}),l=o?Number(i):Iv;return u.useMemo(()=>Dv({depositValueInUsd:t,apy:a,apyCurrencyPrice:l,currency:o?e:_v}),[t,a,l,e,o])},Ki=()=>{const e=ye()[0]==="deposit",{chainId:t}=x(),[n]=He(),[a]=N(),s=ce({address:a.address,chainId:t,disabled:!e||!n.apy}),o=Yi({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}},Nv=(e,t)=>{const{settings:{selectedAggregators:n}}=te(),a=Ea();return Ze.useQuery({queryKey:["getSwapQuotes",{...e,fromAddress:_r},n],queryFn:async({signal:s,queryKey:[,o]})=>a({signal:s,variables:o}).then(i=>i?.filter(l=>!!l)??[]),...t})},On=(e={})=>{const t=e?.extendedDebounceTime??!1,[n]=N(),a=Za(n.value,t?ir:or);return{debouncedSendTokenValue:a,isDebouncing:n.value!==a}},Ov=()=>{const e=In(),[{isBatchTransactionsEnabled:t}]=K();return e&&t},Qi=({token:e,rawTokenAmount:t,spenderAddress:n})=>{const a=x(),[{isInfiniteAllowance:s}]=K(),o=re()[1],i=X()[1],l=Ve("approve"),{send:c}=ve({contractId:"erc20",dynamicContractAddress:e.address,functionName:"approve",onSettled:l});return u.useCallback(async()=>(i({isOpen:!0,status:"Wallet",link:"",action:"approve",sendTokens:[{symbol:e.symbol,address:e.address,decimals:e.decimals,value:""}],receiveTokens:null,meta:{}}),o({type:"add",action:"approve",symbol:e.symbol,chainId:a.chainId}),c(n,s?Fe:t)),[s,a.chainId,t,c,n,e.address,e.decimals,e.symbol,o,i])},Xi=({rawAmountToSpend:e,tokenAddress:t,ownerAddress:n,spenderAddress:a,chainId:s,skip:o=!1})=>{const{data:i}=wn({tokenAddress:t,ownerAddress:n,spenderAddress:a,chainId:s,skip:o});return u.useMemo(()=>o?!0:!i||i===BigInt(0)?!1:!e||e==="0"?!0:new b(i.toString()).gte(e),[e,i,o])},Pv=()=>{const[{isInfiniteAllowance:e},t]=K(),n=ze(),a=u.useCallback(s=>{t({isInfiniteAllowance:s}),n?.(Q.INFINITE_ALLOWANCE_CHANGE,{[Te.IS_INFINITE.NAME]:s?1:0})},[t,n]);return u.useMemo(()=>[e,a],[e,a])},Zi=()=>{const e=S(),[t,n]=Pv();return r.jsx(Dn,{defaultEnabled:t,onChange:n,label:e.infinite})},Lv=()=>{const[{isBatchTransactionsEnabled:e},t]=K(),n=ze(),a=u.useCallback(s=>{t({isBatchTransactionsEnabled:s}),ld(s),n?.(Q.BATCH_TRANSACTIONS_CHANGE,{[Te.IS_BATCH_TRANSACTIONS_ENABLED.NAME]:s?1:0})},[t,n]);return u.useMemo(()=>[e,a],[e,a])},Ji=()=>{const e=S(),[t,n]=Lv();return r.jsx(Dn,{defaultEnabled:t,onChange:n,label:e.batchTransactionsSwitchLabel})},Rv=()=>{const[{availableAggregators:e,selectedAggregators:t},n]=K(),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}},el=()=>{const e=S(),{availableAggregators:t,selectedAggregators:n,onAggregatorToggle:a}=Rv();return t.length<=1?null:r.jsx(Be,{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(Dn,{defaultEnabled:n.includes(s),onChange:()=>a(s),size:"sm"})]},s))})})},kv=()=>{const e=In(),t=S();return r.jsxs(r.Fragment,{children:[r.jsx(Be,{label:t.slippageTolerance,tooltipText:t.depositSlippageWarning,children:r.jsx(Mi,{})}),r.jsx(Be,{label:t.tokenAllowance,tooltipText:t.toggleTokenApprovalAmount,children:r.jsx(Zi,{})}),e&&r.jsx(Be,{label:t.batchTransactionsLabel,tooltipText:t.batchTransactionsTooltip,children:r.jsx(Ji,{})}),r.jsx(el,{})]})},Mv=()=>{const{chainId:e}=x(),[t]=N(),n=U("easySwapperV2",e),a=new b(t.value||"0").shiftedBy(t.decimals).toFixed(0,b.ROUND_UP);return u.useMemo(()=>({address:t.address,abi:D.erc20Abi,functionName:"approve",chainId:e,args:[n,a]}),[e,a,t.address,n])},jv=()=>{const{chainId:e,address:t}=x(),{data:{isCustomCooldownDepositAllowed:n}={}}=Ot({address:t,chainId:e});return n!==!1},Ys=(e,t)=>e.length?e.find(({tokenAddress:a})=>Object.values(Fc[t]??{}).some(s=>z(s.address,a)))?.tokenAddress??e[0]?.tokenAddress:null,mt=()=>{const[e]=N(),{chainId:t,address:n}=x(),a=dt({address:n,chainId:t}),s=jv();return u.useMemo(()=>{const o=a.filter(({isDeposit:c})=>c);if(un(e.symbol,t)){const c=o.find(({tokenName:d})=>Ye[t]?.wrappedNativeTokenName===d);return c?{depositMethod:s?Ee.NATIVE_CUSTOM:Ee.NATIVE,vaultDepositTokenAddress:c.tokenAddress}:{depositMethod:s?Ee.ZAP_NATIVE_DEPOSIT_CUSTOM:Ee.ZAP_NATIVE_DEPOSIT,vaultDepositTokenAddress:Ys(o,t)??e.address}}const l=o.find(({tokenAddress:c})=>z(c,e.address));return l?{depositMethod:s?Ee.DEPOSIT_CUSTOM:Ee.DEPOSIT,vaultDepositTokenAddress:l.tokenAddress}:{depositMethod:s?Ee.ZAP_DEPOSIT_CUSTOM:Ee.ZAP_DEPOSIT,vaultDepositTokenAddress:Ys(o,t)??e.address}},[t,s,a,e.address,e.symbol])},jt=()=>{const[e]=N(),{vaultDepositTokenAddress:t}=mt();return!z(e.address,t)},es=()=>{const{defaultSwapTransactionSlippage:e}=H(),[{slippage:t}]=K(),n=jt();return t==="auto"?n?e:dn:t},Pn=()=>{const{account:e=I}=M(),{chainId:t}=x(),[n]=N(),{debouncedSendTokenValue:a}=On(),{vaultDepositTokenAddress:s}=mt(),o=jt();return Nv({sourceAddress:n.address,destinationAddress:s,amount:new b(a).shiftedBy(n.decimals).toFixed(0),chainId:t,slippage:"33",walletAddress:e},{enabled:o&&!!a,refetchInterval:pa})},tl=()=>{const{defaultNoSwapMinDepositAmountGap:e}=H(),{address:t,chainId:n}=x(),[a]=N(),[s]=L(),{data:{entryFee:o}={}}=oe({address:t,chainId:n}),i=De(Number(o??"0"),me),[{slippage:l}]=K(),c=l==="auto",d=es(),p=jt(),m=+ce({address:a.address,chainId:n}),y=+de({address:t,chainId:n});if(p){const T=Number(a.value||0)*m*(1-i/100)/y;return new b(T).shiftedBy(s.decimals).times(1-d/100).toFixed(0)}const w=c?e:d;return new b(s.value||"0").shiftedBy(s.decimals).times(1-w/100).toFixed(0)},Bv=({isDepositWithSwapTransaction:e,sendTokenAddress:t,sendTokenValue:n})=>{const{chainId:a}=x(),s=+ce({address:t,chainId:a}),{vaultDepositTokenAddress:o}=mt(),{data:i}=C.useReadContract({address:o,abi:D.erc20Abi,functionName:"decimals",chainId:a}),l=+ce({address:o,chainId:a,refetchInterval:We,disabled:!e}),c=Number(n||"0")*s;return i&&l!==0?new b(c/l).shiftedBy(i).times(1-pr/100).toFixed(0):"0"},nl=()=>{const[e]=N(),{debouncedSendTokenValue:t}=On(),n=jt(),a=Bv({isDepositWithSwapTransaction:n,sendTokenAddress:e.address,sendTokenValue:t});return n?a:new b(t||"0").shiftedBy(e.decimals).toFixed(0)},la=(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}},$v=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[Fi(t)],w=cs({vaultAddress:i,sendTokenAddress:s,sendTokenAmount:p,minVaultTokensReceivedAmount:d,vaultDepositTokenAddress:l,swapData:y?.rawTransaction.data??"0x",routerKey:y?.routerKey,swapDestinationAmount:c,swapSlippage:a});return la(o,e,w)}let m=[];for(const y of t){const w=cs({vaultAddress:i,sendTokenAddress:s,sendTokenAmount:p,minVaultTokensReceivedAmount:d,vaultDepositTokenAddress:l,swapData:y?.rawTransaction.data??"0x",routerKey:y?.routerKey,swapDestinationAmount:c,swapSlippage:a});m=la(o,e,w);const{error:g}=await n(...m);if(!g)return m}return console.warn("[Deposit] No valid routers found for swap"),m},Fv=e=>e==="zapNativeDeposit"||e==="zapNativeDepositWithCustomCooldown"||e==="zapDeposit"||e==="zapDepositWithCustomCooldown",Wv=({depositMethod:e,vaultDepositTokenAddress:t})=>{const{address:n}=x(),[a]=N(),s=a.value||"0",o=new b(s).shiftedBy(a.decimals).toFixed(0),i=nl(),{data:l}=Pn(),c=tl(),d=es();return u.useCallback(async p=>{const m={vaultAddress:n,vaultDepositTokenAddress:t,vaultDepositTokenAmount:i,minVaultTokensReceivedAmount:c,sendTokenAmount:o},y=Fv(e);try{return y?$v({baseArgs:m,swapQuotes:l,estimate:p,depositSlippage:d,sendTokenAddress:a.address,depositMethod:e}):la(e,m)}catch(w){return console.error(w),[]}},[n,e,d,c,a.address,o,l,t,i])},al=()=>{const{chainId:e}=x(),[t]=L(),n=re()[1],{depositMethod:a,vaultDepositTokenAddress:s}=mt(),o=Wv({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}},Uv=e=>{const[,t]=X(),[,n]=re(),[,a]=N(),[,s]=K(),o=fo();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])},zv=({address:e,abi:t,functionName:n,args:a,value:s})=>({to:e,data:D.encodeFunctionData({abi:t,functionName:n,args:a}),value:s}),Hv=({onSettled:e})=>{const{sendCalls:t}=C.useSendCalls({mutation:{onSettled:e}});return u.useCallback(async n=>t({calls:n.map(zv),forceAtomic:!0}),[t])},Gv="deposit",Vv=()=>{const{chainId:e,depositMethod:t,buildDepositTransactionArgs:n,addPendingTransaction:a}=al(),s=Mv(),o=Uv(Gv),i=Hv({onSettled:o});return u.useCallback(async()=>{a();const l=await n(),c={address:U("easySwapperV2",e),abi:fe,functionName:t,args:l};return i([s,c])},[a,e,t,n,i,s])},qv="deposit",Yv=()=>{const{depositMethod:e,buildDepositTransactionArgs:t,addPendingTransaction:n}=al(),a=Ve(qv),{send:s,estimate:o}=ve({contractId:"easySwapperV2",functionName:e,onSettled:a});return u.useCallback(async()=>{n();const i=await t(o);return s(...i)},[n,s,t,o])},Kv=()=>{const{account:e=I}=M(),{chainId:t}=x(),[n]=N(),a=U("easySwapperV2",t),s=new b(n.value||"0").shiftedBy(n.decimals).toFixed(0,b.ROUND_UP),o=Xi({tokenAddress:n.address,ownerAddress:e,spenderAddress:a,rawAmountToSpend:s,chainId:t,skip:un(n.symbol,t)||s==="0"});return{approve:Qi({token:n,rawTokenAmount:s,spenderAddress:a}),canSpend:o}},Qv=({address:e,chainId:t})=>{const[n]=N(),a=Ge(),{vaultDepositTokenAddress:s}=mt(),o=nl(),i=!!(o&&+o>0),l=C.useReadContract({address:U("easySwapperV2",t),abi:fe,functionName:"depositQuote",args:[e,s,BigInt(o??0)],chainId:t,query:{enabled:a&&i&&!!n.address&&!!o,refetchInterval:We}});return ja(l),l},Xv=()=>{const{address:e,chainId:t}=x(),n=Ge(),[a]=N(),[s,o]=L(),[,i]=K(),{isDebouncing:l,debouncedSendTokenValue:c}=On(),{isFetching:d}=Pn(),{data:p,isFetching:m}=Qv({address:e,chainId:t}),y=d||m||l;u.useEffect(()=>{if(!n||y)return;const w=p?new b(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])},sl=(e={})=>{const{address:t,chainId:n}=x(),{data:a}=oe({address:t,chainId:n}),[s]=N(),[o]=L(),i=ce({address:s.address,chainId:n}),l=de({address:t,chainId:n}),c=e.includesEntryFee?De(Number(a?.entryFee??"0"),me):0;return u.useMemo(()=>{const d=Number(s.value||"0"),p=new b(d).times(i??"0").times(1-c/100),m=Number(o.value||"0"),y=new b(m).times(l??"0");return p.isZero()||y.isZero()?0:p.decimalPlaces(Ct(d)).comparedTo(y.decimalPlaces(Ct(m)))&&p.isGreaterThan(0)?y.dividedBy(p).minus(1).times(100).decimalPlaces(2,b.ROUND_DOWN).toNumber():0},[c,o.value,s.value,i,l])},Zv=()=>{const e=Ge(),[t]=L(),[,n]=K(),{isDebouncing:a}=On({extendedDebounceTime:!0}),s=es(),o=sl({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 Jv(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 ex=Jv;function tx(e){return e!==e}var nx=tx;function ax(e,t,n){for(var a=n-1,s=e.length;++a<s;)if(e[a]===t)return a;return-1}var sx=ax,rx=ex,ox=nx,ix=sx;function lx(e,t,n){return t===t?ix(e,t,n):rx(e,ox,n)}var cx=lx,dx=cx;function px(e,t){var n=e==null?0:e.length;return!!n&&dx(e,t,0)>-1}var ux=px;function mx(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 yx=mx;function wx(){}var hx=wx,zn=Fo,gx=hx,Tx=Oa,bx=1/0,fx=zn&&1/Tx(new zn([,-0]))[1]==bx?function(e){return new zn(e)}:gx,vx=fx,xx=Po,Ax=ux,Sx=yx,Cx=Lo,Ex=vx,Ix=Oa,_x=200;function Dx(e,t,n){var a=-1,s=Ax,o=e.length,i=!0,l=[],c=l;if(n)i=!1,s=Sx;else if(o>=_x){var d=t?null:Ex(e);if(d)return Ix(d);i=!1,s=Cx,c=new xx}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 Nx=Dx,Ox=Qo,Px=Nx;function Lx(e,t){return e&&e.length?Px(e,Ox(t)):[]}var Rx=Lx;const kx=hn(Rx),Ln=()=>{const{address:e,chainId:t,depositParams:n}=x(),{account:a}=M(),s=dt({address:e,chainId:t}),o=Nt(),[{isCustomDepositOptionsDisabled:i}]=K(),[l]=Eo(),c=u.useMemo(()=>kx([...s.filter(({isDeposit:y})=>y).map(({tokenAddress:y,tokenName:w,precision:g})=>({address:y.toLowerCase(),symbol:w,decimals:g})),...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}=C.useReadContracts({contracts:c.map(({address:y})=>({address:y,abi:D.erc20Abi,functionName:"balanceOf",args:[a??I],chainId:t})),query:{enabled:p}});return Sn(m),u.useMemo(()=>{if(!d)return[];const y=[];for(let T=0;T<c.length;T++)y[T]={value:"",address:c[T]?.address??I,symbol:c[T]?.symbol??c[T]?.address??I,balance:m?.[T]?.result?$e((m?.[T]?.result).toString()??"0",c[T]?.decimals??k):0,decimals:c[T]?.decimals??k};const w=y.slice().sort((T,f)=>T.balance&&f.balance?f.balance-T.balance:0),g=w.find(({symbol:T})=>T===n.defaultDepositTokenSymbol);return[...g?[g]:[],...w.filter(({symbol:T})=>T!==n.defaultDepositTokenSymbol),...o||i?[]:[{value:"",address:Ye[t]?.address??I,symbol:Ye[t]?.nativeTokenSymbol??"",decimals:Ye[t]?.decimals??k}]]},[d,o,i,t,c,m,n.defaultDepositTokenSymbol])},Mx=()=>{const e=x(),[t]=Ln(),n=N()[1],[a]=ye();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])},jx=()=>{const{chainId:e,address:t,deprecated:n}=x(),{data:{isPrivateVault:a}={isPrivateVault:!1}}=oe({address:t,chainId:e}),s=a||n,o=ii({address:t,chainId:e});return{isVaultDepositLocked:s,isAccountWhitelisted:o}},rl=()=>{const{defaultLockTime:e}=H(),{chainId:t,address:n}=x(),{data:{customCooldown:a}={}}=Ot({address:n,chainId:t}),{depositMethod:s}=mt(),o=a?At.formatDuration({minutes:Number(a)/60}):e;switch(s){case"depositWithCustomCooldown":case"nativeDepositWithCustomCooldown":case"zapDepositWithCustomCooldown":case"zapNativeDepositWithCustomCooldown":return o;default:return e}},Bx="1",$x=()=>{const{account:e=I}=M(),{address:t,chainId:n}=x(),[a]=L(),s=de({address:t,chainId:n}),{minDepositUSD:o}=Ua(t,n),{data:i}=yi({address:t,chainId:n,account:e}),l=i?.balanceInUsdNumber??0,c=s==="0"?Bx:s,d=Math.max(0,o-l),p=new b(a.value||"0").multipliedBy(c);return{requiresMinDeposit:p.isZero()?!1:p.lte(d),requiredMinDepositAmount:ee({value:d})}},yt=e=>{const[{action:t,status:n}]=X();return t===e&&(n==="Wallet"||n==="Mining")},ol=e=>{const t=ie(),{onAcceptTermsOfUse:n}=Ai(),{termsOfUseAccepted:a}=H(),{disabled:s,label:o,handleTrade:i}=qi(e),{isError:l,isLoading:c}=Pn(),d=yt("deposit");return{handleClick:()=>{if(l){t({type:"MERGE_OVERLAY",payload:{type:B.ERROR_NOTIFICATION,isOpen:!0,meta:{error:Rr}}});return}a?i():t({type:"MERGE_OVERLAY",payload:{type:B.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}},Fx=()=>{const{ActionButton:e=q}=R(),t=Vv(),{handleClick:n,label:a,disabled:s,isLoading:o}=ol(t);return r.jsx(e,{onClick:n,disabled:s,loading:o,children:a})},Wx=()=>{const{ActionButton:e=q}=R(),t=Yv(),{handleClick:n,label:a,disabled:s,isLoading:o}=ol(t);return r.jsx(e,{onClick:n,disabled:s,loading:o,children:a})},Ux=()=>{const e=Ov(),{deprecated:t,symbol:n,maintenance:a,maintenanceDeposits:s}=x(),[o]=N(),i=Dt(),{isVaultDepositLocked:l,isAccountWhitelisted:c}=jx(),{approve:d,canSpend:p}=Kv(),{requiresHighSlippageConfirm:m,confirmHighSlippage:y,slippageToBeUsed:w}=Ha(),{requiresMinDeposit:g,requiredMinDepositAmount:T}=$x();return{requiresMinDeposit:g,requiresWhitelist:l&&!c,requiresApprove:!p,requiresHighSlippageConfirm:m,sendTokenSymbol:o.symbol,poolSymbol:n,requiredMinDepositAmount:T,deprecated:t,approve:d,confirmHighSlippage:y,slippageToBeUsed:w,maintenance:a||s,isBatchContractWritesTrading:e,insufficientBalance:i}},zx=()=>{const{ActionButton:e=q}=R(),t=S(),{status:n}=C.useConnect(),{onConnect:a}=Ai();return r.jsx(e,{onClick:a,className:"dtw-whitespace-nowrap dtw-text-sm",loading:n==="pending",children:t.connectWallet})},Hx=()=>{const{ActionButton:e=q}=R(),{switchNetwork:t}=Ae(),{chainId:n}=x(),a=S(),s=()=>{t?.({chainId:n})};return r.jsx(e,{onClick:s,children:a.switchNetwork})},il=()=>{const{account:e}=M(),{chainId:t}=Ae(),n=x();return{isDisconnected:!e,isWrongNetwork:t!==n.chainId}},ts=({children:e})=>{const{isDisconnected:t,isWrongNetwork:n}=il();return t?r.jsx(zx,{}):n?r.jsx(Hx,{}):e},Gx=()=>{const e=Ya(),t=yt("approve");return{disabled:!e,isLoading:t}},ll=({onApprove:e,symbol:t})=>{const{ActionButton:n=q}=R(),a=S(),{disabled:s,isLoading:o}=Gx();return r.jsx(n,{disabled:s,onClick:e,loading:o,children:r.jsxs("span",{children:[a.approve," ",t]})})},Vx=({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)},pa);return()=>clearTimeout(i)},[a]),{disabled:n||a,tooltipText:t,handleClick:o}},cl=e=>{const{disabled:t,tooltipText:n,handleClick:a}=Vx(e);return r.jsx(Fa,{text:n,children:r.jsx(ln,{Icon:Ne.ArrowPathIcon,onClick:a,disabled:t,containerClassName:"!dtw-self-center",className:A("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})})})},qx=()=>{const{refetch:e,isFetched:t}=Pn(),{invalidateTradingQueries:n}=En();return{handleSwapQuoteReload:()=>{n(),e()},disabled:!t}},Yx=()=>{const e=S(),{handleSwapQuoteReload:t,disabled:n}=qx();return r.jsx(cl,{tooltipText:e.refreshSwapQuoteTooltip,onClick:t,disabled:n})},Kx=()=>{const{refetch:e,isFetched:t}=qe(),{invalidateTradingQueries:n}=En();return{handleSwapQuoteReload:()=>{n(),e()},disabled:!t}},Qx=()=>{const e=S(),{handleSwapQuoteReload:t,disabled:n}=Kx();return r.jsx(cl,{tooltipText:e.refreshSwapQuoteTooltip,onClick:t,disabled:n})},Xx=()=>Ge()?r.jsx(Yx,{}):r.jsx(Qx,{}),dl=({children:e,...t})=>{const{ActionButton:n=q}=R(),{openLimitSellOverlay:a,displayLimitSellOverlay:s}=$f();return s?r.jsx(n,{...t,onClick:a,children:e}):null},Zx=()=>{const{ActionButton:e=q}=R(),t=S(),n=Ga("deposit"),{requiresMinDeposit:a,requiredMinDepositAmount:s,requiresApprove:o,requiresWhitelist:i,requiresHighSlippageConfirm:l,deprecated:c=!1,poolSymbol:d,sendTokenSymbol:p,slippageToBeUsed:m,approve:y,confirmHighSlippage:w,maintenance:g,isBatchContractWritesTrading:T,insufficientBalance:f}=Ux();return a?r.jsx(e,{disabled:!0,children:t.minimumPurchase.replace("{value}",s)}):i||g?r.jsx(oa,{promptText:c?t.poolIsInactive.replace("{poolSymbol}",d):g?t.poolDepositsAreMaintenance.replace("{poolSymbol}",d):t.poolIsPrivate,children:n}):f?r.jsx(e,{disabled:!0,children:t.insufficientBalance}):l?r.jsx(e,{onClick:w,children:t.confirmMaxSlippage.replace("{slippagePercentage}",`${Math.abs(m)}`)}):o?T?r.jsx(Fx,{}):r.jsx(ll,{symbol:p,onApprove:y}):r.jsx(Wx,{})},Jx=()=>{const[e,t]=N(),{chainId:n}=x(),a=ce({address:e.address,chainId:n}),s=we({symbol:e.symbol,address:e.address});return{...e,price:a,balance:s,updater:t}},eA=()=>{const{address:e,chainId:t}=x(),[n]=L(),a=de({address:e,chainId:t});return{...n,price:a}},tA=()=>{const e=Jx(),t=eA(),n=ze(),a=sl(),[{minSlippage:s}]=K();return{autoFocus:!1,sendToken:e,receiveToken:t,tradingPriceDiff:a,minSlippage:s,onInputFocus:()=>{n?.(Q.INVEST_INPUT_FOCUS,{symbol:e.symbol,address:Ca(e.address)})},onInputChange:l=>{e.updater({value:l})}}},cn=({children:e})=>r.jsx("table",{className:"dtw-min-w-full dtw-border-separate",style:{borderSpacing:"0px 0.25rem"},children:r.jsx("tbody",{children:e})}),pl=({children:e})=>{const t=S();return r.jsx(P.Disclosure,{children:({open:n})=>r.jsxs(r.Fragment,{children:[r.jsxs(P.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(Ne.ChevronDownIcon,{className:A("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(P.Transition,{show:n,children:r.jsx(P.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})})]})})},nA=e=>{const{address:t,chainId:n}=x(),[{value:a}]=N(),s=ci({vaultTokensAmount:a,address:t,chainId:n}),o=e?s.length:gr,i=s.find(({tokenAddress:p})=>Jr.some(m=>z(p,m))),l=!!i&&i.amount!=="0",{firstPart:c,secondPart:d}=so(s,o);return{visibleAssets:c,hiddenAssets:d,showUnitWithdrawalTip:l,unitSymbol:i?.tokenName,unitAddress:i?.tokenAddress??I}},aA=({symbol:e})=>{const t=S();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(Qe,{symbols:[e],size:"xs"})," ",e]})},ul=({className:e,showFraction:t=!0,iconSize:n,showAllAsset:a=!1})=>{const{visibleAssets:s,hiddenAssets:o,showUnitWithdrawalTip:i,unitSymbol:l,unitAddress:c}=nA(a),d=u.useCallback(({fraction:p,fractionUsd:m,tokenName:y,asset:w,tokenAddress:g})=>{const T=mo(g);return r.jsxs("tr",{children:[r.jsxs("td",{style:{width:150,maxWidth:150},children:[r.jsx(kt,{symbol:y,iconSymbols:w.iconSymbols,symbolClasses:"dtw-text-xs dtw-font-bold",size:n}),T&&r.jsx(aA,{symbol:yo(g).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:A("dtw-text-sm dtw-font-light",e),children:s.length>0?r.jsxs(r.Fragment,{children:[r.jsx(cn,{children:s.map(d)}),o.length>0&&r.jsx(pl,{children:r.jsx(cn,{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:nd(c),target:"_blank",rel:"noreferrer",children:["Flat Money ",r.jsx(ne.ArrowTopRightOnSquareIcon,{className:"dtw-w-3"})]})]})]}):r.jsx(Ri,{})})},sA=({symbol:e})=>{const t=et(),n=ie(),{standalone:a}=H(),s=t.some(p=>p.symbol===e),o=e==="all",i=xo(),l=s&&t.length===1;return{isAllSymbol:o,onClick:()=>{i?.({isOpen:!0,entity:s?"pool":"token"}),a&&n({type:"MERGE_OVERLAY",payload:{type:s?B.POOL_SELECT:B.TOKEN_SELECT,isOpen:!0}})},disabled:l,hideTokenIcon:a&&s}},rA=({symbol:e})=>{const{isAllSymbol:t,onClick:n,disabled:a,hideTokenIcon:s}=sA({symbol:e}),o=S();return r.jsxs("button",{className:A("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(kt,{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(Jt.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(Jt.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 oA(e,t){const n=new b(e);return t&&n.gt(0)?n.toFixed(6):e}const iA=e=>{e.currentTarget.blur()},lA=({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),p=u.useMemo(()=>{const g=Number(t||0)*Number(n||0);if(!e||isNaN(g))return"";const T=ee({value:g,maximumFractionDigits:Ct(g)});return a?`${T} (${a>0?"+":""}${a}% ${s===$.ERROR?"⚠":""})`:T},[t,n,a,e,s]),m=()=>{d.current?.focus()},y=g=>{o&&o(g.target.value)},w=()=>{o&&i&&o(i)};return{inputRef:d,usdAmount:p,value:oA(t,c),autoFocus:l,onContainerClick:m,onMaxBalanceClick:w,onInputChange:y}},Et=e=>{const{inputRef:t,usdAmount:n,autoFocus:a,value:s,onContainerClick:o,onMaxBalanceClick:i,onInputChange:l}=lA(e),{label:c,assetSymbol:d,onInputFocus:p,disabled:m=!1,displayMax:y=!1,displayCalculatedValue:w=!1,type:g=$.DEFAULT,isLoading:T=!1,children:f}=e,E=A({"dtw-text-[color:var(--panel-error-content-color)]":g===$.ERROR&&!T,"dtw-text-[color:var(--panel-warning-content-color)]":g===$.WARNING&&!T});return r.jsxs("div",{className:A("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)]":g===$.DEFAULT||T,"dtw-border-[color:var(--panel-error-content-color)]":g===$.ERROR&&!T,"dtw-border-[color:var(--panel-warning-content-color)]":g===$.WARNING&&!T}),onClick:o,children:[r.jsx("span",{className:A(E,{"dtw-text-[color:var(--panel-secondary-content-color)] dtw-text-[length:var(--panel-label-font-size)] dtw-leading-[var(--panel-label-line-height,var(--panel-line-height-xs))]":T||g===$.DEFAULT}),children:c}),r.jsxs("div",{className:A("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(ul,{iconSize:"sm"}):r.jsx("input",{className:A("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",E),ref:t,autoFocus:a,type:"number",min:0,value:s,onChange:l,onFocus:p,placeholder:"0",disabled:m,onWheelCapture:iA})}),r.jsx(rA,{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:T?r.jsx("div",{className:"dtw-h-[18px]",children:r.jsx(Ce,{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("input",{className:A("dtw-appearance-none dtw-bg-transparent dtw-outline-none dtw-pointer-events-none dtw-flex-1 dtw-py-[1px]",{"dtw-text-[color:var(--panel-input-loading-content-color,var(--panel-loading-content-color))]":T,"!dtw-text-[color:var(--panel-secondary-content-color)] dtw-text-[length:var(--panel-label-font-size)] !dtw-leading-[var(--panel-label-line-height,var(--panel-line-height-xs))]":!T&&g===$.DEFAULT},E),value:n,disabled:!0})})}),f,y&&r.jsx(Zf,{onClick:i})]})]})},cA=()=>{const{stablePrecision:e,defaultPrecision:t}=H(),[{symbol:n,address:a}]=N(),s=we({symbol:n,address:a,watch:!0});return{formattedBalance:uo({balance:s,symbol:n,precision:io(n)?e:t,truncateSymbol:!0}),symbol:n}},ml=()=>{const{formattedBalance:e,symbol:t}=cA();return r.jsx(Li,{balance:e,symbol:t})},dA=()=>{const{stablePrecision:e,defaultPrecision:t}=H(),[{symbol:n,address:a}]=L(),s=we({symbol:n,address:a,watch:!0});return{formattedBalance:uo({balance:s,symbol:n,precision:io(n)?e:t,truncateSymbol:!0}),symbol:n}},yl=()=>{const{formattedBalance:e,symbol:t}=dA();return r.jsx(Li,{balance:e,symbol:t})},ns=()=>{const e=x(),[t]=Ln(),{isAllAssetsWithdrawOptionDefault:n}=H(),{data:a=[]}=ue(),s=a.length>0,{data:o}=za(e),i=ye()[1],l=N()[1],c=L()[1],d=()=>{l({...t,value:"",isLoading:!t}),c({address:e.address,symbol:e.symbol,decimals:k,value:""})},p=()=>{const{customTokens:m,defaultWithdrawTokenSymbol:y}=e.withdrawParams,w=m.find(({symbol:T})=>T===y)??m[0]??en,g=s?w:o||n?en:w;l({address:e.address,symbol:e.symbol,decimals:k,value:""}),c({...g,value:"",isLoading:!1})};return m=>{switch(i(m),m){case"deposit":return d();case"withdraw":return p()}}},pA=()=>{ji(),Mx(),di(),ue()},Xe=["deposit","withdraw"],uA=()=>{const[e]=ye(),t=ns();return{handleClick:()=>{const a=Xe.find(s=>s!==e);a&&t(a)}}},wl=()=>{const{handleClick:e}=uA();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(Ne.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"})})})},mA=()=>{const{sendToken:e,receiveToken:t,autoFocus:n,tradingPriceDiff:a,minSlippage:s,onInputFocus:o,onInputChange:i}=tA(),l=Rt(s??0),c=S();return r.jsxs(r.Fragment,{children:[r.jsx(Et,{label:c.send,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(ml,{})}),r.jsxs(Et,{label:c.receiveEstimated,assetInput:t.value,assetSymbol:t.symbol,assetPrice:t.price??"",displayCalculatedValue:!0,disabled:!0,tradingPriceDiff:a,type:l,isLoading:t.isLoading,children:[r.jsx(yl,{}),r.jsx(wl,{})]})]})},yA=()=>{const{address:e,chainId:t}=x(),n=hi({address:e,chainId:t}),[a]=L();if(!n)return{isMaxSupplyCapReached:!1,supplyCapInUsd:""};const{totalSupplyNumber:s,maxSupplyCapNumber:o,remainingSupplyCapInUsd:i}=n,l=Number(a.value||"0"),c=s+l>o,d=ee({value:i,maximumFractionDigits:0,minimumFractionDigits:0});return{isMaxSupplyCapReached:c,supplyCapInUsd:d}},wA=()=>{const e=S(),[{slippage:t,minSlippage:n,isMaxSlippageLoading:a}]=K(),s=t==="auto",o=tl(),[i]=L(),{address:l,chainId:c}=x(),{entryFee:d}=_n({address:l,chainId:c}),{minDepositUSD:p}=Ua(l,c),m=Ki(),y=rl(),w=jt(),g=p?ee({value:p,minimumFractionDigits:0}):"",T=Rt(s?n??0:t),f=Si({tradingType:"deposit",slippage:t,minSlippage:n}),E=T===$.DEFAULT?e.depositSlippageWarning:e.highSlippageWarning,_=Oe({value:new b(o).shiftedBy(-18).toFixed(),decimals:4});return{projectedEarnings:m,themeType:T,slippageTooltipText:E,isMaxSlippageLoading:a,slippagePlaceholder:f,minReceive:`${_} ${i.symbol.toUpperCase()}`,entryFee:d,entryFeeTooltipText:e.entryFeeExplanation,minDeposit:g,lockTime:y,showMinimumReceivedAmount:w}},as=({className:e})=>{const{value:t,isLoading:n}=Bi();return r.jsxs("div",{className:A("dtw-flex dtw-h-[var(--panel-icon-secondary-size)] dtw-justify-end dtw-gap-x-2",e),children:[n&&r.jsx(Ce,{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:A("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})]})},hA=()=>{const e=S(),{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}=wA(),g=a?[{tooltipText:e.projectedYearlyEarningsTooltip,label:e.yearlyEarnings,value:t,emphasised:!0},{tooltipText:e.projectedDailyEarningsTooltip,label:e.dailyEarnings,value:n,emphasised:!0}]:[],T=u.useMemo(()=>{const f=[{tooltipText:e.exchangeRate,label:e.rate,value:r.jsx(as,{})},{tooltipText:s,label:e.maxSlippage,value:r.jsxs("div",{className:"dtw-flex dtw-gap-1",children:[i&&r.jsx(Ce,{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:A({"dtw-text-[color:var(--panel-loading-content-color)]":i}),children:[o,"%"]})]})}];return w&&f.push({tooltipText:e.minReceiveAmount,label:e.minReceived,value:l}),f.push({tooltipText:p,label:e.entryFee,value:d}),m&&f.push({tooltipText:e.minDepositUsd,label:e.minDeposit,value:m}),f.push({tooltipText:e.tokensLockTime.replace("{lockTime}",y),label:e.cooldown,value:y}),f},[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(Va,{staticItems:g,collapseItems:T,themeType:c})},gA=({children:e})=>{const{DepositMetaInfo:t,MaxSupplyReachedAlert:n}=R(),{isMaxSupplyCapReached:a,supplyCapInUsd:s}=yA();return r.jsxs(V.Meta,{children:[a&&!!n&&r.jsx(n,{supplyCapInUsd:s}),r.jsx(hA,{}),t&&r.jsx(t,{}),r.jsx("div",{className:"dtw-sticky dtw-bottom-0 dtw-bg-[var(--panel-meta-action-panel-bg)]",children:e})]})},TA=()=>{Xv(),Zv()},bA=()=>{TA();const{isGeoBlocked:e,isSanctioned:t}=H(),{GeoBlockAlert:n,SanctionedAlert:a,CustomDepositMeta:s}=R(),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(V.InputGroup,{children:r.jsx(mA,{})}),s&&r.jsx(s,{}),r.jsx(gA,{children:o?i.map(({Component:l,key:c})=>l&&r.jsx(l,{},c)):r.jsx(r.Fragment,{children:r.jsx(ts,{children:r.jsx(Zx,{})})})})]})},fA=()=>r.jsx(V.Panel,{children:r.jsx(bA,{})}),vA=e=>Object.keys(B).some(t=>t===e),xA=({children:e})=>{const t=Ni();let n=null;return u.Children.forEach(e,a=>{if(u.isValidElement(a)){const s=a.props.type;vA(s)&&t[s]&&t[s].isOpen&&(n=a)}}),n},AA=({type:e})=>{const t=S(),{DepositTermsOfUse:n,ActionButton:a=q}=R(),{handleReject:s,handleConfirm:o,isPending:i}=pe({type:e});return r.jsxs(V.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(ne.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})})]})]})},SA=({type:e})=>{const t=S(),{ActionButton:n=q}=R(),{handleReject:a,handleConfirm:s}=pe({type:e});return r.jsxs(V.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(ne.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})]})]})},CA=({type:e})=>{const{handleReject:t,handleConfirm:n}=pe({type:e}),{unlockTaxAmount:a,unlockDate:s,unlockTimestamp:o,isLoading:i}=gi(),l=!!o&&Date.now()<o;return{isLoading:i,showUnlockTaxTip:l,showUnlockTaxAmount:!!a&&a!=="0",unlockTaxAmount:po(Oe({value:a,decimals:0})),unlockDate:s,handleReject:t,handleConfirm:n}},EA=e=>{const{ActionButton:t=q}=R(),{isLoading:n,showUnlockTaxTip:a,showUnlockTaxAmount:s,unlockDate:o,unlockTaxAmount:i,handleReject:l,handleConfirm:c}=CA(e);return n?r.jsx(tv,{}):r.jsxs(V.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(ne.ExclamationCircleIcon,{className:"dtw-h-5 dtw-w-5"}),r.jsx("p",{children:"Withdraw Alert"})]}),a?r.jsx("p",{className:"dtw-text-sm",children:"By proceeding with this trade, you acknowledge and accept the possibility of losing a part of your rewards (FMP)."}):null,r.jsx("p",{className:"dtw-text-sm dtw-self-start",children:"Please consider the following before confirming:"}),r.jsxs("ul",{className:"dtw-self-start 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:[s&&r.jsxs(r.Fragment,{children:[r.jsxs("li",{className:"dtw-text-warning",children:["If you withdraw now, you will incur a penalty of ",i," ","FMP"]}),r.jsxs("li",{className:"dtw-text-warning",children:["Wait until ",o," for locked points vesting to complete"]})]}),r.jsx("li",{children:"After withdrawal, you won’t be able to redeposit"})]}),r.jsxs("div",{className:"dtw-flex dtw-flex-col dtw-gap-2 dtw-w-full",children:[r.jsx(t,{highlighted:!1,onClick:l,children:"Back"}),r.jsx(t,{onClick:c,children:"Confirm"})]})]})},IA=({token:e,onSelect:t})=>({onClick:()=>{t(e)}}),_A=({token:e,onSelect:t})=>{const{onClick:n}=IA({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(kt,{symbol:e.symbol,iconSymbols:[e.symbol],size:"xl",CustomIcon:r.jsx(Jt.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(ul,{className:"dtw-pt-2",showFraction:!1,showAllAsset:!0})]})},DA=({token:e,onSelect:t,isActive:n,onClose:a})=>{const s=we({symbol:e.symbol,address:e.address}),{defaultPrecision:o}=H();return{formattedBalance:new b.BigNumber(s).toFixed(o,b.BigNumber.ROUND_DOWN),onClick:()=>{if(n){a();return}t(e)}}},hl=({token:e,onSelect:t,onClose:n,isActive:a=!1})=>{const{onClick:s,formattedBalance:o}=DA({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(kt,{symbol:e.symbol,iconSymbols:[e.symbol],size:"xl",symbolClasses:A("group-hover:dtw-opacity-100 dtw-text-sm dtw-font-medium",{"dtw-opacity-100 sm:dtw-opacity-80":!a,"dtw-opacity-100":a}),className:A("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(Jt.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]})]})]})},NA=[],OA=()=>{const e=x(),[t]=ye(),[n,a]=N(),[s,o]=L(),{data:i}=za(e),l=Ln(),c=i?NA: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])},PA=({searchQuery:e,type:t})=>{const[{isMultiAssetWithdrawalEnabled:n}]=K(),{isCompleteWithdrawStep:a}=ut(),s=Nt(),[o]=ye(),{handleReject:i}=pe({type:t}),{tokens:l,updater:c,activeTokens:d}=OA(),p=u.useMemo(()=>e?l.filter(({symbol:y})=>y.toLowerCase().includes(e)):l,[e,l]),m=u.useCallback(({address:y,value:w,decimals:g,symbol:T})=>{c({address:y,value:w,decimals:g,symbol:T}),i()},[c,i]);return{tokenList:p,activeTokens:d,onSelect:m,onClose:i,showMultiAssetWithdrawalOption:n&&o==="withdraw"&&!s&&!a}},LA=({type:e,searchQuery:t})=>{const n=S(),{tokenList:a,activeTokens:s,onSelect:o,showMultiAssetWithdrawalOption:i,onClose:l}=PA({type:e,searchQuery:t});return r.jsxs(V.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(hl,{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(_A,{token:en,onSelect:o})})]})]})},RA=({children:e,chainId:t})=>{const{chainConfig:n}=H(),{Image:a=ki}=R(),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]})},ca=(e,t)=>e.address in t?{balanceInUsd:t[e.address]?.balanceInUsd??ee({value:0}),balanceInUsdNumber:t[e.address]?.balanceInUsdNumber??0}:{balanceInUsd:ee({value:0}),balanceInUsdNumber:0},kA=e=>(t,n)=>ca(n,e).balanceInUsdNumber-ca(t,e).balanceInUsdNumber,MA=({searchQuery:e,type:t})=>{const n=mi(),a=et(),s=x(),{handleReject:o}=pe({type:t}),[i]=ye(),l=N()[1],c=L()[1],d=So()[1],p=u.useCallback(({address:y,value:w,decimals:g,symbol:T})=>{(i==="deposit"?c:l)({address:y,value:w,decimals:g,symbol:T}),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,...ca(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}},jA=({type:e,searchQuery:t})=>{const n=S(),{poolList:a,onClose:s,onSelect:o}=MA({type:e,searchQuery:t});return r.jsxs(V.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(RA,{chainId:i,children:l.map(({isActive:c,symbol:d,address:p})=>r.jsx("div",{className:A("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(hl,{token:{symbol:d,address:p,value:"",decimals:k},onSelect:o,isActive:c,onClose:s})},`${p}_${d}`))},i))})]})},BA=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)}`},$A=({type:e})=>{const{address:t,symbol:n,chainId:a}=x(),[{link:s,sendTokens:o},i]=X(),{handleReject:l}=pe({type:e}),c=o?.[0],d=BA(s),p=de({address:t,chainId:a});return{onClose:u.useCallback(()=>{i({isOpen:!1}),l()},[i,l]),link:s,vaultSymbol:n,paidToken:c,txHash:d,vaultTokenPrice:ee({value:p})}},FA=e=>{const t=S(),{link:n,onClose:a,vaultSymbol:s,paidToken:o,txHash:i,vaultTokenPrice:l}=$A(e),{ActionButton:c=q}=R();return r.jsxs(V.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-2 dtw-pt-1 dtw-px-4 dtw-w-full",children:[r.jsxs("div",{className:"dtw-text-[color:var(--panel-success-content-color)] dtw-mb-2",children:[r.jsx(Ne.CheckIcon,{className:"dtw-h-16 dtw-w-16 lg:dtw-h-24 lg:dtw-w-24 dtw-shrink-0"}),"Success"]}),r.jsx(qt,{}),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.jsx("p",{className:"dtw-text-[color:var(--panel-secondary-content-color)]",children:s})]}),r.jsx(qt,{}),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?Oe({value:+o.value,decimals:4}):null," ",o.symbol]})]}),r.jsx(qt,{})]}),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(qt,{}),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(pt,{link:n,children:i??t.explorer})]})]})]}),r.jsxs("div",{className:"dtw-flex dtw-flex-col dtw-gap-2 dtw-w-full",children:[r.jsx(dl,{children:t.openLimitOrderAfterBuySwitchLabel}),r.jsx(c,{highlighted:!1,onClick:a,children:t.done})]})]})},WA=()=>{const e=S(),{LogoSpinner:t=Ce}=R(),[{link:n}]=X();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(pt,{link:n,className:"dtw-text-sm",iconClassName:"dtw-w-4 dtw-h-4",children:e.explorer})]})},UA=({onClose:e})=>{const t=S(),{ActionButton:n=q}=R(),[{link:a}]=X();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(Ne.CheckIcon,{className:"dtw-h-16 dtw-w-16 lg:dtw-h-24 lg:dtw-w-24 dtw-shrink-0"}),t.createLimitSellOrder]}),a&&r.jsx(pt,{link:a,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:e,children:t.done})})]})},zA=({type:e})=>{const[{status:t},n]=X(),{handleReject:a}=pe({type:e}),s=t==="Mining";return{onClose:u.useCallback(()=>{n({isOpen:!1}),a()},[a,n]),isProcessing:s}},HA=e=>{const{onClose:t,isProcessing:n}=zA(e);return r.jsx(V.Overlay,{className:"dtw-justify-between dtw-gap-y-4",onClose:t,noPadding:!0,children:n?r.jsx(WA,{}):r.jsx(UA,{onClose:t})})},GA=({type:e})=>{const t=S(),[{status:n,link:a,action:s},o]=X(),i=n=="Success",{handleReject:l}=pe({type:e}),c=s==="single_withdraw"&&i,d=i&&s==="deposit",p=s==="create_limit_sell_order",m=s==="limit_order_withdraw",y=u.useMemo(()=>({Wallet:t.sendingOrderToWallet,None:t.settingUpTx,Mining:t.miningTx}),[t]),w=()=>{o({isOpen:!1}),l()};return{title:y[n]??n,isSuccessTx:i,link:a,onClose:w,showNextStepTip:c,displaySuccessDepositOverlay:d,displayLimitOrderTransactionOverlay:p,displayWithdrawLimitOrderOverlay:m}},VA=({sendTokens:e})=>{const t=S(),[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(Qe,{size:"sm",symbols:[n.symbol]}),r.jsx("span",{children:n.symbol})]}):null},qA=({receiveTokens:e})=>{const t=S(),[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(Qe,{size:"sm",symbols:[n.symbol]})," ",n.symbol]})]}):null},YA=({sendTokens:e,receiveTokens:t,action:n})=>{const a=S(),[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(Qe,{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(Qe,{size:"sm",symbols:[o.symbol]})," ",o.symbol]}):r.jsx(r.Fragment,{children:n==="multi_withdraw"?a.multiAssetFractions:a.swappableAssets})})]}):null},KA=()=>{const e=S(),[{action:t,receiveTokens:n,sendTokens:a}]=X();return t==="approve"?r.jsx(VA,{sendTokens:a}):t==="swap"?r.jsx(qA,{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(YA,{action:t,sendTokens:a,receiveTokens:n})},QA=({type:e})=>{const[,t]=X(),{handleReject:n}=pe({type:e}),[{link:a,status:s}]=X(),o=s=="Success";return{onClose:u.useCallback(()=>{t({isOpen:!1}),n()},[n,t]),link:a,isSuccessTx:o}},XA=e=>{const t=S(),{ActionButton:n=q}=R(),{onClose:a,link:s,isSuccessTx:o}=QA(e);return o?r.jsxs(V.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(Ne.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(pt,{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},ZA=({type:e})=>{const{link:t,title:n,onClose:a,isSuccessTx:s,showNextStepTip:o,displaySuccessDepositOverlay:i,displayLimitOrderTransactionOverlay:l,displayWithdrawLimitOrderOverlay:c}=GA({type:e}),{LogoSpinner:d=Ce}=R(),p=S();return l?r.jsx(HA,{type:e}):i?r.jsx(FA,{type:e}):c?r.jsx(XA,{type:e}):r.jsxs(V.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(ne.CheckCircleIcon,{className:"dtw-h-6 dtw-w-6 dtw-text-[color:var(--panel-success-content-color)]"}):r.jsx(d,{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(KA,{})}),t&&r.jsx(pt,{link:t,className:"dtw-text-sm",iconClassName:"dtw-w-4 dtw-h-4",children:p.explorer}),o&&r.jsx("p",{className:"dtw-text-xs",children:p.proceedWithNextStep})]})},JA=fe.filter(({type:e})=>e==="error").map(({name:e})=>e),eS=({type:e})=>{const{handleReject:t,meta:n}=pe({type:e});return{handleReject:t,error:lo({errorMessage:n?.error,abiErrors:JA})}},tS=e=>{const{handleReject:t,error:n}=eS(e);return n?r.jsxs(V.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},nS=["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)]"],aS=["!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))]"],Bt=({children:e,onClick:t,highlighted:n=!0,disabled:a=!1,className:s,type:o,loading:i=!1})=>r.jsxs("button",{className:A("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",{[aS.join(" ")]:n,[nS.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(Ce,{className:"dtw-h-4 dtw-w-4 dtw-stroke-[var(--limit-order-accent-content-color)]"}),e]}),gl={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."},Tl=u.createContext(gl),bl=({children:e,config:t})=>{const n=u.useMemo(()=>({...gl,...t}),[t]);return r.jsx(Tl.Provider,{value:n,children:e})},he=()=>{const e=u.useContext(Tl);if(!e)throw new Error("TranslationContext is used out of Provider");return e},sS=({symbol:e,price:t})=>{const n=he();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})]})},rS=100,oS=3,iS=({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>oS)return;const p=Number(d);!isNaN(p)&&p<=rS&&(s(d),t?.(d))}}},lS=e=>{const{disabled:t,placeholder:n,suffix:a="%",postfix: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:[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})]})})},cS=7,da=4,Ks=e=>{if(!e)return"";const[t="",n]=e.replace(/,/g,"").split("."),a=n&&n.length>da?n.slice(0,da):n,s=t.replace(/\B(?=(\d{3})+(?!\d))/g,",");return a!==void 0?`${s}.${a}`:s},dS=({inputValue:e="",onInputChange:t,autoFocus:n=!1})=>{const[a,s]=u.useState(Ks(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<=cS&&m.length<=da&&/^\d*(\.\d*)?$/.test(d)&&(s(Ks(d)),t(d))}}},Qs=e=>{const{disabled:t,placeholder:n,percentage:a,suffix:s}=e,{inputRef:o,autoFocus:i,value:l,onContainerClick:c,onInputChange:d}=dS(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]})})},Hn=({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(Dn,{onChange:l,defaultEnabled:o})]}),o&&s]})},fl={upperLimitPrice:"",lowerLimitPrice:"",sellPercentage:"",termsAccepted:!1},pS=(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:fl};case"SET_PENDING_TRANSACTION":return{...e,pendingTransaction:t.payload};default:return e}};function Ie(){}const vl=e=>({vaultAddress:e.vaultAddress,vaultChainId:e.vaultChainId,isModalOpen:e.isModalOpen??!1,form:{...fl,...e.form},pendingTransaction:null,pricingAsset:e.pricingAsset,minAmountInUsd:e.minAmountInUsd}),xl=u.createContext(vl({vaultAddress:I,vaultChainId:0,pricingAsset:{address:I,symbol:""},minAmountInUsd:$a,form:{lowerLimitPrice:"",upperLimitPrice:""}})),Al=u.createContext({setIsModalOpen:Ie,setUpperLimitPrice:Ie,setLowerLimitPrice:Ie,setTermsAccepted:Ie,setSellPercentage:Ie,reset:Ie,setPendingTransaction:Ie,onLog:Ie}),Sl=({children:e,initialState:t,actions:n})=>{const[a,s]=u.useReducer(pS,vl(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(Al.Provider,{value:y,children:r.jsx(xl.Provider,{value:a,children:e})})},ge=()=>u.useContext(xl),$t=()=>u.useContext(Al),ss=()=>{const{account:e}=M(),{vaultAddress:t,vaultChainId:n,form:{sellPercentage:a}}=ge(),{data:s}=Ia({address:e,token:t,chainId:n});return u.useMemo(()=>{const o=a||ai;if(!s)return{raw:"0",formatted:"0",symbol:""};const i=new b(s.value).times(o).dividedBy(100).toFixed(0,b.ROUND_DOWN),l=Oe({value:new b(i).shiftedBy(-18).toFixed(),decimals:2});return{raw:i,formatted:l,symbol:s.symbol}},[s,a])},Cl=({userAddress:e,vaultAddress:t})=>{const n=D.encodePacked(["address","address"],[e,t]);return D.keccak256(n)},uS=({price:e,markPrice:t})=>new b(e).gt(t)?`+${It((+e/+t-1)*100,2)}`:"",mS=({price:e,markPrice:t})=>new b(e).lt(t)?`-${It((1-+e/+t)*100,2)}`:"",yS=({error:e,translationMap:t})=>e?e.title===jr?{...e,hint:t.invalidLimitOrderPriceError}:e:null,wS=()=>{const e=he(),{form:{upperLimitPrice:t,lowerLimitPrice:n,sellPercentage:a,termsAccepted:s},pricingAsset:o,vaultChainId:i}=ge(),{setUpperLimitPrice:l,setLowerLimitPrice:c,setSellPercentage:d,setTermsAccepted:p}=$t(),m=ce({address:o.address,chainId:i,refetchInterval:We}),y=Number(m)<lb?cb:db,{formatted:w,symbol:g}=ss(),T=uS({price:t,markPrice:m}),f=mS({price:n,markPrice:m}),E=u.useCallback(()=>{l("")},[l]),_=u.useCallback(()=>{c("")},[c]),O=u.useCallback(()=>{d("")},[d]),Y=`${o.symbol} ${e.price}`;return{upperLimitPrice:t,lowerLimitPrice:n,sellPercentage:a,setUpperLimitPrice:l,setLowerLimitPrice:c,setSellPercentage:d,onDisableUpperLimitPrice:E,onDisableLowerLimitPrice:_,onDisableSellPercentage:O,termsAccepted:s,setTermsAccepted:p,pricingAssetPrice:m==="0"?null:ee({value:m,maximumFractionDigits:y}),upperLimitPriceDifference:T,lowerLimitPriceDifference:f,pricingAssetSymbol:o.symbol,inputSuffix:Y,coveredVaultAmount:w,vaultSymbol:g}},hS=["termsPoint1","termsPoint2","termsPoint3","termsPoint4","termsPoint5"],gS=({className:e})=>{const t=he();return r.jsx("div",{className:A("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:hS.map((n,a)=>r.jsxs("li",{className:"dtw-text-pretty",children:[a+1,". ",t[n]]},n))})})},El=({className:e,checked:t,label:n,labelClassName:a,...s})=>r.jsxs(P.Field,{className:"dtw-flex dtw-items-center dtw-gap-2",children:[r.jsx(P.Checkbox,{...s,checked:t,className:A("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(Ne.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(P.Label,{className:A("dtw-select-none",a),children:n})]}),TS=()=>{const e=he(),{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:g,setSellPercentage:T,onDisableSellPercentage:f,coveredVaultAmount:E,vaultSymbol:_}=wS();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(sS,{symbol:y,price:d}),r.jsx(Hn,{title:e.upperLimitLabel,subtitle:e.upperLimitSubtitle,defaultEnabled:!0,onDisable:o,children:r.jsx(Qs,{inputValue:t,onInputChange:a,percentage:p,symbol:y,suffix:w})}),r.jsx(Hn,{title:e.lowerLimitLabel,subtitle:e.lowerLimitSubtitle,defaultEnabled:!!n,onDisable:i,children:r.jsx(Qs,{inputValue:n,onInputChange:s,percentage:m,symbol:y,suffix:w})}),r.jsx(Hn,{title:e.partialSellLabel,subtitle:e.partialSellSubtitle,defaultEnabled:!!g,onDisable:f,children:r.jsx(lS,{inputValue:g,onInputChange:T,suffix:"%",placeholder:ai,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:E}),r.jsx("span",{className:"dtw-text-[color:var(--limit-order-secondary-content-color)]",children:_})]})})})]}),r.jsx("div",{className:"dtw-mt-3 dtw-px-2 dtw-flex dtw-items-center dtw-gap-1.5",children:r.jsx(El,{checked:c,onChange:O=>l(O),label:e.limitOrderTerms,labelClassName:"dtw-text-[length:var(--limit-order-font-size-xs)] dtw-cursor-pointer"})}),r.jsx(gS,{className:"dtw-px-2"})]})},bS=()=>{const{account:e=I}=M(),{vaultAddress:t,vaultChainId:n}=ge(),a=U("limitOrder",n),s=ss(),{data:o}=wn({tokenAddress:t,ownerAddress:e,spenderAddress:a,chainId:n});return o?new b(s.raw).lte(o.toString()):!1},fS=()=>{const{vaultAddress:e,vaultChainId:t,pendingTransaction:n}=ge(),{setPendingTransaction:a}=$t(),[s,o]=u.useState(!1),i=U("limitOrder",t),{send:l}=ve({contractId:"erc20",dynamicContractAddress:e,functionName:"approve",onSettled(d){a(d?{hash:d,action:"approve"}:null),o(!1)}});return{approveLimitOrder:async()=>{o(!0),l(i,Fe)},isApprovePending:s||!!n}},vS=()=>{const e=bS(),{approveLimitOrder:t,isApprovePending:n}=fS(),{form:{termsAccepted:a}}=ge();return{isApproved:e,approveLimitOrder:t,isApprovePending:n,disabled:!a}},xS=({children:e})=>{const t=he(),{isApproved:n,approveLimitOrder:a,isApprovePending:s,disabled:o}=vS();return n?e:r.jsx(Bt,{onClick:a,loading:s,disabled:o,children:t.approve})},Il=e=>{const{setIsModalOpen:t,reset:n,setPendingTransaction:a,onTransactionSettled:s}=$t();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])},AS=([e,t,n,a,s,o])=>J(s)?null:{takeProfitPrice:D.formatUnits(n,k),stopLossPrice:D.formatUnits(t,k),takeProfitPriceD18:n,stopLossPriceD18:t,amountD18:e,user:a,vault:s,pricingAsset:o},Ft=({chainId:e,userAddress:t,vaultAddress:n})=>C.useReadContract({address:U("limitOrder",e),abi:pn,chainId:e,functionName:Cn,args:[Cl({userAddress:t,vaultAddress:n})],query:{enabled:!J(t)&&!J(n),select:AS}}),SS=pn.filter(({type:e})=>e==="error").map(({name:e})=>e),CS="create",ES=()=>{const e=he(),{account:t=I}=M(),{vaultAddress:n,vaultChainId:a,form:{lowerLimitPrice:s,upperLimitPrice:o,termsAccepted:i},pricingAsset:l,pendingTransaction:c,minAmountInUsd:d}=ge(),p=ss(),{data:m}=Ft({userAddress:t,vaultAddress:n,chainId:a}),y=de({address:n,chainId:a}),[w,g]=u.useState(null),T=Il(CS),f=!!m,{send:E}=ve({onSettled:T,contractId:"limitOrder",functionName:f?"modifyLimitOrder":"createLimitOrder"}),O=new b.BigNumber(p.formatted).multipliedBy(y??"0").gte(d),Y=!i||!O,ae=!!c;return{modifyLimitOrder:async()=>{const Wt=BigInt(s?tn(s,k):0),Ut=o?BigInt(tn(o,k)):Fe,zt=[p.raw,Wt,Ut,t,n,l.address];try{await E(zt),g(null)}catch(wt){wt instanceof ct&&g(wt.message)}},disabled:Y,error:yS({error:lo({errorMessage:w,abiErrors:SS})??null,translationMap:e}),isPending:ae,isAmountSufficient:O,minAmount:ee({value:d.toString(),maximumFractionDigits:0,minimumFractionDigits:0}),isModifyTransaction:f}},IS=({disabled:e})=>{const t=he(),{modifyLimitOrder:n,disabled:a,error:s,isPending:o,minAmount:i,isAmountSufficient:l,isModifyTransaction:c}=ES();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(Bt,{onClick:n,disabled:e||a,loading:o,children:c?t.modify:t.create})]})},_S="remove",DS=()=>{const{account:e=I}=M(),{vaultAddress:t,vaultChainId:n,pendingTransaction:a}=ge(),{data:s}=Ft({userAddress:e,vaultAddress:t,chainId:n}),o=Il(_S),{send:i}=ve({onSettled:o,contractId:"limitOrder",functionName:"deleteLimitOrder"}),l=async()=>i(t),c=!!a,d=!!s?.amountD18&&!new b(s.amountD18.toString()).isZero();return{deleteLimitOrder:l,isPending:c,displayButton:d}},NS=()=>{const e=he(),{deleteLimitOrder:t,isPending:n,displayButton:a}=DS();return a?r.jsx(Bt,{highlighted:!1,className:"!dtw-py-1",onClick:t,loading:n,children:e.delete}):null},OS=()=>{const{chainId:e,switchNetwork:t}=Ae(),{vaultChainId:n}=ge();return{isWrongNetwork:e!==n,handleNetworkSwitch:()=>{t?.({chainId:n})}}},PS=({children:e})=>{const t=he(),{isWrongNetwork:n,handleNetworkSwitch:a}=OS();return n?r.jsx(Bt,{onClick:a,children:t.switchNetwork}):e},Xs=e=>{const t=e?.trim();return t?!isNaN(Number(t)):!1},LS=()=>{const{form:{lowerLimitPrice:e,upperLimitPrice:t}}=ge(),n=Xs(e)&&Number(e)!==0,a=Xs(t);return{limitOrderButtonDisabled:!n&&!a}},_l=({onClose:e,hideDeleteButton:t})=>{const n=he(),{limitOrderButtonDisabled:a}=LS();return r.jsxs("div",{className:"dtw-flex dtw-flex-col dtw-gap-2",children:[r.jsx(TS,{}),r.jsxs(PS,{children:[r.jsx(xS,{children:r.jsx(IS,{disabled:a})}),!t&&r.jsx(NS,{})]}),!!e&&r.jsx(Bt,{highlighted:!1,onClick:e,children:n.cancel})]})},Dl=({vaultAddress:e,vaultChainId:t})=>{const{account:n=I}=M(),{isFetched:a,data:s}=Ft({vaultAddress:e,chainId:t,userAddress:n}),o=s&&s.takeProfitPriceD18!==Fe?s.takeProfitPrice:"",i=s&&s.stopLossPriceD18!==BigInt(0)?s.stopLossPrice:"";return{isFetched:a,upperLimitPrice:o,lowerLimitPrice:i}},RS=[Cn,Ba,"allowance"],Nl=()=>{const e=Ze.useQueryClient();return u.useCallback(()=>{e.invalidateQueries({predicate:({queryKey:t})=>{const n=t[1]?.functionName;return t[0]==="readContract"&&RS.some(a=>a===n)}})},[e])},Ol=()=>{const{pendingTransaction:e,vaultChainId:t,vaultAddress:n}=ge(),{setPendingTransaction:a,onTransactionSuccess:s,onTransactionError:o,onLog:i}=$t(),l=Nl(),{data:c,error:d}=C.useWaitForTransactionReceipt({hash:e?.hash??void 0,chainId:t,pollingInterval:We});u.useEffect(()=>{c&&(e?.action==="create"&&i?.(Q.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])},v={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"}},Pl=({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??v.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??v.WHITE.DEFAULT}`,"--limit-order-content-hover-color":`${t?.global?.color?.colorTextPrimaryHover??`${v.WHITE.DEFAULT}CC`}`,"--limit-order-secondary-color":`${t?.global?.color?.colorBgSecondary??v.GRAY[800]}`,"--limit-order-secondary-content-color":`${t?.global?.color?.colorTextSecondary??v.GRAY[600]}`,"--limit-order-accent-from-color":`${t?.global?.color?.colorBgAccentFrom??v.GREEN.DEFAULT}`,"--limit-order-accent-to-color":`${t?.global?.color?.colorBgAccentTo??v.GREEN[700]}`,"--limit-order-accent-hover-from-color":`${t?.global?.color?.colorBgAccentFromHover??`${v.GREEN.DEFAULT}CC`}`,"--limit-order-accent-hover-to-color":`${t?.global?.color?.colorBgAccentToHover??v.BLUE.dark}`,"--limit-order-accent-content-color":`${t?.global?.color?.colorTextAccent??v.WHITE.DEFAULT}`,"--limit-order-accent-content-hover-color":`${t?.global?.color?.colorTextAccentHover??`${v.WHITE.DEFAULT}CC`}`,"--limit-order-neutral-color":`${t?.global?.color?.colorBgNeutral??`${v.GRAY[600]}33`}`,"--limit-order-neutral-content-color":`${t?.global?.color?.colorTextNeutral??`${v.GRAY[600]}80`}`,"--limit-order-loading-content-color":`${t?.global?.color?.colorTextLoading??`${v.WHITE.DEFAULT}99`}`,"--limit-order-error-content-color":`${t?.global?.color?.colorTextError??v.RED[500]}`,"--limit-order-warning-content-color":`${t?.global?.color?.colorTextWarning??v.AMBER[400]}`,"--limit-order-border-color":`${t?.global?.color?.colorBorderPrimary??"var(--limit-order-content-color)"}`,"--limit-order-scrollbar-color":`${t?.global?.color?.colorScrollbar??`${v.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??`${v.WHITE.DEFAULT}33`}`,"--limit-order-action-outline-button-border-hover-color":`${t?.component?.actionButton?.color?.outlineColorBorderHover??`${v.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??v.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??v.DARK[700]}`,"--limit-order-tooltip-color":`${t?.component?.tooltip?.color?.colorText??v.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??v.BLUE.DEFAULT}`,"--panel-switch-bg":`${t?.component?.switch?.color?.colorBg??v.GRAY[700]}`,"--panel-switch-thumb-bg-checked":`${t?.component?.switch?.color?.colorThumbBgChecked??v.WHITE.DEFAULT}`,"--panel-switch-thumb-bg":`${t?.component?.switch?.color?.colorThumbBg??v.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??v.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??v.GRAY.DEFAULT}`,"--panel-checkbox-color":`${t?.component?.checkbox?.color?.color??v.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}),kS=({themeConfig:e})=>(Ol(),r.jsx(Pl,{config:e,children:r.jsx(_l,{hideDeleteButton:!0})})),MS=({vaultChainId:e,vaultAddress:t,pricingAsset:n,translation:a,minAmountInUsd:s=$a,actions:o,themeConfig:i})=>{const{isFetched:l,upperLimitPrice:c,lowerLimitPrice:d}=Dl({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(bl,{config:a,children:r.jsx(Sl,{initialState:p,actions:o,children:r.jsx(kS,{themeConfig:i})})}):null},jS=({type:e})=>{const{minLimitOrderValue:t}=H(),{address:n,chainId:a,pricingAsset:s,symbol:o}=x(),{handleReject:i}=pe({type:e}),l=X()[1],c=re()[1],d=jf(),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?Nn(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}},BS=e=>{const{limitOrderThemeConfig:t}=H(),{handleReject:n,chainId:a,address:s,pricingAsset:o,minLimitOrderValue:i,actions:l,closeAllOverlays:c}=jS(e);return o?r.jsx(V.Overlay,{onClose:c,onBack:n,className:"!dtw-px-2",noPadding:!0,children:r.jsx("div",{className:"dtw-mt-8 dtw-px-2 dtw-overflow-y-auto theme-scrollbar",children:r.jsx(MS,{vaultAddress:s,vaultChainId:a,pricingAsset:o,minAmountInUsd:i,actions:l,themeConfig:t})})}):null},Ll=()=>{const[e]=N();return new b(e.value||"0").shiftedBy(e.decimals)},$S=()=>{const{account:e=I}=M(),{address:t,chainId:n}=x(),a=U("limitOrder",n),s=Ll(),{data:o}=wn({tokenAddress:t,ownerAddress:e,spenderAddress:a,chainId:n});return o?s.lte(o.toString()):!1},Zs="approve",FS=()=>{const{address:e,chainId:t,symbol:n}=x(),[a,s]=u.useState(!1),o=U("limitOrder",t),i=re()[1],l=Ve(Zs),{send:c}=ve({contractId:"erc20",dynamicContractAddress:e,functionName:"approve",onSettled(...p){s(!1),l(...p)}});return{approveLimitOrder:async()=>{i({type:"add",action:Zs,symbol:n,chainId:t}),s(!0),c(o,Fe)},isApprovePending:a}},WS=()=>{const e=$S(),{approveLimitOrder:t,isApprovePending:n}=FS();return{isApproved:e,approveLimitOrder:t,isApprovePending:n}},US=({children:e})=>{const t=S(),{ActionButton:n=q}=R(),{isApproved:a,approveLimitOrder:s,isApprovePending:o}=WS();return a?e:r.jsx(n,{onClick:s,loading:o,children:t.approve})},Js="limit_order_withdraw",zS=e=>{const{account:t=I}=M(),{address:n,chainId:a,pricingAsset:s,symbol:o}=x(),i=re()[1],l=Ve(Js),c=u.useCallback((...w)=>{l(...w),e()},[l,e]),d=Ll(),{data:p}=Ft({userAddress:t,vaultAddress:n,chainId:a}),m=!!p,{send:y}=ve({onSettled:c,contractId:"limitOrder",functionName:m?"modifyLimitOrder":"createLimitOrder"});return u.useCallback(async()=>{i({type:"add",action:Js,symbol:o,chainId:a});const w=BigInt(0),g=Fe,T=[BigInt(d.toFixed()),w,g,t,n,s?.address];return y(T)},[i,o,a,d,t,n,s?.address,y])},HS=({limitOrderHandler:e,action:t})=>{const n=S(),a=ie(),{account:s}=M(),o=x(),[i]=N(),l=X()[1],c=re()[1],d=yn(),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 ct&&(a({type:"MERGE_OVERLAY",payload:{type:B.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}},GS="limit_order_withdraw",VS=()=>{const e=ie(),t=yt("limit_order_withdraw"),n=u.useCallback(()=>e({type:"MERGE_OVERLAY",payload:{type:B.LIMIT_ORDER_WITHDRAW,isOpen:!1}}),[e]),a=zS(n),{handleLimitOrderWithdraw:s,label:o}=HS({limitOrderHandler:a,action:GS});return{label:o,handleLimitOrderWithdraw:s,isLoading:t}},qS=({disabled:e})=>{const{ActionButton:t=q}=R(),{label:n,handleLimitOrderWithdraw:a,isLoading:s}=VS();return r.jsx(t,{onClick:a,disabled:e,loading:s,children:n})},YS=["termOfUseWithdrawPoint1","termOfUseWithdrawPoint2"],KS=({className:e})=>{const t=S();return r.jsxs(r.Fragment,{children:[r.jsx("p",{children:t.limitOrderWithdrawDescription}),r.jsx("div",{className:A("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:YS.map((n,a)=>r.jsxs("li",{className:"dtw-text-pretty",children:[a+1,". ",t[n]]},n))})})]})},QS=({type:e})=>{const t=S(),{ActionButton:n=q}=R(),{handleReject:a}=pe({type:e}),[s,o]=u.useState(!1);return r.jsx(V.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(KS,{}),r.jsx("div",{className:"dtw-mt-1 dtw-flex dtw-items-center dtw-gap-1.5",children:r.jsx(El,{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(US,{children:r.jsx(qS,{disabled:!s})})]})})},XS=()=>{const e=In(),t=S();return r.jsxs(r.Fragment,{children:[r.jsx(Be,{label:t.slippageTolerance,tooltipText:t.withdrawSlippageWarning,children:r.jsx(Mi,{})}),r.jsx(Be,{label:t.tokenAllowance,tooltipText:t.toggleTokenApprovalAmount,children:r.jsx(Zi,{})}),e&&r.jsx(Be,{label:t.batchTransactionsLabel,tooltipText:t.batchTransactionsTooltip??"",children:r.jsx(Ji,{})}),r.jsx(el,{})]})},ZS=({assets:e=[]})=>{const{stablePrecision:t}=H(),{firstPart:n,secondPart:a}=so(e,gr),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(kt,{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:ee({value:p*d})})]}),r.jsx("td",{className:"dtw-text-right",children:r.jsx("p",{className:"dtw-truncate",children:Oe({value:D.formatUnits(l,c),decimals:t})})})]},i),[t]);return r.jsxs("div",{className:"dtw-text-sm dtw-font-light ",children:[r.jsx(cn,{children:n.map(s)}),a.length>0&&r.jsx(pl,{children:r.jsx(cn,{children:a.map(s)})})]})},JS=()=>{const{chainId:e}=x(),{stablePrecision:t}=H(),{data:n=[]}=ue(),a=Ui(),{data:s=I}=hv();return{assets:n,usdAmount:ee({value:a,maximumFractionDigits:t}),withdrawalVaultLink:Nn(s,"address",e)}},eC=()=>{const e=S(),{assets:t,usdAmount:n,withdrawalVaultLink:a}=JS();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(pt,{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(ZS,{assets:t})})]})},er=!0,tC=()=>{const{isWrongNetwork:e}=il(),t=Wi({isClaim:er}),{disabled:n,label:a,handleTrade:s}=Gi({withdraw:t,isClaim:er}),o=yt("claim");return{disabled:n,label:a,handleTrade:s,isWrongNetwork:e,isLoading:o}},tr=({highlighted:e,className:t})=>{const{ActionButton:n=q}=R(),{handleTrade:a,disabled:s,label:o,isWrongNetwork:i,isLoading:l}=tC();return i?null:r.jsx(n,{onClick:a,disabled:s,highlighted:e,className:t,loading:l,children:o})},nC=()=>{const e=ie(),t=Wi(),{isError:n}=qe(),{disabled:a,label:s,handleTrade:o}=Gi({withdraw:t}),i=yt("swap");return vv(o),{disabled:a,label:s,handleClick:()=>{if(n){e({type:"MERGE_OVERLAY",payload:{type:B.ERROR_NOTIFICATION,isOpen:!0,meta:{error:kr}}});return}o()},isLoading:i}},aC=()=>{const{ActionButton:e=q}=R(),{handleClick:t,disabled:n,label:a,isLoading:s}=nC();return r.jsx(e,{onClick:t,disabled:n,loading:s,children:a})},sC=()=>{const e=ie(),{requiresHighSlippageConfirm:t,confirmHighSlippage:n,slippageToBeUsed:a}=Ha();return{requiresHighSlippageConfirm:t,slippageToBeUsed:a,handleHighSlippageClick:()=>{e({type:"MERGE_OVERLAY",payload:{type:B.HIGH_SLIPPAGE,isOpen:!0,onConfirm:async()=>n()}})}}},rC=({children:e})=>{const{ActionButton:t=q}=R(),n=S(),{requiresHighSlippageConfirm:a,slippageToBeUsed:s,handleHighSlippageClick:o}=sC();return a?r.jsx(t,{onClick:o,children:n.confirmMaxSlippage.replace("{slippagePercentage}",`${Math.abs(s)}`)}):e},oC=()=>{bv();const e=Xa(),t=Le();return{showSwapButton:e&&!t}},iC=()=>{const{chainId:e}=x(),[t]=L(),n=ce({address:t.address,chainId:e}),a=Vi(),s=Rt(Math.min(0,a));return{receiveToken:{...t,price:n},swapDiff:a,themeType:s}},lC=()=>{const e=S(),{receiveToken:t,swapDiff:n,themeType:a}=iC();return r.jsx(Et,{label:e.receiveEstimated,assetInput:t.value,autoFocus:!1,disabled:!0,assetSymbol:t.symbol,assetPrice:t.price,displayCalculatedValue:!0,isLoading:t.isLoading,tradingPriceDiff:n,type:a})},cC=()=>{const e=S(),{stablePrecision:t}=H(),[n]=L(),a=Mt(),{minExpectedReceiveAmount:s}=Qa(),o=Rt(a),i=o===$.DEFAULT?e.withdrawSlippageWarning:e.highSlippageWarning;return{themeType:o,slippageTooltipText:i,slippagePlaceholder:a.toString(),minReceive:`${Oe({value:D.formatUnits(BigInt(s),n.decimals),decimals:t})} ${n.symbol}`}},dC=()=>{const e=S(),{slippageTooltipText:t,slippagePlaceholder:n,minReceive:a}=cC(),s=u.useMemo(()=>[{tooltipText:e.exchangeRate,label:e.rate,value:r.jsx(as,{})},{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(Va,{collapseItems:s})},pC=({children:e})=>r.jsxs(V.Meta,{children:[r.jsx(dC,{}),r.jsx("div",{className:"dtw-sticky dtw-bottom-0 dtw-bg-[var(--panel-meta-action-panel-bg)]",children:e})]}),Gn=[{isLeveragedAsset:mo,getWithdrawAssetByLeverageAddress:yo,getWithdrawAssetByVaultAddress:()=>{},isLentAndBorrowedAsset:Zn},{isLeveragedAsset:sd,getWithdrawAssetByLeverageAddress:rd,getWithdrawAssetByVaultAddress:od,isLentAndBorrowedAsset:Zn}],Vn={requiresLeveragedCollateralLiquidity:!1,leveragedCollateralValueFormatted:"$0"},qn=e=>b(e.amount).shiftedBy(-e.precision).times(e.rate).shiftedBy(-18).toNumber(),Rl=()=>{const e=x(),t=dt(e),[n]=N(),a=de(e),s=t.find(({tokenAddress:m,amount:y})=>Gn.some(w=>w.isLeveragedAsset(m)&&y!=="0"));if(!s)return Vn;const o=Gn.find(m=>m.isLeveragedAsset(s.tokenAddress));if(!o)return Vn;const i=o.getWithdrawAssetByVaultAddress(e.address)?.address??o.getWithdrawAssetByLeverageAddress(s.tokenAddress).address,l=t.find(({tokenAddress:m})=>z(i,m));if(!l)return Vn;const c=Number(n.value||"0")*Number(a),d=qn(l);if(t.find(({tokenAddress:m,amount:y})=>Gn.some(w=>w.isLentAndBorrowedAsset({address:m,chainId:e.chainId})&&y!=="0"))){const m=qn(s),y=t.reduce((E,_)=>E+qn(_),0),w=d/y,g=m/y,f=w/(w+g)*y;return{requiresLeveragedCollateralLiquidity:c>f,leveragedCollateralValueFormatted:ee({value:f})}}return{requiresLeveragedCollateralLiquidity:c>d,leveragedCollateralValueFormatted:ee({value:d})}},rs=()=>{const{chainId:e,pricingAsset:t,onDemandWithdrawalEnabled:n}=x(),{requiresLeveragedCollateralLiquidity:a}=Rl(),s=Nt();return a&&!!t&&!!n&&(e===h.arbitrum.id||!s)},nr=0,ar=1,sr=2,uC=()=>{const e=S(),{isCompleteWithdrawStep:t}=ut(),{canSpend:n}=Ka(),a=Le(),s=Ja(),o=rs(),i=u.useMemo(()=>{const c=[{index:nr,description:r.jsx(r.Fragment,{children:e.approve})},{index:ar,description:s?e.unrollAndClaimDescription:r.jsxs(r.Fragment,{children:[e.initWithdrawDescription," ",r.jsx(on,{text:e.initWithdrawTooltip,iconClassName:"!dtw-inline"})]})}],d={index:sr,description:r.jsxs(r.Fragment,{children:[r.jsx("span",{children:e.completeWithdrawDescription}),r.jsx(on,{text:e.completeWithdrawTooltip,iconClassName:"!dtw-inline"})]})};return[...c,...s?[]:[d]]},[e.approve,e.unrollAndClaimDescription,e.initWithdrawDescription,e.initWithdrawTooltip,e.completeWithdrawDescription,e.completeWithdrawTooltip,s]);return{hideStepper:a||o,activeStepIndex:t?sr:n?ar:nr,steps:i}},kl=({children:e})=>{const{hideStepper:t,steps:n,activeStepIndex:a}=uC();return t?e:r.jsx("div",{className:"dtw-mt-1 dtw-grid dtw-gap-1 dtw-grid-cols-[auto_1fr] dtw-auto-rows-min",children:n.map((s,o)=>{const i=s.index<a,l=s.index===a,c=o===n.length-1;return r.jsxs(u.Fragment,{children:[r.jsxs("div",{className:A("dtw-grid dtw-grid-cols-1 dtw-h-full dtw-gap-0.5",{"dtw-text-themeGreen":i,"dtw-text-[color:var(--panel-secondary-content-color)]":!i&&!l,"dtw-grid-rows-[auto_1fr]":!c}),children:[i?r.jsx(ne.CheckCircleIcon,{className:"dtw-w-[18px]"}):r.jsxs("span",{className:"dtw-text-center dtw-text-sm",children:[o+1,"."]}),!c&&r.jsx("div",{className:"dtw-h-full dtw-min-h-1",children:r.jsx("div",{className:A("dtw-w-[1px] dtw-h-full dtw-m-auto dtw-bg-[color:var(--panel-secondary-content-color)]")})})]}),r.jsxs("div",{className:"dtw-flex dtw-flex-col dtw-gap-0.5 dtw-text-[length:var(--panel-input-label-font-size,var(--panel-font-size-sm))] dtw-text-[color:var(--panel-content-color)]",children:[r.jsx("div",{className:A("dtw-mt-0.5 dtw-flex dtw-gap-1 dtw-leading-none dtw-items-center",{"dtw-text-[color:var(--panel-secondary-content-color)]":!i&&!l}),children:s.description}),l&&r.jsx("div",{className:A({"dtw-my-1":!c,"dtw-mt-1":c}),children:e})]},s.index)]},s.index)})})},mC=()=>{const{showSwapButton:e}=oC();return r.jsxs(r.Fragment,{children:[r.jsxs(V.InputGroup,{children:[r.jsx(eC,{}),r.jsx(lC,{})]}),r.jsx(pC,{children:r.jsx(kl,{children:r.jsx(ts,{children:e?r.jsxs(r.Fragment,{children:[r.jsx(rC,{children:r.jsx(aC,{})}),r.jsx(tr,{highlighted:!1,className:"dtw-mt-1.5 !dtw-py-1 dtw-text-[length:var(--panel-input-button-font-size,var(--panel-font-size-xs))]"})]}):r.jsx(tr,{})})})})]})},yC=()=>{const{chainId:e,address:t}=x(),{exitFeeNumber:n}=_n({address:t,chainId:e}),[a]=N(),[s,o]=L(),i=de({address:t,chainId:e}),l=ce({address:s.address,chainId:e});u.useEffect(()=>{if(!a.value||a.value==="0"){o({value:""});return}const d=new b(a.value).times(i).times(1-n/100).dividedBy(l).toFixed(s.decimals);o({value:co(d)?d:""})},[n,s.decimals,l,a.value,i,o])},wC=()=>{const{withdraw:e,action:t}=Ev(),{disabled:n,label:a,handleTrade:s}=qi(e),o=ie(),{address:i}=x(),l=Sa(i);return{isLoading:yt(t),disabled:n,label:a,handleTrade:()=>{l?o({type:"MERGE_OVERLAY",payload:{type:B.FMP_WITHDRAWAL,isOpen:!0,onConfirm:async()=>{s()}}}):s()}}},hC=()=>{const{ActionButton:e=q}=R(),{handleTrade:t,disabled:n,label:a,isLoading:s}=wC();return r.jsx(e,{onClick:t,disabled:n,loading:s,children:a})},gC=()=>{const e=S(),t=ie(),n=()=>t({type:"MERGE_OVERLAY",payload:{type:B.LIMIT_ORDER_WITHDRAW,isOpen:!0}});return{label:e.withdrawAction,openLimitOrderWithdrawOverlay:n}},TC=()=>{const{ActionButton:e=q}=R(),{label:t,openLimitOrderWithdrawOverlay:n}=gC();return r.jsx(e,{onClick:n,children:t})},bC=()=>{const{address:e,chainId:t,maintenance:n,maintenanceWithdrawals:a,symbol:s}=x(),[o]=N(),i=ie(),l=rs(),c=Dt(),{data:d=0}=gf({address:e,chainId:t}),p=d>0,m=At.formatDuration(At.intervalToDuration({start:0,end:d})),{approve:y,canSpend:w}=Ka(),{requiresHighSlippageConfirm:g,confirmHighSlippage:T,slippageToBeUsed:f}=Ha(),E=()=>{i({type:"MERGE_OVERLAY",payload:{type:B.HIGH_SLIPPAGE,isOpen:!0,onConfirm:async()=>T()}})};return{requiresEndOfCooldown:p,requiresApprove:!w,requiresHighSlippageConfirm:g,sendTokenSymbol:o.symbol,slippageToBeUsed:f,dynamicCooldownEndsInTime:m,approve:y,handleHighSlippageClick:E,maintenance:n||a,poolSymbol:s,isLimitOrderWithdraw:l,insufficientBalance:c}},fC=({children:e})=>{const{ActionButton:t=q}=R(),n=S(),a=Ga("withdraw"),{requiresEndOfCooldown:s,requiresApprove:o,requiresHighSlippageConfirm:i,sendTokenSymbol:l,slippageToBeUsed:c,dynamicCooldownEndsInTime:d,approve:p,handleHighSlippageClick:m,maintenance:y,poolSymbol:w,isLimitOrderWithdraw:g,insufficientBalance:T}=bC();return y?r.jsx(oa,{promptText:n.poolWithdrawalsAreMaintenance.replace("{poolSymbol}",w),children:a}):s?r.jsx(oa,{promptText:n.withdrawCooldown.replace("{tokenSymbol}",l).replace("{cooldownEndTime}",d),children:a}):T?r.jsx(t,{disabled:!0,children:n.insufficientBalance}):g?r.jsx(TC,{}):o?r.jsx(ll,{onApprove:p,symbol:l}):i?r.jsx(t,{onClick:m,children:n.confirmMaxSlippage.replace("{slippagePercentage}",`${Math.abs(c)}`)}):e},vC=()=>{const{address:e,chainId:t}=x(),[n,a]=N(),s=we({symbol:n.symbol,address:n.address}),o=de({address:e,chainId:t});return{...n,updater:a,balance:s,price:o}},xC=()=>{const{chainId:e}=x(),[t,n]=L(),a=ce({address:t.address,chainId:e});return{...t,updater:n,price:a}},AC=()=>{const e=vC(),t=xC();return{sendToken:e,onInputChange:a=>{e.updater({value:a})},receiveToken:t}},SC=()=>{const e=S(),{sendToken:t,onInputChange:n,receiveToken:a}=AC();return r.jsxs(r.Fragment,{children:[r.jsx(Et,{label:e.send,assetInput:t.value,onInputChange:n,assetSymbol:t.symbol,assetPrice:t.price??"",displayMax:!0,maxBalance:t.balance,displayCalculatedValue:!0,children:r.jsx(ml,{})}),r.jsxs(Et,{label:e.receiveEstimated,assetInput:a.value,autoFocus:!1,disabled:!0,assetSymbol:a.symbol,assetPrice:a.price,displayCalculatedValue:!0,isLoading:a.isLoading,children:[r.jsx(wl,{}),a.symbol==="all"?null:r.jsx(yl,{})]})]})},CC=()=>{const e=S(),{address:t,chainId:n}=x(),[{isMaxSlippageLoading:a}]=K(),{exitFeeNumber:s}=_n({address:t,chainId:n}),o=Mt(),i=Le();return{slippageTooltipText:Rt(o)===$.DEFAULT?e.withdrawSlippageWarning:e.highSlippageWarning,isMaxSlippageLoading:a,slippagePlaceholder:`${o}%`,exitFee:It(s,2),minReceivedText:e.estimatedMultiAssetFractions,showMinReceivedText:i}},EC=()=>{const e=S(),{slippageTooltipText:t,slippagePlaceholder:n,isMaxSlippageLoading:a,exitFee:s,minReceivedText:o,showMinReceivedText:i}=CC(),l=u.useMemo(()=>{const c=[{tooltipText:e.exchangeRate,label:e.rate,value:r.jsx(as,{})},{tooltipText:t,label:e.maxSlippage,value:r.jsxs("div",{className:"dtw-flex dtw-gap-1",children:[a&&r.jsx(Ce,{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:A({"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(Va,{collapseItems:l})},IC=({children:e})=>{const{WithdrawMetaInfo:t,AvailableLiquidityAlert:n,OnDemandWithdrawAlert:a}=R(),{requiresLeveragedCollateralLiquidity:s,leveragedCollateralValueFormatted:o}=Rl(),i=rs();return r.jsxs(V.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(EC,{}),t&&r.jsx(t,{}),r.jsx("div",{className:"dtw-sticky dtw-bottom-0 dtw-bg-[var(--panel-meta-action-panel-bg)]",children:e})]})},_C=()=>{const e=S();return yC(),r.jsxs(r.Fragment,{children:[r.jsx(V.InputGroup,{children:r.jsx(SC,{})}),r.jsx(IC,{children:r.jsx(kl,{children:r.jsx(ts,{children:r.jsx(fC,{children:r.jsxs("div",{className:"dtw-flex dtw-flex-col dtw-gap-2 dtw-w-full",children:[r.jsx(hC,{}),r.jsx(dl,{highlighted:!1,children:e.stopOrder})]})})})})})]})},DC=()=>{wv();const{isCompleteWithdrawStep:e}=ut();return{isCompleteWithdrawStep:e}},NC=()=>{const{isCompleteWithdrawStep:e}=DC();return e?r.jsx(mC,{}):r.jsx(_C,{})},OC=()=>r.jsx(V.Panel,{children:r.jsx(NC,{})}),PC=({tradingType:e})=>r.jsxs(P.TabGroup,{selectedIndex:Xe.indexOf(e),children:[r.jsx(P.TabList,{className:"dtw-flex",children:Xe.map(t=>r.jsx(P.Tab,{className:"dtw-hidden"},t))}),r.jsxs(P.TabPanels,{children:[r.jsx(V.Settings,{children:r.jsx(kv,{})}),r.jsx(V.Settings,{children:r.jsx(XS,{})})]})]}),LC=({children:e})=>r.jsxs(P.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:Xe.map(t=>r.jsx(Ff,{tradingType:t},t))}),e]}),RC=Xe.reduce((e,t,n)=>(e[n]=t,e),{}),kC=()=>{const[e]=ye(),t=x(),{standalone:n}=H();pA();const a=ns(),s=o=>{const i=RC[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}},MC=()=>{const{type:e,onTabChange:t}=kC();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(P.TabGroup,{selectedIndex:Xe.indexOf(e),onChange:t,className:"dtw-flex dtw-flex-col dtw-h-full",children:[r.jsx(LC,{children:r.jsxs("div",{className:"dtw-flex dtw-gap-2 dtw-items-center dtw-justify-end",children:[r.jsx(Xx,{}),r.jsx(PC,{tradingType:e})]})}),r.jsxs(P.TabPanels,{className:"dtw-flex-1 dtw-overflow-y-auto",children:[r.jsx(fA,{}),r.jsx(OC,{})]})]}),r.jsxs(xA,{children:[r.jsx(tS,{type:B.ERROR_NOTIFICATION}),r.jsx(AA,{type:B.TERMS_OF_USE}),r.jsx(SA,{type:B.HIGH_SLIPPAGE}),r.jsx(EA,{type:B.FMP_WITHDRAWAL}),r.jsx(LA,{type:B.TOKEN_SELECT,searchQuery:""}),r.jsx(jA,{type:B.POOL_SELECT,searchQuery:""}),r.jsx(ZA,{type:B.TRADING}),r.jsx(BS,{type:B.LIMIT_SELLS}),r.jsx(QS,{type:B.LIMIT_ORDER_WITHDRAW})]})]})},jC=({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??v.DARK[800]}`,"--panel-gap":`${t?.global?.size?.gap??"0.25rem"}`,"--panel-spacer":`${t?.global?.size?.spacer??"4px"}`,"--panel-content-color":`${t?.global?.color?.colorTextPrimary??v.WHITE.DEFAULT}`,"--panel-content-hover-color":`${t?.global?.color?.colorTextPrimaryHover??`${v.WHITE.DEFAULT}CC`}`,"--panel-secondary-color":`${t?.global?.color?.colorBgSecondary??v.GRAY[800]}`,"--panel-secondary-content-color":`${t?.global?.color?.colorTextSecondary??v.GRAY[600]}`,"--panel-accent-from-color":`${t?.global?.color?.colorBgAccentFrom??v.GREEN.DEFAULT}`,"--panel-accent-to-color":`${t?.global?.color?.colorBgAccentTo??v.GREEN[700]}`,"--panel-accent-hover-from-color":`${t?.global?.color?.colorBgAccentFromHover??`${v.GREEN.DEFAULT}CC`}`,"--panel-accent-hover-to-color":`${t?.global?.color?.colorBgAccentToHover??v.BLUE.dark}`,"--panel-accent-content-color":`${t?.global?.color?.colorTextAccent??v.WHITE.DEFAULT}`,"--panel-accent-content-hover-color":`${t?.global?.color?.colorTextAccentHover??`${v.WHITE.DEFAULT}CC`}`,"--panel-neutral-color":`${t?.global?.color?.colorBgNeutral??`${v.GRAY[600]}33`}`,"--panel-neutral-content-color":`${t?.global?.color?.colorTextNeutral??`${v.GRAY[600]}80`}`,"--panel-loading-content-color":`${t?.global?.color?.colorTextLoading??`${v.WHITE.DEFAULT}99`}`,"--panel-error-content-color":`${t?.global?.color?.colorTextError??v.RED[500]}`,"--panel-warning-content-color":`${t?.global?.color?.colorTextWarning??v.WARNING}`,"--panel-success-content-color":`${t?.global?.color?.colorTextSuccess??v.GREEN.DEFAULT}`,"--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??`${v.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-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??v.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??v.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??v.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) * 2)"}`,"--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??v.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??`${v.WHITE.DEFAULT}33`}`,"--panel-action-outline-button-border-hover-color":`${t?.component?.actionButton?.color?.outlineColorBorderHover??`${v.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??v.DARK[700]}`,"--panel-tooltip-color":`${t?.component?.tooltip?.color?.colorText??v.WHITE.DEFAULT}`,"--panel-alert-error-bg":`${t?.component?.alert?.color?.errorBg??`${v.ERROR}4D`}`,"--panel-alert-warning-bg":`${t?.component?.alert?.color?.warningBg??`${v.WARNING}4D`}`,"--panel-alert-info-bg":`${t?.component?.alert?.color?.infoBg??`${v.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??v.BLUE.DEFAULT}`,"--panel-switch-bg":`${t?.component?.switch?.color?.colorBg??v.GRAY[700]}`,"--panel-switch-thumb-bg-checked":`${t?.component?.switch?.color?.colorThumbBgChecked??v.WHITE.DEFAULT}`,"--panel-switch-thumb-bg":`${t?.component?.switch?.color?.colorThumbBg??v.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??v.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??v.GRAY.DEFAULT}`,"--panel-checkbox-color":`${t?.component?.checkbox?.color?.color??v.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}),BC=({children:e,config:t,theme:n,components:a,translation:s,className:o})=>r.jsx(Pf,{config:s,children:r.jsx(jC,{config:n,className:o,children:r.jsx(vi,{config:t,children:r.jsx(Xf,{config:a,children:r.jsx(Bf,{children:e})})})})}),$C=e=>r.jsx(BC,{...e,children:r.jsx(MC,{})}),FC="ref",WC=({vaultAddress:e,userAddress:t,query:n,logEvent:a,tagInvestorByReferrer:s})=>{const[o,i]=ia("localStorage",xt.REFERRER,""),[l,c]=ia("localStorage",xt.REF_POOL,""),d=n[FC];u.useEffect(()=>{!d||typeof d!="string"||J(e)||localStorage.getItem(xt.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])},UC=({title:e,children:t,className:n,titleClassName:a})=>r.jsxs("div",{className:A("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:A("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})]}),zC=({isOpen:e,onClose:t,children:n,className:a,ThemeProvider:s=u.Fragment})=>{const o=u.useRef(null);return r.jsx(P.Dialog,{open:e,initialFocus:o,as:"div",className:A("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(P.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(P.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})})]})})})},HC=()=>{const e=ze(),{isModalOpen:t,pendingTransaction:n}=ge(),{setIsModalOpen:a}=$t(),s=u.useCallback(()=>{a(!0),e?.(Q.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}},GC=({children:e,themeConfig:t})=>{const{onOpen:n,isModalOpen:a,onClose:s,isTransactionPending:o}=HC(),i=he();Ol();const l=u.useCallback(({children:c})=>r.jsx(Pl,{config:t,children:c}),[t]);return r.jsxs(r.Fragment,{children:[e({onClick:n,isTransactionPending:o}),r.jsx(zC,{isOpen:a,onClose:s,ThemeProvider:l,className:"limit-order",children:r.jsx(UC,{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(_l,{onClose:s})})})]})},VC=({children:e,vaultChainId:t,vaultAddress:n,pricingAsset:a,translation:s,minAmountInUsd:o=$a,actions:i,themeConfig:l,isModalOpen:c})=>{const{isFetched:d,upperLimitPrice:p,lowerLimitPrice:m}=Dl({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(bl,{config:s,children:r.jsx(Sl,{initialState:y,actions:i,children:r.jsx(GC,{themeConfig:l,children:e})})}):null};Object.defineProperty(exports,"useBlockNumber",{enumerable:!0,get:()=>C.useBlockNumber});Object.defineProperty(exports,"useConnect",{enumerable:!0,get:()=>C.useConnect});Object.defineProperty(exports,"useDisconnect",{enumerable:!0,get:()=>C.useDisconnect});Object.defineProperty(exports,"usePublicClient",{enumerable:!0,get:()=>C.usePublicClient});Object.defineProperty(exports,"useReadContract",{enumerable:!0,get:()=>C.useReadContract});Object.defineProperty(exports,"useReadContracts",{enumerable:!0,get:()=>C.useReadContracts});Object.defineProperty(exports,"useSendTransaction",{enumerable:!0,get:()=>C.useSendTransaction});Object.defineProperty(exports,"useWaitForTransactionReceipt",{enumerable:!0,get:()=>C.useWaitForTransactionReceipt});Object.defineProperty(exports,"useWalletClient",{enumerable:!0,get:()=>C.useWalletClient});Object.defineProperty(exports,"useWriteContract",{enumerable:!0,get:()=>C.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=Zl;exports.AaveLendingPoolAbi=Kn;exports.AddressZero=I;exports.BRIDGED_TOKENS_SYMBOLS=xa;exports.BRIDGED_USDC_ARBITRUM=ma;exports.BRIDGED_USDC_OPTIMISM=wa;exports.BRIDGED_USDC_POLYGON=Ta;exports.CBBTC_BASE=Fr;exports.CBETH_BASE=Nc;exports.CHAIN_MAP=Xl;exports.CHAIN_NATIVE_TOKENS=Ye;exports.CURRENCY_SYMBOL_MAP=Tr;exports.ConfigProvider=vi;exports.DAI_OPTIMISM=zr;exports.DAI_POLYGON=qr;exports.DEFAULT_DEPOSIT_METHOD=Hl;exports.DEFAULT_DEPOSIT_SLIPPAGE=dn;exports.DEFAULT_DEPOSIT_SLIPPAGE_SCALE=ql;exports.DEFAULT_ERROR_MESSAGE=Pr;exports.DEFAULT_LOCK_TIME=lr;exports.DEFAULT_MULTI_ASSET_WITHDRAW_METHOD=ur;exports.DEFAULT_POLLING_INTERVAL=Je;exports.DEFAULT_PRECISION=k;exports.DEFAULT_PROMISE_TIMEOUT_MS=hr;exports.DEFAULT_SIMULATION_ERROR=Xn;exports.DEFAULT_WITHDRAW_SLIPPAGE=dr;exports.EMPTY_POOL_CONFIG=cr;exports.EasySwapperV2Abi=fe;exports.EstimationError=ct;exports.GAS_ESTIMATION_ERROR=Qn;exports.GAS_LIMIT_BUFFER_COEFF=wr;exports.GET_ALL_LIMIT_ORDER_IDS_FUNCTION_NAME=Ba;exports.GMX_MARKET_ASSETS=eo;exports.GMX_MARKET_ASSETS_MAP=se;exports.LIMIT_ORDER_READ_FUNCTION_NAME=Cn;exports.LINK_ARBITRUM=_c;exports.LINK_OPTIMISM=kc;exports.LimitOrderAbi=pn;exports.LimitOrderModal=VC;exports.MANAGER_FEE_DENOMINATOR=me;exports.MAX_GAS_LIMIT_MAP=Yt;exports.MULTI_ASSET_TOKEN=en;exports.MaxUint256=Fe;exports.NATIVE_TOKEN_DEPOSIT_GAS_LIMIT=yr;exports.PAXG_POLYGON=Bc;exports.PYTH_API_LINK=Wc;exports.PoolFactoryAbi=Ue;exports.PoolLogicAbi=be;exports.PoolManagerLogicAbi=_e;exports.RETH_BASE=Qt;exports.RewardDistributionAbi=Dr;exports.SETH_OPTIMISM=Rc;exports.SHORTEN_POLLING_INTERVAL=We;exports.SIMULATION_TIMEOUT_ERROR=Lr;exports.SUSD_OPTIMISM=Lc;exports.TBTC_ARBITRUM=Ac;exports.TBTC_BASE=Oc;exports.TBTC_OPTIMISM=Mc;exports.TBTC_POLYGON=$c;exports.TRADING_LOG_EVENT_PARAM=Te;exports.TRADING_PANEL_LOG_EVENT=Q;exports.TradingPanelProvider=yd;exports.TradingWidget=$C;exports.USDCBC_BASE=Dc;exports.USDC_ARBITRUM=le;exports.USDC_BASE=$r;exports.USDC_MAINNET=Yr;exports.USDC_OPTIMISM=Wr;exports.USDC_POLYGON=Hr;exports.USDT_ARBITRUM=Cc;exports.USDT_MAINNET=Kr;exports.USDT_OPTIMISM=Ur;exports.USDT_POLYGON=Vr;exports.WBNB_ARBITRUM=Ic;exports.WBTC_ARBITRUM=je;exports.WBTC_BY_CHAIN_ID=Xr;exports.WBTC_MAINNET=va;exports.WBTC_OPTIMISM=Ke;exports.WBTC_POLYGON=ba;exports.WETH_ARBITRUM=St;exports.WETH_BASE=ya;exports.WETH_BY_CHAIN_ID=Qr;exports.WETH_MAINNET=fa;exports.WETH_OPTIMISM=ha;exports.WETH_POLYGON=ga;exports.WPOL_POLYGON=Gr;exports.WSOL_ARBITRUM=Ec;exports.WSTETH_ARBITRUM=Sc;exports.WSTETH_BASE=Pc;exports.WSTETH_OPTIMISM=jc;exports.clientSide=mn;exports.commify=po;exports.contractsAbisMap=Or;exports.contractsAddressesMap=Nr;exports.formatByCurrency=Zt;exports.formatNumberToLimitedDecimals=Oe;exports.formatNumeratorToPercentage=vt;exports.formatPercentage=It;exports.formatToUsd=ee;exports.getContractAbiById=to;exports.getContractAddressById=U;exports.getConventionalTokenPriceDecimals=Ct;exports.getErrorMessage=ei;exports.getLimitOrderId=Cl;exports.getNativeTokenInvestableBalance=oo;exports.getPercent=De;exports.getPoolFraction=Jn;exports.isAaveLendAndBorrowAsset=Zn;exports.isEqualAddress=z;exports.isErrorWithMessage=Zo;exports.isFmpAirdropVaultAddress=Sa;exports.isNativeToken=un;exports.isZeroAddress=J;exports.normalizeNumber=$e;exports.removeInsignificantTrailingZeros=ea;exports.shiftBy=tn;exports.shortenAddress=no;exports.toErrorWithMessage=Jo;exports.transformAddressForAnalytics=Ca;exports.useAccount=M;exports.useAddPoolConfig=xd;exports.useAssetPrice=ce;exports.useAvailableManagerFee=wi;exports.useBalance=Ia;exports.useBrowserStorage=ia;exports.useCheckWhitelist=ii;exports.useCompleteWithdrawSwapQuotes=qe;exports.useCompleteWithdrawTrackedAssets=ue;exports.useContractFunction=ve;exports.useContractPoolComposition=li;exports.useContractReadErrorLogging=ja;exports.useContractReadsErrorLogging=Sn;exports.useCustomDepositTokensPerChain=Eo;exports.useDebounce=Za;exports.useDepositLockTime=rl;exports.useDepositProjectedEarnings=Ki;exports.useEasySwapperTrackedAssets=zi;exports.useExchangeRate=Bi;exports.useFlatmoneyPointsUserBalances=gi;exports.useGasPrice=ti;exports.useHasSingleAssetWithdrawBlockers=za;exports.useInvalidateLimitOrderQuery=Nl;exports.useInvalidateOnBlock=rn;exports.useInvalidatePoolContractData=di;exports.useInvalidateTradingQueries=En;exports.useIsBatchContractWritesSupported=In;exports.useIsCompleteWithdrawStep=ut;exports.useIsDepositBlocked=ff;exports.useIsDepositTradingPanelType=Ge;exports.useIsDhedgeVaultConnected=Nt;exports.useIsInsufficientBalance=Dt;exports.useIsPoolAddress=Sd;exports.useIsTradingEnabled=Ya;exports.useIsWalletConnected=Ed;exports.useManagerLogicAddress=Wa;exports.useNetwork=Ae;exports.useOnSimulateTransaction=Ao;exports.useOnTokenSelector=xo;exports.useOnTradingTypeChange=ns;exports.useOnTransactionError=bo;exports.useOnTransactionEstimationError=yn;exports.useOnTransactionSuccess=vo;exports.usePoolComposition=dt;exports.usePoolCompositionWithFraction=ci;exports.usePoolDynamic=oe;exports.usePoolFees=_n;exports.usePoolManagerDynamic=Lt;exports.usePoolManagerLogicData=Ua;exports.usePoolManagerStatic=Pt;exports.usePoolStatic=Ot;exports.usePoolTokenPrice=de;exports.useProjectedEarningsCore=Yi;exports.useRawAssetPrice=qa;exports.useReceiveTokenInput=L;exports.useReferralProgram=WC;exports.useSendTokenInput=N;exports.useSetPoolAddress=wd;exports.useSetTradingType=bd;exports.useStaticCallQuery=ib;exports.useTokenAllowance=wn;exports.useTradingPanelActions=W;exports.useTradingPanelLogger=ze;exports.useTradingPanelModal=X;exports.useTradingPanelPoolAddress=So;exports.useTradingPanelPoolConfig=x;exports.useTradingPanelPoolConfigs=et;exports.useTradingPanelPoolFallbackData=He;exports.useTradingPanelSettings=K;exports.useTradingPanelState=te;exports.useTradingPanelTransactions=re;exports.useTradingPanelType=ye;exports.useTradingResultHandling=ji;exports.useTradingSettleHandler=Ve;exports.useUpdateCustomDepositTokensPerChain=Ad;exports.useUpdatePoolConfig=vd;exports.useUpdatePoolFallbackData=To;exports.useUpdateReceiveTokenInput=gd;exports.useUpdateSendTokenInput=hd;exports.useUpdateTradingModal=fd;exports.useUpdateTradingSettings=Td;exports.useUserBalancesDynamic=oi;exports.useUserLimitOrder=Ft;exports.useUserTokenBalance=we;exports.useUserVaultBalance=yi;exports.useUserVaultsBalances=mi;exports.useVaultContractData=vf;exports.useVaultDepositTokens=Ln;exports.useVaultSupplyCap=hi;exports.useVaultVestedPoints=pi;exports.validateLoggerEventParams=Xc;
|