UNPKG

ak-zod-form-kit

Version:

A powerful utility library for processing, transforming, and validating form data with Zod.

33 lines 2.01 kB
import { FormDataExtractionOptions } from './types'; /** * Extrait et organise les données à partir d'objet `FormData` ou d'un `Record<string, unknown>` standard. * Cette fonction est flexible, permettant des transformations de clés, l'inclusion ou l'exclusion de champs, * et la gestion appropriée des champs `FormData` qui peuvent contenir plusieurs valeurs (par exemple, des fichiers multiples ou des sélections multiples). * * @param {FormData | Record<string, unknown>} inputData - L'objet de données source à partir duquel extraire. * Il peut s'agir d'un `FormData` (directement d'un événement de formulaire) ou d'un objet JavaScript. * @param {FormDataExtractionOptions} [options={}] - Un objet d'options pour personnaliser le processus d'extraction. * - `keyTransforms`: Mappe les noms de champs originaux vers de nouveaux noms. * - `excludeFields`: Liste les noms de champs à ignorer. * - `includeFields`: Liste les noms de champs à inclure exclusivement (si non vides). * @returns {Record<string, unknown>} Un nouvel objet JavaScript contenant les données extraites et potentiellement remaniées. * * @example * // Utilisation avec FormData d'un événement de formulaire * const myFormData = new FormData(document.querySelector('form')); * const extracted = extractDataFromFormData(myFormData, { * keyTransforms: { 'user_email': 'email' }, * excludeFields: ['_csrf'] * }); * console.log(extracted); // { name: 'John Doe', email: 'john@example.com' } * * @example * // Utilisation avec un objet JavaScript * const myObject = { firstName: 'Jane', age: 30, password: 'abc' }; * const extractedObject = extractDataFromFormData(myObject, { * includeFields: ['firstName', 'age'] * }); * console.log(extractedObject); // { firstName: 'Jane', age: 30 } */ export declare function extractDataFromFormData(data: FormData | Record<string, unknown>, options?: FormDataExtractionOptions): Record<string, unknown>; //# sourceMappingURL=extractDataFromFormData.d.ts.map