vite.config.ts 1.0 KB

123456789101112131415161718192021222324252627282930313233343536373839404142
  1. import { fileURLToPath, URL } from 'node:url'
  2. import { defineConfig } from 'vite'
  3. import { createSvgIconsPlugin } from '@digitalacorn/vite-plugin-svg-icons'
  4. import vue from '@vitejs/plugin-vue'
  5. import vueJsx from '@vitejs/plugin-vue-jsx'
  6. import VueDevTools from 'vite-plugin-vue-devtools'
  7. import path from 'path'
  8. // https://vitejs.dev/config/
  9. export default defineConfig({
  10. plugins: [
  11. vue(),
  12. vueJsx(),
  13. VueDevTools(),
  14. createSvgIconsPlugin({
  15. iconDirs: [path.resolve(process.cwd(), 'src/assets/svgs')],
  16. symbolId: 'icon-[dir]-[name]',
  17. svgoOptions: true,
  18. replaceStrokeWithCurrentColor: false
  19. }),
  20. ],
  21. resolve: {
  22. alias: {
  23. '@': fileURLToPath(new URL('./src', import.meta.url))
  24. },
  25. extensions: ['.mjs', '.js', '.ts', '.jsx', '.tsx', '.json', '.vue']
  26. },
  27. css: {
  28. preprocessorOptions: {
  29. scss: {
  30. additionalData: `
  31. @import "@/assets/styles/mixins.scss";
  32. @import "@/assets/styles/variables.scss";`
  33. }
  34. }
  35. }
  36. })