mirror of
https://github.com/fantastic-admin/basic.git
synced 2026-10-07 13:28:38 +08:00
更新依赖
This commit is contained in:
@@ -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', {
|
||||
|
||||
+57
-56
@@ -1,6 +1,6 @@
|
||||
{
|
||||
"type": "module",
|
||||
"packageManager": "pnpm@10.26.2",
|
||||
"packageManager": "pnpm@10.30.3",
|
||||
"engines": {
|
||||
"node": "^20.19.0 || >=22.12.0"
|
||||
},
|
||||
@@ -25,28 +25,28 @@
|
||||
"@bytemd/vue-next": "^1.22.0",
|
||||
"@tinymce/tinymce-vue": "^6.3.0",
|
||||
"@vee-validate/zod": "^4.15.1",
|
||||
"@visactor/vchart": "^2.0.12",
|
||||
"@visactor/vchart": "^2.0.19",
|
||||
"@vue-office/docx": "^1.6.3",
|
||||
"@vue-office/excel": "^1.7.14",
|
||||
"@vueuse/components": "^14.1.0",
|
||||
"@vueuse/core": "^14.1.0",
|
||||
"@vueuse/integrations": "^14.1.0",
|
||||
"@vueuse/components": "^14.2.1",
|
||||
"@vueuse/core": "^14.2.1",
|
||||
"@vueuse/integrations": "^14.2.1",
|
||||
"animate.css": "^4.1.1",
|
||||
"axios": "^1.13.2",
|
||||
"axios": "^1.13.6",
|
||||
"bytemd": "^1.22.0",
|
||||
"class-variance-authority": "^0.7.1",
|
||||
"clsx": "^2.1.1",
|
||||
"cropperjs": "^1.6.2",
|
||||
"cropperjs": "1.6.2",
|
||||
"dayjs": "^1.11.19",
|
||||
"defu": "^6.1.4",
|
||||
"disable-devtool": "^0.3.9",
|
||||
"echarts": "^6.0.0",
|
||||
"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",
|
||||
@@ -54,84 +54,85 @@
|
||||
"pinia": "^3.0.4",
|
||||
"print-js": "^1.6.0",
|
||||
"qrcode": "^1.5.4",
|
||||
"qs": "^6.14.0",
|
||||
"reka-ui": "^2.7.0",
|
||||
"qs": "^6.15.0",
|
||||
"reka-ui": "^2.9.0",
|
||||
"scule": "^1.3.0",
|
||||
"splitpanes": "^4.0.4",
|
||||
"swiper": "^12.0.3",
|
||||
"tailwind-merge": "^3.4.0",
|
||||
"tinymce": "^7.9.1",
|
||||
"ua-parser-js": "^2.0.7",
|
||||
"swiper": "^12.1.2",
|
||||
"tailwind-merge": "^3.5.0",
|
||||
"tinymce": "7.9.2",
|
||||
"ua-parser-js": "^2.0.9",
|
||||
"vconsole": "^3.15.1",
|
||||
"vee-validate": "^4.15.1",
|
||||
"vue": "^3.5.26",
|
||||
"vue": "^3.5.29",
|
||||
"vue-currency-input": "^3.2.2",
|
||||
"vue-data-ui": "^3.9.19",
|
||||
"vue-data-ui": "^3.15.10",
|
||||
"vue-esign": "^1.1.4",
|
||||
"vue-hooks-plus": "^2.4.1",
|
||||
"vue-router": "^4.6.4",
|
||||
"vue-hooks-plus": "^2.4.3",
|
||||
"vue-router": "^5.0.3",
|
||||
"vue-sonner": "^2.0.9",
|
||||
"vxe-table": "^4.17.35",
|
||||
"xe-utils": "^3.8.2",
|
||||
"zod": "^4.2.1"
|
||||
"vxe-table": "^4.17.49",
|
||||
"xe-utils": "^4.0.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/qrcode": "^1.5.6",
|
||||
"@types/qs": "^6.14.0",
|
||||
"@types/qs": "^6.15.0",
|
||||
"@types/splitpanes": "^2.2.6",
|
||||
"@unocss/eslint-plugin": "^66.5.11",
|
||||
"@unocss/preset-legacy-compat": "^66.5.11",
|
||||
"@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",
|
||||
"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",
|
||||
|
||||
Generated
+2625
-2353
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" />
|
||||
|
||||
@@ -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" />
|
||||
|
||||
@@ -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,
|
||||
|
||||
@@ -94,7 +94,7 @@ export function useFaDrawer() {
|
||||
}
|
||||
|
||||
// 监听 visible 和 options 变化,自动重新渲染
|
||||
watch([visible, options], () => {
|
||||
watch([visible, options as object], () => {
|
||||
updateVNode()
|
||||
}, {
|
||||
immediate: true,
|
||||
|
||||
@@ -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[] = []
|
||||
|
||||
@@ -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)) {
|
||||
|
||||
@@ -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
|
||||
}
|
||||
|
||||
@@ -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>
|
||||
|
||||
@@ -41,7 +41,7 @@ function open(url: string) {
|
||||
<template #description>
|
||||
<p>
|
||||
安装命令:
|
||||
<Command text="pnpm add cropperjs" />
|
||||
<Command text="pnpm add cropperjs@1.6.2" />
|
||||
</p>
|
||||
</template>
|
||||
<FaButton variant="outline" @click="open('https://github.com/fengyuanchen/cropperjs')">
|
||||
|
||||
@@ -72,7 +72,7 @@ function open(url: string) {
|
||||
<div class="space-y-2">
|
||||
<p>
|
||||
安装命令:
|
||||
<Command text="pnpm add tinymce @tinymce/tinymce-vue" />
|
||||
<Command text="pnpm add tinymce@7.9.2 @tinymce/tinymce-vue" />
|
||||
</p>
|
||||
<p>
|
||||
安装成功后,在框架 /public 目录下创建 tinymce 文件夹,并将 /node_modules/tinymce 目录下的 skins 文件夹复制到 /public/tinymce 目录下;然后在到 TinyMCE 官网
|
||||
|
||||
+17
-14
@@ -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,
|
||||
@@ -157,12 +159,13 @@ export default function createVitePlugins(mode: string, isBuild = false) {
|
||||
if (/src\/main.ts$/.test(id)) {
|
||||
if (viteEnv.VITE_APP_DISABLE_DEVTOOL) {
|
||||
// ?ddtk=example
|
||||
code = code.concat(`
|
||||
import DisableDevtool from 'disable-devtool'
|
||||
DisableDevtool({
|
||||
md5: '1a79a4d60de6718e8e5b326e338ae533',
|
||||
})
|
||||
`)
|
||||
code = `
|
||||
${code}
|
||||
import DisableDevtool from 'disable-devtool'
|
||||
DisableDevtool({
|
||||
md5: '1a79a4d60de6718e8e5b326e338ae533',
|
||||
})
|
||||
`
|
||||
}
|
||||
return {
|
||||
code,
|
||||
|
||||
Reference in New Issue
Block a user