in src/services/form-validation/utils/mime.ts [13:35]
export function validateFilePattern(file: FormFieldValidationInput, filePattern: string) {
if (!filePattern) {
return true;
}
const pattern = globStringToRegex(filePattern);
let valid = true;
if (pattern.regexp && pattern.regexp.length) {
const regexp = new RegExp(pattern.regexp, 'i');
valid =
(!_.isNil(file.contentType) && regexp.test(file.contentType)) ||
(!_.isNil(file.fileName) && regexp.test(file.fileName));
}
valid = pattern.excludes.reduce((result, excludePattern) => {
const exclude = new RegExp(excludePattern, 'i');
return (
result &&
(_.isNil(file.contentType) || !exclude.test(file.contentType)) &&
(_.isNil(file.fileName) || !exclude.test(file.fileName))
);
}, valid);
return valid;
}