Fixed language update for user

This commit is contained in:
rockyeverlast
2025-09-17 14:01:16 +05:30
parent 248980d24b
commit 2e8f8d5a77

View File

@@ -26,7 +26,7 @@ interface UserPayload {
last_name: string;
gender: string;
date_of_birth: string | null;
language_xid: number[]; // ✅ Always an array
language_xid: number; // ✅ Always an array
}
export interface UserFormData {
@@ -45,7 +45,7 @@ export interface UserFormData {
principle_language_linkss: {
id?: number;
iam_principal_xid?: number;
language_xid: number[]; // ✅ Now it's an array
language_xid: number;
};
}
@@ -55,7 +55,7 @@ function EditRegisterUsers({ data, refetch }: { data: UserData, refetch: () => v
...data,
principle_language_linkss: {
...data.principle_language_linkss,
language_xid: [data.principle_language_linkss.language_xid], // wrap in array
language_xid: data.principle_language_linkss.language_xid, // wrap in array
},
});
const [formData, setFormData] = useState<UserFormData>(transformToFormData(data));
@@ -105,9 +105,9 @@ function EditRegisterUsers({ data, refetch }: { data: UserData, refetch: () => v
gender: formData?.gender,
date_of_birth: formData?.date_of_birth,
// language_xid: languageData,
language_xid: Array.isArray(formData.principle_language_linkss?.language_xid)
language_xid: formData.principle_language_linkss?.language_xid
? formData.principle_language_linkss.language_xid
: [formData.principle_language_linkss?.language_xid].filter(Boolean),
: formData.principle_language_linkss?.language_xid,
};
@@ -130,12 +130,12 @@ function EditRegisterUsers({ data, refetch }: { data: UserData, refetch: () => v
type: "error",
});
}
} catch (error) {
} catch (error: any) {
console.error("Error updating template:", error);
// alert("Failed to update template");
toaster.create({
title: "Error",
description: "Something went wrong",
description: error ? `${error?.data.message}` : "Something went wrong",
type: "error",
});
}
@@ -305,14 +305,14 @@ function EditRegisterUsers({ data, refetch }: { data: UserData, refetch: () => v
height: "30px",
outline: "none",
}}
value={formData?.principle_language_linkss?.language_xid?.[0] || ""}
value={formData?.principle_language_linkss?.language_xid || ""}
onChange={(e) => {
const value = Number(e.target.value);
setFormData({
...formData,
principle_language_linkss: {
...formData?.principle_language_linkss,
language_xid: [value],
language_xid: value,
},
});
}}