{"version":3,"file":"9R-eeNZ-IOSBen7PyhL-D9jA1_TKWFZSGRvTcVPzqJg.ClgZR4Mf.mjs","names":["useState","React.useMemo","useRef","useCallback","useState","useRef","React","useState","useRef","useCallback","serializationHash","variantClassNames","transition1","Transition","React.useContext","React.useMemo","Variants","React.Fragment","getProps","createLayoutDependency","React.forwardRef","useRef","React.useId","variationAxes","addPropertyOverrides","Plus","RichText","enabledGestures","cycleOrder","serializationHash","variantClassNames","transition1","isSet","animation","animation1","animation2","animation3","animation4","Transition","React.useContext","React.useMemo","humanReadableVariantMap","Variants","React.Fragment","getProps","createLayoutDependency","React.forwardRef","useRef","React.useId","sharedStyle.className","sharedStyle.css","variationAxes","sharedStyle.fonts","useState","useRef","useCallback","useState","useCallback","serializationHash","variantClassNames","transition1","Transition","React.useContext","React.useMemo","humanReadableVariantMap","Variants","React.Fragment","getProps","createLayoutDependency","React.forwardRef","useRef","React.useId","RichText","variationAxes","ButtonStates","serializationHash","variantClassNames","transition1","matchVariant","React.useContext","React.useMemo","React.Fragment","React.useState","getProps","React.forwardRef","useRef","React.useId","FCStockStatus","Expand","Cross","FCPurchaseButton","CartOverlay","FAQSupply","Card","FramerStore","React.forwardRef","useRef","React.useId","React.useMemo","metadataProvider","sharedStyle.className","sharedStyle1.className","sharedStyle2.className","React.useContext","React.useRef","className","PropertyOverrides","Image1","RichText","React.Fragment","_Fragment","sharedStyle.css","sharedStyle1.css","sharedStyle2.css","sharedStyle.fonts","sharedStyle1.fonts","sharedStyle2.fonts"],"sources":["https:/framerusercontent.com/modules/LexXLRVKTdoqiCBn8fDM/O6pNXVMa2Y4mB9woBhKc/FC_ProductVariants_v1.js","https:/framerusercontent.com/modules/gsF1PcoB6DIjO9DCxQ8u/0coDF4rLku9zebkwDUh0/FC_ProductStockStatus.js","https:/framerusercontent.com/modules/LfNrg3Vrj1wZ6mJirTUh/hccyIiUFXFE4OXIJiabT/FC_ProductInventoryCounter.js","https:/framerusercontent.com/modules/rgtQU8EPNlifOLRDOyzm/FqopxCBsxynZxxCACinE/eqF6Ded09.js","https:/framerusercontent.com/modules/RTpf4uvhxqvJOFyukbsK/DCp8H5VZCsNBIi55wB5j/IzktuRC_v.js","https:/framerusercontent.com/modules/FXrY3V9ZYVL8aziafDQn/HIuMDRrKIIcsJe65kZwo/initialize.js","https:/framerusercontent.com/modules/DfixsupJND2Hhr1xcPbk/zYiTTDRsHtf2S3Zf8E7G/FC_ProductPurchaseButton.js","https:/framerusercontent.com/modules/zNwTdnRnz4MnWRroL39h/I7wxmPLwJWfAR42X0lMK/FC_ProductPurchaseButtonVariantState.js","https:/framerusercontent.com/modules/qDgTAvrL68dyl9biuJ7G/HBdErQj2rTC83XiPZJ92/Qayp0S8Ci.js","https:/framerusercontent.com/modules/ZHdzjMZXqiwfxu0LR8Rg/5dyk9s7NX1TiiBL76gvZ/MXk78xtbX.js","https:/framerusercontent.com/modules/Clf8Mg4idyQxhQ1O8fHw/hhP4hetbRvl0oRinmjfr/XGqHdMUqV.js"],"sourcesContent":["/*\n * Framer Commerce\n * Confidential and Proprietary - All Rights Reserved\n * Unauthorized use, reproduction, distribution, or disclosure of this\n * source code or any related information is strictly prohibited.\n *\n * This software is the exclusive property of Framer Commerce (\"Company\").\n * It is considered highly confidential and proprietary information.\n *\n * Any use, copying, modification, distribution, or sharing of this software,\n * in whole or in part, without the express written permission of the Company\n * is strictly prohibited and may result in legal action.\n *\n * DISCLAIMER: This software does not provide any express or\n * implied warranties, including, but not limited to, the implied warranties\n * of merchantability and fitness for a particular purpose. In no event shall\n * Framer Commerce be liable for any direct, indirect, incidental, special,\n * exemplary, or consequential damages (including, but not limited to, procurement\n * of substitute goods or services; loss of use, data, or profits; or business\n * interruption) however caused and on any theory of liability, whether in\n * contract, strict liability, or tort (including negligence or otherwise)\n * arising in any way out of the use of this software, even if advised of\n * the possibility of such damage.\n *\n * Any unauthorized possession, use, copying, distribution, or dissemination\n * of this software will be considered a breach of confidentiality and may\n * result in legal action.\n *\n * For inquiries, contact:\n * Framer Commerce\n * Email: hello@framercommerce.com\n *\n * © 2025 Butter Supply Inc. All Rights Reserved.\n *//*\n * Note: This component is not yet ready for use.\n * It replaces the referenced Framer import and creates the buttons from scratch, which is stable.\n * It also uses CMS data to populate the product data on canvas, which causes critical issues when replacing the code in the existing code component.\n */import{jsx as _jsx,jsxs as _jsxs}from\"react/jsx-runtime\";import*as React from\"react\";import{useCallback,useEffect,useRef,useState}from\"react\";// Internal\nimport{addPropertyControls,ControlType}from\"framer\";// Helper to determine if the component is in a purchase action mode\nconst __isPurchaseMode=act=>act===\"Add to Cart\"||act===\"Buy Now\";import{get}from\"lodash-es\";import{createCartMutation,addToCartMutation}from\"https://xn----9sbmqji2czbya.xn--p1ai/__framerusercontent/modules/yiRfl1JCGhIBUL31WVDk/wupS2XmBAHu1kBQNv9pi/mutations_v2.js\";import{appendAllTrackingParamsToUrl}from\"https://xn----9sbmqji2czbya.xn--p1ai/__framerusercontent/modules/w24ELWa2giT3SFaWpV77/398w6fPyag8B92ojouQr/utmParams.js\";import{appendLanguageToUrl}from\"https://xn----9sbmqji2czbya.xn--p1ai/__framerusercontent/modules/vC6fzbfO83MgBPIhn5zl/DUlbmWuOELzEUenVmv3G/locales.js\";import{trackFacebookPixelAddToCart,trackFacebookPixelInitiateCheckout}from\"https://xn----9sbmqji2czbya.xn--p1ai/__framerusercontent/modules/6Zs9CjkPbKzHjoy8LK08/iqoIwmJw4hztafi4V4IV/Fb_pixel.js\";const VariantDropdown=({opt,filteredValues,isLast,valid,invalidMsg,props,dispatchOptionSelectedEvent,selectedOptions,combinations,index,totalCount})=>{const[isHovered,setIsHovered]=useState(false);const[isFocused,setIsFocused]=useState(false);const{dropdownConfigs}=props;const{font,selected,hover,focus,unselected,radius,padding,icon}=dropdownConfigs;const paddingParts=String(padding).trim().split(/\\s+/);const paddingRight=paddingParts.length>=2?paddingParts[1]:paddingParts[0];const unselectedText=(unselected.text||\"Select {{variant}}\").replace(\"{{variant}}\",opt.name);const currentValue=selectedOptions[opt.name]||unselectedText;const isUnselected=currentValue===unselectedText;// Edge to edge styling - only apply when gap is 0\nconst isLastItem=index===totalCount-1;const gap=Number(props.containerConfigs.gap);const applyEdgeToEdge=gap===0;const isHorizontal=props.containerConfigs.direction===\"horizontal\";// Calculate margin style for edge-to-edge effect\nconst marginStyle={};if(applyEdgeToEdge&&!isLastItem){if(isHorizontal){// For horizontal layout, use negative right margin\nmarginStyle.marginRight=\"-1px\";}else{// For vertical layout, use negative bottom margin\nmarginStyle.marginBottom=\"-1px\";}}// Determine border style based on state (focus uses outline, not border change)\nconst borderWidth=isUnselected?unselected.border.borderWidth:isHovered?hover.border.borderWidth:selected.border.borderWidth;const borderStyle=`${borderWidth}px solid ${isUnselected?unselected.border.borderColor:isHovered?hover.border.borderColor:selected.border.borderColor}`;// Calculate effective outline offset: when offset is 0, subtract border width to align with border edge\nconst effectiveOffset=focus?.offset===0?-borderWidth:focus?.offset||2;// Calculate focus radius: dropdown radius + offset (for pixel values)\nconst calculateFocusRadius=(radiusValue,offset)=>{// Parse the radius value\nconst match=radiusValue.match(/^(\\d+(?:\\.\\d+)?)(px|%)$/);if(!match)return radiusValue// Return as-is if we can't parse it\n;const[,value,unit]=match;if(unit===\"px\"){// For pixel values, add the offset (ensure it doesn't go negative)\nconst numericValue=parseFloat(value);const calculatedRadius=Math.max(0,numericValue+offset);return`${calculatedRadius}px`;}else{// For percentages, return as-is (can't add pixels to percentage)\nreturn radiusValue;}};const focusRadius=calculateFocusRadius(radius,effectiveOffset);return /*#__PURE__*/_jsx(\"div\",{style:{width:\"100%\",position:\"relative\",zIndex:isFocused?1:0,overflow:\"visible\",...isHorizontal&&applyEdgeToEdge&&!isLastItem?{marginRight:\"-1px\"}:{}},className:`variant-dropdown-container ${isHorizontal&&applyEdgeToEdge&&!isLastItem?\"horizontal-edge-to-edge\":\"\"}`,\"data-horizontal\":isHorizontal?\"true\":\"false\",\"data-last\":isLastItem?\"true\":\"false\",\"data-edge-to-edge\":applyEdgeToEdge?\"true\":\"false\",children:/*#__PURE__*/_jsxs(\"div\",{style:{display:\"flex\",flexDirection:\"column\",gap:\"0px\"},children:[/*#__PURE__*/_jsx(\"div\",{style:{width:\"100%\",display:props.titleConfigs.visible||props.selectedConfigs.visible?\"flex\":\"none\",justifyContent:props.titleConfigs.font.textAlign===\"center\"?\"center\":props.titleConfigs.font.textAlign===\"right\"?\"flex-end\":\"flex-start\",marginBottom:get(props,\"containerConfigs.gap2\")!==undefined?get(props,\"containerConfigs.gap2\"):get(props,\"titleConfigs.gap\"),overflow:\"visible\"},children:/*#__PURE__*/_jsxs(\"div\",{style:{width:\"100%\",display:\"flex\",justifyContent:\"flex-start\",alignItems:\"center\",overflow:\"visible\"},children:[props.titleConfigs.visible&&/*#__PURE__*/_jsx(\"label\",{id:`variant-title-${opt.name}`,htmlFor:`variant-${opt.name}`,style:{...get(props,\"titleConfigs.font\"),color:get(props,\"titleConfigs.color\"),whiteSpace:\"nowrap\",overflow:\"visible\",margin:0,cursor:\"pointer\",textTransform:get(props,\"titleConfigs.textTransform\",\"None\").toLowerCase()},children:(props.titleConfigs.display||\"{{Option}}\").replace(\"{{Option}}\",opt.name)}),props.selectedConfigs.visible&&selectedOptions[opt.name]&&/*#__PURE__*/_jsx(\"p\",{style:{...get(props,\"selectedConfigs.font\"),color:get(props,\"selectedConfigs.color\"),whiteSpace:\"nowrap\",overflow:\"visible\",paddingLeft:props.titleConfigs.visible?`${props.selectedConfigs.gap}px`:0,margin:0,textTransform:get(props,\"selectedConfigs.textTransform\",\"None\").toLowerCase()},children:selectedOptions[opt.name]}),props.selectedConfigs.visible&&props.selectedConfigs.emptyVisible&&!selectedOptions[opt.name]&&/*#__PURE__*/_jsx(\"p\",{style:{...get(props,\"selectedConfigs.font\"),color:get(props,\"selectedConfigs.color\"),whiteSpace:\"nowrap\",overflow:\"visible\",paddingLeft:props.titleConfigs.visible?`${props.selectedConfigs.gap}px`:0,margin:0,textTransform:get(props,\"selectedConfigs.textTransform\",\"None\").toLowerCase()},children:(props.selectedConfigs.emptyText||\"Select {{Option Value}}\").replace(\"{{Option Value}}\",opt.name)})]})}),/*#__PURE__*/_jsx(\"div\",{style:{position:\"relative\"},children:/*#__PURE__*/_jsxs(\"div\",{className:\"dropdown-inner\",style:{position:\"relative\",display:\"flex\",alignItems:\"center\",padding:padding,paddingRight:`calc(${paddingRight} + ${icon.size}px + ${paddingRight})`,backgroundColor:isUnselected?unselected.background:isHovered?hover.background:selected.background,borderRadius:radius,border:borderStyle,cursor:\"pointer\",\"--hover-border-color\":hover.border.borderColor,\"--focus-outline-color\":focus?.color||hover.border.borderColor,\"--focus-outline-width\":`${focus?.width||2}px`,\"--focus-outline-offset\":`${effectiveOffset}px`,\"--focus-outline-radius\":focusRadius,...marginStyle},children:[/*#__PURE__*/_jsx(\"span\",{style:{pointerEvents:\"none\",whiteSpace:\"nowrap\",minWidth:\"max-content\",...font,color:isUnselected?unselected.color:isFocused?hover.color:isHovered?hover.color:selected.color,textTransform:get(props,\"dropdownConfigs.textTransform\",\"None\").toLowerCase()},children:currentValue}),/*#__PURE__*/_jsxs(\"select\",{id:`variant-${opt.name}`,style:{position:\"absolute\",top:0,left:0,right:0,bottom:0,width:\"100%\",height:\"100%\",boxSizing:\"border-box\",appearance:\"none\",WebkitAppearance:\"none\",background:\"transparent\",color:\"transparent\",border:\"none\",padding:0,margin:0,cursor:\"pointer\",outline:\"none\",opacity:0},value:currentValue,onChange:e=>{const value=e.target.value;if(value!==unselectedText){dispatchOptionSelectedEvent(opt.name,value);}},onMouseDown:()=>setIsFocused(true),onMouseEnter:()=>setIsHovered(true),onMouseLeave:()=>setIsHovered(false),onFocus:()=>setIsFocused(true),onBlur:()=>setIsFocused(false),onKeyDown:e=>{if(e.key===\"Enter\"||e.key===\" \"){e.preventDefault();const select=e.target;const event=new MouseEvent(\"mousedown\",{bubbles:true,cancelable:true,view:window});select.dispatchEvent(event);}else if(e.key===\"ArrowDown\"||e.key===\"ArrowUp\"){setIsFocused(true);}},\"aria-label\":`Select ${opt.name}`,\"aria-invalid\":!valid,\"aria-required\":\"true\",\"aria-describedby\":!valid?`variant-error-${opt.name}`:undefined,children:[/*#__PURE__*/_jsx(\"option\",{value:unselectedText,disabled:true,children:unselectedText}),filteredValues.map(v=>{let isAvailableForSale;if(props.behaviorConfigs?.filterVariants?.variantGroups===\"all\"){const filtered=Array.from(Object.entries({...selectedOptions,[opt.name]:v}));isAvailableForSale=combinations.find(combination=>filtered.every(([key,value])=>combination[key]===value)&&combination.availableForSale);}else{const availableValues=Array.from(new Set(combinations.filter(comb=>comb.availableForSale&&Object.entries(selectedOptions).filter(([key])=>key!==opt.name).every(([key,value])=>comb[key]===value)).map(comb=>comb[opt.name]).filter(Boolean)));isAvailableForSale=availableValues.includes(v);}return /*#__PURE__*/_jsx(\"option\",{value:v,disabled:!isAvailableForSale,style:{color:!isAvailableForSale?unselected.color:selected.color,backgroundColor:!isAvailableForSale?unselected.background:selected.background},children:v},v);})]}),/*#__PURE__*/_jsx(\"div\",{\"aria-hidden\":\"true\",style:{position:\"absolute\",right:0,top:0,bottom:0,display:\"flex\",alignItems:\"center\",justifyContent:\"center\",padding:padding,pointerEvents:\"none\"},children:icon.type===\"custom\"&&icon.customIcon?/*#__PURE__*/_jsx(\"img\",{src:icon.customIcon,width:icon.size,height:icon.size,style:{objectFit:\"contain\"},alt:\"Dropdown icon\"}):/*#__PURE__*/_jsx(\"svg\",{width:icon.size,height:icon.size,viewBox:\"0 0 24 24\",fill:\"none\",stroke:icon.type===\"default\"?icon.color:isUnselected?unselected.color:isFocused?hover.color:isHovered?hover.color:icon.color,strokeWidth:icon.weight,strokeLinecap:\"butt\",strokeLinejoin:\"miter\",children:/*#__PURE__*/_jsx(\"polyline\",{points:\"6 9 12 15 18 9\"})})})]})}),!valid&&/*#__PURE__*/_jsx(\"div\",{id:`variant-error-${opt.name}`,role:\"alert\",\"aria-live\":\"polite\",style:{color:props.ErrorConfigs.errorColor,...props.ErrorConfigs.errorFont,paddingTop:props.ErrorConfigs.errorPaddingTop},children:invalidMsg})]})},opt.name);};/**\n * @framerDisableUnlink\n *\n * FC_ProductVariants is a component that allows users to select product variants.\n *\n * The 'variants' property accepts a string in the following format:\n * [Option Name: Value1,Value2,Value3 • option_id] •• [Value1/Value2 • variant_id][Value1/Value3 • variant_id2] •• product_id\n *\n * Examples:\n * - Single option: [Size: XS,S,M,L,XL • size_id] •• [XS • variant1][S • variant2][M • variant3][L • variant4][XL • variant5]\n * - Multiple options: [Size: XS,S,M,L,XL • size_id][Color: Blue,Black • color_id] •• [XS/Blue • var1][XS/Black • var2][S/Blue • var3]\n * - With product ID: [Size: XS,S,M,L,XL • size_id] •• [XS • variant1][S • variant2] •• product_123456789\n */export default function FC_ProductVariants(props){const{shopifyProductID,images,behaviorConfigs,style,variants}=props;const{showSingleVariants,selectOutOfStock,filterVariants,action,triggerCart,productPage=true}=behaviorConfigs||{};let{autoSelectFirst}=behaviorConfigs||{};const[product,setProduct]=useState(null);const[shouldValidate,setShouldValidate]=useState(false);const[selectedOptions,setSelectedOptions]=useState({});const[combinations,setCombinations]=useState([]);// Compute the option names this instance actually controls, accounting for\n// \"equals\" vs \"doesn't equal\" variantGroups. For \"doesn't equal\" we must\n// use the complement set (all option names excluding variantTitles).\nconst getIncludedOptionNames=(prod=product,filters=filterVariants)=>{const allNames=(get(prod,\"options\",[])||[]).map(o=>o.name);if(!filters||filters.variantGroups===\"all\")return allNames;const titles=filters.variantTitles||[];return filters.variantGroups===\"equals\"?titles:allNames.filter(name=>!titles.includes(name));};// Filter options based on the filterVariants prop (for quick purchase functionality)\nconst filteredOptions=React.useMemo(()=>{if(!filterVariants||filterVariants.variantGroups===\"all\"){return get(product,\"options\")||[];}if(filterVariants.variantGroups===\"equals\"){return(get(product,\"options\")||[]).filter(opt=>filterVariants.variantTitles?.includes(opt.name));}if(filterVariants.variantGroups===\"doesn't equal\"){return(get(product,\"options\")||[]).filter(opt=>!filterVariants.variantTitles?.includes(opt.name));}return get(product,\"options\")||[];},[product,filterVariants]);// Define environment flags without touching `window` on the server to avoid hydration mismatches\nconst isBrowser=typeof window!==\"undefined\";const isCanvas=!isBrowser?true:!window.shopXtools;const autoSelectRef=useRef(false);// Unique per-instance identifier to avoid cross-talk between multiple selectors\nconst instanceIdRef=useRef(Math.random().toString(36).slice(2));// Track whether we already applied variant from session storage to avoid double-processing\nconst appliedFromStorageRef=useRef(false);// Guard to prevent race conditions while initializing auto-select\nconst isInitializingRef=useRef(false);// Track previous config to detect transitions that should clear caches\nconst prevActionRef=useRef(action);const prevAutoSelectFirstRef=useRef(!!autoSelectFirst);// Token to discard stale async work during initialization\nconst initTokenRef=useRef(0);const hasInitializedRef=useRef(false);const initialScrollPreventedRef=useRef(false)// Prevent initial scroll trigger\n;const[selectedCurrency,setSelectedCurrency]=useState();const[focusedOptionIndex,setFocusedOptionIndex]=useState(-1);const[focusedValueIndex,setFocusedValueIndex]=useState(-1);const containerRef=useRef(null);const[colorHexMap,setColorHexMap]=useState(new Map);useEffect(()=>{if(isInitializingRef.current)return;setSelectedOptions({});autoSelectRef.current=false;},[shopifyProductID]);// Reset guards when filter configuration changes so auto-select can re-run\nuseEffect(()=>{if(isInitializingRef.current)return;setSelectedOptions({});autoSelectRef.current=false;},[filterVariants?.variantGroups,(filterVariants?.variantTitles||[]).join(\"|\")]);// When autoSelectFirst is toggled off, clear any preselection in Canvas and Browser\nuseEffect(()=>{if(!autoSelectFirst){autoSelectRef.current=false;setSelectedOptions({});}},[autoSelectFirst]);const swatchColors=props.colors||[];// Use server-safe defaults during first render; hydrate from `window` after mount\nconst[swatchImages,setSwatchImages]=useState(props.swatchImages||[]);const[colorTitles,setColorTitles]=useState(props.colorTitles||[\"Color\"]);const imageTitles=props.imageTitles||[];const variantImageTitles=props.variantImageTitles||[];// After mount, read from window if available and props did not provide values\nuseEffect(()=>{if(!isBrowser)return;const cfg=window.__FcCheckoutConfigs;if(!props.swatchImages&&Array.isArray(cfg?.variantImageValues)){setSwatchImages(cfg.variantImageValues);}if(!props.colorTitles&&Array.isArray(cfg?.variantColorTitles)){setColorTitles(cfg.variantColorTitles);}},[isBrowser,props.swatchImages,props.colorTitles]);// Standard color fallbacks\nconst standardColorMap=new Map([[\"black\",\"#000000\"],[\"white\",\"#FFFFFF\"],[\"red\",\"#FF0000\"],[\"green\",\"#00FF00\"],[\"blue\",\"#0000FF\"],[\"yellow\",\"#FFFF00\"],[\"purple\",\"#800080\"],[\"orange\",\"#FFA500\"],[\"pink\",\"#FFC0CB\"],[\"brown\",\"#A52A2A\"],[\"gray\",\"#808080\"],[\"grey\",\"#808080\"],[\"navy\",\"#000080\"],[\"teal\",\"#008080\"],[\"maroon\",\"#800000\"],[\"olive\",\"#808000\"],[\"lime\",\"#00FF00\"],[\"aqua\",\"#00FFFF\"],[\"silver\",\"#C0C0C0\"],[\"gold\",\"#FFD700\"],[\"beige\",\"#F5F5DC\"],[\"ivory\",\"#FFFFF0\"],[\"lavender\",\"#E6E6FA\"],[\"mint\",\"#F5FFFA\"],[\"coral\",\"#FF7F50\"],[\"indigo\",\"#4B0082\"],[\"violet\",\"#EE82EE\"],[\"magenta\",\"#FF00FF\"],[\"turquoise\",\"#40E0D0\"],[\"plum\",\"#DDA0DD\"],[\"salmon\",\"#FA8072\"],[\"tan\",\"#D2B48C\"],[\"khaki\",\"#F0E68C\"],[\"azure\",\"#F0FFFF\"],[\"bisque\",\"#FFE4C4\"],[\"chocolate\",\"#D2691E\"],[\"crimson\",\"#DC143C\"],[\"fuchsia\",\"#FF00FF\"],[\"honeydew\",\"#F0FFF0\"],[\"linen\",\"#FAF0E6\"],[\"moccasin\",\"#FFE4B5\"],[\"oldlace\",\"#FDF5E6\"],[\"orchid\",\"#DA70D6\"],[\"papayawhip\",\"#FFEFD5\"],[\"peachpuff\",\"#FFDAB9\"],[\"peru\",\"#CD853F\"],[\"rosybrown\",\"#BC8F8F\"],[\"sandybrown\",\"#F4A460\"],[\"seashell\",\"#FFF5EE\"],[\"sienna\",\"#A0522D\"],[\"skyblue\",\"#87CEEB\"],[\"slateblue\",\"#6A5ACD\"],[\"slategray\",\"#708090\"],[\"slategrey\",\"#708090\"],[\"snow\",\"#FFFAFA\"],[\"springgreen\",\"#00FF7F\"],[\"steelblue\",\"#4682B4\"],[\"thistle\",\"#D8BFD8\"],[\"tomato\",\"#FF6347\"],[\"wheat\",\"#F5DEB3\"],[\"whitesmoke\",\"#F5F5F5\"],[\"yellowgreen\",\"#9ACD32\"]]);useEffect(()=>{const defaultColors=new Map;// First, try to use colors from props if they exist\nif(swatchColors&&swatchColors.length>0){swatchColors.forEach(color=>{if(color.name){// Normalize the color name by trimming and converting to lowercase\nconst normalizedName=color.name.trim().toLowerCase();// Only use standard color as fallback if hex is missing\nconst hex=color.hex||standardColorMap.get(normalizedName);if(hex){defaultColors.set(normalizedName,hex);}}});}else if(typeof window!==\"undefined\"&&window.__FcCheckoutConfigs?.variantColorValues){try{const colors=window.__FcCheckoutConfigs.variantColorValues;if(Array.isArray(colors)){colors.forEach(color=>{if(color.name&&color.hex){defaultColors.set(color.name.toLowerCase(),color.hex);}});}}catch(error){console.error(\"Error parsing color data from window.__FcCheckoutConfigs:\",error);}}setColorHexMap(defaultColors);},[swatchColors,swatchImages,product,colorTitles]);////////////////////////////URL WITH VARIANT PARAMETER HANDLING//////////////////////////////////\n// Helper function to update URL with variant ID (for product pages)\nconst updateUrlWithVariant=useCallback(variantId=>{// console.log(\"updateUrlWithVariant called with:\", {\n//     variantId,\n//     productPage,\n//     windowUndefined: typeof window === \"undefined\",\n//     currentUrl: typeof window !== \"undefined\" ? window.location.href : \"N/A\"\n// })\nif(typeof window!==\"undefined\"&&productPage&&variantId){// Extract just the numeric ID from the full Shopify ID\nconst numericId=variantId.replace(\"gid://shopify/ProductVariant/\",\"\");//console.log(\"Extracted numeric ID:\", numericId)\n// Create new URL with variant parameter\nconst url=new URL(window.location.href);//console.log(\"Current URL before update:\", url.toString())\nurl.searchParams.set(\"variant\",numericId);//console.log(\"New URL with variant:\", url.toString())\n// Update URL without triggering page refresh\nwindow.history.replaceState({},\"\",url.toString());//console.log(\"✅ Successfully updated URL with variant:\", numericId)\nif(typeof window!==\"undefined\"&&product&&shopifyProductID){// First, check for variant ID in URL parameters\nconst urlParams=new URLSearchParams(window.location.search);const variantIdFromUrl=urlParams.get(\"variant\");if(variantIdFromUrl){// Find the variant with this ID\nconst matchingVariant=(get(product,\"variants.edges\")||[]).find(({node})=>node.id.endsWith(variantIdFromUrl)||node.id===`gid://shopify/ProductVariant/${variantIdFromUrl}`);if(matchingVariant){const urlOptions={};matchingVariant.node.selectedOptions.forEach(option=>{urlOptions[option.name]=option.value;});setSelectedOptions(urlOptions);//console.log(\"Link: Set variant from URL parameter:\", urlOptions)\n// console.log(\"Link: matchingVariant\", matchingVariant)\nconst allOptions=get(product,\"options\",[]).map(opt=>opt.name);//console.log(\"Link: allOptions\", allOptions)\nconst allOptionsSelected=allOptions.every(optName=>urlOptions[optName]);// console.log(\n//     \"Link: allOptionsSelected\", allOptionsSelected\n// )\nconst key=`fc_active_variant_${shopifyProductID}`;const savedVariant=sessionStorage.getItem(key);if(!savedVariant){saveVariantToSessionStorage(urlOptions,matchingVariant.node.id,false);//console.log(\"Link: saved variant to sessionStorage from url\", urlOptions)\n}if(allOptionsSelected){// Also dispatch a single event for the active variant\nsetTimeout(()=>{if(__isPurchaseMode(action))return;const activeVariantEvent=new CustomEvent(\"product__active-variant__changed\",{detail:{...matchingVariant.node,productId:`gid://shopify/Product/${shopifyProductID}`,isCompleteVariant:allOptionsSelected}});document.dispatchEvent(activeVariantEvent);// console.log(\n//     \"Link: activeVariantEvent\",\n//     activeVariantEvent.detail\n// )\n},100);}return;// Exit early if we found a URL variant\n}}}}else{// console.log(\"❌ Skipping URL update - conditions not met:\", {\n//     hasWindow: typeof window !== \"undefined\",\n//     productPage,\n//     hasVariantId: !!variantId\n// })\n}},[productPage,product,shopifyProductID]);// Helper function to determine if current page is a product page based on URL\nconst isCurrentPageProductPage=useCallback(()=>{if(typeof window===\"undefined\")return false;try{setTimeout(()=>{const products=window.shopXtools?.products;if(!Array.isArray(products)){return false;}const url=new URL(window.location.href);const pathname=url.pathname;const urlHandle=pathname.split(\"/\").filter(Boolean).pop();if(!urlHandle){return false;}return products.some(({node})=>node.handle===urlHandle);},500);}catch(error){console.error(\"Error determining if current page is product page:\",error);return false;}},[]);// Clean up URL when component mounts on non-product page\nuseEffect(()=>{if(typeof window===\"undefined\"||!window.shopXtools?.products)return;checkAndCleanupUrl();},[]);// Function to clear session storage\nconst clearSessionStorage=useCallback(()=>{if(typeof window===\"undefined\")return;// const isPageProductPage = isCurrentPageProductPage()\n//console.log(\"clearSessionStorage - isPageProductPage\", isPageProductPage)\ntry{if(typeof window===\"undefined\")return;try{for(let i=sessionStorage.length-1;i>=0;i--){const key=sessionStorage.key(i);if(key&&key.startsWith(\"fc_active_variant_\")){sessionStorage.removeItem(key);// console.log(\"Cleared variant from sessionStorage\", key);\n}}}catch(error){console.error(\"Error clearing variant from sessionStorage:\",error);}}catch(error){console.error(\"Error clearing variant from sessionStorage:\",error);}},[shopifyProductID,isCurrentPageProductPage]);// Function to strip variant parameter from URL\nconst stripVariantFromUrl=useCallback(()=>{if(typeof window===\"undefined\"||!selectedOptions)return;try{const url=new URL(window.location.href);const searchParams=url.searchParams;// const isPageProductPage = isCurrentPageProductPage()\n// console.log(\"stripVariantFromUrl - isPageProductPage\", isPageProductPage)\n// Remove variant parameter if it exists\nif(searchParams.has(\"variant\")){searchParams.delete(\"variant\");// Update URL without variant parameter using replaceState\nconst newUrl=url.toString();window.history.replaceState({},\"\",newUrl);// console.log(\"Stripped variant parameter from URL:\", newUrl)\n}else{//console.log(\"Skipping stripping variant from URL - not on product page\", isPageProductPage)\n}}catch(error){console.error(\"Error stripping variant from URL:\",error);}},[shopifyProductID,selectedOptions,isCurrentPageProductPage]);// Function to check and clean up URL if not on valid product page\nconst checkAndCleanupUrl=useCallback(()=>{if(typeof window===\"undefined\"||!window.shopXtools?.products)return;const isValidProductPage=isCurrentPageProductPage();// console.log(\n//     \"isValidProductPage in checkAndCleanupUrl\",\n//     isValidProductPage\n// )\nconst hasVariantParam=new URLSearchParams(window.location.search).has(\"variant\");// console.log(\"has valid param in the url\", hasVariantParam)\nif(isValidProductPage===undefined)return;// if (hasVariantParam && isValidProductPage){\n// }\n// If we have a variant parameter but we're not on a valid product page, clean up\nif(hasVariantParam&&!isValidProductPage){// console.log(\"Cleaning up variant URL - not on valid product page\", isValidProductPage)\nclearSessionStorage();stripVariantFromUrl();setSelectedOptions({});}},[isCurrentPageProductPage,clearSessionStorage,stripVariantFromUrl,selectedOptions]);// Build a namespaced storage key based on product and filter configuration\nconst getVariantStorageKey=useCallback(()=>{const group=filterVariants?.variantGroups||\"all\";const titles=(filterVariants?.variantTitles||[]).join(\"|\")||\"all\";return`fc_active_variant_${shopifyProductID}_${group}__${titles}`;},[shopifyProductID,filterVariants?.variantGroups,filterVariants?.variantTitles]);// Function to save variant selection to session storage\nconst saveVariantToSessionStorage=useCallback((selectedOptions,variantId,isPartial=false)=>{if(typeof window===\"undefined\")return;try{const savedVariantKey=getVariantStorageKey();const variantData={selectedOptions,variantId,timestamp:Date.now(),isPartial};// Write to namespaced key (includes filter config)\nsessionStorage.setItem(savedVariantKey,JSON.stringify(variantData));// Also write to legacy product-only key so other instances with different\n// filter configurations can still restore\nconst legacyKey=`fc_active_variant_${shopifyProductID}`;sessionStorage.setItem(legacyKey,JSON.stringify(variantData));//console.log(\"Saved variant to sessionStorage:\", savedVariantKey, variantData)\n}catch(error){console.error(\"Error saving variant to sessionStorage:\",error);}},[getVariantStorageKey]);// Function to load variant from session storage\nconst loadVariantFromSessionStorage=useCallback(()=>{if(typeof window===\"undefined\")return null;try{const namespacedKey=getVariantStorageKey();let savedData=sessionStorage.getItem(namespacedKey);// Back-compat: fall back to legacy product-only key\nif(!savedData){const legacyKey=`fc_active_variant_${shopifyProductID}`;savedData=sessionStorage.getItem(legacyKey);}// As an additional fallback, search for any saved key for this product regardless\n// of filter configuration and pick the most recent\nif(!savedData){const prefix=`fc_active_variant_${shopifyProductID}_`;let latest=null;for(let i=0;i<sessionStorage.length;i++){const key=sessionStorage.key(i);if(key&&key.startsWith(prefix)){try{const value=sessionStorage.getItem(key);if(!value)continue;const parsed=JSON.parse(value);const ts=parsed?.timestamp||0;if(parsed?.selectedOptions&&(!latest||ts>latest.timestamp)){latest={data:parsed,timestamp:ts};}}catch(_){// ignore malformed entries\n}}}if(latest){savedData=JSON.stringify(latest.data);}}if(savedData){const savedVariantData=JSON.parse(savedData);const timestamp=savedVariantData.timestamp||Date.now();// Only restore if the data is recent (within 24 hours)\nconst isRecent=Date.now()-timestamp<24*60*60*1e3;if(isRecent&&savedVariantData.selectedOptions){// Do not enforce presence of specific option names here; different components\n// may use different filter configurations. We'll filter to product option names\n// later during application.\nreturn savedVariantData;}}}catch(error){console.error(\"Error loading variant from sessionStorage:\",error);}return null;},[shopifyProductID,getVariantStorageKey,filterVariants?.variantGroups,filterVariants?.variantTitles]);// Function to apply variant from session storage to URL (for product pages)\nconst applyVariantFromSessionStorage=useCallback(()=>{if(typeof window===\"undefined\"||!productPage||!product)return;const hasUrlVariant=new URLSearchParams(window.location.search).has(\"variant\");// If the URL already specifies a variant, do NOT apply sessionStorage.\n// The URL must be the source of truth on refresh/navigation.\nif(hasUrlVariant)return false;const savedVariant=loadVariantFromSessionStorage();if(savedVariant?.variantId&&savedVariant?.selectedOptions){// console.log(\"Applying variant from sessionStorage:\", savedVariant)\n// Filter saved options to only those that exist on this product\nconst productOptionNames=(get(product,\"options\",[])||[]).map(opt=>opt.name);const filteredSelectedOptions=Object.fromEntries(Object.entries(savedVariant.selectedOptions).filter(([name])=>productOptionNames.includes(name)));// console.log(\"filteredSelectedOptions\", filteredSelectedOptions)\n// Merge into existing selections so components that auto-selected\n// missing options are not overwritten by storage restore\nsetSelectedOptions(prev=>({...prev||{},...filteredSelectedOptions}));// console.log(\"applyVariantFromSessionStorage - setSelectedOptions\", savedVariant.selectedOptions)\n// Find the matching variant to dispatch events\nconst matchingVariant=(get(product,\"variants.edges\")||[]).find(({node})=>node.id===savedVariant.variantId);if(matchingVariant){// console.log(\"applyVariantFromSessionStorage - matchingVariant\", matchingVariant)\nif(filterVariants?.variantGroups===\"all\"&&autoSelectFirst){const allOptions=get(product,\"options\",[]).map(opt=>opt.name);const options=matchingVariant.node.selectedOptions;const allOptionsSelected=allOptions.every(optName=>options.some(opt=>opt.name===optName&&!!opt.value));if(allOptionsSelected){// console.log(\"updating url with an active variant\", matchingVariant.node)\nupdateUrlWithVariant(matchingVariant.node.id);saveVariantToSessionStorage(matchingVariant.node.selectedOptions,matchingVariant.node.id,false);}}// If this instance has AutoSelectFirst and the group has missing selections,\n// proactively fill them from the matching variant or the first available variant\nconst groupOptionNames=getIncludedOptionNames();const missingInGroup=groupOptionNames.filter(name=>!filteredSelectedOptions[name]);let mergedSelectedOptions={...filteredSelectedOptions};// console.log(\"mergedSelectedOptions\", mergedSelectedOptions)\n// Only backfill missing selections from storage when a URL variant is present.\n// Without a URL variant, keep the restore strictly partial.\nif(hasUrlVariant&&autoSelectFirst&&missingInGroup.length>0){// console.log(\"missingInGroup with autoSelectFirst\", missingInGroup)\nlet chosenSource=matchingVariant.node?.selectedOptions||[];if(!chosenSource.length){const firstAvailable=(get(product,\"variants.edges\",[])||[]).find(({node})=>node.availableForSale);chosenSource=firstAvailable?.node?.selectedOptions||[];}const filled={};chosenSource.forEach(opt=>{if(missingInGroup.includes(opt.name)){filled[opt.name]=opt.value;}});if(Object.keys(filled).length>0){mergedSelectedOptions={...filteredSelectedOptions,...filled};setSelectedOptions(prev=>({...prev||{},...mergedSelectedOptions}));// Dispatch events for newly filled options to sync other components\nsetTimeout(()=>{Object.entries(filled).forEach(([optionName,value])=>{const event=new CustomEvent(\"variant_option_selected\",{detail:{optionName,value,allSelectedOptions:mergedSelectedOptions,isCompleteVariant:false,isPurchaseAction:false,productId:`gid://shopify/Product/${shopifyProductID}`}});document.dispatchEvent(event);});// Dispatch communication event for other variant selectors to coordinate\nif(filterVariants?.variantGroups!==\"all\"){const communicationEvent=new CustomEvent(\"__variant_option_selected\",{detail:{productId:`gid://shopify/Product/${shopifyProductID}`,optionName:Object.keys(filled)[0]||\"\",value:Object.values(filled)[0]||\"\",allSelectedOptions:mergedSelectedOptions,allOptionsSelected:false,isPurchaseAction:false,autoSelectFirst:autoSelectFirst,senderPriority:getIncludedOptionNames()[0]||\"\",instanceId:instanceIdRef.current}});window.dispatchEvent(communicationEvent);}},0);}}const allOptions=get(product,\"options\",[]).map(opt=>opt.name);const allOptionsSelected=allOptions.every(optName=>mergedSelectedOptions[optName]);// console.log(\"allOptionsSelected\", allOptionsSelected)\nsetTimeout(()=>{// Dispatch events for each selected option\nconst isCompleteEffective=hasUrlVariant&&allOptionsSelected;Object.entries(mergedSelectedOptions).forEach(([optionName,value])=>{const event=new CustomEvent(\"variant_option_selected\",{detail:{optionName,value,allSelectedOptions:mergedSelectedOptions,isCompleteVariant:isCompleteEffective,isPurchaseAction:false,productId:`gid://shopify/Product/${shopifyProductID}`}});document.dispatchEvent(event);// console.log(\"isCompleteEffective\", isCompleteEffective)\n});// Dispatch communication event for other variant selectors to coordinate\nif(filterVariants?.variantGroups!==\"all\"){const communicationEvent=new CustomEvent(\"__variant_option_selected\",{detail:{productId:`gid://shopify/Product/${shopifyProductID}`,optionName:Object.keys(mergedSelectedOptions)[0]||\"\",value:Object.values(mergedSelectedOptions)[0]||\"\",allSelectedOptions:mergedSelectedOptions,allOptionsSelected:allOptionsSelected,isPurchaseAction:false,autoSelectFirst:autoSelectFirst,senderPriority:getIncludedOptionNames()[0]||\"\",instanceId:instanceIdRef.current}});window.dispatchEvent(communicationEvent);// console.log(\"communicationEvent\", communicationEvent)\n}},100);// Only treat restore as authoritative when a URL variant is present.\nif(hasUrlVariant&&allOptionsSelected){// console.log(\"applyVariantFromSessionStorage - updateUrlWithVariant\", savedVariant.variantId)\nupdateUrlWithVariant(savedVariant.variantId);}setTimeout(()=>{if(__isPurchaseMode(action))return;if(!hasUrlVariant)return;const activeVariantEvent=new CustomEvent(\"product__active-variant__changed\",{detail:{...matchingVariant.node,productId:`gid://shopify/Product/${shopifyProductID}`,isCompleteVariant:allOptionsSelected}});document.dispatchEvent(activeVariantEvent);// console.log(\"Applied variant from sessionStorage - dispatched event:\", activeVariantEvent.detail)\n},100);}else if(autoSelectFirst){// console.log(\"applyVariantFromSessionStorage - autoSelectFirst\")\n// No matching variant in this product, but we have partial selections\n// If this component's group has missing selections, fill them from first available variant\nconst productOptionNames=(get(product,\"options\",[])||[]).map(opt=>opt.name);const groupOptionNames=getIncludedOptionNames();const missingInGroup=groupOptionNames.filter(name=>!filteredSelectedOptions[name]);if(missingInGroup.length>0){const firstAvailable=(get(product,\"variants.edges\",[])||[]).find(({node})=>node.availableForSale);const source=firstAvailable?.node?.selectedOptions||[];const filled={};source.forEach(opt=>{if(missingInGroup.includes(opt.name)){filled[opt.name]=opt.value;}});if(Object.keys(filled).length>0){const mergedSelectedOptions={...filteredSelectedOptions,...filled};setSelectedOptions(prev=>({...prev||{},...mergedSelectedOptions}));setTimeout(()=>{Object.entries(filled).forEach(([optionName,value])=>{const event=new CustomEvent(\"variant_option_selected\",{detail:{optionName,value,allSelectedOptions:mergedSelectedOptions,isCompleteVariant:false,isPurchaseAction:false,productId:`gid://shopify/Product/${shopifyProductID}`}});document.dispatchEvent(event);});// Dispatch communication event for other variant selectors to coordinate\nif(filterVariants?.variantGroups!==\"all\"){const communicationEvent=new CustomEvent(\"__variant_option_selected\",{detail:{productId:`gid://shopify/Product/${shopifyProductID}`,optionName:Object.keys(filled)[0]||\"\",value:Object.values(filled)[0]||\"\",allSelectedOptions:mergedSelectedOptions,allOptionsSelected:false,isPurchaseAction:false,autoSelectFirst:autoSelectFirst,senderPriority:getIncludedOptionNames()[0]||\"\",instanceId:instanceIdRef.current}});window.dispatchEvent(communicationEvent);}},0);}}}return true;}return false;},[productPage,loadVariantFromSessionStorage,updateUrlWithVariant,product,shopifyProductID]);const restoreVariantFromUrl=useCallback(()=>{// console.log(\"restoreVariantFromUrl - restoring variant from URL\")\nconst url=new URL(window.location.href);const pathname=url.pathname;// Extract potential product handle from URL pathname\nconst urlHandle=pathname.split(\"/\").filter(Boolean).pop();// console.log(\"restoreVariantFromUrl - urlHandle\", urlHandle)\nif(window.shopXtools?.products&&Array.isArray(window.shopXtools.products)&&urlHandle){const matchingProduct=window.shopXtools.products.find(({node:product})=>product.handle===urlHandle);const matchingProductId=matchingProduct?.node.id.split(\"gid://shopify/Product/\")[1];// console.log(\"matchingProductId\", matchingProductId)\n// console.log(\n//     \"restoreVariantFromUrl - matchingProduct\",\n//     matchingProduct\n// )\nif(!matchingProduct){// console.log(\n//     \"restoreVariantFromUrl - no matching product found for the shopifyProductID\"\n// )\nreturn;}const urlParams=new URLSearchParams(window.location.search);const variantIdFromUrl=urlParams.get(\"variant\");if(variantIdFromUrl){// Find the variant with this ID\nconst matchingVariant=(get(matchingProduct.node,\"variants.edges\")||[]).find(({node})=>node.id.endsWith(variantIdFromUrl)||node.id===`gid://shopify/ProductVariant/${variantIdFromUrl}`);// console.log(\"restoreVariantFromUrl - matchingVariant\", matchingVariant)\nif(!matchingVariant){// console.log(\n//     \"restoreVariantFromUrl - no matching variant found for the product\"\n// )\nreturn;}if(matchingVariant){// Build selected options from variant\nconst matchingVariantId=matchingVariant.node.id.split(\"gid://shopify/ProductVariant/\")[1];const urlOptions={};matchingVariant.node.selectedOptions.forEach(option=>{urlOptions[option.name]=option.value;});//console.log(\"restoreVariantFromUrl - urlOptions\", urlOptions)\n// Set selected options in state\nsetSelectedOptions(urlOptions);// Optionally, dispatch events here if needed\nconst allOptions=get(matchingProduct,\"options\",[]).map(opt=>opt.name);// console.log(\"Restore URL: allOptions\", allOptions)\nconst allOptionsSelected=allOptions.every(optName=>urlOptions[optName]);// console.log(\n//     \"Restore URL: allOptionsSelected\", allOptionsSelected\n// )\nif(allOptionsSelected){// Save to sessionStorage if not already present\n// saveVariantToSessionStorage(\n//     urlOptions,\n//     matchingVariant.node.id,\n//     false\n// )\nconst savedVariantKey=`fc_active_variant_${matchingProductId}`;if(sessionStorage.getItem(savedVariantKey))return;const variantData={urlOptions,matchingVariantId,timestamp:Date.now(),isPartial:false};sessionStorage.setItem(savedVariantKey,JSON.stringify(variantData));//console.log(\"Saved variant to sessionStorage:\", savedVariantKey, variantData)\n//console.log(\"Restore URL:Saved variant to sessionStorage from URL\", urlOptions)\n// Also dispatch a single event for the active variant\nsetTimeout(()=>{if(__isPurchaseMode(action))return;const activeVariantEvent=new CustomEvent(\"product__active-variant__changed\",{detail:{...matchingVariant.node,productId:`gid://shopify/Product/${shopifyProductID}`,isCompleteVariant:allOptionsSelected}});document.dispatchEvent(activeVariantEvent);// console.log(\n//     \"Restore URL: activeVariantEvent\",\n//     activeVariantEvent.detail\n// )\n},100);}}}}},[product]);// Handle page leave cleanup\n// Refs to access current values in stable handler\nconst productPageRef=useRef(productPage);const productRef=useRef(product);const restoreVariantFromUrlRef=useRef(restoreVariantFromUrl);// Update refs when values change\nuseEffect(()=>{productPageRef.current=productPage;productRef.current=product;restoreVariantFromUrlRef.current=restoreVariantFromUrl;},[productPage,product,restoreVariantFromUrl]);// Comprehensive navigation handler - handles ALL scenarios\nconst handlePopState=useCallback(event=>{const urlParams=new URLSearchParams(window.location.search);const hasVariantInUrl=urlParams.has(\"variant\");const currentPath=window.location.pathname;const urlHandle=currentPath.split(\"/\").filter(Boolean).pop();// Determine if current URL is a product page\nconst isUrlProductPage=window.shopXtools?.products&&Array.isArray(window.shopXtools.products)?window.shopXtools.products.some(({node})=>node.handle===urlHandle):false;// Scenario 1: We're on a product page component AND URL is a product page AND has variant\nif(productPageRef.current&&isUrlProductPage&&hasVariantInUrl){// console.log(\"Scenario 1: We're on a product page component AND URL is a product page AND has variant\")\nevent.stopImmediatePropagation();if(productRef.current){restoreVariantFromUrlRef.current();}return;}// WORKS: Scenario 2: We're on a product page component BUT URL is NOT a product page (forward navigation)\nif(productPageRef.current&&!isUrlProductPage){// console.log(\"Scenario 2: We're on a product page component BUT URL is NOT a product page (forward navigation)\")\nevent.stopImmediatePropagation();window.location.reload();return;}// WORKS: Scenario 3: We're NOT on a product page component BUT URL has variant (back navigation)\nif(!productPageRef.current&&hasVariantInUrl){// console.log(\"Scenario 3: We're NOT on a product page component BUT URL has variant (back navigation)\")\nevent.stopImmediatePropagation();window.location.reload();return;}// WORKS: Scenario 4: We're NOT on a product page component AND URL is a product page but no variant\n// This is navigation TO a product page - let Framer handle it naturally\n// Stop propagation to prevent CatalogDisplay from interfering\nif(!productPageRef.current&&isUrlProductPage&&!hasVariantInUrl){// Normal navigation - stop propagation so CatalogDisplay doesn't interfere\n// console.log(\"Normal navigation - stopping propagation: Scenario 4\")\nevent.stopImmediatePropagation();return;}// Scenario 5: We're on a product page component AND URL is a product page but no variant\n// This could be initial load or variant cleared - let Framer handle\nif(productPageRef.current&&isUrlProductPage&&!hasVariantInUrl){// Normal navigation - do nothing, let Framer handle\n// console.log(\"Normal navigation - do nothing, let Framer handle: Scenario 5\")\nevent.stopImmediatePropagation();return;}},[shopifyProductID]);// Priority navigation handling - takes precedence over global handlers\nuseEffect(()=>{if(typeof window===\"undefined\")return;// Add with capture=true to run before other handlers\nwindow.addEventListener(\"popstate\",handlePopState,true);return()=>{window.removeEventListener(\"popstate\",handlePopState,true);};},[handlePopState,shopifyProductID]);// Apply variant from session storage when component mounts on product page\nuseEffect(()=>{// console.log(\"UseEffect: productPage, product\", productPage, product)\nif(productPage&&!isCanvas&&typeof window!==\"undefined\"&&product){// Small delay to ensure URL is stable and product data is loaded\nconst timer=setTimeout(()=>{const isAppliedFromSessionStorage=applyVariantFromSessionStorage();appliedFromStorageRef.current=!!isAppliedFromSessionStorage;// console.log(\"Applied and saved variant from sessionStorage\", isAppliedFromSessionStorage)\nif(isAppliedFromSessionStorage)return;if(!isAppliedFromSessionStorage){// console.log(\"No variant found in sessionStorage, restoring from URL\")\n// 1. Check for variant in URL\nconst urlParams=new URLSearchParams(window.location.search);const variantIdFromUrl=urlParams.get(\"variant\");if(variantIdFromUrl){// Find the variant with this ID\nconst matchingVariant=(get(product,\"variants.edges\")||[]).find(({node})=>node.id.endsWith(variantIdFromUrl)||node.id===`gid://shopify/ProductVariant/${variantIdFromUrl}`);if(matchingVariant){// Build selected options from variant\nconst urlOptions={};matchingVariant.node.selectedOptions.forEach(option=>{urlOptions[option.name]=option.value;});// Set selected options in state\nsetSelectedOptions(urlOptions);// Optionally, dispatch events here if needed\nconst allOptions=get(product,\"options\",[]).map(opt=>opt.name);// console.log(\"Restore URL: allOptions\", allOptions)\nconst allOptionsSelected=allOptions.every(optName=>urlOptions[optName]);// console.log(\n//     \"Restore URL: allOptionsSelected\", allOptionsSelected\n// )\nif(allOptionsSelected){// Save to sessionStorage if not already present\nsaveVariantToSessionStorage(urlOptions,matchingVariant.node.id,false);//console.log(\"Restore URL:Saved variant to sessionStorage from URL\", urlOptions)\n// Also dispatch a single event for the active variant\nsetTimeout(()=>{const activeVariantEvent=new CustomEvent(\"product__active-variant__changed\",{detail:{...matchingVariant.node,productId:`gid://shopify/Product/${shopifyProductID}`,isCompleteVariant:allOptionsSelected}});document.dispatchEvent(activeVariantEvent);// console.log(\n//     \"Restore URL: activeVariantEvent\",\n//     activeVariantEvent.detail\n// )\n},100);}}}}},100);return()=>clearTimeout(timer);}},[productPage,applyVariantFromSessionStorage,product,shopifyProductID]);// Add global styles for hover effects and accessibility\nuseEffect(()=>{// Create style element if it doesn't exist\nlet styleEl=document.getElementById(\"fc-product-variants-styles\");if(!styleEl){styleEl=document.createElement(\"style\");styleEl.id=\"fc-product-variants-styles\";document.head.appendChild(styleEl);}styleEl.innerHTML=`\n            /* Base z-index for all containers */\n            .variant-button-container, .variant-dropdown-container {\n                z-index: 0;\n                position: relative;\n            }\n            \n            /* Increase z-index on hover */\n            .variant-button-container:hover, .variant-dropdown-container:hover {\n                z-index: 2 !important;\n            }\n            \n            /* Ensure dropdown inner elements inherit hover state */\n            .variant-dropdown-container:hover .dropdown-inner {\n                z-index: 2 !important;\n                position: relative;\n            }\n            \n            /* Ensure dropdown select elements have proper z-index */\n            .dropdown-inner {\n                position: relative;\n                z-index: 0;\n            }\n\n            /* Focus outline via CSS - instant, no React delay */\n            .dropdown-inner {\n                outline: var(--focus-outline-width, 2px) solid transparent;\n                outline-offset: var(--focus-outline-offset, 2px);\n                transition: outline-color 0.15s ease-in-out;\n            }\n            .dropdown-inner:focus-within {\n                outline-color: var(--focus-outline-color, var(--hover-border-color, #000));\n                border-radius: var(--focus-outline-radius, 0px);\n                transition: outline-color 0.15s ease-in-out;\n            }\n\n            /* Remove ALL default focus/active styling from select */\n            .dropdown-inner select,\n            .dropdown-inner select:focus,\n            .dropdown-inner select:focus-visible,\n            .dropdown-inner select:focus-within,\n            .dropdown-inner select:active,\n            .dropdown-inner select:-moz-focusring {\n                outline: none !important;\n                outline-offset: 0 !important;\n                border: none !important;\n                box-shadow: none !important;\n                -webkit-tap-highlight-color: transparent !important;\n                -webkit-appearance: none !important;\n                -moz-appearance: none !important;\n            }\n\n            /* Firefox inner focus ring */\n            .dropdown-inner select::-moz-focus-inner {\n                border: 0 !important;\n                outline: 0 !important;\n            }\n\n            /* Force margin-right for horizontal layout */\n            .variant-dropdown-container[data-horizontal=\"true\"]:not([data-last=\"true\"]) {\n                margin-right: -1px !important;\n            }\n            \n            /* Direct class for horizontal edge-to-edge */\n            .horizontal-edge-to-edge {\n                margin-right: -1px !important;\n            }\n            \n            /* Focus styles for accessibility - buttons only, dropdown uses inline styles */\n            .variant-button-container button:focus-visible {\n                outline: 2px solid #0078D4 !important;\n                outline-offset: 2px !important;\n            }\n            \n            /* High contrast mode support */\n            @media (forced-colors: active) {\n                .variant-button-container button:focus-visible {\n                    outline: 2px solid CanvasText !important;\n                }\n            }\n\n            /* Swatch styles */\n            .variant-swatch-container {\n                position: relative;\n            }\n            \n            .variant-swatch-container:hover {\n                z-index: 10 !important;\n            }\n            \n            .variant-swatch-container:hover .swatch-tooltip {\n                opacity: 1;\n                visibility: visible;\n            }\n            \n            .variant-swatch-container button:focus-visible {\n                outline: 2px solid #0078D4 !important;\n                outline-offset: 2px !important;\n            }\n            \n            /* High contrast mode support */\n            @media (forced-colors: active) {\n                .variant-swatch-container button:focus-visible {\n                    outline: 2px solid CanvasText !important;\n                }\n            }\n        `;},[]);// Force autoSelectFirst to false if action is purchase\nif(__isPurchaseMode(action)){autoSelectFirst=false;}// Dispatch the autoSelectFirst flag on load (scoped with product GID)\nuseEffect(()=>{if(isCanvas)return;const productGid=`gid://shopify/Product/${shopifyProductID}`;const timeoutId=setTimeout(()=>{const hasUrlVariant=typeof window!==\"undefined\"&&new URLSearchParams(window.location.search).has(\"variant\");// Force autoSelectFirst to false if action is purchase\nif(action===\"Add to Cart\"||action===\"Buy Now\"){const autoSelectEvent=new CustomEvent(\"auto_select_first_flag\",{detail:{autoSelectFirst:false,shopifyProductID:productGid,instanceId:instanceIdRef.current}});document.dispatchEvent(autoSelectEvent);//console.log(\"Purchase: dispatching autoSelectFirst as\", { autoSelectFirst: false })\n}else{// On PDP without a URL variant, always broadcast false to prevent eager full selection\nconst effectiveAuto=productPage&&!hasUrlVariant?false:autoSelectFirst;const autoSelectEvent=new CustomEvent(\"auto_select_first_flag\",{detail:{autoSelectFirst:effectiveAuto,shopifyProductID:productGid,instanceId:instanceIdRef.current}});document.dispatchEvent(autoSelectEvent);// console.log(\"Dispatching autoSelectFirst as\", { autoSelectFirst })\n}},100)// Adjust the delay as needed\n;return()=>clearTimeout(timeoutId)// Cleanup timeout on unmount\n;},[autoSelectFirst,action,isCanvas,shopifyProductID]);useEffect(()=>{// Reset autoSelectRef when product changes\n// autoSelectRef.current = false\n// setSelectedOptions({})\n// Create style element if it doesn't exist\nlet styleEl=document.getElementById(\"fc-product-variants-styles\");if(!styleEl){styleEl=document.createElement(\"style\");styleEl.id=\"fc-product-variants-styles\";document.head.appendChild(styleEl);}styleEl.innerHTML=`\n            /* Base z-index for all containers */\n            .variant-dropdown-container {\n                position: relative;\n                z-index: 1;\n            }\n\n            /* Increase z-index when focused */\n            .variant-dropdown-container:focus-within {\n                z-index: 10;\n            }\n\n            /* Remove ALL default focus/active styling from select */\n            .dropdown-inner select,\n            .dropdown-inner select:focus,\n            .dropdown-inner select:focus-visible,\n            .dropdown-inner select:focus-within,\n            .dropdown-inner select:active,\n            .dropdown-inner select:-moz-focusring {\n                outline: none !important;\n                outline-offset: 0 !important;\n                border: none !important;\n                box-shadow: none !important;\n                -webkit-tap-highlight-color: transparent !important;\n                -webkit-appearance: none !important;\n                -moz-appearance: none !important;\n            }\n\n            /* Firefox inner focus ring */\n            .dropdown-inner select::-moz-focus-inner {\n                border: 0 !important;\n                outline: 0 !important;\n            }\n\n            /* Focus outline on dropdown wrapper via CSS variable */\n            .dropdown-inner {\n                outline: var(--focus-outline-width, 2px) solid transparent;\n                outline-offset: var(--focus-outline-offset, 2px);\n                transition: outline-color 0.15s ease-in-out;\n            }\n            .dropdown-inner:focus-within {\n                outline-color: var(--focus-outline-color, var(--hover-border-color, #000));\n                border-radius: var(--focus-outline-radius, 0px);\n                transition: outline-color 0.15s ease-in-out;\n            }\n\n            /* Special styling for edge-to-edge layout */\n            .horizontal-edge-to-edge + .horizontal-edge-to-edge .variant-dropdown {\n                border-left: none !important;\n            }\n\n            .fc-dropdown-focus {\n                outline: 2px solid CanvasText !important;\n                outline-offset: 2px !important;\n            }\n\n            .fc-dropdown-list-item:focus {\n                outline: 2px solid CanvasText !important;\n                outline-offset: -2px !important;\n            }\n        `;// If we're in canvas mode and have variants prop, use that data\nif(isCanvas&&variants){const{options,variants:parsedVariants,productId}=parseOptionsAndVariants(variants);// Create mock product with the parsed data (for canvas preview only)\nconst mockProduct={id:productId||\"mock-product\",options:options.map(opt=>({name:opt.name,values:opt.values})),variants:{edges:parsedVariants.map((variant,index)=>{// Check if preview mode is enabled and this is the second variant of any option group\nlet availableForSale=true;if(props.buttonConfigs?.outOfStock?.preview){// For each option, check if this variant has the second value\noptions.forEach((opt,optIndex)=>{if(opt.values.length>1&&variant.combination[optIndex]===opt.values[1]){availableForSale=false;}});}return{node:{id:variant.id.startsWith(\"gid://\")?variant.id:`gid://shopify/ProductVariant/${variant.id}`,availableForSale:availableForSale,quantityAvailable:availableForSale?50:0,selectedOptions:options.map((opt,index)=>({name:opt.name,value:variant.combination[index]})),price:{amount:\"19.99\",currencyCode:\"USD\"}}};})},images:{edges:Array(4).fill(0).map((_,i)=>({node:{id:`image-${i+1}`}}))},priceRange:{minVariantPrice:{amount:\"19.99\",currencyCode:\"USD\"}}};setProduct(mockProduct);return;}// If we're in canvas mode but no variants prop, use default mock data\nif(isCanvas){const mockProduct={id:\"mock-product\",variants:{edges:[// XS variants\n{node:{id:\"mock-variant-1\",availableForSale:selectOutOfStock||true,quantityAvailable:50,selectedOptions:[{name:\"Size\",value:\"XS\"},{name:\"Color\",value:\"Green\"}],price:{amount:\"19.99\",currencyCode:\"USD\"}}},{node:{id:\"mock-variant-2\",availableForSale:selectOutOfStock||!props.buttonConfigs?.outOfStock?.preview,selectedOptions:[{name:\"Size\",value:\"XS\"},{name:\"Color\",value:\"Blue\"}],price:{amount:\"19.99\",currencyCode:\"USD\"}}},{node:{id:\"mock-variant-3\",availableForSale:selectOutOfStock||true,selectedOptions:[{name:\"Size\",value:\"XS\"},{name:\"Color\",value:\"Pink\"}],price:{amount:\"19.99\",currencyCode:\"USD\"}}},{node:{id:\"mock-variant-4\",availableForSale:selectOutOfStock||true,selectedOptions:[{name:\"Size\",value:\"XS\"},{name:\"Color\",value:\"Black\"}],price:{amount:\"19.99\",currencyCode:\"USD\"}}},// S variants (disabled when preview ON - S is 2nd size)\n{node:{id:\"mock-variant-5\",availableForSale:selectOutOfStock||!props.buttonConfigs?.outOfStock?.preview,selectedOptions:[{name:\"Size\",value:\"S\"},{name:\"Color\",value:\"Green\"}],price:{amount:\"19.99\",currencyCode:\"USD\"}}},{node:{id:\"mock-variant-6\",availableForSale:selectOutOfStock||!props.buttonConfigs?.outOfStock?.preview,selectedOptions:[{name:\"Size\",value:\"S\"},{name:\"Color\",value:\"Blue\"}],price:{amount:\"19.99\",currencyCode:\"USD\"}}},{node:{id:\"mock-variant-7\",availableForSale:selectOutOfStock||!props.buttonConfigs?.outOfStock?.preview,selectedOptions:[{name:\"Size\",value:\"S\"},{name:\"Color\",value:\"Pink\"}],price:{amount:\"19.99\",currencyCode:\"USD\"}}},{node:{id:\"mock-variant-8\",availableForSale:selectOutOfStock||!props.buttonConfigs?.outOfStock?.preview,selectedOptions:[{name:\"Size\",value:\"S\"},{name:\"Color\",value:\"Black\"}],price:{amount:\"19.99\",currencyCode:\"USD\"}}},// M variants\n{node:{id:\"mock-variant-9\",availableForSale:selectOutOfStock||true,selectedOptions:[{name:\"Size\",value:\"M\"},{name:\"Color\",value:\"Green\"}],price:{amount:\"19.99\",currencyCode:\"USD\"}}},{node:{id:\"mock-variant-10\",availableForSale:selectOutOfStock||!props.buttonConfigs?.outOfStock?.preview,selectedOptions:[{name:\"Size\",value:\"M\"},{name:\"Color\",value:\"Blue\"}],price:{amount:\"19.99\",currencyCode:\"USD\"}}},{node:{id:\"mock-variant-11\",availableForSale:selectOutOfStock||true,selectedOptions:[{name:\"Size\",value:\"M\"},{name:\"Color\",value:\"Pink\"}],price:{amount:\"19.99\",currencyCode:\"USD\"}}},{node:{id:\"mock-variant-12\",availableForSale:selectOutOfStock||true,selectedOptions:[{name:\"Size\",value:\"M\"},{name:\"Color\",value:\"Black\"}],price:{amount:\"19.99\",currencyCode:\"USD\"}}},// L variants\n{node:{id:\"mock-variant-13\",availableForSale:selectOutOfStock||true,selectedOptions:[{name:\"Size\",value:\"L\"},{name:\"Color\",value:\"Green\"}],price:{amount:\"19.99\",currencyCode:\"USD\"}}},{node:{id:\"mock-variant-14\",availableForSale:selectOutOfStock||!props.buttonConfigs?.outOfStock?.preview,selectedOptions:[{name:\"Size\",value:\"L\"},{name:\"Color\",value:\"Blue\"}],price:{amount:\"19.99\",currencyCode:\"USD\"}}},{node:{id:\"mock-variant-15\",availableForSale:selectOutOfStock||true,selectedOptions:[{name:\"Size\",value:\"L\"},{name:\"Color\",value:\"Pink\"}],price:{amount:\"19.99\",currencyCode:\"USD\"}}},{node:{id:\"mock-variant-16\",availableForSale:selectOutOfStock||true,selectedOptions:[{name:\"Size\",value:\"L\"},{name:\"Color\",value:\"Black\"}],price:{amount:\"19.99\",currencyCode:\"USD\"}}},// XL variants\n{node:{id:\"mock-variant-17\",availableForSale:selectOutOfStock||true,selectedOptions:[{name:\"Size\",value:\"XL\"},{name:\"Color\",value:\"Green\"}],price:{amount:\"19.99\",currencyCode:\"USD\"}}},{node:{id:\"mock-variant-18\",availableForSale:selectOutOfStock||!props.buttonConfigs?.outOfStock?.preview,selectedOptions:[{name:\"Size\",value:\"XL\"},{name:\"Color\",value:\"Blue\"}],price:{amount:\"19.99\",currencyCode:\"USD\"}}},{node:{id:\"mock-variant-19\",availableForSale:selectOutOfStock||true,selectedOptions:[{name:\"Size\",value:\"XL\"},{name:\"Color\",value:\"Pink\"}],price:{amount:\"19.99\",currencyCode:\"USD\"}}},{node:{id:\"mock-variant-20\",availableForSale:selectOutOfStock||true,selectedOptions:[{name:\"Size\",value:\"XL\"},{name:\"Color\",value:\"Black\"}],price:{amount:\"19.99\",currencyCode:\"USD\"}}}]},options:[{name:\"Size\",values:[\"XS\",\"S\",\"M\",\"L\",\"XL\"]},{name:\"Color\",values:[\"Green\",\"Blue\",\"Pink\",\"Black\"]}],images:{edges:Array(4).fill(0).map((_,i)=>({node:{id:`image-${i+1}`}}))},priceRange:{minVariantPrice:{amount:\"19.99\",currencyCode:\"USD\"}}};setProduct(mockProduct);return;}// If we're not in canvas mode, use the standard product data loading\nif(!isCanvas){if(window[\"shopXtools\"]&&Array.isArray(window[\"shopXtools\"].products)){const _matchingProduct=window[\"shopXtools\"].products.find(({node:_product})=>_product.id===`gid://shopify/Product/${shopifyProductID}`);if(_matchingProduct){setProduct(_matchingProduct.node);}}// ALWAYS set up event listener to receive updates (including priority products)\nconst handleProductsReady=e=>{// console.log('Variant Selector received the product', e);\nif(Array.isArray(e.detail.products)){const _matchingProduct=e.detail.products.find(({node:_product})=>_product.id===`gid://shopify/Product/${shopifyProductID}`);if(_matchingProduct){setProduct(_matchingProduct.node);}}};document.addEventListener(\"data__products-ready\",handleProductsReady);return()=>{document.removeEventListener(\"data__products-ready\",handleProductsReady);};}document.addEventListener(\"product__variants__validate\",()=>{setShouldValidate(true);});return()=>{document.removeEventListener(\"product__variants__validate\",()=>setShouldValidate(true));};},[shopifyProductID,variants,images.imageChange,props.variantImageIds,props.buttonConfigs?.outOfStock?.preview]);// Handle URL variants when product data becomes available\nuseEffect(()=>{if(!productPage||!product||isCanvas||__isPurchaseMode(action))return;const urlParams=new URLSearchParams(window.location.search);const variantIdFromUrl=urlParams.get(\"variant\");if(variantIdFromUrl){// Debug logging to help troubleshoot URL variant processing\n// console.log(`[FC_ProductVariants] Processing URL variant: ${variantIdFromUrl}`, {\n//     productId: shopifyProductID,\n//     productOptions: get(product, \"options\", []).map(opt => opt.name),\n//     variantCount: get(product, \"variants.edges\", []).length,\n//     filterConfig: filterVariants\n// })\n// Find the variant with this ID - use exact matching to avoid partial ID conflicts\nconst matchingVariant=get(product,\"variants.edges\",[]).find(({node})=>{// Try exact full ID match first\nif(node.id===`gid://shopify/ProductVariant/${variantIdFromUrl}`){return true;}// Fallback: extract just the numeric ID from the full Shopify ID and compare\nconst nodeIdNumber=node.id.split(\"/\").pop();return nodeIdNumber===variantIdFromUrl;});// Debug logging to help troubleshoot variant matching\nif(!matchingVariant){console.warn(`[FC_ProductVariants] URL variant ${variantIdFromUrl} not found in product variants:`,{urlVariantId:variantIdFromUrl,availableVariantIds:get(product,\"variants.edges\",[]).map(({node})=>({fullId:node.id,numericId:node.id.split(\"/\").pop()})),productId:shopifyProductID});}if(matchingVariant){const urlOptions={};matchingVariant.node.selectedOptions.forEach(option=>{urlOptions[option.name]=option.value;});setSelectedOptions(urlOptions);// Set autoSelectRef if auto-select is enabled\nif(autoSelectFirst){autoSelectRef.current=true;}// Dispatch events for the URL variant\nconst allOptions=get(product,\"options\",[]).map(opt=>opt.name);const allOptionsSelected=allOptions.every(optName=>urlOptions[optName]);setTimeout(()=>{// Dispatch events for each selected option\nObject.entries(urlOptions).forEach(([optionName,value])=>{const event=new CustomEvent(\"variant_option_selected\",{detail:{optionName,value,allSelectedOptions:urlOptions,isCompleteVariant:allOptionsSelected,isPurchaseAction:false,productId:`gid://shopify/Product/${shopifyProductID}`}});document.dispatchEvent(event);});// Dispatch communication event for other variant selectors to coordinate\nif(filterVariants?.variantGroups!==\"all\"){const communicationEvent=new CustomEvent(\"__variant_option_selected\",{detail:{productId:`gid://shopify/Product/${shopifyProductID}`,optionName:Object.keys(urlOptions)[0]||\"\",value:Object.values(urlOptions)[0]||\"\",allSelectedOptions:urlOptions,isPurchaseAction:false,autoSelectFirst:autoSelectFirst,senderPriority:getIncludedOptionNames()[0]||\"\",instanceId:instanceIdRef.current}});window.dispatchEvent(communicationEvent);}// Dispatch active variant event if complete - RESPECT the URL variant even if out of stock\nif(allOptionsSelected){const activeVariantEvent=new CustomEvent(\"product__active-variant__changed\",{detail:{...matchingVariant.node,productId:`gid://shopify/Product/${shopifyProductID}`,isCompleteVariant:allOptionsSelected}});document.dispatchEvent(activeVariantEvent);// console.log(\"active variant event sent\", activeVariantEvent)\n}},100);}}},[product,productPage,shopifyProductID,isCanvas,action,autoSelectFirst,filterVariants?.variantGroups,filterVariants?.variantTitles]);// Retry mechanism for URL variants to handle race conditions\nuseEffect(()=>{if(!productPage||isCanvas||__isPurchaseMode(action))return;const urlParams=new URLSearchParams(window.location.search);const variantIdFromUrl=urlParams.get(\"variant\");if(variantIdFromUrl&&!product){// If we have a URL variant but no product data yet, retry after a delay\nconst retryTimer=setTimeout(()=>{if(window.location.search.includes(`variant=${variantIdFromUrl}`)){// Force a re-render to trigger the URL variant effect again\nwindow.dispatchEvent(new Event(\"resize\"));}},500);return()=>clearTimeout(retryTimer);}},[product,productPage,shopifyProductID,isCanvas,action]);// On PDP without a URL variant, clear only full selections from storage; keep partials so PLP→PDP can persist\nuseEffect(()=>{if(!productPage)return;if(__isPurchaseMode(action))return;if(typeof window===\"undefined\")return;const urlParams=new URLSearchParams(window.location.search);if(!urlParams.get(\"variant\")){try{const prefixLegacy=`fc_active_variant_${shopifyProductID}`;const prefixScoped=`fc_active_variant_${shopifyProductID}_`;for(let i=sessionStorage.length-1;i>=0;i--){const k=sessionStorage.key(i);if(!k)continue;if(k===prefixLegacy||k.startsWith(prefixScoped)){try{const parsed=JSON.parse(sessionStorage.getItem(k)||\"null\");// Remove only if it represents a full selection\nif(parsed&&parsed.isPartial===false){sessionStorage.removeItem(k);}}catch{// If unreadable, remove to be safe\nsessionStorage.removeItem(k);}}}// Do not clear local selection here; allow hybrid restore of partials\n}catch{}}},[productPage,action,shopifyProductID]);// useEffect to listen for variant selection via selected images\nuseEffect(()=>{if(!product)return;// Listen for image variant selection events\nconst handleImageVariantSelected=e=>{if(!e.detail)return;const variantId=e.detail.variant_id;if(!variantId)return;// console.log(\"Mapping variant to image\", e.detail)\n// Find the variant with this ID\nconst variant=(get(product,\"variants.edges\")||[]).find(({node})=>node.id===variantId);if(variant){// console.log(\"variant\", variant)\n// Determine which option this image should control (prefer configured image titles, then color titles, else first option)\nconst imageOptionNames=[...props.variantImageTitles||[],...props.imageTitles||[],...props.colorTitles||[\"Color\",\"Colour\"]].map(s=>String(s).toLowerCase().trim());// console.log(\"imageOptionNames\", imageOptionNames)\nconst targetOpt=(variant.node.selectedOptions||[]).find(opt=>imageOptionNames.includes(String(opt?.name||\"\").toLowerCase().trim()))||(variant.node.selectedOptions||[])[0];// console.log(\"targetOpt\", targetOpt)\nif(targetOpt?.name&&targetOpt?.value){// Use the central selection flow so partial selection is respected\ndispatchOptionSelectedEvent(targetOpt.name,targetOpt.value);}}};document.addEventListener(\"image__variant__selected\",handleImageVariantSelected);const handleImageNumberSelected=e=>{// console.log(\"Mapping image number to variant\", e.detail)\n// Only process image clicks if imageChange is enabled\nif(!images.imageChange||!e.detail?.imageNumber||!props.variantImageIds){// console.log(\n//     \"[Variants] handleImageNumberSelected: no imageChange or imageNumber or variantImageIds\"\n// )\nreturn;}// Parse the variant-to-image mapping\nconst mapping=new Map;let match;while((match=IMAGE_MAPPING_REGEX.exec(props.variantImageIds))!==null){const[,imageNumber,variantId]=match;// Store mapping both ways for easy lookup\nmapping.set(imageNumber,variantId);mapping.set(variantId,imageNumber);}// Reset regex index for next use\nIMAGE_MAPPING_REGEX.lastIndex=0;// Find the variant ID for this image number\nconst variantId=mapping.get(String(e.detail.imageNumber));// console.log(\"variantId\", variantId)\nif(!variantId)return;// Find the variant with this ID\nconst variant=(get(product,\"variants.edges\")||[]).find(({node})=>node.id.endsWith(variantId));// console.log(\"variant\", variant)\nif(variant){// console.log(\"variant\", variant)\n// console.log(\"autoSelectFirst\", autoSelectFirst)\nif(variant.node.selectedOptions){//autoSelectFirst &&\nconst allSelectedOptions={};for(const option of variant.node.selectedOptions||[]){if(option.name&&option.value){allSelectedOptions[option.name]=option.value;}}//Dispatch individual option selected event\nconst communicationEvent=new CustomEvent(\"__variant_option_selected\",{detail:{productId:`gid://shopify/Product/${shopifyProductID}`,// optionName: name,\n// value,\nallSelectedOptions,//allOptionsSelected: allOptionsSelected,\nisPurchaseAction:false,autoSelectFirst:autoSelectFirst,senderPriority:getIncludedOptionNames()[0]||\"\",instanceId:instanceIdRef.current,twoWayGallery:true}});window.dispatchEvent(communicationEvent);// console.log(\n//     \"communicationEvent in two way gallery logic\",\n//     communicationEvent.detail\n// )\n// return\n}// // Determine which option this image should control (prefer configured image titles, then color titles, else first option)\n// const imageOptionNames = [\n//     ...(props.variantImageTitles || []),\n//     ...(props.imageTitles || []),\n//     ...(props.colorTitles || [\"Color\", \"Colour\"]),\n// ].map((s) => String(s).toLowerCase().trim())\n// const targetOpt =\n//     (variant.node.selectedOptions || []).find((opt) =>\n//         imageOptionNames.includes(\n//             String(opt?.name || \"\")\n//                 .toLowerCase()\n//                 .trim()\n//         )\n//     ) || (variant.node.selectedOptions || [])[0]\n// if (targetOpt?.name && targetOpt?.value) {\n//     // console.log(\"targetOpt?.name && targetOpt?.value\", targetOpt?.name, targetOpt?.value)\n//     // Use the central selection flow so partial selection is respected\n//     dispatchOptionSelectedEvent(targetOpt.name, targetOpt.value)\n// }\n}};document.addEventListener(\"image__variant__selected\",handleImageVariantSelected);document.addEventListener(\"image__number__selected\",handleImageNumberSelected);return()=>{document.removeEventListener(\"image__variant__selected\",handleImageVariantSelected);document.removeEventListener(\"image__number__selected\",handleImageNumberSelected);};},[product]);// Canvas-only: when toggling from Purchase to Update Active with Auto Select enabled,\n// clear prior selection and product-scoped cache so auto-select can re-run deterministically\nuseEffect(()=>{if(!isCanvas)return;if(action===\"Update Active\"&&autoSelectFirst){try{const key=`fc_active_variant_${shopifyProductID}`;sessionStorage.removeItem(key);}catch{}setSelectedOptions({});autoSelectRef.current=false;}},[isCanvas,action,autoSelectFirst,shopifyProductID]);// Browser and Canvas: when switching to Update Active or enabling Auto Select 1st,\n// clear product-scoped cache and local selection so auto-select can re-run\nuseEffect(()=>{const switchedToUpdateActive=prevActionRef.current!==\"Update Active\"&&action===\"Update Active\";const enabledAutoSelect=!prevAutoSelectFirstRef.current&&!!autoSelectFirst;if(switchedToUpdateActive||enabledAutoSelect){try{const key=`fc_active_variant_${shopifyProductID}`;sessionStorage.removeItem(key);}catch{}setSelectedOptions({});autoSelectRef.current=false;}prevActionRef.current=action;prevAutoSelectFirstRef.current=!!autoSelectFirst;},[action,autoSelectFirst,shopifyProductID]);// Ref: Reset options when purchase/checkout click is completed\n// const isResettingRef = useRef(false)\nuseEffect(()=>{if(autoSelectFirst&&product&&!autoSelectRef.current&&Object.keys(selectedOptions).length===0){// Skip auto-select if there's already a URL variant - respect user's explicit choice\n// const urlParams = new URLSearchParams(window.location.search)\n// if (urlParams.get(\"variant\") && !isCanvas) {\n//     return\n// }\nconst variants=get(product,\"variants.edges\",[]);// Find first available variant\nconst firstAvailableVariant=variants.find(({node})=>node.availableForSale);const variantKey=`fc_active_variant_${shopifyProductID}`;const savedVariant=isCanvas?null:sessionStorage.getItem(variantKey);// console.log(\"Saved variant to sessionStorage\", savedVariant, variantKey)\nlet initialOptions={};let parsedVariant=null;let isPartial=false;if(!savedVariant&&productPage&&!isCanvas&&product){// console.log(\"No saved variant, parsing url\")\n// console.log(\"product in autoSelectFirst\", product)\nconst urlParams=new URLSearchParams(window.location.search);const variantIdFromUrl=urlParams.get(\"variant\");// console.log(\"variantIdFromUrl\", variantIdFromUrl)\nparsedVariant=get(product,\"variants.edges\",[]).find(({node})=>node.id===`gid://shopify/ProductVariant/${variantIdFromUrl}`);// console.log(\"parsedVariant, no saved\", parsedVariant)\nif(parsedVariant){parsedVariant.node.selectedOptions.forEach(option=>{initialOptions[option.name]=option.value;});setSelectedOptions(initialOptions);// console.log(\"parsedVariant in autoSelectFirst: initialOptions\", initialOptions)\n}autoSelectRef.current=true;const allOptions=get(product,\"options\",[]).map(opt=>opt.name);const allOptionsSelected=allOptions.every(optName=>initialOptions[optName]);// console.log(\n//     \"savedVariant : allOptionsSelected\",\n//     allOptionsSelected\n// )\n// Add a small delay to ensure components are ready\nsetTimeout(()=>{// Dispatch events for each selected option\nObject.entries(initialOptions).forEach(([optionName,value])=>{const event=new CustomEvent(\"variant_option_selected\",{detail:{optionName,value,allSelectedOptions:initialOptions,isCompleteVariant:allOptionsSelected,isPurchaseAction:false,productId:`gid://shopify/Product/${shopifyProductID}`}});document.dispatchEvent(event);// console.log(\n//     \"variant_option_selected event: savedVariant\",\n//     event.detail\n// )\n});if(allOptionsSelected&&!isPartial){// updateUrlWithVariant(fullVariant.node.id)\n// console.log(\"Updating url for autoSelectFirst\")\nsetTimeout(()=>{// Also dispatch a single event for the active variant\nif(action!==\"Add to Cart\"&&action!==\"Buy Now\"){const activeVariantEvent=new CustomEvent(\"product__active-variant__changed\",{detail:{...parsedVariant?.node,productId:`gid://shopify/Product/${shopifyProductID}`,isCompleteVariant:allOptionsSelected}});document.dispatchEvent(activeVariantEvent);// console.log(\n//     \"activeVariantEvent in autoSelectFirst\",\n//     activeVariantEvent.detail\n// )\n}},100);// End of initialization\nisInitializingRef.current=false;}},100);}if(savedVariant&&productPage&&!isCanvas&&!appliedFromStorageRef.current){// console.log(\"Saved variant exists, restoring\")\nconst savedVariantId=JSON.parse(savedVariant).variantId;//console.log(\"savedVariantId\", savedVariantId)\nconst variantId=savedVariantId.split(\"gid://shopify/ProductVariant/\")[1];// console.log(\"variantId\", variantId)\n// console.log(\"product\", product)\nparsedVariant=get(product,\"variants.edges\",[]).find(({node})=>node.id===`gid://shopify/ProductVariant/${variantId}`);// console.log(\"parsedVariant\", parsedVariant)\nisPartial=JSON.parse(savedVariant).isPartial;// console.log(\"isPartial\", isPartial)\ninitialOptions=JSON.parse(savedVariant).selectedOptions;// If this component's group has missing selections, fill them\nconst allOptionNames=(get(product,\"options\",[])||[]).map(opt=>opt.name);const groupOptionNames=getIncludedOptionNames();const missingInGroup=groupOptionNames.filter(name=>!initialOptions[name]);if(missingInGroup.length>0){// Helper to pick the first valid combination by declared option value order\nconst optionsList=get(product,\"options\",[])||[];const scopeTitles=getIncludedOptionNames();const pickFirstByOrder=(baseSelections={})=>{const partial={...baseSelections};for(const opt of optionsList){if(!scopeTitles.includes(opt.name))continue;const nextValue=(opt.values||[]).find(value=>{const trial={...partial,[opt.name]:value};return variants.some(({node})=>{if(!node?.availableForSale)return false;return Object.entries(trial).every(([k,v])=>node.selectedOptions?.some(o=>o.name===k&&o.value===v));});});if(!nextValue)return null;partial[opt.name]=nextValue;}return partial;};const fallbackPicked=pickFirstByOrder({});const fallbackSelected=fallbackPicked?Object.entries(fallbackPicked).map(([name,value])=>({name,value})):[];const sourceOptions=parsedVariant?.node?.selectedOptions||fallbackSelected||[];sourceOptions.forEach(option=>{if(missingInGroup.includes(option.name)){initialOptions[option.name]=option.value;}});}setSelectedOptions(initialOptions);// console.log(\"savedVariant in autoSelectFirst: initialOptions\", initialOptions)\nautoSelectRef.current=true;const allOptions=get(product,\"options\",[]).map(opt=>opt.name);const allOptionsSelected=allOptions.every(optName=>initialOptions[optName]);// console.log(\n//     \"savedVariant : allOptionsSelected\",\n//     allOptionsSelected\n// )\n// Add a small delay to ensure components are ready\nsetTimeout(()=>{// Dispatch events for each selected option\nObject.entries(initialOptions).forEach(([optionName,value])=>{const event=new CustomEvent(\"variant_option_selected\",{detail:{optionName,value,allSelectedOptions:initialOptions,isCompleteVariant:allOptionsSelected,isPurchaseAction:false,productId:`gid://shopify/Product/${shopifyProductID}`}});document.dispatchEvent(event);// console.log(\n//     \"variant_option_selected event: savedVariant\",\n//     event.detail\n// )\n});// Dispatch communication event for other variant selectors\nif(!isCanvas&&filterVariants?.variantGroups!==\"all\"){const communicationEvent=new CustomEvent(\"__variant_option_selected\",{detail:{productId:`gid://shopify/Product/${shopifyProductID}`,optionName:Object.keys(initialOptions)[0],value:Object.values(initialOptions)[0],allSelectedOptions:initialOptions,allOptionsSelected:allOptionsSelected,isPurchaseAction:false,autoSelectFirst:autoSelectFirst,senderPriority:filterVariants?.variantTitles?.[0]||\"\",instanceId:instanceIdRef.current}});window.dispatchEvent(communicationEvent);}if(allOptionsSelected&&!isPartial){// updateUrlWithVariant(fullVariant.node.id)\nsetTimeout(()=>{// Also dispatch a single event for the active variant\nif(action!==\"Add to Cart\"&&action!==\"Buy Now\"){const activeVariantEvent=new CustomEvent(\"product__active-variant__changed\",{detail:{...parsedVariant?.node,productId:`gid://shopify/Product/${shopifyProductID}`,isCompleteVariant:allOptionsSelected}});document.dispatchEvent(activeVariantEvent);// console.log(\n//     \"activeVariantEvent in autoSelectFirst\",\n//     activeVariantEvent.detail\n// )\n}},100);// End of initialization\nisInitializingRef.current=false;}},100);}if(!parsedVariant){//console.log(\"pickFirstByOrder: No saved variant or storage, using autoSelectFirst\", parsedVariant)\n// Prefer declared option order over variant edges order\nconst optionsList=get(product,\"options\",[])||[];const scopeTitles=getIncludedOptionNames();const pickFirstByOrder=(baseSelections={})=>{const partial={...baseSelections};for(const opt of optionsList){if(!scopeTitles.includes(opt.name))continue;const nextValue=(opt.values||[]).find(value=>{const trial={...partial,[opt.name]:value};return variants.some(({node})=>{if(!node?.availableForSale)return false;return Object.entries(trial).every(([k,v])=>node.selectedOptions?.some(o=>o.name===k&&o.value===v));});});if(!nextValue)return null;partial[opt.name]=nextValue;}return partial;};const picked=pickFirstByOrder({});if(picked){initialOptions=picked;}setSelectedOptions(initialOptions);// console.log(\"autoSelectFirst: initialOptions\", initialOptions)\nautoSelectRef.current=true;const allOptions=get(product,\"options\",[]).map(opt=>opt.name);const allOptionsSelected=allOptions.every(optName=>initialOptions[optName]);// console.log(\n//     \"autoSelectFirst: allOptionsSelected\",\n//     allOptionsSelected\n// )\n// Add a small delay to ensure components are ready\nsetTimeout(()=>{// Dispatch events for each selected option\nObject.entries(initialOptions).forEach(([optionName,value])=>{const event=new CustomEvent(\"variant_option_selected\",{detail:{optionName,value,allSelectedOptions:initialOptions,isCompleteVariant:allOptionsSelected,isPurchaseAction:false,productId:`gid://shopify/Product/${shopifyProductID}`}});document.dispatchEvent(event);// console.log(\n//     \"variant_option_selected event: autoSelectFirst\",\n//     event.detail\n// )\n});// Dispatch communication event for other variant selectors\nif(!isCanvas&&filterVariants?.variantGroups!==\"all\"){const communicationEvent=new CustomEvent(\"__variant_option_selected\",{detail:{productId:`gid://shopify/Product/${shopifyProductID}`,optionName:Object.keys(initialOptions)[0],value:Object.values(initialOptions)[0],allSelectedOptions:initialOptions,allOptionsSelected:allOptionsSelected,isPurchaseAction:false,autoSelectFirst:autoSelectFirst,senderPriority:getIncludedOptionNames()[0]||\"\",instanceId:instanceIdRef.current}});window.dispatchEvent(communicationEvent);// console.log(\n//     \"communicationEvent in autoSelectFirst\",\n//     communicationEvent.detail\n// )\n}// console.log(\"isPartial\", isPartial)\nif(allOptionsSelected&&!isPartial){// If we can match a variant for picked options, update URL\nconst matching=variants.find(({node})=>Object.entries(initialOptions).every(([k,v])=>node.selectedOptions?.some(o=>o.name===k&&o.value===v)));// console.log(\"matching\", matching.node)\nif(productPage&&matching?.node?.id){// console.log(\"Updating url for autoSelectFirst\", matching.node)\nupdateUrlWithVariant(matching.node.id);}// setTimeout(() => {\n// Also dispatch a single event for the active variant\nif(action!==\"Add to Cart\"&&action!==\"Buy Now\"){const activeVariantEvent=new CustomEvent(\"product__active-variant__changed\",{detail:{...matching?.node,productId:`gid://shopify/Product/${shopifyProductID}`,isCompleteVariant:allOptionsSelected}});document.dispatchEvent(activeVariantEvent);// console.log(\"active variant event sent\", activeVariantEvent)\n}// End of initialization\nisInitializingRef.current=false;// console.log(\n//     \"activeVariantEvent in autoSelectFirst\",\n//     activeVariantEvent.detail\n// )\n// }, 100)\n}},100);}if(firstAvailableVariant&&!parsedVariant){// console.log(\"No saved variant or storage, using autoSelectFirst\", firstAvailableVariant)\n// If variantGroups is \"all\", set all options\n// Otherwise only set the current group's option\nfirstAvailableVariant.node.selectedOptions.forEach(option=>{if(filterVariants?.variantGroups===\"all\"||// (filterVariants?.variantGroups === \"equals\" &&\nfilterVariants?.variantTitles?.includes(option.name)){initialOptions[option.name]=option.value;}});//console.log(\"autoSelectFirst: firstAvailableVariant\", firstAvailableVariant.node.id)\nsetSelectedOptions(initialOptions);//console.log(\"autoSelectFirst: initialOptions\", initialOptions)\nautoSelectRef.current=true;const allOptions=get(product,\"options\",[]).map(opt=>opt.name);const allOptionsSelected=allOptions.every(optName=>initialOptions[optName]);// console.log(\n//     \"autoSelectFirst: allOptionsSelected\",\n//     allOptionsSelected\n// )\n// Add a small delay to ensure components are ready\nsetTimeout(()=>{// Dispatch events for each selected option\nObject.entries(initialOptions).forEach(([optionName,value])=>{const event=new CustomEvent(\"variant_option_selected\",{detail:{optionName,value,allSelectedOptions:initialOptions,isCompleteVariant:allOptionsSelected,isPurchaseAction:false,productId:`gid://shopify/Product/${shopifyProductID}`}});document.dispatchEvent(event);// console.log(\n//     \"variant_option_selected event: autoSelectFirst\",\n//     event.detail\n// )\n});// Dispatch communication event for other variant selectors\nif(filterVariants?.variantGroups!==\"all\"){const communicationEvent=new CustomEvent(\"__variant_option_selected\",{detail:{productId:`gid://shopify/Product/${shopifyProductID}`,optionName:Object.keys(initialOptions)[0],value:Object.values(initialOptions)[0],allSelectedOptions:initialOptions,allOptionsSelected:allOptionsSelected,isPurchaseAction:false,autoSelectFirst:autoSelectFirst,senderPriority:getIncludedOptionNames()[0]||\"\",instanceId:instanceIdRef.current}});window.dispatchEvent(communicationEvent);// console.log(\n//     \"communicationEvent in autoSelectFirst\",\n//     communicationEvent.detail\n// )\n}if(allOptionsSelected&&!isPartial){if(productPage){// console.log(\"updating Url With Variant\", firstAvailableVariant)\nupdateUrlWithVariant(firstAvailableVariant.node.id);}//console.log(\"Updating url for autoSelectFirst\")\n// setTimeout(() => {\n// Also dispatch a single event for the active variant\nif(action!==\"Add to Cart\"&&action!==\"Buy Now\"){const activeVariantEvent=new CustomEvent(\"product__active-variant__changed\",{detail:{...firstAvailableVariant.node,productId:`gid://shopify/Product/${shopifyProductID}`,isCompleteVariant:allOptionsSelected}});document.dispatchEvent(activeVariantEvent);// console.log(\"active variant event sent\", activeVariantEvent)\n}// End of initialization\nisInitializingRef.current=false;// console.log(\n//     \"activeVariantEvent in autoSelectFirst\",\n//     activeVariantEvent.detail\n// )\n// }, 100)\n}},100);}}},[product,autoSelectFirst,shopifyProductID,filterVariants?.variantGroups,(filterVariants?.variantTitles||[]).join(\"|\"),productPage,isCanvas]);const oldSelectionsRef=useRef({});useEffect(()=>{const handleCurrencyChange=event=>{const{currency}=event.detail;setSelectedCurrency(currency);oldSelectionsRef.current={...selectedOptions}// Save current selections\n;if(window[\"shopXtools\"]&&Array.isArray(window[\"shopXtools\"].products)){const _matchingProduct=window[\"shopXtools\"].products.find(({node:_product})=>_product.id===`gid://shopify/Product/${shopifyProductID}`);if(_matchingProduct){const newProduct=_matchingProduct.node;setProduct(newProduct);}}};window.addEventListener(\"currency_changed\",handleCurrencyChange);return()=>{window.removeEventListener(\"currency_changed\",handleCurrencyChange);};},[shopifyProductID,selectedOptions]);// New effect: restore selections AFTER product updates via currency selection\nuseEffect(()=>{if(!product)return;const savedSelections=oldSelectionsRef.current;if(!savedSelections||Object.keys(savedSelections).length===0)return;const validSelections={};const newOptions=get(product,\"options\",[]);for(const opt of newOptions){const{name,values}=opt;const selectedValue=savedSelections[name];if(selectedValue&&values.includes(selectedValue)){validSelections[name]=selectedValue;}}setSelectedOptions(validSelections);// Only dispatch events if we have valid selections\nif(Object.keys(validSelections).length>0){const activeVariant=getProductVariant(product,validSelections);// Get all available options for this product\nconst allOptions=get(product,\"options\",[]).map(opt=>opt.name);// Check if all options have been selected\nconst allOptionsSelected=allOptions.every(optName=>validSelections[optName]);// Dispatch variant option events for each restored selection\nObject.entries(validSelections).forEach(([optionName,value])=>{const event=new CustomEvent(\"variant_option_selected\",{detail:{optionName,value,allSelectedOptions:validSelections,isCompleteVariant:allOptionsSelected,isPurchaseAction:false}});document.dispatchEvent(event);});// Dispatch active variant event if we have a complete variant\nif(activeVariant&&allOptionsSelected){// Add a small delay to ensure PurchaseButton is ready\nsetTimeout(()=>{if(action!==\"Add to Cart\"&&action!==\"Buy Now\"){const activeVariantEvent=new CustomEvent(\"product__active-variant__changed\",{detail:{...activeVariant,productId:`gid://shopify/Product/${shopifyProductID}`,isCompleteVariant:allOptionsSelected}});document.dispatchEvent(activeVariantEvent);// console.log(\n//     \"activeVariantEvent in currencyChange\",\n//     activeVariantEvent.detail\n// )\n}// Dispatch sync event with fromCurrencyChange flag\nconst syncEvent=new CustomEvent(\"variant__visual__sync\",{detail:{productId:`gid://shopify/Product/${shopifyProductID}`,selectedOptions:validSelections,variantId:activeVariant?.id}});document.dispatchEvent(syncEvent);},50);}}},[product,shopifyProductID]);const activeVariant=getProductVariant(product,selectedOptions);// listening to changes on the activeVariant image\nconst[previousUrl,setPreviousUrl]=useState(\"\");// Parse variant IDs string into a map of variant IDs to image numbers\nconst parseVariantImageIds=variantIdsString=>{if(!variantIdsString)return new Map;const mapping=new Map;// Find all image markers and their positions\nconst imageMarkers=[];const imageRegex=/\\[Image (\\d+) • (\\d+)\\]/g;let imageMatch;while((imageMatch=imageRegex.exec(variantIdsString))!==null){imageMarkers.push({imageNumber:imageMatch[1],position:imageMatch.index,variantId:imageMatch[2],fullMatch:imageMatch[0]});}// Process each image marker and its associated variants\nfor(let i=0;i<imageMarkers.length;i++){const marker=imageMarkers[i];const nextMarker=imageMarkers[i+1];// Map the main variant ID\nmapping.set(marker.variantId,marker.imageNumber);// Find all standalone variant IDs between this marker and the next one\nconst startPos=marker.position+marker.fullMatch.length;const endPos=nextMarker?nextMarker.position:variantIdsString.length;const segment=variantIdsString.substring(startPos,endPos);// Extract and map all standalone variant IDs in this segment\nconst variantRegex=/\\[(\\d+)\\]/g;let variantMatch;while((variantMatch=variantRegex.exec(segment))!==null){mapping.set(variantMatch[1],marker.imageNumber);}}// console.log(\"Parsed variant to image mapping:\", mapping)\nreturn mapping;};const[orderFieldError,setOrderFieldError]=useState(false);// Remove variant-to-image handling from dispatchOptionSelectedEvent\nconst dispatchOptionSelectedEvent=useCallback((optionName,value)=>{const newSelectedOptions={...selectedOptions,[optionName]:value};setSelectedOptions(newSelectedOptions);// console.log(\"newSelectedOptions\", newSelectedOptions)\n// Get all available options for this product\nconst allOptions=get(product,\"options\",[]).map(opt=>opt.name);// Check if all options have been selected\nconst allOptionsSelected=allOptions.every(optName=>newSelectedOptions[optName]);// Dispatch communication event for quick purchase functionality\n// ONLY dispatch this event if it's NOT a purchase action\nif(filterVariants?.variantGroups!==\"all\"&&!__isPurchaseMode(action)){// Dispatch individual option selected event\nconst communicationEvent=new CustomEvent(\"__variant_option_selected\",{detail:{productId:`gid://shopify/Product/${shopifyProductID}`,optionName,value,allSelectedOptions:newSelectedOptions,allOptionsSelected:allOptionsSelected,isPurchaseAction:false,autoSelectFirst:autoSelectFirst,senderPriority:getIncludedOptionNames()[0]||\"\",instanceId:instanceIdRef.current}});window.dispatchEvent(communicationEvent);// console.log(\n//     \"communicationEvent in dispatchOptionSelectedEvent\",\n//     communicationEvent.detail\n// )\n}// Dispatch individual option selected event\nconst event=new CustomEvent(\"variant_option_selected\",{detail:{optionName,value,allSelectedOptions:newSelectedOptions,productId:`gid://shopify/Product/${shopifyProductID}`,isPurchaseAction:action===\"Add to Cart\"||action===\"Buy Now\"}});document.dispatchEvent(event);// console.log(\"variant_option_selected event\", event.detail)\n// If this is a purchase action and all options are selected, handle the quick purchase\nif(__isPurchaseMode(action)){const purchaseActiveVariant=getProductVariant(product,newSelectedOptions);if(purchaseActiveVariant&&window.shopXtools){const getLineItem=()=>{const merchandiseId=purchaseActiveVariant?.id||(shopifyProductID?`gid://shopify/ProductVariant/${shopifyProductID}`:null);if(!merchandiseId){throw new Error(\"No valid product variant selected\");}const lineItem={merchandiseId,quantity:1};try{const productSpecificKey=`fc_cart_attributes_${props.shopifyProductID}`;const stored=sessionStorage.getItem(productSpecificKey);if(!stored)return lineItem;const data=JSON.parse(stored);// Get all attributes instead of just checking for specific ones\nconst attributes=[];// Process all key-value pairs in the stored data\nObject.entries(data).forEach(([key,value])=>{if(value&&String(value).trim()){attributes.push({key,value:String(value).trim()});}});// Only add attributes if we have any\nif(attributes.length>0){lineItem[\"attributes\"]=attributes;}}catch(e){console.error(\"Error adding attributes to cart item:\",e);}return lineItem;};const handlePurchase=async()=>{try{//attributes\nconst productSpecificKey=`fc_cart_attributes_${props.shopifyProductID}`;const storedAttributes=sessionStorage.getItem(productSpecificKey);// console.log(\"[CHECK] Stored attributes:\", storedAttributes)\nconst parsedAttrs=storedAttributes?JSON.parse(storedAttributes):{};// console.log(\"[CHECK] parsed attributes:\", parsedAttrs)\nconst configKey=`fc_input_config_${props.shopifyProductID}`;const config=sessionStorage.getItem(configKey);const parsedConfig=config?JSON.parse(config):{};const attrKeyList=Object.keys(parsedConfig);let hasError=false;for(const attrKey of attrKeyList){const config=parsedConfig[attrKey];const savedValue=parsedAttrs[attrKey]||\"\";// 1. Required check\nif(config.required&&(!savedValue||savedValue.trim()===\"\")){window.dispatchEvent(new CustomEvent(\"inputValidationFailed\",{detail:{productId:props.shopifyProductID,key:attrKey}}));// console.log(\"[CHECK] Required field validation failed:\", {\n//     productId: props.shopifyProductID,\n//     key: attrKey,\n// })\nhasError=true;continue;// No need to check email if required failed\n}// 2. Email validation (only if value is not empty)\nif(config.validateEmail&&savedValue&&savedValue.trim()!==\"\"){const validateEmail=email=>{if(!email||!email.includes(\"@\")||!email.includes(\".\"))return false;if(email.length>254)return false;const[localPart,domain]=email.split(\"@\");if(localPart.length>64)return false;const emailPattern=/^[a-zA-Z0-9.!#$%&'*+/=?^_`{|}~-]+@[a-zA-Z0-9](?:[a-zA-Z0-9-]{0,61}[a-zA-Z0-9])?(?:\\.[a-zA-Z0-9](?:[a-zA-Z0-9-]{0,61}[a-zA-Z0-9])?)*$/;return emailPattern.test(email);};if(!validateEmail(savedValue)){// console.log(\"[CHECK] Email validation failed:\", {\n//     productId: props.shopifyProductID,\n//     key: attrKey,\n//     savedValue,\n//     config,\n// })\nhasError=true;}}}if(hasError){setOrderFieldError(true);return;}const lines=[getLineItem()];const countryCode=localStorage.getItem(\"selectedCountryCode\")||undefined;if(action===\"Add to Cart\"){// Add to cart\nconst existingCartId=localStorage.getItem(\"shopX_cart_id\");// console.log(\"existingCartId\", existingCartId)\nif(!existingCartId){const createResult=await window.shopXtools?.handleCartMutation?.(createCartMutation,{lines,countryCode});if(createResult?.cartCreate?.cart){localStorage.setItem(\"shopX_cart_id\",createResult.cartCreate.cart.id);localStorage.setItem(\"shopXtools.cart\",JSON.stringify(createResult.cartCreate.cart));if(window.shopXtools){window.shopXtools.cart=createResult.cartCreate.cart;}// Dispatch event after updating the cart\nwindow.dispatchEvent(new Event(\"shopXtools-cart-update\"));// Open cart if triggerCart is true\nif(triggerCart){// Notify host site\nwindow.shopXtools?.dispatchEvent?.(\"checkout__changed\",{__triggerCartModal:triggerCart});// Notify Framer components listening on document\ndocument.dispatchEvent(new CustomEvent(\"checkout__changed\",{detail:{__triggerCartModal:triggerCart}}));}// console.log(\n//     \"New cart created, triggering the cart: dispatching checkout__changed\",\n//     onClickAction?.triggerCart\n// )\n}}else{const addResult=await window.shopXtools?.handleCartMutation?.(addToCartMutation,{cartId:existingCartId,lines});// console.log(\"addResult\", addResult)\nif(addResult?.cartLinesAdd?.cart){// console.log(\"addResult.cartLinesAdd.cart\", addResult.cartLinesAdd.cart)\nlocalStorage.setItem(\"shopXtools.cart\",JSON.stringify(addResult.cartLinesAdd.cart));if(window.shopXtools){window.shopXtools.cart=addResult.cartLinesAdd.cart;}// Dispatch event after updating the cart\nwindow.dispatchEvent(new Event(\"shopXtools-cart-update\"));// Google Analytics tracking\nconst currency=purchaseActiveVariant?.price?.currencyCode||\"USD\";const value=parseFloat((parseFloat(purchaseActiveVariant?.price?.amount||\"0\")*1).toFixed(2));const item_id=purchaseActiveVariant?.id;const item_name=purchaseActiveVariant?.selectedOptions?.map(opt=>opt.value).join(\" / \")||\"\";const price=parseFloat(purchaseActiveVariant?.price?.amount||\"0\");const activeProduct=product;// Google Analytics tracking\nif(typeof window.fcTrackGAEvent===\"function\"){// console.log(\"Tracking Add to Cart - google:\", {\n//     currency,\n//     value,\n//     items: [{\n//         item_id,\n//         item_name,\n//         price,\n//         quantity: 1\n//     }]\n// });\nwindow.fcTrackGAEvent(\"add_to_cart\",{currency,value,items:[{item_id,item_name,price,quantity:1}]});}// Meta Pixel tracking\ntrackFacebookPixelAddToCart({variant:purchaseActiveVariant,product:activeProduct,quantity:1,currency:currency});// Open cart if triggerCart is true\nif(action===\"Add to Cart\"&&triggerCart){// Notify host site\nwindow.shopXtools?.dispatchEvent?.(\"checkout__changed\",{__triggerCartModal:triggerCart});// Notify Framer components listening on document\ndocument.dispatchEvent(new CustomEvent(\"checkout__changed\",{detail:{__triggerCartModal:triggerCart}}));// console.log(\"Adding new item, triggering the cart: dispatching checkout__changed\", triggerCart)\n}clearSessionStorage();stripVariantFromUrl();// console.log(\"sessionStorage cleared and url stripped after quick purchase\")\n}}}else{// Buy Now\nconst buyResult=await window.shopXtools?.handleCartMutation?.(createCartMutation,{lines,countryCode});if(buyResult?.cartCreate?.cart?.checkoutUrl){let checkoutUrl=buyResult.cartCreate.cart.checkoutUrl;// Analytics\nconst currency=purchaseActiveVariant?.price?.currencyCode||\"USD\";const value=parseFloat((parseFloat(purchaseActiveVariant?.price?.amount||\"0\")*1).toFixed(2));const item_id=purchaseActiveVariant?.id;const item_name=purchaseActiveVariant?.selectedOptions?.map(opt=>opt.value).join(\" / \")||\"\";const price=parseFloat(purchaseActiveVariant?.price?.amount||\"0\");// Google Analytics tracking\nif(typeof window.fcTrackGAEvent===\"function\"){// console.log(\"Tracking Initiate Checkout (Buy now) - google:\", {\n//     currency,\n//     value,\n//     item_id,\n//     item_name,\n//     price,\n//     quantity: 1\n// });\nwindow.fcTrackGAEvent(\"begin_checkout\",{currency,value,items:[{item_id,item_name,price,quantity:1}]});}// Meta Pixel tracking\ntrackFacebookPixelInitiateCheckout({variant:purchaseActiveVariant,product:product,quantity:1,currency:currency,useBeacon:true});// Add tracking and language params\ncheckoutUrl=appendAllTrackingParamsToUrl(checkoutUrl);checkoutUrl=appendLanguageToUrl(checkoutUrl);window.location.assign(checkoutUrl);}}}catch(error){console.error(\"Error handling purchase:\",error);window.dispatchEvent(new CustomEvent(\"errorChanged\",{detail:error.message||\"Error processing your request\"}));}};handlePurchase();// Dispatch the event with the purchased variant to use it to remember the matching image for the variant after reset\nwindow.dispatchEvent(new CustomEvent(\"product__purchase__completed\",{detail:{shopifyProductID,activeVariant:purchaseActiveVariant,optionName,value}}));//console.log(\"dispatching product__purchase__completed\")\n}}// Compute current active variant from selections\nconst activeVariant=getProductVariant(product,newSelectedOptions);// console.log(\"activeVariant\", activeVariant)\n// Only dispatch active-variant updates for non-purchase actions\n// if (!__isPurchaseMode(action)) {\n//     if (activeVariant) {\n//         // For partial selections, override selectedOptions in the payload\n//         const partialSelectedArray = Object.entries(\n//             newSelectedOptions\n//         ).map(([name, value]) => ({ name, value }))\n//         const activeVariantEvent = new CustomEvent(\n//             \"product__active-variant__changed\",\n//             {\n//                 detail: {\n//                     ...(activeVariant || {}),\n//                     selectedOptions: allOptionsSelected\n//                         ? activeVariant?.selectedOptions || []\n//                         : partialSelectedArray,\n//                     productId: `gid://shopify/Product/${shopifyProductID}`,\n//                     isCompleteVariant: allOptionsSelected,\n//                     onClickAction: action,\n//                 },\n//             }\n//         )\n//         document.dispatchEvent(activeVariantEvent)\n//         console.log(\"activeVariantEvent in dispatchOptionSelectedEvent\", activeVariantEvent.detail)\n//     }\n// }\n// Always dispatch event for visual sync when it is only one variant selector\nconst syncEvent=new CustomEvent(\"variant__visual__sync\",{detail:{productId:`gid://shopify/Product/${shopifyProductID}`,selectedOptions:newSelectedOptions,variantId:activeVariant?.id}});document.dispatchEvent(syncEvent);// Handle session storage and URL updates based on productPage prop\nif(activeVariant){if(productPage&&allOptionsSelected){// On product page: update URL with variant ID\n// console.log(\"updating Url With Variant\", activeVariant)\nupdateUrlWithVariant(activeVariant.id);saveVariantToSessionStorage(newSelectedOptions,activeVariant.id,!allOptionsSelected);}else{// On listing page: save to session storage\nsaveVariantToSessionStorage(newSelectedOptions,activeVariant.id,!allOptionsSelected);}// BACK UP EVENT: Always dispatch product__active-variant__changed event\n// when we have a complete variant to allow all components receive it with a delay\nif(allOptionsSelected&&!__isPurchaseMode(action)){setTimeout(()=>{const activeVariantEvent=new CustomEvent(\"product__active-variant__changed\",{detail:{...activeVariant,productId:`gid://shopify/Product/${shopifyProductID}`,isCompleteVariant:true,isPurchaseAction:false}});document.dispatchEvent(activeVariantEvent);// console.log(\"activeVariantEvent in dispatchOptionSelectedEvent\", activeVariantEvent.detail)\n},300);}}},[selectedOptions,product,shopifyProductID,autoSelectFirst,autoSelectRef.current,filterVariants?.variantGroups,productPage,updateUrlWithVariant,saveVariantToSessionStorage]);// Reset options when purchase/checkout click is completed\nuseEffect(()=>{const handlePurchaseCompleted=e=>{// console.log(\"handlePurchaseCompleted\", e.detail)\nif(e.detail.shopifyProductID!==shopifyProductID){return;}if(action===\"Add to Cart\"||action===\"Buy Now\"&&filterVariants?.variantTitles?.length){const activeVariant=e.detail.activeVariant;// isResettingRef.current = true\nconst optionName=e.detail.optionName;const optionValue=e.detail.value;const optionToReset={[optionName]:optionValue};//console.log(\"optionToReset\", optionToReset)\nconst newOptions=(activeVariant?.selectedOptions||[]).filter(opt=>!(opt.name in optionToReset));//console.log(\"newOptions\", newOptions)\nconst rememberedOptions={};for(const opt of newOptions){rememberedOptions[opt.name]=opt.value;}setSelectedOptions(rememberedOptions);// isResettingRef.current = false\n// console.log(\n//     \"options to remember in handlePurchaseCompleted\",\n//     rememberedOptions\n// )\n//autoSelectRef.current = false;\n// Dispatch communication event after reset\nsetTimeout(()=>{if(activeVariant){// Send the last complete variant to use it to remember the matching image for the variant after reset\ndocument.dispatchEvent(new CustomEvent(\"last_selected_variant\",{detail:{activeVariant,shopifyProductID}}));// console.log(\n//     \"last_selected_variant dispatching\",\n//     activeVariant\n// )\n}const communicationEvent=new CustomEvent(\"__variant_option_selected\",{detail:{productId:`gid://shopify/Product/${shopifyProductID}`,value:null,allSelectedOptions:rememberedOptions,allOptionsSelected:false,isPurchaseAction:true,autoSelectFirst:false}});window.dispatchEvent(communicationEvent);// console.log(\n//     \"Dispatched reset communication event:\",\n//     communicationEvent.detail\n// )\n},200);}};window.addEventListener(\"product__purchase__completed\",handlePurchaseCompleted);return()=>window.removeEventListener(\"product__purchase__completed\",handlePurchaseCompleted);},[product,action,filterVariants?.variantTitles,shopifyProductID,selectedOptions]);// Add a new effect to listen for sync events between the two identical variant selectors\nuseEffect(()=>{if(isCanvas)return;const handleVisualSync=e=>{// Only sync if it's for the same product, not from a currency change, and if variantGroups is \"all\", meaning there is only one variant selector\nif(e.detail.productId===`gid://shopify/Product/${shopifyProductID}`&&filterVariants?.variantGroups===\"all\"){// Only update when a valid selectedOptions payload is provided\nif(e.detail&&typeof e.detail.selectedOptions===\"object\"&&e.detail.selectedOptions!==null){setSelectedOptions(e.detail.selectedOptions);}//console.log(\"handleVisualSync\", e.detail)\n}};document.addEventListener(\"variant__visual__sync\",handleVisualSync);return()=>{document.removeEventListener(\"variant__visual__sync\",handleVisualSync);};},[shopifyProductID,isCanvas])//props.behaviorConfigs.action\n;// Ref: Last purchased variant to use it after options reset for image mapping\nconst eventVariantRef=useRef(null);const eventVariantFreshRef=useRef(false);// An effect to listen for the last purchased variant to use it after options reset for image mapping\nuseEffect(()=>{const handleVariant=e=>{// console.log(\n//     \"shopifyProductID, e.detail.shopifyProductID\",\n//     shopifyProductID,\n//     e.detail.shopifyProductID\n// )\nif(shopifyProductID===e.detail.shopifyProductID){//console.log(\"handleVariant\", e.detail)\neventVariantRef.current=e.detail.activeVariant;eventVariantFreshRef.current=true;}};document.addEventListener(\"last_selected_variant\",handleVariant);return()=>{document.removeEventListener(\"last_selected_variant\",handleVariant);};},[shopifyProductID]);// Consolidate all variant-to-image handling here\nuseEffect(()=>{// console.log(\"[Image mapping:] useEffect running\", { activeVariant, selectedOptions });\nlet variantToShow;// If the quick purchase was triggered, use the last purchased variant to show the matching image\n// or the active variant if it is simply a selection change\nif(eventVariantFreshRef.current&&eventVariantRef.current){variantToShow=eventVariantRef.current;// console.log(\n//     \"Image mapping: eventVariantRef.current\",\n//     eventVariantRef.current\n// )\n// console.log(\n//     \"Image mapping: eventVariantFreshRef.current\",\n//     eventVariantFreshRef.current\n// )\n}else{variantToShow=activeVariant;// console.log(\"Image mapping: activeVariant\", activeVariant)\n}// console.log(\"Image mapping: variantToShow\", variantToShow)\nif(variantToShow){const variantId=variantToShow?.id.split(\"/\").pop();if(props.variantImageIds){const variantMapping=parseVariantImageIds(props.variantImageIds);// console.log(\"Image mapping: variantMapping\", variantMapping)\nconst matchingImageNumber=variantMapping.get(variantId);// console.log(\n//     \"Image mapping: matchingImageNumber\",\n//     matchingImageNumber\n// )\n// Only dispatch events if we have a matching image number\nif(matchingImageNumber){// Use a single setTimeout to handle all events\nconst timeoutId=setTimeout(()=>{// Only dispatch variant__image__match if imageTrigger is not None\nif(images.imageTrigger!==\"None\"){const tapEvent=new CustomEvent(\"variant__image__match\",{detail:{imageNumber:parseInt(matchingImageNumber),shopifyProductID:`gid://shopify/Product/${shopifyProductID}`}});document.dispatchEvent(tapEvent);// console.log(\n//     \"Image mapping: variant__image__match dispatching\",\n//     tapEvent.detail\n// )\n}// Only handle Scroll Sections if that's the specific trigger type\nif(images.imageTrigger===\"Scroll Sections\"){// Prevent initial scroll trigger if auto-select first is enabled\n// and this is the first time we're triggering\nif(autoSelectFirst&&!initialScrollPreventedRef.current){initialScrollPreventedRef.current=true;return;// Skip the scroll trigger on first auto-select\n}const newHash=`#image-${matchingImageNumber}`;if(window.location.hash!==newHash){history.replaceState(null,\"\",newHash);const element=document.getElementById(`image-${matchingImageNumber}`);if(element){const headerOffset=images.offsetY||0;const elementPosition=element.getBoundingClientRect().top;const offsetPosition=elementPosition+window.pageYOffset-headerOffset;window.scrollTo({top:offsetPosition,behavior:\"smooth\"});}}}},0);// Reset the event variant ref to null to allow the next quick purchase\n// to use the active variant and not the last purchased variant\neventVariantFreshRef.current=false;eventVariantRef.current=null;// console.log(\"eventVariantFreshRef.current is false\")\n// console.log(\"eventVariantRef.current is null\")\n// Cleanup timeout on unmount or before next effect\nreturn()=>clearTimeout(timeoutId);}}}},[activeVariant,images.imageTrigger,images.offsetY,props.variantImageIds,selectedOptions]);let variantsTest=get(product,\"variants.edges\");useEffect(()=>{const allCombinations=(get(product,\"variants.edges\")||[]).map(({node:variant})=>({id:variant.id,availableForSale:variant.availableForSale,// Adds key / value pairs for each variant (ie. \"color\": \"Black\" and \"size\": 'M').\n    ...variant.selectedOptions.reduce((accumulator,option)=>({...accumulator,[option.name]:option.value}),{})}));//console.log(\"all Combinations\", allCombinations)\nsetCombinations(allCombinations);},[product]);// An effect to listen for the communication event between the variant selectors (for the quick purchase functionality and else)\nuseEffect(()=>{const handleCommunication=e=>{// console.log(\"handleCommunication e\", e.detail)\n// Ignore cross-instance sync while initializing auto-select to prevent races\nif(isInitializingRef.current)return;const productGid=`gid://shopify/Product/${shopifyProductID}`;const incomingOptions=e.detail.allSelectedOptions;if(e.detail.productId===productGid&&filterVariants?.variantGroups!==\"all\"&&e.detail.instanceId!==instanceIdRef.current&&!e.detail.twoWayGallery){// Always process events for image updates, but control state changes based on purchase action\nconst isPurchaseAction=e.detail.isPurchaseAction;const senderPriority=e.detail.senderPriority||0;const currentPriority=getIncludedOptionNames()[0]||\"\";// console.log(\"Priority check:\", {\n//     senderPriority,\n//     currentPriority,\n//     incomingOptions,\n// })\n// If the sender is a higher-priority selector (e.g., Color), reset lower-priority options\nif(senderPriority===currentPriority){// Keep only the options relevant to this selector and above\n// For example, if this is the Color selector, keep only Color\nconst newSelection={};const included=getIncludedOptionNames();included.forEach(title=>{if(incomingOptions[title]){newSelection[title]=incomingOptions[title];}});// Always update local state for image updates, even for purchase actions\nsetSelectedOptions(newSelection);// console.log(\n//     \"selectedOptions in handleCommunication (replaced)\",\n//     newSelection\n// )\nreturn;}else{// If the event is for a lower-priority option (e.g., Size), merge it with the current selection.\n// Always update local state for image updates, even for purchase actions\n// setSelectedOptions((prev) => ({\n//     ...prev,\n//     ...incomingOptions,\n// }))\n// console.log(\n//     \"selectedOptions in handleCommunication (merged)\",\n//     { prev: selectedOptions, incoming: incomingOptions }\n// )\n// Get the merged options for variant matching (always process for image updates)\nconst merged={...selectedOptions,...incomingOptions};setSelectedOptions(merged);const matchingVariant=getProductVariant(product,merged);// console.log(\"matchingVariant\", matchingVariant)\n// console.log(\"merged\", merged)\nconst allOptions=get(product,\"options\",[]).map(opt=>opt.name);const allOptionsSelected=allOptions.every(optName=>merged[optName]);// console.log(\"allOptionsSelected\", allOptionsSelected)\nif(allOptionsSelected&&matchingVariant){if(productPage&&!isPurchaseAction){// console.log(\"updating Url With Variant\", matchingVariant)\nupdateUrlWithVariant(matchingVariant.id);}// Always dispatch variant change event for image updates, even for purchase actions\nconst activeVariantEvent=new CustomEvent(\"product__active-variant__changed\",{detail:{...matchingVariant,productId:`gid://shopify/Product/${shopifyProductID}`,isCompleteVariant:true,isPurchaseAction:false}});document.dispatchEvent(activeVariantEvent);// console.log(\"active variant event sent\", activeVariantEvent)\n}}}else if(e.detail.productId===productGid&&e.detail.twoWayGallery){// console.log(\"Handling gallery\")\nconst merged={...selectedOptions,...incomingOptions};setSelectedOptions(merged);const matchingVariant=getProductVariant(product,merged);// console.log(\"matchingVariant\", matchingVariant)\n// console.log(\"merged\", merged)\nconst allOptions=get(product,\"options\",[]).map(opt=>opt.name);const allOptionsSelected=allOptions.every(optName=>merged[optName]);// console.log(\"allOptionsSelected\", allOptionsSelected)\nif(allOptionsSelected&&matchingVariant){if(productPage){// console.log(\"updating Url With Variant\", matchingVariant)\nupdateUrlWithVariant(matchingVariant.id);}// Always dispatch variant change event for image updates, even for purchase actions\nconst activeVariantEvent=new CustomEvent(\"product__active-variant__changed\",{detail:{...matchingVariant,productId:`gid://shopify/Product/${shopifyProductID}`,isCompleteVariant:true,isPurchaseAction:false}});document.dispatchEvent(activeVariantEvent);// console.log(\"active variant event sent\", activeVariantEvent)\n}}};window.addEventListener(\"__variant_option_selected\",handleCommunication);return()=>{window.removeEventListener(\"__variant_option_selected\",handleCommunication);};},[shopifyProductID,combinations,autoSelectFirst,action,product,selectedOptions,filterVariants?.variantTitles,productPage]);const renderVariantDropdown=(opt,filteredValues,isLast,valid,invalidMsg,props,dispatchOptionSelectedEvent,selectedOptions,combinations,index,totalCount)=>{return /*#__PURE__*/_jsx(VariantDropdown,{opt:opt,filteredValues:filteredValues,isLast:isLast,valid:valid,invalidMsg:invalidMsg,props:props,dispatchOptionSelectedEvent:dispatchOptionSelectedEvent,selectedOptions:selectedOptions,combinations:combinations,index:index,totalCount:totalCount});};const renderVariantButtons=(opt,filteredValues,isLast,valid,invalidMsg)=>{return /*#__PURE__*/_jsxs(\"div\",{role:\"radiogroup\",\"aria-label\":`Select ${opt.name}`,\"aria-required\":!valid,\"aria-invalid\":!valid,children:[/*#__PURE__*/_jsx(\"div\",{style:{width:\"100%\",display:props.titleConfigs.visible||props.selectedConfigs.visible?\"flex\":\"none\",justifyContent:props.titleConfigs.font.textAlign===\"center\"?\"center\":props.titleConfigs.font.textAlign===\"right\"?\"flex-end\":\"flex-start\",marginBottom:get(props,\"containerConfigs.gap2\")!==undefined?get(props,\"containerConfigs.gap2\"):get(props,\"titleConfigs.gap\"),overflow:\"visible\"},children:/*#__PURE__*/_jsxs(\"div\",{style:{width:\"100%\",display:\"flex\",justifyContent:\"flex-start\",alignItems:\"center\",overflow:\"visible\"},children:[props.titleConfigs.visible&&/*#__PURE__*/_jsx(\"label\",{id:`variant-title-${opt.name}`,htmlFor:`variant-${opt.name}`,style:{...get(props,\"titleConfigs.font\"),color:get(props,\"titleConfigs.color\"),whiteSpace:\"nowrap\",overflow:\"visible\",margin:0,cursor:\"pointer\",textTransform:get(props,\"titleConfigs.textTransform\",\"None\").toLowerCase()},children:(props.titleConfigs.display||\"{{Option}}\").replace(\"{{Option}}\",opt.name)}),props.selectedConfigs.visible&&selectedOptions[opt.name]&&/*#__PURE__*/_jsx(\"p\",{style:{...get(props,\"selectedConfigs.font\"),color:get(props,\"selectedConfigs.color\"),whiteSpace:\"nowrap\",overflow:\"visible\",paddingLeft:props.titleConfigs.visible?`${props.selectedConfigs.gap}px`:0,margin:0,textTransform:get(props,\"selectedConfigs.textTransform\",\"None\").toLowerCase()},children:selectedOptions[opt.name]}),props.selectedConfigs.visible&&props.selectedConfigs.emptyVisible&&!selectedOptions[opt.name]&&/*#__PURE__*/_jsx(\"p\",{style:{...get(props,\"selectedConfigs.font\"),color:get(props,\"selectedConfigs.color\"),whiteSpace:\"nowrap\",overflow:\"visible\",paddingLeft:props.titleConfigs.visible?`${props.selectedConfigs.gap}px`:0,margin:0,textTransform:get(props,\"selectedConfigs.textTransform\",\"None\").toLowerCase()},children:(props.selectedConfigs.emptyText||\"Select {{Option Value}}\").replace(\"{{Option Value}}\",opt.name)})]})}),/*#__PURE__*/_jsxs(\"div\",{style:{display:props.buttonConfigs.layout===\"grid\"?\"grid\":\"flex\",flexDirection:props.buttonConfigs.layout===\"grid\"?undefined:props.buttonConfigs.direction===\"horizontal\"?\"row\":\"column\",flexWrap:props.buttonConfigs.layout===\"grid\"?undefined:props.buttonConfigs.direction===\"horizontal\"?\"wrap\":\"nowrap\",gridTemplateColumns:props.buttonConfigs.layout===\"grid\"?props.buttonConfigs.columns===\"auto\"?(()=>{const maxCols=props.buttonConfigs.maxColumns||4;const gapX=props.buttonConfigs.gap||8;const minWidth=props.buttonConfigs.gridWidth||100;if(maxCols<=1)return\"1fr\";return`repeat(auto-fit, minmax(max(${minWidth}px, calc((100% - ${maxCols-1} * ${gapX}px) / ${maxCols})), 1fr))`;})():filteredValues.length<=1?\"1fr\":`repeat(${props.buttonConfigs.columnCount||3}, 1fr)`:undefined,gap:props.buttonConfigs.layout===\"grid\"?`${props.buttonConfigs.gapY||8}px ${props.buttonConfigs.gap||8}px`:`${props.buttonConfigs.gapY||8}px ${props.buttonConfigs.gap||8}px`,width:\"100%\",maxWidth:undefined,alignItems:props.buttonConfigs.layout===\"grid\"?undefined:props.buttonConfigs.direction===\"vertical\"&&props.buttonConfigs.width?\"stretch\":\"flex-start\"},children:[filteredValues.map((v,i)=>{const isActive=selectedOptions[opt.name]===v;// console.log(\"isActive (button)\", isActive, selectedOptions[opt.name], v)\nlet isAvailableForSale;if(filterVariants?.variantGroups===\"all\"){const filtered=Array.from(Object.entries({...selectedOptions,[opt.name]:v}));isAvailableForSale=combinations.find(combination=>filtered.every(([key,value])=>combination[key]===value)&&combination.availableForSale);// console.log(\"isAvailableForSale\", isAvailableForSale)\n}else{// Handle both update and purchase actions; honor all other current selections\nconst availableValues=Array.from(new Set(combinations.filter(comb=>{if(!comb.availableForSale)return false;const otherSelected=Object.entries(selectedOptions).filter(([key])=>key!==opt.name);return otherSelected.every(([key,value])=>comb[key]===value);}).map(comb=>comb[opt.name]).filter(Boolean)));isAvailableForSale=availableValues.includes(v);// console.log(\"isAvailableForSale\", isAvailableForSale)\n}const canSelect=isAvailableForSale||selectOutOfStock&&!isAvailableForSale;//console.log(\"canSelect\", canSelect)\n// Edge to edge styling - only apply when gap is 0\nconst isLastItem=i===filteredValues.length-1;const gap=Number(props.buttonConfigs.gap);const applyEdgeToEdge=gap===0;const isHorizontal=props.buttonConfigs.direction===\"horizontal\";// Get borders without modification\nconst borderUnselected=get(props,\"buttonConfigs.unselected.border\");const borderSelected=get(props,\"buttonConfigs.selected.border\");const borderDisabled=get(props,\"buttonConfigs.outOfStock.border\");const borderHovered=get(props,\"buttonConfigs.hovered.border\");// Helper to get border style string for each config\nfunction getBorderStyle(borderConfig){if(!borderConfig){// console.log('getBorderStyle: borderConfig is undefined/null');\nreturn undefined;}const{borderWidth,borderStyle,borderColor,isMixed,toggleTitles,top,right,bottom,left}=borderConfig;const isIndividual=toggleTitles===\"Individual\"||isMixed;if(isIndividual){// Use only per-side keys for this state\nreturn{borderTop:`${top??0}px ${borderStyle??\"solid\"} ${borderColor??\"#000\"}`,borderRight:`${right??0}px ${borderStyle??\"solid\"} ${borderColor??\"#000\"}`,borderBottom:`${bottom??0}px ${borderStyle??\"solid\"} ${borderColor??\"#000\"}`,borderLeft:`${left??0}px ${borderStyle??\"solid\"} ${borderColor??\"#000\"}`};}else{// All sides\nconst width=borderWidth?.all??borderWidth??0;return{border:`${width}px ${borderStyle??\"solid\"} ${borderColor??\"#000\"}`};}}// Calculate margin style for edge-to-edge effect\nconst marginStyle={};if(applyEdgeToEdge&&!isLastItem){if(isHorizontal){// For horizontal layout, use negative right margin only\nmarginStyle.marginRight=\"-1px\";}else{// For vertical layout, use negative bottom margin\nmarginStyle.marginBottom=\"-1px\";}}return /*#__PURE__*/_jsx(\"div\",{style:{position:\"relative\",width:props.buttonConfigs.layout===\"grid\"?\"100%\":\"auto\"},className:\"variant-button-container\",children:/*#__PURE__*/_jsxs(\"button\",{role:\"radio\",\"aria-checked\":isActive,\"aria-label\":`${opt.name} ${v}`,tabIndex:canSelect?0:-1,onKeyDown:e=>{if(e.key===\"Enter\"||e.key===\" \"){e.preventDefault();if(canSelect){dispatchOptionSelectedEvent(opt.name,v);}}else if(e.key===\"Home\"){e.preventDefault();// Navigate to first available button in this radiogroup\nconst radiogroup=e.target.closest('[role=\"radiogroup\"]');const firstAvailable=radiogroup?.querySelector('[role=\"radio\"]:not([aria-disabled=\"true\"])');if(firstAvailable)firstAvailable.focus();}else if(e.key===\"End\"){e.preventDefault();// Navigate to last available button in this radiogroup\nconst radiogroup=e.target.closest('[role=\"radiogroup\"]');const availableButtons=radiogroup?.querySelectorAll('[role=\"radio\"]:not([aria-disabled=\"true\"])');if(availableButtons?.length){availableButtons[availableButtons.length-1].focus();}}else if(e.key===\"ArrowRight\"||e.key===\"ArrowDown\"&&props.buttonConfigs.direction===\"vertical\"){e.preventDefault();// Find next available button, wrapping to beginning if needed\nconst radiogroup=e.target.closest('[role=\"radiogroup\"]');const availableButtons=Array.from(radiogroup?.querySelectorAll('[role=\"radio\"]:not([aria-disabled=\"true\"])')||[]);const currentIndex=availableButtons.indexOf(e.target);const nextIndex=(currentIndex+1)%availableButtons.length;if(availableButtons[nextIndex]){availableButtons[nextIndex].focus();}}else if(e.key===\"ArrowLeft\"||e.key===\"ArrowUp\"&&props.buttonConfigs.direction===\"vertical\"){e.preventDefault();// Find previous available button, wrapping to end if needed\nconst radiogroup=e.target.closest('[role=\"radiogroup\"]');const availableButtons=Array.from(radiogroup?.querySelectorAll('[role=\"radio\"]:not([aria-disabled=\"true\"])')||[]);const currentIndex=availableButtons.indexOf(e.target);const prevIndex=currentIndex===0?availableButtons.length-1:currentIndex-1;if(availableButtons[prevIndex]){availableButtons[prevIndex].focus();}}},style:{padding:get(props,\"buttonConfigs.padding\"),width:props.buttonConfigs.layout===\"grid\"?\"100%\":props.buttonConfigs.direction===\"vertical\"&&props.buttonConfigs.width?\"100%\":\"auto\",height:get(props,\"buttonConfigs.height\")===\"Fixed\"?`${get(props,\"buttonConfigs.fixedHeight\")}px`:\"Fit\",...marginStyle,borderRadius:get(props,\"buttonConfigs.radius\"),backgroundColor:isActive&&!isAvailableForSale?get(props,\"buttonConfigs.selected.background\"):!isAvailableForSale?get(props,\"buttonConfigs.outOfStock.background\"):isActive?get(props,\"buttonConfigs.selected.background\"):get(props,\"buttonConfigs.unselected.background\"),...isActive&&!isAvailableForSale?getBorderStyle(borderSelected):!isAvailableForSale?getBorderStyle(borderDisabled):isActive?getBorderStyle(borderSelected):getBorderStyle(borderUnselected),color:isActive&&!isAvailableForSale?get(props,\"buttonConfigs.selected.color\"):!isAvailableForSale?get(props,\"buttonConfigs.outOfStock.color\"):isActive?get(props,\"buttonConfigs.selected.color\"):get(props,\"buttonConfigs.unselected.color\"),fontFamily:isActive&&!isAvailableForSale?get(props,\"buttonConfigs.selected.font.fontFamily\"):!isAvailableForSale?get(props,\"buttonConfigs.outOfStock.font.fontFamily\"):isActive?get(props,\"buttonConfigs.selected.font.fontFamily\"):get(props,\"buttonConfigs.unselected.font.fontFamily\"),fontSize:isActive&&!isAvailableForSale?get(props,\"buttonConfigs.selected.font.fontSize\"):!isAvailableForSale?get(props,\"buttonConfigs.outOfStock.font.fontSize\"):isActive?get(props,\"buttonConfigs.selected.font.fontSize\"):get(props,\"buttonConfigs.unselected.font.fontSize\"),fontWeight:isActive&&!isAvailableForSale?get(props,\"buttonConfigs.selected.font.fontWeight\"):!isAvailableForSale?get(props,\"buttonConfigs.outOfStock.font.fontWeight\"):isActive?get(props,\"buttonConfigs.selected.font.fontWeight\"):get(props,\"buttonConfigs.unselected.font.fontWeight\"),letterSpacing:isActive&&!isAvailableForSale?get(props,\"buttonConfigs.selected.font.letterSpacing\"):!isAvailableForSale?get(props,\"buttonConfigs.outOfStock.font.letterSpacing\"):isActive?get(props,\"buttonConfigs.selected.font.letterSpacing\"):get(props,\"buttonConfigs.unselected.font.letterSpacing\"),textTransform:isActive&&!isAvailableForSale?get(props,\"buttonConfigs.selected.textTransform\"):!isAvailableForSale?get(props,\"buttonConfigs.outOfStock.textTransform\"):isActive?get(props,\"buttonConfigs.selected.textTransform\"):get(props,\"buttonConfigs.unselected.textTransform\"),textAlign:isActive&&!isAvailableForSale?get(props,\"buttonConfigs.selected.font.textAlign\"):!isAvailableForSale?get(props,\"buttonConfigs.outOfStock.font.textAlign\"):isActive?get(props,\"buttonConfigs.selected.font.textAlign\"):get(props,\"buttonConfigs.unselected.font.textAlign\"),cursor:canSelect?\"pointer\":\"not-allowed\",overflow:\"hidden\",position:\"relative\"},onClick:canSelect?()=>dispatchOptionSelectedEvent(opt.name,v):undefined,onMouseEnter:e=>{if(canSelect){const button=e.currentTarget;button.style.backgroundColor=get(props,\"buttonConfigs.hovered.background\");const hoveredBorder=getBorderStyle(borderHovered);if(hoveredBorder.border!==undefined){button.style.border=hoveredBorder.border;}else{button.style.borderTop=hoveredBorder.borderTop;button.style.borderRight=hoveredBorder.borderRight;button.style.borderBottom=hoveredBorder.borderBottom;button.style.borderLeft=hoveredBorder.borderLeft;}button.style.color=get(props,\"buttonConfigs.hovered.color\");}},onMouseLeave:e=>{const button=e.currentTarget;// Always clear all border styles before applying new ones\nbutton.style.border=\"\";button.style.borderTop=\"\";button.style.borderRight=\"\";button.style.borderBottom=\"\";button.style.borderLeft=\"\";if(isActive){button.style.backgroundColor=get(props,\"buttonConfigs.selected.background\");const leaveBorder=getBorderStyle(borderSelected);if(leaveBorder&&leaveBorder.border!==undefined){button.style.border=leaveBorder.border??\"\";}else if(leaveBorder){button.style.borderTop=leaveBorder.borderTop??\"\";button.style.borderRight=leaveBorder.borderRight??\"\";button.style.borderBottom=leaveBorder.borderBottom??\"\";button.style.borderLeft=leaveBorder.borderLeft??\"\";}button.style.color=get(props,\"buttonConfigs.selected.color\");}else if(!isAvailableForSale){button.style.backgroundColor=get(props,\"buttonConfigs.outOfStock.background\");const leaveBorder=getBorderStyle(borderDisabled);if(leaveBorder&&leaveBorder.border!==undefined){button.style.border=leaveBorder.border??\"\";}else if(leaveBorder){button.style.borderTop=leaveBorder.borderTop??\"\";button.style.borderRight=leaveBorder.borderRight??\"\";button.style.borderBottom=leaveBorder.borderBottom??\"\";button.style.borderLeft=leaveBorder.borderLeft??\"\";}button.style.color=get(props,\"buttonConfigs.outOfStock.color\");}else{button.style.backgroundColor=get(props,\"buttonConfigs.unselected.background\");const leaveBorder=getBorderStyle(borderUnselected);if(leaveBorder&&leaveBorder.border!==undefined){button.style.border=leaveBorder.border??\"\";}else if(leaveBorder){button.style.borderTop=leaveBorder.borderTop??\"\";button.style.borderRight=leaveBorder.borderRight??\"\";button.style.borderBottom=leaveBorder.borderBottom??\"\";button.style.borderLeft=leaveBorder.borderLeft??\"\";}button.style.color=get(props,\"buttonConfigs.unselected.color\");}},children:[/*#__PURE__*/_jsxs(\"span\",{style:{position:\"relative\",display:\"inline-block\"},children:[v,isActive&&!isAvailableForSale&&get(props,\"buttonConfigs.outOfStock.strike.line\")&&get(props,\"buttonConfigs.outOfStock.strike.size\")===\"text\"&&/*#__PURE__*/_jsx(\"span\",{style:{position:\"absolute\",top:\"50%\",left:\"0%\",width:\"100%\",height:\"1px\",backgroundColor:get(props,\"buttonConfigs.outOfStock.strike.color\"),transform:`translateY(-50%)`,transformOrigin:\"center\",pointerEvents:!canSelect?\"none\":\"auto\"}}),!isActive&&!isAvailableForSale&&get(props,\"buttonConfigs.outOfStock.strike.line\")&&get(props,\"buttonConfigs.outOfStock.strike.size\")===\"text\"&&/*#__PURE__*/_jsx(\"span\",{style:{position:\"absolute\",top:\"50%\",left:\"0%\",width:\"100%\",height:\"1px\",backgroundColor:get(props,\"buttonConfigs.outOfStock.strike.color\"),transform:`translateY(-50%)`,transformOrigin:\"center\",pointerEvents:\"none\"}})]}),isActive&&!isAvailableForSale&&get(props,\"buttonConfigs.outOfStock.strike.line\")&&get(props,\"buttonConfigs.outOfStock.strike.size\")===\"container\"&&/*#__PURE__*/_jsx(\"svg\",{style:{position:\"absolute\",top:0,left:0,width:\"100%\",height:\"100%\",pointerEvents:!canSelect?\"none\":\"auto\"},preserveAspectRatio:\"none\",viewBox:\"0 0 100 100\",children:/*#__PURE__*/_jsx(\"line\",{x1:get(props,\"buttonConfigs.outOfStock.strike.direction\")===\"horizontal\"?\"0\":get(props,\"buttonConfigs.outOfStock.strike.direction\")===\"diagonal-up\"?\"0\":\"0\",y1:get(props,\"buttonConfigs.outOfStock.strike.direction\")===\"horizontal\"?\"50\":get(props,\"buttonConfigs.outOfStock.strike.direction\")===\"diagonal-up\"?\"100\":\"0\",x2:get(props,\"buttonConfigs.outOfStock.strike.direction\")===\"horizontal\"?\"100\":\"100\",y2:get(props,\"buttonConfigs.outOfStock.strike.direction\")===\"horizontal\"?\"50\":get(props,\"buttonConfigs.outOfStock.strike.direction\")===\"diagonal-up\"?\"0\":\"100\",stroke:get(props,\"buttonConfigs.outOfStock.strike.color\"),strokeWidth:\"1\",vectorEffect:\"non-scaling-stroke\"})}),!isActive&&!isAvailableForSale&&get(props,\"buttonConfigs.outOfStock.strike.line\")&&get(props,\"buttonConfigs.outOfStock.strike.size\")===\"container\"&&/*#__PURE__*/_jsx(\"svg\",{style:{position:\"absolute\",top:0,left:0,width:\"100%\",height:\"100%\",pointerEvents:\"none\"},preserveAspectRatio:\"none\",viewBox:\"0 0 100 100\",children:/*#__PURE__*/_jsx(\"line\",{x1:get(props,\"buttonConfigs.outOfStock.strike.direction\")===\"horizontal\"?\"0\":get(props,\"buttonConfigs.outOfStock.strike.direction\")===\"diagonal-up\"?\"0\":\"0\",y1:get(props,\"buttonConfigs.outOfStock.strike.direction\")===\"horizontal\"?\"50\":get(props,\"buttonConfigs.outOfStock.strike.direction\")===\"diagonal-up\"?\"100\":\"0\",x2:get(props,\"buttonConfigs.outOfStock.strike.direction\")===\"horizontal\"?\"100\":\"100\",y2:get(props,\"buttonConfigs.outOfStock.strike.direction\")===\"horizontal\"?\"50\":get(props,\"buttonConfigs.outOfStock.strike.direction\")===\"diagonal-up\"?\"0\":\"100\",stroke:get(props,\"buttonConfigs.outOfStock.strike.color\"),strokeWidth:\"1\",vectorEffect:\"non-scaling-stroke\"})})]})},v);}),!valid&&/*#__PURE__*/_jsx(\"div\",{role:\"alert\",style:{color:\"#FF0000\",fontSize:\"14px\",paddingTop:\"8px\"},children:`\"${opt.name}\" missing`})]})]},opt.name);};// Render color swatches for color variants\n// This creates circular color swatches for the Color/Colour options\n// It will map color names to hex codes using the window.__FcCheckoutConfigs.colors array\n// or fall back to a set of common color codes\nconst renderColorSwatches=(opt,filteredValues,isLast,valid,invalidMsg)=>{// Check if this option should use color swatches by comparing with colorTitles\nconst isSwatchOption=colorTitles.some(title=>title.toLowerCase().trim()===opt.name.toLowerCase().trim());// If this isn't a swatch-enabled option or swatches are disabled, use appropriate renderer\nif(!isSwatchOption||!props.swatches?.colorEnabled){// Use dropdown or buttons\nif(style===\"Dropdown\"){return renderVariantDropdown(opt,filteredValues,isLast,valid,invalidMsg,props,dispatchOptionSelectedEvent,selectedOptions,combinations,get(product,\"options\")?.findIndex(o=>o.name===opt.name)||0,get(product,\"options\")?.length||0);}else{return renderVariantButtons(opt,filteredValues,isLast,valid,invalidMsg);}}const{swatches}=props;return /*#__PURE__*/_jsxs(\"div\",{role:\"radiogroup\",\"aria-label\":`Select ${opt.name}`,\"aria-required\":!valid,\"aria-invalid\":!valid,children:[/*#__PURE__*/_jsx(\"div\",{style:{width:\"100%\",display:props.titleConfigs.visible||props.selectedConfigs.visible?\"flex\":\"none\",justifyContent:props.titleConfigs.font.textAlign===\"center\"?\"center\":props.titleConfigs.font.textAlign===\"right\"?\"flex-end\":\"flex-start\",marginBottom:get(props,\"containerConfigs.gap2\")!==undefined?get(props,\"containerConfigs.gap2\"):get(props,\"titleConfigs.gap\"),overflow:\"visible\"},children:/*#__PURE__*/_jsxs(\"div\",{style:{width:\"100%\",display:\"flex\",justifyContent:\"flex-start\",alignItems:\"center\",overflow:\"visible\"},children:[props.titleConfigs.visible&&/*#__PURE__*/_jsx(\"label\",{id:`variant-title-${opt.name}`,htmlFor:`variant-${opt.name}`,style:{...get(props,\"titleConfigs.font\"),color:get(props,\"titleConfigs.color\"),whiteSpace:\"nowrap\",overflow:\"visible\",margin:0,cursor:\"pointer\",textTransform:get(props,\"titleConfigs.textTransform\",\"None\").toLowerCase()},children:(props.titleConfigs.display||\"{{Option}}\").replace(\"{{Option}}\",opt.name)}),props.selectedConfigs.visible&&selectedOptions[opt.name]&&/*#__PURE__*/_jsx(\"p\",{style:{...get(props,\"selectedConfigs.font\"),color:get(props,\"selectedConfigs.color\"),whiteSpace:\"nowrap\",overflow:\"visible\",paddingLeft:props.titleConfigs.visible?`${props.selectedConfigs.gap}px`:0,margin:0,textTransform:get(props,\"selectedConfigs.textTransform\",\"None\").toLowerCase()},children:selectedOptions[opt.name]}),props.selectedConfigs.visible&&props.selectedConfigs.emptyVisible&&!selectedOptions[opt.name]&&/*#__PURE__*/_jsx(\"p\",{style:{...get(props,\"selectedConfigs.font\"),color:get(props,\"selectedConfigs.color\"),whiteSpace:\"nowrap\",overflow:\"visible\",paddingLeft:props.titleConfigs.visible?`${props.selectedConfigs.gap}px`:0,margin:0,textTransform:get(props,\"selectedConfigs.textTransform\",\"None\").toLowerCase()},children:(props.selectedConfigs.emptyText||\"Select {{Option Value}}\").replace(\"{{Option Value}}\",opt.name)})]})}),/*#__PURE__*/_jsxs(\"div\",{style:{display:\"flex\",flexDirection:\"row\",flexWrap:\"wrap\",gap:swatches.gap,width:\"100%\"},children:[filteredValues.map((v,i)=>{const isActive=selectedOptions[opt.name]===v;//console.log(\"isActive\", isActive, selectedOptions[opt.name], v)\nlet isAvailableForSale;if(filterVariants?.variantGroups===\"all\"){const filtered=Array.from(Object.entries({...selectedOptions,[opt.name]:v}));isAvailableForSale=combinations.find(combination=>filtered.every(([key,value])=>combination[key]===value)&&combination.availableForSale);}else{const availableValues=Array.from(new Set(combinations.filter(comb=>// Only filter by other selected options, not the current one\n    comb.availableForSale&&// Only include available variants!\n    Object.entries(selectedOptions).filter(([key])=>key!==opt.name).every(([key,value])=>comb[key]===value)).map(comb=>comb[opt.name]).filter(Boolean)));isAvailableForSale=availableValues.includes(v);}const canSelect=isAvailableForSale||selectOutOfStock&&!isAvailableForSale;//console.log(\"canSelect\", canSelect)\n// Get the hex color for this color name\nconst colorName=v.toLowerCase();const hexColor=colorHexMap.get(colorName)||\"#CCCCCC\";// Get the current state's border style\nconst getStateBorder=()=>{if(isActive&&!isAvailableForSale){return swatches.selected.border;}if(!isAvailableForSale){return swatches.outOfStock.border;}if(isActive){return swatches.selected.border;}return swatches.unselected.border;};const getStateBackground=()=>{if(isActive&&!isAvailableForSale){return swatches.selected.background;}if(!isAvailableForSale){return swatches.outOfStock.background;}if(isActive){return swatches.selected.background;}return swatches.unselected.background;};const border=getStateBorder();const background=getStateBackground();return /*#__PURE__*/_jsxs(\"div\",{className:\"variant-swatch-container\",style:{position:\"relative\"},children:[/*#__PURE__*/_jsx(\"button\",{role:\"radio\",\"aria-checked\":isActive,\"aria-label\":`${opt.name} ${v}${!isAvailableForSale?\" (Out of Stock)\":\"\"}`,title:v,disabled:!isAvailableForSale&&!selectOutOfStock,onClick:()=>{if(isAvailableForSale||selectOutOfStock){dispatchOptionSelectedEvent(opt.name,v);}},tabIndex:isAvailableForSale||selectOutOfStock?0:-1,onKeyDown:e=>{if(e.key===\"Enter\"||e.key===\" \"){e.preventDefault();if(canSelect){dispatchOptionSelectedEvent(opt.name,v);}}else if(e.key===\"Home\"){e.preventDefault();const radiogroup=e.target.closest('[role=\"radiogroup\"]');const firstAvailable=radiogroup?.querySelector('[role=\"radio\"]:not([disabled])');if(firstAvailable)firstAvailable.focus();}else if(e.key===\"End\"){e.preventDefault();const radiogroup=e.target.closest('[role=\"radiogroup\"]');const availableButtons=radiogroup?.querySelectorAll('[role=\"radio\"]:not([disabled])');if(availableButtons?.length){availableButtons[availableButtons.length-1].focus();}}else if(e.key===\"ArrowRight\"||e.key===\"ArrowDown\"){e.preventDefault();const radiogroup=e.target.closest('[role=\"radiogroup\"]');const availableButtons=Array.from(radiogroup?.querySelectorAll('[role=\"radio\"]:not([disabled])')||[]);const currentIndex=availableButtons.indexOf(e.target);const nextIndex=(currentIndex+1)%availableButtons.length;if(availableButtons[nextIndex]){availableButtons[nextIndex].focus();}}else if(e.key===\"ArrowLeft\"||e.key===\"ArrowUp\"){e.preventDefault();const radiogroup=e.target.closest('[role=\"radiogroup\"]');const availableButtons=Array.from(radiogroup?.querySelectorAll('[role=\"radio\"]:not([disabled])')||[]);const currentIndex=availableButtons.indexOf(e.target);const prevIndex=currentIndex===0?availableButtons.length-1:currentIndex-1;if(availableButtons[prevIndex]){availableButtons[prevIndex].focus();}}},onMouseEnter:e=>{if(canSelect){const button=e.currentTarget;const{borderWidth,borderStyle}=swatches.hovered.border;button.style.border=`${borderWidth}px ${borderStyle} ${swatches.hovered.border.borderColor}`;button.style.background=swatches.hovered.background;}},onMouseLeave:e=>{const button=e.currentTarget;const border=getStateBorder();const background=getStateBackground();button.style.border=`${border.borderWidth}px ${border.borderStyle} ${border.borderColor}`;button.style.background=background;},style:{width:swatches.width,height:swatches.height,borderRadius:swatches.radius,border:`${border.borderWidth}px ${border.borderStyle} ${border.borderColor}`,padding:swatches.padding,cursor:isAvailableForSale||selectOutOfStock?\"pointer\":\"not-allowed\",background:background,position:\"relative\"},children:/*#__PURE__*/_jsxs(\"div\",{style:{width:\"100%\",height:\"100%\",borderRadius:swatches.radius,backgroundColor:hexColor,opacity:!isAvailableForSale?swatches.outOfStock.opacity:1,position:\"relative\",overflow:\"hidden\"},children:[isActive&&!isAvailableForSale&&get(props,\"swatches.outOfStock.strike.line\")&&/*#__PURE__*/_jsx(\"svg\",{style:{position:\"absolute\",top:0,left:0,width:\"100%\",height:\"100%\",pointerEvents:!canSelect?\"none\":\"auto\"},viewBox:\"0 0 100 100\",preserveAspectRatio:\"none\",children:/*#__PURE__*/_jsx(\"line\",{x1:get(props,\"swatches.outOfStock.strike.direction\")===\"horizontal\"?0:get(props,\"swatches.outOfStock.strike.direction\")===\"diagonal-up\"?0:0,y1:get(props,\"swatches.outOfStock.strike.direction\")===\"horizontal\"?50:get(props,\"swatches.outOfStock.strike.direction\")===\"diagonal-up\"?100:0,x2:100,y2:get(props,\"swatches.outOfStock.strike.direction\")===\"horizontal\"?50:get(props,\"swatches.outOfStock.strike.direction\")===\"diagonal-up\"?0:get(props,\"swatches.outOfStock.strike.direction\")===\"diagonal-down\"?100:100,stroke:get(props,\"swatches.outOfStock.strike.color\"),strokeWidth:\"1\",vectorEffect:\"non-scaling-stroke\"})}),!isActive&&!isAvailableForSale&&get(props,\"swatches.outOfStock.strike.line\")&&/*#__PURE__*/_jsx(\"svg\",{style:{position:\"absolute\",top:0,left:0,width:\"100%\",height:\"100%\",pointerEvents:\"none\"},viewBox:\"0 0 100 100\",preserveAspectRatio:\"none\",children:/*#__PURE__*/_jsx(\"line\",{x1:get(props,\"swatches.outOfStock.strike.direction\")===\"horizontal\"?0:get(props,\"swatches.outOfStock.strike.direction\")===\"diagonal-up\"?0:0,y1:get(props,\"swatches.outOfStock.strike.direction\")===\"horizontal\"?50:get(props,\"swatches.outOfStock.strike.direction\")===\"diagonal-up\"?100:0,x2:100,y2:get(props,\"swatches.outOfStock.strike.direction\")===\"horizontal\"?50:get(props,\"swatches.outOfStock.strike.direction\")===\"diagonal-up\"?0:get(props,\"swatches.outOfStock.strike.direction\")===\"diagonal-down\"?100:100,stroke:get(props,\"swatches.outOfStock.strike.color\"),strokeWidth:\"1\",vectorEffect:\"non-scaling-stroke\"})})]})}),/*#__PURE__*/_jsx(\"div\",{className:\"swatch-tooltip\",style:{position:\"absolute\",top:\"100%\",left:\"50%\",transform:\"translateX(-50%)\",backgroundColor:\"rgba(0, 0, 0, 0.8)\",color:\"#FFFFFF\",padding:\"4px 8px\",borderRadius:\"4px\",fontSize:\"12px\",marginTop:\"4px\",whiteSpace:\"nowrap\",opacity:0,visibility:\"hidden\",transition:\"opacity 0.2s ease-in-out, visibility 0.2s ease-in-out\",zIndex:10},children:v})]},v);}),!valid&&/*#__PURE__*/_jsx(\"div\",{role:\"alert\",style:{color:\"#FF0000\",fontSize:\"14px\",paddingTop:\"8px\"},children:`\"${opt.name}\" missing`})]})]},opt.name);};// Render image swatches for image variants\nconst renderImageSwatches=(opt,filteredValues,isLast,valid,invalidMsg)=>{// Get image titles from props\nconst variantImageTitles=props.imageTitles||[\"Pattern\"];// If this isn't a swatch-enabled option or swatches are disabled, use regular buttons\nconst isSwatchOption=variantImageTitles.some(title=>title.toLowerCase().trim()===opt.name.toLowerCase().trim());if(!isSwatchOption||!props.imageSwatches?.image){return renderVariantButtons(opt,filteredValues,isLast,valid,invalidMsg);}// Get the appropriate style config based on whether we're inheriting or customizing\nconst useCustomStyles=props.imageSwatches.imageStyles===\"customize\";const swatchConfig={gap:useCustomStyles?props.imageSwatches.imageGap:props.swatches?.gap??8,height:useCustomStyles?props.imageSwatches.imageHeight:props.swatches?.height??40,width:useCustomStyles?props.imageSwatches.imageWidth:props.swatches?.width??40,radius:useCustomStyles?props.imageSwatches.imageRadius:props.swatches?.radius??\"50%\",padding:useCustomStyles?props.imageSwatches.imagePadding:props.swatches?.padding??2,unselected:useCustomStyles?props.imageSwatches.imageUnselected:props.swatches?.unselected??{border:{borderWidth:2,borderStyle:\"solid\",borderColor:\"#FFFFFF\"},background:\"#FFFFFF00\"},hovered:useCustomStyles?props.imageSwatches.imageHovered:props.swatches?.hovered??{border:{borderWidth:2,borderStyle:\"solid\",borderColor:\"#CCCCCC\"},background:\"#FFFFFF00\"},selected:useCustomStyles?props.imageSwatches.imageSelected:props.swatches?.selected??{border:{borderWidth:2,borderStyle:\"solid\",borderColor:\"#000000\"},background:\"#FFFFFF00\"},outOfStock:useCustomStyles?props.imageSwatches.imageOutOfStock:props.swatches?.outOfStock??{border:{borderWidth:2,borderStyle:\"solid\",borderColor:\"#FFFFFF\"},opacity:.5,background:\"#FFFFFF00\",strike:{line:false,color:\"rgba(0, 0, 0, 0.16)\",direction:\"diagonal-down\"}}};return /*#__PURE__*/_jsxs(\"div\",{role:\"radiogroup\",\"aria-label\":`Select ${opt.name}`,\"aria-required\":!valid,\"aria-invalid\":!valid,children:[/*#__PURE__*/_jsx(\"div\",{style:{width:\"100%\",display:props.titleConfigs.visible||props.selectedConfigs.visible?\"flex\":\"none\",justifyContent:props.titleConfigs.font.textAlign===\"center\"?\"center\":props.titleConfigs.font.textAlign===\"right\"?\"flex-end\":\"flex-start\",marginBottom:get(props,\"containerConfigs.gap2\")!==undefined?get(props,\"containerConfigs.gap2\"):get(props,\"titleConfigs.gap\"),overflow:\"visible\"},children:/*#__PURE__*/_jsxs(\"div\",{style:{width:\"100%\",display:\"flex\",justifyContent:\"flex-start\",alignItems:\"center\",overflow:\"visible\"},children:[props.titleConfigs.visible&&/*#__PURE__*/_jsx(\"label\",{id:`variant-title-${opt.name}`,htmlFor:`variant-${opt.name}`,style:{...get(props,\"titleConfigs.font\"),color:get(props,\"titleConfigs.color\"),whiteSpace:\"nowrap\",overflow:\"visible\",margin:0,cursor:\"pointer\",textTransform:get(props,\"titleConfigs.textTransform\",\"None\").toLowerCase()},children:(props.titleConfigs.display||\"{{Option}}\").replace(\"{{Option}}\",opt.name)}),props.selectedConfigs.visible&&selectedOptions[opt.name]&&/*#__PURE__*/_jsx(\"p\",{style:{...get(props,\"selectedConfigs.font\"),color:get(props,\"selectedConfigs.color\"),whiteSpace:\"nowrap\",overflow:\"visible\",paddingLeft:props.titleConfigs.visible?`${props.selectedConfigs.gap}px`:0,margin:0,textTransform:get(props,\"selectedConfigs.textTransform\",\"None\").toLowerCase()},children:selectedOptions[opt.name]}),props.selectedConfigs.visible&&props.selectedConfigs.emptyVisible&&!selectedOptions[opt.name]&&/*#__PURE__*/_jsx(\"p\",{style:{...get(props,\"selectedConfigs.font\"),color:get(props,\"selectedConfigs.color\"),whiteSpace:\"nowrap\",overflow:\"visible\",paddingLeft:props.titleConfigs.visible?`${props.selectedConfigs.gap}px`:0,margin:0,textTransform:get(props,\"selectedConfigs.textTransform\",\"None\").toLowerCase()},children:(props.selectedConfigs.emptyText||\"Select {{Option Value}}\").replace(\"{{Option Value}}\",opt.name)})]})}),/*#__PURE__*/_jsxs(\"div\",{style:{display:\"flex\",flexDirection:\"row\",flexWrap:\"wrap\",gap:swatchConfig.gap,width:\"100%\"},children:[filteredValues.map((v,i)=>{const isActive=selectedOptions[opt.name]===v;const filtered=Array.from(Object.entries({...selectedOptions,[opt.name]:v}));const isAvailableForSale=combinations.find(combination=>filtered.every(([key,value])=>combination[key]===value)&&combination.availableForSale);const canSelect=isAvailableForSale||selectOutOfStock&&!isAvailableForSale;// Get the image URL for this variant name from swatch store\nconst imageValue=swatchImages.find(img=>img.name.toLowerCase()===v.toLowerCase());const imageUrl=imageValue?.url||\"\";// Get the current state's border style\nconst getStateBorder=()=>{if(isActive&&!isAvailableForSale){return swatchConfig.selected.border;}if(!isAvailableForSale){return swatchConfig.outOfStock.border;}if(isActive){return swatchConfig.selected.border;}return swatchConfig.unselected.border;};const getStateBackground=()=>{if(isActive&&!isAvailableForSale){return swatchConfig.selected.background;}if(!isAvailableForSale){return swatchConfig.outOfStock.background;}if(isActive){return swatchConfig.selected.background;}return swatchConfig.unselected.background;};const border=getStateBorder();const background=getStateBackground();return /*#__PURE__*/_jsxs(\"div\",{className:\"variant-swatch-container\",style:{position:\"relative\"},children:[/*#__PURE__*/_jsx(\"button\",{role:\"radio\",\"aria-checked\":isActive,\"aria-label\":`${opt.name} ${v}${!isAvailableForSale?\" (Out of Stock)\":\"\"}`,title:v,disabled:!isAvailableForSale&&!selectOutOfStock,onClick:()=>{if(isAvailableForSale||selectOutOfStock){dispatchOptionSelectedEvent(opt.name,v);}},tabIndex:isAvailableForSale||selectOutOfStock?0:-1,onMouseEnter:e=>{if(isAvailableForSale||selectOutOfStock){const button=e.currentTarget;const{borderWidth,borderStyle}=swatchConfig.hovered.border;button.style.border=`${borderWidth}px ${borderStyle} ${swatchConfig.hovered.border.borderColor}`;button.style.background=swatchConfig.hovered.background;}},onMouseLeave:e=>{const button=e.currentTarget;const border=getStateBorder();const background=getStateBackground();button.style.border=`${border.borderWidth}px ${border.borderStyle} ${border.borderColor}`;button.style.background=background;},style:{width:swatchConfig.width,height:swatchConfig.height,borderRadius:swatchConfig.radius,border:`${border.borderWidth}px ${border.borderStyle} ${border.borderColor}`,padding:swatchConfig.padding,cursor:isAvailableForSale||selectOutOfStock?\"pointer\":\"not-allowed\",background:background,position:\"relative\"},children:/*#__PURE__*/_jsxs(\"div\",{style:{width:\"100%\",height:\"100%\",borderRadius:swatchConfig.radius,backgroundImage:`url(${imageUrl})`,backgroundSize:\"cover\",backgroundPosition:\"center\",opacity:!isAvailableForSale?swatchConfig.outOfStock.opacity:1,position:\"relative\",overflow:\"hidden\"},children:[!isActive&&!isAvailableForSale&&swatchConfig.outOfStock.strike?.line&&/*#__PURE__*/_jsx(\"svg\",{style:{position:\"absolute\",top:0,left:0,width:\"100%\",height:\"100%\",pointerEvents:\"none\"},viewBox:\"0 0 100 100\",preserveAspectRatio:\"none\",children:/*#__PURE__*/_jsx(\"line\",{x1:swatchConfig.outOfStock.strike?.direction===\"horizontal\"?0:swatchConfig.outOfStock.strike?.direction===\"diagonal-up\"?0:0,y1:swatchConfig.outOfStock.strike?.direction===\"horizontal\"?50:swatchConfig.outOfStock.strike?.direction===\"diagonal-up\"?100:0,x2:100,y2:swatchConfig.outOfStock.strike?.direction===\"horizontal\"?50:swatchConfig.outOfStock.strike?.direction===\"diagonal-up\"?0:100,stroke:swatchConfig.outOfStock.strike?.color,strokeWidth:\"1\",vectorEffect:\"non-scaling-stroke\"})}),isActive&&!isAvailableForSale&&swatchConfig.outOfStock.strike?.line&&/*#__PURE__*/_jsx(\"svg\",{style:{position:\"absolute\",top:0,left:0,width:\"100%\",height:\"100%\",pointerEvents:!canSelect?\"none\":\"auto\"},viewBox:\"0 0 100 100\",preserveAspectRatio:\"none\",children:/*#__PURE__*/_jsx(\"line\",{x1:swatchConfig.outOfStock.strike?.direction===\"horizontal\"?0:swatchConfig.outOfStock.strike?.direction===\"diagonal-up\"?0:0,y1:swatchConfig.outOfStock.strike?.direction===\"horizontal\"?50:swatchConfig.outOfStock.strike?.direction===\"diagonal-up\"?100:0,x2:100,y2:swatchConfig.outOfStock.strike?.direction===\"horizontal\"?50:swatchConfig.outOfStock.strike?.direction===\"diagonal-up\"?0:100,stroke:swatchConfig.outOfStock.strike?.color,strokeWidth:\"1\",vectorEffect:\"non-scaling-stroke\"})})]})}),/*#__PURE__*/_jsx(\"div\",{className:\"swatch-tooltip\",style:{position:\"absolute\",top:\"100%\",left:\"50%\",transform:\"translateX(-50%)\",backgroundColor:\"rgba(0, 0, 0, 0.8)\",color:\"#FFFFFF\",padding:\"4px 8px\",borderRadius:\"4px\",fontSize:\"12px\",marginTop:\"4px\",whiteSpace:\"nowrap\",opacity:0,visibility:\"hidden\",transition:\"opacity 0.2s ease-in-out, visibility 0.2s ease-in-out\",zIndex:10},children:v})]},v);}),!valid&&/*#__PURE__*/_jsx(\"div\",{role:\"alert\",style:{color:\"#FF0000\",fontSize:\"14px\",paddingTop:\"8px\"},children:`\"${opt.name}\" missing`})]})]},opt.name);};const renderVariantImages=(opt,filteredValues,isLast,valid,invalidMsg)=>{// Use props.variantImageTitles to determine when to show the Variant Images UI\nconst variantImageTitles=props.variantImageTitles||[\"Amount\"];// If this isn't a swatch-enabled option or swatches are disabled, use regular buttons\nconst isSwatchOption=variantImageTitles.some(title=>title.toLowerCase().trim()===opt.name.toLowerCase().trim());// console.log(\"isSwatchOption for\", opt.name, \":\", isSwatchOption, props.variantImages?.image)\nif(!isSwatchOption||!props.variantImages?.image){return renderVariantButtons(opt,filteredValues,isLast,valid,invalidMsg);}// Parse variantImageIds mapping if present\nlet variantImageIdMap=new Map;if(props.variantImageIds){// Use the same parsing function as the main component\nvariantImageIdMap=parseVariantImageIds(props.variantImageIds);}// Helper to get image URL from product images by image number\nconst getImageUrlByNumber=imageNumber=>{if(!imageNumber||!product?.images?.edges)return\"\";const idx=parseInt(imageNumber,10)-1;return product.images.edges[idx]?.node?.url||\"\";};// Get the appropriate style config based on whether we're inheriting or customizing\nlet swatchConfig;if(props.variantImages.imageStyles===\"customize\"){swatchConfig={gap:props.variantImages.imageGap,height:props.variantImages.imageHeight,width:props.variantImages.imageWidth,radius:props.variantImages.imageRadius,padding:props.variantImages.imagePadding,unselected:props.variantImages.imageUnselected,hovered:props.variantImages.imageHovered,selected:props.variantImages.imageSelected,imageOutOfStock:props.variantImages.imageOutOfStock};}else if(props.variantImages.imageStyles===\"inherit\"){if(props.imageSwatches?.image&&props.imageSwatches?.imageStyles){swatchConfig={gap:props.imageSwatches.imageGap,height:props.imageSwatches.imageHeight,width:props.imageSwatches.imageWidth,radius:props.imageSwatches.imageRadius,padding:props.imageSwatches.imagePadding,unselected:props.imageSwatches.imageUnselected,hovered:props.imageSwatches.imageHovered,selected:props.imageSwatches.imageSelected,imageOutOfStock:props.imageSwatches.imageOutOfStock};}else if(props.swatches){swatchConfig={gap:props.swatches.gap??8,height:props.swatches.height??40,width:props.swatches.width??40,radius:props.swatches.radius??\"50%\",padding:props.swatches.padding??2,unselected:props.swatches.unselected??{border:{borderWidth:2,borderStyle:\"solid\",borderColor:\"#FFFFFF\"},background:\"#FFFFFF00\"},hovered:props.swatches.hovered??{border:{borderWidth:2,borderStyle:\"solid\",borderColor:\"#CCCCCC\"},background:\"#FFFFFF00\"},selected:props.swatches.selected??{border:{borderWidth:2,borderStyle:\"solid\",borderColor:\"#000000\"},background:\"#FFFFFF00\"},imageOutOfStock:props.swatches.outOfStock??{border:{borderWidth:2,borderStyle:\"solid\",borderColor:\"#FFFFFF\"},opacity:.5,background:\"#FFFFFF00\",strike:{line:false,color:\"rgba(0, 0, 0, 0.16)\",direction:\"diagonal-down\"}}};}else{// fallback to default\nswatchConfig={gap:8,height:40,width:40,radius:\"50%\",padding:2,unselected:{border:{borderWidth:2,borderStyle:\"solid\",borderColor:\"#FFFFFF\"},background:\"#FFFFFF00\"},hovered:{border:{borderWidth:2,borderStyle:\"solid\",borderColor:\"#CCCCCC\"},background:\"#FFFFFF00\"},selected:{border:{borderWidth:2,borderStyle:\"solid\",borderColor:\"#000000\"},background:\"#FFFFFF00\"},imageOutOfStock:{border:{borderWidth:2,borderStyle:\"solid\",borderColor:\"#FFFFFF\"},opacity:.5,background:\"#FFFFFF00\",strike:{line:false,color:\"rgba(0, 0, 0, 0.16)\",direction:\"diagonal-down\"}}};}}else{// fallback to default\nswatchConfig={gap:8,height:40,width:40,radius:\"50%\",padding:2,unselected:{border:{borderWidth:2,borderStyle:\"solid\",borderColor:\"#FFFFFF\"},background:\"#FFFFFF00\"},hovered:{border:{borderWidth:2,borderStyle:\"solid\",borderColor:\"#CCCCCC\"},background:\"#FFFFFF00\"},selected:{border:{borderWidth:2,borderStyle:\"solid\",borderColor:\"#000000\"},background:\"#FFFFFF00\"},imageOutOfStock:{border:{borderWidth:2,borderStyle:\"solid\",borderColor:\"#FFFFFF\"},opacity:.5,background:\"#FFFFFF00\",strike:{line:false,color:\"rgba(0, 0, 0, 0.16)\",direction:\"diagonal-down\"}}};}return /*#__PURE__*/_jsxs(\"div\",{role:\"radiogroup\",\"aria-label\":`Select ${opt.name}`,\"aria-required\":!valid,\"aria-invalid\":!valid,children:[/*#__PURE__*/_jsx(\"div\",{style:{width:\"100%\",display:props.titleConfigs.visible||props.selectedConfigs.visible?\"flex\":\"none\",justifyContent:props.titleConfigs.font.textAlign===\"center\"?\"center\":props.titleConfigs.font.textAlign===\"right\"?\"flex-end\":\"flex-start\",marginBottom:get(props,\"containerConfigs.gap2\")!==undefined?get(props,\"containerConfigs.gap2\"):get(props,\"titleConfigs.gap\"),overflow:\"visible\"},children:/*#__PURE__*/_jsxs(\"div\",{style:{width:\"100%\",display:\"flex\",justifyContent:\"flex-start\",alignItems:\"center\",overflow:\"visible\"},children:[props.titleConfigs.visible&&/*#__PURE__*/_jsx(\"label\",{id:`variant-title-${opt.name}`,htmlFor:`variant-${opt.name}`,style:{...get(props,\"titleConfigs.font\"),color:get(props,\"titleConfigs.color\"),whiteSpace:\"nowrap\",overflow:\"visible\",margin:0,cursor:\"pointer\",textTransform:get(props,\"titleConfigs.textTransform\",\"None\").toLowerCase()},children:(props.titleConfigs.display||\"{{Option}}\").replace(\"{{Option}}\",opt.name)}),props.selectedConfigs.visible&&selectedOptions[opt.name]&&/*#__PURE__*/_jsx(\"p\",{style:{...get(props,\"selectedConfigs.font\"),color:get(props,\"selectedConfigs.color\"),whiteSpace:\"nowrap\",overflow:\"visible\",paddingLeft:props.titleConfigs.visible?`${props.selectedConfigs.gap}px`:0,margin:0,textTransform:get(props,\"selectedConfigs.textTransform\",\"None\").toLowerCase()},children:selectedOptions[opt.name]}),props.selectedConfigs.visible&&props.selectedConfigs.emptyVisible&&!selectedOptions[opt.name]&&/*#__PURE__*/_jsx(\"p\",{style:{...get(props,\"selectedConfigs.font\"),color:get(props,\"selectedConfigs.color\"),whiteSpace:\"nowrap\",overflow:\"visible\",paddingLeft:props.titleConfigs.visible?`${props.selectedConfigs.gap}px`:0,margin:0,textTransform:get(props,\"selectedConfigs.textTransform\",\"None\").toLowerCase()},children:(props.selectedConfigs.emptyText||\"Select {{Option Value}}\").replace(\"{{Option Value}}\",opt.name)})]})}),/*#__PURE__*/_jsxs(\"div\",{style:{display:\"flex\",flexDirection:\"row\",flexWrap:\"wrap\",gap:swatchConfig.gap,width:\"100%\"},children:[filteredValues.map((v,i)=>{const isActive=selectedOptions[opt.name]===v;const filtered=Array.from(Object.entries({...selectedOptions,[opt.name]:v}));const isAvailableForSale=combinations.find(combination=>filtered.every(([key,value])=>combination[key]===value)&&combination.availableForSale);const canSelect=isAvailableForSale||selectOutOfStock&&!isAvailableForSale;// Get the variant for this value\nconst variant=combinations.find(combination=>filtered.every(([key,value])=>combination[key]===value));const variantId=variant?.id?.split(\"/\").pop();// Try to get the image from the variant's image.url\nlet variantImageUrl;let variantEdge=undefined;if(variantId&&product?.variants?.edges){variantEdge=product.variants.edges.find(({node})=>node.id.split(\"/\").pop()===variantId);}// Use mapping to get the image number for this variant, and use the corresponding image prop\nlet imageNumber=undefined;if(variantId&&variantImageIdMap.size>0){// console.log(\"variantId:\", variantId)\nimageNumber=variantImageIdMap.get(variantId);// console.log(\"imageNumber:\", imageNumber)\nif(imageNumber){const imageProp=props[`image${imageNumber}`];// console.log(\"imageProp:\", imageProp)\nif(imageProp){variantImageUrl=imageProp;// console.log(\"variantImageUrl (mapping):\", variantImageUrl)\n}}}// console.log(\"variantEdge\", variantEdge)\n// console.log(\"variantImageUrl\", variantImageUrl)\n// Fallback: use variant image.url if no mapping or prop found\nif(!variantImageUrl&&variantEdge&&variantEdge.node?.image?.url){variantImageUrl=variantEdge.node.image.url;// console.log(\"variantImageUrl (fallback):\", variantImageUrl)\n}// LOGGING for debugging\n// console.log(\"[VariantImages Debug]\", {\n//     value: v,\n//     selectedOptions,\n//     filtered,\n//     variant,\n//     variantId,\n//     variantEdge,\n//     variantImageUrlFromVariant:\n//         variantEdge && variantEdge.node\n//             ? variantEdge.node.image?.url\n//             : undefined,\n//     mappedImageNumber: imageNumber,\n//     mappedImageUrl: variantImageUrl,\n//     finalImageUrl: variantImageUrl,\n//     productImages: product?.images?.edges,\n//     variantImageIdMap: Array.from(\n//         variantImageIdMap.entries()\n//     ),\n// })\n// Get the current state's border style\n// const getStateBorder = () => {\n//     if (!canSelect) {\n//         return swatchConfig.imageOutOfStock.border\n//     }\n//     if (isActive) {\n//         return swatchConfig.selected.border\n//     }\n//     return swatchConfig.unselected.border\n// }\n// const border = getStateBorder()\n// Get the current state's border style\nconst getStateBorder=()=>{if(isActive&&!isAvailableForSale){return swatchConfig.selected.border;}if(!isAvailableForSale){return swatchConfig.imageOutOfStock.border;}if(isActive){return swatchConfig.selected.border;}return swatchConfig.unselected.border;};const getStateBackground=()=>{if(isActive&&!isAvailableForSale){return swatchConfig.selected.background;}if(!isAvailableForSale){return swatchConfig.imageOutOfStock.background;}if(isActive){return swatchConfig.selected.background;}return swatchConfig.unselected.background;};const border=getStateBorder();const background=getStateBackground();return /*#__PURE__*/_jsxs(\"div\",{className:\"variant-swatch-container\",style:{position:\"relative\"},children:[/*#__PURE__*/_jsx(\"button\",{role:\"radio\",\"aria-checked\":isActive,\"aria-label\":`${opt.name} ${v}${!canSelect?\" (Out of Stock)\":\"\"}`,title:v,disabled:!canSelect,onClick:()=>{if(canSelect){dispatchOptionSelectedEvent(opt.name,v);}},tabIndex:canSelect?0:-1,onMouseEnter:e=>{if(canSelect){const button=e.currentTarget;const{borderWidth,borderStyle}=swatchConfig.hovered.border;button.style.border=`${borderWidth}px ${borderStyle} ${swatchConfig.hovered.border.borderColor}`;button.style.background=swatchConfig.hovered.background;}},onMouseLeave:e=>{const button=e.currentTarget;const border=getStateBorder();const background=getStateBackground();button.style.border=`${border.borderWidth}px ${border.borderStyle} ${border.borderColor}`;button.style.background=background;},style:{width:swatchConfig.width,height:swatchConfig.height,borderRadius:swatchConfig.radius,border:`${border.borderWidth}px ${border.borderStyle} ${border.borderColor}`,padding:swatchConfig.padding,cursor:canSelect?\"pointer\":\"not-allowed\",// background: \"none\",\nbackground:background,position:\"relative\"},children:/*#__PURE__*/_jsxs(\"div\",{style:{width:\"100%\",height:\"100%\",borderRadius:swatchConfig.radius,backgroundImage:variantImageUrl?`url(${variantImageUrl})`:undefined,backgroundSize:\"cover\",backgroundPosition:\"center\",opacity:!isAvailableForSale?swatchConfig.imageOutOfStock.opacity:1,backgroundColor:!variantImageUrl?\"#F0F0F0\":undefined,position:\"relative\",overflow:\"hidden\"},children:[!isActive&&!isAvailableForSale&&/*#__PURE__*/_jsx(\"div\",{style:{position:\"absolute\",top:0,left:0,width:\"100%\",height:\"100%\",background:swatchConfig.imageOutOfStock?.background||\"FFFFFF80\",opacity:swatchConfig.imageOutOfStock.opacity,borderRadius:swatchConfig.radius,pointerEvents:\"none\",zIndex:1}}),isActive&&!isAvailableForSale&&swatchConfig.imageOutOfStock.strike?.line&&/*#__PURE__*/_jsx(\"svg\",{style:{position:\"absolute\",top:0,left:0,width:\"100%\",height:\"100%\",pointerEvents:!canSelect?\"none\":\"auto\"},viewBox:\"0 0 100 100\",preserveAspectRatio:\"none\",children:/*#__PURE__*/_jsx(\"line\",{x1:swatchConfig.imageOutOfStock.strike?.direction===\"horizontal\"?0:swatchConfig.imageOutOfStock.strike?.direction===\"diagonal-up\"?0:0,y1:swatchConfig.imageOutOfStock.strike?.direction===\"horizontal\"?50:swatchConfig.imageOutOfStock.strike?.direction===\"diagonal-up\"?100:0,x2:100,y2:swatchConfig.imageOutOfStock.strike?.direction===\"horizontal\"?50:swatchConfig.imageOutOfStock.strike?.direction===\"diagonal-up\"?0:100,stroke:swatchConfig.imageOutOfStock.strike?.color,strokeWidth:\"1\",vectorEffect:\"non-scaling-stroke\"})}),!isActive&&!isAvailableForSale&&swatchConfig.imageOutOfStock.strike?.line&&/*#__PURE__*/_jsx(\"svg\",{style:{position:\"absolute\",top:0,left:0,width:\"100%\",height:\"100%\",pointerEvents:\"none\"},viewBox:\"0 0 100 100\",preserveAspectRatio:\"none\",children:/*#__PURE__*/_jsx(\"line\",{x1:swatchConfig.imageOutOfStock.strike?.direction===\"horizontal\"?0:swatchConfig.imageOutOfStock.strike?.direction===\"diagonal-up\"?0:0,y1:swatchConfig.imageOutOfStock.strike?.direction===\"horizontal\"?50:swatchConfig.imageOutOfStock.strike?.direction===\"diagonal-up\"?100:0,x2:100,y2:swatchConfig.imageOutOfStock.strike?.direction===\"horizontal\"?50:swatchConfig.imageOutOfStock.strike?.direction===\"diagonal-up\"?0:100,stroke:swatchConfig.imageOutOfStock.strike?.color,strokeWidth:\"1\",vectorEffect:\"non-scaling-stroke\"})})]})}),/*#__PURE__*/_jsx(\"div\",{className:\"swatch-tooltip\",style:{position:\"absolute\",top:\"100%\",left:\"50%\",transform:\"translateX(-50%)\",backgroundColor:\"rgba(0, 0, 0, 0.8)\",color:\"#FFFFFF\",padding:\"4px 8px\",borderRadius:\"4px\",fontSize:\"12px\",marginTop:\"4px\",whiteSpace:\"nowrap\",opacity:0,visibility:\"hidden\",transition:\"opacity 0.2s ease-in-out, visibility 0.2s ease-in-out\",zIndex:10},children:v})]},v);}),!valid&&/*#__PURE__*/_jsx(\"div\",{role:\"alert\",style:{color:\"#FF0000\",fontSize:\"14px\",paddingTop:\"8px\"},children:`\"${opt.name}\" missing`})]})]},opt.name);};const productHasOptions=product=>{return product&&Array.isArray(get(product,\"options\"))&&get(product,\"options\",[]).length>0&&!(get(product,\"options\",[]).length===1&&get(product,\"options.0.name\")===\"Title\"&&get(product,\"options.0.values.0\")===\"Default Title\");};// Check if we should hide variants\nconst shouldHideVariants=!Array.isArray(get(product,\"variants.edges\"))||!showSingleVariants&&(get(product,\"variants.edges\")||[]).length<=1||!productHasOptions(product)||isCanvas&&variants===\"None\";// If product is set to \"404\", show nothing\nif(product===\"404\"||shouldHideVariants){return null;}// Remove the getConfig function since we're not using FcCheckoutConfigs anymore\nconst getConfig=(key,fallback)=>{return fallback;};return /*#__PURE__*/_jsx(\"div\",{ref:containerRef,className:\"fc-product-variants-container\",style:{padding:props.containerConfigs.padding,display:\"flex\",flexDirection:props.containerConfigs.direction===\"horizontal\"?\"row\":\"column\",flexWrap:props.containerConfigs.direction===\"horizontal\"?\"wrap\":\"nowrap\",gap:props.containerConfigs.gap,width:\"100%\",background:props.containerConfigs.background,borderRadius:props.containerConfigs.radius},role:\"region\",\"aria-label\":\"Product Variants\",children:filteredOptions.map((opt,i)=>{//console.log(\"filteredOptions\", filteredOptions)\nconst isLast=i===(get(product,\"options\")||[{}]).length-1;const valid=!shouldValidate||!!selectedOptions[opt.name];//console.log(\"valid\", valid)\nconst invalidMsg=`\"${opt.name}\" missing`;// Filter values based on available variants when filtering is applied\nlet filteredValues=opt.values;if(filterVariants?.variantGroups!==\"all\"&&filterVariants?.variantTitles){// Get all variants that match the current filter\nconst availableVariants=get(product,\"variants.edges\",[]).filter(({node})=>{return node.selectedOptions.some(option=>filterVariants.variantTitles?.includes(option.name));});// Get all unique values for this option from the filtered variants\nconst availableValues=new Set;availableVariants.forEach(({node})=>{const option=node.selectedOptions.find(o=>o.name===opt.name);if(option){availableValues.add(option.value);}});// Filter the option values to only show available ones\nfilteredValues=opt.values.filter(value=>availableValues.has(value));}//console.log(\"filteredValues\", filteredValues)\n// Get the list of variant titles that should use swatches from config\nconst variantColorTitles=props.colorTitles||[\"Color\",\"Colour\"];const variantImageTitles=props.imageTitles||[];const variantImagesTitles=props.variantImageTitles||[];const useColorSwatches=variantColorTitles.some(title=>title.toLowerCase().trim()===opt.name.toLowerCase().trim())&&props.swatches?.colorEnabled===true;const useImageSwatches=variantImageTitles.some(title=>title.toLowerCase().trim()===opt.name.toLowerCase().trim())&&props.imageSwatches?.image===true;const useVariantImages=variantImagesTitles.some(title=>title.toLowerCase().trim()===opt.name.toLowerCase().trim())&&props.variantImages?.image===true;return /*#__PURE__*/_jsx(\"div\",{style:{flex:style===\"Dropdown\"&&props.containerConfigs.direction===\"horizontal\"?\"1 1 0\"// For dropdowns in horizontal layout: grow and shrink equally, 0 basis to fill space\n:style===\"Dropdown\"?\"1 1 auto\"// For dropdowns in vertical layout: grow and shrink\n:props.containerConfigs.direction===\"horizontal\"?\"0 0 auto\"// For buttons in horizontal layout: don't grow or shrink\n:\"1 1 auto\",minWidth:style===\"Dropdown\"?\"88px\":\"auto\",maxWidth:\"none\",width:style===\"Dropdown\"?\"100%\"// For dropdowns: always fill width\n:props.containerConfigs.direction===\"horizontal\"?\"auto\"// For buttons in horizontal layout: natural width\n:\"100%\",// Apply negative margin for edge-to-edge effect\n...style===\"Dropdown\"&&props.containerConfigs.direction===\"horizontal\"&&props.containerConfigs.gap===0&&!isLast?{marginRight:\"-1px\"}:{}},children:(()=>{if(useColorSwatches){return renderColorSwatches(opt,filteredValues,isLast,valid,invalidMsg);}else if(useImageSwatches){return renderImageSwatches(opt,filteredValues,isLast,valid,invalidMsg);}else if(useVariantImages){return renderVariantImages(opt,filteredValues,isLast,valid,invalidMsg);}else if(style===\"Dropdown\"){return renderVariantDropdown(opt,filteredValues,isLast,valid,invalidMsg,props,dispatchOptionSelectedEvent,selectedOptions,combinations,get(product,\"options\")?.findIndex(o=>o.name===opt.name)||0,get(product,\"options\")?.length||0);}else{return renderVariantButtons(opt,filteredValues,isLast,valid,invalidMsg);}})()},opt.name);})});}function getProductVariant(product,opts){if(!product||!product.variants||!product.variants.edges.length)return null;if(opts==null||typeof opts!==\"object\")return null;const variant=product.variants.edges.find(({node:variant})=>{return Object.entries(opts).every(([key,value])=>{return variant.selectedOptions.find(option=>{return option.name===key&&option.value===value;});});});if(!variant){return null;}return variant.node;}// Helper functions for parsing variants data (for Canvas view only)\n// Pre-compile regex patterns for better performance\nconst OPTION_GROUP_REGEX=/\\[(.*?)\\]/g;const IMAGE_MAPPING_REGEX=/\\[Image (\\d+) • (\\d+)\\]/g;/**\n * Parses a string containing option definitions in the format:\n * [Option Name: Value1,Value2,Value3 • option_id]\n *\n * @param {string} optionsString - The options string to parse\n * @returns {Array} An array of option objects with name, values, and id\n */function parseOptions(optionsString){if(!optionsString)return[];const optionGroups=optionsString.match(OPTION_GROUP_REGEX)||[];return optionGroups.map(group=>{const[titleWithValues,id]=group.slice(1,-1).split(\"•\").map(s=>s.trim());const[title,valuesStr]=titleWithValues.split(\":\").map(s=>s.trim());return{name:title,values:valuesStr.split(\",\").map(v=>v.trim()),id:id||\"\"};});}/**\n * Parses a string containing variant definitions in the format:\n * [Value1/Value2 • variant_id]\n *\n * For a single option, the format is:\n * [Value • variant_id]\n *\n * For multiple options, the format is:\n * [Value1/Value2 • variant_id]\n *\n * @param {string} variantsString - The variants string to parse\n * @returns {Array} An array of variant objects with combination, id, and availableForSale\n */function parseVariants(variantsString){if(!variantsString)return[];const variantGroups=variantsString.match(OPTION_GROUP_REGEX)||[];const parsedVariants=[];for(let i=0;i<variantGroups.length;i++){const group=variantGroups[i];const[combinationPart,id]=group.slice(1,-1).split(\"•\").map(s=>s.trim());// Split only on the separator between options, not inside the option value itself like S/M\nconst values=combinationPart.includes(\" / \")?combinationPart.split(\" / \").map(v=>v.trim()):[combinationPart.trim()];parsedVariants.push({combination:values,id:id||\"\",availableForSale:true});}return parsedVariants;}/**\n * Parses a string containing options and variants data in the following format:\n * [Option Name: Value1,Value2,Value3 • option_id] •• [Value1/Value2 • variant_id][Value1/Value3 • variant_id2] •• product_id\n *\n * The string has three parts separated by \"••\":\n * 1. Options section: One or more option definitions in square brackets\n * 2. Variants section: One or more variant definitions in square brackets\n * 3. (Optional) Product ID: Plain string with the product ID\n *\n * @param {string} combinedString - The combined options and variants string\n * @returns {Object} An object containing parsed options, variants, and optionally a product ID\n */function parseOptionsAndVariants(combinedString){if(!combinedString)return{options:[],variants:[],productId:null};// Split into parts: options, variants, and optionally productId\nconst parts=combinedString.split(\"••\").map(s=>s.trim());const optionsString=parts[0];const variantsString=parts.length>1?parts[1]:\"\";const productId=parts.length>2?parts[2]:null;// Parse options\nconst options=parseOptions(optionsString);// Parse variants\nconst variants=parseVariants(variantsString);return{options,variants,productId};}addPropertyControls(FC_ProductVariants,{shopifyProductID:{type:ControlType.String,title:\"Product ID\",description:\"Connect to Product ID from CMS (required)\"},variantImageIds:{type:ControlType.String,title:\"Image IDs\",description:\"Connect to Image Variant IDs from CMS [Learn more](https://framercommerce.com/resources/docs/components/product#gallery)\"},variants:{type:ControlType.String,title:\"Variants\",description:\"Connect to Variants from CMS (required)\"},images:{type:ControlType.Object,title:\"Image Triggers\",controls:{imageTrigger:{type:ControlType.Enum,title:\"Type\",options:[\"None\",\"Gallery\",\"Scroll Sections\"],defaultValue:\"None\",description:\"Trigger image changes elsewhere on the page. [Learn more](https://framercommerce.com/resources/docs/components/product#gallery)\",displaySegmentedControl:true,segmentedControlDirection:\"vertical\"},imageChange:{type:ControlType.Boolean,title:\"Two-Way\",defaultValue:true,enabledTitle:\"Yes\",disabledTitle:\"No\",description:\"Allow clicking on an image to change the selected variant.\",hidden:({imageTrigger})=>imageTrigger!==\"Gallery\"},offsetY:{type:ControlType.Number,title:\"Offset Y\",description:\"Match your Offset Y to your on-canvas values.\",hidden:({imageTrigger})=>imageTrigger!==\"Scroll Sections\",defaultValue:0,min:0,step:1,displayStepper:true}}},behaviorConfigs:{type:ControlType.Object,title:\"Behavior\",controls:{filterVariants:{type:ControlType.Object,title:\"Filter\",controls:{variantGroups:{type:ControlType.Enum,title:\"Groups\",options:[\"all\",\"equals\",\"doesn't equal\"],optionTitles:[\"All\",\"Equals\",\"Doesn't Equal\"],defaultValue:\"all\",displaySegmentedControl:true,segmentedControlDirection:\"vertical\"},variantTitles:{type:ControlType.Array,title:\"Titles\",control:{type:ControlType.String},defaultValue:[],description:'Show all variants or filter by title (e.g., \"Color\", \"Size\") using multiple components.',hidden:props=>props.variantGroups===\"all\"}}},action:{type:ControlType.Enum,title:\"Action\",options:[\"Update Active\",\"Add to Cart\",\"Buy Now\"],optionTitles:[\"Update Active\",\"Add to Cart\",\"Buy Now\"],defaultValue:\"Update Active\",displaySegmentedControl:true,segmentedControlDirection:\"vertical\",description:\"Only set Add to Cart or Buy Now when this component displays a single variant group.\"},triggerCart:{type:ControlType.Boolean,title:\"Cart\",description:\"Trigger cart after adding item\",defaultValue:true,hidden:props=>props.action!==\"Add to Cart\"},autoSelectFirst:{type:ControlType.Boolean,title:\"Select 1st\",description:\"Auto-select the first available variant(s)\",defaultValue:false,hidden:props=>props.action===\"Add to Cart\"||props.action===\"Buy Now\"},productPage:{type:ControlType.Boolean,title:\"PDP\",description:\"Enable if this component is on a product page\",defaultValue:true,enabledTitle:\"Yes\",disabledTitle:\"No\"},showSingleVariants:{type:ControlType.Boolean,title:\"Singles\",description:\"Show the variant selector if only one variant\",defaultValue:false},// showSingleGroups: {\n//     type: ControlType.Boolean,\n//     title: \"Groups\",\n//     description: \"Show the variant selector if only one group\",\n//     defaultValue: false,\n// },\nselectOutOfStock:{type:ControlType.Boolean,title:\"Out of Stock\",description:\"Allow selecting out of stock variants\",defaultValue:false,hidden:props=>props.action!==\"Update Active\"}}},containerConfigs:{type:ControlType.Object,title:\"Layout\",controls:{padding:{type:ControlType.Padding,title:\"Padding\",defaultValue:\"8px\"},gap2:{type:ControlType.Number,title:\"Title Gap\",min:0,unit:\"px\"},gap:{type:ControlType.Number,title:\"Group Gap\",min:0,unit:\"px\"},direction:{type:ControlType.Enum,title:\"Direction\",options:[\"horizontal\",\"vertical\"],optionTitles:[\"Horizontal\",\"Vertical\"],optionIcons:[\"direction-horizontal\",\"direction-vertical\"],displaySegmentedControl:true,defaultValue:\"vertical\"},background:{type:ControlType.Color,title:\"BG\",defaultValue:\"rgba(255, 255, 255, 0)\"},radius:{type:ControlType.BorderRadius,title:\"Radius\",defaultValue:\"0px\"}}},titleConfigs:{type:ControlType.Object,title:\"Title\",controls:{visible:{type:ControlType.Boolean,title:\"Title\",enabledTitle:\"Show\",disabledTitle:\"Hide\",defaultValue:true},display:{type:ControlType.String,title:\"Display\",defaultValue:\"{{Option}}\",placeholder:\"{{Option}}\",description:\"Use {{Option}} to dynamically display Color, Size, etc.\",hidden:props=>!props.visible},font:{type:ControlType.Font,title:\"Font\",controls:\"extended\",hidden:props=>!props.visible},textTransform:{type:ControlType.Enum,title:\"Transform\",options:[\"None\",\"Uppercase\",\"Lowercase\",\"Capitalize\"],defaultValue:\"None\",hidden:props=>!props.visible},color:{type:ControlType.Color,title:\"Color\",hidden:props=>!props.visible},gap:{type:ControlType.Number,title:\"Gap\",description:\"Space between title and buttons/dropdown\",min:0,unit:\"px\",hidden:props=>!props.visible||true}}},selectedConfigs:{type:ControlType.Object,title:\"Selected Value\",controls:{visible:{type:ControlType.Boolean,title:\"Value\",enabledTitle:\"Show\",disabledTitle:\"Hide\",defaultValue:false},gap:{type:ControlType.Number,title:\"Gap\",defaultValue:8,min:0,unit:\"px\",hidden:props=>!props.visible},font:{type:ControlType.Font,title:\"Font\",controls:\"extended\",hidden:props=>!props.visible},textTransform:{type:ControlType.Enum,title:\"Transform\",options:[\"None\",\"Uppercase\",\"Lowercase\",\"Capitalize\"],defaultValue:\"None\",hidden:props=>!props.visible},color:{type:ControlType.Color,title:\"Color\",hidden:props=>!props.visible},emptyVisible:{type:ControlType.Boolean,title:\"Empty\",enabledTitle:\"Show\",disabledTitle:\"Hide\",defaultValue:false,hidden:props=>!props.visible},emptyText:{type:ControlType.String,title:\"Display\",description:\"Use {{Option Value}} to dynamically display Blue, Medium, etc.\",placeholder:\"Select {{Option Value}}\",defaultValue:\"Select {{Option Value}}\",hidden:props=>!props.visible||!props.emptyVisible}}},style:{type:ControlType.Enum,title:\"Style\",options:[\"Buttons\",\"Dropdown\"],optionTitles:[\"Buttons\",\"Dropdown\"],displaySegmentedControl:true,segmentedControlDirection:\"vertical\",defaultValue:\"Buttons\"},buttonConfigs:{type:ControlType.Object,title:\"Buttons\",hidden:props=>props.style!==\"Buttons\",controls:{layout:{type:ControlType.Enum,title:\"Layout\",options:[\"stack\",\"grid\"],optionTitles:[\"Stack\",\"Grid\"],displaySegmentedControl:true,defaultValue:\"stack\"},direction:{type:ControlType.Enum,title:\"Direction\",options:[\"horizontal\",\"vertical\"],optionTitles:[\"Horizontal\",\"Vertical\"],optionIcons:[\"direction-horizontal\",\"direction-vertical\"],displaySegmentedControl:true,defaultValue:\"vertical\",hidden:props=>props.layout===\"grid\"},columns:{type:ControlType.Enum,title:\"Columns\",options:[\"auto\",\"fixed\"],optionTitles:[\"Auto\",\"Fixed\"],displaySegmentedControl:true,defaultValue:\"auto\",hidden:props=>props.layout!==\"grid\"},columnCount:{type:ControlType.Number,title:\"Columns\",defaultValue:3,min:1,step:1,displayStepper:true,hidden:props=>props.layout!==\"grid\"||props.columns===\"auto\"},gridWidth:{type:ControlType.Number,title:\"Min Width\",defaultValue:100,min:1,max:1e3,step:1,hidden:props=>props.layout!==\"grid\"||props.columns===\"fixed\"},maxColumns:{type:ControlType.Number,title:\"Max Col\",defaultValue:4,min:1,step:1,displayStepper:true,hidden:props=>props.layout!==\"grid\"||props.columns===\"fixed\"},gap:{type:ControlType.Number,title:\"Gap X\",min:0},gapY:{type:ControlType.Number,title:\"Gap Y\",defaultValue:8,min:0,step:1},radius:{type:ControlType.BorderRadius,title:\"Radius\",defaultValue:\"4px\"},padding:{type:ControlType.Padding,title:\"Padding\",defaultValue:\"8px\"},width:{type:ControlType.Boolean,title:\"Width\",enabledTitle:\"Fill\",disabledTitle:\"Fit\",defaultValue:false,hidden:props=>props.direction!==\"vertical\"},unselected:{type:ControlType.Object,title:\"Default\",controls:{font:{type:ControlType.Font,title:\"Font\",controls:\"extended\",defaultValue:{fontSize:14,fontFamily:\"Inter\"}},textTransform:{type:ControlType.Enum,title:\"Transform\",options:[\"None\",\"Uppercase\",\"Lowercase\",\"Capitalize\"],defaultValue:\"None\"},color:{type:ControlType.Color,title:\"Text\",defaultValue:\"rgba(0, 0, 0, 1)\"},background:{type:ControlType.Color,title:\"BG\",defaultValue:\"rgba(255, 255, 255, 1)\"},border:{type:ControlType.Object,title:\"Border\",controls:{borderWidth:{type:ControlType.FusedNumber,title:\"Width\",toggleKey:\"isMixed\",toggleTitles:[\"All\",\"Individual\"],valueKeys:[\"top\",\"right\",\"bottom\",\"left\"],valueLabels:[\"T\",\"R\",\"B\",\"L\"],min:0,defaultValue:1},borderStyle:{type:ControlType.Enum,title:\"Style\",options:[\"solid\",\"dashed\",\"dotted\",\"double\"],optionTitles:[\"Solid\",\"Dashed\",\"Dotted\",\"Double\"],defaultValue:\"solid\"},borderColor:{type:ControlType.Color,title:\"Color\",defaultValue:\"rgba(0,0,0,0.08)\"}}}}},hovered:{type:ControlType.Object,title:\"Hover\",controls:{font:{type:ControlType.Font,title:\"Font\",controls:\"extended\",defaultValue:{fontSize:14,fontFamily:\"Inter\"}},textTransform:{type:ControlType.Enum,title:\"Transform\",options:[\"None\",\"Uppercase\",\"Lowercase\",\"Capitalize\"],defaultValue:\"None\"},color:{type:ControlType.Color,title:\"Text\",defaultValue:\"rgba(0, 0, 0, 1)\"},background:{type:ControlType.Color,title:\"BG\",defaultValue:\"rgba(0, 0, 0, 0.03)\"},border:{type:ControlType.Object,title:\"Border\",controls:{borderWidth:{type:ControlType.FusedNumber,title:\"Width\",toggleKey:\"isMixed\",toggleTitles:[\"All\",\"Individual\"],valueKeys:[\"top\",\"right\",\"bottom\",\"left\"],valueLabels:[\"T\",\"R\",\"B\",\"L\"],min:0,defaultValue:1},borderStyle:{type:ControlType.Enum,title:\"Style\",options:[\"solid\",\"dashed\",\"dotted\",\"double\"],optionTitles:[\"Solid\",\"Dashed\",\"Dotted\",\"Double\"],defaultValue:\"solid\"},borderColor:{type:ControlType.Color,title:\"Color\",defaultValue:\"rgba(0, 0, 0, 1)\"}}}}},selected:{type:ControlType.Object,title:\"Selected\",controls:{font:{type:ControlType.Font,title:\"Font\",controls:\"extended\",defaultValue:{fontSize:14,fontWeight:500,fontFamily:\"Inter\"}},textTransform:{type:ControlType.Enum,title:\"Transform\",options:[\"None\",\"Uppercase\",\"Lowercase\",\"Capitalize\"],defaultValue:\"None\"},color:{type:ControlType.Color,title:\"Text\",defaultValue:\"#FFFFFF\"},background:{type:ControlType.Color,title:\"BG\",defaultValue:\"#000000\"},border:{type:ControlType.Object,title:\"Border\",controls:{borderWidth:{type:ControlType.FusedNumber,title:\"Width\",toggleKey:\"isMixed\",toggleTitles:[\"All\",\"Individual\"],valueKeys:[\"top\",\"right\",\"bottom\",\"left\"],valueLabels:[\"T\",\"R\",\"B\",\"L\"],min:0,defaultValue:1},borderStyle:{type:ControlType.Enum,title:\"Style\",options:[\"solid\",\"dashed\",\"dotted\",\"double\"],optionTitles:[\"Solid\",\"Dashed\",\"Dotted\",\"Double\"],defaultValue:\"solid\"},borderColor:{type:ControlType.Color,title:\"Color\",defaultValue:\"#000000\"}}}}},outOfStock:{type:ControlType.Object,title:\"Out Of Stock\",controls:{preview:{type:ControlType.Boolean,title:\"Preview\",enabledTitle:\"On\",disabledTitle:\"Off\",defaultValue:false},font:{type:ControlType.Font,title:\"Font\",controls:\"extended\",defaultValue:{fontSize:14,fontWeight:500,fontFamily:\"Inter\"}},color:{type:ControlType.Color,title:\"Text\",defaultValue:\"rgba(0, 0, 0, 0.40)\"},background:{type:ControlType.Color,title:\"BG\",defaultValue:\"rgba(0, 0, 0, 0.08)\"},border:{type:ControlType.Object,title:\"Border\",controls:{borderWidth:{type:ControlType.FusedNumber,title:\"Width\",toggleKey:\"isMixed\",toggleTitles:[\"All\",\"Individual\"],valueKeys:[\"top\",\"right\",\"bottom\",\"left\"],valueLabels:[\"T\",\"R\",\"B\",\"L\"],min:0,defaultValue:1},borderStyle:{type:ControlType.Enum,title:\"Style\",options:[\"solid\",\"dashed\",\"dotted\",\"double\"],optionTitles:[\"Solid\",\"Dashed\",\"Dotted\",\"Double\"],defaultValue:\"solid\"},borderColor:{type:ControlType.Color,title:\"Color\",defaultValue:\"rgba(255, 255, 255, 1)\"}}},textTransform:{type:ControlType.Enum,title:\"Transform\",options:[\"None\",\"Uppercase\",\"Lowercase\",\"Capitalize\"],defaultValue:\"None\"},strike:{type:ControlType.Object,title:\"Strike\",controls:{line:{type:ControlType.Boolean,title:\"Line\",enabledTitle:\"Yes\",disabledTitle:\"No\",defaultValue:false},size:{type:ControlType.Enum,title:\"Size\",options:[\"text\",\"container\"],optionTitles:[\"Text\",\"Container\"],defaultValue:\"container\",displaySegmentedControl:true,segmentedControlDirection:\"vertical\",hidden:props=>!props.line},color:{type:ControlType.Color,title:\"Color\",defaultValue:\"rgba(0, 0, 0, 0.16)\",hidden:props=>!props.line},direction:{type:ControlType.Enum,title:\"Direction\",options:[\"horizontal\",\"diagonal-up\",\"diagonal-down\"],optionTitles:[\"Horizontal\",\"Diagonal Up\",\"Diagonal Down\"],defaultValue:\"diagonal-down\",displaySegmentedControl:true,segmentedControlDirection:\"vertical\",hidden:props=>!props.line||props.size===\"text\"}}}}}}},dropdownConfigs:{type:ControlType.Object,title:\"Dropdown\",hidden:props=>props.style!==\"Dropdown\",controls:{font:{type:ControlType.Font,title:\"Font\",controls:\"extended\"},textTransform:{type:ControlType.Enum,title:\"Transform\",options:[\"None\",\"Uppercase\",\"Lowercase\",\"Capitalize\"],defaultValue:\"None\"},unselected:{type:ControlType.Object,title:\"Unselected\",controls:{text:{type:ControlType.String,title:\"Text\",defaultValue:\"Select {{variant}}\",description:\"Use {{variant}} to insert the variant name\"},color:{type:ControlType.Color,title:\"Text\",defaultValue:\"rgba(0, 0, 0, 0.48)\"},background:{type:ControlType.Color,title:\"BG\",defaultValue:\"rgba(255, 255, 255, 1)\"},border:{type:ControlType.Object,title:\"Border\",controls:{borderWidth:{type:ControlType.FusedNumber,title:\"Width\",toggleKey:\"isMixed\",toggleTitles:[\"All\",\"Individual\"],valueKeys:[\"top\",\"right\",\"bottom\",\"left\"],valueLabels:[\"T\",\"R\",\"B\",\"L\"],min:0,defaultValue:1},borderStyle:{type:ControlType.Enum,title:\"Style\",options:[\"solid\",\"dashed\",\"dotted\",\"double\"],optionTitles:[\"Solid\",\"Dashed\",\"Dotted\",\"Double\"],defaultValue:\"solid\"},borderColor:{type:ControlType.Color,title:\"Color\",defaultValue:\"rgba(0, 0, 0, 0.08)\"}}}}},selected:{type:ControlType.Object,title:\"Selected\",controls:{color:{type:ControlType.Color,title:\"Text\",defaultValue:\"rgba(0, 0, 0, 1)\"},background:{type:ControlType.Color,title:\"BG\",defaultValue:\"rgba(255, 255, 255, 1)\"},border:{type:ControlType.Object,title:\"Border\",controls:{borderWidth:{type:ControlType.FusedNumber,title:\"Width\",toggleKey:\"isMixed\",toggleTitles:[\"All\",\"Individual\"],valueKeys:[\"top\",\"right\",\"bottom\",\"left\"],valueLabels:[\"T\",\"R\",\"B\",\"L\"],min:0,defaultValue:1},borderStyle:{type:ControlType.Enum,title:\"Style\",options:[\"solid\",\"dashed\",\"dotted\",\"double\"],optionTitles:[\"Solid\",\"Dashed\",\"Dotted\",\"Double\"],defaultValue:\"solid\"},borderColor:{type:ControlType.Color,title:\"Color\",defaultValue:\"rgba(0, 0, 0, 0.16)\"}}}}},hover:{type:ControlType.Object,title:\"Hover\",controls:{color:{type:ControlType.Color,title:\"Text\",defaultValue:\"rgba(0, 0, 0, 1)\"},background:{type:ControlType.Color,title:\"BG\",defaultValue:\"rgba(0, 0, 0, 0.04)\"},border:{type:ControlType.Object,title:\"Border\",controls:{borderWidth:{type:ControlType.FusedNumber,title:\"Width\",toggleKey:\"isMixed\",toggleTitles:[\"All\",\"Individual\"],valueKeys:[\"top\",\"right\",\"bottom\",\"left\"],valueLabels:[\"T\",\"R\",\"B\",\"L\"],min:0,defaultValue:1},borderStyle:{type:ControlType.Enum,title:\"Style\",options:[\"solid\",\"dashed\",\"dotted\",\"double\"],optionTitles:[\"Solid\",\"Dashed\",\"Dotted\",\"Double\"],defaultValue:\"solid\"},borderColor:{type:ControlType.Color,title:\"Color\",defaultValue:\"rgba(0, 0, 0, 1)\"}}}}},focus:{type:ControlType.Object,title:\"Focus\",controls:{width:{type:ControlType.Number,title:\"Width\",defaultValue:2,min:1,max:20,step:1,displayStepper:true},offset:{type:ControlType.Number,title:\"Offset\",defaultValue:2,min:0,max:20,step:1,displayStepper:true},color:{type:ControlType.Color,title:\"Color\"}}},radius:{type:ControlType.BorderRadius,title:\"Radius\",defaultValue:\"4px\"},padding:{type:ControlType.Padding,title:\"Padding\",defaultValue:\"16px 16px 16px 16px\"},icon:{type:ControlType.Object,title:\"Icon\",controls:{type:{type:ControlType.Enum,title:\"Type\",options:[\"default\",\"custom\"],optionTitles:[\"Default\",\"Custom\"],defaultValue:\"default\",displaySegmentedControl:true},color:{type:ControlType.Color,title:\"Color\",defaultValue:\"rgba(0, 0, 0, 1)\",hidden:props=>props.type===\"custom\"},size:{type:ControlType.Number,title:\"Size\",defaultValue:12,min:8,max:64,step:1},weight:{type:ControlType.Number,title:\"Weight\",defaultValue:2,min:.5,max:4,step:.5,hidden:props=>props.type===\"custom\"},customIcon:{type:ControlType.Image,title:\"Image\",hidden:props=>props.type!==\"custom\"}}}}},swatches:{type:ControlType.Object,title:\"Color Swatches\",controls:{colorEnabled:{type:ControlType.Boolean,title:\"Color\",defaultValue:true,enabledTitle:\"On\",disabledTitle:\"Off\",description:\"Show swatches for Color variants. Set hex codes in the plugin. [Learn more](https://framercommerce.com/resources/academy/variant-colors)\"},gap:{type:ControlType.Number,title:\"Gap\",defaultValue:8,min:0,step:4,hidden:props=>!props.colorEnabled},height:{type:ControlType.Number,title:\"Height\",defaultValue:40,min:8,max:80,step:4,displayStepper:true,hidden:props=>!props.colorEnabled},width:{type:ControlType.Number,title:\"Width\",defaultValue:40,min:8,max:80,step:4,displayStepper:true,hidden:props=>!props.colorEnabled},radius:{type:ControlType.BorderRadius,title:\"Radius\",defaultValue:\"50%\",hidden:props=>!props.colorEnabled},padding:{type:ControlType.Padding,title:\"Padding\",defaultValue:\"2px\",hidden:props=>!props.colorEnabled},unselected:{type:ControlType.Object,title:\"Default\",controls:{border:{type:ControlType.Object,title:\"Border\",controls:{borderWidth:{type:ControlType.FusedNumber,title:\"Width\",toggleKey:\"isMixed\",toggleTitles:[\"All\",\"Individual\"],valueKeys:[\"top\",\"right\",\"bottom\",\"left\"],valueLabels:[\"T\",\"R\",\"B\",\"L\"],min:0,defaultValue:1},borderStyle:{type:ControlType.Enum,title:\"Style\",options:[\"solid\",\"dashed\",\"dotted\",\"double\"],optionTitles:[\"Solid\",\"Dashed\",\"Dotted\",\"Double\"],defaultValue:\"solid\"},borderColor:{type:ControlType.Color,title:\"Color\",defaultValue:\"rgba(0, 0, 0, 0)\"}}},background:{type:ControlType.Color,title:\"BG\",defaultValue:\"rgba(255, 255, 255, 0)\"}},hidden:props=>!props.colorEnabled},hovered:{type:ControlType.Object,title:\"Hover\",controls:{border:{type:ControlType.Object,title:\"Border\",controls:{borderWidth:{type:ControlType.FusedNumber,title:\"Width\",toggleKey:\"isMixed\",toggleTitles:[\"All\",\"Individual\"],valueKeys:[\"top\",\"right\",\"bottom\",\"left\"],valueLabels:[\"T\",\"R\",\"B\",\"L\"],min:0,defaultValue:1},borderStyle:{type:ControlType.Enum,title:\"Style\",options:[\"solid\",\"dashed\",\"dotted\",\"double\"],optionTitles:[\"Solid\",\"Dashed\",\"Dotted\",\"Double\"],defaultValue:\"solid\"},borderColor:{type:ControlType.Color,title:\"Color\",defaultValue:\"rgba(0, 0, 0, 0.16)\"}}},background:{type:ControlType.Color,title:\"BG\",defaultValue:\"#FFF\"}},hidden:props=>!props.colorEnabled},selected:{type:ControlType.Object,title:\"Selected\",controls:{border:{type:ControlType.Object,title:\"Border\",controls:{borderWidth:{type:ControlType.FusedNumber,title:\"Width\",toggleKey:\"isMixed\",toggleTitles:[\"All\",\"Individual\"],valueKeys:[\"top\",\"right\",\"bottom\",\"left\"],valueLabels:[\"T\",\"R\",\"B\",\"L\"],min:0,defaultValue:1},borderStyle:{type:ControlType.Enum,title:\"Style\",options:[\"solid\",\"dashed\",\"dotted\",\"double\"],optionTitles:[\"Solid\",\"Dashed\",\"Dotted\",\"Double\"],defaultValue:\"solid\"},borderColor:{type:ControlType.Color,title:\"Color\",defaultValue:\"rgba(0, 0, 0, 1)\"}}},background:{type:ControlType.Color,title:\"BG\",defaultValue:\"rgba(255, 255, 255, 1)\"}},hidden:props=>!props.colorEnabled},outOfStock:{type:ControlType.Object,title:\"Out of Stock\",controls:{border:{type:ControlType.Object,title:\"Border\",controls:{borderWidth:{type:ControlType.FusedNumber,title:\"Width\",toggleKey:\"isMixed\",toggleTitles:[\"All\",\"Individual\"],valueKeys:[\"top\",\"right\",\"bottom\",\"left\"],valueLabels:[\"T\",\"R\",\"B\",\"L\"],min:0,defaultValue:1},borderStyle:{type:ControlType.Enum,title:\"Style\",options:[\"solid\",\"dashed\",\"dotted\",\"double\"],optionTitles:[\"Solid\",\"Dashed\",\"Dotted\",\"Double\"],defaultValue:\"solid\"},borderColor:{type:ControlType.Color,title:\"Color\",defaultValue:\"rgba(0,0,0,0)\"}}},opacity:{type:ControlType.Number,title:\"Opacity\",defaultValue:.5,min:0,max:1,step:.1},background:{type:ControlType.Color,title:\"BG\",defaultValue:\"rgba(255, 255, 255, 0)\"},strike:{type:ControlType.Object,title:\"Strike\",controls:{line:{type:ControlType.Boolean,title:\"Line\",enabledTitle:\"Yes\",disabledTitle:\"No\",defaultValue:false},color:{type:ControlType.Color,title:\"Color\",defaultValue:\"rgba(0, 0, 0, 0.16)\",hidden:props=>!props.line},direction:{type:ControlType.Enum,title:\"Direction\",options:[\"horizontal\",\"diagonal-up\",\"diagonal-down\"],optionTitles:[\"Horizontal\",\"Diagonal Up\",\"Diagonal Down\"],defaultValue:\"diagonal-down\",displaySegmentedControl:true,segmentedControlDirection:\"vertical\",hidden:props=>!props.line}}}},hidden:props=>!props.colorEnabled}}},colorTitles:{type:ControlType.Array,title:\"↳ Color Titles\",control:{type:ControlType.String},defaultValue:[\"Color\"],hidden:props=>!props.swatches?.colorEnabled},colors:{type:ControlType.Array,title:\"↳ Color Values\",control:{type:ControlType.Object,controls:{name:{type:ControlType.String,title:\"Name\"},hex:{type:ControlType.Color,title:\"Color\"}}},defaultValue:[[\"green\",\"#D0EF79\"],[\"blue\",\"#053ECF\"],[\"pink\",\"#CC7BE4\"],[\"black\",\"#333233\"]],hidden:props=>!props.swatches?.colorEnabled},imageSwatches:{type:ControlType.Object,title:\"Image Swatches\",controls:{image:{type:ControlType.Boolean,title:\"Images\",defaultValue:false,enabledTitle:\"On\",disabledTitle:\"Off\",description:\"Show Image swatches for specific variants. [Learn more](https://framercommerce.com/resources/academy/variant-images)\"},imageStyles:{type:ControlType.Enum,title:\"Styles\",options:[\"inherit\",\"customize\"],optionTitles:[\"Inherit from Colors\",\"Customize\"],defaultValue:\"inherit\",displaySegmentedControl:true,segmentedControlDirection:\"vertical\",hidden:props=>!props.image},imageGap:{type:ControlType.Number,title:\"Gap\",defaultValue:8,min:0,step:4,hidden:props=>!props.image||props.imageStyles===\"inherit\"},imageHeight:{type:ControlType.Number,title:\"Height\",defaultValue:40,min:8,max:80,step:4,displayStepper:true,hidden:props=>!props.image||props.imageStyles===\"inherit\"},imageWidth:{type:ControlType.Number,title:\"Width\",defaultValue:40,min:8,max:80,step:4,displayStepper:true,hidden:props=>!props.image||props.imageStyles===\"inherit\"},imageRadius:{type:ControlType.BorderRadius,title:\"Radius\",defaultValue:\"50%\",hidden:props=>!props.image||props.imageStyles===\"inherit\"},imagePadding:{type:ControlType.Padding,title:\"Padding\",defaultValue:\"2px\",hidden:props=>!props.image||props.imageStyles===\"inherit\"},imageUnselected:{type:ControlType.Object,title:\"Default\",controls:{border:{type:ControlType.Object,title:\"Border\",controls:{borderWidth:{type:ControlType.FusedNumber,title:\"Width\",toggleKey:\"isMixed\",toggleTitles:[\"All\",\"Individual\"],valueKeys:[\"top\",\"right\",\"bottom\",\"left\"],valueLabels:[\"T\",\"R\",\"B\",\"L\"],min:0,defaultValue:1},borderStyle:{type:ControlType.Enum,title:\"Style\",options:[\"solid\",\"dashed\",\"dotted\",\"double\"],optionTitles:[\"Solid\",\"Dashed\",\"Dotted\",\"Double\"],defaultValue:\"solid\"},borderColor:{type:ControlType.Color,title:\"Color\",defaultValue:\"#FFFFFF\"}}},background:{type:ControlType.Color,title:\"BG\",defaultValue:\"#FFF\"}},hidden:props=>!props.image||props.imageStyles===\"inherit\"},imageHovered:{type:ControlType.Object,title:\"Hover\",controls:{border:{type:ControlType.Object,title:\"Border\",controls:{borderWidth:{type:ControlType.FusedNumber,title:\"Width\",toggleKey:\"isMixed\",toggleTitles:[\"All\",\"Individual\"],valueKeys:[\"top\",\"right\",\"bottom\",\"left\"],valueLabels:[\"T\",\"R\",\"B\",\"L\"],min:0,defaultValue:1},borderStyle:{type:ControlType.Enum,title:\"Style\",options:[\"solid\",\"dashed\",\"dotted\",\"double\"],optionTitles:[\"Solid\",\"Dashed\",\"Dotted\",\"Double\"],defaultValue:\"solid\"},borderColor:{type:ControlType.Color,title:\"Color\",defaultValue:\"rgba(0, 0, 0, 0.16)\"}}},background:{type:ControlType.Color,title:\"BG\",defaultValue:\"#FFF\"}},hidden:props=>!props.image||props.imageStyles===\"inherit\"},imageSelected:{type:ControlType.Object,title:\"Selected\",controls:{border:{type:ControlType.Object,title:\"Border\",controls:{borderWidth:{type:ControlType.FusedNumber,title:\"Width\",toggleKey:\"isMixed\",toggleTitles:[\"All\",\"Individual\"],valueKeys:[\"top\",\"right\",\"bottom\",\"left\"],valueLabels:[\"T\",\"R\",\"B\",\"L\"],min:0,defaultValue:1},borderStyle:{type:ControlType.Enum,title:\"Style\",options:[\"solid\",\"dashed\",\"dotted\",\"double\"],optionTitles:[\"Solid\",\"Dashed\",\"Dotted\",\"Double\"],defaultValue:\"solid\"},borderColor:{type:ControlType.Color,title:\"Color\",defaultValue:\"#000000\"}}},background:{type:ControlType.Color,title:\"BG\",defaultValue:\"#FFFFFF\"}},hidden:props=>!props.image||props.imageStyles===\"inherit\"},imageOutOfStock:{type:ControlType.Object,title:\"Out of Stock\",controls:{border:{type:ControlType.Object,title:\"Border\",controls:{borderWidth:{type:ControlType.FusedNumber,title:\"Width\",toggleKey:\"isMixed\",toggleTitles:[\"All\",\"Individual\"],valueKeys:[\"top\",\"right\",\"bottom\",\"left\"],valueLabels:[\"T\",\"R\",\"B\",\"L\"],min:0,defaultValue:1},borderStyle:{type:ControlType.Enum,title:\"Style\",options:[\"solid\",\"dashed\",\"dotted\",\"double\"],optionTitles:[\"Solid\",\"Dashed\",\"Dotted\",\"Double\"],defaultValue:\"solid\"},borderColor:{type:ControlType.Color,title:\"Color\",defaultValue:\"rgba(0, 0, 0, 0)\"}}},opacity:{type:ControlType.Number,title:\"Opacity\",defaultValue:.5,min:0,max:1,step:.1},background:{type:ControlType.Color,title:\"BG\",defaultValue:\"rgba(255, 255, 255, 0)\"},strike:{type:ControlType.Object,title:\"Strike\",controls:{line:{type:ControlType.Boolean,title:\"Line\",enabledTitle:\"Yes\",disabledTitle:\"No\",defaultValue:false},color:{type:ControlType.Color,title:\"Color\",defaultValue:\"rgba(0, 0, 0, 0.16)\",hidden:props=>!props.line},direction:{type:ControlType.Enum,title:\"Direction\",options:[\"horizontal\",\"diagonal-up\",\"diagonal-down\"],optionTitles:[\"Horizontal\",\"Diagonal Up\",\"Diagonal Down\"],defaultValue:\"diagonal-down\",displaySegmentedControl:true,segmentedControlDirection:\"vertical\",hidden:props=>!props.line}}}},hidden:props=>!props.image||props.imageStyles===\"inherit\"}}},imageTitles:{type:ControlType.Array,title:\"↳ Image Titles\",control:{type:ControlType.String},defaultValue:[],hidden:props=>!props.imageSwatches?.image},swatchImages:{type:ControlType.Array,title:\"↳ Image Values\",control:{type:ControlType.Object,controls:{name:{type:ControlType.String,title:\"Name\"},url:{type:ControlType.String,title:\"URL\"}}},defaultValue:[],hidden:props=>!props.imageSwatches?.image},variantImages:{type:ControlType.Object,title:\"Variant Images\",controls:{image:{type:ControlType.Boolean,title:\"Images\",defaultValue:false,enabledTitle:\"On\",disabledTitle:\"Off\",description:\"Show variant images for specific variants. Uses the variant's associated image from the product data.\"},imageStyles:{type:ControlType.Enum,title:\"Styles\",options:[\"inherit\",\"customize\"],optionTitles:[\"Inherit from Images\",\"Customize\"],defaultValue:\"inherit\",displaySegmentedControl:true,segmentedControlDirection:\"vertical\",hidden:props=>!props.image},imageGap:{type:ControlType.Number,title:\"Gap\",defaultValue:8,min:0,step:4,hidden:props=>!props.image||props.imageStyles===\"inherit\"},imageHeight:{type:ControlType.Number,title:\"Height\",defaultValue:40,min:8,max:80,step:4,displayStepper:true,hidden:props=>!props.image||props.imageStyles===\"inherit\"},imageWidth:{type:ControlType.Number,title:\"Width\",defaultValue:40,min:8,max:80,step:4,displayStepper:true,hidden:props=>!props.image||props.imageStyles===\"inherit\"},imageRadius:{type:ControlType.BorderRadius,title:\"Radius\",defaultValue:\"50%\",hidden:props=>!props.image||props.imageStyles===\"inherit\"},imagePadding:{type:ControlType.Padding,title:\"Padding\",defaultValue:\"2px\",hidden:props=>!props.image||props.imageStyles===\"inherit\"},imageUnselected:{type:ControlType.Object,title:\"Default\",controls:{border:{type:ControlType.Object,title:\"Border\",controls:{borderWidth:{type:ControlType.FusedNumber,title:\"Width\",toggleKey:\"isMixed\",toggleTitles:[\"All\",\"Individual\"],valueKeys:[\"top\",\"right\",\"bottom\",\"left\"],valueLabels:[\"T\",\"R\",\"B\",\"L\"],min:0,defaultValue:1},borderStyle:{type:ControlType.Enum,title:\"Style\",options:[\"solid\",\"dashed\",\"dotted\",\"double\"],optionTitles:[\"Solid\",\"Dashed\",\"Dotted\",\"Double\"],defaultValue:\"solid\"},borderColor:{type:ControlType.Color,title:\"Color\",defaultValue:\"#FFFFFF\"}}},background:{type:ControlType.Color,title:\"BG\",defaultValue:\"#FFF\"}},hidden:props=>!props.image||props.imageStyles===\"inherit\"},imageHovered:{type:ControlType.Object,title:\"Hover\",controls:{border:{type:ControlType.Object,title:\"Border\",controls:{borderWidth:{type:ControlType.FusedNumber,title:\"Width\",toggleKey:\"isMixed\",toggleTitles:[\"All\",\"Individual\"],valueKeys:[\"top\",\"right\",\"bottom\",\"left\"],valueLabels:[\"T\",\"R\",\"B\",\"L\"],min:0,defaultValue:1},borderStyle:{type:ControlType.Enum,title:\"Style\",options:[\"solid\",\"dashed\",\"dotted\",\"double\"],optionTitles:[\"Solid\",\"Dashed\",\"Dotted\",\"Double\"],defaultValue:\"solid\"},borderColor:{type:ControlType.Color,title:\"Color\",defaultValue:\"rgba(0, 0, 0, 0.16)\"}}},background:{type:ControlType.Color,title:\"BG\",defaultValue:\"#FFF\"}},hidden:props=>!props.image||props.imageStyles===\"inherit\"},imageSelected:{type:ControlType.Object,title:\"Selected\",controls:{border:{type:ControlType.Object,title:\"Border\",controls:{borderWidth:{type:ControlType.FusedNumber,title:\"Width\",toggleKey:\"isMixed\",toggleTitles:[\"All\",\"Individual\"],valueKeys:[\"top\",\"right\",\"bottom\",\"left\"],valueLabels:[\"T\",\"R\",\"B\",\"L\"],min:0,defaultValue:1},borderStyle:{type:ControlType.Enum,title:\"Style\",options:[\"solid\",\"dashed\",\"dotted\",\"double\"],optionTitles:[\"Solid\",\"Dashed\",\"Dotted\",\"Double\"],defaultValue:\"solid\"},borderColor:{type:ControlType.Color,title:\"Color\",defaultValue:\"#000000\"}}},background:{type:ControlType.Color,title:\"BG\",defaultValue:\"#FFFFFF\"}},hidden:props=>!props.image||props.imageStyles===\"inherit\"},imageOutOfStock:{type:ControlType.Object,title:\"Out of Stock\",controls:{border:{type:ControlType.Object,title:\"Border\",controls:{borderWidth:{type:ControlType.FusedNumber,title:\"Width\",toggleKey:\"isMixed\",toggleTitles:[\"All\",\"Individual\"],valueKeys:[\"top\",\"right\",\"bottom\",\"left\"],valueLabels:[\"T\",\"R\",\"B\",\"L\"],min:0,defaultValue:1},borderStyle:{type:ControlType.Enum,title:\"Style\",options:[\"solid\",\"dashed\",\"dotted\",\"double\"],optionTitles:[\"Solid\",\"Dashed\",\"Dotted\",\"Double\"],defaultValue:\"solid\"},borderColor:{type:ControlType.Color,title:\"Color\",defaultValue:\"rgba(0, 0, 0, 0)\"}}},opacity:{type:ControlType.Number,title:\"Opacity\",defaultValue:.5,min:0,max:1,step:.1},background:{type:ControlType.Color,title:\"BG\",defaultValue:\"rgba(255, 255, 255, 0)\"},strike:{type:ControlType.Object,title:\"Strike\",controls:{line:{type:ControlType.Boolean,title:\"Line\",enabledTitle:\"Yes\",disabledTitle:\"No\",defaultValue:false},color:{type:ControlType.Color,title:\"Color\",defaultValue:\"rgba(0, 0, 0, 0.16)\",hidden:props=>!props.line},direction:{type:ControlType.Enum,title:\"Direction\",options:[\"horizontal\",\"diagonal-up\",\"diagonal-down\"],optionTitles:[\"Horizontal\",\"Diagonal Up\",\"Diagonal Down\"],defaultValue:\"diagonal-down\",displaySegmentedControl:true,segmentedControlDirection:\"vertical\",hidden:props=>!props.line}}}},hidden:props=>!props.image||props.imageStyles===\"inherit\"}}},variantImageTitles:{type:ControlType.Array,title:\"↳ Variant Image Titles\",control:{type:ControlType.String},defaultValue:[],hidden:props=>!props.variantImages?.image},// Add up to 100 image props for variant images\n...(()=>{const imageControls={};for(let i=1;i<=100;i++){imageControls[`image${i}`]={type:ControlType.Image,title:`↳ Image ${i}`,hidden:props=>{if(!props.variantImages?.image)return true;if(i===1)return false;// Only show if previous image is set\nreturn!props[`image${i-1}`];}};}return imageControls;})()});FC_ProductVariants.defaultProps={shopifyProductID:\"\",variantImageIds:\"\",variants:\"\",images:{imageTrigger:\"None\",imageChange:true,offsetY:0},behaviorConfigs:{autoSelectFirst:false,showSingleVariants:false,// showSingleGroups: false,\nselectOutOfStock:false,filterVariants:{variantGroups:\"all\",variantTitles:[]},onClickAction:{action:\"update\",purchaseType:\"add to cart\",triggerCart:true}},style:\"Buttons\",buttonConfigs:{gap:8,radius:\"4px\",padding:\"8px\",direction:\"horizontal\",width:false,unselected:{font:{fontSize:14,fontWeight:500,fontFamily:\"Inter\"},color:\"rgba(0, 0, 0, 1)\",background:\"rgba(255, 255, 255, 1)\",border:\"1px solid rgba(0,0,0,0.08)\",textTransform:\"None\"},hovered:{font:{fontSize:14,fontWeight:500,fontFamily:\"Inter\"},color:\"rgba(0, 0, 0, 1)\",background:\"rgba(0, 0, 0, 0.03)\",border:\"1px solid rgba(0, 0, 0, 1)\",textTransform:\"None\"},selected:{font:{fontSize:14,fontWeight:500,fontFamily:\"Inter\"},color:\"rgba(255, 255, 255, 1)\",background:\"rgba(0, 0, 0, 1)\",border:\"1px solid rgba(0, 0, 0, 1)\",textTransform:\"None\"},outOfStock:{font:{fontSize:14,fontWeight:500,fontFamily:\"Inter\"},color:\"rgba(0, 0, 0, 0.40)\",background:\"rgba(0, 0, 0, 0.08)\",border:\"1px solid rgba(255, 255, 255, 1)\",textTransform:\"None\",preview:false,strike:{line:false,size:\"container\",color:\"rgba(0, 0, 0, 0.16)\",direction:\"diagonal-down\"}}},dropdownConfigs:{font:undefined,textTransform:\"None\",unselected:{text:\"Select {{variant}}\",color:\"rgba(0, 0, 0, 0.48)\",background:\"rgba(255, 255, 255, 1)\",border:{borderWidth:1,borderStyle:\"solid\",borderColor:\"rgba(0,0,0,0.08)\"}},selected:{color:\"rgba(0, 0, 0, 1)\",background:\"rgba(255, 255, 255, 1)\",border:{borderWidth:1,borderStyle:\"solid\",borderColor:\"rgba(0,0,0,1)\"}},hover:{color:\"rgba(0, 0, 0, 1)\",background:\"rgba(0, 0, 0, 0.16)\",border:{borderWidth:1,borderStyle:\"solid\",borderColor:\"rgba(0, 0, 0, 1)\"}},focus:{width:2,offset:2},radius:\"4px\",padding:\"16px 16px 16px 16px\",icon:{type:\"default\",color:\"rgba(0, 0, 0, 1)\",size:12,weight:2}},containerConfigs:{padding:\"0px\",gap:24,gap2:8,direction:\"vertical\"},titleConfigs:{visible:true,font:undefined,color:\"rgba(0, 0, 0, 1)\",gap:8,display:\"{{Option}}\",textTransform:\"None\"},selectedConfigs:{visible:false,gap:8,font:undefined,color:\"rgba(0, 0, 0, 1)\",emptyVisible:true,emptyText:\"Select {{Option Value}}\",textTransform:\"None\"},swatches:{colorEnabled:true,gap:8,height:40,width:40,radius:\"50%\",padding:2,unselected:{border:{borderWidth:2,borderStyle:\"solid\",borderColor:\"rgba(255, 255, 255, 1)\"},background:\"rgba(255, 255, 255, 0)\"},hovered:{border:{borderWidth:2,borderStyle:\"solid\",borderColor:\"rgba(0,0,0,0.16)\"},background:\"rgba(255, 255, 255, 0)\"},selected:{border:{borderWidth:2,borderStyle:\"solid\",borderColor:\"rgba(0, 0, 0, 1)\"},background:\"rgba(255, 255, 255, 0)\"},outOfStock:{border:{borderWidth:2,borderStyle:\"solid\",borderColor:\"rgba(255, 255, 255, 1)\"},opacity:0,background:\"rgba(255, 255, 255, 0)\",strike:{line:false,color:\"rgba(0, 0, 0, 0.16)\",direction:\"diagonal-down\"}}},imageSwatches:{image:false,imageStyles:\"inherit\",imageGap:8,imageHeight:40,imageWidth:40,imageRadius:\"50%\",imagePadding:2,imageUnselected:{border:{borderWidth:2,borderStyle:\"solid\",borderColor:\"rgba(255, 255, 255, 1)\"},background:\"rgba(255, 255, 255, 0)\"},imageHovered:{border:{borderWidth:2,borderStyle:\"solid\",borderColor:\"rgba(0, 0, 0, 0.20)\"},background:\"rgba(255, 255, 255, 0)\"},imageSelected:{border:{borderWidth:2,borderStyle:\"solid\",borderColor:\"rgba(0, 0, 0, 1)\"},background:\"rgba(255, 255, 255, 0)\"},imageOutOfStock:{border:{borderWidth:2,borderStyle:\"solid\",borderColor:\"rgba(255, 255, 255, 1)\"},opacity:0,background:\"rgba(255, 255, 255, 0)\",strike:{line:false,color:\"rgba(0, 0, 0, 0.16)\",direction:\"diagonal-down\"}}},imageTitles:[],variantImageTitles:[],variantImages:{image:false,imageStyles:\"inherit\",imageGap:8,imageHeight:40,imageWidth:40,imageRadius:\"50%\",imagePadding:2,imageUnselected:{border:{borderWidth:2,borderStyle:\"solid\",borderColor:\"rgba(255, 255, 255, 1)\"},background:\"rgba(255, 255, 255, 0)\"},imageHovered:{border:{borderWidth:2,borderStyle:\"solid\",borderColor:\"rgba(0, 0, 0, 0.20)\"},background:\"rgba(255, 255, 255, 0)\"},imageSelected:{border:{borderWidth:2,borderStyle:\"solid\",borderColor:\"rgba(0, 0, 0, 1)\"},background:\"rgba(255, 255, 255, 0)\"},imageOutOfStock:{border:{borderWidth:2,borderStyle:\"solid\",borderColor:\"rgba(255, 255, 255, 1)\"},opacity:0,background:\"rgba(255, 255, 255, 0)\",strike:{line:false,color:\"rgba(0, 0, 0, 0.16)\",direction:\"diagonal-down\"}}}};\nexport const __FramerMetadata__ = {\"exports\":{\"default\":{\"type\":\"reactComponent\",\"name\":\"FC_ProductVariants\",\"slots\":[],\"annotations\":{\"framerContractVersion\":\"1\",\"framerDisableUnlink\":\"*\"}},\"__FramerMetadata__\":{\"type\":\"variable\"}}}\n//# sourceMappingURL=./FC_ProductVariants_v1.map","/*\n * Framer Commerce\n * Confidential and Proprietary - All Rights Reserved\n * Unauthorized use, reproduction, distribution, or disclosure of this\n * source code or any related information is strictly prohibited.\n *\n * This software is the exclusive property of Framer Commerce (\"Company\").\n * It is considered highly confidential and proprietary information.\n *\n * Any use, copying, modification, distribution, or sharing of this software,\n * in whole or in part, without the express written permission of the Company\n * is strictly prohibited and may result in legal action.\n *\n * DISCLAIMER: This software does not provide any express or\n * implied warranties, including, but not limited to, the implied warranties\n * of merchantability and fitness for a particular purpose. In no event shall\n * Framer Commerce be liable for any direct, indirect, incidental, special,\n * exemplary, or consequential damages (including, but not limited to, procurement\n * of substitute goods or services; loss of use, data, or profits; or business\n * interruption) however caused and on any theory of liability, whether in\n * contract, strict liability, or tort (including negligence or otherwise)\n * arising in any way out of the use of this software, even if advised of\n * the possibility of such damage.\n *\n * Any unauthorized possession, use, copying, distribution, or dissemination\n * of this software will be considered a breach of confidentiality and may\n * result in legal action.\n *\n * For inquiries, contact:\n * Framer Commerce\n * Email: hello@framercommerce.com\n *\n * © 2025 Butter Supply Inc. All Rights Reserved.\n */import{jsx as _jsx}from\"react/jsx-runtime\";import React,{useState,useEffect,useRef}from\"react\";import{addPropertyControls,ControlType,RenderTarget}from\"framer\";import{sanitizeChildrenRecursively}from\"https://xn----9sbmqji2czbya.xn--p1ai/__framerusercontent/modules/Da0ApllLKQHSw8djEYKs/NKlmeTJYy3YIy3O2qsS9/cloning.js\";/**\n * @framerDisableUnlink\n */export default function FC_ProductStockStatus(props){// console.log(\"🟢 Stock Status - Component mounted/rendered\");\n// Handle canvas preview\nif(RenderTarget.current()===RenderTarget.canvas){// Return the first visible instance based on show/hide props\nif(props.showAboveThreshold){return /*#__PURE__*/_jsx(\"div\",{style:{opacity:1},children:props.aboveThresholdComponent});}if(props.showBelowThreshold){return /*#__PURE__*/_jsx(\"div\",{style:{opacity:1},children:props.belowThresholdComponent});}if(props.showOutOfStock){return /*#__PURE__*/_jsx(\"div\",{style:{opacity:1},children:props.outOfStockComponent});}// If no instances are set to show, return an empty div\nreturn /*#__PURE__*/_jsx(\"div\",{style:{opacity:1}});}const{threshold,aboveThresholdComponent,belowThresholdComponent,outOfStockComponent,showTotalInventory,showOutOfStock,showAboveThreshold,showBelowThreshold}=props;const[quantityAvailable,setQuantityAvailable]=useState(null);const[hasSelectedVariant,setHasSelectedVariant]=useState(false);const[totalInventory,setTotalInventory]=useState(null);const[isInfiniteInventory,setIsInfiniteInventory]=useState(false);const selectedVariantIdRef=useRef(null);const[autoSelectFirst,setAutoSelectFirst]=useState(false);const oldInventoryRef=useRef(null);useEffect(()=>{const handleVariantOptionSelected=e=>{// console.log(\"variant_option_selected\", e.detail)\n// console.log(\"variant_option_selected, isPurchaseAction\", e.detail.isPurchaseAction)\n// Check if this event is for our product\nconst eventProductId=e.detail?.productId;const expectedProductId=`gid://shopify/Product/${props.shopifyProductID}`;if(eventProductId&&eventProductId!==expectedProductId){//console.log(\"Event not for this product\", eventProductId, expectedProductId)\nreturn;}if(e.detail?.isPurchaseAction){// console.log(\"Purchase Action, returning\")\nreturn;}// console.log(\"selectedVariantIdRef\", selectedVariantIdRef)\n// If we have a complete variant selection, skip partial selection handling\nif(e.detail?.isCompleteVariant&&e.detail?.allOptionsSelected){// console.log(\"Complete variant selection detected, skipping partial selection handling\")\nreturn;}// If we already have a selected variant and this is a partial selection, skip it\nif(selectedVariantIdRef.current&&!e.detail?.isCompleteVariant){// console.log(\"Already have selected variant, skipping partial selection\")\nreturn;}if(e.detail?.optionName&&e.detail?.value){const selections={[e.detail.optionName]:e.detail.value};// console.log(\n//     \"setting partialSelections from individual option\",\n//     e.detail.optionName,\n//     e.detail.value\n// )\nconst matchingProduct=window.shopXtools?.products.find(({node:product})=>product.id===`gid://shopify/Product/${props.shopifyProductID}`);if(matchingProduct){//console.log(\"matchingProduct in option selected event\", matchingProduct)\n// Filter variants that match the partial selections\nconst product=matchingProduct.node;// console.log(\"product in option selected event\", product)\n// console.log(\"selections in option selected event\", selections)\nconst matchingVariants=product?.variants?.edges.filter(({node:variant})=>{return variant?.selectedOptions?.every(option=>{// If this option is in our partial selections, it must match\nconst selectedValue=selections[option.name];// console.log(\"partialSelections[option.name]\", selectedValue);\n// If this option is selected, it must match\nif(selectedValue){return selectedValue===option.value;}// If not in partial selections, any value is fine\nreturn true;});});if(matchingVariants.length>0){//console.log(\"matchingVariants\", matchingVariants)\n// Calculate min and max prices for matching variants\nconst quantities=matchingVariants.map(({node:variant})=>variant.quantityAvailable||0).filter(quantity=>quantity>0);//console.log(\"quantities\", quantities)\n// Sum up the quantities\nconst totalQuantity=quantities.reduce((sum,quantity)=>sum+quantity,0);console.log(\"Total Quantity:\",totalQuantity);oldInventoryRef.current=totalQuantity;setQuantityAvailable(totalQuantity);setHasSelectedVariant(true);return;}}}};// document.addEventListener(\n//     \"__variant_option_selected\",\n//     handleVariantOptionSelected\n// )\ndocument.addEventListener(\"variant_option_selected\",handleVariantOptionSelected);return()=>{// document.removeEventListener(\n//     \"__variant_option_selected\",\n//     handleVariantOptionSelected\n// )\ndocument.removeEventListener(\"variant_option_selected\",handleVariantOptionSelected);};},[props.shopifyProductID]);useEffect(()=>{const handleVariantChange=e=>{// console.log(\n//     \"🟢 Stock Status - Variant changed event received:\",\n//     e.detail\n// )\nconst activeVariant=e.detail;const expectedProductId=`gid://shopify/Product/${props.shopifyProductID}`;if(!activeVariant?.productId||activeVariant.productId!==expectedProductId||e.detail.onClickAction===\"purchase\"){//console.log(\"🟢 Stock Status - Skipping variant change, product ID mismatch\");\nreturn;}// console.log(\n//     \"🟢 Stock Status - Setting quantity for variant:\",\n//     activeVariant\n// )\n// Always update the selected variant ID and quantity when we receive a complete variant\nselectedVariantIdRef.current=activeVariant.id;oldInventoryRef.current=activeVariant.quantityAvailable;setQuantityAvailable(activeVariant.quantityAvailable);setHasSelectedVariant(true);};document.addEventListener(\"product__active-variant__changed\",handleVariantChange);return()=>{document.removeEventListener(\"product__active-variant__changed\",handleVariantChange);};},[props.shopifyProductID]);useEffect(()=>{const handleCurrencyChange=event=>{if(!event.detail){return;}//console.log(\"currency_changed\", event.detail)\nconst savedInventory=oldInventoryRef.current;//console.log(\"🟢 Stock Status - Restoring inventory from oldInventoryRef\", savedInventory)\nif(savedInventory===null||savedInventory===undefined)return;// Restore the saved inventory value\nsetQuantityAvailable(savedInventory);setHasSelectedVariant(true);};window.addEventListener(\"currency_changed\",handleCurrencyChange);return()=>{window.removeEventListener(\"currency_changed\",handleCurrencyChange);};},[props.shopifyProductID]);useEffect(()=>{const processProduct=product=>{const variants=product.variants.edges.map(edge=>edge.node)||[];const hasVariants=variants.length>1;const hasInfiniteInventory=variants.some(variant=>variant.availableForSale&&variant.quantityAvailable<=0);const total=product.variants.edges.reduce((sum,{node})=>{return sum+(node.quantityAvailable||0);},0);// console.log(\"Processing Product (no active variant):\", {\n//     total,\n//     hasVariants,\n//     hasInfiniteInventory,\n// })\nsetTotalInventory(total);setQuantityAvailable(total);oldInventoryRef.current=total;setHasSelectedVariant(!hasVariants);setIsInfiniteInventory(hasInfiniteInventory||product.availableForSale&&total===0);};const handleProductsReady=e=>{// console.log(\"🟢 Stock Status - Products ready event received\");\nif(selectedVariantIdRef.current){// console.log(\n//     \"🟢 Stock Status - Already have selected variant, skipping\"\n// )\nreturn;}if(oldInventoryRef.current){//console.log(\"🟢 Stock Status - oldInventoryRef exists, returning\", oldInventoryRef.current)\nreturn;}if(Array.isArray(e.detail.products)){const matchingProduct=e.detail.products.find(({node:product})=>product.id===`gid://shopify/Product/${props.shopifyProductID}`);if(matchingProduct){const variantId=selectedVariantIdRef.current;if(variantId){//console.log(\"variantId\", variantId)\nconst matchingVariant=matchingProduct.node.variants.edges.find(({node})=>node.id===variantId)?.node;if(matchingVariant){setQuantityAvailable(matchingVariant.quantityAvailable);setHasSelectedVariant(true);return;}}if(autoSelectFirst){// console.log(\"🟢 Stock Status - Auto-selecting first variant\");\nconst firstVariant=matchingProduct.node.variants.edges[0]?.node;if(firstVariant){selectedVariantIdRef.current=firstVariant.id;setQuantityAvailable(firstVariant.quantityAvailable);setHasSelectedVariant(true);return;}}// console.log(\"No active variant, calculating total inventory\")\nprocessProduct(matchingProduct.node);}}};if(window?.shopXtools?.products&&Array.isArray(window.shopXtools.products)){//console.log(\"🟢 Stock Status - Products ready in window\");\nconst matchingProduct=window.shopXtools.products.find(({node:product})=>product.id===`gid://shopify/Product/${props.shopifyProductID}`);if(matchingProduct){const variantId=selectedVariantIdRef.current;if(variantId){//console.log(\"[WINDOW] variantId\", variantId)\nconst matchingVariant=matchingProduct.node.variants.edges.find(({node})=>node.id===variantId)?.node;if(matchingVariant){//console.log(\"[WINDOW] quantity for variantId\", (matchingVariant as any).quantityAvailable)\nsetQuantityAvailable(matchingVariant.quantityAvailable);oldInventoryRef.current=matchingVariant.quantityAvailable;setHasSelectedVariant(true);return;}}// Prioritize autoSelectFirst if it's set to true\nif(autoSelectFirst){//console.log(\"[WINDOW] Auto-selecting first variant\")\nconst firstAvailableVariant=matchingProduct.node.variants.edges.find(edge=>edge.node.availableForSale)?.node;if(firstAvailableVariant){selectedVariantIdRef.current=firstAvailableVariant.id;setQuantityAvailable(firstAvailableVariant.quantityAvailable);oldInventoryRef.current=firstAvailableVariant.quantityAvailable;setHasSelectedVariant(true);// console.log(\n//    \"[WINDOW] Selected variant:\",\n//    firstAvailableVariant\n// )\nreturn;}}if(!autoSelectFirst&&!variantId){//autoSelectReceived &&\n//console.log(\"[WINDOW] showing total for product\")\nprocessProduct(matchingProduct.node);}// console.log(\"[WINDOW] showing total for product\")\n// processProduct(matchingProduct.node)\n}}const handleAutoSelectFlag=e=>{//console.log(\"Auto Select event received as:\", e.detail.autoSelectFirst);\nif(e.detail.shopifyProductID!==`gid://shopify/Product/${props.shopifyProductID}`){return;}setAutoSelectFirst(e.detail.autoSelectFirst);// setAutoSelectReceived(true);\n};//console.log(\"🟢 Stock Status - Adding event listeners\");\ndocument.addEventListener(\"data__products-ready\",handleProductsReady);document.addEventListener(\"auto_select_first_flag\",handleAutoSelectFlag);return()=>{//console.log(\"🟢 Stock Status - Removing event listeners\");\ndocument.removeEventListener(\"data__products-ready\",handleProductsReady);document.removeEventListener(\"auto_select_first_flag\",handleAutoSelectFlag);};},[props.shopifyProductID,autoSelectFirst]);const getStockMessage=()=>{// Prioritize specific variant quantity over total inventory when we have a selected variant\nconst displayQuantity=hasSelectedVariant&&selectedVariantIdRef.current?quantityAvailable:totalInventory;// console.log(\"displayQuantity\", displayQuantity)\nif(displayQuantity<=0&&!isInfiniteInventory){if(showOutOfStock){return outOfStockComponent;}else{return null;}}if(isInfiniteInventory||displayQuantity>=threshold){if(showAboveThreshold){return aboveThresholdComponent;}else{return null;}}if(showBelowThreshold){return belowThresholdComponent;}else{return null;}};// Don't hide until we've had a chance to determine if we should show\nconst isHidden=!showTotalInventory&&!hasSelectedVariant;const styles={opacity:isHidden?0:1,transition:\"opacity 0.2s ease-in-out\",userSelect:isHidden?\"none\":\"auto\",visibility:isHidden?\"hidden\":\"visible\"};const content=getStockMessage();// console.log(\"Stock Status content\", content)\n// Normalize the component instance (Canvas vs Production)\nconst mainInstance=Array.isArray(content)?content[0]:content;// console.log(\"Stock mainInstance\", mainInstance)\nconst sanitizedMainInstance=sanitizeChildrenRecursively(mainInstance);// console.log(\"Stock sanitizedMainInstance\", sanitizedMainInstance)\nif(!sanitizedMainInstance||!/*#__PURE__*/React.isValidElement(sanitizedMainInstance)){return /*#__PURE__*/_jsx(\"div\",{style:styles,\"aria-hidden\":isHidden});}const clonedContainer=/*#__PURE__*/React.cloneElement(sanitizedMainInstance,{style:{...mainInstance.props?.style||{}}});// console.log(\"Stock clonedContainer\", clonedContainer)\nreturn /*#__PURE__*/_jsx(\"div\",{style:styles,\"aria-hidden\":isHidden,children:clonedContainer});}FC_ProductStockStatus.defaultProps={shopifyProductID:\"\",threshold:10,showTotalInventory:false,showOutOfStock:false,showAboveThreshold:true,showBelowThreshold:true};addPropertyControls(FC_ProductStockStatus,{shopifyProductID:{type:ControlType.String,title:\"Product ID\"},threshold:{type:ControlType.Number,title:\"Threshold\",defaultValue:10,min:0},showAboveThreshold:{type:ControlType.Boolean,title:\"Above Threshold\",defaultValue:true,enabledTitle:\"Show\",disabledTitle:\"Hide\"},aboveThresholdComponent:{type:ControlType.ComponentInstance,title:\"↳ Instance\",required:true,hidden:props=>!props.showAboveThreshold},showBelowThreshold:{type:ControlType.Boolean,title:\"Below Threshold\",defaultValue:true,enabledTitle:\"Show\",disabledTitle:\"Hide\"},belowThresholdComponent:{type:ControlType.ComponentInstance,title:\"↳ Instance\",required:true,hidden:props=>!props.showBelowThreshold},showOutOfStock:{type:ControlType.Boolean,title:\"Out of Stock\",defaultValue:false,enabledTitle:\"Show\",disabledTitle:\"Hide\"},outOfStockComponent:{type:ControlType.ComponentInstance,title:\"↳ Instance\",required:true,hidden:props=>!props.showOutOfStock},showTotalInventory:{type:ControlType.Boolean,title:\"No variant selected\",description:\"When a product has variants and none are selected, show the total inventory available, or hide until a variant is selected\",defaultValue:false,enabledTitle:\"Show\",disabledTitle:\"Hide\"}});\nexport const __FramerMetadata__ = {\"exports\":{\"default\":{\"type\":\"reactComponent\",\"name\":\"FC_ProductStockStatus\",\"slots\":[],\"annotations\":{\"framerDisableUnlink\":\"\",\"framerContractVersion\":\"1\"}},\"__FramerMetadata__\":{\"type\":\"variable\"}}}\n//# sourceMappingURL=./FC_ProductStockStatus.map","/*\n * Framer Commerce\n * Confidential and Proprietary - All Rights Reserved\n * Unauthorized use, reproduction, distribution, or disclosure of this\n * source code or any related information is strictly prohibited.\n *\n * This software is the exclusive property of Framer Commerce (\"Company\").\n * It is considered highly confidential and proprietary information.\n *\n * Any use, copying, modification, distribution, or sharing of this software,\n * in whole or in part, without the express written permission of the Company\n * is strictly prohibited and may result in legal action.\n *\n * DISCLAIMER: This software does not provide any express or\n * implied warranties, including, but not limited to, the implied warranties\n * of merchantability and fitness for a particular purpose. In no event shall\n * Framer Commerce be liable for any direct, indirect, incidental, special,\n * exemplary, or consequential damages (including, but not limited to, procurement\n * of substitute goods or services; loss of use, data, or profits; or business\n * interruption) however caused and on any theory of liability, whether in\n * contract, strict liability, or tort (including negligence or otherwise)\n * arising in any way out of the use of this software, even if advised of\n * the possibility of such damage.\n *\n * Any unauthorized possession, use, copying, distribution, or dissemination\n * of this software will be considered a breach of confidentiality and may\n * result in legal action.\n *\n * For inquiries, contact:\n * Framer Commerce\n * Email: hello@framercommerce.com\n *\n * © 2025 Butter Supply Inc. All Rights Reserved.\n */import{jsx as _jsx}from\"react/jsx-runtime\";import{addPropertyControls,ControlType,RenderTarget}from\"framer\";import{useState,useEffect,useCallback,useRef}from\"react\";// Disable console logs in production\nconst DEBUG=false;/**\n * @framerDisableUnlink\n */export default function FC_ProductInventoryCounter(props){// console.log(\"🔵 Inventory Counter - Component mounted/rendered\");\n// Handle canvas preview\nif(RenderTarget.current()===RenderTarget.canvas){return /*#__PURE__*/_jsx(\"div\",{style:{display:\"inline-flex\",width:\"auto\",boxSizing:\"border-box\",alignItems:\"center\",justifyContent:\"center\",flexShrink:0,flexGrow:0},children:/*#__PURE__*/_jsx(\"p\",{style:{...props.font,color:props.textColor,margin:0,padding:0,lineHeight:1,whiteSpace:\"nowrap\"},children:props.textFormat.replace(\"{{inventory}}\",\"5\")})});}const{shopifyProductID,showOutOfStock,outOfStockText,noLimitText}=props;const[quantityAvailable,setQuantityAvailable]=useState(null);const[hasSelectedVariant,setHasSelectedVariant]=useState(false);const selectedVariantIdRef=useRef(null);const[autoSelectFirst,setAutoSelectFirst]=useState(false);const[partialSelections,setPartialSelections]=useState({});const oldInventoryRef=useRef(null);// Debug logging for selectedVariantIdRef changes\n// useEffect(() => {\n//     console.log(\"🔵 Inventory Counter - selectedVariantIdRef.current:\", selectedVariantIdRef.current);\n// }, [selectedVariantIdRef.current]);\nuseEffect(()=>{const handleVariantOptionSelected=e=>{// console.log(\"variant_option_selected\", e.detail)\n// console.log(\"variant_option_selected\", e.detail.isPurchaseAction)\n// console.log(\"variant_option_selected\", e.detail)\n// Check if this event is for our product\nconst eventProductId=e.detail?.productId;const expectedProductId=`gid://shopify/Product/${props.shopifyProductID}`;if(eventProductId&&eventProductId!==expectedProductId){//console.log(\"Event not for this product\", eventProductId, expectedProductId)\nreturn;}if(e.detail?.isPurchaseAction){// console.log(\"Purchase Action, returning\")\nreturn;}// console.log(\"selectedVariantIdRef.current\", selectedVariantIdRef.current)\n// if (selectedVariantIdRef) return\n// If we have a complete variant selection, skip partial selection handling\nif(e.detail?.isCompleteVariant&&e.detail?.allOptionsSelected){// console.log(\"Complete variant selection detected, skipping partial selection handling\")\nreturn;}// If we already have a selected variant and this is a partial selection, skip it\nif(selectedVariantIdRef.current&&!e.detail?.isCompleteVariant){// console.log(\"Already have selected variant, skipping partial selection\")\nreturn;}if(e.detail?.optionName&&e.detail?.value){setPartialSelections({[e.detail.optionName]:e.detail.value});//console.log(\"setting partialSelections from individual option\", e.detail.optionName, e.detail.value)\nconst selections={[e.detail.optionName]:e.detail.value};//console.log(\"setting partialSelections from individual option\", e.detail.optionName, e.detail.value)\nconst matchingProduct=window.shopXtools?.products.find(({node:product})=>product.id===`gid://shopify/Product/${props.shopifyProductID}`);if(matchingProduct){//console.log(\"matchingProduct in option selected event\", matchingProduct)\n// Filter variants that match the partial selections\nconst product=matchingProduct.node;// console.log(\"product in option selected event\", product)\n// console.log(\"selections in option selected event\", selections)\nconst matchingVariants=product?.variants?.edges.filter(({node:variant})=>{return variant?.selectedOptions?.every(option=>{// If this option is in our partial selections, it must match\nconst selectedValue=selections[option.name];// console.log(\"partialSelections[option.name]\", selectedValue);\n// If this option is selected, it must match\nif(selectedValue){return selectedValue===option.value;}// If not in partial selections, any value is fine\nreturn true;});});if(matchingVariants.length>0){//console.log(\"matchingVariants\", matchingVariants)\n// Calculate min and max prices for matching variants\nconst quantities=matchingVariants.map(({node:variant})=>variant.quantityAvailable||0).filter(quantity=>quantity>0);//console.log(\"quantities\", quantities)\n// Sum up the quantities\nconst totalQuantity=quantities.reduce((sum,quantity)=>sum+quantity,0);// console.log(\"Total Quantity:\", totalQuantity);\noldInventoryRef.current=totalQuantity;setQuantityAvailable(totalQuantity);setHasSelectedVariant(true);return;}}}};// document.addEventListener(\n//     \"__variant_option_selected\",\n//     handleVariantOptionSelected\n// )\ndocument.addEventListener(\"variant_option_selected\",handleVariantOptionSelected);return()=>{// document.removeEventListener(\n//     \"__variant_option_selected\",\n//     handleVariantOptionSelected\n// )\ndocument.removeEventListener(\"variant_option_selected\",handleVariantOptionSelected);};},[props.shopifyProductID]);useEffect(()=>{const handleCurrencyChange=event=>{if(!event.detail){return;}//console.log(\"currency_changed\", event.detail)\nconst savedInventory=oldInventoryRef.current;//console.log(\"🟢 Stock Status - Restoring inventory from oldInventoryRef\", savedInventory)\nif(savedInventory===null||savedInventory===undefined)return;// Restore the saved inventory value\nsetQuantityAvailable(savedInventory);setHasSelectedVariant(true);};window.addEventListener(\"currency_changed\",handleCurrencyChange);return()=>{window.removeEventListener(\"currency_changed\",handleCurrencyChange);};},[props.shopifyProductID]);useEffect(()=>{const handleVariantChange=e=>{// console.log(\n//     \"🔵 Inventory Counter - Variant changed event received:\",\n//     e.detail\n// )\nconst activeVariant=e.detail;const expectedProductId=`gid://shopify/Product/${shopifyProductID}`;if(!activeVariant?.productId||activeVariant.productId!==expectedProductId||e.detail.onClickAction===\"purchase\"){//console.log(\"🔵 Inventory Counter - Skipping variant change, product ID mismatch\");\nreturn;}const inventory=activeVariant?.quantityAvailable;// console.log(\n//     \"🔵 Inventory Counter - Active Variant Inventory:\",\n//     inventory\n// )\n// Always update the selected variant ID and quantity when we receive a complete variant\nselectedVariantIdRef.current=activeVariant.id;oldInventoryRef.current=activeVariant.quantityAvailable;setHasSelectedVariant(true);setQuantityAvailable(inventory);// Clear any partial selections since we now have a complete variant\nsetPartialSelections({});};// console.log(\"🔵 Inventory Counter - Adding product__active-variant__changed event listener\");\ndocument.addEventListener(\"product__active-variant__changed\",handleVariantChange);return()=>{// console.log(\"🔵 Inventory Counter - Removing product__active-variant__changed event listener\");\ndocument.removeEventListener(\"product__active-variant__changed\",handleVariantChange);};},[props.shopifyProductID]);useEffect(()=>{const handleProductsReady=e=>{// console.log(\"🔵 Inventory Counter - Products ready event received\");\nif(selectedVariantIdRef.current){// console.log(\n//     \"🔵 Inventory Counter - Already have selected variant, skipping\"\n// )\nreturn;}//console.log(\"🟢 Inventory Counter - oldInventoryRef\", oldInventoryRef.current)\nif(oldInventoryRef.current){//console.log(\"🟢 Inventory Counter - oldInventoryRef exists, returning\", oldInventoryRef.current)\nreturn;}if(Array.isArray(e.detail.products)){const matchingProduct=e.detail.products.find(({node:product})=>product.id===`gid://shopify/Product/${shopifyProductID}`);if(matchingProduct){const variantId=selectedVariantIdRef.current;//console.log(\"variantId\", variantId)\nif(variantId){const matchingVariant=matchingProduct.node.variants.edges.find(({node})=>node.id===variantId)?.node;if(matchingVariant){//console.log(\"Found matching variant, setting quantity:\", matchingVariant.quantityAvailable)\nsetQuantityAvailable(matchingVariant.quantityAvailable);//console.log(\"quantity for variantId\", matchingVariant.quantityAvailable)\nsetHasSelectedVariant(true);return;// Important: return here to prevent total inventory calculation\n}}// If autoSelectFirst is true, pick the first variant\nif(autoSelectFirst){//console.log(\"🔵 Inventory Counter - Auto-selecting first variant\");\nconst firstVariant=matchingProduct.node.variants.edges[0]?.node;if(firstVariant){selectedVariantIdRef.current=firstVariant.id;setQuantityAvailable(firstVariant.quantityAvailable);setHasSelectedVariant(true);return;}}// Only calculate total inventory if no variant is selected\nif(!autoSelectFirst&&!selectedVariantIdRef.current){//autoSelectReceived &&\n//if (!selectedVariantIdRef.current) {\nconst product=matchingProduct.node;if(product?.variants?.edges){const variants=product.variants.edges.map(edge=>edge.node);const hasVariants=variants.length>1;const totalInventory=variants.reduce((total,variant)=>{return total+(variant.quantityAvailable||0);},0);// console.log(\"No active variant, calculating total inventory:\", totalInventory)\nsetQuantityAvailable(totalInventory);setHasSelectedVariant(!hasVariants);}}}else{// console.log(\"No Matching Product Found\")\n}}};// Check if we already have product data available\nif(window?.shopXtools?.products&&Array.isArray(window.shopXtools.products)){const matchingProduct=window.shopXtools.products.find(({node:product})=>product.id===`gid://shopify/Product/${shopifyProductID}`);//console.log(\"matchingProduct\", matchingProduct)\nif(matchingProduct?.node){const product=matchingProduct.node;const variantId=selectedVariantIdRef.current//|| window.__fc_activeVariantId //maybe we need this for persisting the variant id when changing markets\n;//console.log(\"[WINDOW] variantId\", variantId)\nif(variantId){const matchingVariant=product.variants.edges.find(({node})=>node.id===variantId)?.node;if(matchingVariant){setQuantityAvailable(matchingVariant.quantityAvailable);oldInventoryRef.current=matchingVariant.quantityAvailable;setHasSelectedVariant(true);return;}}// Prioritize autoSelectFirst if it's set to true\nif(autoSelectFirst){//console.log(\"[WINDOW] Auto-selecting first variant\")\nconst firstAvailableVariant=matchingProduct.node.variants.edges.find(edge=>edge.node.availableForSale)?.node;if(firstAvailableVariant){selectedVariantIdRef.current=firstAvailableVariant.id;setQuantityAvailable(firstAvailableVariant.quantityAvailable);oldInventoryRef.current=firstAvailableVariant.quantityAvailable;setHasSelectedVariant(true);// console.log(\n//     \"[WINDOW] Selected variant:\",\n//     firstAvailableVariant\n// )\nreturn;}}//console.log(\"autoSelectFirst, variantId\", autoSelectFirst, variantId)\nif(!autoSelectFirst&&!variantId){if(product?.variants?.edges){const variants=product.variants.edges.map(edge=>edge.node);const hasVariants=variants.length>1;const totalInventory=variants.reduce((total,variant)=>{return total+(variant.quantityAvailable||0);},0);// console.log(\"Processing Product (no active variant):\", {\n//     totalInventory,\n//     hasVariants,\n// })\nsetQuantityAvailable(totalInventory);oldInventoryRef.current=totalInventory;setHasSelectedVariant(!hasVariants);}}}else{// console.log(\"No Matching Product Found in Window\")\n}}const handleAutoSelectFlag=e=>{// console.log(\"Auto Select event received as:\", e.detail.autoSelectFirst);\nif(e.detail.shopifyProductID!==`gid://shopify/Product/${shopifyProductID}`){return;}setAutoSelectFirst(e.detail.autoSelectFirst);// setAutoSelectReceived(true);\n};// console.log(\"🔵 Inventory Counter - Adding event listeners\");\ndocument.addEventListener(\"data__products-ready\",handleProductsReady);document.addEventListener(\"auto_select_first_flag\",handleAutoSelectFlag);return()=>{// console.log(\"🔵 Inventory Counter - Removing event listeners\");\ndocument.removeEventListener(\"data__products-ready\",handleProductsReady);document.removeEventListener(\"auto_select_first_flag\",handleAutoSelectFlag);};},[shopifyProductID,autoSelectFirst]);const formatText=useCallback((text,quantity)=>{if(quantity===null||quantity===undefined){return null;}const isInfiniteInventory=window?.shopXtools?.products?.find(({node:product})=>product.id===`gid://shopify/Product/${shopifyProductID}`)?.node?.variants?.edges?.some(({node:variant})=>variant.availableForSale&&variant.quantityAvailable<=0);if(quantity<=0){if(isInfiniteInventory){return noLimitText;}if(showOutOfStock){return outOfStockText;}return null;}return text?.replace(\"{{inventory}}\",quantity)||`${quantity} left in stock`;},[showOutOfStock,outOfStockText,noLimitText,shopifyProductID]);// console.log(\"quantityAvailable\", quantityAvailable, \"showOutOfStock\", showOutOfStock)\n// Only return null if explicitly 0/null and not showing out of stock\nif(quantityAvailable===null&&!showOutOfStock){return null;}return /*#__PURE__*/_jsx(\"div\",{style:{display:\"inline-flex\",width:\"auto\",boxSizing:\"border-box\",alignItems:\"center\",justifyContent:\"center\",flexShrink:0,flexGrow:0},children:/*#__PURE__*/_jsx(\"p\",{style:{...props.font,color:props.textColor,margin:0,padding:0,lineHeight:1,whiteSpace:\"nowrap\"},children:formatText(props.textFormat,quantityAvailable)})});}FC_ProductInventoryCounter.defaultProps={shopifyProductID:\"\",font:undefined,textColor:\"#000\",textFormat:\"{{inventory}} left in stock\",showOutOfStock:true,outOfStockText:\"Out of stock\",noLimitText:\"In Stock\"};addPropertyControls(FC_ProductInventoryCounter,{shopifyProductID:{type:ControlType.String,title:\"Product ID\",description:\"Connect to CMS\"},font:{type:ControlType.Font,title:\"Font\",controls:\"extended\"},textColor:{type:ControlType.Color,title:\"Color\",defaultValue:\"#000\"},textFormat:{type:ControlType.String,title:\"Text Format\",defaultValue:\"{{inventory}} left in stock\",description:\"Use {{inventory}} to display the stock count\"},showOutOfStock:{type:ControlType.Boolean,title:\"Out of Stock\",defaultValue:true,enabledTitle:\"Show\",disabledTitle:\"Hide\"},outOfStockText:{type:ControlType.String,title:\"Out of Stock Text\",defaultValue:\"Out of Stock\",hidden:props=>!props.showOutOfStock},noLimitText:{type:ControlType.String,title:\"No Limit Text\",defaultValue:\"In Stock\",description:'If you have \"Continue Selling When Out Of Stock\" selected on Shopify, and the inventory reaches 0.'}});\nexport const __FramerMetadata__ = {\"exports\":{\"default\":{\"type\":\"reactComponent\",\"name\":\"FC_ProductInventoryCounter\",\"slots\":[],\"annotations\":{\"framerDisableUnlink\":\"\",\"framerContractVersion\":\"1\"}},\"__FramerMetadata__\":{\"type\":\"variable\"}}}\n//# sourceMappingURL=./FC_ProductInventoryCounter.map","// Generated by Framer (d993dc4)\nimport{jsx as _jsx,jsxs as _jsxs}from\"react/jsx-runtime\";import{addFonts,addPropertyControls,ComponentViewportProvider,ControlType,cx,getFonts,SmartComponentScopedContainer,useComponentViewport,useLocaleInfo,useVariantState,withCSS}from\"framer\";import{LayoutGroup,motion,MotionConfigContext}from\"framer-motion\";import*as React from\"react\";import{useRef}from\"react\";import FC_ProductStockStatus from\"https://xn----9sbmqji2czbya.xn--p1ai/__framerusercontent/modules/gsF1PcoB6DIjO9DCxQ8u/0coDF4rLku9zebkwDUh0/FC_ProductStockStatus.js\";import FC_ProductInventoryCounter from\"https://xn----9sbmqji2czbya.xn--p1ai/__framerusercontent/modules/LfNrg3Vrj1wZ6mJirTUh/hccyIiUFXFE4OXIJiabT/FC_ProductInventoryCounter.js\";const FC_ProductInventoryCounterFonts=getFonts(FC_ProductInventoryCounter);const FC_ProductStockStatusFonts=getFonts(FC_ProductStockStatus);const serializationHash=\"framer-ghHd7\";const variantClassNames={iJwY0NIBz:\"framer-v-gxl199\"};function addPropertyOverrides(overrides,...variants){const nextOverrides={};variants?.forEach(variant=>variant&&Object.assign(nextOverrides,overrides[variant]));return nextOverrides;}const C4U1l_gbD=undefined;const transition1={bounce:.2,delay:0,duration:.4,type:\"spring\"};const Transition=({value,children})=>{const config=React.useContext(MotionConfigContext);const transition=value??config.transition;const contextValue=React.useMemo(()=>({...config,transition}),[JSON.stringify(transition)]);return /*#__PURE__*/_jsx(MotionConfigContext.Provider,{value:contextValue,children:children});};const Variants=motion.create(React.Fragment);const getProps=({height,id,productID,width,...props})=>{return{...props,C4U1l_gbD:productID??props.C4U1l_gbD};};const createLayoutDependency=(props,variants)=>{if(props.layoutDependency)return variants.join(\"-\")+props.layoutDependency;return variants.join(\"-\");};const Component=/*#__PURE__*/React.forwardRef(function(props,ref){const fallbackRef=useRef(null);const refBinding=ref??fallbackRef;const defaultLayoutId=React.useId();const{activeLocale,setLocale}=useLocaleInfo();const componentViewport=useComponentViewport();const{style,className,layoutId,variant,C4U1l_gbD,...restProps}=getProps(props);const{baseVariant,classNames,clearLoadingGesture,gestureHandlers,gestureVariant,isLoading,setGestureState,setVariant,variants}=useVariantState({defaultVariant:\"iJwY0NIBz\",ref:refBinding,variant,variantClassNames});const layoutDependency=createLayoutDependency(props,variants);const sharedStyleClassNames=[];const scopingClassNames=cx(serializationHash,...sharedStyleClassNames);return /*#__PURE__*/_jsx(LayoutGroup,{id:layoutId??defaultLayoutId,children:/*#__PURE__*/_jsx(Variants,{animate:variants,initial:false,children:/*#__PURE__*/_jsx(Transition,{value:transition1,children:/*#__PURE__*/_jsx(motion.div,{...restProps,...gestureHandlers,className:cx(scopingClassNames,\"framer-gxl199\",className,classNames),\"data-framer-name\":\"Variant 1\",layoutDependency:layoutDependency,layoutId:\"iJwY0NIBz\",ref:refBinding,style:{...style},children:/*#__PURE__*/_jsx(ComponentViewportProvider,{children:/*#__PURE__*/_jsx(SmartComponentScopedContainer,{className:\"framer-1eulr6h-container\",isAuthoredByUser:true,isModuleExternal:true,layoutDependency:layoutDependency,layoutId:\"YXsGZehlY-container\",nodeId:\"YXsGZehlY\",rendersWithMotion:true,scopeId:\"eqF6Ded09\",children:/*#__PURE__*/_jsx(FC_ProductStockStatus,{aboveThresholdComponent:[/*#__PURE__*/_jsxs(motion.div,{className:\"framer-kit6jt\",\"data-framer-name\":\"over\",layoutDependency:layoutDependency,layoutId:\"qXxxcY6hq\",children:[/*#__PURE__*/_jsx(motion.div,{className:\"framer-17ykoun\",\"data-framer-name\":\"circle\",layoutDependency:layoutDependency,layoutId:\"Q3T0Dcv1E\",style:{backgroundColor:\"var(--token-bd71055c-0a2c-4476-8cc9-4310acba652d, rgb(0, 153, 255))\",borderBottomLeftRadius:80,borderBottomRightRadius:80,borderTopLeftRadius:80,borderTopRightRadius:80}}),/*#__PURE__*/_jsx(ComponentViewportProvider,{children:/*#__PURE__*/_jsx(SmartComponentScopedContainer,{className:\"framer-h6th0j-container\",inComponentSlot:true,isAuthoredByUser:true,isModuleExternal:true,layoutDependency:layoutDependency,layoutId:\"RTom501Xe-container\",nodeId:\"RTom501Xe\",rendersWithMotion:true,scopeId:\"eqF6Ded09\",children:/*#__PURE__*/_jsx(FC_ProductInventoryCounter,{font:{fontFamily:'\"Inter\", \"Inter Placeholder\", sans-serif',fontSize:\"16px\",fontStyle:\"normal\",fontWeight:500,letterSpacing:\"-0.04em\",lineHeight:\"1em\"},height:\"100%\",id:\"RTom501Xe\",layoutId:\"RTom501Xe\",noLimitText:\"In Stock\",outOfStockText:\"Out of Stock\",shopifyProductID:C4U1l_gbD,showOutOfStock:true,textColor:\"rgb(255, 255, 255)\",textFormat:\"{{inventory}} left\",width:\"100%\"})})})]})],belowThresholdComponent:[/*#__PURE__*/_jsxs(motion.div,{className:\"framer-1az76ji\",\"data-framer-name\":\"under\",layoutDependency:layoutDependency,layoutId:\"oNzebJNPL\",children:[/*#__PURE__*/_jsx(motion.div,{className:\"framer-l68gdt\",\"data-framer-name\":\"circle\",layoutDependency:layoutDependency,layoutId:\"uU4pHNpYd\",style:{backgroundColor:\"var(--token-0c4c4e00-f4fc-4e6a-9a97-509a95a3e5d4, rgb(255, 0, 102))\",borderBottomLeftRadius:80,borderBottomRightRadius:80,borderTopLeftRadius:80,borderTopRightRadius:80}}),/*#__PURE__*/_jsx(ComponentViewportProvider,{children:/*#__PURE__*/_jsx(SmartComponentScopedContainer,{className:\"framer-1y1kad7-container\",inComponentSlot:true,isAuthoredByUser:true,isModuleExternal:true,layoutDependency:layoutDependency,layoutId:\"kD_ycFVpP-container\",nodeId:\"kD_ycFVpP\",rendersWithMotion:true,scopeId:\"eqF6Ded09\",children:/*#__PURE__*/_jsx(FC_ProductInventoryCounter,{font:{fontFamily:'\"Inter Variable\", \"Inter Variable Placeholder\", sans-serif',fontFeatureSettings:\"'tnum' on\",fontSize:\"16px\",fontStyle:\"normal\",fontWeight:400,letterSpacing:\"-0.04em\",lineHeight:\"1em\"},height:\"100%\",id:\"kD_ycFVpP\",layoutId:\"kD_ycFVpP\",noLimitText:\"In Stock\",outOfStockText:\"Out of Stock\",shopifyProductID:C4U1l_gbD,showOutOfStock:true,textColor:\"rgb(255, 255, 255)\",textFormat:\"{{inventory}} left\",width:\"100%\"})})})]})],height:\"100%\",id:\"YXsGZehlY\",layoutId:\"YXsGZehlY\",outOfStockComponent:[],shopifyProductID:C4U1l_gbD,showAboveThreshold:true,showBelowThreshold:true,showOutOfStock:false,showTotalInventory:false,threshold:5,width:\"100%\"})})})})})})});});const css=[\"@supports (aspect-ratio: 1) { body { --framer-aspect-ratio-supported: auto; } }\",\".framer-ghHd7.framer-1koyf90, .framer-ghHd7 .framer-1koyf90 { display: block; }\",\".framer-ghHd7.framer-gxl199 { align-content: center; align-items: center; display: flex; flex-direction: row; flex-wrap: nowrap; gap: 10px; height: min-content; justify-content: center; overflow: hidden; padding: 0px; position: relative; width: min-content; }\",\".framer-ghHd7 .framer-1eulr6h-container, .framer-ghHd7 .framer-h6th0j-container, .framer-ghHd7 .framer-1y1kad7-container { flex: none; height: auto; position: relative; width: auto; }\",\".framer-ghHd7 .framer-kit6jt { align-content: center; align-items: center; display: flex; flex-direction: row; flex-wrap: nowrap; gap: 5px; height: min-content; justify-content: flex-start; overflow: hidden; padding: 0px 0px 0px 5px; position: relative; width: min-content; }\",\".framer-ghHd7 .framer-17ykoun, .framer-ghHd7 .framer-l68gdt { aspect-ratio: 1 / 1; flex: none; height: var(--framer-aspect-ratio-supported, 6px); overflow: visible; position: relative; width: 6px; }\",\".framer-ghHd7 .framer-1az76ji { align-content: center; align-items: center; display: flex; flex-direction: row; flex-wrap: nowrap; gap: 5px; height: min-content; justify-content: center; overflow: hidden; padding: 0px 0px 0px 5px; position: relative; width: min-content; }\"];/**\n * This is a generated Framer component.\n * @framerIntrinsicHeight 16.5\n * @framerIntrinsicWidth 50.5\n * @framerCanvasComponentVariantDetails {\"propertyName\":\"variant\",\"data\":{\"default\":{\"layout\":[\"auto\",\"auto\"]}}}\n * @framerVariables {\"C4U1l_gbD\":\"productID\"}\n * @framerImmutableVariables true\n * @framerDisplayContentsDiv false\n * @framerAutoSizeImages true\n * @framerComponentViewportWidth true\n * @framerColorSyntax true\n */const FramereqF6Ded09=withCSS(Component,css,\"framer-ghHd7\");export default FramereqF6Ded09;FramereqF6Ded09.displayName=\"FC Stock Status\";FramereqF6Ded09.defaultProps={height:16.5,width:50.5};addPropertyControls(FramereqF6Ded09,{C4U1l_gbD:{defaultValue:\"\",title:\"Product ID\",type:ControlType.String}});const variationAxes=[{defaultValue:14,maxValue:32,minValue:14,name:\"Optical size\",tag:\"opsz\"},{defaultValue:400,maxValue:900,minValue:100,name:\"Weight\",tag:\"wght\"}];addFonts(FramereqF6Ded09,[{explicitInter:true,fonts:[{cssFamilyName:\"Inter\",source:\"framer\",style:\"normal\",uiFamilyName:\"Inter\",unicodeRange:\"U+0460-052F, U+1C80-1C88, U+20B4, U+2DE0-2DFF, U+A640-A69F, U+FE2E-FE2F\",url:\"https://xn----9sbmqji2czbya.xn--p1ai/__framerusercontent/assets/5A3Ce6C9YYmCjpQx9M4inSaKU.woff2\",weight:\"500\"},{cssFamilyName:\"Inter\",source:\"framer\",style:\"normal\",uiFamilyName:\"Inter\",unicodeRange:\"U+0301, U+0400-045F, U+0490-0491, U+04B0-04B1, U+2116\",url:\"https://xn----9sbmqji2czbya.xn--p1ai/__framerusercontent/assets/Qx95Xyt0Ka3SGhinnbXIGpEIyP4.woff2\",weight:\"500\"},{cssFamilyName:\"Inter\",source:\"framer\",style:\"normal\",uiFamilyName:\"Inter\",unicodeRange:\"U+1F00-1FFF\",url:\"https://xn----9sbmqji2czbya.xn--p1ai/__framerusercontent/assets/6mJuEAguuIuMog10gGvH5d3cl8.woff2\",weight:\"500\"},{cssFamilyName:\"Inter\",source:\"framer\",style:\"normal\",uiFamilyName:\"Inter\",unicodeRange:\"U+0370-03FF\",url:\"https://xn----9sbmqji2czbya.xn--p1ai/__framerusercontent/assets/xYYWaj7wCU5zSQH0eXvSaS19wo.woff2\",weight:\"500\"},{cssFamilyName:\"Inter\",source:\"framer\",style:\"normal\",uiFamilyName:\"Inter\",unicodeRange:\"U+0100-024F, U+0259, U+1E00-1EFF, U+2020, U+20A0-20AB, U+20AD-20CF, U+2113, U+2C60-2C7F, U+A720-A7FF\",url:\"https://xn----9sbmqji2czbya.xn--p1ai/__framerusercontent/assets/otTaNuNpVK4RbdlT7zDDdKvQBA.woff2\",weight:\"500\"},{cssFamilyName:\"Inter\",source:\"framer\",style:\"normal\",uiFamilyName:\"Inter\",unicodeRange:\"U+0000-00FF, U+0131, U+0152-0153, U+02BB-02BC, U+02C6, U+02DA, U+02DC, U+2000-206F, U+2070, U+2074-207E, U+2080-208E, U+20AC, U+2122, U+2191, U+2193, U+2212, U+2215, U+FEFF, U+FFFD\",url:\"https://xn----9sbmqji2czbya.xn--p1ai/__framerusercontent/assets/UjlFhCnUjxhNfep4oYBPqnEssyo.woff2\",weight:\"500\"},{cssFamilyName:\"Inter\",source:\"framer\",style:\"normal\",uiFamilyName:\"Inter\",unicodeRange:\"U+0102-0103, U+0110-0111, U+0128-0129, U+0168-0169, U+01A0-01A1, U+01AF-01B0, U+1EA0-1EF9, U+20AB\",url:\"https://xn----9sbmqji2czbya.xn--p1ai/__framerusercontent/assets/DolVirEGb34pEXEp8t8FQBSK4.woff2\",weight:\"500\"},{cssFamilyName:\"Inter Variable\",source:\"framer\",style:\"normal\",uiFamilyName:\"Inter\",unicodeRange:\"U+0460-052F, U+1C80-1C88, U+20B4, U+2DE0-2DFF, U+A640-A69F, U+FE2E-FE2F\",url:\"https://xn----9sbmqji2czbya.xn--p1ai/__framerusercontent/assets/mYcqTSergLb16PdbJJQMl9ebYm4.woff2\",variationAxes,weight:\"400\"},{cssFamilyName:\"Inter Variable\",source:\"framer\",style:\"normal\",uiFamilyName:\"Inter\",unicodeRange:\"U+0301, U+0400-045F, U+0490-0491, U+04B0-04B1, U+2116\",url:\"https://xn----9sbmqji2czbya.xn--p1ai/__framerusercontent/assets/ZRl8AlxwsX1m7xS1eJCiSPbztg.woff2\",variationAxes,weight:\"400\"},{cssFamilyName:\"Inter Variable\",source:\"framer\",style:\"normal\",uiFamilyName:\"Inter\",unicodeRange:\"U+1F00-1FFF\",url:\"https://xn----9sbmqji2czbya.xn--p1ai/__framerusercontent/assets/nhSQpBRqFmXNUBY2p5SENQ8NplQ.woff2\",variationAxes,weight:\"400\"},{cssFamilyName:\"Inter Variable\",source:\"framer\",style:\"normal\",uiFamilyName:\"Inter\",unicodeRange:\"U+0370-03FF\",url:\"https://xn----9sbmqji2czbya.xn--p1ai/__framerusercontent/assets/DYHjxG0qXjopUuruoacfl5SA.woff2\",variationAxes,weight:\"400\"},{cssFamilyName:\"Inter Variable\",source:\"framer\",style:\"normal\",uiFamilyName:\"Inter\",unicodeRange:\"U+0100-024F, U+0259, U+1E00-1EFF, U+2020, U+20A0-20AB, U+20AD-20CF, U+2113, U+2C60-2C7F, U+A720-A7FF\",url:\"https://xn----9sbmqji2czbya.xn--p1ai/__framerusercontent/assets/s7NH6sl7w4NU984r5hcmo1tPSYo.woff2\",variationAxes,weight:\"400\"},{cssFamilyName:\"Inter Variable\",source:\"framer\",style:\"normal\",uiFamilyName:\"Inter\",unicodeRange:\"U+0000-00FF, U+0131, U+0152-0153, U+02BB-02BC, U+02C6, U+02DA, U+02DC, U+2000-206F, U+2070, U+2074-207E, U+2080-208E, U+20AC, U+2122, U+2191, U+2193, U+2212, U+2215, U+FEFF, U+FFFD\",url:\"https://xn----9sbmqji2czbya.xn--p1ai/__framerusercontent/assets/7lw0VWkeXrGYJT05oB3DsFy8BaY.woff2\",variationAxes,weight:\"400\"},{cssFamilyName:\"Inter Variable\",source:\"framer\",style:\"normal\",uiFamilyName:\"Inter\",unicodeRange:\"U+0102-0103, U+0110-0111, U+0128-0129, U+0168-0169, U+01A0-01A1, U+01AF-01B0, U+1EA0-1EF9, U+20AB\",url:\"https://xn----9sbmqji2czbya.xn--p1ai/__framerusercontent/assets/wx5nfqEgOXnxuFaxB0Mn9OhmcZA.woff2\",variationAxes,weight:\"400\"}]},...FC_ProductInventoryCounterFonts,...FC_ProductStockStatusFonts],{supportsExplicitInterCodegen:true});\nexport const __FramerMetadata__ = {\"exports\":{\"default\":{\"type\":\"reactComponent\",\"name\":\"FramereqF6Ded09\",\"slots\":[],\"annotations\":{\"framerContractVersion\":\"1\",\"framerIntrinsicHeight\":\"16.5\",\"framerDisplayContentsDiv\":\"false\",\"framerComponentViewportWidth\":\"true\",\"framerAutoSizeImages\":\"true\",\"framerImmutableVariables\":\"true\",\"framerColorSyntax\":\"true\",\"framerCanvasComponentVariantDetails\":\"{\\\"propertyName\\\":\\\"variant\\\",\\\"data\\\":{\\\"default\\\":{\\\"layout\\\":[\\\"auto\\\",\\\"auto\\\"]}}}\",\"framerIntrinsicWidth\":\"50.5\",\"framerVariables\":\"{\\\"C4U1l_gbD\\\":\\\"productID\\\"}\"}},\"Props\":{\"type\":\"tsType\",\"annotations\":{\"framerContractVersion\":\"1\"}},\"__FramerMetadata__\":{\"type\":\"variable\"}}}\n//# sourceMappingURL=./eqF6Ded09.map","// Generated by Framer (e140706)\nimport{jsx as _jsx,jsxs as _jsxs}from\"react/jsx-runtime\";import{addFonts,addPropertyControls,ControlType,cx,getFonts,getFontsFromSharedStyle,RichText,useActiveVariantCallback,useComponentViewport,useLocaleInfo,useVariantState,withCSS,withFX,withOptimizedAppearEffect}from\"framer\";import{LayoutGroup,motion,MotionConfigContext}from\"framer-motion\";import*as React from\"react\";import{useRef}from\"react\";import Plus from\"https://xn----9sbmqji2czbya.xn--p1ai/__framerusercontent/modules/42dPWzB5kuTYgjQTRKTJ/AGCJWJMZ6Mcyn69eo1va/sGVDGHnNr.js\";import*as sharedStyle from\"https://xn----9sbmqji2czbya.xn--p1ai/__framerusercontent/modules/0Y6d4itRO1U4NcTrjSGv/5PDFWoIdGQf6QIUPk76V/BST5CE1TC.js\";const PlusFonts=getFonts(Plus);const RichTextWithFXWithOptimizedAppearEffect=withOptimizedAppearEffect(withFX(RichText));const MotionLiWithFXWithOptimizedAppearEffect=withOptimizedAppearEffect(withFX(motion.li));const enabledGestures={p9ishk1Jh:{hover:true}};const cycleOrder=[\"jOQ17QDcr\",\"p9ishk1Jh\"];const serializationHash=\"framer-OnyVz\";const variantClassNames={jOQ17QDcr:\"framer-v-1gqdp0\",p9ishk1Jh:\"framer-v-z4pi51\"};function addPropertyOverrides(overrides,...variants){const nextOverrides={};variants?.forEach(variant=>variant&&Object.assign(nextOverrides,overrides[variant]));return nextOverrides;}const vd59XDbg4=undefined;const cyaBDXQCV=undefined;const ks8LX8u60=undefined;const Nll6pCien=undefined;const ZO6oYxeAJ=undefined;const fjQDDW3fH=undefined;const rjfxqlNDV=undefined;const VEAZydqcG=undefined;const transition1={bounce:0,delay:0,duration:.3,type:\"spring\"};const isSet=value=>{if(Array.isArray(value))return value.length>0;return value!==undefined&&value!==null&&value!==\"\";};const transition2={bounce:0,delay:0,duration:.7,type:\"spring\"};const animation={opacity:1,rotate:0,rotateX:0,rotateY:0,scale:1,skewX:0,skewY:0,transition:transition2,x:0,y:0};const animation1={opacity:.001,rotate:0,rotateX:0,rotateY:0,scale:1,skewX:0,skewY:0,x:0,y:2};const transition3={bounce:0,delay:.1,duration:.7,type:\"spring\"};const animation2={opacity:1,rotate:0,rotateX:0,rotateY:0,scale:1,skewX:0,skewY:0,transition:transition3,x:0,y:0};const transition4={bounce:0,delay:.2,duration:.7,type:\"spring\"};const animation3={opacity:1,rotate:0,rotateX:0,rotateY:0,scale:1,skewX:0,skewY:0,transition:transition4,x:0,y:0};const transition5={bounce:0,delay:.3,duration:.7,type:\"spring\"};const animation4={opacity:1,rotate:0,rotateX:0,rotateY:0,scale:1,skewX:0,skewY:0,transition:transition5,x:0,y:0};const Transition=({value,children})=>{const config=React.useContext(MotionConfigContext);const transition=value??config.transition;const contextValue=React.useMemo(()=>({...config,transition}),[JSON.stringify(transition)]);return /*#__PURE__*/_jsx(MotionConfigContext.Provider,{value:contextValue,children:children});};const humanReadableVariantMap={Closed:\"p9ishk1Jh\",Open:\"jOQ17QDcr\"};const Variants=motion.create(React.Fragment);const getProps=({detail1,detail2,detail3,detail4,detailsBullets,height,id,lineVisible,question,shippingReturn,width,...props})=>{return{...props,cyaBDXQCV:shippingReturn??props.cyaBDXQCV??\"\",fjQDDW3fH:detail3??props.fjQDDW3fH??\"Detail 3\",ks8LX8u60:detailsBullets??props.ks8LX8u60??\"hello\",Nll6pCien:detail1??props.Nll6pCien??\"Detail 1\",rjfxqlNDV:detail4??props.rjfxqlNDV??\"Detail 4\",variant:humanReadableVariantMap[props.variant]??props.variant??\"jOQ17QDcr\",vd59XDbg4:question??props.vd59XDbg4??\"Which pricing plan is right for me?\",VEAZydqcG:lineVisible??props.VEAZydqcG??true,ZO6oYxeAJ:detail2??props.ZO6oYxeAJ??\"Detail 2\"};};const createLayoutDependency=(props,variants)=>{if(props.layoutDependency)return variants.join(\"-\")+props.layoutDependency;return variants.join(\"-\");};const Component=/*#__PURE__*/React.forwardRef(function(props,ref){const fallbackRef=useRef(null);const refBinding=ref??fallbackRef;const defaultLayoutId=React.useId();const{activeLocale,setLocale}=useLocaleInfo();const componentViewport=useComponentViewport();const{style,className,layoutId,variant,vd59XDbg4,VEAZydqcG,cyaBDXQCV,ks8LX8u60,Nll6pCien,ZO6oYxeAJ,fjQDDW3fH,rjfxqlNDV,...restProps}=getProps(props);const{baseVariant,classNames,clearLoadingGesture,gestureHandlers,gestureVariant,isLoading,setGestureState,setVariant,variants}=useVariantState({cycleOrder,defaultVariant:\"jOQ17QDcr\",enabledGestures,ref:refBinding,variant,variantClassNames});const layoutDependency=createLayoutDependency(props,variants);const{activeVariantCallback,delay}=useActiveVariantCallback(baseVariant);const onTap19gwvsb=activeVariantCallback(async(...args)=>{setGestureState({isPressed:false});setVariant(\"p9ishk1Jh\");});const onTap1nqig1h=activeVariantCallback(async(...args)=>{setGestureState({isPressed:false});setVariant(\"jOQ17QDcr\");});const sharedStyleClassNames=[sharedStyle.className];const scopingClassNames=cx(serializationHash,...sharedStyleClassNames);const visible=isSet(cyaBDXQCV);const isDisplayed=value=>{if(gestureVariant===\"p9ishk1Jh-hover\")return false;if(baseVariant===\"p9ishk1Jh\")return false;return value;};const isDisplayed1=()=>{if(gestureVariant===\"p9ishk1Jh-hover\")return false;if(baseVariant===\"p9ishk1Jh\")return false;return true;};const visible1=isSet(ks8LX8u60);return /*#__PURE__*/_jsx(LayoutGroup,{id:layoutId??defaultLayoutId,children:/*#__PURE__*/_jsx(Variants,{animate:variants,initial:false,children:/*#__PURE__*/_jsx(Transition,{value:transition1,children:/*#__PURE__*/_jsxs(motion.div,{...restProps,...gestureHandlers,className:cx(scopingClassNames,\"framer-1gqdp0\",className,classNames),\"data-framer-name\":\"Open\",\"data-highlight\":true,layoutDependency:layoutDependency,layoutId:\"jOQ17QDcr\",onTap:onTap19gwvsb,ref:refBinding,style:{...style},...addPropertyOverrides({p9ishk1Jh:{\"data-framer-name\":\"Closed\",onTap:onTap1nqig1h}},baseVariant,gestureVariant),children:[/*#__PURE__*/_jsxs(motion.div,{className:\"framer-rww930\",layoutDependency:layoutDependency,layoutId:\"I_qn3LZzh\",children:[/*#__PURE__*/_jsx(RichText,{__fromCanvasComponent:true,children:/*#__PURE__*/_jsx(React.Fragment,{children:/*#__PURE__*/_jsx(motion.h6,{dir:\"auto\",style:{\"--font-selector\":\"SW50ZXItVmFyaWFibGVWRj1JbTl3YzNvaUlERTRMQ0FpZDJkb2RDSWdORGd3\",\"--framer-font-family\":'\"Inter Variable\", \"Inter Variable Placeholder\", sans-serif',\"--framer-font-variation-axes\":'var(--extracted-l1lhml, \"opsz\" 18, \"wght\" 480)',\"--framer-letter-spacing\":\"-0.2px\",\"--framer-line-height\":\"1.3em\",\"--framer-text-alignment\":\"left\",\"--framer-text-color\":\"var(--extracted-1w1cjl5, var(--token-289cb3ad-ad59-4cce-aee5-0850b842d9c8, rgba(255, 255, 255, 0.8)))\"},children:\"Which pricing plan is right for me?\"})}),className:\"framer-1yrl26\",fonts:[\"Inter-Variable\"],layoutDependency:layoutDependency,layoutId:\"Rqv0MEi8s\",style:{\"--extracted-1w1cjl5\":\"var(--token-289cb3ad-ad59-4cce-aee5-0850b842d9c8, rgba(255, 255, 255, 0.8))\",\"--extracted-l1lhml\":'\"opsz\" 18, \"wght\" 480',\"--framer-link-text-color\":\"rgb(0, 153, 255)\",\"--framer-link-text-decoration\":\"underline\"},text:vd59XDbg4,verticalAlignment:\"top\",withExternalLayout:true}),/*#__PURE__*/_jsx(Plus,{animated:true,className:\"framer-1bdpt5s\",layoutDependency:layoutDependency,layoutId:\"uXZPyQ2Az\",style:{\"--17kkcf8\":\"rgba(136, 136, 136, 0)\",\"--1iwhep7\":2,\"--1l3yetw\":\"var(--token-8f5eb515-7a13-452b-a4ab-f35e2208a3f3)\",opacity:1,rotate:45},variants:{p9ishk1Jh:{opacity:0,rotate:0}}})]}),isDisplayed(visible!==false)&&/*#__PURE__*/_jsx(RichTextWithFXWithOptimizedAppearEffect,{__fromCanvasComponent:true,__perspectiveFX:false,__smartComponentFX:true,__targetOpacity:1,animate:animation,children:/*#__PURE__*/_jsx(React.Fragment,{children:/*#__PURE__*/_jsx(motion.p,{className:\"framer-styles-preset-h8ll8p\",\"data-styles-preset\":\"BST5CE1TC\",dir:\"auto\",children:\"Content\"})}),className:\"framer-1ie38bq\",\"data-framer-appear-id\":\"1ie38bq\",\"data-framer-name\":\"Plain Description\",fonts:[\"Inter\"],initial:animation1,layoutDependency:layoutDependency,layoutId:\"sLlTYoHuz\",optimized:true,style:{\"--framer-link-text-color\":\"rgb(0, 153, 255)\",\"--framer-link-text-decoration\":\"underline\"},text:cyaBDXQCV,verticalAlignment:\"top\",withExternalLayout:true}),isDisplayed1()&&/*#__PURE__*/_jsxs(motion.ul,{className:\"framer-iz6ln6\",layoutDependency:layoutDependency,layoutId:\"fi1jjl85t\",style:{opacity:.8},children:[visible1!==false&&/*#__PURE__*/_jsxs(MotionLiWithFXWithOptimizedAppearEffect,{__perspectiveFX:false,__smartComponentFX:true,__targetOpacity:1,animate:animation,className:\"framer-7ispyr\",\"data-framer-appear-id\":\"7ispyr\",\"data-framer-name\":\"Item 1\",initial:animation1,layoutDependency:layoutDependency,layoutId:\"vIZG4AMXK\",optimized:true,children:[/*#__PURE__*/_jsx(motion.div,{className:\"framer-kf0mu8\",layoutDependency:layoutDependency,layoutId:\"ppGz0NAUG\",style:{backgroundColor:\"var(--token-289cb3ad-ad59-4cce-aee5-0850b842d9c8, rgba(255, 255, 255, 0.8))\",borderBottomLeftRadius:10,borderBottomRightRadius:10,borderTopLeftRadius:10,borderTopRightRadius:10}}),/*#__PURE__*/_jsx(RichText,{__fromCanvasComponent:true,children:/*#__PURE__*/_jsx(React.Fragment,{children:/*#__PURE__*/_jsx(motion.p,{className:\"framer-styles-preset-h8ll8p\",\"data-styles-preset\":\"BST5CE1TC\",dir:\"auto\",style:{\"--framer-text-color\":\"var(--extracted-r6o4lv, var(--token-289cb3ad-ad59-4cce-aee5-0850b842d9c8, rgba(255, 255, 255, 0.8)))\"},children:\"Detail 1\"})}),className:\"framer-mila4k\",\"data-framer-name\":\"Plain Description\",fonts:[\"Inter\"],layoutDependency:layoutDependency,layoutId:\"y9vOhvMgp\",style:{\"--extracted-r6o4lv\":\"var(--token-289cb3ad-ad59-4cce-aee5-0850b842d9c8, rgba(255, 255, 255, 0.8))\",\"--framer-link-text-color\":\"rgb(0, 153, 255)\",\"--framer-link-text-decoration\":\"underline\"},text:Nll6pCien,verticalAlignment:\"top\",withExternalLayout:true})]}),visible1!==false&&/*#__PURE__*/_jsxs(MotionLiWithFXWithOptimizedAppearEffect,{__perspectiveFX:false,__smartComponentFX:true,__targetOpacity:1,animate:animation2,className:\"framer-8fgaty\",\"data-framer-appear-id\":\"8fgaty\",\"data-framer-name\":\"Item 2\",initial:animation1,layoutDependency:layoutDependency,layoutId:\"fAIUP3ogv\",optimized:true,children:[/*#__PURE__*/_jsx(motion.div,{className:\"framer-6fpf0h\",layoutDependency:layoutDependency,layoutId:\"FmV9QH5fZ\",style:{backgroundColor:\"var(--token-289cb3ad-ad59-4cce-aee5-0850b842d9c8, rgba(255, 255, 255, 0.8))\",borderBottomLeftRadius:10,borderBottomRightRadius:10,borderTopLeftRadius:10,borderTopRightRadius:10}}),/*#__PURE__*/_jsx(RichText,{__fromCanvasComponent:true,children:/*#__PURE__*/_jsx(React.Fragment,{children:/*#__PURE__*/_jsx(motion.p,{className:\"framer-styles-preset-h8ll8p\",\"data-styles-preset\":\"BST5CE1TC\",dir:\"auto\",style:{\"--framer-text-color\":\"var(--extracted-r6o4lv, var(--token-289cb3ad-ad59-4cce-aee5-0850b842d9c8, rgba(255, 255, 255, 0.8)))\"},children:\"Detail 2\"})}),className:\"framer-1n1sdnh\",\"data-framer-name\":\"Plain Description\",fonts:[\"Inter\"],layoutDependency:layoutDependency,layoutId:\"LkrIJ29_A\",style:{\"--extracted-r6o4lv\":\"var(--token-289cb3ad-ad59-4cce-aee5-0850b842d9c8, rgba(255, 255, 255, 0.8))\",\"--framer-link-text-color\":\"rgb(0, 153, 255)\",\"--framer-link-text-decoration\":\"underline\"},text:ZO6oYxeAJ,verticalAlignment:\"top\",withExternalLayout:true})]}),visible1!==false&&/*#__PURE__*/_jsxs(MotionLiWithFXWithOptimizedAppearEffect,{__perspectiveFX:false,__smartComponentFX:true,__targetOpacity:1,animate:animation3,className:\"framer-bo74ya\",\"data-framer-appear-id\":\"bo74ya\",\"data-framer-name\":\"Item 3\",initial:animation1,layoutDependency:layoutDependency,layoutId:\"nOPzximvG\",optimized:true,children:[/*#__PURE__*/_jsx(motion.div,{className:\"framer-r5lypt\",layoutDependency:layoutDependency,layoutId:\"YfY1iBoW0\",style:{backgroundColor:\"var(--token-289cb3ad-ad59-4cce-aee5-0850b842d9c8, rgba(255, 255, 255, 0.8))\",borderBottomLeftRadius:10,borderBottomRightRadius:10,borderTopLeftRadius:10,borderTopRightRadius:10}}),/*#__PURE__*/_jsx(RichText,{__fromCanvasComponent:true,children:/*#__PURE__*/_jsx(React.Fragment,{children:/*#__PURE__*/_jsx(motion.p,{className:\"framer-styles-preset-h8ll8p\",\"data-styles-preset\":\"BST5CE1TC\",dir:\"auto\",style:{\"--framer-text-color\":\"var(--extracted-r6o4lv, var(--token-289cb3ad-ad59-4cce-aee5-0850b842d9c8, rgba(255, 255, 255, 0.8)))\"},children:\"Detail 3\"})}),className:\"framer-1jgld37\",\"data-framer-name\":\"Plain Description\",fonts:[\"Inter\"],layoutDependency:layoutDependency,layoutId:\"my27lizl_\",style:{\"--extracted-r6o4lv\":\"var(--token-289cb3ad-ad59-4cce-aee5-0850b842d9c8, rgba(255, 255, 255, 0.8))\",\"--framer-link-text-color\":\"rgb(0, 153, 255)\",\"--framer-link-text-decoration\":\"underline\"},text:fjQDDW3fH,verticalAlignment:\"top\",withExternalLayout:true})]}),visible1!==false&&/*#__PURE__*/_jsxs(MotionLiWithFXWithOptimizedAppearEffect,{__perspectiveFX:false,__smartComponentFX:true,__targetOpacity:1,animate:animation4,className:\"framer-1hoaxme\",\"data-framer-appear-id\":\"1hoaxme\",\"data-framer-name\":\"Item 4\",initial:animation1,layoutDependency:layoutDependency,layoutId:\"C0VTBPMRd\",optimized:true,children:[/*#__PURE__*/_jsx(motion.div,{className:\"framer-15m78cd\",layoutDependency:layoutDependency,layoutId:\"rphDUczns\",style:{backgroundColor:\"var(--token-289cb3ad-ad59-4cce-aee5-0850b842d9c8, rgba(255, 255, 255, 0.8))\",borderBottomLeftRadius:10,borderBottomRightRadius:10,borderTopLeftRadius:10,borderTopRightRadius:10}}),/*#__PURE__*/_jsx(RichText,{__fromCanvasComponent:true,children:/*#__PURE__*/_jsx(React.Fragment,{children:/*#__PURE__*/_jsx(motion.p,{className:\"framer-styles-preset-h8ll8p\",\"data-styles-preset\":\"BST5CE1TC\",dir:\"auto\",style:{\"--framer-text-color\":\"var(--extracted-r6o4lv, var(--token-289cb3ad-ad59-4cce-aee5-0850b842d9c8, rgba(255, 255, 255, 0.8)))\"},children:\"Detail 4\"})}),className:\"framer-uopo51\",\"data-framer-name\":\"Plain Description\",fonts:[\"Inter\"],layoutDependency:layoutDependency,layoutId:\"yej5LqJIF\",style:{\"--extracted-r6o4lv\":\"var(--token-289cb3ad-ad59-4cce-aee5-0850b842d9c8, rgba(255, 255, 255, 0.8))\",\"--framer-link-text-color\":\"rgb(0, 153, 255)\",\"--framer-link-text-decoration\":\"underline\"},text:rjfxqlNDV,verticalAlignment:\"top\",withExternalLayout:true})]})]}),VEAZydqcG!==false&&/*#__PURE__*/_jsx(motion.div,{className:\"framer-4z548d\",\"data-framer-name\":\"Line\",layoutDependency:layoutDependency,layoutId:\"K02ugLjNz\",style:{backgroundColor:\"var(--token-c534b380-e14e-4ddc-9802-ad88d1f94f8e, rgba(255, 255, 255, 0.1))\"}})]})})})});});const css=[\".framer-OnyVz.framer-yzb3pm, .framer-OnyVz .framer-yzb3pm { display: block; }\",\".framer-OnyVz.framer-1gqdp0 { align-content: flex-start; align-items: flex-start; cursor: pointer; display: flex; flex-direction: column; flex-wrap: nowrap; gap: 8px; height: min-content; justify-content: flex-start; overflow: visible; padding: 20px 0px 20px 0px; position: relative; width: 600px; }\",\".framer-OnyVz .framer-rww930 { align-content: center; align-items: center; display: flex; flex: none; flex-direction: row; flex-wrap: nowrap; height: 24px; justify-content: space-between; overflow: visible; padding: 0px; position: relative; width: 100%; }\",\".framer-OnyVz .framer-1yrl26 { -webkit-user-select: none; flex: 1 0 0px; height: auto; max-width: 90%; overflow: hidden; position: relative; user-select: none; white-space: pre-wrap; width: 1px; word-break: break-word; word-wrap: break-word; }\",\".framer-OnyVz .framer-1bdpt5s { flex: none; height: auto; position: relative; width: 20px; }\",\".framer-OnyVz .framer-1ie38bq { -webkit-user-select: none; flex: none; height: auto; max-width: 500px; position: relative; user-select: none; white-space: pre-wrap; width: 100%; word-break: break-word; word-wrap: break-word; }\",\".framer-OnyVz .framer-iz6ln6 { align-content: flex-start; align-items: flex-start; display: flex; flex: none; flex-direction: column; flex-wrap: nowrap; gap: 0px; height: min-content; justify-content: center; list-style: none; margin: 0px; overflow: visible; padding: 0px; position: relative; width: 100%; }\",\".framer-OnyVz .framer-7ispyr, .framer-OnyVz .framer-8fgaty, .framer-OnyVz .framer-bo74ya, .framer-OnyVz .framer-1hoaxme { align-content: center; align-items: center; display: flex; flex: none; flex-direction: row; flex-wrap: nowrap; gap: 10px; height: min-content; justify-content: flex-start; max-width: 400px; overflow: hidden; padding: 0px; position: relative; width: 100%; }\",\".framer-OnyVz .framer-kf0mu8, .framer-OnyVz .framer-6fpf0h, .framer-OnyVz .framer-r5lypt, .framer-OnyVz .framer-15m78cd { aspect-ratio: 1 / 1; flex: none; height: auto; overflow: hidden; position: relative; width: 5px; will-change: var(--framer-will-change-override, transform); }\",\".framer-OnyVz .framer-mila4k, .framer-OnyVz .framer-1n1sdnh, .framer-OnyVz .framer-1jgld37, .framer-OnyVz .framer-uopo51 { -webkit-user-select: none; flex: 1 0 0px; height: auto; position: relative; user-select: none; white-space: pre-wrap; width: 1px; word-break: break-word; word-wrap: break-word; }\",\".framer-OnyVz .framer-4z548d { bottom: 0px; flex: none; height: 1px; left: 0px; overflow: hidden; position: absolute; width: 100%; z-index: 1; }\",...sharedStyle.css];/**\n * This is a generated Framer component.\n * @framerIntrinsicHeight 168\n * @framerIntrinsicWidth 600\n * @framerCanvasComponentVariantDetails {\"propertyName\":\"variant\",\"data\":{\"default\":{\"layout\":[\"fixed\",\"auto\"]},\"p9ishk1Jh\":{\"layout\":[\"fixed\",\"auto\"]},\"qxQJNdVxZ\":{\"layout\":[\"fixed\",\"auto\"]}}}\n * @framerVariables {\"vd59XDbg4\":\"question\",\"VEAZydqcG\":\"lineVisible\",\"cyaBDXQCV\":\"shippingReturn\",\"ks8LX8u60\":\"detailsBullets\",\"Nll6pCien\":\"detail1\",\"ZO6oYxeAJ\":\"detail2\",\"fjQDDW3fH\":\"detail3\",\"rjfxqlNDV\":\"detail4\"}\n * @framerImmutableVariables true\n * @framerResolvesOwnDefaults true\n * @framerDisplayContentsDiv false\n * @framerAutoSizeImages true\n * @framerComponentViewportWidth true\n * @framerColorSyntax true\n */const FramerIzktuRC_v=withCSS(Component,css,\"framer-OnyVz\");export default FramerIzktuRC_v;FramerIzktuRC_v.displayName=\"FAQ Supply\";FramerIzktuRC_v.defaultProps={height:168,width:600};addPropertyControls(FramerIzktuRC_v,{variant:{options:[\"jOQ17QDcr\",\"p9ishk1Jh\"],optionTitles:[\"Open\",\"Closed\"],title:\"Variant\",type:ControlType.Enum},vd59XDbg4:{defaultValue:\"Which pricing plan is right for me?\",displayTextArea:true,title:\"Question\",type:ControlType.String},onvd59XDbg4Change:{changes:\"vd59XDbg4\",type:ControlType.ChangeHandler},VEAZydqcG:{defaultValue:true,title:\"Line Visible\",type:ControlType.Boolean},onVEAZydqcGChange:{changes:\"VEAZydqcG\",type:ControlType.ChangeHandler},cyaBDXQCV:{defaultValue:\"\",description:\"\",displayTextArea:false,placeholder:\"\",title:\"Shipping & Return\",type:ControlType.String},oncyaBDXQCVChange:{changes:\"cyaBDXQCV\",type:ControlType.ChangeHandler},ks8LX8u60:{defaultValue:\"hello\",displayTextArea:false,title:\"Details Bullets\",type:ControlType.String},onks8LX8u60Change:{changes:\"ks8LX8u60\",type:ControlType.ChangeHandler},Nll6pCien:{defaultValue:\"Detail 1\",displayTextArea:false,title:\"Detail1\",type:ControlType.String},onNll6pCienChange:{changes:\"Nll6pCien\",type:ControlType.ChangeHandler},ZO6oYxeAJ:{defaultValue:\"Detail 2\",displayTextArea:false,title:\"Detail2\",type:ControlType.String},onZO6oYxeAJChange:{changes:\"ZO6oYxeAJ\",type:ControlType.ChangeHandler},fjQDDW3fH:{defaultValue:\"Detail 3\",displayTextArea:false,title:\"Detail3\",type:ControlType.String},onfjQDDW3fHChange:{changes:\"fjQDDW3fH\",type:ControlType.ChangeHandler},rjfxqlNDV:{defaultValue:\"Detail 4\",displayTextArea:false,title:\"Detail4\",type:ControlType.String},onrjfxqlNDVChange:{changes:\"rjfxqlNDV\",type:ControlType.ChangeHandler}});const variationAxes=[{defaultValue:14,maxValue:32,minValue:14,name:\"Optical size\",tag:\"opsz\"},{defaultValue:400,maxValue:900,minValue:100,name:\"Weight\",tag:\"wght\"}];addFonts(FramerIzktuRC_v,[{explicitInter:true,fonts:[{cssFamilyName:\"Inter Variable\",source:\"framer\",style:\"normal\",uiFamilyName:\"Inter\",unicodeRange:\"U+0460-052F, U+1C80-1C88, U+20B4, U+2DE0-2DFF, U+A640-A69F, U+FE2E-FE2F\",url:\"https://xn----9sbmqji2czbya.xn--p1ai/__framerusercontent/assets/mYcqTSergLb16PdbJJQMl9ebYm4.woff2\",variationAxes,weight:\"400\"},{cssFamilyName:\"Inter Variable\",source:\"framer\",style:\"normal\",uiFamilyName:\"Inter\",unicodeRange:\"U+0301, U+0400-045F, U+0490-0491, U+04B0-04B1, U+2116\",url:\"https://xn----9sbmqji2czbya.xn--p1ai/__framerusercontent/assets/ZRl8AlxwsX1m7xS1eJCiSPbztg.woff2\",variationAxes,weight:\"400\"},{cssFamilyName:\"Inter Variable\",source:\"framer\",style:\"normal\",uiFamilyName:\"Inter\",unicodeRange:\"U+1F00-1FFF\",url:\"https://xn----9sbmqji2czbya.xn--p1ai/__framerusercontent/assets/nhSQpBRqFmXNUBY2p5SENQ8NplQ.woff2\",variationAxes,weight:\"400\"},{cssFamilyName:\"Inter Variable\",source:\"framer\",style:\"normal\",uiFamilyName:\"Inter\",unicodeRange:\"U+0370-03FF\",url:\"https://xn----9sbmqji2czbya.xn--p1ai/__framerusercontent/assets/DYHjxG0qXjopUuruoacfl5SA.woff2\",variationAxes,weight:\"400\"},{cssFamilyName:\"Inter Variable\",source:\"framer\",style:\"normal\",uiFamilyName:\"Inter\",unicodeRange:\"U+0100-024F, U+0259, U+1E00-1EFF, U+2020, U+20A0-20AB, U+20AD-20CF, U+2113, U+2C60-2C7F, U+A720-A7FF\",url:\"https://xn----9sbmqji2czbya.xn--p1ai/__framerusercontent/assets/s7NH6sl7w4NU984r5hcmo1tPSYo.woff2\",variationAxes,weight:\"400\"},{cssFamilyName:\"Inter Variable\",source:\"framer\",style:\"normal\",uiFamilyName:\"Inter\",unicodeRange:\"U+0000-00FF, U+0131, U+0152-0153, U+02BB-02BC, U+02C6, U+02DA, U+02DC, U+2000-206F, U+2070, U+2074-207E, U+2080-208E, U+20AC, U+2122, U+2191, U+2193, U+2212, U+2215, U+FEFF, U+FFFD\",url:\"https://xn----9sbmqji2czbya.xn--p1ai/__framerusercontent/assets/7lw0VWkeXrGYJT05oB3DsFy8BaY.woff2\",variationAxes,weight:\"400\"},{cssFamilyName:\"Inter Variable\",source:\"framer\",style:\"normal\",uiFamilyName:\"Inter\",unicodeRange:\"U+0102-0103, U+0110-0111, U+0128-0129, U+0168-0169, U+01A0-01A1, U+01AF-01B0, U+1EA0-1EF9, U+20AB\",url:\"https://xn----9sbmqji2czbya.xn--p1ai/__framerusercontent/assets/wx5nfqEgOXnxuFaxB0Mn9OhmcZA.woff2\",variationAxes,weight:\"400\"},{cssFamilyName:\"Inter\",source:\"framer\",style:\"normal\",uiFamilyName:\"Inter\",unicodeRange:\"U+0460-052F, U+1C80-1C88, U+20B4, U+2DE0-2DFF, U+A640-A69F, U+FE2E-FE2F\",url:\"https://xn----9sbmqji2czbya.xn--p1ai/__framerusercontent/assets/5vvr9Vy74if2I6bQbJvbw7SY1pQ.woff2\",weight:\"400\"},{cssFamilyName:\"Inter\",source:\"framer\",style:\"normal\",uiFamilyName:\"Inter\",unicodeRange:\"U+0301, U+0400-045F, U+0490-0491, U+04B0-04B1, U+2116\",url:\"https://xn----9sbmqji2czbya.xn--p1ai/__framerusercontent/assets/EOr0mi4hNtlgWNn9if640EZzXCo.woff2\",weight:\"400\"},{cssFamilyName:\"Inter\",source:\"framer\",style:\"normal\",uiFamilyName:\"Inter\",unicodeRange:\"U+1F00-1FFF\",url:\"https://xn----9sbmqji2czbya.xn--p1ai/__framerusercontent/assets/Y9k9QrlZAqio88Klkmbd8VoMQc.woff2\",weight:\"400\"},{cssFamilyName:\"Inter\",source:\"framer\",style:\"normal\",uiFamilyName:\"Inter\",unicodeRange:\"U+0370-03FF\",url:\"https://xn----9sbmqji2czbya.xn--p1ai/__framerusercontent/assets/OYrD2tBIBPvoJXiIHnLoOXnY9M.woff2\",weight:\"400\"},{cssFamilyName:\"Inter\",source:\"framer\",style:\"normal\",uiFamilyName:\"Inter\",unicodeRange:\"U+0100-024F, U+0259, U+1E00-1EFF, U+2020, U+20A0-20AB, U+20AD-20CF, U+2113, U+2C60-2C7F, U+A720-A7FF\",url:\"https://xn----9sbmqji2czbya.xn--p1ai/__framerusercontent/assets/JeYwfuaPfZHQhEG8U5gtPDZ7WQ.woff2\",weight:\"400\"},{cssFamilyName:\"Inter\",source:\"framer\",style:\"normal\",uiFamilyName:\"Inter\",unicodeRange:\"U+0000-00FF, U+0131, U+0152-0153, U+02BB-02BC, U+02C6, U+02DA, U+02DC, U+2000-206F, U+2070, U+2074-207E, U+2080-208E, U+20AC, U+2122, U+2191, U+2193, U+2212, U+2215, U+FEFF, U+FFFD\",url:\"https://xn----9sbmqji2czbya.xn--p1ai/__framerusercontent/assets/GrgcKwrN6d3Uz8EwcLHZxwEfC4.woff2\",weight:\"400\"},{cssFamilyName:\"Inter\",source:\"framer\",style:\"normal\",uiFamilyName:\"Inter\",unicodeRange:\"U+0102-0103, U+0110-0111, U+0128-0129, U+0168-0169, U+01A0-01A1, U+01AF-01B0, U+1EA0-1EF9, U+20AB\",url:\"https://xn----9sbmqji2czbya.xn--p1ai/__framerusercontent/assets/b6Y37FthZeALduNqHicBT6FutY.woff2\",weight:\"400\"}]},...PlusFonts,...getFontsFromSharedStyle(sharedStyle.fonts)],{supportsExplicitInterCodegen:true});\nexport const __FramerMetadata__ = {\"exports\":{\"default\":{\"type\":\"reactComponent\",\"name\":\"FramerIzktuRC_v\",\"slots\":[],\"annotations\":{\"framerResolvesOwnDefaults\":\"true\",\"framerContractVersion\":\"1\",\"framerDisplayContentsDiv\":\"false\",\"framerAutoSizeImages\":\"true\",\"framerColorSyntax\":\"true\",\"framerVariables\":\"{\\\"vd59XDbg4\\\":\\\"question\\\",\\\"VEAZydqcG\\\":\\\"lineVisible\\\",\\\"cyaBDXQCV\\\":\\\"shippingReturn\\\",\\\"ks8LX8u60\\\":\\\"detailsBullets\\\",\\\"Nll6pCien\\\":\\\"detail1\\\",\\\"ZO6oYxeAJ\\\":\\\"detail2\\\",\\\"fjQDDW3fH\\\":\\\"detail3\\\",\\\"rjfxqlNDV\\\":\\\"detail4\\\"}\",\"framerComponentViewportWidth\":\"true\",\"framerCanvasComponentVariantDetails\":\"{\\\"propertyName\\\":\\\"variant\\\",\\\"data\\\":{\\\"default\\\":{\\\"layout\\\":[\\\"fixed\\\",\\\"auto\\\"]},\\\"p9ishk1Jh\\\":{\\\"layout\\\":[\\\"fixed\\\",\\\"auto\\\"]},\\\"qxQJNdVxZ\\\":{\\\"layout\\\":[\\\"fixed\\\",\\\"auto\\\"]}}}\",\"framerIntrinsicHeight\":\"168\",\"framerImmutableVariables\":\"true\",\"framerIntrinsicWidth\":\"600\"}},\"Props\":{\"type\":\"tsType\",\"annotations\":{\"framerContractVersion\":\"1\"}},\"__FramerMetadata__\":{\"type\":\"variable\"}}}\n//# sourceMappingURL=./IzktuRC_v.map","/**\n * Initialization utilities for Framer Commerce\n * This file contains functions that should run when the application first loads\n */import{getUTMParameters,getSCARefParameters}from\"https://xn----9sbmqji2czbya.xn--p1ai/__framerusercontent/modules/w24ELWa2giT3SFaWpV77/398w6fPyag8B92ojouQr/utmParams.js\";/**\n * Initialize global functionality for the store\n * This includes capturing UTM parameters, setting up event listeners, etc.\n */export function initializeStore(){// Capture UTM and SCA ref parameters when the page loads\nif(typeof window!==\"undefined\"){// Initialize UTM parameter tracking\ngetUTMParameters();// Initialize SCA ref parameter tracking\ngetSCARefParameters();// Add a listener for history changes to capture tracking parameters\n// when users navigate between pages\ntry{const originalPushState=history.pushState;const originalReplaceState=history.replaceState;history.pushState=function(){originalPushState.apply(this,arguments);getUTMParameters()// Capture UTM parameters after navigation\n;getSCARefParameters()// Capture SCA ref parameters after navigation\n;};history.replaceState=function(){originalReplaceState.apply(this,arguments);getUTMParameters()// Capture UTM parameters after navigation\n;getSCARefParameters()// Capture SCA ref parameters after navigation\n;};// Also listen for popstate events (back/forward navigation)\nwindow.addEventListener(\"popstate\",()=>{getUTMParameters();getSCARefParameters();});}catch(error){console.error(\"Error setting up history listeners:\",error);}}}// Auto-initialize if this module is loaded\ninitializeStore();export default initializeStore;\nexport const __FramerMetadata__ = {\"exports\":{\"initializeStore\":{\"type\":\"function\",\"annotations\":{\"framerContractVersion\":\"1\"}},\"default\":{\"type\":\"function\",\"annotations\":{\"framerContractVersion\":\"1\"}},\"__FramerMetadata__\":{\"type\":\"variable\"}}}","/*\n * Framer Commerce\n * Confidential and Proprietary - All Rights Reserved\n * Unauthorized use, reproduction, distribution, or disclosure of this\n * source code or any related information is strictly prohibited.\n *\n * This software is the exclusive property of Framer Commerce (\"Company\").\n * It is considered highly confidential and proprietary information.\n *\n * Any use, copying, modification, distribution, or sharing of this software,\n * in whole or in part, without the express written permission of the Company\n * is strictly prohibited and may result in legal action.\n *\n * DISCLAIMER: This software does not provide any express or\n * implied warranties, including, but not limited to, the implied warranties\n * of merchantability and fitness for a particular purpose. In no event shall\n * Framer Commerce be liable for any direct, indirect, incidental, special,\n * exemplary, or consequential damages (including, but not limited to, procurement\n * of substitute goods or services; loss of use, data, or profits; or business\n * interruption) however caused and on any theory of liability, whether in\n * contract, strict liability, or tort (including negligence or otherwise)\n * arising in any way out of the use of this software, even if advised of\n * the possibility of such damage.\n *\n * Any unauthorized possession, use, copying, distribution, or dissemination\n * of this software will be considered a breach of confidentiality and may\n * result in legal action.\n *\n * For inquiries, contact:\n * Framer Commerce\n * Email: hello@framercommerce.com\n *\n * © 2025 Butter Supply Inc. All Rights Reserved.\n */import{jsx as _jsx,jsxs as _jsxs}from\"react/jsx-runtime\";import{useEffect,useState,useRef,useCallback,cloneElement}from\"react\";import{createCartMutation,addToCartMutation,cartQuery,updateCartAttributes,updateCartCurrency,getProductMetafields}from\"https://xn----9sbmqji2czbya.xn--p1ai/__framerusercontent/modules/yiRfl1JCGhIBUL31WVDk/wupS2XmBAHu1kBQNv9pi/mutations_v2.js\";import{addPropertyControls,ControlType,RenderTarget}from\"framer\";import{get}from\"lodash-es\";import{appendAllTrackingParamsToUrl}from\"https://xn----9sbmqji2czbya.xn--p1ai/__framerusercontent/modules/w24ELWa2giT3SFaWpV77/398w6fPyag8B92ojouQr/utmParams.js\";import{appendLanguageToUrl}from\"https://xn----9sbmqji2czbya.xn--p1ai/__framerusercontent/modules/vC6fzbfO83MgBPIhn5zl/DUlbmWuOELzEUenVmv3G/locales.js\";import{useIsBrowser}from\"https://xn----9sbmqji2czbya.xn--p1ai/__framerusercontent/modules/ncBs5KPMI9I5GEta13fn/zGXDjuZapa1SGy6D8P5e/IsBrowser.js\";import{trackFacebookPixelAddToCart,trackFacebookPixelInitiateCheckout,trackFacebookPixelViewContent}from\"https://xn----9sbmqji2czbya.xn--p1ai/__framerusercontent/modules/6Zs9CjkPbKzHjoy8LK08/iqoIwmJw4hztafi4V4IV/Fb_pixel.js\";import{sanitizeChildrenRecursively}from\"https://xn----9sbmqji2czbya.xn--p1ai/__framerusercontent/modules/Da0ApllLKQHSw8djEYKs/NKlmeTJYy3YIy3O2qsS9/cloning.js\";// Import initialization utility to ensure UTM tracking is set up\nimport\"https://xn----9sbmqji2czbya.xn--p1ai/__framerusercontent/modules/FXrY3V9ZYVL8aziafDQn/HIuMDRrKIIcsJe65kZwo/initialize.js\";/**\n * @framerDisableUnlink\n */export default function FC_ProductPurchaseButton(props){const{shopifyProductID,available,OutOfStock,SelectVariant,LoadingState,maxQuantity,shopifyProductVariantId,BuyNowATC,title=\"Add to Cart\",required=false,openCart=true}=props;// State from original component\nconst[product,setProduct]=useState();const[activeVariant,setActiveVariant]=useState();const[isInStock,setIsInStock]=useState(true);const[needsVariantSelection,setNeedsVariantSelection]=useState(false);const[isLoading,setIsLoading]=useState(true);const[hasInitialized,setHasInitialized]=useState(false);const[countryCode,setCountryCode]=useState();const isBrowser=useIsBrowser();// Additional state for cart functionality — read persisted state to\n// avoid flickering to 'one-time' on Framer component-variant remounts\nconst[planSelected,setPlanSelected]=useState(()=>{if(typeof window!==\"undefined\"){const persisted=window.__fc_activeSubscription?.[shopifyProductID];if(persisted?.subscriptionId)return persisted.subscriptionId;}return\"one-time\";});const[cartExistingData,setCartExistingData]=useState();const[errorMessage,setErrorMessage]=useState();const[productQuantity,setProductQuantity]=useState(1);const viewContentFired=useRef(false);const[autoSelectFirst,setAutoSelectFirst]=useState(false);const[isVariantManuallySelected,setIsVariantManuallySelected]=useState(false);const[maxQuantityReached,setMaxQuantityReached]=useState(false);const[orderMax,setOrderMax]=useState(0);// Check if variant is autoselected by default\nuseEffect(()=>{if(!isBrowser)return;//console.log(\"FC_ProductPurchaseButton mounted\")\nconst handleAutoSelectFlag=event=>{// console.log(\n//     \"Auto Select event received as:\",\n//     event.detail.autoSelectFirst\n// )\nif(event.detail.shopifyProductID!==`gid://shopify/Product/${props.shopifyProductID}`){return;}setAutoSelectFirst(event.detail.autoSelectFirst);window.__fc_autoSelectFirst=event.detail.autoSelectFirst;//console.log(\"Auto Select First Flag:\", event.detail.autoSelectFirst)\n};document.addEventListener(\"auto_select_first_flag\",handleAutoSelectFlag);return()=>{document.removeEventListener(\"auto_select_first_flag\",handleAutoSelectFlag);};},[isBrowser]);// Calculate total inventory helper function\nconst calculateTotalInventory=useCallback(productData=>{if(!productData||productData===\"404\")return 0;// If totalInventory is available, use it\nif(typeof productData.totalInventory===\"number\"){return productData.totalInventory;}// Otherwise sum up variant quantities\nreturn get(productData,\"variants.edges\",[]).reduce((total,{node})=>{return total+(node.quantityAvailable||0);},0);},[]);// Helper function to check if variant is available for sale\nconst isVariantAvailable=useCallback(variant=>{if(!variant)return false;// If availableForSale is true, the variant can be sold regardless of quantity\nif(variant.availableForSale)return true;// If availableForSale is false, check quantity\nreturn variant.quantityAvailable>0;},[]);// Error handling\nuseEffect(()=>{if(errorMessage&&isBrowser){const event=new CustomEvent(\"errorChanged\",{detail:errorMessage});window.dispatchEvent(event);}},[errorMessage]);// Load cart from localStorage\nuseEffect(()=>{if(!isBrowser||!window[\"shopXtools\"])return;// Try to load cart ID first\nconst savedCartId=localStorage.getItem(\"shopX_cart_id\");if(savedCartId){// If we have a cart ID, fetch the cart data\nwindow.shopXtools.handleCartMutation(cartQuery,{cartId:savedCartId}).then(data=>{if(data?.cart){setCartExistingData(data.cart);window.shopXtools.cart=data.cart;localStorage.setItem(\"shopXtools.cart\",JSON.stringify(data.cart));}}).catch(error=>{// Clear invalid cart data\nlocalStorage.removeItem(\"shopX_cart_id\");localStorage.removeItem(\"shopXtools.cart\");});}// Check for persisted subscription state that may have been set\n// before this component mounted (solves race on page load when\n// default is \"Subscribe\")\nconst persisted=window.__fc_activeSubscription?.[shopifyProductID];if(persisted?.subscriptionId){setPlanSelected(persisted.subscriptionId);}const handleSubscriptionChange=event=>{// Only apply subscription selection for this specific product\nif(event.detail?.productId&&event.detail.productId!==shopifyProductID)return;setPlanSelected(event.detail.subscriptionId);};document.addEventListener(\"subscription__selection-sync\",handleSubscriptionChange);return()=>document.removeEventListener(\"subscription__selection-sync\",handleSubscriptionChange);},[isBrowser,shopifyProductID]);// Add this at the top level with other event handlers\nconst handleQuantityChange=event=>{// console.log(\"Quantity change event received:\", event.detail)\nsetProductQuantity(event.detail);};useEffect(()=>{if(isBrowser){window.addEventListener(\"FcQuantitySelectorchanges\",handleQuantityChange);// Cleanup\nreturn()=>{window.removeEventListener(\"FcQuantitySelectorchanges\",handleQuantityChange);};}},[isBrowser]);// Separate effect for ViewContent tracking - more reliable\nuseEffect(()=>{if(!isBrowser||!product||viewContentFired.current)return;// Wait for either activeVariant or at least one variant to be available\nconst hasVariantData=activeVariant||product.variants?.edges?.length>0;if(hasVariantData){// console.log('[ViewContent] Firing ViewContent event for product:', product.title);\ntrackFacebookPixelViewContent({variant:activeVariant||product.variants?.edges?.[0]?.node,product:product,currency:activeVariant?.price?.currencyCode||product.variants?.edges?.[0]?.node?.price?.currencyCode||\"USD\"});viewContentFired.current=true;}},[isBrowser,product,activeVariant]);useEffect(()=>{if(!isBrowser)return;const handleCurrencyChange=async event=>{const{countryCode}=event.detail;setCountryCode(countryCode);const existingCartId=localStorage.getItem(\"shopX_cart_id\");if(existingCartId){try{const updateData=await window.shopXtools.handleCartMutation(updateCartCurrency,{cartId:existingCartId,countryCode:countryCode});if(updateData?.cartBuyerIdentityUpdate?.cart){window.shopXtools.cart=updateData.cartBuyerIdentityUpdate.cart;window.dispatchEvent(new Event(\"shopXtools-cart-update\"));}else{window.dispatchEvent(new CustomEvent(\"errorChanged\",{detail:\"Failed to update cart with new country code\"}));}}catch(error){window.dispatchEvent(new CustomEvent(\"errorChanged\",{detail:error.message||\"Failed to update cart currency\"}));}}};window.addEventListener(\"currency_changed\",handleCurrencyChange);return()=>{window.removeEventListener(\"currency_changed\",handleCurrencyChange);};},[isBrowser]);// Load product data and set up event listeners\nuseEffect(()=>{if(!isBrowser)return;const handleSingleVariantProduct=productNode=>{if(!productNode)return false;const variants=get(productNode,\"variants.edges\",[]);if(variants.length===1){const variant=variants[0].node;setActiveVariant(variant);if(!isVariantManuallySelected){window.__fc_activeVariantId=variant.id;}setIsInStock(isVariantAvailable(variant));setNeedsVariantSelection(false);return true;}return false;};const handleProductData=_matchingProduct=>{// Early return if we already have this exact product loaded\nif(product&&product!==\"404\"){const currentProductId=product?.id;const incomingProductId=_matchingProduct?.node?.id;if(currentProductId&&incomingProductId&&currentProductId===incomingProductId){// console.log(\n//   '[handleProductData] Product already loaded, skipping update'\n// );\nreturn;}}// console.log(\n//   '[handleProductData] Processing product update',\n//   product,\n//   _matchingProduct\n// );\nif(_matchingProduct){const productNode=_matchingProduct.node;setProduct(productNode||\"404\");// Fetch order_max if we have a product handle\nif(productNode?.handle){fetchOrderMax(productNode.handle);}// If shopifyProductVariantId is provided, find and set that variant\nif(shopifyProductVariantId&&productNode){const variantId=`gid://shopify/ProductVariant/${shopifyProductVariantId}`;const matchingVariant=get(productNode,\"variants.edges\",[]).find(({node})=>node.id===variantId);if(matchingVariant){setActiveVariant(matchingVariant.node);if(!isVariantManuallySelected){window.__fc_activeVariantId=matchingVariant.node.id;}setIsInStock(isVariantAvailable(matchingVariant.node));setNeedsVariantSelection(false);return;// Exit early as we've found our variant\n}}// Immediately handle single variant products\nif(handleSingleVariantProduct(productNode)){return;// Exit early as we've handled the single variant\n}if(autoSelectFirst&&!isVariantManuallySelected){//console.log(\"Auto-selecting the first variant\");\nconst firstAvailableVariant=productNode.variants.edges.find(edge=>edge.node.availableForSale)?.node;if(firstAvailableVariant){setActiveVariant(firstAvailableVariant);if(!isVariantManuallySelected){window.__fc_activeVariantId=firstAvailableVariant.id;}setIsInStock(isVariantAvailable(firstAvailableVariant));setNeedsVariantSelection(false);return;// Exit early as we've set the active variant\n}}// For multi-variant products without a selected variant\nconst variants=get(productNode,\"variants.edges\",[]);const hasMultipleVariants=variants.length>1;const optionsCount=get(productNode,\"options\",[]).length||0;// Only update needsVariantSelection if we don't have an active variant.\n// This is to prevent the \"Select Variant\" button from showing when the variant is already selected.\nif(!activeVariant){if(!autoSelectFirst&&hasMultipleVariants){setNeedsVariantSelection(true);}else{setNeedsVariantSelection(!shopifyProductVariantId&&hasMultipleVariants);}}// Check if any variant is available\nconst anyVariantAvailable=variants.some(({node})=>isVariantAvailable(node));setIsInStock(anyVariantAvailable);// If nothing is available, do not prompt for variant selection\nif(!anyVariantAvailable){setNeedsVariantSelection(false);}}else{setProduct(\"404\");setIsInStock(false);}};// Check if we already have product data available\nif(window.shopXtools?.products&&Array.isArray(window.shopXtools.products)&&!product){const _matchingProduct=window.shopXtools.products.find(({node})=>node.id===`gid://shopify/Product/${shopifyProductID}`);if(_matchingProduct){// console.log(\n//   '[PURCHASE BUTTON] Found matching product on mount, loading it'\n// );\nhandleProductData(_matchingProduct);}else{// console.log(\n//   '[PURCHASE BUTTON] No matching product found in existing products'\n// );\n}}const productsReadyHandler=()=>{if(window?.shopXtools?.products){const matchingProduct=window.shopXtools.products.find(({node:product})=>product.id===`gid://shopify/Product/${shopifyProductID}`);// console.log(\n//   '[productsReadyHandler] Found matching product:',\n//   !!matchingProduct\n// );\n// Only update if we don't already have this product data loaded\nif(!product||product===\"404\"){// console.log(\n//   '[productsReadyHandler] No product loaded yet, calling handleProductData'\n// );\nhandleProductData(matchingProduct);}}};const variantChangeHandler=e=>{// Only update the variant if no shopifyProductVariantId is provided\n// console.log(\"Variant changed, active variant is\", e.detail)\nif(e.detail.productId!==`gid://shopify/Product/${shopifyProductID}`){return;}if(e.detail){// Normalize completeness: some dispatchers may omit isCompleteVariant.\nconst productOptions=get(product,\"options\",[])||[];const selectedArray=Array.isArray(e.detail.selectedOptions)?e.detail.selectedOptions:[];const selectedNames=new Set(selectedArray.map(o=>o?.name).filter(Boolean));const isCompleteFromNames=productOptions.length>0&&productOptions.every(opt=>selectedNames.has(opt.name));const isComplete=e.detail.isCompleteVariant===true||isCompleteFromNames;// If selection is partial, DO NOT treat it as an active variant for purchasing\nif(!isComplete){setIsVariantManuallySelected(true);setActiveVariant(null);window.__fc_activeVariantId=undefined;setNeedsVariantSelection(true);return;}// Complete selection – safe to treat as active variant\nsetActiveVariant(e.detail);setIsVariantManuallySelected(true);window.__fc_activeVariantId=e.detail.id;setIsInStock(e.detail.quantityAvailable>0);// console.log(\"e.detail.id\", e.detail.id)\n// console.log(\n//     \"window.__fc_activeVariantId\",\n//     window.__fc_activeVariantId\n// )\nconst cartQuantity=getCurrentCartQuantity(e.detail.id);// console.log(\"variantChangeHandler: cartQuantity\", cartQuantity)\n// if there's a cart item, it can reach the stock limit only if variant's quantityAvailable > 0\n// if variant's quantityAvailable = 0, it's out of stock, and we don't show 'limit reached' state\n// if variant's quantityAvailable < 0, continue selling when out of stock is enabled, so limit cannot ever be reached\nif(cartQuantity===e.detail.quantityAvailable&&e.detail.quantityAvailable>0){// console.log(\"variantChangeHandler: max reached\")\nsetMaxQuantityReached(true);}else{setMaxQuantityReached(false);}// When autoSelectFirst is false, we need to make sure all variants are selected\n// before changing the button state\n// Only mark selection as complete when all options are selected\nif(isComplete){setNeedsVariantSelection(false);}else{setNeedsVariantSelection(true);}}};document.addEventListener(\"data__products-ready\",productsReadyHandler);document.addEventListener(\"product__active-variant__changed\",variantChangeHandler);return()=>{document.removeEventListener(\"data__products-ready\",productsReadyHandler);document.removeEventListener(\"product__active-variant__changed\",variantChangeHandler);};},[shopifyProductID,shopifyProductVariantId,activeVariant,isBrowser,calculateTotalInventory,autoSelectFirst,product]);// Update variant selection state when activeVariant changes\nuseEffect(()=>{if(!product||product===\"404\")return;const variants=get(product,\"variants.edges\",[]);const hasMultipleVariants=variants.length>1;const noVariantSelected=!activeVariant&&!shopifyProductVariantId;// console.log('Variant selection state update:', {\n//     hasMultipleVariants,\n//     noVariantSelected,\n//     activeVariant,\n//     shopifyProductVariantId\n// })\nsetNeedsVariantSelection(hasMultipleVariants&&noVariantSelected);},[product,activeVariant,shopifyProductVariantId]);// Cart functionality\n// Add new state for order field validation\nconst[orderFieldError,setOrderFieldError]=useState(false);// Debug logging function\nconst logDebug=(message,data)=>{// Empty function - no logging\n};// Enhanced validation function with logging\nconst validateOrderField=()=>{if(!props.required){logDebug(\"Validation skipped - not required\",{required:props.required});return true;}const productSpecificKey=`fc_cart_attributes_${props.shopifyProductID}`;const storedAttributes=sessionStorage.getItem(productSpecificKey);logDebug(\"Checking stored attributes\",{productSpecificKey,hasStoredAttributes:!!storedAttributes});if(!storedAttributes){return false;}try{const parsedAttrs=JSON.parse(storedAttributes);// Check if any attribute has a non-empty value\nconst hasValidValue=Object.values(parsedAttrs).some(value=>value&&String(value).trim()!==\"\");logDebug(\"Validation result\",{attributes:parsedAttrs,isValid:hasValidValue});return hasValidValue;}catch(error){return false;}};// Effect to initialize validation state\nuseEffect(()=>{if(props.required){const isValid=validateOrderField();logDebug(\"Initial validation\",{isValid,required:props.required});setOrderFieldError(!isValid);}},[props.required,props.shopifyProductID]);// Listen for order field changes with logging\nuseEffect(()=>{if(props.required){const handleOrderFieldChange=event=>{logDebug(\"Order field change event received\",event.detail);const isValid=validateOrderField();setOrderFieldError(!isValid);logDebug(\"Order field validation updated\",{isValid,orderFieldError:!isValid});};window.addEventListener(\"orderFieldChanged\",handleOrderFieldChange);return()=>window.removeEventListener(\"orderFieldChanged\",handleOrderFieldChange);}},[props.required]);const[isInputRequired,setIsInputRequired]=useState(false);// Effect to check if the input field exists and is required\nuseEffect(()=>{const checkInputRequirement=()=>{const configKey=`fc_input_config_${shopifyProductID}`;const config=sessionStorage.getItem(configKey);// Only set as required if the config exists and required is true\nif(config){const{required}=JSON.parse(config);setIsInputRequired(required);}else{// If no config exists, the field isn't on the page\nsetIsInputRequired(false);}};checkInputRequirement();// Listen for config changes\nwindow.addEventListener(\"inputConfigChanged\",checkInputRequirement);return()=>window.removeEventListener(\"inputConfigChanged\",checkInputRequirement);},[shopifyProductID]);const getLineItem=()=>{const merchandiseId=activeVariant?.id||(props.shopifyProductVariantId?`gid://shopify/ProductVariant/${props.shopifyProductVariantId}`:null);if(!merchandiseId){throw new Error(\"No valid product variant selected\");}const lineItem={merchandiseId,quantity:productQuantity};// Add selling plan ID if a subscription is selected\nif(planSelected&&planSelected!==\"one-time\"){lineItem[\"sellingPlanId\"]=planSelected;}try{const productSpecificKey=`fc_cart_attributes_${props.shopifyProductID}`;const stored=sessionStorage.getItem(productSpecificKey);if(!stored)return lineItem;const data=JSON.parse(stored);// Get all attributes instead of just checking for specific ones\nconst attributes=[];// Process all key-value pairs in the stored data\nObject.entries(data).forEach(([key,value])=>{if(value&&String(value).trim()){attributes.push({key,value:String(value).trim()});}});// Only add attributes if we have any\nif(attributes.length>0){lineItem[\"attributes\"]=attributes;}}catch(e){console.error(\"Error adding attributes to cart item:\",e);}return lineItem;};// Fetch order_max from product metafields\nconst fetchOrderMax=useCallback(async productHandle=>{if(!productHandle)return;try{const metafieldsResponse=await window.shopXtools?.handleCartMutation?.(getProductMetafields,{handle:productHandle});const max=parseInt(metafieldsResponse?.product?.metafield_order_max?.value,10);if(!isNaN(max)&&max>0){setOrderMax(max);// console.log(\"Fetched order max\", max)\n}else{setOrderMax(0);}}catch(error){console.warn(\"Could not fetch product metafields for order_max:\",error);setOrderMax(0);}},[]);// Modify the getCurrentCartQuantity function to calculate per-product quantity\nconst getCurrentCartQuantity=useCallback(variantId=>{// if (!cartExistingData?.lines?.edges) {\n//     return 0\n// }\nconst liveCart=window?.shopXtools?.cart;setCartExistingData(liveCart);const liveEdges=liveCart?.lines?.edges;if(!liveEdges)return 0;// If we have a product handle, calculate per-product quantity\nif(product?.handle&&orderMax>0){const productVariantIds=get(product,\"variants.edges\",[]).map(({node})=>node.id);const totalQuantity=liveEdges.reduce((total,{node})=>{if(productVariantIds.includes(node.merchandise.id)){return total+node.quantity;}return total;},0);// console.log(\"getCurrentCartQuantity (per-product):\", totalQuantity)\nreturn totalQuantity;}// Fallback to variant-specific quantity\nconst quantity=liveEdges.reduce((total,{node})=>{if(node.merchandise.id===variantId){return total+node.quantity;}return total;},0);// console.log(\"getCurrentCartQuantity (per-variant):\", quantity)\nreturn quantity;},[product,orderMax]);const handleAddToCart=async()=>{try{if(!isBrowser)return;const variantId=activeVariant?.id||(props.shopifyProductVariantId?`gid://shopify/ProductVariant/${props.shopifyProductVariantId}`:null);const currentCartQuantity=getCurrentCartQuantity(variantId);// console.log(\"currentCartQuantity\", currentCartQuantity)\n// Check order_max from product metafields\nif(orderMax>0){// console.log(\"orderMax > 0\", orderMax)\n// Check if we've already reached the product limit\nif(currentCartQuantity>=orderMax){// console.log(\"currentCartQuantity >= orderMax: Max reached\")\nsetMaxQuantityReached(true);return;}}// Check quantityAvailable when orderMax is 0 or not set\nif(orderMax===0&&activeVariant&&activeVariant.quantityAvailable>0){// console.log(\"orderMax is 0, checking quantityAvailable\")\n// console.log(\"activeVariant.quantityAvailable\", activeVariant.quantityAvailable)\n// Check if we've already reached the available quantity\nif(currentCartQuantity>=activeVariant.quantityAvailable){// console.log(\"currentCartQuantity >= quantityAvailable: Max reached\")\nsetMaxQuantityReached(true);return;}}if(props.required||isInputRequired){const productSpecificKey=`fc_cart_attributes_${props.shopifyProductID}`;const storedAttributes=sessionStorage.getItem(productSpecificKey);const inputElement=document.querySelector(`[data-product-id=\"${props.shopifyProductID}\"]`);const currentInputValue=inputElement?.value||\"\";// Don't check for unsaved input if there's no input element or value\nif(inputElement&&currentInputValue&&storedAttributes){try{// Parse stored attributes\nconst parsedAttrs=JSON.parse(storedAttributes);// Check if the current input value is different from any of the stored attribute values\nconst valueIsSaved=Object.values(parsedAttrs).some(attrValue=>String(attrValue).trim()===currentInputValue.trim());if(!valueIsSaved){window.dispatchEvent(new CustomEvent(\"inputValidationFailed\",{detail:{productId:props.shopifyProductID,message:\"Please save your input before adding to cart\"}}));return;}}catch(e){// If we can't parse stored attributes, we can't validate\nwindow.dispatchEvent(new CustomEvent(\"inputValidationFailed\",{detail:{productId:props.shopifyProductID,message:\"Please fill in all required fields\"}}));return;}}// Now check if there are any stored attributes at all\nif(!storedAttributes){window.dispatchEvent(new CustomEvent(\"inputValidationFailed\",{detail:{productId:props.shopifyProductID,message:\"Please fill in all required fields\"}}));return;}// Finally check if any of the stored attributes has a valid value\ntry{const parsedAttrs=JSON.parse(storedAttributes);const hasValidValue=Object.values(parsedAttrs).some(value=>value&&String(value).trim()!==\"\");if(!hasValidValue){window.dispatchEvent(new CustomEvent(\"inputValidationFailed\",{detail:{productId:props.shopifyProductID,message:\"Please fill in all required fields\"}}));return;}}catch(e){window.dispatchEvent(new CustomEvent(\"inputValidationFailed\",{detail:{productId:props.shopifyProductID,message:\"Please fill in all required fields\"}}));return;}}const lines=[getLineItem()];// console.log(\"handleAddToCart lines:\", lines)\n// Retrieve the selected country code from localStorage\nconst countryCode=localStorage.getItem(\"selectedCountryCode\");let existingCartId=localStorage.getItem(\"shopX_cart_id\");if(!BuyNowATC){if(existingCartId){try{const cartValidation=await window.shopXtools.handleCartMutation(cartQuery,{cartId:existingCartId});if(!cartValidation?.cart){localStorage.removeItem(\"shopX_cart_id\");localStorage.removeItem(\"shopXtools.cart\");existingCartId=null;}}catch(error){localStorage.removeItem(\"shopX_cart_id\");localStorage.removeItem(\"shopXtools.cart\");existingCartId=null;}}if(!existingCartId){try{const cartData=await window.shopXtools.handleCartMutation(createCartMutation,{lines,countryCode:countryCode});if(cartData?.cartCreate?.cart?.id){localStorage.setItem(\"shopX_cart_id\",cartData.cartCreate.cart.id);localStorage.setItem(\"shopXtools.cart\",JSON.stringify(cartData.cartCreate.cart));window.shopXtools.cart=cartData.cartCreate.cart;setCartExistingData(window.shopXtools.cart);// Dispatch event after updating the cart\nwindow.dispatchEvent(new Event(\"shopXtools-cart-update\"));// Analytics\nconst currency=activeVariant?.price?.currencyCode||\"USD\";const value=parseFloat((parseFloat(activeVariant?.price?.amount||\"0\")*productQuantity).toFixed(2));const item_id=cleanShopifyId(activeVariant?.id);const item_name=product?.title||\"\";// const item_variant = activeVariant?.selectedOptions\n//     .map(opt => `${opt.name} ${opt.value}`)\n//     .join(\" / \") || null\nconst item_variant=activeVariant?.selectedOptions?activeVariant.selectedOptions.map(opt=>`${opt.name} ${opt.value}`).join(\" / \")||null:\"\";const price=parseFloat(activeVariant?.price?.amount||\"0\");// Google Analytics tracking (add_to_cart)\nif(item_id&&item_name&&item_variant&&price>0){const payload={currency,value,items:[{item_id,item_name,item_variant,price,item_brand:product?.vendor||null,item_category:product?.productType||null,quantity:productQuantity,// TagHound compatibility\nSKU:item_id,\"Item Name\":item_name}]};// console.log('[FC_ProductPurchaseButton ANALYTICS] About to fire add_to_cart with payload:', payload);\nif(typeof window.fcTrackGAEvent===\"function\"){window.fcTrackGAEvent(\"add_to_cart\",payload);// console.log('[FC_ProductPurchaseButton ANALYTICS] Fired add_to_cart:', payload.items[0]);\n}}else{console.warn(\"❌ Skipping add_to_cart: missing item data\",{item_id,item_name,item_variant,price,value});}// Meta Pixel tracking\ntrackFacebookPixelAddToCart({variant:activeVariant,product:product,quantity:productQuantity,currency:currency});window.shopXtools.dispatchEvent(\"checkout__changed\",{__triggerCartModal:openCart});}else{window.dispatchEvent(new CustomEvent(\"errorChanged\",{detail:\"Failed to add to cart\"}));}}catch(error){window.dispatchEvent(new CustomEvent(\"errorChanged\",{detail:error.message||\"Failed to create new cart\"}));}}else{const cartData=await window.shopXtools.handleCartMutation(addToCartMutation,{cartId:existingCartId,lines});if(cartData?.cartLinesAdd?.cart){localStorage.setItem(\"shopXtools.cart\",JSON.stringify(cartData.cartLinesAdd.cart));window.shopXtools.cart=cartData.cartLinesAdd.cart;// console.log(\"handleAddToCart cart:\", window.shopXtools.cart)\nsetCartExistingData(window.shopXtools.cart);// Dispatch event after updating the cart\nwindow.dispatchEvent(new Event(\"shopXtools-cart-update\"));// Google Analytics tracking\nconst currency=activeVariant?.price?.currencyCode||\"USD\";const value=parseFloat((parseFloat(activeVariant?.price?.amount||\"0\")*productQuantity).toFixed(2));const item_id=cleanShopifyId(activeVariant?.id);const item_name=product?.title||\"\";// const item_variant = activeVariant?.selectedOptions\n//     .map(opt => `${opt.name} ${opt.value}`)\n//     .join(\" / \") || null\nconst item_variant=activeVariant?.selectedOptions?activeVariant.selectedOptions.map(opt=>`${opt.name} ${opt.value}`).join(\" / \")||null:\"\";const price=parseFloat(activeVariant?.price?.amount||\"0\");// Google Analytics tracking (add_to_cart)\nif(item_id&&item_name&&item_variant&&price>0){const payload={currency,value,items:[{item_id,item_name,item_variant,price,item_brand:product?.vendor||null,item_category:product?.productType||null,quantity:productQuantity,// TagHound compatibility\nSKU:item_id,\"Item Name\":item_name}]};// console.log('[FC_ProductPurchaseButton ANALYTICS] About to fire add_to_cart with payload:', payload);\nif(typeof window.fcTrackGAEvent===\"function\"){window.fcTrackGAEvent(\"add_to_cart\",payload);// console.log('[FC_ProductPurchaseButton ANALYTICS] Fired add_to_cart:', payload.items[0]);\n}}else{console.warn(\"❌ Skipping add_to_cart: missing item data\",{item_id,item_name,item_variant,price,value});}// Meta Pixel tracking\ntrackFacebookPixelAddToCart({variant:activeVariant,product:product,quantity:productQuantity,currency:currency});window.shopXtools.dispatchEvent(\"checkout__changed\",{__triggerCartModal:openCart});}else{window.dispatchEvent(new CustomEvent(\"errorChanged\",{detail:\"Failed to add to cart\"}));}}}// Directly proceed to checkout without opening the cart modal\nif(BuyNowATC){//console.log(\"Directly proceeding to checkout without opening the cart modal\")\n// Create the cart and proceed to checkout\nconst variables={lines,countryCode:countryCode};//console.log(\"Sending mutation with variables:\", variables)\nconst result=await window[\"shopXtools\"]?.handleTemporaryCartMutation(createCartMutation,variables);//console.log(\"result:\", result)\nconst checkoutUrl=result.cartCreate.cart.checkoutUrl;if(checkoutUrl){//console.log(\"checkoutUrl:\", checkoutUrl)\nlet finalCheckoutUrl=checkoutUrl;if(finalCheckoutUrl){// Analytics\nconst currency=activeVariant?.price?.currencyCode||\"USD\";const value=parseFloat((parseFloat(activeVariant?.price?.amount||\"0\")*productQuantity).toFixed(2));const item_id=cleanShopifyId(activeVariant?.id);const item_name=product?.title||\"\";// const item_variant = activeVariant?.selectedOptions\n//     .map(opt => `${opt.name} ${opt.value}`)\n//     .join(\" / \") || null\nconst item_variant=activeVariant?.selectedOptions?activeVariant.selectedOptions.map(opt=>`${opt.name} ${opt.value}`).join(\" / \")||null:\"\";const price=parseFloat(activeVariant?.price?.amount||\"0\");// Google Analytics tracking (begin_checkout)\nif(item_id&&item_name&&item_variant&&price>0){const payload={currency,value,items:[{item_id,item_name,item_variant,price,item_brand:product?.vendor||null,item_category:product?.productType||null,quantity:productQuantity,// TagHound compatibility\nSKU:item_id,\"Item Name\":item_name}]};// console.log('[FC_ProductPurchaseButton ANALYTICS] About to fire begin_checkout with payload:', payload);\nif(typeof window.fcTrackGAEvent===\"function\"){window.fcTrackGAEvent(\"begin_checkout\",payload);// console.log('[FC_ProductPurchaseButton ANALYTICS] Fired begin_checkout:', payload.items[0]);\n}}else{console.warn(\"❌ Skipping begin_checkout: missing item data\",{item_id,item_name,item_variant,price,value});}// Meta Pixel tracking\ntrackFacebookPixelInitiateCheckout({variant:activeVariant,product:product,quantity:productQuantity,currency:currency,useBeacon:true});finalCheckoutUrl=appendAllTrackingParamsToUrl(finalCheckoutUrl);finalCheckoutUrl=appendLanguageToUrl(finalCheckoutUrl);window.location.assign(finalCheckoutUrl);}}else{window.dispatchEvent(new CustomEvent(\"errorChanged\",{detail:\"Failed to create cart for checkout\"}));}}if(lines[0].attributes){// const cartId = existingCartId || cartData?.cartCreate?.cart?.id;\nconst cartId=existingCartId//removed check for cartData\n;await window.shopXtools.handleCartMutation(updateCartAttributes,{cartId,attributes:lines[0].attributes});}}catch(error){window.dispatchEvent(new CustomEvent(\"errorChanged\",{detail:error.message||\"Failed to add item to cart\"}));}};// Update loading state when product data is received\nuseEffect(()=>{if(product){setIsLoading(false);}},[product]);// Initialize hasInitialized\nuseEffect(()=>{if(!hasInitialized&&(product||shopifyProductID)){// && (product || shopifyProductID) part ensures the button is rendered in Framer preview\n// Small delay to ensure we have all the necessary data\nconst timer=setTimeout(()=>{setHasInitialized(true);},50);return()=>clearTimeout(timer);}},[product]);// Handle loading state for canvas preview\nconst isDesignOrPreview=RenderTarget.current()===RenderTarget.canvas;let content=null;if(isDesignOrPreview){content=available?.[0]||null// Always show available state in canvas\n;}else if(!hasInitialized){content=null;}else if(maxQuantityReached&&maxQuantity?.[0]){content=maxQuantity?.[0]||null;}else if(!isInStock&&!activeVariant?.availableForSale||activeVariant&&!isVariantAvailable(activeVariant)||product&&!get(product,\"variants.edges\",[]).some(({node})=>isVariantAvailable(node))||props.required&&orderFieldError){// Prioritize Out of Stock over prompting variant selection\ncontent=OutOfStock?.[0]||null;}else if(needsVariantSelection){content=SelectVariant?.[0]||null;}else{content=available?.[0]||null;}// Near the bottom of the component where we create clonedElement\nconst canAddToCart=(isInStock||activeVariant&&activeVariant.availableForSale)&&!needsVariantSelection&&!maxQuantityReached&&(!props.required||!orderFieldError);const handleClick=e=>{if(canAddToCart){handleAddToCart();}};// Single consolidated effect for maxQuantityReached\nuseEffect(()=>{const variantId=activeVariant?.id||(props.shopifyProductVariantId?`gid://shopify/ProductVariant/${props.shopifyProductVariantId}`:null);// Always read from live cart to avoid stale state after updates\nconst currentQuantity=getCurrentCartQuantity(variantId);// console.log(\"currentQuantity\", currentQuantity)\nlet shouldBeAtMax=false;// Check orderMax first (takes precedence)\nif(orderMax>0){shouldBeAtMax=currentQuantity>=orderMax;// console.log(\"orderMax check - shouldBeAtMax:\", shouldBeAtMax)\n}else if(orderMax===0&&activeVariant){if(activeVariant.quantityAvailable>0&&activeVariant.availableForSale){// If no orderMax, check quantityAvailable\nshouldBeAtMax=currentQuantity>=activeVariant.quantityAvailable;// console.log(\"quantityAvailable check - shouldBeAtMax:\", shouldBeAtMax)\n}}if(shouldBeAtMax!==maxQuantityReached){// console.log(\"shouldBeAtMax !== maxQuantityReached\", maxQuantityReached, shouldBeAtMax)\nsetMaxQuantityReached(shouldBeAtMax);}},[orderMax,activeVariant,props.shopifyProductVariantId,maxQuantityReached,getCurrentCartQuantity]);// Add this effect near the other useEffect hooks\nuseEffect(()=>{if(orderMax>0){window.dispatchEvent(new CustomEvent(\"setMaxQuantity\",{detail:{productId:props.shopifyProductID,maxQuantity:orderMax}}));}},[orderMax,props.shopifyProductID]);// Add this effect to handle cart updates\nuseEffect(()=>{const variantId=activeVariant?.id||(props.shopifyProductVariantId?`gid://shopify/ProductVariant/${props.shopifyProductVariantId}`:null);const currentInCart=getCurrentCartQuantity(variantId);if(orderMax>0&&cartExistingData){// Handle orderMax scenario\nconst remainingAllowed=Math.max(0,orderMax-currentInCart);window.dispatchEvent(new CustomEvent(\"setMaxQuantity\",{detail:{productId:props.shopifyProductID,maxQuantity:remainingAllowed}}));// console.log(\"sending setMaxQuantity, orderMAx > 0 (cartExistingData)\", {\n//     detail: {\n//         productId: props.shopifyProductID,\n//         maxQuantity: remainingAllowed,\n//     },\n// })\n}else if(orderMax===0&&activeVariant&&cartExistingData){// console.log(\"cartExistingData, currentInCart\", cartExistingData, currentInCart)\nif(activeVariant.quantityAvailable>0&&activeVariant.availableForSale){// Handle quantityAvailable scenario\nconst remainingAllowed=Math.max(0,activeVariant.quantityAvailable-currentInCart);window.dispatchEvent(new CustomEvent(\"setMaxQuantity\",{detail:{productId:props.shopifyProductID,maxQuantity:remainingAllowed}}));// console.log(\"sending setMaxQuantity,  orderMAx = 0 (cartExistingData)\", {\n//     detail: {\n//         productId: props.shopifyProductID,\n//         maxQuantity: remainingAllowed,\n//     },\n// })\n}}},[cartExistingData,orderMax,activeVariant,props.shopifyProductVariantId,getCurrentCartQuantity,productQuantity]);// Effect to handle general cart updates\nuseEffect(()=>{const handleCartUpdate=()=>{// console.log(\"handleCartUpdate: Cart updated, refreshing purchase button state\")\n// Force recalculation of maxQuantityReached state\nconst variantId=activeVariant?.id||null;const currentQuantity=getCurrentCartQuantity(variantId);if(orderMax>0){const shouldBeAtMax=currentQuantity>=orderMax;setMaxQuantityReached(shouldBeAtMax);// console.log(\"handleCartUpdate: orderMax > 0, shouldBeAtMax:\", shouldBeAtMax)\n}else if(orderMax===0&&activeVariant&&activeVariant.quantityAvailable>0){const shouldBeAtMax=currentQuantity>=activeVariant.quantityAvailable;setMaxQuantityReached(shouldBeAtMax);// console.log(\"handleCartUpdate: orderMax = 0, shouldBeAtMax:\", shouldBeAtMax)\n}else{setMaxQuantityReached(false);// console.log(\"handleCartUpdate: resetting maxQuantityReached to false\")\n}const orderMaxRemainingAllowed=Math.max(0,orderMax-currentQuantity);// console.log(\"handleCartUpdate: orderMaxRemainingAllowed\", orderMaxRemainingAllowed)\nconst variantQnt=activeVariant?.quantityAvailable<=0&&activeVariant?.availableForSale?100:activeVariant?.quantityAvailable;// console.log(\"handleCartUpdate: variantQnt\", variantQnt)\nconst remainingAllowed=Math.max(0,variantQnt-currentQuantity);// console.log(\"handleCartUpdate: remainingAllowed\", remainingAllowed)\nwindow.dispatchEvent(new CustomEvent(\"setMaxQuantity\",{detail:{productId:props.shopifyProductID,maxQuantity:orderMax>0?orderMaxRemainingAllowed:remainingAllowed}}));// console.log(\"handleCartUpdate: sending setMaxQuantity\", {\n//     detail: {\n//         productId: props.shopifyProductID,\n//         maxQuantity: orderMax > 0 ? orderMaxRemainingAllowed : remainingAllowed,\n//     },\n// })\n};window.addEventListener(\"shopXtools-cart-update\",handleCartUpdate);return()=>window.removeEventListener(\"shopXtools-cart-update\",handleCartUpdate);},[activeVariant,orderMax,getCurrentCartQuantity,props.shopifyProductID]);useEffect(()=>{if(!isBrowser)return;const handleResize=()=>{if(typeof window!==\"undefined\"&&window.__fc_autoSelectFirst!==undefined){setAutoSelectFirst(window.__fc_autoSelectFirst);}if(typeof window!==\"undefined\"&&window.__fc_activeVariantId!==undefined){const storedId=window.__fc_activeVariantId;// console.log(\"storedId\", storedId)\nif(storedId){const variants=get(product,\"variants.edges\",[]);const found=variants.find(({node})=>node.id===storedId);// console.log(\"found\", found)\nif(found)setActiveVariant(found.node);// console.log(\"setting activeVariant\", found.node)\n}}if(product){const variants=get(product,\"variants.edges\",[]);const hasMultipleVariants=variants.length>1;// console.log(\"activeVariant\", activeVariant)\nif(autoSelectFirst){setNeedsVariantSelection(false);// console.log(\"handleResize: autoSelectFirst, setting needsVariantSelection to false\");\n}else if(activeVariant){// If a variant is already selected, don't require selection\nsetNeedsVariantSelection(false);// console.log(\"handleResize: activeVariant exists, setting needsVariantSelection to false\");\n}else if(!autoSelectFirst&&hasMultipleVariants){setNeedsVariantSelection(true);// console.log(\"handleResize: !autoSelectFirst && hasMultipleVariants\", autoSelectFirst, hasMultipleVariants);\n}else{setNeedsVariantSelection(!shopifyProductVariantId&&hasMultipleVariants);//console.log(\"handleResize: !shopifyProductVariantId && hasMultipleVariants\", shopifyProductVariantId, hasMultipleVariants);\n}}};window.addEventListener(\"resize\",handleResize);return()=>{window.removeEventListener(\"resize\",handleResize);};},[isBrowser,product,activeVariant,autoSelectFirst,shopifyProductVariantId]);const viewItemTrackedRef=useRef();const pageViewTrackedRef=useRef(false);// Single consolidated analytics effect\nuseEffect(()=>{if(!product)return;// Helper to extract brand and category if available\nconst item_brand=product.vendor||null;const item_category=product.productType||null;// Always fire page_view on initial load\nif(!pageViewTrackedRef.current){const productId=cleanShopifyId(product.id);const productName=product.title;const defaultVariant=get(product,\"variants.edges\",[])[0]?.node;let payload;if(defaultVariant){// Product with variants\npayload={currency:defaultVariant.price?.currencyCode||\"USD\",value:parseFloat(defaultVariant.price?.amount||\"0\"),items:[{item_id:cleanShopifyId(defaultVariant.id),item_name:productName,item_variant:defaultVariant.title,price:parseFloat(defaultVariant.price?.amount||\"0\"),item_brand,item_category,quantity:1,// TagHound compatibility\nSKU:cleanShopifyId(defaultVariant.id),\"Item Name\":productName}]};}else{// Product with no variants\npayload={currency:product.priceRange?.minVariantPrice?.currencyCode||\"USD\",value:parseFloat(product.priceRange?.minVariantPrice?.amount||\"0\"),items:[{item_id:productId,item_name:productName,price:parseFloat(product.priceRange?.minVariantPrice?.amount||\"0\"),item_brand,item_category,quantity:1,// TagHound compatibility\nSKU:productId,\"Item Name\":productName}]};}// We do not fire GA4 page_view manually; GA4 config handles it. Keep only view_item below.\npageViewTrackedRef.current=true;}// Fire view_item when variant is selected\nif(activeVariant&&product?.title){const item_id=cleanShopifyId(activeVariant.id);const item_name=product.title;// console.log(\"activeVariant\", activeVariant)\nconst item_variant=activeVariant?.selectedOptions?activeVariant.selectedOptions.map(opt=>`${opt.name} ${opt.value}`).join(\" / \")||null:\"\";const price=parseFloat(activeVariant.price?.amount||\"0\");const currency=activeVariant.price?.currencyCode||\"USD\";const value=price;// Only fire if all data is present and not already tracked for this variant\nif(item_id&&item_name&&item_variant&&price>0&&viewItemTrackedRef.current!==item_id){const payload={currency,value,items:[{item_id,item_name,item_variant,price,item_brand,item_category,quantity:1,// TagHound compatibility\nSKU:item_id,\"Item Name\":item_name}]};if(payload.items&&payload.items.length>0&&payload.items[0].item_id&&payload.items[0].item_name){window.fcTrackGAEvent&&window.fcTrackGAEvent(\"view_item\",payload);viewItemTrackedRef.current=item_id;}else{// Skipping view_item - invalid payload\n}}}},[product,activeVariant]);useEffect(()=>{// On state transition, blur any currently focused button that is about to be hidden\nconst focused=document.activeElement;if(focused&&focused.closest(\".fc-purchase-button-container\")){focused.blur();}},[content]);// Determine canvas preview content\nlet canvasContent=null;if(isDesignOrPreview){// If \"Available\" (Add to Cart) is connected, it dominates\nif(available?.[0]){canvasContent=available[0];}else if(SelectVariant?.[0]){canvasContent=SelectVariant[0];}else if(OutOfStock?.[0]){canvasContent=OutOfStock[0];}else if(maxQuantity?.[0]){canvasContent=maxQuantity[0];}else if(LoadingState?.[0]){canvasContent=LoadingState[0];}}// Check if we need to show \"Connect Instance\" in canvas\nconst hasAnyState=available?.[0]||SelectVariant?.[0]||OutOfStock?.[0]||maxQuantity?.[0]||LoadingState?.[0];if(isDesignOrPreview&&!hasAnyState){return /*#__PURE__*/_jsx(\"div\",{style:{width:\"100%\",height:\"100%\",display:\"flex\",alignItems:\"center\",justifyContent:\"center\",color:\"#666\",fontSize:\"14px\",border:\"1px dashed #ccc\",borderRadius:\"4px\"},children:\"Connect Instance\"});}const href=typeof window!==\"undefined\"?window.location.href:\"\";const isPreview=href.includes(\"framercanvas.com\")// projects in preview always run under the internal domain framercanvas.com\n;// Sanitize content instances before cloning\nconst sanitizedCanvasContent=canvasContent?sanitizeChildrenRecursively(canvasContent):null;const sanitizedLoadingState=LoadingState?.[0]?sanitizeChildrenRecursively(LoadingState[0]):null;const sanitizedContent=content?sanitizeChildrenRecursively(content):null;return /*#__PURE__*/_jsxs(\"div\",{style:{height:\"100%\",position:\"relative\"},role:\"none\",className:\"fc-purchase-button-container\",children:[/*#__PURE__*/_jsx(\"style\",{children:`\n                .fc-purchase-button-container :focus-visible {\n                    outline: ${props.focus.width}px solid ${props.focus.color} !important;\n                    outline-offset: ${props.focus.padding}px !important;\n                    border-radius: ${props.focus.radius}px !important;\n                }\n            `}),isDesignOrPreview?sanitizedCanvasContent&&/*#__PURE__*/cloneElement(sanitizedCanvasContent,{style:{...canvasContent?.props?.style||{},width:\"100%\",height:\"100%\",cursor:\"pointer\",outline:\"none\"},onClick:handleClick,role:\"button\",\"aria-label\":canvasContent===available?.[0]?props.BuyNowATC?\"Buy now\":\"Add to cart\":canvasContent===SelectVariant?.[0]?\"Select variant\":canvasContent===OutOfStock?.[0]?\"Out of stock\":canvasContent===maxQuantity?.[0]?\"Max quantity reached\":\"Loading\"}):isLoading&&!props.skipLoading&&sanitizedLoadingState&&!isPreview?/*#__PURE__*/cloneElement(sanitizedLoadingState,{style:{...LoadingState[0].props?.style||{},width:\"100%\",height:\"100%\",outline:\"none\"},role:\"status\",\"aria-label\":`Loading ${props.BuyNowATC?\"buy now\":\"add to cart\"} button`,\"aria-live\":\"polite\",tabIndex:-1}):sanitizedContent?/*#__PURE__*/cloneElement(sanitizedContent,{style:{...content?.props?.style||{},width:\"100%\",height:\"100%\",cursor:canAddToCart?\"pointer\":\"not-allowed\",outline:\"none\"},onClick:canAddToCart?handleClick:undefined,onKeyDown:canAddToCart?e=>{if(e.key===\"Enter\"||e.key===\" \"){e.preventDefault();handleClick(e);}}:undefined,role:\"button\",\"aria-disabled\":!canAddToCart,\"aria-label\":content===available?.[0]?props.BuyNowATC?\"Buy now\":\"Add to cart\":content===SelectVariant?.[0]?\"Select variant\":content===OutOfStock?.[0]?\"Out of stock\":\"Max quantity reached\",tabIndex:hasInitialized?0:-1}):null]});}addPropertyControls(FC_ProductPurchaseButton,{shopifyProductID:{type:ControlType.String,title:\"Product ID\",description:\"Connect to CMS (required)\"},LoadingState:{type:ControlType.ComponentInstance,title:\"Loading\",hidden:props=>props.skipLoading,description:\"Display when product/variant is determining state to show.\"},available:{type:ControlType.ComponentInstance,title:\"Available\",description:\"Display when product/variant is available (Add to Cart or Buy Now).\"},SelectVariant:{type:ControlType.ComponentInstance,title:\"Select Variant\",description:\"Display when product/variant requires a variant selection.\"},OutOfStock:{type:ControlType.ComponentInstance,title:\"Out of Stock\",description:\"Display when product/variant is out of stock.\"},maxQuantity:{type:ControlType.ComponentInstance,title:\"Limit Reached\",description:\"Display when maximum cart quantity is reached.  \\n\\n –––– \\n\\n Connect each state to button component off-page. \\n\\n If you detatch the button component, you'll need to reconnect the states.\"},BuyNowATC:{title:\"Buy Now\",type:ControlType.Boolean,enabledTitle:\"Yes\",disabledTitle:\"No\",defaultValue:false},skipLoading:{title:\"Loading State\",type:ControlType.Boolean,enabledTitle:\"No\",disabledTitle:\"Yes\",defaultValue:false},openCart:{title:\"Trigger Cart\",description:\"If button is inside the cart, select No to keep the cart open.\",type:ControlType.Boolean,enabledTitle:\"Yes\",disabledTitle:\"No\",defaultValue:true,hidden:props=>props.BuyNowATC},focus:{type:ControlType.Object,title:\"Focus\",controls:{radius:{type:ControlType.Number,title:\"Radius\",defaultValue:0,min:0,max:100,step:1,displayStepper:true},width:{type:ControlType.Number,title:\"Width\",defaultValue:2,min:0,max:20,step:1,displayStepper:true},padding:{type:ControlType.Number,title:\"Padding\",defaultValue:2,min:0,max:20,step:1,displayStepper:true},color:{type:ControlType.Color,title:\"Color\",defaultValue:\"#007AFF\"}}},shopifyProductVariantId:{type:ControlType.String,title:\"Variant ID\",description:\"Advanced: Manually set a specific product variant ID (optional).\"}});// Utility to clean Shopify GID to just the numeric ID\nconst cleanShopifyId=gid=>gid?.split(\"/\").pop();\nexport const __FramerMetadata__ = {\"exports\":{\"default\":{\"type\":\"reactComponent\",\"name\":\"FC_ProductPurchaseButton\",\"slots\":[],\"annotations\":{\"framerDisableUnlink\":\"\",\"framerContractVersion\":\"1\"}},\"__FramerMetadata__\":{\"type\":\"variable\"}}}\n//# sourceMappingURL=./FC_ProductPurchaseButton.map","/*\n * Framer Commerce\n * Confidential and Proprietary - All Rights Reserved\n * Unauthorized use, reproduction, distribution, or disclosure of this\n * source code or any related information is strictly prohibited.\n *\n * This software is the exclusive property of Framer Commerce (\"Company\").\n * It is considered highly confidential and proprietary information.\n *\n * Any use, copying, modification, distribution, or sharing of this software,\n * in whole or in part, without the express written permission of the Company\n * is strictly prohibited and may result in legal action.\n *\n * DISCLAIMER: This software does not provide any express or\n * implied warranties, including, but not limited to, the implied warranties\n * of merchantability and fitness for a particular purpose. In no event shall\n * Framer Commerce be liable for any direct, indirect, incidental, special,\n * exemplary, or consequential damages (including, but not limited to, procurement\n * of substitute goods or services; loss of use, data, or profits; or business\n * interruption) however caused and on any theory of liability, whether in\n * contract, strict liability, or tort (including negligence or otherwise)\n * arising in any way out of the use of this software, even if advised of\n * the possibility of such damage.\n *\n * Any unauthorized possession, use, copying, distribution, or dissemination\n * of this software will be considered a breach of confidentiality and may\n * result in legal action.\n *\n * For inquiries, contact:\n * Framer Commerce\n * Email: hello@framercommerce.com\n *\n * © 2025 Butter Supply Inc. All Rights Reserved.\n */import{jsx as _jsx}from\"react/jsx-runtime\";import{addPropertyControls,ControlType}from\"framer\";import{useEffect,useState,useCallback}from\"react\";import{get}from\"lodash-es\";/**\n * @framerDisableUnlink\n */export default function FC_ProductVariantState_Staging(props){const{shopifyProductID,textTemplate}=props;const[product,setProduct]=useState();const[selectedOptions,setSelectedOptions]=useState({});// Move handler outside useEffect for better stability\nconst handleVariantSelection=useCallback(event=>{// Directly set the new selected options\nsetSelectedOptions(prev=>({...prev,[event.detail.optionName]:event.detail.value}));},[]);useEffect(()=>{if(window[\"shopXtools\"]&&Array.isArray(window[\"shopXtools\"].products)){const _matchingProduct=window[\"shopXtools\"].products.find(({node:_product})=>_product.id===`gid://shopify/Product/${shopifyProductID}`);setProduct(_matchingProduct?_matchingProduct.node:\"404\");}else{document.addEventListener(\"data__products-ready\",e=>{if(Array.isArray(e.detail.products)){const _matchingProduct=e.detail.products.find(({node:_product})=>_product.id===`gid://shopify/Product/${shopifyProductID}`);setProduct(_matchingProduct?_matchingProduct.node:\"404\");}});}document.addEventListener(\"variant_option_selected\",handleVariantSelection);return()=>{document.removeEventListener(\"variant_option_selected\",handleVariantSelection);};},[shopifyProductID,handleVariantSelection]);useEffect(()=>{const handleCurrencyChange=event=>{const{currency}=event.detail;if(window[\"shopXtools\"]&&Array.isArray(window[\"shopXtools\"].products)){const _matchingProduct=window[\"shopXtools\"].products.find(({node:_product})=>_product.id===`gid://shopify/Product/${shopifyProductID}`);if(_matchingProduct){setProduct(_matchingProduct.node);}}};window.addEventListener(\"currency_changed\",handleCurrencyChange);return()=>{window.removeEventListener(\"currency_changed\",handleCurrencyChange);};},[shopifyProductID]);const options=get(product,\"options\",[]);// Get remaining unselected options\nconst remainingOptions=options.filter(opt=>!selectedOptions[opt.name]).map(opt=>opt.name);// In Framer canvas or when shopXtools is not ready, show placeholder\nconst isFramerCanvas=typeof window===\"undefined\"||!window[\"shopXtools\"];const displayText=isFramerCanvas?textTemplate.replace(\"{{variant}}\",\"Size\"):remainingOptions.length===0?\"\":textTemplate.replace(\"{{variant}}\",remainingOptions.join(\", \"));// If no text to display, return empty div\nif(!displayText){return /*#__PURE__*/_jsx(\"div\",{style:{width:\"100%\",height:\"100%\"}});}return /*#__PURE__*/_jsx(\"div\",{style:{width:\"100%\",height:\"100%\",display:\"flex\",alignItems:\"center\",justifyContent:\"center\"},children:/*#__PURE__*/_jsx(\"p\",{style:{...props.font,color:props.color,margin:0,textAlign:\"center\",textTransform:props.textTransform},children:displayText})});}FC_ProductVariantState_Staging.defaultProps={shopifyProductID:\"\",textTemplate:\"Select {{variant}}\",textTransform:\"none\",color:\"#000000\"};addPropertyControls(FC_ProductVariantState_Staging,{shopifyProductID:{type:ControlType.String,title:\"Product ID\"},textTemplate:{type:ControlType.String,title:\"Format\",description:\"Use {{variant}} to insert the variant name\"},font:{type:ControlType.Font,title:\"Font\",controls:\"extended\"},color:{type:ControlType.Color,title:\"Color\",defaultValue:\"#000000\"},textTransform:{type:ControlType.Enum,title:\"Transform\",options:[\"None\",\"Uppercase\",\"Lowercase\",\"Capitalize\"],defaultValue:\"none\"}});\nexport const __FramerMetadata__ = {\"exports\":{\"default\":{\"type\":\"reactComponent\",\"name\":\"FC_ProductVariantState_Staging\",\"slots\":[],\"annotations\":{\"framerDisableUnlink\":\"\",\"framerContractVersion\":\"1\"}},\"__FramerMetadata__\":{\"type\":\"variable\"}}}\n//# sourceMappingURL=./FC_ProductPurchaseButtonVariantState.map","// Generated by Framer (9aedacd)\nimport{jsx as _jsx,jsxs as _jsxs}from\"react/jsx-runtime\";import{addFonts,addPropertyControls,ComponentViewportProvider,ControlType,cx,getFonts,RichText,SmartComponentScopedContainer,useActiveVariantCallback,useComponentViewport,useLocaleInfo,useVariantState,withCSS}from\"framer\";import{LayoutGroup,motion,MotionConfigContext}from\"framer-motion\";import*as React from\"react\";import{useRef}from\"react\";import FC_ProductVariantState_Staging from\"https://xn----9sbmqji2czbya.xn--p1ai/__framerusercontent/modules/zNwTdnRnz4MnWRroL39h/I7wxmPLwJWfAR42X0lMK/FC_ProductPurchaseButtonVariantState.js\";const FC_ProductVariantState_StagingFonts=getFonts(FC_ProductVariantState_Staging);const enabledGestures={ahBstIvfl:{hover:true}};const cycleOrder=[\"ahBstIvfl\",\"D0yp5BnNc\",\"p3d07hl8_\",\"hYyVL9Hrt\"];const serializationHash=\"framer-ffEN7\";const variantClassNames={ahBstIvfl:\"framer-v-hto62x\",D0yp5BnNc:\"framer-v-7jkjyn\",hYyVL9Hrt:\"framer-v-brbea0\",p3d07hl8_:\"framer-v-akq874\"};function addPropertyOverrides(overrides,...variants){const nextOverrides={};variants?.forEach(variant=>variant&&Object.assign(nextOverrides,overrides[variant]));return nextOverrides;}const Rvsddg67y=undefined;const elgRTGdr9=undefined;const transition1={bounce:0,delay:0,duration:.4,type:\"spring\"};const Transition=({value,children})=>{const config=React.useContext(MotionConfigContext);const transition=value??config.transition;const contextValue=React.useMemo(()=>({...config,transition}),[JSON.stringify(transition)]);return /*#__PURE__*/_jsx(MotionConfigContext.Provider,{value:contextValue,children:children});};const humanReadableVariantMap={\"Add to Cart\":\"ahBstIvfl\",\"Out of Stock\":\"p3d07hl8_\",\"Select Variant\":\"D0yp5BnNc\",Loading:\"hYyVL9Hrt\"};const Variants=motion.create(React.Fragment);const getProps=({click,height,id,productID,width,...props})=>{return{...props,elgRTGdr9:productID??props.elgRTGdr9,Rvsddg67y:click??props.Rvsddg67y,variant:humanReadableVariantMap[props.variant]??props.variant??\"ahBstIvfl\"};};const createLayoutDependency=(props,variants)=>{if(props.layoutDependency)return variants.join(\"-\")+props.layoutDependency;return variants.join(\"-\");};const Component=/*#__PURE__*/React.forwardRef(function(props,ref){const fallbackRef=useRef(null);const refBinding=ref??fallbackRef;const defaultLayoutId=React.useId();const{activeLocale,setLocale}=useLocaleInfo();const componentViewport=useComponentViewport();const{style,className,layoutId,variant,elgRTGdr9,Rvsddg67y,...restProps}=getProps(props);const{baseVariant,classNames,clearLoadingGesture,gestureHandlers,gestureVariant,isLoading,setGestureState,setVariant,variants}=useVariantState({cycleOrder,defaultVariant:\"ahBstIvfl\",enabledGestures,ref:refBinding,variant,variantClassNames});const layoutDependency=createLayoutDependency(props,variants);const{activeVariantCallback,delay}=useActiveVariantCallback(baseVariant);const onTap1ol9stx=activeVariantCallback(async(...args)=>{setGestureState({isPressed:false});if(Rvsddg67y){const res=await Rvsddg67y(...args);if(res===false)return false;}});const sharedStyleClassNames=[];const scopingClassNames=cx(serializationHash,...sharedStyleClassNames);const isDisplayed=()=>{if([\"D0yp5BnNc\",\"p3d07hl8_\",\"hYyVL9Hrt\"].includes(baseVariant))return false;return true;};const isDisplayed1=()=>{if(baseVariant===\"D0yp5BnNc\")return true;return false;};const isDisplayed2=()=>{if([\"p3d07hl8_\",\"hYyVL9Hrt\"].includes(baseVariant))return true;return false;};return /*#__PURE__*/_jsx(LayoutGroup,{id:layoutId??defaultLayoutId,children:/*#__PURE__*/_jsx(Variants,{animate:variants,initial:false,children:/*#__PURE__*/_jsx(Transition,{value:transition1,children:/*#__PURE__*/_jsxs(motion.button,{...restProps,...gestureHandlers,className:cx(scopingClassNames,\"framer-hto62x\",className,classNames),\"data-framer-name\":\"Add to Cart\",\"data-highlight\":true,\"data-reset\":\"button\",layoutDependency:layoutDependency,layoutId:\"ahBstIvfl\",onTap:onTap1ol9stx,ref:refBinding,style:{backgroundColor:\"var(--token-26e3cb56-8447-4a64-9b7d-37f16a9909d4, rgb(255, 255, 255))\",borderBottomLeftRadius:8,borderBottomRightRadius:8,borderTopLeftRadius:8,borderTopRightRadius:8,boxShadow:\"\",...style},variants:{\"ahBstIvfl-hover\":{backgroundColor:\"rgb(66, 66, 66)\"},D0yp5BnNc:{backgroundColor:\"rgb(235, 235, 235)\"},hYyVL9Hrt:{backgroundColor:\"rgb(235, 235, 235)\"},p3d07hl8_:{backgroundColor:\"rgb(235, 235, 235)\"}},...addPropertyOverrides({D0yp5BnNc:{\"data-framer-name\":\"Select Variant\"},hYyVL9Hrt:{\"data-framer-name\":\"Loading\"},p3d07hl8_:{\"data-framer-name\":\"Out of Stock\"}},baseVariant,gestureVariant),children:[isDisplayed()&&/*#__PURE__*/_jsx(motion.div,{className:\"framer-1lwn78e\",layoutDependency:layoutDependency,layoutId:\"Lkw72_704\",children:/*#__PURE__*/_jsx(RichText,{__fromCanvasComponent:true,children:/*#__PURE__*/_jsx(React.Fragment,{children:/*#__PURE__*/_jsx(motion.p,{dir:\"auto\",style:{\"--font-selector\":\"SW50ZXItVmFyaWFibGVWRj1JbTl3YzNvaUlERTRMQ0FpZDJkb2RDSWdOVFl3\",\"--framer-font-family\":'\"Inter Variable\", \"Inter Variable Placeholder\", sans-serif',\"--framer-font-open-type-features\":\"'cv01' on, 'cv09' on, 'cv11' on\",\"--framer-font-size\":\"15px\",\"--framer-font-variation-axes\":'var(--extracted-2gg91v, \"opsz\" 18, \"wght\" 560)',\"--framer-letter-spacing\":\"-0.02em\",\"--framer-line-height\":\"1em\",\"--framer-text-alignment\":\"center\"},children:\"Add to cart\"})}),className:\"framer-9efxew\",fonts:[\"Inter-Variable\"],layoutDependency:layoutDependency,layoutId:\"dyB0cW8UZ\",style:{\"--extracted-2gg91v\":'\"opsz\" 18, \"wght\" 560',\"--framer-link-text-color\":\"rgb(0, 153, 255)\",\"--framer-link-text-decoration\":\"underline\"},verticalAlignment:\"top\",withExternalLayout:true})}),isDisplayed1()&&/*#__PURE__*/_jsx(ComponentViewportProvider,{children:/*#__PURE__*/_jsx(SmartComponentScopedContainer,{className:\"framer-kgee0e-container\",isAuthoredByUser:true,isModuleExternal:true,layoutDependency:layoutDependency,layoutId:\"sAEWU0tAj-container\",nodeId:\"sAEWU0tAj\",rendersWithMotion:true,scopeId:\"Qayp0S8Ci\",children:/*#__PURE__*/_jsx(FC_ProductVariantState_Staging,{color:\"rgba(0, 0, 0, 0.4)\",font:{fontFamily:'\"Inter\", \"Inter Placeholder\", sans-serif',fontSize:\"15px\",fontStyle:\"normal\",fontWeight:600,letterSpacing:\"-0.01em\",lineHeight:\"1em\"},height:\"100%\",id:\"sAEWU0tAj\",layoutId:\"sAEWU0tAj\",shopifyProductID:elgRTGdr9,textTemplate:\"Select {{variant}}\",textTransform:\"None\",width:\"100%\"})})}),isDisplayed2()&&/*#__PURE__*/_jsx(RichText,{__fromCanvasComponent:true,children:/*#__PURE__*/_jsx(React.Fragment,{children:/*#__PURE__*/_jsx(motion.p,{dir:\"auto\",style:{\"--font-selector\":\"SW50ZXItVmFyaWFibGVWRj1JbTl3YzNvaUlERTRMQ0FpZDJkb2RDSWdOVFl3\",\"--framer-font-family\":'\"Inter Variable\", \"Inter Variable Placeholder\", sans-serif',\"--framer-font-open-type-features\":\"'cv01' on, 'cv09' on, 'cv11' on\",\"--framer-font-size\":\"15px\",\"--framer-font-variation-axes\":'var(--extracted-2gg91v, \"opsz\" 18, \"wght\" 560)',\"--framer-letter-spacing\":\"-0.02em\",\"--framer-line-height\":\"1em\",\"--framer-text-alignment\":\"center\"},children:\"Out of stock\"})}),className:\"framer-1tjloq6\",fonts:[\"Inter-Variable\"],layoutDependency:layoutDependency,layoutId:\"qLv37YYin\",style:{\"--extracted-2gg91v\":'\"opsz\" 18, \"wght\" 560',\"--framer-link-text-color\":\"rgb(0, 153, 255)\",\"--framer-link-text-decoration\":\"underline\"},variants:{hYyVL9Hrt:{\"--extracted-r6o4lv\":\"rgba(0, 0, 0, 0.4)\"}},verticalAlignment:\"top\",withExternalLayout:true,...addPropertyOverrides({hYyVL9Hrt:{children:/*#__PURE__*/_jsx(React.Fragment,{children:/*#__PURE__*/_jsx(motion.p,{style:{\"--font-selector\":\"SW50ZXItVmFyaWFibGVWRj1JbTl3YzNvaUlERTRMQ0FpZDJkb2RDSWdOVFl3\",\"--framer-font-family\":'\"Inter Variable\", \"Inter Variable Placeholder\", sans-serif',\"--framer-font-open-type-features\":\"'cv01' on, 'cv09' on, 'cv11' on\",\"--framer-font-size\":\"15px\",\"--framer-font-variation-axes\":'var(--extracted-2gg91v, \"opsz\" 18, \"wght\" 560)',\"--framer-letter-spacing\":\"-0.02em\",\"--framer-line-height\":\"1em\",\"--framer-text-alignment\":\"center\",\"--framer-text-color\":\"var(--extracted-r6o4lv, rgba(0, 0, 0, 0.4))\"},children:\"Loading…\"})})}},baseVariant,gestureVariant)})]})})})});});const css=[\"@supports (aspect-ratio: 1) { body { --framer-aspect-ratio-supported: auto; } }\",\".framer-ffEN7.framer-2098ws, .framer-ffEN7 .framer-2098ws { display: block; }\",\".framer-ffEN7.framer-hto62x { align-content: center; align-items: center; cursor: pointer; display: flex; flex-direction: row; flex-wrap: nowrap; gap: 7px; height: 56px; justify-content: center; overflow: visible; padding: 10px 14px 10px 14px; position: relative; width: 300px; }\",\".framer-ffEN7 .framer-1lwn78e { align-content: center; align-items: center; display: flex; flex: 1 0 0px; flex-direction: row; flex-wrap: nowrap; gap: 10px; height: min-content; justify-content: center; overflow: visible; padding: 0px; position: relative; width: 1px; }\",\".framer-ffEN7 .framer-9efxew, .framer-ffEN7 .framer-1tjloq6 { -webkit-user-select: none; flex: none; height: auto; position: relative; user-select: none; white-space: pre; width: auto; }\",\".framer-ffEN7 .framer-kgee0e-container { -webkit-user-select: none; flex: none; height: auto; position: relative; user-select: none; width: auto; }\"];/**\n * This is a generated Framer component.\n * @framerIntrinsicHeight 56\n * @framerIntrinsicWidth 300\n * @framerCanvasComponentVariantDetails {\"propertyName\":\"variant\",\"data\":{\"default\":{\"layout\":[\"fixed\",\"fixed\"]},\"D0yp5BnNc\":{\"layout\":[\"fixed\",\"fixed\"]},\"p3d07hl8_\":{\"layout\":[\"fixed\",\"fixed\"]},\"hYyVL9Hrt\":{\"layout\":[\"fixed\",\"fixed\"]},\"M71rQNILD\":{\"layout\":[\"fixed\",\"fixed\"]}}}\n * @framerVariables {\"elgRTGdr9\":\"productID\",\"Rvsddg67y\":\"click\"}\n * @framerImmutableVariables true\n * @framerDisplayContentsDiv false\n * @framerAutoSizeImages true\n * @framerComponentViewportWidth true\n * @framerColorSyntax true\n */const FramerQayp0S8Ci=withCSS(Component,css,\"framer-ffEN7\");export default FramerQayp0S8Ci;FramerQayp0S8Ci.displayName=\"Button States\";FramerQayp0S8Ci.defaultProps={height:56,width:300};addPropertyControls(FramerQayp0S8Ci,{variant:{options:[\"ahBstIvfl\",\"D0yp5BnNc\",\"p3d07hl8_\",\"hYyVL9Hrt\"],optionTitles:[\"Add to Cart\",\"Select Variant\",\"Out of Stock\",\"Loading\"],title:\"Variant\",type:ControlType.Enum},elgRTGdr9:{defaultValue:\"\",description:\"\",title:\"Product ID\",type:ControlType.String},onelgRTGdr9Change:{changes:\"elgRTGdr9\",type:ControlType.ChangeHandler},Rvsddg67y:{title:\"Click\",type:ControlType.EventHandler}});const variationAxes=[{defaultValue:14,maxValue:32,minValue:14,name:\"Optical size\",tag:\"opsz\"},{defaultValue:400,maxValue:900,minValue:100,name:\"Weight\",tag:\"wght\"}];addFonts(FramerQayp0S8Ci,[{explicitInter:true,fonts:[{cssFamilyName:\"Inter Variable\",source:\"framer\",style:\"normal\",uiFamilyName:\"Inter\",unicodeRange:\"U+0460-052F, U+1C80-1C88, U+20B4, U+2DE0-2DFF, U+A640-A69F, U+FE2E-FE2F\",url:\"https://xn----9sbmqji2czbya.xn--p1ai/__framerusercontent/assets/mYcqTSergLb16PdbJJQMl9ebYm4.woff2\",variationAxes,weight:\"400\"},{cssFamilyName:\"Inter Variable\",source:\"framer\",style:\"normal\",uiFamilyName:\"Inter\",unicodeRange:\"U+0301, U+0400-045F, U+0490-0491, U+04B0-04B1, U+2116\",url:\"https://xn----9sbmqji2czbya.xn--p1ai/__framerusercontent/assets/ZRl8AlxwsX1m7xS1eJCiSPbztg.woff2\",variationAxes,weight:\"400\"},{cssFamilyName:\"Inter Variable\",source:\"framer\",style:\"normal\",uiFamilyName:\"Inter\",unicodeRange:\"U+1F00-1FFF\",url:\"https://xn----9sbmqji2czbya.xn--p1ai/__framerusercontent/assets/nhSQpBRqFmXNUBY2p5SENQ8NplQ.woff2\",variationAxes,weight:\"400\"},{cssFamilyName:\"Inter Variable\",source:\"framer\",style:\"normal\",uiFamilyName:\"Inter\",unicodeRange:\"U+0370-03FF\",url:\"https://xn----9sbmqji2czbya.xn--p1ai/__framerusercontent/assets/DYHjxG0qXjopUuruoacfl5SA.woff2\",variationAxes,weight:\"400\"},{cssFamilyName:\"Inter Variable\",source:\"framer\",style:\"normal\",uiFamilyName:\"Inter\",unicodeRange:\"U+0100-024F, U+0259, U+1E00-1EFF, U+2020, U+20A0-20AB, U+20AD-20CF, U+2113, U+2C60-2C7F, U+A720-A7FF\",url:\"https://xn----9sbmqji2czbya.xn--p1ai/__framerusercontent/assets/s7NH6sl7w4NU984r5hcmo1tPSYo.woff2\",variationAxes,weight:\"400\"},{cssFamilyName:\"Inter Variable\",source:\"framer\",style:\"normal\",uiFamilyName:\"Inter\",unicodeRange:\"U+0000-00FF, U+0131, U+0152-0153, U+02BB-02BC, U+02C6, U+02DA, U+02DC, U+2000-206F, U+2070, U+2074-207E, U+2080-208E, U+20AC, U+2122, U+2191, U+2193, U+2212, U+2215, U+FEFF, U+FFFD\",url:\"https://xn----9sbmqji2czbya.xn--p1ai/__framerusercontent/assets/7lw0VWkeXrGYJT05oB3DsFy8BaY.woff2\",variationAxes,weight:\"400\"},{cssFamilyName:\"Inter Variable\",source:\"framer\",style:\"normal\",uiFamilyName:\"Inter\",unicodeRange:\"U+0102-0103, U+0110-0111, U+0128-0129, U+0168-0169, U+01A0-01A1, U+01AF-01B0, U+1EA0-1EF9, U+20AB\",url:\"https://xn----9sbmqji2czbya.xn--p1ai/__framerusercontent/assets/wx5nfqEgOXnxuFaxB0Mn9OhmcZA.woff2\",variationAxes,weight:\"400\"},{cssFamilyName:\"Inter\",source:\"framer\",style:\"normal\",uiFamilyName:\"Inter\",unicodeRange:\"U+0460-052F, U+1C80-1C88, U+20B4, U+2DE0-2DFF, U+A640-A69F, U+FE2E-FE2F\",url:\"https://xn----9sbmqji2czbya.xn--p1ai/__framerusercontent/assets/hyOgCu0Xnghbimh0pE8QTvtt2AU.woff2\",weight:\"600\"},{cssFamilyName:\"Inter\",source:\"framer\",style:\"normal\",uiFamilyName:\"Inter\",unicodeRange:\"U+0301, U+0400-045F, U+0490-0491, U+04B0-04B1, U+2116\",url:\"https://xn----9sbmqji2czbya.xn--p1ai/__framerusercontent/assets/NeGmSOXrPBfEFIy5YZeHq17LEDA.woff2\",weight:\"600\"},{cssFamilyName:\"Inter\",source:\"framer\",style:\"normal\",uiFamilyName:\"Inter\",unicodeRange:\"U+1F00-1FFF\",url:\"https://xn----9sbmqji2czbya.xn--p1ai/__framerusercontent/assets/oYaAX5himiTPYuN8vLWnqBbfD2s.woff2\",weight:\"600\"},{cssFamilyName:\"Inter\",source:\"framer\",style:\"normal\",uiFamilyName:\"Inter\",unicodeRange:\"U+0370-03FF\",url:\"https://xn----9sbmqji2czbya.xn--p1ai/__framerusercontent/assets/lEJLP4R0yuCaMCjSXYHtJw72M.woff2\",weight:\"600\"},{cssFamilyName:\"Inter\",source:\"framer\",style:\"normal\",uiFamilyName:\"Inter\",unicodeRange:\"U+0100-024F, U+0259, U+1E00-1EFF, U+2020, U+20A0-20AB, U+20AD-20CF, U+2113, U+2C60-2C7F, U+A720-A7FF\",url:\"https://xn----9sbmqji2czbya.xn--p1ai/__framerusercontent/assets/cRJyLNuTJR5jbyKzGi33wU9cqIQ.woff2\",weight:\"600\"},{cssFamilyName:\"Inter\",source:\"framer\",style:\"normal\",uiFamilyName:\"Inter\",unicodeRange:\"U+0000-00FF, U+0131, U+0152-0153, U+02BB-02BC, U+02C6, U+02DA, U+02DC, U+2000-206F, U+2070, U+2074-207E, U+2080-208E, U+20AC, U+2122, U+2191, U+2193, U+2212, U+2215, U+FEFF, U+FFFD\",url:\"https://xn----9sbmqji2czbya.xn--p1ai/__framerusercontent/assets/yDtI2UI8XcEg1W2je9XPN3Noo.woff2\",weight:\"600\"},{cssFamilyName:\"Inter\",source:\"framer\",style:\"normal\",uiFamilyName:\"Inter\",unicodeRange:\"U+0102-0103, U+0110-0111, U+0128-0129, U+0168-0169, U+01A0-01A1, U+01AF-01B0, U+1EA0-1EF9, U+20AB\",url:\"https://xn----9sbmqji2czbya.xn--p1ai/__framerusercontent/assets/A0Wcc7NgXMjUuFdquHDrIZpzZw0.woff2\",weight:\"600\"}]},...FC_ProductVariantState_StagingFonts],{supportsExplicitInterCodegen:true});\nexport const __FramerMetadata__ = {\"exports\":{\"default\":{\"type\":\"reactComponent\",\"name\":\"FramerQayp0S8Ci\",\"slots\":[],\"annotations\":{\"framerContractVersion\":\"1\",\"framerAutoSizeImages\":\"true\",\"framerIntrinsicWidth\":\"300\",\"framerComponentViewportWidth\":\"true\",\"framerCanvasComponentVariantDetails\":\"{\\\"propertyName\\\":\\\"variant\\\",\\\"data\\\":{\\\"default\\\":{\\\"layout\\\":[\\\"fixed\\\",\\\"fixed\\\"]},\\\"D0yp5BnNc\\\":{\\\"layout\\\":[\\\"fixed\\\",\\\"fixed\\\"]},\\\"p3d07hl8_\\\":{\\\"layout\\\":[\\\"fixed\\\",\\\"fixed\\\"]},\\\"hYyVL9Hrt\\\":{\\\"layout\\\":[\\\"fixed\\\",\\\"fixed\\\"]},\\\"M71rQNILD\\\":{\\\"layout\\\":[\\\"fixed\\\",\\\"fixed\\\"]}}}\",\"framerIntrinsicHeight\":\"56\",\"framerVariables\":\"{\\\"elgRTGdr9\\\":\\\"productID\\\",\\\"Rvsddg67y\\\":\\\"click\\\"}\",\"framerImmutableVariables\":\"true\",\"framerColorSyntax\":\"true\",\"framerDisplayContentsDiv\":\"false\"}},\"Props\":{\"type\":\"tsType\",\"annotations\":{\"framerContractVersion\":\"1\"}},\"__FramerMetadata__\":{\"type\":\"variable\"}}}\n//# sourceMappingURL=./Qayp0S8Ci.map","// Generated by Framer (8f1bc3c)\nimport{jsx as _jsx}from\"react/jsx-runtime\";import{addFonts,addPropertyControls,ComponentViewportProvider,ControlType,cx,forwardLoader,getFonts,SmartComponentScopedContainer,useActiveVariantCallback,useComponentViewport,useLocaleInfo,useVariantState,withCSS}from\"framer\";import{LayoutGroup,motion,MotionConfigContext}from\"framer-motion\";import*as React from\"react\";import{useRef}from\"react\";import FC_ProductPurchaseButton from\"https://xn----9sbmqji2czbya.xn--p1ai/__framerusercontent/modules/DfixsupJND2Hhr1xcPbk/zYiTTDRsHtf2S3Zf8E7G/FC_ProductPurchaseButton.js\";import ButtonStates from\"https://xn----9sbmqji2czbya.xn--p1ai/__framerusercontent/modules/qDgTAvrL68dyl9biuJ7G/HBdErQj2rTC83XiPZJ92/Qayp0S8Ci.js\";const ButtonStatesFonts=getFonts(ButtonStates);const FC_ProductPurchaseButtonFonts=getFonts(FC_ProductPurchaseButton);const serializationHash=\"framer-8Qy18\";const variantClassNames={n_8N6rA04:\"framer-v-trxvt4\"};function addPropertyOverrides(overrides,...variants){const nextOverrides={};variants?.forEach(variant=>variant&&Object.assign(nextOverrides,overrides[variant]));return nextOverrides;}const Nt_kadLvR=undefined;const vjHrn9new=undefined;const setNt_kadLvR=undefined;const transition1={bounce:.2,delay:0,duration:.4,type:\"spring\"};const matchVariant=(...args)=>{for(const arg of args){if(arg&&typeof arg===\"string\")return arg;}return undefined;};const Transition=({value,children})=>{const config=React.useContext(MotionConfigContext);const transition=value??config.transition;const contextValue=React.useMemo(()=>({...config,transition}),[JSON.stringify(transition)]);return /*#__PURE__*/_jsx(MotionConfigContext.Provider,{value:contextValue,children:children});};const Variants=motion.create(React.Fragment);const useStateVariable=(externalState,setExternalState)=>{const[internalState,setInternalState]=React.useState(externalState);const[previousExternalState,setPreviousExternalState]=React.useState(externalState);if(setExternalState){return[externalState,setExternalState];}if(externalState!==previousExternalState){setInternalState(externalState);setPreviousExternalState(externalState);}return[internalState,setInternalState];};const getProps=({click,height,id,productID,width,...props})=>{return{...props,Nt_kadLvR:productID??props.Nt_kadLvR??\"\",vjHrn9new:click??props.vjHrn9new};};const createLayoutDependency=(props,variants)=>{if(props.layoutDependency)return variants.join(\"-\")+props.layoutDependency;return variants.join(\"-\");};const Component=/*#__PURE__*/React.forwardRef(function(props,ref){const fallbackRef=useRef(null);const refBinding=ref??fallbackRef;const defaultLayoutId=React.useId();const{activeLocale,setLocale}=useLocaleInfo();const componentViewport=useComponentViewport();const{style,className,layoutId,variant,\"Nt_kadLvR\":externalNt_kadLvR,\"onNt_kadLvRChange\":setExternalNt_kadLvR,vjHrn9new,...restProps}=getProps(props);const[Nt_kadLvR,setNt_kadLvR]=useStateVariable(externalNt_kadLvR,setExternalNt_kadLvR);const{baseVariant,classNames,clearLoadingGesture,gestureHandlers,gestureVariant,isLoading,setGestureState,setVariant,variants}=useVariantState({defaultVariant:\"n_8N6rA04\",ref:refBinding,variant,variantClassNames});const layoutDependency=createLayoutDependency(props,variants);const{activeVariantCallback,delay}=useActiveVariantCallback(baseVariant);const Rvsddg67y1x08l4p=activeVariantCallback(async(...args)=>{if(vjHrn9new){const res=await vjHrn9new(...args);if(res===false)return false;}});const sharedStyleClassNames=[];const scopingClassNames=cx(serializationHash,...sharedStyleClassNames);return /*#__PURE__*/_jsx(LayoutGroup,{id:layoutId??defaultLayoutId,children:/*#__PURE__*/_jsx(Variants,{animate:variants,initial:false,children:/*#__PURE__*/_jsx(Transition,{value:transition1,children:/*#__PURE__*/_jsx(motion.div,{...restProps,...gestureHandlers,className:cx(scopingClassNames,\"framer-trxvt4\",className,classNames),\"data-framer-name\":\"Button\",layoutDependency:layoutDependency,layoutId:\"n_8N6rA04\",ref:refBinding,style:{...style},children:/*#__PURE__*/_jsx(ComponentViewportProvider,{children:/*#__PURE__*/_jsx(SmartComponentScopedContainer,{className:\"framer-1tbn9gl-container\",isAuthoredByUser:true,isModuleExternal:true,layoutDependency:layoutDependency,layoutId:\"WZKlGw7Z2-container\",nodeId:\"WZKlGw7Z2\",rendersWithMotion:true,scopeId:\"MXk78xtbX\",children:/*#__PURE__*/_jsx(FC_ProductPurchaseButton,{available:[/*#__PURE__*/_jsx(ComponentViewportProvider,{height:35,width:\"300px\",children:/*#__PURE__*/_jsx(SmartComponentScopedContainer,{className:\"framer-110sd03-container\",\"data-framer-name\":\"Available\",inComponentSlot:true,layoutDependency:layoutDependency,layoutId:\"UtxjXeEJI-container\",name:\"Available\",nodeId:\"UtxjXeEJI\",rendersWithMotion:true,scopeId:\"MXk78xtbX\",children:/*#__PURE__*/_jsx(ButtonStates,{elgRTGdr9:Nt_kadLvR,height:\"100%\",id:\"UtxjXeEJI\",layoutId:\"UtxjXeEJI\",name:\"Available\",onelgRTGdr9Change:setNt_kadLvR,Rvsddg67y:Rvsddg67y1x08l4p,style:{height:\"100%\",width:\"100%\"},variant:matchVariant(\"ahBstIvfl\"),width:\"100%\"})})})],BuyNowATC:false,focus:{color:\"rgb(0, 122, 255)\",padding:2,radius:0,width:2},height:\"100%\",id:\"WZKlGw7Z2\",layoutId:\"WZKlGw7Z2\",LoadingState:[/*#__PURE__*/_jsx(ComponentViewportProvider,{height:35,width:\"300px\",children:/*#__PURE__*/_jsx(SmartComponentScopedContainer,{className:\"framer-fth2l9-container\",\"data-framer-name\":\"Loading\",inComponentSlot:true,layoutDependency:layoutDependency,layoutId:\"Q_ePqwOaz-container\",name:\"Loading\",nodeId:\"Q_ePqwOaz\",rendersWithMotion:true,scopeId:\"MXk78xtbX\",children:/*#__PURE__*/_jsx(ButtonStates,{elgRTGdr9:Nt_kadLvR,height:\"100%\",id:\"Q_ePqwOaz\",layoutId:\"Q_ePqwOaz\",name:\"Loading\",onelgRTGdr9Change:setNt_kadLvR,style:{height:\"100%\",width:\"100%\"},variant:matchVariant(\"hYyVL9Hrt\"),width:\"100%\"})})})],maxQuantity:[],openCart:true,OutOfStock:[/*#__PURE__*/_jsx(ComponentViewportProvider,{height:35,width:\"300px\",children:/*#__PURE__*/_jsx(SmartComponentScopedContainer,{className:\"framer-fth2l9-container\",\"data-framer-name\":\"Loading\",inComponentSlot:true,layoutDependency:layoutDependency,layoutId:\"Q_ePqwOaz-container\",name:\"Loading\",nodeId:\"Q_ePqwOaz\",rendersWithMotion:true,scopeId:\"MXk78xtbX\",children:/*#__PURE__*/_jsx(ButtonStates,{elgRTGdr9:Nt_kadLvR,height:\"100%\",id:\"Q_ePqwOaz\",layoutId:\"Q_ePqwOaz\",name:\"Loading\",onelgRTGdr9Change:setNt_kadLvR,style:{height:\"100%\",width:\"100%\"},variant:matchVariant(\"hYyVL9Hrt\"),width:\"100%\"})})})],SelectVariant:[/*#__PURE__*/_jsx(ComponentViewportProvider,{height:35,width:\"300px\",children:/*#__PURE__*/_jsx(SmartComponentScopedContainer,{className:\"framer-13e2fnc-container\",\"data-framer-name\":\"Select Size\",inComponentSlot:true,layoutDependency:layoutDependency,layoutId:\"wQO3m2vNI-container\",name:\"Select Size\",nodeId:\"wQO3m2vNI\",rendersWithMotion:true,scopeId:\"MXk78xtbX\",children:/*#__PURE__*/_jsx(ButtonStates,{elgRTGdr9:Nt_kadLvR,height:\"100%\",id:\"wQO3m2vNI\",layoutId:\"wQO3m2vNI\",name:\"Select Size\",onelgRTGdr9Change:setNt_kadLvR,style:{height:\"100%\",width:\"100%\"},variant:matchVariant(\"D0yp5BnNc\"),width:\"100%\"})})})],shopifyProductID:Nt_kadLvR,shopifyProductVariantId:\"\",skipLoading:false,style:{height:\"100%\",width:\"100%\"},width:\"100%\"})})})})})})});});const css=[\".framer-8Qy18.framer-1cav96z, .framer-8Qy18 .framer-1cav96z { display: block; }\",\".framer-8Qy18.framer-trxvt4 { align-content: center; align-items: center; display: flex; flex-direction: column; flex-wrap: nowrap; gap: 10px; height: 35px; justify-content: center; overflow: hidden; padding: 0px; position: relative; width: 300px; }\",\".framer-8Qy18 .framer-1tbn9gl-container { flex: 1 0 0px; height: 1px; position: relative; width: 100%; }\",\".framer-8Qy18 .framer-fth2l9-container, .framer-8Qy18 .framer-110sd03-container, .framer-8Qy18 .framer-13e2fnc-container { height: 35px; position: relative; width: 300px; }\"];/**\n * This is a generated Framer component.\n * @framerIntrinsicHeight 35\n * @framerIntrinsicWidth 300\n * @framerCanvasComponentVariantDetails {\"propertyName\":\"variant\",\"data\":{\"default\":{\"layout\":[\"fixed\",\"fixed\"]}}}\n * @framerVariables {\"Nt_kadLvR\":\"productID\",\"vjHrn9new\":\"click\"}\n * @framerImmutableVariables true\n * @framerResolvesOwnDefaults true\n * @framerDisplayContentsDiv false\n * @framerAutoSizeImages true\n * @framerComponentViewportWidth true\n * @framerColorSyntax true\n */const FramerMXk78xtbX=withCSS(Component,css,\"framer-8Qy18\");export default FramerMXk78xtbX;FramerMXk78xtbX.displayName=\"FC Purchase Button\";FramerMXk78xtbX.defaultProps={height:35,width:300};addPropertyControls(FramerMXk78xtbX,{Nt_kadLvR:{defaultValue:\"\",title:\"Product ID\",type:ControlType.String},onNt_kadLvRChange:{changes:\"Nt_kadLvR\",type:ControlType.ChangeHandler},vjHrn9new:{title:\"Click\",type:ControlType.EventHandler}});addFonts(FramerMXk78xtbX,[{explicitInter:true,fonts:[]},...ButtonStatesFonts,...FC_ProductPurchaseButtonFonts],{supportsExplicitInterCodegen:true});FramerMXk78xtbX.loader={load:(props,context)=>{const locale=context.locale;return Promise.allSettled([forwardLoader(ButtonStates,{},context)]);}};\nexport const __FramerMetadata__ = {\"exports\":{\"Props\":{\"type\":\"tsType\",\"annotations\":{\"framerContractVersion\":\"1\"}},\"default\":{\"type\":\"reactComponent\",\"name\":\"FramerMXk78xtbX\",\"slots\":[],\"annotations\":{\"framerComponentViewportWidth\":\"true\",\"framerCanvasComponentVariantDetails\":\"{\\\"propertyName\\\":\\\"variant\\\",\\\"data\\\":{\\\"default\\\":{\\\"layout\\\":[\\\"fixed\\\",\\\"fixed\\\"]}}}\",\"framerIntrinsicHeight\":\"35\",\"framerDisplayContentsDiv\":\"false\",\"framerResolvesOwnDefaults\":\"true\",\"framerContractVersion\":\"1\",\"framerVariables\":\"{\\\"Nt_kadLvR\\\":\\\"productID\\\",\\\"vjHrn9new\\\":\\\"click\\\"}\",\"framerIntrinsicWidth\":\"300\",\"framerAutoSizeImages\":\"true\",\"framerImmutableVariables\":\"true\",\"framerColorSyntax\":\"true\"}},\"__FramerMetadata__\":{\"type\":\"variable\"}}}\n//# sourceMappingURL=./MXk78xtbX.map","// Generated by Framer (ba9b67c)\nimport{jsx as _jsx,jsxs as _jsxs,Fragment as _Fragment}from\"react/jsx-runtime\";import{addFonts,ChildrenCanSuspend,ComponentViewportProvider,Container,cx,Floating,forwardLoader,GeneratedComponentContext,getFonts,getFontsFromSharedStyle,getLoadingLazyAtYPosition,getWhereExpressionFromPathVariables,Image as Image1,InjectSelectionStyle,NotFoundError,patchBorderRadiusScaleCorrector,PathVariablesContext,PropertyOverrides,queryCache,ResetOuterLinkContext,ResolveLinks,RichText,useActiveVariantCallback,useComponentViewport,useCurrentPathVariables,useCustomCursors,useHydratedBreakpointVariants,useIsOnFramerCanvas,useLocaleInfo,useMetadata,useOverlayState,useQueryData,useRouteElementId,useRouter,useSiteRefs,withCSS,withFlowFX,withFX}from\"framer\";import{AnimatePresence,LayoutGroup,motion,MotionConfigContext}from\"framer-motion\";import*as React from\"react\";import{useRef}from\"react\";import*as ReactDOM from\"react-dom\";import FC_ProductVariants from\"https://xn----9sbmqji2czbya.xn--p1ai/__framerusercontent/modules/LexXLRVKTdoqiCBn8fDM/O6pNXVMa2Y4mB9woBhKc/FC_ProductVariants_v1.js\";import FC_ProductPrice from\"https://xn----9sbmqji2czbya.xn--p1ai/__framerusercontent/modules/N07JJZfuMtyHijtiRRgH/E4KLlxWtRCBXncxm1cnX/FC_ProductPrice.js\";import Cross from\"https://xn----9sbmqji2czbya.xn--p1ai/__framerusercontent/modules/sP3FFkmqGjmkTYqeTDcw/8eBx3JPuta2uOtiknDWr/uIpCQFONn.js\";import Expand from\"https://xn----9sbmqji2czbya.xn--p1ai/__framerusercontent/modules/W5xDgLMKyPhFwFebjDCX/PkYd1I5fulqExyHNo8LR/fMOThS83z.js\";import FC_ProductPriceCompare from\"https://xn----9sbmqji2czbya.xn--p1ai/__framerusercontent/modules/ZipJAXrtSkBsdbTSry5q/KCNDDioMjkqBn9yvxlVd/FC_ProductPriceCompare.js\";import Slideshow from\"https://xn----9sbmqji2czbya.xn--p1ai/__framerusercontent/modules/zvkTOpMSuRzRhLzZZIwG/7GuSIJ2Jm6VU0TIDHoiR/SlideShow.js\";import FCStockStatus from\"#framer/local/canvasComponent/eqF6Ded09/eqF6Ded09.js\";import CartOverlay from\"#framer/local/canvasComponent/IxjuC5c7L/IxjuC5c7L.js\";import FAQSupply from\"#framer/local/canvasComponent/IzktuRC_v/IzktuRC_v.js\";import Card from\"#framer/local/canvasComponent/kjjwULkIF/kjjwULkIF.js\";import FCPurchaseButton from\"#framer/local/canvasComponent/MXk78xtbX/MXk78xtbX.js\";import FramerStore from\"#framer/local/collection/UmP8abwJL/UmP8abwJL.js\";import*as sharedStyle from\"#framer/local/css/gM4yNG9Qq/gM4yNG9Qq.js\";import*as sharedStyle1 from\"#framer/local/css/kuibWYBoM/kuibWYBoM.js\";import*as sharedStyle2 from\"#framer/local/css/VQBQVu8qk/VQBQVu8qk.js\";import metadataProvider from\"#framer/local/webPageMetadata/XGqHdMUqV/XGqHdMUqV.js\";const SlideshowFonts=getFonts(Slideshow);const ContainerWithFX=withFX(Container);const FC_ProductPriceFonts=getFonts(FC_ProductPrice);const FC_ProductPriceCompareFonts=getFonts(FC_ProductPriceCompare);const FCStockStatusFonts=getFonts(FCStockStatus);const FC_ProductVariantsFonts=getFonts(FC_ProductVariants);const ExpandFonts=getFonts(Expand);const CrossFonts=getFonts(Cross);const FCPurchaseButtonFonts=getFonts(FCPurchaseButton);const CartOverlayFonts=getFonts(CartOverlay);const FAQSupplyFonts=getFonts(FAQSupply);const CardFonts=getFonts(Card);const MotionDivWithFlowFX=withFlowFX(motion.div);const breakpoints={J1TsDX61j:\"(max-width: 809.98px)\",Q1Q0VtM93:\"(min-width: 810px) and (max-width: 1199.98px)\",s57Bzp3UE:\"(min-width: 1200px)\"};const isBrowser=()=>typeof document!==\"undefined\";export const queryParamNames=[];const serializationHash=\"framer-UVlhh\";const variantClassNames={J1TsDX61j:\"framer-v-1l8qfcq\",Q1Q0VtM93:\"framer-v-19ttag1\",s57Bzp3UE:\"framer-v-1ex7wa3\"};const sxwinQ3xN=undefined;const M0mMQtuoJ=undefined;const BWTKeaTFS=undefined;const WEV5ypMps=undefined;const zDi8fdrko=undefined;const Je04pVO2G=undefined;const o6krRlwTO=undefined;const vhaqjUAN9=undefined;const HlIoZs3Fp=undefined;const a8ZAaoovg=undefined;const fhdsIcnWB=undefined;const USer7orzc=undefined;const BIDaTdinF=undefined;const AoY6MzJG2=undefined;const yC2H0iC1T=undefined;const LEanJJh19=undefined;const dFlzxJs1r=undefined;const buV12ljyw=undefined;const yitoGO6T3=undefined;const cE06FoYnT=undefined;const AId32iDwH=undefined;const HR_D2v7hb=undefined;const MCZi_DjOF=undefined;const KdPKL5qeiw5EgVjWnv=undefined;const JTxJg0pZbw5EgVjWnv=undefined;const HR_D2v7hbw5EgVjWnv=undefined;const a8ZAaoovgw5EgVjWnv=undefined;const BIDaTdinFw5EgVjWnv=undefined;const USer7orzcw5EgVjWnv=undefined;const AoY6MzJG2w5EgVjWnv=undefined;const idw5EgVjWnv=undefined;const transition1={bounce:.2,delay:0,duration:.4,type:\"spring\"};const getRootLayoutProp=(hasLayoutTemplate,hasInheritedFlowEffect,fallback)=>{if(!hasLayoutTemplate)return fallback;return hasInheritedFlowEffect?\"position\":fallback;};const isSet=value=>{if(Array.isArray(value))return value.length>0;return value!==undefined&&value!==null&&value!==\"\";};const patchBorderRadiusScaleCorrector1=patchBorderRadiusScaleCorrector();const toResponsiveImage=value=>{if(typeof value===\"object\"&&value!==null&&typeof value.src===\"string\"){return value;}return typeof value===\"string\"?{src:value}:undefined;};const transition2={bounce:0,delay:0,duration:.4,type:\"spring\"};const negate=value=>{return!value;};const equals=(a,b)=>{return typeof a===\"string\"&&typeof b===\"string\"?a.toLowerCase()===b.toLowerCase():a===b;};const transition3={bounce:.25,delay:0,duration:.45,type:\"spring\"};const animation={opacity:1,rotate:0,rotateX:0,rotateY:0,scale:1,skewX:0,skewY:0,transition:transition3};const transition4={bounce:.2,delay:0,duration:.5,type:\"spring\"};const animation1={opacity:0,rotate:0,rotateX:0,rotateY:0,scale:1,skewX:0,skewY:0,transition:transition4,x:0,y:10};const transformTemplate1=(_,t)=>`translate(-50%, -50%) ${t}`;const animation2={opacity:1,rotate:0,rotateX:0,rotateY:0,scale:1,skewX:0,skewY:0,transition:transition4,x:0,y:0};const animation3={opacity:0,rotate:0,rotateX:0,rotateY:0,scale:1,skewX:0,skewY:0,x:0,y:10};const animation4={opacity:0,rotate:0,rotateX:0,rotateY:0,scale:1,skewX:0,skewY:0,transition:transition1,x:0,y:0};const animation5={opacity:1,rotate:0,rotateX:0,rotateY:0,scale:1,skewX:0,skewY:0,transition:transition1,x:0,y:0};const animation6={opacity:0,rotate:0,rotateX:0,rotateY:0,scale:1,skewX:0,skewY:0,x:0,y:0};const getContainer=()=>{return document.querySelector(\"#template-overlay\")??document.querySelector(\"#overlay\")??document.body;};const Overlay=({children,blockDocumentScrolling,dismissWithEsc,enabled=true})=>{const[visible,setVisible]=useOverlayState({blockDocumentScrolling,dismissWithEsc:enabled&&dismissWithEsc});return children({hide:()=>setVisible(false),show:()=>setVisible(true),toggle:()=>setVisible(!visible),visible:enabled&&visible});};const matchVariant=(...args)=>{for(const arg of args){if(arg&&typeof arg===\"string\")return arg;}return undefined;};const query=HR_D2v7hb=>({from:{alias:\"w5EgVjWnv\",data:FramerStore,type:\"Collection\"},limit:{type:\"LiteralValue\",value:3},select:[{collection:\"w5EgVjWnv\",name:\"KdPKL5qei\",type:\"Identifier\"},{collection:\"w5EgVjWnv\",name:\"JTxJg0pZb\",type:\"Identifier\"},{collection:\"w5EgVjWnv\",name:\"HR_D2v7hb\",type:\"Identifier\"},{collection:\"w5EgVjWnv\",name:\"a8ZAaoovg\",type:\"Identifier\"},{collection:\"w5EgVjWnv\",name:\"BIDaTdinF\",type:\"Identifier\"},{collection:\"w5EgVjWnv\",name:\"USer7orzc\",type:\"Identifier\"},{collection:\"w5EgVjWnv\",name:\"AoY6MzJG2\",type:\"Identifier\"},{collection:\"w5EgVjWnv\",name:\"id\",type:\"Identifier\"}],where:{operator:\"not\",type:\"UnaryOperation\",value:{left:{collection:\"w5EgVjWnv\",name:\"HR_D2v7hb\",type:\"Identifier\"},operator:\"==\",right:{type:\"LiteralValue\",value:HR_D2v7hb},type:\"BinaryOperation\"}}});const query1=HR_D2v7hb=>({from:{alias:\"w5EgVjWnv\",data:FramerStore,type:\"Collection\"},limit:{type:\"LiteralValue\",value:2},select:[{collection:\"w5EgVjWnv\",name:\"KdPKL5qei\",type:\"Identifier\"},{collection:\"w5EgVjWnv\",name:\"JTxJg0pZb\",type:\"Identifier\"},{collection:\"w5EgVjWnv\",name:\"HR_D2v7hb\",type:\"Identifier\"},{collection:\"w5EgVjWnv\",name:\"a8ZAaoovg\",type:\"Identifier\"},{collection:\"w5EgVjWnv\",name:\"BIDaTdinF\",type:\"Identifier\"},{collection:\"w5EgVjWnv\",name:\"USer7orzc\",type:\"Identifier\"},{collection:\"w5EgVjWnv\",name:\"AoY6MzJG2\",type:\"Identifier\"},{collection:\"w5EgVjWnv\",name:\"id\",type:\"Identifier\"}],where:{operator:\"not\",type:\"UnaryOperation\",value:{left:{collection:\"w5EgVjWnv\",name:\"HR_D2v7hb\",type:\"Identifier\"},operator:\"==\",right:{type:\"LiteralValue\",value:HR_D2v7hb},type:\"BinaryOperation\"}}});const QueryData=({query,pageSize,children})=>{const data=useQueryData(query);return children(data);};const humanReadableVariantMap={Desktop:\"s57Bzp3UE\",Phone:\"J1TsDX61j\",Tablet:\"Q1Q0VtM93\"};const HTMLStyle=({value})=>{const onCanvas=useIsOnFramerCanvas();if(onCanvas)return null;return /*#__PURE__*/_jsx(\"style\",{dangerouslySetInnerHTML:{__html:value},\"data-framer-html-style\":\"\"});};const detailQuery=where=>({from:{alias:\"XGqHdMUqV\",data:FramerStore,type:\"Collection\"},select:[{collection:\"XGqHdMUqV\",name:\"a8ZAaoovg\",type:\"Identifier\"},{collection:\"XGqHdMUqV\",name:\"HR_D2v7hb\",type:\"Identifier\"},{collection:\"XGqHdMUqV\",name:\"USer7orzc\",type:\"Identifier\"},{collection:\"XGqHdMUqV\",name:\"LEanJJh19\",type:\"Identifier\"},{collection:\"XGqHdMUqV\",name:\"BIDaTdinF\",type:\"Identifier\"},{collection:\"XGqHdMUqV\",name:\"AoY6MzJG2\",type:\"Identifier\"},{collection:\"XGqHdMUqV\",name:\"buV12ljyw\",type:\"Identifier\"},{collection:\"XGqHdMUqV\",name:\"yitoGO6T3\",type:\"Identifier\"},{collection:\"XGqHdMUqV\",name:\"cE06FoYnT\",type:\"Identifier\"},{collection:\"XGqHdMUqV\",name:\"AId32iDwH\",type:\"Identifier\"},{collection:\"XGqHdMUqV\",name:\"fhdsIcnWB\",type:\"Identifier\"},{collection:\"XGqHdMUqV\",name:\"sxwinQ3xN\",type:\"Identifier\"},{collection:\"XGqHdMUqV\",name:\"M0mMQtuoJ\",type:\"Identifier\"},{collection:\"XGqHdMUqV\",name:\"BWTKeaTFS\",type:\"Identifier\"},{collection:\"XGqHdMUqV\",name:\"WEV5ypMps\",type:\"Identifier\"},{collection:\"XGqHdMUqV\",name:\"zDi8fdrko\",type:\"Identifier\"},{collection:\"XGqHdMUqV\",name:\"yC2H0iC1T\",type:\"Identifier\"},{collection:\"XGqHdMUqV\",name:\"dFlzxJs1r\",type:\"Identifier\"},{collection:\"XGqHdMUqV\",name:\"MCZi_DjOF\",type:\"Identifier\"},{collection:\"XGqHdMUqV\",name:\"Je04pVO2G\",type:\"Identifier\"},{collection:\"XGqHdMUqV\",name:\"o6krRlwTO\",type:\"Identifier\"},{collection:\"XGqHdMUqV\",name:\"vhaqjUAN9\",type:\"Identifier\"},{collection:\"XGqHdMUqV\",name:\"HlIoZs3Fp\",type:\"Identifier\"}],where});const getProps=({height,id,width,...props})=>{return{...props,variant:humanReadableVariantMap[props.variant]??props.variant??\"s57Bzp3UE\"};};const Component=/*#__PURE__*/React.forwardRef(function(props,ref){const fallbackRef=useRef(null);const refBinding=ref??fallbackRef;const defaultLayoutId=React.useId();const{activeLocale,setLocale}=useLocaleInfo();const componentViewport=useComponentViewport();const currentPathVariables=useCurrentPathVariables();const[currentRouteData]=useQueryData(detailQuery(getWhereExpressionFromPathVariables(currentPathVariables,\"XGqHdMUqV\")));const getFromCurrentRouteData=key=>{if(!currentRouteData)throw new NotFoundError(`No data matches path variables: ${JSON.stringify(currentPathVariables)}`);return currentRouteData[key];};const{style,className,layoutId,variant,a8ZAaoovg=getFromCurrentRouteData(\"a8ZAaoovg\")??\"\",HR_D2v7hb=getFromCurrentRouteData(\"HR_D2v7hb\")??\"\",USer7orzc=getFromCurrentRouteData(\"USer7orzc\")??\"\",LEanJJh19=getFromCurrentRouteData(\"LEanJJh19\")??\"\",BIDaTdinF=getFromCurrentRouteData(\"BIDaTdinF\")??\"\",AoY6MzJG2=getFromCurrentRouteData(\"AoY6MzJG2\")??\"\",buV12ljyw=getFromCurrentRouteData(\"buV12ljyw\")??\"\",yitoGO6T3=getFromCurrentRouteData(\"yitoGO6T3\")??\"\",cE06FoYnT=getFromCurrentRouteData(\"cE06FoYnT\")??\"\",AId32iDwH=getFromCurrentRouteData(\"AId32iDwH\")??\"\",fhdsIcnWB=getFromCurrentRouteData(\"fhdsIcnWB\")??\"\",sxwinQ3xN=getFromCurrentRouteData(\"sxwinQ3xN\"),M0mMQtuoJ=getFromCurrentRouteData(\"M0mMQtuoJ\"),BWTKeaTFS=getFromCurrentRouteData(\"BWTKeaTFS\"),WEV5ypMps=getFromCurrentRouteData(\"WEV5ypMps\"),zDi8fdrko=getFromCurrentRouteData(\"zDi8fdrko\"),yC2H0iC1T=getFromCurrentRouteData(\"yC2H0iC1T\")??true,dFlzxJs1r=getFromCurrentRouteData(\"dFlzxJs1r\"),MCZi_DjOF=getFromCurrentRouteData(\"MCZi_DjOF\"),Je04pVO2G=getFromCurrentRouteData(\"Je04pVO2G\"),o6krRlwTO=getFromCurrentRouteData(\"o6krRlwTO\"),vhaqjUAN9=getFromCurrentRouteData(\"vhaqjUAN9\"),HlIoZs3Fp=getFromCurrentRouteData(\"HlIoZs3Fp\"),...restProps}=getProps(props);const metadata=React.useMemo(()=>metadataProvider({a8ZAaoovg,fhdsIcnWB,MCZi_DjOF},activeLocale),[MCZi_DjOF,fhdsIcnWB,a8ZAaoovg,activeLocale]);useMetadata(metadata);const[baseVariant,hydratedBaseVariant]=useHydratedBreakpointVariants(variant,breakpoints,false);const gestureVariant=undefined;const{activeVariantCallback,delay}=useActiveVariantCallback(undefined);const onTapko9la1=({overlay})=>activeVariantCallback(async(...args)=>{overlay.toggle();});const onMouseEnter13elrgn=({overlay})=>activeVariantCallback(async(...args)=>{overlay.show();});const onTap1q29jei=({overlay})=>activeVariantCallback(async(...args)=>{overlay.hide();});const vjHrn9newko9la1=({overlay})=>activeVariantCallback(async(...args)=>{overlay.toggle();});const GuSQrhKyv1q29jei=({overlay})=>activeVariantCallback(async(...args)=>{overlay.hide();});const sharedStyleClassNames=[sharedStyle.className,sharedStyle1.className,sharedStyle2.className];const scopingClassNames=cx(serializationHash,...sharedStyleClassNames);const hasLayoutTemplate=React.useContext(GeneratedComponentContext)?.isLayoutTemplate;const hasInheritedFlowEffect=Boolean(React.useContext(MotionConfigContext)?.transition?.layout);const motionLayout=getRootLayoutProp(hasLayoutTemplate,hasInheritedFlowEffect,\"position\");const isDisplayed=()=>{if(!isBrowser())return true;if(baseVariant===\"J1TsDX61j\")return false;return true;};const visible=isSet(sxwinQ3xN);const visible1=isSet(M0mMQtuoJ);const visible2=isSet(BWTKeaTFS);const visible3=isSet(WEV5ypMps);const visible4=isSet(zDi8fdrko);const visible5=isSet(Je04pVO2G);const visible6=isSet(o6krRlwTO);const visible7=isSet(vhaqjUAN9);const visible8=isSet(HlIoZs3Fp);const isDisplayed1=()=>{if(!isBrowser())return true;if(baseVariant===\"J1TsDX61j\")return true;return false;};const visible9=negate(isSet(zDi8fdrko));const isDisplayed2=value=>{if(!isBrowser())return true;if(baseVariant===\"J1TsDX61j\")return value;return true;};const visible10=isSet(AoY6MzJG2);const elementId=useRouteElementId(\"EtHQc2K8Q\");const ref1=React.useRef(null);const visible11=negate(equals(LEanJJh19,\"None\"));const visible12=isSet(dFlzxJs1r);const ref2=React.useRef(null);const ref3=React.useRef(null);const visible13=isSet(buV12ljyw);const elementId1=useRouteElementId(\"fTgI5Dge1\");const dynamicRef=useSiteRefs();const router=useRouter();useCustomCursors({});return /*#__PURE__*/_jsx(GeneratedComponentContext.Provider,{value:{activeVariantId:baseVariant,humanReadableVariantMap,primaryVariantId:\"s57Bzp3UE\",variantClassNames},children:/*#__PURE__*/_jsxs(LayoutGroup,{id:layoutId??defaultLayoutId,children:[/*#__PURE__*/_jsx(HTMLStyle,{value:\"html body { background: var(--token-958e2cd1-b113-4aa3-9235-7a2b959c8feb, rgb(0, 0, 0)); }\"}),/*#__PURE__*/_jsx(MotionDivWithFlowFX,{...restProps,className:cx(scopingClassNames,\"framer-1ex7wa3\",className),flowEffectEnabled:true,flowEffectTransition:transition1,isNestedFlowEffect:false,ref:refBinding,style:{...style},children:/*#__PURE__*/_jsxs(motion.div,{className:\"framer-on3i6k\",\"data-framer-name\":\"Product\",layout:motionLayout,children:[/*#__PURE__*/_jsxs(\"div\",{className:\"framer-1m2xjnc\",children:[isDisplayed()&&/*#__PURE__*/_jsxs(\"div\",{className:\"framer-zhxwen hidden-1l8qfcq\",\"data-framer-name\":\"Images\",children:[visible!==false&&/*#__PURE__*/_jsx(PropertyOverrides,{breakpoint:baseVariant,overrides:{Q1Q0VtM93:{background:{alt:\"\",fit:\"fill\",loading:getLoadingLazyAtYPosition((componentViewport?.y||0)+0+0+0+0+0+20+0),sizes:`max((min(${componentViewport?.width||\"100vw\"} - 40px, 1200px) - 40px) / 2, 1px)`,...toResponsiveImage(sxwinQ3xN)}}},children:/*#__PURE__*/_jsx(Image1,{background:{alt:\"\",fit:\"fill\",loading:getLoadingLazyAtYPosition((componentViewport?.y||0)+0+0+0+0+0+20+0),sizes:`max((min(${componentViewport?.width||\"100vw\"} - 40px, 1200px) - 50px) / 2, 1px)`,...toResponsiveImage(sxwinQ3xN)},className:\"framer-1v9cyyv\",\"data-border\":true,\"data-framer-name\":\"1\",id:\"1v9cyyv\",lightbox:{backdrop:\"rgba(0, 0, 0, 0.8)\",maxWidth:1e3,padding:20,transition:transition2,zIndex:10},lightboxClassName:scopingClassNames})}),visible1!==false&&/*#__PURE__*/_jsx(PropertyOverrides,{breakpoint:baseVariant,overrides:{Q1Q0VtM93:{background:{alt:\"\",fit:\"fill\",loading:getLoadingLazyAtYPosition((componentViewport?.y||0)+0+0+0+0+0+20+0),sizes:`max((min(${componentViewport?.width||\"100vw\"} - 40px, 1200px) - 40px) / 2, 1px)`,...toResponsiveImage(M0mMQtuoJ)}}},children:/*#__PURE__*/_jsx(Image1,{background:{alt:\"\",fit:\"fill\",loading:getLoadingLazyAtYPosition((componentViewport?.y||0)+0+0+0+0+0+20+0),sizes:`max((min(${componentViewport?.width||\"100vw\"} - 40px, 1200px) - 50px) / 2, 1px)`,...toResponsiveImage(M0mMQtuoJ)},className:\"framer-m9y37o\",\"data-border\":true,\"data-framer-name\":\"2\",id:\"m9y37o\",lightbox:{backdrop:\"rgba(0, 0, 0, 0.8)\",maxWidth:1e3,padding:20,transition:transition2,zIndex:10},lightboxClassName:scopingClassNames})}),visible2!==false&&/*#__PURE__*/_jsx(PropertyOverrides,{breakpoint:baseVariant,overrides:{Q1Q0VtM93:{background:{alt:\"\",fit:\"fill\",loading:getLoadingLazyAtYPosition((componentViewport?.y||0)+0+0+0+0+0+20+0),sizes:`max((min(${componentViewport?.width||\"100vw\"} - 40px, 1200px) - 40px) / 2, 1px)`,...toResponsiveImage(BWTKeaTFS)}}},children:/*#__PURE__*/_jsx(Image1,{background:{alt:\"\",fit:\"fill\",loading:getLoadingLazyAtYPosition((componentViewport?.y||0)+0+0+0+0+0+20+0),sizes:`max((min(${componentViewport?.width||\"100vw\"} - 40px, 1200px) - 50px) / 2, 1px)`,...toResponsiveImage(BWTKeaTFS)},className:\"framer-nrlqj4\",\"data-border\":true,\"data-framer-name\":\"3\",id:\"nrlqj4\",lightbox:{backdrop:\"rgba(0, 0, 0, 0.8)\",maxWidth:1e3,padding:20,transition:transition2,zIndex:10},lightboxClassName:scopingClassNames})}),visible3!==false&&/*#__PURE__*/_jsx(PropertyOverrides,{breakpoint:baseVariant,overrides:{Q1Q0VtM93:{background:{alt:\"\",fit:\"fill\",loading:getLoadingLazyAtYPosition((componentViewport?.y||0)+0+0+0+0+0+20+0),sizes:`max((min(${componentViewport?.width||\"100vw\"} - 40px, 1200px) - 40px) / 2, 1px)`,...toResponsiveImage(WEV5ypMps)}}},children:/*#__PURE__*/_jsx(Image1,{background:{alt:\"\",fit:\"fill\",loading:getLoadingLazyAtYPosition((componentViewport?.y||0)+0+0+0+0+0+20+0),sizes:`max((min(${componentViewport?.width||\"100vw\"} - 40px, 1200px) - 50px) / 2, 1px)`,...toResponsiveImage(WEV5ypMps)},className:\"framer-vhnwp9\",\"data-border\":true,\"data-framer-name\":\"4\",id:\"vhnwp9\",lightbox:{backdrop:\"rgba(0, 0, 0, 0.8)\",maxWidth:1e3,padding:20,transition:transition2,zIndex:10},lightboxClassName:scopingClassNames})}),visible4!==false&&/*#__PURE__*/_jsx(PropertyOverrides,{breakpoint:baseVariant,overrides:{Q1Q0VtM93:{background:{alt:\"\",fit:\"fill\",loading:getLoadingLazyAtYPosition((componentViewport?.y||0)+0+0+0+0+0+20+0),sizes:`max((min(${componentViewport?.width||\"100vw\"} - 40px, 1200px) - 40px) / 2, 1px)`,...toResponsiveImage(zDi8fdrko)}}},children:/*#__PURE__*/_jsx(Image1,{background:{alt:\"\",fit:\"fill\",loading:getLoadingLazyAtYPosition((componentViewport?.y||0)+0+0+0+0+0+20+0),sizes:`max((min(${componentViewport?.width||\"100vw\"} - 40px, 1200px) - 50px) / 2, 1px)`,...toResponsiveImage(zDi8fdrko)},className:\"framer-152stk6\",\"data-border\":true,\"data-framer-name\":\"5\",id:\"152stk6\",lightbox:{backdrop:\"rgba(0, 0, 0, 0.8)\",maxWidth:1e3,padding:20,transition:transition2,zIndex:10},lightboxClassName:scopingClassNames})}),visible5!==false&&/*#__PURE__*/_jsx(PropertyOverrides,{breakpoint:baseVariant,overrides:{Q1Q0VtM93:{background:{alt:\"\",fit:\"fill\",loading:getLoadingLazyAtYPosition((componentViewport?.y||0)+0+0+0+0+0+20+0),sizes:`max((min(${componentViewport?.width||\"100vw\"} - 40px, 1200px) - 40px) / 2, 1px)`,...toResponsiveImage(Je04pVO2G)}}},children:/*#__PURE__*/_jsx(Image1,{background:{alt:\"\",fit:\"fill\",loading:getLoadingLazyAtYPosition((componentViewport?.y||0)+0+0+0+0+0+20+0),sizes:`max((min(${componentViewport?.width||\"100vw\"} - 40px, 1200px) - 50px) / 2, 1px)`,...toResponsiveImage(Je04pVO2G)},className:\"framer-ae6uci\",\"data-border\":true,\"data-framer-name\":\"6\",id:\"ae6uci\",lightbox:{backdrop:\"rgba(0, 0, 0, 0.8)\",maxWidth:1e3,padding:20,transition:transition2,zIndex:10},lightboxClassName:scopingClassNames})}),visible6!==false&&/*#__PURE__*/_jsx(PropertyOverrides,{breakpoint:baseVariant,overrides:{Q1Q0VtM93:{background:{alt:\"\",fit:\"fill\",loading:getLoadingLazyAtYPosition((componentViewport?.y||0)+0+0+0+0+0+20+0),sizes:`max((min(${componentViewport?.width||\"100vw\"} - 40px, 1200px) - 40px) / 2, 1px)`,...toResponsiveImage(o6krRlwTO)}}},children:/*#__PURE__*/_jsx(Image1,{background:{alt:\"\",fit:\"fill\",loading:getLoadingLazyAtYPosition((componentViewport?.y||0)+0+0+0+0+0+20+0),sizes:`max((min(${componentViewport?.width||\"100vw\"} - 40px, 1200px) - 50px) / 2, 1px)`,...toResponsiveImage(o6krRlwTO)},className:\"framer-1n4r683\",\"data-border\":true,\"data-framer-name\":\"7\",id:\"1n4r683\",lightbox:{backdrop:\"rgba(0, 0, 0, 0.8)\",maxWidth:1e3,padding:20,transition:transition2,zIndex:10},lightboxClassName:scopingClassNames})}),visible7!==false&&/*#__PURE__*/_jsx(PropertyOverrides,{breakpoint:baseVariant,overrides:{Q1Q0VtM93:{background:{alt:\"\",fit:\"fill\",loading:getLoadingLazyAtYPosition((componentViewport?.y||0)+0+0+0+0+0+20+0),sizes:`max((min(${componentViewport?.width||\"100vw\"} - 40px, 1200px) - 40px) / 2, 1px)`,...toResponsiveImage(vhaqjUAN9)}}},children:/*#__PURE__*/_jsx(Image1,{background:{alt:\"\",fit:\"fill\",loading:getLoadingLazyAtYPosition((componentViewport?.y||0)+0+0+0+0+0+20+0),sizes:`max((min(${componentViewport?.width||\"100vw\"} - 40px, 1200px) - 50px) / 2, 1px)`,...toResponsiveImage(vhaqjUAN9)},className:\"framer-1q38pzk\",\"data-border\":true,\"data-framer-name\":\"8\",id:\"1q38pzk\",lightbox:{backdrop:\"rgba(0, 0, 0, 0.8)\",maxWidth:1e3,padding:20,transition:transition2,zIndex:10},lightboxClassName:scopingClassNames})}),visible8!==false&&/*#__PURE__*/_jsx(PropertyOverrides,{breakpoint:baseVariant,overrides:{Q1Q0VtM93:{background:{alt:\"\",fit:\"fill\",loading:getLoadingLazyAtYPosition((componentViewport?.y||0)+0+0+0+0+0+20+0),sizes:`max((min(${componentViewport?.width||\"100vw\"} - 40px, 1200px) - 40px) / 2, 1px)`,...toResponsiveImage(HlIoZs3Fp)}}},children:/*#__PURE__*/_jsx(Image1,{background:{alt:\"\",fit:\"fill\",loading:getLoadingLazyAtYPosition((componentViewport?.y||0)+0+0+0+0+0+20+0),sizes:`max((min(${componentViewport?.width||\"100vw\"} - 40px, 1200px) - 50px) / 2, 1px)`,...toResponsiveImage(HlIoZs3Fp)},className:\"framer-qgz386\",\"data-border\":true,\"data-framer-name\":\"9\",id:\"qgz386\",lightbox:{backdrop:\"rgba(0, 0, 0, 0.8)\",maxWidth:1e3,padding:20,transition:transition2,zIndex:10},lightboxClassName:scopingClassNames})})]}),/*#__PURE__*/_jsxs(\"div\",{className:\"framer-gmkvdx\",\"data-framer-name\":\"Details\",children:[isDisplayed1()&&/*#__PURE__*/_jsx(PropertyOverrides,{breakpoint:baseVariant,overrides:{J1TsDX61j:{\"data-border\":true}},children:/*#__PURE__*/_jsxs(\"div\",{className:\"framer-1noixyu hidden-1ex7wa3 hidden-19ttag1\",\"data-framer-name\":\"Phone Sideshow\",children:[isDisplayed2(visible9!==false)&&/*#__PURE__*/_jsx(ComponentViewportProvider,{children:/*#__PURE__*/_jsx(PropertyOverrides,{breakpoint:baseVariant,overrides:{J1TsDX61j:{__framer__parallaxTransformEnabled:undefined}},children:/*#__PURE__*/_jsx(ContainerWithFX,{__framer__adjustPosition:false,__framer__offset:0,__framer__parallaxTransformEnabled:true,__framer__speed:60,__perspectiveFX:false,__targetOpacity:1,className:cx(\"framer-g0j33a-container\",!(visible9!==false)&&\"hidden-1l8qfcq\"),\"data-framer-name\":\"Phone Slideshow 4\",isAuthoredByUser:true,isModuleExternal:true,name:\"Phone Slideshow 4\",nodeId:\"Zqe2bfbcs\",rendersWithMotion:true,scopeId:\"XGqHdMUqV\",children:/*#__PURE__*/_jsx(PropertyOverrides,{breakpoint:baseVariant,overrides:{J1TsDX61j:{dragControl:true,transitionControl:{bounce:0,delay:0,duration:.4,type:\"spring\"}}},children:/*#__PURE__*/_jsx(Slideshow,{alignment:\"center\",arrowOptions:{arrowFill:\"rgba(0, 0, 0, 0.5)\",arrowGap:10,arrowPadding:20,arrowPaddingBottom:0,arrowPaddingLeft:0,arrowPaddingRight:0,arrowPaddingTop:0,arrowPosition:\"auto\",arrowRadius:40,arrowShouldFadeIn:false,arrowShouldSpace:true,arrowSize:20,showMouseControls:false},autoPlayControl:false,borderRadius:0,direction:\"right\",dragControl:false,effectsOptions:{effectsHover:true,effectsOpacity:1,effectsPerspective:1200,effectsRotate:0,effectsScale:1,playOffscreen:false},fadeOptions:{fadeAlpha:.55,fadeContent:false,fadeInset:0,fadeWidth:14,overflow:false},gap:0,height:\"100%\",id:\"Zqe2bfbcs\",intervalControl:4,itemAmount:1,layoutId:\"Zqe2bfbcs\",name:\"Phone Slideshow 4\",padding:0,paddingBottom:0,paddingLeft:0,paddingPerSide:false,paddingRight:0,paddingTop:0,progressOptions:{dotsActiveOpacity:1,dotsBackground:\"rgba(0, 0, 0, 0)\",dotsBlur:0,dotsFill:\"rgb(255, 255, 255)\",dotsGap:5,dotsInset:10,dotSize:8,dotsOpacity:.5,dotsPadding:10,dotsRadius:0,showProgressDots:true},slots:[/*#__PURE__*/_jsx(Image1,{background:{alt:\"\",fit:\"fill\",sizes:\"224px\",...toResponsiveImage(sxwinQ3xN)},className:\"framer-1u61c0v\",\"data-framer-name\":\"Image 1\"}),/*#__PURE__*/_jsx(Image1,{background:{alt:\"\",fit:\"fill\",sizes:\"224px\",...toResponsiveImage(M0mMQtuoJ)},className:\"framer-w5rafr\",\"data-framer-name\":\"Image 2\"}),/*#__PURE__*/_jsx(Image1,{background:{alt:\"\",fit:\"fill\",sizes:\"224px\",...toResponsiveImage(BWTKeaTFS)},className:\"framer-1bq2h6x\",\"data-framer-name\":\"Image 3\"}),/*#__PURE__*/_jsx(Image1,{background:{alt:\"\",fit:\"fill\",sizes:\"224px\",...toResponsiveImage(WEV5ypMps)},className:\"framer-wiwb2t\",\"data-framer-name\":\"Image 4\"})],startFrom:0,style:{height:\"100%\",width:\"100%\"},transitionControl:{damping:40,delay:0,mass:1,stiffness:200,type:\"spring\"},width:\"100%\"})})})})}),isDisplayed2(visible4!==false)&&/*#__PURE__*/_jsx(ComponentViewportProvider,{children:/*#__PURE__*/_jsx(Container,{className:cx(\"framer-1m0wiy1-container\",!(visible4!==false)&&\"hidden-1l8qfcq\"),\"data-framer-name\":\"Phone Slideshow 5\",isAuthoredByUser:true,isModuleExternal:true,name:\"Phone Slideshow 5\",nodeId:\"OaKUsPOzP\",scopeId:\"XGqHdMUqV\",children:/*#__PURE__*/_jsx(Slideshow,{alignment:\"center\",arrowOptions:{arrowFill:\"rgba(0, 0, 0, 0.5)\",arrowGap:10,arrowPadding:20,arrowPaddingBottom:0,arrowPaddingLeft:0,arrowPaddingRight:0,arrowPaddingTop:0,arrowPosition:\"auto\",arrowRadius:40,arrowShouldFadeIn:false,arrowShouldSpace:true,arrowSize:20,showMouseControls:false},autoPlayControl:false,borderRadius:0,direction:\"right\",dragControl:true,effectsOptions:{effectsHover:true,effectsOpacity:1,effectsPerspective:1200,effectsRotate:0,effectsScale:1,playOffscreen:false},fadeOptions:{fadeAlpha:.55,fadeContent:false,fadeInset:0,fadeWidth:14,overflow:false},gap:0,height:\"100%\",id:\"OaKUsPOzP\",intervalControl:4,itemAmount:1,layoutId:\"OaKUsPOzP\",name:\"Phone Slideshow 5\",padding:0,paddingBottom:0,paddingLeft:0,paddingPerSide:false,paddingRight:0,paddingTop:0,progressOptions:{dotsActiveOpacity:1,dotsBackground:\"rgba(0, 0, 0, 0)\",dotsBlur:0,dotsFill:\"rgb(255, 255, 255)\",dotsGap:5,dotsInset:10,dotSize:8,dotsOpacity:.5,dotsPadding:10,dotsRadius:0,showProgressDots:true},slots:[/*#__PURE__*/_jsx(Image1,{background:{alt:\"\",fit:\"fill\",sizes:\"224px\",...toResponsiveImage(sxwinQ3xN)},className:\"framer-1u61c0v\",\"data-framer-name\":\"Image 1\"}),/*#__PURE__*/_jsx(Image1,{background:{alt:\"\",fit:\"fill\",sizes:\"224px\",...toResponsiveImage(M0mMQtuoJ)},className:\"framer-w5rafr\",\"data-framer-name\":\"Image 2\"}),/*#__PURE__*/_jsx(Image1,{background:{alt:\"\",fit:\"fill\",sizes:\"224px\",...toResponsiveImage(BWTKeaTFS)},className:\"framer-1bq2h6x\",\"data-framer-name\":\"Image 3\"}),/*#__PURE__*/_jsx(Image1,{background:{alt:\"\",fit:\"fill\",sizes:\"224px\",...toResponsiveImage(WEV5ypMps)},className:\"framer-wiwb2t\",\"data-framer-name\":\"Image 4\"}),/*#__PURE__*/_jsx(Image1,{background:{alt:\"\",fit:\"fill\",sizes:\"224px\",...toResponsiveImage(zDi8fdrko)},className:\"framer-1j9zxiw\",\"data-framer-name\":\"Image 5\"})],startFrom:0,style:{height:\"100%\",width:\"100%\"},transitionControl:{bounce:0,delay:0,duration:.4,type:\"spring\"},width:\"100%\"})})})]})}),/*#__PURE__*/_jsxs(\"div\",{className:\"framer-s69c21\",children:[/*#__PURE__*/_jsx(\"div\",{className:\"framer-u1t0x4\",children:/*#__PURE__*/_jsx(\"div\",{className:\"framer-132ajb\",children:/*#__PURE__*/_jsxs(\"div\",{className:\"framer-1wosaee\",\"data-framer-name\":\"Product Name\",children:[/*#__PURE__*/_jsxs(\"div\",{className:\"framer-1jwp73\",children:[/*#__PURE__*/_jsx(RichText,{__fromCanvasComponent:true,children:/*#__PURE__*/_jsx(React.Fragment,{children:/*#__PURE__*/_jsx(\"h1\",{className:\"framer-styles-preset-1gzpg4m\",\"data-styles-preset\":\"gM4yNG9Qq\",dir:\"auto\",style:{\"--framer-text-alignment\":\"left\"},children:\"Logo Tee\"})}),className:\"framer-1mogpco\",\"data-framer-name\":\"Title\",fonts:[\"Inter\"],text:a8ZAaoovg,verticalAlignment:\"top\",withExternalLayout:true}),/*#__PURE__*/_jsx(RichText,{__fromCanvasComponent:true,children:/*#__PURE__*/_jsx(React.Fragment,{children:/*#__PURE__*/_jsx(\"p\",{className:\"framer-styles-preset-vn6u90\",\"data-styles-preset\":\"kuibWYBoM\",dir:\"auto\",style:{\"--framer-text-color\":\"var(--token-8f5eb515-7a13-452b-a4ab-f35e2208a3f3, rgba(255, 255, 255, 0.6))\"},children:\"Content\"})}),className:\"framer-1xs41xb\",fonts:[\"Inter\"],text:fhdsIcnWB,verticalAlignment:\"top\",withExternalLayout:true})]}),/*#__PURE__*/_jsx(\"div\",{className:\"framer-1dzop0o\",children:/*#__PURE__*/_jsxs(\"div\",{className:\"framer-kagddr\",children:[/*#__PURE__*/_jsx(ComponentViewportProvider,{children:/*#__PURE__*/_jsx(Container,{className:\"framer-k1k55a-container\",isAuthoredByUser:true,isModuleExternal:true,nodeId:\"JIlNMr7UQ\",scopeId:\"XGqHdMUqV\",children:/*#__PURE__*/_jsx(FC_ProductPrice,{canvasPrice:BIDaTdinF,displayPrice:\"minimum price\",format:{currencyCode:\"EUR\",showCurrency:false,showDecimals:\"Hide when .00\",showSymbol:true},fromText:\"\",height:\"100%\",id:\"JIlNMr7UQ\",layoutId:\"JIlNMr7UQ\",regularColor:\"rgb(255, 255, 255)\",regularFont:{fontFamily:'\"Inter\", \"Inter Placeholder\", sans-serif',fontFeatureSettings:\"'tnum' on\",fontSize:\"16px\",fontStyle:\"normal\",fontWeight:500,letterSpacing:\"-0.05em\",lineHeight:\"1em\"},saleColor:\"rgb(255, 255, 255)\",saleFont:{fontFamily:'\"Inter\", \"Inter Placeholder\", sans-serif',fontSize:\"16px\",fontStyle:\"normal\",fontWeight:500,letterSpacing:\"0em\",lineHeight:\"1em\"},shopifyProductID:USer7orzc,width:\"100%\"})})}),visible10!==false&&/*#__PURE__*/_jsx(ComponentViewportProvider,{children:/*#__PURE__*/_jsx(Container,{className:\"framer-101gw28-container\",isAuthoredByUser:true,isModuleExternal:true,nodeId:\"r0EdlmGPz\",scopeId:\"XGqHdMUqV\",children:/*#__PURE__*/_jsx(FC_ProductPriceCompare,{canvasPrice:AoY6MzJG2,color:\"rgb(255, 255, 255)\",compareAtPrefix:\"\",font:{fontFamily:'\"Inter\", \"Inter Placeholder\", sans-serif',fontSize:\"16px\",fontStyle:\"normal\",fontWeight:500,letterSpacing:\"-0.05em\",lineHeight:\"1em\"},format:{currencyCode:\"EUR\",showCurrency:false,showDecimals:\"Hide when .00\",showSymbol:true},height:\"100%\",id:\"r0EdlmGPz\",layoutId:\"r0EdlmGPz\",shopifyProductID:USer7orzc,strikethrough:true,strikethroughColor:\"rgb(255, 255, 255)\",strikethroughSize:1,width:\"100%\"})})}),yC2H0iC1T!==false&&/*#__PURE__*/_jsx(PropertyOverrides,{breakpoint:baseVariant,overrides:{J1TsDX61j:{y:(componentViewport?.y||0)+0+0+0+0+0+0+0+435+0+0+0+0+0+0+0+200.5+0+92}},children:/*#__PURE__*/_jsx(ComponentViewportProvider,{height:16,y:(componentViewport?.y||0)+0+0+0+0+0+100+0+0+0+0+0+0+0+0+210.5+0+92,children:/*#__PURE__*/_jsx(Container,{className:\"framer-x0od9x-container\",nodeId:\"SmNKV4Zxi\",scopeId:\"XGqHdMUqV\",children:/*#__PURE__*/_jsx(FCStockStatus,{C4U1l_gbD:USer7orzc,height:\"100%\",id:\"SmNKV4Zxi\",layoutId:\"SmNKV4Zxi\",width:\"100%\"})})})})]})})]})})}),/*#__PURE__*/_jsxs(\"div\",{className:\"framer-1jvkjb5\",id:elementId,ref:ref1,children:[visible11!==false&&/*#__PURE__*/_jsxs(\"div\",{className:\"framer-19z034m\",children:[/*#__PURE__*/_jsx(ComponentViewportProvider,{children:/*#__PURE__*/_jsx(Container,{className:\"framer-vtkle9-container\",isAuthoredByUser:true,isModuleExternal:true,nodeId:\"CUim_MOeA\",scopeId:\"XGqHdMUqV\",children:/*#__PURE__*/_jsx(FC_ProductVariants,{behaviorConfigs:{action:\"Update Active\",autoSelectFirst:false,filterVariants:{variantGroups:\"all\",variantTitles:[]},productPage:true,selectOutOfStock:false,showSingleVariants:false,triggerCart:true},buttonConfigs:{columnCount:3,columns:\"auto\",direction:\"horizontal\",gap:5,gapY:8,gridWidth:100,hovered:{background:\"rgba(255, 255, 255, 0.15)\",border:{borderColor:\"rgb(0, 0, 0)\",borderStyle:\"solid\",borderWidth:0,bottom:0,isMixed:false,left:0,right:0,top:0},color:\"rgb(255, 255, 255)\",font:{fontFamily:'\"Inter\", \"Inter Placeholder\", sans-serif',fontSize:\"14px\",fontStyle:\"normal\",fontWeight:600,letterSpacing:\"-0.02em\",lineHeight:\"1em\"},textTransform:\"None\"},layout:\"stack\",maxColumns:4,outOfStock:{background:\"rgba(255, 255, 255, 0.05)\",border:{borderColor:\"rgb(255, 255, 255)\",borderStyle:\"solid\",borderWidth:0,bottom:0,isMixed:false,left:0,right:0,top:0},color:\"rgba(255, 255, 255, 0.2)\",font:{fontFamily:'\"Inter\", \"Inter Placeholder\", sans-serif',fontSize:\"16px\",fontStyle:\"normal\",fontWeight:500,letterSpacing:\"0em\",lineHeight:\"1em\"},preview:true,strike:{color:\"rgba(255, 255, 255, 0.05)\",direction:\"diagonal-down\",line:false,size:\"container\"},textTransform:\"None\"},padding:\"10px 15px 10px 15px\",radius:\"100px\",selected:{background:\"rgb(255, 255, 255)\",border:{borderColor:\"rgb(0, 0, 0)\",borderStyle:\"solid\",borderWidth:0,bottom:0,isMixed:false,left:0,right:0,top:0},color:\"rgb(0, 0, 0)\",font:{fontFamily:'\"Inter\", \"Inter Placeholder\", sans-serif',fontSize:\"14px\",fontStyle:\"normal\",fontWeight:600,letterSpacing:\"-0.02em\",lineHeight:\"1em\"},textTransform:\"Uppercase\"},unselected:{background:\"rgba(255, 255, 255, 0.1)\",border:{borderColor:\"rgba(0, 0, 0, 0.08)\",borderStyle:\"solid\",borderWidth:0,bottom:0,isMixed:false,left:0,right:0,top:0},color:\"rgb(255, 255, 255)\",font:{fontFamily:'\"Inter\", \"Inter Placeholder\", sans-serif',fontSize:\"14px\",fontStyle:\"normal\",fontWeight:600,letterSpacing:\"-0.02em\",lineHeight:\"1em\"},textTransform:\"None\"},width:false},colors:[{hex:\"rgb(74, 148, 217)\",id:\"l5GpRh5FE\",name:\"Blue\"},{hex:\"rgb(43, 43, 43)\",id:\"i0XkMH0b0\",name:\"Black\"},{hex:\"rgb(227, 208, 145)\",id:\"qku2IY2W0\",name:\"Matcha\"},{hex:\"rgb(123, 63, 61)\",id:\"vZR3x5X58\",name:\"Orange\"},{hex:\"rgb(134, 140, 107)\",id:\"tsOoMPm0p\",name:\"Sage\"}],colorTitles:[\"Color\",\"Black\",\"Match\",\"Blue\",\"Orange\",\"Sage\"],containerConfigs:{background:\"rgba(255, 255, 255, 0)\",direction:\"vertical\",gap:24,gap2:14,padding:\"0px\",radius:\"0px\"},dropdownConfigs:{focus:{color:\"rgb(0, 153, 255)\",offset:2,width:2},font:{},hover:{background:\"rgba(0, 0, 0, 0.04)\",border:{borderColor:\"rgb(0, 0, 0)\",borderStyle:\"solid\",borderWidth:1,bottom:1,isMixed:false,left:1,right:1,top:1},color:\"rgb(0, 0, 0)\"},icon:{color:\"rgb(0, 0, 0)\",size:12,type:\"default\",weight:2},padding:\"16px 16px 16px 16px\",radius:\"4px\",selected:{background:\"rgb(255, 255, 255)\",border:{borderColor:\"rgba(0, 0, 0, 0.16)\",borderStyle:\"solid\",borderWidth:1,bottom:1,isMixed:false,left:1,right:1,top:1},color:\"rgb(0, 0, 0)\"},textTransform:\"None\",unselected:{background:\"rgb(255, 255, 255)\",border:{borderColor:\"rgba(0, 0, 0, 0.08)\",borderStyle:\"solid\",borderWidth:1,bottom:1,isMixed:false,left:1,right:1,top:1},color:\"rgba(0, 0, 0, 0.48)\",text:\"Select {{variant}}\"}},height:\"100%\",id:\"CUim_MOeA\",images:{imageChange:true,imageTrigger:\"None\",offsetY:0},imageSwatches:{image:false,imageGap:8,imageHeight:40,imageHovered:{background:\"rgb(255, 255, 255)\",border:{borderColor:\"rgba(0, 0, 0, 0.16)\",borderStyle:\"solid\",borderWidth:1,bottom:1,isMixed:false,left:1,right:1,top:1}},imageOutOfStock:{background:\"rgba(255, 255, 255, 0)\",border:{borderColor:\"rgba(0, 0, 0, 0)\",borderStyle:\"solid\",borderWidth:1,bottom:1,isMixed:false,left:1,right:1,top:1},opacity:.5,strike:{color:\"rgba(0, 0, 0, 0.16)\",direction:\"diagonal-down\",line:false}},imagePadding:\"2px\",imageRadius:\"50%\",imageSelected:{background:\"rgb(255, 255, 255)\",border:{borderColor:\"rgb(0, 0, 0)\",borderStyle:\"solid\",borderWidth:1,bottom:1,isMixed:false,left:1,right:1,top:1}},imageStyles:\"inherit\",imageUnselected:{background:\"rgb(255, 255, 255)\",border:{borderColor:\"rgb(255, 255, 255)\",borderStyle:\"solid\",borderWidth:1,bottom:1,isMixed:false,left:1,right:1,top:1}},imageWidth:40},imageTitles:[\"a\"],layoutId:\"CUim_MOeA\",selectedConfigs:{color:\"rgb(255, 255, 255)\",emptyText:\"Select {{Option Value}}\",emptyVisible:true,font:{},gap:8,textTransform:\"None\",visible:false},shopifyProductID:USer7orzc,style:\"Buttons\",swatches:{colorEnabled:true,gap:5,height:35,hovered:{background:\"rgba(255, 255, 255, 0.2)\",border:{borderColor:\"rgba(255, 255, 255, 0.1)\",borderStyle:\"solid\",borderWidth:0,bottom:0,isMixed:false,left:0,right:0,top:0}},outOfStock:{background:\"rgba(255, 255, 255, 0)\",border:{borderColor:\"rgba(0, 0, 0, 0)\",borderStyle:\"solid\",borderWidth:0,bottom:0,isMixed:false,left:0,right:0,top:0},opacity:.5,strike:{color:\"rgba(0, 0, 0, 0.16)\",direction:\"diagonal-down\",line:false}},padding:\"2px\",radius:\"50%\",selected:{background:\"rgb(255, 255, 255)\",border:{borderColor:\"rgb(255, 255, 255)\",borderStyle:\"solid\",borderWidth:0,bottom:0,isMixed:false,left:0,right:0,top:0}},unselected:{background:\"rgba(0, 0, 0, 0)\",border:{borderColor:\"rgb(255, 255, 255)\",borderStyle:\"solid\",borderWidth:0,bottom:0,isMixed:false,left:0,right:0,top:0}},width:35},swatchImages:[{id:\"xeNSEdR8N\",name:\"a\",url:\"\"}],titleConfigs:{color:\"rgb(255, 255, 255)\",display:\"{{Option}}\",font:{fontFamily:'\"Inter\", \"Inter Placeholder\", sans-serif',fontSize:\"16px\",fontStyle:\"normal\",fontWeight:500,letterSpacing:\"-0.02em\",lineHeight:\"1em\"},gap:8,textTransform:\"None\",visible:false},variantImageIds:\"\",variantImages:{image:true,imageGap:8,imageHeight:40,imageHovered:{background:\"rgb(255, 255, 255)\",border:{borderColor:\"rgba(0, 0, 0, 0.16)\",borderStyle:\"solid\",borderWidth:1,bottom:1,isMixed:false,left:1,right:1,top:1}},imageOutOfStock:{background:\"rgba(255, 255, 255, 0)\",border:{borderColor:\"rgba(0, 0, 0, 0)\",borderStyle:\"solid\",borderWidth:1,bottom:1,isMixed:false,left:1,right:1,top:1},opacity:.5,strike:{color:\"rgba(0, 0, 0, 0.16)\",direction:\"diagonal-down\",line:false}},imagePadding:\"2px\",imageRadius:\"50%\",imageSelected:{background:\"rgb(255, 255, 255)\",border:{borderColor:\"rgb(0, 0, 0)\",borderStyle:\"solid\",borderWidth:1,bottom:1,isMixed:false,left:1,right:1,top:1}},imageStyles:\"inherit\",imageUnselected:{background:\"rgb(255, 255, 255)\",border:{borderColor:\"rgb(255, 255, 255)\",borderStyle:\"solid\",borderWidth:1,bottom:1,isMixed:false,left:1,right:1,top:1}},imageWidth:40},variantImageTitles:[],variants:LEanJJh19,width:\"100%\"})})}),visible12!==false&&/*#__PURE__*/_jsx(Overlay,{blockDocumentScrolling:false,dismissWithEsc:false,children:overlay1=>/*#__PURE__*/_jsx(Overlay,{dismissWithEsc:true,children:overlay=>/*#__PURE__*/_jsx(_Fragment,{children:/*#__PURE__*/_jsxs(motion.div,{className:\"framer-c507xb\",\"data-framer-name\":\"Size Guide\",id:\"c507xb\",onMouseEnter:onMouseEnter13elrgn({overlay:overlay1}),onTap:onTapko9la1({overlay}),ref:ref2,whileHover:animation,children:[/*#__PURE__*/_jsx(Expand,{animated:false,className:\"framer-1hqefds\",DTFJRR839:true,layoutId:\"OsNkxQ06U\",pJdIdADIa:true,XI2ObiqYx:true}),/*#__PURE__*/_jsx(AnimatePresence,{children:overlay.visible&&/*#__PURE__*/_jsx(_Fragment,{children:/*#__PURE__*/ReactDOM.createPortal(/*#__PURE__*/_jsx(InjectSelectionStyle,{triggerId:\"c507xb\",children:/*#__PURE__*/_jsxs(ResetOuterLinkContext,{children:[/*#__PURE__*/_jsx(motion.div,{animate:{opacity:1,transition:{delay:0,duration:0,ease:[.5,0,.88,.77],type:\"tween\"}},className:cx(scopingClassNames,\"framer-1aqg9dy\"),\"data-framer-portal-id\":\"c507xb\",exit:{opacity:0,transition:{delay:0,duration:0,ease:[.12,.23,.5,1],type:\"tween\"}},initial:{opacity:0},onTap:()=>overlay.hide()},\"VsCblHA4G\"),/*#__PURE__*/_jsx(Image1,{animate:animation2,background:{alt:\"\",fit:\"fill\",pixelHeight:712,pixelWidth:1022,sizes:\"min(66.6667vw, 800px)\",...toResponsiveImage(dFlzxJs1r)},className:cx(scopingClassNames,\"framer-1sgn1gv\"),\"data-framer-portal-id\":\"c507xb\",exit:animation1,initial:animation3,transformTemplate:transformTemplate1,children:/*#__PURE__*/_jsx(motion.div,{className:\"framer-10qcobp\",onTap:onTap1q29jei({overlay}),children:/*#__PURE__*/_jsx(Cross,{animated:false,className:\"framer-1qi9o77\",DTFJRR839:true,layoutId:\"nnwSRqLES\",pJdIdADIa:true,XI2ObiqYx:true})})}),/*#__PURE__*/_jsx(motion.div,{animate:animation5,className:cx(scopingClassNames,\"framer-t3azoo\"),\"data-framer-portal-id\":\"c507xb\",exit:animation4,initial:animation6,onTap:onTap1q29jei({overlay})})]})}),getContainer())})}),/*#__PURE__*/_jsx(AnimatePresence,{children:overlay1.visible&&/*#__PURE__*/_jsx(Floating,{alignment:\"center\",anchorRef:ref2,className:cx(scopingClassNames),collisionDetection:true,collisionDetectionPadding:20,\"data-framer-portal-id\":\"c507xb\",offsetX:0,offsetY:-7,onDismiss:overlay1.hide,placement:\"top\",safeArea:true,zIndex:11,children:/*#__PURE__*/_jsx(motion.div,{animate:animation5,className:\"framer-dbgbki\",exit:animation4,initial:animation6,ref:ref3,role:\"dialog\",children:/*#__PURE__*/_jsx(RichText,{__fromCanvasComponent:true,children:/*#__PURE__*/_jsx(React.Fragment,{children:/*#__PURE__*/_jsx(\"p\",{dir:\"auto\",style:{\"--font-selector\":\"SW50ZXItVmFyaWFibGVWRj1JbTl3YzNvaUlERTJMQ0FpZDJkb2RDSWdORFV3\",\"--framer-font-family\":'\"Inter Variable\", \"Inter Variable Placeholder\", sans-serif',\"--framer-font-size\":\"12px\",\"--framer-font-variation-axes\":'\"opsz\" 16, \"wght\" 450',\"--framer-letter-spacing\":\"0px\",\"--framer-line-height\":\"1.5em\",\"--framer-text-alignment\":\"left\",\"--framer-text-color\":\"rgb(255, 255, 255)\"},children:\"Size guide\"})}),className:\"framer-bc24d5\",fonts:[\"Inter-Variable\"],verticalAlignment:\"top\",withExternalLayout:true})})})})]})})})})]}),/*#__PURE__*/_jsx(Overlay,{dismissWithEsc:true,children:overlay2=>/*#__PURE__*/_jsx(_Fragment,{children:/*#__PURE__*/_jsx(PropertyOverrides,{breakpoint:baseVariant,overrides:{J1TsDX61j:{width:`calc(min(${componentViewport?.width||\"100vw\"}, 1200px) - 40px)`,y:(componentViewport?.y||0)+0+0+0+0+0+0+0+435+0+435.5+0+105},Q1Q0VtM93:{width:`min(max((min(${componentViewport?.width||\"100vw\"} - 40px, 1200px) - 40px) / 2, 1px), 420px)`}},children:/*#__PURE__*/_jsx(ComponentViewportProvider,{height:40,width:`min(max((min(${componentViewport?.width||\"100vw\"} - 40px, 1200px) - 50px) / 2, 1px), 420px)`,y:(componentViewport?.y||0)+0+0+0+0+0+100+0+0+450.5+0+105,children:/*#__PURE__*/_jsxs(Container,{className:\"framer-1n7u8mk-container\",id:\"1n7u8mk\",nodeId:\"L9pfqiysM\",scopeId:\"XGqHdMUqV\",children:[/*#__PURE__*/_jsx(FCPurchaseButton,{height:\"100%\",id:\"L9pfqiysM\",layoutId:\"L9pfqiysM\",Nt_kadLvR:USer7orzc,style:{height:\"100%\",width:\"100%\"},vjHrn9new:vjHrn9newko9la1({overlay:overlay2}),width:\"100%\"}),/*#__PURE__*/_jsx(AnimatePresence,{children:overlay2.visible&&/*#__PURE__*/_jsx(_Fragment,{children:/*#__PURE__*/ReactDOM.createPortal(/*#__PURE__*/_jsx(InjectSelectionStyle,{triggerId:\"1n7u8mk\",children:/*#__PURE__*/_jsxs(ResetOuterLinkContext,{children:[/*#__PURE__*/_jsx(motion.div,{animate:{opacity:1,transition:{delay:0,duration:0,ease:[0,0,1,1],type:\"tween\"}},className:cx(scopingClassNames,\"framer-5drpgg\"),\"data-framer-portal-id\":\"1n7u8mk\",exit:{opacity:0,transition:{delay:0,duration:.3,ease:[.12,.23,.5,1],type:\"tween\"}},initial:{opacity:0},onTap:()=>overlay2.hide()},\"WqnGrun29\"),/*#__PURE__*/_jsx(ComponentViewportProvider,{width:\"100vw\",children:/*#__PURE__*/_jsx(Container,{className:cx(scopingClassNames,\"framer-h45lq3-container\"),\"data-framer-portal-id\":\"1n7u8mk\",inComponentSlot:true,nodeId:\"jSc_A2X8E\",rendersWithMotion:true,scopeId:\"XGqHdMUqV\",children:/*#__PURE__*/_jsx(PropertyOverrides,{breakpoint:baseVariant,overrides:{J1TsDX61j:{variant:matchVariant(\"RuTjtVCRp\")}},children:/*#__PURE__*/_jsx(CartOverlay,{GuSQrhKyv:GuSQrhKyv1q29jei({overlay:overlay2}),height:\"100%\",id:\"jSc_A2X8E\",layoutId:\"jSc_A2X8E\",style:{height:\"100%\",width:\"100%\"},width:\"100%\"})})})})]})}),getContainer())})})]})})})})})]}),/*#__PURE__*/_jsxs(\"div\",{className:\"framer-qiii4v\",\"data-framer-name\":\"Details\",children:[/*#__PURE__*/_jsx(\"div\",{className:\"framer-qjteis\"}),visible13!==false&&/*#__PURE__*/_jsx(PropertyOverrides,{breakpoint:baseVariant,overrides:{J1TsDX61j:{width:`calc(min(${componentViewport?.width||\"100vw\"}, 1200px) - 40px)`,y:(componentViewport?.y||0)+0+0+0+0+0+0+0+435+0+720.5+10+1},Q1Q0VtM93:{width:`min(max((min(${componentViewport?.width||\"100vw\"} - 40px, 1200px) - 40px) / 2, 1px), 420px)`}},children:/*#__PURE__*/_jsx(ComponentViewportProvider,{height:168,width:`min(max((min(${componentViewport?.width||\"100vw\"} - 40px, 1200px) - 50px) / 2, 1px), 420px)`,y:(componentViewport?.y||0)+0+0+0+0+0+100+0+0+740.5+10+1,children:/*#__PURE__*/_jsx(Container,{className:\"framer-1pih8kt-container\",\"data-framer-name\":\"Details\",name:\"Details\",nodeId:\"dIILnR7BU\",scopeId:\"XGqHdMUqV\",children:/*#__PURE__*/_jsx(FAQSupply,{cyaBDXQCV:\"\",fjQDDW3fH:cE06FoYnT,height:\"100%\",id:\"dIILnR7BU\",ks8LX8u60:buV12ljyw,layoutId:\"dIILnR7BU\",name:\"Details\",Nll6pCien:buV12ljyw,rjfxqlNDV:AId32iDwH,style:{width:\"100%\"},variant:matchVariant(\"p9ishk1Jh\"),vd59XDbg4:\"Details\",VEAZydqcG:true,width:\"100%\",ZO6oYxeAJ:yitoGO6T3})})})}),/*#__PURE__*/_jsx(PropertyOverrides,{breakpoint:baseVariant,overrides:{J1TsDX61j:{width:`calc(min(${componentViewport?.width||\"100vw\"}, 1200px) - 40px)`,y:(componentViewport?.y||0)+0+0+0+0+0+0+0+435+0+720.5+10+1},Q1Q0VtM93:{width:`min(max((min(${componentViewport?.width||\"100vw\"} - 40px, 1200px) - 40px) / 2, 1px), 420px)`}},children:/*#__PURE__*/_jsx(ComponentViewportProvider,{height:168,width:`min(max((min(${componentViewport?.width||\"100vw\"} - 40px, 1200px) - 50px) / 2, 1px), 420px)`,y:(componentViewport?.y||0)+0+0+0+0+0+100+0+0+740.5+10+1,children:/*#__PURE__*/_jsx(Container,{className:\"framer-11rymki-container\",\"data-framer-name\":\"Return Policy\",name:\"Return Policy\",nodeId:\"KmZcO2m7p\",scopeId:\"XGqHdMUqV\",children:/*#__PURE__*/_jsx(FAQSupply,{cyaBDXQCV:\"If you are located in the EU or UK, you have the right to return your order within 14 calendar days after delivery for any reason. At this time, we can’t accept returns from the USA due to sustainability reasons.\",fjQDDW3fH:\"Detail 3\",height:\"100%\",id:\"KmZcO2m7p\",ks8LX8u60:\"\",layoutId:\"KmZcO2m7p\",name:\"Return Policy\",Nll6pCien:\"Detail 1\",rjfxqlNDV:\"Detail 4\",style:{width:\"100%\"},variant:matchVariant(\"p9ishk1Jh\"),vd59XDbg4:\"Return Policy\",VEAZydqcG:true,width:\"100%\",ZO6oYxeAJ:\"Detail 2\"})})})}),/*#__PURE__*/_jsx(PropertyOverrides,{breakpoint:baseVariant,overrides:{J1TsDX61j:{width:`calc(min(${componentViewport?.width||\"100vw\"}, 1200px) - 40px)`,y:(componentViewport?.y||0)+0+0+0+0+0+0+0+435+0+720.5+10+169},Q1Q0VtM93:{width:`min(max((min(${componentViewport?.width||\"100vw\"} - 40px, 1200px) - 40px) / 2, 1px), 420px)`}},children:/*#__PURE__*/_jsx(ComponentViewportProvider,{height:168,width:`min(max((min(${componentViewport?.width||\"100vw\"} - 40px, 1200px) - 50px) / 2, 1px), 420px)`,y:(componentViewport?.y||0)+0+0+0+0+0+100+0+0+740.5+10+169,children:/*#__PURE__*/_jsx(Container,{className:\"framer-j1iuek-container\",\"data-framer-name\":\"Shippinh\",name:\"Shippinh\",nodeId:\"nV5xyM3aN\",scopeId:\"XGqHdMUqV\",children:/*#__PURE__*/_jsx(FAQSupply,{cyaBDXQCV:\"All orders are fulfilled and shipped by Monday Мerch from the Netherlands. Shipping costs are calculated at checkout based on your location.\",fjQDDW3fH:\"Detail 3\",height:\"100%\",id:\"nV5xyM3aN\",ks8LX8u60:\"\",layoutId:\"nV5xyM3aN\",name:\"Shippinh\",Nll6pCien:\"Detail 1\",rjfxqlNDV:\"Detail 4\",style:{width:\"100%\"},variant:matchVariant(\"p9ishk1Jh\"),vd59XDbg4:\"Shipping & fullfilment\",VEAZydqcG:true,width:\"100%\",ZO6oYxeAJ:\"Detail 2\"})})})})]})]})]}),/*#__PURE__*/_jsx(\"div\",{className:\"framer-1r4rpmm\",\"data-framer-name\":\"SCROLL\",id:elementId1,ref:dynamicRef(elementId1)})]}),/*#__PURE__*/_jsxs(\"div\",{className:\"framer-1xfu5fh\",\"data-framer-name\":\"More\",children:[/*#__PURE__*/_jsx(RichText,{__fromCanvasComponent:true,children:/*#__PURE__*/_jsx(React.Fragment,{children:/*#__PURE__*/_jsx(\"h6\",{className:\"framer-styles-preset-ojsfn5\",\"data-styles-preset\":\"VQBQVu8qk\",dir:\"auto\",style:{\"--framer-text-alignment\":\"left\"},children:\"You might also like\"})}),className:\"framer-xktaqy\",\"data-framer-name\":\"Title\",fonts:[\"Inter\"],verticalAlignment:\"top\",withExternalLayout:true}),/*#__PURE__*/_jsx(\"div\",{className:\"framer-1ocb1om\",children:/*#__PURE__*/_jsx(ChildrenCanSuspend,{children:/*#__PURE__*/_jsx(PropertyOverrides,{breakpoint:baseVariant,overrides:{J1TsDX61j:{query:query1(HR_D2v7hb)}},children:/*#__PURE__*/_jsx(QueryData,{query:query(HR_D2v7hb),children:(collection,paginationInfo,loadMore)=>{return /*#__PURE__*/_jsx(_Fragment,{children:collection?.map(({a8ZAaoovg:a8ZAaoovgw5EgVjWnv,AoY6MzJG2:AoY6MzJG2w5EgVjWnv,BIDaTdinF:BIDaTdinFw5EgVjWnv,HR_D2v7hb:HR_D2v7hbw5EgVjWnv,id:idw5EgVjWnv,JTxJg0pZb:JTxJg0pZbw5EgVjWnv,KdPKL5qei:KdPKL5qeiw5EgVjWnv,USer7orzc:USer7orzcw5EgVjWnv},index)=>{HR_D2v7hbw5EgVjWnv??=\"\";a8ZAaoovgw5EgVjWnv??=\"\";BIDaTdinFw5EgVjWnv??=\"\";USer7orzcw5EgVjWnv??=\"\";AoY6MzJG2w5EgVjWnv??=\"\";return /*#__PURE__*/_jsx(LayoutGroup,{id:`w5EgVjWnv-${idw5EgVjWnv}`,children:/*#__PURE__*/_jsx(PathVariablesContext.Provider,{value:{HR_D2v7hb:HR_D2v7hbw5EgVjWnv},children:/*#__PURE__*/_jsx(ResolveLinks,{links:[{href:{pathVariables:{HR_D2v7hb:HR_D2v7hbw5EgVjWnv},webPageId:\"XGqHdMUqV\"},implicitPathVariables:undefined},{href:{pathVariables:{HR_D2v7hb:HR_D2v7hbw5EgVjWnv},webPageId:\"XGqHdMUqV\"},implicitPathVariables:undefined},{href:{pathVariables:{HR_D2v7hb:HR_D2v7hbw5EgVjWnv},webPageId:\"XGqHdMUqV\"},implicitPathVariables:undefined}],children:resolvedLinks=>/*#__PURE__*/_jsx(PropertyOverrides,{breakpoint:baseVariant,overrides:{J1TsDX61j:{height:347,width:`calc(min(${componentViewport?.width||\"100vw\"}, 1200px) - 40px)`,y:(componentViewport?.y||0)+0+0+0+1642.5+20+44.3+0+0}},children:/*#__PURE__*/_jsx(ComponentViewportProvider,{height:373,width:`max(min(${componentViewport?.width||\"100vw\"} - 40px, 1200px), 1px)`,y:(componentViewport?.y||0)+0+0+0+1237.5+20+44.3+0,children:/*#__PURE__*/_jsx(Container,{className:\"framer-gmkp5p-container\",nodeId:\"urM1gX0CT\",scopeId:\"XGqHdMUqV\",children:/*#__PURE__*/_jsx(PropertyOverrides,{breakpoint:baseVariant,overrides:{J1TsDX61j:{oYv8ppbKX:resolvedLinks[2]},Q1Q0VtM93:{oYv8ppbKX:resolvedLinks[1]}},children:/*#__PURE__*/_jsx(Card,{c6lSflApp:a8ZAaoovgw5EgVjWnv,height:\"100%\",hy9nT4IgJ:AoY6MzJG2w5EgVjWnv,id:\"urM1gX0CT\",K3VDJ7McJ:false,layoutId:\"urM1gX0CT\",LQjLsXvXk:USer7orzcw5EgVjWnv,oYv8ppbKX:resolvedLinks[0],qj9dFm58d:JTxJg0pZbw5EgVjWnv,rm7BQEm01:false,style:{height:\"100%\",width:\"100%\"},variant:matchVariant(\"t8MI3vX_J\"),W6N3t8onY:BIDaTdinFw5EgVjWnv,width:\"100%\",xjFRNW5Ck:toResponsiveImage(KdPKL5qeiw5EgVjWnv)})})})})})})})},idw5EgVjWnv);})});}})})})})]})]})}),/*#__PURE__*/_jsx(\"div\",{id:\"overlay\"})]})});});const css=[\".framer-UVlhh.framer-1i1h8to, .framer-UVlhh .framer-1i1h8to { display: block; }\",\".framer-UVlhh.framer-1ex7wa3 { align-content: center; align-items: center; background-color: var(--token-958e2cd1-b113-4aa3-9235-7a2b959c8feb, #000000); display: flex; flex-direction: column; flex-wrap: nowrap; gap: 0px; height: min-content; justify-content: flex-start; overflow: visible; padding: 0px; position: relative; width: 1200px; }\",\".framer-UVlhh .framer-on3i6k { align-content: center; align-items: center; display: flex; flex: none; flex-direction: column; flex-wrap: nowrap; gap: 50px; height: min-content; justify-content: center; overflow: visible; padding: 0px 20px 50px 20px; position: relative; width: 100%; }\",\".framer-UVlhh .framer-1m2xjnc { align-content: flex-start; align-items: flex-start; display: flex; flex: none; flex-direction: row; flex-wrap: nowrap; gap: 50px; height: min-content; justify-content: flex-start; max-width: 1200px; overflow: visible; padding: 0px; position: relative; width: 100%; }\",\".framer-UVlhh .framer-zhxwen { align-content: center; align-items: center; display: flex; flex: 1 0 0px; flex-direction: column; flex-wrap: nowrap; gap: 20px; height: min-content; justify-content: flex-start; overflow: hidden; padding: 20px 0px 0px 0px; position: relative; width: 1px; }\",\".framer-UVlhh .framer-1v9cyyv, .framer-UVlhh .framer-m9y37o, .framer-UVlhh .framer-nrlqj4, .framer-UVlhh .framer-vhnwp9 { --border-bottom-width: 1px; --border-color: rgba(255, 255, 255, 0.1); --border-left-width: 1px; --border-right-width: 1px; --border-style: solid; --border-top-width: 1px; --corner-shape-fallback: 0.752; aspect-ratio: 1 / 1; border-bottom-left-radius: calc(44px*var(--one-if-corner-shape-supported,var(--corner-shape-fallback,1))); border-bottom-right-radius: calc(44px*var(--one-if-corner-shape-supported,var(--corner-shape-fallback,1))); border-top-left-radius: calc(44px*var(--one-if-corner-shape-supported,var(--corner-shape-fallback,1))); border-top-right-radius: calc(44px*var(--one-if-corner-shape-supported,var(--corner-shape-fallback,1))); corner-shape: superellipse(1.5); cursor: zoom-in; flex: none; height: auto; overflow: var(--overflow-clip-fallback, clip); position: relative; width: 100%; will-change: var(--framer-will-change-override, transform); }\",\".framer-UVlhh .framer-152stk6 { --border-bottom-width: 1px; --border-color: rgba(255, 255, 255, 0.1); --border-left-width: 1px; --border-right-width: 1px; --border-style: solid; --border-top-width: 1px; --corner-shape-fallback: 0.752; aspect-ratio: 0.8414634146341463 / 1; border-bottom-left-radius: calc(44px*var(--one-if-corner-shape-supported,var(--corner-shape-fallback,1))); border-bottom-right-radius: calc(44px*var(--one-if-corner-shape-supported,var(--corner-shape-fallback,1))); border-top-left-radius: calc(44px*var(--one-if-corner-shape-supported,var(--corner-shape-fallback,1))); border-top-right-radius: calc(44px*var(--one-if-corner-shape-supported,var(--corner-shape-fallback,1))); corner-shape: superellipse(1.5); cursor: zoom-in; flex: none; height: auto; overflow: var(--overflow-clip-fallback, clip); position: relative; width: 100%; will-change: var(--framer-will-change-override, transform); }\",\".framer-UVlhh .framer-ae6uci, .framer-UVlhh .framer-1n4r683, .framer-UVlhh .framer-1q38pzk, .framer-UVlhh .framer-qgz386 { --border-bottom-width: 1px; --border-color: rgba(255, 255, 255, 0.1); --border-left-width: 1px; --border-right-width: 1px; --border-style: solid; --border-top-width: 1px; --corner-shape-fallback: 0.752; aspect-ratio: 0.84 / 1; border-bottom-left-radius: calc(44px*var(--one-if-corner-shape-supported,var(--corner-shape-fallback,1))); border-bottom-right-radius: calc(44px*var(--one-if-corner-shape-supported,var(--corner-shape-fallback,1))); border-top-left-radius: calc(44px*var(--one-if-corner-shape-supported,var(--corner-shape-fallback,1))); border-top-right-radius: calc(44px*var(--one-if-corner-shape-supported,var(--corner-shape-fallback,1))); corner-shape: superellipse(1.5); cursor: zoom-in; flex: none; height: auto; overflow: var(--overflow-clip-fallback, clip); position: relative; width: 100%; will-change: var(--framer-will-change-override, transform); }\",\".framer-UVlhh .framer-gmkvdx { align-content: flex-start; align-items: flex-start; display: flex; flex: 1 0 0px; flex-direction: column; flex-wrap: nowrap; gap: 35px; height: min-content; justify-content: center; max-width: 420px; overflow: visible; padding: 100px 0px 0px 0px; position: sticky; top: 60px; width: 1px; z-index: 1; }\",\".framer-UVlhh .framer-1noixyu { align-content: center; align-items: center; display: flex; flex: none; flex-direction: row; flex-wrap: nowrap; gap: 10px; height: min-content; justify-content: center; overflow: hidden; padding: 0px; position: relative; width: 100%; }\",\".framer-UVlhh .framer-g0j33a-container { align-self: stretch; flex: 1 0 0px; height: auto; position: relative; width: 1px; }\",\".framer-UVlhh .framer-1u61c0v, .framer-UVlhh .framer-w5rafr, .framer-UVlhh .framer-1bq2h6x, .framer-UVlhh .framer-wiwb2t, .framer-UVlhh .framer-1j9zxiw { height: 233px; position: relative; width: 224px; }\",\".framer-UVlhh .framer-1m0wiy1-container { aspect-ratio: 0.975 / 1; flex: 1 0 0px; height: auto; position: relative; width: 1px; z-index: 1; }\",\".framer-UVlhh .framer-s69c21 { align-content: flex-start; align-items: flex-start; display: flex; flex: none; flex-direction: column; flex-wrap: nowrap; gap: 40px; height: min-content; justify-content: center; overflow: hidden; padding: 0px; position: sticky; top: 136px; width: 100%; z-index: 1; }\",\".framer-UVlhh .framer-u1t0x4 { align-content: flex-start; align-items: flex-start; display: flex; flex: none; flex-direction: column; flex-wrap: nowrap; gap: 18px; height: min-content; justify-content: center; overflow: visible; padding: 0px; position: relative; width: 100%; }\",\".framer-UVlhh .framer-132ajb { align-content: flex-start; align-items: flex-start; display: flex; flex: none; flex-direction: column; flex-wrap: nowrap; gap: 25px; height: min-content; justify-content: center; overflow: visible; padding: 0px; position: relative; width: 100%; }\",\".framer-UVlhh .framer-1wosaee { align-content: flex-start; align-items: flex-start; display: flex; flex: none; flex-direction: column; flex-wrap: nowrap; gap: 25px; height: min-content; justify-content: flex-start; overflow: visible; padding: 0px; position: relative; width: 100%; }\",\".framer-UVlhh .framer-1jwp73 { align-content: flex-start; align-items: flex-start; display: flex; flex: none; flex-direction: column; flex-wrap: nowrap; gap: 10px; height: min-content; justify-content: center; overflow: var(--overflow-clip-fallback, clip); padding: 0px; position: relative; width: 100%; }\",\".framer-UVlhh .framer-1mogpco { --framer-text-wrap-override: balance; flex: none; height: auto; max-width: 600px; overflow: visible; position: relative; width: 100%; }\",\".framer-UVlhh .framer-1xs41xb { --framer-link-text-color: #0099ff; --framer-link-text-decoration: underline; --framer-text-wrap-override: balance; flex: none; height: auto; position: relative; width: 100%; }\",\".framer-UVlhh .framer-1dzop0o { align-content: center; align-items: center; display: flex; flex: none; flex-direction: row; flex-wrap: nowrap; gap: 10px; height: min-content; justify-content: flex-start; overflow: visible; padding: 0px; position: relative; width: 100%; }\",\".framer-UVlhh .framer-kagddr { align-content: center; align-items: center; display: flex; flex: none; flex-direction: row; flex-wrap: nowrap; gap: 5px; height: min-content; justify-content: center; overflow: var(--overflow-clip-fallback, clip); padding: 0px; position: relative; width: min-content; }\",\".framer-UVlhh .framer-k1k55a-container { flex: none; height: auto; min-width: 29px; position: relative; width: auto; }\",\".framer-UVlhh .framer-101gw28-container { flex: none; height: auto; opacity: 0.3; position: relative; width: auto; }\",\".framer-UVlhh .framer-x0od9x-container { flex: none; height: auto; position: relative; width: auto; }\",\".framer-UVlhh .framer-1jvkjb5 { align-content: center; align-items: center; display: flex; flex: none; flex-direction: column; flex-wrap: nowrap; gap: 10px; height: min-content; justify-content: center; overflow: hidden; padding: 0px; position: relative; width: 100%; }\",\".framer-UVlhh .framer-19z034m { align-content: flex-start; align-items: flex-start; display: flex; flex: none; flex-direction: row; flex-wrap: nowrap; gap: 0px; height: min-content; justify-content: center; overflow: visible; padding: 0px; position: relative; width: 100%; }\",\".framer-UVlhh .framer-vtkle9-container { flex: 1 0 0px; height: auto; position: relative; width: 1px; }\",\".framer-UVlhh .framer-c507xb { align-content: center; align-items: center; cursor: pointer; display: flex; flex: none; flex-direction: row; flex-wrap: nowrap; gap: 10px; height: min-content; justify-content: center; opacity: 0.6; overflow: hidden; padding: 0px; position: absolute; right: 0px; top: 8px; width: min-content; will-change: var(--framer-will-change-effect-override, transform); z-index: 1; }\",\".framer-UVlhh .framer-1hqefds { --17kkcf8: rgba(0, 0, 0, 0); --1iwhep7: 2; --1l3yetw: var(--token-26e3cb56-8447-4a64-9b7d-37f16a9909d4); flex: none; height: auto; position: relative; width: 18px; }\",\".framer-UVlhh.framer-1aqg9dy { inset: 0px; position: fixed; user-select: none; z-index: 10; }\",\".framer-UVlhh.framer-1sgn1gv { aspect-ratio: 1.4349775784753362 / 1; border-bottom-left-radius: 13px; border-bottom-right-radius: 13px; border-top-left-radius: 13px; border-top-right-radius: 13px; flex: none; height: auto; left: 50%; max-width: 800px; position: fixed; top: 50%; transform: translate(-50%, -50%); width: 67%; will-change: var(--framer-will-change-effect-override, transform); z-index: 10; }\",\".framer-UVlhh .framer-10qcobp { align-content: center; align-items: center; cursor: pointer; display: flex; flex: none; flex-direction: row; flex-wrap: nowrap; gap: 20px; height: min-content; justify-content: center; overflow: hidden; padding: 0px; position: absolute; right: 16px; top: 16px; width: min-content; }\",\".framer-UVlhh .framer-1qi9o77 { --17kkcf8: rgba(0, 0, 0, 0); --1iwhep7: 2; --1l3yetw: var(--token-26e3cb56-8447-4a64-9b7d-37f16a9909d4); flex: none; height: auto; position: relative; width: 20px; }\",\".framer-UVlhh.framer-t3azoo { -webkit-backdrop-filter: blur(15px); backdrop-filter: blur(15px); background-color: rgba(0, 0, 0, 0.8); bottom: 0px; cursor: pointer; flex: none; left: 0px; overflow: visible; position: fixed; right: 0px; top: 0px; will-change: var(--framer-will-change-effect-override, transform); z-index: 9; }\",\".framer-UVlhh .framer-dbgbki { align-content: center; align-items: center; border-bottom-left-radius: 10px; border-bottom-right-radius: 10px; border-top-left-radius: 10px; border-top-right-radius: 10px; box-shadow: 0px 10px 20px 0px rgba(0, 0, 0, 0.05); display: flex; flex-direction: row; flex-wrap: nowrap; gap: 10px; height: min-content; justify-content: center; overflow: visible; padding: 0px; position: relative; width: min-content; will-change: var(--framer-will-change-effect-override, transform); }\",\".framer-UVlhh .framer-bc24d5 { --framer-link-text-color: #0099ff; --framer-link-text-decoration: underline; flex: none; height: auto; position: relative; white-space: pre; width: auto; }\",\".framer-UVlhh .framer-1n7u8mk-container { flex: none; height: 40px; position: relative; width: 100%; }\",\".framer-UVlhh.framer-5drpgg { background-color: rgba(0, 0, 0, 0.8); inset: 0px; position: fixed; user-select: none; z-index: 10; }\",\".framer-UVlhh.framer-h45lq3-container { bottom: 0px; flex: none; left: 0px; position: fixed; right: 0px; top: 0px; z-index: 10; }\",\".framer-UVlhh .framer-qiii4v { align-content: center; align-items: center; display: flex; flex: none; flex-direction: column; flex-wrap: nowrap; gap: 0px; height: min-content; justify-content: center; overflow: hidden; padding: 10px 0px 0px 0px; position: relative; width: 100%; }\",\".framer-UVlhh .framer-qjteis { background-color: var(--token-c534b380-e14e-4ddc-9802-ad88d1f94f8e, rgba(255, 255, 255, 0.1)); flex: none; height: 1px; overflow: hidden; position: relative; width: 100%; }\",\".framer-UVlhh .framer-1pih8kt-container, .framer-UVlhh .framer-11rymki-container, .framer-UVlhh .framer-j1iuek-container { flex: none; height: auto; position: relative; width: 100%; }\",\".framer-UVlhh .framer-1r4rpmm { flex: none; height: 17px; left: calc(50.00000000000002% - 61px / 2); overflow: var(--overflow-clip-fallback, clip); pointer-events: none; position: absolute; top: -105px; width: 61px; z-index: 1; }\",\".framer-UVlhh .framer-1xfu5fh { align-content: flex-start; align-items: flex-start; display: flex; flex: none; flex-direction: column; flex-wrap: nowrap; gap: 20px; height: min-content; justify-content: flex-start; max-width: 1200px; overflow: visible; padding: 20px 0px 0px 0px; position: relative; width: 100%; }\",\".framer-UVlhh .framer-xktaqy { --framer-text-wrap-override: balance; flex: none; height: auto; max-width: 600px; position: relative; width: 100%; }\",\".framer-UVlhh .framer-1ocb1om { align-content: flex-start; align-items: flex-start; aspect-ratio: 3.1099195710455763 / 1; display: flex; flex: none; flex-direction: row; flex-wrap: nowrap; gap: 20px; height: auto; justify-content: flex-start; padding: 0px; position: relative; width: 100%; }\",\".framer-UVlhh .framer-gmkp5p-container { flex: 1 0 0px; height: 100%; position: relative; width: 1px; }\",...sharedStyle.css,...sharedStyle1.css,...sharedStyle2.css,'.framer-UVlhh[data-border=\"true\"]::after, .framer-UVlhh [data-border=\"true\"]::after { content: \"\"; border-width: var(--border-top-width, 0) var(--border-right-width, 0) var(--border-bottom-width, 0) var(--border-left-width, 0); border-color: var(--border-color, none); border-style: var(--border-style, none); width: 100%; height: 100%; position: absolute; box-sizing: border-box; left: 0; top: 0; border-radius: inherit; corner-shape: inherit; pointer-events: none; }',\"@media (min-width: 810px) and (max-width: 1199.98px) { .framer-UVlhh.framer-1ex7wa3 { width: 810px; } .framer-UVlhh .framer-1m2xjnc { gap: 40px; } .framer-UVlhh .framer-1v9cyyv, .framer-UVlhh .framer-m9y37o, .framer-UVlhh .framer-nrlqj4, .framer-UVlhh .framer-vhnwp9, .framer-UVlhh .framer-152stk6 { border-bottom-left-radius: calc(14px*var(--one-if-corner-shape-supported,var(--corner-shape-fallback,1))); border-bottom-right-radius: calc(14px*var(--one-if-corner-shape-supported,var(--corner-shape-fallback,1))); border-top-left-radius: calc(14px*var(--one-if-corner-shape-supported,var(--corner-shape-fallback,1))); border-top-right-radius: calc(14px*var(--one-if-corner-shape-supported,var(--corner-shape-fallback,1))); } .framer-UVlhh .framer-gmkvdx { justify-content: flex-start; }}\",\"@media (max-width: 809.98px) { .framer-UVlhh.framer-1ex7wa3 { width: 390px; } .framer-UVlhh .framer-on3i6k { padding: 0px 0px 50px 0px; } .framer-UVlhh .framer-1m2xjnc { flex-direction: column; padding: 0px 0px 90px 0px; } .framer-UVlhh .framer-gmkvdx { flex: none; justify-content: flex-start; max-width: unset; padding: 0px; top: unset; width: 100%; } .framer-UVlhh .framer-1noixyu { --border-bottom-width: 1px; --border-color: rgba(255, 255, 255, 0.1); --border-left-width: 0px; --border-right-width: 0px; --border-style: solid; --border-top-width: 0px; } .framer-UVlhh .framer-g0j33a-container { align-self: unset; aspect-ratio: 0.975 / 1; z-index: 1; } .framer-UVlhh .framer-s69c21 { align-content: center; align-items: center; gap: 35px; padding: 0px 20px 0px 20px; position: relative; top: unset; } .framer-UVlhh .framer-u1t0x4, .framer-UVlhh .framer-1wosaee { gap: 15px; } .framer-UVlhh .framer-1jwp73 { order: 0; } .framer-UVlhh .framer-1mogpco { max-width: unset; } .framer-UVlhh .framer-1dzop0o { gap: unset; justify-content: space-between; order: 1; } .framer-UVlhh .framer-1xfu5fh { padding: 20px 20px 0px 20px; } .framer-UVlhh .framer-1ocb1om { aspect-ratio: unset; flex-direction: column; height: min-content; } .framer-UVlhh .framer-gmkp5p-container { aspect-ratio: 1.0086455331412103 / 1; flex: none; height: auto; width: 100%; }}\"];/**\n * This is a generated Framer component.\n * @framerIntrinsicHeight 5798\n * @framerIntrinsicWidth 1200\n * @framerCanvasComponentVariantDetails {\"propertyName\":\"variant\",\"data\":{\"default\":{\"layout\":[\"fixed\",\"auto\"]},\"Q1Q0VtM93\":{\"layout\":[\"fixed\",\"auto\"]},\"J1TsDX61j\":{\"layout\":[\"fixed\",\"auto\"]}}}\n * @framerImmutableVariables true\n * @framerResolvesOwnDefaults true\n * @framerDisplayContentsDiv false\n * @framerAutoSizeImages true\n * @framerComponentViewportWidth true\n * @framerColorSyntax true\n * @framerAcceptsLayoutTemplate true\n * @framerScrollSections {\"EtHQc2K8Q\":{\"pattern\":\":EtHQc2K8Q\",\"name\":\"size\"},\"fTgI5Dge1\":{\"pattern\":\":fTgI5Dge1\",\"name\":\"scroll\"}}\n * @framerResponsiveScreen true\n * @framerLayoutTemplateFlowEffect true\n */const FramerXGqHdMUqV=withCSS(Component,css,\"framer-UVlhh\");export default FramerXGqHdMUqV;FramerXGqHdMUqV.displayName=\"Framer Store\";FramerXGqHdMUqV.defaultProps={height:5798,width:1200};const variationAxes=[{defaultValue:14,maxValue:32,minValue:14,name:\"Optical size\",tag:\"opsz\"},{defaultValue:400,maxValue:900,minValue:100,name:\"Weight\",tag:\"wght\"}];addFonts(FramerXGqHdMUqV,[{explicitInter:true,fonts:[{cssFamilyName:\"Inter\",source:\"framer\",style:\"normal\",uiFamilyName:\"Inter\",unicodeRange:\"U+0460-052F, U+1C80-1C88, U+20B4, U+2DE0-2DFF, U+A640-A69F, U+FE2E-FE2F\",url:\"https://xn----9sbmqji2czbya.xn--p1ai/__framerusercontent/assets/5vvr9Vy74if2I6bQbJvbw7SY1pQ.woff2\",weight:\"400\"},{cssFamilyName:\"Inter\",source:\"framer\",style:\"normal\",uiFamilyName:\"Inter\",unicodeRange:\"U+0301, U+0400-045F, U+0490-0491, U+04B0-04B1, U+2116\",url:\"https://xn----9sbmqji2czbya.xn--p1ai/__framerusercontent/assets/EOr0mi4hNtlgWNn9if640EZzXCo.woff2\",weight:\"400\"},{cssFamilyName:\"Inter\",source:\"framer\",style:\"normal\",uiFamilyName:\"Inter\",unicodeRange:\"U+1F00-1FFF\",url:\"https://xn----9sbmqji2czbya.xn--p1ai/__framerusercontent/assets/Y9k9QrlZAqio88Klkmbd8VoMQc.woff2\",weight:\"400\"},{cssFamilyName:\"Inter\",source:\"framer\",style:\"normal\",uiFamilyName:\"Inter\",unicodeRange:\"U+0370-03FF\",url:\"https://xn----9sbmqji2czbya.xn--p1ai/__framerusercontent/assets/OYrD2tBIBPvoJXiIHnLoOXnY9M.woff2\",weight:\"400\"},{cssFamilyName:\"Inter\",source:\"framer\",style:\"normal\",uiFamilyName:\"Inter\",unicodeRange:\"U+0100-024F, U+0259, U+1E00-1EFF, U+2020, U+20A0-20AB, U+20AD-20CF, U+2113, U+2C60-2C7F, U+A720-A7FF\",url:\"https://xn----9sbmqji2czbya.xn--p1ai/__framerusercontent/assets/JeYwfuaPfZHQhEG8U5gtPDZ7WQ.woff2\",weight:\"400\"},{cssFamilyName:\"Inter\",source:\"framer\",style:\"normal\",uiFamilyName:\"Inter\",unicodeRange:\"U+0000-00FF, U+0131, U+0152-0153, U+02BB-02BC, U+02C6, U+02DA, U+02DC, U+2000-206F, U+2070, U+2074-207E, U+2080-208E, U+20AC, U+2122, U+2191, U+2193, U+2212, U+2215, U+FEFF, U+FFFD\",url:\"https://xn----9sbmqji2czbya.xn--p1ai/__framerusercontent/assets/GrgcKwrN6d3Uz8EwcLHZxwEfC4.woff2\",weight:\"400\"},{cssFamilyName:\"Inter\",source:\"framer\",style:\"normal\",uiFamilyName:\"Inter\",unicodeRange:\"U+0102-0103, U+0110-0111, U+0128-0129, U+0168-0169, U+01A0-01A1, U+01AF-01B0, U+1EA0-1EF9, U+20AB\",url:\"https://xn----9sbmqji2czbya.xn--p1ai/__framerusercontent/assets/b6Y37FthZeALduNqHicBT6FutY.woff2\",weight:\"400\"},{cssFamilyName:\"Inter\",source:\"framer\",style:\"normal\",uiFamilyName:\"Inter\",unicodeRange:\"U+0460-052F, U+1C80-1C88, U+20B4, U+2DE0-2DFF, U+A640-A69F, U+FE2E-FE2F\",url:\"https://xn----9sbmqji2czbya.xn--p1ai/__framerusercontent/assets/5A3Ce6C9YYmCjpQx9M4inSaKU.woff2\",weight:\"500\"},{cssFamilyName:\"Inter\",source:\"framer\",style:\"normal\",uiFamilyName:\"Inter\",unicodeRange:\"U+0301, U+0400-045F, U+0490-0491, U+04B0-04B1, U+2116\",url:\"https://xn----9sbmqji2czbya.xn--p1ai/__framerusercontent/assets/Qx95Xyt0Ka3SGhinnbXIGpEIyP4.woff2\",weight:\"500\"},{cssFamilyName:\"Inter\",source:\"framer\",style:\"normal\",uiFamilyName:\"Inter\",unicodeRange:\"U+1F00-1FFF\",url:\"https://xn----9sbmqji2czbya.xn--p1ai/__framerusercontent/assets/6mJuEAguuIuMog10gGvH5d3cl8.woff2\",weight:\"500\"},{cssFamilyName:\"Inter\",source:\"framer\",style:\"normal\",uiFamilyName:\"Inter\",unicodeRange:\"U+0370-03FF\",url:\"https://xn----9sbmqji2czbya.xn--p1ai/__framerusercontent/assets/xYYWaj7wCU5zSQH0eXvSaS19wo.woff2\",weight:\"500\"},{cssFamilyName:\"Inter\",source:\"framer\",style:\"normal\",uiFamilyName:\"Inter\",unicodeRange:\"U+0100-024F, U+0259, U+1E00-1EFF, U+2020, U+20A0-20AB, U+20AD-20CF, U+2113, U+2C60-2C7F, U+A720-A7FF\",url:\"https://xn----9sbmqji2czbya.xn--p1ai/__framerusercontent/assets/otTaNuNpVK4RbdlT7zDDdKvQBA.woff2\",weight:\"500\"},{cssFamilyName:\"Inter\",source:\"framer\",style:\"normal\",uiFamilyName:\"Inter\",unicodeRange:\"U+0000-00FF, U+0131, U+0152-0153, U+02BB-02BC, U+02C6, U+02DA, U+02DC, U+2000-206F, U+2070, U+2074-207E, U+2080-208E, U+20AC, U+2122, U+2191, U+2193, U+2212, U+2215, U+FEFF, U+FFFD\",url:\"https://xn----9sbmqji2czbya.xn--p1ai/__framerusercontent/assets/UjlFhCnUjxhNfep4oYBPqnEssyo.woff2\",weight:\"500\"},{cssFamilyName:\"Inter\",source:\"framer\",style:\"normal\",uiFamilyName:\"Inter\",unicodeRange:\"U+0102-0103, U+0110-0111, U+0128-0129, U+0168-0169, U+01A0-01A1, U+01AF-01B0, U+1EA0-1EF9, U+20AB\",url:\"https://xn----9sbmqji2czbya.xn--p1ai/__framerusercontent/assets/DolVirEGb34pEXEp8t8FQBSK4.woff2\",weight:\"500\"},{cssFamilyName:\"Inter\",source:\"framer\",style:\"normal\",uiFamilyName:\"Inter\",unicodeRange:\"U+0460-052F, U+1C80-1C88, U+20B4, U+2DE0-2DFF, U+A640-A69F, U+FE2E-FE2F\",url:\"https://xn----9sbmqji2czbya.xn--p1ai/__framerusercontent/assets/hyOgCu0Xnghbimh0pE8QTvtt2AU.woff2\",weight:\"600\"},{cssFamilyName:\"Inter\",source:\"framer\",style:\"normal\",uiFamilyName:\"Inter\",unicodeRange:\"U+0301, U+0400-045F, U+0490-0491, U+04B0-04B1, U+2116\",url:\"https://xn----9sbmqji2czbya.xn--p1ai/__framerusercontent/assets/NeGmSOXrPBfEFIy5YZeHq17LEDA.woff2\",weight:\"600\"},{cssFamilyName:\"Inter\",source:\"framer\",style:\"normal\",uiFamilyName:\"Inter\",unicodeRange:\"U+1F00-1FFF\",url:\"https://xn----9sbmqji2czbya.xn--p1ai/__framerusercontent/assets/oYaAX5himiTPYuN8vLWnqBbfD2s.woff2\",weight:\"600\"},{cssFamilyName:\"Inter\",source:\"framer\",style:\"normal\",uiFamilyName:\"Inter\",unicodeRange:\"U+0370-03FF\",url:\"https://xn----9sbmqji2czbya.xn--p1ai/__framerusercontent/assets/lEJLP4R0yuCaMCjSXYHtJw72M.woff2\",weight:\"600\"},{cssFamilyName:\"Inter\",source:\"framer\",style:\"normal\",uiFamilyName:\"Inter\",unicodeRange:\"U+0100-024F, U+0259, U+1E00-1EFF, U+2020, U+20A0-20AB, U+20AD-20CF, U+2113, U+2C60-2C7F, U+A720-A7FF\",url:\"https://xn----9sbmqji2czbya.xn--p1ai/__framerusercontent/assets/cRJyLNuTJR5jbyKzGi33wU9cqIQ.woff2\",weight:\"600\"},{cssFamilyName:\"Inter\",source:\"framer\",style:\"normal\",uiFamilyName:\"Inter\",unicodeRange:\"U+0000-00FF, U+0131, U+0152-0153, U+02BB-02BC, U+02C6, U+02DA, U+02DC, U+2000-206F, U+2070, U+2074-207E, U+2080-208E, U+20AC, U+2122, U+2191, U+2193, U+2212, U+2215, U+FEFF, U+FFFD\",url:\"https://xn----9sbmqji2czbya.xn--p1ai/__framerusercontent/assets/yDtI2UI8XcEg1W2je9XPN3Noo.woff2\",weight:\"600\"},{cssFamilyName:\"Inter\",source:\"framer\",style:\"normal\",uiFamilyName:\"Inter\",unicodeRange:\"U+0102-0103, U+0110-0111, U+0128-0129, U+0168-0169, U+01A0-01A1, U+01AF-01B0, U+1EA0-1EF9, U+20AB\",url:\"https://xn----9sbmqji2czbya.xn--p1ai/__framerusercontent/assets/A0Wcc7NgXMjUuFdquHDrIZpzZw0.woff2\",weight:\"600\"},{cssFamilyName:\"Inter Variable\",source:\"framer\",style:\"normal\",uiFamilyName:\"Inter\",unicodeRange:\"U+0460-052F, U+1C80-1C88, U+20B4, U+2DE0-2DFF, U+A640-A69F, U+FE2E-FE2F\",url:\"https://xn----9sbmqji2czbya.xn--p1ai/__framerusercontent/assets/mYcqTSergLb16PdbJJQMl9ebYm4.woff2\",variationAxes,weight:\"400\"},{cssFamilyName:\"Inter Variable\",source:\"framer\",style:\"normal\",uiFamilyName:\"Inter\",unicodeRange:\"U+0301, U+0400-045F, U+0490-0491, U+04B0-04B1, U+2116\",url:\"https://xn----9sbmqji2czbya.xn--p1ai/__framerusercontent/assets/ZRl8AlxwsX1m7xS1eJCiSPbztg.woff2\",variationAxes,weight:\"400\"},{cssFamilyName:\"Inter Variable\",source:\"framer\",style:\"normal\",uiFamilyName:\"Inter\",unicodeRange:\"U+1F00-1FFF\",url:\"https://xn----9sbmqji2czbya.xn--p1ai/__framerusercontent/assets/nhSQpBRqFmXNUBY2p5SENQ8NplQ.woff2\",variationAxes,weight:\"400\"},{cssFamilyName:\"Inter Variable\",source:\"framer\",style:\"normal\",uiFamilyName:\"Inter\",unicodeRange:\"U+0370-03FF\",url:\"https://xn----9sbmqji2czbya.xn--p1ai/__framerusercontent/assets/DYHjxG0qXjopUuruoacfl5SA.woff2\",variationAxes,weight:\"400\"},{cssFamilyName:\"Inter Variable\",source:\"framer\",style:\"normal\",uiFamilyName:\"Inter\",unicodeRange:\"U+0100-024F, U+0259, U+1E00-1EFF, U+2020, U+20A0-20AB, U+20AD-20CF, U+2113, U+2C60-2C7F, U+A720-A7FF\",url:\"https://xn----9sbmqji2czbya.xn--p1ai/__framerusercontent/assets/s7NH6sl7w4NU984r5hcmo1tPSYo.woff2\",variationAxes,weight:\"400\"},{cssFamilyName:\"Inter Variable\",source:\"framer\",style:\"normal\",uiFamilyName:\"Inter\",unicodeRange:\"U+0000-00FF, U+0131, U+0152-0153, U+02BB-02BC, U+02C6, U+02DA, U+02DC, U+2000-206F, U+2070, U+2074-207E, U+2080-208E, U+20AC, U+2122, U+2191, U+2193, U+2212, U+2215, U+FEFF, U+FFFD\",url:\"https://xn----9sbmqji2czbya.xn--p1ai/__framerusercontent/assets/7lw0VWkeXrGYJT05oB3DsFy8BaY.woff2\",variationAxes,weight:\"400\"},{cssFamilyName:\"Inter Variable\",source:\"framer\",style:\"normal\",uiFamilyName:\"Inter\",unicodeRange:\"U+0102-0103, U+0110-0111, U+0128-0129, U+0168-0169, U+01A0-01A1, U+01AF-01B0, U+1EA0-1EF9, U+20AB\",url:\"https://xn----9sbmqji2czbya.xn--p1ai/__framerusercontent/assets/wx5nfqEgOXnxuFaxB0Mn9OhmcZA.woff2\",variationAxes,weight:\"400\"}]},...SlideshowFonts,...FC_ProductPriceFonts,...FC_ProductPriceCompareFonts,...FCStockStatusFonts,...FC_ProductVariantsFonts,...ExpandFonts,...CrossFonts,...FCPurchaseButtonFonts,...CartOverlayFonts,...FAQSupplyFonts,...CardFonts,...getFontsFromSharedStyle(sharedStyle.fonts),...getFontsFromSharedStyle(sharedStyle1.fonts),...getFontsFromSharedStyle(sharedStyle2.fonts)],{supportsExplicitInterCodegen:true});FramerXGqHdMUqV.loader={load:(props,context)=>{const locale=context.locale;const detailResultPromise=queryCache.get(detailQuery(getWhereExpressionFromPathVariables(context.pathVariables,\"XGqHdMUqV\")),locale).readMaybeAsync();return Promise.allSettled([forwardLoader(FCStockStatus,{},context),forwardLoader(FCPurchaseButton,{},context),forwardLoader(CartOverlay,{},context),forwardLoader(FAQSupply,{},context),(async()=>{const[detailData]=await detailResultPromise??[];return Promise.allSettled([queryCache.get(query(detailData?.[\"HR_D2v7hb\"]),locale).preload(),queryCache.get(query1(detailData?.[\"HR_D2v7hb\"]),locale).preload()]);})(),(async()=>{const[detailData]=await detailResultPromise??[];const parentData=await queryCache.get(query(detailData?.[\"HR_D2v7hb\"]),locale).readMaybeAsync()??[];return Promise.allSettled(parentData.flatMap(item=>forwardLoader(Card,{},context)));})()]);}};\nexport const __FramerMetadata__ = {\"exports\":{\"queryParamNames\":{\"type\":\"variable\",\"annotations\":{\"framerContractVersion\":\"1\"}},\"default\":{\"type\":\"reactComponent\",\"name\":\"FramerXGqHdMUqV\",\"slots\":[],\"annotations\":{\"framerComponentViewportWidth\":\"true\",\"framerIntrinsicWidth\":\"1200\",\"framerScrollSections\":\"{\\\"EtHQc2K8Q\\\":{\\\"pattern\\\":\\\":EtHQc2K8Q\\\",\\\"name\\\":\\\"size\\\"},\\\"fTgI5Dge1\\\":{\\\"pattern\\\":\\\":fTgI5Dge1\\\",\\\"name\\\":\\\"scroll\\\"}}\",\"framerResponsiveScreen\":\"true\",\"framerColorSyntax\":\"true\",\"framerAcceptsLayoutTemplate\":\"true\",\"framerResolvesOwnDefaults\":\"true\",\"framerAutoSizeImages\":\"true\",\"framerLayoutTemplateFlowEffect\":\"true\",\"framerContractVersion\":\"1\",\"framerIntrinsicHeight\":\"5798\",\"framerCanvasComponentVariantDetails\":\"{\\\"propertyName\\\":\\\"variant\\\",\\\"data\\\":{\\\"default\\\":{\\\"layout\\\":[\\\"fixed\\\",\\\"auto\\\"]},\\\"Q1Q0VtM93\\\":{\\\"layout\\\":[\\\"fixed\\\",\\\"auto\\\"]},\\\"J1TsDX61j\\\":{\\\"layout\\\":[\\\"fixed\\\",\\\"auto\\\"]}}}\",\"framerImmutableVariables\":\"true\",\"framerDisplayContentsDiv\":\"false\"}},\"Props\":{\"type\":\"tsType\",\"annotations\":{\"framerContractVersion\":\"1\"}},\"__FramerMetadata__\":{\"type\":\"variable\"}}}"],"mappings":"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"}