@ckb-ccc/core 0.0.2-alpha.1 → 0.0.2-alpha.3

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 (169) hide show
  1. package/.prettierignore +12 -0
  2. package/dist/address/address.advanced.d.ts +29 -3
  3. package/dist/address/address.advanced.d.ts.map +1 -1
  4. package/dist/address/address.advanced.js +69 -22
  5. package/dist/address/advanced.d.ts +1 -28
  6. package/dist/address/advanced.d.ts.map +1 -1
  7. package/dist/address/advanced.js +3 -61
  8. package/dist/address/index.d.ts +10 -13
  9. package/dist/address/index.d.ts.map +1 -1
  10. package/dist/address/index.js +18 -18
  11. package/dist/advancedBarrel.d.ts +1 -0
  12. package/dist/advancedBarrel.d.ts.map +1 -1
  13. package/dist/advancedBarrel.js +1 -0
  14. package/dist/barrel.d.ts +4 -2
  15. package/dist/barrel.d.ts.map +1 -1
  16. package/dist/barrel.js +4 -2
  17. package/dist/bytes/index.d.ts +7 -0
  18. package/dist/bytes/index.d.ts.map +1 -0
  19. package/dist/bytes/index.js +41 -0
  20. package/dist/ckb/advanced.d.ts +3 -2
  21. package/dist/ckb/advanced.d.ts.map +1 -1
  22. package/dist/ckb/advanced.js +16 -2
  23. package/dist/ckb/index.d.ts +2 -3
  24. package/dist/ckb/index.d.ts.map +1 -1
  25. package/dist/ckb/index.js +2 -3
  26. package/dist/ckb/molecule.advanced/generated.d.ts.map +1 -0
  27. package/dist/ckb/{types/molecule.advanced → molecule.advanced}/generated.js +378 -97
  28. package/dist/ckb/molecule.advanced/index.d.ts +6 -0
  29. package/dist/ckb/molecule.advanced/index.d.ts.map +1 -0
  30. package/dist/ckb/{types/molecule.advanced → molecule.advanced}/index.js +8 -0
  31. package/dist/ckb/{types/script.advanced.d.ts → script.advanced.d.ts} +1 -0
  32. package/dist/ckb/script.advanced.d.ts.map +1 -0
  33. package/dist/ckb/{types/script.advanced.js → script.advanced.js} +2 -1
  34. package/dist/ckb/script.d.ts +29 -0
  35. package/dist/ckb/script.d.ts.map +1 -0
  36. package/dist/ckb/script.js +91 -0
  37. package/dist/ckb/{types/transaction.advanced.d.ts → transaction.advanced.d.ts} +1 -0
  38. package/dist/ckb/transaction.advanced.d.ts.map +1 -0
  39. package/dist/ckb/{types/transaction.advanced.js → transaction.advanced.js} +2 -1
  40. package/dist/ckb/transaction.d.ts +142 -0
  41. package/dist/ckb/transaction.d.ts.map +1 -0
  42. package/dist/ckb/transaction.js +262 -0
  43. package/dist/client/client.d.ts +4 -4
  44. package/dist/client/client.d.ts.map +1 -1
  45. package/dist/client/clientPublicMainnet.advanced.d.ts +2 -2
  46. package/dist/client/clientPublicMainnet.advanced.d.ts.map +1 -1
  47. package/dist/client/clientPublicMainnet.d.ts +2 -2
  48. package/dist/client/clientPublicMainnet.d.ts.map +1 -1
  49. package/dist/client/clientPublicTestnet.advanced.d.ts +2 -2
  50. package/dist/client/clientPublicTestnet.advanced.d.ts.map +1 -1
  51. package/dist/client/clientPublicTestnet.d.ts +2 -2
  52. package/dist/client/clientPublicTestnet.d.ts.map +1 -1
  53. package/dist/client/jsonRpc/advanced.d.ts +36 -36
  54. package/dist/client/jsonRpc/advanced.d.ts.map +1 -1
  55. package/dist/client/jsonRpc/advanced.js +11 -11
  56. package/dist/client/jsonRpc/index.d.ts.map +1 -1
  57. package/dist/client/jsonRpc/index.js +1 -1
  58. package/dist/fixedPoint/index.d.ts +7 -0
  59. package/dist/fixedPoint/index.d.ts.map +1 -0
  60. package/dist/{fixedPoint.js → fixedPoint/index.js} +9 -12
  61. package/dist/{ckb/hasher.advanced.d.ts → hasher/advanced.d.ts} +1 -1
  62. package/dist/hasher/advanced.d.ts.map +1 -0
  63. package/dist/{ckb/hasher.d.ts → hasher/index.d.ts} +3 -2
  64. package/dist/hasher/index.d.ts.map +1 -0
  65. package/dist/{ckb/hasher.js → hasher/index.js} +4 -4
  66. package/dist/hex/index.d.ts +5 -0
  67. package/dist/hex/index.d.ts.map +1 -0
  68. package/dist/hex/index.js +9 -0
  69. package/dist/num/index.d.ts +13 -0
  70. package/dist/num/index.d.ts.map +1 -0
  71. package/dist/num/index.js +47 -0
  72. package/dist/signer/helpers.d.ts +3 -3
  73. package/dist/signer/helpers.d.ts.map +1 -1
  74. package/dist/signer/helpers.js +7 -4
  75. package/dist/signer/index.d.ts +2 -0
  76. package/dist/signer/index.d.ts.map +1 -1
  77. package/dist/signer/index.js +2 -0
  78. package/dist/signer/signer.d.ts +12 -3
  79. package/dist/signer/signer.d.ts.map +1 -1
  80. package/dist/signer/signer.js +13 -2
  81. package/dist/signer/signerReadonly.d.ts +8 -0
  82. package/dist/signer/signerReadonly.d.ts.map +1 -0
  83. package/dist/signer/signerReadonly.js +13 -0
  84. package/dist/{ckb/viewerCkbScript.d.ts → signer/signerReadonlyCkbScript.d.ts} +6 -5
  85. package/dist/signer/signerReadonlyCkbScript.d.ts.map +1 -0
  86. package/dist/{ckb/viewerCkbScript.js → signer/signerReadonlyCkbScript.js} +7 -4
  87. package/dist/utils/index.d.ts +7 -0
  88. package/dist/utils/index.d.ts.map +1 -0
  89. package/dist/utils/index.js +10 -0
  90. package/package.json +5 -3
  91. package/src/address/address.advanced.ts +76 -19
  92. package/src/address/advanced.ts +1 -59
  93. package/src/address/index.ts +46 -28
  94. package/src/advancedBarrel.ts +1 -0
  95. package/src/barrel.ts +4 -2
  96. package/src/bytes/index.ts +46 -0
  97. package/src/ckb/advanced.ts +3 -2
  98. package/src/ckb/index.ts +2 -3
  99. package/src/ckb/{types/molecule.advanced → molecule.advanced}/generated.d.ts +18 -7
  100. package/src/ckb/{types/molecule.advanced → molecule.advanced}/generated.js +551 -123
  101. package/src/ckb/molecule.advanced/index.ts +11 -0
  102. package/src/ckb/{types/script.advanced.ts → script.advanced.ts} +1 -0
  103. package/src/ckb/script.ts +94 -0
  104. package/src/ckb/{types/transaction.advanced.ts → transaction.advanced.ts} +1 -0
  105. package/src/ckb/transaction.ts +357 -0
  106. package/src/client/client.ts +4 -4
  107. package/src/client/clientPublicMainnet.advanced.ts +2 -2
  108. package/src/client/clientPublicMainnet.ts +2 -2
  109. package/src/client/clientPublicTestnet.advanced.ts +2 -2
  110. package/src/client/clientPublicTestnet.ts +2 -2
  111. package/src/client/clientTypes.ts +1 -1
  112. package/src/client/jsonRpc/advanced.ts +25 -25
  113. package/src/client/jsonRpc/index.ts +1 -3
  114. package/src/fixedPoint/index.ts +30 -0
  115. package/src/{ckb/hasher.ts → hasher/index.ts} +5 -5
  116. package/src/hex/index.ts +9 -0
  117. package/src/index.ts +1 -1
  118. package/src/num/index.ts +53 -0
  119. package/src/signer/helpers.ts +9 -6
  120. package/src/signer/index.ts +3 -1
  121. package/src/signer/signer.ts +23 -3
  122. package/src/signer/signerReadonly.ts +13 -0
  123. package/src/{ckb/viewerCkbScript.ts → signer/signerReadonlyCkbScript.ts} +8 -4
  124. package/src/utils/index.ts +28 -0
  125. package/dist/bytes.d.ts +0 -15
  126. package/dist/bytes.d.ts.map +0 -1
  127. package/dist/bytes.js +0 -114
  128. package/dist/ckb/hasher.advanced.d.ts.map +0 -1
  129. package/dist/ckb/hasher.d.ts.map +0 -1
  130. package/dist/ckb/types/advanced.d.ts +0 -4
  131. package/dist/ckb/types/advanced.d.ts.map +0 -1
  132. package/dist/ckb/types/advanced.js +0 -32
  133. package/dist/ckb/types/index.d.ts +0 -3
  134. package/dist/ckb/types/index.d.ts.map +0 -1
  135. package/dist/ckb/types/index.js +0 -18
  136. package/dist/ckb/types/molecule.advanced/generated.d.ts.map +0 -1
  137. package/dist/ckb/types/molecule.advanced/index.d.ts +0 -2
  138. package/dist/ckb/types/molecule.advanced/index.d.ts.map +0 -1
  139. package/dist/ckb/types/script.advanced.d.ts.map +0 -1
  140. package/dist/ckb/types/script.d.ts +0 -26
  141. package/dist/ckb/types/script.d.ts.map +0 -1
  142. package/dist/ckb/types/script.js +0 -75
  143. package/dist/ckb/types/transaction.advanced.d.ts.map +0 -1
  144. package/dist/ckb/types/transaction.d.ts +0 -127
  145. package/dist/ckb/types/transaction.d.ts.map +0 -1
  146. package/dist/ckb/types/transaction.js +0 -266
  147. package/dist/ckb/viewerCkbScript.d.ts.map +0 -1
  148. package/dist/fixedPoint.d.ts +0 -9
  149. package/dist/fixedPoint.d.ts.map +0 -1
  150. package/dist/primitive.d.ts +0 -5
  151. package/dist/primitive.d.ts.map +0 -1
  152. package/dist/primitive.js +0 -2
  153. package/dist/tsconfig.tsbuildinfo +0 -1
  154. package/dist/viewer.d.ts +0 -12
  155. package/dist/viewer.d.ts.map +0 -1
  156. package/dist/viewer.js +0 -19
  157. package/src/bytes.ts +0 -127
  158. package/src/ckb/types/advanced.ts +0 -3
  159. package/src/ckb/types/index.ts +0 -2
  160. package/src/ckb/types/molecule.advanced/index.ts +0 -1
  161. package/src/ckb/types/script.ts +0 -70
  162. package/src/ckb/types/transaction.ts +0 -366
  163. package/src/fixedPoint.ts +0 -53
  164. package/src/primitive.ts +0 -8
  165. package/src/viewer.ts +0 -22
  166. /package/dist/ckb/{types/molecule.advanced → molecule.advanced}/generated.d.ts +0 -0
  167. /package/dist/{ckb/hasher.advanced.js → hasher/advanced.js} +0 -0
  168. /package/src/ckb/{types/molecule.advanced → molecule.advanced}/blockchain.mol +0 -0
  169. /package/src/{ckb/hasher.advanced.ts → hasher/advanced.ts} +0 -0
