@yamada-ui/react
Version:
React UI components of the Yamada, by the Yamada, for the Yamada built with React and Emotion
77 lines (75 loc) • 2.24 kB
JavaScript
import { utils_exports } from "../../utils/index.js";
import { analyzeCSSValue, isCSSVar } from "./utils.js";
import { animation, keyframes } from "./animation.js";
import { colorMix } from "./color-mix.js";
import { generateAtRule } from "./at-rule.js";
import { generateCalc } from "./calc.js";
import { colorScheme } from "./color-scheme.js";
import { display } from "./display.js";
import { generateFilter } from "./filter.js";
import { generateFocusRing } from "./focus-ring.js";
import { generateFunction } from "./function.js";
import { gradient } from "./gradient.js";
import { grid } from "./grid.js";
import { generateStyle } from "./style.js";
import { generateToken } from "./token.js";
import { transform } from "./transform.js";
import { generateTransition } from "./transition.js";
//#region src/core/css/config.ts
const transforms = {
style: generateStyle,
colorScheme,
animation,
bgClip: (value, { prev }) => {
if (value === "text") {
prev ??= {};
prev.color ??= "transparent";
return value;
} else return value;
},
calc: generateCalc,
colorMix,
container: generateAtRule("container"),
content: (value) => {
if ((0, utils_exports.isObject)(value)) return {
content: "''",
...value
};
else return value;
},
deg: (value) => {
if (isCSSVar(value) || value == null) return value;
return typeof value === "string" && !value.endsWith("deg") || (0, utils_exports.isNumber)(value) ? `${value}deg` : value;
},
display,
filter: generateFilter,
focusRing: generateFocusRing,
fraction: (value) => {
if ((0, utils_exports.isNumber)(value) && value <= 1) value = `${value * 100}%`;
return value;
},
function: generateFunction,
gradient,
grid,
keyframes,
media: generateAtRule("media"),
px: (value) => {
if (value == null) return value;
const { unitless } = analyzeCSSValue(value);
return unitless || (0, utils_exports.isNumber)(value) ? `${value}px` : value;
},
supports: generateAtRule("supports"),
token: generateToken,
transform,
transition: generateTransition,
truncated: (value) => {
if (value) return {
overflow: "hidden",
textOverflow: "ellipsis",
whiteSpace: "nowrap"
};
}
};
//#endregion
export { transforms };
//# sourceMappingURL=config.js.map