@nockchain/rose-ts 0.1.1-alpha.5 → 0.1.1-alpha.6
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/core/lock.d.ts +0 -2
- package/dist/core/lock.d.ts.map +1 -1
- package/dist/core/lock.js +0 -32
- package/dist/core/lock.js.map +1 -1
- package/dist/core/merkle.d.ts.map +1 -1
- package/dist/core/merkle.js +46 -32
- package/dist/core/merkle.js.map +1 -1
- package/dist/hash/tx.d.ts.map +1 -1
- package/dist/hash/tx.js +13 -2
- package/dist/hash/tx.js.map +1 -1
- package/dist/proto/decode.d.ts.map +1 -1
- package/dist/proto/decode.js +11 -2
- package/dist/proto/decode.js.map +1 -1
- package/dist/proto/rawTx.d.ts.map +1 -1
- package/dist/proto/rawTx.js +9 -1
- package/dist/proto/rawTx.js.map +1 -1
- package/package.json +1 -1
package/dist/core/lock.d.ts
CHANGED
|
@@ -2,7 +2,5 @@ import type { Lock, SpendCondition } from "../types.js";
|
|
|
2
2
|
import type { Digest } from "../types.js";
|
|
3
3
|
export declare function lockHeight(lock: Lock): number;
|
|
4
4
|
export declare function lockSpendCondition(lock: Lock, index: number): SpendCondition;
|
|
5
|
-
export declare function lockLeafCount(lock: Lock): number;
|
|
6
|
-
export declare function lockHashablePair(lock: Lock): [Lock, Lock] | null;
|
|
7
5
|
export declare function lockRootDigest(lock: Lock): Digest;
|
|
8
6
|
//# sourceMappingURL=lock.d.ts.map
|
package/dist/core/lock.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"lock.d.ts","sourceRoot":"","sources":["../../src/core/lock.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,IAAI,EAAE,cAAc,EAAE,MAAM,aAAa,CAAC;AAExD,OAAO,KAAK,EAAE,MAAM,EAAE,MAAM,aAAa,CAAC;AAE1C,wBAAgB,UAAU,CAAC,IAAI,EAAE,IAAI,GAAG,MAAM,CAc7C;AAgDD,wBAAgB,kBAAkB,CAAC,IAAI,EAAE,IAAI,EAAE,KAAK,EAAE,MAAM,GAAG,cAAc,CAqB5E;AAED,wBAAgB,
|
|
1
|
+
{"version":3,"file":"lock.d.ts","sourceRoot":"","sources":["../../src/core/lock.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,IAAI,EAAE,cAAc,EAAE,MAAM,aAAa,CAAC;AAExD,OAAO,KAAK,EAAE,MAAM,EAAE,MAAM,aAAa,CAAC;AAE1C,wBAAgB,UAAU,CAAC,IAAI,EAAE,IAAI,GAAG,MAAM,CAc7C;AAgDD,wBAAgB,kBAAkB,CAAC,IAAI,EAAE,IAAI,EAAE,KAAK,EAAE,MAAM,GAAG,cAAc,CAqB5E;AAED,wBAAgB,cAAc,CAAC,IAAI,EAAE,IAAI,GAAG,MAAM,CAKjD"}
|
package/dist/core/lock.js
CHANGED
|
@@ -54,38 +54,6 @@ export function lockSpendCondition(lock, index) {
|
|
|
54
54
|
throw new Error(`unsupported lock tag ${lock.tag}`);
|
|
55
55
|
}
|
|
56
56
|
}
|
|
57
|
-
export function lockLeafCount(lock) {
|
|
58
|
-
if (Array.isArray(lock))
|
|
59
|
-
return 1;
|
|
60
|
-
switch (lock.tag) {
|
|
61
|
-
case 2:
|
|
62
|
-
return 1;
|
|
63
|
-
case 4:
|
|
64
|
-
return 2;
|
|
65
|
-
case 8:
|
|
66
|
-
return 4;
|
|
67
|
-
case 16:
|
|
68
|
-
return 8;
|
|
69
|
-
default:
|
|
70
|
-
throw new Error(`unsupported lock tag ${lock.tag}`);
|
|
71
|
-
}
|
|
72
|
-
}
|
|
73
|
-
export function lockHashablePair(lock) {
|
|
74
|
-
if (Array.isArray(lock))
|
|
75
|
-
return null;
|
|
76
|
-
switch (lock.tag) {
|
|
77
|
-
case 2:
|
|
78
|
-
return [lock.p, lock.q];
|
|
79
|
-
case 4:
|
|
80
|
-
return [lock.p, lock.q];
|
|
81
|
-
case 8:
|
|
82
|
-
return [lock.p, lock.q];
|
|
83
|
-
case 16:
|
|
84
|
-
return [lock.p, lock.q];
|
|
85
|
-
default:
|
|
86
|
-
throw new Error(`unsupported lock tag ${lock.tag}`);
|
|
87
|
-
}
|
|
88
|
-
}
|
|
89
57
|
export function lockRootDigest(lock) {
|
|
90
58
|
if (Array.isArray(lock)) {
|
|
91
59
|
return hashToDigest(hashSpendCondition(lock));
|
package/dist/core/lock.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"lock.js","sourceRoot":"","sources":["../../src/core/lock.ts"],"names":[],"mappings":"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
|
|
1
|
+
{"version":3,"file":"lock.js","sourceRoot":"","sources":["../../src/core/lock.ts"],"names":[],"mappings":"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"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"merkle.d.ts","sourceRoot":"","sources":["../../src/core/merkle.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"merkle.d.ts","sourceRoot":"","sources":["../../src/core/merkle.ts"],"names":[],"mappings":"AAGA,OAAO,KAAK,EAAE,IAAI,EAAE,WAAW,EAAkB,MAAM,aAAa,CAAC;AAErE,MAAM,WAAW,gBAAgB;IAC/B,KAAK,EAAE,WAAW,CAAC;IACnB,IAAI,EAAE,MAAM,CAAC;CACd;AAoFD,wBAAgB,iBAAiB,CAAC,IAAI,EAAE,IAAI,EAAE,KAAK,EAAE,MAAM,GAAG,gBAAgB,CAE7E"}
|
package/dist/core/merkle.js
CHANGED
|
@@ -1,6 +1,5 @@
|
|
|
1
1
|
import { digestFromBase58 } from "./digest.js";
|
|
2
|
-
import {
|
|
3
|
-
import { lockHashablePair, lockLeafCount } from "./lock.js";
|
|
2
|
+
import { hashPair, hashSpendCondition, hashToDigest, hashU64 } from "./hashable.js";
|
|
4
3
|
function leadingZeros64(v) {
|
|
5
4
|
if (v === 0n)
|
|
6
5
|
return 64;
|
|
@@ -12,46 +11,61 @@ function leadingZeros64(v) {
|
|
|
12
11
|
}
|
|
13
12
|
return n;
|
|
14
13
|
}
|
|
15
|
-
|
|
16
|
-
|
|
17
|
-
|
|
18
|
-
|
|
19
|
-
|
|
20
|
-
|
|
14
|
+
const leaf = (hash) => ({ kind: "leaf", hash });
|
|
15
|
+
const pair = (left, right) => ({ kind: "pair", left, right });
|
|
16
|
+
function innerTree(node, depth) {
|
|
17
|
+
if (depth === 0)
|
|
18
|
+
return leaf(hashSpendCondition(node));
|
|
19
|
+
const n = node;
|
|
20
|
+
return pair(innerTree(n.p, depth - 1), innerTree(n.q, depth - 1));
|
|
21
|
+
}
|
|
22
|
+
function lockTree(lock) {
|
|
23
|
+
if (Array.isArray(lock))
|
|
24
|
+
return leaf(hashSpendCondition(lock));
|
|
25
|
+
switch (lock.tag) {
|
|
26
|
+
case 2:
|
|
27
|
+
return pair(leaf(hashU64(2n)), innerTree(lock, 1));
|
|
28
|
+
case 4:
|
|
29
|
+
return pair(leaf(hashU64(4n)), innerTree(lock, 2));
|
|
30
|
+
case 8:
|
|
31
|
+
return pair(leaf(hashU64(8n)), innerTree(lock, 3));
|
|
32
|
+
case 16:
|
|
33
|
+
return pair(leaf(hashU64(16n)), innerTree(lock, 4));
|
|
34
|
+
default:
|
|
35
|
+
throw new Error(`unsupported lock tag ${lock.tag}`);
|
|
21
36
|
}
|
|
22
|
-
const [left, right] = pair;
|
|
23
|
-
return hashPair(hashLockSubtree(left), hashLockSubtree(right));
|
|
24
37
|
}
|
|
25
|
-
|
|
26
|
-
|
|
27
|
-
|
|
28
|
-
|
|
29
|
-
|
|
30
|
-
|
|
31
|
-
|
|
32
|
-
|
|
38
|
+
function treeHash(t) {
|
|
39
|
+
if (t.kind === "leaf")
|
|
40
|
+
return t.hash;
|
|
41
|
+
return hashPair(treeHash(t.left), treeHash(t.right));
|
|
42
|
+
}
|
|
43
|
+
function treeLeafCount(t) {
|
|
44
|
+
if (t.kind === "leaf")
|
|
45
|
+
return 1;
|
|
46
|
+
return treeLeafCount(t.left) + treeLeafCount(t.right);
|
|
47
|
+
}
|
|
48
|
+
function proveTree(t, index) {
|
|
49
|
+
if (t.kind === "leaf") {
|
|
50
|
+
return { proof: { root: hashToDigest(t.hash), path: [] }, axis: 1n };
|
|
33
51
|
}
|
|
34
|
-
const
|
|
35
|
-
const lc = lockLeafCount(left);
|
|
52
|
+
const lc = treeLeafCount(t.left);
|
|
36
53
|
if (index < lc) {
|
|
37
|
-
const rec =
|
|
38
|
-
const sib = hashToDigest(
|
|
54
|
+
const rec = proveTree(t.left, index);
|
|
55
|
+
const sib = hashToDigest(treeHash(t.right));
|
|
39
56
|
const root = hashToDigest(hashPair(digestFromBase58(rec.proof.root), digestFromBase58(sib)));
|
|
40
57
|
const alz = leadingZeros64(rec.axis);
|
|
41
58
|
const axis = rec.axis ^ (3n << BigInt(63 - alz));
|
|
42
|
-
return {
|
|
43
|
-
proof: { root, path: [...rec.proof.path, sib] },
|
|
44
|
-
axis,
|
|
45
|
-
};
|
|
59
|
+
return { proof: { root, path: [...rec.proof.path, sib] }, axis };
|
|
46
60
|
}
|
|
47
|
-
const rec =
|
|
48
|
-
const sib = hashToDigest(
|
|
61
|
+
const rec = proveTree(t.right, index - lc);
|
|
62
|
+
const sib = hashToDigest(treeHash(t.left));
|
|
49
63
|
const root = hashToDigest(hashPair(digestFromBase58(sib), digestFromBase58(rec.proof.root)));
|
|
50
64
|
const alz = leadingZeros64(rec.axis);
|
|
51
65
|
const axis = rec.axis ^ (2n << BigInt(63 - alz));
|
|
52
|
-
return {
|
|
53
|
-
|
|
54
|
-
|
|
55
|
-
|
|
66
|
+
return { proof: { root, path: [...rec.proof.path, sib] }, axis };
|
|
67
|
+
}
|
|
68
|
+
export function proveHashableLock(lock, index) {
|
|
69
|
+
return proveTree(lockTree(lock), index);
|
|
56
70
|
}
|
|
57
71
|
//# sourceMappingURL=merkle.js.map
|
package/dist/core/merkle.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"merkle.js","sourceRoot":"","sources":["../../src/core/merkle.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,gBAAgB,EAAE,MAAM,aAAa,CAAC;AAC/C,OAAO,EAAE,QAAQ,EAAE,
|
|
1
|
+
{"version":3,"file":"merkle.js","sourceRoot":"","sources":["../../src/core/merkle.ts"],"names":[],"mappings":"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"}
|
package/dist/hash/tx.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"tx.d.ts","sourceRoot":"","sources":["../../src/hash/tx.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"tx.d.ts","sourceRoot":"","sources":["../../src/hash/tx.ts"],"names":[],"mappings":"AA0BA,OAAO,KAAK,EACV,MAAM,EACN,eAAe,EAGf,IAAI,EAEJ,YAAY,EACZ,OAAO,EACP,MAAM,EAEN,QAAQ,EAGR,QAAQ,EAER,OAAO,EACR,MAAM,aAAa,CAAC;AACrB,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,mBAAmB,CAAC;AAgDrD,wBAAgB,aAAa,CAAC,IAAI,EAAE,IAAI,GAAG,WAAW,CAMrD;AAED,wBAAgB,QAAQ,CAAC,IAAI,EAAE,IAAI,GAAG,MAAM,CAE3C;AAUD,wBAAgB,yBAAyB,CAAC,GAAG,EAAE,eAAe,GAAG,MAAM,CAEtE;AAkCD,wBAAgB,gBAAgB,CAAC,IAAI,EAAE,MAAM,GAAG,MAAM,CAErD;AAED,wBAAgB,UAAU,CAAC,IAAI,EAAE,MAAM,GAAG,WAAW,CAOpD;AA+BD,wBAAgB,cAAc,CAAC,KAAK,EAAE,MAAM,EAAE,GAAG,MAAM,CAEtD;AAED,wBAAgB,iBAAiB,CAAC,KAAK,EAAE,MAAM,EAAE,GAAG,MAAM,CAEzD;AAyCD,wBAAgB,iBAAiB,CAAC,CAAC,EAAE,OAAO,GAAG,MAAM,CAEpD;AAED,wBAAgB,sBAAsB,CAAC,GAAG,EAAE,YAAY,GAAG,MAAM,CAEhE;AAOD,wBAAgB,kBAAkB,CAAC,KAAK,EAAE,QAAQ,GAAG,MAAM,CAG1D;AAED,wBAAgB,YAAY,CAAC,MAAM,EAAE,QAAQ,GAAG,MAAM,CAUrD;AAED,wBAAgB,aAAa,CAAC,EAAE,EAAE,OAAO,GAAG,MAAM,CAEjD"}
|
package/dist/hash/tx.js
CHANGED
|
@@ -5,7 +5,8 @@ import { buildZTree, hashZNode } from "../core/zbase.js";
|
|
|
5
5
|
import { cheetahPointFromBase58, cheetahPointHash } from "../crypto/cheetah.js";
|
|
6
6
|
import { U256 } from "../core/u256.js";
|
|
7
7
|
import { encodeAtomU64, encodeBeltSeq, encodeDigest, encodeName, encodeTuple, } from "../noun/encode.js";
|
|
8
|
-
import { hashNounWhole } from "./structural.js";
|
|
8
|
+
import { hashNounStructural, hashNounWhole } from "./structural.js";
|
|
9
|
+
import { fromWire } from "../noun/types.js";
|
|
9
10
|
import { hashNoteData as hashNoteDataEntries } from "./note.js";
|
|
10
11
|
const AXIS_MOLD_HASH = "6mhCSwJQDvbkbiPAUNjetJtVoo1VLtEhmEYoU4hmdGd6ep1F6ayaV4A";
|
|
11
12
|
function hashDigest(d) {
|
|
@@ -118,8 +119,18 @@ function hashPkhSignature(sig) {
|
|
|
118
119
|
const tree = buildZTree(pairs.map(([key, value]) => ({ key, value })), (e) => e.key, encodeDigest);
|
|
119
120
|
return hashZNode(tree, (e) => hashNested(hashDigest(e.key), hashPublicKeyDigest(e.value[0]), hashSignature(e.value[1])));
|
|
120
121
|
}
|
|
122
|
+
function hashNounValue(noun) {
|
|
123
|
+
return digestFromBase58(hashNounStructural(fromWire(noun)));
|
|
124
|
+
}
|
|
125
|
+
function hashHaxMap(map) {
|
|
126
|
+
const pairs = Array.isArray(map) ? map : [];
|
|
127
|
+
if (pairs.length === 0)
|
|
128
|
+
return hashU64(0n);
|
|
129
|
+
const tree = buildZTree(pairs.map(([key, value]) => ({ key, value })), (e) => e.key, encodeDigest);
|
|
130
|
+
return hashZNode(tree, (e) => hashNested(hashDigest(e.key), hashNounValue(e.value)));
|
|
131
|
+
}
|
|
121
132
|
function hashWitnessBelts(w) {
|
|
122
|
-
return hashNested(hashLockMerkleProof(w.lock_merkle_proof), hashPkhSignature(w.pkh_signature),
|
|
133
|
+
return hashNested(hashLockMerkleProof(w.lock_merkle_proof), hashPkhSignature(w.pkh_signature), hashHaxMap(w.hax_map), hashU64(0n));
|
|
123
134
|
}
|
|
124
135
|
export function hashWitnessDigest(w) {
|
|
125
136
|
return hashToDigest(hashWitnessBelts(w));
|
package/dist/hash/tx.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"tx.js","sourceRoot":"","sources":["../../src/hash/tx.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,MAAM,EAAE,MAAM,iBAAiB,CAAC;AACzC,OAAO,EAAE,gBAAgB,EAAE,MAAM,mBAAmB,CAAC;AACrD,OAAO,EACL,QAAQ,EACR,iBAAiB,EACjB,YAAY,EACZ,SAAS,EACT,QAAQ,EACR,UAAU,EACV,YAAY,EACZ,SAAS,EACT,OAAO,GACR,MAAM,qBAAqB,CAAC;AAC7B,OAAO,EAAE,UAAU,EAAE,SAAS,EAAE,MAAM,kBAAkB,CAAC;AACzD,OAAO,EAAE,sBAAsB,EAAE,gBAAgB,EAAE,MAAM,sBAAsB,CAAC;AAChF,OAAO,EAAE,IAAI,EAAE,MAAM,iBAAiB,CAAC;AACvC,OAAO,EACL,aAAa,EACb,aAAa,EACb,YAAY,EACZ,UAAU,EACV,WAAW,GACZ,MAAM,mBAAmB,CAAC;AAC3B,OAAO,EAAE,aAAa,EAAE,MAAM,iBAAiB,CAAC;
|
|
1
|
+
{"version":3,"file":"tx.js","sourceRoot":"","sources":["../../src/hash/tx.ts"],"names":[],"mappings":"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"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"decode.d.ts","sourceRoot":"","sources":["../../src/proto/decode.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAU,aAAa,EAAgB,cAAc,EAAiB,MAAM,aAAa,CAAC;
|
|
1
|
+
{"version":3,"file":"decode.d.ts","sourceRoot":"","sources":["../../src/proto/decode.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAU,aAAa,EAAgB,cAAc,EAAiB,MAAM,aAAa,CAAC;AA0CtG,wBAAgB,yBAAyB,CAAC,EAAE,EAAE;IAC5C,SAAS,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC;CACrC,GAAG,aAAa,CAiBhB;AAED,wBAAgB,0BAA0B,CAAC,EAAE,EAAE;IAC7C,UAAU,CAAC,EAAE;QAAE,SAAS,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAA;KAAE,EAAE,CAAC;CACxD,GAAG,cAAc,CAGjB"}
|
package/dist/proto/decode.js
CHANGED
|
@@ -1,3 +1,4 @@
|
|
|
1
|
+
import { digestFromProtobuf } from "./digest.js";
|
|
1
2
|
function required(value, field) {
|
|
2
3
|
if (value === null || value === undefined) {
|
|
3
4
|
throw new Error(`missing required field: ${field}`);
|
|
@@ -16,8 +17,16 @@ function lockTimFromPb(pb) {
|
|
|
16
17
|
abs: timelockRangeFromPb(pb.abs ?? {}),
|
|
17
18
|
};
|
|
18
19
|
}
|
|
20
|
+
function digestFromPbField(value) {
|
|
21
|
+
if (typeof value === "string")
|
|
22
|
+
return value;
|
|
23
|
+
if (value && typeof value === "object" && "belt_1" in value) {
|
|
24
|
+
return digestFromProtobuf(value);
|
|
25
|
+
}
|
|
26
|
+
throw new Error("invalid digest in lock primitive");
|
|
27
|
+
}
|
|
19
28
|
function pkhFromPb(pb) {
|
|
20
|
-
return { m: pb.m, hashes: pb.hashes };
|
|
29
|
+
return { m: pb.m, hashes: pb.hashes.map(digestFromPbField) };
|
|
21
30
|
}
|
|
22
31
|
export function lockPrimitiveFromProtobuf(pb) {
|
|
23
32
|
const prim = required(pb.primitive, "LockPrimitive.primitive");
|
|
@@ -30,7 +39,7 @@ export function lockPrimitiveFromProtobuf(pb) {
|
|
|
30
39
|
}
|
|
31
40
|
if ("Hax" in prim) {
|
|
32
41
|
const hax = prim["Hax"];
|
|
33
|
-
return { tag: "hax", preimages: hax.hashes };
|
|
42
|
+
return { tag: "hax", preimages: hax.hashes.map(digestFromPbField) };
|
|
34
43
|
}
|
|
35
44
|
if ("Burn" in prim) {
|
|
36
45
|
return { tag: "brn" };
|
package/dist/proto/decode.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"decode.js","sourceRoot":"","sources":["../../src/proto/decode.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"decode.js","sourceRoot":"","sources":["../../src/proto/decode.ts"],"names":[],"mappings":"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"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"rawTx.d.ts","sourceRoot":"","sources":["../../src/proto/rawTx.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAKV,oBAAoB,EAEpB,OAAO,EAQR,MAAM,aAAa,CAAC;
|
|
1
|
+
{"version":3,"file":"rawTx.d.ts","sourceRoot":"","sources":["../../src/proto/rawTx.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAKV,oBAAoB,EAEpB,OAAO,EAQR,MAAM,aAAa,CAAC;AA2PrB,wBAAgB,iBAAiB,CAAC,EAAE,EAAE,oBAAoB,GAAG,OAAO,CAYnE"}
|
package/dist/proto/rawTx.js
CHANGED
|
@@ -4,6 +4,7 @@ import { cue } from "../noun/cue.js";
|
|
|
4
4
|
import { toWire } from "../noun/types.js";
|
|
5
5
|
import { cheetahPointToBase58 } from "../crypto/cheetah.js";
|
|
6
6
|
import { U256 } from "../core/u256.js";
|
|
7
|
+
import { digestFromProtobuf } from "./digest.js";
|
|
7
8
|
function required(value, field) {
|
|
8
9
|
if (value === null || value === undefined) {
|
|
9
10
|
throw new Error(`missing required field: ${field}`);
|
|
@@ -18,6 +19,9 @@ function digestField(value, field) {
|
|
|
18
19
|
if (typeof v === "string")
|
|
19
20
|
return v;
|
|
20
21
|
}
|
|
22
|
+
if (value && typeof value === "object" && "belt_1" in value) {
|
|
23
|
+
return digestFromProtobuf(value);
|
|
24
|
+
}
|
|
21
25
|
throw new Error(`invalid digest field: ${field}`);
|
|
22
26
|
}
|
|
23
27
|
function nicksField(value, field) {
|
|
@@ -91,7 +95,11 @@ function lockMerkleProofFromPb(pb) {
|
|
|
91
95
|
path: (proofPb.path ?? []).map((h) => digestField(h, "MerkleProof.path")),
|
|
92
96
|
};
|
|
93
97
|
const axis = pb.axis ?? 1;
|
|
94
|
-
|
|
98
|
+
const lmpVersion = pb.lmp_version;
|
|
99
|
+
const isFull = lmpVersion === "full" ||
|
|
100
|
+
lmpVersion === "1819047270" ||
|
|
101
|
+
(lmpVersion !== undefined && BigInt(lmpVersion) === 1819047270n);
|
|
102
|
+
if (isFull) {
|
|
95
103
|
return { version: "full", spend_condition: spendCondition, axis, proof };
|
|
96
104
|
}
|
|
97
105
|
if (axis === 1) {
|
package/dist/proto/rawTx.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"rawTx.js","sourceRoot":"","sources":["../../src/proto/rawTx.ts"],"names":[],"mappings":"AAgBA,OAAO,EAAE,MAAM,EAAE,MAAM,iBAAiB,CAAC;AACzC,OAAO,EAAE,0BAA0B,EAAE,MAAM,aAAa,CAAC;AACzD,OAAO,EAAE,GAAG,EAAE,MAAM,gBAAgB,CAAC;AACrC,OAAO,EAAE,MAAM,EAAE,MAAM,kBAAkB,CAAC;AAE1C,OAAO,EAAE,oBAAoB,EAAE,MAAM,sBAAsB,CAAC;AAE5D,OAAO,EAAE,IAAI,EAAE,MAAM,iBAAiB,CAAC;
|
|
1
|
+
{"version":3,"file":"rawTx.js","sourceRoot":"","sources":["../../src/proto/rawTx.ts"],"names":[],"mappings":"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"}
|