@ckb-ccc/core 0.0.13 → 0.0.14-alpha.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/CHANGELOG.md +11 -0
- package/dist/client/client.d.ts +1 -1
- package/dist/client/client.d.ts.map +1 -1
- package/dist/client/client.js +2 -2
- package/dist/client/clientTypes.d.ts +9 -0
- package/dist/client/clientTypes.d.ts.map +1 -1
- package/dist/client/clientTypes.js +13 -0
- package/dist/client/jsonRpc/index.d.ts.map +1 -1
- package/dist/client/jsonRpc/index.js +28 -12
- package/dist/signer/ckb/signerCkbPrivateKey.d.ts.map +1 -1
- package/dist/signer/ckb/signerCkbPrivateKey.js +9 -8
- package/dist/signer/ckb/signerCkbPublicKey.d.ts +8 -2
- package/dist/signer/ckb/signerCkbPublicKey.d.ts.map +1 -1
- package/dist/signer/ckb/signerCkbPublicKey.js +65 -7
- package/dist.commonjs/client/client.d.ts +1 -1
- package/dist.commonjs/client/client.d.ts.map +1 -1
- package/dist.commonjs/client/client.js +2 -2
- package/dist.commonjs/client/clientTypes.d.ts +9 -0
- package/dist.commonjs/client/clientTypes.d.ts.map +1 -1
- package/dist.commonjs/client/clientTypes.js +16 -1
- package/dist.commonjs/client/jsonRpc/index.d.ts.map +1 -1
- package/dist.commonjs/client/jsonRpc/index.js +27 -11
- package/dist.commonjs/signer/ckb/signerCkbPrivateKey.d.ts.map +1 -1
- package/dist.commonjs/signer/ckb/signerCkbPrivateKey.js +9 -8
- package/dist.commonjs/signer/ckb/signerCkbPublicKey.d.ts +8 -2
- package/dist.commonjs/signer/ckb/signerCkbPublicKey.d.ts.map +1 -1
- package/dist.commonjs/signer/ckb/signerCkbPublicKey.js +64 -6
- package/package.json +1 -1
- package/src/client/client.ts +2 -2
- package/src/client/clientTypes.ts +24 -0
- package/src/client/jsonRpc/index.ts +42 -27
- package/src/signer/ckb/signerCkbPrivateKey.ts +13 -9
- package/src/signer/ckb/signerCkbPublicKey.ts +97 -12
package/CHANGELOG.md
CHANGED
|
@@ -1,5 +1,16 @@
|
|
|
1
1
|
# @ckb-ccc/core
|
|
2
2
|
|
|
3
|
+
## 0.0.14-alpha.0
|
|
4
|
+
|
|
5
|
+
### Patch Changes
|
|
6
|
+
|
|
7
|
+
- [`f5b5938`](https://github.com/ckb-ecofund/ccc/commit/f5b5938ab8f9c0a338dfd6765fe717f7ad1b1dd8) Thanks [@Hanssen0](https://github.com/Hanssen0)! - feat(core): ErrorClient types
|
|
8
|
+
|
|
9
|
+
- ErrorClientRBFRejected
|
|
10
|
+
- ErrorClientDuplicatedTransaction
|
|
11
|
+
|
|
12
|
+
- [`2164efd`](https://github.com/ckb-ecofund/ccc/commit/2164efd6d834c1917ad5f4a514dc25941f937185) Thanks [@Hanssen0](https://github.com/Hanssen0)! - feat(core): Support ACP addresses for private key signer
|
|
13
|
+
|
|
3
14
|
## 0.0.13
|
|
4
15
|
|
|
5
16
|
### Patch Changes
|
package/dist/client/client.d.ts
CHANGED
|
@@ -67,7 +67,7 @@ export declare abstract class Client {
|
|
|
67
67
|
getCellLive(outPointLike: OutPointLike, withData?: boolean | null, includeTxPool?: boolean | null): Promise<Cell | undefined>;
|
|
68
68
|
abstract findCellsPagedNoCache(key: ClientIndexerSearchKeyLike, order?: "asc" | "desc", limit?: NumLike, after?: string): Promise<ClientFindCellsResponse>;
|
|
69
69
|
findCellsPaged(key: ClientIndexerSearchKeyLike, order?: "asc" | "desc", limit?: NumLike, after?: string): Promise<ClientFindCellsResponse>;
|
|
70
|
-
|
|
70
|
+
findCellsOnChain(key: ClientIndexerSearchKeyLike, order?: "asc" | "desc", limit?: number): AsyncGenerator<Cell>;
|
|
71
71
|
/**
|
|
72
72
|
* Find cells by search key designed for collectable cells.
|
|
73
73
|
*
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"client.d.ts","sourceRoot":"","sources":["../../src/client/client.ts"],"names":[],"mappings":"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
|
|
1
|
+
{"version":3,"file":"client.d.ts","sourceRoot":"","sources":["../../src/client/client.ts"],"names":[],"mappings":"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"}
|
package/dist/client/client.js
CHANGED
|
@@ -78,7 +78,7 @@ export class Client {
|
|
|
78
78
|
await this.cache.recordCells(res.cells);
|
|
79
79
|
return res;
|
|
80
80
|
}
|
|
81
|
-
async *
|
|
81
|
+
async *findCellsOnChain(key, order, limit = 10) {
|
|
82
82
|
let last = undefined;
|
|
83
83
|
while (true) {
|
|
84
84
|
const { cells, lastCursor } = await this.findCellsPaged(key, order, limit, last);
|
|
@@ -104,7 +104,7 @@ export class Client {
|
|
|
104
104
|
foundedOutPoints.push(cell.outPoint);
|
|
105
105
|
yield cell;
|
|
106
106
|
}
|
|
107
|
-
for await (const cell of this.
|
|
107
|
+
for await (const cell of this.findCellsOnChain(key, order, limit)) {
|
|
108
108
|
if ((await this.cache.isUnusable(cell.outPoint)) ||
|
|
109
109
|
foundedOutPoints.some((founded) => founded.eq(cell.outPoint))) {
|
|
110
110
|
continue;
|
|
@@ -189,4 +189,13 @@ export declare class ErrorClientVerification extends ErrorClientBase {
|
|
|
189
189
|
readonly scriptCodeHash: Hex;
|
|
190
190
|
constructor(origin: ErrorClientBaseLike, source: "lock" | "inputType" | "outputType", sourceIndex: NumLike, errorCode: number, scriptHashType: "data" | "type", scriptCodeHash: HexLike);
|
|
191
191
|
}
|
|
192
|
+
export declare class ErrorClientDuplicatedTransaction extends ErrorClientBase {
|
|
193
|
+
readonly txHash: Hex;
|
|
194
|
+
constructor(origin: ErrorClientBaseLike, txHash: HexLike);
|
|
195
|
+
}
|
|
196
|
+
export declare class ErrorClientRBFRejected extends ErrorClientBase {
|
|
197
|
+
readonly currentFee: Num;
|
|
198
|
+
readonly leastFee: Num;
|
|
199
|
+
constructor(origin: ErrorClientBaseLike, currentFee: NumLike, leastFee: NumLike);
|
|
200
|
+
}
|
|
192
201
|
//# sourceMappingURL=clientTypes.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"clientTypes.d.ts","sourceRoot":"","sources":["../../src/client/clientTypes.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"clientTypes.d.ts","sourceRoot":"","sources":["../../src/client/clientTypes.ts"],"names":[],"mappings":"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"}
|
|
@@ -73,3 +73,16 @@ export class ErrorClientVerification extends ErrorClientBase {
|
|
|
73
73
|
this.scriptCodeHash = hexFrom(scriptCodeHash);
|
|
74
74
|
}
|
|
75
75
|
}
|
|
76
|
+
export class ErrorClientDuplicatedTransaction extends ErrorClientBase {
|
|
77
|
+
constructor(origin, txHash) {
|
|
78
|
+
super(origin);
|
|
79
|
+
this.txHash = hexFrom(txHash);
|
|
80
|
+
}
|
|
81
|
+
}
|
|
82
|
+
export class ErrorClientRBFRejected extends ErrorClientBase {
|
|
83
|
+
constructor(origin, currentFee, leastFee) {
|
|
84
|
+
super(origin);
|
|
85
|
+
this.currentFee = numFrom(currentFee);
|
|
86
|
+
this.leastFee = numFrom(leastFee);
|
|
87
|
+
}
|
|
88
|
+
}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/client/jsonRpc/index.ts"],"names":[],"mappings":"AAAA,OAAO,EACL,IAAI,EAEJ,YAAY,EACZ,eAAe,EAChB,MAAM,oBAAoB,CAAC;AAC5B,OAAO,EAAE,GAAG,EAAE,OAAO,EAAW,MAAM,oBAAoB,CAAC;AAC3D,OAAO,EAAE,GAAG,EAAE,OAAO,EAAqB,MAAM,oBAAoB,CAAC;AAErE,OAAO,EAAE,WAAW,EAAE,MAAM,mBAAmB,CAAC;AAChD,OAAO,EAAE,MAAM,EAAE,MAAM,cAAc,CAAC;AACtC,OAAO,EACL,uBAAuB,EACvB,0BAA0B,EAC1B,yBAAyB,
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/client/jsonRpc/index.ts"],"names":[],"mappings":"AAAA,OAAO,EACL,IAAI,EAEJ,YAAY,EACZ,eAAe,EAChB,MAAM,oBAAoB,CAAC;AAC5B,OAAO,EAAE,GAAG,EAAE,OAAO,EAAW,MAAM,oBAAoB,CAAC;AAC3D,OAAO,EAAE,GAAG,EAAE,OAAO,EAAqB,MAAM,oBAAoB,CAAC;AAErE,OAAO,EAAE,WAAW,EAAE,MAAM,mBAAmB,CAAC;AAChD,OAAO,EAAE,MAAM,EAAE,MAAM,cAAc,CAAC;AACtC,OAAO,EACL,uBAAuB,EACvB,0BAA0B,EAC1B,yBAAyB,EAOzB,gBAAgB,EACjB,MAAM,mBAAmB,CAAC;AAC3B,OAAO,EACL,cAAc,EAGf,MAAM,2BAA2B,CAAC;AA8DnC;;;GAGG;AAEH,8BAAsB,aAAc,SAAQ,MAAM;IAW9C,OAAO,CAAC,QAAQ,CAAC,IAAI;IAVvB,OAAO,CAAC,QAAQ,CAAC,SAAS,CAAY;IAEtC;;;;;OAKG;gBAGgB,IAAI,EAAE,MAAM,EAC7B,MAAM,CAAC,EAAE;QAAE,OAAO,CAAC,EAAE,MAAM,CAAC;QAAC,KAAK,CAAC,EAAE,WAAW,CAAA;KAAE;IAOpD;;;;OAIG;IAEH,IAAI,GAAG,IAAI,MAAM,CAEhB;IAED;;;;OAIG;IAEH,MAAM,QAIK,QAAQ,GAAG,CAAC,CAAC;IAExB;;;;;OAKG;IACH,YAAY,oGAEgB;IAE5B;;;;;;;OAOG;IACH,gBAAgB,yKAIgB;IAEhC;;;;;;;OAOG;IACH,cAAc,mMAEgB;IAE9B;;;;;;OAMG;IACH,iBAAiB,sIAIgB;IAEjC;;;;;;OAMG;IACH,eAAe,gKAEgB;IAE/B;;;;;OAKG;IACH,cAAc,oDAIgB;IAE9B;;;;;;OAMG;IAEH,kBAAkB,8FAIgB;IAElC;;;;;;OAMG;IAEH,sBAAsB,gBAKP,eAAe,cAChB,gBAAgB,GAAG,SAAS,KACrC,QAAQ,GAAG,CAAC,CAAC;IAElB;;;;;OAKG;IAEH,qBAAqB,WAIP,OAAO,KAAK,QAAQ,yBAAyB,GAAG,SAAS,CAAC,CAAC;IAEzE;;;;;;;OAOG;IACH,kBAAkB,CAChB,QAAQ,EAAE,YAAY,EACtB,QAAQ,CAAC,EAAE,OAAO,GAAG,IAAI,EACzB,aAAa,CAAC,EAAE,OAAO,GAAG,IAAI;IA+BhC;;;;;;;;OAQG;IAEH,qBAAqB,QASd,0BAA0B,UACvB,KAAK,GAAG,MAAM,UACd,OAAO,UACP,MAAM,KACX,QAAQ,uBAAuB,CAAC,CAAC;IAEtC;;;;;;;;OAQG;IAEH,qBAAqB;;;;;;;;MAQgB;IAErC;;;;;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,GACnC,CAAC,GAAG,GAAG,EAAE,OAAO,EAAE,KAAK,OAAO,CAAC,OAAO,CAAC;IAwC1C;;;;;;;OAOG;IACG,IAAI,CAAC,OAAO,EAAE,cAAc,GAAG,OAAO,CAAC,OAAO,CAAC;IAerD;;;;;;OAMG;IAEH,MAAM,CAAC,YAAY,CAAC,MAAM,EAAE,MAAM,EAAE,GAAG,EAAE,OAAO,EAAE,GAAG,cAAc;CAQpE"}
|
|
@@ -3,7 +3,7 @@ import { hexFrom } from "../../hex/index.js";
|
|
|
3
3
|
import { numFrom, numToHex } from "../../num/index.js";
|
|
4
4
|
import { apply } from "../../utils/index.js";
|
|
5
5
|
import { Client } from "../client.js";
|
|
6
|
-
import { ErrorClientBase, ErrorClientResolveUnknown, ErrorClientVerification, } from "../clientTypes.js";
|
|
6
|
+
import { ErrorClientBase, ErrorClientDuplicatedTransaction, ErrorClientRBFRejected, ErrorClientResolveUnknown, ErrorClientVerification, } from "../clientTypes.js";
|
|
7
7
|
import { transportFromUri, } from "../transports/advanced.js";
|
|
8
8
|
import { JsonRpcTransformers } from "./advanced.js";
|
|
9
9
|
/**
|
|
@@ -25,6 +25,28 @@ async function transform(value, transformer) {
|
|
|
25
25
|
}
|
|
26
26
|
return value;
|
|
27
27
|
}
|
|
28
|
+
const ERROR_PARSERS = [
|
|
29
|
+
[
|
|
30
|
+
"Resolve\\(Unknown\\(OutPoint\\((0x.*)\\)\\)\\)",
|
|
31
|
+
(error, match) => new ErrorClientResolveUnknown(error, OutPoint.fromBytes(match[1])),
|
|
32
|
+
],
|
|
33
|
+
[
|
|
34
|
+
"Verification\\(Error { kind: Script, inner: TransactionScriptError { source: (Inputs|Outputs)\\[([0-9]*)\\].(Lock|Type), cause: ValidationFailure: see error code (-?[0-9])* on page https://nervosnetwork\\.github\\.io/ckb-script-error-codes/by-(type|data)-hash/(.*)\\.html",
|
|
35
|
+
(error, match) => new ErrorClientVerification(error, match[3] === "Lock"
|
|
36
|
+
? "lock"
|
|
37
|
+
: match[1] === "Inputs"
|
|
38
|
+
? "inputType"
|
|
39
|
+
: "outputType", match[2], Number(match[4]), match[5] === "data" ? "data" : "type", match[6]),
|
|
40
|
+
],
|
|
41
|
+
[
|
|
42
|
+
"Duplicated\\(Byte32\\((0x.*)\\)\\)",
|
|
43
|
+
(error, match) => new ErrorClientDuplicatedTransaction(error, match[1]),
|
|
44
|
+
],
|
|
45
|
+
[
|
|
46
|
+
'RBFRejected\\("Tx\'s current fee is ([0-9]*), expect it to >= ([0-9]*) to replace old txs"\\)',
|
|
47
|
+
(error, match) => new ErrorClientRBFRejected(error, match[1], match[2]),
|
|
48
|
+
],
|
|
49
|
+
];
|
|
28
50
|
/**
|
|
29
51
|
* An abstract class implementing JSON-RPC client functionality for a specific URL and timeout.
|
|
30
52
|
* Provides methods for sending transactions and building JSON-RPC payloads.
|
|
@@ -200,17 +222,11 @@ export class ClientJsonRpc extends Client {
|
|
|
200
222
|
throw errAny;
|
|
201
223
|
}
|
|
202
224
|
const err = errAny;
|
|
203
|
-
const
|
|
204
|
-
|
|
205
|
-
|
|
206
|
-
|
|
207
|
-
|
|
208
|
-
if (verificationFailedMatch) {
|
|
209
|
-
throw new ErrorClientVerification(err, verificationFailedMatch[3] === "Lock"
|
|
210
|
-
? "lock"
|
|
211
|
-
: verificationFailedMatch[1] === "Inputs"
|
|
212
|
-
? "inputType"
|
|
213
|
-
: "outputType", verificationFailedMatch[2], Number(verificationFailedMatch[4]), verificationFailedMatch[5] === "data" ? "data" : "type", verificationFailedMatch[6]);
|
|
225
|
+
for (const [regexp, builder] of ERROR_PARSERS) {
|
|
226
|
+
const match = err.data.match(regexp);
|
|
227
|
+
if (match) {
|
|
228
|
+
throw builder(err, match);
|
|
229
|
+
}
|
|
214
230
|
}
|
|
215
231
|
throw new ErrorClientBase(err);
|
|
216
232
|
}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"signerCkbPrivateKey.d.ts","sourceRoot":"","sources":["../../../src/signer/ckb/signerCkbPrivateKey.ts"],"names":[],"mappings":"AACA,OAAO,EAA0B,SAAS,EAAE,MAAM,sBAAsB,CAAC;AACzE,OAAO,EAAE,WAAW,EAAE,eAAe,EAAe,MAAM,oBAAoB,CAAC;AAC/E,OAAO,EAAE,MAAM,EAAE,MAAM,uBAAuB,CAAC;AAC/C,OAAO,EAAE,GAAG,EAAW,OAAO,EAAE,MAAM,oBAAoB,CAAC;AAE3D,OAAO,EAAE,kBAAkB,EAAE,MAAM,yBAAyB,CAAC;AAG7D;;GAEG;AACH,qBAAa,mBAAoB,SAAQ,kBAAkB;IACzD,SAAgB,UAAU,EAAE,GAAG,CAAC;gBAEpB,MAAM,EAAE,MAAM,EAAE,UAAU,EAAE,OAAO;IAUzC,YAAY,CAAC,OAAO,EAAE,OAAO,GAAG,OAAO,CAAC,GAAG,CAAC;IAgB5C,cAAc,CAAC,OAAO,EAAE,MAAM,GAAG,SAAS,GAAG,OAAO,CAAC,GAAG,CAAC;IAIzD,mBAAmB,CAAC,MAAM,EAAE,eAAe,GAAG,OAAO,CAAC,WAAW,CAAC;
|
|
1
|
+
{"version":3,"file":"signerCkbPrivateKey.d.ts","sourceRoot":"","sources":["../../../src/signer/ckb/signerCkbPrivateKey.ts"],"names":[],"mappings":"AACA,OAAO,EAA0B,SAAS,EAAE,MAAM,sBAAsB,CAAC;AACzE,OAAO,EAAE,WAAW,EAAE,eAAe,EAAe,MAAM,oBAAoB,CAAC;AAC/E,OAAO,EAAE,MAAM,EAAE,MAAM,uBAAuB,CAAC;AAC/C,OAAO,EAAE,GAAG,EAAW,OAAO,EAAE,MAAM,oBAAoB,CAAC;AAE3D,OAAO,EAAE,kBAAkB,EAAE,MAAM,yBAAyB,CAAC;AAG7D;;GAEG;AACH,qBAAa,mBAAoB,SAAQ,kBAAkB;IACzD,SAAgB,UAAU,EAAE,GAAG,CAAC;gBAEpB,MAAM,EAAE,MAAM,EAAE,UAAU,EAAE,OAAO;IAUzC,YAAY,CAAC,OAAO,EAAE,OAAO,GAAG,OAAO,CAAC,GAAG,CAAC;IAgB5C,cAAc,CAAC,OAAO,EAAE,MAAM,GAAG,SAAS,GAAG,OAAO,CAAC,GAAG,CAAC;IAIzD,mBAAmB,CAAC,MAAM,EAAE,eAAe,GAAG,OAAO,CAAC,WAAW,CAAC;CAmBzE"}
|
|
@@ -27,15 +27,16 @@ export class SignerCkbPrivateKey extends SignerCkbPublicKey {
|
|
|
27
27
|
}
|
|
28
28
|
async signOnlyTransaction(txLike) {
|
|
29
29
|
const tx = Transaction.from(txLike);
|
|
30
|
-
const { script }
|
|
31
|
-
|
|
32
|
-
|
|
33
|
-
|
|
30
|
+
for (const { script } of await this.getRelatedScripts(tx)) {
|
|
31
|
+
const info = await tx.getSignHashInfo(script, this.client);
|
|
32
|
+
if (!info) {
|
|
33
|
+
return tx;
|
|
34
|
+
}
|
|
35
|
+
const signature = await this._signMessage(info.message);
|
|
36
|
+
const witness = tx.getWitnessArgsAt(info.position) ?? WitnessArgs.from({});
|
|
37
|
+
witness.lock = signature;
|
|
38
|
+
tx.setWitnessArgsAt(info.position, witness);
|
|
34
39
|
}
|
|
35
|
-
const signature = await this._signMessage(info.message);
|
|
36
|
-
const witness = tx.getWitnessArgsAt(info.position) ?? WitnessArgs.from({});
|
|
37
|
-
witness.lock = signature;
|
|
38
|
-
tx.setWitnessArgsAt(info.position, witness);
|
|
39
40
|
return tx;
|
|
40
41
|
}
|
|
41
42
|
}
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
import { Address } from "../../address/index.js";
|
|
2
|
-
import { Transaction, TransactionLike } from "../../ckb/index.js";
|
|
3
|
-
import { Client } from "../../client/index.js";
|
|
2
|
+
import { Script, Transaction, TransactionLike } from "../../ckb/index.js";
|
|
3
|
+
import { CellDepInfo, Client } from "../../client/index.js";
|
|
4
4
|
import { Hex, HexLike } from "../../hex/index.js";
|
|
5
5
|
import { Signer, SignerSignType, SignerType } from "../signer/index.js";
|
|
6
6
|
/**
|
|
@@ -15,7 +15,13 @@ export declare class SignerCkbPublicKey extends Signer {
|
|
|
15
15
|
isConnected(): Promise<boolean>;
|
|
16
16
|
getInternalAddress(): Promise<string>;
|
|
17
17
|
getIdentity(): Promise<string>;
|
|
18
|
+
getAddressObjSecp256k1(): Promise<Address>;
|
|
19
|
+
getRecommendedAddressObj(_preference?: unknown): Promise<Address>;
|
|
18
20
|
getAddressObjs(): Promise<Address[]>;
|
|
21
|
+
getRelatedScripts(txLike: TransactionLike): Promise<{
|
|
22
|
+
script: Script;
|
|
23
|
+
cellDeps: CellDepInfo[];
|
|
24
|
+
}[]>;
|
|
19
25
|
prepareTransaction(txLike: TransactionLike): Promise<Transaction>;
|
|
20
26
|
}
|
|
21
27
|
//# sourceMappingURL=signerCkbPublicKey.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"signerCkbPublicKey.d.ts","sourceRoot":"","sources":["../../../src/signer/ckb/signerCkbPublicKey.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,OAAO,EAAE,MAAM,wBAAwB,CAAC;AAEjD,OAAO,EAAE,WAAW,EAAE,eAAe,EAAE,MAAM,oBAAoB,CAAC;
|
|
1
|
+
{"version":3,"file":"signerCkbPublicKey.d.ts","sourceRoot":"","sources":["../../../src/signer/ckb/signerCkbPublicKey.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,OAAO,EAAE,MAAM,wBAAwB,CAAC;AAEjD,OAAO,EAAE,MAAM,EAAE,WAAW,EAAE,eAAe,EAAE,MAAM,oBAAoB,CAAC;AAC1E,OAAO,EAAE,WAAW,EAAE,MAAM,EAAe,MAAM,uBAAuB,CAAC;AAEzE,OAAO,EAAE,GAAG,EAAE,OAAO,EAAW,MAAM,oBAAoB,CAAC;AAC3D,OAAO,EAAE,MAAM,EAAE,cAAc,EAAE,UAAU,EAAE,MAAM,oBAAoB,CAAC;AAExE;;GAEG;AACH,qBAAa,kBAAmB,SAAQ,MAAM;IAC5C,IAAI,IAAI,IAAI,UAAU,CAErB;IAED,IAAI,QAAQ,IAAI,cAAc,CAE7B;IAED,SAAgB,SAAS,EAAE,GAAG,CAAC;gBAEnB,MAAM,EAAE,MAAM,EAAE,SAAS,EAAE,OAAO;IASxC,OAAO,IAAI,OAAO,CAAC,IAAI,CAAC;IAExB,WAAW,IAAI,OAAO,CAAC,OAAO,CAAC;IAI/B,kBAAkB,IAAI,OAAO,CAAC,MAAM,CAAC;IAIrC,WAAW,IAAI,OAAO,CAAC,MAAM,CAAC;IAI9B,sBAAsB,IAAI,OAAO,CAAC,OAAO,CAAC;IAQ1C,wBAAwB,CAAC,WAAW,CAAC,EAAE,OAAO,GAAG,OAAO,CAAC,OAAO,CAAC;IAIjE,cAAc,IAAI,OAAO,CAAC,OAAO,EAAE,CAAC;IAmCpC,iBAAiB,CACrB,MAAM,EAAE,eAAe,GACtB,OAAO,CAAC;QAAE,MAAM,EAAE,MAAM,CAAC;QAAC,QAAQ,EAAE,WAAW,EAAE,CAAA;KAAE,EAAE,CAAC;IA6CnD,kBAAkB,CAAC,MAAM,EAAE,eAAe,GAAG,OAAO,CAAC,WAAW,CAAC;CAWxE"}
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
import { Address } from "../../address/index.js";
|
|
2
2
|
import { bytesFrom } from "../../bytes/index.js";
|
|
3
|
-
import { Transaction } from "../../ckb/index.js";
|
|
3
|
+
import { Script, Transaction } from "../../ckb/index.js";
|
|
4
4
|
import { KnownScript } from "../../client/index.js";
|
|
5
5
|
import { hashCkb } from "../../hasher/index.js";
|
|
6
6
|
import { hexFrom } from "../../hex/index.js";
|
|
@@ -32,16 +32,74 @@ export class SignerCkbPublicKey extends Signer {
|
|
|
32
32
|
async getIdentity() {
|
|
33
33
|
return this.publicKey;
|
|
34
34
|
}
|
|
35
|
+
async getAddressObjSecp256k1() {
|
|
36
|
+
return Address.fromKnownScript(this.client, KnownScript.Secp256k1Blake160, bytesFrom(hashCkb(this.publicKey)).slice(0, 20));
|
|
37
|
+
}
|
|
38
|
+
async getRecommendedAddressObj(_preference) {
|
|
39
|
+
return this.getAddressObjSecp256k1();
|
|
40
|
+
}
|
|
35
41
|
async getAddressObjs() {
|
|
36
|
-
|
|
37
|
-
|
|
38
|
-
|
|
42
|
+
const secp256k1 = await this.getAddressObjSecp256k1();
|
|
43
|
+
const addresses = [];
|
|
44
|
+
let count = 0;
|
|
45
|
+
for await (const cell of this.client.findCells({
|
|
46
|
+
script: await Script.fromKnownScript(this.client, KnownScript.AnyoneCanPay, secp256k1.script.args),
|
|
47
|
+
scriptType: "lock",
|
|
48
|
+
scriptSearchMode: "prefix",
|
|
49
|
+
withData: false,
|
|
50
|
+
})) {
|
|
51
|
+
if (count >= 10) {
|
|
52
|
+
break;
|
|
53
|
+
}
|
|
54
|
+
count += 1;
|
|
55
|
+
if (addresses.some(({ script }) => script.eq(cell.cellOutput.lock))) {
|
|
56
|
+
continue;
|
|
57
|
+
}
|
|
58
|
+
addresses.push(Address.from({
|
|
59
|
+
prefix: this.client.addressPrefix,
|
|
60
|
+
script: cell.cellOutput.lock,
|
|
61
|
+
}));
|
|
62
|
+
}
|
|
63
|
+
return [secp256k1, ...addresses];
|
|
64
|
+
}
|
|
65
|
+
async getRelatedScripts(txLike) {
|
|
66
|
+
const tx = Transaction.from(txLike);
|
|
67
|
+
const secp256k1 = await this.getAddressObjSecp256k1();
|
|
68
|
+
const acp = await Script.fromKnownScript(this.client, KnownScript.AnyoneCanPay, secp256k1.script.args);
|
|
69
|
+
const scripts = [];
|
|
70
|
+
for (const input of tx.inputs) {
|
|
71
|
+
await input.completeExtraInfos(this.client);
|
|
72
|
+
if (!input.cellOutput) {
|
|
73
|
+
throw new Error("Unable to complete input");
|
|
74
|
+
}
|
|
75
|
+
const { lock } = input.cellOutput;
|
|
76
|
+
if (scripts.some(({ script }) => script.eq(lock))) {
|
|
77
|
+
continue;
|
|
78
|
+
}
|
|
79
|
+
if (lock.eq(secp256k1.script)) {
|
|
80
|
+
scripts.push({
|
|
81
|
+
script: lock,
|
|
82
|
+
cellDeps: (await this.client.getKnownScript(KnownScript.Secp256k1Blake160)).cellDeps,
|
|
83
|
+
});
|
|
84
|
+
}
|
|
85
|
+
else if (lock.codeHash === acp.codeHash &&
|
|
86
|
+
lock.hashType === acp.hashType &&
|
|
87
|
+
lock.args.startsWith(acp.args)) {
|
|
88
|
+
scripts.push({
|
|
89
|
+
script: lock,
|
|
90
|
+
cellDeps: (await this.client.getKnownScript(KnownScript.AnyoneCanPay))
|
|
91
|
+
.cellDeps,
|
|
92
|
+
});
|
|
93
|
+
}
|
|
94
|
+
}
|
|
95
|
+
return scripts;
|
|
39
96
|
}
|
|
40
97
|
async prepareTransaction(txLike) {
|
|
41
98
|
const tx = Transaction.from(txLike);
|
|
42
|
-
|
|
43
|
-
|
|
44
|
-
|
|
99
|
+
await Promise.all((await this.getRelatedScripts(tx)).map(async ({ script, cellDeps }) => {
|
|
100
|
+
await tx.prepareSighashAllWitness(script, 65, this.client);
|
|
101
|
+
await tx.addCellDepInfos(this.client, cellDeps);
|
|
102
|
+
}));
|
|
45
103
|
return tx;
|
|
46
104
|
}
|
|
47
105
|
}
|
|
@@ -67,7 +67,7 @@ export declare abstract class Client {
|
|
|
67
67
|
getCellLive(outPointLike: OutPointLike, withData?: boolean | null, includeTxPool?: boolean | null): Promise<Cell | undefined>;
|
|
68
68
|
abstract findCellsPagedNoCache(key: ClientIndexerSearchKeyLike, order?: "asc" | "desc", limit?: NumLike, after?: string): Promise<ClientFindCellsResponse>;
|
|
69
69
|
findCellsPaged(key: ClientIndexerSearchKeyLike, order?: "asc" | "desc", limit?: NumLike, after?: string): Promise<ClientFindCellsResponse>;
|
|
70
|
-
|
|
70
|
+
findCellsOnChain(key: ClientIndexerSearchKeyLike, order?: "asc" | "desc", limit?: number): AsyncGenerator<Cell>;
|
|
71
71
|
/**
|
|
72
72
|
* Find cells by search key designed for collectable cells.
|
|
73
73
|
*
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"client.d.ts","sourceRoot":"","sources":["../../src/client/client.ts"],"names":[],"mappings":"AAAA,OAAO,EACL,IAAI,EACJ,OAAO,EACP,WAAW,EAEX,YAAY,EACZ,MAAM,EACN,UAAU,EAEV,eAAe,EAChB,MAAM,iBAAiB,CAAC;AAEzB,OAAO,EAAE,GAAG,EAAE,OAAO,EAAW,MAAM,iBAAiB,CAAC;AACxD,OAAO,EAAE,GAAG,EAAE,OAAO,EAAW,MAAM,iBAAiB,CAAC;AAExD,OAAO,EAAE,WAAW,EAAE,MAAM,kBAAkB,CAAC;AAE/C,OAAO,EAAE,8BAA8B,EAAE,MAAM,2BAA2B,CAAC;AAC3E,OAAO,EACL,WAAW,EACX,iBAAiB,EACjB,uBAAuB,EACvB,qCAAqC,EACrC,8BAA8B,EAE9B,0BAA0B,EAC1B,qCAAqC,EACrC,yBAAyB,EACzB,gBAAgB,EACjB,MAAM,kBAAkB,CAAC;AAE1B;;GAEG;AACH,oBAAY,WAAW;IACrB,iBAAiB,sBAAsB;IACvC,iBAAiB,sBAAsB;IACvC,YAAY,iBAAiB;IAC7B,MAAM,WAAW;IACjB,IAAI,SAAS;IACb,KAAK,UAAU;IACf,IAAI,SAAS;IACb,MAAM,WAAW;IACjB,QAAQ,aAAa;IACrB,SAAS,cAAc;IACvB,UAAU,eAAe;IACzB,aAAa,kBAAkB;IAC/B,mBAAmB,wBAAwB;IAC3C,SAAS,cAAc;CACxB;AAED;;GAEG;AACH,MAAM,MAAM,eAAe,GAAG;IAC5B,OAAO,EAAE,WAAW,CAAC;IACrB,IAAI,CAAC,EAAE,UAAU,GAAG,IAAI,CAAC;CAC1B,CAAC;AAEF;;GAEG;AACH,qBAAa,WAAW;IAEb,OAAO,EAAE,OAAO;IAChB,IAAI,CAAC;gBADL,OAAO,EAAE,OAAO,EAChB,IAAI,CAAC,oBAAQ;IAGtB,MAAM,CAAC,IAAI,CAAC,eAAe,EAAE,eAAe,GAAG,WAAW;CAM3D;AAED;;GAEG;AACH,8BAAsB,MAAM;IACnB,KAAK,EAAE,WAAW,CAAC;gBAEd,MAAM,CAAC,EAAE;QAAE,KAAK,CAAC,EAAE,WAAW,CAAA;KAAE;IAI5C,QAAQ,KAAK,GAAG,IAAI,MAAM,CAAC;IAC3B,QAAQ,KAAK,aAAa,IAAI,MAAM,CAAC;IAErC,QAAQ,CAAC,cAAc,CACrB,MAAM,EAAE,WAAW,GAClB,OAAO,CACR,IAAI,CAAC,MAAM,EAAE,UAAU,GAAG,UAAU,CAAC,GAAG;QAAE,QAAQ,EAAE,WAAW,EAAE,CAAA;KAAE,CACpE;IAED,QAAQ,CAAC,MAAM,IAAI,OAAO,CAAC,GAAG,CAAC;IAC/B,QAAQ,CAAC,YAAY,CAAC,SAAS,CAAC,EAAE,MAAM,GAAG,IAAI,GAAG,OAAO,CAAC,iBAAiB,CAAC;IAC5E,QAAQ,CAAC,gBAAgB,CACvB,WAAW,EAAE,OAAO,EACpB,SAAS,CAAC,EAAE,MAAM,GAAG,IAAI,EACzB,UAAU,CAAC,EAAE,OAAO,GAAG,IAAI,GAC1B,OAAO,CAAC,WAAW,GAAG,SAAS,CAAC;IACnC,QAAQ,CAAC,cAAc,CACrB,SAAS,EAAE,OAAO,EAClB,SAAS,CAAC,EAAE,MAAM,GAAG,IAAI,EACzB,UAAU,CAAC,EAAE,OAAO,GAAG,IAAI,GAC1B,OAAO,CAAC,WAAW,GAAG,SAAS,CAAC;IACnC,QAAQ,CAAC,iBAAiB,CACxB,WAAW,EAAE,OAAO,EACpB,SAAS,CAAC,EAAE,MAAM,GAAG,IAAI,GACxB,OAAO,CAAC,iBAAiB,GAAG,SAAS,CAAC;IACzC,QAAQ,CAAC,eAAe,CACtB,SAAS,EAAE,OAAO,EAClB,SAAS,CAAC,EAAE,MAAM,GAAG,IAAI,GACxB,OAAO,CAAC,iBAAiB,GAAG,SAAS,CAAC;IAEzC,QAAQ,CAAC,cAAc,CAAC,WAAW,EAAE,eAAe,GAAG,OAAO,CAAC,GAAG,CAAC;IACnE,QAAQ,CAAC,kBAAkB,CACzB,WAAW,EAAE,eAAe,EAC5B,SAAS,CAAC,EAAE,gBAAgB,GAC3B,OAAO,CAAC,GAAG,CAAC;IAEf,QAAQ,CAAC,sBAAsB,CAC7B,WAAW,EAAE,eAAe,EAC5B,SAAS,CAAC,EAAE,gBAAgB,GAC3B,OAAO,CAAC,GAAG,CAAC;IACf,QAAQ,CAAC,qBAAqB,CAC5B,MAAM,EAAE,OAAO,GACd,OAAO,CAAC,yBAAyB,GAAG,SAAS,CAAC;IAE3C,OAAO,CAAC,YAAY,EAAE,YAAY,GAAG,OAAO,CAAC,IAAI,GAAG,SAAS,CAAC;IA2BpE,QAAQ,CAAC,kBAAkB,CACzB,YAAY,EAAE,YAAY,EAC1B,QAAQ,CAAC,EAAE,OAAO,GAAG,IAAI,EACzB,aAAa,CAAC,EAAE,OAAO,GAAG,IAAI,GAC7B,OAAO,CAAC,IAAI,GAAG,SAAS,CAAC;IACtB,WAAW,CACf,YAAY,EAAE,YAAY,EAC1B,QAAQ,CAAC,EAAE,OAAO,GAAG,IAAI,EACzB,aAAa,CAAC,EAAE,OAAO,GAAG,IAAI,GAC7B,OAAO,CAAC,IAAI,GAAG,SAAS,CAAC;IAY5B,QAAQ,CAAC,qBAAqB,CAC5B,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;IAC7B,cAAc,CAClB,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;IAM5B,
|
|
1
|
+
{"version":3,"file":"client.d.ts","sourceRoot":"","sources":["../../src/client/client.ts"],"names":[],"mappings":"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"}
|
|
@@ -82,7 +82,7 @@ class Client {
|
|
|
82
82
|
await this.cache.recordCells(res.cells);
|
|
83
83
|
return res;
|
|
84
84
|
}
|
|
85
|
-
async *
|
|
85
|
+
async *findCellsOnChain(key, order, limit = 10) {
|
|
86
86
|
let last = undefined;
|
|
87
87
|
while (true) {
|
|
88
88
|
const { cells, lastCursor } = await this.findCellsPaged(key, order, limit, last);
|
|
@@ -108,7 +108,7 @@ class Client {
|
|
|
108
108
|
foundedOutPoints.push(cell.outPoint);
|
|
109
109
|
yield cell;
|
|
110
110
|
}
|
|
111
|
-
for await (const cell of this.
|
|
111
|
+
for await (const cell of this.findCellsOnChain(key, order, limit)) {
|
|
112
112
|
if ((await this.cache.isUnusable(cell.outPoint)) ||
|
|
113
113
|
foundedOutPoints.some((founded) => founded.eq(cell.outPoint))) {
|
|
114
114
|
continue;
|
|
@@ -189,4 +189,13 @@ export declare class ErrorClientVerification extends ErrorClientBase {
|
|
|
189
189
|
readonly scriptCodeHash: Hex;
|
|
190
190
|
constructor(origin: ErrorClientBaseLike, source: "lock" | "inputType" | "outputType", sourceIndex: NumLike, errorCode: number, scriptHashType: "data" | "type", scriptCodeHash: HexLike);
|
|
191
191
|
}
|
|
192
|
+
export declare class ErrorClientDuplicatedTransaction extends ErrorClientBase {
|
|
193
|
+
readonly txHash: Hex;
|
|
194
|
+
constructor(origin: ErrorClientBaseLike, txHash: HexLike);
|
|
195
|
+
}
|
|
196
|
+
export declare class ErrorClientRBFRejected extends ErrorClientBase {
|
|
197
|
+
readonly currentFee: Num;
|
|
198
|
+
readonly leastFee: Num;
|
|
199
|
+
constructor(origin: ErrorClientBaseLike, currentFee: NumLike, leastFee: NumLike);
|
|
200
|
+
}
|
|
192
201
|
//# sourceMappingURL=clientTypes.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"clientTypes.d.ts","sourceRoot":"","sources":["../../src/client/clientTypes.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"clientTypes.d.ts","sourceRoot":"","sources":["../../src/client/clientTypes.ts"],"names":[],"mappings":"AAAA,OAAO,EACL,IAAI,EACJ,KAAK,EACL,QAAQ,EACR,YAAY,EACZ,MAAM,EACN,WAAW,EACZ,MAAM,iBAAiB,CAAC;AACzB,OAAO,EAAE,GAAG,EAAE,OAAO,EAAW,MAAM,iBAAiB,CAAC;AACxD,OAAO,EAAE,GAAG,EAAE,OAAO,EAAW,MAAM,iBAAiB,CAAC;AAExD,OAAO,EACL,oCAAoC,EACpC,8BAA8B,EAE/B,MAAM,2BAA2B,CAAC;AAEnC;;GAEG;AACH,MAAM,MAAM,gBAAgB,GAAG,aAAa,GAAG,yBAAyB,CAAC;AAEzE;;GAEG;AACH,MAAM,MAAM,iBAAiB,GACzB,MAAM,GACN,SAAS,GACT,UAAU,GACV,WAAW,GACX,SAAS,GACT,UAAU,CAAC;AACf;;GAEG;AACH,MAAM,MAAM,yBAAyB,GAAG;IACtC,WAAW,EAAE,WAAW,CAAC;IACzB,MAAM,EAAE,iBAAiB,CAAC;IAC1B,MAAM,CAAC,EAAE,GAAG,CAAC;IACb,SAAS,CAAC,EAAE,GAAG,CAAC;IAChB,WAAW,CAAC,EAAE,GAAG,CAAC;IAClB,OAAO,CAAC,EAAE,GAAG,CAAC;IACd,MAAM,CAAC,EAAE,MAAM,CAAC;CACjB,CAAC;AAEF;;GAEG;AACH,MAAM,MAAM,gCAAgC,GAC1C,oCAAoC,GAAG;IACrC,UAAU,CAAC,EAAE,CAAC,OAAO,EAAE,OAAO,CAAC,GAAG,IAAI,CAAC;CACxC,CAAC;AACJ;;GAEG;AACH,qBAAa,4BAA4B;IAE9B,MAAM,EAAE,MAAM,GAAG,SAAS;IAC1B,cAAc,EAAE,CAAC,GAAG,EAAE,GAAG,CAAC,GAAG,SAAS;IACtC,UAAU,EAAE,GAAG,GAAG,SAAS;IAC3B,oBAAoB,EAAE,QAAQ,GAAG,OAAO,GAAG,SAAS,GAAG,SAAS;IAChE,kBAAkB,EAAE,CAAC,GAAG,EAAE,GAAG,CAAC,GAAG,SAAS;IAC1C,mBAAmB,EAAE,CAAC,GAAG,EAAE,GAAG,CAAC,GAAG,SAAS;IAC3C,UAAU,EAAE,CAAC,GAAG,EAAE,GAAG,CAAC,GAAG,SAAS;gBANlC,MAAM,EAAE,MAAM,GAAG,SAAS,EAC1B,cAAc,EAAE,CAAC,GAAG,EAAE,GAAG,CAAC,GAAG,SAAS,EACtC,UAAU,EAAE,GAAG,GAAG,SAAS,EAC3B,oBAAoB,EAAE,QAAQ,GAAG,OAAO,GAAG,SAAS,GAAG,SAAS,EAChE,kBAAkB,EAAE,CAAC,GAAG,EAAE,GAAG,CAAC,GAAG,SAAS,EAC1C,mBAAmB,EAAE,CAAC,GAAG,EAAE,GAAG,CAAC,GAAG,SAAS,EAC3C,UAAU,EAAE,CAAC,GAAG,EAAE,GAAG,CAAC,GAAG,SAAS;IAG3C,MAAM,CAAC,IAAI,CACT,UAAU,EAAE,gCAAgC,GAC3C,4BAA4B;CAWhC;AAED;;GAEG;AACH,MAAM,MAAM,0BAA0B,GAAG,8BAA8B,GAAG;IACxE,MAAM,CAAC,EAAE,gCAAgC,GAAG,IAAI,CAAC;CAClD,CAAC;AAEF;;GAEG;AACH,qBAAa,sBAAsB;IAExB,MAAM,EAAE,MAAM;IACd,UAAU,EAAE,MAAM,GAAG,MAAM;IAC3B,gBAAgB,EAAE,QAAQ,GAAG,OAAO,GAAG,SAAS;IAChD,MAAM,EAAE,4BAA4B,GAAG,SAAS;IAChD,QAAQ,EAAE,OAAO,GAAG,SAAS;gBAJ7B,MAAM,EAAE,MAAM,EACd,UAAU,EAAE,MAAM,GAAG,MAAM,EAC3B,gBAAgB,EAAE,QAAQ,GAAG,OAAO,GAAG,SAAS,EAChD,MAAM,EAAE,4BAA4B,GAAG,SAAS,EAChD,QAAQ,EAAE,OAAO,GAAG,SAAS;IAGtC,MAAM,CAAC,IAAI,CAAC,OAAO,EAAE,0BAA0B,GAAG,sBAAsB;CASzE;AAED;;GAEG;AACH,MAAM,MAAM,uBAAuB,GAAG;IACpC,UAAU,EAAE,MAAM,CAAC;IACnB,KAAK,EAAE,IAAI,EAAE,CAAC;CACf,CAAC;AAEF;;GAEG;AACH,MAAM,MAAM,qCAAqC,GAAG,IAAI,CACtD,8BAA8B,EAC9B,UAAU,CACX,GAAG;IACF,MAAM,CAAC,EAAE,gCAAgC,GAAG,IAAI,CAAC;IACjD,kBAAkB,CAAC,EAAE,OAAO,GAAG,IAAI,CAAC;CACrC,CAAC;AAEF;;GAEG;AACH,qBAAa,iCAAiC;IAEnC,MAAM,EAAE,MAAM;IACd,UAAU,EAAE,MAAM,GAAG,MAAM;IAC3B,gBAAgB,EAAE,QAAQ,GAAG,OAAO,GAAG,SAAS;IAChD,MAAM,EAAE,4BAA4B,GAAG,SAAS;IAChD,kBAAkB,EAAE,OAAO,GAAG,SAAS;gBAJvC,MAAM,EAAE,MAAM,EACd,UAAU,EAAE,MAAM,GAAG,MAAM,EAC3B,gBAAgB,EAAE,QAAQ,GAAG,OAAO,GAAG,SAAS,EAChD,MAAM,EAAE,4BAA4B,GAAG,SAAS,EAChD,kBAAkB,EAAE,OAAO,GAAG,SAAS;IAGhD,MAAM,CAAC,IAAI,CACT,OAAO,EAAE,qCAAqC,GAC7C,iCAAiC;CASrC;AAED;;GAEG;AACH,MAAM,MAAM,8BAA8B,GAAG;IAC3C,UAAU,EAAE,MAAM,CAAC;IACnB,YAAY,EAAE;QACZ,MAAM,EAAE,GAAG,CAAC;QACZ,WAAW,EAAE,GAAG,CAAC;QACjB,OAAO,EAAE,GAAG,CAAC;QACb,OAAO,EAAE,OAAO,CAAC;QACjB,SAAS,EAAE,GAAG,CAAC;KAChB,EAAE,CAAC;CACL,CAAC;AAEF;;GAEG;AACH,MAAM,MAAM,qCAAqC,GAAG;IAClD,UAAU,EAAE,MAAM,CAAC;IACnB,YAAY,EAAE;QACZ,MAAM,EAAE,GAAG,CAAC;QACZ,WAAW,EAAE,GAAG,CAAC;QACjB,OAAO,EAAE,GAAG,CAAC;QACb,KAAK,EAAE;YACL,OAAO,EAAE,OAAO,CAAC;YACjB,SAAS,EAAE,GAAG,CAAC;SAChB,EAAE,CAAC;KACL,EAAE,CAAC;CACL,CAAC;AAEF;;GAEG;AACH,MAAM,MAAM,iBAAiB,GAAG;IAC9B,aAAa,EAAE,GAAG,CAAC;IACnB,GAAG,EAAE;QACH;;WAEG;QACH,CAAC,EAAE,GAAG,CAAC;QACP;;;WAGG;QACH,EAAE,EAAE,GAAG,CAAC;QACR;;;WAGG;QACH,CAAC,EAAE,GAAG,CAAC;QACP;;;WAGG;QACH,CAAC,EAAE,GAAG,CAAC;KACR,CAAC;IACF,KAAK,EAAE,KAAK,CAAC;IACb,SAAS,EAAE,GAAG,CAAC;IACf,IAAI,EAAE,GAAG,CAAC;IACV,KAAK,EAAE,GAAG,CAAC;IACX,MAAM,EAAE,GAAG,CAAC;IACZ,UAAU,EAAE,GAAG,CAAC;IAChB,aAAa,EAAE,GAAG,CAAC;IACnB,SAAS,EAAE,GAAG,CAAC;IACf,gBAAgB,EAAE,GAAG,CAAC;IACtB,OAAO,EAAE,GAAG,CAAC;CACd,CAAC;AAEF;;GAEG;AACH,MAAM,MAAM,gBAAgB,GAAG;IAC7B,MAAM,EAAE,iBAAiB,CAAC;IAC1B,SAAS,EAAE,GAAG,EAAE,CAAC;CAClB,CAAC;AAEF;;GAEG;AACH,MAAM,MAAM,WAAW,GAAG;IACxB,MAAM,EAAE,iBAAiB,CAAC;IAC1B,SAAS,EAAE,GAAG,EAAE,CAAC;IACjB,YAAY,EAAE,WAAW,EAAE,CAAC;IAC5B,MAAM,EAAE,gBAAgB,EAAE,CAAC;CAC5B,CAAC;AAEF,MAAM,WAAW,mBAAmB;IAClC,OAAO,CAAC,EAAE,MAAM,CAAC;IACjB,IAAI,CAAC,EAAE,MAAM,CAAC;IACd,IAAI,EAAE,MAAM,CAAC;CACd;AACD,qBAAa,eAAgB,SAAQ,KAAK;IACxC,SAAgB,IAAI,CAAC,EAAE,MAAM,CAAC;IAC9B,SAAgB,IAAI,EAAE,MAAM,CAAC;gBAEjB,MAAM,EAAE,mBAAmB;CAKxC;AAED,qBAAa,yBAA0B,SAAQ,eAAe;IAC5D,SAAgB,QAAQ,EAAE,QAAQ,CAAC;gBACvB,MAAM,EAAE,mBAAmB,EAAE,YAAY,EAAE,YAAY;CAIpE;AAED,qBAAa,uBAAwB,SAAQ,eAAe;aAMxC,MAAM,EAAE,MAAM,GAAG,WAAW,GAAG,YAAY;aAE3C,SAAS,EAAE,MAAM;aACjB,cAAc,EAAE,MAAM,GAAG,MAAM;IARjD,SAAgB,WAAW,EAAE,GAAG,CAAC;IACjC,SAAgB,cAAc,EAAE,GAAG,CAAC;gBAGlC,MAAM,EAAE,mBAAmB,EACX,MAAM,EAAE,MAAM,GAAG,WAAW,GAAG,YAAY,EAC3D,WAAW,EAAE,OAAO,EACJ,SAAS,EAAE,MAAM,EACjB,cAAc,EAAE,MAAM,GAAG,MAAM,EAC/C,cAAc,EAAE,OAAO;CAM1B;AAED,qBAAa,gCAAiC,SAAQ,eAAe;IACnE,SAAgB,MAAM,EAAE,GAAG,CAAC;gBAEhB,MAAM,EAAE,mBAAmB,EAAE,MAAM,EAAE,OAAO;CAIzD;AAED,qBAAa,sBAAuB,SAAQ,eAAe;IACzD,SAAgB,UAAU,EAAE,GAAG,CAAC;IAChC,SAAgB,QAAQ,EAAE,GAAG,CAAC;gBAG5B,MAAM,EAAE,mBAAmB,EAC3B,UAAU,EAAE,OAAO,EACnB,QAAQ,EAAE,OAAO;CAMpB"}
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
"use strict";
|
|
2
2
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
-
exports.ErrorClientVerification = exports.ErrorClientResolveUnknown = exports.ErrorClientBase = exports.ClientIndexerSearchKeyTransaction = exports.ClientIndexerSearchKey = exports.ClientIndexerSearchKeyFilter = void 0;
|
|
3
|
+
exports.ErrorClientRBFRejected = exports.ErrorClientDuplicatedTransaction = exports.ErrorClientVerification = exports.ErrorClientResolveUnknown = exports.ErrorClientBase = exports.ClientIndexerSearchKeyTransaction = exports.ClientIndexerSearchKey = exports.ClientIndexerSearchKeyFilter = void 0;
|
|
4
4
|
const index_js_1 = require("../ckb/index.js");
|
|
5
5
|
const index_js_2 = require("../hex/index.js");
|
|
6
6
|
const index_js_3 = require("../num/index.js");
|
|
@@ -82,3 +82,18 @@ class ErrorClientVerification extends ErrorClientBase {
|
|
|
82
82
|
}
|
|
83
83
|
}
|
|
84
84
|
exports.ErrorClientVerification = ErrorClientVerification;
|
|
85
|
+
class ErrorClientDuplicatedTransaction extends ErrorClientBase {
|
|
86
|
+
constructor(origin, txHash) {
|
|
87
|
+
super(origin);
|
|
88
|
+
this.txHash = (0, index_js_2.hexFrom)(txHash);
|
|
89
|
+
}
|
|
90
|
+
}
|
|
91
|
+
exports.ErrorClientDuplicatedTransaction = ErrorClientDuplicatedTransaction;
|
|
92
|
+
class ErrorClientRBFRejected extends ErrorClientBase {
|
|
93
|
+
constructor(origin, currentFee, leastFee) {
|
|
94
|
+
super(origin);
|
|
95
|
+
this.currentFee = (0, index_js_3.numFrom)(currentFee);
|
|
96
|
+
this.leastFee = (0, index_js_3.numFrom)(leastFee);
|
|
97
|
+
}
|
|
98
|
+
}
|
|
99
|
+
exports.ErrorClientRBFRejected = ErrorClientRBFRejected;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/client/jsonRpc/index.ts"],"names":[],"mappings":"AAAA,OAAO,EACL,IAAI,EAEJ,YAAY,EACZ,eAAe,EAChB,MAAM,oBAAoB,CAAC;AAC5B,OAAO,EAAE,GAAG,EAAE,OAAO,EAAW,MAAM,oBAAoB,CAAC;AAC3D,OAAO,EAAE,GAAG,EAAE,OAAO,EAAqB,MAAM,oBAAoB,CAAC;AAErE,OAAO,EAAE,WAAW,EAAE,MAAM,mBAAmB,CAAC;AAChD,OAAO,EAAE,MAAM,EAAE,MAAM,cAAc,CAAC;AACtC,OAAO,EACL,uBAAuB,EACvB,0BAA0B,EAC1B,yBAAyB,
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/client/jsonRpc/index.ts"],"names":[],"mappings":"AAAA,OAAO,EACL,IAAI,EAEJ,YAAY,EACZ,eAAe,EAChB,MAAM,oBAAoB,CAAC;AAC5B,OAAO,EAAE,GAAG,EAAE,OAAO,EAAW,MAAM,oBAAoB,CAAC;AAC3D,OAAO,EAAE,GAAG,EAAE,OAAO,EAAqB,MAAM,oBAAoB,CAAC;AAErE,OAAO,EAAE,WAAW,EAAE,MAAM,mBAAmB,CAAC;AAChD,OAAO,EAAE,MAAM,EAAE,MAAM,cAAc,CAAC;AACtC,OAAO,EACL,uBAAuB,EACvB,0BAA0B,EAC1B,yBAAyB,EAOzB,gBAAgB,EACjB,MAAM,mBAAmB,CAAC;AAC3B,OAAO,EACL,cAAc,EAGf,MAAM,2BAA2B,CAAC;AA8DnC;;;GAGG;AAEH,8BAAsB,aAAc,SAAQ,MAAM;IAW9C,OAAO,CAAC,QAAQ,CAAC,IAAI;IAVvB,OAAO,CAAC,QAAQ,CAAC,SAAS,CAAY;IAEtC;;;;;OAKG;gBAGgB,IAAI,EAAE,MAAM,EAC7B,MAAM,CAAC,EAAE;QAAE,OAAO,CAAC,EAAE,MAAM,CAAC;QAAC,KAAK,CAAC,EAAE,WAAW,CAAA;KAAE;IAOpD;;;;OAIG;IAEH,IAAI,GAAG,IAAI,MAAM,CAEhB;IAED;;;;OAIG;IAEH,MAAM,QAIK,QAAQ,GAAG,CAAC,CAAC;IAExB;;;;;OAKG;IACH,YAAY,oGAEgB;IAE5B;;;;;;;OAOG;IACH,gBAAgB,yKAIgB;IAEhC;;;;;;;OAOG;IACH,cAAc,mMAEgB;IAE9B;;;;;;OAMG;IACH,iBAAiB,sIAIgB;IAEjC;;;;;;OAMG;IACH,eAAe,gKAEgB;IAE/B;;;;;OAKG;IACH,cAAc,oDAIgB;IAE9B;;;;;;OAMG;IAEH,kBAAkB,8FAIgB;IAElC;;;;;;OAMG;IAEH,sBAAsB,gBAKP,eAAe,cAChB,gBAAgB,GAAG,SAAS,KACrC,QAAQ,GAAG,CAAC,CAAC;IAElB;;;;;OAKG;IAEH,qBAAqB,WAIP,OAAO,KAAK,QAAQ,yBAAyB,GAAG,SAAS,CAAC,CAAC;IAEzE;;;;;;;OAOG;IACH,kBAAkB,CAChB,QAAQ,EAAE,YAAY,EACtB,QAAQ,CAAC,EAAE,OAAO,GAAG,IAAI,EACzB,aAAa,CAAC,EAAE,OAAO,GAAG,IAAI;IA+BhC;;;;;;;;OAQG;IAEH,qBAAqB,QASd,0BAA0B,UACvB,KAAK,GAAG,MAAM,UACd,OAAO,UACP,MAAM,KACX,QAAQ,uBAAuB,CAAC,CAAC;IAEtC;;;;;;;;OAQG;IAEH,qBAAqB;;;;;;;;MAQgB;IAErC;;;;;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,GACnC,CAAC,GAAG,GAAG,EAAE,OAAO,EAAE,KAAK,OAAO,CAAC,OAAO,CAAC;IAwC1C;;;;;;;OAOG;IACG,IAAI,CAAC,OAAO,EAAE,cAAc,GAAG,OAAO,CAAC,OAAO,CAAC;IAerD;;;;;;OAMG;IAEH,MAAM,CAAC,YAAY,CAAC,MAAM,EAAE,MAAM,EAAE,GAAG,EAAE,OAAO,EAAE,GAAG,cAAc;CAQpE"}
|
|
@@ -28,6 +28,28 @@ async function transform(value, transformer) {
|
|
|
28
28
|
}
|
|
29
29
|
return value;
|
|
30
30
|
}
|
|
31
|
+
const ERROR_PARSERS = [
|
|
32
|
+
[
|
|
33
|
+
"Resolve\\(Unknown\\(OutPoint\\((0x.*)\\)\\)\\)",
|
|
34
|
+
(error, match) => new clientTypes_js_1.ErrorClientResolveUnknown(error, index_js_1.OutPoint.fromBytes(match[1])),
|
|
35
|
+
],
|
|
36
|
+
[
|
|
37
|
+
"Verification\\(Error { kind: Script, inner: TransactionScriptError { source: (Inputs|Outputs)\\[([0-9]*)\\].(Lock|Type), cause: ValidationFailure: see error code (-?[0-9])* on page https://nervosnetwork\\.github\\.io/ckb-script-error-codes/by-(type|data)-hash/(.*)\\.html",
|
|
38
|
+
(error, match) => new clientTypes_js_1.ErrorClientVerification(error, match[3] === "Lock"
|
|
39
|
+
? "lock"
|
|
40
|
+
: match[1] === "Inputs"
|
|
41
|
+
? "inputType"
|
|
42
|
+
: "outputType", match[2], Number(match[4]), match[5] === "data" ? "data" : "type", match[6]),
|
|
43
|
+
],
|
|
44
|
+
[
|
|
45
|
+
"Duplicated\\(Byte32\\((0x.*)\\)\\)",
|
|
46
|
+
(error, match) => new clientTypes_js_1.ErrorClientDuplicatedTransaction(error, match[1]),
|
|
47
|
+
],
|
|
48
|
+
[
|
|
49
|
+
'RBFRejected\\("Tx\'s current fee is ([0-9]*), expect it to >= ([0-9]*) to replace old txs"\\)',
|
|
50
|
+
(error, match) => new clientTypes_js_1.ErrorClientRBFRejected(error, match[1], match[2]),
|
|
51
|
+
],
|
|
52
|
+
];
|
|
31
53
|
/**
|
|
32
54
|
* An abstract class implementing JSON-RPC client functionality for a specific URL and timeout.
|
|
33
55
|
* Provides methods for sending transactions and building JSON-RPC payloads.
|
|
@@ -203,17 +225,11 @@ class ClientJsonRpc extends client_js_1.Client {
|
|
|
203
225
|
throw errAny;
|
|
204
226
|
}
|
|
205
227
|
const err = errAny;
|
|
206
|
-
const
|
|
207
|
-
|
|
208
|
-
|
|
209
|
-
|
|
210
|
-
|
|
211
|
-
if (verificationFailedMatch) {
|
|
212
|
-
throw new clientTypes_js_1.ErrorClientVerification(err, verificationFailedMatch[3] === "Lock"
|
|
213
|
-
? "lock"
|
|
214
|
-
: verificationFailedMatch[1] === "Inputs"
|
|
215
|
-
? "inputType"
|
|
216
|
-
: "outputType", verificationFailedMatch[2], Number(verificationFailedMatch[4]), verificationFailedMatch[5] === "data" ? "data" : "type", verificationFailedMatch[6]);
|
|
228
|
+
for (const [regexp, builder] of ERROR_PARSERS) {
|
|
229
|
+
const match = err.data.match(regexp);
|
|
230
|
+
if (match) {
|
|
231
|
+
throw builder(err, match);
|
|
232
|
+
}
|
|
217
233
|
}
|
|
218
234
|
throw new clientTypes_js_1.ErrorClientBase(err);
|
|
219
235
|
}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"signerCkbPrivateKey.d.ts","sourceRoot":"","sources":["../../../src/signer/ckb/signerCkbPrivateKey.ts"],"names":[],"mappings":"AACA,OAAO,EAA0B,SAAS,EAAE,MAAM,sBAAsB,CAAC;AACzE,OAAO,EAAE,WAAW,EAAE,eAAe,EAAe,MAAM,oBAAoB,CAAC;AAC/E,OAAO,EAAE,MAAM,EAAE,MAAM,uBAAuB,CAAC;AAC/C,OAAO,EAAE,GAAG,EAAW,OAAO,EAAE,MAAM,oBAAoB,CAAC;AAE3D,OAAO,EAAE,kBAAkB,EAAE,MAAM,yBAAyB,CAAC;AAG7D;;GAEG;AACH,qBAAa,mBAAoB,SAAQ,kBAAkB;IACzD,SAAgB,UAAU,EAAE,GAAG,CAAC;gBAEpB,MAAM,EAAE,MAAM,EAAE,UAAU,EAAE,OAAO;IAUzC,YAAY,CAAC,OAAO,EAAE,OAAO,GAAG,OAAO,CAAC,GAAG,CAAC;IAgB5C,cAAc,CAAC,OAAO,EAAE,MAAM,GAAG,SAAS,GAAG,OAAO,CAAC,GAAG,CAAC;IAIzD,mBAAmB,CAAC,MAAM,EAAE,eAAe,GAAG,OAAO,CAAC,WAAW,CAAC;
|
|
1
|
+
{"version":3,"file":"signerCkbPrivateKey.d.ts","sourceRoot":"","sources":["../../../src/signer/ckb/signerCkbPrivateKey.ts"],"names":[],"mappings":"AACA,OAAO,EAA0B,SAAS,EAAE,MAAM,sBAAsB,CAAC;AACzE,OAAO,EAAE,WAAW,EAAE,eAAe,EAAe,MAAM,oBAAoB,CAAC;AAC/E,OAAO,EAAE,MAAM,EAAE,MAAM,uBAAuB,CAAC;AAC/C,OAAO,EAAE,GAAG,EAAW,OAAO,EAAE,MAAM,oBAAoB,CAAC;AAE3D,OAAO,EAAE,kBAAkB,EAAE,MAAM,yBAAyB,CAAC;AAG7D;;GAEG;AACH,qBAAa,mBAAoB,SAAQ,kBAAkB;IACzD,SAAgB,UAAU,EAAE,GAAG,CAAC;gBAEpB,MAAM,EAAE,MAAM,EAAE,UAAU,EAAE,OAAO;IAUzC,YAAY,CAAC,OAAO,EAAE,OAAO,GAAG,OAAO,CAAC,GAAG,CAAC;IAgB5C,cAAc,CAAC,OAAO,EAAE,MAAM,GAAG,SAAS,GAAG,OAAO,CAAC,GAAG,CAAC;IAIzD,mBAAmB,CAAC,MAAM,EAAE,eAAe,GAAG,OAAO,CAAC,WAAW,CAAC;CAmBzE"}
|
|
@@ -30,15 +30,16 @@ class SignerCkbPrivateKey extends signerCkbPublicKey_js_1.SignerCkbPublicKey {
|
|
|
30
30
|
}
|
|
31
31
|
async signOnlyTransaction(txLike) {
|
|
32
32
|
const tx = index_js_2.Transaction.from(txLike);
|
|
33
|
-
const { script }
|
|
34
|
-
|
|
35
|
-
|
|
36
|
-
|
|
33
|
+
for (const { script } of await this.getRelatedScripts(tx)) {
|
|
34
|
+
const info = await tx.getSignHashInfo(script, this.client);
|
|
35
|
+
if (!info) {
|
|
36
|
+
return tx;
|
|
37
|
+
}
|
|
38
|
+
const signature = await this._signMessage(info.message);
|
|
39
|
+
const witness = tx.getWitnessArgsAt(info.position) ?? index_js_2.WitnessArgs.from({});
|
|
40
|
+
witness.lock = signature;
|
|
41
|
+
tx.setWitnessArgsAt(info.position, witness);
|
|
37
42
|
}
|
|
38
|
-
const signature = await this._signMessage(info.message);
|
|
39
|
-
const witness = tx.getWitnessArgsAt(info.position) ?? index_js_2.WitnessArgs.from({});
|
|
40
|
-
witness.lock = signature;
|
|
41
|
-
tx.setWitnessArgsAt(info.position, witness);
|
|
42
43
|
return tx;
|
|
43
44
|
}
|
|
44
45
|
}
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
import { Address } from "../../address/index.js";
|
|
2
|
-
import { Transaction, TransactionLike } from "../../ckb/index.js";
|
|
3
|
-
import { Client } from "../../client/index.js";
|
|
2
|
+
import { Script, Transaction, TransactionLike } from "../../ckb/index.js";
|
|
3
|
+
import { CellDepInfo, Client } from "../../client/index.js";
|
|
4
4
|
import { Hex, HexLike } from "../../hex/index.js";
|
|
5
5
|
import { Signer, SignerSignType, SignerType } from "../signer/index.js";
|
|
6
6
|
/**
|
|
@@ -15,7 +15,13 @@ export declare class SignerCkbPublicKey extends Signer {
|
|
|
15
15
|
isConnected(): Promise<boolean>;
|
|
16
16
|
getInternalAddress(): Promise<string>;
|
|
17
17
|
getIdentity(): Promise<string>;
|
|
18
|
+
getAddressObjSecp256k1(): Promise<Address>;
|
|
19
|
+
getRecommendedAddressObj(_preference?: unknown): Promise<Address>;
|
|
18
20
|
getAddressObjs(): Promise<Address[]>;
|
|
21
|
+
getRelatedScripts(txLike: TransactionLike): Promise<{
|
|
22
|
+
script: Script;
|
|
23
|
+
cellDeps: CellDepInfo[];
|
|
24
|
+
}[]>;
|
|
19
25
|
prepareTransaction(txLike: TransactionLike): Promise<Transaction>;
|
|
20
26
|
}
|
|
21
27
|
//# sourceMappingURL=signerCkbPublicKey.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"signerCkbPublicKey.d.ts","sourceRoot":"","sources":["../../../src/signer/ckb/signerCkbPublicKey.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,OAAO,EAAE,MAAM,wBAAwB,CAAC;AAEjD,OAAO,EAAE,WAAW,EAAE,eAAe,EAAE,MAAM,oBAAoB,CAAC;
|
|
1
|
+
{"version":3,"file":"signerCkbPublicKey.d.ts","sourceRoot":"","sources":["../../../src/signer/ckb/signerCkbPublicKey.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,OAAO,EAAE,MAAM,wBAAwB,CAAC;AAEjD,OAAO,EAAE,MAAM,EAAE,WAAW,EAAE,eAAe,EAAE,MAAM,oBAAoB,CAAC;AAC1E,OAAO,EAAE,WAAW,EAAE,MAAM,EAAe,MAAM,uBAAuB,CAAC;AAEzE,OAAO,EAAE,GAAG,EAAE,OAAO,EAAW,MAAM,oBAAoB,CAAC;AAC3D,OAAO,EAAE,MAAM,EAAE,cAAc,EAAE,UAAU,EAAE,MAAM,oBAAoB,CAAC;AAExE;;GAEG;AACH,qBAAa,kBAAmB,SAAQ,MAAM;IAC5C,IAAI,IAAI,IAAI,UAAU,CAErB;IAED,IAAI,QAAQ,IAAI,cAAc,CAE7B;IAED,SAAgB,SAAS,EAAE,GAAG,CAAC;gBAEnB,MAAM,EAAE,MAAM,EAAE,SAAS,EAAE,OAAO;IASxC,OAAO,IAAI,OAAO,CAAC,IAAI,CAAC;IAExB,WAAW,IAAI,OAAO,CAAC,OAAO,CAAC;IAI/B,kBAAkB,IAAI,OAAO,CAAC,MAAM,CAAC;IAIrC,WAAW,IAAI,OAAO,CAAC,MAAM,CAAC;IAI9B,sBAAsB,IAAI,OAAO,CAAC,OAAO,CAAC;IAQ1C,wBAAwB,CAAC,WAAW,CAAC,EAAE,OAAO,GAAG,OAAO,CAAC,OAAO,CAAC;IAIjE,cAAc,IAAI,OAAO,CAAC,OAAO,EAAE,CAAC;IAmCpC,iBAAiB,CACrB,MAAM,EAAE,eAAe,GACtB,OAAO,CAAC;QAAE,MAAM,EAAE,MAAM,CAAC;QAAC,QAAQ,EAAE,WAAW,EAAE,CAAA;KAAE,EAAE,CAAC;IA6CnD,kBAAkB,CAAC,MAAM,EAAE,eAAe,GAAG,OAAO,CAAC,WAAW,CAAC;CAWxE"}
|
|
@@ -35,16 +35,74 @@ class SignerCkbPublicKey extends index_js_7.Signer {
|
|
|
35
35
|
async getIdentity() {
|
|
36
36
|
return this.publicKey;
|
|
37
37
|
}
|
|
38
|
+
async getAddressObjSecp256k1() {
|
|
39
|
+
return index_js_1.Address.fromKnownScript(this.client, index_js_4.KnownScript.Secp256k1Blake160, (0, index_js_2.bytesFrom)((0, index_js_5.hashCkb)(this.publicKey)).slice(0, 20));
|
|
40
|
+
}
|
|
41
|
+
async getRecommendedAddressObj(_preference) {
|
|
42
|
+
return this.getAddressObjSecp256k1();
|
|
43
|
+
}
|
|
38
44
|
async getAddressObjs() {
|
|
39
|
-
|
|
40
|
-
|
|
41
|
-
|
|
45
|
+
const secp256k1 = await this.getAddressObjSecp256k1();
|
|
46
|
+
const addresses = [];
|
|
47
|
+
let count = 0;
|
|
48
|
+
for await (const cell of this.client.findCells({
|
|
49
|
+
script: await index_js_3.Script.fromKnownScript(this.client, index_js_4.KnownScript.AnyoneCanPay, secp256k1.script.args),
|
|
50
|
+
scriptType: "lock",
|
|
51
|
+
scriptSearchMode: "prefix",
|
|
52
|
+
withData: false,
|
|
53
|
+
})) {
|
|
54
|
+
if (count >= 10) {
|
|
55
|
+
break;
|
|
56
|
+
}
|
|
57
|
+
count += 1;
|
|
58
|
+
if (addresses.some(({ script }) => script.eq(cell.cellOutput.lock))) {
|
|
59
|
+
continue;
|
|
60
|
+
}
|
|
61
|
+
addresses.push(index_js_1.Address.from({
|
|
62
|
+
prefix: this.client.addressPrefix,
|
|
63
|
+
script: cell.cellOutput.lock,
|
|
64
|
+
}));
|
|
65
|
+
}
|
|
66
|
+
return [secp256k1, ...addresses];
|
|
67
|
+
}
|
|
68
|
+
async getRelatedScripts(txLike) {
|
|
69
|
+
const tx = index_js_3.Transaction.from(txLike);
|
|
70
|
+
const secp256k1 = await this.getAddressObjSecp256k1();
|
|
71
|
+
const acp = await index_js_3.Script.fromKnownScript(this.client, index_js_4.KnownScript.AnyoneCanPay, secp256k1.script.args);
|
|
72
|
+
const scripts = [];
|
|
73
|
+
for (const input of tx.inputs) {
|
|
74
|
+
await input.completeExtraInfos(this.client);
|
|
75
|
+
if (!input.cellOutput) {
|
|
76
|
+
throw new Error("Unable to complete input");
|
|
77
|
+
}
|
|
78
|
+
const { lock } = input.cellOutput;
|
|
79
|
+
if (scripts.some(({ script }) => script.eq(lock))) {
|
|
80
|
+
continue;
|
|
81
|
+
}
|
|
82
|
+
if (lock.eq(secp256k1.script)) {
|
|
83
|
+
scripts.push({
|
|
84
|
+
script: lock,
|
|
85
|
+
cellDeps: (await this.client.getKnownScript(index_js_4.KnownScript.Secp256k1Blake160)).cellDeps,
|
|
86
|
+
});
|
|
87
|
+
}
|
|
88
|
+
else if (lock.codeHash === acp.codeHash &&
|
|
89
|
+
lock.hashType === acp.hashType &&
|
|
90
|
+
lock.args.startsWith(acp.args)) {
|
|
91
|
+
scripts.push({
|
|
92
|
+
script: lock,
|
|
93
|
+
cellDeps: (await this.client.getKnownScript(index_js_4.KnownScript.AnyoneCanPay))
|
|
94
|
+
.cellDeps,
|
|
95
|
+
});
|
|
96
|
+
}
|
|
97
|
+
}
|
|
98
|
+
return scripts;
|
|
42
99
|
}
|
|
43
100
|
async prepareTransaction(txLike) {
|
|
44
101
|
const tx = index_js_3.Transaction.from(txLike);
|
|
45
|
-
|
|
46
|
-
|
|
47
|
-
|
|
102
|
+
await Promise.all((await this.getRelatedScripts(tx)).map(async ({ script, cellDeps }) => {
|
|
103
|
+
await tx.prepareSighashAllWitness(script, 65, this.client);
|
|
104
|
+
await tx.addCellDepInfos(this.client, cellDeps);
|
|
105
|
+
}));
|
|
48
106
|
return tx;
|
|
49
107
|
}
|
|
50
108
|
}
|
package/package.json
CHANGED
package/src/client/client.ts
CHANGED
|
@@ -193,7 +193,7 @@ export abstract class Client {
|
|
|
193
193
|
return res;
|
|
194
194
|
}
|
|
195
195
|
|
|
196
|
-
async *
|
|
196
|
+
async *findCellsOnChain(
|
|
197
197
|
key: ClientIndexerSearchKeyLike,
|
|
198
198
|
order?: "asc" | "desc",
|
|
199
199
|
limit = 10,
|
|
@@ -236,7 +236,7 @@ export abstract class Client {
|
|
|
236
236
|
yield cell;
|
|
237
237
|
}
|
|
238
238
|
|
|
239
|
-
for await (const cell of this.
|
|
239
|
+
for await (const cell of this.findCellsOnChain(key, order, limit)) {
|
|
240
240
|
if (
|
|
241
241
|
(await this.cache.isUnusable(cell.outPoint)) ||
|
|
242
242
|
foundedOutPoints.some((founded) => founded.eq(cell.outPoint))
|
|
@@ -280,3 +280,27 @@ export class ErrorClientVerification extends ErrorClientBase {
|
|
|
280
280
|
this.scriptCodeHash = hexFrom(scriptCodeHash);
|
|
281
281
|
}
|
|
282
282
|
}
|
|
283
|
+
|
|
284
|
+
export class ErrorClientDuplicatedTransaction extends ErrorClientBase {
|
|
285
|
+
public readonly txHash: Hex;
|
|
286
|
+
|
|
287
|
+
constructor(origin: ErrorClientBaseLike, txHash: HexLike) {
|
|
288
|
+
super(origin);
|
|
289
|
+
this.txHash = hexFrom(txHash);
|
|
290
|
+
}
|
|
291
|
+
}
|
|
292
|
+
|
|
293
|
+
export class ErrorClientRBFRejected extends ErrorClientBase {
|
|
294
|
+
public readonly currentFee: Num;
|
|
295
|
+
public readonly leastFee: Num;
|
|
296
|
+
|
|
297
|
+
constructor(
|
|
298
|
+
origin: ErrorClientBaseLike,
|
|
299
|
+
currentFee: NumLike,
|
|
300
|
+
leastFee: NumLike,
|
|
301
|
+
) {
|
|
302
|
+
super(origin);
|
|
303
|
+
this.currentFee = numFrom(currentFee);
|
|
304
|
+
this.leastFee = numFrom(leastFee);
|
|
305
|
+
}
|
|
306
|
+
}
|
|
@@ -15,6 +15,8 @@ import {
|
|
|
15
15
|
ClientTransactionResponse,
|
|
16
16
|
ErrorClientBase,
|
|
17
17
|
ErrorClientBaseLike,
|
|
18
|
+
ErrorClientDuplicatedTransaction,
|
|
19
|
+
ErrorClientRBFRejected,
|
|
18
20
|
ErrorClientResolveUnknown,
|
|
19
21
|
ErrorClientVerification,
|
|
20
22
|
OutputsValidator,
|
|
@@ -50,6 +52,41 @@ async function transform(
|
|
|
50
52
|
return value;
|
|
51
53
|
}
|
|
52
54
|
|
|
55
|
+
const ERROR_PARSERS: [
|
|
56
|
+
string,
|
|
57
|
+
(error: ErrorClientBaseLike, match: RegExpMatchArray) => ErrorClientBase,
|
|
58
|
+
][] = [
|
|
59
|
+
[
|
|
60
|
+
"Resolve\\(Unknown\\(OutPoint\\((0x.*)\\)\\)\\)",
|
|
61
|
+
(error, match) =>
|
|
62
|
+
new ErrorClientResolveUnknown(error, OutPoint.fromBytes(match[1])),
|
|
63
|
+
],
|
|
64
|
+
[
|
|
65
|
+
"Verification\\(Error { kind: Script, inner: TransactionScriptError { source: (Inputs|Outputs)\\[([0-9]*)\\].(Lock|Type), cause: ValidationFailure: see error code (-?[0-9])* on page https://nervosnetwork\\.github\\.io/ckb-script-error-codes/by-(type|data)-hash/(.*)\\.html",
|
|
66
|
+
(error, match) =>
|
|
67
|
+
new ErrorClientVerification(
|
|
68
|
+
error,
|
|
69
|
+
match[3] === "Lock"
|
|
70
|
+
? "lock"
|
|
71
|
+
: match[1] === "Inputs"
|
|
72
|
+
? "inputType"
|
|
73
|
+
: "outputType",
|
|
74
|
+
match[2],
|
|
75
|
+
Number(match[4]),
|
|
76
|
+
match[5] === "data" ? "data" : "type",
|
|
77
|
+
match[6],
|
|
78
|
+
),
|
|
79
|
+
],
|
|
80
|
+
[
|
|
81
|
+
"Duplicated\\(Byte32\\((0x.*)\\)\\)",
|
|
82
|
+
(error, match) => new ErrorClientDuplicatedTransaction(error, match[1]),
|
|
83
|
+
],
|
|
84
|
+
[
|
|
85
|
+
'RBFRejected\\("Tx\'s current fee is ([0-9]*), expect it to >= ([0-9]*) to replace old txs"\\)',
|
|
86
|
+
(error, match) => new ErrorClientRBFRejected(error, match[1], match[2]),
|
|
87
|
+
],
|
|
88
|
+
];
|
|
89
|
+
|
|
53
90
|
/**
|
|
54
91
|
* An abstract class implementing JSON-RPC client functionality for a specific URL and timeout.
|
|
55
92
|
* Provides methods for sending transactions and building JSON-RPC payloads.
|
|
@@ -353,33 +390,11 @@ export abstract class ClientJsonRpc extends Client {
|
|
|
353
390
|
}
|
|
354
391
|
const err = errAny as ErrorClientBaseLike;
|
|
355
392
|
|
|
356
|
-
const
|
|
357
|
-
|
|
358
|
-
|
|
359
|
-
|
|
360
|
-
|
|
361
|
-
err,
|
|
362
|
-
OutPoint.fromBytes(unknownOutPointMatch),
|
|
363
|
-
);
|
|
364
|
-
}
|
|
365
|
-
const verificationFailedMatch = err.data.match(
|
|
366
|
-
new RegExp(
|
|
367
|
-
"Verification\\(Error { kind: Script, inner: TransactionScriptError { source: (Inputs|Outputs)\\[([0-9]*)\\].(Lock|Type), cause: ValidationFailure: see error code (-?[0-9])* on page https://nervosnetwork\\.github\\.io/ckb-script-error-codes/by-(type|data)-hash/(.*)\\.html",
|
|
368
|
-
),
|
|
369
|
-
);
|
|
370
|
-
if (verificationFailedMatch) {
|
|
371
|
-
throw new ErrorClientVerification(
|
|
372
|
-
err,
|
|
373
|
-
verificationFailedMatch[3] === "Lock"
|
|
374
|
-
? "lock"
|
|
375
|
-
: verificationFailedMatch[1] === "Inputs"
|
|
376
|
-
? "inputType"
|
|
377
|
-
: "outputType",
|
|
378
|
-
verificationFailedMatch[2],
|
|
379
|
-
Number(verificationFailedMatch[4]),
|
|
380
|
-
verificationFailedMatch[5] === "data" ? "data" : "type",
|
|
381
|
-
verificationFailedMatch[6],
|
|
382
|
-
);
|
|
393
|
+
for (const [regexp, builder] of ERROR_PARSERS) {
|
|
394
|
+
const match = err.data.match(regexp);
|
|
395
|
+
if (match) {
|
|
396
|
+
throw builder(err, match);
|
|
397
|
+
}
|
|
383
398
|
}
|
|
384
399
|
|
|
385
400
|
throw new ErrorClientBase(err);
|
|
@@ -45,17 +45,21 @@ export class SignerCkbPrivateKey extends SignerCkbPublicKey {
|
|
|
45
45
|
|
|
46
46
|
async signOnlyTransaction(txLike: TransactionLike): Promise<Transaction> {
|
|
47
47
|
const tx = Transaction.from(txLike);
|
|
48
|
-
const { script } = await this.getRecommendedAddressObj();
|
|
49
|
-
const info = await tx.getSignHashInfo(script, this.client);
|
|
50
|
-
if (!info) {
|
|
51
|
-
return tx;
|
|
52
|
-
}
|
|
53
48
|
|
|
54
|
-
const
|
|
49
|
+
for (const { script } of await this.getRelatedScripts(tx)) {
|
|
50
|
+
const info = await tx.getSignHashInfo(script, this.client);
|
|
51
|
+
if (!info) {
|
|
52
|
+
return tx;
|
|
53
|
+
}
|
|
54
|
+
|
|
55
|
+
const signature = await this._signMessage(info.message);
|
|
56
|
+
|
|
57
|
+
const witness =
|
|
58
|
+
tx.getWitnessArgsAt(info.position) ?? WitnessArgs.from({});
|
|
59
|
+
witness.lock = signature;
|
|
60
|
+
tx.setWitnessArgsAt(info.position, witness);
|
|
61
|
+
}
|
|
55
62
|
|
|
56
|
-
const witness = tx.getWitnessArgsAt(info.position) ?? WitnessArgs.from({});
|
|
57
|
-
witness.lock = signature;
|
|
58
|
-
tx.setWitnessArgsAt(info.position, witness);
|
|
59
63
|
return tx;
|
|
60
64
|
}
|
|
61
65
|
}
|
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
import { Address } from "../../address/index.js";
|
|
2
2
|
import { bytesFrom } from "../../bytes/index.js";
|
|
3
|
-
import { Transaction, TransactionLike } from "../../ckb/index.js";
|
|
4
|
-
import { Client, KnownScript } from "../../client/index.js";
|
|
3
|
+
import { Script, Transaction, TransactionLike } from "../../ckb/index.js";
|
|
4
|
+
import { CellDepInfo, Client, KnownScript } from "../../client/index.js";
|
|
5
5
|
import { hashCkb } from "../../hasher/index.js";
|
|
6
6
|
import { Hex, HexLike, hexFrom } from "../../hex/index.js";
|
|
7
7
|
import { Signer, SignerSignType, SignerType } from "../signer/index.js";
|
|
@@ -43,24 +43,109 @@ export class SignerCkbPublicKey extends Signer {
|
|
|
43
43
|
return this.publicKey;
|
|
44
44
|
}
|
|
45
45
|
|
|
46
|
+
async getAddressObjSecp256k1(): Promise<Address> {
|
|
47
|
+
return Address.fromKnownScript(
|
|
48
|
+
this.client,
|
|
49
|
+
KnownScript.Secp256k1Blake160,
|
|
50
|
+
bytesFrom(hashCkb(this.publicKey)).slice(0, 20),
|
|
51
|
+
);
|
|
52
|
+
}
|
|
53
|
+
|
|
54
|
+
async getRecommendedAddressObj(_preference?: unknown): Promise<Address> {
|
|
55
|
+
return this.getAddressObjSecp256k1();
|
|
56
|
+
}
|
|
57
|
+
|
|
46
58
|
async getAddressObjs(): Promise<Address[]> {
|
|
47
|
-
|
|
48
|
-
|
|
59
|
+
const secp256k1 = await this.getAddressObjSecp256k1();
|
|
60
|
+
|
|
61
|
+
const addresses: Address[] = [];
|
|
62
|
+
let count = 0;
|
|
63
|
+
for await (const cell of this.client.findCells({
|
|
64
|
+
script: await Script.fromKnownScript(
|
|
49
65
|
this.client,
|
|
50
|
-
KnownScript.
|
|
51
|
-
|
|
66
|
+
KnownScript.AnyoneCanPay,
|
|
67
|
+
secp256k1.script.args,
|
|
52
68
|
),
|
|
53
|
-
|
|
69
|
+
scriptType: "lock",
|
|
70
|
+
scriptSearchMode: "prefix",
|
|
71
|
+
withData: false,
|
|
72
|
+
})) {
|
|
73
|
+
if (count >= 10) {
|
|
74
|
+
break;
|
|
75
|
+
}
|
|
76
|
+
count += 1;
|
|
77
|
+
|
|
78
|
+
if (addresses.some(({ script }) => script.eq(cell.cellOutput.lock))) {
|
|
79
|
+
continue;
|
|
80
|
+
}
|
|
81
|
+
|
|
82
|
+
addresses.push(
|
|
83
|
+
Address.from({
|
|
84
|
+
prefix: this.client.addressPrefix,
|
|
85
|
+
script: cell.cellOutput.lock,
|
|
86
|
+
}),
|
|
87
|
+
);
|
|
88
|
+
}
|
|
89
|
+
|
|
90
|
+
return [secp256k1, ...addresses];
|
|
54
91
|
}
|
|
55
92
|
|
|
56
|
-
async
|
|
93
|
+
async getRelatedScripts(
|
|
94
|
+
txLike: TransactionLike,
|
|
95
|
+
): Promise<{ script: Script; cellDeps: CellDepInfo[] }[]> {
|
|
57
96
|
const tx = Transaction.from(txLike);
|
|
58
|
-
|
|
59
|
-
await
|
|
97
|
+
|
|
98
|
+
const secp256k1 = await this.getAddressObjSecp256k1();
|
|
99
|
+
const acp = await Script.fromKnownScript(
|
|
60
100
|
this.client,
|
|
61
|
-
KnownScript.
|
|
101
|
+
KnownScript.AnyoneCanPay,
|
|
102
|
+
secp256k1.script.args,
|
|
103
|
+
);
|
|
104
|
+
|
|
105
|
+
const scripts: { script: Script; cellDeps: CellDepInfo[] }[] = [];
|
|
106
|
+
for (const input of tx.inputs) {
|
|
107
|
+
await input.completeExtraInfos(this.client);
|
|
108
|
+
if (!input.cellOutput) {
|
|
109
|
+
throw new Error("Unable to complete input");
|
|
110
|
+
}
|
|
111
|
+
|
|
112
|
+
const { lock } = input.cellOutput;
|
|
113
|
+
if (scripts.some(({ script }) => script.eq(lock))) {
|
|
114
|
+
continue;
|
|
115
|
+
}
|
|
116
|
+
|
|
117
|
+
if (lock.eq(secp256k1.script)) {
|
|
118
|
+
scripts.push({
|
|
119
|
+
script: lock,
|
|
120
|
+
cellDeps: (
|
|
121
|
+
await this.client.getKnownScript(KnownScript.Secp256k1Blake160)
|
|
122
|
+
).cellDeps,
|
|
123
|
+
});
|
|
124
|
+
} else if (
|
|
125
|
+
lock.codeHash === acp.codeHash &&
|
|
126
|
+
lock.hashType === acp.hashType &&
|
|
127
|
+
lock.args.startsWith(acp.args)
|
|
128
|
+
) {
|
|
129
|
+
scripts.push({
|
|
130
|
+
script: lock,
|
|
131
|
+
cellDeps: (await this.client.getKnownScript(KnownScript.AnyoneCanPay))
|
|
132
|
+
.cellDeps,
|
|
133
|
+
});
|
|
134
|
+
}
|
|
135
|
+
}
|
|
136
|
+
|
|
137
|
+
return scripts;
|
|
138
|
+
}
|
|
139
|
+
|
|
140
|
+
async prepareTransaction(txLike: TransactionLike): Promise<Transaction> {
|
|
141
|
+
const tx = Transaction.from(txLike);
|
|
142
|
+
|
|
143
|
+
await Promise.all(
|
|
144
|
+
(await this.getRelatedScripts(tx)).map(async ({ script, cellDeps }) => {
|
|
145
|
+
await tx.prepareSighashAllWitness(script, 65, this.client);
|
|
146
|
+
await tx.addCellDepInfos(this.client, cellDeps);
|
|
147
|
+
}),
|
|
62
148
|
);
|
|
63
|
-
await tx.prepareSighashAllWitness(script, 65, this.client);
|
|
64
149
|
return tx;
|
|
65
150
|
}
|
|
66
151
|
}
|