@mainsail/crypto-commit 0.0.1-rc.6 → 0.0.1-rc.7
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/distribution/factory.d.ts +2 -0
- package/distribution/factory.d.ts.map +1 -1
- package/distribution/factory.js +19 -1
- package/distribution/factory.js.map +1 -1
- package/distribution/serializer.d.ts +1 -0
- package/distribution/serializer.d.ts.map +1 -1
- package/distribution/serializer.js +9 -1
- package/distribution/serializer.js.map +1 -1
- package/package.json +19 -20
|
@@ -2,8 +2,10 @@ import { Contracts } from "@mainsail/contracts";
|
|
|
2
2
|
export declare class CommitFactory implements Contracts.Crypto.CommitFactory {
|
|
3
3
|
private readonly blockFactory;
|
|
4
4
|
private readonly commitDeserializer;
|
|
5
|
+
private readonly configuration;
|
|
5
6
|
private readonly proofSize;
|
|
6
7
|
fromBytes(buff: Buffer): Promise<Contracts.Crypto.Commit>;
|
|
8
|
+
fromStorage(data: Contracts.Evm.CommitStorageData): Promise<Contracts.Crypto.Commit>;
|
|
7
9
|
fromJson(json: Contracts.Crypto.CommitJson): Promise<Contracts.Crypto.Commit>;
|
|
8
10
|
}
|
|
9
11
|
//# sourceMappingURL=factory.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"factory.d.ts","sourceRoot":"","sources":["../source/factory.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,SAAS,EAAe,MAAM,qBAAqB,CAAC;AAG7D,qBACa,aAAc,YAAW,SAAS,CAAC,MAAM,CAAC,aAAa;IAEnE,OAAO,CAAC,QAAQ,CAAC,YAAY,CAAiC;IAG9D,OAAO,CAAC,QAAQ,CAAC,kBAAkB,CAAuC;IAG1E,OAAO,CAAC,QAAQ,CAAC,SAAS,CAAgB;IAE7B,SAAS,CAAC,IAAI,EAAE,MAAM,GAAG,OAAO,CAAC,SAAS,CAAC,MAAM,CAAC,MAAM,CAAC;IAezD,QAAQ,CAAC,IAAI,EAAE,SAAS,CAAC,MAAM,CAAC,UAAU,GAAG,OAAO,CAAC,SAAS,CAAC,MAAM,CAAC,MAAM,CAAC;CAQ1F"}
|
|
1
|
+
{"version":3,"file":"factory.d.ts","sourceRoot":"","sources":["../source/factory.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,SAAS,EAAe,MAAM,qBAAqB,CAAC;AAG7D,qBACa,aAAc,YAAW,SAAS,CAAC,MAAM,CAAC,aAAa;IAEnE,OAAO,CAAC,QAAQ,CAAC,YAAY,CAAiC;IAG9D,OAAO,CAAC,QAAQ,CAAC,kBAAkB,CAAuC;IAG1E,OAAO,CAAC,QAAQ,CAAC,aAAa,CAAkC;IAGhE,OAAO,CAAC,QAAQ,CAAC,SAAS,CAAgB;IAE7B,SAAS,CAAC,IAAI,EAAE,MAAM,GAAG,OAAO,CAAC,SAAS,CAAC,MAAM,CAAC,MAAM,CAAC;IAezD,WAAW,CAAC,IAAI,EAAE,SAAS,CAAC,GAAG,CAAC,iBAAiB,GAAG,OAAO,CAAC,SAAS,CAAC,MAAM,CAAC,MAAM,CAAC;IAgBpF,QAAQ,CAAC,IAAI,EAAE,SAAS,CAAC,MAAM,CAAC,UAAU,GAAG,OAAO,CAAC,SAAS,CAAC,MAAM,CAAC,MAAM,CAAC;CAQ1F"}
|
package/distribution/factory.js
CHANGED
|
@@ -9,10 +9,11 @@ var __metadata = (this && this.__metadata) || function (k, v) {
|
|
|
9
9
|
};
|
|
10
10
|
import { inject, injectable } from "@mainsail/container";
|
|
11
11
|
import { Contracts, Identifiers } from "@mainsail/contracts";
|
|
12
|
-
import { ByteBuffer } from "@mainsail/utils";
|
|
12
|
+
import { ByteBuffer, validatorSetUnpack } from "@mainsail/utils";
|
|
13
13
|
let CommitFactory = class CommitFactory {
|
|
14
14
|
blockFactory;
|
|
15
15
|
commitDeserializer;
|
|
16
|
+
configuration;
|
|
16
17
|
proofSize;
|
|
17
18
|
async fromBytes(buff) {
|
|
18
19
|
const buffer = ByteBuffer.fromBuffer(buff);
|
|
@@ -25,6 +26,19 @@ let CommitFactory = class CommitFactory {
|
|
|
25
26
|
serialized: buff.toString("hex"),
|
|
26
27
|
};
|
|
27
28
|
}
|
|
29
|
+
async fromStorage(data) {
|
|
30
|
+
const block = await this.blockFactory.fromStorage(data.header, data.transactions);
|
|
31
|
+
const { roundValidators } = this.configuration.getMilestone(block.header.number);
|
|
32
|
+
return {
|
|
33
|
+
block,
|
|
34
|
+
proof: {
|
|
35
|
+
round: data.proof.round,
|
|
36
|
+
signature: data.proof.signature,
|
|
37
|
+
validators: validatorSetUnpack(data.proof.validatorSet, roundValidators),
|
|
38
|
+
},
|
|
39
|
+
serialized: "",
|
|
40
|
+
};
|
|
41
|
+
}
|
|
28
42
|
async fromJson(json) {
|
|
29
43
|
const block = await this.blockFactory.fromJson(json.block);
|
|
30
44
|
return {
|
|
@@ -42,6 +56,10 @@ __decorate([
|
|
|
42
56
|
inject(Identifiers.Cryptography.Commit.Deserializer),
|
|
43
57
|
__metadata("design:type", Object)
|
|
44
58
|
], CommitFactory.prototype, "commitDeserializer", void 0);
|
|
59
|
+
__decorate([
|
|
60
|
+
inject(Identifiers.Cryptography.Configuration),
|
|
61
|
+
__metadata("design:type", Object)
|
|
62
|
+
], CommitFactory.prototype, "configuration", void 0);
|
|
45
63
|
__decorate([
|
|
46
64
|
inject(Identifiers.Cryptography.Commit.ProofSize),
|
|
47
65
|
__metadata("design:type", Function)
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"factory.js","sourceRoot":"","sources":["../source/factory.ts"],"names":[],"mappings":";;;;;;;;;AAAA,OAAO,EAAE,MAAM,EAAE,UAAU,EAAE,MAAM,qBAAqB,CAAC;AACzD,OAAO,EAAE,SAAS,EAAE,WAAW,EAAE,MAAM,qBAAqB,CAAC;AAC7D,OAAO,EAAE,UAAU,EAAE,MAAM,iBAAiB,CAAC;
|
|
1
|
+
{"version":3,"file":"factory.js","sourceRoot":"","sources":["../source/factory.ts"],"names":[],"mappings":";;;;;;;;;AAAA,OAAO,EAAE,MAAM,EAAE,UAAU,EAAE,MAAM,qBAAqB,CAAC;AACzD,OAAO,EAAE,SAAS,EAAE,WAAW,EAAE,MAAM,qBAAqB,CAAC;AAC7D,OAAO,EAAE,UAAU,EAAE,kBAAkB,EAAE,MAAM,iBAAiB,CAAC;AAG1D,IAAM,aAAa,GAAnB,MAAM,aAAa;IAER,YAAY,CAAiC;IAG7C,kBAAkB,CAAuC;IAGzD,aAAa,CAAkC;IAG/C,SAAS,CAAgB;IAEnC,KAAK,CAAC,SAAS,CAAC,IAAY;QAClC,MAAM,MAAM,GAAG,UAAU,CAAC,UAAU,CAAC,IAAI,CAAC,CAAC;QAE3C,MAAM,WAAW,GAAG,MAAM,CAAC,SAAS,CAAC,IAAI,CAAC,SAAS,EAAE,CAAC,CAAC;QACvD,MAAM,KAAK,GAAG,MAAM,IAAI,CAAC,kBAAkB,CAAC,sBAAsB,CAAC,WAAW,CAAC,CAAC;QAEhF,MAAM,KAAK,GAAG,MAAM,IAAI,CAAC,YAAY,CAAC,SAAS,CAAC,MAAM,CAAC,YAAY,EAAE,CAAC,CAAC;QAEvE,OAAO;YACN,KAAK;YACL,KAAK;YACL,UAAU,EAAE,IAAI,CAAC,QAAQ,CAAC,KAAK,CAAC;SAChC,CAAC;IACH,CAAC;IAEM,KAAK,CAAC,WAAW,CAAC,IAAqC;QAC7D,MAAM,KAAK,GAAG,MAAM,IAAI,CAAC,YAAY,CAAC,WAAW,CAAC,IAAI,CAAC,MAAM,EAAE,IAAI,CAAC,YAAY,CAAC,CAAC;QAElF,MAAM,EAAE,eAAe,EAAE,GAAG,IAAI,CAAC,aAAa,CAAC,YAAY,CAAC,KAAK,CAAC,MAAM,CAAC,MAAM,CAAC,CAAC;QAEjF,OAAO;YACN,KAAK;YACL,KAAK,EAAE;gBACN,KAAK,EAAE,IAAI,CAAC,KAAK,CAAC,KAAK;gBACvB,SAAS,EAAE,IAAI,CAAC,KAAK,CAAC,SAAS;gBAC/B,UAAU,EAAE,kBAAkB,CAAC,IAAI,CAAC,KAAK,CAAC,YAAY,EAAE,eAAe,CAAC;aACxE;YACD,UAAU,EAAE,EAAE;SACd,CAAC;IACH,CAAC;IAEM,KAAK,CAAC,QAAQ,CAAC,IAAiC;QACtD,MAAM,KAAK,GAAG,MAAM,IAAI,CAAC,YAAY,CAAC,QAAQ,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC;QAC3D,OAAO;YACN,KAAK;YACL,KAAK,EAAE,IAAI,CAAC,KAAK;YACjB,UAAU,EAAE,IAAI,CAAC,UAAU;SAC3B,CAAC;IACH,CAAC;CACD,CAAA;AAlDiB;IADhB,MAAM,CAAC,WAAW,CAAC,YAAY,CAAC,KAAK,CAAC,OAAO,CAAC;;mDACe;AAG7C;IADhB,MAAM,CAAC,WAAW,CAAC,YAAY,CAAC,MAAM,CAAC,YAAY,CAAC;;yDACqB;AAGzD;IADhB,MAAM,CAAC,WAAW,CAAC,YAAY,CAAC,aAAa,CAAC;;oDACiB;AAG/C;IADhB,MAAM,CAAC,WAAW,CAAC,YAAY,CAAC,MAAM,CAAC,SAAS,CAAC;;gDACR;AAX9B,aAAa;IADzB,UAAU,EAAE;GACA,aAAa,CAoDzB"}
|
|
@@ -1,6 +1,7 @@
|
|
|
1
1
|
import { Contracts } from "@mainsail/contracts";
|
|
2
2
|
export declare class Serializer implements Contracts.Crypto.CommitSerializer {
|
|
3
3
|
private readonly serializer;
|
|
4
|
+
private readonly blockSerializer;
|
|
4
5
|
private readonly proofSize;
|
|
5
6
|
serializeCommitProof(commit: Contracts.Crypto.CommitProof): Promise<Buffer>;
|
|
6
7
|
serializeCommit(commit: Contracts.Crypto.CommitSerializable): Promise<Buffer>;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"serializer.d.ts","sourceRoot":"","sources":["../source/serializer.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,SAAS,EAAe,MAAM,qBAAqB,CAAC;AAE7D,qBACa,UAAW,YAAW,SAAS,CAAC,MAAM,CAAC,gBAAgB;IAEnE,OAAO,CAAC,QAAQ,CAAC,UAAU,CAAmC;IAG9D,OAAO,CAAC,QAAQ,CAAC,SAAS,CAAgB;IAE7B,oBAAoB,CAAC,MAAM,EAAE,SAAS,CAAC,MAAM,CAAC,WAAW,GAAG,OAAO,CAAC,MAAM,CAAC;IAkB3E,eAAe,CAAC,MAAM,EAAE,SAAS,CAAC,MAAM,CAAC,kBAAkB,GAAG,OAAO,CAAC,MAAM,CAAC;
|
|
1
|
+
{"version":3,"file":"serializer.d.ts","sourceRoot":"","sources":["../source/serializer.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,SAAS,EAAe,MAAM,qBAAqB,CAAC;AAE7D,qBACa,UAAW,YAAW,SAAS,CAAC,MAAM,CAAC,gBAAgB;IAEnE,OAAO,CAAC,QAAQ,CAAC,UAAU,CAAmC;IAG9D,OAAO,CAAC,QAAQ,CAAC,eAAe,CAAoC;IAGpE,OAAO,CAAC,QAAQ,CAAC,SAAS,CAAgB;IAE7B,oBAAoB,CAAC,MAAM,EAAE,SAAS,CAAC,MAAM,CAAC,WAAW,GAAG,OAAO,CAAC,MAAM,CAAC;IAkB3E,eAAe,CAAC,MAAM,EAAE,SAAS,CAAC,MAAM,CAAC,kBAAkB,GAAG,OAAO,CAAC,MAAM,CAAC;CAU1F"}
|
|
@@ -11,6 +11,7 @@ import { inject, injectable } from "@mainsail/container";
|
|
|
11
11
|
import { Contracts, Identifiers } from "@mainsail/contracts";
|
|
12
12
|
let Serializer = class Serializer {
|
|
13
13
|
serializer;
|
|
14
|
+
blockSerializer;
|
|
14
15
|
proofSize;
|
|
15
16
|
async serializeCommitProof(commit) {
|
|
16
17
|
return this.serializer.serialize(commit, {
|
|
@@ -31,7 +32,10 @@ let Serializer = class Serializer {
|
|
|
31
32
|
}
|
|
32
33
|
async serializeCommit(commit) {
|
|
33
34
|
const serializedProof = await this.serializeCommitProof(commit.proof);
|
|
34
|
-
|
|
35
|
+
let serializedBlock = Buffer.from(commit.block.serialized, "hex");
|
|
36
|
+
if (serializedBlock.byteLength === 0) {
|
|
37
|
+
serializedBlock = await this.blockSerializer.serializeWithTransactions(commit.block.data);
|
|
38
|
+
}
|
|
35
39
|
return Buffer.concat([serializedProof, serializedBlock]);
|
|
36
40
|
}
|
|
37
41
|
};
|
|
@@ -39,6 +43,10 @@ __decorate([
|
|
|
39
43
|
inject(Identifiers.Cryptography.Serializer),
|
|
40
44
|
__metadata("design:type", Object)
|
|
41
45
|
], Serializer.prototype, "serializer", void 0);
|
|
46
|
+
__decorate([
|
|
47
|
+
inject(Identifiers.Cryptography.Block.Serializer),
|
|
48
|
+
__metadata("design:type", Object)
|
|
49
|
+
], Serializer.prototype, "blockSerializer", void 0);
|
|
42
50
|
__decorate([
|
|
43
51
|
inject(Identifiers.Cryptography.Commit.ProofSize),
|
|
44
52
|
__metadata("design:type", Function)
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"serializer.js","sourceRoot":"","sources":["../source/serializer.ts"],"names":[],"mappings":";;;;;;;;;AAAA,OAAO,EAAE,MAAM,EAAE,UAAU,EAAE,MAAM,qBAAqB,CAAC;AACzD,OAAO,EAAE,SAAS,EAAE,WAAW,EAAE,MAAM,qBAAqB,CAAC;AAGtD,IAAM,UAAU,GAAhB,MAAM,UAAU;IAEL,UAAU,CAAmC;IAG7C,SAAS,CAAgB;IAEnC,KAAK,CAAC,oBAAoB,CAAC,MAAoC;QACrE,OAAO,IAAI,CAAC,UAAU,CAAC,SAAS,CAA+B,MAAM,EAAE;YACtE,MAAM,EAAE,IAAI,CAAC,SAAS,EAAE;YACxB,MAAM,EAAE;gBACP,KAAK,EAAE;oBACN,IAAI,EAAE,QAAQ;iBACd;gBACD,SAAS,EAAE;oBACV,IAAI,EAAE,oBAAoB;iBAC1B;gBACD,UAAU,EAAE;oBACX,IAAI,EAAE,cAAc;iBACpB;aACD;YACD,IAAI,EAAE,CAAC;SACP,CAAC,CAAC;IACJ,CAAC;IAEM,KAAK,CAAC,eAAe,CAAC,MAA2C;QACvE,MAAM,eAAe,GAAG,MAAM,IAAI,CAAC,oBAAoB,CAAC,MAAM,CAAC,KAAK,CAAC,CAAC;
|
|
1
|
+
{"version":3,"file":"serializer.js","sourceRoot":"","sources":["../source/serializer.ts"],"names":[],"mappings":";;;;;;;;;AAAA,OAAO,EAAE,MAAM,EAAE,UAAU,EAAE,MAAM,qBAAqB,CAAC;AACzD,OAAO,EAAE,SAAS,EAAE,WAAW,EAAE,MAAM,qBAAqB,CAAC;AAGtD,IAAM,UAAU,GAAhB,MAAM,UAAU;IAEL,UAAU,CAAmC;IAG7C,eAAe,CAAoC;IAGnD,SAAS,CAAgB;IAEnC,KAAK,CAAC,oBAAoB,CAAC,MAAoC;QACrE,OAAO,IAAI,CAAC,UAAU,CAAC,SAAS,CAA+B,MAAM,EAAE;YACtE,MAAM,EAAE,IAAI,CAAC,SAAS,EAAE;YACxB,MAAM,EAAE;gBACP,KAAK,EAAE;oBACN,IAAI,EAAE,QAAQ;iBACd;gBACD,SAAS,EAAE;oBACV,IAAI,EAAE,oBAAoB;iBAC1B;gBACD,UAAU,EAAE;oBACX,IAAI,EAAE,cAAc;iBACpB;aACD;YACD,IAAI,EAAE,CAAC;SACP,CAAC,CAAC;IACJ,CAAC;IAEM,KAAK,CAAC,eAAe,CAAC,MAA2C;QACvE,MAAM,eAAe,GAAG,MAAM,IAAI,CAAC,oBAAoB,CAAC,MAAM,CAAC,KAAK,CAAC,CAAC;QAEtE,IAAI,eAAe,GAAW,MAAM,CAAC,IAAI,CAAC,MAAM,CAAC,KAAK,CAAC,UAAU,EAAE,KAAK,CAAC,CAAC;QAC1E,IAAI,eAAe,CAAC,UAAU,KAAK,CAAC,EAAE,CAAC;YACtC,eAAe,GAAG,MAAM,IAAI,CAAC,eAAe,CAAC,yBAAyB,CAAC,MAAM,CAAC,KAAK,CAAC,IAAI,CAAC,CAAC;QAC3F,CAAC;QAED,OAAO,MAAM,CAAC,MAAM,CAAC,CAAC,eAAe,EAAE,eAAe,CAAC,CAAC,CAAC;IAC1D,CAAC;CACD,CAAA;AApCiB;IADhB,MAAM,CAAC,WAAW,CAAC,YAAY,CAAC,UAAU,CAAC;;8CACkB;AAG7C;IADhB,MAAM,CAAC,WAAW,CAAC,YAAY,CAAC,KAAK,CAAC,UAAU,CAAC;;mDACkB;AAGnD;IADhB,MAAM,CAAC,WAAW,CAAC,YAAY,CAAC,MAAM,CAAC,SAAS,CAAC;;6CACR;AAR9B,UAAU;IADtB,UAAU,EAAE;GACA,UAAU,CAsCtB"}
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@mainsail/crypto-commit",
|
|
3
|
-
"version": "0.0.1-rc.
|
|
3
|
+
"version": "0.0.1-rc.7",
|
|
4
4
|
"description": "Commit utilities for the Mainsail blockchain",
|
|
5
5
|
"license": "GPL-3.0-only",
|
|
6
6
|
"contributors": [],
|
|
@@ -11,27 +11,27 @@
|
|
|
11
11
|
"/distribution"
|
|
12
12
|
],
|
|
13
13
|
"dependencies": {
|
|
14
|
-
"@mainsail/container": "0.0.1-rc.
|
|
15
|
-
"@mainsail/contracts": "0.0.1-rc.
|
|
16
|
-
"@mainsail/kernel": "0.0.1-rc.
|
|
17
|
-
"@mainsail/utils": "0.0.1-rc.
|
|
14
|
+
"@mainsail/container": "0.0.1-rc.7",
|
|
15
|
+
"@mainsail/contracts": "0.0.1-rc.7",
|
|
16
|
+
"@mainsail/kernel": "0.0.1-rc.7",
|
|
17
|
+
"@mainsail/utils": "0.0.1-rc.7"
|
|
18
18
|
},
|
|
19
19
|
"devDependencies": {
|
|
20
20
|
"uvu": "0.5.6",
|
|
21
|
-
"@mainsail/crypto-address-base58": "0.0.1-rc.
|
|
22
|
-
"@mainsail/crypto-
|
|
23
|
-
"@mainsail/crypto-
|
|
24
|
-
"@mainsail/crypto-
|
|
25
|
-
"@mainsail/crypto-
|
|
26
|
-
"@mainsail/crypto-
|
|
27
|
-
"@mainsail/crypto-
|
|
28
|
-
"@mainsail/crypto-
|
|
29
|
-
"@mainsail/crypto-
|
|
30
|
-
"@mainsail/crypto-transaction": "0.0.1-rc.
|
|
31
|
-
"@mainsail/
|
|
32
|
-
"@mainsail/
|
|
33
|
-
"@mainsail/
|
|
34
|
-
"@mainsail/
|
|
21
|
+
"@mainsail/crypto-address-base58": "0.0.1-rc.7",
|
|
22
|
+
"@mainsail/crypto-address-keccak256": "0.0.1-rc.7",
|
|
23
|
+
"@mainsail/crypto-block": "0.0.1-rc.7",
|
|
24
|
+
"@mainsail/crypto-consensus-bls12-381": "0.0.1-rc.7",
|
|
25
|
+
"@mainsail/crypto-config": "0.0.1-rc.7",
|
|
26
|
+
"@mainsail/crypto-hash-bcrypto": "0.0.1-rc.7",
|
|
27
|
+
"@mainsail/crypto-key-pair-schnorr": "0.0.1-rc.7",
|
|
28
|
+
"@mainsail/crypto-messages": "0.0.1-rc.7",
|
|
29
|
+
"@mainsail/crypto-signature-ecdsa": "0.0.1-rc.7",
|
|
30
|
+
"@mainsail/crypto-transaction": "0.0.1-rc.7",
|
|
31
|
+
"@mainsail/validation": "0.0.1-rc.7",
|
|
32
|
+
"@mainsail/serializer": "0.0.1-rc.7",
|
|
33
|
+
"@mainsail/crypto-validation": "0.0.1-rc.7",
|
|
34
|
+
"@mainsail/crypto-wif": "0.0.1-rc.7"
|
|
35
35
|
},
|
|
36
36
|
"engines": {
|
|
37
37
|
"node": ">=20.x"
|
|
@@ -39,7 +39,6 @@
|
|
|
39
39
|
"scripts": {
|
|
40
40
|
"build": "tsc -b",
|
|
41
41
|
"build:watch": "pnpm run clean && tsc -w",
|
|
42
|
-
"clean": "del distribution && del tsconfig.tsbuildinfo",
|
|
43
42
|
"release": "pnpm publish --access public",
|
|
44
43
|
"test": "pnpm run uvu source .test.ts",
|
|
45
44
|
"test:coverage": "c8 -r=text -r=lcov --all pnpm run test",
|