155 lines
18 KiB
JavaScript
155 lines
18 KiB
JavaScript
|
|
// vite.config.js
|
|||
|
|
import path2 from "path";
|
|||
|
|
import { defineConfig, loadEnv } from "file:///F:/zhyc01-ui/zhyc-sheep-ui/node_modules/vite/dist/node/index.js";
|
|||
|
|
|
|||
|
|
// vite/plugins/index.js
|
|||
|
|
import vue from "file:///F:/zhyc01-ui/zhyc-sheep-ui/node_modules/@vitejs/plugin-vue/dist/index.mjs";
|
|||
|
|
|
|||
|
|
// vite/plugins/auto-import.js
|
|||
|
|
import autoImport from "file:///F:/zhyc01-ui/zhyc-sheep-ui/node_modules/unplugin-auto-import/dist/vite.js";
|
|||
|
|
function createAutoImport() {
|
|||
|
|
return autoImport({
|
|||
|
|
imports: [
|
|||
|
|
"vue",
|
|||
|
|
"vue-router",
|
|||
|
|
"pinia"
|
|||
|
|
],
|
|||
|
|
dts: false
|
|||
|
|
});
|
|||
|
|
}
|
|||
|
|
|
|||
|
|
// vite/plugins/svg-icon.js
|
|||
|
|
import { createSvgIconsPlugin } from "file:///F:/zhyc01-ui/zhyc-sheep-ui/node_modules/vite-plugin-svg-icons/dist/index.mjs";
|
|||
|
|
import path from "path";
|
|||
|
|
function createSvgIcon(isBuild) {
|
|||
|
|
return createSvgIconsPlugin({
|
|||
|
|
iconDirs: [path.resolve(process.cwd(), "src/assets/icons/svg")],
|
|||
|
|
symbolId: "icon-[dir]-[name]",
|
|||
|
|
svgoOptions: isBuild
|
|||
|
|
});
|
|||
|
|
}
|
|||
|
|
|
|||
|
|
// vite/plugins/compression.js
|
|||
|
|
import compression from "file:///F:/zhyc01-ui/zhyc-sheep-ui/node_modules/vite-plugin-compression/dist/index.mjs";
|
|||
|
|
function createCompression(env) {
|
|||
|
|
const { VITE_BUILD_COMPRESS } = env;
|
|||
|
|
const plugin = [];
|
|||
|
|
if (VITE_BUILD_COMPRESS) {
|
|||
|
|
const compressList = VITE_BUILD_COMPRESS.split(",");
|
|||
|
|
if (compressList.includes("gzip")) {
|
|||
|
|
plugin.push(
|
|||
|
|
compression({
|
|||
|
|
ext: ".gz",
|
|||
|
|
deleteOriginFile: false
|
|||
|
|
})
|
|||
|
|
);
|
|||
|
|
}
|
|||
|
|
if (compressList.includes("brotli")) {
|
|||
|
|
plugin.push(
|
|||
|
|
compression({
|
|||
|
|
ext: ".br",
|
|||
|
|
algorithm: "brotliCompress",
|
|||
|
|
deleteOriginFile: false
|
|||
|
|
})
|
|||
|
|
);
|
|||
|
|
}
|
|||
|
|
}
|
|||
|
|
return plugin;
|
|||
|
|
}
|
|||
|
|
|
|||
|
|
// vite/plugins/setup-extend.js
|
|||
|
|
import setupExtend from "file:///F:/zhyc01-ui/zhyc-sheep-ui/node_modules/unplugin-vue-setup-extend-plus/dist/vite.js";
|
|||
|
|
function createSetupExtend() {
|
|||
|
|
return setupExtend({});
|
|||
|
|
}
|
|||
|
|
|
|||
|
|
// vite/plugins/index.js
|
|||
|
|
function createVitePlugins(viteEnv, isBuild = false) {
|
|||
|
|
const vitePlugins = [vue()];
|
|||
|
|
vitePlugins.push(createAutoImport());
|
|||
|
|
vitePlugins.push(createSetupExtend());
|
|||
|
|
vitePlugins.push(createSvgIcon(isBuild));
|
|||
|
|
isBuild && vitePlugins.push(...createCompression(viteEnv));
|
|||
|
|
return vitePlugins;
|
|||
|
|
}
|
|||
|
|
|
|||
|
|
// vite.config.js
|
|||
|
|
var __vite_injected_original_dirname = "F:\\zhyc01-ui\\zhyc-sheep-ui";
|
|||
|
|
var baseUrl = "http://127.0.0.1:8080";
|
|||
|
|
var vite_config_default = defineConfig(({ mode, command }) => {
|
|||
|
|
const env = loadEnv(mode, process.cwd());
|
|||
|
|
const { VITE_APP_ENV } = env;
|
|||
|
|
return {
|
|||
|
|
// 部署生产环境和开发环境下的URL。
|
|||
|
|
// 默认情况下,vite 会假设你的应用是被部署在一个域名的根路径上
|
|||
|
|
// 例如 https://www.ruoyi.vip/。如果应用被部署在一个子路径上,你就需要用这个选项指定这个子路径。例如,如果你的应用被部署在 https://www.ruoyi.vip/admin/,则设置 baseUrl 为 /admin/。
|
|||
|
|
base: VITE_APP_ENV === "production" ? "/" : "/",
|
|||
|
|
plugins: createVitePlugins(env, command === "build"),
|
|||
|
|
resolve: {
|
|||
|
|
// https://cn.vitejs.dev/config/#resolve-alias
|
|||
|
|
alias: {
|
|||
|
|
// 设置路径
|
|||
|
|
"~": path2.resolve(__vite_injected_original_dirname, "./"),
|
|||
|
|
// 设置别名
|
|||
|
|
"@": path2.resolve(__vite_injected_original_dirname, "./src")
|
|||
|
|
},
|
|||
|
|
// https://cn.vitejs.dev/config/#resolve-extensions
|
|||
|
|
extensions: [".mjs", ".js", ".ts", ".jsx", ".tsx", ".json", ".vue"]
|
|||
|
|
},
|
|||
|
|
// 打包配置
|
|||
|
|
build: {
|
|||
|
|
// https://vite.dev/config/build-options.html
|
|||
|
|
sourcemap: command === "build" ? false : "inline",
|
|||
|
|
outDir: "dist",
|
|||
|
|
assetsDir: "assets",
|
|||
|
|
chunkSizeWarningLimit: 2e3,
|
|||
|
|
rollupOptions: {
|
|||
|
|
output: {
|
|||
|
|
chunkFileNames: "static/js/[name]-[hash].js",
|
|||
|
|
entryFileNames: "static/js/[name]-[hash].js",
|
|||
|
|
assetFileNames: "static/[ext]/[name]-[hash].[ext]"
|
|||
|
|
}
|
|||
|
|
}
|
|||
|
|
},
|
|||
|
|
// vite 相关配置
|
|||
|
|
server: {
|
|||
|
|
port: 82,
|
|||
|
|
host: true,
|
|||
|
|
open: true,
|
|||
|
|
proxy: {
|
|||
|
|
// https://cn.vitejs.dev/config/#server-proxy
|
|||
|
|
"/dev-api": {
|
|||
|
|
target: baseUrl,
|
|||
|
|
changeOrigin: true,
|
|||
|
|
rewrite: (p) => p.replace(/^\/dev-api/, "")
|
|||
|
|
},
|
|||
|
|
// springdoc proxy
|
|||
|
|
"^/v3/api-docs/(.*)": {
|
|||
|
|
target: baseUrl,
|
|||
|
|
changeOrigin: true
|
|||
|
|
}
|
|||
|
|
}
|
|||
|
|
},
|
|||
|
|
css: {
|
|||
|
|
postcss: {
|
|||
|
|
plugins: [
|
|||
|
|
{
|
|||
|
|
postcssPlugin: "internal:charset-removal",
|
|||
|
|
AtRule: {
|
|||
|
|
charset: (atRule) => {
|
|||
|
|
if (atRule.name === "charset") {
|
|||
|
|
atRule.remove();
|
|||
|
|
}
|
|||
|
|
}
|
|||
|
|
}
|
|||
|
|
}
|
|||
|
|
]
|
|||
|
|
}
|
|||
|
|
}
|
|||
|
|
};
|
|||
|
|
});
|
|||
|
|
export {
|
|||
|
|
vite_config_default as default
|
|||
|
|
};
|
|||
|
|
//# sourceMappingURL=data:application/json;base64,ewogICJ2ZXJzaW9uIjogMywKICAic291cmNlcyI6IFsidml0ZS5jb25maWcuanMiLCAidml0ZS9wbHVnaW5zL2luZGV4LmpzIiwgInZpdGUvcGx1Z2lucy9hdXRvLWltcG9ydC5qcyIsICJ2aXRlL3BsdWdpbnMvc3ZnLWljb24uanMiLCAidml0ZS9wbHVnaW5zL2NvbXByZXNzaW9uLmpzIiwgInZpdGUvcGx1Z2lucy9zZXR1cC1leHRlbmQuanMiXSwKICAic291cmNlc0NvbnRlbnQiOiBbImNvbnN0IF9fdml0ZV9pbmplY3RlZF9vcmlnaW5hbF9kaXJuYW1lID0gXCJGOlxcXFx6aHljMDEtdWlcXFxcemh5Yy1zaGVlcC11aVwiO2NvbnN0IF9fdml0ZV9pbmplY3RlZF9vcmlnaW5hbF9maWxlbmFtZSA9IFwiRjpcXFxcemh5YzAxLXVpXFxcXHpoeWMtc2hlZXAtdWlcXFxcdml0ZS5jb25maWcuanNcIjtjb25zdCBfX3ZpdGVfaW5qZWN0ZWRfb3JpZ2luYWxfaW1wb3J0X21ldGFfdXJsID0gXCJmaWxlOi8vL0Y6L3poeWMwMS11aS96aHljLXNoZWVwLXVpL3ZpdGUuY29uZmlnLmpzXCI7aW1wb3J0IHBhdGggZnJvbSAncGF0aCdcclxuaW1wb3J0IHsgZGVmaW5lQ29uZmlnLCBsb2FkRW52IH0gZnJvbSAndml0ZSdcclxuaW1wb3J0IGNyZWF0ZVZpdGVQbHVnaW5zIGZyb20gJy4vdml0ZS9wbHVnaW5zJ1xyXG5cclxuY29uc3QgYmFzZVVybCA9ICdodHRwOi8vMTI3LjAuMC4xOjgwODAnIC8vIFx1NTQwRVx1N0FFRlx1NjNBNVx1NTNFM1xyXG5cclxuLy8gaHR0cHM6Ly92aXRlanMuZGV2L2NvbmZpZy9cclxuZXhwb3J0IGRlZmF1bHQgZGVmaW5lQ29uZmlnKCh7IG1vZGUsIGNvbW1hbmQgfSkgPT4ge1xyXG4gIGNvbnN0IGVudiA9IGxvYWRFbnYobW9kZSwgcHJvY2Vzcy5jd2QoKSlcclxuICBjb25zdCB7IFZJVEVfQVBQX0VOViB9ID0gZW52XHJcbiAgcmV0dXJuIHtcclxuICAgIC8vIFx1OTBFOFx1N0Y3Mlx1NzUxRlx1NEVBN1x1NzNBRlx1NTg4M1x1NTQ4Q1x1NUYwMFx1NTNEMVx1NzNBRlx1NTg4M1x1NEUwQlx1NzY4NFVSTFx1MzAwMlxyXG4gICAgLy8gXHU5RUQ4XHU4QkE0XHU2MEM1XHU1MUI1XHU0RTBCXHVGRjBDdml0ZSBcdTRGMUFcdTUwNDdcdThCQkVcdTRGNjBcdTc2ODRcdTVFOTRcdTc1MjhcdTY2MkZcdTg4QUJcdTkwRThcdTdGNzJcdTU3MjhcdTRFMDBcdTRFMkFcdTU3REZcdTU0MERcdTc2ODRcdTY4MzlcdThERUZcdTVGODRcdTRFMEFcclxuICAgIC8vIFx1NEY4Qlx1NTk4MiBodHRwczovL3d3dy5ydW95aS52aXAvXHUzMDAyXHU1OTgyXHU2NzlDXHU1RTk0XHU3NTI4XHU4OEFCXHU5MEU4XHU3RjcyXHU1NzI4XHU0RTAwXHU0RTJBXHU1QjUwXHU4REVGXHU1Rjg0XHU0RTBBXHVGRjBDXHU0RjYwXHU1QzMxXHU5NzAwXHU4OTgxXHU3NTI4XHU4RkQ5XHU0RTJBXHU5MDA5XHU5ODc5XHU2MzA3XHU1QjlBXHU4RkQ5XHU0RTJBXHU1QjUwXHU4REVGXHU1Rjg0XHUzMDAyXHU0RjhCXHU1OTgyXHVGRjBDXHU1OTgyXHU2NzlDXHU0RjYwXHU3Njg0XHU1RTk0XHU3NTI4XHU4OEFCXHU5MEU4XHU3RjcyXHU1NzI4IGh0dHBzOi8vd3d3LnJ1b3lpLnZpcC9hZG1pbi9cdUZGMENcdTUyMTlcdThCQkVcdTdGNkUgYmFzZVVybCBcdTRFM0EgL2FkbWluL1x1MzAwMlxyXG4gICAgYmFzZTogVklURV9BUFBfRU5WID09PSAncHJvZHVjdGlvbicgPyAnLycgOiAnLycsXHJcbiAgICBwbHVnaW5zOiBjcmVhdGVWaXRlUGx1Z2lucyhlbnYsIGNvbW1hbmQgPT09ICdidWlsZCcpLFxyXG4gICAgcmVzb2x2ZToge1xyXG4gICAgICAvLyBodHRwczovL2NuLnZpdGVqcy5kZXYvY29uZmlnLyNyZXNvbHZlLWFsaWFzXHJcbiAgICAgIGFsaWFzOiB7XHJcbiAgICAgICAgLy8gXHU4QkJFXHU3RjZFXHU4REVGXHU1Rjg0XHJcbiAgICAgICAgJ34nOiBwYXRoLnJlc29sdmUoX19kaXJuYW1lLCAnLi8nKSxcclxuICAgICAgICAvLyBcdThCQkVcdTdGNkVcdTUyMkJcdTU0MERcclxuICAgICAgICAnQCc6IHBhdGgucmVzb2x2ZShfX2Rpcm5hbWUsICcuL3NyYycpXHJcbiAgICAgIH0sXHJcbiAgICAgIC8vIGh0dHBzOi8vY24udml0ZWpzLmRldi9jb25maWcvI3Jlc29sdmUtZXh0ZW5zaW9uc1xyXG4gICAgICBleHRlbnNpb25zOiBbJy5tanMnLCAnLmpzJywgJy50cycsICcuanN4JywgJy50c3gnLCAnLmpzb24nLCAnLnZ1ZSddXHJcbiAgICB9LFxyXG4gICAgLy8gXHU2MjUzXHU1MzA1XHU5MTREXHU3RjZFXHJcbiAgICBidWlsZDoge1xyXG4gICAgICAvLyBodHRwczovL3ZpdGUuZGV2L2NvbmZpZy9idWlsZC1vcHRpb25zLmh0bWxcclxuICAgICAgc291cmNlbWFwOiBjb21tYW5kID09PSAnYnVpbGQnID8gZmFsc2UgOiAnaW5saW5lJyxcclxuICAgICAgb3V0RGlyOiAnZGlzdCcsXHJcbiAgICAgIGFzc2V0c0RpcjogJ2Fzc2V0cycsXHJcbiAgICAgIGNodW5rU2l6ZVdhcm5pbmdMaW1pdDogMjAwMCxcclxuICAgICAgcm9sbHVwT3B0aW9uczoge1xyXG4gICAgICAgIG91dHB1dDoge1xyXG4gICAgICAgICAgY2h1bmtGaWxlTmFtZXM6ICdzdGF0aWMvanMvW25hbWVdLVtoYXNoXS5qcycsXHJcbiAgICAgICAgICBlbnRyeUZpbGVOYW1lczogJ3N0YXRpYy9qcy9bbmFtZV0tW2hhc2hdLmpzJyxcclxuICAgICAgICAgIGFzc2V0RmlsZU5hbWVzOiAnc3RhdGljL1tleHRdL1tuYW1lXS1baGFzaF0uW2V4dF0nXHJcbiAgICAgICAgfVxyXG4gICAgICB9XHJcbiAgICB9LFxyXG4gICAgLy8gdml0ZSBcdTc2RjhcdTUxNzNcdTkxNERcdTdGNkVcclxuICAgIHNlcnZlcjoge1xyXG4gICAgICBwb3J0OiA4MixcclxuICAgICAgaG9zdDogdHJ1ZSxcclxuICAgICAgb3BlbjogdHJ1ZSxcclxuICAgICAgcHJveHk6IHtcclxuICAgICAgICAvLyBodHRwczovL2NuLnZpdGVqcy5kZXYvY29uZmlnLyNzZXJ2ZXItcHJveHlcclxuICAgICAgICAnL2Rldi1hcGknOiB7XHJcbiAgICAgICAgICB0YXJnZXQ6IGJhc2VVcmwsXHJcbiAgICAgICAgICBjaGFuZ2VPcmlnaW46IHRydWUsXHJcbiAgICAgICAgICByZXdyaXRlOiAocCkgPT4gcC5yZXBsYWNlKC9eXFwvZGV2LWFwaS8sICcnKVxyXG4gICAgICAgIH0sXHJcbiAgICAgICAgIC8vIHNwcmluZ2RvYyBwcm94eVxyXG4gICAgICAgICAnXi92My9hcGktZ
|