@dotdm/contracts 0.2.9 → 0.2.10-dev.1773365827
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/dist/builder.d.ts +2 -2
- package/dist/builder.d.ts.map +1 -1
- package/dist/builder.js +5 -8
- package/dist/builder.js.map +1 -1
- package/dist/cdm-json.d.ts +1 -2
- package/dist/cdm-json.d.ts.map +1 -1
- package/dist/cdm-json.js +2 -2
- package/dist/cdm-json.js.map +1 -1
- package/dist/deployer.d.ts +14 -5
- package/dist/deployer.d.ts.map +1 -1
- package/dist/deployer.js +25 -10
- package/dist/deployer.js.map +1 -1
- package/dist/index.d.ts +2 -2
- package/dist/index.d.ts.map +1 -1
- package/dist/index.js +2 -2
- package/dist/index.js.map +1 -1
- package/package.json +4 -4
package/dist/builder.d.ts
CHANGED
|
@@ -9,9 +9,9 @@ export type BuildProgressCallback = (processed: number, total: number, currentCr
|
|
|
9
9
|
/**
|
|
10
10
|
* Build a single contract using `cargo pvm-contract build`.
|
|
11
11
|
*/
|
|
12
|
-
export declare function pvmContractBuild(rootDir: string, crateName: string
|
|
12
|
+
export declare function pvmContractBuild(rootDir: string, crateName: string): void;
|
|
13
13
|
/**
|
|
14
14
|
* Build a single contract asynchronously with progress tracking.
|
|
15
15
|
*/
|
|
16
|
-
export declare function pvmContractBuildAsync(rootDir: string, crateName: string,
|
|
16
|
+
export declare function pvmContractBuildAsync(rootDir: string, crateName: string, onProgress?: BuildProgressCallback): Promise<BuildResult>;
|
|
17
17
|
//# sourceMappingURL=builder.d.ts.map
|
package/dist/builder.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"builder.d.ts","sourceRoot":"","sources":["../src/builder.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"builder.d.ts","sourceRoot":"","sources":["../src/builder.ts"],"names":[],"mappings":"AAIA,MAAM,WAAW,WAAW;IACxB,SAAS,EAAE,MAAM,CAAC;IAClB,OAAO,EAAE,OAAO,CAAC;IACjB,MAAM,EAAE,MAAM,CAAC;IACf,MAAM,EAAE,MAAM,CAAC;IACf,UAAU,EAAE,MAAM,CAAC;CACtB;AAED,MAAM,MAAM,qBAAqB,GAAG,CAChC,SAAS,EAAE,MAAM,EACjB,KAAK,EAAE,MAAM,EACb,YAAY,EAAE,MAAM,KACnB,IAAI,CAAC;AAEV;;GAEG;AACH,wBAAgB,gBAAgB,CAAC,OAAO,EAAE,MAAM,EAAE,SAAS,EAAE,MAAM,GAAG,IAAI,CAQzE;AAED;;GAEG;AACH,wBAAsB,qBAAqB,CACvC,OAAO,EAAE,MAAM,EACf,SAAS,EAAE,MAAM,EACjB,UAAU,CAAC,EAAE,qBAAqB,GACnC,OAAO,CAAC,WAAW,CAAC,CAoFtB"}
|
package/dist/builder.js
CHANGED
|
@@ -1,23 +1,22 @@
|
|
|
1
1
|
import { resolve } from "path";
|
|
2
2
|
import { execFileSync, spawn } from "child_process";
|
|
3
|
+
import { REGISTRY_ADDRESS } from "@dotdm/utils";
|
|
3
4
|
/**
|
|
4
5
|
* Build a single contract using `cargo pvm-contract build`.
|
|
5
6
|
*/
|
|
6
|
-
export function pvmContractBuild(rootDir, crateName
|
|
7
|
+
export function pvmContractBuild(rootDir, crateName) {
|
|
7
8
|
const manifestPath = resolve(rootDir, "Cargo.toml");
|
|
8
9
|
const args = ["pvm-contract", "build", "--manifest-path", manifestPath, "-p", crateName];
|
|
9
10
|
const env = {
|
|
10
11
|
...process.env,
|
|
12
|
+
CONTRACTS_REGISTRY_ADDR: REGISTRY_ADDRESS,
|
|
11
13
|
};
|
|
12
|
-
if (registryAddr) {
|
|
13
|
-
env.CONTRACTS_REGISTRY_ADDR = registryAddr;
|
|
14
|
-
}
|
|
15
14
|
execFileSync("cargo", args, { cwd: rootDir, stdio: "inherit", env });
|
|
16
15
|
}
|
|
17
16
|
/**
|
|
18
17
|
* Build a single contract asynchronously with progress tracking.
|
|
19
18
|
*/
|
|
20
|
-
export async function pvmContractBuildAsync(rootDir, crateName,
|
|
19
|
+
export async function pvmContractBuildAsync(rootDir, crateName, onProgress) {
|
|
21
20
|
const manifestPath = resolve(rootDir, "Cargo.toml");
|
|
22
21
|
return new Promise((done) => {
|
|
23
22
|
const startTime = Date.now();
|
|
@@ -33,10 +32,8 @@ export async function pvmContractBuildAsync(rootDir, crateName, registryAddr, on
|
|
|
33
32
|
];
|
|
34
33
|
const env = {
|
|
35
34
|
...process.env,
|
|
35
|
+
CONTRACTS_REGISTRY_ADDR: REGISTRY_ADDRESS,
|
|
36
36
|
};
|
|
37
|
-
if (registryAddr) {
|
|
38
|
-
env.CONTRACTS_REGISTRY_ADDR = registryAddr;
|
|
39
|
-
}
|
|
40
37
|
const child = spawn("cargo", args, {
|
|
41
38
|
cwd: rootDir,
|
|
42
39
|
env,
|
package/dist/builder.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"builder.js","sourceRoot":"","sources":["../src/builder.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,OAAO,EAAE,MAAM,MAAM,CAAC;AAC/B,OAAO,EAAE,YAAY,EAAE,KAAK,EAAE,MAAM,eAAe,CAAC;
|
|
1
|
+
{"version":3,"file":"builder.js","sourceRoot":"","sources":["../src/builder.ts"],"names":[],"mappings":"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"}
|
package/dist/cdm-json.d.ts
CHANGED
|
@@ -1,7 +1,6 @@
|
|
|
1
1
|
export interface CdmJsonTarget {
|
|
2
2
|
"asset-hub": string;
|
|
3
3
|
bulletin: string;
|
|
4
|
-
registry: string;
|
|
5
4
|
}
|
|
6
5
|
export interface CdmJsonContract {
|
|
7
6
|
version: number;
|
|
@@ -14,7 +13,7 @@ export interface CdmJson {
|
|
|
14
13
|
dependencies: Record<string, Record<string, number | string>>;
|
|
15
14
|
contracts?: Record<string, Record<string, CdmJsonContract>>;
|
|
16
15
|
}
|
|
17
|
-
export declare function computeTargetHash(assethubUrl: string, ipfsGatewayUrl: string
|
|
16
|
+
export declare function computeTargetHash(assethubUrl: string, ipfsGatewayUrl: string): string;
|
|
18
17
|
export declare function readCdmJson(pathOrDir?: string): {
|
|
19
18
|
cdmJson: CdmJson;
|
|
20
19
|
cdmJsonPath: string;
|
package/dist/cdm-json.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"cdm-json.d.ts","sourceRoot":"","sources":["../src/cdm-json.ts"],"names":[],"mappings":"AAIA,MAAM,WAAW,aAAa;IAC1B,WAAW,EAAE,MAAM,CAAC;IACpB,QAAQ,EAAE,MAAM,CAAC;
|
|
1
|
+
{"version":3,"file":"cdm-json.d.ts","sourceRoot":"","sources":["../src/cdm-json.ts"],"names":[],"mappings":"AAIA,MAAM,WAAW,aAAa;IAC1B,WAAW,EAAE,MAAM,CAAC;IACpB,QAAQ,EAAE,MAAM,CAAC;CACpB;AAED,MAAM,WAAW,eAAe;IAC5B,OAAO,EAAE,MAAM,CAAC;IAChB,OAAO,EAAE,MAAM,CAAC;IAChB,GAAG,EAAE,OAAO,EAAE,CAAC;IACf,WAAW,EAAE,MAAM,CAAC;CACvB;AAED,MAAM,WAAW,OAAO;IACpB,OAAO,EAAE,MAAM,CAAC,MAAM,EAAE,aAAa,CAAC,CAAC;IACvC,YAAY,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,GAAG,MAAM,CAAC,CAAC,CAAC;IAC9D,SAAS,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,MAAM,EAAE,eAAe,CAAC,CAAC,CAAC;CAC/D;AAED,wBAAgB,iBAAiB,CAAC,WAAW,EAAE,MAAM,EAAE,cAAc,EAAE,MAAM,GAAG,MAAM,CAIrF;AAED,wBAAgB,WAAW,CAAC,SAAS,CAAC,EAAE,MAAM,GAAG;IAAE,OAAO,EAAE,OAAO,CAAC;IAAC,WAAW,EAAE,MAAM,CAAA;CAAE,GAAG,IAAI,CAShG;AAED,wBAAgB,YAAY,CAAC,OAAO,EAAE,OAAO,EAAE,GAAG,CAAC,EAAE,MAAM,GAAG,IAAI,CAGjE"}
|
package/dist/cdm-json.js
CHANGED
|
@@ -1,8 +1,8 @@
|
|
|
1
1
|
import { blake2b } from "@noble/hashes/blake2.js";
|
|
2
2
|
import { readFileSync, writeFileSync, existsSync } from "fs";
|
|
3
3
|
import { resolve } from "path";
|
|
4
|
-
export function computeTargetHash(assethubUrl, ipfsGatewayUrl
|
|
5
|
-
const input = `${assethubUrl}\n${ipfsGatewayUrl}
|
|
4
|
+
export function computeTargetHash(assethubUrl, ipfsGatewayUrl) {
|
|
5
|
+
const input = `${assethubUrl}\n${ipfsGatewayUrl}`;
|
|
6
6
|
const hash = blake2b(new TextEncoder().encode(input), { dkLen: 32 });
|
|
7
7
|
return Buffer.from(hash.slice(0, 8)).toString("hex");
|
|
8
8
|
}
|
package/dist/cdm-json.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"cdm-json.js","sourceRoot":"","sources":["../src/cdm-json.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,OAAO,EAAE,MAAM,yBAAyB,CAAC;AAClD,OAAO,EAAE,YAAY,EAAE,aAAa,EAAE,UAAU,EAAE,MAAM,IAAI,CAAC;AAC7D,OAAO,EAAE,OAAO,EAAW,MAAM,MAAM,CAAC;
|
|
1
|
+
{"version":3,"file":"cdm-json.js","sourceRoot":"","sources":["../src/cdm-json.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,OAAO,EAAE,MAAM,yBAAyB,CAAC;AAClD,OAAO,EAAE,YAAY,EAAE,aAAa,EAAE,UAAU,EAAE,MAAM,IAAI,CAAC;AAC7D,OAAO,EAAE,OAAO,EAAW,MAAM,MAAM,CAAC;AAoBxC,MAAM,UAAU,iBAAiB,CAAC,WAAmB,EAAE,cAAsB;IACzE,MAAM,KAAK,GAAG,GAAG,WAAW,KAAK,cAAc,EAAE,CAAC;IAClD,MAAM,IAAI,GAAG,OAAO,CAAC,IAAI,WAAW,EAAE,CAAC,MAAM,CAAC,KAAK,CAAC,EAAE,EAAE,KAAK,EAAE,EAAE,EAAE,CAAC,CAAC;IACrE,OAAO,MAAM,CAAC,IAAI,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,CAAC,QAAQ,CAAC,KAAK,CAAC,CAAC;AACzD,CAAC;AAED,MAAM,UAAU,WAAW,CAAC,SAAkB;IAC1C,MAAM,KAAK,GAAG,SAAS,IAAI,OAAO,CAAC,GAAG,EAAE,CAAC;IACzC,uFAAuF;IACvF,MAAM,SAAS,GAAG,KAAK,CAAC,QAAQ,CAAC,OAAO,CAAC,CAAC,CAAC,CAAC,OAAO,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,OAAO,CAAC,KAAK,EAAE,UAAU,CAAC,CAAC;IACxF,IAAI,UAAU,CAAC,SAAS,CAAC,EAAE,CAAC;QACxB,MAAM,OAAO,GAAG,YAAY,CAAC,SAAS,EAAE,OAAO,CAAC,CAAC;QACjD,OAAO,EAAE,OAAO,EAAE,IAAI,CAAC,KAAK,CAAC,OAAO,CAAY,EAAE,WAAW,EAAE,SAAS,EAAE,CAAC;IAC/E,CAAC;IACD,OAAO,IAAI,CAAC;AAChB,CAAC;AAED,MAAM,UAAU,YAAY,CAAC,OAAgB,EAAE,GAAY;IACvD,MAAM,MAAM,GAAG,OAAO,CAAC,GAAG,IAAI,OAAO,CAAC,GAAG,EAAE,EAAE,UAAU,CAAC,CAAC;IACzD,aAAa,CAAC,MAAM,EAAE,IAAI,CAAC,SAAS,CAAC,OAAO,EAAE,IAAI,EAAE,CAAC,CAAC,GAAG,IAAI,CAAC,CAAC;AACnE,CAAC"}
|
package/dist/deployer.d.ts
CHANGED
|
@@ -1,6 +1,12 @@
|
|
|
1
|
-
import { PolkadotClient, TypedApi, Binary } from "polkadot-api";
|
|
1
|
+
import { PolkadotClient, TypedApi, Binary, FixedSizeBinary } from "polkadot-api";
|
|
2
2
|
import { AssetHub } from "@dotdm/descriptors";
|
|
3
3
|
import { prepareSigner } from "@dotdm/env";
|
|
4
|
+
/**
|
|
5
|
+
* Compute a deterministic 32-byte CREATE2 salt from a CDM package name.
|
|
6
|
+
* Using CREATE2 ensures the same contract gets the same address on every chain
|
|
7
|
+
* (given the same deployer, salt, and bytecode).
|
|
8
|
+
*/
|
|
9
|
+
export declare function computeDeploySalt(cdmPackage: string): FixedSizeBinary<32>;
|
|
4
10
|
export interface AbiParam {
|
|
5
11
|
name: string;
|
|
6
12
|
type: string;
|
|
@@ -32,8 +38,9 @@ export declare class ContractDeployer {
|
|
|
32
38
|
/**
|
|
33
39
|
* Deploy a PVM contract and return its address.
|
|
34
40
|
* Uses a dry-run to estimate gas, then submits with the estimated values.
|
|
41
|
+
* When cdmPackage is provided, uses CREATE2 (deterministic address via salt).
|
|
35
42
|
*/
|
|
36
|
-
deploy(pvmPath: string): Promise<{
|
|
43
|
+
deploy(pvmPath: string, cdmPackage?: string): Promise<{
|
|
37
44
|
address: string;
|
|
38
45
|
txHash: string;
|
|
39
46
|
blockHash: string;
|
|
@@ -41,8 +48,9 @@ export declare class ContractDeployer {
|
|
|
41
48
|
/**
|
|
42
49
|
* Dry-run a contract deploy to estimate gas/storage, returning the
|
|
43
50
|
* transaction descriptor (unsigned) and the bytecode for later batching.
|
|
51
|
+
* When cdmPackage is provided, uses CREATE2 (deterministic address via salt).
|
|
44
52
|
*/
|
|
45
|
-
dryRunDeploy(pvmPath: string): Promise<{
|
|
53
|
+
dryRunDeploy(pvmPath: string, cdmPackage?: string): Promise<{
|
|
46
54
|
tx: import("polkadot-api").Transaction<{
|
|
47
55
|
data: Binary;
|
|
48
56
|
code: Binary;
|
|
@@ -52,7 +60,7 @@ export declare class ContractDeployer {
|
|
|
52
60
|
proof_size: bigint;
|
|
53
61
|
};
|
|
54
62
|
storage_deposit_limit: bigint;
|
|
55
|
-
salt:
|
|
63
|
+
salt: FixedSizeBinary<32> | undefined;
|
|
56
64
|
}, "Revive", "instantiate_with_code", {
|
|
57
65
|
parents: number;
|
|
58
66
|
interior: import("@dotdm/descriptors").XcmV5Junctions;
|
|
@@ -66,8 +74,9 @@ export declare class ContractDeployer {
|
|
|
66
74
|
/**
|
|
67
75
|
* Deploy multiple contracts in a single Utility.batch_all transaction.
|
|
68
76
|
* Returns addresses in the same order as the input paths.
|
|
77
|
+
* When cdmPackages is provided, each contract uses CREATE2 with a salt derived from its package name.
|
|
69
78
|
*/
|
|
70
|
-
deployBatch(pvmPaths: string[]): Promise<{
|
|
79
|
+
deployBatch(pvmPaths: string[], cdmPackages?: (string | undefined)[]): Promise<{
|
|
71
80
|
addresses: string[];
|
|
72
81
|
txHash: string;
|
|
73
82
|
blockHash: string;
|
package/dist/deployer.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"deployer.d.ts","sourceRoot":"","sources":["../src/deployer.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,cAAc,EAAE,QAAQ,EAAE,MAAM,EAAQ,MAAM,cAAc,CAAC;
|
|
1
|
+
{"version":3,"file":"deployer.d.ts","sourceRoot":"","sources":["../src/deployer.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,cAAc,EAAE,QAAQ,EAAE,MAAM,EAAQ,eAAe,EAAE,MAAM,cAAc,CAAC;AACvF,OAAO,EAAE,QAAQ,EAAE,MAAM,oBAAoB,CAAC;AAE9C,OAAO,EAAE,aAAa,EAAE,MAAM,YAAY,CAAC;AAI3C;;;;GAIG;AACH,wBAAgB,iBAAiB,CAAC,UAAU,EAAE,MAAM,GAAG,eAAe,CAAC,EAAE,CAAC,CAGzE;AAED,MAAM,WAAW,QAAQ;IACrB,IAAI,EAAE,MAAM,CAAC;IACb,IAAI,EAAE,MAAM,CAAC;IACb,UAAU,CAAC,EAAE,QAAQ,EAAE,CAAC;CAC3B;AAED,MAAM,WAAW,QAAQ;IACrB,IAAI,EAAE,MAAM,CAAC;IACb,IAAI,CAAC,EAAE,MAAM,CAAC;IACd,MAAM,EAAE,QAAQ,EAAE,CAAC;IACnB,OAAO,CAAC,EAAE,QAAQ,EAAE,CAAC;IACrB,eAAe,CAAC,EAAE,MAAM,CAAC;IACzB,SAAS,CAAC,EAAE,OAAO,CAAC;CACvB;AAED,MAAM,WAAW,QAAQ;IACrB,aAAa,EAAE,MAAM,CAAC;IACtB,YAAY,EAAE,MAAM,CAAC;IACrB,WAAW,EAAE,MAAM,CAAC;IACpB,MAAM,EAAE,MAAM,CAAC;IACf,OAAO,EAAE,MAAM,EAAE,CAAC;IAClB,QAAQ,EAAE,MAAM,CAAC;IACjB,UAAU,EAAE,MAAM,CAAC;IACnB,GAAG,EAAE,QAAQ,EAAE,CAAC;CACnB;AAED,qBAAa,gBAAgB;IAClB,MAAM,EAAE,UAAU,CAAC,OAAO,aAAa,CAAC,CAAC;IACzC,GAAG,EAAE,QAAQ,CAAC,QAAQ,CAAC,CAAC;IACxB,MAAM,EAAE,cAAc,CAAC;gBAG1B,MAAM,EAAE,UAAU,CAAC,OAAO,aAAa,CAAC,EACxC,MAAM,EAAE,cAAc,EACtB,GAAG,EAAE,QAAQ,CAAC,QAAQ,CAAC;IAO3B;;;;OAIG;IACG,MAAM,CACR,OAAO,EAAE,MAAM,EACf,UAAU,CAAC,EAAE,MAAM,GACpB,OAAO,CAAC;QAAE,OAAO,EAAE,MAAM,CAAC;QAAC,MAAM,EAAE,MAAM,CAAC;QAAC,SAAS,EAAE,MAAM,CAAA;KAAE,CAAC;IA0DlE;;;;OAIG;IACG,YAAY,CAAC,OAAO,EAAE,MAAM,EAAE,UAAU,CAAC,EAAE,MAAM;;;;;;;;;;;;;;;;;;;;;IA4CvD;;;;OAIG;IACG,WAAW,CACb,QAAQ,EAAE,MAAM,EAAE,EAClB,WAAW,CAAC,EAAE,CAAC,MAAM,GAAG,SAAS,CAAC,EAAE,GACrC,OAAO,CAAC;QAAE,SAAS,EAAE,MAAM,EAAE,CAAC;QAAC,MAAM,EAAE,MAAM,CAAC;QAAC,SAAS,EAAE,MAAM,CAAA;KAAE,CAAC;CA6CzE"}
|
package/dist/deployer.js
CHANGED
|
@@ -1,6 +1,16 @@
|
|
|
1
|
-
import { Binary, Enum } from "polkadot-api";
|
|
1
|
+
import { Binary, Enum, FixedSizeBinary } from "polkadot-api";
|
|
2
2
|
import { readFileSync } from "fs";
|
|
3
3
|
import { stringifyBigInt, ALICE_SS58, STORAGE_DEPOSIT_LIMIT } from "@dotdm/utils";
|
|
4
|
+
import { blake2b } from "@noble/hashes/blake2.js";
|
|
5
|
+
/**
|
|
6
|
+
* Compute a deterministic 32-byte CREATE2 salt from a CDM package name.
|
|
7
|
+
* Using CREATE2 ensures the same contract gets the same address on every chain
|
|
8
|
+
* (given the same deployer, salt, and bytecode).
|
|
9
|
+
*/
|
|
10
|
+
export function computeDeploySalt(cdmPackage) {
|
|
11
|
+
const hash = blake2b(new TextEncoder().encode(cdmPackage), { dkLen: 32 });
|
|
12
|
+
return FixedSizeBinary.fromBytes(hash);
|
|
13
|
+
}
|
|
4
14
|
export class ContractDeployer {
|
|
5
15
|
signer;
|
|
6
16
|
api;
|
|
@@ -13,15 +23,17 @@ export class ContractDeployer {
|
|
|
13
23
|
/**
|
|
14
24
|
* Deploy a PVM contract and return its address.
|
|
15
25
|
* Uses a dry-run to estimate gas, then submits with the estimated values.
|
|
26
|
+
* When cdmPackage is provided, uses CREATE2 (deterministic address via salt).
|
|
16
27
|
*/
|
|
17
|
-
async deploy(pvmPath) {
|
|
28
|
+
async deploy(pvmPath, cdmPackage) {
|
|
18
29
|
const bytecode = readFileSync(pvmPath);
|
|
19
30
|
const code = Binary.fromBytes(bytecode);
|
|
20
31
|
const data = Binary.fromBytes(new Uint8Array(0));
|
|
32
|
+
const salt = cdmPackage ? computeDeploySalt(cdmPackage) : undefined;
|
|
21
33
|
// Dry-run to estimate gas requirements
|
|
22
34
|
const dryRun = await this.api.apis.ReviveApi.instantiate(ALICE_SS58, 0n, undefined, // unlimited gas for estimation
|
|
23
35
|
undefined, // unlimited storage deposit for estimation
|
|
24
|
-
Enum("Upload", code), data,
|
|
36
|
+
Enum("Upload", code), data, salt);
|
|
25
37
|
if (dryRun.result.success === false) {
|
|
26
38
|
throw new Error(`Contract instantiation dry-run failed: ${stringifyBigInt(dryRun.result)}`);
|
|
27
39
|
}
|
|
@@ -41,7 +53,7 @@ export class ContractDeployer {
|
|
|
41
53
|
storage_deposit_limit: storageDeposit,
|
|
42
54
|
code,
|
|
43
55
|
data,
|
|
44
|
-
salt
|
|
56
|
+
salt,
|
|
45
57
|
}).signAndSubmit(this.signer);
|
|
46
58
|
const failures = this.api.event.System.ExtrinsicFailed.filter(result.events);
|
|
47
59
|
if (failures.length > 0) {
|
|
@@ -57,12 +69,14 @@ export class ContractDeployer {
|
|
|
57
69
|
/**
|
|
58
70
|
* Dry-run a contract deploy to estimate gas/storage, returning the
|
|
59
71
|
* transaction descriptor (unsigned) and the bytecode for later batching.
|
|
72
|
+
* When cdmPackage is provided, uses CREATE2 (deterministic address via salt).
|
|
60
73
|
*/
|
|
61
|
-
async dryRunDeploy(pvmPath) {
|
|
74
|
+
async dryRunDeploy(pvmPath, cdmPackage) {
|
|
62
75
|
const bytecode = readFileSync(pvmPath);
|
|
63
76
|
const code = Binary.fromBytes(bytecode);
|
|
64
77
|
const data = Binary.fromBytes(new Uint8Array(0));
|
|
65
|
-
const
|
|
78
|
+
const salt = cdmPackage ? computeDeploySalt(cdmPackage) : undefined;
|
|
79
|
+
const dryRun = await this.api.apis.ReviveApi.instantiate(ALICE_SS58, 0n, undefined, undefined, Enum("Upload", code), data, salt);
|
|
66
80
|
if (dryRun.result.success === false) {
|
|
67
81
|
throw new Error(`Dry-run failed: ${stringifyBigInt(dryRun.result)}`);
|
|
68
82
|
}
|
|
@@ -81,7 +95,7 @@ export class ContractDeployer {
|
|
|
81
95
|
storage_deposit_limit: storageDeposit,
|
|
82
96
|
code,
|
|
83
97
|
data,
|
|
84
|
-
salt
|
|
98
|
+
salt,
|
|
85
99
|
}),
|
|
86
100
|
gasLimit,
|
|
87
101
|
storageDeposit,
|
|
@@ -90,19 +104,20 @@ export class ContractDeployer {
|
|
|
90
104
|
/**
|
|
91
105
|
* Deploy multiple contracts in a single Utility.batch_all transaction.
|
|
92
106
|
* Returns addresses in the same order as the input paths.
|
|
107
|
+
* When cdmPackages is provided, each contract uses CREATE2 with a salt derived from its package name.
|
|
93
108
|
*/
|
|
94
|
-
async deployBatch(pvmPaths) {
|
|
109
|
+
async deployBatch(pvmPaths, cdmPackages) {
|
|
95
110
|
if (pvmPaths.length === 0)
|
|
96
111
|
return { addresses: [], txHash: "", blockHash: "" };
|
|
97
112
|
if (pvmPaths.length === 1) {
|
|
98
|
-
const result = await this.deploy(pvmPaths[0]);
|
|
113
|
+
const result = await this.deploy(pvmPaths[0], cdmPackages?.[0]);
|
|
99
114
|
return {
|
|
100
115
|
addresses: [result.address],
|
|
101
116
|
txHash: result.txHash,
|
|
102
117
|
blockHash: result.blockHash,
|
|
103
118
|
};
|
|
104
119
|
}
|
|
105
|
-
const prepared = await Promise.all(pvmPaths.map((p) => this.dryRunDeploy(p)));
|
|
120
|
+
const prepared = await Promise.all(pvmPaths.map((p, i) => this.dryRunDeploy(p, cdmPackages?.[i])));
|
|
106
121
|
const calls = await Promise.all(prepared.map(async (p) => {
|
|
107
122
|
const call = p.tx.decodedCall;
|
|
108
123
|
return call instanceof Promise ? await call : call;
|
package/dist/deployer.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"deployer.js","sourceRoot":"","sources":["../src/deployer.ts"],"names":[],"mappings":"AAAA,OAAO,EAA4B,MAAM,EAAE,IAAI,EAAE,MAAM,cAAc,CAAC;
|
|
1
|
+
{"version":3,"file":"deployer.js","sourceRoot":"","sources":["../src/deployer.ts"],"names":[],"mappings":"AAAA,OAAO,EAA4B,MAAM,EAAE,IAAI,EAAE,eAAe,EAAE,MAAM,cAAc,CAAC;AAEvF,OAAO,EAAE,YAAY,EAAE,MAAM,IAAI,CAAC;AAElC,OAAO,EAAE,eAAe,EAAE,UAAU,EAAE,qBAAqB,EAAE,MAAM,cAAc,CAAC;AAClF,OAAO,EAAE,OAAO,EAAE,MAAM,yBAAyB,CAAC;AAElD;;;;GAIG;AACH,MAAM,UAAU,iBAAiB,CAAC,UAAkB;IAChD,MAAM,IAAI,GAAG,OAAO,CAAC,IAAI,WAAW,EAAE,CAAC,MAAM,CAAC,UAAU,CAAC,EAAE,EAAE,KAAK,EAAE,EAAE,EAAE,CAAC,CAAC;IAC1E,OAAO,eAAe,CAAC,SAAS,CAAC,IAAI,CAAwB,CAAC;AAClE,CAAC;AA4BD,MAAM,OAAO,gBAAgB;IAClB,MAAM,CAAmC;IACzC,GAAG,CAAqB;IACxB,MAAM,CAAiB;IAE9B,YACI,MAAwC,EACxC,MAAsB,EACtB,GAAuB;QAEvB,IAAI,CAAC,MAAM,GAAG,MAAM,CAAC;QACrB,IAAI,CAAC,MAAM,GAAG,MAAM,CAAC;QACrB,IAAI,CAAC,GAAG,GAAG,GAAG,CAAC;IACnB,CAAC;IAED;;;;OAIG;IACH,KAAK,CAAC,MAAM,CACR,OAAe,EACf,UAAmB;QAEnB,MAAM,QAAQ,GAAG,YAAY,CAAC,OAAO,CAAC,CAAC;QACvC,MAAM,IAAI,GAAG,MAAM,CAAC,SAAS,CAAC,QAAQ,CAAC,CAAC;QACxC,MAAM,IAAI,GAAG,MAAM,CAAC,SAAS,CAAC,IAAI,UAAU,CAAC,CAAC,CAAC,CAAC,CAAC;QACjD,MAAM,IAAI,GAAG,UAAU,CAAC,CAAC,CAAC,iBAAiB,CAAC,UAAU,CAAC,CAAC,CAAC,CAAC,SAAS,CAAC;QAEpE,uCAAuC;QACvC,MAAM,MAAM,GAAG,MAAM,IAAI,CAAC,GAAG,CAAC,IAAI,CAAC,SAAS,CAAC,WAAW,CACpD,UAAU,EACV,EAAE,EACF,SAAS,EAAE,+BAA+B;QAC1C,SAAS,EAAE,2CAA2C;QACtD,IAAI,CAAC,QAAQ,EAAE,IAAI,CAAC,EACpB,IAAI,EACJ,IAAI,CACP,CAAC;QAEF,IAAI,MAAM,CAAC,MAAM,CAAC,OAAO,KAAK,KAAK,EAAE,CAAC;YAClC,MAAM,IAAI,KAAK,CACX,0CAA0C,eAAe,CAAC,MAAM,CAAC,MAAM,CAAC,EAAE,CAC7E,CAAC;QACN,CAAC;QAED,qDAAqD;QACrD,MAAM,QAAQ,GAAG;YACb,QAAQ,EAAE,CAAC,MAAM,CAAC,eAAe,CAAC,QAAQ,GAAG,IAAI,CAAC,GAAG,IAAI;YACzD,UAAU,EAAE,CAAC,MAAM,CAAC,eAAe,CAAC,UAAU,GAAG,IAAI,CAAC,GAAG,IAAI;SAChE,CAAC;QAEF,sCAAsC;QACtC,IAAI,cAAc,GAAG,qBAAqB,CAAC;QAC3C,IAAI,MAAM,CAAC,eAAe,CAAC,IAAI,KAAK,QAAQ,EAAE,CAAC;YAC3C,cAAc,GAAG,CAAC,MAAM,CAAC,eAAe,CAAC,KAAK,GAAG,IAAI,CAAC,GAAG,IAAI,CAAC;QAClE,CAAC;QAED,MAAM,MAAM,GAAG,MAAM,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,MAAM,CAAC,qBAAqB,CAAC;YAC1D,KAAK,EAAE,EAAE;YACT,YAAY,EAAE,QAAQ;YACtB,qBAAqB,EAAE,cAAc;YACrC,IAAI;YACJ,IAAI;YACJ,IAAI;SACP,CAAC,CAAC,aAAa,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC;QAE9B,MAAM,QAAQ,GAAG,IAAI,CAAC,GAAG,CAAC,KAAK,CAAC,MAAM,CAAC,eAAe,CAAC,MAAM,CAAC,MAAM,CAAC,MAAM,CAAC,CAAC;QAC7E,IAAI,QAAQ,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;YACtB,MAAM,IAAI,KAAK,CAAC,kCAAkC,eAAe,CAAC,QAAQ,CAAC,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC;QACtF,CAAC;QAED,MAAM,YAAY,GAAG,IAAI,CAAC,GAAG,CAAC,KAAK,CAAC,MAAM,CAAC,YAAY,CAAC,MAAM,CAAC,MAAM,CAAC,MAAM,CAAC,CAAC;QAC9E,IAAI,YAAY,CAAC,MAAM,KAAK,CAAC,EAAE,CAAC;YAC5B,MAAM,IAAI,KAAK,CAAC,uDAAuD,CAAC,CAAC;QAC7E,CAAC;QAED,MAAM,OAAO,GAAG,YAAY,CAAC,CAAC,CAAC,CAAC,QAAQ,CAAC,KAAK,EAAE,CAAC;QACjD,OAAO,EAAE,OAAO,EAAE,MAAM,EAAE,MAAM,CAAC,MAAM,EAAE,SAAS,EAAE,MAAM,CAAC,KAAK,CAAC,IAAI,EAAE,CAAC;IAC5E,CAAC;IAED;;;;OAIG;IACH,KAAK,CAAC,YAAY,CAAC,OAAe,EAAE,UAAmB;QACnD,MAAM,QAAQ,GAAG,YAAY,CAAC,OAAO,CAAC,CAAC;QACvC,MAAM,IAAI,GAAG,MAAM,CAAC,SAAS,CAAC,QAAQ,CAAC,CAAC;QACxC,MAAM,IAAI,GAAG,MAAM,CAAC,SAAS,CAAC,IAAI,UAAU,CAAC,CAAC,CAAC,CAAC,CAAC;QACjD,MAAM,IAAI,GAAG,UAAU,CAAC,CAAC,CAAC,iBAAiB,CAAC,UAAU,CAAC,CAAC,CAAC,CAAC,SAAS,CAAC;QAEpE,MAAM,MAAM,GAAG,MAAM,IAAI,CAAC,GAAG,CAAC,IAAI,CAAC,SAAS,CAAC,WAAW,CACpD,UAAU,EACV,EAAE,EACF,SAAS,EACT,SAAS,EACT,IAAI,CAAC,QAAQ,EAAE,IAAI,CAAC,EACpB,IAAI,EACJ,IAAI,CACP,CAAC;QAEF,IAAI,MAAM,CAAC,MAAM,CAAC,OAAO,KAAK,KAAK,EAAE,CAAC;YAClC,MAAM,IAAI,KAAK,CAAC,mBAAmB,eAAe,CAAC,MAAM,CAAC,MAAM,CAAC,EAAE,CAAC,CAAC;QACzE,CAAC;QAED,MAAM,QAAQ,GAAG;YACb,QAAQ,EAAE,CAAC,MAAM,CAAC,eAAe,CAAC,QAAQ,GAAG,IAAI,CAAC,GAAG,IAAI;YACzD,UAAU,EAAE,CAAC,MAAM,CAAC,eAAe,CAAC,UAAU,GAAG,IAAI,CAAC,GAAG,IAAI;SAChE,CAAC;QAEF,IAAI,cAAc,GAAG,qBAAqB,CAAC;QAC3C,IAAI,MAAM,CAAC,eAAe,CAAC,IAAI,KAAK,QAAQ,EAAE,CAAC;YAC3C,cAAc,GAAG,CAAC,MAAM,CAAC,eAAe,CAAC,KAAK,GAAG,IAAI,CAAC,GAAG,IAAI,CAAC;QAClE,CAAC;QAED,OAAO;YACH,EAAE,EAAE,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,MAAM,CAAC,qBAAqB,CAAC;gBACzC,KAAK,EAAE,EAAE;gBACT,YAAY,EAAE,QAAQ;gBACtB,qBAAqB,EAAE,cAAc;gBACrC,IAAI;gBACJ,IAAI;gBACJ,IAAI;aACP,CAAC;YACF,QAAQ;YACR,cAAc;SACjB,CAAC;IACN,CAAC;IAED;;;;OAIG;IACH,KAAK,CAAC,WAAW,CACb,QAAkB,EAClB,WAAoC;QAEpC,IAAI,QAAQ,CAAC,MAAM,KAAK,CAAC;YAAE,OAAO,EAAE,SAAS,EAAE,EAAE,EAAE,MAAM,EAAE,EAAE,EAAE,SAAS,EAAE,EAAE,EAAE,CAAC;QAC/E,IAAI,QAAQ,CAAC,MAAM,KAAK,CAAC,EAAE,CAAC;YACxB,MAAM,MAAM,GAAG,MAAM,IAAI,CAAC,MAAM,CAAC,QAAQ,CAAC,CAAC,CAAC,EAAE,WAAW,EAAE,CAAC,CAAC,CAAC,CAAC,CAAC;YAChE,OAAO;gBACH,SAAS,EAAE,CAAC,MAAM,CAAC,OAAO,CAAC;gBAC3B,MAAM,EAAE,MAAM,CAAC,MAAM;gBACrB,SAAS,EAAE,MAAM,CAAC,SAAS;aAC9B,CAAC;QACN,CAAC;QAED,MAAM,QAAQ,GAAG,MAAM,OAAO,CAAC,GAAG,CAC9B,QAAQ,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,CAAC,EAAE,EAAE,CAAC,IAAI,CAAC,YAAY,CAAC,CAAC,EAAE,WAAW,EAAE,CAAC,CAAC,CAAC,CAAC,CAAC,CACjE,CAAC;QAEF,MAAM,KAAK,GAAG,MAAM,OAAO,CAAC,GAAG,CAC3B,QAAQ,CAAC,GAAG,CAAC,KAAK,EAAE,CAAC,EAAE,EAAE;YACrB,MAAM,IAAI,GAAG,CAAC,CAAC,EAAE,CAAC,WAAW,CAAC;YAC9B,OAAO,IAAI,YAAY,OAAO,CAAC,CAAC,CAAC,MAAM,IAAI,CAAC,CAAC,CAAC,IAAI,CAAC;QACvD,CAAC,CAAC,CACL,CAAC;QAEF,MAAM,MAAM,GAAG,MAAM,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,OAAO,CAAC,SAAS,CAAC;YAC/C,KAAK;SACR,CAAC,CAAC,aAAa,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC;QAE9B,MAAM,QAAQ,GAAG,IAAI,CAAC,GAAG,CAAC,KAAK,CAAC,MAAM,CAAC,eAAe,CAAC,MAAM,CAAC,MAAM,CAAC,MAAM,CAAC,CAAC;QAC7E,IAAI,QAAQ,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;YACtB,MAAM,IAAI,KAAK,CAAC,wBAAwB,eAAe,CAAC,QAAQ,CAAC,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC;QAC5E,CAAC;QAED,MAAM,YAAY,GAAG,IAAI,CAAC,GAAG,CAAC,KAAK,CAAC,MAAM,CAAC,YAAY,CAAC,MAAM,CAAC,MAAM,CAAC,MAAM,CAAC,CAAC;QAC9E,IAAI,YAAY,CAAC,MAAM,KAAK,QAAQ,CAAC,MAAM,EAAE,CAAC;YAC1C,MAAM,IAAI,KAAK,CACX,YAAY,QAAQ,CAAC,MAAM,6BAA6B,YAAY,CAAC,MAAM,EAAE,CAChF,CAAC;QACN,CAAC;QAED,MAAM,SAAS,GAAG,YAAY,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,QAAQ,CAAC,KAAK,EAAE,CAAC,CAAC;QAC9D,OAAO;YACH,SAAS;YACT,MAAM,EAAE,MAAM,CAAC,MAAM;YACrB,SAAS,EAAE,MAAM,CAAC,KAAK,CAAC,IAAI;SAC/B,CAAC;IACN,CAAC;CACJ"}
|
package/dist/index.d.ts
CHANGED
|
@@ -1,10 +1,10 @@
|
|
|
1
1
|
export { type ContractInfo, type DeploymentOrder, type DeploymentOrderLayered, detectContracts, buildDependencyGraph, toposort, toposortLayers, createCrateToPackageMap, detectDeploymentOrder, detectDeploymentOrderLayered, readCdmPackage, getGitRemoteUrl, readReadmeContent, } from "./detection";
|
|
2
2
|
export { type BuildResult, type BuildProgressCallback, pvmContractBuild, pvmContractBuildAsync, } from "./builder";
|
|
3
|
-
export { type AbiParam, type AbiEntry, type Metadata, ContractDeployer, } from "./deployer";
|
|
3
|
+
export { type AbiParam, type AbiEntry, type Metadata, ContractDeployer, computeDeploySalt, } from "./deployer";
|
|
4
4
|
export { MetadataPublisher } from "./publisher";
|
|
5
5
|
export { getRegistryContract, type RegistryContract, RegistryManager, } from "./registry";
|
|
6
6
|
export { computeCid } from "./cid";
|
|
7
|
-
export { GAS_LIMIT, STORAGE_DEPOSIT_LIMIT, CONTRACTS_REGISTRY_CRATE } from "@dotdm/utils";
|
|
7
|
+
export { GAS_LIMIT, STORAGE_DEPOSIT_LIMIT, CONTRACTS_REGISTRY_CRATE, REGISTRY_ADDRESS, } from "@dotdm/utils";
|
|
8
8
|
export { getCdmRoot, getContractDir, type SaveContractOptions, saveContract, resolveContractAbiPath, } from "./store";
|
|
9
9
|
export { type CdmJsonContract, type CdmJsonTarget, type CdmJson, computeTargetHash, readCdmJson, writeCdmJson, } from "./cdm-json";
|
|
10
10
|
//# sourceMappingURL=index.d.ts.map
|
package/dist/index.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAAA,OAAO,EACH,KAAK,YAAY,EACjB,KAAK,eAAe,EACpB,KAAK,sBAAsB,EAC3B,eAAe,EACf,oBAAoB,EACpB,QAAQ,EACR,cAAc,EACd,uBAAuB,EACvB,qBAAqB,EACrB,4BAA4B,EAC5B,cAAc,EACd,eAAe,EACf,iBAAiB,GACpB,MAAM,aAAa,CAAC;AAErB,OAAO,EACH,KAAK,WAAW,EAChB,KAAK,qBAAqB,EAC1B,gBAAgB,EAChB,qBAAqB,GACxB,MAAM,WAAW,CAAC;AAEnB,OAAO,EACH,KAAK,QAAQ,EACb,KAAK,QAAQ,EACb,KAAK,QAAQ,EACb,gBAAgB,
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAAA,OAAO,EACH,KAAK,YAAY,EACjB,KAAK,eAAe,EACpB,KAAK,sBAAsB,EAC3B,eAAe,EACf,oBAAoB,EACpB,QAAQ,EACR,cAAc,EACd,uBAAuB,EACvB,qBAAqB,EACrB,4BAA4B,EAC5B,cAAc,EACd,eAAe,EACf,iBAAiB,GACpB,MAAM,aAAa,CAAC;AAErB,OAAO,EACH,KAAK,WAAW,EAChB,KAAK,qBAAqB,EAC1B,gBAAgB,EAChB,qBAAqB,GACxB,MAAM,WAAW,CAAC;AAEnB,OAAO,EACH,KAAK,QAAQ,EACb,KAAK,QAAQ,EACb,KAAK,QAAQ,EACb,gBAAgB,EAChB,iBAAiB,GACpB,MAAM,YAAY,CAAC;AAEpB,OAAO,EAAE,iBAAiB,EAAE,MAAM,aAAa,CAAC;AAEhD,OAAO,EACH,mBAAmB,EACnB,KAAK,gBAAgB,EACrB,eAAe,GAClB,MAAM,YAAY,CAAC;AAEpB,OAAO,EAAE,UAAU,EAAE,MAAM,OAAO,CAAC;AAEnC,OAAO,EACH,SAAS,EACT,qBAAqB,EACrB,wBAAwB,EACxB,gBAAgB,GACnB,MAAM,cAAc,CAAC;AAEtB,OAAO,EACH,UAAU,EACV,cAAc,EACd,KAAK,mBAAmB,EACxB,YAAY,EACZ,sBAAsB,GACzB,MAAM,SAAS,CAAC;AAEjB,OAAO,EACH,KAAK,eAAe,EACpB,KAAK,aAAa,EAClB,KAAK,OAAO,EACZ,iBAAiB,EACjB,WAAW,EACX,YAAY,GACf,MAAM,YAAY,CAAC"}
|
package/dist/index.js
CHANGED
|
@@ -1,10 +1,10 @@
|
|
|
1
1
|
export { detectContracts, buildDependencyGraph, toposort, toposortLayers, createCrateToPackageMap, detectDeploymentOrder, detectDeploymentOrderLayered, readCdmPackage, getGitRemoteUrl, readReadmeContent, } from "./detection";
|
|
2
2
|
export { pvmContractBuild, pvmContractBuildAsync, } from "./builder";
|
|
3
|
-
export { ContractDeployer, } from "./deployer";
|
|
3
|
+
export { ContractDeployer, computeDeploySalt, } from "./deployer";
|
|
4
4
|
export { MetadataPublisher } from "./publisher";
|
|
5
5
|
export { getRegistryContract, RegistryManager, } from "./registry";
|
|
6
6
|
export { computeCid } from "./cid";
|
|
7
|
-
export { GAS_LIMIT, STORAGE_DEPOSIT_LIMIT, CONTRACTS_REGISTRY_CRATE } from "@dotdm/utils";
|
|
7
|
+
export { GAS_LIMIT, STORAGE_DEPOSIT_LIMIT, CONTRACTS_REGISTRY_CRATE, REGISTRY_ADDRESS, } from "@dotdm/utils";
|
|
8
8
|
export { getCdmRoot, getContractDir, saveContract, resolveContractAbiPath, } from "./store";
|
|
9
9
|
export { computeTargetHash, readCdmJson, writeCdmJson, } from "./cdm-json";
|
|
10
10
|
//# sourceMappingURL=index.js.map
|
package/dist/index.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAIH,eAAe,EACf,oBAAoB,EACpB,QAAQ,EACR,cAAc,EACd,uBAAuB,EACvB,qBAAqB,EACrB,4BAA4B,EAC5B,cAAc,EACd,eAAe,EACf,iBAAiB,GACpB,MAAM,aAAa,CAAC;AAErB,OAAO,EAGH,gBAAgB,EAChB,qBAAqB,GACxB,MAAM,WAAW,CAAC;AAEnB,OAAO,EAIH,gBAAgB,
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAIH,eAAe,EACf,oBAAoB,EACpB,QAAQ,EACR,cAAc,EACd,uBAAuB,EACvB,qBAAqB,EACrB,4BAA4B,EAC5B,cAAc,EACd,eAAe,EACf,iBAAiB,GACpB,MAAM,aAAa,CAAC;AAErB,OAAO,EAGH,gBAAgB,EAChB,qBAAqB,GACxB,MAAM,WAAW,CAAC;AAEnB,OAAO,EAIH,gBAAgB,EAChB,iBAAiB,GACpB,MAAM,YAAY,CAAC;AAEpB,OAAO,EAAE,iBAAiB,EAAE,MAAM,aAAa,CAAC;AAEhD,OAAO,EACH,mBAAmB,EAEnB,eAAe,GAClB,MAAM,YAAY,CAAC;AAEpB,OAAO,EAAE,UAAU,EAAE,MAAM,OAAO,CAAC;AAEnC,OAAO,EACH,SAAS,EACT,qBAAqB,EACrB,wBAAwB,EACxB,gBAAgB,GACnB,MAAM,cAAc,CAAC;AAEtB,OAAO,EACH,UAAU,EACV,cAAc,EAEd,YAAY,EACZ,sBAAsB,GACzB,MAAM,SAAS,CAAC;AAEjB,OAAO,EAIH,iBAAiB,EACjB,WAAW,EACX,YAAY,GACf,MAAM,YAAY,CAAC"}
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@dotdm/contracts",
|
|
3
|
-
"version": "0.2.
|
|
3
|
+
"version": "0.2.10-dev.1773365827",
|
|
4
4
|
"type": "module",
|
|
5
5
|
"main": "./dist/index.js",
|
|
6
6
|
"types": "./dist/index.d.ts",
|
|
@@ -21,9 +21,9 @@
|
|
|
21
21
|
"@polkadot-api/sdk-ink": "^0.6.2",
|
|
22
22
|
"multiformats": "^13.4.2",
|
|
23
23
|
"polkadot-api": "^1.23.3",
|
|
24
|
-
"@dotdm/
|
|
25
|
-
"@dotdm/
|
|
26
|
-
"@dotdm/
|
|
24
|
+
"@dotdm/env": "0.2.8-dev.1773365827",
|
|
25
|
+
"@dotdm/utils": "0.2.7-dev.1773365827",
|
|
26
|
+
"@dotdm/descriptors": "0.1.7"
|
|
27
27
|
},
|
|
28
28
|
"devDependencies": {
|
|
29
29
|
"@types/node": "^24.10.1",
|