@wormhole-foundation/wormhole-connect 0.3.17 → 0.3.18-beta.0-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.
Files changed (103) hide show
  1. package/dist/assets/{ccip-ClzeMJ_j.js → ccip-Dkj0_PH1.js} +1 -1
  2. package/dist/assets/{evm-naJ7fLYH.js → evm-BDi9bPHV.js} +31 -31
  3. package/dist/assets/{index-IW_wClRI.js → index-BYhDDvwO.js} +1 -1
  4. package/dist/assets/index-CiEQK8J0.js +2 -0
  5. package/dist/assets/{index.es-EmnxJ1lb.js → index.es-D2AQfZFz.js} +2 -2
  6. package/dist/main.js +3 -3
  7. package/dist/src/utils/wallet/evm.d.ts.map +1 -1
  8. package/lib/{algorand-CkjY5D1K.mjs → algorand-DQDPJ26a.mjs} +4 -4
  9. package/lib/{algorand-DDnN_ID4.js → algorand-DVFRLYKg.js} +1 -1
  10. package/lib/{aptos-Z3iITKq8.mjs → aptos-4Buk4ifX.mjs} +4 -4
  11. package/lib/{aptos-6cTTvSk4.mjs → aptos-CUMbFUEx.mjs} +1 -1
  12. package/lib/{aptos-DB0RPcha.js → aptos-Cl1IkOfq.js} +2 -2
  13. package/lib/{aptos-D9ca5jNq.js → aptos-DvZHyaGi.js} +1 -1
  14. package/lib/{browser-AXXShtLO.mjs → browser-D7Z49wZ4.mjs} +2 -2
  15. package/lib/{browser-BvtYqM0e.js → browser-qdNhrgkB.js} +1 -1
  16. package/lib/{ccip-B52yS2oB.mjs → ccip-5tJ4iGbd.mjs} +1 -1
  17. package/lib/{ccip-Dp5-rp5Q.js → ccip-BKmEJ0zH.js} +1 -1
  18. package/lib/{chain-D9bp2EtQ.mjs → chain-B1FOQWsW.mjs} +1 -1
  19. package/lib/{chain-CPTe1tkD.js → chain-y7sg4yrp.js} +1 -1
  20. package/lib/{cosmos-BSz_B76G.mjs → cosmos-DW-Gxe0a.mjs} +6 -6
  21. package/lib/cosmos-DdK2yQGY.js +37 -0
  22. package/lib/{cosmwasm-CaHs2sxc.mjs → cosmwasm-Bh0-_wDY.mjs} +6 -6
  23. package/lib/{cosmwasm-Cv8Wo8qx.js → cosmwasm-CStFJLHq.js} +2 -2
  24. package/lib/{create-QAfMcr9_.js → create-BKtLWPjt.js} +1 -1
  25. package/lib/{create-BoVtddSH.mjs → create-B_LDrlra.mjs} +1 -1
  26. package/lib/{ens-validation.es6-ww_x-SMH.js → ens-validation.es6-B-mETPjs.js} +1 -1
  27. package/lib/{ens-validation.es6-DfAlPWse.mjs → ens-validation.es6-Cia-mNrr.mjs} +2 -2
  28. package/lib/{evm-BhVYgjXc.js → evm-CAQWUINN.js} +29 -29
  29. package/lib/{evm-DT3j3aq9.mjs → evm-CU-B8toy.mjs} +6 -6
  30. package/lib/{evm-CoPf1imE.js → evm-D0eVTsjc.js} +2 -2
  31. package/lib/{evm-CBuTwR-T.mjs → evm-DHOCCyVW.mjs} +1734 -1717
  32. package/lib/{index-gQ5agivz.mjs → index-B0L8gSK7.mjs} +4 -4
  33. package/lib/{index-2REgoevm.mjs → index-B1m57rRr.mjs} +2 -2
  34. package/lib/{index-DHpMqzxK.mjs → index-BGs-r2zq.mjs} +2 -2
  35. package/lib/{index-Bgifa0rO.js → index-BJoVvo22.js} +1 -1
  36. package/lib/index-BPu5tyJL.js +3 -0
  37. package/lib/{index-BGdIdofx.js → index-BQG8FYaZ.js} +1 -1
  38. package/lib/{index-C4CEddS7.mjs → index-BUmh6veA.mjs} +6 -6
  39. package/lib/{index-CKWTloVb.js → index-BXA5PZNU.js} +1 -1
  40. package/lib/{index-CZvnNuux.js → index-BZQPVPp1.js} +1 -1
  41. package/lib/{index-COMtOf9F.mjs → index-BgeAXYll.mjs} +3 -3
  42. package/lib/{index-BVYQzNvU.mjs → index-BoQrBK1v.mjs} +4 -4
  43. package/lib/{index-DebiDC3v.mjs → index-BsbdJZ3C.mjs} +86 -88
  44. package/lib/{index-DAGHPE-U.mjs → index-Bt_H55hU.mjs} +4 -4
  45. package/lib/{index-D6BOvMee.mjs → index-Bv2LxtBn.mjs} +4 -4
  46. package/lib/{index-Bxy33sJ9.js → index-BwXnmYxY.js} +1 -1
  47. package/lib/{index-D7PEJvME.mjs → index-C4Fm85ru.mjs} +5 -5
  48. package/lib/{index-3Zvo5oFL.mjs → index-C4_Mkq6F.mjs} +4 -4
  49. package/lib/{index-BH2yQPAH.js → index-C990TILJ.js} +1 -1
  50. package/lib/{index-CHReo22c.js → index-CGQQm-uD.js} +1 -1
  51. package/lib/{index-Qf6KscPe.js → index-CLTi6Axr.js} +1 -1
  52. package/lib/{index-Bem-zTo9.mjs → index-CRZAVeIL.mjs} +4 -4
  53. package/lib/{index-0QeIkLNc.mjs → index-CRb6g19u.mjs} +3 -3
  54. package/lib/{index-B6-c6P4Q.js → index-CczdQqB1.js} +1 -1
  55. package/lib/{index-D8KRWXVM.js → index-CerXrspf.js} +1 -1
  56. package/lib/{index-CZTcbGX2.mjs → index-CfV2repP.mjs} +4 -4
  57. package/lib/{index-B0l5_Q9J.js → index-Cl0Q32gB.js} +1 -1
  58. package/lib/{index-B2vcAnwF.mjs → index-Clfmas--.mjs} +5 -5
  59. package/lib/{index-GVnr7WyU.mjs → index-CnejtY47.mjs} +4 -4
  60. package/lib/{index-s1ZuI8l6.js → index-CyXba-yP.js} +1 -1
  61. package/lib/{index-DvPjni-v.js → index-D1bcMAs6.js} +8 -8
  62. package/lib/{index-TwqQtaM2.js → index-D1bwJjqp.js} +1 -1
  63. package/lib/{index-DApVqEXu.js → index-D7N3abQJ.js} +1 -1
  64. package/lib/{index-DfM7GTS8.js → index-DNiXK70O.js} +1 -1
  65. package/lib/{index-C3Zck5Rw.js → index-DRZymJsG.js} +1 -1
  66. package/lib/{index-5hwKi82D.mjs → index-DSkKbEm6.mjs} +4 -4
  67. package/lib/index-DTJXuc64.js +1 -0
  68. package/lib/{index-1Eo1l_aF.mjs → index-DZxCgz6D.mjs} +3 -3
  69. package/lib/{index-CCGipVdX.js → index-DgOzoVuQ.js} +1 -1
  70. package/lib/{index-BdEy6H3x.mjs → index-DnsX0bqc.mjs} +4 -4
  71. package/lib/{index-Bb-fizMd.mjs → index-DugpMXHv.mjs} +5 -5
  72. package/lib/{index-CbulvJtP.mjs → index-Dy60c9bL.mjs} +72 -72
  73. package/lib/{index-BkJT27UH.mjs → index-DyuvKSii.mjs} +2 -2
  74. package/lib/{index-pSA89lvn.js → index-OPTA8sRP.js} +1 -1
  75. package/lib/{index-jbKWljQq.js → index-UneRjAxx.js} +1 -1
  76. package/lib/{index-Vz6yRzMm.js → index-d2eR5hEX.js} +1 -1
  77. package/lib/{index-BuGANYoC.mjs → index-gmV4k3Io.mjs} +1 -1
  78. package/lib/{index.es-Be-95F-D.js → index.es-D0De3MOj.js} +2 -2
  79. package/lib/{index.es-DY974klV.mjs → index.es-DcCpnayP.mjs} +4 -4
  80. package/lib/index.js +1 -1
  81. package/lib/index.mjs +1 -1
  82. package/lib/{libsodium-wrappers-Cz4RSKFI.js → libsodium-wrappers-BgNKJA-N.js} +1 -1
  83. package/lib/{libsodium-wrappers-DdBVKoIT.mjs → libsodium-wrappers-D-Q49aE_.mjs} +1 -1
  84. package/lib/{sei-549wQo5R.mjs → sei-BoViQvrz.mjs} +2 -2
  85. package/lib/{sei-gjedWqjd.js → sei-DgZ6J40I.js} +1 -1
  86. package/lib/{solana-BTT9n5lW.js → solana-Bdi1CyTf.js} +1 -1
  87. package/lib/{solana-CLvKWwns.mjs → solana-Cj-WXpIF.mjs} +3 -3
  88. package/lib/{solana-jJHTew4W.js → solana-DWLxhhWn.js} +2 -2
  89. package/lib/{solana-BpvtC9Y9.mjs → solana-W4XruJeE.mjs} +6 -6
  90. package/lib/{solanaEmbed.esm-Bqx3MQQh.mjs → solanaEmbed.esm-CKfg1ioH.mjs} +2 -2
  91. package/lib/{solanaEmbed.esm-D-AOxyK6.js → solanaEmbed.esm-WXkst5_I.js} +1 -1
  92. package/lib/src/utils/wallet/evm.d.ts.map +1 -1
  93. package/lib/{sui-B-4YWOEj.js → sui-4Ygokvkl.js} +2 -2
  94. package/lib/{sui-DCCGAsfg.mjs → sui-BwXBW1lD.mjs} +1 -1
  95. package/lib/{sui-DYHKoyiY.js → sui-DFQxJJBA.js} +1 -1
  96. package/lib/{sui-DKRldaWr.mjs → sui-fzNqSygY.mjs} +4 -4
  97. package/lib/{unsignedTransaction-Cs6URPzx.js → unsignedTransaction-BcitBDHn.js} +1 -1
  98. package/lib/{unsignedTransaction-Byv6FNac.mjs → unsignedTransaction-Bh0f0Mvb.mjs} +2 -2
  99. package/package.json +1 -1
  100. package/dist/assets/index-CZxcLdx-.js +0 -2
  101. package/lib/cosmos-DQcVb2Ho.js +0 -37
  102. package/lib/index--52-Qo6j.js +0 -3
  103. package/lib/index-DzCniKbo.js +0 -1
