106 lines
2.8 KiB
TypeScript
106 lines
2.8 KiB
TypeScript
import {
|
|
createLocalFontProcessor,
|
|
} from '@unocss/preset-web-fonts/local'
|
|
import { presetWind4 } from '@unocss/preset-wind4'
|
|
import {
|
|
defineConfig,
|
|
presetIcons,
|
|
presetTypography,
|
|
presetWebFonts,
|
|
transformerDirectives,
|
|
transformerVariantGroup,
|
|
} from 'unocss'
|
|
|
|
export default defineConfig({
|
|
shortcuts: [
|
|
['btn', 'px-4 py-1 rounded inline-block bg-teal-700 text-white cursor-pointer !outline-none hover:bg-teal-800 disabled:cursor-default disabled:bg-gray-600 disabled:opacity-50'],
|
|
['icon-btn', 'inline-block cursor-pointer select-none opacity-75 transition duration-200 ease-in-out hover:opacity-100 hover:text-teal-600'],
|
|
],
|
|
presets: [
|
|
presetWind4({
|
|
preflights: { reset: true },
|
|
dark: 'class',
|
|
}),
|
|
presetIcons({
|
|
scale: 1.2,
|
|
}),
|
|
presetTypography(),
|
|
presetWebFonts({
|
|
fonts: {
|
|
sans: 'DM Sans',
|
|
serif: 'DM Serif Display',
|
|
mono: 'DM Mono',
|
|
},
|
|
processors: createLocalFontProcessor(),
|
|
}),
|
|
],
|
|
theme: {
|
|
colors: {
|
|
background: 'var(--background)',
|
|
foreground: 'var(--foreground)',
|
|
card: {
|
|
DEFAULT: 'var(--card)',
|
|
foreground: 'var(--card-foreground)',
|
|
},
|
|
popover: {
|
|
DEFAULT: 'var(--popover)',
|
|
foreground: 'var(--popover-foreground)',
|
|
},
|
|
primary: {
|
|
DEFAULT: 'var(--primary)',
|
|
foreground: 'var(--primary-foreground)',
|
|
},
|
|
secondary: {
|
|
DEFAULT: 'var(--secondary)',
|
|
foreground: 'var(--secondary-foreground)',
|
|
},
|
|
muted: {
|
|
DEFAULT: 'var(--muted)',
|
|
foreground: 'var(--muted-foreground)',
|
|
},
|
|
accent: {
|
|
DEFAULT: 'var(--accent)',
|
|
foreground: 'var(--accent-foreground)',
|
|
},
|
|
destructive: {
|
|
DEFAULT: 'var(--destructive)',
|
|
},
|
|
border: 'var(--border)',
|
|
input: 'var(--input)',
|
|
ring: 'var(--ring)',
|
|
sidebar: {
|
|
DEFAULT: 'var(--sidebar)',
|
|
foreground: 'var(--sidebar-foreground)',
|
|
primary: {
|
|
DEFAULT: 'var(--sidebar-primary)',
|
|
foreground: 'var(--sidebar-primary-foreground)',
|
|
},
|
|
accent: {
|
|
DEFAULT: 'var(--sidebar-accent)',
|
|
foreground: 'var(--sidebar-accent-foreground)',
|
|
},
|
|
border: 'var(--sidebar-border)',
|
|
ring: 'var(--sidebar-ring)',
|
|
},
|
|
chart: {
|
|
1: 'var(--chart-1)',
|
|
2: 'var(--chart-2)',
|
|
3: 'var(--chart-3)',
|
|
4: 'var(--chart-4)',
|
|
5: 'var(--chart-5)',
|
|
},
|
|
},
|
|
borderRadius: {
|
|
sm: 'calc(var(--radius) - 4px)',
|
|
md: 'calc(var(--radius) - 2px)',
|
|
lg: 'var(--radius)',
|
|
xl: 'calc(var(--radius) + 4px)',
|
|
},
|
|
},
|
|
transformers: [
|
|
transformerDirectives(),
|
|
transformerVariantGroup(),
|
|
],
|
|
safelist: 'prose prose-sm m-auto text-left'.split(' '),
|
|
})
|