@ckb-ccc/core 0.0.5-alpha.1 → 0.0.5-alpha.11

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 (173) hide show
  1. package/dist/address/index.d.ts +1 -1
  2. package/dist/address/index.d.ts.map +1 -1
  3. package/dist/address/index.js +4 -4
  4. package/dist/ckb/transaction.d.ts +4 -6
  5. package/dist/ckb/transaction.d.ts.map +1 -1
  6. package/dist/ckb/transaction.js +14 -15
  7. package/dist/client/client.d.ts +2 -2
  8. package/dist/client/client.d.ts.map +1 -1
  9. package/dist/client/client.js +2 -1
  10. package/dist/client/clientPublicMainnet.d.ts +1 -1
  11. package/dist/client/clientPublicMainnet.d.ts.map +1 -1
  12. package/dist/client/clientPublicMainnet.js +1 -1
  13. package/dist/client/clientPublicTestnet.d.ts +1 -1
  14. package/dist/client/clientPublicTestnet.d.ts.map +1 -1
  15. package/dist/client/clientPublicTestnet.js +1 -1
  16. package/dist/client/jsonRpc/index.d.ts +3 -3
  17. package/dist/client/jsonRpc/index.d.ts.map +1 -1
  18. package/dist/client/jsonRpc/index.js +4 -4
  19. package/dist/signer/btc/index.d.ts +1 -0
  20. package/dist/signer/btc/index.d.ts.map +1 -1
  21. package/dist/signer/btc/index.js +1 -0
  22. package/dist/signer/btc/signerBtc.d.ts +9 -1
  23. package/dist/signer/btc/signerBtc.d.ts.map +1 -1
  24. package/dist/signer/btc/signerBtc.js +19 -3
  25. package/dist/signer/btc/signerBtcPublicKeyReadonly.d.ts +0 -6
  26. package/dist/signer/btc/signerBtcPublicKeyReadonly.d.ts.map +1 -1
  27. package/dist/signer/btc/signerBtcPublicKeyReadonly.js +0 -8
  28. package/dist/signer/btc/verify.d.ts +3 -0
  29. package/dist/signer/btc/verify.d.ts.map +1 -0
  30. package/dist/signer/btc/verify.js +6 -0
  31. package/dist/signer/ckb/index.d.ts +1 -0
  32. package/dist/signer/ckb/index.d.ts.map +1 -1
  33. package/dist/signer/ckb/index.js +1 -0
  34. package/dist/signer/ckb/signerCkbScriptReadonly.d.ts +3 -7
  35. package/dist/signer/ckb/signerCkbScriptReadonly.d.ts.map +1 -1
  36. package/dist/signer/ckb/signerCkbScriptReadonly.js +8 -10
  37. package/dist/signer/ckb/verifyJoyId.d.ts +3 -0
  38. package/dist/signer/ckb/verifyJoyId.d.ts.map +1 -0
  39. package/dist/signer/ckb/verifyJoyId.js +12 -0
  40. package/dist/signer/dummy/alwaysError.d.ts +9 -0
  41. package/dist/signer/dummy/alwaysError.d.ts.map +1 -0
  42. package/dist/signer/dummy/alwaysError.js +10 -0
  43. package/dist/signer/dummy/dummy.d.ts +12 -0
  44. package/dist/signer/dummy/dummy.d.ts.map +1 -0
  45. package/dist/signer/dummy/dummy.js +19 -0
  46. package/dist/signer/dummy/index.d.ts +4 -0
  47. package/dist/signer/dummy/index.d.ts.map +1 -0
  48. package/dist/signer/dummy/index.js +3 -0
  49. package/dist/signer/dummy/openLink.d.ts +9 -0
  50. package/dist/signer/dummy/openLink.d.ts.map +1 -0
  51. package/dist/signer/dummy/openLink.js +10 -0
  52. package/dist/signer/evm/index.d.ts +1 -0
  53. package/dist/signer/evm/index.d.ts.map +1 -1
  54. package/dist/signer/evm/index.js +1 -0
  55. package/dist/signer/evm/signerEvm.d.ts +3 -1
  56. package/dist/signer/evm/signerEvm.d.ts.map +1 -1
  57. package/dist/signer/evm/signerEvm.js +10 -4
  58. package/dist/signer/evm/signerEvmAddressReadonly.d.ts +0 -6
  59. package/dist/signer/evm/signerEvmAddressReadonly.d.ts.map +1 -1
  60. package/dist/signer/evm/signerEvmAddressReadonly.js +0 -8
  61. package/dist/signer/evm/verify.d.ts +3 -0
  62. package/dist/signer/evm/verify.d.ts.map +1 -0
  63. package/dist/signer/evm/verify.js +6 -0
  64. package/dist/signer/index.d.ts +1 -0
  65. package/dist/signer/index.d.ts.map +1 -1
  66. package/dist/signer/index.js +1 -0
  67. package/dist/signer/{signer.d.ts → signer/index.d.ts} +69 -25
  68. package/dist/signer/signer/index.d.ts.map +1 -0
  69. package/dist/signer/{signer.js → signer/index.js} +101 -16
  70. package/dist/utils/index.d.ts +60 -0
  71. package/dist/utils/index.d.ts.map +1 -1
  72. package/dist/utils/index.js +20 -0
  73. package/dist.commonjs/address/index.d.ts +1 -1
  74. package/dist.commonjs/address/index.d.ts.map +1 -1
  75. package/dist.commonjs/address/index.js +4 -4
  76. package/dist.commonjs/ckb/transaction.d.ts +4 -6
  77. package/dist.commonjs/ckb/transaction.d.ts.map +1 -1
  78. package/dist.commonjs/ckb/transaction.js +14 -15
  79. package/dist.commonjs/client/client.d.ts +2 -2
  80. package/dist.commonjs/client/client.d.ts.map +1 -1
  81. package/dist.commonjs/client/client.js +2 -1
  82. package/dist.commonjs/client/clientPublicMainnet.d.ts +1 -1
  83. package/dist.commonjs/client/clientPublicMainnet.d.ts.map +1 -1
  84. package/dist.commonjs/client/clientPublicMainnet.js +1 -1
  85. package/dist.commonjs/client/clientPublicTestnet.d.ts +1 -1
  86. package/dist.commonjs/client/clientPublicTestnet.d.ts.map +1 -1
  87. package/dist.commonjs/client/clientPublicTestnet.js +1 -1
  88. package/dist.commonjs/client/jsonRpc/index.d.ts +3 -3
  89. package/dist.commonjs/client/jsonRpc/index.d.ts.map +1 -1
  90. package/dist.commonjs/client/jsonRpc/index.js +4 -4
  91. package/dist.commonjs/signer/btc/index.d.ts +1 -0
  92. package/dist.commonjs/signer/btc/index.d.ts.map +1 -1
  93. package/dist.commonjs/signer/btc/index.js +1 -0
  94. package/dist.commonjs/signer/btc/signerBtc.d.ts +9 -1
  95. package/dist.commonjs/signer/btc/signerBtc.d.ts.map +1 -1
  96. package/dist.commonjs/signer/btc/signerBtc.js +18 -2
  97. package/dist.commonjs/signer/btc/signerBtcPublicKeyReadonly.d.ts +0 -6
  98. package/dist.commonjs/signer/btc/signerBtcPublicKeyReadonly.d.ts.map +1 -1
  99. package/dist.commonjs/signer/btc/signerBtcPublicKeyReadonly.js +0 -8
  100. package/dist.commonjs/signer/btc/verify.d.ts +3 -0
  101. package/dist.commonjs/signer/btc/verify.d.ts.map +1 -0
  102. package/dist.commonjs/signer/btc/verify.js +10 -0
  103. package/dist.commonjs/signer/ckb/index.d.ts +1 -0
  104. package/dist.commonjs/signer/ckb/index.d.ts.map +1 -1
  105. package/dist.commonjs/signer/ckb/index.js +1 -0
  106. package/dist.commonjs/signer/ckb/signerCkbScriptReadonly.d.ts +3 -7
  107. package/dist.commonjs/signer/ckb/signerCkbScriptReadonly.d.ts.map +1 -1
  108. package/dist.commonjs/signer/ckb/signerCkbScriptReadonly.js +7 -9
  109. package/dist.commonjs/signer/ckb/verifyJoyId.d.ts +3 -0
  110. package/dist.commonjs/signer/ckb/verifyJoyId.d.ts.map +1 -0
  111. package/dist.commonjs/signer/ckb/verifyJoyId.js +16 -0
  112. package/dist.commonjs/signer/dummy/alwaysError.d.ts +9 -0
  113. package/dist.commonjs/signer/dummy/alwaysError.d.ts.map +1 -0
  114. package/dist.commonjs/signer/dummy/alwaysError.js +14 -0
  115. package/dist.commonjs/signer/dummy/dummy.d.ts +12 -0
  116. package/dist.commonjs/signer/dummy/dummy.d.ts.map +1 -0
  117. package/dist.commonjs/signer/dummy/dummy.js +23 -0
  118. package/dist.commonjs/signer/dummy/index.d.ts +4 -0
  119. package/dist.commonjs/signer/dummy/index.d.ts.map +1 -0
  120. package/dist.commonjs/signer/dummy/index.js +19 -0
  121. package/dist.commonjs/signer/dummy/openLink.d.ts +9 -0
  122. package/dist.commonjs/signer/dummy/openLink.d.ts.map +1 -0
  123. package/dist.commonjs/signer/dummy/openLink.js +14 -0
  124. package/dist.commonjs/signer/evm/index.d.ts +1 -0
  125. package/dist.commonjs/signer/evm/index.d.ts.map +1 -1
  126. package/dist.commonjs/signer/evm/index.js +1 -0
  127. package/dist.commonjs/signer/evm/signerEvm.d.ts +3 -1
  128. package/dist.commonjs/signer/evm/signerEvm.d.ts.map +1 -1
  129. package/dist.commonjs/signer/evm/signerEvm.js +9 -3
  130. package/dist.commonjs/signer/evm/signerEvmAddressReadonly.d.ts +0 -6
  131. package/dist.commonjs/signer/evm/signerEvmAddressReadonly.d.ts.map +1 -1
  132. package/dist.commonjs/signer/evm/signerEvmAddressReadonly.js +0 -8
  133. package/dist.commonjs/signer/evm/verify.d.ts +3 -0
  134. package/dist.commonjs/signer/evm/verify.d.ts.map +1 -0
  135. package/dist.commonjs/signer/evm/verify.js +10 -0
  136. package/dist.commonjs/signer/index.d.ts +1 -0
  137. package/dist.commonjs/signer/index.d.ts.map +1 -1
  138. package/dist.commonjs/signer/index.js +1 -0
  139. package/dist.commonjs/signer/{signer.d.ts → signer/index.d.ts} +69 -25
  140. package/dist.commonjs/signer/signer/index.d.ts.map +1 -0
  141. package/dist.commonjs/signer/signer/index.js +211 -0
  142. package/dist.commonjs/utils/index.d.ts +60 -0
  143. package/dist.commonjs/utils/index.d.ts.map +1 -1
  144. package/dist.commonjs/utils/index.js +23 -1
  145. package/package.json +6 -3
  146. package/src/address/index.ts +4 -7
  147. package/src/ckb/transaction.ts +18 -18
  148. package/src/client/client.ts +7 -6
  149. package/src/client/clientPublicMainnet.ts +1 -1
  150. package/src/client/clientPublicTestnet.ts +1 -1
  151. package/src/client/jsonRpc/index.ts +3 -3
  152. package/src/signer/btc/index.ts +1 -0
  153. package/src/signer/btc/signerBtc.ts +22 -7
  154. package/src/signer/btc/signerBtcPublicKeyReadonly.ts +0 -9
  155. package/src/signer/btc/verify.ts +14 -0
  156. package/src/signer/ckb/index.ts +1 -0
  157. package/src/signer/ckb/signerCkbScriptReadonly.ts +10 -11
  158. package/src/signer/ckb/verifyJoyId.ts +20 -0
  159. package/src/signer/dummy/alwaysError.ts +17 -0
  160. package/src/signer/dummy/dummy.ts +28 -0
  161. package/src/signer/dummy/index.ts +3 -0
  162. package/src/signer/dummy/openLink.ts +17 -0
  163. package/src/signer/evm/index.ts +1 -0
  164. package/src/signer/evm/signerEvm.ts +16 -10
  165. package/src/signer/evm/signerEvmAddressReadonly.ts +0 -9
  166. package/src/signer/evm/verify.ts +16 -0
  167. package/src/signer/index.ts +1 -0
  168. package/src/signer/{signer.ts → signer/index.ts} +135 -25
  169. package/src/utils/index.ts +108 -0
  170. package/dist/signer/signer.d.ts.map +0 -1
  171. package/dist.commonjs/signer/signer.d.ts.map +0 -1
  172. package/dist.commonjs/signer/signer.js +0 -125
  173. package/dist.commonjs/tsconfig.commonjs.tsbuildinfo +0 -1
