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) 1.04 kB
"use strict";Object.defineProperty(exports,"__esModule",{value:!0});var e=require("react/jsx-runtime"),t=require("react"),a=require("@mui/material/Button"),i=require("@mui/material/CardActions"),r=require("@mui/material/Stack"),n=require("../../util/functions/index.js");function s(e){return e&&"object"==typeof e&&"default"in e?e:{default:e}}var c=s(a),u=s(i),o=s(r);exports.useCardActions=a=>{const{actions:i,actionButtons:r,extraActions:s,padding:l=0,skip:d=!i&&!r,classPrefix:f}=a;return{renderActions:t.useMemo((()=>{if(d)return null;let t=null;return t=i||r?.map(((t,a)=>n.isReactNode(t)?t:e.jsx(c.default,{className:`${f}-action`,"data-testid":`${f}-action`,...t},`${f}-action-${a}`))),e.jsx(u.default,{sx:{flex:"0 0 auto",justifySelf:"flex-end",p:l},className:`${f}-actionsContainer`,"data-testid":`${f}-actionsContainer`,children:e.jsxs(o.default,{className:`${f}-actionsStack`,"data-testid":`${f}-actionsStack`,direction:"row",alignItems:"center",spacing:2,sx:{width:"100%",flex:"0 0 auto"},children:[t,s]})})}),[d,i,r,l,s,f])}};