@wormhole-foundation/wormhole-connect 1.1.3-beta.0-development → 1.1.3-beta.2-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/README.md +1 -1
- package/dist/assets/{ccip-ZK3nT4p0.js → ccip-CuVLQT8d.js} +1 -1
- package/dist/assets/{evm-CN8bW0Ki.js → evm-Dc3QdSOA.js} +4 -4
- package/dist/assets/{index-Dk-HAicc.js → index-BIssGeVa.js} +1 -1
- package/dist/assets/{index-wPSYQFAU.js → index-BJGeA_ds.js} +1 -1
- package/dist/assets/{index-BrUy8LtR.js → index-EVjhBEXw.js} +2 -2
- package/dist/assets/{index.es-DadojKR5.js → index.es-BObgTr8H.js} +2 -2
- package/dist/assets/{solana-CasQowTc.js → solana-nISyslgA.js} +3 -3
- package/dist/main.js +66 -69
- package/dist/src/config/types.d.ts +6 -13
- package/dist/src/config/types.d.ts.map +1 -1
- package/dist/src/hooks/useAvailableWallets.d.ts.map +1 -1
- package/dist/src/hooks/useComputeFees.d.ts.map +1 -1
- package/dist/src/hooks/useComputeSourceTokens.d.ts.map +1 -1
- package/dist/src/hooks/useRoutesQuotesBulk.d.ts.map +1 -1
- package/dist/src/hooks/useSortedRoutesWithQuotes.d.ts.map +1 -1
- package/dist/src/hooks/useTrackTransfer.d.ts +12 -2
- package/dist/src/hooks/useTrackTransfer.d.ts.map +1 -1
- package/dist/src/hooks/useTransactionHistory.d.ts.map +1 -1
- package/dist/src/hooks/useTransactionHistoryWHScan.d.ts.map +1 -1
- package/dist/src/icons/Tokens/CELO.d.ts.map +1 -1
- package/dist/src/routes/sdkv2/route.d.ts +0 -18
- package/dist/src/routes/sdkv2/route.d.ts.map +1 -1
- package/dist/src/store/redeem.d.ts +1 -12
- package/dist/src/store/redeem.d.ts.map +1 -1
- package/dist/src/telemetry/types.d.ts +3 -2
- package/dist/src/telemetry/types.d.ts.map +1 -1
- package/dist/src/utils/errors.d.ts +2 -3
- package/dist/src/utils/errors.d.ts.map +1 -1
- package/dist/src/utils/inProgressTxCache.d.ts +1 -0
- package/dist/src/utils/inProgressTxCache.d.ts.map +1 -1
- package/dist/src/utils/transferValidation.d.ts +1 -5
- package/dist/src/utils/transferValidation.d.ts.map +1 -1
- package/dist/src/views/v2/Bridge/AssetPicker/TokenList.d.ts +1 -0
- package/dist/src/views/v2/Bridge/AssetPicker/TokenList.d.ts.map +1 -1
- package/dist/src/views/v2/Bridge/AssetPicker/index.d.ts.map +1 -1
- package/dist/src/views/v2/Bridge/ReviewTransaction/index.d.ts.map +1 -1
- package/dist/src/views/v2/Redeem/index.d.ts.map +1 -1
- package/dist/src/views/v2/TxHistory/Widget/Item.d.ts.map +1 -1
- package/lib/{algorand-Bk0g9QgP.js → algorand-BAFj4ZGa.js} +1 -1
- package/lib/{algorand-Y1gjJE79.mjs → algorand-CLoiUadv.mjs} +3 -3
- package/lib/{aptos-DTi6Q8Bm.mjs → aptos-B0EUzhLn.mjs} +1 -1
- package/lib/{aptos-DEyaV1Ue.mjs → aptos-C45UOjMk.mjs} +3 -3
- package/lib/{aptos-Lx6QmRnS.js → aptos-CHkHb9Wn.js} +1 -1
- package/lib/{aptos-WxStQp-p.js → aptos-DLBpR9Uw.js} +2 -2
- package/lib/{ccip-DnA8URE5.mjs → ccip-D6nl66Of.mjs} +1 -1
- package/lib/{ccip-CZSRIG9Z.js → ccip-DwcFzOh0.js} +1 -1
- package/lib/{cosmos-GR_4BDSL.js → cosmos-BEyKk7pN.js} +1 -1
- package/lib/{cosmos-BGd4mOMq.mjs → cosmos-Bc34YeqV.mjs} +5 -5
- package/lib/{cosmwasm-D9hqOwak.mjs → cosmwasm-BBIEjp_6.mjs} +6 -6
- package/lib/{cosmwasm-OpBz-K0E.js → cosmwasm-DPmjLuio.js} +2 -2
- package/lib/{events-BUfFMIsP.js → events-B2ZyXE4l.js} +1 -1
- package/lib/{events-mq_Ozt5U.mjs → events-D9h1HjEa.mjs} +1 -1
- package/lib/{evm-euAOC4rE.js → evm--fmrvZiP.js} +4 -4
- package/lib/{evm-Bh09u6uE.js → evm-D6zAQuRU.js} +1 -1
- package/lib/{evm-Dd7mhHpZ.mjs → evm-DsRkB-Yc.mjs} +7 -7
- package/lib/{evm-Bip4elXo.mjs → evm-sG77B7Ln.mjs} +5 -5
- package/lib/{index-BhSPxtEu.mjs → index--8OR2IWG.mjs} +2 -2
- package/lib/{index-B4ACXG3S.js → index-B7Optu6I.js} +1 -1
- package/lib/{index-CksIEiR-.mjs → index-B9gBvn5a.mjs} +3 -3
- package/lib/{index-ChNwYZYl.mjs → index-BFWViYNu.mjs} +2 -2
- package/lib/{index-PZbWVmCz.js → index-BJ9DGQK7.js} +1 -1
- package/lib/{index-Dkr0Tvzr.mjs → index-BO1rJrRP.mjs} +2 -2
- package/lib/{index-FiYjyweD.mjs → index-BT10pzLw.mjs} +1 -1
- package/lib/{index-BpUvks-l.mjs → index-BYnoX4S7.mjs} +2 -2
- package/lib/{index-O_6SG94Y.js → index-B_vsKDJm.js} +1 -1
- package/lib/{index-CioB5jlk.js → index-Bl8-vKcf.js} +1 -1
- package/lib/{index-CGfTxXIK.js → index-Bx7B-3Uk.js} +1 -1
- package/lib/{index-B2SkhUdY.mjs → index-BxxpLnjr.mjs} +1 -1
- package/lib/{index-LmQpfWk6.js → index-ByOoS9NO.js} +1 -1
- package/lib/{index-CEa1N1JO.js → index-C010ECjb.js} +1 -1
- package/lib/{index-CVEp7rso.js → index-C96ibHXm.js} +1 -1
- package/lib/{index-Bpc4Uc2j.js → index-CEovIwuS.js} +49 -52
- package/lib/{index-CroHHsN6.js → index-CL7evJIB.js} +1 -1
- package/lib/{index-DDK1w1Gy.js → index-CNe0Pean.js} +1 -1
- package/lib/{index-BMgQcGHh.mjs → index-CQY-qyc8.mjs} +2 -2
- package/lib/{index-8W3PL24a.js → index-CVaT6qZW.js} +1 -1
- package/lib/{index-DKWOhn7x.mjs → index-CY9fp7fB.mjs} +4 -4
- package/lib/{index-DaLjsGIa.js → index-CaQpF1dj.js} +1 -1
- package/lib/{index-BgoH9HcO.mjs → index-Cb5M1Ban.mjs} +1 -1
- package/lib/{index-DpeHItMy.js → index-Ci0O-yiU.js} +1 -1
- package/lib/{index-B5wcBfQY.mjs → index-CnElB0dt.mjs} +2 -2
- package/lib/{index-2lyFWSyp.mjs → index-Cpjj11xV.mjs} +2 -2
- package/lib/{index-DfBMIbDj.js → index-CvdPwRnL.js} +1 -1
- package/lib/{index-DSY3L6x7.js → index-CyPbCf5y.js} +1 -1
- package/lib/{index-Cd2iAhn6.js → index-D0RnzOoN.js} +1 -1
- package/lib/{index-BR9mq_aC.mjs → index-D4u8CUKC.mjs} +3 -3
- package/lib/{index-D6wPZpGK.mjs → index-DGq7mQyb.mjs} +1 -1
- package/lib/{index-DoVA8mW7.mjs → index-DPtc-UxP.mjs} +6 -6
- package/lib/{index-CWcodnPh.mjs → index-DWJ5r15M.mjs} +3259 -3270
- package/lib/{index-J8dw-2w6.js → index-D_3BlFSH.js} +1 -1
- package/lib/{index-DL5VcEom.mjs → index-DdhKN5Tn.mjs} +2 -2
- package/lib/{index-Cp3GZM8x.mjs → index-DinZIMWa.mjs} +4 -4
- package/lib/{index-Drhu_ecL.mjs → index-DrDopLyp.mjs} +2 -2
- package/lib/{index-BuOkqOsd.mjs → index-DugvE6YD.mjs} +3 -3
- package/lib/{index-AmWMP_h-.mjs → index-IC9ubiMJ.mjs} +3 -3
- package/lib/{index-gJCBZWkF.js → index-OldEBluq.js} +1 -1
- package/lib/{index-o8rEiaHv.js → index-PcZU5a1K.js} +1 -1
- package/lib/{index-BCsavYT_.js → index-U1A3Ir4_.js} +1 -1
- package/lib/{index-DMgTzJGM.js → index-XMIcJZyr.js} +1 -1
- package/lib/{index-C8WtRQvK.mjs → index-jgZQQCfy.mjs} +1 -1
- package/lib/{index-CLwEnjVp.mjs → index-jydTi-hN.mjs} +2 -2
- package/lib/{index-DkJGHKLZ.js → index-mE3wnazE.js} +1 -1
- package/lib/{index.es-CK6rof29.mjs → index.es-DV6jIgX3.mjs} +5 -5
- package/lib/{index.es-DC7Uig48.js → index.es-DbGYkQrs.js} +2 -2
- package/lib/index.js +1 -1
- package/lib/index.mjs +1 -1
- package/lib/{keccak-CHIoumBY.js → keccak-BvCC2Kx2.js} +1 -1
- package/lib/{keccak-BbGP1Jgp.mjs → keccak-C0uJwxei.mjs} +1 -1
- package/lib/{libsodium-wrappers-CNt1trbm.mjs → libsodium-wrappers-BS68glUg.mjs} +1 -1
- package/lib/{libsodium-wrappers-BevEE8GA.js → libsodium-wrappers-yq_uVk2-.js} +1 -1
- package/lib/{pako.esm-BdYcUYll.mjs → pako.esm-CWQc3qGc.mjs} +2 -2
- package/lib/{pako.esm-BroBxzYL.js → pako.esm-DZDXjYQj.js} +1 -1
- package/lib/{pbkdf2-CUUz7-r8.mjs → pbkdf2-B3V9L7S5.mjs} +1 -1
- package/lib/{pbkdf2-Mh3QRt-g.js → pbkdf2-DbRuCUvp.js} +1 -1
- package/lib/{sei-Q0qEEpNr.mjs → sei-Bty4vIw4.mjs} +3 -3
- package/lib/{sei-D0Z3_R0P.js → sei-D3Eq9BDV.js} +1 -1
- package/lib/{signer-A4746UwI.js → signer-Dw6nmaHE.js} +1 -1
- package/lib/{signer-BHiPBsYT.mjs → signer-zHoIaQqc.mjs} +1 -1
- package/lib/{solana-atuOX46W.js → solana-9m57XHRZ.js} +3 -3
- package/lib/{solana-DHklzwb0.mjs → solana-C-e817Or.mjs} +207 -203
- package/lib/{solana-DKR_bh5A.mjs → solana-CV7qftfl.mjs} +5 -5
- package/lib/solana-GdBZhG_3.js +1 -0
- package/lib/{solanaEmbed.esm-C60u4Y4i.mjs → solanaEmbed.esm-ByzcN6RA.mjs} +3 -3
- package/lib/{solanaEmbed.esm-CRncQ9El.js → solanaEmbed.esm-DBOgwSJE.js} +1 -1
- package/lib/src/config/types.d.ts +6 -13
- package/lib/src/config/types.d.ts.map +1 -1
- package/lib/src/hooks/useAvailableWallets.d.ts.map +1 -1
- package/lib/src/hooks/useComputeFees.d.ts.map +1 -1
- package/lib/src/hooks/useComputeSourceTokens.d.ts.map +1 -1
- package/lib/src/hooks/useRoutesQuotesBulk.d.ts.map +1 -1
- package/lib/src/hooks/useSortedRoutesWithQuotes.d.ts.map +1 -1
- package/lib/src/hooks/useTrackTransfer.d.ts +12 -2
- package/lib/src/hooks/useTrackTransfer.d.ts.map +1 -1
- package/lib/src/hooks/useTransactionHistory.d.ts.map +1 -1
- package/lib/src/hooks/useTransactionHistoryWHScan.d.ts.map +1 -1
- package/lib/src/icons/Tokens/CELO.d.ts.map +1 -1
- package/lib/src/routes/sdkv2/route.d.ts +0 -18
- package/lib/src/routes/sdkv2/route.d.ts.map +1 -1
- package/lib/src/store/redeem.d.ts +1 -12
- package/lib/src/store/redeem.d.ts.map +1 -1
- package/lib/src/telemetry/types.d.ts +3 -2
- package/lib/src/telemetry/types.d.ts.map +1 -1
- package/lib/src/utils/errors.d.ts +2 -3
- package/lib/src/utils/errors.d.ts.map +1 -1
- package/lib/src/utils/inProgressTxCache.d.ts +1 -0
- package/lib/src/utils/inProgressTxCache.d.ts.map +1 -1
- package/lib/src/utils/transferValidation.d.ts +1 -5
- package/lib/src/utils/transferValidation.d.ts.map +1 -1
- package/lib/src/views/v2/Bridge/AssetPicker/TokenList.d.ts +1 -0
- package/lib/src/views/v2/Bridge/AssetPicker/TokenList.d.ts.map +1 -1
- package/lib/src/views/v2/Bridge/AssetPicker/index.d.ts.map +1 -1
- package/lib/src/views/v2/Bridge/ReviewTransaction/index.d.ts.map +1 -1
- package/lib/src/views/v2/Redeem/index.d.ts.map +1 -1
- package/lib/src/views/v2/TxHistory/Widget/Item.d.ts.map +1 -1
- package/lib/{sui-BJf6qfEa.js → sui-B3dbw4a7.js} +2 -2
- package/lib/{sui-DnV1uvEo.mjs → sui-CKgX0Mjn.mjs} +4 -4
- package/lib/{sui-CrGPhOdf.js → sui-lQcSerf0.js} +1 -1
- package/lib/{sui-CXkq5Ld8.mjs → sui-rey0HjGu.mjs} +1 -1
- package/lib/{unsignedTransaction-15n-LbN-.js → unsignedTransaction-DcJyFS5R.js} +1 -1
- package/lib/{unsignedTransaction-CJD6WVk2.mjs → unsignedTransaction-sTI31PuJ.mjs} +2 -2
- package/package.json +2 -1
- package/dist/src/hooks/useTrackTransferInProgress.d.ts +0 -12
- package/dist/src/hooks/useTrackTransferInProgress.d.ts.map +0 -1
- package/dist/src/utils/gas.d.ts +0 -1
- package/dist/src/utils/gas.d.ts.map +0 -1
- package/dist/src/utils/vaa.d.ts +0 -1
- package/dist/src/utils/vaa.d.ts.map +0 -1
- package/lib/solana-D0q_yPbs.js +0 -1
- package/lib/src/hooks/useTrackTransferInProgress.d.ts +0 -12
- package/lib/src/hooks/useTrackTransferInProgress.d.ts.map +0 -1
- package/lib/src/utils/gas.d.ts +0 -1
- package/lib/src/utils/gas.d.ts.map +0 -1
- package/lib/src/utils/vaa.d.ts +0 -1
- package/lib/src/utils/vaa.d.ts.map +0 -1
|
@@ -1 +1 @@
|
|
|
1
|
-
"use strict";var D=Object.defineProperty;var q=(o,e,n)=>e in o?D(o,e,{enumerable:!0,configurable:!0,writable:!0,value:n}):o[e]=n;var p=(o,e,n)=>q(o,typeof e!="symbol"?e+"":e,n);const t=require("./index-Bpc4Uc2j.js"),H=require("./algorand-Bk0g9QgP.js");class j{constructor(e,n,r,s,i=!1){p(this,"transaction");p(this,"network");p(this,"chain");p(this,"description");p(this,"parallelizable");this.transaction=e,this.network=n,this.chain=r,this.description=s,this.parallelizable=i}}const K=1002e3,O=15,U=127,L=8,R=U*L,V=U*O,N=L*V,m={_limit:127,encodingLength:o=>{let e=0;for(;o>=128;e++)o>>=7;return e+1},encode:(o,e,n)=>{if(typeof o=="bigint"&&(o=t.safeBigIntToNumber(o)),o<0)throw new RangeError("value must be unsigned");const r=m.encodingLength(o);if(e=e||new ArrayBuffer(r),n=n||0,e.byteLength<n+r)throw new RangeError("the buffer is too small to encode the number at the offset");const s=new Uint8Array(e,n);let i=0;for(;m._limit<o;)s[i++]=o&m._limit|128,o>>=7;return s[i]=Number(o),s},decode:(o,e=0)=>{let n=0,r=0,s;do{if(s=o[e+r],s===void 0)throw new RangeError("offset out of range");n+=(s&m._limit)<<r*7,r++}while(128<=s);return n}},u={forMessageId:(o,e)=>{const n=t.decodeAddress(t.getApplicationAddress(o)).publicKey,r=e.emitter.toUniversalAddress().toUint8Array(),s=t.bignum.toBytes(BigInt(t.toChainId(e.chain)),2),i=t.bytes.concat(s,r);return u.fromData({appId:o,appAddress:n,idx:e.sequence/BigInt(N),address:i})},forWrappedAsset:(o,e)=>{if(t.isNative(e.address))throw new Error("native asset cannot be a wrapped asset");const n=t.decodeAddress(t.getApplicationAddress(o)).publicKey;return u.fromData({appId:o,appAddress:n,idx:BigInt(t.toChainId(e.chain)),address:e.address.toUniversalAddress().toUint8Array()})},forNativeAsset:(o,e)=>{const n=t.decodeAddress(t.getApplicationAddress(o)).publicKey;return u.fromData({appId:o,appAddress:n,idx:e,address:t.bytes.encode("native")})},forGuardianSet:(o,e)=>{const n=t.decodeAddress(t.getApplicationAddress(o)).publicKey;return u.fromData({appId:o,appAddress:n,idx:BigInt(e),address:t.bytes.encode("guardian")})},forEmitter:(o,e)=>{const n=t.decodeAddress(t.getApplicationAddress(o)).publicKey;return u.fromData({appId:o,appAddress:n,idx:0n,address:e})},_encode:o=>typeof o=="bigint"?[t.hex.encode(m.encode(o))]:[t.hex.encode(m.encode(o.length)),t.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"],n=t.hex.decode(e.join(""));return new t.LogicSigAccount(n)},decodeLocalState:async(o,e,n)=>{let r;try{const a=await o.accountApplicationInformation(n,t.safeBigIntToNumber(e)).do();r=t.AccountApplicationResponse.from_obj_for_encoding(a).appLocalState}catch{return new Uint8Array}const s=t.b64.encode("meta");let i=new Map;for(const a of r.keyValue){if(a.key===s)continue;const g=t.b64.decode(a.key)[0],l=t.b64.decode(a.value.bytes);i.set(g,l)}const d=[];for(let a=0;a<O;a++)i.has(a)&&d.push(i.get(a));return t.bytes.concat(...d)},checkBitsSet:async(o,e,n,r)=>{let s=!1,i;const d=await o.accountInformation(n).do(),g=t.Account.from_obj_for_encoding(d).appsLocalState;if(g&&g.forEach(h=>{BigInt(h.id)===e&&(i=h.keyValue)}),(i==null?void 0:i.length)===0)return s;const l=BigInt(N),f=BigInt(8),y=r/l*l,b=t.safeBigIntToNumber(r-y),T=Math.floor(b/R),x=Math.floor((b-T*R)/8),B=t.b64.encode(t.bignum.toBytes(T,1));return i==null||i.forEach(h=>{if(h.key===B){const _=t.dist.Buffer.from(h.value.bytes,"base64"),w=1<<t.safeBigIntToNumber(r%f);s=(_[x]&w)!=0;return}}),s},storageAccountExists:async(o,e,n)=>{try{const r=await o.accountApplicationInformation(e,t.safeBigIntToNumber(n)).do();return Object.keys(r).length>0}catch{}return!1}},c=class c{constructor(e,n,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=n,this.connection=r,this.contracts=s,this.chainId=t.toChainId(n),!s.coreBridge)throw new Error(`Core contract address for chain ${n} not found`);const i=BigInt(s.coreBridge);if(this.coreAppId=i,this.coreAppAddress=t.getApplicationAddress(i),!s.tokenBridge)throw new Error(`TokenBridge contract address for chain ${n} not found`);const d=BigInt(s.tokenBridge);this.tokenBridgeAppId=d,this.tokenBridgeAppAddress=t.getApplicationAddress(d)}getGuardianSet(e){throw new Error("Method not implemented.")}async*verifyMessage(e,n,r){const s=new t.AlgorandAddress(e).toString(),i=await c.submitVAAHeader(this.connection,this.coreAppId,r??this.coreAppId,n,s);for(const d of i.txs)yield this.createUnsignedTx(d,"Core.verifyMessage")}static async fromRpc(e,n){const[r,s]=await H.AlgorandPlatform.chainFromRpc(e),i=n[s];if(i.network!==r)throw new Error(`Network mismatch: ${i.network} !== ${r}`);return new c(r,s,e,i.contracts)}async*publishMessage(e,n){const r=new t.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 f of g)yield this.createUnsignedTx(f,"Core.publishMessage",!0);const l=t.makeApplicationCallTxnFromObject({from:s,appIndex:t.safeBigIntToNumber(this.coreAppId),appArgs:[c.publishMessage,n,t.bignum.toBytes(0n,8)],accounts:a,onComplete:t.OnApplicationComplete.NoOpOC,suggestedParams:i});yield this.createUnsignedTx({tx:l},"Core.publishMessage",!0)}async getMessageFee(){var s;const e=await this.connection.getApplicationByID(t.safeBigIntToNumber(this.coreAppId)).do(),r=(s=t.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 n=await this.connection.pendingTransactionInformation(e).do(),r=t.PendingTransactionResponse.from_obj_for_encoding(n);return this.parseTx(r).map(s=>({chain:s.emitterChain,emitter:s.emitterAddress,sequence:s.sequence}))}async parseMessages(e){const n=await this.connection.pendingTransactionInformation(e).do(),r=t.PendingTransactionResponse.from_obj_for_encoding(n);return this.parseTx(r)}parseTx(e){const n=[];if(e.innerTxns&&e.innerTxns.length>0&&n.push(...e.innerTxns.flatMap(g=>this.parseTx(g))),BigInt(e.txn.txn.apid??0)!==this.coreAppId||!e.logs||e.logs.length===0)return n;const r=e.txn.txn.apaa??[];if(r.length!==3||!t.bytes.equals(new Uint8Array(r[0]),c.publishMessage))return n;const s=t.bignum.decode(e.logs[0]),i=new t.AlgorandAddress(e.txn.txn.snd).toUniversalAddress(),d=new Uint8Array(r[1]),a=t.bignum.decode(r[2]);return n.push(t.createVAA("Uint8Array",{emitterChain:this.chain,emitterAddress:i,sequence:s,guardianSet:0,timestamp:0,consistencyLevel:0,nonce:Number(a),payload:d,signatures:[]})),n}static async maybeCreateStorageTx(e,n,r,s,i){const d=t.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 l=t.makePaymentTxnWithSuggestedParamsFromObject({from:n,to:a,amount:K,suggestedParams:i});l.fee=l.fee*2,g.push({tx:l});const f=t.makeApplicationOptInTxnFromObject({from:a,appIndex:t.safeBigIntToNumber(r),rekeyTo:d,suggestedParams:i});return f.fee=0,g.push({tx:f,signer:{address:s.address(),signTxn:y=>Promise.resolve(t.signLogicSigTransaction(y,s).blob)}}),{accounts:[a],txs:g}}static async submitVAAHeader(e,n,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:l,txs:f}=await c.maybeCreateStorageTx(e,i,r,g,d);a.push(...f);const y=u.forGuardianSet(n,s.guardianSet),{accounts:[b],txs:T}=await c.maybeCreateStorageTx(e,i,n,y,d);a.push(...T);let x=[...l,b];const B=await u.decodeLocalState(e,n,b),h=t.keccak_256(s.hash),_=s.signatures.length,w=Math.ceil(_/c.MAX_SIGS_PER_TXN),k=20,C=new t.LogicSigAccount(c.ALGO_VERIFY);for(let M=0;M<w;M++){const v=M*c.MAX_SIGS_PER_TXN,S=s.signatures.slice(v,v+c.MAX_SIGS_PER_TXN),F=S.length*k,G=new Uint8Array(F);for(let A=0;A<S.length;A++){const P=S[A],Y=B.slice(P.guardianIndex*k+1,(P.guardianIndex+1)*k+1);G.set(Y,A*20)}const X=t.makeApplicationCallTxnFromObject({appArgs:[c.verifySigs,t.bytes.concat(...S.map(A=>t.bytes.concat(new Uint8Array([A.guardianIndex]),A.signature.encode()))),G,h],accounts:x,appIndex:t.safeBigIntToNumber(n),from:c.ALGO_VERIFY_HASH,onComplete:t.OnApplicationComplete.NoOpOC,suggestedParams:d});X.fee=0,a.push({tx:X,signer:{address:C.address(),signTxn:A=>Promise.resolve(t.signLogicSigTransaction(A,C).blob)}})}const E=t.makeApplicationCallTxnFromObject({appArgs:[c.verifyVaa,t.serialize(s)],accounts:x,appIndex:t.safeBigIntToNumber(n),from:i,onComplete:t.OnApplicationComplete.NoOpOC,suggestedParams:d});return E.fee=E.fee*(2+w),a.push({tx:E}),{accounts:x,txs:a}}createUnsignedTx(e,n,r=!0){return new j(e,this.network,this.chain,n,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",t.b64.encode("MessageFee")),p(c,"verifyVaa",t.bytes.encode("verifyVAA")),p(c,"verifySigs",t.bytes.encode("verifySigs")),p(c,"publishMessage",t.bytes.encode("publishMessage"));let I=c;t.registerProtocol("Algorand","WormholeCore",I);const z=Object.freeze(Object.defineProperty({__proto__:null,AlgorandWormholeCore:I,BITS_PER_BYTE:L,BITS_PER_KEY:R,MAX_BITS:N,MAX_BYTES:V,MAX_BYTES_PER_KEY:U,MAX_KEYS:O,SEED_AMT:K,StorageLogicSig:u,varint:m},Symbol.toStringTag,{value:"Module"}));exports.AlgorandUnsignedTransaction=j;exports.AlgorandWormholeCore=I;exports.StorageLogicSig=u;exports.index=z;
|
|
1
|
+
"use strict";var D=Object.defineProperty;var q=(o,e,n)=>e in o?D(o,e,{enumerable:!0,configurable:!0,writable:!0,value:n}):o[e]=n;var p=(o,e,n)=>q(o,typeof e!="symbol"?e+"":e,n);const t=require("./index-CEovIwuS.js"),H=require("./algorand-BAFj4ZGa.js");class j{constructor(e,n,r,s,i=!1){p(this,"transaction");p(this,"network");p(this,"chain");p(this,"description");p(this,"parallelizable");this.transaction=e,this.network=n,this.chain=r,this.description=s,this.parallelizable=i}}const K=1002e3,O=15,U=127,L=8,R=U*L,V=U*O,N=L*V,m={_limit:127,encodingLength:o=>{let e=0;for(;o>=128;e++)o>>=7;return e+1},encode:(o,e,n)=>{if(typeof o=="bigint"&&(o=t.safeBigIntToNumber(o)),o<0)throw new RangeError("value must be unsigned");const r=m.encodingLength(o);if(e=e||new ArrayBuffer(r),n=n||0,e.byteLength<n+r)throw new RangeError("the buffer is too small to encode the number at the offset");const s=new Uint8Array(e,n);let i=0;for(;m._limit<o;)s[i++]=o&m._limit|128,o>>=7;return s[i]=Number(o),s},decode:(o,e=0)=>{let n=0,r=0,s;do{if(s=o[e+r],s===void 0)throw new RangeError("offset out of range");n+=(s&m._limit)<<r*7,r++}while(128<=s);return n}},u={forMessageId:(o,e)=>{const n=t.decodeAddress(t.getApplicationAddress(o)).publicKey,r=e.emitter.toUniversalAddress().toUint8Array(),s=t.bignum.toBytes(BigInt(t.toChainId(e.chain)),2),i=t.bytes.concat(s,r);return u.fromData({appId:o,appAddress:n,idx:e.sequence/BigInt(N),address:i})},forWrappedAsset:(o,e)=>{if(t.isNative(e.address))throw new Error("native asset cannot be a wrapped asset");const n=t.decodeAddress(t.getApplicationAddress(o)).publicKey;return u.fromData({appId:o,appAddress:n,idx:BigInt(t.toChainId(e.chain)),address:e.address.toUniversalAddress().toUint8Array()})},forNativeAsset:(o,e)=>{const n=t.decodeAddress(t.getApplicationAddress(o)).publicKey;return u.fromData({appId:o,appAddress:n,idx:e,address:t.bytes.encode("native")})},forGuardianSet:(o,e)=>{const n=t.decodeAddress(t.getApplicationAddress(o)).publicKey;return u.fromData({appId:o,appAddress:n,idx:BigInt(e),address:t.bytes.encode("guardian")})},forEmitter:(o,e)=>{const n=t.decodeAddress(t.getApplicationAddress(o)).publicKey;return u.fromData({appId:o,appAddress:n,idx:0n,address:e})},_encode:o=>typeof o=="bigint"?[t.hex.encode(m.encode(o))]:[t.hex.encode(m.encode(o.length)),t.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"],n=t.hex.decode(e.join(""));return new t.LogicSigAccount(n)},decodeLocalState:async(o,e,n)=>{let r;try{const a=await o.accountApplicationInformation(n,t.safeBigIntToNumber(e)).do();r=t.AccountApplicationResponse.from_obj_for_encoding(a).appLocalState}catch{return new Uint8Array}const s=t.b64.encode("meta");let i=new Map;for(const a of r.keyValue){if(a.key===s)continue;const g=t.b64.decode(a.key)[0],l=t.b64.decode(a.value.bytes);i.set(g,l)}const d=[];for(let a=0;a<O;a++)i.has(a)&&d.push(i.get(a));return t.bytes.concat(...d)},checkBitsSet:async(o,e,n,r)=>{let s=!1,i;const d=await o.accountInformation(n).do(),g=t.Account.from_obj_for_encoding(d).appsLocalState;if(g&&g.forEach(h=>{BigInt(h.id)===e&&(i=h.keyValue)}),(i==null?void 0:i.length)===0)return s;const l=BigInt(N),f=BigInt(8),y=r/l*l,b=t.safeBigIntToNumber(r-y),T=Math.floor(b/R),x=Math.floor((b-T*R)/8),B=t.b64.encode(t.bignum.toBytes(T,1));return i==null||i.forEach(h=>{if(h.key===B){const _=t.dist.Buffer.from(h.value.bytes,"base64"),w=1<<t.safeBigIntToNumber(r%f);s=(_[x]&w)!=0;return}}),s},storageAccountExists:async(o,e,n)=>{try{const r=await o.accountApplicationInformation(e,t.safeBigIntToNumber(n)).do();return Object.keys(r).length>0}catch{}return!1}},c=class c{constructor(e,n,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=n,this.connection=r,this.contracts=s,this.chainId=t.toChainId(n),!s.coreBridge)throw new Error(`Core contract address for chain ${n} not found`);const i=BigInt(s.coreBridge);if(this.coreAppId=i,this.coreAppAddress=t.getApplicationAddress(i),!s.tokenBridge)throw new Error(`TokenBridge contract address for chain ${n} not found`);const d=BigInt(s.tokenBridge);this.tokenBridgeAppId=d,this.tokenBridgeAppAddress=t.getApplicationAddress(d)}getGuardianSet(e){throw new Error("Method not implemented.")}async*verifyMessage(e,n,r){const s=new t.AlgorandAddress(e).toString(),i=await c.submitVAAHeader(this.connection,this.coreAppId,r??this.coreAppId,n,s);for(const d of i.txs)yield this.createUnsignedTx(d,"Core.verifyMessage")}static async fromRpc(e,n){const[r,s]=await H.AlgorandPlatform.chainFromRpc(e),i=n[s];if(i.network!==r)throw new Error(`Network mismatch: ${i.network} !== ${r}`);return new c(r,s,e,i.contracts)}async*publishMessage(e,n){const r=new t.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 f of g)yield this.createUnsignedTx(f,"Core.publishMessage",!0);const l=t.makeApplicationCallTxnFromObject({from:s,appIndex:t.safeBigIntToNumber(this.coreAppId),appArgs:[c.publishMessage,n,t.bignum.toBytes(0n,8)],accounts:a,onComplete:t.OnApplicationComplete.NoOpOC,suggestedParams:i});yield this.createUnsignedTx({tx:l},"Core.publishMessage",!0)}async getMessageFee(){var s;const e=await this.connection.getApplicationByID(t.safeBigIntToNumber(this.coreAppId)).do(),r=(s=t.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 n=await this.connection.pendingTransactionInformation(e).do(),r=t.PendingTransactionResponse.from_obj_for_encoding(n);return this.parseTx(r).map(s=>({chain:s.emitterChain,emitter:s.emitterAddress,sequence:s.sequence}))}async parseMessages(e){const n=await this.connection.pendingTransactionInformation(e).do(),r=t.PendingTransactionResponse.from_obj_for_encoding(n);return this.parseTx(r)}parseTx(e){const n=[];if(e.innerTxns&&e.innerTxns.length>0&&n.push(...e.innerTxns.flatMap(g=>this.parseTx(g))),BigInt(e.txn.txn.apid??0)!==this.coreAppId||!e.logs||e.logs.length===0)return n;const r=e.txn.txn.apaa??[];if(r.length!==3||!t.bytes.equals(new Uint8Array(r[0]),c.publishMessage))return n;const s=t.bignum.decode(e.logs[0]),i=new t.AlgorandAddress(e.txn.txn.snd).toUniversalAddress(),d=new Uint8Array(r[1]),a=t.bignum.decode(r[2]);return n.push(t.createVAA("Uint8Array",{emitterChain:this.chain,emitterAddress:i,sequence:s,guardianSet:0,timestamp:0,consistencyLevel:0,nonce:Number(a),payload:d,signatures:[]})),n}static async maybeCreateStorageTx(e,n,r,s,i){const d=t.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 l=t.makePaymentTxnWithSuggestedParamsFromObject({from:n,to:a,amount:K,suggestedParams:i});l.fee=l.fee*2,g.push({tx:l});const f=t.makeApplicationOptInTxnFromObject({from:a,appIndex:t.safeBigIntToNumber(r),rekeyTo:d,suggestedParams:i});return f.fee=0,g.push({tx:f,signer:{address:s.address(),signTxn:y=>Promise.resolve(t.signLogicSigTransaction(y,s).blob)}}),{accounts:[a],txs:g}}static async submitVAAHeader(e,n,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:l,txs:f}=await c.maybeCreateStorageTx(e,i,r,g,d);a.push(...f);const y=u.forGuardianSet(n,s.guardianSet),{accounts:[b],txs:T}=await c.maybeCreateStorageTx(e,i,n,y,d);a.push(...T);let x=[...l,b];const B=await u.decodeLocalState(e,n,b),h=t.keccak_256(s.hash),_=s.signatures.length,w=Math.ceil(_/c.MAX_SIGS_PER_TXN),k=20,C=new t.LogicSigAccount(c.ALGO_VERIFY);for(let M=0;M<w;M++){const v=M*c.MAX_SIGS_PER_TXN,S=s.signatures.slice(v,v+c.MAX_SIGS_PER_TXN),F=S.length*k,G=new Uint8Array(F);for(let A=0;A<S.length;A++){const P=S[A],Y=B.slice(P.guardianIndex*k+1,(P.guardianIndex+1)*k+1);G.set(Y,A*20)}const X=t.makeApplicationCallTxnFromObject({appArgs:[c.verifySigs,t.bytes.concat(...S.map(A=>t.bytes.concat(new Uint8Array([A.guardianIndex]),A.signature.encode()))),G,h],accounts:x,appIndex:t.safeBigIntToNumber(n),from:c.ALGO_VERIFY_HASH,onComplete:t.OnApplicationComplete.NoOpOC,suggestedParams:d});X.fee=0,a.push({tx:X,signer:{address:C.address(),signTxn:A=>Promise.resolve(t.signLogicSigTransaction(A,C).blob)}})}const E=t.makeApplicationCallTxnFromObject({appArgs:[c.verifyVaa,t.serialize(s)],accounts:x,appIndex:t.safeBigIntToNumber(n),from:i,onComplete:t.OnApplicationComplete.NoOpOC,suggestedParams:d});return E.fee=E.fee*(2+w),a.push({tx:E}),{accounts:x,txs:a}}createUnsignedTx(e,n,r=!0){return new j(e,this.network,this.chain,n,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",t.b64.encode("MessageFee")),p(c,"verifyVaa",t.bytes.encode("verifyVAA")),p(c,"verifySigs",t.bytes.encode("verifySigs")),p(c,"publishMessage",t.bytes.encode("publishMessage"));let I=c;t.registerProtocol("Algorand","WormholeCore",I);const z=Object.freeze(Object.defineProperty({__proto__:null,AlgorandWormholeCore:I,BITS_PER_BYTE:L,BITS_PER_KEY:R,MAX_BITS:N,MAX_BYTES:V,MAX_BYTES_PER_KEY:U,MAX_KEYS:O,SEED_AMT:K,StorageLogicSig:u,varint:m},Symbol.toStringTag,{value:"Module"}));exports.AlgorandUnsignedTransaction=j;exports.AlgorandWormholeCore=I;exports.StorageLogicSig=u;exports.index=z;
|