mirror of
https://gitee.com/fantastic-admin/basic.git
synced 2024-12-01 19:48:15 +08:00
65 lines
1.7 KiB
TypeScript
65 lines
1.7 KiB
TypeScript
import type { Theme } from 'unocss/preset-uno'
|
|
import {
|
|
defineConfig,
|
|
presetAttributify,
|
|
presetIcons,
|
|
presetTypography,
|
|
presetUno,
|
|
transformerCompileClass,
|
|
transformerDirectives,
|
|
transformerVariantGroup,
|
|
} from 'unocss'
|
|
import { entriesToCss, toArray } from '@unocss/core'
|
|
import { darkTheme, lightTheme } from './themes'
|
|
|
|
export default defineConfig<Theme>({
|
|
shortcuts: [
|
|
{
|
|
'flex-center': 'flex justify-center items-center',
|
|
'flex-col-center': 'flex flex-col justify-center items-center',
|
|
},
|
|
],
|
|
preflights: [
|
|
{
|
|
getCSS: () => {
|
|
const returnCss: any = []
|
|
// 明亮主题
|
|
const lightCss = entriesToCss(Object.entries(lightTheme))
|
|
const lightRoots = toArray([`*,::before,::after`, `::backdrop`])
|
|
returnCss.push(lightRoots.map(root => `${root}{${lightCss}}`).join(''))
|
|
// 暗黑主题
|
|
const darkCss = entriesToCss(Object.entries(darkTheme))
|
|
const darkRoots = toArray([`html.dark,html.dark *,html.dark ::before,html.dark ::after`, `html.dark ::backdrop`])
|
|
returnCss.push(darkRoots.map(root => `${root}{${darkCss}}`).join(''))
|
|
|
|
return returnCss.join('')
|
|
},
|
|
},
|
|
],
|
|
theme: {
|
|
colors: {
|
|
'ui-primary': 'rgb(var(--ui-primary))',
|
|
'ui-text': 'rgb(var(--ui-text))',
|
|
},
|
|
},
|
|
presets: [
|
|
presetUno(),
|
|
presetAttributify(),
|
|
presetIcons({
|
|
extraProperties: {
|
|
'display': 'inline-block',
|
|
'vertical-align': 'middle',
|
|
},
|
|
}),
|
|
presetTypography(),
|
|
],
|
|
transformers: [
|
|
transformerDirectives(),
|
|
transformerVariantGroup(),
|
|
transformerCompileClass(),
|
|
],
|
|
configDeps: [
|
|
'themes/index.ts',
|
|
],
|
|
})
|