diff --git a/web/public/locales/en/views/classificationModel.json b/web/public/locales/en/views/classificationModel.json index 96bf0284b..a07114b5c 100644 --- a/web/public/locales/en/views/classificationModel.json +++ b/web/public/locales/en/views/classificationModel.json @@ -139,6 +139,7 @@ "nameOnlyNumbers": "Model name cannot contain only numbers", "classRequired": "At least 1 class is required", "classesUnique": "Class names must be unique", + "noneNotAllowed": "The class 'none' is not allowed", "stateRequiresTwoClasses": "State models require at least 2 classes", "objectLabelRequired": "Please select an object label", "objectTypeRequired": "Please select a classification type" diff --git a/web/src/components/classification/wizard/Step1NameAndDefine.tsx b/web/src/components/classification/wizard/Step1NameAndDefine.tsx index d5ee430eb..a4cdc4867 100644 --- a/web/src/components/classification/wizard/Step1NameAndDefine.tsx +++ b/web/src/components/classification/wizard/Step1NameAndDefine.tsx @@ -94,7 +94,14 @@ export default function Step1NameAndDefine({ objectLabel: z.string().optional(), objectType: z.enum(["sub_label", "attribute"]).optional(), classes: z - .array(z.string()) + .array( + z + .string() + .refine( + (val) => val.trim().toLowerCase() !== "none", + t("wizard.step1.errors.noneNotAllowed"), + ), + ) .min(1, t("wizard.step1.errors.classRequired")) .refine( (classes) => { @@ -467,6 +474,7 @@ export default function Step1NameAndDefine({ )} + )} />