import { jsx as i, jsxs as t } from "react/jsx-runtime";
import { forwardRef as N } from "react";
import { c as v } from "./button-DBX_tvfJ.mjs";
import { G as $ } from "./grid-DGnCQgwf.mjs";
import { a as g } from "./heading-gqtQNo5n.mjs";
import { r as x } from "./close.es-BPmk2wkU.mjs";
import { r as y } from "./info.es-u0pS2u7W.mjs";
import { c as z } from "./bind-CU-R61T-.mjs";
const B = {
  "purpur-notification-banner": "_purpur-notification-banner_llblm_1",
  "purpur-notification-banner__container": "_purpur-notification-banner__container_llblm_6",
  "purpur-notification-banner__content": "_purpur-notification-banner__content_llblm_11",
  "purpur-notification-banner__icon": "_purpur-notification-banner__icon_llblm_16",
  "purpur-notification-banner__heading": "_purpur-notification-banner__heading_llblm_19",
  "purpur-notification-banner__heading--no-overlap": "_purpur-notification-banner__heading--no-overlap_llblm_22",
  "purpur-notification-banner__close-button": "_purpur-notification-banner__close-button_llblm_25"
}, r = z.bind(B), n = "purpur-notification-banner", j = N(
  ({
    ["data-testid"]: a,
    children: _,
    className: c,
    closeButtonAriaLabel: l,
    description: s,
    hideIcon: p,
    icon: e,
    link: u,
    onClose: o,
    titleTag: m = "h4",
    title: b,
    ...f
  }, d) => {
    const h = r(c, n);
    return /* @__PURE__ */ i("div", { ...f, className: h, role: "alert", ref: d, "data-testid": a, children: /* @__PURE__ */ i($, { children: /* @__PURE__ */ t("div", { className: r(`${n}__container`), children: [
      p ? null : e ? /* @__PURE__ */ i("span", { className: r(`${n}__icon`), children: e }) : /* @__PURE__ */ i(y, { className: r(`${n}__icon`), size: "sm" }),
      /* @__PURE__ */ t("div", { className: r(`${n}__content`), children: [
        /* @__PURE__ */ i(
          g,
          {
            tag: m,
            variant: "subsection-100",
            className: r([
              `${n}__heading`,
              { [`${n}__heading--no-overlap`]: o }
            ]),
            children: b
          }
        ),
        /* @__PURE__ */ t("div", { children: [
          s,
          " ",
          u
        ] }),
        _
      ] }),
      o && /* @__PURE__ */ i(
        v,
        {
          "data-testid": a ? `${a}-close-button` : void 0,
          variant: "tertiary-purple",
          size: "sm",
          iconOnly: !0,
          "aria-label": l,
          onClick: o,
          className: r(`${n}__close-button`),
          children: /* @__PURE__ */ i(x, { size: "sm" })
        }
      )
    ] }) }) });
  }
);
j.displayName = "NotificationBanner";
export {
  j as N
};
//# sourceMappingURL=notification-banner-BY2iZOIa.mjs.map
