{"version":3,"file":"PrefillFormInputs_1.yaHmLriO.mjs","names":["Icon","Border","setupAutofillOverride","useMultiStepFormStore","HIDDEN_CLASS_NAME","CANVAS_HIDDEN_CLASS_NAME","useInstanceId","useId","useRef","useCallback","HideElementComponent","HideElement","HiddenComponentLabel","_react2","_react2.default","defaultEmptyStateStyle","useInstanceId","useState","Border","useId","useRef"],"sources":["https:/framerusercontent.com/modules/itVumdSpaLTGejsnG4cS/6LKYMWPrWe4DJ5B7wYmL/QuizScoringShared.js","https:/framerusercontent.com/modules/DwWOdDzQZGCuvkNlbUjZ/Rj7Kdx4qq62ukVsnw7Hz/FramerFormsShared.js","https:/jspm.dev/npm:react-calendly@2.2.1!cjs","https:/jspm.dev/react-calendly@2.2.1","https:/framerusercontent.com/modules/cuQH4dmpDnV8YK1mSgQX/tTLhbOFToDhKcwOVmn8E/useFontControls.js","https:/framerusercontent.com/modules/afBE9Yx1W6bY5q32qPxe/AAh30yXzt1DUsOi1YwUY/useRenderTarget.js","https:/framerusercontent.com/modules/G4IfyjvwmaeSBpdb4TWu/Pk7RhKpPAlu4xr8tiZYq/index.js","https:/framer.com/m/framer/default-utils.js@^0.43.0","https:/framerusercontent.com/modules/ZORE1BBUY4n4vHC0WFDH/bnwaYkSw2e4q5eLH4jPK/styles.js","https:/framer.com/m/framer/integrations-styles.js@0.2.0","https:/framerusercontent.com/modules/tN5l0aqIzWiUvVuvMcpG/gHVohRD14HLiC9GkfyyX/TextInput.js","https:/framerusercontent.com/modules/n35sxLNmf6aCf6BQNpTe/VHf3lHNHmMCkklHfpmxO/Client_ua_fbp.js","https:/framerusercontent.com/modules/DwWOdDzQZGCuvkNlbUjZ/hMz2wp3CWZkNwPJFGPgQ/FramerFormsShared.js","https:/framer.com/m/FramerFormsShared-XPyb.js@hMz2wp3CWZkNwPJFGPgQ","https:/framerusercontent.com/modules/OyOasXvQK2RaG5ifbGyU/zYlmhCb2o4b8zekhrKSN/PrefillFormInputs_1.js"],"sourcesContent":["import{ControlType}from\"framer\";export const QUIZ_MULTI_SELECT_AGGREGATES=[\"sum\",\"average\",\"max\",\"min\"];export function normalizeQuizMultiSelectAggregate(raw){if(raw===\"average\"||raw===\"max\"||raw===\"min\"){return raw;}return\"sum\";}export function normalizeOptionPointRows(raw){if(!raw?.length)return[];return raw.map(r=>({optionValue:(r.optionValue??\"\").trim(),points:r.points!==undefined&&Number.isFinite(r.points)?Number(r.points):0})).filter(r=>r.optionValue.length>0);}export function parseOptionPointsAttr(attr){if(!attr)return null;try{const v=JSON.parse(attr);const rows=normalizeOptionPointRows(v.rows);if(!rows.length)return null;const defaultPoints=v.defaultPoints!==undefined&&Number.isFinite(v.defaultPoints)?Number(v.defaultPoints):0;return{defaultPoints,rows};}catch{return null;}}function resolvePartToPoints(part,rows,defaultPoints){const row=rows.find(r=>r.optionValue===part);if(row&&Number.isFinite(row.points))return row.points;return defaultPoints;}function splitMultiSelectValue(value,valueSeparator){return value.split(valueSeparator).map(s=>s.trim()).filter(Boolean);}function aggregateMultiSelectPoints(partPoints,aggregate){if(!partPoints.length)return 0;switch(aggregate){case\"sum\":return partPoints.reduce((sum,p)=>sum+p,0);case\"average\":return partPoints.reduce((sum,p)=>sum+p,0)/partPoints.length;case\"max\":return Math.max(...partPoints);case\"min\":return Math.min(...partPoints);default:return partPoints.reduce((sum,p)=>sum+p,0);}}/** Maximum achievable points for one weighted question. */export function maxWeightedQuestionPoints(parsed,multiSelect,aggregate=\"sum\"){const{rows,defaultPoints}=parsed;if(!rows.length)return 0;if(!multiSelect){const rowMax=Math.max(...rows.map(r=>r.points),defaultPoints);return Number.isFinite(rowMax)?rowMax:defaultPoints;}const positiveSum=rows.filter(r=>r.points>0).reduce((sum,r)=>sum+r.points,0);const maxPoint=Math.max(...rows.map(r=>r.points),defaultPoints);switch(aggregate){case\"sum\":return positiveSum;case\"average\":case\"max\":case\"min\":return Number.isFinite(maxPoint)?maxPoint:defaultPoints;default:return positiveSum;}}export function scoreWeightedFieldValue(value,parsed,opts){const multiSelect=opts.matchMode===\"set\";const aggregate=normalizeQuizMultiSelectAggregate(opts.multiSelectAggregate);const maxPoints=maxWeightedQuestionPoints(parsed,multiSelect,aggregate);const trimmed=value.trim();if(!trimmed){return{earned:0,maxPoints};}if(multiSelect){const sep=opts.valueSeparator??\", \";const parts=splitMultiSelectValue(trimmed,sep);const partPoints=parts.map(part=>resolvePartToPoints(part,parsed.rows,parsed.defaultPoints));const earned=aggregateMultiSelectPoints(partPoints,aggregate);return{earned,maxPoints};}const earned=resolvePartToPoints(trimmed,parsed.rows,parsed.defaultPoints);return{earned,maxPoints};}export function isQuizWeightedConfig(quiz){return!!quiz?.isQuizInput&&quiz.scoringMethod===\"weighted\"&&normalizeOptionPointRows(quiz.optionPoints).length>0;}export const QUIZ_DATA_ATTRIBUTE_KEYS=[\"data-framerforms-quiz\",\"data-framerforms-quiz-scoring\",\"data-framerforms-correct-answer\",\"data-framerforms-quiz-points\",\"data-framerforms-quiz-wrong-points\",\"data-framerforms-quiz-options\",\"data-framerforms-quiz-option-points\",\"data-framerforms-quiz-multiselect-aggregate\"];export function clearQuizDataAttributes(el){for(const key of QUIZ_DATA_ATTRIBUTE_KEYS){el.removeAttribute(key);}}export function applyQuizDataAttributes(el,attrs){clearQuizDataAttributes(el);for(const[key,value]of Object.entries(attrs)){el.setAttribute(key,value);}}export function buildQuizInputDataAttributes(quiz,options){if(!quiz?.isQuizInput)return{};if(isQuizWeightedConfig(quiz)){const rows=normalizeOptionPointRows(quiz.optionPoints);const defaultPoints=quiz.defaultOptionPoints!==undefined&&Number.isFinite(quiz.defaultOptionPoints)?Number(quiz.defaultOptionPoints):0;const attrs={\"data-framerforms-quiz\":\"true\",\"data-framerforms-quiz-scoring\":\"weighted\",\"data-framerforms-quiz-option-points\":JSON.stringify({defaultPoints,rows})};if(quiz.multiSelect){attrs[\"data-framerforms-quiz-multiselect-aggregate\"]=normalizeQuizMultiSelectAggregate(quiz.multiSelectAggregate);}if(options.quizOptionsJson&&Object.keys(options.quizOptionsJson).length){attrs[\"data-framerforms-quiz-options\"]=JSON.stringify(options.quizOptionsJson);}return attrs;}const ca=options.correctAnswer;const hasCorrect=ca!=null&&ca!==\"\"&&!(Array.isArray(ca)&&ca.length===0);if(!hasCorrect)return{};const correctStr=Array.isArray(ca)?JSON.stringify(ca):String(ca);const attrs={\"data-framerforms-quiz\":\"true\",\"data-framerforms-quiz-scoring\":\"correctIncorrect\",\"data-framerforms-correct-answer\":correctStr,\"data-framerforms-quiz-points\":String(quiz.points??1),\"data-framerforms-quiz-wrong-points\":String(quiz.wrongPoints??0)};if(options.quizOptionsJson&&Object.keys(options.quizOptionsJson).length){attrs[\"data-framerforms-quiz-options\"]=JSON.stringify(options.quizOptionsJson);}return attrs;}export function createQuizNestedControls(correctControls,options){const hideUnlessQuiz=inner=>!inner.isQuizInput;const hideUnlessWeighted=inner=>!inner.isQuizInput||inner.scoringMethod!==\"weighted\";const hideQuizMultiSelect=inner=>hideUnlessWeighted(inner)||!options?.supportsMultiSelect;const hideMultiSelectAggregate=inner=>hideQuizMultiSelect(inner)||!inner.multiSelect;const hideUnlessCorrect=inner=>!inner.isQuizInput||(inner.scoringMethod??\"correctIncorrect\")===\"weighted\";const wrappedCorrect={};for(const[key,ctrl]of Object.entries(correctControls)){const c=ctrl;const prevHidden=c.hidden;wrappedCorrect[key]={...c,hidden:inner=>hideUnlessCorrect(inner)||typeof prevHidden===\"function\"&&prevHidden(inner)};}return{isQuizInput:{type:ControlType.Boolean,title:\"Quiz\",defaultValue:false,enabledTitle:\"On\",disabledTitle:\"Off\"},scoringMethod:{type:ControlType.Enum,title:\"Scoring\",options:[\"correctIncorrect\",\"weighted\"],optionTitles:[\"Correct / wrong\",\"Weighted options\"],defaultValue:\"correctIncorrect\",displaySegmentedControl:true,segmentedControlDirection:\"vertical\",hidden:hideUnlessQuiz},...wrappedCorrect,points:{type:ControlType.Number,title:\"Correct\",defaultValue:1,min:-100,max:100,step:1,displayStepper:true,hidden:hideUnlessCorrect},wrongPoints:{type:ControlType.Number,title:\"Wrong\",defaultValue:0,min:-100,max:100,step:1,displayStepper:true,hidden:hideUnlessCorrect},defaultOptionPoints:{type:ControlType.Number,title:\"If no match\",defaultValue:0,min:-1e9,max:1e9,step:.01,displayStepper:true,hidden:hideUnlessWeighted},optionPoints:{type:ControlType.Array,title:\"Points\",defaultValue:[{optionValue:\"\",points:1}],description:\"Points per answer value.\",hidden:hideUnlessWeighted,control:{type:ControlType.Object,controls:{optionValue:{type:ControlType.String,title:\"Value\",defaultValue:\"\",placeholder:\"e.g. 'Option1'\"},points:{type:ControlType.Number,title:\"Points\",defaultValue:1,min:-1e9,max:1e9,step:.01,displayStepper:true}}}},...options?.supportsMultiSelect?{multiSelect:{type:ControlType.Boolean,title:\"Multi-select\",defaultValue:false,enabledTitle:\"Yes\",disabledTitle:\"No\",hidden:hideQuizMultiSelect},multiSelectAggregate:{type:ControlType.Enum,title:\"Calculate\",options:QUIZ_MULTI_SELECT_AGGREGATES,optionTitles:[\"Sum\",\"Average\",\"Highest\",\"Lowest\"],defaultValue:\"sum\",displaySegmentedControl:true,segmentedControlDirection:\"vertical\",description:\"How to combine points when multiple options are selected.\",hidden:hideMultiSelectAggregate}}:{}};}\nexport const __FramerMetadata__ = {\"exports\":{\"clearQuizDataAttributes\":{\"type\":\"function\",\"annotations\":{\"framerContractVersion\":\"1\"}},\"normalizeOptionPointRows\":{\"type\":\"function\",\"annotations\":{\"framerContractVersion\":\"1\"}},\"applyQuizDataAttributes\":{\"type\":\"function\",\"annotations\":{\"framerContractVersion\":\"1\"}},\"maxWeightedQuestionPoints\":{\"type\":\"function\",\"annotations\":{\"framerContractVersion\":\"1\"}},\"CreateQuizNestedControlsOptions\":{\"type\":\"tsType\",\"annotations\":{\"framerContractVersion\":\"1\"}},\"NormalizedOptionPoints\":{\"type\":\"tsType\",\"annotations\":{\"framerContractVersion\":\"1\"}},\"QuizInputConfig\":{\"type\":\"tsType\",\"annotations\":{\"framerContractVersion\":\"1\"}},\"QuizScoringMethod\":{\"type\":\"tsType\",\"annotations\":{\"framerContractVersion\":\"1\"}},\"createQuizNestedControls\":{\"type\":\"function\",\"annotations\":{\"framerContractVersion\":\"1\"}},\"QUIZ_MULTI_SELECT_AGGREGATES\":{\"type\":\"variable\",\"annotations\":{\"framerContractVersion\":\"1\"}},\"QUIZ_DATA_ATTRIBUTE_KEYS\":{\"type\":\"variable\",\"annotations\":{\"framerContractVersion\":\"1\"}},\"isQuizWeightedConfig\":{\"type\":\"function\",\"annotations\":{\"framerContractVersion\":\"1\"}},\"QuizMultiSelectAggregate\":{\"type\":\"tsType\",\"annotations\":{\"framerContractVersion\":\"1\"}},\"QuizOptionPointRow\":{\"type\":\"tsType\",\"annotations\":{\"framerContractVersion\":\"1\"}},\"normalizeQuizMultiSelectAggregate\":{\"type\":\"function\",\"annotations\":{\"framerContractVersion\":\"1\"}},\"scoreWeightedFieldValue\":{\"type\":\"function\",\"annotations\":{\"framerContractVersion\":\"1\"}},\"buildQuizInputDataAttributes\":{\"type\":\"function\",\"annotations\":{\"framerContractVersion\":\"1\"}},\"parseOptionPointsAttr\":{\"type\":\"function\",\"annotations\":{\"framerContractVersion\":\"1\"}},\"__FramerMetadata__\":{\"type\":\"variable\"}}}\n//# sourceMappingURL=./QuizScoringShared.map","import{jsx as _jsx,jsxs as _jsxs}from\"react/jsx-runtime\";import{ControlType,RenderTarget,withCSS}from\"framer\";import{forwardRef,useEffect,useState,useRef,useId,useCallback}from\"react\";import{motion}from\"framer-motion\";import{createStore}from\"https://framer.com/m/framer/store.js@^1.0.0\";import{parseOptionPointsAttr,scoreWeightedFieldValue,normalizeQuizMultiSelectAggregate}from\"https://framerusercontent.com/modules/itVumdSpaLTGejsnG4cS/6LKYMWPrWe4DJ5B7wYmL/QuizScoringShared.js\";// ---------------------------------------------------------------------------\n// Shared property controls (Insert Frame docs / support)\n// ---------------------------------------------------------------------------\nconst INSERT_FRAME_FRAMER_FORMS_DOCS=\"https://insertframe.io/docs/framerforms\";/** Spread into `addPropertyControls`: “Need help?” → Get support (Framer Forms docs). */export const insertFrameSupportPropertyControl={needHelp:{type:ControlType.Object,title:\"Need help?\",buttonTitle:\"Get support\",icon:\"interaction\",controls:{info:{type:ControlType.Enum,defaultValue:\"info\",options:[\"info\"],optionTitles:[\"Get support 🛟\"],displaySegmentedControl:true,title:\"Get support\",description:`Documentation and live chat: [FramerForms docs](${INSERT_FRAME_FRAMER_FORMS_DOCS}).`}}}};export const useMultiStepFormStore=createStore({});export const useQuizStore=createStore({});/** Typed tuple for consumers (avoids `as` at every call site). */export function useQuizStoreApi(){return useQuizStore();}export function createEmptyQuizScore(){return{correct:0,total:0,points:0,maxPoints:0,answers:{}};}export const useFormSubmittedStore=createStore({});export function useFormSubmittedStoreApi(){return useFormSubmittedStore();}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(function HiddenInput({name,required,value,setInvalid,onSetValueEvent,noPrefill=false,disabled=false,style:styleProp,...rest},parentRef){const internalRef=useRef(null);const setRefs=useCallback(el=>{internalRef.current=el;if(typeof parentRef===\"function\"){parentRef(el);}else if(parentRef){parentRef.current=el;}},[parentRef]);const prevValueRef=useRef(value);// Store callback in ref to avoid listener churn\nconst onSetValueEventRef=useRef(onSetValueEvent);onSetValueEventRef.current=onSetValueEvent;useEffect(()=>{const element=internalRef.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=internalRef.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:setRefs,type:\"text\",\"data-framerforms-set-value-event\":!!onSetValueEvent,\"data-framerforms-no-prefill\":noPrefill,...rest,style:{position:\"absolute\",opacity:0,pointerEvents:\"none\",inset:0,...styleProp},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(function HiddenComponentLabel({text,subtext=\"\",children=null,...otherProps},ref){const isCanvas=RenderTarget.current()===RenderTarget.canvas;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 Staging\";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\")??null;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);});}function parseQuizOptions(attr){if(!attr)return{};try{const v=JSON.parse(attr);return{caseSensitive:Boolean(v.caseSensitive),ignoreSpaces:Boolean(v.ignoreSpaces),useRegex:Boolean(v.useRegex),matchMode:v.matchMode===\"set\"?\"set\":\"exact\",valueSeparator:typeof v.valueSeparator===\"string\"?v.valueSeparator:\", \",multiSelectAggregate:normalizeQuizMultiSelectAggregate(v.multiSelectAggregate)};}catch{return{};}}function readQuizMultiSelectAggregate(el,opts){const fromAttr=el.getAttribute(\"data-framerforms-quiz-multiselect-aggregate\");if(fromAttr){return normalizeQuizMultiSelectAggregate(fromAttr);}return normalizeQuizMultiSelectAggregate(opts.multiSelectAggregate);}function parseExpectedAnswer(raw){if(raw==null||raw===\"\")return\"\";const trimmed=raw.trim();if(trimmed.startsWith(\"[\")&&trimmed.endsWith(\"]\")){try{const v=JSON.parse(trimmed);if(Array.isArray(v)){return v.map(x=>String(x));}}catch{return raw;}}return raw;}function normalizeCompare(s,ignoreSpaces,caseSensitive){let out=s;if(ignoreSpaces)out=out.replace(/\\s/g,\"\");if(!caseSensitive)out=out.toLowerCase();return out;}function isQuizAnswerCorrect(value,expected,opts){const matchMode=opts.matchMode??\"exact\";if(matchMode===\"set\"&&Array.isArray(expected)&&expected.length>0){const sep=opts.valueSeparator??\", \";const userParts=value.split(sep).map(s=>s.trim()).filter(Boolean);const expParts=expected.map(e=>String(e).trim()).filter(Boolean);if(userParts.length!==expParts.length)return false;const normOne=s=>normalizeCompare(s,!!opts.ignoreSpaces,!!opts.caseSensitive);const sortedUser=[...userParts].map(normOne).sort();const sortedExp=[...expParts].map(normOne).sort();return sortedUser.every((x,i)=>x===sortedExp[i]);}const caseSensitive=!!opts.caseSensitive;const ignoreSpaces=!!opts.ignoreSpaces;const useRegex=!!opts.useRegex;if(Array.isArray(expected)){return expected.some(e=>{const exp=String(e);if(useRegex){try{return new RegExp(exp).test(value);}catch{return false;}}return normalizeCompare(value,ignoreSpaces,caseSensitive)===normalizeCompare(exp,ignoreSpaces,caseSensitive);});}const exp=String(expected);if(useRegex){try{return new RegExp(exp).test(value);}catch{return false;}}return normalizeCompare(value,ignoreSpaces,caseSensitive)===normalizeCompare(exp,ignoreSpaces,caseSensitive);}function readQuizQuestionPoints(el){const pCorrect=Number(el.getAttribute(\"data-framerforms-quiz-points\")??\"1\");const pWrong=Number(el.getAttribute(\"data-framerforms-quiz-wrong-points\")??\"0\");return{maxPointsIfCorrect:Number.isFinite(pCorrect)?pCorrect:1,pointsIfWrong:Number.isFinite(pWrong)?pWrong:0};}/**\n * Read one quiz field’s live answer, expected answer text, and correctness.\n * Use the field’s `name` (same as in the Layers / form). For radio groups,\n * pass the shared `name` attribute.\n */export function getQuestionData(form,inputName){const empty={userValue:\"\",correctAnswer:\"\",isCorrect:null,isQuizField:false,maxPointsIfCorrect:0,pointsIfWrong:0};if(!form||!inputName?.trim())return empty;const esc=typeof CSS!==\"undefined\"&&typeof CSS.escape===\"function\"?CSS.escape(inputName):inputName.replace(/\\\\/g,\"\\\\\\\\\").replace(/\"/g,'\\\\\"');const sel=`input[name=\"${esc}\"], select[name=\"${esc}\"], textarea[name=\"${esc}\"]`;const all=form.querySelectorAll(sel);if(all.length===0)return empty;let el=all[0];if(all.length>1&&el instanceof HTMLInputElement&&el.type===\"radio\"){let checked=null;for(const n of all){if(n instanceof HTMLInputElement&&n.type===\"radio\"&&n.checked){checked=n;break;}}el=checked??el;}const userValue=getQuizFieldValue(el);if(el.getAttribute(\"data-framerforms-quiz\")!==\"true\"){return{userValue,correctAnswer:\"\",isCorrect:null,isQuizField:false,maxPointsIfCorrect:0,pointsIfWrong:0};}if(el.getAttribute(\"data-framerforms-quiz-scoring\")===\"weighted\"){const parsed=parseOptionPointsAttr(el.getAttribute(\"data-framerforms-quiz-option-points\"));if(!parsed){return{userValue,correctAnswer:\"\",isCorrect:null,isQuizField:true,maxPointsIfCorrect:0,pointsIfWrong:0,earnedPoints:0};}const opts=parseQuizOptions(el.getAttribute(\"data-framerforms-quiz-options\"));const{earned,maxPoints}=scoreWeightedFieldValue(userValue,parsed,{...opts,multiSelectAggregate:readQuizMultiSelectAggregate(el,opts)});return{userValue,correctAnswer:\"\",isCorrect:null,isQuizField:true,maxPointsIfCorrect:maxPoints,pointsIfWrong:0,earnedPoints:earned};}const expectedRaw=el.getAttribute(\"data-framerforms-correct-answer\")??\"\";const expected=parseExpectedAnswer(expectedRaw);const opts=parseQuizOptions(el.getAttribute(\"data-framerforms-quiz-options\"));const{maxPointsIfCorrect,pointsIfWrong}=readQuizQuestionPoints(el);const correctAnswer=Array.isArray(expected)?expected.map(String).join(\", \"):String(expected??\"\");if(expected===\"\"||Array.isArray(expected)&&expected.length===0){return{userValue,correctAnswer:\"\",isCorrect:null,isQuizField:true,maxPointsIfCorrect,pointsIfWrong};}const isOk=isQuizAnswerCorrect(userValue,expected,opts);return{userValue,correctAnswer,isCorrect:isOk,isQuizField:true,maxPointsIfCorrect,pointsIfWrong};}function getQuizFieldValue(el){if(el instanceof HTMLSelectElement){return el.value??\"\";}const inp=el;if(inp.type===\"checkbox\"||inp.type===\"radio\"){return inp.checked?inp.value||\"on\":\"\";}return inp.value??\"\";}/**\n * Computes quiz score from the form DOM.\n * Correct/incorrect fields need `data-framerforms-correct-answer`.\n * Weighted fields use `data-framerforms-quiz-option-points` (no correct answer).\n * Skips inputs disabled for multi-step unvisited pages (`disabled=\"FramerForms\"`).\n */export function calculateQuizScoreFromForm(form,_scoringMode){const nodes=form.querySelectorAll('input[data-framerforms-quiz=\"true\"], select[data-framerforms-quiz=\"true\"], textarea[data-framerforms-quiz=\"true\"]');let correct=0;let total=0;let points=0;let maxPoints=0;const answers={};const countedNames=new Set;let fieldIndex=0;const fieldKey=el=>{fieldIndex+=1;return el.name?.trim()?el.name:`quiz-field-${fieldIndex}`;};nodes.forEach(el=>{if(el.getAttribute(\"disabled\")===\"FramerForms\")return;const nameKey=el.name?.trim();if(nameKey&&countedNames.has(nameKey))return;const scoringMethod=el.getAttribute(\"data-framerforms-quiz-scoring\")??\"correctIncorrect\";if(scoringMethod===\"weighted\"){const parsed=parseOptionPointsAttr(el.getAttribute(\"data-framerforms-quiz-option-points\"));if(!parsed)return;const opts=parseQuizOptions(el.getAttribute(\"data-framerforms-quiz-options\"));const value=getQuizFieldValue(el);const{earned,maxPoints:fieldMax}=scoreWeightedFieldValue(value,parsed,{...opts,multiSelectAggregate:readQuizMultiSelectAggregate(el,opts)});const key=fieldKey(el);if(nameKey)countedNames.add(nameKey);total+=1;maxPoints+=fieldMax;points+=earned;answers[key]={isCorrect:null,earnedPoints:earned};return;}if(!el.hasAttribute(\"data-framerforms-correct-answer\"))return;const expectedRaw=el.getAttribute(\"data-framerforms-correct-answer\")??\"\";const expected=parseExpectedAnswer(expectedRaw);if(expected===\"\"||Array.isArray(expected)&&expected.length===0)return;const opts=parseQuizOptions(el.getAttribute(\"data-framerforms-quiz-options\"));const pCorrect=Number(el.getAttribute(\"data-framerforms-quiz-points\")??\"1\");const pWrong=Number(el.getAttribute(\"data-framerforms-quiz-wrong-points\")??\"0\");const pc=Number.isFinite(pCorrect)?pCorrect:1;const pw=Number.isFinite(pWrong)?pWrong:0;const key=fieldKey(el);if(nameKey)countedNames.add(nameKey);total+=1;maxPoints+=pc;const value=getQuizFieldValue(el);const isOk=isQuizAnswerCorrect(value,expected,opts);if(isOk){correct+=1;points+=pc;answers[key]={isCorrect:true,earnedPoints:pc};}else{points+=pw;answers[key]={isCorrect:false,earnedPoints:pw};}});return{correct,total,points,maxPoints,answers};}// ============================================================================\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\":{\"getFormInfo\":{\"type\":\"function\",\"annotations\":{\"framerContractVersion\":\"1\"}},\"iconProp\":{\"type\":\"function\",\"annotations\":{\"framerContractVersion\":\"1\"}},\"HIDDEN_CLASS_NAME\":{\"type\":\"variable\",\"annotations\":{\"framerContractVersion\":\"1\"}},\"parsePadding\":{\"type\":\"function\",\"annotations\":{\"framerContractVersion\":\"1\"}},\"createBackground\":{\"type\":\"function\",\"annotations\":{\"framerContractVersion\":\"1\"}},\"borderProp\":{\"type\":\"function\",\"annotations\":{\"framerContractVersion\":\"1\"}},\"InsertFrameNeedHelpProps\":{\"type\":\"tsType\",\"annotations\":{\"framerContractVersion\":\"1\"}},\"ScoringMode\":{\"type\":\"tsType\",\"annotations\":{\"framerContractVersion\":\"1\"}},\"useQuizStoreApi\":{\"type\":\"function\",\"annotations\":{\"framerContractVersion\":\"1\"}},\"FormSubmittedSetter\":{\"type\":\"tsType\",\"annotations\":{\"framerContractVersion\":\"1\"}},\"useInstanceId\":{\"type\":\"variable\",\"annotations\":{\"framerContractVersion\":\"1\"}},\"calculateQuizScoreFromForm\":{\"type\":\"function\",\"annotations\":{\"framerContractVersion\":\"1\"}},\"HiddenComponentLabel\":{\"type\":\"variable\",\"annotations\":{\"framerContractVersion\":\"1\"}},\"useQuizStore\":{\"type\":\"variable\",\"annotations\":{\"framerContractVersion\":\"1\"}},\"useFormSubmittedStore\":{\"type\":\"variable\",\"annotations\":{\"framerContractVersion\":\"1\"}},\"FormInfo\":{\"type\":\"tsType\",\"annotations\":{\"framerContractVersion\":\"1\"}},\"HiddenInputProps\":{\"type\":\"tsType\",\"annotations\":{\"framerContractVersion\":\"1\"}},\"FormSubmittedStoreState\":{\"type\":\"tsType\",\"annotations\":{\"framerContractVersion\":\"1\"}},\"useFormSubmittedStoreApi\":{\"type\":\"function\",\"annotations\":{\"framerContractVersion\":\"1\"}},\"HideElement\":{\"type\":\"reactComponent\",\"name\":\"HideElement\",\"slots\":[],\"annotations\":{\"framerContractVersion\":\"1\"}},\"createEmptyQuizScore\":{\"type\":\"function\",\"annotations\":{\"framerContractVersion\":\"1\"}},\"QuizRuntimeState\":{\"type\":\"tsType\",\"annotations\":{\"framerContractVersion\":\"1\"}},\"shadowsProp\":{\"type\":\"function\",\"annotations\":{\"framerContractVersion\":\"1\"}},\"isAncestor\":{\"type\":\"function\",\"annotations\":{\"framerContractVersion\":\"1\"}},\"MultiStepFormState\":{\"type\":\"tsType\",\"annotations\":{\"framerContractVersion\":\"1\"}},\"QuizScore\":{\"type\":\"tsType\",\"annotations\":{\"framerContractVersion\":\"1\"}},\"HiddenComponentLabelProps\":{\"type\":\"tsType\",\"annotations\":{\"framerContractVersion\":\"1\"}},\"useCanvasState\":{\"type\":\"function\",\"annotations\":{\"framerContractVersion\":\"1\"}},\"Border\":{\"type\":\"reactComponent\",\"name\":\"Border\",\"slots\":[],\"annotations\":{\"framerContractVersion\":\"1\"}},\"clearFormInputs\":{\"type\":\"function\",\"annotations\":{\"framerContractVersion\":\"1\"}},\"QuizStoreState\":{\"type\":\"tsType\",\"annotations\":{\"framerContractVersion\":\"1\"}},\"HiddenInput\":{\"type\":\"variable\",\"annotations\":{\"framerContractVersion\":\"1\"}},\"Icon\":{\"type\":\"reactComponent\",\"name\":\"Icon\",\"slots\":[],\"annotations\":{\"framerContractVersion\":\"1\"}},\"getQuestionData\":{\"type\":\"function\",\"annotations\":{\"framerContractVersion\":\"1\"}},\"fillProp\":{\"type\":\"function\",\"annotations\":{\"framerContractVersion\":\"1\"}},\"MultiStepFormStore\":{\"type\":\"tsType\",\"annotations\":{\"framerContractVersion\":\"1\"}},\"useMultiStepFormStore\":{\"type\":\"variable\",\"annotations\":{\"framerContractVersion\":\"1\"}},\"insertFrameSupportPropertyControl\":{\"type\":\"variable\",\"annotations\":{\"framerContractVersion\":\"1\"}},\"QuizStoreSetter\":{\"type\":\"tsType\",\"annotations\":{\"framerContractVersion\":\"1\"}},\"PageHistory\":{\"type\":\"tsType\",\"annotations\":{\"framerContractVersion\":\"1\"}},\"LogicConfig\":{\"type\":\"tsType\",\"annotations\":{\"framerContractVersion\":\"1\"}},\"HiddenInputOwnProps\":{\"type\":\"tsType\",\"annotations\":{\"framerContractVersion\":\"1\"}},\"__FramerMetadata__\":{\"type\":\"variable\"}}}\n//# sourceMappingURL=./FramerFormsShared.map","import * as _react2 from './npm:react@17!cjs';\n\nvar _react = \"default\" in _react2 ? _react2.default : _react2;\n\nvar exports = {};\nObject.defineProperty(exports, \"__esModule\", {\n  value: true\n});\nvar React = _react;\n/*! *****************************************************************************\r\nCopyright (c) Microsoft Corporation. All rights reserved.\r\nLicensed under the Apache License, Version 2.0 (the \"License\"); you may not use\r\nthis file except in compliance with the License. You may obtain a copy of the\r\nLicense at http://www.apache.org/licenses/LICENSE-2.0\r\n\r\nTHIS CODE IS PROVIDED ON AN *AS IS* BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY\r\nKIND, EITHER EXPRESS OR IMPLIED, INCLUDING WITHOUT LIMITATION ANY IMPLIED\r\nWARRANTIES OR CONDITIONS OF TITLE, FITNESS FOR A PARTICULAR PURPOSE,\r\nMERCHANTABLITY OR NON-INFRINGEMENT.\r\n\r\nSee the Apache Version 2.0 License for specific language governing permissions\r\nand limitations under the License.\r\n***************************************************************************** */\n\n/* global Reflect, Promise */\n\nvar extendStatics = function (d, b) {\n  extendStatics = Object.setPrototypeOf || {\n    __proto__: []\n  } instanceof Array && function (d, b) {\n    d.__proto__ = b;\n  } || function (d, b) {\n    for (var p in b) if (b.hasOwnProperty(p)) d[p] = b[p];\n  };\n\n  return extendStatics(d, b);\n};\n\nfunction __extends(d, b) {\n  extendStatics(d, b);\n\n  function __() {\n    this.constructor = d;\n  }\n\n  d.prototype = b === null ? Object.create(b) : (__.prototype = b.prototype, new __());\n}\n\nvar __assign = function () {\n  __assign = Object.assign || function __assign(t) {\n    for (var s, i = 1, n = arguments.length; i < n; i++) {\n      s = arguments[i];\n\n      for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p)) t[p] = s[p];\n    }\n\n    return t;\n  };\n\n  return __assign.apply(this, arguments);\n};\n\nfunction styleInject(css, ref) {\n  if (ref === void 0) ref = {};\n  var insertAt = ref.insertAt;\n\n  if (!css || typeof document === \"undefined\") {\n    return;\n  }\n\n  var head = document.head || document.getElementsByTagName(\"head\")[0];\n  var style = document.createElement(\"style\");\n  style.type = \"text/css\";\n\n  if (insertAt === \"top\") {\n    if (head.firstChild) {\n      head.insertBefore(style, head.firstChild);\n    } else {\n      head.appendChild(style);\n    }\n  } else {\n    head.appendChild(style);\n  }\n\n  if (style.styleSheet) {\n    style.styleSheet.cssText = css;\n  } else {\n    style.appendChild(document.createTextNode(css));\n  }\n}\n\nvar css = \"/*\\n  code is extracted from Calendly's embed stylesheet: https://assets.calendly.com/assets/external/widget.css\\n*/\\n\\n.calendly-inline-widget,\\n.calendly-inline-widget *,\\n.calendly-badge-widget,\\n.calendly-badge-widget *,\\n.calendly-overlay,\\n.calendly-overlay * {\\n    font-size:16px;\\n    line-height:1.2em\\n}\\n\\n.calendly-inline-widget iframe,\\n.calendly-badge-widget iframe,\\n.calendly-overlay iframe {\\n    display:inline;\\n    width:100%;\\n    height:100%\\n}\\n\\n.calendly-popup-content {\\n    position:relative\\n}\\n\\n.calendly-popup-content.calendly-mobile {\\n    -webkit-overflow-scrolling:touch;\\n    overflow-y:auto\\n}\\n\\n.calendly-overlay {\\n    position:fixed;\\n    top:0;\\n    left:0;\\n    right:0;\\n    bottom:0;\\n    overflow:hidden;\\n    z-index:9999;\\n    background-color:#a5a5a5;\\n    background-color:rgba(31,31,31,0.4)\\n}\\n\\n.calendly-overlay .calendly-close-overlay {\\n    position:absolute;\\n    top:0;\\n    left:0;\\n    right:0;\\n    bottom:0\\n}\\n\\n.calendly-overlay .calendly-popup {\\n    box-sizing:border-box;\\n    position:absolute;\\n    top:50%;\\n    left:50%;\\n    -webkit-transform:translateY(-50%) translateX(-50%);\\n    transform:translateY(-50%) translateX(-50%);\\n    width:80%;\\n    min-width:900px;\\n    max-width:1000px;\\n    height:90%;\\n    max-height:680px\\n}\\n\\n@media (max-width: 975px) {\\n    .calendly-overlay .calendly-popup {\\n        position:fixed;\\n        top:50px;\\n        left:0;\\n        right:0;\\n        bottom:0;\\n        -webkit-transform:none;\\n        transform:none;\\n        width:100%;\\n        height:auto;\\n        min-width:0;\\n        max-height:none\\n    }\\n}\\n\\n.calendly-overlay .calendly-popup .calendly-popup-content {\\n    height:100%;\\n}\\n\\n.calendly-overlay .calendly-popup-close {\\n    position:absolute;\\n    top:25px;\\n    right:25px;\\n    color:#fff;\\n    width:19px;\\n    height:19px;\\n    cursor:pointer;\\n    background:url(https://assets.calendly.com/assets/external/close-icon.svg) no-repeat;\\n    background-size:contain\\n}\\n\\n@media (max-width: 975px) {\\n    .calendly-overlay .calendly-popup-close {\\n        top:15px;\\n        right:15px\\n    }\\n}\\n\\n.calendly-badge-widget {\\n    position:fixed;\\n    right:20px;\\n    bottom:15px;\\n    z-index:9998\\n}\\n\\n.calendly-badge-widget .calendly-badge-content {\\n    display:table-cell;\\n    width:auto;\\n    height:45px;\\n    padding:0 30px;\\n    border-radius:25px;\\n    box-shadow:rgba(0,0,0,0.25) 0 2px 5px;\\n    font-family:sans-serif;\\n    text-align:center;\\n    vertical-align:middle;\\n    font-weight:bold;\\n    font-size:14px;\\n    color:#fff;\\n    cursor:pointer\\n}\\n\\n.calendly-badge-widget .calendly-badge-content.calendly-white {\\n    color:#666a73\\n}\\n\\n.calendly-badge-widget .calendly-badge-content span {\\n    display:block;\\n    font-size:12px\\n}\\n\\n.calendly-spinner {\\n    position:absolute;\\n    top:50%;\\n    left:0;\\n    right:0;\\n    -webkit-transform:translateY(-50%);\\n    transform:translateY(-50%);\\n    text-align:center;\\n    z-index:-1\\n}\\n\\n.calendly-spinner>div {\\n    display:inline-block;\\n    width:18px;\\n    height:18px;\\n    background-color:#e1e1e1;\\n    border-radius:50%;\\n    vertical-align:middle;\\n    -webkit-animation:calendly-bouncedelay 1.4s infinite ease-in-out;\\n    animation:calendly-bouncedelay 1.4s infinite ease-in-out;\\n    -webkit-animation-fill-mode:both;\\n    animation-fill-mode:both\\n}\\n\\n.calendly-spinner .calendly-bounce1 {\\n    -webkit-animation-delay:-0.32s;\\n    animation-delay:-0.32s\\n}\\n\\n.calendly-spinner .calendly-bounce2 {\\n    -webkit-animation-delay:-0.16s;\\n    animation-delay:-0.16s\\n}\\n\\n@-webkit-keyframes calendly-bouncedelay {\\n    0%,80%,100% {\\n        -webkit-transform:scale(0);\\n        transform:scale(0)\\n    } \\n    \\n    40%{\\n        -webkit-transform:scale(1);\\n        transform:scale(1)\\n    }\\n}\\n\\n@keyframes calendly-bouncedelay{ \\n    0%,80%,100% {\\n        -webkit-transform:scale(0);\\n        transform:scale(0)\\n    }\\n    \\n    40% {\\n        -webkit-transform:scale(1);\\n        transform:scale(1)\\n    }\\n}\";\nstyleInject(css); // @ts-nocheck\n\n/* eslint-disable  @typescript-eslint/no-unused-expressions */\n\n/* eslint-disable  no-restricted-globals */\n\nvar initializeCalendly = function () {\n  return (\n    /*\n    code is extracted from Calendly's embed script: https://assets.calendly.com/assets/external/widget.js\n    */\n    function () {\n      window.Calendly = {}, window.Calendly._util = {};\n    }.call(window), window.Calendly._util.domReady = function (t) {\n      var e = !1,\n          n = function () {\n        document.addEventListener ? (document.removeEventListener(\"DOMContentLoaded\", o), window.removeEventListener(\"load\", o)) : (document.detachEvent(\"onreadystatechange\", o), window.detachEvent(\"onload\", o));\n      },\n          o = function () {\n        e || !document.addEventListener && \"load\" !== event.type && \"complete\" !== document.readyState || (e = !0, n(), t());\n      };\n\n      if (\"complete\" === document.readyState) t();else if (document.addEventListener) document.addEventListener(\"DOMContentLoaded\", o), window.addEventListener(\"load\", o);else {\n        document.attachEvent(\"onreadystatechange\", o), window.attachEvent(\"onload\", o);\n        var i = !1;\n\n        try {\n          i = null == window.frameElement && document.documentElement;\n        } catch (r) {}\n\n        i && i.doScroll && !function l() {\n          if (!e) {\n            try {\n              i.doScroll(\"left\");\n            } catch (o) {\n              return setTimeout(l, 50);\n            }\n\n            e = !0, n(), t();\n          }\n        }();\n      }\n    }, window.Calendly._util.assign = function (t) {\n      if (null == t) throw new TypeError(\"Cannot convert undefined or null to object\");\n\n      for (var e = Object(t), n = 1; n < arguments.length; n++) {\n        var o = arguments[n];\n        if (null != o) for (var i in o) Object.prototype.hasOwnProperty.call(o, i) && (e[i] = o[i]);\n      }\n\n      return e;\n    }, function () {\n      window.Calendly._url = {}, window.Calendly._url.extractQueryStringParams = function (t) {\n        var e, n, o, i, r, l, a, d, u, s;\n\n        for (a = document.createElement(\"a\"), a.href = t, r = a.search.substr(1), l = {}, d = r.split(\"&\"), e = 0, o = d.length; o > e; e++) i = d[e], u = i.split(\"=\"), n = u[0], s = u[1], void 0 !== s && (l[n.toLowerCase()] = decodeURIComponent(s));\n\n        return l;\n      }, window.Calendly._url.stripQuery = function (t) {\n        return t.split(\"?\")[0];\n      };\n    }.call(window), function () {\n      window.Calendly._util.snakeCaseKeys = function (t) {\n        var e, n, o;\n        o = {};\n\n        for (n in t) e = n.split(/(?=[A-Z])/).join(\"_\").toLowerCase(), o[e] = t[n];\n\n        return o;\n      }, window.Calendly._util.pick = function (t, e) {\n        var n, o, i, r;\n\n        if (t) {\n          for (r = {}, n = 0, i = e.length; i > n; n++) o = e[n], t[o] && (r[o] = t[o]);\n\n          return r;\n        }\n      };\n    }.call(window), function (t, e) {\n      var n = {\n        exports: {}\n      };\n      n.exports = exports, e(n.exports), t.bodyScrollLock = n.exports;\n    }(window, function (t) {\n      function e(t) {\n        if (Array.isArray(t)) {\n          for (var e = 0, n = Array(t.length); e < t.length; e++) n[e] = t[e];\n\n          return n;\n        }\n\n        return Array.from(t);\n      }\n\n      Object.defineProperty(t, \"__esModule\", {\n        value: !0\n      });\n      var n = !1;\n\n      if (\"undefined\" != typeof window) {\n        var o = {\n          get passive() {\n            n = !0;\n          }\n\n        };\n        window.addEventListener(\"testPassive\", null, o), window.removeEventListener(\"testPassive\", null, o);\n      }\n\n      var i = \"undefined\" != typeof window && window.navigator && window.navigator.platform && /iP(ad|hone|od)/.test(window.navigator.platform),\n          r = [],\n          l = !1,\n          a = -1,\n          d = void 0,\n          u = void 0,\n          s = function (t) {\n        return r.some(function (e) {\n          return !(!e.options.allowTouchMove || !e.options.allowTouchMove(t));\n        });\n      },\n          c = function (t) {\n        var e = t || window.event;\n        return s(e.target) ? !0 : e.touches.length > 1 ? !0 : (e.preventDefault && e.preventDefault(), !1);\n      },\n          p = function (t) {\n        setTimeout(function () {\n          if (void 0 === u) {\n            var e = !!t && t.reserveScrollBarGap === !0,\n                n = window.innerWidth - document.documentElement.clientWidth;\n            e && n > 0 && (u = document.body.style.paddingRight, document.body.style.paddingRight = n + \"px\");\n          }\n\n          void 0 === d && (d = document.body.style.overflow, document.body.style.overflow = \"hidden\");\n        });\n      },\n          h = function () {\n        setTimeout(function () {\n          void 0 !== u && (document.body.style.paddingRight = u, u = void 0), void 0 !== d && (document.body.style.overflow = d, d = void 0);\n        });\n      },\n          y = function (t) {\n        return t ? t.scrollHeight - t.scrollTop <= t.clientHeight : !1;\n      },\n          m = function (t, e) {\n        var n = t.targetTouches[0].clientY - a;\n        return s(t.target) ? !1 : e && 0 === e.scrollTop && n > 0 ? c(t) : y(e) && 0 > n ? c(t) : (t.stopPropagation(), !0);\n      };\n\n      t.disableBodyScroll = function (t, o) {\n        if (i) {\n          if (!t) return void console.error(\"disableBodyScroll unsuccessful - targetElement must be provided when calling disableBodyScroll on IOS devices.\");\n\n          if (t && !r.some(function (e) {\n            return e.targetElement === t;\n          })) {\n            var d = {\n              targetElement: t,\n              options: o || {}\n            };\n            r = [].concat(e(r), [d]), t.ontouchstart = function (t) {\n              1 === t.targetTouches.length && (a = t.targetTouches[0].clientY);\n            }, t.ontouchmove = function (e) {\n              1 === e.targetTouches.length && m(e, t);\n            }, l || (document.addEventListener(\"touchmove\", c, n ? {\n              passive: !1\n            } : void 0), l = !0);\n          }\n        } else {\n          p(o);\n          var u = {\n            targetElement: t,\n            options: o || {}\n          };\n          r = [].concat(e(r), [u]);\n        }\n      }, t.clearAllBodyScrollLocks = function () {\n        i ? (r.forEach(function (t) {\n          t.targetElement.ontouchstart = null, t.targetElement.ontouchmove = null;\n        }), l && (document.removeEventListener(\"touchmove\", c, n ? {\n          passive: !1\n        } : void 0), l = !1), r = [], a = -1) : (h(), r = []);\n      }, t.enableBodyScroll = function (t) {\n        if (i) {\n          if (!t) return void console.error(\"enableBodyScroll unsuccessful - targetElement must be provided when calling enableBodyScroll on IOS devices.\");\n          t.ontouchstart = null, t.ontouchmove = null, r = r.filter(function (e) {\n            return e.targetElement !== t;\n          }), l && 0 === r.length && (document.removeEventListener(\"touchmove\", c, n ? {\n            passive: !1\n          } : void 0), l = !1);\n        } else r = r.filter(function (e) {\n          return e.targetElement !== t;\n        }), r.length || h();\n      };\n    }), function () {\n      var t, e, n, o, i;\n      window.Calendly._autoLoadInlineWidgets = function () {\n        return window.Calendly._util.domReady(function () {\n          return e();\n        });\n      }, window.Calendly.initBadgeWidget = function (e) {\n        return window.Calendly._util.domReady(function () {\n          return t(e);\n        });\n      }, window.Calendly.destroyBadgeWidget = function () {\n        return window.Calendly.badgeWidget ? (window.Calendly.badgeWidget.destroy(), delete window.Calendly.badgeWidget) : void 0;\n      }, window.Calendly.initPopupWidget = function (t) {\n        return window.Calendly._util.domReady(function () {\n          return window.Calendly.showPopupWidget(t.url, \"PopupButton\", t);\n        });\n      }, window.Calendly.initInlineWidget = function (t) {\n        return t.url ? (t.parentElement || (t.parentElement = o()), window.Calendly._util.domReady(function () {\n          return t.embedType = \"Inline\", new window.Calendly.Iframe(t);\n        })) : void 0;\n      }, window.Calendly.showPopupWidget = function (t, e, n) {\n        var o;\n        return null == e && (e = \"PopupButton\"), null == n && (n = {}), window.Calendly.closePopupWidget(), o = function () {\n          return delete window.Calendly.popupWidget;\n        }, window.Calendly.popupWidget = new window.Calendly.PopupWidget(t, o, e, n), window.Calendly.popupWidget.show();\n      }, window.Calendly.closePopupWidget = function () {\n        return window.Calendly.popupWidget ? window.Calendly.popupWidget.close() : void 0;\n      }, o = function () {\n        var t;\n        return t = document.scripts[document.scripts.length - 1], t.parentNode;\n      }, e = function () {\n        var t, e, n, o, r;\n\n        for (e = document.querySelectorAll(\".calendly-inline-widget\"), r = [], n = 0, o = e.length; o > n; n++) t = e[n], i(t) ? r.push(void 0) : (t.setAttribute(\"data-processed\", !0), r.push(new window.Calendly.Iframe({\n          parentElement: t,\n          inlineStyles: !0,\n          embedType: \"Inline\"\n        })));\n\n        return r;\n      }, i = function (t) {\n        return t.getAttribute(\"data-processed\") || \"false\" === t.getAttribute(\"data-auto-load\");\n      }, t = function (t) {\n        var e, o, i;\n        return window.Calendly.destroyBadgeWidget(), e = n(t), i = function () {\n          return window.Calendly.showPopupWidget(t.url, \"PopupWidget\", t);\n        }, o = window.Calendly._util.assign({\n          onClick: i\n        }, e), window.Calendly.badgeWidget = new window.Calendly.BadgeWidget(o);\n      }, n = function (t) {\n        var e, n;\n        return e = [\"color\", \"textColor\", \"text\", \"branding\"], n = {}, e.forEach(function (e) {\n          return n[e] = t[e], delete t[e];\n        }), n;\n      };\n    }.call(window), function () {\n      window.Calendly.Iframe = function () {\n        function t(t) {\n          this.options = t, this.parseOptions(), this.build(), this.inject();\n        }\n\n        return t.prototype.isMobile = /Android|webOS|iPhone|iPad|iPod|BlackBerry|IEMobile|Opera Mini/i.test(navigator.userAgent), t.prototype.parseOptions = function () {\n          var t;\n          if (t = {\n            inlineStyles: !1\n          }, this.options = window.Calendly._util.assign({}, t, this.options), this.parent = this.options.parentElement, !this.parent) throw \"Calendly: Parent element not set\";\n          if (this.parent.jquery && (this.parent = this.parent[0]), this.inlineStyles = this.options.inlineStyles, this.embedType = this.options.embedType, this.url = (this.options.url || this.getUrlFromParent()).split(\"#\")[0], !this.url) throw \"Calendly: Widget URL not set\";\n        }, t.prototype.build = function () {\n          return this.node = document.createElement(\"iframe\"), this.node.src = this.getSource(), this.node.width = \"100%\", this.node.height = \"100%\", this.node.frameBorder = \"0\", this.node.onload = function () {\n            var calendlySpinnerElement = document.querySelector(\".calendly-spinner\");\n\n            if (calendlySpinnerElement) {\n              calendlySpinnerElement.style.visibility = \"hidden\";\n            }\n          };\n        }, t.prototype.inject = function () {\n          return this.format(), this.parent.appendChild(this.buildSpinner()), this.parent.appendChild(this.node);\n        }, t.prototype.getSource = function () {\n          var t;\n          return t = window.Calendly._url.stripQuery(this.url) + \"?\" + this.getParams(), this.filterConsentParam(t);\n        }, t.prototype.getUrlFromParent = function () {\n          return this.parent.getAttribute(\"data-url\");\n        }, t.prototype.getParams = function () {\n          var t, e, n, o;\n          e = {\n            embed_domain: this.getDomain(),\n            embed_type: this.embedType\n          }, e = window.Calendly._util.assign(e, this.getUtmParamsFromHost(), this.getParamsFromUrl(), this.getParamsFromOptions()), n = [];\n\n          for (t in e) o = e[t], n.push(t + \"=\" + encodeURIComponent(o));\n\n          return n.join(\"&\");\n        }, t.prototype.getUtmParamsFromHost = function () {\n          var t, e;\n          return t = [\"utm_campaign\", \"utm_source\", \"utm_medium\", \"utm_content\", \"utm_term\"], e = window.Calendly._url.extractQueryStringParams(window.location.href), window.Calendly._util.pick(e, t);\n        }, t.prototype.getParamsFromUrl = function () {\n          return window.Calendly._url.extractQueryStringParams(this.url);\n        }, t.prototype.getParamsFromOptions = function () {\n          return window.Calendly._util.assign({}, this.getPrefillParams(), this.getUtmParams());\n        }, t.prototype.getUtmParams = function () {\n          var t;\n          return this.options.utm ? (t = [\"utmCampaign\", \"utmSource\", \"utmMedium\", \"utmContent\", \"utmTerm\"], window.Calendly._util.snakeCaseKeys(window.Calendly._util.pick(this.options.utm, t))) : null;\n        }, t.prototype.getPrefillParams = function () {\n          var t, e, n, o, i;\n          if (!this.options.prefill) return null;\n\n          if (e = [\"name\", \"firstName\", \"lastName\", \"email\", \"location\"], n = window.Calendly._util.snakeCaseKeys(window.Calendly._util.pick(this.options.prefill, e)), this.options.prefill.customAnswers) {\n            o = this.options.prefill.customAnswers;\n\n            for (t in o) i = o[t], t.match(/^a\\d{1,2}$/) && (n[t] = i);\n          }\n\n          if (this.options.prefill.guests && Array.isArray(this.options.prefill.guests) && this.options.prefill.guests.length > 0) {\n            n[\"guests\"] = this.options.prefill.guests.join(\",\");\n          }\n\n          if (this.options.prefill.date && this.options.prefill.date instanceof Date) {\n            var month = this.options.prefill.date.getMonth() + 1;\n            var day = this.options.prefill.date.getDate();\n            var year = this.options.prefill.date.getFullYear();\n            n[\"date\"] = [year, month < 10 ? \"0\" + month : month, day < 10 ? \"0\" + day : day].join(\"-\");\n          }\n\n          return n;\n        }, t.prototype.getDomain = function () {\n          return document.location.host;\n        }, t.prototype.filterConsentParam = function (t) {\n          return t.replace(/consent_accept=1&?/g, \"\");\n        }, t.prototype.format = function () {\n          return this.isMobile ? this.formatMobile() : this.formatDesktop();\n        }, t.prototype.formatDesktop = function () {\n          return this.inlineStyles ? this.parent.setAttribute(\"style\", \"position: relative;\" + this.parent.getAttribute(\"style\")) : void 0;\n        }, t.prototype.formatMobile = function () {\n          return this.inlineStyles ? this.parent.setAttribute(\"style\", \"position: relative;overflow-y:auto;-webkit-overflow-scrolling:touch;\" + this.parent.getAttribute(\"style\")) : this.parent.className += \" calendly-mobile\";\n        }, t.prototype.buildSpinner = function () {\n          var t;\n          return t = document.createElement(\"div\"), t.className = \"calendly-spinner\", t.appendChild(this.buildBounce(1)), t.appendChild(this.buildBounce(2)), t.appendChild(this.buildBounce(3)), t;\n        }, t.prototype.buildBounce = function (t) {\n          var e;\n          return e = document.createElement(\"div\"), e.className = \"calendly-bounce\" + t, e;\n        }, t;\n      }();\n    }.call(window), function () {\n      var t = function (t, e) {\n        return function () {\n          return t.apply(e, arguments);\n        };\n      };\n\n      window.Calendly.PopupWidget = function () {\n        function e(e, n, o, i) {\n          this.url = e, this.onClose = n, this.embedType = o, this.options = null != i ? i : {}, this.close = t(this.close, this);\n        }\n\n        return e.prototype.show = function () {\n          return this.buildOverlay(), this.insertOverlay(), this.lockPageScroll();\n        }, e.prototype.close = function () {\n          return this.unlockPageScroll(), this.destroyOverlay(), this.onClose();\n        }, e.prototype.buildOverlay = function () {\n          return this.overlay = document.createElement(\"div\"), this.overlay.className = \"calendly-overlay\", this.overlay.appendChild(this.buildCloseOverlay()), this.overlay.appendChild(this.buildPopup()), this.overlay.appendChild(this.buildCloseButton());\n        }, e.prototype.insertOverlay = function () {\n          return document.body.appendChild(this.overlay);\n        }, e.prototype.buildCloseOverlay = function () {\n          var t;\n          return t = document.createElement(\"div\"), t.className = \"calendly-close-overlay\", t.onclick = this.close, t;\n        }, e.prototype.buildPopup = function () {\n          var t;\n          return t = document.createElement(\"div\"), t.className = \"calendly-popup\", t.appendChild(this.buildPopupContent()), t;\n        }, e.prototype.buildPopupContent = function () {\n          var t;\n          return t = document.createElement(\"div\"), t.className = \"calendly-popup-content\", t.setAttribute(\"data-url\", this.url), this.options.parentElement = t, this.options.embedType = this.embedType, new window.Calendly.Iframe(this.options), t;\n        }, e.prototype.buildCloseButton = function () {\n          var t;\n          return t = document.createElement(\"div\"), t.className = \"calendly-popup-close\", t.onclick = this.close, t;\n        }, e.prototype.destroyOverlay = function () {\n          return this.overlay.parentNode.removeChild(this.overlay);\n        }, e.prototype.lockPageScroll = function () {\n          return bodyScrollLock.disableBodyScroll(this.overlay), document.addEventListener(\"touchmove\", this.handleLockedTouchmove, {\n            passive: !1\n          });\n        }, e.prototype.unlockPageScroll = function () {\n          return bodyScrollLock.enableBodyScroll(this.overlay), document.removeEventListener(\"touchmove\", this.handleLockedTouchmove, {\n            passive: !1\n          });\n        }, e.prototype.handleLockedTouchmove = function (t) {\n          return t.preventDefault();\n        }, e;\n      }();\n    }.call(window), function () {\n      window.Calendly.BadgeWidget = function () {\n        function t(t) {\n          this.options = t, this.buildWidget(), this.insertWidget();\n        }\n\n        return t.prototype.destroy = function () {\n          return this.widget.parentNode.removeChild(this.widget);\n        }, t.prototype.buildWidget = function () {\n          return this.widget = document.createElement(\"div\"), this.widget.className = \"calendly-badge-widget\", this.widget.appendChild(this.buildContent());\n        }, t.prototype.insertWidget = function () {\n          return document.body.insertBefore(this.widget, document.body.firstChild);\n        }, t.prototype.buildContent = function () {\n          var t;\n          return t = document.createElement(\"div\"), t.className = \"calendly-badge-content\", \"#ffffff\" === this.options.color && (t.className += \" calendly-white\"), t.onclick = this.options.onClick, t.innerHTML = this.options.text, t.style.background = this.options.color, t.style.color = this.options.textColor, this.options.branding && t.appendChild(this.buildBranding()), t;\n        }, t.prototype.buildBranding = function () {\n          var t;\n          return t = document.createElement(\"span\"), t.innerHTML = \"powered by Calendly\", t;\n        }, t;\n      }();\n    }.call(window), window.Calendly._autoLoadInlineWidgets()\n  );\n};\n\nvar CalendlyEvent;\n\n(function (CalendlyEvent) {\n  CalendlyEvent[\"PROFILE_PAGE_VIEWED\"] = \"calendly.profile_page_viewed\";\n  CalendlyEvent[\"EVENT_TYPE_VIEWED\"] = \"calendly.event_type_viewed\";\n  CalendlyEvent[\"DATE_AND_TIME_SELECTED\"] = \"calendly.date_and_time_selected\";\n  CalendlyEvent[\"EVENT_SCHEDULED\"] = \"calendly.event_scheduled\";\n})(CalendlyEvent || (CalendlyEvent = {}));\n\nvar loadScript = function () {\n  if (!window.Calendly) {\n    initializeCalendly();\n  }\n};\n\nvar withPageSettings = function (url, pageSettings) {\n  if (!pageSettings) return url;\n  var backgroundColor = pageSettings.backgroundColor,\n      hideEventTypeDetails = pageSettings.hideEventTypeDetails,\n      hideLandingPageDetails = pageSettings.hideLandingPageDetails,\n      primaryColor = pageSettings.primaryColor,\n      textColor = pageSettings.textColor,\n      hideGdprBanner = pageSettings.hideGdprBanner;\n  var queryStringIndex = url.indexOf(\"?\");\n  var hasQueryString = queryStringIndex > -1;\n  var queryString = url.slice(queryStringIndex + 1);\n  var baseUrl = hasQueryString ? url.slice(0, queryStringIndex) : url;\n  var updatedQueryString = [queryString, backgroundColor ? \"background_color=\" + backgroundColor : null, hideEventTypeDetails ? \"hide_event_type_details=1\" : null, hideLandingPageDetails ? \"hide_landing_page_details=1\" : null, primaryColor ? \"primary_color=\" + primaryColor : null, textColor ? \"text_color=\" + textColor : null, hideGdprBanner ? \"hide_gdpr_banner=1\" : null].filter(function (item) {\n    return item !== null;\n  }).join(\"&\");\n  return baseUrl + \"?\" + updatedQueryString;\n};\n\nvar openPopupWidget = function (options) {\n  loadScript();\n  var widgetOptions = {\n    url: withPageSettings(options.url, options.pageSettings),\n    prefill: options.prefill,\n    utm: options.utm\n  };\n  window.Calendly.initPopupWidget(widgetOptions);\n};\n\nvar closePopupWidget = function () {\n  loadScript();\n  window.Calendly.closePopupWidget();\n};\n\nvar defaultStyles = {\n  minWidth: \"320px\",\n  height: \"630px\"\n};\n\nvar InlineWidget =\n/** @class */\nfunction (_super) {\n  __extends(InlineWidget, _super);\n\n  function InlineWidget(props) {\n    var _this = _super.call(this, props) || this;\n\n    _this.widgetParentContainerRef = React.createRef();\n    _this.destroyInlineWidget = _this.destroyInlineWidget.bind(_this);\n    _this.getChildNodeCount = _this.getChildNodeCount.bind(_this);\n    _this.shouldWidgetUpdate = _this.shouldWidgetUpdate.bind(_this);\n    _this.initWidget = _this.initWidget.bind(_this);\n    return _this;\n  }\n\n  InlineWidget.prototype.componentDidUpdate = function (prevProps) {\n    var _this = this;\n\n    var shouldUpdate = this.shouldWidgetUpdate(prevProps);\n\n    if (shouldUpdate) {\n      /*\n       * If the Calendly Inline Widget (.calendly-spinner and iframe) has not\n       * yet been added to the DOM then we need to wait for the widget to be inserted\n       * prior to updating the component.\n       *\n       * Fixes https://github.com/tcampb/react-calendly/issues/25\n       */\n      if (!this.getChildNodeCount()) {\n        this.calendlyWidgetListener(\"inserted\", function () {\n          _this.calendlyWidgetListener(\"removed\", _this.initWidget);\n\n          _this.destroyInlineWidget();\n        });\n      } else {\n        this.destroyInlineWidget();\n        this.initWidget();\n      }\n    }\n  };\n\n  InlineWidget.prototype.componentDidMount = function () {\n    loadScript();\n    window.Calendly.initInlineWidget({\n      url: withPageSettings(this.props.url, this.props.pageSettings),\n      parentElement: this.widgetParentContainerRef.current,\n      prefill: this.props.prefill,\n      utm: this.props.utm\n    });\n  };\n\n  InlineWidget.prototype.render = function () {\n    return React.createElement(\"div\", {\n      className: \"calendly-inline-widget\",\n      style: this.props.styles || defaultStyles,\n      ref: this.widgetParentContainerRef,\n      \"data-auto-load\": \"false\"\n    });\n  };\n\n  InlineWidget.prototype.destroyInlineWidget = function () {\n    this.widgetParentContainerRef.current.innerHTML = \"\";\n  };\n\n  InlineWidget.prototype.getChildNodeCount = function () {\n    return this.widgetParentContainerRef.current.childNodes.length;\n  };\n\n  InlineWidget.prototype.initWidget = function () {\n    window.Calendly.initInlineWidget({\n      url: withPageSettings(this.props.url, this.props.pageSettings),\n      parentElement: this.widgetParentContainerRef.current,\n      prefill: this.props.prefill,\n      utm: this.props.utm\n    });\n  };\n\n  InlineWidget.prototype.calendlyWidgetListener = function (event, callback) {\n    var isInsertedEvent = event === \"inserted\";\n    var isRemovedEvent = event === \"removed\";\n    return new MutationObserver(function (mutationsList, observer) {\n      observer.disconnect();\n\n      if (isInsertedEvent) {\n        var nodesAdded = mutationsList.some(function (record) {\n          return !!record.addedNodes.length;\n        });\n        if (nodesAdded) callback();\n      }\n\n      if (isRemovedEvent) {\n        var nodesRemoved = mutationsList.some(function (record) {\n          return !!record.removedNodes.length;\n        });\n        if (nodesRemoved) callback();\n      }\n    }).observe(this.widgetParentContainerRef.current, {\n      childList: true\n    });\n  };\n\n  InlineWidget.prototype.shouldWidgetUpdate = function (prevProps) {\n    var _this = this;\n\n    return prevProps.url !== this.props.url || [\"pageSettings\", \"prefill\", \"utm\"].some(function (prop) {\n      return JSON.stringify(prevProps[prop]) !== JSON.stringify(_this.props[prop]);\n    });\n  };\n\n  return InlineWidget;\n}(React.Component);\n\nvar initWidget = function (options) {\n  window.Calendly.initPopupWidget(options);\n};\n\nvar createClickHandler = function (widgetOptions) {\n  return function (e) {\n    e.preventDefault();\n    return initWidget(widgetOptions);\n  };\n};\n\nvar PopupButton =\n/** @class */\nfunction (_super) {\n  __extends(PopupButton, _super);\n\n  function PopupButton() {\n    return _super !== null && _super.apply(this, arguments) || this;\n  }\n\n  PopupButton.prototype.componentWillUnmount = function () {\n    window.Calendly.closePopupWidget();\n  };\n\n  PopupButton.prototype.componentDidMount = function () {\n    loadScript();\n  };\n\n  PopupButton.prototype.render = function () {\n    var widgetOptions = {\n      url: withPageSettings(this.props.url, this.props.pageSettings),\n      prefill: this.props.prefill,\n      utm: this.props.utm\n    };\n    return React.createElement(\"button\", {\n      onClick: createClickHandler(widgetOptions),\n      style: this.props.styles || {},\n      className: this.props.className || \"\"\n    }, this.props.text);\n  };\n\n  return PopupButton;\n}(React.Component);\n\nvar defaultProps = {\n  branding: false,\n  color: \"#00a2ff\",\n  textColor: \"#ffffff\",\n  text: \"Schedule time with me\"\n};\n\nvar PopupWidget =\n/** @class */\nfunction (_super) {\n  __extends(PopupWidget, _super);\n\n  function PopupWidget() {\n    return _super !== null && _super.apply(this, arguments) || this;\n  }\n\n  PopupWidget.prototype.componentDidUpdate = function () {\n    var options = __assign(__assign(__assign({}, defaultProps), this.props), {\n      url: withPageSettings(this.props.url, this.props.pageSettings)\n    });\n\n    window.Calendly.initBadgeWidget(options);\n  };\n\n  PopupWidget.prototype.componentDidMount = function () {\n    loadScript();\n\n    var options = __assign(__assign(__assign({}, defaultProps), this.props), {\n      url: withPageSettings(this.props.url, this.props.pageSettings)\n    });\n\n    window.Calendly.initBadgeWidget(options);\n  };\n\n  PopupWidget.prototype.componentWillUnmount = function () {\n    window.Calendly.destroyBadgeWidget();\n    window.Calendly.closePopupWidget();\n  };\n\n  PopupWidget.prototype.render = function () {\n    return React.createElement(React.Fragment, null);\n  };\n\n  return PopupWidget;\n}(React.Component);\n\nvar CalendlyEventListener =\n/** @class */\nfunction (_super) {\n  __extends(CalendlyEventListener, _super);\n\n  function CalendlyEventListener(props) {\n    var _this = _super.call(this, props) || this;\n\n    _this.handleEvent = _this.handleEvent.bind(_this);\n    return _this;\n  }\n\n  CalendlyEventListener.prototype.componentDidMount = function () {\n    window.addEventListener(\"message\", this.handleEvent);\n  };\n\n  CalendlyEventListener.prototype.componentWillUnmount = function () {\n    window.removeEventListener(\"message\", this.handleEvent);\n  };\n\n  CalendlyEventListener.prototype.handleEvent = function (e) {\n    var eventName = e.data.event;\n\n    if (eventName === CalendlyEvent.DATE_AND_TIME_SELECTED) {\n      this.props.onDateAndTimeSelected && this.props.onDateAndTimeSelected(e);\n    } else if (eventName === CalendlyEvent.EVENT_SCHEDULED) {\n      this.props.onEventScheduled && this.props.onEventScheduled(e);\n    } else if (eventName === CalendlyEvent.EVENT_TYPE_VIEWED) {\n      this.props.onEventTypeViewed && this.props.onEventTypeViewed(e);\n    } else if (eventName === CalendlyEvent.PROFILE_PAGE_VIEWED) {\n      this.props.onProfilePageViewed && this.props.onProfilePageViewed(e);\n    }\n  };\n\n  CalendlyEventListener.prototype.render = function () {\n    return this.props.children || null;\n  };\n\n  return CalendlyEventListener;\n}(React.Component);\n\nexports.InlineWidget = InlineWidget;\nexports.PopupButton = PopupButton;\nexports.PopupWidget = PopupWidget;\nexports.CalendlyEventListener = CalendlyEventListener;\nexports.openPopupWidget = openPopupWidget;\nexports.closePopupWidget = closePopupWidget; \nconst __esModule = exports.__esModule;\nconst _InlineWidget = exports.InlineWidget,\n      _PopupButton = exports.PopupButton,\n      _PopupWidget = exports.PopupWidget,\n      _CalendlyEventListener = exports.CalendlyEventListener,\n      _openPopupWidget = exports.openPopupWidget,\n      _closePopupWidget = exports.closePopupWidget;\n\nexport default exports;\nexport { _CalendlyEventListener as CalendlyEventListener, _InlineWidget as InlineWidget, _PopupButton as PopupButton, _PopupWidget as PopupWidget, __esModule, _closePopupWidget as closePopupWidget, _openPopupWidget as openPopupWidget };\n\n//# sourceMappingURL=npm:react-calendly@2.2.1!cjs.map","import \"/npm:react@17!cjs\";\nexport * from \"/npm:react-calendly@2.2.1!cjs\";\nexport { default } from \"/npm:react-calendly@2.2.1!cjs\";\n","// @ts-ignore\nimport { fontStore } from \"framer\";\nimport { useEffect } from \"react\";\n// @ts-ignore\nimport { fontStack } from \"https://framerusercontent.com/modules/VTUDdizacRHpwbkOamr7/AykinQJbgwl92LvMGZwu/constants.js\";\nconst fontWeights = {\n    100: \"Thin\",\n    200: \"Extra-light\",\n    300: \"Light\",\n    400: \"Regular\",\n    500: \"Medium\",\n    600: \"Semi-bold\",\n    700: \"Bold\",\n    800: \"Extra-bold\",\n    900: \"Black\"\n};\nexport function useFontControls(props) {\n    const { fontFamily , fontSize , fontWeight , font  } = props;\n    const fontWeightName = fontWeights[fontWeight];\n    const customFontStack = `\"${fontFamily} ${fontWeightName}\", \"${fontFamily}\", ${fontStack}`;\n    const fontFamilyStyle = fontFamily ? {\n        fontSize,\n        fontWeight,\n        fontFamily: customFontStack\n    } : {\n        fontSize,\n        fontWeight\n    };\n    const fetchCustomFonts = async ()=>{\n        await fontStore.loadWebFontsFromSelectors([\n            `CUSTOM;${fontFamily}`,\n            `CUSTOM;${fontFamily} ${fontWeightName}`,\n            `GF;${fontFamily}-${fontWeightName.toLowerCase()}`, \n        ]).catch((e)=>console.error(e)\n        );\n    };\n    useEffect(()=>{\n        if (font) fetchCustomFonts();\n    }, [\n        font,\n        fontFamily,\n        fontWeight\n    ]);\n    return fontFamilyStyle;\n}\n\nexport const __FramerMetadata__ = {\"exports\":{\"useFontControls\":{\"type\":\"function\",\"annotations\":{\"framerContractVersion\":\"1\"}}}}\n//# sourceMappingURL=./useFontControls.map","import { useMemo } from \"react\";\nimport { RenderTarget } from \"framer\";\nexport function useRenderTarget() {\n    const currentRenderTarget = useMemo(()=>RenderTarget.current()\n    , []);\n    return currentRenderTarget;\n}\nexport function useIsInPreview() {\n    const inPreview = useMemo(()=>RenderTarget.current() === RenderTarget.preview\n    , []);\n    return inPreview;\n}\n\nexport const __FramerMetadata__ = {\"exports\":{\"useIsInPreview\":{\"type\":\"function\",\"annotations\":{\"framerContractVersion\":\"1\"}},\"useRenderTarget\":{\"type\":\"function\",\"annotations\":{\"framerContractVersion\":\"1\"}}}}\n//# sourceMappingURL=./useRenderTarget.map","import { defaultEvents, localeOptions, fontControls, fontSizeOptions, emptyStateStyle, containerStyles, fontStack } from \"https://framerusercontent.com/modules/VTUDdizacRHpwbkOamr7/AykinQJbgwl92LvMGZwu/constants.js\";\nimport { useOnEnter, useOnExit } from \"https://framerusercontent.com/modules/D4TWeLfcxT6Tysr2BlYg/iZjmqdxVx1EOiM3k1FaW/useOnNavigationTargetChange.js\";\nimport { useConstant } from \"https://framerusercontent.com/modules/ExNgrA7EJTKUPpH6vIlN/eiOrSJ2Ab5M9jPCvVwUz/useConstant.js\";\nimport { colorTokentoValue, colorFromToken } from \"https://framerusercontent.com/modules/D2Lz5CmnNVPZFFiZXalt/QaCzPbriZBfXWZIIycFI/colorFromToken.js\";\nimport { isMotionValue } from \"https://framerusercontent.com/modules/3mKFSGQqKHV82uOV1eBc/5fbRLvOpxZC0JOXugvwm/isMotionValue.js\";\nimport { useUniqueClassName, randomID } from \"https://framerusercontent.com/modules/xDiQsqBGXzmMsv7AlEVy/uhunpMiNsbXxzjlXsg1y/useUniqueClassName.js\";\nimport { getVariantControls } from \"https://framerusercontent.com/modules/ETACN5BJyFTSo0VVDJfu/NHRqowOiXkF9UwOzczF7/variantUtils.js\";\nimport { useIsBrowserSafari } from \"https://framerusercontent.com/modules/eMBrwoqQK7h6mEeGQUH8/GuplvPJVjmxpk9zqOTcb/isBrowser.js\";\nimport { useMultiOnChange, useOnChange } from \"https://framerusercontent.com/modules/v9AWX2URmiYsHf7GbctE/XxKAZ9KlhWqf5x1JMyyF/useOnChange.js\";\nimport { mstoMinAndSec, secondsToMinutes } from \"https://framerusercontent.com/modules/4zHZnO5JojN1PrIbu2jm/revv9QCWpkh8lPzi2jje/time.js\";\nimport { useAutoMotionValue } from \"https://framerusercontent.com/modules/kNDwabfjDEb3vUxkQlZS/fSIr3AOAYbGlfSPgXpYu/useAutoMotionValue.js\";\nimport { useFontControls } from \"https://framerusercontent.com/modules/cuQH4dmpDnV8YK1mSgQX/tTLhbOFToDhKcwOVmn8E/useFontControls.js\";\nimport { useRenderTarget, useIsInPreview } from \"https://framerusercontent.com/modules/afBE9Yx1W6bY5q32qPxe/AAh30yXzt1DUsOi1YwUY/useRenderTarget.js\";\nimport { useControlledState } from \"https://framerusercontent.com/modules/zGkoP8tPDCkoBzMdt5uq/0zFSjxIYliHxrQQnryFX/useControlledState.js\";\nimport { usePadding, useRadius, paddingControl, borderRadiusControl } from \"https://framerusercontent.com/modules/5SM58HxZHxjjv7aLMOgQ/WXz9i6mVki0bBCrKdqB3/propUtils.js\";\nimport { detectAutoSizingAxis } from \"https://framerusercontent.com/modules/8CkHAZatUz1UR8jNTcfD/HwbnIAZlUmQ2oTpcLkaH/detectAutoSizingAxis.js\";\nexport { useOnEnter, useOnExit, defaultEvents, isMotionValue, colorFromToken, colorTokentoValue, localeOptions, fontControls, fontSizeOptions, emptyStateStyle, containerStyles, fontStack, useUniqueClassName, getVariantControls, useIsBrowserSafari, randomID, useConstant, useMultiOnChange, useOnChange, usePadding, useRadius, paddingControl, borderRadiusControl, mstoMinAndSec, useFontControls, secondsToMinutes, useAutoMotionValue, useRenderTarget, useIsInPreview, useControlledState, detectAutoSizingAxis,  };\n\nexport const __FramerMetadata__ = {\"exports\":{\"fontControls\":{\"type\":\"variable\",\"annotations\":{\"framerContractVersion\":\"1\"}},\"mstoMinAndSec\":{\"type\":\"variable\",\"annotations\":{\"framerContractVersion\":\"1\"}},\"colorTokentoValue\":{\"type\":\"variable\",\"annotations\":{\"framerContractVersion\":\"1\"}},\"useFontControls\":{\"type\":\"variable\",\"annotations\":{\"framerContractVersion\":\"1\"}},\"useUniqueClassName\":{\"type\":\"variable\",\"annotations\":{\"framerContractVersion\":\"1\"}},\"paddingControl\":{\"type\":\"variable\",\"annotations\":{\"framerContractVersion\":\"1\"}},\"localeOptions\":{\"type\":\"variable\",\"annotations\":{\"framerContractVersion\":\"1\"}},\"fontStack\":{\"type\":\"variable\",\"annotations\":{\"framerContractVersion\":\"1\"}},\"detectAutoSizingAxis\":{\"type\":\"variable\",\"annotations\":{\"framerContractVersion\":\"1\"}},\"useRenderTarget\":{\"type\":\"variable\",\"annotations\":{\"framerContractVersion\":\"1\"}},\"useOnEnter\":{\"type\":\"variable\",\"annotations\":{\"framerContractVersion\":\"1\"}},\"emptyStateStyle\":{\"type\":\"variable\",\"annotations\":{\"framerContractVersion\":\"1\"}},\"useIsBrowserSafari\":{\"type\":\"variable\",\"annotations\":{\"framerContractVersion\":\"1\"}},\"getVariantControls\":{\"type\":\"variable\",\"annotations\":{\"framerContractVersion\":\"1\"}},\"useAutoMotionValue\":{\"type\":\"variable\",\"annotations\":{\"framerContractVersion\":\"1\"}},\"randomID\":{\"type\":\"variable\",\"annotations\":{\"framerContractVersion\":\"1\"}},\"useOnExit\":{\"type\":\"variable\",\"annotations\":{\"framerContractVersion\":\"1\"}},\"useIsInPreview\":{\"type\":\"variable\",\"annotations\":{\"framerContractVersion\":\"1\"}},\"useRadius\":{\"type\":\"variable\",\"annotations\":{\"framerContractVersion\":\"1\"}},\"usePadding\":{\"type\":\"variable\",\"annotations\":{\"framerContractVersion\":\"1\"}},\"useMultiOnChange\":{\"type\":\"variable\",\"annotations\":{\"framerContractVersion\":\"1\"}},\"containerStyles\":{\"type\":\"variable\",\"annotations\":{\"framerContractVersion\":\"1\"}},\"fontSizeOptions\":{\"type\":\"variable\",\"annotations\":{\"framerContractVersion\":\"1\"}},\"defaultEvents\":{\"type\":\"variable\",\"annotations\":{\"framerContractVersion\":\"1\"}},\"useConstant\":{\"type\":\"variable\",\"annotations\":{\"framerContractVersion\":\"1\"}},\"isMotionValue\":{\"type\":\"variable\",\"annotations\":{\"framerContractVersion\":\"1\"}},\"useOnChange\":{\"type\":\"variable\",\"annotations\":{\"framerContractVersion\":\"1\"}},\"useControlledState\":{\"type\":\"variable\",\"annotations\":{\"framerContractVersion\":\"1\"}},\"borderRadiusControl\":{\"type\":\"variable\",\"annotations\":{\"framerContractVersion\":\"1\"}},\"colorFromToken\":{\"type\":\"variable\",\"annotations\":{\"framerContractVersion\":\"1\"}},\"secondsToMinutes\":{\"type\":\"variable\",\"annotations\":{\"framerContractVersion\":\"1\"}}}}","/*\n * index (framer/default-utils@0.43.0)\n *\n * Learn More: https://www.framer.com/asset-urls\n */\n\nexport * from \"https://framerusercontent.com/modules/G4IfyjvwmaeSBpdb4TWu/Pk7RhKpPAlu4xr8tiZYq/index.js\"\n","import{containerStyles,emptyStateStyle as defaultEmptyStateStyle}from\"https://framer.com/m/framer/default-utils.js@^0.43.0\";export const emptyStateStyle={...containerStyles,...defaultEmptyStateStyle,textAlign:\"center\",padding:15,width:200,height:100,overflow:\"hidden\"};export const neutralStateStyle={...emptyStateStyle,color:\"#09f\",background:\"rgb(0, 153, 255, 0.1)\",borderColor:\"#09f\"};export const stateTitleStyle={fontSize:12,fontWeight:600,margin:0};export const stateParagraphStyle={fontSize:12,maxWidth:200,lineHeight:1.4,margin:\"5px 0 0 0\"};\nexport const __FramerMetadata__ = {\"exports\":{\"neutralStateStyle\":{\"type\":\"variable\",\"annotations\":{\"framerContractVersion\":\"1\"}},\"stateTitleStyle\":{\"type\":\"variable\",\"annotations\":{\"framerContractVersion\":\"1\"}},\"emptyStateStyle\":{\"type\":\"variable\",\"annotations\":{\"framerContractVersion\":\"1\"}},\"stateParagraphStyle\":{\"type\":\"variable\",\"annotations\":{\"framerContractVersion\":\"1\"}},\"__FramerMetadata__\":{\"type\":\"variable\"}}}\n//# sourceMappingURL=./styles.map","/*\n * styles (framer/integrations-styles@0.2.0)\n *\n * Learn More: https://www.framer.com/asset-urls\n */\n\nexport * from \"https://framerusercontent.com/modules/ZORE1BBUY4n4vHC0WFDH/bnwaYkSw2e4q5eLH4jPK/styles.js\"\n","import{jsx as _jsx,jsxs as _jsxs}from\"react/jsx-runtime\";import{addPropertyControls,ControlType}from\"framer\";import{useState}from\"react\";import{motion}from\"framer\";import{createBackground,Border,parsePadding,fillProp,borderProp,shadowsProp,useInstanceId}from\"https://framerusercontent.com/modules/DwWOdDzQZGCuvkNlbUjZ/Rj7Kdx4qq62ukVsnw7Hz/FramerFormsShared.js\";import{buildQuizInputDataAttributes,createQuizNestedControls}from\"https://framerusercontent.com/modules/itVumdSpaLTGejsnG4cS/6LKYMWPrWe4DJ5B7wYmL/QuizScoringShared.js\";function isQuizCaseSensitive(value){return value===true||value===\"caseSensitive\";}function isQuizIgnoreSpaces(value){return value===true||value===\"ignoreThem\";}/**\n * @framerSupportedLayoutWidth fixed\n * @framerSupportedLayoutHeight any\n * @framerIntrinsicWidth 400\n * @framerDisableUnlink\n */export default function TextInput(props){const{type,textAreaHeight,shadows,border,quiz}=props;const id=useInstanceId();const Element=type==\"textArea\"?\"textarea\":\"input\";const[focused,setFocused]=useState(false);const[invalid,setInvalid]=useState(false);let attributes={};let styles={};if(type==\"textArea\"){const[pt,pr,pb,pl]=parsePadding(props.padding);const heightMode=textAreaHeight.mode;const autoHeightSupported=typeof CSS!==\"undefined\"?CSS.supports(\"field-sizing\",\"content\"):true;attributes.rows=heightMode==\"fixed\"?textAreaHeight.lines:1;styles={display:\"block\",minHeight:heightMode==\"auto\"&&!autoHeightSupported?`calc(${textAreaHeight.fallbackLines}lh + ${pt+pb}px)`:heightMode!==\"fixed\"?`calc(${textAreaHeight.minLines}lh + ${pt+pb}px)`:undefined,maxHeight:heightMode!==\"fixed\"?`calc(${textAreaHeight.maxLines}lh + ${pt+pb}px)`:undefined,fieldSizing:heightMode==\"auto\"&&autoHeightSupported?\"content\":undefined,resize:heightMode==\"resizable\"?\"vertical\":\"none\"};}const onFocus=()=>{setFocused(true);props.focusEvent?.();if(invalid){setInvalid(false);}};const onBlur=()=>{setFocused(false);props.blurEvent?.();};const onInvalid=event=>{event.preventDefault();setInvalid(true);props.invalidEvent?.();};const ca=quiz?.isQuizInput&&quiz.scoringMethod!==\"weighted\"?quiz.correctAnswer!=null?String(quiz.correctAnswer).trim():\"\":\"\";const quizDataset=buildQuizInputDataAttributes(quiz,{correctAnswer:ca||null,quizOptionsJson:{caseSensitive:isQuizCaseSensitive(quiz?.caseSensitive),ignoreSpaces:isQuizIgnoreSpaces(quiz?.ignoreSpaces),useRegex:!!quiz?.useRegex}});return /*#__PURE__*/_jsxs(motion.div,{\"data-framerforms\":true,id:id,onFocus:onFocus,onBlur:onBlur,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,overflow:type==\"textArea\"&&props.textAreaScrollbar==\"auto\"?\"hidden\":\"visible\",backdropFilter:props.bgBlur?`blur(${props.bgBlur}px)`:undefined,...props.style},initial:false,transition:props.transition,children:[/*#__PURE__*/_jsx(Element,{name:props.name,required:props.required,autoFocus:props.autoFocus,placeholder:props.placeholder,minLength:props.minLengthEnabled?props.minLength:undefined,maxLength:props.maxLengthEnabled?props.maxLength:undefined,defaultValue:props.value,onInvalid:onInvalid,style:{display:\"block\",padding:props.padding,color:props.color,background:\"none\",border:\"none\",textOverflow:\"ellipsis\",...styles,...props.font,...props.style},...attributes,...quizDataset}),/*#__PURE__*/_jsx(Border,{...props.border,transition:props.transition}),/*#__PURE__*/_jsx(\"style\",{dangerouslySetInnerHTML:{__html:`\n                    #${id} ${Element}::placeholder {\n                        color: ${props.placeholderColor};\n                    }\n                    #${id} ${Element}:focus {\n                        appearance: none;\n                        outline: none;\n                        border: none;\n                        display: none;\n                    }`}}),type==\"textArea\"&&props.textAreaScrollbar==\"hidden\"&&/*#__PURE__*/_jsx(\"style\",{children:`#${id} textarea::-webkit-scrollbar {\n                        display: none; /* WebKit browsers (Chrome, Safari) */\n                    }\n                    #${id} textarea {\n                        -ms-overflow-style: none; /* IE and Edge */\n                        scrollbar-width: none; /* Firefox */\n                    }`})]});}TextInput.displayName=\"Text Input\";addPropertyControls(TextInput,{name:{type:ControlType.String,defaultValue:\"Text\",preventLocalization:true},required:{type:ControlType.Boolean,defaultValue:false},autoFocus:{type:ControlType.Boolean,defaultValue:false,title:\"Auto-Focus\"},minLengthEnabled:{type:ControlType.Boolean,defaultValue:false,title:\"Min Length\"},minLength:{type:ControlType.Number,defaultValue:100,min:0,step:1,displayStepper:true,title:\" \",hidden:props=>!props.minLengthEnabled},maxLengthEnabled:{type:ControlType.Boolean,defaultValue:false,title:\"Max Length\"},maxLength:{type:ControlType.Number,defaultValue:100,min:0,step:1,displayStepper:true,title:\" \",hidden:props=>!props.maxLengthEnabled},value:{type:ControlType.String,placeholder:\"Default Value\"},type:{type:ControlType.Enum,defaultValue:\"input\",options:[\"textArea\",\"input\"],optionTitles:[\"Yes\",\"No\"],displaySegmentedControl:true,title:\"Text Area\"},textAreaHeight:{type:ControlType.Object,title:\"Height\",controls:{mode:{type:ControlType.Enum,defaultValue:\"auto\",options:[\"auto\",\"resizable\",\"fixed\"],optionTitles:[\"Auto\",\"Resizable\",\"Fixed\"],displaySegmentedControl:true,segmentedControlDirection:\"vertical\"},minLines:{type:ControlType.Number,defaultValue:3,min:1,step:1,displayStepper:true,hidden:props=>props.mode===\"fixed\"},maxLines:{type:ControlType.Number,defaultValue:8,min:1,step:1,displayStepper:true,hidden:props=>props.mode===\"fixed\"},lines:{type:ControlType.Number,defaultValue:5,min:1,step:1,displayStepper:true,hidden:props=>props.mode!==\"fixed\"},fallbackLines:{type:ControlType.Number,defaultValue:5,min:1,step:1,title:\"Fallback\",description:\"Auto height is [not supported on all browsers](https://caniuse.com/mdn-css_properties_field-sizing_content). Fallback is used when auto height is not supported.\",hidden:props=>props.mode!==\"auto\"}},hidden:props=>props.type!=\"textArea\"},textAreaScrollbar:{type:ControlType.Enum,defaultValue:\"hidden\",options:[\"auto\",\"hidden\"],optionTitles:[\"Auto\",\"Hidden\"],displaySegmentedControl:true,title:\"Scrollbar\",hidden:props=>props.type!=\"textArea\"},placeholder:{type:ControlType.String,defaultValue:\"Write here...\"},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(),radius:{type:ControlType.BorderRadius,defaultValue:\"10px\"},padding:{type:ControlType.Padding,defaultValue:\"12px\"},border:borderProp(),shadows:shadowsProp(),bgBlur:{type:ControlType.Number,min:0,max:100,step:1,displayStepper:true,title:\"BG Blur\"},transition:{type:ControlType.Transition,defaultValue:{type:false}},quiz:{type:ControlType.Object,title:\"Quiz\",optional:true,controls:createQuizNestedControls({correctAnswer:{type:ControlType.String,title:\"Correct\",defaultValue:\"\",displayTextArea:true,placeholder:\"Correct answer\"},caseSensitive:{type:ControlType.Enum,title:\"Case\",defaultValue:\"notCaseSensitive\",options:[\"caseSensitive\",\"notCaseSensitive\"],optionTitles:[\"Case sensitive\",\"Non case sensitive\"],displaySegmentedControl:true,segmentedControlDirection:\"vertical\"},ignoreSpaces:{type:ControlType.Enum,title:\"Spaces\",defaultValue:\"theyMatter\",options:[\"theyMatter\",\"ignoreThem\"],optionTitles:[\"They matter\",\"They Don't matter\"],displaySegmentedControl:true,segmentedControlDirection:\"vertical\"},useRegex:{type:ControlType.Boolean,title:\"Regex\",defaultValue:false,description:\"Wether to use regular expressions\"}})},focusEvent:{type:ControlType.EventHandler,title:\"Focus\"},blurEvent:{type:ControlType.EventHandler,title:\"Blur\"},invalidEvent:{type:ControlType.EventHandler,title:\"Invalid\"}});\nexport const __FramerMetadata__ = {\"exports\":{\"default\":{\"type\":\"reactComponent\",\"name\":\"TextInput\",\"slots\":[],\"annotations\":{\"framerDisableUnlink\":\"\",\"framerSupportedLayoutWidth\":\"fixed\",\"framerIntrinsicWidth\":\"400\",\"framerSupportedLayoutHeight\":\"any\",\"framerContractVersion\":\"1\"}},\"__FramerMetadata__\":{\"type\":\"variable\"}}}","import{jsx as _jsx}from\"react/jsx-runtime\";import{forwardRef,useEffect}from\"react\";export function withMetaTracking(Component){return /*#__PURE__*/forwardRef((props,ref)=>{useEffect(()=>{let attempts=0;const maxAttempts=10// 10 x 500ms = 5 seconds max\n;const poll=setInterval(()=>{attempts++;const fbpInput=document.querySelector('input[name=\"fbp\"]');const uaInput=document.querySelector('input[name=\"client_user_agent\"]');const dubIdInput=document.querySelector('input[name=\"dub_link_id\"]');// Wait until all inputs exist in DOM\nif(!fbpInput||!uaInput||!dubIdInput){if(attempts>=maxAttempts)clearInterval(poll);return;}// Set UA immediately\nif(!uaInput.value)uaInput.value=navigator.userAgent;// Set fbp if cookie exists\nconst fbp=document.cookie.split(\"; \").find(row=>row.startsWith(\"_fbp=\"));if(fbp&&!fbpInput.value){fbpInput.value=fbp.split(\"=\")[1];}// Set dub_id if cookie exists\nconst dubId=document.cookie.split(\"; \").find(row=>row.startsWith(\"dub_id=\"));if(dubId&&!dubIdInput.value){dubIdInput.value=dubId.split(\"=\")[1];}// Stop polling once required fields are set, or max attempts reached\nif(fbpInput.value&&uaInput.value||attempts>=maxAttempts){clearInterval(poll);}},500);return()=>clearInterval(poll);},[]);return /*#__PURE__*/_jsx(Component,{ref:ref,...props});});}\nexport const __FramerMetadata__ = {\"exports\":{\"withMetaTracking\":{\"type\":\"reactHoc\",\"name\":\"withMetaTracking\",\"annotations\":{\"framerContractVersion\":\"1\"}},\"__FramerMetadata__\":{\"type\":\"variable\"}}}\n//# sourceMappingURL=./Client_ua_fbp.map","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","/*\n * FramerFormsShared\n *\n * Learn More: https://www.framer.com/asset-urls\n */\n\nexport * from \"https://framerusercontent.com/modules/DwWOdDzQZGCuvkNlbUjZ/hMz2wp3CWZkNwPJFGPgQ/FramerFormsShared.js\"\n","import{jsx as _jsx}from\"react/jsx-runtime\";import{addPropertyControls,ControlType,RenderTarget}from\"framer\";import{useInstanceId,HiddenComponentLabel}from\"https://framer.com/m/FramerFormsShared-XPyb.js@hMz2wp3CWZkNwPJFGPgQ\";import{useEffect,useRef}from\"react\";/**\n * @framerSupportedLayoutWidth any\n * @framerSupportedLayoutHeight\n * @framerDisableUnlink\n */export default function PrefillFormInputs(props){const{inputs}=props;const isCanvas=RenderTarget.current()===RenderTarget.canvas;const id=useInstanceId();const ref=useRef(null);useEffect(()=>{// Skip prefilling if we're in canvas mode or no inputs\nif(isCanvas||!Array.isArray(inputs)||inputs.length===0){return;}const timer=setTimeout(()=>{const urlSearchParams=new URLSearchParams(window.location.search);const urlParams={};// // Testing code\n// urlParams[\"slider\"] = 23\n// urlParams[\"country\"] = \"Brazil\"\n// urlParams[\"text\"] = \"Super duper text input\"\n// urlParams[\"imageSelect\"] = \"purple\"\n// urlParams[\"rating\"] = 3\nfor(const[key,value]of urlSearchParams.entries()){urlParams[key]=value;}// Always include current page URL\nurlParams[\"page_url\"]=window.location.href;// Find the closest parent form element\nconst form=ref.current?.closest(\"form\");for(let i=0;i<inputs.length;i++){const input=inputs[i];if(!input.inputName||!input.urlParameter){continue;}const value=urlParams[input.urlParameter];if(value){const query=`\n\t\t\t\t\t\tinput[name=\"${input.inputName}\"]:not([data-framerforms-no-prefill]),\n\t\t\t\t\t\tselect[name=\"${input.inputName}\"]:not([data-framerforms-no-prefill]),\n\t\t\t\t\t\ttextarea[name=\"${input.inputName}\"]:not([data-framerforms-no-prefill])`;// First try to find elements within the same form\nlet inputElement=form?.querySelector(query);// If no element found in form, or no form exists, search the entire document\nif(!inputElement){inputElement=document.querySelector(query);}if(inputElement){if(inputElement.tagName==\"INPUT\"&&inputElement.getAttribute(\"type\")==\"hidden\"){if(inputElement.hasAttribute(\"data-framerforms-set-value-event\")){inputElement.dispatchEvent(new CustomEvent(\"framerFormsSetValue\",{bubbles:true,detail:value}));}}else{const elementType=inputElement.tagName==\"INPUT\"?window.HTMLInputElement:inputElement.tagName==\"TEXTAREA\"?window.HTMLTextAreaElement:inputElement.tagName==\"SELECT\"?window.HTMLSelectElement:null;if(elementType){const nativeInputValueSetter=Object.getOwnPropertyDescriptor(elementType.prototype,\"value\").set;nativeInputValueSetter.call(inputElement,value);inputElement.dispatchEvent(new Event(\"input\",{bubbles:true}));}else{inputElement.value=value;}}}}}},0);return()=>clearTimeout(timer);},[]);return /*#__PURE__*/_jsx(HiddenComponentLabel,{ref:ref,id:id,text:\"Pre-fill Form Inputs\",subtext:Array.isArray(inputs)?inputs.map(input=>input.inputName).join(\", \"):\"\"});}PrefillFormInputs.displayName=\"Pre-fill Form Inputs\";addPropertyControls(PrefillFormInputs,{inputs:{type:ControlType.Array,description:\"Fill input values from URL parameters\",control:{type:ControlType.Object,controls:{inputName:{type:ControlType.String,defaultValue:\"\",placeholder:\"Input Name\",preventLocalization:true},urlParameter:{type:ControlType.String,title:\"URL Param\",placeholder:\"URL Parameter\",preventLocalization:true}}}}});\nexport const __FramerMetadata__ = {\"exports\":{\"default\":{\"type\":\"reactComponent\",\"name\":\"PrefillFormInputs\",\"slots\":[],\"annotations\":{\"framerContractVersion\":\"1\",\"framerSupportedLayoutHeight\":\"* @framerDisableUnlink\",\"framerSupportedLayoutWidth\":\"any\"}},\"__FramerMetadata__\":{\"type\":\"variable\"}}}\n//# sourceMappingURL=./PrefillFormInputs_1.map"],"mappings":"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"}