File tree Expand file tree Collapse file tree
Expand file tree Collapse file tree Original file line number Diff line number Diff line change @@ -33,7 +33,7 @@ import Card from "../components/Card";
3333// Legacy modals (inline styles) brought back from old-src for now
3434import { RegisterUserModal } from "@/components/admin/RegisterUserModal" ;
3535import { UserEditorModal } from "@/components/admin/UserEditorModal" ;
36- import { GamevaultUser , GamevaultUserRoleEnum } from "../api" ;
36+ import { GamevaultUser , GamevaultUserRoleEnum , GamevaultUserRoleLabels } from "../api" ;
3737import BackupRestoreDialog from "../components/admin/BackupRestoreDialog" ;
3838import { Label } from "../components/tailwind/fieldset" ;
3939
@@ -344,7 +344,9 @@ export default function Administration() {
344344 >
345345 { Object . values ( GamevaultUserRoleEnum ) . map ( ( r ) => (
346346 < ListboxOption key = { r } value = { r } >
347- < ListboxLabel > { r } </ ListboxLabel >
347+ < ListboxLabel >
348+ { GamevaultUserRoleLabels [ Number ( r ) ] ?? r }
349+ </ ListboxLabel >
348350 </ ListboxOption >
349351 ) ) }
350352 </ Listbox >
Original file line number Diff line number Diff line change @@ -6,7 +6,7 @@ import { Heading } from "@tw/heading";
66import { Listbox , ListboxLabel , ListboxOption } from "@tw/listbox" ;
77import { useEffect , useMemo , useState } from "react" ;
88import { useNavigate } from "react-router" ;
9- import { GamevaultUser } from "../api" ;
9+ import { GamevaultUser , GamevaultUserRoleLabels } from "../api" ;
1010
1111export default function Community ( ) {
1212 const { serverUrl, authFetch, user : loggedIn } = useAuth ( ) ;
@@ -167,7 +167,7 @@ export default function Community() {
167167 </ div >
168168 ) }
169169 < div className = "inline-flex items-center rounded-md border px-2 py-0.5 text-xs border-zinc-300/60 text-zinc-700 dark:border-zinc-700/60 dark:text-zinc-200" >
170- { current ?. role }
170+ { current ?. role != null ? ( GamevaultUserRoleLabels [ Number ( current . role ) ] ?? current . role ) : "" }
171171 </ div >
172172 </ div >
173173 </ div >
Original file line number Diff line number Diff line change 1+ // Role label helper (non-generated)
2+ // Maps backend numeric roles to human-readable labels.
3+ export const ROLE_LABELS : Record < number , string > = {
4+ 0 : "Guest" ,
5+ 1 : "User" ,
6+ 2 : "Editor" ,
7+ 3 : "Admin" ,
8+ } ;
9+
10+ export function getRoleLabel ( role : number | null | undefined ) : string {
11+ if ( role === null || role === undefined ) return "" ;
12+ return ROLE_LABELS [ Number ( role ) ] ?? String ( role ) ;
13+ }
You can’t perform that action at this time.
0 commit comments