@dhedge/trading-widget 5.13.1 → 5.13.3
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/const.cjs +1 -1
- package/const.js +36 -35
- package/core-kit/const/network.d.ts +27 -10
- package/core-kit/const/tokens.d.ts +1 -0
- package/core-kit/hooks/trading/limit-order-withdraw/use-limit-order-withdraw-delete-transaction.d.ts +1 -0
- package/core-kit/hooks/trading/limit-order-withdraw/use-on-demand-pricing-asset.d.ts +2 -0
- package/core-kit/hooks/trading/limit-order-withdraw/use-pending-limit-order-withdraw.d.ts +4 -0
- package/core-kit/utils/hyperliquid.d.ts +3 -0
- package/core-kit/utils/index.d.ts +1 -0
- package/{gmx-k2GEQom-.js → gmx-B_4o16YS.js} +285 -274
- package/gmx-ddu-QFeq.cjs +1 -0
- package/index.cjs +1 -1
- package/index.js +2464 -2385
- package/package.json +1 -1
- package/slippage-auto-simulation-C34TM_yM.js +406 -0
- package/slippage-auto-simulation-DmjjjnU1.cjs +1 -0
- package/style.css +1 -1
- package/trading-widget/components/withdraw/init-step/meta/pending-limit-order-withdraw-banner.d.ts +2 -0
- package/trading-widget/components/withdraw/init-step/meta/pending-limit-order-withdraw-banner.hooks.d.ts +8 -0
- package/trading-widget/providers/translation-provider/translation-provider.types.d.ts +1 -0
- package/utils.cjs +1 -1
- package/utils.js +34 -32
- package/gmx-Ccmxx2kU.cjs +0 -1
- package/slippage-auto-simulation-BNYQurYt.cjs +0 -1
- package/slippage-auto-simulation-BkkeCgNm.js +0 -400
package/gmx-Ccmxx2kU.cjs
DELETED
|
@@ -1 +0,0 @@
|
|
|
1
|
-
"use strict";const e=require("wagmi/chains"),Se=require("date-fns"),Re=require("viem"),w="0x0000000000000000000000000000000000000000",Me=BigInt("0xffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff"),p=18,Oe="1000000000000000000",we=59e3,Le=3e4,Pe=15e3,he=5e3,L=400,Ne=L*1.2,Ce=Se.formatDuration({hours:24}),ge={address:w,symbol:"",chainId:e.optimism.id,depositParams:{customTokens:[]},withdrawParams:{customTokens:[]},deprecated:!1},ve="deposit",Ue=.5,P=0,xe=.5,Be=.02,We=.5,Fe=[P],He=[.05,.1,.3,.5,.75,1,1.5,2,3,5],Ve="withdrawSafe",ke="initWithdrawal",Ge="unrollAndClaim",Ye="completeWithdrawal",Ke=3e7,Xe=1.25,ze=1e4,qe=13e3,Ze=3,$e=2e4,je=15e3,Qe={[e.mainnet.id]:e.mainnet,[e.polygon.id]:e.polygon,[e.optimism.id]:e.optimism,[e.arbitrum.id]:e.arbitrum,[e.base.id]:e.base,[e.hyperEvm.id]:e.hyperEvm},Je={[e.mainnet.id]:{nativeTokenSymbol:"ETH",wrappedNativeTokenName:"WETH",address:"0xc02aaa39b223fe8d0a0e5c4f27ead9083c756cc2",decimals:p},[e.polygon.id]:{nativeTokenSymbol:"POL",wrappedNativeTokenName:"WPOL",address:"0x0d500b1d8e8ef31e21c99d1db9a6444d3adf1270",decimals:p},[e.optimism.id]:{nativeTokenSymbol:"ETH",wrappedNativeTokenName:"WETH",address:"0x4200000000000000000000000000000000000006",decimals:p},[e.arbitrum.id]:{nativeTokenSymbol:"ETH",wrappedNativeTokenName:"WETH",address:"0x82af49447d8a07e3bd95bd0d56f35241523fbab1",decimals:p},[e.base.id]:{nativeTokenSymbol:"ETH",wrappedNativeTokenName:"WETH",address:"0x4200000000000000000000000000000000000006",decimals:p},[e.hyperEvm.id]:{nativeTokenSymbol:"HYPE",wrappedNativeTokenName:"WHYPE",address:"0x5555555555555555555555555555555555555555",decimals:p}},d=299e5,et={[e.mainnet.id]:d,[e.polygon.id]:d,[e.optimism.id]:d,[e.arbitrum.id]:d,[e.base.id]:d,[e.hyperEvm.id]:d},tt={[e.mainnet.id]:"https://eth-mainnet.g.alchemy.com/v2",[e.optimism.id]:"https://opt-mainnet.g.alchemy.com/v2",[e.polygon.id]:"https://polygon-mainnet.g.alchemy.com/v2",[e.arbitrum.id]:"https://arb-mainnet.g.alchemy.com/v2",[e.base.id]:"https://base-mainnet.g.alchemy.com/v2",[e.hyperEvm.id]:"https://hyperliquid-mainnet.g.alchemy.com/v2"},nt={USD:"$",ETH:"Ξ",BTC:"₿"},at={USD:2,ETH:4,BTC:6},st=["USDC","USDT"],a={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",CREATE_LIMIT_SELL_ORDER:"limit_order_create",CREATE_LIMIT_BUY_ORDER:"limit_buy_order_create",OPEN_LIMIT_SELL_VIEW:"open_limit_sell_view",OPEN_LIMIT_BUY_VIEW:"open_limit_buy_view",LIMIT_ORDER_WITHDRAW:"limit_order_withdraw",LIMIT_ORDER_WITHDRAW_DELETE:"limit_order_withdraw_delete"},it={approve:[a.APPROVED_TOKEN],deposit:[a.DEPOSIT],multi_withdraw:[a.WITHDRAWAL,a.MULTI_ASSET_WITHDRAW],single_withdraw:[a.WITHDRAWAL,a.SINGLE_ASSET_WITHDRAW],single_withdraw_and_claim:[a.WITHDRAWAL,a.SINGLE_ASSET_WITHDRAW_AND_CLAIM],claim:[a.CLAIM],swap:[a.SWAP],create_limit_sell_order:[a.CREATE_LIMIT_SELL_ORDER],create_limit_buy_order:[a.CREATE_LIMIT_BUY_ORDER],limit_order_withdraw:[a.LIMIT_ORDER_WITHDRAW],delete_limit_order_withdraw:[a.LIMIT_ORDER_WITHDRAW_DELETE]},rt={IS_INFINITE:{NAME:"is_infinite",TYPE:"number"},SYMBOL:{NAME:"symbol",TYPE:"string"},CHAIN_ID:{NAME:"chain_id",TYPE:"number"},ADDRESS:{NAME:"address",TYPE:"string"},SOURCE:{NAME:"source",TYPE:"string"}};var i=(r=>(r.ETH="ETH",r.MAINNET="MAINNET",r.POLYGON="POLYGON",r.OE="OPTIMISM",r.ARBI="ARBITRUM",r.BASE="BASE",r.HYPEREVM="HYPEREVM",r))(i||{});const l=process.env.NEXT_PUBLIC_INFURA_API_KEY;e.arbitrum.id+"",`${l}`,e.optimism.id+"",`${l}`,e.polygon.id+"",`${l}`,e.base.id+"",`${l}`,e.mainnet.id+"",`${l}`,e.hyperEvm.id+"";const pt={[e.arbitrum.id]:{...e.arbitrum,name:"Arbitrum",iconPath:"/icons/arbitrum-network.svg",chainId:e.arbitrum.id,shortName:"ARB",blockchainCode:i.ARBI},[e.optimism.id]:{...e.optimism,name:"Optimism",iconPath:"/icons/optimism-network.svg",chainId:e.optimism.id,shortName:"OP",blockchainCode:i.OE},[e.polygon.id]:{...e.polygon,chainId:e.polygon.id,iconPath:"/icons/polygon-network.svg",shortName:"POLY",blockchainCode:i.POLYGON},[e.base.id]:{...e.base,chainId:e.base.id,iconPath:"/icons/base-network.svg",shortName:"BASE",blockchainCode:i.BASE},[e.mainnet.id]:{...e.mainnet,chainId:e.mainnet.id,iconPath:"/icons/ethereum-network.svg",shortName:"ETHEREUM",blockchainCode:i.MAINNET},[e.hyperEvm.id]:{...e.hyperEvm,chainId:e.hyperEvm.id,shortName:"HyperEVM",iconPath:"/icons/hyperevm-network.svg",blockchainCode:i.HYPEREVM}};i.ETH+"",e.mainnet.id,i.MAINNET+"",e.mainnet.id,i.POLYGON+"",e.polygon.id,i.OE+"",e.optimism.id,i.ARBI+"",e.arbitrum.id,i.BASE+"",e.base.id,i.HYPEREVM+"",e.hyperEvm.id;e.mainnet.id+"",e.optimism.id+"",e.polygon.id+"",e.arbitrum.id+"",e.base.id+"",e.hyperEvm.id+"";const _="0x0000000000000000000000000000000000000000";BigInt("0xffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff");e.mainnet.id+"",BigInt(100),e.optimism.id+"",BigInt(600),e.polygon.id+"",BigInt(600),e.base.id+"",BigInt(600),e.arbitrum.id+"",BigInt(5300),e.hyperEvm.id+"",BigInt(6e3);const h="0x96D33bCF84DdE326014248E2896F79bbb9c13D6d",N="0xbDd84294bC8299861A2121F749A25EFEb7168a32",C="0x87870Bca3F3fD6335C3F4ce8392D69350B4fA4E2",g="0x95B19De479bc693721cab39Da98FfECE062f5Ea4",v="0xffFb5fB14606EB3a548C113026355020dDF27535",U="0x794a61358D6845594F94dc1DB02A252b5b4814aD",x="0xA5679C4272A056Bb83f039961fae7D99C48529F5",B="0x26a687e8244f1866E9Aa2D400c8b9957Aa8e6Ad4",W="0x49Afe3abCf66CF09Fab86cb1139D8811C8afe56F",F="0xf067575Eb60c7587C11e867907AA7284833704d1",dt="0x59525b9b23adc475ef91d98dae06b568ba574ce5",ot="0xa907504d7a4c415b4e6e1d0866d96afe8202f0e5",yt="0x1849324228d852a67eb7443e42d967e480ffe95d",H="0xa238dd80c259a72e81d7e4664a9801593f98d1c5",V="0xFcBEc28c43E356693971a24bf3F2Fd7D965E2ebA",lt="0x07e144e336fcc3fe928a8a2a5714da64354c1aab",k="0x5e61a079A178f0E5784107a4963baAe0c5a680c6",G="0x794a61358D6845594F94dc1DB02A252b5b4814aD",Y="0x2Ed1bd7f66e47113672f3870308b5E867C5bb743",K="0x3bFE2a472d2964Ea4070725b7Fb0A868b3f08b63",X="0xfdc7b8bFe0DD3513Cc669bB8d601Cb83e2F69cB0",ut="0x8dFf5E27EA6b7AC08EbFdf9eB090F32ee9a30fcf",z="0x794a61358D6845594F94dc1DB02A252b5b4814aD",q="0x45b90480D6F643dE2f128db091A357C3c90399f2",Z="0xB71410736d2C8F2DAf30dA9D332dA10534d2624d",$="0x615037C2Df6FA97634c5aD2d8144708b9dd3B176",j="0x47065E508433E22d73Be3c5B61EB9abafD450364",mt="0x4F754e0F0924afD74980886b0B479Fa1D7C58D0D";e.mainnet.id+"",e.arbitrum.id+"",e.base.id+"",e.optimism.id+"",e.polygon.id+"",e.hyperEvm.id+"";e.mainnet.id+"",e.arbitrum.id+"",e.base.id+"",e.optimism.id+"",e.polygon.id+"",e.hyperEvm.id+"";e.mainnet.id+"",e.arbitrum.id+"",e.base.id+"",e.optimism.id+"",e.polygon.id+"",e.hyperEvm.id+"";e.mainnet.id+"",e.arbitrum.id+"",e.base.id+"",e.optimism.id+"",e.polygon.id+"",e.hyperEvm.id+"";const A=[{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"}],Q=[{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"},{inputs:[],name:"referralManager",outputs:[{internalType:"address",name:"",type:"address"}],stateMutability:"view",type:"function"}],J=[{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"}],Tt=[{type:"tuple[]",components:[{type:"address",name:"asset"},{type:"uint256",name:"amount"},{type:"tuple",name:"swapData",components:[{type:"bytes32",name:"routerKey"},{type:"bytes",name:"txData"}]}]}],ct=[{type:"tuple",components:[{type:"bytes",name:"encodedSrcData"},{type:"tuple",name:"dstData",components:[{type:"address",name:"dstAddress"},{type:"uint256",name:"dstAmount"}]},{type:"uint256",name:"slippage"}]}],ee=[{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"}],te=[{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"}],ne=[{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"}],_t=[{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"}],ae=[..._t,{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"},{internalType:"bytes",name:"_referralData",type:"bytes"}],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"},{internalType:"bytes",name:"_referralData",type:"bytes"}],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"},{internalType:"bytes",name:"_referralData",type:"bytes"}],name:"nativeDeposit",outputs:[],stateMutability:"payable",type:"function"},{inputs:[{internalType:"address",name:"_dHedgeVault",type:"address"},{internalType:"uint256",name:"_expectedAmountReceived",type:"uint256"},{internalType:"bytes",name:"_referralData",type:"bytes"}],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"},{internalType:"bytes",name:"_referralData",type:"bytes"}],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"},{internalType:"bytes",name:"_referralData",type:"bytes"}],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"},{internalType:"bytes",name:"_referralData",type:"bytes"}],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"},{internalType:"bytes",name:"_referralData",type:"bytes"}],name:"zapNativeDepositWithCustomCooldown",outputs:[],stateMutability:"payable",type:"function"}],se=[{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"}],At={[e.mainnet.id]:{factory:h,easySwapperV2:N,aaveLendingPoolV3:C,limitOrder:g},[e.polygon.id]:{factory:X,aaveLendingPoolV2:ut,aaveLendingPoolV3:z,easySwapperV2:q,limitOrder:Z},[e.optimism.id]:{factory:k,rewardDistribution:lt,aaveLendingPoolV3:G,easySwapperV2:Y,limitOrder:K},[e.arbitrum.id]:{factory:v,aaveLendingPoolV3:U,easySwapperV2:x,limitOrder:B},[e.base.id]:{factory:W,flatcoinPointsModule:dt,easySwapperV2:F,aaveLendingPoolV3:H,limitOrder:V},[e.hyperEvm.id]:{factory:$,easySwapperV2:j}},bt={factory:Q,aaveLendingPoolV2:A,aaveLendingPoolV3:A,rewardDistribution:te,poolManagerLogic:ee,erc20:Re.erc20Abi,poolLogic:J,flatcoinPointsModule:ne,easySwapperV2:ae,limitOrder:se},Et="Gas estimate error occurred",Dt="See console logs to report error details.",It="Missing simulation params",ft="Simulation timeout",ie="swap_data_deposit_error",re="swap_data_withdraw_error",pe="SwapFailed",u={title:"Low Slippage",hint:"Please increase slippage tolerance and try again."},de={"invalid liquidityMinted":u,"high withdraw slippage":u,"high deposit slippage":u,"high swap slippage":u,InsufficientAmountReceived:u,[pe]:{title:"Oh no we couldn’t swap the assets",hint:"Don’t worry your assets are still in your wallet."},"assetType not handled":{title:"Single Asset Withdrawal not available",hint:"Please use All Assets option."},[ie]:{title:"Oh no we couldn’t swap the assets",hint:"Don’t worry your assets are still in your wallet."},[re]:{title:"Oh no we couldn’t swap the assets",hint:"Don’t worry your assets are still in your wallet."},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."}},oe="Invalid limit order prices",ye={InvalidPrices:{title:oe}},St=[...Object.keys(de),...Object.keys(ye)],t=18,b={address:"0xff970a61a04b1ca14834a43f5de4533ebddb5cc8",symbol:"USDCe",decimals:6,value:""},s={address:"0xaf88d065e77c8cC2239327C5EDb3A432268e5831",symbol:"USDC",decimals:6,value:""},m={address:"0x82af49447d8a07e3bd95bd0d56f35241523fbab1",symbol:"WETH",decimals:t,value:""},o={address:"0x2f2a2543b76a4166549f7aab2e75bef0aefc5b0f",symbol:"WBTC",decimals:8,value:""},Rt={address:"0x6c84a8f1c29108F47a79964b5Fe888D4f4D0dE40",symbol:"tBTC",decimals:t,value:""},Mt={address:"0x5979D7b546E38E414F7E9822514be443A4800529",symbol:"wstETH",decimals:t,value:""},Ot={address:"0xfd086bc7cd5c481dcc9c85ebe478a1c0b69fcbb9",symbol:"USDT",decimals:6,value:""},wt={address:"0x2bcC6D6CdBbDC0a4071e48bb3B969b06B3330c07",symbol:"SOL",decimals:9,value:""},Lt={address:"0xa9004a5421372e1d83fb1f85b0fc986c912f91f3",symbol:"WBNB",decimals:t,value:""},Pt={address:"0xf97f4df75117a78c1a5a0dbb814af92458539fb4",symbol:"LINK",decimals:t,value:""},le={address:"0x833589fcd6edb6e08f4c7c32d4f71b54bda02913",symbol:"USDC",decimals:6,value:""},ht={address:"0xd9aaec86b65d86f6a7b5b1b0c42ffa531710b6ca",symbol:"USDbC",decimals:6,value:""},E={address:"0x4200000000000000000000000000000000000006",symbol:"WETH",decimals:t,value:""},Nt={address:"0x2ae3f1ec7f1f5012cfeab0185bfc7aa3cf0dec22",symbol:"cbETH",decimals:t,value:""},ue={address:"0xcbb7c0000ab88b473b1f5afd9ef808440eed33bf",symbol:"cbBTC",decimals:8,value:""},T={address:"0xb6fe221fe9eef5aba221c348ba20a1bf5e73624c",symbol:"rETH",decimals:t,value:""},Ct={address:"0x236aa50979D5f3De3Bd1Eeb40E81137F22ab794b",symbol:"tBTC",decimals:t,value:""},gt={address:"0xc1cba3fcea344f92d9239c08c0568f6f2f0ee452",symbol:"wstETH",decimals:t,value:""},D={address:"0x7F5c764cBc14f9669B88837ca1490cCa17c31607",symbol:"USDCe",decimals:6,value:""},me={address:"0x0b2C639c533813f4Aa9D7837CAf62653d097Ff85",symbol:"USDC",decimals:6,value:""},Te={address:"0x94b008aa00579c1307b0ef2c499ad98a8ce58e58",symbol:"USDT",decimals:6,value:""},I={address:"0x4200000000000000000000000000000000000006",symbol:"WETH",decimals:t,value:""},vt={address:"0x8c6f28f2F1A3C87F0f938b96d27520d9751ec8d9",symbol:"sUSD",decimals:t,value:""},ce={address:"0xda10009cbd5d07dd0cecc66161fc93d7c9000da1",symbol:"DAI",decimals:t,value:""},y={address:"0x68f180fcce6836688e9084f035309e29bf0a2095",symbol:"WBTC",decimals:8,value:""},Ut={address:"0xe405de8f52ba7559f9df3c368500b6e6ae6cee49",symbol:"sETH",decimals:t,value:""},xt={address:"0x350a791bfc2c21f9ed5d10980dad2e2638ffa7f6",symbol:"LINK",decimals:t,value:""},Bt={address:"0x6c84a8f1c29108F47a79964b5Fe888D4f4D0dE40",symbol:"tBTC",decimals:t,value:""},Wt={address:"0x1F32b1c2345538c0c6f582fCB022739c4A194Ebb",symbol:"wstETH",decimals:t,value:""},f={address:"0x7ceB23fD6bC0adD59E62ac25578270cFf1b9f619",symbol:"WETH",decimals:t,value:""},S={address:"0x2791Bca1f2de4661ED88A30C99A7a9449Aa84174",symbol:"USDCe",decimals:6,value:""},_e={address:"0x3c499c542cEF5E3811e1192ce70d8cC03d5c3359",symbol:"USDC",decimals:6,value:""},Ft={address:"0x553d3d295e0f695b9228246232edf400ed3560b5",symbol:"PAXG",decimals:t,value:""},R={address:"0x1BFD67037B42Cf73acF2047067bd4F2C47D9BfD6",symbol:"WBTC",decimals:8,value:""},Ae={address:"0x0d500B1d8E8eF31E21C99d1Db9A6444d3ADf1270",symbol:"WPOL",decimals:t,value:""},be={address:"0xc2132d05d31c914a87c6611c10748aeb04b58e8f",symbol:"USDT",decimals:6,value:""},Ee={address:"0x8f3cf7ad23cd3cadbd9735aff958023239c6a063",symbol:"DAI",decimals:t,value:""},Ht={address:"0x236aa50979d5f3de3bd1eeb40e81137f22ab794b",symbol:"tBTC",decimals:t,value:""},M={address:"0xc02aaa39b223fe8d0a0e5c4f27ead9083c756cc2",symbol:"WETH",decimals:t,value:""},De={address:"0xa0b86991c6218b36c1d19d4a2e9eb0ce3606eb48",symbol:"USDC",decimals:6,value:""},O={address:"0x2260fac5e5542a773aa44fbcfedf7c193bc2c599",symbol:"WBTC",decimals:8,value:""},Ie={address:"0xdac17f958d2ee523a2206206994597c13d831ec7",symbol:"USDT",decimals:6,value:""},Vt={address:"0x68749665ff8d2d112fa859aa293f07a622782f38",symbol:"XAUt",decimals:6,value:""},kt={address:_,symbol:"all",decimals:t,value:""},Gt={[b.address.toLowerCase()]:"USDCe",[D.address.toLowerCase()]:"USDCe",[S.address.toLowerCase()]:"USDCe"},Yt={[e.mainnet.id]:M,[e.optimism.id]:I,[e.base.id]:E,[e.polygon.id]:f,[e.arbitrum.id]:m},Kt={[e.optimism.id]:y,[e.base.id]:ue,[e.polygon.id]:R,[e.arbitrum.id]:o,[e.mainnet.id]:O},Xt={[e.optimism.id]:{WETH:I,USDC:me,WBTC:y,USDCe:D,USDT:Te,DAI:ce},[e.polygon.id]:{WMATIC:Ae,WETH:f,USDC:_e,WBTC:R,USDCe:S,USDT:be,DAI:Ee},[e.arbitrum.id]:{WETH:m,USDC:s,WBTC:o,USDCe:b},[e.base.id]:{WETH:E,USDC:le},[e.mainnet.id]:{WETH:M,USDC:De,WBTC:O,USDT:Ie}},zt="https://hermes.pyth.network",qt="https://flat.money/flatcoin",Zt="https://v1.flat.money/flatcoin",c={RETH_BASE:"0xdb0cd65dcc7fe07003ce1201f91e1f966fa95768",WBTC_OPTIMISM:"0x6d857e9d24a7566bb72a3fb0847a3e0e4e1c2879",WBTC_ARBITRUM:"0xb1353d51991e79fefd4bfdba2a03e9f0232814a6"},$t=Object.values(c),jt={[c.RETH_BASE]:{symbol:T.symbol,decimals:T.decimals,address:T.address},[c.WBTC_OPTIMISM]:{symbol:y.symbol,decimals:y.decimals,address:y.address},[c.WBTC_ARBITRUM]:{symbol:o.symbol,decimals:o.decimals,address:o.address}},fe="0xb95fb324b8a2faf8ec4f76e3df46c718402736e2",Qt=[fe,"0x357cb23571ef7a3d6189b7facfc361ea71f7cab5"],Jt={[e.base.id]:2e3,[e.mainnet.id]:500,[e.optimism.id]:2e3,[e.arbitrum.id]:500,[e.polygon.id]:500,[e.hyperEvm.id]:500},en={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"},tn=["multi_withdraw","swap","claim","single_withdraw_and_claim"],n={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",GOLD_ARBITRUM:"0xeb28ad1a2e497f4acc5d9b87e7b496623c93061e",AAVE_ARBITRUM:"0x1cbba6346f110c8a5ea739ef2d1eb182990e4eb2"},nn=Object.values(n),an={[n.SOL_ARBITRUM]:s,[n.BTC_ARBITRUM]:o,[n.WETH_WETH_ARBITRUM]:m,[n.WETH_USDC_ARBITRUM]:m,[n.SUI_ARBITRUM]:s,[n.DOGE_ARBITRUM]:s,[n.XRP_ARBITRUM]:s,[n.CRV_ARBITRUM]:s,[n.HYPE_ARBITRUM]:s,[n.BNB_ARBITRUM]:s,[n.LINK_ARBITRUM]:s,[n.PUMP_ARBITRUM]:s,[n.BNB_WBTC_USDC_ARBITRUM]:s,[n.GOLD_ARBITRUM]:s,[n.AAVE_ARBITRUM]:s},sn={"0x9a916e55f5b67226734cd7b465d51bce1d11a89a":s};exports.ALCHEMY_RPC_URL_MAP=tt;exports.ALL_SUPPORTED_NETWORKS=pt;exports.AaveLendingPoolAbi=A;exports.AddressZero=w;exports.AddressZero$1=_;exports.BRIDGED_TOKENS_SYMBOLS=Gt;exports.BRIDGED_USDC_ARBITRUM=b;exports.BRIDGED_USDC_OPTIMISM=D;exports.BRIDGED_USDC_POLYGON=S;exports.CBBTC_BASE=ue;exports.CBETH_BASE=Nt;exports.CHAIN_MAP=Qe;exports.CHAIN_NATIVE_TOKENS=Je;exports.COMPLETE_WITHDRAW_ACTIONS=tn;exports.CURRENCY_DECIMALS_MAP=at;exports.CURRENCY_SYMBOL_MAP=nt;exports.ComplexWithdrawalAssetSrcDataAbiItem=Tt;exports.ComplexWithdrawalDataAbiItem=ct;exports.DAI_OPTIMISM=ce;exports.DAI_POLYGON=Ee;exports.DEFAULT_DEBOUNCE_TIME=L;exports.DEFAULT_DEPOSIT_METHOD=ve;exports.DEFAULT_DEPOSIT_SLIPPAGE=P;exports.DEFAULT_DEPOSIT_SLIPPAGE_SCALE=Fe;exports.DEFAULT_ERROR_MESSAGE=Dt;exports.DEFAULT_LOCK_TIME=Ce;exports.DEFAULT_MAX_GAS_LIMIT=d;exports.DEFAULT_MULTI_ASSET_WITHDRAW_METHOD=Ve;exports.DEFAULT_NOTIFICATION_DURATION_MS=je;exports.DEFAULT_NO_SWAP_MIN_DEPOSIT_AMOUNT_GAP=xe;exports.DEFAULT_POLLING_INTERVAL=Le;exports.DEFAULT_PRECISION=p;exports.DEFAULT_PRECISION$1=t;exports.DEFAULT_PROMISE_TIMEOUT_MS=qe;exports.DEFAULT_RECEIVED_VALUE_GAP=Be;exports.DEFAULT_SIMULATION_ERROR=It;exports.DEFAULT_SWAP_TRANSACTION_SLIPPAGE=We;exports.DEFAULT_VAULT_TOKEN_PRICE=Oe;exports.DEFAULT_VISIBLE_ASSETS_LIMIT=Ze;exports.DEFAULT_WITHDRAW_SLIPPAGE=Ue;exports.DEPOSIT_SWAP_DATA_ERROR=ie;exports.EASY_SWAPPER_V2_COMPLETE_WITHDRAW_METHOD=Ye;exports.EASY_SWAPPER_V2_DEPOSIT_METHODS=en;exports.EASY_SWAPPER_V2_INITIATE_WITHDRAW_METHOD=ke;exports.EASY_SWAPPER_V2_UNROLL_AND_CLAIM_METHOD=Ge;exports.EMPTY_POOL_CONFIG=ge;exports.EXTENDED_DEBOUNCE_TIME=Ne;exports.EXTENDED_POLLING_INTERVAL=we;exports.EXTREMELY_SHORT_POLLING_INTERVAL=he;exports.EasySwapperV2Abi=ae;exports.FALLBACK_ASSETS_MAP=Xt;exports.FLATMONEY_DHT_STAKING_VAULT_ADDRESS_BASE=yt;exports.FLATMONEY_EARLY_DEPOSITOR_VAULT_ADDRESS_BASE=ot;exports.FLAT_MONEY_COLLATERAL_MAP=jt;exports.FLAT_MONEY_LEVERAGED_ASSET_ADDRESSES=$t;exports.FLAT_MONEY_UNIT_ADDRESSES=Qt;exports.FLAT_MONEY_UNIT_LINK=qt;exports.FLAT_MONEY_V1_UNIT_ADDRESS=fe;exports.FLAT_MONEY_V1_UNIT_LINK=Zt;exports.FlatcoinPointsModuleAbi=ne;exports.GAS_ESTIMATION_ERROR=Et;exports.GAS_LIMIT_BUFFER_COEFF=Xe;exports.GMX_MARKET_ASSETS=nn;exports.GMX_MARKET_ASSETS_MAP=n;exports.GMX_WITHDRAW_ASSET_MAP=an;exports.GMX_WITHDRAW_ASSET_MAP_BY_VAULT_ADDRESS=sn;exports.INVALID_PRICES_LIMIT_ORDER_TITLE=oe;exports.LIMIT_ORDER_TRANSACTION_ERRORS=ye;exports.LINK_ARBITRUM=Pt;exports.LINK_OPTIMISM=xt;exports.LOG_EVENT_BY_TRANSACTION_ACTION_MAP=it;exports.LimitOrderAbi=se;exports.MANAGER_FEE_DENOMINATOR=ze;exports.MAX_GAS_LIMIT_MAP=et;exports.MULTI_ASSET_TOKEN=kt;exports.MULTI_CHAIN_SWAPPER_CONTRACT_ADDRESS=mt;exports.MaxUint256=Me;exports.NATIVE_TOKEN_DEPOSIT_GAS_LIMIT=Ke;exports.PAXG_POLYGON=Ft;exports.PYTH_API_LINK=zt;exports.PoolFactoryAbi=Q;exports.PoolLogicAbi=J;exports.PoolManagerLogicAbi=ee;exports.RETH_BASE=T;exports.RewardDistributionAbi=te;exports.SETH_OPTIMISM=Ut;exports.SHORTEN_POLLING_INTERVAL=Pe;exports.SIMULATION_TIMEOUT_ERROR=ft;exports.SLIPPAGE_AUTO_SIMULATION_CANDIDATES=He;exports.STABLE_TOKEN_SYMBOLS=st;exports.SUSD_OPTIMISM=vt;exports.SWAP_FAILED_ERROR=pe;exports.SWAP_QUOTE_REFRESH_INTERVAL_MS=$e;exports.TBTC_ARBITRUM=Rt;exports.TBTC_BASE=Ct;exports.TBTC_OPTIMISM=Bt;exports.TBTC_POLYGON=Ht;exports.TRADING_LOG_EVENT_PARAM=rt;exports.TRADING_PANEL_LOG_EVENT=a;exports.TRANSACTION_ERRORS=de;exports.TRANSACTION_ERROR_KEYS=St;exports.TRANSACTION_SETTLE_DELAY=Jt;exports.USDCBC_BASE=ht;exports.USDC_ARBITRUM=s;exports.USDC_BASE=le;exports.USDC_MAINNET=De;exports.USDC_OPTIMISM=me;exports.USDC_POLYGON=_e;exports.USDT_ARBITRUM=Ot;exports.USDT_MAINNET=Ie;exports.USDT_OPTIMISM=Te;exports.USDT_POLYGON=be;exports.WBNB_ARBITRUM=Lt;exports.WBTC_ARBITRUM=o;exports.WBTC_BY_CHAIN_ID=Kt;exports.WBTC_MAINNET=O;exports.WBTC_OPTIMISM=y;exports.WBTC_POLYGON=R;exports.WETH_ARBITRUM=m;exports.WETH_BASE=E;exports.WETH_BY_CHAIN_ID=Yt;exports.WETH_MAINNET=M;exports.WETH_OPTIMISM=I;exports.WETH_POLYGON=f;exports.WITHDRAW_SWAP_DATA_ERROR=re;exports.WPOL_POLYGON=Ae;exports.WSOL_ARBITRUM=wt;exports.WSTETH_ARBITRUM=Mt;exports.WSTETH_BASE=gt;exports.WSTETH_OPTIMISM=Wt;exports.XAUT_MAINNET=Vt;exports.contractsAbisMap=bt;exports.contractsAddressesMap=At;
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
"use strict";const c=require("bignumber.js"),o=require("./gmx-Ccmxx2kU.cjs"),T=require("viem"),U=()=>typeof window<"u";function $(){return U()&&typeof window.ethereum<"u"}async function G(t){try{if($())return window.ethereum.request({method:"wallet_watchAsset",params:{type:"ERC20",options:t}})}catch{return!1}return!1}const A=(t,e)=>t?.toLowerCase()===e?.toLowerCase(),V=t=>A(t,o.AddressZero$1),w=(t,e)=>o.contractsAddressesMap[e]?.[t]??o.AddressZero,K=t=>o.contractsAbisMap[t],Y=t=>t&&`${t.substring(0,6)}...${t.substring(t.length-4,t.length)}`,Z=({address:t,chainId:e})=>{const r=w("aaveLendingPoolV3",e);return A(t,r)},y=({sourceAddress:t,amount:e})=>`${t}_${e}`,k=(t,e)=>{const r=t.slice(0,e),n=t.slice(e);return{firstPart:r,secondPart:n}},N=(t,e)=>t/e*100,H=t=>t<1?4:t<10?3:2,q=(t,e=o.DEFAULT_PRECISION)=>new c(t.toString()).shiftedBy(e).toFixed(0),Q=(t,e,r,n)=>new c(e).dividedBy(r).multipliedBy(t).shiftedBy(-(n||o.DEFAULT_PRECISION)).toNumber(),z=t=>BigInt(new c(t||"0").shiftedBy(o.DEFAULT_PRECISION).toFixed(0,c.ROUND_DOWN)),h=t=>{const e=new c(.01),r=new c(t),n=!r.isZero()&&r.lt(e)?e:r;return BigInt(n.multipliedBy(100).toFixed(0))},j=({vaultAddress:t,swapData:e,sendTokenAddress:r,sendTokenAmount:n,vaultDepositTokenAddress:s,minVaultTokensReceivedAmount:a,routerKey:i="ONE_INCH",swapDestinationAmount:u,swapSlippage:d})=>{const l=new c(u).multipliedBy(1-d/100).toFixed(0),m=[T.stringToHex(i,{size:32}),e];return[t,[[r,n,m],[s,l]],a]},X=({receiveAssetAddress:t,assets:e,swapData:r,slippage:n})=>{const s={srcData:[],destAmount:new c("0")},{srcData:a,destAmount:i}=e?.reduce((u,d)=>{const l=r?.[d.address];if(!l)return u;const m=[T.stringToHex(l.routerKey,{size:32}),l.rawTransaction.data],g=[d.address,d.rawBalance,m];return{srcData:[...u.srcData,g],destAmount:u.destAmount.plus(l.destinationAmount)}},s)??s;return[a,[t,i.times(1-n/100).toFixed(0,c.ROUND_DOWN)]]},I=({assetAddress:t,swapQuotes:e,swapParams:r,slippageToleranceForContractTransaction:n,routerKey:s})=>{if(!r)return{supportedAsset:t,withdrawData:"",slippageTolerance:BigInt(0)};const{srcData:a,dstData:i}=r,u=a.map(({asset:m,amount:g})=>{const p=e?.[y({sourceAddress:m,amount:g.toString()})]?.find(W=>W.routerKey===s);return{asset:m,amount:g,swapData:{routerKey:T.stringToHex(p?.routerKey??"",{size:32}),txData:p?.rawTransaction.data??"0x"}}}),d=T.encodeAbiParameters(o.ComplexWithdrawalAssetSrcDataAbiItem,[u]),l=T.encodeAbiParameters(o.ComplexWithdrawalDataAbiItem,[{encodedSrcData:d,dstData:{dstAddress:i.asset,dstAmount:i.amount},slippage:n}]);return{supportedAsset:t,withdrawData:l,slippageTolerance:n}},J=(t,e)=>o.CHAIN_NATIVE_TOKENS[e]?.nativeTokenSymbol===t,tt=({nativeTokenBalance:t,tokenDecimals:e,gasPrice:r})=>{const n=new c(r).multipliedBy(o.NATIVE_TOKEN_DEPOSIT_GAS_LIMIT).shiftedBy(-e),s=new c(t).minus(n);return s.gt("0")?s:new c("0")},et=t=>o.STABLE_TOKEN_SYMBOLS.includes(t),rt=t=>{const e=Object.values(t).reduce((r,{type:n})=>(r[n]=r[n]+1,r),{string:0,number:0});if(e.string>10)throw new Error("logger params must contain up to 10 string values");if(e.number>40)throw new Error("logger params must contain up to 40 numeric values");return!0},nt=(t,e=150)=>t.length>e?t.substring(0,e):t,S=(t,e=o.TRANSACTION_ERROR_KEYS)=>{const r=t.toLowerCase();return e.sort((n,s)=>s.length-n.length).find(n=>r.includes(n.toLowerCase()))},f=t=>o.TRANSACTION_ERRORS[t]??o.LIMIT_ORDER_TRANSACTION_ERRORS[t],st=({errorMessage:t,abiErrors:e})=>{if(!t||t.includes("User rejected"))return null;const r=e.find(a=>t.includes(a));if(r&&S(r))return f(r);const n=S(t);if(n)return f(n);const[s]=t.split(r?".":"Contract").map(a=>a.trim());return{title:"Transaction failed",hint:`${nt(s??"")} ${r?`: ${r}`:""}`}},ot=t=>typeof t=="number"&&Number.isFinite(t),at=t=>typeof t=="bigint"&&t!==BigInt(0),L=(t,e=o.DEFAULT_PRECISION$1)=>new c(t).shiftedBy(-e).toNumber(),B=t=>!isNaN(parseFloat(t))&&!isNaN(t),b=({value:t,minimumFractionDigits:e=2,maximumFractionDigits:r=2,compact:n=!1,normalize:s=!1})=>new Intl.NumberFormat("en-US",{style:"currency",currency:"USD",notation:n?"compact":void 0,minimumFractionDigits:e,maximumFractionDigits:r}).format(s?L(t):Number(t)),D=t=>B(t)?new c(t).toFixed():"",_=["₀","₁","₂","₃","₄","₅","₆","₇","₈","₉"],R=({value:t,decimals:e=4})=>{const r=new c(t);if(r.isGreaterThan(1)||r.isZero())return D(r.toFixed(e));const s=(/e/i.test(t.toString())?parseFloat(t.toString()).toFixed(o.DEFAULT_PRECISION$1):t.toString()).match(/^0\.(0+)(\d+)$/);if(s){const[,a,i]=s;if(a.length>=e&&a.length<_.length)return`0.0${_[a.length]}${i.slice(0,3)}`}return D(r.toFixed(e))},C=(t,e=0)=>`${t.toLocaleString("en-US",{maximumFractionDigits:e})}%`,it=t=>t.toString().replace(/\B(?=(\d{3})+(?!\d))/g,","),ct=(t,e,r=0)=>{const n=N(+t,e);return C(n,r)},dt=({currency:t,value:e})=>t==="USD"?b({value:e}):`${o.CURRENCY_SYMBOL_MAP[t]} ${R({value:e,decimals:o.CURRENCY_DECIMALS_MAP[t]})}`,F=(t,e)=>new c(new c(t).toFixed(e,c.ROUND_DOWN)).toString(),O=(t,e=3,r=2)=>{if(t.length<=5)return t;const n="...";return t.length<=e+r+n.length?t:`${t.slice(0,e)}${n}${t.slice(-r)}`},ut=({balance:t,symbol:e,precision:r,truncateSymbol:n})=>`${F(t,r)} ${n?O(e):e}`,lt=t=>{if(!t)return;const e=t.match(/0x[a-fA-F0-9]{64}/);if(!e)return;const r=e[0];return`${r.slice(0,4)}...${r.slice(-3)}`},At=typeof window<"u",mt=t=>A(o.FLATMONEY_EARLY_DEPOSITOR_VAULT_ADDRESS_BASE,t)||A(o.FLATMONEY_DHT_STAKING_VAULT_ADDRESS_BASE,t),gt=t=>o.FLAT_MONEY_LEVERAGED_ASSET_ADDRESSES.some(e=>A(e,t)),Tt=t=>o.FLAT_MONEY_COLLATERAL_MAP[t.toLowerCase()]??{symbol:"",decimals:18,address:o.AddressZero},pt=t=>A(t,o.FLAT_MONEY_V1_UNIT_ADDRESS)?o.FLAT_MONEY_V1_UNIT_LINK:o.FLAT_MONEY_UNIT_LINK,v=t=>`eth_${t}`,St=({action:t,log:e,symbol:r,vaultAddress:n,chainId:s})=>{const a={[o.TRADING_LOG_EVENT_PARAM.SYMBOL.NAME]:r,[o.TRADING_LOG_EVENT_PARAM.CHAIN_ID.NAME]:s,[o.TRADING_LOG_EVENT_PARAM.ADDRESS.NAME]:v(n)};o.LOG_EVENT_BY_TRANSACTION_ACTION_MAP[t].forEach(i=>{e?.(i,a)})},Dt=t=>o.GMX_MARKET_ASSETS.some(e=>A(e,t)),ft=t=>o.GMX_WITHDRAW_ASSET_MAP[t.toLowerCase()]??{symbol:"",decimals:18,address:o.AddressZero},_t=t=>o.GMX_WITHDRAW_ASSET_MAP_BY_VAULT_ADDRESS[t.toLowerCase()],M=t=>{const e=t.find(({swapQuotes:r})=>r);return e?.swapQuotes?Object.values(e.swapQuotes)[0]?.map(({routerKey:r})=>r)??[]:[]},P=(t,e,r)=>t.map(({asset:n,swapParams:s,swapQuotes:a})=>!s||!a?{supportedAsset:n,withdrawData:"",slippageTolerance:r}:I({assetAddress:n,swapQuotes:a,swapParams:s,slippageToleranceForContractTransaction:r,routerKey:e})),x=async(t,e,r,n,s)=>{for(const a of t){const i=P(e,a,r),{error:u}=await n(...s,i);if(!u)return i}return null},Et=(t,e)=>(t??[]).map(r=>({supportedAsset:r,withdrawData:"",slippageTolerance:e})),wt=async(t,e,r,n)=>{for(const s of t){const a=h(s);try{const i=await e(s),u=M(i),d=await x(u,i,a,r,n);if(d)return console.debug(`[Init Withdraw] Auto slippage simulation succeeded: slippage=${s}%`),console.debug("[Init Withdraw] Complex asset data:",d),d}catch(i){console.error(`[Init Withdraw] Failed to fetch quotes for slippage=${s}%:`,i)}}return null},yt=async(t,e,{fetchAaveSwapParams:r,fetchAaveSwapQuotes:n,withdrawAmountD18:s,slippage:a})=>Promise.all((t??[]).map(async i=>{if(!A(i,e))return{asset:i};try{const d=await r({withdrawAmountD18:s,slippage:a});if(d?.srcData.length){const l=await n({swapParams:d,slippage:a});return{asset:i,swapParams:d,swapQuotes:l}}return{asset:i}}catch(d){return console.error(d),{asset:i}}})),E=t=>Math.round(t*100)/100,Nt=({maxSlippage:t,candidates:e=o.SLIPPAGE_AUTO_SIMULATION_CANDIDATES})=>{if(!Number.isFinite(t)||t<=0)return[];const r=E(Math.min(t,100)),n=e.filter(a=>a>0&&a<=r).map(E),s=new Set(n);return s.add(r),s.add(t),Array.from(s).sort((a,i)=>a-i)};exports.addTokenToWallet=G;exports.buildAaveWithdrawAssetTransactionData=I;exports.buildComplexAssetDataForRouter=P;exports.buildSwapQuoteKeyForAave=y;exports.buildSwapWithdrawTransactionData=X;exports.buildZapDepositTransactionArguments=j;exports.clientSide=At;exports.commify=it;exports.createDefaultComplexAssetData=Et;exports.enrichAssetsWithSwapQuotes=yt;exports.extractAvailableRouterKeys=M;exports.formatBalance=F;exports.formatByCurrency=dt;exports.formatNumberToLimitedDecimals=R;exports.formatNumeratorToPercentage=ct;exports.formatPercentage=C;exports.formatToUsd=b;exports.formatTokenBalance=ut;exports.getAutoSlippageSimulationCandidates=Nt;exports.getContractAbiById=K;exports.getContractAddressById=w;exports.getConventionalTokenPriceDecimals=H;exports.getErrorKey=S;exports.getFlatMoneyCollateralByLeverageAddress=Tt;exports.getFlatMoneyLinkByUnitAddress=pt;exports.getGmxWithdrawAssetByLeverageAddress=ft;exports.getGmxWithdrawAssetByVaultAddress=_t;exports.getNativeTokenInvestableBalance=tt;exports.getPercent=N;exports.getPoolFraction=Q;exports.getSlippageToleranceForContractTransaction=h;exports.getTxHashShort=lt;exports.isAaveLendAndBorrowAsset=Z;exports.isEqualAddress=A;exports.isFlatMoneyLeveragedAsset=gt;exports.isFmpAirdropVaultAddress=mt;exports.isGmxLeveragedAsset=Dt;exports.isNativeToken=J;exports.isNumberType=ot;exports.isNumeric=B;exports.isStableSymbol=et;exports.isZeroAddress=V;exports.logTransactionByActionType=St;exports.nonZeroBigInt=at;exports.normalizeNumber=L;exports.parseAmountToD18=z;exports.parseContractErrorMessage=st;exports.removeInsignificantTrailingZeros=D;exports.shiftBy=q;exports.shortenAddress=Y;exports.sliceByIndex=k;exports.transformAddressForAnalytics=v;exports.truncateString=O;exports.tryEstimateWithRouters=x;exports.tryEstimateWithSlippageValues=wt;exports.validateLoggerEventParams=rt;
|
|
@@ -1,400 +0,0 @@
|
|
|
1
|
-
import i from "bignumber.js";
|
|
2
|
-
import { ak as L, ai as R, aj as b, a as T, p as S, al as B, am as O, a2 as C, b as F, a7 as M, ad as P, ac as $, Y as v, an as y, e as x, d as U, L as W, Q as K, O as V, ao as Y, ap as G, P as Z, M as H, aa as g, Z as Q, V as k, W as j, T as z, a6 as q } from "./gmx-k2GEQom-.js";
|
|
3
|
-
import { stringToHex as f, encodeAbiParameters as _ } from "viem";
|
|
4
|
-
const X = () => typeof window < "u";
|
|
5
|
-
function J() {
|
|
6
|
-
return X() && typeof window.ethereum < "u";
|
|
7
|
-
}
|
|
8
|
-
async function wt(t) {
|
|
9
|
-
try {
|
|
10
|
-
if (J())
|
|
11
|
-
return window.ethereum.request({
|
|
12
|
-
method: "wallet_watchAsset",
|
|
13
|
-
params: {
|
|
14
|
-
type: "ERC20",
|
|
15
|
-
options: t
|
|
16
|
-
}
|
|
17
|
-
});
|
|
18
|
-
} catch {
|
|
19
|
-
return !1;
|
|
20
|
-
}
|
|
21
|
-
return !1;
|
|
22
|
-
}
|
|
23
|
-
const l = (t, e) => t?.toLowerCase() === e?.toLowerCase(), Dt = (t) => l(t, L), tt = (t, e) => b[e]?.[t] ?? T, Et = (t) => R[t], Nt = (t) => t && `${t.substring(0, 6)}...${t.substring(
|
|
24
|
-
t.length - 4,
|
|
25
|
-
t.length
|
|
26
|
-
)}`, ht = ({
|
|
27
|
-
address: t,
|
|
28
|
-
chainId: e
|
|
29
|
-
}) => {
|
|
30
|
-
const s = tt(
|
|
31
|
-
"aaveLendingPoolV3",
|
|
32
|
-
e
|
|
33
|
-
);
|
|
34
|
-
return l(t, s);
|
|
35
|
-
}, et = ({
|
|
36
|
-
sourceAddress: t,
|
|
37
|
-
amount: e
|
|
38
|
-
}) => `${t}_${e}`, yt = (t, e) => {
|
|
39
|
-
const s = t.slice(0, e), a = t.slice(e);
|
|
40
|
-
return { firstPart: s, secondPart: a };
|
|
41
|
-
}, st = (t, e) => t / e * 100, It = (t) => t < 1 ? 4 : t < 10 ? 3 : 2, Lt = (t, e = S) => new i(t.toString()).shiftedBy(e).toFixed(0), Rt = (t, e, s, a) => new i(e).dividedBy(s).multipliedBy(t).shiftedBy(-(a || S)).toNumber(), bt = (t) => BigInt(
|
|
42
|
-
new i(t || "0").shiftedBy(S).toFixed(0, i.ROUND_DOWN)
|
|
43
|
-
), at = (t) => {
|
|
44
|
-
const e = new i(0.01), s = new i(t), a = !s.isZero() && s.lt(e) ? e : s;
|
|
45
|
-
return BigInt(a.multipliedBy(100).toFixed(0));
|
|
46
|
-
}, Bt = ({
|
|
47
|
-
vaultAddress: t,
|
|
48
|
-
swapData: e,
|
|
49
|
-
sendTokenAddress: s,
|
|
50
|
-
sendTokenAmount: a,
|
|
51
|
-
vaultDepositTokenAddress: n,
|
|
52
|
-
minVaultTokensReceivedAmount: r,
|
|
53
|
-
routerKey: o = "ONE_INCH",
|
|
54
|
-
swapDestinationAmount: u,
|
|
55
|
-
swapSlippage: c
|
|
56
|
-
}) => {
|
|
57
|
-
const d = new i(u).multipliedBy(1 - c / 100).toFixed(0), A = [f(o, { size: 32 }), e];
|
|
58
|
-
return [t, [[s, a, A], [n, d]], r];
|
|
59
|
-
}, Ot = ({
|
|
60
|
-
receiveAssetAddress: t,
|
|
61
|
-
assets: e,
|
|
62
|
-
swapData: s,
|
|
63
|
-
slippage: a
|
|
64
|
-
}) => {
|
|
65
|
-
const n = {
|
|
66
|
-
srcData: [],
|
|
67
|
-
destAmount: new i("0")
|
|
68
|
-
}, { srcData: r, destAmount: o } = e?.reduce((u, c) => {
|
|
69
|
-
const d = s?.[c.address];
|
|
70
|
-
if (!d)
|
|
71
|
-
return u;
|
|
72
|
-
const A = [
|
|
73
|
-
f(d.routerKey, { size: 32 }),
|
|
74
|
-
d.rawTransaction.data
|
|
75
|
-
], m = [c.address, c.rawBalance, A];
|
|
76
|
-
return {
|
|
77
|
-
srcData: [...u.srcData, m],
|
|
78
|
-
destAmount: u.destAmount.plus(d.destinationAmount)
|
|
79
|
-
};
|
|
80
|
-
}, n) ?? n;
|
|
81
|
-
return [
|
|
82
|
-
r,
|
|
83
|
-
[
|
|
84
|
-
t,
|
|
85
|
-
o.times(1 - a / 100).toFixed(0, i.ROUND_DOWN)
|
|
86
|
-
]
|
|
87
|
-
];
|
|
88
|
-
}, nt = ({
|
|
89
|
-
assetAddress: t,
|
|
90
|
-
swapQuotes: e,
|
|
91
|
-
swapParams: s,
|
|
92
|
-
slippageToleranceForContractTransaction: a,
|
|
93
|
-
routerKey: n
|
|
94
|
-
}) => {
|
|
95
|
-
if (!s)
|
|
96
|
-
return {
|
|
97
|
-
supportedAsset: t,
|
|
98
|
-
withdrawData: "",
|
|
99
|
-
slippageTolerance: BigInt(0)
|
|
100
|
-
};
|
|
101
|
-
const { srcData: r, dstData: o } = s, u = r.map(({ asset: A, amount: m }) => {
|
|
102
|
-
const p = e?.[et({
|
|
103
|
-
sourceAddress: A,
|
|
104
|
-
amount: m.toString()
|
|
105
|
-
})]?.find((I) => I.routerKey === n);
|
|
106
|
-
return {
|
|
107
|
-
asset: A,
|
|
108
|
-
amount: m,
|
|
109
|
-
swapData: {
|
|
110
|
-
routerKey: f(p?.routerKey ?? "", { size: 32 }),
|
|
111
|
-
txData: p?.rawTransaction.data ?? "0x"
|
|
112
|
-
}
|
|
113
|
-
};
|
|
114
|
-
}), c = _(
|
|
115
|
-
B,
|
|
116
|
-
[u]
|
|
117
|
-
), d = _(O, [
|
|
118
|
-
{
|
|
119
|
-
encodedSrcData: c,
|
|
120
|
-
dstData: {
|
|
121
|
-
dstAddress: o.asset,
|
|
122
|
-
dstAmount: o.amount
|
|
123
|
-
},
|
|
124
|
-
slippage: a
|
|
125
|
-
}
|
|
126
|
-
]);
|
|
127
|
-
return {
|
|
128
|
-
supportedAsset: t,
|
|
129
|
-
withdrawData: d,
|
|
130
|
-
slippageTolerance: a
|
|
131
|
-
};
|
|
132
|
-
}, Ct = (t, e) => F[e]?.nativeTokenSymbol === t, Ft = ({
|
|
133
|
-
nativeTokenBalance: t,
|
|
134
|
-
tokenDecimals: e,
|
|
135
|
-
gasPrice: s
|
|
136
|
-
}) => {
|
|
137
|
-
const a = new i(s).multipliedBy(C).shiftedBy(-e), n = new i(t).minus(
|
|
138
|
-
a
|
|
139
|
-
);
|
|
140
|
-
return n.gt("0") ? n : new i("0");
|
|
141
|
-
}, Mt = (t) => M.includes(t), Pt = (t) => {
|
|
142
|
-
const e = Object.values(t).reduce(
|
|
143
|
-
(s, { type: a }) => (s[a] = s[a] + 1, s),
|
|
144
|
-
{ string: 0, number: 0 }
|
|
145
|
-
);
|
|
146
|
-
if (e.string > 10)
|
|
147
|
-
throw new Error("logger params must contain up to 10 string values");
|
|
148
|
-
if (e.number > 40)
|
|
149
|
-
throw new Error("logger params must contain up to 40 numeric values");
|
|
150
|
-
return !0;
|
|
151
|
-
}, rt = (t, e = 150) => t.length > e ? t.substring(0, e) : t, w = (t, e = P) => {
|
|
152
|
-
const s = t.toLowerCase();
|
|
153
|
-
return e.sort((a, n) => n.length - a.length).find((a) => s.includes(a.toLowerCase()));
|
|
154
|
-
}, D = (t) => $[t] ?? v[t], $t = ({
|
|
155
|
-
errorMessage: t,
|
|
156
|
-
abiErrors: e
|
|
157
|
-
}) => {
|
|
158
|
-
if (!t || t.includes("User rejected"))
|
|
159
|
-
return null;
|
|
160
|
-
const s = e.find((r) => t.includes(r));
|
|
161
|
-
if (s && w(s))
|
|
162
|
-
return D(s);
|
|
163
|
-
const a = w(t);
|
|
164
|
-
if (a)
|
|
165
|
-
return D(a);
|
|
166
|
-
const [n] = t.split(s ? "." : "Contract").map((r) => r.trim());
|
|
167
|
-
return {
|
|
168
|
-
title: "Transaction failed",
|
|
169
|
-
hint: `${rt(n ?? "")} ${s ? `: ${s}` : ""}`
|
|
170
|
-
};
|
|
171
|
-
}, vt = (t) => typeof t == "number" && Number.isFinite(t), xt = (t) => typeof t == "bigint" && t !== BigInt(0), ot = (t, e = y) => new i(t).shiftedBy(-e).toNumber(), it = (t) => !isNaN(parseFloat(t)) && !isNaN(t), ct = ({
|
|
172
|
-
value: t,
|
|
173
|
-
minimumFractionDigits: e = 2,
|
|
174
|
-
maximumFractionDigits: s = 2,
|
|
175
|
-
compact: a = !1,
|
|
176
|
-
normalize: n = !1
|
|
177
|
-
}) => new Intl.NumberFormat("en-US", {
|
|
178
|
-
style: "currency",
|
|
179
|
-
currency: "USD",
|
|
180
|
-
notation: a ? "compact" : void 0,
|
|
181
|
-
minimumFractionDigits: e,
|
|
182
|
-
maximumFractionDigits: s
|
|
183
|
-
}).format(n ? ot(t) : Number(t)), E = (t) => it(t) ? new i(t).toFixed() : "", N = ["₀", "₁", "₂", "₃", "₄", "₅", "₆", "₇", "₈", "₉"], ut = ({
|
|
184
|
-
value: t,
|
|
185
|
-
decimals: e = 4
|
|
186
|
-
}) => {
|
|
187
|
-
const s = new i(t);
|
|
188
|
-
if (s.isGreaterThan(1) || s.isZero())
|
|
189
|
-
return E(s.toFixed(e));
|
|
190
|
-
const n = (/e/i.test(t.toString()) ? parseFloat(t.toString()).toFixed(y) : t.toString()).match(/^0\.(0+)(\d+)$/);
|
|
191
|
-
if (n) {
|
|
192
|
-
const [, r, o] = n;
|
|
193
|
-
if (r.length >= e && r.length < N.length)
|
|
194
|
-
return `0.0${N[r.length]}${o.slice(0, 3)}`;
|
|
195
|
-
}
|
|
196
|
-
return E(s.toFixed(e));
|
|
197
|
-
}, dt = (t, e = 0) => `${t.toLocaleString("en-US", { maximumFractionDigits: e })}%`, Ut = (t) => t.toString().replace(/\B(?=(\d{3})+(?!\d))/g, ","), Wt = (t, e, s = 0) => {
|
|
198
|
-
const a = st(+t, e);
|
|
199
|
-
return dt(a, s);
|
|
200
|
-
}, Kt = ({
|
|
201
|
-
currency: t,
|
|
202
|
-
value: e
|
|
203
|
-
}) => t === "USD" ? ct({ value: e }) : `${x[t]} ${ut({
|
|
204
|
-
value: e,
|
|
205
|
-
decimals: U[t]
|
|
206
|
-
})}`, lt = (t, e) => new i(
|
|
207
|
-
new i(t).toFixed(e, i.ROUND_DOWN)
|
|
208
|
-
).toString(), At = (t, e = 3, s = 2) => {
|
|
209
|
-
if (t.length <= 5)
|
|
210
|
-
return t;
|
|
211
|
-
const a = "...";
|
|
212
|
-
return t.length <= e + s + a.length ? t : `${t.slice(0, e)}${a}${t.slice(-s)}`;
|
|
213
|
-
}, Vt = ({
|
|
214
|
-
balance: t,
|
|
215
|
-
symbol: e,
|
|
216
|
-
precision: s,
|
|
217
|
-
truncateSymbol: a
|
|
218
|
-
}) => `${lt(t, s)} ${a ? At(e) : e}`, Yt = (t) => {
|
|
219
|
-
if (!t)
|
|
220
|
-
return;
|
|
221
|
-
const e = t.match(/0x[a-fA-F0-9]{64}/);
|
|
222
|
-
if (!e)
|
|
223
|
-
return;
|
|
224
|
-
const s = e[0];
|
|
225
|
-
return `${s.slice(0, 4)}...${s.slice(-3)}`;
|
|
226
|
-
}, Gt = typeof window < "u", Zt = (t) => l(Y, t) || l(G, t), Ht = (t) => H.some(
|
|
227
|
-
(e) => l(e, t)
|
|
228
|
-
), Qt = (t) => W[t.toLowerCase()] ?? {
|
|
229
|
-
symbol: "",
|
|
230
|
-
decimals: 18,
|
|
231
|
-
address: T
|
|
232
|
-
}, kt = (t) => l(t, Z) ? K : V, mt = (t) => `eth_${t}`, jt = ({
|
|
233
|
-
action: t,
|
|
234
|
-
log: e,
|
|
235
|
-
symbol: s,
|
|
236
|
-
vaultAddress: a,
|
|
237
|
-
chainId: n
|
|
238
|
-
}) => {
|
|
239
|
-
const r = {
|
|
240
|
-
[g.SYMBOL.NAME]: s,
|
|
241
|
-
[g.CHAIN_ID.NAME]: n,
|
|
242
|
-
[g.ADDRESS.NAME]: mt(a)
|
|
243
|
-
};
|
|
244
|
-
Q[t].forEach((o) => {
|
|
245
|
-
e?.(o, r);
|
|
246
|
-
});
|
|
247
|
-
}, zt = (t) => z.some((e) => l(e, t)), qt = (t) => k[t.toLowerCase()] ?? {
|
|
248
|
-
symbol: "",
|
|
249
|
-
decimals: 18,
|
|
250
|
-
address: T
|
|
251
|
-
}, Xt = (t) => j[t.toLowerCase()], pt = (t) => {
|
|
252
|
-
const e = t.find(
|
|
253
|
-
({ swapQuotes: s }) => s
|
|
254
|
-
);
|
|
255
|
-
return e?.swapQuotes ? Object.values(e.swapQuotes)[0]?.map(
|
|
256
|
-
({ routerKey: s }) => s
|
|
257
|
-
) ?? [] : [];
|
|
258
|
-
}, gt = (t, e, s) => t.map(({ asset: a, swapParams: n, swapQuotes: r }) => !n || !r ? {
|
|
259
|
-
supportedAsset: a,
|
|
260
|
-
withdrawData: "",
|
|
261
|
-
slippageTolerance: s
|
|
262
|
-
} : nt({
|
|
263
|
-
assetAddress: a,
|
|
264
|
-
swapQuotes: r,
|
|
265
|
-
swapParams: n,
|
|
266
|
-
slippageToleranceForContractTransaction: s,
|
|
267
|
-
routerKey: e
|
|
268
|
-
})), Tt = async (t, e, s, a, n) => {
|
|
269
|
-
for (const r of t) {
|
|
270
|
-
const o = gt(
|
|
271
|
-
e,
|
|
272
|
-
r,
|
|
273
|
-
s
|
|
274
|
-
), { error: u } = await a(...n, o);
|
|
275
|
-
if (!u)
|
|
276
|
-
return o;
|
|
277
|
-
}
|
|
278
|
-
return null;
|
|
279
|
-
}, Jt = (t, e) => (t ?? []).map((s) => ({
|
|
280
|
-
supportedAsset: s,
|
|
281
|
-
withdrawData: "",
|
|
282
|
-
slippageTolerance: e
|
|
283
|
-
})), te = async (t, e, s, a) => {
|
|
284
|
-
for (const n of t) {
|
|
285
|
-
const r = at(n);
|
|
286
|
-
try {
|
|
287
|
-
const o = await e(n), u = pt(
|
|
288
|
-
o
|
|
289
|
-
), c = await Tt(
|
|
290
|
-
u,
|
|
291
|
-
o,
|
|
292
|
-
r,
|
|
293
|
-
s,
|
|
294
|
-
a
|
|
295
|
-
);
|
|
296
|
-
if (c)
|
|
297
|
-
return console.debug(
|
|
298
|
-
`[Init Withdraw] Auto slippage simulation succeeded: slippage=${n}%`
|
|
299
|
-
), console.debug("[Init Withdraw] Complex asset data:", c), c;
|
|
300
|
-
} catch (o) {
|
|
301
|
-
console.error(
|
|
302
|
-
`[Init Withdraw] Failed to fetch quotes for slippage=${n}%:`,
|
|
303
|
-
o
|
|
304
|
-
);
|
|
305
|
-
}
|
|
306
|
-
}
|
|
307
|
-
return null;
|
|
308
|
-
}, ee = async (t, e, {
|
|
309
|
-
fetchAaveSwapParams: s,
|
|
310
|
-
fetchAaveSwapQuotes: a,
|
|
311
|
-
withdrawAmountD18: n,
|
|
312
|
-
slippage: r
|
|
313
|
-
}) => Promise.all(
|
|
314
|
-
(t ?? []).map(async (o) => {
|
|
315
|
-
if (!l(o, e))
|
|
316
|
-
return { asset: o };
|
|
317
|
-
try {
|
|
318
|
-
const c = await s({
|
|
319
|
-
withdrawAmountD18: n,
|
|
320
|
-
slippage: r
|
|
321
|
-
});
|
|
322
|
-
if (c?.srcData.length) {
|
|
323
|
-
const d = await a({
|
|
324
|
-
swapParams: c,
|
|
325
|
-
slippage: r
|
|
326
|
-
});
|
|
327
|
-
return { asset: o, swapParams: c, swapQuotes: d };
|
|
328
|
-
}
|
|
329
|
-
return { asset: o };
|
|
330
|
-
} catch (c) {
|
|
331
|
-
return console.error(c), { asset: o };
|
|
332
|
-
}
|
|
333
|
-
})
|
|
334
|
-
), h = (t) => Math.round(t * 100) / 100, se = ({
|
|
335
|
-
maxSlippage: t,
|
|
336
|
-
candidates: e = q
|
|
337
|
-
}) => {
|
|
338
|
-
if (!Number.isFinite(t) || t <= 0)
|
|
339
|
-
return [];
|
|
340
|
-
const s = h(Math.min(t, 100)), a = e.filter((r) => r > 0 && r <= s).map(h), n = new Set(a);
|
|
341
|
-
return n.add(s), n.add(t), Array.from(n).sort((r, o) => r - o);
|
|
342
|
-
};
|
|
343
|
-
export {
|
|
344
|
-
it as $,
|
|
345
|
-
Yt as A,
|
|
346
|
-
ht as B,
|
|
347
|
-
Ht as C,
|
|
348
|
-
Zt as D,
|
|
349
|
-
zt as E,
|
|
350
|
-
Ct as F,
|
|
351
|
-
Mt as G,
|
|
352
|
-
jt as H,
|
|
353
|
-
bt as I,
|
|
354
|
-
$t as J,
|
|
355
|
-
Lt as K,
|
|
356
|
-
Nt as L,
|
|
357
|
-
yt as M,
|
|
358
|
-
mt as N,
|
|
359
|
-
At as O,
|
|
360
|
-
Tt as P,
|
|
361
|
-
te as Q,
|
|
362
|
-
Pt as R,
|
|
363
|
-
Dt as S,
|
|
364
|
-
vt as T,
|
|
365
|
-
l as U,
|
|
366
|
-
ct as V,
|
|
367
|
-
xt as W,
|
|
368
|
-
ot as X,
|
|
369
|
-
ut as Y,
|
|
370
|
-
wt as Z,
|
|
371
|
-
dt as _,
|
|
372
|
-
gt as a,
|
|
373
|
-
Ut as a0,
|
|
374
|
-
E as a1,
|
|
375
|
-
nt as b,
|
|
376
|
-
et as c,
|
|
377
|
-
Ot as d,
|
|
378
|
-
Bt as e,
|
|
379
|
-
Gt as f,
|
|
380
|
-
Jt as g,
|
|
381
|
-
ee as h,
|
|
382
|
-
pt as i,
|
|
383
|
-
lt as j,
|
|
384
|
-
Kt as k,
|
|
385
|
-
Wt as l,
|
|
386
|
-
Vt as m,
|
|
387
|
-
se as n,
|
|
388
|
-
Et as o,
|
|
389
|
-
tt as p,
|
|
390
|
-
It as q,
|
|
391
|
-
w as r,
|
|
392
|
-
Qt as s,
|
|
393
|
-
kt as t,
|
|
394
|
-
qt as u,
|
|
395
|
-
Xt as v,
|
|
396
|
-
Ft as w,
|
|
397
|
-
st as x,
|
|
398
|
-
Rt as y,
|
|
399
|
-
at as z
|
|
400
|
-
};
|