forFilterCast() { return yup .number() .integer() .nullable(true) .label(this.label); }
forFilterCast() { return yup .array() .ensure() .compact() .of( yup .number() .integer() .nullable(true) .label(this.label), ) .label(this.label); }
// form validation useing Yup const validate = () => Yup.object({ name: Yup.string() .min(2, "Must be more then one character") .required("This field is required"), description: Yup.string() .min(10, "Must be more than 10 characters") .required("This field is required"), category: Yup.string().required("This field is required"), price: Yup.number() .positive("Must be more than 0") .integer("Must be more than 0") .required("This field is required"), numberInStock: Yup.number() .integer("Must be more than 0") .required("This field is required") })
async store(req, res) { const schema = object().shape({ title: string().required(), duration: number() .required() .integer(), price: number() .required() .positive(), }); if (!(await schema.isValid(req.body))) { return res.status(400).json({ error: 'validation fails' }); } const planExists = await Plan.findOne({ where: { title: req.body.title } }); if (planExists) return res.status(400).json({ error: 'Plan already exists.' }); const { id } = await Plan.create(req.body); return res.json({ id, }); }
.positive() .max(120) .integer(), weight: number() .required()
.typeError('PIN must be a number') .positive('Please enter a positive number') .integer('PIN must be an integer') .length(4, 'PIN must be 4 numbers'),
forForm() { let yupChain = yup .number() .integer() .nullable(true) .label(this.label); if (this.required) { yupChain = yupChain.required(); } if (this.min || this.min === 0) { yupChain = yupChain.min(this.min); } if (this.max) { yupChain = yupChain.max(this.max); } return yupChain; }
// form validation useing Yup const validate = () => Yup.object({ name: Yup.string() .min(2, "Must be more then one character") .required("This field is required"), description: Yup.string() .min(10, "Must be more than 10 characters") .required("This field is required"), category: Yup.string().required("This field is required"), price: Yup.number() .positive("Must be more than 0") .integer("Must be more than 0") .required("This field is required"), numberInStock: Yup.number() .positive("Must be more than 0") .integer("Must be more than 0") .required("This field is required") })
forFilter() { return yup .number() .integer() .nullable(true) .label(this.label); }
forFormCast() { let yupChain = yup .number() .integer() .nullable(true) .label(this.label); return yupChain; }
forImport() { let yupChain = yup .number() .integer() .nullable(true) .label(this.label); if (this.required) { yupChain = yupChain.required(); } if (this.min || this.min === 0) { yupChain = yupChain.min(this.min); } if (this.max) { yupChain = yupChain.max(this.max); } return yupChain; }
forImport() { let yupChain = yup .number() .integer() .nullable(true) .label(this.label); if (this.required) { yupChain = yupChain.required(); } if (this.min || this.min === 0) { yupChain = yupChain.min(this.min); } if (this.max) { yupChain = yupChain.max(this.max); } return yupChain; }
// form validation useing Yup const validate = () => Yup.object({ name: Yup.string() .min(2, "Must be more then one character") .required("This field is required"), description: Yup.string() .min(10, "Must be more than 10 characters") .required("This field is required"), category: Yup.string().required("This field is required"), price: Yup.number() .positive("Must be more than 0") .integer("Must be more than 0") .required("This field is required"), numberInStock: Yup.number() .integer("Must be more than 0") .required("This field is required") })
// form validation useing Yup const validate = () => Yup.object({ name: Yup.string() .min(2, "Must be more then one character") .required("This field is required"), description: Yup.string() .min(10, "Must be more than 10 characters") .required("This field is required"), category: Yup.string().required("This field is required"), price: Yup.number() .positive("Must be more than 0") .integer("Must be more than 0") .required("This field is required"), numberInStock: Yup.number() .positive("Must be more than 0") .integer("Must be more than 0") .required("This field is required") })