@dotdm/contracts 0.1.0

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,14 @@
1
+ export declare function getCdmRoot(): string;
2
+ export declare function getContractDir(targetHash: string, library: string, version: number): string;
3
+ export interface SaveContractOptions {
4
+ targetHash: string;
5
+ library: string;
6
+ version: number;
7
+ abi: unknown[];
8
+ metadata: unknown;
9
+ address: string;
10
+ metadataCid: string;
11
+ }
12
+ export declare function saveContract(opts: SaveContractOptions): string;
13
+ export declare function resolveContractAbiPath(targetHash: string, library: string, version: number): string;
14
+ //# sourceMappingURL=store.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"store.d.ts","sourceRoot":"","sources":["../src/store.ts"],"names":[],"mappings":"AAIA,wBAAgB,UAAU,IAAI,MAAM,CAEnC;AAED,wBAAgB,cAAc,CAAC,UAAU,EAAE,MAAM,EAAE,OAAO,EAAE,MAAM,EAAE,OAAO,EAAE,MAAM,GAAG,MAAM,CAE3F;AAED,MAAM,WAAW,mBAAmB;IAChC,UAAU,EAAE,MAAM,CAAC;IACnB,OAAO,EAAE,MAAM,CAAC;IAChB,OAAO,EAAE,MAAM,CAAC;IAChB,GAAG,EAAE,OAAO,EAAE,CAAC;IACf,QAAQ,EAAE,OAAO,CAAC;IAClB,OAAO,EAAE,MAAM,CAAC;IAChB,WAAW,EAAE,MAAM,CAAC;CACvB;AAED,wBAAgB,YAAY,CAAC,IAAI,EAAE,mBAAmB,GAAG,MAAM,CA8B9D;AAED,wBAAgB,sBAAsB,CAClC,UAAU,EAAE,MAAM,EAClB,OAAO,EAAE,MAAM,EACf,OAAO,EAAE,MAAM,GAChB,MAAM,CAER"}
package/dist/store.js ADDED
@@ -0,0 +1,35 @@
1
+ import { homedir } from "os";
2
+ import { resolve } from "path";
3
+ import { mkdirSync, writeFileSync, symlinkSync, unlinkSync } from "fs";
4
+ export function getCdmRoot() {
5
+ return process.env.CDM_ROOT ?? resolve(homedir(), ".cdm");
6
+ }
7
+ export function getContractDir(targetHash, library, version) {
8
+ return resolve(getCdmRoot(), targetHash, "contracts", library, String(version));
9
+ }
10
+ export function saveContract(opts) {
11
+ const dir = getContractDir(opts.targetHash, opts.library, opts.version);
12
+ mkdirSync(dir, { recursive: true });
13
+ writeFileSync(resolve(dir, "abi.json"), JSON.stringify(opts.abi, null, 2));
14
+ writeFileSync(resolve(dir, "metadata.json"), JSON.stringify(opts.metadata, null, 2));
15
+ writeFileSync(resolve(dir, "info.json"), JSON.stringify({
16
+ name: opts.library,
17
+ targetHash: opts.targetHash,
18
+ version: opts.version,
19
+ address: opts.address,
20
+ metadataCid: opts.metadataCid,
21
+ }, null, 2));
22
+ // Update latest symlink
23
+ const parentDir = resolve(dir, "..");
24
+ const latestLink = resolve(parentDir, "latest");
25
+ try {
26
+ unlinkSync(latestLink);
27
+ }
28
+ catch { }
29
+ symlinkSync(String(opts.version), latestLink);
30
+ return dir;
31
+ }
32
+ export function resolveContractAbiPath(targetHash, library, version) {
33
+ return resolve(getContractDir(targetHash, library, version), "abi.json");
34
+ }
35
+ //# sourceMappingURL=store.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"store.js","sourceRoot":"","sources":["../src/store.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,OAAO,EAAE,MAAM,IAAI,CAAC;AAC7B,OAAO,EAAE,OAAO,EAAE,MAAM,MAAM,CAAC;AAC/B,OAAO,EAAE,SAAS,EAAE,aAAa,EAAE,WAAW,EAAE,UAAU,EAAE,MAAM,IAAI,CAAC;AAEvE,MAAM,UAAU,UAAU;IACtB,OAAO,OAAO,CAAC,GAAG,CAAC,QAAQ,IAAI,OAAO,CAAC,OAAO,EAAE,EAAE,MAAM,CAAC,CAAC;AAC9D,CAAC;AAED,MAAM,UAAU,cAAc,CAAC,UAAkB,EAAE,OAAe,EAAE,OAAe;IAC/E,OAAO,OAAO,CAAC,UAAU,EAAE,EAAE,UAAU,EAAE,WAAW,EAAE,OAAO,EAAE,MAAM,CAAC,OAAO,CAAC,CAAC,CAAC;AACpF,CAAC;AAYD,MAAM,UAAU,YAAY,CAAC,IAAyB;IAClD,MAAM,GAAG,GAAG,cAAc,CAAC,IAAI,CAAC,UAAU,EAAE,IAAI,CAAC,OAAO,EAAE,IAAI,CAAC,OAAO,CAAC,CAAC;IACxE,SAAS,CAAC,GAAG,EAAE,EAAE,SAAS,EAAE,IAAI,EAAE,CAAC,CAAC;IAEpC,aAAa,CAAC,OAAO,CAAC,GAAG,EAAE,UAAU,CAAC,EAAE,IAAI,CAAC,SAAS,CAAC,IAAI,CAAC,GAAG,EAAE,IAAI,EAAE,CAAC,CAAC,CAAC,CAAC;IAC3E,aAAa,CAAC,OAAO,CAAC,GAAG,EAAE,eAAe,CAAC,EAAE,IAAI,CAAC,SAAS,CAAC,IAAI,CAAC,QAAQ,EAAE,IAAI,EAAE,CAAC,CAAC,CAAC,CAAC;IACrF,aAAa,CACT,OAAO,CAAC,GAAG,EAAE,WAAW,CAAC,EACzB,IAAI,CAAC,SAAS,CACV;QACI,IAAI,EAAE,IAAI,CAAC,OAAO;QAClB,UAAU,EAAE,IAAI,CAAC,UAAU;QAC3B,OAAO,EAAE,IAAI,CAAC,OAAO;QACrB,OAAO,EAAE,IAAI,CAAC,OAAO;QACrB,WAAW,EAAE,IAAI,CAAC,WAAW;KAChC,EACD,IAAI,EACJ,CAAC,CACJ,CACJ,CAAC;IAEF,wBAAwB;IACxB,MAAM,SAAS,GAAG,OAAO,CAAC,GAAG,EAAE,IAAI,CAAC,CAAC;IACrC,MAAM,UAAU,GAAG,OAAO,CAAC,SAAS,EAAE,QAAQ,CAAC,CAAC;IAChD,IAAI,CAAC;QACD,UAAU,CAAC,UAAU,CAAC,CAAC;IAC3B,CAAC;IAAC,MAAM,CAAC,CAAA,CAAC;IACV,WAAW,CAAC,MAAM,CAAC,IAAI,CAAC,OAAO,CAAC,EAAE,UAAU,CAAC,CAAC;IAE9C,OAAO,GAAG,CAAC;AACf,CAAC;AAED,MAAM,UAAU,sBAAsB,CAClC,UAAkB,EAClB,OAAe,EACf,OAAe;IAEf,OAAO,OAAO,CAAC,cAAc,CAAC,UAAU,EAAE,OAAO,EAAE,OAAO,CAAC,EAAE,UAAU,CAAC,CAAC;AAC7E,CAAC"}
package/package.json ADDED
@@ -0,0 +1,44 @@
1
+ {
2
+ "name": "@dotdm/contracts",
3
+ "version": "0.1.0",
4
+ "type": "module",
5
+ "main": "./dist/index.js",
6
+ "types": "./dist/index.d.ts",
7
+ "exports": {
8
+ ".": {
9
+ "types": "./dist/index.d.ts",
10
+ "import": "./dist/index.js"
11
+ }
12
+ },
13
+ "files": [
14
+ "dist"
15
+ ],
16
+ "publishConfig": {
17
+ "access": "public"
18
+ },
19
+ "dependencies": {
20
+ "@noble/hashes": "^2.0.1",
21
+ "@polkadot-api/sdk-ink": "^0.6.2",
22
+ "multiformats": "^13.4.2",
23
+ "polkadot-api": "^1.23.3",
24
+ "@dotdm/env": "0.1.0",
25
+ "@dotdm/utils": "0.1.0"
26
+ },
27
+ "peerDependencies": {
28
+ "@polkadot-api/descriptors": "*"
29
+ },
30
+ "peerDependenciesMeta": {
31
+ "@polkadot-api/descriptors": {
32
+ "optional": true
33
+ }
34
+ },
35
+ "devDependencies": {
36
+ "@types/node": "^24.10.1",
37
+ "typescript": "^5.9.3",
38
+ "@polkadot-api/descriptors": "0.1.0-autogenerated.11203421873544033963"
39
+ },
40
+ "scripts": {
41
+ "build": "tsc -p tsconfig.json",
42
+ "clean": "rm -rf dist"
43
+ }
44
+ }