react-fblibrary
Version:
FBLibrary é uma biblioteca autoral que reúne componentes e bases fundamentais para desenvolvimento eficiente. Nosso objetivo é criar um ecossistema de componentes, desde elementos simples, como inputs e botões, até layouts completos, que podem ser reutili
32 lines (30 loc) • 1.06 kB
text/typescript
import moment from 'moment';
/**
* Validates the given value based on the specified type.
*
* @param {any} value - The value to be validated.
* @param {string} type - The type of validation to be performed.
* @return {any} - The validated value or false if validation fails.
*/
export const validFields = (value: any, type: string): any => {
switch (type) {
case 'date':
case 'scheduled':
return moment(value).isValid() ? moment(value) : false;
case 'string':
return typeof value === 'string' ? value : false;
case 'number':
return !isNaN(value) ? Number(value) : false;
case 'boolean':
return typeof value === 'boolean' ? value : false;
case 'array':
return Array.isArray(value) ? value : false;
case 'object':
return typeof value === 'object' && value !== null ? value : false;
case 'email':
const emailRegex = /^[A-Za-z0-9._%+-]+@[A-Za-z0-9.-]+\.[A-Za-z]{2,}$/
return emailRegex.test(value) ? value : false;
default:
return value;
}
};