@ckb-ccc/core 0.0.4-alpha.8 → 0.0.4

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.
Files changed (165) hide show
  1. package/dist/signer/btc/signerBtcPublicKeyReadonly.d.ts +12 -0
  2. package/dist/signer/btc/signerBtcPublicKeyReadonly.d.ts.map +1 -1
  3. package/dist/signer/btc/signerBtcPublicKeyReadonly.js +16 -0
  4. package/dist/signer/ckb/signerCkbScriptReadonly.d.ts +12 -0
  5. package/dist/signer/ckb/signerCkbScriptReadonly.d.ts.map +1 -1
  6. package/dist/signer/ckb/signerCkbScriptReadonly.js +16 -0
  7. package/dist/signer/evm/signerEvm.d.ts +5 -1
  8. package/dist/signer/evm/signerEvm.d.ts.map +1 -1
  9. package/dist/signer/evm/signerEvm.js +20 -6
  10. package/dist/signer/evm/signerEvmAddressReadonly.d.ts +13 -1
  11. package/dist/signer/evm/signerEvmAddressReadonly.d.ts.map +1 -1
  12. package/dist/signer/evm/signerEvmAddressReadonly.js +16 -0
  13. package/dist/signer/helpers.d.ts.map +1 -1
  14. package/dist/signer/helpers.js +3 -2
  15. package/dist/signer/signer.d.ts +16 -4
  16. package/dist/signer/signer.d.ts.map +1 -1
  17. package/dist/signer/signer.js +5 -2
  18. package/dist.commonjs/address/address.advanced.d.ts +65 -0
  19. package/dist.commonjs/address/address.advanced.d.ts.map +1 -0
  20. package/dist.commonjs/address/address.advanced.js +149 -0
  21. package/dist.commonjs/address/advanced.d.ts +2 -0
  22. package/dist.commonjs/address/advanced.d.ts.map +1 -0
  23. package/dist.commonjs/address/advanced.js +17 -0
  24. package/dist.commonjs/address/index.d.ts +54 -0
  25. package/dist.commonjs/address/index.d.ts.map +1 -0
  26. package/dist.commonjs/address/index.js +84 -0
  27. package/dist.commonjs/advanced.d.ts +3 -0
  28. package/dist.commonjs/advanced.d.ts.map +1 -0
  29. package/dist.commonjs/advanced.js +31 -0
  30. package/dist.commonjs/advancedBarrel.d.ts +5 -0
  31. package/dist.commonjs/advancedBarrel.d.ts.map +1 -0
  32. package/dist.commonjs/advancedBarrel.js +20 -0
  33. package/dist.commonjs/barrel.d.ts +11 -0
  34. package/dist.commonjs/barrel.d.ts.map +1 -0
  35. package/dist.commonjs/barrel.js +26 -0
  36. package/dist.commonjs/bytes/advanced.d.ts +5 -0
  37. package/dist.commonjs/bytes/advanced.d.ts.map +1 -0
  38. package/dist.commonjs/bytes/advanced.js +2 -0
  39. package/dist.commonjs/bytes/index.d.ts +64 -0
  40. package/dist.commonjs/bytes/index.d.ts.map +1 -0
  41. package/dist.commonjs/bytes/index.js +97 -0
  42. package/dist.commonjs/ckb/advanced.d.ts +4 -0
  43. package/dist.commonjs/ckb/advanced.d.ts.map +1 -0
  44. package/dist.commonjs/ckb/advanced.js +32 -0
  45. package/dist.commonjs/ckb/index.d.ts +3 -0
  46. package/dist.commonjs/ckb/index.d.ts.map +1 -0
  47. package/dist.commonjs/ckb/index.js +18 -0
  48. package/dist.commonjs/ckb/molecule.advanced/generated.d.ts +355 -0
  49. package/dist.commonjs/ckb/molecule.advanced/generated.d.ts.map +1 -0
  50. package/dist.commonjs/ckb/molecule.advanced/generated.js +1536 -0
  51. package/dist.commonjs/ckb/molecule.advanced/index.d.ts +6 -0
  52. package/dist.commonjs/ckb/molecule.advanced/index.d.ts.map +1 -0
  53. package/dist.commonjs/ckb/molecule.advanced/index.js +25 -0
  54. package/dist.commonjs/ckb/script.advanced.d.ts +5 -0
  55. package/dist.commonjs/ckb/script.advanced.d.ts.map +1 -0
  56. package/dist.commonjs/ckb/script.advanced.js +16 -0
  57. package/dist.commonjs/ckb/script.d.ts +126 -0
  58. package/dist.commonjs/ckb/script.d.ts.map +1 -0
  59. package/dist.commonjs/ckb/script.js +188 -0
  60. package/dist.commonjs/ckb/transaction.advanced.d.ts +5 -0
  61. package/dist.commonjs/ckb/transaction.advanced.d.ts.map +1 -0
  62. package/dist.commonjs/ckb/transaction.advanced.js +12 -0
  63. package/dist.commonjs/ckb/transaction.d.ts +533 -0
  64. package/dist.commonjs/ckb/transaction.d.ts.map +1 -0
  65. package/dist.commonjs/ckb/transaction.js +665 -0
  66. package/dist.commonjs/client/advanced.d.ts +4 -0
  67. package/dist.commonjs/client/advanced.d.ts.map +1 -0
  68. package/dist.commonjs/client/advanced.js +19 -0
  69. package/dist.commonjs/client/client.d.ts +19 -0
  70. package/dist.commonjs/client/client.d.ts.map +1 -0
  71. package/dist.commonjs/client/client.js +30 -0
  72. package/dist.commonjs/client/clientPublicMainnet.advanced.d.ts +4 -0
  73. package/dist.commonjs/client/clientPublicMainnet.advanced.d.ts.map +1 -0
  74. package/dist.commonjs/client/clientPublicMainnet.advanced.js +26 -0
  75. package/dist.commonjs/client/clientPublicMainnet.d.ts +9 -0
  76. package/dist.commonjs/client/clientPublicMainnet.d.ts.map +1 -0
  77. package/dist.commonjs/client/clientPublicMainnet.js +17 -0
  78. package/dist.commonjs/client/clientPublicTestnet.advanced.d.ts +4 -0
  79. package/dist.commonjs/client/clientPublicTestnet.advanced.d.ts.map +1 -0
  80. package/dist.commonjs/client/clientPublicTestnet.advanced.js +26 -0
  81. package/dist.commonjs/client/clientPublicTestnet.d.ts +9 -0
  82. package/dist.commonjs/client/clientPublicTestnet.d.ts.map +1 -0
  83. package/dist.commonjs/client/clientPublicTestnet.js +17 -0
  84. package/dist.commonjs/client/clientTypes.d.ts +8 -0
  85. package/dist.commonjs/client/clientTypes.d.ts.map +1 -0
  86. package/dist.commonjs/client/clientTypes.js +2 -0
  87. package/dist.commonjs/client/index.d.ts +6 -0
  88. package/dist.commonjs/client/index.d.ts.map +1 -0
  89. package/dist.commonjs/client/index.js +21 -0
  90. package/dist.commonjs/client/jsonRpc/advanced.d.ts +3 -0
  91. package/dist.commonjs/client/jsonRpc/advanced.d.ts.map +1 -0
  92. package/dist.commonjs/client/jsonRpc/advanced.js +18 -0
  93. package/dist.commonjs/client/jsonRpc/index.d.ts +68 -0
  94. package/dist.commonjs/client/jsonRpc/index.d.ts.map +1 -0
  95. package/dist.commonjs/client/jsonRpc/index.js +128 -0
  96. package/dist.commonjs/client/jsonRpc/transformers.d.ts +28 -0
  97. package/dist.commonjs/client/jsonRpc/transformers.d.ts.map +1 -0
  98. package/dist.commonjs/client/jsonRpc/transformers.js +126 -0
  99. package/dist.commonjs/client/jsonRpc/types.d.ts +41 -0
  100. package/dist.commonjs/client/jsonRpc/types.d.ts.map +1 -0
  101. package/dist.commonjs/client/jsonRpc/types.js +2 -0
  102. package/dist.commonjs/fixedPoint/index.d.ts +49 -0
  103. package/dist.commonjs/fixedPoint/index.d.ts.map +1 -0
  104. package/dist.commonjs/fixedPoint/index.js +65 -0
  105. package/dist.commonjs/hasher/advanced.d.ts +2 -0
  106. package/dist.commonjs/hasher/advanced.d.ts.map +1 -0
  107. package/dist.commonjs/hasher/advanced.js +4 -0
  108. package/dist.commonjs/hasher/index.d.ts +52 -0
  109. package/dist.commonjs/hasher/index.d.ts.map +1 -0
  110. package/dist.commonjs/hasher/index.js +68 -0
  111. package/dist.commonjs/hex/index.d.ts +24 -0
  112. package/dist.commonjs/hex/index.d.ts.map +1 -0
  113. package/dist.commonjs/hex/index.js +20 -0
  114. package/dist.commonjs/index.d.ts +3 -0
  115. package/dist.commonjs/index.d.ts.map +1 -0
  116. package/dist.commonjs/index.js +31 -0
  117. package/dist.commonjs/num/index.d.ts +112 -0
  118. package/dist.commonjs/num/index.d.ts.map +1 -0
  119. package/dist.commonjs/num/index.js +139 -0
  120. package/dist.commonjs/signer/btc/index.d.ts +3 -0
  121. package/dist.commonjs/signer/btc/index.d.ts.map +1 -0
  122. package/dist.commonjs/signer/btc/index.js +18 -0
  123. package/dist.commonjs/signer/btc/signerBtc.d.ts +50 -0
  124. package/dist.commonjs/signer/btc/signerBtc.d.ts.map +1 -0
  125. package/dist.commonjs/signer/btc/signerBtc.js +71 -0
  126. package/dist.commonjs/signer/btc/signerBtcPublicKeyReadonly.d.ts +60 -0
  127. package/dist.commonjs/signer/btc/signerBtcPublicKeyReadonly.d.ts.map +1 -0
  128. package/dist.commonjs/signer/btc/signerBtcPublicKeyReadonly.js +72 -0
  129. package/dist.commonjs/signer/ckb/index.d.ts +2 -0
  130. package/dist.commonjs/signer/ckb/index.d.ts.map +1 -0
  131. package/dist.commonjs/signer/ckb/index.js +17 -0
  132. package/dist.commonjs/signer/ckb/signerCkbScriptReadonly.d.ts +59 -0
  133. package/dist.commonjs/signer/ckb/signerCkbScriptReadonly.d.ts.map +1 -0
  134. package/dist.commonjs/signer/ckb/signerCkbScriptReadonly.js +71 -0
  135. package/dist.commonjs/signer/evm/index.d.ts +3 -0
  136. package/dist.commonjs/signer/evm/index.d.ts.map +1 -0
  137. package/dist.commonjs/signer/evm/index.js +18 -0
  138. package/dist.commonjs/signer/evm/signerEvm.d.ts +46 -0
  139. package/dist.commonjs/signer/evm/signerEvm.d.ts.map +1 -0
  140. package/dist.commonjs/signer/evm/signerEvm.js +83 -0
  141. package/dist.commonjs/signer/evm/signerEvmAddressReadonly.d.ts +52 -0
  142. package/dist.commonjs/signer/evm/signerEvmAddressReadonly.d.ts.map +1 -0
  143. package/dist.commonjs/signer/evm/signerEvmAddressReadonly.js +62 -0
  144. package/dist.commonjs/signer/helpers.d.ts +40 -0
  145. package/dist.commonjs/signer/helpers.d.ts.map +1 -0
  146. package/dist.commonjs/signer/helpers.js +96 -0
  147. package/dist.commonjs/signer/index.d.ts +6 -0
  148. package/dist.commonjs/signer/index.d.ts.map +1 -0
  149. package/dist.commonjs/signer/index.js +21 -0
  150. package/dist.commonjs/signer/signer.d.ts +125 -0
  151. package/dist.commonjs/signer/signer.d.ts.map +1 -0
  152. package/dist.commonjs/signer/signer.js +109 -0
  153. package/dist.commonjs/tsconfig.commonjs.tsbuildinfo +1 -0
  154. package/dist.commonjs/utils/index.d.ts +7 -0
  155. package/dist.commonjs/utils/index.d.ts.map +1 -0
  156. package/dist.commonjs/utils/index.js +10 -0
  157. package/package.json +20 -7
  158. package/src/signer/btc/signerBtcPublicKeyReadonly.ts +18 -0
  159. package/src/signer/ckb/signerCkbScriptReadonly.ts +18 -0
  160. package/src/signer/evm/signerEvm.ts +55 -12
  161. package/src/signer/evm/signerEvmAddressReadonly.ts +19 -1
  162. package/src/signer/helpers.ts +5 -3
  163. package/src/signer/signer.ts +20 -3
  164. package/tsconfig.base.json +21 -0
  165. package/tsconfig.commonjs.json +8 -0
