@ckb-ccc/core 1.0.0 → 1.0.1
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/CHANGELOG.md +8 -0
- package/dist/address/address.advanced.d.ts.map +1 -1
- package/dist/address/address.advanced.js +6 -2
- package/dist/bytes/index.d.ts +21 -0
- package/dist/bytes/index.d.ts.map +1 -1
- package/dist/bytes/index.js +31 -4
- package/dist/ckb/script.d.ts +1 -1
- package/dist/ckb/script.d.ts.map +1 -1
- package/dist/ckb/script.js +2 -4
- package/dist/ckb/transaction.d.ts +19 -12
- package/dist/ckb/transaction.d.ts.map +1 -1
- package/dist/ckb/transaction.js +23 -38
- package/dist/molecule/codec.d.ts +2 -0
- package/dist/molecule/codec.d.ts.map +1 -1
- package/dist/molecule/codec.js +51 -41
- package/dist/molecule/entity.d.ts +25 -4
- package/dist/molecule/entity.d.ts.map +1 -1
- package/dist/molecule/entity.js +22 -1
- package/dist/num/index.d.ts.map +1 -1
- package/dist/num/index.js +2 -2
- package/dist/signer/btc/verify.js +1 -1
- package/dist/signer/doge/verify.d.ts.map +1 -1
- package/dist/signer/doge/verify.js +3 -1
- package/dist.commonjs/address/address.advanced.d.ts.map +1 -1
- package/dist.commonjs/address/address.advanced.js +6 -2
- package/dist.commonjs/bytes/index.d.ts +21 -0
- package/dist.commonjs/bytes/index.d.ts.map +1 -1
- package/dist.commonjs/bytes/index.js +32 -4
- package/dist.commonjs/ckb/script.d.ts +1 -1
- package/dist.commonjs/ckb/script.d.ts.map +1 -1
- package/dist.commonjs/ckb/script.js +2 -4
- package/dist.commonjs/ckb/transaction.d.ts +19 -12
- package/dist.commonjs/ckb/transaction.d.ts.map +1 -1
- package/dist.commonjs/ckb/transaction.js +23 -38
- package/dist.commonjs/molecule/codec.d.ts +2 -0
- package/dist.commonjs/molecule/codec.d.ts.map +1 -1
- package/dist.commonjs/molecule/codec.js +50 -40
- package/dist.commonjs/molecule/entity.d.ts +25 -4
- package/dist.commonjs/molecule/entity.d.ts.map +1 -1
- package/dist.commonjs/molecule/entity.js +22 -1
- package/dist.commonjs/num/index.d.ts.map +1 -1
- package/dist.commonjs/num/index.js +2 -2
- package/dist.commonjs/signer/btc/verify.js +1 -1
- package/dist.commonjs/signer/doge/verify.d.ts.map +1 -1
- package/dist.commonjs/signer/doge/verify.js +3 -1
- package/package.json +1 -1
- package/src/address/address.advanced.ts +6 -2
- package/src/bytes/index.ts +36 -6
- package/src/ckb/script.ts +5 -7
- package/src/ckb/transaction.ts +43 -58
- package/src/molecule/codec.ts +73 -61
- package/src/molecule/entity.ts +25 -5
- package/src/num/index.ts +2 -5
- package/src/signer/btc/verify.ts +1 -1
- package/src/signer/doge/verify.ts +3 -1
package/CHANGELOG.md
CHANGED
|
@@ -1,5 +1,13 @@
|
|
|
1
1
|
# @ckb-ccc/core
|
|
2
2
|
|
|
3
|
+
## 1.0.1
|
|
4
|
+
|
|
5
|
+
### Patch Changes
|
|
6
|
+
|
|
7
|
+
- [#111](https://github.com/ckb-devrel/ccc/pull/111) [`719055b`](https://github.com/ckb-devrel/ccc/commit/719055b404f31b40362f51714b9f11c85b857581) Thanks [@Hanssen0](https://github.com/Hanssen0)! - fix: call stack overflow caused by spread operator
|
|
8
|
+
|
|
9
|
+
- [#109](https://github.com/ckb-devrel/ccc/pull/109) [`94caaca`](https://github.com/ckb-devrel/ccc/commit/94caaca11c63752a25282d42f51161c94397dec6) Thanks [@Hanssen0](https://github.com/Hanssen0)! - refactor: remove redundant code
|
|
10
|
+
|
|
3
11
|
## 1.0.0
|
|
4
12
|
|
|
5
13
|
### Major Changes
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"address.advanced.d.ts","sourceRoot":"","sources":["../../src/address/address.advanced.ts"],"names":[],"mappings":"AAEA,OAAO,EAAE,MAAM,EAAe,MAAM,oBAAoB,CAAC;AAEzD,OAAO,EAAE,KAAK,WAAW,EAAE,MAAM,YAAY,CAAC;AAE9C;;;;;;;;;;;;;;;GAeG;AAEH,wBAAgB,wBAAwB,CAAC,OAAO,EAAE,MAAM,GAAG;IACzD,MAAM,EAAE,MAAM,CAAC;IACf,MAAM,EAAE,aAAa,CAAC;IACtB,OAAO,EAAE,MAAM,EAAE,CAAC;CACnB,
|
|
1
|
+
{"version":3,"file":"address.advanced.d.ts","sourceRoot":"","sources":["../../src/address/address.advanced.ts"],"names":[],"mappings":"AAEA,OAAO,EAAE,MAAM,EAAe,MAAM,oBAAoB,CAAC;AAEzD,OAAO,EAAE,KAAK,WAAW,EAAE,MAAM,YAAY,CAAC;AAE9C;;;;;;;;;;;;;;;GAeG;AAEH,wBAAgB,wBAAwB,CAAC,OAAO,EAAE,MAAM,GAAG;IACzD,MAAM,EAAE,MAAM,CAAC;IACf,MAAM,EAAE,aAAa,CAAC;IACtB,OAAO,EAAE,MAAM,EAAE,CAAC;CACnB,CA+BA;AAED;;;;;;;;;;;;;;;;;GAiBG;AAEH,wBAAsB,kBAAkB,CACtC,MAAM,EAAE,MAAM,EACd,MAAM,EAAE,aAAa,EACrB,OAAO,EAAE,MAAM,EAAE,EACjB,MAAM,EAAE,MAAM,GACb,OAAO,CAAC,WAAW,CAAC,CAyEtB;AAED,oBAAY,aAAa;IACvB;;OAEG;IACH,IAAI,IAAO;IACX;;;OAGG;IACH,KAAK,IAAO;IACZ;;;OAGG;IACH,QAAQ,IAAO;IACf;;;OAGG;IACH,QAAQ,IAAO;CAChB;AAED,eAAO,MAAM,oBAAoB,OAAO,CAAC"}
|
|
@@ -22,7 +22,9 @@ export function addressPayloadFromString(address) {
|
|
|
22
22
|
// Try parse full format address
|
|
23
23
|
try {
|
|
24
24
|
const { words, prefix } = bech32m.decode(address, ADDRESS_BECH32_LIMIT);
|
|
25
|
-
const
|
|
25
|
+
const decoded = bech32m.fromWords(words);
|
|
26
|
+
const formatType = decoded[0];
|
|
27
|
+
const payload = decoded.slice(1);
|
|
26
28
|
if (formatType === AddressFormat.Full) {
|
|
27
29
|
return { prefix, format: AddressFormat.Full, payload };
|
|
28
30
|
}
|
|
@@ -31,7 +33,9 @@ export function addressPayloadFromString(address) {
|
|
|
31
33
|
// Try parse legacy 2019 format address
|
|
32
34
|
try {
|
|
33
35
|
const { prefix, words } = bech32.decode(address, ADDRESS_BECH32_LIMIT);
|
|
34
|
-
const
|
|
36
|
+
const decoded = bech32.fromWords(words);
|
|
37
|
+
const formatType = decoded[0];
|
|
38
|
+
const payload = decoded.slice(1);
|
|
35
39
|
if ([
|
|
36
40
|
AddressFormat.FullData,
|
|
37
41
|
AddressFormat.FullType,
|
package/dist/bytes/index.d.ts
CHANGED
|
@@ -7,6 +7,27 @@ export type Bytes = Uint8Array;
|
|
|
7
7
|
* @public
|
|
8
8
|
*/
|
|
9
9
|
export type BytesLike = string | Uint8Array | ArrayBuffer | ArrayLike<number>;
|
|
10
|
+
/**
|
|
11
|
+
* Concatenates multiple byte-like arrays to the first number array.
|
|
12
|
+
* @public
|
|
13
|
+
*
|
|
14
|
+
* @param result - The number array as result
|
|
15
|
+
* @param args - The byte-like arrays to concatenate.
|
|
16
|
+
* @returns The first number array
|
|
17
|
+
*
|
|
18
|
+
* @example
|
|
19
|
+
* ```typescript
|
|
20
|
+
* const concatenatedBytes = [1, 2];
|
|
21
|
+
* bytesConcatTo(
|
|
22
|
+
* concatenatedBytes
|
|
23
|
+
* new Uint8Array([3, 4]),
|
|
24
|
+
* "hello",
|
|
25
|
+
* [5, 6, 7]
|
|
26
|
+
* );
|
|
27
|
+
* console.log(concatenatedBytes); // Outputs [1, 2, 3, 4, /* bytes of "hello" *\/, 5, 6, 7]
|
|
28
|
+
* ```
|
|
29
|
+
*/
|
|
30
|
+
export declare function bytesConcatTo(result: number[], ...args: BytesLike[]): number[];
|
|
10
31
|
/**
|
|
11
32
|
* Concatenates multiple byte-like arrays into a single byte array.
|
|
12
33
|
* @public
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/bytes/index.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,iBAAiB,EAAE,MAAM,eAAe,CAAC;AAElD;;GAEG;AACH,MAAM,MAAM,KAAK,GAAG,UAAU,CAAC;AAC/B;;GAEG;AACH,MAAM,MAAM,SAAS,GAAG,MAAM,GAAG,UAAU,GAAG,WAAW,GAAG,SAAS,CAAC,MAAM,CAAC,CAAC;AAE9E;;;;;;;;;;;;;;;;;GAiBG;AAEH,wBAAgB,WAAW,CAAC,GAAG,IAAI,EAAE,SAAS,EAAE,GAAG,KAAK,
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/bytes/index.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,iBAAiB,EAAE,MAAM,eAAe,CAAC;AAElD;;GAEG;AACH,MAAM,MAAM,KAAK,GAAG,UAAU,CAAC;AAC/B;;GAEG;AACH,MAAM,MAAM,SAAS,GAAG,MAAM,GAAG,UAAU,GAAG,WAAW,GAAG,SAAS,CAAC,MAAM,CAAC,CAAC;AAE9E;;;;;;;;;;;;;;;;;;;GAmBG;AAEH,wBAAgB,aAAa,CAC3B,MAAM,EAAE,MAAM,EAAE,EAChB,GAAG,IAAI,EAAE,SAAS,EAAE,GACnB,MAAM,EAAE,CASV;AAED;;;;;;;;;;;;;;;;;GAiBG;AAEH,wBAAgB,WAAW,CAAC,GAAG,IAAI,EAAE,SAAS,EAAE,GAAG,KAAK,CAEvD;AAED;;;;;;;;;;;;;;;;GAgBG;AAEH,wBAAgB,OAAO,CAAC,GAAG,EAAE,SAAS,EAAE,QAAQ,EAAE,iBAAiB,GAAG,MAAM,CAE3E;AAED;;;;;;;;;;;;;;;;;;;;;;;;GAwBG;AAEH,wBAAgB,SAAS,CACvB,KAAK,EAAE,SAAS,EAChB,QAAQ,CAAC,EAAE,iBAAiB,GAC3B,KAAK,CA4BP;AAED;;;;;;;;;;;;GAYG;AACH,wBAAgB,OAAO,CAAC,CAAC,EAAE,SAAS,EAAE,CAAC,EAAE,SAAS,GAAG,OAAO,CAmB3D"}
|
package/dist/bytes/index.js
CHANGED
|
@@ -1,4 +1,34 @@
|
|
|
1
1
|
import { Buffer } from "buffer/index.js";
|
|
2
|
+
/**
|
|
3
|
+
* Concatenates multiple byte-like arrays to the first number array.
|
|
4
|
+
* @public
|
|
5
|
+
*
|
|
6
|
+
* @param result - The number array as result
|
|
7
|
+
* @param args - The byte-like arrays to concatenate.
|
|
8
|
+
* @returns The first number array
|
|
9
|
+
*
|
|
10
|
+
* @example
|
|
11
|
+
* ```typescript
|
|
12
|
+
* const concatenatedBytes = [1, 2];
|
|
13
|
+
* bytesConcatTo(
|
|
14
|
+
* concatenatedBytes
|
|
15
|
+
* new Uint8Array([3, 4]),
|
|
16
|
+
* "hello",
|
|
17
|
+
* [5, 6, 7]
|
|
18
|
+
* );
|
|
19
|
+
* console.log(concatenatedBytes); // Outputs [1, 2, 3, 4, /* bytes of "hello" *\/, 5, 6, 7]
|
|
20
|
+
* ```
|
|
21
|
+
*/
|
|
22
|
+
export function bytesConcatTo(result, ...args) {
|
|
23
|
+
return args.reduce((acc, v) => {
|
|
24
|
+
const bytes = bytesFrom(v);
|
|
25
|
+
// Spread operator will cause call stack size exceeded
|
|
26
|
+
for (const byte of bytes) {
|
|
27
|
+
result.push(byte);
|
|
28
|
+
}
|
|
29
|
+
return acc;
|
|
30
|
+
}, result);
|
|
31
|
+
}
|
|
2
32
|
/**
|
|
3
33
|
* Concatenates multiple byte-like arrays into a single byte array.
|
|
4
34
|
* @public
|
|
@@ -18,10 +48,7 @@ import { Buffer } from "buffer/index.js";
|
|
|
18
48
|
* ```
|
|
19
49
|
*/
|
|
20
50
|
export function bytesConcat(...args) {
|
|
21
|
-
return new Uint8Array(
|
|
22
|
-
acc.push(...bytesFrom(v));
|
|
23
|
-
return acc;
|
|
24
|
-
}, []));
|
|
51
|
+
return new Uint8Array(bytesConcatTo([], ...args));
|
|
25
52
|
}
|
|
26
53
|
/**
|
|
27
54
|
* Converts a byte-like value to a string using the specified encoding.
|
package/dist/ckb/script.d.ts
CHANGED
package/dist/ckb/script.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"script.d.ts","sourceRoot":"","sources":["../../src/ckb/script.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,KAAK,EAAE,SAAS,EAAa,MAAM,mBAAmB,CAAC;AAChE,OAAO,EAAE,MAAM,EAAE,WAAW,EAAE,MAAM,oBAAoB,CAAC;AACzD,OAAO,EAAE,GAAG,EAAE,OAAO,EAAW,MAAM,iBAAiB,CAAC;AACxD,OAAO,EAAE,GAAG,EAAE,MAAM,sBAAsB,CAAC;AAO3C,eAAO,MAAM,aAAa,EAAE,GAAG,CAAC,KAAK,CAAC,YAAY,EAAE,QAAQ,CAI1D,CAAC;AAEH;;GAEG;AACH,MAAM,MAAM,YAAY,GAAG,MAAM,GAAG,MAAM,GAAG,MAAM,CAAC;AACpD;;GAEG;AACH,MAAM,MAAM,QAAQ,GAAG,MAAM,GAAG,MAAM,GAAG,OAAO,GAAG,OAAO,CAAC;AAE3D;;;;;;;;;;;;;;GAcG;AAEH,wBAAgB,YAAY,CAAC,GAAG,EAAE,YAAY,GAAG,QAAQ,CAmBxD;AAED;;;;;;;;;;;GAWG;AAEH,wBAAgB,eAAe,CAAC,QAAQ,EAAE,YAAY,GAAG,KAAK,CAE7D;AAED;;;;;;;;;;;;;GAaG;AAEH,wBAAgB,iBAAiB,CAAC,KAAK,EAAE,SAAS,GAAG,QAAQ,CAE5D;AAED;;GAEG;AACH,MAAM,MAAM,UAAU,GAAG;IACvB,QAAQ,EAAE,SAAS,CAAC;IACpB,QAAQ,EAAE,YAAY,CAAC;IACvB,IAAI,EAAE,SAAS,CAAC;CACjB,CAAC;;;;;;;;;;;;;AACF;;GAEG;AACH,
|
|
1
|
+
{"version":3,"file":"script.d.ts","sourceRoot":"","sources":["../../src/ckb/script.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,KAAK,EAAE,SAAS,EAAa,MAAM,mBAAmB,CAAC;AAChE,OAAO,EAAE,MAAM,EAAE,WAAW,EAAE,MAAM,oBAAoB,CAAC;AACzD,OAAO,EAAE,GAAG,EAAE,OAAO,EAAW,MAAM,iBAAiB,CAAC;AACxD,OAAO,EAAE,GAAG,EAAE,MAAM,sBAAsB,CAAC;AAO3C,eAAO,MAAM,aAAa,EAAE,GAAG,CAAC,KAAK,CAAC,YAAY,EAAE,QAAQ,CAI1D,CAAC;AAEH;;GAEG;AACH,MAAM,MAAM,YAAY,GAAG,MAAM,GAAG,MAAM,GAAG,MAAM,CAAC;AACpD;;GAEG;AACH,MAAM,MAAM,QAAQ,GAAG,MAAM,GAAG,MAAM,GAAG,OAAO,GAAG,OAAO,CAAC;AAE3D;;;;;;;;;;;;;;GAcG;AAEH,wBAAgB,YAAY,CAAC,GAAG,EAAE,YAAY,GAAG,QAAQ,CAmBxD;AAED;;;;;;;;;;;GAWG;AAEH,wBAAgB,eAAe,CAAC,QAAQ,EAAE,YAAY,GAAG,KAAK,CAE7D;AAED;;;;;;;;;;;;;GAaG;AAEH,wBAAgB,iBAAiB,CAAC,KAAK,EAAE,SAAS,GAAG,QAAQ,CAE5D;AAED;;GAEG;AACH,MAAM,MAAM,UAAU,GAAG;IACvB,QAAQ,EAAE,SAAS,CAAC;IACpB,QAAQ,EAAE,YAAY,CAAC;IACvB,IAAI,EAAE,SAAS,CAAC;CACjB,CAAC;;;;;;;;;;;;;AACF;;GAEG;AACH,qBAOa,MAAO,SAAQ,WAAqC;IAStD,QAAQ,EAAE,GAAG;IACb,QAAQ,EAAE,QAAQ;IAClB,IAAI,EAAE,GAAG;IAVlB;;;;;;OAMG;gBAEM,QAAQ,EAAE,GAAG,EACb,QAAQ,EAAE,QAAQ,EAClB,IAAI,EAAE,GAAG;IAKlB,IAAI,YAAY,IAAI,MAAM,CAEzB;IAED;;;;;;;;;OASG;IACH,KAAK,IAAI,MAAM;IAIf;;;;;;;;;;;;;;OAcG;IAEH,MAAM,CAAC,IAAI,CAAC,MAAM,EAAE,UAAU,GAAG,MAAM;IAYvC;;;;;;;;;;;;;;;;OAgBG;WAEU,eAAe,CAC1B,MAAM,EAAE,MAAM,EACd,WAAW,EAAE,WAAW,EACxB,IAAI,EAAE,OAAO,GACZ,OAAO,CAAC,MAAM,CAAC;CAUnB;AAED,eAAO,MAAM,SAAS,8DAAqB,CAAC"}
|
package/dist/ckb/script.js
CHANGED
|
@@ -156,13 +156,11 @@ let Script = Script_1 = class Script extends mol.Entity.Base() {
|
|
|
156
156
|
}
|
|
157
157
|
};
|
|
158
158
|
Script = Script_1 = __decorate([
|
|
159
|
-
mol.codec(mol
|
|
160
|
-
.table({
|
|
159
|
+
mol.codec(mol.table({
|
|
161
160
|
codeHash: mol.Byte32,
|
|
162
161
|
hashType: HashTypeCodec,
|
|
163
162
|
args: mol.Bytes,
|
|
164
|
-
})
|
|
165
|
-
.map({ outMap: (decoded) => Script.from(decoded) }))
|
|
163
|
+
}))
|
|
166
164
|
], Script);
|
|
167
165
|
export { Script };
|
|
168
166
|
export const ScriptOpt = mol.option(Script);
|
|
@@ -1,13 +1,13 @@
|
|
|
1
|
-
import { ClientCollectableSearchKeyFilterLike } from "../advancedBarrel.js";
|
|
2
1
|
import { Bytes, BytesLike } from "../bytes/index.js";
|
|
3
|
-
import {
|
|
2
|
+
import type { ClientCollectableSearchKeyFilterLike } from "../client/clientTypes.advanced.js";
|
|
3
|
+
import type { CellDepInfoLike, Client, KnownScript } from "../client/index.js";
|
|
4
4
|
import { Hasher } from "../hasher/index.js";
|
|
5
5
|
import { Hex, HexLike } from "../hex/index.js";
|
|
6
6
|
import { mol } from "../molecule/index.js";
|
|
7
7
|
import { Num, NumLike } from "../num/index.js";
|
|
8
|
-
import { Signer } from "../signer/index.js";
|
|
8
|
+
import type { Signer } from "../signer/index.js";
|
|
9
9
|
import { Script, ScriptLike } from "./script.js";
|
|
10
|
-
import { LumosTransactionSkeletonType } from "./transactionLumos.js";
|
|
10
|
+
import type { LumosTransactionSkeletonType } from "./transactionLumos.js";
|
|
11
11
|
export declare const DepTypeCodec: mol.Codec<DepTypeLike, DepType>;
|
|
12
12
|
/**
|
|
13
13
|
* @public
|
|
@@ -71,7 +71,7 @@ export type OutPointLike = {
|
|
|
71
71
|
declare const OutPoint_base: (abstract new () => {
|
|
72
72
|
toBytes(): Bytes;
|
|
73
73
|
clone(): OutPoint;
|
|
74
|
-
eq(other: OutPointLike
|
|
74
|
+
eq(other: OutPointLike): boolean;
|
|
75
75
|
hash(): Hex;
|
|
76
76
|
}) & {
|
|
77
77
|
byteLength?: number;
|
|
@@ -117,7 +117,7 @@ export type CellOutputLike = {
|
|
|
117
117
|
declare const CellOutput_base: (abstract new () => {
|
|
118
118
|
toBytes(): Bytes;
|
|
119
119
|
clone(): CellOutput;
|
|
120
|
-
eq(other:
|
|
120
|
+
eq(other: CellOutputLike): boolean;
|
|
121
121
|
hash(): Hex;
|
|
122
122
|
}) & {
|
|
123
123
|
byteLength?: number;
|
|
@@ -233,7 +233,7 @@ export type SinceLike = {
|
|
|
233
233
|
declare const Since_base: (abstract new () => {
|
|
234
234
|
toBytes(): Bytes;
|
|
235
235
|
clone(): Since;
|
|
236
|
-
eq(other: SinceLike
|
|
236
|
+
eq(other: SinceLike): boolean;
|
|
237
237
|
hash(): Hex;
|
|
238
238
|
}) & {
|
|
239
239
|
byteLength?: number;
|
|
@@ -316,7 +316,7 @@ export type CellInputLike = {
|
|
|
316
316
|
declare const CellInput_base: (abstract new () => {
|
|
317
317
|
toBytes(): Bytes;
|
|
318
318
|
clone(): CellInput;
|
|
319
|
-
eq(other:
|
|
319
|
+
eq(other: CellInputLike): boolean;
|
|
320
320
|
hash(): Hex;
|
|
321
321
|
}) & {
|
|
322
322
|
byteLength?: number;
|
|
@@ -380,7 +380,7 @@ export type CellDepLike = {
|
|
|
380
380
|
declare const CellDep_base: (abstract new () => {
|
|
381
381
|
toBytes(): Bytes;
|
|
382
382
|
clone(): CellDep;
|
|
383
|
-
eq(other: CellDepLike
|
|
383
|
+
eq(other: CellDepLike): boolean;
|
|
384
384
|
hash(): Hex;
|
|
385
385
|
}) & {
|
|
386
386
|
byteLength?: number;
|
|
@@ -441,7 +441,7 @@ export type WitnessArgsLike = {
|
|
|
441
441
|
declare const WitnessArgs_base: (abstract new () => {
|
|
442
442
|
toBytes(): Bytes;
|
|
443
443
|
clone(): WitnessArgs;
|
|
444
|
-
eq(other:
|
|
444
|
+
eq(other: WitnessArgsLike): boolean;
|
|
445
445
|
hash(): Hex;
|
|
446
446
|
}) & {
|
|
447
447
|
byteLength?: number;
|
|
@@ -493,7 +493,14 @@ export declare const RawTransaction: mol.Codec<mol.EncodableRecord<{
|
|
|
493
493
|
inputs: mol.Codec<CellInputLike[], CellInput[]>;
|
|
494
494
|
outputs: mol.Codec<CellOutputLike[], CellOutput[]>;
|
|
495
495
|
outputsData: mol.Codec<BytesLike[], `0x${string}`[]>;
|
|
496
|
-
}>,
|
|
496
|
+
}>, mol.DecodedRecord<{
|
|
497
|
+
version: mol.Codec<NumLike, number>;
|
|
498
|
+
cellDeps: mol.Codec<CellDepLike[], CellDep[]>;
|
|
499
|
+
headerDeps: mol.Codec<BytesLike[], `0x${string}`[]>;
|
|
500
|
+
inputs: mol.Codec<CellInputLike[], CellInput[]>;
|
|
501
|
+
outputs: mol.Codec<CellOutputLike[], CellOutput[]>;
|
|
502
|
+
outputsData: mol.Codec<BytesLike[], `0x${string}`[]>;
|
|
503
|
+
}>>;
|
|
497
504
|
/**
|
|
498
505
|
* @public
|
|
499
506
|
*/
|
|
@@ -509,7 +516,7 @@ export type TransactionLike = {
|
|
|
509
516
|
declare const Transaction_base: (abstract new () => {
|
|
510
517
|
toBytes(): Bytes;
|
|
511
518
|
clone(): Transaction;
|
|
512
|
-
eq(other: TransactionLike
|
|
519
|
+
eq(other: TransactionLike): boolean;
|
|
513
520
|
hash(): Hex;
|
|
514
521
|
}) & {
|
|
515
522
|
byteLength?: number;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"transaction.d.ts","sourceRoot":"","sources":["../../src/ckb/transaction.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,
|
|
1
|
+
{"version":3,"file":"transaction.d.ts","sourceRoot":"","sources":["../../src/ckb/transaction.ts"],"names":[],"mappings":"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"}
|
package/dist/ckb/transaction.js
CHANGED
|
@@ -115,12 +115,10 @@ let OutPoint = OutPoint_1 = class OutPoint extends mol.Entity.Base() {
|
|
|
115
115
|
}
|
|
116
116
|
};
|
|
117
117
|
OutPoint = OutPoint_1 = __decorate([
|
|
118
|
-
mol.codec(mol
|
|
119
|
-
.struct({
|
|
118
|
+
mol.codec(mol.struct({
|
|
120
119
|
txHash: mol.Byte32,
|
|
121
120
|
index: mol.Uint32,
|
|
122
|
-
})
|
|
123
|
-
.map({ outMap: (decoded) => OutPoint.from(decoded) }))
|
|
121
|
+
}))
|
|
124
122
|
], OutPoint);
|
|
125
123
|
export { OutPoint };
|
|
126
124
|
/**
|
|
@@ -166,13 +164,11 @@ let CellOutput = CellOutput_1 = class CellOutput extends mol.Entity.Base() {
|
|
|
166
164
|
}
|
|
167
165
|
};
|
|
168
166
|
CellOutput = CellOutput_1 = __decorate([
|
|
169
|
-
mol.codec(mol
|
|
170
|
-
.table({
|
|
167
|
+
mol.codec(mol.table({
|
|
171
168
|
capacity: mol.Uint64,
|
|
172
169
|
lock: Script,
|
|
173
170
|
type: ScriptOpt,
|
|
174
|
-
})
|
|
175
|
-
.map({ outMap: (decoded) => CellOutput.from(decoded) }))
|
|
171
|
+
}))
|
|
176
172
|
], CellOutput);
|
|
177
173
|
export { CellOutput };
|
|
178
174
|
export const CellOutputVec = mol.vector(CellOutput);
|
|
@@ -333,10 +329,7 @@ let Since = Since_1 = class Since extends mol.Entity.Base() {
|
|
|
333
329
|
}
|
|
334
330
|
};
|
|
335
331
|
Since = Since_1 = __decorate([
|
|
336
|
-
mol.codec(mol.Uint64.
|
|
337
|
-
inMap: (encodable) => Since.from(encodable).toNum(),
|
|
338
|
-
outMap: (decoded) => Since.from(decoded),
|
|
339
|
-
}))
|
|
332
|
+
mol.codec(mol.Uint64.mapIn((encodable) => Since.from(encodable).toNum()))
|
|
340
333
|
], Since);
|
|
341
334
|
export { Since };
|
|
342
335
|
/**
|
|
@@ -406,10 +399,10 @@ CellInput = CellInput_1 = __decorate([
|
|
|
406
399
|
since: Since,
|
|
407
400
|
previousOutput: OutPoint,
|
|
408
401
|
})
|
|
409
|
-
.
|
|
410
|
-
|
|
411
|
-
|
|
412
|
-
}))
|
|
402
|
+
.mapIn((encodable) => ({
|
|
403
|
+
...encodable,
|
|
404
|
+
since: encodable.since ?? 0,
|
|
405
|
+
})))
|
|
413
406
|
], CellInput);
|
|
414
407
|
export { CellInput };
|
|
415
408
|
export const CellInputVec = mol.vector(CellInput);
|
|
@@ -463,12 +456,10 @@ let CellDep = CellDep_1 = class CellDep extends mol.Entity.Base() {
|
|
|
463
456
|
}
|
|
464
457
|
};
|
|
465
458
|
CellDep = CellDep_1 = __decorate([
|
|
466
|
-
mol.codec(mol
|
|
467
|
-
.struct({
|
|
459
|
+
mol.codec(mol.struct({
|
|
468
460
|
outPoint: OutPoint,
|
|
469
461
|
depType: DepTypeCodec,
|
|
470
|
-
})
|
|
471
|
-
.map({ outMap: (decoded) => CellDep.from(decoded) }))
|
|
462
|
+
}))
|
|
472
463
|
], CellDep);
|
|
473
464
|
export { CellDep };
|
|
474
465
|
export const CellDepVec = mol.vector(CellDep);
|
|
@@ -512,13 +503,11 @@ let WitnessArgs = WitnessArgs_1 = class WitnessArgs extends mol.Entity.Base() {
|
|
|
512
503
|
}
|
|
513
504
|
};
|
|
514
505
|
WitnessArgs = WitnessArgs_1 = __decorate([
|
|
515
|
-
mol.codec(mol
|
|
516
|
-
.table({
|
|
506
|
+
mol.codec(mol.table({
|
|
517
507
|
lock: mol.BytesOpt,
|
|
518
508
|
inputType: mol.BytesOpt,
|
|
519
509
|
outputType: mol.BytesOpt,
|
|
520
|
-
})
|
|
521
|
-
.map({ outMap: (decoded) => WitnessArgs.from(decoded) }))
|
|
510
|
+
}))
|
|
522
511
|
], WitnessArgs);
|
|
523
512
|
export { WitnessArgs };
|
|
524
513
|
/**
|
|
@@ -531,16 +520,14 @@ export function udtBalanceFrom(dataLike) {
|
|
|
531
520
|
}
|
|
532
521
|
return numFromBytes(data);
|
|
533
522
|
}
|
|
534
|
-
export const RawTransaction = mol
|
|
535
|
-
.table({
|
|
523
|
+
export const RawTransaction = mol.table({
|
|
536
524
|
version: mol.Uint32,
|
|
537
525
|
cellDeps: CellDepVec,
|
|
538
526
|
headerDeps: mol.Byte32Vec,
|
|
539
527
|
inputs: CellInputVec,
|
|
540
528
|
outputs: CellOutputVec,
|
|
541
529
|
outputsData: mol.BytesVec,
|
|
542
|
-
})
|
|
543
|
-
.map({ outMap: (decoded) => Transaction.from(decoded) });
|
|
530
|
+
});
|
|
544
531
|
/**
|
|
545
532
|
* @public
|
|
546
533
|
*/
|
|
@@ -1223,15 +1210,13 @@ Transaction = Transaction_1 = __decorate([
|
|
|
1223
1210
|
raw: RawTransaction,
|
|
1224
1211
|
witnesses: mol.BytesVec,
|
|
1225
1212
|
})
|
|
1226
|
-
.
|
|
1227
|
-
|
|
1228
|
-
|
|
1229
|
-
|
|
1230
|
-
|
|
1231
|
-
|
|
1232
|
-
|
|
1233
|
-
}
|
|
1234
|
-
outMap: (tx) => Transaction.from({ ...tx.raw, witnesses: tx.witnesses }),
|
|
1235
|
-
}))
|
|
1213
|
+
.mapIn((txLike) => {
|
|
1214
|
+
const tx = Transaction.from(txLike);
|
|
1215
|
+
return {
|
|
1216
|
+
raw: tx,
|
|
1217
|
+
witnesses: tx.witnesses,
|
|
1218
|
+
};
|
|
1219
|
+
})
|
|
1220
|
+
.mapOut((tx) => Transaction.from({ ...tx.raw, witnesses: tx.witnesses })))
|
|
1236
1221
|
], Transaction);
|
|
1237
1222
|
export { Transaction };
|
package/dist/molecule/codec.d.ts
CHANGED
|
@@ -15,6 +15,8 @@ export declare class Codec<Encodable, Decoded = Encodable> {
|
|
|
15
15
|
inMap?: (encodable: NewEncodable) => Encodable;
|
|
16
16
|
outMap?: (decoded: Decoded) => NewDecoded;
|
|
17
17
|
}): Codec<NewEncodable, NewDecoded>;
|
|
18
|
+
mapIn<NewEncodable>(map: (encodable: NewEncodable) => Encodable): Codec<NewEncodable, Decoded>;
|
|
19
|
+
mapOut<NewDecoded>(map: (decoded: Decoded) => NewDecoded): Codec<Encodable, NewDecoded>;
|
|
18
20
|
}
|
|
19
21
|
export type EncodableType<T extends CodecLike<any, any>> = T extends CodecLike<infer Encodable, unknown> ? Encodable : never;
|
|
20
22
|
export type DecodedType<T extends CodecLike<any, any>> = T extends CodecLike<any, infer Decoded> ? Decoded : never;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"codec.d.ts","sourceRoot":"","sources":["../../src/molecule/codec.ts"],"names":[],"mappings":"AAEA,OAAO,
|
|
1
|
+
{"version":3,"file":"codec.d.ts","sourceRoot":"","sources":["../../src/molecule/codec.ts"],"names":[],"mappings":"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"}
|
package/dist/molecule/codec.js
CHANGED
|
@@ -1,5 +1,5 @@
|
|
|
1
1
|
/* eslint-disable @typescript-eslint/no-explicit-any */
|
|
2
|
-
import { bytesConcat, bytesFrom } from "../bytes/index.js";
|
|
2
|
+
import { bytesConcat, bytesConcatTo, bytesFrom, } from "../bytes/index.js";
|
|
3
3
|
import { numBeFromBytes, numBeToBytes, numFromBytes, numToBytes, } from "../num/index.js";
|
|
4
4
|
export class Codec {
|
|
5
5
|
constructor(encode, decode, byteLength) {
|
|
@@ -19,6 +19,12 @@ export class Codec {
|
|
|
19
19
|
: this.decode(buffer)),
|
|
20
20
|
});
|
|
21
21
|
}
|
|
22
|
+
mapIn(map) {
|
|
23
|
+
return this.map({ inMap: map });
|
|
24
|
+
}
|
|
25
|
+
mapOut(map) {
|
|
26
|
+
return this.map({ outMap: map });
|
|
27
|
+
}
|
|
22
28
|
}
|
|
23
29
|
function uint32To(numLike) {
|
|
24
30
|
return numToBytes(numLike, 4);
|
|
@@ -38,7 +44,12 @@ export function fixedItemVec(itemCodec) {
|
|
|
38
44
|
return Codec.from({
|
|
39
45
|
encode(userDefinedItems) {
|
|
40
46
|
try {
|
|
41
|
-
|
|
47
|
+
const concatted = [];
|
|
48
|
+
bytesConcatTo(concatted, uint32To(userDefinedItems.length));
|
|
49
|
+
for (const item of userDefinedItems) {
|
|
50
|
+
bytesConcatTo(concatted, itemCodec.encode(item));
|
|
51
|
+
}
|
|
52
|
+
return bytesFrom(concatted);
|
|
42
53
|
}
|
|
43
54
|
catch (e) {
|
|
44
55
|
throw new Error(`fixedItemVec(${e?.toString()})`);
|
|
@@ -75,21 +86,17 @@ export function dynItemVec(itemCodec) {
|
|
|
75
86
|
return Codec.from({
|
|
76
87
|
encode(userDefinedItems) {
|
|
77
88
|
try {
|
|
78
|
-
|
|
79
|
-
|
|
80
|
-
|
|
81
|
-
|
|
82
|
-
|
|
83
|
-
|
|
84
|
-
|
|
85
|
-
|
|
86
|
-
}
|
|
87
|
-
|
|
88
|
-
|
|
89
|
-
offset: 4 + userDefinedItems.length * 4,
|
|
90
|
-
});
|
|
91
|
-
const packedTotalSize = uint32To(encoded.header.byteLength + encoded.body.byteLength + 4);
|
|
92
|
-
return bytesConcat(packedTotalSize, encoded.header, encoded.body);
|
|
89
|
+
let offset = 4 + userDefinedItems.length * 4;
|
|
90
|
+
const header = [];
|
|
91
|
+
const body = [];
|
|
92
|
+
for (const item of userDefinedItems) {
|
|
93
|
+
const encoded = itemCodec.encode(item);
|
|
94
|
+
bytesConcatTo(header, uint32To(offset));
|
|
95
|
+
bytesConcatTo(body, encoded);
|
|
96
|
+
offset += encoded.byteLength;
|
|
97
|
+
}
|
|
98
|
+
const packedTotalSize = uint32To(header.length + body.length + 4);
|
|
99
|
+
return bytesConcat(packedTotalSize, header, body);
|
|
93
100
|
}
|
|
94
101
|
catch (e) {
|
|
95
102
|
throw new Error(`dynItemVec(${e?.toString()})`);
|
|
@@ -213,26 +220,21 @@ export function table(codecLayout) {
|
|
|
213
220
|
const keys = Object.keys(codecLayout);
|
|
214
221
|
return Codec.from({
|
|
215
222
|
encode(object) {
|
|
216
|
-
|
|
217
|
-
const
|
|
223
|
+
let offset = 4 + keys.length * 4;
|
|
224
|
+
const header = [];
|
|
225
|
+
const body = [];
|
|
226
|
+
for (const key of keys) {
|
|
218
227
|
try {
|
|
219
|
-
const
|
|
220
|
-
|
|
221
|
-
|
|
222
|
-
|
|
223
|
-
body: bytesConcat(result.body, encodedItem),
|
|
224
|
-
offset: result.offset + bytesFrom(encodedItem).byteLength,
|
|
225
|
-
};
|
|
228
|
+
const encoded = codecLayout[key].encode(object[key]);
|
|
229
|
+
bytesConcatTo(header, uint32To(offset));
|
|
230
|
+
bytesConcatTo(body, encoded);
|
|
231
|
+
offset += encoded.byteLength;
|
|
226
232
|
}
|
|
227
233
|
catch (e) {
|
|
228
234
|
throw new Error(`table.${key}(${e?.toString()})`);
|
|
229
235
|
}
|
|
230
|
-
}
|
|
231
|
-
|
|
232
|
-
body: bytesFrom([]),
|
|
233
|
-
offset: headerLength,
|
|
234
|
-
});
|
|
235
|
-
const packedTotalSize = uint32To(header.byteLength + body.byteLength + 4);
|
|
236
|
+
}
|
|
237
|
+
const packedTotalSize = uint32To(header.length + body.length + 4);
|
|
236
238
|
return bytesConcat(packedTotalSize, header, body);
|
|
237
239
|
},
|
|
238
240
|
decode(buffer) {
|
|
@@ -333,22 +335,26 @@ export function union(codecLayout, fields) {
|
|
|
333
335
|
*/
|
|
334
336
|
export function struct(codecLayout) {
|
|
335
337
|
const codecArray = Object.values(codecLayout);
|
|
336
|
-
if (codecArray.some((codec) => codec.byteLength === undefined)) {
|
|
337
|
-
throw new Error("struct: all fields must be fixed-size");
|
|
338
|
-
}
|
|
339
338
|
const keys = Object.keys(codecLayout);
|
|
340
339
|
return Codec.from({
|
|
341
|
-
byteLength: codecArray.reduce((
|
|
340
|
+
byteLength: codecArray.reduce((acc, codec) => {
|
|
341
|
+
if (codec.byteLength === undefined) {
|
|
342
|
+
throw new Error("struct: all fields must be fixed-size");
|
|
343
|
+
}
|
|
344
|
+
return acc + codec.byteLength;
|
|
345
|
+
}, 0),
|
|
342
346
|
encode(object) {
|
|
343
|
-
|
|
347
|
+
const bytes = [];
|
|
348
|
+
for (const key of keys) {
|
|
344
349
|
try {
|
|
345
|
-
const
|
|
346
|
-
|
|
350
|
+
const encoded = codecLayout[key].encode(object[key]);
|
|
351
|
+
bytesConcatTo(bytes, encoded);
|
|
347
352
|
}
|
|
348
353
|
catch (e) {
|
|
349
354
|
throw new Error(`struct.${key}(${e?.toString()})`);
|
|
350
355
|
}
|
|
351
|
-
}
|
|
356
|
+
}
|
|
357
|
+
return bytesFrom(bytes);
|
|
352
358
|
},
|
|
353
359
|
decode(buffer) {
|
|
354
360
|
const value = bytesFrom(buffer);
|
|
@@ -384,7 +390,11 @@ export function array(itemCodec, itemCount) {
|
|
|
384
390
|
byteLength,
|
|
385
391
|
encode(items) {
|
|
386
392
|
try {
|
|
387
|
-
|
|
393
|
+
const bytes = [];
|
|
394
|
+
for (const item of items) {
|
|
395
|
+
bytesConcatTo(bytes, itemCodec.encode(item));
|
|
396
|
+
}
|
|
397
|
+
return bytesFrom(bytes);
|
|
388
398
|
}
|
|
389
399
|
catch (e) {
|
|
390
400
|
throw new Error(`array(${e?.toString()})`);
|