@layerzerolabs/lz-solana-sdk-v2 2.3.20 → 2.3.21
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/CHANGELOG.md +10 -0
- package/deployments/solana-testnet/dvn-gcda.json +9 -0
- package/dist/index.cjs +29 -30
- package/dist/index.cjs.map +1 -1
- package/dist/index.mjs +29 -30
- package/dist/index.mjs.map +1 -1
- package/package.json +9 -9
package/dist/index.mjs
CHANGED
|
@@ -6,19 +6,18 @@ import { uniformFixedSizeArray, u8, FixableBeetArgsStruct, u32, u64, bytes, u16,
|
|
|
6
6
|
import * as beetSolana97 from '@metaplex-foundation/beet-solana';
|
|
7
7
|
import * as splToken from '@solana/spl-token';
|
|
8
8
|
import { TOKEN_PROGRAM_ID } from '@solana/spl-token';
|
|
9
|
-
import {
|
|
9
|
+
import { arrayify, hexlify, hexZeroPad } from '@ethersproject/bytes';
|
|
10
|
+
import { keccak256 } from '@ethersproject/keccak256';
|
|
10
11
|
import invariant2 from 'tiny-invariant';
|
|
11
12
|
import { getAddress } from '@ethersproject/address';
|
|
12
|
-
import { arrayify, hexZeroPad, hexlify as hexlify$1 } from '@ethersproject/bytes';
|
|
13
13
|
import '@ethersproject/abi';
|
|
14
14
|
import { BigNumber } from '@ethersproject/bignumber';
|
|
15
15
|
import '@ethersproject/solidity';
|
|
16
|
-
import { keccak256 } from '@ethersproject/keccak256';
|
|
17
16
|
import { signWithECDSA } from '@layerzerolabs/lz-corekit-solana';
|
|
18
17
|
import { Environment, EndpointId } from '@layerzerolabs/lz-definitions';
|
|
19
18
|
import crypto from 'crypto';
|
|
19
|
+
import { sha256 } from '@ethersproject/sha2';
|
|
20
20
|
import base58 from 'bs58';
|
|
21
|
-
import { hexlify } from 'ethers/lib/utils';
|
|
22
21
|
|
|
23
22
|
var __defProp = Object.defineProperty;
|
|
24
23
|
var __defNormalProp = (obj, key, value) => key in obj ? __defProp(obj, key, { enumerable: true, configurable: true, writable: true, value }) : obj[key] = value;
|
|
@@ -2804,7 +2803,7 @@ function hexZeroPadTo32(addr) {
|
|
|
2804
2803
|
}
|
|
2805
2804
|
function bytes32ToEthAddress(bytes322) {
|
|
2806
2805
|
if (bytes322 instanceof Uint8Array) {
|
|
2807
|
-
bytes322 = hexlify
|
|
2806
|
+
bytes322 = hexlify(bytes322);
|
|
2808
2807
|
}
|
|
2809
2808
|
return getAddress(bytes322.slice(-40));
|
|
2810
2809
|
}
|
|
@@ -8667,7 +8666,7 @@ var Endpoint = class {
|
|
|
8667
8666
|
*/
|
|
8668
8667
|
async getQuoteIXAccountMetaForCPI(connection, payer, path, msgLibProgram) {
|
|
8669
8668
|
const { sender: sender_, dstEid, receiver: receiver_ } = path;
|
|
8670
|
-
const sender = new PublicKey(
|
|
8669
|
+
const sender = new PublicKey(arrayify(sender_));
|
|
8671
8670
|
const receiver = addressToBytes32(receiver_);
|
|
8672
8671
|
const sendLibInfo = await this.getSendLibrary(connection, sender, dstEid);
|
|
8673
8672
|
if (!sendLibInfo?.programId) {
|
|
@@ -8707,7 +8706,7 @@ var Endpoint = class {
|
|
|
8707
8706
|
*/
|
|
8708
8707
|
async getSendIXAccountMetaForCPI(connection, payer, path, msgLibProgram, commitmentOrConfig) {
|
|
8709
8708
|
const { sender: sender_, dstEid, receiver: receiver_ } = path;
|
|
8710
|
-
const sender = new PublicKey(
|
|
8709
|
+
const sender = new PublicKey(arrayify(sender_));
|
|
8711
8710
|
const receiver = addressToBytes32(receiver_);
|
|
8712
8711
|
const info = await this.getSendLibrary(connection, sender, dstEid, commitmentOrConfig);
|
|
8713
8712
|
if (!info?.programId) {
|
|
@@ -9259,7 +9258,7 @@ var Endpoint = class {
|
|
|
9259
9258
|
return PayloadHash.fromAccountInfo(accountInfo, 0)[0];
|
|
9260
9259
|
}
|
|
9261
9260
|
async getComposedMessageState(connection, from, params, commitmentOrConfig) {
|
|
9262
|
-
const message =
|
|
9261
|
+
const message = arrayify(keccak256(params.message));
|
|
9263
9262
|
const [composedMessagePDA] = this.endpointDeriver.composedMessage(
|
|
9264
9263
|
from,
|
|
9265
9264
|
Uint8Array.from(params.guid),
|
|
@@ -13312,7 +13311,7 @@ var DVN = class {
|
|
|
13312
13311
|
}
|
|
13313
13312
|
getHashBytes(digest) {
|
|
13314
13313
|
const [digestBytes] = executeTransactionDigestBeet.serialize(digest);
|
|
13315
|
-
const hash =
|
|
13314
|
+
const hash = keccak256(digestBytes);
|
|
13316
13315
|
return Buffer.from(hash.slice(2), "hex");
|
|
13317
13316
|
}
|
|
13318
13317
|
async invoke(connection, vid, payer, instruction, expiration, sign) {
|
|
@@ -15109,8 +15108,8 @@ var treasurySetEventBeet = new beet201.FixableBeetArgsStruct(
|
|
|
15109
15108
|
function getEventDiscriminator(event) {
|
|
15110
15109
|
const hash = crypto.createHash("sha256");
|
|
15111
15110
|
hash.update(`event:${event}`);
|
|
15112
|
-
const
|
|
15113
|
-
return
|
|
15111
|
+
const sha2562 = hash.digest("hex");
|
|
15112
|
+
return sha2562.slice(0, 16);
|
|
15114
15113
|
}
|
|
15115
15114
|
async function extractSentPacketEventByTxHash(connection, program, signature, commitment) {
|
|
15116
15115
|
const events = await extractEventFromTransactionSignature(
|
|
@@ -15331,7 +15330,7 @@ async function buildVersionedTransaction(connection, payerKey, instructions, com
|
|
|
15331
15330
|
);
|
|
15332
15331
|
}
|
|
15333
15332
|
function instructionDiscriminator(method) {
|
|
15334
|
-
return Buffer.from(
|
|
15333
|
+
return Buffer.from(sha256(Buffer.from(`global:${method}`)).substring(2), "hex").subarray(0, 8);
|
|
15335
15334
|
}
|
|
15336
15335
|
async function simulateTransaction(connection, instructions, programId, payer, commitment = "confirmed", blockhash, lookupTableAddress) {
|
|
15337
15336
|
const tx = await buildVersionedTransaction(
|
|
@@ -15356,11 +15355,11 @@ async function simulateTransaction(connection, instructions, programId, payer, c
|
|
|
15356
15355
|
async function lzReceive(connection, payer, packet, callerParams = Uint8Array.from([0, 0]), commitmentOrConfig) {
|
|
15357
15356
|
const { message: message_, sender, srcEid, guid, receiver: receiver_ } = packet;
|
|
15358
15357
|
const receiver = new PublicKey(addressToBytes32(receiver_));
|
|
15359
|
-
const message =
|
|
15358
|
+
const message = arrayify(message_);
|
|
15360
15359
|
const params = {
|
|
15361
15360
|
srcEid,
|
|
15362
|
-
sender: Array.from(
|
|
15363
|
-
guid: Array.from(
|
|
15361
|
+
sender: Array.from(arrayify(sender)),
|
|
15362
|
+
guid: Array.from(arrayify(guid)),
|
|
15364
15363
|
message,
|
|
15365
15364
|
callerParams,
|
|
15366
15365
|
nonce: parseInt(packet.nonce)
|
|
@@ -16002,7 +16001,7 @@ var Executor = class {
|
|
|
16002
16001
|
const receiver = new PublicKey(addressToBytes32(receiver_));
|
|
16003
16002
|
const receiverInfo = await connection.getParsedAccountInfo(receiver, commitmentOrConfig);
|
|
16004
16003
|
const receiverProgram = new PublicKey(receiverInfo.value.owner);
|
|
16005
|
-
const message =
|
|
16004
|
+
const message = arrayify(message_);
|
|
16006
16005
|
const accounts = await getLzReceiveAccounts(
|
|
16007
16006
|
connection,
|
|
16008
16007
|
executor,
|
|
@@ -16010,8 +16009,8 @@ var Executor = class {
|
|
|
16010
16009
|
receiverProgram,
|
|
16011
16010
|
{
|
|
16012
16011
|
srcEid,
|
|
16013
|
-
sender: Array.from(
|
|
16014
|
-
guid: Array.from(
|
|
16012
|
+
sender: Array.from(arrayify(sender)),
|
|
16013
|
+
guid: Array.from(arrayify(guid)),
|
|
16015
16014
|
message,
|
|
16016
16015
|
callerParams: extraData,
|
|
16017
16016
|
nonce: parseInt(packet.nonce)
|
|
@@ -16040,9 +16039,9 @@ var Executor = class {
|
|
|
16040
16039
|
receiver,
|
|
16041
16040
|
lzReceive: {
|
|
16042
16041
|
srcEid,
|
|
16043
|
-
sender: Array.from(
|
|
16042
|
+
sender: Array.from(arrayify(sender)),
|
|
16044
16043
|
nonce: parseInt(nonce),
|
|
16045
|
-
guid: Array.from(
|
|
16044
|
+
guid: Array.from(arrayify(guid)),
|
|
16046
16045
|
message,
|
|
16047
16046
|
extraData
|
|
16048
16047
|
},
|
|
@@ -18960,7 +18959,7 @@ var Uln = class {
|
|
|
18960
18959
|
*/
|
|
18961
18960
|
async getQuoteIXAccountMetaForCPI(connection, _payer, path, commitment) {
|
|
18962
18961
|
const { sender: sender_, dstEid } = path;
|
|
18963
|
-
const sender = new PublicKey(
|
|
18962
|
+
const sender = new PublicKey(arrayify(sender_));
|
|
18964
18963
|
const { executorProgram, dvnPrograms } = await this.getWorkerPrograms(connection, sender, dstEid, commitment);
|
|
18965
18964
|
const [defaultSendConfig] = this.deriver.defaultSendConfig(dstEid);
|
|
18966
18965
|
const [sendConfig] = this.deriver.sendConfig(dstEid, sender);
|
|
@@ -18991,7 +18990,7 @@ var Uln = class {
|
|
|
18991
18990
|
*/
|
|
18992
18991
|
async getSendIXAccountMetaForCPI(connection, payer, path, commitment = "confirmed") {
|
|
18993
18992
|
const { sender: sender_, dstEid } = path;
|
|
18994
|
-
const sender = new PublicKey(
|
|
18993
|
+
const sender = new PublicKey(arrayify(sender_));
|
|
18995
18994
|
const { executorProgram, dvnPrograms } = await this.getWorkerPrograms(connection, sender, dstEid, commitment);
|
|
18996
18995
|
const [sendConfig] = this.deriver.sendConfig(dstEid, sender);
|
|
18997
18996
|
const [defaultSendConfig] = this.deriver.defaultSendConfig(dstEid);
|
|
@@ -19137,8 +19136,8 @@ var Uln = class {
|
|
|
19137
19136
|
const payloadHashBytes = Uint8Array.from(Buffer.from(payloadHash.slice(2), "hex"));
|
|
19138
19137
|
const [confirmationsPDA] = this.deriver.confirmations(headerHashBytes, payloadHashBytes, dvn);
|
|
19139
19138
|
const endpoint = new endpoint_exports.Endpoint(endpointProgram);
|
|
19140
|
-
const receiver = new PublicKey(
|
|
19141
|
-
const sender =
|
|
19139
|
+
const receiver = new PublicKey(arrayify(packet.receiver()));
|
|
19140
|
+
const sender = arrayify(packet.sender());
|
|
19142
19141
|
const nonce = await endpoint.getNonce(connection, receiver, packet.srcEid(), sender, commitmentOrConfig);
|
|
19143
19142
|
const pendingNonce = await endpoint.getPendingInboundNonce(
|
|
19144
19143
|
connection,
|
|
@@ -19175,7 +19174,7 @@ var Uln = class {
|
|
|
19175
19174
|
const packet = PacketV1Codec.fromBytes(packetBytes);
|
|
19176
19175
|
const payloadHash = packet.payloadHash();
|
|
19177
19176
|
const srcEid = packet.srcEid();
|
|
19178
|
-
const receiver = new PublicKey(
|
|
19177
|
+
const receiver = new PublicKey(arrayify(packet.receiver()));
|
|
19179
19178
|
const payloadHashBytes = Uint8Array.from(Buffer.from(payloadHash.slice(2), "hex"));
|
|
19180
19179
|
const [defaultReceiveConfig] = this.deriver.defaultReceiveConfig(srcEid);
|
|
19181
19180
|
const [receiveConfig] = this.deriver.receiveConfig(srcEid, receiver);
|
|
@@ -19209,7 +19208,7 @@ var Uln = class {
|
|
|
19209
19208
|
},
|
|
19210
19209
|
{
|
|
19211
19210
|
params: {
|
|
19212
|
-
packetHeader: Array.from(
|
|
19211
|
+
packetHeader: Array.from(arrayify(packet.header())),
|
|
19213
19212
|
payloadHash: Array.from(payloadHashBytes)
|
|
19214
19213
|
}
|
|
19215
19214
|
},
|
|
@@ -20867,9 +20866,9 @@ async function sendWithUln(connection, payer, tokenMint, tokenSource, dstEid, am
|
|
|
20867
20866
|
payer,
|
|
20868
20867
|
{
|
|
20869
20868
|
srcEid: SOLANA_EID,
|
|
20870
|
-
sender:
|
|
20869
|
+
sender: hexlify(oftInstance.toBytes()),
|
|
20871
20870
|
dstEid,
|
|
20872
|
-
receiver:
|
|
20871
|
+
receiver: hexlify(peerAddress)
|
|
20873
20872
|
},
|
|
20874
20873
|
messageLib
|
|
20875
20874
|
);
|
|
@@ -21008,9 +21007,9 @@ async function quoteWithUln(connection, payer, tokenMint, dstEid, amountLd, minA
|
|
|
21008
21007
|
payer,
|
|
21009
21008
|
{
|
|
21010
21009
|
srcEid: SOLANA_EID,
|
|
21011
|
-
sender:
|
|
21010
|
+
sender: hexlify(oftInstance.toBytes()),
|
|
21012
21011
|
dstEid,
|
|
21013
|
-
receiver:
|
|
21012
|
+
receiver: hexlify(peerAddress)
|
|
21014
21013
|
},
|
|
21015
21014
|
messageLib
|
|
21016
21015
|
);
|