0.4.0 • Published 6 months ago

3dlink-validations v0.4.0

Weekly downloads
-
License
ISC
Repository
gitlab
Last release
6 months ago

3Dlink - validations

3D link validations es una librería que compila en una función reductora, las validaciones esenciales para aplicar a los campos de los formularios.

Uso

Para utilizar 3Dlink validations en tu proyecto, primero tendrás que importar la función reductora validateField. Esta función acepta un objeto que contiene las propiedades específicas necesarias para realizar la validación deseada. Todas las validaciones requieren la propiedad validation para especificar el tipo de validación que se quiere realizar.

Aquí hay un ejemplo básico de cómo puedes utilizar la función validateField en tu código:

import { validateField } from '3Dlink-validations';

const result = validateField({
  validation: 'required',
  value: 'contenido del campo'
});

console.log(result); // Devolverá true si el campo contiene algún valor

Cada validación tiene sus propios parámetros específicos que debes proporcionar para que funcione correctamente. Por ejemplo, para la validación minLength, necesitarás proporcionar la propiedad min con el valor mínimo de longitud:

const result = validateField({
  validation: 'minLength',
  value: 'contenido del campo',
  min: 5
});

console.log(result); // Devolverá true si la longitud del valor es al menos 5

Puedes encontrar una lista completa de las validaciones disponibles y los parámetros requeridos en la sección Validaciones de este documento.

3Dlink validations está diseñado para ser fácil de usar y flexible, permitiéndote realizar una amplia variedad de comprobaciones en los campos de tus formularios de manera sencilla y eficiente. Simplemente elige la validación que necesitas, proporciona los parámetros requeridos, y deja que 3Dlink se encargue del resto.

Importante

Ten en cuenta que algunas validaciones requieren parámetros específicos. Si no se proporcionan los parámetros requeridos, la función arrojará un error. Asegúrate de revisar la documentación de cada validación para comprender completamente qué parámetros necesitas proporcionar.

Añadir validaciones a la librería

  1. Función de Validación: Crea una nueva función de validación que realice la verificación específica que deseas implementar. Puedes usar expresiones regulares o cualquier otro método para realizar la validación.

    const validateNewFeature = (value, ...props) => {
      // Implementa la validación aquí.
    }
  2. Switch Case en validateField: Añade un nuevo caso en el switch dentro de la función validateField que llame a la nueva función de validación.

    case 'newFeature':
      return validateNewFeature(value, ...props);
  3. Test: Agrega pruebas unitarias para la nueva función de validación utilizando jest. Crea una nueva serie de pruebas en el archivo de pruebas que cubra casos de éxito y error para la nueva validación.

    it('validates new feature', () => {
      expect(validateField({ validation: 'newFeature', value: ... })).toBe(...);
    });
  4. Documentación: Añade una descripción de la nueva validación en el archivo README en la sección "Validaciones". Asegúrate de que la documentación sea clara y explique qué hace la nueva validación.

    N. **newFeature**: Descripción de lo que hace la nueva validación.

Al seguir esta estructura, puedes asegurarte de que la biblioteca sea coherente y fácil de mantener, y de que los nuevos features se integren sin problemas.

Validaciones

Aquí tienes una lista actualizada de las validaciones disponibles en el módulo formValidations:

  1. required: Comprueba si el campo es requerido. Si el campo está vacío, devolverá false.

  2. minLength: Comprueba si el valor del campo tiene al menos la longitud mínima especificada. Necesitas proporcionar la propiedad min con el valor mínimo de longitud.

  3. maxLength: Comprueba si el valor del campo no excede la longitud máxima especificada. Necesitas proporcionar la propiedad max con el valor máximo de longitud.

  4. exactLength: Comprueba si el valor del campo tiene exactamente la longitud especificada. Necesitas proporcionar la propiedad length con el valor exacto de longitud.

  5. isNumber: Comprueba si el valor del campo contiene solo números.

  6. isEmail: Comprueba si el valor del campo es un correo electrónico válido.

  7. isDate: Comprueba si el valor del campo es una fecha válida. Por defecto, valida en formato YYYY-MM-DD. Si necesitas otro formato, tendrás que usar una función personalizada.

  8. range: Comprueba si el valor del campo es un número dentro de un rango especificado. Necesitas proporcionar las propiedades min y max con los valores límite del rango.

  9. isUrl: Comprueba si el valor del campo es una URL válida.

  10. match: Comprueba si el valor del campo coincide con el de otro campo. Necesitas proporcionar la propiedad matchValue con el valor del campo con el que se debe comparar.

  11. hasUpperCase: Comprueba si el valor del campo contiene al menos una letra mayúscula.

  12. hasLowerCase: Comprueba si el valor del campo contiene al menos una letra minúscula.

  13. hasSpecialChar: Comprueba si el valor del campo contiene al menos un carácter especial.

  14. hasNonNumeric: Comprueba si el valor del campo contiene al menos un carácter no numérico.

  15. onlyLetters: Comprueba si el valor del campo contiene solo letras. Puedes especificar si se permiten espacios proporcionando la propiedad spaces.

  16. isTrue: Verifica si una variable tiene el valor buleano de true.

  17. noConsecutiveNumbers: Comprueba si el valor del campo contiene números iguales consecutivos. Si contiene números iguales seguidos, devolverá false.

  18. hasMinNumericChar: Comprueba si el valor del campo contiene al menos el mínimo especificado de caracteres numéricos. Necesitas proporcionar la propiedad min con el número mínimo de caracteres numéricos requeridos.

0.4.0

6 months ago

0.3.0

6 months ago

0.3.1

6 months ago

0.2.3

7 months ago

0.2.2

7 months ago

0.2.1

7 months ago

0.2.0

9 months ago

0.1.3

9 months ago

0.1.1

9 months ago

0.1.0

9 months ago