{"version":3,"file":"FileUpload.CD10EDJ3.mjs","names":["useState","useRef","useCallback"],"sources":["https:/framerusercontent.com/modules/TIZRzlMpDx7nFwjGv9oK/z7GRxjOT9MqQOfBNrpHn/FileUpload.js"],"sourcesContent":["import{jsx as _jsx,jsxs as _jsxs}from\"react/jsx-runtime\";import{useState,useRef,useCallback,useEffect}from\"react\";import{addPropertyControls,ControlType}from\"framer\";function hexToRgba(hex,alpha){const r=parseInt(hex.slice(1,3),16);const g=parseInt(hex.slice(3,5),16);const b=parseInt(hex.slice(5,7),16);return`rgba(${r}, ${g}, ${b}, ${alpha})`;}/**\n * @framerIntrinsicWidth 400\n * @framerIntrinsicHeight 300\n * @framerSupportedLayoutWidth any-prefer-fixed\n * @framerSupportedLayoutHeight auto\n */export default function FileUpload(props){useEffect(()=>{const handleWindowFocus=()=>{openingRef.current=false;};window.addEventListener(\"focus\",handleWindowFocus);return()=>window.removeEventListener(\"focus\",handleWindowFocus);},[]);const{name=\"fileUrl\",title=\"Click here\",subtitle=\"to upload your file or drag and drop.\",supportedFormats=\"Supported Format: SVG, JPG, PNG (10mb each)\",maxFileSize=10,allowedFileTypes=[\"svg\",\"jpg\",\"png\"],uploadUrl=\"https://ecomer-dashboard.vercel.app/file/upload\",value,onChange,onSubmit,style={}}=props;const containerStyle={backgroundColor:style.container?.backgroundColor||\"#FFFFFF\",borderColor:style.container?.borderColor||\"#E5E5E5\",borderStyle:style.container?.borderStyle||\"dashed\",borderWidth:style.container?.borderWidth||2,borderRadius:style.container?.borderRadius||20,padding:style.container?.padding||40};const colors={primary:style.colors?.primary||\"#5E5CFF\",success:style.colors?.success||\"#22CC66\",error:style.colors?.error||\"#FF5588\",text:style.colors?.text||\"#333333\",secondaryText:style.colors?.secondaryText||\"#888888\",icon:style.colors?.icon||\"#5E5CFF\",iconBg:style.colors?.iconBg||hexToRgba(\"#5E5CFF\",.15),fileIconBg:style.colors?.fileIconBg||hexToRgba(\"#5E5CFF\",.15)};const fonts={title:style.fonts?.title||{},subtitle:style.fonts?.subtitle||{},fileName:style.fonts?.fileName||{},status:style.fonts?.status||{}};const[files,setFiles]=useState([]);const[isDragging,setIsDragging]=useState(false);const fileInputRef=useRef(null);const openingRef=useRef(false);useEffect(()=>{if(value&&Array.isArray(value)){const newItems=value.map(f=>({id:Date.now()+Math.random().toString(36).substr(2,9),file:f,name:f.name,size:f.size,progress:100,status:\"success\",uploadedUrl:\"\"}));setFiles(newItems);}},[value]);useEffect(()=>{onChange?.(files.map(f=>f.file));},[files,onChange]);const validateFile=useCallback(file=>{const extension=file.name.split(\".\").pop()?.toLowerCase()||\"\";const isValidType=allowedFileTypes.includes(extension);const isValidSize=file.size<=maxFileSize*1024*1024;let errorMessage=\"\";if(!isValidType){errorMessage=`Invalid file type. Allowed: ${allowedFileTypes.join(\", \")}`;}else if(!isValidSize){errorMessage=`File too large. Max size: ${maxFileSize}MB`;}return{isValid:isValidType&&isValidSize,errorMessage};},[allowedFileTypes,maxFileSize]);const uploadFile=useCallback(async(fileId,file)=>{const formData=new FormData;formData.append(\"file\",file);try{let progress=0;const progressInterval=setInterval(()=>{progress+=Math.floor(Math.random()*15)+5;if(progress<90){setFiles(prev=>prev.map(f=>f.id===fileId?{...f,progress}:f));}else{clearInterval(progressInterval);}},200);const response=await fetch(uploadUrl,{method:\"POST\",body:formData});clearInterval(progressInterval);if(response.ok){const data=await response.json();const uploadedUrl=data?.result?.secure_url||data?.url||\"\";setFiles(prev=>prev.map(f=>f.id===fileId?{...f,progress:100,status:\"success\",uploadedUrl,errorMessage:\"\"}:f));}else{throw new Error(`Upload failed: ${response.statusText}`);}}catch(error){console.error(\"Upload failed:\",error);setFiles(prev=>prev.map(f=>f.id===fileId?{...f,status:\"error\",errorMessage:\"Upload failed. Please try again.\",progress:0}:f));}},[uploadUrl]);const processFiles=useCallback(newFiles=>{const processedFiles=newFiles.map(file=>{const{isValid,errorMessage}=validateFile(file);const status=isValid?\"uploading\":\"error\";return{id:Date.now()+Math.random().toString(36).substr(2,9),file,name:file.name,size:file.size,progress:0,status,errorMessage,uploadedUrl:\"\"};});setFiles(prev=>[...prev,...processedFiles]);processedFiles.forEach(f=>{if(f.status===\"uploading\"){uploadFile(f.id,f.file);}});},[validateFile,uploadFile]);const handleRemoveFile=fileId=>{setFiles(prev=>prev.filter(f=>f.id!==fileId));};const handleRetry=useCallback(fileId=>{setFiles(prev=>prev.map(f=>{if(f.id===fileId){const{isValid,errorMessage}=validateFile(f.file);if(isValid){uploadFile(fileId,f.file);return{...f,status:\"uploading\",progress:0,errorMessage:\"\"};}else{return{...f,status:\"error\",errorMessage};}}return f;}));},[validateFile,uploadFile]);const handleFileInputChange=e=>{const selectedFiles=Array.from(e.target.files||[]);processFiles(selectedFiles);e.target.value=\"\";openingRef.current=false;};const uploadedFileUrl=files.find(f=>f.status===\"success\"&&f.uploadedUrl)?.uploadedUrl||\"\";return /*#__PURE__*/_jsxs(\"div\",{style:{width:\"100%\",display:\"flex\",flexDirection:\"column\",gap:20,fontFamily:\"inherit\",position:\"relative\"},children:[/*#__PURE__*/_jsxs(\"div\",{style:{backgroundColor:containerStyle.backgroundColor,borderRadius:containerStyle.borderRadius,border:`${containerStyle.borderWidth}px ${containerStyle.borderStyle} ${containerStyle.borderColor}`,padding:containerStyle.padding,display:\"flex\",flexDirection:\"column\",alignItems:\"center\",justifyContent:\"center\",cursor:\"pointer\",transition:\"all 0.2s ease\",minHeight:200,textAlign:\"center\",...isDragging&&{backgroundColor:hexToRgba(colors.primary,.07),boxShadow:`0 0 0 4px ${hexToRgba(colors.primary,.1)}`}},onClick:e=>{e.stopPropagation();if(openingRef.current)return;openingRef.current=true;if(fileInputRef.current){fileInputRef.current.value=\"\";fileInputRef.current.click();setTimeout(()=>{openingRef.current=false;},600);}},onDragEnter:e=>{e.preventDefault();setIsDragging(true);},onDragOver:e=>e.preventDefault(),onDragLeave:e=>{e.preventDefault();setIsDragging(false);},onDrop:e=>{e.preventDefault();setIsDragging(false);processFiles(Array.from(e.dataTransfer.files));},children:[/*#__PURE__*/_jsx(\"input\",{ref:fileInputRef,type:\"file\",onChange:handleFileInputChange,style:{display:\"none\"},accept:allowedFileTypes.map(t=>`.${t}`).join(\",\")}),/*#__PURE__*/_jsx(\"div\",{style:{width:80,height:80,borderRadius:\"50%\",backgroundColor:colors.iconBg,display:\"flex\",alignItems:\"center\",justifyContent:\"center\",marginBottom:16},children:/*#__PURE__*/_jsx(FileIcon,{color:colors.icon})}),/*#__PURE__*/_jsxs(\"p\",{style:{fontSize:18,margin:0,lineHeight:1.4,color:colors.text,...fonts.title},children:[/*#__PURE__*/_jsx(\"span\",{style:{color:colors.primary},children:title}),\" \",subtitle]}),/*#__PURE__*/_jsx(\"p\",{style:{fontSize:14,color:colors.secondaryText,margin:\"12px 0 0 0\",...fonts.subtitle},children:supportedFormats})]}),files.length>0&&/*#__PURE__*/_jsx(\"div\",{style:{display:\"flex\",flexDirection:\"column\",gap:12},children:files.map(f=>/*#__PURE__*/_jsxs(\"div\",{style:{backgroundColor:containerStyle.backgroundColor,borderRadius:containerStyle.borderRadius,border:`${containerStyle.borderWidth}px ${containerStyle.borderStyle} ${containerStyle.borderColor}`,padding:16,display:\"flex\",alignItems:\"center\",gap:16},children:[/*#__PURE__*/_jsx(\"div\",{style:{flexShrink:0,width:48,height:48,borderRadius:\"50%\",backgroundColor:f.status===\"success\"?hexToRgba(colors.success,.15):f.status===\"error\"?hexToRgba(colors.error,.15):colors.fileIconBg,display:\"flex\",alignItems:\"center\",justifyContent:\"center\"},children:/*#__PURE__*/_jsx(FileIcon,{color:f.status===\"success\"?colors.success:f.status===\"error\"?colors.error:colors.primary})}),/*#__PURE__*/_jsxs(\"div\",{style:{flex:1,minWidth:0},children:[/*#__PURE__*/_jsxs(\"div\",{style:{display:\"flex\",justifyContent:\"space-between\",alignItems:\"center\",gap:8,marginBottom:6},children:[/*#__PURE__*/_jsx(\"p\",{style:{margin:0,fontSize:16,fontWeight:500,color:colors.text,whiteSpace:\"nowrap\",overflow:\"hidden\",textOverflow:\"ellipsis\",...fonts.fileName},children:f.name}),f.status===\"uploading\"?/*#__PURE__*/_jsxs(\"span\",{style:{fontSize:14,color:colors.primary,flexShrink:0},children:[f.progress,\"%\"]}):/*#__PURE__*/_jsx(\"button\",{onClick:e=>{e.stopPropagation();handleRemoveFile(f.id);},style:{background:\"none\",border:\"none\",cursor:\"pointer\",flexShrink:0},children:/*#__PURE__*/_jsx(TrashIcon,{color:f.status===\"success\"?colors.success:colors.error})})]}),/*#__PURE__*/_jsx(\"div\",{style:{height:6,backgroundColor:\"#F0F0F0\",borderRadius:3,overflow:\"hidden\"},children:/*#__PURE__*/_jsx(\"div\",{style:{height:\"100%\",width:`${f.progress}%`,backgroundColor:f.status===\"success\"?colors.success:f.status===\"error\"?colors.error:colors.primary,transition:\"width 0.3s ease\"}})}),/*#__PURE__*/_jsxs(\"div\",{style:{display:\"flex\",justifyContent:\"space-between\",marginTop:6,flexWrap:\"wrap\",gap:4},children:[/*#__PURE__*/_jsx(\"p\",{style:{fontSize:14,margin:0,color:f.status===\"success\"?colors.success:f.status===\"error\"?colors.error:colors.secondaryText,...fonts.status},children:f.status===\"success\"?\"Upload Successful!\":f.status===\"error\"?`Upload failed! ${f.errorMessage}`:formatFileSize(f.size)}),f.status===\"error\"&&/*#__PURE__*/_jsxs(\"button\",{onClick:e=>{e.stopPropagation();handleRetry(f.id);},style:{background:\"none\",border:\"none\",color:colors.primary,cursor:\"pointer\",fontSize:14,padding:0,display:\"flex\",alignItems:\"center\",gap:4},children:[\"Try Again\",\" \",/*#__PURE__*/_jsx(RetryIcon,{color:colors.primary})]})]})]})]},f.id))}),/*#__PURE__*/_jsx(\"input\",{type:\"hidden\",name:name,value:uploadedFileUrl,required:true})]});}function formatFileSize(bytes){if(bytes<1024)return`${bytes} B`;if(bytes<1048576)return`${(bytes/1024).toFixed(2)} KB`;if(bytes<1073741824)return`${(bytes/1048576).toFixed(2)} MB`;return`${(bytes/1073741824).toFixed(2)} GB`;}const FileIcon=({color=\"#5E5CFF\"})=>/*#__PURE__*/_jsxs(\"svg\",{width:\"24\",height:\"24\",viewBox:\"0 0 24 24\",fill:\"none\",children:[/*#__PURE__*/_jsx(\"path\",{d:\"M14 2H6C5.47 2 4.96 2.21 4.59 2.59C4.21 2.96 4 3.47 4 4V20C4 20.53 4.21 21.04 4.59 21.41C4.96 21.79 5.47 22 6 22H18C18.53 22 19.04 21.79 19.41 21.41C19.79 21.04 20 20.53 20 20V8L14 2Z\",stroke:color,strokeWidth:\"2\"}),/*#__PURE__*/_jsx(\"path\",{d:\"M14 2V8H20\",stroke:color,strokeWidth:\"2\"})]});const TrashIcon=({color=\"#FF5588\"})=>/*#__PURE__*/_jsxs(\"svg\",{width:\"16\",height:\"16\",viewBox:\"0 0 24 24\",fill:\"none\",children:[/*#__PURE__*/_jsx(\"path\",{d:\"M3 6H21\",stroke:color,strokeWidth:\"2\"}),/*#__PURE__*/_jsx(\"path\",{d:\"M8 6V4C8 3.47 8.21 2.96 8.59 2.59C8.96 2.21 9.47 2 10 2H14C14.53 2 15.04 2.21 15.41 2.59C15.79 2.96 16 3.47 16 4V6M19 6V20C19 20.53 18.79 21.04 18.41 21.41C18.04 21.79 17.53 22 17 22H7C6.47 22 5.96 21.79 5.59 21.41C5.21 21.04 5 20.53 5 20V6H19Z\",stroke:color,strokeWidth:\"2\"})]});const RetryIcon=({color=\"#5E5CFF\"})=>/*#__PURE__*/_jsxs(\"svg\",{width:\"16\",height:\"16\",viewBox:\"0 0 24 24\",fill:\"none\",children:[/*#__PURE__*/_jsx(\"path\",{d:\"M3 12a9 9 0 0 1 9-9 9.75 9.75 0 0 1 6.74 2.74L21 8\",stroke:color,strokeWidth:\"2\",strokeLinecap:\"round\",strokeLinejoin:\"round\"}),/*#__PURE__*/_jsx(\"path\",{d:\"M21 3v5h-5\",stroke:color,strokeWidth:\"2\",strokeLinecap:\"round\",strokeLinejoin:\"round\"}),/*#__PURE__*/_jsx(\"path\",{d:\"M21 12a9 9 0 0 1-9 9 9.75 9.75 0 0 1-6.74-2.74L3 16\",stroke:color,strokeWidth:\"2\",strokeLinecap:\"round\",strokeLinejoin:\"round\"}),/*#__PURE__*/_jsx(\"path\",{d:\"M3 21v-5h5\",stroke:color,strokeWidth:\"2\",strokeLinecap:\"round\",strokeLinejoin:\"round\"})]});addPropertyControls(FileUpload,{name:{type:ControlType.String,title:\"Field Name\",defaultValue:\"fileUrl\"},title:{type:ControlType.String,title:\"Title\",defaultValue:\"Click here\"},subtitle:{type:ControlType.String,title:\"Subtitle\",defaultValue:\"to upload your file or drag and drop.\"},supportedFormats:{type:ControlType.String,title:\"Format Text\",defaultValue:\"Supported Format: SVG, JPG, PNG (10mb each)\"},maxFileSize:{type:ControlType.Number,title:\"Max File Size (MB)\",defaultValue:10},allowedFileTypes:{type:ControlType.Array,title:\"Allowed File Types\",control:{type:ControlType.String},defaultValue:[\"svg\",\"jpg\",\"png\"]},style:{type:ControlType.Object,title:\"Styling\",controls:{container:{type:ControlType.Object,title:\"Container\",controls:{backgroundColor:{type:ControlType.Color,title:\"Background\",defaultValue:\"#FFFFFF\"},borderColor:{type:ControlType.Color,title:\"Border Color\",defaultValue:\"#E5E5E5\"},borderStyle:{type:ControlType.Enum,title:\"Border Style\",options:[\"solid\",\"dashed\",\"dotted\"],defaultValue:\"dashed\"},borderWidth:{type:ControlType.Number,title:\"Border Width\",defaultValue:2},borderRadius:{type:ControlType.Number,title:\"Border Radius\",defaultValue:20},padding:{type:ControlType.Number,title:\"Padding\",defaultValue:40}}},colors:{type:ControlType.Object,title:\"Colors\",controls:{primary:{type:ControlType.Color,title:\"Primary\",defaultValue:\"#5E5CFF\"},success:{type:ControlType.Color,title:\"Success\",defaultValue:\"#22CC66\"},error:{type:ControlType.Color,title:\"Error\",defaultValue:\"#FF5588\"},text:{type:ControlType.Color,title:\"Text\",defaultValue:\"#333333\"},secondaryText:{type:ControlType.Color,title:\"Secondary Text\",defaultValue:\"#888888\"},icon:{type:ControlType.Color,title:\"Icon\",defaultValue:\"#5E5CFF\"},iconBg:{type:ControlType.Color,title:\"Icon Background\",defaultValue:hexToRgba(\"#5E5CFF\",.15)},fileIconBg:{type:ControlType.Color,title:\"File Icon Background\",defaultValue:hexToRgba(\"#5E5CFF\",.15)}}},fonts:{type:ControlType.Object,title:\"Typography\",controls:{title:{type:ControlType.Font,title:\"Title Font\",controls:\"extended\",defaultFontType:\"sans-serif\"},subtitle:{type:ControlType.Font,title:\"Subtitle Font\",controls:\"extended\",defaultFontType:\"sans-serif\"},fileName:{type:ControlType.Font,title:\"File Name Font\",controls:\"extended\",defaultFontType:\"sans-serif\"},status:{type:ControlType.Font,title:\"Status Font\",controls:\"extended\",defaultFontType:\"sans-serif\"}}}}}});\nexport const __FramerMetadata__ = {\"exports\":{\"default\":{\"type\":\"reactComponent\",\"name\":\"FileUpload\",\"slots\":[],\"annotations\":{\"framerSupportedLayoutWidth\":\"any-prefer-fixed\",\"framerIntrinsicWidth\":\"400\",\"framerContractVersion\":\"1\",\"framerIntrinsicHeight\":\"300\",\"framerSupportedLayoutHeight\":\"auto\"}},\"__FramerMetadata__\":{\"type\":\"variable\"}}}\n//# sourceMappingURL=./FileUpload.map"],"mappings":"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"}