@oakagentkit/core 0.2.3 → 0.2.5

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 (576) hide show
  1. package/build/dist/api/addresses.d.ts +112 -0
  2. package/build/dist/api/addresses.js +1 -1
  3. package/build/dist/api/amounts.d.ts +2 -0
  4. package/build/dist/api/amounts.js +1 -1
  5. package/build/dist/api/args.js +1 -1
  6. package/build/dist/api/cache.js +1 -1
  7. package/build/dist/api/canonical.js +1 -1
  8. package/build/dist/api/chain.js +1 -1
  9. package/build/dist/api/deployments.js +1 -1
  10. package/build/dist/api/errors.d.ts +1 -0
  11. package/build/dist/api/errors.js +1 -1
  12. package/build/dist/api/gas.js +1 -1
  13. package/build/dist/api/grandfather.js +1 -1
  14. package/build/dist/api/guards.js +1 -1
  15. package/build/dist/api/history.js +1 -1
  16. package/build/dist/api/http.js +1 -1
  17. package/build/dist/api/identity-link.d.ts +1 -0
  18. package/build/dist/api/identity-link.js +1 -1
  19. package/build/dist/api/launch.js +1 -1
  20. package/build/dist/api/merkle.js +1 -1
  21. package/build/dist/api/metadata.js +1 -1
  22. package/build/dist/api/module.js +1 -1
  23. package/build/dist/api/modules/beefy/boosts.js +1 -1
  24. package/build/dist/api/modules/beefy/clm.js +1 -1
  25. package/build/dist/api/modules/beefy/guard.js +1 -1
  26. package/build/dist/api/modules/beefy/index.js +1 -1
  27. package/build/dist/api/modules/beefy/liquidity.js +1 -1
  28. package/build/dist/api/modules/beefy/management.js +1 -1
  29. package/build/dist/api/modules/beefy/vaults.js +1 -1
  30. package/build/dist/api/modules/borro/abi.d.ts +149 -0
  31. package/build/dist/api/modules/borro/abi.js +1 -0
  32. package/build/dist/api/modules/borro/actions.d.ts +2 -0
  33. package/build/dist/api/modules/borro/actions.js +1 -0
  34. package/build/dist/api/modules/borro/checks.d.ts +151 -0
  35. package/build/dist/api/modules/borro/checks.js +1 -0
  36. package/build/dist/api/modules/borro/copy.d.ts +174 -0
  37. package/build/dist/api/modules/borro/copy.js +1 -0
  38. package/build/dist/api/modules/borro/index.d.ts +13 -0
  39. package/build/dist/api/modules/borro/index.js +1 -0
  40. package/build/dist/api/modules/borro/liquidity.d.ts +4 -0
  41. package/build/dist/api/modules/borro/liquidity.js +1 -0
  42. package/build/dist/api/modules/borro/pins.d.ts +264 -0
  43. package/build/dist/api/modules/borro/pins.js +1 -0
  44. package/build/dist/api/modules/borro/positions.d.ts +8 -0
  45. package/build/dist/api/modules/borro/positions.js +1 -0
  46. package/build/dist/api/modules/borro/rates.d.ts +20 -0
  47. package/build/dist/api/modules/borro/rates.js +1 -0
  48. package/build/dist/api/modules/borro/reader.d.ts +32 -0
  49. package/build/dist/api/modules/borro/reader.js +1 -0
  50. package/build/dist/api/modules/borro/types.d.ts +120 -0
  51. package/build/dist/api/modules/borro/types.js +0 -0
  52. package/build/dist/api/modules/clanker/extensions.js +1 -1
  53. package/build/dist/api/modules/clanker/index.js +1 -1
  54. package/build/dist/api/modules/clanker/manage.js +1 -1
  55. package/build/dist/api/modules/clanker/pool-config.js +1 -1
  56. package/build/dist/api/modules/clanker/protocol.js +1 -1
  57. package/build/dist/api/modules/clanker/state.js +1 -1
  58. package/build/dist/api/modules/earn/copy.d.ts +114 -0
  59. package/build/dist/api/modules/earn/copy.js +1 -0
  60. package/build/dist/api/modules/earn/cost.d.ts +47 -0
  61. package/build/dist/api/modules/earn/cost.js +1 -0
  62. package/build/dist/api/modules/earn/index.d.ts +8 -0
  63. package/build/dist/api/modules/earn/index.js +1 -0
  64. package/build/dist/api/modules/earn/lp.d.ts +17 -0
  65. package/build/dist/api/modules/earn/lp.js +1 -0
  66. package/build/dist/api/modules/earn/options.d.ts +36 -0
  67. package/build/dist/api/modules/earn/options.js +1 -0
  68. package/build/dist/api/modules/earn/types.d.ts +39 -0
  69. package/build/dist/api/modules/earn/types.js +0 -0
  70. package/build/dist/api/modules/erc8004/abi.js +1 -1
  71. package/build/dist/api/modules/erc8004/common.js +1 -1
  72. package/build/dist/api/modules/erc8004/domain.js +1 -1
  73. package/build/dist/api/modules/erc8004/index.js +1 -1
  74. package/build/dist/api/modules/erc8004/management.js +1 -1
  75. package/build/dist/api/modules/erc8004/reputation.js +1 -1
  76. package/build/dist/api/modules/erc8004/services.js +1 -1
  77. package/build/dist/api/modules/erc8004/validation.js +1 -1
  78. package/build/dist/api/modules/grove/index.js +1 -1
  79. package/build/dist/api/modules/heyresearch/backoff.js +1 -1
  80. package/build/dist/api/modules/heyresearch/builder-feed.js +1 -1
  81. package/build/dist/api/modules/heyresearch/freshness.js +1 -1
  82. package/build/dist/api/modules/heyresearch/index.js +1 -1
  83. package/build/dist/api/modules/heyresearch/proof-reads.js +1 -1
  84. package/build/dist/api/modules/heyresearch/public-reads.js +1 -1
  85. package/build/dist/api/modules/heyresearch/scan.js +1 -1
  86. package/build/dist/api/modules/heyresearch/status-labels.d.ts +1 -1
  87. package/build/dist/api/modules/heyresearch/status-labels.js +1 -1
  88. package/build/dist/api/modules/heyresearch/token-facts.js +1 -1
  89. package/build/dist/api/modules/hoodag/chain-reads.js +1 -1
  90. package/build/dist/api/modules/hoodag/index.js +1 -1
  91. package/build/dist/api/modules/hoodag/management.js +1 -1
  92. package/build/dist/api/modules/hoodag/public-reads.js +1 -1
  93. package/build/dist/api/modules/hoodag/reconstruct.js +1 -1
  94. package/build/dist/api/modules/hoodlock/airdrop.js +1 -1
  95. package/build/dist/api/modules/hoodlock/buyback.js +1 -1
  96. package/build/dist/api/modules/hoodlock/commerce.js +1 -1
  97. package/build/dist/api/modules/hoodlock/fee.js +1 -1
  98. package/build/dist/api/modules/hoodlock/guard.js +1 -1
  99. package/build/dist/api/modules/hoodlock/index.js +1 -1
  100. package/build/dist/api/modules/hoodlock/lifecycle.js +1 -1
  101. package/build/dist/api/modules/hoodlock/locks-burn.js +1 -1
  102. package/build/dist/api/modules/hoodlock/public.js +1 -1
  103. package/build/dist/api/modules/hookr/actions.js +1 -1
  104. package/build/dist/api/modules/hookr/addons.js +1 -1
  105. package/build/dist/api/modules/hookr/agent-gate.js +1 -1
  106. package/build/dist/api/modules/hookr/contracts.js +1 -1
  107. package/build/dist/api/modules/hookr/create-cancel.js +1 -1
  108. package/build/dist/api/modules/hookr/discovery.js +1 -1
  109. package/build/dist/api/modules/hookr/fill-bounty.js +1 -1
  110. package/build/dist/api/modules/hookr/index.js +1 -1
  111. package/build/dist/api/modules/hookr/launch-options.js +1 -1
  112. package/build/dist/api/modules/hookr/launch-profile.js +1 -1
  113. package/build/dist/api/modules/hookr/launch-receipt.js +1 -1
  114. package/build/dist/api/modules/hookr/launch.js +1 -1
  115. package/build/dist/api/modules/hookr/liquidity.js +1 -1
  116. package/build/dist/api/modules/hookr/lp-positions.js +1 -1
  117. package/build/dist/api/modules/hookr/lp-reads.js +1 -1
  118. package/build/dist/api/modules/hookr/lp-receipt.js +1 -1
  119. package/build/dist/api/modules/hookr/lp-state.js +1 -1
  120. package/build/dist/api/modules/hookr/pins.js +1 -1
  121. package/build/dist/api/modules/hookr/public-reads.js +1 -1
  122. package/build/dist/api/modules/hookr/read-utils.js +1 -1
  123. package/build/dist/api/modules/hookr/relay.js +1 -1
  124. package/build/dist/api/modules/hookr/revenue.js +1 -1
  125. package/build/dist/api/modules/kyberswap/index.js +1 -1
  126. package/build/dist/api/modules/kyberswap/source-pools.js +1 -1
  127. package/build/dist/api/modules/layerbank/abi.d.ts +165 -0
  128. package/build/dist/api/modules/layerbank/abi.js +1 -0
  129. package/build/dist/api/modules/layerbank/actions.d.ts +2 -0
  130. package/build/dist/api/modules/layerbank/actions.js +1 -0
  131. package/build/dist/api/modules/layerbank/checks.d.ts +21 -0
  132. package/build/dist/api/modules/layerbank/checks.js +1 -0
  133. package/build/dist/api/modules/layerbank/index.d.ts +2 -0
  134. package/build/dist/api/modules/layerbank/index.js +1 -0
  135. package/build/dist/api/modules/layerbank/merkl.d.ts +6 -0
  136. package/build/dist/api/modules/layerbank/merkl.js +1 -0
  137. package/build/dist/api/modules/layerbank/reader.d.ts +15 -0
  138. package/build/dist/api/modules/layerbank/reader.js +1 -0
  139. package/build/dist/api/modules/layerbank/reserve.d.ts +13 -0
  140. package/build/dist/api/modules/layerbank/reserve.js +1 -0
  141. package/build/dist/api/modules/lighter/index.js +1 -1
  142. package/build/dist/api/modules/longbow/administration.js +1 -1
  143. package/build/dist/api/modules/longbow/analytics.js +1 -1
  144. package/build/dist/api/modules/longbow/fixed.js +1 -1
  145. package/build/dist/api/modules/longbow/index.js +1 -1
  146. package/build/dist/api/modules/longbow/nft.js +1 -1
  147. package/build/dist/api/modules/longbow/rebates.js +1 -1
  148. package/build/dist/api/modules/longbow/staking.js +1 -1
  149. package/build/dist/api/modules/meridian/index.js +1 -1
  150. package/build/dist/api/modules/meridian/markets.js +1 -1
  151. package/build/dist/api/modules/meridian/perps-batch.js +1 -1
  152. package/build/dist/api/modules/meridian/perps-common.js +1 -1
  153. package/build/dist/api/modules/meridian/perps-guards.js +1 -1
  154. package/build/dist/api/modules/meridian/perps-intents.js +1 -1
  155. package/build/dist/api/modules/meridian/perps-stream.js +1 -1
  156. package/build/dist/api/modules/meridian/perps.d.ts +1 -0
  157. package/build/dist/api/modules/meridian/perps.js +1 -1
  158. package/build/dist/api/modules/meridian/predict-read.js +1 -1
  159. package/build/dist/api/modules/meridian/rfq.js +1 -1
  160. package/build/dist/api/modules/merkl/discovery.js +1 -1
  161. package/build/dist/api/modules/merkl/index.js +1 -1
  162. package/build/dist/api/modules/merkl/manage.js +1 -1
  163. package/build/dist/api/modules/merkl/protocol.js +1 -1
  164. package/build/dist/api/modules/morpho/allocator.js +1 -1
  165. package/build/dist/api/modules/morpho/bundles-abi.js +1 -1
  166. package/build/dist/api/modules/morpho/bundles.js +1 -1
  167. package/build/dist/api/modules/morpho/in-kind.js +1 -1
  168. package/build/dist/api/modules/morpho/index.js +1 -1
  169. package/build/dist/api/modules/morpho/local-guard.js +1 -1
  170. package/build/dist/api/modules/morpho/midnight-abi.js +1 -1
  171. package/build/dist/api/modules/morpho/midnight.js +1 -1
  172. package/build/dist/api/modules/morpho/protocol.js +1 -1
  173. package/build/dist/api/modules/morpho/surface.js +1 -1
  174. package/build/dist/api/modules/morpho/vault-management.js +1 -1
  175. package/build/dist/api/modules/morpho/vault-tools.js +1 -1
  176. package/build/dist/api/modules/morpho/vault-v2.js +1 -1
  177. package/build/dist/api/modules/netnet/blackjack-hashes.js +1 -1
  178. package/build/dist/api/modules/netnet/card-abi.js +1 -1
  179. package/build/dist/api/modules/netnet/card-plan.js +1 -1
  180. package/build/dist/api/modules/netnet/card-policy.js +1 -1
  181. package/build/dist/api/modules/netnet/card-read.js +1 -1
  182. package/build/dist/api/modules/netnet/card-recovery.js +1 -1
  183. package/build/dist/api/modules/netnet/desk-action-abi.js +1 -1
  184. package/build/dist/api/modules/netnet/desk-action.js +1 -1
  185. package/build/dist/api/modules/netnet/desk-read.js +1 -1
  186. package/build/dist/api/modules/netnet/desk-registry.js +1 -1
  187. package/build/dist/api/modules/netnet/financial-abi.js +1 -1
  188. package/build/dist/api/modules/netnet/financial.js +1 -1
  189. package/build/dist/api/modules/netnet/index.js +1 -1
  190. package/build/dist/api/modules/netnet/staking.js +1 -1
  191. package/build/dist/api/modules/orbio/gateway.js +1 -1
  192. package/build/dist/api/modules/orbio/index.js +1 -1
  193. package/build/dist/api/modules/orbio/pins.js +1 -1
  194. package/build/dist/api/modules/orbio/positions.d.ts +2 -0
  195. package/build/dist/api/modules/orbio/positions.js +1 -0
  196. package/build/dist/api/modules/pendle/abi.d.ts +205 -0
  197. package/build/dist/api/modules/pendle/abi.js +1 -0
  198. package/build/dist/api/modules/pendle/convert.d.ts +24 -0
  199. package/build/dist/api/modules/pendle/convert.js +1 -0
  200. package/build/dist/api/modules/pendle/costs.d.ts +3 -0
  201. package/build/dist/api/modules/pendle/costs.js +1 -0
  202. package/build/dist/api/modules/pendle/index.d.ts +11 -0
  203. package/build/dist/api/modules/pendle/index.js +1 -0
  204. package/build/dist/api/modules/pendle/markets.d.ts +37 -0
  205. package/build/dist/api/modules/pendle/markets.js +1 -0
  206. package/build/dist/api/modules/pendle/positions.d.ts +18 -0
  207. package/build/dist/api/modules/pendle/positions.js +1 -0
  208. package/build/dist/api/modules/pendle/pricecheck.d.ts +95 -0
  209. package/build/dist/api/modules/pendle/pricecheck.js +1 -0
  210. package/build/dist/api/modules/pendle/reader.d.ts +17 -0
  211. package/build/dist/api/modules/pendle/reader.js +1 -0
  212. package/build/dist/api/modules/pendle/redeem.d.ts +15 -0
  213. package/build/dist/api/modules/pendle/redeem.js +1 -0
  214. package/build/dist/api/modules/pendle/trade.d.ts +2 -0
  215. package/build/dist/api/modules/pendle/trade.js +1 -0
  216. package/build/dist/api/modules/pendle/types.d.ts +41 -0
  217. package/build/dist/api/modules/pendle/types.js +0 -0
  218. package/build/dist/api/modules/pendle/validate.d.ts +424 -0
  219. package/build/dist/api/modules/pendle/validate.js +1 -0
  220. package/build/dist/api/modules/pendle/verify.d.ts +22 -0
  221. package/build/dist/api/modules/pendle/verify.js +1 -0
  222. package/build/dist/api/modules/pons/claim.js +1 -1
  223. package/build/dist/api/modules/pons/holder-directory.js +1 -1
  224. package/build/dist/api/modules/pons/index.js +1 -1
  225. package/build/dist/api/modules/pons/launch-status.js +1 -1
  226. package/build/dist/api/modules/pons/prices.js +1 -1
  227. package/build/dist/api/modules/pons/reads.d.ts +38 -2
  228. package/build/dist/api/modules/pons/reads.js +1 -1
  229. package/build/dist/api/modules/pons/swap-terms.js +1 -1
  230. package/build/dist/api/modules/pons/trade.js +1 -1
  231. package/build/dist/api/modules/poolstrade/index.js +1 -1
  232. package/build/dist/api/modules/priors/coverage.js +1 -1
  233. package/build/dist/api/modules/priors/discovery.js +1 -1
  234. package/build/dist/api/modules/priors/features.js +1 -1
  235. package/build/dist/api/modules/priors/holdings.d.ts +4 -0
  236. package/build/dist/api/modules/priors/holdings.js +1 -0
  237. package/build/dist/api/modules/priors/index.js +1 -1
  238. package/build/dist/api/modules/priors/integration.js +1 -1
  239. package/build/dist/api/modules/priors/market.js +1 -1
  240. package/build/dist/api/modules/priors/pt.js +1 -1
  241. package/build/dist/api/modules/priors/savings-exit.js +1 -1
  242. package/build/dist/api/modules/priors/starter-line.js +1 -1
  243. package/build/dist/api/modules/priors/stock-swap.js +1 -1
  244. package/build/dist/api/modules/relay/api.js +1 -1
  245. package/build/dist/api/modules/relay/bootstrap.js +1 -1
  246. package/build/dist/api/modules/relay/discovery.js +1 -1
  247. package/build/dist/api/modules/relay/inbound.d.ts +2 -0
  248. package/build/dist/api/modules/relay/inbound.js +1 -1
  249. package/build/dist/api/modules/relay/index.js +1 -1
  250. package/build/dist/api/modules/relay/order.js +1 -1
  251. package/build/dist/api/modules/relay/outbound-status.js +1 -1
  252. package/build/dist/api/modules/relay/readiness.js +1 -1
  253. package/build/dist/api/modules/relay/reads.js +1 -1
  254. package/build/dist/api/modules/relay/vaults.js +1 -1
  255. package/build/dist/api/modules/spark/actions.js +1 -1
  256. package/build/dist/api/modules/spark/details.js +1 -1
  257. package/build/dist/api/modules/spark/index.js +1 -1
  258. package/build/dist/api/modules/spark/management.js +1 -1
  259. package/build/dist/api/modules/steakhouse/analytics.js +1 -1
  260. package/build/dist/api/modules/steakhouse/erc4626.js +1 -1
  261. package/build/dist/api/modules/steakhouse/index.js +1 -1
  262. package/build/dist/api/modules/steakhouse/local-guard.js +1 -1
  263. package/build/dist/api/modules/steakhouse/management.js +1 -1
  264. package/build/dist/api/modules/steakhouse/share-symbol.d.ts +3 -0
  265. package/build/dist/api/modules/steakhouse/share-symbol.js +1 -0
  266. package/build/dist/api/modules/steakhouse/v2-exit.js +1 -1
  267. package/build/dist/api/modules/tickerspring/basket-routes.js +1 -1
  268. package/build/dist/api/modules/tickerspring/contract-reads.js +1 -1
  269. package/build/dist/api/modules/tickerspring/discovery.js +1 -1
  270. package/build/dist/api/modules/tickerspring/exit-preview.js +1 -1
  271. package/build/dist/api/modules/tickerspring/guards.js +1 -1
  272. package/build/dist/api/modules/tickerspring/index.js +1 -1
  273. package/build/dist/api/modules/tickerspring/journeys.js +1 -1
  274. package/build/dist/api/modules/tickerspring/ladder.js +1 -1
  275. package/build/dist/api/modules/tickerspring/maker.js +1 -1
  276. package/build/dist/api/modules/tickerspring/order-accounting.js +1 -1
  277. package/build/dist/api/modules/tickerspring/research.js +1 -1
  278. package/build/dist/api/modules/tickerspring/strategies.js +1 -1
  279. package/build/dist/api/modules/uniswap/auction-create.js +1 -1
  280. package/build/dist/api/modules/uniswap/auction.js +1 -1
  281. package/build/dist/api/modules/uniswap/batch.js +1 -1
  282. package/build/dist/api/modules/uniswap/common.js +1 -1
  283. package/build/dist/api/modules/uniswap/fees.js +1 -1
  284. package/build/dist/api/modules/uniswap/index.js +1 -1
  285. package/build/dist/api/modules/uniswap/local-guard.js +1 -1
  286. package/build/dist/api/modules/uniswap/oracle.js +1 -1
  287. package/build/dist/api/modules/uniswap/pool-math.js +1 -1
  288. package/build/dist/api/modules/uniswap/pools.js +1 -1
  289. package/build/dist/api/modules/uniswap/position.js +1 -1
  290. package/build/dist/api/modules/uniswap/protocol.js +1 -1
  291. package/build/dist/api/modules/uniswap/token-jar.js +1 -1
  292. package/build/dist/api/modules/uniswap/trade-batch.js +1 -1
  293. package/build/dist/api/modules/uniswap/trade.js +1 -1
  294. package/build/dist/api/modules/uniswap/v2.js +1 -1
  295. package/build/dist/api/modules/uniswap/v3.d.ts +11 -0
  296. package/build/dist/api/modules/uniswap/v3.js +1 -1
  297. package/build/dist/api/modules/uniswap/v4.js +1 -1
  298. package/build/dist/api/modules/uniswap/wrap.js +1 -1
  299. package/build/dist/api/modules/velora/claims.js +1 -1
  300. package/build/dist/api/modules/velora/delta-reads.js +1 -1
  301. package/build/dist/api/modules/velora/index.js +1 -1
  302. package/build/dist/api/modules/wormhole/index.js +1 -1
  303. package/build/dist/api/modules/wormhole/license.js +1 -1
  304. package/build/dist/api/modules/wormhole/quotetext.js +1 -1
  305. package/build/dist/api/modules/wormhole/scan-text.js +1 -1
  306. package/build/dist/api/modules/wormhole/token-check.js +1 -1
  307. package/build/dist/api/owner-signature.js +1 -1
  308. package/build/dist/api/positions.d.ts +5 -5
  309. package/build/dist/api/positions.js +1 -1
  310. package/build/dist/api/pricenote.js +1 -1
  311. package/build/dist/api/prices.js +1 -1
  312. package/build/dist/api/pricing.js +1 -1
  313. package/build/dist/api/reads.js +1 -1
  314. package/build/dist/api/routes.js +1 -1
  315. package/build/dist/api/rpc.js +1 -1
  316. package/build/dist/api/secret-fields.js +1 -1
  317. package/build/dist/api/send.js +1 -1
  318. package/build/dist/api/signing-registry.js +1 -1
  319. package/build/dist/api/signing.js +1 -1
  320. package/build/dist/api/simulate.js +1 -1
  321. package/build/dist/api/swap.js +1 -1
  322. package/build/dist/api/token-output.js +1 -1
  323. package/build/dist/api/tokens.d.ts +1 -0
  324. package/build/dist/api/tokens.js +1 -1
  325. package/build/dist/api/tool-policy.js +1 -1
  326. package/build/dist/api/tx.js +1 -1
  327. package/build/dist/api/types.d.ts +7 -2
  328. package/build/dist/api/untrusted.js +1 -1
  329. package/build/dist/api/vendor-limits.js +1 -1
  330. package/build/dist/chunks/{PEA32CWB.js → 2KYAMXTS.js} +1 -1
  331. package/build/dist/chunks/2MAMJJJC.js +1 -0
  332. package/build/dist/chunks/2MZXTOZU.js +1 -0
  333. package/build/dist/chunks/{VC2RCYQE.js → 2TK3ETUO.js} +1 -1
  334. package/build/dist/chunks/{LKJBMHCE.js → 326QMOTR.js} +1 -1
  335. package/build/dist/chunks/{OE3CLZHR.js → 3FUVMSCF.js} +1 -1
  336. package/build/dist/chunks/{3EFV4FQF.js → 3GOHSYHW.js} +1 -1
  337. package/build/dist/chunks/{CY75R4FK.js → 3MLUCYCB.js} +1 -1
  338. package/build/dist/chunks/{5O5ZE3ZV.js → 3NJ5KQ3Q.js} +1 -1
  339. package/build/dist/chunks/{EVANKNJV.js → 3XNZUIRU.js} +1 -1
  340. package/build/dist/chunks/3XXBLNEX.js +1 -0
  341. package/build/dist/chunks/{6IM6A5VA.js → 43LI5NKJ.js} +1 -1
  342. package/build/dist/chunks/{YZSTP2E6.js → 45BRW2ZF.js} +1 -1
  343. package/build/dist/chunks/46547QT3.js +1 -0
  344. package/build/dist/chunks/{C3TJLARP.js → 46KWRAYK.js} +1 -1
  345. package/build/dist/chunks/{SOYQOE5P.js → 4BVP652W.js} +1 -1
  346. package/build/dist/chunks/4HG6FRVH.js +1 -0
  347. package/build/dist/chunks/4MXM6Q4W.js +1 -0
  348. package/build/dist/chunks/{NWSPC3NH.js → 4PY3UFNR.js} +1 -1
  349. package/build/dist/chunks/52ELWNXJ.js +2 -0
  350. package/build/dist/chunks/{O5IVZHHP.js → 553UE2ZQ.js} +1 -1
  351. package/build/dist/chunks/{FUXT7GRK.js → 57MEFFCU.js} +1 -1
  352. package/build/dist/chunks/{XWEFKXKA.js → 5APS4T2D.js} +1 -1
  353. package/build/dist/chunks/{3RFSGU2Y.js → 5CAAFU7R.js} +1 -1
  354. package/build/dist/chunks/{6AWTAE4Q.js → 5SMVQCAP.js} +1 -1
  355. package/build/dist/chunks/63YRSLDK.js +1 -0
  356. package/build/dist/chunks/{53N7PNJH.js → 64GOINYS.js} +1 -1
  357. package/build/dist/chunks/66F5ZH34.js +1 -0
  358. package/build/dist/chunks/{6ZYLNB2B.js → 6B3VVISQ.js} +1 -1
  359. package/build/dist/chunks/6D5DJA5B.js +1 -0
  360. package/build/dist/chunks/{DZGEQBO7.js → 6I4NTKB2.js} +1 -1
  361. package/build/dist/chunks/{DCTUYDWF.js → 6OGDTEGH.js} +1 -1
  362. package/build/dist/chunks/6PBGEPUK.js +20 -0
  363. package/build/dist/chunks/{E7R3J4H7.js → 6WD4HHID.js} +1 -1
  364. package/build/dist/chunks/{RAKUK5VR.js → 6WZX7C4T.js} +1 -1
  365. package/build/dist/chunks/{MKQVS3IO.js → 74Y2KDNR.js} +1 -1
  366. package/build/dist/chunks/{AMICUXS6.js → 7WSHW7KW.js} +1 -1
  367. package/build/dist/chunks/A3PN3PK3.js +1 -0
  368. package/build/dist/chunks/{CXLEQCP3.js → ABPL3ZZI.js} +1 -1
  369. package/build/dist/chunks/{YQUKU2LS.js → AFBEZXNV.js} +1 -1
  370. package/build/dist/chunks/AKYF5264.js +7 -0
  371. package/build/dist/chunks/{ASDKY5NX.js → APGLZXIW.js} +1 -1
  372. package/build/dist/chunks/{UNZRE3YU.js → AVG4W3Y7.js} +1 -1
  373. package/build/dist/chunks/{VFKNXQXI.js → B3RXD5ET.js} +1 -1
  374. package/build/dist/chunks/{V5LTA42G.js → BBS3ODWZ.js} +1 -1
  375. package/build/dist/chunks/{U3F6DDML.js → BJ2VGRF4.js} +1 -1
  376. package/build/dist/chunks/{VFSRRDLY.js → BTD5SMOW.js} +1 -1
  377. package/build/dist/chunks/{PTAWEHKB.js → BTPXJAUX.js} +1 -1
  378. package/build/dist/chunks/{R53P2K3C.js → C36BFZH6.js} +1 -1
  379. package/build/dist/chunks/{L62M7LOB.js → C5ZZAYXD.js} +1 -1
  380. package/build/dist/chunks/{VVEUJ36E.js → C7AXJHBT.js} +1 -1
  381. package/build/dist/chunks/CBG5HARQ.js +2 -0
  382. package/build/dist/chunks/{ELZNT5Q3.js → CCTXCMH4.js} +1 -1
  383. package/build/dist/chunks/{AJP5LDM2.js → CHXBOXOD.js} +1 -1
  384. package/build/dist/chunks/D3YLXQPW.js +1 -0
  385. package/build/dist/chunks/DFM4T6ZE.js +1 -0
  386. package/build/dist/chunks/{GGUEKSR4.js → DJN3JAWB.js} +1 -1
  387. package/build/dist/chunks/{52DHGSG4.js → DW4V5PUY.js} +1 -1
  388. package/build/dist/chunks/E3RACZUY.js +1 -0
  389. package/build/dist/chunks/{VCLPOU7T.js → E674J2MD.js} +1 -1
  390. package/build/dist/chunks/EE64JSLY.js +1 -0
  391. package/build/dist/chunks/EJ7O75A7.js +1 -0
  392. package/build/dist/chunks/{ZXQMF56D.js → ELSXLZN5.js} +1 -1
  393. package/build/dist/chunks/ER47KGRM.js +1 -0
  394. package/build/dist/chunks/FQ6UZCM6.js +1 -0
  395. package/build/dist/chunks/FWD4L3CJ.js +1 -0
  396. package/build/dist/chunks/GEIFITAQ.js +1 -0
  397. package/build/dist/chunks/{S3HNPTXA.js → GGSAKCND.js} +1 -1
  398. package/build/dist/chunks/GL4NCUMH.js +1 -0
  399. package/build/dist/chunks/GNC6RXLT.js +1 -0
  400. package/build/dist/chunks/{YA5WWDEW.js → GQ5GYUEH.js} +1 -1
  401. package/build/dist/chunks/{TLJPVYRJ.js → GW5IXLKU.js} +1 -1
  402. package/build/dist/chunks/{57HAXNQV.js → GW626GG2.js} +1 -1
  403. package/build/dist/chunks/{CE7D6MUS.js → H2XDMFQQ.js} +1 -1
  404. package/build/dist/chunks/H43RNCX2.js +1 -0
  405. package/build/dist/chunks/HAQPIBYR.js +1 -0
  406. package/build/dist/chunks/HCUHMCBW.js +1 -0
  407. package/build/dist/chunks/HKEMQBFA.js +1 -0
  408. package/build/dist/chunks/{WTSMPDT5.js → HM72DH4V.js} +1 -1
  409. package/build/dist/chunks/HSCQZ66A.js +1 -0
  410. package/build/dist/chunks/{4KQZTPMS.js → I26DMNJG.js} +1 -1
  411. package/build/dist/chunks/{YHPOXAKA.js → IMO3GDA5.js} +1 -1
  412. package/build/dist/chunks/INOZIE55.js +1 -0
  413. package/build/dist/chunks/IOYRL6AY.js +1 -0
  414. package/build/dist/chunks/IX3GZMTM.js +1 -0
  415. package/build/dist/chunks/IY7BXLT4.js +1 -0
  416. package/build/dist/chunks/J2OT4KAH.js +1 -0
  417. package/build/dist/chunks/JKD2B6OX.js +1 -0
  418. package/build/dist/chunks/JUZ5JU6D.js +70 -0
  419. package/build/dist/chunks/{5OEHZJ6X.js → JVLLVNF2.js} +1 -1
  420. package/build/dist/chunks/K3RDPI5J.js +1 -0
  421. package/build/dist/chunks/{WCKMQFGS.js → K4DHHQBI.js} +1 -1
  422. package/build/dist/chunks/KBKK7UNY.js +1 -0
  423. package/build/dist/chunks/KIFSRO5K.js +1 -0
  424. package/build/dist/chunks/KIFZ5ZSK.js +1 -0
  425. package/build/dist/chunks/{4AKIXLXH.js → KPCY5V35.js} +1 -1
  426. package/build/dist/chunks/L4N2RSK2.js +1 -0
  427. package/build/dist/chunks/{2W46IRX6.js → L5BLHY34.js} +1 -1
  428. package/build/dist/chunks/{ZT47KN7A.js → LSXUAHOE.js} +1 -1
  429. package/build/dist/chunks/{NATG6YA6.js → M37654RL.js} +1 -1
  430. package/build/dist/chunks/MJ6WEWMI.js +3 -0
  431. package/build/dist/chunks/{ACN2BFMA.js → MQK6OP7S.js} +1 -1
  432. package/build/dist/chunks/{XV2HQKND.js → MR5L7V6Z.js} +1 -1
  433. package/build/dist/chunks/MRMR4QHA.js +1 -0
  434. package/build/dist/chunks/{TWSTOFN3.js → N4Q6GN65.js} +1 -1
  435. package/build/dist/chunks/{H4S2ZCWK.js → NAZPDRIF.js} +1 -1
  436. package/build/dist/chunks/{FBSUTF3B.js → NDCLTVIU.js} +1 -1
  437. package/build/dist/chunks/NEEZBJBC.js +1 -0
  438. package/build/dist/chunks/{MRWCFTMS.js → NKX3FE34.js} +1 -1
  439. package/build/dist/chunks/{J3GFCBZZ.js → NKZKKCK2.js} +1 -1
  440. package/build/dist/chunks/{73N3TOJL.js → NWNYJ26T.js} +1 -1
  441. package/build/dist/chunks/{LBEMCOND.js → O7HCEPQY.js} +1 -1
  442. package/build/dist/chunks/{F6WBPPBN.js → OJ4WJUPP.js} +1 -1
  443. package/build/dist/chunks/OJPG45AC.js +1 -0
  444. package/build/dist/chunks/{SKQGLGES.js → OKUO3BVM.js} +1 -1
  445. package/build/dist/chunks/OTXSKFUD.js +1 -0
  446. package/build/dist/chunks/{AAGDMH54.js → P3S4BR5G.js} +1 -1
  447. package/build/dist/chunks/P56RZC2M.js +1 -0
  448. package/build/dist/chunks/{EA6IYKIB.js → P5PYFK7L.js} +1 -1
  449. package/build/dist/chunks/{JST5JGAP.js → P7I62KFR.js} +1 -1
  450. package/build/dist/chunks/{5IIR3GIN.js → PK66GCDT.js} +1 -1
  451. package/build/dist/chunks/PSBQWDYI.js +1 -0
  452. package/build/dist/chunks/{WQ6H62DM.js → PV5FDT6O.js} +1 -1
  453. package/build/dist/chunks/{TQL7UDFL.js → PXT5YTWU.js} +1 -1
  454. package/build/dist/chunks/Q42YI3EP.js +1 -0
  455. package/build/dist/chunks/{SQ5BNSXR.js → QA3UHEO3.js} +1 -1
  456. package/build/dist/chunks/QC3HH5UD.js +3 -0
  457. package/build/dist/chunks/{TWCSCRFS.js → QF52OIBS.js} +1 -1
  458. package/build/dist/chunks/{LQUDJCAR.js → QO3KCJMP.js} +1 -1
  459. package/build/dist/chunks/QQECG3WP.js +1 -0
  460. package/build/dist/chunks/QSHCBASA.js +1 -0
  461. package/build/dist/chunks/QU5XKRGK.js +1 -0
  462. package/build/dist/chunks/{TPDOUL4N.js → QZZ4O34L.js} +1 -1
  463. package/build/dist/chunks/RQ4GHJXE.js +1 -0
  464. package/build/dist/chunks/{ALK6NKFP.js → RUC7KH7A.js} +1 -1
  465. package/build/dist/chunks/RUX3RY7Y.js +1 -0
  466. package/build/dist/chunks/{GIV5JMTE.js → RVDUSNWW.js} +1 -1
  467. package/build/dist/chunks/S47VUTHM.js +1 -0
  468. package/build/dist/chunks/{2LM7U4S7.js → S7IFAQPG.js} +1 -1
  469. package/build/dist/chunks/{XQUPZ3GU.js → SIYUNOLI.js} +1 -1
  470. package/build/dist/chunks/{7XLEYOZH.js → SJJR4ZBZ.js} +1 -1
  471. package/build/dist/chunks/SK2VBNAU.js +1 -0
  472. package/build/dist/chunks/SMYWWIE6.js +1 -0
  473. package/build/dist/chunks/SPJCSEKP.js +1 -0
  474. package/build/dist/chunks/{L3ZM77SJ.js → SSHCD6RZ.js} +1 -1
  475. package/build/dist/chunks/{3NDVXEBR.js → T2WHOZXM.js} +1 -1
  476. package/build/dist/chunks/T3AJSQYT.js +1 -0
  477. package/build/dist/chunks/TAEZTP4L.js +1 -0
  478. package/build/dist/chunks/TEJ7W534.js +1 -0
  479. package/build/dist/chunks/TFDPEAVZ.js +1 -0
  480. package/build/dist/chunks/TM2XCRU7.js +1 -0
  481. package/build/dist/chunks/{XQXLFF7Y.js → TMVO2DAK.js} +1 -1
  482. package/build/dist/chunks/{2UU5TBBB.js → TVWMTMEF.js} +1 -1
  483. package/build/dist/chunks/{AFHHRDPJ.js → TX2EOIRS.js} +1 -1
  484. package/build/dist/chunks/{QRDDKA4I.js → U4JGEMKT.js} +1 -1
  485. package/build/dist/chunks/{PARWLWXW.js → U5PMVP56.js} +1 -1
  486. package/build/dist/chunks/U67J4BCH.js +1 -0
  487. package/build/dist/chunks/{SSTROLQM.js → UHTRW2R6.js} +1 -1
  488. package/build/dist/chunks/{XUYHMOHS.js → UHVSINR5.js} +1 -1
  489. package/build/dist/chunks/{NRBIXV7V.js → UMIZMJWW.js} +1 -1
  490. package/build/dist/chunks/{VXLJRRKV.js → UNJJRQIU.js} +1 -1
  491. package/build/dist/chunks/V74F6IDY.js +1 -0
  492. package/build/dist/chunks/VEQBHI6O.js +1 -0
  493. package/build/dist/chunks/VHV6WQ5F.js +1 -0
  494. package/build/dist/chunks/{DRWWPBOQ.js → VJS4DHQQ.js} +1 -1
  495. package/build/dist/chunks/{R7FXNZRM.js → VOMGT5SG.js} +1 -1
  496. package/build/dist/chunks/{QXNPPCOU.js → VY7XRHZQ.js} +1 -1
  497. package/build/dist/chunks/{TCPPYBGQ.js → VYAJXLND.js} +1 -1
  498. package/build/dist/chunks/{WWFOYZT2.js → VYN2NRAP.js} +1 -1
  499. package/build/dist/chunks/{OVK4EEOD.js → VYYSL557.js} +1 -1
  500. package/build/dist/chunks/W2BYU5JQ.js +2 -0
  501. package/build/dist/chunks/W6BS3T7S.js +1 -0
  502. package/build/dist/chunks/WCNHZYQQ.js +1 -0
  503. package/build/dist/chunks/{BX7XQANB.js → WDK6VOG4.js} +1 -1
  504. package/build/dist/chunks/{QYYFRAWY.js → WIRBCS4W.js} +1 -1
  505. package/build/dist/chunks/{3WBDHUV2.js → WLMWWEP7.js} +1 -1
  506. package/build/dist/chunks/{TNSKEHPC.js → WP6RHXGN.js} +1 -1
  507. package/build/dist/chunks/WTXC3XKW.js +1 -0
  508. package/build/dist/chunks/{R7QPJQP6.js → WU7XIAXB.js} +1 -1
  509. package/build/dist/chunks/{OQVZVR2S.js → WV3A3OUU.js} +1 -1
  510. package/build/dist/chunks/{GCWA4Z3W.js → X2KFXCVD.js} +1 -1
  511. package/build/dist/chunks/X3BYCOWS.js +1 -0
  512. package/build/dist/chunks/{L7YBCMZU.js → X3PQMS4N.js} +1 -1
  513. package/build/dist/chunks/{WVXW6VL3.js → XBE3B6Y2.js} +1 -1
  514. package/build/dist/chunks/XLOYBLFI.js +1 -0
  515. package/build/dist/chunks/XR7VK24E.js +1 -0
  516. package/build/dist/chunks/XSD5NL7J.js +1 -0
  517. package/build/dist/chunks/{NU4K3TEZ.js → XSRIJUFU.js} +1 -1
  518. package/build/dist/chunks/{WQQJ7UPJ.js → Y25EXZCO.js} +1 -1
  519. package/build/dist/chunks/{2FSX7MMR.js → YCZPSMZ5.js} +1 -1
  520. package/build/dist/chunks/YDNTY67T.js +1 -0
  521. package/build/dist/chunks/YN56C7PN.js +1 -0
  522. package/build/dist/chunks/YWRDZQI6.js +1 -0
  523. package/build/dist/chunks/{SJPM5ST4.js → YXTSWRV5.js} +1 -1
  524. package/build/dist/chunks/Z43BTOTE.js +1 -0
  525. package/build/dist/chunks/{PWBL4WKB.js → Z4FZVJ5Z.js} +1 -1
  526. package/build/dist/chunks/ZMFRMWHR.js +1 -0
  527. package/build/dist/chunks/{KSZMMNXK.js → ZQAFFWDK.js} +1 -1
  528. package/build/dist/chunks/{LMVB3B6T.js → ZSN4IRI5.js} +1 -1
  529. package/build/dist/chunks/{CQCVFRQ5.js → ZV5HIQXC.js} +1 -1
  530. package/package.json +2 -2
  531. package/build/dist/chunks/2MSQ6JII.js +0 -1
  532. package/build/dist/chunks/3SC5UI35.js +0 -1
  533. package/build/dist/chunks/4GHVIBL5.js +0 -1
  534. package/build/dist/chunks/4X2JOQ2L.js +0 -1
  535. package/build/dist/chunks/5VHH5PW3.js +0 -1
  536. package/build/dist/chunks/5YS5V2LK.js +0 -1
  537. package/build/dist/chunks/6UPPUHCL.js +0 -1
  538. package/build/dist/chunks/7YU6DELJ.js +0 -1
  539. package/build/dist/chunks/AXYOJBX6.js +0 -1
  540. package/build/dist/chunks/CEIPDEXZ.js +0 -1
  541. package/build/dist/chunks/CUNQ5RG5.js +0 -1
  542. package/build/dist/chunks/EG6M6SSO.js +0 -1
  543. package/build/dist/chunks/EGUMOD3A.js +0 -1
  544. package/build/dist/chunks/EXRKBBX2.js +0 -1
  545. package/build/dist/chunks/G3MHDTGT.js +0 -1
  546. package/build/dist/chunks/G6HCV67X.js +0 -1
  547. package/build/dist/chunks/GJY3P6OG.js +0 -1
  548. package/build/dist/chunks/HIMVOTIU.js +0 -1
  549. package/build/dist/chunks/IBXYIN7Q.js +0 -1
  550. package/build/dist/chunks/IUE6RASI.js +0 -1
  551. package/build/dist/chunks/JPOYTTTW.js +0 -1
  552. package/build/dist/chunks/JWCOXLYA.js +0 -1
  553. package/build/dist/chunks/KHJFXJBU.js +0 -1
  554. package/build/dist/chunks/LLM5WDM3.js +0 -1
  555. package/build/dist/chunks/LQGPMOD2.js +0 -1
  556. package/build/dist/chunks/MYBDO5SA.js +0 -1
  557. package/build/dist/chunks/NAYRD43N.js +0 -1
  558. package/build/dist/chunks/NMYGNJIJ.js +0 -1
  559. package/build/dist/chunks/NSOEDRBU.js +0 -3
  560. package/build/dist/chunks/PZHR4ITH.js +0 -1
  561. package/build/dist/chunks/R7SXC74O.js +0 -1
  562. package/build/dist/chunks/RETS2ZEK.js +0 -1
  563. package/build/dist/chunks/SJPYXNOK.js +0 -1
  564. package/build/dist/chunks/SQZRVIVF.js +0 -1
  565. package/build/dist/chunks/SXAIXD56.js +0 -1
  566. package/build/dist/chunks/SXX3VTBP.js +0 -1
  567. package/build/dist/chunks/TMGWXDCZ.js +0 -1
  568. package/build/dist/chunks/TNLHMDWL.js +0 -1
  569. package/build/dist/chunks/UFS2RVEZ.js +0 -1
  570. package/build/dist/chunks/USSOVTD5.js +0 -1
  571. package/build/dist/chunks/UWOFA6GV.js +0 -1
  572. package/build/dist/chunks/V2OOOV6B.js +0 -1
  573. package/build/dist/chunks/XVFLT275.js +0 -1
  574. package/build/dist/chunks/YHB55C5T.js +0 -1
  575. package/build/dist/chunks/YOENHHKI.js +0 -1
  576. package/build/dist/chunks/Z7RL4NGX.js +0 -1
