From 576a36cc6114e71f5df877a480f204d1011e96d4 Mon Sep 17 00:00:00 2001 From: xiaoxian521 <1923740402@qq.com> Date: Mon, 8 Jan 2024 00:55:01 +0800 Subject: [PATCH 1/9] docs: update `README` --- README.en-US.md | 5 ++++- README.md | 5 ++++- 2 files changed, 8 insertions(+), 2 deletions(-) diff --git a/README.en-US.md b/README.en-US.md index d94601fde..791cdd26e 100644 --- a/README.en-US.md +++ b/README.en-US.md @@ -43,6 +43,7 @@ The simplified version is based on the shelf extracted from [vue-pure-admin](htt

PureAdmin +
PureAdmin

@@ -50,12 +51,14 @@ The simplified version is based on the shelf extracted from [vue-pure-admin](htt

PureAdmin +
+ PureAdmin

`Mobile`

- PureAdmin + PureAdmin

### Use Gitpod diff --git a/README.md b/README.md index 87f51f21b..a23525165 100644 --- a/README.md +++ b/README.md @@ -43,6 +43,7 @@

PureAdmin +
PureAdmin

@@ -50,12 +51,14 @@

PureAdmin +
+ PureAdmin

移动端

- PureAdmin + PureAdmin

### 使用 `Gitpod` From a114dbb4652d6316853d75ff127180fc07d07d2b Mon Sep 17 00:00:00 2001 From: xiaoxian521 <1923740402@qq.com> Date: Mon, 8 Jan 2024 09:16:38 +0800 Subject: [PATCH 2/9] =?UTF-8?q?chore:=20=E6=9B=B4=E6=96=B0`svgo`=E5=91=BD?= =?UTF-8?q?=E4=BB=A4=E4=B8=BA`svgo=20-f=20.=20-r`=EF=BC=88=E5=8E=8B?= =?UTF-8?q?=E7=BC=A9=E5=BD=93=E5=89=8D=E7=9B=AE=E5=BD=95=E4=B8=8B=E7=9A=84?= =?UTF-8?q?=E6=89=80=E6=9C=89`SVG`=E6=96=87=E4=BB=B6=EF=BC=89?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- package.json | 2 +- public/logo.svg | 2 +- src/assets/login/avatar.svg | 2 +- src/assets/login/illustration.svg | 2 +- src/assets/status/403.svg | 2 +- src/assets/status/404.svg | 2 +- src/assets/status/500.svg | 2 +- src/assets/svg/back.svg | 2 +- src/assets/svg/back_top.svg | 2 +- src/assets/svg/calendar.svg | 2 +- src/assets/svg/dark.svg | 2 +- src/assets/svg/day.svg | 2 +- src/assets/svg/enter_outlined.svg | 2 +- src/assets/svg/exit_screen.svg | 2 +- src/assets/svg/full_screen.svg | 2 +- src/assets/svg/hot.svg | 2 +- src/assets/svg/keyboard_esc.svg | 2 +- src/assets/svg/laptop.svg | 2 +- src/assets/svg/service.svg | 2 +- src/assets/svg/shop.svg | 2 +- src/assets/svg/user_avatar.svg | 2 +- .../ReCropper/src/svg/arrow-down.svg | 2 +- .../ReCropper/src/svg/arrow-left.svg | 2 +- .../ReCropper/src/svg/arrow-right.svg | 2 +- src/components/ReCropper/src/svg/arrow-up.svg | 2 +- src/components/ReCropper/src/svg/change.svg | 2 +- src/components/ReCropper/src/svg/download.svg | 2 +- src/components/ReCropper/src/svg/reload.svg | 2 +- .../ReCropper/src/svg/rotate-left.svg | 2 +- .../ReCropper/src/svg/rotate-right.svg | 2 +- .../ReCropper/src/svg/search-minus.svg | 2 +- .../ReCropper/src/svg/search-plus.svg | 2 +- src/components/ReCropper/src/svg/upload.svg | 2 +- .../src/assets/iconfont/iconfont.svg | 48 +------------------ .../RePureTableBar/src/svg/collapse.svg | 2 +- .../RePureTableBar/src/svg/drag.svg | 2 +- .../RePureTableBar/src/svg/expand.svg | 2 +- .../RePureTableBar/src/svg/settings.svg | 2 +- src/views/able/wavesurfer/svg/forward.svg | 2 +- src/views/able/wavesurfer/svg/pause.svg | 2 +- src/views/able/wavesurfer/svg/play.svg | 2 +- src/views/able/wavesurfer/svg/rewind.svg | 2 +- src/views/system/user/svg/expand.svg | 2 +- src/views/system/user/svg/unexpand.svg | 2 +- 44 files changed, 44 insertions(+), 90 deletions(-) diff --git a/package.json b/package.json index 1f018b136..da539170e 100644 --- a/package.json +++ b/package.json @@ -12,7 +12,7 @@ "preview": "vite preview", "preview:build": "pnpm build && vite preview", "typecheck": "tsc --noEmit && vue-tsc --noEmit --skipLibCheck", - "svgo": "svgo -f src/assets/svg", + "svgo": "svgo -f . -r", "cloc": "NODE_OPTIONS=--max-old-space-size=4096 cloc . --exclude-dir=node_modules --exclude-lang=YAML", "clean:cache": "rimraf .eslintcache && rimraf pnpm-lock.yaml && rimraf node_modules && pnpm store prune && pnpm install", "lint:eslint": "eslint --cache --max-warnings 0 \"{src,mock,build}/**/*.{vue,js,ts,tsx}\" --fix", diff --git a/public/logo.svg b/public/logo.svg index bc26056b1..a44a847b9 100644 --- a/public/logo.svg +++ b/public/logo.svg @@ -1 +1 @@ - \ No newline at end of file + \ No newline at end of file diff --git a/src/assets/login/avatar.svg b/src/assets/login/avatar.svg index bc26056b1..a44a847b9 100644 --- a/src/assets/login/avatar.svg +++ b/src/assets/login/avatar.svg @@ -1 +1 @@ - \ No newline at end of file + \ No newline at end of file diff --git a/src/assets/login/illustration.svg b/src/assets/login/illustration.svg index 02e0e25cf..288d22a8c 100644 --- a/src/assets/login/illustration.svg +++ b/src/assets/login/illustration.svg @@ -1 +1 @@ - \ No newline at end of file + \ No newline at end of file diff --git a/src/assets/status/403.svg b/src/assets/status/403.svg index 38b57a3f5..ba3ce2933 100644 --- a/src/assets/status/403.svg +++ b/src/assets/status/403.svg @@ -1 +1 @@ - \ No newline at end of file + \ No newline at end of file diff --git a/src/assets/status/404.svg b/src/assets/status/404.svg index 2189ec4bb..aacb74020 100644 --- a/src/assets/status/404.svg +++ b/src/assets/status/404.svg @@ -1 +1 @@ - \ No newline at end of file + \ No newline at end of file diff --git a/src/assets/status/500.svg b/src/assets/status/500.svg index 255d36c43..ea23a378b 100644 --- a/src/assets/status/500.svg +++ b/src/assets/status/500.svg @@ -1 +1 @@ - \ No newline at end of file + \ No newline at end of file diff --git a/src/assets/svg/back.svg b/src/assets/svg/back.svg index 39d216b2b..e1cda5808 100644 --- a/src/assets/svg/back.svg +++ b/src/assets/svg/back.svg @@ -1 +1 @@ - \ No newline at end of file + \ No newline at end of file diff --git a/src/assets/svg/back_top.svg b/src/assets/svg/back_top.svg index 19a46398d..f8e6aa027 100644 --- a/src/assets/svg/back_top.svg +++ b/src/assets/svg/back_top.svg @@ -1 +1 @@ - \ No newline at end of file + \ No newline at end of file diff --git a/src/assets/svg/calendar.svg b/src/assets/svg/calendar.svg index 9f9f2953e..d61313c52 100644 --- a/src/assets/svg/calendar.svg +++ b/src/assets/svg/calendar.svg @@ -1 +1 @@ - \ No newline at end of file + \ No newline at end of file diff --git a/src/assets/svg/dark.svg b/src/assets/svg/dark.svg index c1bdeea6b..b5c4d2d5d 100644 --- a/src/assets/svg/dark.svg +++ b/src/assets/svg/dark.svg @@ -1 +1 @@ - \ No newline at end of file + \ No newline at end of file diff --git a/src/assets/svg/day.svg b/src/assets/svg/day.svg index 3fe1e8647..b7600345a 100644 --- a/src/assets/svg/day.svg +++ b/src/assets/svg/day.svg @@ -1 +1 @@ - \ No newline at end of file + \ No newline at end of file diff --git a/src/assets/svg/enter_outlined.svg b/src/assets/svg/enter_outlined.svg index 069bd2ee3..45e0bafe5 100644 --- a/src/assets/svg/enter_outlined.svg +++ b/src/assets/svg/enter_outlined.svg @@ -1 +1 @@ - \ No newline at end of file + \ No newline at end of file diff --git a/src/assets/svg/exit_screen.svg b/src/assets/svg/exit_screen.svg index bb014659c..007c0b634 100644 --- a/src/assets/svg/exit_screen.svg +++ b/src/assets/svg/exit_screen.svg @@ -1 +1 @@ - \ No newline at end of file + \ No newline at end of file diff --git a/src/assets/svg/full_screen.svg b/src/assets/svg/full_screen.svg index d5bb5b818..fff93a5d8 100644 --- a/src/assets/svg/full_screen.svg +++ b/src/assets/svg/full_screen.svg @@ -1 +1 @@ - \ No newline at end of file + \ No newline at end of file diff --git a/src/assets/svg/hot.svg b/src/assets/svg/hot.svg index 555a67773..d285f6fcf 100644 --- a/src/assets/svg/hot.svg +++ b/src/assets/svg/hot.svg @@ -1 +1 @@ - \ No newline at end of file + \ No newline at end of file diff --git a/src/assets/svg/keyboard_esc.svg b/src/assets/svg/keyboard_esc.svg index 6898751ba..bd6716548 100644 --- a/src/assets/svg/keyboard_esc.svg +++ b/src/assets/svg/keyboard_esc.svg @@ -1 +1 @@ - \ No newline at end of file + \ No newline at end of file diff --git a/src/assets/svg/laptop.svg b/src/assets/svg/laptop.svg index 0e08ca66a..7d2a736d7 100644 --- a/src/assets/svg/laptop.svg +++ b/src/assets/svg/laptop.svg @@ -1 +1 @@ - \ No newline at end of file + \ No newline at end of file diff --git a/src/assets/svg/service.svg b/src/assets/svg/service.svg index 4430b9ba6..11d8803ca 100644 --- a/src/assets/svg/service.svg +++ b/src/assets/svg/service.svg @@ -1 +1 @@ - \ No newline at end of file + \ No newline at end of file diff --git a/src/assets/svg/shop.svg b/src/assets/svg/shop.svg index b9c9beace..941b3362a 100644 --- a/src/assets/svg/shop.svg +++ b/src/assets/svg/shop.svg @@ -1 +1 @@ - \ No newline at end of file + \ No newline at end of file diff --git a/src/assets/svg/user_avatar.svg b/src/assets/svg/user_avatar.svg index b82600f1f..3606d0134 100644 --- a/src/assets/svg/user_avatar.svg +++ b/src/assets/svg/user_avatar.svg @@ -1 +1 @@ - \ No newline at end of file + \ No newline at end of file diff --git a/src/components/ReCropper/src/svg/arrow-down.svg b/src/components/ReCropper/src/svg/arrow-down.svg index 283954738..36558e891 100644 --- a/src/components/ReCropper/src/svg/arrow-down.svg +++ b/src/components/ReCropper/src/svg/arrow-down.svg @@ -1 +1 @@ - \ No newline at end of file + \ No newline at end of file diff --git a/src/components/ReCropper/src/svg/arrow-left.svg b/src/components/ReCropper/src/svg/arrow-left.svg index 66742bb73..5f1c01e0d 100644 --- a/src/components/ReCropper/src/svg/arrow-left.svg +++ b/src/components/ReCropper/src/svg/arrow-left.svg @@ -1 +1 @@ - \ No newline at end of file + \ No newline at end of file diff --git a/src/components/ReCropper/src/svg/arrow-right.svg b/src/components/ReCropper/src/svg/arrow-right.svg index 45fbb4dc5..1a0fe00e4 100644 --- a/src/components/ReCropper/src/svg/arrow-right.svg +++ b/src/components/ReCropper/src/svg/arrow-right.svg @@ -1 +1 @@ - \ No newline at end of file + \ No newline at end of file diff --git a/src/components/ReCropper/src/svg/arrow-up.svg b/src/components/ReCropper/src/svg/arrow-up.svg index 7761be47c..942f92612 100644 --- a/src/components/ReCropper/src/svg/arrow-up.svg +++ b/src/components/ReCropper/src/svg/arrow-up.svg @@ -1 +1 @@ - \ No newline at end of file + \ No newline at end of file diff --git a/src/components/ReCropper/src/svg/change.svg b/src/components/ReCropper/src/svg/change.svg index 2edc20901..ec3f02b3f 100644 --- a/src/components/ReCropper/src/svg/change.svg +++ b/src/components/ReCropper/src/svg/change.svg @@ -1 +1 @@ - \ No newline at end of file + \ No newline at end of file diff --git a/src/components/ReCropper/src/svg/download.svg b/src/components/ReCropper/src/svg/download.svg index f011250c8..854b2c990 100644 --- a/src/components/ReCropper/src/svg/download.svg +++ b/src/components/ReCropper/src/svg/download.svg @@ -1 +1 @@ - \ No newline at end of file + \ No newline at end of file diff --git a/src/components/ReCropper/src/svg/reload.svg b/src/components/ReCropper/src/svg/reload.svg index e8fab2cca..9f9615a72 100644 --- a/src/components/ReCropper/src/svg/reload.svg +++ b/src/components/ReCropper/src/svg/reload.svg @@ -1 +1 @@ - \ No newline at end of file + \ No newline at end of file diff --git a/src/components/ReCropper/src/svg/rotate-left.svg b/src/components/ReCropper/src/svg/rotate-left.svg index f7029864f..bea3fc01b 100644 --- a/src/components/ReCropper/src/svg/rotate-left.svg +++ b/src/components/ReCropper/src/svg/rotate-left.svg @@ -1 +1 @@ - \ No newline at end of file + \ No newline at end of file diff --git a/src/components/ReCropper/src/svg/rotate-right.svg b/src/components/ReCropper/src/svg/rotate-right.svg index ffe6bc276..67ecdc600 100644 --- a/src/components/ReCropper/src/svg/rotate-right.svg +++ b/src/components/ReCropper/src/svg/rotate-right.svg @@ -1 +1 @@ - \ No newline at end of file + \ No newline at end of file diff --git a/src/components/ReCropper/src/svg/search-minus.svg b/src/components/ReCropper/src/svg/search-minus.svg index 185924c28..73727063d 100644 --- a/src/components/ReCropper/src/svg/search-minus.svg +++ b/src/components/ReCropper/src/svg/search-minus.svg @@ -1 +1 @@ - \ No newline at end of file + \ No newline at end of file diff --git a/src/components/ReCropper/src/svg/search-plus.svg b/src/components/ReCropper/src/svg/search-plus.svg index 97447d279..5fa8ae9e0 100644 --- a/src/components/ReCropper/src/svg/search-plus.svg +++ b/src/components/ReCropper/src/svg/search-plus.svg @@ -1 +1 @@ - \ No newline at end of file + \ No newline at end of file diff --git a/src/components/ReCropper/src/svg/upload.svg b/src/components/ReCropper/src/svg/upload.svg index f5c9f11ce..a0080199b 100644 --- a/src/components/ReCropper/src/svg/upload.svg +++ b/src/components/ReCropper/src/svg/upload.svg @@ -1 +1 @@ - \ No newline at end of file + \ No newline at end of file diff --git a/src/components/ReFlowChart/src/assets/iconfont/iconfont.svg b/src/components/ReFlowChart/src/assets/iconfont/iconfont.svg index 657d7c73f..052ed338d 100644 --- a/src/components/ReFlowChart/src/assets/iconfont/iconfont.svg +++ b/src/components/ReFlowChart/src/assets/iconfont/iconfont.svg @@ -1,47 +1 @@ - - - - - -Created by iconfont - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - + \ No newline at end of file diff --git a/src/components/RePureTableBar/src/svg/collapse.svg b/src/components/RePureTableBar/src/svg/collapse.svg index d84f87078..0823ae636 100644 --- a/src/components/RePureTableBar/src/svg/collapse.svg +++ b/src/components/RePureTableBar/src/svg/collapse.svg @@ -1 +1 @@ - \ No newline at end of file + \ No newline at end of file diff --git a/src/components/RePureTableBar/src/svg/drag.svg b/src/components/RePureTableBar/src/svg/drag.svg index 8c373700f..8ac32a7bc 100644 --- a/src/components/RePureTableBar/src/svg/drag.svg +++ b/src/components/RePureTableBar/src/svg/drag.svg @@ -1 +1 @@ - \ No newline at end of file + \ No newline at end of file diff --git a/src/components/RePureTableBar/src/svg/expand.svg b/src/components/RePureTableBar/src/svg/expand.svg index dbbd4ed7e..bb41c350f 100644 --- a/src/components/RePureTableBar/src/svg/expand.svg +++ b/src/components/RePureTableBar/src/svg/expand.svg @@ -1 +1 @@ - \ No newline at end of file + \ No newline at end of file diff --git a/src/components/RePureTableBar/src/svg/settings.svg b/src/components/RePureTableBar/src/svg/settings.svg index be23a0bb2..4ecd07797 100644 --- a/src/components/RePureTableBar/src/svg/settings.svg +++ b/src/components/RePureTableBar/src/svg/settings.svg @@ -1 +1 @@ - \ No newline at end of file + \ No newline at end of file diff --git a/src/views/able/wavesurfer/svg/forward.svg b/src/views/able/wavesurfer/svg/forward.svg index bb12ad194..95a55da2e 100644 --- a/src/views/able/wavesurfer/svg/forward.svg +++ b/src/views/able/wavesurfer/svg/forward.svg @@ -1 +1 @@ - \ No newline at end of file + \ No newline at end of file diff --git a/src/views/able/wavesurfer/svg/pause.svg b/src/views/able/wavesurfer/svg/pause.svg index cdbdd24bb..7ba0fdcae 100644 --- a/src/views/able/wavesurfer/svg/pause.svg +++ b/src/views/able/wavesurfer/svg/pause.svg @@ -1 +1 @@ - \ No newline at end of file + \ No newline at end of file diff --git a/src/views/able/wavesurfer/svg/play.svg b/src/views/able/wavesurfer/svg/play.svg index 840b5ecf8..93eb60c7b 100644 --- a/src/views/able/wavesurfer/svg/play.svg +++ b/src/views/able/wavesurfer/svg/play.svg @@ -1 +1 @@ - \ No newline at end of file + \ No newline at end of file diff --git a/src/views/able/wavesurfer/svg/rewind.svg b/src/views/able/wavesurfer/svg/rewind.svg index 71eb8d759..a36465e3a 100644 --- a/src/views/able/wavesurfer/svg/rewind.svg +++ b/src/views/able/wavesurfer/svg/rewind.svg @@ -1 +1 @@ - \ No newline at end of file + \ No newline at end of file diff --git a/src/views/system/user/svg/expand.svg b/src/views/system/user/svg/expand.svg index dbbd4ed7e..bb41c350f 100644 --- a/src/views/system/user/svg/expand.svg +++ b/src/views/system/user/svg/expand.svg @@ -1 +1 @@ - \ No newline at end of file + \ No newline at end of file diff --git a/src/views/system/user/svg/unexpand.svg b/src/views/system/user/svg/unexpand.svg index 58d436587..04b3e9d7d 100644 --- a/src/views/system/user/svg/unexpand.svg +++ b/src/views/system/user/svg/unexpand.svg @@ -1 +1 @@ - \ No newline at end of file + \ No newline at end of file From e64cd0c8df3c26e553bbebde2e7f28b662b89ac2 Mon Sep 17 00:00:00 2001 From: xiaoxian521 <1923740402@qq.com> Date: Mon, 8 Jan 2024 16:50:54 +0800 Subject: [PATCH 3/9] =?UTF-8?q?perf:=20=E4=BC=98=E5=8C=96=E9=A1=B9?= =?UTF-8?q?=E7=9B=AE=E6=9E=84=E5=BB=BA=E7=9B=B8=E5=85=B3=E5=87=BD=E6=95=B0?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- build/index.ts | 31 ------------------- build/plugins.ts | 4 +-- build/utils.ts | 78 +++++++++++++++++++++++++++++++++++++++++++++--- vite.config.ts | 33 +++++--------------- 4 files changed, 84 insertions(+), 62 deletions(-) delete mode 100644 build/index.ts diff --git a/build/index.ts b/build/index.ts deleted file mode 100644 index f125097da..000000000 --- a/build/index.ts +++ /dev/null @@ -1,31 +0,0 @@ -/** 处理环境变量 */ -const warpperEnv = (envConf: Recordable): ViteEnv => { - /** 此处为默认值 */ - const ret: ViteEnv = { - VITE_PORT: 8848, - VITE_PUBLIC_PATH: "", - VITE_ROUTER_HISTORY: "", - VITE_CDN: false, - VITE_HIDE_HOME: "false", - VITE_COMPRESSION: "none" - }; - - for (const envName of Object.keys(envConf)) { - let realName = envConf[envName].replace(/\\n/g, "\n"); - realName = - realName === "true" ? true : realName === "false" ? false : realName; - - if (envName === "VITE_PORT") { - realName = Number(realName); - } - ret[envName] = realName; - if (typeof realName === "string") { - process.env[envName] = realName; - } else if (typeof realName === "object") { - process.env[envName] = JSON.stringify(realName); - } - } - return ret; -}; - -export { warpperEnv }; diff --git a/build/plugins.ts b/build/plugins.ts index a0eedc61f..e9005cff3 100644 --- a/build/plugins.ts +++ b/build/plugins.ts @@ -1,6 +1,6 @@ import { cdn } from "./cdn"; -import { resolve } from "path"; import vue from "@vitejs/plugin-vue"; +import { pathResolve } from "./utils"; import { viteBuildInfo } from "./info"; import svgLoader from "vite-svg-loader"; import type { PluginOption } from "vite"; @@ -26,7 +26,7 @@ export function getPluginsList( VueI18nPlugin({ runtimeOnly: true, compositionOnly: true, - include: [resolve("locales/**")] + include: [pathResolve("../locales/**")] }), viteBuildInfo(), /** diff --git a/build/utils.ts b/build/utils.ts index 2f11e0f15..296738941 100644 --- a/build/utils.ts +++ b/build/utils.ts @@ -1,12 +1,80 @@ +import dayjs from "dayjs"; import { readdir, stat } from "node:fs"; +import { fileURLToPath } from "node:url"; +import { dirname, resolve } from "node:path"; import { sum, formatBytes } from "@pureadmin/utils"; +import { dependencies, devDependencies, name, version } from "../package.json"; + +/** 启动`node`进程时所在工作目录的绝对路径 */ +const root: string = process.cwd(); + +/** + * @description 根据可选的路径片段生成一个新的绝对路径 + * @param dir 路径片段,默认`build` + * @param metaUrl 模块的完整`url`,如果在`build`目录外调用必传`import.meta.url` + */ +const pathResolve = (dir = ".", metaUrl = import.meta.url) => { + // 当前文件目录的绝对路径 + const currentFileDir = dirname(fileURLToPath(metaUrl)); + // build 目录的绝对路径 + const buildDir = resolve(currentFileDir, "build"); + // 解析的绝对路径 + const resolvedPath = resolve(currentFileDir, dir); + // 检查解析的绝对路径是否在 build 目录内 + if (resolvedPath.startsWith(buildDir)) { + // 在 build 目录内,返回当前文件路径 + return fileURLToPath(metaUrl); + } + // 不在 build 目录内,返回解析后的绝对路径 + return resolvedPath; +}; + +/** 设置别名 */ +const alias: Record = { + "@": pathResolve("../src"), + "@build": pathResolve() +}; + +/** 平台的名称、版本、依赖、最后构建时间 */ +const __APP_INFO__ = { + pkg: { name, version, dependencies, devDependencies }, + lastBuildTime: dayjs(new Date()).format("YYYY-MM-DD HH:mm:ss") +}; + +/** 处理环境变量 */ +const warpperEnv = (envConf: Recordable): ViteEnv => { + // 默认值 + const ret: ViteEnv = { + VITE_PORT: 8848, + VITE_PUBLIC_PATH: "", + VITE_ROUTER_HISTORY: "", + VITE_CDN: false, + VITE_HIDE_HOME: "false", + VITE_COMPRESSION: "none" + }; + + for (const envName of Object.keys(envConf)) { + let realName = envConf[envName].replace(/\\n/g, "\n"); + realName = + realName === "true" ? true : realName === "false" ? false : realName; + + if (envName === "VITE_PORT") { + realName = Number(realName); + } + ret[envName] = realName; + if (typeof realName === "string") { + process.env[envName] = realName; + } else if (typeof realName === "object") { + process.env[envName] = JSON.stringify(realName); + } + } + return ret; +}; const fileListTotal: number[] = []; -/** - * @description 获取指定文件夹中所有文件的总大小 - */ -export const getPackageSize = options => { +/** 获取指定文件夹中所有文件的总大小 */ +const getPackageSize = options => { const { folder = "dist", callback, format = true } = options; readdir(folder, (err, files: string[]) => { if (err) throw err; @@ -32,3 +100,5 @@ export const getPackageSize = options => { files.length === 0 && callback(0); }); }; + +export { root, pathResolve, alias, __APP_INFO__, warpperEnv, getPackageSize }; diff --git a/vite.config.ts b/vite.config.ts index fe2a4ae85..f7e2f280f 100644 --- a/vite.config.ts +++ b/vite.config.ts @@ -1,30 +1,13 @@ -import dayjs from "dayjs"; -import { resolve } from "path"; -import pkg from "./package.json"; -import { warpperEnv } from "./build"; import { getPluginsList } from "./build/plugins"; import { include, exclude } from "./build/optimize"; import { type UserConfigExport, type ConfigEnv, loadEnv } from "vite"; - -/** 当前执行node命令时文件夹的地址(工作目录) */ -const root: string = process.cwd(); - -/** 路径查找 */ -const pathResolve = (dir: string): string => { - return resolve(__dirname, ".", dir); -}; - -/** 设置别名 */ -const alias: Record = { - "@": pathResolve("src"), - "@build": pathResolve("build") -}; - -const { dependencies, devDependencies, name, version } = pkg; -const __APP_INFO__ = { - pkg: { dependencies, devDependencies, name, version }, - lastBuildTime: dayjs(new Date()).format("YYYY-MM-DD HH:mm:ss") -}; +import { + root, + alias, + warpperEnv, + pathResolve, + __APP_INFO__ +} from "./build/utils"; export default ({ mode }: ConfigEnv): UserConfigExport => { const { VITE_CDN, VITE_PORT, VITE_COMPRESSION, VITE_PUBLIC_PATH } = @@ -61,7 +44,7 @@ export default ({ mode }: ConfigEnv): UserConfigExport => { chunkSizeWarningLimit: 4000, rollupOptions: { input: { - index: pathResolve("index.html") + index: pathResolve("./index.html", import.meta.url) }, // 静态资源分类打包 output: { From ebc245d0042caa2756ebfdbb8157d13b36f57421 Mon Sep 17 00:00:00 2001 From: xiaoxian521 <1923740402@qq.com> Date: Tue, 9 Jan 2024 16:10:55 +0800 Subject: [PATCH 4/9] =?UTF-8?q?perf:=20=E6=9B=B4=E7=AE=80=E5=8D=95?= =?UTF-8?q?=E4=B8=94=E5=85=BC=E5=AE=B9=E5=9C=BA=E6=99=AF=E6=9B=B4=E5=A4=9A?= =?UTF-8?q?=E7=9A=84=E9=A6=96=E9=A1=B5=E5=9B=BE=E8=A1=A8=E5=B0=BA=E5=AF=B8?= =?UTF-8?q?=E8=87=AA=E9=80=82=E5=BA=94=E5=AE=B9=E5=99=A8=E5=86=99=E6=B3=95?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- package.json | 2 +- pnpm-lock.yaml | 8 ++++---- src/views/welcome/components/chart/bar.vue | 8 ++------ src/views/welcome/components/chart/line.vue | 1 + src/views/welcome/components/chart/round.vue | 1 + src/views/welcome/index.vue | 14 +++----------- src/views/welcome/utils.ts | 3 +-- 7 files changed, 13 insertions(+), 24 deletions(-) diff --git a/package.json b/package.json index da539170e..2aa7d17eb 100644 --- a/package.json +++ b/package.json @@ -54,7 +54,7 @@ "@logicflow/extension": "^1.2.19", "@pureadmin/descriptions": "^1.2.0", "@pureadmin/table": "^3.0.0", - "@pureadmin/utils": "^2.1.2", + "@pureadmin/utils": "^2.2.0", "@vueuse/core": "^10.7.1", "@vueuse/motion": "^2.0.0", "@wangeditor/editor": "^5.1.23", diff --git a/pnpm-lock.yaml b/pnpm-lock.yaml index 653aa58b0..4f2bfaa03 100644 --- a/pnpm-lock.yaml +++ b/pnpm-lock.yaml @@ -24,8 +24,8 @@ dependencies: specifier: ^3.0.0 version: 3.0.0(element-plus@2.4.4)(typescript@5.3.3) '@pureadmin/utils': - specifier: ^2.1.2 - version: 2.1.2(echarts@5.4.3)(vue@3.4.5) + specifier: ^2.2.0 + version: 2.2.0(echarts@5.4.3)(vue@3.4.5) '@vueuse/core': specifier: ^10.7.1 version: 10.7.1(vue@3.4.5) @@ -1757,8 +1757,8 @@ packages: string-hash: 1.1.3 dev: true - /@pureadmin/utils@2.1.2(echarts@5.4.3)(vue@3.4.5): - resolution: {integrity: sha512-TjMLN6MBNa5WkJYMidk1LhTfmTlHcSEjFm1jtN3e5z9Q3jzfnu5jF8MC+b0WF0LzeRqnq6kICrxXpSn5/HqNIA==} + /@pureadmin/utils@2.2.0(echarts@5.4.3)(vue@3.4.5): + resolution: {integrity: sha512-G4/Qzu0QosXlfTO/gWvgpygugFuUVpwUspfuejIqBnrJEudBllx17wZdDjNEL27Uwg+HjXYjofXQUGUX4E2NtA==} peerDependencies: echarts: '*' vue: '*' diff --git a/src/views/welcome/components/chart/bar.vue b/src/views/welcome/components/chart/bar.vue index d0351e297..6d9af1597 100644 --- a/src/views/welcome/components/chart/bar.vue +++ b/src/views/welcome/components/chart/bar.vue @@ -18,7 +18,7 @@ const { isDark } = useDark(); const theme = computed(() => (isDark.value ? "dark" : "light")); const chartRef = ref(); -const { setOptions, resize } = useECharts(chartRef, { +const { setOptions } = useECharts(chartRef, { theme }); @@ -27,7 +27,7 @@ watch( async () => { await nextTick(); // 确保DOM更新完成后再执行 setOptions({ - resize: false, + container: ".bar-card", color: ["#41b6ff", "#e85f33"], tooltip: { trigger: "axis", @@ -101,10 +101,6 @@ watch( immediate: true } ); - -defineExpose({ - resize -});