@antseed/ants 0.1.5 → 0.1.7

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (251) hide show
  1. package/dist/ants-web/assets/Arc-VDBY7LNS-BChRXCXW.js +1 -0
  2. package/dist/ants-web/assets/Brave-BRAKJXDS-mq-Xo37j.js +1 -0
  3. package/dist/ants-web/assets/Browser-76IHF3Y2-BMhRaC5Z.js +1 -0
  4. package/dist/ants-web/assets/Chrome-65Q5P54Y-DR9MQEVr.js +1 -0
  5. package/dist/ants-web/assets/Edge-XSPUTORV-DEoZslQE.js +1 -0
  6. package/dist/ants-web/assets/Firefox-AAHGJQIP-Bp_Hm04m.js +1 -0
  7. package/dist/ants-web/assets/Linux-OO4TNCLJ-B0aw93n9.js +1 -0
  8. package/dist/ants-web/assets/Macos-MW4AE7LN-Vvm8Drw3.js +1 -0
  9. package/dist/ants-web/assets/Opera-KQZLSACL-Cwv5MDFy.js +1 -0
  10. package/dist/ants-web/assets/Safari-ZPL37GXR-C4Ggg6rz.js +1 -0
  11. package/dist/ants-web/assets/Windows-PPTHQER6-BlyV2p7Y.js +1 -0
  12. package/dist/ants-web/assets/add-1qQ_SVL6.js +15 -0
  13. package/dist/ants-web/assets/all-wallets-D0QF065k.js +6 -0
  14. package/dist/ants-web/assets/apechain-SX5YFU6N-q5qBv-mp.js +1 -0
  15. package/dist/ants-web/assets/app-store-j-2thKGl.js +17 -0
  16. package/dist/ants-web/assets/apple-CCcInWVX.js +18 -0
  17. package/dist/ants-web/assets/ar_AR-44JUQ6EW-BMX-am0v.js +1487 -0
  18. package/dist/ants-web/assets/arbitrum-WURIBY6W-CqVkHBr5.js +1 -0
  19. package/dist/ants-web/assets/arrow-bottom-DVZa97G2.js +8 -0
  20. package/dist/ants-web/assets/arrow-bottom-circle-tt2k5BWG.js +11 -0
  21. package/dist/ants-web/assets/arrow-left-DnjqXMe0.js +8 -0
  22. package/dist/ants-web/assets/arrow-right-De8QMymS.js +8 -0
  23. package/dist/ants-web/assets/arrow-top-BS2oLt_x.js +8 -0
  24. package/dist/ants-web/assets/assets-Q6ZU7ZJ5-P8HioiAD.js +1 -0
  25. package/dist/ants-web/assets/avalanche-KOMJD3XY-Dsn_JPR4.js +1 -0
  26. package/dist/ants-web/assets/bank-DIxCskFM.js +14 -0
  27. package/dist/ants-web/assets/base-OAXLRA4F-CoYTVIiL.js +1 -0
  28. package/dist/ants-web/assets/baseAccount-44UITRK7-CsjdbWCf.js +1 -0
  29. package/dist/ants-web/assets/basic-D0Dg7j2v.js +2128 -0
  30. package/dist/ants-web/assets/berachain-NJECWIVC-DumxnFvf.js +1 -0
  31. package/dist/ants-web/assets/blast-V555OVXZ-BbhJh1tj.js +1 -0
  32. package/dist/ants-web/assets/browser-n9VVPree.js +14 -0
  33. package/dist/ants-web/assets/bsc-N647EYR2-B2nLKXWV.js +1 -0
  34. package/dist/ants-web/assets/card-Bl7AHEuE.js +14 -0
  35. package/dist/ants-web/assets/ccip-C_ifxkiT.js +1 -0
  36. package/dist/ants-web/assets/celo-GEP4TUHG-CenIBYLU.js +1 -0
  37. package/dist/ants-web/assets/checkmark-DXB1SsFx.js +11 -0
  38. package/dist/ants-web/assets/checkmark-bold-CIMnw7st.js +8 -0
  39. package/dist/ants-web/assets/chevron-bottom-DGkVb8CY.js +8 -0
  40. package/dist/ants-web/assets/chevron-left-D8vC6sW_.js +8 -0
  41. package/dist/ants-web/assets/chevron-right-CP8tyhU4.js +8 -0
  42. package/dist/ants-web/assets/chevron-top-DUqp6O8b.js +8 -0
  43. package/dist/ants-web/assets/chrome-store-CDk6Jfiv.js +61 -0
  44. package/dist/ants-web/assets/clock-t0Dwo5ck.js +8 -0
  45. package/dist/ants-web/assets/close-BiTlv6FX.js +8 -0
  46. package/dist/ants-web/assets/coinPlaceholder-PJZCh_De.js +8 -0
  47. package/dist/ants-web/assets/compass-CctP2ZVM.js +8 -0
  48. package/dist/ants-web/assets/connect-UA7M4XW6-IY3X6Bmr.js +1 -0
  49. package/dist/ants-web/assets/copy-b1i5dSZT.js +15 -0
  50. package/dist/ants-web/assets/core-4w9H32as.js +908 -0
  51. package/dist/ants-web/assets/create-FASO7PVG-D_rvSpre.js +1 -0
  52. package/dist/ants-web/assets/cronos-HJPAQTAE-BEOvlOC4.js +1 -0
  53. package/dist/ants-web/assets/cursor-kLCZuRWK.js +3 -0
  54. package/dist/ants-web/assets/cursor-transparent-C1IxvCBs.js +12 -0
  55. package/dist/ants-web/assets/de_DE-PYAO5YD6-BWlqPWgO.js +1487 -0
  56. package/dist/ants-web/assets/degen-FQQ4XGHB-CeHTs88l.js +1 -0
  57. package/dist/ants-web/assets/desktop-Qa_41eha.js +9 -0
  58. package/dist/ants-web/assets/disconnect-7QBZVVG8.js +8 -0
  59. package/dist/ants-web/assets/discord-DuRr0OMy.js +17 -0
  60. package/dist/ants-web/assets/es_419-HRGOJ6VT-D-qzxUM-.js +1487 -0
  61. package/dist/ants-web/assets/ethereum-RGGVA4PY-SWGOlkuk.js +1 -0
  62. package/dist/ants-web/assets/etherscan-BOImzSgC.js +6 -0
  63. package/dist/ants-web/assets/events-DQ172AOg.js +1 -0
  64. package/dist/ants-web/assets/exclamation-triangle-evZ54TSt.js +4 -0
  65. package/dist/ants-web/assets/extension-YSvzNEgu.js +8 -0
  66. package/dist/ants-web/assets/external-link-BukU3aK3.js +8 -0
  67. package/dist/ants-web/assets/facebook-WJZQGI9M.js +26 -0
  68. package/dist/ants-web/assets/farcaster-Dt0XRvlP.js +12 -0
  69. package/dist/ants-web/assets/filters-CFC5g--u.js +8 -0
  70. package/dist/ants-web/assets/flow-5FQJFCTK-CUie2reO.js +1 -0
  71. package/dist/ants-web/assets/fr_FR-IGGVC6RM-D8LpUM75.js +1487 -0
  72. package/dist/ants-web/assets/github-Bhz0AnGj.js +18 -0
  73. package/dist/ants-web/assets/gnosis-37ZC4RBL-B137OtHZ.js +1 -0
  74. package/dist/ants-web/assets/google-CGzSUXjP.js +18 -0
  75. package/dist/ants-web/assets/gravity-J5YQHTYH-Bj6B0uod.js +1 -0
  76. package/dist/ants-web/assets/hardhat-TX56IT5N-CV1FY-wE.js +1 -0
  77. package/dist/ants-web/assets/help-circle-BoGPtVJY.js +12 -0
  78. package/dist/ants-web/assets/hi_IN-XSKAA3MF-C3QUpWyP.js +1487 -0
  79. package/dist/ants-web/assets/hyperevm-VKPAA4SA-CHwraEsx.js +1 -0
  80. package/dist/ants-web/assets/id-ir8rS0J_.js +12 -0
  81. package/dist/ants-web/assets/id_ID-KUOB4UAL-K9y-nRWm.js +1487 -0
  82. package/dist/ants-web/assets/image-DXBUHwz_.js +4 -0
  83. package/dist/ants-web/assets/index-9ALlRD6p.css +1 -0
  84. package/dist/ants-web/assets/index-B7p3jPAJ.js +1 -0
  85. package/dist/ants-web/assets/index-BqWNkBzB.js +395 -0
  86. package/dist/ants-web/assets/index-C-I4ROfT.js +16 -0
  87. package/dist/ants-web/assets/index-Chq8yV_g.js +47 -0
  88. package/dist/ants-web/assets/index-Ci5bF__2.js +1729 -0
  89. package/dist/ants-web/assets/index-kzlEvkEN.js +1 -0
  90. package/dist/ants-web/assets/index.es-D1GdDJUC.js +39 -0
  91. package/dist/ants-web/assets/info-DzGq_QPQ.js +3 -0
  92. package/dist/ants-web/assets/info-circle-z91TqQxH.js +12 -0
  93. package/dist/ants-web/assets/ink-FZMYZWHG-62p-5IK5.js +1 -0
  94. package/dist/ants-web/assets/ja_JP-4WRQ63RX-Ct5pF4ug.js +1487 -0
  95. package/dist/ants-web/assets/kaia-65D2U3PU-JmuLQ4gC.js +1 -0
  96. package/dist/ants-web/assets/ko_KR-I2K7AIEP-B5gw8Mwb.js +1487 -0
  97. package/dist/ants-web/assets/lightbulb-CgYwiQYs.js +3 -0
  98. package/dist/ants-web/assets/linea-QRMVQ5DY-DuI3vv0d.js +1 -0
  99. package/dist/ants-web/assets/login-UP3DZBGS-Db_wM5oQ.js +1 -0
  100. package/dist/ants-web/assets/mail-FLPFIbqi.js +8 -0
  101. package/dist/ants-web/assets/manta-SI27YFEJ-CpVOKa06.js +1 -0
  102. package/dist/ants-web/assets/mantle-CKIUT334-DR2WgqzU.js +1 -0
  103. package/dist/ants-web/assets/metaMaskWallet-SITXT2FV-BlemcphV.js +1 -0
  104. package/dist/ants-web/assets/metamask-sdk-QG4PtQco.js +542 -0
  105. package/dist/ants-web/assets/mobile--kHpa5NK.js +9 -0
  106. package/dist/ants-web/assets/monad-4KWC6TSS-DVXSkpiz.js +1 -0
  107. package/dist/ants-web/assets/more-CJbReLy0.js +11 -0
  108. package/dist/ants-web/assets/ms_MY-6VZW6Q3Z-BtFD07hR.js +1487 -0
  109. package/dist/ants-web/assets/network-placeholder-BfSizFBN.js +14 -0
  110. package/dist/ants-web/assets/nftPlaceholder-BTfly2G8.js +8 -0
  111. package/dist/ants-web/assets/off-DCMXa6Y2.js +8 -0
  112. package/dist/ants-web/assets/optimism-HAF2GUT7-ec6Nqxs9.js +1 -0
  113. package/dist/ants-web/assets/play-store-CbbevixE.js +32 -0
  114. package/dist/ants-web/assets/plus-BxINT2r_.js +13 -0
  115. package/dist/ants-web/assets/polygon-WW6ZI7PM-DXlmm4L1.js +1 -0
  116. package/dist/ants-web/assets/pt_BR-N3XOZ4SV-CvVpfsHb.js +1487 -0
  117. package/dist/ants-web/assets/qr-code-CMEsvGrE.js +6 -0
  118. package/dist/ants-web/assets/rainbowWallet-O26YNBMX-DUhYus-9.js +1 -0
  119. package/dist/ants-web/assets/recycle-horizontal-BldRTXPT.js +9 -0
  120. package/dist/ants-web/assets/refresh-82vLCcdB.js +8 -0
  121. package/dist/ants-web/assets/refresh-S4T5V5GX-CwqIaaxK.js +1 -0
  122. package/dist/ants-web/assets/reown-logo-BPGalyzg.js +12 -0
  123. package/dist/ants-web/assets/ronin-EMCPYXZT-N-QBHZdV.js +1 -0
  124. package/dist/ants-web/assets/ru_RU-IITAPRET-DOj6Jzj7.js +1487 -0
  125. package/dist/ants-web/assets/safeWallet-5MNKTR5Z-D-5imDLD.js +1 -0
  126. package/dist/ants-web/assets/sanko-RHQYXGM5-OX010CbN.js +1 -0
  127. package/dist/ants-web/assets/scan-4UYSQ56Q-CjMz6-XC.js +1 -0
  128. package/dist/ants-web/assets/scroll-5OBGQVOV-DJFECiai.js +1 -0
  129. package/dist/ants-web/assets/search-CADsyV1c.js +8 -0
  130. package/dist/ants-web/assets/secp256k1-B5byVYSZ.js +1 -0
  131. package/dist/ants-web/assets/secp256k1-Cb4vPU9D.js +1 -0
  132. package/dist/ants-web/assets/send-DyAisqGO.js +15 -0
  133. package/dist/ants-web/assets/sign-A7IJEUT5-CGsRnPrd.js +1 -0
  134. package/dist/ants-web/assets/superposition-HG6MMR2Y-bRkgatRO.js +1 -0
  135. package/dist/ants-web/assets/swapHorizontal-BfHwXZPT.js +8 -0
  136. package/dist/ants-web/assets/swapHorizontalBold-FIoCjqnp.js +8 -0
  137. package/dist/ants-web/assets/swapHorizontalMedium-CzDDCY_G.js +16 -0
  138. package/dist/ants-web/assets/swapHorizontalRoundedBold-CvMRJeWj.js +8 -0
  139. package/dist/ants-web/assets/swapVertical-BgSezaow.js +8 -0
  140. package/dist/ants-web/assets/telegram-CsMNhXCs.js +16 -0
  141. package/dist/ants-web/assets/th_TH-3ZQCKCQE-BcHUN2Q4.js +1487 -0
  142. package/dist/ants-web/assets/three-dots-DYf4gmVW.js +5 -0
  143. package/dist/ants-web/assets/tr_TR-QUPUGMUF-CwpF6ZFn.js +1487 -0
  144. package/dist/ants-web/assets/twitch-BtBr-NTg.js +18 -0
  145. package/dist/ants-web/assets/twitterIcon-BmRf6M77.js +6 -0
  146. package/dist/ants-web/assets/uk_UA-SSN6SV5E-IlYYyRC6.js +1487 -0
  147. package/dist/ants-web/assets/unichain-C5BWO2ZY-BfguYsnu.js +1 -0
  148. package/dist/ants-web/assets/verify-cxA8gdP6.js +8 -0
  149. package/dist/ants-web/assets/verify-filled-DHnnW8EE.js +8 -0
  150. package/dist/ants-web/assets/vi_VN-7BUVRNYY-CZ9S75qZ.js +1487 -0
  151. package/dist/ants-web/assets/w3m-modal-D1ucMOAa.js +642 -0
  152. package/dist/ants-web/assets/wallet-BT4Fue1R.js +8 -0
  153. package/dist/ants-web/assets/wallet-placeholder-C2J5s6Yp.js +14 -0
  154. package/dist/ants-web/assets/walletConnectWallet-YHWKVTDY-D3lyiczV.js +1 -0
  155. package/dist/ants-web/assets/walletconnect-B5k8iJl-.js +30 -0
  156. package/dist/ants-web/assets/warning-circle-9rNSUSsX.js +12 -0
  157. package/dist/ants-web/assets/x-CpRc85jR.js +12 -0
  158. package/dist/ants-web/assets/xdc-KJ3TDBYO-DNV6zchh.js +1 -0
  159. package/dist/ants-web/assets/zetachain-TLDS5IPW-Udhyw16T.js +1 -0
  160. package/dist/ants-web/assets/zh_CN-HJBN674C-Baf0GEeT.js +1487 -0
  161. package/dist/ants-web/assets/zh_HK-JW3WLRKE-VztJKXL5.js +1487 -0
  162. package/dist/ants-web/assets/zh_TW-VNNRNXY7-aWfg7Qp4.js +1487 -0
  163. package/dist/ants-web/assets/zksync-DH7HK5U4-Dt4usFw6.js +1 -0
  164. package/dist/ants-web/assets/zora-FYL5H3IO-iB4wygST.js +1 -0
  165. package/dist/ants-web/index.html +2 -2
  166. package/dist/api-types.d.ts +168 -6
  167. package/dist/browser-signer.d.ts +30 -0
  168. package/dist/browser-signer.js +189 -0
  169. package/dist/browser-signer.js.map +1 -0
  170. package/dist/jobs.d.ts +10 -3
  171. package/dist/jobs.js +97 -20
  172. package/dist/jobs.js.map +1 -1
  173. package/dist/position-actions.d.ts +13 -0
  174. package/dist/position-actions.js +25 -0
  175. package/dist/position-actions.js.map +1 -0
  176. package/dist/routes.d.ts +7 -0
  177. package/dist/routes.js +63 -5
  178. package/dist/routes.js.map +1 -1
  179. package/dist/server.d.ts +8 -0
  180. package/dist/server.js +157 -12
  181. package/dist/server.js.map +1 -1
  182. package/dist/service/context.d.ts +25 -3
  183. package/dist/service/context.js +56 -5
  184. package/dist/service/context.js.map +1 -1
  185. package/dist/service/display-snapshot.d.ts +28 -0
  186. package/dist/service/display-snapshot.js +144 -0
  187. package/dist/service/display-snapshot.js.map +1 -0
  188. package/dist/service/emissions.js +11 -19
  189. package/dist/service/emissions.js.map +1 -1
  190. package/dist/service/explorer.js +2 -1
  191. package/dist/service/explorer.js.map +1 -1
  192. package/dist/service/format.d.ts +1 -1
  193. package/dist/service/format.js +2 -0
  194. package/dist/service/format.js.map +1 -1
  195. package/dist/service/indexed-wallet.d.ts +7 -0
  196. package/dist/service/indexed-wallet.js +58 -0
  197. package/dist/service/indexed-wallet.js.map +1 -0
  198. package/dist/service/indexer.d.ts +32 -3
  199. package/dist/service/indexer.js +64 -8
  200. package/dist/service/indexer.js.map +1 -1
  201. package/dist/service/legacy-payout.d.ts +3 -0
  202. package/dist/service/legacy-payout.js +32 -0
  203. package/dist/service/legacy-payout.js.map +1 -0
  204. package/dist/service/network.d.ts +5 -0
  205. package/dist/service/network.js +185 -0
  206. package/dist/service/network.js.map +1 -0
  207. package/dist/service/overview-reads.d.ts +30 -0
  208. package/dist/service/overview-reads.js +69 -0
  209. package/dist/service/overview-reads.js.map +1 -0
  210. package/dist/service/overview.js +14 -36
  211. package/dist/service/overview.js.map +1 -1
  212. package/dist/service/pool-merge.d.ts +2 -1
  213. package/dist/service/pool-merge.js +11 -4
  214. package/dist/service/pool-merge.js.map +1 -1
  215. package/dist/service/pools.d.ts +22 -1
  216. package/dist/service/pools.js +257 -98
  217. package/dist/service/pools.js.map +1 -1
  218. package/dist/service/position-feed.d.ts +73 -0
  219. package/dist/service/position-feed.js +173 -0
  220. package/dist/service/position-feed.js.map +1 -0
  221. package/dist/service/positions.d.ts +3 -5
  222. package/dist/service/positions.js +155 -93
  223. package/dist/service/positions.js.map +1 -1
  224. package/dist/service/rewards.d.ts +1 -0
  225. package/dist/service/rewards.js +117 -56
  226. package/dist/service/rewards.js.map +1 -1
  227. package/dist/service/rpc-provider.d.ts +4 -0
  228. package/dist/service/rpc-provider.js +44 -3
  229. package/dist/service/rpc-provider.js.map +1 -1
  230. package/dist/service/seller-models.d.ts +2 -0
  231. package/dist/service/seller-models.js +94 -0
  232. package/dist/service/seller-models.js.map +1 -0
  233. package/dist/service/seller.js +33 -30
  234. package/dist/service/seller.js.map +1 -1
  235. package/dist/service/stake-eligibility.d.ts +6 -0
  236. package/dist/service/stake-eligibility.js +68 -0
  237. package/dist/service/stake-eligibility.js.map +1 -0
  238. package/dist/service/usage.js +5 -13
  239. package/dist/service/usage.js.map +1 -1
  240. package/dist/service/yield.d.ts +3 -0
  241. package/dist/service/yield.js +12 -0
  242. package/dist/service/yield.js.map +1 -0
  243. package/dist/view-cache.d.ts +5 -10
  244. package/dist/view-cache.js +12 -14
  245. package/dist/view-cache.js.map +1 -1
  246. package/dist/wallet-errors.d.ts +9 -0
  247. package/dist/wallet-errors.js +32 -0
  248. package/dist/wallet-errors.js.map +1 -0
  249. package/package.json +8 -3
  250. package/dist/ants-web/assets/index-BunPfgXh.css +0 -1
  251. package/dist/ants-web/assets/index-zCPoF694.js +0 -40
