{"version":3,"file":"FileUploadInput.DMk-6hum.mjs","names":["useState","useRef","__esmMin","init_npm_react_18_3_1","ce","init_jsx_runtime","c","p","_e","de","motion","addPropertyControls","init_framer_B6PCHH0A","ControlType","Icon","fillProp","init_FramerFormsShared","useInstanceId","borderProp","HiddenInput","createBackground","Border","iconProp","FileUploadInput","props","id","isVertical","maxSizeMB","focused","setFocused","invalid","setInvalid","fileName","setFileName","fileUploadUrl","setFileUploadUrl","isUploading","setIsUploading","imagePreviewUrl","setImagePreviewUrl","inputRef","onFocus","onBlur","accept","AUDIO_FILE_TYPES","fileTypeStrings","fileType","onFileChange","file","event","imagePreview","isValidType","type","category","maxSizeBytes","result","uploadFile","onKeyDown","clearFile","shadows","border","icon","layout","LOADING_SPINNER","xButton","getXButtonPosition","fetchPresignedURL","postToPresignedURL","presignedUrl","resolve","reject","PRESIGNED_URL_API","responseBody","response","removeURLParameters","url","urlString","location","inset","init_FileUploadInput"],"sources":["https:/framerusercontent.com/modules/UXNWRabX0IeVTgbvsbAG/3GOYCihsLzVJYc4MP4sZ/FileUploadInput.js"],"sourcesContent":["import{jsx as _jsx,jsxs as _jsxs}from\"react/jsx-runtime\";import{addPropertyControls,ControlType}from\"framer\";import{useState,useEffect,useRef}from\"react\";import{motion}from\"framer\";import{createBackground,Border,borderProp,fillProp,useInstanceId,iconProp,Icon,HiddenInput}from\"https://framerusercontent.com/modules/DwWOdDzQZGCuvkNlbUjZ/hMz2wp3CWZkNwPJFGPgQ/FramerFormsShared.js\";const PRESIGNED_URL_API=\"https://api.framerforms.com/s3/signed-url\";const LOADING_SPINNER=`url(\"data:image/svg+xml,%3Csvg width='24' height='24' viewBox='0 0 24 24' fill='none' xmlns='http://www.w3.org/2000/svg'%3E%3Cpath fill-rule='evenodd' clip-rule='evenodd' d='M12 24C18.627 24 24 18.6274 24 12C24 5.37256 18.627 0 12 0C5.37305 0 0 5.37256 0 12C0 18.6274 5.37305 24 12 24ZM12 22C17.5234 22 22 17.5229 22 12C22 6.47705 17.5234 2 12 2C6.47656 2 2 6.47705 2 12C2 17.5229 6.47656 22 12 22Z' fill='%23FFFFFF'/%3E%3C/svg%3E\")`;const AUDIO_FILE_TYPES=[\".mp3\",\".wav\",\".ogg\",\".m4a\",\".aac\",\".wma\",\".flac\",\".mid\",\".midi\",\".aif\",\".aiff\"].join(\",\");/**\n * @framerSupportedLayoutWidth fixed\n * @framerSupportedLayoutHeight any\n * @framerIntrinsicWidth 400\n * @framerDisableUnlink\n */export default function FileUploadInput(props){const{shadows,border,layout,icon,imagePreview,xButton}=props;const id=useInstanceId();const isVertical=props.layout.direction==\"vertical\";const maxSizeMB=Math.min(props.maxSizeMB||25,25);const[focused,setFocused]=useState(false);const[invalid,setInvalid]=useState(false);const[fileName,setFileName]=useState(\"\");const[fileUploadUrl,setFileUploadUrl]=useState(\"\");const[isUploading,setIsUploading]=useState(false);const[imagePreviewUrl,setImagePreviewUrl]=useState(\"\");const inputRef=useRef(null);useEffect(()=>{if(invalid){props.invalidEvent?.();}},[invalid]);function onFocus(){setFocused(true);props.focusEvent?.();if(invalid){setInvalid(false);}}function onBlur(){setFocused(false);props.blurEvent?.();}let accept=\"\";switch(props.fileTypes){case\"audio\":accept=AUDIO_FILE_TYPES;break;case\"video\":accept=\"video/*\";break;case\"image\":accept=\"image/*\";break;case\"custom\":const fileTypeStrings=[];for(const fileType of props.fileTypesCustom){if(fileType.startsWith(\".\")||fileType==\"video/*\"||fileType==\"image/*\"){fileTypeStrings.push(fileType);}else if(fileType==\"audio/*\"){fileTypeStrings.push(AUDIO_FILE_TYPES);}else{fileTypeStrings.push(`.${fileType}`);}}accept=fileTypeStrings.join(\",\");break;}async function onFileChange(event,maxSizeMB){const file=event.target.files[0];setFileName(file?file.name:\"\");setImagePreviewUrl(\"\");if(!file){return;}// Add image preview if it's an image file and imagePreview is enabled\nif(imagePreview&&file.type.startsWith(\"image/\")){setImagePreviewUrl(URL.createObjectURL(file));}// File type validation\nif(props.fileTypes!==\"all\"){let isValidType=false;if(props.fileTypes===\"custom\"&&props.fileTypesCustom?.length){isValidType=props.fileTypesCustom.some(type=>{if(type.startsWith(\".\")){// Check file extension\nreturn file.name.toLowerCase().endsWith(type.toLowerCase());}else if(type.includes(\"/*\")){// Check MIME type pattern (e.g., \"image/*\")\nconst[category]=type.split(\"/\");return file.type.startsWith(`${category}/`);}// Exact MIME type match\nreturn file.type===type;});}else{// Handle built-in types (audio, video, image)\nisValidType=file.type.startsWith(`${props.fileTypes}/`);}if(!isValidType){setInvalid(true);console.error(`Invalid file type. Allowed: ${accept}`);return;}}// File size validation\nconst maxSizeBytes=maxSizeMB*1024*1024;if(file.size>maxSizeBytes){setInvalid(true);console.error(`File size exceeds the maximum limit of ${maxSizeMB}MB.`);return;}setIsUploading(true);const result=await uploadFile(file);setFileUploadUrl(result?.fileLocation||\"\");setIsUploading(false);}function onKeyDown(event){if(event.key==\"Enter\"){inputRef.current?.click();}}function clearFile(){setFileName(\"\");setFileUploadUrl(\"\");setImagePreviewUrl(\"\");setIsUploading(false);if(inputRef.current){inputRef.current.value=\"\";}}return /*#__PURE__*/_jsxs(motion.div,{\"data-framerforms\":true,onFocus:onFocus,onBlur:onBlur,onKeyDown:onKeyDown,animate:{...createBackground(props.fill,null,focused,invalid),boxShadow:invalid&&shadows?.invalid||focused&&shadows?.focus||shadows?.default,borderColor:invalid&&border?.colorInvalid||focused&&border?.colorFocus||border?.color},style:{borderRadius:props.radius,padding:props.padding,color:props.color,display:\"flex\",flexDirection:`${isVertical?\"column\":\"row\"}${icon?.location==\"end\"?\"-reverse\":\"\"}`,alignItems:isVertical?layout.alignH:\"center\",justifyContent:isVertical?\"center\":layout.alignH,gap:layout.gap,textAlign:\"center\",backdropFilter:props.bgBlur?`blur(${props.bgBlur}px)`:undefined,...props.font,...props.style},initial:false,transition:props.transition,children:[/*#__PURE__*/_jsx(HiddenInput,{name:props.name,required:props.required||isUploading,value:fileUploadUrl,setInvalid:setInvalid,noPrefill:true}),/*#__PURE__*/_jsx(\"input\",{ref:inputRef,type:\"file\",accept:accept,autoFocus:props.autoFocus,onChange:event=>onFileChange(event,maxSizeMB),style:{position:\"absolute\",inset:0,opacity:0,cursor:\"pointer\"},\"data-framerforms-no-prefill\":true}),icon&&(isUploading&&icon.spinner?/*#__PURE__*/_jsx(motion.div,{animate:{rotate:360},transition:{duration:1,repeat:Infinity,ease:\"linear\"},style:{width:icon.size,height:icon.size,background:`conic-gradient(from 0deg at 50% 50%, ${icon.color||props.color} 0%, transparent 100%)`,mask:LOADING_SPINNER,maskSize:icon.size}}):imagePreviewUrl&&imagePreview?/*#__PURE__*/_jsxs(\"div\",{style:{width:imagePreview.aspectRatio===\"square\"?imagePreview.height:\"auto\",height:imagePreview.height,maxWidth:imagePreview.aspectRatio===\"square\"?imagePreview.height:\"100%\",maxHeight:imagePreview.height,borderRadius:imagePreview.radius,overflow:\"hidden\",boxShadow:imagePreview.shadows,position:\"relative\",borderColor:imagePreview.border?.color},children:[/*#__PURE__*/_jsx(\"img\",{src:imagePreviewUrl,style:{width:\"100%\",height:\"100%\",objectFit:\"cover\",objectPosition:\"center\"}}),imagePreview.border&&/*#__PURE__*/_jsx(Border,{...imagePreview.border})]}):/*#__PURE__*/_jsx(Icon,{...icon,defaultImage:`url('data:image/svg+xml,${encodeURIComponent(`<svg xmlns=\"http://www.w3.org/2000/svg\" width=\"28\" height=\"28\"><path d=\"M 9.366 18.419 C 8.284 18.422 7.242 18.009 6.456 17.266 C 5.69 16.541 5.254 15.535 5.25 14.481 C 5.25 13.437 5.684 12.436 6.456 11.697 C 7.242 10.953 8.284 10.54 9.366 10.544 C 9.624 9.395 10.378 8.385 11.463 7.738 C 12.009 7.413 12.61 7.191 13.235 7.082 C 13.869 6.971 14.518 6.973 15.152 7.088 C 15.783 7.202 16.383 7.429 16.919 7.753 C 17.445 8.068 17.903 8.483 18.269 8.975 C 18.626 9.458 18.873 10 18.997 10.57 C 19.121 11.139 19.12 11.725 18.992 12.294 L 19.867 12.294 C 21.558 12.294 22.929 13.665 22.929 15.356 C 22.929 17.048 21.558 18.419 19.867 18.419 L 18.992 18.419\" fill=\"transparent\" stroke-width=\"1.75\" stroke=\"white\" stroke-linecap=\"round\" stroke-linejoin=\"round\"></path><path d=\"M 11.117 15.794 L 13.742 13.169 L 16.367 15.794 M 13.742 13.169 L 13.742 21.044\" fill=\"transparent\" stroke-width=\"1.75\" stroke=\"white\" stroke-linecap=\"round\" stroke-linejoin=\"round\"></path><path d=\"M 0.6 5.85 C 0.6 2.951 2.951 0.6 5.85 0.6 L 22.15 0.6 C 25.049 0.6 27.4 2.951 27.4 5.85 L 27.4 22.15 C 27.4 25.049 25.049 27.4 22.15 27.4 L 5.85 27.4 C 2.951 27.4 0.6 25.049 0.6 22.15 Z\" fill=\"transparent\" stroke-width=\"1.2\" stroke=\"white\"></path></svg>`)}')`})),isUploading?props.uploadingText.replace(\"[FileName]\",fileName):fileName.length?fileName:props.text.replace(\"##\",maxSizeMB.toString()),xButton&&fileName&&/*#__PURE__*/_jsx(motion.button,{onClick:e=>{e.preventDefault();clearFile();},style:{position:\"absolute\",background:xButton.background||\"none\",padding:xButton.padding,borderRadius:xButton.radius,border:\"none\",cursor:\"pointer\",display:\"flex\",alignItems:\"center\",justifyContent:\"center\",...getXButtonPosition(xButton.location,xButton.inset)},children:/*#__PURE__*/_jsx(Icon,{...xButton,defaultImage:`url('data:image/svg+xml,${encodeURIComponent(`<svg width=\"16\" height=\"16\" viewBox=\"0 0 16 16\" fill=\"none\" xmlns=\"http://www.w3.org/2000/svg\"><path d=\"M12 4L4 12M4 4L12 12\" stroke=\"currentColor\" stroke-width=\"1.5\" stroke-linecap=\"round\" stroke-linejoin=\"round\"/></svg>`)}')`})}),border&&/*#__PURE__*/_jsx(Border,{...border}),/*#__PURE__*/_jsx(\"style\",{dangerouslySetInnerHTML:{__html:`#${id} input:focus { outline: none; }`}})]});}FileUploadInput.displayName=\"File Upload Input LOL\";addPropertyControls(FileUploadInput,{userId:{type:ControlType.String,defaultValue:\"\",placeholder:\"FramerForms User ID\",title:\"User ID\",preventLocalization:true,hidden:props=>true},name:{type:ControlType.String,defaultValue:\"File\",preventLocalization:true},required:{type:ControlType.Boolean,defaultValue:false},autoFocus:{type:ControlType.Boolean,defaultValue:false,title:\"Auto-Focus\"},fileTypes:{type:ControlType.Enum,defaultValue:\"all\",options:[\"all\",\"audio\",\"video\",\"image\",\"custom\"],optionTitles:[\"Any File\",\"Any Audio File\",\"Any Video File\",\"Any Image File\",\"Custom\"]},fileTypesCustom:{type:ControlType.Array,defaultValue:[\".pdf\"],control:{type:ControlType.String,placeholder:\".pdf\",preventLocalization:true},title:\" \",hidden:props=>props.fileTypes!==\"custom\"},maxSizeMB:{type:ControlType.Number,defaultValue:25,min:1,step:1,max:25,unit:\" MB\",title:\"Max Size\"},text:{type:ControlType.String,defaultValue:`Click to upload file or drag-and-drop. Max ## MB`,description:\"*##* → max size in MB\"},uploadingText:{type:ControlType.String,defaultValue:\"Uploading [FileName]...\",description:\"*[FileName]* → file name\"},layout:{type:ControlType.Object,controls:{direction:{type:ControlType.Enum,defaultValue:\"vertical\",options:[\"horizontal\",\"vertical\"],optionTitles:[\"Horizontal\",\"Vertical\"],optionIcons:[\"direction-horizontal\",\"direction-vertical\"],displaySegmentedControl:true},alignH:{type:ControlType.Enum,defaultValue:\"center\",options:[\"start\",\"center\",\"end\"],optionTitles:[\"Left\",\"Center\",\"Right\"],displaySegmentedControl:true,title:\"Align\"},gap:{type:ControlType.Number,defaultValue:12,min:0,step:1}}},font:{type:\"font\",controls:\"extended\",defaultFontType:\"sans-serif\",defaultValue:{fontSize:14,lineHeight:1.2}},color:{type:ControlType.Color,defaultValue:\"#999999\",title:\"Color\"},fill:fillProp({}),radius:{type:ControlType.BorderRadius,defaultValue:\"10px\"},padding:{type:ControlType.Padding,defaultValue:\"12px\"},icon:iconProp({size:28,controls:{location:{type:ControlType.Enum,options:[\"start\",\"end\"],optionTitles:[\"Start\",\"End\"],displaySegmentedControl:true},spinner:{type:ControlType.Boolean,description:\"Show a loading spinner while file is uploading\"}}}),xButton:iconProp({size:14,buttonTitle:\"Options\",controls:{location:{type:ControlType.Enum,defaultValue:\"topRight\",options:[\"topLeft\",\"topRight\",\"centerLeft\",\"centerRight\",\"bottomLeft\",\"bottomRight\"],optionTitles:[\"Top Left\",\"Top Right\",\"Center Left\",\"Center Right\",\"Bottom Left\",\"Bottom Right\"]},inset:{type:ControlType.Number,defaultValue:4,min:0,step:1},background:{type:ControlType.Color,optional:true},padding:{type:ControlType.Padding,defaultValue:\"4px\"},radius:{type:ControlType.BorderRadius,defaultValue:\"12px\"}}}),imagePreview:{type:ControlType.Object,optional:true,defaultValue:{height:40,aspectRatio:\"auto\"},controls:{height:{type:ControlType.Number,defaultValue:40,min:0,step:1},aspectRatio:{type:ControlType.Enum,defaultValue:\"auto\",options:[\"auto\",\"square\"],optionTitles:[\"Auto\",\"Square\"],displaySegmentedControl:true},radius:{type:ControlType.BorderRadius,defaultValue:\"5px\"},border:borderProp({focus:false,invalid:false,defaultValue:false}),shadows:{type:ControlType.BoxShadow}},hidden:props=>props.fileTypes===\"audio\"||props.fileTypes===\"video\"},border:borderProp({}),shadows:{type:ControlType.Object,buttonTitle:\"Shadows\",optional:true,controls:{default:{type:ControlType.BoxShadow},focus:{type:ControlType.BoxShadow}}},bgBlur:{type:ControlType.Number,min:0,max:100,step:1,displayStepper:true,title:\"BG Blur\"},transition:{type:ControlType.Transition,defaultValue:{type:false}},focusEvent:{type:ControlType.EventHandler,title:\"Focus\"},blurEvent:{type:ControlType.EventHandler,title:\"Blur\"},invalidEvent:{type:ControlType.EventHandler,title:\"Invalid\"}});function uploadFile(file){return new Promise((resolve,reject)=>{fetchPresignedURL(file).then(({presignedUrl})=>postToPresignedURL(file,presignedUrl)).then(resolve).catch(reject);});}function fetchPresignedURL(file){return fetch(PRESIGNED_URL_API,{method:\"POST\",body:JSON.stringify({file_name:file.name?.replace(/\\s+/g,\"-\")}),headers:{\"Content-Type\":\"application/json\"}}).then(async response=>{const responseBody=await response.json();if(response.status>200){throw new Error(responseBody.errorMessage);}return responseBody;});}function postToPresignedURL(file,presignedUrl){return new Promise((resolve,reject)=>{fetch(presignedUrl,{method:\"PUT\",body:file}).then(()=>resolve({fileLocation:removeURLParameters(presignedUrl)})).catch(reject);});}function removeURLParameters(urlString){const url=new URL(urlString);url.search=\"\";return url.toString();}function getXButtonPosition(location,inset){switch(location){case\"topLeft\":return{top:inset,left:inset};case\"topRight\":return{top:inset,right:inset};case\"centerLeft\":return{top:\"50%\",left:inset,transform:\"translateY(-50%)\"};case\"centerRight\":return{top:\"50%\",right:inset,transform:\"translateY(-50%)\"};case\"bottomLeft\":return{bottom:inset,left:inset};case\"bottomRight\":return{bottom:inset,right:inset};default:return{top:inset,right:inset}// Default to topRight\n;}}\nexport const __FramerMetadata__ = {\"exports\":{\"default\":{\"type\":\"reactComponent\",\"name\":\"FileUploadInput\",\"slots\":[],\"annotations\":{\"framerContractVersion\":\"1\",\"framerSupportedLayoutHeight\":\"any\",\"framerIntrinsicWidth\":\"400\",\"framerDisableUnlink\":\"\",\"framerSupportedLayoutWidth\":\"fixed\"}},\"__FramerMetadata__\":{\"type\":\"variable\"}}}"],"mappings":"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"}