- updated mime type check for zip files;

This commit is contained in:
Vitalii Kiiko
2025-02-05 11:14:07 +01:00
parent 8519aa1fea
commit a2420ba26d
3 changed files with 5 additions and 10 deletions

View File

@@ -133,12 +133,10 @@ const Fileupload = ({
} }
const onBeforeDrop = (e) => { const onBeforeDrop = (e) => {
console.log('e.dataTransfer.files:', e.dataTransfer.files)
return !isEmpty(e.dataTransfer.files) ? validateFileInputType(e.dataTransfer.files) : false; return !isEmpty(e.dataTransfer.files) ? validateFileInputType(e.dataTransfer.files) : false;
} }
const onBeforeSelect = (e) => { const onBeforeSelect = (e) => {
console.log('e.originalEvent.target.files:', e.originalEvent.target.files)
if (e.originalEvent.target.files) { if (e.originalEvent.target.files) {
return !isEmpty(e.originalEvent.target.files) return !isEmpty(e.originalEvent.target.files)
? validateFileInputType(e.originalEvent.target.files) ? validateFileInputType(e.originalEvent.target.files)
@@ -148,11 +146,10 @@ const Fileupload = ({
const validateFileInputType = (files) => { const validateFileInputType = (files) => {
const MIMEtype = new RegExp(acceptFormats); const MIMEtype = new RegExp(acceptFormats);
console.log('MIMEtype', MIMEtype)
return Array.prototype.every.call(files, function passesAcceptedFormat(file) { return Array.prototype.every.call(files, function passesAcceptedFormat(file) {
const fileExtension = `.${file.name.split('.').pop().toLowerCase()}`; const fileExtension = `.${file.name.split('.').pop().toLowerCase()}`;
const fileType = file.type; const fileType = file.type;
console.log('fileExtension', fileExtension, MIMEtype.test(fileType), MIMEtype.test(fileExtension))
return MIMEtype.test(fileType) || MIMEtype.test(fileExtension); return MIMEtype.test(fileType) || MIMEtype.test(fileExtension);
}); });
} }

View File

@@ -121,18 +121,17 @@ const FileuploadAsync = ({
} }
const onBeforeDrop = (e) => { const onBeforeDrop = (e) => {
console.log('e.dataTransfer.files:', e.dataTransfer.files)
return !isEmpty(e.dataTransfer.files) ? validateFileInputType(e.dataTransfer.files) : false; return !isEmpty(e.dataTransfer.files) ? validateFileInputType(e.dataTransfer.files) : false;
} }
const onBeforeSelect = (e) => { const onBeforeSelect = (e) => {
const files = inputRef.current.getFiles(); const files = inputRef.current.getFiles();
const uploadedfiles = inputRef.current.getUploadedFiles(); const uploadedfiles = inputRef.current.getUploadedFiles();
console.log('files:', files)
if (!multiple && (uploadedfiles.length > 0 || files.length > 0)) { if (!multiple && (uploadedfiles.length > 0 || files.length > 0)) {
return false; return false;
} }
console.log('e.originalEvent.target.files:', e.originalEvent.target.files)
if (e.originalEvent.target.files) { if (e.originalEvent.target.files) {
return !isEmpty(e.originalEvent.target.files) return !isEmpty(e.originalEvent.target.files)
? validateFileInputType(e.originalEvent.target.files) ? validateFileInputType(e.originalEvent.target.files)
@@ -142,11 +141,10 @@ const FileuploadAsync = ({
const validateFileInputType = (files) => { const validateFileInputType = (files) => {
const MIMEtype = new RegExp(acceptFormats); const MIMEtype = new RegExp(acceptFormats);
console.log('MIMEtype', MIMEtype)
return Array.prototype.every.call(files, function passesAcceptedFormat(file) { return Array.prototype.every.call(files, function passesAcceptedFormat(file) {
const fileExtension = `.${file.name.split('.').pop().toLowerCase()}`; const fileExtension = `.${file.name.split('.').pop().toLowerCase()}`;
const fileType = file.type; const fileType = file.type;
console.log('fileExtension', fileExtension, MIMEtype.test(fileType), MIMEtype.test(fileExtension))
return MIMEtype.test(fileType) || MIMEtype.test(fileExtension); return MIMEtype.test(fileType) || MIMEtype.test(fileExtension);
}); });
} }

View File

@@ -1,7 +1,7 @@
export const mimeTypes = [ export const mimeTypes = [
{ name: 'PDF', code: '.pdf,application/pdf' }, { name: 'PDF', code: '.pdf,application/pdf' },
{ name: 'p7m', code: '.p7m,application/pkcs7-mime,application/x-pkcs7-mime' }, { name: 'p7m', code: '.p7m,application/pkcs7-mime,application/x-pkcs7-mime' },
{ name: 'ZIP', code: 'application/zip' }, { name: 'ZIP', code: 'application/zip,.zip' },
{ name: 'Immagine', code: 'image/*' }, { name: 'Immagine', code: 'image/*' },
{ {
name: 'Word', name: 'Word',