-
Notifications
You must be signed in to change notification settings - Fork 0
/
Copy pathvite.config.js
72 lines (70 loc) · 1.89 KB
/
vite.config.js
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
import { defineConfig } from "vite";
import Components from "unplugin-vue-components/vite";
import IconsResolver from "unplugin-icons/resolver";
import AutoImport from "unplugin-auto-import/vite";
import Pages from "vite-plugin-pages";
import { extendRoutes } from "vitepress-pages";
import generateSitemap from 'vite-plugin-pages-sitemap'
import Unocss from 'unocss/vite'
import { presetUno, presetIcons, transformerDirectives, extractorSplit } from "unocss";
import extractorPug from '@unocss/extractor-pug'
import path from "node:path";
import { fileURLToPath } from "node:url";
export default defineConfig({
server: {
port: 3088,
},
plugins: [
AutoImport({
// targets to transform
include: [
/\.[tj]sx?$/, // .ts, .tsx, .js, .jsx
/\.vue\??/, // .vue
],
imports: ["vue"],
}),
Pages({
dirs: [
{ dir: ".", baseRoute: "." },
],
exclude: ['**/node_modules/**/*.*', '**/!(index).md'],
extensions: ['md'],
...extendRoutes({
root: path.dirname(fileURLToPath(import.meta.url)),
}),
onRoutesGenerated: routes => (generateSitemap({ routes, hostname: 'https://eyefilling.ru/' })),
}),
Components({
dirs: [".vitepress/theme/components"],
extensions: ["vue", "ts"],
directoryAsNamespace: true,
globalNamespaces: ["global"],
include: [/\.vue$/, /\.vue\?vue/, /\.md$/],
exclude: [/node_modules/, /\.git/],
}),
Unocss({
presets: [
presetIcons({
extraProperties: {
'display': 'inline-block',
'vertical-align': 'middle',
},
}),
presetUno()
],
transformers: [
transformerDirectives(),
],
extractors: [
extractorPug(),
extractorSplit,
],
}),
],
optimizeDeps: {
include: ["vue", "@vueuse/core"],
},
ssr: {
noExternal: ["ol"],
},
});