@@ -1 +1 @@
1
- {"version":3,"file":"clientPublicMainnet.d.ts","sourceRoot":"","sources":["../../src/client/clientPublicMainnet.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,MAAM,EAAE,MAAM,QAAQ,CAAC;AAChC,OAAO,EAAE,WAAW,EAAE,MAAM,UAAU,CAAC;AAEvC,OAAO,EAAE,aAAa,EAAE,MAAM,WAAW,CAAC;AAE1C,qBAAa,mBAAoB,SAAQ,aAAa;gBACxC,OAAO,CAAC,EAAE,MAAM;IAItB,gBAAgB,IAAI,OAAO,CAAC,MAAM,CAAC;IAInC,cAAc,CAAC,MAAM,EAAE,WAAW,GAAG,OAAO,CAAC,IAAI,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC;CAGzE"}
1
+ {"version":3,"file":"clientPublicMainnet.d.ts","sourceRoot":"","sources":["../../src/client/clientPublicMainnet.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,UAAU,EAAE,MAAM,QAAQ,CAAC;AACpC,OAAO,EAAE,WAAW,EAAE,MAAM,UAAU,CAAC;AAEvC,OAAO,EAAE,aAAa,EAAE,MAAM,WAAW,CAAC;AAE1C,qBAAa,mBAAoB,SAAQ,aAAa;gBACxC,OAAO,CAAC,EAAE,MAAM;IAItB,gBAAgB,IAAI,OAAO,CAAC,MAAM,CAAC;IAInC,cAAc,CAAC,MAAM,EAAE,WAAW,GAAG,OAAO,CAAC,IAAI,CAAC,UAAU,EAAE,MAAM,CAAC,CAAC;CAG7E"}
@@ -1,4 +1,4 @@
1
- import { Script } from "../ckb";
1
+ import { ScriptLike } from "../ckb";
2
2
  import { KnownScript } from "./client";
3
- export declare const TESTNET_SCRIPTS: Record<KnownScript, Omit<Script, "args">>;
3
+ export declare const TESTNET_SCRIPTS: Record<KnownScript, Omit<ScriptLike, "args">>;
4
4
  //# sourceMappingURL=clientPublicTestnet.advanced.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"clientPublicTestnet.advanced.d.ts","sourceRoot":"","sources":["../../src/client/clientPublicTestnet.advanced.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,MAAM,EAAE,MAAM,QAAQ,CAAC;AAChC,OAAO,EAAE,WAAW,EAAE,MAAM,UAAU,CAAC;AAEvC,eAAO,MAAM,eAAe,EAAE,MAAM,CAAC,WAAW,EAAE,IAAI,CAAC,MAAM,EAAE,MAAM,CAAC,CA0BrE,CAAC"}
1
+ {"version":3,"file":"clientPublicTestnet.advanced.d.ts","sourceRoot":"","sources":["../../src/client/clientPublicTestnet.advanced.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,UAAU,EAAE,MAAM,QAAQ,CAAC;AACpC,OAAO,EAAE,WAAW,EAAE,MAAM,UAAU,CAAC;AAEvC,eAAO,MAAM,eAAe,EAAE,MAAM,CAAC,WAAW,EAAE,IAAI,CAAC,UAAU,EAAE,MAAM,CAAC,CA0BzE,CAAC"}
@@ -1,9 +1,9 @@
1
- import { Script } from "../ckb";
1
+ import { ScriptLike } from "../ckb";
2
2
  import { KnownScript } from "./client";
3
3
  import { ClientJsonRpc } from "./jsonRpc";
4
4
  export declare class ClientPublicTestnet extends ClientJsonRpc {
5
5
  constructor(timeout?: number);
6
6
  getAddressPrefix(): Promise<string>;
7
- getKnownScript(script: KnownScript): Promise<Omit<Script, "args">>;
7
+ getKnownScript(script: KnownScript): Promise<Omit<ScriptLike, "args">>;
8
8
  }
9
9
  //# sourceMappingURL=clientPublicTestnet.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"clientPublicTestnet.d.ts","sourceRoot":"","sources":["../../src/client/clientPublicTestnet.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,MAAM,EAAE,MAAM,QAAQ,CAAC;AAChC,OAAO,EAAE,WAAW,EAAE,MAAM,UAAU,CAAC;AAEvC,OAAO,EAAE,aAAa,EAAE,MAAM,WAAW,CAAC;AAE1C,qBAAa,mBAAoB,SAAQ,aAAa;gBACxC,OAAO,CAAC,EAAE,MAAM;IAItB,gBAAgB,IAAI,OAAO,CAAC,MAAM,CAAC;IAInC,cAAc,CAAC,MAAM,EAAE,WAAW,GAAG,OAAO,CAAC,IAAI,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC;CAGzE"}
1
+ {"version":3,"file":"clientPublicTestnet.d.ts","sourceRoot":"","sources":["../../src/client/clientPublicTestnet.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,UAAU,EAAE,MAAM,QAAQ,CAAC;AACpC,OAAO,EAAE,WAAW,EAAE,MAAM,UAAU,CAAC;AAEvC,OAAO,EAAE,aAAa,EAAE,MAAM,WAAW,CAAC;AAE1C,qBAAa,mBAAoB,SAAQ,aAAa;gBACxC,OAAO,CAAC,EAAE,MAAM;IAItB,gBAAgB,IAAI,OAAO,CAAC,MAAM,CAAC;IAInC,cAAc,CAAC,MAAM,EAAE,WAAW,GAAG,OAAO,CAAC,IAAI,CAAC,UAAU,EAAE,MAAM,CAAC,CAAC;CAG7E"}
@@ -1,4 +1,4 @@
1
- import { CellDep, CellInput, CellOutput, DepType, OutPoint, Script, Transaction } from "../../ckb";
1
+ import { CellDepLike, CellInputLike, CellOutputLike, DepTypeLike, OutPointLike, ScriptLike, TransactionLike } from "../../ckb";
2
2
  import type { Client } from "../client";
3
3
  export type JsonRpcPayload = {
4
4
  id: number;
@@ -13,75 +13,75 @@ export type JsonRpcMethod = {
13
13
  outTransformer?: (_: any) => unknown;
14
14
  };
15
15
  export declare class JsonRpcTransformers {
16
- static toDepType(depType: DepType): "code" | "dep_group";
17
- static toScript(script?: Script): {
18
- code_hash: `0x${string}`;
19
- hash_type: import("../../ckb").HashType;
20
- args: `0x${string}`;
21
- } | null;
22
- static toOutPoint(outPoint: OutPoint): {
16
+ static toDepType(depType: DepTypeLike): "code" | "dep_group";
17
+ static toScript(script: ScriptLike): {
18
+ code_hash: import("../..").BytesLike;
19
+ hash_type: import("../../ckb").HashTypeLike;
20
+ args: import("../..").BytesLike;
21
+ };
22
+ static toOutPoint(outPoint: OutPointLike): {
23
23
  index: `0x${string}`;
24
- tx_hash: `0x${string}`;
24
+ tx_hash: import("../..").BytesLike;
25
25
  };
26
- static toCellInput(cellInput: CellInput): {
26
+ static toCellInput(cellInput: CellInputLike): {
27
27
  previous_output: {
28
28
  index: `0x${string}`;
29
- tx_hash: `0x${string}`;
29
+ tx_hash: import("../..").BytesLike;
30
30
  };
31
31
  since: `0x${string}`;
32
32
  };
33
- static toCellOutput(cellOutput: CellOutput): {
33
+ static toCellOutput(cellOutput: CellOutputLike): {
34
34
  capacity: `0x${string}`;
35
35
  lock: {
36
- code_hash: `0x${string}`;
37
- hash_type: import("../../ckb").HashType;
38
- args: `0x${string}`;
39
- } | null;
36
+ code_hash: import("../..").BytesLike;
37
+ hash_type: import("../../ckb").HashTypeLike;
38
+ args: import("../..").BytesLike;
39
+ };
40
40
  type: {
41
- code_hash: `0x${string}`;
42
- hash_type: import("../../ckb").HashType;
43
- args: `0x${string}`;
44
- } | null;
41
+ code_hash: import("../..").BytesLike;
42
+ hash_type: import("../../ckb").HashTypeLike;
43
+ args: import("../..").BytesLike;
44
+ } | undefined;
45
45
  };
46
- static toCellDep(cellDep: CellDep): {
46
+ static toCellDep(cellDep: CellDepLike): {
47
47
  out_point: {
48
48
  index: `0x${string}`;
49
- tx_hash: `0x${string}`;
49
+ tx_hash: import("../..").BytesLike;
50
50
  };
51
51
  dep_type: string;
52
52
  };
53
- static toTransaction(tx: Transaction): {
53
+ static toTransaction(tx: TransactionLike): {
54
54
  version: `0x${string}`;
55
55
  cell_deps: {
56
56
  out_point: {
57
57
  index: `0x${string}`;
58
- tx_hash: `0x${string}`;
58
+ tx_hash: import("../..").BytesLike;
59
59
  };
60
60
  dep_type: string;
61
61
  }[];
62
- header_deps: `0x${string}`[];
62
+ header_deps: import("../..").BytesLike[];
63
63
  inputs: {
64
64
  previous_output: {
65
65
  index: `0x${string}`;
66
- tx_hash: `0x${string}`;
66
+ tx_hash: import("../..").BytesLike;
67
67
  };
68
68
  since: `0x${string}`;
69
69
  }[];
70
70
  outputs: {
71
71
  capacity: `0x${string}`;
72
72
  lock: {
73
- code_hash: `0x${string}`;
74
- hash_type: import("../../ckb").HashType;
75
- args: `0x${string}`;
76
- } | null;
73
+ code_hash: import("../..").BytesLike;
74
+ hash_type: import("../../ckb").HashTypeLike;
75
+ args: import("../..").BytesLike;
76
+ };
77
77
  type: {
78
- code_hash: `0x${string}`;
79
- hash_type: import("../../ckb").HashType;
80
- args: `0x${string}`;
81
- } | null;
78
+ code_hash: import("../..").BytesLike;
79
+ hash_type: import("../../ckb").HashTypeLike;
80
+ args: import("../..").BytesLike;
81
+ } | undefined;
82
82
  }[];
83
- outputs_data: `0x${string}`[];
84
- witnesses: `0x${string}`[];
83
+ outputs_data: import("../..").BytesLike[];
84
+ witnesses: import("../..").BytesLike[];
85
85
  };
86
86
  }
87
87
  export declare const CkbRpcMethods: JsonRpcMethod[];
@@ -1 +1 @@
1
- {"version":3,"file":"advanced.d.ts","sourceRoot":"","sources":["../../../src/client/jsonRpc/advanced.ts"],"names":[],"mappings":"AAAA,OAAO,EACL,OAAO,EACP,SAAS,EACT,UAAU,EACV,OAAO,EACP,QAAQ,EACR,MAAM,EACN,WAAW,EACZ,MAAM,WAAW,CAAC;AAEnB,OAAO,KAAK,EAAE,MAAM,EAAE,MAAM,WAAW,CAAC;AAExC,MAAM,MAAM,cAAc,GAAG;IAC3B,EAAE,EAAE,MAAM,CAAC;IACX,OAAO,EAAE,KAAK,CAAC;IACf,MAAM,EAAE,MAAM,CAAC;IACf,MAAM,EAAE,OAAO,EAAE,GAAG,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC;CAC7C,CAAC;AAEF,MAAM,MAAM,aAAa,GAAG;IAC1B,MAAM,EAAE,MAAM,MAAM,CAAC;IACrB,SAAS,EAAE,MAAM,CAAC;IAClB,cAAc,EAAE,CAAC,CAAC,CAAC,CAAC,EAAE,GAAG,KAAK,OAAO,CAAC,GAAG,SAAS,CAAC,EAAE,CAAC;IACtD,cAAc,CAAC,EAAE,CAAC,CAAC,EAAE,GAAG,KAAK,OAAO,CAAC;CACtC,CAAC;AAEF,qBAAa,mBAAmB;IAC9B,MAAM,CAAC,SAAS,CAAC,OAAO,EAAE,OAAO;IAQjC,MAAM,CAAC,QAAQ,CAAC,MAAM,CAAC,EAAE,MAAM;;;;;IAU/B,MAAM,CAAC,UAAU,CAAC,QAAQ,EAAE,QAAQ;;;;IAMpC,MAAM,CAAC,WAAW,CAAC,SAAS,EAAE,SAAS;;;;;;;IAMvC,MAAM,CAAC,YAAY,CAAC,UAAU,EAAE,UAAU;;;;;;;;;;;;;IAO1C,MAAM,CAAC,SAAS,CAAC,OAAO,EAAE,OAAO;;;;;;;IAMjC,MAAM,CAAC,aAAa,CAAC,EAAE,EAAE,WAAW;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;CAWrC;AAED,eAAO,MAAM,aAAa,EAAE,aAAa,EAOxC,CAAC"}
1
+ {"version":3,"file":"advanced.d.ts","sourceRoot":"","sources":["../../../src/client/jsonRpc/advanced.ts"],"names":[],"mappings":"AAAA,OAAO,EACL,WAAW,EACX,aAAa,EACb,cAAc,EACd,WAAW,EACX,YAAY,EACZ,UAAU,EACV,eAAe,EAEhB,MAAM,WAAW,CAAC;AAInB,OAAO,KAAK,EAAE,MAAM,EAAE,MAAM,WAAW,CAAC;AAExC,MAAM,MAAM,cAAc,GAAG;IAC3B,EAAE,EAAE,MAAM,CAAC;IACX,OAAO,EAAE,KAAK,CAAC;IACf,MAAM,EAAE,MAAM,CAAC;IACf,MAAM,EAAE,OAAO,EAAE,GAAG,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC;CAC7C,CAAC;AAEF,MAAM,MAAM,aAAa,GAAG;IAC1B,MAAM,EAAE,MAAM,MAAM,CAAC;IACrB,SAAS,EAAE,MAAM,CAAC;IAElB,cAAc,EAAE,CAAC,CAAC,CAAC,CAAC,EAAE,GAAG,KAAK,OAAO,CAAC,GAAG,SAAS,CAAC,EAAE,CAAC;IAEtD,cAAc,CAAC,EAAE,CAAC,CAAC,EAAE,GAAG,KAAK,OAAO,CAAC;CACtC,CAAC;AAEF,qBAAa,mBAAmB;IAC9B,MAAM,CAAC,SAAS,CAAC,OAAO,EAAE,WAAW;IAQrC,MAAM,CAAC,QAAQ,CAAC,MAAM,EAAE,UAAU;;;;;IAOlC,MAAM,CAAC,UAAU,CAAC,QAAQ,EAAE,YAAY;;;;IAMxC,MAAM,CAAC,WAAW,CAAC,SAAS,EAAE,aAAa;;;;;;;IAM3C,MAAM,CAAC,YAAY,CAAC,UAAU,EAAE,cAAc;;;;;;;;;;;;;IAO9C,MAAM,CAAC,SAAS,CAAC,OAAO,EAAE,WAAW;;;;;;;IAMrC,MAAM,CAAC,aAAa,CAAC,EAAE,EAAE,eAAe;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;CAWzC;AAED,eAAO,MAAM,aAAa,EAAE,aAAa,EAOxC,CAAC"}
@@ -1,10 +1,13 @@
1
1
  "use strict";
2
2
  Object.defineProperty(exports, "__esModule", { value: true });
3
3
  exports.CkbRpcMethods = exports.JsonRpcTransformers = void 0;
4
- const bytes_1 = require("../../bytes");
4
+ const ckb_1 = require("../../ckb");
5
+ const hex_1 = require("../../hex");
6
+ const num_1 = require("../../num");
7
+ const utils_1 = require("../../utils");
5
8
  class JsonRpcTransformers {
6
9
  static toDepType(depType) {
7
- switch (depType) {
10
+ switch ((0, ckb_1.depTypeFrom)(depType)) {
8
11
  case "code":
9
12
  return "code";
10
13
  case "depGroup":
@@ -12,9 +15,6 @@ class JsonRpcTransformers {
12
15
  }
13
16
  }
14
17
  static toScript(script) {
15
- if (!script) {
16
- return null;
17
- }
18
18
  return {
19
19
  code_hash: script.codeHash,
20
20
  hash_type: script.hashType,
@@ -23,21 +23,21 @@ class JsonRpcTransformers {
23
23
  }
24
24
  static toOutPoint(outPoint) {
25
25
  return {
26
- index: (0, bytes_1.toHex)(outPoint.index),
26
+ index: (0, num_1.numToHex)(outPoint.index),
27
27
  tx_hash: outPoint.txHash,
28
28
  };
29
29
  }
30
30
  static toCellInput(cellInput) {
31
31
  return {
32
32
  previous_output: JsonRpcTransformers.toOutPoint(cellInput.previousOutput),
33
- since: (0, bytes_1.toHex)(cellInput.since),
33
+ since: (0, num_1.numToHex)(cellInput.since),
34
34
  };
35
35
  }
36
36
  static toCellOutput(cellOutput) {
37
37
  return {
38
- capacity: (0, bytes_1.toHex)(cellOutput.capacity),
38
+ capacity: (0, num_1.numToHex)(cellOutput.capacity),
39
39
  lock: JsonRpcTransformers.toScript(cellOutput.lock),
40
- type: JsonRpcTransformers.toScript(cellOutput.type),
40
+ type: (0, utils_1.apply)(JsonRpcTransformers.toScript, cellOutput.type),
41
41
  };
42
42
  }
43
43
  static toCellDep(cellDep) {
@@ -48,7 +48,7 @@ class JsonRpcTransformers {
48
48
  }
49
49
  static toTransaction(tx) {
50
50
  return {
51
- version: (0, bytes_1.toHex)(tx.version),
51
+ version: (0, num_1.numToHex)(tx.version),
52
52
  cell_deps: tx.cellDeps.map((c) => JsonRpcTransformers.toCellDep(c)),
53
53
  header_deps: tx.headerDeps,
54
54
  inputs: tx.inputs.map((i) => JsonRpcTransformers.toCellInput(i)),
@@ -64,6 +64,6 @@ exports.CkbRpcMethods = [
64
64
  method: "sendTransaction",
65
65
  rpcMethod: "send_transaction",
66
66
  inTransformers: [JsonRpcTransformers.toTransaction],
67
- outTransformer: bytes_1.toHex,
67
+ outTransformer: hex_1.hexFrom,
68
68
  },
69
69
  ];
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/client/jsonRpc/index.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,MAAM,EAAE,MAAM,WAAW,CAAC;AAExC,OAAO,EAAiB,aAAa,EAAE,cAAc,EAAE,MAAM,YAAY,CAAC;AAE1E,MAAM,WAAW,aAAc,SAAQ,IAAI,CAAC,MAAM,EAAE,iBAAiB,CAAC;CAAG;AAYzE,8BAAsB,aAAc,YAAW,IAAI,CAAC,MAAM,EAAE,iBAAiB,CAAC;IAE1E,OAAO,CAAC,QAAQ,CAAC,GAAG;IACpB,OAAO,CAAC,QAAQ,CAAC,OAAO;gBADP,GAAG,EAAE,MAAM,EACX,OAAO,SAAQ;IAUlC,MAAM;IAIN,WAAW,CAAC,EAAE,SAAS,EAAE,cAAc,EAAE,cAAc,EAAE,EAAE,aAAa,YAChD,OAAO,EAAE;IAU3B,IAAI,CAAC,OAAO,EAAE,cAAc;IAyBlC,MAAM,CAAC,YAAY,CAAC,MAAM,EAAE,MAAM,EAAE,GAAG,EAAE,OAAO,EAAE,GAAG,cAAc;CAQpE"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/client/jsonRpc/index.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAE,MAAM,EAAE,MAAM,WAAW,CAAC;AACxC,OAAO,EAAiB,aAAa,EAAE,cAAc,EAAE,MAAM,YAAY,CAAC;AAE1E,MAAM,WAAW,aAAc,SAAQ,IAAI,CAAC,MAAM,EAAE,iBAAiB,CAAC;CAAG;AAYzE,8BAAsB,aAAc,YAAW,IAAI,CAAC,MAAM,EAAE,iBAAiB,CAAC;IAE1E,OAAO,CAAC,QAAQ,CAAC,GAAG;IACpB,OAAO,CAAC,QAAQ,CAAC,OAAO;gBADP,GAAG,EAAE,MAAM,EACX,OAAO,SAAQ;IAUlC,MAAM;IAIN,WAAW,CAAC,EAAE,SAAS,EAAE,cAAc,EAAE,cAAc,EAAE,EAAE,aAAa,YAChD,OAAO,EAAE;IAU3B,IAAI,CAAC,OAAO,EAAE,cAAc;IA4BlC,MAAM,CAAC,YAAY,CAAC,MAAM,EAAE,MAAM,EAAE,GAAG,EAAE,OAAO,EAAE,GAAG,cAAc;CAQpE"}
@@ -42,7 +42,7 @@ class ClientJsonRpc {
42
42
  signal: aborter.signal,
43
43
  });
44
44
  clearTimeout(abortTimer);
45
- const res = await raw.json();
45
+ const res = (await raw.json());
46
46
  if (res.id !== payload.id) {
47
47
  throw new Error(`Id mismatched, got ${res.id}, expected ${payload.id}`);
48
48
  }
@@ -0,0 +1,7 @@
1
+ export type FixedPoint = bigint;
2
+ export type FixedPointLike = bigint | string | number;
3
+ export declare function fixedPointToString(val: FixedPoint, decimals?: number): string;
4
+ export declare function fixedPointFrom(val: FixedPointLike, decimals?: number): FixedPoint;
5
+ export declare const Zero = 0n;
6
+ export declare const One: bigint;
7
+ //# sourceMappingURL=index.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/fixedPoint/index.ts"],"names":[],"mappings":"AAAA,MAAM,MAAM,UAAU,GAAG,MAAM,CAAC;AAChC,MAAM,MAAM,cAAc,GAAG,MAAM,GAAG,MAAM,GAAG,MAAM,CAAC;AAEtD,wBAAgB,kBAAkB,CAAC,GAAG,EAAE,UAAU,EAAE,QAAQ,SAAI,GAAG,MAAM,CASxE;AAED,wBAAgB,cAAc,CAAC,GAAG,EAAE,cAAc,EAAE,QAAQ,SAAI,GAAG,UAAU,CAY5E;AAED,eAAO,MAAM,IAAI,KAAK,CAAC;AACvB,eAAO,MAAM,GAAG,QAAsB,CAAC"}
@@ -1,10 +1,7 @@
1
1
  "use strict";
2
2
  Object.defineProperty(exports, "__esModule", { value: true });
3
- exports.One = exports.Zero = exports.parseFixedPoint = exports.composeFixedPoint = void 0;
4
- function composeFixedPoint(val, decimals = 8) {
5
- if (val == null) {
6
- return null;
7
- }
3
+ exports.One = exports.Zero = exports.fixedPointFrom = exports.fixedPointToString = void 0;
4
+ function fixedPointToString(val, decimals = 8) {
8
5
  const str = val.toString();
9
6
  const l = str.length <= decimals ? "0" : str.slice(0, -decimals);
10
7
  const r = str.slice(-decimals).padStart(decimals, "0").replace(/0*$/, "");
@@ -13,18 +10,18 @@ function composeFixedPoint(val, decimals = 8) {
13
10
  }
14
11
  return `${l}.${r}`;
15
12
  }
16
- exports.composeFixedPoint = composeFixedPoint;
17
- function parseFixedPoint(ori, decimals = 8) {
18
- if (ori == null) {
19
- return null;
13
+ exports.fixedPointToString = fixedPointToString;
14
+ function fixedPointFrom(val, decimals = 8) {
15
+ if (typeof val === "bigint") {
16
+ return val;
20
17
  }
21
- const [l, r] = ori.toString().split(".");
18
+ const [l, r] = val.toString().split(".");
22
19
  const lVal = BigInt(l.padEnd(l.length + decimals, "0"));
23
20
  if (r === undefined) {
24
21
  return lVal;
25
22
  }
26
23
  return lVal + BigInt(r.slice(0, decimals).padEnd(decimals, "0"));
27
24
  }
28
- exports.parseFixedPoint = parseFixedPoint;
25
+ exports.fixedPointFrom = fixedPointFrom;
29
26
  exports.Zero = 0n;
30
- exports.One = parseFixedPoint("1");
27
+ exports.One = fixedPointFrom("1");
@@ -1,2 +1,2 @@
1
1
  export declare const CKB_BLAKE2B_PERSONAL = "ckb-default-hash";
2
- //# sourceMappingURL=hasher.advanced.d.ts.map
2
+ //# sourceMappingURL=advanced.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"advanced.d.ts","sourceRoot":"","sources":["../../src/hasher/advanced.ts"],"names":[],"mappings":"AAAA,eAAO,MAAM,oBAAoB,qBAAqB,CAAC"}
@@ -1,5 +1,6 @@
1
1
  import { Blake2b } from "blake2b";
2
- import { BytesLike, Hex } from "../primitive";
2
+ import { BytesLike } from "../bytes";
3
+ import { Hex } from "../hex";
3
4
  export declare class Hasher {
4
5
  hasher: Blake2b;
5
6
  constructor(outLength?: number, personal?: string);
@@ -7,4 +8,4 @@ export declare class Hasher {
7
8
  digest(): Hex;
8
9
  }
9
10
  export declare function ckbHash(data: BytesLike): Hex;
10
- //# sourceMappingURL=hasher.d.ts.map
11
+ //# sourceMappingURL=index.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/hasher/index.ts"],"names":[],"mappings":"AAAA,OAAgB,EAAE,OAAO,EAAE,MAAM,SAAS,CAAC;AAC3C,OAAO,EAAE,SAAS,EAA4B,MAAM,UAAU,CAAC;AAC/D,OAAO,EAAE,GAAG,EAAE,MAAM,QAAQ,CAAC;AAG7B,qBAAa,MAAM;IACjB,MAAM,EAAE,OAAO,CAAC;gBAEJ,SAAS,SAAK,EAAE,QAAQ,SAAuB;IAS3D,MAAM,CAAC,IAAI,EAAE,SAAS,GAAG,MAAM;IAK/B,MAAM,IAAI,GAAG;CAGd;AAED,wBAAgB,OAAO,CAAC,IAAI,EAAE,SAAS,GAAG,GAAG,CAE5C"}
@@ -6,13 +6,13 @@ Object.defineProperty(exports, "__esModule", { value: true });
6
6
  exports.ckbHash = exports.Hasher = void 0;
7
7
  const blake2b_1 = __importDefault(require("blake2b"));
8
8
  const bytes_1 = require("../bytes");
9
- const hasher_advanced_1 = require("./hasher.advanced");
9
+ const advanced_1 = require("./advanced");
10
10
  class Hasher {
11
- constructor(outLength = 32, personal = hasher_advanced_1.CKB_BLAKE2B_PERSONAL) {
12
- this.hasher = (0, blake2b_1.default)(outLength, undefined, undefined, (0, bytes_1.encodeUtf8)(personal));
11
+ constructor(outLength = 32, personal = advanced_1.CKB_BLAKE2B_PERSONAL) {
12
+ this.hasher = (0, blake2b_1.default)(outLength, undefined, undefined, (0, bytes_1.bytesFromUtf8)(personal));
13
13
  }
14
14
  update(data) {
15
- this.hasher.update((0, bytes_1.toBytes)(data));
15
+ this.hasher.update((0, bytes_1.bytesFrom)(data));
16
16
  return this;
17
17
  }
18
18
  digest() {
@@ -0,0 +1,5 @@
1
+ import { BytesLike } from "../bytes";
2
+ export type Hex = `0x${string}`;
3
+ export type HexLike = BytesLike;
4
+ export declare function hexFrom(hex: HexLike): Hex;
5
+ //# sourceMappingURL=index.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/hex/index.ts"],"names":[],"mappings":"AACA,OAAO,EAAa,SAAS,EAAE,MAAM,UAAU,CAAC;AAEhD,MAAM,MAAM,GAAG,GAAG,KAAK,MAAM,EAAE,CAAC;AAChC,MAAM,MAAM,OAAO,GAAG,SAAS,CAAC;AAEhC,wBAAgB,OAAO,CAAC,GAAG,EAAE,OAAO,GAAG,GAAG,CAEzC"}
@@ -0,0 +1,9 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.hexFrom = void 0;
4
+ const buffer_1 = require("buffer/");
5
+ const bytes_1 = require("../bytes");
6
+ function hexFrom(hex) {
7
+ return `0x${buffer_1.Buffer.from((0, bytes_1.bytesFrom)(hex)).toString("hex")}`;
8
+ }
9
+ exports.hexFrom = hexFrom;
@@ -0,0 +1,13 @@
1
+ import { Bytes, BytesLike } from "../bytes";
2
+ import { Hex, HexLike } from "../hex";
3
+ export type Num = bigint;
4
+ export type NumLike = string | number | bigint | HexLike;
5
+ export declare function numFrom(val: NumLike): Num;
6
+ export declare function numToHex(val: NumLike): Hex;
7
+ export declare function numToBytes(val: NumLike, bytes?: number): Bytes;
8
+ export declare function numLeToBytes(val: NumLike, bytes?: number): Bytes;
9
+ export declare function numBeToBytes(val: NumLike, bytes?: number): Bytes;
10
+ export declare function numFromBytes(val: BytesLike): Num;
11
+ export declare function numLeFromBytes(val: BytesLike): Num;
12
+ export declare function numBeFromBytes(val: BytesLike): Num;
13
+ //# sourceMappingURL=index.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/num/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,KAAK,EAAE,SAAS,EAA0B,MAAM,UAAU,CAAC;AACpE,OAAO,EAAE,GAAG,EAAE,OAAO,EAAW,MAAM,QAAQ,CAAC;AAE/C,MAAM,MAAM,GAAG,GAAG,MAAM,CAAC;AACzB,MAAM,MAAM,OAAO,GAAG,MAAM,GAAG,MAAM,GAAG,MAAM,GAAG,OAAO,CAAC;AAEzD,wBAAgB,OAAO,CAAC,GAAG,EAAE,OAAO,GAAG,GAAG,CAUzC;AAED,wBAAgB,QAAQ,CAAC,GAAG,EAAE,OAAO,GAAG,GAAG,CAE1C;AAED,wBAAgB,UAAU,CAAC,GAAG,EAAE,OAAO,EAAE,KAAK,CAAC,EAAE,MAAM,GAAG,KAAK,CAE9D;AAED,wBAAgB,YAAY,CAAC,GAAG,EAAE,OAAO,EAAE,KAAK,CAAC,EAAE,MAAM,GAAG,KAAK,CAEhE;AAED,wBAAgB,YAAY,CAAC,GAAG,EAAE,OAAO,EAAE,KAAK,CAAC,EAAE,MAAM,GAAG,KAAK,CAUhE;AAED,wBAAgB,YAAY,CAAC,GAAG,EAAE,SAAS,GAAG,GAAG,CAEhD;AAED,wBAAgB,cAAc,CAAC,GAAG,EAAE,SAAS,GAAG,GAAG,CAElD;AAED,wBAAgB,cAAc,CAAC,GAAG,EAAE,SAAS,GAAG,GAAG,CAElD"}
@@ -0,0 +1,47 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.numBeFromBytes = exports.numLeFromBytes = exports.numFromBytes = exports.numBeToBytes = exports.numLeToBytes = exports.numToBytes = exports.numToHex = exports.numFrom = void 0;
4
+ const bytes_1 = require("../bytes");
5
+ const hex_1 = require("../hex");
6
+ function numFrom(val) {
7
+ if (typeof val === "bigint") {
8
+ return val;
9
+ }
10
+ if (typeof val === "string" || typeof val === "number") {
11
+ return BigInt(val);
12
+ }
13
+ return BigInt((0, hex_1.hexFrom)(val));
14
+ }
15
+ exports.numFrom = numFrom;
16
+ function numToHex(val) {
17
+ return `0x${numFrom(val).toString(16)}`;
18
+ }
19
+ exports.numToHex = numToHex;
20
+ function numToBytes(val, bytes) {
21
+ return numLeToBytes(val, bytes);
22
+ }
23
+ exports.numToBytes = numToBytes;
24
+ function numLeToBytes(val, bytes) {
25
+ return numBeToBytes(val, bytes).reverse();
26
+ }
27
+ exports.numLeToBytes = numLeToBytes;
28
+ function numBeToBytes(val, bytes) {
29
+ const rawBytes = (0, bytes_1.bytesFrom)(numFrom(val).toString(16));
30
+ if (bytes == null) {
31
+ return rawBytes;
32
+ }
33
+ return (0, bytes_1.bytesConcat)(Array.from(Array(bytes - rawBytes.length), () => 0), rawBytes);
34
+ }
35
+ exports.numBeToBytes = numBeToBytes;
36
+ function numFromBytes(val) {
37
+ return numLeFromBytes(val);
38
+ }
39
+ exports.numFromBytes = numFromBytes;
40
+ function numLeFromBytes(val) {
41
+ return numBeFromBytes((0, bytes_1.bytesFrom)(val).reverse());
42
+ }
43
+ exports.numLeFromBytes = numLeFromBytes;
44
+ function numBeFromBytes(val) {
45
+ return numFrom((0, bytes_1.bytesFrom)(val));
46
+ }
47
+ exports.numBeFromBytes = numBeFromBytes;
@@ -1,6 +1,6 @@
1
- import { Script, Transaction } from "../ckb";
2
- import { Hex } from "../primitive";
3
- export declare function getSignHashInfo(tx: Transaction, script: Script): Promise<{
1
+ import { ScriptLike, TransactionLike } from "../ckb";
2
+ import { Hex } from "../hex";
3
+ export declare function getSignHashInfo(txLike: TransactionLike, scriptLike: ScriptLike): Promise<{
4
4
  message: Hex;
5
5
  position: number;
6
6
  } | undefined>;
@@ -1 +1 @@
1
- {"version":3,"file":"helpers.d.ts","sourceRoot":"","sources":["../../src/signer/helpers.ts"],"names":[],"mappings":"AAAA,OAAO,EAAU,MAAM,EAAE,WAAW,EAAE,MAAM,QAAQ,CAAC;AACrD,OAAO,EAAE,GAAG,EAAE,MAAM,cAAc,CAAC;AAEnC,wBAAsB,eAAe,CACnC,EAAE,EAAE,WAAW,EACf,MAAM,EAAE,MAAM,GACb,OAAO,CAAC;IAAE,OAAO,EAAE,GAAG,CAAC;IAAC,QAAQ,EAAE,MAAM,CAAA;CAAE,GAAG,SAAS,CAAC,CAoCzD"}
1
+ {"version":3,"file":"helpers.d.ts","sourceRoot":"","sources":["../../src/signer/helpers.ts"],"names":[],"mappings":"AAAA,OAAO,EAAU,UAAU,EAAe,eAAe,EAAE,MAAM,QAAQ,CAAC;AAE1E,OAAO,EAAE,GAAG,EAAE,MAAM,QAAQ,CAAC;AAE7B,wBAAsB,eAAe,CACnC,MAAM,EAAE,eAAe,EACvB,UAAU,EAAE,UAAU,GACrB,OAAO,CAAC;IAAE,OAAO,EAAE,GAAG,CAAC;IAAC,QAAQ,EAAE,MAAM,CAAA;CAAE,GAAG,SAAS,CAAC,CAsCzD"}
@@ -2,17 +2,20 @@
2
2
  Object.defineProperty(exports, "__esModule", { value: true });
3
3
  exports.getSignHashInfo = void 0;
4
4
  const ckb_1 = require("../ckb");
5
- async function getSignHashInfo(tx, script) {
5
+ const hasher_1 = require("../hasher");
6
+ async function getSignHashInfo(txLike, scriptLike) {
7
+ const tx = ckb_1.Transaction.from(txLike);
8
+ const script = ckb_1.Script.from(scriptLike);
6
9
  let position = -1;
7
- const hasher = new ckb_1.Hasher();
8
- hasher.update(ckb_1.Transaction.hashRaw(tx));
10
+ const hasher = new hasher_1.Hasher();
11
+ hasher.update(tx.hash());
9
12
  tx.witnesses.forEach((witness, i) => {
10
13
  const input = tx.inputs[i];
11
14
  if (input) {
12
15
  if (!input.cellOutput?.lock) {
13
16
  throw Error("Incomplete inputs info");
14
17
  }
15
- if (!ckb_1.Script.eq(input.cellOutput?.lock, script)) {
18
+ if (!script.eq(input.cellOutput?.lock)) {
16
19
  return;
17
20
  }
18
21
  if (position === -1) {
@@ -1,3 +1,5 @@
1
1
  export * from "./helpers";
2
2
  export * from "./signer";
3
+ export * from "./signerReadonly";
4
+ export * from "./signerReadonlyCkbScript";
3
5
  //# sourceMappingURL=index.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/signer/index.ts"],"names":[],"mappings":"AAAA,cAAc,WAAW,CAAC;AAC1B,cAAc,UAAU,CAAC"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/signer/index.ts"],"names":[],"mappings":"AAAA,cAAc,WAAW,CAAC;AAC1B,cAAc,UAAU,CAAC;AACzB,cAAc,kBAAkB,CAAC;AACjC,cAAc,2BAA2B,CAAC"}
@@ -16,3 +16,5 @@ var __exportStar = (this && this.__exportStar) || function(m, exports) {
16
16
  Object.defineProperty(exports, "__esModule", { value: true });
17
17
  __exportStar(require("./helpers"), exports);
18
18
  __exportStar(require("./signer"), exports);
19
+ __exportStar(require("./signerReadonly"), exports);
20
+ __exportStar(require("./signerReadonlyCkbScript"), exports);
@@ -1,8 +1,17 @@
1
- import { Viewer } from "../viewer";
2
- import { BytesLike, Hex } from "../primitive";
1
+ import { Address } from "../address";
2
+ import { BytesLike } from "../bytes";
3
3
  import { Transaction } from "../ckb";
4
- export declare abstract class Signer extends Viewer {
4
+ import { Client } from "../client";
5
+ import { Hex } from "../hex";
6
+ export declare abstract class Signer {
7
+ readonly client: Client;
8
+ constructor(client: Client);
5
9
  abstract connect(): Promise<void>;
10
+ abstract getInternalAddress(): Promise<string>;
11
+ abstract getAddressObjs(): Promise<Address[]>;
12
+ getRecommendedAddressObj(_preference?: unknown): Promise<Address>;
13
+ getRecommendedAddress(preference?: unknown): Promise<string>;
14
+ getAddresses(): Promise<string[]>;
6
15
  abstract signMessage(message: string | BytesLike): Promise<Hex>;
7
16
  sendTransaction(tx: Transaction): Promise<Hex>;
8
17
  signTransaction(tx: Transaction): Promise<Transaction>;
@@ -1 +1 @@
1
- {"version":3,"file":"signer.d.ts","sourceRoot":"","sources":["../../src/signer/signer.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,MAAM,EAAE,MAAM,WAAW,CAAC;AACnC,OAAO,EAAE,SAAS,EAAE,GAAG,EAAE,MAAM,cAAc,CAAC;AAC9C,OAAO,EAAE,WAAW,EAAE,MAAM,QAAQ,CAAC;AAErC,8BAAsB,MAAO,SAAQ,MAAM;IACzC,QAAQ,CAAC,OAAO,IAAI,OAAO,CAAC,IAAI,CAAC;IAEjC,QAAQ,CAAC,WAAW,CAAC,OAAO,EAAE,MAAM,GAAG,SAAS,GAAG,OAAO,CAAC,GAAG,CAAC;IAEzD,eAAe,CAAC,EAAE,EAAE,WAAW,GAAG,OAAO,CAAC,GAAG,CAAC;IAI9C,eAAe,CAAC,EAAE,EAAE,WAAW,GAAG,OAAO,CAAC,WAAW,CAAC;IAI5D,QAAQ,CAAC,mBAAmB,CAAC,EAAE,EAAE,WAAW,GAAG,OAAO,CAAC,WAAW,CAAC;CACpE"}
1
+ {"version":3,"file":"signer.d.ts","sourceRoot":"","sources":["../../src/signer/signer.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,OAAO,EAAE,MAAM,YAAY,CAAC;AACrC,OAAO,EAAE,SAAS,EAAE,MAAM,UAAU,CAAC;AACrC,OAAO,EAAE,WAAW,EAAE,MAAM,QAAQ,CAAC;AACrC,OAAO,EAAE,MAAM,EAAE,MAAM,WAAW,CAAC;AACnC,OAAO,EAAE,GAAG,EAAE,MAAM,QAAQ,CAAC;AAE7B,8BAAsB,MAAM;aACE,MAAM,EAAE,MAAM;gBAAd,MAAM,EAAE,MAAM;IAE1C,QAAQ,CAAC,OAAO,IAAI,OAAO,CAAC,IAAI,CAAC;IAEjC,QAAQ,CAAC,kBAAkB,IAAI,OAAO,CAAC,MAAM,CAAC;IAE9C,QAAQ,CAAC,cAAc,IAAI,OAAO,CAAC,OAAO,EAAE,CAAC;IACvC,wBAAwB,CAAC,WAAW,CAAC,EAAE,OAAO,GAAG,OAAO,CAAC,OAAO,CAAC;IAIjE,qBAAqB,CAAC,UAAU,CAAC,EAAE,OAAO,GAAG,OAAO,CAAC,MAAM,CAAC;IAG5D,YAAY,IAAI,OAAO,CAAC,MAAM,EAAE,CAAC;IAMvC,QAAQ,CAAC,WAAW,CAAC,OAAO,EAAE,MAAM,GAAG,SAAS,GAAG,OAAO,CAAC,GAAG,CAAC;IAEzD,eAAe,CAAC,EAAE,EAAE,WAAW,GAAG,OAAO,CAAC,GAAG,CAAC;IAI9C,eAAe,CAAC,EAAE,EAAE,WAAW,GAAG,OAAO,CAAC,WAAW,CAAC;IAI5D,QAAQ,CAAC,mBAAmB,CAAC,EAAE,EAAE,WAAW,GAAG,OAAO,CAAC,WAAW,CAAC;CACpE"}
@@ -1,8 +1,19 @@
1
1
  "use strict";
2
2
  Object.defineProperty(exports, "__esModule", { value: true });
3
3
  exports.Signer = void 0;
4
- const viewer_1 = require("../viewer");
5
- class Signer extends viewer_1.Viewer {
4
+ class Signer {
5
+ constructor(client) {
6
+ this.client = client;
7
+ }
8
+ async getRecommendedAddressObj(_preference) {
9
+ return (await this.getAddressObjs())[0];
10
+ }
11
+ async getRecommendedAddress(preference) {
12
+ return (await this.getRecommendedAddressObj(preference)).toString();
13
+ }
14
+ async getAddresses() {
15
+ return this.getAddressObjs().then((addresses) => addresses.map((address) => address.toString()));
16
+ }
6
17
  async sendTransaction(tx) {
7
18
  return this.client.sendTransaction(await this.signTransaction(tx));
8
19
  }
@@ -0,0 +1,8 @@
1
+ import { Signer } from ".";
2
+ import { Transaction } from "../ckb";
3
+ import { Hex } from "../hex";
4
+ export declare abstract class SignerReadonly extends Signer {
5
+ signMessage(): Promise<Hex>;
6
+ signOnlyTransaction(): Promise<Transaction>;
7
+ }
8
+ //# sourceMappingURL=signerReadonly.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"signerReadonly.d.ts","sourceRoot":"","sources":["../../src/signer/signerReadonly.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,MAAM,EAAE,MAAM,GAAG,CAAC;AAC3B,OAAO,EAAE,WAAW,EAAE,MAAM,QAAQ,CAAC;AACrC,OAAO,EAAE,GAAG,EAAE,MAAM,QAAQ,CAAC;AAE7B,8BAAsB,cAAe,SAAQ,MAAM;IACjD,WAAW,IAAI,OAAO,CAAC,GAAG,CAAC;IAI3B,mBAAmB,IAAI,OAAO,CAAC,WAAW,CAAC;CAG5C"}
@@ -0,0 +1,13 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.SignerReadonly = void 0;
4
+ const _1 = require(".");
5
+ class SignerReadonly extends _1.Signer {
6
+ signMessage() {
7
+ throw new Error("Method not implemented.");
8
+ }
9
+ signOnlyTransaction() {
10
+ throw new Error("Method not implemented.");
11
+ }
12
+ }
13
+ exports.SignerReadonly = SignerReadonly;
@@ -1,11 +1,12 @@
1
- import { Client } from "../client";
2
- import { Script } from "./types";
3
- import { Viewer } from "../viewer";
4
1
  import { Address } from "../address";
5
- export declare class ViewerCkbScript extends Viewer {
2
+ import { Script } from "../ckb";
3
+ import { Client } from "../client";
4
+ import { SignerReadonly } from "./signerReadonly";
5
+ export declare class SignerReadonlyCkbScript extends SignerReadonly {
6
6
  private readonly script;
7
7
  constructor(script: Script, client: Client);
8
+ connect(): Promise<void>;
8
9
  getInternalAddress(): Promise<string>;
9
10
  getAddressObjs(): Promise<Address[]>;
10
11
  }
11
- //# sourceMappingURL=viewerCkbScript.d.ts.map
12
+ //# sourceMappingURL=signerReadonlyCkbScript.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"signerReadonlyCkbScript.d.ts","sourceRoot":"","sources":["../../src/signer/signerReadonlyCkbScript.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,OAAO,EAAE,MAAM,YAAY,CAAC;AACrC,OAAO,EAAE,MAAM,EAAE,MAAM,QAAQ,CAAC;AAChC,OAAO,EAAE,MAAM,EAAE,MAAM,WAAW,CAAC;AACnC,OAAO,EAAE,cAAc,EAAE,MAAM,kBAAkB,CAAC;AAElD,qBAAa,uBAAwB,SAAQ,cAAc;IAEvD,OAAO,CAAC,QAAQ,CAAC,MAAM;gBAAN,MAAM,EAAE,MAAM,EAC/B,MAAM,EAAE,MAAM;IAKV,OAAO,IAAI,OAAO,CAAC,IAAI,CAAC;IAIxB,kBAAkB,IAAI,OAAO,CAAC,MAAM,CAAC;IAIrC,cAAc,IAAI,OAAO,CAAC,OAAO,EAAE,CAAC;CAG3C"}