@berachain/berajs 0.1.0-alpha.5 → 0.1.0-alpha.7

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.
Files changed (39) hide show
  1. package/dist/actions/index.cjs +1 -1
  2. package/dist/actions/index.d.cts +9 -8
  3. package/dist/actions/index.d.ts +9 -8
  4. package/dist/actions/index.mjs +1 -1
  5. package/dist/{chunk-7SDDMT3W.mjs → chunk-B4M3O4CT.mjs} +1 -1
  6. package/dist/{chunk-5N57PBAR.mjs → chunk-JQDPAEK2.mjs} +2 -2
  7. package/dist/{chunk-TYTNDYXV.cjs → chunk-KBW7JTEI.cjs} +1 -1
  8. package/dist/{chunk-QIWSS7FQ.cjs → chunk-LHFVY26H.cjs} +2 -2
  9. package/dist/chunk-OA6KI7XK.mjs +3 -0
  10. package/dist/chunk-SDYUAOO3.cjs +3 -0
  11. package/dist/chunk-XX77QPIR.mjs +1 -0
  12. package/dist/chunk-YKKMWJX5.cjs +1 -0
  13. package/dist/contexts/index.cjs +1 -1
  14. package/dist/contexts/index.d.cts +3 -3
  15. package/dist/contexts/index.d.ts +3 -3
  16. package/dist/contexts/index.mjs +1 -1
  17. package/dist/{HoneyConfigProvider-DJ5cZbB5.d.ts → dex-BD7Bq3pJ.d.ts} +171 -171
  18. package/dist/{HoneyConfigProvider-B7pZiyOD.d.cts → dex-D9U93Ib-.d.cts} +171 -171
  19. package/dist/{getValidatorQueuedOperatorAddress-C2w750UQ.d.ts → getValidatorQueuedOperatorAddress--AXNo9IY.d.ts} +2 -2
  20. package/dist/{getValidatorQueuedOperatorAddress-CfiY8nIA.d.cts → getValidatorQueuedOperatorAddress-BbyH7asf.d.cts} +2 -2
  21. package/dist/hooks/index.cjs +2 -2
  22. package/dist/hooks/index.d.cts +6 -6
  23. package/dist/hooks/index.d.ts +6 -6
  24. package/dist/hooks/index.mjs +2 -2
  25. package/dist/{staking-CimqAVL0.d.ts → staking-DHCsSRru.d.cts} +1 -1
  26. package/dist/{staking-DbIi5eSK.d.cts → staking-DYbVFigB.d.ts} +1 -1
  27. package/dist/types/index.d.cts +4 -4
  28. package/dist/types/index.d.ts +4 -4
  29. package/dist/{useHoneySwapState-BA96cjbO.d.ts → useHoneySwapState-A9cyIoOS.d.cts} +1 -1
  30. package/dist/{useHoneySwapState-BRU2LVkE.d.cts → useHoneySwapState-CW49RVci.d.ts} +1 -1
  31. package/dist/utils/index.cjs +1 -1
  32. package/dist/utils/index.d.cts +4 -4
  33. package/dist/utils/index.d.ts +4 -4
  34. package/dist/utils/index.mjs +1 -1
  35. package/package.json +11 -4
  36. package/dist/chunk-7DPUKGDT.cjs +0 -1
  37. package/dist/chunk-D375ZI2L.cjs +0 -3
  38. package/dist/chunk-FAF7V4O6.mjs +0 -3
  39. package/dist/chunk-HOCEXCQJ.mjs +0 -1
