Validators_ClientUpdateValidator.js

const Schema = require('@d3v4pp/validate');
const { phoneMessages, addressMessages,
    zipCodeMessages, cityMessages,
    emailMessages, denominationSocialMessages,
    presidentMessages, rcsMessages,
    siretMessages, tvaIntracomMessages,
    contactMessages, 
    contactPostMessages} = require('./ValidatorsMessagesFR');
const { email, phone, codePostal } = require('@d3v4pp/rex')

/**
 * @memberof Myintranet.Validators
 */
const ClientUpdateValidator = new Schema({
    id: {
        type: Number,
        required: true,
    },
    address: {
        type: String,
        required: true,
        length: { min: 1, max: 255 },
        message: addressMessages
    },
    city: {
        type: String,
        required: true,
        length: { min: 2, max: 100 },
        message: cityMessages
    },
    zipCode: {
        type: String,
        required: true,
        match: codePostal,
        length: { min: 2, max: 5 },
        message: zipCodeMessages
    },
    contact: {
        type: String,
        required: true,
        length: { min: 1, max: 100 },
        message: contactMessages

    },
    contactMail: {
        type: String,
        match: email,
        //required: true,
        length: { min: 2, max: 100 },
        message: emailMessages

    },
    contactPost: {
        type: String,
        required: true,
        length: { min: 1, max: 168 },
        message: contactPostMessages

    },
    contactPhone: {
        type: String,
        //required: true,
        match: phone,
        length: { min: 10, max: 14 },
        message: phoneMessages

    },
    denominationSocial: {
        type: String,
        required: true,
        length: { min: 3, max: 40 },
        message: denominationSocialMessages
    },
    president: {
        type: String,
        required: true,
        length: { min: 2, max: 168 },
        message: presidentMessages
    },
    rcs: {
        type: String,
        required: true,
        length: { min: 1, max: 100 },
        message: rcsMessages
    },
    siret: {
        type: String,
        required: true,
        length: { min: 14, max: 14 }
        ,
        message: siretMessages
    },
    tvaIntracom: {
        type: String,
        required: true,
        length: { min: 13, max: 13 },
        message: tvaIntracomMessages
    },
})

module.exports = ClientUpdateValidator;