@msgboard/core 0.0.30 → 0.0.32
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/utils.d.ts +26 -0
- package/dist/utils.d.ts.map +1 -1
- package/dist/utils.js +60 -0
- package/dist/utils.js.map +1 -1
- package/package.json +3 -3
package/dist/utils.d.ts
CHANGED
|
@@ -16,6 +16,32 @@ export declare function checkWork(msg: types.MessageSeed, msgDifficulty: bigint)
|
|
|
16
16
|
* @throws error if the challenge is invalid
|
|
17
17
|
*/
|
|
18
18
|
export declare function getChallenge(msg: types.MessageSeed): Uint8Array<ArrayBuffer>;
|
|
19
|
+
/**
|
|
20
|
+
* A stateful, fast proof-of-work search over consecutive nonces.
|
|
21
|
+
*
|
|
22
|
+
* {@link checkWork} recomputes `challenge = g·(nonce·digest + blockHash)` from scratch
|
|
23
|
+
* every nonce — a full elliptic-curve scalar MULTIPLICATION, which dominates the grind
|
|
24
|
+
* (~0.6 ms each in JS, capping a naive loop near ~1.5k hashes/s). But across consecutive
|
|
25
|
+
* nonces the scalar grows by a constant `digest` (nonce increments by 1), so the challenge
|
|
26
|
+
* POINT advances by a constant point `D = g·digest`. Replacing the per-nonce scalar MULTIPLY
|
|
27
|
+
* with a single point ADDITION makes the search ~20-50x faster while producing bit-identical
|
|
28
|
+
* challenges: `g·a + g·b = g·(a+b)`, and `g·x` depends only on `x mod n`, so the running point
|
|
29
|
+
* after k additions equals `g·(nonce·digest + blockHash)` exactly. The constant message bytes
|
|
30
|
+
* (32-byte category + data) are concatenated once.
|
|
31
|
+
*
|
|
32
|
+
* `next(msgDifficulty)` advances `message.nonce` by 1, steps (or rebases) the running point,
|
|
33
|
+
* and returns the work hash if `hash % msgDifficulty === 0n`, else null. It reads
|
|
34
|
+
* `message.blockHash` live every call: if it changed since the running point was based (the
|
|
35
|
+
* {@link MsgBoardClient.doPoW} block poller updates it mid-grind), the point is rebased with a
|
|
36
|
+
* single scalar multiply before continuing. {@link checkWork} remains the canonical verifier;
|
|
37
|
+
* this only accelerates finding a winning nonce, and must stay byte-for-byte equivalent to it.
|
|
38
|
+
*
|
|
39
|
+
* @param message the message to grind; its `nonce` is mutated in place as the search advances.
|
|
40
|
+
* @returns an object whose `next(msgDifficulty)` performs one nonce step.
|
|
41
|
+
*/
|
|
42
|
+
export declare function createChallengeSearch(message: types.MessageSeed): {
|
|
43
|
+
next(msgDifficulty: bigint): Hex | null;
|
|
44
|
+
};
|
|
19
45
|
/**
|
|
20
46
|
* Returns the modulus used for the PoW verification = (2^24)+(10k*dataLen).
|
|
21
47
|
* @param factors the message difficulty factors
|
package/dist/utils.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"utils.d.ts","sourceRoot":"","sources":["../src/utils.ts"],"names":[],"mappings":"AAEA,OAAO,EACL,KAAK,SAAS,EAad,KAAK,GAAG,EAET,MAAM,MAAM,CAAA;AACb,OAAO,KAAK,KAAK,MAAM,YAAY,CAAA;AACnC,OAAO,EAAE,cAAc,EAAE,MAAM,YAAY,CAAA;AAM3C;;;;;;GAMG;AACH,wBAAgB,SAAS,CAAC,GAAG,EAAE,KAAK,CAAC,WAAW,EAAE,aAAa,EAAE,MAAM,wBAWtE;AAED;;;;;GAKG;AACH,wBAAgB,YAAY,CAAC,GAAG,EAAE,KAAK,CAAC,WAAW,2BASlD;AAED;;;;;GAKG;AACH,wBAAgB,UAAU,CAAC,EAAE,cAAc,EAAE,WAAW,EAAE,EAAE,KAAK,CAAC,iBAAiB,EAAE,OAAO,EAAE,MAAM,UAGnG;AAED;;;;GAIG;AACH,wBAAgB,gBAAgB,CAAC,EAAE,cAAc,EAAE,WAAW,EAAE,EAAE,KAAK,CAAC,iBAAiB,UAIxF;AAED;;;;;;;GAOG;AACH,wBAAgB,YAAY,CAAC,QAAQ,EAAE,MAAM,GAAG,GAAG,GAAG,SAAS,GAAG,GAAG,CAIpE;AAED;;;;GAIG;AACH,wBAAgB,UAAU,CAAC,IAAI,EAAE,MAAM,GAAG,SAAS,GAAG,GAAG,iBAExD;AAED;;;;GAIG;AACH,wBAAgB,KAAK,CAAC,GAAG,EAAE,KAAK,CAAC,WAAW,iBAU3C;AAED;;;;GAIG;AACH,wBAAgB,OAAO,CAAC,GAAG,EAAE,GAAG,GAAG,KAAK,CAAC,WAAW,CAWnD;AAED;;;;GAIG;AACH,wBAAgB,cAAc,CAAC,GAAG,EAAE,KAAK,CAAC,UAAU,GAAG,KAAK,CAAC,OAAO,CASnE;AAED,wBAAgB,YAAY,CAAC,GAAG,EAAE,KAAK,CAAC,OAAO,GAAG,KAAK,CAAC,UAAU,CASjE;AAED,mEAAmE;AACnE,wBAAgB,cAAc,CAAC,QAAQ,EAAE,cAAc,GAAG,KAAK,CAAC,QAAQ,CAMvE"}
|
|
1
|
+
{"version":3,"file":"utils.d.ts","sourceRoot":"","sources":["../src/utils.ts"],"names":[],"mappings":"AAEA,OAAO,EACL,KAAK,SAAS,EAad,KAAK,GAAG,EAET,MAAM,MAAM,CAAA;AACb,OAAO,KAAK,KAAK,MAAM,YAAY,CAAA;AACnC,OAAO,EAAE,cAAc,EAAE,MAAM,YAAY,CAAA;AAM3C;;;;;;GAMG;AACH,wBAAgB,SAAS,CAAC,GAAG,EAAE,KAAK,CAAC,WAAW,EAAE,aAAa,EAAE,MAAM,wBAWtE;AAED;;;;;GAKG;AACH,wBAAgB,YAAY,CAAC,GAAG,EAAE,KAAK,CAAC,WAAW,2BASlD;AAED;;;;;;;;;;;;;;;;;;;;;;GAsBG;AACH,wBAAgB,qBAAqB,CAAC,OAAO,EAAE,KAAK,CAAC,WAAW;wBAkBxC,MAAM,GAAG,GAAG,GAAG,IAAI;EAkB1C;AAED;;;;;GAKG;AACH,wBAAgB,UAAU,CAAC,EAAE,cAAc,EAAE,WAAW,EAAE,EAAE,KAAK,CAAC,iBAAiB,EAAE,OAAO,EAAE,MAAM,UAGnG;AAED;;;;GAIG;AACH,wBAAgB,gBAAgB,CAAC,EAAE,cAAc,EAAE,WAAW,EAAE,EAAE,KAAK,CAAC,iBAAiB,UAIxF;AAED;;;;;;;GAOG;AACH,wBAAgB,YAAY,CAAC,QAAQ,EAAE,MAAM,GAAG,GAAG,GAAG,SAAS,GAAG,GAAG,CAIpE;AAED;;;;GAIG;AACH,wBAAgB,UAAU,CAAC,IAAI,EAAE,MAAM,GAAG,SAAS,GAAG,GAAG,iBAExD;AAED;;;;GAIG;AACH,wBAAgB,KAAK,CAAC,GAAG,EAAE,KAAK,CAAC,WAAW,iBAU3C;AAED;;;;GAIG;AACH,wBAAgB,OAAO,CAAC,GAAG,EAAE,GAAG,GAAG,KAAK,CAAC,WAAW,CAWnD;AAED;;;;GAIG;AACH,wBAAgB,cAAc,CAAC,GAAG,EAAE,KAAK,CAAC,UAAU,GAAG,KAAK,CAAC,OAAO,CASnE;AAED,wBAAgB,YAAY,CAAC,GAAG,EAAE,KAAK,CAAC,OAAO,GAAG,KAAK,CAAC,UAAU,CASjE;AAED,mEAAmE;AACnE,wBAAgB,cAAc,CAAC,QAAQ,EAAE,cAAc,GAAG,KAAK,CAAC,QAAQ,CAMvE"}
|
package/dist/utils.js
CHANGED
|
@@ -5,6 +5,7 @@ var __importDefault = (this && this.__importDefault) || function (mod) {
|
|
|
5
5
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
6
6
|
exports.checkWork = checkWork;
|
|
7
7
|
exports.getChallenge = getChallenge;
|
|
8
|
+
exports.createChallengeSearch = createChallengeSearch;
|
|
8
9
|
exports.difficulty = difficulty;
|
|
9
10
|
exports.difficultyDigest = difficultyDigest;
|
|
10
11
|
exports.categoryHash = categoryHash;
|
|
@@ -55,6 +56,65 @@ function getChallenge(msg) {
|
|
|
55
56
|
}
|
|
56
57
|
return Uint8Array.from(challenge.getX().toArray());
|
|
57
58
|
}
|
|
59
|
+
/**
|
|
60
|
+
* A stateful, fast proof-of-work search over consecutive nonces.
|
|
61
|
+
*
|
|
62
|
+
* {@link checkWork} recomputes `challenge = g·(nonce·digest + blockHash)` from scratch
|
|
63
|
+
* every nonce — a full elliptic-curve scalar MULTIPLICATION, which dominates the grind
|
|
64
|
+
* (~0.6 ms each in JS, capping a naive loop near ~1.5k hashes/s). But across consecutive
|
|
65
|
+
* nonces the scalar grows by a constant `digest` (nonce increments by 1), so the challenge
|
|
66
|
+
* POINT advances by a constant point `D = g·digest`. Replacing the per-nonce scalar MULTIPLY
|
|
67
|
+
* with a single point ADDITION makes the search ~20-50x faster while producing bit-identical
|
|
68
|
+
* challenges: `g·a + g·b = g·(a+b)`, and `g·x` depends only on `x mod n`, so the running point
|
|
69
|
+
* after k additions equals `g·(nonce·digest + blockHash)` exactly. The constant message bytes
|
|
70
|
+
* (32-byte category + data) are concatenated once.
|
|
71
|
+
*
|
|
72
|
+
* `next(msgDifficulty)` advances `message.nonce` by 1, steps (or rebases) the running point,
|
|
73
|
+
* and returns the work hash if `hash % msgDifficulty === 0n`, else null. It reads
|
|
74
|
+
* `message.blockHash` live every call: if it changed since the running point was based (the
|
|
75
|
+
* {@link MsgBoardClient.doPoW} block poller updates it mid-grind), the point is rebased with a
|
|
76
|
+
* single scalar multiply before continuing. {@link checkWork} remains the canonical verifier;
|
|
77
|
+
* this only accelerates finding a winning nonce, and must stay byte-for-byte equivalent to it.
|
|
78
|
+
*
|
|
79
|
+
* @param message the message to grind; its `nonce` is mutated in place as the search advances.
|
|
80
|
+
* @returns an object whose `next(msgDifficulty)` performs one nonce step.
|
|
81
|
+
*/
|
|
82
|
+
function createChallengeSearch(message) {
|
|
83
|
+
const digest = BigInt(difficultyDigest(message));
|
|
84
|
+
const stepPoint = g.mul(new bn_js_1.default(digest.toString())); // D = g·digest, constant for this grind
|
|
85
|
+
const suffix = new Uint8Array([
|
|
86
|
+
...(0, viem_1.hexToBytes)(message.category, { size: 32 }),
|
|
87
|
+
...(0, viem_1.hexToBytes)(message.data),
|
|
88
|
+
]);
|
|
89
|
+
let point;
|
|
90
|
+
let basedBlockHash;
|
|
91
|
+
// (Re)anchor the running point to the current nonce + blockHash with one scalar multiply.
|
|
92
|
+
const rebase = () => {
|
|
93
|
+
const scalar = message.nonce * digest + BigInt(message.blockHash);
|
|
94
|
+
point = g.mul(new bn_js_1.default(scalar.toString()));
|
|
95
|
+
basedBlockHash = message.blockHash;
|
|
96
|
+
};
|
|
97
|
+
return {
|
|
98
|
+
next(msgDifficulty) {
|
|
99
|
+
message.nonce += 1n;
|
|
100
|
+
if (point === undefined || message.blockHash !== basedBlockHash) {
|
|
101
|
+
rebase();
|
|
102
|
+
}
|
|
103
|
+
else {
|
|
104
|
+
point = point.add(stepPoint);
|
|
105
|
+
}
|
|
106
|
+
if (point.isInfinity()) {
|
|
107
|
+
throw new Error('unable to create challenge');
|
|
108
|
+
}
|
|
109
|
+
const challenge = Uint8Array.from(point.getX().toArray());
|
|
110
|
+
const hash = (0, viem_1.sha256)(new Uint8Array([...challenge, ...suffix]));
|
|
111
|
+
if (BigInt(hash) % msgDifficulty !== 0n) {
|
|
112
|
+
return null;
|
|
113
|
+
}
|
|
114
|
+
return hash;
|
|
115
|
+
},
|
|
116
|
+
};
|
|
117
|
+
}
|
|
58
118
|
/**
|
|
59
119
|
* Returns the modulus used for the PoW verification = (2^24)+(10k*dataLen).
|
|
60
120
|
* @param factors the message difficulty factors
|
package/dist/utils.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"utils.js","sourceRoot":"","sources":["../src/utils.ts"],"names":[],"mappings":";;;;;AAiCA,8BAWC;AAQD,oCASC;AAQD,gCAGC;AAOD,4CAIC;AAUD,oCAIC;AAOD,gCAEC;AAOD,sBAUC;AAOD,0BAWC;AAOD,wCASC;AAED,oCASC;AAGD,wCAMC;
|
|
1
|
+
{"version":3,"file":"utils.js","sourceRoot":"","sources":["../src/utils.ts"],"names":[],"mappings":";;;;;AAiCA,8BAWC;AAQD,oCASC;AAyBD,sDAoCC;AAQD,gCAGC;AAOD,4CAIC;AAUD,oCAIC;AAOD,gCAEC;AAOD,sBAUC;AAOD,0BAWC;AAOD,wCASC;AAED,oCASC;AAGD,wCAMC;AA9OD,kDAAsB;AACtB,wDAA+B;AAC/B,+BAgBa;AAIb,MAAM,EAAE,GAAG,kBAAQ,CAAC,EAAE,CAAA;AACtB,MAAM,EAAE,GAAG,IAAI,EAAE,CAAC,WAAW,CAAC,CAAA;AAC9B,MAAM,CAAC,GAAG,EAAE,CAAC,CAAkC,CAAA;AAE/C;;;;;;GAMG;AACH,SAAgB,SAAS,CAAC,GAAsB,EAAE,aAAqB;IACrE,MAAM,KAAK,GAAG,IAAI,UAAU,CAAC;QAC3B,GAAG,YAAY,CAAC,GAAG,CAAC;QACpB,GAAG,IAAA,iBAAU,EAAC,GAAG,CAAC,QAAQ,EAAE,EAAE,IAAI,EAAE,EAAE,EAAE,CAAC;QACzC,GAAG,IAAA,iBAAU,EAAC,GAAG,CAAC,IAAI,CAAC;KACxB,CAAC,CAAA;IACF,MAAM,IAAI,GAAG,IAAA,aAAM,EAAC,KAAK,CAAC,CAAA;IAC1B,IAAI,MAAM,CAAC,IAAI,CAAC,GAAG,aAAa,KAAK,EAAE,EAAE,CAAC;QACxC,OAAO,IAAI,CAAA;IACb,CAAC;IACD,OAAO,IAAI,CAAA;AACb,CAAC;AAED;;;;;GAKG;AACH,SAAgB,YAAY,CAAC,GAAsB;IACjD,MAAM,MAAM,GAAG,MAAM,CAAC,gBAAgB,CAAC,GAAG,CAAC,CAAC,CAAA;IAC5C,6DAA6D;IAC7D,MAAM,KAAK,GAAG,IAAI,eAAE,CAAC,CAAC,GAAG,CAAC,KAAK,GAAG,MAAM,GAAG,MAAM,CAAC,GAAG,CAAC,SAAS,CAAC,CAAC,CAAC,QAAQ,EAAE,CAAC,CAAA;IAC7E,MAAM,SAAS,GAAG,CAAC,CAAC,GAAG,CAAC,KAAK,CAAC,CAAA;IAC9B,IAAI,SAAS,CAAC,UAAU,EAAE,EAAE,CAAC;QAC3B,MAAM,IAAI,KAAK,CAAC,4BAA4B,CAAC,CAAA;IAC/C,CAAC;IACD,OAAO,UAAU,CAAC,IAAI,CAAC,SAAS,CAAC,IAAI,EAAE,CAAC,OAAO,EAAE,CAAC,CAAA;AACpD,CAAC;AAED;;;;;;;;;;;;;;;;;;;;;;GAsBG;AACH,SAAgB,qBAAqB,CAAC,OAA0B;IAC9D,MAAM,MAAM,GAAG,MAAM,CAAC,gBAAgB,CAAC,OAAO,CAAC,CAAC,CAAA;IAChD,MAAM,SAAS,GAAG,CAAC,CAAC,GAAG,CAAC,IAAI,eAAE,CAAC,MAAM,CAAC,QAAQ,EAAE,CAAC,CAAC,CAAA,CAAC,wCAAwC;IAC3F,MAAM,MAAM,GAAG,IAAI,UAAU,CAAC;QAC5B,GAAG,IAAA,iBAAU,EAAC,OAAO,CAAC,QAAQ,EAAE,EAAE,IAAI,EAAE,EAAE,EAAE,CAAC;QAC7C,GAAG,IAAA,iBAAU,EAAC,OAAO,CAAC,IAAI,CAAC;KAC5B,CAAC,CAAA;IACF,IAAI,KAAgD,CAAA;IACpD,IAAI,cAA+B,CAAA;IAEnC,0FAA0F;IAC1F,MAAM,MAAM,GAAG,GAAG,EAAE;QAClB,MAAM,MAAM,GAAG,OAAO,CAAC,KAAK,GAAG,MAAM,GAAG,MAAM,CAAC,OAAO,CAAC,SAAS,CAAC,CAAA;QACjE,KAAK,GAAG,CAAC,CAAC,GAAG,CAAC,IAAI,eAAE,CAAC,MAAM,CAAC,QAAQ,EAAE,CAAC,CAAC,CAAA;QACxC,cAAc,GAAG,OAAO,CAAC,SAAS,CAAA;IACpC,CAAC,CAAA;IAED,OAAO;QACL,IAAI,CAAC,aAAqB;YACxB,OAAO,CAAC,KAAK,IAAI,EAAE,CAAA;YACnB,IAAI,KAAK,KAAK,SAAS,IAAI,OAAO,CAAC,SAAS,KAAK,cAAc,EAAE,CAAC;gBAChE,MAAM,EAAE,CAAA;YACV,CAAC;iBAAM,CAAC;gBACN,KAAK,GAAG,KAAK,CAAC,GAAG,CAAC,SAAS,CAAC,CAAA;YAC9B,CAAC;YACD,IAAI,KAAM,CAAC,UAAU,EAAE,EAAE,CAAC;gBACxB,MAAM,IAAI,KAAK,CAAC,4BAA4B,CAAC,CAAA;YAC/C,CAAC;YACD,MAAM,SAAS,GAAG,UAAU,CAAC,IAAI,CAAC,KAAM,CAAC,IAAI,EAAE,CAAC,OAAO,EAAE,CAAC,CAAA;YAC1D,MAAM,IAAI,GAAG,IAAA,aAAM,EAAC,IAAI,UAAU,CAAC,CAAC,GAAG,SAAS,EAAE,GAAG,MAAM,CAAC,CAAC,CAAC,CAAA;YAC9D,IAAI,MAAM,CAAC,IAAI,CAAC,GAAG,aAAa,KAAK,EAAE,EAAE,CAAC;gBACxC,OAAO,IAAI,CAAA;YACb,CAAC;YACD,OAAO,IAAI,CAAA;QACb,CAAC;KACF,CAAA;AACH,CAAC;AAED;;;;;GAKG;AACH,SAAgB,UAAU,CAAC,EAAE,cAAc,EAAE,WAAW,EAA2B,EAAE,OAAe;IAClG,uDAAuD;IACvD,OAAO,CAAC,CAAC,EAAE,IAAI,GAAG,GAAG,MAAM,CAAC,OAAO,CAAC,GAAG,MAAO,CAAC,GAAG,cAAc,CAAC,GAAG,WAAW,CAAA;AACjF,CAAC;AAED;;;;GAIG;AACH,SAAgB,gBAAgB,CAAC,EAAE,cAAc,EAAE,WAAW,EAA2B;IACvF,OAAO,KAAK,IAAA,aAAM,EAChB,IAAA,kBAAW,EAAC,CAAC,IAAA,oBAAa,EAAC,cAAc,EAAE,EAAE,IAAI,EAAE,CAAC,EAAE,CAAC,EAAE,IAAA,oBAAa,EAAC,WAAW,EAAE,EAAE,IAAI,EAAE,CAAC,EAAE,CAAC,CAAC,CAAC,CACnG,CAAC,KAAK,CAAC,EAAE,CAAC,EAAE,CAAA;AACf,CAAC;AAED;;;;;;;GAOG;AACH,SAAgB,YAAY,CAAC,QAAkC;IAC7D,IAAI,IAAA,YAAK,EAAC,QAAQ,CAAC;QAAE,OAAO,QAAQ,CAAA;IACpC,IAAI,IAAA,cAAO,EAAC,QAAQ,CAAC;QAAE,OAAO,IAAA,iBAAU,EAAC,QAAQ,EAAE,EAAE,IAAI,EAAE,EAAE,EAAE,CAAC,CAAA;IAChE,OAAO,IAAA,gBAAS,EAAC,IAAA,oBAAa,EAAC,QAAQ,CAAC,CAAC,CAAA;AAC3C,CAAC;AAED;;;;GAIG;AACH,SAAgB,UAAU,CAAC,IAA8B;IACvD,OAAO,IAAA,YAAK,EAAC,IAAI,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,IAAA,YAAK,EAAC,IAAI,CAAC,CAAA;AACzC,CAAC;AAED;;;;GAIG;AACH,SAAgB,KAAK,CAAC,GAAsB;IAC1C,OAAO,IAAA,YAAK,EAAC;QACX,IAAA,oBAAa,EAAC,GAAG,CAAC,OAAO,EAAE,EAAE,IAAI,EAAE,CAAC,EAAE,CAAC,EAAE,cAAc;QACvD,IAAA,iBAAU,EAAC,GAAG,CAAC,SAAS,EAAE,EAAE,IAAI,EAAE,EAAE,EAAE,CAAC,EAAE,eAAe;QACxD,IAAA,oBAAa,EAAC,GAAG,CAAC,KAAK,CAAC;QACxB,IAAA,oBAAa,EAAC,GAAG,CAAC,cAAc,CAAC;QACjC,IAAA,oBAAa,EAAC,GAAG,CAAC,WAAW,CAAC;QAC9B,IAAA,iBAAU,EAAC,GAAG,CAAC,QAAQ,EAAE,EAAE,IAAI,EAAE,EAAE,EAAE,CAAC,EAAE,eAAe;QACvD,IAAA,iBAAU,EAAC,GAAG,CAAC,IAAI,CAAC;KACrB,CAAC,CAAA;AACJ,CAAC;AAED;;;;GAIG;AACH,SAAgB,OAAO,CAAC,GAAQ;IAC9B,MAAM,CAAC,OAAO,EAAE,SAAS,EAAE,KAAK,EAAE,cAAc,EAAE,WAAW,EAAE,QAAQ,EAAE,IAAI,CAAC,GAAG,IAAA,cAAO,EAAC,GAAG,CAAC,CAAA;IAC7F,OAAO;QACL,OAAO,EAAE,MAAM,CAAC,OAAO,CAAC;QACxB,SAAS;QACT,KAAK,EAAE,MAAM,CAAC,KAAe,CAAC;QAC9B,cAAc,EAAE,MAAM,CAAC,cAAwB,CAAC;QAChD,WAAW,EAAE,MAAM,CAAC,WAAqB,CAAC;QAC1C,QAAQ;QACR,IAAI;KACgB,CAAA;AACxB,CAAC;AAED;;;;GAIG;AACH,SAAgB,cAAc,CAAC,GAAqB;IAClD,OAAO;QACL,GAAG,GAAG;QACN,WAAW,EAAE,MAAM,CAAC,GAAG,CAAC,WAAW,CAAC;QACpC,KAAK,EAAE,MAAM,CAAC,GAAG,CAAC,KAAK,CAAC;QACxB,cAAc,EAAE,MAAM,CAAC,GAAG,CAAC,cAAc,CAAC;QAC1C,WAAW,EAAE,MAAM,CAAC,GAAG,CAAC,WAAW,CAAC;QACpC,OAAO,EAAE,MAAM,CAAC,GAAG,CAAC,OAAO,CAAC;KAC7B,CAAA;AACH,CAAC;AAED,SAAgB,YAAY,CAAC,GAAkB;IAC7C,OAAO;QACL,GAAG,GAAG;QACN,WAAW,EAAE,IAAA,kBAAW,EAAC,GAAG,CAAC,WAAW,CAAC;QACzC,OAAO,EAAE,IAAA,kBAAW,EAAC,GAAG,CAAC,OAAO,CAAC;QACjC,KAAK,EAAE,IAAA,kBAAW,EAAC,GAAG,CAAC,KAAK,CAAC;QAC7B,cAAc,EAAE,IAAA,kBAAW,EAAC,GAAG,CAAC,cAAc,CAAC;QAC/C,WAAW,EAAE,IAAA,kBAAW,EAAC,GAAG,CAAC,WAAW,CAAC;KAC1C,CAAA;AACH,CAAC;AAED,mEAAmE;AACnE,SAAgB,cAAc,CAAC,QAAwB;IACrD,OAAO;QACL,OAAO,CAAyB,IAAmC;YACjE,OAAO,QAAQ,CAAC,IAAI,CAAC,IAAI,CAAC,MAAM,EAAE,IAAI,CAAC,MAAM,CAAe,CAAA;QAC9D,CAAC;KACF,CAAA;AACH,CAAC"}
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@msgboard/core",
|
|
3
|
-
"version": "0.0.
|
|
3
|
+
"version": "0.0.32",
|
|
4
4
|
"description": "MsgBoard proof-of-work engine (msgpow): pure primitives and encoding",
|
|
5
5
|
"repository": "github:valve-tech/msgboard",
|
|
6
6
|
"author": "MsgBoard",
|
|
@@ -14,10 +14,10 @@
|
|
|
14
14
|
"commonjs": "./dist/index.js",
|
|
15
15
|
"exports": {
|
|
16
16
|
".": {
|
|
17
|
+
"types": "./dist/index.d.ts",
|
|
17
18
|
"require": "./dist/index.js",
|
|
18
|
-
"default": "./dist/index.js",
|
|
19
19
|
"import": "./dist/index.js",
|
|
20
|
-
"
|
|
20
|
+
"default": "./dist/index.js"
|
|
21
21
|
}
|
|
22
22
|
},
|
|
23
23
|
"keywords": [
|