@brizy/ui
Version:
React elements in Brizy style
18 lines (17 loc) • 1.17 kB
JavaScript
import React, { useCallback } from "react";
import { classNames } from "../classNamesFn";
import AntTypographyTitle from "antd/lib/typography/Title";
import { getAlign, getTypographyTitleColor, getItalic } from "./utils";
export const TypographyTitle = props => {
const { code, level, underline, color, hoverColor, mark, align = "left", children, ellipsis, italic, onClick, } = props;
const className = classNames(getAlign(align), getItalic(italic))("typography__title", {
"typography__title__color-inherit": color === "inherit",
"typography__title__hoverColor-inherit": hoverColor === "inherit",
typography__title__hoverColor: color === "inherit" && hoverColor,
typography__hoverColor: hoverColor,
});
const _onClick = useCallback(() => {
onClick === null || onClick === void 0 ? void 0 : onClick();
}, [onClick]);
return (React.createElement(AntTypographyTitle, { className: className, code: code, level: level, underline: underline, mark: mark, ellipsis: ellipsis, style: getTypographyTitleColor(color, hoverColor) }, onClick ? React.createElement("span", { onClick: _onClick }, children) : children));
};