chore: 更新依赖

This commit is contained in:
Hooray
2026-03-07 12:00:37 +08:00
parent 658b51a747
commit 7fb2864072
18 changed files with 2644 additions and 2308 deletions
+19 -19
View File
@@ -1,7 +1,7 @@
[中文](./README.md) | **English**
<p align="center">
<img src="https://fantastic-admin.hurui.me/logo.svg" width="200" height="200" />
<img src="https://fantastic-admin.hurui.me/logo.svg" width="200" height="200" alt="Fantastic-admin" />
</p>
<h1 align="center">Fantastic-admin</h1>
@@ -15,8 +15,8 @@
<p>
<p align="center">
<a href="###"><img src="https://img.shields.io/github/license/fantastic-admin/basic?label=License&style=flat-square" /></a>
<a href="https://github.com/fantastic-admin/basic/releases" target="_blank"><img src="https://img.shields.io/github/v/release/fantastic-admin/basic?label=Version&style=flat-square" /></a>
<a href="###"><img src="https://img.shields.io/github/license/fantastic-admin/basic?label=License&style=flat-square" alt="" /></a>
<a href="https://github.com/fantastic-admin/basic/releases" target="_blank"><img src="https://img.shields.io/github/v/release/fantastic-admin/basic?label=Version&style=flat-square" alt="" /></a>
</p>
## Features
@@ -48,14 +48,14 @@
<table>
<tr>
<td><img src="https://fantastic-admin.hurui.me/preview1.png" /></td>
<td><img src="https://fantastic-admin.hurui.me/preview2.png" /></td>
<td><img src="https://fantastic-admin.hurui.me/preview3.png" /></td>
<td><img src="https://fantastic-admin.hurui.me/preview1.png" alt="" /></td>
<td><img src="https://fantastic-admin.hurui.me/preview2.png" alt="" /></td>
<td><img src="https://fantastic-admin.hurui.me/preview3.png" alt="" /></td>
</tr>
<tr>
<td><img src="https://fantastic-admin.hurui.me/preview4.png" /></td>
<td><img src="https://fantastic-admin.hurui.me/preview5.png" /></td>
<td><img src="https://fantastic-admin.hurui.me/preview6.png" /></td>
<td><img src="https://fantastic-admin.hurui.me/preview4.png" alt="" /></td>
<td><img src="https://fantastic-admin.hurui.me/preview5.png" alt="" /></td>
<td><img src="https://fantastic-admin.hurui.me/preview6.png" alt="" /></td>
</tr>
</table>
@@ -98,14 +98,14 @@ If you think the Fantastic-admin framework is good, or you are already using it,
</th>
</tr>
<tr>
<td><img src="https://one-step-admin.hurui.me/preview1.png" /></td>
<td><img src="https://one-step-admin.hurui.me/preview2.png" /></td>
<td><img src="https://one-step-admin.hurui.me/preview3.png" /></td>
<td><img src="https://one-step-admin.hurui.me/preview1.png" alt="" /></td>
<td><img src="https://one-step-admin.hurui.me/preview2.png" alt="" /></td>
<td><img src="https://one-step-admin.hurui.me/preview3.png" alt="" /></td>
</tr>
<tr>
<td><img src="https://one-step-admin.hurui.me/preview4.png" /></td>
<td><img src="https://one-step-admin.hurui.me/preview5.png" /></td>
<td><img src="https://one-step-admin.hurui.me/preview6.png" /></td>
<td><img src="https://one-step-admin.hurui.me/preview4.png" alt="" /></td>
<td><img src="https://one-step-admin.hurui.me/preview5.png" alt="" /></td>
<td><img src="https://one-step-admin.hurui.me/preview6.png" alt="" /></td>
</tr>
</table>
@@ -121,9 +121,9 @@ If you think the Fantastic-admin framework is good, or you are already using it,
</th>
</tr>
<tr>
<td><img src="https://fantastic-mobile.hurui.me/preview1.png" /></td>
<td><img src="https://fantastic-mobile.hurui.me/preview2.png" /></td>
<td><img src="https://fantastic-mobile.hurui.me/preview3.png" /></td>
<td><img src="https://fantastic-mobile.hurui.me/preview4.png" /></td>
<td><img src="https://fantastic-mobile.hurui.me/preview1.png" alt="" /></td>
<td><img src="https://fantastic-mobile.hurui.me/preview2.png" alt="" /></td>
<td><img src="https://fantastic-mobile.hurui.me/preview3.png" alt="" /></td>
<td><img src="https://fantastic-mobile.hurui.me/preview4.png" alt="" /></td>
</tr>
</table>
+19 -19
View File
@@ -1,7 +1,7 @@
**中文** | [English](./README.EN.md)
<p align="center">
<img src="https://fantastic-admin.hurui.me/logo.svg" width="200" height="200" />
<img src="https://fantastic-admin.hurui.me/logo.svg" width="200" height="200" alt="Fantastic-admin" />
</p>
<h1 align="center">Fantastic-admin</h1>
@@ -15,8 +15,8 @@
<p>
<p align="center">
<a href="###"><img src="https://img.shields.io/github/license/fantastic-admin/basic?label=%E5%BC%80%E6%BA%90%E5%8D%8F%E8%AE%AE&style=flat-square" /></a>
<a href="https://github.com/fantastic-admin/basic/releases" target="_blank"><img src="https://img.shields.io/github/v/release/fantastic-admin/basic?label=%E5%BD%93%E5%89%8D%E7%89%88%E6%9C%AC&style=flat-square" /></a>
<a href="###"><img src="https://img.shields.io/github/license/fantastic-admin/basic?label=%E5%BC%80%E6%BA%90%E5%8D%8F%E8%AE%AE&style=flat-square" alt="" /></a>
<a href="https://github.com/fantastic-admin/basic/releases" target="_blank"><img src="https://img.shields.io/github/v/release/fantastic-admin/basic?label=%E5%BD%93%E5%89%8D%E7%89%88%E6%9C%AC&style=flat-square" alt="" /></a>
</p>
## 特点
@@ -48,14 +48,14 @@
<table>
<tr>
<td><img src="https://fantastic-admin.hurui.me/preview1.png" /></td>
<td><img src="https://fantastic-admin.hurui.me/preview2.png" /></td>
<td><img src="https://fantastic-admin.hurui.me/preview3.png" /></td>
<td><img src="https://fantastic-admin.hurui.me/preview1.png" alt="" /></td>
<td><img src="https://fantastic-admin.hurui.me/preview2.png" alt="" /></td>
<td><img src="https://fantastic-admin.hurui.me/preview3.png" alt="" /></td>
</tr>
<tr>
<td><img src="https://fantastic-admin.hurui.me/preview4.png" /></td>
<td><img src="https://fantastic-admin.hurui.me/preview5.png" /></td>
<td><img src="https://fantastic-admin.hurui.me/preview6.png" /></td>
<td><img src="https://fantastic-admin.hurui.me/preview4.png" alt="" /></td>
<td><img src="https://fantastic-admin.hurui.me/preview5.png" alt="" /></td>
<td><img src="https://fantastic-admin.hurui.me/preview6.png" alt="" /></td>
</tr>
</table>
@@ -102,14 +102,14 @@
</th>
</tr>
<tr>
<td><img src="https://one-step-admin.hurui.me/preview1.png" /></td>
<td><img src="https://one-step-admin.hurui.me/preview2.png" /></td>
<td><img src="https://one-step-admin.hurui.me/preview3.png" /></td>
<td><img src="https://one-step-admin.hurui.me/preview1.png" alt="" /></td>
<td><img src="https://one-step-admin.hurui.me/preview2.png" alt="" /></td>
<td><img src="https://one-step-admin.hurui.me/preview3.png" alt="" /></td>
</tr>
<tr>
<td><img src="https://one-step-admin.hurui.me/preview4.png" /></td>
<td><img src="https://one-step-admin.hurui.me/preview5.png" /></td>
<td><img src="https://one-step-admin.hurui.me/preview6.png" /></td>
<td><img src="https://one-step-admin.hurui.me/preview4.png" alt="" /></td>
<td><img src="https://one-step-admin.hurui.me/preview5.png" alt="" /></td>
<td><img src="https://one-step-admin.hurui.me/preview6.png" alt="" /></td>
</tr>
</table>
@@ -125,9 +125,9 @@
</th>
</tr>
<tr>
<td><img src="https://fantastic-mobile.hurui.me/preview1.png" /></td>
<td><img src="https://fantastic-mobile.hurui.me/preview2.png" /></td>
<td><img src="https://fantastic-mobile.hurui.me/preview3.png" /></td>
<td><img src="https://fantastic-mobile.hurui.me/preview4.png" /></td>
<td><img src="https://fantastic-mobile.hurui.me/preview1.png" alt="" /></td>
<td><img src="https://fantastic-mobile.hurui.me/preview2.png" alt="" /></td>
<td><img src="https://fantastic-mobile.hurui.me/preview3.png" alt="" /></td>
<td><img src="https://fantastic-mobile.hurui.me/preview4.png" alt="" /></td>
</tr>
</table>
+1
View File
@@ -10,6 +10,7 @@ export default antfu(
},
{
rules: {
'e18e/prefer-static-regex': 'off',
'eslint-comments/no-unlimited-disable': 'off',
'curly': ['error', 'all'],
'ts/no-unused-expressions': ['error', {
+50 -49
View File
@@ -1,7 +1,7 @@
{
"type": "module",
"version": "5.9.0",
"packageManager": "pnpm@10.26.2",
"packageManager": "pnpm@10.30.3",
"engines": {
"node": "^20.19.0 || >=22.12.0"
},
@@ -26,95 +26,96 @@
},
"dependencies": {
"@vee-validate/zod": "^4.15.1",
"@vueuse/components": "^14.1.0",
"@vueuse/core": "^14.1.0",
"@vueuse/integrations": "^14.1.0",
"axios": "^1.13.2",
"@vueuse/components": "^14.2.1",
"@vueuse/core": "^14.2.1",
"@vueuse/integrations": "^14.2.1",
"axios": "^1.13.6",
"class-variance-authority": "^0.7.1",
"clsx": "^2.1.1",
"dayjs": "^1.11.19",
"defu": "^6.1.4",
"disable-devtool": "^0.3.9",
"element-plus": "^2.13.0",
"element-plus": "^2.13.4",
"eruda": "^3.4.3",
"es-toolkit": "^1.43.0",
"es-toolkit": "^1.45.1",
"filesize": "^11.0.13",
"hotkeys-js": "^4.0.0",
"lucide-vue-next": "^0.562.0",
"hotkeys-js": "^4.0.2",
"lucide-vue-next": "^0.577.0",
"mitt": "^3.0.1",
"nprogress": "^0.2.0",
"path-browserify": "^1.0.1",
"path-to-regexp": "^8.3.0",
"pinia": "^3.0.4",
"qs": "^6.14.0",
"reka-ui": "^2.7.0",
"qs": "^6.15.0",
"reka-ui": "^2.9.0",
"scule": "^1.3.0",
"tailwind-merge": "^3.4.0",
"ua-parser-js": "^2.0.7",
"tailwind-merge": "^3.5.0",
"ua-parser-js": "^2.0.9",
"vconsole": "^3.15.1",
"vee-validate": "^4.15.1",
"vue": "^3.5.26",
"vue-router": "^4.6.4",
"vue": "^3.5.29",
"vue-router": "^5.0.3",
"vue-sonner": "^2.0.9",
"zod": "^4.2.1"
"zod": "^4.3.6"
},
"devDependencies": {
"@antfu/eslint-config": "^6.7.3",
"@clack/prompts": "^0.11.0",
"@faker-js/faker": "^10.1.0",
"@iconify/json": "^2.2.417",
"@antfu/eslint-config": "^7.7.0",
"@clack/prompts": "^1.1.0",
"@faker-js/faker": "^10.3.0",
"@iconify/json": "^2.2.447",
"@iconify/vue": "^5.0.0",
"@stylistic/stylelint-config": "^3.0.1",
"@stylistic/stylelint-config": "^4.0.0",
"@types/nprogress": "^0.2.3",
"@types/path-browserify": "^1.0.3",
"@types/qs": "^6.14.0",
"@unocss/eslint-plugin": "^66.5.11",
"@unocss/preset-legacy-compat": "^66.5.11",
"@types/qs": "^6.15.0",
"@unocss/eslint-plugin": "^66.6.6",
"@unocss/preset-legacy-compat": "^66.6.6",
"@unocss/reset": "^66.6.6",
"@vitejs/plugin-legacy": "^7.2.1",
"@vitejs/plugin-vue": "^6.0.3",
"@vitejs/plugin-vue-jsx": "^5.1.3",
"@vue/tsconfig": "^0.8.1",
"autoprefixer": "^10.4.23",
"@vitejs/plugin-vue": "^6.0.4",
"@vitejs/plugin-vue-jsx": "^5.1.4",
"@vue/tsconfig": "^0.9.0",
"autoprefixer": "^10.4.27",
"boxen": "^8.0.1",
"bumpp": "^10.3.2",
"bumpp": "^10.4.1",
"cz-git": "^1.12.0",
"eslint": "^9.39.2",
"fs-extra": "^11.3.3",
"eslint": "^9.39.4",
"fs-extra": "^11.3.4",
"http-server": "^14.1.1",
"lint-staged": "^16.2.7",
"lint-staged": "^16.3.2",
"npm-run-all2": "^8.0.4",
"picocolors": "^1.1.1",
"plop": "^4.0.4",
"postcss": "^8.5.6",
"plop": "^4.0.5",
"postcss": "^8.5.8",
"postcss-nested": "^7.0.2",
"sass-embedded": "^1.97.1",
"sass-embedded": "^1.97.3",
"simple-git-hooks": "^2.13.1",
"stylelint": "^16.26.1",
"stylelint-config-recess-order": "^7.4.0",
"stylelint-config-standard-scss": "^16.0.0",
"stylelint": "^17.4.0",
"stylelint-config-recess-order": "^7.6.1",
"stylelint-config-standard-scss": "^17.0.0",
"stylelint-config-standard-vue": "^1.0.0",
"stylelint-scss": "^6.13.0",
"svgo": "^4.0.0",
"taze": "^19.9.2",
"stylelint-scss": "^7.0.0",
"svgo": "^4.0.1",
"taze": "^19.10.0",
"tsx": "^4.21.0",
"typescript": "^5.9.3",
"unocss": "^66.5.11",
"unocss": "^66.6.6",
"unocss-preset-animations": "^1.3.0",
"unplugin-auto-import": "^20.3.0",
"unplugin-auto-import": "^21.0.0",
"unplugin-turbo-console": "^2.3.0",
"unplugin-vue-components": "^30.0.0",
"vite": "^7.3.0",
"unplugin-vue-components": "^31.0.0",
"vite": "^7.3.1",
"vite-plugin-app-loading": "^0.4.0",
"vite-plugin-archiver": "^0.2.0",
"vite-plugin-banner": "^0.8.1",
"vite-plugin-compression2": "^2.4.0",
"vite-plugin-compression2": "^2.5.0",
"vite-plugin-env-parse": "^1.0.15",
"vite-plugin-fake-server": "^2.2.2",
"vite-plugin-pages": "^0.33.2",
"vite-plugin-pages": "^0.33.3",
"vite-plugin-svg-icons": "^2.0.1",
"vite-plugin-vue-devtools": "^8.0.5",
"vite-plugin-vue-devtools": "^8.0.7",
"vite-plugin-vue-meta-layouts": "^0.6.1",
"vue-tsc": "^3.2.1"
"vue-tsc": "^3.2.5"
},
"simple-git-hooks": {
"pre-commit": "pnpm lint-staged",
+2514 -2188
View File
File diff suppressed because it is too large Load Diff
@@ -55,7 +55,7 @@ const onSubmit = form.handleSubmit((values) => {
<FormField v-slot="{ componentField, errors }" name="password">
<FormItem class="relative pb-6 space-y-0">
<FormControl>
<FaInput type="password" placeholder="请输入原密码" class="w-full" :class="errors.length && 'border-destructive'" v-bind="componentField" />
<FaInput type="password" placeholder="请输入原密码" class="w-full" :class="errors.length > 0 && 'border-destructive'" v-bind="componentField" />
</FormControl>
<Transition enter-active-class="transition-opacity" enter-from-class="opacity-0" leave-active-class="transition-opacity" leave-to-class="opacity-0">
<FormMessage class="absolute bottom-1 text-xs" />
@@ -65,7 +65,7 @@ const onSubmit = form.handleSubmit((values) => {
<FormField v-slot="{ componentField, errors }" name="newPassword">
<FormItem class="relative pb-6 space-y-0">
<FormControl>
<FaInput type="password" placeholder="请输入新密码" class="w-full" :class="errors.length && 'border-destructive'" v-bind="componentField" />
<FaInput type="password" placeholder="请输入新密码" class="w-full" :class="errors.length > 0 && 'border-destructive'" v-bind="componentField" />
</FormControl>
<Transition enter-active-class="transition-opacity" enter-from-class="opacity-0" leave-active-class="transition-opacity" leave-to-class="opacity-0">
<FormMessage class="absolute bottom-1 text-xs" />
@@ -75,7 +75,7 @@ const onSubmit = form.handleSubmit((values) => {
<FormField v-slot="{ componentField, errors }" name="checkPassword">
<FormItem class="relative pb-6 space-y-0">
<FormControl>
<FaInput type="password" placeholder="请确认新密码" class="w-full" :class="errors.length && 'border-destructive'" v-bind="componentField" />
<FaInput type="password" placeholder="请确认新密码" class="w-full" :class="errors.length > 0 && 'border-destructive'" v-bind="componentField" />
</FormControl>
<Transition enter-active-class="transition-opacity" enter-from-class="opacity-0" leave-active-class="transition-opacity" leave-to-class="opacity-0">
<FormMessage class="absolute bottom-1 text-xs" />
+2 -2
View File
@@ -83,7 +83,7 @@ function testAccount(account: string) {
<FormField v-slot="{ componentField, errors }" name="account">
<FormItem class="relative pb-6 space-y-0">
<FormControl>
<FaInput type="text" placeholder="请输入用户名" class="w-full" :class="errors.length && 'border-destructive'" v-bind="componentField" />
<FaInput type="text" placeholder="请输入用户名" class="w-full" :class="errors.length > 0 && 'border-destructive'" v-bind="componentField" />
</FormControl>
<Transition enter-active-class="transition-opacity" enter-from-class="opacity-0" leave-active-class="transition-opacity" leave-to-class="opacity-0">
<FormMessage class="absolute bottom-1 text-xs" />
@@ -93,7 +93,7 @@ function testAccount(account: string) {
<FormField v-slot="{ componentField, errors }" name="password">
<FormItem class="relative pb-6 space-y-0">
<FormControl>
<FaInput type="password" placeholder="请输入密码" class="w-full" :class="errors.length && 'border-destructive'" v-bind="componentField" />
<FaInput type="password" placeholder="请输入密码" class="w-full" :class="errors.length > 0 && 'border-destructive'" v-bind="componentField" />
</FormControl>
<Transition enter-active-class="transition-opacity" enter-from-class="opacity-0" leave-active-class="transition-opacity" leave-to-class="opacity-0">
<FormMessage class="absolute bottom-1 text-xs" />
+3 -3
View File
@@ -56,7 +56,7 @@ const onSubmit = form.handleSubmit((values) => {
<FormField v-slot="{ componentField, errors }" name="account">
<FormItem class="relative pb-6 space-y-0">
<FormControl>
<FaInput type="text" placeholder="请输入用户名" class="w-full" :class="errors.length && 'border-destructive'" v-bind="componentField" />
<FaInput type="text" placeholder="请输入用户名" class="w-full" :class="errors.length > 0 && 'border-destructive'" v-bind="componentField" />
</FormControl>
<Transition enter-active-class="transition-opacity" enter-from-class="opacity-0" leave-active-class="transition-opacity" leave-to-class="opacity-0">
<FormMessage class="absolute bottom-1 text-xs" />
@@ -66,7 +66,7 @@ const onSubmit = form.handleSubmit((values) => {
<FormField v-slot="{ componentField, value, errors }" name="password">
<FormItem class="relative pb-6 space-y-0">
<FormControl>
<FaInput type="password" placeholder="请输入密码" class="w-full" :class="errors.length && 'border-destructive'" v-bind="componentField" />
<FaInput type="password" placeholder="请输入密码" class="w-full" :class="errors.length > 0 && 'border-destructive'" v-bind="componentField" />
</FormControl>
<FormDescription>
<FaPasswordStrength :password="value" class="mt-2" />
@@ -79,7 +79,7 @@ const onSubmit = form.handleSubmit((values) => {
<FormField v-slot="{ componentField, errors }" name="checkPassword">
<FormItem class="relative pb-6 space-y-0">
<FormControl>
<FaInput type="password" placeholder="请再次输入密码" class="w-full" :class="errors.length && 'border-destructive'" v-bind="componentField" />
<FaInput type="password" placeholder="请再次输入密码" class="w-full" :class="errors.length > 0 && 'border-destructive'" v-bind="componentField" />
</FormControl>
<Transition enter-active-class="transition-opacity" enter-from-class="opacity-0" leave-active-class="transition-opacity" leave-to-class="opacity-0">
<FormMessage class="absolute bottom-1 text-xs" />
@@ -63,7 +63,7 @@ function handleSendCaptcha() {
<FormField v-slot="{ componentField, errors }" name="account">
<FormItem class="relative pb-6 space-y-0">
<FormControl>
<FaInput type="text" placeholder="请输入用户名" class="w-full" :class="errors.length && 'border-destructive'" v-bind="componentField" />
<FaInput type="text" placeholder="请输入用户名" class="w-full" :class="errors.length > 0 && 'border-destructive'" v-bind="componentField" />
</FormControl>
<Transition enter-active-class="transition-opacity" enter-from-class="opacity-0" leave-active-class="transition-opacity" leave-to-class="opacity-0">
<FormMessage class="absolute bottom-1 text-xs" />
@@ -88,7 +88,7 @@ function handleSendCaptcha() {
<FormField v-slot="{ componentField, errors }" name="newPassword">
<FormItem class="relative pb-6 space-y-0">
<FormControl>
<FaInput type="password" placeholder="请输入新密码" class="w-full" :class="errors.length && 'border-destructive'" v-bind="componentField" />
<FaInput type="password" placeholder="请输入新密码" class="w-full" :class="errors.length > 0 && 'border-destructive'" v-bind="componentField" />
</FormControl>
<Transition enter-active-class="transition-opacity" enter-from-class="opacity-0" leave-active-class="transition-opacity" leave-to-class="opacity-0">
<FormMessage class="absolute bottom-1 text-xs" />
@@ -173,7 +173,12 @@ onMounted(() => {
}
// 切换到最后一个标签页
case 'alt+0':
router.push(tabbarStore.list[tabbarStore.list.length - 1].fullPath)
{
const last = tabbarStore.list.at(-1)
if (last) {
router.push(last.fullPath)
}
}
break
}
}
@@ -33,7 +33,7 @@ function toggleColorScheme(event: MouseEvent) {
]
document.documentElement.animate(
{
clipPath: settingsStore.currentColorScheme === 'light' ? clipPath : [...clipPath].reverse(),
clipPath: settingsStore.currentColorScheme === 'light' ? clipPath : clipPath.toReversed(),
},
{
duration: 500,
+1 -1
View File
@@ -94,7 +94,7 @@ export function useFaDrawer() {
}
// 监听 visible 和 options 变化,自动重新渲染
watch([visible, options], () => {
watch([visible, options as object], () => {
updateVNode()
}, {
immediate: true,
+1 -1
View File
@@ -80,7 +80,7 @@ function onSelectFile(files: FileList | File[] | null) {
if (!files) {
return
}
const selectedFiles = Array.from(files)
const selectedFiles = [...files]
// 数量限制
const remain = props.max > 0 ? props.max - fileList.value.length : selectedFiles.length
const filesToAdd: File[] = []
+1 -1
View File
@@ -54,7 +54,7 @@ function onSelectFile(e: Event) {
if (!input.files) {
return
}
const selectedFiles = Array.from(input.files)
const selectedFiles = [...input.files]
const remain = props.max === 0 ? selectedFiles.length : props.max - images.value.length
const filesToAdd: File[] = []
for (const file of selectedFiles.slice(0, remain)) {
+1 -1
View File
@@ -102,7 +102,7 @@ export function useFaModal() {
}
// 监听 visible 和 options 变化,自动重新渲染
watch([visible, options], () => {
watch([visible, options as object], () => {
updateVNode()
}, {
immediate: true,
@@ -80,11 +80,11 @@ const state = ref<State>({
function dispatch(action: Action) {
switch (action.type) {
case actionTypes.ADD_TOAST:
state.value.toasts = [action.toast, ...state.value.toasts].slice(0, TOAST_LIMIT)
state.value.toasts = [action.toast as any, ...state.value.toasts as any].slice(0, TOAST_LIMIT)
break
case actionTypes.UPDATE_TOAST:
state.value.toasts = state.value.toasts.map(t =>
state.value.toasts = state.value.toasts.map((t: any) =>
t.id === action.toast.id ? { ...t, ...action.toast } : t,
)
break
@@ -101,7 +101,7 @@ function dispatch(action: Action) {
})
}
state.value.toasts = state.value.toasts.map(t =>
state.value.toasts = state.value.toasts.map((t: any) =>
t.id === toastId || toastId === undefined
? {
...t,
@@ -116,7 +116,7 @@ function dispatch(action: Action) {
if (action.toastId === undefined) {
state.value.toasts = []
}
else { state.value.toasts = state.value.toasts.filter(t => t.id !== action.toastId) }
else { state.value.toasts = state.value.toasts.filter((t: any) => t.id !== action.toastId) }
break
}
+1 -1
View File
@@ -30,7 +30,7 @@ if (isSupprotColorMix) {
</script>
<template>
<ElConfigProvider :locale="zhCN" :button="{ autoInsertSpace: true }">
<ElConfigProvider :locale="zhCN as any" :button="{ autoInsertSpace: true }">
<slot />
</ElConfigProvider>
</template>
+15 -12
View File
@@ -131,16 +131,18 @@ export default function createVitePlugins(mode: string, isBuild = false) {
transform: (code, id) => {
if (/src\/main.ts$/.test(id)) {
if (viteEnv.VITE_APP_DEBUG_TOOL === 'eruda') {
code = code.concat(`
import eruda from 'eruda'
eruda.init()
`)
code = `
${code}
import eruda from 'eruda'
eruda.init()
`
}
else if (viteEnv.VITE_APP_DEBUG_TOOL === 'vconsole') {
code = code.concat(`
import VConsole from 'vconsole'
new VConsole()
`)
code = `
${code}
import VConsole from 'vconsole'
new VConsole()
`
}
return {
code,
@@ -156,10 +158,11 @@ export default function createVitePlugins(mode: string, isBuild = false) {
transform: (code, id) => {
if (/src\/main.ts$/.test(id)) {
if (viteEnv.VITE_APP_DISABLE_DEVTOOL) {
code = code.concat(`
import DisableDevtool from 'disable-devtool'
DisableDevtool()
`)
code = `
${code}
import DisableDevtool from 'disable-devtool'
DisableDevtool()
`
}
return {
code,