@oakagentkit/core 0.2.2 → 0.2.3
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/build/dist/api/modules/hookr/actions.js +1 -1
- package/build/dist/api/modules/hookr/index.js +1 -1
- package/build/dist/api/modules/hookr/launch-receipt.js +1 -1
- package/build/dist/api/modules/hookr/launch.js +1 -1
- package/build/dist/api/modules/hookr/liquidity.js +1 -1
- package/build/dist/api/modules/hookr/lp-positions.js +1 -1
- package/build/dist/api/modules/hookr/lp-reads.js +1 -1
- package/build/dist/api/modules/hookr/lp-receipt.js +1 -1
- package/build/dist/api/modules/hookr/lp-state.js +1 -1
- package/build/dist/api/modules/merkl/discovery.js +1 -1
- package/build/dist/api/modules/merkl/index.js +1 -1
- package/build/dist/api/modules/merkl/manage.js +1 -1
- package/build/dist/api/modules/uniswap/batch.js +1 -1
- package/build/dist/api/modules/uniswap/fees.js +1 -1
- package/build/dist/api/modules/uniswap/index.js +1 -1
- package/build/dist/api/modules/uniswap/local-guard.js +1 -1
- package/build/dist/api/modules/uniswap/pools.js +1 -1
- package/build/dist/api/modules/uniswap/position.js +1 -1
- package/build/dist/api/modules/uniswap/protocol.js +1 -1
- package/build/dist/api/modules/uniswap/trade-batch.js +1 -1
- package/build/dist/api/modules/uniswap/trade.js +1 -1
- package/build/dist/api/modules/uniswap/v4.js +1 -1
- package/build/dist/api/modules/uniswap/wrap.js +1 -1
- package/build/dist/chunks/{Y2KH6DCE.js → ASDKY5NX.js} +1 -1
- package/build/dist/chunks/{ZUG6MG46.js → CE7D6MUS.js} +1 -1
- package/build/dist/chunks/{MLPWQTBS.js → G3MHDTGT.js} +1 -1
- package/build/dist/chunks/{JNZZLA2A.js → GCWA4Z3W.js} +1 -1
- package/build/dist/chunks/{EPZ7SWKM.js → LKJBMHCE.js} +1 -1
- package/build/dist/chunks/{XMA25DXR.js → LLM5WDM3.js} +1 -1
- package/build/dist/chunks/{MFNP4KOK.js → O5IVZHHP.js} +1 -1
- package/build/dist/chunks/{66VBACC2.js → PEA32CWB.js} +1 -1
- package/build/dist/chunks/TNLHMDWL.js +1 -0
- package/build/dist/chunks/{J2XAEVKC.js → TPDOUL4N.js} +1 -1
- package/build/dist/chunks/{SI6GCOAS.js → VCLPOU7T.js} +1 -1
- package/build/dist/chunks/{JVI26KQO.js → VFKNXQXI.js} +1 -1
- package/build/dist/chunks/{TFVWAYHY.js → XUYHMOHS.js} +1 -1
- package/build/dist/chunks/YOENHHKI.js +1 -0
- package/build/dist/chunks/{DHOBTJRD.js → ZXQMF56D.js} +1 -1
- package/package.json +1 -1
- package/build/dist/chunks/4GAWMCQC.js +0 -1
- package/build/dist/chunks/Q356HHCL.js +0 -1
|
@@ -1 +1 @@
|
|
|
1
|
-
import{b as _}from"../../../chunks/J3GFCBZZ.js";import{f as k}from"../../../chunks/
|
|
1
|
+
import{b as _}from"../../../chunks/J3GFCBZZ.js";import{f as k}from"../../../chunks/ZXQMF56D.js";import{a as e,b as p,e as c}from"../../../chunks/O5IVZHHP.js";import"../../../chunks/XUYHMOHS.js";import"../../../chunks/YOENHHKI.js";import"../../../chunks/6ZYLNB2B.js";import{a as u}from"../../../chunks/XV2HQKND.js";import{c as s,d as f}from"../../../chunks/ELZNT5Q3.js";import"../../../chunks/NRBIXV7V.js";import"../../../chunks/WWNAGOCD.js";import"../../../chunks/MKQVS3IO.js";import"../../../chunks/5OEHZJ6X.js";import"../../../chunks/ACN2BFMA.js";import"../../../chunks/LT5P6PZW.js";import"../../../chunks/FUXT7GRK.js";import"../../../chunks/OVK4EEOD.js";import"../../../chunks/R7QPJQP6.js";import"../../../chunks/E7R3J4H7.js";import"../../../chunks/JPOYTTTW.js";import"../../../chunks/LQGPMOD2.js";import"../../../chunks/NSOEDRBU.js";import"../../../chunks/3EFV4FQF.js";import"../../../chunks/XVFLT275.js";import"../../../chunks/5O5ZE3ZV.js";import"../../../chunks/EA6IYKIB.js";import"../../../chunks/KSZMMNXK.js";import"../../../chunks/TNSKEHPC.js";import"../../../chunks/CY75R4FK.js";import"../../../chunks/LIUXNOLP.js";import"../../../chunks/CQCVFRQ5.js";import"../../../chunks/KHJFXJBU.js";import"../../../chunks/WVXW6VL3.js";import"../../../chunks/GIV5JMTE.js";import"../../../chunks/WQ6H62DM.js";import"../../../chunks/QRDDKA4I.js";import"../../../chunks/P4UQGWCP.js";import"../../../chunks/AXYOJBX6.js";import"../../../chunks/Z25UKUJF.js";import"../../../chunks/6IM6A5VA.js";import"../../../chunks/EG6M6SSO.js";import"../../../chunks/MYBDO5SA.js";import"../../../chunks/HIMVOTIU.js";import"../../../chunks/UWOFA6GV.js";import"../../../chunks/73N3TOJL.js";import"../../../chunks/RETS2ZEK.js";import"../../../chunks/5HCXZWUH.js";import"../../../chunks/CXLEQCP3.js";import"../../../chunks/G6HCV67X.js";import{a as i}from"../../../chunks/5YS5V2LK.js";import"../../../chunks/JXOEJPJ4.js";var O=[...e,"hookr_launch","hookr_action","hookr_revenue_action","hookr_addon_action"];async function T(o,r,n,t){if(p(o))return c(o,r,n,t);if(o==="hookr_launch")return k(r,n,t);if(o==="hookr_action")return s(r,n,t);if(o==="hookr_revenue_action")return _(r,n,t);if(o==="hookr_addon_action")return u(r,n,t);throw new i("This Hookr tool has no local action reconstruction.")}export{O as HOOKR_PREPARED_ACTIONS,f as assertHookrActionTransactions,T as prepareHookrToolAction};
|
|
@@ -1 +1 @@
|
|
|
1
|
-
import{b as _}from"../../../chunks/FBSUTF3B.js";import{e as T}from"../../../chunks/DRWWPBOQ.js";import{a as d}from"../../../chunks/
|
|
1
|
+
import{b as _}from"../../../chunks/FBSUTF3B.js";import{e as T}from"../../../chunks/DRWWPBOQ.js";import{a as d}from"../../../chunks/LKJBMHCE.js";import{b as c}from"../../../chunks/YZSTP2E6.js";import{a as f,n as u}from"../../../chunks/SJPYXNOK.js";import{c as i}from"../../../chunks/J3GFCBZZ.js";import{i as a}from"../../../chunks/ZXQMF56D.js";import{h as l}from"../../../chunks/O5IVZHHP.js";import{m as t}from"../../../chunks/XUYHMOHS.js";import"../../../chunks/YOENHHKI.js";import"../../../chunks/6ZYLNB2B.js";import{b as p}from"../../../chunks/XV2HQKND.js";import{e as m}from"../../../chunks/ELZNT5Q3.js";import{b as s}from"../../../chunks/NRBIXV7V.js";import"../../../chunks/WWNAGOCD.js";import"../../../chunks/MKQVS3IO.js";import"../../../chunks/5OEHZJ6X.js";import"../../../chunks/ACN2BFMA.js";import"../../../chunks/LT5P6PZW.js";import{O as e}from"../../../chunks/TMGWXDCZ.js";import"../../../chunks/FUXT7GRK.js";import"../../../chunks/OVK4EEOD.js";import"../../../chunks/R7QPJQP6.js";import"../../../chunks/E7R3J4H7.js";import"../../../chunks/JPOYTTTW.js";import"../../../chunks/LQGPMOD2.js";import"../../../chunks/NSOEDRBU.js";import"../../../chunks/3EFV4FQF.js";import"../../../chunks/XVFLT275.js";import"../../../chunks/5O5ZE3ZV.js";import"../../../chunks/EA6IYKIB.js";import"../../../chunks/KSZMMNXK.js";import"../../../chunks/TNSKEHPC.js";import"../../../chunks/CY75R4FK.js";import"../../../chunks/LIUXNOLP.js";import"../../../chunks/CQCVFRQ5.js";import"../../../chunks/KHJFXJBU.js";import"../../../chunks/WVXW6VL3.js";import"../../../chunks/GIV5JMTE.js";import"../../../chunks/WQ6H62DM.js";import"../../../chunks/QRDDKA4I.js";import"../../../chunks/P4UQGWCP.js";import{b as r}from"../../../chunks/AXYOJBX6.js";import"../../../chunks/Z25UKUJF.js";import"../../../chunks/6IM6A5VA.js";import"../../../chunks/EG6M6SSO.js";import"../../../chunks/MYBDO5SA.js";import"../../../chunks/HIMVOTIU.js";import"../../../chunks/UWOFA6GV.js";import"../../../chunks/73N3TOJL.js";import"../../../chunks/RETS2ZEK.js";import"../../../chunks/5HCXZWUH.js";import"../../../chunks/CXLEQCP3.js";import"../../../chunks/G6HCV67X.js";import"../../../chunks/5YS5V2LK.js";import"../../../chunks/JXOEJPJ4.js";function k(o){return r(f,[e(o),u(o),{tools:c(o)},{tools:T(o)},{tools:m(o)},{tools:s(o)},{tools:a(o)},{tools:t(o)},{tools:l(o)},{tools:[d(o)]},{tools:_(o)},{tools:i(o)},{tools:p(o)}])}var j=k,v=["hookr_launch_options","hookr_lp_position","hookr_lp_positions"];export{v as HOOKR_LP_READ_TOOLS,k as createModule,j as default};
|
|
@@ -1 +1 @@
|
|
|
1
|
-
import{b as n,c as B,e as re}from"../../../chunks/
|
|
1
|
+
import{b as n,c as B,e as re}from"../../../chunks/ZXQMF56D.js";import{s as J}from"../../../chunks/YOENHHKI.js";import"../../../chunks/6ZYLNB2B.js";import"../../../chunks/NRBIXV7V.js";import{a as Q}from"../../../chunks/WWNAGOCD.js";import"../../../chunks/MKQVS3IO.js";import{i as ne,j as w,m as q,o as l,p as u,q as g,s as T,t as j}from"../../../chunks/5OEHZJ6X.js";import{b as ee,g as te}from"../../../chunks/ACN2BFMA.js";import"../../../chunks/LT5P6PZW.js";import"../../../chunks/FUXT7GRK.js";import"../../../chunks/OVK4EEOD.js";import"../../../chunks/R7QPJQP6.js";import"../../../chunks/E7R3J4H7.js";import"../../../chunks/JPOYTTTW.js";import"../../../chunks/LQGPMOD2.js";import"../../../chunks/NSOEDRBU.js";import"../../../chunks/3EFV4FQF.js";import"../../../chunks/XVFLT275.js";import"../../../chunks/5O5ZE3ZV.js";import"../../../chunks/EA6IYKIB.js";import"../../../chunks/KSZMMNXK.js";import"../../../chunks/TNSKEHPC.js";import"../../../chunks/CY75R4FK.js";import"../../../chunks/LIUXNOLP.js";import"../../../chunks/CQCVFRQ5.js";import"../../../chunks/KHJFXJBU.js";import"../../../chunks/WVXW6VL3.js";import"../../../chunks/GIV5JMTE.js";import"../../../chunks/WQ6H62DM.js";import"../../../chunks/QRDDKA4I.js";import"../../../chunks/P4UQGWCP.js";import"../../../chunks/AXYOJBX6.js";import"../../../chunks/Z25UKUJF.js";import"../../../chunks/6IM6A5VA.js";import"../../../chunks/EG6M6SSO.js";import"../../../chunks/MYBDO5SA.js";import"../../../chunks/HIMVOTIU.js";import"../../../chunks/UWOFA6GV.js";import"../../../chunks/73N3TOJL.js";import"../../../chunks/RETS2ZEK.js";import"../../../chunks/5HCXZWUH.js";import"../../../chunks/CXLEQCP3.js";import"../../../chunks/G6HCV67X.js";import{a as Z}from"../../../chunks/5YS5V2LK.js";import"../../../chunks/JXOEJPJ4.js";import{decodeEventLog as ke,erc20Abi as ie,getAddress as ve,parseAbi as he,zeroAddress as R}from"viem";var qe=he(["event FamilyLaunched(bytes32 indexed familyId,address indexed owner,address indexed subject,address root)","event MemberLaunched(bytes32 indexed familyId,uint8 member,bytes32 indexed poolId,address quote,uint128 liquidity)","event LaunchFeePaid(bytes32 indexed familyId,address indexed target,uint256 fee)","event PoolOpened(bytes32 indexed id,address indexed launcher,bytes32 indexed policyHash,address rules,address advisory)","event Initialize(bytes32 indexed id,address indexed currency0,address indexed currency1,uint24 fee,int24 tickSpacing,address hooks,uint160 sqrtPriceX96,int24 tick)","event Transfer(address indexed from,address indexed to,uint256 value)"]),i=r=>{throw new Z(`Hookr launch mined but verification failed: ${r}. Inspect the receipt and wallet journal; do not launch again.`)},t=(r,M)=>typeof r=="string"&&r.toLowerCase()===M.toLowerCase();async function Pe(r,M,f,I,W,Y){let e=re(M),[A,b]=await Promise.all([r.getTransactionReceipt({hash:I}),r.getTransaction({hash:I})]);(A.status!=="success"||!t(A.transactionHash,I)||!t(b.hash,I)||!t(b.to,n)||!t(b.from,f)||!t(b.input,W.data)||b.value.toString()!==W.value||b.chainId!==4663)&&i("status, sender, chain or signed transaction differs");let o=A.blockNumber,oe=await r.getBlock({blockNumber:o});(await r.getChainId()!==4663||oe.hash!==A.blockHash)&&i("receipt is not canonical on chain 4663"),await te(r,o,[n,g,B,ee.agentGateV1]);let s=ne(await u(r,n,l("launcherV1"),"predictToken",[f,e.token],o)),H={currency0:BigInt(s)<BigInt(e.quote)?s:e.quote,currency1:BigInt(s)<BigInt(e.quote)?e.quote:s,fee:8388608,tickSpacing:Q.tickSpacing,hooks:g},p=J(H),se=A.logs.flatMap(a=>{try{return[{address:ve(a.address),...ke({abi:qe,data:a.data,topics:a.topics})}]}catch{return[]}}),N=(a,y)=>se.filter(d=>d.eventName===a&&d.address===y).map(d=>q(d.args)),C=(a,y)=>{let d=N(a,y);return d.length!==1&&i(`expected exactly one ${a} event`),d[0]},O=C("FamilyLaunched",n),m=O.familyId;(!t(O.owner,f)||!t(O.subject,s)||!t(O.root,g))&&i("family owner, token or root event differs");let L=C("MemberLaunched",n);(!t(L.familyId,m)||L.member!==0||!t(L.poolId,p)||!t(L.quote,e.quote)||L.liquidity!==e.liquidity)&&i("member event differs");let V=C("PoolOpened",g);(!t(V.id,p)||!t(V.launcher,n)||!t(V.rules,B)||!t(V.advisory,j))&&i("pool opening event differs");let k=C("Initialize",T);(!t(k.id,p)||!t(k.currency0,H.currency0)||!t(k.currency1,H.currency1)||k.fee!==8388608||k.tickSpacing!==Q.tickSpacing||!t(k.hooks,g)||k.sqrtPriceX96!==e.sqrtPriceX96)&&i("pool initialization differs");let z=H.currency0===s,F=z?e.debts.amount0:e.debts.amount1,D=z?e.debts.amount1:e.debts.amount0,X=z?e.amount1Max:e.amount0Max,ae=e.quote===R?X:0n,U=b.value-ae;U<0n&&i("negative launch fee");let S=N("LaunchFeePaid",n);(U===0n?S.length!==0:S.length!==1||!t(S[0].familyId,m)||S[0].fee!==U||Y!==void 0&&!t(S[0]?.target,Y)&&U>0n)&&i("launch fee event differs");let x=(a,y,d)=>N("Transfer",a).filter(h=>t(h.from,y)&&t(h.to,d)).reduce((h,$)=>h+w($.value),0n);(x(s,R,n)!==e.token.supply||x(s,n,T)!==F||x(s,n,f)!==e.token.supply-F)&&i("mint, deposit or retained supply was not delivered in the launch transaction");let _=X-D;if(e.quote!==R&&(x(e.quote,f,n)!==X||x(e.quote,n,T)!==D||x(e.quote,n,f)!==_)&&i("quote funding, deposit or same-transaction refund differs"),e.quote===R){let a=await r.request({method:"debug_traceTransaction",params:[I,{tracer:"callTracer"}]}),y=0n,d=0n,h=($,G=0)=>{G>64&&i("native trace exceeds its bound");let c=q($);if(c.error){G===0&&i("native call trace failed");return}if(c.type==="CALL"&&t(c.from,n)&&typeof c.value=="string"&&/^0x[0-9a-f]+$/i.test(c.value)&&(t(c.to,f)&&(y+=BigInt(c.value)),t(c.to,T)&&(d+=BigInt(c.value))),c.calls!==void 0){let K=c.calls;if(!Array.isArray(K))return i("native trace is malformed");K.length>4096&&i("native trace exceeds its bound"),K.forEach(be=>h(be,G+1))}};h(a),(y!==_||d!==D)&&i("native deposit or same-transaction refund differs")}let[de,ce,ue,fe,le,pe,me,ye,ge]=await Promise.all([u(r,n,l("launcherV1"),"familyOwner",[m],o),u(r,n,l("launcherV1"),"memberCount",[m],o),u(r,n,l("launcherV1"),"position",[m,0],o),u(r,n,l("launcherV1"),"poolFamily",[p],o),u(r,s,ie,"totalSupply",[],o),u(r,s,ie,"balanceOf",[f],o),u(r,g,l("rootV1"),"poolConfig",[p],o),u(r,j,l("agentGateV1"),"terms",[g,p],o),u(r,n,l("launcherV1"),"principalLockedUntil",[m],o)]),E=q(ue),P=q(me),v=q(ye);return(!t(de,f)||w(ce,8)!==1n||fe!==m||w(le)!==e.token.supply||w(pe)!==e.token.supply-F||w(ge)!==0n||J(q(E.key))!==p||E.tickLower!==e.tickLower||E.tickUpper!==e.tickUpper||E.liquidity!==e.liquidity||!t(P.subject,s)||!t(P.quote,e.quote)||!t(P.rules,B)||!t(P.advisory,j)||!t(P.liquidityOwner,n)||v.bound!==!0||!t(v.launcher,n)||v.flags!==1||v.minScore!==e.gateTerms.minScore||v.tierScore!==e.gateTerms.tierScore||v.tierPips!==e.gateTerms.tierPips||v.reviewers!==e.gateTerms.reviewers)&&i("receipt-block ownership, supply, position, gate or lock differs"),{tokenAddress:s,poolId:p,launcher:n,familyId:m,member:"0",owner:f,receiptStatus:"verified",blockNumber:o.toString(),deposited:{amount0:e.debts.amount0.toString(),amount1:e.debts.amount1.toString()},refunds:{quote:_.toString(),retainedSupply:(e.token.supply-F).toString()}}}export{qe as launchEvents,Pe as verifyHookrLaunchReceipt};
|
|
@@ -1 +1 @@
|
|
|
1
|
-
import{a as b,b as c,c as d,d as e,e as f,f as g,g as h,h as i,i as j}from"../../../chunks/
|
|
1
|
+
import{a as b,b as c,c as d,d as e,e as f,f as g,g as h,h as i,i as j}from"../../../chunks/ZXQMF56D.js";import"../../../chunks/YOENHHKI.js";import"../../../chunks/6ZYLNB2B.js";import"../../../chunks/NRBIXV7V.js";import{a}from"../../../chunks/WWNAGOCD.js";import"../../../chunks/MKQVS3IO.js";import"../../../chunks/5OEHZJ6X.js";import"../../../chunks/ACN2BFMA.js";import"../../../chunks/LT5P6PZW.js";import"../../../chunks/FUXT7GRK.js";import"../../../chunks/OVK4EEOD.js";import"../../../chunks/R7QPJQP6.js";import"../../../chunks/E7R3J4H7.js";import"../../../chunks/JPOYTTTW.js";import"../../../chunks/LQGPMOD2.js";import"../../../chunks/NSOEDRBU.js";import"../../../chunks/3EFV4FQF.js";import"../../../chunks/XVFLT275.js";import"../../../chunks/5O5ZE3ZV.js";import"../../../chunks/EA6IYKIB.js";import"../../../chunks/KSZMMNXK.js";import"../../../chunks/TNSKEHPC.js";import"../../../chunks/CY75R4FK.js";import"../../../chunks/LIUXNOLP.js";import"../../../chunks/CQCVFRQ5.js";import"../../../chunks/KHJFXJBU.js";import"../../../chunks/WVXW6VL3.js";import"../../../chunks/GIV5JMTE.js";import"../../../chunks/WQ6H62DM.js";import"../../../chunks/QRDDKA4I.js";import"../../../chunks/P4UQGWCP.js";import"../../../chunks/AXYOJBX6.js";import"../../../chunks/Z25UKUJF.js";import"../../../chunks/6IM6A5VA.js";import"../../../chunks/EG6M6SSO.js";import"../../../chunks/MYBDO5SA.js";import"../../../chunks/HIMVOTIU.js";import"../../../chunks/UWOFA6GV.js";import"../../../chunks/73N3TOJL.js";import"../../../chunks/RETS2ZEK.js";import"../../../chunks/5HCXZWUH.js";import"../../../chunks/CXLEQCP3.js";import"../../../chunks/G6HCV67X.js";import"../../../chunks/5YS5V2LK.js";import"../../../chunks/JXOEJPJ4.js";export{b as HOOKR_LAUNCH,c as LAUNCHER,a as LAUNCH_PROFILE,d as RULES,i as assertHookrLaunchTransactions,h as assertHookrLaunchWire,j as createLaunchTools,e as hookrLaunchSchema,f as launchRequest,g as prepareHookrLaunch};
|
|
@@ -1 +1 @@
|
|
|
1
|
-
import{a,b,c,d,e,f,g,h}from"../../../chunks/
|
|
1
|
+
import{a,b,c,d,e,f,g,h}from"../../../chunks/O5IVZHHP.js";import"../../../chunks/XUYHMOHS.js";import"../../../chunks/YOENHHKI.js";import"../../../chunks/6ZYLNB2B.js";import"../../../chunks/MKQVS3IO.js";import"../../../chunks/5OEHZJ6X.js";import"../../../chunks/ACN2BFMA.js";import"../../../chunks/LT5P6PZW.js";import"../../../chunks/FUXT7GRK.js";import"../../../chunks/OVK4EEOD.js";import"../../../chunks/R7QPJQP6.js";import"../../../chunks/E7R3J4H7.js";import"../../../chunks/JPOYTTTW.js";import"../../../chunks/LQGPMOD2.js";import"../../../chunks/NSOEDRBU.js";import"../../../chunks/3EFV4FQF.js";import"../../../chunks/XVFLT275.js";import"../../../chunks/5O5ZE3ZV.js";import"../../../chunks/EA6IYKIB.js";import"../../../chunks/KSZMMNXK.js";import"../../../chunks/TNSKEHPC.js";import"../../../chunks/CY75R4FK.js";import"../../../chunks/LIUXNOLP.js";import"../../../chunks/CQCVFRQ5.js";import"../../../chunks/KHJFXJBU.js";import"../../../chunks/WVXW6VL3.js";import"../../../chunks/GIV5JMTE.js";import"../../../chunks/WQ6H62DM.js";import"../../../chunks/QRDDKA4I.js";import"../../../chunks/P4UQGWCP.js";import"../../../chunks/AXYOJBX6.js";import"../../../chunks/Z25UKUJF.js";import"../../../chunks/6IM6A5VA.js";import"../../../chunks/EG6M6SSO.js";import"../../../chunks/MYBDO5SA.js";import"../../../chunks/HIMVOTIU.js";import"../../../chunks/UWOFA6GV.js";import"../../../chunks/73N3TOJL.js";import"../../../chunks/RETS2ZEK.js";import"../../../chunks/5HCXZWUH.js";import"../../../chunks/CXLEQCP3.js";import"../../../chunks/G6HCV67X.js";import"../../../chunks/5YS5V2LK.js";import"../../../chunks/JXOEJPJ4.js";export{a as HOOKR_LP_ACTIONS,g as assertHookrLpTransactions,f as assertHookrLpWire,h as createLpActionTools,c as hookrLpSchemas,b as isHookrLpAction,d as lpRequest,e as prepareHookrLp};
|
|
@@ -1 +1 @@
|
|
|
1
|
-
import{a}from"../../../chunks/
|
|
1
|
+
import{a}from"../../../chunks/LKJBMHCE.js";import"../../../chunks/XUYHMOHS.js";import"../../../chunks/YOENHHKI.js";import"../../../chunks/6ZYLNB2B.js";import"../../../chunks/MKQVS3IO.js";import"../../../chunks/5OEHZJ6X.js";import"../../../chunks/ACN2BFMA.js";import"../../../chunks/LT5P6PZW.js";import"../../../chunks/FUXT7GRK.js";import"../../../chunks/OVK4EEOD.js";import"../../../chunks/R7QPJQP6.js";import"../../../chunks/E7R3J4H7.js";import"../../../chunks/JPOYTTTW.js";import"../../../chunks/LQGPMOD2.js";import"../../../chunks/NSOEDRBU.js";import"../../../chunks/3EFV4FQF.js";import"../../../chunks/XVFLT275.js";import"../../../chunks/5O5ZE3ZV.js";import"../../../chunks/EA6IYKIB.js";import"../../../chunks/KSZMMNXK.js";import"../../../chunks/TNSKEHPC.js";import"../../../chunks/CY75R4FK.js";import"../../../chunks/LIUXNOLP.js";import"../../../chunks/CQCVFRQ5.js";import"../../../chunks/KHJFXJBU.js";import"../../../chunks/WVXW6VL3.js";import"../../../chunks/GIV5JMTE.js";import"../../../chunks/WQ6H62DM.js";import"../../../chunks/QRDDKA4I.js";import"../../../chunks/P4UQGWCP.js";import"../../../chunks/AXYOJBX6.js";import"../../../chunks/Z25UKUJF.js";import"../../../chunks/6IM6A5VA.js";import"../../../chunks/EG6M6SSO.js";import"../../../chunks/MYBDO5SA.js";import"../../../chunks/HIMVOTIU.js";import"../../../chunks/UWOFA6GV.js";import"../../../chunks/73N3TOJL.js";import"../../../chunks/RETS2ZEK.js";import"../../../chunks/5HCXZWUH.js";import"../../../chunks/CXLEQCP3.js";import"../../../chunks/G6HCV67X.js";import"../../../chunks/5YS5V2LK.js";import"../../../chunks/JXOEJPJ4.js";export{a as createLpPositionsTool};
|
|
@@ -1 +1 @@
|
|
|
1
|
-
import{f as a,g as b,h as c,i as d,j as e,k as f,l as g,m as h}from"../../../chunks/
|
|
1
|
+
import{f as a,g as b,h as c,i as d,j as e,k as f,l as g,m as h}from"../../../chunks/XUYHMOHS.js";import"../../../chunks/YOENHHKI.js";import"../../../chunks/6ZYLNB2B.js";import"../../../chunks/MKQVS3IO.js";import"../../../chunks/5OEHZJ6X.js";import"../../../chunks/ACN2BFMA.js";import"../../../chunks/LT5P6PZW.js";import"../../../chunks/FUXT7GRK.js";import"../../../chunks/OVK4EEOD.js";import"../../../chunks/R7QPJQP6.js";import"../../../chunks/E7R3J4H7.js";import"../../../chunks/JPOYTTTW.js";import"../../../chunks/LQGPMOD2.js";import"../../../chunks/NSOEDRBU.js";import"../../../chunks/3EFV4FQF.js";import"../../../chunks/XVFLT275.js";import"../../../chunks/5O5ZE3ZV.js";import"../../../chunks/EA6IYKIB.js";import"../../../chunks/KSZMMNXK.js";import"../../../chunks/TNSKEHPC.js";import"../../../chunks/CY75R4FK.js";import"../../../chunks/LIUXNOLP.js";import"../../../chunks/CQCVFRQ5.js";import"../../../chunks/KHJFXJBU.js";import"../../../chunks/WVXW6VL3.js";import"../../../chunks/GIV5JMTE.js";import"../../../chunks/WQ6H62DM.js";import"../../../chunks/QRDDKA4I.js";import"../../../chunks/P4UQGWCP.js";import"../../../chunks/AXYOJBX6.js";import"../../../chunks/Z25UKUJF.js";import"../../../chunks/6IM6A5VA.js";import"../../../chunks/EG6M6SSO.js";import"../../../chunks/MYBDO5SA.js";import"../../../chunks/HIMVOTIU.js";import"../../../chunks/UWOFA6GV.js";import"../../../chunks/73N3TOJL.js";import"../../../chunks/RETS2ZEK.js";import"../../../chunks/5HCXZWUH.js";import"../../../chunks/CXLEQCP3.js";import"../../../chunks/G6HCV67X.js";import"../../../chunks/5YS5V2LK.js";import"../../../chunks/JXOEJPJ4.js";export{a as HOOKR_POSITION_SCHEMA,h as createLpReadTools,b as familyPosition,c as familyStorageSlots,d as feeGrowthInside,f as readFamilyPoolKey,g as readFamilyPosition,e as uncollectedFees};
|
|
@@ -1 +1 @@
|
|
|
1
|
-
import{a as U,h as Q}from"../../../chunks/
|
|
1
|
+
import{a as U,h as Q}from"../../../chunks/XUYHMOHS.js";import{A as D,s as z}from"../../../chunks/YOENHHKI.js";import"../../../chunks/6ZYLNB2B.js";import"../../../chunks/MKQVS3IO.js";import{h as G,j as l,l as J,m as h,p as A,q as K,s as w}from"../../../chunks/5OEHZJ6X.js";import{g as W,h as X,i as _}from"../../../chunks/ACN2BFMA.js";import"../../../chunks/LT5P6PZW.js";import"../../../chunks/FUXT7GRK.js";import"../../../chunks/OVK4EEOD.js";import"../../../chunks/R7QPJQP6.js";import"../../../chunks/E7R3J4H7.js";import"../../../chunks/JPOYTTTW.js";import"../../../chunks/LQGPMOD2.js";import"../../../chunks/NSOEDRBU.js";import"../../../chunks/3EFV4FQF.js";import"../../../chunks/XVFLT275.js";import"../../../chunks/5O5ZE3ZV.js";import"../../../chunks/EA6IYKIB.js";import"../../../chunks/KSZMMNXK.js";import"../../../chunks/TNSKEHPC.js";import"../../../chunks/CY75R4FK.js";import"../../../chunks/LIUXNOLP.js";import"../../../chunks/CQCVFRQ5.js";import"../../../chunks/KHJFXJBU.js";import"../../../chunks/WVXW6VL3.js";import"../../../chunks/GIV5JMTE.js";import"../../../chunks/WQ6H62DM.js";import"../../../chunks/QRDDKA4I.js";import"../../../chunks/P4UQGWCP.js";import"../../../chunks/AXYOJBX6.js";import"../../../chunks/Z25UKUJF.js";import"../../../chunks/6IM6A5VA.js";import"../../../chunks/EG6M6SSO.js";import"../../../chunks/MYBDO5SA.js";import"../../../chunks/HIMVOTIU.js";import"../../../chunks/UWOFA6GV.js";import"../../../chunks/73N3TOJL.js";import"../../../chunks/RETS2ZEK.js";import"../../../chunks/5HCXZWUH.js";import"../../../chunks/CXLEQCP3.js";import"../../../chunks/G6HCV67X.js";import{a as j}from"../../../chunks/5YS5V2LK.js";import"../../../chunks/JXOEJPJ4.js";import{decodeEventLog as ne,getAddress as R,parseAbi as V,zeroAddress as N}from"viem";var re=V(["event LPFeesCollected(bytes32 indexed familyId,uint8 member,bytes32 indexed poolId,address indexed owner,address recipient,uint256 amount0,uint256 amount1)","event LiquidityRemoved(bytes32 indexed familyId,uint8 member,uint128 liquidity,uint256 amount0,uint256 amount1)","event LiquidityAdded(bytes32 indexed familyId,uint8 member,uint128 liquidity,uint256 amount0,uint256 amount1)","event PoolClaimed(bytes32 indexed id,address indexed to,address indexed currency,uint256 amount)","event Transfer(address indexed from,address indexed to,uint256 value)"]),o=(d,C)=>typeof d=="string"&&d.toLowerCase()===C.toLowerCase(),r=d=>{throw new j(`Hookr LP transaction mined but receipt verification failed: ${d}. Inspect the receipt; do not repeat the action.`)};async function me(d,C,p,b,S){let{state:n,request:e}=C,[g,y]=await Promise.all([d.getTransactionReceipt({hash:b}),d.getTransaction({hash:b})]);(g.status!=="success"||!o(g.transactionHash,b)||!o(y.hash,b)||!o(y.from,p)||!o(y.to,e.position.launcher)||!o(y.input,S.data)||y.value.toString()!==S.value||y.chainId!==4663)&&r("status, sender or signed action differs");let m=await X(d,g.blockNumber);m.hash!==g.blockHash&&r("receipt block is not canonical"),await W(d,m.number,[e.position.launcher,K,w,n.core]);let Y=g.logs.flatMap(i=>{try{return[{address:R(i.address),...ne({abi:re,data:i.data,topics:i.topics,strict:!0})}]}catch{return[]}}),x=(i,t)=>Y.filter(s=>s.eventName===i&&s.address===t).map(s=>h(s.args)),B=x(e.adding?"LiquidityAdded":"LiquidityRemoved",e.position.launcher);B.length!==1&&r("expected one family liquidity event");let v=B[0];(!o(v.familyId,e.position.familyId)||v.member!==Number(e.position.member)||l(v.liquidity,128)!==e.liquidity)&&r("liquidity event differs");let q=x("LPFeesCollected",e.position.launcher);q.length>1&&r("multiple position fee events");for(let i of q)(!o(i.familyId,e.position.familyId)||i.member!==Number(e.position.member)||!o(i.poolId,n.poolId)||!o(i.owner,p)||!o(i.recipient,p))&&r("LP fee ownership or recipient differs");let I=[0,1].map(i=>q.length?l(q[0][`amount${i}`]):0n),E=[l(v.amount0),l(v.amount1)],c=E.map((i,t)=>e.adding?i:i>=I[t]?i-I[t]:r("fee amount exceeds the total withdrawal")),Z=Q(n.poolId,e.position.launcher,e.position.familyId,Number(e.position.member),n.tickLower,n.tickUpper)[0],ee=J(await A(d,w,V(["function extsload(bytes32[] slots) view returns (bytes32[])"]),"extsload",[[Z]],m.number),1)[0],F=BigInt(G(ee))&(1n<<160n)-1n;F||r("receipt-block price is unavailable");let M=D({liquidity:e.liquidity,tickLower:n.tickLower,tickUpper:n.tickUpper,sqrtPriceX96:F,roundUp:e.adding});(c[0]!==M.amount0||c[1]!==M.amount1)&&r("principal/fee split differs from receipt-block inventory; later swaps in the same block may require transaction-level reconciliation"),(e.collecting&&c.some(i=>i!==0n)||e.adding&&(c[0]>e.bound0||c[1]>e.bound1)||!e.adding&&(c[0]<e.bound0||c[1]<e.bound1))&&r("principal violates exact caps or minima");let H=[n.key.currency0,n.key.currency1],T=[0n,0n];for(let i of x("PoolClaimed",n.core)){let t=H.findIndex(s=>o(i.currency,s));(t<0||!o(i.id,n.poolId)||!o(i.to,p))&&r("core credit pool, currency or recipient differs"),T[t]=T[t]+l(i.amount)}let O=[];if(H.includes(N)){let i=await d.request({method:"debug_traceTransaction",params:[b,{tracer:"callTracer"}]}),t=0,s=(a,f=0)=>{(f>64||++t>4096)&&r("native trace exceeds its bound");let u=h(a);if(u.error){f||r("native trace failed");return}if(u.type==="CALL"&&typeof u.from=="string"&&typeof u.to=="string"&&typeof u.value=="string"&&/^0x[0-9a-f]+$/i.test(u.value)&&O.push({from:R(u.from),to:R(u.to),value:BigInt(u.value)}),u.calls!==void 0){Array.isArray(u.calls)||r("native trace is malformed");for(let oe of u.calls)s(oe,f+1)}};s(i)}let L=(i,t,s)=>i===N?O.filter(a=>o(a.from,t)&&o(a.to,s)).reduce((a,f)=>a+f.value,0n):x("Transfer",i).filter(a=>o(a.from,t)&&o(a.to,s)).reduce((a,f)=>a+l(f.value),0n);for(let[i,t]of H.entries()){let s=e.adding?I[i]:E[i];if(L(t,w,p)!==s&&r("LP fees/principal were not delivered directly by the PoolManager"),e.adding){let a=i===0?e.bound0:e.bound1;(t!==N&&L(t,p,e.position.launcher)!==a||L(t,e.position.launcher,w)!==c[i]||L(t,e.position.launcher,p)!==a-c[i])&&r("exact funding, deposit or atomic refund differs")}}let[ie,te]=await Promise.all([A(d,e.position.launcher,U(e.position),"familyOwner",[e.position.familyId],m.number),A(d,e.position.launcher,U(e.position),"position",[e.position.familyId,Number(e.position.member)],m.number)]),P=h(te),$=n.liquidity+(e.adding?e.liquidity:-e.liquidity);(!o(ie,p)||z(h(P.key))!==n.poolId||P.tickLower!==n.tickLower||P.tickUpper!==n.tickUpper||l(P.liquidity,128)!==$)&&r("receipt-block owner, range, key or liquidity differs"),await _(d,m);let k=i=>i.map((t,s)=>({token:n.tokens[s],amount:t.toString()}));return{position:e.position,owner:p,recipient:p,poolId:n.poolId,blockNumber:m.number.toString(),liquidityRemaining:$.toString(),principalReceived:k(e.adding?[0n,0n]:c),principalDeposited:k(e.adding?c:[0n,0n]),lpFeesReceived:k(I),coreCreditsReceived:k(T),coreCreditsMeaning:"Credits moved into the recipient\u2019s core claim ledger; excluded from wallet tokens received and LP fees.",refunds:e.adding?k([e.bound0-c[0],e.bound1-c[1]]):null,receiptStatus:"verified"}}export{re as lpEvents,me as verifyHookrLpReceipt};
|
|
@@ -1 +1 @@
|
|
|
1
|
-
import{a,b,c,d,e}from"../../../chunks/
|
|
1
|
+
import{a,b,c,d,e}from"../../../chunks/XUYHMOHS.js";import"../../../chunks/YOENHHKI.js";import"../../../chunks/6ZYLNB2B.js";import"../../../chunks/MKQVS3IO.js";import"../../../chunks/5OEHZJ6X.js";import"../../../chunks/ACN2BFMA.js";import"../../../chunks/LT5P6PZW.js";import"../../../chunks/FUXT7GRK.js";import"../../../chunks/OVK4EEOD.js";import"../../../chunks/R7QPJQP6.js";import"../../../chunks/E7R3J4H7.js";import"../../../chunks/JPOYTTTW.js";import"../../../chunks/LQGPMOD2.js";import"../../../chunks/NSOEDRBU.js";import"../../../chunks/3EFV4FQF.js";import"../../../chunks/XVFLT275.js";import"../../../chunks/5O5ZE3ZV.js";import"../../../chunks/EA6IYKIB.js";import"../../../chunks/KSZMMNXK.js";import"../../../chunks/TNSKEHPC.js";import"../../../chunks/CY75R4FK.js";import"../../../chunks/LIUXNOLP.js";import"../../../chunks/CQCVFRQ5.js";import"../../../chunks/KHJFXJBU.js";import"../../../chunks/WVXW6VL3.js";import"../../../chunks/GIV5JMTE.js";import"../../../chunks/WQ6H62DM.js";import"../../../chunks/QRDDKA4I.js";import"../../../chunks/P4UQGWCP.js";import"../../../chunks/AXYOJBX6.js";import"../../../chunks/Z25UKUJF.js";import"../../../chunks/6IM6A5VA.js";import"../../../chunks/EG6M6SSO.js";import"../../../chunks/MYBDO5SA.js";import"../../../chunks/HIMVOTIU.js";import"../../../chunks/UWOFA6GV.js";import"../../../chunks/73N3TOJL.js";import"../../../chunks/RETS2ZEK.js";import"../../../chunks/5HCXZWUH.js";import"../../../chunks/CXLEQCP3.js";import"../../../chunks/G6HCV67X.js";import"../../../chunks/5YS5V2LK.js";import"../../../chunks/JXOEJPJ4.js";export{a as launcherAbi,c as parentBlockNumber,d as readFamilyActionState,e as readFamilyLocks,b as rootLockSlot};
|
|
@@ -1 +1 @@
|
|
|
1
|
-
import{a}from"../../../chunks/
|
|
1
|
+
import{a}from"../../../chunks/TNLHMDWL.js";import"../../../chunks/MYBDO5SA.js";import"../../../chunks/HIMVOTIU.js";import"../../../chunks/73N3TOJL.js";import"../../../chunks/RETS2ZEK.js";import"../../../chunks/G6HCV67X.js";import"../../../chunks/5YS5V2LK.js";import"../../../chunks/JXOEJPJ4.js";export{a as createDiscoveryPart};
|
|
@@ -1 +1 @@
|
|
|
1
|
-
import{b as a,c as b,d as c}from"../../../chunks/
|
|
1
|
+
import{b as a,c as b,d as c}from"../../../chunks/G3MHDTGT.js";import"../../../chunks/TNLHMDWL.js";import"../../../chunks/4X2JOQ2L.js";import"../../../chunks/AXYOJBX6.js";import"../../../chunks/Z25UKUJF.js";import"../../../chunks/6IM6A5VA.js";import"../../../chunks/MYBDO5SA.js";import"../../../chunks/HIMVOTIU.js";import"../../../chunks/UWOFA6GV.js";import"../../../chunks/73N3TOJL.js";import"../../../chunks/RETS2ZEK.js";import"../../../chunks/G6HCV67X.js";import"../../../chunks/5YS5V2LK.js";import"../../../chunks/JXOEJPJ4.js";export{c as createModule,b as createModulePart,a as readClaimable};
|
|
@@ -1 +1 @@
|
|
|
1
|
-
import{a}from"../../../chunks/
|
|
1
|
+
import{a}from"../../../chunks/G3MHDTGT.js";import"../../../chunks/TNLHMDWL.js";import"../../../chunks/4X2JOQ2L.js";import"../../../chunks/AXYOJBX6.js";import"../../../chunks/Z25UKUJF.js";import"../../../chunks/6IM6A5VA.js";import"../../../chunks/MYBDO5SA.js";import"../../../chunks/HIMVOTIU.js";import"../../../chunks/UWOFA6GV.js";import"../../../chunks/73N3TOJL.js";import"../../../chunks/RETS2ZEK.js";import"../../../chunks/G6HCV67X.js";import"../../../chunks/5YS5V2LK.js";import"../../../chunks/JXOEJPJ4.js";export{a as createAdministrationPart};
|
|
@@ -1 +1 @@
|
|
|
1
|
-
import{a,b,c}from"../../../chunks/
|
|
1
|
+
import{a,b,c}from"../../../chunks/GCWA4Z3W.js";import"../../../chunks/TPDOUL4N.js";import"../../../chunks/WQQJ7UPJ.js";import"../../../chunks/3NDVXEBR.js";import"../../../chunks/YOENHHKI.js";import"../../../chunks/6ZYLNB2B.js";import"../../../chunks/FUXT7GRK.js";import"../../../chunks/OVK4EEOD.js";import"../../../chunks/R7QPJQP6.js";import"../../../chunks/E7R3J4H7.js";import"../../../chunks/JPOYTTTW.js";import"../../../chunks/LQGPMOD2.js";import"../../../chunks/NSOEDRBU.js";import"../../../chunks/3EFV4FQF.js";import"../../../chunks/XVFLT275.js";import"../../../chunks/5O5ZE3ZV.js";import"../../../chunks/EA6IYKIB.js";import"../../../chunks/KSZMMNXK.js";import"../../../chunks/TNSKEHPC.js";import"../../../chunks/CY75R4FK.js";import"../../../chunks/LIUXNOLP.js";import"../../../chunks/CQCVFRQ5.js";import"../../../chunks/KHJFXJBU.js";import"../../../chunks/WVXW6VL3.js";import"../../../chunks/GIV5JMTE.js";import"../../../chunks/WQ6H62DM.js";import"../../../chunks/QRDDKA4I.js";import"../../../chunks/P4UQGWCP.js";import"../../../chunks/AXYOJBX6.js";import"../../../chunks/Z25UKUJF.js";import"../../../chunks/6IM6A5VA.js";import"../../../chunks/EG6M6SSO.js";import"../../../chunks/MYBDO5SA.js";import"../../../chunks/HIMVOTIU.js";import"../../../chunks/UWOFA6GV.js";import"../../../chunks/73N3TOJL.js";import"../../../chunks/RETS2ZEK.js";import"../../../chunks/5HCXZWUH.js";import"../../../chunks/CXLEQCP3.js";import"../../../chunks/G6HCV67X.js";import"../../../chunks/5YS5V2LK.js";import"../../../chunks/JXOEJPJ4.js";export{a as batchPmAbi,b as batchUnlock,c as createBatchPart};
|
|
@@ -1 +1 @@
|
|
|
1
|
-
import{a,b,c,d}from"../../../chunks/
|
|
1
|
+
import{a,b,c,d}from"../../../chunks/ASDKY5NX.js";import"../../../chunks/IBXYIN7Q.js";import"../../../chunks/3NDVXEBR.js";import"../../../chunks/YOENHHKI.js";import"../../../chunks/6ZYLNB2B.js";import"../../../chunks/FUXT7GRK.js";import"../../../chunks/OVK4EEOD.js";import"../../../chunks/R7QPJQP6.js";import"../../../chunks/E7R3J4H7.js";import"../../../chunks/JPOYTTTW.js";import"../../../chunks/LQGPMOD2.js";import"../../../chunks/NSOEDRBU.js";import"../../../chunks/3EFV4FQF.js";import"../../../chunks/XVFLT275.js";import"../../../chunks/5O5ZE3ZV.js";import"../../../chunks/EA6IYKIB.js";import"../../../chunks/KSZMMNXK.js";import"../../../chunks/TNSKEHPC.js";import"../../../chunks/CY75R4FK.js";import"../../../chunks/LIUXNOLP.js";import"../../../chunks/CQCVFRQ5.js";import"../../../chunks/KHJFXJBU.js";import"../../../chunks/WVXW6VL3.js";import"../../../chunks/GIV5JMTE.js";import"../../../chunks/WQ6H62DM.js";import"../../../chunks/QRDDKA4I.js";import"../../../chunks/P4UQGWCP.js";import"../../../chunks/AXYOJBX6.js";import"../../../chunks/Z25UKUJF.js";import"../../../chunks/6IM6A5VA.js";import"../../../chunks/EG6M6SSO.js";import"../../../chunks/MYBDO5SA.js";import"../../../chunks/HIMVOTIU.js";import"../../../chunks/UWOFA6GV.js";import"../../../chunks/73N3TOJL.js";import"../../../chunks/RETS2ZEK.js";import"../../../chunks/5HCXZWUH.js";import"../../../chunks/CXLEQCP3.js";import"../../../chunks/G6HCV67X.js";import"../../../chunks/5YS5V2LK.js";import"../../../chunks/JXOEJPJ4.js";export{c as accruedFees,d as createFeePart,a as feeViewAbi,b as growthDelta};
|
|
@@ -1 +1 @@
|
|
|
1
|
-
import{d as U}from"../../../chunks/
|
|
1
|
+
import{d as U}from"../../../chunks/ASDKY5NX.js";import{b as H}from"../../../chunks/VCLPOU7T.js";import{b as F}from"../../../chunks/PEA32CWB.js";import{b as L}from"../../../chunks/VFKNXQXI.js";import{d as O}from"../../../chunks/JST5JGAP.js";import{a as $}from"../../../chunks/CE7D6MUS.js";import{c as V}from"../../../chunks/GCWA4Z3W.js";import{n as D}from"../../../chunks/TPDOUL4N.js";import{g as j}from"../../../chunks/WQQJ7UPJ.js";import{a as g}from"../../../chunks/57HAXNQV.js";import{a as W,b as q}from"../../../chunks/LLM5WDM3.js";import{y as I}from"../../../chunks/IBXYIN7Q.js";import{f as E}from"../../../chunks/UNZRE3YU.js";import{f as S}from"../../../chunks/SSTROLQM.js";import"../../../chunks/3NDVXEBR.js";import{A as be,B as he,C as Te,D as Ae,E as Re,F as Ce,G as Se,H as b,I as h,J as T,K as A,L as R,M as Ee,N as je,O as C,a as Q,b as Y,c as Z,d as N,e as ee,f as oe,g as ie,h as ne,i as te,j as re,k as se,l as pe,m as ae,n as ue,o as de,p as ce,q as le,r as fe,s as ve,t as me,u as Pe,v as we,w as _e,x as ye,y as Me,z as ke}from"../../../chunks/YOENHHKI.js";import"../../../chunks/6ZYLNB2B.js";import"../../../chunks/FUXT7GRK.js";import"../../../chunks/OVK4EEOD.js";import"../../../chunks/R7QPJQP6.js";import"../../../chunks/E7R3J4H7.js";import"../../../chunks/JPOYTTTW.js";import"../../../chunks/LQGPMOD2.js";import"../../../chunks/NSOEDRBU.js";import"../../../chunks/3EFV4FQF.js";import"../../../chunks/XVFLT275.js";import"../../../chunks/5O5ZE3ZV.js";import"../../../chunks/EA6IYKIB.js";import"../../../chunks/KSZMMNXK.js";import"../../../chunks/TNSKEHPC.js";import"../../../chunks/CY75R4FK.js";import"../../../chunks/LIUXNOLP.js";import"../../../chunks/CQCVFRQ5.js";import"../../../chunks/KHJFXJBU.js";import"../../../chunks/WVXW6VL3.js";import"../../../chunks/GIV5JMTE.js";import"../../../chunks/WQ6H62DM.js";import"../../../chunks/QRDDKA4I.js";import"../../../chunks/P4UQGWCP.js";import{b as k}from"../../../chunks/AXYOJBX6.js";import"../../../chunks/Z25UKUJF.js";import{a as v}from"../../../chunks/6IM6A5VA.js";import"../../../chunks/EG6M6SSO.js";import"../../../chunks/MYBDO5SA.js";import"../../../chunks/HIMVOTIU.js";import{a as i}from"../../../chunks/UWOFA6GV.js";import"../../../chunks/73N3TOJL.js";import"../../../chunks/RETS2ZEK.js";import"../../../chunks/5HCXZWUH.js";import"../../../chunks/CXLEQCP3.js";import"../../../chunks/G6HCV67X.js";import{a as c,d as M}from"../../../chunks/5YS5V2LK.js";import"../../../chunks/JXOEJPJ4.js";var X={uniswap_add:{token0:{type:"string",description:"Sorted token0 ERC-20 address (v3)."},token1:{type:"string",description:"Sorted token1 ERC-20 address (v3)."},fee:{type:"number",description:"Pool fee tier in hundredths of a bip."},fullRange:{type:"boolean",description:"For a new v3 position, use the widest ticks aligned to its fee tier; omit explicit ticks."},tickLower:{type:"number"},tickUpper:{type:"number"},amount0Desired:i(),amount1Desired:i(),amount0Min:i(),amount1Min:i(),recipient:{type:"string"},deadline:i(),initialPrice:{type:"string"},sqrtPriceX96:{type:"string"},acceptPriceDeviation:{type:"boolean"}},uniswap_create_pool:{token0:{type:"string",description:"Sorted token0 ERC-20 address (v3)."},token1:{type:"string",description:"Sorted token1 ERC-20 address (v3)."},fee:{type:"number",description:"Pool fee in hundredths of a bip (v3 tier, or v4 static fee in pips)."}},uniswap_collect:{tokenId:i(),recipient:{type:"string"},amount0Max:i(),amount1Max:i()},uniswap_remove:{tokenId:i(),liquidity:{type:"string",pattern:"^(?:[0-9]+|all)$",description:"Positive base-unit liquidity amount, or all for a full burn."},amount0Min:i(),amount1Min:i(),deadline:i(),burn:{type:"boolean"}},uniswap_list_positions:{tokenIds:{type:"array",items:i()}}};function x(e,o){if(e)return typeof e=="function"?e(o):e}function z(e,o,s){let n=o.properties&&typeof o.properties=="object"?o.properties:{},p=s?.tools.find(t=>t.name===e||t.name===e.replace("uniswap_","uniswap_v3_")),l=p?.inputSchema?.properties&&typeof p.inputSchema.properties=="object"?p.inputSchema.properties:{};return{type:"object",properties:{...X[e]??{},...l,...n,version:{type:"string",enum:["v3","v4"],description:'Uniswap protocol version ("v3" or "v4").'}}}}function G(e,o){if(o.version!==void 0){if(o.version==="v3"||o.version==="v4")return o.version;throw new c(`Unsupported Uniswap version "${String(o.version)}". Choose "v3" or "v4".`)}if(e==="uniswap_create_pool")throw new c('Provide version "v3" or "v4" to create a Uniswap pool; the two versions price and key pools differently.');if(e==="uniswap_collect"||e==="uniswap_remove"||o.tokenId!==void 0)throw new c('Provide version "v3" or "v4" for a Uniswap position operation; token IDs overlap between managers.');return o.poolId!==void 0||o.poolKey!==void 0||o.hooks!==void 0||o.currency0!==void 0||o.currency1!==void 0||o.permit2Expiration!==void 0?"v4":o.amount0Desired!==void 0||o.amount1Desired!==void 0||e==="uniswap_collect"&&(o.amount0Max!==void 0||o.amount1Max!==void 0)||o.token0!==void 0&&o.token1!==void 0&&o.tickSpacing===void 0?"v3":"v4"}function m(e,o){let s=e.tools.find(n=>n.name===o||n.name===o.replace("uniswap_","uniswap_v3_")||n.name===o.replace("uniswap_","uniswap_v4_"));if(!s)throw new c(`Tool ${o} is not available on the selected Uniswap part.`);return s}function Qe(e,o){let s=x(o?.v4,e)??C(e),n=x(o?.v3,e)??I(e),p=(t,f)=>({name:t,inputSchema:z(t,f,n),async execute(u,r){if(v(r),t==="uniswap_list_positions"&&u.version===void 0){let d=m(s,"uniswap_list_positions"),[J,w]=await Promise.all([(async()=>{let y=n.tools.find(a=>a.name==="uniswap_list_positions"||a.name==="uniswap_v3_list_positions");if(y){let a=await y.execute({...u,version:"v3"},r);if(Array.isArray(a))return a;if(a&&typeof a=="object"&&Array.isArray(a.positions))return a.positions}return n.positions?n.positions(r):[]})(),d.execute({...u,version:"v4"},r)]),K=Array.isArray(w?.positions)?w.positions:[],_=[...J,...K];return{positions:_,summary:`Found ${_.length} active Uniswap position(s) across v3 and v4 for ${r}.`}}return G(t,u)==="v3"?m(n,t).execute(u,r):m(s,t).execute({...u,version:"v4"},r)}}),l=[p("uniswap_add",b),p("uniswap_collect",T),p("uniswap_remove",A),p("uniswap_list_positions",R),p("uniswap_create_pool",h)];return k("uniswap",[{tools:l,positions:async t=>{v(t);let[f,u]=await Promise.allSettled([n.positions?n.positions(t):Promise.resolve([]),s.positions?s.positions(t):Promise.resolve([])]);return[f,u].flatMap((r,P)=>{if(r.status==="fulfilled")return r.value;let d=P===0?"v3":"v4";return[{module:"uniswap",id:`uniswap-${d}-discovery-unavailable`,chainId:4663,assets:[],incomplete:!0,description:`Uniswap ${d} discovery failed: ${M(r.reason)} The other version's readable positions are retained. Retry uniswap_list_positions {"version":"${d}"}, or provide tokenIds from your NFT receipts to check known positions.`}]})}},q(e),j(e),D(e),U(e),V(e,s),O(e),S(e),H(e),L(e),F(e),E(e),$(e),g(e)])}export{le as ALLOWED_V4_HOOK_ADDRESSES,pe as DEEPEST_V4_POOL_ID,se as MAX_TICK,ae as MEASURED_V4_POOLS,re as MIN_TICK,N as PERMIT2_ADDRESS,ie as USDG_ADDRESS,b as V4_ADD_SCHEMA,T as V4_COLLECT_SCHEMA,h as V4_CREATE_POOL_SCHEMA,te as V4_DYNAMIC_FEE_FLAG,R as V4_LIST_POSITIONS_SCHEMA,Q as V4_POOL_MANAGER,Y as V4_POSITION_MANAGER,A as V4_REMOVE_SCHEMA,Z as V4_STATE_VIEW,ee as V4_UNIVERSAL_ROUTER,ue as VOLATILE_PAIR_HOOK,ce as VOLATILE_PAIR_KEY,de as VOLATILE_PAIR_POOL_ID,oe as WETH_ADDRESS,ne as ZERO_ADDRESS,be as amountsForLiquidity,ve as computePoolId,Qe as createModule,C as createModulePart,je as createV4Part,ke as decodePackedPositionInfo,Pe as describeV4FeeBehavior,Me as encodePermit2Approve,Te as formatSignedPreviewChanges,_e as fullRangeTicks,me as isDynamicFeePool,fe as isNativeV4Currency,he as liquidityForAmounts,W as listUniswapPools,Se as readV4Positions,Re as resolveCurrencyToken,Ce as resolvePositionPoolKey,Ae as tokenForCurrency,Ee as v4ReferencePrices,ye as validateTickRange,we as validateV4PoolKey};
|
|
@@ -1 +1 @@
|
|
|
1
|
-
import{b as X}from"../../../chunks/
|
|
1
|
+
import{b as X}from"../../../chunks/VCLPOU7T.js";import{b as J}from"../../../chunks/PEA32CWB.js";import{b as K}from"../../../chunks/VFKNXQXI.js";import{d as $}from"../../../chunks/JST5JGAP.js";import{a as j}from"../../../chunks/CE7D6MUS.js";import{a as P,c as z}from"../../../chunks/GCWA4Z3W.js";import{c as A,d as I,n as H}from"../../../chunks/TPDOUL4N.js";import{b as M,e as g,g as W}from"../../../chunks/WQQJ7UPJ.js";import{d as U,g as S,y as G}from"../../../chunks/IBXYIN7Q.js";import{f as C}from"../../../chunks/UNZRE3YU.js";import{f as V}from"../../../chunks/SSTROLQM.js";import{c as O}from"../../../chunks/3NDVXEBR.js";import{N as T,b as v,d as D,e as F}from"../../../chunks/YOENHHKI.js";import"../../../chunks/6ZYLNB2B.js";import"../../../chunks/FUXT7GRK.js";import"../../../chunks/OVK4EEOD.js";import"../../../chunks/R7QPJQP6.js";import"../../../chunks/E7R3J4H7.js";import"../../../chunks/JPOYTTTW.js";import"../../../chunks/LQGPMOD2.js";import"../../../chunks/NSOEDRBU.js";import"../../../chunks/3EFV4FQF.js";import"../../../chunks/XVFLT275.js";import"../../../chunks/5O5ZE3ZV.js";import"../../../chunks/EA6IYKIB.js";import"../../../chunks/KSZMMNXK.js";import"../../../chunks/TNSKEHPC.js";import{a as B,b as L,c as q}from"../../../chunks/CY75R4FK.js";import"../../../chunks/LIUXNOLP.js";import"../../../chunks/CQCVFRQ5.js";import"../../../chunks/KHJFXJBU.js";import"../../../chunks/WVXW6VL3.js";import"../../../chunks/GIV5JMTE.js";import"../../../chunks/WQ6H62DM.js";import"../../../chunks/QRDDKA4I.js";import"../../../chunks/P4UQGWCP.js";import{a as R}from"../../../chunks/AXYOJBX6.js";import"../../../chunks/Z25UKUJF.js";import"../../../chunks/6IM6A5VA.js";import"../../../chunks/EG6M6SSO.js";import"../../../chunks/MYBDO5SA.js";import"../../../chunks/HIMVOTIU.js";import"../../../chunks/UWOFA6GV.js";import{g as y}from"../../../chunks/73N3TOJL.js";import"../../../chunks/RETS2ZEK.js";import"../../../chunks/5HCXZWUH.js";import"../../../chunks/CXLEQCP3.js";import{a as E,i as k}from"../../../chunks/G6HCV67X.js";import{a as f}from"../../../chunks/5YS5V2LK.js";import"../../../chunks/JXOEJPJ4.js";import{decodeFunctionData as c,encodeFunctionData as l,erc20Abi as Q,getAddress as h,toFunctionSelector as Y}from"viem";var Z=new Set(["uniswap_swap_batch","uniswap_create_auction","uniswap_position_manage","uniswap_protocol_admin","uniswap_create_pool","uniswap_wrap","uniswap_v2_add","uniswap_v2_remove","uniswap_swap","uniswap_batch","uniswap_token_jar_release","uniswap_auction_bid","uniswap_auction_exit","uniswap_auction_claim","uniswap_auction_checkpoint","uniswap_auction_sweep_currency","uniswap_auction_sweep_tokens"]);function tt(n,a){return Z.has(n)||n==="uniswap_add"&&(a.initialPrice!==void 0||a.sqrtPriceX96!==void 0)}async function At(n,a,w,p){if(!tt(n,a))throw new f("Unknown Uniswap feature action.");let o=async()=>{throw new f("Uniswap local reconstruction cannot use an off-chain service.")},e=R({clientFor:()=>p,http:o,preview:q({clientFor:()=>p}),quoteSwap:o,buildSwap:o}),u=[W(e),H(e),$(e),V(e),X(e),K(e),J(e),C(e),j(e),z(e,T(e))];if(n==="uniswap_create_pool"||n==="uniswap_add"){if(a.version!=="v3"&&a.version!=="v4")throw new f("Provide an explicit v3 or v4 version for pool creation.");u.push(a.version==="v3"?G(e):T(e))}let d=await u.flatMap(r=>r.tools).find(r=>r.name===n).execute(a,w),t=(await p.getBlock()).timestamp,i=new Map,b=(r,s)=>{let _=r.toLowerCase(),N=i.get(_);i.set(_,{token:r,amount:N&&N.amount>s?N.amount:s})},x=0n;for(let r of d.txs){x+=BigInt(r.value);try{let s=c({abi:Q,data:r.data});s.functionName==="approve"&&b(r.to,s.args[1])}catch{}}if(x>0n&&b(B,x),n==="uniswap_swap"&&b(L(O(a.tokenIn)),BigInt(String(a.amountOut!==void 0?a.maxAmountIn:a.amountIn))),n==="uniswap_create_auction"&&i.set(String(a.token).toLowerCase(),{token:h(String(a.token)),amount:BigInt(String(a.amount)),to:d.auction}),n==="uniswap_position_manage"){let r=a.version==="v3"?U.positionManager:v,s=BigInt(String(a.tokenId));i.delete(r.toLowerCase()),i.set(`nft:${s}`,{token:r,amount:1n,id:s,...a.operation==="burn"?{to:"0x0000000000000000000000000000000000000000"}:a.operation==="transfer"?{to:h(String(a.target))}:{}})}if(n==="uniswap_wrap"&&a.direction==="unwrap"&&b(h(k[4663].uniswap.WETH.address),BigInt(String(a.amount))),n==="uniswap_batch")for(let r of a.operations){let s=r.arguments;if(r.name==="uniswap_remove"&&(s.liquidity==="all"||s.burn===!0||s.fullExit===!0)){let _=BigInt(String(s.tokenId));i.set(`nft:${_}`,{token:v,amount:1n,id:_,to:"0x0000000000000000000000000000000000000000"})}}return{txs:d.txs,inputs:[...i.values()],now:t}}function It(n,a,w){if(n.length!==a.length)throw new f("Uniswap transactions differ from the local reconstruction.");for(let p=0;p<n.length;p++){let o=n[p],e=a[p];if(o.chainId!==E||!y(o.to,e.to)||o.value!==e.value)throw new f("Uniswap destination, chain or payment differs from the local reconstruction.");let u=o.data,m=h(o.to),d=(t,i)=>{if(t<=w||t>w+i)throw new f("Uniswap deadline/expiry is stale or exceeds the local lifetime.")};if(m===F){let t=c({abi:A,data:o.data}).args,i=c({abi:A,data:e.data}).args;d(t[2],300n),u=l({abi:A,functionName:"execute",args:[t[0],t[1],i[2]]})}else if(m===D){let t=c({abi:I,data:o.data}).args,i=c({abi:I,data:e.data}).args;d(BigInt(t[3]),BigInt(i[3])-w),u=l({abi:I,functionName:"approve",args:[t[0],t[1],t[2],i[3]]})}else if(m===v&&o.data.slice(0,10)===Y("modifyLiquidities(bytes,uint256)")){let t=c({abi:P,data:o.data}).args,i=c({abi:P,data:e.data}).args;d(t[1],1800n),u=l({abi:P,functionName:"modifyLiquidities",args:[t[0],i[1]]})}else if(m===U.positionManager&&o.data.slice(0,10)==="0x88316456"){let t=c({abi:S,data:o.data}),i=c({abi:S,data:e.data});t.functionName==="mint"&&i.functionName==="mint"&&(d(t.args[0].deadline,1800n),u=l({abi:S,functionName:"mint",args:[{...t.args[0],deadline:i.args[0].deadline}]}))}else if(m===M){let t=c({abi:g,data:o.data}),i=c({abi:g,data:e.data});t.functionName==="addLiquidity"&&i.functionName==="addLiquidity"?(d(t.args[7],300n),u=l({abi:g,functionName:"addLiquidity",args:[t.args[0],t.args[1],t.args[2],t.args[3],t.args[4],t.args[5],t.args[6],i.args[7]]})):t.functionName==="removeLiquidity"&&i.functionName==="removeLiquidity"&&(d(t.args[6],300n),u=l({abi:g,functionName:"removeLiquidity",args:[t.args[0],t.args[1],t.args[2],t.args[3],t.args[4],t.args[5],i.args[6]]}))}if(!y(u,e.data))throw new f("Uniswap calldata differs from the locally reconstructed caller terms.")}}export{Z as UNISWAP_FEATURE_ACTIONS,It as assertUniswapFeatureTransactions,tt as isUniswapFeatureAction,At as reconstructUniswapFeature};
|
|
@@ -1 +1 @@
|
|
|
1
|
-
import{a,b}from"../../../chunks/
|
|
1
|
+
import{a,b}from"../../../chunks/LLM5WDM3.js";import"../../../chunks/IBXYIN7Q.js";import"../../../chunks/YOENHHKI.js";import"../../../chunks/6ZYLNB2B.js";import"../../../chunks/FUXT7GRK.js";import"../../../chunks/OVK4EEOD.js";import"../../../chunks/R7QPJQP6.js";import"../../../chunks/E7R3J4H7.js";import"../../../chunks/JPOYTTTW.js";import"../../../chunks/LQGPMOD2.js";import"../../../chunks/NSOEDRBU.js";import"../../../chunks/3EFV4FQF.js";import"../../../chunks/XVFLT275.js";import"../../../chunks/5O5ZE3ZV.js";import"../../../chunks/EA6IYKIB.js";import"../../../chunks/KSZMMNXK.js";import"../../../chunks/TNSKEHPC.js";import"../../../chunks/CY75R4FK.js";import"../../../chunks/LIUXNOLP.js";import"../../../chunks/CQCVFRQ5.js";import"../../../chunks/KHJFXJBU.js";import"../../../chunks/WVXW6VL3.js";import"../../../chunks/GIV5JMTE.js";import"../../../chunks/WQ6H62DM.js";import"../../../chunks/QRDDKA4I.js";import"../../../chunks/P4UQGWCP.js";import"../../../chunks/AXYOJBX6.js";import"../../../chunks/Z25UKUJF.js";import"../../../chunks/6IM6A5VA.js";import"../../../chunks/EG6M6SSO.js";import"../../../chunks/MYBDO5SA.js";import"../../../chunks/HIMVOTIU.js";import"../../../chunks/UWOFA6GV.js";import"../../../chunks/73N3TOJL.js";import"../../../chunks/RETS2ZEK.js";import"../../../chunks/5HCXZWUH.js";import"../../../chunks/CXLEQCP3.js";import"../../../chunks/G6HCV67X.js";import"../../../chunks/5YS5V2LK.js";import"../../../chunks/JXOEJPJ4.js";export{b as createPoolReadPart,a as listUniswapPools};
|
|
@@ -1 +1 @@
|
|
|
1
|
-
import{a,b}from"../../../chunks/
|
|
1
|
+
import{a,b}from"../../../chunks/PEA32CWB.js";import"../../../chunks/IBXYIN7Q.js";import"../../../chunks/3NDVXEBR.js";import"../../../chunks/YOENHHKI.js";import"../../../chunks/6ZYLNB2B.js";import"../../../chunks/FUXT7GRK.js";import"../../../chunks/OVK4EEOD.js";import"../../../chunks/R7QPJQP6.js";import"../../../chunks/E7R3J4H7.js";import"../../../chunks/JPOYTTTW.js";import"../../../chunks/LQGPMOD2.js";import"../../../chunks/NSOEDRBU.js";import"../../../chunks/3EFV4FQF.js";import"../../../chunks/XVFLT275.js";import"../../../chunks/5O5ZE3ZV.js";import"../../../chunks/EA6IYKIB.js";import"../../../chunks/KSZMMNXK.js";import"../../../chunks/TNSKEHPC.js";import"../../../chunks/CY75R4FK.js";import"../../../chunks/LIUXNOLP.js";import"../../../chunks/CQCVFRQ5.js";import"../../../chunks/KHJFXJBU.js";import"../../../chunks/WVXW6VL3.js";import"../../../chunks/GIV5JMTE.js";import"../../../chunks/WQ6H62DM.js";import"../../../chunks/QRDDKA4I.js";import"../../../chunks/P4UQGWCP.js";import"../../../chunks/AXYOJBX6.js";import"../../../chunks/Z25UKUJF.js";import"../../../chunks/6IM6A5VA.js";import"../../../chunks/EG6M6SSO.js";import"../../../chunks/MYBDO5SA.js";import"../../../chunks/HIMVOTIU.js";import"../../../chunks/UWOFA6GV.js";import"../../../chunks/73N3TOJL.js";import"../../../chunks/RETS2ZEK.js";import"../../../chunks/5HCXZWUH.js";import"../../../chunks/CXLEQCP3.js";import"../../../chunks/G6HCV67X.js";import"../../../chunks/5YS5V2LK.js";import"../../../chunks/JXOEJPJ4.js";export{b as createPositionPart,a as positionRightsAbi};
|
|
@@ -1 +1 @@
|
|
|
1
|
-
import{a,b}from"../../../chunks/
|
|
1
|
+
import{a,b}from"../../../chunks/VFKNXQXI.js";import"../../../chunks/WQQJ7UPJ.js";import"../../../chunks/IBXYIN7Q.js";import"../../../chunks/3NDVXEBR.js";import"../../../chunks/YOENHHKI.js";import"../../../chunks/6ZYLNB2B.js";import"../../../chunks/FUXT7GRK.js";import"../../../chunks/OVK4EEOD.js";import"../../../chunks/R7QPJQP6.js";import"../../../chunks/E7R3J4H7.js";import"../../../chunks/JPOYTTTW.js";import"../../../chunks/LQGPMOD2.js";import"../../../chunks/NSOEDRBU.js";import"../../../chunks/3EFV4FQF.js";import"../../../chunks/XVFLT275.js";import"../../../chunks/5O5ZE3ZV.js";import"../../../chunks/EA6IYKIB.js";import"../../../chunks/KSZMMNXK.js";import"../../../chunks/TNSKEHPC.js";import"../../../chunks/CY75R4FK.js";import"../../../chunks/LIUXNOLP.js";import"../../../chunks/CQCVFRQ5.js";import"../../../chunks/KHJFXJBU.js";import"../../../chunks/WVXW6VL3.js";import"../../../chunks/GIV5JMTE.js";import"../../../chunks/WQ6H62DM.js";import"../../../chunks/QRDDKA4I.js";import"../../../chunks/P4UQGWCP.js";import"../../../chunks/AXYOJBX6.js";import"../../../chunks/Z25UKUJF.js";import"../../../chunks/6IM6A5VA.js";import"../../../chunks/EG6M6SSO.js";import"../../../chunks/MYBDO5SA.js";import"../../../chunks/HIMVOTIU.js";import"../../../chunks/UWOFA6GV.js";import"../../../chunks/73N3TOJL.js";import"../../../chunks/RETS2ZEK.js";import"../../../chunks/5HCXZWUH.js";import"../../../chunks/CXLEQCP3.js";import"../../../chunks/G6HCV67X.js";import"../../../chunks/5YS5V2LK.js";import"../../../chunks/JXOEJPJ4.js";export{b as createProtocolPart,a as protocolAbi};
|
|
@@ -1 +1 @@
|
|
|
1
|
-
import{a}from"../../../chunks/
|
|
1
|
+
import{a}from"../../../chunks/CE7D6MUS.js";import"../../../chunks/TPDOUL4N.js";import"../../../chunks/WQQJ7UPJ.js";import"../../../chunks/3NDVXEBR.js";import"../../../chunks/YOENHHKI.js";import"../../../chunks/6ZYLNB2B.js";import"../../../chunks/FUXT7GRK.js";import"../../../chunks/OVK4EEOD.js";import"../../../chunks/R7QPJQP6.js";import"../../../chunks/E7R3J4H7.js";import"../../../chunks/JPOYTTTW.js";import"../../../chunks/LQGPMOD2.js";import"../../../chunks/NSOEDRBU.js";import"../../../chunks/3EFV4FQF.js";import"../../../chunks/XVFLT275.js";import"../../../chunks/5O5ZE3ZV.js";import"../../../chunks/EA6IYKIB.js";import"../../../chunks/KSZMMNXK.js";import"../../../chunks/TNSKEHPC.js";import"../../../chunks/CY75R4FK.js";import"../../../chunks/LIUXNOLP.js";import"../../../chunks/CQCVFRQ5.js";import"../../../chunks/KHJFXJBU.js";import"../../../chunks/WVXW6VL3.js";import"../../../chunks/GIV5JMTE.js";import"../../../chunks/WQ6H62DM.js";import"../../../chunks/QRDDKA4I.js";import"../../../chunks/P4UQGWCP.js";import"../../../chunks/AXYOJBX6.js";import"../../../chunks/Z25UKUJF.js";import"../../../chunks/6IM6A5VA.js";import"../../../chunks/EG6M6SSO.js";import"../../../chunks/MYBDO5SA.js";import"../../../chunks/HIMVOTIU.js";import"../../../chunks/UWOFA6GV.js";import"../../../chunks/73N3TOJL.js";import"../../../chunks/RETS2ZEK.js";import"../../../chunks/5HCXZWUH.js";import"../../../chunks/CXLEQCP3.js";import"../../../chunks/G6HCV67X.js";import"../../../chunks/5YS5V2LK.js";import"../../../chunks/JXOEJPJ4.js";export{a as createTradeBatchPart};
|
|
@@ -1 +1 @@
|
|
|
1
|
-
import{a,b,c,d,e,f,g,h,i,j,k,l,m,n}from"../../../chunks/
|
|
1
|
+
import{a,b,c,d,e,f,g,h,i,j,k,l,m,n}from"../../../chunks/TPDOUL4N.js";import"../../../chunks/WQQJ7UPJ.js";import"../../../chunks/3NDVXEBR.js";import"../../../chunks/YOENHHKI.js";import"../../../chunks/6ZYLNB2B.js";import"../../../chunks/FUXT7GRK.js";import"../../../chunks/OVK4EEOD.js";import"../../../chunks/R7QPJQP6.js";import"../../../chunks/E7R3J4H7.js";import"../../../chunks/JPOYTTTW.js";import"../../../chunks/LQGPMOD2.js";import"../../../chunks/NSOEDRBU.js";import"../../../chunks/3EFV4FQF.js";import"../../../chunks/XVFLT275.js";import"../../../chunks/5O5ZE3ZV.js";import"../../../chunks/EA6IYKIB.js";import"../../../chunks/KSZMMNXK.js";import"../../../chunks/TNSKEHPC.js";import"../../../chunks/CY75R4FK.js";import"../../../chunks/LIUXNOLP.js";import"../../../chunks/CQCVFRQ5.js";import"../../../chunks/KHJFXJBU.js";import"../../../chunks/WVXW6VL3.js";import"../../../chunks/GIV5JMTE.js";import"../../../chunks/WQ6H62DM.js";import"../../../chunks/QRDDKA4I.js";import"../../../chunks/P4UQGWCP.js";import"../../../chunks/AXYOJBX6.js";import"../../../chunks/Z25UKUJF.js";import"../../../chunks/6IM6A5VA.js";import"../../../chunks/EG6M6SSO.js";import"../../../chunks/MYBDO5SA.js";import"../../../chunks/HIMVOTIU.js";import"../../../chunks/UWOFA6GV.js";import"../../../chunks/73N3TOJL.js";import"../../../chunks/RETS2ZEK.js";import"../../../chunks/5HCXZWUH.js";import"../../../chunks/CXLEQCP3.js";import"../../../chunks/G6HCV67X.js";import"../../../chunks/5YS5V2LK.js";import"../../../chunks/JXOEJPJ4.js";export{a as V3_QUOTER,b as V4_QUOTER,n as createTradePart,d as permitAbi,k as swapV2Params,j as swapV3Params,g as swapV4MultiParams,i as swapV4Params,m as trade,c as universalRouterAbi,l as v3Path,e as v3QuoterAbi,h as v4Path,f as v4QuoterAbi};
|
|
@@ -1 +1 @@
|
|
|
1
|
-
import{A,B,C,D,E,F,G,H,I,J,K,L,M,N,O,a,b,c,d,e,f,g,h,i,j,k,l,m,n,o,p,q,r,s,t,u,v,w,x,y,z}from"../../../chunks/
|
|
1
|
+
import{A,B,C,D,E,F,G,H,I,J,K,L,M,N,O,a,b,c,d,e,f,g,h,i,j,k,l,m,n,o,p,q,r,s,t,u,v,w,x,y,z}from"../../../chunks/YOENHHKI.js";import"../../../chunks/6ZYLNB2B.js";import"../../../chunks/FUXT7GRK.js";import"../../../chunks/OVK4EEOD.js";import"../../../chunks/R7QPJQP6.js";import"../../../chunks/E7R3J4H7.js";import"../../../chunks/JPOYTTTW.js";import"../../../chunks/LQGPMOD2.js";import"../../../chunks/NSOEDRBU.js";import"../../../chunks/3EFV4FQF.js";import"../../../chunks/XVFLT275.js";import"../../../chunks/5O5ZE3ZV.js";import"../../../chunks/EA6IYKIB.js";import"../../../chunks/KSZMMNXK.js";import"../../../chunks/TNSKEHPC.js";import"../../../chunks/CY75R4FK.js";import"../../../chunks/LIUXNOLP.js";import"../../../chunks/CQCVFRQ5.js";import"../../../chunks/KHJFXJBU.js";import"../../../chunks/WVXW6VL3.js";import"../../../chunks/GIV5JMTE.js";import"../../../chunks/WQ6H62DM.js";import"../../../chunks/QRDDKA4I.js";import"../../../chunks/P4UQGWCP.js";import"../../../chunks/AXYOJBX6.js";import"../../../chunks/Z25UKUJF.js";import"../../../chunks/6IM6A5VA.js";import"../../../chunks/EG6M6SSO.js";import"../../../chunks/MYBDO5SA.js";import"../../../chunks/HIMVOTIU.js";import"../../../chunks/UWOFA6GV.js";import"../../../chunks/73N3TOJL.js";import"../../../chunks/RETS2ZEK.js";import"../../../chunks/5HCXZWUH.js";import"../../../chunks/CXLEQCP3.js";import"../../../chunks/G6HCV67X.js";import"../../../chunks/5YS5V2LK.js";import"../../../chunks/JXOEJPJ4.js";export{q as ALLOWED_V4_HOOK_ADDRESSES,l as DEEPEST_V4_POOL_ID,k as MAX_TICK,m as MEASURED_V4_POOLS,j as MIN_TICK,d as PERMIT2_ADDRESS,g as USDG_ADDRESS,H as V4_ADD_SCHEMA,J as V4_COLLECT_SCHEMA,I as V4_CREATE_POOL_SCHEMA,i as V4_DYNAMIC_FEE_FLAG,L as V4_LIST_POSITIONS_SCHEMA,a as V4_POOL_MANAGER,b as V4_POSITION_MANAGER,K as V4_REMOVE_SCHEMA,c as V4_STATE_VIEW,e as V4_UNIVERSAL_ROUTER,n as VOLATILE_PAIR_HOOK,p as VOLATILE_PAIR_KEY,o as VOLATILE_PAIR_POOL_ID,f as WETH_ADDRESS,h as ZERO_ADDRESS,A as amountsForLiquidity,s as computePoolId,O as createModulePart,N as createV4Part,z as decodePackedPositionInfo,u as describeV4FeeBehavior,y as encodePermit2Approve,C as formatSignedPreviewChanges,w as fullRangeTicks,t as isDynamicFeePool,r as isNativeV4Currency,B as liquidityForAmounts,G as readV4Positions,E as resolveCurrencyToken,F as resolvePositionPoolKey,D as tokenForCurrency,M as v4ReferencePrices,x as validateTickRange,v as validateV4PoolKey};
|
|
@@ -1 +1 @@
|
|
|
1
|
-
import{a,b}from"../../../chunks/
|
|
1
|
+
import{a,b}from"../../../chunks/VCLPOU7T.js";import"../../../chunks/3NDVXEBR.js";import"../../../chunks/YOENHHKI.js";import"../../../chunks/6ZYLNB2B.js";import"../../../chunks/FUXT7GRK.js";import"../../../chunks/OVK4EEOD.js";import"../../../chunks/R7QPJQP6.js";import"../../../chunks/E7R3J4H7.js";import"../../../chunks/JPOYTTTW.js";import"../../../chunks/LQGPMOD2.js";import"../../../chunks/NSOEDRBU.js";import"../../../chunks/3EFV4FQF.js";import"../../../chunks/XVFLT275.js";import"../../../chunks/5O5ZE3ZV.js";import"../../../chunks/EA6IYKIB.js";import"../../../chunks/KSZMMNXK.js";import"../../../chunks/TNSKEHPC.js";import"../../../chunks/CY75R4FK.js";import"../../../chunks/LIUXNOLP.js";import"../../../chunks/CQCVFRQ5.js";import"../../../chunks/KHJFXJBU.js";import"../../../chunks/WVXW6VL3.js";import"../../../chunks/GIV5JMTE.js";import"../../../chunks/WQ6H62DM.js";import"../../../chunks/QRDDKA4I.js";import"../../../chunks/P4UQGWCP.js";import"../../../chunks/AXYOJBX6.js";import"../../../chunks/Z25UKUJF.js";import"../../../chunks/6IM6A5VA.js";import"../../../chunks/EG6M6SSO.js";import"../../../chunks/MYBDO5SA.js";import"../../../chunks/HIMVOTIU.js";import"../../../chunks/UWOFA6GV.js";import"../../../chunks/73N3TOJL.js";import"../../../chunks/RETS2ZEK.js";import"../../../chunks/5HCXZWUH.js";import"../../../chunks/CXLEQCP3.js";import"../../../chunks/G6HCV67X.js";import"../../../chunks/5YS5V2LK.js";import"../../../chunks/JXOEJPJ4.js";export{b as createWrapPart,a as wethAbi};
|
|
@@ -1 +1 @@
|
|
|
1
|
-
import{d as b,g as W,h as j,m as z}from"./IBXYIN7Q.js";import{a as B,e as F,g as R}from"./3NDVXEBR.js";import{b as C,c as q,s as X,z as D}from"./
|
|
1
|
+
import{d as b,g as W,h as j,m as z}from"./IBXYIN7Q.js";import{a as B,e as F,g as R}from"./3NDVXEBR.js";import{b as C,c as q,s as X,z as D}from"./YOENHHKI.js";import{a as U}from"./UWOFA6GV.js";import{g as T}from"./73N3TOJL.js";import{a as O}from"./G6HCV67X.js";import{a as c}from"./5YS5V2LK.js";import{decodeEventLog as J,parseAbi as V,toEventSelector as Z,toHex as x}from"viem";var K=V(["function getPositionInfo(bytes32 poolId,address owner,int24 tickLower,int24 tickUpper,bytes32 salt) view returns (uint128 liquidity,uint256 feeGrowthInside0LastX128,uint256 feeGrowthInside1LastX128)","function getFeeGrowthInside(bytes32 poolId,int24 tickLower,int24 tickUpper) view returns (uint256,uint256)"]),Q=V(["function ownerOf(uint256) view returns (address)","function getPoolAndPositionInfo(uint256) view returns ((address currency0,address currency1,uint24 fee,int24 tickSpacing,address hooks),uint256)"]),A=V(["function slot0() view returns (uint160,int24,uint16,uint16,uint16,uint8,bool)","function feeGrowthGlobal0X128() view returns (uint256)","function feeGrowthGlobal1X128() view returns (uint256)","function ticks(int24) view returns (uint128,int128,uint256,uint256,int56,uint160,uint32,bool)"]),$=(1n<<256n)-1n,ee=1n<<128n,P=(s,t)=>s-t&$;function G(s,t,r,n=0n){return P(s,t)*r/ee+n}function ue(s){return{tools:[{name:"uniswap_fees",inputSchema:{type:"object",additionalProperties:!1,required:["version","tokenId"],properties:{includeHistory:{type:"boolean",description:"V3 only: read the complete NFT collect/decrease event history for lifetime fees. This can require multiple RPC log windows."},version:{type:"string",enum:["v3","v4"]},tokenId:U()}},async execute(t){if(R(t,["version","tokenId","includeHistory"]),t.includeHistory!==void 0&&typeof t.includeHistory!="boolean")throw new c("includeHistory must be a boolean.");if(t.includeHistory===!0&&t.version!=="v3")throw new c("V4 position lifetime fees need historical liquidity/fee-growth checkpoints; no verified history source is configured.");let r=B(t.tokenId,"tokenId"),n=s.clientFor(O),i=await n.getBlockNumber();if(t.version!=="v3"&&t.version!=="v4")throw new c("Provide version v3 or v4 for fee reads.");let _=await n.readContract({address:t.version==="v4"?C:b.positionManager,abi:Q,functionName:"ownerOf",args:[r],blockNumber:i}),v,m,a,d,u,w=0n,p=0n;if(t.version==="v4"){let[e,f]=await n.readContract({address:C,abi:Q,functionName:"getPoolAndPositionInfo",args:[r],blockNumber:i}),{tickLower:h,tickUpper:N}=D(f),S=X(e),[k,I]=await Promise.all([n.readContract({address:q,abi:K,functionName:"getPositionInfo",args:[S,C,h,N,x(r,{size:32})],blockNumber:i}),n.readContract({address:q,abi:K,functionName:"getFeeGrowthInside",args:[S,h,N],blockNumber:i})]);[v,m,a]=[e.currency0,e.currency1,k[0]],[d,u]=[G(I[0],k[1],a),G(I[1],k[2],a)]}else if(t.version==="v3"){let e=z(await n.readContract({address:b.positionManager,abi:W,functionName:"positions",args:[r],blockNumber:i})),f=await n.readContract({address:b.factory,abi:j,functionName:"getPool",args:[e.token0,e.token1,e.fee],blockNumber:i}),[h,N,S,k,I]=await Promise.all([n.readContract({address:f,abi:A,functionName:"slot0",blockNumber:i}),n.readContract({address:f,abi:A,functionName:"feeGrowthGlobal0X128",blockNumber:i}),n.readContract({address:f,abi:A,functionName:"feeGrowthGlobal1X128",blockNumber:i}),n.readContract({address:f,abi:A,functionName:"ticks",args:[e.tickLower],blockNumber:i}),n.readContract({address:f,abi:A,functionName:"ticks",args:[e.tickUpper],blockNumber:i})]),M=(L,E,H)=>P(P(L,h[1]>=e.tickLower?E:P(L,E)),h[1]<e.tickUpper?H:P(L,H));[v,m,a]=[e.token0,e.token1,e.liquidity],[w,p]=[e.tokensOwed0,e.tokensOwed1],[d,u]=[G(M(N,k[2],I[2]),e.feeGrowthInside0LastX128,a,e.tokensOwed0),G(M(S,k[3],I[3]),e.feeGrowthInside1LastX128,a,e.tokensOwed1)]}else throw new c('Provide version "v3" or "v4" for fee reads.');let[o,g]=await Promise.all([F(s,v,i),F(s,m,i)]),y=[{token:o,amount:d.toString()},{token:g,amount:u.toString()}],l=t.includeHistory===!0?await te(s,r,i,d,u):void 0;return{version:t.version,tokenId:r.toString(),owner:_,blockNumber:i.toString(),liquidity:a.toString(),...t.version==="v4"?{uncollected:y}:{},collectable:y,feeGrowthAccrual:[{token:o,amount:(d-w).toString()},{token:g,amount:(u-p).toString()}],tokensOwed:[{token:o,amount:w.toString()},{token:g,amount:p.toString()}],...l?{lifetimeFees:[{token:o,amount:l[0].toString()},{token:g,amount:l[1].toString()}]}:{},summary:"One-block collectable estimate, excluding gas. V3 tokensOwed may include withdrawn principal; feeGrowthAccrual excludes those stored amounts. V4 hook accounting can change actual collections. V4 current liquidity times lifetime range growth is not lifetime position earnings."}}}]}}var Y=V(["event IncreaseLiquidity(uint256 indexed tokenId,uint128 liquidity,uint256 amount0,uint256 amount1)","event DecreaseLiquidity(uint256 indexed tokenId,uint128 liquidity,uint256 amount0,uint256 amount1)","event Collect(uint256 indexed tokenId,address recipient,uint256 amount0,uint256 amount1)"]);async function te(s,t,r,n,i){let _=s.clientFor(O),v=Y.map(o=>Z(o)),m=0n,a=0n,d=0n,u=0n,w=0;for(let o=0n;o<=r;o+=10000000n){let g=o+9999999n<r?o+9999999n:r,y=await _.request({method:"eth_getLogs",params:[{address:b.positionManager,topics:[v,x(t,{size:32})],fromBlock:x(o),toBlock:x(g)}]});if(!Array.isArray(y))throw new c("V3 lifetime fee history is unavailable; do not treat missing history as zero earnings.");for(let l of y){if(!T(l.address,b.positionManager))throw new c("Unexpected contract in v3 lifetime fee history.");let e=J({abi:Y,data:l.data,topics:l.topics});if(e.args.tokenId!==t)throw new c("Unexpected NFT in v3 fee history.");e.eventName==="Collect"?(m+=e.args.amount0,a+=e.args.amount1):e.eventName==="DecreaseLiquidity"?(d+=e.args.amount0,u+=e.args.amount1):w++}}if(w===0)throw new c("V3 mint/increase history is missing for this existing NFT; lifetime earnings are unknown.");let p=[m+n-d,a+i-u];if(p.some(o=>o<0n))throw new c("V3 fee history is incomplete or inconsistent; lifetime earnings are unknown.");return p}export{K as a,P as b,G as c,ue as d};
|
|
@@ -1 +1 @@
|
|
|
1
|
-
import{c as g,d as H,m as M}from"./
|
|
1
|
+
import{c as g,d as H,m as M}from"./TPDOUL4N.js";import{f as k,g as C}from"./3NDVXEBR.js";import{d,e as s,y as _}from"./YOENHHKI.js";import{g as h}from"./73N3TOJL.js";import{a as w}from"./G6HCV67X.js";import{a as t}from"./5YS5V2LK.js";import{decodeFunctionData as b,encodeFunctionData as B,erc20Abi as $,getAddress as O}from"viem";function K(u){return{tools:[{name:"uniswap_swap_batch",inputSchema:{type:"object",additionalProperties:!1,required:["routes"],properties:{routes:{type:"array",minItems:1,maxItems:20,items:{type:"object",description:"Complete uniswap_swap arguments, including an absolute minAmountOut or maxAmountIn."}}}},async execute(n,v){if(C(n,["routes"]),!Array.isArray(n.routes)||n.routes.length<1||n.routes.length>20)throw new t("Provide 1 to 20 explicit bounded Uniswap routes.");let c=new Map,i="0x",A=0n,a,m=[],y=new Set;for(let e of n.routes){if(!e||typeof e!="object"||Array.isArray(e))throw new t("Each route must contain uniswap_swap arguments.");let I=await M(u,e,v,!1);if(!("txs"in I))throw new t("Route did not build swap transactions.");let E=I.txs;for(let r of E.slice(0,-1))if(h(r.to,d)){let[o,D,N,S]=b({abi:H,data:r.data}).args;if(D!==s)throw new t("Unexpected route approval spender.");let T=o.toLowerCase(),p=c.get(T),U=(p?.amount??0n)+N;if(U>=1n<<160n)throw new t("Combined input approvals exceed uint160.");c.set(T,{token:o,amount:U,expiration:p&&p.expiration<BigInt(S)?p.expiration:BigInt(S)})}else{let o=b({abi:$,data:r.data});if(o.functionName!=="approve"||!h(o.args[0],d))throw new t("Unexpected route prerequisite.")}let f=E.at(-1);if(f.to!==s)throw new t("Route does not use the pinned Universal Router.");A+=BigInt(f.value);let[j,x,P]=b({abi:g,data:f.data}).args,R=j.slice(2).match(/../g)??[];if(R.length!==x.length)throw new t("Unexpected route command/parameter count.");R.forEach((r,o)=>{r==="04"?y.add(x[o]):(i=`${i}${r}`,m.push(x[o]))}),a=a===void 0||P<a?P:a}for(let e of y)i=`${i}04`,m.push(e);let l=[];for(let e of c.values())l.push(u.approval(O(e.token),d,e.amount.toString(),w),_(e.token,s,e.amount.toString(),e.expiration.toString()));return l.push(u.unsignedTx({to:s,data:B({abi:g,functionName:"execute",args:[i,m,a]}),value:A.toString(),chainId:w,description:`Atomically execute ${n.routes.length} caller-selected v2/v3/v4 routes, preserving each route's trade bound.`})),k(u,l,v,"Explicit mixed-version/split routes; every route must meet its own bound. No automatic best-route search or allow-revert branch. The wallet must fund each independently previewed route.")}}]}}export{K as a};
|