diff --git a/client/src/Pages/Account/components/RoleSelectField.tsx b/client/src/Pages/Account/components/RoleSelectField.tsx
index 1f117b0e4..a6bfcf15a 100644
--- a/client/src/Pages/Account/components/RoleSelectField.tsx
+++ b/client/src/Pages/Account/components/RoleSelectField.tsx
@@ -1,35 +1,45 @@
import MenuItem from "@mui/material/MenuItem";
+import FormHelperText from "@mui/material/FormHelperText";
import { useController } from "react-hook-form";
import { useTranslation } from "react-i18next";
import { Select } from "@/Components/inputs";
+import { UserRoles } from "@/Types/User";
import type { UserRole } from "@/Types/User";
export const RoleSelectField = () => {
const { t } = useTranslation();
- const { field } = useController<{ role: UserRole[] }, "role">({ name: "role" });
+ const { field, fieldState } = useController<{ role: UserRole[] }, "role">({
+ name: "role",
+ });
- const roleOptions: { value: UserRole; label: string }[] = [
- { value: "admin", label: t("common.auth.roles.admin") },
- { value: "user", label: t("common.auth.roles.user") },
- { value: "demo", label: t("common.auth.roles.demo") },
- ];
+ const editableRoles = UserRoles.filter((role) => role !== "superadmin");
+ const roleOptions: { value: UserRole; label: string }[] = editableRoles.map((role) => ({
+ value: role,
+ label: t(`common.auth.roles.${role}`),
+ }));
return (
-
+ <>
+
+ {fieldState.error && (
+ {fieldState.error.message}
+ )}
+ >
);
};