/
proc
/
3430793
/
root
/
snap
/
lxd
/
current
/
share
/
lxd-ui
/
assets
/
File Upload :
llllll
Current File: //proc/3430793/root/snap/lxd/current/share/lxd-ui/assets/GroupSelection-FgXPdk2y.js
import{r as C,ah as k,j as a,d as o,L as T}from"./index-dL2n30-Z.js";import{P as L}from"./PermissionGroupsFilter-LHLrXwA4.js";import{S as M}from"./ScrollableContainer-ceiHesUW.js";import{S as P}from"./ScrollableTable-CQDmfMtz.js";import{S as R}from"./SelectableMainTable-DeGTWeiA.js";import{u as $}from"./useSortTableData-8PACcjA7.js";const F=({groups:l,modifiedGroups:i,parentItemName:r,parentItems:s,selectedGroups:c,indeterminateGroups:b,setSelectedGroups:x,toggleGroup:m,scrollDependencies:d,preselectedGroups:t})=>{const[n,N]=C.useState(""),w=[{content:"Group",sortKey:"name",className:"name"},{content:"Description",sortKey:"description",className:"description"},{content:"","aria-label":"Modified status",className:"modified-status"}],S=l.filter(e=>e.name.toLowerCase().includes(n)||!n).map(e=>{var h;const j=c.has(e.name)&&i.has(e.name),y=!c.has(e.name)&&i.has(e.name),u=((s==null?void 0:s.length)||0)>1?`all selected ${k(r,2)}`:`${r} ${(h=s==null?void 0:s[0])==null?void 0:h.name}`,g=j?`Group will be added to ${u}`:y?`Group will be removed from ${u}`:"",f=()=>{m(e.name)};return{key:e.name,name:e.name,className:"u-row",columns:[{content:e.name,title:e.name,onClick:f,role:"rowheader",className:"name u-truncate clickable-cell","aria-label":"Name"},{content:a.jsx("span",{children:e.description||""}),onClick:f,role:"cell",className:"description clickable-cell","aria-label":"Description",title:e.description},{content:i.has(e.name)&&a.jsx(o.Icon,{name:"status-in-progress-small"}),role:"cell","aria-label":"Modified status",className:"modified-status u-align--right",title:r?g:void 0}],sortData:{name:e.name.toLowerCase(),description:e.description.toLowerCase(),isPreselected:t==null?void 0:t.has(e.name)}}}),{rows:p}=$({rows:S,defaultSort:t?"isPreselected":"name",defaultSortDirection:t?"descending":"ascending"});return a.jsxs(M,{dependencies:d,belowIds:["panel-footer"],className:"group-selection",children:[a.jsx(L,{onChange:N,value:n}),l.length?a.jsx(P,{dependencies:[...d,n],tableId:"group-selection-table",belowIds:["panel-footer"],children:a.jsx(R,{id:"group-selection-table",className:"group-selection-table",headers:w,rows:p,sortable:!0,emptyStateMsg:"No groups found",itemName:"group",parentName:"",selectedNames:Array.from(c),setSelectedNames:x,disabledNames:[],filteredNames:l.map(e=>e.name),indeterminateNames:Array.from(b??new Set),onToggleRow:m,hideContextualMenu:!0})}):a.jsxs(o.EmptyState,{className:"empty-state empty-state__full-width",image:a.jsx(o.Icon,{name:"user-group",className:"empty-state-icon"}),title:"No groups found",children:[a.jsx("p",{children:"Groups are an easy way to manage the structured assignment of permissions."}),a.jsxs(T,{to:"/ui/permissions/groups?panel=create-groups",children:["Create group",a.jsx(o.Icon,{className:"external-link-icon",name:"external-link"})]})]})]})};export{F as G};
Copyright ©2k19 -
Hexid
|
Tex7ure