@berachain/berajs 0.2.8-beta.1 → 0.2.8-beta.11

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 (222) hide show
  1. package/dist/RequestError-BRIiJgHk.d.ts +144 -0
  2. package/dist/RequestError-DSUzJ1Iy.d.cts +144 -0
  3. package/dist/abi/exports.cjs.map +1 -1
  4. package/dist/abi/exports.mjs +1 -1
  5. package/dist/actions/exports.cjs +1 -1
  6. package/dist/actions/exports.cjs.map +1 -1
  7. package/dist/actions/exports.d.cts +22 -105
  8. package/dist/actions/exports.d.ts +22 -105
  9. package/dist/actions/exports.mjs +1 -1
  10. package/dist/actions/exports.mjs.map +1 -1
  11. package/dist/actions/governance/exports.cjs +2 -0
  12. package/dist/actions/governance/exports.cjs.map +1 -0
  13. package/dist/actions/governance/exports.d.cts +140 -0
  14. package/dist/actions/governance/exports.d.ts +140 -0
  15. package/dist/actions/governance/exports.mjs +2 -0
  16. package/dist/actions/governance/exports.mjs.map +1 -0
  17. package/dist/chunk-33XNWMPP.cjs +2 -0
  18. package/dist/chunk-33XNWMPP.cjs.map +1 -0
  19. package/dist/chunk-4TALWNXE.cjs +2 -0
  20. package/dist/chunk-4TALWNXE.cjs.map +1 -0
  21. package/dist/chunk-54BTOQE3.cjs +2 -0
  22. package/dist/chunk-54BTOQE3.cjs.map +1 -0
  23. package/dist/chunk-5QAFKFM5.mjs +2 -0
  24. package/dist/chunk-5QAFKFM5.mjs.map +1 -0
  25. package/dist/chunk-6DIA6PXV.cjs +2 -0
  26. package/dist/chunk-6DIA6PXV.cjs.map +1 -0
  27. package/dist/{chunk-NMH7LHPW.cjs → chunk-6JJIZCVY.cjs} +2 -2
  28. package/dist/chunk-6JJIZCVY.cjs.map +1 -0
  29. package/dist/chunk-BE6B4PQF.cjs +2 -0
  30. package/dist/chunk-BE6B4PQF.cjs.map +1 -0
  31. package/dist/chunk-CHFETMC6.cjs +4 -0
  32. package/dist/chunk-CHFETMC6.cjs.map +1 -0
  33. package/dist/{chunk-I7M43BB4.cjs → chunk-D6L7LTA2.cjs} +2 -2
  34. package/dist/chunk-D6L7LTA2.cjs.map +1 -0
  35. package/dist/chunk-DDEQFR3M.cjs.map +1 -1
  36. package/dist/chunk-ENT2OSXT.mjs +2 -0
  37. package/dist/chunk-ENT2OSXT.mjs.map +1 -0
  38. package/dist/{chunk-74QD4JAH.mjs → chunk-GXV2JA36.mjs} +2 -2
  39. package/dist/chunk-GXV2JA36.mjs.map +1 -0
  40. package/dist/chunk-H6ZO4SLB.mjs +4 -0
  41. package/dist/chunk-H6ZO4SLB.mjs.map +1 -0
  42. package/dist/chunk-JDDRTHFG.mjs +2 -0
  43. package/dist/chunk-JDDRTHFG.mjs.map +1 -0
  44. package/dist/{chunk-T5FSQ3YE.mjs → chunk-JDZGYU5T.mjs} +2 -2
  45. package/dist/{chunk-T5FSQ3YE.mjs.map → chunk-JDZGYU5T.mjs.map} +1 -1
  46. package/dist/chunk-JIPSTWKO.mjs +2 -0
  47. package/dist/{chunk-KI66MQ43.mjs.map → chunk-JIPSTWKO.mjs.map} +1 -1
  48. package/dist/chunk-JSTCUTXP.cjs +2 -0
  49. package/dist/chunk-JSTCUTXP.cjs.map +1 -0
  50. package/dist/{chunk-MJZHJFZO.mjs → chunk-JXM5S4IU.mjs} +2 -2
  51. package/dist/chunk-K5L2B4DU.mjs +2 -0
  52. package/dist/{chunk-EFG3OYYQ.mjs.map → chunk-K5L2B4DU.mjs.map} +1 -1
  53. package/dist/chunk-KUQEX7H3.mjs +2 -0
  54. package/dist/chunk-KUQEX7H3.mjs.map +1 -0
  55. package/dist/chunk-NXXMW2O7.mjs +2 -0
  56. package/dist/chunk-NXXMW2O7.mjs.map +1 -0
  57. package/dist/chunk-OIYXOKTT.cjs.map +1 -1
  58. package/dist/chunk-OUD27MU7.cjs.map +1 -1
  59. package/dist/chunk-PRLVZIKD.mjs +2 -0
  60. package/dist/chunk-PRLVZIKD.mjs.map +1 -0
  61. package/dist/chunk-QVIAMSZ6.cjs +2 -0
  62. package/dist/chunk-QVIAMSZ6.cjs.map +1 -0
  63. package/dist/chunk-RCWM55DE.cjs +2 -0
  64. package/dist/chunk-RCWM55DE.cjs.map +1 -0
  65. package/dist/chunk-REWME3FY.cjs +2 -0
  66. package/dist/chunk-REWME3FY.cjs.map +1 -0
  67. package/dist/chunk-RJN36GBU.mjs +2 -0
  68. package/dist/chunk-RJN36GBU.mjs.map +1 -0
  69. package/dist/chunk-RWOICHRW.cjs.map +1 -1
  70. package/dist/chunk-S4CDSVLK.cjs +2 -0
  71. package/dist/chunk-S4CDSVLK.cjs.map +1 -0
  72. package/dist/chunk-WLJHFHKF.mjs +2 -0
  73. package/dist/chunk-WLJHFHKF.mjs.map +1 -0
  74. package/dist/chunk-WRFDB3QJ.cjs.map +1 -1
  75. package/dist/chunk-XNJLSA6P.cjs.map +1 -1
  76. package/dist/chunk-XZC34BHM.cjs +2 -0
  77. package/dist/chunk-XZC34BHM.cjs.map +1 -0
  78. package/dist/chunk-Y2FETC6T.cjs +2 -0
  79. package/dist/chunk-Y2FETC6T.cjs.map +1 -0
  80. package/dist/chunk-ZW2N63FI.mjs +2 -0
  81. package/dist/chunk-ZW2N63FI.mjs.map +1 -0
  82. package/dist/contexts/exports.cjs +1 -1
  83. package/dist/contexts/exports.cjs.map +1 -1
  84. package/dist/contexts/exports.mjs +1 -1
  85. package/dist/contexts/exports.mjs.map +1 -1
  86. package/dist/enum/exports.cjs +1 -1
  87. package/dist/enum/exports.cjs.map +1 -1
  88. package/dist/enum/exports.d.cts +1 -1
  89. package/dist/enum/exports.d.ts +1 -1
  90. package/dist/enum/exports.mjs +1 -1
  91. package/dist/enum/exports.mjs.map +1 -1
  92. package/dist/enum/governance/exports.cjs +2 -0
  93. package/dist/enum/governance/exports.cjs.map +1 -0
  94. package/dist/enum/governance/exports.d.cts +60 -0
  95. package/dist/enum/governance/exports.d.ts +60 -0
  96. package/dist/enum/governance/exports.mjs +2 -0
  97. package/dist/enum/governance/exports.mjs.map +1 -0
  98. package/dist/errors/exports.cjs +1 -1
  99. package/dist/errors/exports.cjs.map +1 -1
  100. package/dist/errors/exports.d.cts +3 -89
  101. package/dist/errors/exports.d.ts +3 -89
  102. package/dist/errors/exports.mjs +1 -1
  103. package/dist/{getValidatorQueuedOperatorAddress-BQXkSFd9.d.cts → getValidatorQueuedOperatorAddress-CPuIw7n5.d.cts} +2 -2
  104. package/dist/{getValidatorQueuedOperatorAddress-DUZOmxLV.d.ts → getValidatorQueuedOperatorAddress-CbZQ0kv2.d.ts} +2 -2
  105. package/dist/{global.d-6aSWIkV_.d.cts → global.d-B9nLZ7ul.d.cts} +3 -239
  106. package/dist/{global.d-SU9Epq0M.d.ts → global.d-ylUk_etZ.d.ts} +3 -239
  107. package/dist/hooks/exports.cjs +3 -3
  108. package/dist/hooks/exports.cjs.map +1 -1
  109. package/dist/hooks/exports.d.cts +19 -198
  110. package/dist/hooks/exports.d.ts +19 -198
  111. package/dist/hooks/exports.mjs +3 -3
  112. package/dist/hooks/exports.mjs.map +1 -1
  113. package/dist/hooks/governance/exports.cjs +2 -0
  114. package/dist/hooks/governance/exports.cjs.map +1 -0
  115. package/dist/hooks/governance/exports.d.cts +181 -0
  116. package/dist/hooks/governance/exports.d.ts +181 -0
  117. package/dist/hooks/governance/exports.mjs +2 -0
  118. package/dist/hooks/governance/exports.mjs.map +1 -0
  119. package/dist/pol.d-o6Iw75bK.d.cts +134 -0
  120. package/dist/pol.d-qR8bGEP5.d.ts +134 -0
  121. package/dist/{txnEnum-CCuQUFlh.d.cts → txnEnum-CwAJN4zV.d.cts} +3 -60
  122. package/dist/{txnEnum-CCuQUFlh.d.ts → txnEnum-CwAJN4zV.d.ts} +3 -60
  123. package/dist/types/exports.cjs.map +1 -1
  124. package/dist/types/exports.d.cts +7 -7
  125. package/dist/types/exports.d.ts +7 -7
  126. package/dist/types/governance/exports.cjs +1 -0
  127. package/dist/types/governance/exports.cjs.map +1 -0
  128. package/dist/types/governance/exports.d.cts +109 -0
  129. package/dist/types/governance/exports.d.ts +109 -0
  130. package/dist/types/governance/exports.mjs +1 -0
  131. package/dist/types/governance/exports.mjs.map +1 -0
  132. package/dist/utils/exports.cjs +1 -1
  133. package/dist/utils/exports.cjs.map +1 -1
  134. package/dist/utils/exports.d.cts +10 -2
  135. package/dist/utils/exports.d.ts +10 -2
  136. package/dist/utils/exports.mjs +1 -1
  137. package/dist/utils/exports.mjs.map +1 -1
  138. package/package.json +49 -8
  139. package/src/actions/clients/BeraApolloClient.ts +9 -0
  140. package/src/actions/clients/getApolloClient.ts +23 -6
  141. package/src/actions/dex/getOnChainPool.ts +1 -1
  142. package/src/actions/enso/getBendMultiplyBundle.ts +9 -2
  143. package/src/actions/enso/util.ts +6 -8
  144. package/src/actions/exports.ts +1 -10
  145. package/src/actions/governance/checkProposalField.ts +108 -54
  146. package/src/actions/governance/computeActualStatus.ts +7 -3
  147. package/src/actions/governance/exports.ts +9 -0
  148. package/src/actions/governance/getAllProposals.ts +15 -8
  149. package/src/actions/governance/getBodyErrors.ts +13 -5
  150. package/src/actions/governance/getDecodedFunctionData.ts +31 -22
  151. package/src/actions/governance/getProposalDetails.ts +8 -4
  152. package/src/actions/governance/getProposalFromTx.ts +19 -10
  153. package/src/actions/governance/getProposalParams.ts +17 -17
  154. package/src/actions/governance/getProposalVotes.ts +7 -3
  155. package/src/actions/governance/getQuorum.ts +7 -7
  156. package/src/actions/governance/parseProposalBody.ts +19 -9
  157. package/src/actions/honey/getChartData.ts +5 -5
  158. package/src/actions/honey/getHoney24hVolume.ts +30 -0
  159. package/src/actions/honey/getHoneyPythPriceOracle.ts +1 -1
  160. package/src/actions/honey/getHoneyRootPriceOracle.ts +1 -1
  161. package/src/actions/pol/getEarnedStakedBeraVault.ts +12 -2
  162. package/src/actions/pol/getRewardVaultBeaconImplementation.ts +1 -1
  163. package/src/actions/pol/getRewardVaultIncentives.ts +2 -2
  164. package/src/actions/pol/getStakingDailyAssets.ts +7 -1
  165. package/src/actions/pol/getTotalStakedAmount.ts +1 -1
  166. package/src/actions/pol/getUserClaimableIncentives.ts +1 -1
  167. package/src/actions/pol/getUserVaultsReward.ts +1 -1
  168. package/src/actions/tokens/getTokenInformation.ts +8 -15
  169. package/src/actions/tokens/getUnderlyingToken.ts +1 -1
  170. package/src/actions/validators/getUserBoosts.ts +1 -1
  171. package/src/enum/exports.ts +0 -1
  172. package/src/enum/governance/exports.ts +1 -0
  173. package/src/enum/txnEnum.ts +2 -0
  174. package/src/errors/BeraError.ts +7 -2
  175. package/src/errors/RequestError.ts +2 -1
  176. package/src/hooks/dex/usePoolHistoricalData.ts +1 -1
  177. package/src/hooks/enso/useBendZapSupply.ts +1 -1
  178. package/src/hooks/exports.ts +1 -15
  179. package/src/hooks/governance/exports.ts +14 -0
  180. package/src/hooks/honey/useHoney24hVolume.ts +16 -0
  181. package/src/hooks/perps/usePythUpdateFee.ts +1 -1
  182. package/src/hooks/validators/useValidatorRewardAllocation.ts +1 -1
  183. package/src/types/exports.ts +0 -1
  184. package/src/types/governance/exports.ts +1 -0
  185. package/src/utils/beraFetch.ts +70 -15
  186. package/src/utils/getErrorResponse.ts +1 -1
  187. package/dist/RequestError-A8XJ6QR9.d.cts +0 -57
  188. package/dist/RequestError-Dk97z8rm.d.ts +0 -57
  189. package/dist/chunk-2EN6PPAW.cjs +0 -2
  190. package/dist/chunk-2EN6PPAW.cjs.map +0 -1
  191. package/dist/chunk-2YBHAMDV.cjs +0 -2
  192. package/dist/chunk-2YBHAMDV.cjs.map +0 -1
  193. package/dist/chunk-57RINXU6.cjs +0 -2
  194. package/dist/chunk-57RINXU6.cjs.map +0 -1
  195. package/dist/chunk-74QD4JAH.mjs.map +0 -1
  196. package/dist/chunk-74WA35RI.cjs +0 -2
  197. package/dist/chunk-74WA35RI.cjs.map +0 -1
  198. package/dist/chunk-7ITWLMO7.cjs +0 -4
  199. package/dist/chunk-7ITWLMO7.cjs.map +0 -1
  200. package/dist/chunk-BEKH5EYT.mjs +0 -2
  201. package/dist/chunk-BEKH5EYT.mjs.map +0 -1
  202. package/dist/chunk-DK42F2ZM.cjs +0 -2
  203. package/dist/chunk-DK42F2ZM.cjs.map +0 -1
  204. package/dist/chunk-EFG3OYYQ.mjs +0 -2
  205. package/dist/chunk-GO5E7UUD.cjs +0 -2
  206. package/dist/chunk-GO5E7UUD.cjs.map +0 -1
  207. package/dist/chunk-I7M43BB4.cjs.map +0 -1
  208. package/dist/chunk-IDFMLLDY.mjs +0 -2
  209. package/dist/chunk-IDFMLLDY.mjs.map +0 -1
  210. package/dist/chunk-JE5GI2OC.mjs +0 -4
  211. package/dist/chunk-JE5GI2OC.mjs.map +0 -1
  212. package/dist/chunk-KI66MQ43.mjs +0 -2
  213. package/dist/chunk-NMH7LHPW.cjs.map +0 -1
  214. package/dist/chunk-NVHV2LDK.cjs +0 -2
  215. package/dist/chunk-NVHV2LDK.cjs.map +0 -1
  216. package/dist/chunk-PLIH6KQM.mjs +0 -2
  217. package/dist/chunk-PLIH6KQM.mjs.map +0 -1
  218. package/dist/chunk-QRAIGQF2.mjs +0 -2
  219. package/dist/chunk-QRAIGQF2.mjs.map +0 -1
  220. package/src/actions/honey/getHoneyGlobalData.ts +0 -21
  221. package/src/hooks/honey/useHoneyGlobalData.ts +0 -23
  222. /package/dist/{chunk-MJZHJFZO.mjs.map → chunk-JXM5S4IU.mjs.map} +0 -0
@@ -1,4 +1,4 @@
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(); } } 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 _class2; var _class3; var _class4; var _class5; var _class6; var _class7; var _class8; var _class9; var _class10; var _class11; var _class12;var _chunk7ITWLMO7cjs = require('../chunk-7ITWLMO7.cjs');var _chunk2EN6PPAWcjs = require('../chunk-2EN6PPAW.cjs');var _chunkGO5E7UUDcjs = require('../chunk-GO5E7UUD.cjs');require('../chunk-I7M43BB4.cjs');require('../chunk-WRFDB3QJ.cjs');require('../chunk-XNJLSA6P.cjs');var _chunkRWOICHRWcjs = require('../chunk-RWOICHRW.cjs');require('../chunk-OUD27MU7.cjs');require('../chunk-OIYXOKTT.cjs');var _chunk57RINXU6cjs = require('../chunk-57RINXU6.cjs');var _chunkNVHV2LDKcjs = require('../chunk-NVHV2LDK.cjs');require('../chunk-DDEQFR3M.cjs');var _chunk74WA35RIcjs = require('../chunk-74WA35RI.cjs');var _chunkDK42F2ZMcjs = require('../chunk-DK42F2ZM.cjs');var _chunk2YBHAMDVcjs = require('../chunk-2YBHAMDV.cjs');var _chunkNMH7LHPWcjs = require('../chunk-NMH7LHPW.cjs');var _swr = require('swr'); var _swr2 = _interopRequireDefault(_swr);var _hooks = require('@berachain/wagmi/hooks');var zo=({sharesAmount:e,vaultAddress:t,vaultChainId:o},r)=>{let s=_hooks.usePublicClient.call(void 0, {chainId:o}),a=_swr2.default.call(void 0, s&&e&&t?["useGetConvertToAssets",e,t,o]:null,async([i,n,l])=>(_chunk2YBHAMDVcjs.c.call(void 0, s),_chunk7ITWLMO7cjs.a.call(void 0, {sharesAmount:n,vaultAddress:l,publicClient:s})),{..._optionalChain([r, 'optionalAccess', _2 => _2.opts])});return{...a,refresh:()=>{a.mutate()}}};var _react = require('react');var _viem = require('viem');var _internal = require('@berachain/config/internal');var _berancersdk = require('@berachain-foundation/berancer-sdk');var _config = require('@berachain/config');var _vault = require('@berachain/abis/bex/vault');var Ds=300,Ls=.05,Ke=_berancersdk.SwapKind.GivenIn,qe= (_class =class extends _chunk7ITWLMO7cjs.e{constructor(...args2) { super(...args2); _class.prototype.__init.call(this);_class.prototype.__init2.call(this);_class.prototype.__init3.call(this);_class.prototype.__init4.call(this); }__init() {this.name="Hub Pools"}__init2() {this.supportedChains=[_internal.ChainId.MAINNET,_internal.ChainId.BEPOLIA]}__init3() {this.url=_config.getUriFromLink.call(void 0, this.config.api)}__init4() {this.type="graphql"}convertZeroToWrapped(t){return _chunk74WA35RIcjs.e.call(void 0, t,"BERA")?this.config.tokens.wbera:t}calculatePriceImpact(t){return t.error?(console.error("Swap price impact error",t),0):Number(t.priceImpact)}checkStalePrices({onChainAmount:t,sorPaths:o,sorAmount:r,queryData:s}){let a=Number.parseFloat(_viem.formatEther.call(void 0, t.scale18))/Number.parseFloat(r);if(Math.abs(1-a)>Ls){console.warn("SOR returned stale prices. Delta from return amount is more than 5%",{deltaFromSorAmount:a});let i=new (0, _chunkNMH7LHPWcjs.f)({reason:"SOR_STALE_PRICES",level:"warning",message:"SOR returned stale prices. Delta from return amount is more than 5%",extra:{deltaFromSorAmount:a,pools:o.map(n=>n.pools),onChainAmount:_viem.formatEther.call(void 0, t.scale18),sorAmount:r,queryData:s},fingerprint:["SOR_STALE_PRICES"]});_chunk2YBHAMDVcjs.g.captureException(i)}}async getQuote(t){let o=new (0, _chunk7ITWLMO7cjs.f)(this.url,this.chainId),{tokenIn:r,tokenOut:s,amount:a,slippage:i,account:n=_viem.zeroAddress,publicClient:l}=t;this.assertChainSupport({tokenIn:r,tokenOut:s}),_chunk2YBHAMDVcjs.c.call(void 0, l);let u=_chunk74WA35RIcjs.e.call(void 0, r,"BERA")||_chunk74WA35RIcjs.e.call(void 0, s,"BERA"),m=new (0, _berancersdk.Token)(this.chainId,this.convertZeroToWrapped(r.address),r.decimals),p=new (0, _berancersdk.Token)(this.chainId,this.convertZeroToWrapped(s.address),s.decimals),c=_berancersdk.TokenAmount.fromRawAmount(m,a),{paths:d,priceImpact:f,returnAmount:y}=await o.sorSwapPaths.fetchSorSwapPaths({chainId:this.chainId,tokenIn:m.address,tokenOut:p.address,swapKind:Ke,swapAmount:c});if(!_optionalChain([d, 'optionalAccess', _3 => _3.length]))throw new (0, _chunkNMH7LHPWcjs.g)({response:void 0,endpoint:{url:this.url,name:this.name,type:this.type},reason:_chunk7ITWLMO7cjs.e.PATH_NOT_FOUND_REASON,chainId:this.chainId,payload:{tokenIn:m.address,tokenOut:p.address,swapKind:Ke,swapAmount:c},message:"No swap paths returned from Balancer API"});let A=new (0, _berancersdk.Swap)({chainId:this.chainId,paths:d,swapKind:Ke,userData:"0x"}),h=await A.query(l.transport.url);if(!("expectedAmountOut"in h))throw new Error("No Bex paths found");return this.checkStalePrices({onChainAmount:h.expectedAmountOut,sorPaths:d,sorAmount:y,queryData:t}),{amountOut:h.expectedAmountOut.amount.toString(),amountIn:a,allowanceRequirements:this.parseAllowanceRequirements({tokenIn:r,rawAmount:a,spender:h.to}),name:this.name,priceImpactPercentage:this.calculatePriceImpact(f),swapFeeBps:0,getCalldata:({account:R})=>{let b=A.buildCall({slippage:_berancersdk.Slippage.fromPercentage(i.toString()),deadline:BigInt(Math.round(Date.now()/1e3)+Ds),queryOutput:h,sender:R,recipient:R,wethIsEth:u}),{args:P,functionName:w}=_viem.decodeFunctionData.call(void 0, {abi:_vault.vaultAbi,data:b.callData});return{params:P,functionName:w,abi:_vault.vaultAbi,address:b.to,value:b.value||BigInt(0)}}}}}, _class),$e=new qe;var ze= (_class2 =class extends _chunk7ITWLMO7cjs.e{constructor(...args3) { super(...args3); _class2.prototype.__init5.call(this);_class2.prototype.__init6.call(this);_class2.prototype.__init7.call(this); }__init5() {this.name="RedeemBgt"}__init6() {this.supportedChains=[_internal.ChainId.MAINNET,_internal.ChainId.BEPOLIA]}__init7() {this.type="rpc"}checkChainSupport({tokenIn:t,tokenOut:o}){return super.checkChainSupport({tokenIn:t,tokenOut:o})?t.chainId===o.chainId&&_chunk74WA35RIcjs.e.call(void 0, t,"BGT",{chainId:t.chainId})&&_chunk74WA35RIcjs.e.call(void 0, o,"BERA"):!1}async getQuote({tokenIn:t,amount:o}){if(this.assertChainSupport({tokenIn:t,tokenOut:{..._chunk74WA35RIcjs.b,chainId:t.chainId}}),!_chunk74WA35RIcjs.e.call(void 0, t,"BGT",{config:this.config}))throw new (0, _chunkNMH7LHPWcjs.h)({property:"tokenIn",value:t,expected:"BGT",level:"warning"});return{amountOut:o,amountIn:o,allowanceRequirements:[],name:"RedeemBgt",isNativeSwap:!0,swapFeeBps:0}}}, _class2),tr=new ze;var _metaAggregatorV2 = require('@berachain/abis/meta-aggregator/metaAggregatorV2'); var _metaAggregatorV22 = _interopRequireDefault(_metaAggregatorV2);var je= (_class3 =class extends _chunk7ITWLMO7cjs.e{constructor(...args4) { super(...args4); _class3.prototype.__init8.call(this);_class3.prototype.__init9.call(this);_class3.prototype.__init10.call(this);_class3.prototype.__init11.call(this);_class3.prototype.__init12.call(this); }__init8() {this.name="Enso"}__init9() {this.supportedChains=[_internal.ChainId.MAINNET]}__init10() {this.type="rest"}__init11() {this.needsAccountForQuote=!0}__init12() {this.notFoundMessages=["Could not build shortcuts for route","Could not quote shortcuts for route","Swap not found for a required underlying of defi route,","No route found from"]}async getQuote({tokenIn:t,tokenOut:o,amount:r,slippage:s,account:a=_viem.zeroAddress,aggregatorsFeeBps:i,proxyAggregatorsThroughVercel:n=!1,rewardVault:l}){this.assertChainSupport({tokenIn:t,tokenOut:o});let{tokenInAddress:u,tokenOutAddress:m,isTokenInNative:p,isTokenOutNative:c}=this.parseAddresses(t.address,o.address),d=this.getAmountAfterFees(r,i);this.url=n?"/api/aggregators?aggregator=enso":`${this.config.bex.aggregatorsProxyUrl}/enso/api/v1/shortcuts/route?`;let f=new URL(this.url);f.searchParams.set("fromAddress",this.config.bex.aggregatorsRouterExecutor),f.searchParams.set("receiver",this.config.bex.aggregatorsRouterExecutor),f.searchParams.set("spender",this.config.bex.aggregatorsRouterExecutor),f.searchParams.set("amountIn",d),f.searchParams.set("tokenIn",u),f.searchParams.set("tokenOut",m),f.searchParams.set("chainId",_internal.ChainId.MAINNET.toString()),f.searchParams.set("slippage",(Number(s)*100).toString()),f.searchParams.set("refundReceiver",a);let A=await(await this.fetch(f)).json(),h=this.getInputData({tokenIn:u,amountIn:r,isNative:p}),R={tokenOut:m,receiver:a,minAmountOut:this.getMinAmountOut(A.amountOut.toString(),s),isNative:c},b={aggregator:_optionalChain([A, 'access', _4 => _4.tx, 'optionalAccess', _5 => _5.to]),data:_optionalChain([A, 'access', _6 => _6.tx, 'optionalAccess', _7 => _7.data])};return{amountOut:A.amountOut.toString(),amountIn:r,allowanceRequirements:this.parseAllowanceRequirements({tokenIn:t,rawAmount:r,spender:this.config.bex.aggregatorsRouter}),name:this.name,swapFeeBps:i,getCalldata:()=>({params:[h,R,b,{rewardVault:_nullishCoalesce(l, () => (_viem.zeroAddress)),isSwapAndStake:!!l}],functionName:"swap",abi:_metaAggregatorV22.default,value:BigInt(p?r:"0"),address:this.config.bex.aggregatorsRouter})}}}, _class3),Ze=new je;var _wberaStakerVault = require('@berachain/abis/pol/wberaStakerVault');var Je= (_class4 =class extends _chunk7ITWLMO7cjs.e{constructor(...args5) { super(...args5); _class4.prototype.__init13.call(this);_class4.prototype.__init14.call(this);_class4.prototype.__init15.call(this); }__init13() {this.name="Mint"}__init14() {this.supportedChains=null}__init15() {this.type="rpc"}checkChainSupport({tokenIn:t,tokenOut:o,underlyingToken:r}){return super.checkChainSupport({tokenIn:t,tokenOut:o,underlyingToken:r})&&!!r&&_optionalChain([r, 'optionalAccess', _8 => _8.chainId])===o.chainId&&(_chunk74WA35RIcjs.e.call(void 0, r,t)||_chunk74WA35RIcjs.e.call(void 0, t,"BERA")&&_chunk74WA35RIcjs.e.call(void 0, o,"SWBERA"))}async getQuote({tokenIn:t,tokenOut:o,amount:r,underlyingToken:s,publicClient:a}){this.assertChainSupport({tokenIn:t,tokenOut:o,underlyingToken:s}),_chunk2YBHAMDVcjs.b.call(void 0, s,"underlyingToken"),_chunk2YBHAMDVcjs.c.call(void 0, a);let i=await a.readContract({address:o.address,abi:_viem.erc4626Abi,functionName:"convertToShares",args:[BigInt(r)]}),n=_chunk74WA35RIcjs.e.call(void 0, o,"SWBERA")&&_chunk74WA35RIcjs.e.call(void 0, t,"BERA");return{amountOut:i.toString(),amountIn:r,allowanceRequirements:n?[]:[{token:t,spender:o.address,amount:{raw:r,formatted:_viem.formatUnits.call(void 0, BigInt(r),t.decimals)}}],name:"Mint",isNativeSwap:!1,swapFeeBps:0,getCalldata:({account:l})=>n?{abi:_wberaStakerVault.wberaStakerVaultAbi,address:o.address,functionName:"depositNative",params:[BigInt(r),l],value:BigInt(r)}:{abi:_viem.erc4626Abi,address:o.address,functionName:"deposit",contractName:"others.erc4626",params:[BigInt(r),l],value:0n}}}}, _class4),Xe=new Je;var ar="https://api.fly.trade/aggregator",et= (_class5 =class extends _chunk7ITWLMO7cjs.e{constructor(...args6) { super(...args6); _class5.prototype.__init16.call(this);_class5.prototype.__init17.call(this);_class5.prototype.__init18.call(this);_class5.prototype.__init19.call(this); }__init16() {this.name="Fly"}__init17() {this.supportedChains=[_internal.ChainId.MAINNET]}__init18() {this.type="rest"}__init19() {this.notFoundMessages=["Couldn't recognize to token","Couldn't recognize from token","There is not enough liquidity. Amount is too high.","Routes were not found"]}async getQuote({tokenIn:t,tokenOut:o,amount:r,slippage:s,account:a,aggregatorsFeeBps:i,rewardVault:n}){this.assertChainSupport({tokenIn:t,tokenOut:o});let{tokenInAddress:l,tokenOutAddress:u,isTokenInNative:m,isTokenOutNative:p}=this.parseAddresses(t.address,o.address),c=this.getAmountAfterFees(r,i),d=new URL(`${ar}/quote`);this.url=d.toString();let f=new URLSearchParams({fromTokenAddress:l,toTokenAddress:u,sellAmount:c,slippage:(s/100).toString(),gasless:"false",network:"berachain"});f.set("fromAddress",this.config.bex.aggregatorsRouterExecutor),f.set("toAddress",this.config.bex.aggregatorsRouterExecutor),d.search=f.toString();let A=await(await this.fetch(d)).json(),h={amountOut:A.amountOut,amountIn:r,allowanceRequirements:this.parseAllowanceRequirements({tokenIn:t,rawAmount:r,spender:this.config.bex.aggregatorsRouter}),name:this.name,swapFeeBps:_nullishCoalesce(i, () => (0))},R=new URL(`${ar}/transaction`);this.url=R.toString();let b=new URLSearchParams({quoteId:A.id,estimateGas:"false"});R.search=b.toString();let w=await(await this.fetch(R)).json();return{...h,getCalldata:({account:I})=>{let T=this.getInputData({tokenIn:l,amountIn:r,isNative:m}),S={tokenOut:u,receiver:I,minAmountOut:this.getMinAmountOut(A.amountOut,s),isNative:p},O={aggregator:_optionalChain([w, 'optionalAccess', _9 => _9.to]),data:_optionalChain([w, 'optionalAccess', _10 => _10.data])};return{params:[T,S,O,{rewardVault:_nullishCoalesce(n, () => (_viem.zeroAddress)),isSwapAndStake:!!n}],functionName:"swap",abi:_metaAggregatorV22.default,value:_chunk74WA35RIcjs.e.call(void 0, t,"BERA")?BigInt(r):BigInt("0"),address:this.config.bex.aggregatorsRouter}}}}}, _class5),tt=new et;var ot= (_class6 =class extends _chunk7ITWLMO7cjs.e{constructor(...args7) { super(...args7); _class6.prototype.__init20.call(this);_class6.prototype.__init21.call(this);_class6.prototype.__init22.call(this);_class6.prototype.__init23.call(this); }__init20() {this.name="Haiku"}__init21() {this.supportedChains=[_internal.ChainId.MAINNET]}__init22() {this.type="rest"}__init23() {this.notFoundMessages=["token not found","Token is not supported","No route found for the given input or the liquidity is not enough","Invalid input amount. Please ensure the total amount of input is greater than 0.001 USD"]}async getQuote({tokenIn:t,tokenOut:o,amount:r,slippage:s,aggregatorsFeeBps:a,proxyAggregatorsThroughVercel:i=!1,referrer:n,rewardVault:l}){if(t.decimals===void 0||o.decimals===void 0)throw new (0, _chunkNMH7LHPWcjs.f)({message:"Missing required params",level:"error"});this.assertChainSupport({tokenIn:t,tokenOut:o});let{tokenInAddress:u,tokenOutAddress:m,isTokenInNative:p,isTokenOutNative:c}=this.parseAddresses(t.address,o.address),d=this.getAmountAfterFees(r,a),f={intent:{allowancesMode:"approve",slippage:s/100,receiver:this.config.bex.aggregatorsRouterExecutor,input_positions:{[`bera:${u}`]:_viem.formatUnits.call(void 0, BigInt(d),t.decimals)},target_weights:{[`bera:${m}`]:1}}},y=n==="ZAP"?"zap-haiku":"haiku";this.url=i?"/api/aggregators?aggregator=haikuQuote":`${this.config.bex.aggregatorsProxyUrl}/${y}/v1/quoteIntent`;let h=await(await this.fetch(this.url,{method:"POST",headers:{"Content-Type":"application/json"},body:JSON.stringify(f)})).json(),R={amountOut:_viem.parseUnits.call(void 0, h.balances[0].amount,o.decimals).toString(),amountIn:r,allowanceRequirements:this.parseAllowanceRequirements({tokenIn:t,rawAmount:r,spender:this.config.bex.aggregatorsRouter}),name:this.name,swapFeeBps:a};this.url=i?"/api/aggregators?aggregator=haikuSolve":`${this.config.bex.aggregatorsProxyUrl}/${y}/v1/solveIntent`;let P=await(await this.fetch(this.url,{method:"POST",headers:{"Content-Type":"application/json"},body:JSON.stringify({quoteId:h.quoteId})})).json();return{...R,getCalldata:({account:w})=>{let I=this.getInputData({tokenIn:u,amountIn:r,isNative:p,isPermit2Approval:!0,permit2SpenderAddress:this.config.bex.haikuAgentAddress}),T={tokenOut:m,receiver:w,minAmountOut:this.getMinAmountOut(R.amountOut,s),isNative:c},S={aggregator:P.to,data:P.data};return{params:[I,T,S,{rewardVault:_nullishCoalesce(l, () => (_viem.zeroAddress)),isSwapAndStake:!!l}],functionName:"swap",abi:_metaAggregatorV22.default,value:BigInt(p?r:"0"),address:this.config.bex.aggregatorsRouter}}}}}, _class6),rt=new ot;function qs(e){return e?"previewMintHoney":"previewRedeemCollaterals"}var st= (_class7 =class extends _chunk7ITWLMO7cjs.e{constructor(...args8) { super(...args8); _class7.prototype.__init24.call(this);_class7.prototype.__init25.call(this);_class7.prototype.__init26.call(this);_class7.prototype.__init27.call(this); }__init24() {this.name="Honey"}__init25() {this.supportedChains=[_internal.ChainId.MAINNET]}__init26() {this.type="rpc"}__init27() {this.honeyToken=_chunk74WA35RIcjs.d.call(void 0, this)}isHoneyNativeSwap({tokenIn:t,tokenOut:o,honeyNativeState:r,...s}){if(!_optionalChain([r, 'optionalAccess', _11 => _11.collateralList]))return!1;let a=_chunk74WA35RIcjs.e.call(void 0, o,"HONEY",s),i=_chunk74WA35RIcjs.e.call(void 0, t,"HONEY",s);return!a&&!i?!1:r.collateralList.some(n=>_chunk74WA35RIcjs.e.call(void 0, n.address,a?t:o))}checkChainSupport({tokenIn:t,tokenOut:o,honeyNativeState:r}){return super.checkChainSupport({tokenIn:t,tokenOut:o})&&t.chainId===o.chainId&&this.isHoneyNativeSwap({tokenIn:t.address,tokenOut:o.address,honeyNativeState:r})}async getQuote({tokenIn:t,tokenOut:o,amount:r,publicClient:s,account:a,honeyNativeState:i}){let{collateralList:n}=_nullishCoalesce(i, () => ({}));if(!n)throw new (0, _chunkNMH7LHPWcjs.h)({message:"Invalid Honey Context state",property:"collaterals",value:n,expected:"TokenWithOrder[]"});_chunk2YBHAMDVcjs.c.call(void 0, s),this.assertChainSupport({tokenIn:t,tokenOut:o});let l=_chunk74WA35RIcjs.e.call(void 0, o,this.honeyToken),u=n,m=n.find(I=>_chunk74WA35RIcjs.e.call(void 0, I.address,l?t.address:o.address));if(!m)throw new (0, _chunkNMH7LHPWcjs.f)({message:"This collateral is not part of the Honey protocol"});let[p,c]=await Promise.all([_chunk7ITWLMO7cjs.F.call(void 0, {client:s,collateralList:[m]}),_chunk7ITWLMO7cjs.K.call(void 0, {client:s,isMint:l,collateralList:n,latestPrices:void 0,isPythWrapperEnabled:!1})]);if(!p)throw new (0, _chunkNMH7LHPWcjs.f)({message:"Failed to fetch the Honey vault balances"});if(c)return;let d=p[0],f=m.order;u.length>1&&f!==0&&(u.splice(f,1),u.unshift(m));let y=_viem.formatUnits.call(void 0, BigInt(r),l?m.decimals:this.honeyToken.decimals),A={client:s,collateral:m,collateralList:n,amount:y,method:qs(l),latestPrices:void 0,isPythWrapperEnabled:!1},h=await _chunk7ITWLMO7cjs.E.call(void 0, A);if(!h)throw new (0, _chunkNMH7LHPWcjs.f)({message:"Failed to fetch the Honey preview"});let{honey:R,collaterals:b}=h;if(!(l?!0:new (0, _chunkNVHV2LDKcjs.a)(_nullishCoalesce(_optionalChain([d, 'optionalAccess', _12 => _12.balance, 'access', _13 => _13.formatted]), () => ("0"))).gte(_viem.formatUnits.call(void 0, b[m.address],m.decimals))))return;let w=await _chunk7ITWLMO7cjs.J.call(void 0, {state:{actionType:l?"mint":"redeem",fromAmount:[y],collaterals:u,isBasketModeEnabled:!1},collateralList:u,publicClient:s,priceFeedMap:void 0,isPythWrapperEnabled:!1});if(!w&&a)throw new (0, _chunkNMH7LHPWcjs.f)({message:"Failed to fetch the Honey swap payload"});return{amountIn:r,amountOut:l?R.toString():b[m.address].toString(),allowanceRequirements:this.parseAllowanceRequirements({tokenIn:t,rawAmount:r,spender:this.config.bex.aggregatorsRouter}),name:"Honey",swapFeeBps:0,getCalldata:({account:I})=>w({account:I})}}}, _class7),at=new st;var nt= (_class8 =class extends _chunk7ITWLMO7cjs.e{constructor(...args9) { super(...args9); _class8.prototype.__init28.call(this);_class8.prototype.__init29.call(this);_class8.prototype.__init30.call(this);_class8.prototype.__init31.call(this); }__init28() {this.name="KyberSwap"}__init29() {this.supportedChains=[_internal.ChainId.MAINNET]}__init30() {this.type="rest"}__init31() {this.notFoundMessages=["token not found","route not found","amountIn is greater than max allowed"]}async getQuote({tokenIn:t,tokenOut:o,amount:r,slippage:s,aggregatorsFeeBps:a,proxyAggregatorsThroughVercel:i=!1,rewardVault:n}){this.assertChainSupport({tokenIn:t,tokenOut:o});let{isTokenInNative:l,isTokenOutNative:u,tokenInAddress:m,tokenOutAddress:p}=this.parseAddresses(t.address,o.address),c=this.getAmountAfterFees(r,a);this.url=i?"/api/aggregators?aggregator=kyberswapRoutes":`${this.config.bex.aggregatorsProxyUrl}/kyberswap/berachain/api/v1/routes`;let d=new URL(this.url);d.searchParams.set("tokenIn",m),d.searchParams.set("tokenOut",p),d.searchParams.set("amountIn",c),d.searchParams.set("slippageTolerance",(s/100).toString()),d.searchParams.set("to",this.config.bex.aggregatorsRouterExecutor),d.searchParams.set("clientData",JSON.stringify({source:"berachain"}));let y=await(await this.fetch(d)).json(),A={amountOut:y.data.routeSummary.amountOut,amountIn:r,name:this.name,swapFeeBps:a,allowanceRequirements:this.parseAllowanceRequirements({tokenIn:t,rawAmount:r,spender:this.config.bex.aggregatorsRouter})},h={routeSummary:y.data.routeSummary,sender:this.config.bex.aggregatorsRouterExecutor,recipient:this.config.bex.aggregatorsRouterExecutor,slippageTolerance:s*100,deadline:Math.floor(Date.now()/1e3)+300,source:"berachain"},R=d.searchParams.entries(),b=new URL(i?"/api/aggregators?aggregator=kyberswapBuild":`${this.config.bex.aggregatorsProxyUrl}/kyberswap/berachain/api/v1/route/build`);for(let[T,S]of R)b.searchParams.set(T,S);let w=await(await this.fetch(b,{method:"POST",body:JSON.stringify(h)})).json(),I=this.getInputData({tokenIn:m,amountIn:r,isNative:l});return{...A,getCalldata:({account:T})=>{let S={tokenOut:p,receiver:T,minAmountOut:this.getMinAmountOut(A.amountOut,s),isNative:u},O={aggregator:w.data.routerAddress,data:w.data.data};return{params:[I,S,O,{rewardVault:_nullishCoalesce(n, () => (_viem.zeroAddress)),isSwapAndStake:!!n}],functionName:"swap",abi:_metaAggregatorV22.default,value:BigInt(l?r:"0"),address:this.config.bex.aggregatorsRouter}}}}}, _class8),it=new nt;var lt= (_class9 =class extends _chunk7ITWLMO7cjs.e{constructor(...args10) { super(...args10); _class9.prototype.__init32.call(this);_class9.prototype.__init33.call(this);_class9.prototype.__init34.call(this); }__init32() {this.name="Oogabooga"}__init33() {this.supportedChains=[_internal.ChainId.MAINNET]}__init34() {this.type="rest"}async getQuote({tokenIn:t,tokenOut:o,amount:r,slippage:s,aggregatorsFeeBps:a,proxyAggregatorsThroughVercel:i=!1,rewardVault:n}){this.assertChainSupport({tokenIn:t,tokenOut:o});let{tokenInAddress:l,tokenOutAddress:u,isTokenInNative:m,isTokenOutNative:p}=this.parseAddresses(t.address,o.address),c=this.getAmountAfterFees(r,a),d=new URLSearchParams({tokenIn:l,tokenOut:u,amount:c,slippage:(s/100).toString(),to:this.config.bex.aggregatorsRouterExecutor,referrer:this.config.bex.aggregatorsRouter});this.url=i?`/api/aggregators?aggregator=oogabooga&${d.toString()}`:`${this.config.bex.aggregatorsProxyUrl}/oogabooga/v1/swap?${d.toString()}`;let y=await(await this.fetch(this.url)).json(),A={amountOut:y.assumedAmountOut,amountIn:r,allowanceRequirements:this.parseAllowanceRequirements({tokenIn:t,spender:this.config.bex.aggregatorsRouter,rawAmount:r}),name:this.name,priceImpactPercentage:y.priceImpact,swapFeeBps:a};return{...A,getCalldata:({account:h})=>{let R=this.getInputData({tokenIn:l,amountIn:r,isNative:m}),b={tokenOut:u,receiver:h,minAmountOut:this.getMinAmountOut(A.amountOut,s),isNative:p},P={aggregator:_optionalChain([y, 'access', _14 => _14.tx, 'optionalAccess', _15 => _15.to]),data:_optionalChain([y, 'access', _16 => _16.tx, 'optionalAccess', _17 => _17.data])};return{params:[R,b,P,{rewardVault:_nullishCoalesce(n, () => (_viem.zeroAddress)),isSwapAndStake:!!n}],functionName:"swap",abi:_metaAggregatorV22.default,value:BigInt(m?r:"0"),address:this.config.bex.aggregatorsRouter}}}}}, _class9),ut=new lt;var pt= (_class10 =class extends _chunk7ITWLMO7cjs.e{constructor(...args11) { super(...args11); _class10.prototype.__init35.call(this);_class10.prototype.__init36.call(this);_class10.prototype.__init37.call(this);_class10.prototype.__init38.call(this);_class10.prototype.__init39.call(this); }__init35() {this.name="OpenOcean"}__init36() {this.supportedChains=[_internal.ChainId.MAINNET]}__init37() {this.type="rest"}__init38() {this.url="https://open-api.openocean.finance/v4/bera/swap"}__init39() {this.notFoundMessages=["No avail liquidity for the pair"]}async getQuote({tokenIn:t,tokenOut:o,amount:r,slippage:s,account:a=_viem.zeroAddress,aggregatorsFeeBps:i,publicClient:n,rewardVault:l}){if(_chunk2YBHAMDVcjs.c.call(void 0, n),!t.decimals)throw new (0, _chunkNMH7LHPWcjs.h)({property:"tokenIn.decimals",value:t.decimals,expected:"number",chainId:this.chainId});this.assertChainSupport({tokenIn:t,tokenOut:o});let u=this.getAmountAfterFees(r,i),{tokenInAddress:m,tokenOutAddress:p,isTokenInNative:c,isTokenOutNative:d}=this.parseAddresses(t.address,o.address),f=(await n.getGasPrice()).toString(),y=new URLSearchParams({chain:_internal.ChainId.MAINNET.toString(),inTokenAddress:m,outTokenAddress:p,amountDecimals:u,slippage:s<.01?"0.01":s.toString(),account:this.config.bex.aggregatorsRouterExecutor,referrer:this.config.bex.aggregatorsRouter,gasPrice:f}),A=await this.fetch(`${this.url}?${y.toString()}`),h=await A.json();if(h.code!==200||!h.data){let b=this.notFoundMessages.some(P=>h.error.includes(P));throw new (0, _chunkNMH7LHPWcjs.g)({response:A,endpoint:{url:this.url,name:this.name,type:this.type},cause:h,reason:b?_chunk7ITWLMO7cjs.e.PATH_NOT_FOUND_REASON:h.error})}let R={amountOut:h.data.outAmount,amountIn:r,allowanceRequirements:this.parseAllowanceRequirements({tokenIn:t,rawAmount:r,spender:this.config.bex.aggregatorsRouter}),name:this.name,swapFeeBps:i};return{...R,getCalldata:({account:b})=>{let P=this.getInputData({tokenIn:m,amountIn:r,isNative:c}),w={tokenOut:p,receiver:b,minAmountOut:this.getMinAmountOut(R.amountOut,s),isNative:d},I={aggregator:h.data.to,data:h.data.data};return{params:[P,w,I,{rewardVault:_nullishCoalesce(l, () => (_viem.zeroAddress)),isSwapAndStake:!!l}],functionName:"swap",abi:_metaAggregatorV22.default,value:BigInt(c?r:"0"),address:this.config.bex.aggregatorsRouter}}}}}, _class10),mt=new pt;var _wbera = require('@berachain/abis/wbera');var dt= (_class11 =class extends _chunk7ITWLMO7cjs.e{constructor(...args12) { super(...args12); _class11.prototype.__init40.call(this);_class11.prototype.__init41.call(this);_class11.prototype.__init42.call(this); }__init40() {this.name="Wrap"}__init41() {this.supportedChains=[_internal.ChainId.MAINNET,_internal.ChainId.BEPOLIA]}__init42() {this.type="rpc"}checkChainSupport({tokenIn:t,tokenOut:o}){return t.chainId!==o.chainId||!super.checkChainSupport({tokenIn:t,tokenOut:o})?!1:_chunk74WA35RIcjs.e.call(void 0, t,"BERA")&&_chunk74WA35RIcjs.e.call(void 0, o,"WBERA")||_chunk74WA35RIcjs.e.call(void 0, t,"WBERA")&&_chunk74WA35RIcjs.e.call(void 0, o,"BERA")}async getQuote({tokenIn:t,tokenOut:o,amount:r}){this.assertChainSupport({tokenIn:t,tokenOut:o});let s=_chunk74WA35RIcjs.e.call(void 0, t,"BERA")&&_chunk74WA35RIcjs.e.call(void 0, o,"WBERA");return{amountOut:r,amountIn:r,allowanceRequirements:[],name:s?"Wrap":"Unwrap",isNativeSwap:!0,swapFeeBps:0,getCalldata:()=>s?{abi:_wbera.wberaAbi,address:this.config.tokens.wbera,functionName:"deposit",params:[],value:BigInt(r)}:{abi:_wbera.wberaAbi,address:this.config.tokens.wbera,functionName:"withdraw",params:[BigInt(r)],value:BigInt(0)}}}}, _class11),ct=new dt;var _immutable = require('swr/immutable'); var _immutable2 = _interopRequireDefault(_immutable);var _core = require('@wagmi/core');async function mr({token:e,wagmiConfig:t}){try{if(_chunk74WA35RIcjs.e.call(void 0, e,"BERA"))return null;let o=_core.getPublicClient.call(void 0, t,{chainId:e.chainId});_chunk2YBHAMDVcjs.c.call(void 0, o);let r=await o.readContract({address:e.address,abi:_viem.erc4626Abi,functionName:"asset"});return await _chunk7ITWLMO7cjs.y.call(void 0, {address:r,publicClient:o,chainId:e.chainId})}catch(o){let r=_chunk2YBHAMDVcjs.a.call(void 0, {cause:o});if(r.reason==='The contract function "asset" reverted.')return null;throw r}}function dr({token:e}){let t=_hooks.useConfig.call(void 0, );return _immutable2.default.call(void 0, e&&t&&!_chunk74WA35RIcjs.e.call(void 0, e,"BERA")?["useUnderlyingAsset",e]:null,async([,o])=>mr({token:o,wagmiConfig:t}))}var ke=()=>{let e=_hooks.usePublicClient.call(void 0, ),{config:t}=_chunk74WA35RIcjs.a.call(void 0, {chainId:_optionalChain([e, 'access', _18 => _18.chain, 'optionalAccess', _19 => _19.id])}),o=_immutable2.default.call(void 0, e&&t.bex.aggregatorsRouter&&t.bex.aggregatorsRouter!==_viem.zeroAddress?["useAggregatorsRouterFeeBps",t.bex.aggregatorsRouter]:null,async([,r])=>{let s=await e.readContract({address:r,abi:_metaAggregatorV22.default,functionName:"SWAP_FEE_RATE"});return Number(s)});return{...o,refresh:o.mutate}};var cr="useAggregatorsQuotes";function fa({aggregator:e,account:t,args:o,feeBps:r,options:s,activeAggregators:a,isMAEnabled:i}){if(_optionalChain([s, 'optionalAccess', _20 => _20.opts, 'optionalAccess', _21 => _21.isEnabled])!==void 0&&!_optionalChain([s, 'optionalAccess', _22 => _22.opts, 'optionalAccess', _23 => _23.isEnabled])||!Number(o.amount)||!e.checkChainSupport({tokenIn:o.tokenIn,tokenOut:o.tokenOut,underlyingToken:o.underlyingToken,honeyNativeState:o.honeyNativeState}))return null;let n=e.name,l=!["Hub Pools","Honey","Wrap","Unwrap","Mint"].includes(n);if(!i&&l)return null;let{tokenIn:u,tokenOut:m,amount:p,slippage:c,referrer:d,rewardVault:f}=o,y=_viem.parseUnits.call(void 0, p,u.decimals).toString();if(!(e.name==="Wrap"||e.name==="RedeemBgt"||e.name==="Honey"||!a||a.includes(n.toLowerCase().replaceAll(" ","")))||e.name==="Honey"&&_optionalChain([o, 'access', _24 => _24.honeyNativeState, 'optionalAccess', _25 => _25.protocol, 'access', _26 => _26.isPaused]))return null;let h=e.name==="Mint"||e.name==="Enso (Mint)";return l&&r===void 0?null:[cr,n,u,m,y,c,e.needsAccountForQuote?t:void 0,l?r:0,d,f,h?o.underlyingToken:void 0,e.name==="Honey"?_optionalChain([o, 'access', _27 => _27.honeyNativeState, 'optionalAccess', _28 => _28.collateralList]):void 0]}function ga({aggregator:e,publicClient:t,proxyAggregatorsThroughVercel:o}){return async([,,r,s,a,i,n,l,u,m,p,c])=>e.getQuote({tokenIn:r,tokenOut:s,amount:a,slippage:i,account:n,aggregatorsFeeBps:l,publicClient:t,proxyAggregatorsThroughVercel:o,referrer:u,rewardVault:m,underlyingToken:p,honeyNativeState:{collateralList:_nullishCoalesce(c, () => ([]))}})}function Q({feeBps:e,publicClient:t,account:o,proxyAggregatorsThroughVercel:r,activeAggregators:s,isMAEnabled:a,...i},n){return _swr2.default.call(void 0, fa({aggregator:i.aggregator,account:o,args:i,feeBps:e,options:n,activeAggregators:s,isMAEnabled:a}),ga({aggregator:i.aggregator,proxyAggregatorsThroughVercel:r,publicClient:t}),_optionalChain([n, 'optionalAccess', _29 => _29.opts]))}function ft(e){return{refreshInterval:1e4,errorRetryCount:3,..._optionalChain([e, 'optionalAccess', _30 => _30.opts]),onErrorRetry(t,o,r,s,a){if(_optionalChain([e, 'optionalAccess', _31 => _31.opts, 'optionalAccess', _32 => _32.onErrorRetry, 'optionalCall', _33 => _33(t,o,r,s,a)]),!(t instanceof _chunkNMH7LHPWcjs.f&&t.reason===_chunk7ITWLMO7cjs.e.PATH_NOT_FOUND_REASON)){if(t instanceof _chunkNMH7LHPWcjs.g&&t.statusCode===403){console.warn(o[1],"returned error 403, stopping retries");return}a.retryCount>(_nullishCoalesce(r.errorRetryCount, () => (3)))||setTimeout(()=>{s()},_nullishCoalesce(r.errorRetryInterval, () => (_chunkNVHV2LDKcjs.m.call(void 0, 10))))}}}}function ya(e,t){let{address:o}=_hooks.useBeraWallet.call(void 0, ),r=_chunk2EN6PPAWcjs.c.call(void 0, "proxyAggregatorsThroughVercel"),s=_chunk2EN6PPAWcjs.c.call(void 0, "aggregators"),a=_hooks.usePublicClient.call(void 0, ),{data:i}=ke();if(e.aggregator.name!=="Wrap"&&!((_chunk74WA35RIcjs.e.call(void 0, e.tokenIn.address,"BERA")||_chunk74WA35RIcjs.e.call(void 0, e.tokenIn.address,"WBERA"))&&(_chunk74WA35RIcjs.e.call(void 0, e.tokenOut.address,"BERA")||_chunk74WA35RIcjs.e.call(void 0, e.tokenOut.address,"WBERA"))))return null;let{config:n}=_chunk74WA35RIcjs.a.call(void 0, e),l=n.bex.aggregatorsRouter!==_viem.zeroAddress;return Q({...e,aggregator:e.aggregator,feeBps:i,activeAggregators:s,account:o,isMAEnabled:l,publicClient:a,proxyAggregatorsThroughVercel:r},{...t,opts:ft(t)})}var ka=[ut,tt,it,mt,rt,Ze,$e,at,Xe];function jf(e,t){let{address:o}=_hooks.useBeraWallet.call(void 0, ),r=_chunk2EN6PPAWcjs.c.call(void 0, "proxyAggregatorsThroughVercel"),s=_chunk2EN6PPAWcjs.c.call(void 0, "aggregators"),a=_hooks.usePublicClient.call(void 0, ),{data:i}=ke(),n=(_chunk74WA35RIcjs.e.call(void 0, e.tokenIn.address,"BERA")||_chunk74WA35RIcjs.e.call(void 0, e.tokenIn.address,"WBERA"))&&(_chunk74WA35RIcjs.e.call(void 0, e.tokenOut.address,"BERA")||_chunk74WA35RIcjs.e.call(void 0, e.tokenOut.address,"WBERA")),l=_chunk74WA35RIcjs.e.call(void 0, e.tokenIn.address,"BGT",{chainId:_internal.defaultChainId}),{data:u}=dr({token:e.tokenOut}),m=n||l,{config:p}=_chunk74WA35RIcjs.a.call(void 0, e),c=p.bex.aggregatorsRouter!==_viem.zeroAddress,d=ft(t),f={activeAggregators:s,isMAEnabled:c,underlyingToken:u,isNativeSwap:m,account:o,publicClient:a,proxyAggregatorsThroughVercel:r,feeBps:i},y=Q({...f,...e,aggregator:ut},{opts:d}),A=Q({...f,...e,aggregator:tt},{opts:d}),h=Q({...f,...e,aggregator:Xe},{opts:d}),R=Q({...f,...e,aggregator:it},{opts:d}),b=Q({...f,...e,aggregator:mt},{opts:d}),P=Q({...f,...e,aggregator:rt},{opts:d}),w=Q({...f,...e,aggregator:Ze},{opts:d}),{protocol:I}=_chunk2EN6PPAWcjs.e.call(void 0, ),T=Q({...f,...e,aggregator:$e},{opts:{...d,isEnabled:I.isPaused===!1}}),S=Q({...f,...e,aggregator:ct}),O=Q({...f,...e,aggregator:tr},{opts:d}),H=Q({...f,...e,aggregator:at},{opts:d}),v=n?[S]:l?[O]:[y,h,A,R,b,P,w,H,I.isPaused===!1?T:null].filter(M=>M!==null);return{..._react.useMemo.call(void 0, ()=>{let M=v.reduce((D,q)=>D||q.error,void 0),$=v.map((D,q)=>D.isLoading?m?ct.name:ka[q].name:null).filter(Boolean),F=v.filter(D=>D!==void 0&&!D.isLoading&&!D.error&&_optionalChain([D, 'access', _34 => _34.data, 'optionalAccess', _35 => _35.amountOut])).map(({data:D})=>D),G=F.length===0&&$.length>0;return{quotes:F,loadingAggregatorsNames:$,isLoading:G,error:M}},[v]),refresh:()=>v.map(M=>M.mutate())}}var Ca=({query:e}={})=>["useAllUserPools",e],fr= exports.useAllUserPools =(e,t)=>{let o=_swr2.default.call(void 0, Ca({query:e}),async([r,s])=>_chunk7ITWLMO7cjs.g.call(void 0, {...s,fetchPolicy:"no-cache"}),{refreshInterval:18e4,..._optionalChain([t, 'optionalAccess', _36 => _36.opts])});return{...o,refresh:()=>{o.mutate()}}};var Ta=({poolId:e,account:t})=>e?["usePool-api",e,t]:null;function gr({poolId:e,account:t}){let o=_swr2.default.call(void 0, Ta({poolId:e,account:t}),async([,r,s])=>{if(s&&!_viem.isAddress.call(void 0, s))throw new (0, _chunkNMH7LHPWcjs.h)({property:"account",value:s,expected:"Address"});return _chunk7ITWLMO7cjs.h.call(void 0, {poolId:r,account:s})},{refreshInterval:1e5});return{...o,refresh:()=>{o.mutate()}}}var _poolCreationHelper = require('@berachain/abis/bex/poolCreationHelper');var _subgraph = require('@berachain/graphql/dex/subgraph');var gt=e=>[...e].sort((t,o)=>t.address.toLowerCase().localeCompare(o.address.toLowerCase())),Ar=e=>e.length===0?"":gt(e).map(t=>t.symbol).join(" | "),br=(e,t,o)=>{let r;switch(o){case _berancersdk.PoolType.ComposableStable:r="STABLE";break;default:r=o.toString().toUpperCase();break}return o===_berancersdk.PoolType.Weighted?t.length===0?"":`${gt(e).map((s,a)=>{let i=t[a];return`${(Number.parseFloat(_viem.formatUnits.call(void 0, i,18))*100).toFixed(0)}${s.symbol}`}).join("-")}-${r}`:`${gt(e).map(s=>s.symbol).join("-")}-${r}`};var Da=.005,La= exports.OracleMode =(o=>(o.None="None",o.Custom="Custom",o))(La||{}),Ua=({poolCreationHelper:e,poolCreateTokens:t,initialLiquidityTokens:o,swapFeePercentage:r,salt:s,poolName:a,poolSymbol:i,owner:n,amplification:l,oracles:u,message:m,actionType:p,gasLimit:c=_chunkNVHV2LDKcjs.j})=>{let d=t.map(w=>w.address.toLowerCase()).sort((w,I)=>w<I?-1:1),f=d.map(w=>{let I=o.find(v=>v.address.toLowerCase()===w||_chunk74WA35RIcjs.e.call(void 0, w,"WBERA")&&_chunk74WA35RIcjs.e.call(void 0, v.address,"BERA")),T=I?_viem.parseUnits.call(void 0, I.amount,I.decimals):0n,S=u.find(v=>v.tokenAddress.toLowerCase()===w.toLowerCase()),O=S?S.address:_viem.zeroAddress,H=BigInt(S?S.cacheDuration:100);return{amountIn:T,rateProvider:O,cacheDuration:H}}),y=f.map(w=>w.amountIn),A=f.map(w=>w.rateProvider),h=f.map(w=>w.cacheDuration),R=o.findIndex(w=>_chunk74WA35RIcjs.e.call(void 0, w.address,"BERA")),b=R!==-1?_viem.parseUnits.call(void 0, o[R].amount,o[R].decimals):0n,P=b>0n;return{address:e,abi:_poolCreationHelper.poolCreationHelperAbi,functionName:"createAndJoinStablePool",params:[a,i,d,BigInt(l),A,h,!1,r,y,n,s,P],message:m,actionType:p,value:b,gasLimit:c,track:{eventName:"hub_pool_create",eventData:{poolName:a,poolSymbol:i}}}},Ha=({poolCreationHelper:e,poolCreateTokens:t,initialLiquidityTokens:o,normalizedWeights:r,swapFeePercentage:s,salt:a,poolName:i,poolSymbol:n,owner:l,message:u,actionType:m,gasLimit:p=_chunkNVHV2LDKcjs.j})=>{let c=[],d=[],f=[],y=[];t.map((R,b)=>({createToken:R.address,joinToken:o[b].address,weight:r[b],amountIn:_viem.parseUnits.call(void 0, o[b].amount,o[b].decimals)})).sort((R,b)=>R.createToken.toLowerCase()<b.createToken.toLowerCase()?-1:1).forEach(R=>{c.push(R.createToken),d.push(R.joinToken),f.push(R.weight),y.push(R.amountIn)});let A=d.indexOf(_viem.zeroAddress),h=A!==-1?y[A]:0n;return{address:e,abi:_poolCreationHelper.poolCreationHelperAbi,functionName:"createAndJoinWeightedPool",params:[i,n,c,d,f,Array(c.length).fill(_viem.zeroAddress),s,y,l,a],message:u,actionType:m,value:h,gasLimit:p,track:{eventName:"hub_pool_create",eventData:{poolName:i,poolSymbol:n}}}},wg= exports.useCreatePool =({poolCreateTokens:e,initialLiquidityTokens:t,normalizedWeights:o,poolType:r,poolName:s,poolSymbol:a,swapFee:i,owner:n,amplification:l,oracles:u,weightsDuplicationThreshold:m=Da,...p})=>{let{data:c,error:d,isLoading:f}=_immutable2.default.call(void 0, ["useCreatePool__deduped_pool",e,r,o],async()=>{if(e.length===0||!r)return null;let R=_chunk7ITWLMO7cjs.c.call(void 0, "bex.subgraph",{});try{let b=_chunk57RINXU6cjs.b.call(void 0, e).map(I=>I.address.toLowerCase()).sort((I,T)=>I.toLowerCase()<T.toLowerCase()?-1:1);returnawait _asyncNullishCoalesce(await _asyncOptionalChain([(await R.query({query:_subgraph.GetDedupedSubgraphPools,variables:{tokens:b,type:r}})), 'access', async _37 => _37.data, 'access', async _38 => _38.pools, 'access', async _39 => _39.filter, 'call', async _40 => _40(I=>_optionalChain([I, 'access', _41 => _41.tokens, 'optionalAccess', _42 => _42.every, 'call', _43 => _43(T=>r===_berancersdk.PoolType.Weighted?b.includes(T.address)&&Math.abs(Number(T.weight)-Number(_viem.formatUnits.call(void 0, o[b.indexOf(T.address)],18)))<m:b.includes(T.address)||T.address===I.address)])), 'optionalAccess', async _44 => _44.at, 'call', async _45 => _45(0)]), async () => (null))}catch (e2){return null}}),{generatedPoolName:y,generatedPoolSymbol:A}=_react.useMemo.call(void 0, ()=>{if(!e)return{generatedPoolName:"",generatedPoolSymbol:""};let R=Ar(e),b=br(e,o,r);return{generatedPoolName:R,generatedPoolSymbol:b}},[e,o,r]),h=_react.useMemo.call(void 0, ()=>{if(!n||s===""||a===""||e.length!==t.length||e.length===0)return null;let R=_viem.parseUnits.call(void 0, i.toString(),16),b=_viem.keccak256.call(void 0, Buffer.from(`${s}-${n}`)),{config:P}=_chunk74WA35RIcjs.a.call(void 0, p);return r===_berancersdk.PoolType.Weighted?Ha({poolCreationHelper:P.bex.poolCreationHelper,poolCreateTokens:e,initialLiquidityTokens:t,normalizedWeights:o,swapFeePercentage:R,salt:b,poolName:s,poolSymbol:a,owner:n,message:`Create pool ${s}`,actionType:"Create Pool"}):r===_berancersdk.PoolType.ComposableStable||r===_berancersdk.PoolType.MetaStable?Ua({poolCreationHelper:P.bex.poolCreationHelper,poolCreateTokens:e,initialLiquidityTokens:t,swapFeePercentage:R,salt:b,poolName:s,poolSymbol:a,owner:n,amplification:l,oracles:u,message:`Create pool ${s}`,actionType:"Create Pool"}):null},[e,t,o,r,i,s,a,n,l,u]);return{generatedPoolName:y,generatedPoolSymbol:A,isDupePool:!!c,dupePool:c,createPoolArgs:h,isLoadingPools:f,errorLoadingPools:d}};var _a=1e-4;async function wr({token:e,publicClient:t,...o}){let r=_chunk7ITWLMO7cjs.c.call(void 0, "bex.subgraph",o),s=await t.readContract({address:e.address,abi:_viem.erc20Abi,functionName:"totalSupply"}),a=_chunkNVHV2LDKcjs.a.call(void 0, _viem.formatUnits.call(void 0, s,e.decimals)).multipliedBy(_a),{data:i}=await r.query({query:_subgraph.GetExploitedTokens,variables:{token:e.address,balance:a.toFixed()}});return i.userInternalBalances.length>0}var Ya=e=>{let t=_optionalChain([e, 'optionalAccess', _46 => _46.filter, 'call', _47 => _47(o=>o.address)]);return!t||t.length===0?null:["useExploitedTokens",t]},Og= exports.useExploitedTokens =({tokens:e})=>{let t=Ya(e),o=_hooks.usePublicClient.call(void 0, ),r=_swr2.default.call(void 0, o?t:null,async([,s])=>(_chunk2YBHAMDVcjs.c.call(void 0, o),(await Promise.all(s.map(i=>wr({token:i,publicClient:o})))).reduce((i,n,l)=>(n!==void 0&&(i[s[l].address]=n),i),{})));return{...r,refresh:()=>r.mutate()}};var Ga=()=>{let e=_swr2.default.call(void 0, "useGlobalLiquidityAndSwapVolume",async()=>_chunk7ITWLMO7cjs.i.call(void 0, ));return{...e,data:{totalLiquidity:Number(_optionalChain([e, 'access', _48 => _48.data, 'optionalAccess', _49 => _49.protocolMetricsAggregated, 'access', _50 => _50.totalLiquidity])),swapVolume24h:Number(_optionalChain([e, 'access', _51 => _51.data, 'optionalAccess', _52 => _52.protocolMetricsAggregated, 'access', _53 => _53.swapVolume24h]))},refresh:()=>e.mutate()}};var $a=.05,_g= exports.useLiquidityMismatch =({currentStep:e,tokenPrices:t,isLoadingTokenPrices:o,tokens:r,weights:s,weightsError:a,poolType:i,liquidityMismatchTolerancePercent:n=$a,oracles:l})=>{let[u,m]=_react.useState.call(void 0, {title:null,message:null});return _react.useEffect.call(void 0, ()=>{if(!t||o||!r||!s||a||r.some(b=>!b.address)||l.some(b=>b.mode==="Custom")){m({title:null,message:null});return}let p=0,c=[],d=r.length,y=_chunk57RINXU6cjs.b.call(void 0, r).map(b=>{let P=_nullishCoalesce(_optionalChain([t, 'access', _54 => _54[b.address.toLowerCase()], 'optionalAccess', _55 => _55.price]), () => (0));if(!P||P===0)return c.push(0),null;let w=P*Number.parseFloat(b.amount);return c.push(w),p+=w,P});if(y.some(b=>b===null)||y.length!==d){m({title:"Missing token price data",message:`One or more token(s) do not have valid market price data. Please verify that token market prices align with the pool
2
- weightings and your initial liquidity amounts.`});return}if(e==="Select Tokens"&&i===_berancersdk.PoolType.ComposableStable){let b=y.map(w=>w/y[0]);Math.max(...b)-Math.min(...b)>n?m({title:"Selected tokens have a significant price deviation",message:"Did you mean to create a Weighted pool instead?",suggestWeighted:!0}):m({title:null,message:null});return}if(p===0||c.some(b=>b===0)){m({title:null,message:null});return}let A=0;if(i===_berancersdk.PoolType.ComposableStable){let b=p/d;c.forEach(P=>{A+=Math.abs(b-P)})}else i===_berancersdk.PoolType.Weighted&&c.forEach((b,P)=>{let w=Number(s[P])/1e18,I=p*w;A+=Math.abs(I-b)});let h=A>=p*.9;A=Math.min(A,p);let R=A/p;R>n?m({title:h?"You could lose all of your initial liquidity":`You could lose $${A.toFixed(2)} (~${(R*100).toFixed(2)}%)`,message:`Based on the market token prices, the value of tokens does not align with the specified pool weights.
3
- This discrepancy could expose you to potential losses from arbitrageurs. ${i===_berancersdk.PoolType.ComposableStable?"Did you mean to create a Weighted pool instead?":""}`,suggestWeighted:i===_berancersdk.PoolType.ComposableStable}):m({title:null,message:null})},[e,t,o,r,s,a,i,n,l]),u};var _rewardVault = require('@berachain/abis/pol/rewards/rewardVault');var _rewardVaultFactory = require('@berachain/abis/pol/rewards/rewardVaultFactory');var At=({tokenAddress:e},{isEnabled:t=!0}={})=>{let o=_hooks.usePublicClient.call(void 0, ),r=o&&e&&_viem.isAddress.call(void 0, e)&&t?["useRewardVaultFromToken",e]:null,s=_immutable2.default.call(void 0, r,async([,a])=>{if(!a)throw new Error("useRewardVaultFromToken needs a valid token address");_chunk2YBHAMDVcjs.c.call(void 0, o);let{config:i}=_chunk74WA35RIcjs.a.call(void 0, {chainId:o.chain.id}),n=await o.readContract({address:i.pol.factory,abi:_rewardVaultFactory.rewardVaultFactoryAbi,functionName:"getVault",args:[a]});return n===_viem.zeroAddress?void 0:n});return{...s,refresh:()=>s.mutate()}};var Pr=({stakingToken:e,rewardVaultAddress:t},o)=>{let{address:r}=_hooks.useBeraWallet.call(void 0, ),s=_hooks.usePublicClient.call(void 0, ),a=_nullishCoalesce(_optionalChain([o, 'optionalAccess', _56 => _56.opts, 'optionalAccess', _57 => _57.isEnabled]), () => (!0)),{data:i=t,error:n,mutate:l,isLoading:u}=At({tokenAddress:e},{isEnabled:!t&&a}),m=_swr2.default.call(void 0, i&&r&&s&&_viem.isAddress.call(void 0, i)&&_viem.isAddress.call(void 0, r)&&a?["useVaultBalanceFromStakingToken",i,r]:null,async([,p,c])=>{if(_chunk2YBHAMDVcjs.c.call(void 0, s),p===_viem.zeroAddress)return{address:p,balance:0n};let d=await s.readContract({address:p,abi:_rewardVault.rewardVaultAbi,functionName:"balanceOf",args:[c]});return{address:p,balance:d}});return{...m,refresh:()=>{l(),m.mutate()},isLoading:m.isLoading||u}};function Cr(e,t){let o=_hooks.usePublicClient.call(void 0, {chainId:e.chainId}),r=_optionalChain([e, 'optionalAccess', _58 => _58.address])&&o&&_viem.isAddress.call(void 0, e.address)?["useTokenInformation",e.address,e.chainId]:null,s=_immutable2.default.call(void 0, r,async([a,i,n=_internal.defaultChainId])=>_chunk74WA35RIcjs.e.call(void 0, i,"BERA")?{address:_viem.zeroAddress,decimals:_chunk74WA35RIcjs.b.decimals,name:_chunk74WA35RIcjs.b.name,symbol:_chunk74WA35RIcjs.b.symbol,chainId:n}:(_chunk2YBHAMDVcjs.c.call(void 0, o),await _chunk7ITWLMO7cjs.y.call(void 0, {address:i,publicClient:o,chainId:n})),{..._optionalChain([t, 'optionalAccess', _59 => _59.opts])});return{...s,refresh:()=>_optionalChain([s, 'optionalAccess', _60 => _60.mutate, 'optionalCall', _61 => _61()])}}function Ie({address:e,owner:t,chainId:o=_internal.defaultChainId},r){let s=e;_chunk74WA35RIcjs.e.call(void 0, s,"ETH")&&(s=_viem.zeroAddress);let a=_hooks.usePublicClient.call(void 0, {chainId:o}),{address:i}=_hooks.useBeraWallet.call(void 0, ),n=_nullishCoalesce(t, () => (i)),l=(_nullishCoalesce(_optionalChain([r, 'optionalAccess', _62 => _62.opts, 'optionalAccess', _63 => _63.isEnabled]), () => (!0)))&&a&&n&&_viem.isAddress.call(void 0, n)&&s&&_viem.isAddress.call(void 0, s)?["usePollBalance",n,s,o]:null,{data:u,isLoading:m}=Cr({address:s,chainId:o}),p=_chunk74WA35RIcjs.e.call(void 0, s,"BERA"),{isLoading:c,data:d,error:f,...y}=_swr2.default.call(void 0, l,async([,R,b])=>(_chunk2YBHAMDVcjs.c.call(void 0, a),_chunk74WA35RIcjs.e.call(void 0, b,"BERA")?await a.getBalance({address:R}):await a.readContract({address:b,abi:_viem.erc20Abi,functionName:"balanceOf",args:[R]})),{refreshInterval:1e4}),A=!f&&d?_chunk74WA35RIcjs.e.call(void 0, s,"BERA")?_viem.formatEther.call(void 0, d):u&&!m?_viem.formatUnits.call(void 0, d,u.decimals):void 0:void 0,h={chainId:o,balance:d?{raw:d.toString(),formatted:_nullishCoalesce(A, () => ("0"))}:{raw:"0",formatted:"0"},address:s,decimals:p?_chunk74WA35RIcjs.b.decimals:_nullishCoalesce(_optionalChain([u, 'optionalAccess', _64 => _64.decimals]), () => (0)),symbol:p?_chunk74WA35RIcjs.b.symbol:_nullishCoalesce(_optionalChain([u, 'optionalAccess', _65 => _65.symbol]), () => ("")),name:p?_chunk74WA35RIcjs.b.name:_nullishCoalesce(_optionalChain([u, 'optionalAccess', _66 => _66.name]), () => (""))};return{...y,refresh:()=>{y.mutate()},isLoading:c||p?m:!1,error:f||!p?f:void 0,data:h}}var ky=({pool:e,vaultAddress:t},o)=>{let{data:r,...s}=Ie({address:_optionalChain([e, 'optionalAccess', _67 => _67.address])}),{data:a,refresh:i}=Pr({stakingToken:_optionalChain([e, 'optionalAccess', _68 => _68.address]),rewardVaultAddress:_nullishCoalesce(t, () => (_optionalChain([e, 'optionalAccess', _69 => _69.rewardVault, 'optionalAccess', _70 => _70.vaultAddress])))},o),n=e?Number.parseFloat(_nullishCoalesce(_optionalChain([e, 'optionalAccess', _71 => _71.dynamicData, 'optionalAccess', _72 => _72.totalShares]), () => ("0"))):0,l=_optionalChain([e, 'optionalAccess', _73 => _73.dynamicData, 'optionalAccess', _74 => _74.totalLiquidity])?Number(_nullishCoalesce(_optionalChain([e, 'optionalAccess', _75 => _75.dynamicData, 'optionalAccess', _76 => _76.totalLiquidity]), () => (0))):null,u=n&&l?l/Number(n):0,m=_optionalChain([e, 'optionalAccess', _77 => _77.tokens, 'optionalAccess', _78 => _78.map, 'call', _79 => _79(p=>({address:p.address,ratio:n?Number(p.balance)/Number(n):0}))]);return{data:{lpTokenPrice:u,lpBalance:r?{...r,usdValue:r?Number(r.balance.formatted)*u:void 0}:void 0,tokenBalances:_optionalChain([e, 'optionalAccess', _80 => _80.tokens, 'optionalAccess', _81 => _81.map, 'call', _82 => _82(p=>{let c=_nullishCoalesce(_optionalChain([m, 'optionalAccess', _83 => _83.find, 'call', _84 => _84(y=>_viem.isAddressEqual.call(void 0, y.address,p.address)), 'optionalAccess', _85 => _85.ratio]), () => (0)),d=c?_chunkNVHV2LDKcjs.a.call(void 0, _nullishCoalesce(_optionalChain([r, 'optionalAccess', _86 => _86.balance, 'access', _87 => _87.formatted]), () => ("0"))).times(c):_chunkNVHV2LDKcjs.a.call(void 0, 0),f=Number(p.balanceUSD)/Number(p.balance);return{...p,balance:{raw:_optionalChain([d, 'optionalAccess', _88 => _88.isGreaterThan, 'call', _89 => _89(0)])?d.times(10**p.decimals).toFixed(0).toString():"0",formatted:d.toString()},price:f,usdValue:Number.isNaN(f)||!d?void 0:Number.parseFloat(d.toString())*f}})]),stakedBalance:_optionalChain([a, 'optionalAccess', _90 => _90.address])?{...a,balance:{raw:a.balance.toString(),formatted:_viem.formatEther.call(void 0, a.balance)},usdValue:Number(_viem.formatEther.call(void 0, a.balance))*u}:void 0},...s,refresh:()=>{_optionalChain([s, 'access', _91 => _91.refresh, 'optionalCall', _92 => _92()]),i()}}};function Tr(e,t){let o=_hooks.useConfig.call(void 0, ),{address:r}=_hooks.useBeraWallet.call(void 0, ),s=o&&r&&_optionalChain([e, 'optionalAccess', _93 => _93.items])?["usePollAllowances",r,_optionalChain([e, 'optionalAccess', _94 => _94.items])]:null,a=_swr2.default.call(void 0, s,async([,i,n])=>_chunk7ITWLMO7cjs.ka.call(void 0, {items:n,account:i,config:o}),{..._optionalChain([t, 'optionalAccess', _95 => _95.opts]),refreshInterval:_nullishCoalesce(_optionalChain([t, 'optionalAccess', _96 => _96.opts, 'optionalAccess', _97 => _97.refreshInterval]), () => (1e5))});return{...a,refresh:()=>_optionalChain([a, 'optionalAccess', _98 => _98.mutate, 'optionalCall', _99 => _99()])}}function In({amount:e,decimals:t,slippage:o}){let r=_viem.parseUnits.call(void 0, (_nullishCoalesce(o, () => (0))).toString(),t);return e+e*r/BigInt(100*10**t)}function En(e,t){let{slippage:o}=_nullishCoalesce(t, () => ({})),r=_react.useMemo.call(void 0, ()=>e.filter(l=>l.token.address!==_viem.zeroAddress).filter(l=>_chunkNVHV2LDKcjs.a.call(void 0, l.amount.formatted).gt(0)),[e]),{data:s,refresh:a,isLoading:i}=Tr({items:r});return{needsApproval:_react.useMemo.call(void 0, ()=>_nullishCoalesce(_optionalChain([s, 'optionalAccess', _100 => _100.map, 'call', _101 => _101(l=>{let u=r.find(p=>_chunk74WA35RIcjs.e.call(void 0, p.token.address,l.token));if(!u)throw new (0, _chunkNMH7LHPWcjs.f)({message:"Token not found when matching allowance in useMultipleTokenApprovalsWithSlippage",cause:{allowance:l,items:r}});let m=In({decimals:u.token.decimals,amount:BigInt(u.amount.raw),slippage:o});if(_chunkNVHV2LDKcjs.a.call(void 0, l.allowance.raw).lt(m))return{...u,needsApproval:!0,maxAmountIn:m,allowance:{raw:l.allowance.raw,formatted:l.allowance.formatted}}}), 'access', _102 => _102.filter, 'call', _103 => _103(l=>l!==void 0)]), () => ([])),[s,o,r]),refresh:a,isLoading:i}}function xr(e,t){let o=_hooks.usePublicClient.call(void 0, ),r=o&&e.addresses?["useMultipleTokenInformation",e.addresses,_nullishCoalesce(e.chainId, () => (_internal.defaultChainId))]:null,s=_immutable2.default.call(void 0, r,async([,a,i])=>(_chunk2YBHAMDVcjs.c.call(void 0, o),Promise.all(a.map(async n=>{if(!n||!_viem.isAddress.call(void 0, n,{strict:!1}))throw new Error("Invalid address");let l=await _chunk7ITWLMO7cjs.y.call(void 0, {address:n,publicClient:o,chainId:i});if(!l)throw new Error(`Token ${n} not found`);return l}))),{..._optionalChain([t, 'optionalAccess', _104 => _104.opts])});return{...s,refresh:()=>_optionalChain([s, 'optionalAccess', _105 => _105.mutate, 'optionalCall', _106 => _106()])}}function oe(){let e=_react.useContext.call(void 0, _chunk2EN6PPAWcjs.n);if(!e)throw new (0, _chunkNMH7LHPWcjs.f)({message:"useTokens must be used within a TokensProvider",level:"fatal"});return{...e,data:{tokenList:e.tokenList,customTokenList:e.userTokens,featuredTokenList:e.featuredTokens}}}function se({addressIn:e}={},t={opts:{refreshInterval:1e5,revalidateOnFocus:!0}}){let{tokenList:o,ensoTokens:r}=oe(),s=_react.useMemo.call(void 0, ()=>{let p=[];return e&&p.push(...e.filter(c=>_viem.isAddress.call(void 0, c))),p.map(c=>c.toLowerCase())},[o]),i=_react.useMemo.call(void 0, ()=>{let p=new Set(_optionalChain([o, 'optionalAccess', _107 => _107.map, 'call', _108 => _108(c=>c.address.toLowerCase())]));return o.some(c=>_chunk74WA35RIcjs.e.call(void 0, c,"WBERA"))&&p.add(_viem.zeroAddress),_optionalChain([s, 'optionalAccess', _109 => _109.some, 'call', _110 => _110(c=>!p.has(c))])},[s,o])?s:o.map(p=>p.address),n=i&&(_nullishCoalesce(_optionalChain([t, 'access', _111 => _111.opts, 'optionalAccess', _112 => _112.isEnabled]), () => (!0)))?["useTokenCurrentPrices",i.map(p=>p.toLowerCase())]:null,l=_swr2.default.call(void 0, n,async([,p])=>_chunk7ITWLMO7cjs.ja.call(void 0, {addressIn:p}),t.opts),u=_react.useMemo.call(void 0, ()=>{if(!r)return{};let p=new Map([[_internal.defaultChainId,new Map]]);for(let c of r)c.price===void 0||c.chainId!==_internal.defaultChainId||_optionalChain([p, 'access', _113 => _113.get, 'call', _114 => _114(_internal.defaultChainId), 'optionalAccess', _115 => _115.set, 'call', _116 => _116(c.address.toLowerCase(),{...c,price:c.price,chainId:_internal.defaultChainId})]);return Object.fromEntries(i.map(c=>{let d=_optionalChain([p, 'access', _117 => _117.get, 'call', _118 => _118(_internal.defaultChainId), 'optionalAccess', _119 => _119.get, 'call', _120 => _120(c), 'optionalAccess', _121 => _121.price]);return d?[c.toLowerCase(),{price:d,chainId:_internal.defaultChainId,updatedAt:Date.now()}]:[null,null]}))},[r]),m=_react.useMemo.call(void 0, ()=>({...u,...l.data}),[u,l.data]);return{...l,data:m}}function _n(e){let t="poolId"in e?_optionalChain([e, 'access', _122 => _122.poolId, 'optionalAccess', _123 => _123.slice, 'call', _124 => _124(0,42)]):e.address;return _viem.isAddress.call(void 0, t)&&t?["useOnChainPoolData",t]:null}function Br(e){let t=_hooks.usePublicClient.call(void 0, ),o=_optionalChain([e, 'optionalAccess', _125 => _125.slice, 'call', _126 => _126(0,42)]),r=_n({poolId:e}),{data:s,error:a,isLoading:i,mutate:n}=_immutable2.default.call(void 0, t?r:null,async([,d])=>_chunk7ITWLMO7cjs.k.call(void 0, {poolId:d,publicClient:t})),{data:l,isLoading:u}=xr({addresses:_optionalChain([s, 'optionalAccess', _127 => _127.poolTokens, 'access', _128 => _128[0]])}),{data:m,isLoading:p}=se({addressIn:_optionalChain([s, 'optionalAccess', _129 => _129.poolTokens, 'access', _130 => _130[0]])});return{data:_react.useMemo.call(void 0, ()=>{if(!s||!l)return;let d={address:o.toLowerCase(),id:e.toLowerCase(),type:s.type,factory:s.factory,totalShares:s.totalSupply,totalLiquidity:"0",swapFee:s.swapFee,createTime:0,name:s.name,tokens:l.map((y,A)=>({address:y.address.toLowerCase(),name:y.name,decimals:y.decimals,symbol:y.symbol,index:A,weight:_nullishCoalesce(_optionalChain([s, 'access', _131 => _131.weights, 'optionalAccess', _132 => _132[A]]), () => (void 0)),balance:_viem.formatUnits.call(void 0, BigInt(s.poolTokens[1][A]),y.decimals),token:{__typename:"Token",token:y,latestUSDPrice:_optionalChain([m, 'optionalAccess', _133 => _133[y.address]])}})),amplificationParameter:_optionalChain([s, 'optionalAccess', _134 => _134.amplificationParameter])&&{currentFormattedValue:Number(s.amplificationParameter[0])/Number(s.amplificationParameter[2])}},f=_optionalChain([d, 'access', _135 => _135.tokens, 'optionalAccess', _136 => _136.reduce, 'call', _137 => _137((y,A)=>{let h=Number(_nullishCoalesce(_optionalChain([m, 'optionalAccess', _138 => _138[A.address.toLowerCase()], 'optionalAccess', _139 => _139.price]), () => (0)));return h?y+h*Number(A.balance):y},0)]);return d.totalLiquidity=_nullishCoalesce(_optionalChain([f, 'optionalAccess', _140 => _140.toString, 'call', _141 => _141()]), () => ("")),d},[s,l,m,o,e]),error:a,isLoading:i||u||p,mutate:n,refresh:()=>n()}}var Gn=e=>{let{address:t}=_hooks.useBeraWallet.call(void 0, ),o=_hooks.usePublicClient.call(void 0, ),r=t&&o?["usePollPoolCreationRelayerApproval",t,o.chain.id]:null,s=_swr2.default.call(void 0, r,async([,i])=>{_chunk2YBHAMDVcjs.c.call(void 0, o);let{config:n}=_chunk74WA35RIcjs.a.call(void 0, {chainId:o.chain.id});return await o.readContract({address:n.bex.vault,abi:_vault.vaultAbi,functionName:"hasApprovedRelayer",args:[i,n.bex.poolCreationHelper]})},{..._optionalChain([e, 'optionalAccess', _142 => _142.opts])});return{...s,refreshPoolCreationApproval:()=>{s.mutate()}}};function yA({poolId:e}){let t=gr({poolId:e}),{data:o,isLoading:r,refresh:s,error:a}=Br(e);return{data:[void 0,t.data,o],isLoading:t.isLoading||r,isError:t.error||a,refresh:()=>{t.refresh(),s()}}}var RA=({poolId:e,typeInArray:t})=>_immutable2.default.call(void 0, e?["usePoolEvents",e,t]:null,async([,o,r])=>_chunk7ITWLMO7cjs.l.call(void 0, {poolId:o,typeInArray:r}),{refreshInterval:18e4});var IA=({poolId:e,...t},o)=>{let{config:r}=_chunk74WA35RIcjs.a.call(void 0, t),a=_swr2.default.call(void 0, e?["usePoolHistoricalData",e]:null,async([,i])=>await _chunk7ITWLMO7cjs.m.call(void 0, {poolId:i,chain:r.bex.chainName}),_optionalChain([o, 'optionalAccess', _143 => _143.opts]));return{...a,refresh:()=>void a.mutate()}};var jn=({query:e}={})=>["useAllPools",e],OA= exports.usePools =(e,t)=>{let{address:o}=_hooks.useBeraWallet.call(void 0, ),{data:r,isLoading:s,mutate:a}=fr({userAddress:o,chain:e.chain}),{data:i,isLoading:n,mutate:l}=_swr2.default.call(void 0, jn({query:e}),async([p,c])=>_chunk7ITWLMO7cjs.g.call(void 0, c),{refreshInterval:18e4,..._optionalChain([t, 'optionalAccess', _144 => _144.opts])}),u=_react.useMemo.call(void 0, ()=>{if(!i||!_optionalChain([r, 'optionalAccess', _145 => _145.pools, 'optionalAccess', _146 => _146.length]))return _nullishCoalesce(_optionalChain([i, 'optionalAccess', _147 => _147.pools]), () => ([]));let p=Object.fromEntries(r.pools.map(c=>[c.id.toLowerCase(),c]));return i.pools.map(c=>({...c,...p[c.id.toLowerCase()]||{}})).filter(Boolean)},[i,r]),m=_react.useMemo.call(void 0, ()=>({page:Math.ceil((_nullishCoalesce(_optionalChain([e, 'optionalAccess', _148 => _148.skip]), () => (0)))/(_nullishCoalesce(_optionalChain([e, 'optionalAccess', _149 => _149.first]), () => (10)))),pageSize:_optionalChain([e, 'optionalAccess', _150 => _150.first]),count:Math.ceil((_nullishCoalesce(_optionalChain([i, 'optionalAccess', _151 => _151.count]), () => (0)))/(_nullishCoalesce(_optionalChain([e, 'optionalAccess', _152 => _152.first]), () => (10))))}),[i,e.skip,e.first]);return{pools:_nullishCoalesce(u, () => ([])),walletPools:_nullishCoalesce(_optionalChain([i, 'optionalAccess', _153 => _153.pools]), () => ([])),isLoading:n||s,refresh:()=>{l(),a()},pagination:m}};function J({tokens:e}={},t={opts:{refreshInterval:1e5,revalidateOnFocus:!0}}){let{ensoTokens:o}=oe(),r=se({addressIn:_optionalChain([e, 'optionalAccess', _154 => _154.filter, 'call', _155 => _155(n=>n.chainId===_internal.defaultChainId), 'access', _156 => _156.map, 'call', _157 => _157(n=>n.address)])},t),s=_react.useMemo.call(void 0, ()=>{let n=[];if(!e)return[];let l=new Map;for(let u of e){let m=_nullishCoalesce(u.chainId, () => (_internal.defaultChainId));l.has(m)||l.set(m,new Map),_optionalChain([l, 'access', _158 => _158.get, 'call', _159 => _159(m), 'optionalAccess', _160 => _160.set, 'call', _161 => _161(u.address.toLowerCase(),u)])}if(r.data){for(let[u,m]of Object.entries(r.data))if(m&&_optionalChain([l, 'access', _162 => _162.get, 'call', _163 => _163(_nullishCoalesce(m.chainId, () => (_internal.defaultChainId))), 'optionalAccess', _164 => _164.get, 'call', _165 => _165(u.toLowerCase())])&&m.price!==void 0){let p=_optionalChain([l, 'access', _166 => _166.get, 'call', _167 => _167(_nullishCoalesce(m.chainId, () => (_internal.defaultChainId))), 'optionalAccess', _168 => _168.get, 'call', _169 => _169(u.toLowerCase())]);if(!p)continue;n.push({...p,chainId:m.chainId,price:m.price})}}if(o)for(let u of o)u.price!==void 0&&u.chainId!==void 0&&n.push({...u,chainId:u.chainId,price:u.price});return n},[r.data,o,e]),a=_react.useMemo.call(void 0, ()=>{let n={};for(let l of s){let u=_nullishCoalesce(l.chainId, () => (_internal.defaultChainId));n[u]||(n[u]={}),n[u][l.address.toLowerCase()]=l.price}return n},[s]),i=_react.useCallback.call(void 0, n=>n?_nullishCoalesce(_optionalChain([a, 'access', _170 => _170[_nullishCoalesce(n.chainId, () => (_internal.defaultChainId))], 'optionalAccess', _171 => _171[_optionalChain([n, 'access', _172 => _172.address, 'optionalAccess', _173 => _173.toLowerCase, 'call', _174 => _174()])]]), () => (void 0)):void 0,[a]);return{isLoading:r.isLoading,data:s,priceMap:a,getTokenPrice:i}}function Te({tokenIn:e,tokenOut:t,formattedAmountIn:o,formattedAmountOut:r}){let{getTokenPrice:s,isLoading:a}=J({tokens:e&&t?[e,t]:void 0});return{data:_react.useMemo.call(void 0, ()=>{if(!e||!t||!o||!r)return;let n=s(e),l=s(t);return!n||!l?null:_chunk57RINXU6cjs.c.call(void 0, n.toString(),l.toString(),o,r)},[e,t,o,r]),isLoading:a}}var _morpho = require('@berachain/abis/bend/morpho');function X(e){return e===_viem.zeroAddress?_viem.ethAddress:e}function ht(e){if(e!=null)return typeof e=="bigint"?e:BigInt(e)}var Dr=async({fromAddress:e,amountIn:t,tokenIn:o,chainId:r,ensoClient:s,bundle:a,publicClient:i})=>{let n=[];if(o!==_viem.ethAddress){let u=await s.getApprovalData({fromAddress:e,tokenAddress:o,chainId:r,amount:t}),m=!0;if(i&&(m=await i.readContract({address:o,abi:_viem.erc20Abi,functionName:"allowance",args:[e,u.spender]})<BigInt(t)),m){let p=_nullishCoalesce(ht(u.tx.value), () => (0n));n.push({to:u.tx.to,data:u.tx.data,value:p,gasLimit:BigInt(u.gas)})}}let l=_nullishCoalesce(ht(a.tx.value), () => (0n));return n.push({to:a.tx.to,data:a.tx.data,value:l,gasLimit:BigInt(a.gas)}),n},Lr=async({fromAddress:e,amountIn:t,tokenIn:o,bundle:r,publicClient:s})=>{let a=[],i=_viem.getAddress.call(void 0, r.tx.to),n=null;if(X(o.address)!==_viem.ethAddress){let m=await s.readContract({address:o.address,abi:_viem.erc20Abi,functionName:"allowance",args:[e,i]}),p=BigInt(t);if(m<p){let d=p.toString();n={token:o,amount:{raw:d,formatted:_viem.formatUnits.call(void 0, p,o.decimals)},spender:i};let f=_viem.encodeFunctionData.call(void 0, {abi:_viem.erc20Abi,functionName:"approve",args:[i,p]});a.push({to:o.address,data:f,value:0n})}}let u=_nullishCoalesce(ht(r.tx.value), () => (0n));return a.push({to:r.tx.to,data:r.tx.data,value:u,gasLimit:r.gas?BigInt(r.gas):void 0}),{transactions:a,approval:n}};function ue(e){let t=new (0, _chunkNVHV2LDKcjs.a)(e).dividedBy(100),o=new (0, _chunkNVHV2LDKcjs.a)(1).minus(t);if(o.lte(0))throw new (0, _chunkNMH7LHPWcjs.h)({property:"slippage",value:e,expected:"a value lower than 100"});return o}function wt(e,t,o){return e.multipliedBy(new (0, _chunkNVHV2LDKcjs.a)(10).pow(o.decimals)).dividedBy(new (0, _chunkNVHV2LDKcjs.a)(10).pow(t.decimals))}async function Hr({publicClient:e,ensoWalletV2Factory:t,accountAddress:o}){return e.readContract({address:t,abi:_chunkRWOICHRWcjs.a,functionName:"getAddress",args:[o]})}async function Nr({publicClient:e,primaryAddress:t,accountAddress:o,ensoWalletV2Address:r}){return e.readContract({address:t,abi:_morpho.morphoAbi,functionName:"isAuthorized",args:[o,r]})}async function Se({fromAddress:e,amountIn:t,tokenIn:o,primaryAddress:r,bundle:s,publicClient:a,ensoWalletV2Address:i,isAuthorized:n}){let{config:l}=_chunk74WA35RIcjs.a.call(void 0, {}),{walletFlashloanAdapter:u}=l.enso;_chunk2YBHAMDVcjs.b.call(void 0, u,"config.enso.walletFlashloanAdapter");let{transactions:m,approval:p}=await Lr({fromAddress:e,amountIn:t,tokenIn:o,bundle:s,publicClient:a}),c=[];return n||c.push({to:r,data:_viem.encodeFunctionData.call(void 0, {abi:_morpho.morphoAbi,functionName:"setAuthorization",args:[i,!0]}),value:0n}),c.push(...m),{transactions:c,approvals:p?[p]:[],ensoWalletFlashloanAdapter:_viem.getAddress.call(void 0, u)}}var ai=25n,Wr=10000n;function ni({repayAmount:e,collateralPriceInLoanAsset:t,collateralToken:o,loanToken:r,slippage:s,currentCollateral:a}){let i=ue(s),n=new (0, _chunkNVHV2LDKcjs.a)(t);if(n.lte(0))throw new (0, _chunkNMH7LHPWcjs.h)({property:"collateralPriceInLoanAsset",value:t,expected:"a value greater than zero"});let l=new (0, _chunkNVHV2LDKcjs.a)(10).pow(r.decimals),u=new (0, _chunkNVHV2LDKcjs.a)(10).pow(o.decimals),c=new (0, _chunkNVHV2LDKcjs.a)(e).dividedBy(l).dividedBy(n).dividedBy(i).multipliedBy(u).integerValue(_chunkNVHV2LDKcjs.a.ROUND_UP);return c.lte(0)?"0":_chunkNVHV2LDKcjs.a.minimum(c,new (0, _chunkNVHV2LDKcjs.a)(a)).toFixed(0)}function ii({repayAmount:e,collateralToWithdraw:t,collateralToken:o,loanToken:r}){return{finalCollateral:_viem.formatUnits.call(void 0, BigInt(t),o.decimals),totalBorrow:_viem.formatUnits.call(void 0, BigInt(e),r.decimals)}}async function _r({fromAddress:e,repayAmount:t,collateralToken:o,loanToken:r,marketId:s,primaryAddress:a,chainId:i,ensoClient:n,slippage:l,publicClient:u,collateralPriceInLoanAsset:m,currentCollateral:p,currentDebt:c,ensoWalletV2Address:d,isAuthorized:f}){_chunk2YBHAMDVcjs.d.call(void 0, e,"fromAddress"),_chunk2YBHAMDVcjs.e.call(void 0, t,"repayAmount"),_chunk2YBHAMDVcjs.e.call(void 0, c,"currentDebt");let y=BigInt(t),A=BigInt(c),h=y>=A,R=X(o.address),b=X(r.address),P=(y*ai+(Wr-1n))/Wr,w=h?P:0n,I=(y+w).toString(),T=ni({repayAmount:I,collateralPriceInLoanAsset:m,collateralToken:o,loanToken:r,slippage:l,currentCollateral:p}),S=BigInt(T)>=BigInt(p),O=h&&w>0n&&!S;if(BigInt(T)<=0n)throw new (0, _chunkNMH7LHPWcjs.h)({property:"collateralToWithdraw",value:T,expected:"positive amount"});let H=[{protocol:"enso",action:"route",args:{tokenIn:R,tokenOut:b,amountIn:T,slippage:l*100}},{protocol:"bend",action:"repay",args:{primaryAddress:a,positionId:s,tokenIn:b,amountIn:{useOutputOfCallAt:0},onBehalfOf:e}}],v=H.length,Y=O?[{protocol:"enso",action:"balance",args:{token:b}},{protocol:"enso",action:"route",args:{tokenIn:b,tokenOut:R,amountIn:{useOutputOfCallAt:v},slippage:l*100}},{protocol:"bend",action:"deposit",args:{primaryAddress:a,positionId:s,tokenIn:R,amountIn:{useOutputOfCallAt:v+1},onBehalfOf:e}}]:[],M=[...H,...Y,{protocol:"bend",action:"withdraw",args:{primaryAddress:a,positionId:s,tokenOut:R,amountOut:T,onBehalfOf:e}}],F=[{protocol:"bend",action:"flashloan",args:{flashloanToken:R,flashloanAmount:T,tokenOut:b,callback:M}}],G=await n.getBundleData({fromAddress:e,receiver:e,spender:e,chainId:i,routingStrategy:"ensowallet-v2"},F),{transactions:D}=await Se({fromAddress:e,amountIn:"0",tokenIn:o,primaryAddress:a,bundle:G,publicClient:u,ensoWalletV2Address:d,isAuthorized:f});return{bundle:G,transactions:D,positionEstimate:ii({repayAmount:t,collateralToWithdraw:T,collateralToken:o,loanToken:r})}}function xe({chainId:e}){let{address:t}=_hooks.useBeraWallet.call(void 0, ),o=_hooks.usePublicClient.call(void 0, {chainId:e}),{config:r}=_chunk74WA35RIcjs.a.call(void 0, {}),s=r.enso.walletV2Factory;return _swr2.default.call(void 0, t&&s?["useEnsoWalletV2Address",t,s]:null,async([i,n,l])=>(_chunk2YBHAMDVcjs.c.call(void 0, o),Hr({publicClient:o,ensoWalletV2Factory:_viem.getAddress.call(void 0, l),accountAddress:n})),{refreshInterval:18e4})}function Be({chainId:e,primaryAddress:t,ensoWalletV2Address:o}){let{address:r}=_hooks.useBeraWallet.call(void 0, ),s=_hooks.usePublicClient.call(void 0, {chainId:e});return _swr2.default.call(void 0, r&&t&&o?["useIsBendAuthorized",r,t,o]:null,async([i,n,l,u])=>(_chunk2YBHAMDVcjs.c.call(void 0, s),Nr({publicClient:s,primaryAddress:l,accountAddress:n,ensoWalletV2Address:u})),{refreshInterval:18e4})}function Sb({collateralToken:e,loanToken:t,marketId:o,primaryAddress:r,repayAmount:s,slippage:a,chainId:i,collateralPriceInLoanAsset:n,currentCollateral:l,currentDebt:u},m){let{address:p}=_hooks.useBeraWallet.call(void 0, ),{account:{chainId:c}={}}=_hooks.useBeraWagmi.call(void 0, ),d=_nullishCoalesce(_nullishCoalesce(i, () => (c)), () => (_internal.defaultChainId)),f=_hooks.usePublicClient.call(void 0, {chainId:d}),{data:y}=xe({chainId:d}),{data:A}=Be({chainId:d,primaryAddress:r,ensoWalletV2Address:y}),h=e&&t&&o&&r&&s&&y&&A!==void 0&&e.address!==t.address&&Number(s)>0&&a!==void 0&&n!==void 0&&l&&u&&Number(u)>0&&p&&(_nullishCoalesce(_optionalChain([m, 'optionalAccess', _175 => _175.opts, 'optionalAccess', _176 => _176.isEnabled]), () => (!0)))?["useBendDemultiply",p,e,t,o,r,d,s,a,n,l,u,y,A]:null;return _swr2.default.call(void 0, h,async([R,b,P,w,I,T,S,O,H,v,Y,M,$,F])=>{_chunk2YBHAMDVcjs.c.call(void 0, f);let G=_viem.parseUnits.call(void 0, O,w.decimals).toString(),D=_viem.parseUnits.call(void 0, Y,P.decimals).toString(),q=_viem.parseUnits.call(void 0, M,w.decimals).toString();return _r({fromAddress:b,repayAmount:G,collateralToken:P,loanToken:w,marketId:I,primaryAddress:T,chainId:S,ensoClient:_chunkGO5E7UUDcjs.a.call(void 0, ),slippage:H,publicClient:f,collateralPriceInLoanAsset:v,currentCollateral:D,currentDebt:q,ensoWalletV2Address:$,isAuthorized:F})},{..._optionalChain([m, 'optionalAccess', _177 => _177.opts]),refreshInterval:1e5})}function Ri({rawSupplyCollateralAmount:e,rawCurrentCollateralAmount:t,rawCurrentBorrowAmount:o,formattedCollateralPriceInLoanAsset:r,collateralToken:s,loanToken:a,leverageMultiplier:i,slippage:n}){let l=Math.max(i,1);if(l<=1)return"0";let u=ue(n),m=new (0, _chunkNVHV2LDKcjs.a)(r);if(m.lte(0))throw new (0, _chunkNMH7LHPWcjs.h)({property:"formattedCollateralPriceInLoanAsset",value:r,expected:"a value greater than zero"});let p=wt(m,s,a),c=new (0, _chunkNVHV2LDKcjs.a)(1).minus(new (0, _chunkNVHV2LDKcjs.a)(1).dividedBy(l)),d=new (0, _chunkNVHV2LDKcjs.a)(t).plus(e),f=new (0, _chunkNVHV2LDKcjs.a)(o),y=new (0, _chunkNVHV2LDKcjs.a)(1).minus(c.multipliedBy(u));if(y.lte(0))throw new (0, _chunkNMH7LHPWcjs.h)({property:"leverageMultiplier",value:i,expected:"a lower leverage target for current slippage"});let A=c.multipliedBy(d).multipliedBy(p).minus(f).dividedBy(y);if(A.lte(0))return"0";let h=A.integerValue(_chunkNVHV2LDKcjs.a.ROUND_UP);return h.lte(0)?"0":h.toFixed(0)}function wi({rawSupplyCollateralAmount:e,collateralToken:t,loanToken:o,rawBorrowAmount:r,formattedCollateralPriceInLoanAsset:s,slippage:a}){let i=new (0, _chunkNVHV2LDKcjs.a)(10).pow(t.decimals),n=new (0, _chunkNVHV2LDKcjs.a)(10).pow(o.decimals),l=new (0, _chunkNVHV2LDKcjs.a)(e),u=new (0, _chunkNVHV2LDKcjs.a)(r);if(u.lte(0))return{finalCollateral:l.dividedBy(i).toFixed(),totalBorrow:"0"};let m=ue(a),p=wt(new (0, _chunkNVHV2LDKcjs.a)(s),t,o),c=p.lte(0)?new (0, _chunkNVHV2LDKcjs.a)(0):u.multipliedBy(m).dividedBy(p),d=l.plus(c).dividedBy(i),f=u.dividedBy(n);return{finalCollateral:d.toFixed(),totalBorrow:f.toFixed()}}async function Qr({fromAddress:e,rawSupplyCollateralAmount:t,rawCurrentCollateralAmount:o,rawCurrentBorrowAmount:r,collateralToken:s,loanToken:a,marketId:i,primaryAddress:n,chainId:l,ensoClient:u,slippage:m,leverageMultiplier:p,publicClient:c,formattedCollateralPriceInLoanAsset:d,ensoWalletV2Address:f,isAuthorized:y}){_chunk2YBHAMDVcjs.d.call(void 0, e,"fromAddress");let A=X(s.address),h=X(a.address),R=Ri({rawSupplyCollateralAmount:t,rawCurrentCollateralAmount:o,rawCurrentBorrowAmount:r,formattedCollateralPriceInLoanAsset:d,collateralToken:s,loanToken:a,leverageMultiplier:p,slippage:m}),b=0,P=1,w=[{protocol:"bend",action:"deposit",args:{primaryAddress:n,positionId:i,tokenIn:A,amountIn:t,onBehalfOf:e}}],I=[{protocol:"bend",action:"flashloan",args:{flashloanToken:h,flashloanAmount:R,tokenIn:A,amountIn:t,tokenOut:h,callback:[{protocol:"enso",action:"route",args:{tokenIn:h,tokenOut:A,amountIn:R,slippage:m*100}},{protocol:"enso",action:"balance",args:{token:A}},{protocol:"bend",action:"deposit",args:{primaryAddress:n,positionId:i,tokenIn:A,amountIn:{useOutputOfCallAt:P},onBehalfOf:e}},{protocol:"bend",action:"borrow",args:{primaryAddress:n,positionId:i,collateral:A,tokenOut:h,amountOut:R,onBehalfOf:e}}]}}],T=R==="0"?w:I,S=await u.getBundleData({fromAddress:e,receiver:e,spender:e,chainId:l,routingStrategy:"ensowallet-v2"},T),{transactions:O}=await Se({fromAddress:e,amountIn:t,tokenIn:s,primaryAddress:n,bundle:S,publicClient:c,ensoWalletV2Address:f,isAuthorized:y});return{bundle:S,transactions:O,positionEstimate:wi({rawSupplyCollateralAmount:t,collateralToken:s,loanToken:a,rawBorrowAmount:R,formattedCollateralPriceInLoanAsset:d,slippage:m})}}function Gb({collateralToken:e,loanToken:t,marketId:o,primaryAddress:r,formattedSupplyCollateralAmount:s,formattedCurrentCollateralAmount:a,formattedCurrentBorrowAmount:i,leverageMultiplier:n,slippage:l,chainId:u,formattedCollateralPriceInLoanAsset:m},p){let{address:c}=_hooks.useBeraWallet.call(void 0, ),{account:{chainId:d}={}}=_hooks.useBeraWagmi.call(void 0, ),f=_nullishCoalesce(_nullishCoalesce(u, () => (d)), () => (_internal.defaultChainId)),y=_hooks.usePublicClient.call(void 0, {chainId:f}),{data:A}=xe({chainId:f}),{data:h}=Be({chainId:f,primaryAddress:r,ensoWalletV2Address:A}),R=e&&t&&o&&r&&A&&h!==void 0&&e.address!==t.address&&l!==void 0&&n!==void 0&&m!==void 0&&(Number(_nullishCoalesce(s, () => (0)))>0||n>1&&(Number(_nullishCoalesce(a, () => (0)))>0||Number(_nullishCoalesce(s, () => (0)))>0))&&c&&(_nullishCoalesce(_optionalChain([p, 'optionalAccess', _178 => _178.opts, 'optionalAccess', _179 => _179.isEnabled]), () => (!0)))?["useBendMultiply",c,e,t,o,r,f,_nullishCoalesce(s, () => ("")),_nullishCoalesce(a, () => ("")),_nullishCoalesce(i, () => ("")),n,l,m,A,h]:null;return _swr2.default.call(void 0, R,async([b,P,w,I,T,S,O,H,v,Y,M,$,F,G,D])=>{_chunk2YBHAMDVcjs.c.call(void 0, y);let q=_viem.parseUnits.call(void 0, H||"0",w.decimals).toString(),_e=_viem.parseUnits.call(void 0, v||"0",w.decimals).toString(),Ps=_viem.parseUnits.call(void 0, Y||"0",I.decimals).toString();return Qr({fromAddress:P,rawSupplyCollateralAmount:q,rawCurrentCollateralAmount:_e,rawCurrentBorrowAmount:Ps,collateralToken:w,loanToken:I,marketId:T,primaryAddress:S,chainId:O,ensoClient:_chunkGO5E7UUDcjs.a.call(void 0, ),slippage:$,leverageMultiplier:M,publicClient:y,formattedCollateralPriceInLoanAsset:F,ensoWalletV2Address:G,isAuthorized:D})},{..._optionalChain([p, 'optionalAccess', _180 => _180.opts]),refreshInterval:1e5})}var It= (_class12 =class extends _chunk7ITWLMO7cjs.e{constructor(...args13) { super(...args13); _class12.prototype.__init43.call(this);_class12.prototype.__init44.call(this);_class12.prototype.__init45.call(this);_class12.prototype.__init46.call(this);_class12.prototype.__init47.call(this); }__init43() {this.name="Enso (Mint)"}__init44() {this.supportedChains=null}__init45() {this.type="rest"}__init46() {this.needsAccountForQuote=!0}__init47() {this.notFoundMessages=["Could not build shortcuts for route","Could not quote shortcuts for route","Swap not found for a required underlying of defi route,","No route found from"]}async getQuote({tokenIn:t,tokenOut:o,amount:r,slippage:s,account:a=_viem.zeroAddress,aggregatorsFeeBps:i,proxyAggregatorsThroughVercel:n=!1,rewardVault:l,underlyingToken:u}){this.assertChainSupport({tokenIn:t,tokenOut:o}),_chunk2YBHAMDVcjs.d.call(void 0, a,"account");let m=_chunkGO5E7UUDcjs.a.call(void 0, {useProxy:!n});t.address===_viem.zeroAddress&&(t.address=_viem.ethAddress),o.address===_viem.zeroAddress&&(o.address=_viem.ethAddress);let p=_nullishCoalesce(u, () => (o)),c=[{protocol:"enso",action:"route",args:{tokenIn:t.address,tokenOut:p.address,destinationChainId:t.chainId===p.chainId?void 0:p.chainId,refundReceiver:a,amountIn:r,slippage:s*100}}];if(u&&c.push({protocol:"erc4626",action:"deposit",args:{amountIn:{useOutputOfCallAt:0},tokenIn:u.address,primaryAddress:o.address,tokenOut:o.address}}),l){let A=c.length;c.push({protocol:"enso",action:"balance",args:{token:o.address}},{protocol:"erc20",action:"approve",args:{amount:{useOutputOfCallAt:A},spender:l,token:o.address}},{protocol:"enso",action:"call",args:{address:l,args:[a,{useOutputOfCallAt:A}],method:"stakeOnBehalf",abi:"function stakeOnBehalf(address account, uint256 amount) external"}},{protocol:"enso",action:"balance",args:{token:l}})}let d=await m.getBundleData({fromAddress:a,receiver:a,spender:a,chainId:t.chainId,routingStrategy:"router"},c),f=_nullishCoalesce(_optionalChain([l, 'optionalAccess', _181 => _181.toLowerCase, 'call', _182 => _182()]), () => (o.address.toLowerCase()));return{amountOut:_nullishCoalesce(_nullishCoalesce(d.minAmountsOut[f], () => (d.amountsOut[f])), () => ("0")),amountIn:r,allowanceRequirements:this.parseAllowanceRequirements({tokenIn:t,rawAmount:r,spender:d.tx.to}),name:this.name,swapFeeBps:0,priceImpactPercentage:d.priceImpact?d.priceImpact/100:null,getCalldata:()=>({address:d.tx.to,data:d.tx.data,value:BigInt(_nullishCoalesce(d.tx.value, () => (0)))})}}}, _class12),ve=new It;function uh({tokenIn:e,loanToken:t,bendVault:o,rewardVault:r,amount:s,slippage:a},i){let{getTokenPrice:n}=J({tokens:e&&t?[e,t]:void 0}),l=Di({tokenIn:e,loanToken:t,bendVault:o,rewardVault:r,amount:s?_viem.parseUnits.call(void 0, s,_nullishCoalesce(_optionalChain([e, 'optionalAccess', _183 => _183.decimals]), () => (18))).toString():void 0,slippage:a},i),{data:u}=zo({sharesAmount:BigInt(_nullishCoalesce(_optionalChain([l, 'access', _184 => _184.data, 'optionalAccess', _185 => _185.amountOut]), () => (0))),vaultAddress:o.address}),{data:m}=Te({tokenIn:e,tokenOut:t,formattedAmountIn:s,formattedAmountOut:_nullishCoalesce(_optionalChain([u, 'optionalAccess', _186 => _186.formatted]), () => ("0"))}),p=_optionalChain([e, 'optionalAccess', _187 => _187.chainId])&&e.chainId!==_internal.defaultChainId,{data:c,isLoading:d}=Ie({address:_viem.zeroAddress,chainId:p?_optionalChain([e, 'optionalAccess', _188 => _188.chainId]):void 0},{opts:{isEnabled:!!p}}),f=_nullishCoalesce(_optionalChain([l, 'access', _189 => _189.data, 'optionalAccess', _190 => _190.getCalldata, 'optionalCall', _191 => _191({account:_viem.zeroAddress}), 'optionalAccess', _192 => _192.value]), () => (0n)),y=_nullishCoalesce(_optionalChain([c, 'optionalAccess', _193 => _193.balance]), () => ({raw:"0",formatted:"0"})),A=p&&f>0n&&!d&&f>BigInt(y.raw),h=p&&f>0n?_viem.formatEther.call(void 0, f):void 0;return{...l,zapSupplyAmount:u,priceImpact:m,hasInsufficientNativeBalance:A,isCrossChain:p,nativeFee:h,refresh:()=>{l.mutate()}}}function Di({tokenIn:e,loanToken:t,bendVault:o,rewardVault:r,amount:s,slippage:a},i){let{address:n}=_hooks.useBeraWallet.call(void 0, ),l=!!e&&!!t&&!!o&&!!s&&!!n&&!_chunk74WA35RIcjs.e.call(void 0, t.address,e.address)&&e.chainId&&Number(s)>0&&!!a,u=_hooks.usePublicClient.call(void 0, );return _swr2.default.call(void 0, l?["useBendZapSupply",e,t,o,r,s,a]:null,async([,p,c,d,f,y,A])=>(_chunk2YBHAMDVcjs.c.call(void 0, u),_chunk2YBHAMDVcjs.d.call(void 0, n,"fromAddress"),_chunk2YBHAMDVcjs.d.call(void 0, _optionalChain([p, 'optionalAccess', _194 => _194.address]),"tokenInAddress"),_chunk2YBHAMDVcjs.b.call(void 0, _optionalChain([p, 'optionalAccess', _195 => _195.chainId]),"tokenInChainId"),await ve.getQuote({tokenIn:p,tokenOut:d,underlyingToken:c,amount:y,slippage:A,account:n,rewardVault:f})),{..._optionalChain([i, 'optionalAccess', _196 => _196.opts]),refreshInterval:1e5})}async function Fr({fromAddress:e,amountIn:t,tokenIn:o,tokenOut:r,chainId:s,ensoClient:a,destinationChainId:i,slippage:n,publicClient:l}){if(!e)throw new (0, _chunkNMH7LHPWcjs.h)({property:"fromAddress",value:e,expected:"address"});r===_viem.zeroAddress&&(r=_viem.ethAddress);let u={protocol:"enso",action:"route",args:{tokenIn:o,tokenOut:r,amountIn:t,slippage:n*100}};i&&i!==s&&(u.args={...u.args,destinationChainId:i,refundReceiver:e});let m=await a.getBundleData({fromAddress:e,receiver:e,spender:e,chainId:s,routingStrategy:"router"},[u]),p=await Dr({fromAddress:e,amountIn:t,tokenIn:o,chainId:s,ensoClient:a,bundle:m,publicClient:l});return{bundle:m,transactions:p}}function Oe(e,t){let o=_hooks.usePublicClient.call(void 0, ),r=_hooks.useConfig.call(void 0, ),{address:s}=_hooks.useBeraWallet.call(void 0, ),{tokenList:a,refresh:i}=oe(),n=_nullishCoalesce(_optionalChain([e, 'optionalAccess', _197 => _197.walletAddress]), () => (s)),l=_react.useMemo.call(void 0, ()=>new Map(_nullishCoalesce(_optionalChain([(_nullishCoalesce(_optionalChain([e, 'optionalAccess', _198 => _198.tokens]), () => (a))), 'optionalAccess', _199 => _199.map, 'call', _200 => _200(p=>[p.address.toLowerCase(),p])]), () => ([]))),[a,_optionalChain([e, 'optionalAccess', _201 => _201.tokens])]),u=o&&a!==void 0&&n?["usePollWalletBalances",n,Array.from(l.values())]:null,m=_swr2.default.call(void 0, u,async([,p,c])=>_chunkGO5E7UUDcjs.c.call(void 0, {account:p,tokenList:c,wagmiConfig:r}),{refreshInterval:1e5,..._optionalChain([t, 'optionalAccess', _202 => _202.opts])});return{...m,refresh:()=>{_optionalChain([m, 'optionalAccess', _203 => _203.mutate, 'optionalCall', _204 => _204()]),i()}}}function Bh({tokenIn:e,tokenOut:t,amount:o,slippage:r}){let{address:s}=_hooks.useBeraWallet.call(void 0, ),a=_hooks.useConfig.call(void 0, ),i=_chunkGO5E7UUDcjs.a.call(void 0, ),{refresh:n}=Oe(),l=!!e&&!!t&&!!o&&Number(o)>0&&!!r&&!!s&&!!e.chainId,m=_swr2.default.call(void 0, l?["useEnsoSwapBundle",e,t,o,r]:null,async([,p,c,d,f])=>{_chunk2YBHAMDVcjs.d.call(void 0, s,"fromAddress"),_chunk2YBHAMDVcjs.d.call(void 0, _optionalChain([p, 'optionalAccess', _205 => _205.address]),"tokenInAddress"),_chunk2YBHAMDVcjs.b.call(void 0, _optionalChain([p, 'optionalAccess', _206 => _206.chainId]),"tokenInChainId"),_chunk2YBHAMDVcjs.d.call(void 0, _optionalChain([c, 'optionalAccess', _207 => _207.address]),"tokenOutAddress"),_chunk2YBHAMDVcjs.f.call(void 0, d,"amount"),_chunk2YBHAMDVcjs.f.call(void 0, f,"slippage");let y=_core.getPublicClient.call(void 0, a,{chainId:p.chainId});_chunk2YBHAMDVcjs.c.call(void 0, y);let A=_viem.parseUnits.call(void 0, d,p.decimals).toString();return Fr({fromAddress:s,amountIn:A,tokenIn:p.address,tokenOut:c.address,chainId:p.chainId,ensoClient:i,destinationChainId:_internal.defaultChainId,slippage:f,publicClient:y})},{refreshInterval:1e5,isEnabled:l});return{...m,refresh:()=>{m.mutate(),n()}}}function Vh({inputToken:e,amount:t,underlyingToken:o,slippage:r,tokenOut:s},a){let{address:i}=_hooks.useBeraWallet.call(void 0, ),n=_nullishCoalesce(i, () => (_internal.chainConfigs[_internal.defaultChainId].bex.aggregatorsRouterExecutor)),u=!!e&&!!t&&Number(t)>0&&!!e.chainId&&!!o&&!!r?["useZapStakeBera",e,t,n,r,o,s]:null,m=_swr2.default.call(void 0, u,async([,c,d,f,y,A,h])=>{let R=_viem.parseUnits.call(void 0, d,c.decimals).toString();return ve.getQuote({account:f,amount:R,tokenIn:c,underlyingToken:A,tokenOut:h,slippage:y})},{..._optionalChain([a, 'optionalAccess', _208 => _208.opts]),refreshInterval:1e5}),{data:p}=Te({tokenIn:e,tokenOut:s,formattedAmountIn:t,formattedAmountOut:_viem.formatUnits.call(void 0, BigInt(_nullishCoalesce(_optionalChain([m, 'access', _209 => _209.data, 'optionalAccess', _210 => _210.amountOut]), () => ("0"))),s.decimals)});return{...m,data:{...m.data,priceImpactPercentage:p,isCrossChain:e&&s.chainId!==_optionalChain([e, 'optionalAccess', _211 => _211.chainId])},refresh:()=>{m.mutate()}}}var _graymatter = require('gray-matter'); var _graymatter2 = _interopRequireDefault(_graymatter);var _beraChef = require('@berachain/abis/pol/rewards/beraChef');function De(e){return Object.values(e).some(t=>Array.isArray(t)?t.some(o=>typeof o=="object"&&o!==null?De(o):!!o):typeof t=="object"&&t!==null?De(t):!!t)}var Gr=({proposal:e,currentTopic:t,onError:o})=>{let r=_chunk7ITWLMO7cjs.r.call(void 0, e,t),s=[];if(r.actions=e.actions.map((n,l)=>{let u={};if(u.target=_chunk7ITWLMO7cjs.n.call(void 0, {fieldOrType:"address",value:n.target}),n.type==="custom-action")if(n.input==="ABI")if(u.ABI=_chunk7ITWLMO7cjs.n.call(void 0, {fieldOrType:"abi",value:n.ABI}),!n.functionSignature)u.functionSignature="Required";else try{let p=_viem.parseAbiItem.call(void 0, n.functionSignature);p.type!=="function"?(console.error("parsedSignatureAbi is not a function",p),u.functionSignature="Invalid ABI"):(u.args=p.inputs.map((c,d)=>{try{return"components"in c?_chunk7ITWLMO7cjs.n.call(void 0, {fieldOrType:c.type,value:_optionalChain([n, 'access', _212 => _212.args, 'optionalAccess', _213 => _213[d]]),components:c.components}):_chunk7ITWLMO7cjs.n.call(void 0, {fieldOrType:c.type,value:_optionalChain([n, 'access', _214 => _214.args, 'optionalAccess', _215 => _215[d]])})}catch (e3){return null}}),u.args.some(c=>c)||(s[l]=_viem.encodeFunctionData.call(void 0, {abi:[p],args:n.args})))}catch (e4){u.functionSignature="Invalid ABI"}else if(n.input==="rawCalldata")u.rawCalldata=_chunk7ITWLMO7cjs.n.call(void 0, {fieldOrType:"hex",value:n.rawCalldata}),s[l]=n.rawCalldata;else if(n.input==="message")u.message=_chunk7ITWLMO7cjs.n.call(void 0, {fieldOrType:"string",value:n.message}),s[l]=_viem.toHex.call(void 0, n.message);else throw new Error("Invalid input type");else if(n.type==="whitelist-reward-vault"||n.type==="blacklist-reward-vault"){if(u.vault=_chunk7ITWLMO7cjs.n.call(void 0, {fieldOrType:"address",value:n.vault}),!u.vault){let p=n.type==="whitelist-reward-vault";s[l]=_viem.encodeFunctionData.call(void 0, {abi:_beraChef.beraChefAbi,functionName:"setVaultWhitelistedStatus",args:[n.vault,p,""]})}}else n.type==="whitelist-reward-vault-incentive"?(u.token=_chunk7ITWLMO7cjs.n.call(void 0, {fieldOrType:"address",value:n.token}),u.minIncentiveRate=_chunk7ITWLMO7cjs.n.call(void 0, {fieldOrType:"uint256",value:n.minIncentiveRate}),u.managerAddress=_chunk7ITWLMO7cjs.n.call(void 0, {fieldOrType:"address",value:n.managerAddress}),!u.token&&!u.minIncentiveRate&&!u.managerAddress&&(s[l]=_viem.encodeFunctionData.call(void 0, {abi:_rewardVault.rewardVaultAbi,functionName:"whitelistIncentiveToken",args:[n.token,BigInt(n.minIncentiveRate),n.managerAddress]}))):n.type==="erc20-transfer"&&(u.amount=_chunk7ITWLMO7cjs.n.call(void 0, {fieldOrType:"uint256",value:n.amount}),u.to=_chunk7ITWLMO7cjs.n.call(void 0, {fieldOrType:"address",value:n.to}),!u.amount&&!u.to&&(s[l]=_viem.encodeFunctionData.call(void 0, {abi:_viem.erc20Abi,functionName:"transfer",args:[n.to,BigInt(n.amount)]})));return De(u)?u:null}),_optionalChain([o, 'optionalCall', _216 => _216(r)]),Object.getOwnPropertyNames(r).map(n=>r[n]).some(n=>Array.isArray(n)?n.filter(l=>l).length>0:n===null?!1:!!n)){console.warn("Proposal has errors",r);return}if(s.length===0)throw new Error("No actions submitted in proposal");let a=new URL(e.forumLink),i=_graymatter2.default.stringify(e.description,{title:e.title,topics:Array.from(e.topic.values()),forumLink:a.toString(),version:"1.0.0","content-encoding":"utf-8","content-type":"text/markdown",actions:e.actions.map(n=>{let l={type:n.type};return n.type==="custom-action"&&(l.inputType=n.input),l})});return[e.actions.map(n=>n.target),e.actions.map(n=>_nullishCoalesce(n.value, () => (0n))),s,i]};var Kr={type:"custom-action",target:"",ABI:"",value:0n,functionSignature:"",args:[],input:"ABI",rawCalldata:"0x",message:""},il= exports.useCreateProposal =({initialData:e={},currentTopic:t,onError:o})=>{let[r,s]=_react.useState.call(void 0, {title:"",description:"",forumLink:"",actions:[Kr],...e,topic:new Set});_react.useEffect.call(void 0, ()=>{s(l=>({...l,topic:new Set([t.id])}))},[t]);let a=_react.useCallback.call(void 0, ()=>{s(l=>({...l,actions:[...l.actions,Kr]}))},[]),i=_react.useCallback.call(void 0, l=>{s(u=>{let m=[...u.actions];return m.splice(l,1),{...u,actions:m}})},[s]),n=_react.useCallback.call(void 0, ()=>r?Gr({proposal:r,currentTopic:t,onError:o}):void 0,[r,t]);return{proposal:r,setProposal:s,addProposalAction:a,removeProposalAction:i,computeParamsAndErrors:n}};var _bgt = require('@berachain/abis/pol/bgt');var _berachainGovernance = require('@berachain/abis/gov/berachainGovernance');var qr=({proposalId:e})=>{let t=_hooks.usePublicClient.call(void 0, );return _immutable2.default.call(void 0, t&&e?["useProposalSnapshot",e]:null,async([,r])=>{_chunk2YBHAMDVcjs.c.call(void 0, t);let{config:s}=_chunk74WA35RIcjs.a.call(void 0, {chainId:t.chain.id});return(await t.readContract({abi:_berachainGovernance.berachainGovernanceAbi,address:s.governance.governor,functionName:"proposalSnapshot",args:[BigInt(r)]})).toString()})};var mR=e=>{let{address:t}=_hooks.useBeraWallet.call(void 0, ),o=_hooks.usePublicClient.call(void 0, ),r=e.wallet||t,{data:s}=qr({proposalId:e.proposalId}),a=e.timepoint||s;return _immutable2.default.call(void 0, a&&o&&r?["useGetPastVotes",a,r]:null,async([,n,l])=>{_chunk2YBHAMDVcjs.c.call(void 0, o);let{config:u}=_chunk74WA35RIcjs.a.call(void 0, {chainId:o.chain.id});if(Number(n)>Date.now()/1e3)throw new Error("timepoint is in the future");let m=await o.readContract({abi:_bgt.bgtAbi,address:u.tokens.bgt,functionName:"getPastVotes",args:[l,BigInt(n)]});return _viem.formatUnits.call(void 0, m,18)})};var hR=({proposalId:e,wallet:t})=>{let{address:o}=_hooks.useBeraWallet.call(void 0, ),r=_hooks.usePublicClient.call(void 0, ),s=t||o;return _swr2.default.call(void 0, r&&s&&_viem.isAddress.call(void 0, s)?["useHasVoted",e,s]:null,([,a,i])=>{_chunk2YBHAMDVcjs.c.call(void 0, r);let{config:n}=_chunk74WA35RIcjs.a.call(void 0, {chainId:r.chain.id});return r.readContract({address:n.governance.governor,abi:_berachainGovernance.berachainGovernanceAbi,functionName:"hasVoted",args:[BigInt(a),i]})})};var _timeLock = require('@berachain/abis/gov/timeLock');var $r="0xfd643c72710c63c0180259aba6b2d05451e3591a24e58b62239378085726f783";var SR=({account:e,...t})=>{let o=_hooks.usePublicClient.call(void 0, ),{config:r}=_chunk74WA35RIcjs.a.call(void 0, t);return _swr2.default.call(void 0, e&&o?["useCancellerRole",e]:null,async([,a])=>(_chunk2YBHAMDVcjs.c.call(void 0, o),await o.readContract({abi:_timeLock.timeLockAbi,address:r.governance.timelock,functionName:"hasRole",args:[$r,a]})),{refreshInterval:18e4,revalidateOnFocus:!1})};var _infinite = require('swr/infinite'); var _infinite2 = _interopRequireDefault(_infinite);var _governance = require('@berachain/graphql/governance');var jr=10,Sl=e=>{switch(e){case _governance.ProposalStatus.QuorumNotReached:return[_governance.ProposalStatus.Active,_governance.ProposalStatus.Pending];case _governance.ProposalStatus.PendingQueue:case _governance.ProposalStatus.Defeated:return[_governance.ProposalStatus.Active];case _governance.ProposalStatus.PendingExecution:return[_governance.ProposalStatus.InQueue];default:return[e]}};function xl(e,t={}){let o=2*(_nullishCoalesce(t.perPage, () => (jr)));return(r,s)=>{if(r!==0&&s&&s.length<o)return null;let a=_optionalChain([t, 'access', _217 => _217.status_in, 'optionalAccess', _218 => _218.flatMap, 'call', _219 => _219(Sl), 'access', _220 => _220.filter, 'call', _221 => _221((i,n,l)=>l.indexOf(i)===n)]);return["usePollAllProposals",r,e,t.where,a,t.orderBy,t.orderDirection,o,t.text]}}function LR(e,t){let o=_nullishCoalesce(_optionalChain([t, 'optionalAccess', _222 => _222.autoRefresh]), () => (!1)),r=_nullishCoalesce(e.perPage, () => (jr)),s=2*r,a=xl(e.topic,e);async function i(d){if(!d)return[];let[,f,y,A,h,R,b,P,w]=d;return(await _asyncNullishCoalesce(await _chunk7ITWLMO7cjs.q.call(void 0, {where:{topics_contains:[y],status_in:_optionalChain([h, 'optionalAccess', _223 => _223.length])?h:void 0,...A},orderBy:R,orderDirection:b,text:w,perPage:P,offset:f*P}), async () => ([]))).filter(Boolean)}let n=_infinite2.default.call(void 0, a,i,{initialSize:1,refreshInterval:_nullishCoalesce(_optionalChain([t, 'optionalAccess', _224 => _224.opts, 'optionalAccess', _225 => _225.refreshInterval]), () => (18e4)),..._optionalChain([t, 'optionalAccess', _226 => _226.opts])}),l=_react.useMemo.call(void 0, ()=>{if(!n.data)return[];let d=n.data.flat().filter(y=>y?_optionalChain([e, 'access', _227 => _227.status_in, 'optionalAccess', _228 => _228.length])?e.status_in.includes(y.status):!0:!1).sort((y,A)=>{if(!e.text)return 0;if(e.orderBy===_governance.Proposal_OrderBy.CreatedAt){let h=Number(A.createdAt)-Number(y.createdAt);return e.orderDirection==="asc"?h:-h}return 0}),f=[];for(let y=0;y<d.length;y+=r)f.push(d.slice(y,y+r));return f},[n.data,e,r]),u=_optionalChain([n, 'access', _229 => _229.data, 'optionalAccess', _230 => _230[n.data.length-1]]),m=!!u&&u.length===s,[p,c]=_react.useState.call(void 0, Date.now()/1e3);return _react.useEffect.call(void 0, ()=>{if(!o)return;let d=setInterval(()=>{c(Date.now()/1e3)},1e4);return()=>clearInterval(d)},[o]),_react.useEffect.call(void 0, ()=>{if(!n.data)return;let d=!1;for(let f of n.data.flat()){switch(f.status){case _governance.ProposalStatus.Pending:p>=Number(f.voteStartAt)&&(d=!0);break;case _governance.ProposalStatus.Active:p>=Number(f.voteEndAt)&&(d=!0);break;case _governance.ProposalStatus.InQueue:Date.now()/1e3+1>=Number(f.queueEnd)&&(d=!0);break;default:break}if(d)break}d&&n.mutate()},[n.data,p]),{...n,data:l,hasMore:m}}var MR=(e,t)=>{let o=_nullishCoalesce(_optionalChain([t, 'optionalAccess', _231 => _231.autoRefresh]), () => (!1)),r=_hooks.usePublicClient.call(void 0, ),a=_swr2.default.call(void 0, e&&r?["usePollProposal",e]:null,([,l])=>(_chunk2YBHAMDVcjs.c.call(void 0, r),_chunk7ITWLMO7cjs.s.call(void 0, {proposalId:l,client:r})),{..._optionalChain([t, 'optionalAccess', _232 => _232.opts]),refreshInterval:_nullishCoalesce(_optionalChain([t, 'optionalAccess', _233 => _233.opts, 'optionalAccess', _234 => _234.refreshInterval]), () => (18e4))}),[i,n]=_react.useState.call(void 0, Date.now());return _react.useEffect.call(void 0, ()=>{if(!o)return;let l=setInterval(()=>{n(Date.now()/1e3)},1e4);return()=>clearInterval(l)},[]),_react.useEffect.call(void 0, ()=>{if(a.data!==void 0)switch(a.data.status){case _governance.ProposalStatus.Pending:i>=Number(a.data.voteStartAt)&&a.mutate();break;case _governance.ProposalStatus.Active:i>=Number(a.data.voteEndAt)&&a.mutate();break;case _governance.ProposalStatus.InQueue:Date.now()/1e3+1>=Number(a.data.queueEnd)&&a.mutate();break}},[_optionalChain([a, 'access', _235 => _235.data, 'optionalAccess', _236 => _236.status]),i]),{...a,refresh:()=>_optionalChain([a, 'optionalAccess', _237 => _237.mutate, 'optionalCall', _238 => _238()])}};var zR=e=>{let t=_hooks.usePublicClient.call(void 0, ),r=_swr2.default.call(void 0, t?["usePollProposalThreshold",e]:null,async([,s])=>{_chunk2YBHAMDVcjs.c.call(void 0, t);let a=await t.readContract({address:s,abi:_berachainGovernance.berachainGovernanceAbi,functionName:"proposalThreshold"});return{votesThreshold:_viem.formatEther.call(void 0, a)}},{refreshInterval:18e4});return{...r,refresh:r.mutate}};var Ue=1e3,XR= exports.usePollProposalVotes =(e,t)=>_infinite2.default.call(void 0, Vl(e,t),async([o,r])=>_chunk7ITWLMO7cjs.v.call(void 0, {variables:{...e,limit:Ue,offset:Ue*r}}),{parallel:!0,initialSize:Number.POSITIVE_INFINITY}),Vl= exports.usePollProposalVotesQueryKey =({...e},t)=>o=>o>Math.floor(t/Ue)?null:["usePollProposalVotes",o,Ue,e.proposalId,e.orderBy,e.orderDirection];var iw=e=>{let{address:t}=_hooks.useBeraWallet.call(void 0, ),o=_hooks.usePublicClient.call(void 0, ),s=_swr2.default.call(void 0, t?["usePollUserDelegates",t]:null,async([,a])=>{_chunk2YBHAMDVcjs.c.call(void 0, o);let{config:i}=_chunk74WA35RIcjs.a.call(void 0, {chainId:o.chain.id});if(!o||!a)throw new Error("usePollUserDelegates needs publicClient and account");let[n,l]=await Promise.all([o.readContract({address:i.tokens.bgt,abi:_bgt.bgtAbi,functionName:"delegates",args:[a]}),o.readContract({address:i.tokens.bgt,abi:_bgt.bgtAbi,functionName:"getVotes",args:[a]})]);return{delegate:n,currentVotes:_viem.formatEther.call(void 0, l)}},{..._optionalChain([e, 'optionalAccess', _239 => _239.opts]),refreshInterval:_nullishCoalesce(_optionalChain([e, 'optionalAccess', _240 => _240.opts, 'optionalAccess', _241 => _241.refreshInterval]), () => (18e4))});return{...s,refresh:()=>_optionalChain([s, 'optionalAccess', _242 => _242.mutate, 'optionalCall', _243 => _243()])}};var dw=e=>{let{data:t}=_hooks.useTransactionReceipt.call(void 0, {hash:e}),o=_hooks.usePublicClient.call(void 0, );return _swr2.default.call(void 0, t&&o?["useProposalFromTx",e]:null,async([,a])=>{if(!t)throw new Error("Transaction not found");if(t.transactionHash!==a)throw new Error("Transaction hash mismatch");return _chunk7ITWLMO7cjs.u.call(void 0, {tx:t,publicClient:o})})};var zl={0:"pending",1:"active",2:"canceled",3:"defeated",4:"succeeded",5:"queued",6:"expired",7:"executed"},bw= exports.useProposalState =({proposalId:e,governorAddress:t})=>{let o=_hooks.usePublicClient.call(void 0, );return _immutable2.default.call(void 0, t&&o&&e?["useProposalState",e]:null,async([,s])=>{_chunk2YBHAMDVcjs.c.call(void 0, o);let a=await o.readContract({abi:_berachainGovernance.berachainGovernanceAbi,address:t,functionName:"state",args:[BigInt(s)]});return zl[a]})};var Xl={0:"unset",1:"waiting",2:"ready",3:"done"};function Cw({proposalTimelockId:e,timelockAddress:t}){let o=_hooks.usePublicClient.call(void 0, );return _swr2.default.call(void 0, t&&o&&e?["useProposalTimelockState",e,t]:null,async([,s,a])=>{_chunk2YBHAMDVcjs.c.call(void 0, o);let i=await o.readContract({abi:_timeLock.timeLockAbi,address:a,functionName:"getOperationState",args:[s]});return Xl[i]},{refreshInterval:18e4})}async function St({at:e,publicClient:t,...o}){let{config:r}=_chunk74WA35RIcjs.a.call(void 0, o);_chunk2YBHAMDVcjs.c.call(void 0, t);let s=await t.readContract({address:r.governance.governor,abi:_berachainGovernance.berachainGovernanceAbi,functionName:"quorum",blockTag:"pending",args:[BigInt(_nullishCoalesce(e, () => (Math.floor(Date.now()/1e3))))]});return _viem.formatEther.call(void 0, s)}function Lw({at:e},{isEnabled:t=!0}){let o=Math.floor(Date.now()/1e3),r=_hooks.usePublicClient.call(void 0, ),s=t&&r?["useQuorum",Number(e)>o?"now":e]:null,a=_swr2.default.call(void 0, s,async([,i])=>i==="now"?St({publicClient:r}):St({at:i,publicClient:r}));return{...a,data:a.data?Number(a.data):void 0}}function ne({priceFeedMap:e},t){let o=e?Object.values(e):null,r=(_nullishCoalesce(_optionalChain([t, 'optionalAccess', _244 => _244.opts, 'optionalAccess', _245 => _245.isEnabled]), () => (!0)))&&o?["usePythLatestPrices",o]:null;return _swr2.default.call(void 0, r,async([a,i])=>await _chunk7ITWLMO7cjs.G.call(void 0, {priceFeedId:i}))}var Xr=({asset:e,amount:t,isMint:o,isBasketModeEnabled:r},s)=>{let a=_hooks.usePublicClient.call(void 0, ),{priceFeedMap:i,flags:n}=_chunk2EN6PPAWcjs.l.call(void 0, ),{data:l}=ne({priceFeedMap:_optionalChain([e, 'optionalAccess', _246 => _246.address])&&i?{[e.address]:i[e.address]}:void 0},{opts:{isEnabled:n.isPythWrapperEnabled&&!!_optionalChain([e, 'optionalAccess', _247 => _247.address])}}),u=t&&e&&(n.isPythWrapperEnabled&&_optionalChain([l, 'optionalAccess', _248 => _248.prices, 'access', _249 => _249.length])||!n.isPythWrapperEnabled)?["useCappedGlobally",t,e,l,n.isPythWrapperEnabled,r]:null,m=_swr2.default.call(void 0, u,async([p,c,d,f,y,A])=>A?!1:(_chunk2YBHAMDVcjs.c.call(void 0, a),await _chunk7ITWLMO7cjs.B.call(void 0, {client:a,asset:d,amount:o?c:`-${c}`,isMint:o,latestPrices:f,isPythWrapperEnabled:y})),{..._optionalChain([s, 'optionalAccess', _250 => _250.opts]),refreshInterval:0});return{...m,refresh:()=>void m.mutate()}};var es=({asset:e,amount:t,isMint:o,isBasketModeEnabled:r},s)=>{let a=_hooks.usePublicClient.call(void 0, ),{collateralList:i,referenceCollateral:n}=_chunk2EN6PPAWcjs.l.call(void 0, ),u=_swr2.default.call(void 0, e&&t?["useCappedRelatively",e,t,i,n]:null,async([m,p,c,d,f])=>{if(r)return!1;if(_chunk2YBHAMDVcjs.c.call(void 0, a),!o){let y=`-${c}`;return f.address!==p?!1:(await Promise.all(d.map(h=>_chunk7ITWLMO7cjs.H.call(void 0, {client:a,asset:h.address,amount:y,isMint:o,referenceCollateral:f})))).some(h=>h)}return await _chunk7ITWLMO7cjs.H.call(void 0, {client:a,asset:p,amount:c,isMint:o,referenceCollateral:f})},{refreshInterval:0,..._optionalChain([s, 'optionalAccess', _251 => _251.opts])});return{...u,refresh:()=>void u.mutate()}};var ok=({collateralList:e},t)=>{let o=_hooks.usePublicClient.call(void 0, ),s=_swr2.default.call(void 0, o&&e?["useCollateralWeights",e]:void 0,async([a,i])=>(_chunk2YBHAMDVcjs.c.call(void 0, o),await _chunk7ITWLMO7cjs.x.call(void 0, {client:o,collateralList:i})),{..._optionalChain([t, 'optionalAccess', _252 => _252.opts]),refreshInterval:_nullishCoalesce(_optionalChain([t, 'optionalAccess', _253 => _253.opts, 'optionalAccess', _254 => _254.refreshInterval]), () => (1e5))});return{...s,refresh:()=>void s.mutate()}};var ts=()=>{let e=_hooks.usePublicClient.call(void 0, ),{address:t}=_hooks.useBeraWallet.call(void 0, ),{collateralList:o}=_chunk2EN6PPAWcjs.l.call(void 0, ),r=_hooks.useConfig.call(void 0, ),a=_swr2.default.call(void 0, t&&o&&e?["useHoneyBalances",t,o]:null,async([i,n,l])=>{_chunk2YBHAMDVcjs.c.call(void 0, e);let u=[..._nullishCoalesce(l, () => ([])),_chunk74WA35RIcjs.d.call(void 0, {})];returnawait _asyncOptionalChain([(await _chunkGO5E7UUDcjs.c.call(void 0, {account:n,tokenList:u,wagmiConfig:r})), 'optionalAccess', async _255 => _255.reduce, 'call', async _256 => _256((c,d)=>(c[d.address]=d,c),{})])},{refreshInterval:1e4});return{...a,refresh:()=>a.mutate()}};var os=e=>{let t=_hooks.usePublicClient.call(void 0, ),{collateralList:o}=_chunk2EN6PPAWcjs.l.call(void 0, ),s=_swr2.default.call(void 0, o&&t?["useHoneyVaultsBalance",o]:null,async([a,i])=>(_chunk2YBHAMDVcjs.c.call(void 0, t),await _chunk7ITWLMO7cjs.F.call(void 0, {client:t,collateralList:i})),{..._optionalChain([e, 'optionalAccess', _257 => _257.opts]),refreshInterval:1e5});return{...s,refresh:()=>void s.mutate()}};var rs=({collateral:e},t)=>{let o=_hooks.usePublicClient.call(void 0, ),{priceFeedMap:r,flags:s}=_chunk2EN6PPAWcjs.l.call(void 0, ),{data:a}=ne({priceFeedMap:_optionalChain([e, 'optionalAccess', _258 => _258.address])?{[e.address]:r[e.address]}:void 0},{opts:{isEnabled:s.isPythWrapperEnabled&&!!_optionalChain([e, 'optionalAccess', _259 => _259.address])}}),i=o&&e&&(s.isPythWrapperEnabled&&_optionalChain([a, 'optionalAccess', _260 => _260.prices, 'access', _261 => _261.length])||!s.isPythWrapperEnabled)?["useIsBadCollateralAsset",e,a,s.isPythWrapperEnabled]:null,n=_swr2.default.call(void 0, i,async([l,u,m,p])=>(_chunk2YBHAMDVcjs.c.call(void 0, o),await _chunk7ITWLMO7cjs.A.call(void 0, {client:o,collateral:u,latestPrices:m,isPythWrapperEnabled:p})),{..._optionalChain([t, 'optionalAccess', _262 => _262.opts]),refreshInterval:_nullishCoalesce(_optionalChain([t, 'optionalAccess', _263 => _263.opts, 'optionalAccess', _264 => _264.refreshInterval]), () => (1e5))});return{...n,refresh:()=>void n.mutate()}};var ss=({lowerThan:e,vaultsBalances:t,state:o,collateralList:r})=>{if(!(o.actionType==="mint")&&!o.isBasketModeEnabled){let a=_optionalChain([t, 'optionalAccess', _265 => _265.find, 'call', _266 => _266(l=>l.address.toLowerCase()===o.collaterals[0].address.toLowerCase())]),i=new (0, _chunkNVHV2LDKcjs.a)(_nullishCoalesce(_optionalChain([a, 'optionalAccess', _267 => _267.balance, 'access', _268 => _268.formatted]), () => ("0"))).lte(e),n=r.filter(l=>{let u=_optionalChain([t, 'optionalAccess', _269 => _269.find, 'call', _270 => _270(m=>m.address.toLowerCase()===l.address.toLowerCase())]);return new (0, _chunkNVHV2LDKcjs.a)(_nullishCoalesce(_optionalChain([u, 'optionalAccess', _271 => _271.balance, 'access', _272 => _272.formatted]), () => ("0"))).lte(e)});return{isLow:i,isLiquidityLowCollaterals:n}}return{isLow:!1,isLiquidityLowCollaterals:[]}},hu=({vaultsBalances:e,redeemedVaultBalance:t,state:o,collateralList:r})=>{if(!(o.actionType==="mint")&&e&&t){let a=r.filter(i=>{let n=e.find(u=>u.address.toLowerCase()===i.address.toLowerCase()),l=o.toAmount[o.collaterals.indexOf(i)];return new (0, _chunkNVHV2LDKcjs.a)(_nullishCoalesce(_optionalChain([n, 'optionalAccess', _273 => _273.balance, 'access', _274 => _274.formatted]), () => ("0"))).lt(_nullishCoalesce(l, () => ("0")))});return{isMore:!!a.find(i=>_chunk74WA35RIcjs.e.call(void 0, i,o.collaterals[0])),isRedeemMoreThanLiquidityCollaterals:a}}return{isMore:!1,isRedeemMoreThanLiquidityCollaterals:void 0}};function Ru({state:e,honeyBalances:t,...o}){let{config:r}=_chunk74WA35RIcjs.a.call(void 0, o),s=e.actionType==="mint";return!s&&t?new (0, _chunkNVHV2LDKcjs.a)(e.fromAmount[0]).gt(_nullishCoalesce(_optionalChain([t, 'access', _275 => _275[r.honey.token], 'optionalAccess', _276 => _276.balance, 'access', _277 => _277.formatted]), () => ("0"))):s&&t&&e.isBasketModeEnabled!==void 0&&e.collaterals.length>0?e.isBasketModeEnabled?e.collaterals.some((a,i)=>{let n=e.fromAmount[i];return new (0, _chunkNVHV2LDKcjs.a)(_optionalChain([t, 'access', _278 => _278[a.address], 'optionalAccess', _279 => _279.balance, 'access', _280 => _280.formatted])).lt(n)}):new (0, _chunkNVHV2LDKcjs.a)(_optionalChain([t, 'access', _281 => _281[e.collaterals[0].address], 'optionalAccess', _282 => _282.balance, 'access', _283 => _283.formatted])).lt(e.fromAmount[0]):!1}var Lk=({actionType:e,collaterals:t,fromAmount:o,toAmount:r,isBasketModeEnabled:s})=>{let a={actionType:e,collaterals:t,fromAmount:o,toAmount:r,isBasketModeEnabled:s},i=e==="mint",{data:n}=rs({collateral:t[0]}),{collateralList:l}=_chunk2EN6PPAWcjs.l.call(void 0, ),{isBlacklisted:u,isDepegged:m}=_nullishCoalesce(n, () => ({isBlacklisted:!1,isDepegged:!1})),{data:p}=Xr({asset:t[0],amount:i?o[0]:r[0],isMint:i,isBasketModeEnabled:s}),{data:c}=es({asset:_optionalChain([t, 'access', _284 => _284[0], 'optionalAccess', _285 => _285.address]),amount:i?o[0]:r[0],isMint:i,isBasketModeEnabled:s}),{data:d}=ts(),{data:f}=os(),y=_optionalChain([t, 'access', _286 => _286[0], 'optionalAccess', _287 => _287.address]),A=_optionalChain([f, 'optionalAccess', _288 => _288.find, 'call', _289 => _289(I=>I.address.toLowerCase()===y.toLowerCase())]),[h,R]=_react.useMemo.call(void 0, ()=>{let I=ss({lowerThan:1,vaultsBalances:f,state:a,collateralList:l}),T=ss({lowerThan:1e3,vaultsBalances:f,state:a,collateralList:l});return[I,T]},[f,a]),{isMore:b,isRedeemMoreThanLiquidityCollaterals:P}=_react.useMemo.call(void 0, ()=>hu({vaultsBalances:f,redeemedVaultBalance:A,state:a,collateralList:l}),[f,A,a,l]),w=_react.useMemo.call(void 0, ()=>Ru({state:a,honeyBalances:d}),[a,d]);return{isLiquidityDepleted:h.isLow,isLiquidityDepletedCollaterals:h.isLiquidityLowCollaterals,isRedeemMoreThanLiquidity:b,isRedeemMoreThanLiquidityCollaterals:P,isLowLiquidity:R.isLow,isLiquidityLowCollaterals:R.isLiquidityLowCollaterals,isBlacklisted:a.isBasketModeEnabled?!1:u,isDepegged:a.isBasketModeEnabled?!1:m,isCappedGlobally:p,isCappedRelatively:c,isExceedingBalance:w}};function Vk({days:e}){let t=_swr2.default.call(void 0, ["useHoneyChartData",e],async([o,r])=>await _chunk7ITWLMO7cjs.w.call(void 0, {days:r}));return{...t,refresh:()=>t.mutate()}}function Yk(){let e=_swr2.default.call(void 0, ["useHoneyGlobalData"],()=>_chunk7ITWLMO7cjs.C.call(void 0, )),t=_optionalChain([e, 'access', _290 => _290.data, 'optionalAccess', _291 => _291.honeySnapshots, 'access', _292 => _292.reduce, 'call', _293 => _293((o,r)=>new (0, _chunkNVHV2LDKcjs.a)(r.totalVolume).plus(o),new (0, _chunkNVHV2LDKcjs.a)(0))]);return{...e,data:{...e.data,dailyVolume:t},refresh:()=>e.mutate()}}function as({state:e},t){let o=_hooks.usePublicClient.call(void 0, ),{priceFeedMap:r,flags:s,collateralList:a}=_chunk2EN6PPAWcjs.l.call(void 0, ),{data:i}=ne({priceFeedMap:r},{opts:{isEnabled:s.isPythWrapperEnabled&&!!a.length}}),n=e.actionType==="mint",l=o&&e&&a.length>0&&(s.isPythWrapperEnabled&&_optionalChain([i, 'optionalAccess', _294 => _294.prices, 'access', _295 => _295.length])||!s.isPythWrapperEnabled)?["useIsBasketModeEnabled",n,i,s.isPythWrapperEnabled,a]:null,u=_swr2.default.call(void 0, l,async([m,p,c,d,f])=>(_chunk2YBHAMDVcjs.c.call(void 0, o),await _chunk7ITWLMO7cjs.K.call(void 0, {client:o,isMint:p,collateralList:f,latestPrices:c,isPythWrapperEnabled:d})),{..._optionalChain([t, 'optionalAccess', _296 => _296.opts]),refreshInterval:_nullishCoalesce(_optionalChain([t, 'optionalAccess', _297 => _297.opts, 'optionalAccess', _298 => _298.refreshInterval]), () => (1e4))});return{...u,data:u.data,refresh:()=>void u.mutate()}}var Su={actionType:"mint",collaterals:[],fromAmount:[],toAmount:[],isBasketModeEnabled:!1,isTyping:!1,isSubmitting:!1,isLoading:!1};function is(e,t){switch(t.type){case"RESET_AMOUNTS":return{...e,fromAmount:[],toAmount:[]};case"ACTION_TYPE_CHANGE":return is({...e,actionType:t.value},{type:"RESET_AMOUNTS"});case"COLLATERALS_CHANGE":return{...e,collaterals:t.value,fromAmount:[],toAmount:[]};case"FROM_AMOUNT_CHANGE":{let o=e.fromAmount;return o[t.index]=t.value,{...e,fromAmount:o}}case"TO_AMOUNT_CHANGE":{let o=e.toAmount;return o[t.index]=t.value,{...e,toAmount:o}}case"PREVIEW_CHANGE":{let o=t.value,r=e.actionType==="mint",s=e.collaterals.map((i,n)=>t.changedAsset===i.address?r?e.fromAmount[n]:e.toAmount[n]:o.collaterals[i.address]?_viem.formatUnits.call(void 0, o.collaterals[i.address],i.decimals):e.isBasketModeEnabled?"0":""),a=_chunk74WA35RIcjs.e.call(void 0, t.changedAsset,"HONEY",{chainId:_internal.defaultChainId})?r?e.toAmount[0]:e.fromAmount[0]:o.honey?_viem.formatUnits.call(void 0, o.honey,18):e.isBasketModeEnabled?"0":"";return{...e,fromAmount:r?s:[a],toAmount:r?[a]:s}}case"IS_BASKET_MODE_ENABLED_CHANGE":return{...e,isBasketModeEnabled:t.value,fromAmount:[],toAmount:[]};case"IS_TYPING_CHANGE":return{...e,isTyping:t.value};case"IS_SUBMITTING_CHANGE":return{...e,isSubmitting:t.value};case"IS_LOADING_CHANGE":return{...e,isLoading:t.value};default:throw new Error(`Unknown action type: ${t}`)}}var sP=()=>{let{collateralList:e}=_chunk2EN6PPAWcjs.l.call(void 0, ),[t,o]=_react.useReducer.call(void 0, is,Su,s=>({...s,collaterals:e})),{data:r}=as({state:t});return _react.useEffect.call(void 0, ()=>{r!==void 0&&t.isBasketModeEnabled!==r&&(o({type:"IS_LOADING_CHANGE",value:!0}),o({type:"IS_BASKET_MODE_ENABLED_CHANGE",value:r}),o({type:"IS_LOADING_CHANGE",value:!1}))},[r]),{state:t,dispatch:o}};var mP=({pythPriceFeedCalldata:e,tokenListLength:t},o)=>{let r=_hooks.usePublicClient.call(void 0, ),s=(_nullishCoalesce(_optionalChain([o, 'optionalAccess', _299 => _299.opts, 'optionalAccess', _300 => _300.isEnabled]), () => (!0)))&&e&&e.length>0?["usePythUpdateFee",e]:null,{data:a=_chunkNVHV2LDKcjs.k.call(void 0, t),isLoading:i}=_immutable2.default.call(void 0, s,async([n,l])=>(_chunk2YBHAMDVcjs.c.call(void 0, r),await _chunk7ITWLMO7cjs.I.call(void 0, {client:r,priceFeedId:l})));return{QUERY_KEY:s,data:a,isLoading:i}};function gP(e){return _react.useMemo.call(void 0, ()=>{if(e)return _chunk7ITWLMO7cjs.O.call(void 0, e)},[e])}var Nu=e=>{let{address:t}=_hooks.useBeraWallet.call(void 0, ),o=_hooks.usePublicClient.call(void 0, ),s=_swr2.default.call(void 0, t&&o?["useBgtUnstakedBalance",t]:null,async([,a])=>{_chunk2YBHAMDVcjs.c.call(void 0, o);let{config:i}=_chunk74WA35RIcjs.a.call(void 0, {chainId:o.chain.id}),n=await o.readContract({address:i.tokens.bgt,abi:_bgt.bgtAbi,functionName:"unboostedBalanceOf",args:[a]});return _viem.formatEther.call(void 0, n)},{...e,refreshInterval:_nullishCoalesce(_optionalChain([e, 'optionalAccess', _301 => _301.opts, 'optionalAccess', _302 => _302.refreshInterval]), () => (1e5))});return{...s,refresh:()=>s.mutate()}};var Mu=()=>{let{address:e}=_hooks.useBeraWallet.call(void 0, ),t=_hooks.usePublicClient.call(void 0, ),r=_swr2.default.call(void 0, e&&t?["useClaimableFees",e]:null,async([,s])=>{_chunk2YBHAMDVcjs.c.call(void 0, t);let{config:a}=_chunk74WA35RIcjs.a.call(void 0, {chainId:t.chain.id}),i=await _chunk7ITWLMO7cjs.ea.call(void 0, {account:s,vaultAddress:a.pol.staker,publicClient:t});return _viem.formatUnits.call(void 0, i,18)},{refreshInterval:18e4*2});return{...r,refresh:()=>_optionalChain([r, 'optionalAccess', _303 => _303.mutate, 'optionalCall', _304 => _304()])}};var _api = require('@berachain/graphql/pol/api');var Gu=(e,t=!1)=>["useRewardVaults",e,t],Bt= exports.useRewardVaults =(e,t)=>{let o=Gu(e.filter,e.onChainIncentives),r=_hooks.usePublicClient.call(void 0, ),s=_swr2.default.call(void 0, _nullishCoalesce(_optionalChain([t, 'optionalAccess', _305 => _305.opts, 'optionalAccess', _306 => _306.isEnabled]), () => (!0))?o:null,async([,a,i])=>await _chunk7ITWLMO7cjs.Q.call(void 0, {filter:a,publicClient:i?r:void 0}),{..._optionalChain([t, 'optionalAccess', _307 => _307.opts])});return{...s,refresh:s.mutate}};var NP=(e={},{isEnabled:t=!0}={})=>{let o=Bt({filter:{orderBy:_api.GqlRewardVaultOrderBy.Apr,orderDirection:_api.GqlRewardVaultOrderDirection.Desc,pageSize:1,where:e}},{opts:{refreshInterval:0,revalidateOnFocus:!1,refreshWhenOffline:!1,isEnabled:t}});return{isLoading:o.isLoading,highestApr:_optionalChain([o, 'access', _308 => _308.data, 'optionalAccess', _309 => _309.gaugeList, 'access', _310 => _310[0], 'access', _311 => _311.dynamicData, 'optionalAccess', _312 => _312.apr]),refresh:o.mutate}};var ls=e=>{let t=_hooks.usePublicClient.call(void 0, ),o=_swr2.default.call(void 0, t?"usePollGlobalData":null,async()=>(_chunk2YBHAMDVcjs.c.call(void 0, t),_chunk7ITWLMO7cjs.R.call(void 0, t)),{revalidateOnFocus:!1,..._optionalChain([e, 'optionalAccess', _313 => _313.opts])});return{...o,refresh:o.mutate}};var Zu=()=>"usePollMarkets",KP= exports.usePollMarkets =e=>{let t=Zu(),o=_immutable2.default.call(void 0, t,async()=>await _chunk7ITWLMO7cjs.T.call(void 0, ),{..._optionalChain([e, 'optionalAccess', _314 => _314.opts])});return{...o,refresh:()=>o.mutate()}};function XP({receiptTokenAddresses:e,account:t,version:o},r){let s=_hooks.usePublicClient.call(void 0, ),a=e&&t&&s&&_viem.isAddress.call(void 0, t)&&o?["useQueuedBeraUnlock",e,t,o]:null,i=_immutable2.default.call(void 0, a,async([,n,l,u])=>(_chunk2YBHAMDVcjs.c.call(void 0, s),await Promise.all(n.map(async m=>await _chunk7ITWLMO7cjs.ba.call(void 0, {contractAddress:m,accountAddress:l,publicClient:s,version:u}))).then(m=>m.flat())),{refreshInterval:1e4,..._optionalChain([r, 'optionalAccess', _315 => _315.opts])});return{...i,refresh:()=>i.mutate()}}var lC=({address:e},t)=>{let o=e?["useRewardTokenToBeraRate",e]:null,r=_hooks.usePublicClient.call(void 0, {chainId:_internal.defaultChainId});return _swr2.default.call(void 0, o,async([s,a])=>{if(!a||!_viem.isAddress.call(void 0, a))throw new (0, _chunkNMH7LHPWcjs.h)({property:"address",value:a,expected:"Address"});return _chunk2YBHAMDVcjs.c.call(void 0, r),_chunk7ITWLMO7cjs.V.call(void 0, {address:a,publicClient:r})},{..._optionalChain([t, 'optionalAccess', _316 => _316.opts])})};async function Ne({address:e,publicClient:t}){_chunk2YBHAMDVcjs.c.call(void 0, t);let[o,r,s,a]=await t.multicall({contracts:[{address:e,abi:_viem.erc20Abi,functionName:"decimals"},{address:e,abi:_viem.erc20Abi,functionName:"name"},{address:e,abi:_viem.erc20Abi,functionName:"symbol"},{address:e,abi:_viem.erc20Abi,functionName:"totalSupply"}],allowFailure:!0});return{address:e,decimals:o.result,name:r.result,symbol:s.result,totalSupply:a.result!==void 0?o.status==="success"?_viem.formatUnits.call(void 0, a.result,o.result):a.result.toString():void 0}}var dp=e=>e&&_viem.isAddress.call(void 0, e)?["onChainRewardVault",e.toLowerCase()]:null,us=({address:e},t)=>{let o=_hooks.usePublicClient.call(void 0, ),r=_nullishCoalesce(_optionalChain([t, 'access', _317 => _317.opts, 'optionalAccess', _318 => _318.isEnabled]), () => (!0)),s=dp(e);return _swr2.default.call(void 0, r&&o?s:null,async([,a])=>{_chunk2YBHAMDVcjs.c.call(void 0, o);let{config:i}=_chunk74WA35RIcjs.a.call(void 0, {chainId:o.chain.id}),n=await _chunk7ITWLMO7cjs.Y.call(void 0, {address:a,publicClient:o}),[l,u,m]=await Promise.all([_chunk7ITWLMO7cjs.X.call(void 0, {address:a,stakingToken:n,publicClient:o}),o.readContract({address:i.pol.beraChef,abi:_beraChef.beraChefAbi,functionName:"isWhitelistedVault",args:[a]}),o.readContract({address:n,abi:_viem.erc20Abi,functionName:"balanceOf",args:[a]})]),[p,c]=await Promise.all([Ne({address:n,publicClient:o}),Promise.all(l.map(d=>_chunk7ITWLMO7cjs.y.call(void 0, {address:d.token,chainId:o.chain.id,publicClient:o})))]);if(!p)throw new Error("Staking token not found");return{id:a,address:a,vaultAddress:a,stakingToken:{address:n,name:_nullishCoalesce(p.name, () => ("")),symbol:_nullishCoalesce(p.symbol, () => ("")),decimals:_nullishCoalesce(p.decimals, () => (0))},stakingTokenAmount:_viem.formatUnits.call(void 0, m,_nullishCoalesce(p.decimals, () => (18))),isVaultWhitelisted:u,activeIncentives:l.map((d,f)=>({active:!!d.remainingAmount,remainingAmount:d.remainingAmount,remainingAmountUsd:"0",incentiveRate:d.incentiveRate,incentiveRateUsd:"0",tokenAddress:d.token,token:c[f]}))}})};var fp=e=>e?["useRewardVault",e.toLowerCase()]:null,TC= exports.useRewardVault =(e,t)=>{let o=fp(e),r=_swr2.default.call(void 0, o,async([i,n])=>_chunk7ITWLMO7cjs.W.call(void 0, {address:n}),{..._optionalChain([t, 'optionalAccess', _319 => _319.opts])}),s=_nullishCoalesce(_optionalChain([t, 'optionalAccess', _320 => _320.opts, 'optionalAccess', _321 => _321.isEnabled]), () => (((!!r.error||!r.isLoading)&&!r.data))),a=us({address:e},{opts:{..._optionalChain([t, 'optionalAccess', _322 => _322.opts]),isEnabled:s}});return{data:_nullishCoalesce(a.data, () => (r.data)),error:_nullishCoalesce(a.error, () => (r.error)),isLoading:a.isLoading||r.isLoading,isValidating:_nullishCoalesce(a.isValidating, () => (r.isValidating)),refresh:()=>{r.mutate(),a.mutate()}}};function DC({address:e,stakingToken:t}){let o=_hooks.usePublicClient.call(void 0, ),s=_swr2.default.call(void 0, o&&e&&t?["useRewardVaultIncentives",e,t]:null,async([,a,i])=>(_chunk2YBHAMDVcjs.c.call(void 0, o),await _chunk7ITWLMO7cjs.X.call(void 0, {address:a,stakingToken:i,publicClient:o})));return{...s,refresh:()=>_optionalChain([s, 'optionalAccess', _323 => _323.mutate, 'optionalCall', _324 => _324()])}}var hp=(e,t)=>{let o=_hooks.usePublicClient.call(void 0, ),s=_swr2.default.call(void 0, o&&e?["useRewardVaultRewards",e]:null,async([,a])=>(_chunk2YBHAMDVcjs.c.call(void 0, o),await _chunk7ITWLMO7cjs.N.call(void 0, a,o)),{..._optionalChain([t, 'optionalAccess', _325 => _325.opts])});return{...s,refresh:()=>_optionalChain([s, 'optionalAccess', _326 => _326.mutate, 'optionalCall', _327 => _327()])}};var Ve=e=>{let t=[],o="";for(let r of e){if(!r.timestamp&&!r._timestamp)continue;let s=(_nullishCoalesce(_nullishCoalesce(_optionalChain([r, 'optionalAccess', _328 => _328.timestamp]), () => (_optionalChain([r, 'optionalAccess', _329 => _329._timestamp]))), () => (0)))*1e3,a=new Date(s),i=a.toDateString();if(i!==o){let n=new Date(a.setHours(0,0,0,0)).getTime()/1e3;t.push({...r,timestamp:n,_timestamp:n}),o=i}}return t};function FC({range:e}){let o=_swr2.default.call(void 0, e?["useStakedAPR",e]:null,async([,r])=>{let s=await _chunk7ITWLMO7cjs._.call(void 0, {range:r});return Ve(s.sort((i,n)=>i.timestamp-n.timestamp)).map(i=>({_timestamp:i.timestamp,apr:i.apr}))});return{...o,refresh:()=>o.mutate()}}var rI=e=>{let t=_chunk2EN6PPAWcjs.c.call(void 0, "swberaAprWindow"),o=_hooks.usePublicClient.call(void 0, ),{address:r}=_hooks.useBeraWallet.call(void 0, ),s=_react.useMemo.call(void 0, ()=>e.map(b=>b.receiptToken),[e]),a=_react.useMemo.call(void 0, ()=>e.map(b=>b.inputTokens[0]),[e]),i=t?["useStakedData:apr",t]:null,{data:n}=_swr2.default.call(void 0, i,async([,b])=>_chunk7ITWLMO7cjs.Z.call(void 0, {window:b}),{refreshInterval:1e5}),{data:l,isLoading:u}=Oe({tokens:s}),{getTokenPrice:m}=J({tokens:a}),p=o&&s.length>0?["useStakedData:exchangeRates",s]:null,{data:c}=_swr2.default.call(void 0, p,async([,b])=>(_chunk2YBHAMDVcjs.c.call(void 0, o),Promise.all(b.map(P=>_chunk7ITWLMO7cjs.V.call(void 0, {address:P.address,publicClient:o})))),{refreshInterval:1e5}),d=_react.useMemo.call(void 0, ()=>{if(!(!l||!c))return e.map((b,P)=>{let w=b.inputTokens[0],I=_nullishCoalesce(_optionalChain([l, 'access', _330 => _330.find, 'call', _331 => _331(Y=>Y.address===b.receiptToken.address), 'optionalAccess', _332 => _332.balance, 'access', _333 => _333.raw]), () => ("0")),T=_nullishCoalesce(c[P], () => (0)),S=_nullishCoalesce(m(w), () => (0)),H=new (0, _chunkNVHV2LDKcjs.a)(I).multipliedBy(T).dividedBy(10**w.decimals),v=H.multipliedBy(S);return{token:w,apr:_nullishCoalesce(n, () => (0)),stakedAmount:H.toNumber(),stakedAmountUsd:v.toNumber(),earnedAmount:0,earnedAmountUsd:0,isLoadingEarnings:!0}})},[l,c,e,n,m]),f=r&&o&&e.length>0?["useStakedData:positions",r,e]:null,{data:y,isLoading:A,isValidating:h}=_swr2.default.call(void 0, f,async([,b,P])=>(_chunk2YBHAMDVcjs.c.call(void 0, o),Promise.all(P.map(async w=>{let I=w.receiptToken,[T,S]=await Promise.all([_chunk7ITWLMO7cjs.P.call(void 0, {address:I.address,account:b}),_chunk7ITWLMO7cjs.V.call(void 0, {address:I.address,publicClient:o})]);return{earnings:T,exchangeRate:S}}))),{refreshInterval:1e4}),R=_react.useMemo.call(void 0, ()=>{if(!(!y||!l))return e.map((b,P)=>{let w=b.inputTokens[0],I=b.receiptToken,{earnings:T,exchangeRate:S}=y[P],O=_nullishCoalesce(m(w), () => (0)),H=_nullishCoalesce(_optionalChain([l, 'access', _334 => _334.find, 'call', _335 => _335(_e=>_e.address===I.address), 'optionalAccess', _336 => _336.balance, 'access', _337 => _337.raw]), () => ("0")),v=_nullishCoalesce(S, () => (0)),Y=new (0, _chunkNVHV2LDKcjs.a)(T.earningsTotal).minus(T.earningsRealized),F=new (0, _chunkNVHV2LDKcjs.a)(H).multipliedBy(v).minus(Y).dividedBy(10**w.decimals),G=Y.dividedBy(10**w.decimals),D=F.multipliedBy(O),q=G.multipliedBy(O);return{token:w,apr:_nullishCoalesce(n, () => (0)),stakedAmount:F.toNumber(),earnedAmount:G.toNumber(),stakedAmountUsd:D.toNumber(),earnedAmountUsd:q.toNumber()}})},[y,l,e,n,m]);return{balances:d,data:R,isLoading:u&&A,isLoadingBalances:u,isLoadingPositions:A,isValidatingPositions:h}};async function ps({address:e,range:t}){let o=new Date,r=new Date(o.getTime()-Number(t)*24*60*60*1e3),{config:s}=_chunk74WA35RIcjs.a.call(void 0, {}),a=`${s.staking}/vaults/${e}/total-assets-by-day?start=${r.toISOString().split("T")[0]}`;return _chunkNVHV2LDKcjs.d.call(void 0, {url:a,type:"rest"})}function mI({range:e,addresses:t}){let r=_swr2.default.call(void 0, e?["useStakedSnapshots",e,t]:null,async([,s,a])=>{let[...i]=await Promise.all([...a.map(async n=>{let l=await ps({address:n,range:s}),u=Ve(l.sort((m,p)=>m._timestamp-p._timestamp));return{[n]:u}})]);return i.reduce((n,l)=>({...n,...l}),{})});return{...r,refresh:()=>r.mutate()}}var bI=(e=[])=>{let t=_hooks.usePublicClient.call(void 0, ),o=_chunk2EN6PPAWcjs.g.call(void 0, ),r=e.length>0&&t&&o?["useStakingVaultMetadata",e,t,o]:null;return _swr2.default.call(void 0, r,async([,s,a,i])=>(_chunk2YBHAMDVcjs.c.call(void 0, a),Promise.all(s.map(n=>_chunk7ITWLMO7cjs.aa.call(void 0, {address:n.address,underlyingAsset:n.underlyingAsset,publicClient:a,blockTime:i})))),{refreshInterval:1e4})};function PI({vaultAddresses:e}){let t=_hooks.usePublicClient.call(void 0, ),o=_swr2.default.call(void 0, e&&t?["useTotalStakedAmount",e]:null,([,r])=>_chunk7ITWLMO7cjs.ca.call(void 0, {vaultAddresses:r,publicClient:t}));return{...o,refresh:()=>o.mutate()}}var vp=(e,t)=>{let{address:o}=_hooks.useBeraWallet.call(void 0, ),r=_hooks.usePublicClient.call(void 0, ),s=o&&r&&e.vaultAddress?["useUserVaultInfo",o,e.vaultAddress]:null,a=_swr2.default.call(void 0, s,async([,i,n])=>(_chunk2YBHAMDVcjs.c.call(void 0, r),_chunk7ITWLMO7cjs.fa.call(void 0, {account:i,vaultAddress:n,publicClient:r})),{...t,refreshInterval:_nullishCoalesce(_optionalChain([t, 'optionalAccess', _338 => _338.opts, 'optionalAccess', _339 => _339.refreshInterval]), () => (1e5))});return{...a,refresh:()=>a.mutate()}};var Up=e=>{let{address:t}=_hooks.useBeraWallet.call(void 0, ),o=_hooks.usePublicClient.call(void 0, ),s=_swr2.default.call(void 0, t&&o?["useUserVaults",t]:null,async([,a])=>(_chunk2YBHAMDVcjs.c.call(void 0, o),await _chunk7ITWLMO7cjs.ga.call(void 0, {account:a,publicClient:o})),{...e,refreshInterval:_nullishCoalesce(_optionalChain([e, 'optionalAccess', _340 => _340.opts, 'optionalAccess', _341 => _341.refreshInterval]), () => (1e5)),keepPreviousData:!0});return{...s,refresh:()=>_optionalChain([s, 'optionalAccess', _342 => _342.mutate, 'optionalCall', _343 => _343()])}};var WI=e=>{let t=_hooks.usePublicClient.call(void 0, );return _swr2.default.call(void 0, e&&t?["useVaultAddress",e]:null,async([,r])=>{_chunk2YBHAMDVcjs.c.call(void 0, t);let[s]=await Promise.all([_chunk7ITWLMO7cjs.Y.call(void 0, {address:r,publicClient:t})]);return{stakeToken:s,address:r}})};var YI=({vault:e,range:t,resolution:o})=>{let s=_swr2.default.call(void 0, e?["useVaultHistory",e,t,o]:null,([,a,i,n])=>_chunk7ITWLMO7cjs.ha.call(void 0, {vault:a,range:i,resolution:n}));return{...s,refresh:()=>s.mutate()}};var _p=(e,t)=>{let r=_swr2.default.call(void 0, e?["useVaultValidators",e]:null,async([,s])=>await _chunk7ITWLMO7cjs.ia.call(void 0, {address:s}),{..._optionalChain([t, 'optionalAccess', _344 => _344.opts])});return{...r,refresh:()=>r.mutate()}};function ms({address:e},t){let o=se({addressIn:e?[e]:void 0},t);return{...o,data:e?_optionalChain([o, 'access', _345 => _345.data, 'optionalAccess', _346 => _346[e.toLowerCase()]]):void 0}}function JI(e){return ms({address:_viem.zeroAddress},e)}var aE=(e,t)=>{let o=_hooks.usePublicClient.call(void 0, ),r=_optionalChain([e, 'optionalAccess', _347 => _347.address])&&o&&_viem.isAddress.call(void 0, e.address)?["useStakingTokenInformation",e.address]:null,s=_immutable2.default.call(void 0, r,async([a,i])=>_chunk74WA35RIcjs.e.call(void 0, i,"BERA")?{address:_viem.zeroAddress,decimals:_chunk74WA35RIcjs.b.decimals,name:_chunk74WA35RIcjs.b.name,symbol:_chunk74WA35RIcjs.b.symbol}:await Ne({address:i,publicClient:o}),{..._optionalChain([t, 'optionalAccess', _348 => _348.opts])});return{...s,refresh:()=>_optionalChain([s, 'optionalAccess', _349 => _349.mutate, 'optionalCall', _350 => _350()])}};function lE({token:e},t){let{isLoading:o,priceMap:r}=J({tokens:e?[e]:void 0},t);return{data:e?_optionalChain([r, 'access', _351 => _351[e.chainId], 'optionalAccess', _352 => _352[e.address.toLowerCase()]]):void 0,isLoading:o}}function fE({address:e}){let t=_hooks.usePublicClient.call(void 0, );return _swr2.default.call(void 0, e&&t?["useTotalSupply",e]:null,([,o])=>(_chunk2YBHAMDVcjs.c.call(void 0, t),t.readContract({address:o,abi:_viem.erc20Abi,functionName:"totalSupply",args:[]})))}function PE(e){let t=_hooks.usePublicClient.call(void 0, ),{config:o}=_chunk74WA35RIcjs.a.call(void 0, {chainId:_optionalChain([t, 'optionalAccess', _353 => _353.chain, 'access', _354 => _354.id])}),{data:r,isLoading:s}=_hooks.useBlockNumber.call(void 0, {cacheTime:_chunkNVHV2LDKcjs.m.call(void 0, o.averageBlockTime)}),{data:a}=_immutable2.default.call(void 0, r&&t&&Number(e)>0?["useBlockToTimestamp",e,r]:null,async([,n,l])=>(_chunk2YBHAMDVcjs.c.call(void 0, t),_chunk7ITWLMO7cjs.L.call(void 0, {block:n,currentBlock:l,blockTime:i,publicClient:t}))),i=_chunk2EN6PPAWcjs.g.call(void 0, );if(a)return Number(a.timestamp);if(!(s||!r))return Math.floor(_chunkNVHV2LDKcjs.l.call(void 0, Date.now())+i*(Number(e)-Number(r)))}var Ot={confirmState:"idle",txnHash:"",message:""},ds=(e,t)=>{switch(t.type){case"confirm_sending":return{...e,confirmState:"loading"};case"confirm_receipt":return{...e,confirmState:"success"};case"confirm_error":return{...e,confirmState:"fail"};case"confirm_submitting":return{...e,confirmState:"submitting"};case"confirm_reset":return{...Ot};default:return e}};function tm({onlyPermissionless:e,onSuccess:t,onError:o,onLoading:r,onWarning:s,onSubmission:a}={}){let[i,n]=_react.useReducer.call(void 0, ds,Ot),{account:l,onSmartAccountRejection:u}=_hooks.useBeraWagmi.call(void 0, ),m=_hooks.useConfig.call(void 0, ),p=_optionalChain([l, 'optionalAccess', _355 => _355.wallet, 'optionalAccess', _356 => _356.isContract])?6e4*10:12e4,c=_react.useCallback.call(void 0, ()=>{n({type:"confirm_reset"})},[]),d=_chunk2EN6PPAWcjs.c.call(void 0, "enableSimulateCalls"),f=_react.useCallback.call(void 0, y=>{if(e&&!y.permissionless){let A=new (0, _chunkDK42F2ZMcjs.c)({message:"Trying to send a non-permissionless transaction with an overridden account",displayMessage:"You can't send this transaction with an overridden account. Please reset the account in the settings popover.",level:"info",input:y});throw _optionalChain([s, 'optionalCall', _357 => _357(A,y)]),_optionalChain([o, 'optionalCall', _358 => _358(A,y)]),A}return _chunk7ITWLMO7cjs.ma.call(void 0, {wagmiConfig:m,...y,txConfirmationTimeout:p,enableSimulateCalls:d,onLoading(...A){n({type:"confirm_sending"}),_optionalChain([y, 'access', _359 => _359.onLoading, 'optionalCall', _360 => _360(y)]),_optionalChain([r, 'optionalCall', _361 => _361(...A)])},onWarning(...A){_optionalChain([y, 'access', _362 => _362.onWarning, 'optionalCall', _363 => _363(A[0],y)]),_optionalChain([s, 'optionalCall', _364 => _364(...A)])},onSubmission(...A){n({type:"confirm_submitting"}),_optionalChain([y, 'access', _365 => _365.onSubmission, 'optionalCall', _366 => _366(A[0],y)]),_optionalChain([a, 'optionalCall', _367 => _367(...A)])},onSuccess(...A){n({type:"confirm_receipt"}),_optionalChain([y, 'access', _368 => _368.onSuccess, 'optionalCall', _369 => _369(A[0],y)]),_optionalChain([t, 'optionalCall', _370 => _370(...A)])},onError(...A){n({type:"confirm_error"}),_optionalChain([y, 'access', _371 => _371.onError, 'optionalCall', _372 => _372(A[0],y)]),A[0].reason==="AtomicReadyWalletRejectedUpgradeError"&&u(),_optionalChain([o, 'optionalCall', _373 => _373(...A)])}})},[m,r,s,a,t,o,e,d]);return{isLoading:i.confirmState==="loading",isSubmitting:i.confirmState==="submitting",isSuccess:i.confirmState==="success",isError:i.confirmState==="fail",write:f,reset:c}}var om=tm;async function im(e){let t=await _chunkNVHV2LDKcjs.d.call(void 0, {url:`https://api.routescan.io/v2/network/testnet/evm/${_internal.chainId}/etherscan/api?module=contract&action=getabi&address=${e}`,type:"rest",name:"RouteScan"});if(t.status==="0")throw new Error(t.result);return t.result}var QE=e=>_immutable2.default.call(void 0, e&&_viem.isAddress.call(void 0, e)&&e!==_viem.zeroAddress?["useGetVerifiedAbi",e]:null,()=>e?im(e):Promise.resolve(""),{});function FE({key:e,defaultValue:t}){let o=_react.useCallback.call(void 0, ()=>{if(typeof window>"u")return t;let i=_optionalChain([window, 'access', _374 => _374.history, 'access', _375 => _375.state, 'optionalAccess', _376 => _376[e]]);return i!==void 0?i:t},[e,t]),[r,s]=_react.useState.call(void 0, o()),a=_react.useCallback.call(void 0, i=>{let n=o(),l=i instanceof Function?i(n):i,m={...window.history.state||{},[e]:l};window.history.replaceState(m,""),s(l)},[e,o]);return _react.useEffect.call(void 0, ()=>{if(_optionalChain([window, 'access', _377 => _377.history, 'access', _378 => _378.state, 'optionalAccess', _379 => _379[e]])===void 0){let l={...window.history.state||{},[e]:t};window.history.replaceState(l,"")}},[e,t]),[r,a]}function qE(e){let t=_react.useRef.call(void 0, void 0);return _react.useEffect.call(void 0, ()=>{t.current=e}),t.current}var cm=({variables:e}={})=>["useAllValidators",e],JE= exports.useAllValidators =(e,t)=>{let{config:o}=_chunk74WA35RIcjs.a.call(void 0, e),r=_swr2.default.call(void 0, cm({variables:e}),async([,s])=>await _chunk7ITWLMO7cjs.na.call(void 0, {variables:{chain:o.bex.chainName,...s}}),{refreshInterval:18e4,..._optionalChain([t, 'optionalAccess', _380 => _380.opts])});return{...r,refresh:()=>r.mutate()}};function oT({allocation:e}){return _swr2.default.call(void 0, e?["useApiEnrichedAllocation",e]:null,([,t])=>_chunk7ITWLMO7cjs.oa.call(void 0, {allocation:t}))}var Am=e=>e?["useApiValidator",e]:null,gs= exports.useApiValidator =(e,t)=>{let o=Am(e),r=_nullishCoalesce(_optionalChain([t, 'optionalAccess', _381 => _381.opts, 'optionalAccess', _382 => _382.isEnabled]), () => (!0)),s=_swr2.default.call(void 0, r&&e?o:null,async([,a])=>{if(!a||!_viem.isHex.call(void 0, a))throw new Error(`Invalid validator ID: ${a}`);return _chunk7ITWLMO7cjs.pa.call(void 0, {id:a})},{..._optionalChain([t, 'optionalAccess', _383 => _383.opts])});return{...s,refresh:()=>s.mutate()}};var _rewardAllocatorFactory = require('@berachain/abis/pol/rewards/rewardAllocatorFactory');async function ys({publicClient:e,...t}){let{config:o}=_chunk74WA35RIcjs.a.call(void 0, t),r=await e.readContract({abi:_rewardAllocatorFactory.rewardAllocatorFactoryAbi,address:o.pol.rewardAllocationFactory,functionName:"getBaselineAllocation"}),s=r.startBlock!==0n?await e.getBlock({blockNumber:r.startBlock}):{timestamp:0};return _chunk7ITWLMO7cjs.ra.call(void 0, r,Number(s.timestamp))}function yT(){let e=_hooks.usePublicClient.call(void 0, );return _swr2.default.call(void 0, e?["baselineRewardAllocation"]:null,()=>(_chunk2YBHAMDVcjs.c.call(void 0, e),ys({publicClient:e})))}var km=({pubKey:e,first:t=1})=>{let r=_swr2.default.call(void 0, e?["useDailyValidatorBlockStats",e,t]:null,async([,s,a])=>await _chunk7ITWLMO7cjs.qa.call(void 0, {pubKey:s,first:a}),{refreshInterval:18e4});return{...r,refresh:()=>r.mutate()}};function Im(e){let t=_hooks.usePublicClient.call(void 0, ),r=_swr2.default.call(void 0, t?["useDefaultRewardAllocation"]:null,async()=>(_chunk2YBHAMDVcjs.c.call(void 0, t),await _chunk7ITWLMO7cjs.va.call(void 0, {client:t})),{..._optionalChain([e, 'optionalAccess', _384 => _384.opts])});return{...r,refresh:()=>r.mutate()}}async function As({client:e,pubKey:t,...o}){let{config:r}=_chunk74WA35RIcjs.a.call(void 0, o);try{let s=await e.readContract({address:r.pol.beraChef,abi:_beraChef.beraChefAbi,functionName:"valRewardAllocator",args:[t]});return s===_viem.zeroAddress?null:s}catch(s){throw console.log("getValidatorRewardAllocatorAddress:",s),s}}function hs(e,t){return!e||!t?!1:_optionalChain([t, 'access', _385 => _385.operator, 'optionalAccess', _386 => _386.toLowerCase, 'call', _387 => _387()])===e.toLowerCase()}function vm(e,t){return!e||!t?!1:t.rewardAllocator?t.rewardAllocator.toLowerCase()===e.toLowerCase():hs(e,t)}function Om({pubKey:e,account:t},o){let r=_hooks.usePublicClient.call(void 0, ),s=_chunk2EN6PPAWcjs.c.call(void 0, "mockValidatorOperator"),a=_chunk2EN6PPAWcjs.c.call(void 0, "mockValidatorRewardAllocator"),i=r&&e?["useManagedValidatorRole",e]:null,{address:n}=_hooks.useBeraWallet.call(void 0, ),l=_nullishCoalesce(t, () => (n)),u=_swr2.default.call(void 0, i,async([,c])=>{_chunk2YBHAMDVcjs.c.call(void 0, r);let[d,f]=await Promise.all([_chunk7ITWLMO7cjs.Da.call(void 0, {client:r,pubKey:c}),As({client:r,pubKey:c})]);return{operator:_nullishCoalesce(d, () => (null)),rewardAllocator:f}},{..._optionalChain([o, 'optionalAccess', _388 => _388.opts])}),m=_react.useMemo.call(void 0, ()=>s||hs(l,u.data),[l,s,u.data]),p=_react.useMemo.call(void 0, ()=>a||vm(l,u.data),[l,a,u.data]);return{...u,data:u.data?{...u.data,hasOperatorRole:m,hasRewardAllocatorRole:p}:void 0,refresh:()=>u.mutate()}}var _beaconDeposit = require('@berachain/abis/pol/beaconDeposit');var Rs=({pubkey:e},t)=>{let o=_hooks.usePublicClient.call(void 0, ),r=e?["useOnChainValidator",e]:null,s=_nullishCoalesce(_optionalChain([t, 'access', _389 => _389.opts, 'optionalAccess', _390 => _390.isEnabled]), () => (!0)),a=_swr2.default.call(void 0, s&&o?r:null,async([,i])=>{_chunk2YBHAMDVcjs.c.call(void 0, o);let{config:n}=_chunk74WA35RIcjs.a.call(void 0, {chainId:o.chain.id}),[l,u,m]=await Promise.all([o.readContract({address:n.depositContract,abi:_beaconDeposit.beaconDepositAbi,functionName:"getOperator",args:[i]}),_optionalChain([o, 'optionalAccess', _391 => _391.readContract, 'call', _392 => _392({address:n.tokens.bgt,abi:_bgt.bgtAbi,functionName:"boostees",args:[i]})]),o.readContract({address:n.pol.beraChef,abi:_beraChef.beraChefAbi,functionName:"getActiveRewardAllocation",args:[i]})]);return{id:_viem.keccak256.call(void 0, i),pubkey:i,operator:l,votingPower:Number(u)}});return{...a,refresh:()=>{a.mutate()}}};var ZT=({valPubKey:e,options:t})=>{let o=_hooks.usePublicClient.call(void 0, ),s=(_nullishCoalesce(_optionalChain([t, 'optionalAccess', _393 => _393.opts, 'optionalAccess', _394 => _394.isEnabled]), () => (!0)))&&o&&e?["useStakingPoolBatch",e]:null,a=_swr2.default.call(void 0, s,async([,i])=>(_chunk2YBHAMDVcjs.c.call(void 0, o),await _chunk7ITWLMO7cjs.wa.call(void 0, {client:o,valPubKey:i})),{refreshInterval:1e4,..._optionalChain([t, 'optionalAccess', _395 => _395.opts])});return{...a,refresh:()=>a.mutate()}};var Fm=e=>{let{address:t}=_hooks.useBeraWallet.call(void 0, ),o=_hooks.usePublicClient.call(void 0, ),s=_swr2.default.call(void 0, o&&t?["useUserActiveValidators",t]:null,async([,a])=>await _chunk7ITWLMO7cjs.ya.call(void 0, {account:a,publicClient:o}),{...e,refreshInterval:_nullishCoalesce(_optionalChain([e, 'optionalAccess', _396 => _396.opts, 'optionalAccess', _397 => _397.refreshInterval]), () => (18e4)),keepPreviousData:!0});return{...s,refresh:()=>_optionalChain([s, 'optionalAccess', _398 => _398.mutate, 'optionalCall', _399 => _399()])}};var $m=({pubkey:e,...t})=>{let{address:o}=_hooks.useBeraWallet.call(void 0, ),r=_hooks.usePublicClient.call(void 0, ),s=_nullishCoalesce(t.account, () => (o)),i=_swr2.default.call(void 0, s&&e?["useUserBoostsOnValidator",e,s]:null,async([,n,l])=>await _chunk7ITWLMO7cjs.xa.call(void 0, {account:l,pubkey:n,publicClient:r}),{refreshInterval:1e5});return{...i,refresh:()=>i.mutate()}};var ws=e=>{let t=new Set;return e.forEach(o=>{Array.isArray(o.rewards)&&o.rewards.forEach(r=>{r.token&&t.add(r.token)})}),t};var Jm=()=>{let{address:e}=_hooks.useBeraWallet.call(void 0, ),o=_swr2.default.call(void 0, e?["useUserClaimableIncentives",e]:null,async([,l])=>{if(!l)throw new (0, _chunkNMH7LHPWcjs.f)({message:"useUserClaimableIncentives needs a logged in account",level:"error"});return await _chunk7ITWLMO7cjs.da.call(void 0, {account:l})},{revalidateOnFocus:!1,revalidateOnReconnect:!1,revalidateIfStale:!1,refreshInterval:18e4}),r=_optionalChain([o, 'optionalAccess', _400 => _400.data]),s=_react.useMemo.call(void 0, ()=>{if(r){if(!Array.isArray(r)){_chunk2YBHAMDVcjs.g.captureException(new (0, _chunkNMH7LHPWcjs.f)({message:"Incorrect aggregated incentives data receieved.",level:"error",extra:{allRewards:r,account:e}}));return}return ws(r)}},[r,e]),i=_swr2.default.call(void 0, e&&r?["useUserClaimableIncentives",e,r]:null,async([,l,u])=>{if(!l)throw new (0, _chunkNMH7LHPWcjs.h)({property:"account",value:l,expected:"Address"});if(!u)return[];if(!Array.isArray(u))throw new (0, _chunkNMH7LHPWcjs.h)({message:"Incorrect aggregated incentives data receieved to calculate proofs.",property:"allRewards",value:u,expected:"Array",level:"error"});let m=new Set(u.map(c=>c.validator)),p=Array.from(m);return await Promise.all(p.map(async c=>({...await _chunk7ITWLMO7cjs.U.call(void 0, {account:l,validator:c,page:1,perPage:1e4}),validator:c})))},{revalidateOnFocus:!1,revalidateOnReconnect:!1,revalidateIfStale:!1,refreshInterval:18e4}),n=_react.useCallback.call(void 0, ()=>{_optionalChain([o, 'optionalAccess', _401 => _401.mutate, 'call', _402 => _402()]),_optionalChain([i, 'optionalAccess', _403 => _403.mutate, 'call', _404 => _404()])},[o,i]);return{...i,isLoading:_optionalChain([o, 'optionalAccess', _405 => _405.isLoading])||_optionalChain([i, 'optionalAccess', _406 => _406.isLoading]),tokenMap:s,refresh:n}};var RS=({account:e,validatorAddress:t})=>{let r=_immutable2.default.call(void 0, e?["useUserStakingPositions",e,t]:null,async([s,a,i])=>{let n=await _chunk7ITWLMO7cjs.za.call(void 0, a);return i?n.filter(l=>l.validatorAddress.toLowerCase()===i.toLowerCase()):n});return{...r,refresh:()=>{r.mutate()}}};function IS({pubkey:e},t){let{data:{validator:o,uptime:r}={},isLoading:s,error:a}=gs(_viem.keccak256.call(void 0, e),t),{data:i,isLoading:n,error:l}=Rs({pubkey:e},t);return{data:{uptime:r,validator:o||i?{...o,...i,operator:_nullishCoalesce(_optionalChain([i, 'optionalAccess', _407 => _407.operator]), () => (_optionalChain([o, 'optionalAccess', _408 => _408.operator]))),dynamicData:{activeBoostAmount:_nullishCoalesce(_nullishCoalesce(_optionalChain([i, 'optionalAccess', _409 => _409.dynamicData, 'optionalAccess', _410 => _410.activeBoostAmount]), () => (_optionalChain([o, 'optionalAccess', _411 => _411.dynamicData, 'optionalAccess', _412 => _412.activeBoostAmount]))), () => ("")),queuedBoostAmount:_nullishCoalesce(_optionalChain([o, 'optionalAccess', _413 => _413.dynamicData, 'optionalAccess', _414 => _414.queuedBoostAmount]), () => ("")),usersActiveBoostCount:_nullishCoalesce(_optionalChain([o, 'optionalAccess', _415 => _415.dynamicData, 'optionalAccess', _416 => _416.usersActiveBoostCount]), () => (0)),usersQueuedBoostCount:_nullishCoalesce(_optionalChain([o, 'optionalAccess', _417 => _417.dynamicData, 'optionalAccess', _418 => _418.usersQueuedBoostCount]), () => (0)),allTimeDistributedBGTAmount:_nullishCoalesce(_optionalChain([o, 'optionalAccess', _419 => _419.dynamicData, 'optionalAccess', _420 => _420.allTimeDistributedBGTAmount]), () => ("0")),rewardRate:_nullishCoalesce(_nullishCoalesce(_optionalChain([i, 'optionalAccess', _421 => _421.dynamicData, 'optionalAccess', _422 => _422.rewardRate]), () => (_optionalChain([o, 'optionalAccess', _423 => _423.dynamicData, 'optionalAccess', _424 => _424.rewardRate]))), () => ("")),stakedBeraAmount:_nullishCoalesce(_optionalChain([o, 'optionalAccess', _425 => _425.dynamicData, 'optionalAccess', _426 => _426.stakedBeraAmount]), () => ("")),lastDayDistributedBGTAmount:_nullishCoalesce(_optionalChain([o, 'optionalAccess', _427 => _427.dynamicData, 'optionalAccess', _428 => _428.lastDayDistributedBGTAmount]), () => ("")),activeBoostAmountRank:_nullishCoalesce(_optionalChain([o, 'optionalAccess', _429 => _429.dynamicData, 'optionalAccess', _430 => _430.activeBoostAmountRank]), () => (0)),boostApr:_nullishCoalesce(_optionalChain([o, 'optionalAccess', _431 => _431.dynamicData, 'optionalAccess', _432 => _432.boostApr]), () => (0)),commissionOnIncentives:_nullishCoalesce(_optionalChain([o, 'optionalAccess', _433 => _433.dynamicData, 'optionalAccess', _434 => _434.commissionOnIncentives]), () => (0))},id:_nullishCoalesce(_optionalChain([i, 'optionalAccess', _435 => _435.id]), () => (_optionalChain([o, 'optionalAccess', _436 => _436.id]))),pubkey:_nullishCoalesce(_optionalChain([i, 'optionalAccess', _437 => _437.pubkey]), () => (_optionalChain([o, 'optionalAccess', _438 => _438.pubkey]))),metadata:_nullishCoalesce(_optionalChain([i, 'optionalAccess', _439 => _439.metadata]), () => (_optionalChain([o, 'optionalAccess', _440 => _440.metadata]))),rewardAllocationWeights:_nullishCoalesce(_nullishCoalesce(_optionalChain([i, 'optionalAccess', _441 => _441.rewardAllocationWeights]), () => (_optionalChain([o, 'optionalAccess', _442 => _442.rewardAllocationWeights]))), () => ([]))}:null},isLoading:s||n,error:a||l}}function od({pubkey:e,dayRange:t}){let r=_swr2.default.call(void 0, e&&t?["useValidatorAnalytics",e,t]:null,async([,s,a])=>await _chunk7ITWLMO7cjs.Aa.call(void 0, {pubkey:s,dayRange:a}),{refreshInterval:18e4});return{...r,refresh:()=>r.mutate()}}var ad=(e,t)=>{let o=_hooks.usePublicClient.call(void 0, ),s=_swr2.default.call(void 0, o&&e?["useValidatorCommission",e]:null,async([,a])=>await _chunk7ITWLMO7cjs.Ba.call(void 0, {client:o,pubKey:a}),{..._optionalChain([t, 'optionalAccess', _443 => _443.opts])});return{...s,refresh:()=>s.mutate()}};var nd=e=>{let{data:t,isLoading:o}=ls(),r=_chunk2EN6PPAWcjs.g.call(void 0, );return{data:t?_chunk7ITWLMO7cjs.Ca.call(void 0, e,Number(_optionalChain([t, 'optionalAccess', _444 => _444.totalStakedBeraAmount])),r):void 0,isLoading:o}};function ud(e,t){let o=_hooks.usePublicClient.call(void 0, ),s=_swr2.default.call(void 0, o&&e?["useValidatorQueuedCommission",e]:null,async([,a])=>(_chunk2YBHAMDVcjs.c.call(void 0, o),await _chunk7ITWLMO7cjs.Ea.call(void 0, {client:o,pubKey:a})),{..._optionalChain([t, 'optionalAccess', _445 => _445.opts])});return{...s,refresh:()=>s.mutate()}}var dd=(e,t)=>{let o=_hooks.usePublicClient.call(void 0, ),s=_swr2.default.call(void 0, o&&e?["useValidatorQueuedOperatorAddress",e]:null,async([,a])=>await _chunk7ITWLMO7cjs.Fa.call(void 0, {client:o,pubKey:a}),{..._optionalChain([t, 'optionalAccess', _446 => _446.opts])});return{...s,refresh:()=>s.mutate()}};var gd=(e,t)=>{let o=_hooks.usePublicClient.call(void 0, ),s=_swr2.default.call(void 0, o&&e?["useValidatorQueuedRewardAllocation",e]:null,async([,a])=>await _chunk7ITWLMO7cjs.Ga.call(void 0, {client:o,pubKey:a}),{..._optionalChain([t, 'optionalAccess', _447 => _447.opts])});return{...s,refresh:()=>s.mutate()}};function bd(e,t){let o=_hooks.usePublicClient.call(void 0, ),s=_swr2.default.call(void 0, o&&e?["useValidatorRewardAllocation",e]:null,async([,a])=>await _chunk7ITWLMO7cjs.ta.call(void 0, {client:o,pubKey:a}),{..._optionalChain([t, 'optionalAccess', _448 => _448.opts])});return{...s,refresh:()=>s.mutate()}}exports.OracleMode = La; exports.USE_AGGREGATORS_QUOTES_QUERY_KEY = cr; exports.reducer = is; exports.useAggregatorsQuotes = jf; exports.useAggregatorsRouterFeeBps = ke; exports.useAllUserPools = fr; exports.useAllUserPoolsQueryKey = Ca; exports.useAllValidators = JE; exports.useAllValidatorsQueryKey = cm; exports.useApiEnrichedAllocation = oT; exports.useApiPool = gr; exports.useApiPoolQueryKey = Ta; exports.useApiValidator = gs; exports.useApiValidatorQueryKey = Am; exports.useBaselineRewardAllocation = yT; exports.useBendDemultiply = Sb; exports.useBendMultiply = Gb; exports.useBendZapSupply = uh; exports.useBendZapSupplyHelper = Di; exports.useBeraContractWrite = om; exports.useBeraCurrentPrice = JI; exports.useBexStatus = _chunk2EN6PPAWcjs.e; exports.useBgtAprSimulation = gP; exports.useBgtUnstakedBalance = Nu; exports.useBlockToTimestamp = PE; exports.useCappedGlobally = Xr; exports.useCappedRelatively = es; exports.useClaimableFees = Mu; exports.useCollateralWeights = ok; exports.useCreatePool = wg; exports.useCreateProposal = il; exports.useDailyValidatorBlockStats = km; exports.useDefaultRewardAllocation = Im; exports.useEnsoSwapBundle = Bh; exports.useEnsoUserTokensWithBalances = _chunk2EN6PPAWcjs.m; exports.useExploitedTokens = Og; exports.useExploitedTokensQueryKey = Ya; exports.useGetConvertToAssets = zo; exports.useGetPastVotes = mR; exports.useGetVerifiedAbi = QE; exports.useGlobalLiquidityAndSwapVolume = Ga; exports.useHasVoted = hR; exports.useHighestVaultsAPR = NP; exports.useHistoryState = FE; exports.useHoneyAlerts = Lk; exports.useHoneyBalances = ts; exports.useHoneyChartData = Vk; exports.useHoneyGlobalData = Yk; exports.useHoneySwapState = sP; exports.useHoneyVaultsBalance = os; exports.useIsBadCollateralAsset = rs; exports.useIsBasketModeEnabled = as; exports.useIsCanceller = SR; exports.useLiquidityMismatch = _g; exports.useLpPosition = ky; exports.useManagedValidatorRole = Om; exports.useMultipleTokenApprovalsWithSlippage = En; exports.useMultipleTokenInformation = xr; exports.useOnChainPoolData = Br; exports.useOnChainPoolDataQueryKey = _n; exports.useOnChainValidator = Rs; exports.usePollAllProposals = LR; exports.usePollAllProposalsQueryKey = xl; exports.usePollAllowances = Tr; exports.usePollBalance = Ie; exports.usePollGlobalData = ls; exports.usePollMarkets = KP; exports.usePollMarketsQueryKey = Zu; exports.usePollPoolCreationRelayerApproval = Gn; exports.usePollProposal = MR; exports.usePollProposalThreshold = zR; exports.usePollProposalVotes = XR; exports.usePollProposalVotesQueryKey = Vl; exports.usePollUserDelegates = iw; exports.usePollWalletBalances = Oe; exports.usePool = yA; exports.usePoolEvents = RA; exports.usePoolHistoricalData = IA; exports.usePools = OA; exports.usePoolsQueryKey = jn; exports.usePrevious = qE; exports.usePriceImpact = Te; exports.useProposalFromTx = dw; exports.useProposalSnapshot = qr; exports.useProposalState = bw; exports.useProposalTimelockState = Cw; exports.usePythLatestPrices = ne; exports.usePythUpdateFee = mP; exports.useQueuedBeraUnlock = XP; exports.useQuorum = Lw; exports.useRewardTokenToBeraRate = lC; exports.useRewardVault = TC; exports.useRewardVaultBalanceFromStakingToken = Pr; exports.useRewardVaultFromToken = At; exports.useRewardVaultIncentives = DC; exports.useRewardVaultQueryKey = fp; exports.useRewardVaultRewards = hp; exports.useRewardVaults = Bt; exports.useRewardVaultsQueryKey = Gu; exports.useSingleAggregatorQuote = ya; exports.useStakedAPR = FC; exports.useStakedData = rI; exports.useStakedSnapshots = mI; exports.useStakingPoolBatch = ZT; exports.useStakingTokenInformation = aE; exports.useStakingVaultsMetadata = bI; exports.useTokenCurrentPrice = ms; exports.useTokenCurrentPrices = se; exports.useTokenInformation = Cr; exports.useTokenPrice = lE; exports.useTokenPrices = J; exports.useTokens = oe; exports.useTotalStakedAmount = PI; exports.useTotalSupply = fE; exports.useUserActiveValidators = Fm; exports.useUserBoostsOnValidator = $m; exports.useUserClaimableIncentives = Jm; exports.useUserStakingPositions = RS; exports.useUserVaultInfo = vp; exports.useUserVaults = Up; exports.useValidator = IS; exports.useValidatorAnalytics = od; exports.useValidatorCommission = ad; exports.useValidatorEstimatedBgtPerYear = nd; exports.useValidatorQueuedCommission = ud; exports.useValidatorQueuedOperatorAddress = dd; exports.useValidatorQueuedRewardAllocation = gd; exports.useValidatorRewardAllocation = bd; exports.useVaultAddress = WI; exports.useVaultHistory = YI; exports.useVaultValidators = _p; exports.useZapStakeBera = Vh;
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(); } } 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 _class2; var _class3; var _class4; var _class5; var _class6; var _class7; var _class8; var _class9; var _class10; var _class11; var _class12;var _chunkRWOICHRWcjs = require('../chunk-RWOICHRW.cjs');var _chunk4TALWNXEcjs = require('../chunk-4TALWNXE.cjs');var _chunkJSTCUTXPcjs = require('../chunk-JSTCUTXP.cjs');require('../chunk-OUD27MU7.cjs');var _chunkRCWM55DEcjs = require('../chunk-RCWM55DE.cjs');var _chunkXZC34BHMcjs = require('../chunk-XZC34BHM.cjs');require('../chunk-OIYXOKTT.cjs');require('../chunk-D6L7LTA2.cjs');require('../chunk-XNJLSA6P.cjs');var _chunkREWME3FYcjs = require('../chunk-REWME3FY.cjs');var _chunkY2FETC6Tcjs = require('../chunk-Y2FETC6T.cjs');var _chunk33XNWMPPcjs = require('../chunk-33XNWMPP.cjs');var _chunkBE6B4PQFcjs = require('../chunk-BE6B4PQF.cjs');var _chunk6DIA6PXVcjs = require('../chunk-6DIA6PXV.cjs');require('../chunk-DDEQFR3M.cjs');var _chunk54BTOQE3cjs = require('../chunk-54BTOQE3.cjs');var _chunkQVIAMSZ6cjs = require('../chunk-QVIAMSZ6.cjs');require('../chunk-S4CDSVLK.cjs');var _chunk6JJIZCVYcjs = require('../chunk-6JJIZCVY.cjs');var _swr = require('swr'); var _swr2 = _interopRequireDefault(_swr);var _hooks = require('@berachain/wagmi/hooks');var Uo=({sharesAmount:e,vaultAddress:o,vaultChainId:t},r)=>{let s=_hooks.usePublicClient.call(void 0, {chainId:t}),a=_swr2.default.call(void 0, s&&e&&o?["useGetConvertToAssets",e,o,t]:null,async([n,i,l])=>(_chunk33XNWMPPcjs.b.call(void 0, s),_chunk4TALWNXEcjs.a.call(void 0, {sharesAmount:i,vaultAddress:l,publicClient:s})),{..._optionalChain([r, 'optionalAccess', _2 => _2.opts])});return{...a,refresh:()=>{a.mutate()}}};var _react = require('react');var _viem = require('viem');var _internal = require('@berachain/config/internal');var _berancersdk = require('@berachain-foundation/berancer-sdk');var _config = require('@berachain/config');var _vault = require('@berachain/abis/bex/vault');var ms=300,cs=.05,Qe=_berancersdk.SwapKind.GivenIn,_e= (_class =class extends _chunk4TALWNXEcjs.b{constructor(...args2) { super(...args2); _class.prototype.__init.call(this);_class.prototype.__init2.call(this);_class.prototype.__init3.call(this);_class.prototype.__init4.call(this); }__init() {this.name="Hub Pools"}__init2() {this.supportedChains=[_internal.ChainId.MAINNET,_internal.ChainId.BEPOLIA]}__init3() {this.url=_config.getUriFromLink.call(void 0, this.config.api)}__init4() {this.type="graphql"}convertZeroToWrapped(o){return _chunk54BTOQE3cjs.d.call(void 0, o,"BERA")?this.config.tokens.wbera:o}calculatePriceImpact(o){return o.error?(console.error("Swap price impact error",o),0):Number(o.priceImpact)}checkStalePrices({onChainAmount:o,sorPaths:t,sorAmount:r,queryData:s}){let a=Number.parseFloat(_viem.formatEther.call(void 0, o.scale18))/Number.parseFloat(r);if(Math.abs(1-a)>cs){console.warn("SOR returned stale prices. Delta from return amount is more than 5%",{deltaFromSorAmount:a});let n=new (0, _chunk6JJIZCVYcjs.f)({reason:"SOR_STALE_PRICES",level:"warning",message:"SOR returned stale prices. Delta from return amount is more than 5%",extra:{deltaFromSorAmount:a,pools:t.map(i=>i.pools),onChainAmount:_viem.formatEther.call(void 0, o.scale18),sorAmount:r,queryData:s},fingerprint:["SOR_STALE_PRICES"]});_chunkY2FETC6Tcjs.b.captureException(n)}}async getQuote(o){let t=new (0, _chunk4TALWNXEcjs.c)(this.url,this.chainId),{tokenIn:r,tokenOut:s,amount:a,slippage:n,account:i=_viem.zeroAddress,publicClient:l}=o;this.assertChainSupport({tokenIn:r,tokenOut:s}),_chunk33XNWMPPcjs.b.call(void 0, l);let u=_chunk54BTOQE3cjs.d.call(void 0, r,"BERA")||_chunk54BTOQE3cjs.d.call(void 0, s,"BERA"),d=new (0, _berancersdk.Token)(this.chainId,this.convertZeroToWrapped(r.address),r.decimals),p=new (0, _berancersdk.Token)(this.chainId,this.convertZeroToWrapped(s.address),s.decimals),m=_berancersdk.TokenAmount.fromRawAmount(d,a),{paths:c,priceImpact:f,returnAmount:y}=await t.sorSwapPaths.fetchSorSwapPaths({chainId:this.chainId,tokenIn:d.address,tokenOut:p.address,swapKind:Qe,swapAmount:m});if(!_optionalChain([c, 'optionalAccess', _3 => _3.length]))throw new (0, _chunk6JJIZCVYcjs.g)({response:void 0,endpoint:{url:this.url,name:this.name,type:this.type},reason:_chunk4TALWNXEcjs.b.PATH_NOT_FOUND_REASON,chainId:this.chainId,payload:{tokenIn:d.address,tokenOut:p.address,swapKind:Qe,swapAmount:m},message:"No swap paths returned from Balancer API"});let g=new (0, _berancersdk.Swap)({chainId:this.chainId,paths:c,swapKind:Qe,userData:"0x"}),b=await g.query(l.transport.url);if(!("expectedAmountOut"in b))throw new Error("No Bex paths found");return this.checkStalePrices({onChainAmount:b.expectedAmountOut,sorPaths:c,sorAmount:y,queryData:o}),{amountOut:b.expectedAmountOut.amount.toString(),amountIn:a,allowanceRequirements:this.parseAllowanceRequirements({tokenIn:r,rawAmount:a,spender:b.to}),name:this.name,priceImpactPercentage:this.calculatePriceImpact(f),swapFeeBps:0,getCalldata:({account:R})=>{let h=g.buildCall({slippage:_berancersdk.Slippage.fromPercentage(n.toString()),deadline:BigInt(Math.round(Date.now()/1e3)+ms),queryOutput:b,sender:R,recipient:R,wethIsEth:u}),{args:C,functionName:k}=_viem.decodeFunctionData.call(void 0, {abi:_vault.vaultAbi,data:h.callData});return{params:C,functionName:k,abi:_vault.vaultAbi,address:h.to,value:h.value||BigInt(0)}}}}}, _class),Ye=new _e;var Fe= (_class2 =class extends _chunk4TALWNXEcjs.b{constructor(...args3) { super(...args3); _class2.prototype.__init5.call(this);_class2.prototype.__init6.call(this);_class2.prototype.__init7.call(this); }__init5() {this.name="RedeemBgt"}__init6() {this.supportedChains=[_internal.ChainId.MAINNET,_internal.ChainId.BEPOLIA]}__init7() {this.type="rpc"}checkChainSupport({tokenIn:o,tokenOut:t}){return super.checkChainSupport({tokenIn:o,tokenOut:t})?o.chainId===t.chainId&&_chunk54BTOQE3cjs.d.call(void 0, o,"BGT",{chainId:o.chainId})&&_chunk54BTOQE3cjs.d.call(void 0, t,"BERA"):!1}async getQuote({tokenIn:o,amount:t}){if(this.assertChainSupport({tokenIn:o,tokenOut:{..._chunk54BTOQE3cjs.a,chainId:o.chainId}}),!_chunk54BTOQE3cjs.d.call(void 0, o,"BGT",{config:this.config}))throw new (0, _chunk6JJIZCVYcjs.h)({property:"tokenIn",value:o,expected:"BGT",level:"warning"});return{amountOut:t,amountIn:t,allowanceRequirements:[],name:"RedeemBgt",isNativeSwap:!0,swapFeeBps:0}}}, _class2),_o=new Fe;var _metaAggregatorV2 = require('@berachain/abis/meta-aggregator/metaAggregatorV2'); var _metaAggregatorV22 = _interopRequireDefault(_metaAggregatorV2);var Ge= (_class3 =class extends _chunk4TALWNXEcjs.b{constructor(...args4) { super(...args4); _class3.prototype.__init8.call(this);_class3.prototype.__init9.call(this);_class3.prototype.__init10.call(this);_class3.prototype.__init11.call(this);_class3.prototype.__init12.call(this); }__init8() {this.name="Enso"}__init9() {this.supportedChains=[_internal.ChainId.MAINNET]}__init10() {this.type="rest"}__init11() {this.needsAccountForQuote=!0}__init12() {this.notFoundMessages=["Could not build shortcuts for route","Could not quote shortcuts for route","Swap not found for a required underlying of defi route,","No route found from"]}async getQuote({tokenIn:o,tokenOut:t,amount:r,slippage:s,account:a=_viem.zeroAddress,aggregatorsFeeBps:n,proxyAggregatorsThroughVercel:i=!1,rewardVault:l}){this.assertChainSupport({tokenIn:o,tokenOut:t});let{tokenInAddress:u,tokenOutAddress:d,isTokenInNative:p,isTokenOutNative:m}=this.parseAddresses(o.address,t.address),c=this.getAmountAfterFees(r,n);this.url=i?"/api/aggregators?aggregator=enso":`${this.config.bex.aggregatorsProxyUrl}/enso/api/v1/shortcuts/route?`;let f=new URL(this.url);f.searchParams.set("fromAddress",this.config.bex.aggregatorsRouterExecutor),f.searchParams.set("receiver",this.config.bex.aggregatorsRouterExecutor),f.searchParams.set("spender",this.config.bex.aggregatorsRouterExecutor),f.searchParams.set("amountIn",c),f.searchParams.set("tokenIn",u),f.searchParams.set("tokenOut",d),f.searchParams.set("chainId",_internal.ChainId.MAINNET.toString()),f.searchParams.set("slippage",(Number(s)*100).toString()),f.searchParams.set("refundReceiver",a);let g=await(await this.fetch(f)).json(),b=this.getInputData({tokenIn:u,amountIn:r,isNative:p}),R={tokenOut:d,receiver:a,minAmountOut:this.getMinAmountOut(g.amountOut.toString(),s),isNative:m},h={aggregator:_optionalChain([g, 'access', _4 => _4.tx, 'optionalAccess', _5 => _5.to]),data:_optionalChain([g, 'access', _6 => _6.tx, 'optionalAccess', _7 => _7.data])};return{amountOut:g.amountOut.toString(),amountIn:r,allowanceRequirements:this.parseAllowanceRequirements({tokenIn:o,rawAmount:r,spender:this.config.bex.aggregatorsRouter}),name:this.name,swapFeeBps:n,getCalldata:()=>({params:[b,R,h,{rewardVault:_nullishCoalesce(l, () => (_viem.zeroAddress)),isSwapAndStake:!!l}],functionName:"swap",abi:_metaAggregatorV22.default,value:BigInt(p?r:"0"),address:this.config.bex.aggregatorsRouter})}}}, _class3),qe=new Ge;var _wberaStakerVault = require('@berachain/abis/pol/wberaStakerVault');var Ke= (_class4 =class extends _chunk4TALWNXEcjs.b{constructor(...args5) { super(...args5); _class4.prototype.__init13.call(this);_class4.prototype.__init14.call(this);_class4.prototype.__init15.call(this); }__init13() {this.name="Mint"}__init14() {this.supportedChains=null}__init15() {this.type="rpc"}checkChainSupport({tokenIn:o,tokenOut:t,underlyingToken:r}){return super.checkChainSupport({tokenIn:o,tokenOut:t,underlyingToken:r})&&!!r&&_optionalChain([r, 'optionalAccess', _8 => _8.chainId])===t.chainId&&(_chunk54BTOQE3cjs.d.call(void 0, r,o)||_chunk54BTOQE3cjs.d.call(void 0, o,"BERA")&&_chunk54BTOQE3cjs.d.call(void 0, t,"SWBERA"))}async getQuote({tokenIn:o,tokenOut:t,amount:r,underlyingToken:s,publicClient:a}){this.assertChainSupport({tokenIn:o,tokenOut:t,underlyingToken:s}),_chunk33XNWMPPcjs.a.call(void 0, s,"underlyingToken"),_chunk33XNWMPPcjs.b.call(void 0, a);let n=await a.readContract({address:t.address,abi:_viem.erc4626Abi,functionName:"convertToShares",args:[BigInt(r)]}),i=_chunk54BTOQE3cjs.d.call(void 0, t,"SWBERA")&&_chunk54BTOQE3cjs.d.call(void 0, o,"BERA");return{amountOut:n.toString(),amountIn:r,allowanceRequirements:i?[]:[{token:o,spender:t.address,amount:{raw:r,formatted:_viem.formatUnits.call(void 0, BigInt(r),o.decimals)}}],name:"Mint",isNativeSwap:!1,swapFeeBps:0,getCalldata:({account:l})=>i?{abi:_wberaStakerVault.wberaStakerVaultAbi,address:t.address,functionName:"depositNative",params:[BigInt(r),l],value:BigInt(r)}:{abi:_viem.erc4626Abi,address:t.address,functionName:"deposit",contractName:"others.erc4626",params:[BigInt(r),l],value:0n}}}}, _class4),$e=new Ke;var qo="https://api.fly.trade/aggregator",ze= (_class5 =class extends _chunk4TALWNXEcjs.b{constructor(...args6) { super(...args6); _class5.prototype.__init16.call(this);_class5.prototype.__init17.call(this);_class5.prototype.__init18.call(this);_class5.prototype.__init19.call(this); }__init16() {this.name="Fly"}__init17() {this.supportedChains=[_internal.ChainId.MAINNET]}__init18() {this.type="rest"}__init19() {this.notFoundMessages=["Couldn't recognize to token","Couldn't recognize from token","There is not enough liquidity. Amount is too high.","Routes were not found"]}async getQuote({tokenIn:o,tokenOut:t,amount:r,slippage:s,account:a,aggregatorsFeeBps:n,rewardVault:i}){this.assertChainSupport({tokenIn:o,tokenOut:t});let{tokenInAddress:l,tokenOutAddress:u,isTokenInNative:d,isTokenOutNative:p}=this.parseAddresses(o.address,t.address),m=this.getAmountAfterFees(r,n),c=new URL(`${qo}/quote`);this.url=c.toString();let f=new URLSearchParams({fromTokenAddress:l,toTokenAddress:u,sellAmount:m,slippage:(s/100).toString(),gasless:"false",network:"berachain"});f.set("fromAddress",this.config.bex.aggregatorsRouterExecutor),f.set("toAddress",this.config.bex.aggregatorsRouterExecutor),c.search=f.toString();let g=await(await this.fetch(c)).json(),b={amountOut:g.amountOut,amountIn:r,allowanceRequirements:this.parseAllowanceRequirements({tokenIn:o,rawAmount:r,spender:this.config.bex.aggregatorsRouter}),name:this.name,swapFeeBps:_nullishCoalesce(n, () => (0))},R=new URL(`${qo}/transaction`);this.url=R.toString();let h=new URLSearchParams({quoteId:g.id,estimateGas:"false"});R.search=h.toString();let k=await(await this.fetch(R)).json();return{...b,getCalldata:({account:I})=>{let T=this.getInputData({tokenIn:l,amountIn:r,isNative:d}),x={tokenOut:u,receiver:I,minAmountOut:this.getMinAmountOut(g.amountOut,s),isNative:p},v={aggregator:_optionalChain([k, 'optionalAccess', _9 => _9.to]),data:_optionalChain([k, 'optionalAccess', _10 => _10.data])};return{params:[T,x,v,{rewardVault:_nullishCoalesce(i, () => (_viem.zeroAddress)),isSwapAndStake:!!i}],functionName:"swap",abi:_metaAggregatorV22.default,value:_chunk54BTOQE3cjs.d.call(void 0, o,"BERA")?BigInt(r):BigInt("0"),address:this.config.bex.aggregatorsRouter}}}}}, _class5),Ze=new ze;var je= (_class6 =class extends _chunk4TALWNXEcjs.b{constructor(...args7) { super(...args7); _class6.prototype.__init20.call(this);_class6.prototype.__init21.call(this);_class6.prototype.__init22.call(this);_class6.prototype.__init23.call(this); }__init20() {this.name="Haiku"}__init21() {this.supportedChains=[_internal.ChainId.MAINNET]}__init22() {this.type="rest"}__init23() {this.notFoundMessages=["token not found","Token is not supported","No route found for the given input or the liquidity is not enough","Invalid input amount. Please ensure the total amount of input is greater than 0.001 USD"]}async getQuote({tokenIn:o,tokenOut:t,amount:r,slippage:s,aggregatorsFeeBps:a,proxyAggregatorsThroughVercel:n=!1,referrer:i,rewardVault:l}){if(o.decimals===void 0||t.decimals===void 0)throw new (0, _chunk6JJIZCVYcjs.f)({message:"Missing required params",level:"error"});this.assertChainSupport({tokenIn:o,tokenOut:t});let{tokenInAddress:u,tokenOutAddress:d,isTokenInNative:p,isTokenOutNative:m}=this.parseAddresses(o.address,t.address),c=this.getAmountAfterFees(r,a),f={intent:{allowancesMode:"approve",slippage:s/100,receiver:this.config.bex.aggregatorsRouterExecutor,input_positions:{[`bera:${u}`]:_viem.formatUnits.call(void 0, BigInt(c),o.decimals)},target_weights:{[`bera:${d}`]:1}}},y=i==="ZAP"?"zap-haiku":"haiku";this.url=n?"/api/aggregators?aggregator=haikuQuote":`${this.config.bex.aggregatorsProxyUrl}/${y}/v1/quoteIntent`;let b=await(await this.fetch(this.url,{method:"POST",headers:{"Content-Type":"application/json"},body:JSON.stringify(f)})).json(),R={amountOut:_viem.parseUnits.call(void 0, b.balances[0].amount,t.decimals).toString(),amountIn:r,allowanceRequirements:this.parseAllowanceRequirements({tokenIn:o,rawAmount:r,spender:this.config.bex.aggregatorsRouter}),name:this.name,swapFeeBps:a};this.url=n?"/api/aggregators?aggregator=haikuSolve":`${this.config.bex.aggregatorsProxyUrl}/${y}/v1/solveIntent`;let C=await(await this.fetch(this.url,{method:"POST",headers:{"Content-Type":"application/json"},body:JSON.stringify({quoteId:b.quoteId})})).json();return{...R,getCalldata:({account:k})=>{let I=this.getInputData({tokenIn:u,amountIn:r,isNative:p,isPermit2Approval:!0,permit2SpenderAddress:this.config.bex.haikuAgentAddress}),T={tokenOut:d,receiver:k,minAmountOut:this.getMinAmountOut(R.amountOut,s),isNative:m},x={aggregator:C.to,data:C.data};return{params:[I,T,x,{rewardVault:_nullishCoalesce(l, () => (_viem.zeroAddress)),isSwapAndStake:!!l}],functionName:"swap",abi:_metaAggregatorV22.default,value:BigInt(p?r:"0"),address:this.config.bex.aggregatorsRouter}}}}}, _class6),Je=new je;function Ts(e){return e?"previewMintHoney":"previewRedeemCollaterals"}var Xe= (_class7 =class extends _chunk4TALWNXEcjs.b{constructor(...args8) { super(...args8); _class7.prototype.__init24.call(this);_class7.prototype.__init25.call(this);_class7.prototype.__init26.call(this);_class7.prototype.__init27.call(this); }__init24() {this.name="Honey"}__init25() {this.supportedChains=[_internal.ChainId.MAINNET]}__init26() {this.type="rpc"}__init27() {this.honeyToken=_chunk54BTOQE3cjs.c.call(void 0, this)}isHoneyNativeSwap({tokenIn:o,tokenOut:t,honeyNativeState:r,...s}){if(!_optionalChain([r, 'optionalAccess', _11 => _11.collateralList]))return!1;let a=_chunk54BTOQE3cjs.d.call(void 0, t,"HONEY",s),n=_chunk54BTOQE3cjs.d.call(void 0, o,"HONEY",s);return!a&&!n?!1:r.collateralList.some(i=>_chunk54BTOQE3cjs.d.call(void 0, i.address,a?o:t))}checkChainSupport({tokenIn:o,tokenOut:t,honeyNativeState:r}){return super.checkChainSupport({tokenIn:o,tokenOut:t})&&o.chainId===t.chainId&&this.isHoneyNativeSwap({tokenIn:o.address,tokenOut:t.address,honeyNativeState:r})}async getQuote({tokenIn:o,tokenOut:t,amount:r,publicClient:s,account:a,honeyNativeState:n}){let{collateralList:i}=_nullishCoalesce(n, () => ({}));if(!i)throw new (0, _chunk6JJIZCVYcjs.h)({message:"Invalid Honey Context state",property:"collaterals",value:i,expected:"TokenWithOrder[]"});_chunk33XNWMPPcjs.b.call(void 0, s),this.assertChainSupport({tokenIn:o,tokenOut:t});let l=_chunk54BTOQE3cjs.d.call(void 0, t,this.honeyToken),u=i,d=i.find(I=>_chunk54BTOQE3cjs.d.call(void 0, I.address,l?o.address:t.address));if(!d)throw new (0, _chunk6JJIZCVYcjs.f)({message:"This collateral is not part of the Honey protocol"});let[p,m]=await Promise.all([_chunk4TALWNXEcjs.t.call(void 0, {client:s,collateralList:[d]}),_chunk4TALWNXEcjs.y.call(void 0, {client:s,isMint:l,collateralList:i,latestPrices:void 0,isPythWrapperEnabled:!1})]);if(!p)throw new (0, _chunk6JJIZCVYcjs.f)({message:"Failed to fetch the Honey vault balances"});if(m)return;let c=p[0],f=d.order;u.length>1&&f!==0&&(u.splice(f,1),u.unshift(d));let y=_viem.formatUnits.call(void 0, BigInt(r),l?d.decimals:this.honeyToken.decimals),g={client:s,collateral:d,collateralList:i,amount:y,method:Ts(l),latestPrices:void 0,isPythWrapperEnabled:!1},b=await _chunk4TALWNXEcjs.s.call(void 0, g);if(!b)throw new (0, _chunk6JJIZCVYcjs.f)({message:"Failed to fetch the Honey preview"});let{honey:R,collaterals:h}=b;if(!(l?!0:new (0, _chunk6DIA6PXVcjs.a)(_nullishCoalesce(_optionalChain([c, 'optionalAccess', _12 => _12.balance, 'access', _13 => _13.formatted]), () => ("0"))).gte(_viem.formatUnits.call(void 0, h[d.address],d.decimals))))return;let k=await _chunk4TALWNXEcjs.x.call(void 0, {state:{actionType:l?"mint":"redeem",fromAmount:[y],collaterals:u,isBasketModeEnabled:!1},collateralList:u,publicClient:s,priceFeedMap:void 0,isPythWrapperEnabled:!1});if(!k&&a)throw new (0, _chunk6JJIZCVYcjs.f)({message:"Failed to fetch the Honey swap payload"});return{amountIn:r,amountOut:l?R.toString():h[d.address].toString(),allowanceRequirements:this.parseAllowanceRequirements({tokenIn:o,rawAmount:r,spender:this.config.bex.aggregatorsRouter}),name:"Honey",swapFeeBps:0,getCalldata:({account:I})=>k({account:I})}}}, _class7),et=new Xe;var tt= (_class8 =class extends _chunk4TALWNXEcjs.b{constructor(...args9) { super(...args9); _class8.prototype.__init28.call(this);_class8.prototype.__init29.call(this);_class8.prototype.__init30.call(this);_class8.prototype.__init31.call(this); }__init28() {this.name="KyberSwap"}__init29() {this.supportedChains=[_internal.ChainId.MAINNET]}__init30() {this.type="rest"}__init31() {this.notFoundMessages=["token not found","route not found","amountIn is greater than max allowed"]}async getQuote({tokenIn:o,tokenOut:t,amount:r,slippage:s,aggregatorsFeeBps:a,proxyAggregatorsThroughVercel:n=!1,rewardVault:i}){this.assertChainSupport({tokenIn:o,tokenOut:t});let{isTokenInNative:l,isTokenOutNative:u,tokenInAddress:d,tokenOutAddress:p}=this.parseAddresses(o.address,t.address),m=this.getAmountAfterFees(r,a);this.url=n?"/api/aggregators?aggregator=kyberswapRoutes":`${this.config.bex.aggregatorsProxyUrl}/kyberswap/berachain/api/v1/routes`;let c=new URL(this.url);c.searchParams.set("tokenIn",d),c.searchParams.set("tokenOut",p),c.searchParams.set("amountIn",m),c.searchParams.set("slippageTolerance",(s/100).toString()),c.searchParams.set("to",this.config.bex.aggregatorsRouterExecutor),c.searchParams.set("clientData",JSON.stringify({source:"berachain"}));let y=await(await this.fetch(c)).json(),g={amountOut:y.data.routeSummary.amountOut,amountIn:r,name:this.name,swapFeeBps:a,allowanceRequirements:this.parseAllowanceRequirements({tokenIn:o,rawAmount:r,spender:this.config.bex.aggregatorsRouter})},b={routeSummary:y.data.routeSummary,sender:this.config.bex.aggregatorsRouterExecutor,recipient:this.config.bex.aggregatorsRouterExecutor,slippageTolerance:s*100,deadline:Math.floor(Date.now()/1e3)+300,source:"berachain"},R=c.searchParams.entries(),h=new URL(n?"/api/aggregators?aggregator=kyberswapBuild":`${this.config.bex.aggregatorsProxyUrl}/kyberswap/berachain/api/v1/route/build`);for(let[T,x]of R)h.searchParams.set(T,x);let k=await(await this.fetch(h,{method:"POST",body:JSON.stringify(b)})).json(),I=this.getInputData({tokenIn:d,amountIn:r,isNative:l});return{...g,getCalldata:({account:T})=>{let x={tokenOut:p,receiver:T,minAmountOut:this.getMinAmountOut(g.amountOut,s),isNative:u},v={aggregator:k.data.routerAddress,data:k.data.data};return{params:[I,x,v,{rewardVault:_nullishCoalesce(i, () => (_viem.zeroAddress)),isSwapAndStake:!!i}],functionName:"swap",abi:_metaAggregatorV22.default,value:BigInt(l?r:"0"),address:this.config.bex.aggregatorsRouter}}}}}, _class8),ot=new tt;var rt= (_class9 =class extends _chunk4TALWNXEcjs.b{constructor(...args10) { super(...args10); _class9.prototype.__init32.call(this);_class9.prototype.__init33.call(this);_class9.prototype.__init34.call(this); }__init32() {this.name="Oogabooga"}__init33() {this.supportedChains=[_internal.ChainId.MAINNET]}__init34() {this.type="rest"}async getQuote({tokenIn:o,tokenOut:t,amount:r,slippage:s,aggregatorsFeeBps:a,proxyAggregatorsThroughVercel:n=!1,rewardVault:i}){this.assertChainSupport({tokenIn:o,tokenOut:t});let{tokenInAddress:l,tokenOutAddress:u,isTokenInNative:d,isTokenOutNative:p}=this.parseAddresses(o.address,t.address),m=this.getAmountAfterFees(r,a),c=new URLSearchParams({tokenIn:l,tokenOut:u,amount:m,slippage:(s/100).toString(),to:this.config.bex.aggregatorsRouterExecutor,referrer:this.config.bex.aggregatorsRouter});this.url=n?`/api/aggregators?aggregator=oogabooga&${c.toString()}`:`${this.config.bex.aggregatorsProxyUrl}/oogabooga/v1/swap?${c.toString()}`;let y=await(await this.fetch(this.url)).json(),g={amountOut:y.assumedAmountOut,amountIn:r,allowanceRequirements:this.parseAllowanceRequirements({tokenIn:o,spender:this.config.bex.aggregatorsRouter,rawAmount:r}),name:this.name,priceImpactPercentage:y.priceImpact,swapFeeBps:a};return{...g,getCalldata:({account:b})=>{let R=this.getInputData({tokenIn:l,amountIn:r,isNative:d}),h={tokenOut:u,receiver:b,minAmountOut:this.getMinAmountOut(g.amountOut,s),isNative:p},C={aggregator:_optionalChain([y, 'access', _14 => _14.tx, 'optionalAccess', _15 => _15.to]),data:_optionalChain([y, 'access', _16 => _16.tx, 'optionalAccess', _17 => _17.data])};return{params:[R,h,C,{rewardVault:_nullishCoalesce(i, () => (_viem.zeroAddress)),isSwapAndStake:!!i}],functionName:"swap",abi:_metaAggregatorV22.default,value:BigInt(d?r:"0"),address:this.config.bex.aggregatorsRouter}}}}}, _class9),st=new rt;var at= (_class10 =class extends _chunk4TALWNXEcjs.b{constructor(...args11) { super(...args11); _class10.prototype.__init35.call(this);_class10.prototype.__init36.call(this);_class10.prototype.__init37.call(this);_class10.prototype.__init38.call(this);_class10.prototype.__init39.call(this); }__init35() {this.name="OpenOcean"}__init36() {this.supportedChains=[_internal.ChainId.MAINNET]}__init37() {this.type="rest"}__init38() {this.url="https://open-api.openocean.finance/v4/bera/swap"}__init39() {this.notFoundMessages=["No avail liquidity for the pair"]}async getQuote({tokenIn:o,tokenOut:t,amount:r,slippage:s,account:a=_viem.zeroAddress,aggregatorsFeeBps:n,publicClient:i,rewardVault:l}){if(_chunk33XNWMPPcjs.b.call(void 0, i),!o.decimals)throw new (0, _chunk6JJIZCVYcjs.h)({property:"tokenIn.decimals",value:o.decimals,expected:"number",chainId:this.chainId});this.assertChainSupport({tokenIn:o,tokenOut:t});let u=this.getAmountAfterFees(r,n),{tokenInAddress:d,tokenOutAddress:p,isTokenInNative:m,isTokenOutNative:c}=this.parseAddresses(o.address,t.address),f=(await i.getGasPrice()).toString(),y=new URLSearchParams({chain:_internal.ChainId.MAINNET.toString(),inTokenAddress:d,outTokenAddress:p,amountDecimals:u,slippage:s<.01?"0.01":s.toString(),account:this.config.bex.aggregatorsRouterExecutor,referrer:this.config.bex.aggregatorsRouter,gasPrice:f}),g=await this.fetch(`${this.url}?${y.toString()}`),b=await g.json();if(b.code!==200||!b.data){let h=this.notFoundMessages.some(C=>b.error.includes(C));throw new (0, _chunk6JJIZCVYcjs.g)({response:g,endpoint:{url:this.url,name:this.name,type:this.type},cause:b,reason:h?_chunk4TALWNXEcjs.b.PATH_NOT_FOUND_REASON:b.error})}let R={amountOut:b.data.outAmount,amountIn:r,allowanceRequirements:this.parseAllowanceRequirements({tokenIn:o,rawAmount:r,spender:this.config.bex.aggregatorsRouter}),name:this.name,swapFeeBps:n};return{...R,getCalldata:({account:h})=>{let C=this.getInputData({tokenIn:d,amountIn:r,isNative:m}),k={tokenOut:p,receiver:h,minAmountOut:this.getMinAmountOut(R.amountOut,s),isNative:c},I={aggregator:b.data.to,data:b.data.data};return{params:[C,k,I,{rewardVault:_nullishCoalesce(l, () => (_viem.zeroAddress)),isSwapAndStake:!!l}],functionName:"swap",abi:_metaAggregatorV22.default,value:BigInt(m?r:"0"),address:this.config.bex.aggregatorsRouter}}}}}, _class10),nt=new at;var _wbera = require('@berachain/abis/wbera');var it= (_class11 =class extends _chunk4TALWNXEcjs.b{constructor(...args12) { super(...args12); _class11.prototype.__init40.call(this);_class11.prototype.__init41.call(this);_class11.prototype.__init42.call(this); }__init40() {this.name="Wrap"}__init41() {this.supportedChains=[_internal.ChainId.MAINNET,_internal.ChainId.BEPOLIA]}__init42() {this.type="rpc"}checkChainSupport({tokenIn:o,tokenOut:t}){return o.chainId!==t.chainId||!super.checkChainSupport({tokenIn:o,tokenOut:t})?!1:_chunk54BTOQE3cjs.d.call(void 0, o,"BERA")&&_chunk54BTOQE3cjs.d.call(void 0, t,"WBERA")||_chunk54BTOQE3cjs.d.call(void 0, o,"WBERA")&&_chunk54BTOQE3cjs.d.call(void 0, t,"BERA")}async getQuote({tokenIn:o,tokenOut:t,amount:r}){this.assertChainSupport({tokenIn:o,tokenOut:t});let s=_chunk54BTOQE3cjs.d.call(void 0, o,"BERA")&&_chunk54BTOQE3cjs.d.call(void 0, t,"WBERA");return{amountOut:r,amountIn:r,allowanceRequirements:[],name:s?"Wrap":"Unwrap",isNativeSwap:!0,swapFeeBps:0,getCalldata:()=>s?{abi:_wbera.wberaAbi,address:this.config.tokens.wbera,functionName:"deposit",params:[],value:BigInt(r)}:{abi:_wbera.wberaAbi,address:this.config.tokens.wbera,functionName:"withdraw",params:[BigInt(r)],value:BigInt(0)}}}}, _class11),lt=new it;var _immutable = require('swr/immutable'); var _immutable2 = _interopRequireDefault(_immutable);var _core = require('@wagmi/core');async function Jo({token:e,wagmiConfig:o}){try{if(_chunk54BTOQE3cjs.d.call(void 0, e,"BERA"))return null;let t=_core.getPublicClient.call(void 0, o,{chainId:e.chainId});_chunk33XNWMPPcjs.b.call(void 0, t);let r=await t.readContract({address:e.address,abi:_viem.erc4626Abi,functionName:"asset"});return _chunk4TALWNXEcjs.m.call(void 0, {address:r,publicClient:t,chainId:e.chainId})}catch(t){let r=_chunkY2FETC6Tcjs.a.call(void 0, {cause:t});if(r.reason==='The contract function "asset" reverted.')return null;throw r}}function Xo({token:e}){let o=_hooks.useConfig.call(void 0, );return _immutable2.default.call(void 0, e&&o&&!_chunk54BTOQE3cjs.d.call(void 0, e,"BERA")?["useUnderlyingAsset",e]:null,async([,t])=>Jo({token:t,wagmiConfig:o}))}var Re=()=>{let e=_hooks.usePublicClient.call(void 0, ),{config:o}=_chunkQVIAMSZ6cjs.a.call(void 0, {chainId:_optionalChain([e, 'access', _18 => _18.chain, 'optionalAccess', _19 => _19.id])}),t=_immutable2.default.call(void 0, e&&o.bex.aggregatorsRouter&&o.bex.aggregatorsRouter!==_viem.zeroAddress?["useAggregatorsRouterFeeBps",o.bex.aggregatorsRouter]:null,async([,r])=>{let s=await e.readContract({address:r,abi:_metaAggregatorV22.default,functionName:"SWAP_FEE_RATE"});return Number(s)});return{...t,refresh:t.mutate}};var er="useAggregatorsQuotes";function Ks({aggregator:e,account:o,args:t,feeBps:r,options:s,activeAggregators:a,isMAEnabled:n}){if(_optionalChain([s, 'optionalAccess', _20 => _20.opts, 'optionalAccess', _21 => _21.isEnabled])!==void 0&&!_optionalChain([s, 'optionalAccess', _22 => _22.opts, 'optionalAccess', _23 => _23.isEnabled])||!Number(t.amount)||!e.checkChainSupport({tokenIn:t.tokenIn,tokenOut:t.tokenOut,underlyingToken:t.underlyingToken,honeyNativeState:t.honeyNativeState}))return null;let i=e.name,l=!["Hub Pools","Honey","Wrap","Unwrap","Mint"].includes(i);if(!n&&l)return null;let{tokenIn:u,tokenOut:d,amount:p,slippage:m,referrer:c,rewardVault:f}=t,y=_viem.parseUnits.call(void 0, p,u.decimals).toString();if(!(e.name==="Wrap"||e.name==="RedeemBgt"||e.name==="Honey"||!a||a.includes(i.toLowerCase().replaceAll(" ","")))||e.name==="Honey"&&_optionalChain([t, 'access', _24 => _24.honeyNativeState, 'optionalAccess', _25 => _25.protocol, 'access', _26 => _26.isPaused]))return null;let b=e.name==="Mint"||e.name==="Enso (Mint)";return l&&r===void 0?null:[er,i,u,d,y,m,e.needsAccountForQuote?o:void 0,l?r:0,c,f,b?t.underlyingToken:void 0,e.name==="Honey"?_optionalChain([t, 'access', _27 => _27.honeyNativeState, 'optionalAccess', _28 => _28.collateralList]):void 0]}function $s({aggregator:e,publicClient:o,proxyAggregatorsThroughVercel:t}){return async([,,r,s,a,n,i,l,u,d,p,m])=>e.getQuote({tokenIn:r,tokenOut:s,amount:a,slippage:n,account:i,aggregatorsFeeBps:l,publicClient:o,proxyAggregatorsThroughVercel:t,referrer:u,rewardVault:d,underlyingToken:p,honeyNativeState:{collateralList:_nullishCoalesce(m, () => ([]))}})}function M({feeBps:e,publicClient:o,account:t,proxyAggregatorsThroughVercel:r,activeAggregators:s,isMAEnabled:a,...n},i){return _swr2.default.call(void 0, Ks({aggregator:n.aggregator,account:t,args:n,feeBps:e,options:i,activeAggregators:s,isMAEnabled:a}),$s({aggregator:n.aggregator,proxyAggregatorsThroughVercel:r,publicClient:o}),_optionalChain([i, 'optionalAccess', _29 => _29.opts]))}function ut(e){return{refreshInterval:1e4,errorRetryCount:3,..._optionalChain([e, 'optionalAccess', _30 => _30.opts]),onErrorRetry(o,t,r,s,a){if(_optionalChain([e, 'optionalAccess', _31 => _31.opts, 'optionalAccess', _32 => _32.onErrorRetry, 'optionalCall', _33 => _33(o,t,r,s,a)]),!(o instanceof _chunk6JJIZCVYcjs.f&&o.reason===_chunk4TALWNXEcjs.b.PATH_NOT_FOUND_REASON)){if(o instanceof _chunk6JJIZCVYcjs.g&&o.statusCode===403){console.warn(t[1],"returned error 403, stopping retries");return}a.retryCount>(_nullishCoalesce(r.errorRetryCount, () => (3)))||setTimeout(()=>{s()},_nullishCoalesce(r.errorRetryInterval, () => (_chunk6DIA6PXVcjs.m.call(void 0, 10))))}}}}function zs(e,o){let{address:t}=_hooks.useBeraWallet.call(void 0, ),r=_chunkRCWM55DEcjs.c.call(void 0, "proxyAggregatorsThroughVercel"),s=_chunkRCWM55DEcjs.c.call(void 0, "aggregators"),a=_hooks.usePublicClient.call(void 0, ),{data:n}=Re();if(e.aggregator.name!=="Wrap"&&!((_chunk54BTOQE3cjs.d.call(void 0, e.tokenIn.address,"BERA")||_chunk54BTOQE3cjs.d.call(void 0, e.tokenIn.address,"WBERA"))&&(_chunk54BTOQE3cjs.d.call(void 0, e.tokenOut.address,"BERA")||_chunk54BTOQE3cjs.d.call(void 0, e.tokenOut.address,"WBERA"))))return null;let{config:i}=_chunkQVIAMSZ6cjs.a.call(void 0, e),l=i.bex.aggregatorsRouter!==_viem.zeroAddress;return M({...e,aggregator:e.aggregator,feeBps:n,activeAggregators:s,account:t,isMAEnabled:l,publicClient:a,proxyAggregatorsThroughVercel:r},{...o,opts:ut(o)})}var ta=[st,Ze,ot,nt,Je,qe,Ye,et,$e];function Ic(e,o){let{address:t}=_hooks.useBeraWallet.call(void 0, ),r=_chunkRCWM55DEcjs.c.call(void 0, "proxyAggregatorsThroughVercel"),s=_chunkRCWM55DEcjs.c.call(void 0, "aggregators"),a=_hooks.usePublicClient.call(void 0, ),{data:n}=Re(),i=(_chunk54BTOQE3cjs.d.call(void 0, e.tokenIn.address,"BERA")||_chunk54BTOQE3cjs.d.call(void 0, e.tokenIn.address,"WBERA"))&&(_chunk54BTOQE3cjs.d.call(void 0, e.tokenOut.address,"BERA")||_chunk54BTOQE3cjs.d.call(void 0, e.tokenOut.address,"WBERA")),l=_chunk54BTOQE3cjs.d.call(void 0, e.tokenIn.address,"BGT",{chainId:_internal.defaultChainId}),{data:u}=Xo({token:e.tokenOut}),d=i||l,{config:p}=_chunkQVIAMSZ6cjs.a.call(void 0, e),m=p.bex.aggregatorsRouter!==_viem.zeroAddress,c=ut(o),f={activeAggregators:s,isMAEnabled:m,underlyingToken:u,isNativeSwap:d,account:t,publicClient:a,proxyAggregatorsThroughVercel:r,feeBps:n},y=M({...f,...e,aggregator:st},{opts:c}),g=M({...f,...e,aggregator:Ze},{opts:c}),b=M({...f,...e,aggregator:$e},{opts:c}),R=M({...f,...e,aggregator:ot},{opts:c}),h=M({...f,...e,aggregator:nt},{opts:c}),C=M({...f,...e,aggregator:Je},{opts:c}),k=M({...f,...e,aggregator:qe},{opts:c}),{protocol:I}=_chunkRCWM55DEcjs.e.call(void 0, ),T=M({...f,...e,aggregator:Ye},{opts:{...c,isEnabled:I.isPaused===!1}}),x=M({...f,...e,aggregator:lt}),v=M({...f,...e,aggregator:_o},{opts:c}),H=M({...f,...e,aggregator:et},{opts:c}),O=i?[x]:l?[v]:[y,b,g,R,h,C,k,H,I.isPaused===!1?T:null].filter(Q=>Q!==null);return{..._react.useMemo.call(void 0, ()=>{let Q=O.reduce((D,G)=>D||G.error,void 0),q=O.map((D,G)=>D.isLoading?d?lt.name:ta[G].name:null).filter(Boolean),Y=O.filter(D=>D!==void 0&&!D.isLoading&&!D.error&&_optionalChain([D, 'access', _34 => _34.data, 'optionalAccess', _35 => _35.amountOut])).map(({data:D})=>D),F=Y.length===0&&q.length>0;return{quotes:Y,loadingAggregatorsNames:q,isLoading:F,error:Q}},[O]),refresh:()=>O.map(Q=>Q.mutate())}}var ra=({query:e}={})=>["useAllUserPools",e],tr= exports.useAllUserPools =(e,o)=>{let t=_swr2.default.call(void 0, ra({query:e}),async([r,s])=>_chunk4TALWNXEcjs.d.call(void 0, {...s,fetchPolicy:"no-cache"}),{refreshInterval:18e4,..._optionalChain([o, 'optionalAccess', _36 => _36.opts])});return{...t,refresh:()=>{t.mutate()}}};var na=({poolId:e,account:o})=>e?["usePool-api",e,o]:null;function or({poolId:e,account:o}){let t=_swr2.default.call(void 0, na({poolId:e,account:o}),async([,r,s])=>{if(s&&!_viem.isAddress.call(void 0, s))throw new (0, _chunk6JJIZCVYcjs.h)({property:"account",value:s,expected:"Address"});return _chunk4TALWNXEcjs.e.call(void 0, {poolId:r,account:s})},{refreshInterval:1e5});return{...t,refresh:()=>{t.mutate()}}}var _poolCreationHelper = require('@berachain/abis/bex/poolCreationHelper');var _subgraph = require('@berachain/graphql/dex/subgraph');var pt=e=>[...e].sort((o,t)=>o.address.toLowerCase().localeCompare(t.address.toLowerCase())),sr=e=>e.length===0?"":pt(e).map(o=>o.symbol).join(" | "),ar=(e,o,t)=>{let r;return t===_berancersdk.PoolType.ComposableStable?r="STABLE":r=t.toString().toUpperCase(),t===_berancersdk.PoolType.Weighted?o.length===0?"":`${pt(e).map((s,a)=>{let n=o[a];return`${(Number.parseFloat(_viem.formatUnits.call(void 0, n,18))*100).toFixed(0)}${s.symbol}`}).join("-")}-${r}`:`${pt(e).map(s=>s.symbol).join("-")}-${r}`};var ma=.005,ca= exports.OracleMode =(t=>(t.None="None",t.Custom="Custom",t))(ca||{}),fa=({poolCreationHelper:e,poolCreateTokens:o,initialLiquidityTokens:t,swapFeePercentage:r,salt:s,poolName:a,poolSymbol:n,owner:i,amplification:l,oracles:u,message:d,actionType:p,gasLimit:m=_chunk6DIA6PXVcjs.j})=>{let c=o.map(k=>k.address.toLowerCase()).sort((k,I)=>k<I?-1:1),f=c.map(k=>{let I=t.find(O=>O.address.toLowerCase()===k||_chunk54BTOQE3cjs.d.call(void 0, k,"WBERA")&&_chunk54BTOQE3cjs.d.call(void 0, O.address,"BERA")),T=I?_viem.parseUnits.call(void 0, I.amount,I.decimals):0n,x=u.find(O=>O.tokenAddress.toLowerCase()===k.toLowerCase()),v=x?x.address:_viem.zeroAddress,H=BigInt(x?x.cacheDuration:100);return{amountIn:T,rateProvider:v,cacheDuration:H}}),y=f.map(k=>k.amountIn),g=f.map(k=>k.rateProvider),b=f.map(k=>k.cacheDuration),R=t.findIndex(k=>_chunk54BTOQE3cjs.d.call(void 0, k.address,"BERA")),h=R!==-1?_viem.parseUnits.call(void 0, t[R].amount,t[R].decimals):0n,C=h>0n;return{address:e,abi:_poolCreationHelper.poolCreationHelperAbi,functionName:"createAndJoinStablePool",params:[a,n,c,BigInt(l),g,b,!1,r,y,i,s,C],message:d,actionType:p,value:h,gasLimit:m,track:{eventName:"hub_pool_create",eventData:{poolName:a,poolSymbol:n}}}},ga=({poolCreationHelper:e,poolCreateTokens:o,initialLiquidityTokens:t,normalizedWeights:r,swapFeePercentage:s,salt:a,poolName:n,poolSymbol:i,owner:l,message:u,actionType:d,gasLimit:p=_chunk6DIA6PXVcjs.j})=>{let m=[],c=[],f=[],y=[];o.map((R,h)=>({createToken:R.address,joinToken:t[h].address,weight:r[h],amountIn:_viem.parseUnits.call(void 0, t[h].amount,t[h].decimals)})).sort((R,h)=>R.createToken.toLowerCase()<h.createToken.toLowerCase()?-1:1).forEach(R=>{m.push(R.createToken),c.push(R.joinToken),f.push(R.weight),y.push(R.amountIn)});let g=c.indexOf(_viem.zeroAddress),b=g!==-1?y[g]:0n;return{address:e,abi:_poolCreationHelper.poolCreationHelperAbi,functionName:"createAndJoinWeightedPool",params:[n,i,m,c,f,Array(m.length).fill(_viem.zeroAddress),s,y,l,a],message:u,actionType:d,value:b,gasLimit:p,track:{eventName:"hub_pool_create",eventData:{poolName:n,poolSymbol:i}}}},zc= exports.useCreatePool =({poolCreateTokens:e,initialLiquidityTokens:o,normalizedWeights:t,poolType:r,poolName:s,poolSymbol:a,swapFee:n,owner:i,amplification:l,oracles:u,weightsDuplicationThreshold:d=ma,...p})=>{let{data:m,error:c,isLoading:f}=_immutable2.default.call(void 0, ["useCreatePool__deduped_pool",e,r,t],async()=>{if(e.length===0||!r)return null;let R=_chunkJSTCUTXPcjs.b.call(void 0, "bex.subgraph",{});try{let h=_chunkBE6B4PQFcjs.b.call(void 0, e).map(I=>I.address.toLowerCase()).sort((I,T)=>I.toLowerCase()<T.toLowerCase()?-1:1);return await _asyncNullishCoalesce(await _asyncOptionalChain([(await R.query({query:_subgraph.GetDedupedSubgraphPools,variables:{tokens:h,type:r}})), 'access', async _37 => _37.data, 'access', async _38 => _38.pools, 'access', async _39 => _39.filter, 'call', async _40 => _40(I=>_optionalChain([I, 'access', _41 => _41.tokens, 'optionalAccess', _42 => _42.every, 'call', _43 => _43(T=>r===_berancersdk.PoolType.Weighted?h.includes(T.address)&&Math.abs(Number(T.weight)-Number(_viem.formatUnits.call(void 0, t[h.indexOf(T.address)],18)))<d:h.includes(T.address)||T.address===I.address)])), 'optionalAccess', async _44 => _44.at, 'call', async _45 => _45(0)]), async () => (null))}catch (e2){return null}}),{generatedPoolName:y,generatedPoolSymbol:g}=_react.useMemo.call(void 0, ()=>{if(!e)return{generatedPoolName:"",generatedPoolSymbol:""};let R=sr(e),h=ar(e,t,r);return{generatedPoolName:R,generatedPoolSymbol:h}},[e,t,r]),b=_react.useMemo.call(void 0, ()=>{if(!i||s===""||a===""||e.length!==o.length||e.length===0)return null;let R=_viem.parseUnits.call(void 0, n.toString(),16),h=_viem.keccak256.call(void 0, Buffer.from(`${s}-${i}`)),{config:C}=_chunkQVIAMSZ6cjs.a.call(void 0, p);return r===_berancersdk.PoolType.Weighted?ga({poolCreationHelper:C.bex.poolCreationHelper,poolCreateTokens:e,initialLiquidityTokens:o,normalizedWeights:t,swapFeePercentage:R,salt:h,poolName:s,poolSymbol:a,owner:i,message:`Create pool ${s}`,actionType:"Create Pool"}):r===_berancersdk.PoolType.ComposableStable||r===_berancersdk.PoolType.MetaStable?fa({poolCreationHelper:C.bex.poolCreationHelper,poolCreateTokens:e,initialLiquidityTokens:o,swapFeePercentage:R,salt:h,poolName:s,poolSymbol:a,owner:i,amplification:l,oracles:u,message:`Create pool ${s}`,actionType:"Create Pool"}):null},[e,o,t,r,n,s,a,i,l,u]);return{generatedPoolName:y,generatedPoolSymbol:g,isDupePool:!!m,dupePool:m,createPoolArgs:b,isLoadingPools:f,errorLoadingPools:c}};var ba=1e-4;async function lr({token:e,publicClient:o,...t}){let r=_chunkJSTCUTXPcjs.b.call(void 0, "bex.subgraph",t),s=await o.readContract({address:e.address,abi:_viem.erc20Abi,functionName:"totalSupply"}),a=_chunk6DIA6PXVcjs.a.call(void 0, _viem.formatUnits.call(void 0, s,e.decimals)).multipliedBy(ba),{data:n}=await r.query({query:_subgraph.GetExploitedTokens,variables:{token:e.address,balance:a.toFixed()}});return n.userInternalBalances.length>0}var ka=e=>{let o=_optionalChain([e, 'optionalAccess', _46 => _46.filter, 'call', _47 => _47(t=>t.address)]);return!o||o.length===0?null:["useExploitedTokens",o]},nf= exports.useExploitedTokens =({tokens:e})=>{let o=ka(e),t=_hooks.usePublicClient.call(void 0, ),r=_swr2.default.call(void 0, t?o:null,async([,s])=>(_chunk33XNWMPPcjs.b.call(void 0, t),(await Promise.all(s.map(n=>lr({token:n,publicClient:t})))).reduce((n,i,l)=>(i!==void 0&&(n[s[l].address]=i),n),{})));return{...r,refresh:()=>r.mutate()}};var Ia=()=>{let e=_swr2.default.call(void 0, "useGlobalLiquidityAndSwapVolume",async()=>_chunk4TALWNXEcjs.f.call(void 0, ));return{...e,data:{totalLiquidity:Number(_optionalChain([e, 'access', _48 => _48.data, 'optionalAccess', _49 => _49.protocolMetricsAggregated, 'access', _50 => _50.totalLiquidity])),swapVolume24h:Number(_optionalChain([e, 'access', _51 => _51.data, 'optionalAccess', _52 => _52.protocolMetricsAggregated, 'access', _53 => _53.swapVolume24h]))},refresh:()=>e.mutate()}};var Ea=.05,gf= exports.useLiquidityMismatch =({currentStep:e,tokenPrices:o,isLoadingTokenPrices:t,tokens:r,weights:s,weightsError:a,poolType:n,liquidityMismatchTolerancePercent:i=Ea,oracles:l})=>{let[u,d]=_react.useState.call(void 0, {title:null,message:null});return _react.useEffect.call(void 0, ()=>{if(!o||t||!r||!s||a||r.some(h=>!h.address)||l.some(h=>h.mode==="Custom")){d({title:null,message:null});return}let p=0,m=[],c=r.length,y=_chunkBE6B4PQFcjs.b.call(void 0, r).map(h=>{let C=_nullishCoalesce(_optionalChain([o, 'access', _54 => _54[h.address.toLowerCase()], 'optionalAccess', _55 => _55.price]), () => (0));if(!C||C===0)return m.push(0),null;let k=C*Number.parseFloat(h.amount);return m.push(k),p+=k,C});if(y.some(h=>h===null)||y.length!==c){d({title:"Missing token price data",message:`One or more token(s) do not have valid market price data. Please verify that token market prices align with the pool
2
+ weightings and your initial liquidity amounts.`});return}if(e==="Select Tokens"&&n===_berancersdk.PoolType.ComposableStable){let h=y.map(k=>k/y[0]);Math.max(...h)-Math.min(...h)>i?d({title:"Selected tokens have a significant price deviation",message:"Did you mean to create a Weighted pool instead?",suggestWeighted:!0}):d({title:null,message:null});return}if(p===0||m.some(h=>h===0)){d({title:null,message:null});return}let g=0;if(n===_berancersdk.PoolType.ComposableStable){let h=p/c;m.forEach(C=>{g+=Math.abs(h-C)})}else n===_berancersdk.PoolType.Weighted&&m.forEach((h,C)=>{let k=Number(s[C])/1e18,I=p*k;g+=Math.abs(I-h)});let b=g>=p*.9;g=Math.min(g,p);let R=g/p;R>i?d({title:b?"You could lose all of your initial liquidity":`You could lose $${g.toFixed(2)} (~${(R*100).toFixed(2)}%)`,message:`Based on the market token prices, the value of tokens does not align with the specified pool weights.
3
+ This discrepancy could expose you to potential losses from arbitrageurs. ${n===_berancersdk.PoolType.ComposableStable?"Did you mean to create a Weighted pool instead?":""}`,suggestWeighted:n===_berancersdk.PoolType.ComposableStable}):d({title:null,message:null})},[e,o,t,r,s,a,n,i,l]),u};var _rewardVault = require('@berachain/abis/pol/rewards/rewardVault');var _rewardVaultFactory = require('@berachain/abis/pol/rewards/rewardVaultFactory');var mt=({tokenAddress:e},{isEnabled:o=!0}={})=>{let t=_hooks.usePublicClient.call(void 0, ),r=t&&e&&_viem.isAddress.call(void 0, e)&&o?["useRewardVaultFromToken",e]:null,s=_immutable2.default.call(void 0, r,async([,a])=>{if(!a)throw new Error("useRewardVaultFromToken needs a valid token address");_chunk33XNWMPPcjs.b.call(void 0, t);let{config:n}=_chunkQVIAMSZ6cjs.a.call(void 0, {chainId:t.chain.id}),i=await t.readContract({address:n.pol.factory,abi:_rewardVaultFactory.rewardVaultFactoryAbi,functionName:"getVault",args:[a]});return i===_viem.zeroAddress?void 0:i});return{...s,refresh:()=>s.mutate()}};var pr=({stakingToken:e,rewardVaultAddress:o},t)=>{let{address:r}=_hooks.useBeraWallet.call(void 0, ),s=_hooks.usePublicClient.call(void 0, ),a=_nullishCoalesce(_optionalChain([t, 'optionalAccess', _56 => _56.opts, 'optionalAccess', _57 => _57.isEnabled]), () => (!0)),{data:n=o,error:i,mutate:l,isLoading:u}=mt({tokenAddress:e},{isEnabled:!o&&a}),d=_swr2.default.call(void 0, n&&r&&s&&_viem.isAddress.call(void 0, n)&&_viem.isAddress.call(void 0, r)&&a?["useVaultBalanceFromStakingToken",n,r]:null,async([,p,m])=>{if(_chunk33XNWMPPcjs.b.call(void 0, s),p===_viem.zeroAddress)return{address:p,balance:0n};let c=await s.readContract({address:p,abi:_rewardVault.rewardVaultAbi,functionName:"balanceOf",args:[m]});return{address:p,balance:c}});return{...d,refresh:()=>{l(),d.mutate()},isLoading:d.isLoading||u}};function dr(e,o){let t=_hooks.usePublicClient.call(void 0, {chainId:e.chainId}),r=_optionalChain([e, 'optionalAccess', _58 => _58.address])&&t&&_viem.isAddress.call(void 0, e.address)?["useTokenInformation",e.address,e.chainId]:null,s=_immutable2.default.call(void 0, r,async([a,n,i=_internal.defaultChainId])=>_chunk54BTOQE3cjs.d.call(void 0, n,"BERA")?{address:_viem.zeroAddress,decimals:_chunk54BTOQE3cjs.a.decimals,name:_chunk54BTOQE3cjs.a.name,symbol:_chunk54BTOQE3cjs.a.symbol,chainId:i}:(_chunk33XNWMPPcjs.b.call(void 0, t),await _chunk4TALWNXEcjs.m.call(void 0, {address:n,publicClient:t,chainId:i})),{..._optionalChain([o, 'optionalAccess', _59 => _59.opts])});return{...s,refresh:()=>_optionalChain([s, 'optionalAccess', _60 => _60.mutate, 'optionalCall', _61 => _61()])}}function Ce({address:e,owner:o,chainId:t=_internal.defaultChainId},r){let s=e;_chunk54BTOQE3cjs.d.call(void 0, s,"ETH")&&(s=_viem.zeroAddress);let a=_hooks.usePublicClient.call(void 0, {chainId:t}),{address:n}=_hooks.useBeraWallet.call(void 0, ),i=_nullishCoalesce(o, () => (n)),l=(_nullishCoalesce(_optionalChain([r, 'optionalAccess', _62 => _62.opts, 'optionalAccess', _63 => _63.isEnabled]), () => (!0)))&&a&&i&&_viem.isAddress.call(void 0, i)&&s&&_viem.isAddress.call(void 0, s)?["usePollBalance",i,s,t]:null,{data:u,isLoading:d}=dr({address:s,chainId:t}),p=_chunk54BTOQE3cjs.d.call(void 0, s,"BERA"),{isLoading:m,data:c,error:f,...y}=_swr2.default.call(void 0, l,async([,R,h])=>(_chunk33XNWMPPcjs.b.call(void 0, a),_chunk54BTOQE3cjs.d.call(void 0, h,"BERA")?await a.getBalance({address:R}):await a.readContract({address:h,abi:_viem.erc20Abi,functionName:"balanceOf",args:[R]})),{refreshInterval:1e4}),g=!f&&c?_chunk54BTOQE3cjs.d.call(void 0, s,"BERA")?_viem.formatEther.call(void 0, c):u&&!d?_viem.formatUnits.call(void 0, c,u.decimals):void 0:void 0,b={chainId:t,balance:c?{raw:c.toString(),formatted:_nullishCoalesce(g, () => ("0"))}:{raw:"0",formatted:"0"},address:s,decimals:p?_chunk54BTOQE3cjs.a.decimals:_nullishCoalesce(_optionalChain([u, 'optionalAccess', _64 => _64.decimals]), () => (0)),symbol:p?_chunk54BTOQE3cjs.a.symbol:_nullishCoalesce(_optionalChain([u, 'optionalAccess', _65 => _65.symbol]), () => ("")),name:p?_chunk54BTOQE3cjs.a.name:_nullishCoalesce(_optionalChain([u, 'optionalAccess', _66 => _66.name]), () => (""))};return{...y,refresh:()=>{y.mutate()},isLoading:m||p?d:!1,error:f||!p?f:void 0,data:b}}var jf=({pool:e,vaultAddress:o},t)=>{let{data:r,...s}=Ce({address:_optionalChain([e, 'optionalAccess', _67 => _67.address])}),{data:a,refresh:n}=pr({stakingToken:_optionalChain([e, 'optionalAccess', _68 => _68.address]),rewardVaultAddress:_nullishCoalesce(o, () => (_optionalChain([e, 'optionalAccess', _69 => _69.rewardVault, 'optionalAccess', _70 => _70.vaultAddress])))},t),i=e?Number.parseFloat(_nullishCoalesce(_optionalChain([e, 'optionalAccess', _71 => _71.dynamicData, 'optionalAccess', _72 => _72.totalShares]), () => ("0"))):0,l=_optionalChain([e, 'optionalAccess', _73 => _73.dynamicData, 'optionalAccess', _74 => _74.totalLiquidity])?Number(_nullishCoalesce(_optionalChain([e, 'optionalAccess', _75 => _75.dynamicData, 'optionalAccess', _76 => _76.totalLiquidity]), () => (0))):null,u=i&&l?l/Number(i):0,d=_optionalChain([e, 'optionalAccess', _77 => _77.tokens, 'optionalAccess', _78 => _78.map, 'call', _79 => _79(p=>({address:p.address,ratio:i?Number(p.balance)/Number(i):0}))]);return{data:{lpTokenPrice:u,lpBalance:r?{...r,usdValue:r?Number(r.balance.formatted)*u:void 0}:void 0,tokenBalances:_optionalChain([e, 'optionalAccess', _80 => _80.tokens, 'optionalAccess', _81 => _81.map, 'call', _82 => _82(p=>{let m=_nullishCoalesce(_optionalChain([d, 'optionalAccess', _83 => _83.find, 'call', _84 => _84(y=>_viem.isAddressEqual.call(void 0, y.address,p.address)), 'optionalAccess', _85 => _85.ratio]), () => (0)),c=m?_chunk6DIA6PXVcjs.a.call(void 0, _nullishCoalesce(_optionalChain([r, 'optionalAccess', _86 => _86.balance, 'access', _87 => _87.formatted]), () => ("0"))).times(m):_chunk6DIA6PXVcjs.a.call(void 0, 0),f=Number(p.balanceUSD)/Number(p.balance);return{...p,balance:{raw:_optionalChain([c, 'optionalAccess', _88 => _88.isGreaterThan, 'call', _89 => _89(0)])?c.times(10**p.decimals).toFixed(0).toString():"0",formatted:c.toString()},price:f,usdValue:Number.isNaN(f)||!c?void 0:Number.parseFloat(c.toString())*f}})]),stakedBalance:_optionalChain([a, 'optionalAccess', _90 => _90.address])?{...a,balance:{raw:a.balance.toString(),formatted:_viem.formatEther.call(void 0, a.balance)},usdValue:Number(_viem.formatEther.call(void 0, a.balance))*u}:void 0},...s,refresh:()=>{_optionalChain([s, 'access', _91 => _91.refresh, 'optionalCall', _92 => _92()]),n()}}};function fr(e,o){let t=_hooks.useConfig.call(void 0, ),{address:r}=_hooks.useBeraWallet.call(void 0, ),s=t&&r&&_optionalChain([e, 'optionalAccess', _93 => _93.items])?["usePollAllowances",r,_optionalChain([e, 'optionalAccess', _94 => _94.items])]:null,a=_swr2.default.call(void 0, s,async([,n,i])=>_chunk4TALWNXEcjs._.call(void 0, {items:i,account:n,config:t}),{..._optionalChain([o, 'optionalAccess', _95 => _95.opts]),refreshInterval:_nullishCoalesce(_optionalChain([o, 'optionalAccess', _96 => _96.opts, 'optionalAccess', _97 => _97.refreshInterval]), () => (1e5))});return{...a,refresh:()=>_optionalChain([a, 'optionalAccess', _98 => _98.mutate, 'optionalCall', _99 => _99()])}}function rn({amount:e,decimals:o,slippage:t}){let r=_viem.parseUnits.call(void 0, (_nullishCoalesce(t, () => (0))).toString(),o);return e+e*r/BigInt(100*10**o)}function sn(e,o){let{slippage:t}=_nullishCoalesce(o, () => ({})),r=_react.useMemo.call(void 0, ()=>e.filter(l=>l.token.address!==_viem.zeroAddress).filter(l=>_chunk6DIA6PXVcjs.a.call(void 0, l.amount.formatted).gt(0)),[e]),{data:s,refresh:a,isLoading:n}=fr({items:r});return{needsApproval:_react.useMemo.call(void 0, ()=>_nullishCoalesce(_optionalChain([s, 'optionalAccess', _100 => _100.map, 'call', _101 => _101(l=>{let u=r.find(p=>_chunk54BTOQE3cjs.d.call(void 0, p.token.address,l.token));if(!u)throw new (0, _chunk6JJIZCVYcjs.f)({message:"Token not found when matching allowance in useMultipleTokenApprovalsWithSlippage",cause:{allowance:l,items:r}});let d=rn({decimals:u.token.decimals,amount:BigInt(u.amount.raw),slippage:t});if(_chunk6DIA6PXVcjs.a.call(void 0, l.allowance.raw).lt(d))return{...u,needsApproval:!0,maxAmountIn:d,allowance:{raw:l.allowance.raw,formatted:l.allowance.formatted}}}), 'access', _102 => _102.filter, 'call', _103 => _103(l=>l!==void 0)]), () => ([])),[s,t,r]),refresh:a,isLoading:n}}function yr(e,o){let t=_hooks.usePublicClient.call(void 0, ),r=t&&e.addresses?["useMultipleTokenInformation",e.addresses,_nullishCoalesce(e.chainId, () => (_internal.defaultChainId))]:null,s=_immutable2.default.call(void 0, r,async([,a,n])=>(_chunk33XNWMPPcjs.b.call(void 0, t),Promise.all(a.map(async i=>{if(!i||!_viem.isAddress.call(void 0, i,{strict:!1}))throw new Error("Invalid address");let l=await _chunk4TALWNXEcjs.m.call(void 0, {address:i,publicClient:t,chainId:n});if(!l)throw new Error(`Token ${i} not found`);return l}))),{..._optionalChain([o, 'optionalAccess', _104 => _104.opts])});return{...s,refresh:()=>_optionalChain([s, 'optionalAccess', _105 => _105.mutate, 'optionalCall', _106 => _106()])}}function ee(){let e=_react.useContext.call(void 0, _chunkRCWM55DEcjs.n);if(!e)throw new (0, _chunk6JJIZCVYcjs.f)({message:"useTokens must be used within a TokensProvider",level:"fatal"});return{...e,data:{tokenList:e.tokenList,customTokenList:e.userTokens,featuredTokenList:e.featuredTokens}}}function oe({addressIn:e}={},o={opts:{refreshInterval:1e5,revalidateOnFocus:!0}}){let{tokenList:t,ensoTokens:r}=ee(),s=_react.useMemo.call(void 0, ()=>{let p=[];return e&&p.push(...e.filter(m=>_viem.isAddress.call(void 0, m))),p.map(m=>m.toLowerCase())},[t]),n=_react.useMemo.call(void 0, ()=>{let p=new Set(_optionalChain([t, 'optionalAccess', _107 => _107.map, 'call', _108 => _108(m=>m.address.toLowerCase())]));return t.some(m=>_chunk54BTOQE3cjs.d.call(void 0, m,"WBERA"))&&p.add(_viem.zeroAddress),_optionalChain([s, 'optionalAccess', _109 => _109.some, 'call', _110 => _110(m=>!p.has(m))])},[s,t])?s:t.map(p=>p.address),i=n&&(_nullishCoalesce(_optionalChain([o, 'access', _111 => _111.opts, 'optionalAccess', _112 => _112.isEnabled]), () => (!0)))?["useTokenCurrentPrices",n.map(p=>p.toLowerCase())]:null,l=_swr2.default.call(void 0, i,async([,p])=>_chunk4TALWNXEcjs.Z.call(void 0, {addressIn:p}),o.opts),u=_react.useMemo.call(void 0, ()=>{if(!r)return{};let p=new Map([[_internal.defaultChainId,new Map]]);for(let m of r)m.price===void 0||m.chainId!==_internal.defaultChainId||_optionalChain([p, 'access', _113 => _113.get, 'call', _114 => _114(_internal.defaultChainId), 'optionalAccess', _115 => _115.set, 'call', _116 => _116(m.address.toLowerCase(),{...m,price:m.price,chainId:_internal.defaultChainId})]);return Object.fromEntries(n.map(m=>{let c=_optionalChain([p, 'access', _117 => _117.get, 'call', _118 => _118(_internal.defaultChainId), 'optionalAccess', _119 => _119.get, 'call', _120 => _120(m), 'optionalAccess', _121 => _121.price]);return c?[m.toLowerCase(),{price:c,chainId:_internal.defaultChainId,updatedAt:Date.now()}]:[null,null]}))},[r]),d=_react.useMemo.call(void 0, ()=>({...u,...l.data}),[u,l.data]);return{...l,data:d}}function bn(e){let o="poolId"in e?_optionalChain([e, 'access', _122 => _122.poolId, 'optionalAccess', _123 => _123.slice, 'call', _124 => _124(0,42)]):e.address;return _viem.isAddress.call(void 0, o)&&o?["useOnChainPoolData",o]:null}function Ar(e){let o=_hooks.usePublicClient.call(void 0, ),t=_optionalChain([e, 'optionalAccess', _125 => _125.slice, 'call', _126 => _126(0,42)]),r=bn({poolId:e}),{data:s,error:a,isLoading:n,mutate:i}=_immutable2.default.call(void 0, o?r:null,async([,c])=>_chunk4TALWNXEcjs.h.call(void 0, {poolId:c,publicClient:o})),{data:l,isLoading:u}=yr({addresses:_optionalChain([s, 'optionalAccess', _127 => _127.poolTokens, 'access', _128 => _128[0]])}),{data:d,isLoading:p}=oe({addressIn:_optionalChain([s, 'optionalAccess', _129 => _129.poolTokens, 'access', _130 => _130[0]])});return{data:_react.useMemo.call(void 0, ()=>{if(!s||!l)return;let c={address:t.toLowerCase(),id:e.toLowerCase(),type:s.type,factory:s.factory,totalShares:s.totalSupply,totalLiquidity:"0",swapFee:s.swapFee,createTime:0,name:s.name,tokens:l.map((y,g)=>({address:y.address.toLowerCase(),name:y.name,decimals:y.decimals,symbol:y.symbol,index:g,weight:_nullishCoalesce(_optionalChain([s, 'access', _131 => _131.weights, 'optionalAccess', _132 => _132[g]]), () => (void 0)),balance:_viem.formatUnits.call(void 0, BigInt(s.poolTokens[1][g]),y.decimals),token:{__typename:"Token",token:y,latestUSDPrice:_optionalChain([d, 'optionalAccess', _133 => _133[y.address]])}})),amplificationParameter:_optionalChain([s, 'optionalAccess', _134 => _134.amplificationParameter])&&{currentFormattedValue:Number(s.amplificationParameter[0])/Number(s.amplificationParameter[2])}},f=_optionalChain([c, 'access', _135 => _135.tokens, 'optionalAccess', _136 => _136.reduce, 'call', _137 => _137((y,g)=>{let b=Number(_nullishCoalesce(_optionalChain([d, 'optionalAccess', _138 => _138[g.address.toLowerCase()], 'optionalAccess', _139 => _139.price]), () => (0)));return b?y+b*Number(g.balance):y},0)]);return c.totalLiquidity=_nullishCoalesce(_optionalChain([f, 'optionalAccess', _140 => _140.toString, 'call', _141 => _141()]), () => ("")),c},[s,l,d,t,e]),error:a,isLoading:n||u||p,mutate:i,refresh:()=>i()}}var In=e=>{let{address:o}=_hooks.useBeraWallet.call(void 0, ),t=_hooks.usePublicClient.call(void 0, ),r=o&&t?["usePollPoolCreationRelayerApproval",o,t.chain.id]:null,s=_swr2.default.call(void 0, r,async([,n])=>{_chunk33XNWMPPcjs.b.call(void 0, t);let{config:i}=_chunkQVIAMSZ6cjs.a.call(void 0, {chainId:t.chain.id});return await t.readContract({address:i.bex.vault,abi:_vault.vaultAbi,functionName:"hasApprovedRelayer",args:[n,i.bex.poolCreationHelper]})},{..._optionalChain([e, 'optionalAccess', _142 => _142.opts])});return{...s,refreshPoolCreationApproval:()=>{s.mutate()}}};function Gg({poolId:e}){let o=or({poolId:e}),{data:t,isLoading:r,refresh:s,error:a}=Ar(e);return{data:[void 0,o.data,t],isLoading:o.isLoading||r,isError:o.error||a,refresh:()=>{o.refresh(),s()}}}var zg=({poolId:e,typeInArray:o})=>_immutable2.default.call(void 0, e?["usePoolEvents",e,o]:null,async([,t,r])=>_chunk4TALWNXEcjs.i.call(void 0, {poolId:t,typeInArray:r}),{refreshInterval:18e4});var ey=({poolId:e,...o},t)=>{let{config:r}=_chunkQVIAMSZ6cjs.a.call(void 0, o),a=_swr2.default.call(void 0, e?["usePoolHistoricalData",e]:null,async([,n])=>_chunk4TALWNXEcjs.j.call(void 0, {poolId:n,chain:r.bex.chainName}),_optionalChain([t, 'optionalAccess', _143 => _143.opts]));return{...a,refresh:()=>{a.mutate()}}};var Sn=({query:e}={})=>["useAllPools",e],iy= exports.usePools =(e,o)=>{let{address:t}=_hooks.useBeraWallet.call(void 0, ),{data:r,isLoading:s,mutate:a}=tr({userAddress:t,chain:e.chain}),{data:n,isLoading:i,mutate:l}=_swr2.default.call(void 0, Sn({query:e}),async([p,m])=>_chunk4TALWNXEcjs.d.call(void 0, m),{refreshInterval:18e4,..._optionalChain([o, 'optionalAccess', _144 => _144.opts])}),u=_react.useMemo.call(void 0, ()=>{if(!n||!_optionalChain([r, 'optionalAccess', _145 => _145.pools, 'optionalAccess', _146 => _146.length]))return _nullishCoalesce(_optionalChain([n, 'optionalAccess', _147 => _147.pools]), () => ([]));let p=Object.fromEntries(r.pools.map(m=>[m.id.toLowerCase(),m]));return n.pools.map(m=>({...m,...p[m.id.toLowerCase()]||{}})).filter(Boolean)},[n,r]),d=_react.useMemo.call(void 0, ()=>({page:Math.ceil((_nullishCoalesce(_optionalChain([e, 'optionalAccess', _148 => _148.skip]), () => (0)))/(_nullishCoalesce(_optionalChain([e, 'optionalAccess', _149 => _149.first]), () => (10)))),pageSize:_optionalChain([e, 'optionalAccess', _150 => _150.first]),count:Math.ceil((_nullishCoalesce(_optionalChain([n, 'optionalAccess', _151 => _151.count]), () => (0)))/(_nullishCoalesce(_optionalChain([e, 'optionalAccess', _152 => _152.first]), () => (10))))}),[n,e.skip,e.first]);return{pools:_nullishCoalesce(u, () => ([])),walletPools:_nullishCoalesce(_optionalChain([n, 'optionalAccess', _153 => _153.pools]), () => ([])),isLoading:i||s,refresh:()=>{l(),a()},pagination:d}};function Z({tokens:e}={},o={opts:{refreshInterval:1e5,revalidateOnFocus:!0}}){let{ensoTokens:t}=ee(),r=oe({addressIn:_optionalChain([e, 'optionalAccess', _154 => _154.filter, 'call', _155 => _155(i=>i.chainId===_internal.defaultChainId), 'access', _156 => _156.map, 'call', _157 => _157(i=>i.address)])},o),s=_react.useMemo.call(void 0, ()=>{let i=[];if(!e)return[];let l=new Map;for(let u of e){let d=_nullishCoalesce(u.chainId, () => (_internal.defaultChainId));l.has(d)||l.set(d,new Map),_optionalChain([l, 'access', _158 => _158.get, 'call', _159 => _159(d), 'optionalAccess', _160 => _160.set, 'call', _161 => _161(u.address.toLowerCase(),u)])}if(r.data){for(let[u,d]of Object.entries(r.data))if(d&&_optionalChain([l, 'access', _162 => _162.get, 'call', _163 => _163(_nullishCoalesce(d.chainId, () => (_internal.defaultChainId))), 'optionalAccess', _164 => _164.get, 'call', _165 => _165(u.toLowerCase())])&&d.price!==void 0){let p=_optionalChain([l, 'access', _166 => _166.get, 'call', _167 => _167(_nullishCoalesce(d.chainId, () => (_internal.defaultChainId))), 'optionalAccess', _168 => _168.get, 'call', _169 => _169(u.toLowerCase())]);if(!p)continue;i.push({...p,chainId:d.chainId,price:d.price})}}if(t)for(let u of t)u.price!==void 0&&u.chainId!==void 0&&i.push({...u,chainId:u.chainId,price:u.price});return i},[r.data,t,e]),a=_react.useMemo.call(void 0, ()=>{let i={};for(let l of s){let u=_nullishCoalesce(l.chainId, () => (_internal.defaultChainId));i[u]||(i[u]={}),i[u][l.address.toLowerCase()]=l.price}return i},[s]),n=_react.useCallback.call(void 0, i=>i?_nullishCoalesce(_optionalChain([a, 'access', _170 => _170[_nullishCoalesce(i.chainId, () => (_internal.defaultChainId))], 'optionalAccess', _171 => _171[_optionalChain([i, 'access', _172 => _172.address, 'optionalAccess', _173 => _173.toLowerCase, 'call', _174 => _174()])]]), () => (void 0)):void 0,[a]);return{isLoading:r.isLoading,data:s,priceMap:a,getTokenPrice:n}}function Pe({tokenIn:e,tokenOut:o,formattedAmountIn:t,formattedAmountOut:r}){let{getTokenPrice:s,isLoading:a}=Z({tokens:e&&o?[e,o]:void 0});return{data:_react.useMemo.call(void 0, ()=>{if(!e||!o||!t||!r)return;let i=s(e),l=s(o);return!i||!l?null:_chunkBE6B4PQFcjs.c.call(void 0, i.toString(),l.toString(),t,r)},[e,o,t,r]),isLoading:a}}var _morpho = require('@berachain/abis/bend/morpho');function j(e){return e===_viem.zeroAddress?_viem.ethAddress:e}function ft(e){if(e!=null)return typeof e=="bigint"?e:BigInt(e)}async function Rr({fromAddress:e,amountIn:o,tokenIn:t,chainId:r,ensoClient:s,bundle:a,publicClient:n}){let i=[];if(t!==_viem.ethAddress){let u=await s.getApprovalData({fromAddress:e,tokenAddress:t,chainId:r,amount:o}),d=!0;if(n&&(d=await n.readContract({address:t,abi:_viem.erc20Abi,functionName:"allowance",args:[e,u.spender]})<BigInt(o)),d){let p=_nullishCoalesce(ft(u.tx.value), () => (0n));i.push({to:u.tx.to,data:u.tx.data,value:p,gasLimit:BigInt(u.gas)})}}let l=_nullishCoalesce(ft(a.tx.value), () => (0n));return i.push({to:a.tx.to,data:a.tx.data,value:l,gasLimit:BigInt(a.gas)}),i}async function wr({fromAddress:e,amountIn:o,tokenIn:t,bundle:r,publicClient:s}){let a=[],n=_viem.getAddress.call(void 0, r.tx.to),i=null;if(j(t.address)!==_viem.ethAddress){let d=await s.readContract({address:t.address,abi:_viem.erc20Abi,functionName:"allowance",args:[e,n]}),p=BigInt(o);if(d<p){let c=p.toString();i={token:t,amount:{raw:c,formatted:_viem.formatUnits.call(void 0, p,t.decimals)},spender:n};let f=_viem.encodeFunctionData.call(void 0, {abi:_viem.erc20Abi,functionName:"approve",args:[n,p]});a.push({to:t.address,data:f,value:0n})}}let u=_nullishCoalesce(ft(r.tx.value), () => (0n));return a.push({to:r.tx.to,data:r.tx.data,value:u,gasLimit:r.gas?BigInt(r.gas):void 0}),{transactions:a,approval:i}}function ie(e){let o=new (0, _chunk6DIA6PXVcjs.a)(e).dividedBy(100),t=new (0, _chunk6DIA6PXVcjs.a)(1).minus(o);if(t.lte(0))throw new (0, _chunk6JJIZCVYcjs.h)({property:"slippage",value:e,expected:"a value lower than 100"});return t}function yt(e,o,t){return e.multipliedBy(new (0, _chunk6DIA6PXVcjs.a)(10).pow(t.decimals)).dividedBy(new (0, _chunk6DIA6PXVcjs.a)(10).pow(o.decimals))}async function Cr({publicClient:e,ensoWalletV2Factory:o,accountAddress:t}){return e.readContract({address:o,abi:_chunkRWOICHRWcjs.a,functionName:"getAddress",args:[t]})}async function Ir({publicClient:e,primaryAddress:o,accountAddress:t,ensoWalletV2Address:r}){return e.readContract({address:o,abi:_morpho.morphoAbi,functionName:"isAuthorized",args:[t,r]})}async function Te({fromAddress:e,amountIn:o,tokenIn:t,primaryAddress:r,bundle:s,publicClient:a,ensoWalletV2Address:n,isAuthorized:i}){let{config:l}=_chunkQVIAMSZ6cjs.a.call(void 0, {}),{walletFlashloanAdapter:u}=l.enso;_chunk33XNWMPPcjs.a.call(void 0, u,"config.enso.walletFlashloanAdapter");let{transactions:d,approval:p}=await wr({fromAddress:e,amountIn:o,tokenIn:t,bundle:s,publicClient:a}),m=[];return i||m.push({to:r,data:_viem.encodeFunctionData.call(void 0, {abi:_morpho.morphoAbi,functionName:"setAuthorization",args:[n,!0]}),value:0n}),m.push(...d),{transactions:m,approvals:p?[p]:[],ensoWalletFlashloanAdapter:_viem.getAddress.call(void 0, u)}}var Vn=25n,Tr=10000n;function Wn({repayAmount:e,collateralPriceInLoanAsset:o,collateralToken:t,loanToken:r,slippage:s,currentCollateral:a}){let n=ie(s),i=new (0, _chunk6DIA6PXVcjs.a)(o);if(i.lte(0))throw new (0, _chunk6JJIZCVYcjs.h)({property:"collateralPriceInLoanAsset",value:o,expected:"a value greater than zero"});let l=new (0, _chunk6DIA6PXVcjs.a)(10).pow(r.decimals),u=new (0, _chunk6DIA6PXVcjs.a)(10).pow(t.decimals),m=new (0, _chunk6DIA6PXVcjs.a)(e).dividedBy(l).dividedBy(i).dividedBy(n).multipliedBy(u).integerValue(_chunk6DIA6PXVcjs.a.ROUND_UP);return m.lte(0)?"0":_chunk6DIA6PXVcjs.a.minimum(m,new (0, _chunk6DIA6PXVcjs.a)(a)).toFixed(0)}function Mn({repayAmount:e,collateralToWithdraw:o,collateralToken:t,loanToken:r}){return{finalCollateral:_viem.formatUnits.call(void 0, BigInt(o),t.decimals),totalBorrow:_viem.formatUnits.call(void 0, BigInt(e),r.decimals)}}async function Er({fromAddress:e,repayAmount:o,collateralToken:t,loanToken:r,marketId:s,primaryAddress:a,chainId:n,ensoClient:i,slippage:l,publicClient:u,collateralPriceInLoanAsset:d,currentCollateral:p,currentDebt:m,ensoWalletV2Address:c,isAuthorized:f}){_chunk33XNWMPPcjs.c.call(void 0, e,"fromAddress"),_chunk33XNWMPPcjs.d.call(void 0, o,"repayAmount"),_chunk33XNWMPPcjs.d.call(void 0, m,"currentDebt");let y=BigInt(o),g=BigInt(m),b=y>=g,R=j(t.address),h=j(r.address),C=(y*Vn+(Tr-1n))/Tr,k=b?C:0n,I=(y+k).toString(),T=Wn({repayAmount:I,collateralPriceInLoanAsset:d,collateralToken:t,loanToken:r,slippage:l,currentCollateral:p}),x=BigInt(T)>=BigInt(p),v=b&&k>0n&&!x;if(BigInt(T)<=0n)throw new (0, _chunk6JJIZCVYcjs.h)({property:"collateralToWithdraw",value:T,expected:"positive amount"});let H=[{protocol:"enso",action:"route",args:{tokenIn:R,tokenOut:h,amountIn:T,slippage:l*100}},{protocol:"bend",action:"repay",args:{primaryAddress:a,positionId:s,tokenIn:h,amountIn:{useOutputOfCallAt:0},onBehalfOf:e}}],O=H.length,_=v?[{protocol:"enso",action:"balance",args:{token:h}},{protocol:"enso",action:"route",args:{tokenIn:h,tokenOut:R,amountIn:{useOutputOfCallAt:O},slippage:l*100}},{protocol:"bend",action:"deposit",args:{primaryAddress:a,positionId:s,tokenIn:R,amountIn:{useOutputOfCallAt:O+1},onBehalfOf:e}}]:[],Q=[...H,..._,{protocol:"bend",action:"withdraw",args:{primaryAddress:a,positionId:s,tokenOut:R,amountOut:T,onBehalfOf:e}}],Y=[{protocol:"bend",action:"flashloan",args:{flashloanToken:R,flashloanAmount:T,tokenOut:h,callback:Q}}],F=await i.getBundleData({fromAddress:e,receiver:e,spender:e,chainId:n,routingStrategy:"ensowallet-v2"},Y),{transactions:D}=await Te({fromAddress:e,amountIn:"0",tokenIn:t,primaryAddress:a,bundle:F,publicClient:u,ensoWalletV2Address:c,isAuthorized:f});return{bundle:F,transactions:D,positionEstimate:Mn({repayAmount:o,collateralToWithdraw:T,collateralToken:t,loanToken:r})}}function Ee({chainId:e}){let{address:o}=_hooks.useBeraWallet.call(void 0, ),t=_hooks.usePublicClient.call(void 0, {chainId:e}),{config:r}=_chunkQVIAMSZ6cjs.a.call(void 0, {}),s=r.enso.walletV2Factory;return _swr2.default.call(void 0, o&&s?["useEnsoWalletV2Address",o,s]:null,async([n,i,l])=>(_chunk33XNWMPPcjs.b.call(void 0, t),Cr({publicClient:t,ensoWalletV2Factory:_viem.getAddress.call(void 0, l),accountAddress:i})),{refreshInterval:18e4})}function xe({chainId:e,primaryAddress:o,ensoWalletV2Address:t}){let{address:r}=_hooks.useBeraWallet.call(void 0, ),s=_hooks.usePublicClient.call(void 0, {chainId:e});return _swr2.default.call(void 0, r&&o&&t?["useIsBendAuthorized",r,o,t]:null,async([n,i,l,u])=>(_chunk33XNWMPPcjs.b.call(void 0, s),Ir({publicClient:s,primaryAddress:l,accountAddress:i,ensoWalletV2Address:u})),{refreshInterval:18e4})}function rA({collateralToken:e,loanToken:o,marketId:t,primaryAddress:r,repayAmount:s,slippage:a,chainId:n,collateralPriceInLoanAsset:i,currentCollateral:l,currentDebt:u},d){let{address:p}=_hooks.useBeraWallet.call(void 0, ),{account:{chainId:m}={}}=_hooks.useBeraWagmi.call(void 0, ),c=_nullishCoalesce(_nullishCoalesce(n, () => (m)), () => (_internal.defaultChainId)),f=_hooks.usePublicClient.call(void 0, {chainId:c}),{data:y}=Ee({chainId:c}),{data:g}=xe({chainId:c,primaryAddress:r,ensoWalletV2Address:y}),b=e&&o&&t&&r&&s&&y&&g!==void 0&&e.address!==o.address&&Number(s)>0&&a!==void 0&&i!==void 0&&l&&u&&Number(u)>0&&p&&(_nullishCoalesce(_optionalChain([d, 'optionalAccess', _175 => _175.opts, 'optionalAccess', _176 => _176.isEnabled]), () => (!0)))?["useBendDemultiply",p,e,o,t,r,c,s,a,i,l,u,y,g]:null;return _swr2.default.call(void 0, b,async([R,h,C,k,I,T,x,v,H,O,_,Q,q,Y])=>{_chunk33XNWMPPcjs.b.call(void 0, f);let F=_viem.parseUnits.call(void 0, v,k.decimals).toString(),D=_viem.parseUnits.call(void 0, _,C.decimals).toString(),G=_viem.parseUnits.call(void 0, Q,k.decimals).toString();return Er({fromAddress:h,repayAmount:F,collateralToken:C,loanToken:k,marketId:I,primaryAddress:T,chainId:x,ensoClient:_chunkXZC34BHMcjs.a.call(void 0, ),slippage:H,publicClient:f,collateralPriceInLoanAsset:O,currentCollateral:D,currentDebt:G,ensoWalletV2Address:q,isAuthorized:Y})},{..._optionalChain([d, 'optionalAccess', _177 => _177.opts]),refreshInterval:1e5})}function Xn({rawSupplyCollateralAmount:e,rawCurrentCollateralAmount:o,rawCurrentBorrowAmount:t,formattedCollateralPriceInLoanAsset:r,collateralToken:s,loanToken:a,leverageMultiplier:n,slippage:i}){let l=Math.max(n,1);if(l<=1)return"0";let u=ie(i),d=new (0, _chunk6DIA6PXVcjs.a)(r);if(d.lte(0))throw new (0, _chunk6JJIZCVYcjs.h)({property:"formattedCollateralPriceInLoanAsset",value:r,expected:"a value greater than zero"});let p=yt(d,s,a),m=new (0, _chunk6DIA6PXVcjs.a)(1).minus(new (0, _chunk6DIA6PXVcjs.a)(1).dividedBy(l)),c=new (0, _chunk6DIA6PXVcjs.a)(o).plus(e),f=new (0, _chunk6DIA6PXVcjs.a)(t),y=new (0, _chunk6DIA6PXVcjs.a)(1).minus(m.multipliedBy(u));if(y.lte(0))throw new (0, _chunk6JJIZCVYcjs.h)({property:"leverageMultiplier",value:n,expected:"a lower leverage target for current slippage"});let g=m.multipliedBy(c).multipliedBy(p).minus(f).dividedBy(y);if(g.lte(0))return"0";let b=g.integerValue(_chunk6DIA6PXVcjs.a.ROUND_UP);return b.lte(0)?"0":b.toFixed(0)}function ei({rawSupplyCollateralAmount:e,collateralToken:o,loanToken:t,rawBorrowAmount:r,formattedCollateralPriceInLoanAsset:s,slippage:a}){let n=new (0, _chunk6DIA6PXVcjs.a)(10).pow(o.decimals),i=new (0, _chunk6DIA6PXVcjs.a)(10).pow(t.decimals),l=new (0, _chunk6DIA6PXVcjs.a)(e),u=new (0, _chunk6DIA6PXVcjs.a)(r);if(u.lte(0))return{finalCollateral:l.dividedBy(n).toFixed(),totalBorrow:"0"};let d=ie(a),p=yt(new (0, _chunk6DIA6PXVcjs.a)(s),o,t),m=p.lte(0)?new (0, _chunk6DIA6PXVcjs.a)(0):u.multipliedBy(d).dividedBy(p),c=l.plus(m).dividedBy(n),f=u.dividedBy(i);return{finalCollateral:c.toFixed(),totalBorrow:f.toFixed()}}async function xr({fromAddress:e,rawSupplyCollateralAmount:o,rawCurrentCollateralAmount:t,rawCurrentBorrowAmount:r,collateralToken:s,loanToken:a,marketId:n,primaryAddress:i,chainId:l,ensoClient:u,slippage:d,leverageMultiplier:p,publicClient:m,formattedCollateralPriceInLoanAsset:c,ensoWalletV2Address:f,isAuthorized:y}){_chunk33XNWMPPcjs.c.call(void 0, e,"fromAddress");let g=j(s.address),b=j(a.address),R=Xn({rawSupplyCollateralAmount:o,rawCurrentCollateralAmount:t,rawCurrentBorrowAmount:r,formattedCollateralPriceInLoanAsset:c,collateralToken:s,loanToken:a,leverageMultiplier:p,slippage:d}),h=0,C=1,k=[{protocol:"bend",action:"deposit",args:{primaryAddress:i,positionId:n,tokenIn:g,amountIn:o,onBehalfOf:e}}],T=[{protocol:"bend",action:"flashloan",args:{flashloanToken:b,flashloanAmount:R,...o!=="0"&&{tokenIn:g,amountIn:o},tokenOut:b,callback:[{protocol:"enso",action:"route",args:{tokenIn:b,tokenOut:g,amountIn:R,slippage:d*100}},{protocol:"enso",action:"balance",args:{token:g}},{protocol:"bend",action:"deposit",args:{primaryAddress:i,positionId:n,tokenIn:g,amountIn:{useOutputOfCallAt:C},onBehalfOf:e}},{protocol:"bend",action:"borrow",args:{primaryAddress:i,positionId:n,collateral:g,tokenOut:b,amountOut:R,onBehalfOf:e}}]}}],x=R==="0"?k:T,v=await u.getBundleData({fromAddress:e,receiver:e,spender:e,chainId:l,routingStrategy:"ensowallet-v2"},x),{transactions:H}=await Te({fromAddress:e,amountIn:o,tokenIn:s,primaryAddress:i,bundle:v,publicClient:m,ensoWalletV2Address:f,isAuthorized:y});return{bundle:v,transactions:H,positionEstimate:ei({rawSupplyCollateralAmount:o,collateralToken:s,loanToken:a,rawBorrowAmount:R,formattedCollateralPriceInLoanAsset:c,slippage:d})}}function RA({collateralToken:e,loanToken:o,marketId:t,primaryAddress:r,formattedSupplyCollateralAmount:s,formattedCurrentCollateralAmount:a,formattedCurrentBorrowAmount:n,leverageMultiplier:i,slippage:l,chainId:u,formattedCollateralPriceInLoanAsset:d},p){let{address:m}=_hooks.useBeraWallet.call(void 0, ),{account:{chainId:c}={}}=_hooks.useBeraWagmi.call(void 0, ),f=_nullishCoalesce(_nullishCoalesce(u, () => (c)), () => (_internal.defaultChainId)),y=_hooks.usePublicClient.call(void 0, {chainId:f}),{data:g}=Ee({chainId:f}),{data:b}=xe({chainId:f,primaryAddress:r,ensoWalletV2Address:g}),R=e&&o&&t&&r&&g&&b!==void 0&&e.address!==o.address&&l!==void 0&&i!==void 0&&d!==void 0&&(Number(_nullishCoalesce(s, () => (0)))>0||i>1&&(Number(_nullishCoalesce(a, () => (0)))>0||Number(_nullishCoalesce(s, () => (0)))>0))&&m&&(_nullishCoalesce(_optionalChain([p, 'optionalAccess', _178 => _178.opts, 'optionalAccess', _179 => _179.isEnabled]), () => (!0)))?["useBendMultiply",m,e,o,t,r,f,_nullishCoalesce(s, () => ("")),_nullishCoalesce(a, () => ("")),_nullishCoalesce(n, () => ("")),i,l,d,g,b]:null;return _swr2.default.call(void 0, R,async([h,C,k,I,T,x,v,H,O,_,Q,q,Y,F,D])=>{_chunk33XNWMPPcjs.b.call(void 0, y);let G=_viem.parseUnits.call(void 0, H||"0",k.decimals).toString(),He=_viem.parseUnits.call(void 0, O||"0",k.decimals).toString(),os=_viem.parseUnits.call(void 0, _||"0",I.decimals).toString();return xr({fromAddress:C,rawSupplyCollateralAmount:G,rawCurrentCollateralAmount:He,rawCurrentBorrowAmount:os,collateralToken:k,loanToken:I,marketId:T,primaryAddress:x,chainId:v,ensoClient:_chunkXZC34BHMcjs.a.call(void 0, ),slippage:q,leverageMultiplier:Q,publicClient:y,formattedCollateralPriceInLoanAsset:Y,ensoWalletV2Address:F,isAuthorized:D})},{..._optionalChain([p, 'optionalAccess', _180 => _180.opts]),refreshInterval:1e5})}var Rt= (_class12 =class extends _chunk4TALWNXEcjs.b{constructor(...args13) { super(...args13); _class12.prototype.__init43.call(this);_class12.prototype.__init44.call(this);_class12.prototype.__init45.call(this);_class12.prototype.__init46.call(this);_class12.prototype.__init47.call(this); }__init43() {this.name="Enso (Mint)"}__init44() {this.supportedChains=null}__init45() {this.type="rest"}__init46() {this.needsAccountForQuote=!0}__init47() {this.notFoundMessages=["Could not build shortcuts for route","Could not quote shortcuts for route","Swap not found for a required underlying of defi route,","No route found from"]}async getQuote({tokenIn:o,tokenOut:t,amount:r,slippage:s,account:a=_viem.zeroAddress,aggregatorsFeeBps:n,proxyAggregatorsThroughVercel:i=!1,rewardVault:l,underlyingToken:u}){this.assertChainSupport({tokenIn:o,tokenOut:t}),_chunk33XNWMPPcjs.c.call(void 0, a,"account");let d=_chunkXZC34BHMcjs.a.call(void 0, {useProxy:!i});o.address===_viem.zeroAddress&&(o.address=_viem.ethAddress),t.address===_viem.zeroAddress&&(t.address=_viem.ethAddress);let p=_nullishCoalesce(u, () => (t)),m=[{protocol:"enso",action:"route",args:{tokenIn:o.address,tokenOut:p.address,destinationChainId:o.chainId===p.chainId?void 0:p.chainId,refundReceiver:a,amountIn:r,slippage:s*100}}];if(u&&m.push({protocol:"erc4626",action:"deposit",args:{amountIn:{useOutputOfCallAt:0},tokenIn:u.address,primaryAddress:t.address,tokenOut:t.address}}),l){let g=m.length;m.push({protocol:"enso",action:"balance",args:{token:t.address}},{protocol:"erc20",action:"approve",args:{amount:{useOutputOfCallAt:g},spender:l,token:t.address}},{protocol:"enso",action:"call",args:{address:l,args:[a,{useOutputOfCallAt:g}],method:"stakeOnBehalf",abi:"function stakeOnBehalf(address account, uint256 amount) external"}},{protocol:"enso",action:"balance",args:{token:l}})}let c=await d.getBundleData({fromAddress:a,receiver:a,spender:a,chainId:o.chainId,routingStrategy:"router"},m),f=_nullishCoalesce(_optionalChain([l, 'optionalAccess', _181 => _181.toLowerCase, 'call', _182 => _182()]), () => (t.address.toLowerCase()));return{amountOut:_nullishCoalesce(_nullishCoalesce(c.minAmountsOut[f], () => (c.amountsOut[f])), () => ("0")),amountIn:r,allowanceRequirements:this.parseAllowanceRequirements({tokenIn:o,rawAmount:r,spender:c.tx.to}),name:this.name,swapFeeBps:0,priceImpactPercentage:c.priceImpact?c.priceImpact/100:null,getCalldata:()=>({address:c.tx.to,data:c.tx.data,value:BigInt(_nullishCoalesce(c.tx.value, () => (0)))})}}}, _class12),Se=new Rt;function VA({tokenIn:e,loanToken:o,bendVault:t,rewardVault:r,amount:s,slippage:a},n){let{getTokenPrice:i}=Z({tokens:e&&o?[e,o]:void 0}),l=mi({tokenIn:e,loanToken:o,bendVault:t,rewardVault:r,amount:s?_viem.parseUnits.call(void 0, s,_nullishCoalesce(_optionalChain([e, 'optionalAccess', _183 => _183.decimals]), () => (18))).toString():void 0,slippage:a},n),{data:u}=Uo({sharesAmount:BigInt(_nullishCoalesce(_optionalChain([l, 'access', _184 => _184.data, 'optionalAccess', _185 => _185.amountOut]), () => (0))),vaultAddress:t.address}),{data:d}=Pe({tokenIn:e,tokenOut:o,formattedAmountIn:s,formattedAmountOut:_nullishCoalesce(_optionalChain([u, 'optionalAccess', _186 => _186.formatted]), () => ("0"))}),p=_optionalChain([e, 'optionalAccess', _187 => _187.chainId])&&e.chainId!==_internal.defaultChainId,{data:m,isLoading:c}=Ce({address:_viem.zeroAddress,chainId:p?_optionalChain([e, 'optionalAccess', _188 => _188.chainId]):void 0},{opts:{isEnabled:!!p}}),f=_nullishCoalesce(_optionalChain([l, 'access', _189 => _189.data, 'optionalAccess', _190 => _190.getCalldata, 'optionalCall', _191 => _191({account:_viem.zeroAddress}), 'optionalAccess', _192 => _192.value]), () => (0n)),y=_nullishCoalesce(_optionalChain([m, 'optionalAccess', _193 => _193.balance]), () => ({raw:"0",formatted:"0"})),g=p&&f>0n&&!c&&f>BigInt(y.raw),b=p&&f>0n?_viem.formatEther.call(void 0, f):void 0;return{...l,zapSupplyAmount:u,priceImpact:d,hasInsufficientNativeBalance:g,isCrossChain:p,nativeFee:b,refresh:()=>{l.mutate()}}}function mi({tokenIn:e,loanToken:o,bendVault:t,rewardVault:r,amount:s,slippage:a},n){let{address:i}=_hooks.useBeraWallet.call(void 0, ),l=!!e&&!!o&&!!t&&!!s&&!!i&&!_chunk54BTOQE3cjs.d.call(void 0, o.address,e.address)&&e.chainId&&Number(s)>0&&!!a,u=_hooks.usePublicClient.call(void 0, );return _swr2.default.call(void 0, l?["useBendZapSupply",e,o,t,r,s,a]:null,async([,p,m,c,f,y,g])=>(_chunk33XNWMPPcjs.b.call(void 0, u),_chunk33XNWMPPcjs.c.call(void 0, i,"fromAddress"),_chunk33XNWMPPcjs.c.call(void 0, _optionalChain([p, 'optionalAccess', _194 => _194.address]),"tokenInAddress"),_chunk33XNWMPPcjs.a.call(void 0, _optionalChain([p, 'optionalAccess', _195 => _195.chainId]),"tokenInChainId"),Se.getQuote({tokenIn:p,tokenOut:c,underlyingToken:m,amount:y,slippage:g,account:i,rewardVault:f})),{..._optionalChain([n, 'optionalAccess', _196 => _196.opts]),refreshInterval:1e5})}async function Or({fromAddress:e,amountIn:o,tokenIn:t,tokenOut:r,chainId:s,ensoClient:a,destinationChainId:n,slippage:i,publicClient:l}){if(!e)throw new (0, _chunk6JJIZCVYcjs.h)({property:"fromAddress",value:e,expected:"address"});r===_viem.zeroAddress&&(r=_viem.ethAddress);let u={protocol:"enso",action:"route",args:{tokenIn:t,tokenOut:r,amountIn:o,slippage:i*100}};n&&n!==s&&(u.args={...u.args,destinationChainId:n,refundReceiver:e});let d=await a.getBundleData({fromAddress:e,receiver:e,spender:e,chainId:s,routingStrategy:"router"},[u]),p=await Rr({fromAddress:e,amountIn:o,tokenIn:t,chainId:s,ensoClient:a,bundle:d,publicClient:l});return{bundle:d,transactions:p}}function Be(e,o){let t=_hooks.usePublicClient.call(void 0, ),r=_hooks.useConfig.call(void 0, ),{address:s}=_hooks.useBeraWallet.call(void 0, ),{tokenList:a,refresh:n}=ee(),i=_nullishCoalesce(_optionalChain([e, 'optionalAccess', _197 => _197.walletAddress]), () => (s)),l=_react.useMemo.call(void 0, ()=>new Map(_nullishCoalesce(_optionalChain([(_nullishCoalesce(_optionalChain([e, 'optionalAccess', _198 => _198.tokens]), () => (a))), 'optionalAccess', _199 => _199.map, 'call', _200 => _200(p=>[p.address.toLowerCase(),p])]), () => ([]))),[a,_optionalChain([e, 'optionalAccess', _201 => _201.tokens])]),u=t&&a!==void 0&&i?["usePollWalletBalances",i,Array.from(l.values())]:null,d=_swr2.default.call(void 0, u,async([,p,m])=>_chunkXZC34BHMcjs.c.call(void 0, {account:p,tokenList:m,wagmiConfig:r}),{refreshInterval:1e5,..._optionalChain([o, 'optionalAccess', _202 => _202.opts])});return{...d,refresh:()=>{_optionalChain([d, 'optionalAccess', _203 => _203.mutate, 'optionalCall', _204 => _204()]),n()}}}function ah({tokenIn:e,tokenOut:o,amount:t,slippage:r}){let{address:s}=_hooks.useBeraWallet.call(void 0, ),a=_hooks.useConfig.call(void 0, ),n=_chunkXZC34BHMcjs.a.call(void 0, ),{refresh:i}=Be(),l=!!e&&!!o&&!!t&&Number(t)>0&&!!r&&!!s&&!!e.chainId,d=_swr2.default.call(void 0, l?["useEnsoSwapBundle",e,o,t,r]:null,async([,p,m,c,f])=>{_chunk33XNWMPPcjs.c.call(void 0, s,"fromAddress"),_chunk33XNWMPPcjs.c.call(void 0, _optionalChain([p, 'optionalAccess', _205 => _205.address]),"tokenInAddress"),_chunk33XNWMPPcjs.a.call(void 0, _optionalChain([p, 'optionalAccess', _206 => _206.chainId]),"tokenInChainId"),_chunk33XNWMPPcjs.c.call(void 0, _optionalChain([m, 'optionalAccess', _207 => _207.address]),"tokenOutAddress"),_chunk33XNWMPPcjs.e.call(void 0, c,"amount"),_chunk33XNWMPPcjs.e.call(void 0, f,"slippage");let y=_core.getPublicClient.call(void 0, a,{chainId:p.chainId});_chunk33XNWMPPcjs.b.call(void 0, y);let g=_viem.parseUnits.call(void 0, c,p.decimals).toString();return Or({fromAddress:s,amountIn:g,tokenIn:p.address,tokenOut:m.address,chainId:p.chainId,ensoClient:n,destinationChainId:_internal.defaultChainId,slippage:f,publicClient:y})},{refreshInterval:1e5,isEnabled:l});return{...d,refresh:()=>{d.mutate(),i()}}}function ch({inputToken:e,amount:o,underlyingToken:t,slippage:r,tokenOut:s},a){let{address:n}=_hooks.useBeraWallet.call(void 0, ),i=_nullishCoalesce(n, () => (_internal.chainConfigs[_internal.defaultChainId].bex.aggregatorsRouterExecutor)),u=!!e&&!!o&&Number(o)>0&&!!e.chainId&&!!t&&!!r?["useZapStakeBera",e,o,i,r,t,s]:null,d=_swr2.default.call(void 0, u,async([,m,c,f,y,g,b])=>{let R=_viem.parseUnits.call(void 0, c,m.decimals).toString();return Se.getQuote({account:f,amount:R,tokenIn:m,underlyingToken:g,tokenOut:b,slippage:y})},{..._optionalChain([a, 'optionalAccess', _208 => _208.opts]),refreshInterval:1e5}),{data:p}=Pe({tokenIn:e,tokenOut:s,formattedAmountIn:o,formattedAmountOut:_viem.formatUnits.call(void 0, BigInt(_nullishCoalesce(_optionalChain([d, 'access', _209 => _209.data, 'optionalAccess', _210 => _210.amountOut]), () => ("0"))),s.decimals)});return{...d,data:{...d.data,priceImpactPercentage:p,isCrossChain:e&&s.chainId!==_optionalChain([e, 'optionalAccess', _211 => _211.chainId])},refresh:()=>{d.mutate()}}}function se({priceFeedMap:e},o){let t=e?Object.values(e):null,r=(_nullishCoalesce(_optionalChain([o, 'optionalAccess', _212 => _212.opts, 'optionalAccess', _213 => _213.isEnabled]), () => (!0)))&&t?["usePythLatestPrices",t]:null;return _swr2.default.call(void 0, r,async([a,n])=>await _chunk4TALWNXEcjs.u.call(void 0, {priceFeedId:n}))}var vr=({asset:e,amount:o,isMint:t,isBasketModeEnabled:r},s)=>{let a=_hooks.usePublicClient.call(void 0, ),{priceFeedMap:n,flags:i}=_chunkRCWM55DEcjs.l.call(void 0, ),{data:l}=se({priceFeedMap:_optionalChain([e, 'optionalAccess', _214 => _214.address])&&n?{[e.address]:n[e.address]}:void 0},{opts:{isEnabled:i.isPythWrapperEnabled&&!!_optionalChain([e, 'optionalAccess', _215 => _215.address])}}),u=o&&e&&(i.isPythWrapperEnabled&&_optionalChain([l, 'optionalAccess', _216 => _216.prices, 'access', _217 => _217.length])||!i.isPythWrapperEnabled)?["useCappedGlobally",o,e,l,i.isPythWrapperEnabled,r]:null,d=_swr2.default.call(void 0, u,async([p,m,c,f,y,g])=>g?!1:(_chunk33XNWMPPcjs.b.call(void 0, a),await _chunk4TALWNXEcjs.p.call(void 0, {client:a,asset:c,amount:t?m:`-${m}`,isMint:t,latestPrices:f,isPythWrapperEnabled:y})),{..._optionalChain([s, 'optionalAccess', _218 => _218.opts]),refreshInterval:0});return{...d,refresh:()=>{d.mutate()}}};var Dr=({asset:e,amount:o,isMint:t,isBasketModeEnabled:r},s)=>{let a=_hooks.usePublicClient.call(void 0, ),{collateralList:n,referenceCollateral:i}=_chunkRCWM55DEcjs.l.call(void 0, ),u=_swr2.default.call(void 0, e&&o?["useCappedRelatively",e,o,n,i]:null,async([d,p,m,c,f])=>{if(r)return!1;if(_chunk33XNWMPPcjs.b.call(void 0, a),!t){let y=`-${m}`;return f.address!==p?!1:(await Promise.all(c.map(b=>_chunk4TALWNXEcjs.v.call(void 0, {client:a,asset:b.address,amount:y,isMint:t,referenceCollateral:f})))).some(b=>b)}return await _chunk4TALWNXEcjs.v.call(void 0, {client:a,asset:p,amount:m,isMint:t,referenceCollateral:f})},{refreshInterval:0,..._optionalChain([s, 'optionalAccess', _219 => _219.opts])});return{...u,refresh:()=>{u.mutate()}}};var Hh=({collateralList:e},o)=>{let t=_hooks.usePublicClient.call(void 0, ),s=_swr2.default.call(void 0, t&&e?["useCollateralWeights",e]:void 0,async([a,n])=>(_chunk33XNWMPPcjs.b.call(void 0, t),await _chunk4TALWNXEcjs.l.call(void 0, {client:t,collateralList:n})),{..._optionalChain([o, 'optionalAccess', _220 => _220.opts]),refreshInterval:_nullishCoalesce(_optionalChain([o, 'optionalAccess', _221 => _221.opts, 'optionalAccess', _222 => _222.refreshInterval]), () => (1e5))});return{...s,refresh:()=>{s.mutate()}}};function Wh(){let e=_swr2.default.call(void 0, ["useHoney24hVolume"],()=>_chunk4TALWNXEcjs.q.call(void 0, ),{refreshInterval:18e4});return{...e,refresh:()=>e.mutate()}}var Lr=()=>{let e=_hooks.usePublicClient.call(void 0, ),{address:o}=_hooks.useBeraWallet.call(void 0, ),{collateralList:t}=_chunkRCWM55DEcjs.l.call(void 0, ),r=_hooks.useConfig.call(void 0, ),a=_swr2.default.call(void 0, o&&t&&e?["useHoneyBalances",o,t]:null,async([n,i,l])=>{_chunk33XNWMPPcjs.b.call(void 0, e);let u=[..._nullishCoalesce(l, () => ([])),_chunk54BTOQE3cjs.c.call(void 0, {})];return await _asyncOptionalChain([(await _chunkXZC34BHMcjs.c.call(void 0, {account:i,tokenList:u,wagmiConfig:r})), 'optionalAccess', async _223 => _223.reduce, 'call', async _224 => _224((m,c)=>(m[c.address]=c,m),{})])},{refreshInterval:1e4});return{...a,refresh:()=>a.mutate()}};var Hr=e=>{let o=_hooks.usePublicClient.call(void 0, ),{collateralList:t}=_chunkRCWM55DEcjs.l.call(void 0, ),s=_swr2.default.call(void 0, t&&o?["useHoneyVaultsBalance",t]:null,async([a,n])=>(_chunk33XNWMPPcjs.b.call(void 0, o),await _chunk4TALWNXEcjs.t.call(void 0, {client:o,collateralList:n})),{..._optionalChain([e, 'optionalAccess', _225 => _225.opts]),refreshInterval:1e5});return{...s,refresh:()=>{s.mutate()}}};var Ur=({collateral:e},o)=>{let t=_hooks.usePublicClient.call(void 0, ),{priceFeedMap:r,flags:s}=_chunkRCWM55DEcjs.l.call(void 0, ),{data:a}=se({priceFeedMap:_optionalChain([e, 'optionalAccess', _226 => _226.address])?{[e.address]:r[e.address]}:void 0},{opts:{isEnabled:s.isPythWrapperEnabled&&!!_optionalChain([e, 'optionalAccess', _227 => _227.address])}}),n=t&&e&&(s.isPythWrapperEnabled&&_optionalChain([a, 'optionalAccess', _228 => _228.prices, 'access', _229 => _229.length])||!s.isPythWrapperEnabled)?["useIsBadCollateralAsset",e,a,s.isPythWrapperEnabled]:null,i=_swr2.default.call(void 0, n,async([l,u,d,p])=>(_chunk33XNWMPPcjs.b.call(void 0, t),await _chunk4TALWNXEcjs.o.call(void 0, {client:t,collateral:u,latestPrices:d,isPythWrapperEnabled:p})),{..._optionalChain([o, 'optionalAccess', _230 => _230.opts]),refreshInterval:_nullishCoalesce(_optionalChain([o, 'optionalAccess', _231 => _231.opts, 'optionalAccess', _232 => _232.refreshInterval]), () => (1e5))});return{...i,refresh:()=>{i.mutate()}}};var Nr=({lowerThan:e,vaultsBalances:o,state:t,collateralList:r})=>{if(!(t.actionType==="mint")&&!t.isBasketModeEnabled){let a=_optionalChain([o, 'optionalAccess', _233 => _233.find, 'call', _234 => _234(l=>l.address.toLowerCase()===t.collaterals[0].address.toLowerCase())]),n=new (0, _chunk6DIA6PXVcjs.a)(_nullishCoalesce(_optionalChain([a, 'optionalAccess', _235 => _235.balance, 'access', _236 => _236.formatted]), () => ("0"))).lte(e),i=r.filter(l=>{let u=_optionalChain([o, 'optionalAccess', _237 => _237.find, 'call', _238 => _238(d=>d.address.toLowerCase()===l.address.toLowerCase())]);return new (0, _chunk6DIA6PXVcjs.a)(_nullishCoalesce(_optionalChain([u, 'optionalAccess', _239 => _239.balance, 'access', _240 => _240.formatted]), () => ("0"))).lte(e)});return{isLow:n,isLiquidityLowCollaterals:i}}return{isLow:!1,isLiquidityLowCollaterals:[]}},$i=({vaultsBalances:e,redeemedVaultBalance:o,state:t,collateralList:r})=>{if(!(t.actionType==="mint")&&e&&o){let a=r.filter(n=>{let i=e.find(u=>u.address.toLowerCase()===n.address.toLowerCase()),l=t.toAmount[t.collaterals.indexOf(n)];return new (0, _chunk6DIA6PXVcjs.a)(_nullishCoalesce(_optionalChain([i, 'optionalAccess', _241 => _241.balance, 'access', _242 => _242.formatted]), () => ("0"))).lt(_nullishCoalesce(l, () => ("0")))});return{isMore:!!a.find(n=>_chunk54BTOQE3cjs.d.call(void 0, n,t.collaterals[0])),isRedeemMoreThanLiquidityCollaterals:a}}return{isMore:!1,isRedeemMoreThanLiquidityCollaterals:void 0}};function zi({state:e,honeyBalances:o,...t}){let{config:r}=_chunkQVIAMSZ6cjs.a.call(void 0, t),s=e.actionType==="mint";return!s&&o?new (0, _chunk6DIA6PXVcjs.a)(e.fromAmount[0]).gt(_nullishCoalesce(_optionalChain([o, 'access', _243 => _243[r.honey.token], 'optionalAccess', _244 => _244.balance, 'access', _245 => _245.formatted]), () => ("0"))):s&&o&&e.isBasketModeEnabled!==void 0&&e.collaterals.length>0?e.isBasketModeEnabled?e.collaterals.some((a,n)=>{let i=e.fromAmount[n];return new (0, _chunk6DIA6PXVcjs.a)(_optionalChain([o, 'access', _246 => _246[a.address], 'optionalAccess', _247 => _247.balance, 'access', _248 => _248.formatted])).lt(i)}):new (0, _chunk6DIA6PXVcjs.a)(_optionalChain([o, 'access', _249 => _249[e.collaterals[0].address], 'optionalAccess', _250 => _250.balance, 'access', _251 => _251.formatted])).lt(e.fromAmount[0]):!1}var Ab=({actionType:e,collaterals:o,fromAmount:t,toAmount:r,isBasketModeEnabled:s})=>{let a={actionType:e,collaterals:o,fromAmount:t,toAmount:r,isBasketModeEnabled:s},n=e==="mint",{data:i}=Ur({collateral:o[0]}),{collateralList:l}=_chunkRCWM55DEcjs.l.call(void 0, ),{isBlacklisted:u,isDepegged:d}=_nullishCoalesce(i, () => ({isBlacklisted:!1,isDepegged:!1})),{data:p}=vr({asset:o[0],amount:n?t[0]:r[0],isMint:n,isBasketModeEnabled:s}),{data:m}=Dr({asset:_optionalChain([o, 'access', _252 => _252[0], 'optionalAccess', _253 => _253.address]),amount:n?t[0]:r[0],isMint:n,isBasketModeEnabled:s}),{data:c}=Lr(),{data:f}=Hr(),y=_optionalChain([o, 'access', _254 => _254[0], 'optionalAccess', _255 => _255.address]),g=_optionalChain([f, 'optionalAccess', _256 => _256.find, 'call', _257 => _257(I=>I.address.toLowerCase()===y.toLowerCase())]),[b,R]=_react.useMemo.call(void 0, ()=>{let I=Nr({lowerThan:1,vaultsBalances:f,state:a,collateralList:l}),T=Nr({lowerThan:1e3,vaultsBalances:f,state:a,collateralList:l});return[I,T]},[f,a]),{isMore:h,isRedeemMoreThanLiquidityCollaterals:C}=_react.useMemo.call(void 0, ()=>$i({vaultsBalances:f,redeemedVaultBalance:g,state:a,collateralList:l}),[f,g,a,l]),k=_react.useMemo.call(void 0, ()=>zi({state:a,honeyBalances:c}),[a,c]);return{isLiquidityDepleted:b.isLow,isLiquidityDepletedCollaterals:b.isLiquidityLowCollaterals,isRedeemMoreThanLiquidity:h,isRedeemMoreThanLiquidityCollaterals:C,isLowLiquidity:R.isLow,isLiquidityLowCollaterals:R.isLiquidityLowCollaterals,isBlacklisted:a.isBasketModeEnabled?!1:u,isDepegged:a.isBasketModeEnabled?!1:d,isCappedGlobally:p,isCappedRelatively:m,isExceedingBalance:k}};function wb({days:e}){let o=_swr2.default.call(void 0, ["useHoneyChartData",e],async([t,r])=>await _chunk4TALWNXEcjs.k.call(void 0, {days:r}));return{...o,refresh:()=>o.mutate()}}function Vr({state:e},o){let t=_hooks.usePublicClient.call(void 0, ),{priceFeedMap:r,flags:s,collateralList:a}=_chunkRCWM55DEcjs.l.call(void 0, ),{data:n}=se({priceFeedMap:r},{opts:{isEnabled:s.isPythWrapperEnabled&&!!a.length}}),i=e.actionType==="mint",l=t&&e&&a.length>0&&(s.isPythWrapperEnabled&&_optionalChain([n, 'optionalAccess', _258 => _258.prices, 'access', _259 => _259.length])||!s.isPythWrapperEnabled)?["useIsBasketModeEnabled",i,n,s.isPythWrapperEnabled,a]:null,u=_swr2.default.call(void 0, l,async([d,p,m,c,f])=>(_chunk33XNWMPPcjs.b.call(void 0, t),await _chunk4TALWNXEcjs.y.call(void 0, {client:t,isMint:p,collateralList:f,latestPrices:m,isPythWrapperEnabled:c})),{..._optionalChain([o, 'optionalAccess', _260 => _260.opts]),refreshInterval:_nullishCoalesce(_optionalChain([o, 'optionalAccess', _261 => _261.opts, 'optionalAccess', _262 => _262.refreshInterval]), () => (1e4))});return{...u,data:u.data,refresh:()=>{u.mutate()}}}var ol={actionType:"mint",collaterals:[],fromAmount:[],toAmount:[],isBasketModeEnabled:!1,isTyping:!1,isSubmitting:!1,isLoading:!1};function Mr(e,o){switch(o.type){case"RESET_AMOUNTS":return{...e,fromAmount:[],toAmount:[]};case"ACTION_TYPE_CHANGE":return Mr({...e,actionType:o.value},{type:"RESET_AMOUNTS"});case"COLLATERALS_CHANGE":return{...e,collaterals:o.value,fromAmount:[],toAmount:[]};case"FROM_AMOUNT_CHANGE":{let t=e.fromAmount;return t[o.index]=o.value,{...e,fromAmount:t}}case"TO_AMOUNT_CHANGE":{let t=e.toAmount;return t[o.index]=o.value,{...e,toAmount:t}}case"PREVIEW_CHANGE":{let t=o.value,r=e.actionType==="mint",s=e.collaterals.map((n,i)=>o.changedAsset===n.address?r?e.fromAmount[i]:e.toAmount[i]:t.collaterals[n.address]?_viem.formatUnits.call(void 0, t.collaterals[n.address],n.decimals):e.isBasketModeEnabled?"0":""),a=_chunk54BTOQE3cjs.d.call(void 0, o.changedAsset,"HONEY",{chainId:_internal.defaultChainId})?r?e.toAmount[0]:e.fromAmount[0]:t.honey?_viem.formatUnits.call(void 0, t.honey,18):e.isBasketModeEnabled?"0":"";return{...e,fromAmount:r?s:[a],toAmount:r?[a]:s}}case"IS_BASKET_MODE_ENABLED_CHANGE":return{...e,isBasketModeEnabled:o.value,fromAmount:[],toAmount:[]};case"IS_TYPING_CHANGE":return{...e,isTyping:o.value};case"IS_SUBMITTING_CHANGE":return{...e,isSubmitting:o.value};case"IS_LOADING_CHANGE":return{...e,isLoading:o.value};default:throw new Error(`Unknown action type: ${o}`)}}var Ub=()=>{let{collateralList:e}=_chunkRCWM55DEcjs.l.call(void 0, ),[o,t]=_react.useReducer.call(void 0, Mr,ol,s=>({...s,collaterals:e})),{data:r}=Vr({state:o});return _react.useEffect.call(void 0, ()=>{r!==void 0&&o.isBasketModeEnabled!==r&&(t({type:"IS_LOADING_CHANGE",value:!0}),t({type:"IS_BASKET_MODE_ENABLED_CHANGE",value:r}),t({type:"IS_LOADING_CHANGE",value:!1}))},[r]),{state:o,dispatch:t}};var Yb=({pythPriceFeedCalldata:e,tokenListLength:o},t)=>{let r=_hooks.usePublicClient.call(void 0, ),s=(_nullishCoalesce(_optionalChain([t, 'optionalAccess', _263 => _263.opts, 'optionalAccess', _264 => _264.isEnabled]), () => (!0)))&&e&&e.length>0?["usePythUpdateFee",e]:null,{data:a=_chunk6DIA6PXVcjs.k.call(void 0, o),isLoading:n}=_immutable2.default.call(void 0, s,async([i,l])=>(_chunk33XNWMPPcjs.b.call(void 0, r),_chunk4TALWNXEcjs.w.call(void 0, {client:r,priceFeedId:l})));return{QUERY_KEY:s,data:a,isLoading:n}};function Kb(e){return _react.useMemo.call(void 0, ()=>{if(e)return _chunk4TALWNXEcjs.C.call(void 0, e)},[e])}var _bgt = require('@berachain/abis/pol/bgt');var dl=e=>{let{address:o}=_hooks.useBeraWallet.call(void 0, ),t=_hooks.usePublicClient.call(void 0, ),s=_swr2.default.call(void 0, o&&t?["useBgtUnstakedBalance",o]:null,async([,a])=>{_chunk33XNWMPPcjs.b.call(void 0, t);let{config:n}=_chunkQVIAMSZ6cjs.a.call(void 0, {chainId:t.chain.id}),i=await t.readContract({address:n.tokens.bgt,abi:_bgt.bgtAbi,functionName:"unboostedBalanceOf",args:[a]});return _viem.formatEther.call(void 0, i)},{...e,refreshInterval:_nullishCoalesce(_optionalChain([e, 'optionalAccess', _265 => _265.opts, 'optionalAccess', _266 => _266.refreshInterval]), () => (1e5))});return{...s,refresh:()=>s.mutate()}};var yl=()=>{let{address:e}=_hooks.useBeraWallet.call(void 0, ),o=_hooks.usePublicClient.call(void 0, ),r=_swr2.default.call(void 0, e&&o?["useClaimableFees",e]:null,async([,s])=>{_chunk33XNWMPPcjs.b.call(void 0, o);let{config:a}=_chunkQVIAMSZ6cjs.a.call(void 0, {chainId:o.chain.id}),n=await _chunk4TALWNXEcjs.U.call(void 0, {account:s,vaultAddress:a.pol.staker,publicClient:o});return _viem.formatUnits.call(void 0, n,18)},{refreshInterval:18e4*2});return{...r,refresh:()=>_optionalChain([r, 'optionalAccess', _267 => _267.mutate, 'optionalCall', _268 => _268()])}};var _api = require('@berachain/graphql/pol/api');var bl=(e,o=!1)=>["useRewardVaults",e,o],kt= exports.useRewardVaults =(e,o)=>{let t=bl(e.filter,e.onChainIncentives),r=_hooks.usePublicClient.call(void 0, ),s=_swr2.default.call(void 0, _nullishCoalesce(_optionalChain([o, 'optionalAccess', _269 => _269.opts, 'optionalAccess', _270 => _270.isEnabled]), () => (!0))?t:null,async([,a,n])=>await _chunk4TALWNXEcjs.E.call(void 0, {filter:a,publicClient:n?r:void 0}),{..._optionalChain([o, 'optionalAccess', _271 => _271.opts])});return{...s,refresh:s.mutate}};var gR=(e={},{isEnabled:o=!0}={})=>{let t=kt({filter:{orderBy:_api.GqlRewardVaultOrderBy.Apr,orderDirection:_api.GqlRewardVaultOrderDirection.Desc,pageSize:1,where:e}},{opts:{refreshInterval:0,revalidateOnFocus:!1,refreshWhenOffline:!1,isEnabled:o}});return{isLoading:t.isLoading,highestApr:_optionalChain([t, 'access', _272 => _272.data, 'optionalAccess', _273 => _273.gaugeList, 'access', _274 => _274[0], 'access', _275 => _275.dynamicData, 'optionalAccess', _276 => _276.apr]),refresh:t.mutate}};var Qr=e=>{let o=_hooks.usePublicClient.call(void 0, ),t=_swr2.default.call(void 0, o?"usePollGlobalData":null,async()=>(_chunk33XNWMPPcjs.b.call(void 0, o),_chunk4TALWNXEcjs.F.call(void 0, o)),{revalidateOnFocus:!1,..._optionalChain([e, 'optionalAccess', _277 => _277.opts])});return{...t,refresh:t.mutate}};var Pl=()=>"usePollMarkets",IR= exports.usePollMarkets =e=>{let o=Pl(),t=_immutable2.default.call(void 0, o,async()=>await _chunk4TALWNXEcjs.H.call(void 0, ),{..._optionalChain([e, 'optionalAccess', _278 => _278.opts])});return{...t,refresh:()=>t.mutate()}};function OR({receiptTokenAddresses:e,account:o,version:t},r){let s=_hooks.usePublicClient.call(void 0, ),a=e&&o&&s&&_viem.isAddress.call(void 0, o)&&t?["useQueuedBeraUnlock",e,o,t]:null,n=_immutable2.default.call(void 0, a,async([,i,l,u])=>(_chunk33XNWMPPcjs.b.call(void 0, s),await Promise.all(i.map(async d=>await _chunk4TALWNXEcjs.R.call(void 0, {contractAddress:d,accountAddress:l,publicClient:s,version:u}))).then(d=>d.flat())),{refreshInterval:1e4,..._optionalChain([r, 'optionalAccess', _279 => _279.opts])});return{...n,refresh:()=>n.mutate()}}var MR=({address:e},o)=>{let t=e?["useRewardTokenToBeraRate",e]:null,r=_hooks.usePublicClient.call(void 0, {chainId:_internal.defaultChainId});return _swr2.default.call(void 0, t,async([s,a])=>{if(!a||!_viem.isAddress.call(void 0, a))throw new (0, _chunk6JJIZCVYcjs.h)({property:"address",value:a,expected:"Address"});return _chunk33XNWMPPcjs.b.call(void 0, r),_chunk4TALWNXEcjs.J.call(void 0, {address:a,publicClient:r})},{..._optionalChain([o, 'optionalAccess', _280 => _280.opts])})};var _beraChef = require('@berachain/abis/pol/rewards/beraChef');async function ve({address:e,publicClient:o}){_chunk33XNWMPPcjs.b.call(void 0, o);let[t,r,s,a]=await o.multicall({contracts:[{address:e,abi:_viem.erc20Abi,functionName:"decimals"},{address:e,abi:_viem.erc20Abi,functionName:"name"},{address:e,abi:_viem.erc20Abi,functionName:"symbol"},{address:e,abi:_viem.erc20Abi,functionName:"totalSupply"}],allowFailure:!0});return{address:e,decimals:t.result,name:r.result,symbol:s.result,totalSupply:a.result!==void 0?t.status==="success"?_viem.formatUnits.call(void 0, a.result,t.result):a.result.toString():void 0}}var Ml=e=>e&&_viem.isAddress.call(void 0, e)?["onChainRewardVault",e.toLowerCase()]:null,_r=({address:e},o)=>{let t=_hooks.usePublicClient.call(void 0, ),r=_nullishCoalesce(_optionalChain([o, 'access', _281 => _281.opts, 'optionalAccess', _282 => _282.isEnabled]), () => (!0)),s=Ml(e);return _swr2.default.call(void 0, r&&t?s:null,async([,a])=>{_chunk33XNWMPPcjs.b.call(void 0, t);let{config:n}=_chunkQVIAMSZ6cjs.a.call(void 0, {chainId:t.chain.id}),i=await _chunk4TALWNXEcjs.M.call(void 0, {address:a,publicClient:t}),[l,u,d]=await Promise.all([_chunk4TALWNXEcjs.L.call(void 0, {address:a,stakingToken:i,publicClient:t}),t.readContract({address:n.pol.beraChef,abi:_beraChef.beraChefAbi,functionName:"isWhitelistedVault",args:[a]}),t.readContract({address:i,abi:_viem.erc20Abi,functionName:"balanceOf",args:[a]})]),[p,m]=await Promise.all([ve({address:i,publicClient:t}),Promise.all(l.map(c=>_chunk4TALWNXEcjs.m.call(void 0, {address:c.token,chainId:t.chain.id,publicClient:t})))]);if(!p)throw new Error("Staking token not found");return{id:a,address:a,vaultAddress:a,stakingToken:{address:i,name:_nullishCoalesce(p.name, () => ("")),symbol:_nullishCoalesce(p.symbol, () => ("")),decimals:_nullishCoalesce(p.decimals, () => (0))},stakingTokenAmount:_viem.formatUnits.call(void 0, d,_nullishCoalesce(p.decimals, () => (18))),isVaultWhitelisted:u,activeIncentives:l.map((c,f)=>({active:!!c.remainingAmount,remainingAmount:c.remainingAmount,remainingAmountUsd:"0",incentiveRate:c.incentiveRate,incentiveRateUsd:"0",tokenAddress:c.token,token:m[f]}))}})};var _l=e=>e?["useRewardVault",e.toLowerCase()]:null,aw= exports.useRewardVault =(e,o)=>{let t=_l(e),r=_swr2.default.call(void 0, t,async([n,i])=>_chunk4TALWNXEcjs.K.call(void 0, {address:i}),{..._optionalChain([o, 'optionalAccess', _283 => _283.opts])}),s=_nullishCoalesce(_optionalChain([o, 'optionalAccess', _284 => _284.opts, 'optionalAccess', _285 => _285.isEnabled]), () => (((!!r.error||!r.isLoading)&&!r.data))),a=_r({address:e},{opts:{..._optionalChain([o, 'optionalAccess', _286 => _286.opts]),isEnabled:s}});return{data:_nullishCoalesce(a.data, () => (r.data)),error:_nullishCoalesce(a.error, () => (r.error)),isLoading:a.isLoading||r.isLoading,isValidating:_nullishCoalesce(a.isValidating, () => (r.isValidating)),refresh:()=>{r.mutate(),a.mutate()}}};function dw({address:e,stakingToken:o}){let t=_hooks.usePublicClient.call(void 0, ),s=_swr2.default.call(void 0, t&&e&&o?["useRewardVaultIncentives",e,o]:null,async([,a,n])=>(_chunk33XNWMPPcjs.b.call(void 0, t),await _chunk4TALWNXEcjs.L.call(void 0, {address:a,stakingToken:n,publicClient:t})));return{...s,refresh:()=>_optionalChain([s, 'optionalAccess', _287 => _287.mutate, 'optionalCall', _288 => _288()])}}var Kl=(e,o)=>{let t=_hooks.usePublicClient.call(void 0, ),s=_swr2.default.call(void 0, t&&e?["useRewardVaultRewards",e]:null,async([,a])=>(_chunk33XNWMPPcjs.b.call(void 0, t),await _chunk4TALWNXEcjs.B.call(void 0, a,t)),{..._optionalChain([o, 'optionalAccess', _289 => _289.opts])});return{...s,refresh:()=>_optionalChain([s, 'optionalAccess', _290 => _290.mutate, 'optionalCall', _291 => _291()])}};var De=e=>{let o=[],t="";for(let r of e){if(!r.timestamp&&!r._timestamp)continue;let s=(_nullishCoalesce(_nullishCoalesce(_optionalChain([r, 'optionalAccess', _292 => _292.timestamp]), () => (_optionalChain([r, 'optionalAccess', _293 => _293._timestamp]))), () => (0)))*1e3,a=new Date(s),n=a.toDateString();if(n!==t){let i=new Date(a.setHours(0,0,0,0)).getTime()/1e3;o.push({...r,timestamp:i,_timestamp:i}),t=n}}return o};function kw({range:e}){let t=_swr2.default.call(void 0, e?["useStakedAPR",e]:null,async([,r])=>{let s=await _chunk4TALWNXEcjs.O.call(void 0, {range:r});return De(s.sort((n,i)=>n.timestamp-i.timestamp)).map(n=>({_timestamp:n.timestamp,apr:n.apr}))});return{...t,refresh:()=>t.mutate()}}var Hw=e=>{let o=_chunkRCWM55DEcjs.c.call(void 0, "swberaAprWindow"),t=_hooks.usePublicClient.call(void 0, ),{address:r}=_hooks.useBeraWallet.call(void 0, ),s=_react.useMemo.call(void 0, ()=>e.map(h=>h.receiptToken),[e]),a=_react.useMemo.call(void 0, ()=>e.map(h=>h.inputTokens[0]),[e]),n=o?["useStakedData:apr",o]:null,{data:i}=_swr2.default.call(void 0, n,async([,h])=>_chunk4TALWNXEcjs.N.call(void 0, {window:h}),{refreshInterval:1e5}),{data:l,isLoading:u}=Be({tokens:s}),{getTokenPrice:d}=Z({tokens:a}),p=t&&s.length>0?["useStakedData:exchangeRates",s]:null,{data:m}=_swr2.default.call(void 0, p,async([,h])=>(_chunk33XNWMPPcjs.b.call(void 0, t),Promise.all(h.map(C=>_chunk4TALWNXEcjs.J.call(void 0, {address:C.address,publicClient:t})))),{refreshInterval:1e5}),c=_react.useMemo.call(void 0, ()=>{if(!(!l||!m))return e.map((h,C)=>{let k=h.inputTokens[0],I=_nullishCoalesce(_optionalChain([l, 'access', _294 => _294.find, 'call', _295 => _295(_=>_.address===h.receiptToken.address), 'optionalAccess', _296 => _296.balance, 'access', _297 => _297.raw]), () => ("0")),T=_nullishCoalesce(m[C], () => (0)),x=_nullishCoalesce(d(k), () => (0)),H=new (0, _chunk6DIA6PXVcjs.a)(I).multipliedBy(T).dividedBy(10**k.decimals),O=H.multipliedBy(x);return{token:k,apr:_nullishCoalesce(i, () => (0)),stakedAmount:H.toNumber(),stakedAmountUsd:O.toNumber(),earnedAmount:0,earnedAmountUsd:0,isLoadingEarnings:!0}})},[l,m,e,i,d]),f=r&&t&&e.length>0?["useStakedData:positions",r,e]:null,{data:y,isLoading:g,isValidating:b}=_swr2.default.call(void 0, f,async([,h,C])=>(_chunk33XNWMPPcjs.b.call(void 0, t),Promise.all(C.map(async k=>{let I=k.receiptToken,[T,x]=await Promise.all([_chunk4TALWNXEcjs.D.call(void 0, {address:I.address,account:h}),_chunk4TALWNXEcjs.J.call(void 0, {address:I.address,publicClient:t})]);return{earnings:T,exchangeRate:x}}))),{refreshInterval:1e4}),R=_react.useMemo.call(void 0, ()=>{if(!(!y||!l))return e.map((h,C)=>{let k=h.inputTokens[0],I=h.receiptToken,{earnings:T,exchangeRate:x}=y[C],v=_nullishCoalesce(d(k), () => (0)),H=_nullishCoalesce(_optionalChain([l, 'access', _298 => _298.find, 'call', _299 => _299(He=>He.address===I.address), 'optionalAccess', _300 => _300.balance, 'access', _301 => _301.raw]), () => ("0")),O=_nullishCoalesce(x, () => (0)),_=new (0, _chunk6DIA6PXVcjs.a)(T.earningsTotal).minus(T.earningsRealized),Y=new (0, _chunk6DIA6PXVcjs.a)(H).multipliedBy(O).minus(_).dividedBy(10**k.decimals),F=_.dividedBy(10**k.decimals),D=Y.multipliedBy(v),G=F.multipliedBy(v);return{token:k,apr:_nullishCoalesce(i, () => (0)),stakedAmount:Y.toNumber(),earnedAmount:F.toNumber(),stakedAmountUsd:D.toNumber(),earnedAmountUsd:G.toNumber()}})},[y,l,e,i,d]);return{balances:c,data:R,isLoading:u&&g,isLoadingBalances:u,isLoadingPositions:g,isValidatingPositions:b}};async function Yr({address:e,range:o}){let t=new Date,r=new Date(t.getTime()-Number(o)*24*60*60*1e3),{config:s}=_chunkQVIAMSZ6cjs.a.call(void 0, {}),a=`${_config.getUriFromLink.call(void 0, s.staking)}/vaults/${e}/total-assets-by-day?start=${r.toISOString().split("T")[0]}`;return _chunk6DIA6PXVcjs.d.call(void 0, {url:a,name:typeof s.staking=="string"?"backend-railway":s.staking.name,type:"rest"})}function Fw({range:e,addresses:o}){let r=_swr2.default.call(void 0, e?["useStakedSnapshots",e,o]:null,async([,s,a])=>{let[...n]=await Promise.all([...a.map(async i=>{let l=await Yr({address:i,range:s}),u=De(l.sort((d,p)=>d._timestamp-p._timestamp));return{[i]:u}})]);return n.reduce((i,l)=>({...i,...l}),{})});return{...r,refresh:()=>r.mutate()}}var jw=(e=[])=>{let o=_hooks.usePublicClient.call(void 0, ),t=_chunkRCWM55DEcjs.g.call(void 0, ),r=e.length>0&&o&&t?["useStakingVaultMetadata",e,o,t]:null;return _swr2.default.call(void 0, r,async([,s,a,n])=>(_chunk33XNWMPPcjs.b.call(void 0, a),Promise.all(s.map(i=>_chunk4TALWNXEcjs.Q.call(void 0, {address:i.address,underlyingAsset:i.underlyingAsset,publicClient:a,blockTime:n})))),{refreshInterval:1e4})};function ok({vaultAddresses:e}){let o=_hooks.usePublicClient.call(void 0, ),t=_swr2.default.call(void 0, e&&o?["useTotalStakedAmount",e]:null,([,r])=>_chunk4TALWNXEcjs.S.call(void 0, {vaultAddresses:r,publicClient:o}));return{...t,refresh:()=>t.mutate()}}var nu=(e,o)=>{let{address:t}=_hooks.useBeraWallet.call(void 0, ),r=_hooks.usePublicClient.call(void 0, ),s=t&&r&&e.vaultAddress?["useUserVaultInfo",t,e.vaultAddress]:null,a=_swr2.default.call(void 0, s,async([,n,i])=>(_chunk33XNWMPPcjs.b.call(void 0, r),_chunk4TALWNXEcjs.V.call(void 0, {account:n,vaultAddress:i,publicClient:r})),{...o,refreshInterval:_nullishCoalesce(_optionalChain([o, 'optionalAccess', _302 => _302.opts, 'optionalAccess', _303 => _303.refreshInterval]), () => (1e5))});return{...a,refresh:()=>a.mutate()}};var pu=e=>{let{address:o}=_hooks.useBeraWallet.call(void 0, ),t=_hooks.usePublicClient.call(void 0, ),s=_swr2.default.call(void 0, o&&t?["useUserVaults",o]:null,async([,a])=>(_chunk33XNWMPPcjs.b.call(void 0, t),await _chunk4TALWNXEcjs.W.call(void 0, {account:a,publicClient:t})),{...e,refreshInterval:_nullishCoalesce(_optionalChain([e, 'optionalAccess', _304 => _304.opts, 'optionalAccess', _305 => _305.refreshInterval]), () => (1e5)),keepPreviousData:!0});return{...s,refresh:()=>_optionalChain([s, 'optionalAccess', _306 => _306.mutate, 'optionalCall', _307 => _307()])}};var hk=e=>{let o=_hooks.usePublicClient.call(void 0, );return _swr2.default.call(void 0, e&&o?["useVaultAddress",e]:null,async([,r])=>{_chunk33XNWMPPcjs.b.call(void 0, o);let[s]=await Promise.all([_chunk4TALWNXEcjs.M.call(void 0, {address:r,publicClient:o})]);return{stakeToken:s,address:r}})};var kk=({vault:e,range:o,resolution:t})=>{let s=_swr2.default.call(void 0, e?["useVaultHistory",e,o,t]:null,([,a,n,i])=>_chunk4TALWNXEcjs.X.call(void 0, {vault:a,range:n,resolution:i}));return{...s,refresh:()=>s.mutate()}};var gu=(e,o)=>{let r=_swr2.default.call(void 0, e?["useVaultValidators",e]:null,async([,s])=>await _chunk4TALWNXEcjs.Y.call(void 0, {address:s}),{..._optionalChain([o, 'optionalAccess', _308 => _308.opts])});return{...r,refresh:()=>r.mutate()}};function Fr({address:e},o){let t=oe({addressIn:e?[e]:void 0},o);return{...t,data:e?_optionalChain([t, 'access', _309 => _309.data, 'optionalAccess', _310 => _310[e.toLowerCase()]]):void 0}}function Ok(e){return Fr({address:_viem.zeroAddress},e)}var Vk=(e,o)=>{let t=_hooks.usePublicClient.call(void 0, ),r=_optionalChain([e, 'optionalAccess', _311 => _311.address])&&t&&_viem.isAddress.call(void 0, e.address)?["useStakingTokenInformation",e.address]:null,s=_immutable2.default.call(void 0, r,async([a,n])=>_chunk54BTOQE3cjs.d.call(void 0, n,"BERA")?{address:_viem.zeroAddress,decimals:_chunk54BTOQE3cjs.a.decimals,name:_chunk54BTOQE3cjs.a.name,symbol:_chunk54BTOQE3cjs.a.symbol}:await ve({address:n,publicClient:t}),{..._optionalChain([o, 'optionalAccess', _312 => _312.opts])});return{...s,refresh:()=>_optionalChain([s, 'optionalAccess', _313 => _313.mutate, 'optionalCall', _314 => _314()])}};function Qk({token:e},o){let{isLoading:t,priceMap:r}=Z({tokens:e?[e]:void 0},o);return{data:e?_optionalChain([r, 'access', _315 => _315[e.chainId], 'optionalAccess', _316 => _316[e.address.toLowerCase()]]):void 0,isLoading:t}}function Kk({address:e}){let o=_hooks.usePublicClient.call(void 0, );return _swr2.default.call(void 0, e&&o?["useTotalSupply",e]:null,([,t])=>(_chunk33XNWMPPcjs.b.call(void 0, o),o.readContract({address:t,abi:_viem.erc20Abi,functionName:"totalSupply",args:[]})))}function oC(e){let o=_hooks.usePublicClient.call(void 0, ),{config:t}=_chunkQVIAMSZ6cjs.a.call(void 0, {chainId:_optionalChain([o, 'optionalAccess', _317 => _317.chain, 'access', _318 => _318.id])}),{data:r,isLoading:s}=_hooks.useBlockNumber.call(void 0, {cacheTime:_chunk6DIA6PXVcjs.m.call(void 0, t.averageBlockTime)}),{data:a}=_immutable2.default.call(void 0, r&&o&&Number(e)>0?["useBlockToTimestamp",e,r]:null,async([,i,l])=>(_chunk33XNWMPPcjs.b.call(void 0, o),_chunk4TALWNXEcjs.z.call(void 0, {block:i,currentBlock:l,blockTime:n,publicClient:o}))),n=_chunkRCWM55DEcjs.g.call(void 0, );if(a)return Number(a.timestamp);if(!(s||!r))return Math.floor(_chunk6DIA6PXVcjs.l.call(void 0, Date.now())+n*(Number(e)-Number(r)))}var It={confirmState:"idle",txnHash:"",message:""},Gr=(e,o)=>{switch(o.type){case"confirm_sending":return{...e,confirmState:"loading"};case"confirm_receipt":return{...e,confirmState:"success"};case"confirm_error":return{...e,confirmState:"fail"};case"confirm_submitting":return{...e,confirmState:"submitting"};case"confirm_reset":return{...It};default:return e}};function Bu({onlyPermissionless:e,onSuccess:o,onError:t,onLoading:r,onWarning:s,onSubmission:a}={}){let[n,i]=_react.useReducer.call(void 0, Gr,It),{account:l,onSmartAccountRejection:u}=_hooks.useBeraWagmi.call(void 0, ),d=_hooks.useConfig.call(void 0, ),p=_optionalChain([l, 'optionalAccess', _319 => _319.wallet, 'optionalAccess', _320 => _320.isContract])?6e4*10:12e4,m=_react.useCallback.call(void 0, ()=>{i({type:"confirm_reset"})},[]),c=_chunkRCWM55DEcjs.c.call(void 0, "enableSimulateCalls"),f=_react.useCallback.call(void 0, y=>{if(e&&!y.permissionless){let g=new (0, _chunkREWME3FYcjs.b)({message:"Trying to send a non-permissionless transaction with an overridden account",displayMessage:"You can't send this transaction with an overridden account. Please reset the account in the settings popover.",level:"info",input:y});throw _optionalChain([s, 'optionalCall', _321 => _321(g,y)]),_optionalChain([t, 'optionalCall', _322 => _322(g,y)]),g}return _chunk4TALWNXEcjs.aa.call(void 0, {wagmiConfig:d,...y,txConfirmationTimeout:p,enableSimulateCalls:c,onLoading(...g){i({type:"confirm_sending"}),_optionalChain([y, 'access', _323 => _323.onLoading, 'optionalCall', _324 => _324(y)]),_optionalChain([r, 'optionalCall', _325 => _325(...g)])},onWarning(...g){_optionalChain([y, 'access', _326 => _326.onWarning, 'optionalCall', _327 => _327(g[0],y)]),_optionalChain([s, 'optionalCall', _328 => _328(...g)])},onSubmission(...g){i({type:"confirm_submitting"}),_optionalChain([y, 'access', _329 => _329.onSubmission, 'optionalCall', _330 => _330(g[0],y)]),_optionalChain([a, 'optionalCall', _331 => _331(...g)])},onSuccess(...g){i({type:"confirm_receipt"}),_optionalChain([y, 'access', _332 => _332.onSuccess, 'optionalCall', _333 => _333(g[0],y)]),_optionalChain([o, 'optionalCall', _334 => _334(...g)])},onError(...g){i({type:"confirm_error"}),_optionalChain([y, 'access', _335 => _335.onError, 'optionalCall', _336 => _336(g[0],y)]),g[0].reason==="AtomicReadyWalletRejectedUpgradeError"&&u(),_optionalChain([t, 'optionalCall', _337 => _337(...g)])}})},[d,r,s,a,o,t,e,c]);return{isLoading:n.confirmState==="loading",isSubmitting:n.confirmState==="submitting",isSuccess:n.confirmState==="success",isError:n.confirmState==="fail",write:f,reset:m}}var Ou=Bu;async function Uu(e){let o=await _chunk6DIA6PXVcjs.d.call(void 0, {url:`https://api.routescan.io/v2/network/testnet/evm/${_internal.chainId}/etherscan/api?module=contract&action=getabi&address=${e}`,type:"rest",name:"RouteScan"});if(o.status==="0")throw new Error(o.result);return o.result}var RC=e=>_immutable2.default.call(void 0, e&&_viem.isAddress.call(void 0, e)&&e!==_viem.zeroAddress?["useGetVerifiedAbi",e]:null,()=>e?Uu(e):Promise.resolve(""),{});function CC({key:e,defaultValue:o}){let t=_react.useCallback.call(void 0, ()=>{if(typeof window>"u")return o;let n=_optionalChain([window, 'access', _338 => _338.history, 'access', _339 => _339.state, 'optionalAccess', _340 => _340[e]]);return n!==void 0?n:o},[e,o]),[r,s]=_react.useState.call(void 0, t()),a=_react.useCallback.call(void 0, n=>{let i=t(),l=n instanceof Function?n(i):n,d={...window.history.state||{},[e]:l};window.history.replaceState(d,""),s(l)},[e,t]);return _react.useEffect.call(void 0, ()=>{if(_optionalChain([window, 'access', _341 => _341.history, 'access', _342 => _342.state, 'optionalAccess', _343 => _343[e]])===void 0){let l={...window.history.state||{},[e]:o};window.history.replaceState(l,"")}},[e,o]),[r,a]}function TC(e){let o=_react.useRef.call(void 0, void 0);return _react.useEffect.call(void 0, ()=>{o.current=e}),o.current}var _u=({variables:e}={})=>["useAllValidators",e],OC= exports.useAllValidators =(e,o)=>{let{config:t}=_chunkQVIAMSZ6cjs.a.call(void 0, e),r=_swr2.default.call(void 0, _u({variables:e}),async([,s])=>await _chunk4TALWNXEcjs.ba.call(void 0, {variables:{chain:t.bex.chainName,...s}}),{refreshInterval:18e4,..._optionalChain([o, 'optionalAccess', _344 => _344.opts])});return{...r,refresh:()=>r.mutate()}};function HC({allocation:e}){return _swr2.default.call(void 0, e?["useApiEnrichedAllocation",e]:null,([,o])=>_chunk4TALWNXEcjs.ca.call(void 0, {allocation:o}))}var qu=e=>e?["useApiValidator",e]:null,$r= exports.useApiValidator =(e,o)=>{let t=qu(e),r=_nullishCoalesce(_optionalChain([o, 'optionalAccess', _345 => _345.opts, 'optionalAccess', _346 => _346.isEnabled]), () => (!0)),s=_swr2.default.call(void 0, r&&e?t:null,async([,a])=>{if(!a||!_viem.isHex.call(void 0, a))throw new Error(`Invalid validator ID: ${a}`);return _chunk4TALWNXEcjs.da.call(void 0, {id:a})},{..._optionalChain([o, 'optionalAccess', _347 => _347.opts])});return{...s,refresh:()=>s.mutate()}};var _rewardAllocatorFactory = require('@berachain/abis/pol/rewards/rewardAllocatorFactory');async function zr({publicClient:e,...o}){let{config:t}=_chunkQVIAMSZ6cjs.a.call(void 0, o),r=await e.readContract({abi:_rewardAllocatorFactory.rewardAllocatorFactoryAbi,address:t.pol.rewardAllocationFactory,functionName:"getBaselineAllocation"}),s=r.startBlock!==0n?await e.getBlock({blockNumber:r.startBlock}):{timestamp:0};return _chunk4TALWNXEcjs.fa.call(void 0, r,Number(s.timestamp))}function zC(){let e=_hooks.usePublicClient.call(void 0, );return _swr2.default.call(void 0, e?["baselineRewardAllocation"]:null,()=>(_chunk33XNWMPPcjs.b.call(void 0, e),zr({publicClient:e})))}var ju=({pubKey:e,first:o=1})=>{let r=_swr2.default.call(void 0, e?["useDailyValidatorBlockStats",e,o]:null,async([,s,a])=>await _chunk4TALWNXEcjs.ea.call(void 0, {pubKey:s,first:a}),{refreshInterval:18e4});return{...r,refresh:()=>r.mutate()}};function ep(e){let o=_hooks.usePublicClient.call(void 0, ),r=_swr2.default.call(void 0, o?["useDefaultRewardAllocation"]:null,async()=>(_chunk33XNWMPPcjs.b.call(void 0, o),await _chunk4TALWNXEcjs.ja.call(void 0, {client:o})),{..._optionalChain([e, 'optionalAccess', _348 => _348.opts])});return{...r,refresh:()=>r.mutate()}}async function Zr({client:e,pubKey:o,...t}){let{config:r}=_chunkQVIAMSZ6cjs.a.call(void 0, t);try{let s=await e.readContract({address:r.pol.beraChef,abi:_beraChef.beraChefAbi,functionName:"valRewardAllocator",args:[o]});return s===_viem.zeroAddress?null:s}catch(s){throw console.log("getValidatorRewardAllocatorAddress:",s),s}}function Jr(e,o){return!e||!o?!1:_optionalChain([o, 'access', _349 => _349.operator, 'optionalAccess', _350 => _350.toLowerCase, 'call', _351 => _351()])===e.toLowerCase()}function np(e,o){return!e||!o?!1:o.rewardAllocator?o.rewardAllocator.toLowerCase()===e.toLowerCase():Jr(e,o)}function ip({pubKey:e,account:o},t){let r=_hooks.usePublicClient.call(void 0, ),s=_chunkRCWM55DEcjs.c.call(void 0, "mockValidatorOperator"),a=_chunkRCWM55DEcjs.c.call(void 0, "mockValidatorRewardAllocator"),n=r&&e?["useManagedValidatorRole",e]:null,{address:i}=_hooks.useBeraWallet.call(void 0, ),l=_nullishCoalesce(o, () => (i)),u=_swr2.default.call(void 0, n,async([,m])=>{_chunk33XNWMPPcjs.b.call(void 0, r);let[c,f]=await Promise.all([_chunk4TALWNXEcjs.ra.call(void 0, {client:r,pubKey:m}),Zr({client:r,pubKey:m})]);return{operator:_nullishCoalesce(c, () => (null)),rewardAllocator:f}},{..._optionalChain([t, 'optionalAccess', _352 => _352.opts])}),d=_react.useMemo.call(void 0, ()=>s||Jr(l,u.data),[l,s,u.data]),p=_react.useMemo.call(void 0, ()=>a||np(l,u.data),[l,a,u.data]);return{...u,data:u.data?{...u.data,hasOperatorRole:d,hasRewardAllocatorRole:p}:void 0,refresh:()=>u.mutate()}}var _beaconDeposit = require('@berachain/abis/pol/beaconDeposit');var Xr=({pubkey:e},o)=>{let t=_hooks.usePublicClient.call(void 0, ),r=e?["useOnChainValidator",e]:null,s=_nullishCoalesce(_optionalChain([o, 'access', _353 => _353.opts, 'optionalAccess', _354 => _354.isEnabled]), () => (!0)),a=_swr2.default.call(void 0, s&&t?r:null,async([,n])=>{_chunk33XNWMPPcjs.b.call(void 0, t);let{config:i}=_chunkQVIAMSZ6cjs.a.call(void 0, {chainId:t.chain.id}),[l,u,d]=await Promise.all([t.readContract({address:i.depositContract,abi:_beaconDeposit.beaconDepositAbi,functionName:"getOperator",args:[n]}),_optionalChain([t, 'optionalAccess', _355 => _355.readContract, 'call', _356 => _356({address:i.tokens.bgt,abi:_bgt.bgtAbi,functionName:"boostees",args:[n]})]),t.readContract({address:i.pol.beraChef,abi:_beraChef.beraChefAbi,functionName:"getActiveRewardAllocation",args:[n]})]);return{id:_viem.keccak256.call(void 0, n),pubkey:n,operator:l,votingPower:Number(u)}});return{...a,refresh:()=>{a.mutate()}}};var BI=({valPubKey:e,options:o})=>{let t=_hooks.usePublicClient.call(void 0, ),s=(_nullishCoalesce(_optionalChain([o, 'optionalAccess', _357 => _357.opts, 'optionalAccess', _358 => _358.isEnabled]), () => (!0)))&&t&&e?["useStakingPoolBatch",e]:null,a=_swr2.default.call(void 0, s,async([,n])=>(_chunk33XNWMPPcjs.b.call(void 0, t),await _chunk4TALWNXEcjs.ka.call(void 0, {client:t,valPubKey:n})),{refreshInterval:1e4,..._optionalChain([o, 'optionalAccess', _359 => _359.opts])});return{...a,refresh:()=>a.mutate()}};var bp=e=>{let{address:o}=_hooks.useBeraWallet.call(void 0, ),t=_hooks.usePublicClient.call(void 0, ),s=_swr2.default.call(void 0, t&&o?["useUserActiveValidators",o]:null,async([,a])=>await _chunk4TALWNXEcjs.ma.call(void 0, {account:a,publicClient:t}),{...e,refreshInterval:_nullishCoalesce(_optionalChain([e, 'optionalAccess', _360 => _360.opts, 'optionalAccess', _361 => _361.refreshInterval]), () => (18e4)),keepPreviousData:!0});return{...s,refresh:()=>_optionalChain([s, 'optionalAccess', _362 => _362.mutate, 'optionalCall', _363 => _363()])}};var Cp=({pubkey:e,...o})=>{let{address:t}=_hooks.useBeraWallet.call(void 0, ),r=_hooks.usePublicClient.call(void 0, ),s=_nullishCoalesce(o.account, () => (t)),n=_swr2.default.call(void 0, s&&e?["useUserBoostsOnValidator",e,s]:null,async([,i,l])=>await _chunk4TALWNXEcjs.la.call(void 0, {account:l,pubkey:i,publicClient:r}),{refreshInterval:1e5});return{...n,refresh:()=>n.mutate()}};var es=e=>{let o=new Set;return e.forEach(t=>{Array.isArray(t.rewards)&&t.rewards.forEach(r=>{r.token&&o.add(r.token)})}),o};var Ep=()=>{let{address:e}=_hooks.useBeraWallet.call(void 0, ),t=_swr2.default.call(void 0, e?["useUserClaimableIncentives",e]:null,async([,l])=>{if(!l)throw new (0, _chunk6JJIZCVYcjs.f)({message:"useUserClaimableIncentives needs a logged in account",level:"error"});return await _chunk4TALWNXEcjs.T.call(void 0, {account:l})},{revalidateOnFocus:!1,revalidateOnReconnect:!1,revalidateIfStale:!1,refreshInterval:18e4}),r=_optionalChain([t, 'optionalAccess', _364 => _364.data]),s=_react.useMemo.call(void 0, ()=>{if(r){if(!Array.isArray(r)){_chunkY2FETC6Tcjs.b.captureException(new (0, _chunk6JJIZCVYcjs.f)({message:"Incorrect aggregated incentives data receieved.",level:"error",extra:{allRewards:r,account:e}}));return}return es(r)}},[r,e]),n=_swr2.default.call(void 0, e&&r?["useUserClaimableIncentives",e,r]:null,async([,l,u])=>{if(!l)throw new (0, _chunk6JJIZCVYcjs.h)({property:"account",value:l,expected:"Address"});if(!u)return[];if(!Array.isArray(u))throw new (0, _chunk6JJIZCVYcjs.h)({message:"Incorrect aggregated incentives data receieved to calculate proofs.",property:"allRewards",value:u,expected:"Array",level:"error"});let d=new Set(u.map(m=>m.validator)),p=Array.from(d);return await Promise.all(p.map(async m=>({...await _chunk4TALWNXEcjs.I.call(void 0, {account:l,validator:m,page:1,perPage:1e4}),validator:m})))},{revalidateOnFocus:!1,revalidateOnReconnect:!1,revalidateIfStale:!1,refreshInterval:18e4}),i=_react.useCallback.call(void 0, ()=>{_optionalChain([t, 'optionalAccess', _365 => _365.mutate, 'call', _366 => _366()]),_optionalChain([n, 'optionalAccess', _367 => _367.mutate, 'call', _368 => _368()])},[t,n]);return{...n,isLoading:_optionalChain([t, 'optionalAccess', _369 => _369.isLoading])||_optionalChain([n, 'optionalAccess', _370 => _370.isLoading]),tokenMap:s,refresh:i}};var XI=({account:e,validatorAddress:o})=>{let r=_immutable2.default.call(void 0, e?["useUserStakingPositions",e,o]:null,async([s,a,n])=>{let i=await _chunk4TALWNXEcjs.na.call(void 0, a);return n?i.filter(l=>l.validatorAddress.toLowerCase()===n.toLowerCase()):i});return{...r,refresh:()=>{r.mutate()}}};function sP({pubkey:e},o){let{data:{validator:t,uptime:r}={},isLoading:s,error:a}=$r(_viem.keccak256.call(void 0, e),o),{data:n,isLoading:i,error:l}=Xr({pubkey:e},o);return{data:{uptime:r,validator:t||n?{...t,...n,operator:_nullishCoalesce(_optionalChain([n, 'optionalAccess', _371 => _371.operator]), () => (_optionalChain([t, 'optionalAccess', _372 => _372.operator]))),dynamicData:{activeBoostAmount:_nullishCoalesce(_nullishCoalesce(_optionalChain([n, 'optionalAccess', _373 => _373.dynamicData, 'optionalAccess', _374 => _374.activeBoostAmount]), () => (_optionalChain([t, 'optionalAccess', _375 => _375.dynamicData, 'optionalAccess', _376 => _376.activeBoostAmount]))), () => ("")),queuedBoostAmount:_nullishCoalesce(_optionalChain([t, 'optionalAccess', _377 => _377.dynamicData, 'optionalAccess', _378 => _378.queuedBoostAmount]), () => ("")),usersActiveBoostCount:_nullishCoalesce(_optionalChain([t, 'optionalAccess', _379 => _379.dynamicData, 'optionalAccess', _380 => _380.usersActiveBoostCount]), () => (0)),usersQueuedBoostCount:_nullishCoalesce(_optionalChain([t, 'optionalAccess', _381 => _381.dynamicData, 'optionalAccess', _382 => _382.usersQueuedBoostCount]), () => (0)),allTimeDistributedBGTAmount:_nullishCoalesce(_optionalChain([t, 'optionalAccess', _383 => _383.dynamicData, 'optionalAccess', _384 => _384.allTimeDistributedBGTAmount]), () => ("0")),rewardRate:_nullishCoalesce(_nullishCoalesce(_optionalChain([n, 'optionalAccess', _385 => _385.dynamicData, 'optionalAccess', _386 => _386.rewardRate]), () => (_optionalChain([t, 'optionalAccess', _387 => _387.dynamicData, 'optionalAccess', _388 => _388.rewardRate]))), () => ("")),stakedBeraAmount:_nullishCoalesce(_optionalChain([t, 'optionalAccess', _389 => _389.dynamicData, 'optionalAccess', _390 => _390.stakedBeraAmount]), () => ("")),lastDayDistributedBGTAmount:_nullishCoalesce(_optionalChain([t, 'optionalAccess', _391 => _391.dynamicData, 'optionalAccess', _392 => _392.lastDayDistributedBGTAmount]), () => ("")),activeBoostAmountRank:_nullishCoalesce(_optionalChain([t, 'optionalAccess', _393 => _393.dynamicData, 'optionalAccess', _394 => _394.activeBoostAmountRank]), () => (0)),boostApr:_nullishCoalesce(_optionalChain([t, 'optionalAccess', _395 => _395.dynamicData, 'optionalAccess', _396 => _396.boostApr]), () => (0)),commissionOnIncentives:_nullishCoalesce(_optionalChain([t, 'optionalAccess', _397 => _397.dynamicData, 'optionalAccess', _398 => _398.commissionOnIncentives]), () => (0))},id:_nullishCoalesce(_optionalChain([n, 'optionalAccess', _399 => _399.id]), () => (_optionalChain([t, 'optionalAccess', _400 => _400.id]))),pubkey:_nullishCoalesce(_optionalChain([n, 'optionalAccess', _401 => _401.pubkey]), () => (_optionalChain([t, 'optionalAccess', _402 => _402.pubkey]))),metadata:_nullishCoalesce(_optionalChain([n, 'optionalAccess', _403 => _403.metadata]), () => (_optionalChain([t, 'optionalAccess', _404 => _404.metadata]))),rewardAllocationWeights:_nullishCoalesce(_nullishCoalesce(_optionalChain([n, 'optionalAccess', _405 => _405.rewardAllocationWeights]), () => (_optionalChain([t, 'optionalAccess', _406 => _406.rewardAllocationWeights]))), () => ([]))}:null},isLoading:s||i,error:a||l}}function Op({pubkey:e,dayRange:o}){let r=_swr2.default.call(void 0, e&&o?["useValidatorAnalytics",e,o]:null,async([,s,a])=>await _chunk4TALWNXEcjs.oa.call(void 0, {pubkey:s,dayRange:a}),{refreshInterval:18e4});return{...r,refresh:()=>r.mutate()}}var Lp=(e,o)=>{let t=_hooks.usePublicClient.call(void 0, ),s=_swr2.default.call(void 0, t&&e?["useValidatorCommission",e]:null,async([,a])=>await _chunk4TALWNXEcjs.pa.call(void 0, {client:t,pubKey:a}),{..._optionalChain([o, 'optionalAccess', _407 => _407.opts])});return{...s,refresh:()=>s.mutate()}};var Hp=e=>{let{data:o,isLoading:t}=Qr(),r=_chunkRCWM55DEcjs.g.call(void 0, );return{data:o?_chunk4TALWNXEcjs.qa.call(void 0, e,Number(_optionalChain([o, 'optionalAccess', _408 => _408.totalStakedBeraAmount])),r):void 0,isLoading:t}};function Vp(e,o){let t=_hooks.usePublicClient.call(void 0, ),s=_swr2.default.call(void 0, t&&e?["useValidatorQueuedCommission",e]:null,async([,a])=>(_chunk33XNWMPPcjs.b.call(void 0, t),await _chunk4TALWNXEcjs.sa.call(void 0, {client:t,pubKey:a})),{..._optionalChain([o, 'optionalAccess', _409 => _409.opts])});return{...s,refresh:()=>s.mutate()}}var Qp=(e,o)=>{let t=_hooks.usePublicClient.call(void 0, ),s=_swr2.default.call(void 0, t&&e?["useValidatorQueuedOperatorAddress",e]:null,async([,a])=>await _chunk4TALWNXEcjs.ta.call(void 0, {client:t,pubKey:a}),{..._optionalChain([o, 'optionalAccess', _410 => _410.opts])});return{...s,refresh:()=>s.mutate()}};var Fp=(e,o)=>{let t=_hooks.usePublicClient.call(void 0, ),s=_swr2.default.call(void 0, t&&e?["useValidatorQueuedRewardAllocation",e]:null,async([,a])=>await _chunk4TALWNXEcjs.ua.call(void 0, {client:t,pubKey:a}),{..._optionalChain([o, 'optionalAccess', _411 => _411.opts])});return{...s,refresh:()=>s.mutate()}};function Kp(e,o){let t=_hooks.usePublicClient.call(void 0, ),s=_swr2.default.call(void 0, t&&e?["useValidatorRewardAllocation",e]:null,async([,a])=>_chunk4TALWNXEcjs.ha.call(void 0, {client:t,pubKey:a}),{..._optionalChain([o, 'optionalAccess', _412 => _412.opts])});return{...s,refresh:()=>s.mutate()}}exports.OracleMode = ca; exports.USE_AGGREGATORS_QUOTES_QUERY_KEY = er; exports.reducer = Mr; exports.useAggregatorsQuotes = Ic; exports.useAggregatorsRouterFeeBps = Re; exports.useAllUserPools = tr; exports.useAllUserPoolsQueryKey = ra; exports.useAllValidators = OC; exports.useAllValidatorsQueryKey = _u; exports.useApiEnrichedAllocation = HC; exports.useApiPool = or; exports.useApiPoolQueryKey = na; exports.useApiValidator = $r; exports.useApiValidatorQueryKey = qu; exports.useBaselineRewardAllocation = zC; exports.useBendDemultiply = rA; exports.useBendMultiply = RA; exports.useBendZapSupply = VA; exports.useBendZapSupplyHelper = mi; exports.useBeraContractWrite = Ou; exports.useBeraCurrentPrice = Ok; exports.useBexStatus = _chunkRCWM55DEcjs.e; exports.useBgtAprSimulation = Kb; exports.useBgtUnstakedBalance = dl; exports.useBlockToTimestamp = oC; exports.useCappedGlobally = vr; exports.useCappedRelatively = Dr; exports.useClaimableFees = yl; exports.useCollateralWeights = Hh; exports.useCreatePool = zc; exports.useDailyValidatorBlockStats = ju; exports.useDefaultRewardAllocation = ep; exports.useEnsoSwapBundle = ah; exports.useEnsoUserTokensWithBalances = _chunkRCWM55DEcjs.m; exports.useExploitedTokens = nf; exports.useExploitedTokensQueryKey = ka; exports.useGetConvertToAssets = Uo; exports.useGetVerifiedAbi = RC; exports.useGlobalLiquidityAndSwapVolume = Ia; exports.useHighestVaultsAPR = gR; exports.useHistoryState = CC; exports.useHoney24hVolume = Wh; exports.useHoneyAlerts = Ab; exports.useHoneyBalances = Lr; exports.useHoneyChartData = wb; exports.useHoneySwapState = Ub; exports.useHoneyVaultsBalance = Hr; exports.useIsBadCollateralAsset = Ur; exports.useIsBasketModeEnabled = Vr; exports.useLiquidityMismatch = gf; exports.useLpPosition = jf; exports.useManagedValidatorRole = ip; exports.useMultipleTokenApprovalsWithSlippage = sn; exports.useMultipleTokenInformation = yr; exports.useOnChainPoolData = Ar; exports.useOnChainPoolDataQueryKey = bn; exports.useOnChainValidator = Xr; exports.usePollAllowances = fr; exports.usePollBalance = Ce; exports.usePollGlobalData = Qr; exports.usePollMarkets = IR; exports.usePollMarketsQueryKey = Pl; exports.usePollPoolCreationRelayerApproval = In; exports.usePollWalletBalances = Be; exports.usePool = Gg; exports.usePoolEvents = zg; exports.usePoolHistoricalData = ey; exports.usePools = iy; exports.usePoolsQueryKey = Sn; exports.usePrevious = TC; exports.usePriceImpact = Pe; exports.usePythLatestPrices = se; exports.usePythUpdateFee = Yb; exports.useQueuedBeraUnlock = OR; exports.useRewardTokenToBeraRate = MR; exports.useRewardVault = aw; exports.useRewardVaultBalanceFromStakingToken = pr; exports.useRewardVaultFromToken = mt; exports.useRewardVaultIncentives = dw; exports.useRewardVaultQueryKey = _l; exports.useRewardVaultRewards = Kl; exports.useRewardVaults = kt; exports.useRewardVaultsQueryKey = bl; exports.useSingleAggregatorQuote = zs; exports.useStakedAPR = kw; exports.useStakedData = Hw; exports.useStakedSnapshots = Fw; exports.useStakingPoolBatch = BI; exports.useStakingTokenInformation = Vk; exports.useStakingVaultsMetadata = jw; exports.useTokenCurrentPrice = Fr; exports.useTokenCurrentPrices = oe; exports.useTokenInformation = dr; exports.useTokenPrice = Qk; exports.useTokenPrices = Z; exports.useTokens = ee; exports.useTotalStakedAmount = ok; exports.useTotalSupply = Kk; exports.useUserActiveValidators = bp; exports.useUserBoostsOnValidator = Cp; exports.useUserClaimableIncentives = Ep; exports.useUserStakingPositions = XI; exports.useUserVaultInfo = nu; exports.useUserVaults = pu; exports.useValidator = sP; exports.useValidatorAnalytics = Op; exports.useValidatorCommission = Lp; exports.useValidatorEstimatedBgtPerYear = Hp; exports.useValidatorQueuedCommission = Vp; exports.useValidatorQueuedOperatorAddress = Qp; exports.useValidatorQueuedRewardAllocation = Fp; exports.useValidatorRewardAllocation = Kp; exports.useVaultAddress = hk; exports.useVaultHistory = kk; exports.useVaultValidators = gu; exports.useZapStakeBera = ch;
4
4
  //# sourceMappingURL=exports.cjs.map