From d6bea201d944ebfd62d2bceffaf9d6b20f3517a1 Mon Sep 17 00:00:00 2001 From: chenyan Date: Sun, 9 Mar 2025 00:27:59 +0800 Subject: [PATCH 1/8] feat: Replace react-script to vite --- package.json | 1 + packages/neuron-ui/.eslintrc.js | 3 +- packages/neuron-ui/.storybook/electron.js | 26 +- packages/neuron-ui/.storybook/main.ts | 35 +- packages/neuron-ui/index.html | 21 + packages/neuron-ui/package.json | 41 +- packages/neuron-ui/public/index.html | 40 +- .../CompensationPeriodTooltip/index.tsx | 5 +- .../src/components/GeneralSetting/index.tsx | 6 +- .../src/components/HardwareSign/success.tsx | 2 +- .../src/components/History/index.tsx | 3 +- .../components/ImportHardware/confirming.tsx | 2 +- .../ImportHardware/detect-device.tsx | 2 +- .../ImportHardware/import-error.tsx | 2 +- .../ImportHardware/import-success.tsx | 2 +- .../src/components/LanguageDialog/index.tsx | 4 +- .../src/components/NetworkSetting/index.tsx | 4 +- .../src/components/OfflineSign/index.tsx | 2 +- .../src/components/PageContainer/index.tsx | 4 +- .../PasswordRequest/PasswordRequestInPage.tsx | 2 +- .../src/components/PasswordRequest/index.tsx | 2 +- .../src/components/PricePanel/index.tsx | 2 +- .../src/components/SUDTAccountList/index.tsx | 8 +- .../src/components/SUDTAccountPile/index.tsx | 4 +- .../src/components/SUDTCreateDialog/index.tsx | 2 +- .../src/components/SUDTSend/index.tsx | 6 +- .../src/components/SUDTUpdateDialog/index.tsx | 4 +- .../src/components/SendFieldset/index.tsx | 6 +- .../SendFromMultisigDialog/index.tsx | 2 +- .../src/components/SignAndVerify/index.tsx | 6 +- .../src/components/SyncStatus/index.tsx | 4 +- .../src/components/WalletWizard/index.tsx | 4 +- packages/neuron-ui/src/index.tsx | 6 +- packages/neuron-ui/src/react-app-env.d.ts | 1 - packages/neuron-ui/src/services/subjects.ts | 4 +- packages/neuron-ui/src/states/init/app.ts | 5 +- .../calculation/calculateAPC/index.test.ts | 2 +- .../calculateClaimEpochValue/index.test.ts | 2 +- .../src/tests/calendar/index.test.ts | 2 +- .../CKBToShannonFormatter/index.test.ts | 2 +- .../addressesToBalance/index.test.ts | 2 +- .../formatters/bytesFormatter/index.test.ts | 2 +- .../complexNumberToPureNumber/index.test.ts | 2 +- .../currencyFormatter/index.test.ts | 2 +- .../difficultyFormatter/index.test.ts | 2 +- .../outputsToTotalAmount/index.test.ts | 2 +- .../padFractionDigitsIfDecimal/index.test.ts | 2 +- .../sUDTAmountFormatter/index.test.ts | 2 +- .../shannonToCKBFormatter/index.test.ts | 2 +- .../formatters/sporeFormatter/index.test.ts | 2 +- .../sudtAmountToValue/index.test.ts | 2 +- .../sudtValueToAmount/index.test.ts | 2 +- .../tests/getCompensatedTime/index.test.ts | 2 +- .../tests/getCompensationPeriod/index.test.ts | 2 +- .../tests/getConnectionStatus/index.test.ts | 2 +- .../src/tests/getDAOCellStatus/index.test.ts | 2 +- .../tests/getMultisigSignStatus/index.test.ts | 2 +- .../src/tests/getPageNoList/index.test.ts | 2 +- .../src/tests/getSyncLeftTime/index.test.ts | 2 +- .../src/tests/is/isMainnet/index.test.ts | 2 +- .../tests/is/isReadyByVersion/index.test.ts | 2 +- .../tests/is/isSuccessResponse/index.test.ts | 2 +- .../neuron-ui/src/tests/parsers/index.test.ts | 2 +- .../src/tests/sortAccounts/index.test.ts | 2 +- .../tests/validators/address/index.test.ts | 2 +- .../src/tests/validators/amount/index.test.ts | 2 +- .../validators/amountRange/index.test.ts | 2 +- .../assetAccountAddress/index.test.ts | 2 +- .../validators/assetAccountName/index.test.ts | 2 +- .../tests/validators/capacity/index.test.ts | 2 +- .../tests/validators/decimal/index.test.ts | 2 +- .../validators/networkName/index.test.ts | 2 +- .../tests/validators/outputs/index.test.ts | 2 +- .../passwordComplexity/index.test.ts | 2 +- .../tests/validators/sudtAmount/index.test.ts | 2 +- .../src/tests/validators/symbol/index.test.ts | 2 +- .../tests/validators/tokenId/index.test.ts | 2 +- .../tests/validators/tokenName/index.test.ts | 2 +- .../validators/totalAmount/index.test.ts | 2 +- .../src/tests/validators/url/index.test.ts | 2 +- .../neuron-ui/src/types/global/index.d.ts | 2 +- .../src/widgets/AlertDialog/index.tsx | 9 +- .../neuron-ui/src/widgets/Calendar/index.tsx | 4 +- .../DropdownWithCustomRender/index.tsx | 2 +- packages/neuron-ui/src/widgets/Icons/icon.tsx | 136 +- .../src/widgets/InputSelect/index.tsx | 2 +- .../src/widgets/RadioGroup/index.tsx | 2 +- packages/neuron-ui/src/widgets/Spinner.tsx | 2 +- .../neuron-ui/src/widgets/TextField/index.tsx | 2 +- .../neuron-ui/src/widgets/Toast/index.tsx | 2 +- packages/neuron-ui/tsconfig.json | 18 +- packages/neuron-ui/vite.config.js | 70 + packages/neuron-ui/vitest-setup.js | 1 + .../tests/services/address.test.ts | 2 - yarn.lock | 11761 +++++----------- 95 files changed, 4064 insertions(+), 8312 deletions(-) create mode 100644 packages/neuron-ui/index.html mode change 100755 => 100644 packages/neuron-ui/public/index.html delete mode 100644 packages/neuron-ui/src/react-app-env.d.ts create mode 100644 packages/neuron-ui/vite.config.js create mode 100644 packages/neuron-ui/vitest-setup.js diff --git a/package.json b/package.json index 8e74147839..7b63199b71 100644 --- a/package.json +++ b/package.json @@ -53,6 +53,7 @@ "eslint-config-prettier": "9.1.0", "eslint-plugin-prettier": "4.2.1", "husky": "8.0.3", + "jest": "29.7.0", "lerna": "8.1.5", "lint-staged": "15.2.7", "ncp": "2.0.0", diff --git a/packages/neuron-ui/.eslintrc.js b/packages/neuron-ui/.eslintrc.js index b83c885ab3..d33f476c46 100644 --- a/packages/neuron-ui/.eslintrc.js +++ b/packages/neuron-ui/.eslintrc.js @@ -65,7 +65,7 @@ module.exports = { 'import/no-extraneous-dependencies': [ 'error', { - devDependencies: ['**/*.stories.*', 'src/setupTests.ts', '**/*.test.ts'], + devDependencies: ['**/*.stories.*', 'src/setupTests.ts', '**/*.test.ts', './vitest-setup.js'], }, ], 'import/extensions': [ @@ -96,5 +96,6 @@ module.exports = { allowExpressions: true, }, ], + 'import/no-unresolved': [2, { ignore: ['.svg'] }], }, } diff --git a/packages/neuron-ui/.storybook/electron.js b/packages/neuron-ui/.storybook/electron.js index 62941a713f..18164a437d 100644 --- a/packages/neuron-ui/.storybook/electron.js +++ b/packages/neuron-ui/.storybook/electron.js @@ -3,19 +3,17 @@ const sendSyncValues = { 'get-version': '0.103.1', } -module.exports = { - ipcRenderer: { - sendSync(key) { - return sendSyncValues[key] - }, - invoke() { - return Promise.resolve({}) - }, - on() {}, - removeAllListeners() {}, +export const ipcRenderer = { + sendSync(key) { + return sendSyncValues[key] }, - clipboard() {}, - nativeImage() {}, - shell() {}, - desktopCapturer() {}, + invoke() { + return Promise.resolve({}) + }, + on() {}, + removeAllListeners() {}, } +export const clipboard = () => {} +export const nativeImage = () => {} +export const shell = () => {} +export const desktopCapturer = () => {} diff --git a/packages/neuron-ui/.storybook/main.ts b/packages/neuron-ui/.storybook/main.ts index a8bbc1d2bc..863f6ebf84 100644 --- a/packages/neuron-ui/.storybook/main.ts +++ b/packages/neuron-ui/.storybook/main.ts @@ -1,29 +1,30 @@ -export default { - stories: ['../src/**/*.stories.mdx', '../src/**/*.stories.@(js|jsx|ts|tsx)'], +import { StorybookConfig } from '@storybook/react-vite' +const { mergeConfig } = require('vite') +import path from 'path' + +const config: StorybookConfig = { + stories: ['../src/**/*.stories.@(js|jsx|ts|tsx)'], addons: [ '@storybook/addon-links', '@storybook/addon-essentials', '@storybook/addon-interactions', - '@storybook/preset-create-react-app', 'storybook-addon-react-router-v6', ], - framework: { - name: '@storybook/react-webpack5', - options: {}, + framework: '@storybook/react-vite', + core: { + builder: '@storybook/builder-vite', }, - webpackFinal: config => { - config.resolve.fallback = { - fs: false, - crypto: false, - buffer: false, - } - config.resolve.alias = { - ...config.resolve.alias, - electron: require.resolve('./electron'), - } - return config + async viteFinal(config) { + return mergeConfig(config, { + resolve: { + alias: { electron: path.resolve(__dirname, '../.storybook/electron') }, + }, + }) }, docs: { autodocs: true, }, + staticDirs: ['../public'], } + +export default config diff --git a/packages/neuron-ui/index.html b/packages/neuron-ui/index.html new file mode 100644 index 0000000000..8108b98d45 --- /dev/null +++ b/packages/neuron-ui/index.html @@ -0,0 +1,21 @@ + + + + + + + + + + Neuron + + + + +
+
+
+ + + + \ No newline at end of file diff --git a/packages/neuron-ui/package.json b/packages/neuron-ui/package.json index 53761e2dd0..aec775b96d 100644 --- a/packages/neuron-ui/package.json +++ b/packages/neuron-ui/package.json @@ -15,14 +15,14 @@ "main": "./build", "license": "MIT", "scripts": { - "start": "cross-env DISABLE_ESLINT_PLUGIN=true GENERATE_SOURCEMAP=false react-app-rewired start", + "start": "cross-env DISABLE_ESLINT_PLUGIN=true vite", "lint": "eslint --fix --ext .tsx,.ts,.js src", - "test": "react-app-rewired test --env=jsdom --watchAll=false", - "build": "cross-env DISABLE_ESLINT_PLUGIN=true GENERATE_SOURCEMAP=false react-app-rewired build", + "test": "vitest --environment=jsdom --run --watch=false", + "build": "cross-env DISABLE_ESLINT_PLUGIN=true vite build", "clean": "npx rimraf build", "precommit": "lint-staged", - "storybook": "storybook dev -p 9009 -s public", - "build-storybook": "storybook build -s public" + "storybook": "storybook dev -p 9009", + "build-storybook": "storybook build" }, "publishConfig": { "registry": "https://registry.npmjs.org/" @@ -72,17 +72,19 @@ }, "devDependencies": { "@babel/plugin-proposal-private-property-in-object": "7.21.11", + "@babel/preset-env": "7.26.9", "@babel/preset-typescript": "7.23.3", - "@jest/globals": "27.5.1", - "@storybook/addon-actions": "7.6.6", - "@storybook/addon-essentials": "7.6.6", - "@storybook/addon-interactions": "7.6.6", - "@storybook/addon-links": "7.6.6", + "@storybook/addon-actions": "8.6.4", + "@storybook/addon-essentials": "8.6.4", + "@storybook/addon-interactions": "8.6.4", + "@storybook/addon-links": "8.6.4", + "@storybook/builder-vite": "8.6.4", "@storybook/node-logger": "7.6.6", - "@storybook/preset-create-react-app": "7.6.6", - "@storybook/react": "7.6.6", - "@storybook/react-webpack5": "7.6.6", + "@storybook/react": "8.6.4", + "@storybook/react-vite": "8.6.4", "@storybook/testing-library": "0.2.2", + "@testing-library/jest-dom": "6.6.3", + "@testing-library/react": "16.2.0", "@types/enzyme": "3.10.18", "@types/enzyme-adapter-react-16": "1.0.9", "@types/node": "20.10.5", @@ -90,6 +92,7 @@ "@types/react-dom": "18.2.18", "@types/react-router-dom": "5.3.3", "@types/styled-components": "5.1.34", + "@vitejs/plugin-react": "4.3.4", "@wojtekmaj/enzyme-adapter-react-17": "0.8.0", "babel-jest": "25.5.1", "electron": "30.0.0", @@ -100,11 +103,17 @@ "eslint-plugin-jsx-a11y": "6.7.1", "eslint-plugin-react": "7.32.2", "jest-styled-components": "7.2.0", - "react-app-rewired": "2.2.1", - "react-scripts": "5.0.1", + "jsdom": "26.0.0", + "postcss-preset-env": "10.1.5", "react-test-renderer": "18.2.0", - "storybook": "7.6.6", + "storybook": "^8.6.4", "storybook-addon-react-router-v6": "2.0.10", + "vite": "6.2.1", + "vite-plugin-eslint": "1.8.1", + "vite-plugin-node-polyfills": "0.23.0", + "vite-plugin-require-transform": "1.0.21", + "vite-plugin-svgr": "4.3.0", + "vitest": "3.0.8", "webpack": "5.94.0" }, "resolutions": { diff --git a/packages/neuron-ui/public/index.html b/packages/neuron-ui/public/index.html old mode 100755 new mode 100644 index bbfb71d586..8108b98d45 --- a/packages/neuron-ui/public/index.html +++ b/packages/neuron-ui/public/index.html @@ -1,27 +1,21 @@ - - - - - - - - Neuron - + + + + + + + Neuron + - - -
-
-
- - + + +
+
+
+ + + + \ No newline at end of file diff --git a/packages/neuron-ui/src/components/CompensationPeriodTooltip/index.tsx b/packages/neuron-ui/src/components/CompensationPeriodTooltip/index.tsx index c719dabc31..b6a7ee707e 100644 --- a/packages/neuron-ui/src/components/CompensationPeriodTooltip/index.tsx +++ b/packages/neuron-ui/src/components/CompensationPeriodTooltip/index.tsx @@ -1,10 +1,9 @@ import React from 'react' import { useTranslation } from 'react-i18next' -import { getCompensatedTime, getCompensationPeriod, CONSTANTS, CompensationPeriod, uniformTimeFormatter } from 'utils' +import { getCompensatedTime, getCompensationPeriod, CompensationPeriod, uniformTimeFormatter } from 'utils' +import { WITHDRAW_EPOCHS } from 'utils/const' import styles from './compensationPeriodTooltip.module.scss' -const { WITHDRAW_EPOCHS } = CONSTANTS - const HOUR = 3_600_000 const HOURS_PER_EPOCH = 4 * HOUR const SECS_PER_DAY = 24 * HOUR diff --git a/packages/neuron-ui/src/components/GeneralSetting/index.tsx b/packages/neuron-ui/src/components/GeneralSetting/index.tsx index 046c90c4b1..8f77e68c4d 100644 --- a/packages/neuron-ui/src/components/GeneralSetting/index.tsx +++ b/packages/neuron-ui/src/components/GeneralSetting/index.tsx @@ -4,9 +4,9 @@ import { useSearchParams } from 'react-router-dom' import Dialog from 'widgets/Dialog' import LanguageDialog from 'components/LanguageDialog' import AlertDialog from 'widgets/AlertDialog' -import { ReactComponent as VersionLogo } from 'widgets/Icons/VersionLogo.svg' -import { ReactComponent as ArrowNext } from 'widgets/Icons/ArrowNext.svg' -import { ReactComponent as Update } from 'widgets/Icons/Update.svg' +import VersionLogo from 'widgets/Icons/VersionLogo.svg?react' +import ArrowNext from 'widgets/Icons/ArrowNext.svg?react' +import Update from 'widgets/Icons/Update.svg?react' import { cancelCheckUpdates, downloadUpdate, installUpdate, getVersion } from 'services/remote' import { uniformTimeFormatter, bytesFormatter, clsx, wakeScreen, releaseWakeLock } from 'utils' import Switch from 'widgets/Switch' diff --git a/packages/neuron-ui/src/components/HardwareSign/success.tsx b/packages/neuron-ui/src/components/HardwareSign/success.tsx index f971cd973f..5d30993eff 100644 --- a/packages/neuron-ui/src/components/HardwareSign/success.tsx +++ b/packages/neuron-ui/src/components/HardwareSign/success.tsx @@ -3,7 +3,7 @@ import { useTranslation } from 'react-i18next' import { useNavigate } from 'react-router-dom' import { RoutePath } from 'utils' import Button from 'widgets/Button' -import { ReactComponent as CompleteIcon } from 'widgets/Icons/Complete.svg' +import CompleteIcon from 'widgets/Icons/Complete.svg?react' import styles from './hardwareSign.module.scss' diff --git a/packages/neuron-ui/src/components/History/index.tsx b/packages/neuron-ui/src/components/History/index.tsx index f012415c87..5000029bcd 100644 --- a/packages/neuron-ui/src/components/History/index.tsx +++ b/packages/neuron-ui/src/components/History/index.tsx @@ -14,7 +14,7 @@ import FormattedTokenAmount, { FormattedCKBBalanceChange } from 'components/Form import { useState as useGlobalState, useDispatch } from 'states' import { exportTransactions } from 'services/remote' -import { ReactComponent as CKBAvatar } from 'widgets/Icons/Nervos.svg' +import CKBAvatar from 'widgets/Icons/Nervos.svg?react' import { RoutePath, isMainnet as isMainnetUtil, uniformTimeFormatter } from 'utils' import { onEnter } from 'utils/inputDevice' @@ -237,7 +237,6 @@ const History = () => { navigate(`${RoutePath.History}?pageNo=${pageNo}&keywords=${keywords}&sort=${key}&direction=${type}`) }} /> -
(navigate: NavigateFunction) => { return createWallet(params).then(res => { if (isSuccessResponse(res)) { diff --git a/packages/neuron-ui/src/index.tsx b/packages/neuron-ui/src/index.tsx index d531a34cf9..4ef07da4f8 100755 --- a/packages/neuron-ui/src/index.tsx +++ b/packages/neuron-ui/src/index.tsx @@ -1,5 +1,5 @@ import React, { Suspense } from 'react' -import ReactDOM from 'react-dom' +import ReactDOM from 'react-dom/client' import { HashRouter as Router, useRoutes, RouteObject } from 'react-router-dom' import 'theme' @@ -31,6 +31,8 @@ const App = withProvider(() => { Object.defineProperty(App, 'displayName', { value: 'App', }) -ReactDOM.render(, document.getElementById('root')) + +const root = ReactDOM.createRoot(document.getElementById('root')!) +root.render() export default undefined diff --git a/packages/neuron-ui/src/react-app-env.d.ts b/packages/neuron-ui/src/react-app-env.d.ts deleted file mode 100644 index 30da896298..0000000000 --- a/packages/neuron-ui/src/react-app-env.d.ts +++ /dev/null @@ -1 +0,0 @@ -// / diff --git a/packages/neuron-ui/src/services/subjects.ts b/packages/neuron-ui/src/services/subjects.ts index 2fb4037ccb..f208c20f81 100644 --- a/packages/neuron-ui/src/services/subjects.ts +++ b/packages/neuron-ui/src/services/subjects.ts @@ -1,8 +1,6 @@ -import { CONSTANTS } from 'utils' +import { LOCALES } from 'utils/const' import { ipcRenderer, type IpcRendererEvent } from 'electron' -const { LOCALES } = CONSTANTS - const FallbackSubject = { subscribe: (args: any) => { console.warn('The remote module is not found, please make sure the UI is running inside the Electron App') diff --git a/packages/neuron-ui/src/states/init/app.ts b/packages/neuron-ui/src/states/init/app.ts index 2647f172c2..5302691e48 100644 --- a/packages/neuron-ui/src/states/init/app.ts +++ b/packages/neuron-ui/src/states/init/app.ts @@ -1,6 +1,5 @@ -import { CapacityUnit, CONSTANTS, ErrorCode } from 'utils' - -const { INIT_SEND_PRICE } = CONSTANTS +import { CapacityUnit, ErrorCode } from 'utils' +import { INIT_SEND_PRICE } from 'utils/const' const initNotifications: Array = [ { diff --git a/packages/neuron-ui/src/tests/calculation/calculateAPC/index.test.ts b/packages/neuron-ui/src/tests/calculation/calculateAPC/index.test.ts index 4e94d828a0..01fdde6ab0 100644 --- a/packages/neuron-ui/src/tests/calculation/calculateAPC/index.test.ts +++ b/packages/neuron-ui/src/tests/calculation/calculateAPC/index.test.ts @@ -1,4 +1,4 @@ -import { describe, test, expect } from '@jest/globals' +import { describe, test, expect } from 'vitest' import calculateAPC from 'utils/calculateAPC' import fixtures from './fixtures.json' diff --git a/packages/neuron-ui/src/tests/calculation/calculateClaimEpochValue/index.test.ts b/packages/neuron-ui/src/tests/calculation/calculateClaimEpochValue/index.test.ts index 4917a70ece..0386a6106d 100644 --- a/packages/neuron-ui/src/tests/calculation/calculateClaimEpochValue/index.test.ts +++ b/packages/neuron-ui/src/tests/calculation/calculateClaimEpochValue/index.test.ts @@ -1,4 +1,4 @@ -import { describe, test, expect } from '@jest/globals' +import { describe, test, expect } from 'vitest' import calculateClaimEpochValue from 'utils/calculateClaimEpochValue' import fixtures from './fixtures.json' diff --git a/packages/neuron-ui/src/tests/calendar/index.test.ts b/packages/neuron-ui/src/tests/calendar/index.test.ts index ae4e0772eb..2949afc829 100644 --- a/packages/neuron-ui/src/tests/calendar/index.test.ts +++ b/packages/neuron-ui/src/tests/calendar/index.test.ts @@ -1,4 +1,4 @@ -import { describe, it, expect } from '@jest/globals' +import { describe, it, expect } from 'vitest' import { isDayInRange, isMonthInRange, diff --git a/packages/neuron-ui/src/tests/formatters/CKBToShannonFormatter/index.test.ts b/packages/neuron-ui/src/tests/formatters/CKBToShannonFormatter/index.test.ts index 6c74afa6a3..e3bf80b651 100644 --- a/packages/neuron-ui/src/tests/formatters/CKBToShannonFormatter/index.test.ts +++ b/packages/neuron-ui/src/tests/formatters/CKBToShannonFormatter/index.test.ts @@ -1,4 +1,4 @@ -import { describe, test, expect } from '@jest/globals' +import { describe, test, expect } from 'vitest' import { CKBToShannonFormatter } from 'utils/formatters' import { CapacityUnit } from 'utils' import fixtures from './fixtures' diff --git a/packages/neuron-ui/src/tests/formatters/addressesToBalance/index.test.ts b/packages/neuron-ui/src/tests/formatters/addressesToBalance/index.test.ts index e9bc9009c5..8e4ac20f86 100644 --- a/packages/neuron-ui/src/tests/formatters/addressesToBalance/index.test.ts +++ b/packages/neuron-ui/src/tests/formatters/addressesToBalance/index.test.ts @@ -1,4 +1,4 @@ -import { describe, test, expect } from '@jest/globals' +import { describe, test, expect } from 'vitest' import { addressesToBalance } from 'utils/formatters' import fixtures from './fixtures' diff --git a/packages/neuron-ui/src/tests/formatters/bytesFormatter/index.test.ts b/packages/neuron-ui/src/tests/formatters/bytesFormatter/index.test.ts index a98c5cdd46..8c8e3cb3bf 100644 --- a/packages/neuron-ui/src/tests/formatters/bytesFormatter/index.test.ts +++ b/packages/neuron-ui/src/tests/formatters/bytesFormatter/index.test.ts @@ -1,4 +1,4 @@ -import { describe, test, expect } from '@jest/globals' +import { describe, test, expect } from 'vitest' import { bytesFormatter } from 'utils/formatters' import fixtures from './fixtures.json' diff --git a/packages/neuron-ui/src/tests/formatters/complexNumberToPureNumber/index.test.ts b/packages/neuron-ui/src/tests/formatters/complexNumberToPureNumber/index.test.ts index 319208a831..a1db00361f 100644 --- a/packages/neuron-ui/src/tests/formatters/complexNumberToPureNumber/index.test.ts +++ b/packages/neuron-ui/src/tests/formatters/complexNumberToPureNumber/index.test.ts @@ -1,4 +1,4 @@ -import { describe, test, expect } from '@jest/globals' +import { describe, test, expect } from 'vitest' import { complexNumberToPureNumber } from 'utils/formatters' import fixtures from './fixtures' diff --git a/packages/neuron-ui/src/tests/formatters/currencyFormatter/index.test.ts b/packages/neuron-ui/src/tests/formatters/currencyFormatter/index.test.ts index ac84e21567..0de1144ed8 100644 --- a/packages/neuron-ui/src/tests/formatters/currencyFormatter/index.test.ts +++ b/packages/neuron-ui/src/tests/formatters/currencyFormatter/index.test.ts @@ -1,4 +1,4 @@ -import { describe, test, expect } from '@jest/globals' +import { describe, test, expect } from 'vitest' import { currencyFormatter } from 'utils/formatters' import fixtures from './fixtures' diff --git a/packages/neuron-ui/src/tests/formatters/difficultyFormatter/index.test.ts b/packages/neuron-ui/src/tests/formatters/difficultyFormatter/index.test.ts index f3c245189b..e2ee94a730 100644 --- a/packages/neuron-ui/src/tests/formatters/difficultyFormatter/index.test.ts +++ b/packages/neuron-ui/src/tests/formatters/difficultyFormatter/index.test.ts @@ -1,4 +1,4 @@ -import { describe, test, expect } from '@jest/globals' +import { describe, test, expect } from 'vitest' import { difficultyFormatter } from 'utils/formatters' import fixtures from './fixtures.json' diff --git a/packages/neuron-ui/src/tests/formatters/outputsToTotalAmount/index.test.ts b/packages/neuron-ui/src/tests/formatters/outputsToTotalAmount/index.test.ts index ed095c0c1e..5da57f9b4c 100644 --- a/packages/neuron-ui/src/tests/formatters/outputsToTotalAmount/index.test.ts +++ b/packages/neuron-ui/src/tests/formatters/outputsToTotalAmount/index.test.ts @@ -1,4 +1,4 @@ -import { describe, test, expect } from '@jest/globals' +import { describe, test, expect } from 'vitest' import { outputsToTotalAmount } from 'utils/formatters' import fixtures from './fixtures' diff --git a/packages/neuron-ui/src/tests/formatters/padFractionDigitsIfDecimal/index.test.ts b/packages/neuron-ui/src/tests/formatters/padFractionDigitsIfDecimal/index.test.ts index 76c5563d17..f484bf3064 100644 --- a/packages/neuron-ui/src/tests/formatters/padFractionDigitsIfDecimal/index.test.ts +++ b/packages/neuron-ui/src/tests/formatters/padFractionDigitsIfDecimal/index.test.ts @@ -1,4 +1,4 @@ -import { describe, it, expect } from '@jest/globals' +import { describe, it, expect } from 'vitest' import { padFractionDigitsIfDecimal } from 'utils/formatters' describe('padFractionDigitsIfDecimal', () => { diff --git a/packages/neuron-ui/src/tests/formatters/sUDTAmountFormatter/index.test.ts b/packages/neuron-ui/src/tests/formatters/sUDTAmountFormatter/index.test.ts index 842be431c9..6230374376 100644 --- a/packages/neuron-ui/src/tests/formatters/sUDTAmountFormatter/index.test.ts +++ b/packages/neuron-ui/src/tests/formatters/sUDTAmountFormatter/index.test.ts @@ -1,4 +1,4 @@ -import { describe, test, expect } from '@jest/globals' +import { describe, test, expect } from 'vitest' import { sUDTAmountFormatter } from 'utils/formatters' import fixtures from './fixtures' diff --git a/packages/neuron-ui/src/tests/formatters/shannonToCKBFormatter/index.test.ts b/packages/neuron-ui/src/tests/formatters/shannonToCKBFormatter/index.test.ts index adc889334b..48630fec7f 100644 --- a/packages/neuron-ui/src/tests/formatters/shannonToCKBFormatter/index.test.ts +++ b/packages/neuron-ui/src/tests/formatters/shannonToCKBFormatter/index.test.ts @@ -1,4 +1,4 @@ -import { describe, test, expect } from '@jest/globals' +import { describe, test, expect } from 'vitest' import { shannonToCKBFormatter } from 'utils/formatters' import fixtures from './fixtures' diff --git a/packages/neuron-ui/src/tests/formatters/sporeFormatter/index.test.ts b/packages/neuron-ui/src/tests/formatters/sporeFormatter/index.test.ts index 17ad3f202c..5f84aeb779 100644 --- a/packages/neuron-ui/src/tests/formatters/sporeFormatter/index.test.ts +++ b/packages/neuron-ui/src/tests/formatters/sporeFormatter/index.test.ts @@ -1,4 +1,4 @@ -import { describe, it, expect } from '@jest/globals' +import { describe, it, expect } from 'vitest' import { sporeFormatter, truncateMiddle } from 'utils/formatters' describe('sporeFormatter', () => { diff --git a/packages/neuron-ui/src/tests/formatters/sudtAmountToValue/index.test.ts b/packages/neuron-ui/src/tests/formatters/sudtAmountToValue/index.test.ts index ea749c7102..31ab911b8f 100644 --- a/packages/neuron-ui/src/tests/formatters/sudtAmountToValue/index.test.ts +++ b/packages/neuron-ui/src/tests/formatters/sudtAmountToValue/index.test.ts @@ -1,4 +1,4 @@ -import { describe, test, expect } from '@jest/globals' +import { describe, test, expect } from 'vitest' import { sudtAmountToValue } from 'utils/formatters' import fixtures from './fixtures' diff --git a/packages/neuron-ui/src/tests/formatters/sudtValueToAmount/index.test.ts b/packages/neuron-ui/src/tests/formatters/sudtValueToAmount/index.test.ts index 7470b6e775..7dc8466515 100644 --- a/packages/neuron-ui/src/tests/formatters/sudtValueToAmount/index.test.ts +++ b/packages/neuron-ui/src/tests/formatters/sudtValueToAmount/index.test.ts @@ -1,4 +1,4 @@ -import { describe, test, expect } from '@jest/globals' +import { describe, test, expect } from 'vitest' import { sudtValueToAmount } from 'utils/formatters' import fixtures from './fixtures' diff --git a/packages/neuron-ui/src/tests/getCompensatedTime/index.test.ts b/packages/neuron-ui/src/tests/getCompensatedTime/index.test.ts index df3dd6f19f..4bb292debe 100644 --- a/packages/neuron-ui/src/tests/getCompensatedTime/index.test.ts +++ b/packages/neuron-ui/src/tests/getCompensatedTime/index.test.ts @@ -1,4 +1,4 @@ -import { describe, test, expect } from '@jest/globals' +import { describe, test, expect } from 'vitest' import getCompensatedTime from 'utils/getCompensatedTime' import fixtures from './fixtures.json' diff --git a/packages/neuron-ui/src/tests/getCompensationPeriod/index.test.ts b/packages/neuron-ui/src/tests/getCompensationPeriod/index.test.ts index 26d74e4765..9c02060b16 100644 --- a/packages/neuron-ui/src/tests/getCompensationPeriod/index.test.ts +++ b/packages/neuron-ui/src/tests/getCompensationPeriod/index.test.ts @@ -1,4 +1,4 @@ -import { describe, test, expect } from '@jest/globals' +import { describe, test, expect } from 'vitest' import getCompensationPeriod from 'utils/getCompensationPeriod' import fixtures from './fixtures.json' diff --git a/packages/neuron-ui/src/tests/getConnectionStatus/index.test.ts b/packages/neuron-ui/src/tests/getConnectionStatus/index.test.ts index 66b098fd39..b86040462a 100644 --- a/packages/neuron-ui/src/tests/getConnectionStatus/index.test.ts +++ b/packages/neuron-ui/src/tests/getConnectionStatus/index.test.ts @@ -1,4 +1,4 @@ -import { describe, test, expect } from '@jest/globals' +import { describe, test, expect } from 'vitest' import { ConnectionStatus } from 'utils' import getConnectionStatus from 'utils/getConnectionStatus' import fixtures from './fixtures.json' diff --git a/packages/neuron-ui/src/tests/getDAOCellStatus/index.test.ts b/packages/neuron-ui/src/tests/getDAOCellStatus/index.test.ts index 8023967548..f412d32b8a 100644 --- a/packages/neuron-ui/src/tests/getDAOCellStatus/index.test.ts +++ b/packages/neuron-ui/src/tests/getDAOCellStatus/index.test.ts @@ -1,4 +1,4 @@ -import { describe, test, expect } from '@jest/globals' +import { describe, test, expect } from 'vitest' import getDAOCellStatus, { CellStatus } from 'utils/getDAOCellStatus' import fixtures from './fixtures.json' diff --git a/packages/neuron-ui/src/tests/getMultisigSignStatus/index.test.ts b/packages/neuron-ui/src/tests/getMultisigSignStatus/index.test.ts index eab3d73406..cadcac984c 100644 --- a/packages/neuron-ui/src/tests/getMultisigSignStatus/index.test.ts +++ b/packages/neuron-ui/src/tests/getMultisigSignStatus/index.test.ts @@ -1,4 +1,4 @@ -import { describe, it, expect } from '@jest/globals' +import { describe, it, expect } from 'vitest' import { MultisigConfig } from 'services/remote' import { addressToScript, getMultisigSignStatus } from 'utils' import { computeScriptHash } from '@ckb-lumos/lumos/utils' diff --git a/packages/neuron-ui/src/tests/getPageNoList/index.test.ts b/packages/neuron-ui/src/tests/getPageNoList/index.test.ts index 0947dfbda2..3b295859be 100644 --- a/packages/neuron-ui/src/tests/getPageNoList/index.test.ts +++ b/packages/neuron-ui/src/tests/getPageNoList/index.test.ts @@ -1,4 +1,4 @@ -import { describe, test, expect } from '@jest/globals' +import { describe, test, expect } from 'vitest' import getPageNoList from 'utils/getPageNoList' import fixtures from './fixtures' diff --git a/packages/neuron-ui/src/tests/getSyncLeftTime/index.test.ts b/packages/neuron-ui/src/tests/getSyncLeftTime/index.test.ts index 25988887dd..6332bcf073 100644 --- a/packages/neuron-ui/src/tests/getSyncLeftTime/index.test.ts +++ b/packages/neuron-ui/src/tests/getSyncLeftTime/index.test.ts @@ -1,4 +1,4 @@ -import { describe, test, expect } from '@jest/globals' +import { describe, test, expect } from 'vitest' import getSyncLeftTime from 'utils/getSyncLeftTime' import fixtures from './fixtures.json' diff --git a/packages/neuron-ui/src/tests/is/isMainnet/index.test.ts b/packages/neuron-ui/src/tests/is/isMainnet/index.test.ts index 18cf7a8085..57c108e21b 100644 --- a/packages/neuron-ui/src/tests/is/isMainnet/index.test.ts +++ b/packages/neuron-ui/src/tests/is/isMainnet/index.test.ts @@ -1,4 +1,4 @@ -import { describe, test, expect } from '@jest/globals' +import { describe, test, expect } from 'vitest' import { isMainnet } from 'utils/is' import fixtures from './fixtures' diff --git a/packages/neuron-ui/src/tests/is/isReadyByVersion/index.test.ts b/packages/neuron-ui/src/tests/is/isReadyByVersion/index.test.ts index 6f9a113bad..eaba8a30bb 100644 --- a/packages/neuron-ui/src/tests/is/isReadyByVersion/index.test.ts +++ b/packages/neuron-ui/src/tests/is/isReadyByVersion/index.test.ts @@ -1,4 +1,4 @@ -import { describe, test, expect } from '@jest/globals' +import { describe, test, expect } from 'vitest' import { isReadyByVersion } from 'utils/is' import fixtures from './fixtures' diff --git a/packages/neuron-ui/src/tests/is/isSuccessResponse/index.test.ts b/packages/neuron-ui/src/tests/is/isSuccessResponse/index.test.ts index efaafded4a..4e114f81e4 100644 --- a/packages/neuron-ui/src/tests/is/isSuccessResponse/index.test.ts +++ b/packages/neuron-ui/src/tests/is/isSuccessResponse/index.test.ts @@ -1,4 +1,4 @@ -import { describe, test, expect } from '@jest/globals' +import { describe, test, expect } from 'vitest' import { isSuccessResponse } from 'utils/is' import fixtures from './fixtures' diff --git a/packages/neuron-ui/src/tests/parsers/index.test.ts b/packages/neuron-ui/src/tests/parsers/index.test.ts index a7a240565b..38ad25a73e 100644 --- a/packages/neuron-ui/src/tests/parsers/index.test.ts +++ b/packages/neuron-ui/src/tests/parsers/index.test.ts @@ -1,4 +1,4 @@ -import { describe, it, expect } from '@jest/globals' +import { describe, it, expect } from 'vitest' import { listParams, epochParser, toUint128Le } from 'utils/parsers' describe('listParams', () => { diff --git a/packages/neuron-ui/src/tests/sortAccounts/index.test.ts b/packages/neuron-ui/src/tests/sortAccounts/index.test.ts index 27b52a56d6..0d1a661d5a 100644 --- a/packages/neuron-ui/src/tests/sortAccounts/index.test.ts +++ b/packages/neuron-ui/src/tests/sortAccounts/index.test.ts @@ -1,4 +1,4 @@ -import { describe, test, expect } from '@jest/globals' +import { describe, test, expect } from 'vitest' import sortAccounts, { Account } from 'utils/sortAccounts' import fixtures from './fixtures.json' diff --git a/packages/neuron-ui/src/tests/validators/address/index.test.ts b/packages/neuron-ui/src/tests/validators/address/index.test.ts index 402c40b82c..b80d750a22 100644 --- a/packages/neuron-ui/src/tests/validators/address/index.test.ts +++ b/packages/neuron-ui/src/tests/validators/address/index.test.ts @@ -1,4 +1,4 @@ -import { describe, test, expect } from '@jest/globals' +import { describe, test, expect } from 'vitest' import { isErrorWithI18n } from 'exceptions' import { validateAddress } from 'utils/validators' import fixtures from './fixtures' diff --git a/packages/neuron-ui/src/tests/validators/amount/index.test.ts b/packages/neuron-ui/src/tests/validators/amount/index.test.ts index 2048ab2e54..579ccaa8b6 100644 --- a/packages/neuron-ui/src/tests/validators/amount/index.test.ts +++ b/packages/neuron-ui/src/tests/validators/amount/index.test.ts @@ -1,4 +1,4 @@ -import { describe, test, expect } from '@jest/globals' +import { describe, test, expect } from 'vitest' import { isErrorWithI18n } from 'exceptions' import { validateAmount } from 'utils/validators' import fixtures from './fixtures' diff --git a/packages/neuron-ui/src/tests/validators/amountRange/index.test.ts b/packages/neuron-ui/src/tests/validators/amountRange/index.test.ts index ce3cc24472..1729dabfec 100644 --- a/packages/neuron-ui/src/tests/validators/amountRange/index.test.ts +++ b/packages/neuron-ui/src/tests/validators/amountRange/index.test.ts @@ -1,4 +1,4 @@ -import { describe, test, expect } from '@jest/globals' +import { describe, test, expect } from 'vitest' import { isErrorWithI18n } from 'exceptions' import { validateAmountRange } from 'utils/validators' import fixtures from './fixtures' diff --git a/packages/neuron-ui/src/tests/validators/assetAccountAddress/index.test.ts b/packages/neuron-ui/src/tests/validators/assetAccountAddress/index.test.ts index 40c36b65cf..a55227b1be 100644 --- a/packages/neuron-ui/src/tests/validators/assetAccountAddress/index.test.ts +++ b/packages/neuron-ui/src/tests/validators/assetAccountAddress/index.test.ts @@ -1,4 +1,4 @@ -import { describe, test, expect } from '@jest/globals' +import { describe, test, expect } from 'vitest' import { isErrorWithI18n } from 'exceptions' import { validateAssetAccountAddress } from 'utils/validators' import fixtures from './fixtures' diff --git a/packages/neuron-ui/src/tests/validators/assetAccountName/index.test.ts b/packages/neuron-ui/src/tests/validators/assetAccountName/index.test.ts index 2ea6305086..a969260574 100644 --- a/packages/neuron-ui/src/tests/validators/assetAccountName/index.test.ts +++ b/packages/neuron-ui/src/tests/validators/assetAccountName/index.test.ts @@ -1,4 +1,4 @@ -import { describe, test, expect } from '@jest/globals' +import { describe, test, expect } from 'vitest' import { isErrorWithI18n } from 'exceptions' import { validateAssetAccountName } from 'utils/validators' import fixtures from './fixtures' diff --git a/packages/neuron-ui/src/tests/validators/capacity/index.test.ts b/packages/neuron-ui/src/tests/validators/capacity/index.test.ts index d750f0b52f..41d64996aa 100644 --- a/packages/neuron-ui/src/tests/validators/capacity/index.test.ts +++ b/packages/neuron-ui/src/tests/validators/capacity/index.test.ts @@ -1,4 +1,4 @@ -import { describe, test, expect } from '@jest/globals' +import { describe, test, expect } from 'vitest' import { isErrorWithI18n } from 'exceptions' import { validateCapacity } from 'utils/validators' import fixtures from './fixtures' diff --git a/packages/neuron-ui/src/tests/validators/decimal/index.test.ts b/packages/neuron-ui/src/tests/validators/decimal/index.test.ts index 0d0fad954f..970a71edb2 100644 --- a/packages/neuron-ui/src/tests/validators/decimal/index.test.ts +++ b/packages/neuron-ui/src/tests/validators/decimal/index.test.ts @@ -1,4 +1,4 @@ -import { describe, test, expect } from '@jest/globals' +import { describe, test, expect } from 'vitest' import { isErrorWithI18n } from 'exceptions' import { validateDecimal } from 'utils/validators' import fixtures from './fixtures' diff --git a/packages/neuron-ui/src/tests/validators/networkName/index.test.ts b/packages/neuron-ui/src/tests/validators/networkName/index.test.ts index bdbe78ed2f..fba20183a6 100644 --- a/packages/neuron-ui/src/tests/validators/networkName/index.test.ts +++ b/packages/neuron-ui/src/tests/validators/networkName/index.test.ts @@ -1,4 +1,4 @@ -import { describe, test, expect } from '@jest/globals' +import { describe, test, expect } from 'vitest' import { isErrorWithI18n } from 'exceptions' import { validateNetworkName } from 'utils/validators' import fixtures from './fixtures' diff --git a/packages/neuron-ui/src/tests/validators/outputs/index.test.ts b/packages/neuron-ui/src/tests/validators/outputs/index.test.ts index dc7af3472e..533e03b560 100644 --- a/packages/neuron-ui/src/tests/validators/outputs/index.test.ts +++ b/packages/neuron-ui/src/tests/validators/outputs/index.test.ts @@ -1,4 +1,4 @@ -import { describe, test, expect } from '@jest/globals' +import { describe, test, expect } from 'vitest' import { validateOutputs } from 'utils/validators' import fixtures from './fixtures' diff --git a/packages/neuron-ui/src/tests/validators/passwordComplexity/index.test.ts b/packages/neuron-ui/src/tests/validators/passwordComplexity/index.test.ts index ab23aa929f..9c312d0d74 100644 --- a/packages/neuron-ui/src/tests/validators/passwordComplexity/index.test.ts +++ b/packages/neuron-ui/src/tests/validators/passwordComplexity/index.test.ts @@ -1,4 +1,4 @@ -import { describe, test, expect } from '@jest/globals' +import { describe, test, expect } from 'vitest' import { isErrorWithI18n } from 'exceptions' import { validatePasswordComplexity } from 'utils/validators' import fixtures from './fixtures' diff --git a/packages/neuron-ui/src/tests/validators/sudtAmount/index.test.ts b/packages/neuron-ui/src/tests/validators/sudtAmount/index.test.ts index 5143476937..919a4ba235 100644 --- a/packages/neuron-ui/src/tests/validators/sudtAmount/index.test.ts +++ b/packages/neuron-ui/src/tests/validators/sudtAmount/index.test.ts @@ -1,4 +1,4 @@ -import { describe, test, expect } from '@jest/globals' +import { describe, test, expect } from 'vitest' import { isErrorWithI18n } from 'exceptions' import { validateAssetAccountAmount } from 'utils/validators' diff --git a/packages/neuron-ui/src/tests/validators/symbol/index.test.ts b/packages/neuron-ui/src/tests/validators/symbol/index.test.ts index 4a533748d5..e3c64235e0 100644 --- a/packages/neuron-ui/src/tests/validators/symbol/index.test.ts +++ b/packages/neuron-ui/src/tests/validators/symbol/index.test.ts @@ -1,4 +1,4 @@ -import { describe, test, expect } from '@jest/globals' +import { describe, test, expect } from 'vitest' import { isErrorWithI18n } from 'exceptions' import { validateSymbol } from 'utils/validators' import fixtures from './fixtures' diff --git a/packages/neuron-ui/src/tests/validators/tokenId/index.test.ts b/packages/neuron-ui/src/tests/validators/tokenId/index.test.ts index b19545793b..853cacc252 100644 --- a/packages/neuron-ui/src/tests/validators/tokenId/index.test.ts +++ b/packages/neuron-ui/src/tests/validators/tokenId/index.test.ts @@ -1,4 +1,4 @@ -import { describe, test, expect } from '@jest/globals' +import { describe, test, expect } from 'vitest' import { isErrorWithI18n } from 'exceptions' import { validateTokenId } from 'utils/validators' import fixtures from './fixtures' diff --git a/packages/neuron-ui/src/tests/validators/tokenName/index.test.ts b/packages/neuron-ui/src/tests/validators/tokenName/index.test.ts index 8716536a5e..00ed3742b1 100644 --- a/packages/neuron-ui/src/tests/validators/tokenName/index.test.ts +++ b/packages/neuron-ui/src/tests/validators/tokenName/index.test.ts @@ -1,4 +1,4 @@ -import { describe, test, expect } from '@jest/globals' +import { describe, test, expect } from 'vitest' import { isErrorWithI18n } from 'exceptions' import { validateTokenName } from 'utils/validators' import fixtures from './fixtures' diff --git a/packages/neuron-ui/src/tests/validators/totalAmount/index.test.ts b/packages/neuron-ui/src/tests/validators/totalAmount/index.test.ts index f2cee32d6a..45dad1a3b1 100644 --- a/packages/neuron-ui/src/tests/validators/totalAmount/index.test.ts +++ b/packages/neuron-ui/src/tests/validators/totalAmount/index.test.ts @@ -1,4 +1,4 @@ -import { describe, test, expect } from '@jest/globals' +import { describe, test, expect } from 'vitest' import { isErrorWithI18n } from 'exceptions' import { validateTotalAmount } from 'utils/validators' diff --git a/packages/neuron-ui/src/tests/validators/url/index.test.ts b/packages/neuron-ui/src/tests/validators/url/index.test.ts index 2dcecac6f8..e19fe5e5d9 100644 --- a/packages/neuron-ui/src/tests/validators/url/index.test.ts +++ b/packages/neuron-ui/src/tests/validators/url/index.test.ts @@ -1,4 +1,4 @@ -import { describe, test, expect } from '@jest/globals' +import { describe, test, expect } from 'vitest' import { isErrorWithI18n } from 'exceptions' import { validateURL } from 'utils/validators' import fixtures from './fixtures' diff --git a/packages/neuron-ui/src/types/global/index.d.ts b/packages/neuron-ui/src/types/global/index.d.ts index 168a43dc32..8fa76d930e 100644 --- a/packages/neuron-ui/src/types/global/index.d.ts +++ b/packages/neuron-ui/src/types/global/index.d.ts @@ -13,7 +13,7 @@ declare module '*.json' { export default value } -declare module '*.svg' { +declare module '*.svg?react' { const value: string export const ReactComponent: React.FC> export default value diff --git a/packages/neuron-ui/src/widgets/AlertDialog/index.tsx b/packages/neuron-ui/src/widgets/AlertDialog/index.tsx index 9aa055765b..3edcd6ce0d 100644 --- a/packages/neuron-ui/src/widgets/AlertDialog/index.tsx +++ b/packages/neuron-ui/src/widgets/AlertDialog/index.tsx @@ -57,9 +57,16 @@ const AlertDialog = ({
{actions.map(v => v === 'cancel' ? ( -