UNPKG

@nexusui/components

Version:

These are custom components specially-developed for NexusUI applications. They will make your life easier by giving you out-of-the-box implementations for various high-level UI elements that you can drop directly into your application.

2 lines (1 loc) 971 B
"use strict";Object.defineProperty(exports,"__esModule",{value:!0});var e=require("react/jsx-runtime"),t=require("react"),a=require("@mui/material/Stack"),s=require("@mui/material/Box"),r=require("../../util/functions/index.js"),u=require("../../StatusBadge/StatusBadge.container.js");function i(e){return e&&"object"==typeof e&&"default"in e?e:{default:e}}var d=i(a),n=i(s);exports.useCardBadges=a=>{const{statusBadges:s,skip:i=!s,classPrefix:c,sx:l}=a,o=t.useCallback(((t,a)=>r.isReactNode(t)?e.jsx(n.default,{"data-testid":`${c}-statusBadge`,className:`${c}-statusBadge`,children:t},a):e.jsx(u.StatusBadge,{"data-testid":`${c}-statusBadge`,...t},a)),[c]);return{renderStatusBadges:t.useMemo((()=>{if(i)return null;const t=(Array.isArray(s)?s:[s]).map(o);return e.jsx(d.default,{direction:"row",spacing:2,"data-testid":`${c}-statusBadgeContainer`,className:`${c}-statusBadgeContainer`,alignItems:"center",justifyContent:"flex-start",sx:l,children:t})}),[o,s,l,c,i])}};