|
1 | 1 | importGroupAddfrom"@mui/icons-material/GroupAddOutlined"; |
2 | | -importPersonAddfrom"@mui/icons-material/PersonAddOutlined"; |
3 | 2 | importButtonfrom"@mui/material/Button"; |
4 | 3 | import{Loader}from"components/Loader/Loader"; |
5 | 4 | import{Margins}from"components/Margins/Margins"; |
6 | 5 | import{PageHeader,PageHeaderTitle}from"components/PageHeader/PageHeader"; |
7 | | -import{TAB_PADDING_Y,TabLink,Tabs,TabsList}from"components/Tabs/Tabs"; |
8 | 6 | import{useAuthenticated}from"contexts/auth/RequireAuth"; |
9 | | -import{useDashboard}from"modules/dashboard/useDashboard"; |
10 | 7 | import{useFeatureVisibility}from"modules/dashboard/useFeatureVisibility"; |
11 | | -import{linkToUsers}from"modules/navigation"; |
12 | 8 | import{typeFC,Suspense}from"react"; |
13 | | -import{ |
14 | | -Outlet, |
15 | | -LinkasRouterLink, |
16 | | -useLocation, |
17 | | -useNavigate, |
18 | | -}from"react-router-dom"; |
| 9 | +import{Outlet,LinkasRouterLink}from"react-router-dom"; |
19 | 10 |
|
20 | 11 | exportconstUsersLayout:FC=()=>{ |
21 | 12 | const{ permissions}=useAuthenticated(); |
22 | | -const{ showOrganizations}=useDashboard(); |
23 | | -constnavigate=useNavigate(); |
24 | 13 | constfeats=useFeatureVisibility(); |
25 | | -constlocation=useLocation(); |
26 | | -constactiveTab=location.pathname.endsWith("groups") ?"groups" :"users"; |
27 | 14 |
|
28 | 15 | return( |
29 | 16 | <> |
30 | 17 | <Margins> |
31 | 18 | <PageHeader |
32 | 19 | actions={ |
33 | | -<> |
34 | | -{permissions.createUser&&( |
35 | | -<Button |
36 | | -onClick={()=>{ |
37 | | -navigate("/users/create"); |
38 | | -}} |
39 | | -startIcon={<PersonAdd/>} |
40 | | -> |
41 | | -Create user |
42 | | -</Button> |
43 | | -)} |
| 20 | +<div> |
44 | 21 | {permissions.createGroup&&feats.template_rbac&&( |
45 | 22 | <Button |
46 | 23 | component={RouterLink} |
47 | 24 | startIcon={<GroupAdd/>} |
48 | | -to="/groups/create" |
| 25 | +to="/deployment/groups/create" |
49 | 26 | > |
50 | 27 | Create group |
51 | 28 | </Button> |
52 | 29 | )} |
53 | | -</> |
| 30 | +</div> |
54 | 31 | } |
55 | 32 | > |
56 | | -<PageHeaderTitle>Users</PageHeaderTitle> |
| 33 | +<PageHeaderTitle>Groups</PageHeaderTitle> |
57 | 34 | </PageHeader> |
58 | 35 | </Margins> |
59 | 36 |
|
60 | | -{!showOrganizations&&( |
61 | | -<Tabs |
62 | | -css={{marginBottom:40,marginTop:-TAB_PADDING_Y}} |
63 | | -active={activeTab} |
64 | | -> |
65 | | -<Margins> |
66 | | -<TabsList> |
67 | | -<TabLinkto={linkToUsers}value="users"> |
68 | | -Users |
69 | | -</TabLink> |
70 | | -<TabLinkto="/groups"value="groups"> |
71 | | -Groups |
72 | | -</TabLink> |
73 | | -</TabsList> |
74 | | -</Margins> |
75 | | -</Tabs> |
76 | | -)} |
77 | | - |
78 | 37 | <Margins> |
79 | 38 | <Suspensefallback={<Loader/>}> |
80 | 39 | <Outlet/> |
|