123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051 |
- import { defineConfig, loadEnv } from "vite";
- import { fileURLToPath, URL } from "url";
- import vue from "@vitejs/plugin-vue";
- import path from "path";
- import AutoImport from "unplugin-auto-import/vite";
- import Components from "unplugin-vue-components/vite";
- import { NaiveUiResolver } from "unplugin-vue-components/resolvers";
- import { ViteImageOptimizer } from "vite-plugin-image-optimizer";
- // https://vitejs.dev/config/
- function pathResolve(dir) {
- return path.resolve(process.cwd(), ".", dir);
- }
- export default ({ mode }) =>
- defineConfig({
- base: loadEnv(mode, process.cwd()).VITE_PUBLIC_DIR,
- plugins: [
- vue(),
- AutoImport({
- imports: [
- "vue",
- {
- "naive-ui": [
- "useDialog",
- "useMessage",
- "useNotification",
- "useLoadingBar",
- ],
- },
- ],
- }),
- Components({
- resolvers: [NaiveUiResolver()],
- }),
- ViteImageOptimizer({
- png: {
- quality: 100,
- },
- jpg: {
- quality: 100,
- },
- }),
- ],
- resolve: {
- alias: {
- "@": path.resolve(__dirname, "src"),
- "##": path.resolve(__dirname, "src/assets"),
- },
- extensions: [".mjs", ".js", ".ts", ".jsx", ".tsx", ".json", ".vue"],
- },
- });
|