@layerzerolabs/lz-utilities 1.5.39-rc.1

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,28 @@
1
+ import { ethers } from 'ethers';
2
+ import { Chain, EndpointId, Network } from '@layerzerolabs/lz-definitions';
3
+ export interface DeploymentFetcher {
4
+ getDeployments(networks: Network[]): Deployment[];
5
+ }
6
+ export interface Deployment {
7
+ name: string;
8
+ endpointId?: EndpointId;
9
+ network: Network;
10
+ source?: string;
11
+ address: string;
12
+ abi?: string;
13
+ bytecode?: string;
14
+ }
15
+ export declare function toContract<T extends ethers.Contract>(deployment: Deployment, network: Network, provider?: ethers.providers.Provider): T;
16
+ export declare function findDeployment(deployments: Deployment[], name: string, options: {
17
+ chain?: Chain;
18
+ source?: string;
19
+ network?: Network;
20
+ endpointId?: EndpointId;
21
+ }): Deployment | undefined;
22
+ export type SDKPackageName = '@layerzerolabs/lz-evm-sdk-v1' | '@layerzerolabs/lz-evm-sdk-v2';
23
+ export declare class LayerZeroDeploymentFetcher implements DeploymentFetcher {
24
+ resolvePackage: (packageName: SDKPackageName) => string;
25
+ constructor(resolvePackage: (packageName: SDKPackageName) => string);
26
+ getDeployments(networks: Network[]): Deployment[];
27
+ }
28
+ //# sourceMappingURL=deployment.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"deployment.d.ts","sourceRoot":"","sources":["../src/deployment.ts"],"names":[],"mappings":"AAGA,OAAO,EAAE,MAAM,EAAE,MAAM,QAAQ,CAAA;AAG/B,OAAO,EACH,KAAK,EACL,UAAU,EAEV,OAAO,EAGV,MAAM,+BAA+B,CAAA;AAEtC,MAAM,WAAW,iBAAiB;IAC9B,cAAc,CAAC,QAAQ,EAAE,OAAO,EAAE,GAAG,UAAU,EAAE,CAAA;CACpD;AAED,MAAM,WAAW,UAAU;IACvB,IAAI,EAAE,MAAM,CAAA;IACZ,UAAU,CAAC,EAAE,UAAU,CAAA;IACvB,OAAO,EAAE,OAAO,CAAA;IAChB,MAAM,CAAC,EAAE,MAAM,CAAA;IACf,OAAO,EAAE,MAAM,CAAA;IACf,GAAG,CAAC,EAAE,MAAM,CAAA;IACZ,QAAQ,CAAC,EAAE,MAAM,CAAA;CACpB;AAKD,wBAAgB,UAAU,CAAC,CAAC,SAAS,MAAM,CAAC,QAAQ,EAChD,UAAU,EAAE,UAAU,EACtB,OAAO,EAAE,OAAO,EAChB,QAAQ,CAAC,EAAE,MAAM,CAAC,SAAS,CAAC,QAAQ,GACrC,CAAC,CAWH;AAED,wBAAgB,cAAc,CAC1B,WAAW,EAAE,UAAU,EAAE,EACzB,IAAI,EAAE,MAAM,EACZ,OAAO,EAAE;IAAE,KAAK,CAAC,EAAE,KAAK,CAAC;IAAC,MAAM,CAAC,EAAE,MAAM,CAAC;IAAC,OAAO,CAAC,EAAE,OAAO,CAAC;IAAC,UAAU,CAAC,EAAE,UAAU,CAAA;CAAE,0BAU1F;AAED,MAAM,MAAM,cAAc,GAAG,8BAA8B,GAAG,8BAA8B,CAAA;AAC5F,qBAAa,0BAA2B,YAAW,iBAAiB;IAChE,cAAc,EAAE,CAAC,WAAW,EAAE,cAAc,KAAK,MAAM,CAAA;gBAE3C,cAAc,EAAE,CAAC,WAAW,EAAE,cAAc,KAAK,MAAM;IAInE,cAAc,CAAC,QAAQ,EAAE,OAAO,EAAE,GAAG,UAAU,EAAE;CA2BpD"}
@@ -0,0 +1,88 @@
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 __setModuleDefault = (this && this.__setModuleDefault) || (Object.create ? (function(o, v) {
14
+ Object.defineProperty(o, "default", { enumerable: true, value: v });
15
+ }) : function(o, v) {
16
+ o["default"] = v;
17
+ });
18
+ var __importStar = (this && this.__importStar) || function (mod) {
19
+ if (mod && mod.__esModule) return mod;
20
+ var result = {};
21
+ if (mod != null) for (var k in mod) if (k !== "default" && Object.prototype.hasOwnProperty.call(mod, k)) __createBinding(result, mod, k);
22
+ __setModuleDefault(result, mod);
23
+ return result;
24
+ };
25
+ Object.defineProperty(exports, "__esModule", { value: true });
26
+ exports.LayerZeroDeploymentFetcher = exports.findDeployment = exports.toContract = void 0;
27
+ const fs = __importStar(require("fs"));
28
+ const path = __importStar(require("path"));
29
+ const ethers_1 = require("ethers");
30
+ const glob_1 = require("glob");
31
+ const lz_definitions_1 = require("@layerzerolabs/lz-definitions");
32
+ const contractCache = {};
33
+ function toContract(deployment, network, provider) {
34
+ const key = `${network}-${deployment.address}`;
35
+ if (!contractCache[key]) {
36
+ const Contract = new ethers_1.ethers.ContractFactory(deployment.abi, deployment.bytecode);
37
+ const contract = Contract.attach(deployment.address);
38
+ contractCache[key] = contract;
39
+ }
40
+ if (!provider) {
41
+ return contractCache[key];
42
+ }
43
+ return contractCache[key].connect(provider);
44
+ }
45
+ exports.toContract = toContract;
46
+ function findDeployment(deployments, name, options) {
47
+ return deployments.find((deployment) => {
48
+ let found = deployment.name === name;
49
+ found = found && (!options.chain || options.chain === (0, lz_definitions_1.networkToChain)(deployment.network));
50
+ found = found && (!options.network || options.network === deployment.network);
51
+ found = found && (!options.endpointId || options.endpointId === deployment.endpointId);
52
+ found = found && (!options.source || options.source === deployment.source);
53
+ return found;
54
+ });
55
+ }
56
+ exports.findDeployment = findDeployment;
57
+ class LayerZeroDeploymentFetcher {
58
+ constructor(resolvePackage) {
59
+ this.resolvePackage = resolvePackage;
60
+ }
61
+ getDeployments(networks) {
62
+ // this require third party must have dependencies in package.json
63
+ const packages = ['@layerzerolabs/lz-evm-sdk-v1', '@layerzerolabs/lz-evm-sdk-v2'];
64
+ const deployments = [];
65
+ for (const packageName of packages) {
66
+ const endpointVersion = packageName === '@layerzerolabs/lz-evm-sdk-v1' ? lz_definitions_1.EndpointVersion.V1 : lz_definitions_1.EndpointVersion.V2;
67
+ const packagePath = path.dirname(this.resolvePackage(packageName));
68
+ for (const network of networks) {
69
+ const deployFiles = (0, glob_1.globSync)(path.join(packagePath, 'deployments', network, '*.json'));
70
+ for (const deployFile of deployFiles) {
71
+ const { address, abi, bytecode } = JSON.parse(fs.readFileSync(deployFile, 'utf-8'));
72
+ deployments.push({
73
+ name: path.basename(deployFile).replace('.json', ''),
74
+ address,
75
+ abi,
76
+ bytecode,
77
+ source: packageName.replace('@layerzerolabs/', ''),
78
+ network,
79
+ endpointId: (0, lz_definitions_1.networkToEndpointId)(network, endpointVersion),
80
+ });
81
+ }
82
+ }
83
+ }
84
+ return deployments;
85
+ }
86
+ }
87
+ exports.LayerZeroDeploymentFetcher = LayerZeroDeploymentFetcher;
88
+ //# sourceMappingURL=deployment.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"deployment.js","sourceRoot":"","sources":["../src/deployment.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,2 @@
1
+ export * from './deployment';
2
+ //# sourceMappingURL=index.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAAA,cAAc,cAAc,CAAA"}
package/dist/index.js ADDED
@@ -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("./deployment"), exports);
18
+ //# sourceMappingURL=index.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;AAAA,+CAA4B"}
package/package.json ADDED
@@ -0,0 +1,34 @@
1
+ {
2
+ "name": "@layerzerolabs/lz-utilities",
3
+ "version": "1.5.39-rc.1",
4
+ "license": "BUSL-1.1",
5
+ "exports": "./dist/index.js",
6
+ "main": "./dist/index.js",
7
+ "types": "./dist/index.d.ts",
8
+ "files": [
9
+ "dist/**/*"
10
+ ],
11
+ "scripts": {
12
+ "build": "$npm_execpath tsc",
13
+ "clean": "$npm_execpath rimraf .turbo",
14
+ "format": "",
15
+ "lint": "",
16
+ "test": ""
17
+ },
18
+ "dependencies": {
19
+ "@ethersproject/providers": "^5.7.2",
20
+ "@layerzerolabs/lz-definitions": "^1.5.32",
21
+ "ethers": "^5.4.7",
22
+ "glob": "^10.3.3"
23
+ },
24
+ "devDependencies": {
25
+ "@layerzerolabs-internal/eslint-config": "^1.5.32",
26
+ "@layerzerolabs-internal/typescript-config": "^1.5.32",
27
+ "@types/glob": "^8.0.1",
28
+ "rimraf": "^4.3.1",
29
+ "typescript": "^5.0.4"
30
+ },
31
+ "publishConfig": {
32
+ "access": "restricted"
33
+ }
34
+ }