From e3a965bcc9d605e8d3695424f28eb4e5c6667f21 Mon Sep 17 00:00:00 2001 From: Bruno Quaresma Date: Mon, 27 Mar 2023 08:32:20 -0300 Subject: [PATCH] fix(site): Add page header into permissions page (#6760) --- .../TemplateSettingsPage.tsx | 5 - .../TemplatePermissionsPageView.tsx | 365 +++++++++--------- 2 files changed, 187 insertions(+), 183 deletions(-) diff --git a/site/src/pages/TemplateSettingsPage/TemplateGeneralSettingsPage/TemplateSettingsPage.tsx b/site/src/pages/TemplateSettingsPage/TemplateGeneralSettingsPage/TemplateSettingsPage.tsx index bc36a6df36..b2714d4a7a 100644 --- a/site/src/pages/TemplateSettingsPage/TemplateGeneralSettingsPage/TemplateSettingsPage.tsx +++ b/site/src/pages/TemplateSettingsPage/TemplateGeneralSettingsPage/TemplateSettingsPage.tsx @@ -1,7 +1,6 @@ import { useMutation } from "@tanstack/react-query" import { updateTemplateMeta } from "api/api" import { UpdateTemplateMeta } from "api/typesGenerated" -import { useDashboard } from "components/Dashboard/DashboardProvider" import { displaySuccess } from "components/GlobalSnackbar/utils" import { FC } from "react" import { Helmet } from "react-helmet-async" @@ -16,9 +15,6 @@ export const TemplateSettingsPage: FC = () => { const { t } = useTranslation("templateSettingsPage") const navigate = useNavigate() const { template } = useTemplateSettingsContext() - const { entitlements } = useDashboard() - const canSetMaxTTL = - entitlements.features["advanced_template_scheduling"].enabled const { mutate: updateTemplate, isLoading: isSubmitting, @@ -38,7 +34,6 @@ export const TemplateSettingsPage: FC = () => { {pageTitle([template.name, t("title")])} - - - "members" in value - ? onAddGroup(value, role, resetAutocomplete) - : onAddUser(value, role, resetAutocomplete) - } - /> - - - - - - Member - Role - - - - - - - - - - - - - - - - - {templateACL?.group.map((group) => ( - - - - } - title={group.name} - subtitle={getGroupSubtitle(group)} + <> + + Permissions + + + + + + "members" in value + ? onAddGroup(value, role, resetAutocomplete) + : onAddUser(value, role, resetAutocomplete) + } + /> + + +
+ + + Member + Role + + + + + + + + + + + + - - - - { - onUpdateGroup( - group, - event.target.value as TemplateRole, - ) - }} - /> - - -
{group.role}
-
-
-
- - - - onRemoveGroup(group), - disabled: false, - }, - ]} - /> - -
- ))} - - {templateACL?.users.map((user) => ( - - - - - - - - { - onUpdateUser( - user, - event.target.value as TemplateRole, - ) - }} - /> - - -
{user.role}
-
-
-
- - - - onRemoveUser(user), - disabled: false, - }, - ]} +
+ + {templateACL?.group.map((group) => ( + + + + } + title={group.name} + subtitle={getGroupSubtitle(group)} /> - - - - ))} - -
-
-
-
- + + + + + { + onUpdateGroup( + group, + event.target.value as TemplateRole, + ) + }} + /> + + +
{group.role}
+
+
+
+ + + + onRemoveGroup(group), + disabled: false, + }, + ]} + /> + + + + ))} + + {templateACL?.users.map((user) => ( + + + + + + + + { + onUpdateUser( + user, + event.target.value as TemplateRole, + ) + }} + /> + + +
{user.role}
+
+
+
+ + + + onRemoveUser(user), + disabled: false, + }, + ]} + /> + + +
+ ))} + + + + + + + ) } -export const useStyles = makeStyles((theme) => { - return { - select: { - // Match button small height - height: 36, - fontSize: 14, - width: 100, - }, +export const useStyles = makeStyles((theme) => ({ + select: { + // Match button small height + height: 36, + fontSize: 14, + width: 100, + }, - updateSelect: { - margin: 0, - // Set a fixed width for the select. It avoids selects having different sizes - // depending on how many roles they have selected. - width: theme.spacing(25), + updateSelect: { + margin: 0, + // Set a fixed width for the select. It avoids selects having different sizes + // depending on how many roles they have selected. + width: theme.spacing(25), - "& .MuiSelect-root": { - // Adjusting padding because it does not have label - paddingTop: theme.spacing(1.5), - paddingBottom: theme.spacing(1.5), - - ".secondary": { - display: "none", - }, - }, - }, - - role: { - textTransform: "capitalize", - }, - - menuItem: { - lineHeight: "140%", + "& .MuiSelect-root": { + // Adjusting padding because it does not have label paddingTop: theme.spacing(1.5), paddingBottom: theme.spacing(1.5), - whiteSpace: "normal", - inlineSize: "250px", - }, - menuItemSecondary: { - fontSize: 14, - color: theme.palette.text.secondary, + ".secondary": { + display: "none", + }, }, - } -}) + }, + + role: { + textTransform: "capitalize", + }, + + menuItem: { + lineHeight: "140%", + paddingTop: theme.spacing(1.5), + paddingBottom: theme.spacing(1.5), + whiteSpace: "normal", + inlineSize: "250px", + }, + + menuItemSecondary: { + fontSize: 14, + color: theme.palette.text.secondary, + }, + + pageHeader: { + paddingTop: 0, + }, +}))