file upload size validation initiated
This commit was merged in pull request #388.
This commit is contained in:
@@ -147,21 +147,20 @@ export default function UploadProduct({uploadTypes}) {
|
|||||||
action: 11307
|
action: 11307
|
||||||
}
|
}
|
||||||
|
|
||||||
if(!isValidFile(reqData.file_type, uploadTypes?.data)){ // FUNCTION TO CHECK IF FILE TYPE IS VALID
|
if(!isValidFile(imgDetails, uploadTypes?.data)){ // FUNCTION TO CHECK IF FILE TYPE IS VALID
|
||||||
setRequestStatus({loading: false, status: null, message: 'File type not supported'})
|
setRequestStatus({loading: false, status: null, message: 'File type not supported'})
|
||||||
return setTimeout(()=>{
|
return setTimeout(()=>{
|
||||||
setRequestStatus({loading: false, status: false, message: ''})
|
setRequestStatus({loading: false, status: false, message: ''})
|
||||||
},5000)
|
},5000)
|
||||||
}
|
}
|
||||||
|
|
||||||
if(imgDetails.size > 2097152){ // CHECKS IF IMAGE SIZE IS MORE THAN "MB"
|
// let validSize = isValidFileSize(imgDetails, uploadTypes?.data) // FUNCTION TO CHECK IF FILE SIZE IS VALID
|
||||||
setRequestStatus({loading: false, status: null, message: 'Image must be less than 2MB'})
|
// if(!validSize.status){
|
||||||
return setTimeout(()=>{
|
// setRequestStatus({loading: false, status: null, message: validSize.message})
|
||||||
setRequestStatus({loading: false, status: false, message: ''})
|
// return setTimeout(()=>{
|
||||||
},5000)
|
// setRequestStatus({loading: false, status: false, message: ''})
|
||||||
}
|
// },5000)
|
||||||
// console.log('TESTING',isValidFile(reqData.file_type, uploadTypes?.data))
|
// }
|
||||||
// console.log('TESTING', reqData)
|
|
||||||
|
|
||||||
//API CALL TO UPLOAD COMES HERE
|
//API CALL TO UPLOAD COMES HERE
|
||||||
setRequestStatus({loading: true, status: null, message: ''}) // SETS REQUEST LOADING TRUE
|
setRequestStatus({loading: true, status: null, message: ''}) // SETS REQUEST LOADING TRUE
|
||||||
@@ -430,7 +429,7 @@ export default function UploadProduct({uploadTypes}) {
|
|||||||
<div className="preview-upload-product lg:w-[580px] lg:h-[622px] w-full h-full bg-white dark:bg-[#11131F] lg:rounded-2xl">
|
<div className="preview-upload-product lg:w-[580px] lg:h-[622px] w-full h-full bg-white dark:bg-[#11131F] lg:rounded-2xl">
|
||||||
<div className="w-full h-full flex flex-col justify-between">
|
<div className="w-full h-full flex flex-col justify-between">
|
||||||
{/* heading */}
|
{/* heading */}
|
||||||
<div className="lg:px-[40px] lg:py-[33px] px-[30px] py-[23px] flex justify-between border-b dark:border-[#5356fb29] border-light-purple dark:border-[#5356fb29] mb-4 lg:mb-0">
|
<div className="lg:px-[40px] lg:py-[33px] px-[30px] py-[23px] flex justify-between border-b border-light-purple dark:border-[#5356fb29] mb-4 lg:mb-0">
|
||||||
<h1 className="text-dark-gray dark:text-white tracking-wide text-26 font-bold">
|
<h1 className="text-dark-gray dark:text-white tracking-wide text-26 font-bold">
|
||||||
Item Privew
|
Item Privew
|
||||||
</h1>
|
</h1>
|
||||||
@@ -582,9 +581,9 @@ export default function UploadProduct({uploadTypes}) {
|
|||||||
|
|
||||||
//FUNCTIONS to check if file upload type is valid
|
//FUNCTIONS to check if file upload type is valid
|
||||||
const isValidFile = (file, supportedFile=[]) => {
|
const isValidFile = (file, supportedFile=[]) => {
|
||||||
let fileToCheck = file.split("/")[1]
|
let fileType = file.type.split("/")[1];
|
||||||
let valid = supportedFile.filter(item => (
|
let valid = supportedFile.filter(item => (
|
||||||
item.name.toLowerCase() == fileToCheck.toLowerCase()
|
item.name.toLowerCase() == fileType.toLowerCase()
|
||||||
))
|
))
|
||||||
if(valid.length){
|
if(valid.length){
|
||||||
return true
|
return true
|
||||||
@@ -592,3 +591,21 @@ const isValidFile = (file, supportedFile=[]) => {
|
|||||||
return false
|
return false
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
//FUNCTIONS TO CHECK IF FILE SIZE IS VALID
|
||||||
|
const isValidFileSize = (file, supportedFile=[]) => {
|
||||||
|
let fileType = file.type.split("/")[1];
|
||||||
|
let fileSize = file.size;
|
||||||
|
let valid = supportedFile.filter(item => (
|
||||||
|
item.name.toLowerCase() == fileType.toLowerCase()
|
||||||
|
))
|
||||||
|
if(valid.length){
|
||||||
|
if((Number(valid[0].max_size_mb) * 1048576) >= fileSize){
|
||||||
|
return {status: true}
|
||||||
|
}else{
|
||||||
|
return {status: false, message: `File must not exceed ${valid[0].max_size_mb}MB`}
|
||||||
|
}
|
||||||
|
}else{
|
||||||
|
return false
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|||||||
Reference in New Issue
Block a user