Files
vue-formkit-example/unocss.config.ts
严浩 7fdbea82d6
All checks were successful
/ test (push) Successful in 14s
unocss
2024-11-22 15:33:33 +08:00

64 lines
1.6 KiB
TypeScript

import { extractorArbitraryVariants } from "@unocss/extractor-arbitrary-variants";
import {
defineConfig,
presetUno,
transformerVariantGroup
} from "unocss";
import { fkLibrary } from "./formkit.config.fkLibrary";
import { classes, globals } from "./formkit.config.theme";
const familyList = [
...new Set(Object.values(fkLibrary).map((lib) => lib.family)),
].filter((f) => f) as string[];
const typeList = [
...new Set(Object.values(fkLibrary).map((lib) => lib.type)),
].filter((f) => f) as string[];
console.debug(`familyList :>> `, familyList);
console.debug(`typeList :>> `, typeList);
const globalsR = [
...new Set(Object.values(globals).flatMap((v) => Object.keys(v))),
];
const classesR = [
...new Set(
Object.keys(classes)
.filter(
(k) =>
familyList.some((f) => k.includes(f)) ||
typeList.some((t) => k.includes(t))
)
.map((k) => classes[k])
.flatMap((v) => Object.keys(v))
.filter((className) => !className.includes("[]"))
.filter((className) => !className.includes("&::"))
),
];
// console.debug(`classesR :>> `, classesR);
export default defineConfig({
content: {
filesystem: ["xx.ts"],
inline: [
"!border-none", // for: "range__inner"
classesR.join(" "),
globalsR.join(" "),
async () => {
return "";
},
],
pipeline: {
// include: [
// /xx.ts($|\?)/,
// ],
},
},
presets: [
presetUno({
dark: "media",
}),
],
transformers: [transformerVariantGroup()],
extractors: [extractorArbitraryVariants()],
});