UNPKG

@lstz/reusable-form

Version:

A reusable React component for creating simple, flexible forms.

24 lines 1.4 kB
/** * Composant ReusableForm : Formulaire dynamique basé sur une configuration et un schéma de validation. * @template T - Type générique représentant les valeurs du formulaire (ex: `RegisterCredentials`) * @param {Object} props - Les propriétés du composant * @param {boolean} props.isLoading - État de chargement du formulaire * @param {FormConfig<T>} props.formConfig - Configuration du formulaire (titre, champs, bouton, footer) * @param {ZodSchema<T>} props.formSchema - Schéma de validation du formulaire * @param {FooterMessageData} [props.footerMessage] - Message de pied de formulaire optionnel * @param {(data: T) => void} props.action - Fonction à exécuter lors de la soumission du formulaire * @returns {JSX.Element} - Le formulaire généré dynamiquement */ import { ZodSchema } from "zod"; import { FooterMessageData, FormConfig } from "../../types"; import { FieldValues } from "react-hook-form"; export interface ReusableFormProps<T extends FieldValues> { isLoading: boolean; formConfig: FormConfig<T>; formSchema: ZodSchema<T>; footerMessage?: FooterMessageData; action: (data: T) => void; } declare function ReusableForm<T extends FieldValues>({ isLoading, formConfig, formSchema, footerMessage, action, }: ReusableFormProps<T>): import("react/jsx-runtime").JSX.Element; export default ReusableForm; //# sourceMappingURL=ReusableForm.d.ts.map