{"version":3,"file":"AdvancedCarousel.DMewY0aO.mjs","names":["mask","Base","MotionSVG","SVG","svg","getProps","Icon","useState","React","useRef","useState","useCallback","children","useMemo","swiper","animate","_Fragment"],"sources":["https:/framerusercontent.com/modules/4MLasmFcNZCdPyM5mcvK/6vanKKu845insd8Uqufg/pFCHcAsVT.js","https:/framerusercontent.com/modules/FAAlnwQTElEYCo1lZH9u/qz9oHw3uHOMqbMX3h9mu/LRxjSS5Jt.js","https:/framerusercontent.com/modules/vj7bFUjvEQFgEzNBkdoG/vf3CKm378wlVcBk7IhSU/createStore.js","https:/framer.com/m/framer/store.js@^1.0.0","https:/framerusercontent.com/modules/6hJuBDjZVWhS0E2W1Kft/BvHkP8FixhOrEys9fEQt/Store.js","https:/framerusercontent.com/modules/6wNXLXws207KPbA2fKRt/3ZPqdWFXWGz7d9UKNIzl/AdvancedCarousel.js"],"sourcesContent":["// Generated by Framer (6ca5d98)\nimport{jsx as _jsx}from\"react/jsx-runtime\";import{addPropertyControls,ControlType,cx,motion,useSVGTemplate,withCSS}from\"framer\";import*as React from\"react\";import{forwardRef}from\"react\";const mask=\"var(--framer-icon-mask)\";const Base=/*#__PURE__*/forwardRef(function(props,ref){return /*#__PURE__*/_jsx(\"svg\",{...props,ref:ref,children:props.children});});const MotionSVG=motion.create(Base);const SVG=/*#__PURE__*/forwardRef((props,ref)=>{const{animated,layoutId,children,...rest}=props;return animated?/*#__PURE__*/_jsx(MotionSVG,{...rest,layoutId:layoutId,ref:ref,children:children}):/*#__PURE__*/_jsx(\"svg\",{...rest,ref:ref,children:children});});const svg='<svg display=\"block\" role=\"presentation\" viewBox=\"0 0 24 24\" xmlns=\"http://www.w3.org/2000/svg\"><path d=\"M 0 11.25 L 0 0 L 18 0 L 18 11.25 Z\" fill-opacity=\"var(--1m6trwb, 0)\" fill=\"var(--21h8s6, rgb(0, 0, 0))\" height=\"11.25px\" id=\"SpY14rCHt\" transform=\"translate(3 6)\" width=\"18px\"/><path d=\"M 0 0 L 7.5 0\" fill=\"transparent\" height=\"1px\" id=\"su8vtmkLE\" stroke-dasharray=\"\" stroke-linecap=\"round\" stroke-linejoin=\"round\" stroke-width=\"var(--pgex8v, 1.5)\" stroke=\"var(--21h8s6, rgb(0, 0, 0))\" transform=\"translate(3 9.75)\" width=\"7.5px\"/><path d=\"M 0 0 L 7.5 0\" fill=\"transparent\" height=\"1px\" id=\"rh1Sr9hAK\" stroke-dasharray=\"\" stroke-linecap=\"round\" stroke-linejoin=\"round\" stroke-width=\"var(--pgex8v, 1.5)\" stroke=\"var(--21h8s6, rgb(0, 0, 0))\" transform=\"translate(13.5 9.75)\" width=\"7.5px\"/><path d=\"M 0 0 L 3.75 0\" fill=\"transparent\" height=\"1px\" id=\"PBW_RIbl5\" stroke-dasharray=\"\" stroke-linecap=\"round\" stroke-linejoin=\"round\" stroke-width=\"var(--pgex8v, 1.5)\" stroke=\"var(--21h8s6, rgb(0, 0, 0))\" transform=\"translate(3 13.5)\" width=\"3.75px\"/><path d=\"M 0 0 L 3.75 0\" fill=\"transparent\" height=\"1px\" id=\"TODSsy9Gr\" stroke-dasharray=\"\" stroke-linecap=\"round\" stroke-linejoin=\"round\" stroke-width=\"var(--pgex8v, 1.5)\" stroke=\"var(--21h8s6, rgb(0, 0, 0))\" transform=\"translate(17.25 13.5)\" width=\"3.75px\"/><path d=\"M 0 0 L 4.5 0\" fill=\"transparent\" height=\"1px\" id=\"ujURsF_J7\" stroke-dasharray=\"\" stroke-linecap=\"round\" stroke-linejoin=\"round\" stroke-width=\"var(--pgex8v, 1.5)\" stroke=\"var(--21h8s6, rgb(0, 0, 0))\" transform=\"translate(9.75 13.5)\" width=\"4.5px\"/><path d=\"M 0 0 L 2.25 0\" fill=\"transparent\" height=\"1px\" id=\"h8Ak3OqvV\" stroke-dasharray=\"\" stroke-linecap=\"round\" stroke-linejoin=\"round\" stroke-width=\"var(--pgex8v, 1.5)\" stroke=\"var(--21h8s6, rgb(0, 0, 0))\" transform=\"translate(3 17.25)\" width=\"2.25px\"/><path d=\"M 0 0 L 2.25 0\" fill=\"transparent\" height=\"1px\" id=\"dYaXCauki\" stroke-dasharray=\"\" stroke-linecap=\"round\" stroke-linejoin=\"round\" stroke-width=\"var(--pgex8v, 1.5)\" stroke=\"var(--21h8s6, rgb(0, 0, 0))\" transform=\"translate(8.25 17.25)\" width=\"2.25px\"/><path d=\"M 0 0 L 2.25 0\" fill=\"transparent\" height=\"1px\" id=\"idGTp9kxW\" stroke-dasharray=\"\" stroke-linecap=\"round\" stroke-linejoin=\"round\" stroke-width=\"var(--pgex8v, 1.5)\" stroke=\"var(--21h8s6, rgb(0, 0, 0))\" transform=\"translate(13.5 17.25)\" width=\"2.25px\"/><path d=\"M 0 0 L 2.25 0\" fill=\"transparent\" height=\"1px\" id=\"Xk6BvhoSX\" stroke-dasharray=\"\" stroke-linecap=\"round\" stroke-linejoin=\"round\" stroke-width=\"var(--pgex8v, 1.5)\" stroke=\"var(--21h8s6, rgb(0, 0, 0))\" transform=\"translate(18.75 17.25)\" width=\"2.25px\"/><path d=\"M 0 0 L 18 0\" fill=\"transparent\" height=\"1px\" id=\"fkzim5m0G\" stroke-dasharray=\"\" stroke-linecap=\"round\" stroke-linejoin=\"round\" stroke-width=\"var(--pgex8v, 1.5)\" stroke=\"var(--21h8s6, rgb(0, 0, 0))\" transform=\"translate(3 6)\" width=\"18px\"/></svg>';const getProps=({alpha,color,height,id,width,width1,...props})=>{return{...props,ezTt3ayMo:color??props.ezTt3ayMo??\"rgb(0, 0, 0)\",lschgej4H:width1??props.lschgej4H??1.5,qxTvv_EBh:alpha??props.qxTvv_EBh};};const Component=/*#__PURE__*/React.forwardRef(function(props,ref){const{style,className,layoutId,variant,ezTt3ayMo,lschgej4H,qxTvv_EBh,...restProps}=getProps(props);const href=useSVGTemplate(\"3971803030\",svg);return /*#__PURE__*/_jsx(SVG,{...restProps,className:cx(\"framer-rGMBZ\",className),layoutId:layoutId,ref:ref,role:\"presentation\",style:{\"--1m6trwb\":qxTvv_EBh,\"--21h8s6\":ezTt3ayMo,\"--pgex8v\":lschgej4H,...style},viewBox:\"0 0 24 24\",children:/*#__PURE__*/_jsx(\"use\",{href:href})});});const css=[`.framer-rGMBZ { -webkit-mask: ${mask}; aspect-ratio: 1; display: block; mask: ${mask}; width: 24px; }`];/**\n * This is a generated Framer component.\n * @framerIntrinsicWidth 24\n * @framerIntrinsicHeight 24\n * @framerSupportedLayoutWidth any-prefer-fixed\n * @framerSupportedLayoutHeight any-prefer-fixed\n * @framerVariables {\"ezTt3ayMo\":\"color\",\"lschgej4H\":\"width1\",\"qxTvv_EBh\":\"alpha\"}\n * @framerImmutableVariables true\n * @framerVector {\"name\":\"Gradient\",\"color\":{\"type\":\"variable\",\"value\":\"21h8s6\"},\"set\":{\"localId\":\"vectorSet/NGVKdicsm\",\"id\":\"NGVKdicsm\",\"moduleId\":\"omX0gWFPqDwhaiWwf6ab\"}}\n * @framerDisableUnlink true\n */const Icon=withCSS(Component,css,\"framer-rGMBZ\");Icon.displayName=\"Gradient\";export default Icon;addPropertyControls(Icon,{ezTt3ayMo:{defaultValue:\"rgb(0, 0, 0)\",hidden:false,title:\"Color\",type:ControlType.Color},lschgej4H:{defaultValue:1.5,displayStepper:true,hidden:false,max:6,min:0,step:.5,title:\"Width\",type:ControlType.Number},qxTvv_EBh:{defaultValue:0,displayStepper:true,hidden:false,max:1,min:0,step:.1,title:\"Alpha\",type:ControlType.Number}});\nexport const __FramerMetadata__ = {\"exports\":{\"default\":{\"type\":\"reactComponent\",\"name\":\"Icon\",\"slots\":[],\"annotations\":{\"framerIntrinsicWidth\":\"24\",\"framerContractVersion\":\"1\",\"framerImmutableVariables\":\"true\",\"framerSupportedLayoutWidth\":\"any-prefer-fixed\",\"framerVector\":\"{\\\"name\\\":\\\"Gradient\\\",\\\"color\\\":{\\\"type\\\":\\\"variable\\\",\\\"value\\\":\\\"21h8s6\\\"},\\\"set\\\":{\\\"localId\\\":\\\"vectorSet/NGVKdicsm\\\",\\\"id\\\":\\\"NGVKdicsm\\\",\\\"moduleId\\\":\\\"omX0gWFPqDwhaiWwf6ab\\\"}}\",\"framerIntrinsicHeight\":\"24\",\"framerDisableUnlink\":\"true\",\"framerSupportedLayoutHeight\":\"any-prefer-fixed\",\"framerVariables\":\"{\\\"ezTt3ayMo\\\":\\\"color\\\",\\\"lschgej4H\\\":\\\"width1\\\",\\\"qxTvv_EBh\\\":\\\"alpha\\\"}\"}},\"__FramerMetadata__\":{\"type\":\"variable\"}}}","// Generated by Framer (6ca5d98)\nimport{jsx as _jsx}from\"react/jsx-runtime\";import{addPropertyControls,ControlType,cx,motion,useSVGTemplate,withCSS}from\"framer\";import*as React from\"react\";import{forwardRef}from\"react\";const mask=\"var(--framer-icon-mask)\";const Base=/*#__PURE__*/forwardRef(function(props,ref){return /*#__PURE__*/_jsx(\"svg\",{...props,ref:ref,children:props.children});});const MotionSVG=motion.create(Base);const SVG=/*#__PURE__*/forwardRef((props,ref)=>{const{animated,layoutId,children,...rest}=props;return animated?/*#__PURE__*/_jsx(MotionSVG,{...rest,layoutId:layoutId,ref:ref,children:children}):/*#__PURE__*/_jsx(\"svg\",{...rest,ref:ref,children:children});});const svg='<svg display=\"block\" role=\"presentation\" viewBox=\"0 0 24 24\" xmlns=\"http://www.w3.org/2000/svg\"><path d=\"M 0 4.5 L 16.5 4.5 L 16.5 0.75 C 16.5 0.336 16.164 0 15.75 0 L 0.75 0 C 0.336 0 0 0.336 0 0.75 Z\" fill-opacity=\"var(--1m6trwb, 0)\" fill=\"var(--21h8s6, rgb(0, 0, 0))\" height=\"4.5px\" id=\"ZGgiBurO8\" transform=\"translate(3.75 3.75)\" width=\"16.5px\"/><path d=\"M 0.75 16.5 C 0.336 16.5 0 16.164 0 15.75 L 0 0.75 C 0 0.336 0.336 0 0.75 0 L 15.75 0 C 16.164 0 16.5 0.336 16.5 0.75 L 16.5 15.75 C 16.5 16.164 16.164 16.5 15.75 16.5 Z\" fill=\"transparent\" height=\"16.5px\" id=\"v3f8Flk6s\" stroke-dasharray=\"\" stroke-linecap=\"round\" stroke-linejoin=\"round\" stroke-width=\"var(--pgex8v, 1.5)\" stroke=\"var(--21h8s6, rgb(0, 0, 0))\" transform=\"translate(3.75 3.75)\" width=\"16.5px\"/><path d=\"M 0 0 L 0 3\" fill=\"transparent\" height=\"3px\" id=\"Wg2HGJSXK\" stroke-dasharray=\"\" stroke-linecap=\"round\" stroke-linejoin=\"round\" stroke-width=\"var(--pgex8v, 1.5)\" stroke=\"var(--21h8s6, rgb(0, 0, 0))\" transform=\"translate(16.5 2.25)\" width=\"1px\"/><path d=\"M 0 0 L 0 3\" fill=\"transparent\" height=\"3px\" id=\"RpZ5xpxGl\" stroke-dasharray=\"\" stroke-linecap=\"round\" stroke-linejoin=\"round\" stroke-width=\"var(--pgex8v, 1.5)\" stroke=\"var(--21h8s6, rgb(0, 0, 0))\" transform=\"translate(7.5 2.25)\" width=\"1px\"/><path d=\"M 0 0 L 16.5 0\" fill=\"transparent\" height=\"1px\" id=\"UV_sXe3Oi\" stroke-dasharray=\"\" stroke-linecap=\"round\" stroke-linejoin=\"round\" stroke-width=\"var(--pgex8v, 1.5)\" stroke=\"var(--21h8s6, rgb(0, 0, 0))\" transform=\"translate(3.75 8.25)\" width=\"16.5px\"/></svg>';const getProps=({alpha,color,height,id,width,width1,...props})=>{return{...props,ezTt3ayMo:color??props.ezTt3ayMo??\"rgb(0, 0, 0)\",lschgej4H:width1??props.lschgej4H??1.5,qxTvv_EBh:alpha??props.qxTvv_EBh};};const Component=/*#__PURE__*/React.forwardRef(function(props,ref){const{style,className,layoutId,variant,ezTt3ayMo,lschgej4H,qxTvv_EBh,...restProps}=getProps(props);const href=useSVGTemplate(\"2588847244\",svg);return /*#__PURE__*/_jsx(SVG,{...restProps,className:cx(\"framer-YlwF8\",className),layoutId:layoutId,ref:ref,role:\"presentation\",style:{\"--1m6trwb\":qxTvv_EBh,\"--21h8s6\":ezTt3ayMo,\"--pgex8v\":lschgej4H,...style},viewBox:\"0 0 24 24\",children:/*#__PURE__*/_jsx(\"use\",{href:href})});});const css=[`.framer-YlwF8 { -webkit-mask: ${mask}; aspect-ratio: 1; display: block; mask: ${mask}; width: 24px; }`];/**\n * This is a generated Framer component.\n * @framerIntrinsicWidth 24\n * @framerIntrinsicHeight 24\n * @framerSupportedLayoutWidth any-prefer-fixed\n * @framerSupportedLayoutHeight any-prefer-fixed\n * @framerVariables {\"ezTt3ayMo\":\"color\",\"lschgej4H\":\"width1\",\"qxTvv_EBh\":\"alpha\"}\n * @framerImmutableVariables true\n * @framerVector {\"name\":\"Calendar Blank\",\"color\":{\"type\":\"variable\",\"value\":\"21h8s6\"},\"set\":{\"localId\":\"vectorSet/NGVKdicsm\",\"id\":\"NGVKdicsm\",\"moduleId\":\"omX0gWFPqDwhaiWwf6ab\"}}\n * @framerDisableUnlink true\n */const Icon=withCSS(Component,css,\"framer-YlwF8\");Icon.displayName=\"Calendar Blank\";export default Icon;addPropertyControls(Icon,{ezTt3ayMo:{defaultValue:\"rgb(0, 0, 0)\",hidden:false,title:\"Color\",type:ControlType.Color},lschgej4H:{defaultValue:1.5,displayStepper:true,hidden:false,max:6,min:0,step:.5,title:\"Width\",type:ControlType.Number},qxTvv_EBh:{defaultValue:0,displayStepper:true,hidden:false,max:1,min:0,step:.1,title:\"Alpha\",type:ControlType.Number}});\nexport const __FramerMetadata__ = {\"exports\":{\"default\":{\"type\":\"reactComponent\",\"name\":\"Icon\",\"slots\":[],\"annotations\":{\"framerSupportedLayoutHeight\":\"any-prefer-fixed\",\"framerVector\":\"{\\\"name\\\":\\\"Calendar Blank\\\",\\\"color\\\":{\\\"type\\\":\\\"variable\\\",\\\"value\\\":\\\"21h8s6\\\"},\\\"set\\\":{\\\"localId\\\":\\\"vectorSet/NGVKdicsm\\\",\\\"id\\\":\\\"NGVKdicsm\\\",\\\"moduleId\\\":\\\"omX0gWFPqDwhaiWwf6ab\\\"}}\",\"framerIntrinsicWidth\":\"24\",\"framerImmutableVariables\":\"true\",\"framerDisableUnlink\":\"true\",\"framerContractVersion\":\"1\",\"framerIntrinsicHeight\":\"24\",\"framerVariables\":\"{\\\"ezTt3ayMo\\\":\\\"color\\\",\\\"lschgej4H\\\":\\\"width1\\\",\\\"qxTvv_EBh\\\":\\\"alpha\\\"}\",\"framerSupportedLayoutWidth\":\"any-prefer-fixed\"}},\"__FramerMetadata__\":{\"type\":\"variable\"}}}","import{useState,useEffect}from\"react\";import{Data,useObserveData}from\"framer\";export function createStore(state1){// Use Data so that a Preview reload resets the state\nconst dataStore=Data({state:Object.freeze({...state1})});// Create a set function that updates the state\nconst setDataStore=newState=>{// If the state is an object, make sure we copy it\nif(typeof newState===\"function\"){newState=newState(dataStore.state);}dataStore.state=Object.freeze({...dataStore.state,...newState});};// Store the initial state, copy the object if it's an object\nlet storeState=typeof state1===\"object\"?Object.freeze({...state1}):state1;// Keep a list of all the listeners, in the form of React hook setters\nconst storeSetters=new Set();// Create a set function that updates all the listeners / setters\nconst setStoreState=newState=>{// If the state is an object, make sure we copy it\nif(typeof newState===\"function\"){newState=newState(storeState);}storeState=typeof newState===\"object\"?Object.freeze({...storeState,...newState}):newState;// Update all the listeners / setters with the new value\nstoreSetters.forEach(setter=>setter(storeState));};// Create the actual hook based on everything above\nfunction useStore(){// Create the hook we are going to use as a listener\nconst[state,setState]=useState(storeState);// If we unmount the component using this hook, we need to remove the listener\n// @ts-ignore\nuseEffect(()=>{// But right now, we need to add the listener\nstoreSetters.add(setState);return()=>storeSetters.delete(setState);},[]);// If Data context exists, use Data, otherwise use vanilla React state\nif(useObserveData()===true){useObserveData();return[dataStore.state,setDataStore];}else{// Return the state and a function to update the central store\nreturn[state,setStoreState];}}return useStore;}\nexport const __FramerMetadata__ = {\"exports\":{\"createStore\":{\"type\":\"function\",\"annotations\":{\"framerContractVersion\":\"1\"}},\"__FramerMetadata__\":{\"type\":\"variable\"}}}\n//# sourceMappingURL=./createStore.map","/*\n * createStore (framer/store@1.0.1)\n *\n * Learn More: https://www.framer.com/asset-urls\n */\n\nexport * from \"https://framerusercontent.com/modules/vj7bFUjvEQFgEzNBkdoG/vf3CKm378wlVcBk7IhSU/createStore.js\"\n","import{createStore}from\"https://framer.com/m/framer/store.js@^1.0.0\";// Store to manage carousel control\nexport const useCarouselState=createStore({direction:null});\nexport const __FramerMetadata__ = {\"exports\":{\"useCarouselState\":{\"type\":\"variable\",\"annotations\":{\"framerContractVersion\":\"1\"}},\"__FramerMetadata__\":{\"type\":\"variable\"}}}\n//# sourceMappingURL=./Store.map","import{jsx as _jsx,jsxs as _jsxs,Fragment as _Fragment}from\"react/jsx-runtime\";import React,{useEffect,useRef,useState,useCallback,useMemo}from\"react\";import{addPropertyControls,ControlType,useMotionValue,animate}from\"framer\";import{useCarouselState}from\"https://framerusercontent.com/modules/6hJuBDjZVWhS0E2W1Kft/BvHkP8FixhOrEys9fEQt/Store.js\";/**\n * By Dan Marek - Fixed for Multiple Instances\n *\n * @framerDisableUnlink\n * @framerIntrinsicHeight 200\n * @framerIntrinsicWidth 400\n * @framerSupportedLayoutWidth any-prefer-fixed\n * @framerSupportedLayoutHeight any-prefer-fixed\n\n */// Generate unique IDs for each carousel instance\nconst generateUniqueId=()=>`carousel_${Math.random().toString(36).substr(2,9)}`;// Global script loading state to prevent conflicts\nlet scriptsLoaded={swiper:false,phosphor:false};let loadingPromises={swiper:null,phosphor:null};// Define styles\nconst styles={container:{display:\"flex\",width:\"100%\",height:\"100%\",placeContent:\"center\",placeItems:\"center\",flexDirection:\"column\",color:\"rgb(153, 102, 255)\",background:\"rgba(136, 85, 255, 0.1)\",fontSize:\"11px\",overflow:\"visible\",padding:\"20px 20px 30px\"},icon:{fontSize:\"24px\",color:\"#ffc107\",marginBottom:\"10px\"},title:{fontSize:\"14px\",fontWeight:\"bold\",color:\"rgb(153, 102, 255)\",marginBottom:\"5px\"},span:{margin:\"0px\",opacity:.7,maxWidth:\"200px\",lineHeight:\"1.5\",textAlign:\"center\",textWrap:\"balance\",color:\"rgb(153, 102, 255)\"}};// Placeholder content when no children are provided\nfunction ConnectToContent(){return /*#__PURE__*/_jsxs(\"section\",{style:styles.container,children:[/*#__PURE__*/_jsx(\"div\",{style:styles.icon,children:\"✨\"}),/*#__PURE__*/_jsx(\"div\",{style:styles.title,children:\"Connect to Content\"}),/*#__PURE__*/_jsx(\"span\",{style:styles.span,children:\"Add layers or components to swipe between.\"})]});}function injectVariantDeep(node,variant){if(!/*#__PURE__*/React.isValidElement(node))return node;// If this is the final visual child (no more React children), clone with variant\nconst children=node.props?.children;if(!children||typeof children===\"string\"||typeof children===\"number\"){return /*#__PURE__*/React.cloneElement(node,{variant});}// If it's a single child, go deeper\nconst inner=React.Children.only(children);const injected=injectVariantDeep(inner,variant);// Re-clone the current node with the updated child\nreturn /*#__PURE__*/React.cloneElement(node,{children:injected});}// Script loader utility\nconst loadScript=(src,type)=>{if(typeof document===\"undefined\")return Promise.resolve();if(scriptsLoaded[type]){return Promise.resolve();}if(loadingPromises[type]){return loadingPromises[type];}loadingPromises[type]=new Promise((resolve,reject)=>{const script=document.createElement(\"script\");script.src=src;script.onload=()=>{scriptsLoaded[type]=true;resolve();};script.onerror=reject;document.body.appendChild(script);});return loadingPromises[type];};const loadStylesheet=href=>{if(typeof document===\"undefined\")return;const existing=document.querySelector(`link[href=\"${href}\"]`);if(existing)return;const link=document.createElement(\"link\");link.rel=\"stylesheet\";link.href=href;document.head.appendChild(link);};/**\n * Advanced Carousel Component - Fixed for Multiple Instances\n */export default function AdvancedSwiperCarousel(props){// Initialize unique ID immediately\nconst carouselId=useRef(generateUniqueId());const instanceId=carouselId.current;const swiperRef=useRef(null);const containerRef=useRef(null);const autoplayIntervalRef=useRef(null)// Track autoplay interval to prevent multiple instances\n;const manualLoopTimeoutRef=useRef(null)// Track manual loop timeout\n;const progressAnimationRef=useRef(null)// Track progress animation\n;// Motion value for autoplay progress (0-1)\nconst autoplayProgress=useMotionValue(0);const[isPlaceholder,setIsPlaceholder]=useState(()=>{// Initialize with correct value immediately to prevent flash\nreturn React.Children.count(props.children)===0;});const[swiper,setSwiper]=useState(null);const[localNavigation,setLocalNavigation]=useState({direction:null,timestamp:0});const[store]=useCarouselState();const[isReady,setIsReady]=useState(true)// Start as ready to prevent flash\n;const[isAtBeginning,setIsAtBeginning]=useState(true);const[isAtEnd,setIsAtEnd]=useState(false);const[activeSlideIndex,setActiveSlideIndex]=useState(0);const[activeRealIndex,setActiveRealIndex]=useState(0)// Track realIndex for loop mode\n;const lastActiveIndex=useRef(0);const resizeTimeoutRef=useRef(null);const isClient=typeof window!==\"undefined\";// Enhanced canvas detection\nconst isFramerCanvas=typeof window!==\"undefined\"&&(window.location.href.includes(\"framer.com\")||window.location.href.includes(\"preview.framer.website\")||window.__FRAMER_CANVAS__);// Calculate wrapper and container heights separately for proper parent inheritance\nconst getWrapperHeight=useCallback(()=>{// The wrapper should always fill the parent when stretch/rows is set\nif(props.heightType===\"stretch\"||props.heightType===\"rows\"){return\"100%\";}return\"auto\"// Auto height\n;},[props.heightType]);const getContainerHeight=useCallback(()=>{if(props.heightType===\"stretch\"){return props.heightInset>0?`calc(100% - ${props.heightInset}px)`:\"100%\";}else if(props.heightType===\"rows\"){return props.heightInset>0?`calc(${100/props.heightRows}% - ${props.heightInset}px)`:`${100/props.heightRows}%`;}return\"auto\"// Auto height\n;},[props.heightType,props.heightInset,props.heightRows]);// Block SSR rendering entirely for client-only safety\nif(typeof window===\"undefined\")return null;// CREATE UNIQUE CSS CLASSES FUNCTION RIGHT HERE - BEFORE useEffects\nconst getUniqueClass=baseClass=>`${baseClass}-${instanceId}`;// NEW: Function to reorder children for centered arrangement\nconst reorderChildrenForCentered=useCallback(children=>{if(!props.centeredSlides){return React.Children.toArray(children);}const childArray=React.Children.toArray(children);const reorderedChildren=[];childArray.forEach((child,index)=>{let position;if(index===0){position=0// center\n;}else if(index%2===1){position=-Math.ceil(index/2);}else{position=Math.ceil(index/2);}reorderedChildren.push({child,position,originalIndex:index,key:`${instanceId}-slide-${index}`});});reorderedChildren.sort((a,b)=>a.position-b.position);console.log(`🎯 ${instanceId} Centered arrangement:`,{original:childArray.map((_,i)=>i),reordered:reorderedChildren.map(item=>item.originalIndex),positions:reorderedChildren.map(item=>item.position)});return reorderedChildren;},[props.centeredSlides,instanceId]);// Simple children array\nconst arrangedChildren=useMemo(()=>{return React.Children.toArray(props.children);},[props.children]);// Restore effectiveLoop to use Swiper's built-in loop\nconst effectiveLoop=useMemo(()=>{const slideCount=arrangedChildren.length;const isPosterMode=props.widthMode===\"maxWidth\";console.log(`🔁 ${instanceId} Loop calculation:`,{propsLoop:props.loop,slideCount,isPosterMode,widthMode:props.widthMode});// Disable native loop in poster mode - we'll handle it manually\n// Loop doesn't work properly with centered + slidesPerView: auto + absolute positioning\nif(isPosterMode){console.log(`🔁 ${instanceId} Loop disabled (poster mode)`);return false;}// For all other modes, enable loop if requested\nconst result=props.loop&&slideCount>1;console.log(`🔁 ${instanceId} Loop enabled: ${result}`);return result;},[props.loop,arrangedChildren.length,props.widthMode,instanceId]);// Memoize the navigation handler with custom loop for poster mode\nconst handleNavigation=useCallback(direction=>{console.log(`🎯 ${instanceId} handleNavigation called:`,{direction,hasSwiperRef:!!swiperRef.current?.swiper});if(!swiperRef.current?.swiper){console.warn(`⚠️ ${instanceId} No swiper instance available`);return;}const swiper=swiperRef.current.swiper;const isPosterMode=props.widthMode===\"maxWidth\";const isAspectRatioMode=props.widthMode===\"aspectRatio\";const slideCount=React.Children.count(props.children);const currentIndex=swiper.activeIndex;console.log(`🎯 ${instanceId} Navigation state:`,{isPosterMode,isAspectRatioMode,loop:props.loop,currentIndex,slideCount,direction});// Custom loop logic for poster mode\nif(isPosterMode&&props.loop&&slideCount>1){if(direction===\"left\"){if(currentIndex===0){console.log(`🔄 ${instanceId} Wrapping to last slide`);swiper.slideTo(slideCount-1);}else{console.log(`← ${instanceId} Going to previous slide`);swiper.slidePrev();}}else if(direction===\"right\"){if(currentIndex===slideCount-1){console.log(`🔄 ${instanceId} Wrapping to first slide`);swiper.slideTo(0);}else{console.log(`→ ${instanceId} Going to next slide`);swiper.slideNext();}}}else if(isAspectRatioMode&&!swiper.params.loop){// In aspect ratio mode WITHOUT loop, use slideTo for precise navigation\nif(direction===\"left\"){const targetIndex=Math.max(0,swiper.activeIndex-1);console.log(`← ${instanceId} Aspect ratio (no loop): slideTo ${targetIndex}`);swiper.slideTo(targetIndex);}else if(direction===\"right\"){const targetIndex=Math.min(slideCount-1,swiper.activeIndex+1);console.log(`→ ${instanceId} Aspect ratio (no loop): slideTo ${targetIndex}`);swiper.slideTo(targetIndex);}}else{// Normal navigation (with or without native loop)\nif(direction===\"left\"){// If at beginning and loop is requested, go to end\nif(swiper.isBeginning&&props.loop){const lastIndex=React.Children.count(props.children)-1;console.log(`🔄 ${instanceId} Manual loop: wrapping from beginning to end (${lastIndex})`);swiper.slideTo(lastIndex,300);}else{swiper.slidePrev();}}else if(direction===\"right\"){// If at end and loop is requested, go to beginning\nif(swiper.isEnd&&props.loop){console.log(`🔄 ${instanceId} Manual loop: wrapping from end to beginning`);swiper.slideTo(0,300);}else{swiper.slideNext();}}}},[props.widthMode,props.loop,props.children,instanceId]);useEffect(()=>{if(typeof window===\"undefined\"||typeof document===\"undefined\")return;// Only update if children actually changed (not on initial mount)\nconst newIsPlaceholder=React.Children.count(props.children)===0;if(newIsPlaceholder!==isPlaceholder){setIsPlaceholder(newIsPlaceholder);}},[props.children,isPlaceholder]);useEffect(()=>{if(typeof window===\"undefined\"||typeof document===\"undefined\")return;// Pre-inject critical CSS to prevent layout shift\nconst criticalCSS=`\n            /* Pre-allocate space for Swiper elements to prevent layout shift */\n            .swiper-container, .swiper-wrapper, .swiper-slide {\n                box-sizing: border-box;\n            }\n            .swiper-slide {\n                flex-shrink: 0;\n                width: 100%;\n                height: 100%;\n                position: relative;\n            }\n            .swiper-wrapper {\n                position: relative;\n                width: 100%;\n                height: 100%;\n                z-index: 1;\n                display: flex;\n                transition-property: transform;\n                box-sizing: content-box;\n            }\n            .swiper-container {\n                margin: 0 auto;\n                position: relative;\n                overflow: hidden;\n                list-style: none;\n                z-index: 1;\n            }\n            /* Reserve space for navigation arrows */\n            .swiper-button-prev, .swiper-button-next {\n                position: absolute;\n                top: 50%;\n                width: 48px;\n                height: 48px;\n                margin-top: -24px;\n                z-index: 10;\n                cursor: pointer;\n                display: flex;\n                align-items: center;\n                justify-content: center;\n                background: rgba(0, 0, 0, 0.2);\n                backdrop-filter: blur(4px);\n                border-radius: 50%;\n            }\n            /* Reserve space for pagination */\n            .swiper-pagination {\n                position: absolute;\n                text-align: center;\n                transition: 300ms opacity;\n                transform: translate3d(0, 0, 0);\n                z-index: 10;\n            }\n        `;// Inject critical CSS immediately\nconst styleId=`critical-css-${instanceId}`;if(!document.getElementById(styleId)){const style=document.createElement(\"style\");style.id=styleId;style.textContent=criticalCSS;document.head.appendChild(style);}// Simple script loading without promises\nif(!document.querySelector('script[src*=\"phosphor-icons\"]')){const phosphorScript=document.createElement(\"script\");phosphorScript.src=\"https://cdn.jsdelivr.net/npm/phosphor-icons@1.4.2/src/index.min.js\";phosphorScript.onload=()=>console.log(`✅ Phosphor loaded for: ${instanceId}`);document.body.appendChild(phosphorScript);}if(!document.querySelector('script[src*=\"swiper-bundle\"]')){const swiperScript=document.createElement(\"script\");swiperScript.src=\"https://unpkg.com/swiper/swiper-bundle.min.js\";swiperScript.onload=()=>console.log(`✅ Swiper loaded for: ${instanceId}`);document.body.appendChild(swiperScript);}loadStylesheet(\"https://cdn.jsdelivr.net/npm/phosphor-icons@1.4.2/src/css/icons.min.css\");loadStylesheet(\"https://unpkg.com/swiper/swiper-bundle.min.css\");},[instanceId]);useEffect(()=>{if(typeof window===\"undefined\"||typeof document===\"undefined\")return;// Store monitoring logic (if needed)\n},[store,instanceId]);useEffect(()=>{if(typeof window===\"undefined\"||typeof document===\"undefined\")return;const initializeSwiper=()=>{if(typeof window===\"undefined\"||typeof document===\"undefined\")return;if(!window.Swiper){console.warn(`⚠️ ${instanceId} Swiper library not loaded, retrying...`);setTimeout(()=>{if(typeof window!==\"undefined\"&&window.Swiper&&swiperRef.current){initializeSwiper();}},200);return;}if(!swiperRef.current||!swiperRef.current.nodeType){console.warn(`⚠️ ${instanceId} DOM element not ready`);return;}if(swiper){lastActiveIndex.current=swiper.activeIndex||0;swiper.destroy(true,true);console.log(`🗑️ ${instanceId} Destroyed existing Swiper`);}const slideCount=arrangedChildren.length;// Disable loop if centeredSlides is enabled\n// const effectiveLoop = props.loop && slideCount > 1 && !props.centeredSlides\n// Use the component-level effectiveLoop calculation\nconst uniquePaginationClass=getUniqueClass(\"swiper-pagination\");const uniqueBulletClass=getUniqueClass(\"swiper-pagination-bullet\");const uniqueBulletActiveClass=getUniqueClass(\"swiper-pagination-bullet-active\");const uniqueNextClass=getUniqueClass(\"swiper-button-next\");const uniquePrevClass=getUniqueClass(\"swiper-button-prev\");try{const isPosterMode=props.widthMode===\"maxWidth\";const isAspectRatioMode=props.widthMode===\"aspectRatio\";const posterCrossfade=isPosterMode&&props.crossfade;const posterWithLoop=isPosterMode&&props.loop;console.log(`🚀 Initializing Swiper for ${instanceId}`,{widthMode:props.widthMode,isPosterMode:isPosterMode,centeredSlides:isPosterMode?true:props.centeredSlides,maxWidth:props.maxWidth,containerWidth:swiperRef.current?.offsetWidth,crossfade:props.crossfade,posterCrossfade:posterCrossfade,effectWillBe:posterCrossfade?\"creative (custom crossfade)\":isPosterMode?\"slide\":props.crossfade?\"fade\":\"other\",nativeLoop:effectiveLoop,customLoop:posterWithLoop?\"✅ Manual loop for poster mode\":false,allowTouchMove:isPosterMode?false:props.enableDrag});// Respect initialIndex in all modes\nlet initialSlide=props.initialIndex||0;// Ensure it's within bounds\ninitialSlide=Math.min(initialSlide,slideCount-1);// IMPORTANT: When loop is enabled, Swiper creates duplicate slides\n// and the initialSlide index needs to account for this.\n// However, we'll let Swiper handle it by starting at 0 and then\n// sliding to the desired index after initialization if loop is enabled\nconst configInitialSlide=effectiveLoop?0:initialSlide;lastActiveIndex.current=initialSlide;console.log(`🎯 ${instanceId} Initial slide configuration:`,{requestedIndex:props.initialIndex,boundedIndex:initialSlide,configInitialSlide,loop:effectiveLoop,willSlideAfterInit:effectiveLoop&&initialSlide!==0});// Calculate slidesPerView\nconst slidesPerView=props.widthMode===\"columns\"?props.widthColumns:\"auto\";// Check if there are enough slides for loop mode\n// Swiper needs at least slidesPerView * 2 slides for proper looping\nconst needsManualLoop=effectiveLoop&&props.widthMode===\"columns\"&&slideCount<props.widthColumns*2;if(needsManualLoop){console.warn(`⚠️ ${instanceId} Not enough slides for Swiper's native loop!`,{totalSlides:slideCount,columnsToShow:props.widthColumns,required:props.widthColumns*2,solution:\"Using manual loop fallback\"});}const swiperConfig={loop:effectiveLoop,initialSlide:configInitialSlide,slidesPerView:slidesPerView,slidesPerGroup:1,spaceBetween:posterCrossfade?0:props.spaceBetween,centeredSlides:isPosterMode?true:props.centeredSlides,centeredSlidesBounds:isPosterMode?true:false,slideToClickedSlide:isPosterMode&&!posterCrossfade?true:false,allowTouchMove:isPosterMode?false:props.enableDrag,watchSlidesProgress:true,watchSlidesVisibility:true,// Slide transition timing\nspeed:500,// Improve stability and responsiveness\nobserver:true,observeParents:true,observeSlideChildren:true,updateOnWindowResize:true,resizeObserver:true,pagination:showDots?{el:`.${uniquePaginationClass}`,clickable:true,bulletClass:uniqueBulletClass,bulletActiveClass:uniqueBulletActiveClass}:false,navigation:props.arrows.showArrows&&!isPosterMode?{nextEl:`.${uniqueNextClass}`,prevEl:`.${uniquePrevClass}`}:false,effect:isPosterMode&&props.crossfade?\"creative\"// ✅ Use creative effect for poster crossfade (maintains slidesPerView: auto)\n:isPosterMode?\"slide\":props.crossfade?\"fade\":props.coverflowEffect?\"coverflow\":props.effectEnabled?\"creative\":\"slide\",fadeEffect:{crossFade:isPosterMode?false:props.crossfade},coverflowEffect:props.coverflowEffect?{rotate:50,stretch:0,depth:100,modifier:1,slideShadows:true}:{},creativeEffect:isPosterMode&&props.crossfade?{// ✅ Poster mode crossfade: CSS handles positioning & opacity\nlimitProgress:1,shadowPerProgress:false,progressMultiplier:1,prev:{translate:[0,0,0],scale:1},next:{translate:[0,0,0],scale:1},active:{translate:[0,0,0],scale:1}}:props.effectEnabled&&!props.coverflowEffect?{limitProgress:8,prev:{translate:[`-${props.slideOverlap+Math.min(props.spaceBetween/(swiperRef.current?.offsetWidth||1e3)*100,20)}%`,0,0],opacity:props.inactiveOpacity,scale:props.inactiveScale},next:{translate:[`${props.slideOverlap+Math.min(props.spaceBetween/(swiperRef.current?.offsetWidth||1e3)*100,20)}%`,0,0],opacity:props.inactiveOpacity,scale:props.inactiveScale},active:{scale:props.activeScale}}:{},autoplay:props.autoplay&&!posterWithLoop?{delay:props.autoplayDelay,disableOnInteraction:false}:false,keyboard:props.keyboardControl?{enabled:true}:false,on:{init:function(){console.log(`🏁 ${instanceId} Swiper initialized`,{params:this.params,centeredSlides:this.params.centeredSlides,slidesPerView:this.params.slidesPerView,width:this.width,slides:this.slides.length,loop:this.params.loop,initialSlide:this.params.initialSlide,activeIndex:this.activeIndex,realIndex:this.realIndex});setIsAtBeginning(this.isBeginning);setIsAtEnd(this.isEnd);setActiveSlideIndex(this.activeIndex);setActiveRealIndex(this.realIndex)// Track real index for variants\n;// Start initial autoplay progress animation\nif(props.autoplay&&props.exposeAutoplayProgress){autoplayProgress.set(0);progressAnimationRef.current=animate(autoplayProgress,1,{duration:props.autoplayDelay/1e3,ease:\"linear\"});console.log(`📊 ${instanceId} Initial autoplay progress animation started`);}// Debug slide positions\nif(isPosterMode){console.log(`📍 ${instanceId} POSTER MODE - Slide positions:`,{translate:this.translate,activeIndex:this.activeIndex,slidesGrid:this.slidesGrid,snapGrid:this.snapGrid});// In poster crossfade mode, manually set initial slide as active\nif(posterCrossfade){console.log(`🔧 ${instanceId} Manually setting slide ${initialSlide} as active in poster crossfade mode`);setTimeout(()=>{const slides=document.querySelectorAll(`[data-carousel-id=\"${instanceId}\"] .swiper-slide`);slides.forEach((slide,index)=>{slide.classList.remove(\"swiper-slide-active\",\"swiper-slide-prev\",\"swiper-slide-next\");if(index===initialSlide){slide.classList.add(\"swiper-slide-active\");console.log(`✅ ${instanceId} Slide ${index} forced to active state`);}});},100);}else if(this.activeIndex!==initialSlide&&initialSlide!==0){// For other modes, slide to the correct initial slide\n// In loop mode, we need to use the real index\nconst targetIndex=effectiveLoop&&!isPosterMode?initialSlide:initialSlide;console.log(`🔧 ${instanceId} Moving to initial slide ${initialSlide} (currently at ${this.activeIndex}, loop: ${effectiveLoop})`);setTimeout(()=>{if(effectiveLoop&&!isPosterMode){// In loop mode, slide to the realIndex\nthis.slideToLoop(initialSlide,0);console.log(`✅ ${instanceId} Slid to loop index ${initialSlide}`);}else{this.slideTo(initialSlide,0);console.log(`✅ ${instanceId} Slid to index ${initialSlide}`);}},100);}}},slideChangeTransitionStart:function(){// Update variant immediately when transition starts (snappier feel)\nsetActiveRealIndex(this.realIndex);console.log(`🎭 ${instanceId} Variant switch triggered early (realIndex: ${this.realIndex})`);},slideChangeTransitionEnd:function(){setIsAtBeginning(this.isBeginning);setIsAtEnd(this.isEnd);setActiveSlideIndex(this.activeIndex);setActiveRealIndex(this.realIndex)// Keep updating to ensure consistency\n;if(isPosterMode){console.log(`📍 ${instanceId} POSTER MODE - After slide change:`,{activeIndex:this.activeIndex,translate:this.translate});}},resize:function(){console.log(`📏 ${instanceId} Swiper resized`,{width:this.width,centeredSlides:this.params.centeredSlides});this.update()// Force update on resize\n;setIsAtBeginning(this.isBeginning);setIsAtEnd(this.isEnd);}}};console.log(`⚙️ ${instanceId} Swiper Config:`,swiperConfig);const swiperInstance=new window.Swiper(swiperRef.current,swiperConfig);console.log(`✅ ${instanceId} Swiper instance created:`,{centeredSlides:swiperInstance.params.centeredSlides,slidesPerView:swiperInstance.params.slidesPerView,width:swiperInstance.width});// Add custom arrow handlers for poster mode\nif(isPosterMode&&props.arrows.showArrows){const nextButton=document.querySelector(`.${uniqueNextClass}`);const prevButton=document.querySelector(`.${uniquePrevClass}`);if(nextButton&&prevButton){nextButton.addEventListener(\"click\",()=>{console.log(`🖱️ ${instanceId} Next arrow clicked`);handleNavigation(\"right\");});prevButton.addEventListener(\"click\",()=>{console.log(`🖱️ ${instanceId} Prev arrow clicked`);handleNavigation(\"left\");});console.log(`✅ ${instanceId} Custom arrow handlers attached`);}else{console.warn(`⚠️ ${instanceId} Arrow buttons not found`,{nextButton:!!nextButton,prevButton:!!prevButton});}}if(props.clickToNavigate&&!isPosterMode){// Click to navigate - only for non-poster modes\n// (poster mode has no drag anyway, use arrows instead)\nswiperInstance.on(\"click\",(swiper,event)=>{try{const rect=swiper.el.getBoundingClientRect();const clickX=event.clientX-rect.left;const centerX=rect.width/2;if(clickX>centerX){swiper.slideNext();}else{swiper.slidePrev();}}catch(error){console.error(`❌ Click navigation error in ${instanceId}:`,error);}});}// Fix duplicate margins in aspect ratio loop mode\nif(isAspectRatioMode&&effectiveLoop){const fixDuplicateMargins=()=>{const duplicates=swiperInstance.el.querySelectorAll(\".swiper-slide-duplicate\");duplicates.forEach(dup=>{dup.style.marginRight=\"0px\";dup.style.marginLeft=\"0px\";});};// Run on init, update, and slide change\nfixDuplicateMargins();swiperInstance.on(\"slideChange\",fixDuplicateMargins);swiperInstance.on(\"update\",fixDuplicateMargins);}swiperInstance.on(\"slideChange\",()=>{console.log(`📱 ${instanceId} slide changed:`,{activeIndex:swiperInstance.activeIndex,realIndex:swiperInstance.realIndex,isBeginning:swiperInstance.isBeginning,isEnd:swiperInstance.isEnd,totalSlides:swiperInstance.slides.length,loop:swiperInstance.params.loop,slidesPerView:swiperInstance.params.slidesPerView,visibleSlides:swiperInstance.visibleSlides?.length,autoplay:swiperInstance.autoplay?.running});// Animate autoplay progress from 0 to 1\nif(props.autoplay&&props.exposeAutoplayProgress){// Cancel any existing animation\nif(progressAnimationRef.current){progressAnimationRef.current.stop();}// Reset to 0\nautoplayProgress.set(0);// Animate to 1 over the autoplay duration\nprogressAnimationRef.current=animate(autoplayProgress,1,{duration:props.autoplayDelay/1e3,ease:\"linear\"});console.log(`📊 ${instanceId} Starting autoplay progress animation (${props.autoplayDelay}ms)`);}// If we've reached the end and loop is enabled, something's wrong\nif(swiperInstance.isEnd&&swiperInstance.params.loop){console.warn(`⚠️ ${instanceId} Reached end despite loop being enabled! This shouldn't happen.`,{loop:swiperInstance.params.loop,slides:swiperInstance.slides.length,slidesPerView:swiperInstance.params.slidesPerView});}// Fallback: If we've reached the end despite loop being requested, manually loop back\n// This happens when Swiper disables loop due to insufficient slides\nif(swiperInstance.isEnd&&props.loop&&props.autoplay){// Clear any existing timeout to prevent duplicates\nif(manualLoopTimeoutRef.current){clearTimeout(manualLoopTimeoutRef.current);}console.log(`🔄 ${instanceId} Manual loop: reached end, scheduling loop back in ${props.autoplayDelay}ms`);// With autoplay, wait for the autoplay delay then loop\nmanualLoopTimeoutRef.current=setTimeout(()=>{console.log(`🔄 ${instanceId} Executing manual loop to slide 0`);swiperInstance.slideTo(0,300)// Smooth transition\n;manualLoopTimeoutRef.current=null;},props.autoplayDelay);}});swiperInstance.on(\"slideChangeTransitionStart\",()=>{console.log(`🎬 ${instanceId} slide transition started`,{from:swiperInstance.previousIndex,to:swiperInstance.activeIndex});});swiperInstance.on(\"slideChangeTransitionEnd\",()=>{console.log(`✅ ${instanceId} slide transition ended`,{activeIndex:swiperInstance.activeIndex});});if(showDots){setTimeout(()=>{const paginationEl=document.querySelector(`.${uniquePaginationClass}`);const bullets=document.querySelectorAll(`.${uniqueBulletClass}`);console.log(`🔍 ${instanceId} Post-init pagination:`,{paginationEl:paginationEl,paginationHTML:paginationEl?.innerHTML,bulletsCount:bullets.length,swiperPagination:swiperInstance.pagination,paginationEnabled:swiperInstance.pagination?.enabled});},100);}setSwiper(swiperInstance);console.log(`✅ ${instanceId} Swiper initialized successfully`);}catch(error){console.error(`❌ ${instanceId} Swiper initialization failed:`,error);setTimeout(()=>{if(typeof window!==\"undefined\"&&window.Swiper&&swiperRef.current&&!swiper){console.log(`🔄 ${instanceId} Retrying Swiper initialization...`);initializeSwiper();}},500);}};let retryCount=0;const maxRetries=10;const tryInit=()=>{if(typeof window!==\"undefined\"&&window.Swiper&&swiperRef.current){initializeSwiper();}else if(retryCount<maxRetries){retryCount++;console.log(`🔄 ${instanceId} Retry ${retryCount}/${maxRetries} - waiting for Swiper...`);setTimeout(tryInit,100*retryCount);}else{console.error(`❌ ${instanceId} Failed to initialize after ${maxRetries} retries`);}};tryInit();},[arrangedChildren,props.loop,props.spaceBetween,props.showDots,props.arrows.showArrows,props.centeredSlides,props.widthColumns,props.widthMode,props.maxWidth,props.effectEnabled,props.activeScale,props.inactiveOpacity,props.inactiveScale,props.coverflowEffect,props.slideOverlap,props.autoplay,props.autoplayDelay,props.crossfade,props.enableDrag,props.clickToNavigate,instanceId,effectiveLoop,props.initialIndex,props.dotSize,props.dotGap,props.dotContainerPadding]);useEffect(()=>{if(typeof window===\"undefined\"||typeof document===\"undefined\")return;console.log(`🔍 ${instanceId} Navigation check:`,{storeDirection:store?.direction,storeButtonMap:store?.buttonMap,propsButtonMap:props.buttonMap,swiperReady:!!swiperRef.current?.swiper,matches:store?.buttonMap===props.buttonMap});if(store?.direction&&store?.buttonMap===props.buttonMap&&swiperRef.current?.swiper){console.log(`✅ ${instanceId} Executing navigation: ${store.direction}`);handleNavigation(store.direction);}if(localNavigation.direction&&Date.now()-localNavigation.timestamp<1e3){handleNavigation(localNavigation.direction);setLocalNavigation({direction:null,timestamp:0});}},[store,props.buttonMap,handleNavigation,localNavigation]);useEffect(()=>{if(typeof window===\"undefined\"||typeof document===\"undefined\")return;const leftFuncName=`testCarouselLeft_${instanceId}`;const rightFuncName=`testCarouselRight_${instanceId}`;const debugFuncName=`debugSwiper_${instanceId}`;const progressFuncName=`getAutoplayProgress_${instanceId}`;window[leftFuncName]=()=>{console.log(`🧪 ${instanceId} testing left navigation`);setLocalNavigation({direction:\"left\",timestamp:Date.now()});};window[rightFuncName]=()=>{console.log(`🧪 ${instanceId} testing right navigation`);setLocalNavigation({direction:\"right\",timestamp:Date.now()});};// Expose autoplayProgress MotionValue\nif(props.exposeAutoplayProgress){window[progressFuncName]=()=>autoplayProgress;console.log(`📊 ${instanceId} Exposed autoplayProgress via window.${progressFuncName}()`);}window[debugFuncName]=()=>{if(swiperRef.current?.swiper){console.log(`🔍 ${instanceId} swiper state:`,{activeIndex:swiperRef.current.swiper.activeIndex,realIndex:swiperRef.current.swiper.realIndex,isEnd:swiperRef.current.swiper.isEnd,isBeginning:swiperRef.current.swiper.isBeginning,loop:swiperRef.current.swiper.params.loop,slidesLength:swiperRef.current.swiper.slides.length,// LOOP DEBUGGING:\npropsLoop:props.loop,effectiveLoop:effectiveLoop,canNavigateNext:!swiperRef.current.swiper.isEnd||swiperRef.current.swiper.params.loop,canNavigatePrev:!swiperRef.current.swiper.isBeginning||swiperRef.current.swiper.params.loop});}};console.log(`🔧 Created test functions for ${instanceId}`);return()=>{delete window[leftFuncName];delete window[rightFuncName];delete window[debugFuncName];delete window[progressFuncName];// Clean up manual loop timeout\nif(manualLoopTimeoutRef.current){clearTimeout(manualLoopTimeoutRef.current);manualLoopTimeoutRef.current=null;}// Clean up progress animation\nif(progressAnimationRef.current){progressAnimationRef.current.stop();progressAnimationRef.current=null;}console.log(`🗑️ Cleaned up test functions for ${instanceId}`);};},[instanceId,effectiveLoop,props.loop,props.exposeAutoplayProgress]);// Custom autoplay for poster mode with loop\nuseEffect(()=>{if(typeof window===\"undefined\")return;const isPosterMode=props.widthMode===\"maxWidth\";const posterCrossfade=isPosterMode&&props.crossfade;console.log(`⏰ ${instanceId} Autoplay check:`,{autoplay:props.autoplay,posterCrossfade,loop:props.loop});if(!props.autoplay||!posterCrossfade){// Clear any existing interval if autoplay is disabled\nif(autoplayIntervalRef.current){clearInterval(autoplayIntervalRef.current);autoplayIntervalRef.current=null;console.log(`🛑 ${instanceId} Autoplay disabled, clearing interval`);}return;}// Prevent starting multiple intervals\nif(autoplayIntervalRef.current){console.log(`⏭️ ${instanceId} Autoplay already running, skipping initialization`);return;}const slideCount=React.Children.count(props.children);// Start from the initial index\nlet currentSlideIndex=props.initialIndex||0;currentSlideIndex=Math.min(currentSlideIndex,slideCount-1);// Wait for DOM to be ready, then start autoplay\nconst startTimeout=setTimeout(()=>{console.log(`⏰ ${instanceId} Starting poster crossfade autoplay (delay: ${props.autoplayDelay}ms, slides: ${slideCount}, starting at: ${currentSlideIndex})`);console.log(`⏰ ${instanceId} Slide ${currentSlideIndex} will show for ${props.autoplayDelay}ms before transitioning`);// First transition happens AFTER the initial delay (so slide 0 is shown for full duration)\nautoplayIntervalRef.current=setInterval(()=>{// Calculate next slide index\nconst nextIndex=props.loop?(currentSlideIndex+1)%slideCount:Math.min(currentSlideIndex+1,slideCount-1);console.log(`⏰ ${instanceId} Crossfade transition: ${currentSlideIndex} → ${nextIndex} at ${Date.now()}`);// Find all slides for this carousel using data attribute\nconst slides=document.querySelectorAll(`[data-carousel-id=\"${instanceId}\"] .swiper-slide`);if(slides.length===0){console.warn(`⚠️ ${instanceId} No slides found in DOM`);return;}console.log(`🎯 ${instanceId} Found ${slides.length} slides`);// Remove active class from all slides\nslides.forEach((slide,index)=>{slide.classList.remove(\"swiper-slide-active\");slide.classList.remove(\"swiper-slide-prev\");slide.classList.remove(\"swiper-slide-next\");if(index===nextIndex){slide.classList.add(\"swiper-slide-active\");console.log(`✅ ${instanceId} Activated slide ${index}`);}});currentSlideIndex=nextIndex;// If not looping and at the end, stop autoplay\nif(!props.loop&&currentSlideIndex===slideCount-1){console.log(`⏰ ${instanceId} Reached end, stopping autoplay`);if(autoplayIntervalRef.current){clearInterval(autoplayIntervalRef.current);autoplayIntervalRef.current=null;}}},props.autoplayDelay);console.log(`✅ ${instanceId} Poster crossfade autoplay started (ID: ${autoplayIntervalRef.current}) at ${Date.now()}`);},1e3)// Increased delay to ensure stable initialization\n;return()=>{console.log(`🧹 ${instanceId} Cleaning up poster crossfade autoplay`);clearTimeout(startTimeout);if(autoplayIntervalRef.current){clearInterval(autoplayIntervalRef.current);autoplayIntervalRef.current=null;console.log(`⏰ ${instanceId} Poster crossfade autoplay stopped`);}};},[props.autoplay,props.autoplayDelay,props.widthMode,props.crossfade,props.loop,props.children,instanceId,props.initialIndex]);// Video preloading effect\nuseEffect(()=>{if(typeof window===\"undefined\"||!swiper)return;const preloadVideos=()=>{const slides=swiper.slides;const currentIndex=swiper.activeIndex;const slideCount=slides.length;// Preload current slide + 1 slide on each side\nconst indicesToPreload=[currentIndex-1,currentIndex,currentIndex+1].filter(i=>i>=0&&i<slideCount);console.log(`📹 ${instanceId} Preloading videos for slides:`,indicesToPreload);indicesToPreload.forEach(index=>{const slide=slides[index];if(!slide)return;// Find all video elements in this slide\nconst videos=slide.querySelectorAll(\"video\");videos.forEach(video=>{// Set preload attribute\nif(!video.hasAttribute(\"preload\")){video.setAttribute(\"preload\",\"auto\");}// Trigger load if not already loading\nif(video.readyState===0){video.load();console.log(`📹 ${instanceId} Triggered load for video in slide ${index}`);}});});};// Preload immediately\npreloadVideos();// Preload on slide change\nswiper.on(\"slideChange\",preloadVideos);return()=>{if(swiper){swiper.off(\"slideChange\",preloadVideos);}};},[swiper,instanceId]);// Simplified resize handler\nuseEffect(()=>{if(typeof window===\"undefined\")return;const handleResize=()=>{if(resizeTimeoutRef.current){clearTimeout(resizeTimeoutRef.current);}resizeTimeoutRef.current=setTimeout(()=>{if(swiper){swiper.update();console.log(`📏 ${instanceId} Swiper updated on resize`);}},150);};window.addEventListener(\"resize\",handleResize);return()=>{window.removeEventListener(\"resize\",handleResize);if(resizeTimeoutRef.current){clearTimeout(resizeTimeoutRef.current);}};},[swiper,instanceId]);// Destructure props AFTER all hooks\nconst{children,loop,spaceBetween,showDots,dotContainerColor,dotContainerBlur,activeDotColor,inactiveDotColor,dotSize,dotGap,dotContainerPadding,paddingPerSide,padding,paddingTop,paddingRight,paddingBottom,paddingLeft,paginationInset,arrows,keyboardControl,centeredSlides,widthMode,widthColumns,maxWidth,effectEnabled,activeScale,inactiveOpacity,inactiveScale,coverflowEffect,slideOverlap,heightType,heightInset,heightRows,autoplay,autoplayDelay,crossfade,enableDrag,clickToNavigate,buttonMap,initialIndex,variantEffects={}}=props;const{defaultVariantName=\"Default\",activeVariantName=\"Active\"}=variantEffects;// Safe store access AFTER all hooks\nconst safeStore=store||{direction:null,buttonMap:null};if(!isClient)return null;const wrapperHeight=getWrapperHeight();const containerHeight=getContainerHeight();// Debug poster mode\nconsole.log(`🎨 ${instanceId} Render:`,{widthMode:props.widthMode,isPosterMode:props.widthMode===\"maxWidth\",maxWidth:props.maxWidth,centeredSlides:props.centeredSlides,effectiveLoop:effectiveLoop});// Wrapper style - inherits from Framer parent\nconst wrapperStyle={width:\"100%\",height:wrapperHeight,display:\"flex\",flexDirection:\"column\",position:\"relative\"};// Container style - applies insets and handles overflow\nconst containerStyle={width:\"100%\",height:containerHeight,position:\"relative\",overflow:props.allowOverflow?\"visible\":\"hidden\",minHeight:props.heightType===\"auto\"?\"200px\":undefined};const appliedPadding=paddingPerSide?{paddingTop:paddingTop,paddingRight:paddingRight,paddingBottom:paddingBottom,paddingLeft:paddingLeft}:{padding:padding};// Get live Swiper state for arrow visibility\nconst currentSwiper=swiperRef.current?.swiper;const isPosterMode=props.widthMode===\"maxWidth\";const posterWithLoop=isPosterMode&&props.loop;// When loop is requested (even if Swiper disables it), always show arrows\n// This allows manual loop navigation\nconst currentIsAtBeginning=props.loop?false:currentSwiper?.isBeginning??true;const currentIsAtEnd=props.loop?false:currentSwiper?.isEnd??false;// Debug data attributes\nconst dataWidthMode=props.widthMode;const dataHeightMode=props.heightType;console.log(`🏷️ ${instanceId} Data attributes:`,{\"data-width-mode\":dataWidthMode,\"data-height-mode\":dataHeightMode});const isPosterCrossfade=props.widthMode===\"maxWidth\"&&props.crossfade;console.log(`🎞️ ${instanceId} Poster Crossfade Mode:`,{isPosterCrossfade,widthMode:props.widthMode,crossfade:props.crossfade,willApplyClass:isPosterCrossfade?\"poster-crossfade\":\"none\"});return /*#__PURE__*/_jsx(\"div\",{style:wrapperStyle,children:/*#__PURE__*/_jsxs(\"div\",{className:`${getUniqueClass(\"swiper-container\")} ${arrows.showArrows?getUniqueClass(\"hover-arrows\"):\"\"} ${props.allowOverflow?\"allow-overflow\":\"\"} ${isPosterCrossfade?\"poster-crossfade\":\"\"}`,ref:swiperRef,style:{...containerStyle,...appliedPadding},\"data-carousel-id\":instanceId,\"data-width-mode\":dataWidthMode,\"data-height-mode\":dataHeightMode,children:[isPlaceholder?/*#__PURE__*/_jsx(ConnectToContent,{}):/*#__PURE__*/_jsxs(_Fragment,{children:[/*#__PURE__*/_jsx(\"div\",{className:\"swiper-wrapper\",style:{display:\"flex\",flexDirection:\"row\",alignItems:\"flex-start\",height:\"100%\",width:\"100%\",pointerEvents:\"auto\"},children:React.Children.map(children,(child,index)=>{// When loop is enabled, use realIndex to determine active slide\n// Otherwise use activeSlideIndex\nconst isActive=effectiveLoop?index===activeRealIndex:index===activeSlideIndex;if(!/*#__PURE__*/React.isValidElement(child)){console.warn(`⚠️ ${instanceId} Slide ${index} is not a valid React element`,child);return null;}// Log first render to verify all children are present\nif(index===0){console.log(`🎬 ${instanceId} Rendering ${React.Children.count(children)} slides (activeRealIndex: ${activeRealIndex}, effectiveLoop: ${effectiveLoop})`);}// Variant logic\nlet finalChild=child;const shouldApplyVariants=props.enableVariantEffects&&(props.centeredSlides||props.widthMode===\"maxWidth\");if(shouldApplyVariants){try{const variant=isActive?activeVariantName:defaultVariantName;// Clone with variant and optionally inject progress\nif(props.exposeAutoplayProgress&&isActive){// Pass both variant and autoplayProgress to active slide\nfinalChild=/*#__PURE__*/React.cloneElement(injectVariantDeep(child,variant),{autoplayProgress});}else{finalChild=injectVariantDeep(child,variant);}// Debug variant application\nif(isActive){console.log(`🎭 ${instanceId} Slide ${index} variant: ${variant} (isActive: ${isActive}, hasProgress: ${props.exposeAutoplayProgress})`);}}catch(error){console.error(`❌ Variant injection failed for slide ${index}:`,error);finalChild=child;}}else if(props.exposeAutoplayProgress&&isActive){// Even without variants, pass progress to active slide\ntry{finalChild=/*#__PURE__*/React.cloneElement(child,{autoplayProgress});}catch(error){console.error(`❌ Failed to pass autoplayProgress to slide ${index}:`,error);finalChild=child;}}const isFillHeight=props.heightType===\"stretch\"||props.heightType===\"rows\";const isAutoWidth=props.widthMode===\"aspectRatio\"||props.widthMode===\"maxWidth\";const slideStyles={borderRadius:props.borderRadius,overflow:props.allowOverflow?\"visible\":\"hidden\",height:isFillHeight?\"100%\":\"auto\",display:\"flex\",flexDirection:\"column\",pointerEvents:\"auto\",...isAutoWidth&&{width:\"auto\",flexShrink:0},...props.widthMode===\"maxWidth\"&&{maxWidth:`${props.maxWidth}px`}};// Debug first slide in poster mode\nif(index===0&&props.widthMode===\"maxWidth\"){console.log(`🎞️ ${instanceId} Slide 0 styles (POSTER):`,{slideStyles,maxWidth:props.maxWidth,isAutoWidth});}const childWrapperStyles={width:isAutoWidth?\"auto\":\"100%\",height:isFillHeight?\"100%\":\"auto\",display:\"flex\",flexDirection:\"column\",pointerEvents:\"auto\",flex:isFillHeight?\"1 1 100%\":\"0 0 auto\"};// Clone the child with height styles to make it fill\nconst styledChild=/*#__PURE__*/React.cloneElement(finalChild,{style:{...finalChild.props.style,width:\"100%\",height:isFillHeight?\"100%\":finalChild.props.style?.height||\"auto\",flex:isFillHeight?\"1 1 100%\":undefined}});// In poster crossfade mode, manually set first slide as active\nconst slideClassName=isPosterCrossfade&&index===0?\"swiper-slide swiper-slide-active\":\"swiper-slide\";return /*#__PURE__*/_jsx(\"div\",{className:slideClassName,style:slideStyles,children:/*#__PURE__*/_jsx(\"div\",{style:childWrapperStyles,children:styledChild})},index);})}),/*#__PURE__*/_jsx(\"div\",{className:getUniqueClass(\"swiper-pagination\"),style:{position:\"absolute\",bottom:paginationInset,left:\"50%\",transform:\"translateX(-50%)\",background:showDots?dotContainerColor:\"transparent\",padding:showDots?`${dotContainerPadding}px`:\"0px\",backdropFilter:showDots?`blur(${dotContainerBlur}px)`:\"none\",zIndex:1e3,visibility:showDots?\"visible\":\"hidden\",minHeight:showDots?\"auto\":\"20px\"}}),/*#__PURE__*/_jsx(\"div\",{className:`${getUniqueClass(\"swiper-button-prev\")} ${getUniqueClass(\"custom-swiper-button\")}`,style:{left:arrows.arrowInset,display:arrows.showArrows&&(effectiveLoop||!currentIsAtBeginning)?\"flex\":\"none\",visibility:arrows.showArrows?\"visible\":\"hidden\"},children:/*#__PURE__*/_jsx(\"i\",{className:`ph-${arrows.iconType===\"caret\"?\"caret-left\":\"arrow-left\"}`,style:{color:arrows.iconColor,fontSize:arrows.iconSize,fontWeight:arrows.iconWeight}})}),/*#__PURE__*/_jsx(\"div\",{className:`${getUniqueClass(\"swiper-button-next\")} ${getUniqueClass(\"custom-swiper-button\")}`,style:{right:arrows.arrowInset,display:arrows.showArrows&&(effectiveLoop||!currentIsAtEnd)?\"flex\":\"none\",visibility:arrows.showArrows?\"visible\":\"hidden\"},children:/*#__PURE__*/_jsx(\"i\",{className:`ph-${arrows.iconType===\"caret\"?\"caret-right\":\"arrow-right\"}`,style:{color:arrows.iconColor,fontSize:arrows.iconSize,fontWeight:arrows.iconWeight}})})]}),/*#__PURE__*/_jsx(\"style\",{jsx:true,children:`\n                .${getUniqueClass(\"swiper-container\")} {\n                    --swiper-navigation-size: 0px !important;\n                }\n                \n                /* Smooth ease-in-out transitions for slides (500ms) */\n                .${getUniqueClass(\"swiper-container\")} .swiper-wrapper {\n                    transition-timing-function: cubic-bezier(0.45, 0, 0.55, 1) !important; /* Smooth ease-in-out */\n                }\n                \n                .${getUniqueClass(\"swiper-container\")} .swiper-slide {\n                    transition-timing-function: cubic-bezier(0.45, 0, 0.55, 1) !important; /* Smooth ease-in-out */\n                }\n                \n                /* Poster mode specific positioning */\n                .${getUniqueClass(\"swiper-container\")}[data-width-mode=\"maxWidth\"] {\n                    width: 100%;\n                    position: relative;\n                }\n                \n                .${getUniqueClass(\"swiper-container\")}[data-width-mode=\"maxWidth\"] .swiper-wrapper {\n                    align-items: center;\n                }\n                \n                /* Prevent dragging content in poster mode */\n                .${getUniqueClass(\"swiper-container\")}[data-width-mode=\"maxWidth\"] img,\n                .${getUniqueClass(\"swiper-container\")}[data-width-mode=\"maxWidth\"] video {\n                    -webkit-user-drag: none;\n                    -khtml-user-drag: none;\n                    -moz-user-drag: none;\n                    -o-user-drag: none;\n                    user-drag: none;\n                    pointer-events: none;\n                }\n                \n                .${getUniqueClass(\"swiper-container\")}[data-width-mode=\"maxWidth\"] .swiper-slide {\n                    user-select: none;\n                    -webkit-user-select: none;\n                    -moz-user-select: none;\n                    -ms-user-select: none;\n                }\n                \n                /* Poster Crossfade - Stack slides absolutely */\n                .${getUniqueClass(\"swiper-container\")}.poster-crossfade .swiper-wrapper {\n                    position: relative !important;\n                    display: flex !important;\n                    align-items: center !important;\n                    justify-content: center !important;\n                    transform: none !important; /* Override Swiper's translate3d */\n                }\n                \n                .${getUniqueClass(\"swiper-container\")}.poster-crossfade .swiper-slide {\n                    position: absolute !important;\n                    left: 50% !important;\n                    top: 50% !important;\n                    transform: translate(-50%, -50%) !important;\n                    transition: opacity 400ms ease-in-out, z-index 0ms !important;\n                    margin: 0 !important; /* Remove any margins */\n                }\n                \n                .${getUniqueClass(\"swiper-container\")}.poster-crossfade .swiper-slide-active {\n                    z-index: 2 !important;\n                    opacity: 1 !important;\n                }\n                \n                .${getUniqueClass(\"swiper-container\")}.poster-crossfade .swiper-slide:not(.swiper-slide-active) {\n                    z-index: 1 !important;\n                    opacity: 0 !important;\n                    pointer-events: none !important;\n                }\n                \n                /* Disable Swiper's default slide transitions in poster crossfade */\n                .${getUniqueClass(\"swiper-container\")}.poster-crossfade .swiper-slide.swiper-slide-prev,\n                .${getUniqueClass(\"swiper-container\")}.poster-crossfade .swiper-slide.swiper-slide-next {\n                    z-index: 1 !important;\n                    opacity: 0 !important;\n                }\n                \n                /* Handle loop duplicates in poster crossfade */\n                .${getUniqueClass(\"swiper-container\")}.poster-crossfade .swiper-slide-duplicate {\n                    position: absolute !important;\n                    left: 50% !important;\n                    top: 50% !important;\n                    transform: translate(-50%, -50%) !important;\n                }\n                \n                .${getUniqueClass(\"swiper-container\")}.poster-crossfade .swiper-slide-duplicate:not(.swiper-slide-active) {\n                    opacity: 0 !important;\n                    z-index: 0 !important;\n                }\n                \n                /* Height inheritance for stretch and rows modes only */\n                .${getUniqueClass(\"swiper-container\")}[data-height-mode=\"stretch\"],\n                .${getUniqueClass(\"swiper-container\")}[data-height-mode=\"rows\"] {\n                    height: 100%;\n                }\n                \n                .${getUniqueClass(\"swiper-container\")}[data-height-mode=\"stretch\"] .swiper-wrapper,\n                .${getUniqueClass(\"swiper-container\")}[data-height-mode=\"rows\"] .swiper-wrapper {\n                    height: 100%;\n                }\n                \n                .${getUniqueClass(\"swiper-container\")}[data-height-mode=\"stretch\"] .swiper-slide,\n                .${getUniqueClass(\"swiper-container\")}[data-height-mode=\"rows\"] .swiper-slide {\n                    height: 100%;\n                    display: flex;\n                    flex-direction: column;\n                }\n                \n                .${getUniqueClass(\"swiper-container\")}[data-height-mode=\"stretch\"] .swiper-slide > *,\n                .${getUniqueClass(\"swiper-container\")}[data-height-mode=\"rows\"] .swiper-slide > * {\n                    height: 100%;\n                    flex: 1 1 100%;\n                }\n                \n                .${getUniqueClass(\"swiper-container\")}[data-height-mode=\"stretch\"] .swiper-slide > * > *,\n                .${getUniqueClass(\"swiper-container\")}[data-height-mode=\"rows\"] .swiper-slide > * > * {\n                    height: 100%;\n                }\n                \n                /* Allow overflow when enabled */\n                .${getUniqueClass(\"swiper-container\")}.allow-overflow,\n                .${getUniqueClass(\"swiper-container\")}.allow-overflow .swiper-wrapper,\n                .${getUniqueClass(\"swiper-container\")}.allow-overflow .swiper-slide {\n                    overflow: visible !important;\n                }\n                \n                /* Ensure pointer events work throughout */\n                .${getUniqueClass(\"swiper-container\")},\n                .${getUniqueClass(\"swiper-container\")} .swiper-wrapper,\n                .${getUniqueClass(\"swiper-container\")} .swiper-slide,\n                .${getUniqueClass(\"swiper-container\")} .swiper-slide > * {\n                    pointer-events: auto !important;\n                }\n                \n                /* Aspect Ratio Mode Styles */\n                .${getUniqueClass(\"swiper-container\")}[data-width-mode=\"aspectRatio\"] .swiper-slide {\n                    width: auto !important; /* Let slides size naturally */\n                    flex-shrink: 0 !important; /* Prevent shrinking */\n                }\n                \n                .${getUniqueClass(\"swiper-container\")}[data-width-mode=\"aspectRatio\"] .swiper-slide > * {\n                    width: auto !important; /* Let content maintain natural width */\n                    height: 100% !important; /* Fill slide height */\n                    object-fit: contain !important; /* Maintain aspect ratio */\n                }\n                \n                /* Fix duplicate margin issue in loop mode for aspect ratio */\n                /* Only remove margins from duplicate slides to prevent double spacing */\n                .${getUniqueClass(\"swiper-container\")}[data-width-mode=\"aspectRatio\"] .swiper-slide-duplicate {\n                    margin-right: 0 !important;\n                    margin-left: 0 !important;\n                }\n                \n                /* Max Width Mode Styles */\n                .${getUniqueClass(\"swiper-container\")}[data-width-mode=\"maxWidth\"] .swiper-slide {\n                    width: auto !important; /* Let slides size naturally */\n                    flex-shrink: 0 !important; /* Prevent shrinking */\n                    max-width: ${props.maxWidth}px !important; /* Limit to max width */\n                }\n                \n                .${getUniqueClass(\"swiper-container\")}[data-width-mode=\"maxWidth\"] .swiper-slide > * {\n                    width: 100% !important; /* Fill slide width */\n                    max-width: ${props.maxWidth}px !important; /* Respect max width */\n                    display: flex !important;\n                    justify-content: center !important;\n                    align-items: center !important;\n                }\n                \n                /* Columns Mode Styles */\n                .${getUniqueClass(\"swiper-container\")}[data-width-mode=\"columns\"] .swiper-slide {\n                    width: calc((100% - ${(props.widthColumns-1)*props.spaceBetween}px) / ${props.widthColumns}) !important;\n                }\n                \n                /* Pagination container */\n                .${getUniqueClass(\"swiper-pagination\")} {\n                    bottom: ${paginationInset} !important;\n                    background: ${dotContainerColor} !important;\n                    border-radius: 20px !important;\n                    padding: ${dotContainerPadding}px !important;\n                    backdrop-filter: blur(${dotContainerBlur}px) !important;\n                    width: auto !important;\n                    left: 50% !important;\n                    transform: translateX(-50%) !important;\n                    min-height: auto !important;\n                    min-width: auto !important;\n                    z-index: 1000 !important;\n                }\n                /* Target the EXACT bullet classes that Swiper generates */\n                .${getUniqueClass(\"swiper-pagination-bullet\")} {\n                    background: ${inactiveDotColor} !important;\n                    width: ${dotSize}px !important;\n                    height: ${dotSize}px !important;\n                    margin: 0 ${dotGap}px !important;\n                    opacity: 1 !important;\n                    border-radius: 50% !important;\n                    display: inline-block !important;\n                    cursor: pointer !important;\n                }\n                .${getUniqueClass(\"swiper-pagination-bullet-active\")} {\n                    background: ${activeDotColor} !important;\n                }\n                /* Also add the standard Swiper classes as backup */\n                .${getUniqueClass(\"swiper-pagination\")} .swiper-pagination-bullet {\n                    background: ${inactiveDotColor} !important;\n                    width: ${dotSize}px !important;\n                    height: ${dotSize}px !important;\n                    margin: 0 ${dotGap}px !important;\n                    opacity: 1 !important;\n                    border-radius: 50% !important;\n                    display: inline-block !important;\n                    cursor: pointer !important;\n                }\n                .${getUniqueClass(\"swiper-pagination\")} .swiper-pagination-bullet-active {\n                    background: ${activeDotColor} !important;\n                }\n                .${getUniqueClass(\"swiper-button-prev\")},\n                .${getUniqueClass(\"swiper-button-next\")} {\n                    background: rgba(0, 0, 0, 0.2);\n                    backdrop-filter: blur(4px);\n                    cursor: pointer;\n                    position: absolute;\n                    top: 50%;\n                    transform: translateY(-50%);\n                    width: 48px;\n                    height: 48px;\n                    border-radius: 50%;\n                    display: flex;\n                    align-items: center;\n                    justify-content: center;\n                    z-index: 10;\n                    opacity: ${arrows.arrowsOnHover?0:1};\n                    transition: opacity 0.3s, transform 0.15s ease-out;\n                }\n                \n                .${getUniqueClass(\"swiper-button-prev\")}:active,\n                .${getUniqueClass(\"swiper-button-next\")}:active {\n                    transform: translateY(-50%) scale(0.95);\n                }\n                .${getUniqueClass(\"hover-arrows\")} .${getUniqueClass(\"swiper-button-prev\")},\n                .${getUniqueClass(\"hover-arrows\")} .${getUniqueClass(\"swiper-button-next\")} {\n                    opacity: 0;\n                }\n                .${getUniqueClass(\"hover-arrows\")}:hover .${getUniqueClass(\"swiper-button-prev\")},\n                .${getUniqueClass(\"hover-arrows\")}:hover .${getUniqueClass(\"swiper-button-next\")} {\n                    opacity: 1;\n                }\n                .${getUniqueClass(\"swiper-button-prev\")} i,\n                .${getUniqueClass(\"swiper-button-next\")} i {\n                    width: 100%;\n                    height: 100%;\n                    display: flex;\n                    align-items: center;\n                    justify-content: center;\n                }\n                .${getUniqueClass(\"swiper-button-disabled\")} {\n                    display: none;\n                }\n                .${getUniqueClass(\"swiper-button-next\")}::after,\n                .${getUniqueClass(\"swiper-button-prev\")}::after {\n                    display: none;\n                }\n            `})]})});}// Keep the same defaultProps and property controls\nAdvancedSwiperCarousel.defaultProps={heightType:\"stretch\",heightInset:0,heightRows:2,widthMode:\"columns\",widthColumns:2,maxWidth:400,loop:true,spaceBetween:10,showDots:false,dotContainerColor:\"rgba(0, 0, 0, 0.2)\",dotContainerBlur:5,activeDotColor:\"white\",inactiveDotColor:\"rgba(255, 255, 255, 0.5)\",dotSize:10,dotGap:4,dotContainerPadding:8,children:[],padding:0,paddingPerSide:false,paddingTop:0,paddingRight:0,paddingBottom:0,paddingLeft:0,paginationInset:\"10px\",arrows:{showArrows:true,arrowsOnHover:false,iconType:\"caret\",iconColor:\"#ffffff\",iconSize:24,iconWeight:\"regular\",arrowInset:\"10px\"},keyboardControl:false,centeredSlides:false,effectEnabled:false,activeScale:1,inactiveOpacity:.4,inactiveScale:.85,coverflowEffect:false,slideOverlap:100,autoplay:false,autoplayDelay:3e3,exposeAutoplayProgress:false,crossfade:false,enableDrag:true,clickToNavigate:false,buttonMap:1,initialIndex:0,allowOverflow:false,borderRadius:0,variantEffects:{defaultVariantName:\"Default\",activeVariantName:\"Active\"}};addPropertyControls(AdvancedSwiperCarousel,{children:{type:ControlType.Array,title:\"Children\",propertyControl:{type:ControlType.ComponentInstance}},heightType:{type:ControlType.Enum,title:\"Height\",options:[\"auto\",\"stretch\",\"rows\"],optionTitles:[\"Auto (Fit Content)\",\"Stretch (Fill Height)\",\"Rows\"],defaultValue:\"stretch\"},heightInset:{type:ControlType.Number,title:\"Height Inset\",min:0,max:500,hidden:props=>props.heightType===\"auto\",defaultValue:0,description:\"Reduce height by this amount (pixels)\"},heightRows:{type:ControlType.Number,title:\"Rows\",min:1,max:10,hidden:props=>props.heightType!==\"rows\",defaultValue:2},widthMode:{type:ControlType.Enum,title:\"Width Mode\",options:[\"columns\",\"aspectRatio\",\"maxWidth\"],optionTitles:[\"Columns\",\"Aspect Ratio\",\"Max Width (poster)\"],defaultValue:\"columns\"},widthColumns:{type:ControlType.Number,title:\"Columns\",defaultValue:2,min:1,max:10,displayStepper:true,hidden:props=>props.widthMode!==\"columns\"},maxWidth:{type:ControlType.Number,title:\"Max Width\",defaultValue:400,min:100,max:2e3,step:10,unit:\"px\",displayStepper:true,hidden:props=>props.widthMode!==\"maxWidth\",description:\"Maximum width for each slide (poster mode)\"},loop:{type:ControlType.Boolean,title:\"Loop\",defaultValue:true,hidden:props=>props.centeredSlides&&props.widthMode!==\"maxWidth\",description:\"Loop back to the beginning when the end is reached\"},spaceBetween:{type:ControlType.Number,title:\"Gap\",defaultValue:10},borderRadius:{type:ControlType.Number,title:\"Border Radius\",defaultValue:0,min:0,max:100,unit:\"px\",displayStepper:true},allowOverflow:{type:ControlType.Boolean,title:\"Allow Overflow\",defaultValue:false,description:\"Allow content to overflow the carousel bounds (useful for hover effects)\"},padding:{type:ControlType.FusedNumber,title:\"Padding\",defaultValue:0,toggleKey:\"paddingPerSide\",toggleTitles:[\"All\",\"Per Side\"],valueKeys:[\"paddingTop\",\"paddingRight\",\"paddingBottom\",\"paddingLeft\"],valueLabels:[\"Top\",\"Right\",\"Bottom\",\"Left\"],min:0},showDots:{type:ControlType.Boolean,title:\"Show Dots\",defaultValue:false},dotContainerColor:{type:ControlType.Color,title:\"Dot Container Background Color\",defaultValue:\"rgba(0, 0, 0, 0.2)\",hidden:props=>!props.showDots},dotContainerBlur:{type:ControlType.Number,title:\"Dot Container Background Blur\",defaultValue:5,min:1,max:50,hidden:props=>!props.showDots},activeDotColor:{type:ControlType.Color,title:\"Active Dot Color\",defaultValue:\"white\",hidden:props=>!props.showDots},inactiveDotColor:{type:ControlType.Color,title:\"Inactive Dot Color\",defaultValue:\"rgba(255, 255, 255, 0.5)\",hidden:props=>!props.showDots},dotSize:{type:ControlType.Number,title:\"Dot Size\",defaultValue:10,min:4,max:20,step:1,unit:\"px\",displayStepper:true,hidden:props=>!props.showDots},dotGap:{type:ControlType.Number,title:\"Dot Gap\",defaultValue:4,min:0,max:20,step:1,unit:\"px\",displayStepper:true,hidden:props=>!props.showDots},dotContainerPadding:{type:ControlType.Number,title:\"Container Padding\",defaultValue:8,min:4,max:20,step:1,unit:\"px\",displayStepper:true,hidden:props=>!props.showDots},paginationInset:{type:ControlType.FusedNumber,title:\"Pagination Inset\",defaultValue:10,toggleKey:\"isMixed\",toggleTitles:[\"All\",\"Individual\"],valueKeys:[\"top\",\"right\",\"bottom\",\"left\"],valueLabels:[\"Top\",\"Right\",\"Bottom\",\"Left\"],min:0,hidden:props=>!props.showDots},arrows:{type:ControlType.Object,title:\"Arrows\",controls:{showArrows:{type:ControlType.Boolean,title:\"Show Arrows\",defaultValue:true},arrowsOnHover:{type:ControlType.Boolean,title:\"Arrows on Hover\",defaultValue:false,hidden:props=>!props.arrows.showArrows},iconType:{type:ControlType.Enum,title:\"Icon Type\",options:[\"caret\",\"arrow\"],optionTitles:[\"Caret\",\"Arrow\"],defaultValue:\"caret\",hidden:props=>!props.arrows.showArrows},iconColor:{type:ControlType.Color,title:\"Icon Color\",defaultValue:\"#ffffff\",hidden:props=>!props.arrows.showArrows},iconSize:{type:ControlType.Number,title:\"Icon Size\",defaultValue:24,min:1,hidden:props=>!props.arrows.showArrows},iconWeight:{type:ControlType.Enum,title:\"Icon Weight\",options:[\"thin\",\"light\",\"regular\",\"bold\",\"fill\",\"duotone\"],optionTitles:[\"Thin\",\"Light\",\"Regular\",\"Bold\",\"Fill\",\"Duotone\"],defaultValue:\"regular\",hidden:props=>!props.arrows.showArrows},arrowInset:{type:ControlType.Number,title:\"Arrow Inset\",defaultValue:10,min:0,hidden:props=>!props.arrows.showArrows}}},keyboardControl:{type:ControlType.Boolean,title:\"Keyboard Control\",defaultValue:false},centeredSlides:{type:ControlType.Boolean,title:\"Centered Slides\",defaultValue:false,hidden:props=>props.widthMode===\"maxWidth\",description:\"Automatically enabled in Max Width (poster) mode\"},enableVariantEffects:{type:ControlType.Boolean,title:\"Enable Variant Effects\",defaultValue:false,hidden:props=>!props.centeredSlides&&props.widthMode!==\"maxWidth\"},variantEffects:{type:ControlType.Object,title:\"Variant Effects\",hidden:props=>!props.centeredSlides&&props.widthMode!==\"maxWidth\"||!props.enableVariantEffects,description:\"Apply variants to active/inactive slides. For smooth looping, use at least 6 slides (or duplicate existing slides).\",controls:{defaultVariantName:{type:ControlType.String,title:\"Default Variant\",defaultValue:\"Default\",placeholder:\"Default\",description:\"The variant to apply to inactive slides\"},activeVariantName:{type:ControlType.String,title:\"Active Variant\",defaultValue:\"Active\",placeholder:\"Active\",description:\"The variant to apply to the active slide\"}}},initialIndex:{type:ControlType.Number,title:\"Initial Slide\",defaultValue:0,min:0,displayStepper:true},effectEnabled:{type:ControlType.Boolean,title:\"Enable Effects\",defaultValue:false,hidden:props=>!props.centeredSlides&&props.widthMode!==\"maxWidth\"},activeScale:{type:ControlType.Number,title:\"Active Slide Scale\",defaultValue:1,min:.5,max:2,step:.01,displayStepper:true,hidden:props=>!props.effectEnabled||props.coverflowEffect||!props.centeredSlides&&props.widthMode!==\"maxWidth\"},inactiveOpacity:{type:ControlType.Number,title:\"Inactive Slide Opacity\",defaultValue:.4,min:.1,max:1,step:.01,displayStepper:true,hidden:props=>!props.effectEnabled||props.coverflowEffect||!props.centeredSlides&&props.widthMode!==\"maxWidth\"},inactiveScale:{type:ControlType.Number,title:\"Inactive Slide Scale\",defaultValue:.85,min:.5,max:1,step:.01,displayStepper:true,hidden:props=>!props.effectEnabled||props.coverflowEffect||!props.centeredSlides&&props.widthMode!==\"maxWidth\",description:\"Scale of non-active slides\"},coverflowEffect:{type:ControlType.Boolean,title:\"3D Effect\",defaultValue:false,description:\"Enable or disable 3D coverflow effect.\",hidden:props=>!props.centeredSlides&&props.widthMode!==\"maxWidth\"},slideOverlap:{type:ControlType.Number,title:\"Slide Overlap\",defaultValue:105,min:40,max:110,step:1,hidden:props=>!props.effectEnabled||props.coverflowEffect||!props.centeredSlides&&props.widthMode!==\"maxWidth\",description:\"Horizontal shift of slides (overlap effect)\"},autoplay:{type:ControlType.Boolean,title:\"Autoplay\",defaultValue:false},autoplayDelay:{type:ControlType.Number,title:\"Autoplay Delay (ms)\",min:1e3,max:1e4,defaultValue:3e3,hidden:props=>!props.autoplay,description:\"Delay between auto slides (in milliseconds)\"},exposeAutoplayProgress:{type:ControlType.Boolean,title:\"Expose Progress Control\",defaultValue:false,hidden:props=>!props.autoplay,description:\"Pass autoplayProgress prop (MotionValue 0→1) to active slide\"},crossfade:{type:ControlType.Boolean,title:\"Crossfade\",defaultValue:false,description:\"Smooth fade transition between slides\"},enableDrag:{type:ControlType.Boolean,title:\"Enable Drag\",defaultValue:true,description:\"Allow touch/mouse drag to navigate slides\"},clickToNavigate:{type:ControlType.Boolean,title:\"Click to Navigate\",defaultValue:false,description:\"Click left/right of carousel to go next/prev\"},buttonMap:{type:ControlType.Number,title:\"Button Map\",defaultValue:1,min:1,max:10,step:1}});\nexport const __FramerMetadata__ = {\"exports\":{\"default\":{\"type\":\"reactComponent\",\"name\":\"AdvancedSwiperCarousel\",\"slots\":[],\"annotations\":{\"framerContractVersion\":\"1\"}},\"__FramerMetadata__\":{\"type\":\"variable\"}}}\n//# sourceMappingURL=./AdvancedCarousel.map"],"mappings":"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"}