UNPKG

@postenbring/hedwig-react

Version:

React components for [Hedwig Design System](https://github.com/bring/hedwig-design-system).

244 lines (242 loc) • 8.36 kB
import { __objRest, __spreadProps, __spreadValues } from "./chunk-YOSPWY5K.mjs"; // src/card/card.tsx import { forwardRef } from "react"; import { clsx } from "@postenbring/hedwig-css/typed-classname"; import { Slot } from "@radix-ui/react-slot"; import { jsx } from "react/jsx-runtime"; var CardMedia = forwardRef( (_a, ref) => { var _b = _a, { asChild, className, children } = _b, rest = __objRest(_b, ["asChild", "className", "children"]); const Component = asChild ? Slot : "div"; return /* @__PURE__ */ jsx(Component, __spreadProps(__spreadValues({}, rest), { className: clsx("hds-card__media", className), ref, children })); } ); CardMedia.displayName = "Card.Media"; var CardMediaImg = forwardRef( (_a, ref) => { var _b = _a, { asChild, variant, className } = _b, rest = __objRest(_b, ["asChild", "variant", "className"]); const Component = asChild ? Slot : "img"; return /* @__PURE__ */ jsx( Component, __spreadProps(__spreadValues({}, rest), { className: clsx( "hds-card__media__img", { "hds-card__img__crop": variant === "crop" }, className ), ref }) ); } ); CardMediaImg.displayName = "Card.MediaImg"; var CardBody = forwardRef( (_a, ref) => { var _b = _a, { asChild, className, children } = _b, rest = __objRest(_b, ["asChild", "className", "children"]); const Component = asChild ? Slot : "div"; return /* @__PURE__ */ jsx(Component, __spreadProps(__spreadValues({}, rest), { className: clsx("hds-card__body", className), ref, children: /* @__PURE__ */ jsx("div", { className: clsx("hds-card__centerbody", className), children }) })); } ); CardBody.displayName = "Card.Body"; var CardBodyHeader = forwardRef((_a, ref) => { var _b = _a, { as: Tag, asChild, className, children } = _b, rest = __objRest(_b, ["as", "asChild", "className", "children"]); const Component = asChild ? Slot : Tag; return /* @__PURE__ */ jsx( Component, __spreadProps(__spreadValues({}, rest), { className: clsx("hds-card__body-header", className), ref, children }) ); }); CardBodyHeader.displayName = "Card.BodyHeader"; var CardBodyHeaderOverline = forwardRef( (_a, ref) => { var _b = _a, { asChild, className, children } = _b, rest = __objRest(_b, ["asChild", "className", "children"]); const Component = asChild ? Slot : "span"; return /* @__PURE__ */ jsx( Component, __spreadProps(__spreadValues({}, rest), { className: clsx("hds-card__body-header-overline", className), ref, children }) ); } ); CardBodyHeaderOverline.displayName = "Card.BodyHeaderOverline"; var CardBodyHeaderTitle = forwardRef( (_a, ref) => { var _b = _a, { asChild, className, children } = _b, rest = __objRest(_b, ["asChild", "className", "children"]); const Component = asChild ? Slot : "div"; return /* @__PURE__ */ jsx( Component, __spreadProps(__spreadValues({}, rest), { className: clsx("hds-card__body-header-title", className), ref, children }) ); } ); CardBodyHeaderTitle.displayName = "Card.BodyHeaderTitle"; var CardBodyDescription = forwardRef( (_a, ref) => { var _b = _a, { asChild, className, children } = _b, rest = __objRest(_b, ["asChild", "className", "children"]); const Component = asChild ? Slot : "p"; return /* @__PURE__ */ jsx( Component, __spreadProps(__spreadValues({}, rest), { className: clsx("hds-card__body-description", className), ref, children }) ); } ); CardBodyDescription.displayName = "Card.BodyDescription"; var CardBodyAction = forwardRef( (_a, ref) => { var _b = _a, { asChild, className, children } = _b, rest = __objRest(_b, ["asChild", "className", "children"]); const Component = asChild ? Slot : "div"; return /* @__PURE__ */ jsx( Component, __spreadProps(__spreadValues({}, rest), { className: clsx("hds-card__body-action", className), ref, children }) ); } ); CardBodyAction.displayName = "Card.BodyAction"; var CardBodyActionRow = forwardRef( (_a, ref) => { var _b = _a, { asChild, className, children } = _b, rest = __objRest(_b, ["asChild", "className", "children"]); const Component = asChild ? Slot : "div"; return /* @__PURE__ */ jsx( Component, __spreadProps(__spreadValues({}, rest), { className: clsx("hds-card__body-action-row", className), ref, children }) ); } ); CardBodyActionRow.displayName = "Card.BodyActionRow"; var CardBodyActionArrow = forwardRef( (_a, ref) => { var _b = _a, { asChild, className, direction } = _b, rest = __objRest(_b, ["asChild", "className", "direction"]); const Component = asChild ? Slot : "span"; return /* @__PURE__ */ jsx( Component, __spreadProps(__spreadValues({}, rest), { className: clsx( "hds-card__body-action-arrow", { "hds-card__body-action-arrow-up-right": direction === "up-right" }, className ), ref }) ); } ); CardBodyActionArrow.displayName = "Card.BodyActionArrow"; var convertDeprecatedColor = (color) => { switch (color) { case "lighter-brand": return { theme: "default" }; case "light-grey-fill": return { theme: "base", dataColor: "neutral" }; case "white": return { theme: "default", dataColor: "neutral" }; case "dark": return { theme: "base" }; case "darker": return { theme: "tinted", dataColorScheme: "dark" }; default: return {}; } }; var Card = forwardRef( (_a, ref) => { var _b = _a, { as: Tag = "section", asChild, className, children, variant = "slim", "data-color": dataColorAttr, theme = "default", color, imagePosition } = _b, rest = __objRest(_b, [ "as", "asChild", "className", "children", "variant", "data-color", "theme", "color", "imagePosition" ]); const Component = asChild ? Slot : Tag; const { theme: themeFromDeprecated, dataColor: dataColorFromDeprecated, dataColorScheme: dataColorSchemeFromDeprecated } = convertDeprecatedColor(color != null ? color : variant === "focus" ? "darker" : void 0); return /* @__PURE__ */ jsx( Component, __spreadProps(__spreadValues(__spreadValues(__spreadValues(__spreadValues({}, rest), dataColorAttr ? { "data-color": dataColorAttr } : {}), dataColorFromDeprecated ? { "data-color": dataColorFromDeprecated } : {}), dataColorSchemeFromDeprecated ? { "data-color-scheme": dataColorSchemeFromDeprecated } : {}), { className: clsx( "hds-card", { "hds-card--full-width": variant === "full-width" }, { "hds-card--miniature": variant === "miniature" }, { "hds-card--focus": variant === "focus" }, // @deprecated { "hds-card--slim": variant === "slim" }, { "hds-card--theme-default": (themeFromDeprecated != null ? themeFromDeprecated : theme) === "default" }, { "hds-card--theme-tinted": (themeFromDeprecated != null ? themeFromDeprecated : theme) === "tinted" }, { "hds-card--theme-base": (themeFromDeprecated != null ? themeFromDeprecated : theme) === "base" }, { "hds-card--image-position-right": imagePosition === "right" }, className ), ref, children: variant === "full-width" || variant === "focus" ? /* @__PURE__ */ jsx("div", { className: clsx("hds-card__layoutwrapper", className), children }) : children }) ); } ); Card.displayName = "Card"; Card.Media = CardMedia; Card.MediaImg = CardMediaImg; Card.Body = CardBody; Card.BodyHeader = CardBodyHeader; Card.BodyHeaderOverline = CardBodyHeaderOverline; Card.BodyHeaderTitle = CardBodyHeaderTitle; Card.BodyDescription = CardBodyDescription; Card.BodyAction = CardBodyAction; Card.BodyActionRow = CardBodyActionRow; Card.BodyActionArrow = CardBodyActionArrow; export { CardMedia, CardMediaImg, CardBody, CardBodyHeader, CardBodyHeaderOverline, CardBodyHeaderTitle, CardBodyDescription, CardBodyAction, CardBodyActionRow, CardBodyActionArrow, Card }; //# sourceMappingURL=chunk-TTDR3NZL.mjs.map