@@ -1,6 +1,26 @@
1
+ /**
2
+ * A type safe way to apply a transformer on a value if it's not empty.
3
+ *
4
+ * @param transformer - The transformer.
5
+ * @param value - The value to be transformed.
6
+ * @returns If the value is empty, it remains its type. Otherwise it will be transformed.
7
+ */
1
8
  export function apply(transformer, value) {
2
9
  if (value == null) {
3
10
  return value;
4
11
  }
5
12
  return transformer(value);
6
13
  }
14
+ export async function reduceAsync(values, accumulator, init) {
15
+ if (init === undefined) {
16
+ if (values.length === 0) {
17
+ throw new TypeError("Reduce of empty array with no initial value");
18
+ }
19
+ init = values[0];
20
+ values = values.slice(1);
21
+ }
22
+ return values.reduce((current, b) => current.then((v) => Promise.resolve(accumulator(v, b)).then((r) => r ?? v)), Promise.resolve(init));
23
+ }
24
+ export function isWebview(userAgent) {
25
+ return /webview|wv|ip((?!.*Safari)|(?=.*like Safari))/i.test(userAgent);
26
+ }
@@ -42,7 +42,7 @@ export declare class Address {
42
42
  * @param client - The client instance used to fetch the address prefix.
43
43
  * @returns A promise that resolves to an Address instance.
44
44
  */
45
- static fromScript(script: ScriptLike, client: Client): Promise<Address>;
45
+ static fromScript(script: ScriptLike, client: Client): Address;
46
46
  static fromKnownScript(script: KnownScript, args: HexLike, client: Client): Promise<Address>;
47
47
  /**
48
48
  * Converts the Address instance to a string.
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/address/index.ts"],"names":[],"mappings":"AAEA,OAAO,EAAE,MAAM,EAAE,UAAU,EAAmB,MAAM,QAAQ,CAAC;AAC7D,OAAO,EAAE,MAAM,EAAE,WAAW,EAAE,MAAM,WAAW,CAAC;AAChD,OAAO,EAAE,OAAO,EAAE,MAAM,QAAQ,CAAC;AAQjC,MAAM,MAAM,WAAW,GAAG;IACxB,MAAM,EAAE,UAAU,CAAC;IACnB,MAAM,EAAE,MAAM,CAAC;CAChB,CAAC;AAEF;;GAEG;AAEH,qBAAa,OAAO;IAQT,MAAM,EAAE,MAAM;IACd,MAAM,EAAE,MAAM;IARvB;;;;;OAKG;gBAEM,MAAM,EAAE,MAAM,EACd,MAAM,EAAE,MAAM;IAGvB;;;;;OAKG;IAEH,MAAM,CAAC,IAAI,CAAC,OAAO,EAAE,WAAW,GAAG,OAAO;IAQ1C;;;;;;;;OAQG;WAEU,UAAU,CACrB,OAAO,EAAE,MAAM,EACf,OAAO,EAAE,MAAM,GAAG,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,GACvC,OAAO,CAAC,OAAO,CAAC;IAmBnB;;;;;;OAMG;WAEU,UAAU,CACrB,MAAM,EAAE,UAAU,EAClB,MAAM,EAAE,MAAM,GACb,OAAO,CAAC,OAAO,CAAC;WAIN,eAAe,CAC1B,MAAM,EAAE,WAAW,EACnB,IAAI,EAAE,OAAO,EACb,MAAM,EAAE,MAAM;IAWhB;;;;OAIG;IAEH,QAAQ,IAAI,MAAM;CAcnB"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/address/index.ts"],"names":[],"mappings":"AAEA,OAAO,EAAE,MAAM,EAAE,UAAU,EAAmB,MAAM,QAAQ,CAAC;AAC7D,OAAO,EAAE,MAAM,EAAE,WAAW,EAAE,MAAM,WAAW,CAAC;AAChD,OAAO,EAAE,OAAO,EAAE,MAAM,QAAQ,CAAC;AAQjC,MAAM,MAAM,WAAW,GAAG;IACxB,MAAM,EAAE,UAAU,CAAC;IACnB,MAAM,EAAE,MAAM,CAAC;CAChB,CAAC;AAEF;;GAEG;AAEH,qBAAa,OAAO;IAQT,MAAM,EAAE,MAAM;IACd,MAAM,EAAE,MAAM;IARvB;;;;;OAKG;gBAEM,MAAM,EAAE,MAAM,EACd,MAAM,EAAE,MAAM;IAGvB;;;;;OAKG;IAEH,MAAM,CAAC,IAAI,CAAC,OAAO,EAAE,WAAW,GAAG,OAAO;IAQ1C;;;;;;;;OAQG;WAEU,UAAU,CACrB,OAAO,EAAE,MAAM,EACf,OAAO,EAAE,MAAM,GAAG,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,GACvC,OAAO,CAAC,OAAO,CAAC;IAmBnB;;;;;;OAMG;IAEH,MAAM,CAAC,UAAU,CAAC,MAAM,EAAE,UAAU,EAAE,MAAM,EAAE,MAAM,GAAG,OAAO;WAIjD,eAAe,CAC1B,MAAM,EAAE,WAAW,EACnB,IAAI,EAAE,OAAO,EACb,MAAM,EAAE,MAAM;IAWhB;;;;OAIG;IAEH,QAAQ,IAAI,MAAM;CAcnB"}
@@ -46,7 +46,7 @@ class Address {
46
46
  if (!client) {
47
47
  throw new Error(`Unknown address prefix ${prefix}`);
48
48
  }
49
- const expectedPrefix = await client.getAddressPrefix();
49
+ const expectedPrefix = client.addressPrefix;
50
50
  if (expectedPrefix !== prefix) {
51
51
  throw new Error(`Unknown address prefix ${prefix}, expected ${expectedPrefix}`);
52
52
  }
@@ -59,8 +59,8 @@ class Address {
59
59
  * @param client - The client instance used to fetch the address prefix.
60
60
  * @returns A promise that resolves to an Address instance.
61
61
  */
62
- static async fromScript(script, client) {
63
- return Address.from({ script, prefix: await client.getAddressPrefix() });
62
+ static fromScript(script, client) {
63
+ return Address.from({ script, prefix: client.addressPrefix });
64
64
  }
65
65
  static async fromKnownScript(script, args, client) {
66
66
  return Address.from({
@@ -68,7 +68,7 @@ class Address {
68
68
  ...(await client.getKnownScript(script)),
69
69
  args,
70
70
  },
71
- prefix: await client.getAddressPrefix(),
71
+ prefix: client.addressPrefix,
72
72
  });
73
73
  }
74
74
  /**
@@ -256,12 +256,10 @@ export declare class CellInput {
256
256
  * @returns The completed instance.
257
257
  * @example
258
258
  * ```typescript
259
- * if (!cellInput.cellOutput) {
260
- * await cellInput.completeExtraInfos();
261
- * }
259
+ * await cellInput.completeExtraInfos();
262
260
  * ```
263
261
  */
264
- completeExtraInfos(client: Client): Promise<CellInput>;
262
+ completeExtraInfos(client: Client): Promise<void>;
265
263
  /**
266
264
  * Converts the CellInput instance to molecule data format.
267
265
  *
@@ -597,7 +595,7 @@ export declare class Transaction {
597
595
  * await tx.setWitnessArgsAt(0, witnessArgs);
598
596
  * ```
599
597
  */
600
- setWitnessArgsAt(index: number, witness: WitnessArgs): Transaction;
598
+ setWitnessArgsAt(index: number, witness: WitnessArgs): void;
601
599
  /**
602
600
  * Prepare dummy witness for sighash all method
603
601
  *
@@ -611,6 +609,6 @@ export declare class Transaction {
611
609
  * await tx.prepareSighashAllWitness(scriptLike, 85, client);
612
610
  * ```
613
611
  */
614
- prepareSighashAllWitness(scriptLike: ScriptLike, lockLen: number, client: Client): Promise<Transaction>;
612
+ prepareSighashAllWitness(scriptLike: ScriptLike, lockLen: number, client: Client): Promise<void>;
615
613
  }
616
614
  //# sourceMappingURL=transaction.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"transaction.d.ts","sourceRoot":"","sources":["../../src/ckb/transaction.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"transaction.d.ts","sourceRoot":"","sources":["../../src/ckb/transaction.ts"],"names":[],"mappings":"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"}
@@ -316,22 +316,20 @@ class CellInput {
316
316
  * @returns The completed instance.
317
317
  * @example
318
318
  * ```typescript
319
- * if (!cellInput.cellOutput) {
320
- * await cellInput.completeExtraInfos();
321
- * }
319
+ * await cellInput.completeExtraInfos();
322
320
  * ```
323
321
  */
324
322
  async completeExtraInfos(client) {
325
323
  if (this.cellOutput && this.outputData && this.blockNumber) {
326
- return this;
324
+ return;
327
325
  }
328
326
  const cell = await client.getCell(this.previousOutput);
329
- if (cell) {
330
- this.cellOutput = cell.cellOutput;
331
- this.outputData = cell.outputData;
332
- this.blockNumber = cell.blockNumber;
327
+ if (!cell) {
328
+ return;
333
329
  }
334
- return this;
330
+ this.cellOutput = cell.cellOutput;
331
+ this.outputData = cell.outputData;
332
+ this.blockNumber = cell.blockNumber;
335
333
  }
336
334
  /**
337
335
  * Converts the CellInput instance to molecule data format.
@@ -699,8 +697,9 @@ class Transaction {
699
697
  const hasher = new hasher_1.Hasher();
700
698
  hasher.update(this.hash());
701
699
  for (let i = 0; i < this.witnesses.length; i += 1) {
702
- if (this.inputs[i]) {
703
- const input = await this.inputs[i].completeExtraInfos(client);
700
+ const input = this.inputs[i];
701
+ if (input) {
702
+ await input.completeExtraInfos(client);
704
703
  if (!input.cellOutput) {
705
704
  throw Error("Unable to resolve inputs info");
706
705
  }
@@ -739,7 +738,8 @@ class Transaction {
739
738
  async findInputIndexByLock(scriptLike, client) {
740
739
  const script = script_1.Script.from(scriptLike);
741
740
  for (let i = 0; i < this.inputs.length; i += 1) {
742
- const input = await this.inputs[i].completeExtraInfos(client);
741
+ const input = this.inputs[i];
742
+ await input.completeExtraInfos(client);
743
743
  if (!input.cellOutput) {
744
744
  throw Error("Unable to resolve inputs info");
745
745
  }
@@ -782,7 +782,6 @@ class Transaction {
782
782
  this.witnesses.push(...Array.from(new Array(index - this.witnesses.length), () => "0x"));
783
783
  }
784
784
  this.witnesses[index] = (0, hex_1.hexFrom)(witness.toBytes());
785
- return this;
786
785
  }
787
786
  /**
788
787
  * Prepare dummy witness for sighash all method
@@ -800,11 +799,11 @@ class Transaction {
800
799
  async prepareSighashAllWitness(scriptLike, lockLen, client) {
801
800
  const position = await this.findInputIndexByLock(scriptLike, client);
802
801
  if (position === undefined) {
803
- return this;
802
+ return;
804
803
  }
805
804
  const witness = this.getWitnessArgsAt(position) ?? WitnessArgs.from({});
806
805
  witness.lock = (0, hex_1.hexFrom)(Array.from(new Array(lockLen), () => 0));
807
- return this.setWitnessArgsAt(position, witness);
806
+ this.setWitnessArgsAt(position, witness);
808
807
  }
809
808
  }
810
809
  exports.Transaction = Transaction;
@@ -11,8 +11,8 @@ export declare enum KnownScript {
11
11
  OmniLock = 5
12
12
  }
13
13
  export declare abstract class Client {
14
- abstract getUrl(): string;
15
- abstract getAddressPrefix(): Promise<string>;
14
+ abstract get url(): string;
15
+ abstract get addressPrefix(): string;
16
16
  abstract getKnownScript(script: KnownScript): Promise<Pick<Script, "codeHash" | "hashType">>;
17
17
  abstract sendTransaction(transaction: TransactionLike, validator?: OutputsValidator): Promise<Hex>;
18
18
  abstract getTransaction(txHash: HexLike): Promise<ClientTransactionResponse | null>;
@@ -1 +1 @@
1
- {"version":3,"file":"client.d.ts","sourceRoot":"","sources":["../../src/client/client.ts"],"names":[],"mappings":"AAAA,OAAO,EACL,IAAI,EACJ,YAAY,EACZ,MAAM,EACN,UAAU,EACV,eAAe,EAChB,MAAM,QAAQ,CAAC;AAEhB,OAAO,EAAE,GAAG,EAAE,OAAO,EAAE,MAAM,QAAQ,CAAC;AACtC,OAAO,EAAE,GAAG,EAAE,OAAO,EAAW,MAAM,QAAQ,CAAC;AAC/C,OAAO,EACL,uBAAuB,EACvB,0BAA0B,EAC1B,yBAAyB,EACzB,gBAAgB,EACjB,MAAM,eAAe,CAAC;AAEvB,oBAAY,WAAW;IACrB,iBAAiB,IAAA;IACjB,iBAAiB,IAAA;IACjB,YAAY,IAAA;IACZ,KAAK,IAAA;IACL,IAAI,IAAA;IACJ,QAAQ,IAAA;CACT;AAED,8BAAsB,MAAM;IAC1B,QAAQ,CAAC,MAAM,IAAI,MAAM;IAEzB,QAAQ,CAAC,gBAAgB,IAAI,OAAO,CAAC,MAAM,CAAC;IAC5C,QAAQ,CAAC,cAAc,CACrB,MAAM,EAAE,WAAW,GAClB,OAAO,CAAC,IAAI,CAAC,MAAM,EAAE,UAAU,GAAG,UAAU,CAAC,CAAC;IAEjD,QAAQ,CAAC,eAAe,CACtB,WAAW,EAAE,eAAe,EAC5B,SAAS,CAAC,EAAE,gBAAgB,GAC3B,OAAO,CAAC,GAAG,CAAC;IACf,QAAQ,CAAC,cAAc,CACrB,MAAM,EAAE,OAAO,GACd,OAAO,CAAC,yBAAyB,GAAG,IAAI,CAAC;IAEtC,OAAO,CAAC,QAAQ,EAAE,YAAY,GAAG,OAAO,CAAC,IAAI,GAAG,IAAI,CAAC;IAmB3D,QAAQ,CAAC,cAAc,CACrB,GAAG,EAAE,0BAA0B,EAC/B,KAAK,CAAC,EAAE,KAAK,GAAG,MAAM,EACtB,KAAK,CAAC,EAAE,OAAO,EACf,KAAK,CAAC,EAAE,MAAM,GACb,OAAO,CAAC,uBAAuB,CAAC;IAE5B,SAAS,CACd,GAAG,EAAE,0BAA0B,EAC/B,KAAK,CAAC,EAAE,KAAK,GAAG,MAAM,EACtB,KAAK,SAAK,GACT,cAAc,CAAC,IAAI,CAAC;IAoBvB,sBAAsB,CACpB,IAAI,EAAE,UAAU,EAChB,IAAI,EAAE,UAAU,EAChB,QAAQ,UAAO,GACd,cAAc,CAAC,IAAI,CAAC;IAYvB,QAAQ,CAAC,gBAAgB,CAAC,GAAG,EAAE,0BAA0B,GAAG,OAAO,CAAC,GAAG,CAAC;IAElE,gBAAgB,CAAC,IAAI,EAAE,UAAU,GAAG,OAAO,CAAC,GAAG,CAAC;IAYhD,UAAU,CAAC,KAAK,EAAE,UAAU,EAAE,GAAG,OAAO,CAAC,GAAG,CAAC;CAOpD"}
1
+ {"version":3,"file":"client.d.ts","sourceRoot":"","sources":["../../src/client/client.ts"],"names":[],"mappings":"AAAA,OAAO,EACL,IAAI,EACJ,YAAY,EACZ,MAAM,EACN,UAAU,EACV,eAAe,EAChB,MAAM,QAAQ,CAAC;AAEhB,OAAO,EAAE,GAAG,EAAE,OAAO,EAAE,MAAM,QAAQ,CAAC;AACtC,OAAO,EAAE,GAAG,EAAE,OAAO,EAAW,MAAM,QAAQ,CAAC;AAE/C,OAAO,EACL,uBAAuB,EACvB,0BAA0B,EAC1B,yBAAyB,EACzB,gBAAgB,EACjB,MAAM,eAAe,CAAC;AAEvB,oBAAY,WAAW;IACrB,iBAAiB,IAAA;IACjB,iBAAiB,IAAA;IACjB,YAAY,IAAA;IACZ,KAAK,IAAA;IACL,IAAI,IAAA;IACJ,QAAQ,IAAA;CACT;AAED,8BAAsB,MAAM;IAC1B,QAAQ,KAAK,GAAG,IAAI,MAAM,CAAC;IAC3B,QAAQ,KAAK,aAAa,IAAI,MAAM,CAAC;IAErC,QAAQ,CAAC,cAAc,CACrB,MAAM,EAAE,WAAW,GAClB,OAAO,CAAC,IAAI,CAAC,MAAM,EAAE,UAAU,GAAG,UAAU,CAAC,CAAC;IAEjD,QAAQ,CAAC,eAAe,CACtB,WAAW,EAAE,eAAe,EAC5B,SAAS,CAAC,EAAE,gBAAgB,GAC3B,OAAO,CAAC,GAAG,CAAC;IACf,QAAQ,CAAC,cAAc,CACrB,MAAM,EAAE,OAAO,GACd,OAAO,CAAC,yBAAyB,GAAG,IAAI,CAAC;IAEtC,OAAO,CAAC,QAAQ,EAAE,YAAY,GAAG,OAAO,CAAC,IAAI,GAAG,IAAI,CAAC;IAmB3D,QAAQ,CAAC,cAAc,CACrB,GAAG,EAAE,0BAA0B,EAC/B,KAAK,CAAC,EAAE,KAAK,GAAG,MAAM,EACtB,KAAK,CAAC,EAAE,OAAO,EACf,KAAK,CAAC,EAAE,MAAM,GACb,OAAO,CAAC,uBAAuB,CAAC;IAE5B,SAAS,CACd,GAAG,EAAE,0BAA0B,EAC/B,KAAK,CAAC,EAAE,KAAK,GAAG,MAAM,EACtB,KAAK,SAAK,GACT,cAAc,CAAC,IAAI,CAAC;IAoBvB,sBAAsB,CACpB,IAAI,EAAE,UAAU,EAChB,IAAI,EAAE,UAAU,EAChB,QAAQ,UAAO,GACd,cAAc,CAAC,IAAI,CAAC;IAYvB,QAAQ,CAAC,gBAAgB,CAAC,GAAG,EAAE,0BAA0B,GAAG,OAAO,CAAC,GAAG,CAAC;IAElE,gBAAgB,CAAC,IAAI,EAAE,UAAU,GAAG,OAAO,CAAC,GAAG,CAAC;IAYhD,UAAU,CAAC,KAAK,EAAE,UAAU,EAAE,GAAG,OAAO,CAAC,GAAG,CAAC;CAOpD"}
@@ -4,6 +4,7 @@ exports.Client = exports.KnownScript = void 0;
4
4
  const ckb_1 = require("../ckb");
5
5
  const fixedPoint_1 = require("../fixedPoint");
6
6
  const num_1 = require("../num");
7
+ const utils_1 = require("../utils");
7
8
  var KnownScript;
8
9
  (function (KnownScript) {
9
10
  KnownScript[KnownScript["Secp256k1Blake160"] = 0] = "Secp256k1Blake160";
@@ -66,7 +67,7 @@ class Client {
66
67
  });
67
68
  }
68
69
  async getBalance(locks) {
69
- return locks.reduce((res, lock) => this.getBalanceSingle(lock).then((a) => res.then((b) => a + b)), Promise.resolve(fixedPoint_1.Zero));
70
+ return (0, utils_1.reduceAsync)(locks, async (acc, lock) => acc + (await this.getBalanceSingle(lock)), fixedPoint_1.Zero);
70
71
  }
71
72
  }
72
73
  exports.Client = Client;
@@ -3,7 +3,7 @@ import { KnownScript } from "./client";
3
3
  import { ClientJsonRpc } from "./jsonRpc";
4
4
  export declare class ClientPublicMainnet extends ClientJsonRpc {
5
5
  constructor(url?: string, timeout?: number);
6
- getAddressPrefix(): Promise<string>;
6
+ get addressPrefix(): string;
7
7
  getKnownScript(script: KnownScript): Promise<Pick<Script, "codeHash" | "hashType">>;
8
8
  }
9
9
  //# sourceMappingURL=clientPublicMainnet.d.ts.map
@@ -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,GAAG,SAAgC,EAAE,OAAO,CAAC,EAAE,MAAM;IAI3D,gBAAgB,IAAI,OAAO,CAAC,MAAM,CAAC;IAInC,cAAc,CAClB,MAAM,EAAE,WAAW,GAClB,OAAO,CAAC,IAAI,CAAC,MAAM,EAAE,UAAU,GAAG,UAAU,CAAC,CAAC;CAGlD"}
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,GAAG,SAAgC,EAAE,OAAO,CAAC,EAAE,MAAM;IAIjE,IAAI,aAAa,IAAI,MAAM,CAE1B;IAEK,cAAc,CAClB,MAAM,EAAE,WAAW,GAClB,OAAO,CAAC,IAAI,CAAC,MAAM,EAAE,UAAU,GAAG,UAAU,CAAC,CAAC;CAGlD"}
@@ -7,7 +7,7 @@ class ClientPublicMainnet extends jsonRpc_1.ClientJsonRpc {
7
7
  constructor(url = "https://mainnet.ckbapp.dev/", timeout) {
8
8
  super(url, timeout);
9
9
  }
10
- async getAddressPrefix() {
10
+ get addressPrefix() {
11
11
  return "ckb";
12
12
  }
13
13
  async getKnownScript(script) {
@@ -3,7 +3,7 @@ import { KnownScript } from "./client";
3
3
  import { ClientJsonRpc } from "./jsonRpc";
4
4
  export declare class ClientPublicTestnet extends ClientJsonRpc {
5
5
  constructor(url?: string, timeout?: number);
6
- getAddressPrefix(): Promise<string>;
6
+ get addressPrefix(): string;
7
7
  getKnownScript(script: KnownScript): Promise<Pick<Script, "codeHash" | "hashType">>;
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,GAAG,SAAgC,EAAE,OAAO,CAAC,EAAE,MAAM;IAI3D,gBAAgB,IAAI,OAAO,CAAC,MAAM,CAAC;IAInC,cAAc,CAClB,MAAM,EAAE,WAAW,GAClB,OAAO,CAAC,IAAI,CAAC,MAAM,EAAE,UAAU,GAAG,UAAU,CAAC,CAAC;CAGlD"}
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,GAAG,SAAgC,EAAE,OAAO,CAAC,EAAE,MAAM;IAIjE,IAAI,aAAa,IAAI,MAAM,CAE1B;IAEK,cAAc,CAClB,MAAM,EAAE,WAAW,GAClB,OAAO,CAAC,IAAI,CAAC,MAAM,EAAE,UAAU,GAAG,UAAU,CAAC,CAAC;CAGlD"}
@@ -7,7 +7,7 @@ class ClientPublicTestnet extends jsonRpc_1.ClientJsonRpc {
7
7
  constructor(url = "https://testnet.ckbapp.dev/", timeout) {
8
8
  super(url, timeout);
9
9
  }
10
- async getAddressPrefix() {
10
+ get addressPrefix() {
11
11
  return "ckt";
12
12
  }
13
13
  async getKnownScript(script) {
@@ -9,7 +9,7 @@ import { JsonRpcPayload } from "./advanced";
9
9
  * Provides methods for sending transactions and building JSON-RPC payloads.
10
10
  */
11
11
  export declare abstract class ClientJsonRpc extends Client {
12
- private readonly url;
12
+ private readonly url_;
13
13
  private readonly timeout;
14
14
  /**
15
15
  * Creates an instance of ClientJsonRpc.
@@ -17,13 +17,13 @@ export declare abstract class ClientJsonRpc extends Client {
17
17
  * @param url - The URL of the JSON-RPC server.
18
18
  * @param timeout - The timeout for requests in milliseconds, default is 30000.
19
19
  */
20
- constructor(url: string, timeout?: number);
20
+ constructor(url_: string, timeout?: number);
21
21
  /**
22
22
  * Returns the URL of the JSON-RPC server.
23
23
  *
24
24
  * @returns The URL of the JSON-RPC server.
25
25
  */
26
- getUrl(): string;
26
+ get url(): string;
27
27
  /**
28
28
  * Send a transaction to node.
29
29
  *
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/client/jsonRpc/index.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,eAAe,EAAE,MAAM,WAAW,CAAC;AAC5C,OAAO,EAAE,GAAG,EAAE,OAAO,EAAW,MAAM,WAAW,CAAC;AAClD,OAAO,EAAE,GAAG,EAAE,OAAO,EAAqB,MAAM,WAAW,CAAC;AAC5D,OAAO,EAAE,MAAM,EAAE,MAAM,WAAW,CAAC;AACnC,OAAO,EACL,uBAAuB,EACvB,0BAA0B,EAC1B,yBAAyB,EACzB,gBAAgB,EACjB,MAAM,gBAAgB,CAAC;AACxB,OAAO,EAAE,cAAc,EAAuB,MAAM,YAAY,CAAC;AA0BjE;;;GAGG;AAEH,8BAAsB,aAAc,SAAQ,MAAM;IAS9C,OAAO,CAAC,QAAQ,CAAC,GAAG;IACpB,OAAO,CAAC,QAAQ,CAAC,OAAO;IAT1B;;;;;OAKG;gBAGgB,GAAG,EAAE,MAAM,EACX,OAAO,SAAQ;IAKlC;;;;OAIG;IAEH,MAAM;IAIN;;;;;;OAMG;IAEH,eAAe,gBAKA,eAAe,cAChB,gBAAgB,GAAG,SAAS,KACrC,QAAQ,GAAG,CAAC,CAAC;IAElB;;;;;OAKG;IAEH,cAAc,WAIA,OAAO,KAAK,QAAQ,yBAAyB,CAAC,CAAC;IAE7D;;;;;;;;OAQG;IAEH,cAAc,QASP,0BAA0B,UACvB,KAAK,GAAG,MAAM,UACd,OAAO,UACP,MAAM,KACX,QAAQ,uBAAuB,CAAC,CAAC;IAEtC;;;;;OAKG;IAEH,gBAAgB,QAIL,0BAA0B,KAAK,QAAQ,GAAG,CAAC,CAAC;IAEvD;;;;;;;OAOG;IAEH,WAAW,CACT,SAAS,EAAE,MAAM,EACjB,cAAc,EAAE,CAAC,CAAC,CAAC,CAAC,EAAE,GAAG,KAAK,OAAO,CAAC,GAAG,SAAS,CAAC,EAAE,EACrD,cAAc,CAAC,EAAE,CAAC,CAAC,EAAE,GAAG,KAAK,OAAO,YAEd,OAAO,EAAE;IAkBjC;;;;;;;OAOG;IAEG,IAAI,CAAC,OAAO,EAAE,cAAc;IA4BlC;;;;;;OAMG;IAEH,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,EAAE,eAAe,EAAE,MAAM,WAAW,CAAC;AAC5C,OAAO,EAAE,GAAG,EAAE,OAAO,EAAW,MAAM,WAAW,CAAC;AAClD,OAAO,EAAE,GAAG,EAAE,OAAO,EAAqB,MAAM,WAAW,CAAC;AAC5D,OAAO,EAAE,MAAM,EAAE,MAAM,WAAW,CAAC;AACnC,OAAO,EACL,uBAAuB,EACvB,0BAA0B,EAC1B,yBAAyB,EACzB,gBAAgB,EACjB,MAAM,gBAAgB,CAAC;AACxB,OAAO,EAAE,cAAc,EAAuB,MAAM,YAAY,CAAC;AA0BjE;;;GAGG;AAEH,8BAAsB,aAAc,SAAQ,MAAM;IAS9C,OAAO,CAAC,QAAQ,CAAC,IAAI;IACrB,OAAO,CAAC,QAAQ,CAAC,OAAO;IAT1B;;;;;OAKG;gBAGgB,IAAI,EAAE,MAAM,EACZ,OAAO,SAAQ;IAKlC;;;;OAIG;IAEH,IAAI,GAAG,WAEN;IAED;;;;;;OAMG;IAEH,eAAe,gBAKA,eAAe,cAChB,gBAAgB,GAAG,SAAS,KACrC,QAAQ,GAAG,CAAC,CAAC;IAElB;;;;;OAKG;IAEH,cAAc,WAIA,OAAO,KAAK,QAAQ,yBAAyB,CAAC,CAAC;IAE7D;;;;;;;;OAQG;IAEH,cAAc,QASP,0BAA0B,UACvB,KAAK,GAAG,MAAM,UACd,OAAO,UACP,MAAM,KACX,QAAQ,uBAAuB,CAAC,CAAC;IAEtC;;;;;OAKG;IAEH,gBAAgB,QAIL,0BAA0B,KAAK,QAAQ,GAAG,CAAC,CAAC;IAEvD;;;;;;;OAOG;IAEH,WAAW,CACT,SAAS,EAAE,MAAM,EACjB,cAAc,EAAE,CAAC,CAAC,CAAC,CAAC,EAAE,GAAG,KAAK,OAAO,CAAC,GAAG,SAAS,CAAC,EAAE,EACrD,cAAc,CAAC,EAAE,CAAC,CAAC,EAAE,GAAG,KAAK,OAAO,YAEd,OAAO,EAAE;IAkBjC;;;;;;;OAOG;IAEG,IAAI,CAAC,OAAO,EAAE,cAAc;IA4BlC;;;;;;OAMG;IAEH,MAAM,CAAC,YAAY,CAAC,MAAM,EAAE,MAAM,EAAE,GAAG,EAAE,OAAO,EAAE,GAAG,cAAc;CAQpE"}
@@ -39,9 +39,9 @@ class ClientJsonRpc extends client_1.Client {
39
39
  * @param url - The URL of the JSON-RPC server.
40
40
  * @param timeout - The timeout for requests in milliseconds, default is 30000.
41
41
  */
42
- constructor(url, timeout = 30000) {
42
+ constructor(url_, timeout = 30000) {
43
43
  super();
44
- this.url = url;
44
+ this.url_ = url_;
45
45
  this.timeout = timeout;
46
46
  /**
47
47
  * Send a transaction to node.
@@ -85,8 +85,8 @@ class ClientJsonRpc extends client_1.Client {
85
85
  *
86
86
  * @returns The URL of the JSON-RPC server.
87
87
  */
88
- getUrl() {
89
- return this.url;
88
+ get url() {
89
+ return this.url_;
90
90
  }
91
91
  /**
92
92
  * Builds a sender function for a JSON-RPC method.
@@ -1,3 +1,4 @@
1
1
  export * from "./signerBtc";
2
2
  export * from "./signerBtcPublicKeyReadonly";
3
+ export * from "./verify";
3
4
  //# sourceMappingURL=index.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/signer/btc/index.ts"],"names":[],"mappings":"AAAA,cAAc,aAAa,CAAC;AAC5B,cAAc,8BAA8B,CAAC"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/signer/btc/index.ts"],"names":[],"mappings":"AAAA,cAAc,aAAa,CAAC;AAC5B,cAAc,8BAA8B,CAAC;AAC7C,cAAc,UAAU,CAAC"}
@@ -16,3 +16,4 @@ var __exportStar = (this && this.__exportStar) || function(m, exports) {
16
16
  Object.defineProperty(exports, "__esModule", { value: true });
17
17
  __exportStar(require("./signerBtc"), exports);
18
18
  __exportStar(require("./signerBtcPublicKeyReadonly"), exports);
19
+ __exportStar(require("./verify"), exports);
@@ -1,13 +1,15 @@
1
1
  import { Address } from "../../address";
2
2
  import { Transaction, TransactionLike } from "../../ckb";
3
3
  import { HexLike } from "../../hex";
4
- import { Signer } from "../signer";
4
+ import { Signer, SignerSignType, SignerType } from "../signer";
5
5
  /**
6
6
  * An abstract class extending the Signer class for Bitcoin-like signing operations.
7
7
  * This class provides methods to get Bitcoin account, public key, and internal address,
8
8
  * as well as signing transactions.
9
9
  */
10
10
  export declare abstract class SignerBtc extends Signer {
11
+ get type(): SignerType;
12
+ get signType(): SignerSignType;
11
13
  /**
12
14
  * Gets the Bitcoin account associated with the signer.
13
15
  *
@@ -26,6 +28,12 @@ export declare abstract class SignerBtc extends Signer {
26
28
  * @returns A promise that resolves to a string representing the internal address.
27
29
  */
28
30
  getInternalAddress(): Promise<string>;
31
+ /**
32
+ * Gets the identity, which is the Bitcoin public key in this case.
33
+ *
34
+ * @returns A promise that resolves to a string representing the identity
35
+ */
36
+ getIdentity(): Promise<string>;
29
37
  /**
30
38
  * Gets an array of Address objects representing the known script addresses for the signer.
31
39
  *
@@ -1 +1 @@
1
- {"version":3,"file":"signerBtc.d.ts","sourceRoot":"","sources":["../../../src/signer/btc/signerBtc.ts"],"names":[],"mappings":"AAEA,OAAO,EAAE,OAAO,EAAE,MAAM,eAAe,CAAC;AAExC,OAAO,EAAE,WAAW,EAAE,eAAe,EAAe,MAAM,WAAW,CAAC;AAEtE,OAAO,EAAE,OAAO,EAAW,MAAM,WAAW,CAAC;AAE7C,OAAO,EAAE,MAAM,EAAE,MAAM,WAAW,CAAC;AAEnC;;;;GAIG;AACH,8BAAsB,SAAU,SAAQ,MAAM;IAC5C;;;;OAIG;IACH,QAAQ,CAAC,aAAa,IAAI,OAAO,CAAC,MAAM,CAAC;IAEzC;;;;OAIG;IACH,QAAQ,CAAC,eAAe,IAAI,OAAO,CAAC,OAAO,CAAC;IAE5C;;;;OAIG;IACG,kBAAkB,IAAI,OAAO,CAAC,MAAM,CAAC;IAI3C;;;;OAIG;IACG,cAAc,IAAI,OAAO,CAAC,OAAO,EAAE,CAAC;IAa1C;;;;;OAKG;IACG,kBAAkB,CAAC,MAAM,EAAE,eAAe,GAAG,OAAO,CAAC,WAAW,CAAC;IASvE;;;;;OAKG;IACG,mBAAmB,CAAC,MAAM,EAAE,eAAe,GAAG,OAAO,CAAC,WAAW,CAAC;CAgCzE"}
1
+ {"version":3,"file":"signerBtc.d.ts","sourceRoot":"","sources":["../../../src/signer/btc/signerBtc.ts"],"names":[],"mappings":"AAEA,OAAO,EAAE,OAAO,EAAE,MAAM,eAAe,CAAC;AAExC,OAAO,EAAE,WAAW,EAAE,eAAe,EAAe,MAAM,WAAW,CAAC;AAEtE,OAAO,EAAE,OAAO,EAAW,MAAM,WAAW,CAAC;AAE7C,OAAO,EAAE,MAAM,EAAE,cAAc,EAAE,UAAU,EAAE,MAAM,WAAW,CAAC;AAE/D;;;;GAIG;AACH,8BAAsB,SAAU,SAAQ,MAAM;IAC5C,IAAI,IAAI,IAAI,UAAU,CAErB;IAED,IAAI,QAAQ,IAAI,cAAc,CAE7B;IAED;;;;OAIG;IACH,QAAQ,CAAC,aAAa,IAAI,OAAO,CAAC,MAAM,CAAC;IAEzC;;;;OAIG;IACH,QAAQ,CAAC,eAAe,IAAI,OAAO,CAAC,OAAO,CAAC;IAE5C;;;;OAIG;IACG,kBAAkB,IAAI,OAAO,CAAC,MAAM,CAAC;IAI3C;;;;OAIG;IACG,WAAW,IAAI,OAAO,CAAC,MAAM,CAAC;IAIpC;;;;OAIG;IACG,cAAc,IAAI,OAAO,CAAC,OAAO,EAAE,CAAC;IAa1C;;;;;OAKG;IACG,kBAAkB,CAAC,MAAM,EAAE,eAAe,GAAG,OAAO,CAAC,WAAW,CAAC;IAOvE;;;;;OAKG;IACG,mBAAmB,CAAC,MAAM,EAAE,eAAe,GAAG,OAAO,CAAC,WAAW,CAAC;CAgCzE"}
@@ -16,6 +16,12 @@ const signer_1 = require("../signer");
16
16
  * as well as signing transactions.
17
17
  */
18
18
  class SignerBtc extends signer_1.Signer {
19
+ get type() {
20
+ return signer_1.SignerType.BTC;
21
+ }
22
+ get signType() {
23
+ return signer_1.SignerSignType.BtcEcdsa;
24
+ }
19
25
  /**
20
26
  * Gets the internal address, which is the Bitcoin account in this case.
21
27
  *
@@ -24,6 +30,14 @@ class SignerBtc extends signer_1.Signer {
24
30
  async getInternalAddress() {
25
31
  return this.getBtcAccount();
26
32
  }
33
+ /**
34
+ * Gets the identity, which is the Bitcoin public key in this case.
35
+ *
36
+ * @returns A promise that resolves to a string representing the identity
37
+ */
38
+ async getIdentity() {
39
+ return (0, hex_1.hexFrom)(await this.getBtcPublicKey()).slice(2);
40
+ }
27
41
  /**
28
42
  * Gets an array of Address objects representing the known script addresses for the signer.
29
43
  *
@@ -43,8 +57,10 @@ class SignerBtc extends signer_1.Signer {
43
57
  * @returns A promise that resolves to the prepared Transaction object.
44
58
  */
45
59
  async prepareTransaction(txLike) {
60
+ const tx = ckb_1.Transaction.from(txLike);
46
61
  const { script } = await this.getRecommendedAddressObj();
47
- return ckb_1.Transaction.from(txLike).prepareSighashAllWitness(script, 85, this.client);
62
+ await tx.prepareSighashAllWitness(script, 85, this.client);
63
+ return tx;
48
64
  }
49
65
  /**
50
66
  * Signs a transaction without modifying it.
@@ -59,7 +75,7 @@ class SignerBtc extends signer_1.Signer {
59
75
  if (!info) {
60
76
  return tx;
61
77
  }
62
- const signature = (0, bytes_1.bytesFrom)(await this.signMessage(`CKB (Bitcoin Layer) transaction: ${info.message}`), "base64");
78
+ const signature = (0, bytes_1.bytesFrom)(await this.signMessageRaw(`CKB (Bitcoin Layer) transaction: ${info.message}`), "base64");
63
79
  signature[0] = 31 + ((signature[0] - 27) % 4);
64
80
  const witness = ckb_1.WitnessArgs.fromBytes(tx.witnesses[info.position]);
65
81
  witness.lock = (0, hex_1.hexFrom)((0, bytes_1.bytesConcat)((0, num_1.numToBytes)(5 * 4 + signature.length, 4), (0, num_1.numToBytes)(4 * 4, 4), (0, num_1.numToBytes)(5 * 4 + signature.length, 4), (0, num_1.numToBytes)(5 * 4 + signature.length, 4), (0, num_1.numToBytes)(signature.length, 4), signature));
@@ -16,12 +16,6 @@ export declare class SignerBtcPublicKeyReadonly extends SignerBtc {
16
16
  * @param publicKey - The public key associated with the signer.
17
17
  */
18
18
  constructor(client: Client, account: string, publicKey: HexLike);
19
- /**
20
- * Construct a new signer with the client replaced.
21
- *
22
- * @returns A promise that resolves the new Signer.
23
- */
24
- replaceClient(client: Client): Promise<SignerBtcPublicKeyReadonly>;
25
19
  /**
26
20
  * Connects to the client. This implementation does nothing as the class is read-only.
27
21
  *
@@ -1 +1 @@
1
- {"version":3,"file":"signerBtcPublicKeyReadonly.d.ts","sourceRoot":"","sources":["../../../src/signer/btc/signerBtcPublicKeyReadonly.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,MAAM,EAAE,MAAM,cAAc,CAAC;AACtC,OAAO,EAAE,GAAG,EAAE,OAAO,EAAW,MAAM,WAAW,CAAC;AAClD,OAAO,EAAE,SAAS,EAAE,MAAM,aAAa,CAAC;AAExC;;;GAGG;AACH,qBAAa,0BAA2B,SAAQ,SAAS;IAYrD,OAAO,CAAC,QAAQ,CAAC,OAAO;IAX1B,OAAO,CAAC,QAAQ,CAAC,SAAS,CAAM;IAEhC;;;;;;OAMG;gBAED,MAAM,EAAE,MAAM,EACG,OAAO,EAAE,MAAM,EAChC,SAAS,EAAE,OAAO;IAOpB;;;;OAIG;IACG,aAAa,CAAC,MAAM,EAAE,MAAM,GAAG,OAAO,CAAC,0BAA0B,CAAC;IAIxE;;;;OAIG;IACG,OAAO,IAAI,OAAO,CAAC,IAAI,CAAC;IAE9B;;;;OAIG;IACG,WAAW,IAAI,OAAO,CAAC,OAAO,CAAC;IAIrC;;;;;;;;;OASG;IACG,aAAa,IAAI,OAAO,CAAC,MAAM,CAAC;IAItC;;;;;;;;;OASG;IACG,eAAe,IAAI,OAAO,CAAC,GAAG,CAAC;CAGtC"}
1
+ {"version":3,"file":"signerBtcPublicKeyReadonly.d.ts","sourceRoot":"","sources":["../../../src/signer/btc/signerBtcPublicKeyReadonly.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,MAAM,EAAE,MAAM,cAAc,CAAC;AACtC,OAAO,EAAE,GAAG,EAAE,OAAO,EAAW,MAAM,WAAW,CAAC;AAClD,OAAO,EAAE,SAAS,EAAE,MAAM,aAAa,CAAC;AAExC;;;GAGG;AACH,qBAAa,0BAA2B,SAAQ,SAAS;IAYrD,OAAO,CAAC,QAAQ,CAAC,OAAO;IAX1B,OAAO,CAAC,QAAQ,CAAC,SAAS,CAAM;IAEhC;;;;;;OAMG;gBAED,MAAM,EAAE,MAAM,EACG,OAAO,EAAE,MAAM,EAChC,SAAS,EAAE,OAAO;IAOpB;;;;OAIG;IACG,OAAO,IAAI,OAAO,CAAC,IAAI,CAAC;IAE9B;;;;OAIG;IACG,WAAW,IAAI,OAAO,CAAC,OAAO,CAAC;IAIrC;;;;;;;;;OASG;IACG,aAAa,IAAI,OAAO,CAAC,MAAM,CAAC;IAItC;;;;;;;;;OASG;IACG,eAAe,IAAI,OAAO,CAAC,GAAG,CAAC;CAGtC"}
@@ -20,14 +20,6 @@ class SignerBtcPublicKeyReadonly extends signerBtc_1.SignerBtc {
20
20
  this.account = account;
21
21
  this.publicKey = (0, hex_1.hexFrom)(publicKey);
22
22
  }
23
- /**
24
- * Construct a new signer with the client replaced.
25
- *
26
- * @returns A promise that resolves the new Signer.
27
- */
28
- async replaceClient(client) {
29
- return new SignerBtcPublicKeyReadonly(client, this.account, this.publicKey);
30
- }
31
23
  /**
32
24
  * Connects to the client. This implementation does nothing as the class is read-only.
33
25
  *
@@ -0,0 +1,3 @@
1
+ import { BytesLike } from "../../bytes";
2
+ export declare function verifyMessageBtcEcdsa(message: string | BytesLike, signature: string, publicKey: string): boolean;
3
+ //# sourceMappingURL=verify.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"verify.d.ts","sourceRoot":"","sources":["../../../src/signer/btc/verify.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,SAAS,EAAE,MAAM,aAAa,CAAC;AAGxC,wBAAgB,qBAAqB,CACnC,OAAO,EAAE,MAAM,GAAG,SAAS,EAC3B,SAAS,EAAE,MAAM,EACjB,SAAS,EAAE,MAAM,GAChB,OAAO,CAKT"}
@@ -0,0 +1,10 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.verifyMessageBtcEcdsa = void 0;
4
+ const wallet_utils_1 = require("@unisat/wallet-utils");
5
+ const hex_1 = require("../../hex");
6
+ function verifyMessageBtcEcdsa(message, signature, publicKey) {
7
+ const challenge = typeof message === "string" ? message : (0, hex_1.hexFrom)(message).slice(2);
8
+ return (0, wallet_utils_1.verifyMessage)(publicKey, challenge, signature);
9
+ }
10
+ exports.verifyMessageBtcEcdsa = verifyMessageBtcEcdsa;
@@ -1,2 +1,3 @@
1
1
  export * from "./signerCkbScriptReadonly";
2
+ export * from "./verifyJoyId";
2
3
  //# sourceMappingURL=index.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/signer/ckb/index.ts"],"names":[],"mappings":"AAAA,cAAc,2BAA2B,CAAC"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/signer/ckb/index.ts"],"names":[],"mappings":"AAAA,cAAc,2BAA2B,CAAC;AAC1C,cAAc,eAAe,CAAC"}
@@ -15,3 +15,4 @@ var __exportStar = (this && this.__exportStar) || function(m, exports) {
15
15
  };
16
16
  Object.defineProperty(exports, "__esModule", { value: true });
17
17
  __exportStar(require("./signerCkbScriptReadonly"), exports);
18
+ __exportStar(require("./verifyJoyId"), exports);
@@ -1,12 +1,14 @@
1
1
  import { Address } from "../../address";
2
2
  import { ScriptLike } from "../../ckb";
3
3
  import { Client } from "../../client";
4
- import { Signer } from "../signer";
4
+ import { Signer, SignerSignType, SignerType } from "../signer";
5
5
  /**
6
6
  * A class extending Signer that provides read-only access to a CKB script.
7
7
  * This class does not support signing operations.
8
8
  */
9
9
  export declare class SignerCkbScriptReadonly extends Signer {
10
+ get type(): SignerType;
11
+ get signType(): SignerSignType;
10
12
  private readonly script;
11
13
  /**
12
14
  * Creates an instance of SignerCkbScriptReadonly.
@@ -15,12 +17,6 @@ export declare class SignerCkbScriptReadonly extends Signer {
15
17
  * @param script - The script associated with the signer.
16
18
  */
17
19
  constructor(client: Client, script: ScriptLike);
18
- /**
19
- * Construct a new signer with the client replaced.
20
- *
21
- * @returns A promise that resolves the new Signer.
22
- */
23
- replaceClient(client: Client): Promise<SignerCkbScriptReadonly>;
24
20
  /**
25
21
  * Connects to the client. This implementation does nothing as the class is read-only.
26
22
  *
@@ -1 +1 @@
1
- {"version":3,"file":"signerCkbScriptReadonly.d.ts","sourceRoot":"","sources":["../../../src/signer/ckb/signerCkbScriptReadonly.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,OAAO,EAAE,MAAM,eAAe,CAAC;AACxC,OAAO,EAAU,UAAU,EAAE,MAAM,WAAW,CAAC;AAC/C,OAAO,EAAE,MAAM,EAAE,MAAM,cAAc,CAAC;AACtC,OAAO,EAAE,MAAM,EAAE,MAAM,WAAW,CAAC;AAEnC;;;GAGG;AACH,qBAAa,uBAAwB,SAAQ,MAAM;IACjD,OAAO,CAAC,QAAQ,CAAC,MAAM,CAAS;IAEhC;;;;;OAKG;gBACS,MAAM,EAAE,MAAM,EAAE,MAAM,EAAE,UAAU;IAM9C;;;;OAIG;IACG,aAAa,CAAC,MAAM,EAAE,MAAM,GAAG,OAAO,CAAC,uBAAuB,CAAC;IAIrE;;;;OAIG;IACG,OAAO,IAAI,OAAO,CAAC,IAAI,CAAC;IAE9B;;;;OAIG;IACG,WAAW,IAAI,OAAO,CAAC,OAAO,CAAC;IAIrC;;;;;;;;;OASG;IACG,kBAAkB,IAAI,OAAO,CAAC,MAAM,CAAC;IAI3C;;;;;;;;;OASG;IAEG,cAAc,IAAI,OAAO,CAAC,OAAO,EAAE,CAAC;CAG3C"}
1
+ {"version":3,"file":"signerCkbScriptReadonly.d.ts","sourceRoot":"","sources":["../../../src/signer/ckb/signerCkbScriptReadonly.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,OAAO,EAAE,MAAM,eAAe,CAAC;AACxC,OAAO,EAAU,UAAU,EAAE,MAAM,WAAW,CAAC;AAC/C,OAAO,EAAE,MAAM,EAAE,MAAM,cAAc,CAAC;AACtC,OAAO,EAAE,MAAM,EAAE,cAAc,EAAE,UAAU,EAAE,MAAM,WAAW,CAAC;AAE/D;;;GAGG;AACH,qBAAa,uBAAwB,SAAQ,MAAM;IACjD,IAAI,IAAI,IAAI,UAAU,CAErB;IAED,IAAI,QAAQ,IAAI,cAAc,CAE7B;IAED,OAAO,CAAC,QAAQ,CAAC,MAAM,CAAS;IAEhC;;;;;OAKG;gBACS,MAAM,EAAE,MAAM,EAAE,MAAM,EAAE,UAAU;IAM9C;;;;OAIG;IACG,OAAO,IAAI,OAAO,CAAC,IAAI,CAAC;IAE9B;;;;OAIG;IACG,WAAW,IAAI,OAAO,CAAC,OAAO,CAAC;IAIrC;;;;;;;;;OASG;IACG,kBAAkB,IAAI,OAAO,CAAC,MAAM,CAAC;IAI3C;;;;;;;;;OASG;IAEG,cAAc,IAAI,OAAO,CAAC,OAAO,EAAE,CAAC;CAG3C"}
@@ -9,6 +9,12 @@ const signer_1 = require("../signer");
9
9
  * This class does not support signing operations.
10
10
  */
11
11
  class SignerCkbScriptReadonly extends signer_1.Signer {
12
+ get type() {
13
+ return signer_1.SignerType.CKB;
14
+ }
15
+ get signType() {
16
+ return signer_1.SignerSignType.Unknown;
17
+ }
12
18
  /**
13
19
  * Creates an instance of SignerCkbScriptReadonly.
14
20
  *
@@ -19,14 +25,6 @@ class SignerCkbScriptReadonly extends signer_1.Signer {
19
25
  super(client);
20
26
  this.script = ckb_1.Script.from(script);
21
27
  }
22
- /**
23
- * Construct a new signer with the client replaced.
24
- *
25
- * @returns A promise that resolves the new Signer.
26
- */
27
- async replaceClient(client) {
28
- return new SignerCkbScriptReadonly(client, this.script);
29
- }
30
28
  /**
31
29
  * Connects to the client. This implementation does nothing as the class is read-only.
32
30
  *
@@ -65,7 +63,7 @@ class SignerCkbScriptReadonly extends signer_1.Signer {
65
63
  * ```
66
64
  */
67
65
  async getAddressObjs() {
68
- return [await address_1.Address.fromScript(this.script, this.client)];
66
+ return [address_1.Address.fromScript(this.script, this.client)];
69
67
  }
70
68
  }
71
69
  exports.SignerCkbScriptReadonly = SignerCkbScriptReadonly;
@@ -0,0 +1,3 @@
1
+ import { BytesLike } from "../../bytes";
2
+ export declare function verifyMessageJoyId(message: string | BytesLike, signature: string, identity: string): Promise<boolean>;
3
+ //# sourceMappingURL=verifyJoyId.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"verifyJoyId.d.ts","sourceRoot":"","sources":["../../../src/signer/ckb/verifyJoyId.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,SAAS,EAAE,MAAM,aAAa,CAAC;AAGxC,wBAAgB,kBAAkB,CAChC,OAAO,EAAE,MAAM,GAAG,SAAS,EAC3B,SAAS,EAAE,MAAM,EACjB,QAAQ,EAAE,MAAM,GACf,OAAO,CAAC,OAAO,CAAC,CAWlB"}