@@ -1,2 +1,2 @@
1
- import{g as c}from"./73N3TOJL.js";import{a,i as l}from"./G6HCV67X.js";import{a as f}from"./5YS5V2LK.js";import{formatUnits as b,getAddress as d,hashTypedData as w,parseAbi as I}from"viem";var p=d("0x8BE478c754D9124D11e78dB20F5bf4dA45403275"),h=d("0x0c5091235A25bBFD3F5a009cBe04120D0CBAD573"),x=6228n,_="https://priors.trade/prove",$="https://priors.trade/invite",m=1800,k=3600,S=/^[0-9a-f]{32}$/,A=/^priors-invite:(\d{1,10}):(\d{1,12}):(0x[0-9a-fA-F]{130})$/,g=I(["function amount() view returns (uint256)","function unusedAfter() view returns (uint64)","function bonds(uint256 agentId) view returns ((address depositor, uint64 at, uint256 amount, uint256 qualifiedAt))","function releasable(uint256 agentId) view returns (bool)","function unusedReleaseAt(uint256 agentId) view returns (uint256)","function progress(uint256 agentId) view returns (uint256 repaid, uint256 needed)","function deposit(uint256 agentId)","function release(uint256 agentId)","error AlreadyBonded(uint256 agentId)","error NotOwner(uint256 agentId)","error AgentDefaulted(uint256 agentId)","error NoBond(uint256 agentId)","error NotReleasable(uint256 agentId)"]);async function E(e,t){let r=e.clientFor(a),n=await r.getBlockNumber({cacheTime:0}),[i,o,s]=await Promise.all([r.readContract({address:p,abi:g,functionName:"amount",blockNumber:n}),r.readContract({address:p,abi:g,functionName:"unusedAfter",blockNumber:n}),r.readContract({address:p,abi:g,functionName:"unusedReleaseAt",args:[t],blockNumber:n})]);if(typeof i!="bigint"||i<0n||typeof o!="bigint"||o<0n||typeof s!="bigint"||s<0n)throw new f("Priors bond terms are unavailable. Read amount, unusedAfter and unusedReleaseAt again before posting a bond.");return{amount:i.toString(),unusedAfter:o.toString(),unusedReleaseAt:s.toString(),blockNumber:n.toString(),summary:`Bond first: the starter line requires ${b(i,6)} USDG locked for at least ${o} seconds (${Number(o)/86400} days) after posting${s?`; unusedReleaseAt(${t}) is ${s} Unix seconds`:"; the exact release time is read after posting"}. Release requires no line and no open loan; default can forfeit the bond. Invites are not guaranteed. The credit score can lag qualifying repayments.`}}var R="(uint256 agentId, uint256 sponsorId, address owner, uint256 maxPremiumBps, uint256 nonce, uint256 deadline)",B=I(["function agentId() view returns (uint256)","function firstLined(uint256 id) view returns (bool)","function inviteDigest(uint256 id, uint64 expiry) view returns (bytes32)","function inviters(address who) view returns (bool)","function inviteUsed(bytes32 digest) view returns (bool)","function epochRoom() view returns (uint256)","function rules() view returns (uint256 reserveBps, uint256 firstLine, uint256 secondLine, uint256 epochCap, uint64 epochLength, uint64 minSeasoning, uint256 minQualified, uint256 minScore, uint64 idleAfter)",`function firstLine(uint256 id, uint64 expiry, bytes invite, ${R} c, bytes consentSig)`,"error NotAdopted()","error AlreadyLined(uint256 agentId)","error OwnerDefaulted(address owner)","error EpochCapReached(uint256 wanted, uint256 left)","error NotInvited(uint256 agentId, address signer)","error InviteExpired(uint256 agentId, uint64 expiry)","error InviteUsed(uint256 agentId)","error BadConsent()","error ConsentExpired()","error PremiumTooHigh(uint256 bps, uint256 cap)","error InsufficientBacking(uint256 rootId, uint256 requested, uint256 free)","error AgentDefaulted(uint256 agentId)","error IsRoot(uint256 agentId)","error V1Busy(uint256 agentId)","error LoanOpen(uint256 agentId)","error InvalidAgent(uint256 id)","error Paused()","error ECDSAInvalidSignature()","error ECDSAInvalidSignatureLength(uint256 length)","error ECDSAInvalidSignatureS(bytes32 s)"]),v={Consent:[{name:"agentId",type:"uint256"},{name:"sponsorId",type:"uint256"},{name:"owner",type:"address"},{name:"maxPremiumBps",type:"uint256"},{name:"nonce",type:"uint256"},{name:"deadline",type:"uint256"}]};function D(){return{name:"Priors Credit",version:"2",chainId:a,verifyingContract:d(l[4663].priors.pool.address)}}function q(e){return{domain:{...D()},types:{Consent:v.Consent.map(t=>({...t}))},primaryType:"Consent",message:{agentId:e.agentId,sponsorId:x.toString(),owner:d(e.owner),maxPremiumBps:"0",nonce:e.nonce,deadline:e.deadline}}}function L(e){return w(e)}function U(e,t){return w({domain:{name:"Priors Treasury",version:"4",chainId:a,verifyingContract:h},types:{Invite:[{name:"agentId",type:"uint256"},{name:"expiry",type:"uint64"}]},primaryType:"Invite",message:{agentId:e,expiry:t}})}function O(e,t,r){return["priors.trade seat request","",`I own agent #${e} on Robinhood Chain and I am asking for a seat.`,"Asked from the priors.trade start page","","This signature only proves ownership. It sends no transaction and moves no funds.","",`request: ${t}`,`expires: ${new Date(r*1e3).toISOString().replace(".000","")}`].join(`
1
+ import{g as c}from"./NWNYJ26T.js";import{a,i as l}from"./FWD4L3CJ.js";import{a as f}from"./XSD5NL7J.js";import{formatUnits as b,getAddress as d,hashTypedData as w,parseAbi as I}from"viem";var p=d("0x8BE478c754D9124D11e78dB20F5bf4dA45403275"),h=d("0x0c5091235A25bBFD3F5a009cBe04120D0CBAD573"),x=6228n,_="https://priors.trade/prove",$="https://priors.trade/invite",m=1800,k=3600,S=/^[0-9a-f]{32}$/,A=/^priors-invite:(\d{1,10}):(\d{1,12}):(0x[0-9a-fA-F]{130})$/,g=I(["function amount() view returns (uint256)","function unusedAfter() view returns (uint64)","function bonds(uint256 agentId) view returns ((address depositor, uint64 at, uint256 amount, uint256 qualifiedAt))","function releasable(uint256 agentId) view returns (bool)","function unusedReleaseAt(uint256 agentId) view returns (uint256)","function progress(uint256 agentId) view returns (uint256 repaid, uint256 needed)","function deposit(uint256 agentId)","function release(uint256 agentId)","error AlreadyBonded(uint256 agentId)","error NotOwner(uint256 agentId)","error AgentDefaulted(uint256 agentId)","error NoBond(uint256 agentId)","error NotReleasable(uint256 agentId)"]);async function E(e,t){let r=e.clientFor(a),n=await r.getBlockNumber({cacheTime:0}),[i,o,s]=await Promise.all([r.readContract({address:p,abi:g,functionName:"amount",blockNumber:n}),r.readContract({address:p,abi:g,functionName:"unusedAfter",blockNumber:n}),r.readContract({address:p,abi:g,functionName:"unusedReleaseAt",args:[t],blockNumber:n})]);if(typeof i!="bigint"||i<0n||typeof o!="bigint"||o<0n||typeof s!="bigint"||s<0n)throw new f("Priors bond terms are unavailable. Read amount, unusedAfter and unusedReleaseAt again before posting a bond.");return{amount:i.toString(),unusedAfter:o.toString(),unusedReleaseAt:s.toString(),blockNumber:n.toString(),summary:`Bond first: the starter line requires ${b(i,6)} USDG locked for at least ${o} seconds (${Number(o)/86400} days) after posting${s?`; unusedReleaseAt(${t}) is ${s} Unix seconds`:"; the exact release time is read after posting"}. Release requires no line and no open loan; default can forfeit the bond. Invites are not guaranteed. The credit score can lag qualifying repayments.`}}var R="(uint256 agentId, uint256 sponsorId, address owner, uint256 maxPremiumBps, uint256 nonce, uint256 deadline)",B=I(["function agentId() view returns (uint256)","function firstLined(uint256 id) view returns (bool)","function inviteDigest(uint256 id, uint64 expiry) view returns (bytes32)","function inviters(address who) view returns (bool)","function inviteUsed(bytes32 digest) view returns (bool)","function epochRoom() view returns (uint256)","function rules() view returns (uint256 reserveBps, uint256 firstLine, uint256 secondLine, uint256 epochCap, uint64 epochLength, uint64 minSeasoning, uint256 minQualified, uint256 minScore, uint64 idleAfter)",`function firstLine(uint256 id, uint64 expiry, bytes invite, ${R} c, bytes consentSig)`,"error NotAdopted()","error AlreadyLined(uint256 agentId)","error OwnerDefaulted(address owner)","error EpochCapReached(uint256 wanted, uint256 left)","error NotInvited(uint256 agentId, address signer)","error InviteExpired(uint256 agentId, uint64 expiry)","error InviteUsed(uint256 agentId)","error BadConsent()","error ConsentExpired()","error PremiumTooHigh(uint256 bps, uint256 cap)","error InsufficientBacking(uint256 rootId, uint256 requested, uint256 free)","error AgentDefaulted(uint256 agentId)","error IsRoot(uint256 agentId)","error V1Busy(uint256 agentId)","error LoanOpen(uint256 agentId)","error InvalidAgent(uint256 id)","error Paused()","error ECDSAInvalidSignature()","error ECDSAInvalidSignatureLength(uint256 length)","error ECDSAInvalidSignatureS(bytes32 s)"]),v={Consent:[{name:"agentId",type:"uint256"},{name:"sponsorId",type:"uint256"},{name:"owner",type:"address"},{name:"maxPremiumBps",type:"uint256"},{name:"nonce",type:"uint256"},{name:"deadline",type:"uint256"}]};function D(){return{name:"Priors Credit",version:"2",chainId:a,verifyingContract:d(l[4663].priors.pool.address)}}function q(e){return{domain:{...D()},types:{Consent:v.Consent.map(t=>({...t}))},primaryType:"Consent",message:{agentId:e.agentId,sponsorId:x.toString(),owner:d(e.owner),maxPremiumBps:"0",nonce:e.nonce,deadline:e.deadline}}}function L(e){return w(e)}function U(e,t){return w({domain:{name:"Priors Treasury",version:"4",chainId:a,verifyingContract:h},types:{Invite:[{name:"agentId",type:"uint256"},{name:"expiry",type:"uint64"}]},primaryType:"Invite",message:{agentId:e,expiry:t}})}function O(e,t,r){return["priors.trade seat request","",`I own agent #${e} on Robinhood Chain and I am asking for a seat.`,"Asked from the priors.trade start page","","This signature only proves ownership. It sends no transaction and moves no funds.","",`request: ${t}`,`expires: ${new Date(r*1e3).toISOString().replace(".000","")}`].join(`
2
2
  `)}var u=e=>typeof e=="string"?JSON.stringify(e.length>80?`${e.slice(0,80)}...`:e):typeof e=="number"?String(e):e===null?"null":typeof e;function V(e,t){let r=o=>({ok:!1,why:o});if(!e||typeof e!="object"||Array.isArray(e))return r("its answer is not the bot's form");let n=e;if(n.ok!==!0)return{ok:!1,refused:!0,why:typeof n.error=="string"&&n.error?n.error:"it answered no, with no reason"};if(typeof n.agentId!="string"&&typeof n.agentId!="number"||String(n.agentId)!==t.agentId)return r(`it is for agent ${u(n.agentId)}, not agent #${t.agentId}`);if(typeof n.owner!="string"||!c(n.owner,t.owner))return r(`it names ${u(n.owner)} as the agent's owner, not this wallet (${t.owner})`);if(typeof n.n!="string"||!S.test(n.n))return r(`its request ${u(n.n)} is not the bot's form (32 hex digits)`);if(typeof n.exp!="number"||!Number.isSafeInteger(n.exp))return r(`its expiry ${u(n.exp)} is not a time`);if(n.exp<=t.now)return r(`its expiry (${new Date(n.exp*1e3).toISOString()}) has already passed`);if(n.exp>t.now+m+300)return r(`its expiry (${new Date(n.exp*1e3).toISOString()}) is further away than the bot's ${m/60} minutes`);let i=O(t.agentId,n.n,n.exp);if(typeof n.message!="string")return r("it carries no message");if(n.message!==i){let o=0;for(;o<i.length&&n.message[o]===i[o];)o++;return r(`its message is not the bot's own form for agent #${t.agentId}, request ${n.n} and that expiry: the two first differ at character ${o+1} of ${i.length}`)}return{ok:!0,n:n.n,exp:n.exp,message:i}}function H(e,t,r){let n=A.exec(typeof e=="string"?e:"");if(!n)return{ok:!1,why:"it is not an invite code (priors-invite:<id>:<expiry>:<signature>)"};if(n[1]!==t)return{ok:!1,why:`it is for agent #${n[1]}, not agent #${t}`};let i=Number(n[2]);return i<=r?{ok:!1,why:`it expired at ${new Date(i*1e3).toISOString()}`}:{ok:!0,expiry:BigInt(n[2]),signature:n[3]}}var y=e=>`${new Date(e*1e3).toISOString().slice(0,16).replace("T"," ")} UTC`;function F(e){let t=typeof e.reopensAt=="number"&&Number.isSafeInteger(e.reopensAt)&&e.reopensAt>0?e.reopensAt:null;switch(e.reason){case"default":return"A default on this wallet's record stops new lines for its agents, so a bond would bring no invite.";case"day":return"Today's automatic invites are taken. New ones open at 00:00 UTC: call priors_starter_line again after that.";case"room":return e.held===!0&&t?`This week's first lines are held by invites that haven't been used yet. One may be free after ${y(t)}: call priors_starter_line again then.`:`This week's first lines are taken.${t?` New ones open after ${y(t)}: call priors_starter_line again then.`:" Come back next week."}`;case"owner":return`This wallet already used its ${typeof e.perOwner=="number"&&Number.isSafeInteger(e.perOwner)&&e.perOwner>0?e.perOwner:2} automatic invites, so a bond would bring no invite.`;case"waiting":return"Another agent of this wallet has an invite waiting. Use it, or let it expire, before asking for this one.";case"backing":return"The treasury can't back a new line right now. Try again later.";default:return"Automatic invites aren't open right now, so a bond would bring no invite. Try again later."}}export{p as a,h as b,x as c,_ as d,$ as e,m as f,k as g,S as h,A as i,g as j,E as k,B as l,v as m,D as n,q as o,L as p,U as q,O as r,V as s,H as t,F as u};
@@ -1 +1 @@
1
- import{e as m,h as t}from"./73N3TOJL.js";import{b as E}from"./CXLEQCP3.js";import{i as C}from"./G6HCV67X.js";import{a as v,b as g}from"./5YS5V2LK.js";import{keccak256 as j,parseAbi as D}from"viem";var A=Object.freeze({robinswapV2:Object.freeze({factory:"0xa95DA9b9fCef09A07F99444fE9304457d6ECdccA",kind:"v2",kyberswap:"robinswap-v2",velora:void 0}),uniswapV2:Object.freeze({factory:"0x8BcEAA40b9aCDfAedf85ADf4fF01f5ad6517937F",kind:"v2",kyberswap:"uniswap",velora:"uniswapv2"}),uniswapV3:Object.freeze({factory:C[4663].uniswap.v3_factory.address,kind:"v3",kyberswap:"uniswapv3",velora:"uniswapv3"})}),L=Object.freeze(Object.fromEntries(Object.entries(A).map(([r,n])=>[r,n.factory])));function V(r){return Object.values(A).flatMap(n=>n[r]??[])}var P=D(["function token0() view returns (address)","function token1() view returns (address)","function factory() view returns (address)","function fee() view returns (uint24)"]),S=D(["function getPair(address,address) view returns (address)","function getPool(address,address,uint24) view returns (address)"]),a=new Map;function M(r,n,i){let d=a.get(j(i));return!!d&&d.expires>Date.now()&&t(d.token,r)&&d.pools.some(u=>t(u,n))}async function B(r,n,i,d,u,z){let w=[...new Set(d.filter(o=>!t(o,u)).map(o=>o.toLowerCase()))];if(!w.length)return;let k=j(z);a.delete(k);let f=await r.getBlockNumber();for(let o of w){let s=e=>new v(`KyberSwap source receiver ${o} is not a verified input pool: ${e}.`),l=Array.isArray(n)?n.map(e=>Array.isArray(e)?e[0]:void 0).find(e=>m(e)&&t(e.pool,o)&&t(e.tokenIn,i)):void 0;if(!m(l)||typeof l.tokenOut!="string")throw s("not named as an input hop in the accepted route");let O=await r.getCode({address:o,blockNumber:f});if(!O||O==="0x")throw s("no deployed code");try{let[e,p,y]=await Promise.all(["token0","token1","factory"].map(c=>r.readContract({address:o,abi:P,functionName:c,blockNumber:f}))),h=t(e,i)?p:t(p,i)?e:void 0;if(!h||!t(h,l.tokenOut))throw s("tokens do not match the input route");let x=Object.values(A).find(c=>t(y,c.factory));if(!x)throw s("factory is not pinned");let b;if(x.kind==="v2")b=await r.readContract({address:y,abi:S,functionName:"getPair",args:[e,p],blockNumber:f});else{let c=await r.readContract({address:o,abi:P,functionName:"fee",blockNumber:f});b=await r.readContract({address:y,abi:S,functionName:"getPool",args:[e,p,c],blockNumber:f})}if(!t(b,o))throw s("not registered by the pinned factory")}catch(e){throw e instanceof v||E(e)?e:g(e,3)?s("pool token or factory read reverted; this pool interface is not supported by Oak"):s("on-chain verification unavailable")}}for(let[o,s]of a)s.expires<=Date.now()&&a.delete(o);a.size>=1e3&&a.delete(a.keys().next().value),a.set(k,{token:i,pools:w,expires:Date.now()+6e4})}export{A as a,L as b,V as c,M as d,B as e};
1
+ import{e as m,h as t}from"./NWNYJ26T.js";import{b as E}from"./ABPL3ZZI.js";import{i as C}from"./FWD4L3CJ.js";import{a as v,b as g}from"./XSD5NL7J.js";import{keccak256 as j,parseAbi as D}from"viem";var A=Object.freeze({robinswapV2:Object.freeze({factory:"0xa95DA9b9fCef09A07F99444fE9304457d6ECdccA",kind:"v2",kyberswap:"robinswap-v2",velora:void 0}),uniswapV2:Object.freeze({factory:"0x8BcEAA40b9aCDfAedf85ADf4fF01f5ad6517937F",kind:"v2",kyberswap:"uniswap",velora:"uniswapv2"}),uniswapV3:Object.freeze({factory:C[4663].uniswap.v3_factory.address,kind:"v3",kyberswap:"uniswapv3",velora:"uniswapv3"})}),L=Object.freeze(Object.fromEntries(Object.entries(A).map(([r,n])=>[r,n.factory])));function V(r){return Object.values(A).flatMap(n=>n[r]??[])}var P=D(["function token0() view returns (address)","function token1() view returns (address)","function factory() view returns (address)","function fee() view returns (uint24)"]),S=D(["function getPair(address,address) view returns (address)","function getPool(address,address,uint24) view returns (address)"]),a=new Map;function M(r,n,i){let d=a.get(j(i));return!!d&&d.expires>Date.now()&&t(d.token,r)&&d.pools.some(u=>t(u,n))}async function B(r,n,i,d,u,z){let w=[...new Set(d.filter(o=>!t(o,u)).map(o=>o.toLowerCase()))];if(!w.length)return;let k=j(z);a.delete(k);let f=await r.getBlockNumber();for(let o of w){let s=e=>new v(`KyberSwap source receiver ${o} is not a verified input pool: ${e}.`),l=Array.isArray(n)?n.map(e=>Array.isArray(e)?e[0]:void 0).find(e=>m(e)&&t(e.pool,o)&&t(e.tokenIn,i)):void 0;if(!m(l)||typeof l.tokenOut!="string")throw s("not named as an input hop in the accepted route");let O=await r.getCode({address:o,blockNumber:f});if(!O||O==="0x")throw s("no deployed code");try{let[e,p,y]=await Promise.all(["token0","token1","factory"].map(c=>r.readContract({address:o,abi:P,functionName:c,blockNumber:f}))),h=t(e,i)?p:t(p,i)?e:void 0;if(!h||!t(h,l.tokenOut))throw s("tokens do not match the input route");let x=Object.values(A).find(c=>t(y,c.factory));if(!x)throw s("factory is not pinned");let b;if(x.kind==="v2")b=await r.readContract({address:y,abi:S,functionName:"getPair",args:[e,p],blockNumber:f});else{let c=await r.readContract({address:o,abi:P,functionName:"fee",blockNumber:f});b=await r.readContract({address:y,abi:S,functionName:"getPool",args:[e,p,c],blockNumber:f})}if(!t(b,o))throw s("not registered by the pinned factory")}catch(e){throw e instanceof v||E(e)?e:g(e,3)?s("pool token or factory read reverted; this pool interface is not supported by Oak"):s("on-chain verification unavailable")}}for(let[o,s]of a)s.expires<=Date.now()&&a.delete(o);a.size>=1e3&&a.delete(a.keys().next().value),a.set(k,{token:i,pools:w,expires:Date.now()+6e4})}export{A as a,L as b,V as c,M as d,B as e};
@@ -0,0 +1 @@
1
+ import{a as P}from"./DFM4T6ZE.js";import{a as n}from"./DJN3JAWB.js";import{g as $}from"./NWNYJ26T.js";import{a as s,d as v}from"./FWD4L3CJ.js";import{getAddress as T,parseAbi as b}from"viem";var m={address:n.priors,symbol:"PRIORS",decimals:18,chainId:s},w=8,E="0x0000000000000000000000000000000000000000",x=b(["function balanceOf(address) view returns (uint256)"]),_=b(["function balanceOf(address) view returns (uint256)","function previewRedeem(uint256) view returns (uint256)"]),y=b(["function getPosition(uint256) view returns ((address depositor,address owner,address token,uint64 openedAt,bool closing,uint8 status,uint128 line,uint256 amount))","function assets(address) view returns (address feed,uint64 maxAge,uint8 tokenDecimals,uint8 feedDecimals,bool enabled,uint16 ltvBps,uint128 lineCap)"]),A=b(["function latestGen(uint256) view returns (uint32)","function position(uint256,uint32,uint8,address) view returns ((uint256 counted,uint256 checkpoint,uint256 a0,uint256 a1,uint32 d0,uint32 d1,bool autoAdd))"]);async function L(k,d,C,R){let e=k.clientFor(s),g=async(t,i,o,r)=>{try{return await r()}catch(a){return[{module:"priors",id:`priors:unreadable:${t}`,chainId:s,assets:[],incomplete:!0,description:`Priors ${i} read failed (${k.plainError(a)}). It is not zero: ${o}`}]}},l=(t,i)=>k.formatAmount(t.toString(),i),S=()=>g("savings","savings","check it with priors_savings_balance.",async()=>{let t=await e.readContract({address:n.savings,abi:_,functionName:"balanceOf",args:[d]});if(t===0n)return[];let i=await e.readContract({address:n.savings,abi:_,functionName:"previewRedeem",args:[t]});return[{module:"priors",id:`priors:savings:${d.toLowerCase()}`,chainId:s,assets:[{token:R,amount:i.toString()}],description:`Priors savings in the Morpho vault (${n.savings}): ${t} shares, ${l(i,v)} USDG redeemable now. Exit with priors_savings_withdraw or priors_savings_redeem; vault liquidity applies and no immediate exit is promised.`}]}),O=()=>g("priors-token","PRIORS token","check it with balances.",async()=>{let t=await e.readContract({address:n.priors,abi:x,functionName:"balanceOf",args:[d]});return t===0n?[]:[{module:"priors",id:`priors:token:${d.toLowerCase()}`,chainId:s,assets:[{token:m,amount:t.toString()}],description:`${l(t,m.decimals)} PRIORS held by this wallet (${n.priors}). Stock-collateral and backing stake are listed separately.`}]}),N=t=>g(`stock:${t}`,`stock (agent ${t})`,`check it with priors_stock_state {"agentId":"${t}"}.`,async()=>{let i=await e.readContract({address:n.stock,abi:y,functionName:"getPosition",args:[t]});if(i.amount===0n||i.token===E||!$(i.depositor,d))return[];let o=T(i.token),r=(await e.readContract({address:n.stock,abi:y,functionName:"assets",args:[o]}))[2],a=P.tokens.find(p=>$(p.token,o))?.symbol??"STOCK";return[{module:"priors",id:`priors:stock:${t}`,chainId:s,assets:[{token:{address:o,symbol:a,decimals:r,chainId:s},amount:i.amount.toString()}],description:`Priors stock collateral for agent ${t}: ${l(i.amount,r)} ${a} locked in the stock vault (${n.stock})${i.closing?"; the line is closing":""}. Close the line with priors_stock_close to return it, subject to any default or issuer shortfall.`}]}),I=t=>g(`backing:${t}`,`backing (agent ${t})`,`check it with priors_backing_position {"agentId":"${t}"}.`,async()=>{let i=BigInt(await e.readContract({address:n.backing,abi:A,functionName:"latestGen",args:[t]})),o=i>=BigInt(w)?i-BigInt(w-1):0n,r=[];for(let c=o;c<=i;c++)for(let u of[0,1,2])r.push(e.readContract({address:n.backing,abi:A,functionName:"position",args:[t,Number(c),u,d]}));let a=await Promise.all(r),p=a.reduce((c,u)=>c+u.counted,0n),f=a.reduce((c,u)=>c+u.a0+u.a1,0n),h=[];return o>0n&&h.push({module:"priors",id:`priors:unreadable:backing-generations:${t}`,chainId:s,assets:[],incomplete:!0,description:`Agent ${t} has ${i} backing generations; only the latest ${w} were read. Check older ones with priors_backing_position.`}),p+f>0n&&h.push({module:"priors",id:`priors:backing:${t}`,chainId:s,assets:[{token:m,amount:(p+f).toString()}],description:`Priors backing stake for agent ${t}: ${l(p,m.decimals)} PRIORS counted and ${l(f,m.decimals)} PRIORS pending. It is collateral that a default burns, not a return. Stake already leaving or settled is not included; check priors_backing_record and priors_backing_claimable.`}),h});return(await Promise.all([S(),O(),...C.flatMap(t=>[N(t),I(t)])])).flat()}export{m as a,L as b};
@@ -1 +1 @@
1
- import{a as q}from"./RETS2ZEK.js";import{c as h}from"./G6HCV67X.js";import{a as o}from"./5YS5V2LK.js";var Y="12333333",I=1800,N=9000n,O=9607n,C=150n,U=(1n<<256n)-1n,f=10000n,g=10n**18n,X=10n**30n,R=1n<<192n,D=20n*g,E=75n*g,_=100n*g,x=300n*g,P=100000n*g,S=500000n*g,w=1000000n*g,B=10000000n*g;function c(n){let t=typeof n=="bigint"?n:q(n);if(t<0n||t>U)throw new o("Amount must be within the uint256 range.");return t}function p(n){if(typeof n=="bigint")return n;if(typeof n=="number"){if(!Number.isSafeInteger(n))throw new o("Integer parameter must be a safe integer.");return BigInt(n)}if(typeof n!="string"||!/^-?\d+$/.test(n))throw new o("Value must be a signed integer decimal string.");return BigInt(n)}function A(n,t=77){let i=typeof n=="number"?n:typeof n=="string"&&/^\d+$/.test(n)?Number(n):NaN;if(!Number.isInteger(i)||i<0||i>t)throw new o(`Token decimals must be an integer from 0 to ${t}.`);return i}function k(n){return 10n**BigInt(n)}function T(n,t="Result"){if(n<0n||n>U)throw new o(`${t} exceeds uint256 bounds.`);return n}function b(n,t,i="Factor"){return T(n*t,i)}function a(n,t,i,s="floor"){if(i<=0n)throw new o("The denominator must be positive.");let e=n*t;if(e===0n)return 0n;let r=s==="ceil"?e/i+(e%i===0n?0n:1n):e/i;return T(r,"Math.mulDiv result")}function $(n){let t=c(n);return t<P?D.toString():t<S?(D+a(t-P,E-D,S-P)).toString():t<w?(E+a(t-S,_-E,w-S)).toString():t<B?(_+a(t-w,x-_,B-w)).toString():x.toString()}function Q(n){let t=c(n);return T(9000000n+t/1000000000000n/6n,"noHoldPriceBase").toString()}function j(n){let t=c(n);return a(t,5n,100n,"ceil").toString()}function z(n,t){let i=c(n),s=c(t);if(s<=0n)throw new o("OAK-per-ETH price must be positive.");return a(i,g,s,"floor").toString()}function G(n,t,i=h){let s=c(n),e=c(t);if(e<=0n)throw new o("OAK USD price must be positive.");let r=k(A(i));return a(s,r,e,"ceil").toString()}function J(n,t,i=h){let s=c(n),e=c(t),r=k(A(i));return a(s,e,r,"floor").toString()}function Z(n,t){let i=c(n),s=c(t);if(i>f||s>f)throw new o("FeePolicyOutOfBounds: hook fee or creator tax exceeds 10000 bps.");let e=i+s+C;if(e>f-N)throw new o("FeePolicyOutOfBounds: fees and impact allowance exceed 1000 bps.");let r=f-e;return(r>O?O:r).toString()}function nn(n,t,i,s,e){let r=A(s,83);if(r<6)throw new o("OAK decimals must be at least 6 for burner conversion.");let u=c(e);if(u<N||u>O)throw new o("InvalidBurnerFloor: floor must be from 9000 to 9607 bps.");let m=c(n),d=c(t),l=c(i);if(l<=0n)throw new o("ETH USD price must be positive.");let v=k(r-6),y=b(m,v,"burnerMinOut usdgIn * decimalScale"),W=b(d,u,"burnerMinOut oakPerEthE18 * floorBps"),M=b(l,f,"burnerMinOut ethUsdE18 * 10000");return a(y,W,M,"floor").toString()}function tn(n,t,i=I){let s=p(n),e=p(t),r=p(i);if(r<=0n)throw new o("Observation window seconds must be positive.");let u=e-s,d=u/r-(u<0n&&u%r!==0n?1n:0n);return Number(d)}function en(n){let t=c(n);if(t<=0n)throw new o("sqrtRatioX96 must be positive.");let i=b(t,t,"sqrtRatioX96 squared");return a(i,X,R,"floor").toString()}function F(n){let t=c(n);if(t<=0n)throw new o("sqrtPriceX96 must be positive.");let i=b(t,t,"sqrtPriceX96 squared");return a(i,g,R,"floor").toString()}function L(n){let t="ethAmountWei"in n&&n.ethAmountWei!==void 0?n.ethAmountWei:"ethVolumeWei"in n?n.ethVolumeWei:void 0;if(t===void 0)throw new o("SwapTrade must provide ethAmountWei.");let i=p(t),s=i<0n?-i:i;if(s<=0n)throw new o("SwapTrade ETH volume must be positive.");let e;n.sqrtPriceX96!==void 0&&n.sqrtPriceX96!==""&&n.sqrtPriceX96!=="0"&&(e=BigInt(F(n.sqrtPriceX96)));let r;if(n.oakPerEthE18!==void 0&&n.oakPerEthE18!==""&&(r=c(n.oakPerEthE18)),e!==void 0&&r!==void 0&&e!==r)throw new o("SwapTrade oakPerEthE18 does not match post-swap sqrtPriceX96.");let u=e??r;if(u===void 0||u<=0n)throw new o("SwapTrade must provide a positive post-swap price.");let m=n.timestamp!==void 0&&n.timestamp!==""?c(n.timestamp):void 0;return{volumeWei:s,oakPerEth:u,timestamp:m}}function rn(n,t){if(!Array.isArray(n)||n.length===0)throw new o("At least one SwapTrade is required to compute the 30-minute average.");let i=t?.windowEnd!==void 0?c(BigInt(t.windowEnd)):t?.now!==void 0?c(BigInt(t.now)):void 0,s=t?.windowStart!==void 0?c(BigInt(t.windowStart)):i!==void 0?i-BigInt(I):void 0,e=0n,r=0n;for(let u of n){let{volumeWei:m,oakPerEth:d,timestamp:l}=L(u);s!==void 0&&i!==void 0&&l!==void 0&&(l<s||l>=i)||(e+=m*d,r+=m)}if(r<=0n)throw new o("No trades with positive ETH volume fell inside the 30-minute window.");return(e/r).toString()}export{Y as a,I as b,N as c,O as d,C as e,$ as f,Q as g,j as h,z as i,G as j,J as k,Z as l,nn as m,tn as n,en as o,F as p,rn as q};
1
+ import{b as q}from"./IX3GZMTM.js";import{c as h}from"./FWD4L3CJ.js";import{a as o}from"./XSD5NL7J.js";var Y="12333333",I=1800,N=9000n,O=9607n,C=150n,U=(1n<<256n)-1n,f=10000n,g=10n**18n,X=10n**30n,R=1n<<192n,D=20n*g,E=75n*g,_=100n*g,x=300n*g,P=100000n*g,S=500000n*g,w=1000000n*g,B=10000000n*g;function c(n){let t=typeof n=="bigint"?n:q(n);if(t<0n||t>U)throw new o("Amount must be within the uint256 range.");return t}function p(n){if(typeof n=="bigint")return n;if(typeof n=="number"){if(!Number.isSafeInteger(n))throw new o("Integer parameter must be a safe integer.");return BigInt(n)}if(typeof n!="string"||!/^-?\d+$/.test(n))throw new o("Value must be a signed integer decimal string.");return BigInt(n)}function A(n,t=77){let i=typeof n=="number"?n:typeof n=="string"&&/^\d+$/.test(n)?Number(n):NaN;if(!Number.isInteger(i)||i<0||i>t)throw new o(`Token decimals must be an integer from 0 to ${t}.`);return i}function k(n){return 10n**BigInt(n)}function T(n,t="Result"){if(n<0n||n>U)throw new o(`${t} exceeds uint256 bounds.`);return n}function b(n,t,i="Factor"){return T(n*t,i)}function a(n,t,i,s="floor"){if(i<=0n)throw new o("The denominator must be positive.");let e=n*t;if(e===0n)return 0n;let r=s==="ceil"?e/i+(e%i===0n?0n:1n):e/i;return T(r,"Math.mulDiv result")}function $(n){let t=c(n);return t<P?D.toString():t<S?(D+a(t-P,E-D,S-P)).toString():t<w?(E+a(t-S,_-E,w-S)).toString():t<B?(_+a(t-w,x-_,B-w)).toString():x.toString()}function Q(n){let t=c(n);return T(9000000n+t/1000000000000n/6n,"noHoldPriceBase").toString()}function j(n){let t=c(n);return a(t,5n,100n,"ceil").toString()}function z(n,t){let i=c(n),s=c(t);if(s<=0n)throw new o("OAK-per-ETH price must be positive.");return a(i,g,s,"floor").toString()}function G(n,t,i=h){let s=c(n),e=c(t);if(e<=0n)throw new o("OAK USD price must be positive.");let r=k(A(i));return a(s,r,e,"ceil").toString()}function J(n,t,i=h){let s=c(n),e=c(t),r=k(A(i));return a(s,e,r,"floor").toString()}function Z(n,t){let i=c(n),s=c(t);if(i>f||s>f)throw new o("FeePolicyOutOfBounds: hook fee or creator tax exceeds 10000 bps.");let e=i+s+C;if(e>f-N)throw new o("FeePolicyOutOfBounds: fees and impact allowance exceed 1000 bps.");let r=f-e;return(r>O?O:r).toString()}function nn(n,t,i,s,e){let r=A(s,83);if(r<6)throw new o("OAK decimals must be at least 6 for burner conversion.");let u=c(e);if(u<N||u>O)throw new o("InvalidBurnerFloor: floor must be from 9000 to 9607 bps.");let m=c(n),d=c(t),l=c(i);if(l<=0n)throw new o("ETH USD price must be positive.");let v=k(r-6),y=b(m,v,"burnerMinOut usdgIn * decimalScale"),W=b(d,u,"burnerMinOut oakPerEthE18 * floorBps"),M=b(l,f,"burnerMinOut ethUsdE18 * 10000");return a(y,W,M,"floor").toString()}function tn(n,t,i=I){let s=p(n),e=p(t),r=p(i);if(r<=0n)throw new o("Observation window seconds must be positive.");let u=e-s,d=u/r-(u<0n&&u%r!==0n?1n:0n);return Number(d)}function en(n){let t=c(n);if(t<=0n)throw new o("sqrtRatioX96 must be positive.");let i=b(t,t,"sqrtRatioX96 squared");return a(i,X,R,"floor").toString()}function F(n){let t=c(n);if(t<=0n)throw new o("sqrtPriceX96 must be positive.");let i=b(t,t,"sqrtPriceX96 squared");return a(i,g,R,"floor").toString()}function L(n){let t="ethAmountWei"in n&&n.ethAmountWei!==void 0?n.ethAmountWei:"ethVolumeWei"in n?n.ethVolumeWei:void 0;if(t===void 0)throw new o("SwapTrade must provide ethAmountWei.");let i=p(t),s=i<0n?-i:i;if(s<=0n)throw new o("SwapTrade ETH volume must be positive.");let e;n.sqrtPriceX96!==void 0&&n.sqrtPriceX96!==""&&n.sqrtPriceX96!=="0"&&(e=BigInt(F(n.sqrtPriceX96)));let r;if(n.oakPerEthE18!==void 0&&n.oakPerEthE18!==""&&(r=c(n.oakPerEthE18)),e!==void 0&&r!==void 0&&e!==r)throw new o("SwapTrade oakPerEthE18 does not match post-swap sqrtPriceX96.");let u=e??r;if(u===void 0||u<=0n)throw new o("SwapTrade must provide a positive post-swap price.");let m=n.timestamp!==void 0&&n.timestamp!==""?c(n.timestamp):void 0;return{volumeWei:s,oakPerEth:u,timestamp:m}}function rn(n,t){if(!Array.isArray(n)||n.length===0)throw new o("At least one SwapTrade is required to compute the 30-minute average.");let i=t?.windowEnd!==void 0?c(BigInt(t.windowEnd)):t?.now!==void 0?c(BigInt(t.now)):void 0,s=t?.windowStart!==void 0?c(BigInt(t.windowStart)):i!==void 0?i-BigInt(I):void 0,e=0n,r=0n;for(let u of n){let{volumeWei:m,oakPerEth:d,timestamp:l}=L(u);s!==void 0&&i!==void 0&&l!==void 0&&(l<s||l>=i)||(e+=m*d,r+=m)}if(r<=0n)throw new o("No trades with positive ETH volume fell inside the 30-minute window.");return(e/r).toString()}export{Y as a,I as b,N as c,O as d,C as e,$ as f,Q as g,j as h,z as i,G as j,J as k,Z as l,nn as m,tn as n,en as o,F as p,rn as q};
@@ -1 +1 @@
1
- import{a as d,b as f}from"./XQUPZ3GU.js";import{a}from"./P4UQGWCP.js";import{g as s}from"./73N3TOJL.js";import{a as n}from"./5YS5V2LK.js";import{getAddress as m,keccak256 as u}from"viem";var l=a.vaults;function c(t,o=!0){let e=l.find(r=>s(r.earnContractAddress,t));if(!e&&o)throw new n("This Beefy vault is not in the pinned chain 4663 standard-vault inventory.");return e}async function v(t,o,e){c(o);let[r,i]=await Promise.all([t.getCode({address:m(o),blockNumber:e}),t.getCode({address:d,blockNumber:e})]),p=`0x363d3d373d3d3d363d73${d.slice(2).toLowerCase()}5af43d82803e903d91602b57fd5bf3`;if(r?.toLowerCase()!==p||!i||u(i)!==f)throw new n("The Beefy standard vault or implementation no longer matches its verified code.")}export{l as a,c as b,v as c};
1
+ import{a as d,b as f}from"./SIYUNOLI.js";import{a}from"./P4UQGWCP.js";import{g as s}from"./NWNYJ26T.js";import{a as n}from"./XSD5NL7J.js";import{getAddress as m,keccak256 as u}from"viem";var l=a.vaults;function c(t,o=!0){let e=l.find(r=>s(r.earnContractAddress,t));if(!e&&o)throw new n("This Beefy vault is not in the pinned chain 4663 standard-vault inventory.");return e}async function v(t,o,e){c(o);let[r,i]=await Promise.all([t.getCode({address:m(o),blockNumber:e}),t.getCode({address:d,blockNumber:e})]),p=`0x363d3d373d3d3d363d73${d.slice(2).toLowerCase()}5af43d82803e903d91602b57fd5bf3`;if(r?.toLowerCase()!==p||!i||u(i)!==f)throw new n("The Beefy standard vault or implementation no longer matches its verified code.")}export{l as a,c as b,v as c};
@@ -1 +1 @@
1
- import{d as R}from"./TPDOUL4N.js";import{a as L,f as N,g as b}from"./3NDVXEBR.js";import{H,J as j,K as O,b as p,d as l,y as D}from"./YOENHHKI.js";import{g as d}from"./73N3TOJL.js";import{a as y}from"./G6HCV67X.js";import{a as e}from"./5YS5V2LK.js";import{decodeAbiParameters as J,decodeFunctionData as A,encodeAbiParameters as K,encodeFunctionData as Q,erc20Abi as W,getAddress as Y,parseAbi as Z,parseAbiParameters as ee}from"viem";var U=Z(["function modifyLiquidities(bytes unlockData,uint256 deadline) payable"]),V=ee("bytes actions,bytes[] params");function de(f,$){return{tools:[{name:"uniswap_batch",inputSchema:{type:"object",additionalProperties:!1,required:["operations"],properties:{operations:{type:"array",minItems:1,maxItems:20,items:{type:"object",additionalProperties:!1,required:["name","arguments"],properties:{name:{type:"string",enum:["uniswap_add","uniswap_collect","uniswap_remove"]},arguments:{anyOf:[H,j,O]}}}}}},async execute(a,v){if(b(a,["operations"]),!Array.isArray(a.operations)||a.operations.length<1||a.operations.length>20)throw new e("Provide 1 to 20 v4 liquidity operations.");let s="0x",c,h=[],P=0n,g=new Map,_=new Set,E=new Set;for(let t of a.operations){if(!t||typeof t!="object"||Array.isArray(t))throw new e("Each operation needs name and arguments.");let o=t;if(b(o,["name","arguments"]),!["uniswap_add","uniswap_collect","uniswap_remove"].includes(String(o.name))||!o.arguments||typeof o.arguments!="object"||Array.isArray(o.arguments))throw new e("Batch supports v4 add, collect and remove operations only.");let r=o.arguments;if(r.version!=="v4")throw new e("Every batch operation must explicitly select version v4.");if(r.initialPrice!==void 0||r.sqrtPriceX96!==void 0)throw new e("Create a pool before batching its liquidity operations.");if(r.tokenId!==void 0){let n=L(r.tokenId,"tokenId").toString();if(E.has(n))throw new e("Batch tokenIds must be distinct decimal strings.");E.add(n)}else if(o.name!=="uniswap_add")throw new e("Existing-position operations require tokenId.");let I=await $.tools.find(n=>n.name===o.name).execute(r,v),u=I.txs.at(-1);if(!u||!d(u.to,p))throw new e("Batch operation returned an unexpected destination.");P+=BigInt(u.value);for(let n of I.txs.slice(0,-1)){if(BigInt(n.value)!==0n)throw new e("Batch prerequisite cannot send native currency.");if(d(n.to,l)){let i=A({abi:R,data:n.data}),[B,G,X,z]=i.args;if(!d(G,p))throw new e("Batch Permit2 spender must be PositionManager.");let T=B.toLowerCase(),m=g.get(T),q=BigInt(z),C=(m?.amount??0n)+X;if(C>=1n<<160n)throw new e("Batch approval exceeds uint160.");g.set(T,{token:B,amount:C,expiration:m&&m.expiration<q?m.expiration:q})}else{let i=A({abi:W,data:n.data});if(i.functionName!=="approve"||!d(i.args[0],l))throw new e("Unexpected batch prerequisite.")}}let S=A({abi:U,data:u.data}),[F,x]=J(V,S.args[0]),k=F.slice(2).match(/../g)??[];if(k.length!==x.length)throw new e("Batch action/parameter count differs.");k.forEach((n,i)=>{n==="14"?_.add(x[i]):(s=`${s}${n}`,h.push(x[i]))});let M=S.args[1];c=c===void 0||M<c?M:c}for(let t of _)s=`${s}14`,h.push(t);let w=[];for(let t of g.values())w.push(f.approval(Y(t.token),l,t.amount.toString(),y),D(t.token,p,t.amount.toString(),t.expiration.toString()));return w.push(f.unsignedTx({to:p,data:Q({abi:U,functionName:"modifyLiquidities",args:[K(V,[s,h]),c]}),value:P.toString(),chainId:y,description:`Atomically modify ${a.operations.length} v4 positions; recipients are the signing wallet.`})),N(f,w,v,"Atomic v4 batch: every operation must succeed. Each position retains its own minimums; preview covers the complete action stream.")}}]}}export{U as a,V as b,de as c};
1
+ import{d as R}from"./QZZ4O34L.js";import{a as L,f as N,g as b}from"./T2WHOZXM.js";import{H,J as j,K as O,b as p,d as l,y as D}from"./GEIFITAQ.js";import{g as d}from"./NWNYJ26T.js";import{a as y}from"./FWD4L3CJ.js";import{a as e}from"./XSD5NL7J.js";import{decodeAbiParameters as J,decodeFunctionData as A,encodeAbiParameters as K,encodeFunctionData as Q,erc20Abi as W,getAddress as Y,parseAbi as Z,parseAbiParameters as ee}from"viem";var U=Z(["function modifyLiquidities(bytes unlockData,uint256 deadline) payable"]),V=ee("bytes actions,bytes[] params");function de(f,$){return{tools:[{name:"uniswap_batch",inputSchema:{type:"object",additionalProperties:!1,required:["operations"],properties:{operations:{type:"array",minItems:1,maxItems:20,items:{type:"object",additionalProperties:!1,required:["name","arguments"],properties:{name:{type:"string",enum:["uniswap_add","uniswap_collect","uniswap_remove"]},arguments:{anyOf:[H,j,O]}}}}}},async execute(a,v){if(b(a,["operations"]),!Array.isArray(a.operations)||a.operations.length<1||a.operations.length>20)throw new e("Provide 1 to 20 v4 liquidity operations.");let s="0x",c,h=[],P=0n,g=new Map,_=new Set,E=new Set;for(let t of a.operations){if(!t||typeof t!="object"||Array.isArray(t))throw new e("Each operation needs name and arguments.");let o=t;if(b(o,["name","arguments"]),!["uniswap_add","uniswap_collect","uniswap_remove"].includes(String(o.name))||!o.arguments||typeof o.arguments!="object"||Array.isArray(o.arguments))throw new e("Batch supports v4 add, collect and remove operations only.");let r=o.arguments;if(r.version!=="v4")throw new e("Every batch operation must explicitly select version v4.");if(r.initialPrice!==void 0||r.sqrtPriceX96!==void 0)throw new e("Create a pool before batching its liquidity operations.");if(r.tokenId!==void 0){let n=L(r.tokenId,"tokenId").toString();if(E.has(n))throw new e("Batch tokenIds must be distinct decimal strings.");E.add(n)}else if(o.name!=="uniswap_add")throw new e("Existing-position operations require tokenId.");let I=await $.tools.find(n=>n.name===o.name).execute(r,v),u=I.txs.at(-1);if(!u||!d(u.to,p))throw new e("Batch operation returned an unexpected destination.");P+=BigInt(u.value);for(let n of I.txs.slice(0,-1)){if(BigInt(n.value)!==0n)throw new e("Batch prerequisite cannot send native currency.");if(d(n.to,l)){let i=A({abi:R,data:n.data}),[B,G,X,z]=i.args;if(!d(G,p))throw new e("Batch Permit2 spender must be PositionManager.");let T=B.toLowerCase(),m=g.get(T),q=BigInt(z),C=(m?.amount??0n)+X;if(C>=1n<<160n)throw new e("Batch approval exceeds uint160.");g.set(T,{token:B,amount:C,expiration:m&&m.expiration<q?m.expiration:q})}else{let i=A({abi:W,data:n.data});if(i.functionName!=="approve"||!d(i.args[0],l))throw new e("Unexpected batch prerequisite.")}}let S=A({abi:U,data:u.data}),[F,x]=J(V,S.args[0]),k=F.slice(2).match(/../g)??[];if(k.length!==x.length)throw new e("Batch action/parameter count differs.");k.forEach((n,i)=>{n==="14"?_.add(x[i]):(s=`${s}${n}`,h.push(x[i]))});let M=S.args[1];c=c===void 0||M<c?M:c}for(let t of _)s=`${s}14`,h.push(t);let w=[];for(let t of g.values())w.push(f.approval(Y(t.token),l,t.amount.toString(),y),D(t.token,p,t.amount.toString(),t.expiration.toString()));return w.push(f.unsignedTx({to:p,data:Q({abi:U,functionName:"modifyLiquidities",args:[K(V,[s,h]),c]}),value:P.toString(),chainId:y,description:`Atomically modify ${a.operations.length} v4 positions; recipients are the signing wallet.`})),N(f,w,v,"Atomic v4 batch: every operation must succeed. Each position retains its own minimums; preview covers the complete action stream.")}}]}}export{U as a,V as b,de as c};
@@ -0,0 +1 @@
1
+ import{b as k,c as P,d as R}from"./P56RZC2M.js";import{a as Z}from"./3MLUCYCB.js";import{a as H}from"./43LI5NKJ.js";import{g as G,i as Q}from"./NWNYJ26T.js";import{b as W,c as V}from"./IX3GZMTM.js";import{a as c,d as X,i as O}from"./FWD4L3CJ.js";import{a as u}from"./XSD5NL7J.js";import{a as T}from"./JXOEJPJ4.js";import{encodeFunctionData as nt,erc20Abi as J,getAddress as a,parseAbi as gt}from"viem";var At="hookr",y=a(O[4663].hookr.HookrLimitOrders.address),wt=a(O[4663].hookr.HookrRoot.address),Ot=a(O[4663].hookr.HookrRouter.address),Bt=a(O[4663].hookr.HookrForwarder.address),ht=a(O[4663].hookr.PoolManager.address),It=a(O[4663].hookr.HOOKR_Token.address),N="0x0000000000000000000000000000000000000000",St="0x000000000000000000000000000000000000dEaD",Y=(1n<<128n)-1n,Tt=new Set([N.toLowerCase(),St.toLowerCase(),y.toLowerCase(),Ot.toLowerCase(),Bt.toLowerCase(),ht.toLowerCase(),wt.toLowerCase()]),B=gt(["function getOrder(uint256 orderId) view returns (((address currency0, address currency1, uint24 fee, int24 tickSpacing, address hooks) key, address owner, uint40 createdAt, uint40 expiry, bool zeroForOne, uint8 status, address recipient, uint128 amountIn, uint128 minAmountOut, uint128 bounty, uint160 sqrtPriceLimitX96))","function quoteFill(uint256 orderId) view returns (bool fillable, uint256 amountOut)","function bountyBounds((address currency0, address currency1, uint24 fee, int24 tickSpacing, address hooks) key, bool zeroForOne, uint128 amountIn, uint128 minAmountOut) view returns (uint128 minBounty, uint128 defaultBounty, uint128 maxBounty)","function fill(uint256 orderId) returns (uint256 amountOut)","function claimBounty(address to) returns (uint256 amount)","function bountyOf(address keeper) view returns (uint256)","function lastOrderId() view returns (uint256)","function liabilities(address currency) view returns (uint256)"]);function Ht(t){let n=t.toLowerCase();return n===N.toLowerCase()||n===Z.toLowerCase()}function $t(t,n,i){let o=n.trim();if(o.startsWith("-")){let s=o.slice(1),r=t(s,i);return r==="0"?"0":`-${r}`}return t(o,i)}function Wt(t,n,i){return V(t,n,i)}function et(t,n){return!t.changes||t.changes.length===0?"no net ERC-20/native transfer delta on caller":t.changes.map(i=>`${$t(n,i.amount,i.token.decimals)} ${T(i.token.symbol)} (${i.token.address})`).join(", ")}function xt(t){if(typeof t=="bigint"){if(t<=0n)throw new u("Hookr orderId must be a positive integer.");return t}if(typeof t=="number"){if(!Number.isSafeInteger(t)||t<=0)throw new u("Hookr orderId must be a positive integer.");return BigInt(t)}if(typeof t=="string"&&/^\d+$/.test(t.trim())){let n=BigInt(t.trim());if(n<=0n)throw new u("Hookr orderId must be a positive integer.");return n}throw new u("Provide a positive integer Hookr orderId.")}function ot(t){if(t==null)return c;if(typeof t!="number"||!Number.isSafeInteger(t)||t!==c)throw new u(`Hookr limit orders are only supported on chain ${c}.`);return c}function Rt(t){switch(t){case 0:return"None";case 1:return"Open";case 2:return"Filled";case 3:return"Cancelled";default:return"Unknown"}}function Ct(t){if(Array.isArray(t)){let[n,i,o,s,r,d,g,m,b,e,l]=t;return{key:Array.isArray(n)?{currency0:n[0],currency1:n[1],fee:Number(n[2]),tickSpacing:Number(n[3]),hooks:n[4]}:n,owner:i,createdAt:o,expiry:s,zeroForOne:!!r,status:d,recipient:g,amountIn:BigInt(m),minAmountOut:BigInt(b),bounty:BigInt(e),sqrtPriceLimitX96:BigInt(l)}}if(t&&typeof t=="object"){let n=t;if(n.key&&typeof n.key=="object")return{key:{currency0:n.key.currency0,currency1:n.key.currency1,fee:Number(n.key.fee),tickSpacing:Number(n.key.tickSpacing),hooks:n.key.hooks},owner:n.owner,createdAt:n.createdAt,expiry:n.expiry,zeroForOne:!!n.zeroForOne,status:n.status,recipient:n.recipient,amountIn:BigInt(n.amountIn),minAmountOut:BigInt(n.minAmountOut),bounty:BigInt(n.bounty),sqrtPriceLimitX96:BigInt(n.sqrtPriceLimitX96)}}throw new u("HookrLimitOrders returned a malformed order tuple.")}function Dt(t){if(Array.isArray(t)&&t.length>=2)return{fillable:!!t[0],amountOut:BigInt(t[1])};if(t&&typeof t=="object"&&"fillable"in t&&"amountOut"in t){let n=t;return{fillable:!!n.fillable,amountOut:BigInt(n.amountOut)}}throw new u("HookrLimitOrders returned a malformed quoteFill response.")}function Pt(t){if(Array.isArray(t)&&t.length>=3)return{minBounty:BigInt(t[0]),defaultBounty:BigInt(t[1]),maxBounty:BigInt(t[2])};if(t&&typeof t=="object"&&"minBounty"in t&&"defaultBounty"in t&&"maxBounty"in t){let n=t;return{minBounty:BigInt(n.minBounty),defaultBounty:BigInt(n.defaultBounty),maxBounty:BigInt(n.maxBounty)}}throw new u("HookrLimitOrders returned a malformed bountyBounds response.")}async function tt(t,n,i=c){if(i!==c)throw new u(`Unsupported token chain ${i}; Hookr requires chain ${c}.`);if(Ht(n))return{...k,chainId:i};H(n);let o=a(n),s=o.toLowerCase();if(s===P.address.toLowerCase())return{address:o,symbol:P.symbol,decimals:X,chainId:i};if(s===R.address.toLowerCase())return{address:o,symbol:R.symbol,decimals:R.decimals,chainId:i};if(s===It.toLowerCase())return{address:o,symbol:"HOOKR",decimals:18,chainId:i};let[r,d]=await Promise.all([t.readContract({address:o,abi:J,functionName:"symbol"}),t.readContract({address:o,abi:J,functionName:"decimals"})]),g=typeof r=="string"&&r.trim()?r.trim():o,m=Number(d);if(!Number.isInteger(m)||m<0||m>255)throw new u(`Invalid token decimals for ${o} on chain ${i}.`);return{address:o,symbol:g,decimals:m,chainId:i}}async function Et(t){if(typeof t.getBlock!="function")throw new u("Cannot read the latest block timestamp for Hookr order expiry.");let n=await t.getBlock().catch(()=>{throw new u("Cannot read the latest block timestamp for Hookr order expiry.")});if(!n||typeof n.timestamp!="bigint"||n.timestamp<=0n)throw new u("Hookr requires a usable latest block timestamp to check order expiry.");return n.timestamp}function E(t,n=[]){let i=Q(t,"Provide a valid recipient wallet address."),o=i.toLowerCase();if(Tt.has(o)||n.some(s=>s.toLowerCase()===o))throw new u(`Recipient ${i} is a reserved protocol or zero address (invalid recipient).`);return i}function rt(t){if(t.minBountyEth!==void 0||t.minAmountOutDecimal!==void 0||t.rounding!==void 0)throw new u("Use minBounty and minAmountOut as base-unit integer strings.")}function L(t,n){if(t!==void 0){if(typeof t!="string"||!/^\d+$/.test(t))throw new u(`Provide ${n} as a base-unit integer string.`);return W(t)}}function Lt(t){return{name:"hookr_fill",inputSchema:{type:"object",properties:{orderId:{type:"string",description:"HookrLimitOrders orderId as a positive integer string."},minBounty:{type:"string",description:"Optional minimum keeper bounty in wei (decimal base-unit string)."},minAmountOut:{type:"string",description:"Optional quote pre-check only, in token base-unit integer strings. Not enforced on chain: fill(uint256) enforces only the order minAmountOut."},chainId:{type:"number",description:"Target chain ID (must be 4663)."}},required:["orderId"],additionalProperties:!1},async execute(n,i){try{rt(n),H(i);let o=a(i),s=ot(n.chainId),r=xt(n.orderId),d=t.clientFor(s),[g,m,b]=await Promise.all([d.readContract({address:y,abi:B,functionName:"getOrder",args:[r]}),d.readContract({address:y,abi:B,functionName:"quoteFill",args:[r]}),Et(d)]),e=Ct(g),l=Number(e.status),h=Rt(l);if(l===0||G(e.owner,N))throw new u(`Hookr order #${r} does not exist.`);if(l!==1)throw new u(`Hookr order #${r} is not open (current status: ${h}).`);let A=BigInt(e.expiry);if(A<b)throw new u(`Hookr order #${r} is expired (expiry ${A} < current timestamp ${b}).`);let f=Number(e.key.tickSpacing),$=Number(e.key.fee);if(!Number.isInteger(f)||f<=0)throw new u(`Hookr order #${r} has an invalid pool tickSpacing (${f}).`);if(e.amountIn<=0n||e.amountIn>Y)throw new u(`Hookr order #${r} has an invalid amountIn (${e.amountIn}).`);if(e.minAmountOut<=0n||e.minAmountOut>Y)throw new u(`Hookr order #${r} has an invalid minAmountOut (${e.minAmountOut}).`);let C=a(e.key.hooks);E(e.recipient,[C]);let it=await d.readContract({address:y,abi:B,functionName:"bountyBounds",args:[{currency0:a(e.key.currency0),currency1:a(e.key.currency1),fee:$,tickSpacing:f,hooks:C},e.zeroForOne,e.amountIn,e.minAmountOut]}),w=Pt(it),D=L(n.minBounty,"minBounty"),F=D!==void 0&&D>w.minBounty?D:w.minBounty;if(e.bounty<F)throw new u(`Hookr order #${r} is underbounty: order bounty (${e.bounty} wei) is below the required keeper bounty (${F} wei).`);if(e.bounty>w.maxBounty)throw new u(`Hookr order #${r} bounty (${e.bounty} wei) exceeds maximum bounty bound (${w.maxBounty} wei).`);let I=Dt(m),ut=e.zeroForOne?e.key.currency0:e.key.currency1,st=e.zeroForOne?e.key.currency1:e.key.currency0,[x,p]=await Promise.all([tt(d,ut,s),tt(d,st,s)]),S=L(n.minAmountOut,"minAmountOut"),v=S!==void 0&&S>e.minAmountOut?S:e.minAmountOut;if(!I.fillable||I.amountOut<=0n||I.amountOut<v)throw new u(`Hookr order #${r} is not executable: quoted output (${I.amountOut} base units of ${p.address}) does not meet minimum output (${v} base units).`);let at=nt({abi:B,functionName:"fill",args:[r]}),mt=t.formatAmount(e.amountIn.toString(),x.decimals),dt=t.formatAmount(I.amountOut.toString(),p.decimals),ct=t.formatAmount(e.minAmountOut.toString(),p.decimals),lt=t.formatAmount(e.bounty.toString(),18),yt=S===void 0?"":` Caller minAmountOut ${S} base units is a quote pre-check only, not enforced on chain; fill(uint256) enforces the order minimum of ${e.minAmountOut} base units.`,q=`Fill Hookr order #${r}: maker's escrow pays ${mt} ${T(x.symbol)} (${e.amountIn} base units of ${x.address}); net output goes to ${a(e.recipient)} (quoted ${dt} ${T(p.symbol)}, order minimum ${ct} ${T(p.symbol)}, ${e.minAmountOut} base units of ${p.address}). The filler sends no tokens or ETH (value 0), pays gas, and accrues ${lt} ETH (${e.bounty} wei) bounty to ${o}, payable only via claimBounty. Pool tickSpacing ${f}; expiry ${A} inclusive.${yt}`,M=t.unsignedTx({to:y,data:at,value:"0",chainId:s,description:q}),z=await t.preview([M],o),bt=et(z,t.formatAmount),K={token:x,amount:e.amountIn.toString()},U={token:p,amount:e.minAmountOut.toString()},ft={token:p,amount:I.amountOut.toString()},j={token:{...k,chainId:s},amount:e.bounty.toString()},pt={orderId:r.toString(),key:{currency0:a(e.key.currency0),currency1:a(e.key.currency1),fee:$,tickSpacing:f,hooks:C},owner:a(e.owner),recipient:a(e.recipient),createdAt:BigInt(e.createdAt).toString(),expiry:A.toString(),zeroForOne:e.zeroForOne,status:l,statusLabel:h,amountIn:K,minAmountOut:U,bounty:j,sqrtPriceLimitX96:e.sqrtPriceLimitX96.toString()},kt={minBounty:{token:{...k,chainId:s},amount:w.minBounty.toString()},defaultBounty:{token:{...k,chainId:s},amount:w.defaultBounty.toString()},maxBounty:{token:{...k,chainId:s},amount:w.maxBounty.toString()}};return{txs:[M],summary:`${q} Preview deltas: ${bt}.`,preview:z,orderId:r.toString(),fillable:!0,amountIn:K,minAmountOut:U,quotedAmountOut:ft,bounty:j,bountyBounds:kt,order:pt}}catch(o){throw new u(t.plainError(o))}}}}function Nt(t){return{name:"hookr_claim_bounty",inputSchema:{type:"object",properties:{to:{type:"string",description:"Optional recipient address for the claimed native ETH bounty (must be the signing wallet)."},minBounty:{type:"string",description:"Optional minimum claimable bounty in wei (decimal base-unit string)."},chainId:{type:"number",description:"Target chain ID (must be 4663)."}},additionalProperties:!1},async execute(n,i){try{rt(n),H(i);let o=a(i),s=ot(n.chainId),r=n.to!==void 0&&n.to!==null?E(String(n.to)):E(o);if(r!==o)throw new u("Hookr bounty recipient must be the signing wallet.");let g=await t.clientFor(s).readContract({address:y,abi:B,functionName:"bountyOf",args:[o]}),m=BigInt(g);if(m<=0n)throw new u(`No claimable Hookr keeper bounty for ${o}.`);let b=L(n.minBounty,"minBounty");if(b!==void 0&&m<b)throw new u(`Claimable Hookr bounty (${m} wei) is below the requested minimum (${b} wei).`);let e=nt({abi:B,functionName:"claimBounty",args:[r]}),l=t.formatAmount(m.toString(),18),h=t.unsignedTx({to:y,data:e,value:"0",chainId:s,description:`Claim ${l} ETH (${m} wei) of accrued Hookr keeper bounty from ${y} to ${r}.`}),A=await t.preview([h],o),f=et(A,t.formatAmount),$={token:{...k,chainId:s},amount:m.toString()};return{txs:[h],summary:`Claim ${l} ETH (${m} wei) Hookr keeper bounty to ${r}. Preview deltas: ${f}.`,preview:A,recipient:r,claimableBounty:$}}catch(o){throw new u(t.plainError(o))}}}}async function _t(t,n){H(n);let i=a(n),o=t.clientFor(c);try{let s=await o.readContract({address:y,abi:B,functionName:"bountyOf",args:[i]}),r=BigInt(s);if(r<=0n)return[];let d=t.formatAmount(r.toString(),18);return[{module:At,id:`hookr:bounty:${i.toLowerCase()}`,chainId:c,assets:[{token:{...k,chainId:c},amount:r.toString()}],description:`Hookr claimable keeper bounty (${d} ETH)`}]}catch(s){throw new u(t.plainError(s))}}var _=t=>({tools:[Lt(t),Nt(t)],positions:n=>_t(t,n)}),Vt=_,Gt=_,Qt=_;export{At as a,y as b,wt as c,Ot as d,Bt as e,ht as f,It as g,B as h,$t as i,Wt as j,Lt as k,Nt as l,_t as m,_ as n,Vt as o,Gt as p,Qt as q};