@hitachivantara/uikit-react-core
Version:
Core React components for the NEXT Design System.
49 lines (48 loc) • 1.36 kB
JavaScript
import { jsxs } from "react/jsx-runtime";
import MuiDialogTitle from "@mui/material/DialogTitle";
import { useDefaultProps } from "@hitachivantara/uikit-react-utils";
import { iconVariant } from "../../utils/iconVariant.js";
import { useDialogContext } from "../context.js";
import { useClasses } from "./Title.styles.js";
import { staticClasses } from "./Title.styles.js";
import { HvTypography } from "../../Typography/Typography.js";
const HvDialogTitle = (props) => {
const {
classes: classesProp,
className,
children,
variant = "default",
showIcon = true,
customIcon,
...others
} = useDefaultProps("HvDialogTitle", props);
const { classes, cx } = useClasses(classesProp);
const { fullScreen } = useDialogContext();
const icon = customIcon || showIcon && iconVariant(variant);
return /* @__PURE__ */ jsxs(
HvTypography,
{
component: MuiDialogTitle,
variant: "title4",
className: cx(
classes.root,
classes.messageContainer,
{
[classes.fullscreen]: fullScreen,
[classes.textWithIcon]: icon,
[classes.titleText]: typeof children === "string"
},
className
),
...others,
children: [
icon,
children
]
}
);
};
export {
HvDialogTitle,
staticClasses as dialogTitleClasses
};