Skip to content

Commit 42344ef

Browse files
committed
🧴
1 parent a7053bb commit 42344ef

File tree

5 files changed

+15
-20
lines changed

5 files changed

+15
-20
lines changed

site/src/api/queries/roles.ts

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -9,7 +9,7 @@ export const roles = () => {
99

1010
export const organizationRoles = (organizationId: string) => {
1111
return {
12-
queryKey: ["organizationRoles"],
12+
queryKey: ["organization", organizationId, "roles"],
1313
queryFn: () => API.getOrganizationRoles(organizationId),
1414
};
1515
};

site/src/pages/ManagementSettingsPage/OrganizationMembersPage.tsx

Lines changed: 2 additions & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -106,19 +106,15 @@ const OrganizationMembersPage: FC = () => {
106106
/>
107107
</TableCell>
108108
<UserRoleCell
109-
user={{
110-
id: member.user_id,
111-
login_type: "",
112-
}}
113109
inheritedRoles={member.global_roles}
114110
roles={member.roles}
115111
allAvailableRoles={organizationRolesQuery.data}
116112
oidcRoleSyncEnabled={false}
117113
isLoading={organizationRolesQuery.isLoading}
118114
canEditUsers
119-
onUserRolesUpdate={async (userId, newRoleNames) => {
115+
onEditRoles={async (newRoleNames) => {
120116
await updateMemberRolesMutation.mutateAsync({
121-
userId,
117+
userId: member.user_id,
122118
roles: newRoleNames,
123119
});
124120
displaySuccess("Roles updated successfully.");

site/src/pages/ManagementSettingsPage/UserTable/EditRolesButton.tsx

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -73,7 +73,7 @@ export interface EditRolesButtonProps {
7373
selectedRoleNames: Set<string>;
7474
onChange: (roles: SlimRole["name"][]) => void;
7575
oidcRoleSync: boolean;
76-
userLoginType: string;
76+
userLoginType?: string;
7777
}
7878

7979
export const EditRolesButton: FC<EditRolesButtonProps> = ({

site/src/pages/ManagementSettingsPage/UserTable/UserRoleCell.tsx

Lines changed: 9 additions & 10 deletions
Original file line numberDiff line numberDiff line change
@@ -18,7 +18,7 @@ import Stack from "@mui/material/Stack";
1818
import TableCell from "@mui/material/TableCell";
1919
import Tooltip from "@mui/material/Tooltip";
2020
import type { FC } from "react";
21-
import type { SlimRole, User } from "api/typesGenerated";
21+
import type { LoginType, SlimRole } from "api/typesGenerated";
2222
import { Pill } from "components/Pill/Pill";
2323
import {
2424
Popover,
@@ -31,26 +31,26 @@ type UserRoleCellProps = {
3131
isLoading: boolean;
3232
canEditUsers: boolean;
3333
allAvailableRoles: readonly SlimRole[] | undefined;
34-
user: Pick<User, "id" | "login_type">;
34+
userLoginType?: LoginType;
3535
inheritedRoles?: readonly SlimRole[];
3636
roles: readonly SlimRole[];
3737
oidcRoleSyncEnabled: boolean;
38-
onUserRolesUpdate: (userId: string, newRoleNames: string[]) => void;
38+
onEditRoles: (newRoleNames: string[]) => void;
3939
};
4040

4141
export const UserRoleCell: FC<UserRoleCellProps> = ({
4242
isLoading,
4343
canEditUsers,
4444
allAvailableRoles,
45-
user,
45+
userLoginType,
4646
inheritedRoles,
4747
roles,
4848
oidcRoleSyncEnabled,
49-
onUserRolesUpdate,
49+
onEditRoles,
5050
}) => {
51-
const theRolesForReal = getMergedRoles(inheritedRoles ?? [], roles);
51+
const mergedRoles = getMergedRoles(inheritedRoles ?? [], roles);
5252
const [mainDisplayRole = fallbackRole, ...extraRoles] =
53-
sortRolesByAccessLevel(theRolesForReal ?? []);
53+
sortRolesByAccessLevel(mergedRoles ?? []);
5454
const hasOwnerRole = mainDisplayRole.name === "owner";
5555

5656
return (
@@ -61,15 +61,15 @@ export const UserRoleCell: FC<UserRoleCellProps> = ({
6161
roles={sortRolesByAccessLevel(allAvailableRoles ?? [])}
6262
selectedRoleNames={getSelectedRoleNames(roles)}
6363
isLoading={isLoading}
64-
userLoginType={user.login_type}
64+
userLoginType={userLoginType}
6565
oidcRoleSync={oidcRoleSyncEnabled}
6666
onChange={(roles) => {
6767
// Remove the fallback role because it is only for the UI
6868
const rolesWithoutFallback = roles.filter(
6969
(role) => role !== fallbackRole.name,
7070
);
7171

72-
onUserRolesUpdate(user.id, rolesWithoutFallback);
72+
onEditRoles(rolesWithoutFallback);
7373
}}
7474
/>
7575
)}
@@ -163,7 +163,6 @@ const styles = {
163163
const fallbackRole: MergedSlimRole = {
164164
name: "member",
165165
display_name: "Member",
166-
global: false,
167166
} as const;
168167

169168
const roleNamesByAccessLevel: readonly string[] = [

site/src/pages/UsersPage/UsersTable/UsersTableBody.tsx

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -156,11 +156,11 @@ export const UsersTableBody: FC<UsersTableBodyProps> = ({
156156
<UserRoleCell
157157
canEditUsers={canEditUsers}
158158
allAvailableRoles={roles}
159-
user={user}
159+
userLoginType={user.login_type}
160160
roles={user.roles}
161161
oidcRoleSyncEnabled={oidcRoleSyncEnabled}
162162
isLoading={Boolean(isUpdatingUserRoles)}
163-
onUserRolesUpdate={onUpdateUserRoles}
163+
onEditRoles={(roles) => onUpdateUserRoles(user.id, roles)}
164164
/>
165165

166166
<UserGroupsCell userGroups={groupsByUserId?.get(user.id)} />

0 commit comments

Comments
 (0)