UNPKG

@vnmfify/core

Version:

```shell npm i @vnmfify/core -S ```

33 lines (31 loc) 1.04 kB
import _isEmpty from "lodash/isEmpty"; import _filter from "lodash/filter"; import _flatMap from "lodash/flatMap"; export function validateAll(fields) { return new Promise((resolve, reject) => { Promise.all(fields.map(field => field.validate().then(() => [], reason => [reason]))).then(errors => _flatMap(errors, error => error)).then(errors => _filter(errors, error => !_isEmpty(error.errors))).then(errors => { if (!_isEmpty(errors)) { reject(errors); } else { resolve(); } }); }); } export function validateSequence(fields) { return new Promise((resolve, reject) => { fields.reduce((promise, field) => promise.then(errors => { if (_isEmpty(errors)) { return field.validate().then(() => [], error => [error]); } return errors; }), Promise.resolve([])).then(errors => { if (_isEmpty(errors)) { resolve(); } else { reject(errors); } }); }); } //# sourceMappingURL=form.validate.js.map