UNPKG

form-tool

Version:

Create quickly and robustly with form hooks

185 lines (184 loc) 6.72 kB
/** Types used in the file */ declare type argVal = string | number | Date | null | undefined; /** * Validate that the field is not null * @version 0.0.1 * ```ts * @param {argVal} value input value * @return {boolean} true or false * ``` */ export declare const isNull: (value: argVal) => boolean; /** * Validate that the field is not numeric * @version 0.0.1 * ```ts * @param {argVal} value input value * @return {boolean} true or false * ``` */ export declare const isNumeric: (value: argVal) => boolean; /** * Validate that the field has a correct password format * @version 0.0.1 * ```ts * @param {argVal} value input value * @return {boolean} true or false * ``` */ export declare const isPassword: (value: argVal) => boolean; /** * Validate that the field contains only letters * @version 0.0.1 * ```ts * @param {argVal} value input value * @return {boolean} true or false * ``` */ export declare const onlyLetters: (value: string) => boolean; /** * Validate that the field is in the established range of letters * @version 0.0.1 * ```ts * @param {string | number} value input value * @param {number} min minimum * @param {number} max maximum * @return {boolean} true or false * ``` */ export declare const rangeLength: (value: string | number, min: number, max: number) => boolean; /** * Validate that two values are equal * @version 0.0.1 * ```ts * @param {argVal} valueOne value one * @param {argVal} valueTwo value two * @return {boolean} true or false * ``` */ export declare const Match: (valueOne: argVal, valueTwo: argVal) => boolean; /** * Validate that the field has a correct email format * @version 0.0.1 * ```ts * @param {string} email input value * @return {boolean} true or false * ``` */ export declare const isEmail: (email: string) => boolean; /** * Transform a number of numbers into money format * @version 0.0.1 * ```ts * @param {string | number} value input value * @param {string} region region number format * @return {boolean} true or false * ``` */ export declare const numberFormat: (value: string | number, region?: string | undefined) => number | string; /** * Busca un valor aleatorio de 10 caracteres * @version 0.0.1 * @return {string} Valor aleatorio */ export declare const valRand: () => string; /** * Obtiene la información de la columna según el path dado ej: user.name * @param {string} path Key del objecto * @param {any} obj Objecto donde se va a buscar la key (path) * @return {void} */ export declare const resolveData: (myData: any, index: number | undefined, nameArray: string | undefined, name: string, array?: boolean | undefined, keys?: string[] | undefined) => any; /** * Transforma una fecha en ingles a formato español * @version 0.0.1 * @param {string} value valor en números * @param {string | undefined} locale tipo de dirección * @return {string} nuevo formato de fecha */ export declare const dateFormat: (value: string, locale?: string | undefined) => string; /** * Transforma un numero en formato de teléfono * @version 0.0.1 * @param {string} value valor en números * @return {string} nuevo formato en teléfono */ export declare const phoneFormat: (value: string) => string; /** * Transforma una hora en ingles a formato español * @version 0.0.1 * @param {string} value valor en números * @return {string} nuevo formato en hora */ export declare const hourFormat: (value: string) => string; export declare const validationImg: (file: File) => boolean; /** * Busca la extension del archivo * @version 0.0.1 * @param {string} filename nombre del archivo con la extension * @return {string} nombre de la extension */ export declare const extFile: (filename: string) => string | undefined | null; /** * Actualiza la data del usuario según el tipo, si es array, array de objetos ó objeto plano * ```ts * @param {string[]} keys Claves del objeto donde va a buscar @example 'user.profile.name' equivale a: ['user', 'profile', 'name] * @param {number} indexSplit Índice a buscar dentro de las keys * @param {any} myData Data actual donde se va a buscar * @param {number} index Índice del array (si es un array) * @param {string} nameArray Nombre del la clave si es array * @param {string} name Name del input * @param {string | number} value valor del input * @returns {any[]} Devuelve el array o el objeto * ``` */ export declare const updateData: (keys: string[], indexSplit: number, myData: any, index: number, nameArray: string, name: string, value: string | number | boolean) => any; /** * @description Función que valida los formularios, funciona para trabajar los errores con estados * @version 0.1.1 * @param {array} elements elementos del formulario * @return {array} devuelve un array de con el nombre identificador para cada estado en react. */ export declare const validationSubmitHooks: <T>(elements: HTMLInputElement[]) => { errorForm: T; isError: boolean; }; /** * busca en el localStore la información y la parsea si es necesario * @version 0.0.1 * @param {*} key clave de búsqueda * @param {boolean} isParse si se quiere parsear o no * @return {boolean} devuelve el valor parseado o false si pudo guardar en localStorage */ export declare const getDataLS: <T>(key: string, isParse: boolean) => boolean | T; /** * Verifica que las contraseñas cumplan con el estándar correcto * @version 0.0.1 * @param {string} value valor * @return {boolean} true o false */ export declare const passwordFormat: (value: string) => boolean; declare type TOptionFilter = { coincidenceParams?: boolean; recursive?: boolean; }; /** * * @param {Object} data objeto a filtrar * @param {Array} filters array a comparar o claves del objeto a excluir * @param {{ coincidenceParams: boolean, recursive: boolean }} OptionsFilters booleano para devolver los datos filtrados o no * @return {{ values: any, valuesFilter: any }} devuelve un objeto con los datos filtrados */ export declare const filterKeyObject: <T>(data: T, filters: any[], { coincidenceParams }: TOptionFilter) => { values: T; valuesFilter: T; }; /** * Delete the keys of the main object * @param {Object} data object to filter * @param {string[]} filters array to compare or object keys to exclude * @param {boolean} coincidenceParams boolean to return the filtered data or not * @return {Object} returns an object with the filtered data */ export declare const excludeKeys: <T>(data: T, filters: string[], coincidenceParams: boolean) => T; export {};