TOPVERSE_Official/uno.config.ts

140 lines
4.6 KiB
TypeScript

import {
defineConfig,
presetAttributify,
presetIcons,
presetMini,
presetTypography,
presetUno,
presetWebFonts,
presetWind,
transformerDirectives,
transformerVariantGroup,
} from 'unocss'
import { presetAnu, presetIconExtraProperties } from 'anu-vue'
import { presetExtra } from 'unocss-preset-extra'
import { presetScrollbar } from 'unocss-preset-scrollbar'
import { presetScrollbarHide } from 'unocss-preset-scrollbar-hide'
import { presetThemeDefault } from '@anu-vue/preset-theme-default'
export default defineConfig({
include: [/.*\/anu-vue\.js(.*)?$/, './**/*.vue', './**/*.md'],
shortcuts: {
'text-title': ' font-bold opacity-90 uppercase break-words',
'text-body': 'text-base tracking-normal break-words',
'text-description': 'text-md text-stone break-words',
'text-h2': ' text-5xl leading-16 break-words font-bold line-clamp-4',
'text-h3': ' text-4xl leading-13 break-words line-clamp-4',
'text-h4': ' text-2xl leading-10 break-words line-clamp-4',
'text-h5': ' text-xl leading-8 break-words line-clamp-5',
'text-h6': ' text-lg leading-6 break-words line-clamp-5',
'text-h7': ' text-base break-words',
'bg-gradient-pink': 'from-pink to-violet bg-gradient-to-r ',
'bg-gradient-blue': 'from-sky to-indigo bg-gradient-to-r ',
'bg-gradient-green': 'from-lime to-green bg-gradient-to-r ',
'bg-gradient-purple': 'from-purple to-fuchsia bg-gradient-to-r ',
'bg-gradient-rose': 'from-orange to-rose bg-gradient-to-r ',
'bg-gradient-yellow': 'from-yellow to-amber bg-gradient-to-r ',
'text-gradient-pink': 'from-pink to-violet bg-gradient-to-r bg-clip-text ',
'text-gradient-blue': 'from-blue to-indigo bg-gradient-to-r bg-clip-text ',
'text-gradient-green': 'from-lime to-green bg-gradient-to-r bg-clip-text ',
'text-gradient-purple': 'from-purple to-fuchsia bg-gradient-to-r bg-clip-text ',
'text-gradient-rose': 'from-orange to-rose bg-gradient-to-r bg-clip-text ',
'text-gradient-yellow': 'from-yellow to-amber bg-gradient-to-r bg-clip-text ',
},
safelist: [
...Array(10).fill('').map((_, i) => `grid-cols-${i + 1}`),
...Array(10).fill('').map((_, i) => `lg:grid-cols-${i + 1}`),
...Array(11).fill('').map((_, i) => `animated-delay-${i * 100}ms`),
'i-solar-airbuds-left-bold-duotone',
'text-gradient-pink',
'text-gradient-blue',
'text-gradient-green',
'text-gradient-rose',
'text-gradient-purple',
'text-gradient-yello',
'i-flag-gb-4x3',
'i-flag-cn-4x3',
'i-subway-basket',
'i-maki-college-11',
'i-maki-amusement-park-11',
'i-maki-gaming',
'i-maki-city',
'i-maki-basketball-11',
'i-maki-baseball-11',
'i-maki-communications-tower-11',
'i-tabler-affiliate',
'i-tabler-a-b',
'i-tabler-3d-cube-sphere',
'i-tabler-api-app',
'i-tabler-apple',
'i-academicons-archive',
'i-ic-sharp-wechat',
'i-ri-twitter-fill',
'i-iconoir-brain-electricity',
'i-material-symbols-shelf-auto-hide',
'i-medical-icon-i-medical-library',
'i-medical-icon-i-health-services',
'i-icomoon-free-500px',
'i-icomoon-free-css3',
'i-icomoon-free-barcode',
'i-octicon-copilot-16',
'i-octicon-circuit-board',
'i-file-icons-3d-model',
'i-icomoon-free-dice',
'i-icon-park-solid-anchor-one',
'i-icon-park-solid-address-book',
'i-icomoon-free-make-group',
'i-octicon-git-pull-request',
'i-icon-park-solid-hospital-four',
'i-icon-park-solid-solar-energy-one',
'i-icon-park-solid-airplane',
'i-akar-icons-plant',
'i-icon-park-solid-building-two',
'i-heroicons-solid-academic-cap',
'i-akar-icons-slack-fill',
'i-akar-icons-vscode-fill',
'i-akar-icons-image',
'i-akar-icons-soundcloud-fill',
'i-akar-icons-game-controller',
'i-akar-icons-telescope',
'i-icon-park-solid-hold-seeds',
'i-akar-icons-language',
],
presets: [
presetAnu(),
// default theme preset
presetThemeDefault({
shortcutOverrides: {
'a-btn': 'ring-3 ring-primary',
'a-base-input-root': 'ring-3',
},
}),
presetUno(),
presetMini(),
presetWind(),
presetAttributify(),
presetIcons({
scale: 1.2,
cdn: 'https://esm.sh/',
// cdn:'https://cdn.skypack.dev/',
// cdn:'https://api.iconify.design/',
extraProperties: presetIconExtraProperties,
}),
presetTypography(),
presetWebFonts({
fonts: {
sans: 'DM Sans',
serif: 'DM Serif Display',
mono: 'DM Mono',
},
}),
presetExtra(),
presetScrollbar(),
presetScrollbarHide(),
],
transformers: [
transformerDirectives(),
transformerVariantGroup(),
],
})