{"version":3,"file":"FileUploadInput.DiTAfwFP.mjs","names":["useState","useRef","useState","useRef","maxSizeMB"],"sources":["https:/framerusercontent.com/modules/IQzDFpniaD3AmKydBXP4/Cs0w5Su72eeuirGvKldQ/PhoneNumberInput.js","https:/framerusercontent.com/modules/UXNWRabX0IeVTgbvsbAG/HnueHi4dWXgSweuC31vu/FileUploadInput.js"],"sourcesContent":["import{jsx as _jsx,jsxs as _jsxs}from\"react/jsx-runtime\";import{addPropertyControls,ControlType,RenderTarget}from\"framer\";import{useState,useEffect,useRef}from\"react\";import{motion}from\"framer-motion\";import{Border,createBackground,parsePadding,fillProp,borderProp,shadowsProp,useInstanceId,HiddenInput}from\"https://framerusercontent.com/modules/DwWOdDzQZGCuvkNlbUjZ/p64C0n6xNEFY9NovSiJw/FramerFormsShared.js\";/**\n * @framerSupportedLayoutWidth fixed\n * @framerSupportedLayoutHeight any\n * @framerIntrinsicWidth 400\n * @framerDisableUnlink\n */export default function PhoneNumberInput(props){const{countryCodeOptions,border,shadows}=props;const id=useInstanceId();const isCanvas=RenderTarget.current()===RenderTarget.canvas;const hasCC=!!countryCodeOptions;const ccConnected=hasCC&&countryCodeOptions?.style!==\"split\";const phoneFormat=props.format==\"custom\"?props.customFormat==\"\"?\"XXXXXXXXXX\":props.customFormat:props.format;const countryCodeFormat=hasCC?countryCodeOptions.format==\"custom\"?countryCodeOptions.customFormat==\"\"?\"X\":countryCodeOptions.customFormat:countryCodeOptions.format:\"\";const maxDigits=countXCharacters(phoneFormat);const defaultCountryCode=String(countryCodeOptions?.defaultCountryCode)??\"1\";const[countryCode,setCountryCode]=useState(defaultCountryCode);const[phoneNumber,setPhoneNumber]=useState(\"\");const[countryCodeFocused,setCountryCodeFocused]=useState(false);const[phoneNumberFocused,setPhoneNumberFocused]=useState(false);const[invalid,setInvalid]=useState(false);const countryCodeInputRef=useRef(null);const phoneNumberInputRef=useRef(null);const[pt,pr,pb,pl]=parsePadding(props.padding);const[tl,tr,br,bl]=parsePadding(props.radius);const[bwt,bwr,bwb,bwl]=parsePadding(border?.width);useEffect(()=>{if(invalid){props.invalidEvent?.();}},[invalid]);const isComplete=phoneNumber.length===maxDigits;function onPhoneNumberChange(event){const unformatted=unformatValue(event.target.value).substring(0,maxDigits);const formattedValue=formatPhoneNumber(phoneNumber,phoneFormat);if(!isLastCharacterANumber(formattedValue)&&event.target.value.length<formattedValue.length){setPhoneNumber(unformatted.slice(0,-1));}else{setPhoneNumber(unformatted);}}function onCountryCodeChange(event){const unformatted=unformatValue(event.target.value).substring(0,3);const formattedValue=formatCountryCode(countryCode,countryCodeFormat);if(!isLastCharacterANumber(formattedValue)&&event.target.value.length<formattedValue.length){setCountryCode(unformatted.slice(0,-1));}else{setCountryCode(unformatted);}}function onCountryCodeFocus(){setCountryCodeFocused(true);if(invalid){setInvalid(false);}const lastChar=countryCodeFormat.slice(-1);if(lastChar!=\"X\"&&lastChar!=\"x\"){const countryCodeInput=countryCodeInputRef.current;if(countryCodeInput){const formattedValue=formatCountryCode(countryCode,countryCodeFormat);const cursorPosition=Math.max(countryCodeFormat.lastIndexOf(\"X\"),countryCodeFormat.lastIndexOf(\"x\"))+countryCode.length;setTimeout(()=>countryCodeInput.setSelectionRange(cursorPosition,cursorPosition),5);}}props.focusEvent?.();}function onPhoneNumberKeyDown(event){if(hasCC&&phoneNumber===\"\"){if(event.key===\"Backspace\"){countryCodeInputRef.current?.focus();}if(event.key===\"ArrowLeft\"){countryCodeInputRef.current?.focus();event.preventDefault();}}}function onCountryCodeKeyDown(event){if(hasCC){if(event.key===\"ArrowRight\"&&event.target.selectionStart===event.target.value.length){phoneNumberInputRef.current?.focus();event.preventDefault();}}}function onCountryCodeBlur(event){if(countryCode.length===0){setCountryCode(defaultCountryCode);}setCountryCodeFocused(false);props.blurEvent?.();}function onPhoneNumberFocus(){setPhoneNumberFocused(true);props.focusEvent?.();if(invalid){setInvalid(false);}}function onPhoneNumberBlur(){setPhoneNumberFocused(false);props.blurEvent?.();}return /*#__PURE__*/_jsxs(\"div\",{\"data-framerforms\":true,id:id,style:{display:\"flex\",flexDirection:\"row\",gap:countryCodeOptions?.style==\"split\"?countryCodeOptions.gap:0,...props.style},children:[/*#__PURE__*/_jsx(HiddenInput,{name:props.name,required:props.required||phoneNumber.length>0&&!isComplete,value:isComplete?hasCC?`+${countryCode} ${phoneNumber}`:phoneNumber:\"\",setInvalid:setInvalid}),hasCC&&/*#__PURE__*/_jsxs(motion.div,{animate:{...createBackground(props.fill,null,countryCodeFocused,invalid),boxShadow:invalid&&shadows?.invalid||countryCodeFocused&&shadows?.focus||shadows?.default},style:{position:\"relative\",borderRadius:ccConnected?px(tl,0,0,bl):props.radius,backdropFilter:props.bgBlur?`blur(${props.bgBlur}px)`:undefined},initial:false,transition:props.transition,children:[/*#__PURE__*/_jsx(\"input\",{ref:countryCodeInputRef,value:formatCountryCode(isCanvas?countryCodeOptions.defaultCountryCode:countryCode,countryCodeFormat),onChange:onCountryCodeChange,onFocus:onCountryCodeFocus,onBlur:onCountryCodeBlur,onKeyDown:onCountryCodeKeyDown,placeholder:props.placeholder||replaceXWithNumbers(phoneFormat),style:{background:\"none\",border:\"none\",color:props.color,width:countryCodeOptions.width+pl,height:\"100%\",margin:0,display:\"block\",padding:px(pt,0,pb,pl),...props.font},\"data-framerforms-no-prefill\":true}),border&&/*#__PURE__*/_jsx(Border,{...border,borderColor:invalid&&border?.colorInvalid||border.color,width:ccConnected?px(bwt,0,bwb,bwl):border.width,opacity:countryCodeFocused&&border?.colorFocus?0:1,transition:props.transition}),border?.colorFocus&&/*#__PURE__*/_jsx(Border,{...border,borderColor:border.colorFocus,width:border.width,opacity:countryCodeFocused?1:0,transition:props.transition})]}),/*#__PURE__*/_jsxs(motion.div,{animate:{...createBackground(props.fill,null,phoneNumberFocused,invalid),boxShadow:invalid&&shadows?.invalid||phoneNumberFocused&&shadows?.focus||shadows?.default},style:{position:\"relative\",borderRadius:ccConnected?px(0,tr,br,0):props.radius,flex:1,backdropFilter:props.bgBlur?`blur(${props.bgBlur}px)`:undefined},initial:false,transition:props.transition,children:[/*#__PURE__*/_jsx(\"input\",{ref:phoneNumberInputRef,autoFocus:props.autoFocus,value:formatPhoneNumber(phoneNumber,phoneFormat),onChange:onPhoneNumberChange,onFocus:onPhoneNumberFocus,onBlur:onPhoneNumberBlur,onKeyDown:onPhoneNumberKeyDown,placeholder:props.placeholder||replaceXWithNumbers(phoneFormat),style:{background:\"none\",border:\"none\",color:props.color,margin:0,display:\"block\",padding:props.padding,width:\"100%\",height:\"100%\",textOverflow:\"ellipsis\",...props.font},\"data-framerforms-no-prefill\":true}),border&&/*#__PURE__*/_jsx(Border,{...border,borderColor:invalid&&border?.colorInvalid||border.color,width:ccConnected?px(bwt,bwr,bwb,0):border.width,opacity:phoneNumberFocused&&border?.colorFocus?0:1,transition:props.transition}),border?.colorFocus&&/*#__PURE__*/_jsx(Border,{...border,borderColor:border.colorFocus,width:border.width,opacity:phoneNumberFocused?1:0,transition:props.transition})]}),countryCodeOptions?.style==\"divider\"&&/*#__PURE__*/_jsx(motion.div,{animate:{opacity:border?.colorFocus&&(countryCodeFocused||phoneNumberFocused)?0:1},style:{position:\"absolute\",width:countryCodeOptions.divider.width,left:countryCodeOptions.width+pl-Math.round(countryCodeOptions.divider.width/2),top:countryCodeOptions.divider.inset,bottom:countryCodeOptions.divider.inset,backgroundColor:countryCodeOptions.divider.color},initial:false,transition:props.transition}),/*#__PURE__*/_jsx(\"style\",{dangerouslySetInnerHTML:{__html:`\n                    #${id} input::placeholder {\n                        color: ${props.placeholderColor};\n                    }\n                    #${id} input:focus {\n                        outline: none;\n                    }`}})]});}PhoneNumberInput.displayName=\"Phone Number Input\";addPropertyControls(PhoneNumberInput,{name:{type:ControlType.String,defaultValue:\"Phone Number\",preventLocalization:true},required:{type:ControlType.Boolean,defaultValue:false},autoFocus:{type:ControlType.Boolean,defaultValue:false,title:\"Auto-Focus\"},countryCodeOptions:{type:ControlType.Object,optional:true,defaultValue:{defaultCountryCode:1,format:\"+1\",width:40},title:\"Country Code\",controls:{defaultCountryCode:{title:\"Default\",type:ControlType.Number,min:0,max:999,step:1,defaultValue:1},format:{title:\"Format\",type:ControlType.Enum,defaultValue:\"+1\",options:[\"+X\",\"(X)\",\"(+X)\",\"X\",\"custom\"],optionTitles:[\"+1\",\"(1)\",\"(+1)\",\"1\",\"Custom Format\"]},customFormat:{title:\" \",type:ControlType.String,defaultValue:\"+X\",description:\"*X* -> country code\",preventLocalization:true,hidden:props=>props.format!==\"custom\"},width:{type:ControlType.Number,defaultValue:45,min:1,step:1},style:{type:ControlType.Enum,defaultValue:\"divider\",options:[\"connected\",\"divider\",\"split\"],optionTitles:[\"Connected\",\"Divider\",\"Split\"],displaySegmentedControl:true,segmentedControlDirection:\"vertical\"},divider:{type:ControlType.Object,hidden:props=>props.style!==\"divider\",controls:{color:{type:ControlType.Color,defaultValue:\"rgba(136, 136, 136, 0.15)\"},width:{type:ControlType.Number,defaultValue:1,min:1,step:1,displayStepper:true},inset:{type:ControlType.Number,defaultValue:8,min:0,step:1,displayStepper:true}}},gap:{type:ControlType.Number,defaultValue:8,min:0,step:1,hidden:props=>props.style!==\"split\"}}},format:{type:ControlType.Enum,defaultValue:\"(XXX) XXX - XXXX\",options:[\"(XXX) XXX - XXXX\",\"(XXX) XXX-XXXX\",\"XXX-XXX-XXXX\",\"XXX.XXX.XXXX\",\"XXX XXX XXXX\",\"XXXXXXXXXXX\",\"XX XXXX XXXX\",\"custom\"],optionTitles:[\"(123) 456 - 7890\",\"(123) 456-7890\",\"123-456-7890\",\"123.456.7890\",\"123 456 7890\",\"1234567890\",\"12 3456 7890\",\"Custom Format\"]},customFormat:{title:\" \",type:ControlType.String,defaultValue:\"(XXX) XXX - XXXX\",description:\"*X* -> phone number\",preventLocalization:true,hidden:props=>props.format!==\"custom\"},placeholder:{type:ControlType.String,defaultValue:\"\",placeholder:\"Auto\"},font:{type:\"font\",controls:\"extended\",defaultFontType:\"sans-serif\",defaultValue:{fontSize:14,lineHeight:1.2}},color:{type:ControlType.Color,defaultValue:\"#999999\"},placeholderColor:{type:ControlType.Color,defaultValue:\"#999999\",title:\"Placeholder\"},fill:fillProp({invalid:true}),radius:{type:ControlType.BorderRadius,defaultValue:\"10px\"},padding:{type:ControlType.Padding,defaultValue:\"12px\"},border:borderProp({invalid:true}),shadows:shadowsProp(),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 formatPhoneNumber(phoneNumber,format){if(!phoneNumber){return\"\";}let index=0// Tracks the position in the replacements string\n;let cutOffIndex=null// To determine where to slice the template after replacement\n;const result=format.replace(/[Xx]/g,(match,offset)=>{if(index<phoneNumber.length){return phoneNumber[index++];}else{if(phoneNumber.length<10&&cutOffIndex===null){// Set cut-off index at the first unmatched Xx after all replacements are used\ncutOffIndex=offset;}return\"\";}});// Slice the template to remove the part after the last valid replacement if necessary\nreturn cutOffIndex!==null?result.slice(0,cutOffIndex):result;}function replaceXWithNumbers(input){let count=1;return input.replace(/[Xx]/g,()=>{let number=count%10;if(number===0)number=0;count++;return number;});}function formatCountryCode(countryCode,format){return format.replace(/[Xx]/,countryCode);}function unformatValue(value){return value.replace(/\\D/g,\"\");}function isLastCharacterANumber(str){if(str.length===0)return false// Check if the string is empty\n;const lastChar=str[str.length-1]// Get the last character\n;return!isNaN(lastChar)&&!isNaN(parseFloat(lastChar))// Check if it's a numeric value\n;}const px=(a,b,c,d)=>`${a}px ${b}px ${c}px ${d}px`;function countXCharacters(str){// Convert the string to lowercase to count both 'X' and 'x'\nconst lowercaseStr=str.toLowerCase();// Use a regular expression to match 'x' characters\nconst xRegex=/x/g;// Use the match() method to find all occurrences of 'x'\nconst matches=lowercaseStr.match(xRegex);// Return the count of matches, or 0 if no matches found\nreturn matches?matches.length:0;}\nexport const __FramerMetadata__ = {\"exports\":{\"default\":{\"type\":\"reactComponent\",\"name\":\"PhoneNumberInput\",\"slots\":[],\"annotations\":{\"framerSupportedLayoutHeight\":\"any\",\"framerIntrinsicWidth\":\"400\",\"framerContractVersion\":\"1\",\"framerSupportedLayoutWidth\":\"fixed\",\"framerDisableUnlink\":\"\"}},\"__FramerMetadata__\":{\"type\":\"variable\"}}}\n//# sourceMappingURL=./PhoneNumberInput.map","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/p64C0n6xNEFY9NovSiJw/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\";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\":{\"framerIntrinsicWidth\":\"400\",\"framerDisableUnlink\":\"\",\"framerContractVersion\":\"1\",\"framerSupportedLayoutHeight\":\"any\",\"framerSupportedLayoutWidth\":\"fixed\"}},\"__FramerMetadata__\":{\"type\":\"variable\"}}}\n//# sourceMappingURL=./FileUploadInput.map"],"mappings":"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"}