0.0.7 • Published 1 year ago

field-validation v0.0.7

Weekly downloads
-
License
ISC
Repository
github
Last release
1 year ago

Field Validation

Introduction

Installation

npm i field-validation

Examples

import { FV } from 'field-validation';
const v = new FV({ EMAIL_DOMAINS: ['@mail.ru'], MAX_LENGTH: 30, MIN_LENGTH: 20 });

v.pipe(v.notEmpty, v.email)({ value: ' ' });
// {value: ' ', message: 'Поле не заполнено', status: false}
v.pipe(v.notEmpty, v.email)({ value: 'vadimkamail.ru' });
// {value: 'vadimkamail.ru', message: 'Email должен содержать символы @ и ".". Допускается ввод только латиницы', status: false}
v.pipe(v.notEmpty, v.email)({ value: 'vadimk a@mail.ru' });
// {value: 'vadimk a@mail.ru', message: 'Пробелов быть не должно', status: false}
v.pipe(v.notEmpty, v.email)({ value: ' vadimka@mail.ru ' });
// {value: ' vadimka@mail.ru ', message: 'Поле заполнено не правильно', status: false}
v.pipe(v.notEmpty, v.email)({ value: 'vadimka@mail.ru' });
// 'vadimka@mail.ru', message: '', status: true}
v.pipe(v.notEmpty, v.email, v.withMaxLength)({ value: 'vadimsdfsdfsrgsrgdsesgrgsrka@mail.ru' });
// {value: 'vadimsdfsdfsrgsrgdsesgrgsrka@mail.ru', message: 'Максимальное количество символов 30', status: false}
v.pipe(v.notEmpty, v.email, v.withMaxLength, v.withMinLength)({ value: 'sdf@mail.ru' });
// {value: 'sdf@mail.ru', message: 'Минимальное количество символов 20', status: false}
v.pipe(v.notEmpty, v.email, v.withMaxLength)({ value: 'vadimka@mail.ru' });
// {value: 'vadimka@mail.ru', message: '', status: true}

Example of setting custom errors

import { FV } from 'field-validation';

const v = new FV({ 
  LANG: 'CUSTOM', 
  CUSTOM_ERRORS: {
    notEmpty: "フィールドが入力されていません",
    onlyRus: "キーボード レイアウトを確認する",
    onlyEng: "キーボード レイアウトを確認する",
    withMaxLength: `最大文字数 [MAX_LENGTH]`,
    withMinLength: `最小文字数 [MIN_LENGTH]`,
    email: {
      spaces: "スペースがあってはならない",
      missingDogOrDot: `メールには @ と "." 文字を含める必要があります。 ラテン文字のみ使用できます`,
      notFromAvailable: `ご提供いただいたメールアドレスは受け付けておりません。`,
    }
  }
});

More examples in test folder

Documentation

Method/PropertyDescriptionDefault value
EMAIL_DOMAINSavailable emails domains[]
MAX_LENGTHmax lengthnull
MIN_LENGTHmin lengthnull
LANGlanguage for errors"RU" ("EN", "RU", "CUSTOM" )
CUSTOM_ERRORScustom phrases for errorsnull
pipe()combine functions-
setMaxLength()setter for MAX_LENGTH prop-
setMinLength()setter for MIN_LENGTH prop-
setCustomErrors()setter for CUSTOM_ERRORS prop-
setEmailDomains()setter for EMAIL_DOMAINS prop-
notEmpty()checking value for empty-
onlyRus()checking value for only russian letters-
onlyEng()checking value for only english letters-
withMaxLength()checking value for max length-
withMinLength()checking value for min length-
email()checking value for email-
0.0.7

1 year ago

0.0.6

1 year ago

0.0.5

1 year ago

0.0.4

1 year ago

0.0.3

1 year ago

0.0.2

1 year ago

0.0.1

1 year ago