@ckb-ccc/core 1.6.0 → 1.8.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 +19 -1
- package/dist/ckb/script.d.ts +2 -1
- package/dist/ckb/script.d.ts.map +1 -1
- package/dist/ckb/transaction.d.ts +70 -5
- package/dist/ckb/transaction.d.ts.map +1 -1
- package/dist/ckb/transaction.js +186 -53
- package/dist/client/client.d.ts +3 -1
- package/dist/client/client.d.ts.map +1 -1
- package/dist/client/client.js +4 -3
- package/dist/client/clientPublicMainnet.advanced.d.ts +2 -1
- package/dist/client/clientPublicMainnet.advanced.d.ts.map +1 -1
- package/dist/client/clientPublicMainnet.advanced.js +1 -1
- package/dist/client/clientPublicMainnet.d.ts +2 -1
- package/dist/client/clientPublicMainnet.d.ts.map +1 -1
- package/dist/client/clientPublicTestnet.advanced.d.ts +2 -1
- package/dist/client/clientPublicTestnet.advanced.d.ts.map +1 -1
- package/dist/client/clientPublicTestnet.advanced.js +1 -1
- package/dist/client/clientPublicTestnet.d.ts +2 -1
- package/dist/client/clientPublicTestnet.d.ts.map +1 -1
- package/dist/client/clientTypes.d.ts +0 -25
- package/dist/client/clientTypes.d.ts.map +1 -1
- package/dist/client/clientTypes.js +0 -27
- package/dist/client/index.d.ts +1 -0
- package/dist/client/index.d.ts.map +1 -1
- package/dist/client/index.js +1 -0
- package/dist/client/knownScript.d.ts +26 -0
- package/dist/client/knownScript.d.ts.map +1 -0
- package/dist/client/knownScript.js +27 -0
- package/dist/num/index.d.ts.map +1 -1
- package/dist/num/index.js +17 -1
- package/dist/signer/ckb/signerCkbPublicKey.d.ts.map +1 -1
- package/dist/signer/ckb/signerCkbPublicKey.js +1 -5
- package/dist/signer/nostr/index.d.ts +1 -0
- package/dist/signer/nostr/index.d.ts.map +1 -1
- package/dist/signer/nostr/index.js +1 -0
- package/dist/signer/nostr/signerNostr.d.ts +1 -1
- package/dist/signer/nostr/signerNostr.d.ts.map +1 -1
- package/dist/signer/nostr/signerNostr.js +8 -0
- package/dist/signer/nostr/signerNostrPrivateKey.d.ts +5 -7
- package/dist/signer/nostr/signerNostrPrivateKey.d.ts.map +1 -1
- package/dist/signer/nostr/signerNostrPrivateKey.js +6 -12
- package/dist/signer/nostr/signerNostrPublicKeyReadonly.d.ts +11 -0
- package/dist/signer/nostr/signerNostrPublicKeyReadonly.d.ts.map +1 -0
- package/dist/signer/nostr/signerNostrPublicKeyReadonly.js +22 -0
- package/dist.commonjs/ckb/script.d.ts +2 -1
- package/dist.commonjs/ckb/script.d.ts.map +1 -1
- package/dist.commonjs/ckb/transaction.d.ts +70 -5
- package/dist.commonjs/ckb/transaction.d.ts.map +1 -1
- package/dist.commonjs/ckb/transaction.js +282 -147
- package/dist.commonjs/client/client.d.ts +3 -1
- package/dist.commonjs/client/client.d.ts.map +1 -1
- package/dist.commonjs/client/client.js +4 -3
- package/dist.commonjs/client/clientPublicMainnet.advanced.d.ts +2 -1
- package/dist.commonjs/client/clientPublicMainnet.advanced.d.ts.map +1 -1
- package/dist.commonjs/client/clientPublicMainnet.advanced.js +21 -21
- package/dist.commonjs/client/clientPublicMainnet.d.ts +2 -1
- package/dist.commonjs/client/clientPublicMainnet.d.ts.map +1 -1
- package/dist.commonjs/client/clientPublicTestnet.advanced.d.ts +2 -1
- package/dist.commonjs/client/clientPublicTestnet.advanced.d.ts.map +1 -1
- package/dist.commonjs/client/clientPublicTestnet.advanced.js +21 -21
- package/dist.commonjs/client/clientPublicTestnet.d.ts +2 -1
- package/dist.commonjs/client/clientPublicTestnet.d.ts.map +1 -1
- package/dist.commonjs/client/clientTypes.d.ts +0 -25
- package/dist.commonjs/client/clientTypes.d.ts.map +1 -1
- package/dist.commonjs/client/clientTypes.js +1 -28
- package/dist.commonjs/client/index.d.ts +1 -0
- package/dist.commonjs/client/index.d.ts.map +1 -1
- package/dist.commonjs/client/index.js +1 -0
- package/dist.commonjs/client/knownScript.d.ts +26 -0
- package/dist.commonjs/client/knownScript.d.ts.map +1 -0
- package/dist.commonjs/client/knownScript.js +30 -0
- package/dist.commonjs/num/index.d.ts.map +1 -1
- package/dist.commonjs/num/index.js +17 -1
- package/dist.commonjs/signer/ckb/signerCkbPublicKey.d.ts.map +1 -1
- package/dist.commonjs/signer/ckb/signerCkbPublicKey.js +1 -5
- package/dist.commonjs/signer/nostr/index.d.ts +1 -0
- package/dist.commonjs/signer/nostr/index.d.ts.map +1 -1
- package/dist.commonjs/signer/nostr/index.js +1 -0
- package/dist.commonjs/signer/nostr/signerNostr.d.ts +1 -1
- package/dist.commonjs/signer/nostr/signerNostr.d.ts.map +1 -1
- package/dist.commonjs/signer/nostr/signerNostr.js +8 -0
- package/dist.commonjs/signer/nostr/signerNostrPrivateKey.d.ts +5 -7
- package/dist.commonjs/signer/nostr/signerNostrPrivateKey.d.ts.map +1 -1
- package/dist.commonjs/signer/nostr/signerNostrPrivateKey.js +6 -12
- package/dist.commonjs/signer/nostr/signerNostrPublicKeyReadonly.d.ts +11 -0
- package/dist.commonjs/signer/nostr/signerNostrPublicKeyReadonly.d.ts.map +1 -0
- package/dist.commonjs/signer/nostr/signerNostrPublicKeyReadonly.js +26 -0
- package/package.json +2 -2
- package/src/ckb/script.ts +2 -1
- package/src/ckb/transaction.ts +270 -62
- package/src/client/client.ts +5 -4
- package/src/client/clientPublicMainnet.advanced.ts +2 -1
- package/src/client/clientPublicMainnet.ts +2 -1
- package/src/client/clientPublicTestnet.advanced.ts +2 -1
- package/src/client/clientPublicTestnet.ts +2 -1
- package/src/client/clientTypes.ts +0 -28
- package/src/client/index.ts +1 -0
- package/src/client/knownScript.ts +27 -0
- package/src/num/index.ts +21 -1
- package/src/signer/ckb/signerCkbPublicKey.ts +3 -5
- package/src/signer/nostr/index.ts +1 -0
- package/src/signer/nostr/signerNostr.ts +3 -1
- package/src/signer/nostr/signerNostrPrivateKey.ts +7 -14
- package/src/signer/nostr/signerNostrPublicKeyReadonly.ts +29 -0
package/CHANGELOG.md
CHANGED
|
@@ -1,23 +1,41 @@
|
|
|
1
1
|
# @ckb-ccc/core
|
|
2
2
|
|
|
3
|
-
## 1.
|
|
3
|
+
## 1.8.0
|
|
4
4
|
|
|
5
5
|
### Minor Changes
|
|
6
6
|
|
|
7
7
|
- [#159](https://github.com/ckb-devrel/ccc/pull/159) [`80e605d`](https://github.com/ckb-devrel/ccc/commit/80e605d0645e87b4e8b5be85c63322f7a3926e38) Thanks [@Hanssen0](https://github.com/Hanssen0)! - feat(core): stringify util
|
|
8
8
|
|
|
9
|
+
- [#171](https://github.com/ckb-devrel/ccc/pull/171) [`8c7e000`](https://github.com/ckb-devrel/ccc/commit/8c7e00069a276ac58afa4737623e95656d4852c5) Thanks [@Hanssen0](https://github.com/Hanssen0)! - feat(core): Dao related utils
|
|
10
|
+
|
|
11
|
+
- [#179](https://github.com/ckb-devrel/ccc/pull/179) [`732ad59`](https://github.com/ckb-devrel/ccc/commit/732ad59f13ea2cd47003033e30b310b8ff26f058) Thanks [@Hanssen0](https://github.com/Hanssen0)! - fix: add inputs after cobuild witness injected
|
|
12
|
+
|
|
13
|
+
- [#173](https://github.com/ckb-devrel/ccc/pull/173) [`815fb4d`](https://github.com/ckb-devrel/ccc/commit/815fb4da3432b889b848eb70943d725988fe611d) Thanks [@ashuralyk](https://github.com/ashuralyk)! - Add treatment to uncompatible XUDT data format
|
|
14
|
+
|
|
9
15
|
- [#158](https://github.com/ckb-devrel/ccc/pull/158) [`d584059`](https://github.com/ckb-devrel/ccc/commit/d584059644e8bcd3a0ea8b0314fdcbb68ee66013) Thanks [@Hanssen0](https://github.com/Hanssen0)! - feat(core): more rpc calls cache
|
|
10
16
|
|
|
17
|
+
- [#171](https://github.com/ckb-devrel/ccc/pull/171) [`f58d398`](https://github.com/ckb-devrel/ccc/commit/f58d3980f08da1f3fa19cee45aa50c8b293294ea) Thanks [@Hanssen0](https://github.com/Hanssen0)! - feat(core): Transaction.getFee
|
|
18
|
+
|
|
11
19
|
- [#153](https://github.com/ckb-devrel/ccc/pull/153) [`1e88ad8`](https://github.com/ckb-devrel/ccc/commit/1e88ad8743428b46b28fe790bd559b96df8a6ce4) Thanks [@Hanssen0](https://github.com/Hanssen0)! - feat(core): fee rate checks
|
|
12
20
|
|
|
13
21
|
- [#158](https://github.com/ckb-devrel/ccc/pull/158) [`6f10589`](https://github.com/ckb-devrel/ccc/commit/6f1058977e7aa113808fa74793f1ad5d672626d2) Thanks [@Hanssen0](https://github.com/Hanssen0)! - feat(core): Transaction utils
|
|
14
22
|
|
|
23
|
+
- [#182](https://github.com/ckb-devrel/ccc/pull/182) [`601a729`](https://github.com/ckb-devrel/ccc/commit/601a7291e877b39c4032c95fab421ed3d41404c2) Thanks [@Hanssen0](https://github.com/Hanssen0)! - feat(core): SignerNostrPublicKeyReadonly
|
|
24
|
+
|
|
25
|
+
- [#171](https://github.com/ckb-devrel/ccc/pull/171) [`074b4cd`](https://github.com/ckb-devrel/ccc/commit/074b4cd3b0cdc925dc9ef99e8146564a60646f1e) Thanks [@Hanssen0](https://github.com/Hanssen0)! - feat(core): calculate Nervos DAO profit as input capacity
|
|
26
|
+
|
|
15
27
|
### Patch Changes
|
|
16
28
|
|
|
29
|
+
- [#166](https://github.com/ckb-devrel/ccc/pull/166) [`90b6e9f`](https://github.com/ckb-devrel/ccc/commit/90b6e9fee543b6ee16b96e27d6f86ff33fc57029) Thanks [@Hanssen0](https://github.com/Hanssen0)! - chore: bump @joyid/ckb version
|
|
30
|
+
|
|
17
31
|
- [#153](https://github.com/ckb-devrel/ccc/pull/153) [`def62a0`](https://github.com/ckb-devrel/ccc/commit/def62a08bf908c6a21fe91c8db2c60848a2ada52) Thanks [@Hanssen0](https://github.com/Hanssen0)! - fix(core): uncatched websocket error
|
|
18
32
|
|
|
19
33
|
- [#159](https://github.com/ckb-devrel/ccc/pull/159) [`d7728d9`](https://github.com/ckb-devrel/ccc/commit/d7728d9edb46c9c5a2bfeb342fc68a8b1c0fec5d) Thanks [@Hanssen0](https://github.com/Hanssen0)! - chore(core): remove ankr public node from default
|
|
20
34
|
|
|
35
|
+
- [#177](https://github.com/ckb-devrel/ccc/pull/177) [`ab195a0`](https://github.com/ckb-devrel/ccc/commit/ab195a024aeee5e21ed19d89c2cf1bf8d52bb380) Thanks [@Hanssen0](https://github.com/Hanssen0)! - fix(core): negative number for numToByte
|
|
36
|
+
|
|
37
|
+
- [`29a2e22`](https://github.com/ckb-devrel/ccc/commit/29a2e223b902ed23523e4948ab3fca793f9e5b01) Thanks [@Hanssen0](https://github.com/Hanssen0)! - chore: bump @joyid/ckb version
|
|
38
|
+
|
|
21
39
|
## 1.5.0
|
|
22
40
|
|
|
23
41
|
### Minor Changes
|
package/dist/ckb/script.d.ts
CHANGED
|
@@ -1,5 +1,6 @@
|
|
|
1
1
|
import { Bytes, BytesLike } from "../bytes/index.js";
|
|
2
|
-
import { Client
|
|
2
|
+
import type { Client } from "../client/index.js";
|
|
3
|
+
import { KnownScript } from "../client/knownScript.js";
|
|
3
4
|
import { Hex, HexLike } from "../hex/index.js";
|
|
4
5
|
import { mol } from "../molecule/index.js";
|
|
5
6
|
export declare const HashTypeCodec: mol.Codec<HashTypeLike, HashType>;
|
package/dist/ckb/script.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"script.d.ts","sourceRoot":"","sources":["../../src/ckb/script.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,KAAK,EAAE,SAAS,EAAa,MAAM,mBAAmB,CAAC;AAChE,OAAO,EAAE,MAAM,EAAE,WAAW,EAAE,MAAM,
|
|
1
|
+
{"version":3,"file":"script.d.ts","sourceRoot":"","sources":["../../src/ckb/script.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,KAAK,EAAE,SAAS,EAAa,MAAM,mBAAmB,CAAC;AAChE,OAAO,KAAK,EAAE,MAAM,EAAE,MAAM,oBAAoB,CAAC;AACjD,OAAO,EAAE,WAAW,EAAE,MAAM,0BAA0B,CAAC;AACvD,OAAO,EAAE,GAAG,EAAE,OAAO,EAAW,MAAM,iBAAiB,CAAC;AACxD,OAAO,EAAE,GAAG,EAAE,MAAM,sBAAsB,CAAC;AAO3C,eAAO,MAAM,aAAa,EAAE,GAAG,CAAC,KAAK,CAAC,YAAY,EAAE,QAAQ,CAI1D,CAAC;AAEH;;GAEG;AACH,MAAM,MAAM,YAAY,GAAG,MAAM,GAAG,MAAM,GAAG,MAAM,CAAC;AACpD;;GAEG;AACH,MAAM,MAAM,QAAQ,GAAG,MAAM,GAAG,MAAM,GAAG,OAAO,GAAG,OAAO,CAAC;AAE3D;;;;;;;;;;;;;;GAcG;AAEH,wBAAgB,YAAY,CAAC,GAAG,EAAE,YAAY,GAAG,QAAQ,CAmBxD;AAED;;;;;;;;;;;GAWG;AAEH,wBAAgB,eAAe,CAAC,QAAQ,EAAE,YAAY,GAAG,KAAK,CAE7D;AAED;;;;;;;;;;;;;GAaG;AAEH,wBAAgB,iBAAiB,CAAC,KAAK,EAAE,SAAS,GAAG,QAAQ,CAE5D;AAED;;GAEG;AACH,MAAM,MAAM,UAAU,GAAG;IACvB,QAAQ,EAAE,SAAS,CAAC;IACpB,QAAQ,EAAE,YAAY,CAAC;IACvB,IAAI,EAAE,SAAS,CAAC;CACjB,CAAC;;;;;;;;;;;;;AACF;;GAEG;AACH,qBAOa,MAAO,SAAQ,WAAqC;IAStD,QAAQ,EAAE,GAAG;IACb,QAAQ,EAAE,QAAQ;IAClB,IAAI,EAAE,GAAG;IAVlB;;;;;;OAMG;gBAEM,QAAQ,EAAE,GAAG,EACb,QAAQ,EAAE,QAAQ,EAClB,IAAI,EAAE,GAAG;IAKlB,IAAI,YAAY,IAAI,MAAM,CAEzB;IAED;;;;;;;;;OASG;IACH,KAAK,IAAI,MAAM;IAIf;;;;;;;;;;;;;;OAcG;IAEH,MAAM,CAAC,IAAI,CAAC,MAAM,EAAE,UAAU,GAAG,MAAM;IAYvC;;;;;;;;;;;;;;;;OAgBG;WAEU,eAAe,CAC1B,MAAM,EAAE,MAAM,EACd,WAAW,EAAE,WAAW,EACxB,IAAI,EAAE,OAAO,GACZ,OAAO,CAAC,MAAM,CAAC;CAUnB;AAED,eAAO,MAAM,SAAS,8DAAqB,CAAC;AAC5C,eAAO,MAAM,SAAS,mCAAqB,CAAC"}
|
|
@@ -1,6 +1,7 @@
|
|
|
1
1
|
import { Bytes, BytesLike } from "../bytes/index.js";
|
|
2
2
|
import type { ClientCollectableSearchKeyFilterLike } from "../client/clientTypes.advanced.js";
|
|
3
|
-
import type
|
|
3
|
+
import { ClientBlockHeader, type CellDepInfoLike, type Client, type ClientBlockHeaderLike } from "../client/index.js";
|
|
4
|
+
import { KnownScript } from "../client/knownScript.js";
|
|
4
5
|
import { Hasher } from "../hasher/index.js";
|
|
5
6
|
import { Hex, HexLike } from "../hex/index.js";
|
|
6
7
|
import { mol } from "../molecule/index.js";
|
|
@@ -193,6 +194,37 @@ export declare class Cell {
|
|
|
193
194
|
* @returns A Cell instance.
|
|
194
195
|
*/
|
|
195
196
|
static from(cell: CellLike): Cell;
|
|
197
|
+
get capacityFree(): bigint;
|
|
198
|
+
/**
|
|
199
|
+
* Occupied bytes of a cell on chain
|
|
200
|
+
* It's CellOutput.occupiedSize + bytesFrom(outputData).byteLength
|
|
201
|
+
*/
|
|
202
|
+
get occupiedSize(): number;
|
|
203
|
+
/**
|
|
204
|
+
* Gets confirmed Nervos DAO profit of a Cell
|
|
205
|
+
* It returns non-zero value only when the cell is in withdrawal phase 2
|
|
206
|
+
* See https://github.com/nervosnetwork/rfcs/blob/master/rfcs/0023-dao-deposit-withdraw/0023-dao-deposit-withdraw.md
|
|
207
|
+
*
|
|
208
|
+
* @param client - A client for searching DAO related headers
|
|
209
|
+
* @returns Profit
|
|
210
|
+
*
|
|
211
|
+
* @example
|
|
212
|
+
* ```typescript
|
|
213
|
+
* const profit = await cell.getDaoProfit(client);
|
|
214
|
+
* ```
|
|
215
|
+
*/
|
|
216
|
+
getDaoProfit(client: Client): Promise<Num>;
|
|
217
|
+
isNervosDao(client: Client, phase?: "deposited" | "withdrew"): Promise<boolean>;
|
|
218
|
+
getNervosDaoInfo(client: Client): Promise<{
|
|
219
|
+
depositHeader?: undefined;
|
|
220
|
+
withdrawHeader?: undefined;
|
|
221
|
+
} | {
|
|
222
|
+
depositHeader: ClientBlockHeader;
|
|
223
|
+
withdrawHeader?: undefined;
|
|
224
|
+
} | {
|
|
225
|
+
depositHeader: ClientBlockHeader;
|
|
226
|
+
withdrawHeader: ClientBlockHeader;
|
|
227
|
+
}>;
|
|
196
228
|
/**
|
|
197
229
|
* Clone a Cell
|
|
198
230
|
*
|
|
@@ -363,17 +395,26 @@ export declare class CellInput extends CellInput_base {
|
|
|
363
395
|
* ```
|
|
364
396
|
*/
|
|
365
397
|
static from(cellInput: CellInputLike): CellInput;
|
|
398
|
+
getCell(client: Client): Promise<Cell>;
|
|
366
399
|
/**
|
|
367
|
-
* Complete extra infos in the input.
|
|
400
|
+
* Complete extra infos in the input. Including
|
|
401
|
+
* - Previous cell output
|
|
402
|
+
* - Previous cell data
|
|
368
403
|
* The instance will be modified.
|
|
369
404
|
*
|
|
370
405
|
* @returns true if succeed.
|
|
371
406
|
* @example
|
|
372
407
|
* ```typescript
|
|
373
|
-
* await cellInput.completeExtraInfos();
|
|
408
|
+
* await cellInput.completeExtraInfos(client);
|
|
374
409
|
* ```
|
|
375
410
|
*/
|
|
376
411
|
completeExtraInfos(client: Client): Promise<void>;
|
|
412
|
+
/**
|
|
413
|
+
* The extra capacity created when consume this input.
|
|
414
|
+
* This is usually NervosDAO interest, see https://github.com/nervosnetwork/rfcs/blob/master/rfcs/0023-dao-deposit-withdraw/0023-dao-deposit-withdraw.md.
|
|
415
|
+
* And it can also be miners' income. (But this is not implemented yet)
|
|
416
|
+
*/
|
|
417
|
+
getExtraCapacity(client: Client): Promise<Num>;
|
|
377
418
|
clone(): CellInput;
|
|
378
419
|
}
|
|
379
420
|
export declare const CellInputVec: mol.Codec<CellInputLike[], CellInput[]>;
|
|
@@ -490,6 +531,8 @@ export declare class WitnessArgs extends WitnessArgs_base {
|
|
|
490
531
|
static from(witnessArgs: WitnessArgsLike): WitnessArgs;
|
|
491
532
|
}
|
|
492
533
|
/**
|
|
534
|
+
* Convert a bytes to a num.
|
|
535
|
+
*
|
|
493
536
|
* @public
|
|
494
537
|
*/
|
|
495
538
|
export declare function udtBalanceFrom(dataLike: BytesLike): Num;
|
|
@@ -851,6 +894,18 @@ export declare class Transaction extends Transaction_base {
|
|
|
851
894
|
* ```
|
|
852
895
|
*/
|
|
853
896
|
setWitnessArgsAt(index: number, witness: WitnessArgs): void;
|
|
897
|
+
/**
|
|
898
|
+
* Set witness at index
|
|
899
|
+
*
|
|
900
|
+
* @param index - The index of the witness.
|
|
901
|
+
* @param witness - The witness to set.
|
|
902
|
+
*
|
|
903
|
+
* @example
|
|
904
|
+
* ```typescript
|
|
905
|
+
* await tx.setWitnessAt(0, witness);
|
|
906
|
+
* ```
|
|
907
|
+
*/
|
|
908
|
+
setWitnessAt(index: number, witness: HexLike): void;
|
|
854
909
|
/**
|
|
855
910
|
* Prepare dummy witness for sighash all method
|
|
856
911
|
*
|
|
@@ -865,6 +920,7 @@ export declare class Transaction extends Transaction_base {
|
|
|
865
920
|
* ```
|
|
866
921
|
*/
|
|
867
922
|
prepareSighashAllWitness(scriptLike: ScriptLike, lockLen: number, client: Client): Promise<void>;
|
|
923
|
+
getInputsCapacityExtra(client: Client): Promise<Num>;
|
|
868
924
|
getInputsCapacity(client: Client): Promise<Num>;
|
|
869
925
|
getOutputsCapacity(): Num;
|
|
870
926
|
getInputsUdtBalance(client: Client, type: ScriptLike): Promise<Num>;
|
|
@@ -878,8 +934,8 @@ export declare class Transaction extends Transaction_base {
|
|
|
878
934
|
completeInputsByUdt(from: Signer, type: ScriptLike, balanceTweak?: NumLike): Promise<number>;
|
|
879
935
|
completeInputsAddOne(from: Signer, filter?: ClientCollectableSearchKeyFilterLike): Promise<number>;
|
|
880
936
|
completeInputsAtLeastOne(from: Signer, filter?: ClientCollectableSearchKeyFilterLike): Promise<number>;
|
|
881
|
-
|
|
882
|
-
|
|
937
|
+
getFee(client: Client): Promise<Num>;
|
|
938
|
+
getFeeRate(client: Client): Promise<Num>;
|
|
883
939
|
estimateFee(feeRate: NumLike): Num;
|
|
884
940
|
completeFee(from: Signer, change: (tx: Transaction, capacity: Num) => Promise<NumLike> | NumLike, expectedFeeRate?: NumLike, filter?: ClientCollectableSearchKeyFilterLike, options?: {
|
|
885
941
|
feeRateBlockRange?: NumLike;
|
|
@@ -889,5 +945,14 @@ export declare class Transaction extends Transaction_base {
|
|
|
889
945
|
completeFeeBy(from: Signer, feeRate?: NumLike, filter?: ClientCollectableSearchKeyFilterLike): Promise<[number, boolean]>;
|
|
890
946
|
completeFeeChangeToOutput(from: Signer, index: NumLike, feeRate?: NumLike, filter?: ClientCollectableSearchKeyFilterLike): Promise<[number, boolean]>;
|
|
891
947
|
}
|
|
948
|
+
/**
|
|
949
|
+
* Calculate Nervos DAO profit between two blocks
|
|
950
|
+
*/
|
|
951
|
+
export declare function calcDaoProfit(profitableCapacity: NumLike, depositHeaderLike: ClientBlockHeaderLike, withdrawHeaderLike: ClientBlockHeaderLike): Num;
|
|
952
|
+
/**
|
|
953
|
+
* Calculate claimable epoch for Nervos DAO withdrawal
|
|
954
|
+
* See https://github.com/nervosnetwork/rfcs/blob/master/rfcs/0023-dao-deposit-withdraw/0023-dao-deposit-withdraw.md
|
|
955
|
+
*/
|
|
956
|
+
export declare function calcDaoClaimEpoch(depositHeader: ClientBlockHeaderLike, withdrawHeader: ClientBlockHeaderLike): Epoch;
|
|
892
957
|
export {};
|
|
893
958
|
//# 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":"AAAA,OAAO,EAAE,KAAK,EAAE,SAAS,EAAa,MAAM,mBAAmB,CAAC;AAChE,OAAO,KAAK,EAAE,oCAAoC,EAAE,MAAM,mCAAmC,CAAC;AAC9F,OAAO,EACL,iBAAiB,EACjB,KAAK,eAAe,EACpB,KAAK,MAAM,EACX,KAAK,qBAAqB,EAC3B,MAAM,oBAAoB,CAAC;AAC5B,OAAO,EAAE,WAAW,EAAE,MAAM,0BAA0B,CAAC;AAMvD,OAAO,EAAE,MAAM,EAAsB,MAAM,oBAAoB,CAAC;AAChE,OAAO,EAAE,GAAG,EAAE,OAAO,EAAW,MAAM,iBAAiB,CAAC;AACxD,OAAO,EAAE,GAAG,EAAE,MAAM,sBAAsB,CAAC;AAC3C,OAAO,EACL,GAAG,EACH,OAAO,EAKR,MAAM,iBAAiB,CAAC;AACzB,OAAO,KAAK,EAAE,MAAM,EAAE,MAAM,oBAAoB,CAAC;AAEjD,OAAO,EAAE,MAAM,EAAE,UAAU,EAAa,MAAM,aAAa,CAAC;AAE5D,OAAO,KAAK,EAAE,4BAA4B,EAAE,MAAM,uBAAuB,CAAC;AAE1E,eAAO,MAAM,YAAY,EAAE,GAAG,CAAC,KAAK,CAAC,WAAW,EAAE,OAAO,CAIvD,CAAC;AAEH;;GAEG;AACH,MAAM,MAAM,WAAW,GAAG,MAAM,GAAG,MAAM,GAAG,MAAM,CAAC;AACnD;;GAEG;AACH,MAAM,MAAM,OAAO,GAAG,UAAU,GAAG,MAAM,CAAC;AAE1C;;;;;;;;;;;;;;GAcG;AAEH,wBAAgB,WAAW,CAAC,GAAG,EAAE,WAAW,GAAG,OAAO,CAgBrD;AAED;;;;;;;;;;;GAWG;AAEH,wBAAgB,cAAc,CAAC,OAAO,EAAE,WAAW,GAAG,KAAK,CAE1D;AAED;;;;;;;;;;;;;GAaG;AAEH,wBAAgB,gBAAgB,CAAC,KAAK,EAAE,SAAS,GAAG,OAAO,CAE1D;AAED;;GAEG;AACH,MAAM,MAAM,YAAY,GAAG;IACzB,MAAM,EAAE,OAAO,CAAC;IAChB,KAAK,EAAE,OAAO,CAAC;CAChB,CAAC;;;;;;;;;;;;;AACF;;GAEG;AACH,qBAMa,QAAS,SAAQ,aAAyC;IAS5D,MAAM,EAAE,GAAG;IACX,KAAK,EAAE,GAAG;IATnB;;;;;OAKG;gBAGM,MAAM,EAAE,GAAG,EACX,KAAK,EAAE,GAAG;IAKnB;;;;;;;;;;OAUG;IACH,MAAM,CAAC,IAAI,CAAC,QAAQ,EAAE,YAAY,GAAG,QAAQ;CAM9C;AAED;;GAEG;AACH,MAAM,MAAM,cAAc,GAAG;IAC3B,QAAQ,EAAE,OAAO,CAAC;IAClB,IAAI,EAAE,UAAU,CAAC;IACjB,IAAI,CAAC,EAAE,UAAU,GAAG,IAAI,CAAC;CAC1B,CAAC;;;;;;;;;;;;;AACF;;GAEG;AACH,qBAOa,UAAW,SAAQ,eAA6C;IAUlE,QAAQ,EAAE,GAAG;IACb,IAAI,EAAE,MAAM;IACZ,IAAI,CAAC,EAAE,MAAM;IAXtB;;;;;;OAMG;gBAGM,QAAQ,EAAE,GAAG,EACb,IAAI,EAAE,MAAM,EACZ,IAAI,CAAC,EAAE,MAAM,YAAA;IAKtB,IAAI,YAAY,IAAI,MAAM,CAEzB;IAED;;;;;;;;;;;;;;OAcG;IACH,MAAM,CAAC,IAAI,CAAC,UAAU,EAAE,cAAc,GAAG,UAAU;CAWpD;AACD,eAAO,MAAM,aAAa,2CAAyB,CAAC;AAEpD;;GAEG;AACH,MAAM,MAAM,QAAQ,GAAG,CACnB;IACE,QAAQ,EAAE,YAAY,CAAC;CACxB,GACD;IAAE,cAAc,EAAE,YAAY,CAAA;CAAE,CACnC,GAAG;IACF,UAAU,EAAE,cAAc,CAAC;IAC3B,UAAU,EAAE,OAAO,CAAC;CACrB,CAAC;AACF;;GAEG;AACH,qBAAa,IAAI;IAUN,QAAQ,EAAE,QAAQ;IAClB,UAAU,EAAE,UAAU;IACtB,UAAU,EAAE,GAAG;IAXxB;;;;;;OAMG;gBAGM,QAAQ,EAAE,QAAQ,EAClB,UAAU,EAAE,UAAU,EACtB,UAAU,EAAE,GAAG;IAGxB;;;;;OAKG;IAEH,MAAM,CAAC,IAAI,CAAC,IAAI,EAAE,QAAQ,GAAG,IAAI;IAYjC,IAAI,YAAY,WAKf;IAED;;;OAGG;IACH,IAAI,YAAY,WAEf;IAED;;;;;;;;;;;;OAYG;IACG,YAAY,CAAC,MAAM,EAAE,MAAM,GAAG,OAAO,CAAC,GAAG,CAAC;IAgB1C,WAAW,CACf,MAAM,EAAE,MAAM,EACd,KAAK,CAAC,EAAE,WAAW,GAAG,UAAU,GAC/B,OAAO,CAAC,OAAO,CAAC;IAqBb,gBAAgB,CAAC,MAAM,EAAE,MAAM,GAAG,OAAO,CAE3C;QACE,aAAa,CAAC,EAAE,SAAS,CAAC;QAC1B,cAAc,CAAC,EAAE,SAAS,CAAC;KAC5B,GAED;QACE,aAAa,EAAE,iBAAiB,CAAC;QACjC,cAAc,CAAC,EAAE,SAAS,CAAC;KAC5B,GAED;QACE,aAAa,EAAE,iBAAiB,CAAC;QACjC,cAAc,EAAE,iBAAiB,CAAC;KACnC,CACJ;IAqCD;;;;;;;;;OASG;IACH,KAAK,IAAI,IAAI;CAOd;AAED;;GAEG;AACH,MAAM,MAAM,SAAS,GAAG,CAAC,OAAO,EAAE,OAAO,EAAE,OAAO,CAAC,CAAC;AACpD;;GAEG;AACH,MAAM,MAAM,KAAK,GAAG,CAAC,GAAG,EAAE,GAAG,EAAE,GAAG,CAAC,CAAC;AACpC;;GAEG;AACH,wBAAgB,SAAS,CAAC,SAAS,EAAE,SAAS,GAAG,KAAK,CAErD;AACD;;GAEG;AACH,wBAAgB,YAAY,CAAC,GAAG,EAAE,OAAO,GAAG,KAAK,CAQhD;AACD;;GAEG;AACH,wBAAgB,UAAU,CAAC,SAAS,EAAE,SAAS,GAAG,GAAG,CAQpD;AAED;;GAEG;AACH,MAAM,MAAM,SAAS,GACjB;IACE,QAAQ,EAAE,UAAU,GAAG,UAAU,CAAC;IAClC,MAAM,EAAE,aAAa,GAAG,OAAO,GAAG,WAAW,CAAC;IAC9C,KAAK,EAAE,OAAO,CAAC;CAChB,GACD,OAAO,CAAC;;;;;;;;;;;;;AACZ;;GAEG;AACH,qBAGa,KAAM,SAAQ,UAAmC;IAUnD,QAAQ,EAAE,UAAU,GAAG,UAAU;IACjC,MAAM,EAAE,aAAa,GAAG,OAAO,GAAG,WAAW;IAC7C,KAAK,EAAE,GAAG;IAXnB;;;;;;OAMG;gBAGM,QAAQ,EAAE,UAAU,GAAG,UAAU,EACjC,MAAM,EAAE,aAAa,GAAG,OAAO,GAAG,WAAW,EAC7C,KAAK,EAAE,GAAG;IAKnB;;;;;;;;;OASG;IACH,KAAK,IAAI,KAAK;IAId;;;;;;;;;;OAUG;IACH,MAAM,CAAC,IAAI,CAAC,KAAK,EAAE,SAAS,GAAG,KAAK;IAYpC;;;;;;;;;OASG;IAEH,KAAK,IAAI,GAAG;IAYZ;;;;;;;;;;OAUG;IAEH,MAAM,CAAC,OAAO,CAAC,OAAO,EAAE,OAAO,GAAG,KAAK;CAWxC;AAED;;GAEG;AACH,MAAM,MAAM,aAAa,GAAG,CACxB;IACE,cAAc,EAAE,YAAY,CAAC;CAC9B,GACD;IAAE,QAAQ,EAAE,YAAY,CAAA;CAAE,CAC7B,GAAG;IACF,KAAK,CAAC,EAAE,SAAS,GAAG,OAAO,GAAG,IAAI,CAAC;IACnC,UAAU,CAAC,EAAE,cAAc,GAAG,IAAI,CAAC;IACnC,UAAU,CAAC,EAAE,OAAO,GAAG,IAAI,CAAC;CAC7B,CAAC;;;;;;;;;;;;;AACF;;GAEG;AACH,qBAQa,SAAU,SAAQ,cAA2C;IAW/D,cAAc,EAAE,QAAQ;IACxB,KAAK,EAAE,GAAG;IACV,UAAU,CAAC,EAAE,UAAU;IACvB,UAAU,CAAC,EAAE,GAAG;IAbzB;;;;;;;OAOG;gBAGM,cAAc,EAAE,QAAQ,EACxB,KAAK,EAAE,GAAG,EACV,UAAU,CAAC,EAAE,UAAU,YAAA,EACvB,UAAU,CAAC,EAAE,GAAG,YAAA;IAKzB;;;;;;;;;;;;;OAaG;IACH,MAAM,CAAC,IAAI,CAAC,SAAS,EAAE,aAAa,GAAG,SAAS;IAiB1C,OAAO,CAAC,MAAM,EAAE,MAAM,GAAG,OAAO,CAAC,IAAI,CAAC;IAa5C;;;;;;;;;;;OAWG;IACG,kBAAkB,CAAC,MAAM,EAAE,MAAM,GAAG,OAAO,CAAC,IAAI,CAAC;IAcvD;;;;OAIG;IACG,gBAAgB,CAAC,MAAM,EAAE,MAAM,GAAG,OAAO,CAAC,GAAG,CAAC;IAIpD,KAAK,IAAI,SAAS;CAOnB;AACD,eAAO,MAAM,YAAY,yCAAwB,CAAC;AAElD;;GAEG;AACH,MAAM,MAAM,WAAW,GAAG;IACxB,QAAQ,EAAE,YAAY,CAAC;IACvB,OAAO,EAAE,WAAW,CAAC;CACtB,CAAC;;;;;;;;;;;;;AACF;;GAEG;AACH,qBAMa,OAAQ,SAAQ,YAAuC;IASzD,QAAQ,EAAE,QAAQ;IAClB,OAAO,EAAE,OAAO;IATzB;;;;;OAKG;gBAGM,QAAQ,EAAE,QAAQ,EAClB,OAAO,EAAE,OAAO;IAKzB;;;;;;;;;OASG;IAEH,KAAK,IAAI,OAAO;IAIhB;;;;;;;;;;;;;OAaG;IAEH,MAAM,CAAC,IAAI,CAAC,OAAO,EAAE,WAAW,GAAG,OAAO;CAU3C;AACD,eAAO,MAAM,UAAU,qCAAsB,CAAC;AAE9C;;GAEG;AACH,MAAM,MAAM,eAAe,GAAG;IAC5B,IAAI,CAAC,EAAE,OAAO,GAAG,IAAI,CAAC;IACtB,SAAS,CAAC,EAAE,OAAO,GAAG,IAAI,CAAC;IAC3B,UAAU,CAAC,EAAE,OAAO,GAAG,IAAI,CAAC;CAC7B,CAAC;;;;;;;;;;;;;AACF;;GAEG;AACH,qBAOa,WAAY,SAAQ,gBAG9B;IAUQ,IAAI,CAAC,EAAE,GAAG;IACV,SAAS,CAAC,EAAE,GAAG;IACf,UAAU,CAAC,EAAE,GAAG;IAXzB;;;;;;OAMG;gBAGM,IAAI,CAAC,EAAE,GAAG,YAAA,EACV,SAAS,CAAC,EAAE,GAAG,YAAA,EACf,UAAU,CAAC,EAAE,GAAG,YAAA;IAKzB;;;;;;;;;;;;;;OAcG;IAEH,MAAM,CAAC,IAAI,CAAC,WAAW,EAAE,eAAe,GAAG,WAAW;CAWvD;AAED;;;;GAIG;AACH,wBAAgB,cAAc,CAAC,QAAQ,EAAE,SAAS,GAAG,GAAG,CAGvD;AAED,eAAO,MAAM,cAAc;;;;;;;;;;;;;;GAOzB,CAAC;AAEH;;GAEG;AACH,MAAM,MAAM,eAAe,GAAG;IAC5B,OAAO,CAAC,EAAE,OAAO,GAAG,IAAI,CAAC;IACzB,QAAQ,CAAC,EAAE,WAAW,EAAE,GAAG,IAAI,CAAC;IAChC,UAAU,CAAC,EAAE,OAAO,EAAE,GAAG,IAAI,CAAC;IAC9B,MAAM,CAAC,EAAE,aAAa,EAAE,GAAG,IAAI,CAAC;IAChC,OAAO,CAAC,EACJ,CAAC,IAAI,CAAC,cAAc,EAAE,UAAU,CAAC,GAC/B,OAAO,CAAC,IAAI,CAAC,cAAc,EAAE,UAAU,CAAC,CAAC,CAAC,EAAE,GAC9C,IAAI,CAAC;IACT,WAAW,CAAC,EAAE,OAAO,EAAE,GAAG,IAAI,CAAC;IAC/B,SAAS,CAAC,EAAE,OAAO,EAAE,GAAG,IAAI,CAAC;CAC9B,CAAC;;;;;;;;;;;;;AACF;;GAEG;AACH,qBAea,WAAY,SAAQ,gBAG9B;IAcQ,OAAO,EAAE,GAAG;IACZ,QAAQ,EAAE,OAAO,EAAE;IACnB,UAAU,EAAE,GAAG,EAAE;IACjB,MAAM,EAAE,SAAS,EAAE;IACnB,OAAO,EAAE,UAAU,EAAE;IACrB,WAAW,EAAE,GAAG,EAAE;IAClB,SAAS,EAAE,GAAG,EAAE;IAnBzB;;;;;;;;;;OAUG;gBAGM,OAAO,EAAE,GAAG,EACZ,QAAQ,EAAE,OAAO,EAAE,EACnB,UAAU,EAAE,GAAG,EAAE,EACjB,MAAM,EAAE,SAAS,EAAE,EACnB,OAAO,EAAE,UAAU,EAAE,EACrB,WAAW,EAAE,GAAG,EAAE,EAClB,SAAS,EAAE,GAAG,EAAE;IAKzB;;;;;;;;;OASG;IACH,MAAM,CAAC,OAAO,IAAI,WAAW;IAI7B;;;;;;;OAOG;IACH,IAAI,CAAC,MAAM,EAAE,eAAe;IAW5B;;;;;;;;;;;;;;;;;;OAkBG;IAEH,MAAM,CAAC,IAAI,CAAC,EAAE,EAAE,eAAe,GAAG,WAAW;IAsC7C;;;;;;;;;;;;OAYG;IAEH,MAAM,CAAC,iBAAiB,CACtB,QAAQ,EAAE,4BAA4B,GACrC,WAAW;IAuBd;;;;OAIG;IACH,SAAS,IAAI,MAAM;IAUnB;;;;;;;;;OASG;IACH,UAAU,IAAI,KAAK;IAInB;;;;;;;;;;OAUG;IACH,IAAI,IAAI,GAAG;IAIX;;;;;;;;;OASG;IACH,QAAQ,IAAI,GAAG;IAIf;;;;;;;;;;OAUG;IAEH,MAAM,CAAC,mBAAmB,CAAC,OAAO,EAAE,OAAO,EAAE,MAAM,EAAE,MAAM;IAM3D;;;;;;;;;;;;;;;;OAgBG;IACG,eAAe,CACnB,UAAU,EAAE,UAAU,EACtB,MAAM,EAAE,MAAM,EACd,MAAM,GAAE,MAAwB,GAC/B,OAAO,CAAC;QAAE,OAAO,EAAE,GAAG,CAAC;QAAC,QAAQ,EAAE,MAAM,CAAA;KAAE,GAAG,SAAS,CAAC;IAoC1D;;;;;;;;;;;OAWG;IACG,sBAAsB,CAC1B,YAAY,EAAE,IAAI,CAAC,UAAU,EAAE,UAAU,GAAG,UAAU,CAAC,EACvD,MAAM,EAAE,MAAM,GACb,OAAO,CAAC,MAAM,GAAG,SAAS,CAAC;IAe9B;;;;;;;;;;;OAWG;IACG,oBAAoB,CACxB,UAAU,EAAE,UAAU,EACtB,MAAM,EAAE,MAAM,GACb,OAAO,CAAC,MAAM,GAAG,SAAS,CAAC;IAY9B;;;;;;;;;;;OAWG;IACG,wBAAwB,CAC5B,UAAU,EAAE,UAAU,EACtB,MAAM,EAAE,MAAM,GACb,OAAO,CAAC,MAAM,GAAG,SAAS,CAAC;IAY9B;;;;;;;;;OASG;IACH,WAAW,CAAC,GAAG,YAAY,EAAE,CAAC,WAAW,GAAG,WAAW,EAAE,CAAC,EAAE,GAAG,IAAI;IAWnE;;;;;;;;;OASG;IACH,kBAAkB,CAAC,GAAG,YAAY,EAAE,CAAC,WAAW,GAAG,WAAW,EAAE,CAAC,EAAE,GAAG,IAAI;IAW1E;;;;;;;;;;OAUG;IACG,eAAe,CACnB,MAAM,EAAE,MAAM,EACd,GAAG,gBAAgB,EAAE,CAAC,eAAe,GAAG,eAAe,EAAE,CAAC,EAAE,GAC3D,OAAO,CAAC,IAAI,CAAC;IAIhB;;;;;;;;;;OAUG;IACG,yBAAyB,CAC7B,MAAM,EAAE,MAAM,EACd,GAAG,OAAO,EAAE,CAAC,WAAW,GAAG,WAAW,EAAE,CAAC,EAAE,GAC1C,OAAO,CAAC,IAAI,CAAC;IAahB;;;;;;;;;;OAUG;IACH,eAAe,CAAC,KAAK,EAAE,MAAM,EAAE,OAAO,EAAE,OAAO,GAAG,IAAI;IAatD;;;;;;;;;OASG;IACH,QAAQ,CAAC,KAAK,EAAE,OAAO,GAAG,SAAS,GAAG,SAAS;IAG/C;;;;;;;;;OASG;IACH,QAAQ,CAAC,SAAS,EAAE,aAAa,GAAG,MAAM;IAQ1C;;;;;;;;;OASG;IACH,SAAS,CAAC,KAAK,EAAE,OAAO,GACpB;QACE,UAAU,EAAE,UAAU,CAAC;QACvB,UAAU,EAAE,GAAG,CAAC;KACjB,GACD,SAAS;IAUb;;;;;;;;;;OAUG;IACH,SAAS,CACP,UAAU,EAAE,IAAI,CAAC,cAAc,EAAE,UAAU,CAAC,GAC1C,OAAO,CAAC,IAAI,CAAC,cAAc,EAAE,UAAU,CAAC,CAAC,EAC3C,UAAU,GAAE,OAAc,GACzB,MAAM;IAgBT;;;;;;;;;;OAUG;IACH,gBAAgB,CAAC,KAAK,EAAE,MAAM,GAAG,WAAW,GAAG,SAAS;IAOxD;;;;;;;;;;OAUG;IACH,gBAAgB,CAAC,KAAK,EAAE,MAAM,EAAE,OAAO,EAAE,WAAW,GAAG,IAAI;IAI3D;;;;;;;;;;OAUG;IACH,YAAY,CAAC,KAAK,EAAE,MAAM,EAAE,OAAO,EAAE,OAAO,GAAG,IAAI;IAanD;;;;;;;;;;;;OAYG;IACG,wBAAwB,CAC5B,UAAU,EAAE,UAAU,EACtB,OAAO,EAAE,MAAM,EACf,MAAM,EAAE,MAAM,GACb,OAAO,CAAC,IAAI,CAAC;IAWV,sBAAsB,CAAC,MAAM,EAAE,MAAM,GAAG,OAAO,CAAC,GAAG,CAAC;IASpD,iBAAiB,CAAC,MAAM,EAAE,MAAM,GAAG,OAAO,CAAC,GAAG,CAAC;IAgBrD,kBAAkB,IAAI,GAAG;IAOnB,mBAAmB,CAAC,MAAM,EAAE,MAAM,EAAE,IAAI,EAAE,UAAU,GAAG,OAAO,CAAC,GAAG,CAAC;IAezE,oBAAoB,CAAC,IAAI,EAAE,UAAU,GAAG,GAAG;IAUrC,cAAc,CAAC,CAAC,EACpB,IAAI,EAAE,MAAM,EACZ,MAAM,EAAE,oCAAoC,EAC5C,WAAW,EAAE,CACX,GAAG,EAAE,CAAC,EACN,CAAC,EAAE,IAAI,EACP,CAAC,EAAE,MAAM,EACT,KAAK,EAAE,IAAI,EAAE,KACV,OAAO,CAAC,CAAC,GAAG,SAAS,CAAC,GAAG,CAAC,GAAG,SAAS,EAC3C,IAAI,EAAE,CAAC,GACN,OAAO,CAAC;QACT,UAAU,EAAE,MAAM,CAAC;QACnB,WAAW,CAAC,EAAE,CAAC,CAAC;KACjB,CAAC;IAqCI,wBAAwB,CAC5B,IAAI,EAAE,MAAM,EACZ,aAAa,CAAC,EAAE,OAAO,EACvB,MAAM,CAAC,EAAE,oCAAoC,GAC5C,OAAO,CAAC,MAAM,CAAC;IA8BZ,iBAAiB,CACrB,IAAI,EAAE,MAAM,EACZ,MAAM,CAAC,EAAE,oCAAoC,GAC5C,OAAO,CAAC,MAAM,CAAC;IAcZ,mBAAmB,CACvB,IAAI,EAAE,MAAM,EACZ,IAAI,EAAE,UAAU,EAChB,YAAY,CAAC,EAAE,OAAO,GACrB,OAAO,CAAC,MAAM,CAAC;IA+BZ,oBAAoB,CACxB,IAAI,EAAE,MAAM,EACZ,MAAM,CAAC,EAAE,oCAAoC,GAC5C,OAAO,CAAC,MAAM,CAAC;IAkBZ,wBAAwB,CAC5B,IAAI,EAAE,MAAM,EACZ,MAAM,CAAC,EAAE,oCAAoC,GAC5C,OAAO,CAAC,MAAM,CAAC;IAQZ,MAAM,CAAC,MAAM,EAAE,MAAM,GAAG,OAAO,CAAC,GAAG,CAAC;IAIpC,UAAU,CAAC,MAAM,EAAE,MAAM,GAAG,OAAO,CAAC,GAAG,CAAC;IAO9C,WAAW,CAAC,OAAO,EAAE,OAAO,GAAG,GAAG;IAM5B,WAAW,CACf,IAAI,EAAE,MAAM,EACZ,MAAM,EAAE,CAAC,EAAE,EAAE,WAAW,EAAE,QAAQ,EAAE,GAAG,KAAK,OAAO,CAAC,OAAO,CAAC,GAAG,OAAO,EACtE,eAAe,CAAC,EAAE,OAAO,EACzB,MAAM,CAAC,EAAE,oCAAoC,EAC7C,OAAO,CAAC,EAAE;QAAE,iBAAiB,CAAC,EAAE,OAAO,CAAC;QAAC,UAAU,CAAC,EAAE,OAAO,CAAA;KAAE,GAC9D,OAAO,CAAC,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC;IAuE7B,uBAAuB,CACrB,IAAI,EAAE,MAAM,EACZ,MAAM,EAAE,UAAU,EAClB,OAAO,CAAC,EAAE,OAAO,EACjB,MAAM,CAAC,EAAE,oCAAoC,GAC5C,OAAO,CAAC,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC;IAoBvB,aAAa,CACjB,IAAI,EAAE,MAAM,EACZ,OAAO,CAAC,EAAE,OAAO,EACjB,MAAM,CAAC,EAAE,oCAAoC,GAC5C,OAAO,CAAC,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC;IAM7B,yBAAyB,CACvB,IAAI,EAAE,MAAM,EACZ,KAAK,EAAE,OAAO,EACd,OAAO,CAAC,EAAE,OAAO,EACjB,MAAM,CAAC,EAAE,oCAAoC,GAC5C,OAAO,CAAC,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC;CAe9B;AAED;;GAEG;AACH,wBAAgB,aAAa,CAC3B,kBAAkB,EAAE,OAAO,EAC3B,iBAAiB,EAAE,qBAAqB,EACxC,kBAAkB,EAAE,qBAAqB,GACxC,GAAG,CAUL;AAED;;;GAGG;AACH,wBAAgB,iBAAiB,CAC/B,aAAa,EAAE,qBAAqB,EACpC,cAAc,EAAE,qBAAqB,GACpC,KAAK,CAuBP"}
|
package/dist/ckb/transaction.js
CHANGED
|
@@ -6,6 +6,8 @@ var __decorate = (this && this.__decorate) || function (decorators, target, key,
|
|
|
6
6
|
};
|
|
7
7
|
var OutPoint_1, CellOutput_1, Since_1, CellInput_1, CellDep_1, WitnessArgs_1, Transaction_1;
|
|
8
8
|
import { bytesFrom } from "../bytes/index.js";
|
|
9
|
+
import { ClientBlockHeader, } from "../client/index.js";
|
|
10
|
+
import { KnownScript } from "../client/knownScript.js";
|
|
9
11
|
import { Zero, fixedPointFrom, fixedPointToString, } from "../fixedPoint/index.js";
|
|
10
12
|
import { HasherCkb, hashCkb } from "../hasher/index.js";
|
|
11
13
|
import { hexFrom } from "../hex/index.js";
|
|
@@ -200,6 +202,82 @@ export class Cell {
|
|
|
200
202
|
}
|
|
201
203
|
return new Cell(OutPoint.from("outPoint" in cell ? cell.outPoint : cell.previousOutput), CellOutput.from(cell.cellOutput), hexFrom(cell.outputData));
|
|
202
204
|
}
|
|
205
|
+
get capacityFree() {
|
|
206
|
+
const occupiedSize = fixedPointFrom(this.cellOutput.occupiedSize + bytesFrom(this.outputData).length);
|
|
207
|
+
return this.cellOutput.capacity - occupiedSize;
|
|
208
|
+
}
|
|
209
|
+
/**
|
|
210
|
+
* Occupied bytes of a cell on chain
|
|
211
|
+
* It's CellOutput.occupiedSize + bytesFrom(outputData).byteLength
|
|
212
|
+
*/
|
|
213
|
+
get occupiedSize() {
|
|
214
|
+
return this.cellOutput.occupiedSize + bytesFrom(this.outputData).byteLength;
|
|
215
|
+
}
|
|
216
|
+
/**
|
|
217
|
+
* Gets confirmed Nervos DAO profit of a Cell
|
|
218
|
+
* It returns non-zero value only when the cell is in withdrawal phase 2
|
|
219
|
+
* See https://github.com/nervosnetwork/rfcs/blob/master/rfcs/0023-dao-deposit-withdraw/0023-dao-deposit-withdraw.md
|
|
220
|
+
*
|
|
221
|
+
* @param client - A client for searching DAO related headers
|
|
222
|
+
* @returns Profit
|
|
223
|
+
*
|
|
224
|
+
* @example
|
|
225
|
+
* ```typescript
|
|
226
|
+
* const profit = await cell.getDaoProfit(client);
|
|
227
|
+
* ```
|
|
228
|
+
*/
|
|
229
|
+
async getDaoProfit(client) {
|
|
230
|
+
if (!(await this.isNervosDao(client, "withdrew"))) {
|
|
231
|
+
return Zero;
|
|
232
|
+
}
|
|
233
|
+
const { depositHeader, withdrawHeader } = await this.getNervosDaoInfo(client);
|
|
234
|
+
if (!withdrawHeader || !depositHeader) {
|
|
235
|
+
throw new Error(`Unable to get headers of a Nervos DAO cell ${this.outPoint.txHash}:${this.outPoint.index.toString()}`);
|
|
236
|
+
}
|
|
237
|
+
return calcDaoProfit(this.capacityFree, depositHeader, withdrawHeader);
|
|
238
|
+
}
|
|
239
|
+
async isNervosDao(client, phase) {
|
|
240
|
+
const { type } = this.cellOutput;
|
|
241
|
+
const daoType = await client.getKnownScript(KnownScript.NervosDao);
|
|
242
|
+
if (!type ||
|
|
243
|
+
type.codeHash !== daoType.codeHash ||
|
|
244
|
+
type.hashType !== daoType.hashType) {
|
|
245
|
+
// Non Nervos DAO cell
|
|
246
|
+
return false;
|
|
247
|
+
}
|
|
248
|
+
const hasWithdrew = numFrom(this.outputData) !== Zero;
|
|
249
|
+
return (!phase ||
|
|
250
|
+
(phase === "deposited" && !hasWithdrew) ||
|
|
251
|
+
(phase === "withdrew" && hasWithdrew));
|
|
252
|
+
}
|
|
253
|
+
async getNervosDaoInfo(client) {
|
|
254
|
+
if (!(await this.isNervosDao(client))) {
|
|
255
|
+
// Non Nervos DAO cell
|
|
256
|
+
return {};
|
|
257
|
+
}
|
|
258
|
+
if (numFrom(this.outputData) === Zero) {
|
|
259
|
+
// Deposited Nervos DAO cell
|
|
260
|
+
const depositRes = await client.getCellWithHeader(this.outPoint);
|
|
261
|
+
if (!depositRes?.header) {
|
|
262
|
+
throw new Error(`Unable to get header of a Nervos DAO deposited cell ${this.outPoint.txHash}:${this.outPoint.index.toString()}`);
|
|
263
|
+
}
|
|
264
|
+
return {
|
|
265
|
+
depositHeader: depositRes.header,
|
|
266
|
+
};
|
|
267
|
+
}
|
|
268
|
+
// Withdrew Nervos DAO cell
|
|
269
|
+
const [depositHeader, withdrawRes] = await Promise.all([
|
|
270
|
+
client.getHeaderByNumber(numFromBytes(this.outputData)),
|
|
271
|
+
client.getCellWithHeader(this.outPoint),
|
|
272
|
+
]);
|
|
273
|
+
if (!withdrawRes?.header || !depositHeader) {
|
|
274
|
+
throw new Error(`Unable to get headers of a Nervos DAO withdrew cell ${this.outPoint.txHash}:${this.outPoint.index.toString()}`);
|
|
275
|
+
}
|
|
276
|
+
return {
|
|
277
|
+
depositHeader,
|
|
278
|
+
withdrawHeader: withdrawRes.header,
|
|
279
|
+
};
|
|
280
|
+
}
|
|
203
281
|
/**
|
|
204
282
|
* Clone a Cell
|
|
205
283
|
*
|
|
@@ -373,14 +451,27 @@ let CellInput = CellInput_1 = class CellInput extends mol.Entity.Base() {
|
|
|
373
451
|
? cellInput.previousOutput
|
|
374
452
|
: cellInput.outPoint), Since.from(cellInput.since ?? 0).toNum(), apply(CellOutput.from, cellInput.cellOutput), apply(hexFrom, cellInput.outputData));
|
|
375
453
|
}
|
|
454
|
+
async getCell(client) {
|
|
455
|
+
await this.completeExtraInfos(client);
|
|
456
|
+
if (!this.cellOutput || !this.outputData) {
|
|
457
|
+
throw new Error("Unable to complete input");
|
|
458
|
+
}
|
|
459
|
+
return Cell.from({
|
|
460
|
+
outPoint: this.previousOutput,
|
|
461
|
+
cellOutput: this.cellOutput,
|
|
462
|
+
outputData: this.outputData,
|
|
463
|
+
});
|
|
464
|
+
}
|
|
376
465
|
/**
|
|
377
|
-
* Complete extra infos in the input.
|
|
466
|
+
* Complete extra infos in the input. Including
|
|
467
|
+
* - Previous cell output
|
|
468
|
+
* - Previous cell data
|
|
378
469
|
* The instance will be modified.
|
|
379
470
|
*
|
|
380
471
|
* @returns true if succeed.
|
|
381
472
|
* @example
|
|
382
473
|
* ```typescript
|
|
383
|
-
* await cellInput.completeExtraInfos();
|
|
474
|
+
* await cellInput.completeExtraInfos(client);
|
|
384
475
|
* ```
|
|
385
476
|
*/
|
|
386
477
|
async completeExtraInfos(client) {
|
|
@@ -394,6 +485,14 @@ let CellInput = CellInput_1 = class CellInput extends mol.Entity.Base() {
|
|
|
394
485
|
this.cellOutput = cell.cellOutput;
|
|
395
486
|
this.outputData = cell.outputData;
|
|
396
487
|
}
|
|
488
|
+
/**
|
|
489
|
+
* The extra capacity created when consume this input.
|
|
490
|
+
* This is usually NervosDAO interest, see https://github.com/nervosnetwork/rfcs/blob/master/rfcs/0023-dao-deposit-withdraw/0023-dao-deposit-withdraw.md.
|
|
491
|
+
* And it can also be miners' income. (But this is not implemented yet)
|
|
492
|
+
*/
|
|
493
|
+
async getExtraCapacity(client) {
|
|
494
|
+
return (await this.getCell(client)).getDaoProfit(client);
|
|
495
|
+
}
|
|
397
496
|
clone() {
|
|
398
497
|
const cloned = super.clone();
|
|
399
498
|
cloned.cellOutput = this.cellOutput;
|
|
@@ -516,11 +615,13 @@ WitnessArgs = WitnessArgs_1 = __decorate([
|
|
|
516
615
|
], WitnessArgs);
|
|
517
616
|
export { WitnessArgs };
|
|
518
617
|
/**
|
|
618
|
+
* Convert a bytes to a num.
|
|
619
|
+
*
|
|
519
620
|
* @public
|
|
520
621
|
*/
|
|
521
622
|
export function udtBalanceFrom(dataLike) {
|
|
522
623
|
const data = bytesFrom(dataLike).slice(0, 16);
|
|
523
|
-
return numFromBytes(data);
|
|
624
|
+
return data.length === 0 ? Zero : numFromBytes(data);
|
|
524
625
|
}
|
|
525
626
|
export const RawTransaction = mol.table({
|
|
526
627
|
version: mol.Uint32,
|
|
@@ -754,11 +855,8 @@ let Transaction = Transaction_1 = class Transaction extends mol.Entity.Base() {
|
|
|
754
855
|
for (let i = 0; i < this.witnesses.length; i += 1) {
|
|
755
856
|
const input = this.inputs[i];
|
|
756
857
|
if (input) {
|
|
757
|
-
await input.
|
|
758
|
-
if (!
|
|
759
|
-
throw new Error("Unable to complete input");
|
|
760
|
-
}
|
|
761
|
-
if (!script.eq(input.cellOutput.lock)) {
|
|
858
|
+
const { cellOutput } = await input.getCell(client);
|
|
859
|
+
if (!script.eq(cellOutput.lock)) {
|
|
762
860
|
continue;
|
|
763
861
|
}
|
|
764
862
|
if (position === -1) {
|
|
@@ -793,13 +891,9 @@ let Transaction = Transaction_1 = class Transaction extends mol.Entity.Base() {
|
|
|
793
891
|
async findInputIndexByLockId(scriptIdLike, client) {
|
|
794
892
|
const script = Script.from({ ...scriptIdLike, args: "0x" });
|
|
795
893
|
for (let i = 0; i < this.inputs.length; i += 1) {
|
|
796
|
-
const
|
|
797
|
-
|
|
798
|
-
|
|
799
|
-
throw new Error("Unable to complete input");
|
|
800
|
-
}
|
|
801
|
-
if (script.codeHash === input.cellOutput.lock.codeHash &&
|
|
802
|
-
script.hashType === input.cellOutput.lock.hashType) {
|
|
894
|
+
const { cellOutput } = await this.inputs[i].getCell(client);
|
|
895
|
+
if (script.codeHash === cellOutput.lock.codeHash &&
|
|
896
|
+
script.hashType === cellOutput.lock.hashType) {
|
|
803
897
|
return i;
|
|
804
898
|
}
|
|
805
899
|
}
|
|
@@ -819,12 +913,8 @@ let Transaction = Transaction_1 = class Transaction extends mol.Entity.Base() {
|
|
|
819
913
|
async findInputIndexByLock(scriptLike, client) {
|
|
820
914
|
const script = Script.from(scriptLike);
|
|
821
915
|
for (let i = 0; i < this.inputs.length; i += 1) {
|
|
822
|
-
const
|
|
823
|
-
|
|
824
|
-
if (!input.cellOutput) {
|
|
825
|
-
throw new Error("Unable to complete input");
|
|
826
|
-
}
|
|
827
|
-
if (script.eq(input.cellOutput.lock)) {
|
|
916
|
+
const { cellOutput } = await this.inputs[i].getCell(client);
|
|
917
|
+
if (script.eq(cellOutput.lock)) {
|
|
828
918
|
return i;
|
|
829
919
|
}
|
|
830
920
|
}
|
|
@@ -844,12 +934,8 @@ let Transaction = Transaction_1 = class Transaction extends mol.Entity.Base() {
|
|
|
844
934
|
async findLastInputIndexByLock(scriptLike, client) {
|
|
845
935
|
const script = Script.from(scriptLike);
|
|
846
936
|
for (let i = this.inputs.length - 1; i >= 0; i -= 1) {
|
|
847
|
-
const
|
|
848
|
-
|
|
849
|
-
if (!input.cellOutput) {
|
|
850
|
-
throw new Error("Unable to complete input");
|
|
851
|
-
}
|
|
852
|
-
if (script.eq(input.cellOutput.lock)) {
|
|
937
|
+
const { cellOutput } = await this.inputs[i].getCell(client);
|
|
938
|
+
if (script.eq(cellOutput.lock)) {
|
|
853
939
|
return i;
|
|
854
940
|
}
|
|
855
941
|
}
|
|
@@ -963,6 +1049,9 @@ let Transaction = Transaction_1 = class Transaction extends mol.Entity.Base() {
|
|
|
963
1049
|
* ```
|
|
964
1050
|
*/
|
|
965
1051
|
addInput(inputLike) {
|
|
1052
|
+
if (this.witnesses.length > this.inputs.length) {
|
|
1053
|
+
this.witnesses.splice(this.inputs.length, 0, "0x");
|
|
1054
|
+
}
|
|
966
1055
|
return this.inputs.push(CellInput.from(inputLike));
|
|
967
1056
|
}
|
|
968
1057
|
/**
|
|
@@ -1037,10 +1126,24 @@ let Transaction = Transaction_1 = class Transaction extends mol.Entity.Base() {
|
|
|
1037
1126
|
* ```
|
|
1038
1127
|
*/
|
|
1039
1128
|
setWitnessArgsAt(index, witness) {
|
|
1129
|
+
this.setWitnessAt(index, witness.toBytes());
|
|
1130
|
+
}
|
|
1131
|
+
/**
|
|
1132
|
+
* Set witness at index
|
|
1133
|
+
*
|
|
1134
|
+
* @param index - The index of the witness.
|
|
1135
|
+
* @param witness - The witness to set.
|
|
1136
|
+
*
|
|
1137
|
+
* @example
|
|
1138
|
+
* ```typescript
|
|
1139
|
+
* await tx.setWitnessAt(0, witness);
|
|
1140
|
+
* ```
|
|
1141
|
+
*/
|
|
1142
|
+
setWitnessAt(index, witness) {
|
|
1040
1143
|
if (this.witnesses.length < index) {
|
|
1041
1144
|
this.witnesses.push(...Array.from(new Array(index - this.witnesses.length), () => "0x"));
|
|
1042
1145
|
}
|
|
1043
|
-
this.witnesses[index] = hexFrom(witness
|
|
1146
|
+
this.witnesses[index] = hexFrom(witness);
|
|
1044
1147
|
}
|
|
1045
1148
|
/**
|
|
1046
1149
|
* Prepare dummy witness for sighash all method
|
|
@@ -1064,28 +1167,26 @@ let Transaction = Transaction_1 = class Transaction extends mol.Entity.Base() {
|
|
|
1064
1167
|
witness.lock = hexFrom(Array.from(new Array(lockLen), () => 0));
|
|
1065
1168
|
this.setWitnessArgsAt(position, witness);
|
|
1066
1169
|
}
|
|
1170
|
+
async getInputsCapacityExtra(client) {
|
|
1171
|
+
return reduceAsync(this.inputs, async (acc, input) => acc + (await input.getExtraCapacity(client)), numFrom(0));
|
|
1172
|
+
}
|
|
1173
|
+
// This also includes extra amount
|
|
1067
1174
|
async getInputsCapacity(client) {
|
|
1068
|
-
return reduceAsync(this.inputs, async (acc, input) => {
|
|
1069
|
-
await input.
|
|
1070
|
-
|
|
1071
|
-
|
|
1072
|
-
}
|
|
1073
|
-
return acc + input.cellOutput.capacity;
|
|
1074
|
-
}, numFrom(0));
|
|
1175
|
+
return ((await reduceAsync(this.inputs, async (acc, input) => {
|
|
1176
|
+
const { cellOutput: { capacity }, } = await input.getCell(client);
|
|
1177
|
+
return acc + capacity;
|
|
1178
|
+
}, numFrom(0))) + (await this.getInputsCapacityExtra(client)));
|
|
1075
1179
|
}
|
|
1076
1180
|
getOutputsCapacity() {
|
|
1077
1181
|
return this.outputs.reduce((acc, { capacity }) => acc + capacity, numFrom(0));
|
|
1078
1182
|
}
|
|
1079
1183
|
async getInputsUdtBalance(client, type) {
|
|
1080
1184
|
return reduceAsync(this.inputs, async (acc, input) => {
|
|
1081
|
-
await input.
|
|
1082
|
-
if (!
|
|
1083
|
-
throw new Error("Unable to complete input");
|
|
1084
|
-
}
|
|
1085
|
-
if (!input.cellOutput.type?.eq(type)) {
|
|
1185
|
+
const { cellOutput, outputData } = await input.getCell(client);
|
|
1186
|
+
if (!cellOutput.type?.eq(type)) {
|
|
1086
1187
|
return;
|
|
1087
1188
|
}
|
|
1088
|
-
return acc + udtBalanceFrom(
|
|
1189
|
+
return acc + udtBalanceFrom(outputData);
|
|
1089
1190
|
}, numFrom(0));
|
|
1090
1191
|
}
|
|
1091
1192
|
getOutputsUdtBalance(type) {
|
|
@@ -1168,15 +1269,12 @@ let Transaction = Transaction_1 = class Transaction extends mol.Entity.Base() {
|
|
|
1168
1269
|
throw new Error(`Insufficient coin, need ${exceptedBalance - accumulated} extra coin`);
|
|
1169
1270
|
}
|
|
1170
1271
|
async completeInputsAddOne(from, filter) {
|
|
1171
|
-
|
|
1272
|
+
const { addedCount, accumulated } = await this.completeInputs(from, filter ?? {
|
|
1172
1273
|
scriptLenRange: [0, 1],
|
|
1173
1274
|
outputDataLenRange: [0, 1],
|
|
1174
|
-
},
|
|
1175
|
-
|
|
1176
|
-
|
|
1177
|
-
}
|
|
1178
|
-
this.addInput(cell);
|
|
1179
|
-
return 1;
|
|
1275
|
+
}, () => undefined, true);
|
|
1276
|
+
if (accumulated === undefined) {
|
|
1277
|
+
return addedCount;
|
|
1180
1278
|
}
|
|
1181
1279
|
throw new Error(`Insufficient CKB, need at least one new cell`);
|
|
1182
1280
|
}
|
|
@@ -1186,11 +1284,11 @@ let Transaction = Transaction_1 = class Transaction extends mol.Entity.Base() {
|
|
|
1186
1284
|
}
|
|
1187
1285
|
return this.completeInputsAddOne(from, filter);
|
|
1188
1286
|
}
|
|
1189
|
-
async
|
|
1287
|
+
async getFee(client) {
|
|
1190
1288
|
return (await this.getInputsCapacity(client)) - this.getOutputsCapacity();
|
|
1191
1289
|
}
|
|
1192
|
-
async
|
|
1193
|
-
return (((await this.
|
|
1290
|
+
async getFeeRate(client) {
|
|
1291
|
+
return (((await this.getFee(client)) * numFrom(1000)) /
|
|
1194
1292
|
numFrom(this.toBytes().length + 4));
|
|
1195
1293
|
}
|
|
1196
1294
|
estimateFee(feeRate) {
|
|
@@ -1223,7 +1321,7 @@ let Transaction = Transaction_1 = class Transaction extends mol.Entity.Base() {
|
|
|
1223
1321
|
// The initial fee is calculated based on prepared transaction
|
|
1224
1322
|
leastFee = tx.estimateFee(feeRate);
|
|
1225
1323
|
}
|
|
1226
|
-
const fee = await tx.
|
|
1324
|
+
const fee = await tx.getFee(from.client);
|
|
1227
1325
|
// The extra capacity paid the fee without a change
|
|
1228
1326
|
if (fee === leastFee) {
|
|
1229
1327
|
this.copy(tx);
|
|
@@ -1235,7 +1333,7 @@ let Transaction = Transaction_1 = class Transaction extends mol.Entity.Base() {
|
|
|
1235
1333
|
leastExtraCapacity = needed;
|
|
1236
1334
|
continue;
|
|
1237
1335
|
}
|
|
1238
|
-
if ((await tx.
|
|
1336
|
+
if ((await tx.getFee(from.client)) !== leastFee) {
|
|
1239
1337
|
throw new Error("The change function doesn't use all available capacity");
|
|
1240
1338
|
}
|
|
1241
1339
|
// New change cells created, update the fee
|
|
@@ -1297,3 +1395,38 @@ Transaction = Transaction_1 = __decorate([
|
|
|
1297
1395
|
.mapOut((tx) => Transaction.from({ ...tx.raw, witnesses: tx.witnesses })))
|
|
1298
1396
|
], Transaction);
|
|
1299
1397
|
export { Transaction };
|
|
1398
|
+
/**
|
|
1399
|
+
* Calculate Nervos DAO profit between two blocks
|
|
1400
|
+
*/
|
|
1401
|
+
export function calcDaoProfit(profitableCapacity, depositHeaderLike, withdrawHeaderLike) {
|
|
1402
|
+
const depositHeader = ClientBlockHeader.from(depositHeaderLike);
|
|
1403
|
+
const withdrawHeader = ClientBlockHeader.from(withdrawHeaderLike);
|
|
1404
|
+
const profitableSize = numFrom(profitableCapacity);
|
|
1405
|
+
return ((profitableSize * withdrawHeader.dao.ar) / depositHeader.dao.ar -
|
|
1406
|
+
profitableSize);
|
|
1407
|
+
}
|
|
1408
|
+
/**
|
|
1409
|
+
* Calculate claimable epoch for Nervos DAO withdrawal
|
|
1410
|
+
* See https://github.com/nervosnetwork/rfcs/blob/master/rfcs/0023-dao-deposit-withdraw/0023-dao-deposit-withdraw.md
|
|
1411
|
+
*/
|
|
1412
|
+
export function calcDaoClaimEpoch(depositHeader, withdrawHeader) {
|
|
1413
|
+
const depositEpoch = ClientBlockHeader.from(depositHeader).epoch;
|
|
1414
|
+
const withdrawEpoch = ClientBlockHeader.from(withdrawHeader).epoch;
|
|
1415
|
+
const intDiff = withdrawEpoch[0] - depositEpoch[0];
|
|
1416
|
+
// deposit[1] withdraw[1]
|
|
1417
|
+
// ---------- <= -----------
|
|
1418
|
+
// deposit[2] withdraw[2]
|
|
1419
|
+
if (intDiff % numFrom(180) !== numFrom(0) ||
|
|
1420
|
+
depositEpoch[1] * withdrawEpoch[2] <= depositEpoch[2] * withdrawEpoch[1]) {
|
|
1421
|
+
return [
|
|
1422
|
+
depositEpoch[0] + (intDiff / numFrom(180) + numFrom(1)) * numFrom(180),
|
|
1423
|
+
depositEpoch[1],
|
|
1424
|
+
depositEpoch[2],
|
|
1425
|
+
];
|
|
1426
|
+
}
|
|
1427
|
+
return [
|
|
1428
|
+
depositEpoch[0] + (intDiff / numFrom(180)) * numFrom(180),
|
|
1429
|
+
depositEpoch[1],
|
|
1430
|
+
depositEpoch[2],
|
|
1431
|
+
];
|
|
1432
|
+
}
|
package/dist/client/client.d.ts
CHANGED
|
@@ -3,7 +3,8 @@ import { Hex, HexLike } from "../hex/index.js";
|
|
|
3
3
|
import { Num, NumLike } from "../num/index.js";
|
|
4
4
|
import { ClientCache } from "./cache/index.js";
|
|
5
5
|
import { ClientCollectableSearchKeyLike } from "./clientTypes.advanced.js";
|
|
6
|
-
import { CellDepInfoLike, ClientBlock, ClientBlockHeader, ClientFindCellsResponse, ClientFindTransactionsGroupedResponse, ClientFindTransactionsResponse, ClientIndexerSearchKeyLike, ClientIndexerSearchKeyTransactionLike, ClientTransactionResponse,
|
|
6
|
+
import { CellDepInfoLike, ClientBlock, ClientBlockHeader, ClientFindCellsResponse, ClientFindTransactionsGroupedResponse, ClientFindTransactionsResponse, ClientIndexerSearchKeyLike, ClientIndexerSearchKeyTransactionLike, ClientTransactionResponse, OutputsValidator, ScriptInfo } from "./clientTypes.js";
|
|
7
|
+
import { KnownScript } from "./knownScript.js";
|
|
7
8
|
/**
|
|
8
9
|
* @public
|
|
9
10
|
*/
|
|
@@ -48,6 +49,7 @@ export declare abstract class Client {
|
|
|
48
49
|
findCellsOnChain(key: ClientIndexerSearchKeyLike, order?: "asc" | "desc", limit?: number): AsyncGenerator<Cell>;
|
|
49
50
|
/**
|
|
50
51
|
* Find cells by search key designed for collectable cells.
|
|
52
|
+
* The result also includes cached cells, the order param only works for cells fetched from RPC.
|
|
51
53
|
*
|
|
52
54
|
* @param keyLike - The search key.
|
|
53
55
|
* @returns A async generator for yielding cells.
|