@@ -1 +1 @@
1
- "use strict";var y=Object.defineProperty;var g=(d,e,t)=>e in d?y(d,e,{enumerable:!0,configurable:!0,writable:!0,value:t}):d[e]=t;var i=(d,e,t)=>(g(d,typeof e!="symbol"?e+"":e,t),t);Object.defineProperty(exports,Symbol.toStringTag,{value:"Module"});const r=require("./index-DvPjni-v.js"),o=require("./aptos-DB0RPcha.js"),f=require("./chain-CPTe1tkD.js");class k{constructor(e,t,s,n,a=!1){i(this,"transaction");i(this,"network");i(this,"chain");i(this,"description");i(this,"parallelizable");this.transaction=e,this.network=t,this.chain=s,this.description=n,this.parallelizable=a}}const w=[{name:"tokenBridgeAddress",...r.universalAddressItem},{name:"chain",...r.chainItem()},{name:"domainSeparator",binary:"bytes",custom:r.bytes.encode(o.APTOS_SEPARATOR),omit:!0},{name:"tokenId",...r.universalAddressItem},{name:"domainSeparator",binary:"bytes",custom:new Uint8Array([255]),omit:!0}],m=d=>r.serializeLayout(w,d);class c{constructor(e,t,s,n){i(this,"network");i(this,"chain");i(this,"connection");i(this,"contracts");i(this,"chainId");i(this,"tokenBridgeAddress");this.network=e,this.chain=t,this.connection=s,this.contracts=n,this.chainId=r.toChainId(t);const a=n.tokenBridge;if(!a)throw new Error(`TokenBridge contract Address for chain ${t} not found`);this.tokenBridgeAddress=a}static async fromRpc(e,t){const[s,n]=await o.AptosPlatform.chainFromRpc(e),a=t[n];if(a.network!==s)throw new Error("Network mismatch "+a.network+" !== "+s);return new c(s,n,e,a.contracts)}async isWrappedAsset(e){try{return await this.getOriginalAsset(e),!0}catch{return!1}}async getOriginalAsset(e){const t=e.toString().split(o.APTOS_SEPARATOR);let s;if(s=(await this.connection.getAccountResource(t[0],`${this.tokenBridgeAddress}::state::OriginInfo`)).data,!s)throw r.ErrNotWrapped;const n=r.toChain(parseInt(s.token_chain.number)),a=new r.UniversalAddress(s.token_address.external_address);return{chain:n,address:a}}async hasWrappedAsset(e){try{return await this.getWrappedAsset(e),!0}catch{}return!1}async getWrappedAsset(e){const t=await this.getAssetFullyQualifiedType(e);if(!t)throw new Error("Invalid asset address.");return await this.connection.getAccountResource(o.coalesceModuleAddress(t),`${this.tokenBridgeAddress}::state::OriginInfo`),r.toNative(this.chain,t)}async isTransferCompleted(e){const s=(await this.connection.getAccountResource(this.tokenBridgeAddress,`${this.tokenBridgeAddress}::state::State`)).data.consumed_vaas.elems.handle;try{return await this.connection.getTableItem(s,{key_type:"vector<u8>",value_type:"u8",key:`0x${r.dist.Buffer.from(r.keccak_256(e.hash)).toString("hex")}`}),!0}catch{return!1}}async getWrappedNative(){return r.toNative(this.chain,o.APTOS_COIN)}async*createAttestation(e,t){const s={chain:this.chain,address:new o.AptosAddress(e)},n=await this.getAssetFullyQualifiedType(s);if(!n)throw new Error("Invalid asset address.");yield this.createUnsignedTx({function:`${this.tokenBridgeAddress}::attest_token::attest_token_entry`,type_arguments:[n],arguments:[]},"Aptos.AttestToken")}async*submitAttestation(e,t){yield this.createUnsignedTx({function:`${this.tokenBridgeAddress}::wrapped::create_wrapped_coin_type`,type_arguments:[],arguments:[r.serialize(e)]},"Aptos.CreateWrappedCoinType");const s=await this.getAssetFullyQualifiedType(e.payload.token);if(!s)throw new Error("Invalid asset address.");yield this.createUnsignedTx({function:`${this.tokenBridgeAddress}::wrapped::create_wrapped_coin`,type_arguments:[s],arguments:[r.serialize(e)]},"Aptos.CreateWrappedCoin")}async*transfer(e,t,s,n,a){const A=0n,h=0n,l=r.isNative(s)?o.APTOS_COIN:s.toString(),u=t.address.toUniversalAddress().toUint8Array(),p=r.toChainId(t.chain);a?yield this.createUnsignedTx({function:`${this.tokenBridgeAddress}::transfer_tokens::transfer_tokens_with_payload_entry`,type_arguments:[l],arguments:[n,p,u,h,a]},"Aptos.TransferTokensWithPayload"):yield this.createUnsignedTx({function:`${this.tokenBridgeAddress}::transfer_tokens::transfer_tokens_entry`,type_arguments:[l],arguments:[n,p,u,A,h]},"Aptos.TransferTokens")}async*redeem(e,t,s=!0){const n=t.payload.token.chain===this.chain?await this.getTypeFromExternalAddress(t.payload.token.address.toString()):await this.getAssetFullyQualifiedType(t.payload.token);if(!n)throw new Error("Invalid asset address.");yield this.createUnsignedTx({function:`${this.tokenBridgeAddress}::complete_transfer::submit_vaa_and_register_entry`,type_arguments:[n],arguments:[r.serialize(t)]},"Aptos.CompleteTransfer")}async getAssetFullyQualifiedType(e){return e.chain===this.chain?o.isValidAptosType(e.address.toString())?e.address.toString():null:`${c.getForeignAssetAddress(this.chain,this.tokenBridgeAddress,e)}::coin::T`}async getTypeFromExternalAddress(e){try{const t=(await this.connection.getAccountResource(this.tokenBridgeAddress,`${this.tokenBridgeAddress}::state::State`)).data,{handle:s}=t.native_infos,n=await this.connection.getTableItem(s,{key_type:`${this.tokenBridgeAddress}::token_hash::TokenHash`,value_type:"0x1::type_info::TypeInfo",key:{hash:e}});return n?[n.account_address,r.hex.decode(n.module_name),r.hex.decode(n.struct_name)].join(o.APTOS_SEPARATOR):null}catch{return null}}static getForeignAssetAddress(e,t,s){if(r.isNative(s.address))throw new Error("Invalid token address");const n=m({chain:s.chain,tokenBridgeAddress:new o.AptosAddress(t).toUniversalAddress(),tokenId:s.address.toUniversalAddress()});return r.hex.encode(r.sha3_256(n),!0)}createUnsignedTx(e,t,s=!1){return new k(e,this.network,this.chain,t,s)}}f.registerProtocol("Aptos","TokenBridge",c);exports.AptosTokenBridge=c;
1
+ "use strict";var y=Object.defineProperty;var g=(d,e,t)=>e in d?y(d,e,{enumerable:!0,configurable:!0,writable:!0,value:t}):d[e]=t;var i=(d,e,t)=>(g(d,typeof e!="symbol"?e+"":e,t),t);Object.defineProperty(exports,Symbol.toStringTag,{value:"Module"});const r=require("./index-D1bcMAs6.js"),o=require("./aptos-Cl1IkOfq.js"),f=require("./chain-y7sg4yrp.js");class k{constructor(e,t,s,n,a=!1){i(this,"transaction");i(this,"network");i(this,"chain");i(this,"description");i(this,"parallelizable");this.transaction=e,this.network=t,this.chain=s,this.description=n,this.parallelizable=a}}const w=[{name:"tokenBridgeAddress",...r.universalAddressItem},{name:"chain",...r.chainItem()},{name:"domainSeparator",binary:"bytes",custom:r.bytes.encode(o.APTOS_SEPARATOR),omit:!0},{name:"tokenId",...r.universalAddressItem},{name:"domainSeparator",binary:"bytes",custom:new Uint8Array([255]),omit:!0}],m=d=>r.serializeLayout(w,d);class c{constructor(e,t,s,n){i(this,"network");i(this,"chain");i(this,"connection");i(this,"contracts");i(this,"chainId");i(this,"tokenBridgeAddress");this.network=e,this.chain=t,this.connection=s,this.contracts=n,this.chainId=r.toChainId(t);const a=n.tokenBridge;if(!a)throw new Error(`TokenBridge contract Address for chain ${t} not found`);this.tokenBridgeAddress=a}static async fromRpc(e,t){const[s,n]=await o.AptosPlatform.chainFromRpc(e),a=t[n];if(a.network!==s)throw new Error("Network mismatch "+a.network+" !== "+s);return new c(s,n,e,a.contracts)}async isWrappedAsset(e){try{return await this.getOriginalAsset(e),!0}catch{return!1}}async getOriginalAsset(e){const t=e.toString().split(o.APTOS_SEPARATOR);let s;if(s=(await this.connection.getAccountResource(t[0],`${this.tokenBridgeAddress}::state::OriginInfo`)).data,!s)throw r.ErrNotWrapped;const n=r.toChain(parseInt(s.token_chain.number)),a=new r.UniversalAddress(s.token_address.external_address);return{chain:n,address:a}}async hasWrappedAsset(e){try{return await this.getWrappedAsset(e),!0}catch{}return!1}async getWrappedAsset(e){const t=await this.getAssetFullyQualifiedType(e);if(!t)throw new Error("Invalid asset address.");return await this.connection.getAccountResource(o.coalesceModuleAddress(t),`${this.tokenBridgeAddress}::state::OriginInfo`),r.toNative(this.chain,t)}async isTransferCompleted(e){const s=(await this.connection.getAccountResource(this.tokenBridgeAddress,`${this.tokenBridgeAddress}::state::State`)).data.consumed_vaas.elems.handle;try{return await this.connection.getTableItem(s,{key_type:"vector<u8>",value_type:"u8",key:`0x${r.dist.Buffer.from(r.keccak_256(e.hash)).toString("hex")}`}),!0}catch{return!1}}async getWrappedNative(){return r.toNative(this.chain,o.APTOS_COIN)}async*createAttestation(e,t){const s={chain:this.chain,address:new o.AptosAddress(e)},n=await this.getAssetFullyQualifiedType(s);if(!n)throw new Error("Invalid asset address.");yield this.createUnsignedTx({function:`${this.tokenBridgeAddress}::attest_token::attest_token_entry`,type_arguments:[n],arguments:[]},"Aptos.AttestToken")}async*submitAttestation(e,t){yield this.createUnsignedTx({function:`${this.tokenBridgeAddress}::wrapped::create_wrapped_coin_type`,type_arguments:[],arguments:[r.serialize(e)]},"Aptos.CreateWrappedCoinType");const s=await this.getAssetFullyQualifiedType(e.payload.token);if(!s)throw new Error("Invalid asset address.");yield this.createUnsignedTx({function:`${this.tokenBridgeAddress}::wrapped::create_wrapped_coin`,type_arguments:[s],arguments:[r.serialize(e)]},"Aptos.CreateWrappedCoin")}async*transfer(e,t,s,n,a){const A=0n,h=0n,l=r.isNative(s)?o.APTOS_COIN:s.toString(),u=t.address.toUniversalAddress().toUint8Array(),p=r.toChainId(t.chain);a?yield this.createUnsignedTx({function:`${this.tokenBridgeAddress}::transfer_tokens::transfer_tokens_with_payload_entry`,type_arguments:[l],arguments:[n,p,u,h,a]},"Aptos.TransferTokensWithPayload"):yield this.createUnsignedTx({function:`${this.tokenBridgeAddress}::transfer_tokens::transfer_tokens_entry`,type_arguments:[l],arguments:[n,p,u,A,h]},"Aptos.TransferTokens")}async*redeem(e,t,s=!0){const n=t.payload.token.chain===this.chain?await this.getTypeFromExternalAddress(t.payload.token.address.toString()):await this.getAssetFullyQualifiedType(t.payload.token);if(!n)throw new Error("Invalid asset address.");yield this.createUnsignedTx({function:`${this.tokenBridgeAddress}::complete_transfer::submit_vaa_and_register_entry`,type_arguments:[n],arguments:[r.serialize(t)]},"Aptos.CompleteTransfer")}async getAssetFullyQualifiedType(e){return e.chain===this.chain?o.isValidAptosType(e.address.toString())?e.address.toString():null:`${c.getForeignAssetAddress(this.chain,this.tokenBridgeAddress,e)}::coin::T`}async getTypeFromExternalAddress(e){try{const t=(await this.connection.getAccountResource(this.tokenBridgeAddress,`${this.tokenBridgeAddress}::state::State`)).data,{handle:s}=t.native_infos,n=await this.connection.getTableItem(s,{key_type:`${this.tokenBridgeAddress}::token_hash::TokenHash`,value_type:"0x1::type_info::TypeInfo",key:{hash:e}});return n?[n.account_address,r.hex.decode(n.module_name),r.hex.decode(n.struct_name)].join(o.APTOS_SEPARATOR):null}catch{return null}}static getForeignAssetAddress(e,t,s){if(r.isNative(s.address))throw new Error("Invalid token address");const n=m({chain:s.chain,tokenBridgeAddress:new o.AptosAddress(t).toUniversalAddress(),tokenId:s.address.toUniversalAddress()});return r.hex.encode(r.sha3_256(n),!0)}createUnsignedTx(e,t,s=!1){return new k(e,this.network,this.chain,t,s)}}f.registerProtocol("Aptos","TokenBridge",c);exports.AptosTokenBridge=c;
@@ -1,10 +1,10 @@
1
1
  var V = Object.defineProperty;
