@wormhole-foundation/wormhole-connect 3.0.0-beta.6-development → 3.0.0-beta.7-development
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/dist/assets/{aptos-174MkQkp.js → aptos-D9VsvuGi.js} +2 -2
- package/dist/assets/{ccip-Clh7lDFd.js → ccip-u-dcupj6.js} +1 -1
- package/dist/assets/{create-BrCILL-b.js → create-CPwTP7kz.js} +1 -1
- package/dist/assets/{evm-Dxka2v4f.js → evm-BsYn5oKw.js} +3 -3
- package/dist/assets/{evm-zU4C--zf.js → evm-PXwgtnG4.js} +2 -2
- package/dist/assets/{index-VJdR0Vsp.js → index-B3ZaqhJg.js} +1 -1
- package/dist/assets/{index-CVMIiUin.js → index-B5MVX_TK.js} +1 -1
- package/dist/assets/{index-4D-1dcJ9.js → index-B6dxRQ86.js} +1 -1
- package/dist/assets/{index-CBLLe3hL.js → index-B8PSBQZ9.js} +1 -1
- package/dist/assets/{index-CvMogzDh.js → index-BjJiAUgL.js} +1 -1
- package/dist/assets/{index-DsjGpXT9.js → index-Bpj3nBYn.js} +1 -1
- package/dist/assets/{index-CW9rA1zL.js → index-CCKwEjtb.js} +1 -1
- package/dist/assets/{index-CxTqvuay.js → index-CMzm2YRG.js} +1 -1
- package/dist/assets/{index-CAi0XN_b.js → index-C_fbsqYy.js} +1 -1
- package/dist/assets/{index-5IQaHp4s.js → index-CeaghD18.js} +1 -1
- package/dist/assets/{index-BcCKudwp.js → index-CgFxnAZU.js} +2 -2
- package/dist/assets/{index-toVQVrsP.js → index-Ci4biYvU.js} +1 -1
- package/dist/assets/{index-B6DtW1dg.js → index-Cz_gZSPA.js} +1 -1
- package/dist/assets/{index-CbDl1Nk6.js → index-D7mpnTIe.js} +1 -1
- package/dist/assets/{index-GUU3bnHw.js → index-DGS3sLO1.js} +1 -1
- package/dist/assets/{index-CTAjt_cp.js → index-DL0M3nJj.js} +1 -1
- package/dist/assets/{index-CbV0zEo3.js → index-DNbxAEYp.js} +1 -1
- package/dist/assets/{index-CdW-fp8-.js → index-DtRRvCNn.js} +1 -1
- package/dist/assets/{index-6HbyQ3jY.js → index-ZIIwf20G.js} +1 -1
- package/dist/assets/{index-DN2i-14o.js → index-wvkrobsf.js} +1 -1
- package/dist/assets/{index-Bi_XAyhv.js → index-xgCvqsOD.js} +1 -1
- package/dist/assets/{index.es-BK07yBK8.js → index.es-Cw18p-se.js} +6 -6
- package/dist/assets/{signer-Cqdo4YRC.js → signer-C3DgLdvN.js} +2 -2
- package/dist/assets/{solana-CeiXWtGd.js → solana-CGFN2NGX.js} +2 -2
- package/dist/assets/solana-D-RpLbqD.js +2 -0
- package/dist/assets/solanaEmbed.esm-BkAurkzW.js +37 -0
- package/dist/assets/{sui-TntjpiE6.js → sui-CnHcn_0B.js} +2 -2
- package/dist/assets/{tokens-wBpWq5l5.js → tokens-FDI1dtAz.js} +1 -1
- package/dist/main.js +51 -51
- package/dist/src/hooks/useComputeDestinationTokens.d.ts.map +1 -1
- package/dist/src/views/v2/Bridge/AssetPicker/TokenList.d.ts.map +1 -1
- package/dist/src/views/v2/Bridge/Routes/SingleRoute.d.ts.map +1 -1
- package/lib/{aptos-Tbz2BmSl.mjs → aptos-9aq-5gkF.mjs} +1 -1
- package/lib/{aptos-C2O9KvSO.js → aptos-XxKO9242.js} +1 -1
- package/lib/{ccip--upk5QVD.mjs → ccip-CUqskd5M.mjs} +1 -1
- package/lib/{ccip-C1fv-O-z.js → ccip-oytFtCzk.js} +1 -1
- package/lib/{constants-5BAG78ih.js → constants-Bmrui4ZY.js} +1 -1
- package/lib/{constants-DokEy4aZ.mjs → constants-DrDsewBe.mjs} +3 -3
- package/lib/{evm-DEyDcOVJ.js → evm-D_r84vhS.js} +3 -3
- package/lib/{evm-8qap-w_A.mjs → evm-IjnSHeSg.mjs} +4 -4
- package/lib/hosted.js +1 -1
- package/lib/hosted.mjs +1 -1
- package/lib/{index-CHRRy38m.js → index-43m4zMem.js} +1 -1
- package/lib/{index-D9a8BHae.js → index-BcAXCy1h.js} +1 -1
- package/lib/{index-B8P7Hgys.js → index-CIhJm6vf.js} +65 -65
- package/lib/{index-D2Qb4LZn.mjs → index-Ce0EI1tW.mjs} +1 -1
- package/lib/{index-CrB-LSo2.mjs → index-CuDLHfKb.mjs} +1 -1
- package/lib/{index-DcdFOYPU.mjs → index-Cyo0tNu5.mjs} +1 -1
- package/lib/{index-BRWDo8jM.mjs → index-DDBdrN7Y.mjs} +2677 -2719
- package/lib/{index-B__hvnhZ.js → index-Dt-63Ecw.js} +1 -1
- package/lib/{index.es-r3IXysvk.mjs → index.es-C6ziEcYX.mjs} +2 -2
- package/lib/{index.es-DV3kw9DJ.js → index.es-MXzok_Dp.js} +1 -1
- package/lib/index.js +1 -1
- package/lib/index.mjs +1 -1
- package/lib/{solana-C6mhiYEU.mjs → solana-CE7DDmW7.mjs} +3 -3
- package/lib/{solana-CodmCaKY.js → solana-iU2xZ6yu.js} +1 -1
- package/lib/{solanaEmbed.esm-RbUXbhhE.mjs → solanaEmbed.esm-BtaI5pum.mjs} +2 -2
- package/lib/{solanaEmbed.esm-CM5KEZzA.js → solanaEmbed.esm-DUsdVcC-.js} +1 -1
- package/lib/src/hooks/useComputeDestinationTokens.d.ts.map +1 -1
- package/lib/src/views/v2/Bridge/AssetPicker/TokenList.d.ts.map +1 -1
- package/lib/src/views/v2/Bridge/Routes/SingleRoute.d.ts.map +1 -1
- package/lib/{sui-CNae24HH.mjs → sui-BIE_b_7o.mjs} +1 -1
- package/lib/{sui-CL39dOHl.js → sui-CNPKXqM6.js} +1 -1
- package/lib/{tokens-Bz4eEen0.mjs → tokens-CQnhplD_.mjs} +2 -2
- package/lib/{tokens-BnT3LJzY.js → tokens-D4usSvOD.js} +1 -1
- package/package.json +1 -1
- package/dist/assets/events-Qrc8Qc0_.js +0 -1
- package/dist/assets/solana-DqfcEf7L.js +0 -2
- package/dist/assets/solanaEmbed.esm-BW4sfcDG.js +0 -37
|
@@ -1 +1 @@
|
|
|
1
|
-
var Ue=Object.defineProperty;var Te=(r,e,t)=>e in r?Ue(r,e,{enumerable:!0,configurable:!0,writable:!0,value:t}):r[e]=t;var u=(r,e,t)=>Te(r,typeof e!="symbol"?e+"":e,t);import{P as m,d as g,cz as ne,cA as Ce,T as ke,cB as _e,cn as M,aN as Pe,c3 as L,cq as U,cr as V,aI as q,bQ as oe,cC as ve,cD as ze,K as re,D as j,c7 as Ke,aJ as qe}from"../main.js";import{d as l,P as Fe,c as Ve}from"./index-CW9rA1zL.js";import{b as De,e as Oe}from"./signer-Cqdo4YRC.js";import{c as Ge}from"./create-BrCILL-b.js";import{r as Ne}from"./chain-CxM3TvYC.js";const se=r=>typeof r=="string"?g.Buffer.from(r):r;function b(r,e){return m.findProgramAddressSync(Array.isArray(r)?r.map(se):[se(r)],new m(e))[0]}function Mt(r,e){return{pubkey:new m(r),isWritable:!0,isSigner:e}}function bt(r,e){return{pubkey:new m(r),isWritable:!1,isSigner:e}}function z(r){if(r===null)throw Error("account info is null");return r.data}const ue=new m("BPFLoaderUpgradeab1e11111111111111111111111");function Re(r){return b([new m(r).toBuffer()],ue)}class $e extends Error{constructor(e){super(e),this.name="IdlError"}}function ce(r,e){switch(e.type.kind){case"struct":return e.type.fields.map(t=>I(r,t.type)).reduce((t,n)=>t+n,0);case"enum":{const t=e.type.variants.map(n=>n.fields?n.fields.map(s=>typeof s=="object"&&"name"in s?I(r,s.type):I(r,s)).reduce((s,a)=>s+a,0):0);return Math.max(...t)+1}case"alias":return I(r,e.type.value)}}function I(r,e){var t;switch(e){case"bool":return 1;case"u8":return 1;case"i8":return 1;case"i16":return 2;case"u16":return 2;case"u32":return 4;case"i32":return 4;case"f32":return 4;case"u64":return 8;case"i64":return 8;case"f64":return 8;case"u128":return 16;case"i128":return 16;case"u256":return 32;case"i256":return 32;case"bytes":return 1;case"string":return 1;case"publicKey":return 32;default:if("vec"in e)return 1;if("option"in e)return 1+I(r,e.option);if("coption"in e)return 4+I(r,e.coption);if("defined"in e){const n=((t=r.types)==null?void 0:t.filter(a=>a.name===e.defined))??[];if(n.length!==1)throw new $e(`Type not found: ${JSON.stringify(e)}`);let s=n[0];return ce(r,s)}if("array"in e){let n=e.array[0],s=e.array[1];return I(r,n)*s}throw new Error(`Invalid type ${JSON.stringify(e)}`)}}function _(r){return r.replace(/(?:^\w|[A-Z]|\b\w)/g,function(e,t){return t===0?e.toLowerCase():e.toUpperCase()}).replace(/[\s\-_]+/g,"")}function Ye(r){return r.charAt(0).toUpperCase()+r.slice(1)}const ge=[{name:"discriminator",binary:"bytes",size:4},{name:"consistencyLevel",binary:"uint",size:1,endianness:"little"},{name:"emitterAuthority",...ne},{name:"messageStatus",binary:"uint",size:1,endianness:"little"},{name:"gap",binary:"uint",size:3},{name:"timestamp",binary:"uint",size:4,endianness:"little"},{name:"nonce",binary:"uint",size:4,endianness:"little"},{name:"sequence",binary:"uint",size:8,endianness:"little"},{name:"emitterChain",binary:"uint",size:2,endianness:"little"},{name:"emitterAddress",...ne},{name:"payloadLength",binary:"uint",size:4,endianness:"little"},{name:"payload",binary:"bytes"}];function de(r){return Ce(ge,r)}function T(r,e,t,n){const s=typeof e=="string"?g.Buffer.from(e,"hex"):g.Buffer.from(e);if(s.length!=32)throw Error("address.length != 32");const a=g.Buffer.alloc(8);return a.writeBigUInt64BE(typeof n=="number"?BigInt(n):n),b([s,(()=>{const i=g.Buffer.alloc(2);return i.writeUInt16BE(t),i})(),a],r)}async function je(r,e,t,n,s,a){return r.getAccountInfo(T(e,t,n,s),a).then(i=>!!z(i)[0])}function S(r){return b([g.Buffer.from("Bridge")],r)}async function fe(r,e,t){return r.getAccountInfo(S(e),t).then(n=>O.deserialize(z(n)))}class D{constructor(e,t){u(this,"guardianSetExpirationTime");u(this,"fee");this.guardianSetExpirationTime=e,this.fee=t}static deserialize(e){if(e.length!=12)throw new Error("data.length != 12");const t=e.readUInt32LE(0),n=e.readBigUInt64LE(4);return new D(t,n)}}class O{constructor(e,t,n){u(this,"guardianSetIndex");u(this,"lastLamports");u(this,"config");this.guardianSetIndex=e,this.lastLamports=t,this.config=n}static deserialize(e){if(e.length!=24)throw new Error("data.length != 24");const t=e.readUInt32LE(0),n=e.readBigUInt64LE(4),s=D.deserialize(e.subarray(12));return new O(t,n,s)}}function G(r,e){return b([g.Buffer.from("Sequence"),new m(r).toBytes()],e)}async function me(r,e,t,n){return r.getAccountInfo(G(e,t),n).then(s=>N.deserialize(z(s)))}class N{constructor(e,t,n){u(this,"sequence");u(this,"bump");u(this,"emitterType");this.sequence=e,this.bump=t,this.emitterType=n}static deserialize(e){if(e.length!==8&&e.length!==10)throw new Error("data.length != 8 or data.length != 10");let t,n;const s=e.readBigUInt64LE(0);return e.length===10&&(t=e[8],n=e[9]),new N(s,t,n)}value(){return this.sequence}}function W(r){return b([g.Buffer.from("emitter")],r)}function H(r,e){const t=W(r);return{emitter:t,sequence:G(t,e)}}async function We(r,e,t,n){return me(r,W(e),t,n)}function C(r){return b([g.Buffer.from("fee_collector")],r)}const ae=65,P=20;function He(r,e,t){return new ke({keys:[],programId:_e.programId,data:Je.serialize(r,e,t)})}class Je{static serialize(e,t,n){if(e.length==0)throw Error("signatures.length == 0");if(e.length!=t.length)throw Error("signatures.length != keys.length");if(n.length!=32)throw Error("message.length != 32");const s=e.length,a=11,i=1+s*a,o=ae+P,c=i+s*o,f=32,d=g.Buffer.alloc(c+f);d.writeUInt8(s,0),d.write(n.toString("hex"),c,"hex");for(let p=0;p<s;++p){const y=e.at(p);if((y==null?void 0:y.length)!=ae)throw Error(`signatures[${p}].length != 65`);const h=t.at(p);if((h==null?void 0:h.length)!=P)throw Error(`keys[${p}].length != 20`);const A=i+o*p,k=A+65;d.writeUInt16LE(A,1+p*a),d.writeUInt8(0,3+p*a),d.writeUInt16LE(k,4+p*a),d.writeUInt8(0,6+p*a),d.writeUInt16LE(c,7+p*a),d.writeUInt16LE(f,9+p*a),d.writeUInt8(0,10+p*a),d.write(y.toString("hex"),A,"hex"),d.write(h.toString("hex"),k,"hex")}return d}}function x(r,e){return b([g.Buffer.from("GuardianSet"),(()=>{const t=g.Buffer.alloc(4);return t.writeUInt32BE(e),t})()],r)}async function J(r,e,t,n){return r.getAccountInfo(x(e,t),n).then(s=>R.deserialize(z(s)))}class R{constructor(e,t,n,s){u(this,"index");u(this,"keys");u(this,"creationTime");u(this,"expirationTime");this.index=e,this.keys=t,this.creationTime=n,this.expirationTime=s}static deserialize(e){const t=e.readUInt32LE(0),n=e.readUInt32LE(4),s=8+n*P,a=e.readUInt32LE(s),i=e.readUInt32LE(4+s),o=[];for(let c=0;c<n;++c){const f=8+c*P;o.push(e.subarray(f,f+P))}return new R(t,o,a,i)}}function E(r,e){return b([g.Buffer.from("PostedVAA"),e],r)}async function Qe(r,e,t){return r.getAccountInfo(new m(e),t).then(n=>$.deserialize(z(n)))}class ${constructor(e,t,n){u(this,"signatures");u(this,"hash");u(this,"guardianSetIndex");this.signatures=e,this.hash=t,this.guardianSetIndex=n}static deserialize(e){const t=e.readUInt32LE(0),n=[...e.subarray(4,4+t)].map(o=>o!=0),s=4+t,a=e.subarray(s,s+32),i=e.readUInt32LE(s+32);return new $(n,a,i)}}function le(r){return b([g.Buffer.from("upgrade")],r)}function pe(r,e,t){return M.transfer({fromPubkey:new m(e),toPubkey:C(r),lamports:t})}class Xe{constructor(e){u(this,"idl");this.idl=e}async encode(e,t){switch(e){default:throw new Error(`Invalid account name: ${e}`)}}decode(e,t){return this.decodeUnchecked(e,t)}decodeUnchecked(e,t){switch(e){default:throw new Error(`Invalid account name: ${e}`)}}memcmp(e,t){switch(e){case"postVaa":return{dataSize:56};default:throw new Error(`Invalid account name: ${e}`)}}size(e){return ce(this.idl,e)??0}}class Ze{constructor(e){}decode(e){throw new Error("Wormhole program does not have events")}}class B{static fieldLayout(e,t){const n=e.name!==void 0?_(e.name):void 0;switch(e.type){case"bool":return l.bool(n);case"u8":return l.u8(n);case"i8":return l.i8(n);case"u16":return l.u16(n);case"i16":return l.i16(n);case"u32":return l.u32(n);case"i32":return l.i32(n);case"f32":return l.f32(n);case"u64":return l.u64(n);case"i64":return l.i64(n);case"f64":return l.f64(n);case"u128":return l.u128(n);case"i128":return l.i128(n);case"u256":return l.u256(n);case"i256":return l.i256(n);case"bytes":return l.vecU8(n);case"string":return l.str(n);case"publicKey":return l.publicKey(n);default:{if("vec"in e.type)return l.vec(B.fieldLayout({name:void 0,type:e.type.vec},t),n);if("option"in e.type)return l.option(B.fieldLayout({name:void 0,type:e.type.option},t),n);if("array"in e.type){let s=e.type.array[0],a=e.type.array[1],i=B.fieldLayout({name:void 0,type:s},t);return l.array(i,a,n)}else throw new Error(`Not yet implemented: ${e}`)}}}}class Q{constructor(e){u(this,"ixLayout");this.ixLayout=Q.parseIxLayout(e)}static parseIxLayout(e){const n=(e.instructions?e.instructions:[]).map(s=>{let a=s.args.map(o=>B.fieldLayout(o,Array.from([...e.accounts??[],...e.types??[]])));const i=_(s.name);return[i,l.struct(a,i)]}).concat(e.instructions.map(s=>{let a=s.args.map(o=>B.fieldLayout(o,Array.from([...e.accounts??[],...e.types??[]])));const i=_(s.name);return[i,l.struct(a,i)]}));return new Map(n)}encode(e,t){const n=g.Buffer.alloc(1e3),s=_(e),a=this.ixLayout.get(s);if(!a)throw new Error(`Unknown method: ${s}`);const i=a.encode(t,n),o=n.slice(0,i);return et(F[Ye(s)],o)}encodeState(e,t){throw new Error("Wormhole program does not have state")}decode(e,t="hex"){var o;typeof e=="string"&&(e=t==="hex"?g.Buffer.from(e,"hex"):Pe.decode(e));let n=g.Buffer.from(e.slice(0,1)).readInt8(),s=g.Buffer.from(e.slice(1)),a=_(F[n]??"");return this.ixLayout.get(a)?{data:(o=this.ixLayout.get(a))==null?void 0:o.decode(s),name:a}:null}}var F;(function(r){r[r.Initialize=0]="Initialize",r[r.PostMessage=1]="PostMessage",r[r.PostVaa=2]="PostVaa",r[r.SetFees=3]="SetFees",r[r.TransferFees=4]="TransferFees",r[r.UpgradeContract=5]="UpgradeContract",r[r.UpgradeGuardianSet=6]="UpgradeGuardianSet",r[r.VerifySignatures=7]="VerifySignatures",r[r.PostMessageUnreliable=8]="PostMessageUnreliable"})(F||(F={}));function et(r,e){const t=g.Buffer.alloc(1+(e===void 0?0:e.length));return t.writeUInt8(r,0),e!==void 0&&t.write(e.toString("hex"),1,"hex"),t}class tt{constructor(e){}encode(e,t){throw new Error("Wormhole program does not have state")}decode(e){throw new Error("Wormhole program does not have state")}}class nt{constructor(e){}encode(e,t){throw new Error("Wormhole program does not have user-defined types")}decode(e,t){throw new Error("Wormhole program does not have user-defined types")}}class rt{constructor(e){u(this,"instruction");u(this,"accounts");u(this,"state");u(this,"events");u(this,"types");this.instruction=new Q(e),this.accounts=new Xe(e),this.state=new tt(e),this.events=new Ze(e),this.types=new nt(e)}}const X={version:"0.1.0",name:"wormhole",instructions:[{name:"initialize",accounts:[{name:"bridge",isMut:!0,isSigner:!1},{name:"guardianSet",isMut:!0,isSigner:!1},{name:"feeCollector",isMut:!0,isSigner:!1},{name:"payer",isMut:!0,isSigner:!0},{name:"clock",isMut:!1,isSigner:!1},{name:"rent",isMut:!1,isSigner:!1},{name:"systemProgram",isMut:!1,isSigner:!1}],args:[{name:"guardianSetExpirationTime",type:"u32"},{name:"fee",type:"u64"},{name:"initialGuardians",type:{vec:{array:["u8",20]}}}]},{name:"postMessage",accounts:[{name:"bridge",isMut:!0,isSigner:!1},{name:"message",isMut:!0,isSigner:!0},{name:"emitter",isMut:!1,isSigner:!0},{name:"sequence",isMut:!0,isSigner:!1},{name:"payer",isMut:!0,isSigner:!0},{name:"feeCollector",isMut:!0,isSigner:!1},{name:"clock",isMut:!1,isSigner:!1},{name:"rent",isMut:!1,isSigner:!1},{name:"systemProgram",isMut:!1,isSigner:!1}],args:[{name:"nonce",type:"u32"},{name:"payload",type:"bytes"},{name:"consistencyLevel",type:"u8"}]},{name:"postVaa",accounts:[{name:"guardianSet",isMut:!1,isSigner:!1},{name:"bridge",isMut:!1,isSigner:!1},{name:"signatureSet",isMut:!1,isSigner:!1},{name:"vaa",isMut:!0,isSigner:!1},{name:"payer",isMut:!0,isSigner:!0},{name:"clock",isMut:!1,isSigner:!1},{name:"rent",isMut:!1,isSigner:!1},{name:"systemProgram",isMut:!1,isSigner:!1}],args:[{name:"version",type:"u8"},{name:"guardianSetIndex",type:"u32"},{name:"timestamp",type:"u32"},{name:"nonce",type:"u32"},{name:"emitterChain",type:"u16"},{name:"emitterAddress",type:{array:["u8",32]}},{name:"sequence",type:"u64"},{name:"consistencyLevel",type:"u8"},{name:"payload",type:"bytes"}]},{name:"setFees",accounts:[{name:"payer",isMut:!0,isSigner:!0},{name:"bridge",isMut:!0,isSigner:!1},{name:"vaa",isMut:!1,isSigner:!1},{name:"claim",isMut:!0,isSigner:!1},{name:"systemProgram",isMut:!1,isSigner:!1}],args:[]},{name:"transferFees",accounts:[{name:"payer",isMut:!0,isSigner:!0},{name:"bridge",isMut:!0,isSigner:!1},{name:"vaa",isMut:!1,isSigner:!1},{name:"claim",isMut:!0,isSigner:!1},{name:"feeCollector",isMut:!0,isSigner:!1},{name:"recipient",isMut:!0,isSigner:!1},{name:"rent",isMut:!1,isSigner:!1},{name:"systemProgram",isMut:!1,isSigner:!1}],args:[]},{name:"upgradeContract",accounts:[{name:"payer",isMut:!0,isSigner:!0},{name:"bridge",isMut:!0,isSigner:!1},{name:"vaa",isMut:!1,isSigner:!1},{name:"claim",isMut:!0,isSigner:!1},{name:"upgradeAuthority",isMut:!1,isSigner:!1},{name:"spill",isMut:!0,isSigner:!1},{name:"implementation",isMut:!0,isSigner:!1},{name:"programData",isMut:!0,isSigner:!1},{name:"wormholeProgram",isMut:!0,isSigner:!1},{name:"rent",isMut:!1,isSigner:!1},{name:"clock",isMut:!1,isSigner:!1},{name:"bpfLoaderUpgradeable",isMut:!1,isSigner:!1},{name:"systemProgram",isMut:!1,isSigner:!1}],args:[]},{name:"upgradeGuardianSet",accounts:[{name:"payer",isMut:!0,isSigner:!0},{name:"bridge",isMut:!0,isSigner:!1},{name:"vaa",isMut:!1,isSigner:!1},{name:"claim",isMut:!0,isSigner:!1},{name:"guardianSetOld",isMut:!0,isSigner:!1},{name:"guardianSetNew",isMut:!0,isSigner:!1},{name:"systemProgram",isMut:!1,isSigner:!1}],args:[]},{name:"verifySignatures",accounts:[{name:"payer",isMut:!0,isSigner:!0},{name:"guardianSet",isMut:!1,isSigner:!1},{name:"signatureSet",isMut:!0,isSigner:!0},{name:"instructions",isMut:!1,isSigner:!1},{name:"rent",isMut:!1,isSigner:!1},{name:"systemProgram",isMut:!1,isSigner:!1}],args:[{name:"signatureStatus",type:{array:["i8",19]}}]},{name:"postMessageUnreliable",accounts:[{name:"bridge",isMut:!0,isSigner:!1},{name:"message",isMut:!0,isSigner:!0},{name:"emitter",isMut:!1,isSigner:!0},{name:"sequence",isMut:!0,isSigner:!1},{name:"payer",isMut:!0,isSigner:!0},{name:"feeCollector",isMut:!0,isSigner:!1},{name:"clock",isMut:!1,isSigner:!1},{name:"rent",isMut:!1,isSigner:!1},{name:"systemProgram",isMut:!1,isSigner:!1}],args:[{name:"nonce",type:"u32"},{name:"payload",type:"bytes"},{name:"consistencyLevel",type:"u8"}]}],accounts:[{name:"PostedMessage",type:{kind:"struct",fields:[{name:"vaaVersion",type:"u8"},{name:"consistencyLevel",type:"u8"},{name:"vaaTime",type:"u32"},{name:"vaaSignatureAccount",type:"publicKey"},{name:"submissionTime",type:"u32"},{name:"nonce",type:"u32"},{name:"sequence",type:"u64"},{name:"emitterChain",type:"u16"},{name:"emitterAddress",type:{array:["u8",32]}},{name:"payload",type:"bytes"}]}},{name:"PostedVAA",type:{kind:"struct",fields:[{name:"vaaVersion",type:"u8"},{name:"consistencyLevel",type:"u8"},{name:"vaaTime",type:"u32"},{name:"vaaSignatureAccount",type:"publicKey"},{name:"submissionTime",type:"u32"},{name:"nonce",type:"u32"},{name:"sequence",type:"u64"},{name:"emitterChain",type:"u16"},{name:"emitterAddress",type:{array:["u8",32]}},{name:"payload",type:"bytes"}]}}]};function ye(r,e){return new Fe(X,new m(r),e===void 0?{connection:null}:e,he())}function w(r,e){return ye(r,Ve(e))}function he(){return new rt(X)}function st(r,e,t,n){const s=w(e,r).methods.setFees();return s._ixFn(...s._args,{accounts:Se(e,t,n),signers:void 0,remainingAccounts:void 0,preInstructions:void 0,postInstructions:void 0})}function Se(r,e,t){return{payer:new m(e),bridge:S(r),vaa:E(r,g.Buffer.from(t.hash)),claim:T(r,t.emitterAddress.toString(),L(t.emitterChain),t.sequence),systemProgram:M.programId}}function at(r,e,t,n,s){const a=w(e,r).methods.transferFees();return a._ixFn(...a._args,{accounts:we(e,t,n,s),signers:void 0,remainingAccounts:void 0,preInstructions:void 0,postInstructions:void 0})}function we(r,e,t,n){return{payer:new m(e),bridge:S(r),vaa:E(r,g.Buffer.from(n.hash)),claim:T(r,n.emitterAddress.toString(),L(n.emitterChain),n.sequence),feeCollector:C(r),recipient:new m(t),rent:U,systemProgram:M.programId}}function it(r,e,t,n){const s=w(e,r).methods.upgradeGuardianSet();return s._ixFn(...s._args,{accounts:Me(e,t,n),signers:void 0,remainingAccounts:void 0,preInstructions:void 0,postInstructions:void 0})}function Me(r,e,t){return{payer:new m(e),bridge:S(r),vaa:E(r,g.Buffer.from(t.hash)),claim:T(r,t.emitterAddress.toString(),L(t.emitterChain),t.sequence),guardianSetOld:x(r,t.guardianSet),guardianSetNew:x(r,t.guardianSet+1),systemProgram:M.programId}}function ot(r,e,t,n){const s=w(e,r).methods.upgradeContract();return s._ixFn(...s._args,{accounts:be(e,t,n),signers:void 0,remainingAccounts:void 0,preInstructions:void 0,postInstructions:void 0})}function be(r,e,t,n){const{newContract:s}=t.payload.actionArgs;return{payer:new m(e),bridge:S(r),vaa:E(r,g.Buffer.from(t.hash)),claim:T(r,t.emitterAddress.toString(),L(t.emitterChain),t.sequence),upgradeAuthority:le(r),spill:new m(n===void 0?e:n),implementation:new q(s).unwrap(),programData:Re(r),wormholeProgram:new m(r),rent:U,clock:V,bpfLoaderUpgradeable:ue,systemProgram:M.programId}}function ut(r,e,t,n,s,a){const i=w(e,r).methods.initialize(n,new oe(s.toString()),[...a.map(o=>[...new Uint8Array(o)])]);return i._ixFn(...i._args,{accounts:Ae(e,t),signers:void 0,remainingAccounts:void 0,preInstructions:void 0,postInstructions:void 0})}function Ae(r,e){return{bridge:S(r),guardianSet:x(r,0),feeCollector:C(r),payer:new m(e),clock:V,rent:U,systemProgram:M.programId}}function Ie(r,e,t,n,s,a,i){const o=w(e,r).methods.postMessage(a,g.Buffer.from(s),i);return o._ixFn(...o._args,{accounts:Z(e,t,n),signers:void 0,remainingAccounts:void 0,preInstructions:void 0,postInstructions:void 0})}function Z(r,e,t,n){let s;return n?{emitter:n,sequence:s}=H(n,r):(n=e,s=G(n,r)),{bridge:S(r),message:new m(t),emitter:new m(n),sequence:s,payer:new m(e),feeCollector:C(r),clock:V,rent:U,systemProgram:M.programId}}function xe(r,e,t,n,s){const a=w(e,r).methods.postVaa(1,n.guardianSet,n.timestamp,n.nonce,L(n.emitterChain),[...n.emitterAddress.toUint8Array()],new oe(n.sequence.toString()),n.consistencyLevel,g.Buffer.from(ve(n.payloadLiteral,n.payload)));return a._ixFn(...a._args,{accounts:Ee(e,t,s,n),signers:void 0,remainingAccounts:void 0,preInstructions:void 0,postInstructions:void 0})}function Ee(r,e,t,n){return{guardianSet:x(r,n.guardianSet),bridge:S(r),signatureSet:new m(t),vaa:E(r,g.Buffer.from(n.hash)),payer:new m(e),clock:V,rent:U,systemProgram:M.programId}}const ct=19;async function Be(r,e,t,n,s,a){const i=n.guardianSet,o=await J(r,e,i,a),c=n.signatures,f=o.keys,d=7,p=[];for(let y=0;y<Math.ceil(c.length/d);++y){const h=y*d,A=Math.min(c.length,(y+1)*d),k=new Array(ct).fill(-1),ee=[],te=[];for(let K=0;K<A-h;++K){const Y=c.at(K+h);ee.push(g.Buffer.from(Y.signature.encode())),te.push(f.at(Y.guardianIndex)),k[Y.guardianIndex]=K}p.push(He(ee,te,g.Buffer.from(n.hash))),p.push(gt(r,e,t,n,s,k))}return p}function gt(r,e,t,n,s,a){const i=w(e,r).methods.verifySignatures(a);return i._ixFn(...i._args,{accounts:Le(e,t,s,n),signers:void 0,remainingAccounts:void 0,preInstructions:void 0,postInstructions:void 0})}function Le(r,e,t,n){return{payer:new m(e),guardianSet:x(r,n.guardianSet),signatureSet:new m(t),instructions:ze,rent:U,systemProgram:M.programId}}function dt(r,e){const{emitter:t,sequence:n}=H(r,e);return{wormholeBridge:S(e),wormholeEmitter:t,wormholeSequence:n,wormholeFeeCollector:C(e)}}function ft(r,e,t,n){const s=Z(e,t,n,r);return{payer:s.payer,wormholeBridge:s.bridge,wormholeMessage:s.message,wormholeEmitter:s.emitter,wormholeSequence:s.sequence,wormholeFeeCollector:s.feeCollector,clock:s.clock,rent:s.rent,systemProgram:s.systemProgram}}const mt=Object.freeze(Object.defineProperty({__proto__:null,BridgeConfig:D,BridgeData:O,GuardianSetData:R,SequenceTracker:N,SignatureSetData:$,coder:he,createBridgeFeeTransferInstruction:pe,createInitializeInstruction:ut,createPostMessageInstruction:Ie,createPostVaaInstruction:xe,createReadOnlyWormholeProgramInterface:w,createSetFeesInstruction:st,createTransferFeesInstruction:at,createUpgradeContractInstruction:ot,createUpgradeGuardianSetInstruction:it,createVerifySignaturesInstructions:Be,createWormholeProgramInterface:ye,deriveClaimKey:T,deriveEmitterSequenceKey:G,deriveFeeCollectorKey:C,deriveGuardianSetKey:x,derivePostedVaaKey:E,deriveUpgradeAuthorityKey:le,deriveWormholeBridgeDataKey:S,deriveWormholeEmitterKey:W,getClaim:je,getEmitterKeys:H,getGuardianSet:J,getInitializeAccounts:Ae,getPostMessageAccounts:Z,getPostMessageCpiAccounts:ft,getPostVaaAccounts:Ee,getProgramSequenceTracker:We,getSequenceTracker:me,getSetFeesAccounts:Se,getSignatureSetData:Qe,getTransferFeesAccounts:we,getUpgradeContractAccounts:be,getUpgradeGuardianSetAccounts:Me,getVerifySignatureAccounts:Le,getWormholeBridgeData:fe,getWormholeDerivedAccounts:dt},Symbol.toStringTag,{value:"Module"})),ie="Program log: Sequence: ";class v{constructor(e,t,n,s){u(this,"network");u(this,"chain");u(this,"connection");u(this,"contracts");u(this,"chainId");u(this,"coreBridge");u(this,"address");u(this,"bridgeData");this.network=e,this.chain=t,this.connection=n,this.contracts=s,this.chainId=L(t);const a=s.coreBridge;if(!a)throw new Error(`CoreBridge contract Address for chain ${t} not found`);this.address=a,this.coreBridge=w(a,n)}async getGuardianSet(e){const t=await J(this.connection,this.coreBridge.programId,e);return{index:t.index,keys:t.keys.map(n=>n.toString("hex")),expiry:BigInt(t.expirationTime)}}static async fromRpc(e,t){const[n,s]=await De.chainFromRpc(e),a=t[s];if(a.network!==n)throw new Error(`Network mismatch for chain ${s}: ${a.network} != ${n}`);return new v(n,s,e,t[s].contracts)}async ensureBridgeConfig(){this.bridgeData||(this.bridgeData=await fe(this.connection,this.coreBridge.programId))}async getMessageFee(){return await this.ensureBridgeConfig(),this.bridgeData.config.fee}async getGuardianSetIndex(){return await this.ensureBridgeConfig(),this.bridgeData.guardianSetIndex}async*publishMessage(e,t,n,s){const a=re.generate(),i=new q(e).unwrap(),o=Ie(this.connection,this.coreBridge.programId,i,a.publicKey,t,n,s),c=await this.getMessageFee(),f=pe(this.coreBridge.programId,i,c),d=new j;d.feePayer=i,d.add(f,o),yield this.createUnsignedTx({transaction:d,signers:[a]},"Core.PublishMessage")}async*verifyMessage(e,t){yield*this.postVaa(e,t)}async*postVaa(e,t){const n=E(this.coreBridge.programId,g.Buffer.from(t.hash));if(await this.connection.getAccountInfo(n))return;const a=new q(e).unwrap(),i=re.generate(),o=await Be(this.connection,this.coreBridge.programId,a,t,i.publicKey);for(let f=0;f<o.length;f+=2){const d=new j().add(...o.slice(f,f+2));d.feePayer=a,yield this.createUnsignedTx({transaction:d,signers:[i]},"Core.VerifySignature",!0)}const c=new j().add(xe(this.connection,this.coreBridge.programId,a,t,i.publicKey));c.feePayer=a,yield this.createUnsignedTx({transaction:c},"Core.PostVAA")}static parseSequenceFromLog(e,t){var c,f,d,p;const{meta:n,transaction:{message:s}}=t;if(!((c=n==null?void 0:n.innerInstructions)!=null&&c.length))return[];const a=s.staticAccountKeys;if(a.filter(y=>y.toString()===e).length===0)return[];const i=(p=(d=(f=n==null?void 0:n.logMessages)==null?void 0:f.filter(y=>y.startsWith(ie)))==null?void 0:d[0])==null?void 0:p.replace(ie,"");if(!i)return[];const o=[];for(const y of n==null?void 0:n.innerInstructions){const h=y.instructions;o.push(...h.filter(A=>A.programIdIndex in a&&a[A.programIdIndex].toString()===e))}return o.length<1?[]:a.length<3?[]:o.map(y=>[new q(a[y.accounts[2]]).toUniversalAddress(),BigInt(i)]).filter(y=>y!==null)}async getMessageAccountKeys(e){let t;if(typeof e.transaction.message.version!="string")if(e.meta.loadedAddresses)t=e.transaction.message.getAccountKeys({accountKeysFromLookups:e.meta.loadedAddresses});else{const n=await Promise.all(e.transaction.message.addressTableLookups.map(async s=>{const a=await this.connection.getAddressLookupTable(s.accountKey);if(!a||!a.value)throw new Error("Could not resolve lookup table: "+s.accountKey.toBase58());return a.value}));t=e.transaction.message.getAccountKeys({addressLookupTableAccounts:n})}else t=e.transaction.message.getAccountKeys();return t}async findInstructions(e,t){var c;const{meta:n,transaction:{message:s}}=t,a=this.coreBridge.programId,i=(c=n.innerInstructions)==null?void 0:c.flatMap(f=>f.instructions.filter(d=>a.toString()===e.get(d.programIdIndex).toString())).map(f=>({programIdIndex:f.programIdIndex,accountKeyIndexes:f.accounts})),o=s.compiledInstructions.filter(f=>a.toString()===e.get(f.programIdIndex).toString());return[...i,...o]}async parsePostMessageAccount(e){const t=await this.connection.getAccountInfo(e);if(!(t!=null&&t.data))throw new Error("No data found in message account");const{timestamp:n,emitterAddress:s,emitterChain:a,consistencyLevel:i,sequence:o,nonce:c,payload:f}=de(new Uint8Array(t==null?void 0:t.data));return Ge("Uint8Array",{guardianSet:await this.getGuardianSetIndex(),emitterChain:Ke(a),timestamp:n,emitterAddress:s,consistencyLevel:i,sequence:o,nonce:c,payload:f,signatures:[]})}async parseTransaction(e){const t=await this.connection.getTransaction(e,{maxSupportedTransactionVersion:0});if(!t||!t.meta||!t.meta.innerInstructions)throw new Error("transaction not found");try{const i=v.parseSequenceFromLog(this.coreBridge.programId.toBase58(),t);if(i.length>0){const[o,c]=i[0];return[{chain:this.chain,emitter:o,sequence:c}]}}catch{}const n=await this.getMessageAccountKeys(t),s=await this.findInstructions(n,t);if(!s||s.length===0)throw new Error("no bridge messages found");const a=s.map(async i=>{const o=n.get(i.accountKeyIndexes[1]),c=await this.parsePostMessageAccount(o);return{chain:c.emitterChain,emitter:c.emitterAddress,sequence:c.sequence}});return await Promise.all(a)}async parseMessages(e){const t=await this.connection.getTransaction(e,{maxSupportedTransactionVersion:0});if(!t||!t.meta||!t.meta.innerInstructions)throw new Error("transaction not found");const n=await this.getMessageAccountKeys(t),s=await this.findInstructions(n,t);if(!s||s.length===0)throw new Error("no bridge messages found");const a=s.map(async i=>{const o=n.get(i.accountKeyIndexes[1]);return await this.parsePostMessageAccount(o)});return await Promise.all(a)}createUnsignedTx(e,t,n=!1){return new Oe(e,this.network,this.chain,t,n)}}Ne(qe,"WormholeCore",v);const At=Object.freeze(Object.defineProperty({__proto__:null,IDL:X,SolanaWormholeCore:v,deserializePostMessage:de,postMessageLayout:ge,utils:mt},Symbol.toStringTag,{value:"Module"}));export{ue as B,v as S,S as a,W as b,G as c,C as d,T as e,E as f,We as g,b as h,z as i,ce as j,bt as k,Z as l,Re as m,Mt as n,le as o,ft as p,dt as q,je as r,pe as s,At as t};
|
|
1
|
+
var Ue=Object.defineProperty;var Te=(r,e,t)=>e in r?Ue(r,e,{enumerable:!0,configurable:!0,writable:!0,value:t}):r[e]=t;var u=(r,e,t)=>Te(r,typeof e!="symbol"?e+"":e,t);import{P as m,d as g,cA as ne,cB as Ce,T as ke,cC as _e,co as M,aN as Pe,c4 as L,cr as U,cs as V,aI as q,bR as oe,cD as ve,cE as ze,K as re,D as j,c8 as Ke,aJ as qe}from"../main.js";import{d as l,P as Fe,c as Ve}from"./index-CCKwEjtb.js";import{b as De,e as Oe}from"./signer-C3DgLdvN.js";import{c as Ge}from"./create-CPwTP7kz.js";import{r as Ne}from"./chain-CxM3TvYC.js";const se=r=>typeof r=="string"?g.Buffer.from(r):r;function b(r,e){return m.findProgramAddressSync(Array.isArray(r)?r.map(se):[se(r)],new m(e))[0]}function Mt(r,e){return{pubkey:new m(r),isWritable:!0,isSigner:e}}function bt(r,e){return{pubkey:new m(r),isWritable:!1,isSigner:e}}function z(r){if(r===null)throw Error("account info is null");return r.data}const ue=new m("BPFLoaderUpgradeab1e11111111111111111111111");function Re(r){return b([new m(r).toBuffer()],ue)}class $e extends Error{constructor(e){super(e),this.name="IdlError"}}function ce(r,e){switch(e.type.kind){case"struct":return e.type.fields.map(t=>I(r,t.type)).reduce((t,n)=>t+n,0);case"enum":{const t=e.type.variants.map(n=>n.fields?n.fields.map(s=>typeof s=="object"&&"name"in s?I(r,s.type):I(r,s)).reduce((s,a)=>s+a,0):0);return Math.max(...t)+1}case"alias":return I(r,e.type.value)}}function I(r,e){var t;switch(e){case"bool":return 1;case"u8":return 1;case"i8":return 1;case"i16":return 2;case"u16":return 2;case"u32":return 4;case"i32":return 4;case"f32":return 4;case"u64":return 8;case"i64":return 8;case"f64":return 8;case"u128":return 16;case"i128":return 16;case"u256":return 32;case"i256":return 32;case"bytes":return 1;case"string":return 1;case"publicKey":return 32;default:if("vec"in e)return 1;if("option"in e)return 1+I(r,e.option);if("coption"in e)return 4+I(r,e.coption);if("defined"in e){const n=((t=r.types)==null?void 0:t.filter(a=>a.name===e.defined))??[];if(n.length!==1)throw new $e(`Type not found: ${JSON.stringify(e)}`);let s=n[0];return ce(r,s)}if("array"in e){let n=e.array[0],s=e.array[1];return I(r,n)*s}throw new Error(`Invalid type ${JSON.stringify(e)}`)}}function _(r){return r.replace(/(?:^\w|[A-Z]|\b\w)/g,function(e,t){return t===0?e.toLowerCase():e.toUpperCase()}).replace(/[\s\-_]+/g,"")}function Ye(r){return r.charAt(0).toUpperCase()+r.slice(1)}const ge=[{name:"discriminator",binary:"bytes",size:4},{name:"consistencyLevel",binary:"uint",size:1,endianness:"little"},{name:"emitterAuthority",...ne},{name:"messageStatus",binary:"uint",size:1,endianness:"little"},{name:"gap",binary:"uint",size:3},{name:"timestamp",binary:"uint",size:4,endianness:"little"},{name:"nonce",binary:"uint",size:4,endianness:"little"},{name:"sequence",binary:"uint",size:8,endianness:"little"},{name:"emitterChain",binary:"uint",size:2,endianness:"little"},{name:"emitterAddress",...ne},{name:"payloadLength",binary:"uint",size:4,endianness:"little"},{name:"payload",binary:"bytes"}];function de(r){return Ce(ge,r)}function T(r,e,t,n){const s=typeof e=="string"?g.Buffer.from(e,"hex"):g.Buffer.from(e);if(s.length!=32)throw Error("address.length != 32");const a=g.Buffer.alloc(8);return a.writeBigUInt64BE(typeof n=="number"?BigInt(n):n),b([s,(()=>{const i=g.Buffer.alloc(2);return i.writeUInt16BE(t),i})(),a],r)}async function je(r,e,t,n,s,a){return r.getAccountInfo(T(e,t,n,s),a).then(i=>!!z(i)[0])}function S(r){return b([g.Buffer.from("Bridge")],r)}async function fe(r,e,t){return r.getAccountInfo(S(e),t).then(n=>O.deserialize(z(n)))}class D{constructor(e,t){u(this,"guardianSetExpirationTime");u(this,"fee");this.guardianSetExpirationTime=e,this.fee=t}static deserialize(e){if(e.length!=12)throw new Error("data.length != 12");const t=e.readUInt32LE(0),n=e.readBigUInt64LE(4);return new D(t,n)}}class O{constructor(e,t,n){u(this,"guardianSetIndex");u(this,"lastLamports");u(this,"config");this.guardianSetIndex=e,this.lastLamports=t,this.config=n}static deserialize(e){if(e.length!=24)throw new Error("data.length != 24");const t=e.readUInt32LE(0),n=e.readBigUInt64LE(4),s=D.deserialize(e.subarray(12));return new O(t,n,s)}}function G(r,e){return b([g.Buffer.from("Sequence"),new m(r).toBytes()],e)}async function me(r,e,t,n){return r.getAccountInfo(G(e,t),n).then(s=>N.deserialize(z(s)))}class N{constructor(e,t,n){u(this,"sequence");u(this,"bump");u(this,"emitterType");this.sequence=e,this.bump=t,this.emitterType=n}static deserialize(e){if(e.length!==8&&e.length!==10)throw new Error("data.length != 8 or data.length != 10");let t,n;const s=e.readBigUInt64LE(0);return e.length===10&&(t=e[8],n=e[9]),new N(s,t,n)}value(){return this.sequence}}function W(r){return b([g.Buffer.from("emitter")],r)}function H(r,e){const t=W(r);return{emitter:t,sequence:G(t,e)}}async function We(r,e,t,n){return me(r,W(e),t,n)}function C(r){return b([g.Buffer.from("fee_collector")],r)}const ae=65,P=20;function He(r,e,t){return new ke({keys:[],programId:_e.programId,data:Je.serialize(r,e,t)})}class Je{static serialize(e,t,n){if(e.length==0)throw Error("signatures.length == 0");if(e.length!=t.length)throw Error("signatures.length != keys.length");if(n.length!=32)throw Error("message.length != 32");const s=e.length,a=11,i=1+s*a,o=ae+P,c=i+s*o,f=32,d=g.Buffer.alloc(c+f);d.writeUInt8(s,0),d.write(n.toString("hex"),c,"hex");for(let p=0;p<s;++p){const y=e.at(p);if((y==null?void 0:y.length)!=ae)throw Error(`signatures[${p}].length != 65`);const h=t.at(p);if((h==null?void 0:h.length)!=P)throw Error(`keys[${p}].length != 20`);const A=i+o*p,k=A+65;d.writeUInt16LE(A,1+p*a),d.writeUInt8(0,3+p*a),d.writeUInt16LE(k,4+p*a),d.writeUInt8(0,6+p*a),d.writeUInt16LE(c,7+p*a),d.writeUInt16LE(f,9+p*a),d.writeUInt8(0,10+p*a),d.write(y.toString("hex"),A,"hex"),d.write(h.toString("hex"),k,"hex")}return d}}function x(r,e){return b([g.Buffer.from("GuardianSet"),(()=>{const t=g.Buffer.alloc(4);return t.writeUInt32BE(e),t})()],r)}async function J(r,e,t,n){return r.getAccountInfo(x(e,t),n).then(s=>R.deserialize(z(s)))}class R{constructor(e,t,n,s){u(this,"index");u(this,"keys");u(this,"creationTime");u(this,"expirationTime");this.index=e,this.keys=t,this.creationTime=n,this.expirationTime=s}static deserialize(e){const t=e.readUInt32LE(0),n=e.readUInt32LE(4),s=8+n*P,a=e.readUInt32LE(s),i=e.readUInt32LE(4+s),o=[];for(let c=0;c<n;++c){const f=8+c*P;o.push(e.subarray(f,f+P))}return new R(t,o,a,i)}}function E(r,e){return b([g.Buffer.from("PostedVAA"),e],r)}async function Qe(r,e,t){return r.getAccountInfo(new m(e),t).then(n=>$.deserialize(z(n)))}class ${constructor(e,t,n){u(this,"signatures");u(this,"hash");u(this,"guardianSetIndex");this.signatures=e,this.hash=t,this.guardianSetIndex=n}static deserialize(e){const t=e.readUInt32LE(0),n=[...e.subarray(4,4+t)].map(o=>o!=0),s=4+t,a=e.subarray(s,s+32),i=e.readUInt32LE(s+32);return new $(n,a,i)}}function le(r){return b([g.Buffer.from("upgrade")],r)}function pe(r,e,t){return M.transfer({fromPubkey:new m(e),toPubkey:C(r),lamports:t})}class Xe{constructor(e){u(this,"idl");this.idl=e}async encode(e,t){switch(e){default:throw new Error(`Invalid account name: ${e}`)}}decode(e,t){return this.decodeUnchecked(e,t)}decodeUnchecked(e,t){switch(e){default:throw new Error(`Invalid account name: ${e}`)}}memcmp(e,t){switch(e){case"postVaa":return{dataSize:56};default:throw new Error(`Invalid account name: ${e}`)}}size(e){return ce(this.idl,e)??0}}class Ze{constructor(e){}decode(e){throw new Error("Wormhole program does not have events")}}class B{static fieldLayout(e,t){const n=e.name!==void 0?_(e.name):void 0;switch(e.type){case"bool":return l.bool(n);case"u8":return l.u8(n);case"i8":return l.i8(n);case"u16":return l.u16(n);case"i16":return l.i16(n);case"u32":return l.u32(n);case"i32":return l.i32(n);case"f32":return l.f32(n);case"u64":return l.u64(n);case"i64":return l.i64(n);case"f64":return l.f64(n);case"u128":return l.u128(n);case"i128":return l.i128(n);case"u256":return l.u256(n);case"i256":return l.i256(n);case"bytes":return l.vecU8(n);case"string":return l.str(n);case"publicKey":return l.publicKey(n);default:{if("vec"in e.type)return l.vec(B.fieldLayout({name:void 0,type:e.type.vec},t),n);if("option"in e.type)return l.option(B.fieldLayout({name:void 0,type:e.type.option},t),n);if("array"in e.type){let s=e.type.array[0],a=e.type.array[1],i=B.fieldLayout({name:void 0,type:s},t);return l.array(i,a,n)}else throw new Error(`Not yet implemented: ${e}`)}}}}class Q{constructor(e){u(this,"ixLayout");this.ixLayout=Q.parseIxLayout(e)}static parseIxLayout(e){const n=(e.instructions?e.instructions:[]).map(s=>{let a=s.args.map(o=>B.fieldLayout(o,Array.from([...e.accounts??[],...e.types??[]])));const i=_(s.name);return[i,l.struct(a,i)]}).concat(e.instructions.map(s=>{let a=s.args.map(o=>B.fieldLayout(o,Array.from([...e.accounts??[],...e.types??[]])));const i=_(s.name);return[i,l.struct(a,i)]}));return new Map(n)}encode(e,t){const n=g.Buffer.alloc(1e3),s=_(e),a=this.ixLayout.get(s);if(!a)throw new Error(`Unknown method: ${s}`);const i=a.encode(t,n),o=n.slice(0,i);return et(F[Ye(s)],o)}encodeState(e,t){throw new Error("Wormhole program does not have state")}decode(e,t="hex"){var o;typeof e=="string"&&(e=t==="hex"?g.Buffer.from(e,"hex"):Pe.decode(e));let n=g.Buffer.from(e.slice(0,1)).readInt8(),s=g.Buffer.from(e.slice(1)),a=_(F[n]??"");return this.ixLayout.get(a)?{data:(o=this.ixLayout.get(a))==null?void 0:o.decode(s),name:a}:null}}var F;(function(r){r[r.Initialize=0]="Initialize",r[r.PostMessage=1]="PostMessage",r[r.PostVaa=2]="PostVaa",r[r.SetFees=3]="SetFees",r[r.TransferFees=4]="TransferFees",r[r.UpgradeContract=5]="UpgradeContract",r[r.UpgradeGuardianSet=6]="UpgradeGuardianSet",r[r.VerifySignatures=7]="VerifySignatures",r[r.PostMessageUnreliable=8]="PostMessageUnreliable"})(F||(F={}));function et(r,e){const t=g.Buffer.alloc(1+(e===void 0?0:e.length));return t.writeUInt8(r,0),e!==void 0&&t.write(e.toString("hex"),1,"hex"),t}class tt{constructor(e){}encode(e,t){throw new Error("Wormhole program does not have state")}decode(e){throw new Error("Wormhole program does not have state")}}class nt{constructor(e){}encode(e,t){throw new Error("Wormhole program does not have user-defined types")}decode(e,t){throw new Error("Wormhole program does not have user-defined types")}}class rt{constructor(e){u(this,"instruction");u(this,"accounts");u(this,"state");u(this,"events");u(this,"types");this.instruction=new Q(e),this.accounts=new Xe(e),this.state=new tt(e),this.events=new Ze(e),this.types=new nt(e)}}const X={version:"0.1.0",name:"wormhole",instructions:[{name:"initialize",accounts:[{name:"bridge",isMut:!0,isSigner:!1},{name:"guardianSet",isMut:!0,isSigner:!1},{name:"feeCollector",isMut:!0,isSigner:!1},{name:"payer",isMut:!0,isSigner:!0},{name:"clock",isMut:!1,isSigner:!1},{name:"rent",isMut:!1,isSigner:!1},{name:"systemProgram",isMut:!1,isSigner:!1}],args:[{name:"guardianSetExpirationTime",type:"u32"},{name:"fee",type:"u64"},{name:"initialGuardians",type:{vec:{array:["u8",20]}}}]},{name:"postMessage",accounts:[{name:"bridge",isMut:!0,isSigner:!1},{name:"message",isMut:!0,isSigner:!0},{name:"emitter",isMut:!1,isSigner:!0},{name:"sequence",isMut:!0,isSigner:!1},{name:"payer",isMut:!0,isSigner:!0},{name:"feeCollector",isMut:!0,isSigner:!1},{name:"clock",isMut:!1,isSigner:!1},{name:"rent",isMut:!1,isSigner:!1},{name:"systemProgram",isMut:!1,isSigner:!1}],args:[{name:"nonce",type:"u32"},{name:"payload",type:"bytes"},{name:"consistencyLevel",type:"u8"}]},{name:"postVaa",accounts:[{name:"guardianSet",isMut:!1,isSigner:!1},{name:"bridge",isMut:!1,isSigner:!1},{name:"signatureSet",isMut:!1,isSigner:!1},{name:"vaa",isMut:!0,isSigner:!1},{name:"payer",isMut:!0,isSigner:!0},{name:"clock",isMut:!1,isSigner:!1},{name:"rent",isMut:!1,isSigner:!1},{name:"systemProgram",isMut:!1,isSigner:!1}],args:[{name:"version",type:"u8"},{name:"guardianSetIndex",type:"u32"},{name:"timestamp",type:"u32"},{name:"nonce",type:"u32"},{name:"emitterChain",type:"u16"},{name:"emitterAddress",type:{array:["u8",32]}},{name:"sequence",type:"u64"},{name:"consistencyLevel",type:"u8"},{name:"payload",type:"bytes"}]},{name:"setFees",accounts:[{name:"payer",isMut:!0,isSigner:!0},{name:"bridge",isMut:!0,isSigner:!1},{name:"vaa",isMut:!1,isSigner:!1},{name:"claim",isMut:!0,isSigner:!1},{name:"systemProgram",isMut:!1,isSigner:!1}],args:[]},{name:"transferFees",accounts:[{name:"payer",isMut:!0,isSigner:!0},{name:"bridge",isMut:!0,isSigner:!1},{name:"vaa",isMut:!1,isSigner:!1},{name:"claim",isMut:!0,isSigner:!1},{name:"feeCollector",isMut:!0,isSigner:!1},{name:"recipient",isMut:!0,isSigner:!1},{name:"rent",isMut:!1,isSigner:!1},{name:"systemProgram",isMut:!1,isSigner:!1}],args:[]},{name:"upgradeContract",accounts:[{name:"payer",isMut:!0,isSigner:!0},{name:"bridge",isMut:!0,isSigner:!1},{name:"vaa",isMut:!1,isSigner:!1},{name:"claim",isMut:!0,isSigner:!1},{name:"upgradeAuthority",isMut:!1,isSigner:!1},{name:"spill",isMut:!0,isSigner:!1},{name:"implementation",isMut:!0,isSigner:!1},{name:"programData",isMut:!0,isSigner:!1},{name:"wormholeProgram",isMut:!0,isSigner:!1},{name:"rent",isMut:!1,isSigner:!1},{name:"clock",isMut:!1,isSigner:!1},{name:"bpfLoaderUpgradeable",isMut:!1,isSigner:!1},{name:"systemProgram",isMut:!1,isSigner:!1}],args:[]},{name:"upgradeGuardianSet",accounts:[{name:"payer",isMut:!0,isSigner:!0},{name:"bridge",isMut:!0,isSigner:!1},{name:"vaa",isMut:!1,isSigner:!1},{name:"claim",isMut:!0,isSigner:!1},{name:"guardianSetOld",isMut:!0,isSigner:!1},{name:"guardianSetNew",isMut:!0,isSigner:!1},{name:"systemProgram",isMut:!1,isSigner:!1}],args:[]},{name:"verifySignatures",accounts:[{name:"payer",isMut:!0,isSigner:!0},{name:"guardianSet",isMut:!1,isSigner:!1},{name:"signatureSet",isMut:!0,isSigner:!0},{name:"instructions",isMut:!1,isSigner:!1},{name:"rent",isMut:!1,isSigner:!1},{name:"systemProgram",isMut:!1,isSigner:!1}],args:[{name:"signatureStatus",type:{array:["i8",19]}}]},{name:"postMessageUnreliable",accounts:[{name:"bridge",isMut:!0,isSigner:!1},{name:"message",isMut:!0,isSigner:!0},{name:"emitter",isMut:!1,isSigner:!0},{name:"sequence",isMut:!0,isSigner:!1},{name:"payer",isMut:!0,isSigner:!0},{name:"feeCollector",isMut:!0,isSigner:!1},{name:"clock",isMut:!1,isSigner:!1},{name:"rent",isMut:!1,isSigner:!1},{name:"systemProgram",isMut:!1,isSigner:!1}],args:[{name:"nonce",type:"u32"},{name:"payload",type:"bytes"},{name:"consistencyLevel",type:"u8"}]}],accounts:[{name:"PostedMessage",type:{kind:"struct",fields:[{name:"vaaVersion",type:"u8"},{name:"consistencyLevel",type:"u8"},{name:"vaaTime",type:"u32"},{name:"vaaSignatureAccount",type:"publicKey"},{name:"submissionTime",type:"u32"},{name:"nonce",type:"u32"},{name:"sequence",type:"u64"},{name:"emitterChain",type:"u16"},{name:"emitterAddress",type:{array:["u8",32]}},{name:"payload",type:"bytes"}]}},{name:"PostedVAA",type:{kind:"struct",fields:[{name:"vaaVersion",type:"u8"},{name:"consistencyLevel",type:"u8"},{name:"vaaTime",type:"u32"},{name:"vaaSignatureAccount",type:"publicKey"},{name:"submissionTime",type:"u32"},{name:"nonce",type:"u32"},{name:"sequence",type:"u64"},{name:"emitterChain",type:"u16"},{name:"emitterAddress",type:{array:["u8",32]}},{name:"payload",type:"bytes"}]}}]};function ye(r,e){return new Fe(X,new m(r),e===void 0?{connection:null}:e,he())}function w(r,e){return ye(r,Ve(e))}function he(){return new rt(X)}function st(r,e,t,n){const s=w(e,r).methods.setFees();return s._ixFn(...s._args,{accounts:Se(e,t,n),signers:void 0,remainingAccounts:void 0,preInstructions:void 0,postInstructions:void 0})}function Se(r,e,t){return{payer:new m(e),bridge:S(r),vaa:E(r,g.Buffer.from(t.hash)),claim:T(r,t.emitterAddress.toString(),L(t.emitterChain),t.sequence),systemProgram:M.programId}}function at(r,e,t,n,s){const a=w(e,r).methods.transferFees();return a._ixFn(...a._args,{accounts:we(e,t,n,s),signers:void 0,remainingAccounts:void 0,preInstructions:void 0,postInstructions:void 0})}function we(r,e,t,n){return{payer:new m(e),bridge:S(r),vaa:E(r,g.Buffer.from(n.hash)),claim:T(r,n.emitterAddress.toString(),L(n.emitterChain),n.sequence),feeCollector:C(r),recipient:new m(t),rent:U,systemProgram:M.programId}}function it(r,e,t,n){const s=w(e,r).methods.upgradeGuardianSet();return s._ixFn(...s._args,{accounts:Me(e,t,n),signers:void 0,remainingAccounts:void 0,preInstructions:void 0,postInstructions:void 0})}function Me(r,e,t){return{payer:new m(e),bridge:S(r),vaa:E(r,g.Buffer.from(t.hash)),claim:T(r,t.emitterAddress.toString(),L(t.emitterChain),t.sequence),guardianSetOld:x(r,t.guardianSet),guardianSetNew:x(r,t.guardianSet+1),systemProgram:M.programId}}function ot(r,e,t,n){const s=w(e,r).methods.upgradeContract();return s._ixFn(...s._args,{accounts:be(e,t,n),signers:void 0,remainingAccounts:void 0,preInstructions:void 0,postInstructions:void 0})}function be(r,e,t,n){const{newContract:s}=t.payload.actionArgs;return{payer:new m(e),bridge:S(r),vaa:E(r,g.Buffer.from(t.hash)),claim:T(r,t.emitterAddress.toString(),L(t.emitterChain),t.sequence),upgradeAuthority:le(r),spill:new m(n===void 0?e:n),implementation:new q(s).unwrap(),programData:Re(r),wormholeProgram:new m(r),rent:U,clock:V,bpfLoaderUpgradeable:ue,systemProgram:M.programId}}function ut(r,e,t,n,s,a){const i=w(e,r).methods.initialize(n,new oe(s.toString()),[...a.map(o=>[...new Uint8Array(o)])]);return i._ixFn(...i._args,{accounts:Ae(e,t),signers:void 0,remainingAccounts:void 0,preInstructions:void 0,postInstructions:void 0})}function Ae(r,e){return{bridge:S(r),guardianSet:x(r,0),feeCollector:C(r),payer:new m(e),clock:V,rent:U,systemProgram:M.programId}}function Ie(r,e,t,n,s,a,i){const o=w(e,r).methods.postMessage(a,g.Buffer.from(s),i);return o._ixFn(...o._args,{accounts:Z(e,t,n),signers:void 0,remainingAccounts:void 0,preInstructions:void 0,postInstructions:void 0})}function Z(r,e,t,n){let s;return n?{emitter:n,sequence:s}=H(n,r):(n=e,s=G(n,r)),{bridge:S(r),message:new m(t),emitter:new m(n),sequence:s,payer:new m(e),feeCollector:C(r),clock:V,rent:U,systemProgram:M.programId}}function xe(r,e,t,n,s){const a=w(e,r).methods.postVaa(1,n.guardianSet,n.timestamp,n.nonce,L(n.emitterChain),[...n.emitterAddress.toUint8Array()],new oe(n.sequence.toString()),n.consistencyLevel,g.Buffer.from(ve(n.payloadLiteral,n.payload)));return a._ixFn(...a._args,{accounts:Ee(e,t,s,n),signers:void 0,remainingAccounts:void 0,preInstructions:void 0,postInstructions:void 0})}function Ee(r,e,t,n){return{guardianSet:x(r,n.guardianSet),bridge:S(r),signatureSet:new m(t),vaa:E(r,g.Buffer.from(n.hash)),payer:new m(e),clock:V,rent:U,systemProgram:M.programId}}const ct=19;async function Be(r,e,t,n,s,a){const i=n.guardianSet,o=await J(r,e,i,a),c=n.signatures,f=o.keys,d=7,p=[];for(let y=0;y<Math.ceil(c.length/d);++y){const h=y*d,A=Math.min(c.length,(y+1)*d),k=new Array(ct).fill(-1),ee=[],te=[];for(let K=0;K<A-h;++K){const Y=c.at(K+h);ee.push(g.Buffer.from(Y.signature.encode())),te.push(f.at(Y.guardianIndex)),k[Y.guardianIndex]=K}p.push(He(ee,te,g.Buffer.from(n.hash))),p.push(gt(r,e,t,n,s,k))}return p}function gt(r,e,t,n,s,a){const i=w(e,r).methods.verifySignatures(a);return i._ixFn(...i._args,{accounts:Le(e,t,s,n),signers:void 0,remainingAccounts:void 0,preInstructions:void 0,postInstructions:void 0})}function Le(r,e,t,n){return{payer:new m(e),guardianSet:x(r,n.guardianSet),signatureSet:new m(t),instructions:ze,rent:U,systemProgram:M.programId}}function dt(r,e){const{emitter:t,sequence:n}=H(r,e);return{wormholeBridge:S(e),wormholeEmitter:t,wormholeSequence:n,wormholeFeeCollector:C(e)}}function ft(r,e,t,n){const s=Z(e,t,n,r);return{payer:s.payer,wormholeBridge:s.bridge,wormholeMessage:s.message,wormholeEmitter:s.emitter,wormholeSequence:s.sequence,wormholeFeeCollector:s.feeCollector,clock:s.clock,rent:s.rent,systemProgram:s.systemProgram}}const mt=Object.freeze(Object.defineProperty({__proto__:null,BridgeConfig:D,BridgeData:O,GuardianSetData:R,SequenceTracker:N,SignatureSetData:$,coder:he,createBridgeFeeTransferInstruction:pe,createInitializeInstruction:ut,createPostMessageInstruction:Ie,createPostVaaInstruction:xe,createReadOnlyWormholeProgramInterface:w,createSetFeesInstruction:st,createTransferFeesInstruction:at,createUpgradeContractInstruction:ot,createUpgradeGuardianSetInstruction:it,createVerifySignaturesInstructions:Be,createWormholeProgramInterface:ye,deriveClaimKey:T,deriveEmitterSequenceKey:G,deriveFeeCollectorKey:C,deriveGuardianSetKey:x,derivePostedVaaKey:E,deriveUpgradeAuthorityKey:le,deriveWormholeBridgeDataKey:S,deriveWormholeEmitterKey:W,getClaim:je,getEmitterKeys:H,getGuardianSet:J,getInitializeAccounts:Ae,getPostMessageAccounts:Z,getPostMessageCpiAccounts:ft,getPostVaaAccounts:Ee,getProgramSequenceTracker:We,getSequenceTracker:me,getSetFeesAccounts:Se,getSignatureSetData:Qe,getTransferFeesAccounts:we,getUpgradeContractAccounts:be,getUpgradeGuardianSetAccounts:Me,getVerifySignatureAccounts:Le,getWormholeBridgeData:fe,getWormholeDerivedAccounts:dt},Symbol.toStringTag,{value:"Module"})),ie="Program log: Sequence: ";class v{constructor(e,t,n,s){u(this,"network");u(this,"chain");u(this,"connection");u(this,"contracts");u(this,"chainId");u(this,"coreBridge");u(this,"address");u(this,"bridgeData");this.network=e,this.chain=t,this.connection=n,this.contracts=s,this.chainId=L(t);const a=s.coreBridge;if(!a)throw new Error(`CoreBridge contract Address for chain ${t} not found`);this.address=a,this.coreBridge=w(a,n)}async getGuardianSet(e){const t=await J(this.connection,this.coreBridge.programId,e);return{index:t.index,keys:t.keys.map(n=>n.toString("hex")),expiry:BigInt(t.expirationTime)}}static async fromRpc(e,t){const[n,s]=await De.chainFromRpc(e),a=t[s];if(a.network!==n)throw new Error(`Network mismatch for chain ${s}: ${a.network} != ${n}`);return new v(n,s,e,t[s].contracts)}async ensureBridgeConfig(){this.bridgeData||(this.bridgeData=await fe(this.connection,this.coreBridge.programId))}async getMessageFee(){return await this.ensureBridgeConfig(),this.bridgeData.config.fee}async getGuardianSetIndex(){return await this.ensureBridgeConfig(),this.bridgeData.guardianSetIndex}async*publishMessage(e,t,n,s){const a=re.generate(),i=new q(e).unwrap(),o=Ie(this.connection,this.coreBridge.programId,i,a.publicKey,t,n,s),c=await this.getMessageFee(),f=pe(this.coreBridge.programId,i,c),d=new j;d.feePayer=i,d.add(f,o),yield this.createUnsignedTx({transaction:d,signers:[a]},"Core.PublishMessage")}async*verifyMessage(e,t){yield*this.postVaa(e,t)}async*postVaa(e,t){const n=E(this.coreBridge.programId,g.Buffer.from(t.hash));if(await this.connection.getAccountInfo(n))return;const a=new q(e).unwrap(),i=re.generate(),o=await Be(this.connection,this.coreBridge.programId,a,t,i.publicKey);for(let f=0;f<o.length;f+=2){const d=new j().add(...o.slice(f,f+2));d.feePayer=a,yield this.createUnsignedTx({transaction:d,signers:[i]},"Core.VerifySignature",!0)}const c=new j().add(xe(this.connection,this.coreBridge.programId,a,t,i.publicKey));c.feePayer=a,yield this.createUnsignedTx({transaction:c},"Core.PostVAA")}static parseSequenceFromLog(e,t){var c,f,d,p;const{meta:n,transaction:{message:s}}=t;if(!((c=n==null?void 0:n.innerInstructions)!=null&&c.length))return[];const a=s.staticAccountKeys;if(a.filter(y=>y.toString()===e).length===0)return[];const i=(p=(d=(f=n==null?void 0:n.logMessages)==null?void 0:f.filter(y=>y.startsWith(ie)))==null?void 0:d[0])==null?void 0:p.replace(ie,"");if(!i)return[];const o=[];for(const y of n==null?void 0:n.innerInstructions){const h=y.instructions;o.push(...h.filter(A=>A.programIdIndex in a&&a[A.programIdIndex].toString()===e))}return o.length<1?[]:a.length<3?[]:o.map(y=>[new q(a[y.accounts[2]]).toUniversalAddress(),BigInt(i)]).filter(y=>y!==null)}async getMessageAccountKeys(e){let t;if(typeof e.transaction.message.version!="string")if(e.meta.loadedAddresses)t=e.transaction.message.getAccountKeys({accountKeysFromLookups:e.meta.loadedAddresses});else{const n=await Promise.all(e.transaction.message.addressTableLookups.map(async s=>{const a=await this.connection.getAddressLookupTable(s.accountKey);if(!a||!a.value)throw new Error("Could not resolve lookup table: "+s.accountKey.toBase58());return a.value}));t=e.transaction.message.getAccountKeys({addressLookupTableAccounts:n})}else t=e.transaction.message.getAccountKeys();return t}async findInstructions(e,t){var c;const{meta:n,transaction:{message:s}}=t,a=this.coreBridge.programId,i=(c=n.innerInstructions)==null?void 0:c.flatMap(f=>f.instructions.filter(d=>a.toString()===e.get(d.programIdIndex).toString())).map(f=>({programIdIndex:f.programIdIndex,accountKeyIndexes:f.accounts})),o=s.compiledInstructions.filter(f=>a.toString()===e.get(f.programIdIndex).toString());return[...i,...o]}async parsePostMessageAccount(e){const t=await this.connection.getAccountInfo(e);if(!(t!=null&&t.data))throw new Error("No data found in message account");const{timestamp:n,emitterAddress:s,emitterChain:a,consistencyLevel:i,sequence:o,nonce:c,payload:f}=de(new Uint8Array(t==null?void 0:t.data));return Ge("Uint8Array",{guardianSet:await this.getGuardianSetIndex(),emitterChain:Ke(a),timestamp:n,emitterAddress:s,consistencyLevel:i,sequence:o,nonce:c,payload:f,signatures:[]})}async parseTransaction(e){const t=await this.connection.getTransaction(e,{maxSupportedTransactionVersion:0});if(!t||!t.meta||!t.meta.innerInstructions)throw new Error("transaction not found");try{const i=v.parseSequenceFromLog(this.coreBridge.programId.toBase58(),t);if(i.length>0){const[o,c]=i[0];return[{chain:this.chain,emitter:o,sequence:c}]}}catch{}const n=await this.getMessageAccountKeys(t),s=await this.findInstructions(n,t);if(!s||s.length===0)throw new Error("no bridge messages found");const a=s.map(async i=>{const o=n.get(i.accountKeyIndexes[1]),c=await this.parsePostMessageAccount(o);return{chain:c.emitterChain,emitter:c.emitterAddress,sequence:c.sequence}});return await Promise.all(a)}async parseMessages(e){const t=await this.connection.getTransaction(e,{maxSupportedTransactionVersion:0});if(!t||!t.meta||!t.meta.innerInstructions)throw new Error("transaction not found");const n=await this.getMessageAccountKeys(t),s=await this.findInstructions(n,t);if(!s||s.length===0)throw new Error("no bridge messages found");const a=s.map(async i=>{const o=n.get(i.accountKeyIndexes[1]);return await this.parsePostMessageAccount(o)});return await Promise.all(a)}createUnsignedTx(e,t,n=!1){return new Oe(e,this.network,this.chain,t,n)}}Ne(qe,"WormholeCore",v);const At=Object.freeze(Object.defineProperty({__proto__:null,IDL:X,SolanaWormholeCore:v,deserializePostMessage:de,postMessageLayout:ge,utils:mt},Symbol.toStringTag,{value:"Module"}));export{ue as B,v as S,S as a,W as b,G as c,C as d,T as e,E as f,We as g,b as h,z as i,ce as j,bt as k,Z as l,Re as m,Mt as n,le as o,ft as p,dt as q,je as r,pe as s,At as t};
|