@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.61 kB
JavaScript
import{jsx as i,jsxs as r}from"react/jsx-runtime";import t from"@mui/icons-material/Check";import e from"@mui/material/Divider";import a from"@mui/material/List";import o from"@mui/material/ListItem";import m from"@mui/material/ListItemButton";import l from"@mui/material/ListItemText";import n from"@mui/material/ListItemAvatar";import s from"@mui/material/ListItemIcon";import p from"@mui/material/Avatar";import{BottomSheet as d}from"../../../common/BottomSheet/BottomSheet.js";const c="NexusOrgSheet",h=h=>{const{open:u,shareConfig:y,handleClose:f}=h,{orgOptions:g,selectedOrg:v,editable:b,onOrgChange:x,extraActions:C=[]}=y,$=g?.find((i=>i.value===v));return i(d,{className:`${c}-root`,onClose:f,open:u,children:r(a,{"data-testid":`${c}-list`,children:[$&&r(o,{sx:{height:64},children:[i(n,{children:i(p,{sx:{bgcolor:"background.alternate",color:"primary.light",width:40,height:40,mr:4},children:$?.icon})}),i(l,{"data-testid":`${c}-access-control-option`,primary:$?.label,primaryTypographyProps:{variant:"body1",style:{whiteSpace:"nowrap",overflow:"hidden",textOverflow:"ellipsis"}}})]}),b&&g?.map((e=>r(m,{"data-testid":`${c}-access-control-${e.value}`,dense:!0,onClick:()=>{x?.(e.value),f()},children:[i(s,{sx:{minWidth:35},children:i(t,{sx:{visibility:v===e.value?"visible":"hidden"}})}),i(l,{primary:e.label,primaryTypographyProps:{variant:"body2"}})]},e.value))),b&&C.length>0&&i(e,{}),C.map((r=>i(m,{"data-testid":`${c}-extra-${r.label}`,dense:!0,onClick:()=>{r.onClick(),f()},children:i(l,{primary:r.label,primaryTypographyProps:{variant:"body2"}})},r.label)))]})})};export{h as MobileOrgSheet};