@@ -0,0 +1,3 @@
1
+ import{a as pe,b as Ue,c as Oe,d as X,e as Me,f as B,g as K,h as Le,i as _e,j as He,k as fe,l as v,m as H,n as C,o as ge,p as D,q as Je,r as $e}from"./chunk-AHAZC5K3.mjs";import{a as ee,b as $,c as k,d as he,f as at,g as j}from"./chunk-YKNKCICU.mjs";import{C as te,E as ot,G as nt,L as ke,N as it,a as ye,b as Ke,c as Ye,d as R,e as Xe,i as Ze,j as et,k as tt,q as ie,r as we,w as Ne,x as rt}from"./chunk-B4M3O4CT.mjs";import{a as c,b as Ae,d as ze,e as N}from"./chunk-XX77QPIR.mjs";import{a as Z}from"./chunk-5UFI7X4U.mjs";import{c as be,d as je,e as ne,f as x,g as T}from"./chunk-5GPS724E.mjs";import{formatEther as rr}from"viem";async function vo({sharesAmount:e,vaultAddress:t,publicClient:r}){let a=await r.readContract({address:t,abi:pe,functionName:"convertToAssets",args:[e]});return{raw:a,formatted:rr(a)}}import{formatEther as ar}from"viem";async function No({vaultAddress:e,publicClient:t}){let r=await t.readContract({address:e,abi:pe,functionName:"maxDeposit",args:[e]});return ar(r)}import{InMemoryCache as lr}from"@apollo/client";import{HttpLink as cr}from"@apollo/client/link/http";import{getUriFromLink as ct}from"@berachain/config";import{currentDapp as lt}from"@berachain/config/internal";import ur from"@berachain/graphql/dex/api";import{ApolloClient as or,ServerError as nr}from"@apollo/client";import*as st from"@sentry/nextjs";import{appConfig as ir}from"@berachain/config/internal";var Ce=class extends or{url;constructor(t){super(t),this.url=t.url}async query(t){let r=sr(t.query),a={url:this.url,type:"graphql"},o={"operation.type":"query","operation.source.url":a.url,"operation.source.type":a.type,"operation.source.queryName":r};try{let n=await st.startSpan({name:`GraphQL ${r}`,op:"BeraApolloClient.query",attributes:o},async()=>super.query(t));if(n.error||n.data===void 0)throw new x({level:"fatal",tags:o,message:"Bera Apollo Client: No data returned from query, but error should be thrown since errorPolicy is none"});return{data:n.data}}catch(n){throw!ir.env.isProduction&&console.error("BeraApolloClient error",n),nr.is(n)?new Z({response:n.response,cause:n,statusCode:n.statusCode,endpoint:a,tags:o}):n instanceof TypeError?new Z({level:"fatal",reason:"TypeError",response:n,cause:n,endpoint:a,tags:o}):new Z({response:n,tags:o,cause:n,endpoint:a})}}};function sr(e){return e.definitions.find(r=>r.kind==="OperationDefinition")?.name?.value}import{gql as mr}from"@apollo/client";function dr(e){if(!lt)return e;let t=typeof e=="string"?void 0:e.headers;return{uri:ct(e),headers:{...t,"x-graphql-client-name":`berachain.${lt}.${process.env.NEXT_RUNTIME||"browser"}`,"x-graphql-client-version":`${process.env.VERCEL_TARGET_ENV}.${process.env.VERCEL_GIT_COMMIT_SHA}`}}}function Y(e,{ssrMode:t,inMemoryCacheOptions:r}={}){let a=ct(e),o=typeof e=="string"?void 0:e.headers;return new Ce({url:a,link:new cr({uri:a,headers:o}),defaultOptions:{query:{errorPolicy:"none",fetchPolicy:"no-cache"}},cache:new lr(r),ssrMode:t})}function f(e,{...t}){let{config:r}=c(t);switch(e){case"api":return Y(dr(r.api),{inMemoryCacheOptions:{possibleTypes:ur.possibleTypes}});case"bend.whisk":if(!r.bend.whiskApi)throw new x({message:"Bend whisk API is not configured on this chain",level:"error"});return Y(r.bend.whiskApi);case"honey.subgraph":return Y(r.honey.subgraph);case"pol.subgraph":return Y(r.pol.subgraph);case"governance.subgraph":return Y(r.governance.subgraph);case"blocks.subgraph":return Y(r.blocksSubgraph);case"bex.subgraph":return Y(r.bex.subgraph)}}import{BigNumber as se}from"bignumber.js";import{isAddress as ut,zeroAddress as pr}from"viem";var dt=class e{static PATH_NOT_FOUND_REASON="NO_SWAP_PATHS";notFoundMessages=[];config;chainId;constructor(t={}){let{config:r,chainId:a}=c(t);this.config=r,this.chainId=a}url="";parseAddresses(t,r){if(!ut(t)||!ut(r))throw new x({message:`Invalid address: ${t} or ${r}`,level:"error"});return{tokenInAddress:N(t,"BERA")?this.config.tokens.wbera:t,tokenOutAddress:N(r,"BERA")?this.config.tokens.wbera:r,isTokenInNative:N(t,"BERA"),isTokenOutNative:N(r,"BERA")}}getAmountAfterFees(t,r){if(r===void 0)throw new x({message:"aggregatorsFeeBps is required",level:"error"});let a=new se(t).times(r).dividedBy(1e4).toFixed(0,se.ROUND_DOWN);return new se(t).minus(a).toFixed(0,se.ROUND_DOWN)}getInputData({tokenIn:t,amountIn:r,isNative:a,isPermit2Approval:o=!1,permit2SpenderAddress:n=pr}){return{tokenIn:t,amountIn:BigInt(r),isNative:a,isPermit2Approval:o,permit2SpenderAddress:n}}getMinAmountOut(t,r){if(r===void 0)throw new x({message:"slippage is required",level:"error"});let a=new se(t).times(1-r/100);return a.isNaN()||a.isZero()?0n:BigInt(a.toFixed(0))}checkChainSupport(){if(!this.supportedChains.includes(this.chainId))throw new x({message:`${this.name} is not supported on chain ${this.chainId}`,level:"error"})}async fetch(t,r){try{return await Ke({url:t,name:this.name,type:this.type},{method:"GET",headers:{"Content-Type":"application/json"},...r})}catch(a){let o=ee({cause:a});throw this.notFoundMessages.some(n=>o.message.includes(n))&&(o.reason=e.PATH_NOT_FOUND_REASON),o}}};import{API_CHAIN_NAMES as fr,BALANCER_QUERIES as gr,BALANCER_RELAYER as br,BalancerApi as tn,CHAINS as yr,COMPOSABLE_STABLE_POOL_FACTORY as Ar,NATIVE_ASSETS as hr,Token as wr,VAULT as Cr,WEIGHTED_POOL_FACTORY_BALANCER_V2 as Pr}from"@berachain-foundation/berancer-sdk";import{zeroAddress as Ge}from"viem";import{berachain as mt,berachainBepolia as Br}from"viem/chains";import{chainConfigs as xr}from"@berachain/config/internal";for(let e of Object.keys(xr)){let{config:t,chainId:r}=c({chainId:Number(e)});fr[r]=t.bex.chainName,yr[r]=r===mt.id?mt:Br,br[r]=t.bex.relayer,Cr[r]=t.bex.vault,gr[r]=t.bex.queries,Pr[r]=Ge,Ar[r]=Ge;let a=new wr(r,Ge,Ae.decimals,Ae.name,Ae.symbol,t.tokens.wbera);hr[r]=a}import{GetPools as vr}from"@berachain/graphql/dex/api";import{GqlPoolOrderBy as Rr,GqlPoolOrderDirection as Sr}from"@berachain/graphql/pol/api";async function pn({textSearch:e,chain:t,first:r,orderBy:a,orderDirection:o,skip:n,fetchPolicy:s,userAddress:i,blacklistedPoolIds:l,...u}={}){let{config:m}=c(u),b=await f("api",u).query({query:vr,variables:{textSearch:e,chain:t??m.bex.chainName,first:r,orderBy:a??Rr.TotalLiquidity,orderDirection:o??Sr.Desc,skip:n,userAddress:i,blacklistedPoolIds:l},fetchPolicy:s});return{pools:b.data.poolGetPools??[],count:b.data.count??0}}import{GetPool as Vr}from"@berachain/graphql/dex/api";async function An({poolId:e,account:t,...r}){let{config:a}=c(r),s=(await f("api",r).query({query:Vr,variables:{id:e,userAddress:t,chain:a.bex.chainName},fetchPolicy:"no-cache"})).data.poolGetPool;if(!s)throw new Error(`Pool not found for id: ${e} and user ${t}`);return s}import{GetGlobalLiquidityAndSwapVolume as Nr}from"@berachain/graphql/dex/api";async function Bn(e={}){let{config:t}=c(e);return(await f("api",e).query({query:Nr,variables:{chain:t.bex.chainName}})).data}import{stablePoolAbi_V3 as Gr,vaultV2Abi as Tr,weightedPoolFactoryAbi_V3 as ft,weightedPoolV4Abi_V2 as Pe}from"@berachain-foundation/berancer-sdk";import{erc20Abi as gt,formatEther as bt,formatUnits as Fr,isAddress as Dr,isHex as Ir}from"viem";import{GqlPoolType as yt}from"@berachain/graphql/pol/api";import{weightedPoolV4Abi_V2 as kr}from"@berachain-foundation/berancer-sdk";async function pt({publicClient:e,poolAddress:t}){let r=kr,a=await e.multicall({contracts:[{address:t,abi:r,functionName:"inRecoveryMode"},{address:t,abi:r,functionName:"getPausedState"}],allowFailure:!1});return{isPoolInRecoveryMode:a[0],isPoolPaused:a[1][0]}}async function Dn({poolId:e,publicClient:t,...r}){let{config:a}=c(r),o=e.slice(0,42);if(!Dr(o)||!Ir(e))throw new T({property:"poolId",value:e,expected:"Hex"});try{let[n,s,i,l,u,m,d,b,g]=await Promise.all([t.readContract({address:o,abi:gt,functionName:"name"}),t.readContract({address:a.bex.vault,abi:Tr,functionName:"getPoolTokens",args:[e]}),t.readContract({address:o,abi:gt,functionName:"totalSupply"}),t.readContract({address:o,abi:Pe,functionName:"getSwapFeePercentage"}),t.readContract({address:o,abi:Pe,functionName:"version"}),t.readContract({address:o,abi:Pe,functionName:"decimals"}),t.readContract({address:a.bex.factories.composableStable,abi:ft,functionName:"isPoolFromFactory",args:[o]}),t.readContract({address:a.bex.factories.weighted,abi:ft,functionName:"isPoolFromFactory",args:[o]}),pt({publicClient:t,poolAddress:o})]),p=Number(m),A=JSON.parse(u),P,V,y;if(d?[P,y]=await Promise.all([t.readContract({address:o,abi:[{type:"function",name:"getActualSupply",stateMutability:"view",inputs:[],outputs:[{type:"uint256"}]}],functionName:"getActualSupply"}),t.readContract({address:o,abi:Gr,functionName:"getAmplificationParameter"})]):A.name==="WeightedPool"&&(V=await t.readContract({address:o,abi:Pe,functionName:"getNormalizedWeights"})),!d&&!b)throw new Error(`Pool ${o} is not a valid BEX pool`);return{name:n,address:o,id:e,poolTokens:[s[0],s[1].map(String),Number(s[2])],totalSupply:Fr(P??i,p),swapFee:bt(l),decimals:p,weights:V?.map(F=>bt(F)),version:A,factory:d?a.bex.factories.composableStable:a.bex.factories.weighted,type:d?yt.Stable:yt.Weighted,amplificationParameter:y?[Number(y[0]),y[1],Number(y[2])]:void 0,pausedState:g}}catch(n){throw ee({cause:n})}}import{GetPoolEvents as Er}from"@berachain/graphql/dex/api";async function Wn({poolId:e,typeInArray:t,...r}){let{config:a}=c(r);return(await f("api",r).query({query:Er,variables:{poolId:e,typeIn:t,chain:a.bex.chainName}})).data}import{isHex as qr}from"viem";import{GetPoolHistoricalData as Qr}from"@berachain/graphql/dex/api";async function Hn({poolId:e,chain:t,...r}){if(!e||!qr(e))throw new T({property:"poolId",value:e,expected:"hex string"});let a=f("api",r),{data:o}=await a.query({query:Qr,variables:{poolId:e,chain:t}});return o.poolGetSnapshots}import{mapPoolType as Wr}from"@berachain-foundation/berancer-sdk";var jn=e=>({type:Wr(e.type),protocolVersion:e.protocolVersion,tokens:e.tokens.map(t=>({...t,address:t.address})),id:e.id,address:e.address});import{isHex as Ur}from"viem";import{GetSubgraphPool as Or}from"@berachain/graphql/dex/subgraph";async function Zn({poolId:e,...t}){if(!Ur(e))throw new Error("poolId is not a valid hex string");return(await f("bex.subgraph",t).query({query:Or,variables:{id:e}})).data.pool}async function ai({publicClient:e,...t}){let{config:r}=c(t);return(await e.readContract({address:r.bex.vault,abi:Ue,functionName:"getPausedState"}))[0]}import{isAddress as At,isHex as Mr}from"viem";var re=({fieldOrType:e,value:t,required:r=!0,baseUrl:a,components:o})=>{if(!["bool","string"].includes(e)&&r&&(t==null||t===""))return"Required";if(e.startsWith("uint")||e.startsWith("int")){if(typeof t!="string")return"Invalid amount";try{let s=BigInt(t);if(e.startsWith("uint")&&s<0n)return"Negative amount"}catch{return"Invalid amount"}return null}switch(e){case"string":return t!==void 0&&typeof t!="string"?"Invalid amount":null;case"bool":return typeof t!="boolean"?"Invalid amount":null;case"title":return t.length===0?"Required":null;case"description":return t.length===0?"Required":null;case"forumLink":if(t.length===0)return"Required";if(!URL.canParse(t))return"Invalid address";let s=new URL(a);return t.startsWith(s.toString())?null:"Must be a berachain forum link";case"address":return At(t,{strict:!0})?null:"Invalid address";case"hex":return Mr(t,{strict:!0})?null:"Invalid address";case"abi":try{JSON.parse(t)}catch{return"Invalid ABI"}return null;case"action":return At(t,{strict:!0})?null:"Invalid address";case"tuple":if(typeof t=="object"&&Array.isArray(o)){let i={};for(let l of o)i[l.name]=re({fieldOrType:l.type,value:t[l.name],components:l.components});return Object.values(i).every(l=>l===null)?null:i}return null;case"tuple[]":if(Array.isArray(t)){let i=t.map(l=>re({fieldOrType:"tuple",value:l,components:o}));return i.every(l=>l===null)?null:i}return null;case"logoURI":return t===void 0||t===""||URL.canParse(t)&&new URL(t).protocol==="https:"?null:"Must be HTTPS or IPFS";case"url":return t===void 0||t===""||URL.canParse(t)&&new URL(t).protocol==="https:"?null:"Must be HTTPS";default:return console.error(`Invalid field or type: ${e}`),null}};import{ProposalStatus as w}from"@berachain/graphql/governance";var Lr=!1,li=[w.Active,w.PendingQueue,w.PendingExecution,w.Defeated,w.QuorumNotReached];function Be(e,t){let r=Date.now()/1e3;if(t!==void 0){if(e.status===w.CanceledByGuardian)return w.CanceledByGuardian;if(t===2)return Number(e.voteStartAt)<r?w.CanceledByUser:w.CanceledByGuardian;if(t===3)return e.pollResult?!e.quorum||BigInt(e.quorum)>BigInt(e.pollResult.totalTowardsQuorum)?w.QuorumNotReached:w.Defeated:w.QuorumNotReached;if(t===4)return w.PendingQueue;if(t===5)return Number(e.queueEnd)<Date.now()/1e3?w.PendingExecution:w.InQueue;if(t===6)return console.warn("Unexpected expired state on proposal id: ",e.id),w.Defeated}return e.status===w.InQueue&&Number(e.queueEnd)<Date.now()/1e3?w.PendingExecution:Lr&&t===1&&e.quorum&&BigInt(e.quorum)<BigInt(e.pollResult.totalTowardsQuorum)&&Number(e.pollResult.forPercentage)>Number(e.pollResult.againstPercentage)?w.PendingQueue:e.status===w.Pending?Number(e.voteStartAt)<r&&Number(e.voteEndAt)>r?w.Active:Number(e.voteEndAt)<r?e.pollResult?!e.quorum||BigInt(e.quorum)>BigInt(e.pollResult.totalTowardsQuorum)?w.QuorumNotReached:e.pollResult?.against>e.pollResult?.for?w.Defeated:w.PendingQueue:w.QuorumNotReached:w.Pending:e.status===w.Active&&Number(e.voteEndAt)<r?!e.quorum||BigInt(e.quorum)>BigInt(e.pollResult.totalTowardsQuorum)?w.QuorumNotReached:BigInt(e.pollResult?.against??0n)>BigInt(e.pollResult?.for??0n)?w.Defeated:w.PendingQueue:e.status===w.InQueue&&Number(e.queueEnd)<Date.now()/1e3?w.PendingExecution:e.status}import{GetProposals as _r,SearchProposals as Hr}from"@berachain/graphql/governance";async function pi({where:e,orderBy:t,orderDirection:r,offset:a=0,perPage:o=20,text:n,...s}){try{if(o>1e3)throw new Error("perPage must be less than 1000");let i=f("governance.subgraph",s),[l]=await Promise.all([n?i.query({query:Hr,variables:{offset:a,limit:o,where:e,text:n}}):i.query({query:_r,variables:{offset:a,limit:o,where:e,orderBy:t,orderDirection:r}})]);return l.data.proposals.map(u=>({...u,status:Be(u)}))}catch(i){throw console.error("getAllProposals:",i),i}}var bi=(e,t)=>{let r={};return r.title=re({fieldOrType:"title",value:e.title}),r.description=re({fieldOrType:"description",value:e.description}),r.forumLink=re({fieldOrType:"forumLink",value:e.forumLink,baseUrl:t.forumLink}),r};import{decodeFunctionData as wt,erc20Abi as Jr,pad as $r,toFunctionSignature as jr,trim as ht}from"viem";import{appConfig as Kr,defaultChainId as Yr}from"@berachain/config/internal";function zr(e){return e.some(t=>t.name==="implementation"||t.name==="proxyType"||t.type==="constructor"&&t.inputs?.[0]?.name==="implementation")}async function Ct({contractAddress:e,chainId:t,publicClient:r}){let a=`https://api.etherscan.io/v2/api?module=contract&action=getabi&address=${e}&apikey=${Kr.apiKeys.private.etherscan}&chainId=${t}`,o=await fetch(a,{next:{revalidate:tt(1)}});if(!o.ok)throw new Error(`Failed to fetch ABI: ${o.statusText}`);let n=await o.json();if(n.status==="0")throw new Error(n.result);let s=JSON.parse(n.result);if(!zr(s))return s;let i=await r.getStorageAt({address:e,slot:"0x360894a13ba1a3210667c828492db98dca3e2076cc3735a920a3ca505d382bbc"});if(!i||ht(i)==="0x00")return s;let l=$r(ht(i),{size:20});return Ct({contractAddress:l,chainId:t,publicClient:r})}async function Xr({address:e,callData:t,knownAbi:r,chainId:a,publicClient:o}){try{if(wt({data:t,abi:r}))return r}catch{}try{return await Ct({contractAddress:e,chainId:a,publicClient:o})}catch{}}function Zr(e,t){try{return wt({data:e,abi:t})}catch{return}}function ea(e,t){return e.find(r=>r.type==="function"&&r.name===t)}function ta(e){if(e)try{return jr(e)}catch(t){console.error(t)}}async function Bi({address:e,callData:t,chainId:r=Yr,publicClient:a}){let o=[...v,...C,...Jr],n=await Xr({address:e,callData:t,knownAbi:o,chainId:r,publicClient:a}),s=Zr(t,n);if(!n||!s)return{args:[]};let i=ea(n,s.functionName),l=ta(i);return{abiItem:i,functionSignature:l,functionName:s.functionName,args:s.args}}import{GetProposal as ra}from"@berachain/graphql/governance";async function Vi({proposalId:e,...t}){let a=await f("governance.subgraph",t).query({query:ra,variables:{id:e}});if(a.data.proposal)return{...a.data.proposal,status:Be(a.data.proposal)}}import{parseEventLogs as oa}from"viem";import{ProposalStatus as na}from"@berachain/graphql/governance";import Pt from"gray-matter";var aa=e=>{let t=/#(?:([\w-]+)# )?(.+)\n([\s\S]*)/,r=e.match(t);if(r){let a=r[1]||null,o=r[2],n=r[3].replace(`
2
+ `,"<br />");return{type:a,title:o,content:n}}throw new Error("Invalid proposal body")},Bt=e=>{if(!e)return{isFrontMatter:!1,data:{title:"Loading..."},content:"",matter:"",language:"",orig:"",stringify:()=>""};let t=e?.description??"";if(Pt.test(t))return{...Pt(t),isFrontMatter:!0};try{let r=aa(t);return{isFrontMatter:!1,data:{title:r.title},content:r.content,matter:"",language:"",orig:t,stringify:()=>t}}catch{return{isFrontMatter:!1,data:{title:e?.description?.split(`
3
+ `)[0].slice(0,100)},content:t,matter:"",language:"",orig:t,stringify:()=>t}}};async function qi(e){k(e.publicClient);let t;"tx"in e?t=e.tx:t=await e.publicClient.getTransactionReceipt({hash:e.txHash});let r=t?.logs?oa({abi:Oe,logs:t.logs,eventName:"ProposalCreated"})?.at(0):void 0;if(!t||!r)return null;let a=await e.publicClient.getBlock({blockNumber:t.blockNumber}),o=Bt({description:r?.args.description});return{id:String(r.args.proposalId),proposalId:String(r?.args.proposalId),createdAt:a.timestamp.toString(),title:o.data.title,createdAtBlock:a.timestamp.toString(),voteStartAt:String(r?.args.voteStart),voteEndAt:String(r?.args.voteEnd),proposer:r?.args.proposer,description:o.content,unverifiedForumLink:o.data.forumLink,pollResult:{for:"0",forVotersCount:0,forPercentage:"0",against:"0",againstVotersCount:0,againstPercentage:"0",abstain:"0",abstainVotersCount:0,abstainPercentage:"0",total:"0",totalVotersCount:0,totalTowardsQuorum:"0"},status:na.Pending,quorum:null,topics:o.data.topics,votes:[],executableCalls:r?.args.targets.map((n,s)=>({__typename:"ExecutableCall",id:`${t.transactionHash}-${s}`,target:n,value:String(r?.args.values[s]),calldata:r?.args.calldatas[s]})),timelock:void 0}}import{GetProposalVotes as ia}from"@berachain/graphql/governance";async function Oi({variables:e,...t}){return f("governance.subgraph",t).query({query:ia,variables:e})}import{Aggregation_Interval as sa,GetChartData as la}from"@berachain/graphql/honey";async function Hi({days:e,...t}){return(await f("honey.subgraph",t).query({query:la,variables:{interval:sa.Day,first:e}})).data}async function Ki({client:e,collateralList:t,...r}){let{config:a}=c(r);try{let o=await e.readContract({address:a.honey.factory,abi:B,functionName:"getWeights"});return t.reduce((s,i,l)=>Object.assign(s,{[i.address]:o[l]}),{})}catch(o){throw console.log(o),o}}import{parseEther as Rt}from"viem";import{erc20Abi as Te}from"viem";async function xt({address:e,publicClient:t}){try{if(!t)throw new Error("Public client not found");let[r,a,o]=await Promise.all([t.readContract({address:e,abi:Te,functionName:"decimals"}),t.readContract({address:e,abi:Te,functionName:"name"}),t.readContract({address:e,abi:Te,functionName:"symbol"})]),n={address:e,decimals:r,name:a,symbol:o};if(typeof n.decimals!="number"||typeof n.name!="string"||typeof n.symbol!="string")throw new Error(`Invalid ERC20 token. Address: ${e}`);return n}catch(r){throw console.error(r),ee({cause:r})}}async function Fe({client:e,tokenData:t,preferredCollateralOrder:r,...a}){let{config:o}=c(a),[n,s]=await Promise.all([e.readContract({address:o.honey.factory,abi:B,functionName:"numRegisteredAssets"}),e.readContract({address:o.honey.factory,abi:B,functionName:"referenceCollateral"})]),i=[];for(let b=0;b<n;b++)i.push(e.readContract({address:o.honey.factory,abi:B,functionName:"registeredAssets",args:[BigInt(b)]}));let l=await Promise.all(i),m=(await Promise.all(l.map(b=>{let g=t?.find(p=>N(p,b));return g||xt({address:b,publicClient:e})}))).filter(b=>!!b).sort((b,g)=>l.indexOf(b.address)-l.indexOf(g.address)).map((b,g)=>({...b,order:g}));if(r?.length){let b=[];for(let g of r){let p=m.find(A=>N(A.address,g.address));p&&(b.push(p),m.splice(m.indexOf(p),1))}m.unshift(...b)}let d=m.find(b=>N(b,s));if(!m)throw new Error("Collateral tokens not found");if(!d)throw new Error("Reference collateral address not found");return{collaterals:m,referenceCollateral:d}}import{parseEther as ca}from"viem";async function le({client:e,asset:t,amount:r,...a}){let{config:o}=c(a);try{let[n,s]=await Promise.all([e.readContract({address:o.honey.factory,abi:B,functionName:"vaults",args:[t]}),e.readContract({address:o.honey.factory,abi:B,functionName:"collectedFees",args:[o.honey.factory,t]})]);return await e.readContract({address:n,abi:X,functionName:"balanceOf",args:[o.honey.factory]})+ca(r??"0")-s}catch(n){throw console.log(n),n}}import{parseUnits as ua}from"viem";async function vt({client:e,collateral:t,latestPrices:r,isPythWrapperEnabled:a,...o}){let{config:n}=c(o);try{let s=e.readContract({address:n.honey.factory,abi:B,functionName:"isBadCollateralAsset",args:[t.address]}),i=e.readContract({address:n.honey.factory,abi:B,functionName:"isPegged",args:[t.address]});if(a&&r){let m=r.prices.map(d=>ua(d,18));i=e.readContract({address:n.honey.reader,abi:K,functionName:"isPeggedWithPrice",args:[t.address,m[0]]})}let[l,u]=await Promise.all([s,i]);return{isBlacklisted:l,isDepegged:!u}}catch(s){throw console.log(s),s}}var da=Rt("1");async function Bs({client:e,asset:t,amount:r,isMint:a,isPythWrapperEnabled:o,latestPrices:n,...s}){let{config:i}=c(s);try{let l=await e.readContract({address:i.honey.factory,abi:B,functionName:"globalCap"});if(l>=da)return!1;let[{collaterals:u},m]=await Promise.all([Fe({client:e}),ma({client:e,asset:t,amount:r,latestPrices:n,isPythWrapperEnabled:o})]);if(!m)return;for(let d in m)if((a&&N(u[d],t)||!a&&N(u[d],t))&&m[d]>l-we)return!0;return!1}catch(l){throw console.log(l),l}}async function ma({client:e,asset:t,amount:r,latestPrices:a,isPythWrapperEnabled:o}){let{collaterals:n}=await Fe({client:e}),s=0n,i=[];for(let l of n){let u=await vt({client:e,collateral:t,latestPrices:a,isPythWrapperEnabled:o});if(u?.isBlacklisted||u?.isDepegged)continue;let m=await le({client:e,asset:l.address,amount:N(l,t)?r:"0"});m&&(s+=m,i.push(m))}if(s===0n)return i;for(let l in n)i[l]=Rt(i[l].toString())/s;return i}import{formatUnits as xe}from"viem";async function Vs({client:e,collateralList:t,...r}){let{config:a}=c(r);try{let o={mint:[],redeem:[]};for(let l of t)o.mint.push(e.readContract({address:a.honey.factory,abi:B,functionName:"mintRates",args:[l.address]})),o.redeem.push(e.readContract({address:a.honey.factory,abi:B,functionName:"redeemRates",args:[l.address]}));let[n,s,i]=await Promise.all([Promise.all(o.mint),Promise.all(o.redeem),e.readContract({address:a.honey.factory,abi:B,functionName:"getWeights"})]);return t.reduce((l,u)=>{let m=t.indexOf(u);return l.single[u.address]={mintFee:1-+xe(n[m],18),redeemFee:1-+xe(s[m],18)},l.basket.mintFee+=l.single[u.address].mintFee*+xe(i[m],18),l.basket.redeemFee+=l.single[u.address].redeemFee*+xe(i[m],18),l},{single:{},basket:{mintFee:0,redeemFee:0}})}catch(o){throw console.log(o),o}}import{GetGlobalData as pa}from"@berachain/graphql/honey";async function Ts({...e}={}){return(await f("honey.subgraph",e).query({query:pa})).data}async function Es({client:e,...t}){let{config:r}=c(t),a=r.honey.token;return await e.readContract({address:a,abi:Me,functionName:"paused"})}import{parseUnits as St}from"viem";var fa=(l=>(l.Mint="previewMintHoney",l.MintWithPrice="previewMintHoneyWithPrices",l.RequiredCollateral="previewMintCollaterals",l.RequiredCollateralWithPrice="previewMintCollateralsWithPrices",l.Redeem="previewRedeemCollaterals",l.RedeemWithPrice="previewRedeemCollateralsWithPrices",l.HoneyToRedeem="previewRedeemHoney",l.HoneyToRedeemWithPrice="previewRedeemHoneyWithPrices",l))(fa||{});async function Os({client:e,collateral:t,collateralList:r,amount:a,method:o,latestPrices:n,isPythWrapperEnabled:s,...i}){let{config:l}=c(i);try{let u=o==="previewMintHoney"||o==="previewRedeemHoney"||o==="previewMintHoneyWithPrices"||o==="previewRedeemHoneyWithPrices",m=St(a,u?t.decimals:18),d,b=[t.address,m];if(s&&n){let p=n.prices.map(A=>St(A,18));b=[t.address,m,p]}if(u){let p=await e.readContract({address:l.honey.reader,abi:K,functionName:o,args:b});d={collaterals:p[0],honey:p[1]}}else d={collaterals:await e.readContract({address:l.honey.reader,abi:K,functionName:o,args:b}),honey:m};let g=r.reduce((p,A)=>{let P=A.order;return A.address===t.address&&d.collaterals[P]===BigInt(0)?Object.assign(p,{[A.address]:d.collaterals[0]}):Object.assign(p,{[A.address]:d.collaterals[P]})},{});return g[t.address]===BigInt(0)&&(g[t.address]=d.collaterals[0]),{collaterals:g,honey:d.honey}}catch(u){throw console.log("error",u),u}}async function _s({pythOracle:e,publicClient:t}){return await t.readContract({address:e,abi:Le,functionName:"pythOracle"})}async function js({publicClient:e,factory:t,...r}){let{config:a}=c(r);return await e.readContract({address:t??a.honey.factory,abi:B,functionName:"priceOracle"})}import{formatUnits as ga}from"viem";async function el({client:e,collateralList:t,honeyFactoryAddress:r,...a}){let{config:o}=c(a),n=r??o.honey.factory;try{return await Promise.all(t.map(async i=>{let l=await e.readContract({address:o.honey.factory,abi:B,functionName:"vaults",args:[i.address]}),[u,m,[d,b]]=await Promise.all([e.readContract({address:l,abi:X,functionName:"balanceOf",args:[n]}),e.readContract({address:n,abi:B,functionName:"collectedAssetFees",args:[i.address]}),e.readContract({address:l,abi:X,functionName:"custodyInfo"})]),g=await e.readContract({address:l,abi:X,functionName:"convertToAssets",args:[u-m]});return{address:i.address,balance:g.toString(),formattedBalance:ga(g,i.decimals),vault:d?b:l}}))}catch(s){throw console.log(s),s}}import{HermesClient as ba}from"@pythnetwork/hermes-client";import{formatUnits as ya}from"viem";var Aa="https://hermes.pyth.network";async function Vt({priceFeedId:e}){let r=await new ba(Aa,{}).getLatestPriceUpdates(e,{encoding:"hex",parsed:!0});return{calldata:r.binary.data.map(a=>`0x${a}`),prices:r.parsed?.flatMap(a=>ya(BigInt(a.price.price),a.price.expo*-1))??[]}}import{parseEther as ha}from"viem";async function ul({client:e,asset:t,amount:r,isMint:a,referenceCollateral:o,...n}){let{config:s}=c(n);if(t===o.address)return!1;try{let[i]=await Promise.all([e.readContract({address:s.honey.factory,abi:B,functionName:"relativeCap",args:[t]})]),[l,u]=await Promise.all([le({client:e,asset:t,amount:a?r:void 0}),le({client:e,asset:o.address,amount:a?void 0:r})]);return u===0n?l!==0n:ha((l??0n).toString())/(u??0n)>=i-we}catch(i){throw console.log(i),i}}import{parseUnits as kt}from"viem";async function Nt({client:e,priceFeedId:t,...r}){let{config:a}=c(r);try{return await e.readContract({address:a.external.pyth,abi:Je,functionName:"getUpdateFee",args:[t]})}catch(o){throw console.error("getPythUpdateFee",o),o}}var Bl=async({state:e,account:t,publicClient:r,priceFeedMap:a,collateralList:o,isPythWrapperEnabled:n,...s})=>{let{config:i}=c(s),l=ze(s),{actionType:u,fromAmount:m,collaterals:d,isBasketModeEnabled:b}=e,g=n?i.honey.pythWrapper:i.honey.factory,p=o.map(A=>A.address);if(t&&m[0]&&p.length){let A=u==="mint";if(n&&r&&a){let y=(await Vt({priceFeedId:Object.values(a)})).calldata,F;try{F=await Nt({client:r,priceFeedId:y})}catch{F=rt(d.length)}let G=[y,d[0]?.address,kt(m[0],(A?d[0]?.decimals:l?.decimals)??18),t,!!b];return{address:g,abi:He,functionName:A?"mint":"redeem",params:G,value:F}}let P=[d[0]?.address,kt(m[0],(A?d[0]?.decimals:l?.decimals)??18),t,!!b];return{address:g,abi:B,functionName:A?"mint":"redeem",params:P}}throw new Error("Something went wrong while creating the Honey swap payload")};import{parseUnits as wa}from"viem";async function Nl({client:e,isMint:t,collateralList:r,latestPrices:a,isPythWrapperEnabled:o,...n}){let{config:s}=c(n);if(o&&a){if(r.length===0)return;let l=a.prices.map(m=>wa(m,18));return await e.readContract({address:s.honey.reader,abi:K,functionName:"isBasketModeEnabledWithPrices",args:[t,l]})}return await e.readContract({address:s.honey.factory,abi:B,functionName:"isBasketModeEnabled",args:[t]})}async function Fl({block:e,currentBlock:t,blockTime:r,publicClient:a}){if($(e,"block"),k(a),t>e){let n=await a.getBlock({blockNumber:BigInt(e),includeTransactions:!1});return{timestamp:Number(n.timestamp)}}return{timestamp:R(Date.now())+r*(Number(e)-Number(t))}}import{formatUnits as De}from"viem";var Ca=(a=>(a.Duration="duration",a.TargetRate="targetRate",a.TargetApr="targetApr",a))(Ca||{});async function Ql(e,t){let[r,a,o,n,s,i]=await Promise.all([t.readContract({address:e,abi:C,functionName:"rewardsDuration"}),t.readContract({address:e,abi:C,functionName:"rewardVaultManager"}),t.readContract({address:e,abi:C,functionName:"rewardRate"}),t.readContract({address:e,abi:C,functionName:"periodFinish"}),t.readContract({address:e,abi:C,functionName:"targetRewardsPerSecond"}),t.readContract({address:e,abi:C,functionName:"minRewardDurationForTargetRate"})]),l=o*(n-BigInt(R(Date.now())))/10n**18n;return{rewardsDuration:Number(r),mode:s===0n?"duration":"targetRate",manager:a,rewardRate:De(o,36),periodFinish:Number(n),availableRewards:De(l,18),minRewardDurationForTargetRate:Number(i),targetRewardsPerSecond:De(s,36)}}function ve(e,t,r){return e?r*t*ie(1)/e:null}function Pa(e,t,r){return r?e*r/(t*ie(1)):0}function Ol({availableRewards:e,periodFinish:t,tvl:r,bgtPrice:a,MIN_REWARD_DURATION:o,MAX_REWARD_DURATION:n,...s}){let i=R(Date.now());if(i>t)return{apr:0,duration:0,rewardRate:0,targetRate:null,periodFinish:0,mode:null};if(s.mode==="targetRate"||s.mode==="targetApr"){let d,{minRewardDurationForTargetRate:b,currentDuration:g}=s;if(s.mode==="targetRate"?d=s.rewardRate:d=Pa(s.apr,a,r),d===0){let P=Math.min(g,n),V=e?e/P:0;return{apr:ve(r,a,V),duration:P,rewardRate:V,targetRate:null,periodFinish:P+i,mode:"duration"}}let p=b||o,A=e?e/d:0;if(A<p){let P=e?e/p:0;return{apr:ve(r,a,P),duration:p,rewardRate:P,targetRate:P.toString(),periodFinish:p+i,mode:null}}return{apr:ve(r,a,d),duration:A,rewardRate:d,targetRate:d.toString(),periodFinish:A+i,mode:null}}let{duration:l}=s,u=e/l;return{apr:ve(r,a,u),mode:null,targetRate:null,duration:l,rewardRate:u,periodFinish:l+i}}import{GetBlocksTimeStamp as Ba}from"@berachain/graphql/chain";async function Gt({defaultBlockTime:e,blocksSpan:t,...r}={}){let{config:a}=c(r),o=f("blocks.subgraph",r),n=e??a.averageBlockTime,s=t??Math.floor(Ze(1)/n),l=(await o.query({query:Ba,variables:{skip:s}})).data;return(R(Date.now())-Number(l?.oldest[0]?.timestamp))/(Number(l?.newest[0]?.number)-Number(l?.oldest[0]?.number))}import*as ce from"@sentry/nextjs";import{GlobalData as xa}from"@berachain/graphql/pol/api";async function Tt(e={}){let{config:t}=c(e),a=await f("api",e).query({query:xa,variables:{chain:t.bex.chainName}});return{...a.data.polGetGlobalInfo,top3EmittingValidators:a.data.top3EmittingValidators.validators,allValidatorsCount:a.data.allValidatorsCount.pagination.totalCount}}import{formatEther as va}from"viem";async function Ft({publicClient:e,...t}){let{config:r}=c(t);k(e);try{let a=await e.readContract({address:r.tokens.bgt,abi:H,functionName:"totalBoosts",args:[]});return va(a)}catch(a){throw console.log(a),a}}import{erc20Abi as Ra,formatEther as Sa}from"viem";async function Dt({publicClient:e,...t}){let{config:r}=c(t);k(e);try{let a=await e.readContract({address:r.tokens.bgt,abi:Ra,functionName:"totalSupply",args:[]});return Sa(a??0n)}catch(a){throw console.log(a),a}}import{GqlRewardVaultOrderBy as ka,GqlRewardVaultOrderDirection as Ga}from"@berachain/graphql/pol/api";import{formatUnits as Va}from"viem";import{GetVaults as Na}from"@berachain/graphql/pol/api";async function Re({filter:e,publicClient:t,...r}={}){let o=await f("api",r).query({query:Na,variables:e}),n=await Promise.allSettled(o.data.polGetRewardVaults.vaults.map(async i=>{if(t)return Promise.allSettled(i.activeIncentives.map(l=>t.readContract({abi:C,address:i.address,functionName:"incentives",args:[l.tokenAddress]})))})),s=o.data.polGetRewardVaults.vaults.map((i,l)=>{let u=0,m=i.activeIncentives.map((d,b)=>{let g=Number(d.remainingAmountUsd)&&Number(d.remainingAmount)?Number(d.remainingAmountUsd)/Number(d.remainingAmount):0,p=n[l]?.status==="fulfilled"&&n[l]?.value?.[b]?.status==="fulfilled"?Va(BigInt(n[l].value[b].value[2]),d.token.decimals):d.remainingAmount;return u+=Number(p)*Number(g),{...d,remainingAmount:p}});return{...i,dynamicData:{...i.dynamicData,allTimeReceivedBGTAmount:i.dynamicData?.allTimeReceivedBGTAmount??"0",bgtCapturePercentage:i.dynamicData?.bgtCapturePercentage??"0",activeIncentivesValueUsd:u.toString(),activeIncentivesRateUsd:i.dynamicData?.activeIncentivesRateUsd??"0",bgtCapturePerBlock:i.dynamicData?.bgtCapturePerBlock??"0"},activeIncentives:m}});return{pagination:o.data.polGetRewardVaults.pagination,gaugeList:s}}async function It(e){let{gaugeList:t}=await Re({filter:{orderBy:ka.Apr,orderDirection:Ga.Desc,pageSize:e,where:{includeNonWhitelisted:!1}}});return t}async function hc(e){let[t,r,a,o]=await Promise.allSettled([Tt(),It(300),Dt({publicClient:e}),Ft({publicClient:e})]);return t.status==="rejected"&&ce.captureException(t.reason,{level:"warning"}),r.status==="rejected"&&ce.captureException(r.reason,{level:"warning"}),a.status==="rejected"&&ce.captureException(a.reason,{level:"warning"}),o.status==="rejected"&&ce.captureException(o.reason,{level:"warning"}),{bgtTotalSupply:a.status==="fulfilled"?a.value:void 0,globalCuttingBoard:r.status==="fulfilled"?r.value:[],bgtTotalBoosts:o.status==="fulfilled"?o.value:void 0,...t.status==="fulfilled"?t.value:{}}}import{GetIncentiveFeeClaimStats as Ta}from"@berachain/graphql/pol/subgraph";async function Et({...e}){let t=f("pol.subgraph",e),{data:r}=await t.query({query:Ta});if(r.incentiveFeeClaims.length>0){let a=r?.incentiveFeeClaims.reduce((s,i)=>s+Number(i.payoutAmount),3e4),n=(r?.incentiveFeeClaims.filter(s=>Number(s.timestamp)/1e3>Date.now()-et(1))).reduce((s,i)=>s+Number(i.payoutAmount),0);return{sumAllClaims:a,sumClaimsInLast24Hours:n}}return{sumAllClaims:0,sumClaimsInLast24Hours:0}}async function Rc(e={}){let{config:t}=c(e);try{let a=await(await fetch(t.lists.rewardVaultList)).json();if(!a.protocols)throw new Error("Missing protocols in market list");return{marketList:a.protocols,marketDictionary:a.protocols.reduce((o,n)=>(o[n.name]=n,o),{})}}catch(r){throw console.error("Error fetching validator information",r),r}}async function Gc({account:e,validator:t,page:r=1,perPage:a=1e3,...o}){let{config:n}=c(o),s=await fetch(`${n.pol.bribeBoostApi}/api/v1/wallets/${e.toLowerCase()}/proofs/validator/${t.toLowerCase()}?page=${r}&per_page=${a}`,{cache:"no-store"});if(!s.ok){let l=await ye(s);throw new x({message:"Failed to fetch proofs on server",cause:{error:l,result:s,account:e,validator:t},reason:l?.reason})}return await s.json()}import{formatUnits as Fa,parseUnits as Da}from"viem";async function Ec({address:e,publicClient:t}){return k(t),t.readContract({address:e,abi:D,functionName:"previewRedeem",args:[Da("1",18)]}).then(r=>Number(Fa(r,18))).catch(()=>0)}import{GetRewardVault as Ia}from"@berachain/graphql/pol/api";async function Mc({address:e,chainName:t,...r}){let{config:a}=c(r),o=t??a.bex.chainName,n=f("api",r),{data:s}=await n.query({query:Ia,variables:{vaultId:e,chain:o}});if(!s?.rewardVault)throw new at({resource:"Reward vault",id:e,chainId:a.chainId});return s.rewardVault}var qt=[{inputs:[{internalType:"address",name:"initialOwner",type:"address"},{internalType:"address",name:"initialImplementation",type:"address"}],stateMutability:"payable",type:"constructor"},{inputs:[],name:"NewImplementationHasNoCode",type:"error"},{inputs:[],name:"NewOwnerIsZeroAddress",type:"error"},{inputs:[],name:"Unauthorized",type:"error"},{anonymous:!1,inputs:[{indexed:!0,internalType:"address",name:"oldOwner",type:"address"},{indexed:!0,internalType:"address",name:"newOwner",type:"address"}],name:"OwnershipTransferred",type:"event"},{anonymous:!1,inputs:[{indexed:!0,internalType:"address",name:"implementation",type:"address"}],name:"Upgraded",type:"event"},{inputs:[],name:"implementation",outputs:[{internalType:"address",name:"result",type:"address"}],stateMutability:"view",type:"function"},{inputs:[],name:"owner",outputs:[{internalType:"address",name:"result",type:"address"}],stateMutability:"view",type:"function"},{inputs:[],name:"renounceOwnership",outputs:[],stateMutability:"nonpayable",type:"function"},{inputs:[{internalType:"address",name:"newOwner",type:"address"}],name:"transferOwnership",outputs:[],stateMutability:"nonpayable",type:"function"},{inputs:[{internalType:"address",name:"newImplementation",type:"address"}],name:"upgradeTo",outputs:[],stateMutability:"nonpayable",type:"function"}];async function Qt({publicClient:e,...t}){let{config:r}=c(t),a=r.pol.factory;$(e,"publicClient"),he(r.pol.factory,"factoryAddress");let o=await e.readContract({address:a,abi:ge,functionName:"beacon"});return await e.readContract({address:o,abi:qt,functionName:"implementation"})}async function Zc({publicClient:e,...t}){k(e);let r=await Qt({publicClient:e,...t}),[a,o]=await Promise.all([e.readContract({address:r,abi:C,functionName:"MIN_REWARD_DURATION"}),e.readContract({address:r,abi:C,functionName:"MAX_REWARD_DURATION"})]);return{minRewardDuration:Number(a),maxRewardDuration:Number(o)}}import{zeroAddress as Ea}from"viem";async function ou({tokenAddress:e,publicClient:t,factoryAddress:r,...a}){let{config:o}=c(a),n=await t.readContract({address:r??o.pol.factory,abi:ge,functionName:"getVault",args:[e]});return n===Ea?null:n}import{isSameAddress as Wt}from"@berachain-foundation/berancer-sdk";import*as Ut from"@sentry/nextjs";import{erc20Abi as Ie,formatUnits as ue}from"viem";async function uu({address:e,stakingToken:t,publicClient:r}){let a=await r.readContract({address:e,abi:C,functionName:"getWhitelistedTokens"}),n=a.findIndex(i=>Wt(t,i))!==-1?await r.readContract({address:e,abi:C,functionName:"totalSupply"}):0n,s=await Promise.allSettled(a.map(async i=>{let[l,u,m,d]=await Promise.all([r.readContract({address:e,abi:C,functionName:"incentives",args:[i]}),r.readContract({address:i,abi:Ie,functionName:"decimals"}),r.readContract({address:i,abi:Ie,functionName:"symbol"}),r.readContract({address:i,abi:Ie,functionName:"balanceOf",args:[e]})]),[b,g,p,A]=l;return{token:i,manager:A,minIncentiveRate:ue(b,u),incentiveRate:ue(g,u),remainingAmount:ue(p,u),symbol:m,decimals:u,pendingAmount:Wt(t,i)?ue(d-n-p,u):ue(d-p,u)}}));return s.forEach((i,l)=>{i.status==="rejected"&&Ut.captureException(new x({reason:i.reason,message:"Incorrect incentives token received.",level:"error"}),{extra:{token:a[l],address:e,error:i.reason}})}),s.map(i=>i.status==="fulfilled"?i.value:null).filter(i=>i!==null)}async function pu({address:e,publicClient:t}){return await t.readContract({address:e,abi:C,functionName:"stakeToken"})}import{GetSWberaVaultMetadata as qa,GqlSWberaVaultMetadataResolution as Ot}from"@berachain/graphql/pol/api";function Qa(e){return e==="DAY"?Ot.OneDay:Ot.SevenDays}async function Au({window:e,...t}){let{config:r}=c(t),a=f("api",t);try{let o=await a.query({query:qa,variables:{chain:r.bex.chainName,resolution:Qa(e??"DAY")}}),{apr:n}=o.data.polGetSWberaVaultMetadata;return Number(n)}catch(o){throw console.error("Failed to get SW Bera APR",o),o}}import{GetSWberaVaultSnapshots as Wa,GqlVaultSnapshotDataRange as Ua}from"@berachain/graphql/pol/api";async function Bu({chain:e,range:t=Ua.ThirtyDays,...r}={}){let{config:a}=c(r),o=f("api",r);try{return(await o.query({query:Wa,variables:{chain:e??a.bex.chainName,range:t}})).data.polGetSWberaVaultSnapshots}catch(n){throw console.error("Failed to get SW Bera Snapshots",n),n}}async function de({publicClient:e,...t}){let{config:r}=c(t),a=await e.readContract({address:r.tokens.swbera,abi:D,functionName:"WITHDRAWAL_COOLDOWN"});return Number(a)}import J from"bignumber.js";import{erc20Abi as Se}from"viem";async function Eu({address:e,publicClient:t,...r}){let{config:a}=c(r);k(t);let o=26;try{let[n,s]=await Promise.all([t.getBlock({blockTag:"latest"}),Gt()]),i=Math.floor(o*60*60/s),l=n.number-BigInt(i),[u,m,d,b,g,p,A,P,V,y,F]=await Promise.all([t.readContract({address:e,abi:D,functionName:"totalAssets"}),t.readContract({address:e,abi:D,functionName:"totalSupply"}),t.readContract({address:e,abi:D,functionName:"previewRedeem",args:[10n**18n],blockNumber:n.number}),t.readContract({address:a.tokens.wbera,abi:Se,functionName:"balanceOf",args:[e]}),t.readContract({address:e,abi:D,functionName:"totalAssets",blockNumber:l}),t.readContract({address:e,abi:Se,functionName:"totalSupply",blockNumber:l}),t.readContract({address:e,abi:D,functionName:"previewRedeem",args:[10n**18n],blockNumber:l}),t.readContract({address:a.tokens.wbera,abi:Se,functionName:"balanceOf",args:[e],blockNumber:l}),t.readContract({address:a.tokens.wbera,abi:Se,functionName:"totalSupply"}),de({publicClient:t}),Et({})]),G=new J(A.toString());return{current:{exchangeRate:new J(d.toString()).toString(),totalSupply:new J(m.toString()).dividedBy(1e18).toString(),totalAssets:new J(u.toString()).dividedBy(1e18).toString(),tvl:new J(b.toString()).dividedBy(1e18).toString()},previous:{exchangeRate:G.toString(),totalSupply:new J(p.toString()).dividedBy(1e18).toString(),totalAssets:new J(g.toString()).dividedBy(1e18).toString(),tvl:new J(P.toString()).dividedBy(1e18).toString()},totalWBeraIssued:new J(V.toString()).dividedBy(1e18).toString(),lockPeriod:y,totalBuyBacks:F.sumAllClaims,totalBuyBacksInLast24Hours:F.sumClaimsInLast24Hours}}catch(n){throw console.error("Failed to get SW Bera Vault Metadata",n),n}}function Mt(e){let t=Date.now(),r=e*1e3-t;if(r<=0)return;let a=R(r);return nt(a,!0,!0)}async function Ou(e,t,r,a){let o=[];function n(s,i){let[l,u,m]=s,d=l,b=Number(m)+Number(i),g=R(Date.now()),p=b-g;if(d>0){let A=Mt(p<=0?0:b);o.push({withdrawalAmount:d,timeRemaining:A})}}switch(a){case"V1":{let[s,i]=await Promise.all([r.readContract({address:e,abi:D,functionName:"withdrawalRequests",args:[t]}),de({publicClient:r})]);return n(s,i),o}case"V2":{let[s,i,l]=await Promise.all([r.readContract({address:e,abi:D,functionName:"withdrawalRequests",args:[t]}),r.readContract({address:e,abi:D,functionName:"getERC721WithdrawalRequestIds",args:[t]}),de({publicClient:r})]);n(s,l);let m=(await Promise.all(i.map(async d=>{let b=await r.readContract({address:e,abi:D,functionName:"getERC721WithdrawalRequest",args:[d]}),{assets:g,requestTime:p}=b;if(!g||!p)throw new Error("Invalid withdrawal request");let A=g,P=Number(p)+Number(l),V=R(Date.now()),y=P-V;if(A>0){let F=Mt(y<=0?0:P);return{withdrawalAmount:A,timeRemaining:F,withdrawalRequestId:d}}return null}))).filter(d=>d!==null);return o.push(...m),o}}}async function Ju({account:e,...t}){let{config:r}=c(t),a=await fetch(`${r.pol.bribeBoostApi}/api/v1/wallets/${e.toLowerCase()}/rewards/aggregation`,{cache:"no-store"});if(!a.ok){let o=await ye(a);throw new x({message:"Failed to fetch incentives on server",cause:{error:o,result:a,account:e},reason:o?.error})}return await a.json()}import{formatEther as Ee}from"viem";import{isAddress as Lt}from"viem";async function _t({account:e,vaultAddress:t,publicClient:r}){if(k(r),!e||!Lt(e))throw new T({property:"account",value:e,expected:"Address"});if(!t||!Lt(t))throw new T({property:"vaultAddress",value:t,expected:"Address"});try{let[a,o]=await Promise.all([r.readContract({address:t,abi:C,functionName:"balanceOf",args:[e]}),r.readContract({address:t,abi:C,functionName:"getTotalDelegateStaked",args:[e]})]);return{balance:a,delegated:o}}catch(a){throw console.log(a),a}}async function Ht({account:e,vaultAddress:t,publicClient:r}){if(!r)throw new Error("Missing public client");if(!e)throw new Error("Missing user account");if(!t)throw new Error("Missing vault address");return await r.readContract({address:t,abi:C,functionName:"earned",args:[e]})}async function Jt({vaultAddress:e,publicClient:t}){if(!t)throw new Error("Missing public client");if(!e)throw new Error("Missing vault address");try{return await t.readContract({address:e,abi:C,functionName:"totalSupply",args:[]})}catch(r){throw console.log(r),r}}async function id({account:e,vaultAddress:t,publicClient:r}){let[a,o,n]=await Promise.all([_t({account:e,vaultAddress:t,publicClient:r}),Ht({account:e,vaultAddress:t,publicClient:r}),Jt({vaultAddress:t,publicClient:r})]),s=a.balance-a.delegated,i=n>0n?Number(Number.parseFloat(Ee(a.balance))/Number.parseFloat(Ee(n))).toString():"0";return{balance:a.balance,delegatedBalance:a.delegated,withdrawableBalance:s,rewards:Ee(o),percentage:i}}import*as $t from"@sentry/nextjs";import{formatUnits as qe}from"viem";import{GetUserVaults as Oa}from"@berachain/graphql/pol/api";async function pd({account:e,publicClient:t,...r}){let{config:a}=c(r),s=(await f("api",r).query({query:Oa,variables:{userId:e,chain:a.bex.chainName}})).data?.userVaultDeposits?.deposits;if(!s)return{totalBgtRewards:"0",vaults:[],totalStakedValue:0};let[i,l]=await Promise.all([t.multicall({allowFailure:!1,contracts:s.map(g=>({address:g.vaultAddress,abi:C,functionName:"earned",args:[e]}))}),t.multicall({allowFailure:!1,contracts:s.map(g=>({address:g.vaultAddress,abi:C,functionName:"balanceOf",args:[e]}))})]),{userVaults:u,total:m}=s.reduce((g,p,A)=>{let P=i[A],V=l[A];if(g.total+=P,!p.vault)return $t.captureException(new Error("Deposit data from API is missing vault"),{data:{deposit:p}}),console.error("Deposit data from API is missing vault",p),g;if(P>0n||V>0n){let y=p.vault.dynamicData?.tvl&&Number(p.vault.stakingTokenAmount)!==0?Number(p.vault.dynamicData?.tvl??0)/Number(p.vault.stakingTokenAmount):null;g.userVaults.push({...p,vault:p.vault,unclaimedBgt:qe(P,18),formattedBalance:qe(V,p.vault.stakingToken.decimals),stakingTokenPrice:y})}return g},{userVaults:[],total:0n}),d=[...u].sort((g,p)=>{if(g.vault.isVaultWhitelisted&&!p.vault.isVaultWhitelisted)return-1;if(!g.vault.isVaultWhitelisted&&p.vault.isVaultWhitelisted)return 1;let A=Number.parseFloat(g.unclaimedBgt);return Number.parseFloat(p.unclaimedBgt)-A});return{totalStakedValue:d.reduce((g,p)=>{let A=Number(p.vault.dynamicData?.tvl??0);if(A===0)return g;let P=Number.parseFloat(p.vault.stakingTokenAmount),V=A/P;return g+V*Number(p.formattedBalance)},0),totalBgtRewards:qe(m,18),vaults:d}}import{GetVaultHistory as Ma}from"@berachain/graphql/pol/api";async function Ad({vault:e,chain:t,...r}){let{config:a}=c(r);return(await f("api",r).query({query:Ma,variables:{...r,vaultId:e,chain:t??a.bex.chainName}})).data.polGetRewardVaultSnapshots}import{GetVaultValidators as La}from"@berachain/graphql/pol/api";async function Pd({address:e,onlyActiveValidators:t,...r}){return(await f("api",r).query({query:La,variables:{vaultId:e,isActive:t}})).data.validators.validators??[]}import{getAddress as _a,zeroAddress as Ha}from"viem";import{GetTokenCurrentPrices as Ja}from"@berachain/graphql/dex/api";async function kd({addressIn:e,...t}){let{config:r}=c(t),a=e.map(s=>s.toLowerCase()).filter((s,i,l)=>s&&l.indexOf(s)===i),o=f("api",t),{data:n}=await o.query({query:Ja,variables:{chains:[r.bex.chainName],addressIn:a}});return n.tokenGetCurrentPrices.reduce((s,i)=>{if(!i.price||!i.address)return s;let l=i.address;return s[_a(l)]={price:te(i.price.toString()),updatedAt:i.updatedAt},s[l.toLowerCase()]={price:te(i.price.toString()),updatedAt:i.updatedAt},N(l,"WBERA")&&(s[Ha]={price:te(i.price.toString()),updatedAt:i.updatedAt},s[r.tokens.bgt.toLowerCase()]={price:te(i.price.toString()),updatedAt:i.updatedAt},s[r.tokens.bgt]={price:te(i.price.toString()),updatedAt:i.updatedAt}),s},{})}async function Dd({tokenList:e,publicClient:t,...r}){let{config:a}=c(r);try{let o=await Promise.all(e.map(n=>t.readContract({address:a.honey.pythOracle,abi:_e,functionName:"feeds",args:[n]})));return e.reduce((n,s,i)=>({...n,[s]:o[i]}),{})}catch(o){throw console.error("getPythPriceFeedId",o),o}}import{erc20Abi as $a,formatUnits as ja}from"viem";async function qd({tokens:e,account:t,spender:r,publicClient:a}){if(!a||!e||!r)throw new Error("missing publicClient, tokens, or spender");if(t){let o=e.map(i=>({address:i.address,abi:$a,functionName:"allowance",args:[t,r]}));return(await a.multicall({contracts:o})).map((i,l)=>{let u=e[l];return i.error?{balance:0,...u}:{allowance:i.result,formattedAllowance:ja(i.result,u?.decimals||18),...u}})}}async function Od({url:e,...t}={}){let{config:r}=c(t);return(await Ye({url:e??r.lists.tokenList,type:"rest",name:"GitHub"})).tokens??[]}import{erc20Abi as Ka,formatUnits as Ya,isAddress as jt}from"viem";function za({token:e,account:t,multicallAddress:r}){return N(e,"BERA")||N(e,"ETH")?{address:r,abi:$e,functionName:"getEthBalance",args:[t]}:{address:e.address,abi:Ka,functionName:"balanceOf",args:[t]}}async function $d({account:e,tokenList:t,publicClient:r}){if(!r)throw new Error("publicClient is not defined");if(!e||!t)throw new Error("account or tokenList is not defined");if(!jt(e))throw new Error("account is not a valid address");let a=t.filter(u=>jt(u.address));$(r.chain,"publicClient.chain"),$(r.chain.contracts,"publicClient.chain.contracts"),$(r.chain.contracts.multicall3,"publicClient.chain.contracts.multicall3");let{multicall3:o}=r.chain.contracts,n=typeof o=="string"?o:o.address;he(n,"multicall3Address");let s=a.map(u=>za({token:u,account:e,multicallAddress:n})),i=await r.multicall({contracts:s});return await Promise.all(i.map(async(u,m)=>{let d=a[m];if(u.error)return{balance:0n,formattedBalance:"0",...d};let b=Ya(u.result,d?.decimals||18);return{balance:u.result,formattedBalance:b.includes("e")?"0":b,...d}}))}import{getPublicClient as eo,getWalletClient as to,switchChain as ro}from"@wagmi/core";import{BaseError as ao,createWalletClient as oo,decodeErrorResult as no,HttpRequestError as io,http as so}from"viem";import{ChainId as lo,defaultChainId as zt}from"@berachain/config/internal";import{AbiFunctionSignatureNotFoundError as Xa,decodeFunctionData as Za}from"viem";async function Kt({publicClient:e,abi:t,...r}){let a=[...be,...t??[]],o,n,s,i,l,u,m;if("txHash"in r){let d=await e.getTransaction({hash:r.txHash});if(!d.to)throw new T({property:"tx",value:d,expected:"Transaction",message:"Trying to get revert reason for a contract creation"});l=d.input,n=d.to,s=d.from,i=d.value,o=d.blockNumber}else if(o=r.blockNumber,n=r.to,s=r.account,i=r.value,"data"in r)l=r.data;else if("functionName"in r&&"args"in r)u=r.functionName,m=r.args;else if(!i)throw new T({property:"dataOrFunctionNameAndArgs",value:r,expected:"Hex or FunctionName and Args"});try{if(!a)if(l)await e.call({data:l,to:n,account:s,blockNumber:o,value:i});else throw new Error("Data is required if abi is not provided");if("functionName"in r&&"args"in r&&r.functionName)u=r.functionName,m=r.args;else if(l){if(!a){let d=await e.call({data:l,to:n,account:s,blockNumber:o,value:i});throw new Error(`Getting revert reason for successful simulation. Data: ${l}`,{cause:d})}try{let d=Za({abi:a,data:l});u=d.functionName,m=d.args}catch(d){throw d instanceof Xa&&await e.call({data:l,to:n,account:s,blockNumber:o,value:i}),new Error("Data is required if abi is not provided")}}else throw new Error("No data or function name and args provided");throw a&&u?(await e.simulateContract({functionName:u,args:m,abi:a,address:n,account:s,blockNumber:o}),new j({message:"Getting revert reason for successful simulation",functionName:u,to:n,txHash:"txHash"in r?r.txHash:void 0,input:r})):new Error("No data or function name and args provided")}catch(d){if(d instanceof Error)return ne({error:d,abi:a,revertIfUnknown:!0});throw d}}var co=Xe(1),Yt=(e,t)=>e*(100n+BigInt(t))/100n;function Qe({nonceResult:e,onWarning:t}){if(e.status==="fulfilled"){if(e.value&&e.value>Number.MAX_SAFE_INTEGER){t?.(new x({message:"Nonce is too large. No nonce will be provided to avoid IntegerOutOfRangeError.",cause:e.value,level:"debug"}));return}return e.value}}function uo(e=zt){return e===lo.BEPOLIA?process.env.NEXT_PUBLIC_80069_ANVIL_IMPERSONATE_ACCOUNT==="true":process.env.NEXT_PUBLIC_80094_ANVIL_IMPERSONATE_ACCOUNT==="true"}async function gm(e){if(process.env.NODE_ENV==="development"&&!e.contractName&&e.address&&!("calls"in e||e.calls))throw console.warn("beraWriteContract: Contract name is required. Either update the contract mapping in devrel or provide a contract name in ContractName enum","This is a development error and will be thrown in development mode only."),new T({property:"contractName",value:e.contractName,expected:"ContractName",displayMessage:`[DEV] Contract name is required as it's not mapped in the devrel's contract mapping ${e.address}`,level:"error"});let{address:t,calls:r,value:a,gasLimit:o,onLoading:n,onSuccess:s,onWarning:i,onError:l,onSubmission:u,wagmiConfig:m,walletClient:d,account:b,txConfirmationTimeout:g=12e4,chainId:p=zt,impersonateAccount:A=uo(p),errorsAbi:P=[],pollingInterval:V=co,...y}=e;n?.(e);let F="data"in y?y.data:void 0,G=[...be,...P,..."abi"in y&&y.abi&&Array.isArray(y.abi)?y.abi:[]],I=d;if(!m){l?.(new T({property:"wagmiConfig",value:m,expected:"Config"}),e);return}if(!(I?.account?.type==="local"))try{await ro(m,{chainId:p})}catch(S){let E=S;l?.(new x({cause:E,displayMessage:"There was an error switching to the chain."}),e);return}if(!I)try{I=await to(m,{chainId:p})}catch(S){l?.(new x({cause:S,displayMessage:"There was an error connecting to the wallet."}),e);return}if(!I){l?.(new T({displayMessage:"There was an error connecting to the wallet.",property:"walletClient",value:I,expected:"WalletClient"}),e);return}let W=b||I.account;if(!W){l?.(new T({property:"account",value:W,expected:"Account"}),e);return}let me=typeof W=="string"?W:W.address,M=eo(m,{chainId:p});try{k(M)}catch(S){l?.(S,e);return}if(A){let S=ke(p);await S.impersonateAccount({address:me}),I=oo({transport:so(S.transport.url),account:W,chain:I.chain})}let q,oe={calls:"calls"in y?y.calls:void 0,params:"params"in y?y.params:void 0,value:a,data:"data"in y?y.data:void 0};try{let S=M.getTransactionCount({address:me,blockTag:"latest"}).catch(()=>{}),E={account:me,to:t,address:t,chainId:p,value:a};if(r){let Q=r.map(h=>{if("abi"in h&&Array.isArray(G)&&G.push(...h.abi),"data"in h)return{to:h.address,data:h.data,value:h.value??0n};if("abi"in h&&"functionName"in h){let L="params"in h?h.params:void 0;return{to:h.address,abi:h.abi,functionName:h.functionName,args:L,value:h.value??0n}}return{to:h.address,value:h.value??0n}});if(e.enableSimulateCalls){let h=await M.simulateCalls({calls:Q,account:W}),L=h.results.findIndex(_=>_.status==="failure");if(L!==-1){if(h.block.number===null)throw new T({property:"blockNumber",value:h.block.number,expected:"bigint",message:"Block number is null"});let _=h.results[L],{reason:Ve}=_.data&&_.data!=="0x"?{reason:je(no({data:_.data,abi:G}))}:ne({error:_.error,revertIfUnknown:!1,abi:G});l?.(new j({cause:_.error,txHash:q,chainId:p,reason:Ve,abi:G,input:oe,blockNumber:h.block.number}),e);return}}if(process.env.NODE_ENV==="test")throw new T({displayMessage:"Batch calls are not supported in test environment",expected:"not test",property:"NODE_ENV",value:process.env.NODE_ENV,level:"fatal"});let U=await I.sendCalls({calls:Q,account:W,forceAtomic:!0});u?.({id:U.id},e);let O=await I.waitForCallsStatus({id:U.id,pollingInterval:V,timeout:g});if(O.status==="success"){let h=O.receipts?.[0];if(!h)throw new x({message:"Call status is success but no receipt was found",cause:O,level:"error",reason:"CALL_STATUS_SUCCESS_BUT_NO_RECEIPT"});return s?.(h,e),h}throw console.error("wallet_sendCalls: Call failed",O),new j({cause:O,level:"error",input:oe,txHash:q,abi:G,chainId:p})}if(F){let[Q,U,O]=await Promise.allSettled([M.call({...E,data:F}),o??M.estimateGas({...E,data:F}),S]);if(Q.status==="rejected")throw Q.reason;let h=U.status==="fulfilled"?Yt(U.value,10):Ne;q=await I.sendTransaction({data:F,to:t,account:W,gas:h,chainId:p,nonce:Qe({nonceResult:O,onWarning(L){i?.(L,e)}}),value:a}),u?.({txHash:q},e)}else if("abi"in y&&"functionName"in y){let{abi:Q,functionName:U}=y,O="params"in y?y.params:void 0,[h,L,_]=await Promise.allSettled([M.simulateContract({...E,abi:G,functionName:U,args:O,account:W}),o??M.estimateContractGas({...E,abi:G,functionName:U,args:O}),S]);if(h.status==="rejected")throw h.reason;let Ve=o??(L.status==="fulfilled"?Yt(L.value,10):Ne);q=await I.writeContract({...h.value.request,chainId:p,gas:Ve,nonce:Qe({nonceResult:_,onWarning(tr){i?.(tr,e)}})}),u?.({txHash:q},e)}else{let[Q]=await Promise.allSettled([S]);q=await I.sendTransaction({chainId:p,to:t,value:a,account:W,nonce:Qe({nonceResult:Q,onWarning(U){i?.(U,e)}})}),u?.({txHash:q},e)}process.env.NODE_ENV==="test"&&await ke(p).mine({blocks:1});let z=await M.waitForTransactionReceipt({hash:q,pollingInterval:V,timeout:g,confirmations:1});if(z.status==="success")s?.(z,e);else{let Q=await Kt({publicClient:M,blockNumber:z.blockNumber,to:t,account:me,abi:G,args:"params"in y?y.params:void 0,functionName:"functionName"in y?y.functionName:void 0,value:a,data:F});process.env.NODE_ENV==="test"&&console.error("beraWriteContract: Revert reason",Q),l?.(new j({reason:Q.reason,txHash:q,receipt:z,to:t,functionName:"functionName"in y?y.functionName:void 0,input:oe,chainId:p,abi:G,blockNumber:z.blockNumber}),e)}return z}catch(S){if(S instanceof x)l?.(S,e);else if(S instanceof Error){let E=ne({error:S,revertIfUnknown:!1,abi:G});if(E&&E.rootCause instanceof ao&&"url"in E.rootCause){l?.(new Z({cause:E.rootCause,response:void 0,endpoint:{url:E.rootCause.url,type:"rpc"},statusCode:E.rootCause instanceof io?E.rootCause.status:void 0}),e);return}l?.(new j({cause:S,to:t,txHash:q,chainId:p,abi:G,functionName:"functionName"in y?y.functionName:void 0,input:oe}),e)}else l?.(new j({cause:S,txHash:q,to:t,chainId:p,functionName:"functionName"in y?y.functionName:void 0,input:oe,abi:G}),e)}}async function wm({publicClient:e,ui:t,...r}){let{config:a}=c(r),[o,n,s,i,l,u,m,d]=await Promise.all([e.readContract({address:a.pol.beraChef,abi:v,functionName:"MAX_COMMISSION_RATE"}),e.readContract({address:a.pol.beraChef,abi:v,functionName:"commissionChangeDelay"}),e.readContract({address:a.pol.beraChef,abi:v,functionName:"rewardAllocationBlockDelay"}),e.readContract({address:a.pol.beraChef,abi:v,functionName:"maxWeightPerVault"}),e.readContract({address:a.pol.beraChef,abi:v,functionName:"maxNumWeightsPerRewardAllocation"}),e.readContract({address:a.tokens.bgt,abi:H,functionName:"dropBoostDelay"}),e.readContract({address:a.tokens.bgt,abi:H,functionName:"activateBoostDelay"}),e.readContract({address:a.pol.beraChef,abi:v,functionName:"rewardAllocationInactivityBlockSpan"})]);return{maxCommissionRate:Number(o)/1e4,boostDelay:Number(m),unboostDelay:Number(u),commissionChangeDelay:Number(n),rewardAllocationBlockDelay:Number(s),maxWeightPerVault:Number(i)/1e4,maxNumWeightsPerRewardAllocation:Number(l),rewardAllocationInactivityBlockSpan:Number(d),ui:t}}import{GetValidators as mo}from"@berachain/graphql/pol/api";async function Xt({variables:e={},...t}={}){let{config:r}=c(t);return(await f("api",t).query({query:mo,variables:{chain:r.bex.chainName,...e}})).data}import{isAddressEqual as po}from"viem";async function Vm({allocation:e}){let t=await Re({filter:{where:{vaultAddressIn:e.weights.map(a=>a.receiver)}}}),r=e?.start.blockNumber??0;return e?.weights.map(a=>({percentage:a.percentage,receiver:a.receiver,startBlock:r,receivingVault:t?.gaugeList.find(o=>po(o.address,a.receiver))}))}import{GetValidator as fo}from"@berachain/graphql/pol/api";async function Fm({id:e,...t}){let{config:r}=c(t);return(await f("api",t).query({query:fo,variables:{id:e,chain:r.bex.chainName}})).data}import{GetValidatorBlockStats as go}from"@berachain/graphql/pol/subgraph";async function qm({pubKey:e,first:t=1,...r}){let a=f("pol.subgraph",r);try{return(await a.query({query:go,variables:{pubKey:e,first:t}})).data}catch(o){throw console.error("GetValidatorBlockStats:",o),o}}function ae(e,t){return{start:{blockNumber:Number(e.startBlock),timestamp:e.startBlock!==0n?t:0},weights:e.weights.map(r=>({receiver:r.receiver,percentage:Number(r.percentageNumerator)/1e4}))}}function bo(e,t){return e.start.blockNumber===t.start.blockNumber&&e.weights.every((r,a)=>r.percentage===t.weights[a].percentage)}async function Om({client:e,pubKey:t,...r}){let{config:a}=c(r);try{let[o,n]=await Promise.all([e.readContract({address:a.pol.beraChef,abi:v,functionName:"getActiveRewardAllocation",args:[t]}),e.readContract({address:a.pol.beraChef,abi:v,functionName:"getSetActiveRewardAllocation",args:[t]})]),[s,i]=await Promise.all([o.startBlock!==0n?e.getBlock({blockNumber:BigInt(o.startBlock)}):{timestamp:0},n.startBlock!==0n?e.getBlock({blockNumber:BigInt(n.startBlock)}):{timestamp:0}]),l=ae(o,Number(s.timestamp)),u=ae(n,Number(i.timestamp)),m=!1;return u.start.blockNumber===0?m=!0:m=!bo(u,l),{activeRewardAllocation:l,setRewardAllocation:u,isBaseline:m,isNeverSet:u?.start.blockNumber===0}}catch(o){throw console.log("getValidatorRewardAllocation:",o),o}}function Jm(e){return e.start.blockNumber===0}async function $m({client:e,...t}){let{config:r}=c(t),a=await e.readContract({address:r.pol.beraChef,abi:v,functionName:"getDefaultRewardAllocation",args:[]});return ae({...a,startBlock:0n},0)}import{GetValidatorByAccount as yo}from"@berachain/graphql/pol/subgraph";async function zm({account:e,...t}){try{return(await f("pol.subgraph",t).query({query:yo,variables:{account:e}})).data}catch(r){throw console.error("getManagedValidatorByAccount:",r),r}}async function Zm({client:e,valPubKey:t}){return 5614}import{GetUserValidatorInformation as Ao}from"@berachain/graphql/pol/subgraph";async function Zt({account:e,block:t,...r}){return await f("pol.subgraph",r).query({query:Ao,variables:{address:e.toLowerCase(),block:t}})}import{formatEther as We}from"viem";async function er({account:e,pubkey:t,publicClient:r,...a}){let{config:o}=c(a);if(!e)throw new Error("account is required");if(!r)throw new Error("publicClient is required");let[n,s,i]=await Promise.all([r.readContract({address:o.tokens.bgt,abi:H,functionName:"boosted",args:[e,t]}),r.readContract({address:o.tokens.bgt,abi:H,functionName:"boostedQueue",args:[e,t]}),r.readContract({address:o.tokens.bgt,abi:H,functionName:"dropBoostQueue",args:[e,t]})]);return{pubkey:t,activeBoostAmount:We(n),queuedBoostAmount:We(s[1]),queuedDropBoostAmount:We(i[1]),queuedBoostStartBlock:s[0],queuedDropBoostStartBlock:i[0],hasPendingBoosts:Number(s[1])>0||Number(i[1])>0,hasActiveBoosts:Number(n)>0}}async function pp({account:e,publicClient:t,chain:r,...a}){let{config:o}=c(a),n=r??o.bex.chainName,s=await Zt({account:e}),[i,l]=await Promise.all([Xt({variables:{chain:n,where:{idIn:s.data.userValidatorInformations.map(u=>u.validator.id)}}}),t&&it({lastBlockTimestamp:s.data._meta?.block.timestamp,blockTime:o.averageBlockTime})?Promise.all(s.data.userValidatorInformations.map(u=>er({account:e,pubkey:u.validator.publicKey,publicClient:t}))):void 0]);return i?.validators.validators.map(u=>{let m=l?l.find(d=>d.pubkey.toLowerCase()===u.pubkey.toLowerCase()):s.data.userValidatorInformations.find(d=>d.validator.id.toLowerCase()===u.id.toLowerCase());if(!m)throw new Error("User deposited not found");return{...u,userBoosts:{pubkey:"pubkey"in m?m.pubkey:m.validator.publicKey,activeBoostAmount:m?.activeBoostAmount,queuedBoostAmount:m?.queuedBoostAmount,queuedBoostStartBlock:Number(m?.queuedBoostStartBlock),queuedDropBoostAmount:m?.queuedDropBoostAmount,queuedDropBoostStartBlock:Number(m?.queuedDropBoostStartBlock),hasPendingBoosts:Number(m?.queuedBoostAmount)>0||Number(m?.queuedDropBoostAmount)>0,hasActiveBoosts:Number(m?.activeBoostAmount)>0}}})}var ho=[{validatorAddress:"0x8f51e63d9921a461be29e73dca1c2385e1adc5943fbb36ded4ba96025ee8a783184d1118da08171f6ea831153c878a6d",earning:.045,staked:{amount:16114000000000000000n,formattedAmount:"161.14"},rewards:{amount:15214000000000000000n,formattedAmount:"152.14"}},{staked:{amount:141514000000000000000n,formattedAmount:"1415.14"},validatorAddress:"0x97b21253b17f4e814fe7505c15c18e68c85ab2477274ad370a762df50e3eb4cb1a48451e089bc22e158d7448549a8ab9",earning:.045,rewards:{amount:15414000000000000000n,formattedAmount:"154.14"},queueData:{stake:[{amount:16159000000000000000n,formattedAmount:"161.59"}],unstake:[{amount:16159000000000000000n,formattedAmount:"161.59",timestamp:R(Date.now()-72e6)}]}},{staked:{amount:141514000000000000000n,formattedAmount:"1415.14"},validatorAddress:"0xa2705d6b27891f3f5651f26547d1bb79e256f95f249d1ad717cef087d77d38b037e5d6dbaa2538930fd0731ec9b02f3a",earning:.145,rewards:{amount:15414000000000000000n,formattedAmount:"154.14"},queueData:{unstake:[{amount:16159000000000000000n,formattedAmount:"161.59",timestamp:R(Date.now()-72e6)}]}},{staked:{amount:141514000000000000000n,formattedAmount:"1415.14"},validatorAddress:"0xa2705d6b27891f3f5651f26547d1bb79e256f95f249d1ad717cef087d77d38b037e5d6dbaa2538930fd0731ec9b02f3a",earning:.145,rewards:{amount:15414000000000000000n,formattedAmount:"154.14"},queueData:{unstake:[{amount:16159000000000000000n,formattedAmount:"161.59",timestamp:R(Date.now()-72e6)}]}},{staked:{amount:141514000000000000000n,formattedAmount:"1415.14"},validatorAddress:"0xa2705d6b27891f3f5651f26547d1bb79e256f95f249d1ad717cef087d77d38b037e5d6dbaa2538930fd0731ec9b02f3a",earning:.145,rewards:{amount:15414000000000000000n,formattedAmount:"154.14"},queueData:{unstake:[{amount:16159000000000000000n,formattedAmount:"161.59",timestamp:R(Date.now()-72e6)}]}},{staked:{amount:141514000000000000000n,formattedAmount:"1415.14"},validatorAddress:"0xa2705d6b27891f3f5651f26547d1bb79e256f95f249d1ad717cef087d77d38b037e5d6dbaa2538930fd0731ec9b02f3a",earning:.145,rewards:{amount:15414000000000000000n,formattedAmount:"154.14"},queueData:{unstake:[{amount:16159000000000000000n,formattedAmount:"161.59",timestamp:R(Date.now()-72e6)}]}},{staked:{amount:141514000000000000000n,formattedAmount:"1415.14"},validatorAddress:"0xa2705d6b27891f3f5651f26547d1bb79e256f95f249d1ad717cef087d77d38b037e5d6dbaa2538930fd0731ec9b02f3a",earning:.145,rewards:{amount:15414000000000000000n,formattedAmount:"154.14"},queueData:{unstake:[{amount:16159000000000000000n,formattedAmount:"161.59",timestamp:R(Date.now()-72e6)}]}},{staked:{amount:241514000000000000000n,formattedAmount:"2415.14"},validatorAddress:"0xa4e4b63514f54d61da5197359f11ff1fc2930788ba2ffdd30c2fc059cbe0221020197bf9446b16ac347f36c7517a8686",earning:.145,rewards:{amount:15414000000000000000n,formattedAmount:"154.14"},queueData:{unstake:[{amount:1159000000000000000n,formattedAmount:"11.59",timestamp:R(Date.now()-36e6)}]}},{validatorAddress:"0xb0511ec039591e98bd4e183ba70b85572214a7ad8ca1a43e96ad3495d3821054927bc542e5482ec9733e35b7ef0b1f03",earning:.045,staked:{amount:141514000000000000000n,formattedAmount:"1415.14"},rewards:{amount:15414000000000000000n,formattedAmount:"154.14"},queueData:{stake:[{amount:1159000000000000000n,formattedAmount:"11.59"}]}}];async function bp(e){return await new Promise(t=>setTimeout(t,2e3)),e==="0x4C368fFE3650379d6318C8d4630bc51f8Ad12bB6"?ho:[]}import{GetValidatorAnalytics as wo}from"@berachain/graphql/pol/subgraph";async function Cp({pubkey:e,dayRange:t,...r}){return(await f("pol.subgraph",r).query({query:wo,variables:{pubKey:e,timestamp:ot(t).toString()}})).data}async function vp({client:e,pubKey:t,...r}){let{config:a}=c(r),o=await e.readContract({address:a.pol.beraChef,abi:v,functionName:"getValCommissionOnIncentiveTokens",args:[t]});return Number(o??0n)/1e4}var Vp=(e,t,r)=>{if(!t||!e)return 0;let a=ie(1)/r;return(t?a*(Number(e.dynamicData?.stakedBeraAmount)/t):0)*Number.parseFloat(e.dynamicData?.rewardRate??"0")};async function Tp({client:e,pubKey:t,...r}){let{config:a}=c(r);try{return await e.readContract({address:a.depositContract,abi:fe,functionName:"getOperator",args:[t]})}catch(o){throw console.log("getValidatorOperatorAddress:",o),o}}async function Ep({client:e,pubKey:t,...r}){let{config:a}=c(r),o=await e.readContract({address:a.pol.beraChef,abi:v,functionName:"getValQueuedCommissionOnIncentiveTokens",args:[t]});return{blockNumberLast:o.blockNumberLast,commissionRate:Number(o.commissionRate)/1e4}}async function Up({client:e,pubKey:t,...r}){let{config:a}=c(r);try{return await e.readContract({address:a.depositContract,abi:fe,functionName:"queuedOperator",args:[t]})}catch(o){throw console.log("getValidatorQueuedOperatorAddress:",o),o}}async function Hp({client:e,pubKey:t,...r}){let{config:a}=c(r);try{let o=await e.readContract({address:a.pol.beraChef,abi:v,functionName:"getQueuedRewardAllocation",args:[t]});return ae(o,0)}catch(o){throw console.log("getValidatorQueuedRewardAllocation:",o),o}}function Co(e){return e?.rewardAllocationWeights?.reduce((t,r)=>{if(!r)return t;let a=r.receivingVault?.activeIncentives.filter(o=>Number(o.remainingAmount)>0).reduce((o,n)=>{let s=Number(n.remainingAmountUsd)/Number(n.remainingAmount);return o+Number(n.incentiveRate)*s},0)??0;return t+a*r.percentage},0)}function $p({validator:e,bgtPrice:t}){let r=Number(e.dynamicData?.activeBoostAmount??0),a=Co(e);return!a||!r?0:a*Number(e.dynamicData?.lastDayDistributedBGTAmount??0)*365/(r*t)}export{vo as a,No as b,f as c,mr as d,dt as e,tn as f,pn as g,An as h,Bn as i,pt as j,Dn as k,Wn as l,Hn as m,jn as n,Zn as o,ai as p,re as q,li as r,Be as s,pi as t,bi as u,Bi as v,Vi as w,Bt as x,qi as y,Oi as z,Hi as A,Ki as B,xt as C,Fe as D,vt as E,Bs as F,Vs as G,Ts as H,Es as I,fa as J,Os as K,_s as L,js as M,el as N,Vt as O,ul as P,Nt as Q,Bl as R,Nl as S,Fl as T,Ca as U,Ql as V,Ol as W,Gt as X,Re as Y,hc as Z,Et as _,Rc as $,Gc as aa,Ec as ba,Mc as ca,Zc as da,ou as ea,uu as fa,pu as ga,Au as ha,Bu as ia,de as ja,Eu as ka,Ou as la,Ju as ma,Ht as na,id as oa,pd as pa,Ad as qa,Pd as ra,kd as sa,Dd as ta,qd as ua,Od as va,za as wa,$d as xa,uo as ya,gm as za,wm as Aa,Xt as Ba,Vm as Ca,Fm as Da,qm as Ea,ae as Fa,bo as Ga,Om as Ha,Jm as Ia,$m as Ja,zm as Ka,Zm as La,er as Ma,pp as Na,bp as Oa,Cp as Pa,vp as Qa,Vp as Ra,Tp as Sa,Ep as Ta,Up as Ua,Hp as Va,Co as Wa,$p as Xa};
@@ -0,0 +1,3 @@
1
+ "use strict";Object.defineProperty(exports, "__esModule", {value: true}); function _interopRequireWildcard(obj) { if (obj && obj.__esModule) { return obj; } else { var newObj = {}; if (obj != null) { for (var key in obj) { if (Object.prototype.hasOwnProperty.call(obj, key)) { newObj[key] = obj[key]; } } } newObj.default = obj; return newObj; } } function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; } function _nullishCoalesce(lhs, rhsFn) { if (lhs != null) { return lhs; } else { return rhsFn(); } } async function _asyncNullishCoalesce(lhs, rhsFn) { if (lhs != null) { return lhs; } else { return await rhsFn(); } } function _optionalChain(ops) { let lastAccessLHS = undefined; let value = ops[0]; let i = 1; while (i < ops.length) { const op = ops[i]; const fn = ops[i + 1]; i += 2; if ((op === 'optionalAccess' || op === 'optionalCall') && value == null) { return undefined; } if (op === 'access' || op === 'optionalAccess') { lastAccessLHS = value; value = fn(value); } else if (op === 'call' || op === 'optionalCall') { value = fn((...args) => value.call(lastAccessLHS, ...args)); lastAccessLHS = undefined; } } return value; } async function _asyncOptionalChain(ops) { let lastAccessLHS = undefined; let value = ops[0]; let i = 1; while (i < ops.length) { const op = ops[i]; const fn = ops[i + 1]; i += 2; if ((op === 'optionalAccess' || op === 'optionalCall') && value == null) { return undefined; } if (op === 'access' || op === 'optionalAccess') { lastAccessLHS = value; value = await fn(value); } else if (op === 'call' || op === 'optionalCall') { value = await fn((...args) => value.call(lastAccessLHS, ...args)); lastAccessLHS = undefined; } } return value; } var _class;var _chunkKIA6GUINcjs = require('./chunk-KIA6GUIN.cjs');var _chunk6PL44I45cjs = require('./chunk-6PL44I45.cjs');var _chunkKBW7JTEIcjs = require('./chunk-KBW7JTEI.cjs');var _chunkYKKMWJX5cjs = require('./chunk-YKKMWJX5.cjs');var _chunkMDA4YT6Jcjs = require('./chunk-MDA4YT6J.cjs');var _chunk33CW5NUNcjs = require('./chunk-33CW5NUN.cjs');var _viem = require('viem');async function vo({sharesAmount:e,vaultAddress:t,publicClient:r}){let a=await r.readContract({address:t,abi:_chunkKIA6GUINcjs.a,functionName:"convertToAssets",args:[e]});return{raw:a,formatted:_viem.formatEther.call(void 0, a)}}async function No({vaultAddress:e,publicClient:t}){let r=await t.readContract({address:e,abi:_chunkKIA6GUINcjs.a,functionName:"maxDeposit",args:[e]});return _viem.formatEther.call(void 0, r)}var _client = require('@apollo/client');var _http = require('@apollo/client/link/http');var _config = require('@berachain/config');var _internal = require('@berachain/config/internal');var _api = require('@berachain/graphql/dex/api'); var _api2 = _interopRequireDefault(_api);var _nextjs = require('@sentry/nextjs'); var st = _interopRequireWildcard(_nextjs); var ce = _interopRequireWildcard(_nextjs); var Ut = _interopRequireWildcard(_nextjs); var $t = _interopRequireWildcard(_nextjs);var Ce=class extends _client.ApolloClient{constructor(t){super(t),this.url=t.url}async query(t){let r=sr(t.query),a={url:this.url,type:"graphql"},o={"operation.type":"query","operation.source.url":a.url,"operation.source.type":a.type,"operation.source.queryName":r};try{let n=await st.startSpan({name:`GraphQL ${r}`,op:"BeraApolloClient.query",attributes:o},async()=>super.query(t));if(n.error||n.data===void 0)throw new (0, _chunk33CW5NUNcjs.f)({level:"fatal",tags:o,message:"Bera Apollo Client: No data returned from query, but error should be thrown since errorPolicy is none"});return{data:n.data}}catch(n){throw!_internal.appConfig.env.isProduction&&console.error("BeraApolloClient error",n),_client.ServerError.is(n)?new (0, _chunkMDA4YT6Jcjs.a)({response:n.response,cause:n,statusCode:n.statusCode,endpoint:a,tags:o}):n instanceof TypeError?new (0, _chunkMDA4YT6Jcjs.a)({level:"fatal",reason:"TypeError",response:n,cause:n,endpoint:a,tags:o}):new (0, _chunkMDA4YT6Jcjs.a)({response:n,tags:o,cause:n,endpoint:a})}}};function sr(e){return _optionalChain([e, 'access', _2 => _2.definitions, 'access', _3 => _3.find, 'call', _4 => _4(r=>r.kind==="OperationDefinition"), 'optionalAccess', _5 => _5.name, 'optionalAccess', _6 => _6.value])}function dr(e){if(!_internal.currentDapp)return e;let t=typeof e=="string"?void 0:e.headers;return{uri:_config.getUriFromLink.call(void 0, e),headers:{...t,"x-graphql-client-name":`berachain.${_internal.currentDapp}.${process.env.NEXT_RUNTIME||"browser"}`,"x-graphql-client-version":`${process.env.VERCEL_TARGET_ENV}.${process.env.VERCEL_GIT_COMMIT_SHA}`}}}function Y(e,{ssrMode:t,inMemoryCacheOptions:r}={}){let a=_config.getUriFromLink.call(void 0, e),o=typeof e=="string"?void 0:e.headers;return new Ce({url:a,link:new (0, _http.HttpLink)({uri:a,headers:o}),defaultOptions:{query:{errorPolicy:"none",fetchPolicy:"no-cache"}},cache:new (0, _client.InMemoryCache)(r),ssrMode:t})}function f(e,{...t}){let{config:r}=_chunkYKKMWJX5cjs.a.call(void 0, t);switch(e){case"api":return Y(dr(r.api),{inMemoryCacheOptions:{possibleTypes:_api2.default.possibleTypes}});case"bend.whisk":if(!r.bend.whiskApi)throw new (0, _chunk33CW5NUNcjs.f)({message:"Bend whisk API is not configured on this chain",level:"error"});return Y(r.bend.whiskApi);case"honey.subgraph":return Y(r.honey.subgraph);case"pol.subgraph":return Y(r.pol.subgraph);case"governance.subgraph":return Y(r.governance.subgraph);case"blocks.subgraph":return Y(r.blocksSubgraph);case"bex.subgraph":return Y(r.bex.subgraph)}}var _bignumberjs = require('bignumber.js'); var _bignumberjs2 = _interopRequireDefault(_bignumberjs);var dt= (_class =class e{static __initStatic() {this.PATH_NOT_FOUND_REASON="NO_SWAP_PATHS"}__init() {this.notFoundMessages=[]}constructor(t={}){;_class.prototype.__init.call(this);_class.prototype.__init2.call(this);let{config:r,chainId:a}=_chunkYKKMWJX5cjs.a.call(void 0, t);this.config=r,this.chainId=a}__init2() {this.url=""}parseAddresses(t,r){if(!_viem.isAddress.call(void 0, t)||!_viem.isAddress.call(void 0, r))throw new (0, _chunk33CW5NUNcjs.f)({message:`Invalid address: ${t} or ${r}`,level:"error"});return{tokenInAddress:_chunkYKKMWJX5cjs.e.call(void 0, t,"BERA")?this.config.tokens.wbera:t,tokenOutAddress:_chunkYKKMWJX5cjs.e.call(void 0, r,"BERA")?this.config.tokens.wbera:r,isTokenInNative:_chunkYKKMWJX5cjs.e.call(void 0, t,"BERA"),isTokenOutNative:_chunkYKKMWJX5cjs.e.call(void 0, r,"BERA")}}getAmountAfterFees(t,r){if(r===void 0)throw new (0, _chunk33CW5NUNcjs.f)({message:"aggregatorsFeeBps is required",level:"error"});let a=new (0, _bignumberjs.BigNumber)(t).times(r).dividedBy(1e4).toFixed(0,_bignumberjs.BigNumber.ROUND_DOWN);return new (0, _bignumberjs.BigNumber)(t).minus(a).toFixed(0,_bignumberjs.BigNumber.ROUND_DOWN)}getInputData({tokenIn:t,amountIn:r,isNative:a,isPermit2Approval:o=!1,permit2SpenderAddress:n=_viem.zeroAddress}){return{tokenIn:t,amountIn:BigInt(r),isNative:a,isPermit2Approval:o,permit2SpenderAddress:n}}getMinAmountOut(t,r){if(r===void 0)throw new (0, _chunk33CW5NUNcjs.f)({message:"slippage is required",level:"error"});let a=new (0, _bignumberjs.BigNumber)(t).times(1-r/100);return a.isNaN()||a.isZero()?0n:BigInt(a.toFixed(0))}checkChainSupport(){if(!this.supportedChains.includes(this.chainId))throw new (0, _chunk33CW5NUNcjs.f)({message:`${this.name} is not supported on chain ${this.chainId}`,level:"error"})}async fetch(t,r){try{return await _chunkKBW7JTEIcjs.b.call(void 0, {url:t,name:this.name,type:this.type},{method:"GET",headers:{"Content-Type":"application/json"},...r})}catch(a){let o=_chunk6PL44I45cjs.a.call(void 0, {cause:a});throw this.notFoundMessages.some(n=>o.message.includes(n))&&(o.reason=e.PATH_NOT_FOUND_REASON),o}}}, _class.__initStatic(), _class);var _berancersdk = require('@berachain-foundation/berancer-sdk');var _chains = require('viem/chains');for(let e of Object.keys(_internal.chainConfigs)){let{config:t,chainId:r}=_chunkYKKMWJX5cjs.a.call(void 0, {chainId:Number(e)});_berancersdk.API_CHAIN_NAMES[r]=t.bex.chainName,_berancersdk.CHAINS[r]=r===_chains.berachain.id?_chains.berachain:_chains.berachainBepolia,_berancersdk.BALANCER_RELAYER[r]=t.bex.relayer,_berancersdk.VAULT[r]=t.bex.vault,_berancersdk.BALANCER_QUERIES[r]=t.bex.queries,_berancersdk.WEIGHTED_POOL_FACTORY_BALANCER_V2[r]=_viem.zeroAddress,_berancersdk.COMPOSABLE_STABLE_POOL_FACTORY[r]=_viem.zeroAddress;let a=new (0, _berancersdk.Token)(r,_viem.zeroAddress,_chunkYKKMWJX5cjs.b.decimals,_chunkYKKMWJX5cjs.b.name,_chunkYKKMWJX5cjs.b.symbol,t.tokens.wbera);_berancersdk.NATIVE_ASSETS[r]=a}var _api3 = require('@berachain/graphql/pol/api');async function pn({textSearch:e,chain:t,first:r,orderBy:a,orderDirection:o,skip:n,fetchPolicy:s,userAddress:i,blacklistedPoolIds:l,...u}={}){let{config:m}=_chunkYKKMWJX5cjs.a.call(void 0, u),b=await f("api",u).query({query:_api.GetPools,variables:{textSearch:e,chain:_nullishCoalesce(t, () => (m.bex.chainName)),first:r,orderBy:_nullishCoalesce(a, () => (_api3.GqlPoolOrderBy.TotalLiquidity)),orderDirection:_nullishCoalesce(o, () => (_api3.GqlPoolOrderDirection.Desc)),skip:n,userAddress:i,blacklistedPoolIds:l},fetchPolicy:s});return{pools:_nullishCoalesce(b.data.poolGetPools, () => ([])),count:_nullishCoalesce(b.data.count, () => (0))}}async function An({poolId:e,account:t,...r}){let{config:a}=_chunkYKKMWJX5cjs.a.call(void 0, r),s=(await f("api",r).query({query:_api.GetPool,variables:{id:e,userAddress:t,chain:a.bex.chainName},fetchPolicy:"no-cache"})).data.poolGetPool;if(!s)throw new Error(`Pool not found for id: ${e} and user ${t}`);return s}async function Bn(e={}){let{config:t}=_chunkYKKMWJX5cjs.a.call(void 0, e);return(await f("api",e).query({query:_api.GetGlobalLiquidityAndSwapVolume,variables:{chain:t.bex.chainName}})).data}async function pt({publicClient:e,poolAddress:t}){let r=_berancersdk.weightedPoolV4Abi_V2,a=await e.multicall({contracts:[{address:t,abi:r,functionName:"inRecoveryMode"},{address:t,abi:r,functionName:"getPausedState"}],allowFailure:!1});return{isPoolInRecoveryMode:a[0],isPoolPaused:a[1][0]}}async function Dn({poolId:e,publicClient:t,...r}){let{config:a}=_chunkYKKMWJX5cjs.a.call(void 0, r),o=e.slice(0,42);if(!_viem.isAddress.call(void 0, o)||!_viem.isHex.call(void 0, e))throw new (0, _chunk33CW5NUNcjs.g)({property:"poolId",value:e,expected:"Hex"});try{let[n,s,i,l,u,m,d,b,g]=await Promise.all([t.readContract({address:o,abi:_viem.erc20Abi,functionName:"name"}),t.readContract({address:a.bex.vault,abi:_berancersdk.vaultV2Abi,functionName:"getPoolTokens",args:[e]}),t.readContract({address:o,abi:_viem.erc20Abi,functionName:"totalSupply"}),t.readContract({address:o,abi:_berancersdk.weightedPoolV4Abi_V2,functionName:"getSwapFeePercentage"}),t.readContract({address:o,abi:_berancersdk.weightedPoolV4Abi_V2,functionName:"version"}),t.readContract({address:o,abi:_berancersdk.weightedPoolV4Abi_V2,functionName:"decimals"}),t.readContract({address:a.bex.factories.composableStable,abi:_berancersdk.weightedPoolFactoryAbi_V3,functionName:"isPoolFromFactory",args:[o]}),t.readContract({address:a.bex.factories.weighted,abi:_berancersdk.weightedPoolFactoryAbi_V3,functionName:"isPoolFromFactory",args:[o]}),pt({publicClient:t,poolAddress:o})]),p=Number(m),A=JSON.parse(u),P,V,y;if(d?[P,y]=await Promise.all([t.readContract({address:o,abi:[{type:"function",name:"getActualSupply",stateMutability:"view",inputs:[],outputs:[{type:"uint256"}]}],functionName:"getActualSupply"}),t.readContract({address:o,abi:_berancersdk.stablePoolAbi_V3,functionName:"getAmplificationParameter"})]):A.name==="WeightedPool"&&(V=await t.readContract({address:o,abi:_berancersdk.weightedPoolV4Abi_V2,functionName:"getNormalizedWeights"})),!d&&!b)throw new Error(`Pool ${o} is not a valid BEX pool`);return{name:n,address:o,id:e,poolTokens:[s[0],s[1].map(String),Number(s[2])],totalSupply:_viem.formatUnits.call(void 0, _nullishCoalesce(P, () => (i)),p),swapFee:_viem.formatEther.call(void 0, l),decimals:p,weights:_optionalChain([V, 'optionalAccess', _7 => _7.map, 'call', _8 => _8(F=>_viem.formatEther.call(void 0, F))]),version:A,factory:d?a.bex.factories.composableStable:a.bex.factories.weighted,type:d?_api3.GqlPoolType.Stable:_api3.GqlPoolType.Weighted,amplificationParameter:y?[Number(y[0]),y[1],Number(y[2])]:void 0,pausedState:g}}catch(n){throw _chunk6PL44I45cjs.a.call(void 0, {cause:n})}}async function Wn({poolId:e,typeInArray:t,...r}){let{config:a}=_chunkYKKMWJX5cjs.a.call(void 0, r);return(await f("api",r).query({query:_api.GetPoolEvents,variables:{poolId:e,typeIn:t,chain:a.bex.chainName}})).data}async function Hn({poolId:e,chain:t,...r}){if(!e||!_viem.isHex.call(void 0, e))throw new (0, _chunk33CW5NUNcjs.g)({property:"poolId",value:e,expected:"hex string"});let a=f("api",r),{data:o}=await a.query({query:_api.GetPoolHistoricalData,variables:{poolId:e,chain:t}});return o.poolGetSnapshots}var jn=e=>({type:_berancersdk.mapPoolType.call(void 0, e.type),protocolVersion:e.protocolVersion,tokens:e.tokens.map(t=>({...t,address:t.address})),id:e.id,address:e.address});var _subgraph = require('@berachain/graphql/dex/subgraph');async function Zn({poolId:e,...t}){if(!_viem.isHex.call(void 0, e))throw new Error("poolId is not a valid hex string");return(await f("bex.subgraph",t).query({query:_subgraph.GetSubgraphPool,variables:{id:e}})).data.pool}async function ai({publicClient:e,...t}){let{config:r}=_chunkYKKMWJX5cjs.a.call(void 0, t);return(await e.readContract({address:r.bex.vault,abi:_chunkKIA6GUINcjs.b,functionName:"getPausedState"}))[0]}var re=({fieldOrType:e,value:t,required:r=!0,baseUrl:a,components:o})=>{if(!["bool","string"].includes(e)&&r&&(t==null||t===""))return"Required";if(e.startsWith("uint")||e.startsWith("int")){if(typeof t!="string")return"Invalid amount";try{let s=BigInt(t);if(e.startsWith("uint")&&s<0n)return"Negative amount"}catch (e2){return"Invalid amount"}return null}switch(e){case"string":return t!==void 0&&typeof t!="string"?"Invalid amount":null;case"bool":return typeof t!="boolean"?"Invalid amount":null;case"title":return t.length===0?"Required":null;case"description":return t.length===0?"Required":null;case"forumLink":if(t.length===0)return"Required";if(!URL.canParse(t))return"Invalid address";let s=new URL(a);return t.startsWith(s.toString())?null:"Must be a berachain forum link";case"address":return _viem.isAddress.call(void 0, t,{strict:!0})?null:"Invalid address";case"hex":return _viem.isHex.call(void 0, t,{strict:!0})?null:"Invalid address";case"abi":try{JSON.parse(t)}catch (e3){return"Invalid ABI"}return null;case"action":return _viem.isAddress.call(void 0, t,{strict:!0})?null:"Invalid address";case"tuple":if(typeof t=="object"&&Array.isArray(o)){let i={};for(let l of o)i[l.name]=re({fieldOrType:l.type,value:t[l.name],components:l.components});return Object.values(i).every(l=>l===null)?null:i}return null;case"tuple[]":if(Array.isArray(t)){let i=t.map(l=>re({fieldOrType:"tuple",value:l,components:o}));return i.every(l=>l===null)?null:i}return null;case"logoURI":return t===void 0||t===""||URL.canParse(t)&&new URL(t).protocol==="https:"?null:"Must be HTTPS or IPFS";case"url":return t===void 0||t===""||URL.canParse(t)&&new URL(t).protocol==="https:"?null:"Must be HTTPS";default:return console.error(`Invalid field or type: ${e}`),null}};var _governance = require('@berachain/graphql/governance');var Lr=!1,li= exports.r =[_governance.ProposalStatus.Active,_governance.ProposalStatus.PendingQueue,_governance.ProposalStatus.PendingExecution,_governance.ProposalStatus.Defeated,_governance.ProposalStatus.QuorumNotReached];function Be(e,t){let r=Date.now()/1e3;if(t!==void 0){if(e.status===_governance.ProposalStatus.CanceledByGuardian)return _governance.ProposalStatus.CanceledByGuardian;if(t===2)return Number(e.voteStartAt)<r?_governance.ProposalStatus.CanceledByUser:_governance.ProposalStatus.CanceledByGuardian;if(t===3)return e.pollResult?!e.quorum||BigInt(e.quorum)>BigInt(e.pollResult.totalTowardsQuorum)?_governance.ProposalStatus.QuorumNotReached:_governance.ProposalStatus.Defeated:_governance.ProposalStatus.QuorumNotReached;if(t===4)return _governance.ProposalStatus.PendingQueue;if(t===5)return Number(e.queueEnd)<Date.now()/1e3?_governance.ProposalStatus.PendingExecution:_governance.ProposalStatus.InQueue;if(t===6)return console.warn("Unexpected expired state on proposal id: ",e.id),_governance.ProposalStatus.Defeated}return e.status===_governance.ProposalStatus.InQueue&&Number(e.queueEnd)<Date.now()/1e3?_governance.ProposalStatus.PendingExecution:Lr&&t===1&&e.quorum&&BigInt(e.quorum)<BigInt(e.pollResult.totalTowardsQuorum)&&Number(e.pollResult.forPercentage)>Number(e.pollResult.againstPercentage)?_governance.ProposalStatus.PendingQueue:e.status===_governance.ProposalStatus.Pending?Number(e.voteStartAt)<r&&Number(e.voteEndAt)>r?_governance.ProposalStatus.Active:Number(e.voteEndAt)<r?e.pollResult?!e.quorum||BigInt(e.quorum)>BigInt(e.pollResult.totalTowardsQuorum)?_governance.ProposalStatus.QuorumNotReached:_optionalChain([e, 'access', _9 => _9.pollResult, 'optionalAccess', _10 => _10.against])>_optionalChain([e, 'access', _11 => _11.pollResult, 'optionalAccess', _12 => _12.for])?_governance.ProposalStatus.Defeated:_governance.ProposalStatus.PendingQueue:_governance.ProposalStatus.QuorumNotReached:_governance.ProposalStatus.Pending:e.status===_governance.ProposalStatus.Active&&Number(e.voteEndAt)<r?!e.quorum||BigInt(e.quorum)>BigInt(e.pollResult.totalTowardsQuorum)?_governance.ProposalStatus.QuorumNotReached:BigInt(_nullishCoalesce(_optionalChain([e, 'access', _13 => _13.pollResult, 'optionalAccess', _14 => _14.against]), () => (0n)))>BigInt(_nullishCoalesce(_optionalChain([e, 'access', _15 => _15.pollResult, 'optionalAccess', _16 => _16.for]), () => (0n)))?_governance.ProposalStatus.Defeated:_governance.ProposalStatus.PendingQueue:e.status===_governance.ProposalStatus.InQueue&&Number(e.queueEnd)<Date.now()/1e3?_governance.ProposalStatus.PendingExecution:e.status}async function pi({where:e,orderBy:t,orderDirection:r,offset:a=0,perPage:o=20,text:n,...s}){try{if(o>1e3)throw new Error("perPage must be less than 1000");let i=f("governance.subgraph",s),[l]=await Promise.all([n?i.query({query:_governance.SearchProposals,variables:{offset:a,limit:o,where:e,text:n}}):i.query({query:_governance.GetProposals,variables:{offset:a,limit:o,where:e,orderBy:t,orderDirection:r}})]);return l.data.proposals.map(u=>({...u,status:Be(u)}))}catch(i){throw console.error("getAllProposals:",i),i}}var bi=(e,t)=>{let r={};return r.title=re({fieldOrType:"title",value:e.title}),r.description=re({fieldOrType:"description",value:e.description}),r.forumLink=re({fieldOrType:"forumLink",value:e.forumLink,baseUrl:t.forumLink}),r};function zr(e){return e.some(t=>t.name==="implementation"||t.name==="proxyType"||t.type==="constructor"&&_optionalChain([t, 'access', _17 => _17.inputs, 'optionalAccess', _18 => _18[0], 'optionalAccess', _19 => _19.name])==="implementation")}async function Ct({contractAddress:e,chainId:t,publicClient:r}){let a=`https://api.etherscan.io/v2/api?module=contract&action=getabi&address=${e}&apikey=${_internal.appConfig.apiKeys.private.etherscan}&chainId=${t}`,o=await fetch(a,{next:{revalidate:_chunkKBW7JTEIcjs.k.call(void 0, 1)}});if(!o.ok)throw new Error(`Failed to fetch ABI: ${o.statusText}`);let n=await o.json();if(n.status==="0")throw new Error(n.result);let s=JSON.parse(n.result);if(!zr(s))return s;let i=await r.getStorageAt({address:e,slot:"0x360894a13ba1a3210667c828492db98dca3e2076cc3735a920a3ca505d382bbc"});if(!i||_viem.trim.call(void 0, i)==="0x00")return s;let l=_viem.pad.call(void 0, _viem.trim.call(void 0, i),{size:20});return Ct({contractAddress:l,chainId:t,publicClient:r})}async function Xr({address:e,callData:t,knownAbi:r,chainId:a,publicClient:o}){try{if(_viem.decodeFunctionData.call(void 0, {data:t,abi:r}))return r}catch (e4){}try{return await Ct({contractAddress:e,chainId:a,publicClient:o})}catch (e5){}}function Zr(e,t){try{return _viem.decodeFunctionData.call(void 0, {data:e,abi:t})}catch (e6){return}}function ea(e,t){return e.find(r=>r.type==="function"&&r.name===t)}function ta(e){if(e)try{return _viem.toFunctionSignature.call(void 0, e)}catch(t){console.error(t)}}async function Bi({address:e,callData:t,chainId:r=_internal.defaultChainId,publicClient:a}){let o=[..._chunkKIA6GUINcjs.l,..._chunkKIA6GUINcjs.n,..._viem.erc20Abi],n=await Xr({address:e,callData:t,knownAbi:o,chainId:r,publicClient:a}),s=Zr(t,n);if(!n||!s)return{args:[]};let i=ea(n,s.functionName),l=ta(i);return{abiItem:i,functionSignature:l,functionName:s.functionName,args:s.args}}async function Vi({proposalId:e,...t}){let a=await f("governance.subgraph",t).query({query:_governance.GetProposal,variables:{id:e}});if(a.data.proposal)return{...a.data.proposal,status:Be(a.data.proposal)}}var _graymatter = require('gray-matter'); var _graymatter2 = _interopRequireDefault(_graymatter);var aa=e=>{let t=/#(?:([\w-]+)# )?(.+)\n([\s\S]*)/,r=e.match(t);if(r){let a=r[1]||null,o=r[2],n=r[3].replace(`
2
+ `,"<br />");return{type:a,title:o,content:n}}throw new Error("Invalid proposal body")},Bt= exports.x =e=>{if(!e)return{isFrontMatter:!1,data:{title:"Loading..."},content:"",matter:"",language:"",orig:"",stringify:()=>""};let t=_nullishCoalesce(_optionalChain([e, 'optionalAccess', _20 => _20.description]), () => (""));if(_graymatter2.default.test(t))return{..._graymatter2.default.call(void 0, t),isFrontMatter:!0};try{let r=aa(t);return{isFrontMatter:!1,data:{title:r.title},content:r.content,matter:"",language:"",orig:t,stringify:()=>t}}catch (e7){return{isFrontMatter:!1,data:{title:_optionalChain([e, 'optionalAccess', _21 => _21.description, 'optionalAccess', _22 => _22.split, 'call', _23 => _23(`
3
+ `), 'access', _24 => _24[0], 'access', _25 => _25.slice, 'call', _26 => _26(0,100)])},content:t,matter:"",language:"",orig:t,stringify:()=>t}}};async function qi(e){_chunk6PL44I45cjs.c.call(void 0, e.publicClient);let t;"tx"in e?t=e.tx:t=await e.publicClient.getTransactionReceipt({hash:e.txHash});let r=_optionalChain([t, 'optionalAccess', _27 => _27.logs])?_optionalChain([_viem.parseEventLogs.call(void 0, {abi:_chunkKIA6GUINcjs.c,logs:t.logs,eventName:"ProposalCreated"}), 'optionalAccess', _28 => _28.at, 'call', _29 => _29(0)]):void 0;if(!t||!r)return null;let a=await e.publicClient.getBlock({blockNumber:t.blockNumber}),o=Bt({description:_optionalChain([r, 'optionalAccess', _30 => _30.args, 'access', _31 => _31.description])});return{id:String(r.args.proposalId),proposalId:String(_optionalChain([r, 'optionalAccess', _32 => _32.args, 'access', _33 => _33.proposalId])),createdAt:a.timestamp.toString(),title:o.data.title,createdAtBlock:a.timestamp.toString(),voteStartAt:String(_optionalChain([r, 'optionalAccess', _34 => _34.args, 'access', _35 => _35.voteStart])),voteEndAt:String(_optionalChain([r, 'optionalAccess', _36 => _36.args, 'access', _37 => _37.voteEnd])),proposer:_optionalChain([r, 'optionalAccess', _38 => _38.args, 'access', _39 => _39.proposer]),description:o.content,unverifiedForumLink:o.data.forumLink,pollResult:{for:"0",forVotersCount:0,forPercentage:"0",against:"0",againstVotersCount:0,againstPercentage:"0",abstain:"0",abstainVotersCount:0,abstainPercentage:"0",total:"0",totalVotersCount:0,totalTowardsQuorum:"0"},status:_governance.ProposalStatus.Pending,quorum:null,topics:o.data.topics,votes:[],executableCalls:_optionalChain([r, 'optionalAccess', _40 => _40.args, 'access', _41 => _41.targets, 'access', _42 => _42.map, 'call', _43 => _43((n,s)=>({__typename:"ExecutableCall",id:`${t.transactionHash}-${s}`,target:n,value:String(_optionalChain([r, 'optionalAccess', _44 => _44.args, 'access', _45 => _45.values, 'access', _46 => _46[s]])),calldata:_optionalChain([r, 'optionalAccess', _47 => _47.args, 'access', _48 => _48.calldatas, 'access', _49 => _49[s]])}))]),timelock:void 0}}async function Oi({variables:e,...t}){return f("governance.subgraph",t).query({query:_governance.GetProposalVotes,variables:e})}var _honey = require('@berachain/graphql/honey');async function Hi({days:e,...t}){return(await f("honey.subgraph",t).query({query:_honey.GetChartData,variables:{interval:_honey.Aggregation_Interval.Day,first:e}})).data}async function Ki({client:e,collateralList:t,...r}){let{config:a}=_chunkYKKMWJX5cjs.a.call(void 0, r);try{let o=await e.readContract({address:a.honey.factory,abi:_chunkKIA6GUINcjs.f,functionName:"getWeights"});return t.reduce((s,i,l)=>Object.assign(s,{[i.address]:o[l]}),{})}catch(o){throw console.log(o),o}}async function xt({address:e,publicClient:t}){try{if(!t)throw new Error("Public client not found");let[r,a,o]=await Promise.all([t.readContract({address:e,abi:_viem.erc20Abi,functionName:"decimals"}),t.readContract({address:e,abi:_viem.erc20Abi,functionName:"name"}),t.readContract({address:e,abi:_viem.erc20Abi,functionName:"symbol"})]),n={address:e,decimals:r,name:a,symbol:o};if(typeof n.decimals!="number"||typeof n.name!="string"||typeof n.symbol!="string")throw new Error(`Invalid ERC20 token. Address: ${e}`);return n}catch(r){throw console.error(r),_chunk6PL44I45cjs.a.call(void 0, {cause:r})}}async function Fe({client:e,tokenData:t,preferredCollateralOrder:r,...a}){let{config:o}=_chunkYKKMWJX5cjs.a.call(void 0, a),[n,s]=await Promise.all([e.readContract({address:o.honey.factory,abi:_chunkKIA6GUINcjs.f,functionName:"numRegisteredAssets"}),e.readContract({address:o.honey.factory,abi:_chunkKIA6GUINcjs.f,functionName:"referenceCollateral"})]),i=[];for(let b=0;b<n;b++)i.push(e.readContract({address:o.honey.factory,abi:_chunkKIA6GUINcjs.f,functionName:"registeredAssets",args:[BigInt(b)]}));let l=await Promise.all(i),m=(await Promise.all(l.map(b=>{let g=_optionalChain([t, 'optionalAccess', _50 => _50.find, 'call', _51 => _51(p=>_chunkYKKMWJX5cjs.e.call(void 0, p,b))]);return g||xt({address:b,publicClient:e})}))).filter(b=>!!b).sort((b,g)=>l.indexOf(b.address)-l.indexOf(g.address)).map((b,g)=>({...b,order:g}));if(_optionalChain([r, 'optionalAccess', _52 => _52.length])){let b=[];for(let g of r){let p=m.find(A=>_chunkYKKMWJX5cjs.e.call(void 0, A.address,g.address));p&&(b.push(p),m.splice(m.indexOf(p),1))}m.unshift(...b)}let d=m.find(b=>_chunkYKKMWJX5cjs.e.call(void 0, b,s));if(!m)throw new Error("Collateral tokens not found");if(!d)throw new Error("Reference collateral address not found");return{collaterals:m,referenceCollateral:d}}async function le({client:e,asset:t,amount:r,...a}){let{config:o}=_chunkYKKMWJX5cjs.a.call(void 0, a);try{let[n,s]=await Promise.all([e.readContract({address:o.honey.factory,abi:_chunkKIA6GUINcjs.f,functionName:"vaults",args:[t]}),e.readContract({address:o.honey.factory,abi:_chunkKIA6GUINcjs.f,functionName:"collectedFees",args:[o.honey.factory,t]})]);return await e.readContract({address:n,abi:_chunkKIA6GUINcjs.d,functionName:"balanceOf",args:[o.honey.factory]})+_viem.parseEther.call(void 0, _nullishCoalesce(r, () => ("0")))-s}catch(n){throw console.log(n),n}}async function vt({client:e,collateral:t,latestPrices:r,isPythWrapperEnabled:a,...o}){let{config:n}=_chunkYKKMWJX5cjs.a.call(void 0, o);try{let s=e.readContract({address:n.honey.factory,abi:_chunkKIA6GUINcjs.f,functionName:"isBadCollateralAsset",args:[t.address]}),i=e.readContract({address:n.honey.factory,abi:_chunkKIA6GUINcjs.f,functionName:"isPegged",args:[t.address]});if(a&&r){let m=r.prices.map(d=>_viem.parseUnits.call(void 0, d,18));i=e.readContract({address:n.honey.reader,abi:_chunkKIA6GUINcjs.g,functionName:"isPeggedWithPrice",args:[t.address,m[0]]})}let[l,u]=await Promise.all([s,i]);return{isBlacklisted:l,isDepegged:!u}}catch(s){throw console.log(s),s}}var da=_viem.parseEther.call(void 0, "1");async function Bs({client:e,asset:t,amount:r,isMint:a,isPythWrapperEnabled:o,latestPrices:n,...s}){let{config:i}=_chunkYKKMWJX5cjs.a.call(void 0, s);try{let l=await e.readContract({address:i.honey.factory,abi:_chunkKIA6GUINcjs.f,functionName:"globalCap"});if(l>=da)return!1;let[{collaterals:u},m]=await Promise.all([Fe({client:e}),ma({client:e,asset:t,amount:r,latestPrices:n,isPythWrapperEnabled:o})]);if(!m)return;for(let d in m)if((a&&_chunkYKKMWJX5cjs.e.call(void 0, u[d],t)||!a&&_chunkYKKMWJX5cjs.e.call(void 0, u[d],t))&&m[d]>l-_chunkKBW7JTEIcjs.r)return!0;return!1}catch(l){throw console.log(l),l}}async function ma({client:e,asset:t,amount:r,latestPrices:a,isPythWrapperEnabled:o}){let{collaterals:n}=await Fe({client:e}),s=0n,i=[];for(let l of n){let u=await vt({client:e,collateral:t,latestPrices:a,isPythWrapperEnabled:o});if(_optionalChain([u, 'optionalAccess', _53 => _53.isBlacklisted])||_optionalChain([u, 'optionalAccess', _54 => _54.isDepegged]))continue;let m=await le({client:e,asset:l.address,amount:_chunkYKKMWJX5cjs.e.call(void 0, l,t)?r:"0"});m&&(s+=m,i.push(m))}if(s===0n)return i;for(let l in n)i[l]=_viem.parseEther.call(void 0, i[l].toString())/s;return i}async function Vs({client:e,collateralList:t,...r}){let{config:a}=_chunkYKKMWJX5cjs.a.call(void 0, r);try{let o={mint:[],redeem:[]};for(let l of t)o.mint.push(e.readContract({address:a.honey.factory,abi:_chunkKIA6GUINcjs.f,functionName:"mintRates",args:[l.address]})),o.redeem.push(e.readContract({address:a.honey.factory,abi:_chunkKIA6GUINcjs.f,functionName:"redeemRates",args:[l.address]}));let[n,s,i]=await Promise.all([Promise.all(o.mint),Promise.all(o.redeem),e.readContract({address:a.honey.factory,abi:_chunkKIA6GUINcjs.f,functionName:"getWeights"})]);return t.reduce((l,u)=>{let m=t.indexOf(u);return l.single[u.address]={mintFee:1-+_viem.formatUnits.call(void 0, n[m],18),redeemFee:1-+_viem.formatUnits.call(void 0, s[m],18)},l.basket.mintFee+=l.single[u.address].mintFee*+_viem.formatUnits.call(void 0, i[m],18),l.basket.redeemFee+=l.single[u.address].redeemFee*+_viem.formatUnits.call(void 0, i[m],18),l},{single:{},basket:{mintFee:0,redeemFee:0}})}catch(o){throw console.log(o),o}}async function Ts({...e}={}){return(await f("honey.subgraph",e).query({query:_honey.GetGlobalData})).data}async function Es({client:e,...t}){let{config:r}=_chunkYKKMWJX5cjs.a.call(void 0, t),a=r.honey.token;return await e.readContract({address:a,abi:_chunkKIA6GUINcjs.e,functionName:"paused"})}var fa=(l=>(l.Mint="previewMintHoney",l.MintWithPrice="previewMintHoneyWithPrices",l.RequiredCollateral="previewMintCollaterals",l.RequiredCollateralWithPrice="previewMintCollateralsWithPrices",l.Redeem="previewRedeemCollaterals",l.RedeemWithPrice="previewRedeemCollateralsWithPrices",l.HoneyToRedeem="previewRedeemHoney",l.HoneyToRedeemWithPrice="previewRedeemHoneyWithPrices",l))(fa||{});async function Os({client:e,collateral:t,collateralList:r,amount:a,method:o,latestPrices:n,isPythWrapperEnabled:s,...i}){let{config:l}=_chunkYKKMWJX5cjs.a.call(void 0, i);try{let u=o==="previewMintHoney"||o==="previewRedeemHoney"||o==="previewMintHoneyWithPrices"||o==="previewRedeemHoneyWithPrices",m=_viem.parseUnits.call(void 0, a,u?t.decimals:18),d,b=[t.address,m];if(s&&n){let p=n.prices.map(A=>_viem.parseUnits.call(void 0, A,18));b=[t.address,m,p]}if(u){let p=await e.readContract({address:l.honey.reader,abi:_chunkKIA6GUINcjs.g,functionName:o,args:b});d={collaterals:p[0],honey:p[1]}}else d={collaterals:await e.readContract({address:l.honey.reader,abi:_chunkKIA6GUINcjs.g,functionName:o,args:b}),honey:m};let g=r.reduce((p,A)=>{let P=A.order;return A.address===t.address&&d.collaterals[P]===BigInt(0)?Object.assign(p,{[A.address]:d.collaterals[0]}):Object.assign(p,{[A.address]:d.collaterals[P]})},{});return g[t.address]===BigInt(0)&&(g[t.address]=d.collaterals[0]),{collaterals:g,honey:d.honey}}catch(u){throw console.log("error",u),u}}async function _s({pythOracle:e,publicClient:t}){return await t.readContract({address:e,abi:_chunkKIA6GUINcjs.h,functionName:"pythOracle"})}async function js({publicClient:e,factory:t,...r}){let{config:a}=_chunkYKKMWJX5cjs.a.call(void 0, r);return await e.readContract({address:_nullishCoalesce(t, () => (a.honey.factory)),abi:_chunkKIA6GUINcjs.f,functionName:"priceOracle"})}async function el({client:e,collateralList:t,honeyFactoryAddress:r,...a}){let{config:o}=_chunkYKKMWJX5cjs.a.call(void 0, a),n=_nullishCoalesce(r, () => (o.honey.factory));try{return await Promise.all(t.map(async i=>{let l=await e.readContract({address:o.honey.factory,abi:_chunkKIA6GUINcjs.f,functionName:"vaults",args:[i.address]}),[u,m,[d,b]]=await Promise.all([e.readContract({address:l,abi:_chunkKIA6GUINcjs.d,functionName:"balanceOf",args:[n]}),e.readContract({address:n,abi:_chunkKIA6GUINcjs.f,functionName:"collectedAssetFees",args:[i.address]}),e.readContract({address:l,abi:_chunkKIA6GUINcjs.d,functionName:"custodyInfo"})]),g=await e.readContract({address:l,abi:_chunkKIA6GUINcjs.d,functionName:"convertToAssets",args:[u-m]});return{address:i.address,balance:g.toString(),formattedBalance:_viem.formatUnits.call(void 0, g,i.decimals),vault:d?b:l}}))}catch(s){throw console.log(s),s}}var _hermesclient = require('@pythnetwork/hermes-client');var Aa="https://hermes.pyth.network";async function Vt({priceFeedId:e}){let r=await new (0, _hermesclient.HermesClient)(Aa,{}).getLatestPriceUpdates(e,{encoding:"hex",parsed:!0});return{calldata:r.binary.data.map(a=>`0x${a}`),prices:_nullishCoalesce(_optionalChain([r, 'access', _55 => _55.parsed, 'optionalAccess', _56 => _56.flatMap, 'call', _57 => _57(a=>_viem.formatUnits.call(void 0, BigInt(a.price.price),a.price.expo*-1))]), () => ([]))}}async function ul({client:e,asset:t,amount:r,isMint:a,referenceCollateral:o,...n}){let{config:s}=_chunkYKKMWJX5cjs.a.call(void 0, n);if(t===o.address)return!1;try{let[i]=await Promise.all([e.readContract({address:s.honey.factory,abi:_chunkKIA6GUINcjs.f,functionName:"relativeCap",args:[t]})]),[l,u]=await Promise.all([le({client:e,asset:t,amount:a?r:void 0}),le({client:e,asset:o.address,amount:a?void 0:r})]);return u===0n?l!==0n:_viem.parseEther.call(void 0, (_nullishCoalesce(l, () => (0n))).toString())/(_nullishCoalesce(u, () => (0n)))>=i-_chunkKBW7JTEIcjs.r}catch(i){throw console.log(i),i}}async function Nt({client:e,priceFeedId:t,...r}){let{config:a}=_chunkYKKMWJX5cjs.a.call(void 0, r);try{return await e.readContract({address:a.external.pyth,abi:_chunkKIA6GUINcjs.q,functionName:"getUpdateFee",args:[t]})}catch(o){throw console.error("getPythUpdateFee",o),o}}var Bl=async({state:e,account:t,publicClient:r,priceFeedMap:a,collateralList:o,isPythWrapperEnabled:n,...s})=>{let{config:i}=_chunkYKKMWJX5cjs.a.call(void 0, s),l=_chunkYKKMWJX5cjs.d.call(void 0, s),{actionType:u,fromAmount:m,collaterals:d,isBasketModeEnabled:b}=e,g=n?i.honey.pythWrapper:i.honey.factory,p=o.map(A=>A.address);if(t&&m[0]&&p.length){let A=u==="mint";if(n&&r&&a){let y=(await Vt({priceFeedId:Object.values(a)})).calldata,F;try{F=await Nt({client:r,priceFeedId:y})}catch (e8){F=_chunkKBW7JTEIcjs.x.call(void 0, d.length)}let G=[y,_optionalChain([d, 'access', _58 => _58[0], 'optionalAccess', _59 => _59.address]),_viem.parseUnits.call(void 0, m[0],_nullishCoalesce((A?_optionalChain([d, 'access', _60 => _60[0], 'optionalAccess', _61 => _61.decimals]):_optionalChain([l, 'optionalAccess', _62 => _62.decimals])), () => (18))),t,!!b];return{address:g,abi:_chunkKIA6GUINcjs.j,functionName:A?"mint":"redeem",params:G,value:F}}let P=[_optionalChain([d, 'access', _63 => _63[0], 'optionalAccess', _64 => _64.address]),_viem.parseUnits.call(void 0, m[0],_nullishCoalesce((A?_optionalChain([d, 'access', _65 => _65[0], 'optionalAccess', _66 => _66.decimals]):_optionalChain([l, 'optionalAccess', _67 => _67.decimals])), () => (18))),t,!!b];return{address:g,abi:_chunkKIA6GUINcjs.f,functionName:A?"mint":"redeem",params:P}}throw new Error("Something went wrong while creating the Honey swap payload")};async function Nl({client:e,isMint:t,collateralList:r,latestPrices:a,isPythWrapperEnabled:o,...n}){let{config:s}=_chunkYKKMWJX5cjs.a.call(void 0, n);if(o&&a){if(r.length===0)return;let l=a.prices.map(m=>_viem.parseUnits.call(void 0, m,18));return await e.readContract({address:s.honey.reader,abi:_chunkKIA6GUINcjs.g,functionName:"isBasketModeEnabledWithPrices",args:[t,l]})}return await e.readContract({address:s.honey.factory,abi:_chunkKIA6GUINcjs.f,functionName:"isBasketModeEnabled",args:[t]})}async function Fl({block:e,currentBlock:t,blockTime:r,publicClient:a}){if(_chunk6PL44I45cjs.b.call(void 0, e,"block"),_chunk6PL44I45cjs.c.call(void 0, a),t>e){let n=await a.getBlock({blockNumber:BigInt(e),includeTransactions:!1});return{timestamp:Number(n.timestamp)}}return{timestamp:_chunkKBW7JTEIcjs.d.call(void 0, Date.now())+r*(Number(e)-Number(t))}}var Ca=(a=>(a.Duration="duration",a.TargetRate="targetRate",a.TargetApr="targetApr",a))(Ca||{});async function Ql(e,t){let[r,a,o,n,s,i]=await Promise.all([t.readContract({address:e,abi:_chunkKIA6GUINcjs.n,functionName:"rewardsDuration"}),t.readContract({address:e,abi:_chunkKIA6GUINcjs.n,functionName:"rewardVaultManager"}),t.readContract({address:e,abi:_chunkKIA6GUINcjs.n,functionName:"rewardRate"}),t.readContract({address:e,abi:_chunkKIA6GUINcjs.n,functionName:"periodFinish"}),t.readContract({address:e,abi:_chunkKIA6GUINcjs.n,functionName:"targetRewardsPerSecond"}),t.readContract({address:e,abi:_chunkKIA6GUINcjs.n,functionName:"minRewardDurationForTargetRate"})]),l=o*(n-BigInt(_chunkKBW7JTEIcjs.d.call(void 0, Date.now())))/10n**18n;return{rewardsDuration:Number(r),mode:s===0n?"duration":"targetRate",manager:a,rewardRate:_viem.formatUnits.call(void 0, o,36),periodFinish:Number(n),availableRewards:_viem.formatUnits.call(void 0, l,18),minRewardDurationForTargetRate:Number(i),targetRewardsPerSecond:_viem.formatUnits.call(void 0, s,36)}}function ve(e,t,r){return e?r*t*_chunkKBW7JTEIcjs.q.call(void 0, 1)/e:null}function Pa(e,t,r){return r?e*r/(t*_chunkKBW7JTEIcjs.q.call(void 0, 1)):0}function Ol({availableRewards:e,periodFinish:t,tvl:r,bgtPrice:a,MIN_REWARD_DURATION:o,MAX_REWARD_DURATION:n,...s}){let i=_chunkKBW7JTEIcjs.d.call(void 0, Date.now());if(i>t)return{apr:0,duration:0,rewardRate:0,targetRate:null,periodFinish:0,mode:null};if(s.mode==="targetRate"||s.mode==="targetApr"){let d,{minRewardDurationForTargetRate:b,currentDuration:g}=s;if(s.mode==="targetRate"?d=s.rewardRate:d=Pa(s.apr,a,r),d===0){let P=Math.min(g,n),V=e?e/P:0;return{apr:ve(r,a,V),duration:P,rewardRate:V,targetRate:null,periodFinish:P+i,mode:"duration"}}let p=b||o,A=e?e/d:0;if(A<p){let P=e?e/p:0;return{apr:ve(r,a,P),duration:p,rewardRate:P,targetRate:P.toString(),periodFinish:p+i,mode:null}}return{apr:ve(r,a,d),duration:A,rewardRate:d,targetRate:d.toString(),periodFinish:A+i,mode:null}}let{duration:l}=s,u=e/l;return{apr:ve(r,a,u),mode:null,targetRate:null,duration:l,rewardRate:u,periodFinish:l+i}}var _chain = require('@berachain/graphql/chain');async function Gt({defaultBlockTime:e,blocksSpan:t,...r}={}){let{config:a}=_chunkYKKMWJX5cjs.a.call(void 0, r),o=f("blocks.subgraph",r),n=_nullishCoalesce(e, () => (a.averageBlockTime)),s=_nullishCoalesce(t, () => (Math.floor(_chunkKBW7JTEIcjs.i.call(void 0, 1)/n))),l=(await o.query({query:_chain.GetBlocksTimeStamp,variables:{skip:s}})).data;return(_chunkKBW7JTEIcjs.d.call(void 0, Date.now())-Number(_optionalChain([l, 'optionalAccess', _68 => _68.oldest, 'access', _69 => _69[0], 'optionalAccess', _70 => _70.timestamp])))/(Number(_optionalChain([l, 'optionalAccess', _71 => _71.newest, 'access', _72 => _72[0], 'optionalAccess', _73 => _73.number]))-Number(_optionalChain([l, 'optionalAccess', _74 => _74.oldest, 'access', _75 => _75[0], 'optionalAccess', _76 => _76.number])))}async function Tt(e={}){let{config:t}=_chunkYKKMWJX5cjs.a.call(void 0, e),a=await f("api",e).query({query:_api3.GlobalData,variables:{chain:t.bex.chainName}});return{...a.data.polGetGlobalInfo,top3EmittingValidators:a.data.top3EmittingValidators.validators,allValidatorsCount:a.data.allValidatorsCount.pagination.totalCount}}async function Ft({publicClient:e,...t}){let{config:r}=_chunkYKKMWJX5cjs.a.call(void 0, t);_chunk6PL44I45cjs.c.call(void 0, e);try{let a=await e.readContract({address:r.tokens.bgt,abi:_chunkKIA6GUINcjs.m,functionName:"totalBoosts",args:[]});return _viem.formatEther.call(void 0, a)}catch(a){throw console.log(a),a}}async function Dt({publicClient:e,...t}){let{config:r}=_chunkYKKMWJX5cjs.a.call(void 0, t);_chunk6PL44I45cjs.c.call(void 0, e);try{let a=await e.readContract({address:r.tokens.bgt,abi:_viem.erc20Abi,functionName:"totalSupply",args:[]});return _viem.formatEther.call(void 0, _nullishCoalesce(a, () => (0n)))}catch(a){throw console.log(a),a}}async function Re({filter:e,publicClient:t,...r}={}){let o=await f("api",r).query({query:_api3.GetVaults,variables:e}),n=await Promise.allSettled(o.data.polGetRewardVaults.vaults.map(async i=>{if(t)return Promise.allSettled(i.activeIncentives.map(l=>t.readContract({abi:_chunkKIA6GUINcjs.n,address:i.address,functionName:"incentives",args:[l.tokenAddress]})))})),s=o.data.polGetRewardVaults.vaults.map((i,l)=>{let u=0,m=i.activeIncentives.map((d,b)=>{let g=Number(d.remainingAmountUsd)&&Number(d.remainingAmount)?Number(d.remainingAmountUsd)/Number(d.remainingAmount):0,p=_optionalChain([n, 'access', _77 => _77[l], 'optionalAccess', _78 => _78.status])==="fulfilled"&&_optionalChain([n, 'access', _79 => _79[l], 'optionalAccess', _80 => _80.value, 'optionalAccess', _81 => _81[b], 'optionalAccess', _82 => _82.status])==="fulfilled"?_viem.formatUnits.call(void 0, BigInt(n[l].value[b].value[2]),d.token.decimals):d.remainingAmount;return u+=Number(p)*Number(g),{...d,remainingAmount:p}});return{...i,dynamicData:{...i.dynamicData,allTimeReceivedBGTAmount:_nullishCoalesce(_optionalChain([i, 'access', _83 => _83.dynamicData, 'optionalAccess', _84 => _84.allTimeReceivedBGTAmount]), () => ("0")),bgtCapturePercentage:_nullishCoalesce(_optionalChain([i, 'access', _85 => _85.dynamicData, 'optionalAccess', _86 => _86.bgtCapturePercentage]), () => ("0")),activeIncentivesValueUsd:u.toString(),activeIncentivesRateUsd:_nullishCoalesce(_optionalChain([i, 'access', _87 => _87.dynamicData, 'optionalAccess', _88 => _88.activeIncentivesRateUsd]), () => ("0")),bgtCapturePerBlock:_nullishCoalesce(_optionalChain([i, 'access', _89 => _89.dynamicData, 'optionalAccess', _90 => _90.bgtCapturePerBlock]), () => ("0"))},activeIncentives:m}});return{pagination:o.data.polGetRewardVaults.pagination,gaugeList:s}}async function It(e){let{gaugeList:t}=await Re({filter:{orderBy:_api3.GqlRewardVaultOrderBy.Apr,orderDirection:_api3.GqlRewardVaultOrderDirection.Desc,pageSize:e,where:{includeNonWhitelisted:!1}}});return t}async function hc(e){let[t,r,a,o]=await Promise.allSettled([Tt(),It(300),Dt({publicClient:e}),Ft({publicClient:e})]);return t.status==="rejected"&&ce.captureException(t.reason,{level:"warning"}),r.status==="rejected"&&ce.captureException(r.reason,{level:"warning"}),a.status==="rejected"&&ce.captureException(a.reason,{level:"warning"}),o.status==="rejected"&&ce.captureException(o.reason,{level:"warning"}),{bgtTotalSupply:a.status==="fulfilled"?a.value:void 0,globalCuttingBoard:r.status==="fulfilled"?r.value:[],bgtTotalBoosts:o.status==="fulfilled"?o.value:void 0,...t.status==="fulfilled"?t.value:{}}}var _subgraph3 = require('@berachain/graphql/pol/subgraph');async function Et({...e}){let t=f("pol.subgraph",e),{data:r}=await t.query({query:_subgraph3.GetIncentiveFeeClaimStats});if(r.incentiveFeeClaims.length>0){let a=_optionalChain([r, 'optionalAccess', _91 => _91.incentiveFeeClaims, 'access', _92 => _92.reduce, 'call', _93 => _93((s,i)=>s+Number(i.payoutAmount),3e4)]),n=(_optionalChain([r, 'optionalAccess', _94 => _94.incentiveFeeClaims, 'access', _95 => _95.filter, 'call', _96 => _96(s=>Number(s.timestamp)/1e3>Date.now()-_chunkKBW7JTEIcjs.j.call(void 0, 1))])).reduce((s,i)=>s+Number(i.payoutAmount),0);return{sumAllClaims:a,sumClaimsInLast24Hours:n}}return{sumAllClaims:0,sumClaimsInLast24Hours:0}}async function Rc(e={}){let{config:t}=_chunkYKKMWJX5cjs.a.call(void 0, e);try{let a=await(await fetch(t.lists.rewardVaultList)).json();if(!a.protocols)throw new Error("Missing protocols in market list");return{marketList:a.protocols,marketDictionary:a.protocols.reduce((o,n)=>(o[n.name]=n,o),{})}}catch(r){throw console.error("Error fetching validator information",r),r}}async function Gc({account:e,validator:t,page:r=1,perPage:a=1e3,...o}){let{config:n}=_chunkYKKMWJX5cjs.a.call(void 0, o),s=await fetch(`${n.pol.bribeBoostApi}/api/v1/wallets/${e.toLowerCase()}/proofs/validator/${t.toLowerCase()}?page=${r}&per_page=${a}`,{cache:"no-store"});if(!s.ok){let l=await _chunkKBW7JTEIcjs.a.call(void 0, s);throw new (0, _chunk33CW5NUNcjs.f)({message:"Failed to fetch proofs on server",cause:{error:l,result:s,account:e,validator:t},reason:_optionalChain([l, 'optionalAccess', _97 => _97.reason])})}return await s.json()}async function Ec({address:e,publicClient:t}){return _chunk6PL44I45cjs.c.call(void 0, t),t.readContract({address:e,abi:_chunkKIA6GUINcjs.p,functionName:"previewRedeem",args:[_viem.parseUnits.call(void 0, "1",18)]}).then(r=>Number(_viem.formatUnits.call(void 0, r,18))).catch(()=>0)}async function Mc({address:e,chainName:t,...r}){let{config:a}=_chunkYKKMWJX5cjs.a.call(void 0, r),o=_nullishCoalesce(t, () => (a.bex.chainName)),n=f("api",r),{data:s}=await n.query({query:_api3.GetRewardVault,variables:{vaultId:e,chain:o}});if(!_optionalChain([s, 'optionalAccess', _98 => _98.rewardVault]))throw new (0, _chunk6PL44I45cjs.f)({resource:"Reward vault",id:e,chainId:a.chainId});return s.rewardVault}var qt=[{inputs:[{internalType:"address",name:"initialOwner",type:"address"},{internalType:"address",name:"initialImplementation",type:"address"}],stateMutability:"payable",type:"constructor"},{inputs:[],name:"NewImplementationHasNoCode",type:"error"},{inputs:[],name:"NewOwnerIsZeroAddress",type:"error"},{inputs:[],name:"Unauthorized",type:"error"},{anonymous:!1,inputs:[{indexed:!0,internalType:"address",name:"oldOwner",type:"address"},{indexed:!0,internalType:"address",name:"newOwner",type:"address"}],name:"OwnershipTransferred",type:"event"},{anonymous:!1,inputs:[{indexed:!0,internalType:"address",name:"implementation",type:"address"}],name:"Upgraded",type:"event"},{inputs:[],name:"implementation",outputs:[{internalType:"address",name:"result",type:"address"}],stateMutability:"view",type:"function"},{inputs:[],name:"owner",outputs:[{internalType:"address",name:"result",type:"address"}],stateMutability:"view",type:"function"},{inputs:[],name:"renounceOwnership",outputs:[],stateMutability:"nonpayable",type:"function"},{inputs:[{internalType:"address",name:"newOwner",type:"address"}],name:"transferOwnership",outputs:[],stateMutability:"nonpayable",type:"function"},{inputs:[{internalType:"address",name:"newImplementation",type:"address"}],name:"upgradeTo",outputs:[],stateMutability:"nonpayable",type:"function"}];async function Qt({publicClient:e,...t}){let{config:r}=_chunkYKKMWJX5cjs.a.call(void 0, t),a=r.pol.factory;_chunk6PL44I45cjs.b.call(void 0, e,"publicClient"),_chunk6PL44I45cjs.d.call(void 0, r.pol.factory,"factoryAddress");let o=await e.readContract({address:a,abi:_chunkKIA6GUINcjs.o,functionName:"beacon"});return await e.readContract({address:o,abi:qt,functionName:"implementation"})}async function Zc({publicClient:e,...t}){_chunk6PL44I45cjs.c.call(void 0, e);let r=await Qt({publicClient:e,...t}),[a,o]=await Promise.all([e.readContract({address:r,abi:_chunkKIA6GUINcjs.n,functionName:"MIN_REWARD_DURATION"}),e.readContract({address:r,abi:_chunkKIA6GUINcjs.n,functionName:"MAX_REWARD_DURATION"})]);return{minRewardDuration:Number(a),maxRewardDuration:Number(o)}}async function ou({tokenAddress:e,publicClient:t,factoryAddress:r,...a}){let{config:o}=_chunkYKKMWJX5cjs.a.call(void 0, a),n=await t.readContract({address:_nullishCoalesce(r, () => (o.pol.factory)),abi:_chunkKIA6GUINcjs.o,functionName:"getVault",args:[e]});return n===_viem.zeroAddress?null:n}async function uu({address:e,stakingToken:t,publicClient:r}){let a=await r.readContract({address:e,abi:_chunkKIA6GUINcjs.n,functionName:"getWhitelistedTokens"}),n=a.findIndex(i=>_berancersdk.isSameAddress.call(void 0, t,i))!==-1?await r.readContract({address:e,abi:_chunkKIA6GUINcjs.n,functionName:"totalSupply"}):0n,s=await Promise.allSettled(a.map(async i=>{let[l,u,m,d]=await Promise.all([r.readContract({address:e,abi:_chunkKIA6GUINcjs.n,functionName:"incentives",args:[i]}),r.readContract({address:i,abi:_viem.erc20Abi,functionName:"decimals"}),r.readContract({address:i,abi:_viem.erc20Abi,functionName:"symbol"}),r.readContract({address:i,abi:_viem.erc20Abi,functionName:"balanceOf",args:[e]})]),[b,g,p,A]=l;return{token:i,manager:A,minIncentiveRate:_viem.formatUnits.call(void 0, b,u),incentiveRate:_viem.formatUnits.call(void 0, g,u),remainingAmount:_viem.formatUnits.call(void 0, p,u),symbol:m,decimals:u,pendingAmount:_berancersdk.isSameAddress.call(void 0, t,i)?_viem.formatUnits.call(void 0, d-n-p,u):_viem.formatUnits.call(void 0, d-p,u)}}));return s.forEach((i,l)=>{i.status==="rejected"&&Ut.captureException(new (0, _chunk33CW5NUNcjs.f)({reason:i.reason,message:"Incorrect incentives token received.",level:"error"}),{extra:{token:a[l],address:e,error:i.reason}})}),s.map(i=>i.status==="fulfilled"?i.value:null).filter(i=>i!==null)}async function pu({address:e,publicClient:t}){return await t.readContract({address:e,abi:_chunkKIA6GUINcjs.n,functionName:"stakeToken"})}function Qa(e){return e==="DAY"?_api3.GqlSWberaVaultMetadataResolution.OneDay:_api3.GqlSWberaVaultMetadataResolution.SevenDays}async function Au({window:e,...t}){let{config:r}=_chunkYKKMWJX5cjs.a.call(void 0, t),a=f("api",t);try{let o=await a.query({query:_api3.GetSWberaVaultMetadata,variables:{chain:r.bex.chainName,resolution:Qa(_nullishCoalesce(e, () => ("DAY")))}}),{apr:n}=o.data.polGetSWberaVaultMetadata;return Number(n)}catch(o){throw console.error("Failed to get SW Bera APR",o),o}}async function Bu({chain:e,range:t=_api3.GqlVaultSnapshotDataRange.ThirtyDays,...r}={}){let{config:a}=_chunkYKKMWJX5cjs.a.call(void 0, r),o=f("api",r);try{return(await o.query({query:_api3.GetSWberaVaultSnapshots,variables:{chain:_nullishCoalesce(e, () => (a.bex.chainName)),range:t}})).data.polGetSWberaVaultSnapshots}catch(n){throw console.error("Failed to get SW Bera Snapshots",n),n}}async function de({publicClient:e,...t}){let{config:r}=_chunkYKKMWJX5cjs.a.call(void 0, t),a=await e.readContract({address:r.tokens.swbera,abi:_chunkKIA6GUINcjs.p,functionName:"WITHDRAWAL_COOLDOWN"});return Number(a)}async function Eu({address:e,publicClient:t,...r}){let{config:a}=_chunkYKKMWJX5cjs.a.call(void 0, r);_chunk6PL44I45cjs.c.call(void 0, t);let o=26;try{let[n,s]=await Promise.all([t.getBlock({blockTag:"latest"}),Gt()]),i=Math.floor(o*60*60/s),l=n.number-BigInt(i),[u,m,d,b,g,p,A,P,V,y,F]=await Promise.all([t.readContract({address:e,abi:_chunkKIA6GUINcjs.p,functionName:"totalAssets"}),t.readContract({address:e,abi:_chunkKIA6GUINcjs.p,functionName:"totalSupply"}),t.readContract({address:e,abi:_chunkKIA6GUINcjs.p,functionName:"previewRedeem",args:[10n**18n],blockNumber:n.number}),t.readContract({address:a.tokens.wbera,abi:_viem.erc20Abi,functionName:"balanceOf",args:[e]}),t.readContract({address:e,abi:_chunkKIA6GUINcjs.p,functionName:"totalAssets",blockNumber:l}),t.readContract({address:e,abi:_viem.erc20Abi,functionName:"totalSupply",blockNumber:l}),t.readContract({address:e,abi:_chunkKIA6GUINcjs.p,functionName:"previewRedeem",args:[10n**18n],blockNumber:l}),t.readContract({address:a.tokens.wbera,abi:_viem.erc20Abi,functionName:"balanceOf",args:[e],blockNumber:l}),t.readContract({address:a.tokens.wbera,abi:_viem.erc20Abi,functionName:"totalSupply"}),de({publicClient:t}),Et({})]),G=new (0, _bignumberjs2.default)(A.toString());return{current:{exchangeRate:new (0, _bignumberjs2.default)(d.toString()).toString(),totalSupply:new (0, _bignumberjs2.default)(m.toString()).dividedBy(1e18).toString(),totalAssets:new (0, _bignumberjs2.default)(u.toString()).dividedBy(1e18).toString(),tvl:new (0, _bignumberjs2.default)(b.toString()).dividedBy(1e18).toString()},previous:{exchangeRate:G.toString(),totalSupply:new (0, _bignumberjs2.default)(p.toString()).dividedBy(1e18).toString(),totalAssets:new (0, _bignumberjs2.default)(g.toString()).dividedBy(1e18).toString(),tvl:new (0, _bignumberjs2.default)(P.toString()).dividedBy(1e18).toString()},totalWBeraIssued:new (0, _bignumberjs2.default)(V.toString()).dividedBy(1e18).toString(),lockPeriod:y,totalBuyBacks:F.sumAllClaims,totalBuyBacksInLast24Hours:F.sumClaimsInLast24Hours}}catch(n){throw console.error("Failed to get SW Bera Vault Metadata",n),n}}function Mt(e){let t=Date.now(),r=e*1e3-t;if(r<=0)return;let a=_chunkKBW7JTEIcjs.d.call(void 0, r);return _chunkKBW7JTEIcjs.G.call(void 0, a,!0,!0)}async function Ou(e,t,r,a){let o=[];function n(s,i){let[l,u,m]=s,d=l,b=Number(m)+Number(i),g=_chunkKBW7JTEIcjs.d.call(void 0, Date.now()),p=b-g;if(d>0){let A=Mt(p<=0?0:b);o.push({withdrawalAmount:d,timeRemaining:A})}}switch(a){case"V1":{let[s,i]=await Promise.all([r.readContract({address:e,abi:_chunkKIA6GUINcjs.p,functionName:"withdrawalRequests",args:[t]}),de({publicClient:r})]);return n(s,i),o}case"V2":{let[s,i,l]=await Promise.all([r.readContract({address:e,abi:_chunkKIA6GUINcjs.p,functionName:"withdrawalRequests",args:[t]}),r.readContract({address:e,abi:_chunkKIA6GUINcjs.p,functionName:"getERC721WithdrawalRequestIds",args:[t]}),de({publicClient:r})]);n(s,l);let m=(await Promise.all(i.map(async d=>{let b=await r.readContract({address:e,abi:_chunkKIA6GUINcjs.p,functionName:"getERC721WithdrawalRequest",args:[d]}),{assets:g,requestTime:p}=b;if(!g||!p)throw new Error("Invalid withdrawal request");let A=g,P=Number(p)+Number(l),V=_chunkKBW7JTEIcjs.d.call(void 0, Date.now()),y=P-V;if(A>0){let F=Mt(y<=0?0:P);return{withdrawalAmount:A,timeRemaining:F,withdrawalRequestId:d}}return null}))).filter(d=>d!==null);return o.push(...m),o}}}async function Ju({account:e,...t}){let{config:r}=_chunkYKKMWJX5cjs.a.call(void 0, t),a=await fetch(`${r.pol.bribeBoostApi}/api/v1/wallets/${e.toLowerCase()}/rewards/aggregation`,{cache:"no-store"});if(!a.ok){let o=await _chunkKBW7JTEIcjs.a.call(void 0, a);throw new (0, _chunk33CW5NUNcjs.f)({message:"Failed to fetch incentives on server",cause:{error:o,result:a,account:e},reason:_optionalChain([o, 'optionalAccess', _99 => _99.error])})}return await a.json()}async function _t({account:e,vaultAddress:t,publicClient:r}){if(_chunk6PL44I45cjs.c.call(void 0, r),!e||!_viem.isAddress.call(void 0, e))throw new (0, _chunk33CW5NUNcjs.g)({property:"account",value:e,expected:"Address"});if(!t||!_viem.isAddress.call(void 0, t))throw new (0, _chunk33CW5NUNcjs.g)({property:"vaultAddress",value:t,expected:"Address"});try{let[a,o]=await Promise.all([r.readContract({address:t,abi:_chunkKIA6GUINcjs.n,functionName:"balanceOf",args:[e]}),r.readContract({address:t,abi:_chunkKIA6GUINcjs.n,functionName:"getTotalDelegateStaked",args:[e]})]);return{balance:a,delegated:o}}catch(a){throw console.log(a),a}}async function Ht({account:e,vaultAddress:t,publicClient:r}){if(!r)throw new Error("Missing public client");if(!e)throw new Error("Missing user account");if(!t)throw new Error("Missing vault address");return await r.readContract({address:t,abi:_chunkKIA6GUINcjs.n,functionName:"earned",args:[e]})}async function Jt({vaultAddress:e,publicClient:t}){if(!t)throw new Error("Missing public client");if(!e)throw new Error("Missing vault address");try{return await t.readContract({address:e,abi:_chunkKIA6GUINcjs.n,functionName:"totalSupply",args:[]})}catch(r){throw console.log(r),r}}async function id({account:e,vaultAddress:t,publicClient:r}){let[a,o,n]=await Promise.all([_t({account:e,vaultAddress:t,publicClient:r}),Ht({account:e,vaultAddress:t,publicClient:r}),Jt({vaultAddress:t,publicClient:r})]),s=a.balance-a.delegated,i=n>0n?Number(Number.parseFloat(_viem.formatEther.call(void 0, a.balance))/Number.parseFloat(_viem.formatEther.call(void 0, n))).toString():"0";return{balance:a.balance,delegatedBalance:a.delegated,withdrawableBalance:s,rewards:_viem.formatEther.call(void 0, o),percentage:i}}async function pd({account:e,publicClient:t,...r}){let{config:a}=_chunkYKKMWJX5cjs.a.call(void 0, r),s=await _asyncOptionalChain([(await f("api",r).query({query:_api3.GetUserVaults,variables:{userId:e,chain:a.bex.chainName}})), 'access', async _100 => _100.data, 'optionalAccess', async _101 => _101.userVaultDeposits, 'optionalAccess', async _102 => _102.deposits]);if(!s)return{totalBgtRewards:"0",vaults:[],totalStakedValue:0};let[i,l]=await Promise.all([t.multicall({allowFailure:!1,contracts:s.map(g=>({address:g.vaultAddress,abi:_chunkKIA6GUINcjs.n,functionName:"earned",args:[e]}))}),t.multicall({allowFailure:!1,contracts:s.map(g=>({address:g.vaultAddress,abi:_chunkKIA6GUINcjs.n,functionName:"balanceOf",args:[e]}))})]),{userVaults:u,total:m}=s.reduce((g,p,A)=>{let P=i[A],V=l[A];if(g.total+=P,!p.vault)return $t.captureException(new Error("Deposit data from API is missing vault"),{data:{deposit:p}}),console.error("Deposit data from API is missing vault",p),g;if(P>0n||V>0n){let y=_optionalChain([p, 'access', _103 => _103.vault, 'access', _104 => _104.dynamicData, 'optionalAccess', _105 => _105.tvl])&&Number(p.vault.stakingTokenAmount)!==0?Number(_nullishCoalesce(_optionalChain([p, 'access', _106 => _106.vault, 'access', _107 => _107.dynamicData, 'optionalAccess', _108 => _108.tvl]), () => (0)))/Number(p.vault.stakingTokenAmount):null;g.userVaults.push({...p,vault:p.vault,unclaimedBgt:_viem.formatUnits.call(void 0, P,18),formattedBalance:_viem.formatUnits.call(void 0, V,p.vault.stakingToken.decimals),stakingTokenPrice:y})}return g},{userVaults:[],total:0n}),d=[...u].sort((g,p)=>{if(g.vault.isVaultWhitelisted&&!p.vault.isVaultWhitelisted)return-1;if(!g.vault.isVaultWhitelisted&&p.vault.isVaultWhitelisted)return 1;let A=Number.parseFloat(g.unclaimedBgt);return Number.parseFloat(p.unclaimedBgt)-A});return{totalStakedValue:d.reduce((g,p)=>{let A=Number(_nullishCoalesce(_optionalChain([p, 'access', _109 => _109.vault, 'access', _110 => _110.dynamicData, 'optionalAccess', _111 => _111.tvl]), () => (0)));if(A===0)return g;let P=Number.parseFloat(p.vault.stakingTokenAmount),V=A/P;return g+V*Number(p.formattedBalance)},0),totalBgtRewards:_viem.formatUnits.call(void 0, m,18),vaults:d}}async function Ad({vault:e,chain:t,...r}){let{config:a}=_chunkYKKMWJX5cjs.a.call(void 0, r);return(await f("api",r).query({query:_api3.GetVaultHistory,variables:{...r,vaultId:e,chain:_nullishCoalesce(t, () => (a.bex.chainName))}})).data.polGetRewardVaultSnapshots}async function Pd({address:e,onlyActiveValidators:t,...r}){returnawait _asyncNullishCoalesce((await f("api",r).query({query:_api3.GetVaultValidators,variables:{vaultId:e,isActive:t}})).data.validators.validators, async () => ([]))}async function kd({addressIn:e,...t}){let{config:r}=_chunkYKKMWJX5cjs.a.call(void 0, t),a=e.map(s=>s.toLowerCase()).filter((s,i,l)=>s&&l.indexOf(s)===i),o=f("api",t),{data:n}=await o.query({query:_api.GetTokenCurrentPrices,variables:{chains:[r.bex.chainName],addressIn:a}});return n.tokenGetCurrentPrices.reduce((s,i)=>{if(!i.price||!i.address)return s;let l=i.address;return s[_viem.getAddress.call(void 0, l)]={price:_chunkKBW7JTEIcjs.C.call(void 0, i.price.toString()),updatedAt:i.updatedAt},s[l.toLowerCase()]={price:_chunkKBW7JTEIcjs.C.call(void 0, i.price.toString()),updatedAt:i.updatedAt},_chunkYKKMWJX5cjs.e.call(void 0, l,"WBERA")&&(s[_viem.zeroAddress]={price:_chunkKBW7JTEIcjs.C.call(void 0, i.price.toString()),updatedAt:i.updatedAt},s[r.tokens.bgt.toLowerCase()]={price:_chunkKBW7JTEIcjs.C.call(void 0, i.price.toString()),updatedAt:i.updatedAt},s[r.tokens.bgt]={price:_chunkKBW7JTEIcjs.C.call(void 0, i.price.toString()),updatedAt:i.updatedAt}),s},{})}async function Dd({tokenList:e,publicClient:t,...r}){let{config:a}=_chunkYKKMWJX5cjs.a.call(void 0, r);try{let o=await Promise.all(e.map(n=>t.readContract({address:a.honey.pythOracle,abi:_chunkKIA6GUINcjs.i,functionName:"feeds",args:[n]})));return e.reduce((n,s,i)=>({...n,[s]:o[i]}),{})}catch(o){throw console.error("getPythPriceFeedId",o),o}}async function qd({tokens:e,account:t,spender:r,publicClient:a}){if(!a||!e||!r)throw new Error("missing publicClient, tokens, or spender");if(t){let o=e.map(i=>({address:i.address,abi:_viem.erc20Abi,functionName:"allowance",args:[t,r]}));return(await a.multicall({contracts:o})).map((i,l)=>{let u=e[l];return i.error?{balance:0,...u}:{allowance:i.result,formattedAllowance:_viem.formatUnits.call(void 0, i.result,_optionalChain([u, 'optionalAccess', _112 => _112.decimals])||18),...u}})}}async function Od({url:e,...t}={}){let{config:r}=_chunkYKKMWJX5cjs.a.call(void 0, t);returnawait _asyncNullishCoalesce((await _chunkKBW7JTEIcjs.c.call(void 0, {url:_nullishCoalesce(e, () => (r.lists.tokenList)),type:"rest",name:"GitHub"})).tokens, async () => ([]))}function za({token:e,account:t,multicallAddress:r}){return _chunkYKKMWJX5cjs.e.call(void 0, e,"BERA")||_chunkYKKMWJX5cjs.e.call(void 0, e,"ETH")?{address:r,abi:_chunkKIA6GUINcjs.r,functionName:"getEthBalance",args:[t]}:{address:e.address,abi:_viem.erc20Abi,functionName:"balanceOf",args:[t]}}async function $d({account:e,tokenList:t,publicClient:r}){if(!r)throw new Error("publicClient is not defined");if(!e||!t)throw new Error("account or tokenList is not defined");if(!_viem.isAddress.call(void 0, e))throw new Error("account is not a valid address");let a=t.filter(u=>_viem.isAddress.call(void 0, u.address));_chunk6PL44I45cjs.b.call(void 0, r.chain,"publicClient.chain"),_chunk6PL44I45cjs.b.call(void 0, r.chain.contracts,"publicClient.chain.contracts"),_chunk6PL44I45cjs.b.call(void 0, r.chain.contracts.multicall3,"publicClient.chain.contracts.multicall3");let{multicall3:o}=r.chain.contracts,n=typeof o=="string"?o:o.address;_chunk6PL44I45cjs.d.call(void 0, n,"multicall3Address");let s=a.map(u=>za({token:u,account:e,multicallAddress:n})),i=await r.multicall({contracts:s});return await Promise.all(i.map(async(u,m)=>{let d=a[m];if(u.error)return{balance:0n,formattedBalance:"0",...d};let b=_viem.formatUnits.call(void 0, u.result,_optionalChain([d, 'optionalAccess', _113 => _113.decimals])||18);return{balance:u.result,formattedBalance:b.includes("e")?"0":b,...d}}))}var _core = require('@wagmi/core');async function Kt({publicClient:e,abi:t,...r}){let a=[..._chunk33CW5NUNcjs.c,..._nullishCoalesce(t, () => ([]))],o,n,s,i,l,u,m;if("txHash"in r){let d=await e.getTransaction({hash:r.txHash});if(!d.to)throw new (0, _chunk33CW5NUNcjs.g)({property:"tx",value:d,expected:"Transaction",message:"Trying to get revert reason for a contract creation"});l=d.input,n=d.to,s=d.from,i=d.value,o=d.blockNumber}else if(o=r.blockNumber,n=r.to,s=r.account,i=r.value,"data"in r)l=r.data;else if("functionName"in r&&"args"in r)u=r.functionName,m=r.args;else if(!i)throw new (0, _chunk33CW5NUNcjs.g)({property:"dataOrFunctionNameAndArgs",value:r,expected:"Hex or FunctionName and Args"});try{if(!a)if(l)await e.call({data:l,to:n,account:s,blockNumber:o,value:i});else throw new Error("Data is required if abi is not provided");if("functionName"in r&&"args"in r&&r.functionName)u=r.functionName,m=r.args;else if(l){if(!a){let d=await e.call({data:l,to:n,account:s,blockNumber:o,value:i});throw new Error(`Getting revert reason for successful simulation. Data: ${l}`,{cause:d})}try{let d=_viem.decodeFunctionData.call(void 0, {abi:a,data:l});u=d.functionName,m=d.args}catch(d){throw d instanceof _viem.AbiFunctionSignatureNotFoundError&&await e.call({data:l,to:n,account:s,blockNumber:o,value:i}),new Error("Data is required if abi is not provided")}}else throw new Error("No data or function name and args provided");throw a&&u?(await e.simulateContract({functionName:u,args:m,abi:a,address:n,account:s,blockNumber:o}),new (0, _chunk6PL44I45cjs.g)({message:"Getting revert reason for successful simulation",functionName:u,to:n,txHash:"txHash"in r?r.txHash:void 0,input:r})):new Error("No data or function name and args provided")}catch(d){if(d instanceof Error)return _chunk33CW5NUNcjs.e.call(void 0, {error:d,abi:a,revertIfUnknown:!0});throw d}}var co=_chunkKBW7JTEIcjs.e.call(void 0, 1),Yt=(e,t)=>e*(100n+BigInt(t))/100n;function Qe({nonceResult:e,onWarning:t}){if(e.status==="fulfilled"){if(e.value&&e.value>Number.MAX_SAFE_INTEGER){_optionalChain([t, 'optionalCall', _114 => _114(new (0, _chunk33CW5NUNcjs.f)({message:"Nonce is too large. No nonce will be provided to avoid IntegerOutOfRangeError.",cause:e.value,level:"debug"}))]);return}return e.value}}function uo(e=_internal.defaultChainId){return e===_internal.ChainId.BEPOLIA?process.env.NEXT_PUBLIC_80069_ANVIL_IMPERSONATE_ACCOUNT==="true":process.env.NEXT_PUBLIC_80094_ANVIL_IMPERSONATE_ACCOUNT==="true"}async function gm(e){if(process.env.NODE_ENV==="development"&&!e.contractName&&e.address&&!("calls"in e||e.calls))throw console.warn("beraWriteContract: Contract name is required. Either update the contract mapping in devrel or provide a contract name in ContractName enum","This is a development error and will be thrown in development mode only."),new (0, _chunk33CW5NUNcjs.g)({property:"contractName",value:e.contractName,expected:"ContractName",displayMessage:`[DEV] Contract name is required as it's not mapped in the devrel's contract mapping ${e.address}`,level:"error"});let{address:t,calls:r,value:a,gasLimit:o,onLoading:n,onSuccess:s,onWarning:i,onError:l,onSubmission:u,wagmiConfig:m,walletClient:d,account:b,txConfirmationTimeout:g=12e4,chainId:p=_internal.defaultChainId,impersonateAccount:A=uo(p),errorsAbi:P=[],pollingInterval:V=co,...y}=e;_optionalChain([n, 'optionalCall', _115 => _115(e)]);let F="data"in y?y.data:void 0,G=[..._chunk33CW5NUNcjs.c,...P,..."abi"in y&&y.abi&&Array.isArray(y.abi)?y.abi:[]],I=d;if(!m){_optionalChain([l, 'optionalCall', _116 => _116(new (0, _chunk33CW5NUNcjs.g)({property:"wagmiConfig",value:m,expected:"Config"}),e)]);return}if(!(_optionalChain([I, 'optionalAccess', _117 => _117.account, 'optionalAccess', _118 => _118.type])==="local"))try{await _core.switchChain.call(void 0, m,{chainId:p})}catch(S){let E=S;_optionalChain([l, 'optionalCall', _119 => _119(new (0, _chunk33CW5NUNcjs.f)({cause:E,displayMessage:"There was an error switching to the chain."}),e)]);return}if(!I)try{I=await _core.getWalletClient.call(void 0, m,{chainId:p})}catch(S){_optionalChain([l, 'optionalCall', _120 => _120(new (0, _chunk33CW5NUNcjs.f)({cause:S,displayMessage:"There was an error connecting to the wallet."}),e)]);return}if(!I){_optionalChain([l, 'optionalCall', _121 => _121(new (0, _chunk33CW5NUNcjs.g)({displayMessage:"There was an error connecting to the wallet.",property:"walletClient",value:I,expected:"WalletClient"}),e)]);return}let W=b||I.account;if(!W){_optionalChain([l, 'optionalCall', _122 => _122(new (0, _chunk33CW5NUNcjs.g)({property:"account",value:W,expected:"Account"}),e)]);return}let me=typeof W=="string"?W:W.address,M=_core.getPublicClient.call(void 0, m,{chainId:p});try{_chunk6PL44I45cjs.c.call(void 0, M)}catch(S){_optionalChain([l, 'optionalCall', _123 => _123(S,e)]);return}if(A){let S=_chunkKBW7JTEIcjs.L.call(void 0, p);await S.impersonateAccount({address:me}),I=_viem.createWalletClient.call(void 0, {transport:_viem.http.call(void 0, S.transport.url),account:W,chain:I.chain})}let q,oe={calls:"calls"in y?y.calls:void 0,params:"params"in y?y.params:void 0,value:a,data:"data"in y?y.data:void 0};try{let S=M.getTransactionCount({address:me,blockTag:"latest"}).catch(()=>{}),E={account:me,to:t,address:t,chainId:p,value:a};if(r){let Q=r.map(h=>{if("abi"in h&&Array.isArray(G)&&G.push(...h.abi),"data"in h)return{to:h.address,data:h.data,value:_nullishCoalesce(h.value, () => (0n))};if("abi"in h&&"functionName"in h){let L="params"in h?h.params:void 0;return{to:h.address,abi:h.abi,functionName:h.functionName,args:L,value:_nullishCoalesce(h.value, () => (0n))}}return{to:h.address,value:_nullishCoalesce(h.value, () => (0n))}});if(e.enableSimulateCalls){let h=await M.simulateCalls({calls:Q,account:W}),L=h.results.findIndex(_=>_.status==="failure");if(L!==-1){if(h.block.number===null)throw new (0, _chunk33CW5NUNcjs.g)({property:"blockNumber",value:h.block.number,expected:"bigint",message:"Block number is null"});let _=h.results[L],{reason:Ve}=_.data&&_.data!=="0x"?{reason:_chunk33CW5NUNcjs.d.call(void 0, _viem.decodeErrorResult.call(void 0, {data:_.data,abi:G}))}:_chunk33CW5NUNcjs.e.call(void 0, {error:_.error,revertIfUnknown:!1,abi:G});_optionalChain([l, 'optionalCall', _124 => _124(new (0, _chunk6PL44I45cjs.g)({cause:_.error,txHash:q,chainId:p,reason:Ve,abi:G,input:oe,blockNumber:h.block.number}),e)]);return}}if(process.env.NODE_ENV==="test")throw new (0, _chunk33CW5NUNcjs.g)({displayMessage:"Batch calls are not supported in test environment",expected:"not test",property:"NODE_ENV",value:process.env.NODE_ENV,level:"fatal"});let U=await I.sendCalls({calls:Q,account:W,forceAtomic:!0});_optionalChain([u, 'optionalCall', _125 => _125({id:U.id},e)]);let O=await I.waitForCallsStatus({id:U.id,pollingInterval:V,timeout:g});if(O.status==="success"){let h=_optionalChain([O, 'access', _126 => _126.receipts, 'optionalAccess', _127 => _127[0]]);if(!h)throw new (0, _chunk33CW5NUNcjs.f)({message:"Call status is success but no receipt was found",cause:O,level:"error",reason:"CALL_STATUS_SUCCESS_BUT_NO_RECEIPT"});return _optionalChain([s, 'optionalCall', _128 => _128(h,e)]),h}throw console.error("wallet_sendCalls: Call failed",O),new (0, _chunk6PL44I45cjs.g)({cause:O,level:"error",input:oe,txHash:q,abi:G,chainId:p})}if(F){let[Q,U,O]=await Promise.allSettled([M.call({...E,data:F}),_nullishCoalesce(o, () => (M.estimateGas({...E,data:F}))),S]);if(Q.status==="rejected")throw Q.reason;let h=U.status==="fulfilled"?Yt(U.value,10):_chunkKBW7JTEIcjs.w;q=await I.sendTransaction({data:F,to:t,account:W,gas:h,chainId:p,nonce:Qe({nonceResult:O,onWarning(L){_optionalChain([i, 'optionalCall', _129 => _129(L,e)])}}),value:a}),_optionalChain([u, 'optionalCall', _130 => _130({txHash:q},e)])}else if("abi"in y&&"functionName"in y){let{abi:Q,functionName:U}=y,O="params"in y?y.params:void 0,[h,L,_]=await Promise.allSettled([M.simulateContract({...E,abi:G,functionName:U,args:O,account:W}),_nullishCoalesce(o, () => (M.estimateContractGas({...E,abi:G,functionName:U,args:O}))),S]);if(h.status==="rejected")throw h.reason;let Ve=_nullishCoalesce(o, () => ((L.status==="fulfilled"?Yt(L.value,10):_chunkKBW7JTEIcjs.w)));q=await I.writeContract({...h.value.request,chainId:p,gas:Ve,nonce:Qe({nonceResult:_,onWarning(tr){_optionalChain([i, 'optionalCall', _131 => _131(tr,e)])}})}),_optionalChain([u, 'optionalCall', _132 => _132({txHash:q},e)])}else{let[Q]=await Promise.allSettled([S]);q=await I.sendTransaction({chainId:p,to:t,value:a,account:W,nonce:Qe({nonceResult:Q,onWarning(U){_optionalChain([i, 'optionalCall', _133 => _133(U,e)])}})}),_optionalChain([u, 'optionalCall', _134 => _134({txHash:q},e)])}process.env.NODE_ENV==="test"&&await _chunkKBW7JTEIcjs.L.call(void 0, p).mine({blocks:1});let z=await M.waitForTransactionReceipt({hash:q,pollingInterval:V,timeout:g,confirmations:1});if(z.status==="success")_optionalChain([s, 'optionalCall', _135 => _135(z,e)]);else{let Q=await Kt({publicClient:M,blockNumber:z.blockNumber,to:t,account:me,abi:G,args:"params"in y?y.params:void 0,functionName:"functionName"in y?y.functionName:void 0,value:a,data:F});process.env.NODE_ENV==="test"&&console.error("beraWriteContract: Revert reason",Q),_optionalChain([l, 'optionalCall', _136 => _136(new (0, _chunk6PL44I45cjs.g)({reason:Q.reason,txHash:q,receipt:z,to:t,functionName:"functionName"in y?y.functionName:void 0,input:oe,chainId:p,abi:G,blockNumber:z.blockNumber}),e)])}return z}catch(S){if(S instanceof _chunk33CW5NUNcjs.f)_optionalChain([l, 'optionalCall', _137 => _137(S,e)]);else if(S instanceof Error){let E=_chunk33CW5NUNcjs.e.call(void 0, {error:S,revertIfUnknown:!1,abi:G});if(E&&E.rootCause instanceof _viem.BaseError&&"url"in E.rootCause){_optionalChain([l, 'optionalCall', _138 => _138(new (0, _chunkMDA4YT6Jcjs.a)({cause:E.rootCause,response:void 0,endpoint:{url:E.rootCause.url,type:"rpc"},statusCode:E.rootCause instanceof _viem.HttpRequestError?E.rootCause.status:void 0}),e)]);return}_optionalChain([l, 'optionalCall', _139 => _139(new (0, _chunk6PL44I45cjs.g)({cause:S,to:t,txHash:q,chainId:p,abi:G,functionName:"functionName"in y?y.functionName:void 0,input:oe}),e)])}else _optionalChain([l, 'optionalCall', _140 => _140(new (0, _chunk6PL44I45cjs.g)({cause:S,txHash:q,to:t,chainId:p,functionName:"functionName"in y?y.functionName:void 0,input:oe,abi:G}),e)])}}async function wm({publicClient:e,ui:t,...r}){let{config:a}=_chunkYKKMWJX5cjs.a.call(void 0, r),[o,n,s,i,l,u,m,d]=await Promise.all([e.readContract({address:a.pol.beraChef,abi:_chunkKIA6GUINcjs.l,functionName:"MAX_COMMISSION_RATE"}),e.readContract({address:a.pol.beraChef,abi:_chunkKIA6GUINcjs.l,functionName:"commissionChangeDelay"}),e.readContract({address:a.pol.beraChef,abi:_chunkKIA6GUINcjs.l,functionName:"rewardAllocationBlockDelay"}),e.readContract({address:a.pol.beraChef,abi:_chunkKIA6GUINcjs.l,functionName:"maxWeightPerVault"}),e.readContract({address:a.pol.beraChef,abi:_chunkKIA6GUINcjs.l,functionName:"maxNumWeightsPerRewardAllocation"}),e.readContract({address:a.tokens.bgt,abi:_chunkKIA6GUINcjs.m,functionName:"dropBoostDelay"}),e.readContract({address:a.tokens.bgt,abi:_chunkKIA6GUINcjs.m,functionName:"activateBoostDelay"}),e.readContract({address:a.pol.beraChef,abi:_chunkKIA6GUINcjs.l,functionName:"rewardAllocationInactivityBlockSpan"})]);return{maxCommissionRate:Number(o)/1e4,boostDelay:Number(m),unboostDelay:Number(u),commissionChangeDelay:Number(n),rewardAllocationBlockDelay:Number(s),maxWeightPerVault:Number(i)/1e4,maxNumWeightsPerRewardAllocation:Number(l),rewardAllocationInactivityBlockSpan:Number(d),ui:t}}async function Xt({variables:e={},...t}={}){let{config:r}=_chunkYKKMWJX5cjs.a.call(void 0, t);return(await f("api",t).query({query:_api3.GetValidators,variables:{chain:r.bex.chainName,...e}})).data}async function Vm({allocation:e}){let t=await Re({filter:{where:{vaultAddressIn:e.weights.map(a=>a.receiver)}}}),r=_nullishCoalesce(_optionalChain([e, 'optionalAccess', _141 => _141.start, 'access', _142 => _142.blockNumber]), () => (0));return _optionalChain([e, 'optionalAccess', _143 => _143.weights, 'access', _144 => _144.map, 'call', _145 => _145(a=>({percentage:a.percentage,receiver:a.receiver,startBlock:r,receivingVault:_optionalChain([t, 'optionalAccess', _146 => _146.gaugeList, 'access', _147 => _147.find, 'call', _148 => _148(o=>_viem.isAddressEqual.call(void 0, o.address,a.receiver))])}))])}async function Fm({id:e,...t}){let{config:r}=_chunkYKKMWJX5cjs.a.call(void 0, t);return(await f("api",t).query({query:_api3.GetValidator,variables:{id:e,chain:r.bex.chainName}})).data}async function qm({pubKey:e,first:t=1,...r}){let a=f("pol.subgraph",r);try{return(await a.query({query:_subgraph3.GetValidatorBlockStats,variables:{pubKey:e,first:t}})).data}catch(o){throw console.error("GetValidatorBlockStats:",o),o}}function ae(e,t){return{start:{blockNumber:Number(e.startBlock),timestamp:e.startBlock!==0n?t:0},weights:e.weights.map(r=>({receiver:r.receiver,percentage:Number(r.percentageNumerator)/1e4}))}}function bo(e,t){return e.start.blockNumber===t.start.blockNumber&&e.weights.every((r,a)=>r.percentage===t.weights[a].percentage)}async function Om({client:e,pubKey:t,...r}){let{config:a}=_chunkYKKMWJX5cjs.a.call(void 0, r);try{let[o,n]=await Promise.all([e.readContract({address:a.pol.beraChef,abi:_chunkKIA6GUINcjs.l,functionName:"getActiveRewardAllocation",args:[t]}),e.readContract({address:a.pol.beraChef,abi:_chunkKIA6GUINcjs.l,functionName:"getSetActiveRewardAllocation",args:[t]})]),[s,i]=await Promise.all([o.startBlock!==0n?e.getBlock({blockNumber:BigInt(o.startBlock)}):{timestamp:0},n.startBlock!==0n?e.getBlock({blockNumber:BigInt(n.startBlock)}):{timestamp:0}]),l=ae(o,Number(s.timestamp)),u=ae(n,Number(i.timestamp)),m=!1;return u.start.blockNumber===0?m=!0:m=!bo(u,l),{activeRewardAllocation:l,setRewardAllocation:u,isBaseline:m,isNeverSet:_optionalChain([u, 'optionalAccess', _149 => _149.start, 'access', _150 => _150.blockNumber])===0}}catch(o){throw console.log("getValidatorRewardAllocation:",o),o}}function Jm(e){return e.start.blockNumber===0}async function $m({client:e,...t}){let{config:r}=_chunkYKKMWJX5cjs.a.call(void 0, t),a=await e.readContract({address:r.pol.beraChef,abi:_chunkKIA6GUINcjs.l,functionName:"getDefaultRewardAllocation",args:[]});return ae({...a,startBlock:0n},0)}async function zm({account:e,...t}){try{return(await f("pol.subgraph",t).query({query:_subgraph3.GetValidatorByAccount,variables:{account:e}})).data}catch(r){throw console.error("getManagedValidatorByAccount:",r),r}}async function Zm({client:e,valPubKey:t}){return 5614}async function Zt({account:e,block:t,...r}){return await f("pol.subgraph",r).query({query:_subgraph3.GetUserValidatorInformation,variables:{address:e.toLowerCase(),block:t}})}async function er({account:e,pubkey:t,publicClient:r,...a}){let{config:o}=_chunkYKKMWJX5cjs.a.call(void 0, a);if(!e)throw new Error("account is required");if(!r)throw new Error("publicClient is required");let[n,s,i]=await Promise.all([r.readContract({address:o.tokens.bgt,abi:_chunkKIA6GUINcjs.m,functionName:"boosted",args:[e,t]}),r.readContract({address:o.tokens.bgt,abi:_chunkKIA6GUINcjs.m,functionName:"boostedQueue",args:[e,t]}),r.readContract({address:o.tokens.bgt,abi:_chunkKIA6GUINcjs.m,functionName:"dropBoostQueue",args:[e,t]})]);return{pubkey:t,activeBoostAmount:_viem.formatEther.call(void 0, n),queuedBoostAmount:_viem.formatEther.call(void 0, s[1]),queuedDropBoostAmount:_viem.formatEther.call(void 0, i[1]),queuedBoostStartBlock:s[0],queuedDropBoostStartBlock:i[0],hasPendingBoosts:Number(s[1])>0||Number(i[1])>0,hasActiveBoosts:Number(n)>0}}async function pp({account:e,publicClient:t,chain:r,...a}){let{config:o}=_chunkYKKMWJX5cjs.a.call(void 0, a),n=_nullishCoalesce(r, () => (o.bex.chainName)),s=await Zt({account:e}),[i,l]=await Promise.all([Xt({variables:{chain:n,where:{idIn:s.data.userValidatorInformations.map(u=>u.validator.id)}}}),t&&_chunkKBW7JTEIcjs.N.call(void 0, {lastBlockTimestamp:_optionalChain([s, 'access', _151 => _151.data, 'access', _152 => _152._meta, 'optionalAccess', _153 => _153.block, 'access', _154 => _154.timestamp]),blockTime:o.averageBlockTime})?Promise.all(s.data.userValidatorInformations.map(u=>er({account:e,pubkey:u.validator.publicKey,publicClient:t}))):void 0]);return _optionalChain([i, 'optionalAccess', _155 => _155.validators, 'access', _156 => _156.validators, 'access', _157 => _157.map, 'call', _158 => _158(u=>{let m=l?l.find(d=>d.pubkey.toLowerCase()===u.pubkey.toLowerCase()):s.data.userValidatorInformations.find(d=>d.validator.id.toLowerCase()===u.id.toLowerCase());if(!m)throw new Error("User deposited not found");return{...u,userBoosts:{pubkey:"pubkey"in m?m.pubkey:m.validator.publicKey,activeBoostAmount:_optionalChain([m, 'optionalAccess', _159 => _159.activeBoostAmount]),queuedBoostAmount:_optionalChain([m, 'optionalAccess', _160 => _160.queuedBoostAmount]),queuedBoostStartBlock:Number(_optionalChain([m, 'optionalAccess', _161 => _161.queuedBoostStartBlock])),queuedDropBoostAmount:_optionalChain([m, 'optionalAccess', _162 => _162.queuedDropBoostAmount]),queuedDropBoostStartBlock:Number(_optionalChain([m, 'optionalAccess', _163 => _163.queuedDropBoostStartBlock])),hasPendingBoosts:Number(_optionalChain([m, 'optionalAccess', _164 => _164.queuedBoostAmount]))>0||Number(_optionalChain([m, 'optionalAccess', _165 => _165.queuedDropBoostAmount]))>0,hasActiveBoosts:Number(_optionalChain([m, 'optionalAccess', _166 => _166.activeBoostAmount]))>0}}})])}var ho=[{validatorAddress:"0x8f51e63d9921a461be29e73dca1c2385e1adc5943fbb36ded4ba96025ee8a783184d1118da08171f6ea831153c878a6d",earning:.045,staked:{amount:16114000000000000000n,formattedAmount:"161.14"},rewards:{amount:15214000000000000000n,formattedAmount:"152.14"}},{staked:{amount:141514000000000000000n,formattedAmount:"1415.14"},validatorAddress:"0x97b21253b17f4e814fe7505c15c18e68c85ab2477274ad370a762df50e3eb4cb1a48451e089bc22e158d7448549a8ab9",earning:.045,rewards:{amount:15414000000000000000n,formattedAmount:"154.14"},queueData:{stake:[{amount:16159000000000000000n,formattedAmount:"161.59"}],unstake:[{amount:16159000000000000000n,formattedAmount:"161.59",timestamp:_chunkKBW7JTEIcjs.d.call(void 0, Date.now()-72e6)}]}},{staked:{amount:141514000000000000000n,formattedAmount:"1415.14"},validatorAddress:"0xa2705d6b27891f3f5651f26547d1bb79e256f95f249d1ad717cef087d77d38b037e5d6dbaa2538930fd0731ec9b02f3a",earning:.145,rewards:{amount:15414000000000000000n,formattedAmount:"154.14"},queueData:{unstake:[{amount:16159000000000000000n,formattedAmount:"161.59",timestamp:_chunkKBW7JTEIcjs.d.call(void 0, Date.now()-72e6)}]}},{staked:{amount:141514000000000000000n,formattedAmount:"1415.14"},validatorAddress:"0xa2705d6b27891f3f5651f26547d1bb79e256f95f249d1ad717cef087d77d38b037e5d6dbaa2538930fd0731ec9b02f3a",earning:.145,rewards:{amount:15414000000000000000n,formattedAmount:"154.14"},queueData:{unstake:[{amount:16159000000000000000n,formattedAmount:"161.59",timestamp:_chunkKBW7JTEIcjs.d.call(void 0, Date.now()-72e6)}]}},{staked:{amount:141514000000000000000n,formattedAmount:"1415.14"},validatorAddress:"0xa2705d6b27891f3f5651f26547d1bb79e256f95f249d1ad717cef087d77d38b037e5d6dbaa2538930fd0731ec9b02f3a",earning:.145,rewards:{amount:15414000000000000000n,formattedAmount:"154.14"},queueData:{unstake:[{amount:16159000000000000000n,formattedAmount:"161.59",timestamp:_chunkKBW7JTEIcjs.d.call(void 0, Date.now()-72e6)}]}},{staked:{amount:141514000000000000000n,formattedAmount:"1415.14"},validatorAddress:"0xa2705d6b27891f3f5651f26547d1bb79e256f95f249d1ad717cef087d77d38b037e5d6dbaa2538930fd0731ec9b02f3a",earning:.145,rewards:{amount:15414000000000000000n,formattedAmount:"154.14"},queueData:{unstake:[{amount:16159000000000000000n,formattedAmount:"161.59",timestamp:_chunkKBW7JTEIcjs.d.call(void 0, Date.now()-72e6)}]}},{staked:{amount:141514000000000000000n,formattedAmount:"1415.14"},validatorAddress:"0xa2705d6b27891f3f5651f26547d1bb79e256f95f249d1ad717cef087d77d38b037e5d6dbaa2538930fd0731ec9b02f3a",earning:.145,rewards:{amount:15414000000000000000n,formattedAmount:"154.14"},queueData:{unstake:[{amount:16159000000000000000n,formattedAmount:"161.59",timestamp:_chunkKBW7JTEIcjs.d.call(void 0, Date.now()-72e6)}]}},{staked:{amount:241514000000000000000n,formattedAmount:"2415.14"},validatorAddress:"0xa4e4b63514f54d61da5197359f11ff1fc2930788ba2ffdd30c2fc059cbe0221020197bf9446b16ac347f36c7517a8686",earning:.145,rewards:{amount:15414000000000000000n,formattedAmount:"154.14"},queueData:{unstake:[{amount:1159000000000000000n,formattedAmount:"11.59",timestamp:_chunkKBW7JTEIcjs.d.call(void 0, Date.now()-36e6)}]}},{validatorAddress:"0xb0511ec039591e98bd4e183ba70b85572214a7ad8ca1a43e96ad3495d3821054927bc542e5482ec9733e35b7ef0b1f03",earning:.045,staked:{amount:141514000000000000000n,formattedAmount:"1415.14"},rewards:{amount:15414000000000000000n,formattedAmount:"154.14"},queueData:{stake:[{amount:1159000000000000000n,formattedAmount:"11.59"}]}}];async function bp(e){return await new Promise(t=>setTimeout(t,2e3)),e==="0x4C368fFE3650379d6318C8d4630bc51f8Ad12bB6"?ho:[]}async function Cp({pubkey:e,dayRange:t,...r}){return(await f("pol.subgraph",r).query({query:_subgraph3.GetValidatorAnalytics,variables:{pubKey:e,timestamp:_chunkKBW7JTEIcjs.E.call(void 0, t).toString()}})).data}async function vp({client:e,pubKey:t,...r}){let{config:a}=_chunkYKKMWJX5cjs.a.call(void 0, r),o=await e.readContract({address:a.pol.beraChef,abi:_chunkKIA6GUINcjs.l,functionName:"getValCommissionOnIncentiveTokens",args:[t]});return Number(_nullishCoalesce(o, () => (0n)))/1e4}var Vp=(e,t,r)=>{if(!t||!e)return 0;let a=_chunkKBW7JTEIcjs.q.call(void 0, 1)/r;return(t?a*(Number(_optionalChain([e, 'access', _167 => _167.dynamicData, 'optionalAccess', _168 => _168.stakedBeraAmount]))/t):0)*Number.parseFloat(_nullishCoalesce(_optionalChain([e, 'access', _169 => _169.dynamicData, 'optionalAccess', _170 => _170.rewardRate]), () => ("0")))};async function Tp({client:e,pubKey:t,...r}){let{config:a}=_chunkYKKMWJX5cjs.a.call(void 0, r);try{return await e.readContract({address:a.depositContract,abi:_chunkKIA6GUINcjs.k,functionName:"getOperator",args:[t]})}catch(o){throw console.log("getValidatorOperatorAddress:",o),o}}async function Ep({client:e,pubKey:t,...r}){let{config:a}=_chunkYKKMWJX5cjs.a.call(void 0, r),o=await e.readContract({address:a.pol.beraChef,abi:_chunkKIA6GUINcjs.l,functionName:"getValQueuedCommissionOnIncentiveTokens",args:[t]});return{blockNumberLast:o.blockNumberLast,commissionRate:Number(o.commissionRate)/1e4}}async function Up({client:e,pubKey:t,...r}){let{config:a}=_chunkYKKMWJX5cjs.a.call(void 0, r);try{return await e.readContract({address:a.depositContract,abi:_chunkKIA6GUINcjs.k,functionName:"queuedOperator",args:[t]})}catch(o){throw console.log("getValidatorQueuedOperatorAddress:",o),o}}async function Hp({client:e,pubKey:t,...r}){let{config:a}=_chunkYKKMWJX5cjs.a.call(void 0, r);try{let o=await e.readContract({address:a.pol.beraChef,abi:_chunkKIA6GUINcjs.l,functionName:"getQueuedRewardAllocation",args:[t]});return ae(o,0)}catch(o){throw console.log("getValidatorQueuedRewardAllocation:",o),o}}function Co(e){return _optionalChain([e, 'optionalAccess', _171 => _171.rewardAllocationWeights, 'optionalAccess', _172 => _172.reduce, 'call', _173 => _173((t,r)=>{if(!r)return t;let a=_nullishCoalesce(_optionalChain([r, 'access', _174 => _174.receivingVault, 'optionalAccess', _175 => _175.activeIncentives, 'access', _176 => _176.filter, 'call', _177 => _177(o=>Number(o.remainingAmount)>0), 'access', _178 => _178.reduce, 'call', _179 => _179((o,n)=>{let s=Number(n.remainingAmountUsd)/Number(n.remainingAmount);return o+Number(n.incentiveRate)*s},0)]), () => (0));return t+a*r.percentage},0)])}function $p({validator:e,bgtPrice:t}){let r=Number(_nullishCoalesce(_optionalChain([e, 'access', _180 => _180.dynamicData, 'optionalAccess', _181 => _181.activeBoostAmount]), () => (0))),a=Co(e);return!a||!r?0:a*Number(_nullishCoalesce(_optionalChain([e, 'access', _182 => _182.dynamicData, 'optionalAccess', _183 => _183.lastDayDistributedBGTAmount]), () => (0)))*365/(r*t)}exports.a = vo; exports.b = No; exports.c = f; exports.d = _client.gql; exports.e = dt; exports.f = _berancersdk.BalancerApi; exports.g = pn; exports.h = An; exports.i = Bn; exports.j = pt; exports.k = Dn; exports.l = Wn; exports.m = Hn; exports.n = jn; exports.o = Zn; exports.p = ai; exports.q = re; exports.r = li; exports.s = Be; exports.t = pi; exports.u = bi; exports.v = Bi; exports.w = Vi; exports.x = Bt; exports.y = qi; exports.z = Oi; exports.A = Hi; exports.B = Ki; exports.C = xt; exports.D = Fe; exports.E = vt; exports.F = Bs; exports.G = Vs; exports.H = Ts; exports.I = Es; exports.J = fa; exports.K = Os; exports.L = _s; exports.M = js; exports.N = el; exports.O = Vt; exports.P = ul; exports.Q = Nt; exports.R = Bl; exports.S = Nl; exports.T = Fl; exports.U = Ca; exports.V = Ql; exports.W = Ol; exports.X = Gt; exports.Y = Re; exports.Z = hc; exports._ = Et; exports.$ = Rc; exports.aa = Gc; exports.ba = Ec; exports.ca = Mc; exports.da = Zc; exports.ea = ou; exports.fa = uu; exports.ga = pu; exports.ha = Au; exports.ia = Bu; exports.ja = de; exports.ka = Eu; exports.la = Ou; exports.ma = Ju; exports.na = Ht; exports.oa = id; exports.pa = pd; exports.qa = Ad; exports.ra = Pd; exports.sa = kd; exports.ta = Dd; exports.ua = qd; exports.va = Od; exports.wa = za; exports.xa = $d; exports.ya = uo; exports.za = gm; exports.Aa = wm; exports.Ba = Xt; exports.Ca = Vm; exports.Da = Fm; exports.Ea = qm; exports.Fa = ae; exports.Ga = bo; exports.Ha = Om; exports.Ia = Jm; exports.Ja = $m; exports.Ka = zm; exports.La = Zm; exports.Ma = er; exports.Na = pp; exports.Oa = bp; exports.Pa = Cp; exports.Qa = vp; exports.Ra = Vp; exports.Sa = Tp; exports.Ta = Ep; exports.Ua = Up; exports.Va = Hp; exports.Wa = Co; exports.Xa = $p;
@@ -0,0 +1 @@
1
+ import{g as r}from"./chunk-5GPS724E.mjs";import{chainConfigs as g,defaultChainId as m}from"@berachain/config/internal";function i(o){let a=o.chainId??m,e=o.config??g[a];if(o.chainId&&o.chainId!==e.chainId)throw new r({property:"chainId",value:a,expected:`config.chainId: ${e.chainId}`});return{config:e,chainId:e.chainId}}import{ethAddress as l,isAddress as u,zeroAddress as c}from"viem";import p from"@berachain/config/mainnet";var b={address:c,decimals:18,name:"Bera",symbol:"BERA",logoURI:"https://res.cloudinary.com/duv0g402y/image/upload/v1738720154/brand/berachain-chain-logo.png.png"},w={address:p.tokens.wbera,decimals:18,name:"WBera",symbol:"WBERA"};function I(o){let{config:a}=i(o);return{address:a.honey.token,symbol:"HONEY",name:"Honey",decimals:18}}function R(...o){let[a,e,t]=o;if(a===void 0)return!1;let n=typeof a=="string"?a:a.address;if(typeof e=="string"&&!u(e)){if(e==="BERA")return n.toLowerCase()===c;if(e==="WBERA")return n.toLowerCase()===p.tokens.wbera;if(e==="ETH")return n.toLowerCase()===l;if(t===void 0)throw new r({property:"baseArgs",value:t,expected:"BeraJS.BaseFunctionArgs",message:"baseArgs is required when compared to a known token different than BERA or WBERA"});let{config:s}=i(t),d={BGT:s.tokens.bgt,HONEY:s.honey.token,SWBERA:s.tokens.swbera,ETH:l};if(e in d)return n.toLowerCase()===d[e].toLowerCase()}let f=typeof e=="object"?e.address:e;return n.toLowerCase()===f.toLowerCase()}var W={isGovernanceEnabled:!0,enableEip5792:!1,proxyAggregatorsThroughVercel:!1,isEmbeddedWalletsEnabled:!0,enableSimulateCalls:!1,isBendVaultDataHourly:!0,isMultiChainZapBendEnabled:!1,mockValidatorOperator:!1,mockValidatorRewardAllocator:!1,mockRewardDurationManager:!1,mockIncentiveManager:!1,isHoneyPythWrapperEnabled:!0};export{i as a,b,w as c,I as d,R as e,W as f};
@@ -0,0 +1 @@
1
+ "use strict";Object.defineProperty(exports, "__esModule", {value: true}); function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; } function _nullishCoalesce(lhs, rhsFn) { if (lhs != null) { return lhs; } else { return rhsFn(); } }var _chunk33CW5NUNcjs = require('./chunk-33CW5NUN.cjs');var _internal = require('@berachain/config/internal');function i(o){let a=_nullishCoalesce(o.chainId, () => (_internal.defaultChainId)),e=_nullishCoalesce(o.config, () => (_internal.chainConfigs[a]));if(o.chainId&&o.chainId!==e.chainId)throw new (0, _chunk33CW5NUNcjs.g)({property:"chainId",value:a,expected:`config.chainId: ${e.chainId}`});return{config:e,chainId:e.chainId}}var _viem = require('viem');var _mainnet = require('@berachain/config/mainnet'); var _mainnet2 = _interopRequireDefault(_mainnet);var b={address:_viem.zeroAddress,decimals:18,name:"Bera",symbol:"BERA",logoURI:"https://res.cloudinary.com/duv0g402y/image/upload/v1738720154/brand/berachain-chain-logo.png.png"},w= exports.c ={address:_mainnet2.default.tokens.wbera,decimals:18,name:"WBera",symbol:"WBERA"};function I(o){let{config:a}=i(o);return{address:a.honey.token,symbol:"HONEY",name:"Honey",decimals:18}}function R(...o){let[a,e,t]=o;if(a===void 0)return!1;let n=typeof a=="string"?a:a.address;if(typeof e=="string"&&!_viem.isAddress.call(void 0, e)){if(e==="BERA")return n.toLowerCase()===_viem.zeroAddress;if(e==="WBERA")return n.toLowerCase()===_mainnet2.default.tokens.wbera;if(e==="ETH")return n.toLowerCase()===_viem.ethAddress;if(t===void 0)throw new (0, _chunk33CW5NUNcjs.g)({property:"baseArgs",value:t,expected:"BeraJS.BaseFunctionArgs",message:"baseArgs is required when compared to a known token different than BERA or WBERA"});let{config:s}=i(t),d={BGT:s.tokens.bgt,HONEY:s.honey.token,SWBERA:s.tokens.swbera,ETH:_viem.ethAddress};if(e in d)return n.toLowerCase()===d[e].toLowerCase()}let f=typeof e=="object"?e.address:e;return n.toLowerCase()===f.toLowerCase()}var W={isGovernanceEnabled:!0,enableEip5792:!1,proxyAggregatorsThroughVercel:!1,isEmbeddedWalletsEnabled:!0,enableSimulateCalls:!1,isBendVaultDataHourly:!0,isMultiChainZapBendEnabled:!1,mockValidatorOperator:!1,mockValidatorRewardAllocator:!1,mockRewardDurationManager:!1,mockIncentiveManager:!1,isHoneyPythWrapperEnabled:!0};exports.a = i; exports.b = b; exports.c = w; exports.d = I; exports.e = R; exports.f = W;
@@ -1 +1 @@
1
- "use strict";Object.defineProperty(exports, "__esModule", {value: true}); function _interopRequireWildcard(obj) { if (obj && obj.__esModule) { return obj; } else { var newObj = {}; if (obj != null) { for (var key in obj) { if (Object.prototype.hasOwnProperty.call(obj, key)) { newObj[key] = obj[key]; } } } newObj.default = obj; return newObj; } } function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; } function _optionalChain(ops) { let lastAccessLHS = undefined; let value = ops[0]; let i = 1; while (i < ops.length) { const op = ops[i]; const fn = ops[i + 1]; i += 2; if ((op === 'optionalAccess' || op === 'optionalCall') && value == null) { return undefined; } if (op === 'access' || op === 'optionalAccess') { lastAccessLHS = value; value = fn(value); } else if (op === 'call' || op === 'optionalCall') { value = fn((...args) => value.call(lastAccessLHS, ...args)); lastAccessLHS = undefined; } } return value; }"use client";var _chunkQIWSS7FQcjs = require('../chunk-QIWSS7FQ.cjs');require('../chunk-7DPUKGDT.cjs');require('../chunk-33CW5NUN.cjs');var _react = require('react');var _bignumberjs = require('bignumber.js'); var _bignumberjs2 = _interopRequireDefault(_bignumberjs);var _hooks = require('@berachain/wagmi/hooks');var _jsxruntime = require('react/jsx-runtime');_bignumberjs2.default.config({EXPONENTIAL_AT:1e9});var n=_react.createContext.call(void 0, void 0);function X({children:e}){let[r,t]=_react.useState.call(void 0, !1),{walletClient:o}=_hooks.useBeraWagmi.call(void 0, ),{wallet:a}=_hooks.useBeraAccount.call(void 0, );return _react.useEffect.call(void 0, ()=>t(!0),[]),_jsxruntime.jsx.call(void 0, n.Provider,{value:{isReady:_react.useMemo.call(void 0, ()=>!!_optionalChain([a, 'optionalAccess', _ => _.address])&&r,[_optionalChain([a, 'optionalAccess', _2 => _2.address]),r,o])},children:_jsxruntime.jsx.call(void 0, _chunkQIWSS7FQcjs.l,{children:e})})}function y(){let e=_react.useContext.call(void 0, n);if(e===void 0)throw new Error("bera js context undefined");return e}var C=y;var _nextjs = require('@sentry/nextjs'); var f = _interopRequireWildcard(_nextjs);var _swr = require('swr');function Y({fallback:e,children:r}){return _react.useEffect.call(void 0, ()=>{Object.entries(e).some(([t,o])=>t?!1:(console.warn("SWRFallback",t,o),f.captureException("Empty key in SWRFallback. This will lead to wrong query returns when key is null. Should be reported to SWR."),!0))},[e]),_jsxruntime.jsx.call(void 0, _swr.SWRConfig,{value:{fallback:e},children:r})}exports.BeraFlagsProvider = _chunkQIWSS7FQcjs.a; exports.BeraJsContext = n; exports.BeraJsProvider = X; exports.BexStateContext = _chunkQIWSS7FQcjs.d; exports.BexStatusProvider = _chunkQIWSS7FQcjs.f; exports.BlockTimeContext = _chunkQIWSS7FQcjs.o; exports.BlockTimeProvider = _chunkQIWSS7FQcjs.p; exports.HoneyConfigContext = _chunkQIWSS7FQcjs.q; exports.HoneyConfigProvider = _chunkQIWSS7FQcjs.r; exports.SWRFallback = Y; exports.TokenContext = _chunkQIWSS7FQcjs.t; exports.TokensProvider = _chunkQIWSS7FQcjs.u; exports.useBeraFlag = _chunkQIWSS7FQcjs.c; exports.useBeraFlags = _chunkQIWSS7FQcjs.b; exports.useBeraJs = C; exports.useBexStatus = _chunkQIWSS7FQcjs.e; exports.useBlockTime = _chunkQIWSS7FQcjs.n; exports.useHoneyConfig = _chunkQIWSS7FQcjs.s;
1
+ "use strict";Object.defineProperty(exports, "__esModule", {value: true}); function _interopRequireWildcard(obj) { if (obj && obj.__esModule) { return obj; } else { var newObj = {}; if (obj != null) { for (var key in obj) { if (Object.prototype.hasOwnProperty.call(obj, key)) { newObj[key] = obj[key]; } } } newObj.default = obj; return newObj; } } function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; } function _optionalChain(ops) { let lastAccessLHS = undefined; let value = ops[0]; let i = 1; while (i < ops.length) { const op = ops[i]; const fn = ops[i + 1]; i += 2; if ((op === 'optionalAccess' || op === 'optionalCall') && value == null) { return undefined; } if (op === 'access' || op === 'optionalAccess') { lastAccessLHS = value; value = fn(value); } else if (op === 'call' || op === 'optionalCall') { value = fn((...args) => value.call(lastAccessLHS, ...args)); lastAccessLHS = undefined; } } return value; }"use client";var _chunkLHFVY26Hcjs = require('../chunk-LHFVY26H.cjs');require('../chunk-YKKMWJX5.cjs');require('../chunk-33CW5NUN.cjs');var _react = require('react');var _bignumberjs = require('bignumber.js'); var _bignumberjs2 = _interopRequireDefault(_bignumberjs);var _hooks = require('@berachain/wagmi/hooks');var _jsxruntime = require('react/jsx-runtime');_bignumberjs2.default.config({EXPONENTIAL_AT:1e9});var n=_react.createContext.call(void 0, void 0);function X({children:e}){let[r,t]=_react.useState.call(void 0, !1),{walletClient:o}=_hooks.useBeraWagmi.call(void 0, ),{wallet:a}=_hooks.useBeraAccount.call(void 0, );return _react.useEffect.call(void 0, ()=>t(!0),[]),_jsxruntime.jsx.call(void 0, n.Provider,{value:{isReady:_react.useMemo.call(void 0, ()=>!!_optionalChain([a, 'optionalAccess', _ => _.address])&&r,[_optionalChain([a, 'optionalAccess', _2 => _2.address]),r,o])},children:_jsxruntime.jsx.call(void 0, _chunkLHFVY26Hcjs.l,{children:e})})}function y(){let e=_react.useContext.call(void 0, n);if(e===void 0)throw new Error("bera js context undefined");return e}var C=y;var _nextjs = require('@sentry/nextjs'); var f = _interopRequireWildcard(_nextjs);var _swr = require('swr');function Y({fallback:e,children:r}){return _react.useEffect.call(void 0, ()=>{Object.entries(e).some(([t,o])=>t?!1:(console.warn("SWRFallback",t,o),f.captureException("Empty key in SWRFallback. This will lead to wrong query returns when key is null. Should be reported to SWR."),!0))},[e]),_jsxruntime.jsx.call(void 0, _swr.SWRConfig,{value:{fallback:e},children:r})}exports.BeraFlagsProvider = _chunkLHFVY26Hcjs.a; exports.BeraJsContext = n; exports.BeraJsProvider = X; exports.BexStateContext = _chunkLHFVY26Hcjs.d; exports.BexStatusProvider = _chunkLHFVY26Hcjs.f; exports.BlockTimeContext = _chunkLHFVY26Hcjs.o; exports.BlockTimeProvider = _chunkLHFVY26Hcjs.p; exports.HoneyConfigContext = _chunkLHFVY26Hcjs.q; exports.HoneyConfigProvider = _chunkLHFVY26Hcjs.r; exports.SWRFallback = Y; exports.TokenContext = _chunkLHFVY26Hcjs.t; exports.TokensProvider = _chunkLHFVY26Hcjs.u; exports.useBeraFlag = _chunkLHFVY26Hcjs.c; exports.useBeraFlags = _chunkLHFVY26Hcjs.b; exports.useBeraJs = C; exports.useBexStatus = _chunkLHFVY26Hcjs.e; exports.useBlockTime = _chunkLHFVY26Hcjs.n; exports.useHoneyConfig = _chunkLHFVY26Hcjs.s;
@@ -4,13 +4,13 @@ import { B as BeraFlags } from '../defaultFlags-V-tJs2K8.cjs';
4
4
  export { a as BexStateContext, b as BexStatusProvider, B as BexStatusProviderProps, u as useBexStatus } from '../BexStatusProvider-nS3NcdxI.cjs';
5
5
  import * as react from 'react';
6
6
  import react__default, { PropsWithChildren } from 'react';
7
- import { b as TokenWithMetadata, a as Token } from '../HoneyConfigProvider-B7pZiyOD.cjs';
8
- export { c as HoneyConfigContext, d as HoneyConfigContextReturn, f as HoneyConfigProvider, e as HoneyConfigProviderProps, T as TokenWithOrder, u as useHoneyConfig } from '../HoneyConfigProvider-B7pZiyOD.cjs';
7
+ import { b as TokenWithMetadata, a as Token } from '../dex-D9U93Ib-.cjs';
8
+ export { c as HoneyConfigContext, d as HoneyConfigContextReturn, f as HoneyConfigProvider, e as HoneyConfigProviderProps, T as TokenWithOrder, u as useHoneyConfig } from '../dex-D9U93Ib-.cjs';
9
9
  import '@berachain/config/internal/flags';
10
10
  import 'viem';
11
- import '@berachain/graphql/pol/api';
12
11
  import '@berachain-foundation/berancer-sdk';
13
12
  import '../aggregatorsRouter-Cny4B_MB.cjs';
13
+ import '@berachain/graphql/pol/api';
14
14
  import '@wagmi/core';
15
15
  import 'swr';
16
16
  import '@berachain/config';
@@ -4,13 +4,13 @@ import { B as BeraFlags } from '../defaultFlags-V-tJs2K8.js';
4
4
  export { a as BexStateContext, b as BexStatusProvider, B as BexStatusProviderProps, u as useBexStatus } from '../BexStatusProvider-nS3NcdxI.js';
5
5
  import * as react from 'react';
6
6
  import react__default, { PropsWithChildren } from 'react';
7
- import { b as TokenWithMetadata, a as Token } from '../HoneyConfigProvider-DJ5cZbB5.js';
8
- export { c as HoneyConfigContext, d as HoneyConfigContextReturn, f as HoneyConfigProvider, e as HoneyConfigProviderProps, T as TokenWithOrder, u as useHoneyConfig } from '../HoneyConfigProvider-DJ5cZbB5.js';
7
+ import { b as TokenWithMetadata, a as Token } from '../dex-BD7Bq3pJ.js';
8
+ export { c as HoneyConfigContext, d as HoneyConfigContextReturn, f as HoneyConfigProvider, e as HoneyConfigProviderProps, T as TokenWithOrder, u as useHoneyConfig } from '../dex-BD7Bq3pJ.js';
9
9
  import '@berachain/config/internal/flags';
10
10
  import 'viem';
11
- import '@berachain/graphql/pol/api';
12
11
  import '@berachain-foundation/berancer-sdk';
13
12
  import '../aggregatorsRouter-Cny4B_MB.js';
13
+ import '@berachain/graphql/pol/api';
14
14
  import '@wagmi/core';
15
15
  import 'swr';
16
16
  import '@berachain/config';
@@ -1 +1 @@
1
- "use client";import{a as u,b as p,c as l,d as W,e as b,f as v,l as s,n as w,o as E,p as F,q as I,r as A,s as T,t as N,u as k}from"../chunk-5N57PBAR.mjs";import"../chunk-HOCEXCQJ.mjs";import"../chunk-5GPS724E.mjs";import{createContext as d,useEffect as m,useMemo as c,useState as x}from"react";import B from"bignumber.js";import{useBeraAccount as R,useBeraWagmi as S}from"@berachain/wagmi/hooks";import{jsx as i}from"react/jsx-runtime";B.config({EXPONENTIAL_AT:1e9});var n=d(void 0);function X({children:e}){let[r,t]=x(!1),{walletClient:o}=S(),{wallet:a}=R();return m(()=>t(!0),[]),i(n.Provider,{value:{isReady:c(()=>!!a?.address&&r,[a?.address,r,o])},children:i(s,{children:e})})}import{useContext as g}from"react";function y(){let e=g(n);if(e===void 0)throw new Error("bera js context undefined");return e}var C=y;import{useEffect as P}from"react";import*as f from"@sentry/nextjs";import{SWRConfig as h}from"swr";import{jsx as J}from"react/jsx-runtime";function Y({fallback:e,children:r}){return P(()=>{Object.entries(e).some(([t,o])=>t?!1:(console.warn("SWRFallback",t,o),f.captureException("Empty key in SWRFallback. This will lead to wrong query returns when key is null. Should be reported to SWR."),!0))},[e]),J(h,{value:{fallback:e},children:r})}export{u as BeraFlagsProvider,n as BeraJsContext,X as BeraJsProvider,W as BexStateContext,v as BexStatusProvider,E as BlockTimeContext,F as BlockTimeProvider,I as HoneyConfigContext,A as HoneyConfigProvider,Y as SWRFallback,N as TokenContext,k as TokensProvider,l as useBeraFlag,p as useBeraFlags,C as useBeraJs,b as useBexStatus,w as useBlockTime,T as useHoneyConfig};
1
+ "use client";import{a as u,b as p,c as l,d as W,e as b,f as v,l as s,n as w,o as E,p as F,q as I,r as A,s as T,t as N,u as k}from"../chunk-JQDPAEK2.mjs";import"../chunk-XX77QPIR.mjs";import"../chunk-5GPS724E.mjs";import{createContext as d,useEffect as m,useMemo as c,useState as x}from"react";import B from"bignumber.js";import{useBeraAccount as R,useBeraWagmi as S}from"@berachain/wagmi/hooks";import{jsx as i}from"react/jsx-runtime";B.config({EXPONENTIAL_AT:1e9});var n=d(void 0);function X({children:e}){let[r,t]=x(!1),{walletClient:o}=S(),{wallet:a}=R();return m(()=>t(!0),[]),i(n.Provider,{value:{isReady:c(()=>!!a?.address&&r,[a?.address,r,o])},children:i(s,{children:e})})}import{useContext as g}from"react";function y(){let e=g(n);if(e===void 0)throw new Error("bera js context undefined");return e}var C=y;import{useEffect as P}from"react";import*as f from"@sentry/nextjs";import{SWRConfig as h}from"swr";import{jsx as J}from"react/jsx-runtime";function Y({fallback:e,children:r}){return P(()=>{Object.entries(e).some(([t,o])=>t?!1:(console.warn("SWRFallback",t,o),f.captureException("Empty key in SWRFallback. This will lead to wrong query returns when key is null. Should be reported to SWR."),!0))},[e]),J(h,{value:{fallback:e},children:r})}export{u as BeraFlagsProvider,n as BeraJsContext,X as BeraJsProvider,W as BexStateContext,v as BexStatusProvider,E as BlockTimeContext,F as BlockTimeProvider,I as HoneyConfigContext,A as HoneyConfigProvider,Y as SWRFallback,N as TokenContext,k as TokensProvider,l as useBeraFlag,p as useBeraFlags,C as useBeraJs,b as useBexStatus,w as useBlockTime,T as useHoneyConfig};