@dhedge/trading-widget 5.1.0 → 5.2.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 +6 -2
- package/core-kit/const/network.d.ts +127 -7
- package/core-kit/hooks/pool/use-available-manager-fee.d.ts +1 -1
- package/core-kit/hooks/pool/use-pool-dynamic-exit-remaining-cooldown.d.ts +1 -1
- package/core-kit/hooks/pool/use-user-vault-balance.d.ts +1 -1
- package/core-kit/hooks/state/action.d.ts +1 -1
- package/core-kit/hooks/trading/deposit-v2/use-deposit-quote-contract-read.d.ts +1 -1
- package/core-kit/hooks/trading/use-easy-swapper-tracked-assets.d.ts +1 -1
- package/core-kit/hooks/trading/withdraw-v2/use-withdrawal-vault-address.d.ts +1 -1
- package/core-kit/types/config.types.d.ts +1 -0
- package/core-kit/types/state.types.d.ts +2 -2
- package/index.cjs +1 -1
- package/index.js +2381 -2328
- package/limit-orders/hooks/use-user-limit-order.d.ts +1 -1
- package/package.json +3 -3
- package/style.css +1 -1
- package/trading-widget/components/deposit/button/valid-deposit-button/valid-deposit-button.hooks.d.ts +1 -0
- package/trading-widget/components/widget/widget-input/widget-input.hooks.d.ts +1 -1
- package/trading-widget/components/widget/widget-overlay/error-notification-overlay/complete-withdraw-error-overlay.d.ts +7 -0
- package/trading-widget/components/widget/widget-overlay/error-notification-overlay/error-notification-overlay.hooks.d.ts +1 -0
- package/trading-widget/components/widget/widget-overlay/pool-select-overlay/pool-select-overlay.hooks.d.ts +1 -0
- package/trading-widget/providers/theme-provider/theme-provider.types.d.ts +1 -0
- package/trading-widget/providers/translation-provider/translation-provider.types.d.ts +2 -2
package/index.cjs
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
"use strict";var zl=Object.defineProperty;var Hl=(e,t,n)=>t in e?zl(e,t,{enumerable:!0,configurable:!0,writable:!0,value:n}):e[t]=n;var Pe=(e,t,n)=>Hl(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"),h=require("wagmi/chains"),Et=require("date-fns"),D=require("viem"),T=require("bignumber.js"),Gl=require("ts-custom-error"),tt=require("@tanstack/react-query"),se=require("@heroicons/react/24/outline"),C=require("classnames"),Vl=require("react-popper-tooltip"),ql=require("wagmi/connectors"),Ae=require("@heroicons/react/24/solid"),Zn=require("@heroicons/react/16/solid"),an=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,Yl="1000000000000000000",Kl=59e3,nt=3e4,We=15e3,ir=5e3,lr=400,cr=lr*1.2,dr=Et.formatDuration({hours:24}),pr={address:I,symbol:"",chainId:h.optimism.id,depositParams:{customTokens:[]},withdrawParams:{customTokens:[]},deprecated:!1},Ql="deposit",ur=1,mn=0,Xl=.5,mr=.02,Zl=.75,Jl=[mn],yr="withdrawSafe",wr="initWithdrawal",ec="unrollAndClaim",tc="completeWithdrawal",hr=3e7,gr=1.25,me=1e4,br=13e3,Tr=3,wa=2e4,nc=15e3,ac={[h.mainnet.id]:h.mainnet,[h.polygon.id]:h.polygon,[h.optimism.id]:h.optimism,[h.arbitrum.id]:h.arbitrum,[h.base.id]:h.base},Ze={[h.mainnet.id]:{nativeTokenSymbol:"ETH",wrappedNativeTokenName:"WETH",address:"0xc02aaa39b223fe8d0a0e5c4f27ead9083c756cc2",decimals:P},[h.polygon.id]:{nativeTokenSymbol:"POL",wrappedNativeTokenName:"WPOL",address:"0x0d500b1d8e8ef31e21c99d1db9a6444d3adf1270",decimals:P},[h.optimism.id]:{nativeTokenSymbol:"ETH",wrappedNativeTokenName:"WETH",address:"0x4200000000000000000000000000000000000006",decimals:P},[h.arbitrum.id]:{nativeTokenSymbol:"ETH",wrappedNativeTokenName:"WETH",address:"0x82af49447d8a07e3bd95bd0d56f35241523fbab1",decimals:P},[h.base.id]:{nativeTokenSymbol:"ETH",wrappedNativeTokenName:"WETH",address:"0x4200000000000000000000000000000000000006",decimals:P}},Xt={[h.mainnet.id]:299e5,[h.polygon.id]:299e5,[h.optimism.id]:299e5,[h.arbitrum.id]:299e5,[h.base.id]:299e5},sc={[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"},fr={USD:"$",ETH:"Ξ",BTC:"₿"},rc={USD:2,ETH:4,BTC:6},oc=["USDC","USDT"],X={INVEST_INPUT_FOCUS:"invest_input_focus",APPROVED_TOKEN:"approved_token",DEPOSIT:"deposit",MULTI_ASSET_WITHDRAW:"multi_asset_withdraw",SINGLE_ASSET_WITHDRAW:"single_asset_unroll",SINGLE_ASSET_WITHDRAW_AND_CLAIM:"single_asset_unroll_and_claim",CLAIM:"claim_unrolled_assets",SWAP:"swap_unrolled_assets",WITHDRAWAL:"withdrawal",TRADING_SETTINGS_OPENED:"trading_settings_opened",INFINITE_ALLOWANCE_CHANGE:"infinite_allowance_change",BATCH_TRANSACTIONS_CHANGE:"batch_transactions_change",CREATE_LIMIT_SELL_ORDER:"limit_order_create",OPEN_LIMIT_SELL_VIEW:"open_limit_sell_view",LIMIT_ORDER_WITHDRAW:"limit_order_withdraw",LIMIT_ORDER_WITHDRAW_DELETE:"limit_order_withdraw_delete"},ic={approve:[X.APPROVED_TOKEN],deposit:[X.DEPOSIT],multi_withdraw:[X.WITHDRAWAL,X.MULTI_ASSET_WITHDRAW],single_withdraw:[X.WITHDRAWAL,X.SINGLE_ASSET_WITHDRAW],single_withdraw_and_claim:[X.WITHDRAWAL,X.SINGLE_ASSET_WITHDRAW_AND_CLAIM],claim:[X.CLAIM],swap:[X.SWAP],create_limit_sell_order:[X.CREATE_LIMIT_SELL_ORDER],limit_order_withdraw:[X.LIMIT_ORDER_WITHDRAW],delete_limit_order_withdraw:[X.LIMIT_ORDER_WITHDRAW_DELETE]},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 ke=(e=>(e.ETH="ETH",e.MAINNET="MAINNET",e.POLYGON="POLYGON",e.OE="OPTIMISM",e.ARBI="ARBITRUM",e.BASE="BASE",e))(ke||{});const gt=process.env.NEXT_PUBLIC_INFURA_API_KEY;h.arbitrum.id+"",`${gt}`,h.optimism.id+"",`${gt}`,h.polygon.id+"",`${gt}`,h.base.id+"",`${gt}`,h.mainnet.id+"",`${gt}`;const lc={[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 ha="0x0000000000000000000000000000000000000000";BigInt("0xffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff");h.mainnet.id+"",BigInt(100),h.optimism.id+"",BigInt(600),h.polygon.id+"",BigInt(600),h.base.id+"",BigInt(600),h.arbitrum.id+"",BigInt(5300);const cc="0x96D33bCF84DdE326014248E2896F79bbb9c13D6d",vr="0xbDd84294bC8299861A2121F749A25EFEb7168a32",dc="0x87870Bca3F3fD6335C3F4ce8392D69350B4fA4E2",pc="0xffFb5fB14606EB3a548C113026355020dDF27535",uc="0x794a61358D6845594F94dc1DB02A252b5b4814aD",xr="0xA5679C4272A056Bb83f039961fae7D99C48529F5",Ar="0x26a687e8244f1866E9Aa2D400c8b9957Aa8e6Ad4",mc="0x49Afe3abCf66CF09Fab86cb1139D8811C8afe56F",Sr="0xf067575Eb60c7587C11e867907AA7284833704d1",yc="0x59525b9b23adc475ef91d98dae06b568ba574ce5",wc="0xa907504d7a4c415b4e6e1d0866d96afe8202f0e5",hc="0x1849324228d852a67eb7443e42d967e480ffe95d",gc="0xa238dd80c259a72e81d7e4664a9801593f98d1c5",Cr="0xFcBEc28c43E356693971a24bf3F2Fd7D965E2ebA",bc="0x07e144e336fcc3fe928a8a2a5714da64354c1aab",Tc="0x5e61a079A178f0E5784107a4963baAe0c5a680c6",fc="0x794a61358D6845594F94dc1DB02A252b5b4814aD",Er="0x2Ed1bd7f66e47113672f3870308b5E867C5bb743",Ir="0x3bFE2a472d2964Ea4070725b7Fb0A868b3f08b63",vc="0xfdc7b8bFe0DD3513Cc669bB8d601Cb83e2F69cB0",xc="0x8dFf5E27EA6b7AC08EbFdf9eB090F32ee9a30fcf",Ac="0x794a61358D6845594F94dc1DB02A252b5b4814aD",_r="0x45b90480D6F643dE2f128db091A357C3c90399f2",Dr="0xB71410736d2C8F2DAf30dA9D332dA10534d2624d",Nr="0x4F754e0F0924afD74980886b0B479Fa1D7C58D0D";h.mainnet.id+"",h.arbitrum.id+"",h.base.id+"",h.optimism.id+"",h.polygon.id+"";h.mainnet.id+"",h.arbitrum.id+"",h.base.id+"",h.optimism.id+"",h.polygon.id+"";const Jn=[{anonymous:!1,inputs:[{indexed:!0,internalType:"address",name:"reserve",type:"address"},{indexed:!1,internalType:"address",name:"user",type:"address"},{indexed:!0,internalType:"address",name:"onBehalfOf",type:"address"},{indexed:!1,internalType:"uint256",name:"amount",type:"uint256"},{indexed:!1,internalType:"uint256",name:"borrowRateMode",type:"uint256"},{indexed:!1,internalType:"uint256",name:"borrowRate",type:"uint256"},{indexed:!0,internalType:"uint16",name:"referral",type:"uint16"}],name:"Borrow",type:"event"},{anonymous:!1,inputs:[{indexed:!0,internalType:"address",name:"reserve",type:"address"},{indexed:!1,internalType:"address",name:"user",type:"address"},{indexed:!0,internalType:"address",name:"onBehalfOf",type:"address"},{indexed:!1,internalType:"uint256",name:"amount",type:"uint256"},{indexed:!0,internalType:"uint16",name:"referral",type:"uint16"}],name:"Deposit",type:"event"},{anonymous:!1,inputs:[{indexed:!0,internalType:"address",name:"target",type:"address"},{indexed:!0,internalType:"address",name:"initiator",type:"address"},{indexed:!0,internalType:"address",name:"asset",type:"address"},{indexed:!1,internalType:"uint256",name:"amount",type:"uint256"},{indexed:!1,internalType:"uint256",name:"premium",type:"uint256"},{indexed:!1,internalType:"uint16",name:"referralCode",type:"uint16"}],name:"FlashLoan",type:"event"},{anonymous:!1,inputs:[{indexed:!0,internalType:"address",name:"collateralAsset",type:"address"},{indexed:!0,internalType:"address",name:"debtAsset",type:"address"},{indexed:!0,internalType:"address",name:"user",type:"address"},{indexed:!1,internalType:"uint256",name:"debtToCover",type:"uint256"},{indexed:!1,internalType:"uint256",name:"liquidatedCollateralAmount",type:"uint256"},{indexed:!1,internalType:"address",name:"liquidator",type:"address"},{indexed:!1,internalType:"bool",name:"receiveAToken",type:"bool"}],name:"LiquidationCall",type:"event"},{anonymous:!1,inputs:[],name:"Paused",type:"event"},{anonymous:!1,inputs:[{indexed:!0,internalType:"address",name:"reserve",type:"address"},{indexed:!0,internalType:"address",name:"user",type:"address"}],name:"RebalanceStableBorrowRate",type:"event"},{anonymous:!1,inputs:[{indexed:!0,internalType:"address",name:"reserve",type:"address"},{indexed:!0,internalType:"address",name:"user",type:"address"},{indexed:!0,internalType:"address",name:"repayer",type:"address"},{indexed:!1,internalType:"uint256",name:"amount",type:"uint256"}],name:"Repay",type:"event"},{anonymous:!1,inputs:[{indexed:!0,internalType:"address",name:"reserve",type:"address"},{indexed:!1,internalType:"uint256",name:"liquidityRate",type:"uint256"},{indexed:!1,internalType:"uint256",name:"stableBorrowRate",type:"uint256"},{indexed:!1,internalType:"uint256",name:"variableBorrowRate",type:"uint256"},{indexed:!1,internalType:"uint256",name:"liquidityIndex",type:"uint256"},{indexed:!1,internalType:"uint256",name:"variableBorrowIndex",type:"uint256"}],name:"ReserveDataUpdated",type:"event"},{anonymous:!1,inputs:[{indexed:!0,internalType:"address",name:"reserve",type:"address"},{indexed:!0,internalType:"address",name:"user",type:"address"}],name:"ReserveUsedAsCollateralDisabled",type:"event"},{anonymous:!1,inputs:[{indexed:!0,internalType:"address",name:"reserve",type:"address"},{indexed:!0,internalType:"address",name:"user",type:"address"}],name:"ReserveUsedAsCollateralEnabled",type:"event"},{anonymous:!1,inputs:[{indexed:!0,internalType:"address",name:"reserve",type:"address"},{indexed:!0,internalType:"address",name:"user",type:"address"},{indexed:!1,internalType:"uint256",name:"rateMode",type:"uint256"}],name:"Swap",type:"event"},{anonymous:!1,inputs:[],name:"Unpaused",type:"event"},{anonymous:!1,inputs:[{indexed:!0,internalType:"address",name:"reserve",type:"address"},{indexed:!0,internalType:"address",name:"user",type:"address"},{indexed:!0,internalType:"address",name:"to",type:"address"},{indexed:!1,internalType:"uint256",name:"amount",type:"uint256"}],name:"Withdraw",type:"event"},{inputs:[],name:"FLASHLOAN_PREMIUM_TOTAL",outputs:[{internalType:"uint256",name:"",type:"uint256"}],stateMutability:"view",type:"function"},{inputs:[],name:"LENDINGPOOL_REVISION",outputs:[{internalType:"uint256",name:"",type:"uint256"}],stateMutability:"view",type:"function"},{inputs:[],name:"MAX_NUMBER_RESERVES",outputs:[{internalType:"uint256",name:"",type:"uint256"}],stateMutability:"view",type:"function"},{inputs:[],name:"MAX_STABLE_RATE_BORROW_SIZE_PERCENT",outputs:[{internalType:"uint256",name:"",type:"uint256"}],stateMutability:"view",type:"function"},{inputs:[{internalType:"address",name:"asset",type:"address"},{internalType:"uint256",name:"amount",type:"uint256"},{internalType:"uint256",name:"interestRateMode",type:"uint256"},{internalType:"uint16",name:"referralCode",type:"uint16"},{internalType:"address",name:"onBehalfOf",type:"address"}],name:"borrow",outputs:[],stateMutability:"nonpayable",type:"function"},{inputs:[{internalType:"address",name:"asset",type:"address"},{internalType:"uint256",name:"amount",type:"uint256"},{internalType:"address",name:"onBehalfOf",type:"address"},{internalType:"uint16",name:"referralCode",type:"uint16"}],name:"deposit",outputs:[],stateMutability:"nonpayable",type:"function"},{inputs:[{internalType:"address",name:"asset",type:"address"},{internalType:"address",name:"from",type:"address"},{internalType:"address",name:"to",type:"address"},{internalType:"uint256",name:"amount",type:"uint256"},{internalType:"uint256",name:"balanceFromBefore",type:"uint256"},{internalType:"uint256",name:"balanceToBefore",type:"uint256"}],name:"finalizeTransfer",outputs:[],stateMutability:"nonpayable",type:"function"},{inputs:[{internalType:"address",name:"receiverAddress",type:"address"},{internalType:"address[]",name:"assets",type:"address[]"},{internalType:"uint256[]",name:"amounts",type:"uint256[]"},{internalType:"uint256[]",name:"modes",type:"uint256[]"},{internalType:"address",name:"onBehalfOf",type:"address"},{internalType:"bytes",name:"params",type:"bytes"},{internalType:"uint16",name:"referralCode",type:"uint16"}],name:"flashLoan",outputs:[],stateMutability:"nonpayable",type:"function"},{inputs:[],name:"getAddressesProvider",outputs:[{internalType:"contract ILendingPoolAddressesProvider",name:"",type:"address"}],stateMutability:"view",type:"function"},{inputs:[{internalType:"address",name:"asset",type:"address"}],name:"getConfiguration",outputs:[{components:[{internalType:"uint256",name:"data",type:"uint256"}],internalType:"struct DataTypes.ReserveConfigurationMap",name:"",type:"tuple"}],stateMutability:"view",type:"function"},{inputs:[{internalType:"address",name:"asset",type:"address"}],name:"getReserveData",outputs:[{components:[{components:[{internalType:"uint256",name:"data",type:"uint256"}],internalType:"struct DataTypes.ReserveConfigurationMap",name:"configuration",type:"tuple"},{internalType:"uint128",name:"liquidityIndex",type:"uint128"},{internalType:"uint128",name:"variableBorrowIndex",type:"uint128"},{internalType:"uint128",name:"currentLiquidityRate",type:"uint128"},{internalType:"uint128",name:"currentVariableBorrowRate",type:"uint128"},{internalType:"uint128",name:"currentStableBorrowRate",type:"uint128"},{internalType:"uint40",name:"lastUpdateTimestamp",type:"uint40"},{internalType:"address",name:"aTokenAddress",type:"address"},{internalType:"address",name:"stableDebtTokenAddress",type:"address"},{internalType:"address",name:"variableDebtTokenAddress",type:"address"},{internalType:"address",name:"interestRateStrategyAddress",type:"address"},{internalType:"uint8",name:"id",type:"uint8"}],internalType:"struct DataTypes.ReserveData",name:"",type:"tuple"}],stateMutability:"view",type:"function"},{inputs:[{internalType:"address",name:"asset",type:"address"}],name:"getReserveNormalizedIncome",outputs:[{internalType:"uint256",name:"",type:"uint256"}],stateMutability:"view",type:"function"},{inputs:[{internalType:"address",name:"asset",type:"address"}],name:"getReserveNormalizedVariableDebt",outputs:[{internalType:"uint256",name:"",type:"uint256"}],stateMutability:"view",type:"function"},{inputs:[],name:"getReservesList",outputs:[{internalType:"address[]",name:"",type:"address[]"}],stateMutability:"view",type:"function"},{inputs:[{internalType:"address",name:"user",type:"address"}],name:"getUserAccountData",outputs:[{internalType:"uint256",name:"totalCollateralETH",type:"uint256"},{internalType:"uint256",name:"totalDebtETH",type:"uint256"},{internalType:"uint256",name:"availableBorrowsETH",type:"uint256"},{internalType:"uint256",name:"currentLiquidationThreshold",type:"uint256"},{internalType:"uint256",name:"ltv",type:"uint256"},{internalType:"uint256",name:"healthFactor",type:"uint256"}],stateMutability:"view",type:"function"},{inputs:[{internalType:"address",name:"user",type:"address"}],name:"getUserConfiguration",outputs:[{components:[{internalType:"uint256",name:"data",type:"uint256"}],internalType:"struct DataTypes.UserConfigurationMap",name:"",type:"tuple"}],stateMutability:"view",type:"function"},{inputs:[{internalType:"address",name:"asset",type:"address"},{internalType:"address",name:"aTokenAddress",type:"address"},{internalType:"address",name:"stableDebtAddress",type:"address"},{internalType:"address",name:"variableDebtAddress",type:"address"},{internalType:"address",name:"interestRateStrategyAddress",type:"address"}],name:"initReserve",outputs:[],stateMutability:"nonpayable",type:"function"},{inputs:[{internalType:"contract ILendingPoolAddressesProvider",name:"provider",type:"address"}],name:"initialize",outputs:[],stateMutability:"nonpayable",type:"function"},{inputs:[{internalType:"address",name:"collateralAsset",type:"address"},{internalType:"address",name:"debtAsset",type:"address"},{internalType:"address",name:"user",type:"address"},{internalType:"uint256",name:"debtToCover",type:"uint256"},{internalType:"bool",name:"receiveAToken",type:"bool"}],name:"liquidationCall",outputs:[],stateMutability:"nonpayable",type:"function"},{inputs:[],name:"paused",outputs:[{internalType:"bool",name:"",type:"bool"}],stateMutability:"view",type:"function"},{inputs:[{internalType:"address",name:"asset",type:"address"},{internalType:"address",name:"user",type:"address"}],name:"rebalanceStableBorrowRate",outputs:[],stateMutability:"nonpayable",type:"function"},{inputs:[{internalType:"address",name:"asset",type:"address"},{internalType:"uint256",name:"amount",type:"uint256"},{internalType:"uint256",name:"rateMode",type:"uint256"},{internalType:"address",name:"onBehalfOf",type:"address"}],name:"repay",outputs:[{internalType:"uint256",name:"",type:"uint256"}],stateMutability:"nonpayable",type:"function"},{inputs:[{internalType:"address",name:"asset",type:"address"},{internalType:"uint256",name:"configuration",type:"uint256"}],name:"setConfiguration",outputs:[],stateMutability:"nonpayable",type:"function"},{inputs:[{internalType:"bool",name:"val",type:"bool"}],name:"setPause",outputs:[],stateMutability:"nonpayable",type:"function"},{inputs:[{internalType:"address",name:"asset",type:"address"},{internalType:"address",name:"rateStrategyAddress",type:"address"}],name:"setReserveInterestRateStrategyAddress",outputs:[],stateMutability:"nonpayable",type:"function"},{inputs:[{internalType:"address",name:"asset",type:"address"},{internalType:"bool",name:"useAsCollateral",type:"bool"}],name:"setUserUseReserveAsCollateral",outputs:[],stateMutability:"nonpayable",type:"function"},{inputs:[{internalType:"address",name:"asset",type:"address"},{internalType:"uint256",name:"rateMode",type:"uint256"}],name:"swapBorrowRateMode",outputs:[],stateMutability:"nonpayable",type:"function"},{inputs:[{internalType:"address",name:"asset",type:"address"},{internalType:"uint256",name:"amount",type:"uint256"},{internalType:"address",name:"to",type:"address"}],name:"withdraw",outputs:[{internalType:"uint256",name:"",type:"uint256"}],stateMutability:"nonpayable",type:"function"}],Sc=[{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"}],Te=[{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"}],Cc=[{type:"tuple[]",components:[{type:"address",name:"asset"},{type:"uint256",name:"amount"},{type:"tuple",name:"swapData",components:[{type:"bytes32",name:"routerKey"},{type:"bytes",name:"txData"}]}]}],Ec=[{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"}],Or=[{anonymous:!1,inputs:[{components:[{internalType:"address",name:"pool",type:"address"},{internalType:"uint256",name:"amount",type:"uint256"}],indexed:!1,internalType:"struct RewardDistribution.RewardSummary[]",name:"distributedRewards",type:"tuple[]"},{indexed:!1,internalType:"uint256",name:"totalDistributedRewards",type:"uint256"}],name:"RewardsDistribution",type:"event"},{inputs:[],name:"calculateEligiblePoolsRewards",outputs:[{components:[{internalType:"address",name:"pool",type:"address"},{internalType:"uint256",name:"amount",type:"uint256"}],internalType:"struct RewardDistribution.RewardSummary[]",name:"rewards",type:"tuple[]"},{internalType:"uint256",name:"totalRewardsToDistribute",type:"uint256"}],stateMutability:"view",type:"function"},{inputs:[],name:"getEligiblePoolsWithTvl",outputs:[{internalType:"uint256",name:"tvl",type:"uint256"},{components:[{internalType:"address",name:"pool",type:"address"},{internalType:"uint256",name:"tvl",type:"uint256"}],internalType:"struct RewardDistribution.EligiblePool[]",name:"eligiblePools",type:"tuple[]"}],stateMutability:"view",type:"function"},{inputs:[],name:"getRewardsAPY",outputs:[{internalType:"uint256",name:"apy",type:"uint256"}],stateMutability:"view",type:"function"},{inputs:[],name:"getWhitelistedPools",outputs:[{internalType:"address[]",name:"",type:"address[]"}],stateMutability:"view",type:"function"},{inputs:[],name:"lastDistributionTime",outputs:[{internalType:"uint256",name:"",type:"uint256"}],stateMutability:"view",type:"function"},{inputs:[],name:"rewardAmountPerSecond",outputs:[{internalType:"uint256",name:"",type:"uint256"}],stateMutability:"view",type:"function"},{inputs:[],name:"rewardToken",outputs:[{internalType:"contract IERC20",name:"",type:"address"}],stateMutability:"view",type:"function"}],Zt=[{inputs:[{internalType:"address",name:"account",type:"address"}],name:"balanceOf",outputs:[{internalType:"uint256",name:"",type:"uint256"}],stateMutability:"view",type:"function"},{inputs:[{internalType:"address",name:"account",type:"address"}],name:"getUnlockTax",outputs:[{internalType:"uint256",name:"unlockTax",type:"uint256"}],stateMutability:"view",type:"function"},{inputs:[{internalType:"address",name:"account",type:"address"}],name:"lockedBalance",outputs:[{internalType:"uint256",name:"amount",type:"uint256"}],stateMutability:"view",type:"function"},{inputs:[{internalType:"address",name:"account",type:"address"}],name:"unlockTime",outputs:[{internalType:"uint256",name:"unlockTime",type:"uint256"}],stateMutability:"view",type:"function"}],Ic=[{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=[...Ic,{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"}],yn=[{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"}],Pr={[h.mainnet.id]:{factory:cc,easySwapperV2:vr,aaveLendingPoolV3:dc},[h.polygon.id]:{factory:vc,aaveLendingPoolV2:xc,aaveLendingPoolV3:Ac,easySwapperV2:_r,limitOrder:Dr},[h.optimism.id]:{factory:Tc,rewardDistribution:bc,aaveLendingPoolV3:fc,easySwapperV2:Er,limitOrder:Ir},[h.arbitrum.id]:{factory:pc,aaveLendingPoolV3:uc,easySwapperV2:xr,limitOrder:Ar},[h.base.id]:{factory:mc,flatcoinPointsModule:yc,easySwapperV2:Sr,aaveLendingPoolV3:gc,limitOrder:Cr}},kr={factory:Ue,aaveLendingPoolV2:Jn,aaveLendingPoolV3:Jn,rewardDistribution:Or,poolManagerLogic:_e,erc20:D.erc20Abi,poolLogic:Te,flatcoinPointsModule:Zt,easySwapperV2:fe,limitOrder:yn},ea="Gas estimate error occurred",Rr="See console logs to report error details.",ta="Missing simulation params",Lr="Simulation timeout",Mr="swap_data_deposit_error",jr="swap_data_withdraw_error",bt={title:"Low Slippage",hint:"Please increase slippage tolerance and try again."},Br={"invalid liquidityMinted":bt,"high withdraw slippage":bt,"high deposit slippage":bt,"high swap slippage":bt,InsufficientAmountReceived:bt,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."},[Mr]:{title:"Swap Quote Fetching Error",hint:"Please select a different deposit option, refresh the swap quote, or choose another swap source in settings."},[jr]:{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."}},$r="Invalid limit order prices",Fr={InvalidPrices:{title:$r}},_c=[...Object.keys(Br),...Object.keys(Fr)],U=18,ga={address:"0xff970a61a04b1ca14834a43f5de4533ebddb5cc8",symbol:"USDCe",decimals:6,value:""},le={address:"0xaf88d065e77c8cC2239327C5EDb3A432268e5831",symbol:"USDC",decimals:6,value:""},It={address:"0x82af49447d8a07e3bd95bd0d56f35241523fbab1",symbol:"WETH",decimals:U,value:""},Me={address:"0x2f2a2543b76a4166549f7aab2e75bef0aefc5b0f",symbol:"WBTC",decimals:8,value:""},Dc={address:"0x6c84a8f1c29108F47a79964b5Fe888D4f4D0dE40",symbol:"tBTC",decimals:U,value:""},Nc={address:"0x5979D7b546E38E414F7E9822514be443A4800529",symbol:"wstETH",decimals:U,value:""},Oc={address:"0xfd086bc7cd5c481dcc9c85ebe478a1c0b69fcbb9",symbol:"USDT",decimals:6,value:""},Pc={address:"0x2bcC6D6CdBbDC0a4071e48bb3B969b06B3330c07",symbol:"SOL",decimals:9,value:""},kc={address:"0xa9004a5421372e1d83fb1f85b0fc986c912f91f3",symbol:"WBNB",decimals:U,value:""},Rc={address:"0xf97f4df75117a78c1a5a0dbb814af92458539fb4",symbol:"LINK",decimals:U,value:""},Wr={address:"0x833589fcd6edb6e08f4c7c32d4f71b54bda02913",symbol:"USDC",decimals:6,value:""},Lc={address:"0xd9aaec86b65d86f6a7b5b1b0c42ffa531710b6ca",symbol:"USDbC",decimals:6,value:""},ba={address:"0x4200000000000000000000000000000000000006",symbol:"WETH",decimals:U,value:""},Mc={address:"0x2ae3f1ec7f1f5012cfeab0185bfc7aa3cf0dec22",symbol:"cbETH",decimals:U,value:""},Ur={address:"0xcbb7c0000ab88b473b1f5afd9ef808440eed33bf",symbol:"cbBTC",decimals:8,value:""},Jt={address:"0xb6fe221fe9eef5aba221c348ba20a1bf5e73624c",symbol:"rETH",decimals:U,value:""},jc={address:"0x236aa50979D5f3De3Bd1Eeb40E81137F22ab794b",symbol:"tBTC",decimals:U,value:""},Bc={address:"0xc1cba3fcea344f92d9239c08c0568f6f2f0ee452",symbol:"wstETH",decimals:U,value:""},Ta={address:"0x7F5c764cBc14f9669B88837ca1490cCa17c31607",symbol:"USDCe",decimals:6,value:""},zr={address:"0x0b2C639c533813f4Aa9D7837CAf62653d097Ff85",symbol:"USDC",decimals:6,value:""},Hr={address:"0x94b008aa00579c1307b0ef2c499ad98a8ce58e58",symbol:"USDT",decimals:6,value:""},fa={address:"0x4200000000000000000000000000000000000006",symbol:"WETH",decimals:U,value:""},$c={address:"0x8c6f28f2F1A3C87F0f938b96d27520d9751ec8d9",symbol:"sUSD",decimals:U,value:""},Gr={address:"0xda10009cbd5d07dd0cecc66161fc93d7c9000da1",symbol:"DAI",decimals:U,value:""},Je={address:"0x68f180fcce6836688e9084f035309e29bf0a2095",symbol:"WBTC",decimals:8,value:""},Fc={address:"0xe405de8f52ba7559f9df3c368500b6e6ae6cee49",symbol:"sETH",decimals:U,value:""},Wc={address:"0x350a791bfc2c21f9ed5d10980dad2e2638ffa7f6",symbol:"LINK",decimals:U,value:""},Uc={address:"0x6c84a8f1c29108F47a79964b5Fe888D4f4D0dE40",symbol:"tBTC",decimals:U,value:""},zc={address:"0x1F32b1c2345538c0c6f582fCB022739c4A194Ebb",symbol:"wstETH",decimals:U,value:""},va={address:"0x7ceB23fD6bC0adD59E62ac25578270cFf1b9f619",symbol:"WETH",decimals:U,value:""},xa={address:"0x2791Bca1f2de4661ED88A30C99A7a9449Aa84174",symbol:"USDCe",decimals:6,value:""},Vr={address:"0x3c499c542cEF5E3811e1192ce70d8cC03d5c3359",symbol:"USDC",decimals:6,value:""},Hc={address:"0x553d3d295e0f695b9228246232edf400ed3560b5",symbol:"PAXG",decimals:U,value:""},Aa={address:"0x1BFD67037B42Cf73acF2047067bd4F2C47D9BfD6",symbol:"WBTC",decimals:8,value:""},qr={address:"0x0d500B1d8E8eF31E21C99d1Db9A6444d3ADf1270",symbol:"WPOL",decimals:U,value:""},Yr={address:"0xc2132d05d31c914a87c6611c10748aeb04b58e8f",symbol:"USDT",decimals:6,value:""},Kr={address:"0x8f3cf7ad23cd3cadbd9735aff958023239c6a063",symbol:"DAI",decimals:U,value:""},Gc={address:"0x236aa50979d5f3de3bd1eeb40e81137f22ab794b",symbol:"tBTC",decimals:U,value:""},Sa={address:"0xc02aaa39b223fe8d0a0e5c4f27ead9083c756cc2",symbol:"WETH",decimals:U,value:""},Qr={address:"0xa0b86991c6218b36c1d19d4a2e9eb0ce3606eb48",symbol:"USDC",decimals:6,value:""},Ca={address:"0x2260fac5e5542a773aa44fbcfedf7c193bc2c599",symbol:"WBTC",decimals:8,value:""},Xr={address:"0xdac17f958d2ee523a2206206994597c13d831ec7",symbol:"USDT",decimals:6,value:""},Vc={address:"0x68749665ff8d2d112fa859aa293f07a622782f38",symbol:"XAUt",decimals:6,value:""},sn={address:ha,symbol:"all",decimals:U,value:""},Ea={[ga.address.toLowerCase()]:"USDCe",[Ta.address.toLowerCase()]:"USDCe",[xa.address.toLowerCase()]:"USDCe"},Zr={[h.mainnet.id]:Sa,[h.optimism.id]:fa,[h.base.id]:ba,[h.polygon.id]:va,[h.arbitrum.id]:It},Jr={[h.optimism.id]:Je,[h.base.id]:Ur,[h.polygon.id]:Aa,[h.arbitrum.id]:Me,[h.mainnet.id]:Ca},qc={[h.optimism.id]:{WETH:fa,USDC:zr,WBTC:Je,USDCe:Ta,USDT:Hr,DAI:Gr},[h.polygon.id]:{WMATIC:qr,WETH:va,USDC:Vr,WBTC:Aa,USDCe:xa,USDT:Yr,DAI:Kr},[h.arbitrum.id]:{WETH:It,USDC:le,WBTC:Me,USDCe:ga},[h.base.id]:{WETH:ba,USDC:Wr},[h.mainnet.id]:{WETH:Sa,USDC:Qr,WBTC:Ca,USDT:Xr}},Yc="https://hermes.pyth.network",Kc="https://flat.money/flatcoin",Qc="https://v1.flat.money/flatcoin",en={RETH_BASE:"0xdb0cd65dcc7fe07003ce1201f91e1f966fa95768",WBTC_OPTIMISM:"0x6d857e9d24a7566bb72a3fb0847a3e0e4e1c2879",WBTC_ARBITRUM:"0xb1353d51991e79fefd4bfdba2a03e9f0232814a6"},Xc=Object.values(en),Zc={[en.RETH_BASE]:{symbol:Jt.symbol,decimals:Jt.decimals,address:Jt.address},[en.WBTC_OPTIMISM]:{symbol:Je.symbol,decimals:Je.decimals,address:Je.address},[en.WBTC_ARBITRUM]:{symbol:Me.symbol,decimals:Me.decimals,address:Me.address}},eo="0xb95fb324b8a2faf8ec4f76e3df46c718402736e2",to=[eo,"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"},Ia=["multi_withdraw","swap","claim","single_withdraw_and_claim"],ae={SOL_ARBITRUM:"0x09400d9db990d5ed3f35d7be61dfaeb900af03c9",BTC_ARBITRUM:"0x47c031236e19d024b42f8ae6780e44a573170703",WETH_WETH_ARBITRUM:"0x70d95587d40a2caf56bd97485ab3eec10bee6336",WETH_USDC_ARBITRUM:"0x450bb6774dd8a756274e0ab4107953259d2ac541",SUI_ARBITRUM:"0x6ecf2133e2c9751caadcb6958b9654bae198a797",DOGE_ARBITRUM:"0x6853ea96ff216fab11d2d930ce3c508556a4bdc4",XRP_ARBITRUM:"0x0ccb4faa6f1f1b30911619f1184082ab4e25813c",CRV_ARBITRUM:"0x0e46941f9bff8d0784bffa3d0d7883cdb82d7ae7",HYPE_ARBITRUM:"0xbcb8fe13d02b023e8f94f6881cc0192fd918a5c0",BNB_ARBITRUM:"0x2d340912aa47e33c90efb078e69e70efe2b34b9b",BNB_WBTC_USDC_ARBITRUM:"0x065577D05c3D4C11505ed7bc97BBF85d462A6A6f",LINK_ARBITRUM:"0x7f1fa204bb700853d36994da19f830b6ad18455c",PUMP_ARBITRUM:"0x4c0bb704529fa49a26bd854802d70206982c6f1b"},no=Object.values(ae),Jc={[ae.SOL_ARBITRUM]:le,[ae.BTC_ARBITRUM]:Me,[ae.WETH_WETH_ARBITRUM]:It,[ae.WETH_USDC_ARBITRUM]:It,[ae.SUI_ARBITRUM]:le,[ae.DOGE_ARBITRUM]:le,[ae.XRP_ARBITRUM]:le,[ae.CRV_ARBITRUM]:le,[ae.HYPE_ARBITRUM]:le,[ae.BNB_ARBITRUM]:le,[ae.LINK_ARBITRUM]:le,[ae.PUMP_ARBITRUM]:le,[ae.BNB_WBTC_USDC_ARBITRUM]:le},ed={"0x9a916e55f5b67226734cd7b465d51bce1d11a89a":le},Ct={IS_BATCH_TRANSACTIONS_ENABLED:"isBatchTransactionsEnabled",REFERRER:"referrer",REF_POOL:"ref_pool"},td=()=>typeof window<"u";function nd(){return td()&&typeof window.ethereum<"u"}async function ad(e){try{if(nd())return window.ethereum.request({method:"wallet_watchAsset",params:{type:"ERC20",options:e}})}catch{return!1}return!1}const H=(e,t)=>e?.toLowerCase()===t?.toLowerCase(),ee=e=>H(e,ha),z=(e,t)=>Pr[t]?.[e]??I,ao=e=>kr[e],so=e=>e&&`${e.substring(0,6)}...${e.substring(e.length-4,e.length)}`,na=({address:e,chainId:t})=>{const n=z("aaveLendingPoolV3",t);return H(e,n)},ro=({sourceAddress:e,amount:t})=>`${e}_${t}`,oo=(e,t)=>{const n=e.slice(0,t),a=e.slice(t);return{firstPart:n,secondPart:a}},De=(e,t)=>e/t*100,_t=e=>e<1?4:e<10?3:2,rn=(e,t=P)=>new T(e.toString()).shiftedBy(t).toFixed(0),aa=(e,t,n,a)=>new T(t).dividedBy(n).multipliedBy(e).shiftedBy(-(a||P)).toNumber(),io=e=>BigInt(new T(e||"0").shiftedBy(P).toFixed(0,T.ROUND_DOWN)),_a=e=>{const t=new T(.01),n=new T(e),a=!n.isZero()&&n.lt(t)?t:n;return BigInt(a.multipliedBy(100).toFixed(0))},ws=({vaultAddress:e,swapData:t,sendTokenAddress:n,sendTokenAmount:a,vaultDepositTokenAddress:s,minVaultTokensReceivedAmount:o,routerKey:i="ONE_INCH",swapDestinationAmount:l,swapSlippage:c})=>{const d=new T(l).multipliedBy(1-c/100).toFixed(0),p=[D.stringToHex(i,{size:32}),t];return[e,[[n,a,p],[s,d]],o]},sd=({receiveAssetAddress:e,assets:t,swapData:n})=>{const a={srcData:[],destAmount:new T("0")},{srcData:s}=t?.reduce((o,i)=>{const l=n?.[i.address];if(!l)return o;const c=[D.stringToHex(l.routerKey,{size:32}),l.rawTransaction.data],d=[i.address,i.rawBalance,c];return{srcData:[...o.srcData,d],destAmount:o.destAmount.plus(l.destinationAmount)}},a)??a;return[s,[e,"0"]]},rd=({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?.[ro({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(Cc,[l]),d=D.encodeAbiParameters(Ec,[{encodedSrcData:c,dstData:{dstAddress:i.asset,dstAmount:i.amount},slippage:a}]);return{supportedAsset:e,withdrawData:d,slippageTolerance:a}},wn=(e,t)=>Ze[t]?.nativeTokenSymbol===e,lo=({nativeTokenBalance:e,tokenDecimals:t,gasPrice:n})=>{const a=new T(n).multipliedBy(hr).shiftedBy(-t),s=new T(e).minus(a);return s.gt("0")?s:new T("0")},co=e=>oc.includes(e),od=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},id=(e,t=150)=>e.length>t?e.substring(0,t):e,hs=(e,t=_c)=>{const n=e.toLowerCase();return t.sort((a,s)=>s.length-a.length).find(a=>n.includes(a.toLowerCase()))},gs=e=>Br[e]??Fr[e],po=({errorMessage:e,abiErrors:t})=>{if(!e||e.includes("User rejected"))return null;const n=t.find(o=>e.includes(o));if(n&&hs(n))return gs(n);const a=hs(e);if(a)return gs(a);const[s]=e.split(n?".":"Contract").map(o=>o.trim());return{title:"Transaction failed",hint:`${id(s??"")} ${n?`: ${n}`:""}`}},ld=e=>typeof e=="bigint"&&e!==BigInt(0),Be=(e,t=U)=>new T(e).shiftedBy(-t).toNumber(),uo=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?Be(e):Number(e)),sa=e=>uo(e)?new T(e).toFixed():"",bs=["₀","₁","₂","₃","₄","₅","₆","₇","₈","₉"],ze=({value:e,decimals:t})=>{const n=new T(e);if(n.isGreaterThan(1)||n.isZero())return sa(n.toFixed(t));const s=(/e/i.test(e.toString())?parseFloat(e.toString()).toFixed(U):e.toString()).match(/^0\.(0+)(\d+)$/);if(s){const[,o,i]=s;if(o.length>=t&&o.length<bs.length)return`0.0${bs[o.length]}${i.slice(0,3)}`}return sa(n.toFixed(t))},Ot=(e,t=0)=>`${e.toLocaleString("en-US",{maximumFractionDigits:t})}%`,cd=e=>e.toString().replace(/\B(?=(\d{3})+(?!\d))/g,","),xt=(e,t,n=0)=>{const a=De(+e,t);return Ot(a,n)},tn=({currency:e,value:t})=>e==="USD"?te({value:t}):`${fr[e]} ${ze({value:t,decimals:rc[e]})}`,dd=(e,t)=>new T(new T(e).toFixed(t,T.ROUND_DOWN)).toString(),pd=(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)}`},mo=({balance:e,symbol:t,precision:n,truncateSymbol:a})=>`${dd(e,n)} ${pd(t)}`,yo=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)}`},hn=typeof window<"u",wo=e=>H(wc,e)||H(hc,e),ho=e=>Xc.some(t=>H(t,e)),go=e=>Zc[e.toLowerCase()]??{symbol:"",decimals:18,address:I},ud=e=>H(e,eo)?Qc:Kc,Da=e=>`eth_${e}`,md=({action:e,log:t,symbol:n,vaultAddress:a,chainId:s})=>{const o={[be.SYMBOL.NAME]:n,[be.CHAIN_ID.NAME]:s,[be.ADDRESS.NAME]:Da(a)};ic[e].forEach(i=>{t?.(i,o)})},yd=e=>no.some(t=>H(t,e)),wd=e=>Jc[e.toLowerCase()]??{symbol:"",decimals:18,address:I},hd=e=>ed[e.toLowerCase()];function gd(){if(hn)try{const e=localStorage.getItem(Ct.IS_BATCH_TRANSACTIONS_ENABLED);return e?JSON.parse(e):void 0}catch{return}}function bd(e){if(hn)try{localStorage.setItem(Ct.IS_BATCH_TRANSACTIONS_ENABLED,JSON.stringify(e))}catch(t){console.error("[core-kit]: Failed to persist batch transactions setting",t)}}const Td=e=>{const t=e.find(({swapQuotes:n})=>n);return t?.swapQuotes?Object.values(t.swapQuotes)[0]?.map(({routerKey:n})=>n)??[]:[]},fd=(e,t,n)=>e.map(({asset:a,swapParams:s,swapQuotes:o})=>!s||!o?{supportedAsset:a,withdrawData:"",slippageTolerance:n}:rd({assetAddress:a,swapQuotes:o,swapParams:s,slippageToleranceForContractTransaction:n,routerKey:t})),vd=async(e,t,n,a,s)=>{for(const o of e){const i=fd(t,o,n),{error:l}=await a(...s,i);if(!l)return i}return null},Ts=(e,t)=>(e??[]).map(n=>({supportedAsset:n,withdrawData:"",slippageTolerance:t})),xd=async(e,t,{fetchAaveSwapParams:n,fetchAaveSwapQuotes:a,withdrawAmountD18:s,slippage:o})=>Promise.all((e??[]).map(async i=>{if(!H(i,t))return{asset:i};try{const c=await n({withdrawAmountD18:s,slippage:o});if(c?.srcData.length){const d=await a({swapParams:c,slippage:o});return{asset:i,swapParams:c,swapQuotes:d}}return{asset:i}}catch(c){return console.error(c),{asset:i}}}));function Z(){}const fs={address:I,symbol:"",decimals:P,value:""},bo=e=>{const t=e?.poolAddress??I,n={address:t,symbol:e?.poolConfigMap?.[t]?.symbol??"",decimals:P,value:""},a=e?.type??"deposit",s=a==="deposit"?fs:n,o=a==="deposit"?n:fs;return{poolAddress:t,poolConfigMap:{...e?.poolConfigMap},settings:{slippage:"auto",isInfiniteAllowance:!1,isMultiAssetWithdrawalEnabled:!0,isMaxSlippageLoading:!1,availableAggregators:[],...e?.settings,isBatchTransactionsEnabled:gd()??e?.settings?.isBatchTransactionsEnabled??!1,selectedAggregators:e?.settings?.selectedAggregators??e?.settings?.availableAggregators??[]},type:a,input:{sendToken:{...s,...e?.input?.sendToken},receiveToken:{...o,...e?.input?.receiveToken}},modal:{isOpen:!1,status:"None",receiveTokens:null,sendTokens:null,...e?.modal},stepper:null,transactions:e?.transactions??[],poolFallbackData:{address:I,...e?.poolFallbackData},customDepositTokensPerChain:e?.customDepositTokensPerChain,defaultChainId:e?.defaultChainId}},To=u.createContext({...bo({poolAddress:I,poolConfigMap:{}})}),fo=u.createContext({setPoolAddress:Z,setTradingType:Z,updateSendTokenInput:Z,updateReceiveTokenInput:Z,updateTradingSettings:Z,updateTradingModal:Z,updateStepper:Z,updateTransactions:Z,updatePoolFallbackData:Z,updateCustomDepositTokensPerChain:Z,onTradingSettleError:Z,onTransactionError:Z,onTransactionSuccess:Z,onTransactionEstimationError:Z,onTokenSelector:Z,onLog:Z,onSimulateTransaction:()=>Promise.resolve(null),getSwapQuotes:()=>Promise.resolve(null),updatePoolConfig:Z,addPoolConfig:Z}),Ad=e=>(t,n)=>{switch(n.type){case"SET_POOL_ADDRESS":return{...t,poolAddress:n.payload};case"SET_TRADING_TYPE":return{...t,type:n.payload};case"UPDATE_SEND_TOKEN_INPUT":return{...t,input:{...t.input,sendToken:{...t.input.sendToken,...n.payload}}};case"UPDATE_RECEIVE_TOKEN_INPUT":return{...t,input:{...t.input,receiveToken:{...t.input.receiveToken,...n.payload}}};case"UPDATE_TRADING_SETTINGS":return{...t,settings:{...t.settings,...n.payload}};case"UPDATE_TRADING_MODAL":return{...t,modal:{...t.modal,...n.payload}};case"UPDATE_STEPPER":return{...t,stepper:n.payload===null?null:{...t.stepper,...n.payload}};case"UPDATE_POOL_FALLBACK_DATA":return{...t,poolFallbackData:n.payload};case"UPDATE_POOL_CONFIG":return{...t,poolConfigMap:{...t.poolConfigMap,...Object.entries(n.payload).filter(([a])=>!!t.poolConfigMap?.[a]).reduce((a,[s,o])=>({...a,[s]:{...t.poolConfigMap?.[s],...o}}),t.poolConfigMap)}};case"UPDATE_CUSTOM_DEPOSIT_TOKENS_PER_CHAIN":return{...t,customDepositTokensPerChain:{...t.customDepositTokensPerChain??{},...n.payload}};case"ADD_POOL_CONFIG":return{...t,poolConfigMap:{...t.poolConfigMap,[n.payload.address]:n.payload}};case"UPDATE_TRADING_TRANSACTIONS":switch(n.payload.type){case"remove":const a=t.transactions.find(o=>o.txHash===n.payload.txHash);return n.payload.status==="success"&&a&&md({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}},Sd=({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:b,getSwapQuotes:A}})=>{const[S,_]=u.useReducer(Ad(w),bo(t)),j=u.useCallback(L=>{_({type:"SET_POOL_ADDRESS",payload:L}),n?.(L)},[n]),B=u.useCallback(L=>{_({type:"UPDATE_SEND_TOKEN_INPUT",payload:L}),a?.(L)},[a]),ne=u.useCallback(L=>{_({type:"UPDATE_RECEIVE_TOKEN_INPUT",payload:L}),s?.(L)},[s]),xe=u.useCallback(L=>{_({type:"UPDATE_TRADING_SETTINGS",payload:L}),o?.(L)},[o]),Xe=u.useCallback(L=>{_({type:"SET_TRADING_TYPE",payload:L}),i?.(L)},[i]),Gt=u.useCallback(L=>{_({type:"UPDATE_TRADING_MODAL",payload:L}),l?.(L)},[l]),Vt=u.useCallback(L=>{_({type:"UPDATE_STEPPER",payload:L})},[]),ht=u.useCallback(L=>{_({type:"UPDATE_TRADING_TRANSACTIONS",payload:L}),c?.(L)},[c]),ps=u.useCallback(L=>{_({type:"UPDATE_POOL_FALLBACK_DATA",payload:L})},[]),us=u.useCallback(L=>{_({type:"UPDATE_CUSTOM_DEPOSIT_TOKENS_PER_CHAIN",payload:L})},[]),ms=u.useCallback(L=>{_({type:"UPDATE_POOL_CONFIG",payload:L})},[]),ys=u.useCallback(L=>{_({type:"ADD_POOL_CONFIG",payload:L})},[]),Ul=u.useMemo(()=>({setPoolAddress:j,setTradingType:Xe,updateTradingSettings:xe,updateSendTokenInput:B,updateReceiveTokenInput:ne,updateTradingModal:Gt,updateStepper:Vt,updateTransactions:ht,updatePoolFallbackData:ps,updateCustomDepositTokensPerChain:us,onTransactionError:d,onTransactionSuccess:p,onTransactionEstimationError:m,onTokenSelector:y,onLog:w,onSimulateTransaction:g,onTradingSettleError:b,getSwapQuotes:A,updatePoolConfig:ms,addPoolConfig:ys}),[j,Xe,xe,B,ne,Gt,Vt,ht,ps,us,d,p,m,y,w,g,b,A,ms,ys]);return r.jsx(fo.Provider,{value:Ul,children:r.jsx(To.Provider,{value:S,children:e})})},J=()=>u.useContext(To),W=()=>u.useContext(fo),Cd=()=>W().setPoolAddress,Ed=()=>W().updateSendTokenInput,Id=()=>W().updateReceiveTokenInput,_d=()=>W().updateTradingSettings,Dd=()=>W().setTradingType,Nd=()=>W().updateTradingModal,vo=()=>W().updatePoolFallbackData,xo=()=>W().onTransactionError,Ao=()=>W().onTradingSettleError,So=()=>W().onTransactionSuccess,gn=()=>W().onTransactionEstimationError,Co=()=>W().onTokenSelector,He=()=>W().onLog,Eo=()=>W().onSimulateTransaction,Na=()=>{const e=W().getSwapQuotes,{settings:{selectedAggregators:t}}=J();return u.useCallback(({signal:n,variables:a})=>e({signal:n,variables:{...a,...!!t.length&&{aggregators:t}}}),[e,t])},Od=()=>W().updatePoolConfig,Pd=()=>W().addPoolConfig,kd=()=>W().updateCustomDepositTokensPerChain,Io=()=>[J().poolAddress,W().setPoolAddress],f=()=>{const{poolAddress:e,poolConfigMap:t}=J();return t[e]??pr},at=()=>{const{poolConfigMap:e}=J();return u.useMemo(()=>Object.values(e),[e])},Rd=e=>{const t=at();return u.useMemo(()=>t.some(n=>n.address===e),[t,e])},Ge=()=>{const{poolFallbackData:e,poolAddress:t}=J(),n=vo();return[e.address===t?e:{address:t},n]},_o=()=>J().input,N=()=>[_o().sendToken,W().updateSendTokenInput],O=()=>[_o().receiveToken,W().updateReceiveTokenInput],Q=()=>[J().settings,W().updateTradingSettings],Do=()=>[J().customDepositTokensPerChain,W().updateCustomDepositTokensPerChain],K=()=>[J().modal,W().updateTradingModal],No=()=>[J().stepper,W().updateStepper],ye=()=>[J().type,W().setTradingType],Ve=()=>J().type==="deposit",re=()=>[J().transactions,W().updateTransactions],Ld=()=>J().defaultChainId,Bn=(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=Ld(),o=e?.id,i=Bn(o,t),l=s&&Bn(s,t)?s:t[0].id;return{chain:e,isSupported:i,switchNetwork:n,switchNetworkAsync:a,chainId:i?o:void 0,supportedChainId:Bn(o,t)?o:l,chains:t}},bn=({tokenAddress:e,ownerAddress:t,spenderAddress:n,chainId:a,skip:s})=>E.useReadContract({address:e,abi:D.erc20Abi,functionName:"allowance",args:[t,n],chainId:a,query:{enabled:!s,refetchInterval:nt}}),Md=()=>{const{account:e}=M(),[t,n]=u.useState(!1);return u.useEffect(()=>{n(!!e)},[e]),t},Oa=e=>E.useBalance({...e,query:{...e?.query,staleTime:nt}});var qt=typeof globalThis<"u"?globalThis:typeof window<"u"?window:typeof global<"u"?global:typeof self<"u"?self:{};function Tn(e){return e&&e.__esModule&&Object.prototype.hasOwnProperty.call(e,"default")?e.default:e}function jd(){this.__data__=[],this.size=0}var Bd=jd;function $d(e,t){return e===t||e!==e&&t!==t}var Pa=$d,Fd=Pa;function Wd(e,t){for(var n=e.length;n--;)if(Fd(e[n][0],t))return n;return-1}var fn=Wd,Ud=fn,zd=Array.prototype,Hd=zd.splice;function Gd(e){var t=this.__data__,n=Ud(t,e);if(n<0)return!1;var a=t.length-1;return n==a?t.pop():Hd.call(t,n,1),--this.size,!0}var Vd=Gd,qd=fn;function Yd(e){var t=this.__data__,n=qd(t,e);return n<0?void 0:t[n][1]}var Kd=Yd,Qd=fn;function Xd(e){return Qd(this.__data__,e)>-1}var Zd=Xd,Jd=fn;function ep(e,t){var n=this.__data__,a=Jd(n,e);return a<0?(++this.size,n.push([e,t])):n[a][1]=t,this}var tp=ep,np=Bd,ap=Vd,sp=Kd,rp=Zd,op=tp;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=np;st.prototype.delete=ap;st.prototype.get=sp;st.prototype.has=rp;st.prototype.set=op;var vn=st,ip=vn;function lp(){this.__data__=new ip,this.size=0}var cp=lp;function dp(e){var t=this.__data__,n=t.delete(e);return this.size=t.size,n}var pp=dp;function up(e){return this.__data__.get(e)}var mp=up;function yp(e){return this.__data__.has(e)}var wp=yp,hp=typeof qt=="object"&&qt&&qt.Object===Object&&qt,Oo=hp,gp=Oo,bp=typeof self=="object"&&self&&self.Object===Object&&self,Tp=gp||bp||Function("return this")(),Ce=Tp,fp=Ce,vp=fp.Symbol,xn=vp,vs=xn,Po=Object.prototype,xp=Po.hasOwnProperty,Ap=Po.toString,Tt=vs?vs.toStringTag:void 0;function Sp(e){var t=xp.call(e,Tt),n=e[Tt];try{e[Tt]=void 0;var a=!0}catch{}var s=Ap.call(e);return a&&(t?e[Tt]=n:delete e[Tt]),s}var Cp=Sp,Ep=Object.prototype,Ip=Ep.toString;function _p(e){return Ip.call(e)}var Dp=_p,xs=xn,Np=Cp,Op=Dp,Pp="[object Null]",kp="[object Undefined]",As=xs?xs.toStringTag:void 0;function Rp(e){return e==null?e===void 0?kp:Pp:As&&As in Object(e)?Np(e):Op(e)}var rt=Rp;function Lp(e){var t=typeof e;return e!=null&&(t=="object"||t=="function")}var Pt=Lp,Mp=rt,jp=Pt,Bp="[object AsyncFunction]",$p="[object Function]",Fp="[object GeneratorFunction]",Wp="[object Proxy]";function Up(e){if(!jp(e))return!1;var t=Mp(e);return t==$p||t==Fp||t==Bp||t==Wp}var ko=Up,zp=Ce,Hp=zp["__core-js_shared__"],Gp=Hp,$n=Gp,Ss=function(){var e=/[^.]+$/.exec($n&&$n.keys&&$n.keys.IE_PROTO||"");return e?"Symbol(src)_1."+e:""}();function Vp(e){return!!Ss&&Ss in e}var qp=Vp,Yp=Function.prototype,Kp=Yp.toString;function Qp(e){if(e!=null){try{return Kp.call(e)}catch{}try{return e+""}catch{}}return""}var Ro=Qp,Xp=ko,Zp=qp,Jp=Pt,eu=Ro,tu=/[\\^$.*+?()[\]{}|]/g,nu=/^\[object .+?Constructor\]$/,au=Function.prototype,su=Object.prototype,ru=au.toString,ou=su.hasOwnProperty,iu=RegExp("^"+ru.call(ou).replace(tu,"\\$&").replace(/hasOwnProperty|(function).*?(?=\\\()| for .+?(?=\\\])/g,"$1.*?")+"$");function lu(e){if(!Jp(e)||Zp(e))return!1;var t=Xp(e)?iu:nu;return t.test(eu(e))}var cu=lu;function du(e,t){return e?.[t]}var pu=du,uu=cu,mu=pu;function yu(e,t){var n=mu(e,t);return uu(n)?n:void 0}var ot=yu,wu=ot,hu=Ce,gu=wu(hu,"Map"),ka=gu,bu=ot,Tu=bu(Object,"create"),An=Tu,Cs=An;function fu(){this.__data__=Cs?Cs(null):{},this.size=0}var vu=fu;function xu(e){var t=this.has(e)&&delete this.__data__[e];return this.size-=t?1:0,t}var Au=xu,Su=An,Cu="__lodash_hash_undefined__",Eu=Object.prototype,Iu=Eu.hasOwnProperty;function _u(e){var t=this.__data__;if(Su){var n=t[e];return n===Cu?void 0:n}return Iu.call(t,e)?t[e]:void 0}var Du=_u,Nu=An,Ou=Object.prototype,Pu=Ou.hasOwnProperty;function ku(e){var t=this.__data__;return Nu?t[e]!==void 0:Pu.call(t,e)}var Ru=ku,Lu=An,Mu="__lodash_hash_undefined__";function ju(e,t){var n=this.__data__;return this.size+=this.has(e)?0:1,n[e]=Lu&&t===void 0?Mu:t,this}var Bu=ju,$u=vu,Fu=Au,Wu=Du,Uu=Ru,zu=Bu;function it(e){var t=-1,n=e==null?0:e.length;for(this.clear();++t<n;){var a=e[t];this.set(a[0],a[1])}}it.prototype.clear=$u;it.prototype.delete=Fu;it.prototype.get=Wu;it.prototype.has=Uu;it.prototype.set=zu;var Hu=it,Es=Hu,Gu=vn,Vu=ka;function qu(){this.size=0,this.__data__={hash:new Es,map:new(Vu||Gu),string:new Es}}var Yu=qu;function Ku(e){var t=typeof e;return t=="string"||t=="number"||t=="symbol"||t=="boolean"?e!=="__proto__":e===null}var Qu=Ku,Xu=Qu;function Zu(e,t){var n=e.__data__;return Xu(t)?n[typeof t=="string"?"string":"hash"]:n.map}var Sn=Zu,Ju=Sn;function em(e){var t=Ju(this,e).delete(e);return this.size-=t?1:0,t}var tm=em,nm=Sn;function am(e){return nm(this,e).get(e)}var sm=am,rm=Sn;function om(e){return rm(this,e).has(e)}var im=om,lm=Sn;function cm(e,t){var n=lm(this,e),a=n.size;return n.set(e,t),this.size+=n.size==a?0:1,this}var dm=cm,pm=Yu,um=tm,mm=sm,ym=im,wm=dm;function lt(e){var t=-1,n=e==null?0:e.length;for(this.clear();++t<n;){var a=e[t];this.set(a[0],a[1])}}lt.prototype.clear=pm;lt.prototype.delete=um;lt.prototype.get=mm;lt.prototype.has=ym;lt.prototype.set=wm;var Ra=lt,hm=vn,gm=ka,bm=Ra,Tm=200;function fm(e,t){var n=this.__data__;if(n instanceof hm){var a=n.__data__;if(!gm||a.length<Tm-1)return a.push([e,t]),this.size=++n.size,this;n=this.__data__=new bm(a)}return n.set(e,t),this.size=n.size,this}var vm=fm,xm=vn,Am=cp,Sm=pp,Cm=mp,Em=wp,Im=vm;function ct(e){var t=this.__data__=new xm(e);this.size=t.size}ct.prototype.clear=Am;ct.prototype.delete=Sm;ct.prototype.get=Cm;ct.prototype.has=Em;ct.prototype.set=Im;var Lo=ct,_m="__lodash_hash_undefined__";function Dm(e){return this.__data__.set(e,_m),this}var Nm=Dm;function Om(e){return this.__data__.has(e)}var Pm=Om,km=Ra,Rm=Nm,Lm=Pm;function on(e){var t=-1,n=e==null?0:e.length;for(this.__data__=new km;++t<n;)this.add(e[t])}on.prototype.add=on.prototype.push=Rm;on.prototype.has=Lm;var Mo=on;function Mm(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 jm=Mm;function Bm(e,t){return e.has(t)}var jo=Bm,$m=Mo,Fm=jm,Wm=jo,Um=1,zm=2;function Hm(e,t,n,a,s,o){var i=n&Um,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&zm?new $m:void 0;for(o.set(e,t),o.set(t,e);++m<l;){var g=e[m],b=t[m];if(a)var A=i?a(b,g,m,t,e,o):a(g,b,m,e,t,o);if(A!==void 0){if(A)continue;y=!1;break}if(w){if(!Fm(t,function(S,_){if(!Wm(w,_)&&(g===S||s(g,S,n,a,o)))return w.push(_)})){y=!1;break}}else if(!(g===b||s(g,b,n,a,o))){y=!1;break}}return o.delete(e),o.delete(t),y}var Bo=Hm,Gm=Ce,Vm=Gm.Uint8Array,qm=Vm;function Ym(e){var t=-1,n=Array(e.size);return e.forEach(function(a,s){n[++t]=[s,a]}),n}var Km=Ym;function Qm(e){var t=-1,n=Array(e.size);return e.forEach(function(a){n[++t]=a}),n}var La=Qm,Is=xn,_s=qm,Xm=Pa,Zm=Bo,Jm=Km,ey=La,ty=1,ny=2,ay="[object Boolean]",sy="[object Date]",ry="[object Error]",oy="[object Map]",iy="[object Number]",ly="[object RegExp]",cy="[object Set]",dy="[object String]",py="[object Symbol]",uy="[object ArrayBuffer]",my="[object DataView]",Ds=Is?Is.prototype:void 0,Fn=Ds?Ds.valueOf:void 0;function yy(e,t,n,a,s,o,i){switch(n){case my:if(e.byteLength!=t.byteLength||e.byteOffset!=t.byteOffset)return!1;e=e.buffer,t=t.buffer;case uy:return!(e.byteLength!=t.byteLength||!o(new _s(e),new _s(t)));case ay:case sy:case iy:return Xm(+e,+t);case ry:return e.name==t.name&&e.message==t.message;case ly:case dy:return e==t+"";case oy:var l=Jm;case cy:var c=a&ty;if(l||(l=ey),e.size!=t.size&&!c)return!1;var d=i.get(e);if(d)return d==t;a|=ny,i.set(e,t);var p=Zm(l(e),l(t),a,s,o,i);return i.delete(e),p;case py:if(Fn)return Fn.call(e)==Fn.call(t)}return!1}var wy=yy;function hy(e,t){for(var n=-1,a=t.length,s=e.length;++n<a;)e[s+n]=t[n];return e}var gy=hy,by=Array.isArray,Ne=by,Ty=gy,fy=Ne;function vy(e,t,n){var a=t(e);return fy(e)?a:Ty(a,n(e))}var xy=vy;function Ay(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 Sy=Ay;function Cy(){return[]}var Ey=Cy,Iy=Sy,_y=Ey,Dy=Object.prototype,Ny=Dy.propertyIsEnumerable,Ns=Object.getOwnPropertySymbols,Oy=Ns?function(e){return e==null?[]:(e=Object(e),Iy(Ns(e),function(t){return Ny.call(e,t)}))}:_y,Py=Oy;function ky(e,t){for(var n=-1,a=Array(e);++n<e;)a[n]=t(n);return a}var Ry=ky;function Ly(e){return e!=null&&typeof e=="object"}var dt=Ly,My=rt,jy=dt,By="[object Arguments]";function $y(e){return jy(e)&&My(e)==By}var Fy=$y,Os=Fy,Wy=dt,$o=Object.prototype,Uy=$o.hasOwnProperty,zy=$o.propertyIsEnumerable,Hy=Os(function(){return arguments}())?Os:function(e){return Wy(e)&&Uy.call(e,"callee")&&!zy.call(e,"callee")},Fo=Hy,ln={exports:{}};function Gy(){return!1}var Vy=Gy;ln.exports;(function(e,t){var n=Ce,a=Vy,s=t&&!t.nodeType&&t,o=s&&!0&&e&&!e.nodeType&&e,i=o&&o.exports===s,l=i?n.Buffer:void 0,c=l?l.isBuffer:void 0,d=c||a;e.exports=d})(ln,ln.exports);var Wo=ln.exports,qy=9007199254740991,Yy=/^(?:0|[1-9]\d*)$/;function Ky(e,t){var n=typeof e;return t=t??qy,!!t&&(n=="number"||n!="symbol"&&Yy.test(e))&&e>-1&&e%1==0&&e<t}var Ma=Ky,Qy=9007199254740991;function Xy(e){return typeof e=="number"&&e>-1&&e%1==0&&e<=Qy}var ja=Xy,Zy=rt,Jy=ja,ew=dt,tw="[object Arguments]",nw="[object Array]",aw="[object Boolean]",sw="[object Date]",rw="[object Error]",ow="[object Function]",iw="[object Map]",lw="[object Number]",cw="[object Object]",dw="[object RegExp]",pw="[object Set]",uw="[object String]",mw="[object WeakMap]",yw="[object ArrayBuffer]",ww="[object DataView]",hw="[object Float32Array]",gw="[object Float64Array]",bw="[object Int8Array]",Tw="[object Int16Array]",fw="[object Int32Array]",vw="[object Uint8Array]",xw="[object Uint8ClampedArray]",Aw="[object Uint16Array]",Sw="[object Uint32Array]",V={};V[hw]=V[gw]=V[bw]=V[Tw]=V[fw]=V[vw]=V[xw]=V[Aw]=V[Sw]=!0;V[tw]=V[nw]=V[yw]=V[aw]=V[ww]=V[sw]=V[rw]=V[ow]=V[iw]=V[lw]=V[cw]=V[dw]=V[pw]=V[uw]=V[mw]=!1;function Cw(e){return ew(e)&&Jy(e.length)&&!!V[Zy(e)]}var Ew=Cw;function Iw(e){return function(t){return e(t)}}var _w=Iw,cn={exports:{}};cn.exports;(function(e,t){var n=Oo,a=t&&!t.nodeType&&t,s=a&&!0&&e&&!e.nodeType&&e,o=s&&s.exports===a,i=o&&n.process,l=function(){try{var c=s&&s.require&&s.require("util").types;return c||i&&i.binding&&i.binding("util")}catch{}}();e.exports=l})(cn,cn.exports);var Dw=cn.exports,Nw=Ew,Ow=_w,Ps=Dw,ks=Ps&&Ps.isTypedArray,Pw=ks?Ow(ks):Nw,Uo=Pw,kw=Ry,Rw=Fo,Lw=Ne,Mw=Wo,jw=Ma,Bw=Uo,$w=Object.prototype,Fw=$w.hasOwnProperty;function Ww(e,t){var n=Lw(e),a=!n&&Rw(e),s=!n&&!a&&Mw(e),o=!n&&!a&&!s&&Bw(e),i=n||a||s||o,l=i?kw(e.length,String):[],c=l.length;for(var d in e)(t||Fw.call(e,d))&&!(i&&(d=="length"||s&&(d=="offset"||d=="parent")||o&&(d=="buffer"||d=="byteLength"||d=="byteOffset")||jw(d,c)))&&l.push(d);return l}var Uw=Ww,zw=Object.prototype;function Hw(e){var t=e&&e.constructor,n=typeof t=="function"&&t.prototype||zw;return e===n}var Gw=Hw;function Vw(e,t){return function(n){return e(t(n))}}var qw=Vw,Yw=qw,Kw=Yw(Object.keys,Object),Qw=Kw,Xw=Gw,Zw=Qw,Jw=Object.prototype,eh=Jw.hasOwnProperty;function th(e){if(!Xw(e))return Zw(e);var t=[];for(var n in Object(e))eh.call(e,n)&&n!="constructor"&&t.push(n);return t}var nh=th,ah=ko,sh=ja;function rh(e){return e!=null&&sh(e.length)&&!ah(e)}var zo=rh,oh=Uw,ih=nh,lh=zo;function ch(e){return lh(e)?oh(e):ih(e)}var Ba=ch,dh=xy,ph=Py,uh=Ba;function mh(e){return dh(e,uh,ph)}var yh=mh,Rs=yh,wh=1,hh=Object.prototype,gh=hh.hasOwnProperty;function bh(e,t,n,a,s,o){var i=n&wh,l=Rs(e),c=l.length,d=Rs(t),p=d.length;if(c!=p&&!i)return!1;for(var m=c;m--;){var y=l[m];if(!(i?y in t:gh.call(t,y)))return!1}var w=o.get(e),g=o.get(t);if(w&&g)return w==t&&g==e;var b=!0;o.set(e,t),o.set(t,e);for(var A=i;++m<c;){y=l[m];var S=e[y],_=t[y];if(a)var j=i?a(_,S,y,t,e,o):a(S,_,y,e,t,o);if(!(j===void 0?S===_||s(S,_,n,a,o):j)){b=!1;break}A||(A=y=="constructor")}if(b&&!A){var B=e.constructor,ne=t.constructor;B!=ne&&"constructor"in e&&"constructor"in t&&!(typeof B=="function"&&B instanceof B&&typeof ne=="function"&&ne instanceof ne)&&(b=!1)}return o.delete(e),o.delete(t),b}var Th=bh,fh=ot,vh=Ce,xh=fh(vh,"DataView"),Ah=xh,Sh=ot,Ch=Ce,Eh=Sh(Ch,"Promise"),Ih=Eh,_h=ot,Dh=Ce,Nh=_h(Dh,"Set"),Ho=Nh,Oh=ot,Ph=Ce,kh=Oh(Ph,"WeakMap"),Rh=kh,ra=Ah,oa=ka,ia=Ih,la=Ho,ca=Rh,Go=rt,pt=Ro,Ls="[object Map]",Lh="[object Object]",Ms="[object Promise]",js="[object Set]",Bs="[object WeakMap]",$s="[object DataView]",Mh=pt(ra),jh=pt(oa),Bh=pt(ia),$h=pt(la),Fh=pt(ca),Re=Go;(ra&&Re(new ra(new ArrayBuffer(1)))!=$s||oa&&Re(new oa)!=Ls||ia&&Re(ia.resolve())!=Ms||la&&Re(new la)!=js||ca&&Re(new ca)!=Bs)&&(Re=function(e){var t=Go(e),n=t==Lh?e.constructor:void 0,a=n?pt(n):"";if(a)switch(a){case Mh:return $s;case jh:return Ls;case Bh:return Ms;case $h:return js;case Fh:return Bs}return t});var Wh=Re,Wn=Lo,Uh=Bo,zh=wy,Hh=Th,Fs=Wh,Ws=Ne,Us=Wo,Gh=Uo,Vh=1,zs="[object Arguments]",Hs="[object Array]",Yt="[object Object]",qh=Object.prototype,Gs=qh.hasOwnProperty;function Yh(e,t,n,a,s,o){var i=Ws(e),l=Ws(t),c=i?Hs:Fs(e),d=l?Hs:Fs(t);c=c==zs?Yt:c,d=d==zs?Yt:d;var p=c==Yt,m=d==Yt,y=c==d;if(y&&Us(e)){if(!Us(t))return!1;i=!0,p=!1}if(y&&!p)return o||(o=new Wn),i||Gh(e)?Uh(e,t,n,a,s,o):zh(e,t,c,n,a,s,o);if(!(n&Vh)){var w=p&&Gs.call(e,"__wrapped__"),g=m&&Gs.call(t,"__wrapped__");if(w||g){var b=w?e.value():e,A=g?t.value():t;return o||(o=new Wn),s(b,A,n,a,o)}}return y?(o||(o=new Wn),Hh(e,t,n,a,s,o)):!1}var Kh=Yh,Qh=Kh,Vs=dt;function Vo(e,t,n,a,s){return e===t?!0:e==null||t==null||!Vs(e)&&!Vs(t)?e!==e&&t!==t:Qh(e,t,n,a,Vo,s)}var qo=Vo,Xh=Lo,Zh=qo,Jh=1,eg=2;function tg(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 Xh;if(a)var y=a(d,p,c,e,t,m);if(!(y===void 0?Zh(p,d,Jh|eg,a,m):y))return!1}}return!0}var ng=tg,ag=Pt;function sg(e){return e===e&&!ag(e)}var Yo=sg,rg=Yo,og=Ba;function ig(e){for(var t=og(e),n=t.length;n--;){var a=t[n],s=e[a];t[n]=[a,s,rg(s)]}return t}var lg=ig;function cg(e,t){return function(n){return n==null?!1:n[e]===t&&(t!==void 0||e in Object(n))}}var Ko=cg,dg=ng,pg=lg,ug=Ko;function mg(e){var t=pg(e);return t.length==1&&t[0][2]?ug(t[0][0],t[0][1]):function(n){return n===e||dg(n,e,t)}}var yg=mg,wg=rt,hg=dt,gg="[object Symbol]";function bg(e){return typeof e=="symbol"||hg(e)&&wg(e)==gg}var Cn=bg,Tg=Ne,fg=Cn,vg=/\.|\[(?:[^[\]]*|(["'])(?:(?!\1)[^\\]|\\.)*?\1)\]/,xg=/^\w*$/;function Ag(e,t){if(Tg(e))return!1;var n=typeof e;return n=="number"||n=="symbol"||n=="boolean"||e==null||fg(e)?!0:xg.test(e)||!vg.test(e)||t!=null&&e in Object(t)}var $a=Ag,Qo=Ra,Sg="Expected a function";function Fa(e,t){if(typeof e!="function"||t!=null&&typeof t!="function")throw new TypeError(Sg);var n=function(){var a=arguments,s=t?t.apply(this,a):a[0],o=n.cache;if(o.has(s))return o.get(s);var i=e.apply(this,a);return n.cache=o.set(s,i)||o,i};return n.cache=new(Fa.Cache||Qo),n}Fa.Cache=Qo;var Cg=Fa,Eg=Cg,Ig=500;function _g(e){var t=Eg(e,function(a){return n.size===Ig&&n.clear(),a}),n=t.cache;return t}var Dg=_g,Ng=Dg,Og=/[^.[\]]+|\[(?:(-?\d+(?:\.\d+)?)|(["'])((?:(?!\2)[^\\]|\\.)*?)\2)\]|(?=(?:\.|\[\])(?:\.|\[\]|$))/g,Pg=/\\(\\)?/g,kg=Ng(function(e){var t=[];return e.charCodeAt(0)===46&&t.push(""),e.replace(Og,function(n,a,s,o){t.push(s?o.replace(Pg,"$1"):a||n)}),t}),Rg=kg;function Lg(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 Mg=Lg,qs=xn,jg=Mg,Bg=Ne,$g=Cn,Ys=qs?qs.prototype:void 0,Ks=Ys?Ys.toString:void 0;function Xo(e){if(typeof e=="string")return e;if(Bg(e))return jg(e,Xo)+"";if($g(e))return Ks?Ks.call(e):"";var t=e+"";return t=="0"&&1/e==-1/0?"-0":t}var Fg=Xo,Wg=Fg;function Ug(e){return e==null?"":Wg(e)}var zg=Ug,Hg=Ne,Gg=$a,Vg=Rg,qg=zg;function Yg(e,t){return Hg(e)?e:Gg(e,t)?[e]:Vg(qg(e))}var Zo=Yg,Kg=Cn;function Qg(e){if(typeof e=="string"||Kg(e))return e;var t=e+"";return t=="0"&&1/e==-1/0?"-0":t}var En=Qg,Xg=Zo,Zg=En;function Jg(e,t){t=Xg(t,e);for(var n=0,a=t.length;e!=null&&n<a;)e=e[Zg(t[n++])];return n&&n==a?e:void 0}var Jo=Jg,eb=Jo;function tb(e,t,n){var a=e==null?void 0:eb(e,t);return a===void 0?n:a}var nb=tb;function ab(e,t){return e!=null&&t in Object(e)}var sb=ab,rb=Zo,ob=Fo,ib=Ne,lb=Ma,cb=ja,db=En;function pb(e,t,n){t=rb(t,e);for(var a=-1,s=t.length,o=!1;++a<s;){var i=db(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&&cb(s)&&lb(i,s)&&(ib(e)||ob(e)))}var ub=pb,mb=sb,yb=ub;function wb(e,t){return e!=null&&yb(e,t,mb)}var hb=wb,gb=qo,bb=nb,Tb=hb,fb=$a,vb=Yo,xb=Ko,Ab=En,Sb=1,Cb=2;function Eb(e,t){return fb(e)&&vb(t)?xb(Ab(e),t):function(n){var a=bb(n,e);return a===void 0&&a===t?Tb(n,e):gb(t,a,Sb|Cb)}}var Ib=Eb;function _b(e){return e}var Db=_b;function Nb(e){return function(t){return t?.[e]}}var Ob=Nb,Pb=Jo;function kb(e){return function(t){return Pb(t,e)}}var Rb=kb,Lb=Ob,Mb=Rb,jb=$a,Bb=En;function $b(e){return jb(e)?Lb(Bb(e)):Mb(e)}var Fb=$b,Wb=yg,Ub=Ib,zb=Db,Hb=Ne,Gb=Fb;function Vb(e){return typeof e=="function"?e:e==null?zb:typeof e=="object"?Hb(e)?Ub(e[0],e[1]):Wb(e):Gb(e)}var ei=Vb;function qb(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 Yb=qb,Kb=Yb,Qb=Kb(),Xb=Qb,Zb=Xb,Jb=Ba;function eT(e,t){return e&&Zb(e,t,Jb)}var tT=eT,nT=tT;function aT(e,t,n,a){return nT(e,function(s,o,i){t(a,n(s),o,i)}),a}var sT=aT,rT=sT;function oT(e,t){return function(n,a){return rT(n,e,t(a),{})}}var iT=oT,lT=ei,cT=iT,ti=Object.prototype,dT=ti.hasOwnProperty,pT=ti.toString,uT=cT(function(e,t,n){t!=null&&typeof t.toString!="function"&&(t=pT.call(t)),dT.call(e,t)?e[t].push(n):e[t]=[n]},lT),mT=uT;const yT=Tn(mT),ft="Canceled by user",wT={"exceeds the configured cap":"Please try using a different RPC for your wallet.","denied transaction":ft,"user rejected the transaction":ft,"user rejected transaction":ft,"user rejected the request":ft,"user canceled":ft,"not enough available balance":"Attempting to withdraw a balance that exceeds the liquidity currently accessible."};yT(wT);const ni=e=>typeof e=="object"&&e!==null&&"message"in e&&typeof e.message=="string",ai=e=>{if(ni(e))return e;try{return new Error(JSON.stringify(e))}catch{return new Error(String(e))}},si=e=>ai(e).message;class ut extends Gl.CustomError{constructor({message:n=Rr,link:a,slippage:s,txArgs:o,account:i,onBypass:l,functionName:c}){super(n);Pe(this,"txArgs");Pe(this,"link");Pe(this,"account");Pe(this,"slippage");Pe(this,"functionName");Pe(this,"onBypass");this.link=a,this.txArgs=o,this.account=i,this.slippage=s,this.functionName=c,this.onBypass=l}}const hT=async()=>{},Un=e=>{const t=e[e.length-1],n=typeof t=="object"&&t!==null&&("value"in t||"gas"in t),a=n?t:{},s=n?e.slice(0,-1):e;return{transactionOverrides:a,argumentsWithoutOverrides:s}},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=ao(n),p=t??z(n,o??i),m=Eo(),{writeContract:y}=E.useWriteContract({mutation:{onSettled:a}}),w=u.useCallback(async(...A)=>{try{const{argumentsWithoutOverrides:S,transactionOverrides:_}=Un(A),j=await c?.estimateContractGas({address:p,abi:d,functionName:e,args:S,account:s??I,gas:_.gas,value:_.value});if(!j||!o||j===BigInt(0))return{error:ea,value:BigInt(0)};const B=Math.round(Number(j)*gr),ne=Xt[o]??B,xe=BigInt(Math.min(ne,B));return console.debug(`[core-ui-kit]: estimated gas limit: ${Number(j)}`),{error:"",value:xe}}catch(S){return console.error(`Gas estimate error on ${e}`,S),{error:S?.message??S?.shortMessage??S.error?.data?.message??S.data?.message??ea,value:BigInt(0)}}},[s,o,c,e,p,d]),g=u.useCallback(async(...A)=>{try{if(!m)return{data:null,error:ta};if(!c)return{data:null,error:"Client is not defined"};const{argumentsWithoutOverrides:S,transactionOverrides:_}=Un(A),j=D.encodeFunctionData({abi:d,functionName:e,args:S});if(s&&j){const B=await m({chainId:o??i,from:s,to:p,input:j,gas:Xt[o??i]??0,value:_.value?.toString()});return{data:B,error:B?.simulation.error_message}}return{data:null,error:ta}}catch(S){return console.debug("Failed to simulate:",S),{data:null,error:si(S)}}},[s,o,c,d,p,e,m,i]),b=u.useCallback(async(...A)=>{const{argumentsWithoutOverrides:S,transactionOverrides:_}=Un(A);if(_.gas)return y({address:p,abi:d,functionName:e,chainId:o,args:S,..._});const{value:j,error:B}=await w(...A);if(B){const{data:ne}=await Promise.race([g(...A),new Promise(xe=>setTimeout(xe,br,{data:null,error:Lr}))]);throw new ut({message:B,link:ne?.link,txArgs:A,account:s,functionName:e,onBypass:()=>l?.data?.writeContract({address:p,abi:d,functionName:e,account:s,chainId:o,args:S,..._,gas:BigInt(Xt[o??i]??0)})})}return console.debug(`[core-ui-kit]: gas limit to use: ${j}`),y({address:p,abi:d,functionName:e,chainId:o,args:S,..._,gas:j})},[w,y,g,s,e,l?.data,p,d,o,i]);return{send:o&&c?b:hT,estimate:w}},ri=e=>E.useEstimateFeesPerGas({...e,query:{...e?.query,staleTime:3e4}}),In=e=>{u.useEffect(()=>{e&&e.forEach(({error:t,status:n})=>{n==="failure"&&console.warn(t?.message)})},[e])},Wa=({error:e,status:t})=>{u.useEffect(()=>{e&&t==="failure"&&console.warn(e?.message)},[e,t])},oi=async({functionName:e,address:t,abi:n,args:a,publicClient:s})=>(await s?.simulateContract({address:t,abi:n,functionName:e,args:a}))?.result,gT=({disabled:e,functionName:t,address:n,abi:a,args:s,chainId:o,refetchInterval:i})=>{const l=E.usePublicClient({chainId:o});return tt.useQuery({queryKey:[{functionName:t,address:n,args:s,chainId:o}],queryFn:async({queryKey:[c]})=>{if(c)return await oi({address:n,abi:a,functionName:c.functionName,args:c.args,publicClient:l})},enabled:!e&&!!o&&!ee(n)&&!!t,refetchInterval:i})},dn=({queryKey:e,watch:t=!0})=>{const n=tt.useQueryClient(),{data:a}=E.useBlockNumber({query:{refetchInterval:We}});u.useEffect(()=>{t&&n.refetchQueries({queryKey:e,stale:!0})},[t,a])},_n="limitOrders",Ua="getAllLimitOrderIds",za=0,ii="100",bT=1,TT=5,fT=2,vT=["balanceOf","getFundSummary","getFundComposition","withdrawalContracts","getTrackedAssets","getAssetPrice","allowance","getExitRemainingCooldown","tokenPrice","limitOrders","calculateAvailableManagerFee",_n,Ua],xT=["allowance"],Qs=(e,t)=>e[0]==="readContract"?t.includes(e?.[1]?.functionName??""):e[0]==="readContracts"?!!e[1]?.contracts?.some(({functionName:a})=>t.includes(a??"")):!1,Dn=()=>{const e=tt.useQueryClient(),t=u.useCallback(()=>{e.invalidateQueries({predicate:({queryKey:a})=>Qs(a,xT)})},[e]),n=u.useCallback(()=>{e.invalidateQueries({predicate:({queryKey:a})=>Qs(a,vT)})},[e]);return{invalidateAllowanceQueries:t,invalidateTradingQueries:n}},Nn=()=>{const{chainId:e}=Se(),{data:t}=E.useCapabilities();if(!e||!t)return!1;const n=t?.[e]?.atomic?.status;return!!n&&n!=="unsupported"},AT=({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}=Vl.usePopperTooltip({interactive:s,delayHide:o,offset:[0,12],placement:n,trigger:a});return r.jsxs(r.Fragment,{children:[r.jsx("span",{ref:c,children:t}),d&&r.jsx("span",{ref:l,...i({className:"tooltip-container dtw-z-50 dtw-bg-[color:var(--panel-tooltip-bg)] dtw-text-[color:var(--panel-tooltip-color)] dtw-px-2 dtw-py-1.5 dtw-rounded-md dtw-text-xs dtw-text-center dtw-block dtw-whitespace-normal"}),children:e})]})},Ha=({text:e,...t})=>r.jsx(AT,{...t,tooltipContent:r.jsx("span",{className:"dtw-inline-block dtw-max-w-xs",children:e})}),li=({text:e,placement:t,iconClassName:n="dtw-text-[color:var(--panel-secondary-content-color)]",Icon:a=se.QuestionMarkCircleIcon})=>r.jsx(Ha,{text:e,placement:t,children:r.jsx(a,{className:C("dtw-h-4 dtw-w-4 dtw-cursor-help hover:dtw-text-[color:var(--panel-icon-color-hover))]",n)})}),je=({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(li,{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=f(),o=wn(e,s.chainId),{data:i}=ri({chainId:s.chainId,query:{enabled:o}}),{data:l,queryKey:c}=Oa({chainId:s.chainId,address:a,query:{enabled:o&&!!a}}),{data:d,queryKey:p}=E.useReadContracts({contracts:[{address:t,abi:D.erc20Abi,functionName:"balanceOf",chainId:s.chainId,args:[a??I]},{address:t,abi:D.erc20Abi,chainId:s.chainId,functionName:"decimals"}],query:{enabled:!o&&!!a}});return dn({watch:n&&o,queryKey:c}),dn({watch:n&&!o,queryKey:p}),o?lo({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)},kt=()=>{const[{value:e,symbol:t,address:n}]=N(),a=we({symbol:t,address:n});return new T(e||0).gt(a??0)},ST=({address:e,chainId:t})=>[{address:z("factory",t),abi:Ue,functionName:"isPool",chainId:t,args:[e]}],CT=e=>({isUserDhedgePool:e[0].result}),Rt=()=>{const{account:e=I}=M(),{chainId:t,supportedChainId:n}=Se(),a=t??n,{data:s}=E.useReadContracts({contracts:ST({address:e,chainId:a}),query:{enabled:!ee(e),select:CT}});return!!s?.isUserDhedgePool},ET=({address:e,chainId:t})=>[{address:e??I,abi:Te,functionName:"poolManagerLogic",chainId:t},{address:z("easySwapperV2",t),abi:fe,functionName:"customCooldownDepositsWhitelist",args:[e],chainId:t},{address:z("easySwapperV2",t),abi:fe,functionName:"customCooldown",args:[],chainId:t},{address:z("factory",t),chainId:t,abi:Ue,functionName:"getAssetGuard",args:[z("aaveLendingPoolV3",t)]}],IT=e=>({poolManagerLogic:e[0].result,isCustomCooldownDepositAllowed:e[1].result,customCooldown:e[2].result,aaveAssetGuardAddress:e[3].result}),Lt=({address:e,chainId:t})=>E.useReadContracts({contracts:ET({address:e,chainId:t}),query:{enabled:!!e&&!ee(e),staleTime:1/0,select:IT}}),Ga=({address:e,chainId:t})=>{const[n]=Ge(),{data:{poolManagerLogic:a}={}}=Lt({address:e,chainId:t});return n.managerLogicAddress??a},_T=({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}],DT=e=>({getFeeIncreaseInfo:e[0].result,minDepositUSD:e[1].result,isMemberAllowed:e[2].result,maxSupplyCapD18:e[3].result}),Mt=({address:e,chainId:t})=>{const n=Ga({address:e,chainId:t}),{account:a=I}=M(),s=E.useReadContracts({contracts:_T({address:n??I,chainId:t,account:a}),query:{enabled:!!n&&!ee(n),staleTime:1/0,select:DT}});return Wa({error:s.error,status:s.status}),s},NT=({chainId:e,address:t})=>[{address:t,abi:_e,functionName:"getFundComposition",chainId:e},{address:t,abi:_e,functionName:"getSupportedAssets",chainId:e}],OT=e=>({getFundComposition:e[0].result,getSupportedAssets:e[1].result?.map(({asset:t})=>t)}),jt=({address:e,chainId:t})=>{const n=Ga({address:e,chainId:t});return E.useReadContracts({contracts:NT({address:n??I,chainId:t}),query:{enabled:!!n&&!ee(n),select:OT,refetchInterval:nt}})};function PT(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 kT=PT,RT=Pa,LT=zo,MT=Ma,jT=Pt;function BT(e,t,n){if(!jT(n))return!1;var a=typeof t;return(a=="number"?LT(n)&&MT(t,n.length):a=="string"&&t in n)?RT(n[t],e):!1}var $T=BT,FT=/\s/;function WT(e){for(var t=e.length;t--&&FT.test(e.charAt(t)););return t}var UT=WT,zT=UT,HT=/^\s+/;function GT(e){return e&&e.slice(0,zT(e)+1).replace(HT,"")}var VT=GT,qT=VT,Xs=Pt,YT=Cn,Zs=NaN,KT=/^[-+]0x[0-9a-f]+$/i,QT=/^0b[01]+$/i,XT=/^0o[0-7]+$/i,ZT=parseInt;function JT(e){if(typeof e=="number")return e;if(YT(e))return Zs;if(Xs(e)){var t=typeof e.valueOf=="function"?e.valueOf():e;e=Xs(t)?t+"":t}if(typeof e!="string")return e===0?e:+e;e=qT(e);var n=QT.test(e);return n||XT.test(e)?ZT(e.slice(2),n?2:8):KT.test(e)?Zs:+e}var ef=JT,tf=ef,nf=1/0,af=17976931348623157e292;function sf(e){if(!e)return e===0?e:0;if(e=tf(e),e===nf||e===-1/0){var t=e<0?-1:1;return t*af}return e===e?e:0}var rf=sf,of=rf;function lf(e){var t=of(e),n=t%1;return t===t?n?t-n:t:0}var cf=lf,df=kT,pf=$T,uf=cf,mf=Math.ceil,yf=Math.max;function wf(e,t,n){(n?pf(e,t,n):t===void 0)?t=1:t=yf(uf(t),0);var a=e==null?0:e.length;if(!a||t<1)return[];for(var s=0,o=0,i=Array(mf(a/t));s<a;)i[o++]=df(e,s,s+=t);return i}var hf=wf;const ci=Tn(hf),di=({account:e,chainId:t,address:n})=>[{address:n,abi:Te,functionName:"balanceOf",chainId:t,args:[e]},{address:n,abi:Te,functionName:"tokenPrice",chainId:t,args:[]}],gf=e=>e.flatMap(di),bf=di({account:I,chainId:h.optimism.id,address:I}).length,pi=({account:e})=>{const{chainId:t}=Se(),n=at();return E.useReadContracts({contracts:gf(n.map(a=>({...a,account:e}))),query:{select:a=>ci(a,bf).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:nt,enabled:!ee(e)}})},Tf=({chainId:e,address:t})=>[{address:t,abi:Te,functionName:"tokenPrice",chainId:e,args:[]},{address:t,abi:Te,functionName:"getFundSummary",chainId:e}],ff=([e,t])=>{const n=t?.result;return{tokenPrice:e?.result!==BigInt(0)?e?.result?.toString():Yl,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:Tf({address:e,chainId:t}),query:{enabled:a&&!!e&&!ee(e),refetchInterval:n,select:ff}}),ui=({address:e,chainId:t})=>{const{account:n}=M(),{data:{managerAddress:a}={managerAddress:I}}=oe({address:e,chainId:t}),{data:{isMemberAllowed:s=!1}={}}=Mt({address:e,chainId:t});return n?s||H(n,a):!1},mi=({address:e,chainId:t})=>{const[n]=Ge(),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}=jt({address:e,chainId:t}),c=u.useMemo(()=>s?.map(({asset:p})=>p)??[],[s]),{data:d}=E.useReadContracts({contracts:c.flatMap(p=>[{address:p,abi:D.erc20Abi,functionName:"symbol",chainId:t},{address:p,abi:D.erc20Abi,functionName:"decimals",chainId:t}]),query:{enabled:l&&c?.length>0&&!!t&&!c.every(p=>a?.[p.toLowerCase()]),staleTime:1/0}});return In(d),u.useMemo(()=>{if(!s?.length)return[];const p=ci(d,2);return s.map(({asset:m,isDeposit:y},w)=>{const g=m.toLowerCase(),[b,A]=p[w]??[],S=Ea[g.toLowerCase()]??b?.result?.toString()??a?.[g]?.tokenName??so(g);return{tokenAddress:g,isDeposit:y,rate:i?.[w]?.toString()??"0",amount:o?.[w]?.toString()??"0",tokenName:S,precision:A?.result?Number(A.result):a?.[g]?.precision??P,asset:{iconSymbols:a?.[g]?.asset.iconSymbols??[S]}}})},[o,i,a,s,d])},mt=({address:e,chainId:t})=>{const[n]=Ge(),a=mi({address:e,chainId:t});return a.length?a:n.poolCompositions??[]},vf=e=>{const t=e?.[0]?.toString()??"",n=e?.[1]?.toString()??"",a=e?.[2]?.toString()??"",s=e?.[3]?.toString()??"",o=e?.[4]?.toString()??"";return{announcedPerformanceFee:t,announcedStreamingFee:n,announcedEntryFee:a,announcedExitFee:s,announcedTimestamp:o}},Va=(e,t)=>{const{data:{getFeeIncreaseInfo:n,minDepositUSD:a}={}}=Mt({address:e,chainId:t});return{...vf(n),minDepositUSD:+D.formatUnits(a??BigInt(0),P)}},xf=({composition:e,vaultTokensAmount:t,totalSupplyD18:n})=>e.reduce((a,s)=>{const o=a.find(({tokenName:i})=>i===s.tokenName);if(o){const i=new T(o.amount).shiftedBy(-o.precision),l=new T(s.amount).shiftedBy(-s.precision);return o.amount=i.plus(l).shiftedBy(o.precision).toFixed(0),a}return[...a,s]},[]).map(a=>{const s=aa(a.amount,t,n,a.precision),o=aa(new T(a.rate).multipliedBy(a.amount).shiftedBy(-a.precision).toFixed(),t,n);return{...a,fraction:s.toFixed(_t(s)),fractionUsd:te({value:o}),fractionUsdNumber:o}}).filter(({amount:a})=>a!=="0").sort((a,s)=>s.fractionUsdNumber-a.fractionUsdNumber),yi=({address:e,vaultTokensAmount:t,chainId:n})=>{const a=mt({address:e,chainId:n}),{data:{totalSupplyD18:s}={}}=oe({address:e,chainId:n});return u.useMemo(()=>s?xf({composition:a,vaultTokensAmount:rn(t||0),totalSupplyD18:s}):[],[t,a,s])},pe=({address:e,chainId:t,formatter:n=D.formatEther})=>{const[a]=Ge(),{data:s}=oe({address:e,chainId:t,refetchInterval:nt});return n(BigInt(s?.tokenPrice??a?.tokenPrice??"0"))},On=({address:e,chainId:t})=>{const[n]=Ge(),a=H(n.address,e)?n:null,{data:{performanceFee:s,streamingFee:o,entryFee:i,exitFee:l}={}}=oe({address:e,chainId:t}),c=i??a?.entryFeeNumerator??"0",d=l??a?.exitFeeNumerator??"0";return u.useMemo(()=>{const p=s??a?.performanceFeeNumerator??"0",m=o??a?.streamingFeeNumerator??"0";return{performanceFee:xt(p,me),performanceFeeNumber:De(+p,me),streamingFee:xt(m,me,2),streamingFeeNumber:De(+m,me),entryFee:xt(c,me,2),entryFeeNumber:De(+c,me),exitFee:xt(d,me,2),exitFeeNumber:De(+d,me)}},[s,a?.performanceFeeNumerator,a?.streamingFeeNumerator,o,c,d])},wi=()=>{const{address:e,chainId:t}=f(),{queryKey:n}=jt({address:e,chainId:t});dn({queryKey:n})},Kt=h.base.id,Af=e=>{const t=z("flatcoinPointsModule",Kt);return[{address:t,chainId:Kt,abi:Zt,functionName:"lockedBalance",args:[e]},{address:t,chainId:Kt,abi:Zt,functionName:"getUnlockTax",args:[e]},{address:t,chainId:Kt,abi:Zt,functionName:"unlockTime",args:[e]}]},hi=({enabled:e,address:t})=>E.useReadContracts({contracts:Af(t),query:{enabled:e,select:n=>{const[a,s,o]=n;return{lockedVaultPointsBalance:a?.result,unlockTaxInPercents:s?.result,unlockTime:o?.result}}}}),Sf=[...to],qa=({address:e,chainId:t})=>{const n=mt({address:e,chainId:t}),a=z("factory",t);return E.useReadContracts({contracts:n.map(({tokenAddress:s})=>({address:a,abi:Ue,functionName:"isPool",chainId:t,args:[s]})),query:{select:s=>n.some(({amount:o,tokenAddress:i},l)=>(!!s[l]?.result||Sf.some(p=>H(p,i)))&&o!=="0"),staleTime:1/0}})},Cf=[[30*1e3,5e3],[60*1e3,1e4],[5*60*1e3,2e4]],Ef=e=>{if(!e)return!1;for(const[t,n]of Cf)if(e<=t)return n;return Kl},zn=e=>Number(e?.toString()??"0")*1e3,If=({address:e,chainId:t})=>{const{account:n}=M();return E.useReadContract({address:e,abi:Te,functionName:"getExitRemainingCooldown",chainId:t,args:[n??I],query:{enabled:!!n,select:zn,refetchInterval:a=>Ef(zn(a.state?.data)),refetchOnWindowFocus:a=>zn(a.state?.data)>0}})};function _f(e,t,n){if(!e||!t)return{balanceInUsd:"",balanceInUsdNumber:0};const a=+e*Be(t);return{balanceInUsd:te({value:a,maximumFractionDigits:n}),balanceInUsdNumber:a}}const gi=(e,t)=>ld(e)?{rawBalance:e?.toString()??"",..._f(D.formatUnits(e,U),t?.toString())}:{rawBalance:"",balanceInUsd:"",balanceInUsdNumber:0},bi=({account:e}={})=>{const{account:t}=M(),n=e??t??I,{data:a}=pi({account:n});return u.useMemo(()=>ee(n)?{}:Object.entries(a??{}).reduce((s,[o,i])=>{const l=gi(BigInt(i.balance??"0"),BigInt(i.tokenPrice??"0"));return l.balanceInUsdNumber>0?{...s,[o]:l}:s},{}),[n,a])},Ti=({account:e,chainId:t,address:n})=>{const{data:a,isFetched:s}=oe({address:n,chainId:t}),{poolFallbackData:o}=J(),i=H(o.address,n)?o.tokenPrice??"0":"0";return E.useReadContract({address:e?n:void 0,abi:Te,functionName:"balanceOf",chainId:t,args:[e],query:{enabled:!ee(e)&&s,select:l=>gi(l,BigInt(a?.tokenPrice??i))}})},Df=e=>Math.ceil(Be(e)),fi=({address:e,chainId:t,select:n=Df})=>{const{data:{totalValueD18:a}={}}=oe({address:e,chainId:t}),{data:{maxSupplyCapD18:s}={}}=Mt({address:e,chainId:t});return E.useReadContract({address:e,chainId:t,abi:Te,functionName:"calculateAvailableManagerFee",args:[BigInt(a??"0")],query:{enabled:!!a&&!!s&&s>0n,select:n}})},vi=({address:e,chainId:t})=>{const{data:{maxSupplyCapD18:n}={}}=Mt({address:e,chainId:t}),{data:{totalSupplyD18:a}={}}=oe({address:e,chainId:t}),s=pe({address:e,chainId:t}),{data:o=0}=fi({address:e,chainId:t});if(!n||n===0n)return null;const i=Math.ceil(Be(a??0)),l=Be(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}},Nf=({address:e,chainId:t})=>{const{data:{isPrivateVault:n}={isPrivateVault:!1}}=oe({address:e,chainId:t}),s=at().find(i=>H(e,i.address)&&i.chainId===t),o=!!(s?.maintenance||s?.maintenanceDeposits);return n||o},Of=e=>oe(e),Pf=()=>{const{address:e,symbol:t,chainId:n}=f(),{account:a=I}=M(),s=we({symbol:t,address:e}),{data:{totalSupplyD18:o}={}}=oe({address:e,chainId:n}),l=wo(e)&&!H(a,I),{data:{lockedVaultPointsBalance:c,unlockTaxInPercents:d,unlockTime:p}={},isLoading:m}=hi({enabled:l,address:e});return u.useMemo(()=>{const y=o?new T.BigNumber(s).shiftedBy(P).dividedBy(o):new T.BigNumber(0),w=c?new T.BigNumber(c.toString()).multipliedBy(y).shiftedBy(-18):new T.BigNumber(0),g=d?w.multipliedBy(d.toString()).shiftedBy(-18):new T.BigNumber(0),b=p?Number(p)*1e3:null;return{userPortionOfLockedPointsBalance:w.toFixed(),unlockTaxAmount:g.toFixed(),vestedPointsAmount:w.minus(g).toFixed(),unlockTimestamp:b,unlockDate:b?Et.format(b,"PPP"):null,isLoading:m}},[o,s,c,d,p,m])},kf={"Lend/Borrow V2":"aave","Lend/Borrow V3":"aave","Lyra Options":"lyra",ULP:"uni"};function Rf(e){const t=kf[e];if(t)return t;const n=e.toLowerCase();return n.includes("bear")?"torosbear":n.includes("bull")?"torosbull":n}const Ya=e=>e?`https://raw.githubusercontent.com/dhedge/crypto-icons/main/icons/${Rf(e)}.png`:"",xi={isGeoBlocked:!1,isSanctioned:!1,depositQuoteDiffWarningThreshold:1.5,depositQuoteDiffErrorThreshold:3,defaultWithdrawSlippage:ur,defaultLockTime:dr,defaultNoSwapMinDepositAmountGap:Xl,defaultSwapTransactionSlippage:Zl,defaultNotificationDuration:nc,stablePrecision:3,defaultPrecision:6,termsOfUseAccepted:!0,standalone:!0,isAllAssetsWithdrawOptionDefault:!1,chainConfig:{[h.mainnet.id]:{name:"Ethereum",iconPath:""},[h.arbitrum.id]:{name:"Arbitrum",iconPath:""},[h.optimism.id]:{name:"Optimism",iconPath:""},[h.polygon.id]:{name:"Polygon",iconPath:""},[h.base.id]:{name:"Base",iconPath:""}},getFallbackIconPath:Ya,minLimitOrderValue:0,limitOrderThemeConfig:{}},Lf=()=>{const{connect:e}=E.useConnect(),t=u.useCallback(()=>e({connector:ql.injected({shimDisconnect:!0})}),[e]),n=u.useCallback(async()=>(console.log("terms of use were accepted. Assume `termsOfUseAccepted` config value switch to true"),Promise.resolve(!0)),[]);return{onConnect:t,onAcceptTermsOfUse:n}},Mf={params:{...xi},actions:{onConnect:()=>{},onAcceptTermsOfUse:()=>Promise.resolve(!0)}},Ai=u.createContext(Mf),Si=({children:e,config:t})=>{const n=Lf(),a=u.useMemo(()=>({params:{...xi,...t?.params},actions:{...n,...t?.actions}}),[t,n]);return r.jsx(Ai.Provider,{value:a,children:e})},Ci=()=>{const e=u.useContext(Ai);if(!e)throw new Error("ConfigContext is used out of Provider");return e},G=()=>Ci().params,Ka=()=>Ci().actions,Qa=()=>{const{depositQuoteDiffErrorThreshold:e}=G(),[t,n]=u.useState(!1),[{slippage:a,minSlippage:s}]=Q(),o=a==="auto"?s??0:a,l=!kt()&&o>e&&!t,c=u.useCallback(()=>{n(!0)},[]);return{requiresHighSlippageConfirm:l,confirmHighSlippage:c,slippageToBeUsed:o}},F={ERROR:"error",WARNING:"warning",SUCCESS:"success",DEFAULT:"default",CUSTOM:"custom"},$={TERMS_OF_USE:"TERMS_OF_USE",HIGH_SLIPPAGE:"HIGH_SLIPPAGE",TOKEN_SELECT:"TOKEN_SELECT",POOL_SELECT:"POOL_SELECT",TRADING:"TRADING",ERROR_NOTIFICATION:"ERROR_NOTIFICATION",LIMIT_SELLS:"LIMIT_SELLS",LIMIT_ORDER_WITHDRAW:"LIMIT_ORDER_WITHDRAW",WITHDRAW_STEPPER:"WITHDRAW_STEPPER"},Bt=e=>{const{depositQuoteDiffErrorThreshold:t,depositQuoteDiffWarningThreshold:n}=G(),a=Math.abs(e);return a>t?F.ERROR:a>n?F.WARNING:F.DEFAULT};var jf=rt,Bf=dt,$f="[object Number]";function Ff(e){return typeof e=="number"||Bf(e)&&jf(e)==$f}var Wf=Ff;const Uf=Tn(Wf),Ei=({tradingType:e,slippage:t,minSlippage:n})=>{const{defaultWithdrawSlippage:a}=G();return t!=="auto"?t.toString():Uf(n)?n.toString():e==="deposit"?mn.toString():a.toString()},Ii={depositSlippageWarning:"Excludes entry fee.",withdrawSlippageWarning:"Slippage occurs in both single asset withdrawals and withdrawals from vaults with Aave debt positions. However, for vaults with Aave debt, slippage is only applied to the portion of the withdrawal that corresponds to the Aave position.",minSlippageWarning:"Flexible min slippage value that is likely enough to process the transaction.",highSlippageWarning:"We recommend using another asset to trade with lower slippage.",recommendedMinSlippage:"Recommended min slippage",projectedDailyEarningsTooltip:"Projected daily earnings are based on the current APY and may differ from actual earnings.",dailyEarnings:"Daily earnings",projectedYearlyEarningsTooltip:"Projected yearly earnings are based on the current APY and may differ from actual earnings.",yearlyEarnings:"Yearly earnings",fullReceiveDetails:"See full details influencing what you will receive.",tradeDetails:"Trade details",maxSlippage:"Max slippage",minReceiveAmount:"You will receive no less than this amount.",minReceived:"Minimum received",estimatedMultiAssetFractions:"Pro-rated share of vault assets",infinite:"Infinite approval",tokenAllowance:"Token allowance",entryFee:"Entry fee",exitFee:"Exit fee",entryFeeExplanation:"Entry fee is charged in vault's tokens.",exitFeeExplanation:"Exit fee is charged in vault's tokens.",minDepositUsd:"Minimum deposit in USD.",minDeposit:"Minimum deposit",tokensLockTime:"Purchased tokens will have a {lockTime} lock.",slippageTolerance:"Slippage tolerance",reduceLockupTime:"Reduce lockup time",toggleTokenApprovalAmount:"Toggle between exact and infinite token approval.",auto:"Auto",reduceLockup:"Reduce lockup to {customLockTime} by paying 0.1% fee",deposit:"Buy",withdraw:"Sell",max:"Max",allAssets:"All Assets",all:"All",sell:"Sell",sellNow:"Sell Now",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",soldLabel:"Sold",receivedLabel:"Received",priceLabel:"Price",transactionLabel:"Transaction",limitOrderWithdrawDescription:"You are about to create a withdrawal request. Your vault tokens will be withdrawn within a few minutes.",total:"Total:",showAll:"Show all",hide:"Hide",refreshSwapQuoteTooltip:"Refresh swap quote",proceedWithNextStep:"Please proceed with the next step.",aggregatorsLabel:"Swap source",aggregatorsTooltip:"Choose which aggregators to use for your trades.",batchTransactionsLabel:"Batch transactions",batchTransactionsSwitchLabel:"Batch",openNotificationsSettingsLabel:"Enable alerts",addToWallet:"add to wallet",batchTransactionsTooltip:"Group transaction calls into a single batch transaction. Disable if you prefer separate prompts.",openLimitOrderAfterBuySwitchLabel:"Add Stop Order",stopOrder:"Schedule sell",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",cancel:"Cancel",approveTokensForWithdrawal:"Approve tokens for withdrawal",unrollAssetsToPrepare:"Unroll assets to prepare sell",unrollAndClaimAssets:"Unroll and claim assets",swapToCompleteSell:"Swap to complete sell",success:"Success"},_i=u.createContext(Ii),zf=({children:e,config:t})=>{const n=u.useMemo(()=>({...Ii,...t}),[t]);return r.jsx(_i.Provider,{value:n,children:e})},x=()=>{const e=u.useContext(_i);if(!e)throw new Error("TranslationContext is used out of Provider");return e},Xa=e=>{const t=x(),{symbol:n}=f(),a=`${n}${e}`;return t?.[a]??t[e]},Hf=async(e,t=Ya)=>{try{return(await import(`@dhedge/crypto-assets/icons/${e.toLowerCase()}.png`))?.default?.src??t(e)}catch{return t(e)}},Gf=(e=[])=>{const{getFallbackIconPath:t}=G(),[n,a]=u.useState([]),[s,o]=u.useState([]);return u.useEffect(()=>{if(e.every(l=>s.includes(l)))return;(async()=>{const l=await Promise.all(e.map(c=>Hf(c,t)));a(l),o(e)})()},[e,s,t]),n},Di=()=>{const{pricingAsset:e,symbol:t,chainId:n,address:a}=f(),{minLimitOrderValue:s}=G(),o=we({symbol:t,address:a}),i=pe({address:a,chainId:n});return Number(o)*Number(i)>=s&&!!e},Vf=(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}},Ni=Object.values($).reduce((e,t)=>({...e,[t]:{isOpen:!1,isPending:!1}}),{}),qf=()=>u.useReducer(Vf,Ni),Oi=u.createContext(Ni),Pi=u.createContext(()=>{}),ki=()=>{const e=u.useContext(Oi);if(!e)throw new Error("OverlayStateContext is used out of Provider");return e},ie=()=>{const e=u.useContext(Pi);if(!e)throw new Error("OverlayDispatchContext is used out of Provider");return e},ce=({type:e})=>{const t=ki(),n=ie(),a=u.useCallback(()=>{n({type:"MERGE_OVERLAY",payload:{type:e,isOpen:!1,isPending:!1}})},[n,e]),{onConfirm:s,isPending:o,meta:i}=t[e],l=d=>{n({type:"MERGE_OVERLAY",payload:{type:e,isOpen:!0,isPending:d}})};return{handleReject:a,handleConfirm:async()=>{await s?.(l),a()},isPending:o,meta:i}},Yf=()=>{const e=ie();return()=>{Object.values($).forEach(t=>{e({type:"MERGE_OVERLAY",payload:{type:t,isOpen:!1,isPending:!1}})})}},Kf=({children:e})=>{const[t,n]=qf(),[{isOpen:a}]=K();return u.useEffect(()=>{a&&!t.TRADING.isOpen&&n({type:"MERGE_OVERLAY",payload:{type:$.TRADING,isOpen:a}})},[a,t.TRADING.isOpen,n]),u.useEffect(()=>{!a&&t.TRADING.isOpen&&n({type:"MERGE_OVERLAY",payload:{type:$.TRADING,isOpen:a}})},[a,t.TRADING.isOpen,n]),r.jsx(Pi.Provider,{value:n,children:r.jsx(Oi.Provider,{value:t,children:e})})},Qf=()=>{const e=He(),t=ie(),n=Di(),a=u.useCallback(()=>{n&&(t({type:"MERGE_OVERLAY",payload:{type:$.LIMIT_SELLS,isOpen:!0}}),e?.(X.OPEN_LIMIT_SELL_VIEW,{[be.SOURCE.NAME]:"overlay"}))},[t,n,e]);return{displayLimitSellOverlay:n,openLimitSellOverlay:a}},Ri=()=>{const e=x(),[{status:t}]=K(),n=u.useMemo(()=>({Wallet:e.sendingOrderToWallet,None:e.settingUpTx,Mining:e.miningTx,Success:e.success}),[e]);return{status:t,statusLabel:n[t]}},Za=e=>{const t=x(),{status:n}=Ri();if(!(!e||n==="Success"))return n==="Mining"?t.miningTx:t.sendingOrderToWallet},Xf=({tradingType:e})=>{const t=Xa(e);return r.jsx(k.Tab,{className:({selected:n})=>C("dtw-relative dtw-text-[length:var(--panel-tab-font-size,var(--panel-font-size-sm))] dtw-px-[var(--panel-tab-px)] dtw-py-[var(--panel-tab-py)] dtw-font-[var(--panel-tab-font-weight,var(--panel-font-weight-bold))] !dtw-leading-[var(--panel-tab-line-height,var(--panel-line-height))] dtw-outline-0",{"!dtw-text-[color:var(--panel-tab-select-content-color,var(--panel-content-color))]":n,"!dtw-text-[color:var(--panel-tab-content-color,var(--panel-neutral-content-color))] hover:dtw-text-[color:var(--panel-tab-hover-content-color,var(--panel-content-hover-color))]":!n}),children:({selected:n})=>r.jsxs(r.Fragment,{children:[r.jsx("span",{children:t}),n?r.jsx("div",{className:"dtw-flex dtw-items-center dtw-justify-center dtw-absolute dtw-bottom-0 dtw-left-0 dtw-right-0 dtw-h-full dtw-rounded-[var(--panel-radius-secondary)] dtw-bg-[var(--panel-tab-bg,var(--panel-neutral-color))] dtw-shadow-md dtw-pointer-events-none",children:r.jsx("span",{children:t})}):null]})})},Zf={[F.DEFAULT]:se.QuestionMarkCircleIcon,[F.ERROR]:se.ExclamationCircleIcon,[F.SUCCESS]:se.CheckCircleIcon,[F.WARNING]:se.ExclamationCircleIcon,[F.CUSTOM]:se.QuestionMarkCircleIcon},Hn=({tooltipText:e,value:t,label:n,children:a,type:s=F.DEFAULT,className:o,emphasised:i=!1})=>r.jsxs("div",{className:C("dtw-flex dtw-grow dtw-items-center dtw-font-[var(--panel-meta-font-weight,var(--panel-font-weight-light))] dtw-gap-x-1",{"dtw-text-[length:var(--panel-meta-font-size)] dtw-leading-[var(--panel-meta-line-height)] dtw-text-[color:var(--panel-secondary-content-color)]":!i,"dtw-text-[length:var(--panel-meta-emphasised-font-size)] dtw-leading-[var(--panel-meta-emphasised-line-height)] dtw-text-[color:var(--panel-content-color)]":i},o),children:[r.jsxs("div",{className:"dtw-flex dtw-grow dtw-items-start dtw-justify-between",children:[r.jsxs("div",{className:"dtw-flex dtw-items-center dtw-gap-x-1",children:[r.jsx(li,{text:e,placement:"right",Icon:Zf[s],iconClassName:C({"dtw-text-[color:var(--panel-error-content-color)]":s===F.ERROR,"dtw-text-[color:var(--panel-warning-content-color)]":s===F.WARNING})}),r.jsx("p",{className:C({"dtw-text-[color:var(--panel-error-content-color)]":s===F.ERROR,"dtw-text-[color:var(--panel-warning-content-color)]":s===F.WARNING}),children:n})]}),r.jsx("div",{className:C({"dtw-text-[color:var(--panel-error-content-color)]":s===F.ERROR,"dtw-text-[color:var(--panel-warning-content-color)]":s===F.WARNING}),children:t})]}),a]}),Ja=({children:e,staticItems:t,collapseItems:n,themeType:a=F.DEFAULT,buttonItemChildren:s})=>{const o=x();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(Hn,{...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(Hn,{tooltipText:o.fullReceiveDetails,label:o.tradeDetails,value:"",type:a,emphasised:!0,children:[s,r.jsx(Ae.ChevronDownIcon,{className:C("dtw-text-[color:var(--panel-icon-color,var(--panel-content-color))] !dtw-h-[var(--panel-input-token-icon-size,var(--panel-icon-size))] !dtw-w-[var(--panel-input-token-icon-size,var(--panel-icon-size))] sm:dtw-w-[var(--panel-input-token-icon-size-sm,var(--panel-icon-size-sm))] sm:dtw-h-[var(--panel-input-token-icon-size-sm,var(--panel-icon-size-sm))]",{"dtw-rotate-180 dtw-transform":i})})]})}),r.jsx(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(Hn,{...l},l.label)),e]})})]})})})},Oe=({className:e})=>r.jsx("svg",{className:C("dtw-animate-spin dtw-stroke-[color:var(--panel-accent-content-color)]",e),viewBox:"0 0 24 24",fill:"none",xmlns:"http://www.w3.org/2000/svg",children:r.jsx("path",{d:"M12 2C6.47715 2 2 6.47715 2 12C2 17.5228 6.47715 22 12 22C17.5228 22 22 17.5228 22 12C22 9.27455 20.9097 6.80375 19.1414 5",strokeWidth:"2.5",strokeLinecap:"round",strokeLinejoin:"round"})}),Jf=({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}),ev=({children:e})=>r.jsx("div",{className:"dtw-flex dtw-flex-col dtw-gap-[var(--panel-meta-group-gap,var(--panel-gap))] dtw-px-[var(--panel-meta-group-px)] dtw-h-full dtw-relative",children:e}),pn=({Icon:e,onClick:t,className:n="dtw-h-7 dtw-w-7",containerClassName:a,disabled:s})=>r.jsx("div",{className:C("dtw-group dtw-w-fit dtw-cursor-pointer dtw-self-end dtw-rounded-lg dtw-p-1 hover:dtw-opacity-80",a,{"dtw-pointer-events-none":s}),onClick:t,children:r.jsx(e,{className:C("dtw-text-[color:var(--panel-icon-color)] group-hover:dtw-text-[color:var(--panel-icon-color-hover))]",n)})}),tv=({children:e,onClose:t})=>{const{defaultNotificationDuration:n}=G();return u.useEffect(()=>{const a=s=>{s.key==="Escape"&&t?.()};return window.addEventListener("keydown",a),()=>{window.removeEventListener("keydown",a)}},[t]),u.useEffect(()=>{const a=setTimeout(()=>{t?.()},n);return()=>{clearTimeout(a)}},[n,t]),r.jsx("div",{className:"dtw-p-4 dtw-absolute dtw-top-0 dtw-inset-x-0 dtw-rounded-xl dtw-bg-[var(--panel-notification-bg,var(--panel-secondary-color))]",children:r.jsxs("div",{className:"dtw-flex dtw-justify-between dtw-items-center",children:[r.jsx("div",{children:e}),!!t&&r.jsx(pn,{Icon:Zn.XMarkIcon,onClick:t,className:"dtw-w-6 dtw-h-6",containerClassName:"dtw-self-center"})]})})},nv=({children:e,className:t,transparent:n=!1,centered:a=!0,onClose:s,noPadding:o,onBack:i})=>(u.useEffect(()=>{const l=c=>{c.key==="Escape"&&s?.()};return window.addEventListener("keydown",l),()=>{window.removeEventListener("keydown",l)}},[s]),r.jsx("div",{className:C("dtw-absolute dtw-top-0 dtw-inset-0 dtw-rounded-xl dtw-backdrop-blur-md dtw-backdrop-brightness-75 dtw-backdrop-filter",{"dtw-p-1":!o}),children:r.jsxs("div",{className:C("dtw-flex dtw-flex-col dtw-rounded-xl dtw-p-4 dtw-h-full",t,{"dtw-bg-[var(--panel-overlay-bg)]":!n,"dtw-items-center dtw-justify-center":a}),children:[e,!!i&&r.jsx("div",{className:"dtw-absolute dtw-top-5 dtw-left-5",children:r.jsx(pn,{Icon:Zn.ChevronLeftIcon,onClick:i})}),!!s&&r.jsx("div",{className:"dtw-absolute dtw-top-5 dtw-right-5",children:r.jsx(pn,{Icon:Zn.XMarkIcon,onClick:s})})]})})),av=({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}),sv=({className:e,iconClassName:t,onClick:n,children:a})=>{const s=He(),o=()=>{n?.(),s?.(X.TRADING_SETTINGS_OPENED)};return r.jsxs(k.Popover,{className:C("dtw-flex dtw-items-center dtw-justify-end",e),children:[r.jsx(k.PopoverButton,{onClick:o,children:r.jsx(se.Cog6ToothIcon,{className:C("dtw-h-[var(--panel-input-token-icon-size,var(--panel-icon-size))] dtw-w-[var(--panel-input-token-icon-size,var(--panel-icon-size))] sm:dtw-w-[var(--panel-input-token-icon-size-sm,var(--panel-icon-size-sm))] sm:dtw-h-[var(--panel-input-token-icon-size-sm,var(--panel-icon-size-sm))] hover:dtw-opacity-80 dtw-text-[color:var(--panel-icon-color,var(--panel-content-color))]",t)})}),r.jsx(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})})]})},rv=({children:e})=>r.jsx(k.TabPanel,{children:r.jsx(sv,{children:e})}),Y={InputGroup:Jf,Meta:ev,Settings:rv,Panel:av,Overlay:nv,Notification:tv},ov=["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)]"],iv=["!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:C("dtw-rounded-[var(--panel-input-button-radius,var(--panel-radius))]","dtw-font-medium","dtw-border","dtw-transition-border","dtw-duration-500","dtw-ease-in-out","disabled:dtw-opacity-50","dtw-py-2","dtw-px-5","dtw-w-full",{[iv.join(" ")]:n,[ov.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(Oe,{className:"dtw-h-4 dtw-w-4"}),e]}),Li={GeoBlockAlert:()=>r.jsx(vt,{type:"error",children:r.jsx("span",{className:"dtw-text-sm",children:"Depositing is geo-blocked."})}),SanctionedAlert:()=>r.jsx(vt,{type:"error",children:r.jsx("span",{className:"dtw-text-sm",children:"Your address has been found on a sanctions list. Deposits are disabled."})}),AvailableLiquidityAlert:({liquidityAmount:e})=>r.jsxs(vt,{type:"warning",children:[r.jsx("p",{className:"dtw-text-center",children:e?`${e} withdrawal liquidity`:"Liquidity is running low"}),r.jsx("p",{className:"dtw-text-sm dtw-text-center",children:"Sell a smaller amount"})]}),MaxSupplyReachedAlert:({supplyCapInUsd:e})=>r.jsxs(vt,{type:"warning",children:[r.jsx("p",{className:"dtw-text-center dtw-text-base",children:"Supply caps reached"}),r.jsxs("p",{className:"dtw-text-sm dtw-text-center",children:["Can only buy ",e," more"]})]}),OnDemandWithdrawAlert:()=>r.jsxs(vt,{type:"info",children:[r.jsx("p",{className:"dtw-text-center",children:"On demand sell"}),r.jsx("p",{className:"dtw-text-sm dtw-text-[color:var(--panel-secondary-content-color)] dtw-text-center",children:"Sell will happen automatically over time as liquidity is made available"})]})},Mi=u.createContext(Li),lv=({children:e,config:t})=>{const n=u.useMemo(()=>({...Li,...t}),[t]);return r.jsx(Mi.Provider,{value:n,children:e})},R=()=>{const e=u.useContext(Mi);if(!e)throw new Error("ComponentContext is used out of Provider");return e},da=({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(se.ExclamationCircleIcon,{className:"dtw-h-5 dtw-w-5"}),r.jsx("div",{className:"dtw-py-1 dtw-text-xs",children:t})]}),r.jsx(Ha,{text:t,children:r.jsx(n,{disabled:!0,children:r.jsxs("div",{className:"dtw-flex dtw-items-center dtw-justify-center dtw-gap-2",children:[r.jsx(se.LockClosedIcon,{className:"dtw-h-5"}),r.jsx("span",{children:e})]})})})]})},qe=({link:e,className:t,children:n,iconClassName:a="dtw-h-5 dtw-w-5",showDefaultIcon:s=!0})=>r.jsxs("a",{className:C("dtw-inline-flex dtw-cursor-pointer dtw-items-center dtw-gap-x-1 dtw-drop-shadow-md hover:dtw-border-themeGray-600 !dtw-text-[color:var(--panel-meta-link-color,var(--panel-content-color))]",t),href:e,target:"_blank",rel:"noreferrer",children:[n,s&&r.jsx(se.ArrowTopRightOnSquareIcon,{className:a})]}),Pn=({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:C("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:C("dtw-p-0 dtw-relative dtw-inline-flex dtw-h-6 dtw-w-11 dtw-flex-shrink-0 dtw-items-center dtw-rounded-full dtw-transition-colors focus:dtw-outline-none",{"!dtw-bg-[color:var(--panel-switch-bg-checked)] !dtw-text-[color:var(--panel-switch-color-checked)]":o,"!dtw-bg-[color:var(--panel-switch-bg)] !dtw-text-[color:var(--panel-switch-color)]":!o,"dtw-pointer-events-none dtw-opacity-50":n}),children:r.jsx("span",{className:C("dtw-inline-block dtw-h-4 dtw-w-4 dtw-transform dtw-rounded-full dtw-transition-transform",{"dtw-translate-x-6 !dtw-bg-[color:var(--panel-switch-thumb-bg-checked)]":o,"dtw-translate-x-1 !dtw-bg-[color:var(--panel-switch-thumb-bg)]":!o})})})]})})},ji=({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}),cv=({onClick:e})=>{const t=x();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})},Bi=({style:e,className:t})=>r.jsx("div",{className:C("tw-animate-pulse tw-rounded tw-bg-themeGray-300 tw-bg-opacity-50 tw-h-6",t),style:e}),$i=e=>r.jsx("img",{...e}),dv=(e,t)=>e===0?`dtw-z-${(t-1)*10}`:`dtw--ml-2 dtw-z-${(t-e-1)*10}`,pv=e=>{switch(e){case"xs":return{height:"!dtw-h-3 sm:!dtw-h-4 ",width:"!dtw-w-3 sm:!dtw-w-4",diameter:16};case"sm":return{height:"!dtw-h-4 sm:!dtw-h-5 ",width:"!dtw-w-4 sm:!dtw-w-5",diameter:20};case"m":return{height:"!dtw-h-5 sm:!dtw-h-6 ",width:"!dtw-w-5 sm:!dtw-w-6",diameter:24};case"lg":return{height:"!dtw-h-7 sm:!dtw-h-8 ",width:"!dtw-w-7 sm:!dtw-w-8",diameter:32};case"xl":return{height:"!dtw-h-9 sm:!dtw-h-10 ",width:"!dtw-w-9 sm:!dtw-w-10",diameter:36};case"2xl":return{height:"!dtw-h-16 sm:!dtw-h-18",width:"!dtw-w-16 sm:!dtw-w-18",diameter:72}}},$e=({symbols:e,size:t="m",className:n=""})=>{const{Image:a=$i}=R(),s=e.join(""),[o,i]=u.useState({[s]:!1}),{height:l,width:c,diameter:d}=pv(t),p=Gf(e);if(!p?.length||!p[0]||o[s])return null;const m=()=>i(y=>({...y,[s]:!0}));return p.length===1?r.jsx(a,{src:p[0],alt:`${e[0]} icon`,className:C(l,c,n),width:d,height:d,onError:m}):r.jsx("span",{className:`dtw-flex-no-wrap dtw-z-0 dtw-flex ${l} ${n}`,children:p.map((y,w)=>r.jsx(a,{src:y,alt:`${e[w]} icon`,className:C("dtw-inline-block dtw-overflow-visible dtw-rounded-full",c,l,dv(w,e.length)),width:d,height:d,onError:m},w))})},$t=({symbol:e,iconSymbols:t,size:n,symbolClasses:a="dtw-text-sm dtw-font-medium",CustomIcon:s,customTitle:o,className:i})=>{const l=x(),c=o||(e==="all"?l.allAssets:e);return r.jsxs("div",{className:C("dtw-flex dtw-w-full dtw-items-center dtw-space-x-1.5",i),children:[s??r.jsx($e,{size:n,symbols:t,className:"dtw-flex-shrink-0"}),r.jsx("div",{className:a,title:c,children:c||r.jsx(Bi,{className:"dtw-w-[70px]"})})]})},vt=({className:e,children:t,type:n="error"})=>r.jsx("div",{className:C("dtw-rounded-[var(--panel-radius)] dtw-p-3",{"dtw-bg-[var(--panel-alert-error-bg)] dtw-text-[var(--panel-alert-error-color)]":n==="error","dtw-bg-[var(--panel-alert-warning-bg)] dtw-text-[var(--panel-alert-warning-color)]":n==="warning","dtw-bg-[var(--panel-alert-info-bg)] dtw-text-[var(--panel-alert-info-color)]":n==="info"},e),children:t}),Gn=(e,t=!1)=>{if(!e)return"";let n="";t&&e.startsWith("-")&&(n="-",e=e.slice(1));const[a,s]=e.split("."),o=a?.replace(/\D/g,"");if(!o)return s?`${n}0.${s}`:n;const i=new Intl.NumberFormat().format(Number(o));return s!==void 0?`${n}${i}.${s.replace(/[^\d]/g,"")}`:`${n}${i}`},Vn=e=>e.replace(/,/g,""),uv=u.forwardRef(({value:e,onChange:t,formatOnBlurOnly:n=!1,allowNegative:a=!1,...s},o)=>{const i=c=>{const p=c.target.value.replace(a?/[^0-9.-]/g:/[^0-9.]/g,"").replace(/^(-?\d*\.\d*).*$/,"$1").replace(/^(-?\.)(.*)/,"$1$2");if(n)t?.(p,Vn(p));else{const m=Gn(p,a);t?.(m,Vn(m))}},l=()=>{if(!n)return;const c=Gn(e,a);t?.(c,Vn(c))};return r.jsx("input",{...s,ref:o,type:"text",inputMode:"decimal",value:Gn(e,a),onChange:i,onBlur:l})});uv.displayName="InputNumber";const Le=({className:e})=>r.jsx("div",{className:C("dtw-w-full dtw-h-[1px] dtw-bg-[var(--panel-divider-color)] dtw-shrink-0",e)}),mv=()=>{const[e]=ye(),[t,n]=Q(),[a,s]=u.useState(!1),o=t.slippage!=="auto";return{settings:t,tradingType:e,isCustomSlippage:o,invalidSlippage:a,onDefaultSlippageSelect:()=>{n({slippage:"auto"})},onCustomSlippageSelect:c=>{const d=c.target.value,p=+d<0||+d>100;s(p);let m=t.slippage;p||d.trim().length===0&&o?m="auto":d.trim().length>0&&(m=+d),n({slippage:m})}}},Js=({selected:e=!1,children:t,className:n,onClick:a})=>r.jsx("div",{className:C("dtw-cursor-pointer dtw-rounded-[var(--panel-input-button-radius,var(--panel-radius))] dtw-py-1 dtw-text-center dtw-text-sm",n,{"dtw-bg-[color:var(--panel-switch-bg-checked)] !dtw-text-[color:var(--panel-switch-color-checked)]":e,"dtw-bg-[color:var(--panel-switch-bg)] dtw-text-white hover:dtw-opacity-80 !dtw-text-[color:var(--panel-switch-color)]":!e}),onClick:a,children:t}),yv=0,wv=100,Fi=()=>{const e=x(),{settings:t,tradingType:n,isCustomSlippage:a,invalidSlippage:s,onDefaultSlippageSelect:o,onCustomSlippageSelect:i}=mv(),l=Ei({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(Js,{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(Js,{selected:a,className:"dtw-w-14",children:r.jsx("input",{className:C("dtw-w-full dtw-bg-transparent dtw-px-1.5 dtw-outline-none focus:dtw-outline-none dtw-text-center",{"dtw-text-red-600":s}),type:"number",min:yv,max:wv,onChange:i,placeholder:l,defaultValue:a?t.slippage.toString():""})}),r.jsx("span",{children:"%"})]})]})};function kn(e,t,n){const a=lc[n??h.arbitrum.id]?.blockExplorers?.default?.url;if(a)switch(t){case"transaction":return`${a}/tx/${e}`;default:return`${a}/address/${e}`}}const hv=({batchId:e,updatePendingTransactions:t})=>{const{data:n}=E.useWaitForCallsStatus({id:e,pollingInterval:ir,query:{enabled:!!e}}),a=n?.receipts?.[0]?.transactionHash;u.useEffect(()=>{a&&t({type:"update",txHash:a})},[a,t])},Wi=()=>{const[e,t]=re(),n=K()[1],a=xo(),s=So(),[o]=e,i=o?.batchId,l=o?.txHash,c=o?.action,d=c==="approve",p=o?.chainId,{invalidateTradingQueries:m,invalidateAllowanceQueries:y}=Dn();hv({batchId:i,updatePendingTransactions:t});const{data:w,error:g}=E.useWaitForTransactionReceipt({hash:l,chainId:p,pollingInterval:ir,query:{enabled:!!l}});u.useEffect(()=>{if(w){const b=w.transactionHash;if(b){const A=kn(b,"transaction",p);n({link:A,status:"Success",action:c}),t({type:"remove",status:"success",txHash:b}),s?.(w,c,A)}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])},Ye=({action:e,onErrorCallback:t})=>{const[,n]=K(),[,a]=re(),[,s]=N(),o=Ao();return u.useCallback((i,l,c)=>{if(l){n({isOpen:!1,status:"None",link:"",sendTokens:null,receiveTokens:null}),a({type:"remove",status:"fail"}),console.debug(`${e} transaction failed`,l),o?.(l),t?.(l);return}if(i){console.debug(`${e} transaction started`,i),a({type:"update",txHash:i});const d=kn(i,"transaction",c.chainId);n({isOpen:!0,status:"Mining",link:d}),e!=="approve"&&s({value:""})}},[n,a,e,o,t,s])},es=({address:e,chainId:t,refetchInterval:n,disabled:a=!1})=>{const{supportedChainId:s}=Se(),{data:o}=E.useReadContracts({contracts:[{address:z("factory",t??s),abi:Ue,functionName:"getAssetPrice",args:[e],chainId:t}],query:{enabled:!ee(e)&&!a,refetchInterval:n}});return In(o),o?.[0]?.result},de=({address:e,chainId:t,refetchInterval:n=We,disabled:a})=>{const s=es({address:e,chainId:t,refetchInterval:n,disabled:a});return D.formatUnits(s??BigInt(0),P)},ts=()=>{const[e]=N(),[t]=O(),n=we({address:e.address,symbol:e.symbol}),a=new T(e.value),s=new T(t.value);return(a.gt(0)||s.gt(0))&&a.lte(n??0)};function gv(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 Ui=()=>{const[e]=N(),[t]=O();return{value:gv(e.symbol,t.symbol,e.value,t.value),isLoading:!!t.isLoading}},Ke=()=>{const e=!Ve(),[{symbol:t}]=O(),[{isMultiAssetWithdrawalEnabled:n}]=Q();return e&&n&&t==="all"},ns=({onErrorCallback:e}={})=>{const{account:t}=M(),{chainId:n}=f(),a=Ke(),[s]=N(),o=new T(s.value||"0").shiftedBy(s.decimals).toFixed(0,T.ROUND_UP),i=z("easySwapperV2",n),{canSpend:l,isFetching:c}=nl({tokenAddress:s.address,ownerAddress:t??I,spenderAddress:i,rawAmountToSpend:o,chainId:n,skip:a||o==="0"}),d=tl({token:s,rawTokenAmount:o,spenderAddress:i,onErrorCallback:e});return{canSpend:l,approve:d,isCanSpendFetching:c}},bv=({address:e,chainId:t})=>{const n=E.usePublicClient({chainId:t}),{data:{aaveAssetGuardAddress:a=I}={}}=Lt({address:e,chainId:t});return u.useCallback(async({withdrawAmountD18:s,slippage:o})=>oi({address:a,abi:Sc,functionName:"calculateSwapDataParams",args:[e,s,_a(o)],publicClient:n}),[a,e,n])},zi=async({assets:e,getSwapQuotes:t,signal:n,buildKey:a})=>{const s=await Promise.all(e.map(o=>t({signal:n,variables:{...o,fromAddress:Nr}})));return e.reduce((o,i,l)=>{const c=a(i);return o[c]=s[l]??null,o},{})},Hi=e=>e.length>1?1:0,Tv=async({assets:e,getSwapQuotes:t,signal:n})=>zi({assets:e,getSwapQuotes:t,signal:n,buildKey:ro}),fv=(e,t)=>{const n=Na(),{settings:{selectedAggregators:a}}=J();return tt.useQuery({queryKey:["getSwapsQuotes",e,a],queryFn:async({signal:s,queryKey:[,o]})=>await zi({assets:o,getSwapQuotes:n,signal:s,buildKey:({sourceAddress:i})=>i}),...t})},vv=new AbortController,xv=vv.signal,Av=({chainId:e})=>{const{account:t=I}=M(),n=Na();return u.useCallback(async({swapParams:a,slippage:s})=>{const o=(a?.srcData??[]).map(({asset:i,amount:l})=>({chainId:e,sourceAddress:i,destinationAddress:a?.dstData.asset??I,walletAddress:t,amount:l.toString(),slippage:s.toString()}));return Tv({assets:o,getSwapQuotes:n,signal:xv})},[e,n,t])},Sv=({address:e,chainId:t})=>{const n=z("aaveLendingPoolV3",t),{data:{getSupportedAssets:a}={}}=jt({address:e,chainId:t}),s=bv({address:e,chainId:t}),o=Av({chainId:t});return u.useCallback(async({withdrawAmountD18:i,slippage:l,estimate:c,transactionArgs:d})=>{const p=_a(l);if(!a?.some(b=>H(b,n)))return Ts(a,p);const y=await xd(a,n,{withdrawAmountD18:i,slippage:l,fetchAaveSwapParams:s,fetchAaveSwapQuotes:o}),w=Td(y);return await vd(w,y,p,c,d)??Ts(a,p)},[n,s,o,a])},Cv=()=>{const{defaultWithdrawSlippage:e,defaultSwapTransactionSlippage:t}=G(),n=!Ve(),{isCompleteWithdrawStep:a,isFetching:s}=Qe(),[o]=O(),[,i]=Q(),l=Qi();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])},Ev=()=>{const{account:e=I}=M(),{chainId:t}=f();return E.useReadContract({address:z("easySwapperV2",t),abi:fe,functionName:"withdrawalContracts",chainId:t,args:[e],query:{enabled:!ee(e)}})},as=()=>{const{chainId:e}=f(),[t]=O(),n=es({address:t.address,chainId:e}),a=Ft(),s=Vi(),o=new T(s).shiftedBy(P).div(n?.toString()??"1").shiftedBy(t.decimals).toFixed(0,T.ROUND_DOWN),i=new T(o).times(1-mr/100).times(1-a/100).toFixed(0,T.ROUND_DOWN);return{expectedReceiveAmount:o,minExpectedReceiveAmount:i}},Gi=({isClaim:e,onErrorCallback:t}={})=>{const n=f(),{data:a=[]}=ue(),{data:s={}}=yt(),[o]=O(),{minExpectedReceiveAmount:i}=as(),l=re()[1],c=e?"claim":"swap",d=Ye({action:c,onErrorCallback:t}),p=Xi(),{send:m,estimate:y}=ve({contractId:"easySwapperV2",functionName:tc,onSettled:d}),w=u.useCallback(async()=>{if(e||!p)return[];const g=Object.values(s)[0]?.map(({routerKey:b})=>b);if(!g?.length)return console.warn("[Complete Withdraw] No available routers found for swap"),[];for(const b of g){const A=Object.entries(s).reduce((j,[B,ne])=>{const xe=ne?.find(Xe=>Xe.routerKey===b);return{...j,[B]:xe}},{}),S=sd({assets:a,swapData:A,receiveAssetAddress:o.address}),{error:_}=await y(S,i);if(!_)return[S,i]}return console.error("[Complete Withdraw] All routers failed estimation"),[]},[e,p,s,i,a,o.address,y]);return u.useCallback(async()=>{l({type:"add",action:c,symbol:n.symbol,chainId:n.chainId});const g=await w();return console.log("Arguments",g),m(...g)},[c,n.chainId,n.symbol,m,w,l])},Vi=()=>{const{data:e=[]}=ue();return e.reduce((t,{balance:n,price:a})=>t+n*a,0)},qi=({account:e,chainId:t})=>E.useReadContract({address:z("easySwapperV2",t),abi:fe,functionName:"getTrackedAssets",chainId:t,args:[e],query:{enabled:!ee(e)}}),Iv=({assets:e,chainId:t})=>e.flatMap(({token:n})=>[{address:n,abi:D.erc20Abi,functionName:"symbol",chainId:t,args:[]},{address:n,abi:D.erc20Abi,functionName:"decimals",chainId:t,args:[]},{address:z("factory",t),abi:Ue,functionName:"getAssetPrice",chainId:t,args:[n]}]),_v=3,Yi=({assets:e,chainId:t})=>{const n=u.useCallback(a=>e.map(({token:s,balance:o},i)=>{const l=i*_v,c=l+1,d=c+1,p=Number(a[c]?.result??P),m=Ea[s.toLowerCase()]??a[l]?.result?.toString()??"";return{address:s,symbol:m,decimals:p,rawBalance:o,balance:new T(o.toString()).shiftedBy(-p).toNumber(),price:new T(a[d]?.result?.toString()??0).shiftedBy(-18).toNumber()}}),[e]);return E.useReadContracts({contracts:Iv({assets:e,chainId:t}),query:{enabled:e.length>0,select:n}})},ue=()=>{const{account:e=I}=M(),{chainId:t}=f(),{data:n=[]}=qi({account:e,chainId:t});return Yi({assets:n,chainId:t})},Qe=()=>{const{data:e=[],isFetching:t}=ue();return{isCompleteWithdrawStep:e?.length>0,isFetching:t}},yt=()=>{const{defaultSwapTransactionSlippage:e}=G(),{chainId:t}=f(),{account:n=I}=M(),[{slippage:a}]=Q(),[s]=O(),{data:o=[]}=ue(),i=Xi(),l=u.useMemo(()=>o.filter(({address:c})=>!H(c,s.address)).map(({address:c,rawBalance:d})=>({chainId:t,sourceAddress:c,destinationAddress:s.address,walletAddress:n,amount:d.toString(),slippage:(a==="auto"?e:a).toString()})),[o,t,e,s.address,a,n]);return fv(l,{enabled:i,refetchInterval:wa})},Dv=()=>{const[e,t]=O(),{data:n=[]}=ue(),{data:a,isFetching:s,isError:o}=yt();u.useEffect(()=>{t({isLoading:s})},[s,t]),u.useEffect(()=>{if(n.length===0||s||o)return;const i=n.reduce((l,c)=>{if(H(c.address,e.address))return l.plus(c.rawBalance.toString());const d=a?.[c.address]??[],m=d[Hi(d)]?.destinationAmount??"0";return l.plus(m)},new T(0));t({value:D.formatUnits(BigInt(i.toFixed()),e.decimals)})},[n,o,s,e.address,e.decimals,a,t])},Ki=({withdraw:e,isClaim:t,onErrorCallback:n})=>{const a=x(),s=ie(),{account:o}=M(),i=f(),[l]=O(),c=K()[1],d=re()[1],p=gn(),{data:m}=ue(),{isFetching:y}=yt(),w=u.useCallback(async()=>{const g=i.chainId,b=(m??[]).map(({address:S,decimals:_,symbol:j,balance:B})=>({address:S,decimals:_,symbol:j,value:B.toString()})),A=t?null:b.filter(S=>!H(S.address,l.address));c({isOpen:!0,status:"Wallet",action:t?"claim":"swap",link:"",sendTokens:A,receiveTokens:t?b:[l]});try{await e()}catch(S){S instanceof ut&&(n?.(),s({type:"MERGE_OVERLAY",payload:{type:$.ERROR_NOTIFICATION,isOpen:!0,meta:{error:S.message}}}),p?.(S,i.address,g,o)),c({isOpen:!1,status:"None",link:"",sendTokens:null,receiveTokens:null}),d({type:"remove",status:"fail"})}},[o,m,s,t,n,p,i.address,i.chainId,l,d,c,e]);return{disabled:t?!1:y,label:t?a.claimAction:a.swapAction,handleTrade:w}},Qi=()=>{const{expectedReceiveAmount:e}=as(),[t]=O(),n=new T(t.value||"0").shiftedBy(t.decimals);return e==="0"||n.isZero()?0:n.dividedBy(e).minus(1).times(100).decimalPlaces(2,T.ROUND_DOWN).toNumber()},Xi=()=>{const[e]=O(),{data:t=[]}=ue();return t.length>0&&t.some(({address:n})=>!H(n,e.address))},Nv=({handleTrade:e,onError:t})=>{const n=ie(),{data:a=[]}=ue(),{data:s,isFetching:o,isError:i}=yt(),l=u.useRef(!1),c=a.length===0,d=a.length>1;u.useEffect(()=>{i&&(t(),n({type:"MERGE_OVERLAY",payload:{type:$.ERROR_NOTIFICATION,isOpen:!0,meta:{error:jr}}}))},[n,i,t]),u.useEffect(()=>{const p=d?!!s&&Object.values(s).length>0:!0;try{if(c||!p||o||l.current)return;l.current=!0,e()}catch(m){console.error(m)}},[a,o,s,e,d,c])},Ft=()=>{const{defaultWithdrawSlippage:e}=G(),{isCompleteWithdrawStep:t}=Qe(),[{slippage:n,minSlippage:a}]=Q();return n==="auto"?t?a??e:e:n};function pa(e,t,n){const[a,s]=u.useState(n),o=hn?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 ss=(e,t)=>{const[n,a]=u.useState(e);return u.useEffect(()=>{const s=setTimeout(()=>{a(e)},t);return()=>{clearTimeout(s)}},[e,t]),n},Ov=()=>{const e=f(),[t]=N(),n=Ke(),a=Ft(),s=Sv(e);return u.useCallback(async o=>{const i=io(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])},Pv=({debounceTime:e}={})=>{const t=f(),n=Ke(),[a]=N(),s=Ft(),{data:{getSupportedAssets:o}={}}=jt(t),i=ss(a.value||"0",e??0);return u.useMemo(()=>{const l=_a(s),c=io(i),d=(o??[]).map(p=>({supportedAsset:p,withdrawData:"",slippageTolerance:l}));return n?[c,d]:[t.address,c,d]},[s,i,o,n,t.address])},kv=e=>typeof e[0]=="string"&&typeof e[1]=="bigint"&&Array.isArray(e[2]),Rv=()=>{const e=f(),t=kt(),{canSpend:n}=ns(),a=Pv({debounceTime:cr}),s=kv(a)&&a[1]!==BigInt(0)&&!t&&n,{data:o}=E.useSimulateContract({abi:fe,address:z("easySwapperV2",e.chainId),functionName:wr,args:a,query:{enabled:s}});return Yi({assets:o?.result[0]??[],chainId:e.chainId})},rs=()=>{const[e]=O(),{data:t=[],isFetching:n,isFetched:a}=Rv(),s=Rt();return{isUnrollAndClaimTransaction:t?.length===1&&H(t[0]?.address,e.address)&&!s,isFetching:n,isFetched:a}},Lv=({onErrorCallback:e}={})=>{const t=f(),n=Ke(),{isUnrollAndClaimTransaction:a}=rs(),s=Ov(),o=re()[1],i=n?"multi_withdraw":a?"single_withdraw_and_claim":"single_withdraw",l=Ye({action:i,onErrorCallback:e}),c=n?yr:a?ec:wr,{send:d,estimate:p}=ve({contractId:n?"poolLogic":"easySwapperV2",dynamicContractAddress:n?t.address:void 0,functionName:c,onSettled:l});return{withdraw:u.useCallback(async()=>{o({type:"add",action:i,symbol:t.symbol,chainId:t.chainId});const y=await s(p);return console.log("Arguments",y),d(...y)},[o,i,t.symbol,t.chainId,s,p,d]),action:i}},Zi=({trade:e,onErrorCallback:t})=>{const n=x(),a=ie(),{account:s}=M(),o=f(),[i]=N(),[l]=O(),[c]=ye(),d=K()[1],p=re()[1],m=gn(),y=Ke(),{isUnrollAndClaimTransaction:w}=rs(),g=we({symbol:i.symbol,address:i.address}),b=c==="deposit",A=ts(),S=b?"deposit":y?"multi_withdraw":w?"single_withdraw_and_claim":"single_withdraw",_=async()=>{const j=o.chainId;d({isOpen:!0,status:"Wallet",action:S,link:"",sendTokens:[i],receiveTokens:b||w?[l]:null,meta:b?{}:{withdrawPercentage:i.value&&g?new T(i.value).div(g).toNumber():0}});try{await e()}catch(B){B instanceof ut&&(t?.(),a({type:"MERGE_OVERLAY",payload:{type:$.ERROR_NOTIFICATION,isOpen:!0,meta:{error:B.message}}}),m?.(B,o.address,j,s)),d({isOpen:!1,status:"None",link:"",sendTokens:null,receiveTokens:null,meta:{}}),p({type:"remove",status:"fail"})}};return{disabled:!A,label:b?n.depositAction:y?n.withdrawAction:w?n.unrollAndClaimAction:n.unrollAction,handleTrade:_}},Mv=1,jv="USD",Bv=({depositValueInUsd:e,apy:t,apyCurrencyPrice:n,currency:a})=>{if(e===0||!t||!a||n===0)return{yearlyEarnings:"-",dailyEarnings:"-",monthlyEarnings:"-"};const s=e*t/100/n;return{yearlyEarnings:tn({value:s,currency:a}),dailyEarnings:tn({value:s/365,currency:a}),monthlyEarnings:tn({value:s/12,currency:a})}},Ji=({currency:e,depositValueInUsd:t,chainId:n,apy:a,disabled:s})=>{const o=e==="ETH"?Zr[n]?.address:e==="BTC"?Jr[n]?.address:void 0,i=de({address:o??I,chainId:n,disabled:s||!a||!o}),l=o?Number(i):Mv;return u.useMemo(()=>Bv({depositValueInUsd:t,apy:a,apyCurrencyPrice:l,currency:o?e:jv}),[t,a,l,e,o])},el=()=>{const e=ye()[0]==="deposit",{chainId:t}=f(),[n]=Ge(),[a]=N(),s=de({address:a.address,chainId:t,disabled:!e||!n.apy}),o=Ji({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}},$v=e=>e.chainId?e.sourceAddress?e.destinationAddress?!e.amount||e.amount==="0"||e.amount==="NaN"?{isValid:!1,error:"Missing required parameter: amount or amount must be greater than 0"}:e.slippage?{isValid:!0}:{isValid:!1,error:"Missing required parameter: slippage"}:{isValid:!1,error:"Missing required parameter: destinationAddress"}:{isValid:!1,error:"Missing required parameter: sourceAddress"}:{isValid:!1,error:"Missing required parameter: chainId"},Fv=(e,t)=>{const{settings:{selectedAggregators:n}}=J(),a=Na(),{isValid:s}=$v({chainId:String(e.chainId),sourceAddress:e.sourceAddress,destinationAddress:e.destinationAddress,amount:e.amount,slippage:String(e.slippage)});return tt.useQuery({queryKey:["getSwapQuotes",{...e,fromAddress:Nr},n],queryFn:async({signal:o,queryKey:[,i]})=>a({signal:o,variables:i}).then(l=>l?.filter(c=>!!c)??[]),...t,enabled:s&&(t?.enabled??!0)})},Rn=(e={})=>{const t=e?.extendedDebounceTime??!1,[n]=N(),a=ss(n.value,t?cr:lr);return{debouncedSendTokenValue:a,isDebouncing:n.value!==a}},Wv=()=>{const e=Nn(),[{isBatchTransactionsEnabled:t}]=Q();return e&&t},Qt="approve",tl=({token:e,rawTokenAmount:t,spenderAddress:n,onErrorCallback:a})=>{const s=f(),[{isInfiniteAllowance:o}]=Q(),i=re()[1],l=K()[1],c=Ye({action:Qt,onErrorCallback:a}),{send:d}=ve({contractId:"erc20",dynamicContractAddress:e.address,functionName:Qt,onSettled:c});return u.useCallback(async()=>(l({isOpen:!0,status:"Wallet",link:"",action:Qt,sendTokens:[{symbol:e.symbol,address:e.address,decimals:e.decimals,value:""}],receiveTokens:null,meta:{}}),i({type:"add",action:Qt,symbol:e.symbol,chainId:s.chainId}),d(n,o?Fe:t)),[o,s.chainId,t,d,n,e.address,e.decimals,e.symbol,i,l])},nl=({rawAmountToSpend:e,tokenAddress:t,ownerAddress:n,spenderAddress:a,chainId:s,skip:o=!1})=>{const{data:i,isFetching:l}=bn({tokenAddress:t,ownerAddress:n,spenderAddress:a,chainId:s,skip:o});return u.useMemo(()=>o?{canSpend:!0,isFetching:!1}:!i||i===BigInt(0)?{canSpend:!1,isFetching:l}:!e||e==="0"?{canSpend:!0,isFetching:l}:{canSpend:new T(i.toString()).gte(e),isFetching:l},[l,e,i,o])},Uv=()=>{const[{isInfiniteAllowance:e},t]=Q(),n=He(),a=u.useCallback(s=>{t({isInfiniteAllowance:s}),n?.(X.INFINITE_ALLOWANCE_CHANGE,{[be.IS_INFINITE.NAME]:s?1:0})},[t,n]);return u.useMemo(()=>[e,a],[e,a])},al=()=>{const e=x(),[t,n]=Uv();return r.jsx(Pn,{defaultEnabled:t,onChange:n,label:e.infinite})},zv=()=>{const[{isBatchTransactionsEnabled:e},t]=Q(),n=He(),a=u.useCallback(s=>{t({isBatchTransactionsEnabled:s}),bd(s),n?.(X.BATCH_TRANSACTIONS_CHANGE,{[be.IS_BATCH_TRANSACTIONS_ENABLED.NAME]:s?1:0})},[t,n]);return u.useMemo(()=>[e,a],[e,a])},sl=()=>{const e=x(),[t,n]=zv();return r.jsx(Pn,{defaultEnabled:t,onChange:n,label:e.batchTransactionsSwitchLabel})},Hv=()=>{const[{availableAggregators:e,selectedAggregators:t},n]=Q(),a=u.useCallback(s=>{const o=t.includes(s)?t.filter(i=>i!==s):[...t,s];n({selectedAggregators:o})},[t,n]);return{availableAggregators:e,selectedAggregators:t,onAggregatorToggle:a}},rl=()=>{const e=x(),{availableAggregators:t,selectedAggregators:n,onAggregatorToggle:a}=Hv();return t.length<=1?null:r.jsx(je,{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(Pn,{defaultEnabled:n.includes(s),onChange:()=>a(s),size:"sm"})]},s))})})},Gv=()=>{const e=Nn(),t=x();return r.jsxs(r.Fragment,{children:[r.jsx(je,{label:t.slippageTolerance,tooltipText:t.depositSlippageWarning,children:r.jsx(Fi,{})}),r.jsx(je,{label:t.tokenAllowance,tooltipText:t.toggleTokenApprovalAmount,children:r.jsx(al,{})}),e&&r.jsx(je,{label:t.batchTransactionsLabel,tooltipText:t.batchTransactionsTooltip,children:r.jsx(sl,{})}),r.jsx(rl,{})]})},Vv=()=>{const{chainId:e}=f(),[t]=N(),n=z("easySwapperV2",e),a=new T(t.value||"0").shiftedBy(t.decimals).toFixed(0,T.ROUND_UP);return u.useMemo(()=>({address:t.address,abi:D.erc20Abi,functionName:"approve",chainId:e,args:[n,a]}),[e,a,t.address,n])},qv=()=>{const{chainId:e,address:t}=f(),{data:{isCustomCooldownDepositAllowed:n}={}}=Lt({address:t,chainId:e});return n!==!1},er=(e,t)=>e.length?e.find(({tokenAddress:a})=>Object.values(qc[t]??{}).some(s=>H(s.address,a)))?.tokenAddress??e[0]?.tokenAddress:null,wt=()=>{const[e]=N(),{chainId:t,address:n}=f(),a=mt({address:n,chainId:t}),s=qv();return u.useMemo(()=>{const o=a.filter(({isDeposit:c})=>c);if(wn(e.symbol,t)){const c=o.find(({tokenName:d})=>Ze[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:er(o,t)??e.address}}const l=o.find(({tokenAddress:c})=>H(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:er(o,t)??e.address}},[t,s,a,e.address,e.symbol])},Wt=()=>{const[e]=N(),{vaultDepositTokenAddress:t}=wt();return!H(e.address,t)},os=()=>{const{defaultSwapTransactionSlippage:e}=G(),[{slippage:t}]=Q(),n=Wt();return t==="auto"?n?e:mn:t},Ln=()=>{const{account:e=I}=M(),{chainId:t}=f(),[n]=N(),{debouncedSendTokenValue:a}=Rn(),{vaultDepositTokenAddress:s}=wt(),o=Wt();return Fv({sourceAddress:n.address,destinationAddress:s,amount:new T(a).shiftedBy(n.decimals).toFixed(0),chainId:t,slippage:"33",walletAddress:e},{enabled:o&&!!a,refetchInterval:wa})},ol=()=>{const{defaultNoSwapMinDepositAmountGap:e}=G(),{address:t,chainId:n}=f(),[a]=N(),[s]=O(),{data:{entryFee:o}={}}=oe({address:t,chainId:n}),i=De(Number(o??"0"),me),[{slippage:l}]=Q(),c=l==="auto",d=os(),p=Wt(),m=+de({address:a.address,chainId:n}),y=+pe({address:t,chainId:n});if(p){const b=Number(a.value||0)*m*(1-i/100)/y;return new T(b).shiftedBy(s.decimals).times(1-d/100).toFixed(0)}const w=c?e:d;return new T(s.value||"0").shiftedBy(s.decimals).times(1-w/100).toFixed(0)},Yv=({isDepositWithSwapTransaction:e,sendTokenAddress:t,sendTokenValue:n})=>{const{chainId:a}=f(),s=+de({address:t,chainId:a}),{vaultDepositTokenAddress:o}=wt(),{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 T(c/l).shiftedBy(i).times(1-mr/100).toFixed(0):"0"},il=()=>{const[e]=N(),{debouncedSendTokenValue:t}=Rn(),n=Wt(),a=Yv({isDepositWithSwapTransaction:n,sendTokenAddress:e.address,sendTokenValue:t});return n?a:new T(t||"0").shiftedBy(e.decimals).toFixed(0)},ua=(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}},Kv=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[Hi(t)],w=ws({vaultAddress:i,sendTokenAddress:s,sendTokenAmount:p,minVaultTokensReceivedAmount:d,vaultDepositTokenAddress:l,swapData:y?.rawTransaction.data??"0x",routerKey:y?.routerKey,swapDestinationAmount:c,swapSlippage:a});return ua(o,e,w)}let m=[];for(const y of t){const w=ws({vaultAddress:i,sendTokenAddress:s,sendTokenAmount:p,minVaultTokensReceivedAmount:d,vaultDepositTokenAddress:l,swapData:y?.rawTransaction.data??"0x",routerKey:y?.routerKey,swapDestinationAmount:c,swapSlippage:a});m=ua(o,e,w);const{error:g}=await n(...m);if(!g)return m}return console.warn("[Deposit] No valid routers found for swap"),m},Qv=e=>e==="zapNativeDeposit"||e==="zapNativeDepositWithCustomCooldown"||e==="zapDeposit"||e==="zapDepositWithCustomCooldown",Xv=({depositMethod:e,vaultDepositTokenAddress:t})=>{const{address:n}=f(),[a]=N(),s=a.value||"0",o=new T(s).shiftedBy(a.decimals).toFixed(0),i=il(),{data:l}=Ln(),c=ol(),d=os();return u.useCallback(async p=>{const m={vaultAddress:n,vaultDepositTokenAddress:t,vaultDepositTokenAmount:i,minVaultTokensReceivedAmount:c,sendTokenAmount:o},y=Qv(e);try{return y?Kv({baseArgs:m,swapQuotes:l,estimate:p,depositSlippage:d,sendTokenAddress:a.address,depositMethod:e}):ua(e,m)}catch(w){return console.error(w),[]}},[n,e,d,c,a.address,o,l,t,i])},ll=()=>{const{chainId:e}=f(),[t]=O(),n=re()[1],{depositMethod:a,vaultDepositTokenAddress:s}=wt(),o=Xv({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}},Zv=e=>{const[,t]=K(),[,n]=re(),[,a]=N(),[,s]=Q(),o=Ao();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])},Jv=({address:e,abi:t,functionName:n,args:a,value:s})=>({to:e,data:D.encodeFunctionData({abi:t,functionName:n,args:a}),value:s}),ex=({onSettled:e})=>{const{sendCalls:t}=E.useSendCalls({mutation:{onSettled:e}});return u.useCallback(async n=>t({calls:n.map(Jv),forceAtomic:!0}),[t])},tx="deposit",nx=()=>{const{chainId:e,depositMethod:t,buildDepositTransactionArgs:n,addPendingTransaction:a}=ll(),s=Vv(),o=Zv(tx),i=ex({onSettled:o});return u.useCallback(async()=>{a();const l=await n(),c={address:z("easySwapperV2",e),abi:fe,functionName:t,args:l};return i([s,c])},[a,e,t,n,i,s])},ax="deposit",sx=()=>{const{depositMethod:e,buildDepositTransactionArgs:t,addPendingTransaction:n}=ll(),a=Ye(ax),{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])},rx=()=>{const{account:e=I}=M(),{chainId:t}=f(),[n]=N(),a=z("easySwapperV2",t),s=new T(n.value||"0").shiftedBy(n.decimals).toFixed(0,T.ROUND_UP),{canSpend:o}=nl({tokenAddress:n.address,ownerAddress:e,spenderAddress:a,rawAmountToSpend:s,chainId:t,skip:wn(n.symbol,t)||s==="0"});return{approve:tl({token:n,rawTokenAmount:s,spenderAddress:a}),canSpend:o}},ox=({address:e,chainId:t})=>{const[n]=N(),a=Ve(),{vaultDepositTokenAddress:s}=wt(),o=il(),i=!!(o&&+o>0),l=E.useReadContract({address:z("easySwapperV2",t),abi:fe,functionName:"depositQuote",args:[e,s,BigInt(o??0)],chainId:t,query:{enabled:a&&i&&!!n.address&&!!o,refetchInterval:We}});return Wa(l),l},ix=()=>{const{address:e,chainId:t}=f(),n=Ve(),[a]=N(),[s,o]=O(),[,i]=Q(),{isDebouncing:l,debouncedSendTokenValue:c}=Rn(),{isFetching:d}=Ln(),{data:p,isFetching:m}=ox({address:e,chainId:t}),y=d||m||l;u.useEffect(()=>{if(!n||y)return;const w=p?new T(p.toString()).shiftedBy(-s.decimals).toFixed(s.decimals):"";o({value:w})},[p,s.decimals,a.address,o,n,y,c]),u.useEffect(()=>{n&&o({isLoading:y})},[n,y,o]),u.useEffect(()=>{n&&(!a.value||a.value==="0")&&(o({value:"0"}),i({minSlippage:0}))},[o,i,a.value,n])},cl=(e={})=>{const{address:t,chainId:n}=f(),{data:a}=oe({address:t,chainId:n}),[s]=N(),[o]=O(),i=de({address:s.address,chainId:n}),l=pe({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 T(d).times(i??"0").times(1-c/100),m=Number(o.value||"0"),y=new T(m).times(l??"0");return p.isZero()||y.isZero()?0:p.decimalPlaces(_t(d)).comparedTo(y.decimalPlaces(_t(m)))&&p.isGreaterThan(0)?y.dividedBy(p).minus(1).times(100).decimalPlaces(2,T.ROUND_DOWN).toNumber():0},[c,o.value,s.value,i,l])},lx=()=>{const e=Ve(),[t]=O(),[,n]=Q(),{isDebouncing:a}=Rn({extendedDebounceTime:!0}),s=os(),o=cl({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 cx(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 dx=cx;function px(e){return e!==e}var ux=px;function mx(e,t,n){for(var a=n-1,s=e.length;++a<s;)if(e[a]===t)return a;return-1}var yx=mx,wx=dx,hx=ux,gx=yx;function bx(e,t,n){return t===t?gx(e,t,n):wx(e,hx,n)}var Tx=bx,fx=Tx;function vx(e,t){var n=e==null?0:e.length;return!!n&&fx(e,t,0)>-1}var xx=vx;function Ax(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 Sx=Ax;function Cx(){}var Ex=Cx,qn=Ho,Ix=Ex,_x=La,Dx=1/0,Nx=qn&&1/_x(new qn([,-0]))[1]==Dx?function(e){return new qn(e)}:Ix,Ox=Nx,Px=Mo,kx=xx,Rx=Sx,Lx=jo,Mx=Ox,jx=La,Bx=200;function $x(e,t,n){var a=-1,s=kx,o=e.length,i=!0,l=[],c=l;if(n)i=!1,s=Rx;else if(o>=Bx){var d=t?null:Mx(e);if(d)return jx(d);i=!1,s=Lx,c=new Px}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 Fx=$x,Wx=ei,Ux=Fx;function zx(e,t){return e&&e.length?Ux(e,Wx(t)):[]}var Hx=zx;const Gx=Tn(Hx),Mn=()=>{const{address:e,chainId:t,depositParams:n}=f(),{account:a}=M(),s=mt({address:e,chainId:t}),o=Rt(),[{isCustomDepositOptionsDisabled:i}]=Q(),[l]=Do(),c=u.useMemo(()=>Gx([...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}=E.useReadContracts({contracts:c.map(({address:y})=>({address:y,abi:D.erc20Abi,functionName:"balanceOf",args:[a??I],chainId:t})),query:{enabled:p}});return In(m),u.useMemo(()=>{if(!d)return[];const y=[];for(let b=0;b<c.length;b++)y[b]={value:"",address:c[b]?.address??I,symbol:c[b]?.symbol??c[b]?.address??I,balance:m?.[b]?.result?Be((m?.[b]?.result).toString()??"0",c[b]?.decimals??P):0,decimals:c[b]?.decimals??P};const w=y.slice().sort((b,A)=>b.balance&&A.balance?A.balance-b.balance:0),g=w.find(({symbol:b})=>b===n.defaultDepositTokenSymbol);return[...g?[g]:[],...w.filter(({symbol:b})=>b!==n.defaultDepositTokenSymbol),...o||i?[]:[{value:"",address:Ze[t]?.address??I,symbol:Ze[t]?.nativeTokenSymbol??"",decimals:Ze[t]?.decimals??P}]]},[d,o,i,t,c,m,n.defaultDepositTokenSymbol])},Vx=()=>{const e=f(),[t]=Mn(),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])},qx=()=>{const{chainId:e,address:t,deprecated:n}=f(),{data:{isPrivateVault:a}={isPrivateVault:!1}}=oe({address:t,chainId:e}),s=a||n,o=ui({address:t,chainId:e});return{isVaultDepositLocked:s,isAccountWhitelisted:o}},dl=()=>{const{defaultLockTime:e}=G(),{chainId:t,address:n}=f(),{data:{customCooldown:a}={}}=Lt({address:n,chainId:t}),{depositMethod:s}=wt(),o=a?Et.formatDuration({minutes:Number(a)/60}):e;switch(s){case"depositWithCustomCooldown":case"nativeDepositWithCustomCooldown":case"zapDepositWithCustomCooldown":case"zapNativeDepositWithCustomCooldown":return o;default:return e}},Yx="1",Kx=()=>{const{account:e=I}=M(),{address:t,chainId:n}=f(),[a]=O(),s=pe({address:t,chainId:n}),{minDepositUSD:o}=Va(t,n),{data:i}=Ti({address:t,chainId:n,account:e}),l=i?.balanceInUsdNumber??0,c=s==="0"?Yx:s,d=Math.max(0,o-l),p=new T(a.value||"0").multipliedBy(c);return{requiresMinDeposit:p.isZero()?!1:p.lte(d),requiredMinDepositAmount:te({value:d})}},jn=e=>{const[{action:t,status:n}]=K();return t===e&&(n==="Wallet"||n==="Mining")},pl=e=>{const t=ie(),{onAcceptTermsOfUse:n}=Ka(),{termsOfUseAccepted:a}=G(),{disabled:s,label:o,handleTrade:i}=Zi({trade:e}),{isError:l,isLoading:c}=Ln(),d=jn("deposit");return{handleClick:()=>{if(l){t({type:"MERGE_OVERLAY",payload:{type:$.ERROR_NOTIFICATION,isOpen:!0,meta:{error:Mr}}});return}a?i():t({type:"MERGE_OVERLAY",payload:{type:$.TERMS_OF_USE,isOpen:!0,onConfirm:async y=>{try{y(!0),await n()&&i()}catch{console.error("Failed to verify terms of use acceptance")}finally{y(!1)}}}})},disabled:s||c,label:o,isLoading:d}},Qx=()=>{const{ActionButton:e=q}=R(),t=nx(),{handleClick:n,label:a,disabled:s,isLoading:o}=pl(t);return r.jsx(e,{onClick:n,disabled:s,loading:o,children:a})},Xx=()=>{const{ActionButton:e=q}=R(),t=sx(),{handleClick:n,label:a,disabled:s,isLoading:o}=pl(t);return r.jsx(e,{onClick:n,disabled:s,loading:o,children:a})},Zx=()=>{const e=Wv(),{deprecated:t,symbol:n,maintenance:a,maintenanceDeposits:s}=f(),[o]=N(),i=kt(),{isVaultDepositLocked:l,isAccountWhitelisted:c}=qx(),{approve:d,canSpend:p}=rx(),{requiresHighSlippageConfirm:m,confirmHighSlippage:y,slippageToBeUsed:w}=Qa(),{requiresMinDeposit:g,requiredMinDepositAmount:b}=Kx();return{requiresMinDeposit:g,requiresWhitelist:l&&!c,requiresApprove:!p,requiresHighSlippageConfirm:m,sendTokenSymbol:o.symbol,poolSymbol:n,requiredMinDepositAmount:b,deprecated:t,approve:d,confirmHighSlippage:y,slippageToBeUsed:w,maintenance:a||s,isBatchContractWritesTrading:e,insufficientBalance:i}},Jx=()=>{const{ActionButton:e=q}=R(),t=x(),{status:n}=E.useConnect(),{onConnect:a}=Ka();return r.jsx(e,{onClick:a,className:"dtw-whitespace-nowrap dtw-text-sm",loading:n==="pending",children:t.connectWallet})},eA=()=>{const{ActionButton:e=q}=R(),{switchNetwork:t}=Se(),{chainId:n}=f(),a=x(),s=()=>{t?.({chainId:n})};return r.jsx(e,{onClick:s,children:a.switchNetwork})},ul=()=>{const{account:e}=M(),{chainId:t}=Se(),n=f();return{isDisconnected:!e,isWrongNetwork:t!==n.chainId}},is=({children:e})=>{const{isDisconnected:t,isWrongNetwork:n}=ul();return t?r.jsx(Jx,{}):n?r.jsx(eA,{}):e},tA=()=>{const e=ts(),t=jn("approve");return{disabled:!e,isLoading:t}},nA=({onApprove:e,symbol:t})=>{const{ActionButton:n=q}=R(),a=x(),{disabled:s,isLoading:o}=tA();return r.jsx(n,{disabled:s,onClick:e,loading:o,children:r.jsxs("span",{children:[a.approve," ",t]})})},aA=({onClick:e,tooltipText:t,disabled:n})=>{const[a,s]=u.useState(!1),o=()=>{e(),s(!0)};return u.useEffect(()=>{if(!a)return;const i=setTimeout(()=>{s(!1)},wa);return()=>clearTimeout(i)},[a]),{disabled:n||a,tooltipText:t,handleClick:o}},ml=e=>{const{disabled:t,tooltipText:n,handleClick:a}=aA(e);return r.jsx(Ha,{text:n,children:r.jsx(pn,{Icon:Ae.ArrowPathIcon,onClick:a,disabled:t,containerClassName:"!dtw-self-center",className:C("dtw-h-[var(--panel-input-token-icon-size,var(--panel-icon-size))] dtw-w-[var(--panel-input-token-icon-size,var(--panel-icon-size))] sm:dtw-w-[var(--panel-input-token-icon-size-sm,var(--panel-icon-size-sm))] sm:dtw-h-[var(--panel-input-token-icon-size-sm,var(--panel-icon-size-sm))]",{"dtw-opacity-50":t})})})},sA=()=>{const{refetch:e,isFetched:t}=Ln(),{invalidateTradingQueries:n}=Dn();return{handleSwapQuoteReload:()=>{n(),e()},disabled:!t}},rA=()=>{const e=x(),{handleSwapQuoteReload:t,disabled:n}=sA();return r.jsx(ml,{tooltipText:e.refreshSwapQuoteTooltip,onClick:t,disabled:n})},oA=()=>{const{refetch:e,isFetched:t}=yt(),{invalidateTradingQueries:n}=Dn();return{handleSwapQuoteReload:()=>{n(),e()},disabled:!t}},iA=()=>{const e=x(),{handleSwapQuoteReload:t,disabled:n}=oA();return r.jsx(ml,{tooltipText:e.refreshSwapQuoteTooltip,onClick:t,disabled:n})},lA=()=>Ve()?r.jsx(rA,{}):r.jsx(iA,{}),yl=({children:e,...t})=>{const{ActionButton:n=q}=R(),{openLimitSellOverlay:a,displayLimitSellOverlay:s}=Qf();return s?r.jsx(n,{...t,onClick:a,children:e}):null},wl=({children:e,...t})=>{const{ActionButton:n=q}=R(),{onOpenNotificationsSettings:a}=Ka();return a?r.jsx(n,{...t,onClick:a,children:e}):null},cA=()=>{const{address:e,symbol:t}=f();return{handleAddToWallet:u.useCallback(()=>{ad({address:e,symbol:t,decimals:P,image:Ya(t)})},[e,t])}},dA=()=>{const e=x(),{handleAddToWallet:t}=cA();return r.jsx("button",{type:"button",onClick:t,className:"dtw-underline dtw-text-[color:var(--panel-accent-from-color)] hover:dtw-opacity-80",children:e.addToWallet})},pA=()=>{const e=x(),t=ie(),{symbol:n}=f(),[a]=N(),[s]=O(),[,o]=No(),{isCompleteWithdrawStep:i}=Qe();return{handleClick:u.useCallback(()=>{o({type:"withdraw",sendTokenSymbol:n,receiveTokenSymbol:s.symbol,...!i&&{sendTokenAmount:a.value},...s.value&&{receiveTokenAmount:s.value}}),t({type:"MERGE_OVERLAY",payload:{type:$.WITHDRAW_STEPPER,isOpen:!0}})},[t,o,n,a.value,s.symbol,s.value,i]),label:i?e.swapAction:e.sellNow}},hl=()=>{const{ActionButton:e=q}=R(),{handleClick:t,label:n}=pA();return r.jsx(e,{onClick:t,children:n})},uA=()=>{const{ActionButton:e=q}=R(),t=x(),n=Xa("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:b,insufficientBalance:A}=Zx();return a?r.jsx(e,{disabled:!0,children:t.minimumPurchase.replace("{value}",s)}):i||g?r.jsx(da,{promptText:c?t.poolIsInactive.replace("{poolSymbol}",d):g?t.poolDepositsAreMaintenance.replace("{poolSymbol}",d):t.poolIsPrivate,children:n}):A?r.jsx(e,{disabled:!0,children:t.insufficientBalance}):l?r.jsx(e,{onClick:w,children:t.confirmMaxSlippage.replace("{slippagePercentage}",`${Math.abs(m)}`)}):o?b?r.jsx(Qx,{}):r.jsx(nA,{symbol:p,onApprove:y}):r.jsx(Xx,{})},mA=()=>{const[e,t]=N(),{chainId:n}=f(),a=de({address:e.address,chainId:n}),s=we({symbol:e.symbol,address:e.address});return{...e,price:a,balance:s,updater:t}},yA=()=>{const{address:e,chainId:t}=f(),[n]=O(),a=pe({address:e,chainId:t});return{...n,price:a}},wA=()=>{const e=mA(),t=yA(),n=He(),a=cl(),[{minSlippage:s}]=Q();return{autoFocus:!1,sendToken:e,receiveToken:t,tradingPriceDiff:a,minSlippage:s,onInputFocus:()=>{n?.(X.INVEST_INPUT_FOCUS,{symbol:e.symbol,address:Da(e.address)})},onInputChange:l=>{e.updater({value:l})}}},un=({children:e})=>r.jsx("table",{className:"dtw-min-w-full dtw-border-separate",style:{borderSpacing:"0px 0.25rem"},children:r.jsx("tbody",{children:e})}),gl=({children:e})=>{const t=x();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(Ae.ChevronDownIcon,{className:C("dtw-text-[color:var(--panel-icon-color,var(--panel-content-color))] !dtw-h-[var(--panel-input-token-icon-size,var(--panel-icon-size))] !dtw-w-[var(--panel-input-token-icon-size,var(--panel-icon-size))] sm:dtw-w-[var(--panel-input-token-icon-size-sm,var(--panel-icon-size-sm))] sm:dtw-h-[var(--panel-input-token-icon-size-sm,var(--panel-icon-size-sm))]",{"dtw-rotate-180 dtw-transform":n})})]}),r.jsx(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})})]})})},hA=e=>{const{address:t,chainId:n}=f(),[{value:a}]=N(),s=yi({vaultTokensAmount:a,address:t,chainId:n}),o=e?s.length:Tr,i=s.find(({tokenAddress:p})=>to.some(m=>H(p,m))),l=!!i&&i.amount!=="0",{firstPart:c,secondPart:d}=oo(s,o);return{visibleAssets:c,hiddenAssets:d,showUnitWithdrawalTip:l,unitSymbol:i?.tokenName,unitAddress:i?.tokenAddress??I}},gA=({symbol:e})=>{const t=x();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($e,{symbols:[e],size:"xs"})," ",e]})},bl=({className:e,showFraction:t=!0,iconSize:n,showAllAsset:a=!1})=>{const{visibleAssets:s,hiddenAssets:o,showUnitWithdrawalTip:i,unitSymbol:l,unitAddress:c}=hA(a),d=u.useCallback(({fraction:p,fractionUsd:m,tokenName:y,asset:w,tokenAddress:g})=>{const b=ho(g);return r.jsxs("tr",{children:[r.jsxs("td",{style:{width:150,maxWidth:150},children:[r.jsx($t,{symbol:y,iconSymbols:w.iconSymbols,symbolClasses:"dtw-text-xs dtw-font-bold",size:n}),b&&r.jsx(gA,{symbol:go(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:C("dtw-text-sm dtw-font-light",e),children:s.length>0?r.jsxs(r.Fragment,{children:[r.jsx(un,{children:s.map(d)}),o.length>0&&r.jsx(gl,{children:r.jsx(un,{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:ud(c),target:"_blank",rel:"noreferrer",children:["Flat Money ",r.jsx(se.ArrowTopRightOnSquareIcon,{className:"dtw-w-3"})]})]})]}):r.jsx(Bi,{})})},bA=({symbol:e})=>{const t=at(),n=ie(),{standalone:a}=G(),s=t.some(p=>p.symbol===e),o=e==="all",i=Co(),l=s&&t.length===1;return{isAllSymbol:o,onClick:()=>{i?.({isOpen:!0,entity:s?"pool":"token"}),a&&n({type:"MERGE_OVERLAY",payload:{type:s?$.POOL_SELECT:$.TOKEN_SELECT,isOpen:!0}})},disabled:l,hideTokenIcon:a&&s}},TA=({symbol:e})=>{const{isAllSymbol:t,onClick:n,disabled:a,hideTokenIcon:s}=bA({symbol:e}),o=x();return r.jsxs("button",{className:C("dtw-flex dtw-items-center dtw-gap-1 dtw-rounded-[var(--panel-input-button-radius,var(--panel-radius))] dtw-border dtw-border-[var(--panel-input-button-border-color,var(--panel-accent-to-color))] !dtw-bg-[var(--panel-input-button-bg,var(--panel-secondary-color))] dtw-px-[var(--panel-input-button-px)] dtw-py-[var(--panel-input-button-py)] hover:dtw-opacity-[var(--panel-action-hover-opacity)] dtw-opacity-[var(--panel-action-opacity)]",{"dtw-pr-2 dtw-pointer-events-none":a}),onClick:n,disabled:a,children:[r.jsx($t,{symbol:e,iconSymbols:s?[]:[e],symbolClasses:"dtw-font-[var(--panel-input-token-font-weight,var(--panel-font-weight-medium))] dtw-text-[length:var(--panel-input-token-font-size,var(--panel-font-size-xs))] dtw-line-height-[length:var(--panel-input-token-line-height,var(--panel-line-height-xs))] sm:dtw-text-[length:var(--panel-input-token-font-size-sm,var(--panel-font-size))] sm:dtw-leading-[var(--panel-input-token-line-height-sm,var(--panel-line-height))] dtw-text-[color:var(--panel-input-button-content-color)]",CustomIcon:t?r.jsx(an.CircleStackIcon,{className:"dtw-h-[var(--panel-input-token-icon-size,var(--panel-icon-size))] dtw-w-[var(--panel-input-token-icon-size,var(--panel-icon-size))] sm:dtw-w-[var(--panel-input-token-icon-size-sm,var(--panel-icon-size-sm))] sm:dtw-h-[var(--panel-input-token-icon-size-sm,var(--panel-icon-size-sm))] dtw-text-[color:var(--panel-icon-color,var(--panel-content-color))]"}):void 0,customTitle:t?o.all:void 0}),!a&&r.jsx(an.ChevronDownIcon,{className:"dtw-flex-shrink-0 dtw-text-[color:var(--panel-icon-color,var(--panel-content-color))] dtw-h-[var(--panel-input-token-icon-size,var(--panel-icon-size))] dtw-w-[var(--panel-input-token-icon-size,var(--panel-icon-size))] sm:dtw-w-[var(--panel-input-token-icon-size-sm,var(--panel-icon-size-sm))] sm:dtw-h-[var(--panel-input-token-icon-size-sm,var(--panel-icon-size-sm))]","aria-hidden":"true"})]})};function fA(e,t){const n=new T(e);return t&&n.gt(0)?n.toFixed(6):e}const vA=e=>{e.currentTarget.blur()},xA=({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 b=te({value:g,maximumFractionDigits:_t(g)});return a?`${b} (${a>0?"+":""}${a}% ${s===F.ERROR?"⚠":""})`:b},[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:fA(t,c),autoFocus:l,onContainerClick:m,onMaxBalanceClick:w,onInputChange:y}},Dt=e=>{const{inputRef:t,usdAmount:n,autoFocus:a,value:s,onContainerClick:o,onMaxBalanceClick:i,onInputChange:l}=xA(e),{label:c,assetSymbol:d,onInputFocus:p,disabled:m=!1,displayMax:y=!1,displayCalculatedValue:w=!1,type:g=F.DEFAULT,isLoading:b=!1,children:A}=e,S=C({"dtw-text-[color:var(--panel-error-content-color)]":g===F.ERROR&&!b,"dtw-text-[color:var(--panel-warning-content-color)]":g===F.WARNING&&!b});return r.jsxs("div",{className:C("dtw-relative dtw-flex dtw-flex-col dtw-gap-[var(--panel-input-group-gap,var(--panel-gap))] dtw-rounded-[var(--panel-input-radius,var(--panel-radius))] dtw-border dtw-bg-[var(--panel-input-bg,var(--panel-neutral-color))] dtw-py-[var(--panel-input-py)] dtw-px-[var(--panel-input-px)] dtw-shadow-md",{"focus-within:dtw-border-[var(--panel-input-focus-border-color)] focus-within:dtw-bg-[var(--panel-input-focus-bg)]":!m,"dtw-border-[var(--panel-input-border-color)]":g===F.DEFAULT||b,"dtw-border-[color:var(--panel-error-content-color)]":g===F.ERROR&&!b,"dtw-border-[color:var(--panel-warning-content-color)]":g===F.WARNING&&!b}),onClick:o,children:[r.jsx("span",{className:C(S,{"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))]":b||g===F.DEFAULT}),children:c}),r.jsxs("div",{className:C("dtw-flex dtw-justify-between dtw-items-center dtw-text-[length:var(--panel-input-label-font-size,var(--panel-font-size-sm))] dtw-leading-[var(--panel-input-label-line-height,var(--panel-line-height-sm))] dtw-font-[var(--panel-input-label-font-weight,var(--panel-font-weight-light))] dtw-gap-x-2"),children:[r.jsx("div",{className:"transparent-scrollbar dtw-flex-1 dtw-overflow-x-auto",children:d==="all"?r.jsx(bl,{iconSize:"sm"}):r.jsx("input",{className:C("dtw-appearance-none dtw-bg-transparent dtw-text-[color:var(--panel-input-content-color,var(--panel-content-color))] placeholder:dtw-text-[color:var(--panel-input-placeholder-color,var(--panel-secondary-content-color))] dtw-text-[length:var(--panel-input-font-size,var(--panel-font-size-sm))] !dtw-leading-[var(--panel-input-line-height,var(--panel-line-height-sm))] dtw-font-[var(--panel-input-font-weight,var(--panel-font-weight-light))] dtw-outline-none focus:dtw-outline-none lg:dtw-text-[length:var(--panel-input-font-size-lg,var(--panel-font-size-lg))] lg:dtw-leading-[var(--panel-input-line-height-lg,var(--panel-line-height-lg))] dtw-w-full",S),ref:t,autoFocus:a,type:"number",min:0,value:s,onChange:l,onFocus:p,placeholder:"0",disabled:m,onWheelCapture:vA})}),r.jsx(TA,{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:b?r.jsx("div",{className:"dtw-h-[18px]",children:r.jsx(Oe,{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:C("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))]":b,"!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))]":!b&&g===F.DEFAULT},S),value:n,disabled:!0})})}),A,y&&r.jsx(cv,{onClick:i})]})]})},AA=()=>{const{stablePrecision:e,defaultPrecision:t}=G(),[{symbol:n,address:a}]=N(),s=we({symbol:n,address:a,watch:!0});return{formattedBalance:mo({balance:s,symbol:n,precision:co(n)?e:t,truncateSymbol:!0}),symbol:n}},Tl=()=>{const{formattedBalance:e,symbol:t}=AA();return r.jsx(ji,{balance:e,symbol:t})},SA=()=>{const{stablePrecision:e,defaultPrecision:t}=G(),[{symbol:n,address:a}]=O(),s=we({symbol:n,address:a,watch:!0});return{formattedBalance:mo({balance:s,symbol:n,precision:co(n)?e:t,truncateSymbol:!0}),symbol:n}},fl=()=>{const{formattedBalance:e,symbol:t}=SA();return r.jsx(ji,{balance:e,symbol:t})},ls=()=>{const e=f(),[t]=Mn(),{isAllAssetsWithdrawOptionDefault:n}=G(),{data:a=[]}=ue(),s=a.length>0,{data:o}=qa(e),i=ye()[1],l=N()[1],c=O()[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:b})=>b===y)??m[0]??sn,g=s?w:o||n?sn:w;l({address:e.address,symbol:e.symbol,decimals:P,value:""}),c({...g,value:"",isLoading:!1})};return m=>{switch(i(m),m){case"deposit":return d();case"withdraw":return p()}}},CA=()=>{Wi(),Vx(),wi(),ue()},et=["deposit","withdraw"],EA=()=>{const[e]=ye(),t=ls();return{handleClick:()=>{const a=et.find(s=>s!==e);a&&t(a)}}},vl=()=>{const{handleClick:e}=EA();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(Ae.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"})})})},IA=()=>{const{sendToken:e,receiveToken:t,autoFocus:n,tradingPriceDiff:a,minSlippage:s,onInputFocus:o,onInputChange:i}=wA(),l=Bt(s??0),c=x();return r.jsxs(r.Fragment,{children:[r.jsx(Dt,{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(Tl,{})}),r.jsxs(Dt,{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(fl,{}),r.jsx(vl,{})]})]})},_A=()=>{const{address:e,chainId:t}=f(),n=vi({address:e,chainId:t}),[a]=O();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}},DA=()=>{const e=x(),[{slippage:t,minSlippage:n,isMaxSlippageLoading:a}]=Q(),s=t==="auto",o=ol(),[i]=O(),{address:l,chainId:c}=f(),{entryFee:d}=On({address:l,chainId:c}),{minDepositUSD:p}=Va(l,c),m=el(),y=dl(),w=Wt(),g=p?te({value:p,minimumFractionDigits:0}):"",b=Bt(s?n??0:t),A=Ei({tradingType:"deposit",slippage:t,minSlippage:n}),S=b===F.DEFAULT?e.depositSlippageWarning:e.highSlippageWarning,_=ze({value:new T(o).shiftedBy(-18).toFixed(),decimals:4});return{projectedEarnings:m,themeType:b,slippageTooltipText:S,isMaxSlippageLoading:a,slippagePlaceholder:A,minReceive:`${_} ${i.symbol.toUpperCase()}`,entryFee:d,entryFeeTooltipText:e.entryFeeExplanation,minDeposit:g,lockTime:y,showMinimumReceivedAmount:w}},cs=({className:e})=>{const{value:t,isLoading:n}=Ui();return r.jsxs("div",{className:C("dtw-flex dtw-h-[var(--panel-icon-secondary-size)] dtw-justify-end dtw-gap-x-2",e),children:[n&&r.jsx(Oe,{className:"dtw-stroke-[color:var(--panel-accent-from-color)] dtw-h-[var(--panel-icon-secondary-size)] dtw-w-[var(--panel-icon-secondary-size)]"}),r.jsx("p",{className:C("dtw-text-right dtw-text-[length:var(--panel-meta-font-size)] dtw-leading-[var(--panel-meta-line-height)] dtw-text-[color:var(--panel-secondary-content-color)] dtw-font-[var(--panel-meta-font-weight,var(--panel-font-weight-light))]",{"dtw-text-[color:var(--panel-loading-content-color)]":n}),children:t})]})},NA=()=>{const e=x(),{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}=DA(),g=a?[{tooltipText:e.projectedYearlyEarningsTooltip,label:e.yearlyEarnings,value:t,emphasised:!0},{tooltipText:e.projectedDailyEarningsTooltip,label:e.dailyEarnings,value:n,emphasised:!0}]:[],b=u.useMemo(()=>{const A=[{tooltipText:e.exchangeRate,label:e.rate,value:r.jsx(cs,{})},{tooltipText:s,label:e.maxSlippage,value:r.jsxs("div",{className:"dtw-flex dtw-gap-1",children:[i&&r.jsx(Oe,{className:"dtw-stroke-[color:var(--panel-accent-from-color)] dtw-h-[var(--panel-icon-secondary-size)] sm:dtw-h-[var(--panel-icon-secondary-size-sm)] dtw-w-[var(--panel-icon-secondary-size)] sm:dtw-w-[var(--panel-icon-secondary-size-sm)]"}),r.jsxs("span",{className:C({"dtw-text-[color:var(--panel-loading-content-color)]":i}),children:[o,"%"]})]})}];return w&&A.push({tooltipText:e.minReceiveAmount,label:e.minReceived,value:l}),A.push({tooltipText:p,label:e.entryFee,value:d}),m&&A.push({tooltipText:e.minDepositUsd,label:e.minDeposit,value:m}),A.push({tooltipText:e.tokensLockTime.replace("{lockTime}",y),label:e.cooldown,value:y}),A},[s,e.maxSlippage,e.entryFee,e.minReceiveAmount,e.minReceived,e.minDepositUsd,e.minDeposit,e.exchangeRate,e.rate,e.tokensLockTime,e.cooldown,i,o,w,p,d,m,l,y]);return r.jsx(Ja,{staticItems:g,collapseItems:b,themeType:c})},OA=({children:e})=>{const{DepositMetaInfo:t,MaxSupplyReachedAlert:n}=R(),{isMaxSupplyCapReached:a,supplyCapInUsd:s}=_A();return r.jsxs(Y.Meta,{children:[a&&!!n&&r.jsx(n,{supplyCapInUsd:s}),r.jsx(NA,{}),t&&r.jsx(t,{}),r.jsx("div",{className:"dtw-sticky dtw-bottom-0 dtw-bg-[var(--panel-meta-action-panel-bg)]",children:e})]})},PA=()=>{ix(),lx()},kA=()=>{PA();const{isGeoBlocked:e,isSanctioned:t}=G(),{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(Y.InputGroup,{children:r.jsx(IA,{})}),s&&r.jsx(s,{}),r.jsx(OA,{children:o?i.map(({Component:l,key:c})=>l&&r.jsx(l,{},c)):r.jsx(r.Fragment,{children:r.jsx(is,{children:r.jsx(uA,{})})})})]})},RA=()=>r.jsx(Y.Panel,{children:r.jsx(kA,{})}),LA=e=>Object.keys($).some(t=>t===e),MA=({children:e})=>{const t=ki();let n=null;return u.Children.forEach(e,a=>{if(u.isValidElement(a)){const s=a.props.type;LA(s)&&t[s]&&t[s].isOpen&&(n=a)}}),n},jA=({type:e})=>{const t=x(),{DepositTermsOfUse:n,ActionButton:a=q}=R(),{handleReject:s,handleConfirm:o,isPending:i}=ce({type:e});return r.jsxs(Y.Overlay,{className:"dtw-justify-between dtw-gap-y-1 dtw-overflow-y-auto theme-scrollbar",children:[r.jsxs("div",{className:"dtw-flex dtw-gap-1 dtw-items-center dtw-text-warning",children:[r.jsx(se.ExclamationCircleIcon,{className:"dtw-h-5 dtw-w-5"}),r.jsx("p",{children:t.termsOfUse})]}),r.jsxs("div",{className:"dtw-flex dtw-flex-col dtw-gap-2",children:[r.jsxs("p",{className:"dtw-self-start dtw-text-sm",children:[t.termOfUseDepositListTitle,":"]}),r.jsxs("ul",{className:"dtw-list-inside dtw-list-disc dtw-flex dtw-flex-col dtw-gap-y-1 dtw-text-sm dtw-text-[color:var(--panel-secondary-content-color)]",children:[r.jsx("li",{children:t.termOfUseDepositAssetSlippage}),r.jsx("li",{children:t.termOfUseDepositBugs}),r.jsx("li",{children:t.termOfUseDepositDowntime}),r.jsx("li",{children:t.termOfUseDepositAuditRisk})]}),n&&r.jsx(n,{})]}),r.jsxs("div",{className:"dtw-flex dtw-flex-col dtw-gap-2 dtw-w-full",children:[r.jsx(a,{highlighted:!1,onClick:s,children:t.back}),r.jsx(a,{onClick:o,disabled:i,loading:i,children:r.jsx("span",{children:i?t.confirmInWallet:t.termOfUseDepositAccept})})]})]})},BA=({type:e})=>{const t=x(),{ActionButton:n=q}=R(),{handleReject:a,handleConfirm:s}=ce({type:e});return r.jsxs(Y.Overlay,{className:"dtw-justify-between dtw-gap-y-1",children:[r.jsxs("div",{className:"dtw-flex dtw-gap-1 dtw-items-center dtw-text-warning",children:[r.jsx(se.ExclamationCircleIcon,{className:"dtw-h-5 dtw-w-5"}),r.jsx("p",{children:t.highSlippage})]}),r.jsx("p",{className:"dtw-text-sm",children:t.responsibleHighSlippage}),r.jsxs("p",{className:"dtw-text-sm dtw-self-start",children:[t.highSlippageListTitle,":"]}),r.jsxs("ul",{className:"dtw-list-inside dtw-list-disc dtw-flex dtw-flex-col dtw-gap-y-1 dtw-text-sm dtw-text-[color:var(--panel-secondary-content-color)] dtw-max-h-28 dtw-overflow-y-auto theme-scrollbar",children:[r.jsx("li",{children:t.termOfUseDepositAssetSlippage}),r.jsx("li",{children:t.termOfUseDepositBugs}),r.jsx("li",{children:t.termOfUseDepositDowntime}),r.jsx("li",{children:t.termOfUseDepositAuditRisk})]}),r.jsxs("div",{className:"dtw-flex dtw-flex-col dtw-gap-2 dtw-w-full",children:[r.jsx(n,{highlighted:!1,onClick:a,children:t.back}),r.jsx(n,{onClick:s,children:t.confirm})]})]})},$A=({token:e,onSelect:t})=>({onClick:()=>{t(e)}}),FA=({token:e,onSelect:t})=>{const{onClick:n}=$A({token:e,onSelect:t});return r.jsxs("div",{className:"dtw-space-y-3 dtw-rounded-xl dtw-py-3 dtw-pl-4 dtw-pr-3",onClick:n,children:[r.jsx($t,{symbol:e.symbol,iconSymbols:[e.symbol],size:"xl",CustomIcon:r.jsx(an.CircleStackIcon,{className:"dtw-h-10 dtw-w-10 group-hover:dtw-opacity-100 dtw-opacity-100 sm:dtw-opacity-50"}),symbolClasses:"dtw-text-sm dtw-font-medium group-hover:dtw-opacity-100 dtw-opacity-100 sm:dtw-opacity-80"}),r.jsx(bl,{className:"dtw-pt-2",showFraction:!1,showAllAsset:!0})]})},WA=({token:e,onSelect:t,isActive:n,onClose:a})=>{const s=we({symbol:e.symbol,address:e.address}),{defaultPrecision:o}=G();return{formattedBalance:new T.BigNumber(s).toFixed(o,T.BigNumber.ROUND_DOWN),onClick:()=>{if(n){a();return}t(e)}}},xl=({token:e,onSelect:t,onClose:n,isActive:a=!1})=>{const{onClick:s,formattedBalance:o}=WA({token:e,onSelect:t,onClose:n,isActive:a});return r.jsxs("div",{className:"dtw-flex dtw-items-center dtw-rounded-xl dtw-gap-x-2 dtw-py-3 dtw-pl-4 dtw-pr-3",onClick:s,children:[r.jsx($t,{symbol:e.symbol,iconSymbols:[e.symbol],size:"xl",symbolClasses:C("group-hover:dtw-opacity-100 dtw-text-sm dtw-font-medium",{"dtw-opacity-100 sm:dtw-opacity-80":!a,"dtw-opacity-100":a}),className:C("group-hover:dtw-opacity-100",{"dtw-opacity-100 sm:dtw-opacity-50":!a,"dtw-opacity-100":a})}),r.jsxs("div",{className:"dtw-flex dtw-flex-col dtw-self-end dtw-text-sm dtw-font-light dtw-text-[color:var(--panel-balance-content-color)]",children:[a&&r.jsx(an.CheckIcon,{className:"dtw-w-4 dtw-self-end dtw-text-themeGreen"}),r.jsxs("div",{children:[r.jsx("span",{className:"dtw-mr-1 dtw-text-xs",children:e.symbol}),o]})]})]})},UA=[],zA=()=>{const e=f(),[t]=ye(),[n,a]=N(),[s,o]=O(),{data:i}=qa(e),l=Mn(),c=i?UA: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])},HA=({searchQuery:e,type:t})=>{const[{isMultiAssetWithdrawalEnabled:n}]=Q(),{isCompleteWithdrawStep:a}=Qe(),s=Rt(),[o]=ye(),{handleReject:i}=ce({type:t}),{tokens:l,updater:c,activeTokens:d}=zA(),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:b})=>{c({address:y,value:w,decimals:g,symbol:b}),i()},[c,i]);return{tokenList:p,activeTokens:d,onSelect:m,onClose:i,showMultiAssetWithdrawalOption:n&&o==="withdraw"&&!s&&!a}},GA=({type:e,searchQuery:t})=>{const n=x(),{tokenList:a,activeTokens:s,onSelect:o,showMultiAssetWithdrawalOption:i,onClose:l}=HA({type:e,searchQuery:t});return r.jsxs(Y.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(xl,{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(FA,{token:sn,onSelect:o})})]})]})},VA=({children:e,chainId:t})=>{const{chainConfig:n}=G(),{Image:a=$i}=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]})},ma=(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},qA=e=>(t,n)=>ma(n,e).balanceInUsdNumber-ma(t,e).balanceInUsdNumber,YA=({searchQuery:e,type:t})=>{const n=bi(),a=at(),s=f(),{handleReject:o}=ce({type:t}),[i]=ye(),l=N()[1],c=O()[1],d=Io()[1],p=u.useCallback(({address:y,value:w,decimals:g,symbol:b})=>{(i==="deposit"?c:l)({address:y,value:w,decimals:g,symbol:b}),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,...ma(w,n),isActive:s.address===w.address})).filter(({symbol:w})=>e?w.toLowerCase().includes(e):!0).slice().sort(qA(n))]})),[e,n,a,s]),onClose:o,onSelect:p}},KA=({type:e,searchQuery:t})=>{const n=x(),{poolList:a,onClose:s,onSelect:o}=YA({type:e,searchQuery:t});return r.jsxs(Y.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(VA,{chainId:i,children:l.map(({isActive:c,symbol:d,address:p})=>r.jsx("div",{className:C("dtw-rounded-xl dtw-drop-shadow-md even:odd:dtw-bg-[color:var(--panel-popup-list-item-bg-even)] odd:dtw-bg-[color:var(--panel-popup-list-item-bg-odd)] dtw-group",{"dtw-cursor-pointer ":!c}),children:r.jsx(xl,{token:{symbol:d,address:p,value:"",decimals:P},onSelect:o,isActive:c,onClose:s})},`${p}_${d}`))},i))})]})},QA=({type:e})=>{const{address:t,symbol:n,chainId:a}=f(),[{link:s,sendTokens:o},i]=K(),{handleReject:l}=ce({type:e}),c=o?.[0],d=yo(s),p=pe({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})}},XA=e=>{const t=x(),{link:n,onClose:a,vaultSymbol:s,paidToken:o,txHash:i,vaultTokenPrice:l}=QA(e),{ActionButton:c=q}=R(),d=Di();return r.jsxs(Y.Overlay,{className:"dtw-justify-between dtw-gap-y-4",noPadding:!0,children:[r.jsxs("div",{className:"dtw-flex dtw-flex-col dtw-items-center dtw-justify-center dtw-gap-3 dtw-pt-1 dtw-px-2 dtw-w-full",children:[r.jsxs("div",{className:"dtw-flex dtw-flex-col dtw-items-center dtw-text-[color:var(--panel-success-content-color)] dtw-mb-2",children:[r.jsx(Ae.CheckIcon,{className:"dtw-h-16 dtw-w-16 lg:dtw-h-24 lg:dtw-w-24 dtw-shrink-0"}),"Success"]}),r.jsx(Le,{}),r.jsxs("div",{className:"dtw-flex dtw-items-center dtw-justify-between dtw-gap-2 dtw-w-full",children:[r.jsx("p",{children:t.orderingLabel}),r.jsxs("div",{className:"dtw-flex dtw-items-center dtw-gap-2 dtw-text-[color:var(--panel-secondary-content-color)]",children:[r.jsx("span",{children:s}),r.jsx(dA,{})]})]}),r.jsx(Le,{}),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?ze({value:+o.value,decimals:4}):null," ",o.symbol]})]}),r.jsx(Le,{})]}),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(Le,{}),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(qe,{link:n,children:i??t.explorer})]})]})]}),r.jsxs("div",{className:"dtw-flex dtw-flex-col dtw-gap-2 dtw-w-full",children:[d?r.jsx(yl,{children:t.openLimitOrderAfterBuySwitchLabel}):r.jsx(wl,{children:t.openNotificationsSettingsLabel}),r.jsx(c,{highlighted:!1,onClick:a,children:t.done})]})]})},ZA=()=>{const e=x(),{LogoSpinner:t=Oe}=R(),[{link:n}]=K();return r.jsxs("div",{className:"dtw-flex dtw-flex-col dtw-items-center dtw-justify-center dtw-gap-2 dtw-pt-1 dtw-px-4 dtw-w-full dtw-h-full md:dtw-w-1/2 md:dtw-h-1/2",children:[r.jsx(t,{className:"dtw-h-16 dtw-w-16 lg:dtw-h-24 lg:dtw-w-24 dtw-shrink-0"}),e.miningTx,n&&r.jsx(qe,{link:n,className:"dtw-text-sm",iconClassName:"dtw-w-4 dtw-h-4",children:e.explorer})]})},JA=({onClose:e})=>{const t=x(),{ActionButton:n=q}=R(),[{link:a}]=K();return r.jsxs(r.Fragment,{children:[r.jsxs("div",{className:"dtw-flex dtw-flex-col dtw-items-center dtw-justify-center dtw-gap-2 dtw-pt-1 dtw-px-4 dtw-w-full dtw-h-full md:dtw-w-1/2 md:dtw-h-1/2",children:[r.jsxs("div",{className:"dtw-flex dtw-flex-col dtw-items-center dtw-gap-2 dtw-text-[color:var(--panel-success-content-color)]",children:[r.jsx(Ae.CheckIcon,{className:"dtw-h-16 dtw-w-16 lg:dtw-h-24 lg:dtw-w-24 dtw-shrink-0"}),t.createLimitSellOrder]}),a&&r.jsx(qe,{link:a,className:"dtw-text-sm",iconClassName:"dtw-w-4 dtw-h-4",children:t.explorer})]}),r.jsxs("div",{className:"dtw-flex dtw-flex-col dtw-gap-2 dtw-w-full",children:[r.jsx(wl,{children:t.openNotificationsSettingsLabel}),r.jsx(n,{highlighted:!1,onClick:e,children:t.done})]})]})},eS=({type:e})=>{const[{status:t},n]=K(),{handleReject:a}=ce({type:e}),s=t==="Mining";return{onClose:u.useCallback(()=>{n({isOpen:!1}),a()},[a,n]),isProcessing:s}},tS=e=>{const{onClose:t,isProcessing:n}=eS(e);return r.jsx(Y.Overlay,{className:"dtw-justify-between dtw-gap-y-4",onClose:t,noPadding:!0,children:n?r.jsx(ZA,{}):r.jsx(JA,{onClose:t})})},nS=({type:e})=>{const{statusLabel:t,status:n}=Ri(),[{link:a,action:s},o]=K(),i=n=="Success",{handleReject:l}=ce({type:e}),c=s==="single_withdraw"&&i,d=i&&s==="deposit",p=i&&s&&Ia.includes(s);return{title:t??n,isSuccessTx:i,link:a,onClose:()=>{o({isOpen:!1}),l()},showNextStepTip:c,displaySuccessDepositOverlay:d,displaySuccessWithdrawalOverlay:p,displayLimitOrderTransactionOverlay:s==="create_limit_sell_order",displayWithdrawLimitOrderOverlay:s==="limit_order_withdraw"}},aS=({sendTokens:e})=>{const t=x(),[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($e,{size:"sm",symbols:[n.symbol]}),r.jsx("span",{children:n.symbol})]}):null},sS=({receiveTokens:e})=>{const t=x(),[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($e,{size:"sm",symbols:[n.symbol]})," ",n.symbol]})]}):null},rS=({sendTokens:e,receiveTokens:t,action:n})=>{const a=x(),[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($e,{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($e,{size:"sm",symbols:[o.symbol]})," ",o.symbol]}):r.jsx(r.Fragment,{children:n==="multi_withdraw"?a.multiAssetFractions:a.swappableAssets})})]}):null},oS=()=>{const e=x(),[{action:t,receiveTokens:n,sendTokens:a}]=K();return t==="approve"?r.jsx(aS,{sendTokens:a}):t==="swap"?r.jsx(sS,{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(rS,{action:t,sendTokens:a,receiveTokens:n})},iS=({type:e})=>{const[,t]=K(),{handleReject:n}=ce({type:e}),[{link:a,status:s}]=K(),o=s=="Success";return{onClose:u.useCallback(()=>{t({isOpen:!1}),n()},[n,t]),link:a,isSuccessTx:o}},lS=e=>{const t=x(),{ActionButton:n=q}=R(),{onClose:a,link:s,isSuccessTx:o}=iS(e);return o?r.jsxs(Y.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(Ae.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(qe,{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},cS=({type:e})=>{const{address:t,symbol:n}=f(),[{link:a,receiveTokens:s},o]=K(),{handleReject:i}=ce({type:e}),l=s?.[0],c=yo(a);return{onClose:u.useCallback(()=>{o({isOpen:!1,status:"None"}),i()},[o,i]),link:a,vaultAddress:t,vaultSymbol:n,receivedToken:l,txHash:c}},dS=e=>{const t=x(),{link:n,onClose:a,vaultSymbol:s,receivedToken:o,txHash:i}=cS(e),{ActionButton:l=q}=R();return r.jsxs(Y.Overlay,{className:"dtw-justify-between dtw-gap-y-4",noPadding:!0,children:[r.jsxs("div",{className:"dtw-flex dtw-flex-col dtw-items-center dtw-justify-center dtw-gap-3 dtw-pt-1 dtw-px-2 dtw-w-full",children:[r.jsxs("div",{className:"dtw-flex dtw-flex-col dtw-items-center dtw-text-[color:var(--panel-success-content-color)] dtw-mb-2",children:[r.jsx(Ae.CheckIcon,{className:"dtw-h-16 dtw-w-16 lg:dtw-h-24 lg:dtw-w-24 dtw-shrink-0"}),"Success"]}),r.jsx(Le,{}),r.jsxs("div",{className:"dtw-flex dtw-items-center dtw-justify-between dtw-gap-2 dtw-w-full",children:[r.jsx("p",{children:t.soldLabel}),r.jsx("div",{className:"dtw-text-[color:var(--panel-secondary-content-color)]",children:s})]}),o&&r.jsxs(r.Fragment,{children:[r.jsx(Le,{}),r.jsxs("div",{className:"dtw-flex dtw-items-center dtw-justify-between dtw-gap-2 dtw-w-full",children:[r.jsx("p",{children:t.receivedLabel}),r.jsx("div",{className:"dtw-text-[color:var(--panel-secondary-content-color)]",children:o.symbol})]})]}),n&&r.jsxs(r.Fragment,{children:[r.jsx(Le,{}),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(qe,{link:n,children:i??t.explorer})]})]})]}),r.jsx(l,{highlighted:!1,onClick:a,children:t.done})]})},pS=({type:e})=>{const{link:t,title:n,onClose:a,isSuccessTx:s,showNextStepTip:o,displaySuccessDepositOverlay:i,displaySuccessWithdrawalOverlay:l,displayLimitOrderTransactionOverlay:c,displayWithdrawLimitOrderOverlay:d}=nS({type:e}),{LogoSpinner:p=Oe}=R(),m=x();return c?r.jsx(tS,{type:e}):i?r.jsx(XA,{type:e}):l?r.jsx(dS,{type:e}):d?r.jsx(lS,{type:e}):r.jsxs(Y.Notification,{onClose:a,children:[r.jsxs("div",{className:"dtw-flex dtw-items-center dtw-gap-1.5",children:[r.jsx("span",{className:"dtw-font-semibold dtw-drop-shadow-md",children:n}),s?r.jsx(se.CheckCircleIcon,{className:"dtw-h-6 dtw-w-6 dtw-text-[color:var(--panel-success-content-color)]"}):r.jsx(p,{className:"dtw-h-5 dtw-w-5 "})]}),r.jsx("div",{className:"dtw-font-light dtw-text-sm dtw-max-h-16 dtw-overflow-y-auto theme-scrollbar dtw-break-all",children:r.jsx(oS,{})}),t&&r.jsx(qe,{link:t,className:"dtw-text-sm",iconClassName:"dtw-w-4 dtw-h-4",children:m.explorer}),o&&r.jsx("p",{className:"dtw-text-xs",children:m.proceedWithNextStep})]})},uS=fe.filter(({type:e})=>e==="error").map(({name:e})=>e),mS=({type:e})=>{const{handleReject:t,meta:n}=ce({type:e});return{handleReject:t,error:po({errorMessage:n?.error,abiErrors:uS})}},yS=e=>{const{handleReject:t,error:n}=mS(e);return n?r.jsxs(Y.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},wS=["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)]"],hS=["!dtw-text-[color:var(--limit-order-action-accent-button-color,var(--limit-order-accent-content-color))]","dtw-bg-gradient-to-r","dtw-from-[var(--limit-order-action-accent-button-bg-from,var(--limit-order-accent-from-color))]","dtw-to-[var(--limit-order-action-accent-button-bg-to,var(--limit-order-accent-to-color))]","dtw-border-[color:var(--limit-order-action-accent-button-border-color)]","dtw-border-[length:var(--limit-order-action-accent-button-border-width)]","hover:enabled:dtw-from-[var(--limit-order-action-accent-button-hover-bg-from,var(--limit-order-accent-hover-from-color))]","hover:enabled:dtw-to-[var(--limit-order-action-accent-button-hover-bg-to,var(--limit-order-accent-hover-to-color))]"],Ut=({children:e,onClick:t,highlighted:n=!0,disabled:a=!1,className:s,type:o,loading:i=!1})=>r.jsxs("button",{className:C("dtw-rounded-[var(--limit-order-input-button-radius,var(--limit-order-radius))]","dtw-font-medium","dtw-border","dtw-transition-border","dtw-duration-500","dtw-ease-in-out","disabled:dtw-opacity-50","dtw-py-2","dtw-px-5","dtw-w-full",{[hS.join(" ")]:n,[wS.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(Oe,{className:"dtw-h-4 dtw-w-4 dtw-stroke-[var(--limit-order-accent-content-color)]"}),e]}),Al={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."},Sl=u.createContext(Al),Cl=({children:e,config:t})=>{const n=u.useMemo(()=>({...Al,...t}),[t]);return r.jsx(Sl.Provider,{value:n,children:e})},he=()=>{const e=u.useContext(Sl);if(!e)throw new Error("TranslationContext is used out of Provider");return e},gS=({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})]})},bS=100,TS=3,fS=({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>TS)return;const p=Number(d);!isNaN(p)&&p<=bS&&(s(d),t?.(d))}}},vS=e=>{const{disabled:t,placeholder:n,suffix:a="%",postfix:s}=e,{inputRef:o,autoFocus:i,value:l,onContainerClick:c,onInputChange:d}=fS(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})]})})},xS=7,ya=4,tr=e=>{if(!e)return"";const[t="",n]=e.replace(/,/g,"").split("."),a=n&&n.length>ya?n.slice(0,ya):n,s=t.replace(/\B(?=(\d{3})+(?!\d))/g,",");return a!==void 0?`${s}.${a}`:s},AS=({inputValue:e="",onInputChange:t,autoFocus:n=!1})=>{const[a,s]=u.useState(tr(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<=xS&&m.length<=ya&&/^\d*(\.\d*)?$/.test(d)&&(s(tr(d)),t(d))}}},nr=e=>{const{disabled:t,placeholder:n,percentage:a,suffix:s}=e,{inputRef:o,autoFocus:i,value:l,onContainerClick:c,onInputChange:d}=AS(e);return r.jsx("div",{className:"dtw-flex dtw-flex-col dtw-gap-[var(--limit-order-input-group-gap,var(--limit-order-gap))] dtw-border-[var(--limit-order-input-border-color)] dtw-rounded-[var(--limit-order-input-radius,var(--limit-order-radius))] dtw-border dtw-bg-[var(--limit-order-input-bg,var(--limit-order-neutral-color))] dtw-py-[var(--limit-order-input-py)] dtw-px-[var(--limit-order-input-px)] focus-within:dtw-border-[var(--limit-order-input-focus-border-color)] focus-within:dtw-bg-[var(--limit-order-input-focus-bg)] dtw-shadow-md",onClick:c,children:r.jsxs("div",{className:"transparent-scrollbar dtw-flex dtw-items-center dtw-gap-1 dtw-text-[color:var(--limit-order-input-content-color,var(--limit-order-secondary-content-color))]",children:[r.jsx("span",{className:"dtw-text-[length:var(--limit-order-input-font-size,var(--limit-order-font-size-sm))] dtw-leading-[var(--limit-order-input-line-height,var(--limit-order-line-height-sm))] dtw-font-[var(--limit-order-input-font-weight,var(--limit-order-font-weight-light))] dtw-outline-none focus:dtw-outline-none lg:dtw-text-[length:var(--limit-order-input-font-size-lg,var(--limit-order-font-size-lg))] lg:dtw-leading-[var(--limit-order-input-line-height-lg,var(--limit-order-line-height-lg))]",children:"$"}),r.jsx("input",{className:"dtw-w-full dtw-appearance-none dtw-bg-transparent placeholder:dtw-text-[color:var(--limit-order-input-placeholder-color,var(--limit-order-secondary-content-color))] dtw-text-[length:var(--limit-order-input-font-size,var(--limit-order-font-size-sm))] dtw-leading-[var(--limit-order-input-line-height,var(--limit-order-line-height-sm))] dtw-font-[var(--limit-order-input-font-weight,var(--limit-order-font-weight-light))] dtw-outline-none focus:dtw-outline-none lg:dtw-text-[length:var(--limit-order-input-font-size-lg,var(--limit-order-font-size-lg))] lg:dtw-leading-[var(--limit-order-input-line-height-lg,var(--limit-order-line-height-lg))]",ref:o,autoFocus:i,type:"text",min:0,value:l,onChange:d,disabled:t,placeholder:n}),s?r.jsx("span",{className:"dtw-font-light dtw-whitespace-nowrap dtw-text-[length:var(--limit-order-input-suffix-font-size,var(--limit-order-font-size-sm))] dtw-text-[color:var(--limit-order-secondary-content-color)]",children:s}):null,a?r.jsx("span",{className:"dtw-font-light dtw-text-[length:var(--limit-order-input-suffix-font-size,var(--limit-order-font-size-sm))] dtw-text-[color:var(--limit-order-secondary-content-color)]",children:a}):null]})})},Yn=({title:e,subtitle:t,defaultEnabled:n,onDisable:a,children:s})=>{const[o,i]=u.useState(n),l=c=>{i(c),c||a()};return r.jsxs("div",{className:"dtw-px-3 dtw-py-2 dtw-flex dtw-flex-col dtw-gap-2 dtw-border dtw-border-[var(--limit-order-switch-panel-border-color)] dtw-rounded-[var(--limit-order-switch-panel-radius,var(--limit-order-radius))]",children:[r.jsxs("div",{className:"dtw-flex dtw-justify-between dtw-text-[length:var(--limit-order-input-label-font-size,var(--limit-order-font-size))] dtw-leading-[var(--limit-order-input-label-line-height,var(--limit-order-line-height))] dtw-font-[var(--limit-order-input-label-font-weight,var(--limit-order-font-weight-light))] dtw-gap-x-2",children:[r.jsxs("div",{className:"dtw-flex dtw-flex-col dtw-gap-0.5 dtw-text-[color:var(--limit-order-secondary-content-color)]",children:[r.jsx("span",{children:e}),r.jsx("span",{className:"dtw-text-[length:var(--limit-order-font-size-xs)]",children:t})]}),r.jsx(Pn,{onChange:l,defaultEnabled:o})]}),o&&s]})},El={upperLimitPrice:"",lowerLimitPrice:"",sellPercentage:"",termsAccepted:!1},SS=(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:El};case"SET_PENDING_TRANSACTION":return{...e,pendingTransaction:t.payload};default:return e}};function Ie(){}const Il=e=>({vaultAddress:e.vaultAddress,vaultChainId:e.vaultChainId,isModalOpen:e.isModalOpen??!1,form:{...El,...e.form},pendingTransaction:null,pricingAsset:e.pricingAsset,minAmountInUsd:e.minAmountInUsd}),_l=u.createContext(Il({vaultAddress:I,vaultChainId:0,pricingAsset:{address:I,symbol:""},minAmountInUsd:za,form:{lowerLimitPrice:"",upperLimitPrice:""}})),Dl=u.createContext({setIsModalOpen:Ie,setUpperLimitPrice:Ie,setLowerLimitPrice:Ie,setTermsAccepted:Ie,setSellPercentage:Ie,reset:Ie,setPendingTransaction:Ie,onLog:Ie}),Nl=({children:e,initialState:t,actions:n})=>{const[a,s]=u.useReducer(SS,Il(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(Dl.Provider,{value:y,children:r.jsx(_l.Provider,{value:a,children:e})})},ge=()=>u.useContext(_l),zt=()=>u.useContext(Dl),ds=()=>{const{account:e}=M(),{vaultAddress:t,vaultChainId:n,form:{sellPercentage:a}}=ge(),{data:s}=Oa({address:e,token:t,chainId:n});return u.useMemo(()=>{const o=a||ii;if(!s)return{raw:"0",formatted:"0",symbol:""};const i=new T(s.value).times(o).dividedBy(100).toFixed(0,T.ROUND_DOWN),l=ze({value:new T(i).shiftedBy(-18).toFixed(),decimals:2});return{raw:i,formatted:l,symbol:s.symbol}},[s,a])},Ol=({userAddress:e,vaultAddress:t})=>{const n=D.encodePacked(["address","address"],[e,t]);return D.keccak256(n)},CS=({price:e,markPrice:t})=>new T(e).gt(t)?`+${Ot((+e/+t-1)*100,2)}`:"",ES=({price:e,markPrice:t})=>new T(e).lt(t)?`-${Ot((1-+e/+t)*100,2)}`:"",IS=({error:e,translationMap:t})=>e?e.title===$r?{...e,hint:t.invalidLimitOrderPriceError}:e:null,_S=()=>{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}=zt(),m=de({address:o.address,chainId:i,refetchInterval:We}),y=Number(m)<bT?TT:fT,{formatted:w,symbol:g}=ds(),b=CS({price:t,markPrice:m}),A=ES({price:n,markPrice:m}),S=u.useCallback(()=>{l("")},[l]),_=u.useCallback(()=>{c("")},[c]),j=u.useCallback(()=>{d("")},[d]),B=`${o.symbol} ${e.price}`;return{upperLimitPrice:t,lowerLimitPrice:n,sellPercentage:a,setUpperLimitPrice:l,setLowerLimitPrice:c,setSellPercentage:d,onDisableUpperLimitPrice:S,onDisableLowerLimitPrice:_,onDisableSellPercentage:j,termsAccepted:s,setTermsAccepted:p,pricingAssetPrice:m==="0"?null:te({value:m,maximumFractionDigits:y}),upperLimitPriceDifference:b,lowerLimitPriceDifference:A,pricingAssetSymbol:o.symbol,inputSuffix:B,coveredVaultAmount:w,vaultSymbol:g}},DS=["termsPoint1","termsPoint2","termsPoint3","termsPoint4","termsPoint5"],NS=({className:e})=>{const t=he();return r.jsx("div",{className:C("dtw-w-full dtw-text-[length:var(--limit-order-font-size-xs)] dtw-max-h-[120px] dtw-overflow-y-auto theme-scrollbar dtw-text-[color:var(--limit-order-secondary-content-color)]",e),children:r.jsx("ol",{className:"dtw-list-decimal dtw-list-inside dtw-space-y-2",children:DS.map((n,a)=>r.jsxs("li",{className:"dtw-text-pretty",children:[a+1,". ",t[n]]},n))})})},Pl=({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:C("dtw-group dtw-flex dtw-items-center dtw-justify-center dtw-shrink-0 dtw-size-[var(--panel-checkbox-size)] dtw-rounded-[var(--panel-checkbox-radius)] dtw-p-0.5 dtw-right-0 dtw-outline-0 dtw-cursor-pointer dtw-border",{"dtw-bg-[color:var(--panel-checkbox-bg-checked)] dtw-border-[color:var(--panel-checkbox-border-color-checked)]":t,"dtw-bg-[color:var(--panel-checkbox-bg)] dtw-border-[color:var(--panel-checkbox-border-color)]":!t},e),children:r.jsx(Ae.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:C("dtw-select-none",a),children:n})]}),OS=()=>{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:b,onDisableSellPercentage:A,coveredVaultAmount:S,vaultSymbol:_}=_S();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(gS,{symbol:y,price:d}),r.jsx(Yn,{title:e.upperLimitLabel,subtitle:e.upperLimitSubtitle,defaultEnabled:!0,onDisable:o,children:r.jsx(nr,{inputValue:t,onInputChange:a,percentage:p,symbol:y,suffix:w})}),r.jsx(Yn,{title:e.lowerLimitLabel,subtitle:e.lowerLimitSubtitle,defaultEnabled:!!n,onDisable:i,children:r.jsx(nr,{inputValue:n,onInputChange:s,percentage:m,symbol:y,suffix:w})}),r.jsx(Yn,{title:e.partialSellLabel,subtitle:e.partialSellSubtitle,defaultEnabled:!!g,onDisable:A,children:r.jsx(vS,{inputValue:g,onInputChange:b,suffix:"%",placeholder:ii,postfix:r.jsxs("div",{className:"dtw-flex dtw-flex-col dtw-items-end dtw-justify-center",children:[r.jsx("span",{className:"dtw-text-[color:var(--limit-order-primary-content-color)]",children:S}),r.jsx("span",{className:"dtw-text-[color:var(--limit-order-secondary-content-color)]",children:_})]})})})]}),r.jsx("div",{className:"dtw-mt-3 dtw-px-2 dtw-flex dtw-items-center dtw-gap-1.5",children:r.jsx(Pl,{checked:c,onChange:j=>l(j),label:e.limitOrderTerms,labelClassName:"dtw-text-[length:var(--limit-order-font-size-xs)] dtw-cursor-pointer"})}),r.jsx(NS,{className:"dtw-px-2"})]})},PS=()=>{const{account:e=I}=M(),{vaultAddress:t,vaultChainId:n}=ge(),a=z("limitOrder",n),s=ds(),{data:o}=bn({tokenAddress:t,ownerAddress:e,spenderAddress:a,chainId:n});return o?new T(s.raw).lte(o.toString()):!1},kS=()=>{const{vaultAddress:e,vaultChainId:t,pendingTransaction:n}=ge(),{setPendingTransaction:a}=zt(),[s,o]=u.useState(!1),i=z("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}},RS=()=>{const e=PS(),{approveLimitOrder:t,isApprovePending:n}=kS(),{form:{termsAccepted:a}}=ge();return{isApproved:e,approveLimitOrder:t,isApprovePending:n,disabled:!a}},LS=({children:e})=>{const t=he(),{isApproved:n,approveLimitOrder:a,isApprovePending:s,disabled:o}=RS();return n?e:r.jsx(Ut,{onClick:a,loading:s,disabled:o,children:t.approve})},kl=e=>{const{setIsModalOpen:t,reset:n,setPendingTransaction:a,onTransactionSettled:s}=zt();return u.useCallback((...o)=>{const[i]=o;if(s?.(...o),!i)return a(null);a({hash:i,action:e}),t(!1),n()},[s,a,e,t,n])},MS=([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},Ht=({chainId:e,userAddress:t,vaultAddress:n})=>E.useReadContract({address:z("limitOrder",e),abi:yn,chainId:e,functionName:_n,args:[Ol({userAddress:t,vaultAddress:n})],query:{enabled:!ee(t)&&!ee(n),select:MS}}),jS=yn.filter(({type:e})=>e==="error").map(({name:e})=>e),BS="create",$S=()=>{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=ds(),{data:m}=Ht({userAddress:t,vaultAddress:n,chainId:a}),y=pe({address:n,chainId:a}),[w,g]=u.useState(null),b=kl(BS),A=!!m,{send:S}=ve({onSettled:b,contractId:"limitOrder",functionName:A?"modifyLimitOrder":"createLimitOrder"}),j=new T.BigNumber(p.formatted).multipliedBy(y??"0").gte(d),B=!i||!j,ne=!!c;return{modifyLimitOrder:async()=>{const Xe=BigInt(s?rn(s,P):0),Gt=o?BigInt(rn(o,P)):Fe,Vt=[p.raw,Xe,Gt,t,n,l.address];try{await S(Vt),g(null)}catch(ht){ht instanceof ut&&g(ht.message)}},disabled:B,error:IS({error:po({errorMessage:w,abiErrors:jS})??null,translationMap:e}),isPending:ne,isAmountSufficient:j,minAmount:te({value:d.toString(),maximumFractionDigits:0,minimumFractionDigits:0}),isModifyTransaction:A}},FS=({disabled:e})=>{const t=he(),{modifyLimitOrder:n,disabled:a,error:s,isPending:o,minAmount:i,isAmountSufficient:l,isModifyTransaction:c}=$S();return r.jsxs("div",{children:[s&&r.jsxs("div",{className:"dtw-mb-2 dtw-flex dtw-flex-col dtw-gap-1 dtw-text-error",children:[r.jsx("span",{className:"dtw-text-sm",children:s.title}),s.hint&&r.jsx("span",{className:"dtw-text-xs",children:s.hint})]}),!l&&r.jsx("div",{className:"dtw-mb-1 dtw-text-warning dtw-text-sm",children:t.minimumVaultBalanceRequired.replace("{amount}",i)}),r.jsx(Ut,{onClick:n,disabled:e||a,loading:o,children:c?t.modify:t.create})]})},WS="remove",US=()=>{const{account:e=I}=M(),{vaultAddress:t,vaultChainId:n,pendingTransaction:a}=ge(),{data:s}=Ht({userAddress:e,vaultAddress:t,chainId:n}),o=kl(WS),{send:i}=ve({onSettled:o,contractId:"limitOrder",functionName:"deleteLimitOrder"}),l=async()=>i(t),c=!!a,d=!!s?.amountD18&&!new T(s.amountD18.toString()).isZero();return{deleteLimitOrder:l,isPending:c,displayButton:d}},zS=()=>{const e=he(),{deleteLimitOrder:t,isPending:n,displayButton:a}=US();return a?r.jsx(Ut,{highlighted:!1,className:"!dtw-py-1",onClick:t,loading:n,children:e.delete}):null},HS=()=>{const{chainId:e,switchNetwork:t}=Se(),{vaultChainId:n}=ge();return{isWrongNetwork:e!==n,handleNetworkSwitch:()=>{t?.({chainId:n})}}},GS=({children:e})=>{const t=he(),{isWrongNetwork:n,handleNetworkSwitch:a}=HS();return n?r.jsx(Ut,{onClick:a,children:t.switchNetwork}):e},ar=e=>{const t=e?.trim();return t?!isNaN(Number(t)):!1},VS=()=>{const{form:{lowerLimitPrice:e,upperLimitPrice:t}}=ge(),n=ar(e)&&Number(e)!==0,a=ar(t);return{limitOrderButtonDisabled:!n&&!a}},Rl=({onClose:e,hideDeleteButton:t})=>{const n=he(),{limitOrderButtonDisabled:a}=VS();return r.jsxs("div",{className:"dtw-flex dtw-flex-col dtw-gap-2",children:[r.jsx(OS,{}),r.jsxs(GS,{children:[r.jsx(LS,{children:r.jsx(FS,{disabled:a})}),!t&&r.jsx(zS,{})]}),!!e&&r.jsx(Ut,{highlighted:!1,onClick:e,children:n.cancel})]})},Ll=({vaultAddress:e,vaultChainId:t})=>{const{account:n=I}=M(),{isFetched:a,data:s}=Ht({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}},qS=[_n,Ua,"allowance"],Ml=()=>{const e=tt.useQueryClient();return u.useCallback(()=>{e.invalidateQueries({predicate:({queryKey:t})=>{const n=t[1]?.functionName;return t[0]==="readContract"&&qS.some(a=>a===n)}})},[e])},jl=()=>{const{pendingTransaction:e,vaultChainId:t,vaultAddress:n}=ge(),{setPendingTransaction:a,onTransactionSuccess:s,onTransactionError:o,onLog:i}=zt(),l=Ml(),{data:c,error:d}=E.useWaitForTransactionReceipt({hash:e?.hash??void 0,chainId:t,pollingInterval:We});u.useEffect(()=>{c&&(e?.action==="create"&&i?.(X.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"}},Bl=({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}),YS=({themeConfig:e})=>(jl(),r.jsx(Bl,{config:e,children:r.jsx(Rl,{hideDeleteButton:!0})})),KS=({vaultChainId:e,vaultAddress:t,pricingAsset:n,translation:a,minAmountInUsd:s=za,actions:o,themeConfig:i})=>{const{isFetched:l,upperLimitPrice:c,lowerLimitPrice:d}=Ll({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(Cl,{config:a,children:r.jsx(Nl,{initialState:p,actions:o,children:r.jsx(YS,{themeConfig:i})})}):null},QS=({type:e})=>{const{minLimitOrderValue:t}=G(),{address:n,chainId:a,pricingAsset:s,symbol:o}=f(),{handleReject:i}=ce({type:e}),l=K()[1],c=re()[1],d=Yf(),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?kn(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}},XS=e=>{const{limitOrderThemeConfig:t}=G(),{handleReject:n,chainId:a,address:s,pricingAsset:o,minLimitOrderValue:i,actions:l,closeAllOverlays:c}=QS(e);return o?r.jsx(Y.Overlay,{onClose:c,onBack:n,className:"!dtw-px-2",noPadding:!0,children:r.jsx("div",{className:"dtw-mt-10 dtw-px-2 dtw-overflow-y-auto theme-scrollbar",children:r.jsx(KS,{vaultAddress:s,vaultChainId:a,pricingAsset:o,minAmountInUsd:i,actions:l,themeConfig:t})})}):null},$l=()=>{const[e]=N();return new T(e.value||"0").shiftedBy(e.decimals)},ZS=()=>{const{account:e=I}=M(),{address:t,chainId:n}=f(),a=z("limitOrder",n),s=$l(),{data:o}=bn({tokenAddress:t,ownerAddress:e,spenderAddress:a,chainId:n});return o?s.lte(o.toString()):!1},sr="approve",JS=()=>{const{address:e,chainId:t,symbol:n}=f(),[a,s]=u.useState(!1),o=z("limitOrder",t),i=re()[1],l=Ye(sr),{send:c}=ve({contractId:"erc20",dynamicContractAddress:e,functionName:"approve",onSettled(...p){s(!1),l(...p)}});return{approveLimitOrder:async()=>{i({type:"add",action:sr,symbol:n,chainId:t}),s(!0),c(o,Fe)},isApprovePending:a}},eC=()=>{const e=ZS(),{approveLimitOrder:t,isApprovePending:n}=JS();return{isApproved:e,approveLimitOrder:t,isApprovePending:n}},tC=({children:e})=>{const t=x(),{ActionButton:n=q}=R(),{isApproved:a,approveLimitOrder:s,isApprovePending:o}=eC();return a?e:r.jsx(n,{onClick:s,loading:o,children:t.approve})},rr="limit_order_withdraw",nC=e=>{const{account:t=I}=M(),{address:n,chainId:a,pricingAsset:s,symbol:o}=f(),i=re()[1],l=Ye(rr),c=u.useCallback((...w)=>{l(...w),e()},[l,e]),d=$l(),{data:p}=Ht({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:rr,symbol:o,chainId:a});const w=BigInt(0),g=Fe,b=[BigInt(d.toFixed()),w,g,t,n,s?.address];return y(b)},[i,o,a,d,t,n,s?.address,y])},aC=({limitOrderHandler:e,action:t})=>{const n=x(),a=ie(),{account:s}=M(),o=f(),[i]=N(),l=K()[1],c=re()[1],d=gn(),p=t==="delete_limit_order_withdraw",m=async()=>{const y=o.chainId;l({isOpen:!0,status:"Wallet",action:t,link:"",sendTokens:[i],receiveTokens:null,meta:{}});try{await e()}catch(w){w instanceof ut&&(a({type:"MERGE_OVERLAY",payload:{type:$.ERROR_NOTIFICATION,isOpen:!0,meta:{error:w.message}}}),d?.(w,o.address,y,s)),l({isOpen:!1,status:"None",link:"",sendTokens:null,receiveTokens:null,meta:{}}),c({type:"remove",status:"fail"})}};return{label:p?n.delete:n.withdrawAction,handleLimitOrderWithdraw:m}},sC="limit_order_withdraw",rC=()=>{const e=ie(),t=jn("limit_order_withdraw"),n=u.useCallback(()=>e({type:"MERGE_OVERLAY",payload:{type:$.LIMIT_ORDER_WITHDRAW,isOpen:!1}}),[e]),a=nC(n),{handleLimitOrderWithdraw:s,label:o}=aC({limitOrderHandler:a,action:sC});return{label:o,handleLimitOrderWithdraw:s,isLoading:t}},oC=({disabled:e})=>{const{ActionButton:t=q}=R(),{label:n,handleLimitOrderWithdraw:a,isLoading:s}=rC();return r.jsx(t,{onClick:a,disabled:e,loading:s,children:n})},iC=["termOfUseWithdrawPoint1","termOfUseWithdrawPoint2"],lC=({className:e})=>{const t=x();return r.jsxs(r.Fragment,{children:[r.jsx("p",{children:t.limitOrderWithdrawDescription}),r.jsx("div",{className:C("dtw-w-full dtw-text-sm dtw-overflow-y-auto theme-scrollbar dtw-text-[color:var(--panel-secondary-content-color)]",e),children:r.jsx("ol",{className:"dtw-list-decimal dtw-list-inside dtw-space-y-2",children:iC.map((n,a)=>r.jsxs("li",{className:"dtw-text-pretty",children:[a+1,". ",t[n]]},n))})})]})},cC=({type:e})=>{const t=x(),{ActionButton:n=q}=R(),{handleReject:a}=ce({type:e}),[s,o]=u.useState(!1);return r.jsx(Y.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(lC,{}),r.jsx("div",{className:"dtw-mt-1 dtw-flex dtw-items-center dtw-gap-1.5",children:r.jsx(Pl,{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(tC,{children:r.jsx(oC,{disabled:!s})})]})})},dC=({isActive:e,onError:t})=>{const n=x(),a=Za(e),{canSpend:s,approve:o,isCanSpendFetching:i}=ns({onErrorCallback:t}),l=u.useRef(!1);return u.useEffect(()=>{if(!i){if(s){l.current=!0;return}l.current||(l.current=!0,o())}},[i,s,o]),{label:n.approveTokensForWithdrawal,description:a}},Nt=({stepNumber:e,isActive:t,isFinished:n,label:a,description:s})=>r.jsxs("div",{className:C("dtw-flex dtw-items-center dtw-gap-3 dtw-p-2 dtw-rounded-xl",{"dtw-bg-[color:var(--panel-popup-list-item-bg-even)]":t}),children:[r.jsxs("div",{className:C("dtw-relative dtw-flex dtw-items-center dtw-justify-center dtw-w-7 dtw-h-7 dtw-text-sm",{"dtw-text-[color:var(--panel-secondary-content-color)]":!t}),children:[t&&r.jsx("div",{className:"dtw-absolute dtw-inset-0 dtw-rounded-full dtw-border-2 dtw-border-transparent dtw-border-t-[var(--panel-content-color)] dtw-animate-spin"}),r.jsx("div",{className:C("dtw-flex dtw-items-center dtw-justify-center dtw-w-full dtw-h-full dtw-rounded-full dtw-border dtw-bg-[color:var(--panel-popup-list-item-bg-even)]",{"dtw-border-transparent":t||!n,"dtw-border-[var(--panel-secondary-content-color)]":n&&!t}),children:e})]}),r.jsxs("div",{className:"dtw-flex dtw-flex-col",children:[r.jsx("span",{className:C({"dtw-text-[color:var(--panel-secondary-content-color)]":!t}),children:a}),s&&r.jsx("span",{className:"dtw-text-xs dtw-text-[color:var(--panel-secondary-content-color)]",children:s})]})]}),pC=({isActive:e,onError:t,stepNumber:n,isFinished:a})=>{const{label:s,description:o}=dC({isActive:e,onError:t});return r.jsx(Nt,{stepNumber:n,isFinished:a,isActive:e,label:s,description:o})},nn=0,At=1,St=2,uC=1e3,mC=(e,t,n)=>{u.useEffect(()=>{t==="Success"&&n&&Ia.includes(n)&&e()},[t,n,e])},yC=e=>{const[t,n]=u.useState(!1);return u.useEffect(()=>{if(!e){n(!1);return}const a=setTimeout(()=>{n(!0)},uC);return()=>clearTimeout(a)},[e]),t},wC=({type:e})=>{const{handleReject:t}=ce({type:e}),[n]=No(),[{status:a,action:s}]=K(),{isCompleteWithdrawStep:o}=Qe(),{isUnrollAndClaimTransaction:i,isFetching:l,isFetched:c}=rs(),{canSpend:d}=ns({onErrorCallback:t}),p=yC(d);return mC(t,a,s),{isUnrollAndClaimTransaction:i,activeStepIndex:o?St:d?At:nn,canSpend:d,isCompleteWithdrawStep:o,handleReject:t,stepper:n,isUnrollAndClaimCheckFetching:l,isTransactionTypeReady:c||p}},hC=({isActive:e,onError:t})=>{const n=x(),a=Za(e),s=Gi({onErrorCallback:t}),{handleTrade:o}=Ki({withdraw:s,onErrorCallback:t});return Nv({handleTrade:o,onError:t}),{label:n.swapToCompleteSell,description:a}},gC=({stepNumber:e,isActive:t,isFinished:n,onError:a})=>{const{label:s,description:o}=hC({isActive:t,onError:a});return r.jsx(Nt,{isFinished:n,stepNumber:e,isActive:t,label:s,description:o})},bC=({isActive:e,canSpend:t,isCompleteWithdrawStep:n,isPending:a,onError:s})=>{const o=Za(e),{withdraw:i}=Lv({onErrorCallback:s}),{handleTrade:l}=Zi({trade:i,onErrorCallback:s}),c=u.useRef(!1);return u.useEffect(()=>{a||t&&!n&&!c.current&&(c.current=!0,l())},[a,t,n,l]),{description:o}},TC=({stepNumber:e,isActive:t,isFinished:n,isPending:a,onError:s,isCompleteWithdrawStep:o,canSpend:i,label:l})=>{const{description:c}=bC({isActive:t,canSpend:i,isCompleteWithdrawStep:o,isPending:a,onError:s});return r.jsx(Nt,{isFinished:n,stepNumber:e,isActive:t,label:l,description:c})},fC=({canSpend:e,isTransactionTypeReady:t,isUnrollAndClaimTransaction:n,isCompleteWithdrawStep:a,isUnrollAndClaimCheckFetching:s,activeStepIndex:o,onError:i})=>{const l=x(),c=Ke();return!e||!t?r.jsxs(r.Fragment,{children:[r.jsx(Nt,{isFinished:!1,stepNumber:At+1,isActive:!1,label:l.unrollAssetsToPrepare}),r.jsx(Nt,{isFinished:!1,stepNumber:St+1,isActive:!1,label:l.swapToCompleteSell})]}):r.jsxs(r.Fragment,{children:[r.jsx(TC,{stepNumber:At+1,isFinished:o>At,isActive:o===At,canSpend:e,isCompleteWithdrawStep:n?!1:a,isPending:s,onError:i,label:n||c?l.unrollAndClaimAssets:l.unrollAssetsToPrepare}),!n&&!c&&r.jsx(gC,{stepNumber:St+1,isFinished:o>St,isActive:o===St,onError:i})]})},vC=e=>{const t=x(),{ActionButton:n=q}=R(),{isUnrollAndClaimTransaction:a,activeStepIndex:s,canSpend:o,isCompleteWithdrawStep:i,handleReject:l,stepper:c,isUnrollAndClaimCheckFetching:d,isTransactionTypeReady:p}=wC(e);return r.jsxs(Y.Overlay,{centered:!1,className:"dtw-gap-4",children:[r.jsx(n,{highlighted:!1,onClick:l,className:"!dtw-p-1 !dtw-w-24 dtw-self-start",children:t.cancel}),r.jsxs("div",{className:"dtw-flex dtw-flex-col dtw-items-center dtw-gap-2",children:[r.jsx($e,{symbols:[c?.sendTokenSymbol??""],size:"2xl"}),r.jsxs("div",{className:"dtw-text-center",children:[r.jsxs("p",{className:"dtw-text-lg",children:[t.sell," ",c?.sendTokenAmount," ",c?.sendTokenSymbol]}),c?.receiveTokenSymbol&&r.jsxs("p",{className:"dtw-text-sm dtw-text-[color:var(--panel-secondary-content-color)]",children:["for ",c.receiveTokenAmount," ",c.receiveTokenSymbol]})]})]}),r.jsxs("div",{className:"dtw-mt-4 dtw-flex dtw-flex-col dtw-gap-2",children:[r.jsx(pC,{isFinished:s>nn,isActive:s===nn,onError:l,stepNumber:nn+1}),r.jsx(fC,{canSpend:o,isTransactionTypeReady:p,isUnrollAndClaimTransaction:a,isCompleteWithdrawStep:i,isUnrollAndClaimCheckFetching:d,activeStepIndex:s,onError:l})]})]})},xC=()=>{const e=Nn(),t=x();return r.jsxs(r.Fragment,{children:[r.jsx(je,{label:t.slippageTolerance,tooltipText:t.withdrawSlippageWarning,children:r.jsx(Fi,{})}),r.jsx(je,{label:t.tokenAllowance,tooltipText:t.toggleTokenApprovalAmount,children:r.jsx(al,{})}),e&&r.jsx(je,{label:t.batchTransactionsLabel,tooltipText:t.batchTransactionsTooltip??"",children:r.jsx(sl,{})}),r.jsx(rl,{})]})},AC=({assets:e=[]})=>{const{stablePrecision:t}=G(),{firstPart:n,secondPart:a}=oo(e,Tr),s=u.useCallback(({symbol:o,address:i,rawBalance:l,decimals:c,price:d,balance:p})=>r.jsxs("tr",{children:[r.jsxs("td",{children:[r.jsx($t,{symbol:o,iconSymbols:[o],symbolClasses:"dtw-text-xs dtw-font-bold",size:"sm"}),r.jsx("p",{className:"dtw-truncate dtw-text-xs dtw-text-[color:var(--panel-secondary-content-color)]",children:te({value:p*d})})]}),r.jsx("td",{className:"dtw-text-right",children:r.jsx("p",{className:"dtw-truncate",children:ze({value:D.formatUnits(l,c),decimals:t})})})]},i),[t]);return r.jsxs("div",{className:"dtw-text-sm dtw-font-light ",children:[r.jsx(un,{children:n.map(s)}),a.length>0&&r.jsx(gl,{children:r.jsx(un,{children:a.map(s)})})]})},SC=()=>{const{chainId:e}=f(),{stablePrecision:t}=G(),{data:n=[]}=ue(),a=Vi(),{data:s=I}=Ev();return{assets:n,usdAmount:te({value:a,maximumFractionDigits:t}),withdrawalVaultLink:kn(s,"address",e)}},CC=()=>{const e=x(),{assets:t,usdAmount:n,withdrawalVaultLink:a}=SC();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(qe,{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(AC,{assets:t})})]})},EC=()=>{const e=ie(),{requiresHighSlippageConfirm:t,confirmHighSlippage:n,slippageToBeUsed:a}=Qa();return{requiresHighSlippageConfirm:t,slippageToBeUsed:a,handleHighSlippageClick:()=>{e({type:"MERGE_OVERLAY",payload:{type:$.HIGH_SLIPPAGE,isOpen:!0,onConfirm:async()=>n()}})}}},IC=({children:e})=>{const{ActionButton:t=q}=R(),n=x(),{requiresHighSlippageConfirm:a,slippageToBeUsed:s,handleHighSlippageClick:o}=EC();return a?r.jsx(t,{onClick:o,children:n.confirmMaxSlippage.replace("{slippagePercentage}",`${Math.abs(s)}`)}):e},_C=()=>{const{chainId:e}=f(),[t]=O(),n=de({address:t.address,chainId:e}),a=Qi(),s=Bt(Math.min(0,a));return{receiveToken:{...t,price:n},swapDiff:a,themeType:s}},DC=()=>{const e=x(),{receiveToken:t,swapDiff:n,themeType:a}=_C();return r.jsx(Dt,{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})},NC=()=>{const e=x(),{stablePrecision:t}=G(),[n]=O(),a=Ft(),{minExpectedReceiveAmount:s}=as(),o=Bt(a),i=o===F.DEFAULT?e.withdrawSlippageWarning:e.highSlippageWarning;return{themeType:o,slippageTooltipText:i,slippagePlaceholder:a.toString(),minReceive:`${ze({value:D.formatUnits(BigInt(s),n.decimals),decimals:t})} ${n.symbol}`}},OC=()=>{const e=x(),{slippageTooltipText:t,slippagePlaceholder:n,minReceive:a}=NC(),s=u.useMemo(()=>[{tooltipText:e.exchangeRate,label:e.rate,value:r.jsx(cs,{})},{tooltipText:t,label:e.maxSlippage,value:r.jsxs("span",{children:[n,"%"]})},{tooltipText:e.minReceiveAmount,label:e.minReceived,value:a}],[a,n,t,e.maxSlippage,e.minReceiveAmount,e.minReceived,e.exchangeRate,e.rate]);return r.jsx(Ja,{collapseItems:s})},PC=({children:e})=>r.jsxs(Y.Meta,{children:[r.jsx(OC,{}),r.jsx("div",{className:"dtw-sticky dtw-bottom-0 dtw-bg-[var(--panel-meta-action-panel-bg)]",children:e})]}),or=!0,kC=()=>{const{isWrongNetwork:e}=ul(),t=Gi({isClaim:or}),{disabled:n,label:a,handleTrade:s}=Ki({withdraw:t,isClaim:or}),o=jn("claim");return{disabled:n,label:a,handleTrade:s,isWrongNetwork:e,isLoading:o}},RC=({highlighted:e,className:t})=>{const{ActionButton:n=q}=R(),{handleTrade:a,disabled:s,label:o,isWrongNetwork:i,isLoading:l}=kC();return i?null:r.jsx(n,{onClick:a,disabled:s,highlighted:e,className:t,loading:l,children:o})},LC=()=>(Dv(),r.jsxs(r.Fragment,{children:[r.jsxs(Y.InputGroup,{children:[r.jsx(CC,{}),r.jsx(DC,{})]}),r.jsx(PC,{children:r.jsx(is,{children:r.jsxs("div",{className:"tw-flex tw-flex-col tw-gap-2",children:[r.jsx(IC,{children:r.jsx(hl,{})}),r.jsx(RC,{highlighted:!1})]})})})]})),MC=()=>{const{chainId:e,address:t}=f(),{exitFeeNumber:n}=On({address:t,chainId:e}),[a]=N(),[s,o]=O(),i=pe({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 T(a.value).times(i).times(1-n/100).dividedBy(l).toFixed(s.decimals);o({value:uo(d)?d:""})},[n,s.decimals,l,a.value,i,o])},jC=()=>{const e=x(),t=ie(),n=()=>t({type:"MERGE_OVERLAY",payload:{type:$.LIMIT_ORDER_WITHDRAW,isOpen:!0}});return{label:e.withdrawAction,openLimitOrderWithdrawOverlay:n}},BC=()=>{const{ActionButton:e=q}=R(),{label:t,openLimitOrderWithdrawOverlay:n}=jC();return r.jsx(e,{onClick:n,children:t})},Kn=[{isLeveragedAsset:ho,getWithdrawAssetByLeverageAddress:go,getWithdrawAssetByVaultAddress:()=>{},isLentAndBorrowedAsset:na},{isLeveragedAsset:yd,getWithdrawAssetByLeverageAddress:wd,getWithdrawAssetByVaultAddress:hd,isLentAndBorrowedAsset:na}],Qn={requiresLeveragedCollateralLiquidity:!1,leveragedCollateralValueFormatted:"$0"},Xn=e=>T(e.amount).shiftedBy(-e.precision).times(e.rate).shiftedBy(-18).toNumber(),Fl=()=>{const e=f(),t=mt(e),[n]=N(),a=pe(e),s=t.find(({tokenAddress:m,amount:y})=>Kn.some(w=>w.isLeveragedAsset(m)&&y!=="0"));if(!s)return Qn;const o=Kn.find(m=>m.isLeveragedAsset(s.tokenAddress));if(!o)return Qn;const i=o.getWithdrawAssetByVaultAddress(e.address)?.address??o.getWithdrawAssetByLeverageAddress(s.tokenAddress).address,l=t.find(({tokenAddress:m})=>H(i,m));if(!l)return Qn;const c=Number(n.value||"0")*Number(a),d=Xn(l);if(t.find(({tokenAddress:m,amount:y})=>Kn.some(w=>w.isLentAndBorrowedAsset({address:m,chainId:e.chainId})&&y!=="0"))){const m=Xn(s),y=t.reduce((S,_)=>S+Xn(_),0),w=d/y,g=m/y,A=w/(w+g)*y;return{requiresLeveragedCollateralLiquidity:c>A,leveragedCollateralValueFormatted:te({value:A})}}return{requiresLeveragedCollateralLiquidity:c>d,leveragedCollateralValueFormatted:te({value:d})}},Wl=()=>{const{chainId:e,pricingAsset:t,onDemandWithdrawalEnabled:n}=f(),{requiresLeveragedCollateralLiquidity:a}=Fl(),s=Rt();return a&&!!t&&!!n&&(e===h.arbitrum.id||!s)},$C=()=>{const{address:e,chainId:t,maintenance:n,maintenanceWithdrawals:a,symbol:s}=f(),[o]=N(),i=ie(),l=Wl(),c=kt(),{data:d=0}=If({address:e,chainId:t}),p=d>0,m=Et.formatDuration(Et.intervalToDuration({start:0,end:d})),{requiresHighSlippageConfirm:y,confirmHighSlippage:w,slippageToBeUsed:g}=Qa(),b=()=>{i({type:"MERGE_OVERLAY",payload:{type:$.HIGH_SLIPPAGE,isOpen:!0,onConfirm:async()=>w()}})};return{isEmptyInput:!o.value||o.value==="0",requiresEndOfCooldown:p,requiresHighSlippageConfirm:y,sendTokenSymbol:o.symbol,slippageToBeUsed:g,dynamicCooldownEndsInTime:m,handleHighSlippageClick:b,maintenance:n||a,poolSymbol:s,isLimitOrderWithdraw:l,insufficientBalance:c}},FC=({children:e})=>{const{ActionButton:t=q}=R(),n=x(),a=Xa("withdraw"),{isEmptyInput:s,requiresEndOfCooldown:o,requiresHighSlippageConfirm:i,sendTokenSymbol:l,slippageToBeUsed:c,dynamicCooldownEndsInTime:d,handleHighSlippageClick:p,maintenance:m,poolSymbol:y,isLimitOrderWithdraw:w,insufficientBalance:g}=$C();return s?r.jsx(t,{disabled:!0,children:a}):m?r.jsx(da,{promptText:n.poolWithdrawalsAreMaintenance.replace("{poolSymbol}",y),children:a}):o?r.jsx(da,{promptText:n.withdrawCooldown.replace("{tokenSymbol}",l).replace("{cooldownEndTime}",d),children:a}):g?r.jsx(t,{disabled:!0,children:n.insufficientBalance}):w?r.jsx(BC,{}):i?r.jsx(t,{onClick:p,children:n.confirmMaxSlippage.replace("{slippagePercentage}",`${Math.abs(c)}`)}):e},WC=()=>{const{address:e,chainId:t}=f(),[n,a]=N(),s=we({symbol:n.symbol,address:n.address}),o=pe({address:e,chainId:t});return{...n,updater:a,balance:s,price:o}},UC=()=>{const{chainId:e}=f(),[t,n]=O(),a=de({address:t.address,chainId:e});return{...t,updater:n,price:a}},zC=()=>{const e=WC(),t=UC();return{sendToken:e,onInputChange:a=>{e.updater({value:a})},receiveToken:t}},HC=()=>{const e=x(),{sendToken:t,onInputChange:n,receiveToken:a}=zC();return r.jsxs(r.Fragment,{children:[r.jsx(Dt,{label:e.send,assetInput:t.value,onInputChange:n,assetSymbol:t.symbol,assetPrice:t.price??"",displayMax:!0,maxBalance:t.balance,displayCalculatedValue:!0,children:r.jsx(Tl,{})}),r.jsxs(Dt,{label:e.receiveEstimated,assetInput:a.value,autoFocus:!1,disabled:!0,assetSymbol:a.symbol,assetPrice:a.price,displayCalculatedValue:!0,isLoading:a.isLoading,children:[r.jsx(vl,{}),a.symbol==="all"?null:r.jsx(fl,{})]})]})},GC=()=>{const e=x(),{address:t,chainId:n}=f(),[{isMaxSlippageLoading:a}]=Q(),{exitFeeNumber:s}=On({address:t,chainId:n}),o=Ft(),i=Ke();return{slippageTooltipText:Bt(o)===F.DEFAULT?e.withdrawSlippageWarning:e.highSlippageWarning,isMaxSlippageLoading:a,slippagePlaceholder:`${o}%`,exitFee:Ot(s,2),minReceivedText:e.estimatedMultiAssetFractions,showMinReceivedText:i}},VC=()=>{const e=x(),{slippageTooltipText:t,slippagePlaceholder:n,isMaxSlippageLoading:a,exitFee:s,minReceivedText:o,showMinReceivedText:i}=GC(),l=u.useMemo(()=>{const c=[{tooltipText:e.exchangeRate,label:e.rate,value:r.jsx(cs,{})},{tooltipText:t,label:e.maxSlippage,value:r.jsxs("div",{className:"dtw-flex dtw-gap-1",children:[a&&r.jsx(Oe,{className:"dtw-stroke-[color:var(--panel-accent-from-color)] dtw-h-[var(--panel-icon-secondary-size)] sm:dtw-h-[var(--panel-icon-secondary-size-sm)] dtw-w-[var(--panel-icon-secondary-size)] sm:dtw-w-[var(--panel-icon-secondary-size-sm)]"}),r.jsx("span",{className:C({"dtw-text-[color:var(--panel-loading-content-color)]":a}),children:n})]})},{label:e.exitFee,value:s,tooltipText:e.exitFeeExplanation}];return i&&c.push({tooltipText:e.minReceiveAmount,label:e.minReceived,value:o}),c},[t,e.maxSlippage,e.exitFee,e.exitFeeExplanation,e.minReceiveAmount,e.minReceived,e.exchangeRate,e.rate,a,n,s,i,o]);return r.jsx(Ja,{collapseItems:l})},qC=({children:e})=>{const{WithdrawMetaInfo:t,AvailableLiquidityAlert:n,OnDemandWithdrawAlert:a}=R(),{requiresLeveragedCollateralLiquidity:s,leveragedCollateralValueFormatted:o}=Fl(),i=Wl();return r.jsxs(Y.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(VC,{}),t&&r.jsx(t,{}),r.jsx("div",{className:"dtw-sticky dtw-bottom-0 dtw-bg-[var(--panel-meta-action-panel-bg)]",children:e})]})},YC=()=>{const e=x();return MC(),r.jsxs(r.Fragment,{children:[r.jsx(Y.InputGroup,{children:r.jsx(HC,{})}),r.jsx(qC,{children:r.jsx(is,{children:r.jsxs("div",{className:"dtw-flex dtw-flex-col dtw-gap-2 dtw-w-full",children:[r.jsx(FC,{children:r.jsx(hl,{})}),r.jsx(yl,{highlighted:!1,children:e.stopOrder})]})})})]})},KC=()=>{Cv();const{isCompleteWithdrawStep:e}=Qe();return{isCompleteWithdrawStep:e}},QC=()=>{const{isCompleteWithdrawStep:e}=KC();return e?r.jsx(LC,{}):r.jsx(YC,{})},XC=()=>r.jsx(Y.Panel,{children:r.jsx(QC,{})}),ZC=({tradingType:e})=>r.jsxs(k.TabGroup,{selectedIndex:et.indexOf(e),children:[r.jsx(k.TabList,{className:"dtw-flex",children:et.map(t=>r.jsx(k.Tab,{className:"dtw-hidden"},t))}),r.jsxs(k.TabPanels,{children:[r.jsx(Y.Settings,{children:r.jsx(Gv,{})}),r.jsx(Y.Settings,{children:r.jsx(xC,{})})]})]}),JC=({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:et.map(t=>r.jsx(Xf,{tradingType:t},t))}),e]}),eE=et.reduce((e,t,n)=>(e[n]=t,e),{}),tE=()=>{const[e]=ye(),t=f(),{standalone:n}=G();CA();const a=ls(),s=o=>{const i=eE[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}},nE=()=>{const{type:e,onTabChange:t}=tE();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:et.indexOf(e),onChange:t,className:"dtw-flex dtw-flex-col dtw-h-full",children:[r.jsx(JC,{children:r.jsxs("div",{className:"dtw-flex dtw-gap-2 dtw-items-center dtw-justify-end",children:[r.jsx(lA,{}),r.jsx(ZC,{tradingType:e})]})}),r.jsxs(k.TabPanels,{className:"dtw-flex-1 dtw-overflow-y-auto",children:[r.jsx(RA,{}),r.jsx(XC,{})]})]}),r.jsxs(MA,{children:[r.jsx(yS,{type:$.ERROR_NOTIFICATION}),r.jsx(jA,{type:$.TERMS_OF_USE}),r.jsx(BA,{type:$.HIGH_SLIPPAGE}),r.jsx(GA,{type:$.TOKEN_SELECT,searchQuery:""}),r.jsx(KA,{type:$.POOL_SELECT,searchQuery:""}),r.jsx(pS,{type:$.TRADING}),r.jsx(XS,{type:$.LIMIT_SELLS}),r.jsx(cC,{type:$.LIMIT_ORDER_WITHDRAW}),r.jsx(vC,{type:$.WITHDRAW_STEPPER})]})]})},aE=({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-overlay-bg":`${t?.component?.overlay?.color?.colorBg??"var(--panel-popup-bg)"}`,"--panel-popup-border-color":`${t?.component?.popup?.color?.colorBorder??"var(--panel-secondary-content-color)"}`,"--panel-popup-font-size":`${t?.component?.popup?.size?.fontSize??t?.global?.size?.fontSizeXs??"12px"}`,"--panel-popup-list-header-bg":`${t?.component?.popupList?.color?.headerBg??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}),sE=({children:e,config:t,theme:n,components:a,translation:s,className:o})=>r.jsx(zf,{config:s,children:r.jsx(aE,{config:n,className:o,children:r.jsx(Si,{config:t,children:r.jsx(lv,{config:a,children:r.jsx(Kf,{children:e})})})})}),rE=e=>r.jsx(sE,{...e,children:r.jsx(nE,{})}),oE="ref",iE=({vaultAddress:e,userAddress:t,query:n,logEvent:a,tagInvestorByReferrer:s})=>{const[o,i]=pa("localStorage",Ct.REFERRER,""),[l,c]=pa("localStorage",Ct.REF_POOL,""),d=n[oE];u.useEffect(()=>{!d||typeof d!="string"||ee(e)||localStorage.getItem(Ct.REFERRER)||(i(d),c(e),a?.())},[e,d,c,i,a]),u.useEffect(()=>{if(!t||!o||l.toLowerCase()!==e.toLowerCase())return;(async()=>{try{await s({investorAddress:t,poolAddress:l,referrerAddress:o})}catch(m){console.error("[core-ui-kit]: Error on tagging investor by referrer",m)}})()},[l,o,s,t,e])},lE=({title:e,children:t,className:n,titleClassName:a})=>r.jsxs("div",{className:C("dtw-relative dtw-flex dtw-flex-col dtw-gap-4 dtw-rounded-xl dtw-p-3 dtw-w-full dtw-bg-[var(--limit-order-background-color)]",n),children:[e&&r.jsx("h1",{className:C("dtw-mb-6 !dtw-text-[length:var(--limit-order-font-size-lg)] dtw-drop-shadow-md dtw-text-[color:var(--limit-order-secondary-content-color)]",a),children:e}),r.jsx("div",{className:"dtw-w-full",children:t})]}),cE=({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:C("dtw-relative dtw-z-20 dtw-overflow-y-auto theme-scrollbar",a),onClose:t,children:r.jsx(s,{children:r.jsxs(r.Fragment,{children:[r.jsx(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})})]})})})},dE=()=>{const e=He(),{isModalOpen:t,pendingTransaction:n}=ge(),{setIsModalOpen:a}=zt(),s=u.useCallback(()=>{a(!0),e?.(X.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}},pE=({children:e,themeConfig:t})=>{const{onOpen:n,isModalOpen:a,onClose:s,isTransactionPending:o}=dE(),i=he();jl();const l=u.useCallback(({children:c})=>r.jsx(Bl,{config:t,children:c}),[t]);return r.jsxs(r.Fragment,{children:[e({onClick:n,isTransactionPending:o}),r.jsx(cE,{isOpen:a,onClose:s,ThemeProvider:l,className:"limit-order",children:r.jsx(lE,{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(Rl,{onClose:s})})})]})},uE=({children:e,vaultChainId:t,vaultAddress:n,pricingAsset:a,translation:s,minAmountInUsd:o=za,actions:i,themeConfig:l,isModalOpen:c})=>{const{isFetched:d,upperLimitPrice:p,lowerLimitPrice:m}=Ll({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(Cl,{config:s,children:r.jsx(Nl,{initialState:y,actions:i,children:r.jsx(pE,{themeConfig:l,children:e})})}):null};Object.defineProperty(exports,"useBlockNumber",{enumerable:!0,get:()=>E.useBlockNumber});Object.defineProperty(exports,"useConnect",{enumerable:!0,get:()=>E.useConnect});Object.defineProperty(exports,"useDisconnect",{enumerable:!0,get:()=>E.useDisconnect});Object.defineProperty(exports,"usePublicClient",{enumerable:!0,get:()=>E.usePublicClient});Object.defineProperty(exports,"useReadContract",{enumerable:!0,get:()=>E.useReadContract});Object.defineProperty(exports,"useReadContracts",{enumerable:!0,get:()=>E.useReadContracts});Object.defineProperty(exports,"useSendTransaction",{enumerable:!0,get:()=>E.useSendTransaction});Object.defineProperty(exports,"useWaitForTransactionReceipt",{enumerable:!0,get:()=>E.useWaitForTransactionReceipt});Object.defineProperty(exports,"useWalletClient",{enumerable:!0,get:()=>E.useWalletClient});Object.defineProperty(exports,"useWriteContract",{enumerable:!0,get:()=>E.useWriteContract});Object.defineProperty(exports,"arbitrum",{enumerable:!0,get:()=>h.arbitrum});Object.defineProperty(exports,"base",{enumerable:!0,get:()=>h.base});Object.defineProperty(exports,"optimism",{enumerable:!0,get:()=>h.optimism});Object.defineProperty(exports,"polygon",{enumerable:!0,get:()=>h.polygon});Object.defineProperty(exports,"decodeErrorResult",{enumerable:!0,get:()=>D.decodeErrorResult});Object.defineProperty(exports,"encodeFunctionData",{enumerable:!0,get:()=>D.encodeFunctionData});Object.defineProperty(exports,"erc20Abi",{enumerable:!0,get:()=>D.erc20Abi});Object.defineProperty(exports,"formatEther",{enumerable:!0,get:()=>D.formatEther});Object.defineProperty(exports,"formatUnits",{enumerable:!0,get:()=>D.formatUnits});Object.defineProperty(exports,"hexToString",{enumerable:!0,get:()=>D.hexToString});Object.defineProperty(exports,"trim",{enumerable:!0,get:()=>D.trim});exports.ALCHEMY_RPC_URL_MAP=sc;exports.AaveLendingPoolAbi=Jn;exports.AddressZero=I;exports.BRIDGED_TOKENS_SYMBOLS=Ea;exports.BRIDGED_USDC_ARBITRUM=ga;exports.BRIDGED_USDC_OPTIMISM=Ta;exports.BRIDGED_USDC_POLYGON=xa;exports.CBBTC_BASE=Ur;exports.CBETH_BASE=Mc;exports.CHAIN_MAP=ac;exports.CHAIN_NATIVE_TOKENS=Ze;exports.COMPLETE_WITHDRAW_ACTIONS=Ia;exports.CURRENCY_SYMBOL_MAP=fr;exports.ConfigProvider=Si;exports.DAI_OPTIMISM=Gr;exports.DAI_POLYGON=Kr;exports.DEFAULT_DEPOSIT_METHOD=Ql;exports.DEFAULT_DEPOSIT_SLIPPAGE=mn;exports.DEFAULT_DEPOSIT_SLIPPAGE_SCALE=Jl;exports.DEFAULT_ERROR_MESSAGE=Rr;exports.DEFAULT_LOCK_TIME=dr;exports.DEFAULT_MULTI_ASSET_WITHDRAW_METHOD=yr;exports.DEFAULT_POLLING_INTERVAL=nt;exports.DEFAULT_PRECISION=P;exports.DEFAULT_PROMISE_TIMEOUT_MS=br;exports.DEFAULT_SIMULATION_ERROR=ta;exports.DEFAULT_WITHDRAW_SLIPPAGE=ur;exports.EMPTY_POOL_CONFIG=pr;exports.EasySwapperV2Abi=fe;exports.EstimationError=ut;exports.GAS_ESTIMATION_ERROR=ea;exports.GAS_LIMIT_BUFFER_COEFF=gr;exports.GET_ALL_LIMIT_ORDER_IDS_FUNCTION_NAME=Ua;exports.GMX_MARKET_ASSETS=no;exports.GMX_MARKET_ASSETS_MAP=ae;exports.LIMIT_ORDER_READ_FUNCTION_NAME=_n;exports.LINK_ARBITRUM=Rc;exports.LINK_OPTIMISM=Wc;exports.LimitOrderAbi=yn;exports.LimitOrderModal=uE;exports.MANAGER_FEE_DENOMINATOR=me;exports.MAX_GAS_LIMIT_MAP=Xt;exports.MULTI_ASSET_TOKEN=sn;exports.MaxUint256=Fe;exports.NATIVE_TOKEN_DEPOSIT_GAS_LIMIT=hr;exports.PAXG_POLYGON=Hc;exports.PYTH_API_LINK=Yc;exports.PoolFactoryAbi=Ue;exports.PoolLogicAbi=Te;exports.PoolManagerLogicAbi=_e;exports.RETH_BASE=Jt;exports.RewardDistributionAbi=Or;exports.SETH_OPTIMISM=Fc;exports.SHORTEN_POLLING_INTERVAL=We;exports.SIMULATION_TIMEOUT_ERROR=Lr;exports.SUSD_OPTIMISM=$c;exports.TBTC_ARBITRUM=Dc;exports.TBTC_BASE=jc;exports.TBTC_OPTIMISM=Uc;exports.TBTC_POLYGON=Gc;exports.TRADING_LOG_EVENT_PARAM=be;exports.TRADING_PANEL_LOG_EVENT=X;exports.TradingPanelProvider=Sd;exports.TradingWidget=rE;exports.USDCBC_BASE=Lc;exports.USDC_ARBITRUM=le;exports.USDC_BASE=Wr;exports.USDC_MAINNET=Qr;exports.USDC_OPTIMISM=zr;exports.USDC_POLYGON=Vr;exports.USDT_ARBITRUM=Oc;exports.USDT_MAINNET=Xr;exports.USDT_OPTIMISM=Hr;exports.USDT_POLYGON=Yr;exports.WBNB_ARBITRUM=kc;exports.WBTC_ARBITRUM=Me;exports.WBTC_BY_CHAIN_ID=Jr;exports.WBTC_MAINNET=Ca;exports.WBTC_OPTIMISM=Je;exports.WBTC_POLYGON=Aa;exports.WETH_ARBITRUM=It;exports.WETH_BASE=ba;exports.WETH_BY_CHAIN_ID=Zr;exports.WETH_MAINNET=Sa;exports.WETH_OPTIMISM=fa;exports.WETH_POLYGON=va;exports.WPOL_POLYGON=qr;exports.WSOL_ARBITRUM=Pc;exports.WSTETH_ARBITRUM=Nc;exports.WSTETH_BASE=Bc;exports.WSTETH_OPTIMISM=zc;exports.XAUT_MAINNET=Vc;exports.clientSide=hn;exports.commify=cd;exports.contractsAbisMap=kr;exports.contractsAddressesMap=Pr;exports.formatByCurrency=tn;exports.formatNumberToLimitedDecimals=ze;exports.formatNumeratorToPercentage=xt;exports.formatPercentage=Ot;exports.formatToUsd=te;exports.getContractAbiById=ao;exports.getContractAddressById=z;exports.getConventionalTokenPriceDecimals=_t;exports.getErrorMessage=si;exports.getLimitOrderId=Ol;exports.getNativeTokenInvestableBalance=lo;exports.getPercent=De;exports.getPoolFraction=aa;exports.isAaveLendAndBorrowAsset=na;exports.isEqualAddress=H;exports.isErrorWithMessage=ni;exports.isFmpAirdropVaultAddress=wo;exports.isNativeToken=wn;exports.isZeroAddress=ee;exports.normalizeNumber=Be;exports.removeInsignificantTrailingZeros=sa;exports.shiftBy=rn;exports.shortenAddress=so;exports.toErrorWithMessage=ai;exports.transformAddressForAnalytics=Da;exports.useAccount=M;exports.useAddPoolConfig=Pd;exports.useAssetPrice=de;exports.useAvailableManagerFee=fi;exports.useBalance=Oa;exports.useBrowserStorage=pa;exports.useCheckWhitelist=ui;exports.useCompleteWithdrawSwapQuotes=yt;exports.useCompleteWithdrawTrackedAssets=ue;exports.useContractFunction=ve;exports.useContractPoolComposition=mi;exports.useContractReadErrorLogging=Wa;exports.useContractReadsErrorLogging=In;exports.useCustomDepositTokensPerChain=Do;exports.useDebounce=ss;exports.useDepositLockTime=dl;exports.useDepositProjectedEarnings=el;exports.useEasySwapperTrackedAssets=qi;exports.useExchangeRate=Ui;exports.useFlatmoneyPointsUserBalances=Pf;exports.useGasPrice=ri;exports.useHasSingleAssetWithdrawBlockers=qa;exports.useInvalidateLimitOrderQuery=Ml;exports.useInvalidateOnBlock=dn;exports.useInvalidatePoolContractData=wi;exports.useInvalidateTradingQueries=Dn;exports.useIsBatchContractWritesSupported=Nn;exports.useIsCompleteWithdrawStep=Qe;exports.useIsDepositBlocked=Nf;exports.useIsDepositTradingPanelType=Ve;exports.useIsDhedgeVaultConnected=Rt;exports.useIsInsufficientBalance=kt;exports.useIsPoolAddress=Rd;exports.useIsTradingEnabled=ts;exports.useIsWalletConnected=Md;exports.useManagerLogicAddress=Ga;exports.useNetwork=Se;exports.useOnSimulateTransaction=Eo;exports.useOnTokenSelector=Co;exports.useOnTradingTypeChange=ls;exports.useOnTransactionError=xo;exports.useOnTransactionEstimationError=gn;exports.useOnTransactionSuccess=So;exports.usePoolComposition=mt;exports.usePoolCompositionWithFraction=yi;exports.usePoolDynamic=oe;exports.usePoolFees=On;exports.usePoolManagerDynamic=jt;exports.usePoolManagerLogicData=Va;exports.usePoolManagerStatic=Mt;exports.usePoolStatic=Lt;exports.usePoolTokenPrice=pe;exports.useProjectedEarningsCore=Ji;exports.useRawAssetPrice=es;exports.useReceiveTokenInput=O;exports.useReferralProgram=iE;exports.useSendTokenInput=N;exports.useSetPoolAddress=Cd;exports.useSetTradingType=Dd;exports.useStaticCallQuery=gT;exports.useTokenAllowance=bn;exports.useTradingPanelActions=W;exports.useTradingPanelLogger=He;exports.useTradingPanelModal=K;exports.useTradingPanelPoolAddress=Io;exports.useTradingPanelPoolConfig=f;exports.useTradingPanelPoolConfigs=at;exports.useTradingPanelPoolFallbackData=Ge;exports.useTradingPanelSettings=Q;exports.useTradingPanelState=J;exports.useTradingPanelTransactions=re;exports.useTradingPanelType=ye;exports.useTradingResultHandling=Wi;exports.useTradingSettleHandler=Ye;exports.useUpdateCustomDepositTokensPerChain=kd;exports.useUpdatePoolConfig=Od;exports.useUpdatePoolFallbackData=vo;exports.useUpdateReceiveTokenInput=Id;exports.useUpdateSendTokenInput=Ed;exports.useUpdateTradingModal=Nd;exports.useUpdateTradingSettings=_d;exports.useUserBalancesDynamic=pi;exports.useUserLimitOrder=Ht;exports.useUserTokenBalance=we;exports.useUserVaultBalance=Ti;exports.useUserVaultsBalances=bi;exports.useVaultContractData=Of;exports.useVaultDepositTokens=Mn;exports.useVaultSupplyCap=vi;exports.useVaultVestedPoints=hi;exports.validateLoggerEventParams=od;
|
|
1
|
+
"use strict";var Hl=Object.defineProperty;var Gl=(e,t,n)=>t in e?Hl(e,t,{enumerable:!0,configurable:!0,writable:!0,value:n}):e[t]=n;var Le=(e,t,n)=>Gl(e,typeof t!="symbol"?t+"":t,n);Object.defineProperty(exports,Symbol.toStringTag,{value:"Module"});const r=require("react/jsx-runtime"),R=require("@headlessui/react"),E=require("wagmi"),u=require("react"),h=require("wagmi/chains"),Et=require("date-fns"),D=require("viem"),T=require("bignumber.js"),Vl=require("ts-custom-error"),tt=require("@tanstack/react-query"),se=require("@heroicons/react/24/outline"),C=require("classnames"),ql=require("react-popper-tooltip"),Yl=require("wagmi/connectors"),Se=require("@heroicons/react/24/solid"),Jn=require("@heroicons/react/16/solid"),an=require("@heroicons/react/20/solid"),B=()=>{const{address:e,status:t,connector:n,isConnected:a}=E.useAccount();return{account:a?e:void 0,status:t,connector:n,providerName:n?.name,isConnected:a}},_="0x0000000000000000000000000000000000000000",Ue=BigInt("0xffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff"),k=18,Kl="1000000000000000000",Ql=59e3,nt=3e4,ze=15e3,ir=5e3,lr=400,cr=lr*1.2,dr=Et.formatDuration({hours:24}),pr={address:_,symbol:"",chainId:h.optimism.id,depositParams:{customTokens:[]},withdrawParams:{customTokens:[]},deprecated:!1},Xl="deposit",ur=1,yn=0,Zl=.5,mr=.02,Jl=.75,ec=[yn],yr="withdrawSafe",wr="initWithdrawal",tc="unrollAndClaim",nc="completeWithdrawal",hr=3e7,gr=1.25,ye=1e4,fr=13e3,Tr=3,wa=2e4,ac=15e3,sc={[h.mainnet.id]:h.mainnet,[h.polygon.id]:h.polygon,[h.optimism.id]:h.optimism,[h.arbitrum.id]:h.arbitrum,[h.base.id]:h.base},Ze={[h.mainnet.id]:{nativeTokenSymbol:"ETH",wrappedNativeTokenName:"WETH",address:"0xc02aaa39b223fe8d0a0e5c4f27ead9083c756cc2",decimals: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}},Xt={[h.mainnet.id]:299e5,[h.polygon.id]:299e5,[h.optimism.id]:299e5,[h.arbitrum.id]:299e5,[h.base.id]:299e5},rc={[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"},br={USD:"$",ETH:"Ξ",BTC:"₿"},oc={USD:2,ETH:4,BTC:6},ic=["USDC","USDT"],X={INVEST_INPUT_FOCUS:"invest_input_focus",APPROVED_TOKEN:"approved_token",DEPOSIT:"deposit",MULTI_ASSET_WITHDRAW:"multi_asset_withdraw",SINGLE_ASSET_WITHDRAW:"single_asset_unroll",SINGLE_ASSET_WITHDRAW_AND_CLAIM:"single_asset_unroll_and_claim",CLAIM:"claim_unrolled_assets",SWAP:"swap_unrolled_assets",WITHDRAWAL:"withdrawal",TRADING_SETTINGS_OPENED:"trading_settings_opened",INFINITE_ALLOWANCE_CHANGE:"infinite_allowance_change",BATCH_TRANSACTIONS_CHANGE:"batch_transactions_change",CREATE_LIMIT_SELL_ORDER:"limit_order_create",OPEN_LIMIT_SELL_VIEW:"open_limit_sell_view",LIMIT_ORDER_WITHDRAW:"limit_order_withdraw",LIMIT_ORDER_WITHDRAW_DELETE:"limit_order_withdraw_delete"},lc={approve:[X.APPROVED_TOKEN],deposit:[X.DEPOSIT],multi_withdraw:[X.WITHDRAWAL,X.MULTI_ASSET_WITHDRAW],single_withdraw:[X.WITHDRAWAL,X.SINGLE_ASSET_WITHDRAW],single_withdraw_and_claim:[X.WITHDRAWAL,X.SINGLE_ASSET_WITHDRAW_AND_CLAIM],claim:[X.CLAIM],swap:[X.SWAP],create_limit_sell_order:[X.CREATE_LIMIT_SELL_ORDER],limit_order_withdraw:[X.LIMIT_ORDER_WITHDRAW],delete_limit_order_withdraw:[X.LIMIT_ORDER_WITHDRAW_DELETE]},Te={IS_INFINITE:{NAME:"is_infinite",TYPE:"number"},SYMBOL:{NAME:"symbol",TYPE:"string"},CHAIN_ID:{NAME:"chain_id",TYPE:"number"},ADDRESS:{NAME:"address",TYPE:"string"},IS_BATCH_TRANSACTIONS_ENABLED:{NAME:"is_batch_enabled",TYPE:"number"},SOURCE:{NAME:"source",TYPE:"string"}};var pe=(e=>(e.ETH="ETH",e.MAINNET="MAINNET",e.POLYGON="POLYGON",e.OE="OPTIMISM",e.ARBI="ARBITRUM",e.BASE="BASE",e))(pe||{});const gt=process.env.NEXT_PUBLIC_INFURA_API_KEY;h.arbitrum.id+"",`${gt}`,h.optimism.id+"",`${gt}`,h.polygon.id+"",`${gt}`,h.base.id+"",`${gt}`,h.mainnet.id+"",`${gt}`;const cc={[h.arbitrum.id]:{...h.arbitrum,name:"Arbitrum",iconPath:"/icons/arbitrum-network.svg",chainId:h.arbitrum.id,shortName:"ARB",blockchainCode:pe.ARBI},[h.optimism.id]:{...h.optimism,name:"Optimism",iconPath:"/icons/optimism-network.svg",chainId:h.optimism.id,shortName:"OP",blockchainCode:pe.OE},[h.polygon.id]:{...h.polygon,chainId:h.polygon.id,iconPath:"/icons/polygon-network.svg",shortName:"POLY",blockchainCode:pe.POLYGON},[h.base.id]:{...h.base,chainId:h.base.id,iconPath:"/icons/base-network.svg",shortName:"BASE",blockchainCode:pe.BASE},[h.mainnet.id]:{...h.mainnet,chainId:h.mainnet.id,iconPath:"/icons/ethereum-network.svg",shortName:"ETHEREUM",blockchainCode:pe.ETH}};pe.ETH+"",h.mainnet.id,pe.MAINNET+"",h.mainnet.id,pe.POLYGON+"",h.polygon.id,pe.OE+"",h.optimism.id,pe.ARBI+"",h.arbitrum.id,pe.BASE+"",h.base.id;h.mainnet.id+"",h.optimism.id+"",h.polygon.id+"",h.arbitrum.id+"",h.base.id+"";const ha="0x0000000000000000000000000000000000000000";BigInt("0xffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff");h.mainnet.id+"",BigInt(100),h.optimism.id+"",BigInt(600),h.polygon.id+"",BigInt(600),h.base.id+"",BigInt(600),h.arbitrum.id+"",BigInt(5300);const dc="0x96D33bCF84DdE326014248E2896F79bbb9c13D6d",vr="0xbDd84294bC8299861A2121F749A25EFEb7168a32",pc="0x87870Bca3F3fD6335C3F4ce8392D69350B4fA4E2",uc="0xffFb5fB14606EB3a548C113026355020dDF27535",mc="0x794a61358D6845594F94dc1DB02A252b5b4814aD",xr="0xA5679C4272A056Bb83f039961fae7D99C48529F5",Ar="0x26a687e8244f1866E9Aa2D400c8b9957Aa8e6Ad4",yc="0x49Afe3abCf66CF09Fab86cb1139D8811C8afe56F",Sr="0xf067575Eb60c7587C11e867907AA7284833704d1",wc="0x59525b9b23adc475ef91d98dae06b568ba574ce5",hc="0xa907504d7a4c415b4e6e1d0866d96afe8202f0e5",gc="0x1849324228d852a67eb7443e42d967e480ffe95d",fc="0xa238dd80c259a72e81d7e4664a9801593f98d1c5",Cr="0xFcBEc28c43E356693971a24bf3F2Fd7D965E2ebA",Tc="0x07e144e336fcc3fe928a8a2a5714da64354c1aab",bc="0x5e61a079A178f0E5784107a4963baAe0c5a680c6",vc="0x794a61358D6845594F94dc1DB02A252b5b4814aD",Er="0x2Ed1bd7f66e47113672f3870308b5E867C5bb743",Ir="0x3bFE2a472d2964Ea4070725b7Fb0A868b3f08b63",xc="0xfdc7b8bFe0DD3513Cc669bB8d601Cb83e2F69cB0",Ac="0x8dFf5E27EA6b7AC08EbFdf9eB090F32ee9a30fcf",Sc="0x794a61358D6845594F94dc1DB02A252b5b4814aD",_r="0x45b90480D6F643dE2f128db091A357C3c90399f2",Dr="0xB71410736d2C8F2DAf30dA9D332dA10534d2624d",Nr="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 ea=[{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"}],Cc=[{inputs:[{internalType:"address",name:"_pool",type:"address"},{internalType:"uint256",name:"_poolTokenAmount",type:"uint256"},{internalType:"uint256",name:"_slippageTolerance",type:"uint256"}],name:"calculateSwapDataParams",outputs:[{components:[{components:[{internalType:"address",name:"asset",type:"address"},{internalType:"uint256",name:"amount",type:"uint256"}],internalType:"struct ISwapDataConsumingGuard.AssetStructure[]",name:"srcData",type:"tuple[]"},{components:[{internalType:"address",name:"asset",type:"address"},{internalType:"uint256",name:"amount",type:"uint256"}],internalType:"struct ISwapDataConsumingGuard.AssetStructure",name:"dstData",type:"tuple"}],internalType:"struct ISwapDataConsumingGuard.SwapDataParams",name:"swapDataParams",type:"tuple"}],stateMutability:"nonpayable",type:"function"}],He=[{inputs:[{internalType:"address",name:"asset",type:"address"}],name:"getAssetPrice",outputs:[{internalType:"uint256",name:"price",type:"uint256"}],stateMutability:"view",type:"function"},{inputs:[{internalType:"address",name:"",type:"address"}],name:"isPool",outputs:[{internalType:"bool",name:"",type:"bool"}],stateMutability:"view",type:"function"},{inputs:[{internalType:"address",name:"extContract",type:"address"}],name:"getAssetGuard",outputs:[{internalType:"address",name:"guard",type:"address"}],stateMutability:"view",type:"function"},{inputs:[{internalType:"address",name:"extContract",type:"address"}],name:"getContractGuard",outputs:[{internalType:"address",name:"guard",type:"address"}],stateMutability:"view",type:"function"}],be=[{inputs:[{internalType:"address",name:"owner",type:"address"},{internalType:"address",name:"spender",type:"address"}],name:"allowance",outputs:[{internalType:"uint256",name:"",type:"uint256"}],stateMutability:"view",type:"function"},{inputs:[{internalType:"address",name:"spender",type:"address"},{internalType:"uint256",name:"amount",type:"uint256"}],name:"approve",outputs:[{internalType:"bool",name:"",type:"bool"}],stateMutability:"nonpayable",type:"function"},{inputs:[{internalType:"address",name:"account",type:"address"}],name:"balanceOf",outputs:[{internalType:"uint256",name:"",type:"uint256"}],stateMutability:"view",type:"function"},{inputs:[{internalType:"uint256",name:"fundValue",type:"uint256"}],name:"calculateAvailableManagerFee",outputs:[{internalType:"uint256",name:"fee",type:"uint256"}],stateMutability:"view",type:"function"},{inputs:[],name:"decimals",outputs:[{internalType:"uint8",name:"",type:"uint8"}],stateMutability:"view",type:"function"},{inputs:[{internalType:"address",name:"_asset",type:"address"},{internalType:"uint256",name:"_amount",type:"uint256"}],name:"deposit",outputs:[{internalType:"uint256",name:"liquidityMinted",type:"uint256"}],stateMutability:"nonpayable",type:"function"},{inputs:[{internalType:"address",name:"sender",type:"address"}],name:"getExitRemainingCooldown",outputs:[{internalType:"uint256",name:"remaining",type:"uint256"}],stateMutability:"view",type:"function"},{inputs:[],name:"getFundSummary",outputs:[{components:[{internalType:"string",name:"name",type:"string"},{internalType:"uint256",name:"totalSupply",type:"uint256"},{internalType:"uint256",name:"totalFundValue",type:"uint256"},{internalType:"address",name:"manager",type:"address"},{internalType:"string",name:"managerName",type:"string"},{internalType:"uint256",name:"creationTime",type:"uint256"},{internalType:"bool",name:"privatePool",type:"bool"},{internalType:"uint256",name:"performanceFeeNumerator",type:"uint256"},{internalType:"uint256",name:"managerFeeNumerator",type:"uint256"},{internalType:"uint256",name:"managerFeeDenominator",type:"uint256"},{internalType:"uint256",name:"exitFeeNumerator",type:"uint256"},{internalType:"uint256",name:"exitFeeDenominator",type:"uint256"},{internalType:"uint256",name:"entryFeeNumerator",type:"uint256"}],internalType:"struct PoolLogic.FundSummary",name:"",type:"tuple"}],stateMutability:"view",type:"function"},{inputs:[],name:"mintManagerFee",outputs:[],stateMutability:"nonpayable",type:"function"},{inputs:[],name:"name",outputs:[{internalType:"string",name:"",type:"string"}],stateMutability:"view",type:"function"},{inputs:[],name:"poolManagerLogic",outputs:[{internalType:"address",name:"",type:"address"}],stateMutability:"view",type:"function"},{inputs:[],name:"symbol",outputs:[{internalType:"string",name:"",type:"string"}],stateMutability:"view",type:"function"},{inputs:[],name:"tokenPrice",outputs:[{internalType:"uint256",name:"price",type:"uint256"}],stateMutability:"view",type:"function"},{inputs:[],name:"totalSupply",outputs:[{internalType:"uint256",name:"",type:"uint256"}],stateMutability:"view",type:"function"},{inputs:[{internalType:"uint256",name:"_fundTokenAmount",type:"uint256"},{components:[{internalType:"address",name:"supportedAsset",type:"address"},{internalType:"bytes",name:"withdrawData",type:"bytes"},{internalType:"uint256",name:"slippageTolerance",type:"uint256"}],internalType:"struct IPoolLogic.ComplexAsset[]",name:"_complexAssetsData",type:"tuple[]"}],name:"withdrawSafe",outputs:[],stateMutability:"nonpayable",type:"function"},{inputs:[{internalType:"uint256",name:"_fundTokenAmount",type:"uint256"},{internalType:"uint256",name:"_slippageTolerance",type:"uint256"}],name:"withdrawSafe",outputs:[],stateMutability:"nonpayable",type:"function"}],Ec=[{type:"tuple[]",components:[{type:"address",name:"asset"},{type:"uint256",name:"amount"},{type:"tuple",name:"swapData",components:[{type:"bytes32",name:"routerKey"},{type:"bytes",name:"txData"}]}]}],Ic=[{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"}],Or=[{anonymous:!1,inputs:[{components:[{internalType:"address",name:"pool",type:"address"},{internalType:"uint256",name:"amount",type:"uint256"}],indexed:!1,internalType:"struct RewardDistribution.RewardSummary[]",name:"distributedRewards",type:"tuple[]"},{indexed:!1,internalType:"uint256",name:"totalDistributedRewards",type:"uint256"}],name:"RewardsDistribution",type:"event"},{inputs:[],name:"calculateEligiblePoolsRewards",outputs:[{components:[{internalType:"address",name:"pool",type:"address"},{internalType:"uint256",name:"amount",type:"uint256"}],internalType:"struct RewardDistribution.RewardSummary[]",name:"rewards",type:"tuple[]"},{internalType:"uint256",name:"totalRewardsToDistribute",type:"uint256"}],stateMutability:"view",type:"function"},{inputs:[],name:"getEligiblePoolsWithTvl",outputs:[{internalType:"uint256",name:"tvl",type:"uint256"},{components:[{internalType:"address",name:"pool",type:"address"},{internalType:"uint256",name:"tvl",type:"uint256"}],internalType:"struct RewardDistribution.EligiblePool[]",name:"eligiblePools",type:"tuple[]"}],stateMutability:"view",type:"function"},{inputs:[],name:"getRewardsAPY",outputs:[{internalType:"uint256",name:"apy",type:"uint256"}],stateMutability:"view",type:"function"},{inputs:[],name:"getWhitelistedPools",outputs:[{internalType:"address[]",name:"",type:"address[]"}],stateMutability:"view",type:"function"},{inputs:[],name:"lastDistributionTime",outputs:[{internalType:"uint256",name:"",type:"uint256"}],stateMutability:"view",type:"function"},{inputs:[],name:"rewardAmountPerSecond",outputs:[{internalType:"uint256",name:"",type:"uint256"}],stateMutability:"view",type:"function"},{inputs:[],name:"rewardToken",outputs:[{internalType:"contract IERC20",name:"",type:"address"}],stateMutability:"view",type:"function"}],Zt=[{inputs:[{internalType:"address",name:"account",type:"address"}],name:"balanceOf",outputs:[{internalType:"uint256",name:"",type:"uint256"}],stateMutability:"view",type:"function"},{inputs:[{internalType:"address",name:"account",type:"address"}],name:"getUnlockTax",outputs:[{internalType:"uint256",name:"unlockTax",type:"uint256"}],stateMutability:"view",type:"function"},{inputs:[{internalType:"address",name:"account",type:"address"}],name:"lockedBalance",outputs:[{internalType:"uint256",name:"amount",type:"uint256"}],stateMutability:"view",type:"function"},{inputs:[{internalType:"address",name:"account",type:"address"}],name:"unlockTime",outputs:[{internalType:"uint256",name:"unlockTime",type:"uint256"}],stateMutability:"view",type:"function"}],_c=[{inputs:[],name:"EmptyPayload",type:"error"},{inputs:[],name:"FailedInnerCall",type:"error"},{inputs:[{internalType:"bytes",name:"returnData",type:"bytes"}],name:"FailedToApproveParaswap",type:"error"},{inputs:[{internalType:"contract IERC20",name:"destToken",type:"address"},{internalType:"uint256",name:"receivedAmount",type:"uint256"},{internalType:"uint256",name:"minAmount",type:"uint256"}],name:"InsufficientAmountReceived",type:"error"},{inputs:[{internalType:"bytes32",name:"routerKey",type:"bytes32"}],name:"InvalidAggregator",type:"error"},{inputs:[],name:"InvalidNativeTokenTransferEncoding",type:"error"},{inputs:[],name:"NativeTokenSentWithoutNativeSwap",type:"error"},{inputs:[{internalType:"uint256",name:"expectedAmount",type:"uint256"},{internalType:"uint256",name:"sentAmount",type:"uint256"}],name:"NotEnoughNativeTokenSent",type:"error"},{inputs:[{internalType:"address",name:"token",type:"address"}],name:"SafeERC20FailedOperation",type:"error"},{inputs:[{internalType:"address",name:"router",type:"address"},{components:[{internalType:"contract IERC20",name:"token",type:"address"},{internalType:"uint256",name:"amount",type:"uint256"},{components:[{internalType:"bytes32",name:"routerKey",type:"bytes32"},{internalType:"bytes",name:"swapData",type:"bytes"}],internalType:"struct AggregatorData",name:"aggregatorData",type:"tuple"}],internalType:"struct SrcTokenSwapDetails",name:"srcTokenSwapDetails",type:"tuple"},{internalType:"bytes",name:"returnData",type:"bytes"}],name:"SwapFailed",type:"error"},{inputs:[{internalType:"enum Permit2TransferType",name:"transferType",type:"uint8"}],name:"UnsupportedPermit2Method",type:"error"},{inputs:[],name:"UnsupportedTokenTransferMethod",type:"error"}],ve=[..._c,{anonymous:!1,inputs:[{indexed:!1,internalType:"address",name:"limitOrderVault",type:"address"},{indexed:!0,internalType:"address",name:"depositor",type:"address"}],name:"LimitOrderVaultCreated",type:"event"},{anonymous:!1,inputs:[{indexed:!1,internalType:"address",name:"withdrawalVault",type:"address"},{indexed:!0,internalType:"address",name:"depositor",type:"address"}],name:"WithdrawalCompleted",type:"event"},{anonymous:!1,inputs:[{indexed:!1,internalType:"address",name:"withdrawalVault",type:"address"},{indexed:!0,internalType:"address",name:"depositor",type:"address"},{indexed:!1,internalType:"address",name:"dHedgeVault",type:"address"},{indexed:!1,internalType:"uint256",name:"amountWithdrawn",type:"uint256"}],name:"WithdrawalInitiated",type:"event"},{anonymous:!1,inputs:[{indexed:!0,internalType:"address",name:"depositor",type:"address"},{indexed:!0,internalType:"address",name:"dHedgeVault",type:"address"},{indexed:!1,internalType:"contract IERC20",name:"vaultDepositToken",type:"address"},{indexed:!1,internalType:"contract IERC20",name:"userDepositToken",type:"address"},{indexed:!1,internalType:"uint256",name:"amountReceived",type:"uint256"},{indexed:!1,internalType:"uint256",name:"lockupTime",type:"uint256"}],name:"ZapDepositCompleted",type:"event"},{inputs:[{components:[{components:[{internalType:"contract IERC20",name:"token",type:"address"},{internalType:"uint256",name:"amount",type:"uint256"},{components:[{internalType:"bytes32",name:"routerKey",type:"bytes32"},{internalType:"bytes",name:"swapData",type:"bytes"}],internalType:"struct ISwapper.AggregatorData",name:"aggregatorData",type:"tuple"}],internalType:"struct ISwapper.SrcTokenSwapDetails[]",name:"srcData",type:"tuple[]"},{components:[{internalType:"contract IERC20",name:"destToken",type:"address"},{internalType:"uint256",name:"minDestAmount",type:"uint256"}],internalType:"struct ISwapper.DestData",name:"destData",type:"tuple"}],internalType:"struct IWithdrawalVault.MultiInSingleOutData",name:"_swapData",type:"tuple"},{internalType:"uint256",name:"_expectedDestTokenAmount",type:"uint256"}],name:"completeLimitOrderWithdrawal",outputs:[{internalType:"uint256",name:"destTokenAmount",type:"uint256"}],stateMutability:"nonpayable",type:"function"},{inputs:[],name:"completeLimitOrderWithdrawal",outputs:[],stateMutability:"nonpayable",type:"function"},{inputs:[{internalType:"address",name:"_user",type:"address"},{components:[{components:[{internalType:"contract IERC20",name:"token",type:"address"},{internalType:"uint256",name:"amount",type:"uint256"},{components:[{internalType:"bytes32",name:"routerKey",type:"bytes32"},{internalType:"bytes",name:"swapData",type:"bytes"}],internalType:"struct ISwapper.AggregatorData",name:"aggregatorData",type:"tuple"}],internalType:"struct ISwapper.SrcTokenSwapDetails[]",name:"srcData",type:"tuple[]"},{components:[{internalType:"contract IERC20",name:"destToken",type:"address"},{internalType:"uint256",name:"minDestAmount",type:"uint256"}],internalType:"struct ISwapper.DestData",name:"destData",type:"tuple"}],internalType:"struct IWithdrawalVault.MultiInSingleOutData",name:"_swapData",type:"tuple"},{internalType:"uint256",name:"_expectedDestTokenAmount",type:"uint256"}],name:"completeLimitOrderWithdrawalFor",outputs:[{internalType:"uint256",name:"destTokenAmount",type:"uint256"}],stateMutability:"nonpayable",type:"function"},{inputs:[{internalType:"address",name:"_user",type:"address"}],name:"completeLimitOrderWithdrawalFor",outputs:[],stateMutability:"nonpayable",type:"function"},{inputs:[{components:[{components:[{internalType:"contract IERC20",name:"token",type:"address"},{internalType:"uint256",name:"amount",type:"uint256"},{components:[{internalType:"bytes32",name:"routerKey",type:"bytes32"},{internalType:"bytes",name:"swapData",type:"bytes"}],internalType:"struct ISwapper.AggregatorData",name:"aggregatorData",type:"tuple"}],internalType:"struct ISwapper.SrcTokenSwapDetails[]",name:"srcData",type:"tuple[]"},{components:[{internalType:"contract IERC20",name:"destToken",type:"address"},{internalType:"uint256",name:"minDestAmount",type:"uint256"}],internalType:"struct ISwapper.DestData",name:"destData",type:"tuple"}],internalType:"struct IWithdrawalVault.MultiInSingleOutData",name:"_swapData",type:"tuple"},{internalType:"uint256",name:"_expectedDestTokenAmount",type:"uint256"}],name:"completeWithdrawal",outputs:[{internalType:"uint256",name:"destTokenAmount",type:"uint256"}],stateMutability:"nonpayable",type:"function"},{inputs:[],name:"completeWithdrawal",outputs:[],stateMutability:"nonpayable",type:"function"},{inputs:[],name:"customCooldown",outputs:[{internalType:"uint256",name:"",type:"uint256"}],stateMutability:"view",type:"function"},{inputs:[{internalType:"address",name:"",type:"address"}],name:"customCooldownDepositsWhitelist",outputs:[{internalType:"bool",name:"",type:"bool"}],stateMutability:"view",type:"function"},{inputs:[],name:"dHedgePoolFactory",outputs:[{internalType:"address",name:"",type:"address"}],stateMutability:"view",type:"function"},{inputs:[{internalType:"address",name:"_dHedgeVault",type:"address"},{internalType:"contract IERC20",name:"_vaultDepositToken",type:"address"},{internalType:"uint256",name:"_depositAmount",type:"uint256"},{internalType:"uint256",name:"_expectedAmountReceived",type:"uint256"}],name:"deposit",outputs:[],stateMutability:"nonpayable",type:"function"},{inputs:[{internalType:"address",name:"_dHedgeVault",type:"address"},{internalType:"address",name:"_vaultDepositToken",type:"address"},{internalType:"uint256",name:"_depositAmount",type:"uint256"}],name:"depositQuote",outputs:[{internalType:"uint256",name:"expectedAmountReceived",type:"uint256"}],stateMutability:"view",type:"function"},{inputs:[{internalType:"address",name:"_dHedgeVault",type:"address"},{internalType:"contract IERC20",name:"_vaultDepositToken",type:"address"},{internalType:"uint256",name:"_depositAmount",type:"uint256"},{internalType:"uint256",name:"_expectedAmountReceived",type:"uint256"}],name:"depositWithCustomCooldown",outputs:[],stateMutability:"nonpayable",type:"function"},{inputs:[{internalType:"uint8",name:"",type:"uint8"}],name:"getLogic",outputs:[{internalType:"address",name:"",type:"address"}],stateMutability:"view",type:"function"},{inputs:[{internalType:"address",name:"_depositor",type:"address"}],name:"getTrackedAssets",outputs:[{components:[{internalType:"address",name:"token",type:"address"},{internalType:"uint256",name:"balance",type:"uint256"}],internalType:"struct IWithdrawalVault.TrackedAsset[]",name:"trackedAssets",type:"tuple[]"}],stateMutability:"view",type:"function"},{inputs:[{internalType:"address",name:"_depositor",type:"address"}],name:"getTrackedAssetsFromLimitOrders",outputs:[{components:[{internalType:"address",name:"token",type:"address"},{internalType:"uint256",name:"balance",type:"uint256"}],internalType:"struct IWithdrawalVault.TrackedAsset[]",name:"trackedAssets",type:"tuple[]"}],stateMutability:"view",type:"function"},{inputs:[{internalType:"address",name:"_user",type:"address"},{internalType:"address",name:"_dHedgeVault",type:"address"},{internalType:"uint256",name:"_amountIn",type:"uint256"},{components:[{internalType:"address",name:"supportedAsset",type:"address"},{internalType:"bytes",name:"withdrawData",type:"bytes"},{internalType:"uint256",name:"slippageTolerance",type:"uint256"}],internalType:"struct IPoolLogic.ComplexAsset[]",name:"_complexAssetsData",type:"tuple[]"}],name:"initLimitOrderWithdrawalFor",outputs:[{components:[{internalType:"address",name:"token",type:"address"},{internalType:"uint256",name:"balance",type:"uint256"}],internalType:"struct IWithdrawalVault.TrackedAsset[]",name:"trackedAssets",type:"tuple[]"},{internalType:"address",name:"vault",type:"address"}],stateMutability:"nonpayable",type:"function"},{inputs:[{internalType:"address",name:"_dHedgeVault",type:"address"},{internalType:"uint256",name:"_amountIn",type:"uint256"},{components:[{internalType:"address",name:"supportedAsset",type:"address"},{internalType:"bytes",name:"withdrawData",type:"bytes"},{internalType:"uint256",name:"slippageTolerance",type:"uint256"}],internalType:"struct IPoolLogic.ComplexAsset[]",name:"_complexAssetsData",type:"tuple[]"}],name:"initWithdrawal",outputs:[{components:[{internalType:"address",name:"token",type:"address"},{internalType:"uint256",name:"balance",type:"uint256"}],internalType:"struct IWithdrawalVault.TrackedAsset[]",name:"trackedAssets",type:"tuple[]"},{internalType:"address",name:"vault",type:"address"}],stateMutability:"nonpayable",type:"function"},{inputs:[{internalType:"address",name:"",type:"address"}],name:"isAuthorizedWithdrawer",outputs:[{internalType:"bool",name:"",type:"bool"}],stateMutability:"view",type:"function"},{inputs:[{internalType:"address",name:"_dHedgeVault",type:"address"}],name:"isdHedgeVault",outputs:[{internalType:"bool",name:"isVault",type:"bool"}],stateMutability:"view",type:"function"},{inputs:[{internalType:"address",name:"",type:"address"}],name:"limitOrderContracts",outputs:[{internalType:"address",name:"",type:"address"}],stateMutability:"view",type:"function"},{inputs:[{internalType:"address",name:"_dHedgeVault",type:"address"},{internalType:"uint256",name:"_expectedAmountReceived",type:"uint256"}],name:"nativeDeposit",outputs:[],stateMutability:"payable",type:"function"},{inputs:[{internalType:"address",name:"_dHedgeVault",type:"address"},{internalType:"uint256",name:"_expectedAmountReceived",type:"uint256"}],name:"nativeDepositWithCustomCooldown",outputs:[],stateMutability:"payable",type:"function"},{inputs:[],name:"owner",outputs:[{internalType:"address",name:"",type:"address"}],stateMutability:"view",type:"function"},{inputs:[{internalType:"uint256",name:"_portion",type:"uint256"},{internalType:"address",name:"_to",type:"address"}],name:"partialWithdraw",outputs:[],stateMutability:"nonpayable",type:"function"},{inputs:[],name:"renounceOwnership",outputs:[],stateMutability:"nonpayable",type:"function"},{inputs:[{components:[{internalType:"address",name:"toWhitelist",type:"address"},{internalType:"bool",name:"whitelisted",type:"bool"}],internalType:"struct EasySwapperV2.WhitelistSetting[]",name:"_whitelistSettings",type:"tuple[]"}],name:"setAuthorizedWithdrawers",outputs:[],stateMutability:"nonpayable",type:"function"},{inputs:[{internalType:"uint256",name:"_customCooldown",type:"uint256"}],name:"setCustomCooldown",outputs:[],stateMutability:"nonpayable",type:"function"},{inputs:[{components:[{internalType:"address",name:"toWhitelist",type:"address"},{internalType:"bool",name:"whitelisted",type:"bool"}],internalType:"struct EasySwapperV2.WhitelistSetting[]",name:"_whitelistSettings",type:"tuple[]"}],name:"setCustomCooldownWhitelist",outputs:[],stateMutability:"nonpayable",type:"function"},{inputs:[{internalType:"address",name:"_vaultLogic",type:"address"}],name:"setLogic",outputs:[],stateMutability:"nonpayable",type:"function"},{inputs:[{internalType:"contract ISwapper",name:"_swapper",type:"address"}],name:"setSwapper",outputs:[],stateMutability:"nonpayable",type:"function"},{inputs:[{internalType:"address",name:"_dHedgePoolFactory",type:"address"}],name:"setdHedgePoolFactory",outputs:[],stateMutability:"nonpayable",type:"function"},{inputs:[],name:"swapper",outputs:[{internalType:"contract ISwapper",name:"",type:"address"}],stateMutability:"view",type:"function"},{inputs:[{internalType:"address",name:"newOwner",type:"address"}],name:"transferOwnership",outputs:[],stateMutability:"nonpayable",type:"function"},{inputs:[{internalType:"address",name:"_dHedgeVault",type:"address"},{internalType:"uint256",name:"_amountIn",type:"uint256"},{components:[{internalType:"address",name:"supportedAsset",type:"address"},{internalType:"bytes",name:"withdrawData",type:"bytes"},{internalType:"uint256",name:"slippageTolerance",type:"uint256"}],internalType:"struct IPoolLogic.ComplexAsset[]",name:"_complexAssetsData",type:"tuple[]"}],name:"unrollAndClaim",outputs:[{components:[{internalType:"address",name:"token",type:"address"},{internalType:"uint256",name:"balance",type:"uint256"}],internalType:"struct IWithdrawalVault.TrackedAsset[]",name:"",type:"tuple[]"}],stateMutability:"nonpayable",type:"function"},{inputs:[],name:"weth",outputs:[{internalType:"address",name:"",type:"address"}],stateMutability:"view",type:"function"},{inputs:[{internalType:"address",name:"",type:"address"}],name:"withdrawalContracts",outputs:[{internalType:"address",name:"",type:"address"}],stateMutability:"view",type:"function"},{inputs:[],name:"wrappedNativeToken",outputs:[{internalType:"contract IWETH",name:"",type:"address"}],stateMutability:"view",type:"function"},{inputs:[{internalType:"address",name:"_dHedgeVault",type:"address"},{components:[{components:[{internalType:"contract IERC20",name:"token",type:"address"},{internalType:"uint256",name:"amount",type:"uint256"},{components:[{internalType:"bytes32",name:"routerKey",type:"bytes32"},{internalType:"bytes",name:"swapData",type:"bytes"}],internalType:"struct ISwapper.AggregatorData",name:"aggregatorData",type:"tuple"}],internalType:"struct ISwapper.SrcTokenSwapDetails",name:"srcData",type:"tuple"},{components:[{internalType:"contract IERC20",name:"destToken",type:"address"},{internalType:"uint256",name:"minDestAmount",type:"uint256"}],internalType:"struct ISwapper.DestData",name:"destData",type:"tuple"}],internalType:"struct EasySwapperV2.SingleInSingleOutData",name:"_swapData",type:"tuple"},{internalType:"uint256",name:"_expectedAmountReceived",type:"uint256"}],name:"zapDeposit",outputs:[],stateMutability:"nonpayable",type:"function"},{inputs:[{internalType:"address",name:"_dHedgeVault",type:"address"},{components:[{components:[{internalType:"contract IERC20",name:"token",type:"address"},{internalType:"uint256",name:"amount",type:"uint256"},{components:[{internalType:"bytes32",name:"routerKey",type:"bytes32"},{internalType:"bytes",name:"swapData",type:"bytes"}],internalType:"struct ISwapper.AggregatorData",name:"aggregatorData",type:"tuple"}],internalType:"struct ISwapper.SrcTokenSwapDetails",name:"srcData",type:"tuple"},{components:[{internalType:"contract IERC20",name:"destToken",type:"address"},{internalType:"uint256",name:"minDestAmount",type:"uint256"}],internalType:"struct ISwapper.DestData",name:"destData",type:"tuple"}],internalType:"struct EasySwapperV2.SingleInSingleOutData",name:"_swapData",type:"tuple"},{internalType:"uint256",name:"_expectedAmountReceived",type:"uint256"}],name:"zapDepositWithCustomCooldown",outputs:[],stateMutability:"nonpayable",type:"function"},{inputs:[{internalType:"address",name:"_dHedgeVault",type:"address"},{components:[{components:[{internalType:"contract IERC20",name:"token",type:"address"},{internalType:"uint256",name:"amount",type:"uint256"},{components:[{internalType:"bytes32",name:"routerKey",type:"bytes32"},{internalType:"bytes",name:"swapData",type:"bytes"}],internalType:"struct ISwapper.AggregatorData",name:"aggregatorData",type:"tuple"}],internalType:"struct ISwapper.SrcTokenSwapDetails",name:"srcData",type:"tuple"},{components:[{internalType:"contract IERC20",name:"destToken",type:"address"},{internalType:"uint256",name:"minDestAmount",type:"uint256"}],internalType:"struct ISwapper.DestData",name:"destData",type:"tuple"}],internalType:"struct EasySwapperV2.SingleInSingleOutData",name:"_swapData",type:"tuple"},{internalType:"uint256",name:"_expectedAmountReceived",type:"uint256"}],name:"zapNativeDeposit",outputs:[],stateMutability:"payable",type:"function"},{inputs:[{internalType:"address",name:"_dHedgeVault",type:"address"},{components:[{components:[{internalType:"contract IERC20",name:"token",type:"address"},{internalType:"uint256",name:"amount",type:"uint256"},{components:[{internalType:"bytes32",name:"routerKey",type:"bytes32"},{internalType:"bytes",name:"swapData",type:"bytes"}],internalType:"struct ISwapper.AggregatorData",name:"aggregatorData",type:"tuple"}],internalType:"struct ISwapper.SrcTokenSwapDetails",name:"srcData",type:"tuple"},{components:[{internalType:"contract IERC20",name:"destToken",type:"address"},{internalType:"uint256",name:"minDestAmount",type:"uint256"}],internalType:"struct ISwapper.DestData",name:"destData",type:"tuple"}],internalType:"struct EasySwapperV2.SingleInSingleOutData",name:"_swapData",type:"tuple"},{internalType:"uint256",name:"_expectedAmountReceived",type:"uint256"}],name:"zapNativeDepositWithCustomCooldown",outputs:[],stateMutability:"payable",type:"function"}],wn=[{inputs:[],name:"ExternalCallerNotAllowed",type:"error"},{inputs:[{internalType:"address",name:"asset",type:"address"}],name:"InvalidAsset",type:"error"},{inputs:[{internalType:"address",name:"pool",type:"address"}],name:"InvalidPool",type:"error"},{inputs:[{internalType:"uint256",name:"stopLossPriceD18",type:"uint256"},{internalType:"uint256",name:"takeProfitPriceD18",type:"uint256"},{internalType:"uint256",name:"currentPrice",type:"uint256"}],name:"InvalidPrices",type:"error"},{inputs:[{internalType:"string",name:"varName",type:"string"}],name:"InvalidValue",type:"error"},{inputs:[{internalType:"address",name:"user",type:"address"},{internalType:"address",name:"pool",type:"address"}],name:"LimitOrderAlreadyExists",type:"error"},{inputs:[{internalType:"uint256",name:"currentPriceD18",type:"uint256"},{internalType:"uint256",name:"stopLossPriceD18",type:"uint256"},{internalType:"uint256",name:"takeProfitPriceD18",type:"uint256"}],name:"LimitOrderNotFillable",type:"error"},{inputs:[{internalType:"bytes32",name:"id",type:"bytes32"}],name:"LimitOrderNotFound",type:"error"},{inputs:[{internalType:"address",name:"caller",type:"address"}],name:"NotAuthorizedKeeper",type:"error"},{inputs:[{internalType:"address",name:"account",type:"address"}],name:"OwnableUnauthorizedAccount",type:"error"},{inputs:[{internalType:"address",name:"token",type:"address"}],name:"SafeERC20FailedOperation",type:"error"},{inputs:[{internalType:"address",name:"user",type:"address"}],name:"SettlementOrderNotFound",type:"error"},{anonymous:!1,inputs:[{indexed:!0,internalType:"address",name:"user",type:"address"},{indexed:!0,internalType:"address",name:"pool",type:"address"},{indexed:!1,internalType:"bytes32",name:"id",type:"bytes32"}],name:"LimitOrderCreated",type:"event"},{anonymous:!1,inputs:[{indexed:!0,internalType:"address",name:"user",type:"address"},{indexed:!0,internalType:"address",name:"pool",type:"address"},{indexed:!1,internalType:"bytes32",name:"id",type:"bytes32"}],name:"LimitOrderDeleted",type:"event"},{anonymous:!1,inputs:[{indexed:!0,internalType:"address",name:"user",type:"address"},{indexed:!0,internalType:"address",name:"pool",type:"address"},{indexed:!1,internalType:"bytes32",name:"id",type:"bytes32"}],name:"LimitOrderExecuted",type:"event"},{anonymous:!1,inputs:[{indexed:!1,internalType:"bytes32",name:"id",type:"bytes32"},{indexed:!1,internalType:"bytes",name:"reason",type:"bytes"}],name:"LimitOrderExecutionFailed",type:"event"},{anonymous:!1,inputs:[{indexed:!0,internalType:"address",name:"user",type:"address"},{indexed:!0,internalType:"address",name:"pool",type:"address"},{indexed:!1,internalType:"bytes32",name:"id",type:"bytes32"}],name:"LimitOrderModified",type:"event"},{anonymous:!1,inputs:[{indexed:!0,internalType:"address",name:"user",type:"address"},{indexed:!1,internalType:"uint256",name:"destTokenAmountReceived",type:"uint256"}],name:"SettlementOrderExecuted",type:"event"},{inputs:[],name:"SLIPPAGE_DENOMINATOR",outputs:[{internalType:"uint16",name:"",type:"uint16"}],stateMutability:"view",type:"function"},{inputs:[{internalType:"bytes32",name:"orderId_",type:"bytes32"},{components:[{internalType:"address",name:"supportedAsset",type:"address"},{internalType:"bytes",name:"withdrawData",type:"bytes"},{internalType:"uint256",name:"slippageTolerance",type:"uint256"}],internalType:"struct IPoolLogic.ComplexAsset[]",name:"complexAssetsData_",type:"tuple[]"}],name:"_executeLimitOrder",outputs:[],stateMutability:"nonpayable",type:"function"},{inputs:[{internalType:"address",name:"user_",type:"address"},{components:[{components:[{internalType:"contract IERC20",name:"token",type:"address"},{internalType:"uint256",name:"amount",type:"uint256"},{components:[{internalType:"bytes32",name:"routerKey",type:"bytes32"},{internalType:"bytes",name:"swapData",type:"bytes"}],internalType:"struct ISwapper.AggregatorData",name:"aggregatorData",type:"tuple"}],internalType:"struct ISwapper.SrcTokenSwapDetails[]",name:"srcData",type:"tuple[]"},{components:[{internalType:"contract IERC20",name:"destToken",type:"address"},{internalType:"uint256",name:"minDestAmount",type:"uint256"}],internalType:"struct ISwapper.DestData",name:"destData",type:"tuple"}],internalType:"struct IWithdrawalVault.MultiInSingleOutData",name:"swapData_",type:"tuple"}],name:"_executeSettlementOrder",outputs:[],stateMutability:"nonpayable",type:"function"},{inputs:[{components:[{internalType:"uint256",name:"amount",type:"uint256"},{internalType:"uint256",name:"stopLossPriceD18",type:"uint256"},{internalType:"uint256",name:"takeProfitPriceD18",type:"uint256"},{internalType:"address",name:"user",type:"address"},{internalType:"address",name:"pool",type:"address"},{internalType:"address",name:"pricingAsset",type:"address"}],internalType:"struct PoolLimitOrderManager.LimitOrderInfo",name:"limitOrderInfo_",type:"tuple"}],name:"createLimitOrder",outputs:[],stateMutability:"nonpayable",type:"function"},{inputs:[],name:"defaultSlippageTolerance",outputs:[{internalType:"uint16",name:"",type:"uint16"}],stateMutability:"view",type:"function"},{inputs:[{internalType:"address",name:"pool_",type:"address"}],name:"deleteLimitOrder",outputs:[],stateMutability:"nonpayable",type:"function"},{inputs:[],name:"easySwapper",outputs:[{internalType:"contract IEasySwapperV2",name:"",type:"address"}],stateMutability:"view",type:"function"},{inputs:[{internalType:"bytes32",name:"orderId_",type:"bytes32"},{components:[{internalType:"address",name:"supportedAsset",type:"address"},{internalType:"bytes",name:"withdrawData",type:"bytes"},{internalType:"uint256",name:"slippageTolerance",type:"uint256"}],internalType:"struct IPoolLogic.ComplexAsset[]",name:"complexAssetsData_",type:"tuple[]"}],name:"executeLimitOrder",outputs:[],stateMutability:"nonpayable",type:"function"},{inputs:[{components:[{internalType:"bytes32",name:"orderId",type:"bytes32"},{components:[{internalType:"address",name:"supportedAsset",type:"address"},{internalType:"bytes",name:"withdrawData",type:"bytes"},{internalType:"uint256",name:"slippageTolerance",type:"uint256"}],internalType:"struct IPoolLogic.ComplexAsset[]",name:"complexAssetsData",type:"tuple[]"}],internalType:"struct PoolLimitOrderManager.LimitOrderExecution[]",name:"orders_",type:"tuple[]"}],name:"executeLimitOrders",outputs:[],stateMutability:"nonpayable",type:"function"},{inputs:[{components:[{internalType:"bytes32",name:"orderId",type:"bytes32"},{components:[{internalType:"address",name:"supportedAsset",type:"address"},{internalType:"bytes",name:"withdrawData",type:"bytes"},{internalType:"uint256",name:"slippageTolerance",type:"uint256"}],internalType:"struct IPoolLogic.ComplexAsset[]",name:"complexAssetsData",type:"tuple[]"}],internalType:"struct PoolLimitOrderManager.LimitOrderExecution[]",name:"orders_",type:"tuple[]"}],name:"executeLimitOrdersSafe",outputs:[],stateMutability:"nonpayable",type:"function"},{inputs:[{internalType:"address",name:"user_",type:"address"},{components:[{components:[{internalType:"contract IERC20",name:"token",type:"address"},{internalType:"uint256",name:"amount",type:"uint256"},{components:[{internalType:"bytes32",name:"routerKey",type:"bytes32"},{internalType:"bytes",name:"swapData",type:"bytes"}],internalType:"struct ISwapper.AggregatorData",name:"aggregatorData",type:"tuple"}],internalType:"struct ISwapper.SrcTokenSwapDetails[]",name:"srcData",type:"tuple[]"},{components:[{internalType:"contract IERC20",name:"destToken",type:"address"},{internalType:"uint256",name:"minDestAmount",type:"uint256"}],internalType:"struct ISwapper.DestData",name:"destData",type:"tuple"}],internalType:"struct IWithdrawalVault.MultiInSingleOutData",name:"swapData_",type:"tuple"}],name:"executeSettlementOrder",outputs:[],stateMutability:"nonpayable",type:"function"},{inputs:[{components:[{internalType:"address",name:"user",type:"address"},{components:[{components:[{internalType:"contract IERC20",name:"token",type:"address"},{internalType:"uint256",name:"amount",type:"uint256"},{components:[{internalType:"bytes32",name:"routerKey",type:"bytes32"},{internalType:"bytes",name:"swapData",type:"bytes"}],internalType:"struct ISwapper.AggregatorData",name:"aggregatorData",type:"tuple"}],internalType:"struct ISwapper.SrcTokenSwapDetails[]",name:"srcData",type:"tuple[]"},{components:[{internalType:"contract IERC20",name:"destToken",type:"address"},{internalType:"uint256",name:"minDestAmount",type:"uint256"}],internalType:"struct ISwapper.DestData",name:"destData",type:"tuple"}],internalType:"struct IWithdrawalVault.MultiInSingleOutData",name:"swapData",type:"tuple"}],internalType:"struct PoolLimitOrderManager.SettlementOrderExecution[]",name:"orders_",type:"tuple[]"}],name:"executeSettlementOrders",outputs:[],stateMutability:"nonpayable",type:"function"},{inputs:[{components:[{internalType:"address",name:"user",type:"address"},{components:[{components:[{internalType:"contract IERC20",name:"token",type:"address"},{internalType:"uint256",name:"amount",type:"uint256"},{components:[{internalType:"bytes32",name:"routerKey",type:"bytes32"},{internalType:"bytes",name:"swapData",type:"bytes"}],internalType:"struct ISwapper.AggregatorData",name:"aggregatorData",type:"tuple"}],internalType:"struct ISwapper.SrcTokenSwapDetails[]",name:"srcData",type:"tuple[]"},{components:[{internalType:"contract IERC20",name:"destToken",type:"address"},{internalType:"uint256",name:"minDestAmount",type:"uint256"}],internalType:"struct ISwapper.DestData",name:"destData",type:"tuple"}],internalType:"struct IWithdrawalVault.MultiInSingleOutData",name:"swapData",type:"tuple"}],internalType:"struct PoolLimitOrderManager.SettlementOrderExecution[]",name:"orders_",type:"tuple[]"}],name:"executeSettlementOrdersSafe",outputs:[],stateMutability:"nonpayable",type:"function"},{inputs:[],name:"getAllLimitOrderIds",outputs:[{internalType:"bytes32[]",name:"limitOrderIds_",type:"bytes32[]"}],stateMutability:"view",type:"function"},{inputs:[],name:"getAllUsersToSettle",outputs:[{internalType:"address[]",name:"usersToSettle_",type:"address[]"}],stateMutability:"view",type:"function"},{inputs:[],name:"limitOrderSettlementToken",outputs:[{internalType:"address",name:"",type:"address"}],stateMutability:"view",type:"function"},{inputs:[{internalType:"bytes32",name:"orderId",type:"bytes32"}],name:"limitOrders",outputs:[{internalType:"uint256",name:"amount",type:"uint256"},{internalType:"uint256",name:"stopLossPriceD18",type:"uint256"},{internalType:"uint256",name:"takeProfitPriceD18",type:"uint256"},{internalType:"address",name:"user",type:"address"},{internalType:"address",name:"pool",type:"address"},{internalType:"address",name:"pricingAsset",type:"address"}],stateMutability:"view",type:"function"},{inputs:[{components:[{internalType:"uint256",name:"amount",type:"uint256"},{internalType:"uint256",name:"stopLossPriceD18",type:"uint256"},{internalType:"uint256",name:"takeProfitPriceD18",type:"uint256"},{internalType:"address",name:"user",type:"address"},{internalType:"address",name:"pool",type:"address"},{internalType:"address",name:"pricingAsset",type:"address"}],internalType:"struct PoolLimitOrderManager.LimitOrderInfo",name:"modificationInfo_",type:"tuple"}],name:"modifyLimitOrder",outputs:[],stateMutability:"nonpayable",type:"function"},{inputs:[{internalType:"address",name:"limitOrderSettlementToken_",type:"address"}],name:"setLimitOrderSettlementToken",outputs:[],stateMutability:"nonpayable",type:"function"}],Pr={[h.mainnet.id]:{factory:dc,easySwapperV2:vr,aaveLendingPoolV3:pc},[h.polygon.id]:{factory:xc,aaveLendingPoolV2:Ac,aaveLendingPoolV3:Sc,easySwapperV2:_r,limitOrder:Dr},[h.optimism.id]:{factory:bc,rewardDistribution:Tc,aaveLendingPoolV3:vc,easySwapperV2:Er,limitOrder:Ir},[h.arbitrum.id]:{factory:uc,aaveLendingPoolV3:mc,easySwapperV2:xr,limitOrder:Ar},[h.base.id]:{factory:yc,flatcoinPointsModule:wc,easySwapperV2:Sr,aaveLendingPoolV3:fc,limitOrder:Cr}},kr={factory:He,aaveLendingPoolV2:ea,aaveLendingPoolV3:ea,rewardDistribution:Or,poolManagerLogic:De,erc20:D.erc20Abi,poolLogic:be,flatcoinPointsModule:Zt,easySwapperV2:ve,limitOrder:wn},ta="Gas estimate error occurred",Rr="See console logs to report error details.",na="Missing simulation params",Lr="Simulation timeout",Mr="swap_data_deposit_error",jr="swap_data_withdraw_error",ft={title:"Low Slippage",hint:"Please increase slippage tolerance and try again."},Br={"invalid liquidityMinted":ft,"high withdraw slippage":ft,"high deposit slippage":ft,"high swap slippage":ft,InsufficientAmountReceived:ft,SwapFailed:{title:"Swap Failed",hint:"Please refresh the swap quote or choose another swap source in settings and try again."},"assetType not handled":{title:"Single Asset Withdrawal not available",hint:"Please use All Assets option."},[Mr]:{title:"Swap Quote Fetching Error",hint:"Please select a different deposit option, refresh the swap quote, or choose another swap source in settings."},[jr]:{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."}},$r="Invalid limit order prices",Fr={InvalidPrices:{title:$r}},Dc=[...Object.keys(Br),...Object.keys(Fr)],U=18,ga={address:"0xff970a61a04b1ca14834a43f5de4533ebddb5cc8",symbol:"USDCe",decimals:6,value:""},le={address:"0xaf88d065e77c8cC2239327C5EDb3A432268e5831",symbol:"USDC",decimals:6,value:""},It={address:"0x82af49447d8a07e3bd95bd0d56f35241523fbab1",symbol:"WETH",decimals:U,value:""},Be={address:"0x2f2a2543b76a4166549f7aab2e75bef0aefc5b0f",symbol:"WBTC",decimals:8,value:""},Nc={address:"0x6c84a8f1c29108F47a79964b5Fe888D4f4D0dE40",symbol:"tBTC",decimals:U,value:""},Oc={address:"0x5979D7b546E38E414F7E9822514be443A4800529",symbol:"wstETH",decimals:U,value:""},Pc={address:"0xfd086bc7cd5c481dcc9c85ebe478a1c0b69fcbb9",symbol:"USDT",decimals:6,value:""},kc={address:"0x2bcC6D6CdBbDC0a4071e48bb3B969b06B3330c07",symbol:"SOL",decimals:9,value:""},Rc={address:"0xa9004a5421372e1d83fb1f85b0fc986c912f91f3",symbol:"WBNB",decimals:U,value:""},Lc={address:"0xf97f4df75117a78c1a5a0dbb814af92458539fb4",symbol:"LINK",decimals:U,value:""},Wr={address:"0x833589fcd6edb6e08f4c7c32d4f71b54bda02913",symbol:"USDC",decimals:6,value:""},Mc={address:"0xd9aaec86b65d86f6a7b5b1b0c42ffa531710b6ca",symbol:"USDbC",decimals:6,value:""},fa={address:"0x4200000000000000000000000000000000000006",symbol:"WETH",decimals:U,value:""},jc={address:"0x2ae3f1ec7f1f5012cfeab0185bfc7aa3cf0dec22",symbol:"cbETH",decimals:U,value:""},Ur={address:"0xcbb7c0000ab88b473b1f5afd9ef808440eed33bf",symbol:"cbBTC",decimals:8,value:""},Jt={address:"0xb6fe221fe9eef5aba221c348ba20a1bf5e73624c",symbol:"rETH",decimals:U,value:""},Bc={address:"0x236aa50979D5f3De3Bd1Eeb40E81137F22ab794b",symbol:"tBTC",decimals:U,value:""},$c={address:"0xc1cba3fcea344f92d9239c08c0568f6f2f0ee452",symbol:"wstETH",decimals:U,value:""},Ta={address:"0x7F5c764cBc14f9669B88837ca1490cCa17c31607",symbol:"USDCe",decimals:6,value:""},zr={address:"0x0b2C639c533813f4Aa9D7837CAf62653d097Ff85",symbol:"USDC",decimals:6,value:""},Hr={address:"0x94b008aa00579c1307b0ef2c499ad98a8ce58e58",symbol:"USDT",decimals:6,value:""},ba={address:"0x4200000000000000000000000000000000000006",symbol:"WETH",decimals:U,value:""},Fc={address:"0x8c6f28f2F1A3C87F0f938b96d27520d9751ec8d9",symbol:"sUSD",decimals:U,value:""},Gr={address:"0xda10009cbd5d07dd0cecc66161fc93d7c9000da1",symbol:"DAI",decimals:U,value:""},Je={address:"0x68f180fcce6836688e9084f035309e29bf0a2095",symbol:"WBTC",decimals:8,value:""},Wc={address:"0xe405de8f52ba7559f9df3c368500b6e6ae6cee49",symbol:"sETH",decimals:U,value:""},Uc={address:"0x350a791bfc2c21f9ed5d10980dad2e2638ffa7f6",symbol:"LINK",decimals:U,value:""},zc={address:"0x6c84a8f1c29108F47a79964b5Fe888D4f4D0dE40",symbol:"tBTC",decimals:U,value:""},Hc={address:"0x1F32b1c2345538c0c6f582fCB022739c4A194Ebb",symbol:"wstETH",decimals:U,value:""},va={address:"0x7ceB23fD6bC0adD59E62ac25578270cFf1b9f619",symbol:"WETH",decimals:U,value:""},xa={address:"0x2791Bca1f2de4661ED88A30C99A7a9449Aa84174",symbol:"USDCe",decimals:6,value:""},Vr={address:"0x3c499c542cEF5E3811e1192ce70d8cC03d5c3359",symbol:"USDC",decimals:6,value:""},Gc={address:"0x553d3d295e0f695b9228246232edf400ed3560b5",symbol:"PAXG",decimals:U,value:""},Aa={address:"0x1BFD67037B42Cf73acF2047067bd4F2C47D9BfD6",symbol:"WBTC",decimals:8,value:""},qr={address:"0x0d500B1d8E8eF31E21C99d1Db9A6444d3ADf1270",symbol:"WPOL",decimals:U,value:""},Yr={address:"0xc2132d05d31c914a87c6611c10748aeb04b58e8f",symbol:"USDT",decimals:6,value:""},Kr={address:"0x8f3cf7ad23cd3cadbd9735aff958023239c6a063",symbol:"DAI",decimals:U,value:""},Vc={address:"0x236aa50979d5f3de3bd1eeb40e81137f22ab794b",symbol:"tBTC",decimals:U,value:""},Sa={address:"0xc02aaa39b223fe8d0a0e5c4f27ead9083c756cc2",symbol:"WETH",decimals:U,value:""},Qr={address:"0xa0b86991c6218b36c1d19d4a2e9eb0ce3606eb48",symbol:"USDC",decimals:6,value:""},Ca={address:"0x2260fac5e5542a773aa44fbcfedf7c193bc2c599",symbol:"WBTC",decimals:8,value:""},Xr={address:"0xdac17f958d2ee523a2206206994597c13d831ec7",symbol:"USDT",decimals:6,value:""},qc={address:"0x68749665ff8d2d112fa859aa293f07a622782f38",symbol:"XAUt",decimals:6,value:""},sn={address:ha,symbol:"all",decimals:U,value:""},Ea={[ga.address.toLowerCase()]:"USDCe",[Ta.address.toLowerCase()]:"USDCe",[xa.address.toLowerCase()]:"USDCe"},Zr={[h.mainnet.id]:Sa,[h.optimism.id]:ba,[h.base.id]:fa,[h.polygon.id]:va,[h.arbitrum.id]:It},Jr={[h.optimism.id]:Je,[h.base.id]:Ur,[h.polygon.id]:Aa,[h.arbitrum.id]:Be,[h.mainnet.id]:Ca},Yc={[h.optimism.id]:{WETH:ba,USDC:zr,WBTC:Je,USDCe:Ta,USDT:Hr,DAI:Gr},[h.polygon.id]:{WMATIC:qr,WETH:va,USDC:Vr,WBTC:Aa,USDCe:xa,USDT:Yr,DAI:Kr},[h.arbitrum.id]:{WETH:It,USDC:le,WBTC:Be,USDCe:ga},[h.base.id]:{WETH:fa,USDC:Wr},[h.mainnet.id]:{WETH:Sa,USDC:Qr,WBTC:Ca,USDT:Xr}},Kc="https://hermes.pyth.network",Qc="https://flat.money/flatcoin",Xc="https://v1.flat.money/flatcoin",en={RETH_BASE:"0xdb0cd65dcc7fe07003ce1201f91e1f966fa95768",WBTC_OPTIMISM:"0x6d857e9d24a7566bb72a3fb0847a3e0e4e1c2879",WBTC_ARBITRUM:"0xb1353d51991e79fefd4bfdba2a03e9f0232814a6"},Zc=Object.values(en),Jc={[en.RETH_BASE]:{symbol:Jt.symbol,decimals:Jt.decimals,address:Jt.address},[en.WBTC_OPTIMISM]:{symbol:Je.symbol,decimals:Je.decimals,address:Je.address},[en.WBTC_ARBITRUM]:{symbol:Be.symbol,decimals:Be.decimals,address:Be.address}},eo="0xb95fb324b8a2faf8ec4f76e3df46c718402736e2",to=[eo,"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"},Ia=["multi_withdraw","swap","claim","single_withdraw_and_claim"],ae={SOL_ARBITRUM:"0x09400d9db990d5ed3f35d7be61dfaeb900af03c9",BTC_ARBITRUM:"0x47c031236e19d024b42f8ae6780e44a573170703",WETH_WETH_ARBITRUM:"0x70d95587d40a2caf56bd97485ab3eec10bee6336",WETH_USDC_ARBITRUM:"0x450bb6774dd8a756274e0ab4107953259d2ac541",SUI_ARBITRUM:"0x6ecf2133e2c9751caadcb6958b9654bae198a797",DOGE_ARBITRUM:"0x6853ea96ff216fab11d2d930ce3c508556a4bdc4",XRP_ARBITRUM:"0x0ccb4faa6f1f1b30911619f1184082ab4e25813c",CRV_ARBITRUM:"0x0e46941f9bff8d0784bffa3d0d7883cdb82d7ae7",HYPE_ARBITRUM:"0xbcb8fe13d02b023e8f94f6881cc0192fd918a5c0",BNB_ARBITRUM:"0x2d340912aa47e33c90efb078e69e70efe2b34b9b",BNB_WBTC_USDC_ARBITRUM:"0x065577D05c3D4C11505ed7bc97BBF85d462A6A6f",LINK_ARBITRUM:"0x7f1fa204bb700853d36994da19f830b6ad18455c",PUMP_ARBITRUM:"0x4c0bb704529fa49a26bd854802d70206982c6f1b"},no=Object.values(ae),ed={[ae.SOL_ARBITRUM]:le,[ae.BTC_ARBITRUM]:Be,[ae.WETH_WETH_ARBITRUM]:It,[ae.WETH_USDC_ARBITRUM]:It,[ae.SUI_ARBITRUM]:le,[ae.DOGE_ARBITRUM]:le,[ae.XRP_ARBITRUM]:le,[ae.CRV_ARBITRUM]:le,[ae.HYPE_ARBITRUM]:le,[ae.BNB_ARBITRUM]:le,[ae.LINK_ARBITRUM]:le,[ae.PUMP_ARBITRUM]:le,[ae.BNB_WBTC_USDC_ARBITRUM]:le},td={"0x9a916e55f5b67226734cd7b465d51bce1d11a89a":le},Ct={IS_BATCH_TRANSACTIONS_ENABLED:"isBatchTransactionsEnabled",REFERRER:"referrer",REF_POOL:"ref_pool"},nd=()=>typeof window<"u";function ad(){return nd()&&typeof window.ethereum<"u"}async function sd(e){try{if(ad())return window.ethereum.request({method:"wallet_watchAsset",params:{type:"ERC20",options:e}})}catch{return!1}return!1}const H=(e,t)=>e?.toLowerCase()===t?.toLowerCase(),te=e=>H(e,ha),z=(e,t)=>Pr[t]?.[e]??_,ao=e=>kr[e],so=e=>e&&`${e.substring(0,6)}...${e.substring(e.length-4,e.length)}`,aa=({address:e,chainId:t})=>{const n=z("aaveLendingPoolV3",t);return H(e,n)},ro=({sourceAddress:e,amount:t})=>`${e}_${t}`,oo=(e,t)=>{const n=e.slice(0,t),a=e.slice(t);return{firstPart:n,secondPart:a}},Ne=(e,t)=>e/t*100,_t=e=>e<1?4:e<10?3:2,rn=(e,t=k)=>new T(e.toString()).shiftedBy(t).toFixed(0),sa=(e,t,n,a)=>new T(t).dividedBy(n).multipliedBy(e).shiftedBy(-(a||k)).toNumber(),io=e=>BigInt(new T(e||"0").shiftedBy(k).toFixed(0,T.ROUND_DOWN)),_a=e=>{const t=new T(.01),n=new T(e),a=!n.isZero()&&n.lt(t)?t:n;return BigInt(a.multipliedBy(100).toFixed(0))},ws=({vaultAddress:e,swapData:t,sendTokenAddress:n,sendTokenAmount:a,vaultDepositTokenAddress:s,minVaultTokensReceivedAmount:o,routerKey:i="ONE_INCH",swapDestinationAmount:l,swapSlippage:c})=>{const d=new T(l).multipliedBy(1-c/100).toFixed(0),p=[D.stringToHex(i,{size:32}),t];return[e,[[n,a,p],[s,d]],o]},rd=({receiveAssetAddress:e,assets:t,swapData:n})=>{const a={srcData:[],destAmount:new T("0")},{srcData:s}=t?.reduce((o,i)=>{const l=n?.[i.address];if(!l)return o;const c=[D.stringToHex(l.routerKey,{size:32}),l.rawTransaction.data],d=[i.address,i.rawBalance,c];return{srcData:[...o.srcData,d],destAmount:o.destAmount.plus(l.destinationAmount)}},a)??a;return[s,[e,"0"]]},od=({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?.[ro({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(Ec,[l]),d=D.encodeAbiParameters(Ic,[{encodedSrcData:c,dstData:{dstAddress:i.asset,dstAmount:i.amount},slippage:a}]);return{supportedAsset:e,withdrawData:d,slippageTolerance:a}},hn=(e,t)=>Ze[t]?.nativeTokenSymbol===e,lo=({nativeTokenBalance:e,tokenDecimals:t,gasPrice:n})=>{const a=new T(n).multipliedBy(hr).shiftedBy(-t),s=new T(e).minus(a);return s.gt("0")?s:new T("0")},co=e=>ic.includes(e),id=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},ld=(e,t=150)=>e.length>t?e.substring(0,t):e,hs=(e,t=Dc)=>{const n=e.toLowerCase();return t.sort((a,s)=>s.length-a.length).find(a=>n.includes(a.toLowerCase()))},gs=e=>Br[e]??Fr[e],po=({errorMessage:e,abiErrors:t})=>{if(!e||e.includes("User rejected"))return null;const n=t.find(o=>e.includes(o));if(n&&hs(n))return gs(n);const a=hs(e);if(a)return gs(a);const[s]=e.split(n?".":"Contract").map(o=>o.trim());return{title:"Transaction failed",hint:`${ld(s??"")} ${n?`: ${n}`:""}`}},cd=e=>typeof e=="bigint"&&e!==BigInt(0),Fe=(e,t=U)=>new T(e).shiftedBy(-t).toNumber(),uo=e=>!isNaN(parseFloat(e))&&!isNaN(e),ne=({value:e,minimumFractionDigits:t=2,maximumFractionDigits:n=2,compact:a=!1,normalize:s=!1})=>new Intl.NumberFormat("en-US",{style:"currency",currency:"USD",notation:a?"compact":void 0,minimumFractionDigits:t,maximumFractionDigits:n}).format(s?Fe(e):Number(e)),ra=e=>uo(e)?new T(e).toFixed():"",fs=["₀","₁","₂","₃","₄","₅","₆","₇","₈","₉"],Ge=({value:e,decimals:t})=>{const n=new T(e);if(n.isGreaterThan(1)||n.isZero())return ra(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<fs.length)return`0.0${fs[o.length]}${i.slice(0,3)}`}return ra(n.toFixed(t))},Ot=(e,t=0)=>`${e.toLocaleString("en-US",{maximumFractionDigits:t})}%`,dd=e=>e.toString().replace(/\B(?=(\d{3})+(?!\d))/g,","),xt=(e,t,n=0)=>{const a=Ne(+e,t);return Ot(a,n)},tn=({currency:e,value:t})=>e==="USD"?ne({value:t}):`${br[e]} ${Ge({value:t,decimals:oc[e]})}`,pd=(e,t)=>new T(new T(e).toFixed(t,T.ROUND_DOWN)).toString(),ud=(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)}`},mo=({balance:e,symbol:t,precision:n,truncateSymbol:a})=>`${pd(e,n)} ${ud(t)}`,yo=e=>{if(!e)return;const t=e.match(/0x[a-fA-F0-9]{64}/);if(!t)return;const n=t[0];return`${n.slice(0,4)}...${n.slice(-3)}`},gn=typeof window<"u",wo=e=>H(hc,e)||H(gc,e),ho=e=>Zc.some(t=>H(t,e)),go=e=>Jc[e.toLowerCase()]??{symbol:"",decimals:18,address:_},md=e=>H(e,eo)?Xc:Qc,Da=e=>`eth_${e}`,yd=({action:e,log:t,symbol:n,vaultAddress:a,chainId:s})=>{const o={[Te.SYMBOL.NAME]:n,[Te.CHAIN_ID.NAME]:s,[Te.ADDRESS.NAME]:Da(a)};lc[e].forEach(i=>{t?.(i,o)})},wd=e=>no.some(t=>H(t,e)),hd=e=>ed[e.toLowerCase()]??{symbol:"",decimals:18,address:_},gd=e=>td[e.toLowerCase()];function fd(){if(gn)try{const e=localStorage.getItem(Ct.IS_BATCH_TRANSACTIONS_ENABLED);return e?JSON.parse(e):void 0}catch{return}}function Td(e){if(gn)try{localStorage.setItem(Ct.IS_BATCH_TRANSACTIONS_ENABLED,JSON.stringify(e))}catch(t){console.error("[core-kit]: Failed to persist batch transactions setting",t)}}const bd=e=>{const t=e.find(({swapQuotes:n})=>n);return t?.swapQuotes?Object.values(t.swapQuotes)[0]?.map(({routerKey:n})=>n)??[]:[]},vd=(e,t,n)=>e.map(({asset:a,swapParams:s,swapQuotes:o})=>!s||!o?{supportedAsset:a,withdrawData:"",slippageTolerance:n}:od({assetAddress:a,swapQuotes:o,swapParams:s,slippageToleranceForContractTransaction:n,routerKey:t})),xd=async(e,t,n,a,s)=>{for(const o of e){const i=vd(t,o,n),{error:l}=await a(...s,i);if(!l)return i}return null},Ts=(e,t)=>(e??[]).map(n=>({supportedAsset:n,withdrawData:"",slippageTolerance:t})),Ad=async(e,t,{fetchAaveSwapParams:n,fetchAaveSwapQuotes:a,withdrawAmountD18:s,slippage:o})=>Promise.all((e??[]).map(async i=>{if(!H(i,t))return{asset:i};try{const c=await n({withdrawAmountD18:s,slippage:o});if(c?.srcData.length){const d=await a({swapParams:c,slippage:o});return{asset:i,swapParams:c,swapQuotes:d}}return{asset:i}}catch(c){return console.error(c),{asset:i}}}));function Z(){}const bs={address:_,symbol:"",decimals:k,value:""},fo=e=>{const t=e?.poolAddress??_,n={address:t,symbol:e?.poolConfigMap?.[t]?.symbol??"",decimals:k,value:""},a=e?.type??"deposit",s=a==="deposit"?bs:n,o=a==="deposit"?n:bs;return{poolAddress:t,poolConfigMap:{...e?.poolConfigMap},settings:{slippage:"auto",isInfiniteAllowance:!1,isMultiAssetWithdrawalEnabled:!0,isMaxSlippageLoading:!1,availableAggregators:[],...e?.settings,isBatchTransactionsEnabled:fd()??e?.settings?.isBatchTransactionsEnabled??!1,selectedAggregators:e?.settings?.selectedAggregators??e?.settings?.availableAggregators??[]},type:a,input:{sendToken:{...s,...e?.input?.sendToken},receiveToken:{...o,...e?.input?.receiveToken}},modal:{isOpen:!1,status:"None",receiveTokens:null,sendTokens:null,...e?.modal},stepper:null,transactions:e?.transactions??[],poolFallbackData:{address:_,...e?.poolFallbackData},customDepositTokensPerChain:e?.customDepositTokensPerChain,defaultChainId:e?.defaultChainId}},To=u.createContext({...fo({poolAddress:_,poolConfigMap:{}})}),bo=u.createContext({setPoolAddress:Z,setTradingType:Z,updateSendTokenInput:Z,updateReceiveTokenInput:Z,updateTradingSettings:Z,updateTradingModal:Z,updateStepper:Z,updateTransactions:Z,updatePoolFallbackData:Z,updateCustomDepositTokensPerChain:Z,onTradingSettleError:Z,onTransactionError:Z,onTransactionSuccess:Z,onTransactionEstimationError:Z,onTokenSelector:Z,onLog:Z,onSimulateTransaction:()=>Promise.resolve(null),getSwapQuotes:()=>Promise.resolve(null),updatePoolConfig:Z,addPoolConfig:Z}),Sd=e=>(t,n)=>{switch(n.type){case"SET_POOL_ADDRESS":return{...t,poolAddress:n.payload};case"SET_TRADING_TYPE":return{...t,type:n.payload};case"UPDATE_SEND_TOKEN_INPUT":return{...t,input:{...t.input,sendToken:{...t.input.sendToken,...n.payload}}};case"UPDATE_RECEIVE_TOKEN_INPUT":return{...t,input:{...t.input,receiveToken:{...t.input.receiveToken,...n.payload}}};case"UPDATE_TRADING_SETTINGS":return{...t,settings:{...t.settings,...n.payload}};case"UPDATE_TRADING_MODAL":return{...t,modal:{...t.modal,...n.payload}};case"UPDATE_STEPPER":return{...t,stepper:n.payload===null?null:{...t.stepper,...n.payload}};case"UPDATE_POOL_FALLBACK_DATA":return{...t,poolFallbackData:n.payload};case"UPDATE_POOL_CONFIG":return{...t,poolConfigMap:{...t.poolConfigMap,...Object.entries(n.payload).filter(([a])=>!!t.poolConfigMap?.[a]).reduce((a,[s,o])=>({...a,[s]:{...t.poolConfigMap?.[s],...o}}),t.poolConfigMap)}};case"UPDATE_CUSTOM_DEPOSIT_TOKENS_PER_CHAIN":return{...t,customDepositTokensPerChain:{...t.customDepositTokensPerChain??{},...n.payload}};case"ADD_POOL_CONFIG":return{...t,poolConfigMap:{...t.poolConfigMap,[n.payload.address]:n.payload}};case"UPDATE_TRADING_TRANSACTIONS":switch(n.payload.type){case"remove":const a=t.transactions.find(o=>o.txHash===n.payload.txHash);return n.payload.status==="success"&&a&&yd({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}},Cd=({children:e,initialState:t,actions:{onSetPoolAddress:n,onUpdateSendTokenInput:a,onUpdateReceiveTokenInput:s,onUpdateTradingSettings:o,onSetTradingType:i,onUpdateTradingModal:l,onUpdateTransactions:c,onTransactionError:d,onTransactionSuccess:p,onTransactionEstimationError:m,onTokenSelector:y,onLog:w,onSimulateTransaction:f,onTradingSettleError:g,getSwapQuotes:x}})=>{const[S,I]=u.useReducer(Sd(w),fo(t)),L=u.useCallback(j=>{I({type:"SET_POOL_ADDRESS",payload:j}),n?.(j)},[n]),M=u.useCallback(j=>{I({type:"UPDATE_SEND_TOKEN_INPUT",payload:j}),a?.(j)},[a]),ee=u.useCallback(j=>{I({type:"UPDATE_RECEIVE_TOKEN_INPUT",payload:j}),s?.(j)},[s]),Ae=u.useCallback(j=>{I({type:"UPDATE_TRADING_SETTINGS",payload:j}),o?.(j)},[o]),Xe=u.useCallback(j=>{I({type:"SET_TRADING_TYPE",payload:j}),i?.(j)},[i]),Gt=u.useCallback(j=>{I({type:"UPDATE_TRADING_MODAL",payload:j}),l?.(j)},[l]),Vt=u.useCallback(j=>{I({type:"UPDATE_STEPPER",payload:j})},[]),ht=u.useCallback(j=>{I({type:"UPDATE_TRADING_TRANSACTIONS",payload:j}),c?.(j)},[c]),ps=u.useCallback(j=>{I({type:"UPDATE_POOL_FALLBACK_DATA",payload:j})},[]),us=u.useCallback(j=>{I({type:"UPDATE_CUSTOM_DEPOSIT_TOKENS_PER_CHAIN",payload:j})},[]),ms=u.useCallback(j=>{I({type:"UPDATE_POOL_CONFIG",payload:j})},[]),ys=u.useCallback(j=>{I({type:"ADD_POOL_CONFIG",payload:j})},[]),zl=u.useMemo(()=>({setPoolAddress:L,setTradingType:Xe,updateTradingSettings:Ae,updateSendTokenInput:M,updateReceiveTokenInput:ee,updateTradingModal:Gt,updateStepper:Vt,updateTransactions:ht,updatePoolFallbackData:ps,updateCustomDepositTokensPerChain:us,onTransactionError:d,onTransactionSuccess:p,onTransactionEstimationError:m,onTokenSelector:y,onLog:w,onSimulateTransaction:f,onTradingSettleError:g,getSwapQuotes:x,updatePoolConfig:ms,addPoolConfig:ys}),[L,Xe,Ae,M,ee,Gt,Vt,ht,ps,us,d,p,m,y,w,f,g,x,ms,ys]);return r.jsx(bo.Provider,{value:zl,children:r.jsx(To.Provider,{value:S,children:e})})},J=()=>u.useContext(To),F=()=>u.useContext(bo),Ed=()=>F().setPoolAddress,Id=()=>F().updateSendTokenInput,_d=()=>F().updateReceiveTokenInput,Dd=()=>F().updateTradingSettings,Nd=()=>F().setTradingType,Od=()=>F().updateTradingModal,vo=()=>F().updatePoolFallbackData,xo=()=>F().onTransactionError,Ao=()=>F().onTradingSettleError,So=()=>F().onTransactionSuccess,fn=()=>F().onTransactionEstimationError,Co=()=>F().onTokenSelector,Ve=()=>F().onLog,Eo=()=>F().onSimulateTransaction,Na=()=>{const e=F().getSwapQuotes,{settings:{selectedAggregators:t}}=J();return u.useCallback(({signal:n,variables:a})=>e({signal:n,variables:{...a,...!!t.length&&{aggregators:t}}}),[e,t])},Pd=()=>F().updatePoolConfig,kd=()=>F().addPoolConfig,Rd=()=>F().updateCustomDepositTokensPerChain,Io=()=>[J().poolAddress,F().setPoolAddress],b=()=>{const{poolAddress:e,poolConfigMap:t}=J();return t[e]??pr},at=()=>{const{poolConfigMap:e}=J();return u.useMemo(()=>Object.values(e),[e])},Ld=e=>{const t=at();return u.useMemo(()=>t.some(n=>n.address===e),[t,e])},qe=()=>{const{poolFallbackData:e,poolAddress:t}=J(),n=vo();return[e.address===t?e:{address:t},n]},_o=()=>J().input,N=()=>[_o().sendToken,F().updateSendTokenInput],O=()=>[_o().receiveToken,F().updateReceiveTokenInput],Q=()=>[J().settings,F().updateTradingSettings],Do=()=>[J().customDepositTokensPerChain,F().updateCustomDepositTokensPerChain],K=()=>[J().modal,F().updateTradingModal],No=()=>[J().stepper,F().updateStepper],we=()=>[J().type,F().setTradingType],Oe=()=>J().type==="deposit",re=()=>[J().transactions,F().updateTransactions],Md=()=>J().defaultChainId,$n=(e,t)=>t.some(({id:n})=>n===e),Ce=()=>{const{chain:e}=E.useAccount(),{chains:t}=E.useConfig(),{switchChain:n,switchChainAsync:a}=E.useSwitchChain(),s=Md(),o=e?.id,i=$n(o,t),l=s&&$n(s,t)?s:t[0].id;return{chain:e,isSupported:i,switchNetwork:n,switchNetworkAsync:a,chainId:i?o:void 0,supportedChainId:$n(o,t)?o:l,chains:t}},Tn=({tokenAddress:e,ownerAddress:t,spenderAddress:n,chainId:a,skip:s})=>E.useReadContract({address:e,abi:D.erc20Abi,functionName:"allowance",args:[t,n],chainId:a,query:{enabled:!s,refetchInterval:nt}}),jd=()=>{const{account:e}=B(),[t,n]=u.useState(!1);return u.useEffect(()=>{n(!!e)},[e]),t},Oa=e=>E.useBalance({...e,query:{...e?.query,staleTime:nt}});var qt=typeof globalThis<"u"?globalThis:typeof window<"u"?window:typeof global<"u"?global:typeof self<"u"?self:{};function bn(e){return e&&e.__esModule&&Object.prototype.hasOwnProperty.call(e,"default")?e.default:e}function Bd(){this.__data__=[],this.size=0}var $d=Bd;function Fd(e,t){return e===t||e!==e&&t!==t}var Pa=Fd,Wd=Pa;function Ud(e,t){for(var n=e.length;n--;)if(Wd(e[n][0],t))return n;return-1}var vn=Ud,zd=vn,Hd=Array.prototype,Gd=Hd.splice;function Vd(e){var t=this.__data__,n=zd(t,e);if(n<0)return!1;var a=t.length-1;return n==a?t.pop():Gd.call(t,n,1),--this.size,!0}var qd=Vd,Yd=vn;function Kd(e){var t=this.__data__,n=Yd(t,e);return n<0?void 0:t[n][1]}var Qd=Kd,Xd=vn;function Zd(e){return Xd(this.__data__,e)>-1}var Jd=Zd,ep=vn;function tp(e,t){var n=this.__data__,a=ep(n,e);return a<0?(++this.size,n.push([e,t])):n[a][1]=t,this}var np=tp,ap=$d,sp=qd,rp=Qd,op=Jd,ip=np;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=ap;st.prototype.delete=sp;st.prototype.get=rp;st.prototype.has=op;st.prototype.set=ip;var xn=st,lp=xn;function cp(){this.__data__=new lp,this.size=0}var dp=cp;function pp(e){var t=this.__data__,n=t.delete(e);return this.size=t.size,n}var up=pp;function mp(e){return this.__data__.get(e)}var yp=mp;function wp(e){return this.__data__.has(e)}var hp=wp,gp=typeof qt=="object"&&qt&&qt.Object===Object&&qt,Oo=gp,fp=Oo,Tp=typeof self=="object"&&self&&self.Object===Object&&self,bp=fp||Tp||Function("return this")(),Ee=bp,vp=Ee,xp=vp.Symbol,An=xp,vs=An,Po=Object.prototype,Ap=Po.hasOwnProperty,Sp=Po.toString,Tt=vs?vs.toStringTag:void 0;function Cp(e){var t=Ap.call(e,Tt),n=e[Tt];try{e[Tt]=void 0;var a=!0}catch{}var s=Sp.call(e);return a&&(t?e[Tt]=n:delete e[Tt]),s}var Ep=Cp,Ip=Object.prototype,_p=Ip.toString;function Dp(e){return _p.call(e)}var Np=Dp,xs=An,Op=Ep,Pp=Np,kp="[object Null]",Rp="[object Undefined]",As=xs?xs.toStringTag:void 0;function Lp(e){return e==null?e===void 0?Rp:kp:As&&As in Object(e)?Op(e):Pp(e)}var rt=Lp;function Mp(e){var t=typeof e;return e!=null&&(t=="object"||t=="function")}var Pt=Mp,jp=rt,Bp=Pt,$p="[object AsyncFunction]",Fp="[object Function]",Wp="[object GeneratorFunction]",Up="[object Proxy]";function zp(e){if(!Bp(e))return!1;var t=jp(e);return t==Fp||t==Wp||t==$p||t==Up}var ko=zp,Hp=Ee,Gp=Hp["__core-js_shared__"],Vp=Gp,Fn=Vp,Ss=function(){var e=/[^.]+$/.exec(Fn&&Fn.keys&&Fn.keys.IE_PROTO||"");return e?"Symbol(src)_1."+e:""}();function qp(e){return!!Ss&&Ss in e}var Yp=qp,Kp=Function.prototype,Qp=Kp.toString;function Xp(e){if(e!=null){try{return Qp.call(e)}catch{}try{return e+""}catch{}}return""}var Ro=Xp,Zp=ko,Jp=Yp,eu=Pt,tu=Ro,nu=/[\\^$.*+?()[\]{}|]/g,au=/^\[object .+?Constructor\]$/,su=Function.prototype,ru=Object.prototype,ou=su.toString,iu=ru.hasOwnProperty,lu=RegExp("^"+ou.call(iu).replace(nu,"\\$&").replace(/hasOwnProperty|(function).*?(?=\\\()| for .+?(?=\\\])/g,"$1.*?")+"$");function cu(e){if(!eu(e)||Jp(e))return!1;var t=Zp(e)?lu:au;return t.test(tu(e))}var du=cu;function pu(e,t){return e?.[t]}var uu=pu,mu=du,yu=uu;function wu(e,t){var n=yu(e,t);return mu(n)?n:void 0}var ot=wu,hu=ot,gu=Ee,fu=hu(gu,"Map"),ka=fu,Tu=ot,bu=Tu(Object,"create"),Sn=bu,Cs=Sn;function vu(){this.__data__=Cs?Cs(null):{},this.size=0}var xu=vu;function Au(e){var t=this.has(e)&&delete this.__data__[e];return this.size-=t?1:0,t}var Su=Au,Cu=Sn,Eu="__lodash_hash_undefined__",Iu=Object.prototype,_u=Iu.hasOwnProperty;function Du(e){var t=this.__data__;if(Cu){var n=t[e];return n===Eu?void 0:n}return _u.call(t,e)?t[e]:void 0}var Nu=Du,Ou=Sn,Pu=Object.prototype,ku=Pu.hasOwnProperty;function Ru(e){var t=this.__data__;return Ou?t[e]!==void 0:ku.call(t,e)}var Lu=Ru,Mu=Sn,ju="__lodash_hash_undefined__";function Bu(e,t){var n=this.__data__;return this.size+=this.has(e)?0:1,n[e]=Mu&&t===void 0?ju:t,this}var $u=Bu,Fu=xu,Wu=Su,Uu=Nu,zu=Lu,Hu=$u;function it(e){var t=-1,n=e==null?0:e.length;for(this.clear();++t<n;){var a=e[t];this.set(a[0],a[1])}}it.prototype.clear=Fu;it.prototype.delete=Wu;it.prototype.get=Uu;it.prototype.has=zu;it.prototype.set=Hu;var Gu=it,Es=Gu,Vu=xn,qu=ka;function Yu(){this.size=0,this.__data__={hash:new Es,map:new(qu||Vu),string:new Es}}var Ku=Yu;function Qu(e){var t=typeof e;return t=="string"||t=="number"||t=="symbol"||t=="boolean"?e!=="__proto__":e===null}var Xu=Qu,Zu=Xu;function Ju(e,t){var n=e.__data__;return Zu(t)?n[typeof t=="string"?"string":"hash"]:n.map}var Cn=Ju,em=Cn;function tm(e){var t=em(this,e).delete(e);return this.size-=t?1:0,t}var nm=tm,am=Cn;function sm(e){return am(this,e).get(e)}var rm=sm,om=Cn;function im(e){return om(this,e).has(e)}var lm=im,cm=Cn;function dm(e,t){var n=cm(this,e),a=n.size;return n.set(e,t),this.size+=n.size==a?0:1,this}var pm=dm,um=Ku,mm=nm,ym=rm,wm=lm,hm=pm;function lt(e){var t=-1,n=e==null?0:e.length;for(this.clear();++t<n;){var a=e[t];this.set(a[0],a[1])}}lt.prototype.clear=um;lt.prototype.delete=mm;lt.prototype.get=ym;lt.prototype.has=wm;lt.prototype.set=hm;var Ra=lt,gm=xn,fm=ka,Tm=Ra,bm=200;function vm(e,t){var n=this.__data__;if(n instanceof gm){var a=n.__data__;if(!fm||a.length<bm-1)return a.push([e,t]),this.size=++n.size,this;n=this.__data__=new Tm(a)}return n.set(e,t),this.size=n.size,this}var xm=vm,Am=xn,Sm=dp,Cm=up,Em=yp,Im=hp,_m=xm;function ct(e){var t=this.__data__=new Am(e);this.size=t.size}ct.prototype.clear=Sm;ct.prototype.delete=Cm;ct.prototype.get=Em;ct.prototype.has=Im;ct.prototype.set=_m;var Lo=ct,Dm="__lodash_hash_undefined__";function Nm(e){return this.__data__.set(e,Dm),this}var Om=Nm;function Pm(e){return this.__data__.has(e)}var km=Pm,Rm=Ra,Lm=Om,Mm=km;function on(e){var t=-1,n=e==null?0:e.length;for(this.__data__=new Rm;++t<n;)this.add(e[t])}on.prototype.add=on.prototype.push=Lm;on.prototype.has=Mm;var Mo=on;function jm(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 Bm=jm;function $m(e,t){return e.has(t)}var jo=$m,Fm=Mo,Wm=Bm,Um=jo,zm=1,Hm=2;function Gm(e,t,n,a,s,o){var i=n&zm,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&Hm?new Fm:void 0;for(o.set(e,t),o.set(t,e);++m<l;){var f=e[m],g=t[m];if(a)var x=i?a(g,f,m,t,e,o):a(f,g,m,e,t,o);if(x!==void 0){if(x)continue;y=!1;break}if(w){if(!Wm(t,function(S,I){if(!Um(w,I)&&(f===S||s(f,S,n,a,o)))return w.push(I)})){y=!1;break}}else if(!(f===g||s(f,g,n,a,o))){y=!1;break}}return o.delete(e),o.delete(t),y}var Bo=Gm,Vm=Ee,qm=Vm.Uint8Array,Ym=qm;function Km(e){var t=-1,n=Array(e.size);return e.forEach(function(a,s){n[++t]=[s,a]}),n}var Qm=Km;function Xm(e){var t=-1,n=Array(e.size);return e.forEach(function(a){n[++t]=a}),n}var La=Xm,Is=An,_s=Ym,Zm=Pa,Jm=Bo,ey=Qm,ty=La,ny=1,ay=2,sy="[object Boolean]",ry="[object Date]",oy="[object Error]",iy="[object Map]",ly="[object Number]",cy="[object RegExp]",dy="[object Set]",py="[object String]",uy="[object Symbol]",my="[object ArrayBuffer]",yy="[object DataView]",Ds=Is?Is.prototype:void 0,Wn=Ds?Ds.valueOf:void 0;function wy(e,t,n,a,s,o,i){switch(n){case yy:if(e.byteLength!=t.byteLength||e.byteOffset!=t.byteOffset)return!1;e=e.buffer,t=t.buffer;case my:return!(e.byteLength!=t.byteLength||!o(new _s(e),new _s(t)));case sy:case ry:case ly:return Zm(+e,+t);case oy:return e.name==t.name&&e.message==t.message;case cy:case py:return e==t+"";case iy:var l=ey;case dy:var c=a&ny;if(l||(l=ty),e.size!=t.size&&!c)return!1;var d=i.get(e);if(d)return d==t;a|=ay,i.set(e,t);var p=Jm(l(e),l(t),a,s,o,i);return i.delete(e),p;case uy:if(Wn)return Wn.call(e)==Wn.call(t)}return!1}var hy=wy;function gy(e,t){for(var n=-1,a=t.length,s=e.length;++n<a;)e[s+n]=t[n];return e}var fy=gy,Ty=Array.isArray,Pe=Ty,by=fy,vy=Pe;function xy(e,t,n){var a=t(e);return vy(e)?a:by(a,n(e))}var Ay=xy;function Sy(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=Sy;function Ey(){return[]}var Iy=Ey,_y=Cy,Dy=Iy,Ny=Object.prototype,Oy=Ny.propertyIsEnumerable,Ns=Object.getOwnPropertySymbols,Py=Ns?function(e){return e==null?[]:(e=Object(e),_y(Ns(e),function(t){return Oy.call(e,t)}))}:Dy,ky=Py;function Ry(e,t){for(var n=-1,a=Array(e);++n<e;)a[n]=t(n);return a}var Ly=Ry;function My(e){return e!=null&&typeof e=="object"}var dt=My,jy=rt,By=dt,$y="[object Arguments]";function Fy(e){return By(e)&&jy(e)==$y}var Wy=Fy,Os=Wy,Uy=dt,$o=Object.prototype,zy=$o.hasOwnProperty,Hy=$o.propertyIsEnumerable,Gy=Os(function(){return arguments}())?Os:function(e){return Uy(e)&&zy.call(e,"callee")&&!Hy.call(e,"callee")},Fo=Gy,ln={exports:{}};function Vy(){return!1}var qy=Vy;ln.exports;(function(e,t){var n=Ee,a=qy,s=t&&!t.nodeType&&t,o=s&&!0&&e&&!e.nodeType&&e,i=o&&o.exports===s,l=i?n.Buffer:void 0,c=l?l.isBuffer:void 0,d=c||a;e.exports=d})(ln,ln.exports);var Wo=ln.exports,Yy=9007199254740991,Ky=/^(?:0|[1-9]\d*)$/;function Qy(e,t){var n=typeof e;return t=t??Yy,!!t&&(n=="number"||n!="symbol"&&Ky.test(e))&&e>-1&&e%1==0&&e<t}var Ma=Qy,Xy=9007199254740991;function Zy(e){return typeof e=="number"&&e>-1&&e%1==0&&e<=Xy}var ja=Zy,Jy=rt,ew=ja,tw=dt,nw="[object Arguments]",aw="[object Array]",sw="[object Boolean]",rw="[object Date]",ow="[object Error]",iw="[object Function]",lw="[object Map]",cw="[object Number]",dw="[object Object]",pw="[object RegExp]",uw="[object Set]",mw="[object String]",yw="[object WeakMap]",ww="[object ArrayBuffer]",hw="[object DataView]",gw="[object Float32Array]",fw="[object Float64Array]",Tw="[object Int8Array]",bw="[object Int16Array]",vw="[object Int32Array]",xw="[object Uint8Array]",Aw="[object Uint8ClampedArray]",Sw="[object Uint16Array]",Cw="[object Uint32Array]",V={};V[gw]=V[fw]=V[Tw]=V[bw]=V[vw]=V[xw]=V[Aw]=V[Sw]=V[Cw]=!0;V[nw]=V[aw]=V[ww]=V[sw]=V[hw]=V[rw]=V[ow]=V[iw]=V[lw]=V[cw]=V[dw]=V[pw]=V[uw]=V[mw]=V[yw]=!1;function Ew(e){return tw(e)&&ew(e.length)&&!!V[Jy(e)]}var Iw=Ew;function _w(e){return function(t){return e(t)}}var Dw=_w,cn={exports:{}};cn.exports;(function(e,t){var n=Oo,a=t&&!t.nodeType&&t,s=a&&!0&&e&&!e.nodeType&&e,o=s&&s.exports===a,i=o&&n.process,l=function(){try{var c=s&&s.require&&s.require("util").types;return c||i&&i.binding&&i.binding("util")}catch{}}();e.exports=l})(cn,cn.exports);var Nw=cn.exports,Ow=Iw,Pw=Dw,Ps=Nw,ks=Ps&&Ps.isTypedArray,kw=ks?Pw(ks):Ow,Uo=kw,Rw=Ly,Lw=Fo,Mw=Pe,jw=Wo,Bw=Ma,$w=Uo,Fw=Object.prototype,Ww=Fw.hasOwnProperty;function Uw(e,t){var n=Mw(e),a=!n&&Lw(e),s=!n&&!a&&jw(e),o=!n&&!a&&!s&&$w(e),i=n||a||s||o,l=i?Rw(e.length,String):[],c=l.length;for(var d in e)(t||Ww.call(e,d))&&!(i&&(d=="length"||s&&(d=="offset"||d=="parent")||o&&(d=="buffer"||d=="byteLength"||d=="byteOffset")||Bw(d,c)))&&l.push(d);return l}var zw=Uw,Hw=Object.prototype;function Gw(e){var t=e&&e.constructor,n=typeof t=="function"&&t.prototype||Hw;return e===n}var Vw=Gw;function qw(e,t){return function(n){return e(t(n))}}var Yw=qw,Kw=Yw,Qw=Kw(Object.keys,Object),Xw=Qw,Zw=Vw,Jw=Xw,eh=Object.prototype,th=eh.hasOwnProperty;function nh(e){if(!Zw(e))return Jw(e);var t=[];for(var n in Object(e))th.call(e,n)&&n!="constructor"&&t.push(n);return t}var ah=nh,sh=ko,rh=ja;function oh(e){return e!=null&&rh(e.length)&&!sh(e)}var zo=oh,ih=zw,lh=ah,ch=zo;function dh(e){return ch(e)?ih(e):lh(e)}var Ba=dh,ph=Ay,uh=ky,mh=Ba;function yh(e){return ph(e,mh,uh)}var wh=yh,Rs=wh,hh=1,gh=Object.prototype,fh=gh.hasOwnProperty;function Th(e,t,n,a,s,o){var i=n&hh,l=Rs(e),c=l.length,d=Rs(t),p=d.length;if(c!=p&&!i)return!1;for(var m=c;m--;){var y=l[m];if(!(i?y in t:fh.call(t,y)))return!1}var w=o.get(e),f=o.get(t);if(w&&f)return w==t&&f==e;var g=!0;o.set(e,t),o.set(t,e);for(var x=i;++m<c;){y=l[m];var S=e[y],I=t[y];if(a)var L=i?a(I,S,y,t,e,o):a(S,I,y,e,t,o);if(!(L===void 0?S===I||s(S,I,n,a,o):L)){g=!1;break}x||(x=y=="constructor")}if(g&&!x){var M=e.constructor,ee=t.constructor;M!=ee&&"constructor"in e&&"constructor"in t&&!(typeof M=="function"&&M instanceof M&&typeof ee=="function"&&ee instanceof ee)&&(g=!1)}return o.delete(e),o.delete(t),g}var bh=Th,vh=ot,xh=Ee,Ah=vh(xh,"DataView"),Sh=Ah,Ch=ot,Eh=Ee,Ih=Ch(Eh,"Promise"),_h=Ih,Dh=ot,Nh=Ee,Oh=Dh(Nh,"Set"),Ho=Oh,Ph=ot,kh=Ee,Rh=Ph(kh,"WeakMap"),Lh=Rh,oa=Sh,ia=ka,la=_h,ca=Ho,da=Lh,Go=rt,pt=Ro,Ls="[object Map]",Mh="[object Object]",Ms="[object Promise]",js="[object Set]",Bs="[object WeakMap]",$s="[object DataView]",jh=pt(oa),Bh=pt(ia),$h=pt(la),Fh=pt(ca),Wh=pt(da),Me=Go;(oa&&Me(new oa(new ArrayBuffer(1)))!=$s||ia&&Me(new ia)!=Ls||la&&Me(la.resolve())!=Ms||ca&&Me(new ca)!=js||da&&Me(new da)!=Bs)&&(Me=function(e){var t=Go(e),n=t==Mh?e.constructor:void 0,a=n?pt(n):"";if(a)switch(a){case jh:return $s;case Bh:return Ls;case $h:return Ms;case Fh:return js;case Wh:return Bs}return t});var Uh=Me,Un=Lo,zh=Bo,Hh=hy,Gh=bh,Fs=Uh,Ws=Pe,Us=Wo,Vh=Uo,qh=1,zs="[object Arguments]",Hs="[object Array]",Yt="[object Object]",Yh=Object.prototype,Gs=Yh.hasOwnProperty;function Kh(e,t,n,a,s,o){var i=Ws(e),l=Ws(t),c=i?Hs:Fs(e),d=l?Hs:Fs(t);c=c==zs?Yt:c,d=d==zs?Yt:d;var p=c==Yt,m=d==Yt,y=c==d;if(y&&Us(e)){if(!Us(t))return!1;i=!0,p=!1}if(y&&!p)return o||(o=new Un),i||Vh(e)?zh(e,t,n,a,s,o):Hh(e,t,c,n,a,s,o);if(!(n&qh)){var w=p&&Gs.call(e,"__wrapped__"),f=m&&Gs.call(t,"__wrapped__");if(w||f){var g=w?e.value():e,x=f?t.value():t;return o||(o=new Un),s(g,x,n,a,o)}}return y?(o||(o=new Un),Gh(e,t,n,a,s,o)):!1}var Qh=Kh,Xh=Qh,Vs=dt;function Vo(e,t,n,a,s){return e===t?!0:e==null||t==null||!Vs(e)&&!Vs(t)?e!==e&&t!==t:Xh(e,t,n,a,Vo,s)}var qo=Vo,Zh=Lo,Jh=qo,eg=1,tg=2;function ng(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 Zh;if(a)var y=a(d,p,c,e,t,m);if(!(y===void 0?Jh(p,d,eg|tg,a,m):y))return!1}}return!0}var ag=ng,sg=Pt;function rg(e){return e===e&&!sg(e)}var Yo=rg,og=Yo,ig=Ba;function lg(e){for(var t=ig(e),n=t.length;n--;){var a=t[n],s=e[a];t[n]=[a,s,og(s)]}return t}var cg=lg;function dg(e,t){return function(n){return n==null?!1:n[e]===t&&(t!==void 0||e in Object(n))}}var Ko=dg,pg=ag,ug=cg,mg=Ko;function yg(e){var t=ug(e);return t.length==1&&t[0][2]?mg(t[0][0],t[0][1]):function(n){return n===e||pg(n,e,t)}}var wg=yg,hg=rt,gg=dt,fg="[object Symbol]";function Tg(e){return typeof e=="symbol"||gg(e)&&hg(e)==fg}var En=Tg,bg=Pe,vg=En,xg=/\.|\[(?:[^[\]]*|(["'])(?:(?!\1)[^\\]|\\.)*?\1)\]/,Ag=/^\w*$/;function Sg(e,t){if(bg(e))return!1;var n=typeof e;return n=="number"||n=="symbol"||n=="boolean"||e==null||vg(e)?!0:Ag.test(e)||!xg.test(e)||t!=null&&e in Object(t)}var $a=Sg,Qo=Ra,Cg="Expected a function";function Fa(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(Fa.Cache||Qo),n}Fa.Cache=Qo;var Eg=Fa,Ig=Eg,_g=500;function Dg(e){var t=Ig(e,function(a){return n.size===_g&&n.clear(),a}),n=t.cache;return t}var Ng=Dg,Og=Ng,Pg=/[^.[\]]+|\[(?:(-?\d+(?:\.\d+)?)|(["'])((?:(?!\2)[^\\]|\\.)*?)\2)\]|(?=(?:\.|\[\])(?:\.|\[\]|$))/g,kg=/\\(\\)?/g,Rg=Og(function(e){var t=[];return e.charCodeAt(0)===46&&t.push(""),e.replace(Pg,function(n,a,s,o){t.push(s?o.replace(kg,"$1"):a||n)}),t}),Lg=Rg;function Mg(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 jg=Mg,qs=An,Bg=jg,$g=Pe,Fg=En,Ys=qs?qs.prototype:void 0,Ks=Ys?Ys.toString:void 0;function Xo(e){if(typeof e=="string")return e;if($g(e))return Bg(e,Xo)+"";if(Fg(e))return Ks?Ks.call(e):"";var t=e+"";return t=="0"&&1/e==-1/0?"-0":t}var Wg=Xo,Ug=Wg;function zg(e){return e==null?"":Ug(e)}var Hg=zg,Gg=Pe,Vg=$a,qg=Lg,Yg=Hg;function Kg(e,t){return Gg(e)?e:Vg(e,t)?[e]:qg(Yg(e))}var Zo=Kg,Qg=En;function Xg(e){if(typeof e=="string"||Qg(e))return e;var t=e+"";return t=="0"&&1/e==-1/0?"-0":t}var In=Xg,Zg=Zo,Jg=In;function ef(e,t){t=Zg(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 Jo=ef,tf=Jo;function nf(e,t,n){var a=e==null?void 0:tf(e,t);return a===void 0?n:a}var af=nf;function sf(e,t){return e!=null&&t in Object(e)}var rf=sf,of=Zo,lf=Fo,cf=Pe,df=Ma,pf=ja,uf=In;function mf(e,t,n){t=of(t,e);for(var a=-1,s=t.length,o=!1;++a<s;){var i=uf(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&&pf(s)&&df(i,s)&&(cf(e)||lf(e)))}var yf=mf,wf=rf,hf=yf;function gf(e,t){return e!=null&&hf(e,t,wf)}var ff=gf,Tf=qo,bf=af,vf=ff,xf=$a,Af=Yo,Sf=Ko,Cf=In,Ef=1,If=2;function _f(e,t){return xf(e)&&Af(t)?Sf(Cf(e),t):function(n){var a=bf(n,e);return a===void 0&&a===t?vf(n,e):Tf(t,a,Ef|If)}}var Df=_f;function Nf(e){return e}var Of=Nf;function Pf(e){return function(t){return t?.[e]}}var kf=Pf,Rf=Jo;function Lf(e){return function(t){return Rf(t,e)}}var Mf=Lf,jf=kf,Bf=Mf,$f=$a,Ff=In;function Wf(e){return $f(e)?jf(Ff(e)):Bf(e)}var Uf=Wf,zf=wg,Hf=Df,Gf=Of,Vf=Pe,qf=Uf;function Yf(e){return typeof e=="function"?e:e==null?Gf:typeof e=="object"?Vf(e)?Hf(e[0],e[1]):zf(e):qf(e)}var ei=Yf;function Kf(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 Qf=Kf,Xf=Qf,Zf=Xf(),Jf=Zf,eT=Jf,tT=Ba;function nT(e,t){return e&&eT(e,t,tT)}var aT=nT,sT=aT;function rT(e,t,n,a){return sT(e,function(s,o,i){t(a,n(s),o,i)}),a}var oT=rT,iT=oT;function lT(e,t){return function(n,a){return iT(n,e,t(a),{})}}var cT=lT,dT=ei,pT=cT,ti=Object.prototype,uT=ti.hasOwnProperty,mT=ti.toString,yT=pT(function(e,t,n){t!=null&&typeof t.toString!="function"&&(t=mT.call(t)),uT.call(e,t)?e[t].push(n):e[t]=[n]},dT),wT=yT;const hT=bn(wT),bt="Canceled by user",gT={"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."};hT(gT);const ni=e=>typeof e=="object"&&e!==null&&"message"in e&&typeof e.message=="string",ai=e=>{if(ni(e))return e;try{return new Error(JSON.stringify(e))}catch{return new Error(String(e))}},si=e=>ai(e).message;class ut extends Vl.CustomError{constructor({message:n=Rr,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 fT=async()=>{},zn=e=>{const t=e[e.length-1],n=typeof t=="object"&&t!==null&&("value"in t||"gas"in t),a=n?t:{},s=n?e.slice(0,-1):e;return{transactionOverrides:a,argumentsWithoutOverrides:s}},xe=({functionName:e,dynamicContractAddress:t,contractId:n,onSettled:a})=>{const{account:s}=B(),{chainId:o,supportedChainId:i}=Ce(),l=E.useWalletClient({chainId:o}),c=E.usePublicClient({chainId:o}),d=ao(n),p=t??z(n,o??i),m=Eo(),{writeContract:y}=E.useWriteContract({mutation:{onSettled:a}}),w=u.useCallback(async(...x)=>{try{const{argumentsWithoutOverrides:S,transactionOverrides:I}=zn(x),L=await c?.estimateContractGas({address:p,abi:d,functionName:e,args:S,account:s??_,gas:I.gas,value:I.value});if(!L||!o||L===BigInt(0))return{error:ta,value:BigInt(0)};const M=Math.round(Number(L)*gr),ee=Xt[o]??M,Ae=BigInt(Math.min(ee,M));return console.debug(`[core-ui-kit]: estimated gas limit: ${Number(L)}`),{error:"",value:Ae}}catch(S){return console.error(`Gas estimate error on ${e}`,S),{error:S?.message??S?.shortMessage??S.error?.data?.message??S.data?.message??ta,value:BigInt(0)}}},[s,o,c,e,p,d]),f=u.useCallback(async(...x)=>{try{if(!m)return{data:null,error:na};if(!c)return{data:null,error:"Client is not defined"};const{argumentsWithoutOverrides:S,transactionOverrides:I}=zn(x),L=D.encodeFunctionData({abi:d,functionName:e,args:S});if(s&&L){const M=await m({chainId:o??i,from:s,to:p,input:L,gas:Xt[o??i]??0,value:I.value?.toString()});return{data:M,error:M?.simulation.error_message}}return{data:null,error:na}}catch(S){return console.debug("Failed to simulate:",S),{data:null,error:si(S)}}},[s,o,c,d,p,e,m,i]),g=u.useCallback(async(...x)=>{const{argumentsWithoutOverrides:S,transactionOverrides:I}=zn(x);if(I.gas)return y({address:p,abi:d,functionName:e,chainId:o,args:S,...I});const{value:L,error:M}=await w(...x);if(M){const{data:ee}=await Promise.race([f(...x),new Promise(Ae=>setTimeout(Ae,fr,{data:null,error:Lr}))]);throw new ut({message:M,link:ee?.link,txArgs:x,account:s,functionName:e,onBypass:()=>l?.data?.writeContract({address:p,abi:d,functionName:e,account:s,chainId:o,args:S,...I,gas:BigInt(Xt[o??i]??0)})})}return console.debug(`[core-ui-kit]: gas limit to use: ${L}`),y({address:p,abi:d,functionName:e,chainId:o,args:S,...I,gas:L})},[w,y,f,s,e,l?.data,p,d,o,i]);return{send:o&&c?g:fT,estimate:w}},ri=e=>E.useEstimateFeesPerGas({...e,query:{...e?.query,staleTime:3e4}}),_n=e=>{u.useEffect(()=>{e&&e.forEach(({error:t,status:n})=>{n==="failure"&&console.warn(t?.message)})},[e])},Wa=({error:e,status:t})=>{u.useEffect(()=>{e&&t==="failure"&&console.warn(e?.message)},[e,t])},oi=async({functionName:e,address:t,abi:n,args:a,publicClient:s})=>(await s?.simulateContract({address:t,abi:n,functionName:e,args:a}))?.result,TT=({disabled:e,functionName:t,address:n,abi:a,args:s,chainId:o,refetchInterval:i})=>{const l=E.usePublicClient({chainId:o});return tt.useQuery({queryKey:[{functionName:t,address:n,args:s,chainId:o}],queryFn:async({queryKey:[c]})=>{if(c)return await oi({address:n,abi:a,functionName:c.functionName,args:c.args,publicClient:l})},enabled:!e&&!!o&&!te(n)&&!!t,refetchInterval:i})},dn=({queryKey:e,watch:t=!0})=>{const n=tt.useQueryClient(),{data:a}=E.useBlockNumber({query:{refetchInterval:ze}});u.useEffect(()=>{t&&n.refetchQueries({queryKey:e,stale:!0})},[t,a])},Dn="limitOrders",Ua="getAllLimitOrderIds",za=0,ii="100",bT=1,vT=5,xT=2,AT=["balanceOf","getFundSummary","getFundComposition","withdrawalContracts","getTrackedAssets","getAssetPrice","allowance","getExitRemainingCooldown","tokenPrice","limitOrders","calculateAvailableManagerFee",Dn,Ua],ST=["allowance"],Qs=(e,t)=>e[0]==="readContract"?t.includes(e?.[1]?.functionName??""):e[0]==="readContracts"?!!e[1]?.contracts?.some(({functionName:a})=>t.includes(a??"")):!1,Nn=()=>{const e=tt.useQueryClient(),t=u.useCallback(()=>{e.invalidateQueries({predicate:({queryKey:a})=>Qs(a,ST)})},[e]),n=u.useCallback(()=>{e.invalidateQueries({predicate:({queryKey:a})=>Qs(a,AT)})},[e]);return{invalidateAllowanceQueries:t,invalidateTradingQueries:n}},On=()=>{const{chainId:e}=Ce(),{data:t}=E.useCapabilities();if(!e||!t)return!1;const n=t?.[e]?.atomic?.status;return!!n&&n!=="unsupported"},CT=({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}=ql.usePopperTooltip({interactive:s,delayHide:o,offset:[0,12],placement:n,trigger:a});return r.jsxs(r.Fragment,{children:[r.jsx("span",{ref:c,children:t}),d&&r.jsx("span",{ref:l,...i({className:"tooltip-container dtw-z-50 dtw-bg-[color:var(--panel-tooltip-bg)] dtw-text-[color:var(--panel-tooltip-color)] dtw-px-2 dtw-py-1.5 dtw-rounded-md dtw-text-xs dtw-text-center dtw-block dtw-whitespace-normal"}),children:e})]})},Ha=({text:e,...t})=>r.jsx(CT,{...t,tooltipContent:r.jsx("span",{className:"dtw-inline-block dtw-max-w-xs",children:e})}),li=({text:e,placement:t,iconClassName:n="dtw-text-[color:var(--panel-secondary-content-color)]",Icon:a=se.QuestionMarkCircleIcon})=>r.jsx(Ha,{text:e,placement:t,children:r.jsx(a,{className:C("dtw-h-4 dtw-w-4 dtw-cursor-help hover:dtw-text-[color:var(--panel-icon-color-hover))]",n)})}),$e=({label:e,tooltipText:t,children:n})=>r.jsxs("div",{children:[r.jsxs("div",{className:"dtw-flex dtw-items-center dtw-gap-x-1 dtw-text-[length:var(--panel-popup-font-size)] dtw-text-[color:var(--panel-popup-content-color,var(--panel-secondary-content-color))]",children:[r.jsx("span",{children:e}),r.jsx(li,{text:t,placement:"top"})]}),r.jsx("div",{className:"dtw-mt-1.5",children:n})]}),he=({symbol:e,address:t,watch:n=!1})=>{const{account:a}=B(),s=b(),o=hn(e,s.chainId),{data:i}=ri({chainId:s.chainId,query:{enabled:o}}),{data:l,queryKey:c}=Oa({chainId:s.chainId,address:a,query:{enabled:o&&!!a}}),{data:d,queryKey:p}=E.useReadContracts({contracts:[{address:t,abi:D.erc20Abi,functionName:"balanceOf",chainId:s.chainId,args:[a??_]},{address:t,abi:D.erc20Abi,chainId:s.chainId,functionName:"decimals"}],query:{enabled:!o&&!!a}});return dn({watch:n&&o,queryKey:c}),dn({watch:n&&!o,queryKey:p}),o?lo({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)},kt=()=>{const[{value:e,symbol:t,address:n}]=N(),a=he({symbol:t,address:n});return new T(e||0).gt(a??0)},ET=({address:e,chainId:t})=>[{address:z("factory",t),abi:He,functionName:"isPool",chainId:t,args:[e]}],IT=e=>({isUserDhedgePool:e[0].result}),Rt=()=>{const{account:e=_}=B(),{chainId:t,supportedChainId:n}=Ce(),a=t??n,{data:s}=E.useReadContracts({contracts:ET({address:e,chainId:a}),query:{enabled:!te(e),select:IT}});return!!s?.isUserDhedgePool},_T=({address:e,chainId:t})=>[{address:e??_,abi:be,functionName:"poolManagerLogic",chainId:t},{address:z("easySwapperV2",t),abi:ve,functionName:"customCooldownDepositsWhitelist",args:[e],chainId:t},{address:z("easySwapperV2",t),abi:ve,functionName:"customCooldown",args:[],chainId:t},{address:z("factory",t),chainId:t,abi:He,functionName:"getAssetGuard",args:[z("aaveLendingPoolV3",t)]}],DT=e=>({poolManagerLogic:e[0].result,isCustomCooldownDepositAllowed:e[1].result,customCooldown:e[2].result,aaveAssetGuardAddress:e[3].result}),Lt=({address:e,chainId:t})=>E.useReadContracts({contracts:_T({address:e,chainId:t}),query:{enabled:!!e&&!te(e),staleTime:1/0,select:DT}}),Ga=({address:e,chainId:t})=>{const[n]=qe(),{data:{poolManagerLogic:a}={}}=Lt({address:e,chainId:t});return n.managerLogicAddress??a},NT=({address:e,chainId:t,account:n})=>[{address:e,abi:De,functionName:"getFeeIncreaseInfo",chainId:t},{address:e,abi:De,functionName:"minDepositUSD",chainId:t},{address:e,abi:De,functionName:"isMemberAllowed",args:[n??_],chainId:t},{address:e,abi:De,functionName:"maxSupplyCap",args:[],chainId:t}],OT=e=>({getFeeIncreaseInfo:e[0].result,minDepositUSD:e[1].result,isMemberAllowed:e[2].result,maxSupplyCapD18:e[3].result}),Mt=({address:e,chainId:t})=>{const n=Ga({address:e,chainId:t}),{account:a=_}=B(),s=E.useReadContracts({contracts:NT({address:n??_,chainId:t,account:a}),query:{enabled:!!n&&!te(n),staleTime:1/0,select:OT}});return Wa({error:s.error,status:s.status}),s},PT=({chainId:e,address:t})=>[{address:t,abi:De,functionName:"getFundComposition",chainId:e},{address:t,abi:De,functionName:"getSupportedAssets",chainId:e}],kT=e=>({getFundComposition:e[0].result,getSupportedAssets:e[1].result?.map(({asset:t})=>t)}),jt=({address:e,chainId:t})=>{const n=Ga({address:e,chainId:t});return E.useReadContracts({contracts:PT({address:n??_,chainId:t}),query:{enabled:!!n&&!te(n),select:kT,refetchInterval:nt}})};function RT(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 LT=RT,MT=Pa,jT=zo,BT=Ma,$T=Pt;function FT(e,t,n){if(!$T(n))return!1;var a=typeof t;return(a=="number"?jT(n)&&BT(t,n.length):a=="string"&&t in n)?MT(n[t],e):!1}var WT=FT,UT=/\s/;function zT(e){for(var t=e.length;t--&&UT.test(e.charAt(t)););return t}var HT=zT,GT=HT,VT=/^\s+/;function qT(e){return e&&e.slice(0,GT(e)+1).replace(VT,"")}var YT=qT,KT=YT,Xs=Pt,QT=En,Zs=NaN,XT=/^[-+]0x[0-9a-f]+$/i,ZT=/^0b[01]+$/i,JT=/^0o[0-7]+$/i,eb=parseInt;function tb(e){if(typeof e=="number")return e;if(QT(e))return Zs;if(Xs(e)){var t=typeof e.valueOf=="function"?e.valueOf():e;e=Xs(t)?t+"":t}if(typeof e!="string")return e===0?e:+e;e=KT(e);var n=ZT.test(e);return n||JT.test(e)?eb(e.slice(2),n?2:8):XT.test(e)?Zs:+e}var nb=tb,ab=nb,sb=1/0,rb=17976931348623157e292;function ob(e){if(!e)return e===0?e:0;if(e=ab(e),e===sb||e===-1/0){var t=e<0?-1:1;return t*rb}return e===e?e:0}var ib=ob,lb=ib;function cb(e){var t=lb(e),n=t%1;return t===t?n?t-n:t:0}var db=cb,pb=LT,ub=WT,mb=db,yb=Math.ceil,wb=Math.max;function hb(e,t,n){(n?ub(e,t,n):t===void 0)?t=1:t=wb(mb(t),0);var a=e==null?0:e.length;if(!a||t<1)return[];for(var s=0,o=0,i=Array(yb(a/t));s<a;)i[o++]=pb(e,s,s+=t);return i}var gb=hb;const ci=bn(gb),di=({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:[]}],fb=e=>e.flatMap(di),Tb=di({account:_,chainId:h.optimism.id,address:_}).length,pi=({account:e})=>{const{chainId:t}=Ce(),n=at();return E.useReadContracts({contracts:fb(n.map(a=>({...a,account:e}))),query:{select:a=>ci(a,Tb).reduce((s,[o,i],l)=>{const c=n?.[l]?.address??_;return{...s,[c]:{balance:o?.result?.toString(),tokenPrice:i?.result?.toString()}}},{}),placeholderData:(a,s)=>{if(s?.queryKey?.[1].chainId!==t)return a},refetchInterval:nt,enabled:!te(e)}})},bb=({chainId:e,address:t})=>[{address:t,abi:be,functionName:"tokenPrice",chainId:e,args:[]},{address:t,abi:be,functionName:"getFundSummary",chainId:e}],vb=([e,t])=>{const n=t?.result;return{tokenPrice:e?.result!==BigInt(0)?e?.result?.toString():Kl,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:bb({address:e,chainId:t}),query:{enabled:a&&!!e&&!te(e),refetchInterval:n,select:vb}}),ui=({address:e,chainId:t})=>{const{account:n}=B(),{data:{managerAddress:a}={managerAddress:_}}=oe({address:e,chainId:t}),{data:{isMemberAllowed:s=!1}={}}=Mt({address:e,chainId:t});return n?s||H(n,a):!1},mi=({address:e,chainId:t})=>{const[n]=qe(),a=u.useMemo(()=>n.poolCompositions?.reduce((p,{tokenAddress:m,tokenName:y,precision:w,asset:f})=>({...p,[m.toLowerCase()]:{tokenName:y,precision:w,asset:f}}),{}),[n.poolCompositions]),{data:{getFundComposition:[s,o,i]=[]}={},isFetched:l}=jt({address:e,chainId:t}),c=u.useMemo(()=>s?.map(({asset:p})=>p)??[],[s]),{data:d}=E.useReadContracts({contracts:c.flatMap(p=>[{address:p,abi:D.erc20Abi,functionName:"symbol",chainId:t},{address:p,abi:D.erc20Abi,functionName:"decimals",chainId:t}]),query:{enabled:l&&c?.length>0&&!!t&&!c.every(p=>a?.[p.toLowerCase()]),staleTime:1/0}});return _n(d),u.useMemo(()=>{if(!s?.length)return[];const p=ci(d,2);return s.map(({asset:m,isDeposit:y},w)=>{const f=m.toLowerCase(),[g,x]=p[w]??[],S=Ea[f.toLowerCase()]??g?.result?.toString()??a?.[f]?.tokenName??so(f);return{tokenAddress:f,isDeposit:y,rate:i?.[w]?.toString()??"0",amount:o?.[w]?.toString()??"0",tokenName:S,precision:x?.result?Number(x.result):a?.[f]?.precision??k,asset:{iconSymbols:a?.[f]?.asset.iconSymbols??[S]}}})},[o,i,a,s,d])},mt=({address:e,chainId:t})=>{const[n]=qe(),a=mi({address:e,chainId:t});return a.length?a:n.poolCompositions??[]},xb=e=>{const t=e?.[0]?.toString()??"",n=e?.[1]?.toString()??"",a=e?.[2]?.toString()??"",s=e?.[3]?.toString()??"",o=e?.[4]?.toString()??"";return{announcedPerformanceFee:t,announcedStreamingFee:n,announcedEntryFee:a,announcedExitFee:s,announcedTimestamp:o}},Va=(e,t)=>{const{data:{getFeeIncreaseInfo:n,minDepositUSD:a}={}}=Mt({address:e,chainId:t});return{...xb(n),minDepositUSD:+D.formatUnits(a??BigInt(0),k)}},Ab=({composition:e,vaultTokensAmount:t,totalSupplyD18:n})=>e.reduce((a,s)=>{const o=a.find(({tokenName:i})=>i===s.tokenName);if(o){const i=new T(o.amount).shiftedBy(-o.precision),l=new T(s.amount).shiftedBy(-s.precision);return o.amount=i.plus(l).shiftedBy(o.precision).toFixed(0),a}return[...a,s]},[]).map(a=>{const s=sa(a.amount,t,n,a.precision),o=sa(new T(a.rate).multipliedBy(a.amount).shiftedBy(-a.precision).toFixed(),t,n);return{...a,fraction:s.toFixed(_t(s)),fractionUsd:ne({value:o}),fractionUsdNumber:o}}).filter(({amount:a})=>a!=="0").sort((a,s)=>s.fractionUsdNumber-a.fractionUsdNumber),yi=({address:e,vaultTokensAmount:t,chainId:n})=>{const a=mt({address:e,chainId:n}),{data:{totalSupplyD18:s}={}}=oe({address:e,chainId:n});return u.useMemo(()=>s?Ab({composition:a,vaultTokensAmount:rn(t||0),totalSupplyD18:s}):[],[t,a,s])},ue=({address:e,chainId:t,formatter:n=D.formatEther})=>{const[a]=qe(),{data:s}=oe({address:e,chainId:t,refetchInterval:nt});return n(BigInt(s?.tokenPrice??a?.tokenPrice??"0"))},Pn=({address:e,chainId:t})=>{const[n]=qe(),a=H(n.address,e)?n:null,{data:{performanceFee:s,streamingFee:o,entryFee:i,exitFee:l}={}}=oe({address:e,chainId:t}),c=i??a?.entryFeeNumerator??"0",d=l??a?.exitFeeNumerator??"0";return u.useMemo(()=>{const p=s??a?.performanceFeeNumerator??"0",m=o??a?.streamingFeeNumerator??"0";return{performanceFee:xt(p,ye),performanceFeeNumber:Ne(+p,ye),streamingFee:xt(m,ye,2),streamingFeeNumber:Ne(+m,ye),entryFee:xt(c,ye,2),entryFeeNumber:Ne(+c,ye),exitFee:xt(d,ye,2),exitFeeNumber:Ne(+d,ye)}},[s,a?.performanceFeeNumerator,a?.streamingFeeNumerator,o,c,d])},wi=()=>{const{address:e,chainId:t}=b(),{queryKey:n}=jt({address:e,chainId:t});dn({queryKey:n})},Kt=h.base.id,Sb=e=>{const t=z("flatcoinPointsModule",Kt);return[{address:t,chainId:Kt,abi:Zt,functionName:"lockedBalance",args:[e]},{address:t,chainId:Kt,abi:Zt,functionName:"getUnlockTax",args:[e]},{address:t,chainId:Kt,abi:Zt,functionName:"unlockTime",args:[e]}]},hi=({enabled:e,address:t})=>E.useReadContracts({contracts:Sb(t),query:{enabled:e,select:n=>{const[a,s,o]=n;return{lockedVaultPointsBalance:a?.result,unlockTaxInPercents:s?.result,unlockTime:o?.result}}}}),Cb=[...to],qa=({address:e,chainId:t})=>{const n=mt({address:e,chainId:t}),a=z("factory",t);return E.useReadContracts({contracts:n.map(({tokenAddress:s})=>({address:a,abi:He,functionName:"isPool",chainId:t,args:[s]})),query:{select:s=>n.some(({amount:o,tokenAddress:i},l)=>(!!s[l]?.result||Cb.some(p=>H(p,i)))&&o!=="0"),staleTime:1/0}})},Eb=[[30*1e3,5e3],[60*1e3,1e4],[5*60*1e3,2e4]],Ib=e=>{if(!e)return!1;for(const[t,n]of Eb)if(e<=t)return n;return Ql},Hn=e=>Number(e?.toString()??"0")*1e3,_b=({address:e,chainId:t})=>{const{account:n}=B();return E.useReadContract({address:e,abi:be,functionName:"getExitRemainingCooldown",chainId:t,args:[n??_],query:{enabled:!!n,select:Hn,refetchInterval:a=>Ib(Hn(a.state?.data)),refetchOnWindowFocus:a=>Hn(a.state?.data)>0}})};function Db(e,t,n){if(!e||!t)return{balanceInUsd:"",balanceInUsdNumber:0};const a=+e*Fe(t);return{balanceInUsd:ne({value:a,maximumFractionDigits:n}),balanceInUsdNumber:a}}const gi=(e,t)=>cd(e)?{rawBalance:e?.toString()??"",...Db(D.formatUnits(e,U),t?.toString())}:{rawBalance:"",balanceInUsd:"",balanceInUsdNumber:0},fi=({account:e}={})=>{const{account:t}=B(),n=e??t??_,{data:a}=pi({account:n});return u.useMemo(()=>te(n)?{}:Object.entries(a??{}).reduce((s,[o,i])=>{const l=gi(BigInt(i.balance??"0"),BigInt(i.tokenPrice??"0"));return l.balanceInUsdNumber>0?{...s,[o]:l}:s},{}),[n,a])},Ti=({account:e,chainId:t,address:n})=>{const{data:a,isFetched:s}=oe({address:n,chainId:t}),{poolFallbackData:o}=J(),i=H(o.address,n)?o.tokenPrice??"0":"0";return E.useReadContract({address:e?n:void 0,abi:be,functionName:"balanceOf",chainId:t,args:[e],query:{enabled:!te(e)&&s,select:l=>gi(l,BigInt(a?.tokenPrice??i))}})},Nb=e=>Math.ceil(Fe(e)),bi=({address:e,chainId:t,select:n=Nb})=>{const{data:{totalValueD18:a}={}}=oe({address:e,chainId:t}),{data:{maxSupplyCapD18:s}={}}=Mt({address:e,chainId:t});return E.useReadContract({address:e,chainId:t,abi:be,functionName:"calculateAvailableManagerFee",args:[BigInt(a??"0")],query:{enabled:!!a&&!!s&&s>0n,select:n}})},vi=({address:e,chainId:t})=>{const{data:{maxSupplyCapD18:n}={}}=Mt({address:e,chainId:t}),{data:{totalSupplyD18:a}={}}=oe({address:e,chainId:t}),s=ue({address:e,chainId:t}),{data:o=0}=bi({address:e,chainId:t});if(!n||n===0n)return null;const i=Math.ceil(Fe(a??0)),l=Fe(n),c=Math.max(0,l-o),d=Math.max(0,c-i),p=d*Number(s);return{totalSupplyNumber:i,maxSupplyCapNumber:c,remainingSupplyCapNumber:d,remainingSupplyCapInUsd:p}},Ob=({address:e,chainId:t})=>{const{data:{isPrivateVault:n}={isPrivateVault:!1}}=oe({address:e,chainId:t}),s=at().find(i=>H(e,i.address)&&i.chainId===t),o=!!(s?.maintenance||s?.maintenanceDeposits);return n||o},Pb=e=>oe(e),kb=()=>{const{address:e,symbol:t,chainId:n}=b(),{account:a=_}=B(),s=he({symbol:t,address:e}),{data:{totalSupplyD18:o}={}}=oe({address:e,chainId:n}),l=wo(e)&&!H(a,_),{data:{lockedVaultPointsBalance:c,unlockTaxInPercents:d,unlockTime:p}={},isLoading:m}=hi({enabled:l,address:e});return u.useMemo(()=>{const y=o?new T.BigNumber(s).shiftedBy(k).dividedBy(o):new T.BigNumber(0),w=c?new T.BigNumber(c.toString()).multipliedBy(y).shiftedBy(-18):new T.BigNumber(0),f=d?w.multipliedBy(d.toString()).shiftedBy(-18):new T.BigNumber(0),g=p?Number(p)*1e3:null;return{userPortionOfLockedPointsBalance:w.toFixed(),unlockTaxAmount:f.toFixed(),vestedPointsAmount:w.minus(f).toFixed(),unlockTimestamp:g,unlockDate:g?Et.format(g,"PPP"):null,isLoading:m}},[o,s,c,d,p,m])},Rb={"Lend/Borrow V2":"aave","Lend/Borrow V3":"aave","Lyra Options":"lyra",ULP:"uni"};function Lb(e){const t=Rb[e];if(t)return t;const n=e.toLowerCase();return n.includes("bear")?"torosbear":n.includes("bull")?"torosbull":n}const Ya=e=>e?`https://raw.githubusercontent.com/dhedge/crypto-icons/main/icons/${Lb(e)}.png`:"",xi={isGeoBlocked:!1,isSanctioned:!1,depositQuoteDiffWarningThreshold:1.5,depositQuoteDiffErrorThreshold:3,defaultWithdrawSlippage:ur,defaultLockTime:dr,defaultNoSwapMinDepositAmountGap:Zl,defaultSwapTransactionSlippage:Jl,defaultNotificationDuration:ac,stablePrecision:3,defaultPrecision:6,termsOfUseAccepted:!0,standalone:!0,isAllAssetsWithdrawOptionDefault:!1,chainConfig:{[h.mainnet.id]:{name:"Ethereum",iconPath:""},[h.arbitrum.id]:{name:"Arbitrum",iconPath:""},[h.optimism.id]:{name:"Optimism",iconPath:""},[h.polygon.id]:{name:"Polygon",iconPath:""},[h.base.id]:{name:"Base",iconPath:""}},getFallbackIconPath:Ya,minLimitOrderValue:0,limitOrderThemeConfig:{}},Mb=()=>{const{connect:e}=E.useConnect(),t=u.useCallback(()=>e({connector:Yl.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}},jb={params:{...xi},actions:{onConnect:()=>{},onAcceptTermsOfUse:()=>Promise.resolve(!0)}},Ai=u.createContext(jb),Si=({children:e,config:t})=>{const n=Mb(),a=u.useMemo(()=>({params:{...xi,...t?.params},actions:{...n,...t?.actions}}),[t,n]);return r.jsx(Ai.Provider,{value:a,children:e})},Ci=()=>{const e=u.useContext(Ai);if(!e)throw new Error("ConfigContext is used out of Provider");return e},G=()=>Ci().params,Ka=()=>Ci().actions,Qa=()=>{const{depositQuoteDiffErrorThreshold:e}=G(),[t,n]=u.useState(!1),[{slippage:a,minSlippage:s}]=Q(),o=a==="auto"?s??0:a,l=!kt()&&o>e&&!t,c=u.useCallback(()=>{n(!0)},[]);return{requiresHighSlippageConfirm:l,confirmHighSlippage:c,slippageToBeUsed:o}},W={ERROR:"error",WARNING:"warning",SUCCESS:"success",DEFAULT:"default",CUSTOM:"custom"},$={TERMS_OF_USE:"TERMS_OF_USE",HIGH_SLIPPAGE:"HIGH_SLIPPAGE",TOKEN_SELECT:"TOKEN_SELECT",POOL_SELECT:"POOL_SELECT",TRADING:"TRADING",ERROR_NOTIFICATION:"ERROR_NOTIFICATION",LIMIT_SELLS:"LIMIT_SELLS",LIMIT_ORDER_WITHDRAW:"LIMIT_ORDER_WITHDRAW",WITHDRAW_STEPPER:"WITHDRAW_STEPPER"},Bt=e=>{const{depositQuoteDiffErrorThreshold:t,depositQuoteDiffWarningThreshold:n}=G(),a=Math.abs(e);return a>t?W.ERROR:a>n?W.WARNING:W.DEFAULT};var Bb=rt,$b=dt,Fb="[object Number]";function Wb(e){return typeof e=="number"||$b(e)&&Bb(e)==Fb}var Ub=Wb;const zb=bn(Ub),Ei=({tradingType:e,slippage:t,minSlippage:n})=>{const{defaultWithdrawSlippage:a}=G();return t!=="auto"?t.toString():zb(n)?n.toString():e==="deposit"?yn.toString():a.toString()},Ii={depositSlippageWarning:"Excludes entry fee.",withdrawSlippageWarning:"Slippage occurs in both single asset withdrawals and withdrawals from vaults with Aave debt positions. However, for vaults with Aave debt, slippage is only applied to the portion of the withdrawal that corresponds to the Aave position.",minSlippageWarning:"Flexible min slippage value that is likely enough to process the transaction.",highSlippageWarning:"We recommend using another asset to trade with lower slippage.",recommendedMinSlippage:"Recommended min slippage",projectedDailyEarningsTooltip:"Projected daily earnings are based on the current APY and may differ from actual earnings.",dailyEarnings:"Daily earnings",projectedYearlyEarningsTooltip:"Projected yearly earnings are based on the current APY and may differ from actual earnings.",yearlyEarnings:"Yearly earnings",fullReceiveDetails:"See full details influencing what you will receive.",tradeDetails:"Trade details",maxSlippage:"Max slippage",minReceiveAmount:"You will receive no less than this amount.",minReceived:"Minimum received",estimatedMultiAssetFractions:"Pro-rated share of vault assets",infinite:"Infinite approval",tokenAllowance:"Token allowance",entryFee:"Entry fee",exitFee:"Exit fee",entryFeeExplanation:"Entry fee is charged in vault's tokens.",exitFeeExplanation:"Exit fee is charged in vault's tokens.",minDepositUsd:"Minimum deposit in USD.",minDeposit:"Minimum deposit",tokensLockTime:"Purchased tokens will have a {lockTime} lock.",slippageTolerance:"Slippage tolerance",reduceLockupTime:"Reduce lockup time",toggleTokenApprovalAmount:"Toggle between exact and infinite token approval.",auto:"Auto",reduceLockup:"Reduce lockup to {customLockTime} by paying 0.1% fee",deposit:"Buy",withdraw:"Sell",max:"Max",allAssets:"All Assets",all:"All",sell:"Sell",sellNow:"Sell Now",confirmInWallet:"Please confirm in wallet",pending:"Pending...",approve:"Approve",connectWallet:"Connect Wallet",minimumPurchase:"Minimum purchase is {value}",poolIsInactive:"{poolSymbol} token is no longer active. Please withdraw from them.",poolDepositsAreMaintenance:"{poolSymbol} token is under maintenance. Deposits are temporarily blocked.",exceedsDepositCapacity:"Deposit amount exceeds available {poolSymbol} deposit capacity.",poolWithdrawalsAreMaintenance:"{poolSymbol} token is under maintenance. Withdrawals are temporarily blocked.",poolIsPrivate:"This vault is currently private",confirmMaxSlippage:"Confirm {slippagePercentage}% max slippage",withdrawalLiquidityDisabled:"Intended withdraw value is greater than available liquidity ({value})",withdrawCooldown:"You can sell your {tokenSymbol} tokens in {cooldownEndTime}",termsOfUse:"Terms Of Use",termOfUseDepositListTitle:"Please know the following before depositing",termOfUseDepositAssetSlippage:"When exiting, investors receive single asset or the underlying vault assets. Withdraw slippage can be customized in withdraw settings",termOfUseDepositBugs:"There may be interface bugs on the platform",termOfUseDepositDowntime:"There may be interface downtime (planned and unplanned)",termOfUseDepositAuditRisk:"Smart contracts are audited but a risk is still present",termOfUseDepositAccept:"Accept & Deposit",back:"Back",done:"Done",termOfUseWithdrawAcceptLabel:"I understand and accept the withdraw terms",termOfUseWithdrawPoint1:"Withdrawal requests are intended to settle in USDC. In rare cases where market conditions or high slippage prevent a USDC swap, the order may be settled in the underlying tokens of the respective vault.",termOfUseWithdrawPoint2:"Revoking token approval after placing an order will prevent the order from being executed.",highSlippage:"High Slippage Alert",responsibleHighSlippage:"By proceeding with this trade, you acknowledge and accept the possibility of experiencing high slippage, resulting in a potential difference between the expected and executed price.",highSlippageListTitle:"Please consider the following before confirming",highSlippageQuoteDiff:"Be aware that the final amount of assets you receive may be different from the initially quoted value.",highSlippageRisk:"Ensure that you understand the risks associated with high slippage and are comfortable proceeding with the trade.",confirm:"Confirm",selectToken:"Select token",sendingOrderToWallet:"Sending order to your wallet",settingUpTx:"Setting up transaction",miningTx:"Processing",approveSpending:"Approve spending",pay:"Pay",multiAssetFractions:"pro-rated share of vault underlying assets",swappableAssets:"swappable assets",explorer:"Explorer",as:"As",switchNetwork:"Switch Network",depositAction:"Buy",withdrawAction:"Sell",unrollAction:"Unroll",unrollAndClaimAction:"Claim",swapAction:"Swap",claimAction:"Claim Without Swap",claimLabel:"Claim Assets",createLimitSellOrder:"Stop order set",swapAndClaimTo:"Swap and claim assets to",orderingLabel:"Ordering",paidLabel:"Paid",soldLabel:"Sold",receivedLabel:"Received",priceLabel:"Price",transactionLabel:"Transaction",limitOrderWithdrawDescription:"You are about to create a withdrawal request. Your vault tokens will be withdrawn within a few minutes.",total:"Total:",showAll:"Show all",hide:"Hide",refreshSwapQuoteTooltip:"Refresh swap quote",proceedWithNextStep:"Please proceed with the next step.",aggregatorsLabel:"Swap source",aggregatorsTooltip:"Choose which aggregators to use for your trades.",batchTransactionsLabel:"Batch transactions",batchTransactionsSwitchLabel:"Batch",openNotificationsSettingsLabel:"Enable alerts",addToWallet:"add to wallet",batchTransactionsTooltip:"Group transaction calls into a single batch transaction. Disable if you prefer separate prompts.",openLimitOrderAfterBuySwitchLabel:"Add Stop Order",stopOrder:"Schedule sell",rate:"Rate",exchangeRate:"Exchange rate",cooldown:"Cooldown",delete:"Delete",withdrawalRequest:"Withdrawal request",deleteWithdrawalRequest:"Delete withdrawal request",insufficientBalance:"Insufficient Balance",expectToReceiveUsdcSoon:"Expect to receive your USDC over the next few minutes",estimated:"estimated",cancel:"Cancel",approveTokensForWithdrawal:"Approve tokens for withdrawal",unrollAssetsToPrepare:"Unroll assets to prepare sell",unrollAndClaimAssets:"Unroll and claim assets",swapToCompleteSell:"Swap to complete sell",success:"Success"},_i=u.createContext(Ii),Hb=({children:e,config:t})=>{const n=u.useMemo(()=>({...Ii,...t}),[t]);return r.jsx(_i.Provider,{value:n,children:e})},A=()=>{const e=u.useContext(_i);if(!e)throw new Error("TranslationContext is used out of Provider");return e},Xa=e=>{const t=A(),{symbol:n}=b(),a=`${n}${e}`;return t?.[a]??t[e]},Gb=async(e,t=Ya)=>{try{return(await import(`@dhedge/crypto-assets/icons/${e.toLowerCase()}.png`))?.default?.src??t(e)}catch{return t(e)}},Vb=(e=[])=>{const{getFallbackIconPath:t}=G(),[n,a]=u.useState([]),[s,o]=u.useState([]);return u.useEffect(()=>{if(e.every(l=>s.includes(l)))return;(async()=>{const l=await Promise.all(e.map(c=>Gb(c,t)));a(l),o(e)})()},[e,s,t]),n},Di=()=>{const{pricingAsset:e,symbol:t,chainId:n,address:a}=b(),{minLimitOrderValue:s}=G(),o=he({symbol:t,address:a}),i=ue({address:a,chainId:n});return Number(o)*Number(i)>=s&&!!e},qb=(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}},Ni=Object.values($).reduce((e,t)=>({...e,[t]:{isOpen:!1,isPending:!1}}),{}),Yb=()=>u.useReducer(qb,Ni),Oi=u.createContext(Ni),Pi=u.createContext(()=>{}),ki=()=>{const e=u.useContext(Oi);if(!e)throw new Error("OverlayStateContext is used out of Provider");return e},ie=()=>{const e=u.useContext(Pi);if(!e)throw new Error("OverlayDispatchContext is used out of Provider");return e},de=({type:e})=>{const t=ki(),n=ie(),a=u.useCallback(()=>{n({type:"MERGE_OVERLAY",payload:{type:e,isOpen:!1,isPending:!1}})},[n,e]),{onConfirm:s,isPending:o,meta:i}=t[e],l=d=>{n({type:"MERGE_OVERLAY",payload:{type:e,isOpen:!0,isPending:d}})};return{handleReject:a,handleConfirm:async()=>{await s?.(l),a()},isPending:o,meta:i}},Kb=()=>{const e=ie();return()=>{Object.values($).forEach(t=>{e({type:"MERGE_OVERLAY",payload:{type:t,isOpen:!1,isPending:!1}})})}},Qb=({children:e})=>{const[t,n]=Yb(),[{isOpen:a}]=K();return u.useEffect(()=>{a&&!t.TRADING.isOpen&&n({type:"MERGE_OVERLAY",payload:{type:$.TRADING,isOpen:a}})},[a,t.TRADING.isOpen,n]),u.useEffect(()=>{!a&&t.TRADING.isOpen&&n({type:"MERGE_OVERLAY",payload:{type:$.TRADING,isOpen:a}})},[a,t.TRADING.isOpen,n]),r.jsx(Pi.Provider,{value:n,children:r.jsx(Oi.Provider,{value:t,children:e})})},Xb=()=>{const e=Ve(),t=ie(),n=Di(),a=u.useCallback(()=>{n&&(t({type:"MERGE_OVERLAY",payload:{type:$.LIMIT_SELLS,isOpen:!0}}),e?.(X.OPEN_LIMIT_SELL_VIEW,{[Te.SOURCE.NAME]:"overlay"}))},[t,n,e]);return{displayLimitSellOverlay:n,openLimitSellOverlay:a}},Ri=()=>{const e=A(),[{status:t}]=K(),n=u.useMemo(()=>({Wallet:e.sendingOrderToWallet,None:e.settingUpTx,Mining:e.miningTx,Success:e.success}),[e]);return{status:t,statusLabel:n[t]}},Za=e=>{const t=A(),{status:n}=Ri();if(!(!e||n==="Success"))return n==="Mining"?t.miningTx:t.sendingOrderToWallet},Zb=({tradingType:e})=>{const t=Xa(e);return r.jsx(R.Tab,{className:({selected:n})=>C("dtw-relative dtw-text-[length:var(--panel-tab-font-size,var(--panel-font-size-sm))] dtw-px-[var(--panel-tab-px)] dtw-py-[var(--panel-tab-py)] dtw-font-[var(--panel-tab-font-weight,var(--panel-font-weight-bold))] !dtw-leading-[var(--panel-tab-line-height,var(--panel-line-height))] dtw-outline-0",{"!dtw-text-[color:var(--panel-tab-select-content-color,var(--panel-content-color))]":n,"!dtw-text-[color:var(--panel-tab-content-color,var(--panel-neutral-content-color))] hover:dtw-text-[color:var(--panel-tab-hover-content-color,var(--panel-content-hover-color))]":!n}),children:({selected:n})=>r.jsxs(r.Fragment,{children:[r.jsx("span",{children:t}),n?r.jsx("div",{className:"dtw-flex dtw-items-center dtw-justify-center dtw-absolute dtw-bottom-0 dtw-left-0 dtw-right-0 dtw-h-full dtw-rounded-[var(--panel-radius-secondary)] dtw-bg-[var(--panel-tab-bg,var(--panel-neutral-color))] dtw-shadow-md dtw-pointer-events-none",children:r.jsx("span",{children:t})}):null]})})},Jb={[W.DEFAULT]:se.QuestionMarkCircleIcon,[W.ERROR]:se.ExclamationCircleIcon,[W.SUCCESS]:se.CheckCircleIcon,[W.WARNING]:se.ExclamationCircleIcon,[W.CUSTOM]:se.QuestionMarkCircleIcon},Gn=({tooltipText:e,value:t,label:n,children:a,type:s=W.DEFAULT,className:o,emphasised:i=!1})=>r.jsxs("div",{className:C("dtw-flex dtw-grow dtw-items-center dtw-font-[var(--panel-meta-font-weight,var(--panel-font-weight-light))] dtw-gap-x-1",{"dtw-text-[length:var(--panel-meta-font-size)] dtw-leading-[var(--panel-meta-line-height)] dtw-text-[color:var(--panel-secondary-content-color)]":!i,"dtw-text-[length:var(--panel-meta-emphasised-font-size)] dtw-leading-[var(--panel-meta-emphasised-line-height)] dtw-text-[color:var(--panel-content-color)]":i},o),children:[r.jsxs("div",{className:"dtw-flex dtw-grow dtw-items-start dtw-justify-between",children:[r.jsxs("div",{className:"dtw-flex dtw-items-center dtw-gap-x-1",children:[r.jsx(li,{text:e,placement:"right",Icon:Jb[s],iconClassName:C({"dtw-text-[color:var(--panel-error-content-color)]":s===W.ERROR,"dtw-text-[color:var(--panel-warning-content-color)]":s===W.WARNING})}),r.jsx("p",{className:C({"dtw-text-[color:var(--panel-error-content-color)]":s===W.ERROR,"dtw-text-[color:var(--panel-warning-content-color)]":s===W.WARNING}),children:n})]}),r.jsx("div",{className:C({"dtw-text-[color:var(--panel-error-content-color)]":s===W.ERROR,"dtw-text-[color:var(--panel-warning-content-color)]":s===W.WARNING}),children:t})]}),a]}),Ja=({children:e,staticItems:t,collapseItems:n,themeType:a=W.DEFAULT,buttonItemChildren:s})=>{const o=A();return r.jsx("div",{className:"dtw-w-full dtw-flex dtw-flex-col dtw-gap-1",children:r.jsx(R.Disclosure,{children:({open:i})=>r.jsxs(r.Fragment,{children:[t?.map(l=>r.jsx(Gn,{...l},l.label)),r.jsx(R.DisclosureButton,{className:"dtw-p-0 dtw-flex dtw-w-full dtw-justify-between dtw-rounded-[var(--panel-radius-secondary,var(--panel-radius))] hover:dtw-bg-[var(--panel-meta-hover-bg,var(--panel-neutral-color))] focus:dtw-outline-none",children:r.jsxs(Gn,{tooltipText:o.fullReceiveDetails,label:o.tradeDetails,value:"",type:a,emphasised:!0,children:[s,r.jsx(Se.ChevronDownIcon,{className:C("dtw-text-[color:var(--panel-icon-color,var(--panel-content-color))] !dtw-h-[var(--panel-input-token-icon-size,var(--panel-icon-size))] !dtw-w-[var(--panel-input-token-icon-size,var(--panel-icon-size))] sm:dtw-w-[var(--panel-input-token-icon-size-sm,var(--panel-icon-size-sm))] sm:dtw-h-[var(--panel-input-token-icon-size-sm,var(--panel-icon-size-sm))]",{"dtw-rotate-180 dtw-transform":i})})]})}),r.jsx(R.Transition,{show:i,children:r.jsxs(R.DisclosurePanel,{className:"dtw-transition dtw-transform dtw-duration-100 dtw-ease-out data-[closed]:opacity-0 data-[closed]:-dtw-translate-y-2.5 dtw-static dtw-text-[length:var(--panel-label-font-size,var(--panel-font-size-xs))] dtw-leading-[var(--panel-label-line-height,var(--panel-line-height-xs))] dtw-text-[color:var(--panel-secondary-content-color)] dtw-font-[var(--panel-meta-font-weight,var(--panel-font-weight-light))] dtw-rounded-[var(--panel-radius-secondary,var(--panel-radius))] dtw-flex dtw-flex-col dtw-gap-1",children:[n?.map(l=>r.jsx(Gn,{...l},l.label)),e]})})]})})})},ke=({className:e})=>r.jsx("svg",{className:C("dtw-animate-spin dtw-stroke-[color:var(--panel-accent-content-color)]",e),viewBox:"0 0 24 24",fill:"none",xmlns:"http://www.w3.org/2000/svg",children:r.jsx("path",{d:"M12 2C6.47715 2 2 6.47715 2 12C2 17.5228 6.47715 22 12 22C17.5228 22 22 17.5228 22 12C22 9.27455 20.9097 6.80375 19.1414 5",strokeWidth:"2.5",strokeLinecap:"round",strokeLinejoin:"round"})}),ev=({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}),tv=({children:e})=>r.jsx("div",{className:"dtw-flex dtw-flex-col dtw-gap-[var(--panel-meta-group-gap,var(--panel-gap))] dtw-px-[var(--panel-meta-group-px)] dtw-h-full dtw-relative",children:e}),pn=({Icon:e,onClick:t,className:n="dtw-h-7 dtw-w-7",containerClassName:a,disabled:s})=>r.jsx("div",{className:C("dtw-group dtw-w-fit dtw-cursor-pointer dtw-self-end dtw-rounded-lg dtw-p-1 hover:dtw-opacity-80",a,{"dtw-pointer-events-none":s}),onClick:t,children:r.jsx(e,{className:C("dtw-text-[color:var(--panel-icon-color)] group-hover:dtw-text-[color:var(--panel-icon-color-hover))]",n)})}),nv=({children:e,onClose:t})=>{const{defaultNotificationDuration:n}=G();return u.useEffect(()=>{const a=s=>{s.key==="Escape"&&t?.()};return window.addEventListener("keydown",a),()=>{window.removeEventListener("keydown",a)}},[t]),u.useEffect(()=>{const a=setTimeout(()=>{t?.()},n);return()=>{clearTimeout(a)}},[n,t]),r.jsx("div",{className:"dtw-p-4 dtw-absolute dtw-top-0 dtw-inset-x-0 dtw-rounded-xl dtw-bg-[var(--panel-notification-bg,var(--panel-secondary-color))]",children:r.jsxs("div",{className:"dtw-flex dtw-justify-between dtw-items-center",children:[r.jsx("div",{children:e}),!!t&&r.jsx(pn,{Icon:Jn.XMarkIcon,onClick:t,className:"dtw-w-6 dtw-h-6",containerClassName:"dtw-self-center"})]})})},av=({children:e,className:t,transparent:n=!1,centered:a=!0,onClose:s,noPadding:o,onBack:i})=>(u.useEffect(()=>{const l=c=>{c.key==="Escape"&&s?.()};return window.addEventListener("keydown",l),()=>{window.removeEventListener("keydown",l)}},[s]),r.jsx("div",{className:C("dtw-absolute dtw-top-0 dtw-inset-0 dtw-rounded-xl dtw-backdrop-blur-md dtw-backdrop-brightness-75 dtw-backdrop-filter",{"dtw-p-1":!o}),children:r.jsxs("div",{className:C("dtw-flex dtw-flex-col dtw-rounded-xl dtw-p-4 dtw-h-full",t,{"dtw-bg-[var(--panel-overlay-bg)]":!n,"dtw-items-center dtw-justify-center":a}),children:[e,!!i&&r.jsx("div",{className:"dtw-absolute dtw-top-5 dtw-left-5",children:r.jsx(pn,{Icon:Jn.ChevronLeftIcon,onClick:i})}),!!s&&r.jsx("div",{className:"dtw-absolute dtw-top-5 dtw-right-5",children:r.jsx(pn,{Icon:Jn.XMarkIcon,onClick:s})})]})})),sv=({children:e})=>r.jsx(R.TabPanel,{className:"dtw-pt-[var(--panel-content-pt)] dtw-pb-[var(--panel-content-pb)] md:dtw-pb-[var(--panel-content-pb-md)] dtw-px-[var(--panel-content-px)] dtw-flex dtw-flex-col dtw-gap-[var(--panel-content-gap,var(--panel-gap))] dtw-h-full",children:e}),rv=({className:e,iconClassName:t,onClick:n,children:a})=>{const s=Ve(),o=()=>{n?.(),s?.(X.TRADING_SETTINGS_OPENED)};return r.jsxs(R.Popover,{className:C("dtw-flex dtw-items-center dtw-justify-end",e),children:[r.jsx(R.PopoverButton,{onClick:o,children:r.jsx(se.Cog6ToothIcon,{className:C("dtw-h-[var(--panel-input-token-icon-size,var(--panel-icon-size))] dtw-w-[var(--panel-input-token-icon-size,var(--panel-icon-size))] sm:dtw-w-[var(--panel-input-token-icon-size-sm,var(--panel-icon-size-sm))] sm:dtw-h-[var(--panel-input-token-icon-size-sm,var(--panel-icon-size-sm))] hover:dtw-opacity-80 dtw-text-[color:var(--panel-icon-color,var(--panel-content-color))]",t)})}),r.jsx(R.PopoverBackdrop,{className:"dtw-absolute dtw-inset-0 dtw-bg-[var(--panel-popup-bg,var(--panel-secondary-color))] dtw-opacity-50"}),r.jsx(R.PopoverPanel,{className:"dtw-absolute dtw-z-10 dtw-max-w-xs dtw-top-14 dtw-right-0 dtw-transition dtw-duration-100 dtw-ease-out data-[closed]:dtw-translate-x-1/2 data-[closed]:dtw-opacity-0",transition:!0,children:r.jsx("div",{className:"dtw-rounded-l-[var(--panel-radius)] dtw-bg-[var(--panel-popup-bg,var(--panel-secondary-color))] dtw-p-4 dtw-flex dtw-flex-col dtw-gap-y-2.5",children:a})})]})},ov=({children:e})=>r.jsx(R.TabPanel,{children:r.jsx(rv,{children:e})}),Y={InputGroup:ev,Meta:tv,Settings:ov,Panel:sv,Overlay:av,Notification:nv},iv=["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)]"],lv=["!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:C("dtw-rounded-[var(--panel-input-button-radius,var(--panel-radius))]","dtw-font-medium","dtw-border","dtw-transition-border","dtw-duration-500","dtw-ease-in-out","disabled:dtw-opacity-50","dtw-py-2","dtw-px-5","dtw-w-full",{[lv.join(" ")]:n,[iv.join(" ")]:!n,"dtw-flex dtw-items-center dtw-justify-center dtw-gap-1":i},s),onClick:t,disabled:a||i,type:o,children:[i&&r.jsx(ke,{className:"dtw-h-4 dtw-w-4"}),e]}),Li={GeoBlockAlert:()=>r.jsx(vt,{type:"error",children:r.jsx("span",{className:"dtw-text-sm",children:"Depositing is geo-blocked."})}),SanctionedAlert:()=>r.jsx(vt,{type:"error",children:r.jsx("span",{className:"dtw-text-sm",children:"Your address has been found on a sanctions list. Deposits are disabled."})}),AvailableLiquidityAlert:({liquidityAmount:e})=>r.jsxs(vt,{type:"warning",children:[r.jsx("p",{className:"dtw-text-center",children:e?`${e} withdrawal liquidity`:"Liquidity is running low"}),r.jsx("p",{className:"dtw-text-sm dtw-text-center",children:"Sell a smaller amount"})]}),MaxSupplyReachedAlert:({supplyCapInUsd:e})=>r.jsxs(vt,{type:"warning",children:[r.jsx("p",{className:"dtw-text-center dtw-text-base",children:"Supply caps reached"}),r.jsxs("p",{className:"dtw-text-sm dtw-text-center",children:["Can only buy ",e," more"]})]}),OnDemandWithdrawAlert:()=>r.jsxs(vt,{type:"info",children:[r.jsx("p",{className:"dtw-text-center",children:"On demand sell"}),r.jsx("p",{className:"dtw-text-sm dtw-text-[color:var(--panel-secondary-content-color)] dtw-text-center",children:"Sell will happen automatically over time as liquidity is made available"})]})},Mi=u.createContext(Li),cv=({children:e,config:t})=>{const n=u.useMemo(()=>({...Li,...t}),[t]);return r.jsx(Mi.Provider,{value:n,children:e})},P=()=>{const e=u.useContext(Mi);if(!e)throw new Error("ComponentContext is used out of Provider");return e},un=({children:e,promptText:t})=>{const{ActionButton:n=q}=P();return r.jsxs("div",{children:[r.jsxs("div",{className:"md:dtw-hidden dtw-mb-4 dtw-flex dtw-items-center dtw-justify-center dtw-space-x-1 dtw-text-[var(--panel-warning-content-color)]",children:[r.jsx(se.ExclamationCircleIcon,{className:"dtw-h-5 dtw-w-5"}),r.jsx("div",{className:"dtw-py-1 dtw-text-xs",children:t})]}),r.jsx(Ha,{text:t,children:r.jsx(n,{disabled:!0,children:r.jsxs("div",{className:"dtw-flex dtw-items-center dtw-justify-center dtw-gap-2",children:[r.jsx(se.LockClosedIcon,{className:"dtw-h-5"}),r.jsx("span",{children:e})]})})})]})},Ye=({link:e,className:t,children:n,iconClassName:a="dtw-h-5 dtw-w-5",showDefaultIcon:s=!0})=>r.jsxs("a",{className:C("dtw-inline-flex dtw-cursor-pointer dtw-items-center dtw-gap-x-1 dtw-drop-shadow-md hover:dtw-border-themeGray-600 !dtw-text-[color:var(--panel-meta-link-color,var(--panel-content-color))]",t),href:e,target:"_blank",rel:"noreferrer",children:[n,s&&r.jsx(se.ArrowTopRightOnSquareIcon,{className:a})]}),kn=({defaultEnabled:e=!1,onChange:t,disabled:n=!1,label:a,vertical:s=!1})=>{const[o,i]=u.useState(e);u.useEffect(()=>{i(e)},[e]);const l=c=>{n||(i(c),t?.(c))};return r.jsx(R.Field,{children:r.jsxs("div",{className:C("dtw-flex",{"dtw-flex-col dtw-gap-y-0.5":s,"dtw-items-center dtw-justify-between":!s}),children:[a&&r.jsx(R.Label,{className:"dtw-cursor-pointer dtw-text-xs",children:a}),r.jsx(R.Switch,{checked:o,onChange:l,className:C("dtw-p-0 dtw-relative dtw-inline-flex dtw-h-6 dtw-w-11 dtw-flex-shrink-0 dtw-items-center dtw-rounded-full dtw-transition-colors focus:dtw-outline-none",{"!dtw-bg-[color:var(--panel-switch-bg-checked)] !dtw-text-[color:var(--panel-switch-color-checked)]":o,"!dtw-bg-[color:var(--panel-switch-bg)] !dtw-text-[color:var(--panel-switch-color)]":!o,"dtw-pointer-events-none dtw-opacity-50":n}),children:r.jsx("span",{className:C("dtw-inline-block dtw-h-4 dtw-w-4 dtw-transform dtw-rounded-full dtw-transition-transform",{"dtw-translate-x-6 !dtw-bg-[color:var(--panel-switch-thumb-bg-checked)]":o,"dtw-translate-x-1 !dtw-bg-[color:var(--panel-switch-thumb-bg)]":!o})})})]})})},ji=({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}),dv=({onClick:e})=>{const t=A();return r.jsx("button",{className:"dtw-cursor-pointer !dtw-text-[color:var(--panel-input-button-content-color,var(--panel-content-color))] dtw-rounded-[var(--panel-input-button-radius,var(--panel-radius))] !dtw-bg-[var(--panel-input-button-bg,var(--panel-secondary-color))] dtw-border dtw-border-[var(--panel-input-button-border-color,var(--panel-accent-to-color))] dtw-px-[var(--panel-input-button-px)] dtw-text-[length:var(--panel-input-button-font-size,var(--panel-font-size-xs))] dtw-leading-[var(--panel-input-button-line-height,var(--panel-line-height-xs))] hover:dtw-opacity-[var(--panel-action-hover-opacity)] dtw-opacity-[var(--panel-action-opacity)]",onClick:e,children:t.max})},Bi=({style:e,className:t})=>r.jsx("div",{className:C("tw-animate-pulse tw-rounded tw-bg-themeGray-300 tw-bg-opacity-50 tw-h-6",t),style:e}),$i=e=>r.jsx("img",{...e}),pv=(e,t)=>e===0?`dtw-z-${(t-1)*10}`:`dtw--ml-2 dtw-z-${(t-e-1)*10}`,uv=e=>{switch(e){case"xs":return{height:"!dtw-h-3 sm:!dtw-h-4 ",width:"!dtw-w-3 sm:!dtw-w-4",diameter:16};case"sm":return{height:"!dtw-h-4 sm:!dtw-h-5 ",width:"!dtw-w-4 sm:!dtw-w-5",diameter:20};case"m":return{height:"!dtw-h-5 sm:!dtw-h-6 ",width:"!dtw-w-5 sm:!dtw-w-6",diameter:24};case"lg":return{height:"!dtw-h-7 sm:!dtw-h-8 ",width:"!dtw-w-7 sm:!dtw-w-8",diameter:32};case"xl":return{height:"!dtw-h-9 sm:!dtw-h-10 ",width:"!dtw-w-9 sm:!dtw-w-10",diameter:36};case"2xl":return{height:"!dtw-h-16 sm:!dtw-h-18",width:"!dtw-w-16 sm:!dtw-w-18",diameter:72}}},We=({symbols:e,size:t="m",className:n=""})=>{const{Image:a=$i}=P(),s=e.join(""),[o,i]=u.useState({[s]:!1}),{height:l,width:c,diameter:d}=uv(t),p=Vb(e);if(!p?.length||!p[0]||o[s])return null;const m=()=>i(y=>({...y,[s]:!0}));return p.length===1?r.jsx(a,{src:p[0],alt:`${e[0]} icon`,className:C(l,c,n),width:d,height:d,onError:m}):r.jsx("span",{className:`dtw-flex-no-wrap dtw-z-0 dtw-flex ${l} ${n}`,children:p.map((y,w)=>r.jsx(a,{src:y,alt:`${e[w]} icon`,className:C("dtw-inline-block dtw-overflow-visible dtw-rounded-full",c,l,pv(w,e.length)),width:d,height:d,onError:m},w))})},$t=({symbol:e,iconSymbols:t,size:n,symbolClasses:a="dtw-text-sm dtw-font-medium",CustomIcon:s,customTitle:o,className:i})=>{const l=A(),c=o||(e==="all"?l.allAssets:e);return r.jsxs("div",{className:C("dtw-flex dtw-w-full dtw-items-center dtw-space-x-1.5",i),children:[s??r.jsx(We,{size:n,symbols:t,className:"dtw-flex-shrink-0"}),r.jsx("div",{className:a,title:c,children:c||r.jsx(Bi,{className:"dtw-w-[70px]"})})]})},vt=({className:e,children:t,type:n="error"})=>r.jsx("div",{className:C("dtw-rounded-[var(--panel-radius)] dtw-p-3",{"dtw-bg-[var(--panel-alert-error-bg)] dtw-text-[var(--panel-alert-error-color)]":n==="error","dtw-bg-[var(--panel-alert-warning-bg)] dtw-text-[var(--panel-alert-warning-color)]":n==="warning","dtw-bg-[var(--panel-alert-info-bg)] dtw-text-[var(--panel-alert-info-color)]":n==="info"},e),children:t}),Vn=(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}`},qn=e=>e.replace(/,/g,""),mv=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,qn(p));else{const m=Vn(p,a);t?.(m,qn(m))}},l=()=>{if(!n)return;const c=Vn(e,a);t?.(c,qn(c))};return r.jsx("input",{...s,ref:o,type:"text",inputMode:"decimal",value:Vn(e,a),onChange:i,onBlur:l})});mv.displayName="InputNumber";const je=({className:e})=>r.jsx("div",{className:C("dtw-w-full dtw-h-[1px] dtw-bg-[var(--panel-divider-color)] dtw-shrink-0",e)}),yv=()=>{const[e]=we(),[t,n]=Q(),[a,s]=u.useState(!1),o=t.slippage!=="auto";return{settings:t,tradingType:e,isCustomSlippage:o,invalidSlippage:a,onDefaultSlippageSelect:()=>{n({slippage:"auto"})},onCustomSlippageSelect:c=>{const d=c.target.value,p=+d<0||+d>100;s(p);let m=t.slippage;p||d.trim().length===0&&o?m="auto":d.trim().length>0&&(m=+d),n({slippage:m})}}},Js=({selected:e=!1,children:t,className:n,onClick:a})=>r.jsx("div",{className:C("dtw-cursor-pointer dtw-rounded-[var(--panel-input-button-radius,var(--panel-radius))] dtw-py-1 dtw-text-center dtw-text-sm",n,{"dtw-bg-[color:var(--panel-switch-bg-checked)] !dtw-text-[color:var(--panel-switch-color-checked)]":e,"dtw-bg-[color:var(--panel-switch-bg)] dtw-text-white hover:dtw-opacity-80 !dtw-text-[color:var(--panel-switch-color)]":!e}),onClick:a,children:t}),wv=0,hv=100,Fi=()=>{const e=A(),{settings:t,tradingType:n,isCustomSlippage:a,invalidSlippage:s,onDefaultSlippageSelect:o,onCustomSlippageSelect:i}=yv(),l=Ei({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(Js,{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(Js,{selected:a,className:"dtw-w-14",children:r.jsx("input",{className:C("dtw-w-full dtw-bg-transparent dtw-px-1.5 dtw-outline-none focus:dtw-outline-none dtw-text-center",{"dtw-text-red-600":s}),type:"number",min:wv,max:hv,onChange:i,placeholder:l,defaultValue:a?t.slippage.toString():""})}),r.jsx("span",{children:"%"})]})]})};function Rn(e,t,n){const a=cc[n??h.arbitrum.id]?.blockExplorers?.default?.url;if(a)switch(t){case"transaction":return`${a}/tx/${e}`;default:return`${a}/address/${e}`}}const gv=({batchId:e,updatePendingTransactions:t})=>{const{data:n}=E.useWaitForCallsStatus({id:e,pollingInterval:ir,query:{enabled:!!e}}),a=n?.receipts?.[0]?.transactionHash;u.useEffect(()=>{a&&t({type:"update",txHash:a})},[a,t])},Wi=()=>{const[e,t]=re(),n=K()[1],a=xo(),s=So(),[o]=e,i=o?.batchId,l=o?.txHash,c=o?.action,d=c==="approve",p=o?.chainId,{invalidateTradingQueries:m,invalidateAllowanceQueries:y}=Nn();gv({batchId:i,updatePendingTransactions:t});const{data:w,error:f}=E.useWaitForTransactionReceipt({hash:l,chainId:p,pollingInterval:ir,query:{enabled:!!l}});u.useEffect(()=>{if(w){const g=w.transactionHash;if(g){const x=Rn(g,"transaction",p);n({link:x,status:"Success",action:c}),t({type:"remove",status:"success",txHash:g}),s?.(w,c,x)}d?y():m()}},[w,d,p,c,s,t,n,y,m]),u.useEffect(()=>{f&&(n({isOpen:!1,status:"None",link:"",action:c,sendTokens:null,receiveTokens:null}),t({type:"remove",status:"fail"}),a?.(f,c,p,l))},[f,d,c,p,l,n,t,a])},Ke=({action:e,onErrorCallback:t})=>{const[,n]=K(),[,a]=re(),[,s]=N(),o=Ao();return u.useCallback((i,l,c)=>{if(l){n({isOpen:!1,status:"None",link:"",sendTokens:null,receiveTokens:null}),a({type:"remove",status:"fail"}),console.debug(`${e} transaction failed`,l),o?.(l),t?.(l);return}if(i){console.debug(`${e} transaction started`,i),a({type:"update",txHash:i});const d=Rn(i,"transaction",c.chainId);n({isOpen:!0,status:"Mining",link:d}),e!=="approve"&&s({value:""})}},[n,a,e,o,t,s])},es=({address:e,chainId:t,refetchInterval:n,disabled:a=!1})=>{const{supportedChainId:s}=Ce(),{data:o}=E.useReadContracts({contracts:[{address:z("factory",t??s),abi:He,functionName:"getAssetPrice",args:[e],chainId:t}],query:{enabled:!te(e)&&!a,refetchInterval:n}});return _n(o),o?.[0]?.result},ce=({address:e,chainId:t,refetchInterval:n=ze,disabled:a})=>{const s=es({address:e,chainId:t,refetchInterval:n,disabled:a});return D.formatUnits(s??BigInt(0),k)},ts=()=>{const[e]=N(),[t]=O(),n=he({address:e.address,symbol:e.symbol}),a=new T(e.value),s=new T(t.value);return(a.gt(0)||s.gt(0))&&a.lte(n??0)};function fv(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 Ui=()=>{const[e]=N(),[t]=O();return{value:fv(e.symbol,t.symbol,e.value,t.value),isLoading:!!t.isLoading}},Qe=()=>{const e=!Oe(),[{symbol:t}]=O(),[{isMultiAssetWithdrawalEnabled:n}]=Q();return e&&n&&t==="all"},ns=({onErrorCallback:e}={})=>{const{account:t}=B(),{chainId:n}=b(),a=Qe(),[s]=N(),o=new T(s.value||"0").shiftedBy(s.decimals).toFixed(0,T.ROUND_UP),i=z("easySwapperV2",n),{canSpend:l,isFetching:c}=nl({tokenAddress:s.address,ownerAddress:t??_,spenderAddress:i,rawAmountToSpend:o,chainId:n,skip:a||o==="0"}),d=tl({token:s,rawTokenAmount:o,spenderAddress:i,onErrorCallback:e});return{canSpend:l,approve:d,isCanSpendFetching:c}},Tv=({address:e,chainId:t})=>{const n=E.usePublicClient({chainId:t}),{data:{aaveAssetGuardAddress:a=_}={}}=Lt({address:e,chainId:t});return u.useCallback(async({withdrawAmountD18:s,slippage:o})=>oi({address:a,abi:Cc,functionName:"calculateSwapDataParams",args:[e,s,_a(o)],publicClient:n}),[a,e,n])},zi=async({assets:e,getSwapQuotes:t,signal:n,buildKey:a})=>{const s=await Promise.all(e.map(o=>t({signal:n,variables:{...o,fromAddress:Nr}})));return e.reduce((o,i,l)=>{const c=a(i);return o[c]=s[l]??null,o},{})},Hi=e=>e.length>1?1:0,bv=async({assets:e,getSwapQuotes:t,signal:n})=>zi({assets:e,getSwapQuotes:t,signal:n,buildKey:ro}),vv=(e,t)=>{const n=Na(),{settings:{selectedAggregators:a}}=J();return tt.useQuery({queryKey:["getSwapsQuotes",e,a],queryFn:async({signal:s,queryKey:[,o]})=>await zi({assets:o,getSwapQuotes:n,signal:s,buildKey:({sourceAddress:i})=>i}),...t})},xv=new AbortController,Av=xv.signal,Sv=({chainId:e})=>{const{account:t=_}=B(),n=Na();return u.useCallback(async({swapParams:a,slippage:s})=>{const o=(a?.srcData??[]).map(({asset:i,amount:l})=>({chainId:e,sourceAddress:i,destinationAddress:a?.dstData.asset??_,walletAddress:t,amount:l.toString(),slippage:s.toString()}));return bv({assets:o,getSwapQuotes:n,signal:Av})},[e,n,t])},Cv=({address:e,chainId:t})=>{const n=z("aaveLendingPoolV3",t),{data:{getSupportedAssets:a}={}}=jt({address:e,chainId:t}),s=Tv({address:e,chainId:t}),o=Sv({chainId:t});return u.useCallback(async({withdrawAmountD18:i,slippage:l,estimate:c,transactionArgs:d})=>{const p=_a(l);if(!a?.some(g=>H(g,n)))return Ts(a,p);const y=await Ad(a,n,{withdrawAmountD18:i,slippage:l,fetchAaveSwapParams:s,fetchAaveSwapQuotes:o}),w=bd(y);return await xd(w,y,p,c,d)??Ts(a,p)},[n,s,o,a])},Ev=()=>{const{defaultWithdrawSlippage:e,defaultSwapTransactionSlippage:t}=G(),n=!Oe(),{isCompleteWithdrawStep:a,isFetching:s}=Re(),[o]=O(),[,i]=Q(),l=Qi();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])},Iv=()=>{const{account:e=_}=B(),{chainId:t}=b();return E.useReadContract({address:z("easySwapperV2",t),abi:ve,functionName:"withdrawalContracts",chainId:t,args:[e],query:{enabled:!te(e)}})},as=()=>{const{chainId:e}=b(),[t]=O(),n=es({address:t.address,chainId:e}),a=Ft(),s=Vi(),o=new T(s).shiftedBy(k).div(n?.toString()??"1").shiftedBy(t.decimals).toFixed(0,T.ROUND_DOWN),i=new T(o).times(1-mr/100).times(1-a/100).toFixed(0,T.ROUND_DOWN);return{expectedReceiveAmount:o,minExpectedReceiveAmount:i}},Gi=({isClaim:e,onErrorCallback:t}={})=>{const n=b(),{data:a=[]}=me(),{data:s={}}=yt(),[o]=O(),{minExpectedReceiveAmount:i}=as(),l=re()[1],c=e?"claim":"swap",d=Ke({action:c,onErrorCallback:t}),p=Xi(),{send:m,estimate:y}=xe({contractId:"easySwapperV2",functionName:nc,onSettled:d}),w=u.useCallback(async()=>{if(e||!p)return[];const f=Object.values(s)[0]?.map(({routerKey:g})=>g);if(!f?.length)return console.warn("[Complete Withdraw] No available routers found for swap"),[];for(const g of f){const x=Object.entries(s).reduce((L,[M,ee])=>{const Ae=ee?.find(Xe=>Xe.routerKey===g);return{...L,[M]:Ae}},{}),S=rd({assets:a,swapData:x,receiveAssetAddress:o.address}),{error:I}=await y(S,i);if(!I)return[S,i]}return console.error("[Complete Withdraw] All routers failed estimation"),[]},[e,p,s,i,a,o.address,y]);return u.useCallback(async()=>{l({type:"add",action:c,symbol:n.symbol,chainId:n.chainId});const f=await w();return console.log("Arguments",f),m(...f)},[c,n.chainId,n.symbol,m,w,l])},Vi=()=>{const{data:e=[]}=me();return e.reduce((t,{balance:n,price:a})=>t+n*a,0)},qi=({account:e,chainId:t})=>E.useReadContract({address:z("easySwapperV2",t),abi:ve,functionName:"getTrackedAssets",chainId:t,args:[e],query:{enabled:!te(e)}}),_v=({assets:e,chainId:t})=>e.flatMap(({token:n})=>[{address:n,abi:D.erc20Abi,functionName:"symbol",chainId:t,args:[]},{address:n,abi:D.erc20Abi,functionName:"decimals",chainId:t,args:[]},{address:z("factory",t),abi:He,functionName:"getAssetPrice",chainId:t,args:[n]}]),Dv=3,Yi=({assets:e,chainId:t})=>{const n=u.useCallback(a=>e.map(({token:s,balance:o},i)=>{const l=i*Dv,c=l+1,d=c+1,p=Number(a[c]?.result??k),m=Ea[s.toLowerCase()]??a[l]?.result?.toString()??"";return{address:s,symbol:m,decimals:p,rawBalance:o,balance:new T(o.toString()).shiftedBy(-p).toNumber(),price:new T(a[d]?.result?.toString()??0).shiftedBy(-18).toNumber()}}),[e]);return E.useReadContracts({contracts:_v({assets:e,chainId:t}),query:{enabled:e.length>0,select:n}})},me=()=>{const{account:e=_}=B(),{chainId:t}=b(),{data:n=[]}=qi({account:e,chainId:t});return Yi({assets:n,chainId:t})},Re=()=>{const{data:e=[],isFetching:t}=me();return{isCompleteWithdrawStep:e?.length>0,isFetching:t}},yt=()=>{const{defaultSwapTransactionSlippage:e}=G(),{chainId:t}=b(),{account:n=_}=B(),[{slippage:a}]=Q(),[s]=O(),{data:o=[]}=me(),i=Xi(),l=u.useMemo(()=>o.filter(({address:c})=>!H(c,s.address)).map(({address:c,rawBalance:d})=>({chainId:t,sourceAddress:c,destinationAddress:s.address,walletAddress:n,amount:d.toString(),slippage:(a==="auto"?e:a).toString()})),[o,t,e,s.address,a,n]);return vv(l,{enabled:i,refetchInterval:wa})},Nv=()=>{const[e,t]=O(),{data:n=[]}=me(),{data:a,isFetching:s,isError:o}=yt();u.useEffect(()=>{t({isLoading:s})},[s,t]),u.useEffect(()=>{if(n.length===0||s||o)return;const i=n.reduce((l,c)=>{if(H(c.address,e.address))return l.plus(c.rawBalance.toString());const d=a?.[c.address]??[],m=d[Hi(d)]?.destinationAmount??"0";return l.plus(m)},new T(0));t({value:D.formatUnits(BigInt(i.toFixed()),e.decimals)})},[n,o,s,e.address,e.decimals,a,t])},Ki=({withdraw:e,isClaim:t,onErrorCallback:n})=>{const a=A(),s=ie(),{account:o}=B(),i=b(),[l]=O(),c=K()[1],d=re()[1],p=fn(),{data:m}=me(),{isFetching:y}=yt(),w=u.useCallback(async()=>{const f=i.chainId,g=(m??[]).map(({address:S,decimals:I,symbol:L,balance:M})=>({address:S,decimals:I,symbol:L,value:M.toString()})),x=t?null:g.filter(S=>!H(S.address,l.address));c({isOpen:!0,status:"Wallet",action:t?"claim":"swap",link:"",sendTokens:x,receiveTokens:t?g:[l]});try{await e()}catch(S){S instanceof ut&&(n?.(),s({type:"MERGE_OVERLAY",payload:{type:$.ERROR_NOTIFICATION,isOpen:!0,meta:{error:S.message}}}),p?.(S,i.address,f,o)),c({isOpen:!1,status:"None",link:"",sendTokens:null,receiveTokens:null}),d({type:"remove",status:"fail"})}},[o,m,s,t,n,p,i.address,i.chainId,l,d,c,e]);return{disabled:t?!1:y,label:t?a.claimAction:a.swapAction,handleTrade:w}},Qi=()=>{const{expectedReceiveAmount:e}=as(),[t]=O(),n=new T(t.value||"0").shiftedBy(t.decimals);return e==="0"||n.isZero()?0:n.dividedBy(e).minus(1).times(100).decimalPlaces(2,T.ROUND_DOWN).toNumber()},Xi=()=>{const[e]=O(),{data:t=[]}=me();return t.length>0&&t.some(({address:n})=>!H(n,e.address))},Ov=({handleTrade:e,onError:t})=>{const n=ie(),{data:a=[]}=me(),{data:s,isFetching:o,isError:i}=yt(),l=u.useRef(!1),c=a.length===0,d=a.length>1;u.useEffect(()=>{i&&(t(),n({type:"MERGE_OVERLAY",payload:{type:$.ERROR_NOTIFICATION,isOpen:!0,meta:{error:jr}}}))},[n,i,t]),u.useEffect(()=>{const p=d?!!s&&Object.values(s).length>0:!0;try{if(c||!p||o||l.current)return;l.current=!0,e()}catch(m){console.error(m)}},[a,o,s,e,d,c])},Ft=()=>{const{defaultWithdrawSlippage:e}=G(),{isCompleteWithdrawStep:t}=Re(),[{slippage:n,minSlippage:a}]=Q();return n==="auto"?t?a??e:e:n};function pa(e,t,n){const[a,s]=u.useState(n),o=gn?e==="sessionStorage"?sessionStorage:localStorage:null,i=u.useCallback(l=>{try{s(l),o?.setItem(t,JSON.stringify(l))}catch(c){console.error(c)}},[t,o]);return u.useEffect(()=>{try{const l=o?.getItem(t);l&&s(JSON.parse(l))}catch(l){console.error(l)}},[t,o]),[a,i]}const ss=(e,t)=>{const[n,a]=u.useState(e);return u.useEffect(()=>{const s=setTimeout(()=>{a(e)},t);return()=>{clearTimeout(s)}},[e,t]),n},Pv=()=>{const e=b(),[t]=N(),n=Qe(),a=Ft(),s=Cv(e);return u.useCallback(async o=>{const i=io(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])},kv=({debounceTime:e}={})=>{const t=b(),n=Qe(),[a]=N(),s=Ft(),{data:{getSupportedAssets:o}={}}=jt(t),i=ss(a.value||"0",e??0);return u.useMemo(()=>{const l=_a(s),c=io(i),d=(o??[]).map(p=>({supportedAsset:p,withdrawData:"",slippageTolerance:l}));return n?[c,d]:[t.address,c,d]},[s,i,o,n,t.address])},Rv=e=>typeof e[0]=="string"&&typeof e[1]=="bigint"&&Array.isArray(e[2]),Lv=()=>{const e=b(),t=kt(),{canSpend:n}=ns(),a=kv({debounceTime:cr}),s=Rv(a)&&a[1]!==BigInt(0)&&!t&&n,{data:o}=E.useSimulateContract({abi:ve,address:z("easySwapperV2",e.chainId),functionName:wr,args:a,query:{enabled:s}});return Yi({assets:o?.result[0]??[],chainId:e.chainId})},rs=()=>{const[e]=O(),{data:t=[],isFetching:n,isFetched:a}=Lv(),s=Rt();return{isUnrollAndClaimTransaction:t?.length===1&&H(t[0]?.address,e.address)&&!s,isFetching:n,isFetched:a}},Mv=({onErrorCallback:e}={})=>{const t=b(),n=Qe(),{isUnrollAndClaimTransaction:a}=rs(),s=Pv(),o=re()[1],i=n?"multi_withdraw":a?"single_withdraw_and_claim":"single_withdraw",l=Ke({action:i,onErrorCallback:e}),c=n?yr:a?tc:wr,{send:d,estimate:p}=xe({contractId:n?"poolLogic":"easySwapperV2",dynamicContractAddress:n?t.address:void 0,functionName:c,onSettled:l});return{withdraw:u.useCallback(async()=>{o({type:"add",action:i,symbol:t.symbol,chainId:t.chainId});const y=await s(p);return console.log("Arguments",y),d(...y)},[o,i,t.symbol,t.chainId,s,p,d]),action:i}},Zi=({trade:e,onErrorCallback:t})=>{const n=A(),a=ie(),{account:s}=B(),o=b(),[i]=N(),[l]=O(),[c]=we(),d=K()[1],p=re()[1],m=fn(),y=Qe(),{isUnrollAndClaimTransaction:w}=rs(),f=he({symbol:i.symbol,address:i.address}),g=c==="deposit",x=ts(),S=g?"deposit":y?"multi_withdraw":w?"single_withdraw_and_claim":"single_withdraw",I=async()=>{const L=o.chainId;d({isOpen:!0,status:"Wallet",action:S,link:"",sendTokens:[i],receiveTokens:g||w?[l]:null,meta:g?{}:{withdrawPercentage:i.value&&f?new T(i.value).div(f).toNumber():0}});try{await e()}catch(M){M instanceof ut&&(t?.(),a({type:"MERGE_OVERLAY",payload:{type:$.ERROR_NOTIFICATION,isOpen:!0,meta:{error:M.message}}}),m?.(M,o.address,L,s)),d({isOpen:!1,status:"None",link:"",sendTokens:null,receiveTokens:null,meta:{}}),p({type:"remove",status:"fail"})}};return{disabled:!x,label:g?n.depositAction:y?n.withdrawAction:w?n.unrollAndClaimAction:n.unrollAction,handleTrade:I}},jv=1,Bv="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:tn({value:s,currency:a}),dailyEarnings:tn({value:s/365,currency:a}),monthlyEarnings:tn({value:s/12,currency:a})}},Ji=({currency:e,depositValueInUsd:t,chainId:n,apy:a,disabled:s})=>{const o=e==="ETH"?Zr[n]?.address:e==="BTC"?Jr[n]?.address:void 0,i=ce({address:o??_,chainId:n,disabled:s||!a||!o}),l=o?Number(i):jv;return u.useMemo(()=>$v({depositValueInUsd:t,apy:a,apyCurrencyPrice:l,currency:o?e:Bv}),[t,a,l,e,o])},el=()=>{const e=we()[0]==="deposit",{chainId:t}=b(),[n]=qe(),[a]=N(),s=ce({address:a.address,chainId:t,disabled:!e||!n.apy}),o=Ji({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}},Fv=e=>e.chainId?e.sourceAddress?e.destinationAddress?!e.amount||e.amount==="0"||e.amount==="NaN"?{isValid:!1,error:"Missing required parameter: amount or amount must be greater than 0"}:e.slippage?{isValid:!0}:{isValid:!1,error:"Missing required parameter: slippage"}:{isValid:!1,error:"Missing required parameter: destinationAddress"}:{isValid:!1,error:"Missing required parameter: sourceAddress"}:{isValid:!1,error:"Missing required parameter: chainId"},Wv=(e,t)=>{const{settings:{selectedAggregators:n}}=J(),a=Na(),{isValid:s}=Fv({chainId:String(e.chainId),sourceAddress:e.sourceAddress,destinationAddress:e.destinationAddress,amount:e.amount,slippage:String(e.slippage)});return tt.useQuery({queryKey:["getSwapQuotes",{...e,fromAddress:Nr},n],queryFn:async({signal:o,queryKey:[,i]})=>a({signal:o,variables:i}).then(l=>l?.filter(c=>!!c)??[]),...t,enabled:s&&(t?.enabled??!0)})},Ln=(e={})=>{const t=e?.extendedDebounceTime??!1,[n]=N(),a=ss(n.value,t?cr:lr);return{debouncedSendTokenValue:a,isDebouncing:n.value!==a}},Uv=()=>{const e=On(),[{isBatchTransactionsEnabled:t}]=Q();return e&&t},Qt="approve",tl=({token:e,rawTokenAmount:t,spenderAddress:n,onErrorCallback:a})=>{const s=b(),[{isInfiniteAllowance:o}]=Q(),i=re()[1],l=K()[1],c=Ke({action:Qt,onErrorCallback:a}),{send:d}=xe({contractId:"erc20",dynamicContractAddress:e.address,functionName:Qt,onSettled:c});return u.useCallback(async()=>(l({isOpen:!0,status:"Wallet",link:"",action:Qt,sendTokens:[{symbol:e.symbol,address:e.address,decimals:e.decimals,value:""}],receiveTokens:null,meta:{}}),i({type:"add",action:Qt,symbol:e.symbol,chainId:s.chainId}),d(n,o?Ue:t)),[o,s.chainId,t,d,n,e.address,e.decimals,e.symbol,i,l])},nl=({rawAmountToSpend:e,tokenAddress:t,ownerAddress:n,spenderAddress:a,chainId:s,skip:o=!1})=>{const{data:i,isFetching:l}=Tn({tokenAddress:t,ownerAddress:n,spenderAddress:a,chainId:s,skip:o});return u.useMemo(()=>o?{canSpend:!0,isFetching:!1}:!i||i===BigInt(0)?{canSpend:!1,isFetching:l}:!e||e==="0"?{canSpend:!0,isFetching:l}:{canSpend:new T(i.toString()).gte(e),isFetching:l},[l,e,i,o])},zv=()=>{const[{isInfiniteAllowance:e},t]=Q(),n=Ve(),a=u.useCallback(s=>{t({isInfiniteAllowance:s}),n?.(X.INFINITE_ALLOWANCE_CHANGE,{[Te.IS_INFINITE.NAME]:s?1:0})},[t,n]);return u.useMemo(()=>[e,a],[e,a])},al=()=>{const e=A(),[t,n]=zv();return r.jsx(kn,{defaultEnabled:t,onChange:n,label:e.infinite})},Hv=()=>{const[{isBatchTransactionsEnabled:e},t]=Q(),n=Ve(),a=u.useCallback(s=>{t({isBatchTransactionsEnabled:s}),Td(s),n?.(X.BATCH_TRANSACTIONS_CHANGE,{[Te.IS_BATCH_TRANSACTIONS_ENABLED.NAME]:s?1:0})},[t,n]);return u.useMemo(()=>[e,a],[e,a])},sl=()=>{const e=A(),[t,n]=Hv();return r.jsx(kn,{defaultEnabled:t,onChange:n,label:e.batchTransactionsSwitchLabel})},Gv=()=>{const[{availableAggregators:e,selectedAggregators:t},n]=Q(),a=u.useCallback(s=>{const o=t.includes(s)?t.filter(i=>i!==s):[...t,s];n({selectedAggregators:o})},[t,n]);return{availableAggregators:e,selectedAggregators:t,onAggregatorToggle:a}},rl=()=>{const e=A(),{availableAggregators:t,selectedAggregators:n,onAggregatorToggle:a}=Gv();return t.length<=1?null:r.jsx($e,{label:e.aggregatorsLabel,tooltipText:e.aggregatorsTooltip,children:r.jsx("div",{className:"dtw-flex dtw-flex-col dtw-gap-2",children:t.map(s=>r.jsxs("label",{className:"dtw-flex dtw-items-center dtw-justify-between dtw-gap-2 dtw-text-xs dtw-text-[var(--panel-content-color)] dtw-cursor-pointer",children:[s,r.jsx(kn,{defaultEnabled:n.includes(s),onChange:()=>a(s),size:"sm"})]},s))})})},Vv=()=>{const e=On(),t=A();return r.jsxs(r.Fragment,{children:[r.jsx($e,{label:t.slippageTolerance,tooltipText:t.depositSlippageWarning,children:r.jsx(Fi,{})}),r.jsx($e,{label:t.tokenAllowance,tooltipText:t.toggleTokenApprovalAmount,children:r.jsx(al,{})}),e&&r.jsx($e,{label:t.batchTransactionsLabel,tooltipText:t.batchTransactionsTooltip,children:r.jsx(sl,{})}),r.jsx(rl,{})]})},qv=()=>{const{chainId:e}=b(),[t]=N(),n=z("easySwapperV2",e),a=new T(t.value||"0").shiftedBy(t.decimals).toFixed(0,T.ROUND_UP);return u.useMemo(()=>({address:t.address,abi:D.erc20Abi,functionName:"approve",chainId:e,args:[n,a]}),[e,a,t.address,n])},Yv=()=>{const{chainId:e,address:t}=b(),{data:{isCustomCooldownDepositAllowed:n}={}}=Lt({address:t,chainId:e});return n!==!1},er=(e,t)=>e.length?e.find(({tokenAddress:a})=>Object.values(Yc[t]??{}).some(s=>H(s.address,a)))?.tokenAddress??e[0]?.tokenAddress:null,wt=()=>{const[e]=N(),{chainId:t,address:n}=b(),a=mt({address:n,chainId:t}),s=Yv();return u.useMemo(()=>{const o=a.filter(({isDeposit:c})=>c);if(hn(e.symbol,t)){const c=o.find(({tokenName:d})=>Ze[t]?.wrappedNativeTokenName===d);return c?{depositMethod:s?Ie.NATIVE_CUSTOM:Ie.NATIVE,vaultDepositTokenAddress:c.tokenAddress}:{depositMethod:s?Ie.ZAP_NATIVE_DEPOSIT_CUSTOM:Ie.ZAP_NATIVE_DEPOSIT,vaultDepositTokenAddress:er(o,t)??e.address}}const l=o.find(({tokenAddress:c})=>H(c,e.address));return l?{depositMethod:s?Ie.DEPOSIT_CUSTOM:Ie.DEPOSIT,vaultDepositTokenAddress:l.tokenAddress}:{depositMethod:s?Ie.ZAP_DEPOSIT_CUSTOM:Ie.ZAP_DEPOSIT,vaultDepositTokenAddress:er(o,t)??e.address}},[t,s,a,e.address,e.symbol])},Wt=()=>{const[e]=N(),{vaultDepositTokenAddress:t}=wt();return!H(e.address,t)},os=()=>{const{defaultSwapTransactionSlippage:e}=G(),[{slippage:t}]=Q(),n=Wt();return t==="auto"?n?e:yn:t},Mn=()=>{const{account:e=_}=B(),{chainId:t}=b(),[n]=N(),{debouncedSendTokenValue:a}=Ln(),{vaultDepositTokenAddress:s}=wt(),o=Wt();return Wv({sourceAddress:n.address,destinationAddress:s,amount:new T(a).shiftedBy(n.decimals).toFixed(0),chainId:t,slippage:"33",walletAddress:e},{enabled:o&&!!a,refetchInterval:wa})},ol=()=>{const{defaultNoSwapMinDepositAmountGap:e}=G(),{address:t,chainId:n}=b(),[a]=N(),[s]=O(),{data:{entryFee:o}={}}=oe({address:t,chainId:n}),i=Ne(Number(o??"0"),ye),[{slippage:l}]=Q(),c=l==="auto",d=os(),p=Wt(),m=+ce({address:a.address,chainId:n}),y=+ue({address:t,chainId:n});if(p){const g=Number(a.value||0)*m*(1-i/100)/y;return new T(g).shiftedBy(s.decimals).times(1-d/100).toFixed(0)}const w=c?e:d;return new T(s.value||"0").shiftedBy(s.decimals).times(1-w/100).toFixed(0)},Kv=({isDepositWithSwapTransaction:e,sendTokenAddress:t,sendTokenValue:n})=>{const{chainId:a}=b(),s=+ce({address:t,chainId:a}),{vaultDepositTokenAddress:o}=wt(),{data:i}=E.useReadContract({address:o,abi:D.erc20Abi,functionName:"decimals",chainId:a}),l=+ce({address:o,chainId:a,refetchInterval:ze,disabled:!e}),c=Number(n||"0")*s;return i&&l!==0?new T(c/l).shiftedBy(i).times(1-mr/100).toFixed(0):"0"},il=()=>{const[e]=N(),{debouncedSendTokenValue:t}=Ln(),n=Wt(),a=Kv({isDepositWithSwapTransaction:n,sendTokenAddress:e.address,sendTokenValue:t});return n?a:new T(t||"0").shiftedBy(e.decimals).toFixed(0)},ua=(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}},Qv=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[Hi(t)],w=ws({vaultAddress:i,sendTokenAddress:s,sendTokenAmount:p,minVaultTokensReceivedAmount:d,vaultDepositTokenAddress:l,swapData:y?.rawTransaction.data??"0x",routerKey:y?.routerKey,swapDestinationAmount:c,swapSlippage:a});return ua(o,e,w)}let m=[];for(const y of t){const w=ws({vaultAddress:i,sendTokenAddress:s,sendTokenAmount:p,minVaultTokensReceivedAmount:d,vaultDepositTokenAddress:l,swapData:y?.rawTransaction.data??"0x",routerKey:y?.routerKey,swapDestinationAmount:c,swapSlippage:a});m=ua(o,e,w);const{error:f}=await n(...m);if(!f)return m}return console.warn("[Deposit] No valid routers found for swap"),m},Xv=e=>e==="zapNativeDeposit"||e==="zapNativeDepositWithCustomCooldown"||e==="zapDeposit"||e==="zapDepositWithCustomCooldown",Zv=({depositMethod:e,vaultDepositTokenAddress:t})=>{const{address:n}=b(),[a]=N(),s=a.value||"0",o=new T(s).shiftedBy(a.decimals).toFixed(0),i=il(),{data:l}=Mn(),c=ol(),d=os();return u.useCallback(async p=>{const m={vaultAddress:n,vaultDepositTokenAddress:t,vaultDepositTokenAmount:i,minVaultTokensReceivedAmount:c,sendTokenAmount:o},y=Xv(e);try{return y?Qv({baseArgs:m,swapQuotes:l,estimate:p,depositSlippage:d,sendTokenAddress:a.address,depositMethod:e}):ua(e,m)}catch(w){return console.error(w),[]}},[n,e,d,c,a.address,o,l,t,i])},ll=()=>{const{chainId:e}=b(),[t]=O(),n=re()[1],{depositMethod:a,vaultDepositTokenAddress:s}=wt(),o=Zv({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}},Jv=e=>{const[,t]=K(),[,n]=re(),[,a]=N(),[,s]=Q(),o=Ao();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])},ex=({address:e,abi:t,functionName:n,args:a,value:s})=>({to:e,data:D.encodeFunctionData({abi:t,functionName:n,args:a}),value:s}),tx=({onSettled:e})=>{const{sendCalls:t}=E.useSendCalls({mutation:{onSettled:e}});return u.useCallback(async n=>t({calls:n.map(ex),forceAtomic:!0}),[t])},nx="deposit",ax=()=>{const{chainId:e,depositMethod:t,buildDepositTransactionArgs:n,addPendingTransaction:a}=ll(),s=qv(),o=Jv(nx),i=tx({onSettled:o});return u.useCallback(async()=>{a();const l=await n(),c={address:z("easySwapperV2",e),abi:ve,functionName:t,args:l};return i([s,c])},[a,e,t,n,i,s])},sx="deposit",rx=()=>{const{depositMethod:e,buildDepositTransactionArgs:t,addPendingTransaction:n}=ll(),a=Ke(sx),{send:s,estimate:o}=xe({contractId:"easySwapperV2",functionName:e,onSettled:a});return u.useCallback(async()=>{n();const i=await t(o);return s(...i)},[n,s,t,o])},ox=()=>{const{account:e=_}=B(),{chainId:t}=b(),[n]=N(),a=z("easySwapperV2",t),s=new T(n.value||"0").shiftedBy(n.decimals).toFixed(0,T.ROUND_UP),{canSpend:o}=nl({tokenAddress:n.address,ownerAddress:e,spenderAddress:a,rawAmountToSpend:s,chainId:t,skip:hn(n.symbol,t)||s==="0"});return{approve:tl({token:n,rawTokenAmount:s,spenderAddress:a}),canSpend:o}},ix=({address:e,chainId:t})=>{const[n]=N(),a=Oe(),{vaultDepositTokenAddress:s}=wt(),o=il(),i=!!(o&&+o>0),l=E.useReadContract({address:z("easySwapperV2",t),abi:ve,functionName:"depositQuote",args:[e,s,BigInt(o??0)],chainId:t,query:{enabled:a&&i&&!!n.address&&!!o,refetchInterval:ze}});return Wa(l),l},lx=()=>{const{address:e,chainId:t}=b(),n=Oe(),[a]=N(),[s,o]=O(),[,i]=Q(),{isDebouncing:l,debouncedSendTokenValue:c}=Ln(),{isFetching:d}=Mn(),{data:p,isFetching:m}=ix({address:e,chainId:t}),y=d||m||l;u.useEffect(()=>{if(!n||y)return;const w=p?new T(p.toString()).shiftedBy(-s.decimals).toFixed(s.decimals):"";o({value:w})},[p,s.decimals,a.address,o,n,y,c]),u.useEffect(()=>{n&&o({isLoading:y})},[n,y,o]),u.useEffect(()=>{n&&(!a.value||a.value==="0")&&(o({value:"0"}),i({minSlippage:0}))},[o,i,a.value,n])},cl=(e={})=>{const{address:t,chainId:n}=b(),{data:a}=oe({address:t,chainId:n}),[s]=N(),[o]=O(),i=ce({address:s.address,chainId:n}),l=ue({address:t,chainId:n}),c=e.includesEntryFee?Ne(Number(a?.entryFee??"0"),ye):0;return u.useMemo(()=>{const d=Number(s.value||"0"),p=new T(d).times(i??"0").times(1-c/100),m=Number(o.value||"0"),y=new T(m).times(l??"0");return p.isZero()||y.isZero()?0:p.decimalPlaces(_t(d)).comparedTo(y.decimalPlaces(_t(m)))&&p.isGreaterThan(0)?y.dividedBy(p).minus(1).times(100).decimalPlaces(2,T.ROUND_DOWN).toNumber():0},[c,o.value,s.value,i,l])},cx=()=>{const e=Oe(),[t]=O(),[,n]=Q(),{isDebouncing:a}=Ln({extendedDebounceTime:!0}),s=os(),o=cl({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 dx(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 px=dx;function ux(e){return e!==e}var mx=ux;function yx(e,t,n){for(var a=n-1,s=e.length;++a<s;)if(e[a]===t)return a;return-1}var wx=yx,hx=px,gx=mx,fx=wx;function Tx(e,t,n){return t===t?fx(e,t,n):hx(e,gx,n)}var bx=Tx,vx=bx;function xx(e,t){var n=e==null?0:e.length;return!!n&&vx(e,t,0)>-1}var Ax=xx;function Sx(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 Cx=Sx;function Ex(){}var Ix=Ex,Yn=Ho,_x=Ix,Dx=La,Nx=1/0,Ox=Yn&&1/Dx(new Yn([,-0]))[1]==Nx?function(e){return new Yn(e)}:_x,Px=Ox,kx=Mo,Rx=Ax,Lx=Cx,Mx=jo,jx=Px,Bx=La,$x=200;function Fx(e,t,n){var a=-1,s=Rx,o=e.length,i=!0,l=[],c=l;if(n)i=!1,s=Lx;else if(o>=$x){var d=t?null:jx(e);if(d)return Bx(d);i=!1,s=Mx,c=new kx}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 Wx=Fx,Ux=ei,zx=Wx;function Hx(e,t){return e&&e.length?zx(e,Ux(t)):[]}var Gx=Hx;const Vx=bn(Gx),jn=()=>{const{address:e,chainId:t,depositParams:n}=b(),{account:a}=B(),s=mt({address:e,chainId:t}),o=Rt(),[{isCustomDepositOptionsDisabled:i}]=Q(),[l]=Do(),c=u.useMemo(()=>Vx([...s.filter(({isDeposit:y})=>y).map(({tokenAddress:y,tokenName:w,precision:f})=>({address:y.toLowerCase(),symbol:w,decimals:f})),...i?[]:[...n.customTokens.map(y=>({...y,address:y.address.toLowerCase()})),...l?.[t]??[]]],"address"),[s,i,n.customTokens,l,t]),d=!!c.length,p=!!a&&d,{data:m}=E.useReadContracts({contracts:c.map(({address:y})=>({address:y,abi:D.erc20Abi,functionName:"balanceOf",args:[a??_],chainId:t})),query:{enabled:p}});return _n(m),u.useMemo(()=>{if(!d)return[];const y=[];for(let g=0;g<c.length;g++)y[g]={value:"",address:c[g]?.address??_,symbol:c[g]?.symbol??c[g]?.address??_,balance:m?.[g]?.result?Fe((m?.[g]?.result).toString()??"0",c[g]?.decimals??k):0,decimals:c[g]?.decimals??k};const w=y.slice().sort((g,x)=>g.balance&&x.balance?x.balance-g.balance:0),f=w.find(({symbol:g})=>g===n.defaultDepositTokenSymbol);return[...f?[f]:[],...w.filter(({symbol:g})=>g!==n.defaultDepositTokenSymbol),...o||i?[]:[{value:"",address:Ze[t]?.address??_,symbol:Ze[t]?.nativeTokenSymbol??"",decimals:Ze[t]?.decimals??k}]]},[d,o,i,t,c,m,n.defaultDepositTokenSymbol])},qx=()=>{const e=b(),[t]=jn(),n=N()[1],[a]=we();u.useEffect(()=>{a==="deposit"&&t?.symbol&&n({address:t?.address,symbol:t.symbol,decimals:t?.decimals,value:"",isLoading:!t.symbol})},[n,e.address,a,t?.symbol,t?.address,t?.decimals])},Yx=()=>{const{chainId:e,address:t,deprecated:n}=b(),{data:{isPrivateVault:a}={isPrivateVault:!1}}=oe({address:t,chainId:e}),s=a||n,o=ui({address:t,chainId:e});return{isVaultDepositLocked:s,isAccountWhitelisted:o}},dl=()=>{const{defaultLockTime:e}=G(),{chainId:t,address:n}=b(),{data:{customCooldown:a}={}}=Lt({address:n,chainId:t}),{depositMethod:s}=wt(),o=a?Et.formatDuration({minutes:Number(a)/60}):e;switch(s){case"depositWithCustomCooldown":case"nativeDepositWithCustomCooldown":case"zapDepositWithCustomCooldown":case"zapNativeDepositWithCustomCooldown":return o;default:return e}},Kx="1",Qx=()=>{const{account:e=_}=B(),{address:t,chainId:n}=b(),[a]=O(),s=ue({address:t,chainId:n}),{minDepositUSD:o}=Va(t,n),{data:i}=Ti({address:t,chainId:n,account:e}),l=i?.balanceInUsdNumber??0,c=s==="0"?Kx:s,d=Math.max(0,o-l),p=new T(a.value||"0").multipliedBy(c);return{requiresMinDeposit:p.isZero()?!1:p.lte(d),requiredMinDepositAmount:ne({value:d})}},Bn=e=>{const[{action:t,status:n}]=K();return t===e&&(n==="Wallet"||n==="Mining")},pl=e=>{const t=ie(),{onAcceptTermsOfUse:n}=Ka(),{termsOfUseAccepted:a}=G(),{disabled:s,label:o,handleTrade:i}=Zi({trade:e}),{isError:l,isLoading:c}=Mn(),d=Bn("deposit");return{handleClick:()=>{if(l){t({type:"MERGE_OVERLAY",payload:{type:$.ERROR_NOTIFICATION,isOpen:!0,meta:{error:Mr}}});return}a?i():t({type:"MERGE_OVERLAY",payload:{type:$.TERMS_OF_USE,isOpen:!0,onConfirm:async y=>{try{y(!0),await n()&&i()}catch{console.error("Failed to verify terms of use acceptance")}finally{y(!1)}}}})},disabled:s||c,label:o,isLoading:d}},Xx=()=>{const{ActionButton:e=q}=P(),t=ax(),{handleClick:n,label:a,disabled:s,isLoading:o}=pl(t);return r.jsx(e,{onClick:n,disabled:s,loading:o,children:a})},Zx=()=>{const{ActionButton:e=q}=P(),t=rx(),{handleClick:n,label:a,disabled:s,isLoading:o}=pl(t);return r.jsx(e,{onClick:n,disabled:s,loading:o,children:a})},Jx=()=>{const e=Uv(),{deprecated:t,symbol:n,chainId:a,maintenance:s,maintenanceDeposits:o,depositCapacity:i}=b(),[l]=N(),c=kt(),d=ce({address:l.address,chainId:a}),{isVaultDepositLocked:p,isAccountWhitelisted:m}=Yx(),{approve:y,canSpend:w}=ox(),{requiresHighSlippageConfirm:f,confirmHighSlippage:g,slippageToBeUsed:x}=Qa(),{requiresMinDeposit:S,requiredMinDepositAmount:I}=Qx(),M=Number(l.value||"0")*Number(d),ee=i!==void 0&&M>i;return{requiresMinDeposit:S,requiresWhitelist:p&&!m,requiresApprove:!w,requiresHighSlippageConfirm:f,sendTokenSymbol:l.symbol,poolSymbol:n,requiredMinDepositAmount:I,deprecated:t,approve:y,confirmHighSlippage:g,slippageToBeUsed:x,maintenance:s||o,exceedsDepositCapacity:ee,isBatchContractWritesTrading:e,insufficientBalance:c}},eA=()=>{const{ActionButton:e=q}=P(),t=A(),{status:n}=E.useConnect(),{onConnect:a}=Ka();return r.jsx(e,{onClick:a,className:"dtw-whitespace-nowrap dtw-text-sm",loading:n==="pending",children:t.connectWallet})},tA=()=>{const{ActionButton:e=q}=P(),{switchNetwork:t}=Ce(),{chainId:n}=b(),a=A(),s=()=>{t?.({chainId:n})};return r.jsx(e,{onClick:s,children:a.switchNetwork})},ul=()=>{const{account:e}=B(),{chainId:t}=Ce(),n=b();return{isDisconnected:!e,isWrongNetwork:t!==n.chainId}},is=({children:e})=>{const{isDisconnected:t,isWrongNetwork:n}=ul();return t?r.jsx(eA,{}):n?r.jsx(tA,{}):e},nA=()=>{const e=ts(),t=Bn("approve");return{disabled:!e,isLoading:t}},aA=({onApprove:e,symbol:t})=>{const{ActionButton:n=q}=P(),a=A(),{disabled:s,isLoading:o}=nA();return r.jsx(n,{disabled:s,onClick:e,loading:o,children:r.jsxs("span",{children:[a.approve," ",t]})})},sA=({onClick:e,tooltipText:t,disabled:n})=>{const[a,s]=u.useState(!1),o=()=>{e(),s(!0)};return u.useEffect(()=>{if(!a)return;const i=setTimeout(()=>{s(!1)},wa);return()=>clearTimeout(i)},[a]),{disabled:n||a,tooltipText:t,handleClick:o}},ml=e=>{const{disabled:t,tooltipText:n,handleClick:a}=sA(e);return r.jsx(Ha,{text:n,children:r.jsx(pn,{Icon:Se.ArrowPathIcon,onClick:a,disabled:t,containerClassName:"!dtw-self-center",className:C("dtw-h-[var(--panel-input-token-icon-size,var(--panel-icon-size))] dtw-w-[var(--panel-input-token-icon-size,var(--panel-icon-size))] sm:dtw-w-[var(--panel-input-token-icon-size-sm,var(--panel-icon-size-sm))] sm:dtw-h-[var(--panel-input-token-icon-size-sm,var(--panel-icon-size-sm))]",{"dtw-opacity-50":t})})})},rA=()=>{const{refetch:e,isFetched:t}=Mn(),{invalidateTradingQueries:n}=Nn();return{handleSwapQuoteReload:()=>{n(),e()},disabled:!t}},oA=()=>{const e=A(),{handleSwapQuoteReload:t,disabled:n}=rA();return r.jsx(ml,{tooltipText:e.refreshSwapQuoteTooltip,onClick:t,disabled:n})},iA=()=>{const{refetch:e,isFetched:t}=yt(),{invalidateTradingQueries:n}=Nn();return{handleSwapQuoteReload:()=>{n(),e()},disabled:!t}},lA=()=>{const e=A(),{handleSwapQuoteReload:t,disabled:n}=iA();return r.jsx(ml,{tooltipText:e.refreshSwapQuoteTooltip,onClick:t,disabled:n})},cA=()=>Oe()?r.jsx(oA,{}):r.jsx(lA,{}),yl=({children:e,...t})=>{const{ActionButton:n=q}=P(),{openLimitSellOverlay:a,displayLimitSellOverlay:s}=Xb();return s?r.jsx(n,{...t,onClick:a,children:e}):null},wl=({children:e,...t})=>{const{ActionButton:n=q}=P(),{onOpenNotificationsSettings:a}=Ka();return a?r.jsx(n,{...t,onClick:a,children:e}):null},dA=()=>{const{address:e,symbol:t}=b();return{handleAddToWallet:u.useCallback(()=>{sd({address:e,symbol:t,decimals:k,image:Ya(t)})},[e,t])}},pA=()=>{const e=A(),{handleAddToWallet:t}=dA();return r.jsx("button",{type:"button",onClick:t,className:"dtw-underline dtw-text-[color:var(--panel-accent-from-color)] hover:dtw-opacity-80",children:e.addToWallet})},uA=()=>{const e=A(),t=ie(),{symbol:n}=b(),[a]=N(),[s]=O(),[,o]=No(),{isCompleteWithdrawStep:i}=Re();return{handleClick:u.useCallback(()=>{o({type:"withdraw",sendTokenSymbol:n,receiveTokenSymbol:s.symbol,...!i&&{sendTokenAmount:a.value},...s.value&&{receiveTokenAmount:s.value}}),t({type:"MERGE_OVERLAY",payload:{type:$.WITHDRAW_STEPPER,isOpen:!0}})},[t,o,n,a.value,s.symbol,s.value,i]),label:i?e.swapAction:e.sellNow}},hl=()=>{const{ActionButton:e=q}=P(),{handleClick:t,label:n}=uA();return r.jsx(e,{onClick:t,children:n})},mA=()=>{const{ActionButton:e=q}=P(),t=A(),n=Xa("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:f,isBatchContractWritesTrading:g,insufficientBalance:x,exceedsDepositCapacity:S}=Jx();return a?r.jsx(e,{disabled:!0,children:t.minimumPurchase.replace("{value}",s)}):i||f?r.jsx(un,{promptText:c?t.poolIsInactive.replace("{poolSymbol}",d):f?t.poolDepositsAreMaintenance.replace("{poolSymbol}",d):t.poolIsPrivate,children:n}):S?r.jsx(un,{promptText:t.exceedsDepositCapacity.replace("{poolSymbol}",d),children:n}):x?r.jsx(e,{disabled:!0,children:t.insufficientBalance}):l?r.jsx(e,{onClick:w,children:t.confirmMaxSlippage.replace("{slippagePercentage}",`${Math.abs(m)}`)}):o?g?r.jsx(Xx,{}):r.jsx(aA,{symbol:p,onApprove:y}):r.jsx(Zx,{})},yA=()=>{const[e,t]=N(),{chainId:n}=b(),a=ce({address:e.address,chainId:n}),s=he({symbol:e.symbol,address:e.address});return{...e,price:a,balance:s,updater:t}},wA=()=>{const{address:e,chainId:t}=b(),[n]=O(),a=ue({address:e,chainId:t});return{...n,price:a}},hA=()=>{const e=yA(),t=wA(),n=Ve(),a=cl(),[{minSlippage:s}]=Q();return{autoFocus:!1,sendToken:e,receiveToken:t,tradingPriceDiff:a,minSlippage:s,onInputFocus:()=>{n?.(X.INVEST_INPUT_FOCUS,{symbol:e.symbol,address:Da(e.address)})},onInputChange:l=>{e.updater({value:l})}}},mn=({children:e})=>r.jsx("table",{className:"dtw-min-w-full dtw-border-separate",style:{borderSpacing:"0px 0.25rem"},children:r.jsx("tbody",{children:e})}),gl=({children:e})=>{const t=A();return r.jsx(R.Disclosure,{children:({open:n})=>r.jsxs(r.Fragment,{children:[r.jsxs(R.DisclosureButton,{className:"dtw-px-1.5 dtw-w-[100px] dtw-flex dtw-justify-between dtw-rounded-[var(--panel-radius-secondary,var(--panel-radius))] hover:dtw-bg-[var(--panel-meta-hover-bg,var(--panel-neutral-color))] focus:dtw-outline-none",children:[n?t.hide:t.showAll,r.jsx(Se.ChevronDownIcon,{className:C("dtw-text-[color:var(--panel-icon-color,var(--panel-content-color))] !dtw-h-[var(--panel-input-token-icon-size,var(--panel-icon-size))] !dtw-w-[var(--panel-input-token-icon-size,var(--panel-icon-size))] sm:dtw-w-[var(--panel-input-token-icon-size-sm,var(--panel-icon-size-sm))] sm:dtw-h-[var(--panel-input-token-icon-size-sm,var(--panel-icon-size-sm))]",{"dtw-rotate-180 dtw-transform":n})})]}),r.jsx(R.Transition,{show:n,children:r.jsx(R.DisclosurePanel,{className:"dtw-mt-1 dtw-transition dtw-transform dtw-duration-100 dtw-ease-out data-[closed]:opacity-0 data-[closed]:-dtw-translate-y-2.5 dtw-static dtw-rounded-[var(--panel-radius-secondary,var(--panel-radius))] dtw-flex dtw-flex-col dtw-gap-1",children:e})})]})})},gA=e=>{const{address:t,chainId:n}=b(),[{value:a}]=N(),s=yi({vaultTokensAmount:a,address:t,chainId:n}),o=e?s.length:Tr,i=s.find(({tokenAddress:p})=>to.some(m=>H(p,m))),l=!!i&&i.amount!=="0",{firstPart:c,secondPart:d}=oo(s,o);return{visibleAssets:c,hiddenAssets:d,showUnitWithdrawalTip:l,unitSymbol:i?.tokenName,unitAddress:i?.tokenAddress??_}},fA=({symbol:e})=>{const t=A();return r.jsxs("div",{className:"dtw-flex dtw-gap-1 dtw-items-center dtw-text-xs dtw-text-[color:var(--panel-secondary-content-color)]",children:[t.as," ",r.jsx(We,{symbols:[e],size:"xs"})," ",e]})},fl=({className:e,showFraction:t=!0,iconSize:n,showAllAsset:a=!1})=>{const{visibleAssets:s,hiddenAssets:o,showUnitWithdrawalTip:i,unitSymbol:l,unitAddress:c}=gA(a),d=u.useCallback(({fraction:p,fractionUsd:m,tokenName:y,asset:w,tokenAddress:f})=>{const g=ho(f);return r.jsxs("tr",{children:[r.jsxs("td",{style:{width:150,maxWidth:150},children:[r.jsx($t,{symbol:y,iconSymbols:w.iconSymbols,symbolClasses:"dtw-text-xs dtw-font-bold",size:n}),g&&r.jsx(fA,{symbol:go(f).symbol})]}),t&&r.jsxs("td",{style:{width:150,maxWidth:150},children:[r.jsx("p",{className:"dtw-truncate",children:p}),r.jsx("p",{className:"dtw-truncate dtw-text-xs dtw-text-[color:var(--panel-secondary-content-color)]",children:m})]})]},y)},[n,t]);return r.jsx("div",{className:C("dtw-text-sm dtw-font-light",e),children:s.length>0?r.jsxs(r.Fragment,{children:[r.jsx(mn,{children:s.map(d)}),o.length>0&&r.jsx(gl,{children:r.jsx(mn,{children:o.map(d)})}),i&&r.jsxs("p",{className:"dtw-text-warning dtw-text-[length:var(--panel-label-font-size)]",children:[l," can be redeemed using"," ",r.jsxs("a",{className:"dtw-text-warning dtw-inline-flex dtw-gap-0.5",href:md(c),target:"_blank",rel:"noreferrer",children:["Flat Money ",r.jsx(se.ArrowTopRightOnSquareIcon,{className:"dtw-w-3"})]})]})]}):r.jsx(Bi,{})})},TA=({symbol:e})=>{const t=at(),n=ie(),{standalone:a}=G(),s=t.some(p=>p.symbol===e),o=e==="all",i=Co(),l=s&&t.length===1;return{isAllSymbol:o,onClick:()=>{i?.({isOpen:!0,entity:s?"pool":"token"}),a&&n({type:"MERGE_OVERLAY",payload:{type:s?$.POOL_SELECT:$.TOKEN_SELECT,isOpen:!0}})},disabled:l,hideTokenIcon:a&&s}},bA=({symbol:e})=>{const{isAllSymbol:t,onClick:n,disabled:a,hideTokenIcon:s}=TA({symbol:e}),o=A();return r.jsxs("button",{className:C("dtw-flex dtw-items-center dtw-gap-1 dtw-rounded-[var(--panel-input-button-radius,var(--panel-radius))] dtw-border dtw-border-[var(--panel-input-button-border-color,var(--panel-accent-to-color))] !dtw-bg-[var(--panel-input-button-bg,var(--panel-secondary-color))] dtw-px-[var(--panel-input-button-px)] dtw-py-[var(--panel-input-button-py)] hover:dtw-opacity-[var(--panel-action-hover-opacity)] dtw-opacity-[var(--panel-action-opacity)]",{"dtw-pr-2 dtw-pointer-events-none":a}),onClick:n,disabled:a,children:[r.jsx($t,{symbol:e,iconSymbols:s?[]:[e],symbolClasses:"dtw-font-[var(--panel-input-token-font-weight,var(--panel-font-weight-medium))] dtw-text-[length:var(--panel-input-token-font-size,var(--panel-font-size-xs))] dtw-line-height-[length:var(--panel-input-token-line-height,var(--panel-line-height-xs))] sm:dtw-text-[length:var(--panel-input-token-font-size-sm,var(--panel-font-size))] sm:dtw-leading-[var(--panel-input-token-line-height-sm,var(--panel-line-height))] dtw-text-[color:var(--panel-input-button-content-color)]",CustomIcon:t?r.jsx(an.CircleStackIcon,{className:"dtw-h-[var(--panel-input-token-icon-size,var(--panel-icon-size))] dtw-w-[var(--panel-input-token-icon-size,var(--panel-icon-size))] sm:dtw-w-[var(--panel-input-token-icon-size-sm,var(--panel-icon-size-sm))] sm:dtw-h-[var(--panel-input-token-icon-size-sm,var(--panel-icon-size-sm))] dtw-text-[color:var(--panel-icon-color,var(--panel-content-color))]"}):void 0,customTitle:t?o.all:void 0}),!a&&r.jsx(an.ChevronDownIcon,{className:"dtw-flex-shrink-0 dtw-text-[color:var(--panel-icon-color,var(--panel-content-color))] dtw-h-[var(--panel-input-token-icon-size,var(--panel-icon-size))] dtw-w-[var(--panel-input-token-icon-size,var(--panel-icon-size))] sm:dtw-w-[var(--panel-input-token-icon-size-sm,var(--panel-icon-size-sm))] sm:dtw-h-[var(--panel-input-token-icon-size-sm,var(--panel-icon-size-sm))]","aria-hidden":"true"})]})};function vA(e,t){const n=new T(e);return t&&n.gt(0)?n.toFixed(6):e}const xA=e=>{e.currentTarget.blur()},AA=({displayCalculatedValue:e,assetInput:t="",assetPrice:n,tradingPriceDiff:a=0,type:s,onInputChange:o,maxBalance:i,autoFocus:l=!1,disabled:c=!1})=>{const d=u.useRef(null),{usdAmount:p,isEstimated:m}=u.useMemo(()=>{const g=Number(t||0)*Number(n||0);if(!e||isNaN(g))return{usdAmount:"",isEstimated:!1};const x=ne({value:g,maximumFractionDigits:_t(g)});return a?{usdAmount:`${x} (${a>0?"+":""}${a}%${s===W.ERROR?"⚠":""})`,isEstimated:c}:{usdAmount:x,isEstimated:c}},[t,n,a,e,s,c]),y=()=>{d.current?.focus()},w=g=>{o&&o(g.target.value)},f=()=>{o&&i&&o(i)};return{inputRef:d,usdAmount:p,isEstimated:m,value:vA(t,c),autoFocus:l,onContainerClick:y,onMaxBalanceClick:f,onInputChange:w}},Dt=e=>{const{inputRef:t,usdAmount:n,isEstimated:a,autoFocus:s,value:o,onContainerClick:i,onMaxBalanceClick:l,onInputChange:c}=AA(e),{assetSymbol:d,onInputFocus:p,disabled:m=!1,displayMax:y=!1,displayCalculatedValue:w=!1,type:f=W.DEFAULT,isLoading:g=!1,children:x}=e,S=A(),I=C({"dtw-text-[color:var(--panel-error-content-color)]":f===W.ERROR&&!g,"dtw-text-[color:var(--panel-warning-content-color)]":f===W.WARNING&&!g});return r.jsxs("div",{className:C("dtw-relative dtw-flex dtw-flex-col dtw-gap-[var(--panel-input-group-gap,var(--panel-gap))] dtw-rounded-[var(--panel-input-radius,var(--panel-radius))] dtw-border dtw-bg-[var(--panel-input-bg,var(--panel-neutral-color))] dtw-py-[var(--panel-input-py)] dtw-px-[var(--panel-input-px)] dtw-shadow-md",{"focus-within:dtw-border-[var(--panel-input-focus-border-color)] focus-within:dtw-bg-[var(--panel-input-focus-bg)]":!m,"dtw-border-[var(--panel-input-border-color)]":f===W.DEFAULT||g,"dtw-border-[color:var(--panel-error-content-color)]":f===W.ERROR&&!g,"dtw-border-[color:var(--panel-warning-content-color)]":f===W.WARNING&&!g}),onClick:i,children:[r.jsxs("div",{className:C("dtw-flex dtw-justify-between dtw-items-center dtw-text-[length:var(--panel-input-label-font-size,var(--panel-font-size-sm))] dtw-leading-[var(--panel-input-label-line-height,var(--panel-line-height-sm))] dtw-font-[var(--panel-input-label-font-weight,var(--panel-font-weight-light))] dtw-gap-x-2"),children:[r.jsx("div",{className:"transparent-scrollbar dtw-flex-1 dtw-overflow-x-auto",children:d==="all"?r.jsx(fl,{iconSize:"sm"}):r.jsx("input",{className:C("dtw-appearance-none dtw-bg-transparent dtw-text-[color:var(--panel-input-content-color,var(--panel-content-color))] placeholder:dtw-text-[color:var(--panel-input-placeholder-color,var(--panel-secondary-content-color))] dtw-text-[length:var(--panel-input-font-size,var(--panel-font-size-sm))] !dtw-leading-[var(--panel-input-line-height,var(--panel-line-height-sm))] dtw-font-[var(--panel-input-font-weight,var(--panel-font-weight-light))] dtw-outline-none focus:dtw-outline-none lg:dtw-text-[length:var(--panel-input-font-size-lg,var(--panel-font-size-lg))] lg:dtw-leading-[var(--panel-input-line-height-lg,var(--panel-line-height-lg))] dtw-w-full",I),ref:t,autoFocus:s,type:"number",min:0,value:o,onChange:c,onFocus:p,placeholder:"0",disabled:m,onWheelCapture:xA})}),r.jsx(bA,{symbol:d})]}),r.jsxs("div",{className:"dtw-flex dtw-items-center dtw-justify-between dtw-gap-x-2",children:[r.jsx("div",{className:"dtw-flex dtw-items-center dtw-gap-[var(--panel-input-price-gap,var(--panel-gap))] dtw-flex-1 dtw-overflow-x-auto transparent-scrollbar",children:w&&r.jsx(r.Fragment,{children:g?r.jsx("div",{className:"dtw-h-[18px]",children:r.jsx(ke,{className:"dtw-stroke-[color:var(--panel-accent-from-color)] dtw-h-[var(--panel-icon-secondary-size)] sm:dtw-h-[var(--panel-icon-secondary-size-sm)] dtw-w-[var(--panel-icon-secondary-size)] sm:dtw-w-[var(--panel-icon-secondary-size-sm)]"})}):r.jsxs("span",{className:C("dtw-flex-1 dtw-py-[1px]",{"dtw-text-[color:var(--panel-input-loading-content-color,var(--panel-loading-content-color))]":g,"!dtw-text-[color:var(--panel-secondary-content-color)] dtw-text-[length:var(--panel-balance-font-size)] !dtw-leading-[var(--panel-label-line-height,var(--panel-line-height-xs))]":!g&&f===W.DEFAULT},I),children:[n,a&&r.jsx("span",{className:"dtw-ml-1",children:S.estimated})]})})}),x,y&&r.jsx(dv,{onClick:l})]})]})},SA=()=>{const{stablePrecision:e,defaultPrecision:t}=G(),[{symbol:n,address:a}]=N(),s=he({symbol:n,address:a,watch:!0});return{formattedBalance:mo({balance:s,symbol:n,precision:co(n)?e:t,truncateSymbol:!0}),symbol:n}},Tl=()=>{const{formattedBalance:e,symbol:t}=SA();return r.jsx(ji,{balance:e,symbol:t})},CA=()=>{const{stablePrecision:e,defaultPrecision:t}=G(),[{symbol:n,address:a}]=O(),s=he({symbol:n,address:a,watch:!0});return{formattedBalance:mo({balance:s,symbol:n,precision:co(n)?e:t,truncateSymbol:!0}),symbol:n}},bl=()=>{const{formattedBalance:e,symbol:t}=CA();return r.jsx(ji,{balance:e,symbol:t})},ls=()=>{const e=b(),[t]=jn(),{isAllAssetsWithdrawOptionDefault:n}=G(),{data:a=[]}=me(),s=a.length>0,{data:o}=qa(e),i=we()[1],l=N()[1],c=O()[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:g})=>g===y)??m[0]??sn,f=s?w:o||n?sn:w;l({address:e.address,symbol:e.symbol,decimals:k,value:""}),c({...f,value:"",isLoading:!1})};return m=>{switch(i(m),m){case"deposit":return d();case"withdraw":return p()}}},EA=()=>{Wi(),qx(),wi(),me()},et=["deposit","withdraw"],IA=()=>{const[e]=we(),t=ls();return{handleClick:()=>{const a=et.find(s=>s!==e);a&&t(a)}}},vl=()=>{const{handleClick:e}=IA();return r.jsx("div",{onClick:e,className:"dtw-cursor-pointer dtw-group dtw-absolute dtw-left-1/2 -dtw-top-[calc(var(--panel-inputs-group-gap)*0.5)] -dtw-translate-y-1/2 -dtw-translate-x-1/2 dtw-flex dtw-items-center dtw-justify-center dtw-rounded-[var(--panel-inputs-arrow-radius)] dtw-p-0.5 dtw-bg-[color:var(--panel-background-color)] dtw-backdrop-blur-3xl",children:r.jsx("button",{className:"!dtw-bg-[var(--panel-inputs-arrow-bg)] dtw-rounded-[var(--panel-inputs-arrow-radius)] dtw-px-[var(--panel-inputs-group-px-arrow)] dtw-py-[var(--panel-inputs-group-py-arrow)]",children:r.jsx(Se.ArrowDownIcon,{className:"dtw-h-[var(--panel-inputs-group-arrow-size)] dtw-w-[var(--panel-inputs-group-arrow-size)] dtw-text-[color:var(--panel-inputs-arrow-color)] group-hover:dtw-opacity-[var(--panel-action-hover-opacity)] group-hover:dtw-rotate-180 dtw-transition-transform"})})})},_A=()=>{const{sendToken:e,receiveToken:t,autoFocus:n,tradingPriceDiff:a,minSlippage:s,onInputFocus:o,onInputChange:i}=hA(),l=Bt(s??0);return r.jsxs(r.Fragment,{children:[r.jsx(Dt,{assetInput:e.value,onInputChange:i,onInputFocus:o,autoFocus:n,assetSymbol:e.symbol,assetPrice:e.price??"",displayMax:!0,maxBalance:e.balance,displayCalculatedValue:!0,isLoading:e.isLoading,children:r.jsx(Tl,{})}),r.jsxs(Dt,{assetInput:t.value,assetSymbol:t.symbol,assetPrice:t.price??"",displayCalculatedValue:!0,disabled:!0,tradingPriceDiff:a,type:l,isLoading:t.isLoading,children:[r.jsx(bl,{}),r.jsx(vl,{})]})]})},DA=()=>{const{address:e,chainId:t}=b(),n=vi({address:e,chainId:t}),[a]=O();if(!n)return{isMaxSupplyCapReached:!1,supplyCapInUsd:""};const{totalSupplyNumber:s,maxSupplyCapNumber:o,remainingSupplyCapInUsd:i}=n,l=Number(a.value||"0"),c=s+l>o,d=ne({value:i,maximumFractionDigits:0,minimumFractionDigits:0});return{isMaxSupplyCapReached:c,supplyCapInUsd:d}},NA=()=>{const e=A(),[{slippage:t,minSlippage:n,isMaxSlippageLoading:a}]=Q(),s=t==="auto",o=ol(),[i]=O(),{address:l,chainId:c}=b(),{entryFee:d}=Pn({address:l,chainId:c}),{minDepositUSD:p}=Va(l,c),m=el(),y=dl(),w=Wt(),f=p?ne({value:p,minimumFractionDigits:0}):"",g=Bt(s?n??0:t),x=Ei({tradingType:"deposit",slippage:t,minSlippage:n}),S=g===W.DEFAULT?e.depositSlippageWarning:e.highSlippageWarning,I=Ge({value:new T(o).shiftedBy(-18).toFixed(),decimals:4});return{projectedEarnings:m,themeType:g,slippageTooltipText:S,isMaxSlippageLoading:a,slippagePlaceholder:x,minReceive:`${I} ${i.symbol.toUpperCase()}`,entryFee:d,entryFeeTooltipText:e.entryFeeExplanation,minDeposit:f,lockTime:y,showMinimumReceivedAmount:w}},cs=({className:e})=>{const{value:t,isLoading:n}=Ui();return r.jsxs("div",{className:C("dtw-flex dtw-h-[var(--panel-icon-secondary-size)] dtw-justify-end dtw-gap-x-2",e),children:[n&&r.jsx(ke,{className:"dtw-stroke-[color:var(--panel-accent-from-color)] dtw-h-[var(--panel-icon-secondary-size)] dtw-w-[var(--panel-icon-secondary-size)]"}),r.jsx("p",{className:C("dtw-text-right dtw-text-[length:var(--panel-meta-font-size)] dtw-leading-[var(--panel-meta-line-height)] dtw-text-[color:var(--panel-secondary-content-color)] dtw-font-[var(--panel-meta-font-weight,var(--panel-font-weight-light))]",{"dtw-text-[color:var(--panel-loading-content-color)]":n}),children:t})]})},OA=()=>{const e=A(),{projectedEarnings:{yearlyEarnings:t,dailyEarnings:n,showEarnings:a},slippageTooltipText:s,slippagePlaceholder:o,isMaxSlippageLoading:i,minReceive:l,themeType:c,entryFee:d,entryFeeTooltipText:p,minDeposit:m,lockTime:y,showMinimumReceivedAmount:w}=NA(),f=a?[{tooltipText:e.projectedYearlyEarningsTooltip,label:e.yearlyEarnings,value:t,emphasised:!0},{tooltipText:e.projectedDailyEarningsTooltip,label:e.dailyEarnings,value:n,emphasised:!0}]:[],g=u.useMemo(()=>{const x=[{tooltipText:e.exchangeRate,label:e.rate,value:r.jsx(cs,{})},{tooltipText:s,label:e.maxSlippage,value:r.jsxs("div",{className:"dtw-flex dtw-gap-1",children:[i&&r.jsx(ke,{className:"dtw-stroke-[color:var(--panel-accent-from-color)] dtw-h-[var(--panel-icon-secondary-size)] sm:dtw-h-[var(--panel-icon-secondary-size-sm)] dtw-w-[var(--panel-icon-secondary-size)] sm:dtw-w-[var(--panel-icon-secondary-size-sm)]"}),r.jsxs("span",{className:C({"dtw-text-[color:var(--panel-loading-content-color)]":i}),children:[o,"%"]})]})}];return w&&x.push({tooltipText:e.minReceiveAmount,label:e.minReceived,value:l}),x.push({tooltipText:p,label:e.entryFee,value:d}),m&&x.push({tooltipText:e.minDepositUsd,label:e.minDeposit,value:m}),x.push({tooltipText:e.tokensLockTime.replace("{lockTime}",y),label:e.cooldown,value:y}),x},[s,e.maxSlippage,e.entryFee,e.minReceiveAmount,e.minReceived,e.minDepositUsd,e.minDeposit,e.exchangeRate,e.rate,e.tokensLockTime,e.cooldown,i,o,w,p,d,m,l,y]);return r.jsx(Ja,{staticItems:f,collapseItems:g,themeType:c})},PA=({children:e})=>{const{DepositMetaInfo:t,MaxSupplyReachedAlert:n}=P(),{isMaxSupplyCapReached:a,supplyCapInUsd:s}=DA();return r.jsxs(Y.Meta,{children:[a&&!!n&&r.jsx(n,{supplyCapInUsd:s}),r.jsx(OA,{}),t&&r.jsx(t,{}),r.jsx("div",{className:"dtw-sticky dtw-bottom-0 dtw-bg-[var(--panel-meta-action-panel-bg)]",children:e})]})},kA=()=>{lx(),cx()},RA=()=>{kA();const{isGeoBlocked:e,isSanctioned:t}=G(),{GeoBlockAlert:n,SanctionedAlert:a,CustomDepositMeta:s}=P(),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(Y.InputGroup,{children:r.jsx(_A,{})}),s&&r.jsx(s,{}),r.jsx(PA,{children:o?i.map(({Component:l,key:c})=>l&&r.jsx(l,{},c)):r.jsx(r.Fragment,{children:r.jsx(is,{children:r.jsx(mA,{})})})})]})},LA=()=>r.jsx(Y.Panel,{children:r.jsx(RA,{})}),MA=e=>Object.keys($).some(t=>t===e),jA=({children:e})=>{const t=ki();let n=null;return u.Children.forEach(e,a=>{if(u.isValidElement(a)){const s=a.props.type;MA(s)&&t[s]&&t[s].isOpen&&(n=a)}}),n},BA=({type:e})=>{const t=A(),{DepositTermsOfUse:n,ActionButton:a=q}=P(),{handleReject:s,handleConfirm:o,isPending:i}=de({type:e});return r.jsxs(Y.Overlay,{className:"dtw-justify-between dtw-gap-y-1 dtw-overflow-y-auto theme-scrollbar",children:[r.jsxs("div",{className:"dtw-flex dtw-gap-1 dtw-items-center dtw-text-warning",children:[r.jsx(se.ExclamationCircleIcon,{className:"dtw-h-5 dtw-w-5"}),r.jsx("p",{children:t.termsOfUse})]}),r.jsxs("div",{className:"dtw-flex dtw-flex-col dtw-gap-2",children:[r.jsxs("p",{className:"dtw-self-start dtw-text-sm",children:[t.termOfUseDepositListTitle,":"]}),r.jsxs("ul",{className:"dtw-list-inside dtw-list-disc dtw-flex dtw-flex-col dtw-gap-y-1 dtw-text-sm dtw-text-[color:var(--panel-secondary-content-color)]",children:[r.jsx("li",{children:t.termOfUseDepositAssetSlippage}),r.jsx("li",{children:t.termOfUseDepositBugs}),r.jsx("li",{children:t.termOfUseDepositDowntime}),r.jsx("li",{children:t.termOfUseDepositAuditRisk})]}),n&&r.jsx(n,{})]}),r.jsxs("div",{className:"dtw-flex dtw-flex-col dtw-gap-2 dtw-w-full",children:[r.jsx(a,{highlighted:!1,onClick:s,children:t.back}),r.jsx(a,{onClick:o,disabled:i,loading:i,children:r.jsx("span",{children:i?t.confirmInWallet:t.termOfUseDepositAccept})})]})]})},$A=({type:e})=>{const t=A(),{ActionButton:n=q}=P(),{handleReject:a,handleConfirm:s}=de({type:e});return r.jsxs(Y.Overlay,{className:"dtw-justify-between dtw-gap-y-1",children:[r.jsxs("div",{className:"dtw-flex dtw-gap-1 dtw-items-center dtw-text-warning",children:[r.jsx(se.ExclamationCircleIcon,{className:"dtw-h-5 dtw-w-5"}),r.jsx("p",{children:t.highSlippage})]}),r.jsx("p",{className:"dtw-text-sm",children:t.responsibleHighSlippage}),r.jsxs("p",{className:"dtw-text-sm dtw-self-start",children:[t.highSlippageListTitle,":"]}),r.jsxs("ul",{className:"dtw-list-inside dtw-list-disc dtw-flex dtw-flex-col dtw-gap-y-1 dtw-text-sm dtw-text-[color:var(--panel-secondary-content-color)] dtw-max-h-28 dtw-overflow-y-auto theme-scrollbar",children:[r.jsx("li",{children:t.termOfUseDepositAssetSlippage}),r.jsx("li",{children:t.termOfUseDepositBugs}),r.jsx("li",{children:t.termOfUseDepositDowntime}),r.jsx("li",{children:t.termOfUseDepositAuditRisk})]}),r.jsxs("div",{className:"dtw-flex dtw-flex-col dtw-gap-2 dtw-w-full",children:[r.jsx(n,{highlighted:!1,onClick:a,children:t.back}),r.jsx(n,{onClick:s,children:t.confirm})]})]})},FA=({token:e,onSelect:t})=>({onClick:()=>{t(e)}}),WA=({token:e,onSelect:t})=>{const{onClick:n}=FA({token:e,onSelect:t});return r.jsxs("div",{className:"dtw-space-y-3 dtw-rounded-xl dtw-py-3 dtw-pl-4 dtw-pr-3",onClick:n,children:[r.jsx($t,{symbol:e.symbol,iconSymbols:[e.symbol],size:"xl",CustomIcon:r.jsx(an.CircleStackIcon,{className:"dtw-h-10 dtw-w-10 group-hover:dtw-opacity-100 dtw-opacity-100 sm:dtw-opacity-50"}),symbolClasses:"dtw-text-sm dtw-font-medium group-hover:dtw-opacity-100 dtw-opacity-100 sm:dtw-opacity-80"}),r.jsx(fl,{className:"dtw-pt-2",showFraction:!1,showAllAsset:!0})]})},UA=({token:e,onSelect:t,isActive:n,onClose:a})=>{const s=he({symbol:e.symbol,address:e.address}),{defaultPrecision:o}=G();return{formattedBalance:new T.BigNumber(s).toFixed(o,T.BigNumber.ROUND_DOWN),onClick:()=>{if(n){a();return}t(e)}}},xl=({token:e,onSelect:t,onClose:n,isActive:a=!1})=>{const{onClick:s,formattedBalance:o}=UA({token:e,onSelect:t,onClose:n,isActive:a});return r.jsxs("div",{className:"dtw-flex dtw-items-center dtw-rounded-xl dtw-gap-x-2 dtw-py-3 dtw-pl-4 dtw-pr-3",onClick:s,children:[r.jsx($t,{symbol:e.symbol,iconSymbols:[e.symbol],size:"xl",symbolClasses:C("group-hover:dtw-opacity-100 dtw-text-sm dtw-font-medium",{"dtw-opacity-100 sm:dtw-opacity-80":!a,"dtw-opacity-100":a}),className:C("group-hover:dtw-opacity-100",{"dtw-opacity-100 sm:dtw-opacity-50":!a,"dtw-opacity-100":a})}),r.jsxs("div",{className:"dtw-flex dtw-flex-col dtw-self-end dtw-text-sm dtw-font-light dtw-text-[color:var(--panel-balance-content-color)]",children:[a&&r.jsx(an.CheckIcon,{className:"dtw-w-4 dtw-self-end dtw-text-themeGreen"}),r.jsxs("div",{children:[r.jsx("span",{className:"dtw-mr-1 dtw-text-xs",children:e.symbol}),o]})]})]})},zA=[],HA=()=>{const e=b(),[t]=we(),[n,a]=N(),[s,o]=O(),{data:i}=qa(e),l=jn(),c=i?zA: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])},GA=({searchQuery:e,type:t})=>{const[{isMultiAssetWithdrawalEnabled:n}]=Q(),{isCompleteWithdrawStep:a}=Re(),s=Rt(),[o]=we(),{handleReject:i}=de({type:t}),{tokens:l,updater:c,activeTokens:d}=HA(),p=u.useMemo(()=>e?l.filter(({symbol:y})=>y.toLowerCase().includes(e)):l,[e,l]),m=u.useCallback(({address:y,value:w,decimals:f,symbol:g})=>{c({address:y,value:w,decimals:f,symbol:g}),i()},[c,i]);return{tokenList:p,activeTokens:d,onSelect:m,onClose:i,showMultiAssetWithdrawalOption:n&&o==="withdraw"&&!s&&!a}},VA=({type:e,searchQuery:t})=>{const n=A(),{tokenList:a,activeTokens:s,onSelect:o,showMultiAssetWithdrawalOption:i,onClose:l}=GA({type:e,searchQuery:t});return r.jsxs(Y.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(xl,{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(WA,{token:sn,onSelect:o})})]})]})},qA=({children:e,chainId:t})=>{const{chainConfig:n}=G(),{Image:a=$i}=P(),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]})},ma=(e,t)=>e.address in t?{balanceInUsd:t[e.address]?.balanceInUsd??ne({value:0}),balanceInUsdNumber:t[e.address]?.balanceInUsdNumber??0}:{balanceInUsd:ne({value:0}),balanceInUsdNumber:0},YA=e=>(t,n)=>ma(n,e).balanceInUsdNumber-ma(t,e).balanceInUsdNumber,KA=({searchQuery:e,type:t})=>{const n=fi(),a=at(),s=b(),{handleReject:o}=de({type:t}),[i]=we(),l=N()[1],c=O()[1],d=Io()[1],p=u.useCallback(({address:y,value:w,decimals:f,symbol:g})=>{(i==="deposit"?c:l)({address:y,value:w,decimals:f,symbol:g}),d(y),o()},[i,l,c,o,d]);return{poolList:u.useMemo(()=>Array.from(new Set(a.map(({chainId:y})=>y))).map(y=>({chainId:y,configs:[...a.filter(w=>w.chainId===y&&!w.deprecated).map(w=>({...w,...ma(w,n),isActive:s.address===w.address})).filter(({symbol:w})=>e?w.toLowerCase().includes(e):!0).slice().sort(YA(n))]})),[e,n,a,s]),onClose:o,onSelect:p}},QA=({type:e,searchQuery:t})=>{const n=A(),{poolList:a,onClose:s,onSelect:o}=KA({type:e,searchQuery:t});return r.jsxs(Y.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(qA,{chainId:i,children:l.map(({isActive:c,symbol:d,address:p})=>r.jsx("div",{className:C("dtw-rounded-xl dtw-drop-shadow-md even:odd:dtw-bg-[color:var(--panel-popup-list-item-bg-even)] odd:dtw-bg-[color:var(--panel-popup-list-item-bg-odd)] dtw-group",{"dtw-cursor-pointer ":!c}),children:r.jsx(xl,{token:{symbol:d,address:p,value:"",decimals:k},onSelect:o,isActive:c,onClose:s})},`${p}_${d}`))},i))})]})},XA=({type:e})=>{const{address:t,symbol:n,chainId:a}=b(),[{link:s,sendTokens:o},i]=K(),{handleReject:l}=de({type:e}),c=o?.[0],d=yo(s),p=ue({address:t,chainId:a});return{onClose:u.useCallback(()=>{i({isOpen:!1}),l()},[i,l]),link:s,vaultSymbol:n,paidToken:c,txHash:d,vaultTokenPrice:ne({value:p})}},ZA=e=>{const t=A(),{link:n,onClose:a,vaultSymbol:s,paidToken:o,txHash:i,vaultTokenPrice:l}=XA(e),{ActionButton:c=q}=P(),d=Di();return r.jsxs(Y.Overlay,{className:"dtw-justify-between dtw-gap-y-4",noPadding:!0,children:[r.jsxs("div",{className:"dtw-flex dtw-flex-col dtw-items-center dtw-justify-center dtw-gap-3 dtw-pt-1 dtw-px-2 dtw-w-full",children:[r.jsxs("div",{className:"dtw-flex dtw-flex-col dtw-items-center dtw-text-[color:var(--panel-success-content-color)] dtw-mb-2",children:[r.jsx(Se.CheckIcon,{className:"dtw-h-16 dtw-w-16 lg:dtw-h-24 lg:dtw-w-24 dtw-shrink-0"}),"Success"]}),r.jsx(je,{}),r.jsxs("div",{className:"dtw-flex dtw-items-center dtw-justify-between dtw-gap-2 dtw-w-full",children:[r.jsx("p",{children:t.orderingLabel}),r.jsxs("div",{className:"dtw-flex dtw-items-center dtw-gap-2 dtw-text-[color:var(--panel-secondary-content-color)]",children:[r.jsx("span",{children:s}),r.jsx(pA,{})]})]}),r.jsx(je,{}),o&&r.jsxs(r.Fragment,{children:[r.jsxs("div",{className:"dtw-flex dtw-items-center dtw-justify-between dtw-gap-2 dtw-w-full",children:[r.jsx("p",{children:t.paidLabel}),r.jsxs("div",{className:"dtw-flex dtw-flex-col dtw-items-end dtw-justify-center dtw-gap-1 dtw-text-[color:var(--panel-secondary-content-color)]",children:[o.value?Ge({value:+o.value,decimals:4}):null," ",o.symbol]})]}),r.jsx(je,{})]}),r.jsxs("div",{className:"dtw-flex dtw-items-center dtw-justify-between dtw-gap-2 dtw-w-full",children:[r.jsx("p",{children:t.priceLabel}),r.jsx("p",{className:"dtw-text-[color:var(--panel-secondary-content-color)]",children:l})]}),n&&r.jsxs(r.Fragment,{children:[r.jsx(je,{}),r.jsxs("div",{className:"dtw-flex dtw-items-center dtw-justify-between dtw-gap-2 dtw-w-full",children:[r.jsx("p",{children:t.transactionLabel}),r.jsx(Ye,{link:n,children:i??t.explorer})]})]})]}),r.jsxs("div",{className:"dtw-flex dtw-flex-col dtw-gap-2 dtw-w-full",children:[d?r.jsx(yl,{children:t.openLimitOrderAfterBuySwitchLabel}):r.jsx(wl,{children:t.openNotificationsSettingsLabel}),r.jsx(c,{highlighted:!1,onClick:a,children:t.done})]})]})},JA=()=>{const e=A(),{LogoSpinner:t=ke}=P(),[{link:n}]=K();return r.jsxs("div",{className:"dtw-flex dtw-flex-col dtw-items-center dtw-justify-center dtw-gap-2 dtw-pt-1 dtw-px-4 dtw-w-full dtw-h-full md:dtw-w-1/2 md:dtw-h-1/2",children:[r.jsx(t,{className:"dtw-h-16 dtw-w-16 lg:dtw-h-24 lg:dtw-w-24 dtw-shrink-0"}),e.miningTx,n&&r.jsx(Ye,{link:n,className:"dtw-text-sm",iconClassName:"dtw-w-4 dtw-h-4",children:e.explorer})]})},eS=({onClose:e})=>{const t=A(),{ActionButton:n=q}=P(),[{link:a}]=K();return r.jsxs(r.Fragment,{children:[r.jsxs("div",{className:"dtw-flex dtw-flex-col dtw-items-center dtw-justify-center dtw-gap-2 dtw-pt-1 dtw-px-4 dtw-w-full dtw-h-full md:dtw-w-1/2 md:dtw-h-1/2",children:[r.jsxs("div",{className:"dtw-flex dtw-flex-col dtw-items-center dtw-gap-2 dtw-text-[color:var(--panel-success-content-color)]",children:[r.jsx(Se.CheckIcon,{className:"dtw-h-16 dtw-w-16 lg:dtw-h-24 lg:dtw-w-24 dtw-shrink-0"}),t.createLimitSellOrder]}),a&&r.jsx(Ye,{link:a,className:"dtw-text-sm",iconClassName:"dtw-w-4 dtw-h-4",children:t.explorer})]}),r.jsxs("div",{className:"dtw-flex dtw-flex-col dtw-gap-2 dtw-w-full",children:[r.jsx(wl,{children:t.openNotificationsSettingsLabel}),r.jsx(n,{highlighted:!1,onClick:e,children:t.done})]})]})},tS=({type:e})=>{const[{status:t},n]=K(),{handleReject:a}=de({type:e}),s=t==="Mining";return{onClose:u.useCallback(()=>{n({isOpen:!1}),a()},[a,n]),isProcessing:s}},nS=e=>{const{onClose:t,isProcessing:n}=tS(e);return r.jsx(Y.Overlay,{className:"dtw-justify-between dtw-gap-y-4",onClose:t,noPadding:!0,children:n?r.jsx(JA,{}):r.jsx(eS,{onClose:t})})},aS=({type:e})=>{const{statusLabel:t,status:n}=Ri(),[{link:a,action:s},o]=K(),i=n=="Success",{handleReject:l}=de({type:e}),c=s==="single_withdraw"&&i,d=i&&s==="deposit",p=i&&s&&Ia.includes(s);return{title:t??n,isSuccessTx:i,link:a,onClose:()=>{o({isOpen:!1}),l()},showNextStepTip:c,displaySuccessDepositOverlay:d,displaySuccessWithdrawalOverlay:p,displayLimitOrderTransactionOverlay:s==="create_limit_sell_order",displayWithdrawLimitOrderOverlay:s==="limit_order_withdraw"}},sS=({sendTokens:e})=>{const t=A(),[n]=e??[];return n?r.jsxs("div",{className:"dtw-flex dtw-items-center dtw-gap-1 dtw-flex-wrap dtw-overflow-hidden",children:[r.jsx("span",{children:t.approveSpending}),r.jsx(We,{size:"sm",symbols:[n.symbol]}),r.jsx("span",{children:n.symbol})]}):null},rS=({receiveTokens:e})=>{const t=A(),[n]=e??[];return n?r.jsxs("div",{className:"dtw-flex dtw-flex-wrap dtw-items-center dtw-gap-1",children:[t.swapAndClaimTo," ",r.jsxs("div",{className:"dtw-flex dtw-items-center dtw-gap-1",children:[r.jsx(We,{size:"sm",symbols:[n.symbol]})," ",n.symbol]})]}):null},oS=({sendTokens:e,receiveTokens:t,action:n})=>{const a=A(),[s]=e??[],[o]=t??[];return s?r.jsxs("div",{className:"dtw-flex dtw-flex-wrap dtw-items-center dtw-gap-x-1",children:[n==="deposit"?a.pay:n==="multi_withdraw"?a.sell:a.unrollAction,r.jsxs("div",{className:"dtw-flex dtw-items-center dtw-gap-1",children:[r.jsx(We,{size:"sm",symbols:[s.symbol]})," ",s.symbol]})," ","to receive",r.jsx("div",{className:"dtw-flex dtw-items-center dtw-gap-1",children:o?r.jsxs(r.Fragment,{children:[r.jsx(We,{size:"sm",symbols:[o.symbol]})," ",o.symbol]}):r.jsx(r.Fragment,{children:n==="multi_withdraw"?a.multiAssetFractions:a.swappableAssets})})]}):null},iS=()=>{const e=A(),[{action:t,receiveTokens:n,sendTokens:a}]=K();return t==="approve"?r.jsx(sS,{sendTokens:a}):t==="swap"?r.jsx(rS,{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(oS,{action:t,sendTokens:a,receiveTokens:n})},lS=({type:e})=>{const[,t]=K(),{handleReject:n}=de({type:e}),[{link:a,status:s}]=K(),o=s=="Success";return{onClose:u.useCallback(()=>{t({isOpen:!1}),n()},[n,t]),link:a,isSuccessTx:o}},cS=e=>{const t=A(),{ActionButton:n=q}=P(),{onClose:a,link:s,isSuccessTx:o}=lS(e);return o?r.jsxs(Y.Overlay,{className:"dtw-justify-between dtw-gap-y-4",onClose:a,noPadding:!0,children:[r.jsxs("div",{className:"dtw-flex dtw-flex-col dtw-items-center dtw-justify-center dtw-gap-3 dtw-pt-1 dtw-px-4 dtw-w-full dtw-h-full",children:[r.jsx(Se.CheckIcon,{className:"dtw-h-16 dtw-w-16 lg:dtw-h-24 lg:dtw-w-24 dtw-shrink-0 dtw-text-[color:var(--panel-success-content-color)]"}),r.jsx("div",{className:"dtw-text-center dtw-text-2xl dtw-font-semibold",children:t.withdrawalRequest}),r.jsx("div",{className:"dtw-text-center dtw-text-[color:var(--panel-secondary-content-color)]",children:t.expectToReceiveUsdcSoon}),s&&r.jsx(Ye,{link:s,className:"dtw-text-sm",iconClassName:"dtw-w-4 dtw-h-4",children:t.explorer})]}),r.jsx("div",{className:"dtw-flex dtw-flex-col dtw-gap-2 dtw-w-full",children:r.jsx(n,{highlighted:!1,onClick:a,children:t.done})})]}):null},dS=({type:e})=>{const{address:t,symbol:n}=b(),[{link:a,receiveTokens:s},o]=K(),{handleReject:i}=de({type:e}),l=s?.[0],c=yo(a);return{onClose:u.useCallback(()=>{o({isOpen:!1,status:"None"}),i()},[o,i]),link:a,vaultAddress:t,vaultSymbol:n,receivedToken:l,txHash:c}},pS=e=>{const t=A(),{link:n,onClose:a,vaultSymbol:s,receivedToken:o,txHash:i}=dS(e),{ActionButton:l=q}=P();return r.jsxs(Y.Overlay,{className:"dtw-justify-between dtw-gap-y-4",noPadding:!0,children:[r.jsxs("div",{className:"dtw-flex dtw-flex-col dtw-items-center dtw-justify-center dtw-gap-3 dtw-pt-1 dtw-px-2 dtw-w-full",children:[r.jsxs("div",{className:"dtw-flex dtw-flex-col dtw-items-center dtw-text-[color:var(--panel-success-content-color)] dtw-mb-2",children:[r.jsx(Se.CheckIcon,{className:"dtw-h-16 dtw-w-16 lg:dtw-h-24 lg:dtw-w-24 dtw-shrink-0"}),"Success"]}),r.jsx(je,{}),r.jsxs("div",{className:"dtw-flex dtw-items-center dtw-justify-between dtw-gap-2 dtw-w-full",children:[r.jsx("p",{children:t.soldLabel}),r.jsx("div",{className:"dtw-text-[color:var(--panel-secondary-content-color)]",children:s})]}),o&&r.jsxs(r.Fragment,{children:[r.jsx(je,{}),r.jsxs("div",{className:"dtw-flex dtw-items-center dtw-justify-between dtw-gap-2 dtw-w-full",children:[r.jsx("p",{children:t.receivedLabel}),r.jsx("div",{className:"dtw-text-[color:var(--panel-secondary-content-color)]",children:o.symbol})]})]}),n&&r.jsxs(r.Fragment,{children:[r.jsx(je,{}),r.jsxs("div",{className:"dtw-flex dtw-items-center dtw-justify-between dtw-gap-2 dtw-w-full",children:[r.jsx("p",{children:t.transactionLabel}),r.jsx(Ye,{link:n,children:i??t.explorer})]})]})]}),r.jsx(l,{highlighted:!1,onClick:a,children:t.done})]})},uS=({type:e})=>{const{link:t,title:n,onClose:a,isSuccessTx:s,showNextStepTip:o,displaySuccessDepositOverlay:i,displaySuccessWithdrawalOverlay:l,displayLimitOrderTransactionOverlay:c,displayWithdrawLimitOrderOverlay:d}=aS({type:e}),{LogoSpinner:p=ke}=P(),m=A();return c?r.jsx(nS,{type:e}):i?r.jsx(ZA,{type:e}):l?r.jsx(pS,{type:e}):d?r.jsx(cS,{type:e}):r.jsxs(Y.Notification,{onClose:a,children:[r.jsxs("div",{className:"dtw-flex dtw-items-center dtw-gap-1.5",children:[r.jsx("span",{className:"dtw-font-semibold dtw-drop-shadow-md",children:n}),s?r.jsx(se.CheckCircleIcon,{className:"dtw-h-6 dtw-w-6 dtw-text-[color:var(--panel-success-content-color)]"}):r.jsx(p,{className:"dtw-h-5 dtw-w-5 "})]}),r.jsx("div",{className:"dtw-font-light dtw-text-sm dtw-max-h-16 dtw-overflow-y-auto theme-scrollbar dtw-break-all",children:r.jsx(iS,{})}),t&&r.jsx(Ye,{link:t,className:"dtw-text-sm",iconClassName:"dtw-w-4 dtw-h-4",children:m.explorer}),o&&r.jsx("p",{className:"dtw-text-xs",children:m.proceedWithNextStep})]})},tr=!0,mS=()=>{const{isWrongNetwork:e}=ul(),t=Gi({isClaim:tr}),{disabled:n,label:a,handleTrade:s}=Ki({withdraw:t,isClaim:tr}),o=Bn("claim");return{disabled:n,label:a,handleTrade:s,isWrongNetwork:e,isLoading:o}},Al=({highlighted:e,className:t})=>{const{ActionButton:n=q}=P(),{handleTrade:a,disabled:s,label:o,isWrongNetwork:i,isLoading:l}=mS();return i?null:r.jsx(n,{onClick:a,disabled:s,highlighted:e,className:t,loading:l,children:o})},yS=({error:e,onCancel:t})=>{const n=A(),{ActionButton:a=q}=P();return r.jsxs(Y.Overlay,{className:"dtw-justify-between dtw-gap-y-4",children:[r.jsx(a,{highlighted:!1,onClick:t,className:"!dtw-p-1 !dtw-w-24 dtw-self-start",children:n.cancel}),r.jsxs("div",{className:"dtw-flex dtw-flex-col dtw-items-center dtw-justify-center dtw-gap-4 dtw-pt-4 dtw-px-4 dtw-w-full dtw-flex-1",children:[r.jsx(se.FaceFrownIcon,{className:"dtw-h-24 dtw-w-24 dtw-text-[color:var(--panel-error-overlay-icon-color)]"}),r.jsxs("div",{className:"dtw-flex dtw-flex-col dtw-items-center dtw-gap-2 dtw-text-center",children:[r.jsx("p",{className:"dtw-text-lg dtw-font-medium",children:e.title}),e.hint&&r.jsx("p",{className:"dtw-text-sm dtw-text-[color:var(--panel-secondary-content-color)]",children:e.hint})]})]}),r.jsx(Al,{})]})},wS=ve.filter(({type:e})=>e==="error").map(({name:e})=>e),hS=({type:e})=>{const{handleReject:t,meta:n}=de({type:e}),{isCompleteWithdrawStep:a}=Re(),s=Oe(),o=a&&!s;return{handleReject:t,error:po({errorMessage:n?.error,abiErrors:wS}),showCompleteWithdrawErrorOverlay:o}},gS=e=>{const{handleReject:t,error:n,showCompleteWithdrawErrorOverlay:a}=hS(e);return n?a?r.jsx(yS,{error:n,onCancel:t}):r.jsxs(Y.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},fS=["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)]"],TS=["!dtw-text-[color:var(--limit-order-action-accent-button-color,var(--limit-order-accent-content-color))]","dtw-bg-gradient-to-r","dtw-from-[var(--limit-order-action-accent-button-bg-from,var(--limit-order-accent-from-color))]","dtw-to-[var(--limit-order-action-accent-button-bg-to,var(--limit-order-accent-to-color))]","dtw-border-[color:var(--limit-order-action-accent-button-border-color)]","dtw-border-[length:var(--limit-order-action-accent-button-border-width)]","hover:enabled:dtw-from-[var(--limit-order-action-accent-button-hover-bg-from,var(--limit-order-accent-hover-from-color))]","hover:enabled:dtw-to-[var(--limit-order-action-accent-button-hover-bg-to,var(--limit-order-accent-hover-to-color))]"],Ut=({children:e,onClick:t,highlighted:n=!0,disabled:a=!1,className:s,type:o,loading:i=!1})=>r.jsxs("button",{className:C("dtw-rounded-[var(--limit-order-input-button-radius,var(--limit-order-radius))]","dtw-font-medium","dtw-border","dtw-transition-border","dtw-duration-500","dtw-ease-in-out","disabled:dtw-opacity-50","dtw-py-2","dtw-px-5","dtw-w-full",{[TS.join(" ")]:n,[fS.join(" ")]:!n,"dtw-flex dtw-items-center dtw-justify-center dtw-gap-1":i},s),onClick:t,disabled:a||i,type:o,children:[i&&r.jsx(ke,{className:"dtw-h-4 dtw-w-4 dtw-stroke-[var(--limit-order-accent-content-color)]"}),e]}),Sl={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."},Cl=u.createContext(Sl),El=({children:e,config:t})=>{const n=u.useMemo(()=>({...Sl,...t}),[t]);return r.jsx(Cl.Provider,{value:n,children:e})},ge=()=>{const e=u.useContext(Cl);if(!e)throw new Error("TranslationContext is used out of Provider");return e},bS=({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})]})},vS=100,xS=3,AS=({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>xS)return;const p=Number(d);!isNaN(p)&&p<=vS&&(s(d),t?.(d))}}},SS=e=>{const{disabled:t,placeholder:n,suffix:a="%",postfix:s}=e,{inputRef:o,autoFocus:i,value:l,onContainerClick:c,onInputChange:d}=AS(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,ya=4,nr=e=>{if(!e)return"";const[t="",n]=e.replace(/,/g,"").split("."),a=n&&n.length>ya?n.slice(0,ya):n,s=t.replace(/\B(?=(\d{3})+(?!\d))/g,",");return a!==void 0?`${s}.${a}`:s},ES=({inputValue:e="",onInputChange:t,autoFocus:n=!1})=>{const[a,s]=u.useState(nr(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<=ya&&/^\d*(\.\d*)?$/.test(d)&&(s(nr(d)),t(d))}}},ar=e=>{const{disabled:t,placeholder:n,percentage:a,suffix:s}=e,{inputRef:o,autoFocus:i,value:l,onContainerClick:c,onInputChange:d}=ES(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]})})},Kn=({title:e,subtitle:t,defaultEnabled:n,onDisable:a,children:s})=>{const[o,i]=u.useState(n),l=c=>{i(c),c||a()};return r.jsxs("div",{className:"dtw-px-3 dtw-py-2 dtw-flex dtw-flex-col dtw-gap-2 dtw-border dtw-border-[var(--limit-order-switch-panel-border-color)] dtw-rounded-[var(--limit-order-switch-panel-radius,var(--limit-order-radius))]",children:[r.jsxs("div",{className:"dtw-flex dtw-justify-between dtw-text-[length:var(--limit-order-input-label-font-size,var(--limit-order-font-size))] dtw-leading-[var(--limit-order-input-label-line-height,var(--limit-order-line-height))] dtw-font-[var(--limit-order-input-label-font-weight,var(--limit-order-font-weight-light))] dtw-gap-x-2",children:[r.jsxs("div",{className:"dtw-flex dtw-flex-col dtw-gap-0.5 dtw-text-[color:var(--limit-order-secondary-content-color)]",children:[r.jsx("span",{children:e}),r.jsx("span",{className:"dtw-text-[length:var(--limit-order-font-size-xs)]",children:t})]}),r.jsx(kn,{onChange:l,defaultEnabled:o})]}),o&&s]})},Il={upperLimitPrice:"",lowerLimitPrice:"",sellPercentage:"",termsAccepted:!1},IS=(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:Il};case"SET_PENDING_TRANSACTION":return{...e,pendingTransaction:t.payload};default:return e}};function _e(){}const _l=e=>({vaultAddress:e.vaultAddress,vaultChainId:e.vaultChainId,isModalOpen:e.isModalOpen??!1,form:{...Il,...e.form},pendingTransaction:null,pricingAsset:e.pricingAsset,minAmountInUsd:e.minAmountInUsd}),Dl=u.createContext(_l({vaultAddress:_,vaultChainId:0,pricingAsset:{address:_,symbol:""},minAmountInUsd:za,form:{lowerLimitPrice:"",upperLimitPrice:""}})),Nl=u.createContext({setIsModalOpen:_e,setUpperLimitPrice:_e,setLowerLimitPrice:_e,setTermsAccepted:_e,setSellPercentage:_e,reset:_e,setPendingTransaction:_e,onLog:_e}),Ol=({children:e,initialState:t,actions:n})=>{const[a,s]=u.useReducer(IS,_l(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(Nl.Provider,{value:y,children:r.jsx(Dl.Provider,{value:a,children:e})})},fe=()=>u.useContext(Dl),zt=()=>u.useContext(Nl),ds=()=>{const{account:e}=B(),{vaultAddress:t,vaultChainId:n,form:{sellPercentage:a}}=fe(),{data:s}=Oa({address:e,token:t,chainId:n});return u.useMemo(()=>{const o=a||ii;if(!s)return{raw:"0",formatted:"0",symbol:""};const i=new T(s.value).times(o).dividedBy(100).toFixed(0,T.ROUND_DOWN),l=Ge({value:new T(i).shiftedBy(-18).toFixed(),decimals:2});return{raw:i,formatted:l,symbol:s.symbol}},[s,a])},Pl=({userAddress:e,vaultAddress:t})=>{const n=D.encodePacked(["address","address"],[e,t]);return D.keccak256(n)},_S=({price:e,markPrice:t})=>new T(e).gt(t)?`+${Ot((+e/+t-1)*100,2)}`:"",DS=({price:e,markPrice:t})=>new T(e).lt(t)?`-${Ot((1-+e/+t)*100,2)}`:"",NS=({error:e,translationMap:t})=>e?e.title===$r?{...e,hint:t.invalidLimitOrderPriceError}:e:null,OS=()=>{const e=ge(),{form:{upperLimitPrice:t,lowerLimitPrice:n,sellPercentage:a,termsAccepted:s},pricingAsset:o,vaultChainId:i}=fe(),{setUpperLimitPrice:l,setLowerLimitPrice:c,setSellPercentage:d,setTermsAccepted:p}=zt(),m=ce({address:o.address,chainId:i,refetchInterval:ze}),y=Number(m)<bT?vT:xT,{formatted:w,symbol:f}=ds(),g=_S({price:t,markPrice:m}),x=DS({price:n,markPrice:m}),S=u.useCallback(()=>{l("")},[l]),I=u.useCallback(()=>{c("")},[c]),L=u.useCallback(()=>{d("")},[d]),M=`${o.symbol} ${e.price}`;return{upperLimitPrice:t,lowerLimitPrice:n,sellPercentage:a,setUpperLimitPrice:l,setLowerLimitPrice:c,setSellPercentage:d,onDisableUpperLimitPrice:S,onDisableLowerLimitPrice:I,onDisableSellPercentage:L,termsAccepted:s,setTermsAccepted:p,pricingAssetPrice:m==="0"?null:ne({value:m,maximumFractionDigits:y}),upperLimitPriceDifference:g,lowerLimitPriceDifference:x,pricingAssetSymbol:o.symbol,inputSuffix:M,coveredVaultAmount:w,vaultSymbol:f}},PS=["termsPoint1","termsPoint2","termsPoint3","termsPoint4","termsPoint5"],kS=({className:e})=>{const t=ge();return r.jsx("div",{className:C("dtw-w-full dtw-text-[length:var(--limit-order-font-size-xs)] dtw-max-h-[120px] dtw-overflow-y-auto theme-scrollbar dtw-text-[color:var(--limit-order-secondary-content-color)]",e),children:r.jsx("ol",{className:"dtw-list-decimal dtw-list-inside dtw-space-y-2",children:PS.map((n,a)=>r.jsxs("li",{className:"dtw-text-pretty",children:[a+1,". ",t[n]]},n))})})},kl=({className:e,checked:t,label:n,labelClassName:a,...s})=>r.jsxs(R.Field,{className:"dtw-flex dtw-items-center dtw-gap-2",children:[r.jsx(R.Checkbox,{...s,checked:t,className:C("dtw-group dtw-flex dtw-items-center dtw-justify-center dtw-shrink-0 dtw-size-[var(--panel-checkbox-size)] dtw-rounded-[var(--panel-checkbox-radius)] dtw-p-0.5 dtw-right-0 dtw-outline-0 dtw-cursor-pointer dtw-border",{"dtw-bg-[color:var(--panel-checkbox-bg-checked)] dtw-border-[color:var(--panel-checkbox-border-color-checked)]":t,"dtw-bg-[color:var(--panel-checkbox-bg)] dtw-border-[color:var(--panel-checkbox-border-color)]":!t},e),children:r.jsx(Se.CheckIcon,{className:"dtw-opacity-0 dtw-size-[var(--panel-checkbox-icon-size)] dtw-fill-[color:var(--panel-checkbox-color)] group-data-[checked]:dtw-opacity-100 dtw-shrink-0"})}),n&&r.jsx(R.Label,{className:C("dtw-select-none",a),children:n})]}),RS=()=>{const e=ge(),{upperLimitPrice:t,lowerLimitPrice:n,setUpperLimitPrice:a,setLowerLimitPrice:s,onDisableUpperLimitPrice:o,onDisableLowerLimitPrice:i,setTermsAccepted:l,termsAccepted:c,pricingAssetPrice:d,upperLimitPriceDifference:p,lowerLimitPriceDifference:m,pricingAssetSymbol:y,inputSuffix:w,sellPercentage:f,setSellPercentage:g,onDisableSellPercentage:x,coveredVaultAmount:S,vaultSymbol:I}=OS();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(bS,{symbol:y,price:d}),r.jsx(Kn,{title:e.upperLimitLabel,subtitle:e.upperLimitSubtitle,defaultEnabled:!0,onDisable:o,children:r.jsx(ar,{inputValue:t,onInputChange:a,percentage:p,symbol:y,suffix:w})}),r.jsx(Kn,{title:e.lowerLimitLabel,subtitle:e.lowerLimitSubtitle,defaultEnabled:!!n,onDisable:i,children:r.jsx(ar,{inputValue:n,onInputChange:s,percentage:m,symbol:y,suffix:w})}),r.jsx(Kn,{title:e.partialSellLabel,subtitle:e.partialSellSubtitle,defaultEnabled:!!f,onDisable:x,children:r.jsx(SS,{inputValue:f,onInputChange:g,suffix:"%",placeholder:ii,postfix:r.jsxs("div",{className:"dtw-flex dtw-flex-col dtw-items-end dtw-justify-center",children:[r.jsx("span",{className:"dtw-text-[color:var(--limit-order-primary-content-color)]",children:S}),r.jsx("span",{className:"dtw-text-[color:var(--limit-order-secondary-content-color)]",children:I})]})})})]}),r.jsx("div",{className:"dtw-mt-3 dtw-px-2 dtw-flex dtw-items-center dtw-gap-1.5",children:r.jsx(kl,{checked:c,onChange:L=>l(L),label:e.limitOrderTerms,labelClassName:"dtw-text-[length:var(--limit-order-font-size-xs)] dtw-cursor-pointer"})}),r.jsx(kS,{className:"dtw-px-2"})]})},LS=()=>{const{account:e=_}=B(),{vaultAddress:t,vaultChainId:n}=fe(),a=z("limitOrder",n),s=ds(),{data:o}=Tn({tokenAddress:t,ownerAddress:e,spenderAddress:a,chainId:n});return o?new T(s.raw).lte(o.toString()):!1},MS=()=>{const{vaultAddress:e,vaultChainId:t,pendingTransaction:n}=fe(),{setPendingTransaction:a}=zt(),[s,o]=u.useState(!1),i=z("limitOrder",t),{send:l}=xe({contractId:"erc20",dynamicContractAddress:e,functionName:"approve",onSettled(d){a(d?{hash:d,action:"approve"}:null),o(!1)}});return{approveLimitOrder:async()=>{o(!0),l(i,Ue)},isApprovePending:s||!!n}},jS=()=>{const e=LS(),{approveLimitOrder:t,isApprovePending:n}=MS(),{form:{termsAccepted:a}}=fe();return{isApproved:e,approveLimitOrder:t,isApprovePending:n,disabled:!a}},BS=({children:e})=>{const t=ge(),{isApproved:n,approveLimitOrder:a,isApprovePending:s,disabled:o}=jS();return n?e:r.jsx(Ut,{onClick:a,loading:s,disabled:o,children:t.approve})},Rl=e=>{const{setIsModalOpen:t,reset:n,setPendingTransaction:a,onTransactionSettled:s}=zt();return u.useCallback((...o)=>{const[i]=o;if(s?.(...o),!i)return a(null);a({hash:i,action:e}),t(!1),n()},[s,a,e,t,n])},$S=([e,t,n,a,s,o])=>te(s)?null:{takeProfitPrice:D.formatUnits(n,k),stopLossPrice:D.formatUnits(t,k),takeProfitPriceD18:n,stopLossPriceD18:t,amountD18:e,user:a,vault:s,pricingAsset:o},Ht=({chainId:e,userAddress:t,vaultAddress:n})=>E.useReadContract({address:z("limitOrder",e),abi:wn,chainId:e,functionName:Dn,args:[Pl({userAddress:t,vaultAddress:n})],query:{enabled:!te(t)&&!te(n),select:$S}}),FS=wn.filter(({type:e})=>e==="error").map(({name:e})=>e),WS="create",US=()=>{const e=ge(),{account:t=_}=B(),{vaultAddress:n,vaultChainId:a,form:{lowerLimitPrice:s,upperLimitPrice:o,termsAccepted:i},pricingAsset:l,pendingTransaction:c,minAmountInUsd:d}=fe(),p=ds(),{data:m}=Ht({userAddress:t,vaultAddress:n,chainId:a}),y=ue({address:n,chainId:a}),[w,f]=u.useState(null),g=Rl(WS),x=!!m,{send:S}=xe({onSettled:g,contractId:"limitOrder",functionName:x?"modifyLimitOrder":"createLimitOrder"}),L=new T.BigNumber(p.formatted).multipliedBy(y??"0").gte(d),M=!i||!L,ee=!!c;return{modifyLimitOrder:async()=>{const Xe=BigInt(s?rn(s,k):0),Gt=o?BigInt(rn(o,k)):Ue,Vt=[p.raw,Xe,Gt,t,n,l.address];try{await S(Vt),f(null)}catch(ht){ht instanceof ut&&f(ht.message)}},disabled:M,error:NS({error:po({errorMessage:w,abiErrors:FS})??null,translationMap:e}),isPending:ee,isAmountSufficient:L,minAmount:ne({value:d.toString(),maximumFractionDigits:0,minimumFractionDigits:0}),isModifyTransaction:x}},zS=({disabled:e})=>{const t=ge(),{modifyLimitOrder:n,disabled:a,error:s,isPending:o,minAmount:i,isAmountSufficient:l,isModifyTransaction:c}=US();return r.jsxs("div",{children:[s&&r.jsxs("div",{className:"dtw-mb-2 dtw-flex dtw-flex-col dtw-gap-1 dtw-text-error",children:[r.jsx("span",{className:"dtw-text-sm",children:s.title}),s.hint&&r.jsx("span",{className:"dtw-text-xs",children:s.hint})]}),!l&&r.jsx("div",{className:"dtw-mb-1 dtw-text-warning dtw-text-sm",children:t.minimumVaultBalanceRequired.replace("{amount}",i)}),r.jsx(Ut,{onClick:n,disabled:e||a,loading:o,children:c?t.modify:t.create})]})},HS="remove",GS=()=>{const{account:e=_}=B(),{vaultAddress:t,vaultChainId:n,pendingTransaction:a}=fe(),{data:s}=Ht({userAddress:e,vaultAddress:t,chainId:n}),o=Rl(HS),{send:i}=xe({onSettled:o,contractId:"limitOrder",functionName:"deleteLimitOrder"}),l=async()=>i(t),c=!!a,d=!!s?.amountD18&&!new T(s.amountD18.toString()).isZero();return{deleteLimitOrder:l,isPending:c,displayButton:d}},VS=()=>{const e=ge(),{deleteLimitOrder:t,isPending:n,displayButton:a}=GS();return a?r.jsx(Ut,{highlighted:!1,className:"!dtw-py-1",onClick:t,loading:n,children:e.delete}):null},qS=()=>{const{chainId:e,switchNetwork:t}=Ce(),{vaultChainId:n}=fe();return{isWrongNetwork:e!==n,handleNetworkSwitch:()=>{t?.({chainId:n})}}},YS=({children:e})=>{const t=ge(),{isWrongNetwork:n,handleNetworkSwitch:a}=qS();return n?r.jsx(Ut,{onClick:a,children:t.switchNetwork}):e},sr=e=>{const t=e?.trim();return t?!isNaN(Number(t)):!1},KS=()=>{const{form:{lowerLimitPrice:e,upperLimitPrice:t}}=fe(),n=sr(e)&&Number(e)!==0,a=sr(t);return{limitOrderButtonDisabled:!n&&!a}},Ll=({onClose:e,hideDeleteButton:t})=>{const n=ge(),{limitOrderButtonDisabled:a}=KS();return r.jsxs("div",{className:"dtw-flex dtw-flex-col dtw-gap-2",children:[r.jsx(RS,{}),r.jsxs(YS,{children:[r.jsx(BS,{children:r.jsx(zS,{disabled:a})}),!t&&r.jsx(VS,{})]}),!!e&&r.jsx(Ut,{highlighted:!1,onClick:e,children:n.cancel})]})},Ml=({vaultAddress:e,vaultChainId:t})=>{const{account:n=_}=B(),{isFetched:a,data:s}=Ht({vaultAddress:e,chainId:t,userAddress:n}),o=s&&s.takeProfitPriceD18!==Ue?s.takeProfitPrice:"",i=s&&s.stopLossPriceD18!==BigInt(0)?s.stopLossPrice:"";return{isFetched:a,upperLimitPrice:o,lowerLimitPrice:i}},QS=[Dn,Ua,"allowance"],jl=()=>{const e=tt.useQueryClient();return u.useCallback(()=>{e.invalidateQueries({predicate:({queryKey:t})=>{const n=t[1]?.functionName;return t[0]==="readContract"&&QS.some(a=>a===n)}})},[e])},Bl=()=>{const{pendingTransaction:e,vaultChainId:t,vaultAddress:n}=fe(),{setPendingTransaction:a,onTransactionSuccess:s,onTransactionError:o,onLog:i}=zt(),l=jl(),{data:c,error:d}=E.useWaitForTransactionReceipt({hash:e?.hash??void 0,chainId:t,pollingInterval:ze});u.useEffect(()=>{c&&(e?.action==="create"&&i?.(X.CREATE_LIMIT_SELL_ORDER,{[Te.ADDRESS.NAME]:n,[Te.CHAIN_ID.NAME]:t}),l(),a(null),s?.(c.transactionHash))},[c,l,s,i,t,a,e?.action,n]),u.useEffect(()=>{d&&e&&(o?.(e.hash),a(null))},[d,o,e,a])},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"}},$l=({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}),XS=({themeConfig:e})=>(Bl(),r.jsx($l,{config:e,children:r.jsx(Ll,{hideDeleteButton:!0})})),ZS=({vaultChainId:e,vaultAddress:t,pricingAsset:n,translation:a,minAmountInUsd:s=za,actions:o,themeConfig:i})=>{const{isFetched:l,upperLimitPrice:c,lowerLimitPrice:d}=Ml({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(El,{config:a,children:r.jsx(Ol,{initialState:p,actions:o,children:r.jsx(XS,{themeConfig:i})})}):null},JS=({type:e})=>{const{minLimitOrderValue:t}=G(),{address:n,chainId:a,pricingAsset:s,symbol:o}=b(),{handleReject:i}=de({type:e}),l=K()[1],c=re()[1],d=Kb(),p=u.useMemo(()=>({onTransactionSettled:y=>{y&&(i(),c({type:"add",txHash:y,action:"create_limit_sell_order",chainId:a,symbol:o}),l({isOpen:!0,action:"create_limit_sell_order",status:"Mining",link:y?Rn(y,"transaction",a):void 0,sendTokens:null,receiveTokens:null}))}}),[a,i,o,c,l]),m=u.useCallback(()=>{l({isOpen:!1}),d()},[d,l]);return{handleReject:i,address:n,chainId:a,pricingAsset:s,minLimitOrderValue:t,actions:p,closeAllOverlays:m}},eC=e=>{const{limitOrderThemeConfig:t}=G(),{handleReject:n,chainId:a,address:s,pricingAsset:o,minLimitOrderValue:i,actions:l,closeAllOverlays:c}=JS(e);return o?r.jsx(Y.Overlay,{onClose:c,onBack:n,className:"!dtw-px-2",noPadding:!0,children:r.jsx("div",{className:"dtw-mt-10 dtw-px-2 dtw-overflow-y-auto theme-scrollbar",children:r.jsx(ZS,{vaultAddress:s,vaultChainId:a,pricingAsset:o,minAmountInUsd:i,actions:l,themeConfig:t})})}):null},Fl=()=>{const[e]=N();return new T(e.value||"0").shiftedBy(e.decimals)},tC=()=>{const{account:e=_}=B(),{address:t,chainId:n}=b(),a=z("limitOrder",n),s=Fl(),{data:o}=Tn({tokenAddress:t,ownerAddress:e,spenderAddress:a,chainId:n});return o?s.lte(o.toString()):!1},rr="approve",nC=()=>{const{address:e,chainId:t,symbol:n}=b(),[a,s]=u.useState(!1),o=z("limitOrder",t),i=re()[1],l=Ke(rr),{send:c}=xe({contractId:"erc20",dynamicContractAddress:e,functionName:"approve",onSettled(...p){s(!1),l(...p)}});return{approveLimitOrder:async()=>{i({type:"add",action:rr,symbol:n,chainId:t}),s(!0),c(o,Ue)},isApprovePending:a}},aC=()=>{const e=tC(),{approveLimitOrder:t,isApprovePending:n}=nC();return{isApproved:e,approveLimitOrder:t,isApprovePending:n}},sC=({children:e})=>{const t=A(),{ActionButton:n=q}=P(),{isApproved:a,approveLimitOrder:s,isApprovePending:o}=aC();return a?e:r.jsx(n,{onClick:s,loading:o,children:t.approve})},or="limit_order_withdraw",rC=e=>{const{account:t=_}=B(),{address:n,chainId:a,pricingAsset:s,symbol:o}=b(),i=re()[1],l=Ke(or),c=u.useCallback((...w)=>{l(...w),e()},[l,e]),d=Fl(),{data:p}=Ht({userAddress:t,vaultAddress:n,chainId:a}),m=!!p,{send:y}=xe({onSettled:c,contractId:"limitOrder",functionName:m?"modifyLimitOrder":"createLimitOrder"});return u.useCallback(async()=>{i({type:"add",action:or,symbol:o,chainId:a});const w=BigInt(0),f=Ue,g=[BigInt(d.toFixed()),w,f,t,n,s?.address];return y(g)},[i,o,a,d,t,n,s?.address,y])},oC=({limitOrderHandler:e,action:t})=>{const n=A(),a=ie(),{account:s}=B(),o=b(),[i]=N(),l=K()[1],c=re()[1],d=fn(),p=t==="delete_limit_order_withdraw",m=async()=>{const y=o.chainId;l({isOpen:!0,status:"Wallet",action:t,link:"",sendTokens:[i],receiveTokens:null,meta:{}});try{await e()}catch(w){w instanceof ut&&(a({type:"MERGE_OVERLAY",payload:{type:$.ERROR_NOTIFICATION,isOpen:!0,meta:{error:w.message}}}),d?.(w,o.address,y,s)),l({isOpen:!1,status:"None",link:"",sendTokens:null,receiveTokens:null,meta:{}}),c({type:"remove",status:"fail"})}};return{label:p?n.delete:n.withdrawAction,handleLimitOrderWithdraw:m}},iC="limit_order_withdraw",lC=()=>{const e=ie(),t=Bn("limit_order_withdraw"),n=u.useCallback(()=>e({type:"MERGE_OVERLAY",payload:{type:$.LIMIT_ORDER_WITHDRAW,isOpen:!1}}),[e]),a=rC(n),{handleLimitOrderWithdraw:s,label:o}=oC({limitOrderHandler:a,action:iC});return{label:o,handleLimitOrderWithdraw:s,isLoading:t}},cC=({disabled:e})=>{const{ActionButton:t=q}=P(),{label:n,handleLimitOrderWithdraw:a,isLoading:s}=lC();return r.jsx(t,{onClick:a,disabled:e,loading:s,children:n})},dC=["termOfUseWithdrawPoint1","termOfUseWithdrawPoint2"],pC=({className:e})=>{const t=A();return r.jsxs(r.Fragment,{children:[r.jsx("p",{children:t.limitOrderWithdrawDescription}),r.jsx("div",{className:C("dtw-w-full dtw-text-sm dtw-overflow-y-auto theme-scrollbar dtw-text-[color:var(--panel-secondary-content-color)]",e),children:r.jsx("ol",{className:"dtw-list-decimal dtw-list-inside dtw-space-y-2",children:dC.map((n,a)=>r.jsxs("li",{className:"dtw-text-pretty",children:[a+1,". ",t[n]]},n))})})]})},uC=({type:e})=>{const t=A(),{ActionButton:n=q}=P(),{handleReject:a}=de({type:e}),[s,o]=u.useState(!1);return r.jsx(Y.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(pC,{}),r.jsx("div",{className:"dtw-mt-1 dtw-flex dtw-items-center dtw-gap-1.5",children:r.jsx(kl,{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(sC,{children:r.jsx(cC,{disabled:!s})})]})})},mC=({isActive:e,onError:t})=>{const n=A(),a=Za(e),{canSpend:s,approve:o,isCanSpendFetching:i}=ns({onErrorCallback:t}),l=u.useRef(!1);return u.useEffect(()=>{if(!i){if(s){l.current=!0;return}l.current||(l.current=!0,o())}},[i,s,o]),{label:n.approveTokensForWithdrawal,description:a}},Nt=({stepNumber:e,isActive:t,isFinished:n,label:a,description:s})=>r.jsxs("div",{className:C("dtw-flex dtw-items-center dtw-gap-3 dtw-p-2 dtw-rounded-xl",{"dtw-bg-[color:var(--panel-popup-list-item-bg-even)]":t}),children:[r.jsxs("div",{className:C("dtw-relative dtw-flex dtw-items-center dtw-justify-center dtw-w-7 dtw-h-7 dtw-text-sm",{"dtw-text-[color:var(--panel-secondary-content-color)]":!t}),children:[t&&r.jsx("div",{className:"dtw-absolute dtw-inset-0 dtw-rounded-full dtw-border-2 dtw-border-transparent dtw-border-t-[var(--panel-content-color)] dtw-animate-spin"}),r.jsx("div",{className:C("dtw-flex dtw-items-center dtw-justify-center dtw-w-full dtw-h-full dtw-rounded-full dtw-border dtw-bg-[color:var(--panel-popup-list-item-bg-even)]",{"dtw-border-transparent":t||!n,"dtw-border-[var(--panel-secondary-content-color)]":n&&!t}),children:e})]}),r.jsxs("div",{className:"dtw-flex dtw-flex-col",children:[r.jsx("span",{className:C({"dtw-text-[color:var(--panel-secondary-content-color)]":!t}),children:a}),s&&r.jsx("span",{className:"dtw-text-xs dtw-text-[color:var(--panel-secondary-content-color)]",children:s})]})]}),yC=({isActive:e,onError:t,stepNumber:n,isFinished:a})=>{const{label:s,description:o}=mC({isActive:e,onError:t});return r.jsx(Nt,{stepNumber:n,isFinished:a,isActive:e,label:s,description:o})},nn=0,At=1,St=2,wC=1e3,hC=(e,t,n)=>{u.useEffect(()=>{t==="Success"&&n&&Ia.includes(n)&&e()},[t,n,e])},gC=e=>{const[t,n]=u.useState(!1);return u.useEffect(()=>{if(!e){n(!1);return}const a=setTimeout(()=>{n(!0)},wC);return()=>clearTimeout(a)},[e]),t},fC=({type:e})=>{const{handleReject:t}=de({type:e}),[n]=No(),[{status:a,action:s}]=K(),{isCompleteWithdrawStep:o}=Re(),{isUnrollAndClaimTransaction:i,isFetching:l,isFetched:c}=rs(),{canSpend:d}=ns({onErrorCallback:t}),p=gC(d);return hC(t,a,s),{isUnrollAndClaimTransaction:i,activeStepIndex:o?St:d?At:nn,canSpend:d,isCompleteWithdrawStep:o,handleReject:t,stepper:n,isUnrollAndClaimCheckFetching:l,isTransactionTypeReady:c||p}},TC=({isActive:e,onError:t})=>{const n=A(),a=Za(e),s=Gi({onErrorCallback:t}),{handleTrade:o}=Ki({withdraw:s,onErrorCallback:t});return Ov({handleTrade:o,onError:t}),{label:n.swapToCompleteSell,description:a}},bC=({stepNumber:e,isActive:t,isFinished:n,onError:a})=>{const{label:s,description:o}=TC({isActive:t,onError:a});return r.jsx(Nt,{isFinished:n,stepNumber:e,isActive:t,label:s,description:o})},vC=({isActive:e,canSpend:t,isCompleteWithdrawStep:n,isPending:a,onError:s})=>{const o=Za(e),{withdraw:i}=Mv({onErrorCallback:s}),{handleTrade:l}=Zi({trade:i,onErrorCallback:s}),c=u.useRef(!1);return u.useEffect(()=>{a||t&&!n&&!c.current&&(c.current=!0,l())},[a,t,n,l]),{description:o}},xC=({stepNumber:e,isActive:t,isFinished:n,isPending:a,onError:s,isCompleteWithdrawStep:o,canSpend:i,label:l})=>{const{description:c}=vC({isActive:t,canSpend:i,isCompleteWithdrawStep:o,isPending:a,onError:s});return r.jsx(Nt,{isFinished:n,stepNumber:e,isActive:t,label:l,description:c})},AC=({canSpend:e,isTransactionTypeReady:t,isUnrollAndClaimTransaction:n,isCompleteWithdrawStep:a,isUnrollAndClaimCheckFetching:s,activeStepIndex:o,onError:i})=>{const l=A(),c=Qe();return!e||!t?r.jsxs(r.Fragment,{children:[r.jsx(Nt,{isFinished:!1,stepNumber:At+1,isActive:!1,label:l.unrollAssetsToPrepare}),r.jsx(Nt,{isFinished:!1,stepNumber:St+1,isActive:!1,label:l.swapToCompleteSell})]}):r.jsxs(r.Fragment,{children:[r.jsx(xC,{stepNumber:At+1,isFinished:o>At,isActive:o===At,canSpend:e,isCompleteWithdrawStep:n?!1:a,isPending:s,onError:i,label:n||c?l.unrollAndClaimAssets:l.unrollAssetsToPrepare}),!n&&!c&&r.jsx(bC,{stepNumber:St+1,isFinished:o>St,isActive:o===St,onError:i})]})},SC=e=>{const t=A(),{ActionButton:n=q}=P(),{isUnrollAndClaimTransaction:a,activeStepIndex:s,canSpend:o,isCompleteWithdrawStep:i,handleReject:l,stepper:c,isUnrollAndClaimCheckFetching:d,isTransactionTypeReady:p}=fC(e);return r.jsxs(Y.Overlay,{centered:!1,className:"dtw-gap-4",children:[r.jsx(n,{highlighted:!1,onClick:l,className:"!dtw-p-1 !dtw-w-24 dtw-self-start",children:t.cancel}),r.jsxs("div",{className:"dtw-flex dtw-flex-col dtw-items-center dtw-gap-2",children:[r.jsx(We,{symbols:[c?.sendTokenSymbol??""],size:"2xl"}),r.jsxs("div",{className:"dtw-text-center",children:[r.jsxs("p",{className:"dtw-text-lg",children:[t.sell," ",c?.sendTokenAmount," ",c?.sendTokenSymbol]}),c?.receiveTokenSymbol&&r.jsxs("p",{className:"dtw-text-sm dtw-text-[color:var(--panel-secondary-content-color)]",children:["for ",c.receiveTokenAmount," ",c.receiveTokenSymbol]})]})]}),r.jsxs("div",{className:"dtw-mt-4 dtw-flex dtw-flex-col dtw-gap-2",children:[r.jsx(yC,{isFinished:s>nn,isActive:s===nn,onError:l,stepNumber:nn+1}),r.jsx(AC,{canSpend:o,isTransactionTypeReady:p,isUnrollAndClaimTransaction:a,isCompleteWithdrawStep:i,isUnrollAndClaimCheckFetching:d,activeStepIndex:s,onError:l})]})]})},CC=()=>{const e=On(),t=A();return r.jsxs(r.Fragment,{children:[r.jsx($e,{label:t.slippageTolerance,tooltipText:t.withdrawSlippageWarning,children:r.jsx(Fi,{})}),r.jsx($e,{label:t.tokenAllowance,tooltipText:t.toggleTokenApprovalAmount,children:r.jsx(al,{})}),e&&r.jsx($e,{label:t.batchTransactionsLabel,tooltipText:t.batchTransactionsTooltip??"",children:r.jsx(sl,{})}),r.jsx(rl,{})]})},EC=({assets:e=[]})=>{const{stablePrecision:t}=G(),{firstPart:n,secondPart:a}=oo(e,Tr),s=u.useCallback(({symbol:o,address:i,rawBalance:l,decimals:c,price:d,balance:p})=>r.jsxs("tr",{children:[r.jsxs("td",{children:[r.jsx($t,{symbol:o,iconSymbols:[o],symbolClasses:"dtw-text-xs dtw-font-bold",size:"sm"}),r.jsx("p",{className:"dtw-truncate dtw-text-xs dtw-text-[color:var(--panel-secondary-content-color)]",children:ne({value:p*d})})]}),r.jsx("td",{className:"dtw-text-right",children:r.jsx("p",{className:"dtw-truncate",children:Ge({value:D.formatUnits(l,c),decimals:t})})})]},i),[t]);return r.jsxs("div",{className:"dtw-text-sm dtw-font-light ",children:[r.jsx(mn,{children:n.map(s)}),a.length>0&&r.jsx(gl,{children:r.jsx(mn,{children:a.map(s)})})]})},IC=()=>{const{chainId:e}=b(),{stablePrecision:t}=G(),{data:n=[]}=me(),a=Vi(),{data:s=_}=Iv();return{assets:n,usdAmount:ne({value:a,maximumFractionDigits:t}),withdrawalVaultLink:Rn(s,"address",e)}},_C=()=>{const e=A(),{assets:t,usdAmount:n,withdrawalVaultLink:a}=IC();return r.jsxs(r.Fragment,{children:[r.jsxs("div",{className:"dtw-text-sm dtw-flex dtw-items-center dtw-gap-1",children:[r.jsx("span",{className:"dtw-text-[color:var(--panel-secondary-content-color)]",children:e.total}),r.jsx(Ye,{link:a??"",iconClassName:"dtw-h-4 dtw-w-4 dtw-text-[color:var(--panel-content-color)]",children:r.jsx("span",{className:"dtw-text-[color:var(--panel-content-color)]",children:n})})]}),r.jsx("div",{className:"dtw-flex dtw-flex-col dtw-gap-[var(--panel-input-group-gap,var(--panel-gap))] dtw-rounded-[var(--panel-input-radius,var(--panel-radius))] dtw-border dtw-bg-[var(--panel-input-bg,var(--panel-neutral-color))] dtw-py-[var(--panel-input-py)] dtw-px-[var(--panel-input-px)] dtw-shadow-md dtw-border-[var(--panel-input-border-color)]",children:r.jsx(EC,{assets:t})})]})},DC=()=>{const e=ie(),{requiresHighSlippageConfirm:t,confirmHighSlippage:n,slippageToBeUsed:a}=Qa();return{requiresHighSlippageConfirm:t,slippageToBeUsed:a,handleHighSlippageClick:()=>{e({type:"MERGE_OVERLAY",payload:{type:$.HIGH_SLIPPAGE,isOpen:!0,onConfirm:async()=>n()}})}}},NC=({children:e})=>{const{ActionButton:t=q}=P(),n=A(),{requiresHighSlippageConfirm:a,slippageToBeUsed:s,handleHighSlippageClick:o}=DC();return a?r.jsx(t,{onClick:o,children:n.confirmMaxSlippage.replace("{slippagePercentage}",`${Math.abs(s)}`)}):e},OC=()=>{const{chainId:e}=b(),[t]=O(),n=ce({address:t.address,chainId:e}),a=Qi(),s=Bt(Math.min(0,a));return{receiveToken:{...t,price:n},swapDiff:a,themeType:s}},PC=()=>{const e=A(),{receiveToken:t,swapDiff:n,themeType:a}=OC();return r.jsx(Dt,{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})},kC=()=>{const e=A(),{stablePrecision:t}=G(),[n]=O(),a=Ft(),{minExpectedReceiveAmount:s}=as(),o=Bt(a),i=o===W.DEFAULT?e.withdrawSlippageWarning:e.highSlippageWarning;return{themeType:o,slippageTooltipText:i,slippagePlaceholder:a.toString(),minReceive:`${Ge({value:D.formatUnits(BigInt(s),n.decimals),decimals:t})} ${n.symbol}`}},RC=()=>{const e=A(),{slippageTooltipText:t,slippagePlaceholder:n,minReceive:a}=kC(),s=u.useMemo(()=>[{tooltipText:e.exchangeRate,label:e.rate,value:r.jsx(cs,{})},{tooltipText:t,label:e.maxSlippage,value:r.jsxs("span",{children:[n,"%"]})},{tooltipText:e.minReceiveAmount,label:e.minReceived,value:a}],[a,n,t,e.maxSlippage,e.minReceiveAmount,e.minReceived,e.exchangeRate,e.rate]);return r.jsx(Ja,{collapseItems:s})},LC=({children:e})=>r.jsxs(Y.Meta,{children:[r.jsx(RC,{}),r.jsx("div",{className:"dtw-sticky dtw-bottom-0 dtw-bg-[var(--panel-meta-action-panel-bg)]",children:e})]}),MC=()=>(Nv(),r.jsxs(r.Fragment,{children:[r.jsxs(Y.InputGroup,{children:[r.jsx(_C,{}),r.jsx(PC,{})]}),r.jsx(LC,{children:r.jsx(is,{children:r.jsxs("div",{className:"tw-flex tw-flex-col tw-gap-2",children:[r.jsx(NC,{children:r.jsx(hl,{})}),r.jsx(Al,{highlighted:!1})]})})})]})),jC=()=>{const{chainId:e,address:t}=b(),{exitFeeNumber:n}=Pn({address:t,chainId:e}),[a]=N(),[s,o]=O(),i=ue({address:t,chainId:e}),l=ce({address:s.address,chainId:e});u.useEffect(()=>{if(!a.value||a.value==="0"){o({value:""});return}if(!l||l==="0"){o({value:""});return}const d=new T(a.value).times(i).times(1-n/100).dividedBy(l).toFixed(s.decimals);o({value:uo(d)?d:""})},[n,s.decimals,l,a.value,i,o])},BC=()=>{const e=A(),t=ie(),n=()=>t({type:"MERGE_OVERLAY",payload:{type:$.LIMIT_ORDER_WITHDRAW,isOpen:!0}});return{label:e.withdrawAction,openLimitOrderWithdrawOverlay:n}},$C=()=>{const{ActionButton:e=q}=P(),{label:t,openLimitOrderWithdrawOverlay:n}=BC();return r.jsx(e,{onClick:n,children:t})},Qn=[{isLeveragedAsset:ho,getWithdrawAssetByLeverageAddress:go,getWithdrawAssetByVaultAddress:()=>{},isLentAndBorrowedAsset:aa},{isLeveragedAsset:wd,getWithdrawAssetByLeverageAddress:hd,getWithdrawAssetByVaultAddress:gd,isLentAndBorrowedAsset:aa}],Xn={requiresLeveragedCollateralLiquidity:!1,leveragedCollateralValueFormatted:"$0"},Zn=e=>T(e.amount).shiftedBy(-e.precision).times(e.rate).shiftedBy(-18).toNumber(),Wl=()=>{const e=b(),t=mt(e),[n]=N(),a=ue(e),s=t.find(({tokenAddress:m,amount:y})=>Qn.some(w=>w.isLeveragedAsset(m)&&y!=="0"));if(!s)return Xn;const o=Qn.find(m=>m.isLeveragedAsset(s.tokenAddress));if(!o)return Xn;const i=o.getWithdrawAssetByVaultAddress(e.address)?.address??o.getWithdrawAssetByLeverageAddress(s.tokenAddress).address,l=t.find(({tokenAddress:m})=>H(i,m));if(!l)return Xn;const c=Number(n.value||"0")*Number(a),d=Zn(l);if(t.find(({tokenAddress:m,amount:y})=>Qn.some(w=>w.isLentAndBorrowedAsset({address:m,chainId:e.chainId})&&y!=="0"))){const m=Zn(s),y=t.reduce((S,I)=>S+Zn(I),0),w=d/y,f=m/y,x=w/(w+f)*y;return{requiresLeveragedCollateralLiquidity:c>x,leveragedCollateralValueFormatted:ne({value:x})}}return{requiresLeveragedCollateralLiquidity:c>d,leveragedCollateralValueFormatted:ne({value:d})}},Ul=()=>{const{chainId:e,pricingAsset:t,onDemandWithdrawalEnabled:n}=b(),{requiresLeveragedCollateralLiquidity:a}=Wl(),s=Rt();return a&&!!t&&!!n&&(e===h.arbitrum.id||!s)},FC=()=>{const{address:e,chainId:t,maintenance:n,maintenanceWithdrawals:a,symbol:s}=b(),[o]=N(),i=ie(),l=Ul(),c=kt(),{data:d=0}=_b({address:e,chainId:t}),p=d>0,m=Et.formatDuration(Et.intervalToDuration({start:0,end:d})),{requiresHighSlippageConfirm:y,confirmHighSlippage:w,slippageToBeUsed:f}=Qa(),g=()=>{i({type:"MERGE_OVERLAY",payload:{type:$.HIGH_SLIPPAGE,isOpen:!0,onConfirm:async()=>w()}})};return{isEmptyInput:!o.value||o.value==="0",requiresEndOfCooldown:p,requiresHighSlippageConfirm:y,sendTokenSymbol:o.symbol,slippageToBeUsed:f,dynamicCooldownEndsInTime:m,handleHighSlippageClick:g,maintenance:n||a,poolSymbol:s,isLimitOrderWithdraw:l,insufficientBalance:c}},WC=({children:e})=>{const{ActionButton:t=q}=P(),n=A(),a=Xa("withdraw"),{isEmptyInput:s,requiresEndOfCooldown:o,requiresHighSlippageConfirm:i,sendTokenSymbol:l,slippageToBeUsed:c,dynamicCooldownEndsInTime:d,handleHighSlippageClick:p,maintenance:m,poolSymbol:y,isLimitOrderWithdraw:w,insufficientBalance:f}=FC();return s?r.jsx(t,{disabled:!0,children:a}):m?r.jsx(un,{promptText:n.poolWithdrawalsAreMaintenance.replace("{poolSymbol}",y),children:a}):o?r.jsx(un,{promptText:n.withdrawCooldown.replace("{tokenSymbol}",l).replace("{cooldownEndTime}",d),children:a}):f?r.jsx(t,{disabled:!0,children:n.insufficientBalance}):w?r.jsx($C,{}):i?r.jsx(t,{onClick:p,children:n.confirmMaxSlippage.replace("{slippagePercentage}",`${Math.abs(c)}`)}):e},UC=()=>{const{address:e,chainId:t}=b(),[n,a]=N(),s=he({symbol:n.symbol,address:n.address}),o=ue({address:e,chainId:t});return{...n,updater:a,balance:s,price:o}},zC=()=>{const{chainId:e}=b(),[t,n]=O(),a=ce({address:t.address,chainId:e});return{...t,updater:n,price:a}},HC=()=>{const e=UC(),t=zC();return{sendToken:e,onInputChange:a=>{e.updater({value:a})},receiveToken:t}},GC=()=>{const{sendToken:e,onInputChange:t,receiveToken:n}=HC();return r.jsxs(r.Fragment,{children:[r.jsx(Dt,{assetInput:e.value,onInputChange:t,assetSymbol:e.symbol,assetPrice:e.price??"",displayMax:!0,maxBalance:e.balance,displayCalculatedValue:!0,children:r.jsx(Tl,{})}),r.jsxs(Dt,{assetInput:n.value,autoFocus:!1,disabled:!0,assetSymbol:n.symbol,assetPrice:n.price,displayCalculatedValue:!0,isLoading:n.isLoading,children:[r.jsx(vl,{}),n.symbol==="all"?null:r.jsx(bl,{})]})]})},VC=()=>{const e=A(),{address:t,chainId:n}=b(),[{isMaxSlippageLoading:a}]=Q(),{exitFeeNumber:s}=Pn({address:t,chainId:n}),o=Ft(),i=Qe();return{slippageTooltipText:Bt(o)===W.DEFAULT?e.withdrawSlippageWarning:e.highSlippageWarning,isMaxSlippageLoading:a,slippagePlaceholder:`${o}%`,exitFee:Ot(s,2),minReceivedText:e.estimatedMultiAssetFractions,showMinReceivedText:i}},qC=()=>{const e=A(),{slippageTooltipText:t,slippagePlaceholder:n,isMaxSlippageLoading:a,exitFee:s,minReceivedText:o,showMinReceivedText:i}=VC(),l=u.useMemo(()=>{const c=[{tooltipText:e.exchangeRate,label:e.rate,value:r.jsx(cs,{})},{tooltipText:t,label:e.maxSlippage,value:r.jsxs("div",{className:"dtw-flex dtw-gap-1",children:[a&&r.jsx(ke,{className:"dtw-stroke-[color:var(--panel-accent-from-color)] dtw-h-[var(--panel-icon-secondary-size)] sm:dtw-h-[var(--panel-icon-secondary-size-sm)] dtw-w-[var(--panel-icon-secondary-size)] sm:dtw-w-[var(--panel-icon-secondary-size-sm)]"}),r.jsx("span",{className:C({"dtw-text-[color:var(--panel-loading-content-color)]":a}),children:n})]})},{label:e.exitFee,value:s,tooltipText:e.exitFeeExplanation}];return i&&c.push({tooltipText:e.minReceiveAmount,label:e.minReceived,value:o}),c},[t,e.maxSlippage,e.exitFee,e.exitFeeExplanation,e.minReceiveAmount,e.minReceived,e.exchangeRate,e.rate,a,n,s,i,o]);return r.jsx(Ja,{collapseItems:l})},YC=({children:e})=>{const{WithdrawMetaInfo:t,AvailableLiquidityAlert:n,OnDemandWithdrawAlert:a}=P(),{requiresLeveragedCollateralLiquidity:s,leveragedCollateralValueFormatted:o}=Wl(),i=Ul();return r.jsxs(Y.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(qC,{}),t&&r.jsx(t,{}),r.jsx("div",{className:"dtw-sticky dtw-bottom-0 dtw-bg-[var(--panel-meta-action-panel-bg)]",children:e})]})},KC=()=>{const e=A();return jC(),r.jsxs(r.Fragment,{children:[r.jsx(Y.InputGroup,{children:r.jsx(GC,{})}),r.jsx(YC,{children:r.jsx(is,{children:r.jsxs("div",{className:"dtw-flex dtw-flex-col dtw-gap-2 dtw-w-full",children:[r.jsx(WC,{children:r.jsx(hl,{})}),r.jsx(yl,{highlighted:!1,children:e.stopOrder})]})})})]})},QC=()=>{Ev();const{isCompleteWithdrawStep:e}=Re();return{isCompleteWithdrawStep:e}},XC=()=>{const{isCompleteWithdrawStep:e}=QC();return e?r.jsx(MC,{}):r.jsx(KC,{})},ZC=()=>r.jsx(Y.Panel,{children:r.jsx(XC,{})}),JC=({tradingType:e})=>r.jsxs(R.TabGroup,{selectedIndex:et.indexOf(e),children:[r.jsx(R.TabList,{className:"dtw-flex",children:et.map(t=>r.jsx(R.Tab,{className:"dtw-hidden"},t))}),r.jsxs(R.TabPanels,{children:[r.jsx(Y.Settings,{children:r.jsx(Vv,{})}),r.jsx(Y.Settings,{children:r.jsx(CC,{})})]})]}),eE=({children:e})=>r.jsxs(R.TabList,{className:"dtw-flex dtw-px-[var(--panel-tab-group-px)] dtw-justify-between dtw-items-center",children:[r.jsx("div",{className:"dtw-bg-[var(--panel-tab-list-bg)] dtw-rounded-[var(--panel-tab-list-radius)] dtw-px-[var(--panel-tab-list-px)] dtw-py-[var(--panel-tab-list-py)]",children:et.map(t=>r.jsx(Zb,{tradingType:t},t))}),e]}),tE=et.reduce((e,t,n)=>(e[n]=t,e),{}),nE=()=>{const[e]=we(),t=b(),{standalone:n}=G();EA();const a=ls(),s=o=>{const i=tE[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}},aE=()=>{const{type:e,onTabChange:t}=nE();return r.jsxs("div",{className:"trading-widget dtw-relative dtw-pt-3 dtw-bg-[var(--panel-background-color)] dtw-text-[color:var(--panel-content-color)] dtw-rounded-[var(--widget-radius)] md:dtw-rounded-[var(--widget-radius-md)] dtw-overflow-hidden dtw-h-full",children:[r.jsxs(R.TabGroup,{selectedIndex:et.indexOf(e),onChange:t,className:"dtw-flex dtw-flex-col dtw-h-full",children:[r.jsx(eE,{children:r.jsxs("div",{className:"dtw-flex dtw-gap-2 dtw-items-center dtw-justify-end",children:[r.jsx(cA,{}),r.jsx(JC,{tradingType:e})]})}),r.jsxs(R.TabPanels,{className:"dtw-flex-1 dtw-overflow-y-auto",children:[r.jsx(LA,{}),r.jsx(ZC,{})]})]}),r.jsxs(jA,{children:[r.jsx(gS,{type:$.ERROR_NOTIFICATION}),r.jsx(BA,{type:$.TERMS_OF_USE}),r.jsx($A,{type:$.HIGH_SLIPPAGE}),r.jsx(VA,{type:$.TOKEN_SELECT,searchQuery:""}),r.jsx(QA,{type:$.POOL_SELECT,searchQuery:""}),r.jsx(uS,{type:$.TRADING}),r.jsx(eC,{type:$.LIMIT_SELLS}),r.jsx(uC,{type:$.LIMIT_ORDER_WITHDRAW}),r.jsx(SC,{type:$.WITHDRAW_STEPPER})]})]})},sE=({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-error-overlay-icon-color":`${t?.global?.color?.colorErrorOverlayIcon??"var(--panel-accent-from-color)"}`,"--panel-border-color":`${t?.global?.color?.colorBorderPrimary??"var(--panel-content-color)"}`,"--widget-radius":`${t?.component?.widget?.style?.radius??"var(--panel-radius)"}`,"--widget-radius-md":`${t?.component?.widget?.style?.radiusMd??"var(--panel-radius)"}`,"--panel-divider-color":`${t?.component?.divider?.color?.colorBg??"var(--panel-secondary-content-color)"}`,"--panel-scrollbar-color":`${t?.global?.color?.colorScrollbar??`${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-overlay-bg":`${t?.component?.overlay?.color?.colorBg??"var(--panel-popup-bg)"}`,"--panel-popup-border-color":`${t?.component?.popup?.color?.colorBorder??"var(--panel-secondary-content-color)"}`,"--panel-popup-font-size":`${t?.component?.popup?.size?.fontSize??t?.global?.size?.fontSizeXs??"12px"}`,"--panel-popup-list-header-bg":`${t?.component?.popupList?.color?.headerBg??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) * 5)"}`,"--panel-input-price-gap":`${t?.component?.input?.size?.priceGap??"calc(var(--panel-gap) * 2)"}`,"--panel-input-token-icon-size":`${t?.component?.input?.size?.iconSize??"var(--panel-icon-size)"}`,"--panel-input-token-icon-size-sm":`${t?.component?.input?.size?.iconSizeSm??"var(--panel-icon-size-sm)"}`,"--panel-input-content-color":`${t?.component?.input?.color?.textColor??"var(--panel-content-color)"}`,"--panel-input-loading-content-color":`${t?.component?.input?.color?.loadingTextColor??"var(--panel-loading-content-color)"}`,"--panel-input-bg":`${t?.component?.input?.color?.bgColor??"var(--panel-neutral-color)"}`,"--panel-input-focus-bg":`${t?.component?.input?.color?.bgColorFocus??"transparent"}`,"--panel-input-border-color":`${t?.component?.input?.color?.borderColor??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}),rE=({children:e,config:t,theme:n,components:a,translation:s,className:o})=>r.jsx(Hb,{config:s,children:r.jsx(sE,{config:n,className:o,children:r.jsx(Si,{config:t,children:r.jsx(cv,{config:a,children:r.jsx(Qb,{children:e})})})})}),oE=e=>r.jsx(rE,{...e,children:r.jsx(aE,{})}),iE="ref",lE=({vaultAddress:e,userAddress:t,query:n,logEvent:a,tagInvestorByReferrer:s})=>{const[o,i]=pa("localStorage",Ct.REFERRER,""),[l,c]=pa("localStorage",Ct.REF_POOL,""),d=n[iE];u.useEffect(()=>{!d||typeof d!="string"||te(e)||localStorage.getItem(Ct.REFERRER)||(i(d),c(e),a?.())},[e,d,c,i,a]),u.useEffect(()=>{if(!t||!o||l.toLowerCase()!==e.toLowerCase())return;(async()=>{try{await s({investorAddress:t,poolAddress:l,referrerAddress:o})}catch(m){console.error("[core-ui-kit]: Error on tagging investor by referrer",m)}})()},[l,o,s,t,e])},cE=({title:e,children:t,className:n,titleClassName:a})=>r.jsxs("div",{className:C("dtw-relative dtw-flex dtw-flex-col dtw-gap-4 dtw-rounded-xl dtw-p-3 dtw-w-full dtw-bg-[var(--limit-order-background-color)]",n),children:[e&&r.jsx("h1",{className:C("dtw-mb-6 !dtw-text-[length:var(--limit-order-font-size-lg)] dtw-drop-shadow-md dtw-text-[color:var(--limit-order-secondary-content-color)]",a),children:e}),r.jsx("div",{className:"dtw-w-full",children:t})]}),dE=({isOpen:e,onClose:t,children:n,className:a,ThemeProvider:s=u.Fragment})=>{const o=u.useRef(null);return r.jsx(R.Dialog,{open:e,initialFocus:o,as:"div",className:C("dtw-relative dtw-z-20 dtw-overflow-y-auto theme-scrollbar",a),onClose:t,children:r.jsx(s,{children:r.jsxs(r.Fragment,{children:[r.jsx(R.DialogBackdrop,{className:"dtw-fixed dtw-inset-0 dtw-backdrop-blur-md dtw-backdrop-brightness-75 dtw-backdrop-filter"}),r.jsx("div",{className:"dtw-fixed dtw-inset-0 dtw-flex dtw-w-screen dtw-items-center dtw-justify-center dtw-p-4",ref:o,children:r.jsx(R.DialogPanel,{transition:!0,className:"dtw-inline-block dtw-transform dtw-duration-100 dtw-ease-out dtw-overflow-hidden dtw-rounded-2xl dtw-text-left dtw-align-middle dtw-shadow-xl data-[closed]:dtw-opacity-0 data-[closed]:dtw-scale-75",children:n})})]})})})},pE=()=>{const e=Ve(),{isModalOpen:t,pendingTransaction:n}=fe(),{setIsModalOpen:a}=zt(),s=u.useCallback(()=>{a(!0),e?.(X.OPEN_LIMIT_SELL_VIEW,{[Te.SOURCE.NAME]:"modal"})},[e,a]),o=u.useCallback(()=>a(!1),[a]);return{isModalOpen:t,onOpen:s,onClose:o,isTransactionPending:!!n}},uE=({children:e,themeConfig:t})=>{const{onOpen:n,isModalOpen:a,onClose:s,isTransactionPending:o}=pE(),i=ge();Bl();const l=u.useCallback(({children:c})=>r.jsx($l,{config:t,children:c}),[t]);return r.jsxs(r.Fragment,{children:[e({onClick:n,isTransactionPending:o}),r.jsx(dE,{isOpen:a,onClose:s,ThemeProvider:l,className:"limit-order",children:r.jsx(cE,{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(Ll,{onClose:s})})})]})},mE=({children:e,vaultChainId:t,vaultAddress:n,pricingAsset:a,translation:s,minAmountInUsd:o=za,actions:i,themeConfig:l,isModalOpen:c})=>{const{isFetched:d,upperLimitPrice:p,lowerLimitPrice:m}=Ml({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(El,{config:s,children:r.jsx(Ol,{initialState:y,actions:i,children:r.jsx(uE,{themeConfig:l,children:e})})}):null};Object.defineProperty(exports,"useBlockNumber",{enumerable:!0,get:()=>E.useBlockNumber});Object.defineProperty(exports,"useConnect",{enumerable:!0,get:()=>E.useConnect});Object.defineProperty(exports,"useDisconnect",{enumerable:!0,get:()=>E.useDisconnect});Object.defineProperty(exports,"usePublicClient",{enumerable:!0,get:()=>E.usePublicClient});Object.defineProperty(exports,"useReadContract",{enumerable:!0,get:()=>E.useReadContract});Object.defineProperty(exports,"useReadContracts",{enumerable:!0,get:()=>E.useReadContracts});Object.defineProperty(exports,"useSendTransaction",{enumerable:!0,get:()=>E.useSendTransaction});Object.defineProperty(exports,"useWaitForTransactionReceipt",{enumerable:!0,get:()=>E.useWaitForTransactionReceipt});Object.defineProperty(exports,"useWalletClient",{enumerable:!0,get:()=>E.useWalletClient});Object.defineProperty(exports,"useWriteContract",{enumerable:!0,get:()=>E.useWriteContract});Object.defineProperty(exports,"arbitrum",{enumerable:!0,get:()=>h.arbitrum});Object.defineProperty(exports,"base",{enumerable:!0,get:()=>h.base});Object.defineProperty(exports,"optimism",{enumerable:!0,get:()=>h.optimism});Object.defineProperty(exports,"polygon",{enumerable:!0,get:()=>h.polygon});Object.defineProperty(exports,"decodeErrorResult",{enumerable:!0,get:()=>D.decodeErrorResult});Object.defineProperty(exports,"encodeFunctionData",{enumerable:!0,get:()=>D.encodeFunctionData});Object.defineProperty(exports,"erc20Abi",{enumerable:!0,get:()=>D.erc20Abi});Object.defineProperty(exports,"formatEther",{enumerable:!0,get:()=>D.formatEther});Object.defineProperty(exports,"formatUnits",{enumerable:!0,get:()=>D.formatUnits});Object.defineProperty(exports,"hexToString",{enumerable:!0,get:()=>D.hexToString});Object.defineProperty(exports,"trim",{enumerable:!0,get:()=>D.trim});exports.ALCHEMY_RPC_URL_MAP=rc;exports.AaveLendingPoolAbi=ea;exports.AddressZero=_;exports.BRIDGED_TOKENS_SYMBOLS=Ea;exports.BRIDGED_USDC_ARBITRUM=ga;exports.BRIDGED_USDC_OPTIMISM=Ta;exports.BRIDGED_USDC_POLYGON=xa;exports.CBBTC_BASE=Ur;exports.CBETH_BASE=jc;exports.CHAIN_MAP=sc;exports.CHAIN_NATIVE_TOKENS=Ze;exports.COMPLETE_WITHDRAW_ACTIONS=Ia;exports.CURRENCY_SYMBOL_MAP=br;exports.ConfigProvider=Si;exports.DAI_OPTIMISM=Gr;exports.DAI_POLYGON=Kr;exports.DEFAULT_DEPOSIT_METHOD=Xl;exports.DEFAULT_DEPOSIT_SLIPPAGE=yn;exports.DEFAULT_DEPOSIT_SLIPPAGE_SCALE=ec;exports.DEFAULT_ERROR_MESSAGE=Rr;exports.DEFAULT_LOCK_TIME=dr;exports.DEFAULT_MULTI_ASSET_WITHDRAW_METHOD=yr;exports.DEFAULT_POLLING_INTERVAL=nt;exports.DEFAULT_PRECISION=k;exports.DEFAULT_PROMISE_TIMEOUT_MS=fr;exports.DEFAULT_SIMULATION_ERROR=na;exports.DEFAULT_WITHDRAW_SLIPPAGE=ur;exports.EMPTY_POOL_CONFIG=pr;exports.EasySwapperV2Abi=ve;exports.EstimationError=ut;exports.GAS_ESTIMATION_ERROR=ta;exports.GAS_LIMIT_BUFFER_COEFF=gr;exports.GET_ALL_LIMIT_ORDER_IDS_FUNCTION_NAME=Ua;exports.GMX_MARKET_ASSETS=no;exports.GMX_MARKET_ASSETS_MAP=ae;exports.LIMIT_ORDER_READ_FUNCTION_NAME=Dn;exports.LINK_ARBITRUM=Lc;exports.LINK_OPTIMISM=Uc;exports.LimitOrderAbi=wn;exports.LimitOrderModal=mE;exports.MANAGER_FEE_DENOMINATOR=ye;exports.MAX_GAS_LIMIT_MAP=Xt;exports.MULTI_ASSET_TOKEN=sn;exports.MaxUint256=Ue;exports.NATIVE_TOKEN_DEPOSIT_GAS_LIMIT=hr;exports.PAXG_POLYGON=Gc;exports.PYTH_API_LINK=Kc;exports.PoolFactoryAbi=He;exports.PoolLogicAbi=be;exports.PoolManagerLogicAbi=De;exports.RETH_BASE=Jt;exports.RewardDistributionAbi=Or;exports.SETH_OPTIMISM=Wc;exports.SHORTEN_POLLING_INTERVAL=ze;exports.SIMULATION_TIMEOUT_ERROR=Lr;exports.SUSD_OPTIMISM=Fc;exports.TBTC_ARBITRUM=Nc;exports.TBTC_BASE=Bc;exports.TBTC_OPTIMISM=zc;exports.TBTC_POLYGON=Vc;exports.TRADING_LOG_EVENT_PARAM=Te;exports.TRADING_PANEL_LOG_EVENT=X;exports.TradingPanelProvider=Cd;exports.TradingWidget=oE;exports.USDCBC_BASE=Mc;exports.USDC_ARBITRUM=le;exports.USDC_BASE=Wr;exports.USDC_MAINNET=Qr;exports.USDC_OPTIMISM=zr;exports.USDC_POLYGON=Vr;exports.USDT_ARBITRUM=Pc;exports.USDT_MAINNET=Xr;exports.USDT_OPTIMISM=Hr;exports.USDT_POLYGON=Yr;exports.WBNB_ARBITRUM=Rc;exports.WBTC_ARBITRUM=Be;exports.WBTC_BY_CHAIN_ID=Jr;exports.WBTC_MAINNET=Ca;exports.WBTC_OPTIMISM=Je;exports.WBTC_POLYGON=Aa;exports.WETH_ARBITRUM=It;exports.WETH_BASE=fa;exports.WETH_BY_CHAIN_ID=Zr;exports.WETH_MAINNET=Sa;exports.WETH_OPTIMISM=ba;exports.WETH_POLYGON=va;exports.WPOL_POLYGON=qr;exports.WSOL_ARBITRUM=kc;exports.WSTETH_ARBITRUM=Oc;exports.WSTETH_BASE=$c;exports.WSTETH_OPTIMISM=Hc;exports.XAUT_MAINNET=qc;exports.clientSide=gn;exports.commify=dd;exports.contractsAbisMap=kr;exports.contractsAddressesMap=Pr;exports.formatByCurrency=tn;exports.formatNumberToLimitedDecimals=Ge;exports.formatNumeratorToPercentage=xt;exports.formatPercentage=Ot;exports.formatToUsd=ne;exports.getContractAbiById=ao;exports.getContractAddressById=z;exports.getConventionalTokenPriceDecimals=_t;exports.getErrorMessage=si;exports.getLimitOrderId=Pl;exports.getNativeTokenInvestableBalance=lo;exports.getPercent=Ne;exports.getPoolFraction=sa;exports.isAaveLendAndBorrowAsset=aa;exports.isEqualAddress=H;exports.isErrorWithMessage=ni;exports.isFmpAirdropVaultAddress=wo;exports.isNativeToken=hn;exports.isZeroAddress=te;exports.normalizeNumber=Fe;exports.removeInsignificantTrailingZeros=ra;exports.shiftBy=rn;exports.shortenAddress=so;exports.toErrorWithMessage=ai;exports.transformAddressForAnalytics=Da;exports.useAccount=B;exports.useAddPoolConfig=kd;exports.useAssetPrice=ce;exports.useAvailableManagerFee=bi;exports.useBalance=Oa;exports.useBrowserStorage=pa;exports.useCheckWhitelist=ui;exports.useCompleteWithdrawSwapQuotes=yt;exports.useCompleteWithdrawTrackedAssets=me;exports.useContractFunction=xe;exports.useContractPoolComposition=mi;exports.useContractReadErrorLogging=Wa;exports.useContractReadsErrorLogging=_n;exports.useCustomDepositTokensPerChain=Do;exports.useDebounce=ss;exports.useDepositLockTime=dl;exports.useDepositProjectedEarnings=el;exports.useEasySwapperTrackedAssets=qi;exports.useExchangeRate=Ui;exports.useFlatmoneyPointsUserBalances=kb;exports.useGasPrice=ri;exports.useHasSingleAssetWithdrawBlockers=qa;exports.useInvalidateLimitOrderQuery=jl;exports.useInvalidateOnBlock=dn;exports.useInvalidatePoolContractData=wi;exports.useInvalidateTradingQueries=Nn;exports.useIsBatchContractWritesSupported=On;exports.useIsCompleteWithdrawStep=Re;exports.useIsDepositBlocked=Ob;exports.useIsDepositTradingPanelType=Oe;exports.useIsDhedgeVaultConnected=Rt;exports.useIsInsufficientBalance=kt;exports.useIsPoolAddress=Ld;exports.useIsTradingEnabled=ts;exports.useIsWalletConnected=jd;exports.useManagerLogicAddress=Ga;exports.useNetwork=Ce;exports.useOnSimulateTransaction=Eo;exports.useOnTokenSelector=Co;exports.useOnTradingTypeChange=ls;exports.useOnTransactionError=xo;exports.useOnTransactionEstimationError=fn;exports.useOnTransactionSuccess=So;exports.usePoolComposition=mt;exports.usePoolCompositionWithFraction=yi;exports.usePoolDynamic=oe;exports.usePoolFees=Pn;exports.usePoolManagerDynamic=jt;exports.usePoolManagerLogicData=Va;exports.usePoolManagerStatic=Mt;exports.usePoolStatic=Lt;exports.usePoolTokenPrice=ue;exports.useProjectedEarningsCore=Ji;exports.useRawAssetPrice=es;exports.useReceiveTokenInput=O;exports.useReferralProgram=lE;exports.useSendTokenInput=N;exports.useSetPoolAddress=Ed;exports.useSetTradingType=Nd;exports.useStaticCallQuery=TT;exports.useTokenAllowance=Tn;exports.useTradingPanelActions=F;exports.useTradingPanelLogger=Ve;exports.useTradingPanelModal=K;exports.useTradingPanelPoolAddress=Io;exports.useTradingPanelPoolConfig=b;exports.useTradingPanelPoolConfigs=at;exports.useTradingPanelPoolFallbackData=qe;exports.useTradingPanelSettings=Q;exports.useTradingPanelState=J;exports.useTradingPanelTransactions=re;exports.useTradingPanelType=we;exports.useTradingResultHandling=Wi;exports.useTradingSettleHandler=Ke;exports.useUpdateCustomDepositTokensPerChain=Rd;exports.useUpdatePoolConfig=Pd;exports.useUpdatePoolFallbackData=vo;exports.useUpdateReceiveTokenInput=_d;exports.useUpdateSendTokenInput=Id;exports.useUpdateTradingModal=Od;exports.useUpdateTradingSettings=Dd;exports.useUserBalancesDynamic=pi;exports.useUserLimitOrder=Ht;exports.useUserTokenBalance=he;exports.useUserVaultBalance=Ti;exports.useUserVaultsBalances=fi;exports.useVaultContractData=Pb;exports.useVaultDepositTokens=jn;exports.useVaultSupplyCap=vi;exports.useVaultVestedPoints=hi;exports.validateLoggerEventParams=id;
|