{"version":3,"file":"CountryInput.BUWvmZO2.mjs","names":["useState","p","useState","useId","useRef","useState","value","_Fragment","_Fragment","useState","useRef"],"sources":["https:/framerusercontent.com/modules/vj7bFUjvEQFgEzNBkdoG/vf3CKm378wlVcBk7IhSU/createStore.js","https:/framer.com/m/framer/store.js@^1.0.0","https:/framerusercontent.com/modules/DwWOdDzQZGCuvkNlbUjZ/hMz2wp3CWZkNwPJFGPgQ/FramerFormsShared.js","https:/framerusercontent.com/modules/Kuwa4LRQnmmppaTnEydr/hOjeEgRD7HbeoXLeV1zv/DataInput.js","https:/framerusercontent.com/modules/1LECUrurTpenvfDn1ShM/nL9gmnXABjh04Nl8aaL8/Countries.js","https:/framerusercontent.com/modules/PwJ4k4IqmEWPlM2ZI4Eu/Ow3xyrL3YR7stkg8VL2K/DropdownUtilities.js","https:/framerusercontent.com/modules/SRHLnHriy9CtZfYf0KJF/l79PAJhiVgI4zvdb2YN1/CountryDropdown.js","https:/framerusercontent.com/modules/txadBxzyc8xVP8tgxh1j/1tF1GrgTyNspcfcSvkWo/CountryInput.js"],"sourcesContent":["import{useState,useEffect}from\"react\";import{Data,useObserveData}from\"framer\";export function createStore(state1){// Use Data so that a Preview reload resets the state\nconst dataStore=Data({state:Object.freeze({...state1})});// Create a set function that updates the state\nconst setDataStore=newState=>{// If the state is an object, make sure we copy it\nif(typeof newState===\"function\"){newState=newState(dataStore.state);}dataStore.state=Object.freeze({...dataStore.state,...newState});};// Store the initial state, copy the object if it's an object\nlet storeState=typeof state1===\"object\"?Object.freeze({...state1}):state1;// Keep a list of all the listeners, in the form of React hook setters\nconst storeSetters=new Set();// Create a set function that updates all the listeners / setters\nconst setStoreState=newState=>{// If the state is an object, make sure we copy it\nif(typeof newState===\"function\"){newState=newState(storeState);}storeState=typeof newState===\"object\"?Object.freeze({...storeState,...newState}):newState;// Update all the listeners / setters with the new value\nstoreSetters.forEach(setter=>setter(storeState));};// Create the actual hook based on everything above\nfunction useStore(){// Create the hook we are going to use as a listener\nconst[state,setState]=useState(storeState);// If we unmount the component using this hook, we need to remove the listener\n// @ts-ignore\nuseEffect(()=>{// But right now, we need to add the listener\nstoreSetters.add(setState);return()=>storeSetters.delete(setState);},[]);// If Data context exists, use Data, otherwise use vanilla React state\nif(useObserveData()===true){useObserveData();return[dataStore.state,setDataStore];}else{// Return the state and a function to update the central store\nreturn[state,setStoreState];}}return useStore;}\nexport const __FramerMetadata__ = {\"exports\":{\"createStore\":{\"type\":\"function\",\"annotations\":{\"framerContractVersion\":\"1\"}},\"__FramerMetadata__\":{\"type\":\"variable\"}}}\n//# sourceMappingURL=./createStore.map","/*\n * createStore (framer/store@1.0.1)\n *\n * Learn More: https://www.framer.com/asset-urls\n */\n\nexport * from \"https://framerusercontent.com/modules/vj7bFUjvEQFgEzNBkdoG/vf3CKm378wlVcBk7IhSU/createStore.js\"\n","import{jsx as _jsx,jsxs as _jsxs}from\"react/jsx-runtime\";import{ControlType,RenderTarget,withCSS}from\"framer\";import{forwardRef,useEffect,useState,useRef,useId}from\"react\";import{motion}from\"framer-motion\";import{createStore}from\"https://framer.com/m/framer/store.js@^1.0.0\";export const useMultiStepFormStore=createStore({});export const HIDDEN_CLASS_NAME=\"framerforms-hidden\";const CANVAS_HIDDEN_CLASS_NAME=\"framerforms-canvas-hidden\";export const useInstanceId=()=>{const id=useId();const cleanId=id.replace(/:/g,\"\");const instanceId=`superfields-${cleanId}`;return instanceId;};export const HiddenInput=/*#__PURE__*/forwardRef(({name,required,value,setInvalid,onSetValueEvent,noPrefill=false,disabled=false},parentRef)=>{const internalRef=useRef(null);const ref=parentRef||internalRef;const prevValueRef=useRef(value);// Store callback in ref to avoid listener churn\nconst onSetValueEventRef=useRef(onSetValueEvent);onSetValueEventRef.current=onSetValueEvent;useEffect(()=>{const element=ref.current;if(!element||!onSetValueEventRef.current)return;// Use a wrapper that always calls the latest callback\nconst handler=event=>{onSetValueEventRef.current?.(event);};element.addEventListener(\"framerFormsSetValue\",handler);// Mark as ready AFTER listener is attached - FormPersistence checks for this\nelement.dataset.framerformsSetValueReady=\"true\";return()=>{element.removeEventListener(\"framerFormsSetValue\",handler);delete element.dataset.framerformsSetValueReady;};},[])// Empty deps - only attach once\n;// Dispatch change event when value changes so FormPersistence can track updates\nuseEffect(()=>{const element=ref.current;if(!element)return;// Only dispatch if value actually changed (not on initial mount)\nif(prevValueRef.current!==value){prevValueRef.current=value;// Dispatch both input and change events for compatibility\nelement.dispatchEvent(new Event(\"input\",{bubbles:true}));element.dispatchEvent(new Event(\"change\",{bubbles:true}));}},[value]);return /*#__PURE__*/_jsx(\"input\",{ref:ref,type:\"text\",\"data-framerforms-set-value-event\":!!onSetValueEvent,\"data-framerforms-no-prefill\":noPrefill,style:{position:\"absolute\",opacity:0,pointerEvents:\"none\",inset:0},tabIndex:-1,name:name,required:required,value:value,disabled:disabled,onChange:()=>{},onInvalid:event=>{event.preventDefault();setInvalid(true);}});});const HideElementComponent=/*#__PURE__*/forwardRef(({},ref)=>{return /*#__PURE__*/_jsx(\"div\",{ref:ref,className:HIDDEN_CLASS_NAME});});export const HideElement=withCSS(HideElementComponent,[`div:has(> .${HIDDEN_CLASS_NAME}) { display: none; }`,`.${HIDDEN_CLASS_NAME} { display: none; }`],HIDDEN_CLASS_NAME);HideElement.displayName=\"FramerForms/Hide Element\";export const HiddenComponentLabel=/*#__PURE__*/forwardRef(({text,subtext=\"\",children=null,...otherProps},ref)=>{const isCanvas=RenderTarget.current()===RenderTarget.canvas;const id=useInstanceId();return isCanvas?/*#__PURE__*/_jsxs(\"div\",{\"data-framerforms\":true,...otherProps,ref:ref,className:CANVAS_HIDDEN_CLASS_NAME,style:{backgroundColor:\"rgba(187, 187, 187, 0.15)\",borderRadius:10,padding:\"12px 16px\",fontFamily:\"Inter\",fontWeight:500,fontSize:12,color:\"#999\",display:\"flex\",flexDirection:\"column\",gap:4,alignItems:\"center\",textAlign:\"center\",width:\"100%\",height:\"100%\",textWrap:\"nowrap\"},children:[children,text,subtext&&/*#__PURE__*/_jsx(\"span\",{style:{opacity:.7,whiteSpace:\"pre\",lineHeight:1.4},children:subtext}),/*#__PURE__*/_jsx(Border,{width:\"1px\",style:\"solid\",borderColor:\"rgba(136, 136, 136, 0.1)\"}),/*#__PURE__*/_jsx(\"style\",{dangerouslySetInnerHTML:{__html:`\n                        [data-framer-component-container=\"true\"] div:has(> .${CANVAS_HIDDEN_CLASS_NAME}) {\n                            display: none !important;\n                        }`}})]}):/*#__PURE__*/_jsxs(\"div\",{...otherProps,ref:ref,className:HIDDEN_CLASS_NAME,children:[/*#__PURE__*/_jsx(HideElement,{}),children]});});HiddenComponentLabel.displayName=\"FramerForms/Hidden Component Label\";export function iconProp({size=16,buttonTitle=\"Icon\",controls={}}={}){return{type:ControlType.Object,buttonTitle,optional:true,defaultValue:{color:\"#999\",size},controls:{image:{type:ControlType.Image},color:{type:ControlType.Color,optional:true,defaultValue:\"#999\"},size:{type:ControlType.Number,defaultValue:size,min:1,step:1,displayStepper:true},...controls}};}export function Icon({image,color,size,style={},defaultImage}){return /*#__PURE__*/_jsx(\"div\",{style:{width:size,height:size,minWidth:size,minHeight:size,pointerEvents:\"none\",backgroundColor:color,backgroundImage:color?\"none\":image?`url('${image}')`:defaultImage,maskImage:image?`url('${image}')`:defaultImage,backgroundSize:\"contain\",backgroundPosition:\"center\",maskSize:\"contain\",maskPosition:\"center\",...style}});}Icon.displayName=\"FramerForms/Icon\";export function Border({width,style,transition=null,borderColor=\"inherit\",opacity=1}){return /*#__PURE__*/_jsx(motion.div,{animate:{borderColor,opacity},style:{position:\"absolute\",inset:0,borderWidth:width,borderStyle:style,borderRadius:\"inherit\",pointerEvents:\"none\"},initial:false,transition:transition});}Border.displayName=\"FramerForms/Border\";export function createBackground(fill,on=null,focused=null,invalid=null){if(fill){const onOff=typeof on==\"boolean\";if(fill.type==\"color\"){let color=invalid&&fill.colorInvalid||focused&&fill.colorFocus||(onOff?on?fill.colorOn:fill.colorOff:fill.color);return{backgroundColor:color,backgroundImage:\"none\"};}else{const colorA=invalid&&fill.colorAInvalid||focused&&fill.colorAFocus||(onOff?on?fill.colorAOn:fill.colorAOff:fill.colorA);const colorB=invalid&&fill.colorBInvalid||focused&&fill.colorBFocus||(onOff?on?fill.colorBOn:fill.colorBOff:fill.colorB);return{backgroundColor:\"none\",backgroundImage:`linear-gradient(${fill.gradientAngle}deg, ${colorB}, ${colorA})`};}}return{};}export function parsePadding(padding){if(typeof padding!==\"string\"){return[0,0,0,0];}const values=padding.split(\" \");const parsedValues=values.map(value=>parseInt(value.replace(\"px\",\"\"),10));switch(parsedValues.length){case 1:const p=parsedValues[0];return[p,p,p,p];case 4:return parsedValues;}return[0,0,0,0];}export function fillProp({onOff=false,focus=true,invalid=true,optional=false,hidden=null,color=\"rgba(187, 187, 187, 0.15)\",colorA=\"#BBB\",colorB=\"#676767\",colorOn=\"rgba(70, 160, 219, 0.2)\",colorAOn=\"#66C2FF\",colorBOn=\"#0099FF\",colorOff=\"rgba(187, 187, 187, 0.15)\",colorAOff=\"#BBB\",colorBOff=\"#676767\"}={}){return{type:ControlType.Object,optional,hidden,icon:\"color\",defaultValue:{type:\"color\",...onOff?{colorOn,colorOff}:{color,colorA,colorB}},controls:{type:{type:ControlType.Enum,defaultValue:\"color\",options:[\"color\",\"linearGradient\"],optionTitles:[\"Color\",\"Gradient\"],displaySegmentedControl:true},...onOff?{colorOn:{type:ControlType.Color,defaultValue:colorOn,hidden:props=>props.type!==\"color\"},colorOff:{type:ControlType.Color,defaultValue:colorOff,hidden:props=>props.type!==\"color\"}}:{color:{type:ControlType.Color,defaultValue:color,hidden:props=>props.type!==\"color\"}},...focus?{colorFocus:{type:ControlType.Color,optional:true,title:\"Focus\",hidden:props=>props.type!==\"color\"}}:{},...invalid?{colorInvalid:{type:ControlType.Color,optional:true,title:\"Invalid\",hidden:props=>props.type!==\"color\"}}:{},...onOff?{colorAOn:{type:ControlType.Color,defaultValue:colorAOn,title:\"Colors On\",hidden:props=>props.type!==\"linearGradient\"},colorBOn:{type:ControlType.Color,defaultValue:colorBOn,title:\" \",hidden:props=>props.type!==\"linearGradient\"},colorAOff:{type:ControlType.Color,defaultValue:colorAOff,title:\"Colors Off\",hidden:props=>props.type!==\"linearGradient\"},colorBOff:{type:ControlType.Color,defaultValue:colorBOff,title:\" \",hidden:props=>props.type!==\"linearGradient\"}}:{colorA:{type:ControlType.Color,defaultValue:colorA,title:\"Colors\",hidden:props=>props.type!==\"linearGradient\"},colorB:{type:ControlType.Color,defaultValue:colorB,title:\" \",hidden:props=>props.type!==\"linearGradient\"}},...focus?{colorAFocus:{type:ControlType.Color,optional:true,title:\"Focus\",hidden:props=>props.type!==\"linearGradient\"},colorBFocus:{type:ControlType.Color,optional:true,title:\" \",hidden:props=>props.type!==\"linearGradient\"}}:{},...invalid?{colorAInvalid:{type:ControlType.Color,optional:true,title:\"Invalid\",hidden:props=>props.type!==\"linearGradient\"},colorBInvalid:{type:ControlType.Color,optional:true,title:\" \",hidden:props=>props.type!==\"linearGradient\"}}:{},gradientAngle:{type:ControlType.Number,defaultValue:0,title:\"Angle\",step:1,min:0,max:360,unit:\"\\xb0\",hidden:props=>props.type!=\"linearGradient\"}}};}export function borderProp({onOff=false,focus=true,invalid=true,defaultValue=true,color=\"rgba(136, 136, 136, 0.1)\",colorOn=\"#0099FF\",colorOff=\"rgba(136, 136, 136, 0.1)\",colorFocus=\"#0099FF\",colorInvalid=\"#FF5A6F\",hidden=null}={}){return{type:ControlType.Object,optional:true,hidden,defaultValue:defaultValue?{color,colorOn,colorOff,colorFocus,colorInvalid,width:\"1px\"}:undefined,controls:{...onOff?{colorOn:{type:ControlType.Color,defaultValue:colorOn},colorOff:{type:ControlType.Color,defaultValue:colorOff}}:{color:{type:ControlType.Color,defaultValue:color}},...focus?{colorFocus:{type:ControlType.Color,defaultValue:colorFocus,optional:true,title:\"Focus\"}}:{},...invalid?{colorInvalid:{type:ControlType.Color,defaultValue:colorInvalid,optional:true,title:\"Invalid\"}}:{},width:{type:ControlType.Padding,defaultValue:\"1px\"},style:{type:ControlType.Enum,defaultValue:\"solid\",options:[\"solid\",\"dashed\",\"dotted\",\"double\"],optionTitles:[\"Solid\",\"Dashed\",\"Dotted\",\"Double\"]}}};}export function shadowsProp({invalid=true,onOff=false}={}){return{type:ControlType.Object,buttonTitle:\"Shadows\",optional:true,controls:{...onOff?{on:{type:ControlType.BoxShadow,defaultValue:\"rgba(0, 153, 255, 0.5) 0px 2px 4px 0px\"},off:{type:ControlType.BoxShadow,defaultValue:\"rgba(0, 0, 0, 0.25) 0px 2px 4px 0px\"}}:{default:{type:ControlType.BoxShadow,defaultValue:\"rgba(0, 0, 0, 0.25) 0px 2px 4px 0px\"}},focus:{type:ControlType.BoxShadow},invalid:invalid?{type:ControlType.BoxShadow}:null}};}export function useCanvasState(ref){const[totalPages,setTotalPages]=useState(1);useEffect(()=>{const element=ref.current;let pages=null;function updateState(){setTotalPages(pages?pages.children.length:1);}if(element){const multiStepForms=document.querySelectorAll(\"div[data-framerforms-multi-step-form]\");for(const multiStepForm of multiStepForms){const form=multiStepForm.closest(\"form\")||multiStepForm.parentElement.parentElement.parentElement;if(form&&isAncestor(form,element)){pages=form.querySelector(':scope > [data-framer-name=\"Pages\" i]');}}}updateState();if(pages){const observer=new MutationObserver((mutationsList,observer)=>{for(let mutation of mutationsList){if(mutation.type===\"childList\"){updateState();}}});observer.observe(pages,{childList:true});return()=>observer.disconnect();}},[]);return{page:0,totalPages};}export function isAncestor(ancestorElement,descendantElement){if(!ancestorElement||!descendantElement){return false;}let currentElement=descendantElement;while(currentElement!==null){if(currentElement===ancestorElement){return true;}currentElement=currentElement.parentElement;}return false;}export function getFormInfo(element){const form=element?.closest(\"form\");let formId=null;let pages=null;if(form){formId=form.getAttribute(\"framerforms-id\");pages=form.querySelector(':scope > [data-framer-name=\"Pages\" i]');if(!formId){formId=uuid();form.setAttribute(\"framerforms-id\",formId);}}return{form,formId,pages};}function uuid(){let d=new Date().getTime()// Timestamp\n;let d2=performance&&performance.now&&performance.now()*1e3||0// Time in microseconds since page-load or 0 if unsupported\n;return\"xxxxxxxx-xxxx-4xxx-yxxx-xxxxxxxxxxxx\".replace(/[xy]/g,function(c){let r=Math.random()*16// random number between 0 and 16\n;if(d>0){// Use timestamp until depleted\nr=(d+r)%16|0;d=Math.floor(d/16);}else{// Use microseconds since page-load if supported\nr=(d2+r)%16|0;d2=Math.floor(d2/16);}return(c===\"x\"?r:r&3|8).toString(16);});}// ============================================================================\n// FORM UTILITIES\n// ============================================================================\n/**\n * Clears all form input values and dispatches events to notify React components.\n * Handles regular inputs, checkboxes, radios, and custom FramerForms inputs\n * (RatingInput, PhoneNumberInput, etc.).\n *\n * @param form - The form element to clear\n */export function clearFormInputs(form){if(!form)return;// Reset the form (clears most inputs)\nform.reset();// Manually clear inputs that might not be reset by form.reset()\nconst inputs=form.querySelectorAll(\"input, select, textarea\");inputs.forEach(input=>{if(input.type===\"checkbox\"||input.type===\"radio\"){input.checked=false;}else{input.value=\"\";}// Dispatch events to notify React components\ninput.dispatchEvent(new Event(\"input\",{bubbles:true}));input.dispatchEvent(new Event(\"change\",{bubbles:true}));});// Clear custom FramerForms inputs (RatingInput, PhoneNumberInput, etc.)\n// These use HiddenInput with data-framerforms-set-value-event=\"true\"\nconst customInputs=form.querySelectorAll('input[data-framerforms-set-value-event=\"true\"]');customInputs.forEach(input=>{const inputName=input.name?.toLowerCase()||\"\";// Identify component type by checking parent structure\nconst parent=input.closest(\"[data-framerforms]\");const buttonCount=parent?.querySelectorAll('button[type=\"button\"]').length||0;// RatingInput typically has 2-10 star buttons\nconst isLikelyRating=buttonCount>=2&&buttonCount<=10;// RatingInput needs 0 to clear, others need empty string\nconst clearValue=isLikelyRating||inputName.includes(\"rating\")?0:\"\";input.dispatchEvent(new CustomEvent(\"framerFormsSetValue\",{detail:clearValue,bubbles:true}));});}// ============================================================================\n// AUTOFILL STYLING OVERRIDE\n// ============================================================================\n/**\n * Sets up global CSS to override browser autofill styling.\n * This prevents browsers from applying their default yellow/blue backgrounds\n * to autofilled form inputs, which can break custom designs.\n *\n * Runs once when the module loads and applies to all inputs on the page,\n * including native Framer components.\n */function setupAutofillOverride(){// Check if we're in a browser environment\nif(typeof document===\"undefined\")return;// Check if the style tag already exists to avoid duplicates\nconst existingStyle=document.getElementById(\"framerforms-autofill-override\");if(existingStyle)return;// Create and inject the style tag\nconst style=document.createElement(\"style\");style.id=\"framerforms-autofill-override\";style.textContent=`\n        /* Override browser autofill styling for all inputs */\n        input:-webkit-autofill,\n        input:-webkit-autofill:hover,\n        input:-webkit-autofill:focus,\n        input:-webkit-autofill:active,\n        select:-webkit-autofill,\n        select:-webkit-autofill:hover,\n        select:-webkit-autofill:focus,\n        select:-webkit-autofill:active,\n        textarea:-webkit-autofill,\n        textarea:-webkit-autofill:hover,\n        textarea:-webkit-autofill:focus,\n        textarea:-webkit-autofill:active {\n            /* Use box-shadow to override background color */\n            /* The large spread radius ensures it covers the entire input */\n            -webkit-box-shadow: 0 0 0 1000px transparent inset !important;\n            box-shadow: 0 0 0 1000px transparent inset !important;\n            \n            /* Override text color */\n            -webkit-text-fill-color: inherit !important;\n            color: inherit !important;\n            \n            /* Use transition trick to prevent background color changes */\n            /* The extremely long duration (5000s) effectively prevents the change */\n            transition: background-color 5000s ease-in-out 0s, \n                        color 5000s ease-in-out 0s !important;\n        }\n        \n        /* Ensure autofilled inputs maintain their original styling */\n        input:-webkit-autofill::first-line,\n        select:-webkit-autofill::first-line,\n        textarea:-webkit-autofill::first-line {\n            -webkit-text-fill-color: inherit !important;\n            color: inherit !important;\n        }\n    `;// Append to document head\ndocument.head.appendChild(style);}// Run the setup immediately when the module loads\n// This ensures it applies globally before any components render\nif(typeof document!==\"undefined\"){// Use requestAnimationFrame to ensure DOM is ready\nif(document.readyState===\"loading\"){document.addEventListener(\"DOMContentLoaded\",setupAutofillOverride);}else{// DOM is already loaded, run immediately\nsetupAutofillOverride();}}\nexport const __FramerMetadata__ = {\"exports\":{\"borderProp\":{\"type\":\"function\",\"annotations\":{\"framerContractVersion\":\"1\"}},\"MultiStepFormState\":{\"type\":\"tsType\",\"annotations\":{\"framerContractVersion\":\"1\"}},\"useCanvasState\":{\"type\":\"function\",\"annotations\":{\"framerContractVersion\":\"1\"}},\"HIDDEN_CLASS_NAME\":{\"type\":\"variable\",\"annotations\":{\"framerContractVersion\":\"1\"}},\"HiddenInput\":{\"type\":\"variable\",\"annotations\":{\"framerContractVersion\":\"1\"}},\"fillProp\":{\"type\":\"function\",\"annotations\":{\"framerContractVersion\":\"1\"}},\"Icon\":{\"type\":\"reactComponent\",\"name\":\"Icon\",\"slots\":[],\"annotations\":{\"framerContractVersion\":\"1\"}},\"getFormInfo\":{\"type\":\"function\",\"annotations\":{\"framerContractVersion\":\"1\"}},\"shadowsProp\":{\"type\":\"function\",\"annotations\":{\"framerContractVersion\":\"1\"}},\"createBackground\":{\"type\":\"function\",\"annotations\":{\"framerContractVersion\":\"1\"}},\"clearFormInputs\":{\"type\":\"function\",\"annotations\":{\"framerContractVersion\":\"1\"}},\"parsePadding\":{\"type\":\"function\",\"annotations\":{\"framerContractVersion\":\"1\"}},\"iconProp\":{\"type\":\"function\",\"annotations\":{\"framerContractVersion\":\"1\"}},\"useMultiStepFormStore\":{\"type\":\"variable\",\"annotations\":{\"framerContractVersion\":\"1\"}},\"MultiStepFormStore\":{\"type\":\"tsType\",\"annotations\":{\"framerContractVersion\":\"1\"}},\"HideElement\":{\"type\":\"reactComponent\",\"name\":\"HideElement\",\"slots\":[],\"annotations\":{\"framerContractVersion\":\"1\"}},\"Border\":{\"type\":\"reactComponent\",\"name\":\"Border\",\"slots\":[],\"annotations\":{\"framerContractVersion\":\"1\"}},\"HiddenComponentLabel\":{\"type\":\"variable\",\"annotations\":{\"framerContractVersion\":\"1\"}},\"isAncestor\":{\"type\":\"function\",\"annotations\":{\"framerContractVersion\":\"1\"}},\"LogicConfig\":{\"type\":\"tsType\",\"annotations\":{\"framerContractVersion\":\"1\"}},\"PageHistory\":{\"type\":\"tsType\",\"annotations\":{\"framerContractVersion\":\"1\"}},\"useInstanceId\":{\"type\":\"variable\",\"annotations\":{\"framerContractVersion\":\"1\"}},\"__FramerMetadata__\":{\"type\":\"variable\"}}}\n//# sourceMappingURL=./FramerFormsShared.map","import{jsx as _jsx}from\"react/jsx-runtime\";import{addPropertyControls,ControlType,RenderTarget}from\"framer\";import{useEffect,useState}from\"react\";import{HiddenComponentLabel}from\"https://framerusercontent.com/modules/DwWOdDzQZGCuvkNlbUjZ/hMz2wp3CWZkNwPJFGPgQ/FramerFormsShared.js\";/**\n * @framerSupportedLayoutWidth any\n * @framerSupportedLayoutHeight auto\n * @framerDisableUnlink\n */export default function DataInput(props){const{type}=props;const isCanvas=RenderTarget.current()===RenderTarget.canvas;const[value,setValue]=useState(\"\");let text=\"\";switch(type){case\"url\":text=\"Current URL\";break;case\"utmTags\":text=\"UTM Tags\";break;case\"urlParameter\":text=`${props.urlParameter} URL Parameter`;break;case\"referrerUrl\":text=\"Referrer URL\";break;}useEffect(()=>{switch(type){case\"url\":setValue(window.location.href);break;case\"utmTags\":const utms={};const queryParams=new URLSearchParams(window.location.search);queryParams.forEach((value,key)=>{// Check if the key starts with 'utm_' (indicating it's a UTM parameter)\nif(key.startsWith(\"utm_\")){utms[key]=value;}});setValue(utms);break;case\"urlParameter\":setValue(new URLSearchParams(window.location.search).get(props.urlParameter)??\"\");break;case\"referrerUrl\":setValue(document.referrer);break;}},[type,props.urlParameter]);return /*#__PURE__*/_jsx(HiddenComponentLabel,{text:text,subtext:\"Hidden Field\",children:!isCanvas&&/*#__PURE__*/_jsx(\"div\",{style:{display:\"hidden\"},children:type==\"utmTags\"?value?Object.keys(value).map(key=>/*#__PURE__*/_jsx(\"input\",{type:\"hidden\",name:key,value:value[key],\"data-framerforms-no-prefill\":true})):null:/*#__PURE__*/_jsx(\"input\",{type:\"hidden\",name:props.name,value:value,\"data-framerforms-no-prefill\":true})})});}DataInput.displayName=\"URL Data Collector\";addPropertyControls(DataInput,{type:{type:ControlType.Enum,options:[\"url\",\"utmTags\",\"referrerUrl\",\"urlParameter\"],optionTitles:[\"Current URL\",\"UTM Tags\",\"Referrer URL\",\"URL Parameter\"],displaySegmentedControl:true,segmentedControlDirection:\"vertical\"},name:{type:ControlType.String,defaultValue:\"Data\",preventLocalization:true,hidden:props=>props.type==\"utmTags\"},urlParameter:{type:ControlType.String,defaultValue:\"\",placeholder:\"Parameter Name\",title:\"URL Param\",preventLocalization:true,hidden:props=>props.type!==\"urlParameter\"}});\nexport const __FramerMetadata__ = {\"exports\":{\"default\":{\"type\":\"reactComponent\",\"name\":\"DataInput\",\"slots\":[],\"annotations\":{\"framerSupportedLayoutHeight\":\"auto\",\"framerDisableUnlink\":\"\",\"framerContractVersion\":\"1\",\"framerSupportedLayoutWidth\":\"any\"}},\"__FramerMetadata__\":{\"type\":\"variable\"}}}","export const countries=[\"Afghanistan\",\"\\xc5land Islands\",\"Albania\",\"Algeria\",\"American Samoa\",\"Andorra\",\"Angola\",\"Anguilla\",\"Antarctica\",\"Antigua & Barbuda\",\"Argentina\",\"Armenia\",\"Aruba\",\"Ascension Island\",\"Australia\",\"Austria\",\"Azerbaijan\",\"Bahamas\",\"Bahrain\",\"Bangladesh\",\"Barbados\",\"Belarus\",\"Belgium\",\"Belize\",\"Benin\",\"Bermuda\",\"Bhutan\",\"Bolivia\",\"Bosnia & Herzegovina\",\"Botswana\",\"Bouvet Island\",\"Brazil\",\"British Indian Ocean Territory\",\"British Virgin Islands\",\"Brunei\",\"Bulgaria\",\"Burkina Faso\",\"Burundi\",\"Cambodia\",\"Cameroon\",\"Canada\",\"Canary Islands\",\"Cape Verde\",\"Caribbean Netherlands\",\"Cayman Islands\",\"Central African Republic\",\"Ceuta & Melilla\",\"Chad\",\"Chile\",\"China\",\"Christmas Island\",\"Clipperton Island\",\"Cocos (Keeling) Islands\",\"Colombia\",\"Comoros\",\"Congo - Brazzaville\",\"Congo - Kinshasa\",\"Cook Islands\",\"Costa Rica\",\"C\\xf4te D’Ivoire\",\"Croatia\",\"Cuba\",\"Cura\\xe7ao\",\"Cyprus\",\"Czechia\",\"Denmark\",\"Diego Garcia\",\"Djibouti\",\"Dominica\",\"Dominican Republic\",\"Ecuador\",\"Egypt\",\"El Salvador\",\"England\",\"Equatorial Guinea\",\"Eritrea\",\"Estonia\",\"Ethiopia\",\"European Union\",\"Falkland Islands\",\"Faroe Islands\",\"Fiji\",\"Finland\",\"France\",\"French Guiana\",\"French Polynesia\",\"French Southern Territories\",\"Gabon\",\"Gambia\",\"Georgia\",\"Germany\",\"Ghana\",\"Gibraltar\",\"Greece\",\"Greenland\",\"Grenada\",\"Guadeloupe\",\"Guam\",\"Guatemala\",\"Guernsey\",\"Guinea\",\"Guinea-Bissau\",\"Guyana\",\"Haiti\",\"Heard & McDonald Islands\",\"Honduras\",\"Hong Kong SAR China\",\"Hungary\",\"Iceland\",\"India\",\"Indonesia\",\"Iran\",\"Iraq\",\"Ireland\",\"Isle of Man\",\"Israel\",\"Italy\",\"Jamaica\",\"Japan\",\"Jersey\",\"Jordan\",\"Kazakhstan\",\"Kenya\",\"Kiribati\",\"Kosovo\",\"Kuwait\",\"Kyrgyzstan\",\"Laos\",\"Latvia\",\"Lebanon\",\"Lesotho\",\"Liberia\",\"Libya\",\"Liechtenstein\",\"Lithuania\",\"Luxembourg\",\"Macau SAR China\",\"Macedonia\",\"Madagascar\",\"Malawi\",\"Malaysia\",\"Maldives\",\"Mali\",\"Malta\",\"Marshall Islands\",\"Martinique\",\"Mauritania\",\"Mauritius\",\"Mayotte\",\"Mexico\",\"Micronesia\",\"Moldova\",\"Monaco\",\"Mongolia\",\"Montenegro\",\"Montserrat\",\"Morocco\",\"Mozambique\",\"Myanmar (Burma)\",\"Namibia\",\"Nauru\",\"Nepal\",\"Netherlands\",\"New Caledonia\",\"New Zealand\",\"Nicaragua\",\"Niger\",\"Nigeria\",\"Niue\",\"Norfolk Island\",\"North Korea\",\"Northern Mariana Islands\",\"Norway\",\"Oman\",\"Pakistan\",\"Palau\",\"Palestinian Territories\",\"Panama\",\"Papua New Guinea\",\"Paraguay\",\"Peru\",\"Philippines\",\"Pitcairn Islands\",\"Poland\",\"Portugal\",\"Puerto Rico\",\"Qatar\",\"R\\xe9union\",\"Romania\",\"Russia\",\"Rwanda\",\"Samoa\",\"San Marino\",\"S\\xe3o Tom\\xe9 & Pr\\xedncipe\",\"Saudi Arabia\",\"Scotland\",\"Senegal\",\"Serbia\",\"Seychelles\",\"Sierra Leone\",\"Singapore\",\"Sint Maarten\",\"Slovakia\",\"Slovenia\",\"Solomon Islands\",\"Somalia\",\"South Africa\",\"South Georgia & South Sandwich Islands\",\"South Korea\",\"South Sudan\",\"Spain\",\"Sri Lanka\",\"St. Barth\\xe9lemy\",\"St. Helena\",\"St. Kitts & Nevis\",\"St. Lucia\",\"St. Martin\",\"St. Pierre & Miquelon\",\"St. Vincent & Grenadines\",\"Sudan\",\"Suriname\",\"Svalbard & Jan Mayen\",\"Swaziland\",\"Sweden\",\"Switzerland\",\"Syria\",\"Taiwan\",\"Tajikistan\",\"Tanzania\",\"Thailand\",\"Timor-Leste\",\"Togo\",\"Tokelau\",\"Tonga\",\"Trinidad & Tobago\",\"Tristan Da Cunha\",\"Tunisia\",\"Turkey\",\"Turkmenistan\",\"Turks & Caicos Islands\",\"Tuvalu\",\"U.S. Outlying Islands\",\"U.S. Virgin Islands\",\"Uganda\",\"Ukraine\",\"United Arab Emirates\",\"United Kingdom\",\"United Nations\",\"United States\",\"Uruguay\",\"Uzbekistan\",\"Vanuatu\",\"Vatican City\",\"Venezuela\",\"Vietnam\",\"Wales\",\"Wallis & Futuna\",\"Western Sahara\",\"Yemen\",\"Zambia\",\"Zimbabwe\"];export const countryEmojis=[\"🇦🇫\",\"🇦🇽\",\"🇦🇱\",\"🇩🇿\",\"🇦🇸\",\"🇦🇩\",\"🇦🇴\",\"🇦🇮\",\"🇦🇶\",\"🇦🇬\",\"🇦🇷\",\"🇦🇲\",\"🇦🇼\",\"🇦🇨\",\"🇦🇺\",\"🇦🇹\",\"🇦🇿\",\"🇧🇸\",\"🇧🇭\",\"🇧🇩\",\"🇧🇧\",\"🇧🇾\",\"🇧🇪\",\"🇧🇿\",\"🇧🇯\",\"🇧🇲\",\"🇧🇹\",\"🇧🇴\",\"🇧🇦\",\"🇧🇼\",\"🇧🇻\",\"🇧🇷\",\"🇮🇴\",\"🇻🇬\",\"🇧🇳\",\"🇧🇬\",\"🇧🇫\",\"🇧🇮\",\"🇰🇭\",\"🇨🇲\",\"🇨🇦\",\"🇮🇨\",\"🇨🇻\",\"🇧🇶\",\"🇰🇾\",\"🇨🇫\",\"🇪🇦\",\"🇹🇩\",\"🇨🇱\",\"🇨🇳\",\"🇨🇽\",\"🇨🇵\",\"🇨🇨\",\"🇨🇴\",\"🇰🇲\",\"🇨🇬\",\"🇨🇩\",\"🇨🇰\",\"🇨🇷\",\"🇨🇮\",\"🇭🇷\",\"🇨🇺\",\"🇨🇼\",\"🇨🇾\",\"🇨🇿\",\"🇩🇰\",\"🇩🇬\",\"🇩🇯\",\"🇩🇲\",\"🇩🇴\",\"🇪🇨\",\"🇪🇬\",\"🇸🇻\",\"🏴󠁧󠁢󠁥󠁮󠁧󠁿\",\"🇬🇶\",\"🇪🇷\",\"🇪🇪\",\"🇪🇹\",\"🇪🇺\",\"🇫🇰\",\"🇫🇴\",\"🇫🇯\",\"🇫🇮\",\"🇫🇷\",\"🇬🇫\",\"🇵🇫\",\"🇹🇫\",\"🇬🇦\",\"🇬🇲\",\"🇬🇪\",\"🇩🇪\",\"🇬🇭\",\"🇬🇮\",\"🇬🇷\",\"🇬🇱\",\"🇬🇩\",\"🇬🇵\",\"🇬🇺\",\"🇬🇹\",\"🇬🇬\",\"🇬🇳\",\"🇬🇼\",\"🇬🇾\",\"🇭🇹\",\"🇭🇲\",\"🇭🇳\",\"🇭🇰\",\"🇭🇺\",\"🇮🇸\",\"🇮🇳\",\"🇮🇩\",\"🇮🇷\",\"🇮🇶\",\"🇮🇪\",\"🇮🇲\",\"🇮🇱\",\"🇮🇹\",\"🇯🇲\",\"🇯🇵\",\"🇯🇪\",\"🇯🇴\",\"🇰🇿\",\"🇰🇪\",\"🇰🇮\",\"🇽🇰\",\"🇰🇼\",\"🇰🇬\",\"🇱🇦\",\"🇱🇻\",\"🇱🇧\",\"🇱🇸\",\"🇱🇷\",\"🇱🇾\",\"🇱🇮\",\"🇱🇹\",\"🇱🇺\",\"🇲🇴\",\"🇲🇰\",\"🇲🇬\",\"🇲🇼\",\"🇲🇾\",\"🇲🇻\",\"🇲🇱\",\"🇲🇹\",\"🇲🇭\",\"🇲🇶\",\"🇲🇷\",\"🇲🇺\",\"🇾🇹\",\"🇲🇽\",\"🇫🇲\",\"🇲🇩\",\"🇲🇨\",\"🇲🇳\",\"🇲🇪\",\"🇲🇸\",\"🇲🇦\",\"🇲🇿\",\"🇲🇲\",\"🇳🇦\",\"🇳🇷\",\"🇳🇵\",\"🇳🇱\",\"🇳🇨\",\"🇳🇿\",\"🇳🇮\",\"🇳🇪\",\"🇳🇬\",\"🇳🇺\",\"🇳🇫\",\"🇰🇵\",\"🇲🇵\",\"🇳🇴\",\"🇴🇲\",\"🇵🇰\",\"🇵🇼\",\"🇵🇸\",\"🇵🇦\",\"🇵🇬\",\"🇵🇾\",\"🇵🇪\",\"🇵🇭\",\"🇵🇳\",\"🇵🇱\",\"🇵🇹\",\"🇵🇷\",\"🇶🇦\",\"🇷🇪\",\"🇷🇴\",\"🇷🇺\",\"🇷🇼\",\"🇼🇸\",\"🇸🇲\",\"🇸🇹\",\"🇸🇦\",\"🏴󠁧󠁢󠁳󠁣󠁴󠁿\",\"🇸🇳\",\"🇷🇸\",\"🇸🇨\",\"🇸🇱\",\"🇸🇬\",\"🇸🇽\",\"🇸🇰\",\"🇸🇮\",\"🇸🇧\",\"🇸🇴\",\"🇿🇦\",\"🇬🇸\",\"🇰🇷\",\"🇸🇸\",\"🇪🇸\",\"🇱🇰\",\"🇧🇱\",\"🇸🇭\",\"🇰🇳\",\"🇱🇨\",\"🇲🇫\",\"🇵🇲\",\"🇻🇨\",\"🇸🇩\",\"🇸🇷\",\"🇸🇯\",\"🇸🇿\",\"🇸🇪\",\"🇨🇭\",\"🇸🇾\",\"🇹🇼\",\"🇹🇯\",\"🇹🇿\",\"🇹🇭\",\"🇹🇱\",\"🇹🇬\",\"🇹🇰\",\"🇹🇴\",\"🇹🇹\",\"🇹🇦\",\"🇹🇳\",\"🇹🇷\",\"🇹🇲\",\"🇹🇨\",\"🇹🇻\",\"🇺🇲\",\"🇻🇮\",\"🇺🇬\",\"🇺🇦\",\"🇦🇪\",\"🇬🇧\",\"🇺🇳\",\"🇺🇸\",\"🇺🇾\",\"🇺🇿\",\"🇻🇺\",\"🇻🇦\",\"🇻🇪\",\"🇻🇳\",\"🏴󠁧󠁢󠁷󠁬󠁳󠁿\",\"🇼🇫\",\"🇪🇭\",\"🇾🇪\",\"🇿🇲\",\"🇿🇼\"];// Country dial codes (international calling codes)\nexport const countryDialCodes=[\"93\",\"358\",\"355\",\"213\",\"1684\",\"376\",\"244\",\"1264\",\"672\",\"1268\",\"54\",\"374\",\"297\",\"247\",\"61\",\"43\",\"994\",\"1242\",\"973\",\"880\",\"1246\",\"375\",\"32\",\"501\",\"229\",\"1441\",\"975\",\"591\",\"387\",\"267\",\"47\",\"55\",\"246\",\"1284\",\"673\",\"359\",\"226\",\"257\",\"855\",\"237\",\"1\",\"34\",\"238\",\"599\",\"1345\",\"236\",\"34\",\"235\",\"56\",\"86\",\"61\",\"33\",\"61\",\"57\",\"269\",\"242\",\"243\",\"682\",\"506\",\"225\",\"385\",\"53\",\"599\",\"357\",\"420\",\"45\",\"246\",\"253\",\"1767\",\"1809\",\"593\",\"20\",\"503\",\"44\",\"240\",\"291\",\"372\",\"251\",\"\",\"500\",\"298\",\"679\",\"358\",\"33\",\"594\",\"689\",\"262\",\"241\",\"220\",\"995\",\"49\",\"233\",\"350\",\"30\",\"299\",\"1473\",\"590\",\"1671\",\"502\",\"44\",\"224\",\"245\",\"592\",\"509\",\"672\",\"504\",\"852\",\"36\",\"354\",\"91\",\"62\",\"98\",\"964\",\"353\",\"44\",\"972\",\"39\",\"1876\",\"81\",\"44\",\"962\",\"7\",\"254\",\"686\",\"383\",\"965\",\"996\",\"856\",\"371\",\"961\",\"266\",\"231\",\"218\",\"423\",\"370\",\"352\",\"853\",\"389\",\"261\",\"265\",\"60\",\"960\",\"223\",\"356\",\"692\",\"596\",\"222\",\"230\",\"262\",\"52\",\"691\",\"373\",\"377\",\"976\",\"382\",\"1664\",\"212\",\"258\",\"95\",\"264\",\"674\",\"977\",\"31\",\"687\",\"64\",\"505\",\"227\",\"234\",\"683\",\"672\",\"850\",\"1670\",\"47\",\"968\",\"92\",\"680\",\"970\",\"507\",\"675\",\"595\",\"51\",\"63\",\"870\",\"48\",\"351\",\"1787\",\"974\",\"262\",\"40\",\"7\",\"250\",\"685\",\"378\",\"239\",\"966\",\"44\",\"221\",\"381\",\"248\",\"232\",\"65\",\"1721\",\"421\",\"386\",\"677\",\"252\",\"27\",\"500\",\"82\",\"211\",\"34\",\"94\",\"590\",\"290\",\"1869\",\"1758\",\"590\",\"508\",\"1784\",\"249\",\"597\",\"47\",\"268\",\"46\",\"41\",\"963\",\"886\",\"992\",\"255\",\"66\",\"670\",\"228\",\"690\",\"676\",\"1868\",\"290\",\"216\",\"90\",\"993\",\"1649\",\"688\",\"1\",\"1340\",\"256\",\"380\",\"971\",\"44\",\"\",\"1\",\"598\",\"998\",\"678\",\"39\",\"58\",\"84\",\"44\",\"681\",\"212\",\"967\",\"260\",\"263\"];// Country-specific phone formats (using X for digits)\n// Default format for countries without specific format: \"XXXXXXXXXX\"\nexport const countryPhoneFormats=[\"XX XXX XXXX\",\"XXX XXX XXXX\",\"XXX XXX XXX\",\"XXXX XX XX XX\",\"(XXX) XXX-XXXX\",\"XXX XXX\",\"XXX XXX XXX\",\"(XXX) XXX-XXXX\",\"XXXX XXXX\",\"(XXX) XXX-XXXX\",\"XX XXXX-XXXX\",\"XX XXX XXX\",\"XXX XXXX\",\"XXXX\",\"XXXX XXX XXX\",\"XXXX XXXXXXXXX\",\"XX XXX XX XX\",\"(XXX) XXX-XXXX\",\"XXXX XXXX\",\"XXXX-XXXXXX\",\"(XXX) XXX-XXXX\",\"XX XXX-XX-XX\",\"XXXX XX XX XX\",\"XXX-XXXX\",\"XX XX XX XX\",\"(XXX) XXX-XXXX\",\"X XXXX XXXX\",\"X XXX XXXX\",\"XX XXX XXX\",\"XX XXX XXX\",\"XXX XX XXX\",\"(XX) XXXX-XXXX\",\"XXXX\",\"(XXX) XXX-XXXX\",\"XXX XXXX\",\"XXX XXX XXX\",\"XX XX XX XX\",\"XX XX XX XX\",\"XXX XXX XXX\",\"X XX XX XX XX\",\"(XXX) XXX-XXXX\",\"XXX XXX XXX\",\"XXX XX XX\",\"XXX XXXX\",\"(XXX) XXX-XXXX\",\"XX XX XX XX\",\"XXX XXX XXX\",\"XX XX XX XX\",\"X XXXX XXXX\",\"XXX XXXX XXXX\",\"XXXX XXX XXX\",\"X XX XX XX XX\",\"XXXX XXX XXX\",\"X XXX XXXX\",\"XXX XX XX\",\"XX XXX XXXX\",\"XXX XXX XXXX\",\"XX XXX\",\"XXXX XXXX\",\"XX XX XX XX XX\",\"XX XXX XXXX\",\"X XXX XXXX\",\"X XXX XXXX\",\"XX XXX XXX\",\"XXX XXX XXX\",\"XX XX XX XX\",\"XXXX\",\"XX XX XX XX\",\"(XXX) XXX-XXXX\",\"(XXX) XXX-XXXX\",\"XX XXX XXXX\",\"XXX XXX XXXX\",\"XXXX XXXX\",\"XXXX XXXX XXX\",\"XXX XXX XXX\",\"X XXX XXX\",\"XXXX XXXX\",\"XXX XXX XXXX\",\"XXXXXXXXXX\",\"XXXXX\",\"XXX XXX\",\"XXX XXXX\",\"XX XXX XXXX\",\"X XX XX XX XX XX\",\"XXXX XX XX XX\",\"XX XX XX XX\",\"XXX XX XX XX\",\"X XX XX XX XX\",\"XXX XXXX\",\"XXX XX XX XX\",\"XXXX XXXXXXXXX\",\"XXX XXX XXXX\",\"XXXX XXXXX\",\"XXX XXX XXXX\",\"XX XX XX\",\"(XXX) XXX-XXXX\",\"XXXX XX XX XX\",\"(XXX) XXX-XXXX\",\"XXXX XXXX\",\"XXXX XXXX XXX\",\"XXX XX XX XX\",\"XXX XXXX\",\"XXX XXXX\",\"XX XX-XXXX\",\"XXXX XXXX\",\"XXXX-XXXX\",\"XXXX XXXX\",\"XX XXX XXXX\",\"XXX XXXX\",\"XXXXX XXXXX\",\"XXX-XXXX-XXXX\",\"XXX XXX XXXX\",\"XXX XXX XXXX\",\"XX XXX XXXX\",\"XXXX XXXX XXX\",\"XX-XXX-XXXX\",\"XXX XXX XXXX\",\"(XXX) XXX-XXXX\",\"XX-XXXX-XXXX\",\"XXXX XXXX XXX\",\"X XXXX XXXX\",\"X XXX XXX-XX-XX\",\"XXX XXXXXXX\",\"XXXXX\",\"XXX XXX XXX\",\"XXXX XXXX\",\"XXX XX-XX-XX\",\"XX XX XXX XXX\",\"XX XXX XXX\",\"X XXX XXX\",\"X XXX XXXX\",\"XXX XXX XXXX\",\"XX-XXXX-XXXX\",\"XXX XX XX\",\"(X-XX) XXXXX\",\"XXX XXX XXX\",\"XXXX XXXX\",\"XX XXX XXX\",\"XX XX XXX XX\",\"X XXXX XXXX\",\"XX-XXX XXXX\",\"XXX-XXXX\",\"XX XX XX XX\",\"XXXX XXXX\",\"XXX-XXXX\",\"XXXX XX XX XX\",\"XX XX XX XX\",\"XXXX XXXX\",\"XXX XX XX XX\",\"XX XXXX XXXX\",\"XXX-XXXX\",\"XXXX XXXX\",\"X XX XX XX XX\",\"XXXX XXXX\",\"XX XXX XXX\",\"(XXX) XXX-XXXX\",\"XXXX-XXXXXX\",\"XX XXX XXXX\",\"X XXXX XXXX\",\"XX XXX XXXX\",\"XXX XXXX\",\"XXX-XXX-XXXX\",\"X XXXX XXXX\",\"XX.XX.XX\",\"XXX XXX XXXX\",\"XXXX XXXX\",\"XX XX XX XX\",\"XXX XXX XXXX\",\"XXXX\",\"XXXX XXX\",\"XXX-XXXX-XXXX\",\"(XXX) XXX-XXXX\",\"XXX XX XXX\",\"XXXX XXXX\",\"XXX-XXXXXXX\",\"XXX-XXXX\",\"XX XXX XXXX\",\"XXXX-XXXX\",\"XXX XXXX\",\"XXXX XXX XXX\",\"XXX XXX XXX\",\"XXXX XXX XXXX\",\"XXXXX\",\"XXX XXX XXX\",\"XXX XXX XXX\",\"(XXX) XXX-XXXX\",\"XXXX XXXX\",\"XXX XX XX XX\",\"XXX XXX XXX\",\"XXX XXX-XX-XX\",\"XXX XXX XXX\",\"XXXX\",\"XXXX XXXXXXX\",\"XXX XXXX\",\"XX XXX XXXX\",\"XXXX XXXX XXX\",\"XX XXX XX XX\",\"XX XXX XXXX\",\"X XXX XXX\",\"XX XXX XXX\",\"XXXX XXXX\",\"(XXX) XXX-XXXX\",\"XXX XXX XXX\",\"XX XXX XXX\",\"XXXX\",\"XX XXXX XXX\",\"XX XXX XXXX\",\"XXXXX\",\"XX-XXXX-XXXX\",\"XXXX XXX XXX\",\"XXX XXX XXX\",\"XX X XXX XXXX\",\"XXXX XX XX XX\",\"XXXX\",\"(XXX) XXX-XXXX\",\"(XXX) XXX-XXXX\",\"XXXX XX XX XX\",\"XX XX XX XX\",\"(XXX) XXX-XXXX\",\"XXX XXX XXXX\",\"XXX-XXXX\",\"XXX XX XXX\",\"XXXX XXXX\",\"XX-XXX XX XX\",\"XX XXX XX XX\",\"XXX XXX XXXX\",\"XXXX XXX XXX\",\"XXX XX-XX-XX\",\"XXX XXX XXXX\",\"XX-XXX-XXXX\",\"XXXX XXXX\",\"XX XX XX XX\",\"XXXX\",\"XXXXX\",\"(XXX) XXX-XXXX\",\"XXXX\",\"XX XXX XXX\",\"XXX XXX XX XX\",\"XX XX-XX-XX\",\"(XXX) XXX-XXXX\",\"XXXXX\",\"(XXX) XXX-XXXX\",\"(XXX) XXX-XXXX\",\"XXX XXX XXX\",\"XXX XXX XX XX\",\"XX XXX XXXX\",\"XXXX XXXX XXX\",\"XXXXXXXXXX\",\"(XXX) XXX-XXXX\",\"XXXX XXXX\",\"XX XXX XX XX\",\"XXXXX\",\"XX XXXX XXXX\",\"XXXX-XXXXXXX\",\"XXX XXXX XXX\",\"XXXX XXXX XXX\",\"XX XX XX\",\"XXXX-XXXXXX\",\"X XXX XXX\",\"XX XXXX XXXX\",\"X XXXX XXXX\"];// Helper function to get dial code by country name\nexport function getDialCodeByCountry(countryName){const index=countries.indexOf(countryName);return index>=0?countryDialCodes[index]:\"1\";}// Helper function to get phone format by country name\nexport function getPhoneFormatByCountry(countryName){const index=countries.indexOf(countryName);return index>=0?countryPhoneFormats[index]:\"(XXX) XXX-XXXX\";}// Helper function to get country by dial code\nexport function getCountryByDialCode(dialCode){const index=countryDialCodes.indexOf(dialCode);return index>=0?countries[index]:null;}\nexport const __FramerMetadata__ = {\"exports\":{\"getPhoneFormatByCountry\":{\"type\":\"function\",\"annotations\":{\"framerContractVersion\":\"1\"}},\"countryDialCodes\":{\"type\":\"variable\",\"annotations\":{\"framerContractVersion\":\"1\"}},\"getDialCodeByCountry\":{\"type\":\"function\",\"annotations\":{\"framerContractVersion\":\"1\"}},\"getCountryByDialCode\":{\"type\":\"function\",\"annotations\":{\"framerContractVersion\":\"1\"}},\"countryEmojis\":{\"type\":\"variable\",\"annotations\":{\"framerContractVersion\":\"1\"}},\"countries\":{\"type\":\"variable\",\"annotations\":{\"framerContractVersion\":\"1\"}},\"countryPhoneFormats\":{\"type\":\"variable\",\"annotations\":{\"framerContractVersion\":\"1\"}},\"__FramerMetadata__\":{\"type\":\"variable\"}}}\n//# sourceMappingURL=./Countries.map","import{jsx as _jsx,jsxs as _jsxs,Fragment as _Fragment}from\"react/jsx-runtime\";import{ControlType}from\"framer\";import{motion,AnimatePresence}from\"framer-motion\";import{parsePadding,fillProp,borderProp,shadowsProp,iconProp,createBackground}from\"https://framerusercontent.com/modules/DwWOdDzQZGCuvkNlbUjZ/hMz2wp3CWZkNwPJFGPgQ/FramerFormsShared.js\";// ============================================================================\n// CONSTANTS\n// ============================================================================\nconst COLORS={selectedBg:\"rgba(0, 153, 255, 0.1)\",transparent:\"transparent\"};// ============================================================================\n// UTILITY FUNCTIONS\n// ============================================================================\nconst hoverHandlers=(isSelected,hoverBg)=>({onMouseEnter:e=>{if(!isSelected)e.currentTarget.style.backgroundColor=hoverBg;},onMouseLeave:e=>{if(!isSelected)e.currentTarget.style.backgroundColor=COLORS.transparent;}});// ============================================================================\n// REUSABLE DROPDOWN COMPONENTS\n// ============================================================================\n/**\n * Standard dropdown option item component.\n */export function DropdownItem({option,isSelected,onSelect,color,font,padding,hoverBg=\"rgba(255, 255, 255, 0.1)\",showBorder=false}){if(option.type===\"line\"){return /*#__PURE__*/_jsx(\"div\",{style:{height:1,backgroundColor:\"rgba(0, 0, 0, 0.1)\",margin:`4px 0`}});}return /*#__PURE__*/_jsx(\"div\",{onClick:()=>onSelect(option.value||\"\"),style:{display:\"flex\",justifyContent:\"space-between\",alignItems:\"center\",padding,cursor:\"pointer\",backgroundColor:isSelected?COLORS.selectedBg:COLORS.transparent,...font,fontSize:font.fontSize||14,borderBottom:showBorder?\"1px solid rgba(0, 0, 0, 0.1)\":\"none\"},...hoverHandlers(isSelected,hoverBg),children:/*#__PURE__*/_jsx(\"span\",{style:{width:\"fitContent\",color},children:option.title||option.value})});}/**\n * Dropdown search input component.\n */export function DropdownSearch({searchInputRef,searchQuery,onSearchChange,placeholder,color,font,padding,placeholderColor,containerId,showBorder,borderColor}){const searchInputId=`search-${containerId}`;return /*#__PURE__*/_jsxs(_Fragment,{children:[/*#__PURE__*/_jsx(\"div\",{style:{padding,borderBottom:showBorder?`1px solid ${borderColor}`:\"none\"},children:/*#__PURE__*/_jsx(\"input\",{ref:searchInputRef,id:searchInputId,type:\"text\",placeholder:placeholder,value:searchQuery,onChange:e=>onSearchChange(e.target.value),style:{width:\"100%\",border:\"none\",outline:\"none\",background:\"transparent\",color,...font,fontSize:font.fontSize||14}})}),/*#__PURE__*/_jsx(\"style\",{dangerouslySetInnerHTML:{__html:`#${searchInputId}::placeholder { color: ${placeholderColor||color+\"80\"}; }`}})]});}/**\n * Scrollable dropdown content area with customizable scrollbar.\n */export function DropdownScrollArea({children,containerId,isCanvas,showDropdown,scrollbar}){const scrollableId=`scrollable-${containerId}`;const showScrollbar=scrollbar?.show!==false;const scrollbarWidth=scrollbar?.width||8;const scrollbarBgColor=scrollbar?.bgColor||\"rgba(0, 0, 0, 0.2)\";const forceScrollbar=isCanvas&&showDropdown&&showScrollbar;return /*#__PURE__*/_jsxs(_Fragment,{children:[/*#__PURE__*/_jsx(\"style\",{dangerouslySetInnerHTML:{__html:showScrollbar?`\n                        #${scrollableId}::-webkit-scrollbar {\n                            width: ${scrollbarWidth}px;\n                        }\n                        #${scrollableId}::-webkit-scrollbar-track {\n                            background: transparent;\n                        }\n                        #${scrollableId}::-webkit-scrollbar-thumb {\n                            background: ${scrollbarBgColor};\n                            border-radius: ${scrollbarWidth/2}px;\n                        }\n                        #${scrollableId}::-webkit-scrollbar-thumb:hover {\n                            opacity: 0.8;\n                        }\n                        #${scrollableId} {\n                            scrollbar-width: thin;\n                            scrollbar-color: ${scrollbarBgColor} transparent;\n                            ${forceScrollbar?`overflow-y: scroll !important;`:\"\"}\n                        }\n                    `:`\n                        #${scrollableId}::-webkit-scrollbar {\n                            display: none;\n                        }\n                        #${scrollableId} {\n                            scrollbar-width: none;\n                            -ms-overflow-style: none;\n                        }\n                    `}}),/*#__PURE__*/_jsx(\"div\",{id:scrollableId,style:{overflowY:forceScrollbar?\"scroll\":\"auto\",flex:1},children:children})]});}/**\n * Generic dropdown content component.\n * Renders search (optional), header (optional), and options list.\n */export function GenericDropdownContent({options,selectedValue,onOptionSelect,color,font,padding,placeholderColor,dropdownStyle,containerId,isCanvas,showDropdown,showSearch=false,searchPlaceholder=\"Search...\",searchQuery=\"\",onSearchChange,searchInputRef,renderItem,renderHeader}){const hoverBg=dropdownStyle?.hoverBg||\"rgba(255, 255, 255, 0.1)\";const searchBorderColor=dropdownStyle?.searchBorderColor||\"rgba(0, 0, 0, 0.1)\";const hasResults=options.length>0;// Filter options based on search query if search is enabled\nconst filteredOptions=showSearch&&searchQuery?options.filter(opt=>{if(opt.type===\"line\")return false;const searchLower=searchQuery.toLowerCase();return(opt.title||\"\").toLowerCase().includes(searchLower)||(opt.value||\"\").toLowerCase().includes(searchLower);}):options;return /*#__PURE__*/_jsxs(_Fragment,{children:[showSearch&&onSearchChange&&/*#__PURE__*/_jsx(DropdownSearch,{searchInputRef:searchInputRef,searchQuery:searchQuery,onSearchChange:onSearchChange,placeholder:searchPlaceholder,color:color,font:font,padding:padding,placeholderColor:placeholderColor,containerId:containerId,showBorder:hasResults,borderColor:searchBorderColor}),/*#__PURE__*/_jsxs(DropdownScrollArea,{containerId:containerId,isCanvas:isCanvas,showDropdown:showDropdown,scrollbar:dropdownStyle?.scrollbar,children:[renderHeader?.(),filteredOptions.map((option,index)=>{const isSelected=option.value===selectedValue;const isLastBeforeLine=index<filteredOptions.length-1&&filteredOptions[index+1]?.type===\"line\";if(renderItem){return renderItem({option,isSelected,onSelect:onOptionSelect,color,font,padding,hoverBg,showBorder:isLastBeforeLine});}return /*#__PURE__*/_jsx(DropdownItem,{option:option,isSelected:isSelected,onSelect:onOptionSelect,color:color,font:font,padding:padding,hoverBg:hoverBg,showBorder:isLastBeforeLine},option.value||`line-${index}`);})]})]});}/**\n * Generic dropdown container component with animation support.\n * This is the core dropdown that can be customized for different use cases.\n */export function GenericDropdown(props){const{isOpen,dropdownRef,containerId,fill,isCanvas,showDropdown=false,right,left,width,dropdownStyle,borderRadius,bgBlur}=props;const shouldShow=isOpen||isCanvas&&showDropdown;if(!shouldShow)return null;// Parse border configuration\nconst borderWidth=dropdownStyle?.border?.width?parsePadding(dropdownStyle.border.width):[0,0,0,0];const borderColor=dropdownStyle?.border?.color||\"rgba(136, 136, 136, 0.1)\";const borderStyle=borderWidth.some(w=>w>0)?\"solid\":\"none\";// Use dropdownFill from dropdownStyle if provided, otherwise fall back to fill, otherwise use default\nconst fillToUse=dropdownStyle?.dropdownFill||fill;const backgroundStyle=createBackground(fillToUse);const defaultBgColor=\"#BBBBBB\"// Default dropdown background color (full opacity)\n;const dropdownStyleCSS={position:\"absolute\",top:\"100%\",left:left??0,right:right??undefined,width:width??document.querySelector(\"#\"+containerId)?.clientWidth??\"100%\",marginTop:dropdownStyle?.marginTop??4,backgroundColor:backgroundStyle.backgroundColor||defaultBgColor,backgroundImage:backgroundStyle.backgroundImage,borderRadius:borderRadius||\"8px\",boxShadow:dropdownStyle?.shadows?.default||\"0 4px 12px rgba(0, 0, 0, 0.15)\",zIndex:1e3,maxHeight:dropdownStyle?.height?`${dropdownStyle.height}px`:\"300px\",overflow:\"hidden\",display:\"flex\",flexDirection:\"column\",borderWidth:`${borderWidth[0]}px ${borderWidth[1]}px ${borderWidth[2]}px ${borderWidth[3]}px`,borderStyle,borderColor,backdropFilter:dropdownStyle?.bgBlur!==undefined&&dropdownStyle.bgBlur!==0?`blur(${dropdownStyle.bgBlur}px)`:bgBlur!==0?`blur(${bgBlur}px)`:undefined};const initialY=dropdownStyle?.initialY??-10;const animationConfig={initial:{opacity:0,y:initialY},animate:{opacity:1,y:0},exit:{opacity:0,y:initialY},transition:dropdownStyle?.animation?.type!==false?dropdownStyle?.animation:{duration:.2}};// Canvas preview mode: render without animation\nif(isCanvas&&showDropdown&&!isOpen){return /*#__PURE__*/_jsx(\"div\",{ref:dropdownRef,style:dropdownStyleCSS,children:/*#__PURE__*/_jsx(GenericDropdownContent,{...props})});}return /*#__PURE__*/_jsx(AnimatePresence,{children:shouldShow&&/*#__PURE__*/_jsx(motion.div,{ref:dropdownRef,...animationConfig,style:dropdownStyleCSS,children:/*#__PURE__*/_jsx(GenericDropdownContent,{...props})})});}// ============================================================================\n// PROPERTY CONTROLS (Exported for reuse)\n// ============================================================================\n/**\n * Dropdown style property controls.\n * Import and spread these in other components that use dropdowns.\n */export function getDropdownStyleControls(){return{height:{type:ControlType.Number,defaultValue:300,min:100,max:800,step:10,displayStepper:true,unit:\"px\",title:\"Height\"},animation:{type:ControlType.Transition,defaultValue:{type:\"easing\"},title:\"Animation\"},initialY:{type:ControlType.Number,defaultValue:-10,min:-100,max:100,step:1,displayStepper:true,unit:\"px\",title:\"Initial Y\"},marginTop:{type:ControlType.Number,defaultValue:4,min:0,max:32,step:1,displayStepper:true,unit:\"px\",title:\"Margin\"},hoverBg:{type:ControlType.Color,defaultValue:\"rgba(255, 255, 255, 0.1)\",title:\"Hover BG\"},searchBorderColor:{type:ControlType.Color,defaultValue:\"rgba(0, 0, 0, 0.1)\",title:\"Divider\"},scrollbar:{type:ControlType.Object,optional:true,title:\"Scrollbar\",controls:{show:{type:ControlType.Boolean,defaultValue:true,title:\"Show\"},width:{type:ControlType.Number,defaultValue:8,min:4,max:20,step:1,displayStepper:true,unit:\"px\",title:\"Width\",hidden:props=>props.show===false},bgColor:{type:ControlType.Color,defaultValue:\"rgba(0, 0, 0, 0.6)\",title:\"Color\",hidden:props=>props.show===false}}},dropdownFill:{...getDropdownFillControl(),title:\"Fill\"},bgBlur:{type:ControlType.Number,defaultValue:16,min:0,max:100,step:1,displayStepper:true,title:\"BG Blur\"},border:borderProp({invalid:false,focus:false}),shadows:shadowsProp({invalid:false})};}/**\n * Creates a dropdown property control object.\n * Use this in components that need dropdown settings.\n */export function dropdownProp(options={}){return{type:ControlType.Object,optional:false,title:options.title||\"Dropdown\",controls:getDropdownStyleControls()};}/**\n * Option item property controls for the options array.\n */export function getOptionItemControls(){return{type:{type:ControlType.Enum,defaultValue:\"text\",options:[\"text\",\"line\"],optionTitles:[\"Text\",\"Line\"],displaySegmentedControl:true},value:{type:ControlType.String,hidden:props=>props.type===\"line\"},title:{type:ControlType.String,hidden:props=>props.type===\"line\"},enabled:{type:ControlType.Boolean,defaultValue:true,enabledTitle:\"Yes\",disabledTitle:\"No\",hidden:props=>props.type===\"line\"},default:{type:ControlType.Boolean,defaultValue:false,enabledTitle:\"Yes\",disabledTitle:\"No\",hidden:props=>props.type===\"line\"}};}// ============================================================================\n// SHARED PROPERTY CONTROLS (Exported for reuse across components)\n// ============================================================================\n/**\n * Default values for shared controls.\n *\n * HOW TO USE:\n * - Change values here to cascade updates to ALL components (Dropdown, CountryInput, PhoneNumberInput)\n * - To override a default in a specific component, pass it as an option to getSharedStyleControls():\n *   Example: getSharedStyleControls({ color: \"#999999\" }) // Overrides default color\n *\n * AVAILABLE DEFAULTS:\n * - color: Default text color\n * - placeholderColor: Default placeholder text color\n * - fillColor: Default fill background color\n * - radius: Default border radius\n * - padding: Default padding\n * - fontSize: Default font size\n * - lineHeight: Default line height\n * - bgBlur: Background blur settings (min, max, step)\n */export const SHARED_DEFAULTS={color:\"#999999\",placeholderColor:\"#999999\",fillColor:\"rgba(187, 187, 187, 0.15)\",dropdownFillColor:\"rgba(187, 187, 187, 0.15)\",radius:\"10px\",padding:\"12px\",fontSize:14,lineHeight:1.2,bgBlur:{min:0,max:100,step:1}};/**\n * Factory function for color control.\n * @param defaultValue - Default color value (defaults to SHARED_DEFAULTS.color)\n */export function getColorControl(defaultValue=SHARED_DEFAULTS.color){return{type:ControlType.Color,defaultValue};}/**\n * Factory function for fill control.\n * @param options - Options for fillProp (invalid, color, etc.)\n */export function getFillControl(options={}){return fillProp({invalid:options.invalid!==false,color:options.color||SHARED_DEFAULTS.fillColor});}/**\n * Factory function for dropdown fill control.\n * @param defaultValue - Default dropdown fill color value (defaults to SHARED_DEFAULTS.dropdownFillColor)\n */export function getDropdownFillControl(defaultValue=SHARED_DEFAULTS.dropdownFillColor){return fillProp({invalid:false,focus:false,color:defaultValue});}/**\n * Factory function for font control.\n */export function getFontControl(){return{type:\"font\",controls:\"extended\",defaultFontType:\"sans-serif\",defaultValue:{fontSize:SHARED_DEFAULTS.fontSize,lineHeight:SHARED_DEFAULTS.lineHeight}};}/**\n * Factory function for radius control.\n * @param defaultValue - Default radius value (defaults to SHARED_DEFAULTS.radius)\n */export function getRadiusControl(defaultValue=SHARED_DEFAULTS.radius){return{type:ControlType.String,defaultValue,title:\"Radius\"};}/**\n * Factory function for padding control.\n * @param defaultValue - Default padding value (defaults to SHARED_DEFAULTS.padding)\n */export function getPaddingControl(defaultValue=SHARED_DEFAULTS.padding){return{type:ControlType.String,defaultValue,title:\"Padding\"};}/**\n * Factory function for placeholder color control.\n * @param defaultValue - Default placeholder color value (defaults to SHARED_DEFAULTS.placeholderColor)\n * @param title - Title for the control (defaults to \"Placeholder Color\")\n * @param optional - Whether the control is optional (defaults to true)\n */export function getPlaceholderColorControl(defaultValue=SHARED_DEFAULTS.placeholderColor,title=\"Placeholder Color\",optional=true){return{type:ControlType.Color,defaultValue,title,...optional?{optional:true}:{}};}/**\n * Factory function for icon control.\n * @param buttonTitle - Title for the icon button (defaults to \"Caret\")\n */export function getIconControl(buttonTitle=\"Caret\"){return iconProp({buttonTitle});}/**\n * Factory function for border control.\n * @param options - Options for borderProp (invalid, focus, etc.)\n */export function getBorderControl(options={}){return borderProp({invalid:options.invalid!==false,focus:options.focus!==false});}/**\n * Factory function for shadows control.\n * @param options - Options for shadowsProp (invalid, etc.)\n */export function getShadowsControl(options={}){return shadowsProp({invalid:options.invalid!==false});}/**\n * Factory function for bgBlur control.\n */export function getBgBlurControl(){return{type:ControlType.Number,min:SHARED_DEFAULTS.bgBlur.min,max:SHARED_DEFAULTS.bgBlur.max,step:SHARED_DEFAULTS.bgBlur.step,displayStepper:true,title:\"BG Blur\"};}/**\n * Factory function for transition control.\n */export function getTransitionControl(){return{type:ControlType.Transition,defaultValue:{type:false}};}/**\n * Shared event handler controls.\n * These are identical across all components.\n */export const sharedEventControls={focusEvent:{type:ControlType.EventHandler,title:\"Focus\"},blurEvent:{type:ControlType.EventHandler,title:\"Blur\"},invalidEvent:{type:ControlType.EventHandler,title:\"Invalid\"}};/**\n * Shared style controls object.\n * Use this to get all common style controls at once.\n *\n * USAGE:\n *   ...getSharedStyleControls({ invalid: true })\n *\n * TO OVERRIDE DEFAULTS:\n *   ...getSharedStyleControls({\n *     color: \"#999999\",           // Override default color\n *     placeholderColor: \"#666\",   // Override default placeholder color\n *     fillColor: \"#353535\",       // Override default fill color\n *     radius: \"8px\",              // Override default radius\n *     padding: \"16px\",            // Override default padding\n *     invalid: true               // Enable invalid state styling\n *   })\n *\n * Individual controls can be overridden by passing options.\n * All defaults come from SHARED_DEFAULTS constant above.\n *\n * NOTE: Component-specific controls (like placeholder text) should be added separately,\n * as they differ per component (e.g., \"Select...\" vs \"Select a country...\" vs none).\n */export function getSharedStyleControls(options={}){return{font:getFontControl(),color:getColorControl(options.color),placeholderColor:getPlaceholderColorControl(options.placeholderColor,options.placeholderColorTitle,options.placeholderColorOptional),fill:getFillControl({invalid:options.invalid!==false,color:options.fillColor}),radius:getRadiusControl(options.radius),padding:getPaddingControl(options.padding),icon:getIconControl(options.iconTitle),border:getBorderControl({invalid:options.invalid!==false,focus:options.focus!==false}),shadows:getShadowsControl({invalid:options.invalid!==false}),bgBlur:getBgBlurControl(),transition:getTransitionControl(),...sharedEventControls};}\nexport const __FramerMetadata__ = {\"exports\":{\"DropdownOption\":{\"type\":\"tsType\",\"annotations\":{\"framerContractVersion\":\"1\"}},\"sharedEventControls\":{\"type\":\"variable\",\"annotations\":{\"framerContractVersion\":\"1\"}},\"getSharedStyleControls\":{\"type\":\"function\",\"annotations\":{\"framerContractVersion\":\"1\"}},\"getOptionItemControls\":{\"type\":\"function\",\"annotations\":{\"framerContractVersion\":\"1\"}},\"SHARED_DEFAULTS\":{\"type\":\"variable\",\"annotations\":{\"framerContractVersion\":\"1\"}},\"getRadiusControl\":{\"type\":\"function\",\"annotations\":{\"framerContractVersion\":\"1\"}},\"GenericDropdownContent\":{\"type\":\"reactComponent\",\"name\":\"GenericDropdownContent\",\"slots\":[],\"annotations\":{\"framerContractVersion\":\"1\"}},\"getColorControl\":{\"type\":\"function\",\"annotations\":{\"framerContractVersion\":\"1\"}},\"BaseDropdownProps\":{\"type\":\"tsType\",\"annotations\":{\"framerContractVersion\":\"1\"}},\"getPaddingControl\":{\"type\":\"function\",\"annotations\":{\"framerContractVersion\":\"1\"}},\"getPlaceholderColorControl\":{\"type\":\"function\",\"annotations\":{\"framerContractVersion\":\"1\"}},\"getShadowsControl\":{\"type\":\"function\",\"annotations\":{\"framerContractVersion\":\"1\"}},\"DropdownStyleConfig\":{\"type\":\"tsType\",\"annotations\":{\"framerContractVersion\":\"1\"}},\"GenericDropdown\":{\"type\":\"reactComponent\",\"name\":\"GenericDropdown\",\"slots\":[],\"annotations\":{\"framerContractVersion\":\"1\"}},\"DropdownItemProps\":{\"type\":\"tsType\",\"annotations\":{\"framerContractVersion\":\"1\"}},\"getFillControl\":{\"type\":\"function\",\"annotations\":{\"framerContractVersion\":\"1\"}},\"getIconControl\":{\"type\":\"function\",\"annotations\":{\"framerContractVersion\":\"1\"}},\"DropdownScrollArea\":{\"type\":\"reactComponent\",\"name\":\"DropdownScrollArea\",\"slots\":[\"children\"],\"annotations\":{\"framerContractVersion\":\"1\"}},\"DropdownSearch\":{\"type\":\"reactComponent\",\"name\":\"DropdownSearch\",\"slots\":[],\"annotations\":{\"framerContractVersion\":\"1\"}},\"getTransitionControl\":{\"type\":\"function\",\"annotations\":{\"framerContractVersion\":\"1\"}},\"getBgBlurControl\":{\"type\":\"function\",\"annotations\":{\"framerContractVersion\":\"1\"}},\"getDropdownFillControl\":{\"type\":\"function\",\"annotations\":{\"framerContractVersion\":\"1\"}},\"getFontControl\":{\"type\":\"function\",\"annotations\":{\"framerContractVersion\":\"1\"}},\"dropdownProp\":{\"type\":\"function\",\"annotations\":{\"framerContractVersion\":\"1\"}},\"GenericDropdownProps\":{\"type\":\"tsType\",\"annotations\":{\"framerContractVersion\":\"1\"}},\"getBorderControl\":{\"type\":\"function\",\"annotations\":{\"framerContractVersion\":\"1\"}},\"getDropdownStyleControls\":{\"type\":\"function\",\"annotations\":{\"framerContractVersion\":\"1\"}},\"DropdownItemRenderProps\":{\"type\":\"tsType\",\"annotations\":{\"framerContractVersion\":\"1\"}},\"DropdownItem\":{\"type\":\"reactComponent\",\"name\":\"DropdownItem\",\"slots\":[],\"annotations\":{\"framerContractVersion\":\"1\"}},\"__FramerMetadata__\":{\"type\":\"variable\"}}}","import{jsx as _jsx,jsxs as _jsxs,Fragment as _Fragment}from\"react/jsx-runtime\";import{motion}from\"framer-motion\";import{parsePadding,createBackground}from\"https://framerusercontent.com/modules/DwWOdDzQZGCuvkNlbUjZ/hMz2wp3CWZkNwPJFGPgQ/FramerFormsShared.js\";import{countries,countryEmojis,countryDialCodes}from\"https://framerusercontent.com/modules/1LECUrurTpenvfDn1ShM/nL9gmnXABjh04Nl8aaL8/Countries.js\";import{DropdownScrollArea,DropdownSearch}from\"https://framerusercontent.com/modules/PwJ4k4IqmEWPlM2ZI4Eu/Ow3xyrL3YR7stkg8VL2K/DropdownUtilities.js\";// ============================================================================\n// CONSTANTS\n// ============================================================================\nconst COLORS={selectedBg:\"rgba(0, 153, 255, 0.1)\",transparent:\"transparent\"};// ============================================================================\n// UTILITY FUNCTIONS\n// ============================================================================\nconst hoverHandlers=(isSelected,hoverBg)=>({onMouseEnter:e=>{if(!isSelected)e.currentTarget.style.backgroundColor=hoverBg;},onMouseLeave:e=>{if(!isSelected)e.currentTarget.style.backgroundColor=COLORS.transparent;}});function CountryItem({country,isSelected,onSelect,color,font,padding,showFlags,showDialCodes,showBorder=false,hoverBg=\"rgba(255, 255, 255, 0.1)\"}){const countryIndex=countries.indexOf(country);const dialCode=countryDialCodes[countryIndex];const emoji=countryEmojis[countryIndex];return /*#__PURE__*/_jsxs(\"div\",{onClick:()=>onSelect(country),style:{display:\"flex\",justifyContent:\"space-between\",alignItems:\"center\",padding,cursor:\"pointer\",backgroundColor:isSelected?COLORS.selectedBg:COLORS.transparent,...font,fontSize:font.fontSize||14,borderBottom:showBorder?\"1px solid rgba(0, 0, 0, 0.1)\":\"none\"},...hoverHandlers(isSelected,hoverBg),children:[/*#__PURE__*/_jsxs(\"div\",{style:{display:\"flex\",alignItems:\"center\",gap:4},children:[showFlags&&/*#__PURE__*/_jsx(\"span\",{style:{fontSize:\"18px\",lineHeight:1,width:\"fitContent\"},children:emoji}),/*#__PURE__*/_jsx(\"span\",{style:{width:\"fitContent\",color},children:country})]}),showDialCodes&&/*#__PURE__*/_jsxs(\"span\",{style:{width:\"fitContent\",color:color||\"#999\",opacity:.7},children:[\"+\",dialCode]})]});}function NoneOption({isSelected,onSelect,color,font,padding,text,showBorder,hoverBg=\"rgba(255, 255, 255, 0.1)\"}){return /*#__PURE__*/_jsx(\"div\",{onClick:onSelect,style:{display:\"flex\",justifyContent:\"space-between\",alignItems:\"center\",padding,cursor:\"pointer\",backgroundColor:isSelected?COLORS.selectedBg:COLORS.transparent,...font,fontSize:font.fontSize||14,borderBottom:showBorder?\"1px solid rgba(0, 0, 0, 0.1)\":\"none\"},...hoverHandlers(isSelected,hoverBg),children:/*#__PURE__*/_jsx(\"span\",{style:{width:\"fitContent\",color},children:text})});}function CountryDropdownContent({searchInputRef,searchQuery,onSearchChange,filteredCountries,selectedCountry,onCountrySelect,color,font,showFlags=true,showDialCodes=false,pinnedCountries=[],showNoneOption=false,noneOptionText=\"Select a country...\",onNoneSelect,padding,placeholderColor,dropdownStyle,containerId,isCanvas,showDropdown}){const pinnedSet=new Set(pinnedCountries);const regularCountries=filteredCountries.filter(c=>!pinnedSet.has(c));const pinnedFiltered=pinnedCountries.filter(c=>filteredCountries.includes(c));const isNoneSelected=selectedCountry===\"\"||selectedCountry===\"none\";const hasMoreItems=pinnedFiltered.length>0||regularCountries.length>0;const hasResults=filteredCountries.length>0;const hoverBg=dropdownStyle?.hoverBg||\"rgba(255, 255, 255, 0.1)\";const searchBorderColor=dropdownStyle?.searchBorderColor||\"rgba(0, 0, 0, 0.1)\";return /*#__PURE__*/_jsxs(_Fragment,{children:[/*#__PURE__*/_jsx(DropdownSearch,{searchInputRef:searchInputRef,searchQuery:searchQuery,onSearchChange:onSearchChange,placeholder:\"Search countries...\",color:color,font:font,padding:padding,placeholderColor:placeholderColor,containerId:containerId,showBorder:hasResults,borderColor:searchBorderColor}),/*#__PURE__*/_jsxs(DropdownScrollArea,{containerId:containerId,isCanvas:isCanvas,showDropdown:showDropdown,scrollbar:dropdownStyle?.scrollbar,children:[showNoneOption&&/*#__PURE__*/_jsx(NoneOption,{isSelected:isNoneSelected,onSelect:onNoneSelect,color:color,font:font,padding:padding,text:noneOptionText,showBorder:hasMoreItems,hoverBg:hoverBg}),pinnedFiltered.map(country=>/*#__PURE__*/_jsx(CountryItem,{country:country,isSelected:country===selectedCountry,onSelect:onCountrySelect,color:color,font:font,padding:padding,showFlags:showFlags,showDialCodes:showDialCodes,showBorder:regularCountries.length>0,hoverBg:hoverBg},`pinned-${country}`)),regularCountries.map(country=>/*#__PURE__*/_jsx(CountryItem,{country:country,isSelected:country===selectedCountry,onSelect:onCountrySelect,color:color,font:font,padding:padding,showFlags:showFlags,showDialCodes:showDialCodes,hoverBg:hoverBg},country))]})]});}/**\n * Reusable country dropdown component with search, flags, and dial codes support.\n * Used by both CountryInput and PhoneNumberInput components.\n */export function CountryDropdown(props){const{isOpen,dropdownRef,containerId,fill,isCanvas,showDropdown=false,right,left,width,dropdownStyle,borderRadius,bgBlur}=props;const shouldShow=isOpen||isCanvas&&showDropdown;if(!shouldShow)return null;// Parse border configuration\nconst borderWidth=dropdownStyle?.border?.width?parsePadding(dropdownStyle.border.width):[0,0,0,0];const borderColor=dropdownStyle?.border?.color||\"rgba(136, 136, 136, 0.1)\";const borderStyle=borderWidth.some(w=>w>0)?\"solid\":\"none\";// Use dropdownFill from dropdownStyle if provided, otherwise fall back to fill, otherwise use default\nconst fillToUse=dropdownStyle?.dropdownFill||fill;const backgroundStyle=createBackground(fillToUse);const defaultBgColor=\"#BBBBBB\"// Default dropdown background color (full opacity)\n;const dropdownStyleCSS={position:\"absolute\",top:\"100%\",left:left??0,right:right??undefined,width:width??document.querySelector(\"#\"+containerId)?.clientWidth??\"100%\",marginTop:dropdownStyle?.marginTop??4,backgroundColor:backgroundStyle.backgroundColor||defaultBgColor,backgroundImage:backgroundStyle.backgroundImage,borderRadius:borderRadius||\"8px\",boxShadow:dropdownStyle?.shadows?.default||\"0 4px 12px rgba(0, 0, 0, 0.15)\",zIndex:1e3,maxHeight:dropdownStyle?.height?`${dropdownStyle.height}px`:\"300px\",overflow:\"hidden\",display:\"flex\",flexDirection:\"column\",borderWidth:`${borderWidth[0]}px ${borderWidth[1]}px ${borderWidth[2]}px ${borderWidth[3]}px`,borderStyle,borderColor,backdropFilter:dropdownStyle?.bgBlur!==undefined&&dropdownStyle.bgBlur!==0?`blur(${dropdownStyle.bgBlur}px)`:bgBlur!==0?`blur(${bgBlur}px)`:undefined};const initialY=dropdownStyle?.initialY??-10;const animationConfig={initial:{opacity:0,y:initialY},animate:{opacity:1,y:0},exit:{opacity:0,y:initialY},transition:dropdownStyle?.animation?.type!==false?dropdownStyle?.animation:{duration:.2}};// Canvas preview mode: render without animation\nif(isCanvas&&showDropdown&&!isOpen){return /*#__PURE__*/_jsx(\"div\",{ref:dropdownRef,style:dropdownStyleCSS,children:/*#__PURE__*/_jsx(CountryDropdownContent,{...props})});}return /*#__PURE__*/_jsx(motion.div,{ref:dropdownRef,...animationConfig,style:dropdownStyleCSS,children:/*#__PURE__*/_jsx(CountryDropdownContent,{...props})});}\nexport const __FramerMetadata__ = {\"exports\":{\"CountryDropdownProps\":{\"type\":\"tsType\",\"annotations\":{\"framerContractVersion\":\"1\"}},\"CountryDropdown\":{\"type\":\"reactComponent\",\"name\":\"CountryDropdown\",\"slots\":[],\"annotations\":{\"framerContractVersion\":\"1\"}},\"__FramerMetadata__\":{\"type\":\"variable\"}}}","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{createBackground,Border,parsePadding,useInstanceId,Icon,HiddenInput}from\"https://framerusercontent.com/modules/DwWOdDzQZGCuvkNlbUjZ/hMz2wp3CWZkNwPJFGPgQ/FramerFormsShared.js\";import{countries,countryEmojis}from\"https://framerusercontent.com/modules/1LECUrurTpenvfDn1ShM/nL9gmnXABjh04Nl8aaL8/Countries.js\";import{CountryDropdown}from\"https://framerusercontent.com/modules/SRHLnHriy9CtZfYf0KJF/l79PAJhiVgI4zvdb2YN1/CountryDropdown.js\";import{dropdownProp,getSharedStyleControls}from\"https://framerusercontent.com/modules/PwJ4k4IqmEWPlM2ZI4Eu/Ow3xyrL3YR7stkg8VL2K/DropdownUtilities.js\";// ============================================================================\n// MAIN COMPONENT\n// ============================================================================\n/**\n * @framerSupportedLayoutWidth fixed\n * @framerSupportedLayoutHeight any\n * @framerIntrinsicWidth 400\n * @framerDisableUnlink\n */export default function CountryInput(props){const{shadows,border,icon}=props;const id=useInstanceId();const isCanvas=RenderTarget.current()===RenderTarget.canvas;const[focused,setFocused]=useState(false);const[invalid,setInvalid]=useState(false);const[dropdownOpen,setDropdownOpen]=useState(false);const[searchQuery,setSearchQuery]=useState(\"\");const[selectedCountry,setSelectedCountry]=useState(props.defaultValue&&props.defaultValue!==\"none\"?props.defaultValue:\"\");// Update selectedCountry when defaultValue prop changes\nuseEffect(()=>{if(props.defaultValue&&props.defaultValue!==\"none\"){setSelectedCountry(props.defaultValue);}else{setSelectedCountry(\"\");}},[props.defaultValue]);const dropdownRef=useRef(null);const searchInputRef=useRef(null);const inputRef=useRef(null);const[pt,pr,pb,pl]=parsePadding(props.padding);// Filter countries based on search query\nconst filteredCountries=searchQuery?countries.filter((country,index)=>{const searchLower=searchQuery.toLowerCase();return country.toLowerCase().includes(searchLower)||props.flagEmojis&&(countryEmojis[index]+\" \"+country).toLowerCase().includes(searchLower);}):countries;// Close dropdown when clicking outside\nuseEffect(()=>{const handleClickOutside=event=>{const target=event.target;const isOutsideDropdown=dropdownRef.current&&!dropdownRef.current.contains(target);const isOutsideInput=inputRef.current&&!inputRef.current.contains(target);if(isOutsideDropdown&&isOutsideInput){setDropdownOpen(false);setSearchQuery(\"\");setFocused(false);}};if(dropdownOpen||focused){document.addEventListener(\"mousedown\",handleClickOutside);return()=>{document.removeEventListener(\"mousedown\",handleClickOutside);};}},[dropdownOpen,focused]);// Focus search input when dropdown opens\nuseEffect(()=>{if(dropdownOpen&&searchInputRef.current){setTimeout(()=>{searchInputRef.current?.focus();},100);}},[dropdownOpen]);function onFocus(){setFocused(true);setDropdownOpen(true);props.focusEvent?.();if(invalid){setInvalid(false);}}function onBlur(event){// Don't blur if clicking on dropdown\nconst relatedTarget=event.relatedTarget;if(dropdownRef.current?.contains(relatedTarget)||searchInputRef.current===relatedTarget){return;}if(!dropdownOpen){setFocused(false);setSearchQuery(\"\");props.blurEvent?.();}}function onInputClick(){setDropdownOpen(true);setFocused(true);props.focusEvent?.();if(invalid){setInvalid(false);}}function onCountrySelect(country){setSelectedCountry(country);setDropdownOpen(false);setSearchQuery(\"\");setFocused(false);inputRef.current?.blur();}const onInvalid=event=>{event.preventDefault();setInvalid(true);props.invalidEvent?.();};// Handle value restoration from FormPersistence\nfunction onSetValueEvent(event){const value=event.detail;if(!value||value===\"none\"){setSelectedCountry(\"\");return;}if(countries.includes(value)){setSelectedCountry(value);}}// Get display text for selected country\nconst getDisplayText=()=>{if(!selectedCountry||selectedCountry===\"none\"){return props.noneSelectedText||\"Select a country...\";}const countryIndex=countries.indexOf(selectedCountry);if(props.flagEmojis&&countryIndex>=0){return`${countryEmojis[countryIndex]} ${selectedCountry}`;}return selectedCountry;};return /*#__PURE__*/_jsxs(motion.div,{\"data-framerforms\":true,id:id,style:{position:\"relative\",borderRadius:props.radius},initial:false,transition:props.transition,children:[/*#__PURE__*/_jsx(HiddenInput,{name:props.name,required:props.required&&!selectedCountry,value:selectedCountry,setInvalid:setInvalid,onSetValueEvent:onSetValueEvent}),/*#__PURE__*/_jsx(CountryDropdown,{isOpen:dropdownOpen,dropdownRef:dropdownRef,searchInputRef:searchInputRef,searchQuery:searchQuery,onSearchChange:setSearchQuery,filteredCountries:filteredCountries,selectedCountry:selectedCountry,onCountrySelect:onCountrySelect,containerId:id,fill:props.fill,color:props.color,font:props.font,isCanvas:isCanvas,showDropdown:props.showDropdown,showFlags:props.flagEmojis,showDialCodes:false,pinnedCountries:props.pinnedCountries,dropdownStyle:props.dropdown,borderRadius:props.radius,padding:props.padding,placeholderColor:props.placeholderColor||props.color+\"80\",bgBlur:props.bgBlur}),/*#__PURE__*/_jsxs(motion.div,{ref:inputRef,onClick:onInputClick,onFocus:onFocus,onBlur:onBlur,tabIndex:0,animate:{...createBackground(props.fill,null,focused,invalid),boxShadow:invalid&&shadows?.invalid||focused&&shadows?.focus||shadows?.default},style:{position:\"relative\",borderRadius:props.radius,cursor:\"pointer\",backdropFilter:props.bgBlur?`blur(${props.bgBlur}px)`:undefined,...props.style},initial:false,transition:props.transition,children:[/*#__PURE__*/_jsx(\"div\",{style:{display:\"flex\",alignItems:\"center\",padding:icon?`${pt}px ${pr+icon.size+8}px ${pb}px ${pl}px`:props.padding,color:selectedCountry?props.color:props.placeholderColor||props.color+\"80\",textOverflow:\"ellipsis\",overflow:\"hidden\",whiteSpace:\"nowrap\",...props.font},children:getDisplayText()}),icon&&/*#__PURE__*/_jsx(Icon,{...icon,style:{position:\"absolute\",right:pr,top:\"50%\",transform:\"translateY(-50%)\",pointerEvents:\"none\"},defaultImage:`url('data:image/svg+xml,<svg xmlns=\"http://www.w3.org/2000/svg\" width=\"16\" height=\"16\"><path d=\"M 3.5 6 L 8 10.5 L 12.5 6\" fill=\"transparent\" stroke-width=\"1.5\" stroke=\"rgb(153, 153, 153)\" stroke-linecap=\"round\" stroke-linejoin=\"round\"></path></svg>')`}),/*#__PURE__*/_jsx(Border,{...props.border,borderColor:invalid&&border?.colorInvalid||focused&&border?.colorFocus||border?.color,transition:props.transition})]}),/*#__PURE__*/_jsx(\"style\",{dangerouslySetInnerHTML:{__html:`#${id} [tabindex]:focus { outline: none; }`}})]});}CountryInput.displayName=\"Country Input\";addPropertyControls(CountryInput,{name:{type:ControlType.String,defaultValue:\"Country\"},showDropdown:{type:ControlType.Boolean,defaultValue:false,enabledTitle:\"Show\",disabledTitle:\"Hide\",title:\"Dropdown\"},dropdown:dropdownProp(),required:{type:ControlType.Boolean,defaultValue:false},autoFocus:{type:ControlType.Boolean,defaultValue:false,title:\"Auto-Focus\"},pinnedCountries:{type:ControlType.Array,defaultValue:[],control:{type:ControlType.Enum,options:countries},title:\"Pinned\"},defaultValue:{type:ControlType.Enum,defaultValue:\"none\",options:[\"none\",...countries],optionTitles:[\"None\",...countries]},noneSelectedText:{title:\"Placeholder\",type:ControlType.String,defaultValue:\"Select a country...\",hidden:props=>props.defaultValue!==\"none\"},flagEmojis:{type:ControlType.Boolean,defaultValue:true},// Shared style controls - includes placeholderColor with default from SHARED_DEFAULTS\n// Component-specific controls (like noneSelectedText above) are defined separately\n// To override a default value, pass it as an option:\n// Example: color: \"#999999\" to override the default color\n// Example: placeholderColor: \"#666\" to override the default placeholder color\n// See DropdownUtilities.tsx SHARED_DEFAULTS for all available defaults\n...getSharedStyleControls({invalid:true})});\nexport const __FramerMetadata__ = {\"exports\":{\"default\":{\"type\":\"reactComponent\",\"name\":\"CountryInput\",\"slots\":[],\"annotations\":{\"framerContractVersion\":\"1\",\"framerDisableUnlink\":\"\",\"framerSupportedLayoutWidth\":\"fixed\",\"framerIntrinsicWidth\":\"400\",\"framerSupportedLayoutHeight\":\"any\"}},\"__FramerMetadata__\":{\"type\":\"variable\"}}}"],"mappings":"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"}