vitesse/vite.config.ts

86 lines
2.1 KiB
TypeScript
Raw Normal View History

2020-08-22 00:12:07 +08:00
import path from 'path'
2020-08-21 00:32:38 +08:00
import { UserConfig } from 'vite'
2021-01-07 13:49:19 +08:00
import Vue from '@vitejs/plugin-vue'
import Pages from 'vite-plugin-pages'
2020-12-24 17:26:37 +08:00
import ViteIcons, { ViteIconsResolver } from 'vite-plugin-icons'
import ViteComponents from 'vite-plugin-components'
2020-12-01 11:36:51 +08:00
import Markdown from 'vite-plugin-md'
2020-10-28 18:05:02 +08:00
import { VitePWA } from 'vite-plugin-pwa'
import VueI18n from '@intlify/vite-plugin-vue-i18n'
2021-01-21 05:57:32 +08:00
import Prism from 'markdown-it-prism'
2020-08-10 02:43:04 +08:00
2020-08-21 00:32:38 +08:00
const config: UserConfig = {
2021-01-07 13:49:19 +08:00
alias: {
'/~/': `${path.resolve(__dirname, 'src')}/`,
},
2020-08-10 02:43:04 +08:00
plugins: [
2021-01-07 13:49:19 +08:00
Vue({
2021-01-21 05:57:32 +08:00
include: [/\.vue$/, /\.md$/],
2021-01-07 13:49:19 +08:00
}),
// https://github.com/hannoeru/vite-plugin-pages
Pages({
2020-12-01 11:36:51 +08:00
extensions: ['vue', 'md'],
2020-10-27 10:15:11 +08:00
}),
2020-12-01 11:36:51 +08:00
// https://github.com/antfu/vite-plugin-md
2020-12-14 14:58:40 +08:00
Markdown({
wrapperClasses: 'prose prose-sm m-auto',
headEnabled: true,
2020-12-14 14:58:40 +08:00
markdownItSetup(md) {
2021-01-07 13:49:19 +08:00
// https://prismjs.com/
md.use(Prism)
2020-12-14 14:58:40 +08:00
},
}),
2020-12-01 11:36:51 +08:00
// https://github.com/antfu/vite-plugin-components
ViteComponents({
2020-12-01 11:36:51 +08:00
// allow auto load markdown components under `./src/components/`
extensions: ['vue', 'md'],
// allow auto import and register components used in markdown
2021-01-07 13:49:19 +08:00
customLoaderMatcher: id => id.endsWith('.md'),
2020-12-24 17:26:37 +08:00
// auto import icons
customComponentResolvers: [
// https://github.com/antfu/vite-plugin-icons
ViteIconsResolver({
componentPrefix: '',
// enabledCollections: ['carbon']
}),
],
}),
2020-12-01 11:36:51 +08:00
2020-12-24 17:26:37 +08:00
// https://github.com/antfu/vite-plugin-icons
ViteIcons(),
2020-12-01 11:36:51 +08:00
// https://github.com/antfu/vite-plugin-pwa
2020-10-28 18:05:02 +08:00
VitePWA({
manifest: {
name: 'Vitesse',
short_name: 'Vitesse',
2020-12-21 17:48:15 +08:00
theme_color: '#ffffff',
2020-10-28 18:05:02 +08:00
icons: [
{
src: '/pwa-192x192.png',
sizes: '192x192',
type: 'image/png',
},
{
src: '/pwa-512x512.png',
sizes: '512x512',
type: 'image/png',
},
],
},
}),
// https://github.com/intlify/vite-plugin-vue-i18n
VueI18n({
2021-01-20 03:37:06 +08:00
include: [path.resolve(__dirname, 'locales/**')],
}),
2020-08-10 02:43:04 +08:00
],
}
2020-08-21 00:32:38 +08:00
export default config