@@ -0,0 +1,6 @@
1
+ export * from "./generated";
2
+ export declare function molOptional<T>(mol: {
3
+ hasValue: () => boolean;
4
+ value: () => T;
5
+ }): T | undefined;
6
+ //# sourceMappingURL=index.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/ckb/molecule.advanced/index.ts"],"names":[],"mappings":"AAAA,cAAc,aAAa,CAAC;AAE5B,wBAAgB,WAAW,CAAC,CAAC,EAAE,GAAG,EAAE;IAClC,QAAQ,EAAE,MAAM,OAAO,CAAC;IACxB,KAAK,EAAE,MAAM,CAAC,CAAC;CAChB,GAAG,CAAC,GAAG,SAAS,CAKhB"}
@@ -0,0 +1,25 @@
1
+ "use strict";
2
+ var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) {
3
+ if (k2 === undefined) k2 = k;
4
+ var desc = Object.getOwnPropertyDescriptor(m, k);
5
+ if (!desc || ("get" in desc ? !m.__esModule : desc.writable || desc.configurable)) {
6
+ desc = { enumerable: true, get: function() { return m[k]; } };
7
+ }
8
+ Object.defineProperty(o, k2, desc);
9
+ }) : (function(o, m, k, k2) {
10
+ if (k2 === undefined) k2 = k;
11
+ o[k2] = m[k];
12
+ }));
13
+ var __exportStar = (this && this.__exportStar) || function(m, exports) {
14
+ for (var p in m) if (p !== "default" && !Object.prototype.hasOwnProperty.call(exports, p)) __createBinding(exports, m, p);
15
+ };
16
+ Object.defineProperty(exports, "__esModule", { value: true });
17
+ exports.molOptional = void 0;
18
+ __exportStar(require("./generated"), exports);
19
+ function molOptional(mol) {
20
+ if (mol.hasValue()) {
21
+ return mol.value();
22
+ }
23
+ return;
24
+ }
25
+ exports.molOptional = molOptional;
@@ -0,0 +1,5 @@
1
+ import { type HashType } from "./script";
2
+ export declare const HASH_TYPE_TO_NUM: Record<HashType, number>;
3
+ export declare const NUM_TO_HASH_TYPE: Record<number, HashType>;
4
+ export declare const HASH_TYPES: string[];
5
+ //# sourceMappingURL=script.advanced.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"script.advanced.d.ts","sourceRoot":"","sources":["../../src/ckb/script.advanced.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,KAAK,QAAQ,EAAE,MAAM,UAAU,CAAC;AAEzC,eAAO,MAAM,gBAAgB,EAAE,MAAM,CAAC,QAAQ,EAAE,MAAM,CAKrD,CAAC;AACF,eAAO,MAAM,gBAAgB,EAAE,MAAM,CAAC,MAAM,EAAE,QAAQ,CAKrD,CAAC;AACF,eAAO,MAAM,UAAU,EAAE,MAAM,EAAkC,CAAC"}
@@ -0,0 +1,16 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.HASH_TYPES = exports.NUM_TO_HASH_TYPE = exports.HASH_TYPE_TO_NUM = void 0;
4
+ exports.HASH_TYPE_TO_NUM = {
5
+ type: 0x01,
6
+ data: 0x00,
7
+ data1: 0x02,
8
+ data2: 0x04,
9
+ };
10
+ exports.NUM_TO_HASH_TYPE = {
11
+ 0x01: "type",
12
+ 0x00: "data",
13
+ 0x02: "data1",
14
+ 0x04: "data2",
15
+ };
16
+ exports.HASH_TYPES = Object.keys(exports.HASH_TYPE_TO_NUM);
@@ -0,0 +1,126 @@
1
+ import { Bytes, BytesLike } from "../bytes";
2
+ import { Hex } from "../hex";
3
+ import * as mol from "./molecule.advanced";
4
+ export type HashTypeLike = string | number | bigint;
5
+ export type HashType = "type" | "data" | "data1" | "data2";
6
+ /**
7
+ * Converts a HashTypeLike value to a HashType.
8
+ *
9
+ * @param val - The value to convert, which can be a string, number, or bigint.
10
+ * @returns The corresponding HashType.
11
+ *
12
+ * @throws Will throw an error if the input value is not a valid hash type.
13
+ *
14
+ * @example
15
+ * ```typescript
16
+ * const hashType = hashTypeFrom(1); // Outputs "data"
17
+ * const hashType = hashTypeFrom("type"); // Outputs "type"
18
+ * ```
19
+ */
20
+ export declare function hashTypeFrom(val: HashTypeLike): HashType;
21
+ /**
22
+ * Converts a HashTypeLike value to its corresponding byte representation.
23
+ *
24
+ * @param hashType - The hash type value to convert.
25
+ * @returns A Uint8Array containing the byte representation of the hash type.
26
+ *
27
+ * @example
28
+ * ```typescript
29
+ * const hashTypeBytes = hashTypeToBytes("type"); // Outputs Uint8Array [0]
30
+ * ```
31
+ */
32
+ export declare function hashTypeToBytes(hashType: HashTypeLike): Bytes;
33
+ /**
34
+ * Converts a byte-like value to a HashType.
35
+ *
36
+ * @param bytes - The byte-like value to convert.
37
+ * @returns The corresponding HashType.
38
+ *
39
+ * @throws Will throw an error if the input bytes do not correspond to a valid hash type.
40
+ *
41
+ * @example
42
+ * ```typescript
43
+ * const hashType = hashTypeFromBytes(new Uint8Array([0])); // Outputs "type"
44
+ * ```
45
+ */
46
+ export declare function hashTypeFromBytes(bytes: BytesLike): HashType;
47
+ export type ScriptLike = {
48
+ codeHash: BytesLike;
49
+ hashType: HashTypeLike;
50
+ args: BytesLike;
51
+ };
52
+ export declare class Script {
53
+ codeHash: Hex;
54
+ hashType: HashType;
55
+ args: Hex;
56
+ /**
57
+ * Creates an instance of Script.
58
+ *
59
+ * @param codeHash - The code hash of the script.
60
+ * @param hashType - The hash type of the script.
61
+ * @param args - The arguments for the script.
62
+ */
63
+ constructor(codeHash: Hex, hashType: HashType, args: Hex);
64
+ /**
65
+ * Creates a Script instance from a ScriptLike object.
66
+ *
67
+ * @param script - A ScriptLike object or an instance of Script.
68
+ * @returns A Script instance.
69
+ *
70
+ * @example
71
+ * ```typescript
72
+ * const script = Script.from({
73
+ * codeHash: "0x1234...",
74
+ * hashType: "type",
75
+ * args: "0xabcd..."
76
+ * });
77
+ * ```
78
+ */
79
+ static from(script: ScriptLike): Script;
80
+ /**
81
+ * Converts the Script instance to molecule data format.
82
+ *
83
+ * @returns An object representing the script in molecule data format.
84
+ */
85
+ _toMolData(): {
86
+ codeHash: Uint8Array;
87
+ hashType: Uint8Array;
88
+ args: Uint8Array;
89
+ };
90
+ /**
91
+ * Converts the Script instance to bytes.
92
+ *
93
+ * @returns A Uint8Array containing the script bytes.
94
+ *
95
+ * @example
96
+ * ```typescript
97
+ * const scriptBytes = script.toBytes();
98
+ * ```
99
+ */
100
+ toBytes(): Bytes;
101
+ /**
102
+ * Creates a Script instance from a byte-like value or molecule Script.
103
+ *
104
+ * @param bytes - The byte-like value or molecule Script to convert.
105
+ * @returns A Script instance.
106
+ *
107
+ * @example
108
+ * ```typescript
109
+ * const script = Script.fromBytes(new Uint8Array([/* script bytes *\/]));
110
+ * ```
111
+ */
112
+ static fromBytes(bytes: BytesLike | mol.Script): Script;
113
+ /**
114
+ * Compares the current Script instance with another ScriptLike object for equality.
115
+ *
116
+ * @param val - The ScriptLike object to compare with.
117
+ * @returns True if the scripts are equal, otherwise false.
118
+ *
119
+ * @example
120
+ * ```typescript
121
+ * const isEqual = script.eq(anotherScript);
122
+ * ```
123
+ */
124
+ eq(val: ScriptLike): boolean;
125
+ }
126
+ //# sourceMappingURL=script.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"script.d.ts","sourceRoot":"","sources":["../../src/ckb/script.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,KAAK,EAAE,SAAS,EAAa,MAAM,UAAU,CAAC;AACvD,OAAO,EAAE,GAAG,EAAW,MAAM,QAAQ,CAAC;AACtC,OAAO,KAAK,GAAG,MAAM,qBAAqB,CAAC;AAO3C,MAAM,MAAM,YAAY,GAAG,MAAM,GAAG,MAAM,GAAG,MAAM,CAAC;AACpD,MAAM,MAAM,QAAQ,GAAG,MAAM,GAAG,MAAM,GAAG,OAAO,GAAG,OAAO,CAAC;AAE3D;;;;;;;;;;;;;GAaG;AAEH,wBAAgB,YAAY,CAAC,GAAG,EAAE,YAAY,GAAG,QAAQ,CAmBxD;AAED;;;;;;;;;;GAUG;AAEH,wBAAgB,eAAe,CAAC,QAAQ,EAAE,YAAY,GAAG,KAAK,CAE7D;AAED;;;;;;;;;;;;GAYG;AAEH,wBAAgB,iBAAiB,CAAC,KAAK,EAAE,SAAS,GAAG,QAAQ,CAE5D;AAED,MAAM,MAAM,UAAU,GAAG;IACvB,QAAQ,EAAE,SAAS,CAAC;IACpB,QAAQ,EAAE,YAAY,CAAC;IACvB,IAAI,EAAE,SAAS,CAAC;CACjB,CAAC;AACF,qBAAa,MAAM;IAUR,QAAQ,EAAE,GAAG;IACb,QAAQ,EAAE,QAAQ;IAClB,IAAI,EAAE,GAAG;IAXlB;;;;;;OAMG;gBAGM,QAAQ,EAAE,GAAG,EACb,QAAQ,EAAE,QAAQ,EAClB,IAAI,EAAE,GAAG;IAGlB;;;;;;;;;;;;;;OAcG;IAEH,MAAM,CAAC,IAAI,CAAC,MAAM,EAAE,UAAU,GAAG,MAAM;IAYvC;;;;OAIG;IAEH,UAAU;;;;;IAQV;;;;;;;;;OASG;IAEH,OAAO,IAAI,KAAK;IAIhB;;;;;;;;;;OAUG;IAEH,MAAM,CAAC,SAAS,CAAC,KAAK,EAAE,SAAS,GAAG,GAAG,CAAC,MAAM,GAAG,MAAM;IAWvD;;;;;;;;;;OAUG;IAEH,EAAE,CAAC,GAAG,EAAE,UAAU,GAAG,OAAO;CAQ7B"}
@@ -0,0 +1,188 @@
1
+ "use strict";
2
+ var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) {
3
+ if (k2 === undefined) k2 = k;
4
+ var desc = Object.getOwnPropertyDescriptor(m, k);
5
+ if (!desc || ("get" in desc ? !m.__esModule : desc.writable || desc.configurable)) {
6
+ desc = { enumerable: true, get: function() { return m[k]; } };
7
+ }
8
+ Object.defineProperty(o, k2, desc);
9
+ }) : (function(o, m, k, k2) {
10
+ if (k2 === undefined) k2 = k;
11
+ o[k2] = m[k];
12
+ }));
13
+ var __setModuleDefault = (this && this.__setModuleDefault) || (Object.create ? (function(o, v) {
14
+ Object.defineProperty(o, "default", { enumerable: true, value: v });
15
+ }) : function(o, v) {
16
+ o["default"] = v;
17
+ });
18
+ var __importStar = (this && this.__importStar) || function (mod) {
19
+ if (mod && mod.__esModule) return mod;
20
+ var result = {};
21
+ if (mod != null) for (var k in mod) if (k !== "default" && Object.prototype.hasOwnProperty.call(mod, k)) __createBinding(result, mod, k);
22
+ __setModuleDefault(result, mod);
23
+ return result;
24
+ };
25
+ Object.defineProperty(exports, "__esModule", { value: true });
26
+ exports.Script = exports.hashTypeFromBytes = exports.hashTypeToBytes = exports.hashTypeFrom = void 0;
27
+ const bytes_1 = require("../bytes");
28
+ const hex_1 = require("../hex");
29
+ const mol = __importStar(require("./molecule.advanced"));
30
+ const script_advanced_1 = require("./script.advanced");
31
+ /**
32
+ * Converts a HashTypeLike value to a HashType.
33
+ *
34
+ * @param val - The value to convert, which can be a string, number, or bigint.
35
+ * @returns The corresponding HashType.
36
+ *
37
+ * @throws Will throw an error if the input value is not a valid hash type.
38
+ *
39
+ * @example
40
+ * ```typescript
41
+ * const hashType = hashTypeFrom(1); // Outputs "data"
42
+ * const hashType = hashTypeFrom("type"); // Outputs "type"
43
+ * ```
44
+ */
45
+ function hashTypeFrom(val) {
46
+ const hashType = (() => {
47
+ if (typeof val === "number") {
48
+ return script_advanced_1.NUM_TO_HASH_TYPE[val];
49
+ }
50
+ if (typeof val === "bigint") {
51
+ return script_advanced_1.NUM_TO_HASH_TYPE[Number(val)];
52
+ }
53
+ if (!script_advanced_1.HASH_TYPES.includes(val)) {
54
+ return;
55
+ }
56
+ return val;
57
+ })();
58
+ if (hashType === undefined) {
59
+ throw new Error(`Invalid hash type ${val}`);
60
+ }
61
+ return hashType;
62
+ }
63
+ exports.hashTypeFrom = hashTypeFrom;
64
+ /**
65
+ * Converts a HashTypeLike value to its corresponding byte representation.
66
+ *
67
+ * @param hashType - The hash type value to convert.
68
+ * @returns A Uint8Array containing the byte representation of the hash type.
69
+ *
70
+ * @example
71
+ * ```typescript
72
+ * const hashTypeBytes = hashTypeToBytes("type"); // Outputs Uint8Array [0]
73
+ * ```
74
+ */
75
+ function hashTypeToBytes(hashType) {
76
+ return (0, bytes_1.bytesFrom)([script_advanced_1.HASH_TYPE_TO_NUM[hashTypeFrom(hashType)]]);
77
+ }
78
+ exports.hashTypeToBytes = hashTypeToBytes;
79
+ /**
80
+ * Converts a byte-like value to a HashType.
81
+ *
82
+ * @param bytes - The byte-like value to convert.
83
+ * @returns The corresponding HashType.
84
+ *
85
+ * @throws Will throw an error if the input bytes do not correspond to a valid hash type.
86
+ *
87
+ * @example
88
+ * ```typescript
89
+ * const hashType = hashTypeFromBytes(new Uint8Array([0])); // Outputs "type"
90
+ * ```
91
+ */
92
+ function hashTypeFromBytes(bytes) {
93
+ return script_advanced_1.NUM_TO_HASH_TYPE[(0, bytes_1.bytesFrom)(bytes)[0]];
94
+ }
95
+ exports.hashTypeFromBytes = hashTypeFromBytes;
96
+ class Script {
97
+ /**
98
+ * Creates an instance of Script.
99
+ *
100
+ * @param codeHash - The code hash of the script.
101
+ * @param hashType - The hash type of the script.
102
+ * @param args - The arguments for the script.
103
+ */
104
+ constructor(codeHash, hashType, args) {
105
+ this.codeHash = codeHash;
106
+ this.hashType = hashType;
107
+ this.args = args;
108
+ }
109
+ /**
110
+ * Creates a Script instance from a ScriptLike object.
111
+ *
112
+ * @param script - A ScriptLike object or an instance of Script.
113
+ * @returns A Script instance.
114
+ *
115
+ * @example
116
+ * ```typescript
117
+ * const script = Script.from({
118
+ * codeHash: "0x1234...",
119
+ * hashType: "type",
120
+ * args: "0xabcd..."
121
+ * });
122
+ * ```
123
+ */
124
+ static from(script) {
125
+ if (script instanceof Script) {
126
+ return script;
127
+ }
128
+ return new Script((0, hex_1.hexFrom)(script.codeHash), hashTypeFrom(script.hashType), (0, hex_1.hexFrom)(script.args));
129
+ }
130
+ /**
131
+ * Converts the Script instance to molecule data format.
132
+ *
133
+ * @returns An object representing the script in molecule data format.
134
+ */
135
+ _toMolData() {
136
+ return {
137
+ codeHash: (0, bytes_1.bytesFrom)(this.codeHash),
138
+ hashType: hashTypeToBytes(this.hashType),
139
+ args: (0, bytes_1.bytesFrom)(this.args),
140
+ };
141
+ }
142
+ /**
143
+ * Converts the Script instance to bytes.
144
+ *
145
+ * @returns A Uint8Array containing the script bytes.
146
+ *
147
+ * @example
148
+ * ```typescript
149
+ * const scriptBytes = script.toBytes();
150
+ * ```
151
+ */
152
+ toBytes() {
153
+ return (0, bytes_1.bytesFrom)(mol.SerializeScript(this._toMolData()));
154
+ }
155
+ /**
156
+ * Creates a Script instance from a byte-like value or molecule Script.
157
+ *
158
+ * @param bytes - The byte-like value or molecule Script to convert.
159
+ * @returns A Script instance.
160
+ *
161
+ * @example
162
+ * ```typescript
163
+ * const script = Script.fromBytes(new Uint8Array([/* script bytes *\/]));
164
+ * ```
165
+ */
166
+ static fromBytes(bytes) {
167
+ const view = bytes instanceof mol.Script ? bytes : new mol.Script((0, bytes_1.bytesFrom)(bytes));
168
+ return new Script((0, hex_1.hexFrom)(view.getCodeHash().raw()), hashTypeFromBytes([view.getHashType()]), (0, hex_1.hexFrom)(view.getArgs().raw()));
169
+ }
170
+ /**
171
+ * Compares the current Script instance with another ScriptLike object for equality.
172
+ *
173
+ * @param val - The ScriptLike object to compare with.
174
+ * @returns True if the scripts are equal, otherwise false.
175
+ *
176
+ * @example
177
+ * ```typescript
178
+ * const isEqual = script.eq(anotherScript);
179
+ * ```
180
+ */
181
+ eq(val) {
182
+ const script = Script.from(val);
183
+ return (this.codeHash === script.codeHash &&
184
+ this.args === script.args &&
185
+ this.hashType === script.hashType);
186
+ }
187
+ }
188
+ exports.Script = Script;
@@ -0,0 +1,5 @@
1
+ import { type DepType } from "./transaction";
2
+ export declare const DEP_TYPE_TO_NUM: Record<DepType, number>;
3
+ export declare const NUM_TO_DEP_TYPE: Record<number, DepType>;
4
+ export declare const DEP_TYPES: string[];
5
+ //# sourceMappingURL=transaction.advanced.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"transaction.advanced.d.ts","sourceRoot":"","sources":["../../src/ckb/transaction.advanced.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,KAAK,OAAO,EAAE,MAAM,eAAe,CAAC;AAE7C,eAAO,MAAM,eAAe,EAAE,MAAM,CAAC,OAAO,EAAE,MAAM,CAGnD,CAAC;AACF,eAAO,MAAM,eAAe,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAGnD,CAAC;AACF,eAAO,MAAM,SAAS,EAAE,MAAM,EAAiC,CAAC"}
@@ -0,0 +1,12 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.DEP_TYPES = exports.NUM_TO_DEP_TYPE = exports.DEP_TYPE_TO_NUM = void 0;
4
+ exports.DEP_TYPE_TO_NUM = {
5
+ code: 0x00,
6
+ depGroup: 0x01,
7
+ };
8
+ exports.NUM_TO_DEP_TYPE = {
9
+ 0x00: "code",
10
+ 0x01: "depGroup",
11
+ };
12
+ exports.DEP_TYPES = Object.keys(exports.DEP_TYPE_TO_NUM);