@layerzerolabs/lz-definitions 1.5.3-robintest.1 → 1.5.4

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/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@layerzerolabs/lz-definitions",
3
- "version": "1.5.3-robintest.1",
3
+ "version": "1.5.4",
4
4
  "description": "LayerZero Utility",
5
5
  "license": "MIT",
6
6
  "exports": "./dist/index.js",
@@ -28,6 +28,5 @@
28
28
  "rimraf": "^3.0.2",
29
29
  "ts-jest": "^29.0.5",
30
30
  "typescript": "^4.9.5"
31
- },
32
- "stableVersion": "1.5.3"
31
+ }
33
32
  }
@@ -1,2 +0,0 @@
1
- export * from './v2/packet-codec';
2
- //# sourceMappingURL=index.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/codec/index.ts"],"names":[],"mappings":"AAAA,cAAc,mBAAmB,CAAA"}
@@ -1,18 +0,0 @@
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
@@ -1 +0,0 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/codec/index.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;AAAA,oDAAiC"}
@@ -1,28 +0,0 @@
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
@@ -1 +0,0 @@
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"}
@@ -1,108 +0,0 @@
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
@@ -1 +0,0 @@
1
- {"version":3,"file":"packet-codec.js","sourceRoot":"","sources":["../../../src/codec/v2/packet-codec.ts"],"names":[],"mappings":"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"}
@@ -1,2 +0,0 @@
1
- export * from './v2/model';
2
- //# sourceMappingURL=index.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/model/index.ts"],"names":[],"mappings":"AAAA,cAAc,YAAY,CAAA"}
@@ -1,18 +0,0 @@
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
@@ -1 +0,0 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/model/index.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;AAAA,6CAA0B"}
@@ -1,14 +0,0 @@
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
@@ -1 +0,0 @@
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"}
@@ -1,3 +0,0 @@
1
- "use strict";
2
- Object.defineProperty(exports, "__esModule", { value: true });
3
- //# sourceMappingURL=model.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"model.js","sourceRoot":"","sources":["../../../src/model/v2/model.ts"],"names":[],"mappings":""}
@@ -1,2 +0,0 @@
1
- export * from './options';
2
- //# sourceMappingURL=index.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/options/index.ts"],"names":[],"mappings":"AAAA,cAAc,WAAW,CAAA"}
@@ -1,18 +0,0 @@
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
@@ -1 +0,0 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/options/index.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;AAAA,4CAAyB"}
@@ -1,49 +0,0 @@
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
@@ -1 +0,0 @@
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"}
@@ -1,197 +0,0 @@
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
@@ -1 +0,0 @@
1
- {"version":3,"file":"options.js","sourceRoot":"","sources":["../../src/options/options.ts"],"names":[],"mappings":";;;AAAA,mCAA+B;AAC/B,oCAAiD;AAEjD;;;;GAIG;AACH,MAAM,MAAM,GAAG,CAAC,CAAA;AAChB;;;;GAIG;AACH,MAAM,MAAM,GAAG,CAAC,CAAA;AAChB;;;;GAIG;AACH,MAAM,MAAM,GAAG,CAAC,CAAA;AAEhB,SAAgB,YAAY,CAAC,QAAyB;IAClD,OAAO,eAAM,CAAC,KAAK,CAAC,YAAY,CAAC,CAAC,QAAQ,EAAE,SAAS,CAAC,EAAE,CAAC,MAAM,EAAE,eAAM,CAAC,SAAS,CAAC,IAAI,CAAC,QAAQ,CAAC,CAAC,CAAC,CAAA;AACtG,CAAC;AAFD,oCAEC;AAED,SAAgB,YAAY,CACxB,QAAyB,EACzB,YAA6B,EAC7B,gBAAwB;IAExB,OAAO,eAAM,CAAC,KAAK,CAAC,YAAY,CAC5B,CAAC,QAAQ,EAAE,SAAS,EAAE,SAAS,EAAE,OAAO,CAAC,EACzC,CAAC,MAAM,EAAE,eAAM,CAAC,SAAS,CAAC,IAAI,CAAC,QAAQ,CAAC,EAAE,eAAM,CAAC,SAAS,CAAC,IAAI,CAAC,YAAY,CAAC,EAAE,gBAAgB,CAAC,CACnG,CAAA;AACL,CAAC;AATD,oCASC;AAED,IAAY,QAGX;AAHD,WAAY,QAAQ;IAChB,6CAAW,CAAA;IACX,2CAAU,CAAA;AACd,CAAC,EAHW,QAAQ,GAAR,gBAAQ,KAAR,gBAAQ,QAGnB;AAYD,IAAY,iBAIX;AAJD,WAAY,iBAAiB;IACzB,+DAAW,CAAA;IACX,+DAAW,CAAA;IACX,+DAAW,CAAA;AACf,CAAC,EAJW,iBAAiB,GAAjB,yBAAiB,KAAjB,yBAAiB,QAI5B;AAED;;;GAGG;AACH,MAAa,OAAO;IAApB;QACI,kBAAa,GAAoB,EAAE,CAAA;IAyKvC,CAAC;IAvKG,MAAM,CAAC,UAAU;QACb,OAAO,IAAI,OAAO,EAAE,CAAA;IACxB,CAAC;IAED,MAAM,CAAC,WAAW,CAAC,UAAkB;QACjC,MAAM,OAAO,GAAG,IAAI,OAAO,EAAE,CAAA;QAC7B,MAAM,YAAY,GAAG,eAAM,CAAC,KAAK,CAAC,QAAQ,CAAC,UAAU,CAAC,CAAA;QACtD,4BAA4B;QAC5B,MAAM,WAAW,GAAG,eAAM,CAAC,SAAS,CAAC,IAAI,CAAC,YAAY,CAAC,KAAK,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,CAAC,QAAQ,EAAE,CAAA;QAC9E,IAAI,WAAW,KAAK,MAAM,EAAE;YACxB,MAAM,WAAW,GAAG,eAAM,CAAC,SAAS,CAAC,IAAI,CAAC,YAAY,CAAC,KAAK,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,CAAC,QAAQ,EAAE,CAAA;YAC9E,IAAI,MAAM,GAAG,CAAC,CAAA;YACd,KAAK,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,WAAW,EAAE,CAAC,EAAE,EAAE;gBAClC,MAAM,QAAQ,GAAG,eAAM,CAAC,SAAS,CAAC,IAAI,CAAC,YAAY,CAAC,KAAK,CAAC,MAAM,EAAE,MAAM,GAAG,CAAC,CAAC,CAAC,CAAC,QAAQ,EAAE,CAAA;gBACzF,MAAM,IAAI,CAAC,CAAA;gBACX,MAAM,eAAe,GAAG,eAAM,CAAC,SAAS,CAAC,IAAI,CAAC,YAAY,CAAC,KAAK,CAAC,MAAM,EAAE,MAAM,GAAG,CAAC,CAAC,CAAC,CAAC,QAAQ,EAAE,CAAA;gBAChG,MAAM,IAAI,CAAC,CAAA;gBACX,MAAM,WAAW,GAAG,YAAY,CAAC,KAAK,CAAC,MAAM,EAAE,MAAM,GAAG,eAAe,CAAC,CAAA;gBACxE,sBAAsB;gBACtB,+EAA+E;gBAC/E,IAAI,YAAY,GAAG,CAAC,CAAA,CAAC,4BAA4B;gBACjD,OAAO,YAAY,GAAG,eAAe,EAAE;oBACnC,MAAM,UAAU,GAAG,eAAM,CAAC,SAAS,CAAC,IAAI,CACpC,WAAW,CAAC,KAAK,CAAC,YAAY,EAAE,YAAY,GAAG,CAAC,CAAC,CACpD,CAAC,QAAQ,EAAE,CAAA;oBACZ,YAAY,IAAI,CAAC,CAAA;oBACjB,MAAM,gBAAgB,GAAG,eAAM,CAAC,SAAS,CAAC,IAAI,CAC1C,WAAW,CAAC,KAAK,CAAC,YAAY,EAAE,YAAY,GAAG,CAAC,CAAC,CACpD,CAAC,QAAQ,EAAE,CAAA;oBACZ,YAAY,IAAI,CAAC,CAAA;oBACjB,MAAM,YAAY,GAAG,WAAW,CAAC,KAAK,CAAC,YAAY,EAAE,YAAY,GAAG,gBAAgB,CAAC,CAAA;oBACrF,YAAY,IAAI,gBAAgB,CAAA;oBAChC,OAAO,CAAC,SAAS,CAAC,QAAQ,EAAE;wBACxB,IAAI,EAAE,UAAU;wBAChB,MAAM,EAAE,eAAM,CAAC,KAAK,CAAC,OAAO,CAAC,YAAY,CAAC;qBAC7C,CAAC,CAAA;iBACL;aACJ;SACJ;aAAM,IAAI,WAAW,KAAK,MAAM,EAAE;YAC/B,MAAM,QAAQ,GAAG,eAAM,CAAC,SAAS,CAAC,IAAI,CAAC,YAAY,CAAC,KAAK,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,QAAQ,EAAE,CAAA;YAC5E,MAAM,YAAY,GAAG,eAAM,CAAC,SAAS,CAAC,IAAI,CAAC,YAAY,CAAC,KAAK,CAAC,EAAE,EAAE,EAAE,CAAC,CAAC,CAAC,QAAQ,EAAE,CAAA;YACjF,MAAM,gBAAgB,GAAG,eAAM,CAAC,KAAK,CAAC,OAAO,CAAC,YAAY,CAAC,KAAK,CAAC,EAAE,EAAE,YAAY,CAAC,UAAU,CAAC,CAAC,CAAA;YAC9F,OAAO,CAAC,uBAAuB,CAAC,QAAQ,CAAC,CAAC,uBAAuB,CAAC,YAAY,EAAE,gBAAgB,CAAC,CAAA;SACpG;aAAM,IAAI,WAAW,KAAK,MAAM,EAAE;YAC/B,MAAM,QAAQ,GAAG,eAAM,CAAC,SAAS,CAAC,IAAI,CAAC,YAAY,CAAC,KAAK,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,QAAQ,EAAE,CAAA;YAC5E,OAAO,CAAC,uBAAuB,CAAC,QAAQ,CAAC,CAAA;SAC5C;QAED,OAAO,OAAO,CAAA;IAClB,CAAC;IAED,uBAAuB,CAAC,GAAoB,EAAE,QAAyB,CAAC;QACpE,MAAM,KAAK,GAAG,eAAM,CAAC,SAAS,CAAC,IAAI,CAAC,GAAG,CAAC,CAAA;QACxC,MAAM,OAAO,GAAG,eAAM,CAAC,SAAS,CAAC,IAAI,CAAC,KAAK,CAAC,CAAA;QAC5C,IAAI,CAAC,SAAS,CAAC,QAAQ,CAAC,OAAO,EAAE;YAC7B,IAAI,EAAE,iBAAiB,CAAC,OAAO;YAC/B,MAAM,EAAE,OAAO,CAAC,EAAE,CAAC,CAAC,CAAC;gBACjB,CAAC,CAAC,eAAM,CAAC,KAAK,CAAC,YAAY,CAAC,CAAC,SAAS,CAAC,EAAE,CAAC,KAAK,CAAC,CAAC;gBACjD,CAAC,CAAC,eAAM,CAAC,KAAK,CAAC,YAAY,CAAC,CAAC,SAAS,EAAE,SAAS,CAAC,EAAE,CAAC,KAAK,EAAE,OAAO,CAAC,CAAC;SAC5E,CAAC,CAAA;QACF,OAAO,IAAI,CAAA;IACf,CAAC;IAED,uBAAuB,CAAC,MAAuB,EAAE,QAAgB;QAC7D,MAAM,QAAQ,GAAG,eAAM,CAAC,SAAS,CAAC,IAAI,CAAC,MAAM,CAAC,CAAA;QAC9C,IAAI,CAAC,SAAS,CAAC,QAAQ,CAAC,OAAO,EAAE;YAC7B,IAAI,EAAE,iBAAiB,CAAC,OAAO;YAC/B,MAAM,EAAE,eAAM,CAAC,KAAK,CAAC,YAAY,CAAC,CAAC,SAAS,EAAE,SAAS,CAAC,EAAE,CAAC,QAAQ,EAAE,IAAA,sBAAc,EAAC,QAAQ,CAAC,CAAC,CAAC;SAClG,CAAC,CAAA;QACF,OAAO,IAAI,CAAA;IACf,CAAC;IAED,uBAAuB,CAAC,GAAoB,EAAE,QAAyB,CAAC;QACpE,MAAM,KAAK,GAAG,eAAM,CAAC,SAAS,CAAC,IAAI,CAAC,GAAG,CAAC,CAAA;QACxC,MAAM,OAAO,GAAG,eAAM,CAAC,SAAS,CAAC,IAAI,CAAC,KAAK,CAAC,CAAA;QAC5C,IAAI,CAAC,SAAS,CAAC,QAAQ,CAAC,OAAO,EAAE;YAC7B,IAAI,EAAE,iBAAiB,CAAC,OAAO;YAC/B,MAAM,EAAE,eAAM,CAAC,KAAK,CAAC,YAAY,CAAC,CAAC,SAAS,EAAE,SAAS,CAAC,EAAE,CAAC,KAAK,EAAE,OAAO,CAAC,CAAC;SAC9E,CAAC,CAAA;QACF,OAAO,IAAI,CAAA;IACf,CAAC;IAED,KAAK;QACD,0CAA0C;QAC1C,IAAI,CAAC,aAAa,GAAG,IAAI,CAAC,aAAa,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,QAAQ,GAAG,CAAC,CAAC,QAAQ,CAAC,CAAA;QAC/E,8CAA8C;QAC9C,IAAI,CAAC,aAAa,CAAC,OAAO,CAAC,CAAC,CAAC,EAAE,EAAE;YAC7B,CAAC,CAAC,OAAO,GAAG,CAAC,CAAC,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,IAAI,GAAG,CAAC,CAAC,IAAI,CAAC,CAAA;QACzD,CAAC,CAAC,CAAA;QACF,qBAAqB;QACrB,IAAI,GAAG,GAAG,eAAM,CAAC,KAAK,CAAC,YAAY,CAAC,CAAC,QAAQ,EAAE,QAAQ,CAAC,EAAE,CAAC,MAAM,EAAE,IAAI,CAAC,aAAa,CAAC,MAAM,CAAC,CAAC,CAAA;QAC9F,IAAI,CAAC,aAAa,CAAC,OAAO,CAAC,CAAC,CAAC,EAAE,EAAE;YAC7B,MAAM,aAAa,GAAG,IAAI,CAAC,gBAAgB,CAAC,CAAC,CAAC,OAAO,CAAC,CAAA;YACtD,GAAG,IAAI,IAAA,cAAM,EACT,eAAM,CAAC,KAAK,CAAC,YAAY,CACrB,CAAC,QAAQ,EAAE,QAAQ,EAAE,OAAO,CAAC,EAC7B,CAAC,CAAC,CAAC,QAAQ,EAAE,IAAA,cAAM,EAAC,aAAa,CAAC,CAAC,MAAM,GAAG,CAAC,EAAE,aAAa,CAAC,CAChE,CACJ,CAAA;QACL,CAAC,CAAC,CAAA;QACF,OAAO,GAAG,CAAA;IACd,CAAC;IAEO,gBAAgB,CAAC,UAAoB;QACzC,IAAI,GAAG,GAAG,eAAM,CAAC,KAAK,CAAC,YAAY,CAAC,CAAC,QAAQ,CAAC,EAAE,CAAC,UAAU,CAAC,MAAM,CAAC,CAAC,CAAA;QACpE,UAAU,CAAC,OAAO,CAAC,CAAC,CAAC,EAAE,EAAE;YACrB,GAAG,IAAI,IAAA,cAAM,EACT,eAAM,CAAC,KAAK,CAAC,YAAY,CACrB,CAAC,QAAQ,EAAE,QAAQ,EAAE,OAAO,CAAC,EAC7B,CAAC,CAAC,CAAC,IAAI,EAAE,IAAA,cAAM,EAAC,CAAC,CAAC,MAAM,CAAC,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC,CAAC,MAAM,CAAC,CAClD,CACJ,CAAA;QACL,CAAC,CAAC,CAAA;QACF,OAAO,GAAG,CAAA;IACd,CAAC;IAEO,SAAS,CAAC,QAAgB,EAAE,MAAc;QAC9C,MAAM,MAAM,GAAG,IAAI,CAAC,aAAa,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,QAAQ,KAAK,QAAQ,CAAC,CAAA;QACtE,IAAI,MAAM,EAAE;YACR,MAAM,CAAC,OAAO,CAAC,IAAI,CAAC,MAAM,CAAC,CAAA;SAC9B;aAAM;YACH,IAAI,CAAC,aAAa,CAAC,IAAI,CAAC,EAAE,QAAQ,EAAE,OAAO,EAAE,CAAC,MAAM,CAAC,EAAE,CAAC,CAAA;SAC3D;IACL,CAAC;IAED,0BAA0B;QACtB,MAAM,MAAM,GAAG,IAAI,CAAC,UAAU,CAAC,QAAQ,CAAC,OAAO,EAAE,iBAAiB,CAAC,OAAO,CAAC,CAAA;QAC3E,IAAI,CAAC,MAAM,EAAE;YACT,OAAM;SACT;QACD,MAAM,MAAM,GAAG,MAAM,CAAC,IAAI,CAAC,IAAA,cAAM,EAAC,MAAM,CAAC,MAAM,CAAC,EAAE,KAAK,CAAC,CAAA;QACxD,MAAM,GAAG,GAAG,eAAM,CAAC,SAAS,CAAC,IAAI,CAAC,MAAM,CAAC,KAAK,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAA;QACtD,IAAI,MAAM,CAAC,MAAM,KAAK,EAAE,EAAE;YACtB,OAAO,EAAE,GAAG,EAAE,KAAK,EAAE,eAAM,CAAC,SAAS,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,CAAA;SAClD;QACD,MAAM,KAAK,GAAG,eAAM,CAAC,SAAS,CAAC,IAAI,CAAC,MAAM,CAAC,KAAK,CAAC,EAAE,EAAE,EAAE,CAAC,CAAC,CAAA;QACzD,OAAO,EAAE,GAAG,EAAE,KAAK,EAAE,CAAA;IACzB,CAAC;IAED,0BAA0B;QACtB,MAAM,MAAM,GAAG,IAAI,CAAC,UAAU,CAAC,QAAQ,CAAC,OAAO,EAAE,iBAAiB,CAAC,OAAO,CAAC,CAAA;QAC3E,IAAI,CAAC,MAAM,EAAE;YACT,OAAM;SACT;QACD,MAAM,MAAM,GAAG,MAAM,CAAC,IAAI,CAAC,IAAA,cAAM,EAAC,MAAM,CAAC,MAAM,CAAC,EAAE,KAAK,CAAC,CAAA;QACxD,MAAM,MAAM,GAAG,eAAM,CAAC,SAAS,CAAC,IAAI,CAAC,MAAM,CAAC,KAAK,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAA;QACzD,MAAM,QAAQ,GAAG,eAAM,CAAC,KAAK,CAAC,OAAO,CAAC,MAAM,CAAC,KAAK,CAAC,EAAE,EAAE,EAAE,CAAC,CAAC,CAAA;QAC3D,OAAO,EAAE,MAAM,EAAE,QAAQ,EAAE,CAAA;IAC/B,CAAC;IAED,0BAA0B;QACtB,MAAM,MAAM,GAAG,IAAI,CAAC,UAAU,CAAC,QAAQ,CAAC,OAAO,EAAE,iBAAiB,CAAC,OAAO,CAAC,CAAA;QAC3E,IAAI,CAAC,MAAM,EAAE;YACT,OAAM;SACT;QACD,MAAM,MAAM,GAAG,MAAM,CAAC,IAAI,CAAC,IAAA,cAAM,EAAC,MAAM,CAAC,MAAM,CAAC,EAAE,KAAK,CAAC,CAAA;QACxD,MAAM,GAAG,GAAG,eAAM,CAAC,SAAS,CAAC,IAAI,CAAC,MAAM,CAAC,KAAK,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAA;QACtD,MAAM,KAAK,GAAG,eAAM,CAAC,SAAS,CAAC,IAAI,CAAC,MAAM,CAAC,KAAK,CAAC,EAAE,EAAE,EAAE,CAAC,CAAC,CAAA;QACzD,OAAO,EAAE,GAAG,EAAE,KAAK,EAAE,CAAA;IACzB,CAAC;IAEO,UAAU,CAAC,QAAgB,EAAE,UAAkB;QACnD,MAAM,MAAM,GAAG,IAAI,CAAC,aAAa,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,QAAQ,KAAK,QAAQ,CAAC,CAAA;QACtE,IAAI,MAAM,EAAE;YACR,OAAO,MAAM,CAAC,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,IAAI,KAAK,UAAU,CAAC,CAAA;SAC3D;IACL,CAAC;CACJ;AA1KD,0BA0KC"}
@@ -1,6 +0,0 @@
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
@@ -1 +0,0 @@
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"}
package/dist/utils/hex.js DELETED
@@ -1,37 +0,0 @@
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
@@ -1 +0,0 @@
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"}
@@ -1,2 +0,0 @@
1
- export {};
2
- //# sourceMappingURL=hex.test.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"hex.test.d.ts","sourceRoot":"","sources":["../../src/utils/hex.test.ts"],"names":[],"mappings":""}
@@ -1,31 +0,0 @@
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
@@ -1 +0,0 @@
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"}