{"version":3,"file":"FormKitImageButton.11MH52y8.mjs","names":["useState","useState","useRef","cloneElement","useRef","cloneElement","useState","useRef","VALIDATION_CONTROLS","useRef","useState","Children","isValidElement","useMemo","fieldElement","useRef","useState","VALIDATION_CONTROLS","useId","VALIDATION_CONTROLS","__esmMin","pe","init_npm_react_18_3_1","init_ssg_sandbox_shims","window","z","ie","le","_e","K","c","init_jsx_runtime","ce","j","de","init_framer_BWFVvmND","addPropertyControls","ControlType","useObserveData","Data","RenderTarget","createStore","dataStore","state1","setDataStore","newState","storeState","storeSetters","setStoreState","setter","useStore","state","setState","init_createStore","init_store_js__1","initializedForms","formStores","getFormStore","getFormStoreKey","saveFormToLocalStorage","loadFormFromLocalStorage","clearFormFromLocalStorage","parseUrlParams","isPreview","init_Store_management","formId","newStore","manualStoreKey","key","data","error","saved","params","value","navigationRegistry","registerFormKitNavigation","unregisterFormKitNavigation","getFormKitNavigation","init_Form_navigation","handlers","HIDDEN_FIELD_CSS","cssInjected","injectHiddenFieldCSS","HiddenFieldMarker","init_HiddenFieldMarker","style","FormKitNext","rest","props","buttonCustomStyles","styling","actualFormId","buttonState","setButtonState","isProcessing","setIsProcessing","stateRef","containerRef","clickLockRef","startValidationTimerRef","evaluateValidationTimerRef","totalSteps","currentStep","stepsInitialized","isLastStep","shouldTreatAsLastStep","isCompleted","isCanvas","errorDuration","timer","hideOnLastStep","clearValidationTimers","releaseClickLock","handleClick","disabled","requestedStep","navigation","beforeValidateState","currentState","hasErrors","hasNativeInvalidInCurrentStep","inputs","el","getCurrentVariant","variantMappings","extractActualComponent","element","children","chain","detectVariantProperty","component","propertyControls","propName","control","renderSlotWithVariant","slotComponent","actualComponent","variantProp","result","variantName","i","wrapper","renderCustomButtonPlaceholder","renderCustomButton","customButton","currentVariant","buttonType","isError","errorStyles","buttonStyles","hoverStyles","errorText","text","init_FormKitNext","FormKitProgressBar","rawFont","font","activeBarBackground","barStyle","shouldHideOnSuccess","hideOnSuccess","percentage","labelGap","containerStyle","showLabels","labelPosition","labelFormat","textColor","labelText","labels","index","isHighlighted","activeTextColor","init_FormKitProgressBar","getFormKitDirection","explicitDirection","sample","textSamples","RTL_TEXT_PATTERN","LTR_TEXT_PATTERN","documentDirection","documentLanguage","RTL_LANG_PATTERN","getTextAlignForDirection","textAlign","direction","init_Direction","FormKitSubmit","isSubmitting","submitState","validationCheckRef","componentDirection","loadingText","successText","parentForm","checkNativeValidation","nativeInputs","isValid","input","successDuration","hasFormKitErrors","nativeValid","wait","resolve","ms","loadingDuration","resetData","getResetData","showOnlyOnLastStep","constrainedStyle","currentStyles","successStyles","init_FormKitSubmit","currentData","validateRequired","validateEmail","validateURL","validateMinLength","validateMaxLength","validatePattern","validateMin","validateMax","validatePhone","validateFileSize","validateFileType","validateField","init_Validation","message","fieldName","minLength","maxLength","pattern","min","max","file","maxSize","accept","acceptedTypes","t","fileType","fileExtension","type","category","requiredError","arr","minError","maxError","typeError","sizeError","minLengthError","maxLengthError","patternError","useFormField","config","storeKey","localValue","setLocalValue","name","isValidating","setIsValidating","hasValidated","setHasValidated","validationTimeoutRef","isStateReady","storeValue","normalizedStoreValue","currentErrors","prev","_","otherErrors","skipValidation","validation","newErrors","validate","valueToValidate","onChange","validateOnChange","validateOnBlur","init_Hooks","normalizeConditionValue","isFilled","evaluateRule","evaluateFieldState","getConditionalBadge","evaluateRuleGroup","findFirstMatchingMultiStepRule","findMatchingMultiStepRules","normalizeTargetStep","init_Conditions","trimmed","numeric","rule","field","left","right","operator","v","l","r","showIf","conditionMet","keys","values","results","match","action","wouldBeHidden","fieldState","wouldBeDisabled","showIfAction","rules","targetStep","zeroBasedStep","maxStepIndex","createStylingControl","SHOW_IF_CONTROL","MULTI_STEP_CONDITION_CONTROL","MULTI_STEP_MATCH_CONTROL","MULTI_STEP_NEXT_RULES_CONTROL","MULTI_STEP_PREVIOUS_RULES_CONTROL","MULTI_STEP_SUBMIT_RULES_CONTROL","SHOW_IF_MATCH_CONTROL","SHOW_IF_ACTION_CONTROL","STORE_CONFIG_CONTROL","VALIDATION_CONTROLS$1","BASE_INPUT_STYLE_CONTROLS","LABEL_STYLE_CONTROLS","ERROR_STYLE_CONTROLS","SUCCESS_STYLE_CONTROLS","FOCUS_STYLE_CONTROLS","CHECKBOX_GROUP_STYLE_CONTROLS","CHECKBOX_GROUP_VALIDATION_CONTROLS","init_Property_controls","IconCheck","IconAlert","renderIcon","init_Icons","iconType","customIcon","processedSvg","svg","attrs","filteredStyle","styleValue","propStyle","restHtmlProps","DefaultIcon","FormKitPrevious","shouldTreatAsFirstStep","hideOnFirstStep","init_FormKitPrevious","normalizePaddingValue","withUnit","isZeroLike","compact","top","bottom","options","fallback","normalizeBorderRadiusValue","tl","tr","br","bl","serializeNativeSubmissionValue","item","hasAutoJumpAnswer","FormKitMultiStep","nextRulesKey","nextRules","previousRulesKey","previousRules","submitSuccessRulesKey","submitSuccessRules","renderedFieldNames","setRenderedFieldNames","successDisplayTimerRef","autoJumpTimerRef","lastAutoJumpSignatureRef","stepEntryFieldSignatureRef","pendingStepScrollRef","clearSuccessDisplayTimer","clearAutoJumpTimer","scrollToStepTarget","scrollTarget","scrollBehavior","customTargetId","scrollTargetId","targetElement","fallbackElement","elementToScroll","nextTop","scrollOffset","saveToLocalStorage","urlParams","clampedCurrentStep","visitedSteps","step","stepHistory","completedSteps","safeVisitedSteps","safeStepHistory","normalizedStepHistory","navigateToStep","stepIndex","nextState","currentHistory","triggerScrolling","goToStep","applyFieldMutationRules","matchingRules","mutationRules","nextData","nextStep","initialState","matchingRule","targetStepIndex","previousStep","previousBehavior","redirectWithFormData","baseUrl","finalUrl","passDataToUrl","queryString","handleSubmit","preSubmitState","updatedData","onSubmit","submitUrl","showSuccessView","successDisplayDelay","matchingSubmitRule","finalRedirectUrl","redirectUrl","childArray","currentChild","hiddenSubmissionEntries","namedElements","names","uniqueNames","renderEmptyPlaceholder","shouldShowSuccessMessage","canvasShowSuccess","resetSuccessState","handleTryAgain","clearDataOnTryAgain","renderCustomSuccessPlaceholder","renderStepNode","node","childStyle","frameId","nestedFrameId","autoJumpToNextPage","currentStepElements","hasSupportedControlType","inputType","hasUnsupportedControlType","fieldValue","fieldError","fieldTouched","fieldValueSignature","signature","currentValue","currentError","currentTouched","hasCustomSuccessSlot","successSlot","successMode","successBackgroundColor","successTextColor","successIconColor","successFontSize","successFontWeight","successFontFamily","successLineHeight","successLetterSpacing","successIconSize","successPadding","successBorderRadius","successGap","successBorderColor","successBorderWidth","successBorderStyle","successMessage","showTryAgain","successActionsGap","tryAgainStyles","tryAgainText","canvasView","pageIndex","canvasPage","child","newChild","init_FormKitMultiStep","FormKitTextarea","textareaRef","validationConfig","validationType","showIfMatch","isVisible","isDisabled","showBadge","badgeText","badge","autoResize","scrollHeight","minHeightPx","autoResizeMinHeight","maxHeightPx","autoResizeMaxHeight","nextHeight","isFocused","setIsFocused","label","placeholder","resolvedInputTextAlign","inputStyles","resolvedLabelTextAlign","labelStyles","shouldShowSuccess","successDisplayMode","showInlineSuccessIcon","showSuccessMessage","charCount","textareaStyle","focusStyles","isTouched","labelStyle","errorStyle","successStyle","fieldId","required","showCharCount","handleChange","handleBlur","rows","init_FormKitTextarea","FormKitSlider","instanceId","minMessage","maxMessage","showHiddenBadge","shouldSkipValidation","initialValue","isRange","defaultRangeStart","defaultRangeEnd","defaultValue","onSingleChange","onRangeChange","newValues","neoValue","possiblyMax","minDistance","possiblyMin","thumbColor","sliderStyles","thumbBorderColor","thumbBorderWidth","thumbBorderRadius","thumbShadowColor","trackColor","activeTrackColor","thumbSize","thumbOffsetY","trackHeight","trackBorderRadius","valueColor","renderValueStart","renderValueEnd","renderSingle","getPercent","val","backgroundStyle","startP","endP","p","valueStyle","sliderClass","thumbStyle","displayValue","valuePrefix","valueSuffix","showValue","SLIDER_STYLE_CONTROLS","VALIDATION_CONTROLS","init_FormKitSlider","FormKitImageButton","canvasPreviewSelectedValues","showCanvasSuccess","canvasPreview","canvasSelectedOptions","effectiveValue","selectionType","isAnySelected","handleOptionClick","currentArray","optionValue","swatchWidth","swatchStyles","swatchHeight","borderRadiusSwatch","swatchGapSize","layout","gap","option","isSelected","defaultBorderSwatch","borderColorSwatch","borderWidthSwatch","SWATCH_STYLE_CONTROLS","init_FormKitImageButton"],"sources":["https:/framerusercontent.com/modules/vj7bFUjvEQFgEzNBkdoG/vf3CKm378wlVcBk7IhSU/createStore.js","https:/framer.com/m/framer/store.js@^1.0","https:/framerusercontent.com/modules/W9pGMfwOEUT2E0G0vdr3/42YKtSLeppXsa3v6m16i/Store_management.js","https:/framerusercontent.com/modules/3iJH2tW5QUFgpH9So3nO/UF4nz2hAgJN545Fau7sS/Form_navigation.js","https:/framerusercontent.com/modules/zT6ckO4RKI5zB9JzgGVW/5pPr41RBexGJfYLsBNcj/HiddenFieldMarker.js","https:/framerusercontent.com/modules/0ivfsvIDSVXjKgjOGm0x/WmftX6MgfK5gqGMK9q1X/FormKitNext.js","https:/framerusercontent.com/modules/58gUppsAWfqojkCNwz7g/JzBktxnkI9heMOToR5Ff/FormKitProgressBar.js","https:/framerusercontent.com/modules/TnGeMluKUv3ZoPWbVX5z/6AL0m280OlZ8wllCKODq/Direction.js","https:/framerusercontent.com/modules/gVWLXt4kvvwEWptOmj1b/ePNSADvgSMpIujXik2Ax/FormKitSubmit.js","https:/framerusercontent.com/modules/CkzWOzYsjkSH8b0Md9Dz/jFAHTs0VED1zTLOHkBsH/Validation.js","https:/framerusercontent.com/modules/QcJOsISgPpDHi68MFiJ7/iSwiu9OhhEpwJ9bUO8oz/Hooks.js","https:/framerusercontent.com/modules/YQMwVuIkIDYjLHJOwEnu/E43Ih1OWNh9ZYDxH2sAu/Conditions.js","https:/framerusercontent.com/modules/gWXlNkIcFnVLxXMR7ktn/JtLdSfrUYaW9eElJLaFM/Property_controls.js","https:/framerusercontent.com/modules/hSeRQvQLiNwfAzfTZN4C/2faSrR7PxMT7RJTYjc17/Icons.js","https:/framerusercontent.com/modules/iNNA5cznEyZEPf2Raebw/aUyIBmjcVTjUSCgiXeQX/FormKitPrevious.js","https:/framerusercontent.com/modules/Ncy1pTFp39SzBvDAqEWb/78TMyM6ytt0hwcyxyNdF/FormKitMultiStep.js","https:/framerusercontent.com/modules/PjsrZgCWPClCYDNEVduk/AkPPsJCqOoB7isDxcblX/FormKitTextarea.js","https:/framerusercontent.com/modules/vfl0LW2H9mfc6KHqi9bp/8qxUMyAX2hw8D0HuBZgT/FormKitSlider.js","https:/framerusercontent.com/modules/W1aH65iHqiYhuqJ0fWFd/k5S19wlW2zYk6nB2ztAC/FormKitImageButton.js"],"sourcesContent":["import{useState,useEffect}from\"react\";import{Data,useObserveData}from\"framer\";export function createStore(state1){// Use Data so that a Preview reload resets the state\nconst dataStore=Data({state:Object.freeze({...state1})});// Create a set function that updates the state\nconst setDataStore=newState=>{// If the state is an object, make sure we copy it\nif(typeof newState===\"function\"){newState=newState(dataStore.state);}dataStore.state=Object.freeze({...dataStore.state,...newState});};// Store the initial state, copy the object if it's an object\nlet storeState=typeof state1===\"object\"?Object.freeze({...state1}):state1;// Keep a list of all the listeners, in the form of React hook setters\nconst storeSetters=new Set();// Create a set function that updates all the listeners / setters\nconst setStoreState=newState=>{// If the state is an object, make sure we copy it\nif(typeof newState===\"function\"){newState=newState(storeState);}storeState=typeof newState===\"object\"?Object.freeze({...storeState,...newState}):newState;// Update all the listeners / setters with the new value\nstoreSetters.forEach(setter=>setter(storeState));};// Create the actual hook based on everything above\nfunction useStore(){// Create the hook we are going to use as a listener\nconst[state,setState]=useState(storeState);// If we unmount the component using this hook, we need to remove the listener\n// @ts-ignore\nuseEffect(()=>{// But right now, we need to add the listener\nstoreSetters.add(setState);return()=>storeSetters.delete(setState);},[]);// If Data context exists, use Data, otherwise use vanilla React state\nif(useObserveData()===true){useObserveData();return[dataStore.state,setDataStore];}else{// Return the state and a function to update the central store\nreturn[state,setStoreState];}}return useStore;}\nexport const __FramerMetadata__ = {\"exports\":{\"createStore\":{\"type\":\"function\",\"annotations\":{\"framerContractVersion\":\"1\"}},\"__FramerMetadata__\":{\"type\":\"variable\"}}}\n//# sourceMappingURL=./createStore.map","/*\n * createStore (framer/store@1.0.1)\n *\n * Learn More: https://www.framer.com/asset-urls\n */\n\nexport * from \"https://framerusercontent.com/modules/vj7bFUjvEQFgEzNBkdoG/vf3CKm378wlVcBk7IhSU/createStore.js\"\n","// Store management for FormKit\n// Based on CMS Filter pattern\nimport{createStore}from\"https://framer.com/m/framer/store.js@^1.0\";import{RenderTarget}from\"framer\";// Track initialized forms (simple Set, no hooks)\nconst initializedForms=new Set;// Helper to check if a form has been initialized\nexport const isFormInitialized=formId=>{return initializedForms.has(formId);};// Global stores per form ID\nconst formStores=new Map;// Helper to get or create store for form\nexport const getFormStore=formId=>{if(!formStores.has(formId)){const newStore=createStore({currentStep:0,totalSteps:1,stepsInitialized:false,data:{},errors:{},touched:{},visitedSteps:[0],stepHistory:[0],completedSteps:[],isSubmitting:false,isCompleted:false,submitAttempted:false,submitState:\"idle\",nextRules:[],previousRules:[],submitSuccessRules:[]});formStores.set(formId,newStore);// Track initialization without using hooks (hooks cannot be called in regular functions!)\ninitializedForms.add(formId);}return formStores.get(formId);};// Helper to get store key - prioritizes manual storeKey over formId\nexport const getFormStoreKey=(formId,manualStoreKey)=>{// If manual store key is provided and not \"auto\", use it\nif(manualStoreKey&&manualStoreKey.trim()!==\"\"&&manualStoreKey!==\"auto\"){return manualStoreKey.trim();}// Otherwise use formId or default\nreturn formId||\"default\";};// Helper to save form to localStorage\nexport const saveFormToLocalStorage=(formId,state)=>{try{const key=`formkit:${formId}`;const data={currentStep:state.currentStep,data:state.data,visitedSteps:state.visitedSteps,stepHistory:state.stepHistory,completedSteps:state.completedSteps,lastSaved:Date.now()};localStorage.setItem(key,JSON.stringify(data));}catch(error){console.error(\"Failed to save form to localStorage:\",error);}};// Helper to load form from localStorage\nexport const loadFormFromLocalStorage=formId=>{try{const key=`formkit:${formId}`;const saved=localStorage.getItem(key);if(saved){return JSON.parse(saved);}}catch(error){console.error(\"Failed to load form from localStorage:\",error);}return null;};// Helper to clear form from localStorage\nexport const clearFormFromLocalStorage=formId=>{try{const key=`formkit:${formId}`;localStorage.removeItem(key);}catch(error){console.error(\"Failed to clear form from localStorage:\",error);}};// Helper to parse URL parameters for prefill\nexport const parseUrlParams=()=>{const params={};try{const urlParams=new URLSearchParams(window.location.search);urlParams.forEach((value,key)=>{params[key]=value;});}catch(error){console.error(\"Failed to parse URL parameters:\",error);}return params;};// Utility function to generate random strings (for unique IDs)\nexport function generateRandomId(length=8){const chars=\"ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789\";let result=\"\";for(let i=0;i<length;i++){result+=chars.charAt(Math.floor(Math.random()*chars.length));}return result;}// RenderTarget helpers\nexport const isPreview=RenderTarget.current()===RenderTarget.preview;export const isCanvas=RenderTarget.current()===RenderTarget.canvas;export const isExport=RenderTarget.current()===RenderTarget.export;\nexport const __FramerMetadata__ = {\"exports\":{\"isCanvas\":{\"type\":\"variable\",\"annotations\":{\"framerContractVersion\":\"1\"}},\"getFormStore\":{\"type\":\"variable\",\"annotations\":{\"framerContractVersion\":\"1\"}},\"getFormStoreKey\":{\"type\":\"variable\",\"annotations\":{\"framerContractVersion\":\"1\"}},\"generateRandomId\":{\"type\":\"function\",\"annotations\":{\"framerContractVersion\":\"1\"}},\"isPreview\":{\"type\":\"variable\",\"annotations\":{\"framerContractVersion\":\"1\"}},\"isFormInitialized\":{\"type\":\"variable\",\"annotations\":{\"framerContractVersion\":\"1\"}},\"parseUrlParams\":{\"type\":\"variable\",\"annotations\":{\"framerContractVersion\":\"1\"}},\"loadFormFromLocalStorage\":{\"type\":\"variable\",\"annotations\":{\"framerContractVersion\":\"1\"}},\"saveFormToLocalStorage\":{\"type\":\"variable\",\"annotations\":{\"framerContractVersion\":\"1\"}},\"isExport\":{\"type\":\"variable\",\"annotations\":{\"framerContractVersion\":\"1\"}},\"clearFormFromLocalStorage\":{\"type\":\"variable\",\"annotations\":{\"framerContractVersion\":\"1\"}},\"FormKitStore\":{\"type\":\"tsType\",\"annotations\":{\"framerContractVersion\":\"1\"}},\"__FramerMetadata__\":{\"type\":\"variable\"}}}\n//# sourceMappingURL=./Store_management.map","const navigationRegistry=new Map;export const registerFormKitNavigation=(formId,handlers)=>{navigationRegistry.set(formId,handlers);};export const unregisterFormKitNavigation=formId=>{navigationRegistry.delete(formId);};export const getFormKitNavigation=formId=>{return navigationRegistry.get(formId)||null;};\nexport const __FramerMetadata__ = {\"exports\":{\"unregisterFormKitNavigation\":{\"type\":\"variable\",\"annotations\":{\"framerContractVersion\":\"1\"}},\"registerFormKitNavigation\":{\"type\":\"variable\",\"annotations\":{\"framerContractVersion\":\"1\"}},\"getFormKitNavigation\":{\"type\":\"variable\",\"annotations\":{\"framerContractVersion\":\"1\"}},\"FormKitNavigationHandlers\":{\"type\":\"tsType\",\"annotations\":{\"framerContractVersion\":\"1\"}},\"__FramerMetadata__\":{\"type\":\"variable\"}}}\n//# sourceMappingURL=./Form_navigation.map","/**\r\n * HiddenField - Utility component to hide Framer's container wrapper\r\n * \r\n * When a FormKit field is conditionally hidden, this component returns\r\n * a marker element with CSS that hides the parent Framer container.\r\n * This prevents empty gaps in the layout.\r\n */// CSS to hide Framer container wrapper when field is hidden\nimport{jsx as _jsx}from\"react/jsx-runtime\";const HIDDEN_FIELD_CSS=`\r\n[class*=\"-container\"]:has([data-formkit-hidden=\"true\"]) {\r\n    margin: 0 !important;\r\n    padding: 0 !important;\r\n    min-height: 0 !important;\r\n    min-width: 0 !important;\r\n}\r\n\r\n[class*=\"-container\"]:has([data-formkit-hidden=\"true\"]):not(:has([class*=\"-container\"] [data-formkit-hidden=\"true\"])) {\r\n    display: none !important;\r\n}\r\n    \r\n`;// Track if CSS has been injected (singleton pattern)\nlet cssInjected=false;/**\r\n * Injects global CSS once to hide Framer containers with hidden FormKit fields\r\n */export const injectHiddenFieldCSS=()=>{if(cssInjected)return;if(typeof document===\"undefined\")return;const style=document.createElement(\"style\");style.setAttribute(\"data-formkit-hidden-css\",\"true\");style.textContent=HIDDEN_FIELD_CSS;document.head.appendChild(style);cssInjected=true;};/**\r\n * Returns a hidden marker element that triggers CSS to hide parent container.\r\n * Use this instead of `return null` when conditionally hiding a field.\r\n * \r\n * @example\r\n * if (!isVisible) return <HiddenFieldMarker />\r\n */export const HiddenFieldMarker=()=>{// Inject CSS on first render (if not already injected)\ninjectHiddenFieldCSS();return /*#__PURE__*/_jsx(\"div\",{className:\"sithick\",\"data-formkit-hidden\":\"true\",style:{display:\"none\"},\"aria-hidden\":\"true\"});};export default HiddenFieldMarker;\nexport const __FramerMetadata__ = {\"exports\":{\"HiddenFieldMarker\":{\"type\":\"variable\",\"annotations\":{\"framerContractVersion\":\"1\"}},\"default\":{\"type\":\"variable\",\"annotations\":{\"framerContractVersion\":\"1\"}},\"injectHiddenFieldCSS\":{\"type\":\"variable\",\"annotations\":{\"framerContractVersion\":\"1\"}},\"__FramerMetadata__\":{\"type\":\"variable\"}}}\n//# sourceMappingURL=./HiddenFieldMarker.map","/**\r\n * FormKitNext - Next Step Button\r\n *\r\n * Button to navigate to the next form step.\r\n *\r\n * Features:\r\n * - Auto-connects to form navigation\r\n * - Validates all fields before proceeding\r\n * - Shows error state when validation fails\r\n * - Customizable styling OR custom component with variants\r\n * - Auto-hides on last step (in preview)\r\n */import{jsx as _jsx,jsxs as _jsxs}from\"react/jsx-runtime\";import{addPropertyControls,ControlType,RenderTarget}from\"framer\";import{useState,useEffect,useRef,cloneElement}from\"react\";import{getFormStore,getFormStoreKey}from\"https://framerusercontent.com/modules/W9pGMfwOEUT2E0G0vdr3/42YKtSLeppXsa3v6m16i/Store_management.js\";import{getFormKitNavigation}from\"https://framerusercontent.com/modules/3iJH2tW5QUFgpH9So3nO/UF4nz2hAgJN545Fau7sS/Form_navigation.js\";import{HiddenFieldMarker}from\"https://framerusercontent.com/modules/zT6ckO4RKI5zB9JzgGVW/5pPr41RBexGJfYLsBNcj/HiddenFieldMarker.js\";/**\r\n * @framerIntrinsicWidth 300\r\n * @framerSupportedLayoutHeight auto\r\n * @framerSupportedLayoutWidth any-prefer-fixed\r\n * @framerDisableUnlink\r\n */export default function FormKitNext(props){const{formId=\"default\",// Button type\nbuttonType=\"default\",customButton,variantMappings={defaultVariant:\"default\",errorVariant:\"error\"},// Default mode props\ntext=\"Next\",errorText=\"Please fix errors\",errorDuration=2e3,hideOnLastStep=true,disabled=false,style,buttonStyles={},styling={},...rest}=props;const{buttonStyles:buttonCustomStyles={},hoverStyles={},errorStyles={}}=styling;const actualFormId=getFormStoreKey(formId,\"auto\");const useStore=getFormStore(actualFormId);const[state,setState]=useStore();const[buttonState,setButtonState]=useState(\"idle\");const[isProcessing,setIsProcessing]=useState(false);// Create a ref to access the latest state inside async callbacks (avoid stale closure)\nconst stateRef=useRef(state);const containerRef=useRef(null);const clickLockRef=useRef(false);const startValidationTimerRef=useRef(null);const evaluateValidationTimerRef=useRef(null);useEffect(()=>{stateRef.current=state;},[state]);useEffect(()=>{return()=>{if(startValidationTimerRef.current){window.clearTimeout(startValidationTimerRef.current);}if(evaluateValidationTimerRef.current){window.clearTimeout(evaluateValidationTimerRef.current);}};},[]);const totalSteps=Math.max(1,Number(state.totalSteps)||1);const currentStep=Math.max(0,Number(state.currentStep)||0);const stepsInitialized=!!state.stepsInitialized;const isLastStep=currentStep>=totalSteps-1;const hasMultipleSteps=totalSteps>1;const shouldTreatAsLastStep=stepsInitialized&&hasMultipleSteps&&isLastStep;const isCompleted=!!state.isCompleted;const isCanvas=RenderTarget.current()===RenderTarget.canvas;// Auto-reset error state after duration\nuseEffect(()=>{if(buttonState===\"error\"&&errorDuration>0){const timer=setTimeout(()=>{setButtonState(\"idle\");},errorDuration);return()=>clearTimeout(timer);}},[buttonState,errorDuration]);// Auto-reset error state when all errors are cleared\nuseEffect(()=>{if(buttonState===\"error\"){const hasErrors=Object.keys(state.errors||{}).length>0;if(!hasErrors){setButtonState(\"idle\");}}},[state.errors,buttonState]);// Hide only for true multi-step forms.\n// If step metadata is missing/invalid (common with mismatched formId), keep button visible.\nif(hideOnLastStep&&shouldTreatAsLastStep&&!isCanvas){return /*#__PURE__*/_jsx(HiddenFieldMarker,{});}// When MultiStep has switched to success state, hide navigation in preview/live.\nif(isCompleted&&!isCanvas){return /*#__PURE__*/_jsx(HiddenFieldMarker,{});}const clearValidationTimers=()=>{if(startValidationTimerRef.current){window.clearTimeout(startValidationTimerRef.current);startValidationTimerRef.current=null;}if(evaluateValidationTimerRef.current){window.clearTimeout(evaluateValidationTimerRef.current);evaluateValidationTimerRef.current=null;}};const releaseClickLock=()=>{clickLockRef.current=false;setIsProcessing(false);};const handleClick=()=>{if(disabled||shouldTreatAsLastStep||isCompleted||clickLockRef.current)return;clickLockRef.current=true;setIsProcessing(true);const requestedStep=Number(stateRef.current?.currentStep)||0;const navigation=getFormKitNavigation(actualFormId);console.log(\"[FormKitNext] handleClick\",{formId:actualFormId,requestedStep:requestedStep+1,totalSteps,hasNavigation:!!navigation,nextRulesCount:stateRef.current?.nextRules?.length||0});clearValidationTimers();// Force fresh validation on every click (important for repeated attempts)\nsetState({submitAttempted:false,submitState:\"idle\",errors:{}});startValidationTimerRef.current=window.setTimeout(()=>{const beforeValidateState=stateRef.current;if((Number(beforeValidateState?.currentStep)||0)!==requestedStep){releaseClickLock();return;}setState({submitAttempted:true,submitState:\"validating\"});// Wait for field hooks to write errors into store\nevaluateValidationTimerRef.current=window.setTimeout(()=>{const currentState=stateRef.current;if((Number(currentState?.currentStep)||0)!==requestedStep){releaseClickLock();return;}const hasErrors=Object.keys(currentState.errors||{}).length>0;const hasNativeInvalidInCurrentStep=(()=>{try{const container=containerRef.current?.closest(\"form\")||document.body;const inputs=container.querySelectorAll('input[name]:not([type=\"hidden\"]), textarea[name], select[name]');for(const el of inputs){if(el.disabled)continue;if(el.offsetParent===null)continue;if(!el.checkValidity())return true;}return false;}catch{return false;}})();if(hasErrors||hasNativeInvalidInCurrentStep){setButtonState(\"error\");setState({submitState:\"error\"});releaseClickLock();return;}setButtonState(\"idle\");setState({submitAttempted:false,submitState:\"idle\"});console.log(\"[FormKitNext] validation passed\",{formId:actualFormId,currentStep:(Number(currentState?.currentStep)||0)+1,hasNavigation:!!navigation});if(navigation?.nextStep){navigation.nextStep();}else{console.warn(\"[FormKitNext] Missing navigation handler\",{formId:actualFormId,currentStep:(Number(currentState?.currentStep)||0)+1,totalSteps});}// Keep lock briefly so rapid clicks cannot skip multiple steps\nwindow.setTimeout(()=>{releaseClickLock();},300);},180);},10);};// ========================================================================\n// CUSTOM COMPONENT HELPERS\n// ========================================================================\nconst getCurrentVariant=()=>{if(buttonState===\"error\"){return variantMappings.errorVariant||\"error\";}return variantMappings.defaultVariant||\"default\";};/**\r\n     * Walk down the React element tree to find the actual Framer component\r\n     * (the one with propertyControls). Returns { component, chain } where\r\n     * chain is the array of wrapper elements from root to the component.\r\n     * Works across both canvas and preview wrapper structures.\r\n     */const extractActualComponent=(element,chain=[])=>{// Check if this element itself has propertyControls\nif(element?.type?.propertyControls){return{component:element,chain};}// Try to go deeper via children (single child)\nconst children=element?.props?.children;if(children&&typeof children===\"object\"&&!Array.isArray(children)){return extractActualComponent(children,[...chain,element]);}// Can't go deeper, return the element itself as fallback\nreturn{component:element,chain};};const detectVariantProperty=component=>{if(!component)return null;const propertyControls=component?.type?.propertyControls;if(!propertyControls)return null;for(const[propName,control]of Object.entries(propertyControls)){if(control.type===\"enum\"&&(propName.toLowerCase().includes(\"variant\")||propName.toLowerCase().includes(\"state\")||control.title?.toLowerCase().includes(\"variant\")||control.title?.toLowerCase().includes(\"state\"))){return propName;}}return null;};const renderSlotWithVariant=(slotComponent,variantName)=>{if(!slotComponent)return null;// Extract the actual component from whatever wrapper depth\nconst{component:actualComponent,chain}=extractActualComponent(slotComponent);// Auto-detect variant property on the actual component\nconst variantProp=detectVariantProperty(actualComponent);// If no variant prop found, just render as-is (safe fallback)\nif(!variantProp)return slotComponent;// Clone the actual component with the variant prop set\nconst modifiedComponent=/*#__PURE__*/cloneElement(actualComponent,{...actualComponent.props,[variantProp]:variantName});// Re-wrap with the original wrapper chain (rebuild from inside out)\nlet result=modifiedComponent;for(let i=chain.length-1;i>=0;i--){const wrapper=chain[i];result=/*#__PURE__*/cloneElement(wrapper,{...wrapper.props,children:result});}return result;};const renderCustomButtonPlaceholder=()=>{return /*#__PURE__*/_jsxs(\"div\",{style:{padding:\"24px\",textAlign:\"center\",backgroundColor:\"#f8f9fa\",border:\"2px dashed #dee2e6\",borderRadius:\"8px\",color:\"#6c757d\",width:\"100%\"},children:[/*#__PURE__*/_jsx(\"div\",{style:{fontSize:\"16px\",fontWeight:500,marginBottom:\"8px\",color:\"#495057\"},children:\"Connect Custom Button\"}),/*#__PURE__*/_jsx(\"div\",{style:{fontSize:\"14px\"},children:\"Add a component with 2 variants: default, error\"})]});};const renderCustomButton=()=>{const hasCustomButton=customButton&&Array.isArray(customButton)&&customButton.length>0;if(!hasCustomButton){if(isCanvas){return renderCustomButtonPlaceholder();}return /*#__PURE__*/_jsx(HiddenFieldMarker,{});}const currentVariant=getCurrentVariant();return renderSlotWithVariant(customButton[0],currentVariant);};// ========================================================================\n// RENDER\n// ========================================================================\n// Custom button mode\nif(buttonType===\"custom\"){return /*#__PURE__*/_jsx(\"div\",{ref:containerRef,style:{width:\"100%\"},children:/*#__PURE__*/_jsx(\"button\",{type:\"button\",onClick:handleClick,disabled:disabled||shouldTreatAsLastStep||isProcessing,style:{all:\"unset\",display:\"block\",width:\"100%\",cursor:disabled||shouldTreatAsLastStep||isProcessing?\"not-allowed\":\"pointer\",opacity:disabled||isProcessing?.5:1,boxSizing:\"border-box\"},children:renderCustomButton()})});}// Default button mode\nconst isError=buttonState===\"error\";return /*#__PURE__*/_jsx(\"button\",{...style,ref:containerRef,type:\"button\",onClick:handleClick,disabled:shouldTreatAsLastStep||disabled||isProcessing,style:{...style,width:\"100%\",padding:buttonCustomStyles.padding??\"12px 24px\",fontFamily:buttonCustomStyles.font?.fontFamily??\"inherit\",fontSize:buttonCustomStyles.font?.fontSize??14,fontWeight:buttonCustomStyles.font?.fontWeight??600,letterSpacing:buttonCustomStyles.font?.letterSpacing??undefined,lineHeight:buttonCustomStyles.font?.lineHeight??undefined,color:isError?errorStyles.color??\"#C62828\":buttonCustomStyles.color??\"#FFFFFF\",backgroundColor:isError?errorStyles.backgroundColor??\"#FFEBEE\":buttonCustomStyles.backgroundColor??\"#0099FF\",...buttonCustomStyles.border,borderColor:buttonCustomStyles.border?.borderColor??\"transparent\",borderRadius:`${buttonCustomStyles.borderRadius??6}px`,cursor:shouldTreatAsLastStep||disabled||isProcessing?\"not-allowed\":\"pointer\",opacity:shouldTreatAsLastStep||disabled||isProcessing?.5:1,transition:\"opacity 0.2s, transform 0.1s, background-color 0.2s, color 0.2s\",display:\"flex\",alignItems:\"center\",justifyContent:\"center\",gap:\"8px\",...buttonStyles},onMouseEnter:e=>{if(!shouldTreatAsLastStep&&!disabled&&!isError&&!isProcessing){if(hoverStyles.backgroundColor){e.currentTarget.style.backgroundColor=hoverStyles.backgroundColor;}if(hoverStyles.color){e.currentTarget.style.color=hoverStyles.color;}if(hoverStyles.borderColor){e.currentTarget.style.borderColor=hoverStyles.borderColor;}if(hoverStyles.opacity!==undefined){e.currentTarget.style.opacity=String(hoverStyles.opacity);}else if(!hoverStyles.backgroundColor){e.currentTarget.style.opacity=\"0.9\";}if(hoverStyles.scale){e.currentTarget.style.transform=`scale(${hoverStyles.scale})`;}}},onMouseLeave:e=>{if(!shouldTreatAsLastStep&&!disabled&&!isError&&!isProcessing){e.currentTarget.style.backgroundColor=buttonCustomStyles.backgroundColor??\"#0099FF\";e.currentTarget.style.color=buttonCustomStyles.color??\"#FFFFFF\";e.currentTarget.style.borderColor=buttonCustomStyles.border?.borderColor??\"transparent\";e.currentTarget.style.opacity=\"1\";e.currentTarget.style.transform=\"scale(1)\";}},onMouseDown:e=>{if(!shouldTreatAsLastStep&&!disabled&&!isError&&!isProcessing){e.currentTarget.style.transform=\"scale(0.98)\";}},onMouseUp:e=>{if(!shouldTreatAsLastStep&&!disabled&&!isError&&!isProcessing){e.currentTarget.style.transform=\"scale(1)\";}},children:isError?errorText:text});}addPropertyControls(FormKitNext,{formId:{type:ControlType.String,title:\"Form ID\",defaultValue:\"default\",description:\"Powered by [framerformkit](https://framerformkit.com)\"},// === BUTTON TYPE ===\nbuttonType:{type:ControlType.Enum,title:\"Button Type\",options:[\"default\",\"custom\"],optionTitles:[\"Default (Built-in)\",\"Your Component\"],defaultValue:\"default\",displaySegmentedControl:true,segmentedControlDirection:\"vertical\"},// === CUSTOM BUTTON SLOT ===\ncustomButton:{type:ControlType.Slot,title:\"Custom Button\",description:\"Connect a component with 2 variants: default, error\",maxCount:1,hidden:props=>props.buttonType!==\"custom\"},// === VARIANT MAPPINGS ===\nvariantMappings:{type:ControlType.Object,title:\"Variant Names\",description:\"Map your component's variant names to button states\",hidden:props=>props.buttonType!==\"custom\",controls:{defaultVariant:{type:ControlType.String,title:\"Default\",defaultValue:\"default\"},errorVariant:{type:ControlType.String,title:\"Error\",defaultValue:\"error\"}}},// === DEFAULT BUTTON TEXT ===\ntext:{type:ControlType.String,title:\"Button Text\",defaultValue:\"Next\",hidden:props=>props.buttonType===\"custom\"},errorText:{type:ControlType.String,title:\"Error Text\",defaultValue:\"Please fix errors\",hidden:props=>props.buttonType===\"custom\"},// === TIMING ===\nerrorDuration:{type:ControlType.Number,title:\"Error Duration (ms)\",defaultValue:2e3,min:0,max:1e4,step:100},// === BEHAVIOR ===\ndisabled:{type:ControlType.Boolean,title:\"Disabled\",defaultValue:false},hideOnLastStep:{type:ControlType.Boolean,title:\"Hide On Last\",defaultValue:true,description:\"Hide button at final step in preview/live\"},// === STYLING ===\nstyling:{type:ControlType.Object,buttonTitle:\"Styles\",hidden:props=>props.buttonType===\"custom\",controls:{buttonStyles:{type:ControlType.Object,buttonTitle:\"Button\",controls:{backgroundColor:{type:ControlType.Color,title:\"Background\",defaultValue:\"#0099FF\"},color:{type:ControlType.Color,title:\"Text Color\",defaultValue:\"#FFFFFF\"},font:{type:ControlType.Font,title:\"Font\",controls:\"extended\",displayFontSize:true,displayTextAlignment:false,defaultValue:{fontSize:14,fontWeight:600,fontFamily:\"Inter\"}},borderRadius:{type:ControlType.Number,title:\"Radius\",defaultValue:6,min:0,max:100},border:{type:ControlType.Border,title:\"Border\",defaultValue:{borderWidth:0,borderColor:\"transparent\",borderStyle:\"solid\"}},padding:{type:ControlType.Padding,title:\"Padding\",defaultValue:\"12px 24px 12px 24px\"}}},hoverStyles:{type:ControlType.Object,buttonTitle:\"Hover\",optional:true,controls:{backgroundColor:{type:ControlType.Color,title:\"Background\",defaultValue:\"#5042CC\"},color:{type:ControlType.Color,title:\"Text Color\",defaultValue:\"#FFFFFF\"},borderColor:{type:ControlType.Color,title:\"Border Color\",defaultValue:\"rgba(0, 0, 0, 0)\"},opacity:{type:ControlType.Number,title:\"Opacity\",min:0,max:1,step:.1,defaultValue:.9},scale:{type:ControlType.Number,title:\"Scale\",min:.8,max:1.2,step:.01,defaultValue:1}}},errorStyles:{type:ControlType.Object,buttonTitle:\"Error\",optional:true,controls:{backgroundColor:{type:ControlType.Color,title:\"Background\",defaultValue:\"#FFEBEE\"},color:{type:ControlType.Color,title:\"Text Color\",defaultValue:\"#C62828\"}}}}}});\nexport const __FramerMetadata__ = {\"exports\":{\"default\":{\"type\":\"reactComponent\",\"name\":\"FormKitNext\",\"slots\":[],\"annotations\":{\"framerIntrinsicWidth\":\"300\",\"framerSupportedLayoutHeight\":\"auto\",\"framerSupportedLayoutWidth\":\"any-prefer-fixed\",\"framerContractVersion\":\"1\",\"framerDisableUnlink\":\"\"}},\"__FramerMetadata__\":{\"type\":\"variable\"}}}\n//# sourceMappingURL=./FormKitNext.map","/**\r\n * FormKitProgressBar - Linear Progress Indicator\r\n *\r\n * A dedicated component for linear progress bars.\r\n * Automatically syncs with the form store.\r\n */import{jsx as _jsx,jsxs as _jsxs}from\"react/jsx-runtime\";import{addPropertyControls,ControlType,RenderTarget}from\"framer\";import{getFormStore,getFormStoreKey}from\"https://framerusercontent.com/modules/W9pGMfwOEUT2E0G0vdr3/42YKtSLeppXsa3v6m16i/Store_management.js\";/**\r\n * @framerIntrinsicWidth 300\r\n * @framerSupportedLayoutHeight auto\r\n * @framerSupportedLayoutWidth any-prefer-fixed\r\n * @framerDisableUnlink\r\n */export default function FormKitProgressBar(props){const{formId=\"default\",showLabels=true,labelFormat=\"count\",labelPosition=\"bottom\",labelGap=8,labels=[\"Step 1\",\"Step 2\",\"Step 3\"],font:rawFont={},textColor=\"#888888\",activeTextColor=\"#0099FF\",hideOnSuccess=true,containerStyle={background:\"transparent\",padding:\"0px\",border:{borderWidth:0,borderColor:\"transparent\",borderStyle:\"solid\"},radius:\"0px\"},barStyle={height:8,radius:4,fillType:\"solid\",activeColor:\"#0099FF\",gradientStartColor:\"#0099FF\",gradientEndColor:\"#8A7CFF\",gradientAngle:90,inactiveColor:\"#E0E0E0\"},textAlign=\"center\",style,...rest}=props;// Get or create store\nconst actualFormId=getFormStoreKey(formId,\"auto\");const useStore=getFormStore(actualFormId);const[state]=useStore();const isCanvas=RenderTarget.current()===RenderTarget.canvas;// Handle font defaults\nconst font={fontSize:12,fontFamily:\"Inter\",fontWeight:600,fontStyle:\"normal\",lineHeight:1.4,letterSpacing:0,...rawFont};const totalSteps=Math.max(1,Number(state.totalSteps)||1);const currentStep=Math.max(0,Math.min(Number(state.currentStep)||0,totalSteps-1));const activeBarBackground=barStyle.fillType===\"gradient\"?`linear-gradient(${barStyle.gradientAngle??90}deg, ${barStyle.gradientStartColor||barStyle.activeColor}, ${barStyle.gradientEndColor||barStyle.activeColor})`:barStyle.activeColor;const shouldHideOnSuccess=!isCanvas&&hideOnSuccess&&(state?.isCompleted||state?.submitState===\"success\");// Calculate percentage\nconst percentage=totalSteps>0?Math.round((currentStep+1)/totalSteps*100):0;return /*#__PURE__*/_jsxs(\"div\",{...style,style:{...style,display:\"flex\",flexDirection:\"column\",gap:`${labelGap}px`,fontFamily:font.fontFamily,fontWeight:font.fontWeight,fontStyle:font.fontStyle,lineHeight:font.lineHeight,letterSpacing:font.letterSpacing,opacity:shouldHideOnSuccess?0:1,pointerEvents:shouldHideOnSuccess?\"none\":\"auto\",transition:\"opacity 0.25s ease\",backgroundColor:containerStyle.background,padding:containerStyle.padding,border:`${containerStyle.border?.borderWidth??0}px ${containerStyle.border?.borderStyle??\"solid\"} ${containerStyle.border?.borderColor??\"transparent\"}`,borderRadius:containerStyle.radius,boxSizing:\"border-box\"},children:[showLabels&&labelPosition===\"top\"&&labelFormat===\"count\"&&/*#__PURE__*/_jsxs(\"div\",{style:{fontSize:`${font.fontSize}px`,lineHeight:font.lineHeight,letterSpacing:font.letterSpacing,color:textColor,textAlign:textAlign,width:\"100%\"},children:[\"Step \",currentStep+1,\" of \",totalSteps]}),showLabels&&labelPosition===\"top\"&&labelFormat===\"names\"&&/*#__PURE__*/_jsx(\"div\",{style:{display:\"flex\",justifyContent:\"space-between\",width:\"100%\",gap:\"8px\"},children:Array.from({length:totalSteps}).map((_,index)=>{const labelText=labels[index]||`Step ${index+1}`;const isActive=index===currentStep;const isCompleted=index<currentStep;const isHighlighted=isActive||isCompleted;return /*#__PURE__*/_jsx(\"div\",{style:{fontSize:`${font.fontSize}px`,lineHeight:font.lineHeight,letterSpacing:font.letterSpacing,color:isHighlighted?activeTextColor:textColor,fontWeight:isHighlighted?600:font.fontWeight,textAlign:index===0?\"left\":index===totalSteps-1?\"right\":\"center\",flex:1,transition:\"color 0.3s ease\"},children:labelText},index);})}),/*#__PURE__*/_jsx(\"div\",{style:{width:\"100%\",height:`${barStyle.height}px`,backgroundColor:barStyle.inactiveColor,borderRadius:`${barStyle.radius}px`,overflow:\"hidden\"},children:/*#__PURE__*/_jsx(\"div\",{style:{width:`${percentage}%`,height:\"100%\",background:activeBarBackground,transition:\"width 0.3s ease\",borderRadius:`${barStyle.radius}px`}})}),showLabels&&labelPosition===\"bottom\"&&labelFormat===\"count\"&&/*#__PURE__*/_jsxs(\"div\",{style:{fontSize:`${font.fontSize}px`,lineHeight:font.lineHeight,letterSpacing:font.letterSpacing,color:textColor,textAlign:textAlign,width:\"100%\"},children:[\"Step \",currentStep+1,\" of \",totalSteps]}),showLabels&&labelPosition===\"bottom\"&&labelFormat===\"names\"&&/*#__PURE__*/_jsx(\"div\",{style:{display:\"flex\",justifyContent:\"space-between\",width:\"100%\",gap:\"8px\"},children:Array.from({length:totalSteps}).map((_,index)=>{const labelText=labels[index]||`Step ${index+1}`;const isActive=index===currentStep;const isCompleted=index<currentStep;const isHighlighted=isActive||isCompleted;return /*#__PURE__*/_jsx(\"div\",{style:{fontSize:`${font.fontSize}px`,lineHeight:font.lineHeight,letterSpacing:font.letterSpacing,color:isHighlighted?activeTextColor:textColor,fontWeight:isHighlighted?600:font.fontWeight,textAlign:index===0?\"left\":index===totalSteps-1?\"right\":\"center\",flex:1,transition:\"color 0.3s ease\"},children:labelText},index);})})]});}// Property Controls\naddPropertyControls(FormKitProgressBar,{// 1. Core\nformId:{type:ControlType.String,title:\"Form ID\",defaultValue:\"default\",description:\"Must match FormKitMultiStep formId. Powered by [framerformkit](https://framerformkit.com)\"},// 2. Layout & Typography\nshowLabels:{type:ControlType.Boolean,title:\"Show Labels\",defaultValue:true},labelPosition:{type:ControlType.Enum,title:\"Position\",defaultValue:\"bottom\",options:[\"top\",\"bottom\"],optionTitles:[\"Top\",\"Bottom\"],displaySegmentedControl:true,hidden:props=>!props.showLabels},labelGap:{type:ControlType.Number,title:\"Gap\",defaultValue:8,min:0,max:50,hidden:props=>!props.showLabels},labelFormat:{type:ControlType.Enum,title:\"Format\",defaultValue:\"count\",options:[\"count\",\"names\"],optionTitles:[\"X of Y\",\"Step Names\"],hidden:props=>!props.showLabels},labels:{type:ControlType.Array,title:\"Labels\",control:{type:ControlType.String},defaultValue:[\"Event Details\",\"Venue & Catering\",\"Guest List\"],hidden:props=>!props.showLabels||props.labelFormat!==\"names\"},textAlign:{type:ControlType.Enum,title:\"Alignment\",defaultValue:\"center\",options:[\"left\",\"center\",\"right\"],optionTitles:[\"Left\",\"Center\",\"Right\"],hidden:props=>!props.showLabels||props.labelFormat===\"names\"},font:{type:ControlType.Font,title:\"Font\",controls:\"extended\",displayFontSize:true,displayTextAlignment:false,defaultValue:{fontSize:12},hidden:props=>!props.showLabels},textColor:{type:ControlType.Color,title:\"Text Color\",defaultValue:\"#888888\",hidden:props=>!props.showLabels},activeTextColor:{type:ControlType.Color,title:\"Active Text\",defaultValue:\"#0099FF\",hidden:props=>!props.showLabels||props.labelFormat!==\"names\"},hideOnSuccess:{type:ControlType.Boolean,title:\"Hide On Success\",defaultValue:true,description:\"Fade the progress bar out after successful submit\"},containerStyle:{type:ControlType.Object,title:\"Container\",controls:{background:{type:ControlType.Color,title:\"Fill\",defaultValue:\"transparent\"},padding:{type:ControlType.Padding,title:\"Padding\",defaultValue:\"0px\"},border:{type:ControlType.Border,title:\"Border\",defaultValue:{borderWidth:0,borderColor:\"transparent\",borderStyle:\"solid\"}},radius:{type:ControlType.BorderRadius,title:\"Radius\",defaultValue:\"0px\"}}},// 4. Bar Configuration\nbarStyle:{type:ControlType.Object,title:\"Bar Style\",controls:{height:{type:ControlType.Number,title:\"Height\",defaultValue:8},radius:{type:ControlType.Number,title:\"Radius\",defaultValue:4},fillType:{type:ControlType.Enum,title:\"Fill Type\",options:[\"solid\",\"gradient\"],optionTitles:[\"Solid\",\"Gradient\"],defaultValue:\"solid\",displaySegmentedControl:true},activeColor:{type:ControlType.Color,title:\"Active\",defaultValue:\"#0099FF\",hidden:props=>props.fillType!==\"solid\"},gradientStartColor:{type:ControlType.Color,title:\"Gradient 1\",defaultValue:\"#0099FF\",hidden:props=>props.fillType!==\"gradient\"},gradientEndColor:{type:ControlType.Color,title:\"Gradient 2\",defaultValue:\"#8A7CFF\",hidden:props=>props.fillType!==\"gradient\"},gradientAngle:{type:ControlType.Number,title:\"Angle\",defaultValue:90,min:0,max:360,step:1,unit:\"deg\",hidden:props=>props.fillType!==\"gradient\"},inactiveColor:{type:ControlType.Color,title:\"Inactive\",defaultValue:\"#E0E0E0\"}}}});\nexport const __FramerMetadata__ = {\"exports\":{\"default\":{\"type\":\"reactComponent\",\"name\":\"FormKitProgressBar\",\"slots\":[],\"annotations\":{\"framerSupportedLayoutWidth\":\"any-prefer-fixed\",\"framerIntrinsicWidth\":\"300\",\"framerContractVersion\":\"1\",\"framerDisableUnlink\":\"\",\"framerSupportedLayoutHeight\":\"auto\"}},\"__FramerMetadata__\":{\"type\":\"variable\"}}}\n//# sourceMappingURL=./FormKitProgressBar.map","const RTL_LANG_PATTERN=/^(ar|fa|he|ku|ps|sd|ug|ur)\\b/i;const RTL_TEXT_PATTERN=/[\\u0590-\\u05FF\\u0600-\\u06FF\\u0750-\\u077F\\u08A0-\\u08FF\\uFB1D-\\uFDFF\\uFE70-\\uFEFF]/;const LTR_TEXT_PATTERN=/[A-Za-z\\u00C0-\\u024F]/;export function getFormKitDirection(style,textSamples=[]){const explicitDirection=style?.direction;if(explicitDirection===\"rtl\"||explicitDirection===\"ltr\"){return explicitDirection;}// In Framer Canvas, translated content can change before the page/document\n// direction updates. Prefer the field's own content when we have it.\nfor(const sample of textSamples){if(sample===null||sample===undefined)continue;const text=String(sample).trim();if(!text)continue;if(RTL_TEXT_PATTERN.test(text))return\"rtl\";if(LTR_TEXT_PATTERN.test(text))return\"ltr\";}if(typeof document!==\"undefined\"){const documentDirection=document.documentElement?.dir||document.body?.dir;if(documentDirection===\"rtl\"||documentDirection===\"ltr\"){return documentDirection;}const documentLanguage=document.documentElement?.lang||document.body?.lang||\"\";if(RTL_LANG_PATTERN.test(documentLanguage)){return\"rtl\";}}return\"ltr\";}export function getTextAlignForDirection(textAlign,direction){if(textAlign)return textAlign;return direction===\"rtl\"?\"right\":\"left\";}\nexport const __FramerMetadata__ = {\"exports\":{\"getTextAlignForDirection\":{\"type\":\"function\",\"annotations\":{\"framerContractVersion\":\"1\"}},\"FormKitDirection\":{\"type\":\"tsType\",\"annotations\":{\"framerContractVersion\":\"1\"}},\"getFormKitDirection\":{\"type\":\"function\",\"annotations\":{\"framerContractVersion\":\"1\"}},\"__FramerMetadata__\":{\"type\":\"variable\"}}}\n//# sourceMappingURL=./Direction.map","import{jsx as _jsx,jsxs as _jsxs}from\"react/jsx-runtime\";import{addPropertyControls,ControlType,RenderTarget}from\"framer\";import{useEffect,useRef,cloneElement}from\"react\";import{getFormStore,getFormStoreKey,isPreview,clearFormFromLocalStorage}from\"https://framerusercontent.com/modules/W9pGMfwOEUT2E0G0vdr3/42YKtSLeppXsa3v6m16i/Store_management.js\";import{getFormKitNavigation}from\"https://framerusercontent.com/modules/3iJH2tW5QUFgpH9So3nO/UF4nz2hAgJN545Fau7sS/Form_navigation.js\";import{HiddenFieldMarker}from\"https://framerusercontent.com/modules/zT6ckO4RKI5zB9JzgGVW/5pPr41RBexGJfYLsBNcj/HiddenFieldMarker.js\";import{getFormKitDirection}from\"https://framerusercontent.com/modules/TnGeMluKUv3ZoPWbVX5z/6AL0m280OlZ8wllCKODq/Direction.js\";const getResetData=currentData=>{const resetData={};Object.keys(currentData||{}).forEach(key=>{const value=currentData[key];if(typeof value===\"boolean\"){resetData[key]=false;}else if(Array.isArray(value)){resetData[key]=[];}else{resetData[key]=\"\";}});return resetData;};/**\r\n * FormKitSubmit - Submit Form Button\r\n *\r\n * Button to submit the form data.\r\n *\r\n * Features:\r\n * - Auto-connects to form submission\r\n * - Loading state during submission\r\n * - Validates all fields before submit\r\n * - Shows success message after submission\r\n * - Customizable styling OR custom component with variants\r\n * - Shows only on last step (optional)\r\n *\r\n/**\r\n * @framerIntrinsicWidth 300\r\n * @framerSupportedLayoutHeight auto\r\n * @framerSupportedLayoutWidth any\r\n * @framerDisableUnlink\r\n */export default function FormKitSubmit(props){const{formId=\"default\",// Button type\nbuttonType=\"default\",customButton,variantMappings={defaultVariant:\"default\",loadingVariant:\"loading\",successVariant:\"success\",errorVariant:\"error\"},// Default mode props\ntext=\"Submit\",loadingText=\"Submitting...\",successText=\"Form submitted successfully!\",errorText=\"Please fix the errors above\",showOnlyOnLastStep=true,disabled=false,loadingDuration=1e3,successDuration=3e3,errorDuration=3e3,style,buttonStyles={},styling={},...rest}=props;const{buttonStyles:buttonCustomStyles={},hoverStyles={},successStyles={},errorStyles={}}=styling;const actualFormId=getFormStoreKey(formId,\"auto\");const useStore=getFormStore(actualFormId);const[state,setState]=useStore();// Create a ref to hold the latest state for async operations\n// This fixes the \"stale state\" issue in setTimeout\nconst stateRef=useRef(state);useEffect(()=>{stateRef.current=state;},[state]);const isLastStep=state.currentStep>=state.totalSteps-1;const isSubmitting=state.isSubmitting;const submitState=state.submitState||\"idle\";const isCompleted=!!state.isCompleted;const stepsInitialized=!!state.stepsInitialized;// Track if we're waiting to check validation\nconst validationCheckRef=useRef(false);const containerRef=useRef(null);const isCanvas=RenderTarget.current()===RenderTarget.canvas;const componentDirection=getFormKitDirection(style,[text,loadingText,successText,errorText]);// Disable native browser validation tooltips on the parent <form>\n// FormKit handles all validation UI, so the browser's default\n// \"Please fill out this field.\" popups are not needed.\nuseEffect(()=>{const parentForm=containerRef.current?.closest(\"form\");if(parentForm){parentForm.setAttribute(\"novalidate\",\"\");}},[]);// Check native HTML5 validation for non-FormKit inputs\nconst checkNativeValidation=()=>{// Find the closest form or container\nconst container=containerRef.current?.closest(\"form\")||document.body;// Find all required inputs that don't have FormKit data attributes\nconst nativeInputs=container.querySelectorAll(\"input[required]:not([data-formkit]), textarea[required]:not([data-formkit]), select[required]:not([data-formkit])\");let isValid=true;for(const input of nativeInputs){if(!input.checkValidity()){// Don't use reportValidity() — it triggers the browser's default\n// tooltip (\"Please fill out this field.\"). FormKit's own error\n// messages handle validation UI instead.\nisValid=false;break;// Stop at first invalid element\n}}return isValid;};// Handle click - trigger validation\nconst handleClick=()=>{if(disabled||isSubmitting||submitState===\"validating\")return;console.log(\"[FormKitSubmit] handleClick\",{formId:actualFormId,currentStep:state.currentStep+1,totalSteps:state.totalSteps,submitRulesCount:state.submitSuccessRules?.length||0});// Always trigger validation on click (don't require double-click after error)\n// Reset first, then trigger validation after a tick\nsetState({submitAttempted:false,submitState:\"idle\"});// Wait a tick, then trigger validation\nsetTimeout(()=>{setState({submitAttempted:true,submitState:\"validating\"});validationCheckRef.current=true;},10);};// Effect to auto-reset error state after errorDuration\nuseEffect(()=>{if(submitState===\"error\"&&errorDuration>0){const timer=setTimeout(()=>{setState({submitState:\"idle\",submitAttempted:false});},errorDuration);return()=>clearTimeout(timer);}},[submitState,errorDuration]);// Effect to auto-reset success state after successDuration\nuseEffect(()=>{if(submitState===\"success\"&&successDuration>0){const timer=setTimeout(()=>{setState({submitState:\"idle\",submitAttempted:false});},successDuration);return()=>clearTimeout(timer);}},[submitState,successDuration]);// Effect to auto-reset error state when all errors are cleared (user filled form correctly)\nuseEffect(()=>{if(submitState===\"error\"){const hasErrors=Object.keys(state.errors||{}).length>0;if(!hasErrors){// All errors cleared - reset button to idle\nsetState({submitState:\"idle\"});}}},[state.errors,submitState]);// useEffect to check errors after validation (runs after re-render with fresh state)\nuseEffect(()=>{if(submitState!==\"validating\"||!validationCheckRef.current)return;// Wait for fields to validate\nconst timer=setTimeout(()=>{validationCheckRef.current=false;// Check FormKit errors (using REF ensuring fresh state)\nconst hasFormKitErrors=Object.keys(stateRef.current.errors||{}).length>0;// Check native HTML5 validation\nconst nativeValid=checkNativeValidation();if(hasFormKitErrors||!nativeValid){setState({submitState:\"error\"});}else{const navigation=getFormKitNavigation(actualFormId);console.log(\"[FormKitSubmit] validation passed\",{formId:actualFormId,hasNavigation:!!navigation,currentStep:(stateRef.current.currentStep||0)+1,totalSteps:stateRef.current.totalSteps});// No errors, proceed with submission\n// Helper for minimum delay\nconst wait=ms=>new Promise(resolve=>setTimeout(resolve,ms));if(navigation?.handleSubmit){// Use FormKit navigation handler (e.g. from FormKitMultiStep)\nPromise.all([navigation.handleSubmit(),wait(loadingDuration)]).then(()=>{const resetData=getResetData(stateRef.current.data);// Reset native form if exists\nconst parentForm=containerRef.current?.closest(\"form\");if(parentForm)parentForm.reset();clearFormFromLocalStorage(actualFormId);setState({currentStep:0,visitedSteps:[0],stepHistory:[0],completedSteps:[],submitState:\"success\",submitAttempted:false,isSubmitting:false,data:resetData,errors:{},touched:{}});}).catch(()=>{setState({submitState:\"error\"});});}else{console.warn(\"[FormKitSubmit] Missing navigation handler, using fallback submit path\",{formId:actualFormId,currentStep:(stateRef.current.currentStep||0)+1,totalSteps:stateRef.current.totalSteps});// No navigation handler found.\n// Fallback 1: Try to submit a parent <form> natively\nconst parentForm=containerRef.current?.closest(\"form\");if(parentForm){setState({isSubmitting:true});wait(loadingDuration).then(()=>{// Reset state before submitting because page might reload\n// or if it's an AJAX form, we want to show success.\n// However, native submit usually reloads.\n// Let's try requestSubmit first which triggers onSubmit handlers.\nif(typeof parentForm.requestSubmit===\"function\"){parentForm.requestSubmit();}else{parentForm.submit();}// If page doesn't reload immediately, show success\nconst resetData=getResetData(stateRef.current.data);// Reset native form if exists\nif(parentForm)parentForm.reset();clearFormFromLocalStorage(actualFormId);setState({currentStep:0,visitedSteps:[0],stepHistory:[0],completedSteps:[],submitState:\"success\",submitAttempted:false,isSubmitting:false,data:resetData,errors:{},touched:{}});});}else{// Fallback 2: Just simulate loading then success (Legacy/Demo behavior)\nsetState({isSubmitting:true})// Manually show loading\n;wait(loadingDuration).then(()=>{const resetData=getResetData(stateRef.current.data);// Reset native form if exists\nconst parentForm=containerRef.current?.closest(\"form\");if(parentForm)parentForm.reset();clearFormFromLocalStorage(actualFormId);setState({currentStep:0,visitedSteps:[0],stepHistory:[0],completedSteps:[],submitState:\"success\",submitAttempted:false,isSubmitting:false,data:resetData,errors:{},touched:{}});});}}}},100);return()=>clearTimeout(timer);},[submitState,state.errors])// state.errors dependency still good to re-trigger if logic changes, but ref covers value access\n;// Hide if not on last step in preview/live (always show on canvas for editing)\nif(showOnlyOnLastStep&&(!stepsInitialized||!isLastStep)&&!isCanvas){// [DEBUG] Log reason for hiding to help debugging\nif(isPreview){console.warn(`[FormKitSubmit] Button Hidden (${actualFormId})\n`+`Reason: 'Show Only On Last Step' is enabled and step metadata is ${stepsInitialized?`current step is ${state.currentStep+1} of ${state.totalSteps}`:\"still initializing\"}.\n`+`If this is unexpected, check if your 'Form ID' matches your other form components.`);}return /*#__PURE__*/_jsx(HiddenFieldMarker,{});}// When MultiStep shows success state, hide submit button in preview/live.\nif(isCompleted&&!isCanvas){return /*#__PURE__*/_jsx(HiddenFieldMarker,{});}// ========================================================================\n// CUSTOM COMPONENT HELPERS\n// ========================================================================\n/**\r\n     * Get current variant based on button state\r\n     */const getCurrentVariant=()=>{if(isSubmitting||submitState===\"validating\"){return variantMappings.loadingVariant||\"loading\";}if(submitState===\"success\"){return variantMappings.successVariant||\"success\";}if(submitState===\"error\"){return variantMappings.errorVariant||\"error\";}return variantMappings.defaultVariant||\"default\";};/**\r\n     * Walk down the React element tree to find the actual Framer component\r\n     * (the one with propertyControls). Returns { component, chain } where\r\n     * chain is the array of wrapper elements from root to the component.\r\n     * Works across both canvas and preview wrapper structures.\r\n     */const extractActualComponent=(element,chain=[])=>{// Check if this element itself has propertyControls\nif(element?.type?.propertyControls){return{component:element,chain};}// Try to go deeper via children (single child)\nconst children=element?.props?.children;if(children&&typeof children===\"object\"&&!Array.isArray(children)){return extractActualComponent(children,[...chain,element]);}// Can't go deeper, return the element itself as fallback\nreturn{component:element,chain};};/**\r\n     * Auto-detect variant property from a component\r\n     */const detectVariantProperty=component=>{if(!component)return null;const propertyControls=component?.type?.propertyControls;if(!propertyControls)return null;// Look for variant/state properties\nfor(const[propName,control]of Object.entries(propertyControls)){if(control.type===\"enum\"&&(propName.toLowerCase().includes(\"variant\")||propName.toLowerCase().includes(\"state\")||control.title?.toLowerCase().includes(\"variant\")||control.title?.toLowerCase().includes(\"state\"))){return propName;}}return null;};/**\r\n     * Render slot component with variant applied\r\n     */const renderSlotWithVariant=(slotComponent,variantName)=>{if(!slotComponent)return null;// Extract the actual component from whatever wrapper depth\nconst{component:actualComponent,chain}=extractActualComponent(slotComponent);// Auto-detect variant property on the actual component\nconst variantProp=detectVariantProperty(actualComponent);const constrainedStyle={width:\"100%\",maxWidth:\"100%\",alignSelf:\"stretch\",boxSizing:\"border-box\"};// If no variant prop found, just render as-is (safe fallback)\nif(!variantProp){return /*#__PURE__*/cloneElement(slotComponent,{...slotComponent.props,style:{...slotComponent.props?.style||{},...constrainedStyle}});}// Clone the actual component with the variant prop set\nconst modifiedComponent=/*#__PURE__*/cloneElement(actualComponent,{...actualComponent.props,[variantProp]:variantName,style:{...actualComponent.props?.style||{},...constrainedStyle}});// Re-wrap with the original wrapper chain (rebuild from inside out)\nlet result=modifiedComponent;for(let i=chain.length-1;i>=0;i--){const wrapper=chain[i];result=/*#__PURE__*/cloneElement(wrapper,{...wrapper.props,style:{...wrapper.props?.style||{},...constrainedStyle},children:result});}return result;};/**\r\n     * Render canvas placeholder for custom button mode\r\n     */const renderCustomButtonPlaceholder=()=>{return /*#__PURE__*/_jsxs(\"div\",{style:{padding:\"24px\",textAlign:\"center\",...buttonCustomStyles.border,borderColor:buttonCustomStyles.border?.borderColor??\"transparent\",color:\"#6c757d\",width:\"100%\"},children:[/*#__PURE__*/_jsx(\"div\",{style:{fontSize:\"16px\",fontWeight:500,marginBottom:\"8px\",color:\"#495057\"},children:\"Connect Custom Button\"}),/*#__PURE__*/_jsx(\"div\",{style:{fontSize:\"14px\"},children:\"Add a component with 4 variants: default, loading, success, error\"})]});};/**\r\n     * Render custom button with variant\r\n     */const renderCustomButton=()=>{const hasCustomButton=customButton&&Array.isArray(customButton)&&customButton.length>0;if(!hasCustomButton){// Show placeholder in canvas mode\nif(isCanvas){return renderCustomButtonPlaceholder();}// In preview/live, show error if no component connected\nreturn /*#__PURE__*/_jsx(\"div\",{style:{padding:12,border:\"1px dashed red\",borderRadius:8,color:\"red\",fontSize:12,background:\"rgba(255,0,0,0.1)\",textAlign:\"center\"},children:\"[FormKit] Custom Button Missing\"});}const currentVariant=getCurrentVariant();return renderSlotWithVariant(customButton[0],currentVariant);};// ========================================================================\n// RENDER\n// ========================================================================\n// Custom button mode\nif(buttonType===\"custom\"){const hasCustomButton=customButton&&Array.isArray(customButton)&&customButton.length>0;return /*#__PURE__*/_jsx(\"div\",{ref:containerRef,style:{...style,display:\"flex\",flexDirection:\"column\",position:\"relative\",direction:componentDirection,width:\"100%\",maxWidth:\"100%\",alignSelf:\"stretch\",minWidth:0,boxSizing:\"border-box\"},children:/*#__PURE__*/_jsx(\"button\",{type:\"button\",onClick:handleClick,disabled:disabled||isSubmitting,style:{// Reset all browser button styles\nall:\"unset\",display:\"block\",width:\"100%\",maxWidth:\"100%\",cursor:disabled||isSubmitting?\"not-allowed\":\"pointer\",opacity:disabled?.5:1,boxSizing:\"border-box\"},children:renderCustomButton()})});}// Default button mode\nconst getButtonStyles=()=>{if(submitState===\"success\"){return{color:successStyles.color||\"#2E7D32\",backgroundColor:successStyles.backgroundColor||\"#E8F5E9\",...successStyles};}if(submitState===\"error\"){return{color:errorStyles.color||\"#C62828\",backgroundColor:errorStyles.backgroundColor||\"#FFEBEE\",...errorStyles};}return{};};const currentStyles=getButtonStyles();return /*#__PURE__*/_jsx(\"div\",{ref:containerRef,style:{...style,display:\"flex\",flexDirection:\"column\",position:\"relative\",direction:componentDirection,width:\"100%\",maxWidth:\"100%\",alignSelf:\"stretch\",minWidth:0,boxSizing:\"border-box\"},children:/*#__PURE__*/_jsxs(\"button\",{type:\"button\",onClick:handleClick,disabled:disabled||isSubmitting,style:{width:\"100%\",maxWidth:\"100%\",padding:buttonCustomStyles.padding??\"12px 24px\",fontFamily:buttonCustomStyles.font?.fontFamily??\"inherit\",fontSize:buttonCustomStyles.font?.fontSize??14,fontWeight:buttonCustomStyles.font?.fontWeight??600,letterSpacing:buttonCustomStyles.font?.letterSpacing??undefined,lineHeight:buttonCustomStyles.font?.lineHeight??undefined,color:buttonCustomStyles.color??\"#FFFFFF\",backgroundColor:buttonCustomStyles.backgroundColor??\"rgb(51, 51, 51)\",...buttonCustomStyles.border,borderColor:buttonCustomStyles.border?.borderColor??\"transparent\",borderRadius:`${buttonCustomStyles.borderRadius??6}px`,cursor:disabled||isSubmitting?\"not-allowed\":\"pointer\",opacity:disabled||isSubmitting?.7:1,transition:\"opacity 0.2s, transform 0.1s, background-color 0.2s, color 0.2s\",display:\"flex\",alignItems:\"center\",justifyContent:\"center\",gap:\"8px\",direction:componentDirection,...buttonStyles,...currentStyles},onMouseEnter:e=>{if(!disabled&&!isSubmitting&&submitState!==\"success\"&&submitState!==\"error\"){if(hoverStyles.backgroundColor){e.currentTarget.style.backgroundColor=hoverStyles.backgroundColor;}if(hoverStyles.color){e.currentTarget.style.color=hoverStyles.color;}if(hoverStyles.borderColor){e.currentTarget.style.borderColor=hoverStyles.borderColor;}if(hoverStyles.opacity!==undefined){e.currentTarget.style.opacity=String(hoverStyles.opacity);}else if(!hoverStyles.backgroundColor){e.currentTarget.style.opacity=\"0.9\";}if(hoverStyles.scale){e.currentTarget.style.transform=`scale(${hoverStyles.scale})`;}}},onMouseLeave:e=>{if(!disabled&&!isSubmitting&&submitState!==\"success\"&&submitState!==\"error\"){e.currentTarget.style.backgroundColor=buttonCustomStyles.backgroundColor??\"rgb(51, 51, 51)\";e.currentTarget.style.color=buttonCustomStyles.color??\"#FFFFFF\";e.currentTarget.style.borderColor=buttonCustomStyles.border?.borderColor??\"transparent\";e.currentTarget.style.opacity=\"1\";e.currentTarget.style.transform=\"scale(1)\";}},onMouseDown:e=>{if(!disabled&&!isSubmitting&&submitState!==\"success\"&&submitState!==\"error\"){e.currentTarget.style.transform=\"scale(0.98)\";}},onMouseUp:e=>{if(!disabled&&!isSubmitting&&submitState!==\"success\"&&submitState!==\"error\"){e.currentTarget.style.transform=\"scale(1)\";}},children:[isSubmitting&&/*#__PURE__*/_jsx(\"svg\",{xmlns:\"http://www.w3.org/2000/svg\",width:\"18\",height:\"18\",viewBox:\"0 0 24 24\",fill:\"none\",stroke:\"currentColor\",strokeWidth:\"3\",strokeLinecap:\"round\",strokeLinejoin:\"round\",style:{animation:\"spin 1s linear infinite\"},children:/*#__PURE__*/_jsx(\"path\",{d:\"M21 12a9 9 0 1 1-6.219-8.56\"})}),isSubmitting?loadingText:submitState===\"success\"?successText:submitState===\"error\"?errorText:text,/*#__PURE__*/_jsx(\"style\",{children:`\r\n                    @keyframes spin {\r\n                        0% { transform: rotate(0deg); }\r\n                        100% { transform: rotate(360deg); }\r\n                    }\r\n                `})]})});}addPropertyControls(FormKitSubmit,{formId:{type:ControlType.String,title:\"Form ID\",defaultValue:\"default\"},// === BUTTON TYPE ===\nbuttonType:{type:ControlType.Enum,title:\"Button Type\",options:[\"default\",\"custom\"],optionTitles:[\"Default (Built-in)\",\"Your Component\"],defaultValue:\"default\",displaySegmentedControl:true,segmentedControlDirection:\"vertical\"},// === CUSTOM BUTTON SLOT ===\ncustomButton:{type:ControlType.Slot,title:\"Custom Button\",description:\"Connect a component with 4 variants: default, loading, success, error\",maxCount:1,hidden:props=>props.buttonType!==\"custom\"},// === VARIANT MAPPINGS ===\nvariantMappings:{type:ControlType.Object,title:\"Variant Names\",description:\"Map your component's variant names to button states\",hidden:props=>props.buttonType!==\"custom\",controls:{defaultVariant:{type:ControlType.String,title:\"Default\",defaultValue:\"default\"},loadingVariant:{type:ControlType.String,title:\"Loading\",defaultValue:\"loading\"},successVariant:{type:ControlType.String,title:\"Success\",defaultValue:\"success\"},errorVariant:{type:ControlType.String,title:\"Error\",defaultValue:\"error\"}}},// === DEFAULT BUTTON TEXT ===\ntext:{type:ControlType.String,title:\"Button Text\",defaultValue:\"Submit\",hidden:props=>props.buttonType===\"custom\"},loadingText:{type:ControlType.String,title:\"Loading Text\",defaultValue:\"Submitting...\",hidden:props=>props.buttonType===\"custom\"},successText:{type:ControlType.String,title:\"Success Text\",defaultValue:\"Form submitted successfully!\",hidden:props=>props.buttonType===\"custom\"},errorText:{type:ControlType.String,title:\"Error Text\",defaultValue:\"Please fix the errors above\",hidden:props=>props.buttonType===\"custom\"},// === DEFAULT BUTTON STYLING ===\nstyling:{type:ControlType.Object,buttonTitle:\"Styles\",hidden:props=>props.buttonType===\"custom\",controls:{buttonStyles:{type:ControlType.Object,buttonTitle:\"Button\",controls:{backgroundColor:{type:ControlType.Color,title:\"Background\",defaultValue:\"rgb(51, 51, 51)\"},color:{type:ControlType.Color,title:\"Text Color\",defaultValue:\"#FFFFFF\"},font:{type:ControlType.Font,title:\"Font\",controls:\"extended\",displayFontSize:true,displayTextAlignment:false,defaultValue:{fontSize:14,fontWeight:600}},borderRadius:{type:ControlType.Number,title:\"Radius\",defaultValue:10,min:0,max:100},border:{type:ControlType.Border,title:\"Border\",defaultValue:{borderWidth:0,borderColor:\"transparent\",borderStyle:\"solid\"}},padding:{type:ControlType.Padding,title:\"Padding\",defaultValue:\"12px 24px 12px 24px\"}}},hoverStyles:{type:ControlType.Object,buttonTitle:\"Hover\",optional:true,controls:{backgroundColor:{type:ControlType.Color,title:\"Background\",defaultValue:\"#0099FF\"},color:{type:ControlType.Color,title:\"Text Color\",defaultValue:\"#FFFFFF\"},borderColor:{type:ControlType.Color,title:\"Border Color\",defaultValue:\"rgba(0, 153, 255, 0)\"},opacity:{type:ControlType.Number,title:\"Opacity\",min:0,max:1,step:.1,defaultValue:1,displayStepper:true},scale:{type:ControlType.Number,title:\"Scale\",min:.9,max:1.1,step:.01,defaultValue:1,displayStepper:true}}},successStyles:{type:ControlType.Object,title:\"Success Styles\",optional:true,controls:{backgroundColor:{type:ControlType.Color,title:\"Background\",defaultValue:\"#E8F5E9\"},color:{type:ControlType.Color,title:\"Text Color\",defaultValue:\"#2E7D32\"}}},errorStyles:{type:ControlType.Object,title:\"Error Styles\",optional:true,controls:{backgroundColor:{type:ControlType.Color,title:\"Background\",defaultValue:\"#FFEBEE\"},color:{type:ControlType.Color,title:\"Text Color\",defaultValue:\"#C62828\"}}}}},// === TIMING ===\nloadingDuration:{type:ControlType.Number,title:\"Loading Duration (ms)\",defaultValue:1e3,min:0,max:1e4,step:100},successDuration:{type:ControlType.Number,title:\"Success Duration (ms)\",defaultValue:3e3,min:0,max:1e4,step:100},errorDuration:{type:ControlType.Number,title:\"Error Duration (ms)\",defaultValue:3e3,min:0,max:1e4,step:100},// === BEHAVIOR ===\nshowOnlyOnLastStep:{type:ControlType.Boolean,title:\"Show Only On Last Step\",defaultValue:false},disabled:{type:ControlType.Boolean,title:\"Disabled\",defaultValue:false}});\nexport const __FramerMetadata__ = {\"exports\":{\"default\":{\"type\":\"reactComponent\",\"name\":\"FormKitSubmit\",\"slots\":[],\"annotations\":{\"framerContractVersion\":\"1\",\"framerSupportedLayoutHeight\":\"auto\",\"framerIntrinsicWidth\":\"300\",\"framerSupportedLayoutWidth\":\"any\",\"framerDisableUnlink\":\"\"}},\"__FramerMetadata__\":{\"type\":\"variable\"}}}\n//# sourceMappingURL=./FormKitSubmit.map","// Validation utilities for FormKit\nexport const validateRequired=(value,fieldName,message)=>{if(value===null||value===undefined||Array.isArray(value)&&value.length===0){return message||`${fieldName} is required`;}if(typeof value===\"string\"&&value.trim()===\"\"){return message||`${fieldName} is required`;}return null;};export const validateEmail=(value,message)=>{if(!value)return null;const emailRegex=/^[^\\s@]+@[^\\s@]+\\.[^\\s@]+$/;if(!emailRegex.test(value)){return message||\"Please enter a valid email address\";}return null;};export const validateURL=value=>{if(!value)return null;try{new URL(value);return null;}catch{return\"Please enter a valid URL\";}};export const validateMinLength=(value,minLength,message)=>{if(!value)return null;if(value.length<minLength){// Support {x} template placeholder\nconst finalMessage=message?message.replace(/{x}/g,minLength.toString()):`Minimum ${minLength} characters required`;return finalMessage;}return null;};export const validateMaxLength=(value,maxLength,message)=>{if(!value)return null;if(value.length>maxLength){// Support {x} template placeholder\nconst finalMessage=message?message.replace(/{x}/g,maxLength.toString()):`Maximum ${maxLength} characters allowed`;return finalMessage;}return null;};export const validatePattern=(value,pattern,message)=>{if(!value)return null;const regex=new RegExp(pattern);if(!regex.test(value)){return message||\"Invalid format\";}return null;};export const validateMin=(value,min,message)=>{if(value===null||value===undefined)return null;if(value<min){return message||`Minimum value is ${min}`;}return null;};export const validateMax=(value,max,message)=>{if(value===null||value===undefined)return null;if(value>max){return message||`Maximum value is ${max}`;}return null;};export const validatePhone=value=>{if(!value)return null;// Basic phone validation (adjust regex as needed)\nconst phoneRegex=/^[\\d\\s\\-\\+\\(\\)]+$/;if(!phoneRegex.test(value)){return\"Please enter a valid phone number\";}return null;};export const validateFileSize=(file,maxSize)=>{if(file.size>maxSize){const maxSizeMB=(maxSize/(1024*1024)).toFixed(2);return`File size must be less than ${maxSizeMB}MB`;}return null;};export const validateFileType=(file,accept)=>{if(!accept)return null;const acceptedTypes=accept.split(\",\").map(t=>t.trim());const fileType=file.type;const fileName=file.name;const fileExtension=`.${fileName.split(\".\").pop()?.toLowerCase()}`;const isValid=acceptedTypes.some(type=>{if(type.startsWith(\".\")){return fileExtension===type.toLowerCase();}if(type.endsWith(\"/*\")){const category=type.split(\"/\")[0];return fileType.startsWith(category);}return fileType===type;});if(!isValid){return`File type not accepted. Allowed: ${accept}`;}return null;};// Combined validator for fields\nexport const validateField=(value,props)=>{const fieldName=props.label||props.name;// Required validation - Checkbox vs others\nif(props.required){// Special handling for checkbox: must be strictly true if required\nif(props.type===\"checkbox\"){if(value!==true){return props.requiredMessage||`${fieldName} must be checked`;}}else if(props.type===\"rating\"||props.type===\"scale\"){// Rating/Scale: 0 means no selection, treat as empty\nif(value===null||value===undefined||value===\"\"||value===0){return props.requiredMessage||`${fieldName} is required`;}}else{const requiredError=validateRequired(value,fieldName,props.requiredMessage);if(requiredError)return requiredError;}}// Skip other validations if value is empty and not required (except checkbox and checkboxGroup which handled separately)\nif(!value&&props.type!==\"checkbox\"&&props.type!==\"checkboxGroup\")return null;// CheckboxGroup validation - handle before type switch for empty arrays\nif(props.type===\"checkboxGroup\"){const arr=Array.isArray(value)?value:[];if(props.minSelected!==undefined&&arr.length<props.minSelected){return props.minMessage?props.minMessage.replace(/{min}/g,props.minSelected.toString()):`Select at least ${props.minSelected} options`;}if(props.maxSelected!==undefined&&arr.length>props.maxSelected){return props.maxMessage?props.maxMessage.replace(/{max}/g,props.maxSelected.toString()):`Select at most ${props.maxSelected} options`;}return null;}// Type-specific validation\nswitch(props.type){case\"email\":return validateEmail(value,props.emailMessage);case\"url\":return validateURL(value);case\"phone\":return validatePhone(value);case\"number\":if(props.min!==undefined){const minError=validateMin(value,props.min,props.minMessage);if(minError)return minError;}if(props.max!==undefined){const maxError=validateMax(value,props.max,props.maxMessage);if(maxError)return maxError;}break;case\"file\":if(value instanceof File){if(props.accept){const typeError=validateFileType(value,props.accept);if(typeError)return typeError;}if(props.maxSize){const sizeError=validateFileSize(value,props.maxSize);if(sizeError)return sizeError;}}break;}// String validation\nif(typeof value===\"string\"){if(props.minLength!==undefined){const minLengthError=validateMinLength(value,props.minLength,props.minLengthMessage);if(minLengthError)return minLengthError;}if(props.maxLength!==undefined){const maxLengthError=validateMaxLength(value,props.maxLength,props.maxLengthMessage);if(maxLengthError)return maxLengthError;}if(props.pattern){const patternError=validatePattern(value,props.pattern,props.patternMessage||props.errorMessage);if(patternError)return patternError;}}return null;};\nexport const __FramerMetadata__ = {\"exports\":{\"validateEmail\":{\"type\":\"variable\",\"annotations\":{\"framerContractVersion\":\"1\"}},\"validateMax\":{\"type\":\"variable\",\"annotations\":{\"framerContractVersion\":\"1\"}},\"validateRequired\":{\"type\":\"variable\",\"annotations\":{\"framerContractVersion\":\"1\"}},\"validateMinLength\":{\"type\":\"variable\",\"annotations\":{\"framerContractVersion\":\"1\"}},\"validatePhone\":{\"type\":\"variable\",\"annotations\":{\"framerContractVersion\":\"1\"}},\"validateFileType\":{\"type\":\"variable\",\"annotations\":{\"framerContractVersion\":\"1\"}},\"validateFileSize\":{\"type\":\"variable\",\"annotations\":{\"framerContractVersion\":\"1\"}},\"validateMin\":{\"type\":\"variable\",\"annotations\":{\"framerContractVersion\":\"1\"}},\"validateURL\":{\"type\":\"variable\",\"annotations\":{\"framerContractVersion\":\"1\"}},\"validateField\":{\"type\":\"variable\",\"annotations\":{\"framerContractVersion\":\"1\"}},\"validateMaxLength\":{\"type\":\"variable\",\"annotations\":{\"framerContractVersion\":\"1\"}},\"validatePattern\":{\"type\":\"variable\",\"annotations\":{\"framerContractVersion\":\"1\"}},\"__FramerMetadata__\":{\"type\":\"variable\"}}}\n//# sourceMappingURL=./Validation.map","// Custom hooks for FormKit components\n// This eliminates code duplication across field components\nimport{useState,useEffect,useRef}from\"react\";import{RenderTarget}from\"framer\";import{getFormStore,getFormStoreKey}from\"https://framerusercontent.com/modules/W9pGMfwOEUT2E0G0vdr3/42YKtSLeppXsa3v6m16i/Store_management.js\";import{validateField}from\"https://framerusercontent.com/modules/CkzWOzYsjkSH8b0Md9Dz/jFAHTs0VED1zTLOHkBsH/Validation.js\";/**\r\n * Custom hook to manage form field state and validation\r\n * Eliminates code duplication across all field components\r\n *\r\n * @example\r\n * ```tsx\r\n * const {\r\n *   value,\r\n *   error,\r\n *   handleChange,\r\n *   handleBlur\r\n * } = useFormField({\r\n *   name: \"email\",\r\n *   formId: \"default\",\r\n *   validation: {\r\n *     required: true,\r\n *     type: \"email\"\r\n *   },\r\n *   validateOnBlur: true,\r\n *   validateOnChange: false\r\n * })\r\n * ```\r\n */export function useFormField(config){// Correct usage\nconst{name,formId=\"default\",storeKey=\"auto\",validation={},validateOnBlur=true,validateOnChange=false,skipValidation=false,label,onChange}=config;// Get store\nconst actualFormId=getFormStoreKey(formId,storeKey);const useStore=getFormStore(actualFormId);const[state,setState]=useStore()// This hook must be stable\n;// Local value for controlled input - check state existence\nconst[localValue,setLocalValue]=useState(()=>{return state?.data?.[name]??\"\";});// Validation state\nconst[isValidating,setIsValidating]=useState(false);const[hasValidated,setHasValidated]=useState(false);// Timeout refs for debouncing\nconst validationTimeoutRef=useRef();// Safety check for state\nconst isStateReady=!!state;// Sync local value from store (for external updates)\nuseEffect(()=>{if(!state?.data)return;const storeValue=state.data[name];const normalizedStoreValue=storeValue===undefined?\"\":storeValue;// Keep local UI in sync for both set and clear mutations\nif(normalizedStoreValue!==localValue){setLocalValue(normalizedStoreValue);}},[state?.data?.[name]])// Only re-run if this specific value changes\n;// Cleanup timeout on unmount\nuseEffect(()=>{return()=>{if(validationTimeoutRef.current){clearTimeout(validationTimeoutRef.current);}};},[]);// Reset errors on load in Preview mode\nuseEffect(()=>{if(RenderTarget.current()===RenderTarget.preview&&isStateReady){setState(prev=>{const currentErrors=prev?.errors||{};if(currentErrors[name]){const{[name]:_,...otherErrors}=currentErrors;return{...prev,errors:otherErrors};}return prev;});}},[isStateReady]);// Clear errors when field becomes hidden/disabled\nuseEffect(()=>{if(skipValidation&&isStateReady){setState(prev=>{const currentErrors=prev?.errors||{};if(currentErrors[name]){const{[name]:_,...otherErrors}=currentErrors;return{...prev,errors:otherErrors};}return prev;});}},[skipValidation]);// Validate when submitAttempted is true or submitState enters validating\nuseEffect(()=>{if(!isStateReady||skipValidation)return;const shouldValidateFromSubmit=state?.submitAttempted||state?.submitState===\"validating\";if(!shouldValidateFromSubmit)return;// Run validation when submit is attempted\nconst error=validateField(localValue,{name,label,...validation});setState(prev=>{const currentErrors=prev?.errors||{};const{[name]:_,...otherErrors}=currentErrors;const newErrors=error?{...otherErrors,[name]:error}:otherErrors;return{...prev,errors:newErrors};});setHasValidated(true);},[state?.submitAttempted,state?.submitState]);/**\r\n     * Validate the current value\r\n     * Returns null (no error) if skipValidation is true\r\n     */const validate=valueToValidate=>{// Skip validation for hidden/disabled fields\nif(skipValidation){return null;}const val=valueToValidate!==undefined?valueToValidate:localValue;const error=validateField(val,{name,label,...validation});return error;};/**\r\n     * Handle value change\r\n     * Updates both local state and store\r\n     * Optionally triggers real-time validation (debounced)\r\n     */const handleChange=value=>{setLocalValue(value);if(!isStateReady)return;setState(prev=>({...prev,data:{...prev?.data||{},[name]:value},touched:{...prev?.touched||{},[name]:true}}));// Call onChange callback if provided\nonChange?.(value);// Real-time validation (debounced) if enabled and field has been touched\n// ALSO validate if submit has been attempted (immediate feedback mode)\nif(validateOnChange||state?.submitAttempted){setIsValidating(true);if(validationTimeoutRef.current){clearTimeout(validationTimeoutRef.current);}validationTimeoutRef.current=setTimeout(()=>{// Determine value to validate - use latest localValue which might be stale in closure?\n// Better pass 'value' directly\nconst error=validate(value);setState(prev=>{const currentErrors=prev?.errors||{};const{[name]:_,...otherErrors}=currentErrors;const newErrors=error?{...otherErrors,[name]:error}:otherErrors;return{...prev,errors:newErrors};});setIsValidating(false);setHasValidated(true);},500)// 500ms debounce\n;}};/**\r\n     * Handle blur event\r\n     * Triggers validation if validateOnBlur is enabled\r\n     * Skips validation and clears errors if skipValidation is true\r\n     */const handleBlur=valueToValidate=>{if(!isStateReady)return;// If field is hidden/disabled, clear any existing errors and skip validation\nif(skipValidation){setState(prev=>{const currentErrors=prev?.errors||{};if(currentErrors[name]){const{[name]:_,...otherErrors}=currentErrors;return{...prev,errors:otherErrors};}return prev;});return;}if(!validateOnBlur)return;const error=validate(valueToValidate);setState(prev=>{const currentErrors=prev?.errors||{};const{[name]:_,...otherErrors}=currentErrors;const newErrors=error?{...otherErrors,[name]:error}:otherErrors;return{...prev,errors:newErrors,touched:{...prev?.touched||{},[name]:true}};});setHasValidated(true);};return{value:localValue,error:state?.errors?.[name]||null,isTouched:state?.touched?.[name]||false,isValidating,hasValidated,setHasValidated,state:state||{},setState,handleChange,handleBlur,validate};}/**\r\n * Hook to access form store directly without field-specific logic\r\n * Useful for components like FormKitProgress, FormKitNext, etc.\r\n */export function useFormStore(formId=\"default\",storeKey=\"auto\"){const actualFormId=getFormStoreKey(formId,storeKey);const useStore=getFormStore(actualFormId);return useStore();}\nexport const __FramerMetadata__ = {\"exports\":{\"UseFormFieldConfig\":{\"type\":\"tsType\",\"annotations\":{\"framerContractVersion\":\"1\"}},\"useFormField\":{\"type\":\"function\",\"annotations\":{\"framerContractVersion\":\"1\"}},\"useFormStore\":{\"type\":\"function\",\"annotations\":{\"framerContractVersion\":\"1\"}},\"UseFormFieldReturn\":{\"type\":\"tsType\",\"annotations\":{\"framerContractVersion\":\"1\"}},\"__FramerMetadata__\":{\"type\":\"variable\"}}}","export const normalizeConditionValue=value=>{if(typeof value!==\"string\")return value;const trimmed=value.trim();if(trimmed===\"\")return value;if(trimmed.toLowerCase()===\"true\")return true;if(trimmed.toLowerCase()===\"false\")return false;const numeric=Number(trimmed);if(!Number.isNaN(numeric))return numeric;return trimmed;};const isFilled=value=>{if(value===null||value===undefined)return false;if(typeof value===\"string\")return value.trim()!==\"\";if(Array.isArray(value))return value.length>0;return true;};const evaluateRule=(rule,data)=>{const{field,operator=\"equals\",value}=rule;if(!field)return true;const left=data[field];const right=normalizeConditionValue(value);switch(operator){case\"equals\":{if(Array.isArray(left)){if(Array.isArray(right)){return left.length===right.length&&left.every((v,i)=>v===right[i]);}return left.includes(right);}return left===right;}case\"notEquals\":{if(Array.isArray(left)){if(Array.isArray(right)){return!(left.length===right.length&&left.every((v,i)=>v===right[i]));}return!left.includes(right);}return left!==right;}case\"contains\":{if(Array.isArray(left))return left.includes(right);if(typeof left===\"string\"&&typeof right===\"string\"){return left.toLowerCase().includes(right.toLowerCase());}return false;}case\"notContains\":{if(Array.isArray(left))return!left.includes(right);if(typeof left===\"string\"&&typeof right===\"string\"){return!left.toLowerCase().includes(right.toLowerCase());}return true;}case\"greaterThan\":{const l=Number(left);const r=Number(right);if(Number.isNaN(l)||Number.isNaN(r))return false;return l>r;}case\"lessThan\":{const l=Number(left);const r=Number(right);if(Number.isNaN(l)||Number.isNaN(r))return false;return l<r;}case\"greaterThanOrEqual\":{const l=Number(left);const r=Number(right);if(Number.isNaN(l)||Number.isNaN(r))return false;return l>=r;}case\"lessThanOrEqual\":{const l=Number(left);const r=Number(right);if(Number.isNaN(l)||Number.isNaN(r))return false;return l<=r;}case\"isFilled\":return isFilled(left);case\"isEmpty\":return!isFilled(left);default:return true;}};export const evaluateFieldState=(showIf,data,match=\"all\",action=\"show\")=>{// Default state\nif(!showIf||Array.isArray(showIf)&&showIf.length===0||typeof showIf===\"string\"&&showIf.trim()===\"\"){return{isVisible:true,isDisabled:false};}try{let conditionMet;if(typeof showIf===\"string\"){const keys=Object.keys(data);const values=Object.values(data);// Note: new Function is intentional here for user-defined conditions in Framer\nconst fn=new Function(...keys,`return ${showIf}`);conditionMet=Boolean(fn(...values));}else{const results=showIf.map(rule=>evaluateRule(rule,data));conditionMet=match===\"any\"?results.some(Boolean):results.every(Boolean);}switch(action){case\"show\":return{isVisible:conditionMet,isDisabled:false};case\"hide\":return{isVisible:!conditionMet,isDisabled:false};case\"enable\":return{isVisible:true,isDisabled:!conditionMet};case\"disable\":return{isVisible:true,isDisabled:conditionMet};default:return{isVisible:true,isDisabled:false};}}catch(error){console.error(\"Error evaluating conditions:\",error);return{isVisible:true,isDisabled:false};}};/**\r\n * Helper function to determine conditional badge state for canvas mode\r\n * Returns whether to show a badge and what text to display\r\n */export const getConditionalBadge=(showIf,fieldState,showIfAction=\"show\")=>{if(!showIf||showIf.length===0){return{showBadge:false,badgeText:\"\"};}const wouldBeHidden=!fieldState.isVisible;const wouldBeDisabled=fieldState.isDisabled;if(showIfAction===\"show\"&&wouldBeHidden){return{showBadge:true,badgeText:\"Hidden in preview\"};}else if(showIfAction===\"hide\"&&!wouldBeHidden){return{showBadge:true,badgeText:\"Shown in preview\"};}else if(showIfAction===\"enable\"&&wouldBeDisabled){return{showBadge:true,badgeText:\"Disabled in preview\"};}else if(showIfAction===\"disable\"&&!wouldBeDisabled){return{showBadge:true,badgeText:\"Enabled in preview\"};}return{showBadge:false,badgeText:\"\"};};// Backward compatibility wrapper (deprecated but kept for safety if needed)\nexport const evaluateShowIf=(showIf,data,match=\"all\",action=\"show\")=>{const{isVisible}=evaluateFieldState(showIf,data,match,action);return isVisible;};export const evaluateRuleGroup=(rules,data,match=\"all\")=>{if(!rules||rules.length===0)return false;const results=rules.map(rule=>evaluateRule(rule,data));return match===\"any\"?results.some(Boolean):results.every(Boolean);};export const findFirstMatchingMultiStepRule=(rules,data)=>{if(!Array.isArray(rules)||rules.length===0)return null;for(const rule of rules){if(evaluateRuleGroup(rule.conditions,data,rule.match||\"all\")){return rule;}}return null;};export const findMatchingMultiStepRules=(rules,data)=>{if(!Array.isArray(rules)||rules.length===0)return[];return rules.filter(rule=>evaluateRuleGroup(rule.conditions,data,rule.match||\"all\"));};export const normalizeTargetStep=(targetStep,totalSteps)=>{if(!Number.isFinite(targetStep))return null;const requestedStep=Math.max(1,Math.floor(Number(targetStep)));const zeroBasedStep=requestedStep-1;const maxStepIndex=Math.max(0,totalSteps-1);return Math.max(0,Math.min(zeroBasedStep,maxStepIndex));};\nexport const __FramerMetadata__ = {\"exports\":{\"findFirstMatchingMultiStepRule\":{\"type\":\"variable\",\"annotations\":{\"framerContractVersion\":\"1\"}},\"evaluateFieldState\":{\"type\":\"variable\",\"annotations\":{\"framerContractVersion\":\"1\"}},\"findMatchingMultiStepRules\":{\"type\":\"variable\",\"annotations\":{\"framerContractVersion\":\"1\"}},\"evaluateShowIf\":{\"type\":\"variable\",\"annotations\":{\"framerContractVersion\":\"1\"}},\"normalizeConditionValue\":{\"type\":\"variable\",\"annotations\":{\"framerContractVersion\":\"1\"}},\"evaluateRuleGroup\":{\"type\":\"variable\",\"annotations\":{\"framerContractVersion\":\"1\"}},\"getConditionalBadge\":{\"type\":\"variable\",\"annotations\":{\"framerContractVersion\":\"1\"}},\"ShowIfRule\":{\"type\":\"tsType\",\"annotations\":{\"framerContractVersion\":\"1\"}},\"normalizeTargetStep\":{\"type\":\"variable\",\"annotations\":{\"framerContractVersion\":\"1\"}},\"__FramerMetadata__\":{\"type\":\"variable\"}}}\n//# sourceMappingURL=./Conditions.map","// Shared Property Control Definitions for FormKit\n// These are reusable control definitions to maintain consistency across components\nimport{ControlType}from\"framer\";/**\r\n * Shared control for conditional visibility using Array/Object format\r\n * NO string expressions - only structured rules\r\n */export const SHOW_IF_CONTROL={type:ControlType.Array,title:\"Conditions\",description:\"Add conditions to control when this field is visible\",control:{type:ControlType.Object,controls:{field:{type:ControlType.String,title:\"Field Name\",description:\"Name of the field to check\",placeholder:\"fieldName\"},operator:{type:ControlType.Enum,title:\"Operator\",options:[\"equals\",\"notEquals\",\"contains\",\"notContains\",\"greaterThan\",\"lessThan\",\"greaterThanOrEqual\",\"lessThanOrEqual\",\"isFilled\",\"isEmpty\"],displaySegmentedControl:false,defaultValue:\"equals\"},value:{type:ControlType.String,title:\"Value\",description:\"Value to compare against\",placeholder:\"compareValue\",hidden:props=>props.operator===\"isFilled\"||props.operator===\"isEmpty\"}}}};export const MULTI_STEP_CONDITION_CONTROL={type:ControlType.Array,title:\"Conditions\",description:\"Add field rules for this branch.\",control:{type:ControlType.Object,controls:{field:{type:ControlType.String,title:\"Field Name\",placeholder:\"fieldName\"},operator:{type:ControlType.Enum,title:\"Operator\",options:[\"equals\",\"notEquals\",\"contains\",\"notContains\",\"greaterThan\",\"lessThan\",\"greaterThanOrEqual\",\"lessThanOrEqual\",\"isFilled\",\"isEmpty\"],optionTitles:[\"Equals\",\"Not Equals\",\"Contains\",\"Not Contains\",\"Greater Than\",\"Less Than\",\"Greater Or Equal\",\"Less Or Equal\",\"Is Filled\",\"Is Empty\"],defaultValue:\"equals\",displaySegmentedControl:false},value:{type:ControlType.String,title:\"Value\",placeholder:\"compareValue\",hidden:props=>props.operator===\"isFilled\"||props.operator===\"isEmpty\"}}}};export const MULTI_STEP_MATCH_CONTROL={type:ControlType.Enum,title:\"Match\",options:[\"all\",\"any\"],optionTitles:[\"All (AND)\",\"Any (OR)\"],defaultValue:\"all\",displaySegmentedControl:true,segmentedControlDirection:\"vertical\"};export const MULTI_STEP_NEXT_RULES_CONTROL={type:ControlType.Array,title:\"Next Rules\",description:\"Check rules before the next step action runs.\",control:{type:ControlType.Object,controls:{match:MULTI_STEP_MATCH_CONTROL,conditions:MULTI_STEP_CONDITION_CONTROL,action:{type:ControlType.Enum,title:\"Action\",options:[\"goToStep\",\"setFieldValue\",\"clearFieldValue\"],optionTitles:[\"Go To Step\",\"Set Field Value\",\"Clear Field Value\"],defaultValue:\"goToStep\",displaySegmentedControl:true,segmentedControlDirection:\"vertical\"},targetStep:{type:ControlType.Number,title:\"Step Number\",description:\"1-based step number to jump to.\",defaultValue:2,min:1,step:1,displayStepper:true,hidden:props=>props.action!==\"goToStep\"},targetField:{type:ControlType.String,title:\"Field Name\",placeholder:\"leadType\",hidden:props=>props.action!==\"setFieldValue\"&&props.action!==\"clearFieldValue\"},targetValue:{type:ControlType.String,title:\"Field Value\",placeholder:\"enterprise\",hidden:props=>props.action!==\"setFieldValue\"}}},defaultValue:[]};export const MULTI_STEP_PREVIOUS_RULES_CONTROL={...MULTI_STEP_NEXT_RULES_CONTROL,title:\"Previous Rules\",description:\"Check rules before the previous step action runs.\",hidden:props=>props.previousBehavior!==\"rules\"};export const MULTI_STEP_SUBMIT_RULES_CONTROL={type:ControlType.Array,title:\"Submit Rules\",description:\"Set or clear fields before submit. Redirect actions run after a successful submission.\",control:{type:ControlType.Object,controls:{match:MULTI_STEP_MATCH_CONTROL,conditions:MULTI_STEP_CONDITION_CONTROL,action:{type:ControlType.Enum,title:\"Action\",options:[\"redirect\"],optionTitles:[\"Redirect\"],defaultValue:\"redirect\",displaySegmentedControl:true,segmentedControlDirection:\"vertical\"},redirectUrl:{type:ControlType.String,title:\"Redirect URL\",placeholder:\"https://example.com/thank-you\",hidden:props=>props.action!==\"redirect\"}}},defaultValue:[]};/**\r\n * Shared control for showIf match mode (all/any)\r\n */export const SHOW_IF_MATCH_CONTROL={type:ControlType.Enum,title:\"Match Mode\",description:\"How to combine multiple conditions\",options:[\"all\",\"any\"],optionTitles:[\"All (AND)\",\"Any (OR)\"],defaultValue:\"all\"};/**\r\n * Control for conditional visibility action (show/hide when conditions pass)\r\n */export const SHOW_IF_ACTION_CONTROL={type:ControlType.Enum,title:\"When Conditions Pass\",description:\"Control field visibility or enabled state based on conditions\",options:[\"show\",\"hide\",\"enable\",\"disable\"],optionTitles:[\"Show Field\",\"Hide Field\",\"Enable Field\",\"Disable Field\"],defaultValue:\"show\",displaySegmentedControl:true,segmentedControlDirection:\"vertical\"};/**\r\n * Shared control for store configuration\r\n * Note: storeKey has been removed - formId handles all use cases\r\n */export const STORE_CONFIG_CONTROL={formId:{type:ControlType.String,title:\"Form ID\",defaultValue:\"default\",description:\"📋 Which form this field belongs to. Use 'default' for single form. For multiple forms on same page, use unique IDs like 'signup', 'contact', or 'newsletter'. Powered by [framerformkit](https://framerformkit.com)\"}};/**\r\n * Validation toggle controls - built-in validation only\r\n */export const VALIDATION_TOGGLE_CONTROLS={validateOnBlur:{type:ControlType.Boolean,title:\"Validate on Blur\",description:\"Validate when user leaves the field\",defaultValue:true},validateOnChange:{type:ControlType.Boolean,title:\"Validate on Change\",description:\"Validate in real-time as user types (debounced)\",defaultValue:true}};/**\r\n * Complete validation controls - grouped for nested object\r\n * Includes type selector, toggles, rules, and messages all in one place\r\n */export const VALIDATION_CONTROLS={// Timing toggles\nvalidateOnBlur:{type:ControlType.Boolean,title:\"On Blur\",description:\"Validate when user leaves field\",defaultValue:true},validateOnChange:{type:ControlType.Boolean,title:\"On Change\",description:\"Real-time validation (debounced)\",defaultValue:true},// Validation type selector\nvalidationType:{type:ControlType.Enum,title:\"Validation Type\",options:[\"built-in\",\"pattern\"],optionTitles:[\"Built-in\",\"Custom Pattern\"],defaultValue:\"built-in\",description:\"Choose validation method\",displaySegmentedControl:true,segmentedControlDirection:\"vertical\"},// Built-in validation rules\nminLength:{type:ControlType.Number,title:\"Min Length\",min:0,defaultValue:0,step:1,displayStepper:true,description:\"Minimum characters (0 = no minimum)\",hidden:props=>props.validationType===\"pattern\"},maxLength:{type:ControlType.Number,title:\"Max Length\",min:0,defaultValue:0,step:1,displayStepper:true,description:\"Maximum characters (0 = no limit)\",hidden:props=>props.validationType===\"pattern\"},// Custom pattern validation\npattern:{type:ControlType.String,title:\"Pattern (Regex)\",displayTextArea:true,description:\"Example: ^[a-zA-Z0-9]+$ (alphanumeric only)\",hidden:props=>props.validationType===\"built-in\"},// Error messages\nrequiredMessage:{type:ControlType.String,title:\"Required Error\",placeholder:\"This field is required\"},minLengthMessage:{type:ControlType.String,title:\"Min Length Error\",placeholder:\"Please enter at least {x} characters\",description:\"Use {x} for dynamic value\",hidden:props=>props.validationType===\"pattern\"},maxLengthMessage:{type:ControlType.String,title:\"Max Length Error\",placeholder:\"Maximum {x} characters allowed\",description:\"Use {x} for dynamic value\",hidden:props=>props.validationType===\"pattern\"},patternMessage:{type:ControlType.String,title:\"Pattern Error\",placeholder:\"Invalid format\",hidden:props=>props.validationType===\"built-in\"},successMessage:{type:ControlType.String,title:\"Success Message\",placeholder:\"Looks good!\"}};/**\r\n * Base styling controls - can be extended per component\r\n */export const BASE_INPUT_STYLE_CONTROLS={backgroundColor:{type:ControlType.Color,title:\"Background\",defaultValue:\"rgba(187, 187, 187, 0.15)\"},textColor:{type:ControlType.Color,title:\"Text Color\",defaultValue:\"#333333\"},placeholderColor:{type:ControlType.Color,title:\"Placeholder Color\",defaultValue:\"#999999\"},border:{type:ControlType.Border,title:\"Border\",defaultValue:{borderWidth:1,borderColor:\"rgba(187, 187, 187, 0.15)\",borderStyle:\"solid\"}},shadows:{type:ControlType.BoxShadow,title:\"Shadows\",optional:true},borderRadius:{type:ControlType.BorderRadius,title:\"Border Radius\",defaultValue:12},padding:{type:ControlType.Padding,title:\"Padding\",defaultValue:\"12px\"},textAlign:{type:ControlType.Enum,title:\"Text Align\",options:[\"left\",\"center\",\"right\"],optionIcons:[\"text-align-left\",\"text-align-center\",\"text-align-right\"],defaultValue:\"left\",displaySegmentedControl:true},font:{type:ControlType.Font,title:\"Font\",controls:\"extended\",displayFontSize:true,displayTextAlignment:false,defaultValue:{fontSize:14,fontWeight:400}},// State styles\nfocusBorderColor:{type:ControlType.Color,title:\"Focus Border\",defaultValue:\"#0099FF\"},errorBorderColor:{type:ControlType.Color,title:\"Error Border\",defaultValue:\"#FF4444\"},disabledOpacity:{type:ControlType.Number,title:\"Disabled Opacity\",min:0,max:1,step:.1,defaultValue:.5,displayStepper:true}};/**\r\n * Label styling controls\r\n */export const LABEL_STYLE_CONTROLS={color:{type:ControlType.Color,title:\"Text Color\",defaultValue:\"#888888\"},font:{type:ControlType.Font,title:\"Font\",controls:\"extended\",displayFontSize:true,displayTextAlignment:false,defaultValue:{fontSize:12,fontWeight:500}},textAlign:{type:ControlType.Enum,title:\"Text Align\",options:[\"left\",\"center\",\"right\"],optionIcons:[\"text-align-left\",\"text-align-center\",\"text-align-right\"],defaultValue:\"left\",displaySegmentedControl:true},textTransform:{type:ControlType.Enum,title:\"Text Transform\",options:[\"none\",\"uppercase\",\"lowercase\",\"capitalize\"],optionTitles:[\"None\",\"UPPERCASE\",\"lowercase\",\"Capitalize\"],defaultValue:\"none\",displaySegmentedControl:true,segmentedControlDirection:\"vertical\"},marginBottom:{type:ControlType.Number,title:\"Bottom Spacing\",min:0,max:24,step:1,defaultValue:8,displayStepper:true}};/**\r\n * Checkbox label styling controls (includes checked state)\r\n */export const CHECKBOX_LABEL_STYLE_CONTROLS={...LABEL_STYLE_CONTROLS,marginBottom:{...LABEL_STYLE_CONTROLS.marginBottom,hidden:()=>true},checkedLabelColor:{type:ControlType.Color,title:\"Checked Color\",optional:true}};/**\r\n * Error message styling controls\r\n */export const ERROR_STYLE_CONTROLS={color:{type:ControlType.Color,title:\"Text Color\",defaultValue:\"#FF4444\"},font:{type:ControlType.Font,title:\"Font\",controls:\"extended\",displayFontSize:true,displayTextAlignment:false,defaultValue:{fontSize:12,fontWeight:400}},marginTop:{type:ControlType.Number,title:\"Top Spacing\",min:0,max:24,step:1,defaultValue:4,displayStepper:true},iconType:{type:ControlType.Enum,title:\"Icon Type\",options:[\"default\",\"custom\"],optionTitles:[\"Default\",\"Icon Svg\"],defaultValue:\"default\",displaySegmentedControl:true},customIcon:{type:ControlType.String,title:\"Custom Icon\",description:\"Paste SVG code here\",displayTextArea:true,hidden:props=>props.iconType!==\"custom\"}};/**\r\n * Success message styling controls\r\n */export const SUCCESS_STYLE_CONTROLS={displayMode:{type:ControlType.Enum,title:\"Display\",options:[\"both\",\"icon\",\"message\"],optionTitles:[\"Both\",\"Icon Only\",\"Message Only\"],defaultValue:\"both\",displaySegmentedControl:true,segmentedControlDirection:\"vertical\"},// Message text styling\nmessageFont:{type:ControlType.Font,title:\"Message Font\",controls:\"extended\",displayFontSize:true,displayTextAlignment:false,defaultValue:{fontSize:12,fontWeight:400}},messageColor:{type:ControlType.Color,title:\"Message Color\",optional:true},iconColor:{type:ControlType.Color,title:\"Icon Color\",optional:true},marginTop:{type:ControlType.Number,title:\"Message Top Spacing\",min:0,max:24,step:1,defaultValue:4,displayStepper:true},// Input styling on success\ninputBorderColor:{type:ControlType.Color,title:\"Input Border Color\",optional:true},inputTextColor:{type:ControlType.Color,title:\"Input Text Color\",optional:true},inputFont:{type:ControlType.Font,title:\"Input Font\",controls:\"extended\",displayFontSize:true,displayTextAlignment:false,defaultValue:{fontSize:14,fontWeight:400}},// Label styling on success\nlabelColor:{type:ControlType.Color,title:\"Label Color\",optional:true},labelFont:{type:ControlType.Font,title:\"Label Font\",controls:\"extended\",displayFontSize:true,displayTextAlignment:false,defaultValue:{fontSize:14,fontWeight:600}},iconType:{type:ControlType.Enum,title:\"Icon Type\",options:[\"default\",\"custom\"],optionTitles:[\"Default\",\"Icon Svg\"],defaultValue:\"default\",displaySegmentedControl:true},customIcon:{type:ControlType.String,title:\"Custom Icon\",description:\"Paste SVG code here\",displayTextArea:true,hidden:props=>props.iconType!==\"custom\"}};/**\r\n * Focus state styling controls\r\n */export const FOCUS_STYLE_CONTROLS={backgroundColor:{type:ControlType.Color,title:\"Fill\",optional:true},textColor:{type:ControlType.Color,title:\"Text Color\",optional:true},placeholderColor:{type:ControlType.Color,title:\"Placeholder Color\",optional:true},border:{type:ControlType.Border,title:\"Border\",optional:true},shadows:{type:ControlType.BoxShadow,title:\"Shadows\",optional:true},transition:{type:ControlType.Transition,title:\"Transition\",optional:true}};/**\r\n * Helper to create nested styling control group\r\n * Usage: styling: createStylingControl({ inputStyles, labelStyles, errorStyles })\r\n */export function createStylingControl(controls){return{type:ControlType.Object,buttonTitle:\"Styles\",optional:true,controls};}/**\r\n * Single checkbox style controls\r\n */export const CHECKBOX_STYLE_CONTROLS={// Checkbox box styling\nsize:{type:ControlType.Number,title:\"Size\",min:12,max:40,step:1,defaultValue:20,displayStepper:true},borderRadius:{type:ControlType.BorderRadius,title:\"Border Radius\",defaultValue:4},border:{type:ControlType.Border,title:\"Border\",defaultValue:{borderWidth:2,borderColor:\"#E8E8E8\",borderStyle:\"solid\"}},checkedColor:{type:ControlType.Color,title:\"Checked Color\",defaultValue:\"#0099FF\"},// Checkbox visibility\nshowCheckbox:{type:ControlType.Boolean,title:\"Show Checkbox\",defaultValue:true,description:\"Hide to show text only\"},// Icon options\niconType:{type:ControlType.Enum,title:\"Icon Type\",options:[\"check\",\"circle\",\"x\",\"hidden\",\"custom\"],optionTitles:[\"Check ✓\",\"Circle ●\",\"X ✗\",\"Hidden\",\"Custom SVG\"],defaultValue:\"check\"},checkmarkColor:{type:ControlType.Color,title:\"Icon Color\",defaultValue:\"#FFFFFF\"},customIcon:{type:ControlType.String,title:\"Custom Icon SVG\",description:\"Paste SVG code here\",displayTextArea:true,hidden:props=>props.iconType!==\"custom\"},// Container styling\ncontainerBackground:{type:ControlType.Color,title:\"Container Background\",optional:true},containerBorder:{type:ControlType.Border,title:\"Container Border\",optional:true},containerBorderRadius:{type:ControlType.BorderRadius,title:\"Container Radius\",defaultValue:0},containerPadding:{type:ControlType.Padding,title:\"Container Padding\",defaultValue:\"0px\"},// Checked state container styling\ncheckedContainerBackground:{type:ControlType.Color,title:\"Checked Background\",optional:true},checkedContainerBorder:{type:ControlType.Border,title:\"Checked Border\",optional:true},checkboxLabelGap:{type:ControlType.Number,title:\"Checkbox-Label Gap\",min:0,max:24,step:1,defaultValue:10,displayStepper:true}};/**\r\n * Single checkbox validation controls\r\n */export const CHECKBOX_VALIDATION_CONTROLS={requiredMessage:{type:ControlType.String,title:\"Required Error\",placeholder:\"This field must be checked\"},successMessage:{type:ControlType.String,title:\"Success Message\",placeholder:\"Checked!\"}};/**\r\n * Checkbox group style controls (includes gap)\r\n */export const CHECKBOX_GROUP_STYLE_CONTROLS={selectionBox:{type:ControlType.Object,title:\"Selection Box\",description:\"Style the square checkbox and check icon.\",optional:true,controls:{size:{type:ControlType.Number,title:\"Box Size\",min:12,max:40,step:1,defaultValue:20,displayStepper:true,description:\"Size of the checkbox square.\"},borderRadius:{type:ControlType.BorderRadius,title:\"Corner Roundness\",defaultValue:4,description:\"Roundness of the checkbox corners.\"},border:{type:ControlType.Border,title:\"Border\",defaultValue:{borderWidth:2,borderColor:\"#E8E8E8\",borderStyle:\"solid\"}},checkedColor:{type:ControlType.Color,title:\"Checked Color\",defaultValue:\"#0099FF\",description:\"Color when selected.\"},hoverCheckedColor:{type:ControlType.Color,title:\"Checked Hover Color\",optional:true,description:\"Optional color when selected and hovered.\"},showCheckbox:{type:ControlType.Boolean,title:\"Show Checkbox\",defaultValue:true,description:\"Turn off for text-only choices.\"},iconType:{type:ControlType.Enum,title:\"Icon Type\",options:[\"check\",\"circle\",\"x\",\"hidden\",\"custom\"],optionTitles:[\"Check\",\"Circle\",\"X\",\"Hidden\",\"Custom SVG\"],defaultValue:\"check\",description:\"Icon shown inside checked box.\"},checkmarkColor:{type:ControlType.Color,title:\"Icon Color\",defaultValue:\"#FFFFFF\"},customIcon:{type:ControlType.String,title:\"Custom Icon SVG\",description:\"Paste SVG code if Icon Type is Custom SVG.\",displayTextArea:true,hidden:props=>props.iconType!==\"custom\"}}},optionCard:{type:ControlType.Object,title:\"Option Card\",description:\"Style the row/card that holds each option.\",optional:true,controls:{background:{type:ControlType.Color,title:\"Background\",optional:true},border:{type:ControlType.Border,title:\"Border\",optional:true},borderRadius:{type:ControlType.BorderRadius,title:\"Corner Roundness\",defaultValue:0},padding:{type:ControlType.Padding,title:\"Padding\",defaultValue:\"0px\"},hoverBackground:{type:ControlType.Color,title:\"Hover Bg\",optional:true},hoverBorder:{type:ControlType.Border,title:\"Hover Border\",optional:true},checkedBackground:{type:ControlType.Color,title:\"Checked Background\",optional:true},checkedBorder:{type:ControlType.Border,title:\"Checked Border\",optional:true},checkedHoverBackground:{type:ControlType.Color,title:\"Checked Hover Bg\",optional:true},checkedHoverBorder:{type:ControlType.Border,title:\"Checked Hover Border\",optional:true}}},optionText:{type:ControlType.Object,title:\"Option Text\",description:\"Typography and colors for option labels.\",optional:true,controls:{font:{type:ControlType.Font,title:\"Font\",controls:\"extended\",displayFontSize:true,displayTextAlignment:false,defaultValue:{fontSize:12,fontWeight:400}},color:{type:ControlType.Color,title:\"Text Color\",defaultValue:\"#999999\"},checkedColor:{type:ControlType.Color,title:\"Checked Text Color\",optional:true},hoverColor:{type:ControlType.Color,title:\"Hover Color\",optional:true},checkedHoverColor:{type:ControlType.Color,title:\"Checked Hover\",optional:true},prefixColor:{type:ControlType.Color,title:\"Prefix Color\",optional:true},suffixColor:{type:ControlType.Color,title:\"Suffix Color\",optional:true},prefixFont:{type:ControlType.Font,title:\"Prefix Font\",controls:\"extended\",displayFontSize:true,displayTextAlignment:false,defaultValue:{fontSize:12,fontWeight:400}},suffixFont:{type:ControlType.Font,title:\"Suffix Font\",controls:\"extended\",displayFontSize:true,displayTextAlignment:false,defaultValue:{fontSize:12,fontWeight:400}}}},spacing:{type:ControlType.Object,title:\"Spacing\",description:\"Control distances between items and text.\",optional:true,controls:{optionGap:{type:ControlType.Number,title:\"Gap Between Choices\",defaultValue:12,displayStepper:true},checkboxLabelGap:{type:ControlType.Number,title:\"Box to Label Gap\",defaultValue:10,displayStepper:true},prefixSuffixGap:{type:ControlType.Number,title:\"Prefix/Suffix Gap\",defaultValue:4,displayStepper:true}}}};/**\r\n * Checkbox group validation controls (includes min/max selection)\r\n */export const CHECKBOX_GROUP_VALIDATION_CONTROLS={requiredMessage:{type:ControlType.String,title:\"Required Error\",placeholder:\"Please select at least one option\"},minSelected:{type:ControlType.Number,title:\"Min Selections\",min:0,description:\"Minimum number of selections required\"},maxSelected:{type:ControlType.Number,title:\"Max Selections\",min:1,description:\"Maximum number of selections allowed\"},minMessage:{type:ControlType.String,title:\"Min Error\",placeholder:\"Select at least {min} options\"},maxMessage:{type:ControlType.String,title:\"Max Error\",placeholder:\"Select at most {max} options\"},successMessage:{type:ControlType.String,title:\"Success Message\",placeholder:\"Great choice!\"}};\nexport const __FramerMetadata__ = {\"exports\":{\"MULTI_STEP_NEXT_RULES_CONTROL\":{\"type\":\"variable\",\"annotations\":{\"framerContractVersion\":\"1\"}},\"BASE_INPUT_STYLE_CONTROLS\":{\"type\":\"variable\",\"annotations\":{\"framerContractVersion\":\"1\"}},\"FOCUS_STYLE_CONTROLS\":{\"type\":\"variable\",\"annotations\":{\"framerContractVersion\":\"1\"}},\"VALIDATION_TOGGLE_CONTROLS\":{\"type\":\"variable\",\"annotations\":{\"framerContractVersion\":\"1\"}},\"CHECKBOX_GROUP_VALIDATION_CONTROLS\":{\"type\":\"variable\",\"annotations\":{\"framerContractVersion\":\"1\"}},\"CHECKBOX_LABEL_STYLE_CONTROLS\":{\"type\":\"variable\",\"annotations\":{\"framerContractVersion\":\"1\"}},\"MULTI_STEP_MATCH_CONTROL\":{\"type\":\"variable\",\"annotations\":{\"framerContractVersion\":\"1\"}},\"SHOW_IF_MATCH_CONTROL\":{\"type\":\"variable\",\"annotations\":{\"framerContractVersion\":\"1\"}},\"ERROR_STYLE_CONTROLS\":{\"type\":\"variable\",\"annotations\":{\"framerContractVersion\":\"1\"}},\"MULTI_STEP_CONDITION_CONTROL\":{\"type\":\"variable\",\"annotations\":{\"framerContractVersion\":\"1\"}},\"MULTI_STEP_PREVIOUS_RULES_CONTROL\":{\"type\":\"variable\",\"annotations\":{\"framerContractVersion\":\"1\"}},\"MULTI_STEP_SUBMIT_RULES_CONTROL\":{\"type\":\"variable\",\"annotations\":{\"framerContractVersion\":\"1\"}},\"CHECKBOX_STYLE_CONTROLS\":{\"type\":\"variable\",\"annotations\":{\"framerContractVersion\":\"1\"}},\"createStylingControl\":{\"type\":\"function\",\"annotations\":{\"framerContractVersion\":\"1\"}},\"SHOW_IF_ACTION_CONTROL\":{\"type\":\"variable\",\"annotations\":{\"framerContractVersion\":\"1\"}},\"LABEL_STYLE_CONTROLS\":{\"type\":\"variable\",\"annotations\":{\"framerContractVersion\":\"1\"}},\"CHECKBOX_VALIDATION_CONTROLS\":{\"type\":\"variable\",\"annotations\":{\"framerContractVersion\":\"1\"}},\"VALIDATION_CONTROLS\":{\"type\":\"variable\",\"annotations\":{\"framerContractVersion\":\"1\"}},\"SUCCESS_STYLE_CONTROLS\":{\"type\":\"variable\",\"annotations\":{\"framerContractVersion\":\"1\"}},\"SHOW_IF_CONTROL\":{\"type\":\"variable\",\"annotations\":{\"framerContractVersion\":\"1\"}},\"CHECKBOX_GROUP_STYLE_CONTROLS\":{\"type\":\"variable\",\"annotations\":{\"framerContractVersion\":\"1\"}},\"STORE_CONFIG_CONTROL\":{\"type\":\"variable\",\"annotations\":{\"framerContractVersion\":\"1\"}},\"__FramerMetadata__\":{\"type\":\"variable\"}}}\n//# sourceMappingURL=./Property_controls.map","import{jsx as _jsx,jsxs as _jsxs}from\"react/jsx-runtime\";export const IconCheck=props=>/*#__PURE__*/_jsx(\"svg\",{xmlns:\"http://www.w3.org/2000/svg\",width:\"16\",height:\"16\",viewBox:\"0 0 24 24\",fill:\"none\",stroke:\"currentColor\",strokeWidth:\"2\",strokeLinecap:\"round\",strokeLinejoin:\"round\",...props,children:/*#__PURE__*/_jsx(\"polyline\",{points:\"20 6 9 17 4 12\"})});export const IconAlert=props=>/*#__PURE__*/_jsxs(\"svg\",{xmlns:\"http://www.w3.org/2000/svg\",width:\"14\",height:\"14\",viewBox:\"0 0 24 24\",fill:\"none\",stroke:\"currentColor\",strokeWidth:\"2\",strokeLinecap:\"round\",strokeLinejoin:\"round\",...props,children:[/*#__PURE__*/_jsx(\"circle\",{cx:\"12\",cy:\"12\",r:\"10\"}),/*#__PURE__*/_jsx(\"line\",{x1:\"12\",y1:\"8\",x2:\"12\",y2:\"12\"}),/*#__PURE__*/_jsx(\"line\",{x1:\"12\",y1:\"16\",x2:\"12.01\",y2:\"16\"})]});export const ClockIcon=props=>/*#__PURE__*/_jsxs(\"svg\",{xmlns:\"http://www.w3.org/2000/svg\",width:\"16\",height:\"16\",viewBox:\"0 0 24 24\",fill:\"none\",stroke:\"currentColor\",strokeWidth:\"2\",strokeLinecap:\"round\",strokeLinejoin:\"round\",...props,children:[/*#__PURE__*/_jsx(\"circle\",{cx:\"12\",cy:\"12\",r:\"10\"}),/*#__PURE__*/_jsx(\"polyline\",{points:\"12 6 12 12 16 14\"})]});export const CalendarIcon=props=>/*#__PURE__*/_jsxs(\"svg\",{xmlns:\"http://www.w3.org/2000/svg\",width:\"16\",height:\"16\",viewBox:\"0 0 24 24\",fill:\"none\",stroke:\"currentColor\",strokeWidth:\"2\",strokeLinecap:\"round\",strokeLinejoin:\"round\",...props,children:[/*#__PURE__*/_jsx(\"rect\",{x:\"3\",y:\"4\",width:\"18\",height:\"18\",rx:\"2\",ry:\"2\"}),/*#__PURE__*/_jsx(\"line\",{x1:\"16\",y1:\"2\",x2:\"16\",y2:\"6\"}),/*#__PURE__*/_jsx(\"line\",{x1:\"8\",y1:\"2\",x2:\"8\",y2:\"6\"}),/*#__PURE__*/_jsx(\"line\",{x1:\"3\",y1:\"10\",x2:\"21\",y2:\"10\"})]});export const ChevronIcon=props=>/*#__PURE__*/_jsx(\"svg\",{xmlns:\"http://www.w3.org/2000/svg\",width:\"12\",height:\"12\",viewBox:\"0 0 12 12\",fill:\"none\",stroke:\"currentColor\",strokeWidth:\"1.5\",strokeLinecap:\"round\",strokeLinejoin:\"round\",...props,children:/*#__PURE__*/_jsx(\"path\",{d:\"M2.5 4.5L6 8L9.5 4.5\"})});export const renderIcon=({iconType=\"default\",customIcon,DefaultIcon,props={}})=>{if(iconType===\"custom\"&&customIcon){// If it looks like an SVG tag, render as HTML\nif(customIcon.trim().startsWith(\"<svg\")){const normalizeSvgSize=svg=>svg.replace(/<svg\\b([^>]*)>/i,(_match,attrs)=>{let cleanedAttrs=attrs.replace(/\\s(width|height)=[\"'][^\"']*[\"']/gi,\"\").replace(/\\sstyle=[\"']([^\"']*)[\"']/i,(_styleMatch,styleValue)=>{const filteredStyle=String(styleValue).replace(/(?:^|;)\\s*(width|height)\\s*:\\s*[^;]+;?/gi,\"\").trim();return filteredStyle?` style=\"${filteredStyle}\"`:\"\";});return`<svg${cleanedAttrs} width=\"100%\" height=\"100%\" preserveAspectRatio=\"xMidYMid meet\">`;});// Process SVG to replace hardcoded colors with currentColor\n// This allows the icon to inherit color from the parent element\nconst processedSvg=normalizeSvgSize(customIcon// Replace fill colors (hex, rgb, named colors) with currentColor\n.replace(/fill=[\"']#[0-9a-fA-F]{3,6}[\"']/gi,'fill=\"currentColor\"').replace(/fill=[\"']rgb\\([^)]+\\)[\"']/gi,'fill=\"currentColor\"').replace(/fill=[\"'](black|white|red|blue|green|gray|grey)[\"']/gi,'fill=\"currentColor\"')// Replace stroke colors with currentColor\n.replace(/stroke=[\"']#[0-9a-fA-F]{3,6}[\"']/gi,'stroke=\"currentColor\"').replace(/stroke=[\"']rgb\\([^)]+\\)[\"']/gi,'stroke=\"currentColor\"').replace(/stroke=[\"'](black|white|red|blue|green|gray|grey)[\"']/gi,'stroke=\"currentColor\"'));const htmlProps=props||{};const{style:propStyle,...restHtmlProps}=htmlProps;return /*#__PURE__*/_jsx(\"div\",{style:{display:\"flex\",alignItems:\"center\",justifyContent:\"center\",width:\"100%\",height:\"100%\",overflow:\"hidden\",color:\"currentColor\",...propStyle||{}},dangerouslySetInnerHTML:{__html:processedSvg},...restHtmlProps});}// Assume it's an image URL\nreturn /*#__PURE__*/_jsx(\"img\",{src:customIcon,alt:\"Icon\",style:{width:\"100%\",height:\"100%\",objectFit:\"contain\"},...props});}// Default\nreturn /*#__PURE__*/_jsx(DefaultIcon,{...props});};\nexport const __FramerMetadata__ = {\"exports\":{\"CalendarIcon\":{\"type\":\"variable\",\"annotations\":{\"framerContractVersion\":\"1\"}},\"ChevronIcon\":{\"type\":\"variable\",\"annotations\":{\"framerContractVersion\":\"1\"}},\"IconAlert\":{\"type\":\"variable\",\"annotations\":{\"framerContractVersion\":\"1\"}},\"ClockIcon\":{\"type\":\"variable\",\"annotations\":{\"framerContractVersion\":\"1\"}},\"IconCheck\":{\"type\":\"variable\",\"annotations\":{\"framerContractVersion\":\"1\"}},\"renderIcon\":{\"type\":\"variable\",\"annotations\":{\"framerContractVersion\":\"1\"}},\"__FramerMetadata__\":{\"type\":\"variable\"}}}\n//# sourceMappingURL=./Icons.map","/**\r\n * FormKitPrevious - Previous Step Button\r\n *\r\n * Button to navigate to the previous form step.\r\n *\r\n * Features:\r\n * - Auto-connects to form navigation\r\n * - Customizable styling OR custom component\r\n * - Auto-hides on first step (in preview)\r\n */import{jsx as _jsx,jsxs as _jsxs}from\"react/jsx-runtime\";import{addPropertyControls,ControlType,RenderTarget}from\"framer\";import{getFormStore,getFormStoreKey}from\"https://framerusercontent.com/modules/W9pGMfwOEUT2E0G0vdr3/42YKtSLeppXsa3v6m16i/Store_management.js\";import{getFormKitNavigation}from\"https://framerusercontent.com/modules/3iJH2tW5QUFgpH9So3nO/UF4nz2hAgJN545Fau7sS/Form_navigation.js\";import{HiddenFieldMarker}from\"https://framerusercontent.com/modules/zT6ckO4RKI5zB9JzgGVW/5pPr41RBexGJfYLsBNcj/HiddenFieldMarker.js\";/**\r\n * @framerIntrinsicWidth 300\r\n * @framerSupportedLayoutHeight auto\r\n * @framerSupportedLayoutWidth any-prefer-fixed\r\n * @framerDisableUnlink\r\n */export default function FormKitPrevious(props){const{formId=\"default\",// Button type\nbuttonType=\"default\",customButton,// Default mode props\ntext=\"Previous\",hideOnFirstStep=true,disabled=false,style,buttonStyles={},styling={},...rest}=props;const{buttonStyles:buttonCustomStyles={},hoverStyles={}}=styling;const actualFormId=getFormStoreKey(formId,\"auto\");const useStore=getFormStore(actualFormId);const[state,setState]=useStore();const totalSteps=Math.max(1,Number(state.totalSteps)||1);const currentStep=Math.max(0,Number(state.currentStep)||0);const stepsInitialized=!!state.stepsInitialized;const isFirstStep=currentStep<=0;const hasMultipleSteps=totalSteps>1;const shouldTreatAsFirstStep=stepsInitialized&&hasMultipleSteps&&isFirstStep;const isCompleted=!!state.isCompleted;const isCanvas=RenderTarget.current()===RenderTarget.canvas;// Hide only for true multi-step forms.\n// If step metadata is missing/invalid (common with mismatched formId), keep button visible.\nif(hideOnFirstStep&&(!stepsInitialized||shouldTreatAsFirstStep)&&!isCanvas){return null;}// When MultiStep has switched to success state, hide navigation in preview/live.\nif(isCompleted&&!isCanvas){return null;}const handleClick=()=>{if(shouldTreatAsFirstStep||disabled||isCompleted)return;const navigation=getFormKitNavigation(actualFormId);console.log(\"[FormKitPrevious] handleClick\",{formId:actualFormId,currentStep:currentStep+1,totalSteps,hasNavigation:!!navigation,previousRulesCount:state?.previousRules?.length||0});setState({submitAttempted:false,submitState:\"idle\",errors:{}});if(navigation?.previousStep){navigation.previousStep();}else{console.warn(\"[FormKitPrevious] Missing navigation handler\",{formId:actualFormId,currentStep:currentStep+1,totalSteps});}};// ========================================================================\n// CUSTOM COMPONENT HELPERS\n// ========================================================================\nconst renderSlotWithVariant=slotComponent=>{if(!slotComponent)return null;// Just render as-is, no variant switching for Previous button\nreturn slotComponent;};const renderCustomButtonPlaceholder=()=>{return /*#__PURE__*/_jsxs(\"div\",{style:{padding:\"24px\",textAlign:\"center\",backgroundColor:\"#f8f9fa\",border:\"2px dashed #dee2e6\",borderRadius:\"8px\",color:\"#6c757d\",width:\"100%\"},children:[/*#__PURE__*/_jsx(\"div\",{style:{fontSize:\"16px\",fontWeight:500,marginBottom:\"8px\",color:\"#495057\"},children:\"Connect Custom Button\"}),/*#__PURE__*/_jsx(\"div\",{style:{fontSize:\"14px\"},children:\"Add any button component\"})]});};const renderCustomButton=()=>{const hasCustomButton=customButton&&Array.isArray(customButton)&&customButton.length>0;if(!hasCustomButton){if(isCanvas){return renderCustomButtonPlaceholder();}return /*#__PURE__*/_jsx(HiddenFieldMarker,{});}return renderSlotWithVariant(customButton[0]);};// ========================================================================\n// RENDER\n// ========================================================================\n// Custom button mode\nif(buttonType===\"custom\"){return /*#__PURE__*/_jsx(\"div\",{style:{width:\"100%\"},children:/*#__PURE__*/_jsx(\"button\",{type:\"button\",onClick:handleClick,disabled:disabled||shouldTreatAsFirstStep,style:{all:\"unset\",display:\"block\",width:\"100%\",cursor:disabled||shouldTreatAsFirstStep?\"not-allowed\":\"pointer\",opacity:disabled||shouldTreatAsFirstStep?.5:1,boxSizing:\"border-box\"},children:renderCustomButton()})});}// Default button mode\nreturn /*#__PURE__*/_jsx(\"button\",{...style,type:\"button\",onClick:handleClick,disabled:shouldTreatAsFirstStep||disabled,style:{...style,width:\"100%\",padding:buttonCustomStyles.padding??\"12px 24px\",fontFamily:buttonCustomStyles.font?.fontFamily??\"inherit\",fontSize:buttonCustomStyles.font?.fontSize??14,fontWeight:buttonCustomStyles.font?.fontWeight??600,letterSpacing:buttonCustomStyles.font?.letterSpacing??undefined,lineHeight:buttonCustomStyles.font?.lineHeight??undefined,color:buttonCustomStyles.color??\"#333333\",backgroundColor:buttonCustomStyles.backgroundColor??\"#F0F0F0\",...buttonCustomStyles.border,borderColor:buttonCustomStyles.border?.borderColor??\"#E0E0E0\",borderRadius:`${buttonCustomStyles.borderRadius??6}px`,cursor:shouldTreatAsFirstStep||disabled?\"not-allowed\":\"pointer\",opacity:shouldTreatAsFirstStep||disabled?.5:1,transition:\"opacity 0.2s, transform 0.1s, background-color 0.2s, color 0.2s\",display:\"flex\",alignItems:\"center\",justifyContent:\"center\",gap:\"8px\",...buttonStyles},onMouseEnter:e=>{if(!shouldTreatAsFirstStep&&!disabled){if(hoverStyles.backgroundColor){e.currentTarget.style.backgroundColor=hoverStyles.backgroundColor;}if(hoverStyles.color){e.currentTarget.style.color=hoverStyles.color;}if(hoverStyles.borderColor){e.currentTarget.style.borderColor=hoverStyles.borderColor;}if(hoverStyles.opacity!==undefined){e.currentTarget.style.opacity=String(hoverStyles.opacity);}else if(!hoverStyles.backgroundColor){e.currentTarget.style.opacity=\"0.9\";}if(hoverStyles.scale){e.currentTarget.style.transform=`scale(${hoverStyles.scale})`;}}},onMouseLeave:e=>{if(!shouldTreatAsFirstStep&&!disabled){e.currentTarget.style.backgroundColor=buttonCustomStyles.backgroundColor??\"#F0F0F0\";e.currentTarget.style.color=buttonCustomStyles.color??\"#333333\";e.currentTarget.style.borderColor=buttonCustomStyles.border?.borderColor??\"#E0E0E0\";e.currentTarget.style.opacity=\"1\";e.currentTarget.style.transform=\"scale(1)\";}},onMouseDown:e=>{if(!shouldTreatAsFirstStep&&!disabled){e.currentTarget.style.transform=\"scale(0.98)\";}},onMouseUp:e=>{if(!shouldTreatAsFirstStep&&!disabled){e.currentTarget.style.transform=\"scale(1)\";}},children:text});}addPropertyControls(FormKitPrevious,{formId:{type:ControlType.String,title:\"Form ID\",defaultValue:\"default\",description:\"Powered by [framerformkit](https://framerformkit.com)\"},// === BUTTON TYPE ===\nbuttonType:{type:ControlType.Enum,title:\"Button Type\",options:[\"default\",\"custom\"],optionTitles:[\"Default (Built-in)\",\"Your Component\"],defaultValue:\"default\",displaySegmentedControl:true,segmentedControlDirection:\"vertical\"},// === CUSTOM BUTTON SLOT ===\ncustomButton:{type:ControlType.Slot,title:\"Custom Button\",description:\"Connect any button component\",maxCount:1,hidden:props=>props.buttonType!==\"custom\"},// === DEFAULT BUTTON TEXT ===\ntext:{type:ControlType.String,title:\"Button Text\",defaultValue:\"Previous\",hidden:props=>props.buttonType===\"custom\"},// === BEHAVIOR ===\ndisabled:{type:ControlType.Boolean,title:\"Disabled\",defaultValue:false},hideOnFirstStep:{type:ControlType.Boolean,title:\"Hide On First\",defaultValue:true,description:\"Hide button at first step in preview/live\"},// === STYLING ===\nstyling:{type:ControlType.Object,buttonTitle:\"Styles\",hidden:props=>props.buttonType===\"custom\",controls:{buttonStyles:{type:ControlType.Object,buttonTitle:\"Button\",controls:{backgroundColor:{type:ControlType.Color,title:\"Background\",defaultValue:\"#F0F0F0\"},color:{type:ControlType.Color,title:\"Text Color\",defaultValue:\"#333333\"},font:{type:ControlType.Font,title:\"Font\",controls:\"extended\",displayFontSize:true,displayTextAlignment:false,defaultValue:{fontSize:14,fontWeight:600,fontFamily:\"Inter\"}},borderRadius:{type:ControlType.Number,title:\"Radius\",defaultValue:6,min:0,max:100},border:{type:ControlType.Border,title:\"Border\",defaultValue:{borderWidth:1,borderColor:\"#E0E0E0\",borderStyle:\"solid\"}},padding:{type:ControlType.Padding,title:\"Padding\",defaultValue:\"12px 24px 12px 24px\"}}},hoverStyles:{type:ControlType.Object,buttonTitle:\"Hover\",optional:true,controls:{backgroundColor:{type:ControlType.Color,title:\"Background\",defaultValue:\"#E0E0E0\"},color:{type:ControlType.Color,title:\"Text Color\",defaultValue:\"#333333\"},borderColor:{type:ControlType.Color,title:\"Border Color\",defaultValue:\"rgba(0, 0, 0, 0)\"},opacity:{type:ControlType.Number,title:\"Opacity\",min:0,max:1,step:.1,defaultValue:.9},scale:{type:ControlType.Number,title:\"Scale\",min:.8,max:1.2,step:.01,defaultValue:1}}}}}});\nexport const __FramerMetadata__ = {\"exports\":{\"default\":{\"type\":\"reactComponent\",\"name\":\"FormKitPrevious\",\"slots\":[],\"annotations\":{\"framerIntrinsicWidth\":\"300\",\"framerSupportedLayoutHeight\":\"auto\",\"framerContractVersion\":\"1\",\"framerSupportedLayoutWidth\":\"any-prefer-fixed\",\"framerDisableUnlink\":\"\"}},\"__FramerMetadata__\":{\"type\":\"variable\"}}}\n//# sourceMappingURL=./FormKitPrevious.map","/**\n * FormKitMultiStep - Main Form Wrapper\n *\n * This is the core wrapper component that manages multi-step form state.\n * Connect slots directly - each slot = one step.\n *\n * Features:\n * - Auto-save to localStorage\n * - URL parameter prefill\n * - Step navigation (shows one step at a time in preview)\n * - Form submission\n * - Canvas shows all steps for editing, preview shows current step only\n */import{jsx as _jsx,jsxs as _jsxs}from\"react/jsx-runtime\";import{addPropertyControls,ControlType,RenderTarget}from\"framer\";import{useEffect,useLayoutEffect,useMemo,useRef,useState,Children,isValidElement,cloneElement}from\"react\";import{getFormStore,getFormStoreKey,saveFormToLocalStorage,loadFormFromLocalStorage,clearFormFromLocalStorage,parseUrlParams}from\"https://framerusercontent.com/modules/W9pGMfwOEUT2E0G0vdr3/42YKtSLeppXsa3v6m16i/Store_management.js\";import{findMatchingMultiStepRules,findFirstMatchingMultiStepRule,normalizeConditionValue,normalizeTargetStep}from\"https://framerusercontent.com/modules/YQMwVuIkIDYjLHJOwEnu/E43Ih1OWNh9ZYDxH2sAu/Conditions.js\";import{registerFormKitNavigation,unregisterFormKitNavigation}from\"https://framerusercontent.com/modules/3iJH2tW5QUFgpH9So3nO/UF4nz2hAgJN545Fau7sS/Form_navigation.js\";import{IconCheck,renderIcon}from\"https://framerusercontent.com/modules/hSeRQvQLiNwfAzfTZN4C/2faSrR7PxMT7RJTYjc17/Icons.js\";import{MULTI_STEP_NEXT_RULES_CONTROL,MULTI_STEP_PREVIOUS_RULES_CONTROL,MULTI_STEP_SUBMIT_RULES_CONTROL}from\"https://framerusercontent.com/modules/gWXlNkIcFnVLxXMR7ktn/JtLdSfrUYaW9eElJLaFM/Property_controls.js\";function normalizePaddingValue(value,fallback,options){const withUnit=v=>typeof v===\"number\"?`${v}px`:String(v??\"0\");const isZeroLike=v=>{if(v===0||v===\"0\"||v===\"0px\")return true;if(typeof v===\"string\"){const compact=v.trim().toLowerCase().replace(/\\s+/g,\" \");return compact===\"0px 0px 0px 0px\"||compact===\"0 0 0 0\";}if(typeof v===\"object\"&&v){const top=Number(v.paddingTop??v.top??0);const right=Number(v.paddingRight??v.right??0);const bottom=Number(v.paddingBottom??v.bottom??0);const left=Number(v.paddingLeft??v.left??0);return top===0&&right===0&&bottom===0&&left===0;}return false;};if(value===undefined||value===null||value===\"\")return fallback;if(options?.treatZeroAsUnset&&isZeroLike(value))return fallback;if(typeof value===\"string\"||typeof value===\"number\")return value;if(typeof value===\"object\"){// Framer may return object shapes like { padding: \"0px\" } or { value: \"0px\" }\nif(value.padding!==undefined){if(options?.treatZeroAsUnset&&isZeroLike(value.padding))return fallback;return value.padding;}if(value.value!==undefined){if(options?.treatZeroAsUnset&&isZeroLike(value.value))return fallback;return value.value;}const top=withUnit(value.paddingTop??value.top??0);const right=withUnit(value.paddingRight??value.right??0);const bottom=withUnit(value.paddingBottom??value.bottom??0);const left=withUnit(value.paddingLeft??value.left??0);return`${top} ${right} ${bottom} ${left}`;}return fallback;}function normalizeBorderRadiusValue(value,fallback,options){const withUnit=v=>typeof v===\"number\"?`${v}px`:String(v??\"0\");const isZeroLike=v=>{if(v===0||v===\"0\"||v===\"0px\")return true;if(typeof v===\"string\"){const compact=v.trim().toLowerCase().replace(/\\s+/g,\" \");return compact===\"0px 0px 0px 0px\"||compact===\"0 0 0 0\";}if(typeof v===\"object\"&&v){const tl=Number(v.topLeft??v.borderTopLeftRadius??v.top??0);const tr=Number(v.topRight??v.borderTopRightRadius??v.right??0);const br=Number(v.bottomRight??v.borderBottomRightRadius??v.bottom??0);const bl=Number(v.bottomLeft??v.borderBottomLeftRadius??v.left??0);return tl===0&&tr===0&&br===0&&bl===0;}return false;};if(value===undefined||value===null||value===\"\")return fallback;if(options?.treatZeroAsUnset&&isZeroLike(value))return fallback;if(typeof value===\"string\"||typeof value===\"number\")return value;if(typeof value===\"object\"){// Framer may return object shapes like { radius: 0 }, { borderRadius: 0 }, { value: 0 }\nif(value.radius!==undefined){if(options?.treatZeroAsUnset&&isZeroLike(value.radius))return fallback;return value.radius;}if(value.borderRadius!==undefined){if(options?.treatZeroAsUnset&&isZeroLike(value.borderRadius))return fallback;return value.borderRadius;}if(value.value!==undefined){if(options?.treatZeroAsUnset&&isZeroLike(value.value))return fallback;return value.value;}const tl=withUnit(value.topLeft??value.borderTopLeftRadius??value.top??0);const tr=withUnit(value.topRight??value.borderTopRightRadius??value.right??0);const br=withUnit(value.bottomRight??value.borderBottomRightRadius??value.bottom??0);const bl=withUnit(value.bottomLeft??value.borderBottomLeftRadius??value.left??0);return`${tl} ${tr} ${br} ${bl}`;}return fallback;}function serializeNativeSubmissionValue(value){if(value===null||value===undefined)return\"\";if(Array.isArray(value)){return value.map(item=>{if(item===null||item===undefined)return\"\";if(typeof item===\"string\")return item;if(typeof item===\"number\"||typeof item===\"boolean\"){return String(item);}if(typeof item===\"object\"){if(typeof item.url===\"string\"&&item.url.length>0){return item.url;}if(typeof item.value===\"string\"&&item.value.length>0){return item.value;}if(typeof item.label===\"string\"&&item.label.length>0){return item.label;}}return JSON.stringify(item);}).filter(Boolean).join(\", \");}if(typeof value===\"object\"){if(typeof value.url===\"string\"&&value.url.length>0){return value.url;}if(typeof value.value===\"string\"&&value.value.length>0){return value.value;}if(typeof value.label===\"string\"&&value.label.length>0){return value.label;}return JSON.stringify(value);}return String(value);}function hasAutoJumpAnswer(value){if(value===null||value===undefined||value===\"\")return false;if(Array.isArray(value))return value.length>0;if(typeof value===\"number\")return value>0;return true;}/**\n * @framerIntrinsicWidth 300\n * @framerSupportedLayoutHeight auto\n * @framerSupportedLayoutWidth any-prefer-fixed\n * @framerDisableUnlink\n */export default function FormKitMultiStep(props){const{formId=\"default\",canvasView=\"single\",canvasPage=1,canvasShowSuccess=false,children,saveToLocalStorage=true,autoJumpToNextPage=false,triggerScrolling=false,scrollTarget=\"multistep\",scrollTargetId=\"\",scrollBehavior=\"smooth\",scrollOffset=0,submitUrl,redirectUrl,passDataToUrl=false,previousBehavior=\"history\",nextRules=[],previousRules=[],submitSuccessRules=[],onSubmit,successMode=\"default\",successSlot,successMessage=\"Form submitted successfully!\",showSuccessView=true,successDisplayDelay=1e3,showTryAgain=false,tryAgainText=\"Submit Again\",clearDataOnTryAgain=true,successActionsGap=10,tryAgainStyles,successStyles,errorMessage=\"Failed to submit form. Please try again.\",style,...rest}=props;// Get or create store\nconst actualFormId=getFormStoreKey(formId,\"auto\");const useStore=getFormStore(actualFormId);const[state,setState]=useStore();// Create a ref to hold the latest state for async operations\n// This fixes the \"stale state\" issue in handleSubmit\nconst stateRef=useRef(state);useEffect(()=>{stateRef.current=state;},[state]);const nextRulesKey=JSON.stringify(nextRules||[]);const previousRulesKey=JSON.stringify(previousRules||[]);const submitSuccessRulesKey=JSON.stringify(submitSuccessRules||[]);// Ref to track DOM for finding parent form\nconst containerRef=useRef(null);const[renderedFieldNames,setRenderedFieldNames]=useState([]);const successDisplayTimerRef=useRef(null);const autoJumpTimerRef=useRef(null);const lastAutoJumpSignatureRef=useRef(null);const stepEntryFieldSignatureRef=useRef(null);const pendingStepScrollRef=useRef(null);const clearSuccessDisplayTimer=()=>{if(successDisplayTimerRef.current!==null){window.clearTimeout(successDisplayTimerRef.current);successDisplayTimerRef.current=null;}};const clearAutoJumpTimer=()=>{if(autoJumpTimerRef.current!==null){window.clearTimeout(autoJumpTimerRef.current);autoJumpTimerRef.current=null;}};useEffect(()=>{return()=>{clearSuccessDisplayTimer();clearAutoJumpTimer();};},[]);const scrollToStepTarget=()=>{if(typeof window===\"undefined\")return;if(scrollTarget===\"page\"){window.scrollTo({top:0,behavior:scrollBehavior});return;}const customTargetId=scrollTargetId?.trim();const targetElement=scrollTarget===\"custom\"&&customTargetId?document.getElementById(customTargetId):containerRef.current;const fallbackElement=containerRef.current;const elementToScroll=targetElement||fallbackElement;if(!elementToScroll)return;const nextTop=elementToScroll.getBoundingClientRect().top+window.scrollY-Math.max(0,Number(scrollOffset)||0);window.scrollTo({top:Math.max(0,nextTop),behavior:scrollBehavior});};// Initialize form on mount\nuseEffect(()=>{// Reset transient runtime state on mount so preview starts fresh\nsetState({isSubmitting:false,isCompleted:false,submitAttempted:false,submitState:\"idle\",stepsInitialized:false});// 1. Try to restore from localStorage\nif(saveToLocalStorage){const saved=loadFormFromLocalStorage(actualFormId);if(saved){setState({currentStep:saved.currentStep||0,data:saved.data||{},visitedSteps:saved.visitedSteps||[0],stepHistory:saved.stepHistory||[saved.currentStep||0],completedSteps:saved.completedSteps||[]});}}// 2. Prefill from URL parameters (overrides localStorage)\nconst urlParams=parseUrlParams();if(Object.keys(urlParams).length>0){setState({data:{...state.data,...urlParams}});}},[]);// Auto-save to localStorage when data changes\nuseEffect(()=>{if(saveToLocalStorage){saveFormToLocalStorage(actualFormId,state);}},[state.data,state.currentStep,state.visitedSteps,state.completedSteps]);useEffect(()=>{setState({nextRules:Array.isArray(nextRules)?nextRules:[],previousRules:Array.isArray(previousRules)?previousRules:[],submitSuccessRules:Array.isArray(submitSuccessRules)?submitSuccessRules:[]});},[nextRulesKey,previousRulesKey,submitSuccessRulesKey]);// Keep step metadata in sync with current children and clamp stale saved state.\nuseLayoutEffect(()=>{const totalSteps=Math.max(1,Children.toArray(children).filter(isValidElement).length);const maxStepIndex=Math.max(0,totalSteps-1);const clampedCurrentStep=Math.max(0,Math.min(Number(state.currentStep)||0,maxStepIndex));const visitedSteps=Array.isArray(state.visitedSteps)?state.visitedSteps.filter(step=>Number.isFinite(step)).map(step=>Number(step)).filter(step=>step>=0&&step<=maxStepIndex):[0];const stepHistory=Array.isArray(state.stepHistory)?state.stepHistory.filter(step=>Number.isFinite(step)).map(step=>Number(step)).filter(step=>step>=0&&step<=maxStepIndex):[clampedCurrentStep];const completedSteps=Array.isArray(state.completedSteps)?state.completedSteps.filter(step=>Number.isFinite(step)).map(step=>Number(step)).filter(step=>step>=0&&step<clampedCurrentStep):[];const safeVisitedSteps=visitedSteps.includes(clampedCurrentStep)?visitedSteps:[...visitedSteps,clampedCurrentStep];const safeStepHistory=stepHistory.length>0?stepHistory:[clampedCurrentStep];const normalizedStepHistory=safeStepHistory[safeStepHistory.length-1]===clampedCurrentStep?safeStepHistory:[...safeStepHistory,clampedCurrentStep];const shouldUpdate=totalSteps!==state.totalSteps||clampedCurrentStep!==state.currentStep||JSON.stringify(safeVisitedSteps)!==JSON.stringify(state.visitedSteps||[])||JSON.stringify(normalizedStepHistory)!==JSON.stringify(state.stepHistory||[])||JSON.stringify(completedSteps)!==JSON.stringify(state.completedSteps||[]);if(shouldUpdate){setState({totalSteps,currentStep:clampedCurrentStep,visitedSteps:safeVisitedSteps,stepHistory:normalizedStepHistory,completedSteps,stepsInitialized:true});}else if(!state.stepsInitialized){setState({stepsInitialized:true});}},[children,state.currentStep,state.totalSteps,state.visitedSteps,state.stepHistory,state.completedSteps,state.stepsInitialized]);// Navigation handlers\nconst navigateToStep=(stepIndex,options)=>{const currentState=stateRef.current;if(stepIndex<0||stepIndex>=currentState.totalSteps)return;const visitedSteps=currentState.visitedSteps.includes(stepIndex)?currentState.visitedSteps:[...currentState.visitedSteps,stepIndex];const nextState={currentStep:stepIndex,visitedSteps};const currentHistory=Array.isArray(currentState.stepHistory)?[...currentState.stepHistory]:[currentState.currentStep];if(options?.historyAction===\"replace\"){currentHistory[currentHistory.length-1]=stepIndex;}else if(options?.historyAction===\"pop\"){const trimmedHistory=currentHistory.length>1?currentHistory.slice(0,currentHistory.length-1):[stepIndex];nextState.stepHistory=trimmedHistory;}else if(currentHistory[currentHistory.length-1]!==stepIndex){nextState.stepHistory=[...currentHistory,stepIndex];}else{nextState.stepHistory=currentHistory;}if(options?.markCurrentAsCompleted&&stepIndex>currentState.currentStep){nextState.completedSteps=currentState.completedSteps.includes(currentState.currentStep)?currentState.completedSteps:[...currentState.completedSteps,currentState.currentStep];}if(triggerScrolling&&stepIndex!==currentState.currentStep){pendingStepScrollRef.current=stepIndex;}setState(nextState);};const goToStep=stepIndex=>{navigateToStep(stepIndex);};const applyFieldMutationRules=(rules,source)=>{const currentState=stateRef.current;const matchingRules=findMatchingMultiStepRules(rules,currentState.data||{});const mutationRules=matchingRules.filter(rule=>rule.action===\"setFieldValue\"||rule.action===\"clearFieldValue\");if(mutationRules.length===0){return{matchingRules,updatedData:currentState.data||{},didMutate:false};}const nextData={...currentState.data||{}};for(const rule of mutationRules){if(!rule.targetField||rule.targetField.trim()===\"\")continue;if(rule.action===\"setFieldValue\"){nextData[rule.targetField]=normalizeConditionValue(rule.targetValue??\"\");console.log(\"[FormKitMultiStep] setFieldValue\",{formId:actualFormId,source,field:rule.targetField,value:nextData[rule.targetField]});}else if(rule.action===\"clearFieldValue\"){delete nextData[rule.targetField];console.log(\"[FormKitMultiStep] clearFieldValue\",{formId:actualFormId,source,field:rule.targetField});}}setState({data:nextData});stateRef.current={...currentState,data:nextData};return{matchingRules,updatedData:nextData,didMutate:true};};const nextStep=()=>{const initialState=stateRef.current;const{matchingRules}=applyFieldMutationRules(initialState.nextRules,\"next\");const currentState=stateRef.current;const matchingRule=matchingRules.find(rule=>rule.action===\"goToStep\")||findFirstMatchingMultiStepRule(currentState.nextRules,currentState.data||{});console.log(\"[FormKitMultiStep] nextStep\",{formId:actualFormId,currentStep:currentState.currentStep+1,totalSteps:currentState.totalSteps,rulesCount:currentState.nextRules?.length||0,matchedRule:matchingRule||null});if(matchingRule?.action===\"goToStep\"){const targetStepIndex=normalizeTargetStep(matchingRule.targetStep,currentState.totalSteps);if(targetStepIndex!==null&&targetStepIndex!==currentState.currentStep){navigateToStep(targetStepIndex,{markCurrentAsCompleted:targetStepIndex>currentState.currentStep});return;}}if(currentState.currentStep<currentState.totalSteps-1){navigateToStep(currentState.currentStep+1,{markCurrentAsCompleted:true});}};const previousStep=()=>{const initialState=stateRef.current;const{matchingRules}=applyFieldMutationRules(initialState.previousRules,\"previous\");const currentState=stateRef.current;const matchingRule=matchingRules.find(rule=>rule.action===\"goToStep\")||findFirstMatchingMultiStepRule(currentState.previousRules,currentState.data||{});console.log(\"[FormKitMultiStep] previousStep\",{formId:actualFormId,currentStep:currentState.currentStep+1,totalSteps:currentState.totalSteps,previousBehavior,stepHistory:currentState.stepHistory||[],rulesCount:currentState.previousRules?.length||0,matchedRule:matchingRule||null});if(previousBehavior===\"history\"){const stepHistory=Array.isArray(currentState.stepHistory)?currentState.stepHistory:[currentState.currentStep];if(stepHistory.length>1){const targetStepIndex=stepHistory[stepHistory.length-2];navigateToStep(targetStepIndex,{historyAction:\"pop\"});return;}}if(matchingRule?.action===\"goToStep\"){const targetStepIndex=normalizeTargetStep(matchingRule.targetStep,currentState.totalSteps);if(targetStepIndex!==null&&targetStepIndex!==currentState.currentStep){navigateToStep(targetStepIndex);return;}}if(currentState.currentStep>0){navigateToStep(currentState.currentStep-1,{historyAction:previousBehavior===\"history\"?\"pop\":\"push\"});}};const redirectWithFormData=baseUrl=>{if(!baseUrl)return;let finalUrl=baseUrl;if(passDataToUrl){const params=new URLSearchParams;Object.entries(stateRef.current.data||{}).forEach(([key,value])=>{if(value!==null&&value!==undefined){params.append(key,String(value));}});const queryString=params.toString();if(queryString){finalUrl+=baseUrl.includes(\"?\")?`&${queryString}`:`?${queryString}`;}}console.log(\"[FormKitMultiStep] redirectWithFormData\",{formId:actualFormId,finalUrl,passDataToUrl});window.location.href=finalUrl;};// Submit handler\nconst handleSubmit=async()=>{clearSuccessDisplayTimer();setState({isSubmitting:true});const preSubmitState=stateRef.current;const{matchingRules,updatedData}=applyFieldMutationRules(preSubmitState.submitSuccessRules,\"submit\");console.log(\"[FormKitMultiStep] handleSubmit:start\",{formId:actualFormId,submitUrl,redirectUrl,submitSuccessRulesCount:stateRef.current.submitSuccessRules?.length||0});try{// Use stateRef for fresh data\nconst currentData=updatedData;// Call onSubmit callback if provided\nif(onSubmit){await onSubmit(currentData);}// Submit to URL if provided\nif(submitUrl){const response=await fetch(submitUrl,{method:\"POST\",headers:{\"Content-Type\":\"application/json\"},body:JSON.stringify(currentData)});if(!response.ok){throw new Error(\"Submission failed\");}}// Also submit the parent native form for Framer email functionality\nconst parentForm=containerRef.current?.closest(\"form\");if(parentForm){// requestSubmit triggers the submit event itself.\n// Calling both dispatchEvent(\"submit\") and requestSubmit() can double-submit.\nif(typeof parentForm.requestSubmit===\"function\"){parentForm.requestSubmit();}else{parentForm.submit();}}// Keep the submit button in its success state before swapping to the\n// multi-step success view so custom button animations have time to play.\nsetState({isSubmitting:false});if(showSuccessView){successDisplayTimerRef.current=window.setTimeout(()=>{successDisplayTimerRef.current=null;setState({isCompleted:true});},Math.max(0,successDisplayDelay));}// Clear localStorage on successful submit\nif(saveToLocalStorage){clearFormFromLocalStorage(actualFormId);}const matchingSubmitRule=matchingRules.find(rule=>rule.action===\"redirect\")||findFirstMatchingMultiStepRule(stateRef.current.submitSuccessRules,stateRef.current.data||{});const finalRedirectUrl=matchingSubmitRule?.action===\"redirect\"?matchingSubmitRule.redirectUrl:redirectUrl;console.log(\"[FormKitMultiStep] handleSubmit:success\",{formId:actualFormId,matchedSubmitRule:matchingSubmitRule||null,finalRedirectUrl:finalRedirectUrl||null});redirectWithFormData(finalRedirectUrl);}catch(error){console.error(\"Form submission error:\",error);clearSuccessDisplayTimer();setState({isSubmitting:false});}};// Detect canvas mode\nconst isCanvas=RenderTarget.current()===RenderTarget.canvas;// Get children as array\nconst childArray=Children.toArray(children).filter(isValidElement);const currentChild=childArray[state.currentStep]||childArray[0]||null;const hiddenSubmissionEntries=useMemo(()=>{if(!state.data)return[];return Object.entries(state.data).filter(([key])=>!renderedFieldNames.includes(key));},[state.data,renderedFieldNames]);useEffect(()=>{if(isCanvas||!containerRef.current){if(renderedFieldNames.length>0)setRenderedFieldNames([]);return;}// Collect names from the currently rendered step only.\n// Exclude hidden inputs generated by FormKitMultiStep itself.\nconst namedElements=containerRef.current.querySelectorAll(\"[name]:not([data-formkit-multistep-hidden='true'])\");const names=Array.from(namedElements).map(el=>el.name).filter(Boolean);const uniqueNames=Array.from(new Set(names));setRenderedFieldNames(prev=>{if(prev.length===uniqueNames.length&&prev.every((name,index)=>name===uniqueNames[index])){return prev;}return uniqueNames;});},[isCanvas,currentChild,state.currentStep,state.data,renderedFieldNames.length]);// Placeholder when no steps connected\nconst renderEmptyPlaceholder=()=>/*#__PURE__*/_jsxs(\"div\",{style:{padding:\"32px 24px\",textAlign:\"center\",backgroundColor:\"#f8f9fa\",border:\"2px dashed #dee2e6\",borderRadius:\"8px\",color:\"#6c757d\",width:\"100%\"},children:[/*#__PURE__*/_jsx(\"div\",{style:{fontSize:\"16px\",fontWeight:500,marginBottom:\"8px\",color:\"#495057\"},children:\"Connect Form Steps\"}),/*#__PURE__*/_jsx(\"div\",{style:{fontSize:\"14px\"},children:\"Add frames or components as steps. Each child = one step.\"})]});const shouldShowSuccessMessage=showSuccessView&&(!isCanvas&&state.isCompleted||isCanvas&&canvasShowSuccess);const resetSuccessState=()=>{clearSuccessDisplayTimer();setState({isCompleted:false,isSubmitting:false,submitAttempted:false,submitState:\"idle\"});};const handleTryAgain=()=>{resetSuccessState();if(clearDataOnTryAgain){setState({currentStep:0,data:{},errors:{},touched:{},visitedSteps:[0],stepHistory:[0],completedSteps:[]});if(saveToLocalStorage){clearFormFromLocalStorage(actualFormId);}return;}setState({currentStep:0});};const renderCustomSuccessPlaceholder=()=>/*#__PURE__*/_jsxs(\"div\",{style:{...style,width:\"100%\",minWidth:0,boxSizing:\"border-box\",padding:\"24px\",textAlign:\"center\",backgroundColor:\"#f8f9fa\",border:\"2px dashed #dee2e6\",borderRadius:\"8px\",color:\"#6c757d\",width:\"100%\"},children:[/*#__PURE__*/_jsx(\"div\",{style:{fontSize:\"16px\",fontWeight:500,marginBottom:\"8px\",color:\"#495057\"},children:\"Connect Success Slot\"}),/*#__PURE__*/_jsx(\"div\",{style:{fontSize:\"14px\"},children:\"Add your custom success component in the Success Slot control.\"})]});const renderStepNode=node=>{if(!/*#__PURE__*/isValidElement(node))return node;const childStyle=node.props?.style||{};return /*#__PURE__*/cloneElement(node,{style:{...childStyle,width:\"100%\",minWidth:0,maxWidth:\"100%\",boxSizing:\"border-box\"}});};useEffect(()=>{registerFormKitNavigation(actualFormId,{nextStep,previousStep,goToStep,handleSubmit});console.log(\"[FormKitMultiStep] registerFormKitNavigation\",{formId:actualFormId,nextRulesCount:nextRules.length,previousRulesCount:previousRules.length,submitSuccessRulesCount:submitSuccessRules.length,previousBehavior});return()=>{unregisterFormKitNavigation(actualFormId);console.log(\"[FormKitMultiStep] unregisterFormKitNavigation\",{formId:actualFormId});};},[actualFormId,nextRulesKey,previousRulesKey,submitSuccessRulesKey,passDataToUrl,redirectUrl,submitUrl,successDisplayDelay,showSuccessView,previousBehavior]);useEffect(()=>{lastAutoJumpSignatureRef.current=null;stepEntryFieldSignatureRef.current=null;clearAutoJumpTimer();},[state.currentStep]);useEffect(()=>{if(isCanvas||!triggerScrolling){pendingStepScrollRef.current=null;return;}if(pendingStepScrollRef.current===null)return;if(pendingStepScrollRef.current!==state.currentStep)return;let frameId=0;let nestedFrameId=0;frameId=window.requestAnimationFrame(()=>{nestedFrameId=window.requestAnimationFrame(()=>{scrollToStepTarget();pendingStepScrollRef.current=null;});});return()=>{window.cancelAnimationFrame(frameId);window.cancelAnimationFrame(nestedFrameId);};},[isCanvas,triggerScrolling,state.currentStep,scrollTarget,scrollTargetId,scrollBehavior,scrollOffset]);useEffect(()=>{if(!autoJumpToNextPage||isCanvas||!containerRef.current){clearAutoJumpTimer();return;}if(!state.stepsInitialized||state.isSubmitting||state.isCompleted){clearAutoJumpTimer();return;}if(state.currentStep>=state.totalSteps-1){clearAutoJumpTimer();return;}if(renderedFieldNames.length!==1){clearAutoJumpTimer();return;}const fieldName=renderedFieldNames[0];const currentStepElements=Array.from(containerRef.current.querySelectorAll(\"[name]:not([data-formkit-multistep-hidden='true'])\")).filter(element=>{const fieldElement=element;return fieldElement.name===fieldName;});const hasSupportedControlType=currentStepElements.some(element=>{if(element.tagName===\"SELECT\")return true;if(element.tagName!==\"INPUT\")return false;const inputType=element.type.toLowerCase();return inputType===\"radio\"||inputType===\"hidden\";});const hasUnsupportedControlType=currentStepElements.some(element=>{if(element.tagName===\"TEXTAREA\")return true;if(element.tagName!==\"INPUT\")return false;const inputType=element.type.toLowerCase();return inputType!==\"radio\"&&inputType!==\"hidden\";});if(currentStepElements.length===0||!hasSupportedControlType||hasUnsupportedControlType){clearAutoJumpTimer();return;}const fieldValue=state.data?.[fieldName];const fieldError=state.errors?.[fieldName];const fieldTouched=!!state.touched?.[fieldName];const fieldValueSignature=JSON.stringify(fieldValue);if(stepEntryFieldSignatureRef.current===null){stepEntryFieldSignatureRef.current=fieldValueSignature;}if(!fieldTouched||fieldError||!hasAutoJumpAnswer(fieldValue)){clearAutoJumpTimer();return;}if(stepEntryFieldSignatureRef.current===fieldValueSignature){clearAutoJumpTimer();return;}const signature=`${state.currentStep}:${fieldName}:${fieldValueSignature}`;if(lastAutoJumpSignatureRef.current===signature)return;clearAutoJumpTimer();autoJumpTimerRef.current=window.setTimeout(()=>{const currentState=stateRef.current;const currentValue=currentState.data?.[fieldName];const currentError=currentState.errors?.[fieldName];const currentTouched=!!currentState.touched?.[fieldName];if(currentState.currentStep!==state.currentStep||currentState.isSubmitting||currentState.isCompleted||currentState.currentStep>=currentState.totalSteps-1||!currentTouched||currentError||!hasAutoJumpAnswer(currentValue)){return;}lastAutoJumpSignatureRef.current=signature;nextStep();},180);return()=>clearAutoJumpTimer();},[autoJumpToNextPage,isCanvas,state.currentStep,state.totalSteps,state.stepsInitialized,state.isSubmitting,state.isCompleted,state.data,state.touched,state.errors,renderedFieldNames]);// Success Message\nif(shouldShowSuccessMessage){const hasCustomSuccessSlot=successSlot&&Array.isArray(successSlot)&&successSlot.length>0;if(successMode===\"custom\"){if(hasCustomSuccessSlot){return /*#__PURE__*/_jsxs(\"div\",{className:\"success-slot\",style:{...style,width:\"100%\",minWidth:0,maxWidth:\"100%\",boxSizing:\"border-box\"},children:[/*#__PURE__*/_jsx(\"style\",{children:`\n                            .success-slot > div {\n                                max-width: 100%;\n                                box-sizing: border-box;\n                            }\n                        `}),successSlot[0]]});}if(isCanvas){return renderCustomSuccessPlaceholder();}}const successBackgroundColor=successStyles?.backgroundColor??\"#F0FDF4\";const successTextColor=successStyles?.textColor??\"#166534\";const successIconColor=successStyles?.iconColor??successTextColor;const successFontSize=successStyles?.messageFont?.fontSize??successStyles?.fontSize??18;const successFontWeight=successStyles?.messageFont?.fontWeight??successStyles?.fontWeight??600;const successFontFamily=successStyles?.messageFont?.fontFamily??\"Inter\";const successLineHeight=successStyles?.messageFont?.lineHeight??undefined;const successLetterSpacing=successStyles?.messageFont?.letterSpacing??undefined;const successIconSize=successStyles?.iconSize??48;const successPadding=normalizePaddingValue(successStyles?.padding,\"32px\");const successBorderRadius=normalizeBorderRadiusValue(successStyles?.borderRadius,\"8px\");const successGap=successStyles?.gap??16;const successBorderColor=successStyles?.border?.borderColor??successStyles?.borderColor??\"transparent\";const successBorderWidth=successStyles?.border?.borderWidth??successStyles?.borderWidth??0;const successBorderStyle=successStyles?.border?.borderStyle??\"solid\";return /*#__PURE__*/_jsxs(\"div\",{style:{...style,width:\"100%\",minWidth:0,boxSizing:\"border-box\",display:\"flex\",flexDirection:\"column\",alignItems:\"center\",justifyContent:\"center\",textAlign:\"center\",gap:successGap,padding:successPadding,backgroundColor:successBackgroundColor,borderRadius:successBorderRadius,border:`${successBorderWidth}px ${successBorderStyle} ${successBorderColor}`,color:successTextColor},children:[/*#__PURE__*/_jsx(\"div\",{style:{width:successIconSize,height:successIconSize,color:successIconColor},children:renderIcon({DefaultIcon:IconCheck,props:{color:successIconColor,width:\"100%\",height:\"100%\"}})}),/*#__PURE__*/_jsx(\"div\",{style:{fontFamily:successFontFamily,fontSize:successFontSize,fontWeight:successFontWeight,lineHeight:successLineHeight,letterSpacing:successLetterSpacing,color:successTextColor},children:successMessage}),showTryAgain&&/*#__PURE__*/_jsx(\"div\",{style:{display:\"flex\",columnGap:successActionsGap,rowGap:successActionsGap,flexWrap:\"wrap\",justifyContent:\"center\",alignItems:\"center\"},children:showTryAgain&&/*#__PURE__*/_jsx(\"button\",{type:\"button\",onClick:handleTryAgain,style:{padding:normalizePaddingValue(tryAgainStyles?.padding,\"10px 16px\",{treatZeroAsUnset:true}),borderRadius:normalizeBorderRadiusValue(tryAgainStyles?.radius,\"8px\",{treatZeroAsUnset:true}),border:`${tryAgainStyles?.border?.borderWidth??1}px ${tryAgainStyles?.border?.borderStyle??\"solid\"} ${tryAgainStyles?.border?.borderColor??\"rgba(0,0,0,0.12)\"}`,background:tryAgainStyles?.background??\"#ffffff\",color:tryAgainStyles?.textColor??\"#111111\",fontFamily:tryAgainStyles?.font?.fontFamily??\"Inter\",fontSize:tryAgainStyles?.font?.fontSize??14,fontWeight:tryAgainStyles?.font?.fontWeight??600,lineHeight:tryAgainStyles?.font?.lineHeight??undefined,letterSpacing:tryAgainStyles?.font?.letterSpacing??undefined,cursor:\"pointer\"},children:tryAgainText})})]});}// Render logic\nif(isCanvas){// Show placeholder if no children\nif(childArray.length===0){return /*#__PURE__*/_jsx(\"div\",{style:{...style},children:renderEmptyPlaceholder()});}// Single step view\nif(canvasView===\"single\"){// Clamp page to valid range (1-indexed input -> 0-indexed internal)\nconst pageIndex=Math.max(0,Math.min(canvasPage-1,childArray.length-1));const child=childArray[pageIndex];const childStyle=child.props?.style||{};const newChild=/*#__PURE__*/cloneElement(child,{style:{...childStyle,width:\"100%\"}});return /*#__PURE__*/_jsxs(\"div\",{style:{...style},children:[/*#__PURE__*/_jsxs(\"div\",{style:{position:\"absolute\",top:\"-15px\",left:\"0px\",background:\"#0099FF\",color:\"#fff\",fontSize:\"10px\",fontWeight:600,padding:\"2px 8px\",borderRadius:\"4px\",zIndex:10},children:[\"Step \",pageIndex+1,\" of \",childArray.length]}),newChild]});}// All steps view\nreturn /*#__PURE__*/_jsx(\"div\",{style:{...style,width:\"100%\",minWidth:0,boxSizing:\"border-box\",display:\"flex\",flexDirection:\"column\",gap:\"24px\"},children:childArray.map((child,index)=>/*#__PURE__*/_jsxs(\"div\",{style:{position:\"relative\",width:\"100%\",minWidth:0,boxSizing:\"border-box\"},children:[/*#__PURE__*/_jsxs(\"div\",{style:{position:\"absolute\",top:\"-15px\",left:\"0px\",background:index===0?\"#0099FF\":\"#666\",color:\"#fff\",fontSize:\"10px\",fontWeight:600,padding:\"2px 8px\",borderRadius:\"4px\"},children:[\"Step \",index+1,index===0?\" (Active)\":\"\"]}),renderStepNode(child)]},index))});}return /*#__PURE__*/_jsxs(\"div\",{ref:containerRef,style:{...style,width:\"100%\",minWidth:0,boxSizing:\"border-box\"},children:[renderStepNode(currentChild),!isCanvas&&hiddenSubmissionEntries.map(([key,value])=>/*#__PURE__*/_jsx(\"input\",{type:\"hidden\",name:key,value:serializeNativeSubmissionValue(value),\"data-formkit-multistep-hidden\":\"true\"},key))]});}// Property Controls\naddPropertyControls(FormKitMultiStep,{// Core settings\nformId:{type:ControlType.String,title:\"Form ID\",defaultValue:\"default\",description:\"Unique identifier for this form\"},// Canvas preview settings\ncanvasView:{type:ControlType.Enum,title:\"Canvas View\",options:[\"single\",\"all\"],optionTitles:[\"Single Step\",\"All Steps\"],defaultValue:\"single\",description:\"Canvas preview only (no effect on live site)\",displaySegmentedControl:true,segmentedControlDirection:\"vertical\"},canvasPage:{type:ControlType.Number,title:\"Show Step\",defaultValue:1,min:1,step:1,displayStepper:true,hidden:props=>props.canvasView!==\"single\"},canvasShowSuccess:{type:ControlType.Boolean,title:\"Show Success\",defaultValue:false,description:\"Canvas preview only (shows success state)\"},// Persistence\nsaveToLocalStorage:{type:ControlType.Boolean,title:\"Auto-Save\",defaultValue:true,description:\"Save progress to localStorage\"},autoJumpToNextPage:{type:ControlType.Boolean,title:\"Auto-Jump\",defaultValue:false,description:\"Only works when the page has one field. Supported for selection-style fields like Select, Radio, Rating, and Button Group. Not for text fields.\"},triggerScrolling:{type:ControlType.Boolean,title:\"Trigger Scroll\",defaultValue:false,description:\"Scroll after next or previous step navigation\"},scrollTarget:{type:ControlType.Enum,title:\"Scroll Target\",options:[\"multistep\",\"page\",\"custom\"],optionTitles:[\"Form Top\",\"Page Top\",\"Custom ID\"],defaultValue:\"multistep\",displaySegmentedControl:true,segmentedControlDirection:\"vertical\",hidden:props=>props.triggerScrolling!==true},scrollTargetId:{type:ControlType.String,title:\"Target ID\",defaultValue:\"\",description:\"Element id to scroll to when target is Custom ID\",hidden:props=>props.triggerScrolling!==true||props.scrollTarget!==\"custom\"},scrollBehavior:{type:ControlType.Enum,title:\"Scroll Mode\",options:[\"smooth\",\"auto\"],optionTitles:[\"Smooth\",\"Instant\"],defaultValue:\"smooth\",displaySegmentedControl:true,hidden:props=>props.triggerScrolling!==true},scrollOffset:{type:ControlType.Number,title:\"Scroll Offset\",defaultValue:0,min:0,max:500,step:4,unit:\"px\",description:\"Useful when a sticky header covers the top area\",hidden:props=>props.triggerScrolling!==true||props.scrollTarget===\"page\"},// Submission\nsubmitUrl:{type:ControlType.String,title:\"Submit URL\",description:\"API endpoint for form submission\"},redirectUrl:{type:ControlType.String,title:\"Redirect URL\",description:\"Redirect after successful submission\"},passDataToUrl:{type:ControlType.Boolean,title:\"Pass Data to URL\",defaultValue:false,description:\"Add form data as URL parameters on redirect\"},nextRules:MULTI_STEP_NEXT_RULES_CONTROL,previousBehavior:{type:ControlType.Enum,title:\"Previous Behavior\",options:[\"history\",\"rules\"],optionTitles:[\"History\",\"Rules\"],defaultValue:\"history\",displaySegmentedControl:true,segmentedControlDirection:\"vertical\",description:\"History goes back to the last visited step. Rules re-evaluate previous rules.\"},previousRules:MULTI_STEP_PREVIOUS_RULES_CONTROL,submitSuccessRules:MULTI_STEP_SUBMIT_RULES_CONTROL,// Messages\nsuccessMessage:{type:ControlType.String,title:\"Success Message\",defaultValue:\"Form submitted successfully!\",hidden:props=>props.successMode===\"custom\"||props.showSuccessView===false},showSuccessView:{type:ControlType.Boolean,title:\"Show Success Box\",defaultValue:true,description:\"Turn off to keep only the submit button success state\"},successDisplayDelay:{type:ControlType.Number,title:\"Success Delay\",defaultValue:1e3,min:0,max:1e4,step:100,unit:\"ms\",description:\"Wait before showing the success view after submit succeeds\",hidden:props=>props.showSuccessView===false},successMode:{type:ControlType.Enum,title:\"Success View\",options:[\"default\",\"custom\"],optionTitles:[\"Default UI\",\"Custom Slot\"],defaultValue:\"default\",displaySegmentedControl:true,segmentedControlDirection:\"vertical\",hidden:props=>props.showSuccessView===false},successSlot:{type:ControlType.Slot,title:\"Success Slot\",hidden:props=>props.showSuccessView===false||props.successMode!==\"custom\"},showTryAgain:{type:ControlType.Boolean,title:\"Show Try Again\",defaultValue:false,hidden:props=>props.showSuccessView===false||props.successMode===\"custom\"},tryAgainText:{type:ControlType.String,title:\"Try Again Text\",defaultValue:\"Submit Another Response\",hidden:props=>props.showSuccessView===false||props.successMode===\"custom\"||!props.showTryAgain},clearDataOnTryAgain:{type:ControlType.Boolean,title:\"Clear On Retry\",defaultValue:true,hidden:props=>props.showSuccessView===false||props.successMode===\"custom\"||!props.showTryAgain},successActionsGap:{type:ControlType.Number,title:\"Actions Gap\",defaultValue:10,min:0,max:40,step:1,unit:\"px\",hidden:props=>props.showSuccessView===false||props.successMode===\"custom\"||!props.showTryAgain},tryAgainStyles:{type:ControlType.Object,title:\"Try Again Styles\",hidden:props=>props.showSuccessView===false||props.successMode===\"custom\"||!props.showTryAgain,controls:{background:{type:ControlType.Color,title:\"Background\",defaultValue:\"#FFFFFF\"},textColor:{type:ControlType.Color,title:\"Text\",defaultValue:\"#111111\"},font:{type:ControlType.Font,title:\"Font\",controls:\"extended\",displayFontSize:true,displayTextAlignment:false,defaultValue:{fontSize:14,fontWeight:600,fontFamily:\"Inter\"}},padding:{type:ControlType.Padding,title:\"Padding\",defaultValue:\"10px 16px\"},radius:{type:ControlType.BorderRadius,title:\"Radius\",defaultValue:8},border:{type:ControlType.Border,title:\"Border\",defaultValue:{borderWidth:1,borderStyle:\"solid\",borderColor:\"rgba(0,0,0,0.12)\"}}}},successStyles:{type:ControlType.Object,title:\"Success Styles\",hidden:props=>props.showSuccessView===false||props.successMode===\"custom\",controls:{backgroundColor:{type:ControlType.Color,title:\"Background\",defaultValue:\"#F0FDF4\"},textColor:{type:ControlType.Color,title:\"Text\",defaultValue:\"#166534\"},iconColor:{type:ControlType.Color,title:\"Icon\",defaultValue:\"#166534\"},messageFont:{type:ControlType.Font,title:\"Message Font\",controls:\"extended\",displayFontSize:true,displayTextAlignment:false,defaultValue:{fontSize:18,fontWeight:600,fontFamily:\"Inter\"}},iconSize:{type:ControlType.Number,title:\"Icon Size\",defaultValue:48,min:12,max:120,step:1,unit:\"px\"},padding:{type:ControlType.Padding,title:\"Padding\",defaultValue:\"32px\"},borderRadius:{type:ControlType.BorderRadius,title:\"Radius\",defaultValue:8},gap:{type:ControlType.Number,title:\"Gap\",defaultValue:16,min:0,max:60,step:1,unit:\"px\"},border:{type:ControlType.Border,title:\"Border\",defaultValue:{borderWidth:0,borderColor:\"#166534\",borderStyle:\"solid\"}}}},errorMessage:{type:ControlType.String,title:\"Error Message\",defaultValue:\"Failed to submit form. Please try again.\"},// Children (pages)\nchildren:{type:ControlType.Slot,title:\"Steps\",description:\"Powered by [framerformkit](https://framerformkit.com)\"}});\nexport const __FramerMetadata__ = {\"exports\":{\"default\":{\"type\":\"reactComponent\",\"name\":\"FormKitMultiStep\",\"slots\":[\"children\",\"successSlot\"],\"annotations\":{\"framerContractVersion\":\"1\",\"framerSupportedLayoutWidth\":\"any-prefer-fixed\",\"framerIntrinsicWidth\":\"300\",\"framerDisableUnlink\":\"\",\"framerSupportedLayoutHeight\":\"auto\"}},\"__FramerMetadata__\":{\"type\":\"variable\"}}}\n//# sourceMappingURL=./FormKitMultiStep.map","/**\r\n * FormKitTextarea - Multi-line Text Input Field\r\n *\r\n * A textarea input field with validation, conditional visibility, and form store integration.\r\n *\r\n * Features:\r\n * - Hybrid prop structure (flat main options, nested styling)\r\n * - Auto-sync with form store via useFormField hook\r\n * - Configurable validation timing (onBlur, onChange)\r\n * - Error display with validation\r\n * - Conditional visibility (Array/Object format only)\r\n * - Min/max length validation\r\n * - Pattern matching\r\n * - Optional success message\r\n * - Auto-resize capability\r\n * - Character counter\r\n **/import{jsx as _jsx,jsxs as _jsxs}from\"react/jsx-runtime\";import{addPropertyControls,ControlType,RenderTarget}from\"framer\";import{useEffect,useRef,useState}from\"react\";import{useFormField}from\"https://framerusercontent.com/modules/QcJOsISgPpDHi68MFiJ7/iSwiu9OhhEpwJ9bUO8oz/Hooks.js\";import{getFormStore,getFormStoreKey}from\"https://framerusercontent.com/modules/W9pGMfwOEUT2E0G0vdr3/42YKtSLeppXsa3v6m16i/Store_management.js\";import{evaluateFieldState,getConditionalBadge}from\"https://framerusercontent.com/modules/YQMwVuIkIDYjLHJOwEnu/E43Ih1OWNh9ZYDxH2sAu/Conditions.js\";import{SHOW_IF_CONTROL,SHOW_IF_MATCH_CONTROL,SHOW_IF_ACTION_CONTROL,STORE_CONFIG_CONTROL,VALIDATION_CONTROLS,BASE_INPUT_STYLE_CONTROLS,LABEL_STYLE_CONTROLS,ERROR_STYLE_CONTROLS,SUCCESS_STYLE_CONTROLS,FOCUS_STYLE_CONTROLS,createStylingControl}from\"https://framerusercontent.com/modules/gWXlNkIcFnVLxXMR7ktn/JtLdSfrUYaW9eElJLaFM/Property_controls.js\";import{HiddenFieldMarker}from\"https://framerusercontent.com/modules/zT6ckO4RKI5zB9JzgGVW/5pPr41RBexGJfYLsBNcj/HiddenFieldMarker.js\";import{IconCheck,IconAlert,renderIcon}from\"https://framerusercontent.com/modules/hSeRQvQLiNwfAzfTZN4C/2faSrR7PxMT7RJTYjc17/Icons.js\";import{getFormKitDirection,getTextAlignForDirection}from\"https://framerusercontent.com/modules/TnGeMluKUv3ZoPWbVX5z/6AL0m280OlZ8wllCKODq/Direction.js\";/**\r\n * @framerIntrinsicWidth 300\r\n * @framerSupportedLayoutHeight auto\r\n * @framerSupportedLayoutWidth any-prefer-fixed\r\n * @framerDisableUnlink\r\n */export default function FormKitTextarea(props){const{// Main props\nname,label,placeholder=\"\",required=false,// disabled prop removed\n// Textarea-specific\nrows=4,autoResize=false,autoResizeMinHeight=100,autoResizeMaxHeight,showCharCount=false,// Validation (nested)\nvalidation={},// Styling\nstyling={},// Conditional visibility\nshowIf,showIfMatch=\"all\",showIfAction=\"show\",// Store (simplified!)\nformId=\"default\",// storeKey removed\n// Framer\nstyle}=props;// Destructure validation options\nconst{validateOnBlur=true,validateOnChange=false,validationType=\"built-in\",minLength,maxLength,pattern,requiredMessage,minLengthMessage,maxLengthMessage,patternMessage,successMessage}=validation;// Extract nested styling with defaults\nconst{inputStyles={},labelStyles={},errorStyles={},successStyles={},focusStyles={}}=styling;// Textarea ref for auto-resize\nconst textareaRef=useRef(null);// Warn if name contains spaces\nuseEffect(()=>{if(name.includes(\" \")){console.warn(`FormKit Warning: Field name \"${name}\" contains spaces. `+`This may cause issues. Use camelCase (firstName) or snake_case (first_name) instead.`);}},[name]);// Build validation config based on validationType\nconst validationConfig={required,requiredMessage,type:\"text\",// Only include validations based on validationType\n...validationType===\"built-in\"&&{minLength:minLength||undefined,minLengthMessage,maxLength:maxLength||undefined,maxLengthMessage},...validationType===\"pattern\"&&{pattern:pattern||undefined,patternMessage}};// Get store state first to evaluate conditions before useFormField\nconst actualFormId=formId||\"default\";const useStore=getFormStore(getFormStoreKey(actualFormId,\"auto\"));const[storeState]=useStore();// Detect render mode\nconst isCanvas=RenderTarget.current()===RenderTarget.canvas;// Evaluate field state BEFORE useFormField to determine skipValidation\nconst fieldState=evaluateFieldState(showIf,storeState?.data||{},showIfMatch,showIfAction);// Determine visibility and disabled state\nlet isVisible=true;let isDisabled=false;let showBadge=false;let badgeText=\"\";if(isCanvas){isVisible=true;isDisabled=false;// Use helper function for badge logic\nconst badge=getConditionalBadge(showIf,fieldState,showIfAction);showBadge=badge.showBadge;badgeText=badge.badgeText;}else{isVisible=fieldState.isVisible;isDisabled=fieldState.isDisabled;}// Skip validation if field is hidden or disabled (in preview/live mode)\nconst shouldSkipValidation=!isCanvas&&(!isVisible||isDisabled);// Use custom hook for form field logic\nconst{value,error,isTouched,isValidating,hasValidated,state,handleChange,handleBlur}=useFormField({name,formId,storeKey:\"auto\",validation:validationConfig,validateOnBlur,validateOnChange,skipValidation:shouldSkipValidation,label});// Auto-resize effect\nuseEffect(()=>{if(autoResize&&textareaRef.current){const el=textareaRef.current;el.style.height=\"auto\";const scrollHeight=el.scrollHeight;const minHeightPx=autoResizeMinHeight?Number(autoResizeMinHeight):100;const maxHeightPx=autoResizeMaxHeight?Number(autoResizeMaxHeight):undefined;const nextHeight=Math.max(scrollHeight,minHeightPx);el.style.height=maxHeightPx?`${Math.min(nextHeight,maxHeightPx)}px`:`${nextHeight}px`;if(maxHeightPx&&nextHeight>maxHeightPx){el.style.overflowY=\"auto\";}else{el.style.overflowY=\"hidden\";}}else if(textareaRef.current){// Reset height when auto-resize is disabled\nconst el=textareaRef.current;el.style.height=\"\";el.style.overflowY=\"\";}},[value,autoResize,autoResizeMinHeight,autoResizeMaxHeight]);// Track focus state for border color\nconst[isFocused,setIsFocused]=useState(false);const componentDirection=getFormKitDirection(style,[label,placeholder,successMessage,value,name]);const resolvedInputTextAlign=getTextAlignForDirection(inputStyles.textAlign,componentDirection);const resolvedLabelTextAlign=getTextAlignForDirection(labelStyles.textAlign,componentDirection);if(!isVisible)return /*#__PURE__*/_jsx(HiddenFieldMarker,{});// Determine if we should show success message\n// Only show success AFTER validation has completed at least once\nconst shouldShowSuccess=hasValidated&&// Validation must have run at least once\n!isValidating&&// Not currently validating\n!error&&// No validation errors\nsuccessMessage&&// User provided success message\nvalue&&// Field has a value\n(required?value.trim()!==\"\":true)// If required, must not be empty\n;// Character count\nconst successDisplayMode=successStyles.displayMode??\"both\";const showInlineSuccessIcon=shouldShowSuccess&&(successDisplayMode===\"both\"||successDisplayMode===\"icon\");const showSuccessMessage=shouldShowSuccess&&successMessage&&(successDisplayMode===\"both\"||successDisplayMode===\"message\");const charCount=(value||\"\").length;// Build textarea styles - use success overrides when applicable\nconst textareaStyle={width:\"100%\",padding:inputStyles.padding??\"12px\",fontSize:shouldShowSuccess&&successStyles.inputFont?.fontSize?successStyles.inputFont.fontSize:inputStyles.font?.fontSize??14,fontFamily:shouldShowSuccess&&successStyles.inputFont?.fontFamily?successStyles.inputFont.fontFamily:inputStyles.font?.fontFamily??\"inherit\",fontWeight:shouldShowSuccess&&successStyles.inputFont?.fontWeight?successStyles.inputFont.fontWeight:inputStyles.font?.fontWeight??undefined,lineHeight:inputStyles.font?.lineHeight??undefined,letterSpacing:inputStyles.font?.letterSpacing??undefined,textAlign:resolvedInputTextAlign,color:shouldShowSuccess&&successStyles.inputTextColor?successStyles.inputTextColor:isFocused&&focusStyles.textColor?focusStyles.textColor:value?inputStyles.textColor??\"#999999\":inputStyles.placeholderColor??\"#999999\",backgroundColor:isFocused&&focusStyles.backgroundColor?focusStyles.backgroundColor:isDisabled?\"#F5F5F5\":inputStyles.backgroundColor??\"rgba(187, 187, 187, 0.15)\",borderWidth:\"1px\",borderStyle:\"solid\",...isFocused&&focusStyles.border?focusStyles.border:inputStyles.border,borderColor:isCanvas?inputStyles.border?.borderColor??\"rgba(187, 187, 187, 0.15)\":shouldShowSuccess&&successStyles.inputBorderColor?successStyles.inputBorderColor:error&&(isTouched||state?.submitAttempted)?inputStyles.errorBorderColor??\"#FF4444\":isFocused?focusStyles.border?.borderColor??inputStyles.focusBorderColor??\"#0099FF\":inputStyles.border?.borderColor??\"rgba(187, 187, 187, 0.15)\",borderRadius:inputStyles.borderRadius??12,outline:\"none\",transition:focusStyles.transition??\"border-color 0.2s ease, color 0.2s ease, background-color 0.2s ease, box-shadow 0.2s ease\",cursor:isDisabled?\"not-allowed\":\"text\",opacity:isDisabled?inputStyles.disabledOpacity??.5:1,boxSizing:\"border-box\",resize:autoResize?\"none\":\"vertical\",boxShadow:isFocused&&focusStyles.shadows?focusStyles.shadows:inputStyles.shadows,minHeight:autoResize?autoResizeMinHeight||100:undefined};// Build label styles - use success overrides when applicable\nconst labelStyle={display:\"block\",fontSize:shouldShowSuccess&&successStyles.labelFont?.fontSize?successStyles.labelFont.fontSize:labelStyles.font?.fontSize??12,fontWeight:shouldShowSuccess&&successStyles.labelFont?.fontWeight?successStyles.labelFont.fontWeight:labelStyles.font?.fontWeight??\"500\",fontFamily:shouldShowSuccess&&successStyles.labelFont?.fontFamily?successStyles.labelFont.fontFamily:labelStyles.font?.fontFamily??\"Inter\",lineHeight:labelStyles.font?.lineHeight??undefined,letterSpacing:labelStyles.font?.letterSpacing??undefined,textAlign:resolvedLabelTextAlign,textTransform:labelStyles.textTransform??\"none\",color:shouldShowSuccess&&successStyles.labelColor?successStyles.labelColor:labelStyles.color??\"#888888\",marginBottom:labelStyles.marginBottom??8,transition:\"color 0.2s ease\"};// Build error styles\nconst errorStyle={fontSize:errorStyles.font?.fontSize??12,fontWeight:errorStyles.font?.fontWeight??undefined,fontFamily:errorStyles.font?.fontFamily??\"inherit\",lineHeight:errorStyles.font?.lineHeight??undefined,letterSpacing:errorStyles.font?.letterSpacing??undefined,color:errorStyles.color??\"#FF4444\",marginTop:errorStyles.marginTop??4};// Build success message styles\nconst successStyle={fontSize:successStyles.messageFont?.fontSize??12,fontWeight:successStyles.messageFont?.fontWeight??undefined,fontFamily:successStyles.messageFont?.fontFamily??undefined,color:successStyles.messageColor??\"#22C55E\",marginTop:successStyles.marginTop??4};// Generate unique ID for accessibility\nconst fieldId=`${formId}-${name}`;return /*#__PURE__*/_jsxs(\"div\",{...style,style:{...style,display:\"flex\",flexDirection:\"column\",width:\"100%\",position:\"relative\",direction:componentDirection},children:[isCanvas&&showBadge&&/*#__PURE__*/_jsx(\"div\",{style:{position:\"absolute\",top:-8,insetInlineEnd:-8,backgroundColor:\"#FF6B00\",color:\"white\",fontSize:10,fontWeight:600,padding:\"2px 6px\",borderRadius:4,zIndex:1e3,pointerEvents:\"none\",boxShadow:\"0 2px 4px rgba(0,0,0,0.2)\"},children:badgeText}),label&&/*#__PURE__*/_jsxs(\"div\",{style:{display:\"flex\",justifyContent:\"space-between\",alignItems:\"center\",gap:12,width:\"100%\"},children:[/*#__PURE__*/_jsxs(\"label\",{htmlFor:fieldId,style:{...labelStyle,flex:1},children:[label,required&&/*#__PURE__*/_jsx(\"span\",{style:{color:\"#FF4444\",marginInlineStart:4},children:\"*\"})]}),showCharCount&&maxLength&&validationType===\"built-in\"&&/*#__PURE__*/_jsxs(\"span\",{style:{fontSize:12,color:\"#666666\"},children:[charCount,\"/\",maxLength]})]}),/*#__PURE__*/_jsx(\"style\",{children:`\r\n                #${fieldId} {\r\n                    -webkit-text-fill-color: ${shouldShowSuccess&&successStyles.inputTextColor?successStyles.inputTextColor:isFocused&&focusStyles.textColor?focusStyles.textColor:value?inputStyles.textColor??\"#999999\":inputStyles.placeholderColor??\"#999999\"};\r\n                }\r\n                #${fieldId}::placeholder {\r\n                    color: ${isFocused&&focusStyles.placeholderColor?focusStyles.placeholderColor:inputStyles.placeholderColor??\"#999999\"};\r\n                    -webkit-text-fill-color: ${isFocused&&focusStyles.placeholderColor?focusStyles.placeholderColor:inputStyles.placeholderColor??\"#999999\"};\r\n                    text-align: ${resolvedInputTextAlign};\r\n                    opacity: 1;\r\n                }\r\n                #${fieldId}:-webkit-autofill,\r\n                #${fieldId}:-webkit-autofill:hover,\r\n                #${fieldId}:-webkit-autofill:focus,\r\n                #${fieldId}:-webkit-autofill:active,\r\n                #${fieldId}:autofill,\r\n                #${fieldId}:autofill:hover,\r\n                #${fieldId}:autofill:focus,\r\n                #${fieldId}:autofill:active {\r\n                    -webkit-box-shadow: 0 0 0 1000px ${inputStyles.backgroundColor??\"#F5F5F5\"} inset !important;\r\n                    box-shadow: 0 0 0 1000px ${inputStyles.backgroundColor??\"#F5F5F5\"} inset !important;\r\n                    -webkit-text-fill-color: ${inputStyles.textColor??\"#999999\"} !important;\r\n                    caret-color: ${inputStyles.textColor??\"#999999\"} !important;\r\n                    transition: background-color 5000s ease-in-out 0s !important;\r\n                }\r\n            `}),/*#__PURE__*/_jsxs(\"div\",{style:{position:\"relative\",width:\"100%\"},children:[/*#__PURE__*/_jsx(\"textarea\",{ref:textareaRef,id:fieldId,name:name,value:value||\"\",onChange:e=>handleChange(e.target.value),onBlur:()=>{setIsFocused(false);handleBlur();},onFocus:()=>setIsFocused(true),onInvalid:e=>e.preventDefault(),placeholder:placeholder,disabled:isDisabled,required:required,\"data-formkit\":\"true\",minLength:validationType===\"built-in\"&&minLength?minLength:undefined,maxLength:validationType===\"built-in\"&&maxLength?maxLength:undefined,rows:autoResize?1:rows,style:textareaStyle}),showInlineSuccessIcon&&/*#__PURE__*/_jsx(\"div\",{style:{position:\"absolute\",insetInlineEnd:12,top:12,display:\"flex\",alignItems:\"center\",justifyContent:\"center\",color:successStyles.iconColor??successStyles.inputTextColor??\"#0099FF\",pointerEvents:\"none\",width:16,height:16},children:renderIcon({iconType:successStyles.iconType,customIcon:successStyles.customIcon,DefaultIcon:IconCheck})})]}),error&&(isTouched||state?.submitAttempted)&&/*#__PURE__*/_jsxs(\"div\",{style:{...errorStyle,display:\"flex\",alignItems:\"center\",textTransform:\"lowercase\",gap:6},children:[/*#__PURE__*/_jsx(\"div\",{style:{display:\"flex\",alignItems:\"center\",justifyContent:\"center\",width:14,height:14},children:renderIcon({iconType:errorStyles.iconType,customIcon:errorStyles.customIcon,DefaultIcon:IconAlert})}),error]}),showSuccessMessage&&/*#__PURE__*/_jsx(\"div\",{style:successStyle,children:successMessage})]});}// Property Controls - Hybrid structure (matching FormKitText pattern)\naddPropertyControls(FormKitTextarea,{// FLAT - Main options (easy to access and update)\nname:{type:ControlType.String,title:\"Name\",defaultValue:\"message\",description:\"Use camelCase or snake_case, NO SPACES. Examples: message, user_bio, comments\",placeholder:\"field-name\"},label:{type:ControlType.String,title:\"Label\",defaultValue:\"Message\",description:\"Field label displayed above textarea\"},placeholder:{type:ControlType.String,title:\"Placeholder\",defaultValue:\"Message\",description:\"Placeholder text shown when empty\"},required:{type:ControlType.Boolean,title:\"Required\",defaultValue:false},// disabled prop removed - use showIfAction with \"Enable Field\" / \"Disable Field\"\n// FLAT - Textarea-specific options\nrows:{type:ControlType.Number,title:\"Rows\",defaultValue:4,min:1,max:20,step:1,displayStepper:true,hidden:props=>props.autoResize},autoResize:{type:ControlType.Boolean,title:\"Auto Resize\",description:\"Automatically grow as user types\",defaultValue:false},autoResizeMinHeight:{type:ControlType.Number,title:\"Min Height (px)\",min:40,max:500,step:10,defaultValue:100,displayStepper:true,description:\"Minimum height when auto-resizing\",hidden:props=>!props.autoResize},autoResizeMaxHeight:{type:ControlType.Number,title:\"Max Height (px)\",min:50,max:1200,step:10,displayStepper:true,description:\"Maximum height when auto-resizing\",hidden:props=>!props.autoResize},showCharCount:{type:ControlType.Boolean,title:\"Show Char Count\",description:\"Display character counter (requires Max Length)\",defaultValue:false,hidden:props=>!props.validation?.maxLength||props.validation?.validationType===\"pattern\"},// NESTED - Validation (organized!)\nvalidation:{type:ControlType.Object,buttonTitle:\"Validation\",optional:true,controls:VALIDATION_CONTROLS},// NESTED - Styling (organized group)\nstyling:createStylingControl({inputStyles:{type:ControlType.Object,buttonTitle:\"Textarea\",optional:true,controls:{...BASE_INPUT_STYLE_CONTROLS,focusBorderColor:{type:ControlType.Color,hidden:()=>true}}},labelStyles:{type:ControlType.Object,buttonTitle:\"Label\",optional:true,controls:LABEL_STYLE_CONTROLS},errorStyles:{type:ControlType.Object,buttonTitle:\"Error\",optional:true,controls:ERROR_STYLE_CONTROLS},successStyles:{type:ControlType.Object,buttonTitle:\"Success\",optional:true,controls:SUCCESS_STYLE_CONTROLS},focusStyles:{type:ControlType.Object,buttonTitle:\"Focus\",optional:true,controls:FOCUS_STYLE_CONTROLS}}),// Conditional visibility\nshowIf:SHOW_IF_CONTROL,showIfMatch:{...SHOW_IF_MATCH_CONTROL,hidden:props=>!props.showIf||props.showIf.length===0},showIfAction:{...SHOW_IF_ACTION_CONTROL,hidden:props=>!props.showIf||props.showIf.length===0},// Store connection (flat)\n...STORE_CONFIG_CONTROL});\nexport const __FramerMetadata__ = {\"exports\":{\"default\":{\"type\":\"reactComponent\",\"name\":\"FormKitTextarea\",\"slots\":[],\"annotations\":{\"framerDisableUnlink\":\"\",\"framerSupportedLayoutWidth\":\"any-prefer-fixed\",\"framerContractVersion\":\"1\",\"framerIntrinsicWidth\":\"300\",\"framerSupportedLayoutHeight\":\"auto\"}},\"__FramerMetadata__\":{\"type\":\"variable\"}}}\n//# sourceMappingURL=./FormKitTextarea.map","/**\r\n * FormKitSlider - Range Slider Field (PREMIUM)\r\n *\r\n * A range slider input with validation, conditional visibility, and form store integration.\r\n * Supports both single value and range (min/max) selection.\r\n *\r\n * Features:\r\n * - Validation with useFormField hook\r\n * - Single or Range mode\r\n * - Customizable range (min/max/step)\r\n * - Show current value display (supports range format)\r\n * - Customizable colors (thumb, track, active track, borders)\r\n * - Conditional visibility/enable via evaluateFieldState\r\n * - HiddenFieldMarker for layout gap prevention\r\n*/import{jsx as _jsx,jsxs as _jsxs}from\"react/jsx-runtime\";import{addPropertyControls,ControlType,RenderTarget}from\"framer\";import{useEffect,useId}from\"react\";import{useFormField}from\"https://framerusercontent.com/modules/QcJOsISgPpDHi68MFiJ7/iSwiu9OhhEpwJ9bUO8oz/Hooks.js\";import{getFormStore,getFormStoreKey}from\"https://framerusercontent.com/modules/W9pGMfwOEUT2E0G0vdr3/42YKtSLeppXsa3v6m16i/Store_management.js\";import{evaluateFieldState}from\"https://framerusercontent.com/modules/YQMwVuIkIDYjLHJOwEnu/E43Ih1OWNh9ZYDxH2sAu/Conditions.js\";import{SHOW_IF_CONTROL,SHOW_IF_MATCH_CONTROL,SHOW_IF_ACTION_CONTROL,STORE_CONFIG_CONTROL,LABEL_STYLE_CONTROLS,ERROR_STYLE_CONTROLS,createStylingControl}from\"https://framerusercontent.com/modules/gWXlNkIcFnVLxXMR7ktn/JtLdSfrUYaW9eElJLaFM/Property_controls.js\";import{HiddenFieldMarker}from\"https://framerusercontent.com/modules/zT6ckO4RKI5zB9JzgGVW/5pPr41RBexGJfYLsBNcj/HiddenFieldMarker.js\";import{IconCheck,IconAlert,renderIcon}from\"https://framerusercontent.com/modules/hSeRQvQLiNwfAzfTZN4C/2faSrR7PxMT7RJTYjc17/Icons.js\";import{SUCCESS_STYLE_CONTROLS}from\"https://framerusercontent.com/modules/gWXlNkIcFnVLxXMR7ktn/JtLdSfrUYaW9eElJLaFM/Property_controls.js\";/**\r\n * @framerIntrinsicWidth 300\r\n * @framerSupportedLayoutHeight auto\r\n * @framerSupportedLayoutWidth any-prefer-fixed\r\n * @framerDisableUnlink\r\n */export default function FormKitSlider(props){const{// Main props\nname,label,isRange=false,min=0,max=100,step=1,defaultValue=50,defaultRangeStart=25,defaultRangeEnd=75,minDistance=1,showValue=true,valuePrefix=\"\",valueSuffix=\"\",// Styling\nstyling={},// Validation\nvalidation={},// Conditional visibility\nshowIf,showIfMatch=\"all\",showIfAction=\"show\",// Store\nformId=\"default\",// Framer\nstyle}=props;// Extract nested styling with defaults\nconst{sliderStyles={},labelStyles={},errorStyles={},successStyles={}}=styling;// Unique ID for scoped CSS\nconst instanceId=useId().replace(/:/g,\"_\");// Destructure validation options\nconst{minMessage,maxMessage,successMessage}=validation;// Build validation config\n// Note: 'required' doesn't apply to sliders as they always have a value\nconst validationConfig={min,minMessage:minMessage||`${label||name} must be at least ${min}`,max,maxMessage:maxMessage||`${label||name} must be at most ${max}`,type:\"number\"};// Warn if name contains spaces\nuseEffect(()=>{if(name.includes(\" \")){console.warn(`FormKit Warning: Field name \"${name}\" contains spaces. `+`Use camelCase (firstName) or snake_case (first_name) instead.`);}},[name]);// Get store state FIRST (before useFormField) to evaluate conditions\nconst actualFormId=formId||\"default\";const useStore=getFormStore(getFormStoreKey(actualFormId,\"auto\"));const[storeState]=useStore();// Detect render mode\nconst isCanvas=RenderTarget.current()===RenderTarget.canvas;// Evaluate field state BEFORE useFormField\nconst fieldState=evaluateFieldState(showIf,storeState?.data||{},showIfMatch,showIfAction);// Determine visibility and disabled state\nlet showHiddenBadge=false;let isVisible=true;let isDisabled=false;if(isCanvas){isVisible=true;isDisabled=false;const wouldBeHidden=!fieldState.isVisible;showHiddenBadge=wouldBeHidden&&showIf!=null&&showIf.length>0;}else{isVisible=fieldState.isVisible;isDisabled=fieldState.isDisabled;}// Skip validation if field is hidden or disabled (in preview/live mode)\nconst shouldSkipValidation=!isCanvas&&(!isVisible||isDisabled);// Calculate initial value based on mode\nconst initialValue=isRange?[defaultRangeStart,defaultRangeEnd]:defaultValue;// Use useFormField hook\nconst{value,error,isTouched,isValidating,hasValidated,state,handleChange,handleBlur}=useFormField({name,formId,storeKey:\"auto\",validation:validationConfig,validateOnBlur:true,validateOnChange:false,skipValidation:shouldSkipValidation,label});// Initialize with default value if not set\nuseEffect(()=>{if(value===\"\"||value===undefined||value===null){handleChange(initialValue);}},[]);// Ensure value format matches mode (array vs number)\n// If switching modes dynamically, this resets the value to default to avoid crashes\nuseEffect(()=>{if(isRange&&!Array.isArray(value)){handleChange([defaultRangeStart,defaultRangeEnd]);}else if(!isRange&&Array.isArray(value)){handleChange(defaultValue);}},[isRange]);// Determine if we should show success message\nconst shouldShowSuccess=hasValidated&&!error&&successMessage;// Handle hidden state\nif(!isVisible)return /*#__PURE__*/_jsx(HiddenFieldMarker,{});// Handle changes\nconst successDisplayMode=successStyles.displayMode??\"both\";const showInlineSuccessIcon=shouldShowSuccess&&(successDisplayMode===\"both\"||successDisplayMode===\"icon\");const showSuccessMessage=shouldShowSuccess&&successMessage&&(successDisplayMode===\"both\"||successDisplayMode===\"message\");const onSingleChange=e=>{if(isDisabled)return;handleChange(Number(e.target.value));};const onRangeChange=(index,neoValue)=>{if(isDisabled)return;if(!Array.isArray(value))return;const newValues=[...value];newValues[index]=neoValue;// Enforce min distance\nif(index===0){// Moving start handle\nconst possiblyMax=newValues[1]-minDistance;if(neoValue>possiblyMax)newValues[0]=possiblyMax;}else{// Moving end handle\nconst possiblyMin=newValues[0]+minDistance;if(neoValue<possiblyMin)newValues[1]=possiblyMin;}handleChange(newValues);};// Slider styling\nconst thumbColor=sliderStyles.thumbColor??\"#0099FF\";const thumbBorderColor=sliderStyles.thumbBorderColor??\"#FFFFFF\";const thumbBorderWidth=sliderStyles.thumbBorderWidth??0;const thumbBorderRadius=sliderStyles.thumbBorderRadius??50;const thumbShadowColor=sliderStyles.thumbShadowColor??\"rgba(0,0,0,0.2)\";const trackColor=sliderStyles.trackColor??\"#E0E0E0\";const activeTrackColor=sliderStyles.activeTrackColor??\"#0099FF\";const thumbSize=sliderStyles.thumbSize??18;const thumbOffsetY=sliderStyles.thumbOffsetY??8;const trackHeight=sliderStyles.trackHeight??6;const trackBorderRadius=sliderStyles.trackBorderRadius??trackHeight/2;const valueColor=sliderStyles.valueColor??\"#0099FF\";// Safe values for rendering\nlet renderValueStart=0;let renderValueEnd=0;let renderSingle=0;if(isRange&&Array.isArray(value)){renderValueStart=typeof value[0]===\"number\"?value[0]:defaultRangeStart;renderValueEnd=typeof value[1]===\"number\"?value[1]:defaultRangeEnd;}else{renderSingle=typeof value===\"number\"?value:defaultValue;}// Calculate percentages for gradients\nconst getPercent=val=>(val-min)/(max-min)*100;let backgroundStyle={};if(isRange){const startP=getPercent(renderValueStart);const endP=getPercent(renderValueEnd);backgroundStyle={background:`linear-gradient(to right, ${trackColor} 0%, ${trackColor} ${startP}%, ${activeTrackColor} ${startP}%, ${activeTrackColor} ${endP}%, ${trackColor} ${endP}%, ${trackColor} 100%)`};}else{const p=getPercent(renderSingle);backgroundStyle={background:`linear-gradient(to right, ${activeTrackColor} 0%, ${activeTrackColor} ${p}%, ${trackColor} ${p}%, ${trackColor} 100%)`};}// Build label styles\nconst labelStyle={fontSize:shouldShowSuccess&&successStyles.labelFont?.fontSize?successStyles.labelFont.fontSize:labelStyles.font?.fontSize??12,fontWeight:shouldShowSuccess&&successStyles.labelFont?.fontWeight?successStyles.labelFont.fontWeight:labelStyles.font?.fontWeight??\"500\",fontFamily:shouldShowSuccess&&successStyles.labelFont?.fontFamily?successStyles.labelFont.fontFamily:labelStyles.font?.fontFamily??\"inherit\",lineHeight:labelStyles.font?.lineHeight??undefined,letterSpacing:labelStyles.font?.letterSpacing??undefined,textAlign:labelStyles.textAlign??\"left\",textTransform:labelStyles.textTransform??\"none\",color:shouldShowSuccess&&successStyles.labelColor?successStyles.labelColor:labelStyles.color??\"#888888\",transition:\"color 0.2s ease\"};// Build value styles\nconst valueStyle={fontSize:sliderStyles.valueFont?.fontSize??14,fontWeight:sliderStyles.valueFont?.fontWeight??600,fontFamily:sliderStyles.valueFont?.fontFamily??\"inherit\",fontStyle:sliderStyles.valueFont?.fontStyle??\"normal\",color:valueColor};// Build error styles\nconst errorStyle={fontSize:errorStyles.font?.fontSize??12,fontWeight:errorStyles.font?.fontWeight??\"400\",fontFamily:errorStyles.font?.fontFamily??\"inherit\",color:errorStyles.color??\"#FF4444\",marginTop:errorStyles.marginTop??4};// Scoped CSS class\nconst sliderClass=`formkit-slider-${instanceId}`;const thumbStyle=`\r\n        .${sliderClass}::-webkit-slider-thumb {\r\n            -webkit-appearance: none;\r\n            width: ${thumbSize}px;\r\n            height: ${thumbSize}px;\r\n            border-radius: ${thumbBorderRadius}%;\r\n            background: ${thumbColor};\r\n            border: ${thumbBorderWidth}px solid ${thumbBorderColor};\r\n            cursor: ${isDisabled?\"not-allowed\":\"pointer\"};\r\n            box-shadow: 0 2px 4px ${thumbShadowColor};\r\n            pointer-events: auto;\r\n            position: relative;\r\n            z-index: 2;\r\n            margin-top: -${(thumbSize-trackHeight)/2-thumbOffsetY}px; /* Align thumb vertically */\r\n        }\r\n        .${sliderClass}::-moz-range-thumb {\r\n            width: ${thumbSize}px;\r\n            height: ${thumbSize}px;\r\n            border-radius: ${thumbBorderRadius}%;\r\n            background: ${thumbColor};\r\n            border: ${thumbBorderWidth}px solid ${thumbBorderColor};\r\n            cursor: ${isDisabled?\"not-allowed\":\"pointer\"};\r\n            box-shadow: 0 2px 4px ${thumbShadowColor};\r\n            pointer-events: auto;\r\n            position: relative;\r\n            z-index: 2;\r\n            transform: translateY(${(thumbSize-trackHeight)/2+thumbOffsetY}px); /* Firefox correction */\r\n        }\r\n        /* Range Mode Specifics to stack inputs */\r\n        .formkit-range-stack {\r\n            display: grid;\r\n            grid-template-columns: 1fr;\r\n            grid-template-rows: 1fr;\r\n            align-items: center;\r\n        }\r\n        .formkit-range-stack > input {\r\n            grid-column: 1;\r\n            grid-row: 1;\r\n            pointer-events: none; /* Allow clickthrough to bottom input, thumbs are re-enabled */\r\n            background: none !important; /* Managed by container */\r\n        }\r\n    `;// Determine value string display\nlet displayValue=\"\";if(isRange){displayValue=`${valuePrefix}${renderValueStart}${valueSuffix} - ${valuePrefix}${renderValueEnd}${valueSuffix}`;}else{displayValue=`${valuePrefix}${renderSingle}${valueSuffix}`;}return /*#__PURE__*/_jsxs(\"div\",{style:{...style,display:\"flex\",flexDirection:\"column\",position:\"relative\"},children:[/*#__PURE__*/_jsx(\"style\",{children:thumbStyle}),isCanvas&&showHiddenBadge&&/*#__PURE__*/_jsx(\"div\",{style:{position:\"absolute\",top:-8,right:-8,backgroundColor:\"#FF6B00\",color:\"white\",fontSize:10,fontWeight:600,padding:\"2px 6px\",borderRadius:4,zIndex:1e3,pointerEvents:\"none\",boxShadow:\"0 2px 4px rgba(0,0,0,0.2)\"},children:\"Hidden in preview\"}),label&&/*#__PURE__*/_jsxs(\"div\",{style:{display:\"flex\",justifyContent:\"space-between\",alignItems:\"center\",marginBottom:labelStyles.marginBottom??8},children:[/*#__PURE__*/_jsx(\"label\",{style:labelStyle,children:label}),showValue&&/*#__PURE__*/_jsx(\"span\",{style:valueStyle,children:displayValue})]}),isRange?// RANGE SLIDER IMPLEMENTATION\n/*#__PURE__*/_jsxs(\"div\",{className:\"formkit-range-stack\",style:{position:\"relative\",height:Math.max(trackHeight,thumbSize)},children:[/*#__PURE__*/_jsx(\"div\",{style:{gridColumn:1,gridRow:1,width:\"100%\",height:`${trackHeight}px`,borderRadius:`${trackBorderRadius}px`,...backgroundStyle,opacity:isDisabled?.5:1,pointerEvents:\"none\"}}),/*#__PURE__*/_jsx(\"input\",{type:\"range\",min:min,max:max,step:step,value:renderValueStart,onChange:e=>onRangeChange(0,Number(e.target.value)),onBlur:handleBlur,disabled:isDisabled,className:sliderClass,style:{width:\"100%\",// height: '100%', // Match container\nappearance:\"none\",WebkitAppearance:\"none\",zIndex:renderValueStart>max-10?3:2,opacity:1,margin:0}}),/*#__PURE__*/_jsx(\"input\",{type:\"range\",min:min,max:max,step:step,value:renderValueEnd,onChange:e=>onRangeChange(1,Number(e.target.value)),onBlur:handleBlur,disabled:isDisabled,className:sliderClass,style:{width:\"100%\",// height: '100%',\nappearance:\"none\",WebkitAppearance:\"none\",zIndex:2,opacity:1,margin:0}})]}):// SINGLE SLIDER IMPLEMENTATION\n/*#__PURE__*/_jsx(\"div\",{style:{position:\"relative\",display:\"flex\",alignItems:\"center\",height:Math.max(trackHeight,thumbSize)},children:/*#__PURE__*/_jsx(\"input\",{type:\"range\",name:name,value:renderSingle,onChange:onSingleChange,onBlur:handleBlur,min:min,max:max,step:step,disabled:isDisabled,className:sliderClass,style:{width:\"100%\",height:`${trackHeight}px`,borderRadius:`${trackBorderRadius}px`,outline:\"none\",...backgroundStyle,cursor:isDisabled?\"not-allowed\":\"pointer\",WebkitAppearance:\"none\",appearance:\"none\",opacity:isDisabled?.5:1,margin:0}})}),error&&(isTouched||state?.submitAttempted)&&!isCanvas&&/*#__PURE__*/_jsxs(\"div\",{style:{...errorStyle,display:\"flex\",alignItems:\"center\",textTransform:\"lowercase\",gap:6},children:[/*#__PURE__*/_jsx(\"div\",{style:{display:\"flex\",alignItems:\"center\",justifyContent:\"center\",width:14,height:14},children:renderIcon({iconType:errorStyles.iconType,customIcon:errorStyles.customIcon,DefaultIcon:IconAlert})}),error]}),showSuccessMessage&&/*#__PURE__*/_jsxs(\"div\",{style:{fontSize:successStyles.messageFont?.fontSize??12,fontWeight:successStyles.messageFont?.fontWeight??undefined,fontFamily:successStyles.messageFont?.fontFamily??\"inherit\",color:successStyles.messageColor??\"#0099FF\",marginTop:successStyles.marginTop??4,display:\"flex\",alignItems:\"center\",gap:6},children:[/*#__PURE__*/_jsx(\"div\",{style:{display:\"flex\",alignItems:\"center\",justifyContent:\"center\",width:14,height:14},children:renderIcon({iconType:successStyles.iconType,customIcon:successStyles.customIcon,DefaultIcon:IconCheck})}),successMessage]})]});}// Slider style controls\nconst SLIDER_STYLE_CONTROLS={thumbColor:{type:ControlType.Color,title:\"Thumb Color\",defaultValue:\"#FFFFFF\"},thumbBorderColor:{type:ControlType.Color,title:\"Thumb Border\",defaultValue:\"#0099FF\"},thumbBorderWidth:{type:ControlType.Number,title:\"Border Width\",min:0,max:10,step:.5,defaultValue:6,displayStepper:true},thumbBorderRadius:{type:ControlType.Number,title:\"Border Radius\",min:0,max:50,step:1,defaultValue:50,displayStepper:true,description:\"50 = circle, 0 = square\"},thumbShadowColor:{type:ControlType.Color,title:\"Thumb Shadow\",defaultValue:\"transparent\"},thumbSize:{type:ControlType.Number,title:\"Thumb Size\",min:12,max:48,step:1,defaultValue:20,displayStepper:true},thumbOffsetY:{type:ControlType.Number,title:\"Thumb Offset Y\",min:-20,max:20,step:1,defaultValue:8,displayStepper:true,description:\"Fine-tune vertical position\"},trackColor:{type:ControlType.Color,title:\"Track Color\",defaultValue:\"#E0E0E0\"},activeTrackColor:{type:ControlType.Color,title:\"Active Track\",defaultValue:\"#0099FF\"},trackHeight:{type:ControlType.Number,title:\"Track Height\",min:2,max:20,step:1,defaultValue:4,displayStepper:true},trackBorderRadius:{type:ControlType.Number,title:\"Track Radius\",min:0,max:20,defaultValue:2},valueColor:{type:ControlType.Color,title:\"Value Color\",defaultValue:\"#333333\"},valueFont:{type:ControlType.Font,title:\"Value Font\",controls:\"extended\",displayFontSize:true,displayTextAlignment:false,defaultValue:{fontSize:14,fontWeight:600}}};// Validation controls\nconst VALIDATION_CONTROLS={minMessage:{type:ControlType.String,title:\"Min Message\",placeholder:\"Value must be at least...\"},maxMessage:{type:ControlType.String,title:\"Max Message\",placeholder:\"Value must be at most...\"},successMessage:{type:ControlType.String,title:\"Success Message\",placeholder:\"Valid range!\"}};// Property Controls\naddPropertyControls(FormKitSlider,{// FLAT - Main options\nname:{type:ControlType.String,title:\"Name\",defaultValue:\"slider\",description:\"Use camelCase or snake_case, NO SPACES\",placeholder:\"field-name\"},label:{type:ControlType.String,title:\"Label\"},isRange:{type:ControlType.Boolean,title:\"Range Mode\",defaultValue:false,description:\"Enable dual handles for min/max selection\"},min:{type:ControlType.Number,title:\"Min\",defaultValue:0},max:{type:ControlType.Number,title:\"Max\",defaultValue:100},step:{type:ControlType.Number,title:\"Step\",defaultValue:1,min:.1},minDistance:{type:ControlType.Number,title:\"Min Range\",defaultValue:1,min:0,hidden:props=>props.isRange===false,description:\"Minimum distance between handles\"},// Value defaults - dynamic visibility\ndefaultValue:{type:ControlType.Number,title:\"Default Value\",defaultValue:50,hidden:props=>props.isRange===true},defaultRangeStart:{type:ControlType.Number,title:\"Start Value\",defaultValue:25,hidden:props=>props.isRange===false},defaultRangeEnd:{type:ControlType.Number,title:\"End Value\",defaultValue:75,hidden:props=>props.isRange===false},showValue:{type:ControlType.Boolean,title:\"Show Value\",defaultValue:true},valuePrefix:{type:ControlType.String,title:\"Value Prefix\",defaultValue:\"\",placeholder:\"$\",hidden:props=>props.showValue===false},valueSuffix:{type:ControlType.String,title:\"Value Suffix\",defaultValue:\"\",placeholder:\"%\",hidden:props=>props.showValue===false},// NESTED - Styling\nstyling:createStylingControl({sliderStyles:{type:ControlType.Object,buttonTitle:\"Slider\",optional:true,controls:SLIDER_STYLE_CONTROLS},labelStyles:{type:ControlType.Object,buttonTitle:\"Label\",optional:true,controls:LABEL_STYLE_CONTROLS},errorStyles:{type:ControlType.Object,buttonTitle:\"Error\",optional:true,controls:ERROR_STYLE_CONTROLS},successStyles:{type:ControlType.Object,buttonTitle:\"Success\",optional:true,controls:SUCCESS_STYLE_CONTROLS}}),// NESTED - Validation\nvalidation:{type:ControlType.Object,title:\"Validation\",optional:true,buttonTitle:\"Validation\",controls:VALIDATION_CONTROLS},// Conditional visibility\nshowIf:SHOW_IF_CONTROL,showIfMatch:SHOW_IF_MATCH_CONTROL,showIfAction:SHOW_IF_ACTION_CONTROL,// Store connection\n...STORE_CONFIG_CONTROL});\nexport const __FramerMetadata__ = {\"exports\":{\"default\":{\"type\":\"reactComponent\",\"name\":\"FormKitSlider\",\"slots\":[],\"annotations\":{\"framerDisableUnlink\":\"\",\"framerSupportedLayoutWidth\":\"any-prefer-fixed\",\"framerSupportedLayoutHeight\":\"auto\",\"framerIntrinsicWidth\":\"300\",\"framerContractVersion\":\"1\"}},\"__FramerMetadata__\":{\"type\":\"variable\"}}}\n//# sourceMappingURL=./FormKitSlider.map","/**\r\n * FormKitImageButton - Image backed CTA (PRO)\r\n *\r\n * Clickable image tile that writes a value to the store and can advance steps.\r\n *\r\n\r\n */import{jsx as _jsx,jsxs as _jsxs}from\"react/jsx-runtime\";import{addPropertyControls,ControlType,RenderTarget}from\"framer\";import{getFormStore,getFormStoreKey}from\"https://framerusercontent.com/modules/W9pGMfwOEUT2E0G0vdr3/42YKtSLeppXsa3v6m16i/Store_management.js\";import{evaluateFieldState,getConditionalBadge}from\"https://framerusercontent.com/modules/YQMwVuIkIDYjLHJOwEnu/E43Ih1OWNh9ZYDxH2sAu/Conditions.js\";import{useFormField}from\"https://framerusercontent.com/modules/QcJOsISgPpDHi68MFiJ7/iSwiu9OhhEpwJ9bUO8oz/Hooks.js\";import{HiddenFieldMarker}from\"https://framerusercontent.com/modules/zT6ckO4RKI5zB9JzgGVW/5pPr41RBexGJfYLsBNcj/HiddenFieldMarker.js\";import{SHOW_IF_CONTROL,SHOW_IF_MATCH_CONTROL,SHOW_IF_ACTION_CONTROL,STORE_CONFIG_CONTROL,ERROR_STYLE_CONTROLS,SUCCESS_STYLE_CONTROLS,VALIDATION_CONTROLS,createStylingControl}from\"https://framerusercontent.com/modules/gWXlNkIcFnVLxXMR7ktn/JtLdSfrUYaW9eElJLaFM/Property_controls.js\";import{IconCheck,renderIcon}from\"https://framerusercontent.com/modules/hSeRQvQLiNwfAzfTZN4C/2faSrR7PxMT7RJTYjc17/Icons.js\";import{getFormKitDirection}from\"https://framerusercontent.com/modules/TnGeMluKUv3ZoPWbVX5z/6AL0m280OlZ8wllCKODq/Direction.js\";/**\r\n * @framerIntrinsicWidth 300\r\n * @framerSupportedLayoutHeight auto\r\n * @framerSupportedLayoutWidth any-prefer-fixed\r\n * @framerDisableUnlink\r\n */export default function FormKitImageButton(props){const{name=\"imageButton\",options=[{label:\"Option 1\",value:\"opt1\",fillType:\"image\",image:\"https://images.unsplash.com/photo-1522199710521-72d69614c702\"},{label:\"Option 2\",value:\"opt2\",fillType:\"color\",color:\"#0099FF\"},{label:\"Option 3\",value:\"opt3\",fillType:\"image\",image:\"https://images.unsplash.com/photo-1522199710521-72d69614c702\"}],layout=\"horizontal\",gap=16,selectionType=\"single\",// Validation\nvalidation={},// Styling\nstyling={},// Conditional visibility\nshowIf,showIfMatch=\"all\",showIfAction=\"show\",// Store\nformId=\"default\",// Canvas preview\ncanvasPreview={},// Framer\nstyle}=props;// Extract nested styling with defaults\nconst{swatchStyles={},errorStyles={},successStyles={}}=styling;const{selectedValues:canvasPreviewSelectedValues=\"\",showSuccess:showCanvasSuccess=false}=canvasPreview;const{requiredMessage,successMessage}=validation;const actualFormId=formId||\"default\";const useStore=getFormStore(getFormStoreKey(actualFormId,\"auto\"));const[storeState]=useStore();// Detect render mode\nconst isCanvas=RenderTarget.current()===RenderTarget.canvas;// Evaluate field state\nconst fieldState=evaluateFieldState(showIf,storeState?.data||{},showIfMatch,showIfAction);// Determine visibility and disabled state\nlet showBadge=false;let badgeText=\"\";let isVisible=true;let isDisabled=false;if(isCanvas){isVisible=true;isDisabled=false;const badge=getConditionalBadge(showIf,fieldState,showIfAction);showBadge=badge.showBadge;badgeText=badge.badgeText;}else{isVisible=fieldState.isVisible;isDisabled=fieldState.isDisabled;}// Skip validation if field is hidden or disabled (in preview/live mode)\nconst shouldSkipValidation=!isCanvas&&(!isVisible||isDisabled);// Use custom hook for form field logic\nconst{value,error,isTouched,state,setState,handleChange,hasValidated,isValidating}=useFormField({name,formId,storeKey:\"auto\",validation:{requiredMessage},validateOnBlur:false,validateOnChange:true,skipValidation:shouldSkipValidation,label:name});const canvasSelectedOptions=canvasPreviewSelectedValues.split(\",\").map(item=>item.trim()).filter(Boolean);const effectiveValue=isCanvas?selectionType===\"multiple\"?canvasSelectedOptions:canvasSelectedOptions[0]||\"\":value;// Determine if we should show success message\nconst isAnySelected=selectionType===\"multiple\"?Array.isArray(effectiveValue)&&effectiveValue.length>0:!!effectiveValue;const shouldShowSuccess=(isCanvas?showCanvasSuccess:hasValidated)&&!isValidating&&!error&&successMessage&&isAnySelected;const successDisplayMode=successStyles.displayMode??\"both\";const showInlineSuccessIcon=shouldShowSuccess&&(successDisplayMode===\"both\"||successDisplayMode===\"icon\");const showSuccessMessage=shouldShowSuccess&&successMessage&&(successDisplayMode===\"both\"||successDisplayMode===\"message\");const handleOptionClick=optionValue=>{if(isDisabled)return;if(selectionType===\"multiple\"){const currentArray=Array.isArray(value)?value:value?[String(value)]:[];if(currentArray.includes(optionValue)){handleChange(currentArray.filter(v=>String(v)!==String(optionValue)));}else{handleChange([...currentArray,optionValue]);}}else{if(value===optionValue){handleChange(\"\");}else{handleChange(optionValue);}}};if(!isVisible)return /*#__PURE__*/_jsx(HiddenFieldMarker,{});const swatchWidth=swatchStyles.width??64;const swatchHeight=swatchStyles.height??64;const borderRadiusSwatch=swatchStyles.borderRadius??32;const swatchGapSize=swatchStyles.gapSize??4;const containerStyle={display:\"flex\",flexDirection:layout===\"horizontal\"?\"row\":\"column\",gap:`${gap}px`,flexWrap:\"wrap\",width:\"100%\",direction:getFormKitDirection(style,[...options.map(option=>option.label),name]),...style};return /*#__PURE__*/_jsxs(\"div\",{style:containerStyle,children:[isCanvas&&showBadge&&/*#__PURE__*/_jsx(\"div\",{style:{position:\"absolute\",top:-8,insetInlineEnd:-8,backgroundColor:\"#FF6B00\",color:\"white\",fontSize:10,fontWeight:600,padding:\"2px 6px\",borderRadius:4,zIndex:1e3,pointerEvents:\"none\",boxShadow:\"0 2px 4px rgba(0,0,0,0.2)\"},children:badgeText}),/*#__PURE__*/_jsx(\"input\",{type:\"hidden\",name:name,value:Array.isArray(effectiveValue)?effectiveValue.join(\",\"):effectiveValue||\"\"}),options.map((option,index)=>{const optionValue=option.value||option.label;const isSelected=selectionType===\"multiple\"?Array.isArray(effectiveValue)?effectiveValue.includes(optionValue):false:effectiveValue===optionValue;// Border logic for swatch\nconst defaultBorderSwatch=swatchStyles.border||{borderWidth:0,borderColor:\"transparent\",borderStyle:\"solid\"};let borderColorSwatch=defaultBorderSwatch.borderColor;let borderWidthSwatch=defaultBorderSwatch.borderWidth;if(isSelected){borderColorSwatch=shouldShowSuccess&&successStyles.inputBorderColor?successStyles.inputBorderColor:swatchStyles.selectedBorderColor??\"#0099FF\";borderWidthSwatch=2;}else if(error&&(isTouched||state?.submitAttempted)){borderColorSwatch=errorStyles.color??\"#FF4444\";if(borderWidthSwatch===0)borderWidthSwatch=1;}return /*#__PURE__*/_jsxs(\"button\",{type:\"button\",onClick:()=>handleOptionClick(optionValue),disabled:isDisabled,title:option.label,style:{display:\"flex\",alignItems:\"center\",justifyContent:\"center\",width:`${swatchWidth}px`,height:`${swatchHeight}px`,position:\"relative\",borderRadius:borderRadiusSwatch,backgroundColor:\"transparent\",borderWidth:`${borderWidthSwatch}px`,borderStyle:defaultBorderSwatch.borderStyle,borderColor:borderColorSwatch,padding:isSelected?`${swatchGapSize}px`:\"0px\",cursor:isDisabled?\"not-allowed\":\"pointer\",boxShadow:isSelected?\"0 4px 12px rgba(96, 82, 255, 0.15)\":\"none\",transition:\"padding 0.2s ease, border-color 0.2s ease, box-shadow 0.2s ease\",opacity:isDisabled?.65:1,flexShrink:0},children:[/*#__PURE__*/_jsx(\"div\",{style:{width:\"100%\",height:\"100%\",borderRadius:isSelected?Math.max(0,borderRadiusSwatch-swatchGapSize-borderWidthSwatch):borderRadiusSwatch,backgroundImage:option.fillType!==\"color\"&&option.image?`url(${option.image})`:undefined,backgroundColor:option.fillType===\"color\"?option.color||\"#0099FF\":option.image?\"transparent\":\"#E5E5E5\",backgroundSize:\"cover\",backgroundPosition:\"center\",transition:\"border-radius 0.2s ease\"}}),showInlineSuccessIcon&&isSelected&&/*#__PURE__*/_jsx(\"div\",{style:{position:\"absolute\",top:-4,right:-4,width:20,height:20,color:successStyles.iconColor??successStyles.inputTextColor??\"#00E054\",display:\"flex\",alignItems:\"center\",justifyContent:\"center\",backgroundColor:\"white\",borderRadius:\"50%\",boxShadow:\"0 2px 4px rgba(0,0,0,0.1)\"},children:renderIcon({iconType:successStyles.iconType,customIcon:successStyles.customIcon,DefaultIcon:IconCheck,props:{style:{width:14,height:14}}})})]},`${optionValue}-${index}`);}),error&&(isTouched||state?.submitAttempted)&&/*#__PURE__*/_jsx(\"div\",{style:{fontSize:errorStyles.font?.fontSize??12,fontWeight:errorStyles.font?.fontWeight,fontFamily:errorStyles.font?.fontFamily??\"inherit\",lineHeight:errorStyles.font?.lineHeight??undefined,letterSpacing:errorStyles.font?.letterSpacing??undefined,color:errorStyles.color??\"#FF4444\",marginTop:errorStyles.marginTop??4,width:\"100%\"},children:error}),showSuccessMessage&&/*#__PURE__*/_jsx(\"div\",{style:{fontSize:successStyles.messageFont?.fontSize??12,fontWeight:successStyles.messageFont?.fontWeight,fontFamily:successStyles.messageFont?.fontFamily??\"inherit\",lineHeight:successStyles.messageFont?.lineHeight??undefined,letterSpacing:successStyles.messageFont?.letterSpacing??undefined,color:successStyles.messageColor??\"#0099FF\",marginTop:successStyles.marginTop??4,width:\"100%\"},children:successMessage})]});}// Swatch style controls\nconst SWATCH_STYLE_CONTROLS={width:{type:ControlType.Number,title:\"Width\",min:24,max:200,step:2,defaultValue:64,displayStepper:true},height:{type:ControlType.Number,title:\"Height\",min:24,max:200,step:2,defaultValue:64,displayStepper:true},borderRadius:{type:ControlType.Number,title:\"Radius\",min:0,max:100,step:2,defaultValue:32,displayStepper:true},gapSize:{type:ControlType.Number,title:\"Ring Gap\",min:0,max:12,step:1,defaultValue:4,displayStepper:true},border:{type:ControlType.Object,title:\"Border\",controls:{borderWidth:{type:ControlType.Number,title:\"Width\",min:0,max:20,step:1,defaultValue:0},borderColor:{type:ControlType.Color,title:\"Color\",defaultValue:\"transparent\"},borderStyle:{type:ControlType.Enum,title:\"Style\",options:[\"solid\",\"dashed\",\"dotted\"],defaultValue:\"solid\"}}},selectedBorderColor:{type:ControlType.Color,title:\"Selected Ring\",defaultValue:\"#0099FF\"}};addPropertyControls(FormKitImageButton,{// Main options\nname:{type:ControlType.String,title:\"Name\",defaultValue:\"imageButton\",description:\"Use camelCase or snake_case, NO SPACES\"},options:{type:ControlType.Array,title:\"Options\",control:{type:ControlType.Object,controls:{label:{type:ControlType.String,title:\"Label\",defaultValue:\"Option\"},value:{type:ControlType.String,title:\"Value\",description:\"Optional, uses label if empty\"},fillType:{type:ControlType.Enum,title:\"Fill Type\",options:[\"image\",\"color\"],optionTitles:[\"Image\",\"Color\"],defaultValue:\"image\",displaySegmentedControl:true},image:{type:ControlType.Image,title:\"Image\",hidden:props=>props.fillType===\"color\"},color:{type:ControlType.Color,title:\"Color\",defaultValue:\"#0099FF\",hidden:props=>props.fillType!==\"color\"}}},defaultValue:[{label:\"Option 1\",value:\"opt1\",fillType:\"image\",image:\"https://images.unsplash.com/photo-1522199710521-72d69614c702\"},{label:\"Option 2\",value:\"opt2\",fillType:\"color\",color:\"#0099FF\"},{label:\"Option 3\",value:\"opt3\",fillType:\"image\",image:\"https://images.unsplash.com/photo-1522199710521-72d69614c702\"}]},layout:{type:ControlType.Enum,title:\"Layout\",options:[\"horizontal\",\"vertical\"],optionTitles:[\"Horizontal\",\"Vertical\"],defaultValue:\"horizontal\",displaySegmentedControl:true},gap:{type:ControlType.Number,title:\"Gap\",min:0,max:100,defaultValue:16,displayStepper:true},selectionType:{type:ControlType.Enum,title:\"Selection\",options:[\"single\",\"multiple\"],optionTitles:[\"Single\",\"Multiple\"],defaultValue:\"single\",displaySegmentedControl:true},canvasPreview:{type:ControlType.Object,title:\"Canvas Preview\",optional:true,controls:{selectedValues:{type:ControlType.String,title:\"Selected\",defaultValue:\"opt1\",placeholder:\"opt1, opt2\",description:\"Canvas only. Comma-separated option values for styling selected states.\"},showSuccess:{type:ControlType.Boolean,title:\"Show Success\",defaultValue:false,description:\"Canvas only. Preview success styles while designing.\"}}},// NESTED - Validation\nvalidation:{type:ControlType.Object,buttonTitle:\"Validation\",optional:true,controls:VALIDATION_CONTROLS},// Styling (nested)\nstyling:createStylingControl({swatchStyles:{type:ControlType.Object,buttonTitle:\"Swatch\",optional:true,controls:SWATCH_STYLE_CONTROLS},errorStyles:{type:ControlType.Object,buttonTitle:\"Error\",optional:true,controls:ERROR_STYLE_CONTROLS},successStyles:{type:ControlType.Object,buttonTitle:\"Success\",optional:true,controls:SUCCESS_STYLE_CONTROLS}}),// Conditional visibility\nshowIf:SHOW_IF_CONTROL,showIfMatch:SHOW_IF_MATCH_CONTROL,showIfAction:SHOW_IF_ACTION_CONTROL,// Store connection\n...STORE_CONFIG_CONTROL});\nexport const __FramerMetadata__ = {\"exports\":{\"default\":{\"type\":\"reactComponent\",\"name\":\"FormKitImageButton\",\"slots\":[],\"annotations\":{\"framerSupportedLayoutWidth\":\"any-prefer-fixed\",\"framerIntrinsicWidth\":\"300\",\"framerContractVersion\":\"1\",\"framerSupportedLayoutHeight\":\"auto\",\"framerDisableUnlink\":\"\"}},\"__FramerMetadata__\":{\"type\":\"variable\"}}}\n//# sourceMappingURL=./FormKitImageButton.map"],"mappings":"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"}