diff --git a/package-lock.json b/package-lock.json index b5d3593..9952cec 100644 --- a/package-lock.json +++ b/package-lock.json @@ -18683,7 +18683,7 @@ }, "packages/validation": { "name": "@user-office-software/duo-validation", - "version": "5.0.0", + "version": "5.0.1", "license": "ISC", "dependencies": { "luxon": "^2.5.0", diff --git a/packages/validation/package.json b/packages/validation/package.json index ac37f99..3081796 100644 --- a/packages/validation/package.json +++ b/packages/validation/package.json @@ -1,6 +1,6 @@ { "name": "@user-office-software/duo-validation", - "version": "5.0.0", + "version": "5.0.1", "description": "Duo frontend and backend validation in one place.", "main": "lib/index.js", "types": "lib/index.d.ts", diff --git a/packages/validation/src/Questionary/fileUpload.ts b/packages/validation/src/Questionary/fileUpload.ts index 460c790..a582a9e 100644 --- a/packages/validation/src/Questionary/fileUpload.ts +++ b/packages/validation/src/Questionary/fileUpload.ts @@ -1,17 +1,14 @@ import * as Yup from 'yup'; -export const fileUploadQuestionValidationSchema = (field: any) => { - const config = field.config; - - let schema = Yup.array().of( - Yup.object({ id: Yup.string().required() }).required() - ); - - config.required && - (schema = schema.required('This is a required field').min(1)); - - config.max_files && - (schema = schema.max(config.max_files, `Max ${config.max} files`)); +export const fileUploadQuestionValidationSchema = (answer: any) => { + const config = answer.config; + let schema = Yup.array(); + if (config.required) { + schema = schema.min(1, 'Please upload a file.'); + } + if (config.max_files) { + schema = schema.max(config.max_files, `Max ${config.max} files`); + } return schema; };