@@ -1 +1 @@
1
- {"version":3,"file":"format.js","sourceRoot":"","sources":["../../src/service/format.ts"],"names":[],"mappings":"AAAA,MAAM,aAAa,GAAG,GAAG,CAAC;AAC1B,MAAM,QAAQ,GAAG,GAAG,IAAI,aAAa,CAAC;AAEtC,yGAAyG;AACzG,MAAM,UAAU,UAAU,CAAC,SAA0B,EAAE,cAAc,GAAG,CAAC;IACvE,MAAM,KAAK,GAAG,OAAO,SAAS,KAAK,QAAQ,CAAC,CAAC,CAAC,MAAM,CAAC,SAAS,CAAC,CAAC,CAAC,CAAC,SAAS,CAAC;IAC5E,MAAM,QAAQ,GAAG,KAAK,GAAG,EAAE,CAAC;IAC5B,MAAM,GAAG,GAAG,QAAQ,CAAC,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,KAAK,CAAC;IACtC,MAAM,KAAK,GAAG,GAAG,GAAG,QAAQ,CAAC;IAC7B,MAAM,QAAQ,GAAG,CAAC,GAAG,GAAG,QAAQ,CAAC,CAAC,QAAQ,EAAE,CAAC,QAAQ,CAAC,EAAE,EAAE,GAAG,CAAC,CAAC,KAAK,CAAC,CAAC,EAAE,cAAc,CAAC,CAAC,OAAO,CAAC,KAAK,EAAE,EAAE,CAAC,CAAC;IAC3G,MAAM,SAAS,GAAG,KAAK,CAAC,cAAc,CAAC,OAAO,CAAC,CAAC;IAChD,OAAO,GAAG,QAAQ,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,GAAG,SAAS,GAAG,QAAQ,CAAC,CAAC,CAAC,IAAI,QAAQ,EAAE,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC;AAC/E,CAAC;AAED,MAAM,UAAU,eAAe,CAAC,SAA0B;IACxD,MAAM,KAAK,GAAG,OAAO,SAAS,KAAK,QAAQ,CAAC,CAAC,CAAC,MAAM,CAAC,SAAS,CAAC,CAAC,CAAC,CAAC,SAAS,CAAC;IAC5E,MAAM,KAAK,GAAG,KAAK,GAAG,QAAQ,CAAC;IAC/B,MAAM,QAAQ,GAAG,CAAC,KAAK,GAAG,QAAQ,CAAC,CAAC,QAAQ,EAAE,CAAC,QAAQ,CAAC,EAAE,EAAE,GAAG,CAAC,CAAC,OAAO,CAAC,KAAK,EAAE,EAAE,CAAC,CAAC;IACpF,OAAO,QAAQ,CAAC,CAAC,CAAC,GAAG,KAAK,IAAI,QAAQ,EAAE,CAAC,CAAC,CAAC,GAAG,KAAK,EAAE,CAAC;AACxD,CAAC;AAED,8GAA8G;AAC9G,MAAM,UAAU,SAAS,CAAC,MAAc;IACtC,MAAM,KAAK,GAAG,MAAM,CAAC,IAAI,EAAE,CAAC,OAAO,CAAC,IAAI,EAAE,EAAE,CAAC,CAAC,KAAK,CAAC,0BAA0B,CAAC,CAAC;IAChF,IAAI,CAAC,KAAK;QAAE,MAAM,IAAI,KAAK,CAAC,4DAA4D,CAAC,CAAC;IAC1F,MAAM,SAAS,GAAG,MAAM,CAAC,KAAK,CAAC,CAAC,CAAE,CAAC,GAAG,QAAQ,GAAG,MAAM,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,IAAI,EAAE,CAAC,CAAC,MAAM,CAAC,EAAE,EAAE,GAAG,CAAC,IAAI,GAAG,CAAC,CAAC;IACjG,IAAI,SAAS,IAAI,EAAE;QAAE,MAAM,IAAI,KAAK,CAAC,mCAAmC,CAAC,CAAC;IAC1E,OAAO,SAAS,CAAC;AACnB,CAAC;AAED,MAAM,UAAU,UAAU,CAAC,SAA0B;IACnD,MAAM,KAAK,GAAG,OAAO,SAAS,KAAK,QAAQ,CAAC,CAAC,CAAC,MAAM,CAAC,SAAS,CAAC,CAAC,CAAC,CAAC,SAAS,CAAC;IAC5E,MAAM,KAAK,GAAG,KAAK,GAAG,QAAU,CAAC;IACjC,MAAM,QAAQ,GAAG,CAAC,KAAK,GAAG,QAAU,CAAC,CAAC,QAAQ,EAAE,CAAC,QAAQ,CAAC,CAAC,EAAE,GAAG,CAAC,CAAC,OAAO,CAAC,KAAK,EAAE,EAAE,CAAC,CAAC;IACrF,OAAO,QAAQ,CAAC,CAAC,CAAC,GAAG,KAAK,IAAI,QAAQ,EAAE,CAAC,CAAC,CAAC,GAAG,KAAK,EAAE,CAAC;AACxD,CAAC;AAED,MAAM,UAAU,SAAS,CAAC,GAAW;IACnC,OAAO,GAAG,CAAC,GAAG,GAAG,GAAG,CAAC,CAAC,OAAO,CAAC,CAAC,CAAC,CAAC,OAAO,CAAC,QAAQ,EAAE,EAAE,CAAC,GAAG,CAAC;AAC5D,CAAC;AAED,MAAM,UAAU,YAAY,CAAC,OAAe;IAC1C,OAAO,OAAO,CAAC,MAAM,GAAG,EAAE,CAAC,CAAC,CAAC,GAAG,OAAO,CAAC,KAAK,CAAC,CAAC,EAAE,CAAC,CAAC,IAAI,OAAO,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,OAAO,CAAC;AACvF,CAAC"}
1
+ {"version":3,"file":"format.js","sourceRoot":"","sources":["../../src/service/format.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,7 @@
1
+ import type { AntsContext } from './context.js';
2
+ import type { RewardPositions } from './position-feed.js';
3
+ /** The wallet's positions with live on-chain status from Antscan, accepted only when fresh, complete and past our read barrier. */
4
+ export declare function liveWalletPositions(ctx: AntsContext, epoch: number): Promise<RewardPositions>;
5
+ /** Indexed staker rewards per position, accepted only for this chain's contracts, a fresh complete snapshot, and past our read barrier. */
6
+ export declare function indexedWalletRewards(ctx: AntsContext, epoch: number, outstanding?: boolean): Promise<RewardPositions>;
7
+ export declare function validateWalletRewards(ctx: AntsContext, epoch: number, data: RewardPositions): RewardPositions;
@@ -0,0 +1,58 @@
1
+ /** Live position status older than this is rejected; Antscan refreshes it every 15s. */
2
+ const LIVE_MAX_AGE_SECONDS = 15;
3
+ const REWARDS_MAX_AGE_SECONDS = 3600;
4
+ /** Tolerated clock skew between Antscan and this machine. */
5
+ const CLOCK_SKEW_SECONDS = 30;
6
+ const nowSeconds = () => Math.floor(Date.now() / 1000);
7
+ function validateChain(ctx, data) {
8
+ const { source } = data;
9
+ const matches = source.chainId === ctx.chain.evmChainId
10
+ && source.contracts.sellerPools.toLowerCase() === ctx.chain.sellerPoolsAddress?.toLowerCase()
11
+ && source.contracts.sellerPoolsRewards.toLowerCase() === ctx.chain.sellerPoolsRewardsAddress?.toLowerCase();
12
+ if (!matches)
13
+ throw new Error('Antscan position chain or contracts do not match this dashboard');
14
+ }
15
+ /** The wallet's positions with live on-chain status from Antscan, accepted only when fresh, complete and past our read barrier. */
16
+ export async function liveWalletPositions(ctx, epoch) {
17
+ const indexer = ctx.indexer();
18
+ if (!indexer?.rewardPositions)
19
+ throw new Error('Antscan positions are unavailable');
20
+ const data = await indexer.rewardPositions(ctx.address);
21
+ validateChain(ctx, data);
22
+ const { liveSource } = data;
23
+ const now = nowSeconds();
24
+ const fresh = now - liveSource.fetchedAt < LIVE_MAX_AGE_SECONDS && liveSource.fetchedAt <= now + CLOCK_SKEW_SECONDS;
25
+ if (liveSource.currentEpoch !== epoch || liveSource.stale || !liveSource.complete || data.liveError || !fresh)
26
+ throw new Error(data.liveError ?? 'Antscan live position status is stale or incomplete');
27
+ const barrier = ctx.positionReadBarriers?.get(ctx.address.toLowerCase());
28
+ if (barrier && (liveSource.fetchedAt <= barrier.at || data.source.indexedBlock < barrier.block))
29
+ throw new Error('Antscan live positions have not caught up with your transaction');
30
+ if (data.positions.some(row => row.power == null || row.nextPower == null || row.withdrawableEpoch === null || row.maxLockedNext === null || row.changePending === null))
31
+ throw new Error('Antscan live position fields are incomplete');
32
+ return data;
33
+ }
34
+ /** Indexed staker rewards per position, accepted only for this chain's contracts, a fresh complete snapshot, and past our read barrier. */
35
+ export async function indexedWalletRewards(ctx, epoch, outstanding = false) {
36
+ const indexer = ctx.indexer();
37
+ if (!indexer?.rewardPositions)
38
+ throw new Error('Antscan indexed rewards are unavailable');
39
+ const data = await indexer.rewardPositions(ctx.address, outstanding);
40
+ return validateWalletRewards(ctx, epoch, data);
41
+ }
42
+ export function validateWalletRewards(ctx, epoch, data) {
43
+ validateChain(ctx, data);
44
+ const { source } = data;
45
+ const now = nowSeconds();
46
+ const fresh = now - source.indexedAt <= REWARDS_MAX_AGE_SECONDS && source.indexedAt <= now + CLOCK_SKEW_SECONDS;
47
+ if (source.schemaVersion !== 1 || data.currentEpoch !== epoch || source.stale || !fresh)
48
+ throw new Error('Antscan reward snapshot is stale');
49
+ if (!source.complete || !source.historyComplete || source.historyFromBlock > source.indexedBlock)
50
+ throw new Error('Antscan reward history is incomplete');
51
+ const barrier = ctx.positionReadBarriers?.get(ctx.address.toLowerCase());
52
+ if (barrier && source.indexedBlock < barrier.block)
53
+ throw new Error('Antscan rewards have not caught up with your transaction');
54
+ if (data.positions.some(row => row.rewards.status !== 'available' || row.rewards.pending === null))
55
+ throw new Error('Some indexed position rewards are unavailable');
56
+ return data;
57
+ }
58
+ //# sourceMappingURL=indexed-wallet.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"indexed-wallet.js","sourceRoot":"","sources":["../../src/service/indexed-wallet.ts"],"names":[],"mappings":"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"}
@@ -5,7 +5,12 @@
5
5
  * reconstructed from RPC log scans. Every method returns plain JSON-shaped
6
6
  * data; amounts stay as decimal strings.
7
7
  */
8
+ import { type DisplaySnapshot } from './display-snapshot.js';
9
+ import { type RewardPositions } from './position-feed.js';
8
10
  export interface IndexedStakingEpoch {
11
+ snapshotBlock?: number;
12
+ lastBlockNumber?: number;
13
+ complete?: boolean;
9
14
  epoch: number;
10
15
  totalPowerWeight: string;
11
16
  totalActiveStake: string;
@@ -17,6 +22,7 @@ export interface IndexedStakingEpoch {
17
22
  stakerBudget: string;
18
23
  }
19
24
  export interface IndexedPool {
25
+ participationComplete?: boolean;
20
26
  agentId: number;
21
27
  seller: string | null;
22
28
  sellerName: string | null;
@@ -34,8 +40,17 @@ export interface IndexedPool {
34
40
  lastUsagePoints: string;
35
41
  volumeUsdc: string;
36
42
  lastVolumeUsdc: string;
43
+ volumeAvailable?: boolean;
44
+ lastVolumeAvailable?: boolean;
37
45
  lastEmission: string;
38
46
  lastEmissionSettled: boolean;
47
+ /** Preserve absent/invalid historical inputs instead of treating them as a real zero. */
48
+ historicalYield?: {
49
+ power: string;
50
+ reward: string;
51
+ settled: boolean;
52
+ } | null;
53
+ stakers?: number | null;
39
54
  lastRewardPer1kPower: string | null;
40
55
  projectedEmission: string;
41
56
  projectedRewardPer1kPower: string | null;
@@ -60,14 +75,18 @@ export interface IndexedPoolEpoch {
60
75
  settled: boolean;
61
76
  }
62
77
  export interface IndexedPoolDetail {
78
+ activeStake?: string | null;
63
79
  pool: (IndexedPool & {
64
80
  firstStakeAt: number | null;
65
81
  }) | null;
66
82
  epochs: IndexedPoolEpoch[];
67
- openPositions: number;
68
- stakers: number;
83
+ openPositions: number | null;
84
+ stakers: number | null;
85
+ /** Stake in open positions waiting for their activation epoch; null when the explorer predates the field. */
86
+ pendingStake: string | null;
69
87
  }
70
88
  export interface IndexedPosition {
89
+ lastBlockNumber?: number;
71
90
  id: number;
72
91
  owner: string;
73
92
  agentId: number;
@@ -86,6 +105,9 @@ export interface IndexedPosition {
86
105
  slashedAmount: string;
87
106
  createdAt: number;
88
107
  closedAt: number | null;
108
+ /** Live power this epoch as read by the explorer; null when the explorer could not read it or predates the field. */
109
+ power?: string | null;
110
+ nextPower?: string | null;
89
111
  }
90
112
  export interface IndexedSellerEpoch {
91
113
  seller: string;
@@ -117,6 +139,9 @@ export interface IndexedEpochMetric {
117
139
  requests: string;
118
140
  }
119
141
  export interface Indexer {
142
+ rewardPositions?(owner: string, outstanding?: boolean): Promise<RewardPositions>;
143
+ displaySnapshot?(epoch: number): Promise<DisplaySnapshot>;
144
+ invalidate?(): void;
120
145
  readonly baseUrl: string;
121
146
  pools(): Promise<IndexedPools>;
122
147
  pool(agentId: number, epochs?: number): Promise<IndexedPoolDetail>;
@@ -129,7 +154,8 @@ export interface Indexer {
129
154
  }
130
155
  export declare class IndexerError extends Error {
131
156
  readonly url: string;
132
- constructor(message: string, url: string);
157
+ readonly status?: number | undefined;
158
+ constructor(message: string, url: string, status?: number | undefined);
133
159
  }
134
160
  export declare class AntscanIndexer implements Indexer {
135
161
  private readonly fetchImpl;
@@ -137,10 +163,13 @@ export declare class AntscanIndexer implements Indexer {
137
163
  readonly baseUrl: string;
138
164
  private readonly cache;
139
165
  constructor(baseUrl: string, fetchImpl?: typeof fetch, ttlMs?: number);
166
+ invalidate(): void;
167
+ displaySnapshot(epoch: number): Promise<DisplaySnapshot>;
140
168
  private get;
141
169
  pools(): Promise<IndexedPools>;
142
170
  pool(agentId: number, epochs?: number): Promise<IndexedPoolDetail>;
143
171
  positions(owner: string, includeClosed?: boolean): Promise<IndexedPosition[]>;
172
+ rewardPositions(owner: string, outstanding?: boolean): Promise<RewardPositions>;
144
173
  stakingEpochs(limit?: number): Promise<IndexedStakingEpoch[]>;
145
174
  sellerEpochs(epochs?: number): Promise<Map<string, IndexedSellerEpoch[]>>;
146
175
  participant(address: string, epochs?: number): Promise<IndexedParticipant>;
@@ -5,13 +5,17 @@
5
5
  * reconstructed from RPC log scans. Every method returns plain JSON-shaped
6
6
  * data; amounts stay as decimal strings.
7
7
  */
8
+ import { fetchDisplaySnapshot } from './display-snapshot.js';
9
+ import { fetchRewardPositions } from './position-feed.js';
8
10
  const FETCH_TIMEOUT_MS = 8_000;
9
11
  const CACHE_TTL_MS = 15_000;
10
12
  export class IndexerError extends Error {
11
13
  url;
12
- constructor(message, url) {
14
+ status;
15
+ constructor(message, url, status) {
13
16
  super(message);
14
17
  this.url = url;
18
+ this.status = status;
15
19
  this.name = 'IndexerError';
16
20
  }
17
21
  }
@@ -23,11 +27,18 @@ const str = (value) => (value === null || value === undefined ? '0' : String(val
23
27
  const lower = (value) => (typeof value === 'string' && value ? value.toLowerCase() : null);
24
28
  /** `convert(value)`, or null when the field is absent. */
25
29
  const optional = (value, convert) => (value === null || value === undefined ? null : convert(value));
30
+ /** A non-negative integer string, or null for anything else (absent field, error marker, older explorer). */
31
+ const decimalOrNull = (value) => (/^\d+$/.test(String(value ?? '')) ? String(value) : null);
32
+ /** A non-negative safe integer count, or null. */
33
+ const countOrNull = (value) => (value != null && Number.isSafeInteger(Number(value)) && Number(value) >= 0 ? Number(value) : null);
26
34
  const CLOSE_REASONS = ['split', 'merge', 'move', 'withdraw'];
27
35
  function toStakingEpoch(row) {
28
36
  if (!row)
29
37
  return null;
30
38
  return {
39
+ snapshotBlock: row['snapshotBlock'] == null ? undefined : num(row['snapshotBlock']),
40
+ lastBlockNumber: row['lastBlockNumber'] == null ? undefined : num(row['lastBlockNumber']),
41
+ complete: ['epoch', 'totalActiveStake', 'totalPowerWeight', 'stakerBudget', 'totalWeightedPoolPoints'].every(key => /^\d+$/.test(String(row[key] ?? ''))),
31
42
  epoch: num(row['epoch']),
32
43
  totalPowerWeight: str(row['totalPowerWeight']),
33
44
  totalActiveStake: str(row['totalActiveStake']),
@@ -41,6 +52,7 @@ function toStakingEpoch(row) {
41
52
  }
42
53
  function toPool(row) {
43
54
  return {
55
+ participationComplete: ['openPositions', 'totalPositions'].every(key => row[key] != null && Number.isSafeInteger(Number(row[key])) && Number(row[key]) >= 0),
44
56
  agentId: num(row['agentId']),
45
57
  seller: lower(row['seller']),
46
58
  sellerName: typeof row['sellerName'] === 'string' ? row['sellerName'] : null,
@@ -58,8 +70,13 @@ function toPool(row) {
58
70
  lastUsagePoints: str(row['lastUsagePoints']),
59
71
  volumeUsdc: str(row['volumeUsdc']),
60
72
  lastVolumeUsdc: str(row['lastVolumeUsdc']),
73
+ volumeAvailable: row['volumeUsdc'] != null,
74
+ lastVolumeAvailable: row['lastVolumeUsdc'] != null,
61
75
  lastEmission: str(row['lastEmission']),
62
76
  lastEmissionSettled: row['lastEmissionSettled'] === true,
77
+ historicalYield: /^\d+$/.test(String(row['lastWeight'] ?? '')) && /^\d+$/.test(String(row['lastEmission'] ?? '')) && typeof row['lastEmissionSettled'] === 'boolean'
78
+ ? { power: String(row['lastWeight']), reward: String(row['lastEmission']), settled: row['lastEmissionSettled'] } : null,
79
+ stakers: countOrNull(row['stakers']),
63
80
  lastRewardPer1kPower: optional(row['lastRewardPer1kPower'], str),
64
81
  projectedEmission: str(row['projectedEmission']),
65
82
  projectedRewardPer1kPower: optional(row['projectedRewardPer1kPower'], str),
@@ -69,6 +86,7 @@ function toPool(row) {
69
86
  function toPosition(row) {
70
87
  const closedBy = CLOSE_REASONS.find((reason) => reason === row['closedBy']) ?? null;
71
88
  return {
89
+ lastBlockNumber: row['lastBlockNumber'] == null ? undefined : num(row['lastBlockNumber']),
72
90
  id: num(row['id']),
73
91
  owner: lower(row['owner']) ?? '',
74
92
  agentId: num(row['agentId']),
@@ -87,6 +105,8 @@ function toPosition(row) {
87
105
  slashedAmount: str(row['slashedAmount']),
88
106
  createdAt: num(row['createdAt']),
89
107
  closedAt: optional(row['closedAt'], num),
108
+ power: decimalOrNull(row['power']),
109
+ nextPower: decimalOrNull(row['nextPower']),
90
110
  };
91
111
  }
92
112
  const toSellerEpoch = (row) => ({
@@ -116,10 +136,22 @@ export class AntscanIndexer {
116
136
  this.ttlMs = ttlMs;
117
137
  this.baseUrl = baseUrl.replace(/\/$/, '');
118
138
  }
119
- get(path) {
120
- const hit = this.cache.get(path);
139
+ invalidate() { this.cache.clear(); }
140
+ displaySnapshot(epoch) {
141
+ const key = `display:${epoch}`;
142
+ const hit = this.cache.get(key);
121
143
  if (hit && Date.now() - hit.at < this.ttlMs)
122
144
  return hit.value;
145
+ const value = fetchDisplaySnapshot(this.baseUrl, this.fetchImpl, epoch);
146
+ this.cache.set(key, { at: Date.now(), value });
147
+ value.catch(() => { if (this.cache.get(key)?.value === value)
148
+ this.cache.delete(key); });
149
+ return value;
150
+ }
151
+ get(path, cache = true) {
152
+ const hit = this.cache.get(path);
153
+ if (cache && hit && Date.now() - hit.at < this.ttlMs)
154
+ return hit.value;
123
155
  const url = `${this.baseUrl}${path}`;
124
156
  const value = (async () => {
125
157
  let response;
@@ -130,10 +162,11 @@ export class AntscanIndexer {
130
162
  throw new IndexerError(`Explorer unreachable: ${error.message}`, url);
131
163
  }
132
164
  if (!response.ok)
133
- throw new IndexerError(`Explorer responded with HTTP ${response.status}`, url);
165
+ throw new IndexerError(`Explorer responded with HTTP ${response.status}`, url, response.status);
134
166
  return await response.json();
135
167
  })();
136
- this.cache.set(path, { at: Date.now(), value });
168
+ if (cache)
169
+ this.cache.set(path, { at: Date.now(), value });
137
170
  value.catch(() => { if (this.cache.get(path)?.value === value)
138
171
  this.cache.delete(path); });
139
172
  return value;
@@ -150,18 +183,41 @@ export class AntscanIndexer {
150
183
  const raw = await this.get(`/api/staking/pools/${agentId}?epochs=${epochs}`);
151
184
  return {
152
185
  pool: raw.pool ? toPool(raw.pool) : null,
153
- epochs: (raw.epochs ?? []).map((row) => ({
186
+ epochs: (raw.epochs ?? []).filter(row => row['volumeUsdc'] != null).map((row) => ({
154
187
  epoch: num(row['epoch']), weight: str(row['weight']), activeStake: str(row['activeStake']), usagePoints: str(row['usagePoints']), weightedUsagePoints: str(row['weightedUsagePoints']),
155
188
  volumeUsdc: str(row['volumeUsdc']), requests: str(row['requests']), settledEmission: str(row['settledEmission']), settled: row['settled'] === true,
156
189
  })),
157
- openPositions: num(raw.openPositions),
158
- stakers: num(raw.stakers),
190
+ openPositions: countOrNull(raw.openPositions),
191
+ stakers: countOrNull(raw.stakers),
192
+ pendingStake: decimalOrNull(raw.pendingStake),
193
+ activeStake: decimalOrNull(raw.activeStake),
159
194
  };
160
195
  }
161
196
  async positions(owner, includeClosed = true) {
162
197
  const raw = await this.get(`/api/staking/positions?owner=${owner.toLowerCase()}${includeClosed ? '&includeClosed=1' : ''}`);
163
198
  return (raw.positions ?? []).map(toPosition);
164
199
  }
200
+ rewardPositions(owner, outstanding = false) {
201
+ const key = `rewards:${owner.toLowerCase()}:${outstanding}`;
202
+ const hit = this.cache.get(key);
203
+ if (hit && Date.now() - hit.at < this.ttlMs)
204
+ return hit.value;
205
+ const value = (async () => {
206
+ for (let attempt = 0;; attempt++) {
207
+ try {
208
+ return await fetchRewardPositions(owner, outstanding, path => this.get(path, false));
209
+ }
210
+ catch (error) {
211
+ if (!(error instanceof IndexerError && error.status === 409 && attempt === 0))
212
+ throw error;
213
+ }
214
+ }
215
+ })();
216
+ this.cache.set(key, { at: Date.now(), value });
217
+ value.catch(() => { if (this.cache.get(key)?.value === value)
218
+ this.cache.delete(key); });
219
+ return value;
220
+ }
165
221
  async stakingEpochs(limit = 8) {
166
222
  const raw = await this.get(`/api/staking/epochs?limit=${limit}`);
167
223
  return (raw ?? []).map((row) => toStakingEpoch(row));
@@ -1 +1 @@
1
- {"version":3,"file":"indexer.js","sourceRoot":"","sources":["../../src/service/indexer.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"indexer.js","sourceRoot":"","sources":["../../src/service/indexer.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,3 @@
1
+ import type { LegacySellerPayout } from '../api-types.js';
2
+ import type { AntsContext } from './context.js';
3
+ export declare function legacySellerPayout(ctx: AntsContext, legacyAddress: string | null | undefined): Promise<LegacySellerPayout>;
@@ -0,0 +1,32 @@
1
+ import { Interface, isError, ZeroAddress } from 'ethers';
2
+ const policyInterface = new Interface(['function canClaimSellerUnlocked(address seller) view returns (bool)']);
3
+ export async function legacySellerPayout(ctx, legacyAddress) {
4
+ try {
5
+ const legacy = ctx.legacyEmissionsAt(legacyAddress ?? null);
6
+ if (!legacy)
7
+ return { destination: 'unknown', recipient: null };
8
+ const policy = await legacy.sellerUnlockPolicy();
9
+ let unlocked = false;
10
+ if (policy !== ZeroAddress) {
11
+ try {
12
+ const result = await ctx.provider().call({
13
+ from: legacyAddress, to: policy,
14
+ data: policyInterface.encodeFunctionData('canClaimSellerUnlocked', [ctx.address]),
15
+ });
16
+ unlocked = policyInterface.decodeFunctionResult('canClaimSellerUnlocked', result)[0] === true;
17
+ }
18
+ catch (error) {
19
+ if (!isError(error, 'CALL_EXCEPTION'))
20
+ throw error;
21
+ }
22
+ }
23
+ if (unlocked)
24
+ return { destination: 'wallet', recipient: ctx.address };
25
+ const pool = await legacy.sellerRewardsPool();
26
+ return pool === ZeroAddress ? { destination: 'unknown', recipient: null } : { destination: 'locked', recipient: pool };
27
+ }
28
+ catch {
29
+ return { destination: 'unknown', recipient: null };
30
+ }
31
+ }
32
+ //# sourceMappingURL=legacy-payout.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"legacy-payout.js","sourceRoot":"","sources":["../../src/service/legacy-payout.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,SAAS,EAAE,OAAO,EAAE,WAAW,EAAE,MAAM,QAAQ,CAAC;AAIzD,MAAM,eAAe,GAAG,IAAI,SAAS,CAAC,CAAC,qEAAqE,CAAC,CAAC,CAAC;AAE/G,MAAM,CAAC,KAAK,UAAU,kBAAkB,CAAC,GAAgB,EAAE,aAAwC;IACjG,IAAI,CAAC;QACH,MAAM,MAAM,GAAG,GAAG,CAAC,iBAAiB,CAAC,aAAa,IAAI,IAAI,CAAC,CAAC;QAC5D,IAAI,CAAC,MAAM;YAAE,OAAO,EAAE,WAAW,EAAE,SAAS,EAAE,SAAS,EAAE,IAAI,EAAE,CAAC;QAChE,MAAM,MAAM,GAAG,MAAM,MAAM,CAAC,kBAAkB,EAAE,CAAC;QACjD,IAAI,QAAQ,GAAG,KAAK,CAAC;QACrB,IAAI,MAAM,KAAK,WAAW,EAAE,CAAC;YAC3B,IAAI,CAAC;gBACH,MAAM,MAAM,GAAG,MAAM,GAAG,CAAC,QAAQ,EAAE,CAAC,IAAI,CAAC;oBACvC,IAAI,EAAE,aAAc,EAAE,EAAE,EAAE,MAAM;oBAChC,IAAI,EAAE,eAAe,CAAC,kBAAkB,CAAC,wBAAwB,EAAE,CAAC,GAAG,CAAC,OAAO,CAAC,CAAC;iBAClF,CAAC,CAAC;gBACH,QAAQ,GAAG,eAAe,CAAC,oBAAoB,CAAC,wBAAwB,EAAE,MAAM,CAAC,CAAC,CAAC,CAAC,KAAK,IAAI,CAAC;YAChG,CAAC;YAAC,OAAO,KAAK,EAAE,CAAC;gBACf,IAAI,CAAC,OAAO,CAAC,KAAK,EAAE,gBAAgB,CAAC;oBAAE,MAAM,KAAK,CAAC;YACrD,CAAC;QACH,CAAC;QACD,IAAI,QAAQ;YAAE,OAAO,EAAE,WAAW,EAAE,QAAQ,EAAE,SAAS,EAAE,GAAG,CAAC,OAAO,EAAE,CAAC;QACvE,MAAM,IAAI,GAAG,MAAM,MAAM,CAAC,iBAAiB,EAAE,CAAC;QAC9C,OAAO,IAAI,KAAK,WAAW,CAAC,CAAC,CAAC,EAAE,WAAW,EAAE,SAAS,EAAE,SAAS,EAAE,IAAI,EAAE,CAAC,CAAC,CAAC,EAAE,WAAW,EAAE,QAAQ,EAAE,SAAS,EAAE,IAAI,EAAE,CAAC;IACzH,CAAC;IAAC,MAAM,CAAC;QACP,OAAO,EAAE,WAAW,EAAE,SAAS,EAAE,SAAS,EAAE,IAAI,EAAE,CAAC;IACrD,CAAC;AACH,CAAC"}
@@ -0,0 +1,5 @@
1
+ import type { AntsContext } from './context.js';
2
+ import type { EmissionsView, NetworkSnapshot } from '../api-types.js';
3
+ export declare function invalidateNetwork(ctx: AntsContext): void;
4
+ export declare function networkSnapshot(ctx: AntsContext): Promise<NetworkSnapshot>;
5
+ export declare function networkLegacy(ctx: AntsContext): Promise<EmissionsView['legacy']>;