import { Select, SelectOption } from "@patternfly/react-core"; import { useState } from "react"; import { Controller, useFormContext, ControllerRenderProps, FieldValues, } from "react-hook-form"; import { useTranslation } from "react-i18next"; import { Options } from "../UserProfileFields"; import { fieldName } from "../utils"; import { UserProfileFieldsProps, UserProfileGroup } from "./UserProfileGroup"; export const SelectComponent = (attribute: UserProfileFieldsProps) => { const { t } = useTranslation("users"); const { control } = useFormContext(); const [open, setOpen] = useState(false); const isMultiValue = (field: ControllerRenderProps) => { return ( attribute.annotations?.["inputType"] === "multiselect" || Array.isArray(field.value) ); }; const setValue = ( value: string, field: ControllerRenderProps, ) => { if (isMultiValue(field)) { if (field.value.includes(value)) { field.onChange(field.value.filter((item: string) => item !== value)); } else { field.onChange([...field.value, value]); } } else { field.onChange(value); } }; const options = (attribute.validations?.options as Options | undefined)?.options || []; return ( ( )} /> ); };