Keep user/group selection in permissions dialog (#1919)

In the dialog to add permissions for a repository, this will keep
the selection whether to add a user or a group after a new entry
has been added.
This commit is contained in:
René Pfeuffer
2022-01-18 09:51:04 +01:00
committed by GitHub
parent f2a1effc77
commit 4ed38d62f5
2 changed files with 9 additions and 2 deletions

View File

@@ -0,0 +1,2 @@
- type: changed
description: Keeps the selection whether to add a user or a group in the repository permission dialog ([#1919](https://github.com/scm-manager/scm-manager/pull/1919))

View File

@@ -77,7 +77,7 @@ const CreatePermissionForm: FC<Props> = ({
}) => {
const initialPermissionState = {
name: "",
role: availableRoles[0].name,
role: "READ",
verbs: [],
groupPermission: false,
valid: false
@@ -88,7 +88,12 @@ const CreatePermissionForm: FC<Props> = ({
const [permission, setPermission] = useState<PermissionState>(initialPermissionState);
const [t] = useTranslation("repos");
useEffect(() => {
setPermission(initialPermissionState);
setPermission({
...initialPermissionState,
groupPermission: createdPermission ? createdPermission.groupPermission : initialPermissionState.groupPermission,
role: createdPermission ? createdPermission.role : initialPermissionState.role,
verbs: createdPermission ? createdPermission?.verbs : initialPermissionState.verbs
});
//eslint-disable-next-line
}, [createdPermission]);
const selectedVerbs = permission.role ? findVerbsForRole(availableRoles, permission.role) : permission.verbs;