weapp-tailwindcss
Version:
把 tailwindcss 原子化样式思想,带给小程序开发者们! bring tailwindcss to miniprogram developers!
51 lines (49 loc) • 1.39 kB
JavaScript
import {
createMediaQuery,
createNegativeMediaQuery
} from "./chunk-RGXLY3HG.mjs";
import {
defu
} from "./chunk-OOHJLO5M.mjs";
import "./chunk-FFGR5V3H.mjs";
// src/css-macro/index.ts
import plugin from "tailwindcss/plugin";
var defaultOptions = {
dynamic: true,
variantsMap: {}
};
var cssMacro = plugin.withOptions((options) => {
const { dynamic, variantsMap } = defu(options ?? {}, defaultOptions);
const staticVariants = Object.entries(variantsMap).map(([name, config]) => {
if (typeof config === "string") {
return {
name,
negative: false,
value: config
};
}
return {
name,
negative: Boolean(config.negative),
value: config.value
};
});
return (api) => {
const { matchVariant, addVariant } = api;
const supportsDynamic = typeof matchVariant === "function";
if (dynamic && supportsDynamic) {
matchVariant("ifdef", (value) => createMediaQuery(value));
matchVariant("ifndef", (value) => createNegativeMediaQuery(value));
}
if (typeof addVariant === "function") {
for (const variant of staticVariants) {
const query = variant.negative ? createNegativeMediaQuery(variant.value) : createMediaQuery(variant.value);
addVariant(variant.name, query);
}
}
};
});
var css_macro_default = cssMacro;
export {
css_macro_default as default
};