From ad8c80f043e734ca00c3f80ace3775c40e29f356 Mon Sep 17 00:00:00 2001 From: devchenyan Date: Thu, 29 May 2025 11:06:34 +0800 Subject: [PATCH 01/29] fix: Issues of release v0.201.0 regression testing (#3365) fix: Issues of release v0.201.0 regression --- .../sync/indexer-cache-service.ts | 4 ++++ .../neuron-wallet/src/database/address/meta.ts | 6 +++++- packages/neuron-wallet/src/services/cells.ts | 13 +++++++++---- .../indexer-cache-service.intg.test.ts | 17 +++++++++++++++++ .../tests/database/address/meta.test.ts | 9 +++++++++ 5 files changed, 44 insertions(+), 5 deletions(-) diff --git a/packages/neuron-wallet/src/block-sync-renderer/sync/indexer-cache-service.ts b/packages/neuron-wallet/src/block-sync-renderer/sync/indexer-cache-service.ts index 99f29b49e4..e2895f96bb 100644 --- a/packages/neuron-wallet/src/block-sync-renderer/sync/indexer-cache-service.ts +++ b/packages/neuron-wallet/src/block-sync-renderer/sync/indexer-cache-service.ts @@ -111,6 +111,10 @@ export default class IndexerCacheService { lockScript: addressMeta.generateSingleMultiSignLockScript(), argsLen: 28, }, + { + lockScript: addressMeta.generateLegacySingleMultiSignLockScript(), + argsLen: 28, + }, { lockScript: addressMeta.generateChequeLockScriptWithReceiverLockHash(), argsLen: 40, diff --git a/packages/neuron-wallet/src/database/address/meta.ts b/packages/neuron-wallet/src/database/address/meta.ts index 2a2cb6b9fe..ddaae60b58 100644 --- a/packages/neuron-wallet/src/database/address/meta.ts +++ b/packages/neuron-wallet/src/database/address/meta.ts @@ -100,13 +100,17 @@ export default class AddressMeta implements Address { return SystemScriptInfo.generateSecpScript(this.blake160) } - public generateSingleMultiSignLockScript(): Script { + public generateLegacySingleMultiSignLockScript(): Script { return SystemScriptInfo.generateMultiSignScript( Multisig.hash([this.blake160]), SystemScriptInfo.LEGACY_MULTISIG_CODE_HASH ) } + public generateSingleMultiSignLockScript(): Script { + return SystemScriptInfo.generateMultiSignScript(Multisig.hash([this.blake160]), SystemScriptInfo.MULTISIG_CODE_HASH) + } + public generateACPLockScript(): Script { const assetAccountInfo = new AssetAccountInfo() return assetAccountInfo.generateAnyoneCanPayScript(this.blake160) diff --git a/packages/neuron-wallet/src/services/cells.ts b/packages/neuron-wallet/src/services/cells.ts index cdfa8a39d1..e9bfd8b2fe 100644 --- a/packages/neuron-wallet/src/services/cells.ts +++ b/packages/neuron-wallet/src/services/cells.ts @@ -320,7 +320,7 @@ export default class CellsService { ( output.hasData = 0 AND output.typeHash IS NULL AND - output.lockCodeHash = :multiSignlockCodeHash + output.lockCodeHash in (:...multiSignlockCodeHash) ) OR ( @@ -353,7 +353,7 @@ export default class CellsService { `, { liveStatus: OutputStatus.Live, - multiSignlockCodeHash: SystemScriptInfo.LEGACY_MULTISIG_CODE_HASH, + multiSignlockCodeHash: [SystemScriptInfo.LEGACY_MULTISIG_CODE_HASH, SystemScriptInfo.MULTISIG_CODE_HASH], chequeLockCodeHash, nftIssuerCodehash, nftClassCodehash, @@ -467,7 +467,9 @@ export default class CellsService { data: 'withdraw-able', }) } - } else if (o.lockCodeHash === SystemScriptInfo.LEGACY_MULTISIG_CODE_HASH) { + } else if ( + [SystemScriptInfo.LEGACY_MULTISIG_CODE_HASH, SystemScriptInfo.MULTISIG_CODE_HASH].includes(o.lockCodeHash) + ) { cell.setCustomizedAssetInfo({ lock: CustomizedLock.SingleMultiSign, type: '', @@ -770,7 +772,9 @@ export default class CellsService { if (inputs.find(el => el.lockHash === cell.lockHash!)) { totalSize += TransactionSize.emptyWitness() } else { - if (lockClass.codeHash === SystemScriptInfo.LEGACY_MULTISIG_CODE_HASH) { + if ( + [SystemScriptInfo.LEGACY_MULTISIG_CODE_HASH, SystemScriptInfo.MULTISIG_CODE_HASH].includes(lockClass.codeHash) + ) { const multisigConfig = multisigConfigMap[cell.lockHash] if (!multisigConfig) { throw new MultisigConfigNeedError() @@ -1374,6 +1378,7 @@ export default class CellsService { case assetAccountInfo.getChequeInfo().codeHash: return LockScriptCategory.Cheque case SystemScriptInfo.LEGACY_MULTISIG_CODE_HASH: + case SystemScriptInfo.MULTISIG_CODE_HASH: if (output.lock.args.length === LOCKTIME_ARGS_LENGTH) { return LockScriptCategory.MULTI_LOCK_TIME } diff --git a/packages/neuron-wallet/tests/block-sync-renderer/indexer-cache-service.intg.test.ts b/packages/neuron-wallet/tests/block-sync-renderer/indexer-cache-service.intg.test.ts index 4d6022b2d3..2341254466 100644 --- a/packages/neuron-wallet/tests/block-sync-renderer/indexer-cache-service.intg.test.ts +++ b/packages/neuron-wallet/tests/block-sync-renderer/indexer-cache-service.intg.test.ts @@ -70,6 +70,7 @@ const addressMeta = AddressMeta.fromObject(address) const addressMetas = [addressMeta] const defaultLockScript = addressMeta.generateDefaultLockScript() const singleMultiSignLockScript = addressMeta.generateSingleMultiSignLockScript() +const legacySingleMultiSignLockScript = addressMeta.generateLegacySingleMultiSignLockScript() const chequeLockScript = addressMeta.generateChequeLockScriptWithReceiverLockHash() const acpLockScript = addressMeta.generateACPLockScript() const legacyAcpLockScript = addressMeta.generateLegacyACPLockScript() @@ -83,6 +84,11 @@ const formattedSingleMultiSignLockScript = { hashType: singleMultiSignLockScript.hashType, args: singleMultiSignLockScript.args + '0'.repeat(14), } +const formattedLegacySingleMultiSignLockScript = { + codeHash: legacySingleMultiSignLockScript.codeHash, + hashType: legacySingleMultiSignLockScript.hashType, + args: legacySingleMultiSignLockScript.args + '0'.repeat(14), +} const formattedChequeLockScript = { codeHash: chequeLockScript.codeHash, hashType: chequeLockScript.hashType, @@ -276,6 +282,17 @@ describe('indexer cache service', () => { stubbedCellCollectorConstructor.mockReset() when(stubbedCellCollectorConstructor) + .calledWith( + expect.anything(), + expect.objectContaining({ + lock: { + ...formattedLegacySingleMultiSignLockScript, + args: formattedLegacySingleMultiSignLockScript.args.slice(0, 42), + }, + argsLen: 28, + }) + ) + .mockReturnValue(fakeCollectorObj) .calledWith( expect.anything(), expect.objectContaining({ diff --git a/packages/neuron-wallet/tests/database/address/meta.test.ts b/packages/neuron-wallet/tests/database/address/meta.test.ts index af9b7f4b62..17c2b130ef 100644 --- a/packages/neuron-wallet/tests/database/address/meta.test.ts +++ b/packages/neuron-wallet/tests/database/address/meta.test.ts @@ -42,6 +42,15 @@ describe('Address Dao tests', () => { it('#generateSingleMultiSignLockScript', () => { const script = addressMeta.generateSingleMultiSignLockScript() + expect(script).toEqual({ + args: Multisig.hash([address.blake160]), + codeHash: '0x36c971b8d41fbd94aabca77dc75e826729ac98447b46f91e00796155dddb0d29', + hashType: 'data1', + }) + }) + + it('#generateLegacySingleMultiSignLockScript', () => { + const script = addressMeta.generateLegacySingleMultiSignLockScript() expect(script).toEqual({ args: Multisig.hash([address.blake160]), codeHash: '0x5c5069eb0857efc65e1bca0c07df34c31663b3622fd3876c876320fc9634e2a8', From 59b7c18979b636269ce1dc980c564060d25e580a Mon Sep 17 00:00:00 2001 From: "dependabot[bot]" <49699333+dependabot[bot]@users.noreply.github.com> Date: Wed, 4 Jun 2025 18:26:38 +0900 Subject: [PATCH 02/29] chore(deps): bump tar-fs from 2.1.2 to 2.1.3 (#3368) Bumps [tar-fs](https://github.com/mafintosh/tar-fs) from 2.1.2 to 2.1.3. - [Commits](https://github.com/mafintosh/tar-fs/commits) --- updated-dependencies: - dependency-name: tar-fs dependency-version: 2.1.3 dependency-type: indirect ... Signed-off-by: dependabot[bot] Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com> --- yarn.lock | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/yarn.lock b/yarn.lock index 1dd50c50fc..cb81a668d7 100644 --- a/yarn.lock +++ b/yarn.lock @@ -15623,9 +15623,9 @@ symbol-tree@^3.2.4: integrity sha512-9QNk5KwDF+Bvz+PyObkmSYjI5ksVUYtjW7AU22r2NKcfLJcXp96hkDWU3+XndOsUb+AQ9QhfzfCT2O+CNWT5Tw== tar-fs@^2.0.0: - version "2.1.2" - resolved "https://registry.yarnpkg.com/tar-fs/-/tar-fs-2.1.2.tgz#425f154f3404cb16cb8ff6e671d45ab2ed9596c5" - integrity sha512-EsaAXwxmx8UB7FRKqeozqEPop69DXcmYwTQwXvyAPF352HJsPdkVhvTaDPYqfNgruveJIJy3TA2l+2zj8LJIJA== + version "2.1.3" + resolved "https://registry.yarnpkg.com/tar-fs/-/tar-fs-2.1.3.tgz#fb3b8843a26b6f13a08e606f7922875eb1fbbf92" + integrity sha512-090nwYJDmlhwFwEW3QQl+vaNnxsO2yVsd45eTKRBzSzu+hlb1w2K9inVq5b0ngXuLVqQ4ApvsUHHnu/zQNkWAg== dependencies: chownr "^1.1.1" mkdirp-classic "^0.5.2" From 76b4aa8b5fcf47c536d8d8c375eac06d0acfb1f1 Mon Sep 17 00:00:00 2001 From: "github-actions[bot]" <41898282+github-actions[bot]@users.noreply.github.com> Date: Thu, 12 Jun 2025 14:04:16 +0800 Subject: [PATCH 03/29] Update ckb client versions (#3369) feat: update ckb client versions Co-authored-by: Keith-CY <7271329+Keith-CY@users.noreply.github.com> --- .ckb-version | 2 +- compatible.json | 11 +++++++++++ 2 files changed, 12 insertions(+), 1 deletion(-) diff --git a/.ckb-version b/.ckb-version index 9bb8722956..4177f84ed3 100644 --- a/.ckb-version +++ b/.ckb-version @@ -1 +1 @@ -v0.201.0 +v0.202.0 diff --git a/compatible.json b/compatible.json index 87521b060c..2f55ec9968 100644 --- a/compatible.json +++ b/compatible.json @@ -1,5 +1,6 @@ { "fullVersions": [ + "0.202", "0.201", "0.200", "0.121", @@ -30,6 +31,7 @@ "compatible": { "0.111": { "full": [ + "0.202", "0.201", "0.200", "0.121", @@ -54,6 +56,7 @@ }, "0.110": { "full": [ + "0.202", "0.201", "0.200", "0.121", @@ -94,6 +97,7 @@ }, "0.112": { "full": [ + "0.202", "0.201", "0.200", "0.121", @@ -118,6 +122,7 @@ }, "0.114": { "full": [ + "0.202", "0.201", "0.200", "0.121", @@ -142,6 +147,7 @@ }, "0.116": { "full": [ + "0.202", "0.201", "0.200", "0.121", @@ -166,6 +172,7 @@ }, "0.117": { "full": [ + "0.202", "0.201", "0.200", "0.121", @@ -190,6 +197,7 @@ }, "0.119": { "full": [ + "0.202", "0.201", "0.200", "0.121", @@ -214,6 +222,7 @@ }, "0.120": { "full": [ + "0.202", "0.201", "0.200", "0.121", @@ -238,6 +247,7 @@ }, "0.121": { "full": [ + "0.202", "0.201", "0.200", "0.121", @@ -262,6 +272,7 @@ }, "0.201": { "full": [ + "0.202", "0.201", "0.200", "0.121", From 4571d2f24aac8d90a158a00474e5a7a57599160a Mon Sep 17 00:00:00 2001 From: "github-actions[bot]" <41898282+github-actions[bot]@users.noreply.github.com> Date: Thu, 19 Jun 2025 10:43:20 +0800 Subject: [PATCH 04/29] Update ckb client versions (#3371) feat: update ckb client versions Co-authored-by: Keith-CY <7271329+Keith-CY@users.noreply.github.com> --- .ckb-light-version | 2 +- compatible.json | 11 +++++++++++ 2 files changed, 12 insertions(+), 1 deletion(-) diff --git a/.ckb-light-version b/.ckb-light-version index 5aff472ddf..b043aa648f 100644 --- a/.ckb-light-version +++ b/.ckb-light-version @@ -1 +1 @@ -v0.4.1 +v0.5.0 diff --git a/compatible.json b/compatible.json index 2f55ec9968..01f03dd534 100644 --- a/compatible.json +++ b/compatible.json @@ -24,6 +24,7 @@ "0.103" ], "lightVersions": [ + "0.5", "0.4", "0.3", "0.2" @@ -49,6 +50,7 @@ "0.109" ], "light": [ + "0.5", "0.4", "0.3", "0.2" @@ -74,6 +76,7 @@ "0.109" ], "light": [ + "0.5", "0.4", "0.3", "0.2" @@ -115,6 +118,7 @@ "0.109" ], "light": [ + "0.5", "0.4", "0.3", "0.2" @@ -140,6 +144,7 @@ "0.109" ], "light": [ + "0.5", "0.4", "0.3", "0.2" @@ -165,6 +170,7 @@ "0.109" ], "light": [ + "0.5", "0.4", "0.3", "0.2" @@ -190,6 +196,7 @@ "0.109" ], "light": [ + "0.5", "0.4", "0.3", "0.2" @@ -215,6 +222,7 @@ "0.109" ], "light": [ + "0.5", "0.4", "0.3", "0.2" @@ -240,6 +248,7 @@ "0.109" ], "light": [ + "0.5", "0.4", "0.3", "0.2" @@ -265,6 +274,7 @@ "0.109" ], "light": [ + "0.5", "0.4", "0.3", "0.2" @@ -290,6 +300,7 @@ "0.109" ], "light": [ + "0.5", "0.4", "0.3", "0.2" From 0065f4d6c0e977798b69303a1465214d145bda1e Mon Sep 17 00:00:00 2001 From: devchenyan Date: Thu, 19 Jun 2025 10:44:13 +0800 Subject: [PATCH 05/29] feat: Identify and prompt for multisig transaction (#3370) * feat: Identify and prompt for multisig transaction * fix: error message --- .../src/exceptions/transaction.ts | 7 ++++++ packages/neuron-wallet/src/locales/ar.ts | 6 +++++ packages/neuron-wallet/src/locales/en.ts | 7 ++++++ packages/neuron-wallet/src/locales/es.ts | 7 ++++++ packages/neuron-wallet/src/locales/fr.ts | 7 ++++++ packages/neuron-wallet/src/locales/zh-tw.ts | 6 +++++ packages/neuron-wallet/src/locales/zh.ts | 6 +++++ .../src/services/transaction-sender.ts | 24 +++++++++++++++---- 8 files changed, 65 insertions(+), 5 deletions(-) diff --git a/packages/neuron-wallet/src/exceptions/transaction.ts b/packages/neuron-wallet/src/exceptions/transaction.ts index 33152ace76..d3fe707419 100644 --- a/packages/neuron-wallet/src/exceptions/transaction.ts +++ b/packages/neuron-wallet/src/exceptions/transaction.ts @@ -24,6 +24,13 @@ export class TransactionInputParameterMiss extends Error { } } +export class UnrecognizedLockScript extends Error { + public code = 117 + constructor(message: string) { + super(message) + } +} + export default { TransactionNotFound, CapacityTooSmall, diff --git a/packages/neuron-wallet/src/locales/ar.ts b/packages/neuron-wallet/src/locales/ar.ts index 2f00419a5c..5138acb4f5 100644 --- a/packages/neuron-wallet/src/locales/ar.ts +++ b/packages/neuron-wallet/src/locales/ar.ts @@ -228,6 +228,12 @@ export default { ignore: 'تجاهل واستمرار', }, }, + 'unrecognized-multisig-transaction': { + message: 'هذه معاملة متعددة التوقيعات. يرجى الموافقة عليها من عنوان التوقيع المتعدد باستخدام المحفظة المناسبة.', + buttons: { + cancel: 'إلغاء', + }, + }, }, prompt: { password: { diff --git a/packages/neuron-wallet/src/locales/en.ts b/packages/neuron-wallet/src/locales/en.ts index 842c05b5d6..a05c9e463b 100644 --- a/packages/neuron-wallet/src/locales/en.ts +++ b/packages/neuron-wallet/src/locales/en.ts @@ -230,6 +230,13 @@ export default { ignore: 'Ignore and continue', }, }, + 'unrecognized-multisig-transaction': { + message: + 'This is a multisig transaction. Please approve it from the multisig address using the appropriate wallet. ', + buttons: { + cancel: 'Cancel', + }, + }, }, prompt: { password: { diff --git a/packages/neuron-wallet/src/locales/es.ts b/packages/neuron-wallet/src/locales/es.ts index 21a53720b1..48e51295c9 100644 --- a/packages/neuron-wallet/src/locales/es.ts +++ b/packages/neuron-wallet/src/locales/es.ts @@ -233,6 +233,13 @@ export default { ignore: 'Ignorar y continuar', }, }, + 'unrecognized-multisig-transaction': { + message: + 'Esta es una transacción multisignatura. Por favor, apróbala desde la dirección multisignatura utilizando la billetera correspondiente.', + buttons: { + cancel: 'Cancelar', + }, + }, }, prompt: { password: { diff --git a/packages/neuron-wallet/src/locales/fr.ts b/packages/neuron-wallet/src/locales/fr.ts index c87442f556..e8ac3b4420 100644 --- a/packages/neuron-wallet/src/locales/fr.ts +++ b/packages/neuron-wallet/src/locales/fr.ts @@ -234,6 +234,13 @@ export default { ignore: 'Ignorer et continuer', }, }, + 'unrecognized-multisig-transaction': { + message: + "Il s'agit d'une transaction multisignature. Veuillez l'approuver depuis l'adresse multisignature en utilisant le portefeuille approprié.", + buttons: { + cancel: 'Annuler', + }, + }, }, prompt: { password: { diff --git a/packages/neuron-wallet/src/locales/zh-tw.ts b/packages/neuron-wallet/src/locales/zh-tw.ts index 7567c2f8d3..ffbec8ce4b 100644 --- a/packages/neuron-wallet/src/locales/zh-tw.ts +++ b/packages/neuron-wallet/src/locales/zh-tw.ts @@ -216,6 +216,12 @@ export default { ignore: '忽略並繼續', }, }, + 'unrecognized-multisig-transaction': { + message: '這是一筆多簽交易。請使用對應的錢包在多簽地址中批准該交易。', + buttons: { + cancel: '取消', + }, + }, }, prompt: { password: { diff --git a/packages/neuron-wallet/src/locales/zh.ts b/packages/neuron-wallet/src/locales/zh.ts index 52b09f1210..5062f023ae 100644 --- a/packages/neuron-wallet/src/locales/zh.ts +++ b/packages/neuron-wallet/src/locales/zh.ts @@ -217,6 +217,12 @@ export default { ignore: '忽略并继续', }, }, + 'unrecognized-multisig-transaction': { + message: '这是一笔多签交易。请使用对应的钱包在多签地址中批准该交易。', + buttons: { + cancel: '取消', + }, + }, }, prompt: { password: { diff --git a/packages/neuron-wallet/src/services/transaction-sender.ts b/packages/neuron-wallet/src/services/transaction-sender.ts index dc2000bc51..847ea40dfc 100644 --- a/packages/neuron-wallet/src/services/transaction-sender.ts +++ b/packages/neuron-wallet/src/services/transaction-sender.ts @@ -32,6 +32,7 @@ import { NoMatchAddressForSign, SignTransactionFailed, TransactionIsNotCommittedYet, + UnrecognizedLockScript, } from '../exceptions' import AssetAccountInfo from '../models/asset-account-info' import MultisigConfigModel from '../models/multisig-config' @@ -206,19 +207,32 @@ export default class TransactionSender { } catch (error) { const BLOCK_UNRECOGNIZED = 0 const IGNORE_UNRECOGNIZED_AND_CONTINUE = 1 + + let message = t('messageBox.unrecognized-lock-script.message') + let buttons = [ + t('messageBox.unrecognized-lock-script.buttons.cancel'), + t('messageBox.unrecognized-lock-script.buttons.ignore'), + ] + + const input = tx.inputs.find(input => input.lockHash === lockHash) + if (input && input.lock && SystemScriptInfo.isMultiSignCodeHash(input.lock.codeHash)) { + message = t('messageBox.unrecognized-multisig-transaction.message') + buttons = [t('messageBox.unrecognized-multisig-transaction.buttons.cancel')] + } + const res = await dialog.showMessageBox({ type: 'warning', - message: t('messageBox.unrecognized-lock-script.message'), - buttons: [ - t('messageBox.unrecognized-lock-script.buttons.cancel'), - t('messageBox.unrecognized-lock-script.buttons.ignore'), - ], + message, + buttons, defaultId: BLOCK_UNRECOGNIZED, cancelId: IGNORE_UNRECOGNIZED_AND_CONTINUE, }) if (res.response === IGNORE_UNRECOGNIZED_AND_CONTINUE) { continue } + if (res.response === BLOCK_UNRECOGNIZED) { + throw new UnrecognizedLockScript(message) + } throw error } From 1a2bba93a59b68c40d1b692565c1727b7056b232 Mon Sep 17 00:00:00 2001 From: devchenyan Date: Tue, 1 Jul 2025 15:21:16 +0800 Subject: [PATCH 06/29] fix: Full node in mainnet can not change data path (#3382) --- packages/neuron-ui/package.json | 2 +- packages/neuron-wallet/package.json | 2 +- yarn.lock | 8 ++++---- 3 files changed, 6 insertions(+), 6 deletions(-) diff --git a/packages/neuron-ui/package.json b/packages/neuron-ui/package.json index 3cc09140b0..df93f0b008 100644 --- a/packages/neuron-ui/package.json +++ b/packages/neuron-ui/package.json @@ -95,7 +95,7 @@ "@vitejs/plugin-react": "4.5.0", "@wojtekmaj/enzyme-adapter-react-17": "0.8.0", "babel-jest": "25.5.1", - "electron": "36.3.1", + "electron": "36.6.0", "enzyme": "3.11.0", "enzyme-adapter-react-16": "1.15.8", "eslint-config-airbnb": "19.0.4", diff --git a/packages/neuron-wallet/package.json b/packages/neuron-wallet/package.json index 1cfc1fce61..5495d03fde 100644 --- a/packages/neuron-wallet/package.json +++ b/packages/neuron-wallet/package.json @@ -88,7 +88,7 @@ "@types/sqlite3": "3.1.11", "@types/uuid": "8.3.4", "devtron": "1.4.0", - "electron": "36.3.1", + "electron": "36.6.0", "electron-builder": "24.13.3", "electron-devtools-installer": "3.2.1", "jest-when": "3.6.0", diff --git a/yarn.lock b/yarn.lock index cb81a668d7..ba1903e5a3 100644 --- a/yarn.lock +++ b/yarn.lock @@ -7862,10 +7862,10 @@ electron-window-state@5.0.3: jsonfile "^4.0.0" mkdirp "^0.5.1" -electron@36.3.1: - version "36.3.1" - resolved "https://registry.yarnpkg.com/electron/-/electron-36.3.1.tgz#12a8c1b1cd9163a4bd0cb60f89816243b26ab788" - integrity sha512-LeOZ+tVahmctHaAssLCGRRUa2SAO09GXua3pKdG+WzkbSDMh+3iOPONNVPTqGp8HlWnzGj4r6mhsIbM2RgH+eQ== +electron@36.6.0: + version "36.6.0" + resolved "https://registry.yarnpkg.com/electron/-/electron-36.6.0.tgz#12070efb0ac8c87dc4dc448eb018c85b15e66726" + integrity sha512-Tkkw4udDADEWKdbhzckt2CS0gwDTXwZUb2JWxX01HJXAeb8SBlTdQUtxUiAwIIWe0suGuot+uBs1bDPz931A6w== dependencies: "@electron/get" "^2.0.0" "@types/node" "^22.7.7" From e2daff41edd7ab3e90f6c6dd2e879ae39cda47f7 Mon Sep 17 00:00:00 2001 From: "github-actions[bot]" <41898282+github-actions[bot]@users.noreply.github.com> Date: Wed, 2 Jul 2025 03:15:44 +0000 Subject: [PATCH 07/29] Merge released refs/tags/v0.202.1 into develop (#3387) * Update ckb client versions (#3383) Co-authored-by: Keith-CY <7271329+Keith-CY@users.noreply.github.com> * chore: Update ckb node assume valid target (#3384) Co-authored-by: github-actions[bot] <41898282+github-actions[bot]@users.noreply.github.com> * chore: update versions and changelogs --------- Co-authored-by: github-actions[bot] <41898282+github-actions[bot]@users.noreply.github.com> Co-authored-by: Keith-CY <7271329+Keith-CY@users.noreply.github.com> Co-authored-by: Keith --- .ckb-light-version | 2 +- CHANGELOG.md | 14 ++++++++++++++ lerna.json | 2 +- package.json | 2 +- packages/neuron-ui/package.json | 2 +- packages/neuron-wallet/.env | 4 ++-- packages/neuron-wallet/package.json | 4 ++-- 7 files changed, 22 insertions(+), 8 deletions(-) diff --git a/.ckb-light-version b/.ckb-light-version index b043aa648f..992ac75e22 100644 --- a/.ckb-light-version +++ b/.ckb-light-version @@ -1 +1 @@ -v0.5.0 +v0.5.1 diff --git a/CHANGELOG.md b/CHANGELOG.md index 2089648a4e..ba8fbd3b6a 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -1,3 +1,17 @@ +# 0.202.1 (2025-07-02) + +### CKB Node & Light Client + +- [CKB@v0.202.0](https://github.com/nervosnetwork/ckb/releases/tag/v0.202.0) was released on Jun. 12th, 2025. This version of CKB node is now bundled and preconfigured in Neuron. +- [CKB Light Client@v0.5.1](https://github.com/nervosnetwork/ckb-light-client/releases/tag/v0.5.1) was released on Jul. 1st, 2025. This version of CKB Light Client is now bundled and preconfigured in Neuron + +### Assumed valid target + +Block before `0x49d2e56c7b595ebb61d1fee94b2814e83942064ce3ff91a175adbec0c14d26f7`(at height `16,588,228`) will be skipped in validation.(https://github.com/nervosnetwork/neuron/pull/3384) + +**Full Changelog**: https://github.com/nervosnetwork/neuron/compare/v0.202.0...v0.202.1 + + # 0.202.0 (2025-06-25) ### Caveat diff --git a/lerna.json b/lerna.json index 145b2d4a66..4806c3de53 100644 --- a/lerna.json +++ b/lerna.json @@ -2,7 +2,7 @@ "packages": [ "packages/*" ], - "version": "0.202.0", + "version": "0.202.1", "npmClient": "yarn", "$schema": "node_modules/lerna/schemas/lerna-schema.json" } diff --git a/package.json b/package.json index 6cbe4f3f58..b03acaf9bf 100644 --- a/package.json +++ b/package.json @@ -2,7 +2,7 @@ "name": "neuron", "productName": "Neuron", "description": "CKB Neuron Wallet", - "version": "0.202.0", + "version": "0.202.1", "private": true, "author": { "name": "Nervos Core Dev", diff --git a/packages/neuron-ui/package.json b/packages/neuron-ui/package.json index df93f0b008..324bcb8712 100644 --- a/packages/neuron-ui/package.json +++ b/packages/neuron-ui/package.json @@ -1,6 +1,6 @@ { "name": "neuron-ui", - "version": "0.202.0", + "version": "0.202.1", "private": true, "author": { "name": "Nervos Core Dev", diff --git a/packages/neuron-wallet/.env b/packages/neuron-wallet/.env index 344b397430..c0033ef226 100644 --- a/packages/neuron-wallet/.env +++ b/packages/neuron-wallet/.env @@ -121,6 +121,6 @@ MAINNET_MULTISIG_TXHASH=0x6888aa39ab30c570c2c30d9d5684d3769bf77265a7973211a3c087 TESTNET_MULTISIG_TXHASH=0x2eefdeb21f3a3edf697c28a52601b4419806ed60bb427420455cc29a090b26d5 # CKB NODE OPTIONS -CKB_NODE_ASSUME_VALID_TARGET='0x6676e2c4ef75afd8ef00a61d21a230fbe83c672e6a89dc60dcb41879884979a1' -CKB_NODE_ASSUME_VALID_TARGET_BLOCK_NUMBER=16517698 +CKB_NODE_ASSUME_VALID_TARGET='0x49d2e56c7b595ebb61d1fee94b2814e83942064ce3ff91a175adbec0c14d26f7' +CKB_NODE_ASSUME_VALID_TARGET_BLOCK_NUMBER=16588228 CKB_NODE_DATA_SIZE=126 diff --git a/packages/neuron-wallet/package.json b/packages/neuron-wallet/package.json index 5495d03fde..6844535110 100644 --- a/packages/neuron-wallet/package.json +++ b/packages/neuron-wallet/package.json @@ -3,7 +3,7 @@ "productName": "Neuron", "description": "CKB Neuron Wallet", "homepage": "https://www.nervos.org/", - "version": "0.202.0", + "version": "0.202.1", "private": true, "author": { "name": "Nervos Core Dev", @@ -92,7 +92,7 @@ "electron-builder": "24.13.3", "electron-devtools-installer": "3.2.1", "jest-when": "3.6.0", - "neuron-ui": "0.202.0", + "neuron-ui": "0.202.1", "typescript": "5.3.3" } } From 857e08f49af76d9b3c855287e24bda72dc1c51a6 Mon Sep 17 00:00:00 2001 From: "dependabot[bot]" <49699333+dependabot[bot]@users.noreply.github.com> Date: Thu, 17 Jul 2025 15:52:32 +0800 Subject: [PATCH 08/29] chore(deps): bump pbkdf2 from 3.1.2 to 3.1.3 (#3379) Bumps [pbkdf2](https://github.com/crypto-browserify/pbkdf2) from 3.1.2 to 3.1.3. - [Changelog](https://github.com/browserify/pbkdf2/blob/master/CHANGELOG.md) - [Commits](https://github.com/crypto-browserify/pbkdf2/compare/v3.1.2...v3.1.3) --- updated-dependencies: - dependency-name: pbkdf2 dependency-version: 3.1.3 dependency-type: indirect ... Signed-off-by: dependabot[bot] Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com> --- yarn.lock | 149 +++++++++++++++++++++++++++++++++++++++++++++++++----- 1 file changed, 135 insertions(+), 14 deletions(-) diff --git a/yarn.lock b/yarn.lock index ba1903e5a3..ee0c3be18e 100644 --- a/yarn.lock +++ b/yarn.lock @@ -5710,6 +5710,13 @@ available-typed-arrays@^1.0.5: resolved "https://registry.yarnpkg.com/available-typed-arrays/-/available-typed-arrays-1.0.5.tgz#92f95616501069d07d10edb2fc37d3e1c65123b7" integrity sha512-DMD0KiN46eipeziST1LPP/STfDU0sufISXmjSgvVsoU2tqxctQeASejWcfNtxYKqETM1UxQ8sp2OrSBWpHY6sw== +available-typed-arrays@^1.0.7: + version "1.0.7" + resolved "https://registry.yarnpkg.com/available-typed-arrays/-/available-typed-arrays-1.0.7.tgz#a5cc375d6a03c2efc87a553f3e0b1522def14846" + integrity sha512-wvUjBtSGN7+7SjNpq/9M2Tg350UZD3q62IFZLbRAR1bSMlCo1ZaeW+BJ+D090e4hIIZLBcTDWe4Mh4jvUDajzQ== + dependencies: + possible-typed-array-names "^1.0.0" + axe-core@^4.6.2: version "4.7.2" resolved "https://registry.yarnpkg.com/axe-core/-/axe-core-4.7.2.tgz#040a7342b20765cb18bb50b628394c21bccc17a0" @@ -6381,7 +6388,7 @@ cacheable-request@^7.0.2: normalize-url "^6.0.1" responselike "^2.0.0" -call-bind-apply-helpers@^1.0.1, call-bind-apply-helpers@^1.0.2: +call-bind-apply-helpers@^1.0.0, call-bind-apply-helpers@^1.0.1, call-bind-apply-helpers@^1.0.2: version "1.0.2" resolved "https://registry.yarnpkg.com/call-bind-apply-helpers/-/call-bind-apply-helpers-1.0.2.tgz#4b5428c222be985d79c3d82657479dbe0b59b2d6" integrity sha512-Sp1ablJ0ivDkSzjcaJdxEunN5/XvksFJ2sMBFfq6x0ryhQV/2b/KwFe21cMpmHtPOSij8K99/wSfoEuTObmuMQ== @@ -6406,7 +6413,17 @@ call-bind@^1.0.4, call-bind@^1.0.5: get-intrinsic "^1.2.1" set-function-length "^1.1.1" -call-bound@^1.0.2: +call-bind@^1.0.8: + version "1.0.8" + resolved "https://registry.yarnpkg.com/call-bind/-/call-bind-1.0.8.tgz#0736a9660f537e3388826f440d5ec45f744eaa4c" + integrity sha512-oKlSFMcMwpUg2ednkhQ454wfWiU/ul3CkJe/PEHcTKuiX6RpbehUiFMXu13HalGZxfUwCQzZG747YXBn1im9ww== + dependencies: + call-bind-apply-helpers "^1.0.0" + es-define-property "^1.0.0" + get-intrinsic "^1.2.4" + set-function-length "^1.2.2" + +call-bound@^1.0.2, call-bound@^1.0.3, call-bound@^1.0.4: version "1.0.4" resolved "https://registry.yarnpkg.com/call-bound/-/call-bound-1.0.4.tgz#238de935d2a2a692928c538c7ccfa91067fd062a" integrity sha512-+ys997U96po4Kx/ABpBCqhA9EuxJaQWDQg7295H4hBphv3IZg0boBKuwYpt4YXp6MZ5AmZQnU/tyMTlRpaSejg== @@ -7098,7 +7115,7 @@ create-ecdh@^4.0.4: bn.js "^4.1.0" elliptic "^6.5.3" -create-hash@^1.1.0, create-hash@^1.1.2, create-hash@^1.2.0: +create-hash@^1.1.0, create-hash@^1.2.0: version "1.2.0" resolved "https://registry.yarnpkg.com/create-hash/-/create-hash-1.2.0.tgz#889078af11a63756bcfb59bd221996be3a9ef196" integrity sha512-z00bCGNHDG8mHAkP7CtT1qVu+bFQUPjYq/4Iv3C3kWjTFV10zIjfSoeqXo9Asws8gwSHDGj/hl2u4OGIjapeCg== @@ -7109,7 +7126,17 @@ create-hash@^1.1.0, create-hash@^1.1.2, create-hash@^1.2.0: ripemd160 "^2.0.1" sha.js "^2.4.0" -create-hmac@^1.1.4, create-hmac@^1.1.7: +create-hash@~1.1.3: + version "1.1.3" + resolved "https://registry.yarnpkg.com/create-hash/-/create-hash-1.1.3.tgz#606042ac8b9262750f483caddab0f5819172d8fd" + integrity sha512-snRpch/kwQhcdlnZKYanNF1m0RDlrCdSKQaH87w1FCFPVPNCQ/Il9QJKAX2jVBZddRdaHBMC+zXa9Gw9tmkNUA== + dependencies: + cipher-base "^1.0.1" + inherits "^2.0.1" + ripemd160 "^2.0.0" + sha.js "^2.4.0" + +create-hmac@^1.1.7: version "1.1.7" resolved "https://registry.yarnpkg.com/create-hmac/-/create-hmac-1.1.7.tgz#69170c78b3ab957147b2b8b04572e47ead2243ff" integrity sha512-MJG9liiZ+ogc4TzUwuvbER1JRdgvUFSB5+VR/g5h82fGaIRWMWddtKBHi7/sVhfjQZ6SehlyhvQYrcYkaUIpLg== @@ -7445,6 +7472,15 @@ define-data-property@^1.0.1, define-data-property@^1.1.1: gopd "^1.0.1" has-property-descriptors "^1.0.0" +define-data-property@^1.1.4: + version "1.1.4" + resolved "https://registry.yarnpkg.com/define-data-property/-/define-data-property-1.1.4.tgz#894dc141bb7d3060ae4366f6a0107e68fbe48c5e" + integrity sha512-rBMvIzlpA8v6E+SJZoo++HAYqsLrkg7MSfIinMPFhmkorw7X+dOXVJQs+QT69zGkzMyfDnIMN2Wid1+NbL3T+A== + dependencies: + es-define-property "^1.0.0" + es-errors "^1.3.0" + gopd "^1.0.1" + define-lazy-prop@^2.0.0: version "2.0.0" resolved "https://registry.yarnpkg.com/define-lazy-prop/-/define-lazy-prop-2.0.0.tgz#3f7ae421129bcaaac9bc74905c98a0009ec9ee7f" @@ -8136,7 +8172,7 @@ es-array-method-boxes-properly@^1.0.0: resolved "https://registry.yarnpkg.com/es-array-method-boxes-properly/-/es-array-method-boxes-properly-1.0.0.tgz#873f3e84418de4ee19c5be752990b2e44718d09e" integrity sha512-wd6JXUmyHmt8T5a2xreUwKcGPq6f1f+WwIJkijUqiGcJz1qqnZgP6XIK+QyIWU5lT7imeNxUll48bziG+TSYcA== -es-define-property@^1.0.1: +es-define-property@^1.0.0, es-define-property@^1.0.1: version "1.0.1" resolved "https://registry.yarnpkg.com/es-define-property/-/es-define-property-1.0.1.tgz#983eb2f9a6724e9303f61addf011c72e09e0b0fa" integrity sha512-e3nRfgfUZ4rNGL232gUgX06QNyyez04KdjFrF+LTRoOXmrOgFKDg4BCdsjW8EnT69eqdYGmRpJwiPVYNrCaW3g== @@ -8887,6 +8923,13 @@ for-each@^0.3.3: dependencies: is-callable "^1.1.3" +for-each@^0.3.5: + version "0.3.5" + resolved "https://registry.yarnpkg.com/for-each/-/for-each-0.3.5.tgz#d650688027826920feeb0af747ee7b9421a41d47" + integrity sha512-dKx12eRCVIzqCxFGplyFKJMPvLEWgmNtUrpTiJIR5u97zEhRG8ySrtboPHZXx7daLxQVrl643cTzbab2tkQjxg== + dependencies: + is-callable "^1.2.7" + for-in@^1.0.2: version "1.0.2" resolved "https://registry.yarnpkg.com/for-in/-/for-in-1.0.2.tgz#81068d295a8142ec0ac726c6e2200c30fb6d5e80" @@ -9118,7 +9161,7 @@ get-intrinsic@^1.2.1, get-intrinsic@^1.2.2: has-symbols "^1.0.3" hasown "^2.0.0" -get-intrinsic@^1.2.5, get-intrinsic@^1.2.6, get-intrinsic@^1.3.0: +get-intrinsic@^1.2.4, get-intrinsic@^1.2.5, get-intrinsic@^1.2.6, get-intrinsic@^1.3.0: version "1.3.0" resolved "https://registry.yarnpkg.com/get-intrinsic/-/get-intrinsic-1.3.0.tgz#743f0e3b6964a93a5491ed1bffaae054d7f98d01" integrity sha512-9fSjSaos/fRIVIp+xSJlE6lfwhES7LNtKaCBIamHsjr2na1BiABJPo0mOjjz8GJDURarmCPGqaiVg5mfjb98CQ== @@ -9446,6 +9489,13 @@ has-property-descriptors@^1.0.0: dependencies: get-intrinsic "^1.1.1" +has-property-descriptors@^1.0.2: + version "1.0.2" + resolved "https://registry.yarnpkg.com/has-property-descriptors/-/has-property-descriptors-1.0.2.tgz#963ed7d071dc7bf5f084c5bfbe0d1b6222586854" + integrity sha512-55JNKuIW+vq4Ke1BjOTjM2YctQIvCT7GFzHwmfZPGo5wnrgkid0YQtnAleFSqumZm4az3n2BS+erby5ipJdgrg== + dependencies: + es-define-property "^1.0.0" + has-proto@^1.0.1: version "1.0.1" resolved "https://registry.yarnpkg.com/has-proto/-/has-proto-1.0.1.tgz#1885c1305538958aff469fef37937c22795408e0" @@ -9518,6 +9568,13 @@ has@^1.0.0, has@^1.0.3: dependencies: function-bind "^1.1.1" +hash-base@^2.0.0: + version "2.0.2" + resolved "https://registry.yarnpkg.com/hash-base/-/hash-base-2.0.2.tgz#66ea1d856db4e8a5470cadf6fce23ae5244ef2e1" + integrity sha512-0TROgQ1/SxE6KmxWSvXHvRj90/Xo1JvZShofnYF+f6ZsGtR4eES7WfrQzPalmyagfKZCXpVnitiRebZulWsbiw== + dependencies: + inherits "^2.0.1" + hash-base@^3.0.0: version "3.1.0" resolved "https://registry.yarnpkg.com/hash-base/-/hash-base-3.1.0.tgz#55c381d9e06e1d2997a883b4a3fddfe7f0d3af33" @@ -10322,6 +10379,13 @@ is-typed-array@^1.1.12: dependencies: which-typed-array "^1.1.11" +is-typed-array@^1.1.14: + version "1.1.15" + resolved "https://registry.yarnpkg.com/is-typed-array/-/is-typed-array-1.1.15.tgz#4bfb4a45b61cee83a5a46fba778e4e8d59c0ce0b" + integrity sha512-p3EcsicXjit7SaskXHs1hA91QxgTw46Fv6EFKKGS5DRFLD8yKnohjF3hxoju94b/OcMZoQukzpPpBE9uLVKzgQ== + dependencies: + which-typed-array "^1.1.16" + is-typedarray@^1.0.0: version "1.0.0" resolved "https://registry.yarnpkg.com/is-typedarray/-/is-typedarray-1.0.0.tgz#e479c80858df0c1b11ddda6940f96011fcda4a9a" @@ -13348,15 +13412,16 @@ pathval@^2.0.0: integrity sha512-vE7JKRyES09KiunauX7nd2Q9/L7lhok4smP9RZTDeD4MVs72Dp2qNFVz39Nz5a0FVEW0BJR6C0DYrq6unoziZA== pbkdf2@^3.1.2: - version "3.1.2" - resolved "https://registry.yarnpkg.com/pbkdf2/-/pbkdf2-3.1.2.tgz#dd822aa0887580e52f1a039dc3eda108efae3075" - integrity sha512-iuh7L6jA7JEGu2WxDwtQP1ddOpaJNC4KlDEFfdQajSGgGPNi4OyDc2R7QnbY2bR9QjBVGwgvTdNJZoE7RaxUMA== + version "3.1.3" + resolved "https://registry.yarnpkg.com/pbkdf2/-/pbkdf2-3.1.3.tgz#8be674d591d65658113424592a95d1517318dd4b" + integrity sha512-wfRLBZ0feWRhCIkoMB6ete7czJcnNnqRpcoWQBLqatqXXmelSRqfdDK4F3u9T2s2cXas/hQJcryI/4lAL+XTlA== dependencies: - create-hash "^1.1.2" - create-hmac "^1.1.4" - ripemd160 "^2.0.1" - safe-buffer "^5.0.1" - sha.js "^2.4.8" + create-hash "~1.1.3" + create-hmac "^1.1.7" + ripemd160 "=2.0.1" + safe-buffer "^5.2.1" + sha.js "^2.4.11" + to-buffer "^1.2.0" pend@~1.2.0: version "1.2.0" @@ -13461,6 +13526,11 @@ posix-character-classes@^0.1.0: resolved "https://registry.yarnpkg.com/posix-character-classes/-/posix-character-classes-0.1.1.tgz#01eac0fe3b5af71a2a6c02feabb8c1fef7e00eab" integrity sha512-xTgYBc3fuo7Yt7JbiuFxSYGToMoz8fLoE6TC9Wx1P/u+LfeThMOAqmuyECnlBaaJb+u1m9hHiXUEtwW4OzfUJg== +possible-typed-array-names@^1.0.0: + version "1.1.0" + resolved "https://registry.yarnpkg.com/possible-typed-array-names/-/possible-typed-array-names-1.1.0.tgz#93e3582bc0e5426586d9d07b79ee40fc841de4ae" + integrity sha512-/+5VFTchJDoVj3bhoqi6UeymcD00DAwb1nJwamzPvHEszJ4FpF6SNNbUbOS8yI56qHzdV8eK0qEfOSiodkTdxg== + postcss-attribute-case-insensitive@^7.0.1: version "7.0.1" resolved "https://registry.yarnpkg.com/postcss-attribute-case-insensitive/-/postcss-attribute-case-insensitive-7.0.1.tgz#0c4500e3bcb2141848e89382c05b5a31c23033a3" @@ -14558,6 +14628,14 @@ rimraf@^4.4.1: dependencies: glob "^9.2.0" +ripemd160@=2.0.1: + version "2.0.1" + resolved "https://registry.yarnpkg.com/ripemd160/-/ripemd160-2.0.1.tgz#0f4584295c53a3628af7e6d79aca21ce57d1c6e7" + integrity sha512-J7f4wutN8mdbV08MJnXibYpCOPHR+yzy+iQ/AsjMv2j8cLavQ8VGagDFUwwTAdF8FmRKVeNpbTTEwNHCW1g94w== + dependencies: + hash-base "^2.0.0" + inherits "^2.0.1" + ripemd160@^2.0.0, ripemd160@^2.0.1: version "2.0.2" resolved "https://registry.yarnpkg.com/ripemd160/-/ripemd160-2.0.2.tgz#a1c1a6f624751577ba5d07914cbc92850585890c" @@ -14830,6 +14908,18 @@ set-function-length@^1.1.1: gopd "^1.0.1" has-property-descriptors "^1.0.0" +set-function-length@^1.2.2: + version "1.2.2" + resolved "https://registry.yarnpkg.com/set-function-length/-/set-function-length-1.2.2.tgz#aac72314198eaed975cf77b2c3b6b880695e5449" + integrity sha512-pgRc4hJ4/sNjWCSS9AmnS40x3bNMDTknHgL5UaMBTMyJnU90EgWh1Rz+MC9eFu4BuN/UwZjKQuY/1v3rM7HMfg== + dependencies: + define-data-property "^1.1.4" + es-errors "^1.3.0" + function-bind "^1.1.2" + get-intrinsic "^1.2.4" + gopd "^1.0.1" + has-property-descriptors "^1.0.2" + set-function-name@^2.0.0: version "2.0.1" resolved "https://registry.yarnpkg.com/set-function-name/-/set-function-name-2.0.1.tgz#12ce38b7954310b9f61faa12701620a0c882793a" @@ -15836,6 +15926,15 @@ tmpl@1.0.5: resolved "https://registry.yarnpkg.com/tmpl/-/tmpl-1.0.5.tgz#8683e0b902bb9c20c4f726e3c0b69f36518c07cc" integrity sha512-3f0uOEAQwIqGuWW2MVzYg8fV/QNnc/IpuJNG837rLuczAaLVHslWHZQj4IGiEl5Hs3kkbhwL9Ab7Hrsmuj+Smw== +to-buffer@^1.2.0: + version "1.2.1" + resolved "https://registry.yarnpkg.com/to-buffer/-/to-buffer-1.2.1.tgz#2ce650cdb262e9112a18e65dc29dcb513c8155e0" + integrity sha512-tB82LpAIWjhLYbqjx3X4zEeHN6M8CiuOEy2JY8SEQVdYRe3CCHOFaqrBW1doLDrfpWhplcW7BL+bO3/6S3pcDQ== + dependencies: + isarray "^2.0.5" + safe-buffer "^5.2.1" + typed-array-buffer "^1.0.3" + to-fast-properties@^2.0.0: version "2.0.0" resolved "https://registry.yarnpkg.com/to-fast-properties/-/to-fast-properties-2.0.0.tgz#dc5e698cbd079265bc73e0377681a4e4e83f616e" @@ -16085,6 +16184,15 @@ typed-array-buffer@^1.0.0: get-intrinsic "^1.2.1" is-typed-array "^1.1.10" +typed-array-buffer@^1.0.3: + version "1.0.3" + resolved "https://registry.yarnpkg.com/typed-array-buffer/-/typed-array-buffer-1.0.3.tgz#a72395450a4869ec033fd549371b47af3a2ee536" + integrity sha512-nAYYwfY3qnzX30IkA6AQZjVbtK6duGontcQm1WSG1MD94YLqK0515GNApXkoxKOWMusVssAHWLh9SeaoefYFGw== + dependencies: + call-bound "^1.0.3" + es-errors "^1.3.0" + is-typed-array "^1.1.14" + typed-array-byte-length@^1.0.0: version "1.0.0" resolved "https://registry.yarnpkg.com/typed-array-byte-length/-/typed-array-byte-length-1.0.0.tgz#d787a24a995711611fb2b87a4052799517b230d0" @@ -16700,6 +16808,19 @@ which-typed-array@^1.1.11, which-typed-array@^1.1.13: gopd "^1.0.1" has-tostringtag "^1.0.0" +which-typed-array@^1.1.16: + version "1.1.19" + resolved "https://registry.yarnpkg.com/which-typed-array/-/which-typed-array-1.1.19.tgz#df03842e870b6b88e117524a4b364b6fc689f956" + integrity sha512-rEvr90Bck4WZt9HHFC4DJMsjvu7x+r6bImz0/BrbWb7A2djJ8hnZMrWnHo9F8ssv0OMErasDhftrfROTyqSDrw== + dependencies: + available-typed-arrays "^1.0.7" + call-bind "^1.0.8" + call-bound "^1.0.4" + for-each "^0.3.5" + get-proto "^1.0.1" + gopd "^1.2.0" + has-tostringtag "^1.0.2" + which-typed-array@^1.1.2, which-typed-array@^1.1.9: version "1.1.9" resolved "https://registry.yarnpkg.com/which-typed-array/-/which-typed-array-1.1.9.tgz#307cf898025848cf995e795e8423c7f337efbde6" From a632986cb7732dd8dc3c0c29864d24f3588a6ad4 Mon Sep 17 00:00:00 2001 From: devchenyan Date: Mon, 11 Aug 2025 15:33:23 +0800 Subject: [PATCH 09/29] feat: Optimize receive address handling for hardware wallets (#3394) --- .../neuron-wallet/src/services/tx/transaction-generator.ts | 5 ++++- 1 file changed, 4 insertions(+), 1 deletion(-) diff --git a/packages/neuron-wallet/src/services/tx/transaction-generator.ts b/packages/neuron-wallet/src/services/tx/transaction-generator.ts index b99c02663a..9e0a1c6857 100644 --- a/packages/neuron-wallet/src/services/tx/transaction-generator.ts +++ b/packages/neuron-wallet/src/services/tx/transaction-generator.ts @@ -268,7 +268,10 @@ export class TransactionGenerator { tx.addOutput(output) } - tx.outputs = ArrayUtils.shuffle(tx.outputs) + const wallet = WalletService.getInstance().getCurrent() + if (!wallet?.isHardware()) { + tx.outputs = ArrayUtils.shuffle(tx.outputs) + } tx.outputsData = tx.outputs.map(output => output.data || '0x') tx.hash = tx.computeHash() From c946f6694db1bb833b355e949643c7c1977b1095 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=E9=83=91=E5=B7=9E?= Date: Tue, 26 Aug 2025 14:55:35 +0800 Subject: [PATCH 10/29] fix: compatible with "Ledger Nano S+" (#3402) Co-authored-by: zhengzhou --- packages/neuron-ui/src/locales/en.json | 2 +- packages/neuron-wallet/src/services/hardware/ledger.ts | 6 +++++- 2 files changed, 6 insertions(+), 2 deletions(-) diff --git a/packages/neuron-ui/src/locales/en.json b/packages/neuron-ui/src/locales/en.json index 0689e923a3..c083028797 100644 --- a/packages/neuron-ui/src/locales/en.json +++ b/packages/neuron-ui/src/locales/en.json @@ -1282,7 +1282,7 @@ "external-node-detected-dialog": { "title": "Detected external node", "body-tips-without-network": "You have selected the internal node but started the external node, if you want to continue to use an external node, please add a new network.", - "body-tips-with-network": "You have currently selected an internal node but started an external node, if you need to continu using the external node please switch to another external network or add a new network.", + "body-tips-with-network": "You have currently selected an internal node but started an external node, if you need to continue using the external node please switch to another external network or add a new network.", "add-network": "Add Network", "ignore-external-node": "Ignore external node" }, diff --git a/packages/neuron-wallet/src/services/hardware/ledger.ts b/packages/neuron-wallet/src/services/hardware/ledger.ts index c7bbaaa58d..4222a195b0 100644 --- a/packages/neuron-wallet/src/services/hardware/ledger.ts +++ b/packages/neuron-wallet/src/services/hardware/ledger.ts @@ -153,6 +153,10 @@ export default class Ledger extends Hardware { takeUntil(timer(2000)), filter>(e => e.type === 'add'), scan, DeviceInfo[]>((acc, e) => { + let product = e.device.product + if (e.device.manufacturer === 'Ledger' && product === 'Nano S+') { + product = 'Nano S Plus' + } return [ ...acc, { @@ -160,7 +164,7 @@ export default class Ledger extends Hardware { descriptor: e.descriptor, vendorId: e.device.vendorId, manufacturer: e.device.manufacturer, - product: e.device.product, + product, addressIndex: 0, addressType: hd.AddressType.Receiving, }, From 5600d8d170c3b507fea899640a9025361ad985b7 Mon Sep 17 00:00:00 2001 From: "github-actions[bot]" <41898282+github-actions[bot]@users.noreply.github.com> Date: Tue, 2 Sep 2025 11:09:53 +0800 Subject: [PATCH 11/29] Update ckb client versions (#3403) feat: update ckb client versions Co-authored-by: Keith-CY <7271329+Keith-CY@users.noreply.github.com> --- .ckb-light-version | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/.ckb-light-version b/.ckb-light-version index 992ac75e22..b0c2058e6b 100644 --- a/.ckb-light-version +++ b/.ckb-light-version @@ -1 +1 @@ -v0.5.1 +v0.5.2 From 500c0f41c6e459c194546cf23098fbbc637ec424 Mon Sep 17 00:00:00 2001 From: "dependabot[bot]" <49699333+dependabot[bot]@users.noreply.github.com> Date: Fri, 5 Sep 2025 09:05:49 +0800 Subject: [PATCH 12/29] chore(deps-dev): bump electron from 36.6.0 to 36.8.1 in /packages/neuron-ui (#3404) chore(deps-dev): bump electron in /packages/neuron-ui Bumps [electron](https://github.com/electron/electron) from 36.6.0 to 36.8.1. - [Release notes](https://github.com/electron/electron/releases) - [Changelog](https://github.com/electron/electron/blob/main/docs/breaking-changes.md) - [Commits](https://github.com/electron/electron/compare/v36.6.0...v36.8.1) --- updated-dependencies: - dependency-name: electron dependency-version: 36.8.1 dependency-type: direct:development ... Signed-off-by: dependabot[bot] Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com> --- packages/neuron-ui/package.json | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/packages/neuron-ui/package.json b/packages/neuron-ui/package.json index 324bcb8712..fbb3cea31c 100644 --- a/packages/neuron-ui/package.json +++ b/packages/neuron-ui/package.json @@ -95,7 +95,7 @@ "@vitejs/plugin-react": "4.5.0", "@wojtekmaj/enzyme-adapter-react-17": "0.8.0", "babel-jest": "25.5.1", - "electron": "36.6.0", + "electron": "36.8.1", "enzyme": "3.11.0", "enzyme-adapter-react-16": "1.15.8", "eslint-config-airbnb": "19.0.4", From a3a07635d8810787b7c80524c1ba0b48af8980e3 Mon Sep 17 00:00:00 2001 From: "dependabot[bot]" <49699333+dependabot[bot]@users.noreply.github.com> Date: Wed, 10 Sep 2025 09:01:58 +0800 Subject: [PATCH 13/29] chore(deps-dev): bump electron from 36.6.0 to 36.8.1 in /packages/neuron-wallet (#3405) chore(deps-dev): bump electron in /packages/neuron-wallet Bumps [electron](https://github.com/electron/electron) from 36.6.0 to 36.8.1. - [Release notes](https://github.com/electron/electron/releases) - [Changelog](https://github.com/electron/electron/blob/main/docs/breaking-changes.md) - [Commits](https://github.com/electron/electron/compare/v36.6.0...v36.8.1) --- updated-dependencies: - dependency-name: electron dependency-version: 36.8.1 dependency-type: direct:development ... Signed-off-by: dependabot[bot] Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com> --- packages/neuron-wallet/package.json | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/packages/neuron-wallet/package.json b/packages/neuron-wallet/package.json index 6844535110..2135790de6 100644 --- a/packages/neuron-wallet/package.json +++ b/packages/neuron-wallet/package.json @@ -88,7 +88,7 @@ "@types/sqlite3": "3.1.11", "@types/uuid": "8.3.4", "devtron": "1.4.0", - "electron": "36.6.0", + "electron": "36.8.1", "electron-builder": "24.13.3", "electron-devtools-installer": "3.2.1", "jest-when": "3.6.0", From 574d245dc6d124ddc883e022b276b9f6033270d0 Mon Sep 17 00:00:00 2001 From: "dependabot[bot]" <49699333+dependabot[bot]@users.noreply.github.com> Date: Wed, 10 Sep 2025 09:05:08 +0800 Subject: [PATCH 14/29] chore(deps): bump sha.js from 2.4.11 to 2.4.12 (#3406) Bumps [sha.js](https://github.com/crypto-browserify/sha.js) from 2.4.11 to 2.4.12. - [Changelog](https://github.com/browserify/sha.js/blob/master/CHANGELOG.md) - [Commits](https://github.com/crypto-browserify/sha.js/compare/v2.4.11...v2.4.12) --- updated-dependencies: - dependency-name: sha.js dependency-version: 2.4.12 dependency-type: indirect ... Signed-off-by: dependabot[bot] Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com> --- yarn.lock | 20 +++++++++++++++----- 1 file changed, 15 insertions(+), 5 deletions(-) diff --git a/yarn.lock b/yarn.lock index ee0c3be18e..5a29d0968d 100644 --- a/yarn.lock +++ b/yarn.lock @@ -7907,6 +7907,15 @@ electron@36.6.0: "@types/node" "^22.7.7" extract-zip "^2.0.1" +electron@36.8.1: + version "36.8.1" + resolved "https://registry.yarnpkg.com/electron/-/electron-36.8.1.tgz#c27dfb13fcc1bedf29929fe67430ee13a778c4df" + integrity sha512-honaH58/cyCb9QAzIvD+WXWuNIZ0tW9zfBqMz5wZld/rXB+LCTEDb2B3TAv8+pDmlzPlkPio95RkUe86l6MNjg== + dependencies: + "@electron/get" "^2.0.0" + "@types/node" "^22.7.7" + extract-zip "^2.0.1" + elliptic@6.6.1, elliptic@^6.5.3, elliptic@^6.5.4, elliptic@^6.5.5: version "6.6.1" resolved "https://registry.yarnpkg.com/elliptic/-/elliptic-6.6.1.tgz#3b8ffb02670bf69e382c7f65bf524c97c5405c06" @@ -14945,12 +14954,13 @@ setimmediate@^1.0.4, setimmediate@^1.0.5: integrity sha512-MATJdZp8sLqDl/68LfQmbP8zKPLQNV6BIZoIgrscFDQ+RsvK/BxeDQOgyxKKoh0y/8h3BqVFnCqQ/gd+reiIXA== sha.js@^2.4.0, sha.js@^2.4.11, sha.js@^2.4.8: - version "2.4.11" - resolved "https://registry.yarnpkg.com/sha.js/-/sha.js-2.4.11.tgz#37a5cf0b81ecbc6943de109ba2960d1b26584ae7" - integrity sha512-QMEp5B7cftE7APOjk5Y6xgrbWu+WkLVQwk8JNjZ8nKRciZaByEW6MubieAiToS7+dwvrjGhH8jRXz3MVd0AYqQ== + version "2.4.12" + resolved "https://registry.yarnpkg.com/sha.js/-/sha.js-2.4.12.tgz#eb8b568bf383dfd1867a32c3f2b74eb52bdbf23f" + integrity sha512-8LzC5+bvI45BjpfXU8V5fdU2mfeKiQe1D1gIMn7XUlF3OTUrpdJpPPH4EMAnF0DsHHdSZqCdSss5qCmJKuiO3w== dependencies: - inherits "^2.0.1" - safe-buffer "^5.0.1" + inherits "^2.0.4" + safe-buffer "^5.2.1" + to-buffer "^1.2.0" sha3@2.1.4, sha3@^2.1.3: version "2.1.4" From c00faf53f4e663a6492c260c21ffeeefeee03e3e Mon Sep 17 00:00:00 2001 From: "github-actions[bot]" <41898282+github-actions[bot]@users.noreply.github.com> Date: Wed, 10 Sep 2025 01:05:39 +0000 Subject: [PATCH 15/29] Update ckb client versions (#3408) feat: update ckb client versions Co-authored-by: Keith-CY <7271329+Keith-CY@users.noreply.github.com> --- .ckb-light-version | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/.ckb-light-version b/.ckb-light-version index b0c2058e6b..4bc4a91610 100644 --- a/.ckb-light-version +++ b/.ckb-light-version @@ -1 +1 @@ -v0.5.2 +v0.5.3 From 3569b41903bc3788dbcb05bce5415a2c25ec7471 Mon Sep 17 00:00:00 2001 From: "dependabot[bot]" <49699333+dependabot[bot]@users.noreply.github.com> Date: Fri, 12 Sep 2025 09:22:47 +0800 Subject: [PATCH 16/29] chore(deps-dev): bump vite from 6.2.7 to 6.3.6 (#3409) Bumps [vite](https://github.com/vitejs/vite/tree/HEAD/packages/vite) from 6.2.7 to 6.3.6. - [Release notes](https://github.com/vitejs/vite/releases) - [Changelog](https://github.com/vitejs/vite/blob/v6.3.6/packages/vite/CHANGELOG.md) - [Commits](https://github.com/vitejs/vite/commits/v6.3.6/packages/vite) --- updated-dependencies: - dependency-name: vite dependency-version: 6.3.6 dependency-type: direct:development ... Signed-off-by: dependabot[bot] Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com> --- packages/neuron-ui/package.json | 2 +- yarn.lock | 313 ++++++++++++++++++-------------- 2 files changed, 174 insertions(+), 141 deletions(-) diff --git a/packages/neuron-ui/package.json b/packages/neuron-ui/package.json index fbb3cea31c..2802b24ba7 100644 --- a/packages/neuron-ui/package.json +++ b/packages/neuron-ui/package.json @@ -108,7 +108,7 @@ "storybook": "8.6.14", "storybook-addon-react-router-v6": "2.0.10", "terser": "5.39.2", - "vite": "6.2.7", + "vite": "6.3.6", "vite-plugin-commonjs": "0.10.4", "vite-plugin-eslint": "1.8.1", "vite-plugin-node-polyfills": "0.23.0", diff --git a/yarn.lock b/yarn.lock index 5a29d0968d..fe97d03155 100644 --- a/yarn.lock +++ b/yarn.lock @@ -1446,10 +1446,10 @@ dependencies: regenerator-runtime "^0.14.0" -"@babel/runtime@^7.25.0": - version "7.27.1" - resolved "https://registry.yarnpkg.com/@babel/runtime/-/runtime-7.27.1.tgz#9fce313d12c9a77507f264de74626e87fd0dc541" - integrity sha512-1x3D2xEk2fRo3PAhwQwu5UubzgiVWSXTBfWpVd2Mx2AzRqJuDJCsgaDVZ7HB5iGzDW1Hl1sWN2mFyKjmR9uAog== +"@babel/runtime@^7.27.6": + version "7.28.4" + resolved "https://registry.yarnpkg.com/@babel/runtime/-/runtime-7.28.4.tgz#a70226016fabe25c5783b2f22d3e1c9bc5ca3326" + integrity sha512-Q/N6JNWvIvPnLDvjlE1OUBLPQHH6l3CltCEsHIujp45zQUSSh8K+gHnaEX45yAT1nyngnINhvWtzN+Nb9D8RAQ== "@babel/template@^7.22.15": version "7.22.15" @@ -3491,100 +3491,110 @@ estree-walker "^2.0.2" picomatch "^4.0.2" -"@rollup/rollup-android-arm-eabi@4.35.0": - version "4.35.0" - resolved "https://registry.yarnpkg.com/@rollup/rollup-android-arm-eabi/-/rollup-android-arm-eabi-4.35.0.tgz#e1d7700735f7e8de561ef7d1fa0362082a180c43" - integrity sha512-uYQ2WfPaqz5QtVgMxfN6NpLD+no0MYHDBywl7itPYd3K5TjjSghNKmX8ic9S8NU8w81NVhJv/XojcHptRly7qQ== - -"@rollup/rollup-android-arm64@4.35.0": - version "4.35.0" - resolved "https://registry.yarnpkg.com/@rollup/rollup-android-arm64/-/rollup-android-arm64-4.35.0.tgz#fa6cdfb1fc9e2c8e227a7f35d524d8f7f90cf4db" - integrity sha512-FtKddj9XZudurLhdJnBl9fl6BwCJ3ky8riCXjEw3/UIbjmIY58ppWwPEvU3fNu+W7FUsAsB1CdH+7EQE6CXAPA== - -"@rollup/rollup-darwin-arm64@4.35.0": - version "4.35.0" - resolved "https://registry.yarnpkg.com/@rollup/rollup-darwin-arm64/-/rollup-darwin-arm64-4.35.0.tgz#6da5a1ddc4f11d4a7ae85ab443824cb6bf614e30" - integrity sha512-Uk+GjOJR6CY844/q6r5DR/6lkPFOw0hjfOIzVx22THJXMxktXG6CbejseJFznU8vHcEBLpiXKY3/6xc+cBm65Q== - -"@rollup/rollup-darwin-x64@4.35.0": - version "4.35.0" - resolved "https://registry.yarnpkg.com/@rollup/rollup-darwin-x64/-/rollup-darwin-x64-4.35.0.tgz#25b74ce2d8d3f9ea8e119b01384d44a1c0a0d3ae" - integrity sha512-3IrHjfAS6Vkp+5bISNQnPogRAW5GAV1n+bNCrDwXmfMHbPl5EhTmWtfmwlJxFRUCBZ+tZ/OxDyU08aF6NI/N5Q== - -"@rollup/rollup-freebsd-arm64@4.35.0": - version "4.35.0" - resolved "https://registry.yarnpkg.com/@rollup/rollup-freebsd-arm64/-/rollup-freebsd-arm64-4.35.0.tgz#be3d39e3441df5d6e187c83d158c60656c82e203" - integrity sha512-sxjoD/6F9cDLSELuLNnY0fOrM9WA0KrM0vWm57XhrIMf5FGiN8D0l7fn+bpUeBSU7dCgPV2oX4zHAsAXyHFGcQ== - -"@rollup/rollup-freebsd-x64@4.35.0": - version "4.35.0" - resolved "https://registry.yarnpkg.com/@rollup/rollup-freebsd-x64/-/rollup-freebsd-x64-4.35.0.tgz#cd932d3ec679711efd65ca25821fb318e25b7ce4" - integrity sha512-2mpHCeRuD1u/2kruUiHSsnjWtHjqVbzhBkNVQ1aVD63CcexKVcQGwJ2g5VphOd84GvxfSvnnlEyBtQCE5hxVVw== - -"@rollup/rollup-linux-arm-gnueabihf@4.35.0": - version "4.35.0" - resolved "https://registry.yarnpkg.com/@rollup/rollup-linux-arm-gnueabihf/-/rollup-linux-arm-gnueabihf-4.35.0.tgz#d300b74c6f805474225632f185daaeae760ac2bb" - integrity sha512-mrA0v3QMy6ZSvEuLs0dMxcO2LnaCONs1Z73GUDBHWbY8tFFocM6yl7YyMu7rz4zS81NDSqhrUuolyZXGi8TEqg== - -"@rollup/rollup-linux-arm-musleabihf@4.35.0": - version "4.35.0" - resolved "https://registry.yarnpkg.com/@rollup/rollup-linux-arm-musleabihf/-/rollup-linux-arm-musleabihf-4.35.0.tgz#2caac622380f314c41934ed1e68ceaf6cc380cc3" - integrity sha512-DnYhhzcvTAKNexIql8pFajr0PiDGrIsBYPRvCKlA5ixSS3uwo/CWNZxB09jhIapEIg945KOzcYEAGGSmTSpk7A== - -"@rollup/rollup-linux-arm64-gnu@4.35.0": - version "4.35.0" - resolved "https://registry.yarnpkg.com/@rollup/rollup-linux-arm64-gnu/-/rollup-linux-arm64-gnu-4.35.0.tgz#1ec841650b038cc15c194c26326483fd7ebff3e3" - integrity sha512-uagpnH2M2g2b5iLsCTZ35CL1FgyuzzJQ8L9VtlJ+FckBXroTwNOaD0z0/UF+k5K3aNQjbm8LIVpxykUOQt1m/A== - -"@rollup/rollup-linux-arm64-musl@4.35.0": - version "4.35.0" - resolved "https://registry.yarnpkg.com/@rollup/rollup-linux-arm64-musl/-/rollup-linux-arm64-musl-4.35.0.tgz#2fc70a446d986e27f6101ea74e81746987f69150" - integrity sha512-XQxVOCd6VJeHQA/7YcqyV0/88N6ysSVzRjJ9I9UA/xXpEsjvAgDTgH3wQYz5bmr7SPtVK2TsP2fQ2N9L4ukoUg== - -"@rollup/rollup-linux-loongarch64-gnu@4.35.0": - version "4.35.0" - resolved "https://registry.yarnpkg.com/@rollup/rollup-linux-loongarch64-gnu/-/rollup-linux-loongarch64-gnu-4.35.0.tgz#561bd045cd9ce9e08c95f42e7a8688af8c93d764" - integrity sha512-5pMT5PzfgwcXEwOaSrqVsz/LvjDZt+vQ8RT/70yhPU06PTuq8WaHhfT1LW+cdD7mW6i/J5/XIkX/1tCAkh1W6g== - -"@rollup/rollup-linux-powerpc64le-gnu@4.35.0": - version "4.35.0" - resolved "https://registry.yarnpkg.com/@rollup/rollup-linux-powerpc64le-gnu/-/rollup-linux-powerpc64le-gnu-4.35.0.tgz#45d849a0b33813f33fe5eba9f99e0ff15ab5caad" - integrity sha512-c+zkcvbhbXF98f4CtEIP1EBA/lCic5xB0lToneZYvMeKu5Kamq3O8gqrxiYYLzlZH6E3Aq+TSW86E4ay8iD8EA== - -"@rollup/rollup-linux-riscv64-gnu@4.35.0": - version "4.35.0" - resolved "https://registry.yarnpkg.com/@rollup/rollup-linux-riscv64-gnu/-/rollup-linux-riscv64-gnu-4.35.0.tgz#78dde3e6fcf5b5733a97d0a67482d768aa1e83a5" - integrity sha512-s91fuAHdOwH/Tad2tzTtPX7UZyytHIRR6V4+2IGlV0Cej5rkG0R61SX4l4y9sh0JBibMiploZx3oHKPnQBKe4g== - -"@rollup/rollup-linux-s390x-gnu@4.35.0": - version "4.35.0" - resolved "https://registry.yarnpkg.com/@rollup/rollup-linux-s390x-gnu/-/rollup-linux-s390x-gnu-4.35.0.tgz#2e34835020f9e03dfb411473a5c2a0e8a9c5037b" - integrity sha512-hQRkPQPLYJZYGP+Hj4fR9dDBMIM7zrzJDWFEMPdTnTy95Ljnv0/4w/ixFw3pTBMEuuEuoqtBINYND4M7ujcuQw== - -"@rollup/rollup-linux-x64-gnu@4.35.0": - version "4.35.0" - resolved "https://registry.yarnpkg.com/@rollup/rollup-linux-x64-gnu/-/rollup-linux-x64-gnu-4.35.0.tgz#4f9774beddc6f4274df57ac99862eb23040de461" - integrity sha512-Pim1T8rXOri+0HmV4CdKSGrqcBWX0d1HoPnQ0uw0bdp1aP5SdQVNBy8LjYncvnLgu3fnnCt17xjWGd4cqh8/hA== - -"@rollup/rollup-linux-x64-musl@4.35.0": - version "4.35.0" - resolved "https://registry.yarnpkg.com/@rollup/rollup-linux-x64-musl/-/rollup-linux-x64-musl-4.35.0.tgz#dfcff2c1aed518b3d23ccffb49afb349d74fb608" - integrity sha512-QysqXzYiDvQWfUiTm8XmJNO2zm9yC9P/2Gkrwg2dH9cxotQzunBHYr6jk4SujCTqnfGxduOmQcI7c2ryuW8XVg== - -"@rollup/rollup-win32-arm64-msvc@4.35.0": - version "4.35.0" - resolved "https://registry.yarnpkg.com/@rollup/rollup-win32-arm64-msvc/-/rollup-win32-arm64-msvc-4.35.0.tgz#b0b37e2d77041e3aa772f519291309abf4c03a84" - integrity sha512-OUOlGqPkVJCdJETKOCEf1mw848ZyJ5w50/rZ/3IBQVdLfR5jk/6Sr5m3iO2tdPgwo0x7VcncYuOvMhBWZq8ayg== - -"@rollup/rollup-win32-ia32-msvc@4.35.0": - version "4.35.0" - resolved "https://registry.yarnpkg.com/@rollup/rollup-win32-ia32-msvc/-/rollup-win32-ia32-msvc-4.35.0.tgz#5b5a40e44a743ddc0e06b8e1b3982f856dc9ce0a" - integrity sha512-2/lsgejMrtwQe44glq7AFFHLfJBPafpsTa6JvP2NGef/ifOa4KBoglVf7AKN7EV9o32evBPRqfg96fEHzWo5kw== - -"@rollup/rollup-win32-x64-msvc@4.35.0": - version "4.35.0" - resolved "https://registry.yarnpkg.com/@rollup/rollup-win32-x64-msvc/-/rollup-win32-x64-msvc-4.35.0.tgz#05f25dbc9981bee1ae6e713daab10397044a46ca" - integrity sha512-PIQeY5XDkrOysbQblSW7v3l1MDZzkTEzAfTPkj5VAu3FW8fS4ynyLg2sINp0fp3SjZ8xkRYpLqoKcYqAkhU1dw== +"@rollup/rollup-android-arm-eabi@4.50.1": + version "4.50.1" + resolved "https://registry.yarnpkg.com/@rollup/rollup-android-arm-eabi/-/rollup-android-arm-eabi-4.50.1.tgz#7d41dc45adcfcb272504ebcea9c8a5b2c659e963" + integrity sha512-HJXwzoZN4eYTdD8bVV22DN8gsPCAj3V20NHKOs8ezfXanGpmVPR7kalUHd+Y31IJp9stdB87VKPFbsGY3H/2ag== + +"@rollup/rollup-android-arm64@4.50.1": + version "4.50.1" + resolved "https://registry.yarnpkg.com/@rollup/rollup-android-arm64/-/rollup-android-arm64-4.50.1.tgz#6c708fae2c9755e994c42d56c34a94cb77020650" + integrity sha512-PZlsJVcjHfcH53mOImyt3bc97Ep3FJDXRpk9sMdGX0qgLmY0EIWxCag6EigerGhLVuL8lDVYNnSo8qnTElO4xw== + +"@rollup/rollup-darwin-arm64@4.50.1": + version "4.50.1" + resolved "https://registry.yarnpkg.com/@rollup/rollup-darwin-arm64/-/rollup-darwin-arm64-4.50.1.tgz#85ccf92ab114e434c83037a175923a525635cbb4" + integrity sha512-xc6i2AuWh++oGi4ylOFPmzJOEeAa2lJeGUGb4MudOtgfyyjr4UPNK+eEWTPLvmPJIY/pgw6ssFIox23SyrkkJw== + +"@rollup/rollup-darwin-x64@4.50.1": + version "4.50.1" + resolved "https://registry.yarnpkg.com/@rollup/rollup-darwin-x64/-/rollup-darwin-x64-4.50.1.tgz#0af089f3d658d05573208dabb3a392b44d7f4630" + integrity sha512-2ofU89lEpDYhdLAbRdeyz/kX3Y2lpYc6ShRnDjY35bZhd2ipuDMDi6ZTQ9NIag94K28nFMofdnKeHR7BT0CATw== + +"@rollup/rollup-freebsd-arm64@4.50.1": + version "4.50.1" + resolved "https://registry.yarnpkg.com/@rollup/rollup-freebsd-arm64/-/rollup-freebsd-arm64-4.50.1.tgz#46c22a16d18180e99686647543335567221caa9c" + integrity sha512-wOsE6H2u6PxsHY/BeFHA4VGQN3KUJFZp7QJBmDYI983fgxq5Th8FDkVuERb2l9vDMs1D5XhOrhBrnqcEY6l8ZA== + +"@rollup/rollup-freebsd-x64@4.50.1": + version "4.50.1" + resolved "https://registry.yarnpkg.com/@rollup/rollup-freebsd-x64/-/rollup-freebsd-x64-4.50.1.tgz#819ffef2f81891c266456952962a13110c8e28b5" + integrity sha512-A/xeqaHTlKbQggxCqispFAcNjycpUEHP52mwMQZUNqDUJFFYtPHCXS1VAG29uMlDzIVr+i00tSFWFLivMcoIBQ== + +"@rollup/rollup-linux-arm-gnueabihf@4.50.1": + version "4.50.1" + resolved "https://registry.yarnpkg.com/@rollup/rollup-linux-arm-gnueabihf/-/rollup-linux-arm-gnueabihf-4.50.1.tgz#7fe283c14793e607e653a3214b09f8973f08262a" + integrity sha512-54v4okehwl5TaSIkpp97rAHGp7t3ghinRd/vyC1iXqXMfjYUTm7TfYmCzXDoHUPTTf36L8pr0E7YsD3CfB3ZDg== + +"@rollup/rollup-linux-arm-musleabihf@4.50.1": + version "4.50.1" + resolved "https://registry.yarnpkg.com/@rollup/rollup-linux-arm-musleabihf/-/rollup-linux-arm-musleabihf-4.50.1.tgz#066e92eb22ea30560414ec800a6d119ba0b435ac" + integrity sha512-p/LaFyajPN/0PUHjv8TNyxLiA7RwmDoVY3flXHPSzqrGcIp/c2FjwPPP5++u87DGHtw+5kSH5bCJz0mvXngYxw== + +"@rollup/rollup-linux-arm64-gnu@4.50.1": + version "4.50.1" + resolved "https://registry.yarnpkg.com/@rollup/rollup-linux-arm64-gnu/-/rollup-linux-arm64-gnu-4.50.1.tgz#480d518ea99a8d97b2a174c46cd55164f138cc37" + integrity sha512-2AbMhFFkTo6Ptna1zO7kAXXDLi7H9fGTbVaIq2AAYO7yzcAsuTNWPHhb2aTA6GPiP+JXh85Y8CiS54iZoj4opw== + +"@rollup/rollup-linux-arm64-musl@4.50.1": + version "4.50.1" + resolved "https://registry.yarnpkg.com/@rollup/rollup-linux-arm64-musl/-/rollup-linux-arm64-musl-4.50.1.tgz#ed7db3b8999b60dd20009ddf71c95f3af49423c8" + integrity sha512-Cgef+5aZwuvesQNw9eX7g19FfKX5/pQRIyhoXLCiBOrWopjo7ycfB292TX9MDcDijiuIJlx1IzJz3IoCPfqs9w== + +"@rollup/rollup-linux-loongarch64-gnu@4.50.1": + version "4.50.1" + resolved "https://registry.yarnpkg.com/@rollup/rollup-linux-loongarch64-gnu/-/rollup-linux-loongarch64-gnu-4.50.1.tgz#16a6927a35f5dbc505ff874a4e1459610c0c6f46" + integrity sha512-RPhTwWMzpYYrHrJAS7CmpdtHNKtt2Ueo+BlLBjfZEhYBhK00OsEqM08/7f+eohiF6poe0YRDDd8nAvwtE/Y62Q== + +"@rollup/rollup-linux-ppc64-gnu@4.50.1": + version "4.50.1" + resolved "https://registry.yarnpkg.com/@rollup/rollup-linux-ppc64-gnu/-/rollup-linux-ppc64-gnu-4.50.1.tgz#a006700469be0041846c45b494c35754e6a04eea" + integrity sha512-eSGMVQw9iekut62O7eBdbiccRguuDgiPMsw++BVUg+1K7WjZXHOg/YOT9SWMzPZA+w98G+Fa1VqJgHZOHHnY0Q== + +"@rollup/rollup-linux-riscv64-gnu@4.50.1": + version "4.50.1" + resolved "https://registry.yarnpkg.com/@rollup/rollup-linux-riscv64-gnu/-/rollup-linux-riscv64-gnu-4.50.1.tgz#0fcc45b2ec8a0e54218ca48849ea6d596f53649c" + integrity sha512-S208ojx8a4ciIPrLgazF6AgdcNJzQE4+S9rsmOmDJkusvctii+ZvEuIC4v/xFqzbuP8yDjn73oBlNDgF6YGSXQ== + +"@rollup/rollup-linux-riscv64-musl@4.50.1": + version "4.50.1" + resolved "https://registry.yarnpkg.com/@rollup/rollup-linux-riscv64-musl/-/rollup-linux-riscv64-musl-4.50.1.tgz#d6e617eec9fe6f5859ee13fad435a16c42b469f2" + integrity sha512-3Ag8Ls1ggqkGUvSZWYcdgFwriy2lWo+0QlYgEFra/5JGtAd6C5Hw59oojx1DeqcA2Wds2ayRgvJ4qxVTzCHgzg== + +"@rollup/rollup-linux-s390x-gnu@4.50.1": + version "4.50.1" + resolved "https://registry.yarnpkg.com/@rollup/rollup-linux-s390x-gnu/-/rollup-linux-s390x-gnu-4.50.1.tgz#b147760d63c6f35b4b18e6a25a2a760dd3ea0c05" + integrity sha512-t9YrKfaxCYe7l7ldFERE1BRg/4TATxIg+YieHQ966jwvo7ddHJxPj9cNFWLAzhkVsbBvNA4qTbPVNsZKBO4NSg== + +"@rollup/rollup-linux-x64-gnu@4.50.1": + version "4.50.1" + resolved "https://registry.yarnpkg.com/@rollup/rollup-linux-x64-gnu/-/rollup-linux-x64-gnu-4.50.1.tgz#fc0be1da374f85e7e85dccaf1ff12d7cfc9fbe3d" + integrity sha512-MCgtFB2+SVNuQmmjHf+wfI4CMxy3Tk8XjA5Z//A0AKD7QXUYFMQcns91K6dEHBvZPCnhJSyDWLApk40Iq/H3tA== + +"@rollup/rollup-linux-x64-musl@4.50.1": + version "4.50.1" + resolved "https://registry.yarnpkg.com/@rollup/rollup-linux-x64-musl/-/rollup-linux-x64-musl-4.50.1.tgz#54c79932e0f9a3c992b034c82325be3bcde0d067" + integrity sha512-nEvqG+0jeRmqaUMuwzlfMKwcIVffy/9KGbAGyoa26iu6eSngAYQ512bMXuqqPrlTyfqdlB9FVINs93j534UJrg== + +"@rollup/rollup-openharmony-arm64@4.50.1": + version "4.50.1" + resolved "https://registry.yarnpkg.com/@rollup/rollup-openharmony-arm64/-/rollup-openharmony-arm64-4.50.1.tgz#fc48e74d413623ac02c1d521bec3e5e784488fdc" + integrity sha512-RDsLm+phmT3MJd9SNxA9MNuEAO/J2fhW8GXk62G/B4G7sLVumNFbRwDL6v5NrESb48k+QMqdGbHgEtfU0LCpbA== + +"@rollup/rollup-win32-arm64-msvc@4.50.1": + version "4.50.1" + resolved "https://registry.yarnpkg.com/@rollup/rollup-win32-arm64-msvc/-/rollup-win32-arm64-msvc-4.50.1.tgz#8ce3d1181644406362cf1e62c90e88ab083e02bb" + integrity sha512-hpZB/TImk2FlAFAIsoElM3tLzq57uxnGYwplg6WDyAxbYczSi8O2eQ+H2Lx74504rwKtZ3N2g4bCUkiamzS6TQ== + +"@rollup/rollup-win32-ia32-msvc@4.50.1": + version "4.50.1" + resolved "https://registry.yarnpkg.com/@rollup/rollup-win32-ia32-msvc/-/rollup-win32-ia32-msvc-4.50.1.tgz#dd2dfc896eac4b2689d55f01c6d51c249263f805" + integrity sha512-SXjv8JlbzKM0fTJidX4eVsH+Wmnp0/WcD8gJxIZyR6Gay5Qcsmdbi9zVtnbkGPG8v2vMR1AD06lGWy5FLMcG7A== + +"@rollup/rollup-win32-x64-msvc@4.50.1": + version "4.50.1" + resolved "https://registry.yarnpkg.com/@rollup/rollup-win32-x64-msvc/-/rollup-win32-x64-msvc-4.50.1.tgz#13f758c97b9fbbac56b6928547a3ff384e7cfb3e" + integrity sha512-StxAO/8ts62KZVRAm4JZYq9+NqNsV7RvimNK+YM7ry//zebEH6meuugqW/P5OFUCjyQgui+9fUxT6d5NShvMvA== "@sideway/address@^4.1.3": version "4.1.4" @@ -4342,11 +4352,16 @@ "@types/estree" "*" "@types/json-schema" "*" -"@types/estree@*", "@types/estree@1.0.6", "@types/estree@^1.0.0": +"@types/estree@*", "@types/estree@^1.0.0": version "1.0.6" resolved "https://registry.yarnpkg.com/@types/estree/-/estree-1.0.6.tgz#628effeeae2064a1b4e79f78e81d87b7e5fc7b50" integrity sha512-AYnb1nQyY49te+VRAVgmzfcgjYS91mY5P0TKUDCLEM+gNnA+3T6rWITXRLYCpahpqSQbN5cE+gHpnPyXjHWxcw== +"@types/estree@1.0.8": + version "1.0.8" + resolved "https://registry.yarnpkg.com/@types/estree/-/estree-1.0.8.tgz#958b91c991b1867ced318bedea0e215ee050726e" + integrity sha512-dWHzHa2WqEXI/O1E9OjrocMTKJl2mSrEolh1Iomrv6U+JuNwaHXsXx9bLu5gG7BUWFIN0skIQJQ/L1rIex4X6w== + "@types/fs-extra@9.0.13", "@types/fs-extra@^9.0.11": version "9.0.13" resolved "https://registry.yarnpkg.com/@types/fs-extra/-/fs-extra-9.0.13.tgz#7594fbae04fe7f1918ce8b3d213f74ff44ac1f45" @@ -7898,10 +7913,10 @@ electron-window-state@5.0.3: jsonfile "^4.0.0" mkdirp "^0.5.1" -electron@36.6.0: - version "36.6.0" - resolved "https://registry.yarnpkg.com/electron/-/electron-36.6.0.tgz#12070efb0ac8c87dc4dc448eb018c85b15e66726" - integrity sha512-Tkkw4udDADEWKdbhzckt2CS0gwDTXwZUb2JWxX01HJXAeb8SBlTdQUtxUiAwIIWe0suGuot+uBs1bDPz931A6w== +electron@36.8.1: + version "36.8.1" + resolved "https://registry.yarnpkg.com/electron/-/electron-36.8.1.tgz#c27dfb13fcc1bedf29929fe67430ee13a778c4df" + integrity sha512-honaH58/cyCb9QAzIvD+WXWuNIZ0tW9zfBqMz5wZld/rXB+LCTEDb2B3TAv8+pDmlzPlkPio95RkUe86l6MNjg== dependencies: "@electron/get" "^2.0.0" "@types/node" "^22.7.7" @@ -8829,6 +8844,11 @@ fd-slicer@~1.1.0: dependencies: pend "~1.2.0" +fdir@^6.4.4, fdir@^6.5.0: + version "6.5.0" + resolved "https://registry.yarnpkg.com/fdir/-/fdir-6.5.0.tgz#ed2ab967a331ade62f18d077dae192684d50d350" + integrity sha512-tIbYtZbucOs0BRGqPJkshJUYdL+SDH7dVM8gjy+ERp3WAUjLEFJE+02kanyHtwjWOnwrKYBiwAmM0p4kLJAnXg== + figures@3.2.0, figures@^3.0.0: version "3.2.0" resolved "https://registry.yarnpkg.com/figures/-/figures-3.2.0.tgz#625c18bd293c604dc4a8ddb2febf0c88341746af" @@ -13457,10 +13477,10 @@ picomatch@^2.0.4, picomatch@^2.2.1, picomatch@^2.2.2, picomatch@^2.2.3, picomatc resolved "https://registry.yarnpkg.com/picomatch/-/picomatch-2.3.1.tgz#3ba3833733646d9d3e4995946c1365a67fb07a42" integrity sha512-JU3teHTNjmE2VCGFzuY8EXzCDVwEqB2a8fsIvwaStHhAWJEeVd1o1QD80CU6+ZdEXXSLbSsuLwJjkCBWqRQUVA== -picomatch@^4.0.2: - version "4.0.2" - resolved "https://registry.yarnpkg.com/picomatch/-/picomatch-4.0.2.tgz#77c742931e8f3b8820946c76cd0c1f13730d1dab" - integrity sha512-M7BAV6Rlcy5u+m6oPhAPFgJTzAioX/6B0DxyvDlo9l8+T3nLKbrczg2WLUyzd45L8RqfUMyGPzekbMvX2Ldkwg== +picomatch@^4.0.2, picomatch@^4.0.3: + version "4.0.3" + resolved "https://registry.yarnpkg.com/picomatch/-/picomatch-4.0.3.tgz#796c76136d1eead715db1e7bad785dedd695a042" + integrity sha512-5gTmgEY/sqK6gFXLIsQNH19lWb4ebPDLA4SdLP7dsWkIXHWlG66oPuVvXSGFPppYZz8ZDZq0dYYrbHfBCVUb1Q== pidtree@^0.6.0: version "0.6.0" @@ -14163,11 +14183,11 @@ react-dom@18.3.1: scheduler "^0.25.0" react-i18next@13.5.0, react-i18next@>=11.16.4: - version "15.5.2" - resolved "https://registry.yarnpkg.com/react-i18next/-/react-i18next-15.5.2.tgz#2cfbd8e055efea077a7cbd7fbd9528c76d31925e" - integrity sha512-ePODyXgmZQAOYTbZXQn5rRsSBu3Gszo69jxW6aKmlSgxKAI1fOhDwSu6bT4EKHciWPKQ7v7lPrjeiadR6Gi+1A== + version "15.7.3" + resolved "https://registry.yarnpkg.com/react-i18next/-/react-i18next-15.7.3.tgz#2eba235247dff0cbf9f0338e2ab85e10e127aa54" + integrity sha512-AANws4tOE+QSq/IeMF/ncoHlMNZaVLxpa5uUGW1wjike68elVYr0018L9xYoqBr1OFO7G7boDPrbn0HpMCJxTw== dependencies: - "@babel/runtime" "^7.25.0" + "@babel/runtime" "^7.27.6" html-parse-stringify "^3.0.1" react-inspector@6.0.2: @@ -14672,32 +14692,34 @@ rollup@^2.77.2: optionalDependencies: fsevents "~2.3.2" -rollup@^4.30.1: - version "4.35.0" - resolved "https://registry.yarnpkg.com/rollup/-/rollup-4.35.0.tgz#76c95dba17a579df4c00c3955aed32aa5d4dc66d" - integrity sha512-kg6oI4g+vc41vePJyO6dHt/yl0Rz3Thv0kJeVQ3D1kS3E5XSuKbPc29G4IpT/Kv1KQwgHVcN+HtyS+HYLNSvQg== +rollup@^4.34.9: + version "4.50.1" + resolved "https://registry.yarnpkg.com/rollup/-/rollup-4.50.1.tgz#6f0717c34aacc65cc727eeaaaccc2afc4e4485fd" + integrity sha512-78E9voJHwnXQMiQdiqswVLZwJIzdBKJ1GdI5Zx6XwoFKUIk09/sSrr+05QFzvYb8q6Y9pPV45zzDuYa3907TZA== dependencies: - "@types/estree" "1.0.6" + "@types/estree" "1.0.8" optionalDependencies: - "@rollup/rollup-android-arm-eabi" "4.35.0" - "@rollup/rollup-android-arm64" "4.35.0" - "@rollup/rollup-darwin-arm64" "4.35.0" - "@rollup/rollup-darwin-x64" "4.35.0" - "@rollup/rollup-freebsd-arm64" "4.35.0" - "@rollup/rollup-freebsd-x64" "4.35.0" - "@rollup/rollup-linux-arm-gnueabihf" "4.35.0" - "@rollup/rollup-linux-arm-musleabihf" "4.35.0" - "@rollup/rollup-linux-arm64-gnu" "4.35.0" - "@rollup/rollup-linux-arm64-musl" "4.35.0" - "@rollup/rollup-linux-loongarch64-gnu" "4.35.0" - "@rollup/rollup-linux-powerpc64le-gnu" "4.35.0" - "@rollup/rollup-linux-riscv64-gnu" "4.35.0" - "@rollup/rollup-linux-s390x-gnu" "4.35.0" - "@rollup/rollup-linux-x64-gnu" "4.35.0" - "@rollup/rollup-linux-x64-musl" "4.35.0" - "@rollup/rollup-win32-arm64-msvc" "4.35.0" - "@rollup/rollup-win32-ia32-msvc" "4.35.0" - "@rollup/rollup-win32-x64-msvc" "4.35.0" + "@rollup/rollup-android-arm-eabi" "4.50.1" + "@rollup/rollup-android-arm64" "4.50.1" + "@rollup/rollup-darwin-arm64" "4.50.1" + "@rollup/rollup-darwin-x64" "4.50.1" + "@rollup/rollup-freebsd-arm64" "4.50.1" + "@rollup/rollup-freebsd-x64" "4.50.1" + "@rollup/rollup-linux-arm-gnueabihf" "4.50.1" + "@rollup/rollup-linux-arm-musleabihf" "4.50.1" + "@rollup/rollup-linux-arm64-gnu" "4.50.1" + "@rollup/rollup-linux-arm64-musl" "4.50.1" + "@rollup/rollup-linux-loongarch64-gnu" "4.50.1" + "@rollup/rollup-linux-ppc64-gnu" "4.50.1" + "@rollup/rollup-linux-riscv64-gnu" "4.50.1" + "@rollup/rollup-linux-riscv64-musl" "4.50.1" + "@rollup/rollup-linux-s390x-gnu" "4.50.1" + "@rollup/rollup-linux-x64-gnu" "4.50.1" + "@rollup/rollup-linux-x64-musl" "4.50.1" + "@rollup/rollup-openharmony-arm64" "4.50.1" + "@rollup/rollup-win32-arm64-msvc" "4.50.1" + "@rollup/rollup-win32-ia32-msvc" "4.50.1" + "@rollup/rollup-win32-x64-msvc" "4.50.1" fsevents "~2.3.2" rrweb-cssom@^0.8.0: @@ -15878,6 +15900,14 @@ tinyexec@^0.3.2: resolved "https://registry.yarnpkg.com/tinyexec/-/tinyexec-0.3.2.tgz#941794e657a85e496577995c6eef66f53f42b3d2" integrity sha512-KQQR9yN7R5+OSwaK0XQoj22pwHoTlgYqmUscPYoknOoWCWfj/5/ABTMRi69FrKU5ffPVh5QcFikpWJI/P1ocHA== +tinyglobby@^0.2.13: + version "0.2.15" + resolved "https://registry.yarnpkg.com/tinyglobby/-/tinyglobby-0.2.15.tgz#e228dd1e638cea993d2fdb4fcd2d4602a79951c2" + integrity sha512-j2Zq4NyQYG5XMST4cbs02Ak8iJUdxRM0XI5QyxXuZOzKOINmWurp3smXu3y5wDcJrptwpSjgXHzIQxR0omXljQ== + dependencies: + fdir "^6.5.0" + picomatch "^4.0.3" + tinypool@^1.0.2: version "1.0.2" resolved "https://registry.yarnpkg.com/tinypool/-/tinypool-1.0.2.tgz#706193cc532f4c100f66aa00b01c42173d9051b2" @@ -16604,14 +16634,17 @@ vite-plugin-svgr@4.3.0: "@svgr/core" "^8.1.0" "@svgr/plugin-jsx" "^8.1.0" -vite@6.2.7, "vite@^5.0.0 || ^6.0.0": - version "6.2.7" - resolved "https://registry.yarnpkg.com/vite/-/vite-6.2.7.tgz#699fb6e4b3e65d749480e0087cdbe3f3f0de00fa" - integrity sha512-qg3LkeuinTrZoJHHF94coSaTfIPyBYoywp+ys4qu20oSJFbKMYoIJo0FWJT9q6Vp49l6z9IsJRbHdcGtiKbGoQ== +vite@6.3.6, "vite@^5.0.0 || ^6.0.0": + version "6.3.6" + resolved "https://registry.yarnpkg.com/vite/-/vite-6.3.6.tgz#69a976b64930750d40219fbc68c5200874d315c1" + integrity sha512-0msEVHJEScQbhkbVTb/4iHZdJ6SXp/AvxL2sjwYQFfBqleHtnCqv1J3sa9zbWz/6kW1m9Tfzn92vW+kZ1WV6QA== dependencies: esbuild "^0.25.0" + fdir "^6.4.4" + picomatch "^4.0.2" postcss "^8.5.3" - rollup "^4.30.1" + rollup "^4.34.9" + tinyglobby "^0.2.13" optionalDependencies: fsevents "~2.3.3" From 6cd7c11bc1444595935a9bf61b4e99e4937d265b Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=E9=83=91=E5=B7=9E?= Date: Sat, 11 Oct 2025 14:09:40 +0800 Subject: [PATCH 17/29] Update bug_report.yml change default assignees --- .github/ISSUE_TEMPLATE/bug_report.yml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/.github/ISSUE_TEMPLATE/bug_report.yml b/.github/ISSUE_TEMPLATE/bug_report.yml index b5a721c9f6..cef6ef7874 100644 --- a/.github/ISSUE_TEMPLATE/bug_report.yml +++ b/.github/ISSUE_TEMPLATE/bug_report.yml @@ -4,7 +4,7 @@ title: '[Bug Report] **Please describe the bug shortly**' labels: - bug assignees: - - Keith-CY + - walker27 - yanguoyu body: - type: markdown From 4529af80299dfcded7d4a9ed78dcb3a2fce3a5e3 Mon Sep 17 00:00:00 2001 From: "dependabot[bot]" <49699333+dependabot[bot]@users.noreply.github.com> Date: Tue, 21 Oct 2025 03:42:10 +0000 Subject: [PATCH 18/29] chore(deps-dev): bump vite from 6.3.6 to 6.4.1 Bumps [vite](https://github.com/vitejs/vite/tree/HEAD/packages/vite) from 6.3.6 to 6.4.1. - [Release notes](https://github.com/vitejs/vite/releases) - [Changelog](https://github.com/vitejs/vite/blob/main/packages/vite/CHANGELOG.md) - [Commits](https://github.com/vitejs/vite/commits/create-vite@6.4.1/packages/vite) --- updated-dependencies: - dependency-name: vite dependency-version: 6.4.1 dependency-type: direct:development ... Signed-off-by: dependabot[bot] --- packages/neuron-ui/package.json | 2 +- yarn.lock | 23 +++++++---------------- 2 files changed, 8 insertions(+), 17 deletions(-) diff --git a/packages/neuron-ui/package.json b/packages/neuron-ui/package.json index 2802b24ba7..4da203d936 100644 --- a/packages/neuron-ui/package.json +++ b/packages/neuron-ui/package.json @@ -108,7 +108,7 @@ "storybook": "8.6.14", "storybook-addon-react-router-v6": "2.0.10", "terser": "5.39.2", - "vite": "6.3.6", + "vite": "6.4.1", "vite-plugin-commonjs": "0.10.4", "vite-plugin-eslint": "1.8.1", "vite-plugin-node-polyfills": "0.23.0", diff --git a/yarn.lock b/yarn.lock index fe97d03155..2f03ad257c 100644 --- a/yarn.lock +++ b/yarn.lock @@ -7922,15 +7922,6 @@ electron@36.8.1: "@types/node" "^22.7.7" extract-zip "^2.0.1" -electron@36.8.1: - version "36.8.1" - resolved "https://registry.yarnpkg.com/electron/-/electron-36.8.1.tgz#c27dfb13fcc1bedf29929fe67430ee13a778c4df" - integrity sha512-honaH58/cyCb9QAzIvD+WXWuNIZ0tW9zfBqMz5wZld/rXB+LCTEDb2B3TAv8+pDmlzPlkPio95RkUe86l6MNjg== - dependencies: - "@electron/get" "^2.0.0" - "@types/node" "^22.7.7" - extract-zip "^2.0.1" - elliptic@6.6.1, elliptic@^6.5.3, elliptic@^6.5.4, elliptic@^6.5.5: version "6.6.1" resolved "https://registry.yarnpkg.com/elliptic/-/elliptic-6.6.1.tgz#3b8ffb02670bf69e382c7f65bf524c97c5405c06" @@ -14183,9 +14174,9 @@ react-dom@18.3.1: scheduler "^0.25.0" react-i18next@13.5.0, react-i18next@>=11.16.4: - version "15.7.3" - resolved "https://registry.yarnpkg.com/react-i18next/-/react-i18next-15.7.3.tgz#2eba235247dff0cbf9f0338e2ab85e10e127aa54" - integrity sha512-AANws4tOE+QSq/IeMF/ncoHlMNZaVLxpa5uUGW1wjike68elVYr0018L9xYoqBr1OFO7G7boDPrbn0HpMCJxTw== + version "16.1.2" + resolved "https://registry.yarnpkg.com/react-i18next/-/react-i18next-16.1.2.tgz#85df17d4b42a74c066de56beed8e0faa6b906314" + integrity sha512-AxZAojM6CsP9qWUu8d0XD0KXYBG6yyitcWRRPSRXgGVkJ47hCIy3Mc/sE9deB0k+OK9WcC04vSFoQC9QdMcd6Q== dependencies: "@babel/runtime" "^7.27.6" html-parse-stringify "^3.0.1" @@ -16634,10 +16625,10 @@ vite-plugin-svgr@4.3.0: "@svgr/core" "^8.1.0" "@svgr/plugin-jsx" "^8.1.0" -vite@6.3.6, "vite@^5.0.0 || ^6.0.0": - version "6.3.6" - resolved "https://registry.yarnpkg.com/vite/-/vite-6.3.6.tgz#69a976b64930750d40219fbc68c5200874d315c1" - integrity sha512-0msEVHJEScQbhkbVTb/4iHZdJ6SXp/AvxL2sjwYQFfBqleHtnCqv1J3sa9zbWz/6kW1m9Tfzn92vW+kZ1WV6QA== +vite@6.4.1, "vite@^5.0.0 || ^6.0.0": + version "6.4.1" + resolved "https://registry.yarnpkg.com/vite/-/vite-6.4.1.tgz#afbe14518cdd6887e240a4b0221ab6d0ce733f96" + integrity sha512-+Oxm7q9hDoLMyJOYfUYBuHQo+dkAloi33apOPP56pzj+vsdJDzr+j1NISE5pyaAuKL4A3UD34qd0lx5+kfKp2g== dependencies: esbuild "^0.25.0" fdir "^6.4.4" From 14378c345be5af8ce21dc1a092f98c5cf25740af Mon Sep 17 00:00:00 2001 From: "github-actions[bot]" <41898282+github-actions[bot]@users.noreply.github.com> Date: Tue, 28 Oct 2025 17:21:51 +0800 Subject: [PATCH 19/29] Update ckb client versions (#3416) feat: update ckb client versions Co-authored-by: Keith-CY <7271329+Keith-CY@users.noreply.github.com> --- .ckb-version | 2 +- compatible.json | 12 ++++++++++++ 2 files changed, 13 insertions(+), 1 deletion(-) diff --git a/.ckb-version b/.ckb-version index 4177f84ed3..686179eae1 100644 --- a/.ckb-version +++ b/.ckb-version @@ -1 +1 @@ -v0.202.0 +v0.203.0 diff --git a/compatible.json b/compatible.json index 954f5ab8cc..9fb78c939d 100644 --- a/compatible.json +++ b/compatible.json @@ -1,5 +1,6 @@ { "fullVersions": [ + "0.203", "0.202", "0.201", "0.200", @@ -32,6 +33,7 @@ "compatible": { "0.111": { "full": [ + "0.203", "0.202", "0.201", "0.200", @@ -58,6 +60,7 @@ }, "0.110": { "full": [ + "0.203", "0.202", "0.201", "0.200", @@ -100,6 +103,7 @@ }, "0.112": { "full": [ + "0.203", "0.202", "0.201", "0.200", @@ -126,6 +130,7 @@ }, "0.114": { "full": [ + "0.203", "0.202", "0.201", "0.200", @@ -152,6 +157,7 @@ }, "0.116": { "full": [ + "0.203", "0.202", "0.201", "0.200", @@ -178,6 +184,7 @@ }, "0.117": { "full": [ + "0.203", "0.202", "0.201", "0.200", @@ -204,6 +211,7 @@ }, "0.119": { "full": [ + "0.203", "0.202", "0.201", "0.200", @@ -230,6 +238,7 @@ }, "0.120": { "full": [ + "0.203", "0.202", "0.201", "0.200", @@ -256,6 +265,7 @@ }, "0.121": { "full": [ + "0.203", "0.202", "0.201", "0.200", @@ -282,6 +292,7 @@ }, "0.201": { "full": [ + "0.203", "0.202", "0.201", "0.200", @@ -308,6 +319,7 @@ }, "0.202": { "full": [ + "0.203", "0.202", "0.201", "0.200", From b0c2eb248810a2bf73ab846e3c18c2659319ea67 Mon Sep 17 00:00:00 2001 From: walker27 Date: Fri, 31 Oct 2025 09:49:16 +0800 Subject: [PATCH 20/29] chore: remove font ProximaNova --- packages/neuron-ui/public/css/fonts.css | 12 ------------ .../public/fonts/ProximaNova-Regular.otf | Bin 62892 -> 0 bytes .../public/fonts/ProximaNova-Semibold.otf | Bin 63116 -> 0 bytes .../public/fonts/ProximaNova-Semibold.ttf | Bin 90132 -> 0 bytes .../public/fonts/Proximanova-Regular.ttf | Bin 90112 -> 0 bytes .../src/widgets/MnemonicInput/index.module.scss | 1 - 6 files changed, 13 deletions(-) delete mode 100644 packages/neuron-ui/public/fonts/ProximaNova-Regular.otf delete mode 100644 packages/neuron-ui/public/fonts/ProximaNova-Semibold.otf delete mode 100644 packages/neuron-ui/public/fonts/ProximaNova-Semibold.ttf delete mode 100644 packages/neuron-ui/public/fonts/Proximanova-Regular.ttf diff --git a/packages/neuron-ui/public/css/fonts.css b/packages/neuron-ui/public/css/fonts.css index d183b3bf33..ac06f4b5ec 100644 --- a/packages/neuron-ui/public/css/fonts.css +++ b/packages/neuron-ui/public/css/fonts.css @@ -8,18 +8,6 @@ src: url('../fonts/SourceCodePro-Regular.ttf') format('truetype'); } -@font-face { - font-family: 'ProximaNova-Regular'; - src: url('../fonts/ProximaNova-Regular.otf') format('opentype'), - url('../fonts//Proximanova-Regular.ttf') format('opentype'); -} - -@font-face { - font-family: 'ProximaNova-Semibold'; - src: url('../fonts/ProximaNova-Semibold.otf') format('opentype'), - url('../fonts/ProximaNova-Semibold.ttf') format('opentype'); -} - @font-face { font-family: 'D-DIN-PRO'; src: url('../fonts/D-DIN-PRO-500-Medium.otf') format('opentype'), diff --git a/packages/neuron-ui/public/fonts/ProximaNova-Regular.otf b/packages/neuron-ui/public/fonts/ProximaNova-Regular.otf deleted file mode 100644 index 27c8d8f7bf9e823f3d2b89ed8efaf401baf4b942..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 62892 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 LY^j81XJ`Kg;PZ?! diff --git a/packages/neuron-ui/public/fonts/ProximaNova-Semibold.otf b/packages/neuron-ui/public/fonts/ProximaNova-Semibold.otf deleted file mode 100644 index 11a950a079f986c91784598445facd8d2ac93ee0..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 63116 zcmb@u2Urxz^DsQaGCME>3$iY!yUs2km_;y)Sp-B$l9M7~Ns==rJP*_9o!*(wj9G#T zD2j+Vfsr$!a*8?Lou`~VT;tETW)=nS|NFn+^L@{^xIHx;s;jEItE#Je_4M`iBv@iD zAtCG>ot-Tny_#~EAdGl|SpV9^%hN{_(8He~&JH99dw&-nzj66@$37#7{Wl1r!!%Ey ze*F`79?T~Q(t;p}X_1NHDdT*qpuW@qzE@(k;ZcuV_YQ)xYWNP0g$(H>>NLPj@U@Oj z%*ZKv82%$c?0!NJ%pZy2IVpP8UQk4Kf<&4Wo~Z3{^8OHbpGy$>^HY-3Gd?XMIs$$5 zP;NnxLRErDFzQ$uW-{V$LLzwqImGefgR(w9Kl%RWxqg^r9@LW%dO|LIppC@*lP%!P z|K$70Pd`k=q$?9sy(0wSMd%4s>*>k$0tpI$YQ68_eW~tA{zmjC-65Btq!QtwKbIi( zc@d2m>WH7jg!FWv(E{u1`jVIv*MQ{p(1;)(>#c`}1<*tgN^;bf{(;w4m?VsdA+4|; zVL&*x!V;n{mjN`i4MP64@E(6=0H3lM7p6ppD$o3QGuYa!)I)PxK%^wZatPq1U|?mbS~M ziD13V)_g-ksdu#%W{JUiFI!=wcCabYNup`Z??9MJhBzjt^BGgPG(#5n7yT6ktb8U;1I08S=yL~P+u!vo&3pcf0m4SF62ZwXNEbHD%Y)dA}L z?-+cbk3_&6(TYW={h7wETYc`eFYxts8-J17big9;YC+fo%>tKp#Bk`@2XX|seQqq& z%m8@_^|QXTuq6f%L;o+d#(`WcM7}dXBH_TZK*wikClk?7`dJG9Q~I|5moi}lGhjp= zh<@;wE&kbl!7XssejIH@$`k)rO8+e%Slyr!bzi-Xty-aru+l)abtI%D*aO0lK&>U8 zb(GNR|Mnq4FG>h~(4JC)hDm5hFkowpKnuwT6T+0}K$sD7&{Yb;ocM<5M06&UpozK= z9HAyOASz43is(vM6E;LQ&~80o^7bNn6MaCV*@6&+0qYL~G7u)~V9=FAiD4j~;lv1H zBr%E@O^hLC!PIjk#uHA2GvPu^AY6%wpgY|_%pQa%2xl_k4TJAX_!0g@01-$85y3&odDAziAaS>mI7CzuhlwLZHQ9qW zMw}#0fqnRim_y`&7w|1HkH{zH6AOri#3DjpzY3)A2=b-Cg)jzTK+zncfY=5YKaqB% zJvoLPM@}Yv$S^XT%qDZlS!5phGxM zHw!xp2a8b_<1JDwaxL;K7F+yivBhG$MUh2`rQGrxOAAXY%WjsomcEu#Emv6SSxK!- ztjw$wR!S?iRd1^aR@1DsR{OhlvMI1Bx2d+dU~{z_)vZIf=O+qYLq2$anEE09 z!}bq5KNNmA{^9h8-#)zh@aKp3AO899@xv!%iL6mKGz^VKGtd@Pi9VoD{3opc=@am3 zAF*rJ( zron0;U{w&XItaq`lLxF7;y>3vUHDY~>8DR!2;yTIe3yUBX=(T<759=)v9xTN_;;C?BXFm=MH$5BTEy zf8W1%zw-XU2fgo`HjHktZLql)+91Do|K5#zbMM};e8Qe$SF!uqa<-J+%kE)|*&=qA z&?%$GNZ52Xl}%wiS$Ecrb!11e9D|sLOcit3peIxTjrG;%1_8dM@FC~6eZ}`#LaO_a z;4cc_*0&sT204eE_xb&E?$_`C{f!I+Oz{2x@*%BZ4gWuUNEi(;=ut2~qlxc8pDY2r zum&{CT$ryLV8#}Le)$EoO&YA?)xdPReCQzpgsUo|9x*0*bk-?;vOeSZN3qa9qB#X&%vYNa^ z-Xq`Y>Fb&5S?KlDv(t0X8>=@#&qL2wFGMdwFIF!}FIO*L??=5~^fu{j*DC_mbPzTx zr}ZxA)#=^RYt(zC_m>{8_aBMA#6+T$SV+1_>?95nXNk9DiX>K&AW4yANoGmDlYB2( zE?F(vDA_LAD=C$fOO8rvBsV0Dk~flf5?)_l-&EgRzl*+wzO{ZYeLMXT`V;g$^nLZi z^dt1O`U(2!`nmdf`b+iK>TlNHpZse)ed;CEBqgLqQiaq) zYAx+8wU-W-j+8n}J*9!taA|@xQ#waFU%E{Ci*$#yOj<2HExjPUDZMX!F8xc&( z*v-)1aIB%1VTfV0VXEOQ!zG4m3^yAV8y++~XL#H2nc)Y+PYlC!U^u2HGmsh2_%YL% z>C7x5o@G0>SZ+C$kiy&D8?wq=zF7$M*ECT8C^E2H+pRJ!I(5=j1|V5aS!8u#tz0# z#$LuD#&O1J#xsoP880jNItXy_fc2Ray)*yQ+Ym$93 zF)`sxdYB9_aWt815@Zr(l58@=TZ!jmG>Q^F&)3CT0G zNikZd%(Udpq`3YA?1x6%h9_j$M~6j3hs8#RO-~SC!^JdLOkG;j^u)*%9T<_O&C<39 z+lpXUmKYu$8L3Um&{b%k@ugZqdO~=5tXLr-JTfywhb*CeU4f{C$ndn}B(WOc{9G*@ zSZ(b-JTfjVGBYtcL7Sti6%_~aN{>s|y=BBDMCnk6r^O}3=rR+-BflVRVrP=2zAJ2Xw#ByQ-svzU;Vp8C1-rad>eURcyCwdOJ2CPU6=pDnE*INvZ8fE z6CD;Erh~@nSP9oX#)`~@i|JS$H?2%LipV3y)UgeFWE<%Ch3?2NkfSL4NHHBRrcteM zT5@h)oDNT-9(A#roJ2WD~!K~*e*#- zJ=(QPY6p9W?UHn9xDZ85OHPT^I>BmBit*HOn5=tviYz9Jsb_3v5-5$##Dwt7jO6w& z-ePxYV(Q(lqqKIgx7b~pnEHq{)5X-MO)lwepiiVWDlP$*e(Te>9VQ4MebF4gBEAeU z^@SnJfUlo8V3}g-r(+{i_wW<>$P`mQVV!3RiC=qGGTXoS>Bclu_XubsFS`v4Y6ElI zz+jQL8DbjzWlGHW0wp9T#iWmQ63bhcw5O=)#GK?d(5D@<>Fway^vo1(T3m8kbec9P zGB!FbJSj3EE-hS8)plbCr$A^g1I8*vtJUQU3y+SA8#H9_fWZPV*uMWzF=w#-fI$ld_*M)f&$}}oDdhKs{`00!V?mbGa{06;9q2{ zHgdW)Dk?42W!_C)lVY5z-1Ah)_~olCBc;C7P(Vegp_CfNh2Vi2aCwt|I}| z^&~=KR{|vVB?7w61hBO?0n~LTK#|EXHw643l3bBH!2*jwbV4%BR}qAY5kiPHM)#Ty z#viEVw;VEDipCV=f5;2Q_fLQNU0wiJ<0G*Ap73^NC@zTM%rKp2- z%SVKDhD!&E%Aghe+N!o0FR@r>t6D+9NQt1%HtE1NRBcvDSE5rWIvC_G(AjFVL|A8# zbYPoSXnk)}U%HGhT0wkmXOndApwdJ@XLNMnMBSqu6|H7SmoMr*5o~9H#P{~LN6gR} z8XefiZhMoXD+3}$KxbfdU|aq6rbaB&84exTUZv`C+R@!k?TKYNTcQKo@VB=rVwui_ z=)hJR(facBkhj;LVgYEyKj?dGFsQFOU&@^5D}#G-cQ zLVVX53LW_MJZSSI#8Oba;2VHawT%o<*NShVz7=01!1hkpW_&4begC?G_N!u@wia7! zb0QPM69r8!zNTgh${+OZ=Zu(4FvZ$La447&L~PZlfS9L{BGCVm@sH z9NY%#m=!BTC4+~NCaTErMCe(xCjtUdtqGb_KrTE5wI)7AwI)EKS`z_5tqFjj*2Jf% z)&xkW)&xjYYXb0DwqpNd#dMsQI*RFdG1ZapEW$2gIzdcb#ZDaNhgnH214>SGNq|ICdPI0~6K-zevAQzm_5?E6SJ3q!v*tsNK{72wc@kouuUufck@$ z(5CbVdKrDifHSZ%=xH$CAj}{i0!Tj^lp8b|4l*2LI1vIx!4M$YX;@_V+z>&e+lVn^ zluSQnD3i!+Wp*+5nBN(m`N&GxuBh2BkBPm>c#{B=V3TPkF(xS{878w$7MLtESz)rn zq}1d9gm5mH+%ai1d1~@Egm6quJDXaXb~Cj#?Qc5FbhN3X=>$`EQ(w~{20Z-v)5E4`O@B50&Ge<|-=@tS$PRP|;|`rVbnRfLn)Ew-kvNN>Km(~DwJ zWuD^pwe5$iH6e9WY^-lih|12d=K6OU-e89m_34N7unq2NgDGr*`+n$#x~Wk|RHeY% zrDvB_)ICwXDtGe!QNso?CAr(?Svc_u6 z4eW}Q8W!!(Qy|-y$N;I4rZ19WTWs4GOR)y4Ut$Aft9hZ{Kj_xO#-q2MJgpuxcu?>d zdkw3?oqGO-G|2MzKT)Tf7ovjpXWOCtDadoN2m$n`|-FZ^bhRR5F z@My~Kd`<3es!gZ@h^u+=;zaF(>SIZ<+cemfj!h2~h*Kb!yRVT%gO;{*8ihJ2s}JqD z`s=lH{}bxVkErt=gZEggaQEJWu|$Ix^PL`H3+2@4(B8J=4pmQ8yV_Ci=bwZj6BUb| z<|$s^+h225gJSS1d(>kDosl*z-CKo;5e-NWN$%c5#JTF^$U@EIlT=OU=xV?_9Df4? zI~I>Y-(VUI*RUY%o^ReF6J*u(CN>)B6g)LS^YfCQeo`XCi|>&Bh4Rdpz3P*XsmiI7 zb`Miwzizk>_Qf7|@c+H_kxGiVWkQO;l41-B5*kBi!D%)hE<%dJbe1})G8mJ&`=+rswt;6 zNA;63w(Z)zb?fe3TQeZYnx3p-i+AoQDNflreR@jD^!S~r#TuF7;l#sZLL*X=v(?`( zTe5ta^5W8cXMa_dZJnF3RkQC5wIeBFeUJ(pyAH%GrjGSRCNFBw-_|%RQcO>d33g9E zdU%m~*XEM-#j1+(%pkz`!2O_eRNTy*95td);3Zs$)9BMV)Q%my*6dYP7bS;l6A}W$ zqBibH)`a;}QN_p8uBl#MI`x}I=E`l|_}!ef>I0XkqNHi7!&G)2?pB(V;db|0y3p(; z>_sEP2Ujm%S2j59AL8qt9i~+u45W5!KDez)bzo1Tc-)2Af(t30*aZfVedD}0ykdEEE??ek@2d(=Mkpumv9zCIfd#R_vU_(V-cgGzSt z!0a#xDhEVN*;taSi3p%#cAZYXsrtRP`YK2o1a3`rm!e^yhgd$&{1rZQoI{6Rwb-;& z(Ja5o99yDj>c*-IXMR_{alV6%)cBW{DwtTIucXKnhf)schytt8K%|zQDUJ^fO^BbY zVfSZHD_8vT(^^%*>bW`Tsd-7s$tyRfX)>lzGYj_5s#M94zWfaO8KzyI`s;scVt z4sa~&r^04~9Q$e5mJ^E6oV;i(rY3 z{Bh=!(94>$&!{2NG%Y1hDAWdT^ipB35qLZvF|feC%2hMjo_ZkNR!YfB63eS|YEbG3Q@-GEwNi$I z(6yskS*X{MOXtk?)+0^5d=_dzcNHj%e(Jh=Tu|`LSgpD!kSg4<_m>h?MR8_~W(vI} zD{e!O%75~7Cyl(?F6efO{B0MbFdxCp>PK&%EFMB3)66b)E*|u1*zN`twq*fUS)V7ngHYP z1k(r)#7<}+o0@_R?V zL58RW8A;F|Q4FpgIQS7Rm!jRMT+s-s%nx;56SM_!~4yDpTBfD!sAt z@V>%w=S!Wk5>s-g=Nq7_baDR983jpo7dj>GpR#w{N`vbo$I;j{XJ~i)jS_dd-wm1O zs(YYiirZypYBsC!dD>%>_S|iyjBm1FSVb-V)x46zN-3U%%kU&rCcv<$ z*0exwAuVfev0+%Ow%~->t9X4K_0jMlFu#Lo$0@<%1EY5ormB7WQ$a^+vg*JZ)ktsD zoqn!Co^dPSM~XI($uh$!vA}?7aAJB@U#g zCQgr4dw`U#d(g3o#g!TqNLS>Q#IIGCtX)%5p+rIS;ljeb>YD2w(s9n-{WREvj-HVa zt9GaNZb*pMU{AVVozD%mEIjXeR2G_Z{m&;Xzt9|(E`Cn4bGf4~3>(g+l>EHnhXjsI zJa&HORajGDQL8si*Pz|JoGP2P#luCZ^J3IERajD@ce8)*yctDmysO28iaVHl=Au$o zy!~+T3Dvps^wAo8ie?MWGi*l1u{mc{ul3^-e_orWL0PDp+7Z7l4Av;&G!&C+?1Fq0 zi2U_8L>BMPpR-Mkv+xlrtz^!@BTBXw$xb2tTC+X5octZa?Ae%-2yJ3Qbo35((vnw5 z{R+unv6Gkv;9xP#K#v-RHAk-CU{Po=8U#L-6uWA060DUftS6{j^LO|N4SGfeHT00F z5_QJ<*Ri5+-&jX4_0`eTk%Q-o?x<>N5}bP348m)0pvIP#p}7r;>8Y#MgNpG(v#AZq zE8}96f_J9I8Z<~D_-lnb=FNsF=!0idGk1QsXRlKB!ZVX&oBhp^kKporBgN(|tFW41 zMcGQR8bEUZvAGm^3!V@t0dxLaq-gmTeALzaeX5})(;EFjU65S>_VNA zozLVkY{iO^Frm zVHudCmMRL-(hs~6kuafU$nqS=BIY?VWUngkkKa0Ro%%gpIDglyP1%R5I;HN8*zEJO z!5Kdvdhi1OfXT`s*Rw9qQe!C{!SYEU)hfOQ8-DCZvsrw%7witk$$SDQo4oH_e7)-G z`J(;hnviQ$Y@AO{sLIawoZxUXg2U|q4tK}VzOg=WYW5PMYyZAvh6?VDZIHh}h`l%N z9_rmN_8x0ijwGyN0y2q#QL|H`{`-*R3Nlqstfu;4+8aCIK}tO640d>hX|=2gEu#bX zpG>Y%CA?4s2Ndqh&>$b0eTX{WLh^^~foPx2lT-tT`&(K*@qhU0^5LpdjbBAw)DuF*cyz9^R z!GmbLvt^(A&u2H7m_XpOZ9w6Ss@eu(emR&0rn$egfF-b=Vz5?7eC9v%U^7Oso0aZDbwC zur@S!n*LYEBN9m|7LWSyAd5vEr8#^gWha%NNJln`XhGW-6_=JJq%m5xY;tM*fzqO) zveMKYar3`h{QV;J&wEM^6mJSG@8la5<>m}~uh-i5UYFD%+0=oN1o_SL%^;(>96?DLtK7t3syFUV<65vwwp-c>1ISL}}16E1Jz)#IefDCo3+WI21o^ zz52x|sy=GeesJPhOb^3GFb{TLBGHxx3HqBgZ|-L$%yRyQpi&5&f)ApU)^W{42XP*l z6&nTerGbInM^*PvOt9_iKVfK4;I4h?8dm9cIQ3}Nt{uf2)Khj+&J24IT}B3$$WY$I zBK4dmG~^vhc+a}zz2v`namaBPs3`-FrS>!R7W4CET*ZHYhca6?l-72PN{3lVY zqL@=O&@BWS!V}1Wx<|Ko;YeyU&|+N!N+_Wl!_tqBQFrJ8ffU+ch3n~oL6l5!A@G=+ zTVSA@`?0_a7mgjPRm)Nt88XKVP_q#SCNS(Z4oz!9PEBmVDUN-Q=DtO$cO-iqJ*Y(w zu9J`x^bWbcH)HP}sy0-LD!3h+HxJgXp!SHI262H~OdSGXL>*=G#;MS>2p_~}%R%>o}94SdBe zn9s1_qyjxGa-NQy*}SI=dlp5UVa={VKlE{}4>+)9703wGSC?n3>N>-I%aG-WV3)k( z!{4#kqY7~6z3_yUp)os-G?;!SFF4CCWWLQ7mL&;j&`!bY@iJ%8!*}>08iQWEYnj60 zz-Jtr%aE+~lIQ5eGdAlVgKV+_NhN3vi;m|#M&H~Dx&H1UdxfmL$&a`p;akkvfV5H% z)y$kl^Jj_sM&vH^e5{_=^v+Zsqd&q)LZe= zR#&OJG(;LBUea1BJte&^y-SbY@{qymIBePO|t8f32ar!Achb^5i_%g$uy&Yg#Jp4>UT^RmuGozHiEs+1@>Wq+lMQmdS$ zT%)W~URVC3vQ&AhGF97E_qz1#GNwyFm((tcx@_-qqRWFWnCs0sav@wc_anEPJI6gy z>!~f(qt*WERP_RNh5Eeuj{1cfshc&*tL>x0(EtWR5Cu)b;i!1_;XWc?o-%ErXT z+(u>NU=wGPZL`4Ue7B+9CU%SIcDUQ4?reA4?xEdFyWi_!*CVh;NRMSb4SQbfS>KE4 z)w|ckUO~OGdd=@u-s^O)|Mcd1`}a=oUC_I_cYSZZk4c|yeMa_)>9eiRt-g}J{rb-D zyQy!bt$}Sv+ex;oZTH*O_3Pble81p+sr{DrE9iH&-+epQF2t_T?v&kayFcyq?bY^! z?A`3A+2`8twlA`;w}02)pns44WBX6*KePX~0UZYP8Q?e|cfiU47YDoba2qcK@SIg9Q@7TF@t9hUNg9S@cqGfNdF-&Ln4Oc57{)NVo2SP zS3{*kt%r^u8ay;(=&GR=L+gjWA7(ym#IWy&-5K^~*e3_2!ypHDhe(H+4r?6B9j-gP z8g4k;dbs28DZ^(CzdvHyh#4bRk0={)Wkk!!Q6ob}E*iOQN>AKT%rw`7C&Rv|{opYU6IG=HDbZ&C7ahc?@(xt$q z#HHG$#^s*Nn+bXo*a_wnx=(PN;5|V*A#=ia6IM?soN#=?g$Xw&ym0;2wQ1tWiK{26 zCTS;KnDpzUJChnGy`A)7(nmLaH)A)sTPHUQx881p+??G!-2&Xg+~V9)-Ll-4xova% z)7{Q}yt}`9ocp)#1@2qj54+d7KX-5Tu=fb_nBlR~qtv6;`uoJx_W* z@Oh@oL89FEU&d*m0s7qo_l?q%uOCT*?V&0%a{N?kHuf$j8YvJ45cd+jy-w@vf-#p*t zzUzDoeXD(6`%Ux<^h@;H?%&t{SN}%;rU3l_vjCfbp#dHNK><+#*#Qp%UItDK^b3p$ zOb%QgxGAta@Oa>r!1}-^LCT=MLBoU6gKh;q4%P(Q29F4y7MvKoBe*p9VDPID_YiH! zoRBpk2Se&YUWam_DWMBPH-%P&UJ89Sg_xq8GIWZ=l;A1JQ|3=uKc!;I)hSP=@KcSa zT1_1>)pzRZsRyQBn2N$o2H6)jZ!ILR6`=#g65hdH(R?4j|9GE9*9#T+K=W2~Kq|vG zW%%*8NW<^VHanrSQFUkp3Ri3t!Yv)8n_42M!+5$v-Uz;2StC2H9&urZEx$fXWBW|Qca`B~&heUNUcqb#L0 z$c1_@-CRf6NY6p;aOq_1NOhA6HFR)SX_hnfm(&xxK$T2q(EVOe8`lk?N~FY8dDoq4G?uRZ_DDvV z_VS}n0Y_bm9ab8=7~YS@in+raY?Rm>5z+5b)!3hQTs^rg`hcrlrxU*Q5%0b;Ku*YC z5tSU_{H+>|qfgDK$egOg1?aru(B7icKdZ4l?Y~~Txm+njBl51qWuc!g@4SM7FM}z4 z!pUczK>p|t#h;h2zj*0-z55nM^8@}vAFGK$m;`ORns4-h;p_{!P7EA(DVw*!@Lu zqdckEz&zw|_`%4E@)L#Uww@eZ-YG9C(|>wM=C;fonLBf~r0>osHn_k4{-L+ZM`Nq) zyN+_{KV?(kt{}Di;HW4Ue`_T+dp!v;w`+D)997G+wqz7!ub*WgKZs{tSGfCD+&Epl z_t0+5*7zOq+mkkA7RBy~F-VTn=1fz`_onfa71jIp94gzL9^n%>-7Qg_y?4&uLI|Nf z;t!&4z%8?ppx{M}44=l%^&IXwlf$O~VgO?BEZzv6BvJ2537WziDHb68m!7+hbU*gz zvE(CtJ(eSV%2&D^>-Vim4*4UnN8qlIm**E?eM&Y8ow-7y_?r?w5uH(7!R~0vSUd&0 zPeATC>L!Y!q5DOs6M4b|Ixa>*Psu`*FF{*Tkm4!Mw};|~bCE@>&p21Hgn7c;$yT6m zn**qkQvB`507_Q&fFUc&840QlW^l-C2KmB8ZBz?x{tsNsFSKku_a+qRiQyYu=mOJPOye#hIxa`*#U@sUfog1l0$9$dli5i3Dw@&+?o^4_Dox5(x_ z_&u%f@$!7^p`OB(NgpcNfyG`qr@|q{ec@65Jd^+k1HnSfU;})pCI)*w}a%g9*>S9rRlt$h-7!S(BGG+Yg z#BCYseK->0g-aMT&1oNEZ=-d$XJsR<)NF6rqu+V|a`^+)OP4;do*3UD` zS%rsT7RgY5fOJ*>#Uv&Yd8V>D2Mi$6O z-o*DYM`l;+-#2()b6l;F^R>U6Jab?9a>8wFqQ(tEZ00QAMS;CwFW@CTwLoUB4Dn8(P*!78Z9CNDri2GF)r$UlNU z9YKa2hc+*V#e#>?*tKOUp2$z7@Gyw$uaTngmNnE-DVoNwp<32J5X}-=8KIYeqnR^z zkrRzHcV0o5M>^^iw$R`zL5fA_Zv`HNV$dMz<*M*W zZlU3>8nHPq&r{T%S-YcJb9Q3GRo`0bbWO?q*UJCxa8~`_4rje)`X@zbhQ1u;a=$M% zCpjTMRwX+w3K#7H+4p8->tJM#0_g>UAv)p1$QBFBcLp%Bijk!XvSiTdU z{?~YQ-IsXvDwtAyg?S(h`4#Nl$Q`;PK})drVeScozRgzL0hK6f#@1rg70OegoWWK< zGUO({tArnn9xC84;t@4UiU;FIRD%?FUyE3Qq*)M2CHae3Uva(Vild;L`GKIE4}xhp z$S+e&-WPwMtWb;@#pgrJXtDaIJ$oQ#6e7fov=B3r1#)Kln^1C-d={LNSu^tL$&7rK zKOCwIVq`z~GiFztpes^diN1O9vLuh($r}w>f6sOrm9@Z*hzHWfD|lj)M4XQ1w!{dhs7PJpB)aDJcqS$%d6R{uZ~q zdA1~pkqrZgpDE$znqz0Q6b(mt6lNd-j)!0=8X~}GIL^b)cqxSdHiJWf4%nHJjlRi| zLO%|S>^4Vw!4x@#z00^W^&K10FW5VPYay3rH3wvq*RD%Y*K9>|faAvinC)UM)D^02 zz~26xBR>d2dsoPve6WP?)7($dV_xpyFqc9!33pUkC1GQ1^sVORJnHuq8ygQ@O~eyX zN7dgu!R{HY27ml9Lcem@O|gt~0AKi9=GSZ?81)A%$nU$mbJOO$_j-*i>(Iid9Qbi) zivpQTSL80w%~Hx|RCDsG-Hbfz9#^)b_`nI}>hD)BUZq9`b-24!J|pEoY)Q>p&TDt% zZmnjhRMs+PHiO6T^Calj1V(libTM=F*;RBa`-^sI60{2_h^zS9XF}>r%Xt)sZvFdU z48>!}^K${ChUVGfc`j%k$XJGz*dmMX^#aX(M1R{D+&uyzzQ3;a$*8 z1)7X2o!=<;mu^3O>|}QI9`&JGYG0gJNgoxa$GVSnE04OIt_hgsAMOI@ca>K$p$v;i z^>UtEx_7!d)P;&TR2%)L3K=w>esd{iZ@?DKnH@z{CzV}iC?eC-re>=>*Ltlzp)B28 zczuJqI-#rroNJ*qsGdvtoa`t+HkT|Pckaa7>O zAXQ+{4DgD)PbVjz_NJysRgEj^gN2+~%b|sxTL&cXL%{`_%dTb+{wL*4YgMArup-NC*4vgc+xfe&MFe=9h0CR`K^kRbS1M8hf(LG3sD#arD#tTn);lb2DB1pJi+MO?d` zKu>W`fNb`AFd&-{SiwC%Z&LPyG2-Qm7z{FFM46$3f{4(4Gyw#K>|pl{`vuM4;=hh5 z$oD+Zg%+E)CNh3oUJZ&qzf(xaC!82l1;fv;Q0Vr8!mdz_)+0Mb>qhX3l;4c{Ds-Db zVLPa9nSlOLxJQQv1V&fXUM#JE&0zQ>wYU*H!0;2y+f^N9egK3r2?v%isC*KKpWkAH z4NiVFvb?MxJ8N$V;mjoWMV>CE>p{cWeEsp$I#E|P?_i>XytFY(bL=PN6GAoUfpmQD^xElPCqwkNA zOOCxeDtX5rv4bq~0l13;PD%d8{_f27i?EGL96FrCEBF&G%#yR5`~-4t_WE*-L0<6n zt%epAgw@Fr)r`C(l;c)Ns|554nBN};9FB;|O z%lGz=869e`!kX5rf^fm_>Fucl_JQgjhpt^fVHe3g4afQwTY&-w)g9iCud-n9iuMZ!daI#m+4&^llWbq9z%<7uXy)8yW(OY>r{|;Fy zz}@q~+b1~4*{POtTF6P7OmT`c#}%J45k6Eq)B&)LS6}X#-<0xg=L`wSvN1C zwPnoj4f2WnrwNSwC;o5qL7cn~u0)%G$WcqKqE%PTcEjF%%}seD#6#{VuEGr!2#JJ_ z#i3GpBX$SNTL*!W$eSn<-T}H(#R;1$?j4GS8;04izv6WJtCvWMs8Mf({go5a7mn?P zJyyQ3$BGsASkqefSSY(7>-k00DGPPZM*GW{ZTIBgi{$;v|Mn9j@6$4Ak|4o1i2VJ^ zOGE;FL3j_i=r7O(exm{|3?;&^p%N3frxq4&+fk^NzeQtkB19pACeTo45AFkXwn3eA zsFMbDwigP(%SHx5`q{}sb&j}>zRs%@I!J~K`N1_veV*KM9!}{cXb*o#aoy|e zct`Kaj^ocvzJBf8*=uS~bM5p*tu~=hIJ<`1O4H%!`m>WO`1Rt3f{=)gF#6Hz4BHa2J_GeNh)DB(Zp@xw|*>sMVC{U6DJ&cXak1ymj`L*;{A9{TR@UK`nub z{y}wj?;NdztI5tIM+7_D3%y$%K^0ZxIU$ws7RX9bbp*pH5d7JMR$&`ZfB=VtA{&6= z?MR4FLdp34IUK(WtvISoBhz~Z+>wh*-O z#{J;BG(1s1+z)vpA7qQ*sg5(pqktbv_&+#C!Ct@;je=;4CDMpb;1iEgV=ru=h)tcE z9-`_$>ek!$_1B(M9nOf|q1gpD@?(RxyMwc6+aJrY>_tDggK~671?b@j;ZhOo=rTv=ed8&f;3KU&M$5*uz+IT^kczS zO&5x2?VA&Zeueljm{_s3E0|fi3O#Ffwd3SZpy!#o=64Tq0`l*`z{`0}b37P$77V;R zNvKu$Fr-=F6p^KVaA%7cl6XYF-m^sKW z56T9j!_AvP;x+F-Zq~Jm0c@ScR@20eYR(DmkmV!>WO)r4{d}JL1&X`z1DoRqF!EY7 z8>9&FDdZ8%K|l_5NBO59+Sh|W48+{{{$ozpFJ%p=?6z1W&~syiShS5hgbXimXVZWU zBY7YGkjVA5%8w;&?arZm)KzR4E|PR(QESs9a7W?-S96{_52f9BcO6BOKW0JOb-^4& zp)yd}PeM!dd^b>Y=3`DDPL|KSM)}JiT-$@++DhX%E}tnuWn09|)$-){=&pS;+8PkYq1DS44W|ua5=Z97LU_GN=#C3_J7&Xg-0C!b*W4R3PNBtx`ojb(sZ;C#Pf}47sk*BrNP%hArCeTnW&|o;Go}UM+mKtL( zyi_p`*cVpouFD(>0$2DD_H}30?Qi(Gy0qv(XXi_lHYFOIsexV)ggJNlQB`TKcBiK9 z0(CgfXFu$6yIEVn&riBMu}0=|G+Ca*xk$Jmi1cbue&SpCD=SXk5ey|rQI|a*wg|1+ zE6`4mS|lS#4Z>l`X2hhZ)xHNl9M zuYjd?94>~7VKA{Q6IN+}P`3U%C`)fEdjwrgLri|td~uzYdcfNLy``yL)2V<~E;J3O zhNdTUO(C}R>=1XO$?rTjwMl+vF8>1rxVF#DVE~>2T9BA5ZgW@yH9Jpqcmd2$+*)?bbcgpx}AO*2aD$2k3 zxy>y;8KiJp7-?vcb)L(Fl3Hld?JS=-fN2eFO=T+H2B5O=xAGfecuU@+n!g0Q7p)+> zt4*LheVXL)5Zfw(*jD@`THf(AY~xx>L5arytF#0*c3MV|-_@p|G!7caLE}Pb90!ff zPs8@CwQ&H-FZoyFc-SqDu3#Xhg&RQM);TaBk`K-MKqL_B5|Bbs%OFtELQx;o)a(PC z-{x+(Fi&9Bp77#eK<0?MFFb`e+ryxbijya$PgYhPPUn7#*_yt6YCxx=nCkS)3k)D^ zC{=)q5|gifyM}48=8d!Xo!R8}-y~=xZ}f9pPQ!f(8rn?$#I=m$hdd>Byp+JvNAR~? z%V>VkbF%Qc1j+cwLdJ=^%bdD{9PY|k3uJ_eHpCev$+=0&ifnNde&Li<)x+FDbL!@e$ySp{?)b)Z# z!-0L9igrME;n3IclZt@Y1GTk#4;(KlnFZJVv5L-~89yrl?)zUm``gKTr-gmo=$jJw zFZZq~j#aNKEYiePQrVf&d5J3TxYEje4O+ZG`q#v3eR?~Mwd;O!;v01XY!dKjY1xlE zDo(4;Z4Zn2K_hGFf&R=wSF+E%G&}HOaJ~HPB)=*VYctY-Mh&&$vMD-{MqPv^c?%Z6cDqWi~U4y3zS(|>@4H^5^i5Vc+v4GX; zj=UZ<2`Cfknv_E$0wUAWGhtWu1x@{?^}9FkQI&0<8KQx(&VS$Q;@<>Tf4=%%w%MtA z*wF~2qXfEOZP|uG)t1H7uXJQ&Msm7FUV2dE6E8;BPNKAvWYI0e-jcvM-!;XP>dMm^ z2cUEDTSjDon`&t2R3Jcx{13Y-(=um9MoilZXO;0GR6=oO zX01wwd33E7g`awuP1b_&dIH8h1*=y7qM5&8{>J$m4CXJKvtW)YXYTsV8Z`3qDc6Ui z2Ko7(#1m=XqQuj%gR#cmZPOn62-ChbN1XO2Vb*K-$2H_e)I)+C_{WMG+`|J-$RwZd zJsi=U1M*f4TvCuvlv{phq~v=npT9hRS$^j~j^`Am?M~d@`53aL+@z7%IBQkLinQgO zOMZvfM0+Yv`sMdt9nV=m_tJ#ou5cx@4AEQWZJobuLFa@%@Vfg6wS4*a%T;&=`dxuK zKY9(3XEoeRA4p9*m|AmPiHvYO{AP_0*tTHnx0~m5#ywhm(w1ee%v#-9#@`f=6W}@| z`r+Nt7kSxl-@&mc9GBG!M>K?dz}()Tzo+phS_n8|I5VyFjG<=Q3gCR}XU4aF=6l^q z=5$tlt*`;c9NhGGBE(JR?&Ul#W#qf3jp5|Gm;22Liwstdyc_@E!JU#j>i@&qdjLdn zy#K>Hd)yxG!Ks`_6tZ{5-lN!i!(L;>-moC3*g%O2Dkk>Wd%=o|Mo{dE*eQzLs8JJ5 zj0R0&&^SvL!~2=JJ3LE_zwiI$*fza9^UTcC2F|tNx1gSE_7-y1gW%RorrHTP_WZik zUB_fP7U?vO!p?1**L~bPSQ=jMq~XER@M38c%^615VMpTK2wM{GqHIs{(w^EG2!YQD z_e#3+qdG08#cev0rQ9gH7k23%nRZOhAiAe2ga#b-3}ER&OlO*AMOsaTY)_Wf0#?rd zs%s%3r@T6=zf4y}pC1xN8>c2aC<6`ibLFl`TB{hTd|6e|Do&9jSi)MtlTf|wkF@$L1CTB) zfOI#My)0|xEy*XPgA2E9T(i-M(=i>j8Y(k^kzKMj&~oA=o3jp%RTg2++QjCpVMoVY z_?pdGddykjn6v)CoYhb(=a_(sZXX`p)NI-XA69`A~>J)Na zez8>n@#s7RKb$V~Jj6c)h<^xN{6p@dVz82x|~4;;G6gjS{j*jW2%zTequx2MJq zH><~2EpmEr_l>Qg7gz-{@SkXff7OUXeL3UK_s23oBWPK-PS2L05zMawT5%RpE6^kh zbng=M^ht@F30V>irt#Wv8l(SH4KJZR1oms%JS@8ym_)vyj?4$0R?UTwTd|i}uiBS* z`KlPrmtBm`e^m@3IpDySe@veJMO*)+Q>S~Y<*z=@*V5+Is| z6V=a~E{9}TT}d0Bb4GKchqb^)F|Fxm$w09eAmzlMX&Z>rlXmQ%7Eg7nPGtJV@0%L7 z({|mkDy09?!J2Mzm-4mZli8)Upj)FWWl0%u+<^`m#|=6oxx1M+Uea)6d}8s z_Zw>0DpMGGB+&+HXE0$PGT47kqIx%xtfLPh!{rUZn+KX7y{`|GG(YfY{J`d4mT18i z`Vi*ggP;T)1bw^!- zYxtUe+P9AuO{CbF7fmGl_EUxbTleYc7+T2^I07aNN9@>>uq|$n^^!zG-C9V2BjOVF zY=_(SkU-mhZJq^WP(@P=w3Vi_M+n)m$9nm)Az^#)U>nVWHYo^&%`QuOpy86RBP7te zPs_2S^f=bu+MFtvq?BVxDeS9#K#%seW}0%@;QVTz6p&)Qs42~*_C0#EZ+|QxB_$~- z#deu0%?!+s#k9JJ925sXBOOWw=}Mi)PndcSxNuy=A%t_{7ORCJ=+N0N=&%@q4xJfY znI^^9!*k68+Jea@V4J~McX8SMAfiB*Ai$h(TIjw#1UP$k?;Y7=nH<8Q$X^sDl|Z{h z)_hA|0@}TAh)S%N8I2UO4|JIpPy;p%ro=&94&7a!nsurdgp7uOV_k}d*>Z#ubgEQ! zLfeL#9zsTtXF9V&0nb`TLFUxaA0xZSv?^ln1=}f2IYpnZrDn5_dLjGpXR`UB*5TE; z52bZtg%Xd55g^n&ACJwWkGd?oDUaCtRR@+bl$MUg$!QAp2dnxMBpt2x?xL6@8qdLDLXkzUU%jOp*1yPa8=9#ny@(BHkdNIGbk&o4=ms6NnMhZMz(iiHV zMZvt&s^z@0cTdVG`8yg7Igvu@Andk>)8GaQ#9`n(g+}jU&d_&&^Khs0Vww=loZDjm zJ)GLO^GTX-wmfBw((MIkk^`{w4x%fu^+tzpXR zzAWq(7IrYgZed|BDvvvyX5u_kPlmiO?}984*HkxOhh+(_lGIqSnfJBYY%uQ+89gy* z$U62JBb%>l6aUrPg=xKg`~EGB?#kM?3wk4S%&X`c%6iA%yz>|ZR4Q+^BO3VEjjs-3 z$UHq@7b;?`wd%vFQbMkGd&YOEAyOyYWGAhs`xs0ODqJ5az5p&n%GYb+g zIoW5Xgr5|MtD4u)RDXpJsAIH5n(`w}I0>LHq;3PHFSF*Wi5~)b9_;{Sqop23i;YJt zl0C%oj{RecFt@2qaV`zc<0UVI$ zyD-}m++}+Ffc*HBOecWiGw20xoOnm$#IweUw>M7w8;ujs8YkYhaW1(wj@E#ax*WYU zf+hs9UTTCG)}uljaxMjTsLeLZ~tF8?*hJMplv`ozqCxw$hwDTPvmk7Zs;kIIBT- zHeiy}Fne;xVq{3--9=rFb;Dq}hsbfXqorftUCB(7&t|@R@Lm^4~$QzjHwNRleax#0VzG_TS1svT)-Q?X4 zoHmJ}o!GS0w%3a_*2=Y`7z)cD`KoIO@@&lOQfeFiJM|A)p z7Z7C^R5U*YUA90XJ=_7zmn7i86s0ADAeTr!YDqSgf@}*&LaadgeBd+lL&Wn*R0%u+ zLFJTFF!M5I)a%R&(McHjRgfDRkY#rh3IYy_FIYZt@S4To&Bo;&xJ2?$NaiFs1UBqt zRy_@kWYhSI%49a>i+`S^(lec^urLXmb{yGc+qW!X{r1>imkR%f$)yS}O4H)AtX!4Z zMFwPoTIp>QOsEgK3uFAP+Qe;RL~TX_pH35II4V+&ZbeVVfPDg7`H&{8pzh|(56egc zi{~I1`oBUhs-h@>VkwkmAGtNYRHj%RYymm?S^p z(^wFF4nppgD5Uxz3dv%Cw^Wl5AjSdaji~(F$CPw#_E>b&Bm~9~_=(CVU5dI?9R@#Y zWeX&Sda-?#1S?eLi2o>Ybh=g$Fg;2Bm5Q_F@2QmW0+kQXmMlGXPS_l`Y3sHfp&LW3 zvu4en?K?kq$G2Nn4T>w=H+V$nc0T6o39r&Zu(X31?S17=tg@XZ#Iadm4JL@-hO$$( z7E7jZ@CyR?D)tv9Vrwp}dBdO9fat=(tiMv9hm$+l5i()*>~i3zUQTWHT+3Hn`-9#6 z+g-_-1>b}85AC2q`$M%^{-S?;W-vuVba!{^^>A{{zJ3L*6N`&-7>I4#rRBtO5!y|M z;!a=(Js!3yPQRd;hTprNDBiGL;NW1GA~KjZG4^1{88Gt>o;II`oc(CoT#mYPj;jw? z4dozG1!l;12b4i)j=e}im}C|}RCi;&Q*u7URim1=E8z5gZUiszoPqsV(gqpA3e`UT07CN5p5e zj~#D6j**$IomZd78_drzI3c3UW{o2_a3z-GeE-%VlK2Vgp+^0`3! zWgmwTtgKR2XaSa&$>+0d>f&NKiw!+Sju|jw!m`y9tsyn^V|Q+jI^~OK3$htQFloM$ z{W&n@brd>u8kXHvx+tdZ^A$Bb9AepMeJI*MNPJCq*&N-Gd2ul+b&WTSB(0&n=_qEM zLkogI4>}o5vcstbfr3I0Vg;MX#$lFFrOu2iHb`--{8N~KHwrNl&P_1t(wOFi7hhe3dING4eY9GFCZG!^MyH$^WAoU?Un|vTcM+1Skceyl|XcuT#;WQ{y2O5 znVJq&i9-E624|5$VeQN8dT2FR<_maEi-u(vf;8}$ECf$HSP8Dz1mZ1>y9hBm!t38~1h8`ov415b*p~iAKm5CVMY|KzWtLzdTlv8Xi zxe-oaE5b>g4(#BVY7Wrnhp|3ML*Qz(Np@e%7N^+S5xmGD^!ZTmBGVA58f~hk!OJ1R zkab2`g-BNr3Bxv~g~GX-8_p;#9Nf+_DQa#D<+zL)HJL_FMA%Hw?+ekw>Kd%kk`&Ig z>;Z^RfeimPF2fJsBY=QotcUMn`~yMUMZ5^ai;l~g!eDh0#u_uufQIT0SRIDA0rt4j zv?02l=Qo)qeB;b-jp~7EnrC+sm|!zd9pY@Z$0L}z>*_>3ZLr|G#}J|Vp9~BpclmD6vuQ=fx2vlZMGj0Q!fW3%TKr`6Gjk4|%(K|1 zH~&rD7p14(pN`Ys<-$k;ZE6~)UWj)w@f_!@gpTWaNw{6!l z?%N=1uSWa(r;fQa0~zGmiZkc@o3*%E=&Y11FQ(N5`;fp$OBtb}0J=$Afj&-R${Ah{ zUsPpYt%1arX$zb^hCaH4q#S(Zgey19~I3G(rfN;_Bi8IPzM89Is zzf9`i?k!MqKEk8VDCOUjEGX2&Ream)P4R8|*+u0cQf`gDMo3MOj7(z}vhBgPok!Ir_T|fAz7Ty>;!5*Im?;*NMMBR5SVa?E%gOx_Ql*%MjeC^e;Pt&ofNw`M2?LG=i(4Q zX4|l2u!|~<0-{UidUEEBf z^R8ja7KSdqQoNwMf0<&_-~kd!3b6FdGaO}G$#*bCa0S=W-Zb(`s{buqGy+-$5n3aIR-Z<|=%p5clGJCVfw&?RKK&&KMMF33 znL646W3erntvEXJmW6t04J6Y&RB3+Jwe#1q_%4W<7|JfCHn5y;Zuo6Vqg$GnuXb4T z_iueArvYc1HIrz;?{5CS!lp$ufjsv$xT=D3S)PvEFoVh6<=SeFt+F} zb=F4fbLvwxfdT1_*3)+MktInB(3e2VE}8QSO@x;H`afv$A3FMr3X9Aea}NKZ_M;7? z$MJou+O*1l&{_tnw7adj+V|YHacP(~_8Zc-61KoJv2;#;$lwW}8{UvAy(uOB~d=(IrJ zCIP#Dwqel!U^%*T%f{V4iM_V;?9g{$3#;Y>Rh0ectSqLyfz>-(XaW>oFf9)A8vCkv zkm^mdI)H&4wTtf9L;VscVdBoTdm;_kPfI&Ro+0WCA?Hq9)Lht^%0|&2m1C28a>2Thkm-VqtEz=FNcgAyK>DW>%=g9*xGHA_V}LOzI87wgRY(! zL$9x+*J8*H5QeAG;=1hP^rmHrfp*iH(kjry57wH((sMVh8^sfRVK3^IeD8|2ljPsN zYQIvx6|3(}>tLI)aOUDAKD3iz{=9kft?J~>mYK6>&V&kxG;`Mc`8L|ou;iO13l~~b z&;7XfSKmkX2Dd+FTR7vJY14d6^PxFjj#|Kp{g#b^a@q#Nak%bB+`g*z~03djD-VX<0^(aO;nDN@TzKo!;F77ZClnq@id zkAMS^g?FUhw0NBQ4^i(Uc1|2k)#v1(ueMpVGJ;f6-+ZrU@2W3%uGQFl~${et6=m z2y7|fiC-Zz^NdJ^+F5T^RUFT-$&7WyLI4{`)KQ*$m!d7;dbR#{7Y08w80o8DCa zTXhzhqt4QSxshPezJWo+`MA&5=Ic$ps2ge?o88{>MZC5vXVn84Oy)RFLV)ffY|zyP z31Nu9iSdI4PK{p?MSprtMOe|Ol|0fJp6NQWz@XW$6ztlLc3Q)Vs8%w)xK`eHo_>14 zeB@b}Yz}{xsKEZ(WHbatOGvo|x zhU@~0C~vnJl7l%)9X$u$@ycBwZ*DUr6*fb5<=G6u#+GuMA-5|jyO_~|{jeE=th|!K zWqPi(ybCr%K$f=K4A}&mA)D9Ausp+Rm7J*b85M+D?K*^7B`;D;NLCe}^HQpphsnG4 z$~2u7p%E+@!q`c1g9!zv6a}x1wVb+TxV%d%>?pZb7)381Mk{Bj6@Z9&(bJ|YyEKby z*)_|*7QQ?yyq3@MX7M$%Yxy;EC3!(`SmH%Fo~b+Qpy=4mk|eF%ub;hi>Fj0am2SZu zeWAMa(~_x+r!I;r^6*gj&d_bcHx}9Yy}r9Nq0^TOCoY^gzsSmc`T%Ll5dBOE=+TVH zw|?=%HNWd&3#qI>E^WwI6AdB0uZt7~ZTt818;@34A;EH0KVsL!gULQWX>}}E&c0kX zYt2`yrx$^ecFx2F5sM}*DPoF?gemzG$CIhs6KI|4bZQwW-6U(n3>UYiANbz)Y;s8N zt+t1U^jG^eI;DxeT5-*-w&oRV>(LF;4AbXKo9;7h&a}DHtOL6qlQgegR9A-Onu%jF#*4dswdh zuA;Q@cm2L4>vtyju37O_)Dqj?d-|=R!b@)fzJG_j-po-_cqPHIaNI=~!Lcde5Cn#9Bk?@9rA@Asv3=kztC z{nQJgwJP2$LLF%zK22KDs0XynIoj)%*SA!d^60NS=BKOZI7_CqENn@5n9q=)q3uGg zyPN4@@Ob5xbE|@``X(P(vuTs9|9AR`DI=zY3>>pLz<2tL*|TQYHm%;UE5T>Q%oSfR zxBh+(%L?<0@VM}ui9V?UJZFt}s>zxDol;N%7YWbF`+^qD#HN)10*g8w5@u;16 z_Uu`@8ju-Aq0a?N+am38R_k$=-K!XA8@l=(qucE?xK-;&`*hU$;I4_1X+f*78yDqs z9QbH)C|@3`X1RS+dblk8_}=u&2MdP{864Vgs=F#14or;?-7w_gp~8XbZIY@ib5E_; z)}WP{_!&-HsN|zn{tFXqnFy;^9C+^6GuM7xYt6}LsIl&g>zO{L=y@{j&BWkhR>|JY zRnZdo+48V6Mu_=^xJR!<>>y(b0++@(GSKh z=gI0&mK;r7C39Utx_*^{7bHqoK+Ve2MXZh{&V`U9*m>bWj%A z`I65w>GN>r$Jml8oxm1r6PT^x{L;SXdb(8FS6sgjotwvYXB^9Lm@3`@*=4P(^pr*e z^)H!|xg>KJGw*y!2D*tx0g2f|eVRS3BvW92nUiH%Dd%(m$)6=%Kr(kqL*jiU^Pb|^ z7M+(D^pRon9W>g?j6PH+dp`C&a68C$e9S3H{RgxrR~K4>bFCNbSMu1__Mr1P!+Jl= zP3NF6r>O`nid9qx;#2H+q;yMNjFj5S1C^tx85wd7)>5^>c2hl=h>B?-SZ*+~8-R=- z!?_UsM$JO_fuIG*L2^7ciFW6K*#wN5fy#HOL3XDCYQb!&gOa8NJfWWFAczAx6GMus zfl)4vKb)avn|j7yo;zFW7&xfifZ&*|RE znzic*1oS%N-EEcg9A(=P_C%Gihizw>>;(&K#Ps020H$tx?QgU#VHxg|jVBWagdJ zo8jaZ6%k-R#=nC3@$Gi@$_b_rGWZOvJ0E4tqGm|99M!A$Yvr+mwDM=<@4(}z z335aaWS&C(x-weXehzh`L4HHA4gnlOr-8iY&j@dZIhkrNM>{c49?L*Ei;V#8NB@2~ zHABW8+Z+!c(DT)ajO=PaucRSjh74VPb11xK(yx(RWdN`*xC55c*F_o~j-p*tuV6{wkK8u!%{X0!>#yt|)5e^*DLH6nJ~2N}q|!x12}4uesX+RMeOH%*9g zdM%>q7=aOJryou#K{BWi7vL3vSkW7EnxPFhD6up;pdRF7INoRh>MS$J49Pb)TK?oR z>ZXIK07e1cr>C}smoGi3uVB0I&dC~y11=4}AI%B88$fhR7=aW^^X_iJMh;8T3rQZO z@-gHe=yF&`Xnjacy)Q}UVI4DJehmdJgP}4yl{U&GFegTIu!&7aQ!!N&p#$qMjSan6 zp&b>p(FPV;?FAI}n-c_=f>HIH_hK3JVy{du+Lp@T@)7eecrBpr=)f815ui0p0K+f< z(n@pg0!IvUl}(I=Aeyhhu}o_A{1(a#jG`c!LiO2v6ON29>eWFxeNlO$4!I!zbrNeU zQO8amnm0>%zAfoC6?{H?_z<$c0>WmHyccxM-AFbS$<~;!W`mYFL%9x7wIDhCoPq@a z_kj{t4k)^`e=w|StTvsj<9~10a;{jYOC}ig@4!$Yn6swt&^plhJ{LZM+AJ?4G5L)rf5H@yDux=-zb_# zSgB&zKm9=Xj*#SAh5PUA6zjj({ZhRa zhN4maEo$Ldj9*4P2(xOH3>}tq+dd+$Tg}3DMB+}%(>j*n<45&?)lwgv0J1$I$VVFi zF7A%an-iBMwsge1@4lhCf_81+yXEkP zqq2506&FUm|u7JhX2r8z}4sVyy+TAb2!^;?8=>tjuBrQf|h zanl*!jNH?el}$4+ODCg-B=g6vqXt-(U%{$8vpfbOx#GO^VUq2I7M3d3*@Cn-3`ov8md5DJq{nXY-?@9p*f`vv=AL#Lp1zTRp{l6*?Fa_=EMP@fgEw1KwOQ zU6V;i7?m>530J|z^@?>M(!JiG^+(WG`dYxEqo}uqA0x$$QSXE$+u=h%^=K3I5GcQ> z*V>nhXwlM-%#YVXr?~mW&Qy2n;*R7))@~Q{Lq`l8`-N|}k(+kfE>PRDUwzh3-#jkH zT6?s9b>xC6k!`d}lQj&rXHH7>k8s zHvpSmEKo1n2joyl5`}>#gP^uh6GMvr@GrP3n zWE+!6aBN$fvWDQ>)*WgVTFBwN&grb``8vtr+$(RB`v+fB4TKqsd_i&(R(B-gtqR$d zQFrZOu-p$@`a*o^#P(p7X(66G^EnKkQ7%5C>>D2Vgkjkh;Nla&GdZEKHXcCb=~QIa zCsO#Xt{NS|^J*)n^;OVEKoJq=lrPbmsm}dLsT%4tEEcg1SxKXxW5iu!+mIXTI@A-6 zj@<@#q;<0^0Sw@}hbHWD2Bjs{b%24r%08?^Ba{v2AZFucPDLuEQq(m_darVX=8I6) zj)C5aeV0=K>b`f-1P_?b3ESnY!Dc1|o0*;c6w_Q~42?dI3SMIi>Kp1mD9BtTgGPrs z-B1oj$e62ufIc(N(JpR3gSA7DJdPPLu&>E0K*PQsGGj~LfoRpxyd`faZ_~j*^7>3# zJ@fvB*Z5KIz>k>@{8;WjJKct%$Ut@oVRalrcxFdXpWYlrj_=DGAH-{U8Wo~h>tjh> zjgI7PpYW~Bbej6Vz(8a|^p91)Y5?yzW{uE6(LZme=%?8!`U!%aqHm6ma+oGWV94OZ zFd?G<%&Gp1)K6fZaLNibeEG@cFP2GKz;dswzTG}t2kRC}-aKNvZ!P`*T(9+P!u+Xr?u*nc-*ljpqIA^$GxMR3)cxia$PTXs_ z2fL4Q-{2nWzTf@0`=9xW<*SgdTE05@TITDJFF4(R>f{W#xM*OR_AR zU>l{DTwiW3x0XZYFnN-^Kwc_umiNfX@@e^zoF%_BnvI2xHHDra;pu(>T*a3p-^X z7^e&bZy6o8bIX=Et2Wr1yM@9HM~-qgqosGEe!z%+W4iiw?YnjFC|l2g`mTxTL05dQ zrtLbh7bojtf~MfNfU*HT*ZXH>+xuo^`yq5TV=HCN%CDoBSvTI+FCRa0VUTatHXSt~ z?=(?R$*85`K@gvsjqTdmdZ3AZU*eJVCwwm)4(e=cYDgT~C8m{cy{dgQH=G@aLmG?X z7{?ou(efBaf3}hum2dC_O2JRq0iY=7r_>{zdi>BlrOsBH`R0vH>BoM6wy9=Lf^jfe zGY4n|YNq$NG1hASxlU;F_BDMp4{B^f6{}hrRFOf8s&7j5IejAT>eUm$o!ZqHJ22X+ z9d|ST+_3%bvzIcr?^|d~obhBtbDxfFhc>pFU>Wwx`TMs2L3&Kz^Vs#!dpI!Zy%bz( zlHMlT8ZAfr?d`V0YJLh``>eNB?Vm!^KC2#-#eek1GHI3m&Wc;-u^gras{N=HwrYot zD0CjpC(+W{JbelJBF`4xk%4Vm_ZrZO9m)9l(>qkks(if7BCLTgF8l5{HdMOu7hz;f zSEpb5?$&cn^hb}J+I-3PdP;En_8mj(jSieMH_G;zVeZm|xv{?H7f+6lY}GzsU{(KS zJC60YwP~R5aOkIARQ5$H)q=@!J%v?>BUNZ~sqW-feXzrP^L*bxobQ|b{_}lnu;O)n z1}jHhX}fw@32egUk^UTMx%#n_djo35 zsAym_4v4fXIZ%e1r@pCfE|!zTRXfoZ8M}|)wRMtuOc+1TYOF@vTLyNXGU03M#BaV>k?8Yn z+`0n?c1##%H6GEvuzbC8`^;6oH|Cz+vhyyTtY#E`+ah(ZoXKOm=z}MZpBm&F88LrB zl+Bo>JqD#N?|d-hBCUmG=#cQfeTJ;xeK>v1x_Q=hv(h4Z6NM4aDC zawLPcQd`ijyk$<`o-|4l;etn0?zKNNXXJ^~uT-#*%SNBG?Hf36@@Hj2G$O{rs@ajbbHQH>%=yzG0Rv&8KAqIj}>=;r%<| zXzg(CC)!a12=uc4`Cbm`OK`$q z1;toVHUam`cD{`#+SSd_F)*;*fZ-b$-=?;{|6azoF-8U{#&=Z^)apohhYa}n(?B!T z;rd^5rk0?O4cg*9R%ndiAKk*1>UdvR3yt%%FE<$J3KQ@X*bU zLy;*-z?m61jhCO7jPtnr$=*o!wH&)~KeUlRd^e`xj8%tPlA z#Hl>77Fwnjwv=tOwzV{yRz@p*52?4MZSEnn(x8NSm+w=pRLMRMo;*Et|Ia@URxf8Y zc}3xD*eq>^fqr@h+6n@7!|YM4=z zTl$w&uf5b8v+p^K>wb>iR?#Y52lWWDo*UO?do^Favar3mvhX+HVBXOz=BS8%kz%&&g3z#=3jPwwWWQ1Hx9VXY( z;6#VpcTSwUiDMIS{3cxM)$In?}melcpm99z&6I9<6u#u z9EQ;antwMY&B{2Cbtu)f!hx*kkLrKb3^<6DAIOS>Su3&wS?4ja9P%qog`prE)=O}p zX3@0o&y$_s(|R~m^B-ehd5;nF3gcsX{jpKiykYbf609^sua%UvmD*)Jy{zTK0wKt7 z_7WWns)JEY2Cf^;l!hRFY>b>L8!LBZr^+&G!{6+?_%pXQJl}?sZ7N#2kLV7?RHm_N zGp0ia^}bQPXIa2HwcyX0v?{IY_p4U0ZRZiahT7Okvw{)S+=M*(oXx~6;Le0-LB#hu zRY2KypC{Yy(nfc6DnXxw8&w=%9NOQ|Myu9_!g!Jv8cSPCH(Fc1N5ljgz=wUkkl+tG#%#(PaFrxF3Qe<$)|1B{-B$AciENl zj8SJshta^(8&1<2r=Sh8`2s|*)nBbL3h$5ewl{~xj2XjD>WvB83{z>F*~!4(hKrZ6#O$p%zM!?TXz+6!rrQa$rp?s2 zo)#_jC#VM-jbX_t^x(OZ;ppa5Cr-e0U0q|$*En{UmimK6KF6u2j)kr<+zZW8Po0M0 zLXQ9r`zpl947+!?8+ONeUNG!#yw3DzjFk`S`;0b5{#2D2%^GC4xQ*f9H}ji6^c|&d zO8d=crt-frTC!EGUsGD}6>J^h5S5XN2`Y2|vgBHd5yvAt%{6s_ttKP6r|68wV(y|@ z8hekEjnSz%tE|~c9DDi`4y?V8d3d&L9IqgoNHE}V)+bP47`U~@EZQi`nBBjnY}~PO z%{m-uO8;VNIwu%g*hqW1X=No?zJVM@_*vN)jw6Dfs9sNur%;X4^ouiO(~XnKI$FtC zM>zhDssJz}t$#JDSpDtR1G*!#jh63l1}+`MW@~LtHcqUYLoe#k*;m7jG@EQU z3gkDT1rY^7cp+3LlZ47*Kfx^a5lVrnn?uCSM#3Fc+UV=hi3JQ0t0Kb>; zt1Ad%5d0?z`NhscS+RjoSoBBS0HLiNDtpnhAdjwS+%&SBv=tf4uwanh5@4EnE!{wke)Xg_39=e{xgsB@G2xtciD; z`;Yis(33xL;ho$OK1Vz1g&U}YMJPx#!58gbjptcd@D`Tmc46ft$AtXkF6tl)B@nhU z`BtbzG6gGXWWU5xC>OiFz;}MZ!Yh zxQK$QF|J@-{ou9)c`CV2g!6d60XKg?8@Xq={w*zgu1^v}sP#oW7k*0#{GhC(la}@t(c`-MI_bKZi z^oPUk-EgdYto$f5D?9JU&5p6o`ku8zbD@fug?8@@m<$GNu>LrPerEpYTZWHFIL792 z!AD#TIKw#9Mc^8NtEpfjREY6?MmXR!o+e8-1mCy->pV}47k}Ux6X4avVUfWGgGtvXV3Nbgzdad_TaWZGF2vS& zGT3FX^j}Yg4_O`l?Fn2d*2;YSSW zyfR}>1Wxv4W1rc zT;0VsLJeF3=B3ZYVaT6d2LwNna<__buSovFyBWB*rybYprU*sEP@$4I7-bqP)WuaD zS2KmdoLN!w4B!>_^5tne+ zW$nb)9c;~k`Jc`GeBMtNitu^eWp2lD^Hw&mvpJW~>6p(M9>JX61pW9GxewgE6Mcj7 z@jOlgx3c%DxSZ>-W>~+~0?z-Jbr{wG2Hp?#Q4iJ!Bk@Fg1LpjB+oD~Ox4&x}0!P@} zjkTA8clJbE@is!c@b*Ce@-}D;T*zREwZUnO)ww8(OW(V`=fQz%f8!l}cny8|Ii62& z-QaM+`pvb!T;JdB50*bGCwm3~S7RLEhlvH3EDXUMN`UFi6-D5;Syxa4=-#_z^-<$f!Xf!fAd_gTol%(kSMB zW7L?yk;0u&_Woe(fRJ&*_hX}uq9Wf|WcrkWt9MU1>A_k8cMJn@JdGfn2zw2<<^Eyg`0rh0H_U3nc3*Z$l ztj${4Vo*K7KF4@1F`bp%Ivp z9fbg)zc5UQ5@reuu#SiUlQLfTQFx4XtBS(7lLDkLDN4$a%A^))L|T%LB!KiM!;m)8 zM=kBoYK~_u$FoMBJNik;NBl^0(vyrN)5tQigCvnF4*v|+k4WddBVSi$0 z!@^m_YGQLSKnxM1#AV`6F-g24{vy8Ax$As%m2^#Xopgb^Fx_n3I^7<7Jl!(;(+v>F z^3f+bo{#NM$;_=-`!ubym2WGw`=aV-5B# z2^U@hLosO}Tq$#U#p+^Ju?jFy zchOI*A=VUYiFL%^tZ6+e`<#qw3fXU4xkz*E!xxG zDy*$yP}(l2=l`{x?5#BO|EZl83Plf+Py9gb}#6 zCcom|hE%}4tuPYzcA#m9q$0{a1*1Izb$coXli$eie99mpE1&Cyp1x#BgzfI8lrczZ55llISMtMUiBR$dJ4w zD#<2)6Ywd?EAkJ?B@`)i1kLR|`I9FI58m*bF%Z56!Z$~0Tvv=J%lq=jx>A%r1syg( z>>&nq$L!aDx62(S3F2=^c4@E?Tr9rGWAwK4M_1Ui<8m68cm z9hOQV{$!!tu%@=>w2Avzgn#(6h`_#CeD<9eU&wX%vS*$v&_7GH2!C={eE?FOBm9Q- zTbA$*_E~=kFGYjsF6I+u(I|R|o}x+2FBSmg>d1DoLu`Ta5%i9IHA@hit#u0^54Q3( z^Sg!LF`M95gx}dJimir4teXqqCm=kFu^K-SEx_7f6Mk;OE7Vwz5){A=0y&8VMQ2Xf zd7$Ol59?912EqO!KjN{nNPyr0NSEc(gx@>zdwzcJ%I~fC9dkc^UHJVkes9L_9r!(q z-#hdB3*;vvb+#tAAP*KV8ZHK*D8_GbP@79)$5t8?-Le?X<%J4DMNl+9$Bw!R#&%Vq znowP+A=CsVyf#L9U98f-6lM!^g?Yk!VU@5}h!b`SyM%8+my8z@ggu}?CJOt6{lWo2 z)gj?9Xq88WV?vT}Tu2s92q%S8*d3k`&I;#%iTr^1TJW`eC(?yCETnNKn~$HSLFj0LV?9pRik zdJb!v3Ru%r0!@ctB$RRX^&9RU|B?#JLqdrbIqQdSH{uUH^Yx$Y+$X(M}-b!qAM^Q!)xyFVe}O%aEFt=!gi~Srowzk@Zd3w=7KkV zxgiY!t>z_;(FeK@lWUo<<0^C;Eh&7`yzr+8SrY#Fb6@5j&%K-b09QutRlM)Z-GKM2 z{JtUg&)na0pXWZslU*-yf0~C+x$&+McuEi8dQ*^* z=2cfe`+M%6&L{jIxccX^UGjVW>@nW;MIQVw_bEzp^L=@}nON?lH^1Ng%6*lqq3jyc z)85VRJ>fML*7Yy5bW2x->>*Jcz z|MHG{9tTt~Xg!VRfA-gZ<-yWm_06k?_WzpZn?1%`36KI;jG+H2&HMdb`@=N^FZ&zt z;p+RL_xFti2Gtn*F3|R&6h7={A0aG^15Qq(#}4Di@WTW2-Ba}5O}sJpRD7lK9(9aX zd)n{o2ZRJJ;^`s{d$_mn41YQE#q;Uwy5_FoG2f_R?pBm)dhVj!DR_H;=RUM5U>m8t zM5)*~No8NS7$!?a*#UF8-4K3*AQp&b5bsmL=Vw5CIk?Z`HCzt-nUOmasl_4n)AoGd zF6aO9?bcT{eyw{{7dH#8du=vBse8<7@WcA<-KyxCkYD#DB+gSCdfh)C z+d87>O*RI6)lVDn{SIa^)B!#8?|t;X61;Y^!ya0M!8KcrFnnpyv@T zhBa82M;se=5&xK3JuGh7?$fJ7CQo z@_)NK$Nv8oo5f=I4ZXeyDB!<#Wa{_A7gBd;Z0=3&5M-bx>3duv?0T?Rlf z8@I>N6E2wZ?NA^3c3=v}dip~l|IH8W&hYOdhIii%H(Na{YFu;Oh3C_cEaT zG{(NOF@A6TaX2r7U3O!XQUmp*45(yf-U`H4CTzrS1yprZT9iU)Y+jZoLL81$oUK8Oq79nWZC$4>o?w2%W@_k$Rk)$#3eqlE9o;pKAdHC^*? zeg9Z|$L9I}8X>t`T~l_xzYCANT!1ZSi1$66Bj$BI0fq0u%{;9Swmi!17=5qX8+hv- zjD>KlAF)P$UwNEvd1>XX@YtCB_c*NI0Xd9Dbn|`Xx2O9i<^lG9V@>L8LFdz1mXCkF zZpDv};~MgR&)GE<`}_MxC~qf@yFSoL|A*bwyZOG?W#oHZ|NnMml0^SM{k@Av{$CPC zYK*_rERWAp861^)@8O!{@kmGs$Thvq3$b%GQXn1hDVGl@$|VGtd_Y6+`5S|S@04Je z3t5F#oD07e-1GI2MA!kD115X08`1{}kT)gZ<}h9l%c> zNO>F}@NeGb(!A!;q;Xz-b4V_<6k9=Zp$#M$LLfOY3(^>n#6Y@*IY+7v<0O&ekb`Ik zsfG@aYxn{Z0$)2MHI_lf!Y*q8=>f#4k3FCfvV6Y6r{H7Rxjs&wPg@sm&j1HieHOSE zP7cpGA%m19;_!BZS21PSAXFdSOhk#6921dssSdy<~G_a?n@?@Ri^w?FBR`%1DB_tj)I?rRBB03R&{a<`CO0e8eE z76VrRuqhY-olS6`B2IyOq!=maAY~H;->KqMxX%@tMCyETKJKf;^$4>8^7MK@><+l> z6ccbi0Eji9HqmH1#_@H>k8xDl&lA5A;Irh%y(oS%Mp-dDSmq%K;Lt$PcA3)BMKny&bHfeY9T{Ne8S z6#_Rf06f*6_<8dlD*#D`kq8-zpGg>vUw&|B#)03%`mzLiGaRW+#IFQ+sIyU8#zmEc zmG~79w%}I){M2~3vtE(xy&@#zCxUl+8l`2N(|p1?{EBl9qBki)P=CN?S@3TFow$Ea zJ_om{GC{2|zN8_v)lN-obmtdn?i!@9iO4>uAPuL_5zo77v8^x_L3L)wY%{iPvY^um+Xb?^gd{9>A}A}fcqhG2=^o82<}J8 zQPlJpbf?_G)jbaR&Sa7dX`2(|1T<$(kyE&zA!kspv*ax5!XXv1k7>yLG2~4O0&1<0 z)n`!q3GiGc+-rz6pryiK_Y+{Awvg_I%#=_V5>uTaz0pPN0zIBUaj4)4iHu=_2Qc9X zgq#e$0xO4g8;9~wAW0St_pimTks5>bPdKc90y(mUNOKWnnhQgoY%!$vmxxP{@=}c7 z&maS}4C${DV^AtK9zNkC;S*r8eF(o_+z;P_z-GSUA;{Gf1YCRud|nz*&LCa~yj}rt zQxQLR@aX5FT^JnbI2^cfIM8u8aN}^G<8a`{;XucGRL6T%$9q)AdsGKL`waB!OfnOx z&4zw}J6ftd>QE7K)^3;?Dr3}QcEG(RG%^fK4h`?!#qPLI7pFrmoVA4;ldOZwOmQZ{ zK(-F=TgC0T$BA)(Y!SS4Hp=s3G#Y@B*jUfcM|vqf*7X=sCX6ID;`JCIMe)T(ydBpS zmGcp%Y3YR@=>0jb2it20fBAwhpavVvZAY?K=3gUNJ2^TC`}<;=~CjYVAe% zm)@h*L;LZ~36B#SoUmPNU(g;U(;_fRT1H7^l(dYJ$S7$UB~k0olY0MC?kOEjjutth zb|*ZeSImzMet7)w_~Erqe*0pDA}xxvDAJ-xt6dBa^><%!ujpu^w2Z%&@z*l`T0}_@ zrDfe|S$A6eaQLys4~HLH{BZcO#g7wyobcm>A1C}c;YYxa3O{Q6*ki^9Graac{8Rsa zlcU9q4Q6DR5iuiT#<1Q+?YR7g=B~+cK#ptVxQ!eO=0|$}tNzuCDSl-5 z5t%a)KZdn3;zv~ed8GH7A_o+?Mv)_m+(wZCMHVQMp-4oLh$7c0vOtjqiflB3A~UB@ zO1UpfzNAN@mGaA)hqhK`%%6glXu=39l;D0Y58ik0OP3Ga2Ri=2X%Cn7-TX<3!JMDq z{DkY2afLFjO~zFzxGDu#rQoU*T$KW!C!EKW^O$pvQf0rlWQqO$l;3a3;BS~wV8)OS z3e2!wRkeIHGgg?9OPDDb1jj}?B@_>thp5F+2FyyxE2(b7qRB?*=!+6(oeUbnG(#n`=K>|SYa)L*pE(2~joX?n)- z1ZjFk^8{&nEV+jz8J6T&60zinB{h~TvBd7c_(r@J4QFs#I|$1to??esf+yXB!Zl6h5`f7K^gecdBu@`rs9ZL;`uivm{DRzg&8$wRG86VMuiy-W>lEbV8$FX7MRgu#u76+%vfQ@ z8Z#QSsL^7B7Mn3`SoJaFj15k>u?Df6QQ|~}4HY)H&r~826)IF%qk=<)8Wn0(s8FH( zziJRm6%{H}pQ=YJRaB@@qk=;PhYAiA%FnG$ELBvfQ2oz3B}at@6`KE2vzQ7EDnwL> zs1Q+MjtU+X7O3D+VSx%B6&9$_BEcF7Y9w$-P@dHz5eeoZQf6r_cP{w7;70zBt0|!7Bharj1Oa7 zV>3RC)r}?kz>L3S#)q-ev6VWE^^VQ>z>M#i@jGVxo;f`kYaE-?;jGfxGmmS{!28U= zgf)Gr02Zv{GiH(QBhVw$T>84I;-~c}&t_CJ?pOS#cJsE(F0a}3tln>Hal>BgDKlij z3|WxMbJoxW>!!_zcl7>u^(eK|_d`9m++8sTrsKH3aW|@uo^ZOCLEWKGD)5FeU9!5B zj91TyEY&sosots1krJh?N?!e=-|A>r|kzK{nQ=EJC+n~5F|WYkDfwwN<|pf~thJx@Yx=iY zm&LB))5@V%b4BgIenxeWRbG*+6%nq}-q-Kx{g#I^uH1nuci_rhA>5KYl#z#)T+0K_ zHPpjB+BuwyBaThCI5Zh#s89fNynGn z%Q{*m6}4;r2YPPxl%t+<)KiXn%4sM4PxPm+xz}`j-My~k8}1DqEho*jXZ%gwU2Zjh zPtD&`^Y_|k|0})n$UV~WZTGg0?>hA@P}7m699hay6ZF&sJvBj(pgRQJA?R*QRMz#G zj48@GJ$q_`JvG6enqW^&uqRhd$6RIIoi*K^HJUa!>PS>O>}(Nnfq5mlr)I^U>HeDU zsN?d$KhW_-|DukjV8ZP3%&UNTEvhXLt0X5>Fhj4Fv@jzr%ry6In0wacE%a=v zhut&YYR&~c8jYe}&#lK;s`L9*{i%(6+e!VL>MW}XQr7p3^*v{OFIeBFjQ%<6`;7HH z*FNwU^a*zVNymIh825>~#Xr+XwVHp%Sj-uDxq8RH*SWS8ZK8euf7H>kZOZzUv07!U zRzq%`u^y%BFE7<43qEMK_VfPvi-mg4-_`L2uW$Dc{X?ZN>s(d({crL6*VuF9EUfWn zk2lwNvmejMQk~RFLT&$Zb`Fv#;?Nd>0`>&d+2Kt8eXZ9Albe!2W zqGYTHIj&^5vcZ*M705X6J?FjPj88e^GtPC%`5o%7HHj)moom#&#+yCoeT_GJyt&4k zEz$&}89Kacj9IgSWEiu>n1C(;S3ItCh>~#?OJ|*%Eo)6q#>%;_8O8)>9o`ga0zI1) zZ-TQ9Z_2gLP$xs3K+h({o{V&rBhVIswg|LEpnyODfdT>r?8z`@=>G9w9jxbjNxDkOQYmR^=rznqNG)b8F=K@g2ZXpHA*Bd$Nghf` sLMgc?CGiZsi8(2!MUDk>ERkb{9GB#tl*E%##SE6Luw+I0$uBPc4dLHiI{*Lx diff --git a/packages/neuron-ui/public/fonts/ProximaNova-Semibold.ttf b/packages/neuron-ui/public/fonts/ProximaNova-Semibold.ttf deleted file mode 100644 index f406ffebce1f965f099602a8d3d21f10e36650f3..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 90132 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 Date: Fri, 31 Oct 2025 09:50:10 +0800 Subject: [PATCH 21/29] fix: spell fix --- packages/neuron-ui/src/components/ImportHardware/common.ts | 2 +- .../src/components/ImportHardware/detect-device.tsx | 2 +- packages/neuron-ui/src/components/ImportHardware/index.tsx | 6 +++--- packages/neuron-ui/src/components/WalletWizard/index.tsx | 2 +- packages/neuron-ui/src/locales/ar.json | 2 +- packages/neuron-ui/src/locales/en.json | 2 +- packages/neuron-ui/src/locales/es.json | 2 +- packages/neuron-ui/src/locales/fr.json | 2 +- packages/neuron-ui/src/locales/zh-tw.json | 2 +- packages/neuron-ui/src/locales/zh.json | 2 +- packages/neuron-wallet/src/services/sync-progress.ts | 4 ++-- 11 files changed, 14 insertions(+), 14 deletions(-) diff --git a/packages/neuron-ui/src/components/ImportHardware/common.ts b/packages/neuron-ui/src/components/ImportHardware/common.ts index 5eaab9987a..f432c1c9cf 100644 --- a/packages/neuron-ui/src/components/ImportHardware/common.ts +++ b/packages/neuron-ui/src/components/ImportHardware/common.ts @@ -3,7 +3,7 @@ import { FailureFromController } from 'services/remote/remoteApiWrapper' export enum ImportStep { DetectDevice = '/detect-device', - Comfirming = '/confirming', + Confirming = '/confirming', Error = '/error', Success = '/success', NameWallet = '/name-wallet', diff --git a/packages/neuron-ui/src/components/ImportHardware/detect-device.tsx b/packages/neuron-ui/src/components/ImportHardware/detect-device.tsx index 5998c2dc1d..66e404e66e 100644 --- a/packages/neuron-ui/src/components/ImportHardware/detect-device.tsx +++ b/packages/neuron-ui/src/components/ImportHardware/detect-device.tsx @@ -98,7 +98,7 @@ const DetectDevice = ({ dispatch, model }: { dispatch: React.Dispatch { - dispatch({ step: ImportStep.Comfirming }) + dispatch({ step: ImportStep.Confirming }) }, [dispatch]) const errorMsg = error.startsWith('messages.codes.') ? t(error) : error diff --git a/packages/neuron-ui/src/components/ImportHardware/index.tsx b/packages/neuron-ui/src/components/ImportHardware/index.tsx index 4aadfaf5d9..7af44a31c4 100644 --- a/packages/neuron-ui/src/components/ImportHardware/index.tsx +++ b/packages/neuron-ui/src/components/ImportHardware/index.tsx @@ -1,6 +1,6 @@ import React, { useEffect, useReducer } from 'react' import { useDialogWrapper } from 'utils' -import Comfirming from './confirming' +import Confirming from './confirming' import ImportError from './import-error' import SelectModel from './select-model' import DetectDevice from './detect-device' @@ -33,7 +33,7 @@ const Content = () => { switch (importHardwareStates.step) { case ImportStep.ImportHardware: case ImportStep.DetectDevice: - case ImportStep.Comfirming: + case ImportStep.Confirming: case ImportStep.Error: case ImportStep.Success: return ( @@ -43,7 +43,7 @@ const Content = () => { {ImportStep.DetectDevice === importHardwareStates.step && ( )} - {ImportStep.Comfirming === importHardwareStates.step && } + {ImportStep.Confirming === importHardwareStates.step && } {ImportStep.Error === importHardwareStates.step && ( )} diff --git a/packages/neuron-ui/src/components/WalletWizard/index.tsx b/packages/neuron-ui/src/components/WalletWizard/index.tsx index cf5443f2f4..8f1bac5414 100644 --- a/packages/neuron-ui/src/components/WalletWizard/index.tsx +++ b/packages/neuron-ui/src/components/WalletWizard/index.tsx @@ -304,7 +304,7 @@ const Mnemonic = ({ state = initState, rootPath = '/wizard/', dispatch }: Wizard
- {t('wizard.do-not-save-scrrenshots')} + {t('wizard.do-not-save-screenshots')}
)} diff --git a/packages/neuron-ui/src/locales/ar.json b/packages/neuron-ui/src/locales/ar.json index 34da53d5d8..5cd32e2961 100644 --- a/packages/neuron-ui/src/locales/ar.json +++ b/packages/neuron-ui/src/locales/ar.json @@ -188,7 +188,7 @@ "wallet-suffix": "محفظة {{suffix}}", "handwritten-recommended": "يوصى بالنسخ اليدوي", "do-not-copy": "لا تقم بالنسخ", - "do-not-save-scrrenshots": "لا تحفظ لقطات الشاشة", + "do-not-save-screenshots": "لا تحفظ لقطات الشاشة", "replenish-your-seed": "يرجى استعادة بذرة محفظتك", "new-name": "استخدم اسمًا غير مستخدم للمحفظة الجديدة", "complex-password": "يجب أن تتكون كلمة المرور من 8 إلى 50 حرفًا وتحتوي على ثلاث فئات على الأقل من الفئات التالية: حروف كبيرة، حروف صغيرة، أرقام، ورموز خاصة.", diff --git a/packages/neuron-ui/src/locales/en.json b/packages/neuron-ui/src/locales/en.json index c083028797..f0765ca73d 100644 --- a/packages/neuron-ui/src/locales/en.json +++ b/packages/neuron-ui/src/locales/en.json @@ -188,7 +188,7 @@ "wallet-suffix": "Wallet {{suffix}}", "handwritten-recommended": "Handwritten transcription recommended", "do-not-copy": "Do not copy", - "do-not-save-scrrenshots": "Do not save scrrenshots", + "do-not-save-screenshots": "Do not save screenshots", "replenish-your-seed": "Please replenish your wallet seed", "new-name": "Use an unused name for the new wallet", "complex-password": "The password should be 8 to 50 characters long containing at least three character categories among the following: uppercase letters, lowercase letters, numbers, and special symbols.", diff --git a/packages/neuron-ui/src/locales/es.json b/packages/neuron-ui/src/locales/es.json index 1703994fa9..a40a379278 100644 --- a/packages/neuron-ui/src/locales/es.json +++ b/packages/neuron-ui/src/locales/es.json @@ -181,7 +181,7 @@ "wallet-suffix": "Billetera {{suffix}}", "handwritten-recommended": "Se recomienda transcripción a mano", "do-not-copy": "No copiar", - "do-not-save-scrrenshots": "No guardar capturas de pantalla", + "do-not-save-screenshots": "No guardar capturas de pantalla", "replenish-your-seed": "Por favor, repón la semilla de tu billetera", "new-name": "Usa un nombre no usado previamente para la nueva billetera", "complex-password": "La contraseña debe tener entre 8 y 50 caracteres y contener al menos tres categorías de caracteres entre las siguientes: letras en mayúscula, letras en minúscula, números y símbolos especiales.", diff --git a/packages/neuron-ui/src/locales/fr.json b/packages/neuron-ui/src/locales/fr.json index 503582172b..3fb0b73d0f 100644 --- a/packages/neuron-ui/src/locales/fr.json +++ b/packages/neuron-ui/src/locales/fr.json @@ -188,7 +188,7 @@ "wallet-suffix": "Wallet {{suffix}}", "handwritten-recommended": "Transcription manuscrite recommandée", "do-not-copy": "Ne pas copier", - "do-not-save-scrrenshots": "Ne pas sauvegarder de captures d'écran", + "do-not-save-screenshots": "Ne pas sauvegarder de captures d'écran", "replenish-your-seed": "Veuillez reconstituer la graine de votre portefeuille", "new-name": "Utilisez un nom inutilisé pour le nouveau Wallet", "complex-password": "Le mot de passe doit contenir entre 8 et 50 caractères, comprenant au moins trois catégories parmi les suivantes : lettres majuscules, lettres minuscules, chiffres et symboles spéciaux.", diff --git a/packages/neuron-ui/src/locales/zh-tw.json b/packages/neuron-ui/src/locales/zh-tw.json index f51df2ed47..ef3448be78 100644 --- a/packages/neuron-ui/src/locales/zh-tw.json +++ b/packages/neuron-ui/src/locales/zh-tw.json @@ -182,7 +182,7 @@ "wallet-suffix": "錢包 {{suffix}}", "handwritten-recommended": "推薦手寫抄錄", "do-not-copy": "不要複製", - "do-not-save-scrrenshots": "不要保存截圖", + "do-not-save-screenshots": "不要保存截圖", "replenish-your-seed": "請補充您的助記詞", "new-name": "輸入新的錢包名稱", "complex-password": "密碼為 8 至 50 字元由大寫字母、小寫字母、數位、特殊符號中至少三種字元組成的字串。", diff --git a/packages/neuron-ui/src/locales/zh.json b/packages/neuron-ui/src/locales/zh.json index 1b9a620607..e7e274c9fc 100644 --- a/packages/neuron-ui/src/locales/zh.json +++ b/packages/neuron-ui/src/locales/zh.json @@ -181,7 +181,7 @@ "wallet-suffix": "钱包 {{suffix}}", "handwritten-recommended": "推荐手写抄录", "do-not-copy": "不要复制", - "do-not-save-scrrenshots": "不要保存截图", + "do-not-save-screenshots": "不要保存截图", "replenish-your-seed": "请补充您的助记词", "new-name": "输入新的钱包名称", "complex-password": "密码为 8 至 50 位由大写字母、小写字母、数字、特殊符号中至少三类字符组成的字符串。", diff --git a/packages/neuron-wallet/src/services/sync-progress.ts b/packages/neuron-wallet/src/services/sync-progress.ts index 5098916c6e..d6c081d9ec 100644 --- a/packages/neuron-wallet/src/services/sync-progress.ts +++ b/packages/neuron-wallet/src/services/sync-progress.ts @@ -25,8 +25,8 @@ export default class SyncProgressService { }, }) const existHashes = new Set(existProgresses.map(v => v.hash)) - const newSyncProgreses = syncProgresses.filter(v => !existHashes.has(v.hash)) - await getConnection().manager.save(newSyncProgreses, { chunk: 100 }) + const newSyncProgresses = syncProgresses.filter(v => !existHashes.has(v.hash)) + await getConnection().manager.save(newSyncProgresses, { chunk: 100 }) } static async updateSyncProgressFlag(existWalletIds: string[]) { From 522dbcfd29b589c3632e32635dc5bcfcdfaefba1 Mon Sep 17 00:00:00 2001 From: walker27 Date: Fri, 31 Oct 2025 09:50:53 +0800 Subject: [PATCH 22/29] chore: fix github actions node version --- .github/workflows/package.yml | 3 +-- .github/workflows/package_for_test.yml | 3 +-- 2 files changed, 2 insertions(+), 4 deletions(-) diff --git a/.github/workflows/package.yml b/.github/workflows/package.yml index d8b1cd8c38..d913e09c5f 100644 --- a/.github/workflows/package.yml +++ b/.github/workflows/package.yml @@ -11,8 +11,7 @@ jobs: default: strategy: matrix: - node: - - lts/* + node: [22] os: - macos-latest - ubuntu-latest diff --git a/.github/workflows/package_for_test.yml b/.github/workflows/package_for_test.yml index a0988618eb..4bfa24c5be 100644 --- a/.github/workflows/package_for_test.yml +++ b/.github/workflows/package_for_test.yml @@ -11,8 +11,7 @@ jobs: strategy: matrix: - node: - - lts/* + node: [22] os: - macos-latest - ubuntu-latest From de1f1d423db157758d8ed07bd6e39fe51ce9f249 Mon Sep 17 00:00:00 2001 From: "github-actions[bot]" <41898282+github-actions[bot]@users.noreply.github.com> Date: Sun, 4 Jan 2026 09:33:28 +0800 Subject: [PATCH 23/29] Update ckb client versions (#3422) feat: update ckb client versions Co-authored-by: Keith-CY <7271329+Keith-CY@users.noreply.github.com> --- .ckb-light-version | 2 +- .ckb-version | 2 +- compatible.json | 12 ++++++++++++ 3 files changed, 14 insertions(+), 2 deletions(-) diff --git a/.ckb-light-version b/.ckb-light-version index 4bc4a91610..8ea9cc1eb1 100644 --- a/.ckb-light-version +++ b/.ckb-light-version @@ -1 +1 @@ -v0.5.3 +v0.5.4 diff --git a/.ckb-version b/.ckb-version index 686179eae1..96aac1ee85 100644 --- a/.ckb-version +++ b/.ckb-version @@ -1 +1 @@ -v0.203.0 +v0.204.0 diff --git a/compatible.json b/compatible.json index 9fb78c939d..235bb9bc79 100644 --- a/compatible.json +++ b/compatible.json @@ -1,5 +1,6 @@ { "fullVersions": [ + "0.204", "0.203", "0.202", "0.201", @@ -33,6 +34,7 @@ "compatible": { "0.111": { "full": [ + "0.204", "0.203", "0.202", "0.201", @@ -60,6 +62,7 @@ }, "0.110": { "full": [ + "0.204", "0.203", "0.202", "0.201", @@ -103,6 +106,7 @@ }, "0.112": { "full": [ + "0.204", "0.203", "0.202", "0.201", @@ -130,6 +134,7 @@ }, "0.114": { "full": [ + "0.204", "0.203", "0.202", "0.201", @@ -157,6 +162,7 @@ }, "0.116": { "full": [ + "0.204", "0.203", "0.202", "0.201", @@ -184,6 +190,7 @@ }, "0.117": { "full": [ + "0.204", "0.203", "0.202", "0.201", @@ -211,6 +218,7 @@ }, "0.119": { "full": [ + "0.204", "0.203", "0.202", "0.201", @@ -238,6 +246,7 @@ }, "0.120": { "full": [ + "0.204", "0.203", "0.202", "0.201", @@ -265,6 +274,7 @@ }, "0.121": { "full": [ + "0.204", "0.203", "0.202", "0.201", @@ -292,6 +302,7 @@ }, "0.201": { "full": [ + "0.204", "0.203", "0.202", "0.201", @@ -319,6 +330,7 @@ }, "0.202": { "full": [ + "0.204", "0.203", "0.202", "0.201", From ea67f635e2f234509b619ff4ddff3b2c59b3ba30 Mon Sep 17 00:00:00 2001 From: yajianggroup Date: Sun, 4 Jan 2026 09:59:17 +0800 Subject: [PATCH 24/29] chore: fix broken url (#3413) MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit Signed-off-by: yajianggroup Co-authored-by: zhangyaning Co-authored-by: 郑州 --- README.md | 2 +- packages/neuron-wallet/src/services/node.ts | 2 +- 2 files changed, 2 insertions(+), 2 deletions(-) diff --git a/README.md b/README.md index e953803473..abd0b21c57 100644 --- a/README.md +++ b/README.md @@ -44,7 +44,7 @@ Download [CKB Indexer](https://github.com/nervosnetwork/ckb-indexer/releases) an As of `v0.26.0`, Neuron bundles a CKB binary and starts it for Mainnet automatically. If you prefer to run a local CKB node yourself instead, please follow the [Nervos CKB doc](https://docs.nervos.org/docs/basics/guides/mainnet) to get it up and running before launching Neuron. -**Note**: If you run CKB node on Windows but it fails to start, you may need to download and install the latest [Microsoft Visual C++ Redistributable for Visual Studio 2015, 2017 and 2019](https://support.microsoft.com/en-us/help/2977003/the-latest-supported-visual-c-downloads). +**Note**: If you run CKB node on Windows but it fails to start, you may need to download and install the latest [Microsoft Visual C++ Redistributable for Visual Studio 2015, 2017 and 2019](https://learn.microsoft.com/en-us/cpp/windows/latest-supported-vc-redist?view=msvc-170). ### Start Neuron in Development Mode diff --git a/packages/neuron-wallet/src/services/node.ts b/packages/neuron-wallet/src/services/node.ts index 1808d585de..25220fe1d1 100644 --- a/packages/neuron-wallet/src/services/node.ts +++ b/packages/neuron-wallet/src/services/node.ts @@ -224,7 +224,7 @@ class NodeService { noLink: true, }) .then(() => { - const VC_REDIST_URL = `https://support.microsoft.com/en-us/help/2977003/the-latest-supported-visual-c-downloads` + const VC_REDIST_URL = `https://learn.microsoft.com/en-us/cpp/windows/latest-supported-vc-redist?view=msvc-170` shell.openExternal(VC_REDIST_URL) env.app.quit() return false From 424347e58811f25846829618f48093938de5390b Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=E9=83=91=E5=B7=9E?= Date: Mon, 5 Jan 2026 16:13:08 +0800 Subject: [PATCH 25/29] chore: update AppId (#3426) --- packages/neuron-wallet/electron-builder.yml | 2 +- packages/neuron-wallet/scripts/notarize.js | 2 +- renovate.json | 2 +- 3 files changed, 3 insertions(+), 3 deletions(-) diff --git a/packages/neuron-wallet/electron-builder.yml b/packages/neuron-wallet/electron-builder.yml index 3e77ad10c6..4e7e6ddae7 100644 --- a/packages/neuron-wallet/electron-builder.yml +++ b/packages/neuron-wallet/electron-builder.yml @@ -1,4 +1,4 @@ -appId: com.nervos.neuron +appId: com.nervos.app5.neuron copyright: Copyright (C) 2019-2025 Nervos Foundation. productName: Neuron diff --git a/packages/neuron-wallet/scripts/notarize.js b/packages/neuron-wallet/scripts/notarize.js index c10b8d0627..2fe792cbaf 100644 --- a/packages/neuron-wallet/scripts/notarize.js +++ b/packages/neuron-wallet/scripts/notarize.js @@ -26,7 +26,7 @@ exports.default = async function notarizing(context) { try { await notarize({ - appBundleId: 'com.nervos.neuron', + appBundleId: 'com.nervos.app5.neuron', appPath: `${appOutDir}/${appName}.app`, appleId, appleIdPassword, diff --git a/renovate.json b/renovate.json index 3407c63b12..3caf358445 100644 --- a/renovate.json +++ b/renovate.json @@ -8,5 +8,5 @@ "addLabels": ["types"] } ], - "reviewers": ["Magickbase/neuron"] + "reviewers": ["Appfi5/neuron"] } From 6f003df21b42ab52403a64abea33161487a50e32 Mon Sep 17 00:00:00 2001 From: "dependabot[bot]" <49699333+dependabot[bot]@users.noreply.github.com> Date: Tue, 6 Jan 2026 10:31:40 +0800 Subject: [PATCH 26/29] chore(deps): bump qs from 6.14.0 to 6.14.1 (#3425) MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit Bumps [qs](https://github.com/ljharb/qs) from 6.14.0 to 6.14.1. - [Changelog](https://github.com/ljharb/qs/blob/main/CHANGELOG.md) - [Commits](https://github.com/ljharb/qs/compare/v6.14.0...v6.14.1) --- updated-dependencies: - dependency-name: qs dependency-version: 6.14.1 dependency-type: indirect ... Signed-off-by: dependabot[bot] Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com> Co-authored-by: 郑州 --- yarn.lock | 15 +++------------ 1 file changed, 3 insertions(+), 12 deletions(-) diff --git a/yarn.lock b/yarn.lock index fe97d03155..861c911235 100644 --- a/yarn.lock +++ b/yarn.lock @@ -7922,15 +7922,6 @@ electron@36.8.1: "@types/node" "^22.7.7" extract-zip "^2.0.1" -electron@36.8.1: - version "36.8.1" - resolved "https://registry.yarnpkg.com/electron/-/electron-36.8.1.tgz#c27dfb13fcc1bedf29929fe67430ee13a778c4df" - integrity sha512-honaH58/cyCb9QAzIvD+WXWuNIZ0tW9zfBqMz5wZld/rXB+LCTEDb2B3TAv8+pDmlzPlkPio95RkUe86l6MNjg== - dependencies: - "@electron/get" "^2.0.0" - "@types/node" "^22.7.7" - extract-zip "^2.0.1" - elliptic@6.6.1, elliptic@^6.5.3, elliptic@^6.5.4, elliptic@^6.5.5: version "6.6.1" resolved "https://registry.yarnpkg.com/elliptic/-/elliptic-6.6.1.tgz#3b8ffb02670bf69e382c7f65bf524c97c5405c06" @@ -14060,9 +14051,9 @@ qr.js@0.0.0: integrity sha512-c4iYnWb+k2E+vYpRimHqSu575b1/wKl4XFeJGpFmrJQz5I88v9aY2czh7s0w36srfCM1sXgC/xpoJz5dJfq+OQ== qs@^6.12.3: - version "6.14.0" - resolved "https://registry.yarnpkg.com/qs/-/qs-6.14.0.tgz#c63fa40680d2c5c941412a0e899c89af60c0a930" - integrity sha512-YWWTjgABSKcvs/nWBi9PycY/JiPJqOD4JA6o9Sej2AtvSGarXxKC3OQSk4pAarbdQlKAh5D4FCQkJNkW+GAn3w== + version "6.14.1" + resolved "https://registry.yarnpkg.com/qs/-/qs-6.14.1.tgz#a41d85b9d3902f31d27861790506294881871159" + integrity sha512-4EK3+xJl8Ts67nLYNwqw/dsFVnCf+qR7RgXSK9jEEm9unao3njwMDdmsdvoKBKHzxd7tCYz5e5M+SnMjdtXGQQ== dependencies: side-channel "^1.1.0" From 6acf6f7ae5cd690c895f4da25beb555571430c89 Mon Sep 17 00:00:00 2001 From: "dependabot[bot]" <49699333+dependabot[bot]@users.noreply.github.com> Date: Tue, 6 Jan 2026 10:35:14 +0800 Subject: [PATCH 27/29] chore(deps): bump tar-fs from 2.1.3 to 2.1.4 (#3412) Bumps [tar-fs](https://github.com/mafintosh/tar-fs) from 2.1.3 to 2.1.4. - [Commits](https://github.com/mafintosh/tar-fs/compare/v2.1.3...v2.1.4) --- updated-dependencies: - dependency-name: tar-fs dependency-version: 2.1.4 dependency-type: indirect ... Signed-off-by: dependabot[bot] Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com> --- yarn.lock | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/yarn.lock b/yarn.lock index 861c911235..1241883c3b 100644 --- a/yarn.lock +++ b/yarn.lock @@ -15736,9 +15736,9 @@ symbol-tree@^3.2.4: integrity sha512-9QNk5KwDF+Bvz+PyObkmSYjI5ksVUYtjW7AU22r2NKcfLJcXp96hkDWU3+XndOsUb+AQ9QhfzfCT2O+CNWT5Tw== tar-fs@^2.0.0: - version "2.1.3" - resolved "https://registry.yarnpkg.com/tar-fs/-/tar-fs-2.1.3.tgz#fb3b8843a26b6f13a08e606f7922875eb1fbbf92" - integrity sha512-090nwYJDmlhwFwEW3QQl+vaNnxsO2yVsd45eTKRBzSzu+hlb1w2K9inVq5b0ngXuLVqQ4ApvsUHHnu/zQNkWAg== + version "2.1.4" + resolved "https://registry.yarnpkg.com/tar-fs/-/tar-fs-2.1.4.tgz#800824dbf4ef06ded9afea4acafe71c67c76b930" + integrity sha512-mDAjwmZdh7LTT6pNleZ05Yt65HC3E+NiQzl672vQG38jIrehtJk/J3mNwIg+vShQPcLF/LV7CMnDW6vjj6sfYQ== dependencies: chownr "^1.1.1" mkdirp-classic "^0.5.2" From fb31790b25f8115886d4420552d537c56a2cc216 Mon Sep 17 00:00:00 2001 From: "dependabot[bot]" <49699333+dependabot[bot]@users.noreply.github.com> Date: Tue, 6 Jan 2026 10:35:14 +0800 Subject: [PATCH 28/29] chore(deps): bump typeorm from 0.3.17 to 0.3.26 (#3418) Bumps [typeorm](https://github.com/typeorm/typeorm) from 0.3.17 to 0.3.26. - [Release notes](https://github.com/typeorm/typeorm/releases) - [Changelog](https://github.com/typeorm/typeorm/blob/master/CHANGELOG.md) - [Commits](https://github.com/typeorm/typeorm/compare/0.3.17...0.3.26) --- updated-dependencies: - dependency-name: typeorm dependency-version: 0.3.26 dependency-type: direct:production ... Signed-off-by: dependabot[bot] Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com> --- packages/neuron-wallet/package.json | 2 +- yarn.lock | 273 ++++++++++------------------ 2 files changed, 102 insertions(+), 173 deletions(-) diff --git a/packages/neuron-wallet/package.json b/packages/neuron-wallet/package.json index 2135790de6..943a3298f4 100644 --- a/packages/neuron-wallet/package.json +++ b/packages/neuron-wallet/package.json @@ -69,7 +69,7 @@ "sqlite3": "5.1.6", "subleveldown": "4.1.4", "tslib": "2.6.3", - "typeorm": "0.3.17", + "typeorm": "0.3.26", "uuid": "8.3.2" }, "devDependencies": { diff --git a/yarn.lock b/yarn.lock index 1241883c3b..4feab65cf0 100644 --- a/yarn.lock +++ b/yarn.lock @@ -5305,10 +5305,10 @@ ansi-styles@^6.0.0, ansi-styles@^6.1.0, ansi-styles@^6.2.1: resolved "https://registry.yarnpkg.com/ansi-styles/-/ansi-styles-6.2.1.tgz#0e62320cf99c21afff3b3012192546aacbfb05c5" integrity sha512-bN798gFfQX+viw3R7yrGWRqnrN2oRkEkUjjl4JNn4E8GxxbjtG3FbrEIIY3l8/hrwUwIeCZvi4QuOTP4MErVug== -any-promise@^1.0.0: - version "1.3.0" - resolved "https://registry.yarnpkg.com/any-promise/-/any-promise-1.3.0.tgz#abc6afeedcea52e809cdc0376aed3ce39635d17f" - integrity sha512-7UvmKalWRt1wgjL1RrGxoSJW/0QZFIegpeGvZG9kjp8vrRu55XTHbwnqq2GpXm9uLbcuhxm3IqX9OB4MZR1b2A== +ansis@^3.17.0: + version "3.17.0" + resolved "https://registry.yarnpkg.com/ansis/-/ansis-3.17.0.tgz#fa8d9c2a93fe7d1177e0c17f9eeb562a58a832d7" + integrity sha512-0qWUglt9JEqLFr3w1I1pbrChn1grhaiAR2ocX1PP/flRmxgtwTzPFFFnfIlD6aMOLQZgSuCRlidD70lvx8yhzg== anymatch@^2.0.0: version "2.0.0" @@ -6707,18 +6707,6 @@ cli-cursor@^5.0.0: dependencies: restore-cursor "^5.0.0" -cli-highlight@^2.1.11: - version "2.1.11" - resolved "https://registry.yarnpkg.com/cli-highlight/-/cli-highlight-2.1.11.tgz#49736fa452f0aaf4fae580e30acb26828d2dc1bf" - integrity sha512-9KDcoEVwyUXrjcJNvHD0NFc/hiwe/WPVYIleQh2O1N2Zro5gWJZ/K+3DGn8w8P/F6FxOgzyC5bxDyHIgCSPhGg== - dependencies: - chalk "^4.0.0" - highlight.js "^10.7.1" - mz "^2.4.0" - parse5 "^5.1.1" - parse5-htmlparser2-tree-adapter "^6.0.0" - yargs "^16.0.0" - cli-spinners@2.6.1: version "2.6.1" resolved "https://registry.yarnpkg.com/cli-spinners/-/cli-spinners-2.6.1.tgz#adc954ebe281c37a6319bfa401e6dd2488ffb70d" @@ -7329,7 +7317,7 @@ data-urls@^5.0.0: whatwg-mimetype "^4.0.0" whatwg-url "^14.0.0" -date-fns@^2.29.3, date-fns@^2.30.0: +date-fns@^2.30.0: version "2.30.0" resolved "https://registry.yarnpkg.com/date-fns/-/date-fns-2.30.0.tgz#f367e644839ff57894ec6ac480de40cae4b0f4d0" integrity sha512-fnULvOpxnC5/Vg3NCiWelDsLiUc9bRwAPs/+LfTLNvetFCtCTN+yQz15C/fs4AwX1R9K5GLtLfn8QW+dWisaAw== @@ -7341,12 +7329,17 @@ dateformat@^3.0.3: resolved "https://registry.yarnpkg.com/dateformat/-/dateformat-3.0.3.tgz#a6e37499a4d9a9cf85ef5872044d62901c9889ae" integrity sha512-jyCETtSl3VMZMWeRo7iY1FL19ges1t55hMo5yaam4Jrsm5EPL89UQkoQRyiI+Yf4k8r2ZpdngkV8hr1lIdjb3Q== -debug@4, debug@^4.1.0, debug@^4.1.1, debug@^4.3.1, debug@^4.3.2, debug@^4.3.3, debug@^4.3.4: - version "4.3.4" - resolved "https://registry.yarnpkg.com/debug/-/debug-4.3.4.tgz#1319f6579357f2338d3337d2cdd4914bb5dcc865" - integrity sha512-PRWFHuSU3eDtQJPvnNY7Jcket1j0t5OuOsFzPPzsekD52Zl8qUfFIPEiswXqIvHWGVHOgX+7G/vCNNhehwxfkQ== +dayjs@^1.11.13: + version "1.11.19" + resolved "https://registry.yarnpkg.com/dayjs/-/dayjs-1.11.19.tgz#15dc98e854bb43917f12021806af897c58ae2938" + integrity sha512-t5EcLVS6QPBNqM2z8fakk/NKel+Xzshgt8FFKAn+qwlD1pzZWxh0nVCrvFK7ZDb6XucZeF9z8C7CBWTRIVApAw== + +debug@4, debug@^4.1.0, debug@^4.1.1, debug@^4.3.1, debug@^4.3.2, debug@^4.3.3, debug@^4.3.4, debug@^4.4.0: + version "4.4.0" + resolved "https://registry.yarnpkg.com/debug/-/debug-4.4.0.tgz#2b3f2aea2ffeb776477460267377dc8710faba8a" + integrity sha512-6WTZ/IxCY/T6BALoZHaE4ctp9xm+Z5kY/pzYaCHRFeyVhojxlrm+46y68HA6hr0TcwEssoxNiDEUJQjfPZ/RYA== dependencies: - ms "2.1.2" + ms "^2.1.3" debug@^2.2.0, debug@^2.3.3: version "2.6.9" @@ -7362,13 +7355,6 @@ debug@^3.2.7: dependencies: ms "^2.1.1" -debug@^4.4.0: - version "4.4.0" - resolved "https://registry.yarnpkg.com/debug/-/debug-4.4.0.tgz#2b3f2aea2ffeb776477460267377dc8710faba8a" - integrity sha512-6WTZ/IxCY/T6BALoZHaE4ctp9xm+Z5kY/pzYaCHRFeyVhojxlrm+46y68HA6hr0TcwEssoxNiDEUJQjfPZ/RYA== - dependencies: - ms "^2.1.3" - decamelize-keys@^1.1.0: version "1.1.1" resolved "https://registry.yarnpkg.com/decamelize-keys/-/decamelize-keys-1.1.1.tgz#04a2d523b2f18d80d0158a43b895d56dff8d19d8" @@ -7409,6 +7395,11 @@ dedent@^0.7.0: resolved "https://registry.yarnpkg.com/dedent/-/dedent-0.7.0.tgz#2495ddbaf6eb874abb0e1be9df22d2e5a544326c" integrity sha512-Q6fKUPqnAHAyhiUgFU7BUzLiv0kd8saH9al7tnu5Q/okj6dnupxyTgFIBjVzJATdfIAm9NAsvXNzjaKa+bxVyA== +dedent@^1.6.0: + version "1.7.0" + resolved "https://registry.yarnpkg.com/dedent/-/dedent-1.7.0.tgz#c1f9445335f0175a96587be245a282ff451446ca" + integrity sha512-HGFtf8yhuhGhqO07SV79tRp+br4MnbdjeVxotpn1QBl30pcLLCQjX5b2295ll0fv8RKDKsmWYrl05usHM9CewQ== + deep-eql@^5.0.1: version "5.0.2" resolved "https://registry.yarnpkg.com/deep-eql/-/deep-eql-5.0.2.tgz#4b756d8d770a9257300825d52a2c2cff99c3a341" @@ -7790,15 +7781,10 @@ dotenv@8.6.0: resolved "https://registry.yarnpkg.com/dotenv/-/dotenv-8.6.0.tgz#061af664d19f7f4d8fc6e4ff9b584ce237adcb8b" integrity sha512-IrPdXQsk2BbzvCBGBOTmmSH5SodmqZNt4ERAZDmW4CT+tL8VtvinqywuANaFu4bOMWki16nqf0e4oC0QIaDr/g== -dotenv@^16.0.3: - version "16.4.4" - resolved "https://registry.yarnpkg.com/dotenv/-/dotenv-16.4.4.tgz#a26e7bb95ebd36272ebb56edb80b826aecf224c1" - integrity sha512-XvPXc8XAQThSjAbY6cQ/9PcBXmFoWuw1sQ3b8HqUCR6ziGXjkTi//kB9SWa2UwqlgdAIuRqAa/9hVljzPehbYg== - -dotenv@^16.4.5: - version "16.5.0" - resolved "https://registry.yarnpkg.com/dotenv/-/dotenv-16.5.0.tgz#092b49f25f808f020050051d1ff258e404c78692" - integrity sha512-m/C+AwOAr9/W1UOIZUo232ejMNnJAJtYQjUbHoNTBNTJSvqzzDh7vnrei3o3r3m9blf6ZoDkvcw0VmozNRFJxg== +dotenv@^16.4.5, dotenv@^16.4.7: + version "16.6.1" + resolved "https://registry.yarnpkg.com/dotenv/-/dotenv-16.6.1.tgz#773f0e69527a8315c7285d5ee73c4459d20a8020" + integrity sha512-uBq4egWHTcTt33a72vpSG0z3HnPuIl6NqYcTrKEg2azoEyl2hpW0zqlxysq2pK9HlDIHyHyakeYaYnSAwd8bow== dotenv@^9.0.2: version "9.0.2" @@ -9333,27 +9319,17 @@ glob-parent@^5.1.2, glob-parent@~5.1.2: dependencies: is-glob "^4.0.1" -glob@^10.0.0, glob@^10.3.10: - version "10.3.10" - resolved "https://registry.yarnpkg.com/glob/-/glob-10.3.10.tgz#0351ebb809fd187fe421ab96af83d3a70715df4b" - integrity sha512-fa46+tv1Ak0UPK1TOy/pZrIybNNt4HCv7SDzwyfiOZkvZLEbjsZkJBPtDHVshZjbecAoAGSC20MjLDG/qr679g== - dependencies: - foreground-child "^3.1.0" - jackspeak "^2.3.5" - minimatch "^9.0.1" - minipass "^5.0.0 || ^6.0.2 || ^7.0.0" - path-scurry "^1.10.1" - -glob@^10.2.2: - version "10.3.1" - resolved "https://registry.yarnpkg.com/glob/-/glob-10.3.1.tgz#9789cb1b994515bedb811a6deca735b5c37d2bf4" - integrity sha512-9BKYcEeIs7QwlCYs+Y3GBvqAMISufUS0i2ELd11zpZjxI5V9iyRj0HgzB5/cLf2NY4vcYBTYzJ7GIui7j/4DOw== +glob@^10.0.0, glob@^10.2.2, glob@^10.3.10, glob@^10.4.5: + version "10.4.5" + resolved "https://registry.yarnpkg.com/glob/-/glob-10.4.5.tgz#f4d9f0b90ffdbab09c9d77f5f29b4262517b0956" + integrity sha512-7Bv8RF0k6xjo7d4A/PxYLbUCfb6c+Vpd2/mB2yRDlew7Jb5hEXiCD9ibfO7wpk8i4sevK6DFny9h7EYbM3/sHg== dependencies: foreground-child "^3.1.0" - jackspeak "^2.0.3" - minimatch "^9.0.1" - minipass "^5.0.0 || ^6.0.2" - path-scurry "^1.10.0" + jackspeak "^3.1.2" + minimatch "^9.0.4" + minipass "^7.1.2" + package-json-from-dist "^1.0.0" + path-scurry "^1.11.1" glob@^7.1.1, glob@^7.1.2, glob@^7.1.3, glob@^7.1.4, glob@^7.1.6: version "7.2.3" @@ -9367,7 +9343,7 @@ glob@^7.1.1, glob@^7.1.2, glob@^7.1.3, glob@^7.1.4, glob@^7.1.6: once "^1.3.0" path-is-absolute "^1.0.0" -glob@^8.0.0, glob@^8.1.0: +glob@^8.0.0: version "8.1.0" resolved "https://registry.yarnpkg.com/glob/-/glob-8.1.0.tgz#d388f656593ef708ee3e34640fdfb99a9fd1c33e" integrity sha512-r8hpEjiQEYlF2QU0df3dS+nxxSIreXQS1qRhMJM0Q5NDdR386C7jb7Hwwod8Fgiuex+k0GFjgft18yvxm5XoCQ== @@ -9634,11 +9610,6 @@ hasown@^2.0.2: dependencies: function-bind "^1.1.2" -highlight.js@^10.7.1: - version "10.7.3" - resolved "https://registry.yarnpkg.com/highlight.js/-/highlight.js-10.7.3.tgz#697272e3991356e40c3cac566a74eef681756531" - integrity sha512-tzcUFauisWKNHaRkN4Wjl/ZA07gENAjFl3J/c480dprkGTg5EQstgaNFqBfUqCq54kZRIEcreTsAgF/m2quD7A== - highlight.js@^9.3.0: version "9.18.5" resolved "https://registry.yarnpkg.com/highlight.js/-/highlight.js-9.18.5.tgz#d18a359867f378c138d6819edfc2a8acd5f29825" @@ -10542,19 +10513,10 @@ istanbul-reports@^3.1.3: html-escaper "^2.0.0" istanbul-lib-report "^3.0.0" -jackspeak@^2.0.3: - version "2.2.1" - resolved "https://registry.yarnpkg.com/jackspeak/-/jackspeak-2.2.1.tgz#655e8cf025d872c9c03d3eb63e8f0c024fef16a6" - integrity sha512-MXbxovZ/Pm42f6cDIDkl3xpwv1AGwObKwfmjs2nQePiy85tP3fatofl3FC1aBsOtP/6fq5SbtgHwWcMsLP+bDw== - dependencies: - "@isaacs/cliui" "^8.0.2" - optionalDependencies: - "@pkgjs/parseargs" "^0.11.0" - -jackspeak@^2.3.5: - version "2.3.6" - resolved "https://registry.yarnpkg.com/jackspeak/-/jackspeak-2.3.6.tgz#647ecc472238aee4b06ac0e461acc21a8c505ca8" - integrity sha512-N3yCS/NegsOBokc8GAdM8UcmfsKiSS8cipheD/nivzr700H+nsMOxJjQnvwOcRYVuFkdH0wGUvW2WbXGmrZGbQ== +jackspeak@^3.1.2: + version "3.4.3" + resolved "https://registry.yarnpkg.com/jackspeak/-/jackspeak-3.4.3.tgz#8833a9d89ab4acde6188942bd1c53b6390ed5a8a" + integrity sha512-OGlZQpz2yfahA/Rd1Y8Cd9SIEsqvXkLVoSw/cgwhnhFMDbsQFeZYoJJ7bIZBS9BcamUW96asq/npPWugM+RQBw== dependencies: "@isaacs/cliui" "^8.0.2" optionalDependencies: @@ -11789,16 +11751,16 @@ lru-cache@^10.0.1: resolved "https://registry.yarnpkg.com/lru-cache/-/lru-cache-10.1.0.tgz#2098d41c2dc56500e6c88584aa656c84de7d0484" integrity sha512-/1clY/ui8CzjKFyjdvwPWJUYKiFVXG2I2cY0ssG7h4+hwk+XOIX7ZSG9Q7TW8TW3Kp3BUSqgFWBLgL4PJ+Blag== +lru-cache@^10.2.0, lru-cache@^10.4.3: + version "10.4.3" + resolved "https://registry.yarnpkg.com/lru-cache/-/lru-cache-10.4.3.tgz#410fc8a17b70e598013df257c2446b7f3383f119" + integrity sha512-JNAzZcXrCt42VGLuYz0zfAzDfAvJWW6AfYlDBQyDV5DClI2m5sAmK+OIO7s59XfsRsWHp02jAJrRadPRGTt6SQ== + lru-cache@^10.2.2: version "10.2.2" resolved "https://registry.yarnpkg.com/lru-cache/-/lru-cache-10.2.2.tgz#48206bc114c1252940c41b25b41af5b545aca878" integrity sha512-9hp3Vp2/hFQUiIwKo8XCeFVnrg8Pk3TYNPIR7tJADKi5YfcF7vEaK7avFHTlSy3kOKYaJQaalfEo6YuXdceBOQ== -lru-cache@^10.4.3: - version "10.4.3" - resolved "https://registry.yarnpkg.com/lru-cache/-/lru-cache-10.4.3.tgz#410fc8a17b70e598013df257c2446b7f3383f119" - integrity sha512-JNAzZcXrCt42VGLuYz0zfAzDfAvJWW6AfYlDBQyDV5DClI2m5sAmK+OIO7s59XfsRsWHp02jAJrRadPRGTt6SQ== - lru-cache@^5.1.1: version "5.1.1" resolved "https://registry.yarnpkg.com/lru-cache/-/lru-cache-5.1.1.tgz#1da27e6710271947695daf6848e847f01d84b920" @@ -11818,11 +11780,6 @@ lru-cache@^9.1.1: resolved "https://registry.yarnpkg.com/lru-cache/-/lru-cache-9.1.2.tgz#255fdbc14b75589d6d0e73644ca167a8db506835" integrity sha512-ERJq3FOzJTxBbFjZ7iDs+NiK4VI9Wz+RdrrAB8dio1oV+YvdPzUEE4QNiT2VD51DkIbCYRUUzCRkssXCHqSnKQ== -"lru-cache@^9.1.1 || ^10.0.0": - version "10.0.0" - resolved "https://registry.yarnpkg.com/lru-cache/-/lru-cache-10.0.0.tgz#b9e2a6a72a129d81ab317202d93c7691df727e61" - integrity sha512-svTf/fzsKHffP42sujkO/Rjs37BCIsQVRCeNYIm9WN8rgT7ffoUnRtZCqU+6BqcSBdv8gwJeTz8knJpgACeQMw== - lz-string@^1.5.0: version "1.5.0" resolved "https://registry.yarnpkg.com/lz-string/-/lz-string-1.5.0.tgz#c1ab50f77887b712621201ba9fd4e3a6ed099941" @@ -12150,7 +12107,7 @@ minimatch@^8.0.2: dependencies: brace-expansion "^2.0.1" -minimatch@^9.0.0, minimatch@^9.0.1: +minimatch@^9.0.0: version "9.0.1" resolved "https://registry.yarnpkg.com/minimatch/-/minimatch-9.0.1.tgz#8a555f541cf976c622daf078bb28f29fb927c253" integrity sha512-0jWhJpD/MdhPXwPuiRkCbfYfSKp2qnn2eOc279qI7f+osl/l+prKSrvhg157zSYvx/1nmgn2NqdT6k2Z7zSH9w== @@ -12262,6 +12219,11 @@ minipass@^5.0.0: resolved "https://registry.yarnpkg.com/minipass/-/minipass-7.0.4.tgz#dbce03740f50a4786ba994c1fb908844d27b038c" integrity sha512-jYofLM5Dam9279rdkWzqHozUo4ybjdZmCsDHePy5V/PbBcVMiSZR97gmAy45aqi8CK1lG2ECd356FU86avfwUQ== +minipass@^7.1.2: + version "7.1.2" + resolved "https://registry.yarnpkg.com/minipass/-/minipass-7.1.2.tgz#93a9626ce5e5e66bd4db86849e7515e92340a707" + integrity sha512-qOOzS1cBTWYF4BH8fVePDBOO9iptMnGUEZwNc/cMWnTV2nVLZ7VoNWEPHkYczZA0pdoA7dl6e7FL659nX9S2aw== + minizlib@^2.0.0, minizlib@^2.1.1, minizlib@^2.1.2: version "2.1.2" resolved "https://registry.yarnpkg.com/minizlib/-/minizlib-2.1.2.tgz#e90d3466ba209b932451508a11ce3d3632145931" @@ -12295,11 +12257,6 @@ mkdirp@^1.0.3, mkdirp@^1.0.4: resolved "https://registry.yarnpkg.com/mkdirp/-/mkdirp-1.0.4.tgz#3eb5ed62622756d79a5f0e2a221dfebad75c2f7e" integrity sha512-vVqVZQyf3WLx2Shd0qJ9xuvqgAyKPLAiqITEtqW0oIUjzo3PePDd6fW9iFz30ef7Ysp/oiWqbhszeGWW2T6Gzw== -mkdirp@^2.1.3: - version "2.1.6" - resolved "https://registry.yarnpkg.com/mkdirp/-/mkdirp-2.1.6.tgz#964fbcb12b2d8c5d6fbc62a963ac95a273e2cc19" - integrity sha512-+hEnITedc8LAtIP9u3HJDFIdcLV2vXP33sqLLIzkv1Db1zO/1OxbvYf0Y1OC/S/Qo5dxHXepofhmxL02PsKe+A== - modify-values@^1.0.1: version "1.0.1" resolved "https://registry.yarnpkg.com/modify-values/-/modify-values-1.0.1.tgz#b3939fa605546474e3e3e3c63d64bd43b4ee6022" @@ -12315,11 +12272,6 @@ ms@2.0.0: resolved "https://registry.yarnpkg.com/ms/-/ms-2.0.0.tgz#5608aeadfc00be6c2901df5f9861788de0d597c8" integrity sha512-Tpp60P6IUJDTuOq/5Z8cdskzJujfwqfOTkrwIwj7IRISpnkJnT6SyJ4PCPnGMoFjC9ddhal5KVIYtAt97ix05A== -ms@2.1.2: - version "2.1.2" - resolved "https://registry.yarnpkg.com/ms/-/ms-2.1.2.tgz#d09d1f357b443f493382a8eb3ccd183872ae6009" - integrity sha512-sGkPx+VjMtmA6MX27oA4FBFELFCZZ4S4XqeGOXCv68tT+jb3vk/RyaKWP0PTKyWtmLSM0b+adUTEvbs1PEaH2w== - ms@^2.0.0, ms@^2.1.1, ms@^2.1.3: version "2.1.3" resolved "https://registry.yarnpkg.com/ms/-/ms-2.1.3.tgz#574c8138ce1d2b5861f0b44579dbadd60c6615b2" @@ -12346,15 +12298,6 @@ mute-stream@^1.0.0, mute-stream@~1.0.0: resolved "https://registry.yarnpkg.com/mute-stream/-/mute-stream-1.0.0.tgz#e31bd9fe62f0aed23520aa4324ea6671531e013e" integrity sha512-avsJQhyd+680gKXyG/sQc0nXaC6rBkPOfyHYcFb9+hdkqQkR9bdnkJ0AMZhke0oesPqIO+mFFJ+IdBc7mst4IA== -mz@^2.4.0: - version "2.7.0" - resolved "https://registry.yarnpkg.com/mz/-/mz-2.7.0.tgz#95008057a56cafadc2bc63dde7f9ff6955948e32" - integrity sha512-z81GNO7nnYMEhrGh9LeymoE4+Yr0Wn5McHIZMK5cfQCl+NDX08sCZgUc9/6MHni9IWuFLm1Z3HTCXu2z9fN62Q== - dependencies: - any-promise "^1.0.0" - object-assign "^4.0.1" - thenify-all "^1.0.0" - nanoassert@^1.0.0: version "1.1.0" resolved "https://registry.yarnpkg.com/nanoassert/-/nanoassert-1.1.0.tgz#4f3152e09540fde28c76f44b19bbcd1d5a42478d" @@ -12859,7 +12802,7 @@ nwsapi@^2.2.0, nwsapi@^2.2.16: "@nx/nx-win32-arm64-msvc" "20.8.2" "@nx/nx-win32-x64-msvc" "20.8.2" -object-assign@^4.0.1, object-assign@^4.1.1: +object-assign@^4.1.1: version "4.1.1" resolved "https://registry.yarnpkg.com/object-assign/-/object-assign-4.1.1.tgz#2109adc7965887cfc05cbbd442cac8bfbb360863" integrity sha512-rJgTQnkUnH1sFw8yT6VSU3zD3sWmu6sZhIseY8VX+GRu3P6F7Fu+JNDoXfklElbLJSnc3FUQHVe4cU5hj+BcUg== @@ -13213,6 +13156,11 @@ p-waterfall@2.1.1: dependencies: p-reduce "^2.0.0" +package-json-from-dist@^1.0.0: + version "1.0.1" + resolved "https://registry.yarnpkg.com/package-json-from-dist/-/package-json-from-dist-1.0.1.tgz#4f1471a010827a86f94cfd9b0727e36d267de505" + integrity sha512-UEZIS3/by4OC8vL3P2dTXRETpebLI2NiI5vIrjaD/5UtrkFX/tNbwjTSRAGC/+7CAo2pIcBaRgWmcBBHcsaCIw== + pacote@^18.0.0, pacote@^18.0.6: version "18.0.6" resolved "https://registry.yarnpkg.com/pacote/-/pacote-18.0.6.tgz#ac28495e24f4cf802ef911d792335e378e86fac7" @@ -13301,13 +13249,6 @@ parse-url@^8.1.0: dependencies: parse-path "^7.0.0" -parse5-htmlparser2-tree-adapter@^6.0.0: - version "6.0.1" - resolved "https://registry.yarnpkg.com/parse5-htmlparser2-tree-adapter/-/parse5-htmlparser2-tree-adapter-6.0.1.tgz#2cdf9ad823321140370d4dbf5d3e92c7c8ddc6e6" - integrity sha512-qPuWvbLgvDGilKc5BoicRovlT4MtYT6JfJyBOMDsKoiT+GiuP5qyrPCnR9HcPECIJJmZh5jRndyNThnhhb/vlA== - dependencies: - parse5 "^6.0.1" - parse5-htmlparser2-tree-adapter@^7.0.0: version "7.0.0" resolved "https://registry.yarnpkg.com/parse5-htmlparser2-tree-adapter/-/parse5-htmlparser2-tree-adapter-7.0.0.tgz#23c2cc233bcf09bb7beba8b8a69d46b08c62c2f1" @@ -13316,16 +13257,11 @@ parse5-htmlparser2-tree-adapter@^7.0.0: domhandler "^5.0.2" parse5 "^7.0.0" -parse5@6.0.1, parse5@^6.0.1: +parse5@6.0.1: version "6.0.1" resolved "https://registry.yarnpkg.com/parse5/-/parse5-6.0.1.tgz#e1a1c085c569b3dc08321184f19a39cc27f7c30b" integrity sha512-Ofn/CTFzRGTTxwpNEs9PP93gXShHcTq255nzRYSKe8AkVpZY7e1fpmTfOyoIvjP5HG7Z2ZM7VS9PPhQGW2pOpw== -parse5@^5.1.1: - version "5.1.1" - resolved "https://registry.yarnpkg.com/parse5/-/parse5-5.1.1.tgz#f68e4e5ba1852ac2cadc00f4555fff6c2abb6178" - integrity sha512-ugq4DFI0Ptb+WWjAdOK16+u/nHfiIrcE+sh8kZMaM0WllQKLI9rOUq6c2b7cwPkXdzfQESqvoqK6ug7U/Yyzug== - parse5@^7.0.0: version "7.1.2" resolved "https://registry.yarnpkg.com/parse5/-/parse5-7.1.2.tgz#0736bebbfd77793823240a23b7fc5e010b7f8e32" @@ -13385,20 +13321,12 @@ path-parse@^1.0.7: resolved "https://registry.yarnpkg.com/path-parse/-/path-parse-1.0.7.tgz#fbc114b60ca42b30d9daf5858e4bd68bbedb6735" integrity sha512-LDJzPVEEEPR+y48z93A0Ed0yXb8pAByGWo/k5YYdYgpY2/2EsOsksJrq7lOHxryrVOn1ejG6oAp8ahvOIQD8sw== -path-scurry@^1.10.0: - version "1.10.0" - resolved "https://registry.yarnpkg.com/path-scurry/-/path-scurry-1.10.0.tgz#0ffbd4c1f7de9600f98a1405507d9f9acb438ab3" - integrity sha512-tZFEaRQbMLjwrsmidsGJ6wDMv0iazJWk6SfIKnY4Xru8auXgmJkOBa5DUbYFcFD2Rzk2+KDlIiF0GVXNCbgC7g== - dependencies: - lru-cache "^9.1.1 || ^10.0.0" - minipass "^5.0.0 || ^6.0.2" - -path-scurry@^1.10.1: - version "1.10.1" - resolved "https://registry.yarnpkg.com/path-scurry/-/path-scurry-1.10.1.tgz#9ba6bf5aa8500fe9fd67df4f0d9483b2b0bfc698" - integrity sha512-MkhCqzzBEpPvxxQ71Md0b1Kk51W01lrYvlMzSUaIzNsODdd7mqhiimSZlr+VegAz5Z6Vzt9Xg2ttE//XBhH3EQ== +path-scurry@^1.11.1: + version "1.11.1" + resolved "https://registry.yarnpkg.com/path-scurry/-/path-scurry-1.11.1.tgz#7960a668888594a0720b12a911d1a742ab9f11d2" + integrity sha512-Xa4Nw17FS9ApQFJ9umLiJS4orGjm7ZzwUrwamcGQuHSzDyth9boKDaycYdDcZDuqYATXw4HFXgaqWTctW/v1HA== dependencies: - lru-cache "^9.1.1 || ^10.0.0" + lru-cache "^10.2.0" minipass "^5.0.0 || ^6.0.2 || ^7.0.0" path-scurry@^1.6.1: @@ -14174,12 +14102,13 @@ react-dom@18.3.1: scheduler "^0.25.0" react-i18next@13.5.0, react-i18next@>=11.16.4: - version "15.7.3" - resolved "https://registry.yarnpkg.com/react-i18next/-/react-i18next-15.7.3.tgz#2eba235247dff0cbf9f0338e2ab85e10e127aa54" - integrity sha512-AANws4tOE+QSq/IeMF/ncoHlMNZaVLxpa5uUGW1wjike68elVYr0018L9xYoqBr1OFO7G7boDPrbn0HpMCJxTw== + version "16.2.3" + resolved "https://registry.yarnpkg.com/react-i18next/-/react-i18next-16.2.3.tgz#079e3c54c85334ce9ab9732be3553516a7b7b42d" + integrity sha512-O0t2zvmIz7nHWKNfIL+O/NTIbpTaOPY0vZov779hegbep3IZ+xcqkeVPKWBSXwzdkiv77q8zmq9toKIUys1x3A== dependencies: "@babel/runtime" "^7.27.6" html-parse-stringify "^3.0.1" + use-sync-external-store "^1.6.0" react-inspector@6.0.2: version "6.0.2" @@ -14406,7 +14335,7 @@ redent@^3.0.0: indent-string "^4.0.0" strip-indent "^3.0.0" -reflect-metadata@0.1.13, reflect-metadata@^0.1.13: +reflect-metadata@0.1.13: version "0.1.13" resolved "https://registry.yarnpkg.com/reflect-metadata/-/reflect-metadata-0.1.13.tgz#67ae3ca57c972a2aa1642b10fe363fe32d49dc08" integrity sha512-Ts1Y/anZELhSsjMcU605fU9RE4Oi3p5ORujwbIKXfWa+0Zxs510Qrmrce5/Jowq3cHSZSJqBjypxmHarc+vEWg== @@ -15342,6 +15271,11 @@ sprintf-js@~1.0.2: resolved "https://registry.yarnpkg.com/sprintf-js/-/sprintf-js-1.0.3.tgz#04e6926f662895354f3dd015203633b857297e2c" integrity sha512-D9cPgkvLlV3t3IzL0D0YLvGA9Ahk4PcvVwUbN0dSGr1aP0Nrt4AEnTUbuGvquEC0mA64Gqt1fzirlRs5ibXx8g== +sql-highlight@^6.0.0: + version "6.1.0" + resolved "https://registry.yarnpkg.com/sql-highlight/-/sql-highlight-6.1.0.tgz#e34024b4c6eac2744648771edfe3c1f894153743" + integrity sha512-ed7OK4e9ywpE7pgRMkMQmZDPKSVdm0oX5IEtZiKnFucSF0zu6c80GZBe38UqHuVhTWJ9xsKgSMjCG2bml86KvA== + sqlite3@5.1.6: version "5.1.6" resolved "https://registry.yarnpkg.com/sqlite3/-/sqlite3-5.1.6.tgz#1d4fbc90fe4fbd51e952e0a90fd8f6c2b9098e97" @@ -15827,20 +15761,6 @@ text-table@^0.2.0: resolved "https://registry.yarnpkg.com/text-table/-/text-table-0.2.0.tgz#7f5ee823ae805207c00af2df4a84ec3fcfa570b4" integrity sha512-N+8UisAXDGk8PFXP4HAzVR9nbfmVJ3zYLAWiTIoqC5v5isinhr+r5uaO8+7r3BMfuNIufIsA7RdpVgacC2cSpw== -thenify-all@^1.0.0: - version "1.6.0" - resolved "https://registry.yarnpkg.com/thenify-all/-/thenify-all-1.6.0.tgz#1a1918d402d8fc3f98fbf234db0bcc8cc10e9726" - integrity sha512-RNxQH/qI8/t3thXJDwcstUO4zeqo64+Uy/+sNVRBx4Xn2OX+OZ9oP+iJnNFqplFra2ZUVeKCSa2oVWi3T4uVmA== - dependencies: - thenify ">= 3.1.0 < 4" - -"thenify@>= 3.1.0 < 4": - version "3.3.1" - resolved "https://registry.yarnpkg.com/thenify/-/thenify-3.3.1.tgz#8932e686a4066038a016dd9e2ca46add9838a95f" - integrity sha512-RVZSIV5IG10Hk3enotrhvz0T9em6cyHBLkH/YAZuKqd8hRkKhSfCGIcP2KUY0EPxndzANBmNllzWPwak+bheSw== - dependencies: - any-promise "^1.0.0" - throat@^6.0.1: version "6.0.2" resolved "https://registry.yarnpkg.com/throat/-/throat-6.0.2.tgz#51a3fbb5e11ae72e2cf74861ed5c8020f89f29fe" @@ -16123,7 +16043,7 @@ tsconfig-paths@^4.1.2, tsconfig-paths@^4.2.0: minimist "^1.2.6" strip-bom "^3.0.0" -tslib@2.6.3, tslib@^2.5.0: +tslib@2.6.3: version "2.6.3" resolved "https://registry.yarnpkg.com/tslib/-/tslib-2.6.3.tgz#0438f810ad7a9edcde7a241c3d80db693c8cbfe0" integrity sha512-xNvxJEOUiWPGhUuUdQgAJPKOOJfGnIyKySOc09XkKsgdUV/3E2zvwZYdejjmRgPCgcym1juLH3226yA7sEFJKQ== @@ -16133,10 +16053,10 @@ tslib@^1.10.0, tslib@^1.9.0: resolved "https://registry.yarnpkg.com/tslib/-/tslib-1.14.1.tgz#cf2d38bdc34a134bcaf1091c41f6619e2f672d00" integrity sha512-Xni35NKzjgMrwevysHTCArtLDpPvye8zV/0E4EyYn43P7/7qvQwPh9BGkHewbMulVntbigmcT7rdX3BNo9wRJg== -tslib@^2.0.1, tslib@^2.0.3, tslib@^2.1.0, tslib@^2.3.0, tslib@^2.4.0: - version "2.6.0" - resolved "https://registry.yarnpkg.com/tslib/-/tslib-2.6.0.tgz#b295854684dbda164e181d259a22cd779dcd7bc3" - integrity sha512-7At1WUettjcSRHXCyYtTselblcHl9PJFFVKiCAy/bY97+BPZXSQ2wbq0P9s8tK2G7dFQfNnlJnPAiArVBVBsfA== +tslib@^2.0.1, tslib@^2.0.3, tslib@^2.1.0, tslib@^2.3.0, tslib@^2.4.0, tslib@^2.8.1: + version "2.8.1" + resolved "https://registry.yarnpkg.com/tslib/-/tslib-2.8.1.tgz#612efe4ed235d567e8aba5f2a5fab70280ade83f" + integrity sha512-oJFu94HQb+KVduSUQL7wnpmqnfmLsOA/nAh6b6EH0wCEoK0/mPeXU6c3wKDV83MkOuHPRHtSXKKU99IBazS/2w== tty-browserify@0.0.1: version "0.0.1" @@ -16266,26 +16186,25 @@ typedarray@^0.0.6: resolved "https://registry.yarnpkg.com/typedarray/-/typedarray-0.0.6.tgz#867ac74e3864187b1d3d47d996a78ec5c8830777" integrity sha512-/aCDEGatGvZ2BIk+HmLf4ifCJFwvKFNb9/JeZPMulfgFracn9QFcAf5GO8B/mweUjSoblS5In0cWhqpfs/5PQA== -typeorm@0.3.17: - version "0.3.17" - resolved "https://registry.yarnpkg.com/typeorm/-/typeorm-0.3.17.tgz#a73c121a52e4fbe419b596b244777be4e4b57949" - integrity sha512-UDjUEwIQalO9tWw9O2A4GU+sT3oyoUXheHJy4ft+RFdnRdQctdQ34L9SqE2p7LdwzafHx1maxT+bqXON+Qnmig== +typeorm@0.3.26: + version "0.3.26" + resolved "https://registry.yarnpkg.com/typeorm/-/typeorm-0.3.26.tgz#89d10d9fa130d61e82454c8137517b6cba494971" + integrity sha512-o2RrBNn3lczx1qv4j+JliVMmtkPSqEGpG0UuZkt9tCfWkoXKu8MZnjvp2GjWPll1SehwemQw6xrbVRhmOglj8Q== dependencies: "@sqltools/formatter" "^1.2.5" + ansis "^3.17.0" app-root-path "^3.1.0" buffer "^6.0.3" - chalk "^4.1.2" - cli-highlight "^2.1.11" - date-fns "^2.29.3" - debug "^4.3.4" - dotenv "^16.0.3" - glob "^8.1.0" - mkdirp "^2.1.3" - reflect-metadata "^0.1.13" + dayjs "^1.11.13" + debug "^4.4.0" + dedent "^1.6.0" + dotenv "^16.4.7" + glob "^10.4.5" sha.js "^2.4.11" - tslib "^2.5.0" - uuid "^9.0.0" - yargs "^17.6.2" + sql-highlight "^6.0.0" + tslib "^2.8.1" + uuid "^11.1.0" + yargs "^17.7.2" typescript@5.3.3: version "5.3.3" @@ -16485,6 +16404,11 @@ usb@2.9.0: node-addon-api "^6.0.0" node-gyp-build "^4.5.0" +use-sync-external-store@^1.6.0: + version "1.6.0" + resolved "https://registry.yarnpkg.com/use-sync-external-store/-/use-sync-external-store-1.6.0.tgz#b174bfa65cb2b526732d9f2ac0a408027876f32d" + integrity sha512-Pp6GSwGP/NrPIrxVFAIkOQeyw8lFenOHijQWkUTrDvrF4ALqylP2C/KCkeS9dpUM3KvYRQhna5vt7IL95+ZQ9w== + use@^3.1.0: version "3.1.1" resolved "https://registry.yarnpkg.com/use/-/use-3.1.1.tgz#d50c8cac79a19fbc20f2911f56eb973f4e10070f" @@ -16521,6 +16445,11 @@ uuid@^10.0.0: resolved "https://registry.yarnpkg.com/uuid/-/uuid-10.0.0.tgz#5a95aa454e6e002725c79055fd42aaba30ca6294" integrity sha512-8XkAphELsDnEGrDxUOHB3RGvXz6TeuYSGEZBOjtTtPm2lwhGBjLgOzLHB63IUWfBpNucQjND6d3AOudO+H3RWQ== +uuid@^11.1.0: + version "11.1.0" + resolved "https://registry.yarnpkg.com/uuid/-/uuid-11.1.0.tgz#9549028be1753bb934fc96e2bca09bb4105ae912" + integrity sha512-0/A9rDy9P7cJ+8w1c9WD9V//9Wj15Ce2MPz8Ri6032usz+NfePxx5AcN3bN+r6ZL6jEo066/yNYB3tn4pQEx+A== + uuid@^9.0.0: version "9.0.0" resolved "https://registry.yarnpkg.com/uuid/-/uuid-9.0.0.tgz#592f550650024a38ceb0c562f2f6aa435761efb5" @@ -17085,7 +17014,7 @@ yargs@17.7.2, yargs@^17.6.2, yargs@^17.7.2: y18n "^5.0.5" yargs-parser "^21.1.1" -yargs@^16.0.0, yargs@^16.2.0: +yargs@^16.2.0: version "16.2.0" resolved "https://registry.yarnpkg.com/yargs/-/yargs-16.2.0.tgz#1c82bf0f6b6a66eafce7ef30e376f49a12477f66" integrity sha512-D1mvvtDG0L5ft/jGWkLpG1+m0eQxOfaBvTNELraWj22wSVUMWxZUvYgJYcKh6jGGIkJFhH4IZPQhR4TKpc8mBw== From 83c019ae3c870c73532c6011530f1acc2ad82e19 Mon Sep 17 00:00:00 2001 From: walker27 Date: Tue, 6 Jan 2026 14:21:31 +0800 Subject: [PATCH 29/29] chore: resolve version conflict --- package.json | 2 +- packages/neuron-ui/package.json | 5 +---- packages/neuron-wallet/package.json | 9 ++++++++- yarn.lock | 27 +++++++-------------------- 4 files changed, 17 insertions(+), 26 deletions(-) diff --git a/package.json b/package.json index b03acaf9bf..79d4beb2d6 100644 --- a/package.json +++ b/package.json @@ -66,7 +66,7 @@ "dependencies": {}, "resolutions": { "@types/react": "18.3.22", - "react-i18next": ">=11.16.4", + "react-i18next": "14.1.3", "react-refresh": "0.17.0", "node-fetch": "2.6.13", "@ckb-lumos/ckb-indexer": "0.23.0", diff --git a/packages/neuron-ui/package.json b/packages/neuron-ui/package.json index 2802b24ba7..b9061184aa 100644 --- a/packages/neuron-ui/package.json +++ b/packages/neuron-ui/package.json @@ -64,7 +64,7 @@ "qr.js": "0.0.0", "react": "18.3.1", "react-dom": "18.3.1", - "react-i18next": "13.5.0", + "react-i18next": "14.1.3", "react-router-dom": "6.21.1", "react-transition-group": "4.4.5", "sass": "1.69.5", @@ -114,8 +114,5 @@ "vite-plugin-node-polyfills": "0.23.0", "vite-plugin-svgr": "4.3.0", "vitest": "3.0.8" - }, - "resolutions": { - "react-i18next": "14.1.3" } } diff --git a/packages/neuron-wallet/package.json b/packages/neuron-wallet/package.json index 943a3298f4..5bdcadd1dc 100644 --- a/packages/neuron-wallet/package.json +++ b/packages/neuron-wallet/package.json @@ -60,7 +60,7 @@ "electron-updater": "6.3.0", "electron-window-state": "5.0.3", "elliptic": "6.6.1", - "i18next": "21.10.0", + "i18next": "23.7.11", "leveldown": "6.1.1", "levelup": "4.4.0", "reflect-metadata": "0.1.13", @@ -94,5 +94,12 @@ "jest-when": "3.6.0", "neuron-ui": "0.202.1", "typescript": "5.3.3" + }, + "resolutions": { + "@ckb-lumos/base": "0.23.0", + "@ckb-lumos/ckb-indexer": "0.23.0", + "@ckb-lumos/helpers": "0.23.0", + "@ckb-lumos/lumos": "0.23.0", + "@ckb-lumos/rpc": "0.23.0" } } diff --git a/yarn.lock b/yarn.lock index 4feab65cf0..aadb187660 100644 --- a/yarn.lock +++ b/yarn.lock @@ -1439,14 +1439,14 @@ "@babel/plugin-transform-modules-commonjs" "^7.27.1" "@babel/plugin-transform-typescript" "^7.27.1" -"@babel/runtime@^7.12.5", "@babel/runtime@^7.17.2", "@babel/runtime@^7.17.8", "@babel/runtime@^7.20.7", "@babel/runtime@^7.21.0", "@babel/runtime@^7.23.2", "@babel/runtime@^7.5.5", "@babel/runtime@^7.8.7": +"@babel/runtime@^7.12.5", "@babel/runtime@^7.17.8", "@babel/runtime@^7.20.7", "@babel/runtime@^7.21.0", "@babel/runtime@^7.23.2", "@babel/runtime@^7.5.5", "@babel/runtime@^7.8.7": version "7.27.0" resolved "https://registry.yarnpkg.com/@babel/runtime/-/runtime-7.27.0.tgz#fbee7cf97c709518ecc1f590984481d5460d4762" integrity sha512-VtPOkrdPHZsKc/clNqyi9WUA8TINkZ4cGk63UUE3u4pmB2k+ZMQRDuIOagv8UVd6j7k0T3+RRIb7beKTebNbcw== dependencies: regenerator-runtime "^0.14.0" -"@babel/runtime@^7.27.6": +"@babel/runtime@^7.23.9": version "7.28.4" resolved "https://registry.yarnpkg.com/@babel/runtime/-/runtime-7.28.4.tgz#a70226016fabe25c5783b2f22d3e1c9bc5ca3326" integrity sha512-Q/N6JNWvIvPnLDvjlE1OUBLPQHH6l3CltCEsHIujp45zQUSSh8K+gHnaEX45yAT1nyngnINhvWtzN+Nb9D8RAQ== @@ -9804,13 +9804,6 @@ husky@8.0.3: resolved "https://registry.yarnpkg.com/husky/-/husky-8.0.3.tgz#4936d7212e46d1dea28fef29bb3a108872cd9184" integrity sha512-+dQSyqPh4x1hlO1swXBiNb2HzTDN1I2IGLQx1GrBuiqFJfoMrnZWwVmatvSiO+Iz8fBUnf+lekwNo4c2LlXItg== -i18next@21.10.0: - version "21.10.0" - resolved "https://registry.yarnpkg.com/i18next/-/i18next-21.10.0.tgz#85429af55fdca4858345d0e16b584ec29520197d" - integrity sha512-YeuIBmFsGjUfO3qBmMOc0rQaun4mIpGKET5WDwvu8lU7gvwpcariZLNtL0Fzj+zazcHUrlXHiptcFhBMFaxzfg== - dependencies: - "@babel/runtime" "^7.17.2" - i18next@23.7.11: version "23.7.11" resolved "https://registry.yarnpkg.com/i18next/-/i18next-23.7.11.tgz#ee4dfa58f9b27807ebf57d7c33a6c4a0bb4bf7c8" @@ -14101,14 +14094,13 @@ react-dom@18.3.1: dependencies: scheduler "^0.25.0" -react-i18next@13.5.0, react-i18next@>=11.16.4: - version "16.2.3" - resolved "https://registry.yarnpkg.com/react-i18next/-/react-i18next-16.2.3.tgz#079e3c54c85334ce9ab9732be3553516a7b7b42d" - integrity sha512-O0t2zvmIz7nHWKNfIL+O/NTIbpTaOPY0vZov779hegbep3IZ+xcqkeVPKWBSXwzdkiv77q8zmq9toKIUys1x3A== +react-i18next@14.1.3: + version "14.1.3" + resolved "https://registry.yarnpkg.com/react-i18next/-/react-i18next-14.1.3.tgz#85525c4294ef870ddd3f5d184e793cae362f47cb" + integrity sha512-wZnpfunU6UIAiJ+bxwOiTmBOAaB14ha97MjOEnLGac2RJ+h/maIYXZuTHlmyqQVX1UVHmU1YDTQ5vxLmwfXTjw== dependencies: - "@babel/runtime" "^7.27.6" + "@babel/runtime" "^7.23.9" html-parse-stringify "^3.0.1" - use-sync-external-store "^1.6.0" react-inspector@6.0.2: version "6.0.2" @@ -16404,11 +16396,6 @@ usb@2.9.0: node-addon-api "^6.0.0" node-gyp-build "^4.5.0" -use-sync-external-store@^1.6.0: - version "1.6.0" - resolved "https://registry.yarnpkg.com/use-sync-external-store/-/use-sync-external-store-1.6.0.tgz#b174bfa65cb2b526732d9f2ac0a408027876f32d" - integrity sha512-Pp6GSwGP/NrPIrxVFAIkOQeyw8lFenOHijQWkUTrDvrF4ALqylP2C/KCkeS9dpUM3KvYRQhna5vt7IL95+ZQ9w== - use@^3.1.0: version "3.1.1" resolved "https://registry.yarnpkg.com/use/-/use-3.1.1.tgz#d50c8cac79a19fbc20f2911f56eb973f4e10070f"