From 3aa4425c6f7d756ceb464f58716b1a89620e2d5b Mon Sep 17 00:00:00 2001 From: ashuralyk Date: Thu, 16 Oct 2025 19:54:29 +0800 Subject: [PATCH 01/42] chore: search manual proxy lock when signer isn't the proxy provider --- .changeset/tame-swans-hammer.md | 6 ++++++ packages/spore/src/spore/advanced.ts | 31 +++++++++++++++++++++------- 2 files changed, 29 insertions(+), 8 deletions(-) create mode 100644 .changeset/tame-swans-hammer.md diff --git a/.changeset/tame-swans-hammer.md b/.changeset/tame-swans-hammer.md new file mode 100644 index 000000000..cfe82c234 --- /dev/null +++ b/.changeset/tame-swans-hammer.md @@ -0,0 +1,6 @@ +--- +"@ckb-ccc/spore": patch +--- + +Enable searching manual proxy lock for cluster in LockProxy mode + \ No newline at end of file diff --git a/packages/spore/src/spore/advanced.ts b/packages/spore/src/spore/advanced.ts index cc2cad6f9..23aa84aa1 100644 --- a/packages/spore/src/spore/advanced.ts +++ b/packages/spore/src/spore/advanced.ts @@ -29,16 +29,31 @@ export async function prepareCluster( case "lockProxy": { const lock = cluster.cellOutput.lock; - if ((await tx.findInputIndexByLock(lock, signer.client)) === undefined) { - // note: We can only search proxy of signer, if any custom logic is in need, developer should get - // the proxy filled in transaction before invoking `createSpore` - await tx.completeInputsAddOne(signer); - } - if (tx.outputs.every((output) => output.lock !== lock)) { - tx.addOutput({ + // Ensure a lock-proxy input is present, add one if absent + let lockProxyInputIndex = await tx.findInputIndexByLock( + lock, + signer.client, + ); + if (lockProxyInputIndex === undefined) { + await tx.completeInputsAddOne( + new ccc.SignerCkbScriptReadonly(signer.client, lock), + ); + lockProxyInputIndex = await tx.findInputIndexByLock( lock, - }); + signer.client, + ); + if (lockProxyInputIndex === undefined) { + throw new Error("Lock proxy input not found"); + } } + + // Add the output only if there's not already one with proxy lock + if (!tx.outputs.some((output) => output.lock === lock)) { + tx.addOutput( + await tx.getInput(lockProxyInputIndex)!.getCell(signer.client), + ); + } + tx.addCellDeps({ outPoint: cluster.outPoint, depType: "code", From d0af06148666113546c2d269b0c52c75c28e15ea Mon Sep 17 00:00:00 2001 From: "github-actions[bot]" <41898282+github-actions[bot]@users.noreply.github.com> Date: Fri, 21 Nov 2025 03:33:16 +0000 Subject: [PATCH 02/42] chore(release): bump packages version --- .changeset/tame-swans-hammer.md | 6 ------ packages/ccc/CHANGELOG.md | 6 ++++++ packages/ccc/package.json | 2 +- packages/ckb-ccc/CHANGELOG.md | 6 ++++++ packages/ckb-ccc/package.json | 2 +- packages/connector-react/CHANGELOG.md | 6 ++++++ packages/connector-react/package.json | 2 +- packages/connector/CHANGELOG.md | 6 ++++++ packages/connector/package.json | 2 +- packages/shell/CHANGELOG.md | 6 ++++++ packages/shell/package.json | 2 +- packages/spore/CHANGELOG.md | 7 +++++++ packages/spore/package.json | 2 +- 13 files changed, 43 insertions(+), 12 deletions(-) delete mode 100644 .changeset/tame-swans-hammer.md diff --git a/.changeset/tame-swans-hammer.md b/.changeset/tame-swans-hammer.md deleted file mode 100644 index cfe82c234..000000000 --- a/.changeset/tame-swans-hammer.md +++ /dev/null @@ -1,6 +0,0 @@ ---- -"@ckb-ccc/spore": patch ---- - -Enable searching manual proxy lock for cluster in LockProxy mode - \ No newline at end of file diff --git a/packages/ccc/CHANGELOG.md b/packages/ccc/CHANGELOG.md index 17cd572bf..d94727e03 100644 --- a/packages/ccc/CHANGELOG.md +++ b/packages/ccc/CHANGELOG.md @@ -1,5 +1,11 @@ # @ckb-ccc/ccc +## 1.1.22 +### Patch Changes + +- Updated dependencies []: + - @ckb-ccc/shell@1.1.22 + ## 1.1.21 ### Patch Changes diff --git a/packages/ccc/package.json b/packages/ccc/package.json index 61219eb9e..6c17e0ef7 100644 --- a/packages/ccc/package.json +++ b/packages/ccc/package.json @@ -1,6 +1,6 @@ { "name": "@ckb-ccc/ccc", - "version": "1.1.21", + "version": "1.1.22", "description": "CCC - CKBer's Codebase. Common Chains Connector.", "author": "Hanssen0 ", "license": "MIT", diff --git a/packages/ckb-ccc/CHANGELOG.md b/packages/ckb-ccc/CHANGELOG.md index 7461441d1..37628e5fc 100644 --- a/packages/ckb-ccc/CHANGELOG.md +++ b/packages/ckb-ccc/CHANGELOG.md @@ -1,5 +1,11 @@ # ckb-ccc +## 1.0.30 +### Patch Changes + +- Updated dependencies []: + - @ckb-ccc/ccc@1.1.22 + ## 1.0.29 ### Patch Changes diff --git a/packages/ckb-ccc/package.json b/packages/ckb-ccc/package.json index 559cd6dd1..8e2a6153c 100644 --- a/packages/ckb-ccc/package.json +++ b/packages/ckb-ccc/package.json @@ -1,6 +1,6 @@ { "name": "ckb-ccc", - "version": "1.0.29", + "version": "1.0.30", "description": "CCC - CKBer's Codebase. Common Chains Connector.", "author": "Hanssen0 ", "license": "MIT", diff --git a/packages/connector-react/CHANGELOG.md b/packages/connector-react/CHANGELOG.md index 88c89cab9..a25c16138 100644 --- a/packages/connector-react/CHANGELOG.md +++ b/packages/connector-react/CHANGELOG.md @@ -1,5 +1,11 @@ # @ckb-ccc/connector-react +## 1.0.30 +### Patch Changes + +- Updated dependencies []: + - @ckb-ccc/connector@1.0.30 + ## 1.0.29 ### Patch Changes diff --git a/packages/connector-react/package.json b/packages/connector-react/package.json index 2e706f02b..6a81f8ca3 100644 --- a/packages/connector-react/package.json +++ b/packages/connector-react/package.json @@ -1,6 +1,6 @@ { "name": "@ckb-ccc/connector-react", - "version": "1.0.29", + "version": "1.0.30", "description": "CCC - CKBer's Codebase. Common Chains Connector UI Component for React", "author": "Hanssen0 ", "license": "MIT", diff --git a/packages/connector/CHANGELOG.md b/packages/connector/CHANGELOG.md index af6e1b5bc..82fe323cf 100644 --- a/packages/connector/CHANGELOG.md +++ b/packages/connector/CHANGELOG.md @@ -1,5 +1,11 @@ # @ckb-ccc/connector +## 1.0.30 +### Patch Changes + +- Updated dependencies []: + - @ckb-ccc/ccc@1.1.22 + ## 1.0.29 ### Patch Changes diff --git a/packages/connector/package.json b/packages/connector/package.json index f48055120..40a31fdd6 100644 --- a/packages/connector/package.json +++ b/packages/connector/package.json @@ -1,6 +1,6 @@ { "name": "@ckb-ccc/connector", - "version": "1.0.29", + "version": "1.0.30", "description": "CCC - CKBer's Codebase. Common Chains Connector UI", "author": "Hanssen0 ", "license": "MIT", diff --git a/packages/shell/CHANGELOG.md b/packages/shell/CHANGELOG.md index 33f507d34..3a9b85a36 100644 --- a/packages/shell/CHANGELOG.md +++ b/packages/shell/CHANGELOG.md @@ -1,5 +1,11 @@ # @ckb-ccc/shell +## 1.1.22 +### Patch Changes + +- Updated dependencies [[`3aa4425`](https://github.com/ckb-devrel/ccc/commit/3aa4425c6f7d756ceb464f58716b1a89620e2d5b)]: + - @ckb-ccc/spore@1.5.14 + ## 1.1.21 ### Patch Changes diff --git a/packages/shell/package.json b/packages/shell/package.json index 4290d0861..c8f9e8bae 100644 --- a/packages/shell/package.json +++ b/packages/shell/package.json @@ -1,6 +1,6 @@ { "name": "@ckb-ccc/shell", - "version": "1.1.21", + "version": "1.1.22", "description": "Backend Shell of CCC - CKBer's Codebase. Common Chains Connector.", "author": "Hanssen0 ", "license": "MIT", diff --git a/packages/spore/CHANGELOG.md b/packages/spore/CHANGELOG.md index 4a7d6817b..3fe7b7b44 100644 --- a/packages/spore/CHANGELOG.md +++ b/packages/spore/CHANGELOG.md @@ -1,5 +1,12 @@ # @ckb-ccc/spore +## 1.5.14 +### Patch Changes + + + +- [#324](https://github.com/ckb-devrel/ccc/pull/324) [`3aa4425`](https://github.com/ckb-devrel/ccc/commit/3aa4425c6f7d756ceb464f58716b1a89620e2d5b) Thanks [@ashuralyk](https://github.com/ashuralyk)! - Enable searching manual proxy lock for cluster in LockProxy mode + ## 1.5.13 ### Patch Changes diff --git a/packages/spore/package.json b/packages/spore/package.json index 6c30a46fd..8fbb7d442 100644 --- a/packages/spore/package.json +++ b/packages/spore/package.json @@ -1,6 +1,6 @@ { "name": "@ckb-ccc/spore", - "version": "1.5.13", + "version": "1.5.14", "description": "CCC - CKBer's Codebase. Common Chains Connector's support for Spore protocol", "author": "ashuralyk ", "license": "MIT", From 5d4ad4ec5c6b4eede1be6491a2eaa9041a1f6431 Mon Sep 17 00:00:00 2001 From: Hanssen0 Date: Wed, 12 Nov 2025 04:51:54 +0800 Subject: [PATCH 03/42] feat(app): signature textarea for signing --- .../src/app/connected/(tools)/Sign/page.tsx | 42 ++++++++++++++----- packages/demo/src/components/Textarea.tsx | 6 ++- 2 files changed, 35 insertions(+), 13 deletions(-) diff --git a/packages/demo/src/app/connected/(tools)/Sign/page.tsx b/packages/demo/src/app/connected/(tools)/Sign/page.tsx index 6ce0f5829..55f36a374 100644 --- a/packages/demo/src/app/connected/(tools)/Sign/page.tsx +++ b/packages/demo/src/app/connected/(tools)/Sign/page.tsx @@ -5,6 +5,7 @@ import { ButtonsPanel } from "@/src/components/ButtonsPanel"; import { Textarea } from "@/src/components/Textarea"; import { useApp } from "@/src/context"; import { ccc } from "@ckb-ccc/connector-react"; +import { CopyIcon } from "lucide-react"; import { useState } from "react"; export default function Sign() { @@ -21,6 +22,24 @@ export default function Sign() { placeholder="Message to sign and verify" state={[messageToSign, setMessageToSign]} /> +