Skip to content

Commit 8cfc066

Browse files
committed
show display name on ui, show name if it differs on the group page
1 parent 712f81a commit 8cfc066

File tree

13 files changed

+34
-9
lines changed

13 files changed

+34
-9
lines changed

coderd/apidoc/docs.go

Lines changed: 3 additions & 0 deletions
Some generated files are not rendered by default. Learn more about customizing how changed files appear on GitHub.

coderd/apidoc/swagger.json

Lines changed: 3 additions & 0 deletions
Some generated files are not rendered by default. Learn more about customizing how changed files appear on GitHub.

docs/api/enterprise.md

Lines changed: 1 addition & 0 deletions
Some generated files are not rendered by default. Learn more about customizing how changed files appear on GitHub.

docs/api/schemas.md

Lines changed: 2 additions & 0 deletions
Some generated files are not rendered by default. Learn more about customizing how changed files appear on GitHub.

enterprise/coderd/groups.go

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -53,6 +53,7 @@ func (api *API) postGroupByOrganization(rw http.ResponseWriter, r *http.Request)
5353
return
5454
}
5555

56+
// Default the name and display name to the same.
5657
if req.DisplayName == "" {
5758
req.DisplayName = req.Name
5859
}

site/src/pages/GroupsPage/GroupPage.tsx

Lines changed: 13 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -33,6 +33,7 @@ import { pageTitle } from "utils/page"
3333
import { groupMachine } from "xServices/groups/groupXService"
3434
import { Maybe } from "components/Conditionals/Maybe"
3535
import { makeStyles } from "@mui/styles"
36+
import { PaginationStatus } from "components/PaginationStatus/PaginationStatus"
3637

3738
const AddGroupMember: React.FC<{
3839
isLoading: boolean
@@ -101,7 +102,7 @@ export const GroupPage: React.FC = () => {
101102
return (
102103
<>
103104
<Helmet>
104-
<title>{pageTitle(group?.name ?? "Loading...")}</title>
105+
<title>{pageTitle(group?.display_name ?? "Loading...")}</title>
105106
</Helmet>
106107
<ChooseOne>
107108
<Cond condition={isLoading}>
@@ -127,13 +128,14 @@ export const GroupPage: React.FC = () => {
127128
</Maybe>
128129
}
129130
>
130-
<PageHeaderTitle>{group?.name}</PageHeaderTitle>
131+
<PageHeaderTitle>{group?.display_name}</PageHeaderTitle>
131132
<PageHeaderSubtitle>
132-
{group?.members.length} members
133+
{/* Show the name if it differs from the display name. */}
134+
{group?.display_name !== group?.name ? group?.name : ""}{" "}
133135
</PageHeaderSubtitle>
134136
</PageHeader>
135137

136-
<Stack spacing={2.5}>
138+
<Stack spacing={1}>
137139
<Maybe condition={canUpdateGroup}>
138140
<AddGroupMember
139141
isLoading={state.matches("addingMember")}
@@ -146,6 +148,13 @@ export const GroupPage: React.FC = () => {
146148
}}
147149
/>
148150
</Maybe>
151+
<PaginationStatus
152+
isLoading={Boolean(isLoading)}
153+
showing={group?.members.length ?? 0}
154+
total={group?.members.length ?? 0}
155+
label="members"
156+
/>
157+
149158
<TableContainer>
150159
<Table>
151160
<TableHead>

site/src/pages/GroupsPage/GroupsPageView.tsx

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -137,11 +137,11 @@ export const GroupsPageView: FC<GroupsPageViewProps> = ({
137137
<AvatarData
138138
avatar={
139139
<GroupAvatar
140-
name={group.name}
140+
name={group.display_name}
141141
avatarURL={group.avatar_url}
142142
/>
143143
}
144-
title={group.name}
144+
title={group.display_name}
145145
subtitle={`${group.members.length} members`}
146146
/>
147147
</TableCell>

site/src/pages/GroupsPage/SettingsGroupPageView.tsx

Lines changed: 2 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -15,6 +15,7 @@ import { Stack } from "components/Stack/Stack"
1515

1616
type FormData = {
1717
name: string
18+
display_name: string
1819
avatar_url: string
1920
quota_allowance: number
2021
}
@@ -34,6 +35,7 @@ const UpdateGroupForm: FC<{
3435
const form = useFormik<FormData>({
3536
initialValues: {
3637
name: group.name,
38+
display_name: group.display_name,
3739
avatar_url: group.avatar_url,
3840
quota_allowance: group.quota_allowance,
3941
},

site/src/pages/TemplateSettingsPage/TemplatePermissionsPage/TemplatePermissionsPageView.tsx

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -253,11 +253,11 @@ export const TemplatePermissionsPageView: FC<
253253
<AvatarData
254254
avatar={
255255
<GroupAvatar
256-
name={group.name}
256+
name={group.display_name}
257257
avatarURL={group.avatar_url}
258258
/>
259259
}
260-
title={group.name}
260+
title={group.display_name}
261261
subtitle={getGroupSubtitle(group)}
262262
/>
263263
</TableCell>

site/src/testHelpers/entities.ts

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -1658,6 +1658,7 @@ export const MockWorkspaceQuota: TypesGen.WorkspaceQuota = {
16581658
export const MockGroup: TypesGen.Group = {
16591659
id: "fbd2116a-8961-4954-87ae-e4575bd29ce0",
16601660
name: "Front-End",
1661+
display_name: "Front-End",
16611662
avatar_url: "https://example.com",
16621663
organization_id: MockOrganization.id,
16631664
members: [MockUser, MockUser2],

site/src/utils/groups.ts

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -3,6 +3,7 @@ import { Group } from "api/typesGenerated"
33
export const everyOneGroup = (organizationId: string): Group => ({
44
id: organizationId,
55
name: "Everyone",
6+
display_name: "Everyone",
67
organization_id: organizationId,
78
members: [],
89
avatar_url: "",

site/src/xServices/groups/editGroupXService.ts

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -23,7 +23,7 @@ export const editGroupMachine = createMachine(
2323
},
2424
events: {} as {
2525
type: "UPDATE"
26-
data: { name: string; avatar_url: string; quota_allowance: number }
26+
data: { display_name: string, name: string; avatar_url: string; quota_allowance: number }
2727
},
2828
},
2929
tsTypes: {} as import("./editGroupXService.typegen").Typegen0,

site/src/xServices/groups/groupXService.ts

Lines changed: 2 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -183,6 +183,7 @@ export const groupMachine = createMachine(
183183

184184
return patchGroup(group.id, {
185185
name: "",
186+
display_name: "",
186187
add_users: [userId],
187188
remove_users: [],
188189
})
@@ -194,6 +195,7 @@ export const groupMachine = createMachine(
194195

195196
return patchGroup(group.id, {
196197
name: "",
198+
display_name: "",
197199
add_users: [],
198200
remove_users: [userId],
199201
})

0 commit comments

Comments
 (0)