2
2
  var Q = (O, s, t) => s in O ? V(O, s, { enumerable: !0, configurable: !0, writable: !0, value: t }) : O[s] = t;
3
3
  var d = (O, s, t) => (Q(O, typeof s != "symbol" ? s + "" : s, t), t);
4
- import { A as S, S as g, a as X } from "./index-D6BOvMee.mjs";
5
- import { cG as Y, b5 as C, bp as $, cv as q, cH as _, cy as D, c6 as Z, aC as b, au as tt, bO as z, cz as y, cA as k, cD as W, b_ as L, az as et, bG as H, cI as st, cJ as K, cK as ot } from "./index-DebiDC3v.mjs";
6
- import { a as nt, A as l, s as u, _ as rt } from "./algorand-CkjY5D1K.mjs";
7
- import { r as at } from "./chain-D9bp2EtQ.mjs";
4
+ import { A as S, S as g, a as X } from "./index-Bv2LxtBn.mjs";
5
+ import { cG as Y, b5 as C, bp as $, cv as q, cH as _, cy as D, c6 as Z, aC as b, au as tt, bO as z, cz as y, cA as k, cD as W, b_ as L, az as et, bG as H, cI as st, cJ as K, cK as ot } from "./index-BsbdJZ3C.mjs";
6
+ import { a as nt, A as l, s as u, _ as rt } from "./algorand-DQDPJ26a.mjs";
7
+ import { r as at } from "./chain-B1FOQWsW.mjs";
8
8
  const G = Y.fromSignature("portal_transfer(byte[])byte[]"), c = class c {
9
9
  constructor(s, t, n, o) {
10
10
  d(this, "network");
@@ -1,9 +1,9 @@
1
1
  var Nt = Object.defineProperty;
2
2
  var Dt = (s, e, t) => e in s ? Nt(s, e, { enumerable: !0, configurable: !0, writable: !0, value: t }) : s[e] = t;
3
3
  var Z = (s, e, t) => (Dt(s, typeof e != "symbol" ? e + "" : e, t), t);
4
- import { n as b, aH as C, aI as p, aJ as y, aK as U, aL as T, aM as X, aN as ae, aO as H, aP as st, aQ as j, a2 as W, aF as Ae, aG as qe, aR as he, aS as Wt, aT as zt, aU as Lt, aV as Ut, aW as Ft, cb as Ve, c9 as qt, ca as Vt, ce as rt, d as se, cj as He, c1 as at, at as Ht, c2 as je, c0 as jt, c3 as Ge } from "./index-DebiDC3v.mjs";
5
- import { r as Gt } from "./chain-D9bp2EtQ.mjs";
6
- import { a as xe, S as $t, b as Jt, _ as Xt } from "./solana-BpvtC9Y9.mjs";
4
+ import { n as b, aH as C, aI as p, aJ as y, aK as U, aL as T, aM as X, aN as ae, aO as H, aP as st, aQ as j, a2 as W, aF as Ae, aG as qe, aR as he, aS as Wt, aT as zt, aU as Lt, aV as Ut, aW as Ft, cb as Ve, c9 as qt, ca as Vt, ce as rt, d as se, cj as He, c1 as at, at as Ht, c2 as je, c0 as jt, c3 as Ge } from "./index-BsbdJZ3C.mjs";
5
+ import { r as Gt } from "./chain-B1FOQWsW.mjs";
6
+ import { a as xe, S as $t, b as Jt, _ as Xt } from "./solana-W4XruJeE.mjs";
7
7
  import { c as it } from "./index-DpFNxVts.mjs";
8
8
  class Yt extends TypeError {
9
9
  constructor(e, t) {
@@ -1 +1 @@
1
- "use strict";var m=Object.defineProperty;var u=(i,e,t)=>e in i?m(i,e,{enumerable:!0,configurable:!0,writable:!0,value:t}):i[e]=t;var s=(i,e,t)=>(u(i,typeof e!="symbol"?e+"":e,t),t);Object.defineProperty(exports,Symbol.toStringTag,{value:"Module"});const d=require("./index-DvPjni-v.js"),w=require("./aptos-DB0RPcha.js"),g=require("./create-QAfMcr9_.js"),p=require("./chain-CPTe1tkD.js");class c{constructor(e,t,r,o){s(this,"network");s(this,"chain");s(this,"connection");s(this,"contracts");s(this,"chainId");s(this,"coreBridge");this.network=e,this.chain=t,this.connection=r,this.contracts=o,this.chainId=d.toChainId(t);const n=o.coreBridge;if(!n)throw new Error(`CoreBridge contract Address for chain ${t} not found`);this.coreBridge=n}getGuardianSet(e){throw new Error("Method not implemented.")}getGuardianSetIndex(){throw new Error("Method not implemented.")}getMessageFee(){throw new Error("Method not implemented.")}static async fromRpc(e,t){const[r,o]=await w.AptosPlatform.chainFromRpc(e),n=t[o];if(n.network!==r)throw new Error(`Network mismatch: ${n.network} !== ${r}`);return new c(r,o,e,n.contracts)}async*publishMessage(e,t){throw new Error("Method not implemented.")}async*verifyMessage(e,t){throw new Error("Not implemented.")}async parseTransaction(e){return(await this.parseMessages(e)).map(r=>({chain:r.emitterChain,emitter:r.emitterAddress,sequence:r.sequence}))}async parseMessages(e){const t=await this.connection.getTransactionByHash(e);if(t.type!=="user_transaction")throw new Error(`${e} is not a user_transaction`);const o=t.events.filter(n=>n.type.endsWith("WormholeMessage"));if(!o||o.length===0)throw new Error(`WormholeMessage not found for ${e}`);return o.map(n=>{const a=n.data,h=new d.UniversalAddress(BigInt(a.sender).toString(16).padStart(64,"0"));return g.createVAA("Uint8Array",{guardianSet:0,emitterChain:this.chain,emitterAddress:h,sequence:BigInt(a.sequence),timestamp:Number(a.timestamp),consistencyLevel:a.consistency_level,nonce:Number(a.nonce),signatures:[],payload:d.hex.decode(a.payload)})})}}p.registerProtocol("Aptos","WormholeCore",c);exports.AptosWormholeCore=c;
1
+ "use strict";var m=Object.defineProperty;var u=(i,e,t)=>e in i?m(i,e,{enumerable:!0,configurable:!0,writable:!0,value:t}):i[e]=t;var s=(i,e,t)=>(u(i,typeof e!="symbol"?e+"":e,t),t);Object.defineProperty(exports,Symbol.toStringTag,{value:"Module"});const d=require("./index-D1bcMAs6.js"),w=require("./aptos-Cl1IkOfq.js"),g=require("./create-BKtLWPjt.js"),p=require("./chain-y7sg4yrp.js");class c{constructor(e,t,r,o){s(this,"network");s(this,"chain");s(this,"connection");s(this,"contracts");s(this,"chainId");s(this,"coreBridge");this.network=e,this.chain=t,this.connection=r,this.contracts=o,this.chainId=d.toChainId(t);const n=o.coreBridge;if(!n)throw new Error(`CoreBridge contract Address for chain ${t} not found`);this.coreBridge=n}getGuardianSet(e){throw new Error("Method not implemented.")}getGuardianSetIndex(){throw new Error("Method not implemented.")}getMessageFee(){throw new Error("Method not implemented.")}static async fromRpc(e,t){const[r,o]=await w.AptosPlatform.chainFromRpc(e),n=t[o];if(n.network!==r)throw new Error(`Network mismatch: ${n.network} !== ${r}`);return new c(r,o,e,n.contracts)}async*publishMessage(e,t){throw new Error("Method not implemented.")}async*verifyMessage(e,t){throw new Error("Not implemented.")}async parseTransaction(e){return(await this.parseMessages(e)).map(r=>({chain:r.emitterChain,emitter:r.emitterAddress,sequence:r.sequence}))}async parseMessages(e){const t=await this.connection.getTransactionByHash(e);if(t.type!=="user_transaction")throw new Error(`${e} is not a user_transaction`);const o=t.events.filter(n=>n.type.endsWith("WormholeMessage"));if(!o||o.length===0)throw new Error(`WormholeMessage not found for ${e}`);return o.map(n=>{const a=n.data,h=new d.UniversalAddress(BigInt(a.sender).toString(16).padStart(64,"0"));return g.createVAA("Uint8Array",{guardianSet:0,emitterChain:this.chain,emitterAddress:h,sequence:BigInt(a.sequence),timestamp:Number(a.timestamp),consistencyLevel:a.consistency_level,nonce:Number(a.nonce),signatures:[],payload:d.hex.decode(a.payload)})})}}p.registerProtocol("Aptos","WormholeCore",c);exports.AptosWormholeCore=c;
@@ -1 +1 @@
1
- "use strict";var D=Object.defineProperty;var H=(o,e,t)=>e in o?D(o,e,{enumerable:!0,configurable:!0,writable:!0,value:t}):o[e]=t;var p=(o,e,t)=>(H(o,typeof e!="symbol"?e+"":e,t),t);const n=require("./index-DvPjni-v.js"),l=require("./algorand-DDnN_ID4.js"),z=require("./create-QAfMcr9_.js"),$=require("./chain-CPTe1tkD.js");class K{constructor(e,t,r,s,i=!1){p(this,"transaction");p(this,"network");p(this,"chain");p(this,"description");p(this,"parallelizable");this.transaction=e,this.network=t,this.chain=r,this.description=s,this.parallelizable=i}}const V=1002e3,U=15,L=127,C=8,N=L*C,F=L*U,O=C*F,y={_limit:127,encodingLength:o=>{let e=0;for(;o>=128;e++)o>>=7;return e+1},encode:(o,e,t)=>{if(typeof o=="bigint"&&(o=l.safeBigIntToNumber(o)),o<0)throw new RangeError("value must be unsigned");const r=y.encodingLength(o);if(e=e||new ArrayBuffer(r),t=t||0,e.byteLength<t+r)throw new RangeError("the buffer is too small to encode the number at the offset");const s=new Uint8Array(e,t);let i=0;for(;y._limit<o;)s[i++]=o&y._limit|128,o>>=7;return s[i]=Number(o),s},decode:(o,e=0)=>{let t=0,r=0,s;do{if(s=o[e+r],s===void 0)throw new RangeError("offset out of range");t+=(s&y._limit)<<r*7,r++}while(128<=s);return t}},u={forMessageId:(o,e)=>{const t=n.decodeAddress(n.getApplicationAddress(o)).publicKey,r=e.emitter.toUniversalAddress().toUint8Array(),s=n.bignum.toBytes(BigInt(n.toChainId(e.chain)),2),i=n.bytes.concat(s,r);return u.fromData({appId:o,appAddress:t,idx:e.sequence/BigInt(O),address:i})},forWrappedAsset:(o,e)=>{if(n.isNative(e.address))throw new Error("native asset cannot be a wrapped asset");const t=n.decodeAddress(n.getApplicationAddress(o)).publicKey;return u.fromData({appId:o,appAddress:t,idx:BigInt(n.toChainId(e.chain)),address:e.address.toUniversalAddress().toUint8Array()})},forNativeAsset:(o,e)=>{const t=n.decodeAddress(n.getApplicationAddress(o)).publicKey;return u.fromData({appId:o,appAddress:t,idx:e,address:n.bytes.encode("native")})},forGuardianSet:(o,e)=>{const t=n.decodeAddress(n.getApplicationAddress(o)).publicKey;return u.fromData({appId:o,appAddress:t,idx:BigInt(e),address:n.bytes.encode("guardian")})},forEmitter:(o,e)=>{const t=n.decodeAddress(n.getApplicationAddress(o)).publicKey;return u.fromData({appId:o,appAddress:t,idx:0n,address:e})},_encode:o=>typeof o=="bigint"?[n.hex.encode(y.encode(o))]:[n.hex.encode(y.encode(o.length)),n.hex.encode(o)],fromData:o=>{const e=["0620010181",...u._encode(o.idx),"4880",...u._encode(o.address),"483110810612443119221244311881",...u._encode(o.appId),"1244312080",...u._encode(o.appAddress),"124431018100124431093203124431153203124422"],t=n.hex.decode(e.join(""));return new n.LogicSigAccount(t)},decodeLocalState:async(o,e,t)=>{let r;try{const a=await o.accountApplicationInformation(t,l.safeBigIntToNumber(e)).do();r=n.AccountApplicationResponse.from_obj_for_encoding(a).appLocalState}catch{return new Uint8Array}const s=n.b64.encode("meta");let i=new Map;for(const a of r.keyValue){if(a.key===s)continue;const g=n.b64.decode(a.key)[0],A=n.b64.decode(a.value.bytes);i.set(g,A)}const d=[];for(let a=0;a<U;a++)i.has(a)&&d.push(i.get(a));return n.bytes.concat(...d)},checkBitsSet:async(o,e,t,r)=>{let s=!1,i;const d=await o.accountInformation(t).do(),g=n.Account.from_obj_for_encoding(d).appsLocalState;if(g&&g.forEach(m=>{BigInt(m.id)===e&&(i=m.keyValue)}),(i==null?void 0:i.length)===0)return s;const A=BigInt(O),h=BigInt(8),b=r/A*A,x=l.safeBigIntToNumber(r-b),w=Math.floor(x/N),I=Math.floor((x-w*N)/8),_=n.b64.encode(n.bignum.toBytes(w,1));return i==null||i.forEach(m=>{if(m.key===_){const k=n.dist.Buffer.from(m.value.bytes,"base64"),S=1<<l.safeBigIntToNumber(r%h);s=(k[I]&S)!=0;return}}),s},storageAccountExists:async(o,e,t)=>{try{const r=await o.accountApplicationInformation(e,l.safeBigIntToNumber(t)).do();return Object.keys(r).length>0}catch{}return!1}},c=class c{constructor(e,t,r,s){p(this,"network");p(this,"chain");p(this,"connection");p(this,"contracts");p(this,"chainId");p(this,"coreAppId");p(this,"coreAppAddress");p(this,"tokenBridgeAppId");p(this,"tokenBridgeAppAddress");if(this.network=e,this.chain=t,this.connection=r,this.contracts=s,this.chainId=n.toChainId(t),!s.coreBridge)throw new Error(`Core contract address for chain ${t} not found`);const i=BigInt(s.coreBridge);if(this.coreAppId=i,this.coreAppAddress=n.getApplicationAddress(i),!s.tokenBridge)throw new Error(`TokenBridge contract address for chain ${t} not found`);const d=BigInt(s.tokenBridge);this.tokenBridgeAppId=d,this.tokenBridgeAppAddress=n.getApplicationAddress(d)}getGuardianSet(e){throw new Error("Method not implemented.")}async*verifyMessage(e,t,r){const s=new l.AlgorandAddress(e).toString(),i=await c.submitVAAHeader(this.connection,this.coreAppId,r??this.coreAppId,t,s);for(const d of i.txs)yield this.createUnsignedTx(d,"Core.verifyMessage")}static async fromRpc(e,t){const[r,s]=await l.AlgorandPlatform.chainFromRpc(e),i=t[s];if(i.network!==r)throw new Error(`Network mismatch: ${i.network} !== ${r}`);return new c(r,s,e,i.contracts)}async*publishMessage(e,t){const r=new l.AlgorandAddress(e),s=r.toString(),i=await this.connection.getTransactionParams().do(),d=u.forEmitter(this.coreAppId,r.toUint8Array()),{accounts:a,txs:g}=await c.maybeCreateStorageTx(this.connection,s,this.coreAppId,d,i);for(const h of g)yield this.createUnsignedTx(h,"Core.publishMessage",!0);const A=n.makeApplicationCallTxnFromObject({from:s,appIndex:l.safeBigIntToNumber(this.coreAppId),appArgs:[c.publishMessage,t,n.bignum.toBytes(0n,8)],accounts:a,onComplete:n.OnApplicationComplete.NoOpOC,suggestedParams:i});yield this.createUnsignedTx({tx:A},"Core.publishMessage",!0)}async getMessageFee(){var s;const e=await this.connection.getApplicationByID(l.safeBigIntToNumber(this.coreAppId)).do(),r=(s=n.Application.from_obj_for_encoding(e).params.globalState)==null?void 0:s.find(i=>i.key===c.feeKey);return r?BigInt(r.value.uint):0n}async getGuardianSetIndex(){throw new Error("Not implemented")}async parseTransaction(e){const t=await this.connection.pendingTransactionInformation(e).do(),r=n.PendingTransactionResponse.from_obj_for_encoding(t);return this.parseTx(r).map(s=>({chain:s.emitterChain,emitter:s.emitterAddress,sequence:s.sequence}))}async parseMessages(e){const t=await this.connection.pendingTransactionInformation(e).do(),r=n.PendingTransactionResponse.from_obj_for_encoding(t);return this.parseTx(r)}parseTx(e){const t=[];if(e.innerTxns&&e.innerTxns.length>0&&t.push(...e.innerTxns.flatMap(g=>this.parseTx(g))),BigInt(e.txn.txn.apid??0)!==this.coreAppId||!e.logs||e.logs.length===0)return t;const r=e.txn.txn.apaa??[];if(r.length!==3||!n.bytes.equals(new Uint8Array(r[0]),c.publishMessage))return t;const s=n.bignum.decode(e.logs[0]),i=new l.AlgorandAddress(e.txn.txn.snd).toUniversalAddress(),d=new Uint8Array(r[1]),a=n.bignum.decode(r[2]);return t.push(z.createVAA("Uint8Array",{emitterChain:this.chain,emitterAddress:i,sequence:s,guardianSet:0,timestamp:0,consistencyLevel:0,nonce:Number(a),payload:d,signatures:[]})),t}static async maybeCreateStorageTx(e,t,r,s,i){const d=n.getApplicationAddress(r),a=s.address(),g=[];if(await u.storageAccountExists(e,a,r))return{accounts:[a],txs:g};i=i??await e.getTransactionParams().do();const A=n.makePaymentTxnWithSuggestedParamsFromObject({from:t,to:a,amount:V,suggestedParams:i});A.fee=A.fee*2,g.push({tx:A});const h=n.makeApplicationOptInTxnFromObject({from:a,appIndex:l.safeBigIntToNumber(r),rekeyTo:d,suggestedParams:i});return h.fee=0,g.push({tx:h,signer:{address:s.address(),signTxn:b=>Promise.resolve(n.signLogicSigTransaction(b,s).blob)}}),{accounts:[a],txs:g}}static async submitVAAHeader(e,t,r,s,i,d){d=d??await e.getTransactionParams().do();let a=[];const g=u.forMessageId(r,{chain:s.emitterChain,sequence:s.sequence,emitter:s.emitterAddress}),{accounts:A,txs:h}=await c.maybeCreateStorageTx(e,i,r,g,d);a.push(...h);const b=u.forGuardianSet(t,s.guardianSet),{accounts:[x],txs:w}=await c.maybeCreateStorageTx(e,i,t,b,d);a.push(...w);let I=[...A,x];const _=await u.decodeLocalState(e,t,x),m=n.keccak_256(s.hash),k=s.signatures.length,S=Math.ceil(k/c.MAX_SIGS_PER_TXN),E=20,v=new n.LogicSigAccount(c.ALGO_VERIFY);for(let R=0;R<S;R++){const G=R*c.MAX_SIGS_PER_TXN,B=s.signatures.slice(G,G+c.MAX_SIGS_PER_TXN),Y=B.length*E,X=new Uint8Array(Y);for(let f=0;f<B.length;f++){const j=B[f],q=_.slice(j.guardianIndex*E+1,(j.guardianIndex+1)*E+1);X.set(q,f*20)}const P=n.makeApplicationCallTxnFromObject({appArgs:[c.verifySigs,n.bytes.concat(...B.map(f=>n.bytes.concat(new Uint8Array([f.guardianIndex]),f.signature.encode()))),X,m],accounts:I,appIndex:l.safeBigIntToNumber(t),from:c.ALGO_VERIFY_HASH,onComplete:n.OnApplicationComplete.NoOpOC,suggestedParams:d});P.fee=0,a.push({tx:P,signer:{address:v.address(),signTxn:f=>Promise.resolve(n.signLogicSigTransaction(f,v).blob)}})}const M=n.makeApplicationCallTxnFromObject({appArgs:[c.verifyVaa,n.serialize(s)],accounts:I,appIndex:l.safeBigIntToNumber(t),from:i,onComplete:n.OnApplicationComplete.NoOpOC,suggestedParams:d});return M.fee=M.fee*(2+S),a.push({tx:M}),{accounts:I,txs:a}}createUnsignedTx(e,t,r=!0){return new K(e,this.network,this.chain,t,r)}};p(c,"MAX_SIGS_PER_TXN",6),p(c,"ALGO_VERIFY_HASH","EZATROXX2HISIRZDRGXW4LRQ46Z6IUJYYIHU3PJGP7P5IQDPKVX42N767A"),p(c,"ALGO_VERIFY",new Uint8Array([6,32,4,1,0,32,20,38,1,0,49,32,50,3,18,68,49,1,35,18,68,49,16,129,6,18,68,54,26,1,54,26,3,54,26,2,136,0,3,68,34,67,53,2,53,1,53,0,40,53,240,40,53,241,52,0,21,53,5,35,53,3,35,53,4,52,3,52,5,12,65,0,68,52,1,52,0,52,3,129,65,8,34,88,23,52,0,52,3,34,8,36,88,52,0,52,3,129,33,8,36,88,7,0,53,241,53,240,52,2,52,4,37,88,52,240,52,241,80,2,87,12,20,18,68,52,3,129,66,8,53,3,52,4,37,8,53,4,66,255,180,34,137])),p(c,"feeKey",n.b64.encode("MessageFee")),p(c,"verifyVaa",n.bytes.encode("verifyVAA")),p(c,"verifySigs",n.bytes.encode("verifySigs")),p(c,"publishMessage",n.bytes.encode("publishMessage"));let T=c;$.registerProtocol("Algorand","WormholeCore",T);const Z=Object.freeze(Object.defineProperty({__proto__:null,AlgorandWormholeCore:T,BITS_PER_BYTE:C,BITS_PER_KEY:N,MAX_BITS:O,MAX_BYTES:F,MAX_BYTES_PER_KEY:L,MAX_KEYS:U,SEED_AMT:V,StorageLogicSig:u,varint:y},Symbol.toStringTag,{value:"Module"}));exports.AlgorandUnsignedTransaction=K;exports.AlgorandWormholeCore=T;exports.StorageLogicSig=u;exports.index=Z;
1
+ "use strict";var D=Object.defineProperty;var H=(o,e,t)=>e in o?D(o,e,{enumerable:!0,configurable:!0,writable:!0,value:t}):o[e]=t;var p=(o,e,t)=>(H(o,typeof e!="symbol"?e+"":e,t),t);const n=require("./index-D1bcMAs6.js"),l=require("./algorand-DVFRLYKg.js"),z=require("./create-BKtLWPjt.js"),$=require("./chain-y7sg4yrp.js");class K{constructor(e,t,r,s,i=!1){p(this,"transaction");p(this,"network");p(this,"chain");p(this,"description");p(this,"parallelizable");this.transaction=e,this.network=t,this.chain=r,this.description=s,this.parallelizable=i}}const V=1002e3,U=15,L=127,C=8,N=L*C,F=L*U,O=C*F,y={_limit:127,encodingLength:o=>{let e=0;for(;o>=128;e++)o>>=7;return e+1},encode:(o,e,t)=>{if(typeof o=="bigint"&&(o=l.safeBigIntToNumber(o)),o<0)throw new RangeError("value must be unsigned");const r=y.encodingLength(o);if(e=e||new ArrayBuffer(r),t=t||0,e.byteLength<t+r)throw new RangeError("the buffer is too small to encode the number at the offset");const s=new Uint8Array(e,t);let i=0;for(;y._limit<o;)s[i++]=o&y._limit|128,o>>=7;return s[i]=Number(o),s},decode:(o,e=0)=>{let t=0,r=0,s;do{if(s=o[e+r],s===void 0)throw new RangeError("offset out of range");t+=(s&y._limit)<<r*7,r++}while(128<=s);return t}},u={forMessageId:(o,e)=>{const t=n.decodeAddress(n.getApplicationAddress(o)).publicKey,r=e.emitter.toUniversalAddress().toUint8Array(),s=n.bignum.toBytes(BigInt(n.toChainId(e.chain)),2),i=n.bytes.concat(s,r);return u.fromData({appId:o,appAddress:t,idx:e.sequence/BigInt(O),address:i})},forWrappedAsset:(o,e)=>{if(n.isNative(e.address))throw new Error("native asset cannot be a wrapped asset");const t=n.decodeAddress(n.getApplicationAddress(o)).publicKey;return u.fromData({appId:o,appAddress:t,idx:BigInt(n.toChainId(e.chain)),address:e.address.toUniversalAddress().toUint8Array()})},forNativeAsset:(o,e)=>{const t=n.decodeAddress(n.getApplicationAddress(o)).publicKey;return u.fromData({appId:o,appAddress:t,idx:e,address:n.bytes.encode("native")})},forGuardianSet:(o,e)=>{const t=n.decodeAddress(n.getApplicationAddress(o)).publicKey;return u.fromData({appId:o,appAddress:t,idx:BigInt(e),address:n.bytes.encode("guardian")})},forEmitter:(o,e)=>{const t=n.decodeAddress(n.getApplicationAddress(o)).publicKey;return u.fromData({appId:o,appAddress:t,idx:0n,address:e})},_encode:o=>typeof o=="bigint"?[n.hex.encode(y.encode(o))]:[n.hex.encode(y.encode(o.length)),n.hex.encode(o)],fromData:o=>{const e=["0620010181",...u._encode(o.idx),"4880",...u._encode(o.address),"483110810612443119221244311881",...u._encode(o.appId),"1244312080",...u._encode(o.appAddress),"124431018100124431093203124431153203124422"],t=n.hex.decode(e.join(""));return new n.LogicSigAccount(t)},decodeLocalState:async(o,e,t)=>{let r;try{const a=await o.accountApplicationInformation(t,l.safeBigIntToNumber(e)).do();r=n.AccountApplicationResponse.from_obj_for_encoding(a).appLocalState}catch{return new Uint8Array}const s=n.b64.encode("meta");let i=new Map;for(const a of r.keyValue){if(a.key===s)continue;const g=n.b64.decode(a.key)[0],A=n.b64.decode(a.value.bytes);i.set(g,A)}const d=[];for(let a=0;a<U;a++)i.has(a)&&d.push(i.get(a));return n.bytes.concat(...d)},checkBitsSet:async(o,e,t,r)=>{let s=!1,i;const d=await o.accountInformation(t).do(),g=n.Account.from_obj_for_encoding(d).appsLocalState;if(g&&g.forEach(m=>{BigInt(m.id)===e&&(i=m.keyValue)}),(i==null?void 0:i.length)===0)return s;const A=BigInt(O),h=BigInt(8),b=r/A*A,x=l.safeBigIntToNumber(r-b),w=Math.floor(x/N),I=Math.floor((x-w*N)/8),_=n.b64.encode(n.bignum.toBytes(w,1));return i==null||i.forEach(m=>{if(m.key===_){const k=n.dist.Buffer.from(m.value.bytes,"base64"),S=1<<l.safeBigIntToNumber(r%h);s=(k[I]&S)!=0;return}}),s},storageAccountExists:async(o,e,t)=>{try{const r=await o.accountApplicationInformation(e,l.safeBigIntToNumber(t)).do();return Object.keys(r).length>0}catch{}return!1}},c=class c{constructor(e,t,r,s){p(this,"network");p(this,"chain");p(this,"connection");p(this,"contracts");p(this,"chainId");p(this,"coreAppId");p(this,"coreAppAddress");p(this,"tokenBridgeAppId");p(this,"tokenBridgeAppAddress");if(this.network=e,this.chain=t,this.connection=r,this.contracts=s,this.chainId=n.toChainId(t),!s.coreBridge)throw new Error(`Core contract address for chain ${t} not found`);const i=BigInt(s.coreBridge);if(this.coreAppId=i,this.coreAppAddress=n.getApplicationAddress(i),!s.tokenBridge)throw new Error(`TokenBridge contract address for chain ${t} not found`);const d=BigInt(s.tokenBridge);this.tokenBridgeAppId=d,this.tokenBridgeAppAddress=n.getApplicationAddress(d)}getGuardianSet(e){throw new Error("Method not implemented.")}async*verifyMessage(e,t,r){const s=new l.AlgorandAddress(e).toString(),i=await c.submitVAAHeader(this.connection,this.coreAppId,r??this.coreAppId,t,s);for(const d of i.txs)yield this.createUnsignedTx(d,"Core.verifyMessage")}static async fromRpc(e,t){const[r,s]=await l.AlgorandPlatform.chainFromRpc(e),i=t[s];if(i.network!==r)throw new Error(`Network mismatch: ${i.network} !== ${r}`);return new c(r,s,e,i.contracts)}async*publishMessage(e,t){const r=new l.AlgorandAddress(e),s=r.toString(),i=await this.connection.getTransactionParams().do(),d=u.forEmitter(this.coreAppId,r.toUint8Array()),{accounts:a,txs:g}=await c.maybeCreateStorageTx(this.connection,s,this.coreAppId,d,i);for(const h of g)yield this.createUnsignedTx(h,"Core.publishMessage",!0);const A=n.makeApplicationCallTxnFromObject({from:s,appIndex:l.safeBigIntToNumber(this.coreAppId),appArgs:[c.publishMessage,t,n.bignum.toBytes(0n,8)],accounts:a,onComplete:n.OnApplicationComplete.NoOpOC,suggestedParams:i});yield this.createUnsignedTx({tx:A},"Core.publishMessage",!0)}async getMessageFee(){var s;const e=await this.connection.getApplicationByID(l.safeBigIntToNumber(this.coreAppId)).do(),r=(s=n.Application.from_obj_for_encoding(e).params.globalState)==null?void 0:s.find(i=>i.key===c.feeKey);return r?BigInt(r.value.uint):0n}async getGuardianSetIndex(){throw new Error("Not implemented")}async parseTransaction(e){const t=await this.connection.pendingTransactionInformation(e).do(),r=n.PendingTransactionResponse.from_obj_for_encoding(t);return this.parseTx(r).map(s=>({chain:s.emitterChain,emitter:s.emitterAddress,sequence:s.sequence}))}async parseMessages(e){const t=await this.connection.pendingTransactionInformation(e).do(),r=n.PendingTransactionResponse.from_obj_for_encoding(t);return this.parseTx(r)}parseTx(e){const t=[];if(e.innerTxns&&e.innerTxns.length>0&&t.push(...e.innerTxns.flatMap(g=>this.parseTx(g))),BigInt(e.txn.txn.apid??0)!==this.coreAppId||!e.logs||e.logs.length===0)return t;const r=e.txn.txn.apaa??[];if(r.length!==3||!n.bytes.equals(new Uint8Array(r[0]),c.publishMessage))return t;const s=n.bignum.decode(e.logs[0]),i=new l.AlgorandAddress(e.txn.txn.snd).toUniversalAddress(),d=new Uint8Array(r[1]),a=n.bignum.decode(r[2]);return t.push(z.createVAA("Uint8Array",{emitterChain:this.chain,emitterAddress:i,sequence:s,guardianSet:0,timestamp:0,consistencyLevel:0,nonce:Number(a),payload:d,signatures:[]})),t}static async maybeCreateStorageTx(e,t,r,s,i){const d=n.getApplicationAddress(r),a=s.address(),g=[];if(await u.storageAccountExists(e,a,r))return{accounts:[a],txs:g};i=i??await e.getTransactionParams().do();const A=n.makePaymentTxnWithSuggestedParamsFromObject({from:t,to:a,amount:V,suggestedParams:i});A.fee=A.fee*2,g.push({tx:A});const h=n.makeApplicationOptInTxnFromObject({from:a,appIndex:l.safeBigIntToNumber(r),rekeyTo:d,suggestedParams:i});return h.fee=0,g.push({tx:h,signer:{address:s.address(),signTxn:b=>Promise.resolve(n.signLogicSigTransaction(b,s).blob)}}),{accounts:[a],txs:g}}static async submitVAAHeader(e,t,r,s,i,d){d=d??await e.getTransactionParams().do();let a=[];const g=u.forMessageId(r,{chain:s.emitterChain,sequence:s.sequence,emitter:s.emitterAddress}),{accounts:A,txs:h}=await c.maybeCreateStorageTx(e,i,r,g,d);a.push(...h);const b=u.forGuardianSet(t,s.guardianSet),{accounts:[x],txs:w}=await c.maybeCreateStorageTx(e,i,t,b,d);a.push(...w);let I=[...A,x];const _=await u.decodeLocalState(e,t,x),m=n.keccak_256(s.hash),k=s.signatures.length,S=Math.ceil(k/c.MAX_SIGS_PER_TXN),E=20,v=new n.LogicSigAccount(c.ALGO_VERIFY);for(let R=0;R<S;R++){const G=R*c.MAX_SIGS_PER_TXN,B=s.signatures.slice(G,G+c.MAX_SIGS_PER_TXN),Y=B.length*E,X=new Uint8Array(Y);for(let f=0;f<B.length;f++){const j=B[f],q=_.slice(j.guardianIndex*E+1,(j.guardianIndex+1)*E+1);X.set(q,f*20)}const P=n.makeApplicationCallTxnFromObject({appArgs:[c.verifySigs,n.bytes.concat(...B.map(f=>n.bytes.concat(new Uint8Array([f.guardianIndex]),f.signature.encode()))),X,m],accounts:I,appIndex:l.safeBigIntToNumber(t),from:c.ALGO_VERIFY_HASH,onComplete:n.OnApplicationComplete.NoOpOC,suggestedParams:d});P.fee=0,a.push({tx:P,signer:{address:v.address(),signTxn:f=>Promise.resolve(n.signLogicSigTransaction(f,v).blob)}})}const M=n.makeApplicationCallTxnFromObject({appArgs:[c.verifyVaa,n.serialize(s)],accounts:I,appIndex:l.safeBigIntToNumber(t),from:i,onComplete:n.OnApplicationComplete.NoOpOC,suggestedParams:d});return M.fee=M.fee*(2+S),a.push({tx:M}),{accounts:I,txs:a}}createUnsignedTx(e,t,r=!0){return new K(e,this.network,this.chain,t,r)}};p(c,"MAX_SIGS_PER_TXN",6),p(c,"ALGO_VERIFY_HASH","EZATROXX2HISIRZDRGXW4LRQ46Z6IUJYYIHU3PJGP7P5IQDPKVX42N767A"),p(c,"ALGO_VERIFY",new Uint8Array([6,32,4,1,0,32,20,38,1,0,49,32,50,3,18,68,49,1,35,18,68,49,16,129,6,18,68,54,26,1,54,26,3,54,26,2,136,0,3,68,34,67,53,2,53,1,53,0,40,53,240,40,53,241,52,0,21,53,5,35,53,3,35,53,4,52,3,52,5,12,65,0,68,52,1,52,0,52,3,129,65,8,34,88,23,52,0,52,3,34,8,36,88,52,0,52,3,129,33,8,36,88,7,0,53,241,53,240,52,2,52,4,37,88,52,240,52,241,80,2,87,12,20,18,68,52,3,129,66,8,53,3,52,4,37,8,53,4,66,255,180,34,137])),p(c,"feeKey",n.b64.encode("MessageFee")),p(c,"verifyVaa",n.bytes.encode("verifyVAA")),p(c,"verifySigs",n.bytes.encode("verifySigs")),p(c,"publishMessage",n.bytes.encode("publishMessage"));let T=c;$.registerProtocol("Algorand","WormholeCore",T);const Z=Object.freeze(Object.defineProperty({__proto__:null,AlgorandWormholeCore:T,BITS_PER_BYTE:C,BITS_PER_KEY:N,MAX_BITS:O,MAX_BYTES:F,MAX_BYTES_PER_KEY:L,MAX_KEYS:U,SEED_AMT:V,StorageLogicSig:u,varint:y},Symbol.toStringTag,{value:"Module"}));exports.AlgorandUnsignedTransaction=K;exports.AlgorandWormholeCore=T;exports.StorageLogicSig=u;exports.index=Z;
@@ -1,11 +1,11 @@
1
1
  var Hs = Object.defineProperty;
2
2
  var Gs = (i, e, t) => e in i ? Hs(i, e, { enumerable: !0, configurable: !0, writable: !0, value: t }) : i[e] = t;
3
3
  var M = (i, e, t) => (Gs(i, typeof e != "symbol" ? e + "" : e, t), t);
4
- import { n as B, aH as se, aI as P, aJ as R, aK as he, aL as q, aM as re, aN as ze, aO as ge, aP as Gt, aQ as J, a2 as ne, aF as bt, aG as Sn, aR as je, aS as js, aT as Ys, aU as Js, aV as Xs, aW as Vn, c7 as wn, aX as Zs, aY as Qs, aZ as er, cf as In, cg as tr, d as F, ab as nr, o as An, $ as sr, ch as _n, a_ as rr, ce as ir, bp as Ye, ci as or, c6 as ar } from "./index-DebiDC3v.mjs";
4
+ import { n as B, aH as se, aI as P, aJ as R, aK as he, aL as q, aM as re, aN as ze, aO as ge, aP as Gt, aQ as J, a2 as ne, aF as bt, aG as Sn, aR as je, aS as js, aT as Ys, aU as Js, aV as Xs, aW as Vn, c7 as wn, aX as Zs, aY as Qs, aZ as er, cf as In, cg as tr, d as F, ab as nr, o as An, $ as sr, ch as _n, a_ as rr, ce as ir, bp as Ye, ci as or, c6 as ar } from "./index-BsbdJZ3C.mjs";
5
5
  import { c as cr } from "./index-DpFNxVts.mjs";
6
- import { P as He, a as yt, S as ur, b as dr, _ as lr } from "./solana-BpvtC9Y9.mjs";
7
- import { c as hr } from "./create-BoVtddSH.mjs";
8
- import { r as fr } from "./chain-D9bp2EtQ.mjs";
6
+ import { P as He, a as yt, S as ur, b as dr, _ as lr } from "./solana-W4XruJeE.mjs";
7
+ import { c as hr } from "./create-B_LDrlra.mjs";
8
+ import { r as fr } from "./chain-B1FOQWsW.mjs";
9
9
  function Te(i, e) {
10
10
  return He.findProgramAddressSync(i, new He(e))[0];
11
11
  }