@vectara/vectara-ui
Version:
Vectara's design system, codified as a React and Sass component library
25 lines (24 loc) • 1.23 kB
JavaScript
import { jsx as _jsx, jsxs as _jsxs } from "react/jsx-runtime";
import { BiCheck, BiError, BiInfoCircle, BiSolidHand } from "react-icons/bi";
import { VuiFlexContainer } from "../flex/FlexContainer";
import { VuiFlexItem } from "../flex/FlexItem";
import { VuiIcon } from "../icon/Icon";
import { VuiText } from "../typography/Text";
import { VuiTextColor } from "../typography/TextColor";
const statusToColor = {
error: "danger",
warning: "warning",
success: "success",
info: "primary"
};
const statusToIcon = {
error: _jsx(BiError, {}),
warning: _jsx(BiSolidHand, {}),
success: _jsx(BiCheck, {}),
info: _jsx(BiInfoCircle, {})
};
export const VuiStatus = ({ status, label }) => {
const color = statusToColor[status];
const icon = statusToIcon[status];
return (_jsxs(VuiFlexContainer, Object.assign({ alignItems: "center", spacing: "xs" }, { children: [_jsx(VuiFlexItem, Object.assign({ grow: false }, { children: _jsx(VuiIcon, Object.assign({ color: color }, { children: icon })) })), _jsx(VuiFlexItem, Object.assign({ grow: false }, { children: _jsx(VuiText, { children: _jsx("p", { children: _jsx(VuiTextColor, Object.assign({ color: color }, { children: label })) }) }) }))] })));
};