diff --git a/.eslintrc.cjs b/.eslintrc.cjs new file mode 100644 index 0000000..67dcf39 --- /dev/null +++ b/.eslintrc.cjs @@ -0,0 +1,14 @@ +require('@rushstack/eslint-patch/modern-module-resolution') + +module.exports = { + root: true, + extends: [ + "plugin:vue/vue3-essential", + "eslint:recommended", + "@vue/eslint-config-typescript/recommended", + "@vue/eslint-config-prettier", + ], + env: { + "vue/setup-compiler-macros": true, + }, +} diff --git a/.eslintrc.js b/.eslintrc.js deleted file mode 100644 index 1e5009f..0000000 --- a/.eslintrc.js +++ /dev/null @@ -1,29 +0,0 @@ -module.exports = { - extends: [ - 'plugin:vue/vue3-recommended', - 'plugin:@typescript-eslint/recommended', - 'plugin:prettier/recommended', - ], - parser: 'vue-eslint-parser', - parserOptions: { - parser: '@typescript-eslint/parser', - ecmaVersion: 2021, - sourceType: 'module', - ecmaFeatures: { - jsx: true, - }, - }, - rules: { - 'prettier/prettier': [ - 2, - { - endOfLine: 'auto', - }, - ], - '@typescript-eslint/no-explicit-any': ['off'], - '@typescript-eslint/ban-ts-ignore': 'off', - '@typescript-eslint/ban-ts-comment': 'off', - 'vue/valid-template-root': 'off', - 'vue/require-default-prop': 'off', - }, -} diff --git a/babel.config.js b/babel.config.js deleted file mode 100644 index 738f082..0000000 --- a/babel.config.js +++ /dev/null @@ -1,4 +0,0 @@ -module.exports = { - presets: ['@vue/cli-plugin-babel/preset'], - plugins: ['@vue/babel-plugin-jsx'], -} diff --git a/src/vite-env.d.ts b/env.d.ts similarity index 100% rename from src/vite-env.d.ts rename to env.d.ts diff --git a/jest.config.js b/jest.config.js deleted file mode 100644 index 90c1e4b..0000000 --- a/jest.config.js +++ /dev/null @@ -1,29 +0,0 @@ -module.exports = { - preset: '@vue/cli-plugin-unit-jest/presets/typescript-and-babel', - testEnvironment: 'jsdom', - moduleFileExtensions: [ - 'js', - 'ts', - 'jsx', - 'tsx', - 'json', - // tell Jest to handle *.vue files - 'vue', - ], - transform: { - // process *.vue files with vue-jest - '^.+\\.vue$': '@vue/vue3-jest', - '^.+\\.tsx?$': 'ts-jest', - }, - transformIgnorePatterns: ['/node_modules/'], - // support the same @ -> src alias mapping in source code - moduleNameMapper: { - '^@/(.*)$': '/src/$1', - }, - testMatch: ['**/tests/unit/**/*.spec.[jt]s?(x)', '**/__tests__/*.[jt]s?(x)'], - globals: { - 'ts-jest': { - babelConfig: true, - }, - }, -} diff --git a/package.json b/package.json index 767a199..fc140ed 100644 --- a/package.json +++ b/package.json @@ -5,52 +5,47 @@ "dev": "vite", "build": "vue-tsc --noEmit && vite build", "serve": "vite preview", - "test": "jest" + "typecheck": "vue-tsc --noEmit -p tsconfig.vitest.json --composite false", + "test": "vitest --environment jsdom" }, "dependencies": { - "axios": "^0.24.0", + "axios": "^0.26.1", "crypto-js": "^4.1.1", - "dayjs": "^1.10.7", + "dayjs": "^1.10.8", "mockjs": "^1.1.0", "pinia": "^2.0.11", "vue": "^3.2.31", - "vue-router": "^4.0.12" + "vue-router": "^4.0.13" }, "devDependencies": { - "@types/crypto-js": "^4.0.2", - "@types/jest": "^27.0.3", - "@types/mockjs": "^1.0.4", + "@rushstack/eslint-patch": "^1.1.0", + "@types/crypto-js": "^4.1.1", + "@types/jsdom": "^16.2.14", + "@types/mockjs": "^1.0.6", "@types/node": "^16.11.9", - "@typescript-eslint/eslint-plugin": "^5.4.0", - "@typescript-eslint/parser": "^5.4.0", "@vicons/antd": "^0.11.0", "@vicons/ionicons5": "^0.11.0", "@vitejs/plugin-vue": "^1.10.1", - "@vue/babel-plugin-jsx": "^1.1.0", - "@vue/cli-plugin-babel": "^4.5.15", - "@vue/cli-plugin-unit-jest": "^4.5.15", + "@vitejs/plugin-vue-jsx": "^1.3.7", + "@vue/eslint-config-prettier": "^7.0.0", + "@vue/eslint-config-typescript": "^10.0.0", "@vue/test-utils": "^2.0.0-rc.17", - "@vue/vue3-jest": "^27.0.0-alpha.3", - "babel-jest": "^27.3.1", - "eslint": "^8.3.0", - "eslint-config-prettier": "^8.3.0", - "eslint-plugin-prettier": "^4.0.0", - "eslint-plugin-vue": "^8.1.1", - "jest": "^27.5.1", + "@vue/tsconfig": "^0.1.3", + "eslint": "^8.5.0", + "eslint-plugin-vue": "^8.2.0", + "jsdom": "^19.0.0", "less": "^4.1.2", - "less-loader": "^10.2.0", - "naive-ui": "^2.25.2", - "prettier": "^2.4.1", - "ts-jest": "^27.0.7", + "naive-ui": "^2.26.3", + "prettier": "^2.5.1", "typescript": "^4.5.5", "vite": "^2.8.4", - "vite-plugin-eslint": "^1.3.0", - "vite-plugin-html": "^3.0.6", + "vite-plugin-html": "^3.1.0", "vite-plugin-mock": "^2.9.6", "vite-plugin-svg-icons": "^2.0.1", "vite-plugin-vue-setup-extend": "^0.4.0", - "vite-plugin-windicss": "^1.7.1", + "vite-plugin-windicss": "^1.8.3", + "vitest": "^0.6.0", "vue-tsc": "^0.31.4", - "windicss": "^3.4.4" + "windicss": "^3.5.1" } } diff --git a/src/components/business/index.ts b/src/components/business/.gitkeep similarity index 100% rename from src/components/business/index.ts rename to src/components/business/.gitkeep diff --git a/src/layouts/components/content.vue b/src/layouts/components/content.vue index 6d529f6..7e3253b 100644 --- a/src/layouts/components/content.vue +++ b/src/layouts/components/content.vue @@ -8,7 +8,7 @@ -