element-plus/docs/.vitepress/config.ts
三咲智子 bb939c6a58
refactor(build): move to internal package (#6585)
* refactor(build): move to internal package

* ci: fix

* chore: fix

* fix: docs

* chore: add fast-glob to root package

* chore: fix PR comments

* build: add tsx

* refactor: re-organize

* refactor: improve log
2022-03-15 19:23:38 +08:00

87 lines
1.7 KiB
TypeScript

import consola from 'consola'
import { languages } from './utils/lang'
import { head } from './config/head'
import { sidebars } from './config/sidebars'
import { nav } from './config/nav'
import { mdPlugin } from './config/plugins'
import { features } from './config/features'
import type { UserConfig } from 'vitepress'
const buildTransformers = () => {
const transformer = () => {
return {
props: [],
needRuntime: true,
}
}
const transformers = {}
const directives = [
'infinite-scroll',
'loading',
'popover',
'click-outside',
'repeat-click',
'trap-focus',
'mousewheel',
'resize',
]
directives.forEach((k) => {
transformers[k] = transformer
})
return transformers
}
consola.debug(`DOC_ENV: ${process.env.DOC_ENV}`)
const locales = {}
languages.forEach((lang) => {
locales[`/${lang}`] = {
label: lang,
lang,
}
})
export const config: UserConfig = {
title: 'Element Plus',
description: 'a Vue 3 based component library for designers and developers',
head,
themeConfig: {
repo: 'element-plus/element-plus',
docsDir: 'docs',
editLinks: true,
editLinkText: 'Edit this page on GitHub',
lastUpdated: 'Last Updated',
logo: '/images/element-plus-logo.svg',
logoSmall: '/images/element-plus-logo-small.svg',
sidebars,
nav,
agolia: {
apiKey: '377f2b647a96d9b1d62e4780f2344da2',
appId: 'BH4D9OD16A',
},
features,
langs: languages,
},
locales,
markdown: {
config: (md) => mdPlugin(md),
},
vue: {
template: {
ssr: true,
compilerOptions: {
directiveTransforms: buildTransformers(),
},
},
},
}
export default config