From 725ca3b29ea6e0e6944b47d4631f9e9e8244fbb5 Mon Sep 17 00:00:00 2001 From: yassinedorbozgithub Date: Fri, 7 Feb 2025 22:56:55 +0100 Subject: [PATCH] fix(frontend): update generic components --- frontend/src/app-components/dialogs/FormDialog.tsx | 2 +- .../src/app-components/dialogs/GenericFormDialog.tsx | 12 +++++++----- 2 files changed, 8 insertions(+), 6 deletions(-) diff --git a/frontend/src/app-components/dialogs/FormDialog.tsx b/frontend/src/app-components/dialogs/FormDialog.tsx index 97fac8e9..180ba58f 100644 --- a/frontend/src/app-components/dialogs/FormDialog.tsx +++ b/frontend/src/app-components/dialogs/FormDialog.tsx @@ -27,7 +27,7 @@ export const FormDialog = ({ {title} {children} - + diff --git a/frontend/src/app-components/dialogs/GenericFormDialog.tsx b/frontend/src/app-components/dialogs/GenericFormDialog.tsx index 3f4772e0..f73e0e57 100644 --- a/frontend/src/app-components/dialogs/GenericFormDialog.tsx +++ b/frontend/src/app-components/dialogs/GenericFormDialog.tsx @@ -8,29 +8,30 @@ import React from "react"; -import { FormDialog } from "@/app-components/dialogs"; +import { FormDialog as Wrapper } from "@/app-components/dialogs"; import { useTranslate } from "@/hooks/useTranslate"; import { TTranslationKeys } from "@/i18n/i18n.types"; import { ComponentFormDialogProps } from "@/types/common/dialogs.types"; type GenericFormDialogProps = ComponentFormDialogProps & { Form: React.ElementType; + rowKey?: keyof T; addText?: TTranslationKeys; editText?: TTranslationKeys; }; export const GenericFormDialog = ({ Form, - payload, + rowKey, + payload: data, ...rest }: GenericFormDialogProps) => { const { t } = useTranslate(); - const translationKey = payload ? rest.editText : rest.addText; + const hasRow = rowKey ? data?.[rowKey] : data; + const translationKey = hasRow ? rest.editText : rest.addText; return (
{ rest.onClose(true); }} @@ -38,6 +39,7 @@ export const GenericFormDialog = ({ title: translationKey && t(translationKey), ...rest, }} + {...{ data, Wrapper }} /> ); };