@ckb-firewall/cli 0.3.1 → 0.5.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.
- package/README.md +11 -6
- package/dist/commands/anchor.d.ts +23 -0
- package/dist/commands/anchor.d.ts.map +1 -0
- package/dist/commands/anchor.js +412 -0
- package/dist/commands/anchor.js.map +1 -0
- package/dist/commands/config.d.ts +4 -0
- package/dist/commands/config.d.ts.map +1 -0
- package/dist/commands/config.js +59 -0
- package/dist/commands/config.js.map +1 -0
- package/dist/commands/execute.d.ts +9 -1
- package/dist/commands/execute.d.ts.map +1 -1
- package/dist/commands/execute.js +394 -229
- package/dist/commands/execute.js.map +1 -1
- package/dist/commands/gui.d.ts +6 -0
- package/dist/commands/gui.d.ts.map +1 -0
- package/dist/commands/gui.js +112 -0
- package/dist/commands/gui.js.map +1 -0
- package/dist/commands/import.d.ts.map +1 -1
- package/dist/commands/import.js +15 -48
- package/dist/commands/import.js.map +1 -1
- package/dist/commands/inspect.d.ts.map +1 -1
- package/dist/commands/inspect.js +32 -0
- package/dist/commands/inspect.js.map +1 -1
- package/dist/commands/proposals.d.ts.map +1 -1
- package/dist/commands/proposals.js +2 -4
- package/dist/commands/proposals.js.map +1 -1
- package/dist/commands/propose.d.ts +5 -0
- package/dist/commands/propose.d.ts.map +1 -1
- package/dist/commands/propose.js +91 -7
- package/dist/commands/propose.js.map +1 -1
- package/dist/commands/reclaim.d.ts +18 -0
- package/dist/commands/reclaim.d.ts.map +1 -0
- package/dist/commands/reclaim.js +214 -0
- package/dist/commands/reclaim.js.map +1 -0
- package/dist/commands/sign.d.ts.map +1 -1
- package/dist/commands/sign.js +40 -94
- package/dist/commands/sign.js.map +1 -1
- package/dist/commands/vote.d.ts +2 -0
- package/dist/commands/vote.d.ts.map +1 -1
- package/dist/commands/vote.js +31 -25
- package/dist/commands/vote.js.map +1 -1
- package/dist/index.js +101 -16
- package/dist/index.js.map +1 -1
- package/dist/lib/Transaction Firewall.html +201 -0
- package/dist/lib/blkl.d.ts +17 -2
- package/dist/lib/blkl.d.ts.map +1 -1
- package/dist/lib/blkl.js +133 -17
- package/dist/lib/blkl.js.map +1 -1
- package/dist/lib/capacity.d.ts +12 -0
- package/dist/lib/capacity.d.ts.map +1 -0
- package/dist/lib/capacity.js +18 -0
- package/dist/lib/capacity.js.map +1 -0
- package/dist/lib/config.d.ts +7 -0
- package/dist/lib/config.d.ts.map +1 -0
- package/dist/lib/config.js +35 -0
- package/dist/lib/config.js.map +1 -0
- package/dist/lib/defaults.d.ts +19 -0
- package/dist/lib/defaults.d.ts.map +1 -1
- package/dist/lib/defaults.js +34 -7
- package/dist/lib/defaults.js.map +1 -1
- package/dist/lib/governance-v4.d.ts +39 -0
- package/dist/lib/governance-v4.d.ts.map +1 -0
- package/dist/lib/governance-v4.js +194 -0
- package/dist/lib/governance-v4.js.map +1 -0
- package/dist/lib/gui-bundle.html +4266 -0
- package/dist/lib/gui-server.d.ts +12 -0
- package/dist/lib/gui-server.d.ts.map +1 -0
- package/dist/lib/gui-server.js +1634 -0
- package/dist/lib/gui-server.js.map +1 -0
- package/dist/lib/hints.d.ts +1 -1
- package/dist/lib/hints.d.ts.map +1 -1
- package/dist/lib/hints.js +3 -9
- package/dist/lib/hints.js.map +1 -1
- package/dist/lib/portless.d.ts +41 -0
- package/dist/lib/portless.d.ts.map +1 -0
- package/dist/lib/portless.js +194 -0
- package/dist/lib/portless.js.map +1 -0
- package/dist/lib/proposals.d.ts +17 -9
- package/dist/lib/proposals.d.ts.map +1 -1
- package/dist/lib/proposals.js +4 -26
- package/dist/lib/proposals.js.map +1 -1
- package/dist/lib/rpc.d.ts +5 -0
- package/dist/lib/rpc.d.ts.map +1 -1
- package/dist/lib/rpc.js +21 -0
- package/dist/lib/rpc.js.map +1 -1
- package/dist/lib/treasury-status.d.ts +28 -0
- package/dist/lib/treasury-status.d.ts.map +1 -0
- package/dist/lib/treasury-status.js +70 -0
- package/dist/lib/treasury-status.js.map +1 -0
- package/dist/lib/treasury.d.ts +15 -0
- package/dist/lib/treasury.d.ts.map +1 -0
- package/dist/lib/treasury.js +62 -0
- package/dist/lib/treasury.js.map +1 -0
- package/dist/lib/tx-deps.d.ts +9 -0
- package/dist/lib/tx-deps.d.ts.map +1 -0
- package/dist/lib/tx-deps.js +15 -0
- package/dist/lib/tx-deps.js.map +1 -0
- package/dist/lib/witness.d.ts +13 -11
- package/dist/lib/witness.d.ts.map +1 -1
- package/dist/lib/witness.js +85 -48
- package/dist/lib/witness.js.map +1 -1
- package/package.json +2 -2
package/dist/lib/blkl.d.ts
CHANGED
|
@@ -1,16 +1,31 @@
|
|
|
1
1
|
import type { RegistryEntry, RegistryPayload } from "@ckb-firewall/sdk";
|
|
2
2
|
export interface GovernanceHeader {
|
|
3
|
-
|
|
3
|
+
/** Minimum number of validator yes-votes required to execute. */
|
|
4
4
|
threshold: number;
|
|
5
|
-
|
|
5
|
+
/** Number of validators in the authorized set. */
|
|
6
6
|
validatorCount: number;
|
|
7
|
+
/** Merkle root of the ordered validator public key set. */
|
|
7
8
|
validatorMerkleRoot: Uint8Array;
|
|
9
|
+
treasuryLockHash?: Uint8Array;
|
|
10
|
+
treasuryLockScript?: {
|
|
11
|
+
code_hash: string;
|
|
12
|
+
hash_type: string;
|
|
13
|
+
args: string;
|
|
14
|
+
};
|
|
8
15
|
}
|
|
9
16
|
export declare function strip0x(hex: string): string;
|
|
10
17
|
export declare function hexToBytes(hex: string): Uint8Array;
|
|
11
18
|
export declare function bytesToHex(bytes: Uint8Array): string;
|
|
19
|
+
export declare function scriptToMoleculeBytes(script: {
|
|
20
|
+
code_hash?: string;
|
|
21
|
+
codeHash?: string;
|
|
22
|
+
hash_type?: string;
|
|
23
|
+
hashType?: string;
|
|
24
|
+
args: string;
|
|
25
|
+
}): Uint8Array;
|
|
12
26
|
export declare function encodeGovernanceHeader(h: GovernanceHeader): Uint8Array;
|
|
13
27
|
export declare function parseGovernanceHeader(raw: Uint8Array): GovernanceHeader | null;
|
|
28
|
+
export declare function governanceTreasuryLockHash(header: GovernanceHeader | null | undefined): Uint8Array | undefined;
|
|
14
29
|
export declare function extractGovernanceHeaderRaw(hex: string): Uint8Array | null;
|
|
15
30
|
export declare function encodeRegistryPayload(payload: RegistryPayload, governanceHeaderRaw?: Uint8Array): Uint8Array;
|
|
16
31
|
export declare function insertSorted(entries: RegistryEntry[], newEntry: RegistryEntry): RegistryEntry[];
|
package/dist/lib/blkl.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"blkl.d.ts","sourceRoot":"","sources":["../../src/lib/blkl.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,aAAa,EAAE,eAAe,EAAE,MAAM,mBAAmB,CAAC;
|
|
1
|
+
{"version":3,"file":"blkl.d.ts","sourceRoot":"","sources":["../../src/lib/blkl.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,aAAa,EAAE,eAAe,EAAE,MAAM,mBAAmB,CAAC;AAKxE,MAAM,WAAW,gBAAgB;IAC/B,iEAAiE;IACjE,SAAS,EAAE,MAAM,CAAC;IAClB,kDAAkD;IAClD,cAAc,EAAE,MAAM,CAAC;IACvB,2DAA2D;IAC3D,mBAAmB,EAAE,UAAU,CAAC;IAChC,gBAAgB,CAAC,EAAE,UAAU,CAAC;IAC9B,kBAAkB,CAAC,EAAE;QAAE,SAAS,EAAE,MAAM,CAAC;QAAC,SAAS,EAAE,MAAM,CAAC;QAAC,IAAI,EAAE,MAAM,CAAA;KAAE,CAAC;CAC7E;AAED,wBAAgB,OAAO,CAAC,GAAG,EAAE,MAAM,GAAG,MAAM,CAE3C;AAED,wBAAgB,UAAU,CAAC,GAAG,EAAE,MAAM,GAAG,UAAU,CAUlD;AAED,wBAAgB,UAAU,CAAC,KAAK,EAAE,UAAU,GAAG,MAAM,CAIpD;AAED,wBAAgB,qBAAqB,CAAC,MAAM,EAAE;IAAE,SAAS,CAAC,EAAE,MAAM,CAAC;IAAC,QAAQ,CAAC,EAAE,MAAM,CAAC;IAAC,SAAS,CAAC,EAAE,MAAM,CAAC;IAAC,QAAQ,CAAC,EAAE,MAAM,CAAC;IAAC,IAAI,EAAE,MAAM,CAAA;CAAE,GAAG,UAAU,CAiCxJ;AAwBD,wBAAgB,sBAAsB,CAAC,CAAC,EAAE,gBAAgB,GAAG,UAAU,CA4BtE;AAYD,wBAAgB,qBAAqB,CAAC,GAAG,EAAE,UAAU,GAAG,gBAAgB,GAAG,IAAI,CA+B9E;AAED,wBAAgB,0BAA0B,CAAC,MAAM,EAAE,gBAAgB,GAAG,IAAI,GAAG,SAAS,GAAG,UAAU,GAAG,SAAS,CAU9G;AAED,wBAAgB,0BAA0B,CAAC,GAAG,EAAE,MAAM,GAAG,UAAU,GAAG,IAAI,CAUzE;AAED,wBAAgB,qBAAqB,CAAC,OAAO,EAAE,eAAe,EAAE,mBAAmB,CAAC,EAAE,UAAU,GAAG,UAAU,CAiD5G;AAWD,wBAAgB,YAAY,CAC1B,OAAO,EAAE,aAAa,EAAE,EACxB,QAAQ,EAAE,aAAa,GACtB,aAAa,EAAE,CAOjB;AAED,wBAAgB,WAAW,CACzB,OAAO,EAAE,aAAa,EAAE,EACxB,UAAU,EAAE,MAAM,GACjB,aAAa,EAAE,CAKjB"}
|
package/dist/lib/blkl.js
CHANGED
|
@@ -1,3 +1,5 @@
|
|
|
1
|
+
import { blake2b } from "@noble/hashes/blake2b";
|
|
2
|
+
const CKB_PERSONALIZATION = new TextEncoder().encode("ckb-default-hash");
|
|
1
3
|
export function strip0x(hex) {
|
|
2
4
|
return hex.startsWith("0x") ? hex.slice(2) : hex;
|
|
3
5
|
}
|
|
@@ -17,41 +19,155 @@ export function bytesToHex(bytes) {
|
|
|
17
19
|
.map((b) => b.toString(16).padStart(2, "0"))
|
|
18
20
|
.join("")}`;
|
|
19
21
|
}
|
|
22
|
+
export function scriptToMoleculeBytes(script) {
|
|
23
|
+
const codeHash = hexToBytes(script.code_hash ?? script.codeHash ?? "");
|
|
24
|
+
if (codeHash.length !== 32) {
|
|
25
|
+
throw new Error(`Script code_hash must be 32 bytes, got ${codeHash.length}`);
|
|
26
|
+
}
|
|
27
|
+
const hashTypeRaw = script.hash_type ?? script.hashType;
|
|
28
|
+
const hashType = hashTypeRaw === "data" ? 0x00
|
|
29
|
+
: hashTypeRaw === "type" ? 0x01
|
|
30
|
+
: hashTypeRaw === "data1" ? 0x02
|
|
31
|
+
: hashTypeRaw?.startsWith("0x") ? Number.parseInt(hashTypeRaw, 16)
|
|
32
|
+
: Number(hashTypeRaw);
|
|
33
|
+
if (!Number.isInteger(hashType) || hashType < 0 || hashType > 0xff) {
|
|
34
|
+
throw new Error(`Invalid script hash_type: ${hashTypeRaw}`);
|
|
35
|
+
}
|
|
36
|
+
const args = hexToBytes(script.args);
|
|
37
|
+
const argsBytesLen = 4 + args.length;
|
|
38
|
+
const total = 16 + 32 + 1 + argsBytesLen;
|
|
39
|
+
const out = new Uint8Array(total);
|
|
40
|
+
const putU32 = (off, value) => {
|
|
41
|
+
out[off] = value & 0xff;
|
|
42
|
+
out[off + 1] = (value >> 8) & 0xff;
|
|
43
|
+
out[off + 2] = (value >> 16) & 0xff;
|
|
44
|
+
out[off + 3] = (value >> 24) & 0xff;
|
|
45
|
+
};
|
|
46
|
+
putU32(0, total);
|
|
47
|
+
putU32(4, 16);
|
|
48
|
+
putU32(8, 48);
|
|
49
|
+
putU32(12, 49);
|
|
50
|
+
out.set(codeHash, 16);
|
|
51
|
+
out[48] = hashType;
|
|
52
|
+
putU32(49, args.length);
|
|
53
|
+
out.set(args, 53);
|
|
54
|
+
return out;
|
|
55
|
+
}
|
|
56
|
+
function moleculeBytesToScript(raw) {
|
|
57
|
+
if (raw.length < 53)
|
|
58
|
+
return null;
|
|
59
|
+
const u32 = (off) => raw[off] |
|
|
60
|
+
(raw[off + 1] << 8) |
|
|
61
|
+
(raw[off + 2] << 16) |
|
|
62
|
+
(raw[off + 3] << 24);
|
|
63
|
+
if (u32(0) !== raw.length || u32(4) !== 16 || u32(8) !== 48 || u32(12) !== 49)
|
|
64
|
+
return null;
|
|
65
|
+
const argsLen = u32(49);
|
|
66
|
+
if (53 + argsLen !== raw.length)
|
|
67
|
+
return null;
|
|
68
|
+
const hashTypeByte = raw[48];
|
|
69
|
+
const hashType = hashTypeByte === 0x00 ? "data"
|
|
70
|
+
: hashTypeByte === 0x01 ? "type"
|
|
71
|
+
: hashTypeByte === 0x02 ? "data1"
|
|
72
|
+
: `0x${hashTypeByte.toString(16)}`;
|
|
73
|
+
return {
|
|
74
|
+
code_hash: bytesToHex(raw.slice(16, 48)),
|
|
75
|
+
hash_type: hashType,
|
|
76
|
+
args: bytesToHex(raw.slice(53)),
|
|
77
|
+
};
|
|
78
|
+
}
|
|
20
79
|
export function encodeGovernanceHeader(h) {
|
|
21
|
-
const
|
|
80
|
+
const treasuryScriptBytes = h.treasuryLockScript ? scriptToMoleculeBytes(h.treasuryLockScript) : undefined;
|
|
81
|
+
const version = treasuryScriptBytes ? 0x03 : h.treasuryLockHash ? 0x02 : 0x01;
|
|
82
|
+
// Legacy signer_count slot is always 0. On-chain authorization uses validator votes, not
|
|
83
|
+
// a separate multisig signer set. The governance-lock reads this byte only to skip past it.
|
|
84
|
+
const size = 1 + 1 + 1 + 2 + 32
|
|
85
|
+
+ (h.treasuryLockHash && !treasuryScriptBytes ? 32 : 0)
|
|
86
|
+
+ (treasuryScriptBytes ? 2 + treasuryScriptBytes.length : 0);
|
|
22
87
|
const buf = new Uint8Array(size);
|
|
23
88
|
let off = 0;
|
|
24
|
-
buf[off++] =
|
|
25
|
-
buf[off++] =
|
|
89
|
+
buf[off++] = version;
|
|
90
|
+
buf[off++] = 0; // legacy signer_count — always 0 (no multisig signer set)
|
|
26
91
|
buf[off++] = h.threshold;
|
|
27
|
-
for (const pk of h.pubkeys) {
|
|
28
|
-
buf.set(pk, off);
|
|
29
|
-
off += 33;
|
|
30
|
-
}
|
|
31
92
|
buf[off++] = h.validatorCount & 0xff;
|
|
32
93
|
buf[off++] = (h.validatorCount >> 8) & 0xff;
|
|
33
94
|
buf.set(h.validatorMerkleRoot, off);
|
|
95
|
+
off += 32;
|
|
96
|
+
if (treasuryScriptBytes) {
|
|
97
|
+
buf[off++] = treasuryScriptBytes.length & 0xff;
|
|
98
|
+
buf[off++] = (treasuryScriptBytes.length >> 8) & 0xff;
|
|
99
|
+
buf.set(treasuryScriptBytes, off);
|
|
100
|
+
}
|
|
101
|
+
else if (h.treasuryLockHash) {
|
|
102
|
+
if (h.treasuryLockHash.length !== 32) {
|
|
103
|
+
throw new Error(`treasuryLockHash must be 32 bytes, got ${h.treasuryLockHash.length}`);
|
|
104
|
+
}
|
|
105
|
+
buf.set(h.treasuryLockHash, off);
|
|
106
|
+
}
|
|
34
107
|
return buf;
|
|
35
108
|
}
|
|
36
109
|
// Parses a raw governance header byte slice into a GovernanceHeader.
|
|
37
|
-
//
|
|
110
|
+
//
|
|
111
|
+
// Wire format (all versions):
|
|
112
|
+
// gh_version(1) | legacy_signer_count(1) | threshold(1) | [legacy_pubkey(33)]×N
|
|
113
|
+
// | validator_count(2 LE) | validator_merkle_root(32)
|
|
114
|
+
// v2 suffix: treasury_lock_hash(32)
|
|
115
|
+
// v3 suffix: treasury_lock_script_len(2 LE) | treasury_lock_script(Molecule Script)
|
|
116
|
+
//
|
|
117
|
+
// The legacy_signer_count/pubkey block is preserved for wire-format compatibility with older
|
|
118
|
+
// on-chain cells but is not used for authorization. New cells always write signer_count=0.
|
|
38
119
|
export function parseGovernanceHeader(raw) {
|
|
39
120
|
if (raw.length < 3)
|
|
40
121
|
return null;
|
|
41
|
-
|
|
122
|
+
const version = raw[0];
|
|
123
|
+
if (version !== 0x01 && version !== 0x02 && version !== 0x03)
|
|
42
124
|
return null;
|
|
43
|
-
const
|
|
125
|
+
const legacySignerCount = raw[1]; // bytes to skip; not used for authorization
|
|
44
126
|
const threshold = raw[2];
|
|
45
|
-
const pubkeysEnd = 3 +
|
|
46
|
-
|
|
127
|
+
const pubkeysEnd = 3 + legacySignerCount * 33; // skip legacy pubkey block
|
|
128
|
+
const baseEnd = pubkeysEnd + 2 + 32;
|
|
129
|
+
if (raw.length < baseEnd)
|
|
47
130
|
return null;
|
|
48
|
-
const pubkeys = [];
|
|
49
|
-
for (let i = 0; i < signerCount; i++) {
|
|
50
|
-
pubkeys.push(raw.slice(3 + i * 33, 3 + (i + 1) * 33));
|
|
51
|
-
}
|
|
52
131
|
const validatorCount = raw[pubkeysEnd] | (raw[pubkeysEnd + 1] << 8);
|
|
53
132
|
const validatorMerkleRoot = raw.slice(pubkeysEnd + 2, pubkeysEnd + 2 + 32);
|
|
54
|
-
|
|
133
|
+
let treasuryLockHash = version === 0x02 ? raw.slice(baseEnd, baseEnd + 32) : undefined;
|
|
134
|
+
if (version === 0x02 && treasuryLockHash?.length !== 32)
|
|
135
|
+
return null;
|
|
136
|
+
let treasuryLockScript;
|
|
137
|
+
if (version === 0x03) {
|
|
138
|
+
if (baseEnd + 2 > raw.length)
|
|
139
|
+
return null;
|
|
140
|
+
const scriptLen = raw[baseEnd] | (raw[baseEnd + 1] << 8);
|
|
141
|
+
const scriptStart = baseEnd + 2;
|
|
142
|
+
const scriptEnd = scriptStart + scriptLen;
|
|
143
|
+
if (scriptEnd !== raw.length)
|
|
144
|
+
return null;
|
|
145
|
+
const scriptBytes = raw.slice(scriptStart, scriptEnd);
|
|
146
|
+
const parsed = moleculeBytesToScript(scriptBytes);
|
|
147
|
+
if (!parsed)
|
|
148
|
+
return null;
|
|
149
|
+
treasuryLockScript = parsed;
|
|
150
|
+
treasuryLockHash = undefined;
|
|
151
|
+
}
|
|
152
|
+
const header = { threshold, validatorCount, validatorMerkleRoot };
|
|
153
|
+
if (treasuryLockHash)
|
|
154
|
+
header.treasuryLockHash = treasuryLockHash;
|
|
155
|
+
if (treasuryLockScript)
|
|
156
|
+
header.treasuryLockScript = treasuryLockScript;
|
|
157
|
+
return header;
|
|
158
|
+
}
|
|
159
|
+
export function governanceTreasuryLockHash(header) {
|
|
160
|
+
if (!header)
|
|
161
|
+
return undefined;
|
|
162
|
+
if (header.treasuryLockHash)
|
|
163
|
+
return header.treasuryLockHash;
|
|
164
|
+
if (header.treasuryLockScript) {
|
|
165
|
+
return blake2b(scriptToMoleculeBytes(header.treasuryLockScript), {
|
|
166
|
+
personalization: CKB_PERSONALIZATION,
|
|
167
|
+
dkLen: 32,
|
|
168
|
+
});
|
|
169
|
+
}
|
|
170
|
+
return undefined;
|
|
55
171
|
}
|
|
56
172
|
export function extractGovernanceHeaderRaw(hex) {
|
|
57
173
|
try {
|
package/dist/lib/blkl.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"blkl.js","sourceRoot":"","sources":["../../src/lib/blkl.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"blkl.js","sourceRoot":"","sources":["../../src/lib/blkl.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,12 @@
|
|
|
1
|
+
export declare function parseCapacity(capacity: string): bigint;
|
|
2
|
+
export declare function hexCapacity(value: bigint): string;
|
|
3
|
+
export declare function occupiedCapacityShannons(cell: {
|
|
4
|
+
lock: {
|
|
5
|
+
args: string;
|
|
6
|
+
};
|
|
7
|
+
type: {
|
|
8
|
+
args: string;
|
|
9
|
+
} | null;
|
|
10
|
+
data: string | Uint8Array;
|
|
11
|
+
}): bigint;
|
|
12
|
+
//# sourceMappingURL=capacity.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"capacity.d.ts","sourceRoot":"","sources":["../../src/lib/capacity.ts"],"names":[],"mappings":"AAIA,wBAAgB,aAAa,CAAC,QAAQ,EAAE,MAAM,GAAG,MAAM,CAEtD;AAED,wBAAgB,WAAW,CAAC,KAAK,EAAE,MAAM,GAAG,MAAM,CAEjD;AAID,wBAAgB,wBAAwB,CAAC,IAAI,EAAE;IAC7C,IAAI,EAAE;QAAE,IAAI,EAAE,MAAM,CAAA;KAAE,CAAC;IACvB,IAAI,EAAE;QAAE,IAAI,EAAE,MAAM,CAAA;KAAE,GAAG,IAAI,CAAC;IAC9B,IAAI,EAAE,MAAM,GAAG,UAAU,CAAC;CAC3B,GAAG,MAAM,CAMT"}
|
|
@@ -0,0 +1,18 @@
|
|
|
1
|
+
import { hexToBytes } from "./blkl.js";
|
|
2
|
+
const SHANNONS_PER_CKB = 100000000n;
|
|
3
|
+
export function parseCapacity(capacity) {
|
|
4
|
+
return BigInt(capacity);
|
|
5
|
+
}
|
|
6
|
+
export function hexCapacity(value) {
|
|
7
|
+
return `0x${value.toString(16)}`;
|
|
8
|
+
}
|
|
9
|
+
// CKB occupied capacity: 8 (capacity field) + data + (32 code_hash + 1 hash_type + args) per script.
|
|
10
|
+
// This matches the CKB consensus formula — no molecule headers or table prefixes.
|
|
11
|
+
export function occupiedCapacityShannons(cell) {
|
|
12
|
+
const lockArgsLen = hexToBytes(cell.lock.args).length;
|
|
13
|
+
const typeArgsLen = cell.type ? hexToBytes(cell.type.args).length : 0;
|
|
14
|
+
const dataBytes = typeof cell.data === "string" ? hexToBytes(cell.data) : cell.data;
|
|
15
|
+
const occupiedBytes = 8 + dataBytes.length + (33 + lockArgsLen) + (cell.type ? 33 + typeArgsLen : 0);
|
|
16
|
+
return BigInt(occupiedBytes) * SHANNONS_PER_CKB;
|
|
17
|
+
}
|
|
18
|
+
//# sourceMappingURL=capacity.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"capacity.js","sourceRoot":"","sources":["../../src/lib/capacity.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,UAAU,EAAE,MAAM,WAAW,CAAC;AAEvC,MAAM,gBAAgB,GAAG,UAAY,CAAC;AAEtC,MAAM,UAAU,aAAa,CAAC,QAAgB;IAC5C,OAAO,MAAM,CAAC,QAAQ,CAAC,CAAC;AAC1B,CAAC;AAED,MAAM,UAAU,WAAW,CAAC,KAAa;IACvC,OAAO,KAAK,KAAK,CAAC,QAAQ,CAAC,EAAE,CAAC,EAAE,CAAC;AACnC,CAAC;AAED,qGAAqG;AACrG,kFAAkF;AAClF,MAAM,UAAU,wBAAwB,CAAC,IAIxC;IACC,MAAM,WAAW,GAAG,UAAU,CAAC,IAAI,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC,MAAM,CAAC;IACtD,MAAM,WAAW,GAAG,IAAI,CAAC,IAAI,CAAC,CAAC,CAAC,UAAU,CAAC,IAAI,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC,CAAC;IACtE,MAAM,SAAS,GAAG,OAAO,IAAI,CAAC,IAAI,KAAK,QAAQ,CAAC,CAAC,CAAC,UAAU,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC;IACpF,MAAM,aAAa,GAAG,CAAC,GAAG,SAAS,CAAC,MAAM,GAAG,CAAC,EAAE,GAAG,WAAW,CAAC,GAAG,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,GAAG,WAAW,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC;IACrG,OAAO,MAAM,CAAC,aAAa,CAAC,GAAG,gBAAgB,CAAC;AAClD,CAAC"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"config.d.ts","sourceRoot":"","sources":["../../src/lib/config.ts"],"names":[],"mappings":"AAIA,MAAM,WAAW,SAAS;IACxB,YAAY,CAAC,EAAE,MAAM,CAAC;CACvB;AAED,wBAAgB,aAAa,IAAI,MAAM,CAEtC;AAED,wBAAgB,UAAU,IAAI,SAAS,CActC;AAED,wBAAgB,UAAU,CAAC,MAAM,EAAE,SAAS,GAAG,IAAI,CAQlD"}
|
|
@@ -0,0 +1,35 @@
|
|
|
1
|
+
import { existsSync, mkdirSync, readFileSync, writeFileSync } from "node:fs";
|
|
2
|
+
import { homedir } from "node:os";
|
|
3
|
+
import { dirname, join } from "node:path";
|
|
4
|
+
export function getConfigPath() {
|
|
5
|
+
return join(homedir(), ".ckb-firewall", "config.json");
|
|
6
|
+
}
|
|
7
|
+
export function loadConfig() {
|
|
8
|
+
const path = getConfigPath();
|
|
9
|
+
if (!existsSync(path))
|
|
10
|
+
return {};
|
|
11
|
+
try {
|
|
12
|
+
const raw = JSON.parse(readFileSync(path, "utf8"));
|
|
13
|
+
if (typeof raw !== "object" || raw === null || Array.isArray(raw))
|
|
14
|
+
return {};
|
|
15
|
+
const config = {};
|
|
16
|
+
if (typeof raw.proposerName === "string") {
|
|
17
|
+
config.proposerName = raw.proposerName;
|
|
18
|
+
}
|
|
19
|
+
return config;
|
|
20
|
+
}
|
|
21
|
+
catch {
|
|
22
|
+
return {};
|
|
23
|
+
}
|
|
24
|
+
}
|
|
25
|
+
export function saveConfig(config) {
|
|
26
|
+
const path = getConfigPath();
|
|
27
|
+
try {
|
|
28
|
+
mkdirSync(dirname(path), { recursive: true });
|
|
29
|
+
writeFileSync(path, JSON.stringify(config, null, 2) + "\n", "utf8");
|
|
30
|
+
}
|
|
31
|
+
catch (err) {
|
|
32
|
+
throw new Error(`Failed to write config file at ${path}: ${err instanceof Error ? err.message : String(err)}`);
|
|
33
|
+
}
|
|
34
|
+
}
|
|
35
|
+
//# sourceMappingURL=config.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"config.js","sourceRoot":"","sources":["../../src/lib/config.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,UAAU,EAAE,SAAS,EAAE,YAAY,EAAE,aAAa,EAAE,MAAM,SAAS,CAAC;AAC7E,OAAO,EAAE,OAAO,EAAE,MAAM,SAAS,CAAC;AAClC,OAAO,EAAE,OAAO,EAAE,IAAI,EAAE,MAAM,WAAW,CAAC;AAM1C,MAAM,UAAU,aAAa;IAC3B,OAAO,IAAI,CAAC,OAAO,EAAE,EAAE,eAAe,EAAE,aAAa,CAAC,CAAC;AACzD,CAAC;AAED,MAAM,UAAU,UAAU;IACxB,MAAM,IAAI,GAAG,aAAa,EAAE,CAAC;IAC7B,IAAI,CAAC,UAAU,CAAC,IAAI,CAAC;QAAE,OAAO,EAAE,CAAC;IACjC,IAAI,CAAC;QACH,MAAM,GAAG,GAAG,IAAI,CAAC,KAAK,CAAC,YAAY,CAAC,IAAI,EAAE,MAAM,CAAC,CAAC,CAAC;QACnD,IAAI,OAAO,GAAG,KAAK,QAAQ,IAAI,GAAG,KAAK,IAAI,IAAI,KAAK,CAAC,OAAO,CAAC,GAAG,CAAC;YAAE,OAAO,EAAE,CAAC;QAC7E,MAAM,MAAM,GAAc,EAAE,CAAC;QAC7B,IAAI,OAAQ,GAA+B,CAAC,YAAY,KAAK,QAAQ,EAAE,CAAC;YACtE,MAAM,CAAC,YAAY,GAAI,GAA+B,CAAC,YAAsB,CAAC;QAChF,CAAC;QACD,OAAO,MAAM,CAAC;IAChB,CAAC;IAAC,MAAM,CAAC;QACP,OAAO,EAAE,CAAC;IACZ,CAAC;AACH,CAAC;AAED,MAAM,UAAU,UAAU,CAAC,MAAiB;IAC1C,MAAM,IAAI,GAAG,aAAa,EAAE,CAAC;IAC7B,IAAI,CAAC;QACH,SAAS,CAAC,OAAO,CAAC,IAAI,CAAC,EAAE,EAAE,SAAS,EAAE,IAAI,EAAE,CAAC,CAAC;QAC9C,aAAa,CAAC,IAAI,EAAE,IAAI,CAAC,SAAS,CAAC,MAAM,EAAE,IAAI,EAAE,CAAC,CAAC,GAAG,IAAI,EAAE,MAAM,CAAC,CAAC;IACtE,CAAC;IAAC,OAAO,GAAG,EAAE,CAAC;QACb,MAAM,IAAI,KAAK,CAAC,kCAAkC,IAAI,KAAK,GAAG,YAAY,KAAK,CAAC,CAAC,CAAC,GAAG,CAAC,OAAO,CAAC,CAAC,CAAC,MAAM,CAAC,GAAG,CAAC,EAAE,CAAC,CAAC;IACjH,CAAC;AACH,CAAC"}
|
package/dist/lib/defaults.d.ts
CHANGED
|
@@ -5,6 +5,7 @@ export declare const TESTNET_REGISTRY_CELL: {
|
|
|
5
5
|
txHash: string;
|
|
6
6
|
index: number;
|
|
7
7
|
};
|
|
8
|
+
export declare const TESTNET_TREASURY_DONATION_ADDRESS = "ckt1qzpf4txhkw8vwtycyy5vjru0jv6q5wk3cwd8w22nzsz4e2sge9h7jq546h5gm2ln9m6ehs5j68ujthe0z72g77z9m2jw2te5hq0myugugzyaany9q7kaky2wxhp29c4wjscgnqegsjqcl3avdh3u8wxd4e4py8dwlf3";
|
|
8
9
|
export declare const TESTNET_CONTRACT_OUTPOINTS: {
|
|
9
10
|
firewallLock: {
|
|
10
11
|
txHash: string;
|
|
@@ -18,11 +19,29 @@ export declare const TESTNET_CONTRACT_OUTPOINTS: {
|
|
|
18
19
|
txHash: string;
|
|
19
20
|
index: number;
|
|
20
21
|
};
|
|
22
|
+
proposalAnchor: {
|
|
23
|
+
txHash: string;
|
|
24
|
+
index: number;
|
|
25
|
+
};
|
|
21
26
|
spawnAwareSecp256k1: {
|
|
22
27
|
txHash: string;
|
|
23
28
|
index: number;
|
|
24
29
|
};
|
|
25
30
|
};
|
|
31
|
+
export declare const TESTNET_GOVERNANCE_LOCK_SCRIPT: {
|
|
32
|
+
code_hash: string;
|
|
33
|
+
hash_type: "type";
|
|
34
|
+
args: string;
|
|
35
|
+
};
|
|
36
|
+
export declare const TESTNET_TREASURY_LOCK_SCRIPT: {
|
|
37
|
+
code_hash: string;
|
|
38
|
+
hash_type: "data1";
|
|
39
|
+
args: string;
|
|
40
|
+
};
|
|
41
|
+
export declare const TESTNET_TREASURY_LOCK_DEP: {
|
|
42
|
+
txHash: string;
|
|
43
|
+
index: number;
|
|
44
|
+
};
|
|
26
45
|
export declare const SECP256K1_DEP_GROUP: {
|
|
27
46
|
txHash: string;
|
|
28
47
|
index: number;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"defaults.d.ts","sourceRoot":"","sources":["../../src/lib/defaults.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAE,gBAAgB,EAAE,MAAM,mBAAmB,CAAC;AAE1D,eAAO,MAAM,eAAe,4BAA4B,CAAC;AAIzD,eAAO,MAAM,qBAAqB,EAAE,gBAOnC,CAAC;AAGF,eAAO,MAAM,qBAAqB;;;CAIjC,CAAC;
|
|
1
|
+
{"version":3,"file":"defaults.d.ts","sourceRoot":"","sources":["../../src/lib/defaults.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAE,gBAAgB,EAAE,MAAM,mBAAmB,CAAC;AAE1D,eAAO,MAAM,eAAe,4BAA4B,CAAC;AAIzD,eAAO,MAAM,qBAAqB,EAAE,gBAOnC,CAAC;AAGF,eAAO,MAAM,qBAAqB;;;CAIjC,CAAC;AAEF,eAAO,MAAM,iCAAiC,4KAC6H,CAAC;AAG5K,eAAO,MAAM,0BAA0B;;;;;;;;;;;;;;;;;;;;;CA0BtC,CAAC;AAKF,eAAO,MAAM,8BAA8B;;;;CAI1C,CAAC;AAKF,eAAO,MAAM,4BAA4B;;;;CAKxC,CAAC;AAGF,eAAO,MAAM,yBAAyB;;;CAGrC,CAAC;AAGF,eAAO,MAAM,mBAAmB;;;CAI/B,CAAC;AAKF,eAAO,MAAM,0BAA0B,EAAE,UAAU,EAMlD,CAAC;AAEF,eAAO,MAAM,4BAA4B,IAAI,CAAC;AAC9C,eAAO,MAAM,kCAAkC,IAAI,CAAC;AAQpD;;;;GAIG;AACH,wBAAgB,qBAAqB,CAAC,OAAO,EAAE,UAAU,EAAE,GAAG,IAAI,CAkBjE"}
|
package/dist/lib/defaults.js
CHANGED
|
@@ -3,28 +3,33 @@ export const TESTNET_RPC_URL = "https://testnet.ckb.dev";
|
|
|
3
3
|
// v2 registry spec: matches registry cell dep by type_id_value (bytes 34..66 of 66-byte v2 type args).
|
|
4
4
|
// Survives governance-lock upgrades — update only typeIdValue if the registry cell is re-bootstrapped.
|
|
5
5
|
export const TESTNET_REGISTRY_SPEC = {
|
|
6
|
-
codeHash: "
|
|
6
|
+
codeHash: "0x493f1700508125b0e281b8fb1d168b03bd5ef71480399dd59221224901a9cd09",
|
|
7
7
|
hashType: "type",
|
|
8
|
-
typeIdValue: "
|
|
8
|
+
typeIdValue: "0x9be0ad6e4e5039a64d9725ff037057c16ef59f126e3bdd9841b802f0e0a112fe",
|
|
9
9
|
required: true,
|
|
10
10
|
};
|
|
11
11
|
// Live registry cell outpoint on testnet. Moves after each governance update.
|
|
12
12
|
export const TESTNET_REGISTRY_CELL = {
|
|
13
|
-
txHash: "
|
|
13
|
+
txHash: "0xa3dcb46fdeb92735e7f9f0393811a8541b71e275e8f713e62ea35f59746c78a8",
|
|
14
14
|
index: 0,
|
|
15
15
|
};
|
|
16
|
-
|
|
16
|
+
export const TESTNET_TREASURY_DONATION_ADDRESS = "ckt1qzpf4txhkw8vwtycyy5vjru0jv6q5wk3cwd8w22nzsz4e2sge9h7jq546h5gm2ln9m6ehs5j68ujthe0z72g77z9m2jw2te5hq0myugugzyaany9q7kaky2wxhp29c4wjscgnqegsjqcl3avdh3u8wxd4e4py8dwlf3";
|
|
17
|
+
// Deployed contract binary cells (treasury-enabled registry redeployed 2026-05-31).
|
|
17
18
|
export const TESTNET_CONTRACT_OUTPOINTS = {
|
|
18
19
|
firewallLock: {
|
|
19
20
|
txHash: "0x128193cc2d547b224ccf10a6e299cb0749c633c5f9354ff5a9a5fd3e894318d2",
|
|
20
21
|
index: 0,
|
|
21
22
|
},
|
|
22
23
|
blacklistRegistry: {
|
|
23
|
-
txHash: "
|
|
24
|
-
index:
|
|
24
|
+
txHash: "0xa165e5af82538c072caaee87ae5b919ad89ca2448d66daf9a29092b5ad87294d",
|
|
25
|
+
index: 0,
|
|
25
26
|
},
|
|
26
27
|
governanceLock: {
|
|
27
|
-
txHash: "
|
|
28
|
+
txHash: "0x5033e680435bc7ef2255767cfd46b355ab1bc6dcda5ec01e38ef0d29119ad711",
|
|
29
|
+
index: 0,
|
|
30
|
+
},
|
|
31
|
+
proposalAnchor: {
|
|
32
|
+
txHash: "0x0daff588f0053bdf34d4c2eebaf2c092f70192cdd4a2d1dd95aee07ce100dea9",
|
|
28
33
|
index: 0,
|
|
29
34
|
},
|
|
30
35
|
spawnAwareSecp256k1: {
|
|
@@ -32,6 +37,28 @@ export const TESTNET_CONTRACT_OUTPOINTS = {
|
|
|
32
37
|
index: 0,
|
|
33
38
|
},
|
|
34
39
|
};
|
|
40
|
+
// Governance-lock script — use as the lock for proposal cells so any validator can execute
|
|
41
|
+
// without the treasury private key. The lock is validated by the GOV1 witness already
|
|
42
|
+
// present in every execute TX.
|
|
43
|
+
export const TESTNET_GOVERNANCE_LOCK_SCRIPT = {
|
|
44
|
+
code_hash: "0x95d5e88dabf32ef59bc292d1f925df2f17948f7845daa4e52f34b81fb2711c40",
|
|
45
|
+
hash_type: "type",
|
|
46
|
+
args: "0x01",
|
|
47
|
+
};
|
|
48
|
+
// Treasury-lock script — autonomous pool that allows anyone to create proposal-anchor
|
|
49
|
+
// cells without a private key. Args encode which governance-lock and proposal-anchor
|
|
50
|
+
// type IDs are authorised. code hash = blake2b(binary), hash_type = data1.
|
|
51
|
+
export const TESTNET_TREASURY_LOCK_SCRIPT = {
|
|
52
|
+
code_hash: "0x829aacd7b38ec72c982128c90f8f93340a3ad1c39a77295314055caa08c96fe9",
|
|
53
|
+
hash_type: "data1",
|
|
54
|
+
// governance_lock_type_id(32) | proposal_anchor_type_id(32)
|
|
55
|
+
args: "0x95d5e88dabf32ef59bc292d1f925df2f17948f7845daa4e52f34b81fb2711c4089decc8507addb114e35c2a2e2ae943089832884818fc7ac6de3c3b8cdae6a12",
|
|
56
|
+
};
|
|
57
|
+
// Cell dep for the treasury-lock code cell.
|
|
58
|
+
export const TESTNET_TREASURY_LOCK_DEP = {
|
|
59
|
+
txHash: "0xbc918dda15b2e43aa308a554872a0e966d26fa14d7f0f4362871bfed4a53c3ff",
|
|
60
|
+
index: 0,
|
|
61
|
+
};
|
|
35
62
|
// secp256k1 dep group used by ckb-cli for fee-payer signing.
|
|
36
63
|
export const SECP256K1_DEP_GROUP = {
|
|
37
64
|
txHash: "0xf8de3bb47d055cdf460d93a2a6e1b05f7432f9777c8c474abf4eec1d4aee5d37",
|
package/dist/lib/defaults.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"defaults.js","sourceRoot":"","sources":["../../src/lib/defaults.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,SAAS,EAAE,MAAM,4BAA4B,CAAC;AAGvD,MAAM,CAAC,MAAM,eAAe,GAAG,yBAAyB,CAAC;AAEzD,uGAAuG;AACvG,uGAAuG;AACvG,MAAM,CAAC,MAAM,qBAAqB,GAAqB;IACrD,QAAQ,EACN,oEAAoE;IACtE,QAAQ,EAAE,MAAM;IAChB,WAAW,EACT,oEAAoE;IACtE,QAAQ,EAAE,IAAI;CACf,CAAC;AAEF,8EAA8E;AAC9E,MAAM,CAAC,MAAM,qBAAqB,GAAG;IACnC,MAAM,EACJ,oEAAoE;IACtE,KAAK,EAAE,CAAC;CACT,CAAC;AAEF,
|
|
1
|
+
{"version":3,"file":"defaults.js","sourceRoot":"","sources":["../../src/lib/defaults.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,SAAS,EAAE,MAAM,4BAA4B,CAAC;AAGvD,MAAM,CAAC,MAAM,eAAe,GAAG,yBAAyB,CAAC;AAEzD,uGAAuG;AACvG,uGAAuG;AACvG,MAAM,CAAC,MAAM,qBAAqB,GAAqB;IACrD,QAAQ,EACN,oEAAoE;IACtE,QAAQ,EAAE,MAAM;IAChB,WAAW,EACT,oEAAoE;IACtE,QAAQ,EAAE,IAAI;CACf,CAAC;AAEF,8EAA8E;AAC9E,MAAM,CAAC,MAAM,qBAAqB,GAAG;IACnC,MAAM,EACJ,oEAAoE;IACtE,KAAK,EAAE,CAAC;CACT,CAAC;AAEF,MAAM,CAAC,MAAM,iCAAiC,GAC5C,yKAAyK,CAAC;AAE5K,oFAAoF;AACpF,MAAM,CAAC,MAAM,0BAA0B,GAAG;IACxC,YAAY,EAAE;QACZ,MAAM,EACJ,oEAAoE;QACtE,KAAK,EAAE,CAAC;KACT;IACD,iBAAiB,EAAE;QACjB,MAAM,EACJ,oEAAoE;QACtE,KAAK,EAAE,CAAC;KACT;IACD,cAAc,EAAE;QACd,MAAM,EACJ,oEAAoE;QACtE,KAAK,EAAE,CAAC;KACT;IACD,cAAc,EAAE;QACd,MAAM,EACJ,oEAAoE;QACtE,KAAK,EAAE,CAAC;KACT;IACD,mBAAmB,EAAE;QACnB,MAAM,EACJ,oEAAoE;QACtE,KAAK,EAAE,CAAC;KACT;CACF,CAAC;AAEF,2FAA2F;AAC3F,sFAAsF;AACtF,+BAA+B;AAC/B,MAAM,CAAC,MAAM,8BAA8B,GAAG;IAC5C,SAAS,EAAE,oEAAoE;IAC/E,SAAS,EAAE,MAAe;IAC1B,IAAI,EAAE,MAAM;CACb,CAAC;AAEF,sFAAsF;AACtF,qFAAqF;AACrF,2EAA2E;AAC3E,MAAM,CAAC,MAAM,4BAA4B,GAAG;IAC1C,SAAS,EAAE,oEAAoE;IAC/E,SAAS,EAAE,OAAgB;IAC3B,4DAA4D;IAC5D,IAAI,EAAE,oIAAoI;CAC3I,CAAC;AAEF,4CAA4C;AAC5C,MAAM,CAAC,MAAM,yBAAyB,GAAG;IACvC,MAAM,EAAE,oEAAoE;IAC5E,KAAK,EAAE,CAAC;CACT,CAAC;AAEF,6DAA6D;AAC7D,MAAM,CAAC,MAAM,mBAAmB,GAAG;IACjC,MAAM,EACJ,oEAAoE;IACtE,KAAK,EAAE,CAAC;CACT,CAAC;AAEF,yEAAyE;AACzE,0EAA0E;AAC1E,8BAA8B;AAC9B,MAAM,CAAC,MAAM,0BAA0B,GAAiB;IACtD,IAAI,UAAU,CAAC,CAAC,IAAI,EAAE,IAAI,EAAE,IAAI,EAAE,IAAI,EAAE,IAAI,EAAE,IAAI,EAAE,IAAI,EAAE,IAAI,EAAE,IAAI,EAAE,IAAI,EAAE,IAAI,EAAE,IAAI,EAAE,IAAI,EAAE,IAAI,EAAE,IAAI,EAAE,IAAI,EAAE,IAAI,EAAE,IAAI,EAAE,IAAI,EAAE,IAAI,EAAE,IAAI,EAAE,IAAI,EAAE,IAAI,EAAE,IAAI,EAAE,IAAI,EAAE,IAAI,EAAE,IAAI,EAAE,IAAI,EAAE,IAAI,EAAE,IAAI,EAAE,IAAI,EAAE,IAAI,EAAE,IAAI,CAAC,CAAC;IACtN,IAAI,UAAU,CAAC,CAAC,IAAI,EAAE,IAAI,EAAE,IAAI,EAAE,IAAI,EAAE,IAAI,EAAE,IAAI,EAAE,IAAI,EAAE,IAAI,EAAE,IAAI,EAAE,IAAI,EAAE,IAAI,EAAE,IAAI,EAAE,IAAI,EAAE,IAAI,EAAE,IAAI,EAAE,IAAI,EAAE,IAAI,EAAE,IAAI,EAAE,IAAI,EAAE,IAAI,EAAE,IAAI,EAAE,IAAI,EAAE,IAAI,EAAE,IAAI,EAAE,IAAI,EAAE,IAAI,EAAE,IAAI,EAAE,IAAI,EAAE,IAAI,EAAE,IAAI,EAAE,IAAI,EAAE,IAAI,EAAE,IAAI,CAAC,CAAC;IACtN,IAAI,UAAU,CAAC,CAAC,IAAI,EAAE,IAAI,EAAE,IAAI,EAAE,IAAI,EAAE,IAAI,EAAE,IAAI,EAAE,IAAI,EAAE,IAAI,EAAE,IAAI,EAAE,IAAI,EAAE,IAAI,EAAE,IAAI,EAAE,IAAI,EAAE,IAAI,EAAE,IAAI,EAAE,IAAI,EAAE,IAAI,EAAE,IAAI,EAAE,IAAI,EAAE,IAAI,EAAE,IAAI,EAAE,IAAI,EAAE,IAAI,EAAE,IAAI,EAAE,IAAI,EAAE,IAAI,EAAE,IAAI,EAAE,IAAI,EAAE,IAAI,EAAE,IAAI,EAAE,IAAI,EAAE,IAAI,EAAE,IAAI,CAAC,CAAC;IACtN,IAAI,UAAU,CAAC,CAAC,IAAI,EAAE,IAAI,EAAE,IAAI,EAAE,IAAI,EAAE,IAAI,EAAE,IAAI,EAAE,IAAI,EAAE,IAAI,EAAE,IAAI,EAAE,IAAI,EAAE,IAAI,EAAE,IAAI,EAAE,IAAI,EAAE,IAAI,EAAE,IAAI,EAAE,IAAI,EAAE,IAAI,EAAE,IAAI,EAAE,IAAI,EAAE,IAAI,EAAE,IAAI,EAAE,IAAI,EAAE,IAAI,EAAE,IAAI,EAAE,IAAI,EAAE,IAAI,EAAE,IAAI,EAAE,IAAI,EAAE,IAAI,EAAE,IAAI,EAAE,IAAI,EAAE,IAAI,EAAE,IAAI,CAAC,CAAC;IACtN,IAAI,UAAU,CAAC,CAAC,IAAI,EAAE,IAAI,EAAE,IAAI,EAAE,IAAI,EAAE,IAAI,EAAE,IAAI,EAAE,IAAI,EAAE,IAAI,EAAE,IAAI,EAAE,IAAI,EAAE,IAAI,EAAE,IAAI,EAAE,IAAI,EAAE,IAAI,EAAE,IAAI,EAAE,IAAI,EAAE,IAAI,EAAE,IAAI,EAAE,IAAI,EAAE,IAAI,EAAE,IAAI,EAAE,IAAI,EAAE,IAAI,EAAE,IAAI,EAAE,IAAI,EAAE,IAAI,EAAE,IAAI,EAAE,IAAI,EAAE,IAAI,EAAE,IAAI,EAAE,IAAI,EAAE,IAAI,EAAE,IAAI,CAAC,CAAC;CACvN,CAAC;AAEF,MAAM,CAAC,MAAM,4BAA4B,GAAG,CAAC,CAAC;AAC9C,MAAM,CAAC,MAAM,kCAAkC,GAAG,CAAC,CAAC;AAEpD,uFAAuF;AACvF,8FAA8F;AAC9F,MAAM,qBAAqB,GAAiB,KAAK,CAAC,IAAI,CAAC,EAAE,MAAM,EAAE,CAAC,EAAE,EAAE,CAAC,CAAC,EAAE,CAAC,EAAE,EAAE,CAC7E,IAAI,UAAU,CAAC,EAAE,CAAC,CAAC,IAAI,CAAC,CAAC,GAAG,CAAC,CAAC,CAC/B,CAAC;AAEF;;;;GAIG;AACH,MAAM,UAAU,qBAAqB,CAAC,OAAqB;IACzD,MAAM,cAAc,GAAG,qBAAqB,CAAC,GAAG,CAAC,CAAC,IAAI,EAAE,EAAE,CACxD,SAAS,CAAC,YAAY,CAAC,IAAI,EAAE,IAAI,CAAC,CACnC,CAAC;IACF,MAAM,UAAU,GAAG,OAAO,CAAC,IAAI,CAAC,CAAC,GAAG,EAAE,EAAE,CACtC,cAAc,CAAC,IAAI,CACjB,CAAC,EAAE,EAAE,EAAE,CAAC,EAAE,CAAC,MAAM,KAAK,GAAG,CAAC,MAAM,IAAI,EAAE,CAAC,KAAK,CAAC,CAAC,CAAC,EAAE,CAAC,EAAE,EAAE,CAAC,CAAC,KAAK,GAAG,CAAC,CAAC,CAAC,CAAC,CACrE,CACF,CAAC;IACF,IAAI,UAAU,EAAE,CAAC;QACf,OAAO,CAAC,MAAM,CAAC,KAAK,CAClB,sCAAsC;YACtC,kFAAkF;YAClF,uFAAuF;YACvF,wEAAwE;YACxE,+DAA+D,CAChE,CAAC;IACJ,CAAC;AACH,CAAC"}
|
|
@@ -0,0 +1,39 @@
|
|
|
1
|
+
import type { RegistryPayload } from "@ckb-firewall/sdk";
|
|
2
|
+
import { type LiveCell } from "./rpc.js";
|
|
3
|
+
import { type GovernanceHeader } from "./blkl.js";
|
|
4
|
+
import { type Proposal } from "./proposals.js";
|
|
5
|
+
export interface RegistryStateForProposal {
|
|
6
|
+
cell: LiveCell;
|
|
7
|
+
currentPayload: RegistryPayload;
|
|
8
|
+
newEntryCount: number;
|
|
9
|
+
governanceHeaderRaw: Uint8Array;
|
|
10
|
+
governanceHeader: GovernanceHeader | null;
|
|
11
|
+
oldBlkl: Uint8Array;
|
|
12
|
+
newBlkl: Uint8Array;
|
|
13
|
+
oldRoot: Uint8Array;
|
|
14
|
+
newRoot: Uint8Array;
|
|
15
|
+
registryTypeIdValue: Uint8Array;
|
|
16
|
+
}
|
|
17
|
+
export declare function parseRegistryTypeIdValue(typeArgs: string): Uint8Array;
|
|
18
|
+
export declare function encodeProposalCellData(proposal: Proposal, registryTypeIdValue: Uint8Array): Uint8Array;
|
|
19
|
+
export declare function proposalCellDataHash(proposal: Proposal, registryTypeIdValue: Uint8Array): Uint8Array;
|
|
20
|
+
export declare function reviewDelayMs(proposal: Proposal): bigint;
|
|
21
|
+
export declare function loadRegistryStateForProposal(rpcUrl: string, registryTx: string, registryIndex: number, proposal: Proposal): Promise<RegistryStateForProposal>;
|
|
22
|
+
export declare function proposalV4Fields(proposal: Proposal, registryTypeIdValue: Uint8Array): {
|
|
23
|
+
proposalData: Uint8Array;
|
|
24
|
+
proposalDataHash: Uint8Array;
|
|
25
|
+
reviewDelayMs: bigint;
|
|
26
|
+
};
|
|
27
|
+
export declare function assertProposalCellMatches(proposal: Proposal, proposalCellData: string, registryTypeIdValue: Uint8Array): Uint8Array;
|
|
28
|
+
export declare function encodeProposalAnchorTypeArgs(params: {
|
|
29
|
+
registryTypeIdValue: Uint8Array;
|
|
30
|
+
treasuryLockHash: Uint8Array;
|
|
31
|
+
reclaimDelayMs: bigint;
|
|
32
|
+
}): Uint8Array;
|
|
33
|
+
export declare function assertProposalAnchorTypeMatches(params: {
|
|
34
|
+
proposalCellType: LiveCell["type"];
|
|
35
|
+
registryTypeIdValue: Uint8Array;
|
|
36
|
+
governanceHeader: GovernanceHeader | null;
|
|
37
|
+
reclaimDelayMs: bigint;
|
|
38
|
+
}): void;
|
|
39
|
+
//# sourceMappingURL=governance-v4.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"governance-v4.d.ts","sourceRoot":"","sources":["../../src/lib/governance-v4.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,eAAe,EAAE,MAAM,mBAAmB,CAAC;AAEzD,OAAO,EAAe,KAAK,QAAQ,EAAE,MAAM,UAAU,CAAC;AAEtD,OAAO,EAYL,KAAK,gBAAgB,EACtB,MAAM,WAAW,CAAC;AAEnB,OAAO,EAAoB,KAAK,QAAQ,EAAE,MAAM,gBAAgB,CAAC;AAEjE,MAAM,WAAW,wBAAwB;IACvC,IAAI,EAAE,QAAQ,CAAC;IACf,cAAc,EAAE,eAAe,CAAC;IAChC,aAAa,EAAE,MAAM,CAAC;IACtB,mBAAmB,EAAE,UAAU,CAAC;IAChC,gBAAgB,EAAE,gBAAgB,GAAG,IAAI,CAAC;IAC1C,OAAO,EAAE,UAAU,CAAC;IACpB,OAAO,EAAE,UAAU,CAAC;IACpB,OAAO,EAAE,UAAU,CAAC;IACpB,OAAO,EAAE,UAAU,CAAC;IACpB,mBAAmB,EAAE,UAAU,CAAC;CACjC;AAED,wBAAgB,wBAAwB,CAAC,QAAQ,EAAE,MAAM,GAAG,UAAU,CAMrE;AAED,wBAAgB,sBAAsB,CAAC,QAAQ,EAAE,QAAQ,EAAE,mBAAmB,EAAE,UAAU,GAAG,UAAU,CA4CtG;AAED,wBAAgB,oBAAoB,CAAC,QAAQ,EAAE,QAAQ,EAAE,mBAAmB,EAAE,UAAU,GAAG,UAAU,CAEpG;AAED,wBAAgB,aAAa,CAAC,QAAQ,EAAE,QAAQ,GAAG,MAAM,CAExD;AAED,wBAAsB,4BAA4B,CAChD,MAAM,EAAE,MAAM,EACd,UAAU,EAAE,MAAM,EAClB,aAAa,EAAE,MAAM,EACrB,QAAQ,EAAE,QAAQ,GACjB,OAAO,CAAC,wBAAwB,CAAC,CAkEnC;AAED,wBAAgB,gBAAgB,CAAC,QAAQ,EAAE,QAAQ,EAAE,mBAAmB,EAAE,UAAU,GAAG;IACrF,YAAY,EAAE,UAAU,CAAC;IACzB,gBAAgB,EAAE,UAAU,CAAC;IAC7B,aAAa,EAAE,MAAM,CAAC;CACvB,CAOA;AAED,wBAAgB,yBAAyB,CAAC,QAAQ,EAAE,QAAQ,EAAE,gBAAgB,EAAE,MAAM,EAAE,mBAAmB,EAAE,UAAU,GAAG,UAAU,CAUnI;AAED,wBAAgB,4BAA4B,CAAC,MAAM,EAAE;IACnD,mBAAmB,EAAE,UAAU,CAAC;IAChC,gBAAgB,EAAE,UAAU,CAAC;IAC7B,cAAc,EAAE,MAAM,CAAC;CACxB,GAAG,UAAU,CAoBb;AAED,wBAAgB,+BAA+B,CAAC,MAAM,EAAE;IACtD,gBAAgB,EAAE,QAAQ,CAAC,MAAM,CAAC,CAAC;IACnC,mBAAmB,EAAE,UAAU,CAAC;IAChC,gBAAgB,EAAE,gBAAgB,GAAG,IAAI,CAAC;IAC1C,cAAc,EAAE,MAAM,CAAC;CACxB,GAAG,IAAI,CAkBP"}
|