UNPKG

@mantine/core

Version:

React components library focused on usability, accessibility and developer experience

58 lines (57 loc) 2.25 kB
"use client"; import { getFontSize, getLineHeight } from "../../core/utils/get-size/get-size.mjs"; import { createVarsResolver } from "../../core/styles-api/create-vars-resolver/create-vars-resolver.mjs"; import { getGradient } from "../../core/MantineProvider/color-functions/get-gradient/get-gradient.mjs"; import { useProps } from "../../core/MantineProvider/use-props/use-props.mjs"; import { useStyles } from "../../core/styles-api/use-styles/use-styles.mjs"; import { polymorphicFactory } from "../../core/factory/polymorphic-factory.mjs"; import { Box } from "../../core/Box/Box.mjs"; import Text_module_default from "./Text.module.mjs"; import { jsx } from "react/jsx-runtime"; //#region packages/@mantine/core/src/components/Text/Text.tsx function getTextTruncate(truncate) { if (truncate === "start") return "start"; if (truncate === "end" || truncate) return "end"; } const defaultProps = { inherit: false }; const varsResolver = createVarsResolver((theme, { variant, lineClamp, gradient, size }) => ({ root: { "--text-fz": getFontSize(size), "--text-lh": getLineHeight(size), "--text-gradient": variant === "gradient" ? getGradient(gradient, theme) : void 0, "--text-line-clamp": typeof lineClamp === "number" ? lineClamp.toString() : void 0 } })); const Text = polymorphicFactory((_props) => { const props = useProps("Text", defaultProps, _props); const { lineClamp, truncate, inline, inherit, gradient, span, __staticSelector, vars, className, style, classNames, styles, unstyled, variant, mod, size, attributes, ...others } = props; return /* @__PURE__ */ jsx(Box, { ...useStyles({ name: ["Text", __staticSelector], props, classes: Text_module_default, className, style, classNames, styles, unstyled, attributes, vars, varsResolver })("root", { focusable: true }), component: span ? "span" : "p", variant, mod: [{ "data-truncate": getTextTruncate(truncate), "data-line-clamp": typeof lineClamp === "number", "data-inline": inline, "data-inherit": inherit }, mod], size, ...others }); }); Text.classes = Text_module_default; Text.varsResolver = varsResolver; Text.displayName = "@mantine/core/Text"; //#endregion export { Text }; //# sourceMappingURL=Text.mjs.map