From 2c42c8048f71ad811093af9e341dbaafdb952a72 Mon Sep 17 00:00:00 2001 From: Dylan Duan Date: Thu, 9 May 2024 20:00:14 +0800 Subject: [PATCH 1/2] refactor: Collect all rgbpp inputs without isMax --- packages/ckb/src/collector/index.ts | 3 ++- packages/ckb/src/rgbpp/launch.ts | 2 +- packages/ckb/src/types/collector.ts | 1 - 3 files changed, 3 insertions(+), 3 deletions(-) diff --git a/packages/ckb/src/collector/index.ts b/packages/ckb/src/collector/index.ts index 88b5739a..89a2641b 100644 --- a/packages/ckb/src/collector/index.ts +++ b/packages/ckb/src/collector/index.ts @@ -110,6 +110,7 @@ export class Collector { const changeCapacity = config?.minCapacity ?? MIN_CAPACITY; const inputs: CKBComponents.CellInput[] = []; let sumInputsCapacity = BigInt(0); + const isRgbppLock = liveCells.length > 0 && isRgbppLockCellIgnoreChain(liveCells[0].output); for (const cell of liveCells) { inputs.push({ previousOutput: { @@ -119,7 +120,7 @@ export class Collector { since: '0x0', }); sumInputsCapacity += BigInt(cell.output.capacity); - if (sumInputsCapacity >= needCapacity + changeCapacity + fee && !config?.isMax) { + if (sumInputsCapacity >= needCapacity + changeCapacity + fee && !isRgbppLock) { break; } } diff --git a/packages/ckb/src/rgbpp/launch.ts b/packages/ckb/src/rgbpp/launch.ts index 905750b0..a851bfcd 100644 --- a/packages/ckb/src/rgbpp/launch.ts +++ b/packages/ckb/src/rgbpp/launch.ts @@ -57,7 +57,7 @@ export const genRgbppLaunchCkbVirtualTx = async ({ const infoCellCapacity = calculateRgbppTokenInfoCellCapacity(rgbppTokenInfo, isMainnet); const txFee = MAX_FEE; - const { inputs, sumInputsCapacity } = collector.collectInputs(emptyCells, infoCellCapacity, txFee, { isMax: true }); + const { inputs, sumInputsCapacity } = collector.collectInputs(emptyCells, infoCellCapacity, txFee); let rgbppCellCapacity = sumInputsCapacity - infoCellCapacity; const outputs: CKBComponents.CellOutput[] = [ diff --git a/packages/ckb/src/types/collector.ts b/packages/ckb/src/types/collector.ts index 9bbb7716..f1db7bc8 100644 --- a/packages/ckb/src/types/collector.ts +++ b/packages/ckb/src/types/collector.ts @@ -24,7 +24,6 @@ export interface CollectUdtResult extends CollectResult { } export interface CollectConfig { - isMax?: boolean; minCapacity?: bigint; errMsg?: string; } From a9b9796f5ef8d27a9ad94d09a832bb9a7fe56c8e Mon Sep 17 00:00:00 2001 From: Dylan Duan Date: Thu, 9 May 2024 20:37:52 +0800 Subject: [PATCH 2/2] chore: Update changeset --- .changeset/large-nails-greet.md | 5 +++++ 1 file changed, 5 insertions(+) create mode 100644 .changeset/large-nails-greet.md diff --git a/.changeset/large-nails-greet.md b/.changeset/large-nails-greet.md new file mode 100644 index 00000000..05b46c33 --- /dev/null +++ b/.changeset/large-nails-greet.md @@ -0,0 +1,5 @@ +--- +"@rgbpp-sdk/ckb": minor +--- + +refactor: Collect all RGB++ inputs without isMax parameter