diff --git a/README.md b/README.md index df2d131e..9baa5a0e 100644 --- a/README.md +++ b/README.md @@ -1,4 +1,4 @@ -
+
SoybeanAdmin Logo @@ -23,3 +23,89 @@ Soybean Admin 是一个基于 Vue3、Vite、Naive UI、TypeScript 的中后台 ## 预览 - [soybean-admin](https://soybean.pro/) - 站点 + + +## 目录规范 + +``` +soybean-admin +├── README.md //项目说明文档 +├── build //vite构建相关配置和插件 +│ ├── env //.env环境文件内容加载插件 +│ ├── index.ts +│ └── plugins //构建插件 +│ ├── html.ts //html插件(注入变量,压缩代码等) +│ ├── iconify.ts //iconify图标插件 +│ └── index.ts +├── commitlint.config.js //commitlint提交规范插件配置 +├── index.html +├── package.json +├── pnpm-lock.yaml //npm包管理器pnpm依赖锁定文件 +├── public //公共目录 +│ └── favicon.ico +├── src +│ ├── App.vue //vue文件入口 +│ ├── AppProvider.vue //配置naive UI的vue文件(国际化,loadingBar、message等组件) +│ ├── assets //静态资源 +│ │ └── img +│ ├── components //全局组件 +│ │ ├── business //业务相关组件 +│ │ ├── common //公共组件 +│ │ ├── custom //自定义组件 +│ │ └── index.ts +│ ├── enum //TS枚举 +│ │ ├── animate.ts //动画枚举 +│ │ ├── business.ts //业务相关枚举 +│ │ ├── common.ts //通用枚举 +│ │ ├── index.ts +│ │ ├── route.ts //路由相关枚举 +│ │ └── theme.ts //系统主题配置相关枚举 +│ ├── hooks //组合式的钩子函数hooks +│ │ ├── business //业务相关hooks +│ │ ├── common //通用hooks +│ │ └── index.ts +│ ├── interface //TS类型接口 +│ │ ├── business.ts //业务相关类型接口 +│ │ ├── common.ts //通用类型接口 +│ │ ├── index.ts +│ │ └── theme.ts //系统主题配置相关类型接口 +│ ├── layouts //布局组件 +│ │ ├── BasicLayout //基本布局组件(包含全局头部、侧边栏、底部等) +│ │ ├── BlankLayout //空白布局组件 +│ │ └── index.ts +│ ├── main.ts //项目入口ts文件 +│ ├── plugins //插件 +│ │ ├── dark-mode.ts //windicss暗黑模式插件 +│ │ ├── index.ts +│ │ └── smooth-scroll.ts //滚动平滑插件 +│ ├── router //vue路由 +│ │ ├── index.ts +│ │ ├── permission.ts //路由守卫相关函数 +│ │ └── routes.ts //声明的路由 +│ ├── service //网络请求 +│ │ ├── api //请求接口 +│ │ ├── index.ts +│ │ ├── middleware //请求结果的处理中间件 +│ │ ├── request //封装的请求函数 +│ │ └── utils //请求相关工具函数 +│ ├── settings //项目初始配置 +│ │ ├── index.ts +│ │ └── theme.ts //项目主题初始配置 +│ ├── store //状态管理 +│ │ ├── index.ts +│ │ └── modules //状态管理划分的模块 +│ ├── styles //样式 +│ ├── types //TS类型声明文件(*.d.ts) +│ ├── utils //全局工具函数 +│ │ ├── auth +│ │ ├── common +│ │ ├── index.ts +│ │ └── storage +│ └── views //页面 +│ ├── dashboard +│ └── system +├── tree.md +├── tsconfig.json //TS配置 +├── vite.config.ts //vite配置 +└── windi.config.ts //windicss框架配置 +``` diff --git a/package.json b/package.json index ee35f4c9..5a44212e 100644 --- a/package.json +++ b/package.json @@ -61,7 +61,7 @@ "postinstall-postinstall": "^2.1.0", "prettier": "^2.4.0", "sass": "^1.39.2", - "typescript": "^4.4.2", + "typescript": "^4.4.3", "unplugin-icons": "^0.7.6", "unplugin-vue-components": "^0.15.0", "vite": "^2.5.6", diff --git a/pnpm-lock.yaml b/pnpm-lock.yaml index e5cb5b7a..69526173 100644 --- a/pnpm-lock.yaml +++ b/pnpm-lock.yaml @@ -40,7 +40,7 @@ specifiers: qs: ^6.10.1 sass: ^1.39.2 smoothscroll-polyfill: ^0.4.4 - typescript: ^4.4.2 + typescript: ^4.4.3 unplugin-icons: ^0.7.6 unplugin-vue-components: ^0.15.0 vite: ^2.5.6 @@ -58,7 +58,7 @@ dependencies: dayjs: registry.nlark.com/dayjs/1.10.7 form-data: 4.0.0 naive-ui: registry.nlark.com/naive-ui/2.18.1_vue@3.2.10 - pinia: registry.nlark.com/pinia/2.0.0-rc.4_typescript@4.4.2+vue@3.2.10 + pinia: registry.nlark.com/pinia/2.0.0-rc.4_typescript@4.4.3+vue@3.2.10 qs: 6.10.1 smoothscroll-polyfill: registry.nlark.com/smoothscroll-polyfill/0.4.4 vue: registry.nlark.com/vue/3.2.10 @@ -73,8 +73,8 @@ devDependencies: '@types/nprogress': registry.nlark.com/@types/nprogress/0.2.0 '@types/qs': registry.nlark.com/@types/qs/6.9.7 '@types/smoothscroll-polyfill': registry.nlark.com/@types/smoothscroll-polyfill/0.3.1 - '@typescript-eslint/eslint-plugin': registry.nlark.com/@typescript-eslint/eslint-plugin/4.31.0_a690ff3776b01e92cf0b93501bb5ae6a - '@typescript-eslint/parser': registry.nlark.com/@typescript-eslint/parser/4.31.0_eslint@7.32.0+typescript@4.4.2 + '@typescript-eslint/eslint-plugin': registry.nlark.com/@typescript-eslint/eslint-plugin/4.31.0_d9c1bc16c4e2aea4e8e177a5961dd3bf + '@typescript-eslint/parser': registry.nlark.com/@typescript-eslint/parser/4.31.0_eslint@7.32.0+typescript@4.4.3 '@vitejs/plugin-vue': registry.nlark.com/@vitejs/plugin-vue/1.6.2_@vue+compiler-sfc@3.2.11 '@vue/compiler-sfc': registry.nlark.com/@vue/compiler-sfc/3.2.11 '@vue/eslint-config-prettier': 6.0.0_b4d73ff40db55d7af7de6f3602f2b630 @@ -95,13 +95,13 @@ devDependencies: postinstall-postinstall: registry.nlark.com/postinstall-postinstall/2.1.0 prettier: registry.nlark.com/prettier/2.4.0 sass: registry.nlark.com/sass/1.39.2 - typescript: registry.nlark.com/typescript/4.4.2 + typescript: registry.nlark.com/typescript/4.4.3 unplugin-icons: registry.nlark.com/unplugin-icons/0.7.6_ab88f3ed6cd34af3ce86467cf77018e8 unplugin-vue-components: registry.nlark.com/unplugin-vue-components/0.15.0_vite@2.5.6+vue@3.2.10 vite: registry.nlark.com/vite/2.5.6 vite-plugin-html: registry.nlark.com/vite-plugin-html/2.1.0_vite@2.5.6 - vite-plugin-windicss: registry.nlark.com/vite-plugin-windicss/1.4.2_typescript@4.4.2+vite@2.5.6 - vue-tsc: registry.nlark.com/vue-tsc/0.3.0_typescript@4.4.2 + vite-plugin-windicss: registry.nlark.com/vite-plugin-windicss/1.4.2_typescript@4.4.3+vite@2.5.6 + vue-tsc: registry.nlark.com/vue-tsc/0.3.0_typescript@4.4.3 windicss: registry.nlark.com/windicss/3.1.7 packages: @@ -136,8 +136,8 @@ packages: eslint: ^5.0.0 || ^6.0.0 || ^7.0.0 eslint-plugin-vue: ^5.2.3 || ^6.0.0 || ^7.0.0 dependencies: - '@typescript-eslint/eslint-plugin': registry.nlark.com/@typescript-eslint/eslint-plugin/4.31.0_a690ff3776b01e92cf0b93501bb5ae6a - '@typescript-eslint/parser': registry.nlark.com/@typescript-eslint/parser/4.31.0_eslint@7.32.0+typescript@4.4.2 + '@typescript-eslint/eslint-plugin': registry.nlark.com/@typescript-eslint/eslint-plugin/4.31.0_d9c1bc16c4e2aea4e8e177a5961dd3bf + '@typescript-eslint/parser': registry.nlark.com/@typescript-eslint/parser/4.31.0_eslint@7.32.0+typescript@4.4.3 eslint: registry.nlark.com/eslint/7.32.0 eslint-plugin-vue: registry.nlark.com/eslint-plugin-vue/7.17.0_eslint@7.32.0 vue-eslint-parser: registry.nlark.com/vue-eslint-parser/7.10.0_eslint@7.32.0 @@ -1898,14 +1898,14 @@ packages: resolution: {integrity: sha1-eE/T1nlyK8EDsbS4AwvN212yppk=, tarball: ts-interface-checker/download/ts-interface-checker-0.1.13.tgz?cache=0&sync_timestamp=1618382089263&other_urls=https%3A%2F%2Fregistry.npm.taobao.org%2Fts-interface-checker%2Fdownload%2Fts-interface-checker-0.1.13.tgz} dev: true - /tsutils/3.21.0_typescript@4.4.2: + /tsutils/3.21.0_typescript@4.4.3: resolution: {integrity: sha1-tIcX05TOpsHglpg+7Vjp1hcVtiM=, tarball: tsutils/download/tsutils-3.21.0.tgz} engines: {node: '>= 6'} peerDependencies: typescript: '>=2.8.0 || >= 3.2.0-dev || >= 3.3.0-dev || >= 3.4.0-dev || >= 3.5.0-dev || >= 3.6.0-dev || >= 3.6.0-beta || >= 3.7.0-dev || >= 3.7.0-beta' dependencies: tslib: registry.nlark.com/tslib/1.14.1 - typescript: registry.nlark.com/typescript/4.4.2 + typescript: registry.nlark.com/typescript/4.4.3 dev: true /unbox-primitive/1.0.1: @@ -2549,7 +2549,7 @@ packages: '@types/yargs-parser': registry.nlark.com/@types/yargs-parser/20.2.1 dev: false - registry.nlark.com/@typescript-eslint/eslint-plugin/4.31.0_a690ff3776b01e92cf0b93501bb5ae6a: + registry.nlark.com/@typescript-eslint/eslint-plugin/4.31.0_d9c1bc16c4e2aea4e8e177a5961dd3bf: resolution: {integrity: sha1-nD+m9EuteJqWJCatlRtUaVvTr2s=, registry: https://registry.npm.taobao.org/, tarball: https://registry.nlark.com/@typescript-eslint/eslint-plugin/download/@typescript-eslint/eslint-plugin-4.31.0.tgz} id: registry.nlark.com/@typescript-eslint/eslint-plugin/4.31.0 name: '@typescript-eslint/eslint-plugin' @@ -2563,21 +2563,21 @@ packages: typescript: optional: true dependencies: - '@typescript-eslint/experimental-utils': registry.nlark.com/@typescript-eslint/experimental-utils/4.31.0_eslint@7.32.0+typescript@4.4.2 - '@typescript-eslint/parser': registry.nlark.com/@typescript-eslint/parser/4.31.0_eslint@7.32.0+typescript@4.4.2 + '@typescript-eslint/experimental-utils': registry.nlark.com/@typescript-eslint/experimental-utils/4.31.0_eslint@7.32.0+typescript@4.4.3 + '@typescript-eslint/parser': registry.nlark.com/@typescript-eslint/parser/4.31.0_eslint@7.32.0+typescript@4.4.3 '@typescript-eslint/scope-manager': registry.nlark.com/@typescript-eslint/scope-manager/4.31.0 debug: registry.nlark.com/debug/4.3.2 eslint: registry.nlark.com/eslint/7.32.0 functional-red-black-tree: 1.0.1 regexpp: registry.nlark.com/regexpp/3.2.0 semver: registry.nlark.com/semver/7.3.5 - tsutils: 3.21.0_typescript@4.4.2 - typescript: registry.nlark.com/typescript/4.4.2 + tsutils: 3.21.0_typescript@4.4.3 + typescript: registry.nlark.com/typescript/4.4.3 transitivePeerDependencies: - supports-color dev: true - registry.nlark.com/@typescript-eslint/experimental-utils/4.31.0_eslint@7.32.0+typescript@4.4.2: + registry.nlark.com/@typescript-eslint/experimental-utils/4.31.0_eslint@7.32.0+typescript@4.4.3: resolution: {integrity: sha1-DvHV2GwzT5g6APMQ5Dwc5MFOBU0=, registry: https://registry.npm.taobao.org/, tarball: https://registry.nlark.com/@typescript-eslint/experimental-utils/download/@typescript-eslint/experimental-utils-4.31.0.tgz} id: registry.nlark.com/@typescript-eslint/experimental-utils/4.31.0 name: '@typescript-eslint/experimental-utils' @@ -2589,7 +2589,7 @@ packages: '@types/json-schema': registry.nlark.com/@types/json-schema/7.0.9 '@typescript-eslint/scope-manager': registry.nlark.com/@typescript-eslint/scope-manager/4.31.0 '@typescript-eslint/types': registry.nlark.com/@typescript-eslint/types/4.31.0 - '@typescript-eslint/typescript-estree': registry.nlark.com/@typescript-eslint/typescript-estree/4.31.0_typescript@4.4.2 + '@typescript-eslint/typescript-estree': registry.nlark.com/@typescript-eslint/typescript-estree/4.31.0_typescript@4.4.3 eslint: registry.nlark.com/eslint/7.32.0 eslint-scope: registry.nlark.com/eslint-scope/5.1.1 eslint-utils: registry.nlark.com/eslint-utils/3.0.0_eslint@7.32.0 @@ -2598,7 +2598,7 @@ packages: - typescript dev: true - registry.nlark.com/@typescript-eslint/parser/4.31.0_eslint@7.32.0+typescript@4.4.2: + registry.nlark.com/@typescript-eslint/parser/4.31.0_eslint@7.32.0+typescript@4.4.3: resolution: {integrity: sha1-h7fNFrJLkXDHdZXYsTY/gEcSHgU=, registry: https://registry.npm.taobao.org/, tarball: https://registry.nlark.com/@typescript-eslint/parser/download/@typescript-eslint/parser-4.31.0.tgz} id: registry.nlark.com/@typescript-eslint/parser/4.31.0 name: '@typescript-eslint/parser' @@ -2613,10 +2613,10 @@ packages: dependencies: '@typescript-eslint/scope-manager': registry.nlark.com/@typescript-eslint/scope-manager/4.31.0 '@typescript-eslint/types': registry.nlark.com/@typescript-eslint/types/4.31.0 - '@typescript-eslint/typescript-estree': registry.nlark.com/@typescript-eslint/typescript-estree/4.31.0_typescript@4.4.2 + '@typescript-eslint/typescript-estree': registry.nlark.com/@typescript-eslint/typescript-estree/4.31.0_typescript@4.4.3 debug: registry.nlark.com/debug/4.3.2 eslint: registry.nlark.com/eslint/7.32.0 - typescript: registry.nlark.com/typescript/4.4.2 + typescript: registry.nlark.com/typescript/4.4.3 transitivePeerDependencies: - supports-color dev: true @@ -2638,7 +2638,7 @@ packages: engines: {node: ^8.10.0 || ^10.13.0 || >=11.10.1} dev: true - registry.nlark.com/@typescript-eslint/typescript-estree/4.31.0_typescript@4.4.2: + registry.nlark.com/@typescript-eslint/typescript-estree/4.31.0_typescript@4.4.3: resolution: {integrity: sha1-TaTLYnSn7zsh1T+ecUfMdvJ4oHg=, registry: https://registry.npm.taobao.org/, tarball: https://registry.nlark.com/@typescript-eslint/typescript-estree/download/@typescript-eslint/typescript-estree-4.31.0.tgz} id: registry.nlark.com/@typescript-eslint/typescript-estree/4.31.0 name: '@typescript-eslint/typescript-estree' @@ -2656,8 +2656,8 @@ packages: globby: registry.nlark.com/globby/11.0.4 is-glob: 4.0.1 semver: registry.nlark.com/semver/7.3.5 - tsutils: 3.21.0_typescript@4.4.2 - typescript: registry.nlark.com/typescript/4.4.2 + tsutils: 3.21.0_typescript@4.4.3 + typescript: registry.nlark.com/typescript/4.4.3 transitivePeerDependencies: - supports-color dev: true @@ -2981,7 +2981,7 @@ packages: vue-demi: registry.nlark.com/vue-demi/0.11.4_vue@3.2.10 dev: false - registry.nlark.com/@windicss/config/1.4.2_typescript@4.4.2: + registry.nlark.com/@windicss/config/1.4.2_typescript@4.4.3: resolution: {integrity: sha1-PYbV4uJMwgraUDAZCo3GU9syTzU=, registry: https://registry.npm.taobao.org/, tarball: https://registry.nlark.com/@windicss/config/download/@windicss/config-1.4.2.tgz} id: registry.nlark.com/@windicss/config/1.4.2 name: '@windicss/config' @@ -2989,7 +2989,7 @@ packages: dependencies: debug: registry.nlark.com/debug/4.3.2 jiti: registry.nlark.com/jiti/1.11.0 - tsup: registry.nlark.com/tsup/4.14.0_typescript@4.4.2 + tsup: registry.nlark.com/tsup/4.14.0_typescript@4.4.3 windicss: registry.nlark.com/windicss/3.1.7 transitivePeerDependencies: - supports-color @@ -2997,14 +2997,14 @@ packages: - typescript dev: true - registry.nlark.com/@windicss/plugin-utils/1.4.2_typescript@4.4.2: + registry.nlark.com/@windicss/plugin-utils/1.4.2_typescript@4.4.3: resolution: {integrity: sha1-ElutjP5YeUFQbmaC9g+RD1Z/brM=, registry: https://registry.npm.taobao.org/, tarball: https://registry.nlark.com/@windicss/plugin-utils/download/@windicss/plugin-utils-1.4.2.tgz} id: registry.nlark.com/@windicss/plugin-utils/1.4.2 name: '@windicss/plugin-utils' version: 1.4.2 dependencies: '@antfu/utils': registry.nlark.com/@antfu/utils/0.2.4 - '@windicss/config': registry.nlark.com/@windicss/config/1.4.2_typescript@4.4.2 + '@windicss/config': registry.nlark.com/@windicss/config/1.4.2_typescript@4.4.3 debug: registry.nlark.com/debug/4.3.2 fast-glob: registry.nlark.com/fast-glob/3.2.7 magic-string: registry.nlark.com/magic-string/0.25.7 @@ -4864,7 +4864,7 @@ packages: engines: {node: '>=8.6'} dev: true - registry.nlark.com/pinia/2.0.0-rc.4_typescript@4.4.2+vue@3.2.10: + registry.nlark.com/pinia/2.0.0-rc.4_typescript@4.4.3+vue@3.2.10: resolution: {integrity: sha1-Q/yomuuNOXypkA8AHCElxNZ2XdY=, registry: https://registry.npm.taobao.org/, tarball: https://registry.nlark.com/pinia/download/pinia-2.0.0-rc.4.tgz} id: registry.nlark.com/pinia/2.0.0-rc.4 name: pinia @@ -4880,7 +4880,7 @@ packages: optional: true dependencies: '@vue/devtools-api': registry.nlark.com/@vue/devtools-api/6.0.0-beta.15 - typescript: registry.nlark.com/typescript/4.4.2 + typescript: registry.nlark.com/typescript/4.4.3 vue: registry.nlark.com/vue/3.2.10 vue-demi: registry.nlark.com/vue-demi/0.11.4_vue@3.2.10 dev: false @@ -5449,7 +5449,7 @@ packages: version: 2.3.1 dev: true - registry.nlark.com/tsup/4.14.0_typescript@4.4.2: + registry.nlark.com/tsup/4.14.0_typescript@4.4.3: resolution: {integrity: sha1-Pi9gLYRGBBtI/LVXkEpwnA/OyYE=, registry: https://registry.npm.taobao.org/, tarball: https://registry.nlark.com/tsup/download/tsup-4.14.0.tgz} id: registry.nlark.com/tsup/4.14.0 name: tsup @@ -5474,7 +5474,7 @@ packages: rollup: registry.nlark.com/rollup/2.56.2 sucrase: registry.nlark.com/sucrase/3.20.1 tree-kill: registry.nlark.com/tree-kill/1.2.2 - typescript: registry.nlark.com/typescript/4.4.2 + typescript: registry.nlark.com/typescript/4.4.3 transitivePeerDependencies: - supports-color - ts-node @@ -5524,10 +5524,10 @@ packages: engines: {node: '>=8'} dev: true - registry.nlark.com/typescript/4.4.2: - resolution: {integrity: sha1-bWGGQNQw41aaHftE99fmAM7T7oY=, registry: https://registry.npm.taobao.org/, tarball: https://registry.nlark.com/typescript/download/typescript-4.4.2.tgz} + registry.nlark.com/typescript/4.4.3: + resolution: {integrity: sha1-vcVAfKorEJ79T4L+EwZW+XeikyQ=, registry: https://registry.npm.taobao.org/, tarball: https://registry.nlark.com/typescript/download/typescript-4.4.3.tgz?cache=0&sync_timestamp=1631308569166&other_urls=https%3A%2F%2Fregistry.nlark.com%2Ftypescript%2Fdownload%2Ftypescript-4.4.3.tgz} name: typescript - version: 4.4.2 + version: 4.4.3 engines: {node: '>=4.2.0'} hasBin: true dev: true @@ -5654,7 +5654,7 @@ packages: vite: registry.nlark.com/vite/2.5.6 dev: true - registry.nlark.com/vite-plugin-windicss/1.4.2_typescript@4.4.2+vite@2.5.6: + registry.nlark.com/vite-plugin-windicss/1.4.2_typescript@4.4.3+vite@2.5.6: resolution: {integrity: sha1-B1z160lGk9FtQLSr6Yh7YfR8Du8=, registry: https://registry.npm.taobao.org/, tarball: https://registry.nlark.com/vite-plugin-windicss/download/vite-plugin-windicss-1.4.2.tgz} id: registry.nlark.com/vite-plugin-windicss/1.4.2 name: vite-plugin-windicss @@ -5662,7 +5662,7 @@ packages: peerDependencies: vite: ^2.0.1 dependencies: - '@windicss/plugin-utils': registry.nlark.com/@windicss/plugin-utils/1.4.2_typescript@4.4.2 + '@windicss/plugin-utils': registry.nlark.com/@windicss/plugin-utils/1.4.2_typescript@4.4.3 chalk: registry.nlark.com/chalk/4.1.2 debug: registry.nlark.com/debug/4.3.2 vite: registry.nlark.com/vite/2.5.6 @@ -5858,9 +5858,6 @@ packages: peerDependencies: '@vue/composition-api': ^1.0.0-rc.1 vue: ^3.0.0-0 || ^2.6.0 - peerDependenciesMeta: - '@vue/composition-api': - optional: true dependencies: vue: registry.nlark.com/vue/3.2.10 dev: false @@ -5898,7 +5895,7 @@ packages: vue: registry.nlark.com/vue/3.2.10 dev: false - registry.nlark.com/vue-tsc/0.3.0_typescript@4.4.2: + registry.nlark.com/vue-tsc/0.3.0_typescript@4.4.3: resolution: {integrity: sha1-Ozhyv08dLkQJtXrb2CYDLiU9tAY=, registry: https://registry.npm.taobao.org/, tarball: https://registry.nlark.com/vue-tsc/download/vue-tsc-0.3.0.tgz} id: registry.nlark.com/vue-tsc/0.3.0 name: vue-tsc @@ -5907,7 +5904,7 @@ packages: peerDependencies: typescript: '*' dependencies: - typescript: registry.nlark.com/typescript/4.4.2 + typescript: registry.nlark.com/typescript/4.4.3 vscode-vue-languageservice: registry.nlark.com/vscode-vue-languageservice/0.27.3 dev: true