@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.15 kB
JavaScript
"use strict";Object.defineProperty(exports,"__esModule",{value:!0});var e=require("react/jsx-runtime"),i=require("@mui/material/Button"),r=require("@mui/material/Box"),t=require("@mui/material/Typography"),o=require("@mui/icons-material/ArrowDropDown"),s=require("@mui/icons-material/ArrowDropUp"),a=require("@mui/material/Tooltip");function n(e){return e&&"object"==typeof e&&"default"in e?e:{default:e}}var l=n(i),u=n(r),d=n(t),p=n(o),f=n(s),m=n(a);exports.PermissionButton=i=>{const{open:r,permission:t,onClick:o,disabled:s,disabledMessage:a,sx:n,...c}=i;return e.jsx(m.default,{PopperProps:{popperOptions:{modifiers:[{name:"offset",options:{offset:[0,-10]}}]}},title:a||t?.description,placement:"left",arrow:!0,children:e.jsx(u.default,{component:"span",children:e.jsx(l.default,{"data-testid":"NexusPermissionButton-root",endIcon:r?e.jsx(f.default,{}):e.jsx(p.default,{}),onClick:o,disabled:s,sx:[{maxWidth:t?.description?190:130},...Array.isArray(n)?n:[n]],...c,children:e.jsx(d.default,{sx:{fontSize:12,fontWeight:700,lineHeight:1.6,textOverflow:"ellipsis",whiteSpace:"nowrap",overflow:"hidden",textAlign:"left"},children:t?.label})})})})};