@hitachivantara/uikit-react-core
Version:
Core React components for the NEXT Design System.
54 lines (53 loc) • 1.7 kB
JavaScript
;
Object.defineProperty(exports, Symbol.toStringTag, { value: "Module" });
const jsxRuntime = require("react/jsx-runtime");
const React = require("react");
const uikitReactUtils = require("@hitachivantara/uikit-react-utils");
const Callout = require("../../utils/Callout.cjs");
const SnackbarContent_styles = require("./SnackbarContent.styles.cjs");
const isActionGeneric = (action) => action && typeof action === "object" && "id" in action && "label" in action;
const HvSnackbarContent = React.forwardRef(function HvSnackbarContent2(props, ref) {
const {
className,
id,
classes: classesProp,
label,
variant = "default",
showIcon,
customIcon,
action,
actionCallback,
// TODO - remove in v6
onAction,
onClose,
...others
} = uikitReactUtils.useDefaultProps("HvSnackbarContent", props);
const { classes, cx } = SnackbarContent_styles.useClasses(classesProp);
return /* @__PURE__ */ jsxRuntime.jsx(
Callout.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
}
);
});
exports.snackbarContentClasses = SnackbarContent_styles.staticClasses;
exports.HvSnackbarContent = HvSnackbarContent;