UNPKG

@hitachivantara/uikit-react-core

Version:

Core React components for the NEXT Design System.

55 lines (54 loc) 1.55 kB
import { jsx } from "react/jsx-runtime"; import { forwardRef } from "react"; import { useDefaultProps } from "@hitachivantara/uikit-react-utils"; import { HvCallout } from "../../utils/Callout.js"; import { useClasses } from "./SnackbarContent.styles.js"; import { staticClasses } from "./SnackbarContent.styles.js"; const isActionGeneric = (action) => action && typeof action === "object" && "id" in action && "label" in action; const HvSnackbarContent = forwardRef(function HvSnackbarContent2(props, ref) { const { className, id, classes: classesProp, label, variant = "default", showIcon, customIcon, action, actionCallback, // TODO - remove in v6 onAction, onClose, ...others } = useDefaultProps("HvSnackbarContent", props); const { classes, cx } = useClasses(classesProp); return /* @__PURE__ */ jsx( HvCallout, { ref, id, variant, classes: { root: cx(classes.root, classes[variant], className), message: cx(classes.message, classes.messageSpan), messageIcon: classes.iconVariant, messageContent: classes.messageText, action: classes.action }, showIcon, customIcon, actions: isActionGeneric(action) ? [action] : action, onClose, onAction: (evt, action2) => { onAction?.(evt, action2); actionCallback?.(evt, id, action2); }, ...others, children: label } ); }); export { HvSnackbarContent, staticClasses as snackbarContentClasses };