@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.5 kB
JavaScript
import{jsx as e,jsxs as o}from"react/jsx-runtime";import r from"@mui/material/Stack";import i from"@mui/material/Avatar";import s from"@mui/material/Box";import{PermissionPicker as t}from"../PermissionPicker/PermissionPicker.component.js";import{useTranslate as a}from"../../../locales/index.js";import n from"../../locale.json.js";import{OrgPicker as l}from"../OrgPicker/OrgPicker.component.js";const m=m=>{const{orgShareConfig:c,onShowBottomSheet:d,isMobile:g=!1,...p}=m,h=a(n),b=Boolean(c?.visible),u={permissionLevels:c?.permissionLevels||[{value:"noAccess",label:h("no access")},{value:"readOnly",label:h("can view")},{value:"readWrite",label:h("can edit")}],permissionLevel:c?.permissionLevel||"noAccess",orgOptions:c?.orgOptions,selectedOrg:c?.selectedOrg,editable:c?.editable||!1,disabled:c?.disabled||!1,disabledMessage:c?.disabledMessage||"",onPermissionChange:c?.onPermissionChange||(()=>{}),onOrgChange:c?.onOrgChange||(()=>{})},O=b&&u.orgOptions&&u.orgOptions.find((e=>e.value===u.selectedOrg))?.icon;return e(r,{"data-testid":"NexusOrgShare-root",...p,children:b&&o(r,{"data-testid":"NexusOrgShare-org",direction:"row",alignItems:"center",sx:{mt:4,pl:2,py:2,cursor:g?"pointer":"default"},children:[e(i,{sx:{bgcolor:e=>`rgba(${e.vars.palette.primary.mainChannel} / 0.08)`,color:"primary.main",width:40,height:40,mr:2},children:O}),e(l,{...u,useBottomsheet:g,isMobile:g}),e(s,{sx:{flex:1}}),e(t,{...u,useBottomsheet:g,isMobile:g,showPermissionLabel:!0})]})})};export{m as OrgShare};