0.0.7 • Published 3 years ago

mb-form-data v0.0.7

Weekly downloads
1
License
ISC
Repository
github
Last release
3 years ago

mb-form-data

C'est un module Javascript (NodeJS) gérant les formatages, mise en place des contraintes de validation des types de données

Installation

Ceci est un Node.js module disponible sur npm registry.

$ npm install mb-form-data

API

let mbFormData = require('mb-form-data')
let validator = mbFormData.Validator

let donnees = {
	nom: 'Etokila',
	prenom: 'Diani',
	age: '',
	email: 'diani'
}

let rules = {
	nom: 'required|min:3|max:30',
	prenom: 'min:3|max:30',
	email: 'required|email'
}

validator.verify(datas, rules, (success, errors) => {
	if (success) {
		console.log("Ok")
	}else {
		console.log(errors)
	}
})

mbFormData.Validator

Est un objet qui comporte plusieurs méthode qui sont exécutées en background lors de la vérification des contraintes (rules) sur les données

mbFormData.Validator.verify(datas, rules = null, callback)

Cette méthode est celle qui lance toutes les monoeuvres, elle reçoit 3 paramètres : 1. datas réçoit l'objet de littéral des données sous forme key: value (clé: valeur)

  1. rules les règles sur les éléments de données à vérifier la validité, ce paramètre est par défaut null parce qu'il y a deux manières à envoyer les données et les règles :

Soit par association de données et des règles dans le premier paramètre (datas) sous la forme suivante :

let datas = {
	nom: {
		value: 'Etokila',
		rules: 'required|min:3|max:30'
	},
	prenom: {
		value: 'Diani',
		rules: 'min:3|max:30'
	},
	email: {
		value: 'diani',
		rules: 'required|email'
	}
}

Soit par séparémment, sous la forme suivante :

let donnees = {
	nom: 'Etokila',
	prenom: 'Diani',
	age: '',
	email: 'diani'
}

let rules = {
	nom: 'required|min:3|max:30',
	prenom: 'min:3|max:30',
	email: 'required|email'
}
  1. callback(success, errorrs) Le troisième parmètre est la fonction callback à appeler, qui recoit en retour deux paramètres.
  • success : Vaut true si tout est correct et qu'il n'y a pas d'erreur et false au cas contraire
  • errors : Objet, contenant la liste des erreurs dont le nom de la clé est le nom de la donnée et la valeur est le message d'erreur (errors.nom)

Les règles disponibles

  • required : Le champ est requis, obligatoire
  • email : La valeur du champ doit être une adresse email valide
  • min:n : n réprésente le nombre minimum de caractères que doit avoir ce champ
  • max:n : n réprésente le nombre maximum de caractères que doit avoir ce champ
  • int : La valeur du chmap doit être un entier
  • alpha:n : La valeur du chmap doit être une chaine de caractère n (facultatif) réprésente le nombre de caractères que doit avoir ce champ
  • tel : La valeur du champ doit être un numéro de téléphone valide

Note : Au cas où vous aurez besoin de faire en sorte que le nom du champ à afficher le message auprès de l'utilisateur ne soit pas celui du champ de données envoyées, vous pouvez spécifier ce nom en rajoutant la règle field:Nom à afficher.

Exemple

let donnees = {
	name: 'E',
	firstname: '123',
	email: 'diani'
}

let rules = {
	name: 'field:Nom|required|min:3|max:30',
	firstname: 'min:3|field:Prénom|max:30|alpha',
	email: 'required|email|field:Adresse email'
}

validator.verify(datas, rules, (success, errors) => {
	if (success) {
		console.log("Ok")
	}else {
		console.log(errors)
	}
})

Features

Les fonctionnalités à rajouter dans les futures versions :

  • La localisation (internationnalisation ou utlisation des plusieurs langues pour les messages d'erreur)

  • Inclusion de ce module comme middleware sous ExpressJS pour injecter l'objet errors dans les req ou res

Elles sont développées dans le module body-data-validator.

0.0.7

3 years ago

0.0.6

4 years ago

0.0.5

4 years ago

0.0.4

4 years ago

0.0.3

4 years ago

0.0.2

4 years ago

0.0.1

4 years ago