UNPKG

@kubit-ui-web/react-components

Version:

Kubit React Components is a customizable, accessible library of React web components, designed to enhance your application's user experience

34 lines 3.44 kB
"use strict"; var __importDefault = (this && this.__importDefault) || function (mod) { return (mod && mod.__esModule) ? mod : { "default": mod }; }; Object.defineProperty(exports, "__esModule", { value: true }); exports.EmptyStateStandAlone = void 0; const jsx_runtime_1 = require("react/jsx-runtime"); const react_1 = __importDefault(require("react")); const button_1 = require("../../components/button/button"); const buttonIconPosition_1 = require("../../components/button/types/buttonIconPosition"); const elementOrIllustration_1 = require("../../components/elementOrIllustration/elementOrIllustration"); const link_1 = require("../../components/link/link"); const text_1 = require("../../components/text/text"); const elementOrIcon_1 = require("../elementOrIcon/elementOrIcon"); const component_1 = require("../text/types/component"); const decoration_1 = require("../text/types/decoration"); // styles const emptyState_styled_1 = require("./emptyState.styled"); const EmptyStateStandAloneComponent = ({ dataTestId = 'empty-state', ...props }, ref) => { const isHorizontalOrientation = props.variant === 'HORIZONTAL'; const buildIconOrIllustration = () => { if (props.illustration) { return ((0, jsx_runtime_1.jsx)(elementOrIllustration_1.ElementOrIllustration, { customIllustrationStyles: props.styles?.illustration, ...props.illustration })); } else if (props.icon?.icon) { return (0, jsx_runtime_1.jsx)(elementOrIcon_1.ElementOrIcon, { customIconStyles: props.styles?.icon, ...props.icon }); } return null; }; return ((0, jsx_runtime_1.jsxs)(emptyState_styled_1.EmptyStateStyled, { ref: ref, "data-testid": dataTestId, isHorizontalOrientation: isHorizontalOrientation, styles: props.styles, children: [buildIconOrIllustration(), (0, jsx_runtime_1.jsxs)(emptyState_styled_1.TextSectionStyled, { styles: props.styles, children: [props.title?.content && ((0, jsx_runtime_1.jsx)(emptyState_styled_1.EmptyStateTitleWrapperStyled, { styles: props.styles, children: (0, jsx_runtime_1.jsx)(text_1.Text, { component: component_1.TextComponentType.STRONG, customTypography: props.styles?.title, ...props.title, children: props.title.content }) })), (0, jsx_runtime_1.jsx)(emptyState_styled_1.EmptyStateDescriptionWrapperStyled, { styles: props.styles, children: typeof props.subtitle.content === 'string' ? ((0, jsx_runtime_1.jsx)(text_1.Text, { component: component_1.TextComponentType.PARAGRAPH, customTypography: props.styles?.subtitle, ...props.subtitle, children: props.subtitle.content })) : (props.subtitle.content) })] }), (0, jsx_runtime_1.jsxs)(emptyState_styled_1.ActionSectionStyled, { styles: props.styles, children: [props.button?.content && ((0, jsx_runtime_1.jsx)(emptyState_styled_1.ButtonWrapperStyled, { styles: props.styles, children: (0, jsx_runtime_1.jsx)(button_1.Button, { iconPosition: buttonIconPosition_1.IconPositionType.LEFT, size: props.styles?.buttonSize, ...props.button, children: props.button.content }) })), props.link?.content && ((0, jsx_runtime_1.jsx)("div", { children: (0, jsx_runtime_1.jsx)(link_1.Link, { decoration: decoration_1.TextDecorationType.UNDERLINE, ...props.link, children: props.link.content }) }))] })] })); }; const EmptyStateStandAlone = react_1.default.forwardRef(EmptyStateStandAloneComponent); exports.EmptyStateStandAlone = EmptyStateStandAlone; //# sourceMappingURL=emptyStateStandAlone.js.map