@vue-use-form/yup
Version:
yup resolver for vue-use-form
21 lines (18 loc) • 489 B
JavaScript
import { set } from 'vue-use-form';
async function parseYupSchema(schema, values, options) {
const errors = {};
try {
await schema.validate(values, options);
} catch (errs) {
errs.inner.forEach((err) => {
set(errors, err.path, err.message);
});
}
return errors;
}
function useYupResolver(schema, options = {}) {
return async (values) => {
return await parseYupSchema(schema, values, { abortEarly: false, ...options });
};
}
export { useYupResolver };