This commit is contained in:
kailong321200875 2025-01-09 10:20:32 +08:00
parent 9c91d8d68e
commit 0aca9430c2
14 changed files with 11957 additions and 70 deletions

1
.gitignore vendored
View File

@ -4,7 +4,6 @@ dist
dist-ssr
*.local
/dist*
*-lock.*
pnpm-debug
stats.html
.idea

View File

@ -34,6 +34,8 @@ export default tseslint.config({
'prettier/prettier': 'error',
'no-useless-escape': 0,
'no-undef': 0,
'@typescript-eslint/no-unused-expressions': 0,
'@typescript-eslint/no-unsafe-function-type': 0,
'vue/no-setup-props-destructure': 0,
'vue/script-setup-uses-vars': 1,
'vue/no-reserved-component-names': 0,
@ -52,7 +54,6 @@ export default tseslint.config({
'@typescript-eslint/no-unused-vars': 0,
'no-unused-vars': 0,
'space-before-function-paren': 0,
'vue/attributes-order': 0,
'vue/one-component-per-file': 0,
'vue/html-closing-bracket-newline': 0,

View File

@ -29,89 +29,89 @@
},
"dependencies": {
"@iconify/iconify": "^3.1.1",
"@iconify/vue": "^4.1.2",
"@vueuse/core": "^10.11.0",
"@iconify/vue": "^4.3.0",
"@vueuse/core": "^12.3.0",
"@wangeditor/editor": "^5.1.23",
"@wangeditor/editor-for-vue": "^5.1.10",
"@zxcvbn-ts/core": "^3.0.4",
"animate.css": "^4.1.1",
"axios": "^1.7.2",
"axios": "^1.7.9",
"cropperjs": "^1.6.2",
"dayjs": "^1.11.11",
"dayjs": "^1.11.13",
"driver.js": "^1.3.1",
"echarts": "^5.5.1",
"echarts": "^5.6.0",
"echarts-wordcloud": "^2.1.0",
"element-plus": "2.7.7",
"element-plus": "2.9.2",
"lodash-es": "^4.17.21",
"mitt": "^3.0.1",
"monaco-editor": "^0.50.0",
"monaco-editor": "^0.52.2",
"nprogress": "^0.2.0",
"pinia": "^2.1.7",
"pinia-plugin-persistedstate": "^3.2.1",
"qrcode": "^1.5.3",
"qs": "^6.12.3",
"url": "^0.11.3",
"vue": "3.4.32",
"vue-draggable-plus": "^0.5.2",
"vue-i18n": "9.13.1",
"pinia": "^2.3.0",
"pinia-plugin-persistedstate": "^4.2.0",
"qrcode": "^1.5.4",
"qs": "^6.13.1",
"url": "^0.11.4",
"vue": "3.5.13",
"vue-draggable-plus": "^0.6.0",
"vue-i18n": "11.0.1",
"vue-json-pretty": "^2.4.0",
"vue-router": "^4.4.0",
"vue-router": "^4.5.0",
"vue-types": "^5.1.3",
"xgplayer": "^3.0.18"
"xgplayer": "^3.0.20"
},
"devDependencies": {
"@commitlint/cli": "^19.3.0",
"@commitlint/config-conventional": "^19.2.2",
"@iconify/json": "^2.2.229",
"@intlify/unplugin-vue-i18n": "^4.0.0",
"@commitlint/cli": "^19.6.1",
"@commitlint/config-conventional": "^19.6.0",
"@iconify/json": "^2.2.293",
"@intlify/unplugin-vue-i18n": "^6.0.3",
"@types/fs-extra": "^11.0.4",
"@types/inquirer": "^9.0.7",
"@types/lodash-es": "^4.17.12",
"@types/mockjs": "^1.0.10",
"@types/node": "^20.14.11",
"@types/node": "^22.10.5",
"@types/nprogress": "^0.2.3",
"@types/qrcode": "^1.5.5",
"@types/qs": "^6.9.15",
"@types/qs": "^6.9.17",
"@types/sortablejs": "^1.15.8",
"@typescript-eslint/eslint-plugin": "^7.16.1",
"@typescript-eslint/parser": "^7.16.1",
"@unocss/transformer-variant-group": "^0.61.5",
"@vitejs/plugin-legacy": "^5.4.1",
"@vitejs/plugin-vue": "^5.0.5",
"@vitejs/plugin-vue-jsx": "^4.0.0",
"autoprefixer": "^10.4.19",
"chalk": "^5.3.0",
"consola": "^3.2.3",
"eslint": "^9.7.0",
"@typescript-eslint/eslint-plugin": "^8.19.1",
"@typescript-eslint/parser": "^8.19.1",
"@unocss/transformer-variant-group": "^0.65.4",
"@vitejs/plugin-legacy": "^6.0.0",
"@vitejs/plugin-vue": "^5.2.1",
"@vitejs/plugin-vue-jsx": "^4.1.1",
"autoprefixer": "^10.4.20",
"chalk": "^5.4.1",
"consola": "^3.3.3",
"eslint": "^9.17.0",
"eslint-config-prettier": "^9.1.0",
"eslint-define-config": "^2.1.0",
"eslint-plugin-prettier": "^5.2.1",
"eslint-plugin-vue": "^9.27.0",
"esno": "^4.7.0",
"eslint-plugin-vue": "^9.32.0",
"esno": "^4.8.0",
"fs-extra": "^11.2.0",
"husky": "^9.1.0",
"inquirer": "^10.0.3",
"less": "^4.2.0",
"lint-staged": "^15.2.7",
"husky": "^9.1.7",
"inquirer": "^12.3.0",
"less": "^4.2.1",
"lint-staged": "^15.3.0",
"mockjs": "^1.1.0",
"plop": "^4.0.1",
"postcss": "^8.4.39",
"postcss": "^8.4.49",
"postcss-html": "^1.7.0",
"postcss-less": "^6.0.0",
"prettier": "^3.3.3",
"prettier": "^3.4.2",
"rimraf": "^6.0.1",
"rollup": "^4.18.1",
"rollup-plugin-visualizer": "^5.12.0",
"stylelint": "^16.7.0",
"rollup": "^4.30.1",
"rollup-plugin-visualizer": "^5.14.0",
"stylelint": "^16.12.0",
"stylelint-config-html": "^1.1.0",
"stylelint-config-recommended": "^14.0.1",
"stylelint-config-standard": "^36.0.1",
"stylelint-order": "^6.0.4",
"terser": "^5.31.3",
"typescript": "5.5.3",
"typescript-eslint": "^7.16.1",
"unocss": "^0.61.5",
"vite": "5.3.4",
"terser": "^5.37.0",
"typescript": "5.7.3",
"typescript-eslint": "^8.19.1",
"unocss": "^0.65.4",
"vite": "6.0.7",
"vite-plugin-ejs": "^1.7.0",
"vite-plugin-eslint": "^1.8.1",
"vite-plugin-mock": "2.9.6",
@ -120,9 +120,9 @@
"vite-plugin-style-import": "2.0.0",
"vite-plugin-svg-icons": "^2.0.1",
"vite-plugin-url-copy": "^1.1.4",
"vue-tsc": "^2.0.26"
"vue-tsc": "^2.2.0"
},
"packageManager": "pnpm@8.1.0",
"packageManager": "pnpm@9.15.3",
"engines": {
"node": ">=18.0.0",
"pnpm": ">=8.1.0"

11876
pnpm-lock.yaml Normal file

File diff suppressed because it is too large Load Diff

View File

@ -54,11 +54,11 @@ const props = defineProps({
default: false
},
loadingIcon: {
type: [String, Object] as PropType<String | Component>,
type: [String, Object] as PropType<string | Component>,
default: undefined
},
icon: {
type: [String, Object] as PropType<String | Component>,
type: [String, Object] as PropType<string | Component>,
default: undefined
},
autofocus: {
@ -82,7 +82,7 @@ const props = defineProps({
default: false
},
tag: {
type: [String, Object] as PropType<String | Component>,
type: [String, Object] as PropType<string | Component>,
default: 'button'
}
})

View File

@ -12,7 +12,7 @@ const props = withDefaults(
language?: string
themeSelector?: boolean
theme?: string
editorOption?: Object
editorOption?: object
modelValue: string
}>(),
{

View File

@ -138,7 +138,7 @@ export interface SelectComponentProps extends Omit<Partial<ISelectProps>, 'optio
children?: string
}
on?: {
change?: (value: string | number | boolean | Object) => void
change?: (value: string | number | boolean | object) => void
visibleChange?: (visible: boolean) => void
removeTag?: (tag: any) => void
clear?: () => void
@ -186,7 +186,7 @@ export interface SelectV2ComponentProps {
placement?: AutocompleteProps['placement']
collapseTagsTooltip?: boolean
on?: {
change?: (value: string | number | boolean | Object) => void
change?: (value: string | number | boolean | object) => void
visibleChange?: (visible: boolean) => void
removeTag?: (tag: any) => void
clear?: () => void
@ -556,7 +556,7 @@ export interface TreeSelectComponentProps
allowDrag?: (...args: any[]) => boolean
allowDrop?: (...args: any[]) => boolean
on?: {
change?: (value: string | number | boolean | Object) => void
change?: (value: string | number | boolean | object) => void
visibleChange?: (visible: boolean) => void
removeTag?: (tag: any) => void
clear?: () => void

View File

@ -32,7 +32,7 @@ const setSystemTheme = (color: string) => {
setCssVar('--el-color-primary', color)
appStore.setTheme({ elColorPrimary: color })
const leftMenuBgColor = useCssVar('--left-menu-bg-color', document.documentElement)
setMenuTheme(trim(unref(leftMenuBgColor)))
setMenuTheme(trim(unref(leftMenuBgColor) as string))
}
//

View File

@ -21,7 +21,7 @@ export const NO_REDIRECT_WHITE_LIST = ['/login']
/**
*
*/
export const NO_RESET_WHITE_LIST = ['Redirect', 'Login', 'NoFind', 'Root']
export const NO_RESET_WHITE_LIST = ['Redirect', 'RedirectWrap', 'Login', 'NoFind', 'Root']
/**
*

View File

@ -13,7 +13,7 @@ export const useNProgress = () => {
await nextTick()
const bar = document.getElementById('nprogress')?.getElementsByClassName('bar')[0] as ElRef
if (bar) {
bar.style.background = unref(primaryColor.value)
bar.style.background = unref(primaryColor.value) as string
}
}

View File

@ -20,7 +20,7 @@ export const constantRouterMap: AppRouteRecordRaw[] = [
{
path: '/redirect',
component: Layout,
name: 'Redirect',
name: 'RedirectWrap',
children: [
{
path: '/redirect/:path(.*)',

View File

@ -287,11 +287,11 @@ export const useAppStore = defineStore('app', {
// 左侧菜单选中背景颜色
leftMenuBgActiveColor: isDarkColor
? 'var(--el-color-primary)'
: hexToRGB(unref(primaryColor), 0.1),
: hexToRGB(unref(primaryColor) as string, 0.1),
// 左侧菜单收起选中背景颜色
leftMenuCollapseBgActiveColor: isDarkColor
? 'var(--el-color-primary)'
: hexToRGB(unref(primaryColor), 0.1),
: hexToRGB(unref(primaryColor) as string, 0.1),
// 左侧菜单字体颜色
leftMenuTextColor: isDarkColor ? '#bfcbd9' : '#333',
// 左侧菜单选中字体颜色

View File

@ -77,9 +77,20 @@ export const usePermissionStore = defineStore('permission', {
this.menuTabRouters = routers
}
},
persist: {
paths: ['routers', 'addRouters', 'menuTabRouters']
persist: [
{
pick: ['routers'],
storage: localStorage
},
{
pick: ['addRouters'],
storage: localStorage
},
{
pick: ['menuTabRouters'],
storage: localStorage
}
]
})
export const usePermissionStoreWithOut = () => {