From 90f6dc808da8b616188f350b6e6e2d13ee5ef33f Mon Sep 17 00:00:00 2001 From: Keith-CY <7271329+Keith-CY@users.noreply.github.com> Date: Tue, 12 Nov 2024 00:23:35 +0000 Subject: [PATCH 1/3] feat: update ckb client versions --- .ckb-light-version | 4 ++++ .ckb-version | 4 ++++ 2 files changed, 8 insertions(+) diff --git a/.ckb-light-version b/.ckb-light-version index 5aff472dd..d3237ae7d 100644 --- a/.ckb-light-version +++ b/.ckb-light-version @@ -1 +1,5 @@ +<<<<<<< HEAD v0.4.1 +======= +v0.4.0 +>>>>>>> 9a82bc451 (feat: update ckb client versions) diff --git a/.ckb-version b/.ckb-version index 11c3166fe..96c8cb193 100644 --- a/.ckb-version +++ b/.ckb-version @@ -1 +1,5 @@ +<<<<<<< HEAD v0.120.0 +======= +v0.119.0 +>>>>>>> 9a82bc451 (feat: update ckb client versions) From 3c471beaf04ab63306c506c68ddab628a4dcfcf3 Mon Sep 17 00:00:00 2001 From: devchenyan Date: Tue, 12 Nov 2024 10:23:45 +0800 Subject: [PATCH 2/3] feat: handle hash_type:data2 --- packages/neuron-ui/src/components/SpecialAssetList/hooks.ts | 2 +- packages/neuron-ui/src/types/Controller/index.d.ts | 2 +- packages/neuron-ui/src/utils/scriptAndAddress.ts | 3 +++ packages/neuron-wallet/src/models/asset-account-info.ts | 1 + packages/neuron-wallet/src/models/chain/live-cell.ts | 1 + packages/neuron-wallet/src/models/chain/script.ts | 1 + 6 files changed, 8 insertions(+), 2 deletions(-) diff --git a/packages/neuron-ui/src/components/SpecialAssetList/hooks.ts b/packages/neuron-ui/src/components/SpecialAssetList/hooks.ts index d1ff65cc4..1e0b9c82c 100644 --- a/packages/neuron-ui/src/components/SpecialAssetList/hooks.ts +++ b/packages/neuron-ui/src/components/SpecialAssetList/hooks.ts @@ -30,7 +30,7 @@ export interface SpecialAssetCell { lock: { args: string codeHash: string - hashType: 'type' | 'data' + hashType: 'type' | 'data' | 'data1' | 'data2' } lockHash: string multiSignBlake160: string diff --git a/packages/neuron-ui/src/types/Controller/index.d.ts b/packages/neuron-ui/src/types/Controller/index.d.ts index 380129f80..6a1b6f22b 100644 --- a/packages/neuron-ui/src/types/Controller/index.d.ts +++ b/packages/neuron-ui/src/types/Controller/index.d.ts @@ -215,7 +215,7 @@ declare namespace Controller { interface Response { cellDep: any codeHash: string - hashType: 'data' | 'type' + hashType: 'data' | 'type' | 'data1' | 'data2' } } interface SUDTAccount { diff --git a/packages/neuron-ui/src/utils/scriptAndAddress.ts b/packages/neuron-ui/src/utils/scriptAndAddress.ts index dfc0965bc..4a6d9034b 100644 --- a/packages/neuron-ui/src/utils/scriptAndAddress.ts +++ b/packages/neuron-ui/src/utils/scriptAndAddress.ts @@ -13,6 +13,9 @@ export const scriptToAddress = ( { isMainnet = true, deprecated = false }: { isMainnet?: boolean; deprecated?: boolean } ) => { const config = { config: isMainnet ? MAINNET : TESTNET } + if (['data1', 'data2'].includes(script.hashType)) { + return encodeToAddress(script, config) + } return deprecated ? generateAddress(script, config) : encodeToAddress(script, config) } diff --git a/packages/neuron-wallet/src/models/asset-account-info.ts b/packages/neuron-wallet/src/models/asset-account-info.ts index b4cb7a8d8..dee91b242 100644 --- a/packages/neuron-wallet/src/models/asset-account-info.ts +++ b/packages/neuron-wallet/src/models/asset-account-info.ts @@ -401,6 +401,7 @@ function toScriptInfo(sporeConfig: SporeScript): ScriptCellInfo { if (sporeScriptHashType === 'type') return ScriptHashType.Type if (sporeScriptHashType === 'data') return ScriptHashType.Data if (sporeScriptHashType === 'data1') return ScriptHashType.Data1 + if (sporeScriptHashType === 'data2') return ScriptHashType.Data2 throw new Error(`Invalid hash type: ${sporeScriptHashType}`) })() diff --git a/packages/neuron-wallet/src/models/chain/live-cell.ts b/packages/neuron-wallet/src/models/chain/live-cell.ts index 4efc95dd6..4d85cedd4 100644 --- a/packages/neuron-wallet/src/models/chain/live-cell.ts +++ b/packages/neuron-wallet/src/models/chain/live-cell.ts @@ -6,6 +6,7 @@ const LUMOS_HASH_TYPE_MAP: Record = { type: ScriptHashType.Type, data1: ScriptHashType.Data1, data: ScriptHashType.Data, + data2: ScriptHashType.Data2, } export type CellWithOutPoint = Cell & { outPoint: IOutPoint } diff --git a/packages/neuron-wallet/src/models/chain/script.ts b/packages/neuron-wallet/src/models/chain/script.ts index 40034ea46..03dcc0880 100644 --- a/packages/neuron-wallet/src/models/chain/script.ts +++ b/packages/neuron-wallet/src/models/chain/script.ts @@ -6,6 +6,7 @@ export enum ScriptHashType { Data = 'data', Type = 'type', Data1 = 'data1', + Data2 = 'data2', } export default class Script { From 203c879b1ae105cc4ee3f454ae2ad460180f8b0b Mon Sep 17 00:00:00 2001 From: devchenyan Date: Tue, 12 Nov 2024 16:08:13 +0800 Subject: [PATCH 3/3] fix --- .ckb-light-version | 4 ---- .ckb-version | 4 ---- packages/neuron-ui/src/utils/scriptAndAddress.ts | 3 --- 3 files changed, 11 deletions(-) diff --git a/.ckb-light-version b/.ckb-light-version index d3237ae7d..5aff472dd 100644 --- a/.ckb-light-version +++ b/.ckb-light-version @@ -1,5 +1 @@ -<<<<<<< HEAD v0.4.1 -======= -v0.4.0 ->>>>>>> 9a82bc451 (feat: update ckb client versions) diff --git a/.ckb-version b/.ckb-version index 96c8cb193..11c3166fe 100644 --- a/.ckb-version +++ b/.ckb-version @@ -1,5 +1 @@ -<<<<<<< HEAD v0.120.0 -======= -v0.119.0 ->>>>>>> 9a82bc451 (feat: update ckb client versions) diff --git a/packages/neuron-ui/src/utils/scriptAndAddress.ts b/packages/neuron-ui/src/utils/scriptAndAddress.ts index 4a6d9034b..dfc0965bc 100644 --- a/packages/neuron-ui/src/utils/scriptAndAddress.ts +++ b/packages/neuron-ui/src/utils/scriptAndAddress.ts @@ -13,9 +13,6 @@ export const scriptToAddress = ( { isMainnet = true, deprecated = false }: { isMainnet?: boolean; deprecated?: boolean } ) => { const config = { config: isMainnet ? MAINNET : TESTNET } - if (['data1', 'data2'].includes(script.hashType)) { - return encodeToAddress(script, config) - } return deprecated ? generateAddress(script, config) : encodeToAddress(script, config) }