@layerzerolabs/lz-definitions 1.5.3 → 1.5.4-robinfix

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.
@@ -0,0 +1,2 @@
1
+ export * from './v2/packet-codec';
2
+ //# sourceMappingURL=index.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/codec/index.ts"],"names":[],"mappings":"AAAA,cAAc,mBAAmB,CAAA"}
@@ -0,0 +1,18 @@
1
+ "use strict";
2
+ var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) {
3
+ if (k2 === undefined) k2 = k;
4
+ var desc = Object.getOwnPropertyDescriptor(m, k);
5
+ if (!desc || ("get" in desc ? !m.__esModule : desc.writable || desc.configurable)) {
6
+ desc = { enumerable: true, get: function() { return m[k]; } };
7
+ }
8
+ Object.defineProperty(o, k2, desc);
9
+ }) : (function(o, m, k, k2) {
10
+ if (k2 === undefined) k2 = k;
11
+ o[k2] = m[k];
12
+ }));
13
+ var __exportStar = (this && this.__exportStar) || function(m, exports) {
14
+ for (var p in m) if (p !== "default" && !Object.prototype.hasOwnProperty.call(exports, p)) __createBinding(exports, m, p);
15
+ };
16
+ Object.defineProperty(exports, "__esModule", { value: true });
17
+ __exportStar(require("./v2/packet-codec"), exports);
18
+ //# sourceMappingURL=index.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/codec/index.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;AAAA,oDAAiC"}
@@ -0,0 +1,28 @@
1
+ /// <reference types="node" />
2
+ import { Packet, PacketHeader } from '../../model';
3
+ export declare class PacketCodec {
4
+ buffer: Buffer;
5
+ static from(payloadEncoded: string): PacketCodec;
6
+ static fromBytes(payload: Uint8Array): PacketCodec;
7
+ protected constructor(payloadEncoded: string);
8
+ /**
9
+ * encode packet to hex string
10
+ */
11
+ static encode(version: number, packet: Packet): string;
12
+ version(): number;
13
+ nonce(): string;
14
+ srcEid(): number;
15
+ sender(): string;
16
+ senderAddressB20(): string;
17
+ dstEid(): number;
18
+ receiver(): string;
19
+ receiverAddressB20(): string;
20
+ guid(): string;
21
+ message(): string;
22
+ messageHash(): string;
23
+ payload(): string;
24
+ decode(): Packet;
25
+ }
26
+ export declare function calculateGuid(packetHead: PacketHeader): string;
27
+ export declare function calculateMessageHash(message: string): string;
28
+ //# sourceMappingURL=packet-codec.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"packet-codec.d.ts","sourceRoot":"","sources":["../../../src/codec/v2/packet-codec.ts"],"names":[],"mappings":";AAIA,OAAO,EAAE,MAAM,EAAE,YAAY,EAAE,MAAM,aAAa,CAAA;AAelD,qBAAa,WAAW;IACpB,MAAM,EAAE,MAAM,CAAA;IAEd,MAAM,CAAC,IAAI,CAAC,cAAc,EAAE,MAAM,GAAG,WAAW;IAIhD,MAAM,CAAC,SAAS,CAAC,OAAO,EAAE,UAAU,GAAG,WAAW;IAIlD,SAAS,aAAa,cAAc,EAAE,MAAM;IAI5C;;OAEG;IACH,MAAM,CAAC,MAAM,CAAC,OAAO,EAAE,MAAM,EAAE,MAAM,EAAE,MAAM,GAAG,MAAM;IActD,OAAO,IAAI,MAAM;IAIjB,KAAK,IAAI,MAAM;IAIf,MAAM,IAAI,MAAM;IAIhB,MAAM,IAAI,MAAM;IAIhB,gBAAgB,IAAI,MAAM;IAI1B,MAAM,IAAI,MAAM;IAIhB,QAAQ,IAAI,MAAM;IAIlB,kBAAkB,IAAI,MAAM;IAI5B,IAAI,IAAI,MAAM;IAId,OAAO,IAAI,MAAM;IAIjB,WAAW,IAAI,MAAM;IAIrB,OAAO,IAAI,MAAM;IAIjB,MAAM,IAAI,MAAM;CAWnB;AAED,wBAAgB,aAAa,CAAC,UAAU,EAAE,YAAY,GAAG,MAAM,CAa9D;AAED,wBAAgB,oBAAoB,CAAC,OAAO,EAAE,MAAM,GAAG,MAAM,CAE5D"}
@@ -0,0 +1,108 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.calculateMessageHash = exports.calculateGuid = exports.PacketCodec = void 0;
4
+ // header (version + path + guid)
5
+ // version
6
+ const ethers_1 = require("ethers");
7
+ const utils_1 = require("../../utils");
8
+ const PACKET_VERSION_OFFSET = 0;
9
+ // nonce
10
+ const NONCE_OFFSET = 1;
11
+ // path
12
+ const SRC_CHAIN_OFFSET = 9;
13
+ const SRC_ADDRESS_OFFSET = 13;
14
+ const DST_CHAIN_OFFSET = 45;
15
+ const DST_ADDRESS_OFFSET = 49;
16
+ // payload (guid + message)
17
+ const GUID_OFFSET = 81; // keccak256(nonce + path)
18
+ const MESSAGE_OFFSET = 113;
19
+ class PacketCodec {
20
+ static from(payloadEncoded) {
21
+ return new PacketCodec(payloadEncoded);
22
+ }
23
+ static fromBytes(payload) {
24
+ return new PacketCodec('0x' + Buffer.from(payload).toString('hex'));
25
+ }
26
+ constructor(payloadEncoded) {
27
+ this.buffer = Buffer.from((0, utils_1.trim0x)(payloadEncoded), 'hex');
28
+ }
29
+ /**
30
+ * encode packet to hex string
31
+ */
32
+ static encode(version, packet) {
33
+ const message = (0, utils_1.trim0x)(packet.message);
34
+ const buffer = Buffer.alloc(MESSAGE_OFFSET + message.length / 2);
35
+ buffer.writeUInt8(version, PACKET_VERSION_OFFSET);
36
+ buffer.writeBigUInt64BE(BigInt(packet.nonce), NONCE_OFFSET);
37
+ buffer.writeUInt32BE(packet.srcEid, SRC_CHAIN_OFFSET);
38
+ buffer.write((0, utils_1.trim0x)(packet.sender), SRC_ADDRESS_OFFSET, 32, 'hex');
39
+ buffer.writeUInt32BE(packet.dstEid, DST_CHAIN_OFFSET);
40
+ buffer.write((0, utils_1.trim0x)(packet.receiver), DST_ADDRESS_OFFSET, 32, 'hex');
41
+ buffer.write((0, utils_1.trim0x)(packet.guid), GUID_OFFSET, 32, 'hex');
42
+ buffer.write(message, MESSAGE_OFFSET, message.length / 2, 'hex');
43
+ return '0x' + buffer.toString('hex');
44
+ }
45
+ version() {
46
+ return this.buffer.readUInt8(PACKET_VERSION_OFFSET);
47
+ }
48
+ nonce() {
49
+ return this.buffer.readBigUint64BE(NONCE_OFFSET).toString();
50
+ }
51
+ srcEid() {
52
+ return this.buffer.readUint32BE(SRC_CHAIN_OFFSET);
53
+ }
54
+ sender() {
55
+ return '0x' + this.buffer.slice(SRC_ADDRESS_OFFSET, DST_CHAIN_OFFSET).toString('hex');
56
+ }
57
+ senderAddressB20() {
58
+ return (0, utils_1.bytes32ToEthAddress)(this.sender());
59
+ }
60
+ dstEid() {
61
+ return this.buffer.readUint32BE(DST_CHAIN_OFFSET);
62
+ }
63
+ receiver() {
64
+ return '0x' + this.buffer.slice(DST_ADDRESS_OFFSET, GUID_OFFSET).toString('hex');
65
+ }
66
+ receiverAddressB20() {
67
+ return (0, utils_1.bytes32ToEthAddress)(this.receiver());
68
+ }
69
+ guid() {
70
+ return '0x' + this.buffer.slice(GUID_OFFSET, MESSAGE_OFFSET).toString('hex');
71
+ }
72
+ message() {
73
+ return '0x' + this.buffer.slice(MESSAGE_OFFSET).toString('hex');
74
+ }
75
+ messageHash() {
76
+ return calculateMessageHash(this.message());
77
+ }
78
+ payload() {
79
+ return '0x' + this.buffer.slice(GUID_OFFSET).toString('hex');
80
+ }
81
+ decode() {
82
+ return {
83
+ nonce: this.nonce(),
84
+ srcEid: this.srcEid(),
85
+ sender: this.sender(),
86
+ dstEid: this.dstEid(),
87
+ receiver: this.receiver(),
88
+ guid: this.guid(),
89
+ message: this.message(),
90
+ };
91
+ }
92
+ }
93
+ exports.PacketCodec = PacketCodec;
94
+ function calculateGuid(packetHead) {
95
+ return ethers_1.ethers.utils.keccak256(ethers_1.ethers.utils.solidityPack(['uint64', 'uint32', 'bytes32', 'uint32', 'bytes32'], [
96
+ ethers_1.ethers.BigNumber.from(packetHead.nonce),
97
+ packetHead.srcEid,
98
+ (0, utils_1.hexZeroPadTo32)(packetHead.sender),
99
+ packetHead.dstEid,
100
+ (0, utils_1.hexZeroPadTo32)(packetHead.receiver),
101
+ ]));
102
+ }
103
+ exports.calculateGuid = calculateGuid;
104
+ function calculateMessageHash(message) {
105
+ return ethers_1.ethers.utils.keccak256(message);
106
+ }
107
+ exports.calculateMessageHash = calculateMessageHash;
108
+ //# sourceMappingURL=packet-codec.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"packet-codec.js","sourceRoot":"","sources":["../../../src/codec/v2/packet-codec.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,2 @@
1
+ export * from './v2/model';
2
+ //# sourceMappingURL=index.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/model/index.ts"],"names":[],"mappings":"AAAA,cAAc,YAAY,CAAA"}
@@ -0,0 +1,18 @@
1
+ "use strict";
2
+ var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) {
3
+ if (k2 === undefined) k2 = k;
4
+ var desc = Object.getOwnPropertyDescriptor(m, k);
5
+ if (!desc || ("get" in desc ? !m.__esModule : desc.writable || desc.configurable)) {
6
+ desc = { enumerable: true, get: function() { return m[k]; } };
7
+ }
8
+ Object.defineProperty(o, k2, desc);
9
+ }) : (function(o, m, k, k2) {
10
+ if (k2 === undefined) k2 = k;
11
+ o[k2] = m[k];
12
+ }));
13
+ var __exportStar = (this && this.__exportStar) || function(m, exports) {
14
+ for (var p in m) if (p !== "default" && !Object.prototype.hasOwnProperty.call(exports, p)) __createBinding(exports, m, p);
15
+ };
16
+ Object.defineProperty(exports, "__esModule", { value: true });
17
+ __exportStar(require("./v2/model"), exports);
18
+ //# sourceMappingURL=index.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/model/index.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;AAAA,6CAA0B"}
@@ -0,0 +1,14 @@
1
+ export type PacketPath = {
2
+ srcEid: number;
3
+ sender: string;
4
+ dstEid: number;
5
+ receiver: string;
6
+ };
7
+ export type PacketHeader = PacketPath & {
8
+ nonce: string;
9
+ };
10
+ export type Packet = PacketHeader & {
11
+ guid: string;
12
+ message: string;
13
+ };
14
+ //# sourceMappingURL=model.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"model.d.ts","sourceRoot":"","sources":["../../../src/model/v2/model.ts"],"names":[],"mappings":"AAEA,MAAM,MAAM,UAAU,GAAG;IACrB,MAAM,EAAE,MAAM,CAAA;IACd,MAAM,EAAE,MAAM,CAAA;IACd,MAAM,EAAE,MAAM,CAAA;IACd,QAAQ,EAAE,MAAM,CAAA;CACnB,CAAA;AAED,MAAM,MAAM,YAAY,GAAG,UAAU,GAAG;IACpC,KAAK,EAAE,MAAM,CAAA;CAChB,CAAA;AAED,MAAM,MAAM,MAAM,GAAG,YAAY,GAAG;IAChC,IAAI,EAAE,MAAM,CAAA;IACZ,OAAO,EAAE,MAAM,CAAA;CAClB,CAAA"}
@@ -0,0 +1,3 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ //# sourceMappingURL=model.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"model.js","sourceRoot":"","sources":["../../../src/model/v2/model.ts"],"names":[],"mappings":""}
@@ -0,0 +1,2 @@
1
+ export * from './options';
2
+ //# sourceMappingURL=index.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/options/index.ts"],"names":[],"mappings":"AAAA,cAAc,WAAW,CAAA"}
@@ -0,0 +1,18 @@
1
+ "use strict";
2
+ var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) {
3
+ if (k2 === undefined) k2 = k;
4
+ var desc = Object.getOwnPropertyDescriptor(m, k);
5
+ if (!desc || ("get" in desc ? !m.__esModule : desc.writable || desc.configurable)) {
6
+ desc = { enumerable: true, get: function() { return m[k]; } };
7
+ }
8
+ Object.defineProperty(o, k2, desc);
9
+ }) : (function(o, m, k, k2) {
10
+ if (k2 === undefined) k2 = k;
11
+ o[k2] = m[k];
12
+ }));
13
+ var __exportStar = (this && this.__exportStar) || function(m, exports) {
14
+ for (var p in m) if (p !== "default" && !Object.prototype.hasOwnProperty.call(exports, p)) __createBinding(exports, m, p);
15
+ };
16
+ Object.defineProperty(exports, "__esModule", { value: true });
17
+ __exportStar(require("./options"), exports);
18
+ //# sourceMappingURL=index.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/options/index.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;AAAA,4CAAyB"}
@@ -0,0 +1,49 @@
1
+ import { ethers } from 'ethers';
2
+ export declare function optionsType1(extraGas: number | string): string;
3
+ export declare function optionsType2(extraGas: number | string, dstNativeAmt: number | string, dstNativeAddress: string): string;
4
+ export declare enum WorkerId {
5
+ Relayer = 1,
6
+ Oracle = 2
7
+ }
8
+ export type WorkerOptions = {
9
+ workerId: number;
10
+ options: Option[];
11
+ };
12
+ export type Option = {
13
+ type: number;
14
+ params: string;
15
+ };
16
+ export declare enum RelayerOptionType {
17
+ execute = 1,
18
+ airdrop = 2,
19
+ tailing = 3
20
+ }
21
+ /**
22
+ * only available for V2
23
+ * options builder
24
+ */
25
+ export declare class Options {
26
+ workerOptions: WorkerOptions[];
27
+ static newOptions(): Options;
28
+ static fromOptions(optionsHex: string): Options;
29
+ addRelayerExecuteOption(gas: string | number, value?: string | number): Options;
30
+ addRelayerAirdropOption(amount: string | number, receiver: string): Options;
31
+ addRelayerTailingOption(gas: string | number, value?: string | number): Options;
32
+ toHex(): string;
33
+ private encodeOptionList;
34
+ private addOption;
35
+ decodeRelayerExecuteOption(): {
36
+ gas: ethers.BigNumber;
37
+ value: ethers.BigNumber;
38
+ } | undefined;
39
+ decodeRelayerAirdropOption(): {
40
+ amount: ethers.BigNumber;
41
+ receiver: string;
42
+ } | undefined;
43
+ decodeRelayerTailingOption(): {
44
+ gas: ethers.BigNumber;
45
+ value: ethers.BigNumber;
46
+ } | undefined;
47
+ private findOption;
48
+ }
49
+ //# sourceMappingURL=options.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"options.d.ts","sourceRoot":"","sources":["../../src/options/options.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,MAAM,EAAE,MAAM,QAAQ,CAAA;AAsB/B,wBAAgB,YAAY,CAAC,QAAQ,EAAE,MAAM,GAAG,MAAM,GAAG,MAAM,CAE9D;AAED,wBAAgB,YAAY,CACxB,QAAQ,EAAE,MAAM,GAAG,MAAM,EACzB,YAAY,EAAE,MAAM,GAAG,MAAM,EAC7B,gBAAgB,EAAE,MAAM,GACzB,MAAM,CAKR;AAED,oBAAY,QAAQ;IAChB,OAAO,IAAI;IACX,MAAM,IAAI;CACb;AAED,MAAM,MAAM,aAAa,GAAG;IACxB,QAAQ,EAAE,MAAM,CAAA;IAChB,OAAO,EAAE,MAAM,EAAE,CAAA;CACpB,CAAA;AAED,MAAM,MAAM,MAAM,GAAG;IACjB,IAAI,EAAE,MAAM,CAAA;IACZ,MAAM,EAAE,MAAM,CAAA;CACjB,CAAA;AAED,oBAAY,iBAAiB;IACzB,OAAO,IAAI;IACX,OAAO,IAAI;IACX,OAAO,IAAI;CACd;AAED;;;GAGG;AACH,qBAAa,OAAO;IAChB,aAAa,EAAE,aAAa,EAAE,CAAK;IAEnC,MAAM,CAAC,UAAU,IAAI,OAAO;IAI5B,MAAM,CAAC,WAAW,CAAC,UAAU,EAAE,MAAM,GAAG,OAAO;IA+C/C,uBAAuB,CAAC,GAAG,EAAE,MAAM,GAAG,MAAM,EAAE,KAAK,GAAE,MAAM,GAAG,MAAU,GAAG,OAAO;IAYlF,uBAAuB,CAAC,MAAM,EAAE,MAAM,GAAG,MAAM,EAAE,QAAQ,EAAE,MAAM,GAAG,OAAO;IAS3E,uBAAuB,CAAC,GAAG,EAAE,MAAM,GAAG,MAAM,EAAE,KAAK,GAAE,MAAM,GAAG,MAAU,GAAG,OAAO;IAUlF,KAAK,IAAI,MAAM;IAqBf,OAAO,CAAC,gBAAgB;IAaxB,OAAO,CAAC,SAAS;IASjB,0BAA0B,IAAI;QAAE,GAAG,EAAE,MAAM,CAAC,SAAS,CAAC;QAAC,KAAK,EAAE,MAAM,CAAC,SAAS,CAAA;KAAE,GAAG,SAAS;IAc5F,0BAA0B,IAAI;QAAE,MAAM,EAAE,MAAM,CAAC,SAAS,CAAC;QAAC,QAAQ,EAAE,MAAM,CAAA;KAAE,GAAG,SAAS;IAWxF,0BAA0B,IAAI;QAAE,GAAG,EAAE,MAAM,CAAC,SAAS,CAAC;QAAC,KAAK,EAAE,MAAM,CAAC,SAAS,CAAA;KAAE,GAAG,SAAS;IAW5F,OAAO,CAAC,UAAU;CAMrB"}
@@ -0,0 +1,197 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.Options = exports.RelayerOptionType = exports.WorkerId = exports.optionsType2 = exports.optionsType1 = void 0;
4
+ const ethers_1 = require("ethers");
5
+ const utils_1 = require("../utils");
6
+ /**
7
+ * txType 1
8
+ * bytes [2 32 ]
9
+ * fields [txType extraGas]
10
+ */
11
+ const TYPE_1 = 1;
12
+ /**
13
+ * txType 2
14
+ * bytes [2 32 32 bytes[] ]
15
+ * fields [txType extraGas dstNativeAmt dstNativeAddress]
16
+ */
17
+ const TYPE_2 = 2;
18
+ /**
19
+ * only available for V2
20
+ * [type3][numWorkers][workerOps][workerOps]...
21
+ * [workerOps] -> [workerId][size][options]
22
+ */
23
+ const TYPE_3 = 3;
24
+ function optionsType1(extraGas) {
25
+ return ethers_1.ethers.utils.solidityPack(['uint16', 'uint256'], [TYPE_1, ethers_1.ethers.BigNumber.from(extraGas)]);
26
+ }
27
+ exports.optionsType1 = optionsType1;
28
+ function optionsType2(extraGas, dstNativeAmt, dstNativeAddress) {
29
+ return ethers_1.ethers.utils.solidityPack(['uint16', 'uint256', 'uint256', 'bytes'], [TYPE_2, ethers_1.ethers.BigNumber.from(extraGas), ethers_1.ethers.BigNumber.from(dstNativeAmt), dstNativeAddress]);
30
+ }
31
+ exports.optionsType2 = optionsType2;
32
+ var WorkerId;
33
+ (function (WorkerId) {
34
+ WorkerId[WorkerId["Relayer"] = 1] = "Relayer";
35
+ WorkerId[WorkerId["Oracle"] = 2] = "Oracle";
36
+ })(WorkerId = exports.WorkerId || (exports.WorkerId = {}));
37
+ var RelayerOptionType;
38
+ (function (RelayerOptionType) {
39
+ RelayerOptionType[RelayerOptionType["execute"] = 1] = "execute";
40
+ RelayerOptionType[RelayerOptionType["airdrop"] = 2] = "airdrop";
41
+ RelayerOptionType[RelayerOptionType["tailing"] = 3] = "tailing";
42
+ })(RelayerOptionType = exports.RelayerOptionType || (exports.RelayerOptionType = {}));
43
+ /**
44
+ * only available for V2
45
+ * options builder
46
+ */
47
+ class Options {
48
+ constructor() {
49
+ this.workerOptions = [];
50
+ }
51
+ static newOptions() {
52
+ return new Options();
53
+ }
54
+ static fromOptions(optionsHex) {
55
+ const options = new Options();
56
+ const optionsBytes = ethers_1.ethers.utils.arrayify(optionsHex);
57
+ // 0-2 bytes is options type
58
+ const optionsType = ethers_1.ethers.BigNumber.from(optionsBytes.slice(0, 2)).toNumber();
59
+ if (optionsType === TYPE_3) {
60
+ const workerCount = ethers_1.ethers.BigNumber.from(optionsBytes.slice(2, 4)).toNumber();
61
+ let offset = 4;
62
+ for (let i = 0; i < workerCount; i++) {
63
+ const workerId = ethers_1.ethers.BigNumber.from(optionsBytes.slice(offset, offset + 2)).toNumber();
64
+ offset += 2;
65
+ const optionBytesSize = ethers_1.ethers.BigNumber.from(optionsBytes.slice(offset, offset + 2)).toNumber();
66
+ offset += 2;
67
+ const optionBytes = optionsBytes.slice(offset, offset + optionBytesSize);
68
+ // parse options bytes
69
+ // const optionNums = ethers.BigNumber.from(optionBytes.slice(0, 2)).toNumber()
70
+ let optionOffset = 2; // 0-2 bytes is options nums
71
+ while (optionOffset < optionBytesSize) {
72
+ const optionType = ethers_1.ethers.BigNumber.from(optionBytes.slice(optionOffset, optionOffset + 2)).toNumber();
73
+ optionOffset += 2;
74
+ const optionParamsSize = ethers_1.ethers.BigNumber.from(optionBytes.slice(optionOffset, optionOffset + 2)).toNumber();
75
+ optionOffset += 2;
76
+ const optionParams = optionBytes.slice(optionOffset, optionOffset + optionParamsSize);
77
+ optionOffset += optionParamsSize;
78
+ options.addOption(workerId, {
79
+ type: optionType,
80
+ params: ethers_1.ethers.utils.hexlify(optionParams),
81
+ });
82
+ }
83
+ }
84
+ }
85
+ else if (optionsType === TYPE_2) {
86
+ const extraGas = ethers_1.ethers.BigNumber.from(optionsBytes.slice(2, 34)).toNumber();
87
+ const dstNativeAmt = ethers_1.ethers.BigNumber.from(optionsBytes.slice(34, 66)).toNumber();
88
+ const dstNativeAddress = ethers_1.ethers.utils.hexlify(optionsBytes.slice(66, optionsBytes.byteLength));
89
+ options.addRelayerExecuteOption(extraGas).addRelayerAirdropOption(dstNativeAmt, dstNativeAddress);
90
+ }
91
+ else if (optionsType === TYPE_1) {
92
+ const extraGas = ethers_1.ethers.BigNumber.from(optionsBytes.slice(2, 34)).toNumber();
93
+ options.addRelayerExecuteOption(extraGas);
94
+ }
95
+ return options;
96
+ }
97
+ addRelayerExecuteOption(gas, value = 0) {
98
+ const gasBN = ethers_1.ethers.BigNumber.from(gas);
99
+ const valueBN = ethers_1.ethers.BigNumber.from(value);
100
+ this.addOption(WorkerId.Relayer, {
101
+ type: RelayerOptionType.execute,
102
+ params: valueBN.eq(0)
103
+ ? ethers_1.ethers.utils.solidityPack(['uint256'], [gasBN])
104
+ : ethers_1.ethers.utils.solidityPack(['uint256', 'uint256'], [gasBN, valueBN]),
105
+ });
106
+ return this;
107
+ }
108
+ addRelayerAirdropOption(amount, receiver) {
109
+ const amountBN = ethers_1.ethers.BigNumber.from(amount);
110
+ this.addOption(WorkerId.Relayer, {
111
+ type: RelayerOptionType.airdrop,
112
+ params: ethers_1.ethers.utils.solidityPack(['uint256', 'bytes32'], [amountBN, (0, utils_1.hexZeroPadTo32)(receiver)]),
113
+ });
114
+ return this;
115
+ }
116
+ addRelayerTailingOption(gas, value = 0) {
117
+ const gasBN = ethers_1.ethers.BigNumber.from(gas);
118
+ const valueBN = ethers_1.ethers.BigNumber.from(value);
119
+ this.addOption(WorkerId.Relayer, {
120
+ type: RelayerOptionType.tailing,
121
+ params: ethers_1.ethers.utils.solidityPack(['uint256', 'uint256'], [gasBN, valueBN]),
122
+ });
123
+ return this;
124
+ }
125
+ toHex() {
126
+ // sort this.workerOptions by workerId ASC
127
+ this.workerOptions = this.workerOptions.sort((a, b) => a.workerId - b.workerId);
128
+ // sort each workerOptions.options by type ASC
129
+ this.workerOptions.forEach((w) => {
130
+ w.options = w.options.sort((a, b) => a.type - b.type);
131
+ });
132
+ // output encoded hex
133
+ let hex = ethers_1.ethers.utils.solidityPack(['uint16', 'uint16'], [TYPE_3, this.workerOptions.length]);
134
+ this.workerOptions.forEach((w) => {
135
+ const workerOptions = this.encodeOptionList(w.options);
136
+ hex += (0, utils_1.trim0x)(ethers_1.ethers.utils.solidityPack(['uint16', 'uint16', 'bytes'], [w.workerId, (0, utils_1.trim0x)(workerOptions).length / 2, workerOptions]));
137
+ });
138
+ return hex;
139
+ }
140
+ encodeOptionList(optionList) {
141
+ let hex = ethers_1.ethers.utils.solidityPack(['uint16'], [optionList.length]);
142
+ optionList.forEach((o) => {
143
+ hex += (0, utils_1.trim0x)(ethers_1.ethers.utils.solidityPack(['uint16', 'uint16', 'bytes'], [o.type, (0, utils_1.trim0x)(o.params).length / 2, o.params]));
144
+ });
145
+ return hex;
146
+ }
147
+ addOption(workerId, option) {
148
+ const worker = this.workerOptions.find((w) => w.workerId === workerId);
149
+ if (worker) {
150
+ worker.options.push(option);
151
+ }
152
+ else {
153
+ this.workerOptions.push({ workerId, options: [option] });
154
+ }
155
+ }
156
+ decodeRelayerExecuteOption() {
157
+ const option = this.findOption(WorkerId.Relayer, RelayerOptionType.execute);
158
+ if (!option) {
159
+ return;
160
+ }
161
+ const buffer = Buffer.from((0, utils_1.trim0x)(option.params), 'hex');
162
+ const gas = ethers_1.ethers.BigNumber.from(buffer.slice(0, 32));
163
+ if (buffer.length === 32) {
164
+ return { gas, value: ethers_1.ethers.BigNumber.from(0) };
165
+ }
166
+ const value = ethers_1.ethers.BigNumber.from(buffer.slice(32, 64));
167
+ return { gas, value };
168
+ }
169
+ decodeRelayerAirdropOption() {
170
+ const option = this.findOption(WorkerId.Relayer, RelayerOptionType.airdrop);
171
+ if (!option) {
172
+ return;
173
+ }
174
+ const buffer = Buffer.from((0, utils_1.trim0x)(option.params), 'hex');
175
+ const amount = ethers_1.ethers.BigNumber.from(buffer.slice(0, 32));
176
+ const receiver = ethers_1.ethers.utils.hexlify(buffer.slice(32, 64));
177
+ return { amount, receiver };
178
+ }
179
+ decodeRelayerTailingOption() {
180
+ const option = this.findOption(WorkerId.Relayer, RelayerOptionType.tailing);
181
+ if (!option) {
182
+ return;
183
+ }
184
+ const buffer = Buffer.from((0, utils_1.trim0x)(option.params), 'hex');
185
+ const gas = ethers_1.ethers.BigNumber.from(buffer.slice(0, 32));
186
+ const value = ethers_1.ethers.BigNumber.from(buffer.slice(32, 64));
187
+ return { gas, value };
188
+ }
189
+ findOption(workerId, optionType) {
190
+ const worker = this.workerOptions.find((w) => w.workerId === workerId);
191
+ if (worker) {
192
+ return worker.options.find((o) => o.type === optionType);
193
+ }
194
+ }
195
+ }
196
+ exports.Options = Options;
197
+ //# sourceMappingURL=options.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"options.js","sourceRoot":"","sources":["../../src/options/options.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,6 @@
1
+ export declare function hexZeroPadTo32(addr: string): string;
2
+ export declare function bytes32ToEthAddress(bytes32: string | Uint8Array): string;
3
+ export declare function trim0x(str: string): string;
4
+ export declare function addressToBytes32(address: string): Uint8Array;
5
+ export declare function isSolanaAddress(address: string): boolean;
6
+ //# sourceMappingURL=hex.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"hex.d.ts","sourceRoot":"","sources":["../../src/utils/hex.ts"],"names":[],"mappings":"AAIA,wBAAgB,cAAc,CAAC,IAAI,EAAE,MAAM,GAAG,MAAM,CAEnD;AAED,wBAAgB,mBAAmB,CAAC,OAAO,EAAE,MAAM,GAAG,UAAU,GAAG,MAAM,CAKxE;AAED,wBAAgB,MAAM,CAAC,GAAG,EAAE,MAAM,GAAG,MAAM,CAE1C;AAED,wBAAgB,gBAAgB,CAAC,OAAO,EAAE,MAAM,GAAG,UAAU,CAO5D;AAID,wBAAgB,eAAe,CAAC,OAAO,EAAE,MAAM,GAAG,OAAO,CAExD"}
@@ -0,0 +1,37 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.isSolanaAddress = exports.addressToBytes32 = exports.trim0x = exports.bytes32ToEthAddress = exports.hexZeroPadTo32 = void 0;
4
+ const web3_js_1 = require("@solana/web3.js");
5
+ const ethers_1 = require("ethers");
6
+ const utils_1 = require("ethers/lib/utils");
7
+ function hexZeroPadTo32(addr) {
8
+ return ethers_1.ethers.utils.hexZeroPad(addr, 32);
9
+ }
10
+ exports.hexZeroPadTo32 = hexZeroPadTo32;
11
+ function bytes32ToEthAddress(bytes32) {
12
+ if (bytes32 instanceof Uint8Array) {
13
+ bytes32 = ethers_1.ethers.utils.hexlify(bytes32);
14
+ }
15
+ return ethers_1.ethers.utils.getAddress(bytes32.slice(-40));
16
+ }
17
+ exports.bytes32ToEthAddress = bytes32ToEthAddress;
18
+ function trim0x(str) {
19
+ return str.replace(/^0x/, '');
20
+ }
21
+ exports.trim0x = trim0x;
22
+ function addressToBytes32(address) {
23
+ if (isSolanaAddress(address)) {
24
+ return new web3_js_1.PublicKey(address).toBytes();
25
+ }
26
+ else if (address.startsWith('0x') && address.length <= 66) {
27
+ return (0, utils_1.arrayify)(hexZeroPadTo32(address));
28
+ }
29
+ throw new Error('Invalid address');
30
+ }
31
+ exports.addressToBytes32 = addressToBytes32;
32
+ const solanaAddressRegex = /^([1-9A-HJ-NP-Za-km-z]{32,44})$/;
33
+ function isSolanaAddress(address) {
34
+ return solanaAddressRegex.test(address);
35
+ }
36
+ exports.isSolanaAddress = isSolanaAddress;
37
+ //# sourceMappingURL=hex.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"hex.js","sourceRoot":"","sources":["../../src/utils/hex.ts"],"names":[],"mappings":";;;AAAA,6CAA2C;AAC3C,mCAA+B;AAC/B,4CAA2C;AAE3C,SAAgB,cAAc,CAAC,IAAY;IACvC,OAAO,eAAM,CAAC,KAAK,CAAC,UAAU,CAAC,IAAI,EAAE,EAAE,CAAC,CAAA;AAC5C,CAAC;AAFD,wCAEC;AAED,SAAgB,mBAAmB,CAAC,OAA4B;IAC5D,IAAI,OAAO,YAAY,UAAU,EAAE;QAC/B,OAAO,GAAG,eAAM,CAAC,KAAK,CAAC,OAAO,CAAC,OAAO,CAAC,CAAA;KAC1C;IACD,OAAO,eAAM,CAAC,KAAK,CAAC,UAAU,CAAC,OAAO,CAAC,KAAK,CAAC,CAAC,EAAE,CAAC,CAAC,CAAA;AACtD,CAAC;AALD,kDAKC;AAED,SAAgB,MAAM,CAAC,GAAW;IAC9B,OAAO,GAAG,CAAC,OAAO,CAAC,KAAK,EAAE,EAAE,CAAC,CAAA;AACjC,CAAC;AAFD,wBAEC;AAED,SAAgB,gBAAgB,CAAC,OAAe;IAC5C,IAAI,eAAe,CAAC,OAAO,CAAC,EAAE;QAC1B,OAAO,IAAI,mBAAS,CAAC,OAAO,CAAC,CAAC,OAAO,EAAE,CAAA;KAC1C;SAAM,IAAI,OAAO,CAAC,UAAU,CAAC,IAAI,CAAC,IAAI,OAAO,CAAC,MAAM,IAAI,EAAE,EAAE;QACzD,OAAO,IAAA,gBAAQ,EAAC,cAAc,CAAC,OAAO,CAAC,CAAC,CAAA;KAC3C;IACD,MAAM,IAAI,KAAK,CAAC,iBAAiB,CAAC,CAAA;AACtC,CAAC;AAPD,4CAOC;AAED,MAAM,kBAAkB,GAAG,iCAAiC,CAAA;AAE5D,SAAgB,eAAe,CAAC,OAAe;IAC3C,OAAO,kBAAkB,CAAC,IAAI,CAAC,OAAO,CAAC,CAAA;AAC3C,CAAC;AAFD,0CAEC"}
@@ -0,0 +1,2 @@
1
+ export {};
2
+ //# sourceMappingURL=hex.test.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"hex.test.d.ts","sourceRoot":"","sources":["../../src/utils/hex.test.ts"],"names":[],"mappings":""}
@@ -0,0 +1,31 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ const utils_1 = require("ethers/lib/utils");
4
+ const hex_1 = require("./hex");
5
+ describe('util test', () => {
6
+ test.each([
7
+ [
8
+ '0xf39Fd6e51aad88F6F4ce6aB8827279cffFb92266',
9
+ (0, utils_1.arrayify)('0x000000000000000000000000f39Fd6e51aad88F6F4ce6aB8827279cffFb92266'),
10
+ ],
11
+ [
12
+ 'oeYf6KAJkLYhBuR8CiGc6L4D4Xtfepr85fuDgA9kq96',
13
+ (0, utils_1.arrayify)('0x0bf32b9f0db09672038fea36139b18f98a5f0149ef4ce0332e44b9a77e83c22d'),
14
+ ],
15
+ ])(`addressToBytes32 %s`, (i, o) => {
16
+ expect((0, hex_1.addressToBytes32)(i)).toEqual(o);
17
+ });
18
+ test.each([
19
+ [
20
+ '0x000000000000000000000000f39Fd6e51aad88F6F4ce6aB8827279cffFb92266',
21
+ '0xf39Fd6e51aad88F6F4ce6aB8827279cffFb92266',
22
+ ],
23
+ [
24
+ (0, utils_1.arrayify)('0x000000000000000000000000f39Fd6e51aad88F6F4ce6aB8827279cffFb92266'),
25
+ '0xf39Fd6e51aad88F6F4ce6aB8827279cffFb92266',
26
+ ],
27
+ ])('bytes32ToEthAddress %s', (i, o) => {
28
+ expect((0, hex_1.bytes32ToEthAddress)(i)).toEqual(o);
29
+ });
30
+ });
31
+ //# sourceMappingURL=hex.test.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"hex.test.js","sourceRoot":"","sources":["../../src/utils/hex.test.ts"],"names":[],"mappings":";;AAAA,4CAA2C;AAE3C,+BAA6D;AAE7D,QAAQ,CAAC,WAAW,EAAE,GAAG,EAAE;IACvB,IAAI,CAAC,IAAI,CAAC;QACN;YACI,4CAA4C;YAC5C,IAAA,gBAAQ,EAAC,oEAAoE,CAAC;SACjF;QACD;YACI,6CAA6C;YAC7C,IAAA,gBAAQ,EAAC,oEAAoE,CAAC;SACjF;KACJ,CAAC,CAAC,qBAAqB,EAAE,CAAC,CAAC,EAAE,CAAC,EAAE,EAAE;QAC/B,MAAM,CAAC,IAAA,sBAAgB,EAAC,CAAC,CAAC,CAAC,CAAC,OAAO,CAAC,CAAC,CAAC,CAAA;IAC1C,CAAC,CAAC,CAAA;IAEF,IAAI,CAAC,IAAI,CAAC;QACN;YACI,oEAAoE;YACpE,4CAA4C;SAC/C;QACD;YACI,IAAA,gBAAQ,EAAC,oEAAoE,CAAC;YAC9E,4CAA4C;SAC/C;KACJ,CAAC,CAAC,wBAAwB,EAAE,CAAC,CAAC,EAAE,CAAC,EAAE,EAAE;QAClC,MAAM,CAAC,IAAA,yBAAmB,EAAC,CAAC,CAAC,CAAC,CAAC,OAAO,CAAC,CAAC,CAAC,CAAA;IAC7C,CAAC,CAAC,CAAA;AACN,CAAC,CAAC,CAAA"}
@@ -1 +1 @@
1
- {"version":3,"file":"utils.d.ts","sourceRoot":"","sources":["../../src/utils/utils.ts"],"names":[],"mappings":"AAIA,OAAO,EAAE,KAAK,EAAE,SAAS,EAAc,eAAe,EAAE,WAAW,EAAE,KAAK,EAAE,MAAM,UAAU,CAAA;AAE5F,wBAAgB,mBAAmB,CAAC,OAAO,EAAE,MAAM,EAAE,OAAO,EAAE,eAAe,GAAG,MAAM,CAUrF;AAED,wBAAgB,YAAY,CAAC,OAAO,EAAE,MAAM,EAAE,OAAO,EAAE,eAAe,GAAG,WAAW,CAMnF;AAED,wBAAgB,cAAc,CAAC,OAAO,EAAE,MAAM,GAAG,KAAK,CAIrD;AAED,wBAAgB,mBAAmB,CAAC,UAAU,EAAE,MAAM,GAAG,MAAM,CAI9D;AAED,wBAAgB,yBAAyB,CAAC,KAAK,EAAE,KAAK,EAAE,KAAK,EAAE,KAAK,EAAE,OAAO,EAAE,eAAe,GAAG,MAAM,CAStG;AAED,wBAAgB,sBAAsB,CAAC,KAAK,EAAE,KAAK,EAAE,KAAK,EAAE,KAAK,EAAE,GAAG,CAAC,EAAE,WAAW,GAAG,MAAM,CAK5F;AAED,wBAAgB,cAAc,CAAC,OAAO,EAAE,MAAM,GAAG,KAAK,CAErD;AAED,wBAAgB,kBAAkB,CAAC,OAAO,EAAE,MAAM,GAAG,SAAS,CAG7D;AAED;;;GAGG;AACH,wBAAgB,YAAY,CAAC,KAAK,EAAE,KAAK,GAAG,SAAS,CAapD;AAED,wBAAgB,iBAAiB,CAAC,UAAU,EAAE,MAAM,GAAG,KAAK,CAI3D;AAED,wBAAgB,iBAAiB,CAAC,UAAU,EAAE,MAAM,GAAG,KAAK,CAK3D;AAED,wBAAgB,qBAAqB,CAAC,UAAU,EAAE,MAAM,GAAG,SAAS,CAGnE;AAED,wBAAgB,mBAAmB,CAAC,KAAK,EAAE,KAAK,YAY/C;AAID,wBAAgB,oBAAoB,CAAC,KAAK,EAAE,MAAM,EAAE,KAAK,EAAE,MAAM,EAAE,UAAU,EAAE,MAAM,GAAG,MAAM,CAG7F;AAED,wBAAgB,oBAAoB,CAAC,aAAa,EAAE,MAAM;;;;EAkBzD"}
1
+ {"version":3,"file":"utils.d.ts","sourceRoot":"","sources":["../../src/utils/utils.ts"],"names":[],"mappings":"AAIA,OAAO,EAAE,KAAK,EAAE,SAAS,EAAc,eAAe,EAAE,WAAW,EAAE,KAAK,EAAE,MAAM,UAAU,CAAA;AAE5F,wBAAgB,mBAAmB,CAAC,OAAO,EAAE,MAAM,EAAE,OAAO,EAAE,eAAe,GAAG,MAAM,CAUrF;AAED,wBAAgB,YAAY,CAAC,OAAO,EAAE,MAAM,EAAE,OAAO,EAAE,eAAe,GAAG,WAAW,CAMnF;AAED,wBAAgB,cAAc,CAAC,OAAO,EAAE,MAAM,GAAG,KAAK,CAIrD;AAED,wBAAgB,mBAAmB,CAAC,UAAU,EAAE,MAAM,GAAG,MAAM,CAI9D;AAED,wBAAgB,yBAAyB,CAAC,KAAK,EAAE,KAAK,EAAE,KAAK,EAAE,KAAK,EAAE,OAAO,EAAE,eAAe,GAAG,MAAM,CAStG;AAED,wBAAgB,sBAAsB,CAAC,KAAK,EAAE,KAAK,EAAE,KAAK,EAAE,KAAK,EAAE,GAAG,CAAC,EAAE,WAAW,GAAG,MAAM,CAK5F;AAED,wBAAgB,cAAc,CAAC,OAAO,EAAE,MAAM,GAAG,KAAK,CAErD;AAED,wBAAgB,kBAAkB,CAAC,OAAO,EAAE,MAAM,GAAG,SAAS,CAG7D;AAED;;;GAGG;AACH,wBAAgB,YAAY,CAAC,KAAK,EAAE,KAAK,GAAG,SAAS,CAapD;AAED,wBAAgB,iBAAiB,CAAC,UAAU,EAAE,MAAM,GAAG,KAAK,CAI3D;AAED,wBAAgB,iBAAiB,CAAC,UAAU,EAAE,MAAM,GAAG,KAAK,CAK3D;AAED,wBAAgB,qBAAqB,CAAC,UAAU,EAAE,MAAM,GAAG,SAAS,CAGnE;AAED,wBAAgB,mBAAmB,CAAC,KAAK,EAAE,KAAK,YAY/C;AAID,wBAAgB,oBAAoB,CAAC,KAAK,EAAE,MAAM,EAAE,KAAK,EAAE,MAAM,EAAE,UAAU,EAAE,MAAM,GAAG,MAAM,CAO7F;AAED,wBAAgB,oBAAoB,CAAC,aAAa,EAAE,MAAM;;;;EAkBzD"}
@@ -118,7 +118,7 @@ function getNetworksForStage(stage) {
118
118
  exports.getNetworksForStage = getNetworksForStage;
119
119
  const ULN_V1_BIAS = 100;
120
120
  function getChainIdForNetwork(chain, stage, ulnVersion) {
121
- const endpointId = chainAndStageToEndpointId(chain, stage, enums_1.EndpointVersion.V1);
121
+ const endpointId = chainAndStageToEndpointId(chain, stage, ['1', '2'].includes(ulnVersion) ? enums_1.EndpointVersion.V1 : enums_1.EndpointVersion.V2);
122
122
  return (ulnVersion == '1' ? endpointId - ULN_V1_BIAS : endpointId).toString();
123
123
  }
124
124
  exports.getChainIdForNetwork = getChainIdForNetwork;
@@ -1 +1 @@
1
- {"version":3,"file":"utils.js","sourceRoot":"","sources":["../../src/utils/utils.ts"],"names":[],"mappings":";;;;;;AAAA,oEAAsC;AAEtC,4CAA0C;AAC1C,8CAAkD;AAClD,oCAA4F;AAE5F,SAAgB,mBAAmB,CAAC,OAAe,EAAE,OAAwB;IACzE,MAAM,IAAI,GAAG,OAAO,CAAC,OAAO,CAAC,QAAQ,EAAE,EAAE,CAAC,CAAA;IAC1C,MAAM,CAAC,KAAK,EAAE,KAAK,CAAC,GAAG,IAAI,CAAC,KAAK,CAAC,GAAG,CAAC,CAAA;IACtC,MAAM,GAAG,GACL,OAAO,KAAK,uBAAe,CAAC,EAAE;QAC1B,CAAC,CAAC,GAAG,KAAK,CAAC,WAAW,EAAE,IAAI,KAAK,CAAC,WAAW,EAAE,EAAE;QACjD,CAAC,CAAC,GAAG,KAAK,CAAC,WAAW,EAAE,OAAO,KAAK,CAAC,WAAW,EAAE,EAAE,CAAA;IAC5D,MAAM,UAAU,GAAG,kBAAU,CAAC,GAAG,CAAC,CAAA;IAClC,IAAA,wBAAS,EAAC,UAAU,EAAE,yBAAyB,OAAO,EAAE,CAAC,CAAA;IACzD,OAAO,UAAU,CAAA;AACrB,CAAC;AAVD,kDAUC;AAED,SAAgB,YAAY,CAAC,OAAe,EAAE,OAAwB;IAClE,IAAI,OAAO,CAAC,QAAQ,CAAC,OAAO,CAAC,IAAI,OAAO,KAAK,SAAS,EAAE;QACpD,OAAO,mBAAW,CAAC,KAAK,CAAA;KAC3B;IACD,MAAM,UAAU,GAAG,mBAAmB,CAAC,OAAO,EAAE,OAAO,CAAC,CAAA;IACxD,OAAO,uBAAW,CAAC,UAAU,CAAC,CAAA;AAClC,CAAC;AAND,oCAMC;AAED,SAAgB,cAAc,CAAC,OAAe;IAC1C,MAAM,IAAI,GAAG,OAAO,CAAC,OAAO,CAAC,QAAQ,EAAE,EAAE,CAAC,CAAA;IAC1C,MAAM,KAAK,GAAG,IAAI,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,CAAA;IAChC,OAAO,aAAK,CAAC,KAAK,CAAC,WAAW,EAAE,CAAC,CAAA;AACrC,CAAC;AAJD,wCAIC;AAED,SAAgB,mBAAmB,CAAC,UAAkB;IAClD,MAAM,GAAG,GAAG,kBAAU,CAAC,UAAU,CAAC,CAAA;IAClC,IAAA,wBAAS,EAAC,GAAG,EAAE,uBAAuB,UAAU,EAAE,CAAC,CAAA;IACnD,OAAO,GAAG,CAAC,WAAW,EAAE,CAAC,OAAO,CAAC,IAAI,EAAE,GAAG,CAAC,CAAC,OAAO,CAAC,KAAK,EAAE,EAAE,CAAC,CAAA;AAClE,CAAC;AAJD,kDAIC;AAED,SAAgB,yBAAyB,CAAC,KAAY,EAAE,KAAY,EAAE,OAAwB;IAC1F,MAAM,GAAG,GACL,OAAO,KAAK,uBAAe,CAAC,EAAE;QAC1B,CAAC,CAAC,GAAG,KAAK,CAAC,WAAW,EAAE,OAAO,KAAK,CAAC,WAAW,EAAE,EAAE;QACpD,CAAC,CAAC,GAAG,KAAK,CAAC,WAAW,EAAE,IAAI,KAAK,CAAC,WAAW,EAAE,EAAE,CAAA;IAEzD,MAAM,UAAU,GAAG,kBAAU,CAAC,GAAG,CAAC,CAAA;IAClC,IAAA,wBAAS,EAAC,UAAU,EAAE,gBAAgB,GAAG,EAAE,CAAC,CAAA;IAC5C,OAAO,UAAU,CAAA;AACrB,CAAC;AATD,8DASC;AAED,SAAgB,sBAAsB,CAAC,KAAY,EAAE,KAAY,EAAE,GAAiB;IAChF,IAAI,GAAG,KAAK,mBAAW,CAAC,KAAK,EAAE;QAC3B,OAAO,GAAG,KAAK,IAAI,KAAK,QAAQ,CAAA;KACnC;IACD,OAAO,GAAG,KAAK,IAAI,KAAK,EAAE,CAAA;AAC9B,CAAC;AALD,wDAKC;AAED,SAAgB,cAAc,CAAC,OAAe;IAC1C,OAAO,OAAO,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC,CAAC,CAAU,CAAA;AACzC,CAAC;AAFD,wCAEC;AAED,SAAgB,kBAAkB,CAAC,OAAe;IAC9C,MAAM,KAAK,GAAG,cAAc,CAAC,OAAO,CAAC,CAAA;IACrC,OAAO,YAAY,CAAC,KAAK,CAAC,CAAA;AAC9B,CAAC;AAHD,gDAGC;AAED;;;GAGG;AACH,SAAgB,YAAY,CAAC,KAAY;IACrC,QAAQ,KAAK,EAAE;QACX,KAAK,aAAK,CAAC,KAAK;YACZ,OAAO,iBAAS,CAAC,KAAK,CAAA;QAC1B,KAAK,aAAK,CAAC,MAAM;YACb,OAAO,iBAAS,CAAC,MAAM,CAAA;QAC3B;YACI,IAAI,MAAM,CAAC,MAAM,CAAC,aAAK,CAAC,CAAC,QAAQ,CAAC,KAAK,CAAC,EAAE;gBACtC,OAAO,iBAAS,CAAC,GAAG,CAAA;aACvB;iBAAM;gBACH,OAAO,iBAAS,CAAC,OAAO,CAAA;aAC3B;KACR;AACL,CAAC;AAbD,oCAaC;AAED,SAAgB,iBAAiB,CAAC,UAAkB;IAChD,MAAM,GAAG,GAAG,kBAAU,CAAC,UAAU,CAAC,CAAA;IAClC,IAAA,wBAAS,EAAC,GAAG,EAAE,uBAAuB,UAAU,EAAE,CAAC,CAAA;IACnD,OAAO,GAAG,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,CAAC,WAAW,EAAW,CAAA;AACnD,CAAC;AAJD,8CAIC;AAED,SAAgB,iBAAiB,CAAC,UAAkB;IAChD,IAAI,GAAG,GAAG,kBAAU,CAAC,UAAU,CAAC,CAAA;IAChC,IAAA,wBAAS,EAAC,GAAG,EAAE,uBAAuB,UAAU,EAAE,CAAC,CAAA;IACnD,GAAG,GAAG,GAAG,CAAC,OAAO,CAAC,KAAK,EAAE,EAAE,CAAC,CAAA;IAC5B,OAAO,GAAG,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,CAAC,WAAW,EAAW,CAAA;AACnD,CAAC;AALD,8CAKC;AAED,SAAgB,qBAAqB,CAAC,UAAkB;IACpD,MAAM,KAAK,GAAG,iBAAiB,CAAC,UAAU,CAAC,CAAA;IAC3C,OAAO,YAAY,CAAC,KAAK,CAAC,CAAA;AAC9B,CAAC;AAHD,sDAGC;AAED,SAAgB,mBAAmB,CAAC,KAAY;IAC5C,MAAM,QAAQ,GAAa,EAAE,CAAA;IAC7B,KAAK,MAAM,GAAG,IAAI,kBAAU,EAAE;QAC1B,IAAI,MAAM,CAAC,GAAG,CAAC,IAAI,CAAC,EAAE;YAClB,MAAM,OAAO,GAAG,mBAAmB,CAAC,MAAM,CAAC,GAAG,CAAC,CAAC,CAAA;YAChD,MAAM,CAAC,GAAG,OAAO,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,CAAA;YAC/B,IAAI,KAAK,KAAK,CAAC,EAAE;gBACb,QAAQ,CAAC,IAAI,CAAC,OAAO,CAAC,CAAA;aACzB;SACJ;KACJ;IACD,OAAO,QAAQ,CAAA;AACnB,CAAC;AAZD,kDAYC;AAED,MAAM,WAAW,GAAG,GAAG,CAAA;AAEvB,SAAgB,oBAAoB,CAAC,KAAa,EAAE,KAAa,EAAE,UAAkB;IACjF,MAAM,UAAU,GAAG,yBAAyB,CAAC,KAAc,EAAE,KAAc,EAAE,uBAAe,CAAC,EAAE,CAAC,CAAA;IAChG,OAAO,CAAC,UAAU,IAAI,GAAG,CAAC,CAAC,CAAC,UAAU,GAAG,WAAW,CAAC,CAAC,CAAC,UAAU,CAAC,CAAC,QAAQ,EAAE,CAAA;AACjF,CAAC;AAHD,oDAGC;AAED,SAAgB,oBAAoB,CAAC,aAAqB;IACtD,IAAI,qBAAa,CAAC,QAAQ,CAAC,aAAa,GAAG,WAAW,CAAC,EAAE;QACrD,MAAM,UAAU,GAAG,aAAa,GAAG,WAAW,CAAA;QAC9C,MAAM,KAAK,GAAG,iBAAiB,CAAC,UAAU,CAAC,CAAA;QAC3C,MAAM,KAAK,GAAG,cAAc,CAAC,mBAAmB,CAAC,UAAU,CAAC,CAAC,CAAA;QAC7D,OAAO;YACH,SAAS,EAAE,KAAK;YAChB,GAAG,EAAE,KAAK;YACV,UAAU,EAAE,GAAG;SAClB,CAAA;KACJ;IACD,MAAM,KAAK,GAAG,iBAAiB,CAAC,aAAa,CAAC,CAAA;IAC9C,MAAM,KAAK,GAAG,cAAc,CAAC,mBAAmB,CAAC,aAAa,CAAC,CAAC,CAAA;IAChE,OAAO;QACH,SAAS,EAAE,KAAK;QAChB,GAAG,EAAE,KAAK;QACV,UAAU,EAAE,GAAG;KAClB,CAAA;AACL,CAAC;AAlBD,oDAkBC"}
1
+ {"version":3,"file":"utils.js","sourceRoot":"","sources":["../../src/utils/utils.ts"],"names":[],"mappings":"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"}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@layerzerolabs/lz-definitions",
3
- "version": "1.5.3",
3
+ "version": "1.5.4-robinfix",
4
4
  "description": "LayerZero Utility",
5
5
  "license": "MIT",
6
6
  "exports": "./dist/index.js",