{"version":3,"file":"Storefinder_search.DLOLcm-R.mjs","names":["React.forwardRef","_sfBus","SF_GLOBAL","useRef","useState","_sfBus","SF_GLOBAL","createInitialSFState","formatDistance","useRef","useState","_Fragment","_sfBus","SF_GLOBAL","createInitialSFState","sfGet","sfSet","useSF","useState","normalizeCountry","getLocaleKey","useRef","useMemo","useCallback","_sfBus","SF_GLOBAL","createInitialSFState","sfGet","sfSet","useSF","useState","useRef","useCallback","_sfBus","SF_GLOBAL","findQueryInElement","extractCollections","buildFieldsByTitle","useRef","useState","useMemo","useCallback","_sfBus","SF_GLOBAL","createInitialSFState","sfGet","sfSet","useState","useRef","useMemo","useCallback","_sfBus","SF_GLOBAL","createInitialSFState","sfGet","sfSet","useSF","useState","useMemo","useCallback","useRef","useState","useRef","useCallback"],"sources":["https:/framerusercontent.com/modules/gHkoyZnJYNHYKL4iMIuk/reYxIDfitMyupCzsPTxB/lDCoIzadM.js","https:/framerusercontent.com/modules/KyIsC1aogyOX44XVsbfm/u7jZBHTHQqz5CKjdwtOM/Storefinder_tag.js","https:/framerusercontent.com/modules/yVugqyxUbhRc8nGnsodF/Sy6JgtCL4qTyZn77pixp/Storefinder_cardfield.js","https:/framerusercontent.com/modules/VgxgtBBnE2cOfa9K88v5/nfgo1PTTnMGEGCQ6uxB5/Storefinder_CountryDropdown.js","https:/framerusercontent.com/modules/VXulnEUNp4XNBDWKx1DW/hXAjoqNcq3YzZ9nM7KFr/Storefinder_geolocate.js","https:/framerusercontent.com/modules/c92iJ3LTqshjLE3LHXe9/dQ1wKk3tSCnEw15nXdSA/Storefinder_Link.js","https:/framerusercontent.com/modules/ikHycoYNZhqJSyxcf4eE/ESkCPqthGg5wUhPSEUZc/Storefinder_list.js","https:/framerusercontent.com/modules/oq5ZibFKpAGk3Zd03hyG/lF8Sdozh09L7mzIzsQgu/Storefinder_provider.js","https:/framerusercontent.com/modules/xyt91apkBgL7gH0zO9eE/xFoRiwCbwnimOZSTeKRK/Storefinder_search.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 2 C 0 0.895 0.895 0 2 0 L 10.5 0 C 11.605 0 12.5 0.895 12.5 2 L 12.5 14.5 L 0 14.5 Z\" fill=\"transparent\" height=\"14.5px\" id=\"yThedgn8g\" stroke-dasharray=\"\" stroke-linecap=\"round\" stroke-linejoin=\"round\" stroke-width=\"var(--1335ju, 1.5)\" stroke=\"var(--18mrqx2, rgb(0, 0, 0))\" transform=\"translate(5.75 4.75)\" width=\"12.5px\"/><path d=\"M 14.5 0 L 0 0\" fill=\"transparent\" height=\"1px\" id=\"ldpWDSqXu\" stroke-dasharray=\"\" stroke-linecap=\"round\" stroke-linejoin=\"round\" stroke-width=\"var(--1335ju, 1.5)\" stroke=\"var(--18mrqx2, rgb(0, 0, 0))\" transform=\"translate(4.75 19.25)\" width=\"14.5px\"/><path d=\"M 0 2 C 0 0.895 0.895 0 2 0 L 2.5 0 C 3.605 0 4.5 0.895 4.5 2 L 4.5 5.5 L 0 5.5 Z\" fill=\"transparent\" height=\"5.5px\" id=\"gHUSUiKTO\" stroke-dasharray=\"\" stroke-linecap=\"round\" stroke-linejoin=\"round\" stroke-width=\"var(--1335ju, 1.5)\" stroke=\"var(--18mrqx2, rgb(0, 0, 0))\" transform=\"translate(9.75 13.75)\" width=\"4.5px\"/><path d=\"M 1 0.5 C 1 0.776 0.776 1 0.5 1 C 0.224 1 0 0.776 0 0.5 C 0 0.224 0.224 0 0.5 0 C 0.776 0 1 0.224 1 0.5 Z\" fill=\"transparent\" height=\"1px\" id=\"wN2k1IYuR\" stroke-dasharray=\"\" stroke-linecap=\"round\" stroke-linejoin=\"round\" stroke-width=\"var(--3it368, 1)\" stroke=\"var(--18mrqx2, rgb(0, 0, 0))\" transform=\"translate(9.5 9.5)\" width=\"1px\"/><path d=\"M 1 0.5 C 1 0.776 0.776 1 0.5 1 C 0.224 1 0 0.776 0 0.5 C 0 0.224 0.224 0 0.5 0 C 0.776 0 1 0.224 1 0.5 Z\" fill=\"transparent\" height=\"1px\" id=\"CXCSXUxJy\" stroke-dasharray=\"\" stroke-linecap=\"round\" stroke-linejoin=\"round\" stroke-width=\"var(--3it368, 1)\" stroke=\"var(--18mrqx2, rgb(0, 0, 0))\" transform=\"translate(13.5 9.5)\" width=\"1px\"/></svg>';const getProps=({dots,height,id,stroke,width,width1,...props})=>{return{...props,BKVe8Pgvw:dots??props.BKVe8Pgvw??1,fICyAUQY1:stroke??props.fICyAUQY1??\"rgb(0, 0, 0)\",lKf_CQTz5:width1??props.lKf_CQTz5??1.5};};const Component=/*#__PURE__*/React.forwardRef(function(props,ref){const{style,className,layoutId,variant,fICyAUQY1,lKf_CQTz5,BKVe8Pgvw,...restProps}=getProps(props);const href=useSVGTemplate(\"1600458304\",svg);return /*#__PURE__*/_jsx(SVG,{...restProps,className:cx(\"framer-BdWU9\",className),layoutId:layoutId,ref:ref,role:\"presentation\",style:{\"--1335ju\":lKf_CQTz5,\"--18mrqx2\":fICyAUQY1,\"--3it368\":BKVe8Pgvw,...style},viewBox:\"0 0 24 24\",children:/*#__PURE__*/_jsx(\"use\",{href:href})});});const css=[`.framer-BdWU9 { -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 {\"fICyAUQY1\":\"stroke\",\"lKf_CQTz5\":\"width1\",\"BKVe8Pgvw\":\"dots\"}\n * @framerImmutableVariables true\n * @framerVector {\"name\":\"Building\",\"color\":{\"type\":\"variable\",\"value\":\"18mrqx2\"},\"set\":{\"localId\":\"vectorSet/SuYHhKUZG\",\"id\":\"SuYHhKUZG\",\"moduleId\":\"EqX8thWQjdZcOB1c6p5N\"}}\n * @framerDisableUnlink true\n */const Icon=withCSS(Component,css,\"framer-BdWU9\");Icon.displayName=\"Building\";export default Icon;addPropertyControls(Icon,{fICyAUQY1:{defaultValue:\"rgb(0, 0, 0)\",hidden:false,title:\"Stroke\",type:ControlType.Color},lKf_CQTz5:{defaultValue:1.5,displayStepper:true,hidden:false,max:4,min:0,step:.5,title:\"Width\",type:ControlType.Number},BKVe8Pgvw:{defaultValue:1,displayStepper:true,hidden:false,max:4,min:1,title:\"Dots\",type:ControlType.Number}});\nexport const __FramerMetadata__ = {\"exports\":{\"default\":{\"type\":\"reactComponent\",\"name\":\"Icon\",\"slots\":[],\"annotations\":{\"framerIntrinsicHeight\":\"24\",\"framerContractVersion\":\"1\",\"framerSupportedLayoutWidth\":\"any-prefer-fixed\",\"framerVector\":\"{\\\"name\\\":\\\"Building\\\",\\\"color\\\":{\\\"type\\\":\\\"variable\\\",\\\"value\\\":\\\"18mrqx2\\\"},\\\"set\\\":{\\\"localId\\\":\\\"vectorSet/SuYHhKUZG\\\",\\\"id\\\":\\\"SuYHhKUZG\\\",\\\"moduleId\\\":\\\"EqX8thWQjdZcOB1c6p5N\\\"}}\",\"framerIntrinsicWidth\":\"24\",\"framerDisableUnlink\":\"true\",\"framerImmutableVariables\":\"true\",\"framerSupportedLayoutHeight\":\"any-prefer-fixed\",\"framerVariables\":\"{\\\"fICyAUQY1\\\":\\\"stroke\\\",\\\"lKf_CQTz5\\\":\\\"width1\\\",\\\"BKVe8Pgvw\\\":\\\"dots\\\"}\"}},\"__FramerMetadata__\":{\"type\":\"variable\"}}}","// StoreFinder — Tag\n// Toont een \"Coming soon\" tag als de CMS toggle aan staat.\n// Als het \"Datum opening\" veld ingevuld is, wordt de tekst daarmee overschreven.\n// Verbergt zichzelf volledig als geen van beide actief is.\nimport{jsx as _jsx,jsxs as _jsxs}from\"react/jsx-runtime\";import{addPropertyControls,ControlType,RenderTarget}from\"framer\";import{useState,useEffect,useRef}from\"react\";// ═══════════════════════════════════════════════════════════════\n// SHARED STATE BUS (for tick re-render)\n// ═══════════════════════════════════════════════════════════════\nconst SF_GLOBAL=\"__storeFinder__\";function _sfBus(id){if(typeof window===\"undefined\")return null;const w=window;if(!w[SF_GLOBAL])w[SF_GLOBAL]={};return w[SF_GLOBAL]?.[id]||null;}// ═══════════════════════════════════════════════════════════════\n// HELPER: bouw de dubbele rand via box-shadow (twee kleuren)\n// ═══════════════════════════════════════════════════════════════\nfunction doubleRing(borderWidth,outerColor,innerColor,innerGap){if(borderWidth===0)return\"none\";// Buitenste rand  → gewone box-shadow spread\n// Binnenste rand  → inset box-shadow (andere kleur)\nreturn[`0 0 0 ${borderWidth}px ${outerColor}`,`inset 0 0 0 ${innerGap}px ${innerColor}`].join(\", \");}export default function StoreFinder_Tag(props){const{finderId=0,comingSoonText=\"Coming soon\",openingPrefix=\"Opening: \",font={},textColor=\"#ffffff\",bg=\"#5B5FEF\",borderRadius=40,borderWidth=2,borderColor=\"rgba(255,255,255,0.75)\",outerBorderColor=\"rgba(255,255,255,0.35)\",innerGap=3,paddingV=10,paddingH=24,iconEnabled=false,iconColor=\"#ffffff\"}=props;const isCanvas=RenderTarget.current()===RenderTarget.canvas;const ref=useRef(null);// ── Read store data SYNCHRONOUSLY during render ──\nconst readStoreData=()=>{if(typeof window===\"undefined\"||!ref.current)return null;const w=window;if(!w.__sfCards__)return null;const cardEl=ref.current.closest(\"[data-sf-card]\");if(!cardEl)return null;const key=cardEl.getAttribute(\"data-sf-card\");return key?w.__sfCards__[key]||null:null;};// Tick state: bus listener bumps this to trigger re-render\nconst[tick,setTick]=useState(0);useEffect(()=>{const bus=_sfBus(finderId);if(!bus)return;const listener=()=>setTick(t=>t+1);bus.listeners.add(listener);return()=>{bus.listeners.delete(listener);};},[finderId]);// Single retry after first mount\nconst didMount=useRef(false);useEffect(()=>{if(!didMount.current){didMount.current=true;requestAnimationFrame(()=>setTick(t=>t+1));}},[]);// Synchronous read\nconst storeData=readStoreData();// ── Determine what to show ──\nconst comingSoon=storeData?.fields?.__comingSoon===true;const openingDate=storeData?.fields?.__openingDate||\"\";const tagText=openingDate?`${openingPrefix}${openingDate}`:comingSoonText;const isVisible=comingSoon||!!openingDate;// Shared container style\nconst containerStyle={...props.style,display:\"inline-flex\",alignItems:\"center\",gap:6,padding:`${paddingV}px ${paddingH}px`,backgroundColor:bg,borderRadius,border:\"none\",boxShadow:doubleRing(borderWidth,outerBorderColor,borderColor,innerGap)};// ── Canvas preview ──\nif(isCanvas){return /*#__PURE__*/_jsxs(\"div\",{ref:ref,style:containerStyle,children:[iconEnabled&&/*#__PURE__*/_jsxs(\"svg\",{width:\"12\",height:\"12\",viewBox:\"0 0 24 24\",fill:\"none\",stroke:iconColor,strokeWidth:\"2.5\",strokeLinecap:\"round\",strokeLinejoin:\"round\",style:{flexShrink:0},children:[/*#__PURE__*/_jsx(\"circle\",{cx:\"12\",cy:\"12\",r:\"10\"}),/*#__PURE__*/_jsx(\"polyline\",{points:\"12 6 12 12 16 14\"})]}),/*#__PURE__*/_jsx(\"span\",{style:{...font,color:textColor,whiteSpace:\"nowrap\"},children:comingSoonText})]});}// ── Hidden when not applicable ──\nif(!isVisible){return /*#__PURE__*/_jsx(\"div\",{ref:ref,style:{display:\"none\"}});}// ── Render tag ──\nreturn /*#__PURE__*/_jsxs(\"div\",{ref:ref,style:containerStyle,children:[iconEnabled&&/*#__PURE__*/_jsxs(\"svg\",{width:\"12\",height:\"12\",viewBox:\"0 0 24 24\",fill:\"none\",stroke:iconColor,strokeWidth:\"2.5\",strokeLinecap:\"round\",strokeLinejoin:\"round\",style:{flexShrink:0},children:[/*#__PURE__*/_jsx(\"circle\",{cx:\"12\",cy:\"12\",r:\"10\"}),/*#__PURE__*/_jsx(\"polyline\",{points:\"12 6 12 12 16 14\"})]}),/*#__PURE__*/_jsx(\"span\",{style:{...font,color:textColor,whiteSpace:\"nowrap\"},children:tagText})]});}// ═══════════════════════════════════════════════════════════════\n// PROPERTY CONTROLS\n// ═══════════════════════════════════════════════════════════════\naddPropertyControls(StoreFinder_Tag,{finderId:{type:ControlType.Number,defaultValue:0,min:0,step:1,displayStepper:true,title:\"Finder ID\"},comingSoonText:{type:ControlType.String,defaultValue:\"Coming soon\",title:\"Tekst\",description:\"Standaard tekst als er geen openingsdatum is ingevuld\"},openingPrefix:{type:ControlType.String,defaultValue:\"Opening: \",title:\"Opening prefix\",description:\"Tekst v\\xf3\\xf3r de openingsdatum. Bijv. 'Opening: ', 'Er\\xf6ffnung: ', 'Ouverture: '\"},font:{// @ts-ignore\ntype:ControlType.Font,title:\"Font\",controls:\"extended\",defaultValue:{fontSize:16,fontWeight:400}},textColor:{type:ControlType.Color,defaultValue:\"#ffffff\",title:\"Tekst kleur\"},bg:{type:ControlType.Color,defaultValue:\"#5B5FEF\",title:\"Achtergrond\"},borderRadius:{type:ControlType.Number,defaultValue:40,min:0,max:100,step:1,title:\"Radius\"},borderWidth:{type:ControlType.Number,defaultValue:2,min:0,max:6,step:1,title:\"Rand dikte\",description:\"Dikte van zowel de buiten- als binnenrand\"},borderColor:{type:ControlType.Color,defaultValue:\"rgba(255,255,255,0.75)\",title:\"Binnenrand kleur\",hidden:p=>(p.borderWidth??0)===0},outerBorderColor:{type:ControlType.Color,defaultValue:\"rgba(255,255,255,0.35)\",title:\"Buitenrand kleur\",hidden:p=>(p.borderWidth??0)===0},innerGap:{type:ControlType.Number,defaultValue:3,min:1,max:12,step:1,title:\"Binnenste rand ruimte\",description:\"Afstand tussen tekst en de binnenste rand\",hidden:p=>(p.borderWidth??0)===0},paddingV:{type:ControlType.Number,defaultValue:10,min:0,max:40,step:1,title:\"Padding ↕\"},paddingH:{type:ControlType.Number,defaultValue:24,min:0,max:60,step:1,title:\"Padding ↔\"},iconEnabled:{type:ControlType.Boolean,defaultValue:false,title:\"Klok icoon\"},iconColor:{type:ControlType.Color,defaultValue:\"#ffffff\",title:\"Icoon kleur\",hidden:p=>!p.iconEnabled}});\nexport const __FramerMetadata__ = {\"exports\":{\"default\":{\"type\":\"reactComponent\",\"name\":\"StoreFinder_Tag\",\"slots\":[],\"annotations\":{\"framerContractVersion\":\"1\"}},\"__FramerMetadata__\":{\"type\":\"variable\"}}}\n//# sourceMappingURL=./Storefinder_tag.map","// StoreFinder — CardField\n// Companion component for custom card slots in StoreFinder_List.\n// Place inside your custom card design to display store data.\n// Reads its context from the nearest data-sf-card wrapper set by the List.\nimport{jsx as _jsx,jsxs as _jsxs,Fragment as _Fragment}from\"react/jsx-runtime\";import{addPropertyControls,ControlType,RenderTarget}from\"framer\";import{useState,useEffect,useRef}from\"react\";// ═══════════════════════════════════════════════════════════════\n// SHARED STATE BUS\n// ═══════════════════════════════════════════════════════════════\nconst SF_GLOBAL=\"__storeFinder__\";const createInitialSFState=()=>({stores:[],storesById:{},selectedId:null,hoveredId:null,searchLocation:null,searchText:\"\",distances:{},sortedIds:[],filters:{},filterOptions:{},filterLabels:{},mapReady:false,flyTo:null,totalVisible:0,fieldMap:{},language:\"nl\",country:\"nl\",translations:{},countryCenter:null,extraFields:[]});function _sfBus(id){if(typeof window===\"undefined\")return null;const w=window;if(!w[SF_GLOBAL])w[SF_GLOBAL]={};if(!w[SF_GLOBAL][id])w[SF_GLOBAL][id]={state:createInitialSFState(),listeners:new Set};return w[SF_GLOBAL][id];}function sfGet(id){return _sfBus(id)?.state??createInitialSFState();}// ═══════════════════════════════════════════════════════════════\n// Format distance\nfunction formatDistance(km){if(km<1)return`${Math.round(km*1e3)} m`;if(km<10)return`${km.toFixed(1)} km`;return`${Math.round(km)} km`;}export default function StoreFinder_CardField(props){const{finderId=0,field=\"name\",customFieldName=\"\",type=\"text\",font={},color=\"#1a1a1a\",lineClamp=0,textDecoration=\"none\",opacity=1,prefix=\"\",suffix=\"\",showBox=false,boxBg=\"#f0f0f0\",boxBorderRadius=6,boxBorderWidth=0,boxBorderColor=\"#e0e0e0\",boxPaddingV=4,boxPaddingH=10,objectFit=\"cover\",borderRadius=0}=props;const isCanvas=RenderTarget.current()===RenderTarget.canvas;const ref=useRef(null);// ── Read store data SYNCHRONOUSLY during render ──\n// No polling, no intervals — reads from __sfCards__ on every render\nconst readStoreData=()=>{if(typeof window===\"undefined\"||!ref.current)return null;const w=window;if(!w.__sfCards__)return null;const cardEl=ref.current.closest(\"[data-sf-card]\");if(!cardEl)return null;const key=cardEl.getAttribute(\"data-sf-card\");return key?w.__sfCards__[key]||null:null;};// Tick state: bus listener bumps this to trigger re-render\nconst[tick,setTick]=useState(0);useEffect(()=>{const bus=_sfBus(finderId);if(!bus)return;const listener=()=>setTick(t=>t+1);bus.listeners.add(listener);return()=>{bus.listeners.delete(listener);};},[finderId]);// Single retry after first mount (ref not yet in DOM on first render)\nconst didMount=useRef(false);useEffect(()=>{if(!didMount.current){didMount.current=true;requestAnimationFrame(()=>setTick(t=>t+1));}},[]);// Synchronous read — runs during render, before paint\nconst storeData=readStoreData();// Resolve actual field name (trim spaces from custom field names)\nconst actualField=field===\"custom\"?customFieldName.trim():field;const displayLabel=field===\"custom\"?customFieldName.trim()||\"custom\":field;// Shared text styles — spread ControlType.Font object\nconst textStyle={...font,color,textDecoration:textDecoration!==\"none\"?textDecoration:undefined,opacity:opacity<1?opacity:undefined};// Box wrapper style\nconst boxStyle=showBox?{display:\"inline-flex\",alignItems:\"center\",backgroundColor:boxBg,borderRadius:boxBorderRadius,border:boxBorderWidth>0?`${boxBorderWidth}px solid ${boxBorderColor}`:\"none\",padding:`${boxPaddingV}px ${boxPaddingH}px`}:null;// Canvas preview\nif(isCanvas){if(type===\"image\"){return /*#__PURE__*/_jsxs(\"div\",{ref:ref,style:{...props.style,backgroundColor:\"#e0e0e0\",borderRadius,display:\"flex\",alignItems:\"center\",justifyContent:\"center\",color:\"#999\",fontSize:11},children:[\"📷 \",displayLabel]});}const inner=/*#__PURE__*/_jsxs(_Fragment,{children:[prefix,`{${displayLabel}}`,suffix]});return /*#__PURE__*/_jsx(\"div\",{ref:ref,style:{...props.style,...textStyle,display:\"flex\",alignItems:\"center\"},children:boxStyle?/*#__PURE__*/_jsx(\"span\",{style:boxStyle,children:inner}):inner});}// Resolve field value\nconst getValue=()=>{if(!storeData)return\"\";switch(actualField){case\"name\":return storeData.name||\"\";case\"city\":return storeData.city||\"\";case\"address\":return storeData.address||\"\";case\"distance\":return storeData.distance!==undefined?formatDistance(storeData.distance):\"\";case\"image\":return storeData.image||\"\";case\"googleMapsUrl\":return storeData.googleMapsUrl||\"\";case\"slug\":return storeData.slug||\"\";default:{// Try multiple lookup strategies for custom fields (handles spaces in names)\nconst raw=storeData.fields?.[`__extra_${actualField}`]||storeData.fields?.[actualField]||storeData[actualField]||\"\";// Trim string values to prevent whitespace-only glitches\nreturn typeof raw===\"string\"?raw.trim():raw;}}};const value=getValue();// Treat whitespace-only strings as empty\nconst isEmpty=!value&&value!==0||typeof value===\"string\"&&value.trim()===\"\";// Hide entirely when empty (including box)\nif(isEmpty&&!isCanvas){return /*#__PURE__*/_jsx(\"div\",{ref:ref,style:{...props.style,display:\"none\"}});}if(type===\"image\"){const src=typeof value===\"object\"?value?.url||\"\":String(value);return /*#__PURE__*/_jsx(\"div\",{ref:ref,style:{...props.style,overflow:\"hidden\",borderRadius},children:src?/*#__PURE__*/_jsx(\"img\",{src:src,alt:\"\",style:{width:\"100%\",height:\"100%\",objectFit:objectFit,display:\"block\"},loading:\"lazy\"}):/*#__PURE__*/_jsx(\"div\",{style:{width:\"100%\",height:\"100%\",backgroundColor:\"#f0f0f0\"}})});}const inner=/*#__PURE__*/_jsxs(_Fragment,{children:[prefix,String(value),suffix]});return /*#__PURE__*/_jsx(\"div\",{ref:ref,style:{...props.style,...textStyle,...lineClamp>0?{display:\"-webkit-box\",WebkitLineClamp:lineClamp,WebkitBoxOrient:\"vertical\",overflow:\"hidden\"}:{}},children:boxStyle?/*#__PURE__*/_jsx(\"span\",{style:boxStyle,children:inner}):inner});}// ═══════════════════════════════════════════════════════════════\n// PROPERTY CONTROLS\n// ═══════════════════════════════════════════════════════════════\naddPropertyControls(StoreFinder_CardField,{finderId:{type:ControlType.Number,defaultValue:0,min:0,step:1,displayStepper:true,title:\"Finder ID\"},field:{type:ControlType.Enum,defaultValue:\"name\",title:\"Veld\",options:[\"name\",\"city\",\"address\",\"distance\",\"image\",\"googleMapsUrl\",\"slug\",\"custom\"],optionTitles:[\"Naam\",\"Stad\",\"Adres\",\"Afstand\",\"Afbeelding\",\"Google Maps URL\",\"Slug\",\"Extra veld...\"],description:\"Welk veld dit component toont. Kies 'Extra veld' voor velden toegevoegd in de Provider.\"},customFieldName:{type:ControlType.String,defaultValue:\"\",title:\"Veldnaam\",placeholder:\"Bijv. Openingstijden\",description:\"Exact de CMS veldnaam zoals ingesteld bij 'Extra CMS velden' in de Provider\",hidden:p=>p.field!==\"custom\"},type:{type:ControlType.Enum,defaultValue:\"text\",title:\"Type\",options:[\"text\",\"image\"],optionTitles:[\"Tekst\",\"Afbeelding\"]},// ── Text styling ──\nfont:{//@ts-ignore\ntype:ControlType.Font,title:\"Lettertype\",controls:\"extended\",displayFontSize:true,displayTextAlignment:true,defaultValue:{fontSize:14,fontWeight:400,lineHeight:\"1.4em\"},hidden:p=>p.type===\"image\"},color:{type:ControlType.Color,defaultValue:\"#1a1a1a\",title:\"Kleur\",hidden:p=>p.type===\"image\"},textDecoration:{type:ControlType.Enum,defaultValue:\"none\",title:\"Decoratie\",options:[\"none\",\"underline\",\"line-through\"],optionTitles:[\"Geen\",\"Onderstrepen\",\"Doorhalen\"],hidden:p=>p.type===\"image\"},lineClamp:{type:ControlType.Number,defaultValue:0,min:0,max:10,step:1,title:\"Max regels\",description:\"0 = onbeperkt\",hidden:p=>p.type===\"image\"},opacity:{type:ControlType.Number,defaultValue:1,min:0,max:1,step:.05,title:\"Dekking\",hidden:p=>p.type===\"image\"},prefix:{type:ControlType.String,defaultValue:\"\",title:\"Prefix\",placeholder:\"Bijv. 📍 of Locatie: \",hidden:p=>p.type===\"image\"},suffix:{type:ControlType.String,defaultValue:\"\",title:\"Suffix\",placeholder:\"Bijv.  →\",hidden:p=>p.type===\"image\"},// ── Box / tag ──\nshowBox:{type:ControlType.Boolean,defaultValue:false,title:\"Tag box\",description:\"Toon tekst in een tag/badge box. Verbergt automatisch als waarde leeg is.\",hidden:p=>p.type===\"image\"},boxBg:{type:ControlType.Color,defaultValue:\"#f0f0f0\",title:\"Box achtergrond\",hidden:p=>p.type===\"image\"||!p.showBox},boxBorderRadius:{type:ControlType.Number,defaultValue:6,min:0,max:50,step:1,title:\"Box radius\",hidden:p=>p.type===\"image\"||!p.showBox},boxPaddingV:{type:ControlType.Number,defaultValue:4,min:0,max:20,step:1,title:\"Box padding V\",hidden:p=>p.type===\"image\"||!p.showBox},boxPaddingH:{type:ControlType.Number,defaultValue:10,min:0,max:30,step:1,title:\"Box padding H\",hidden:p=>p.type===\"image\"||!p.showBox},boxBorderWidth:{type:ControlType.Number,defaultValue:0,min:0,max:4,step:1,title:\"Box rand\",hidden:p=>p.type===\"image\"||!p.showBox},boxBorderColor:{type:ControlType.Color,defaultValue:\"#e0e0e0\",title:\"Box rand kleur\",hidden:p=>p.type===\"image\"||!p.showBox||p.boxBorderWidth===0},// ── Image styling ──\nobjectFit:{type:ControlType.Enum,defaultValue:\"cover\",title:\"Object fit\",options:[\"cover\",\"contain\",\"fill\"],hidden:p=>p.type!==\"image\"},borderRadius:{type:ControlType.Number,defaultValue:0,min:0,max:50,step:1,title:\"Radius\",hidden:p=>p.type!==\"image\"}});\nexport const __FramerMetadata__ = {\"exports\":{\"default\":{\"type\":\"reactComponent\",\"name\":\"StoreFinder_CardField\",\"slots\":[],\"annotations\":{\"framerContractVersion\":\"1\"}},\"__FramerMetadata__\":{\"type\":\"variable\"}}}\n//# sourceMappingURL=./Storefinder_cardfield.map","import{jsx as _jsx,jsxs as _jsxs}from\"react/jsx-runtime\";import{addPropertyControls,ControlType,RenderTarget}from\"framer\";import{useCallback,useEffect,useMemo,useRef,useState}from\"react\";const SF_GLOBAL=\"__storeFinder__\";const COUNTRY_FIELD_KEY=\"__filter___country\";const createInitialSFState=()=>({stores:[],storesById:{},selectedId:null,hoveredId:null,searchLocation:null,searchText:\"\",distances:{},sortedIds:[],filters:{},filterOptions:{},mapReady:false,flyTo:null,totalVisible:0,fieldMap:{},language:\"nl\",country:\"nl\",selectedCountry:null,selectedCountryLocaleKey:null,countryOptions:[],translations:{},countryCenter:null,extraFields:[],dataReady:false});function _sfBus(id){if(typeof window===\"undefined\")return null;const w=window;if(!w[SF_GLOBAL])w[SF_GLOBAL]={};if(!w[SF_GLOBAL][id]){w[SF_GLOBAL][id]={state:createInitialSFState(),listeners:new Set};}return w[SF_GLOBAL][id];}function sfGet(id){return _sfBus(id)?.state??createInitialSFState();}function sfSet(id,updates){const bus=_sfBus(id);if(!bus)return;bus.state={...bus.state,...updates};bus.listeners.forEach(fn=>fn(bus.state));}function useSF(id){const[state,setState]=useState(()=>sfGet(id));useEffect(()=>{const bus=_sfBus(id);if(!bus)return;const listener=s=>setState({...s});bus.listeners.add(listener);setState({...bus.state});return()=>{bus.listeners.delete(listener);};},[id]);return state;}const COUNTRY_LABELS={nl:\"Nederland\",be:\"Belgi\\xeb\",de:\"Duitsland\",fr:\"Frankrijk\",es:\"Spanje\",pt:\"Portugal\",it:\"Itali\\xeb\",lu:\"Luxemburg\",at:\"Oostenrijk\",ch:\"Zwitserland\",cz:\"Tsjechi\\xeb\",cs:\"Tsjechi\\xeb\",uk:\"Verenigd Koninkrijk\",gb:\"Verenigd Koninkrijk\",us:\"Verenigde Staten\"};function normalizeCountry(value){return String(value??\"\").trim().toLowerCase();}function getLocaleKey(language,country){return`${language||\"\"}|${normalizeCountry(country)}`;}function parseNumber(value){if(typeof value===\"number\"&&isFinite(value))return value;const parsed=parseFloat(String(value??\"\").trim());return isFinite(parsed)?parsed:null;}function labelForCountry(code,fallback){const normalized=normalizeCountry(code);return fallback||COUNTRY_LABELS[normalized]||code.toUpperCase();}function getCountryValues(store){const value=store.fields?.[COUNTRY_FIELD_KEY];if(value===undefined||value===null)return[];if(Array.isArray(value)){return value.map(item=>normalizeCountry(item)).filter(item=>item.length>0);}const str=normalizeCountry(value);return str?[str]:[];}export default function StoreFinder_CountryDropdown(props){const{finderId=0,optionsSource=\"both\",countries=[],defaultCountry=\"\",includeAllOption=true,allLabel=\"Alle landen\",syncOnMount=true,clearSearchOnChange=false,flyToOnSelect=true,flyToZoom=7,showLabel=false,label=\"Land\",labelPosition=\"top\",font={},labelColor=\"#666666\",backgroundColor=\"#FFFFFF\",textColor=\"#1a1a1a\",borderColor=\"#e0e0e0\",focusBorderColor=\"#0078FF\",borderWidth=1,borderRadius=8,paddingV=12,paddingH=16,arrowColor=\"#1a1a1a\",disabledOpacity=.55}=props;const isCanvas=RenderTarget.current()===RenderTarget.canvas;const sf=useSF(finderId);const initializedRef=useRef(false);const lastLocaleRef=useRef(null);const[selected,setSelected]=useState(\"\");const[isFocused,setIsFocused]=useState(false);const manualOptions=useMemo(()=>{return(countries||[]).map(option=>{const code=normalizeCountry(option?.code);if(!code)return null;return{code,label:option?.label||labelForCountry(code),lat:option?.lat,lng:option?.lng,zoom:option?.zoom};}).filter(Boolean);},[countries]);const manualCenters=useMemo(()=>{const centers={};for(const option of manualOptions){const lat=parseNumber(option.lat);const lng=parseNumber(option.lng);const zoom=parseNumber(option.zoom);if(lat!==null&&lng!==null){centers[option.code]={lat,lng,zoom:zoom??flyToZoom};}}return centers;},[manualOptions,flyToZoom]);const autoOptions=useMemo(()=>{const labels=new Map;const busOptions=Array.isArray(sf.countryOptions)?sf.countryOptions:[];for(const value of busOptions){const code=normalizeCountry(value);if(code)labels.set(code,labelForCountry(code));}for(const store of sf.stores||[]){for(const code of getCountryValues(store)){if(code)labels.set(code,labelForCountry(code));}}const fallback=normalizeCountry(defaultCountry);if(fallback)labels.set(fallback,labelForCountry(fallback));return Array.from(labels.entries()).map(([code,optionLabel])=>({code,label:optionLabel})).sort((a,b)=>a.label.localeCompare(b.label));},[sf.countryOptions,sf.stores,defaultCountry]);const options=useMemo(()=>{const merged=new Map;const add=option=>{const code=normalizeCountry(option.code);if(code)merged.set(code,option.label||labelForCountry(code));};if(optionsSource===\"manual\"||optionsSource===\"both\"){manualOptions.forEach(add);}if(optionsSource===\"auto\"||optionsSource===\"both\"){autoOptions.forEach(add);}const result=Array.from(merged.entries()).map(([code,optionLabel])=>({code,label:optionLabel})).sort((a,b)=>a.label.localeCompare(b.label));return includeAllOption?[{code:\"\",label:allLabel},...result]:result;},[optionsSource,manualOptions,autoOptions,includeAllOption,allLabel]);const applyCountry=useCallback((nextCountry,fireEvent)=>{const normalized=normalizeCountry(nextCountry);const matchingStore=normalized?(sf.stores||[]).find(store=>getCountryValues(store).includes(normalized)):null;const updates={selectedCountry:normalized,selectedCountryLocaleKey:getLocaleKey(sf.language,sf.country),selectedId:null,hoveredId:null};if(clearSearchOnChange){updates.searchLocation=null;updates.searchText=\"\";}if(flyToOnSelect){const manualCenter=normalized?manualCenters[normalized]:null;if(manualCenter){updates.flyTo=manualCenter;}else if(matchingStore){updates.flyTo={lat:matchingStore.lat,lng:matchingStore.lng,zoom:flyToZoom};}else if(!normalized&&sf.countryCenter){updates.flyTo=sf.countryCenter;}}sfSet(finderId,updates);if(fireEvent&&props.onCountryChange){requestAnimationFrame(()=>props.onCountryChange());}},[finderId,sf.stores,sf.countryCenter,sf.language,sf.country,manualCenters,clearSearchOnChange,flyToOnSelect,flyToZoom,props.onCountryChange]);useEffect(()=>{if(isCanvas||initializedRef.current)return;const currentLocaleKey=getLocaleKey(sf.language,sf.country);const hasSelectedCountry=sf.selectedCountry!==undefined&&sf.selectedCountry!==null&&sf.selectedCountryLocaleKey===currentLocaleKey;if(!hasSelectedCountry&&!defaultCountry&&!sf.dataReady)return;const initial=hasSelectedCountry?sf.selectedCountry:defaultCountry||sf.country||\"\";const normalized=normalizeCountry(initial);setSelected(normalized);initializedRef.current=true;lastLocaleRef.current={language:sf.language||\"\",country:normalizeCountry(sf.country),defaultCountry:normalizeCountry(defaultCountry)};if(syncOnMount){applyCountry(normalized,false);}},[isCanvas,sf.selectedCountry,sf.selectedCountryLocaleKey,sf.language,sf.country,sf.dataReady,defaultCountry,syncOnMount,applyCountry]);useEffect(()=>{if(isCanvas||!initializedRef.current||!syncOnMount)return;if(!defaultCountry&&!sf.dataReady)return;const nextLocale={language:sf.language||\"\",country:normalizeCountry(sf.country),defaultCountry:normalizeCountry(defaultCountry)};const previousLocale=lastLocaleRef.current;const localeChanged=!previousLocale||previousLocale.language!==nextLocale.language||previousLocale.country!==nextLocale.country||previousLocale.defaultCountry!==nextLocale.defaultCountry;if(!localeChanged)return;lastLocaleRef.current=nextLocale;const nextCountry=nextLocale.defaultCountry||nextLocale.country||\"\";setSelected(nextCountry);applyCountry(nextCountry,false);},[isCanvas,syncOnMount,sf.dataReady,sf.language,sf.country,defaultCountry,applyCountry]);useEffect(()=>{if(isCanvas||!initializedRef.current)return;const external=sf.selectedCountry!==undefined&&sf.selectedCountry!==null&&sf.selectedCountryLocaleKey===getLocaleKey(sf.language,sf.country)?normalizeCountry(sf.selectedCountry):null;if(external!==null&&external!==selected){setSelected(external);}},[isCanvas,sf.selectedCountry,sf.selectedCountryLocaleKey,sf.language,sf.country,selected]);const handleChange=useCallback(event=>{const next=normalizeCountry(event.target.value);setSelected(next);applyCountry(next,true);},[applyCountry]);const disabled=options.length===0;const selectLabel=options.find(option=>option.code===selected)?.label||labelForCountry(selected||sf.country||\"nl\");const containerStyle={...props.style,display:\"flex\",flexDirection:labelPosition===\"left\"?\"row\":\"column\",alignItems:labelPosition===\"left\"?\"center\":\"stretch\",gap:labelPosition===\"left\"?10:6,...font};const shellStyle={position:\"relative\",display:\"flex\",alignItems:\"center\",backgroundColor,border:`${borderWidth}px solid ${isFocused?focusBorderColor:borderColor}`,borderRadius,opacity:disabled?disabledOpacity:1,transition:\"border-color 0.2s ease, opacity 0.2s ease\",minWidth:0};if(isCanvas){return /*#__PURE__*/_jsxs(\"div\",{style:containerStyle,children:[showLabel&&/*#__PURE__*/_jsx(\"div\",{style:{color:labelColor,fontSize:12,lineHeight:1.2,whiteSpace:\"nowrap\"},children:label}),/*#__PURE__*/_jsxs(\"div\",{style:shellStyle,children:[/*#__PURE__*/_jsx(\"div\",{style:{flex:1,minWidth:0,color:textColor,padding:`${paddingV}px ${paddingH+24}px ${paddingV}px ${paddingH}px`,whiteSpace:\"nowrap\",overflow:\"hidden\",textOverflow:\"ellipsis\"},children:selectLabel}),/*#__PURE__*/_jsx(Arrow,{color:arrowColor})]})]});}return /*#__PURE__*/_jsxs(\"div\",{style:containerStyle,children:[showLabel&&/*#__PURE__*/_jsx(\"label\",{style:{color:labelColor,fontSize:12,lineHeight:1.2,whiteSpace:\"nowrap\"},children:label}),/*#__PURE__*/_jsxs(\"div\",{style:shellStyle,children:[/*#__PURE__*/_jsx(\"select\",{value:selected,onChange:handleChange,onFocus:()=>setIsFocused(true),onBlur:()=>setIsFocused(false),disabled:disabled,\"aria-label\":label,style:{width:\"100%\",minWidth:0,appearance:\"none\",WebkitAppearance:\"none\",border:\"none\",outline:\"none\",backgroundColor:\"transparent\",color:textColor,cursor:disabled?\"not-allowed\":\"pointer\",font:\"inherit\",padding:`${paddingV}px ${paddingH+24}px ${paddingV}px ${paddingH}px`},children:options.map(option=>/*#__PURE__*/_jsx(\"option\",{value:option.code,children:option.label},option.code||\"__all\"))}),/*#__PURE__*/_jsx(Arrow,{color:arrowColor})]})]});}function Arrow({color}){return /*#__PURE__*/_jsx(\"svg\",{width:\"16\",height:\"16\",viewBox:\"0 0 24 24\",fill:\"none\",stroke:color,strokeWidth:\"2\",strokeLinecap:\"round\",strokeLinejoin:\"round\",\"aria-hidden\":\"true\",style:{position:\"absolute\",right:12,top:\"50%\",transform:\"translateY(-50%)\",pointerEvents:\"none\"},children:/*#__PURE__*/_jsx(\"polyline\",{points:\"6 9 12 15 18 9\"})});}addPropertyControls(StoreFinder_CountryDropdown,{finderId:{type:ControlType.Number,defaultValue:0,min:0,step:1,displayStepper:true,title:\"Finder ID\"},optionsSource:{type:ControlType.Enum,defaultValue:\"both\",title:\"Landen\",options:[\"auto\",\"manual\",\"both\"],optionTitles:[\"Uit CMS\",\"Handmatig\",\"CMS + handmatig\"]},countries:{type:ControlType.Array,title:\"Handmatige landen\",control:{type:ControlType.Object,controls:{code:{type:ControlType.String,defaultValue:\"nl\",placeholder:\"nl\",title:\"Code\"},label:{type:ControlType.String,defaultValue:\"Nederland\",placeholder:\"Nederland\",title:\"Label\"},lat:{type:ControlType.String,defaultValue:\"\",placeholder:\"52.3676\",title:\"Lat\"},lng:{type:ControlType.String,defaultValue:\"\",placeholder:\"4.9041\",title:\"Lng\"},zoom:{type:ControlType.Number,defaultValue:7,min:1,max:18,step:.5,title:\"Zoom\"}}},defaultValue:[{code:\"nl\",label:\"Nederland\",lat:\"52.3676\",lng:\"4.9041\",zoom:7},{code:\"be\",label:\"Belgi\\xeb\",lat:\"50.8503\",lng:\"4.3517\",zoom:7}],hidden:props=>props.optionsSource===\"auto\"},defaultCountry:{type:ControlType.String,defaultValue:\"\",placeholder:\"Leeg = Provider land\",title:\"Start land\"},includeAllOption:{type:ControlType.Boolean,defaultValue:true,title:\"Alle landen optie\"},allLabel:{type:ControlType.String,defaultValue:\"Alle landen\",title:\"Alle label\",hidden:props=>!props.includeAllOption},syncOnMount:{type:ControlType.Boolean,defaultValue:true,title:\"Filter bij laden\"},clearSearchOnChange:{type:ControlType.Boolean,defaultValue:false,title:\"Zoekopdracht wissen\"},flyToOnSelect:{type:ControlType.Boolean,defaultValue:true,title:\"Map verplaatsen\"},flyToZoom:{type:ControlType.Number,defaultValue:7,min:3,max:18,step:.5,title:\"Map zoom fallback\",hidden:props=>!props.flyToOnSelect},showLabel:{type:ControlType.Boolean,defaultValue:false,title:\"Label tonen\"},label:{type:ControlType.String,defaultValue:\"Land\",title:\"Label\",hidden:props=>!props.showLabel},labelPosition:{type:ControlType.Enum,defaultValue:\"top\",title:\"Label positie\",options:[\"top\",\"left\"],optionTitles:[\"Boven\",\"Links\"],displaySegmentedControl:true,hidden:props=>!props.showLabel},font:{//@ts-ignore\ntype:ControlType.Font,title:\"Lettertype\",controls:\"extended\",displayFontSize:true,displayTextAlignment:false,defaultValue:{fontSize:15,fontWeight:400,lineHeight:\"1.4em\"}},labelColor:{type:ControlType.Color,defaultValue:\"#666666\",title:\"Label kleur\",hidden:props=>!props.showLabel},backgroundColor:{type:ControlType.Color,defaultValue:\"#FFFFFF\",title:\"Achtergrond\"},textColor:{type:ControlType.Color,defaultValue:\"#1a1a1a\",title:\"Tekstkleur\"},borderColor:{type:ControlType.Color,defaultValue:\"#e0e0e0\",title:\"Rand kleur\"},focusBorderColor:{type:ControlType.Color,defaultValue:\"#0078FF\",title:\"Focus rand\"},borderWidth:{type:ControlType.Number,defaultValue:1,min:0,max:4,step:1,title:\"Rand dikte\"},borderRadius:{type:ControlType.Number,defaultValue:8,min:0,max:50,step:1,title:\"Hoekradius\"},paddingV:{type:ControlType.Number,defaultValue:12,min:4,max:28,step:1,title:\"Padding V\"},paddingH:{type:ControlType.Number,defaultValue:16,min:4,max:36,step:1,title:\"Padding H\"},arrowColor:{type:ControlType.Color,defaultValue:\"#1a1a1a\",title:\"Pijl kleur\"},disabledOpacity:{type:ControlType.Number,defaultValue:.55,min:.1,max:1,step:.05,title:\"Disabled opacity\"},onCountryChange:{type:ControlType.EventHandler}});\nexport const __FramerMetadata__ = {\"exports\":{\"default\":{\"type\":\"reactComponent\",\"name\":\"StoreFinder_CountryDropdown\",\"slots\":[],\"annotations\":{\"framerContractVersion\":\"1\"}},\"__FramerMetadata__\":{\"type\":\"variable\"}}}\n//# sourceMappingURL=./Storefinder_CountryDropdown.map","// StoreFinder — Geolocate\n// Vraagt de gebruiker om zijn locatie te delen.\n// Bij toestemming vliegt de map naar de locatie en worden afstanden berekend.\nimport{jsx as _jsx,jsxs as _jsxs}from\"react/jsx-runtime\";import{addPropertyControls,ControlType,RenderTarget}from\"framer\";import{useState,useEffect,useCallback,useRef}from\"react\";import{createPortal}from\"react-dom\";// ═══════════════════════════════════════════════════════════════\n// SHARED STATE BUS\n// ═══════════════════════════════════════════════════════════════\nconst SF_GLOBAL=\"__storeFinder__\";const createInitialSFState=()=>({searchLocation:null,searchText:\"\",mapReady:false,flyTo:null,stores:[],storesById:{},selectedId:null,hoveredId:null,distances:{},sortedIds:[],filters:{},filterOptions:{},filterLabels:{},totalVisible:0,fieldMap:{},language:\"nl\",country:\"nl\",translations:{},countryCenter:null,extraFields:[],dataReady:false});function _sfBus(id){if(typeof window===\"undefined\")return null;const w=window;if(!w[SF_GLOBAL])w[SF_GLOBAL]={};if(!w[SF_GLOBAL][id])w[SF_GLOBAL][id]={state:createInitialSFState(),listeners:new Set};return w[SF_GLOBAL][id];}function sfGet(id){return _sfBus(id)?.state??createInitialSFState();}function sfSet(id,updates){const bus=_sfBus(id);if(!bus)return;bus.state={...bus.state,...updates};bus.listeners.forEach(fn=>fn(bus.state));}function useSF(id){const[state,setState]=useState(()=>sfGet(id));useEffect(()=>{const bus=_sfBus(id);if(!bus)return;const listener=s=>setState({...s});bus.listeners.add(listener);setState({...bus.state});return()=>{bus.listeners.delete(listener);};},[id]);return state;}export default function StoreFinder_Geolocate(props){const{finderId=0,flyToZoom=14,size=44,iconColor=\"#555555\",iconColorActive=\"#2563EB\",bg=\"#ffffff\",bgHover=\"#f5f5f5\",bgActive=\"#EFF6FF\",borderRadius=8,borderWidth=1,borderColor=\"#e0e0e0\",shadow=\"0 1px 3px rgba(0,0,0,0.1)\",// Translatable texts\ntextMyLocation=\"Mijn locatie\",textIframe=\"Locatie werkt niet in preview. Test op de gepubliceerde site.\",textHttps=\"HTTPS is vereist voor locatiebepaling\",textUnavailable=\"Locatiebepaling is niet beschikbaar in deze browser\",textDenied=\"Sta locatie toe in je privacy-instellingen\",textDeviceUnavailable=\"Locatie is niet beschikbaar op dit apparaat\",textTimeout=\"Locatie timeout — probeer het opnieuw\",textInaccurate=\"Locatie te onnauwkeurig. Probeer opnieuw.\"}=props;const isCanvas=RenderTarget.current()===RenderTarget.canvas;const sf=useSF(finderId);const[status,setStatus]=useState(\"idle\");const[hovered,setHovered]=useState(false);const loadingRef=useRef(false);// ── Notification bar state ──\nconst[notif,setNotif]=useState(null);const notifTimersRef=useRef([]);const clearNotifTimers=useCallback(()=>{notifTimersRef.current.forEach(t=>clearTimeout(t));notifTimersRef.current=[];},[]);const showNotification=useCallback(msg=>{clearNotifTimers();// Phase 1: mount off-screen\nsetNotif({msg,phase:\"in\"});// Phase 2: after slide-in (400ms), mark visible\nnotifTimersRef.current.push(setTimeout(()=>{setNotif(n=>n?{...n,phase:\"visible\"}:null);},400));// Phase 3: after 3s hold, start fade out\nnotifTimersRef.current.push(setTimeout(()=>{setNotif(n=>n?{...n,phase:\"out\"}:null);},3400));// Phase 4: after fade-out (400ms), remove\nnotifTimersRef.current.push(setTimeout(()=>{setNotif(null);},3800));},[clearNotifTimers]);// Cleanup on unmount\nuseEffect(()=>()=>clearNotifTimers(),[clearNotifTimers]);// Detect iframe (Framer preview runs in iframe, published site does not)\nconst inIframe=typeof window!==\"undefined\"&&window.self!==window.top;const handleClick=useCallback(()=>{if(loadingRef.current)return;loadingRef.current=true;setStatus(\"loading\");// ── Environment checks ──\nif(inIframe){loadingRef.current=false;showNotification(textIframe);setStatus(\"error\");setTimeout(()=>setStatus(\"idle\"),5e3);return;}if(!window.isSecureContext){loadingRef.current=false;showNotification(textHttps);setStatus(\"error\");setTimeout(()=>setStatus(\"idle\"),5e3);return;}if(!navigator.geolocation){loadingRef.current=false;showNotification(textUnavailable);setStatus(\"error\");setTimeout(()=>setStatus(\"idle\"),5e3);return;}// ── watchPosition instead of getCurrentPosition ──\n// Safari iOS has a known bug where getCurrentPosition callbacks\n// silently never fire. watchPosition is more reliable on Safari.\n// We grab the first result and immediately clear the watch.\nlet done=false;const watchId=navigator.geolocation.watchPosition(// ── Success ──\npos=>{if(done)return;done=true;navigator.geolocation.clearWatch(watchId);clearTimeout(fallbackTimer);loadingRef.current=false;if(pos.coords.accuracy>1e4){showNotification(textInaccurate);setStatus(\"error\");setTimeout(()=>setStatus(\"idle\"),4e3);return;}const lat=pos.coords.latitude;const lng=pos.coords.longitude;sfSet(finderId,{searchLocation:{lat,lng},searchText:textMyLocation,flyTo:{lat,lng,zoom:flyToZoom}});setStatus(\"active\");if(props.onLocate){requestAnimationFrame(()=>props.onLocate?.());}},// ── Error ──\nerr=>{if(done)return;done=true;navigator.geolocation.clearWatch(watchId);clearTimeout(fallbackTimer);loadingRef.current=false;const reasons={1:textDenied,2:textDeviceUnavailable,3:textTimeout};showNotification(reasons[err.code]||`Error: ${err.message}`);setStatus(\"error\");setTimeout(()=>setStatus(\"idle\"),5e3);},{enableHighAccuracy:true,maximumAge:6e4});// Manual fallback timer — Safari may not fire either callback\nconst fallbackTimer=setTimeout(()=>{if(done)return;done=true;navigator.geolocation.clearWatch(watchId);loadingRef.current=false;showNotification(textTimeout);setStatus(\"error\");setTimeout(()=>setStatus(\"idle\"),5e3);},3e4);},[finderId,flyToZoom,inIframe,textIframe,textHttps,textUnavailable,textDenied,textDeviceUnavailable,textTimeout,textInaccurate,textMyLocation,showNotification]);// Icon color based on status\nconst currentIconColor=status===\"active\"?iconColorActive:status===\"error\"?\"#EF4444\":iconColor;const currentBg=status===\"active\"?bgActive:status===\"error\"?\"#FEF2F2\":hovered?bgHover:bg;const iconSize=Math.round(size*.45);// ── Canvas preview ──\nif(isCanvas){return /*#__PURE__*/_jsx(\"div\",{style:{...props.style,width:size,height:size,backgroundColor:bg,borderRadius,border:`${borderWidth}px solid ${borderColor}`,boxShadow:shadow,display:\"flex\",alignItems:\"center\",justifyContent:\"center\"},children:/*#__PURE__*/_jsx(\"svg\",{width:iconSize,height:iconSize,viewBox:\"0 0 24 24\",fill:\"none\",stroke:iconColor,strokeWidth:\"2\",strokeLinecap:\"round\",strokeLinejoin:\"round\",children:/*#__PURE__*/_jsx(\"polygon\",{points:\"3 11 22 2 13 21 11 13 3 11\"})})});}return /*#__PURE__*/_jsxs(\"button\",{onClick:handleClick,onMouseEnter:()=>setHovered(true),onMouseLeave:()=>setHovered(false),\"aria-label\":textMyLocation,title:status===\"loading\"?\"...\":status===\"active\"?textMyLocation:status===\"error\"?textDenied:textMyLocation,style:{...props.style,width:size,height:size,backgroundColor:currentBg,borderRadius,border:`${borderWidth}px solid ${borderColor}`,boxShadow:shadow,display:\"flex\",alignItems:\"center\",justifyContent:\"center\",cursor:status===\"loading\"?\"wait\":\"pointer\",padding:0,transition:\"background-color 0.15s, transform 0.1s\",transform:hovered&&status!==\"loading\"?\"scale(1.05)\":\"scale(1)\",position:\"relative\",overflow:\"visible\"},children:[status===\"loading\"&&/*#__PURE__*/_jsx(\"div\",{style:{position:\"absolute\",inset:0,display:\"flex\",alignItems:\"center\",justifyContent:\"center\"},children:/*#__PURE__*/_jsxs(\"svg\",{width:iconSize,height:iconSize,viewBox:\"0 0 24 24\",style:{animation:\"sf-geo-spin 1s linear infinite\"},children:[/*#__PURE__*/_jsx(\"style\",{children:`@keyframes sf-geo-spin{from{transform:rotate(0)}to{transform:rotate(360deg)}}`}),/*#__PURE__*/_jsx(\"circle\",{cx:\"12\",cy:\"12\",r:\"9\",fill:\"none\",stroke:iconColor,strokeWidth:\"2\",strokeDasharray:\"14 42\",strokeLinecap:\"round\"})]})}),status!==\"loading\"&&status!==\"error\"&&/*#__PURE__*/_jsx(\"svg\",{width:iconSize,height:iconSize,viewBox:\"0 0 24 24\",fill:status===\"active\"?iconColorActive:\"none\",stroke:currentIconColor,strokeWidth:\"2\",strokeLinecap:\"round\",strokeLinejoin:\"round\",children:/*#__PURE__*/_jsx(\"polygon\",{points:\"3 11 22 2 13 21 11 13 3 11\"})}),status===\"error\"&&/*#__PURE__*/_jsxs(\"svg\",{width:iconSize,height:iconSize,viewBox:\"0 0 24 24\",fill:\"none\",stroke:\"#EF4444\",strokeWidth:\"2.5\",strokeLinecap:\"round\",children:[/*#__PURE__*/_jsx(\"circle\",{cx:\"12\",cy:\"12\",r:\"9\",strokeWidth:\"2\"}),/*#__PURE__*/_jsx(\"line\",{x1:\"9\",y1:\"9\",x2:\"15\",y2:\"15\"}),/*#__PURE__*/_jsx(\"line\",{x1:\"15\",y1:\"9\",x2:\"9\",y2:\"15\"})]}),notif&&typeof document!==\"undefined\"&&/*#__PURE__*/createPortal(/*#__PURE__*/_jsx(\"div\",{style:{position:\"fixed\",top:0,left:0,right:0,zIndex:999999,display:\"flex\",justifyContent:\"center\",pointerEvents:\"none\",padding:\"0 16px\",transform:notif.phase===\"in\"?\"translateY(-100%)\":\"translateY(0)\",opacity:notif.phase===\"out\"?0:1,transition:notif.phase===\"in\"?\"none\":notif.phase===\"out\"?\"opacity 0.4s ease-out\":\"transform 0.4s cubic-bezier(0.16, 1, 0.3, 1)\"},ref:el=>{// Trigger slide-in on next frame after mount\nif(el&&notif.phase===\"in\"){requestAnimationFrame(()=>{el.style.transform=\"translateY(0)\";el.style.transition=\"transform 0.4s cubic-bezier(0.16, 1, 0.3, 1)\";});}},children:/*#__PURE__*/_jsxs(\"div\",{style:{marginTop:16,padding:\"12px 20px\",backgroundColor:\"rgba(0, 0, 0, 0.88)\",color:\"white\",fontSize:14,fontWeight:500,lineHeight:1.4,borderRadius:12,backdropFilter:\"blur(12px)\",WebkitBackdropFilter:\"blur(12px)\",boxShadow:\"0 4px 24px rgba(0,0,0,0.15)\",maxWidth:420,textAlign:\"center\",pointerEvents:\"auto\",display:\"flex\",alignItems:\"center\",gap:10},children:[/*#__PURE__*/_jsxs(\"svg\",{width:\"18\",height:\"18\",viewBox:\"0 0 24 24\",fill:\"none\",stroke:\"#F87171\",strokeWidth:\"2\",strokeLinecap:\"round\",strokeLinejoin:\"round\",style:{flexShrink:0},children:[/*#__PURE__*/_jsx(\"path\",{d:\"M21 10c0 7-9 13-9 13s-9-6-9-13a9 9 0 0 1 18 0z\"}),/*#__PURE__*/_jsx(\"circle\",{cx:\"12\",cy:\"10\",r:\"3\"})]}),notif.msg]})}),document.body)]});}// ═══════════════════════════════════════════════════════════════\n// PROPERTY CONTROLS\n// ═══════════════════════════════════════════════════════════════\naddPropertyControls(StoreFinder_Geolocate,{finderId:{type:ControlType.Number,defaultValue:0,min:0,step:1,displayStepper:true,title:\"Finder ID\"},flyToZoom:{type:ControlType.Number,defaultValue:14,min:5,max:20,step:.5,title:\"Zoom niveau\",description:\"Zoom level na het vinden van de locatie\"},size:{type:ControlType.Number,defaultValue:44,min:28,max:80,step:2,title:\"Grootte\"},iconColor:{type:ControlType.Color,defaultValue:\"#555555\",title:\"Icoon kleur\"},iconColorActive:{type:ControlType.Color,defaultValue:\"#2563EB\",title:\"Icoon kleur actief\"},bg:{type:ControlType.Color,defaultValue:\"#ffffff\",title:\"Achtergrond\"},bgHover:{type:ControlType.Color,defaultValue:\"#f5f5f5\",title:\"Achtergrond hover\"},bgActive:{type:ControlType.Color,defaultValue:\"#EFF6FF\",title:\"Achtergrond actief\"},borderRadius:{type:ControlType.Number,defaultValue:8,min:0,max:50,step:1,title:\"Radius\"},borderWidth:{type:ControlType.Number,defaultValue:1,min:0,max:4,step:1,title:\"Rand\"},borderColor:{type:ControlType.Color,defaultValue:\"#e0e0e0\",title:\"Rand kleur\"},shadow:{type:ControlType.String,defaultValue:\"0 1px 3px rgba(0,0,0,0.1)\",title:\"Schaduw\"},// ── Translatable texts ──\ntextMyLocation:{type:ControlType.String,defaultValue:\"Mijn locatie\",title:\"Tekst: mijn locatie\",description:\"Tekst die in de zoekbalk verschijnt na geolocatie\"},textDenied:{type:ControlType.String,defaultValue:\"Sta locatie toe in je privacy-instellingen\",title:\"Tekst: geweigerd\",description:\"Notificatie als de gebruiker locatie weigert\"},textTimeout:{type:ControlType.String,defaultValue:\"Locatie timeout — probeer het opnieuw\",title:\"Tekst: timeout\"},textInaccurate:{type:ControlType.String,defaultValue:\"Locatie te onnauwkeurig. Probeer opnieuw.\",title:\"Tekst: onnauwkeurig\"},textUnavailable:{type:ControlType.String,defaultValue:\"Locatiebepaling is niet beschikbaar in deze browser\",title:\"Tekst: niet beschikbaar\"},textDeviceUnavailable:{type:ControlType.String,defaultValue:\"Locatie is niet beschikbaar op dit apparaat\",title:\"Tekst: apparaat\"},textHttps:{type:ControlType.String,defaultValue:\"HTTPS is vereist voor locatiebepaling\",title:\"Tekst: HTTPS\"},textIframe:{type:ControlType.String,defaultValue:\"Locatie werkt niet in preview. Test op de gepubliceerde site.\",title:\"Tekst: iframe\"},onLocate:{type:ControlType.EventHandler}});\nexport const __FramerMetadata__ = {\"exports\":{\"default\":{\"type\":\"reactComponent\",\"name\":\"StoreFinder_Geolocate\",\"slots\":[],\"annotations\":{\"framerContractVersion\":\"1\"}},\"__FramerMetadata__\":{\"type\":\"variable\"}}}\n//# sourceMappingURL=./Storefinder_geolocate.map","import{jsx as _jsx,jsxs as _jsxs}from\"react/jsx-runtime\";import{addPropertyControls,ControlType,RenderTarget}from\"framer\";import React,{useState,useEffect,useRef,useCallback,useMemo}from\"react\";// @ts-ignore\nimport{useQueryData}from\"framer\";const SF_GLOBAL=\"__storeFinder__\";function _sfBus(id){if(typeof window===\"undefined\")return null;const w=window;if(!w[SF_GLOBAL])w[SF_GLOBAL]={};if(!w[SF_GLOBAL][id])w[SF_GLOBAL][id]={state:{},listeners:new Set};return w[SF_GLOBAL][id];}function resolveUrl(value){if(!value)return\"\";if(typeof value===\"string\")return value.trim();if(typeof value===\"object\"&&value.url)return String(value.url).trim();return String(value).trim();}function readCmsField(storeData,name){if(!storeData||!name)return\"\";return storeData.fields?.[`__extra_${name}`]??storeData.fields?.[name]??storeData[name]??\"\";}function findQueryInElement(element){if(!element)return null;if(element?.props?.query)return element;let cursor=element?.props?.children;let depth=0;while(cursor&&depth<8){if(cursor?.props?.query)return cursor;if(Array.isArray(cursor)){for(const c of cursor){if(c?.props?.query)return c;}}cursor=cursor?.props?.children;depth++;}return null;}function extractCollections(from){if(!from)return[];const cols=[];const walk=n=>{if(!n)return;if(n.type===\"Collection\")cols.push(n);else if(n.type===\"LeftJoin\"){walk(n.left);walk(n.right);}};walk(from);return cols;}function buildFieldsByTitle(collections){const result={};for(const col of collections){const alias=col?.alias||col?.id||\"main\";const controls=col?.data?.propertyControls;if(!controls||typeof controls!==\"object\")continue;const byTitle={};for(const fieldId of Object.keys(controls)){const ctrl=controls[fieldId];if(ctrl?.title)byTitle[ctrl.title]={id:fieldId,...ctrl};}result[alias]=byTitle;}return result;}function extractSlug(value,depth=0){if(value===null||value===undefined)return\"\";if(depth>4)return\"\";if(Array.isArray(value)){return value.length>0?extractSlug(value[0],depth+1):\"\";}if(typeof value===\"string\"){const s=value.trim();if(!s||s===\"[object Object]\")return\"\";if(s.includes(\"/\")){const parts=s.split(\"/\").filter(Boolean);return parts[parts.length-1]||\"\";}return s;}if(typeof value===\"number\"||typeof value===\"boolean\"){return String(value);}if(typeof value===\"object\"){if(value.pathVariables&&typeof value.pathVariables===\"object\"&&!Array.isArray(value.pathVariables)){const pv=value.pathVariables;if(typeof pv.slug===\"string\"&&pv.slug.trim()){return extractSlug(pv.slug,depth+1);}try{for(const k of Object.keys(pv)){const v=pv[k];if(typeof v===\"string\"&&v.trim()){return extractSlug(v,depth+1);}}}catch{}}const priority=[\"slug\",\"url\",\"href\",\"path\",\"pathname\",\"label\",\"title\",\"name\"];for(const key of priority){try{const v=value[key];if(v!==undefined&&v!==null){const result=extractSlug(v,depth+1);if(result)return result;}}catch{}}try{for(const key of Object.keys(value)){if(key===\"id\"||key===\"webPageId\")continue;const v=value[key];if(typeof v===\"string\"&&v.trim()&&v.trim()!==\"[object Object]\"){const result=extractSlug(v,depth+1);if(result)return result;}}}catch{}try{for(const key of Object.keys(value)){const v=value[key];if(v&&typeof v===\"object\"&&!Array.isArray(v)){const result=extractSlug(v,depth+1);if(result)return result;}}}catch{}if(typeof value.id===\"string\"){return value.id.trim();}}return\"\";}function findCollectionItemId(value){if(!value||typeof value!==\"object\")return\"\";try{if(value.unresolvedPathSlugs&&typeof value.unresolvedPathSlugs===\"object\"){for(const k of Object.keys(value.unresolvedPathSlugs)){const ref=value.unresolvedPathSlugs[k];if(ref?.collectionItemId&&typeof ref.collectionItemId===\"string\"){return ref.collectionItemId;}}}}catch{}return\"\";}function buildUrl(template,slug){const cleanSlug=String(slug||\"\").trim().replace(/^\\/+/,\"\");if(!cleanSlug)return\"\";const tpl=String(template||\"\").trim();if(tpl.includes(\":slug\")){return tpl.replace(\":slug\",encodeURIComponent(cleanSlug));}const cleanTpl=tpl.replace(/\\/+$/,\"\");if(!cleanTpl)return`/${cleanSlug}`;return`${cleanTpl}/${cleanSlug}`;}function getLocalePrefix(){if(typeof window===\"undefined\")return\"\";try{const path=window.location.pathname||\"\";const match=path.match(/^\\/([a-z]{2}(?:-[a-z]{2})?)(?=\\/|$)/i);if(!match)return\"\";return`/${match[1].toLowerCase()}`;}catch{return\"\";}}const SITE_HOSTS=new Set([\"circle-fit.com\",\"www.circle-fit.com\"]);function applyLocalePrefix(url){if(!url)return url;let path=url;if(/^https?:\\/\\//i.test(url)){// Same-site absolute URLs (e.g. CMS values like\n// \"https://www.circle-fit.com/join?club=x\") lose the active locale\n// and jump off staging/branch previews. Normalize them to a\n// relative path so the locale prefix can be applied. Truly\n// external URLs (Google Maps, etc.) pass through untouched.\ntry{const u=new URL(url);const sameSite=SITE_HOSTS.has(u.hostname)||typeof window!==\"undefined\"&&u.hostname===window.location.hostname;if(!sameSite)return url;path=u.pathname+u.search+u.hash;}catch{return url;}}if(!path.startsWith(\"/\"))return url;const prefix=getLocalePrefix();if(!prefix)return path;if(path===prefix||path.startsWith(prefix+\"/\"))return path;return prefix+path;}/**\n * @framerSupportedLayoutWidth any\n * @framerSupportedLayoutHeight any\n * @framerIntrinsicWidth 200\n * @framerIntrinsicHeight 44\n */export default function StoreFinder_Link(props){const{finderId,field,customFieldName,pathTemplate,slugFieldName,linkedCollection,linkedSlugField,target,buttonSlot,slotWidth,label,labelColor,labelFontSize,labelFontWeight,bgColor,borderColor,borderWidth,borderRadius,paddingV,paddingH,hoverBg,iconPosition,iconColor,align,hideWhenEmpty}=props;const isCanvas=RenderTarget.current()===RenderTarget.canvas;const ref=useRef(null);const[storeData,setStoreData]=useState(null);const[isHovered,setIsHovered]=useState(false);const hasSlot=Array.isArray(buttonSlot)&&buttonSlot.length>0&&buttonSlot[0];const fillWidth=slotWidth===\"fill\";const linkedColInstance=linkedCollection?.[0];const{linkedQuery,linkedSlugFieldId}=useMemo(()=>{if(!linkedColInstance)return{linkedQuery:null,linkedSlugFieldId:null};const queryParent=findQueryInElement(linkedColInstance);if(!queryParent)return{linkedQuery:null,linkedSlugFieldId:null};const q=queryParent.props.query;const cols=extractCollections(q?.from);const fbt=buildFieldsByTitle(cols);const mainAlias=cols[0]?.alias||\"\";const fields=fbt[mainAlias]||{};const slugTitle=linkedSlugField||\"Slug\";const slugFieldDef=fields[slugTitle]||Object.values(fields).find(f=>String(f.title||\"\").toLowerCase()===slugTitle.toLowerCase());return{linkedQuery:q,linkedSlugFieldId:slugFieldDef?.id||null};},[linkedColInstance,linkedSlugField]);const linkedRawData=linkedQuery?useQueryData(linkedQuery):[];const linkedSlugMap=useMemo(()=>{const map={};if(!Array.isArray(linkedRawData)||!linkedSlugFieldId)return map;for(const item of linkedRawData){if(item?.id){const slugVal=item[linkedSlugFieldId];if(slugVal&&typeof slugVal===\"string\"){map[item.id]=slugVal.trim();}}}return map;},[linkedRawData,linkedSlugFieldId]);useEffect(()=>{const findData=()=>{if(typeof window===\"undefined\")return null;const w=window;if(!w.__sfCards__||!ref.current)return null;const cardEl=ref.current.closest(\"[data-sf-card]\");if(!cardEl)return null;const key=cardEl.getAttribute(\"data-sf-card\");return key?w.__sfCards__[key]||null:null;};const check=()=>{const data=findData();if(data){setStoreData(data);return true;}return false;};if(check())return;let attempts=0;const interval=setInterval(()=>{if(check()||++attempts>20)clearInterval(interval);},50);return()=>{clearInterval(interval);};},[]);useEffect(()=>{const bus=_sfBus(finderId);if(!bus)return;const listener=()=>{if(typeof window===\"undefined\")return;const w=window;if(!w.__sfCards__||!ref.current)return;const cardEl=ref.current.closest(\"[data-sf-card]\");if(!cardEl)return;const key=cardEl.getAttribute(\"data-sf-card\");if(key&&w.__sfCards__[key]){setStoreData({...w.__sfCards__[key]});}};bus.listeners.add(listener);return()=>{bus.listeners.delete(listener);};},[finderId]);const finalUrl=useMemo(()=>{if(!storeData)return\"\";if(field===\"googleMapsUrl\"){const url=resolveUrl(storeData.googleMapsUrl);if(url)return url;if(storeData.lat&&storeData.lng){return`https://www.google.com/maps/search/?api=1&query=${storeData.lat},${storeData.lng}`;}return\"\";}if(field===\"custom\"){return resolveUrl(readCmsField(storeData,customFieldName));}if(field===\"framerPage\"){const raw=readCmsField(storeData,slugFieldName);const itemId=findCollectionItemId(raw);if(itemId&&linkedSlugMap[itemId]){return buildUrl(pathTemplate,linkedSlugMap[itemId]);}const slug=extractSlug(raw);return buildUrl(pathTemplate,slug);}return\"\";},[storeData,field,customFieldName,pathTemplate,slugFieldName,linkedSlugMap]);const effectiveTarget=field===\"framerPage\"?target||\"_self\":target||\"_blank\";const handleClick=useCallback(e=>{e.stopPropagation();if(!finalUrl||typeof window===\"undefined\")return;const urlToOpen=applyLocalePrefix(finalUrl);window.open(urlToOpen,effectiveTarget,effectiveTarget===\"_blank\"?\"noopener,noreferrer\":undefined);},[finalUrl,effectiveTarget,field]);const renderSlot=()=>{const child=buttonSlot[0];if(!fillWidth)return child;return /*#__PURE__*/React.cloneElement(child,{style:{...child.props?.style||{},width:\"100%\",maxWidth:\"100%\"}});};const ariaLabel=useMemo(()=>{if(field===\"framerPage\")return label||\"Open pagina\";if(field===\"googleMapsUrl\")return label||\"Open in Google Maps\";return label||\"Externe link\";},[field,label]);if(isCanvas){const linkedConnected=!!linkedColInstance;const previewBadge=field===\"framerPage\"?`📄 ${pathTemplate||\"/:slug\"}${linkedConnected?\" \\xb7 🔗\":\"\"}`:field===\"custom\"?`🔗 ${customFieldName||\"veld\"}`:\"🗺️ Maps\";if(hasSlot){return /*#__PURE__*/_jsxs(\"div\",{ref:ref,style:{...props.style,position:\"relative\",width:fillWidth?\"100%\":undefined,display:fillWidth?\"block\":undefined},children:[renderSlot(),/*#__PURE__*/_jsxs(\"div\",{\"aria-hidden\":\"true\",style:{position:\"absolute\",top:-1,right:-1,backgroundColor:\"#0078FF\",color:\"#fff\",fontSize:9,fontWeight:600,padding:\"1px 5px\",borderRadius:\"0 0 0 4px\",fontFamily:\"-apple-system, sans-serif\",pointerEvents:\"none\",maxWidth:\"85%\",overflow:\"hidden\",textOverflow:\"ellipsis\",whiteSpace:\"nowrap\"},children:[previewBadge,fillWidth?\" \\xb7 fill\":\"\"]})]});}return /*#__PURE__*/_jsx(\"div\",{ref:ref,style:{...props.style,display:\"flex\",justifyContent:align===\"stretch\"?\"stretch\":align===\"left\"?\"flex-start\":align===\"right\"?\"flex-end\":\"center\"},children:/*#__PURE__*/_jsxs(\"div\",{style:{display:\"inline-flex\",alignItems:\"center\",gap:8,backgroundColor:bgColor,color:labelColor,fontSize:labelFontSize,fontWeight:labelFontWeight,padding:`${paddingV}px ${paddingH}px`,borderRadius,border:borderWidth>0?`${borderWidth}px solid ${borderColor}`:\"none\",fontFamily:'-apple-system, BlinkMacSystemFont, \"Segoe UI\", Roboto, sans-serif',width:align===\"stretch\"?\"100%\":undefined,justifyContent:\"center\"},children:[iconPosition===\"left\"&&/*#__PURE__*/_jsx(ExternalIcon,{color:iconColor}),/*#__PURE__*/_jsx(\"span\",{children:label}),iconPosition===\"right\"&&/*#__PURE__*/_jsx(ExternalIcon,{color:iconColor})]})});}if(hideWhenEmpty&&!finalUrl){return /*#__PURE__*/_jsx(\"div\",{ref:ref,style:{...props.style,display:\"none\"},\"aria-hidden\":\"true\"});}if(hasSlot){return /*#__PURE__*/_jsx(\"div\",{ref:ref,onClick:handleClick,role:\"link\",tabIndex:finalUrl?0:-1,\"aria-label\":ariaLabel,\"aria-disabled\":!finalUrl,onKeyDown:e=>{if((e.key===\"Enter\"||e.key===\" \")&&finalUrl){e.preventDefault();handleClick(e);}},style:{...props.style,cursor:finalUrl?\"pointer\":\"default\",width:fillWidth?\"100%\":undefined,display:fillWidth?\"block\":undefined},children:renderSlot()});}return /*#__PURE__*/_jsx(\"div\",{ref:ref,style:{...props.style,display:\"flex\",justifyContent:align===\"stretch\"?\"stretch\":align===\"left\"?\"flex-start\":align===\"right\"?\"flex-end\":\"center\"},children:/*#__PURE__*/_jsxs(\"button\",{type:\"button\",onClick:handleClick,onMouseEnter:()=>setIsHovered(true),onMouseLeave:()=>setIsHovered(false),\"aria-label\":ariaLabel,\"aria-disabled\":!finalUrl,style:{display:\"inline-flex\",alignItems:\"center\",justifyContent:\"center\",gap:8,backgroundColor:isHovered?hoverBg:bgColor,color:labelColor,fontSize:labelFontSize,fontWeight:labelFontWeight,padding:`${paddingV}px ${paddingH}px`,borderRadius,border:borderWidth>0?`${borderWidth}px solid ${borderColor}`:\"none\",cursor:finalUrl?\"pointer\":\"default\",opacity:finalUrl?1:.4,transition:\"background-color 0.15s, opacity 0.15s\",fontFamily:'-apple-system, BlinkMacSystemFont, \"Segoe UI\", Roboto, sans-serif',width:align===\"stretch\"?\"100%\":undefined,whiteSpace:\"nowrap\"},children:[iconPosition===\"left\"&&/*#__PURE__*/_jsx(ExternalIcon,{color:iconColor}),/*#__PURE__*/_jsx(\"span\",{children:label}),iconPosition===\"right\"&&/*#__PURE__*/_jsx(ExternalIcon,{color:iconColor})]})});}StoreFinder_Link.defaultProps={finderId:0,field:\"googleMapsUrl\",customFieldName:\"\",pathTemplate:\"/:slug\",slugFieldName:\"slug\",linkedCollection:[],linkedSlugField:\"Slug\",target:\"_blank\",buttonSlot:[],slotWidth:\"auto\",label:\"Route plannen\",labelColor:\"#FFFFFF\",labelFontSize:14,labelFontWeight:\"600\",bgColor:\"#1a1a1a\",borderColor:\"transparent\",borderWidth:0,borderRadius:8,paddingV:12,paddingH:20,hoverBg:\"#333333\",iconPosition:\"right\",iconColor:\"#FFFFFF\",align:\"stretch\",hideWhenEmpty:false};function ExternalIcon({color=\"#fff\"}){return /*#__PURE__*/_jsxs(\"svg\",{width:\"14\",height:\"14\",viewBox:\"0 0 24 24\",fill:\"none\",stroke:color,strokeWidth:\"2\",strokeLinecap:\"round\",strokeLinejoin:\"round\",\"aria-hidden\":\"true\",style:{flexShrink:0},children:[/*#__PURE__*/_jsx(\"path\",{d:\"M18 13v6a2 2 0 01-2 2H5a2 2 0 01-2-2V8a2 2 0 012-2h6\"}),/*#__PURE__*/_jsx(\"polyline\",{points:\"15 3 21 3 21 9\"}),/*#__PURE__*/_jsx(\"line\",{x1:\"10\",y1:\"14\",x2:\"21\",y2:\"3\"})]});}addPropertyControls(StoreFinder_Link,{finderId:{type:ControlType.Number,defaultValue:0,min:0,step:1,displayStepper:true,title:\"Finder ID\",description:\"ID van de StoreFinder Provider waar deze knop bij hoort\"},field:{type:ControlType.Enum,defaultValue:\"googleMapsUrl\",title:\"Link type\",options:[\"googleMapsUrl\",\"custom\",\"framerPage\"],optionTitles:[\"Google Maps\",\"Externe URL\",\"Framer pagina\"],description:\"*Google Maps* opent locatie \\xb7 *Externe URL* leest een complete URL uit een CMS-veld \\xb7 *Framer pagina* bouwt een URL met een slug uit het CMS\"},pathTemplate:{type:ControlType.String,defaultValue:\"/:slug\",title:\"Pad\",placeholder:\"/schedule-trial-lesson/:slug\",description:\"Pad of volledige URL met *:slug* als placeholder. Locale-prefix wordt automatisch behouden.\",hidden:p=>p.field!==\"framerPage\"},slugFieldName:{type:ControlType.String,defaultValue:\"slug\",title:\"Slug veld\",placeholder:\"Link proefles NIEUW\",description:\"Naam van het CMS-veld in de Locations-collection dat de Reference of slug bevat\",hidden:p=>p.field!==\"framerPage\"},linkedCollection:{type:ControlType.ComponentInstance,title:\"Linked Collection\",description:\"Sleep een (verborgen) Collection List hierheen die gekoppeld is aan de doel-collection (bv. Schedule Trial Lessons). Hieruit haalt de knop locale-aware slugs op via *collectionItemId*.\",hidden:p=>p.field!==\"framerPage\"},linkedSlugField:{type:ControlType.String,defaultValue:\"Slug\",title:\"Slug veld (linked)\",placeholder:\"Slug\",description:\"Naam van het slug-veld in de linked collection (zoals het in het CMS staat, hoofdletter-gevoelig)\",hidden:p=>p.field!==\"framerPage\"},customFieldName:{type:ControlType.String,defaultValue:\"\",title:\"URL veld\",placeholder:\"Bijv. Website\",description:\"Naam van het CMS-veld dat de complete URL bevat (zoals ingesteld bij 'Extra CMS velden' in de Provider)\",hidden:p=>p.field!==\"custom\"},target:{type:ControlType.Enum,defaultValue:\"_blank\",title:\"Opent in\",options:[\"_blank\",\"_self\"],optionTitles:[\"Nieuw tabblad\",\"Zelfde pagina\"],displaySegmentedControl:true},buttonSlot:{type:ControlType.ComponentInstance,title:\"Custom knop\",description:\"Sleep je eigen knop-ontwerp hierin. Laat leeg voor de standaard knop.\"},slotWidth:{type:ControlType.Enum,defaultValue:\"auto\",title:\"Knop breedte\",options:[\"auto\",\"fill\"],optionTitles:[\"Auto\",\"Vullend\"],displaySegmentedControl:true,description:\"*Auto*: behoudt originele breedte \\xb7 *Vullend*: neemt volledige wrapper-breedte over\"},label:{type:ControlType.String,defaultValue:\"Route plannen\",title:\"Label\",hidden:p=>p.buttonSlot&&Array.isArray(p.buttonSlot)&&p.buttonSlot.length>0},bgColor:{type:ControlType.Color,defaultValue:\"#1a1a1a\",title:\"Achtergrond\",hidden:p=>p.buttonSlot&&Array.isArray(p.buttonSlot)&&p.buttonSlot.length>0},hoverBg:{type:ControlType.Color,defaultValue:\"#333333\",title:\"Hover bg\",hidden:p=>p.buttonSlot&&Array.isArray(p.buttonSlot)&&p.buttonSlot.length>0},labelColor:{type:ControlType.Color,defaultValue:\"#FFFFFF\",title:\"Tekst kleur\",hidden:p=>p.buttonSlot&&Array.isArray(p.buttonSlot)&&p.buttonSlot.length>0},labelFontSize:{type:ControlType.Number,defaultValue:14,min:10,max:24,step:1,title:\"Tekst grootte\",hidden:p=>p.buttonSlot&&Array.isArray(p.buttonSlot)&&p.buttonSlot.length>0},labelFontWeight:{type:ControlType.Enum,defaultValue:\"600\",title:\"Gewicht\",options:[\"400\",\"500\",\"600\",\"700\"],optionTitles:[\"Regular\",\"Medium\",\"Semibold\",\"Bold\"],hidden:p=>p.buttonSlot&&Array.isArray(p.buttonSlot)&&p.buttonSlot.length>0},borderRadius:{type:ControlType.Number,defaultValue:8,min:0,max:30,step:1,title:\"Hoekradius\",hidden:p=>p.buttonSlot&&Array.isArray(p.buttonSlot)&&p.buttonSlot.length>0},borderColor:{type:ControlType.Color,defaultValue:\"transparent\",title:\"Rand kleur\",hidden:p=>p.buttonSlot&&Array.isArray(p.buttonSlot)&&p.buttonSlot.length>0},borderWidth:{type:ControlType.Number,defaultValue:0,min:0,max:4,step:1,title:\"Rand dikte\",hidden:p=>p.buttonSlot&&Array.isArray(p.buttonSlot)&&p.buttonSlot.length>0},paddingV:{type:ControlType.Number,defaultValue:12,min:4,max:24,step:1,title:\"Padding V\",hidden:p=>p.buttonSlot&&Array.isArray(p.buttonSlot)&&p.buttonSlot.length>0},paddingH:{type:ControlType.Number,defaultValue:20,min:8,max:48,step:1,title:\"Padding H\",hidden:p=>p.buttonSlot&&Array.isArray(p.buttonSlot)&&p.buttonSlot.length>0},iconPosition:{type:ControlType.Enum,defaultValue:\"right\",title:\"Icoon\",options:[\"none\",\"left\",\"right\"],optionTitles:[\"Geen\",\"Links\",\"Rechts\"],hidden:p=>p.buttonSlot&&Array.isArray(p.buttonSlot)&&p.buttonSlot.length>0},iconColor:{type:ControlType.Color,defaultValue:\"#FFFFFF\",title:\"Icoon kleur\",hidden:p=>{const hasSlot=p.buttonSlot&&Array.isArray(p.buttonSlot)&&p.buttonSlot.length>0;return hasSlot||p.iconPosition===\"none\";}},align:{type:ControlType.Enum,defaultValue:\"stretch\",title:\"Uitlijning\",options:[\"stretch\",\"left\",\"center\",\"right\"],optionTitles:[\"Volledig\",\"Links\",\"Midden\",\"Rechts\"],hidden:p=>p.buttonSlot&&Array.isArray(p.buttonSlot)&&p.buttonSlot.length>0},hideWhenEmpty:{type:ControlType.Boolean,defaultValue:false,title:\"Verberg als leeg\",description:\"Verberg de knop als er geen URL beschikbaar is\"}});\nexport const __FramerMetadata__ = {\"exports\":{\"default\":{\"type\":\"reactComponent\",\"name\":\"StoreFinder_Link\",\"slots\":[],\"annotations\":{\"framerSupportedLayoutWidth\":\"any\",\"framerIntrinsicHeight\":\"44\",\"framerContractVersion\":\"1\",\"framerIntrinsicWidth\":\"200\",\"framerSupportedLayoutHeight\":\"any\"}},\"__FramerMetadata__\":{\"type\":\"variable\"}}}\n//# sourceMappingURL=./Storefinder_Link.map","import{jsx as _jsx,jsxs as _jsxs}from\"react/jsx-runtime\";import{addPropertyControls,ControlType,RenderTarget}from\"framer\";import React,{useState,useEffect,useRef,useMemo,useCallback}from\"react\";import{LazyMotion,domAnimation,m}from\"framer-motion\";const SF_GLOBAL=\"__storeFinder__\";const createInitialSFState=()=>({stores:[],storesById:{},selectedId:null,hoveredId:null,searchLocation:null,searchText:\"\",distances:{},sortedIds:[],filters:{},filterOptions:{},mapReady:false,flyTo:null,totalVisible:0,fieldMap:{},language:\"nl\",country:\"nl\",translations:{},countryCenter:null,extraFields:[],dataReady:false});function _sfBus(id){if(typeof window===\"undefined\")return null;const w=window;if(!w[SF_GLOBAL])w[SF_GLOBAL]={};if(!w[SF_GLOBAL][id]){w[SF_GLOBAL][id]={state:createInitialSFState(),listeners:new Set};}return w[SF_GLOBAL][id];}function sfGet(id){return _sfBus(id)?.state??createInitialSFState();}function sfSet(id,updates){const bus=_sfBus(id);if(!bus)return;bus.state={...bus.state,...updates};bus.listeners.forEach(fn=>fn(bus.state));}function useSFSelector(id,selector){const[value,setValue]=useState(()=>selector(sfGet(id)));const selectorRef=useRef(selector);selectorRef.current=selector;useEffect(()=>{const bus=_sfBus(id);if(!bus)return;const listener=s=>{const next=selectorRef.current(s);setValue(prev=>{if(prev===next)return prev;if(typeof prev===\"object\"&&typeof next===\"object\"&&prev!==null&&next!==null){const pKeys=Object.keys(prev);const nKeys=Object.keys(next);if(pKeys.length===nKeys.length&&pKeys.every(k=>prev[k]===next[k]))return prev;}return next;});};bus.listeners.add(listener);setValue(selectorRef.current(bus.state));return()=>{bus.listeners.delete(listener);};},[id]);return value;}function formatDistance(km){if(km<1)return`${Math.round(km*1e3)} m`;if(km<10)return`${km.toFixed(1)} km`;return`${Math.round(km)} km`;}const _sfListCache={};function getListCache(finderId){if(!_sfListCache[finderId]){_sfListCache[finderId]={loaded:false,lastSearchLoc:null,lastSortedIds:[]};}return _sfListCache[finderId];}const StoreCard=/*#__PURE__*/React.memo(function StoreCard({store,isActive,isHovered,distance,onClick,onHover,onLeave,cardShell,cardBg,cardBgActive,cardBorderWidth,cardBorderColor,cardBorderColorActive,cardShadow,cardShadowActive,cardPadding,showImage,imageWidth,imageHeight,imageBorderRadius,imageObjectFit,showName,nameColor,nameFontSize,nameFontWeight,showCity,cityColor,cityFontSize,showAddress,addressColor,addressFontSize,showDistance,distanceColor,distanceFontSize,cardDirection,cardContentGap,index,animateCards}){const hasDistance=distance!==undefined;return /*#__PURE__*/_jsxs(m.div,{layout:animateCards?true:undefined,initial:animateCards?{opacity:0,y:12}:undefined,animate:animateCards?{opacity:1,y:0}:undefined,exit:animateCards?{opacity:0,y:-8}:undefined,transition:{duration:.25,delay:Math.min(index*.03,.3)},onClick:onClick,onMouseEnter:onHover,onMouseLeave:onLeave,style:{...cardShell,backgroundColor:isActive||isHovered?cardBgActive:cardBg,border:`${cardBorderWidth}px solid ${isActive?cardBorderColorActive:cardBorderColor}`,boxShadow:isActive?cardShadowActive:cardShadow,cursor:\"pointer\",transition:\"background-color 0.15s, border-color 0.15s, box-shadow 0.15s\",position:\"relative\"},children:[showImage&&store.image&&/*#__PURE__*/_jsx(\"div\",{style:{width:imageWidth,height:imageHeight,borderRadius:imageBorderRadius,overflow:\"hidden\",flexShrink:0,backgroundColor:\"#f0f0f0\"},children:/*#__PURE__*/_jsx(\"img\",{src:typeof store.image===\"object\"?store.image?.url||\"\":store.image,alt:store.name,style:{width:\"100%\",height:\"100%\",objectFit:imageObjectFit},loading:index===0?\"eager\":\"lazy\"})}),/*#__PURE__*/_jsxs(\"div\",{style:{flex:1,minWidth:0,display:\"flex\",flexDirection:\"column\",justifyContent:\"center\"},children:[showName&&/*#__PURE__*/_jsx(\"div\",{style:{fontSize:nameFontSize,fontWeight:nameFontWeight,color:nameColor,lineHeight:1.3,overflow:\"hidden\",textOverflow:\"ellipsis\",whiteSpace:\"nowrap\"},children:store.name}),showCity&&store.city&&/*#__PURE__*/_jsx(\"div\",{style:{fontSize:cityFontSize,color:cityColor,marginTop:2},children:store.city}),showAddress&&store.address&&/*#__PURE__*/_jsxs(\"div\",{style:{fontSize:addressFontSize,color:addressColor,marginTop:2,display:\"flex\",alignItems:\"center\",gap:4},children:[/*#__PURE__*/_jsxs(\"svg\",{width:\"12\",height:\"12\",viewBox:\"0 0 24 24\",fill:\"none\",stroke:addressColor,strokeWidth:\"2\",strokeLinecap:\"round\",style:{flexShrink:0},children:[/*#__PURE__*/_jsx(\"path\",{d:\"M21 10c0 7-9 13-9 13s-9-6-9-13a9 9 0 0118 0z\"}),/*#__PURE__*/_jsx(\"circle\",{cx:\"12\",cy:\"10\",r:\"3\"})]}),/*#__PURE__*/_jsx(\"span\",{style:{overflow:\"hidden\",textOverflow:\"ellipsis\",whiteSpace:\"nowrap\"},children:store.address})]}),showDistance&&hasDistance&&/*#__PURE__*/_jsx(\"div\",{style:{fontSize:distanceFontSize,color:distanceColor,fontWeight:500,marginTop:6},children:formatDistance(distance)})]}),showDistance&&hasDistance&&/*#__PURE__*/_jsx(\"div\",{style:{position:\"absolute\",top:cardPadding,right:cardPadding,fontSize:distanceFontSize-1,color:distanceColor,fontWeight:500,opacity:.8},children:formatDistance(distance)})]});});export default function StoreFinder_List(props){const{finderId=0,direction=\"vertical\",gridColumns=2,gap=12,cardSizing=\"fill\",cardWidth=260,padding=0,paddingIsMixed=false,paddingTop=0,paddingRight=0,paddingBottom=0,paddingLeft=0,cardBg=\"#FFFFFF\",cardBgActive=\"#F0F7FF\",cardBorderColor=\"#e8e8e8\",cardBorderColorActive=\"#0078FF\",cardBorderWidth=1,cardBorderRadius=10,cardPadding=14,cardShadow=\"0 1px 3px rgba(0,0,0,0.06)\",cardShadowActive=\"0 2px 8px rgba(0,120,255,0.15)\",showImage=true,imageWidth=100,imageHeight=80,imageBorderRadius=6,imageObjectFit=\"cover\",showName=true,nameColor=\"#1a1a1a\",nameFontSize=15,nameFontWeight=600,showCity=true,cityColor=\"#666666\",cityFontSize=13,showAddress=true,addressColor=\"#888888\",addressFontSize=13,showDistance=true,distanceColor=\"#0078FF\",distanceFontSize=13,cardDirection=\"horizontal\",cardContentGap=12,animateCards=true,itemsPerPage=20,paginationEnabled=false,loadMoreText=\"\",loadMoreBg=\"#f5f5f5\",loadMoreColor=\"#333333\",loadMoreRadius=8,noResultsText=\"Geen locaties gevonden\",noResultsColor=\"#888888\",noResultsFontSize=14,cardSlot=[],cardSlotActive=[],alleenNaZoeken=false}=props;const isCanvas=RenderTarget.current()===RenderTarget.canvas;const isGrid=direction===\"grid\";const isHorizontal=direction===\"horizontal\";const sortedIds=useSFSelector(finderId,s=>s.sortedIds);const storesById=useSFSelector(finderId,s=>s.storesById);const distances=useSFSelector(finderId,s=>s.distances);const selectedId=useSFSelector(finderId,s=>s.selectedId);const hoveredId=useSFSelector(finderId,s=>s.hoveredId);const dataReady=useSFSelector(finderId,s=>s.dataReady);const stores=useSFSelector(finderId,s=>s.stores);const searchLocation=useSFSelector(finderId,s=>s.searchLocation);const searchTextState=useSFSelector(finderId,s=>s.searchText);const translations=useSFSelector(finderId,s=>s.translations);const t=(key,fallback)=>translations?.[key]||fallback;const hasSlot=Array.isArray(cardSlot)&&cardSlot.length>0&&cardSlot[0];const hasSlotActive=Array.isArray(cardSlotActive)&&cardSlotActive.length>0&&cardSlotActive[0];const[visibleCount,setVisibleCount]=useState(itemsPerPage);const listRef=useRef(null);const cache=getListCache(finderId);if(dataReady&&stores.length>=0)cache.loaded=true;useEffect(()=>{setVisibleCount(itemsPerPage);},[sortedIds.length,itemsPerPage]);const visibleStores=useMemo(()=>{const result=sortedIds.map(id=>storesById[id]).filter(Boolean);return paginationEnabled?result.slice(0,visibleCount):result;},[sortedIds,storesById,paginationEnabled,visibleCount]);const[searchPending,setSearchPending]=useState(false);const prevSearchLocRef=useRef(searchLocation);useEffect(()=>{const prev=prevSearchLocRef.current;const curr=searchLocation;prevSearchLocRef.current=curr;if(curr&&curr!==prev&&cache.loaded){cache.lastSortedIds=sortedIds;setSearchPending(true);}},[searchLocation]);useEffect(()=>{if(!searchPending)return;if(sortedIds!==cache.lastSortedIds&&dataReady){const timer=setTimeout(()=>setSearchPending(false),400);return()=>clearTimeout(timer);}const fallback=setTimeout(()=>setSearchPending(false),2e3);return()=>clearTimeout(fallback);},[searchPending,sortedIds,dataReady]);const showSkeleton=!cache.loaded||searchPending;const showCards=cache.loaded&&!searchPending&&visibleStores.length>0;const showEmpty=cache.loaded&&!searchPending&&visibleStores.length===0;const totalCount=sortedIds.length;const hasMore=paginationEnabled&&visibleCount<totalCount;useEffect(()=>{if(!hasSlot)return;const w=window;if(!w.__sfCards__)w.__sfCards__={};for(const store of visibleStores){w.__sfCards__[`${finderId}-${store.id}`]={...store,distance:distances[store.id],isActive:selectedId===store.id,isHovered:hoveredId===store.id};}});const handleCardClick=useCallback(storeId=>{sfSet(finderId,{selectedId:storeId,flyTo:{lat:storesById[storeId]?.lat??0,lng:storesById[storeId]?.lng??0}});},[finderId,storesById]);const handleCardHover=useCallback(storeId=>{sfSet(finderId,{hoveredId:storeId});},[finderId]);const paddingStyle=paddingIsMixed?`${paddingTop}px ${paddingRight}px ${paddingBottom}px ${paddingLeft}px`:`${padding}px`;const getContainerLayoutStyle=()=>{if(isGrid){return{display:\"grid\",gridTemplateColumns:`repeat(${Math.max(1,gridColumns)}, minmax(0, 1fr))`,gap,padding:paddingStyle};}return{display:\"flex\",flexDirection:isHorizontal?\"row\":\"column\",gap,padding:paddingStyle};};if(isCanvas){const previewCards=Array.from({length:3},(_,i)=>({name:[\"Sportschool Centrum\",\"Fitness Plaza\",\"Gym Express\"][i],city:[\"Amsterdam\",\"Rotterdam\",\"Utrecht\"][i],address:[\"Keizersgracht 123\",\"Coolsingel 45\",\"Oudegracht 67\"][i],distance:[\"0.9 km\",\"1.3 km\",\"2.0 km\"][i]}));return /*#__PURE__*/_jsx(\"div\",{style:{...props.style,...getContainerLayoutStyle(),overflow:\"hidden\"},children:previewCards.map((card,i)=>/*#__PURE__*/_jsxs(\"div\",{style:{display:\"flex\",flexDirection:cardDirection===\"horizontal\"?\"row\":\"column\",gap:cardContentGap,backgroundColor:i===0?cardBgActive:cardBg,border:`${cardBorderWidth}px solid ${i===0?cardBorderColorActive:cardBorderColor}`,borderRadius:cardBorderRadius,padding:cardPadding,boxShadow:i===0?cardShadowActive:cardShadow,flex:!isGrid&&(cardSizing===\"fixed\"||isHorizontal)?\"0 0 auto\":undefined,width:!isGrid&&cardSizing===\"fixed\"?cardWidth:undefined,minWidth:!isGrid&&cardSizing===\"fill\"&&isHorizontal?cardWidth:undefined},children:[showImage&&/*#__PURE__*/_jsx(\"div\",{style:{width:imageWidth,height:imageHeight,borderRadius:imageBorderRadius,backgroundColor:\"#e8e8e8\",flexShrink:0,display:\"flex\",alignItems:\"center\",justifyContent:\"center\"},children:/*#__PURE__*/_jsxs(\"svg\",{width:\"24\",height:\"24\",viewBox:\"0 0 24 24\",fill:\"none\",stroke:\"#ccc\",strokeWidth:\"1.5\",children:[/*#__PURE__*/_jsx(\"rect\",{x:\"3\",y:\"3\",width:\"18\",height:\"18\",rx:\"2\"}),/*#__PURE__*/_jsx(\"circle\",{cx:\"8.5\",cy:\"8.5\",r:\"1.5\"}),/*#__PURE__*/_jsx(\"path\",{d:\"M21 15l-5-5L5 21\"})]})}),/*#__PURE__*/_jsxs(\"div\",{style:{flex:1,minWidth:0},children:[showName&&/*#__PURE__*/_jsx(\"div\",{style:{fontSize:nameFontSize,fontWeight:nameFontWeight,color:nameColor},children:card.name}),showCity&&/*#__PURE__*/_jsx(\"div\",{style:{fontSize:cityFontSize,color:cityColor,marginTop:2},children:card.city}),showAddress&&/*#__PURE__*/_jsx(\"div\",{style:{fontSize:addressFontSize,color:addressColor,marginTop:2},children:card.address}),showDistance&&/*#__PURE__*/_jsx(\"div\",{style:{fontSize:distanceFontSize,color:distanceColor,fontWeight:500,marginTop:6},children:card.distance})]})]},i))});}const scrollClass=`sf-list-${finderId}`;const shimmerClass=`sf-shimmer-${finderId}`;const skeletonCount=paginationEnabled?Math.min(itemsPerPage,6):6;const cardShell={display:\"flex\",flexDirection:cardDirection===\"horizontal\"?\"row\":\"column\",gap:cardContentGap,backgroundColor:cardBg,border:`${cardBorderWidth}px solid ${cardBorderColor}`,borderRadius:cardBorderRadius,padding:cardPadding,boxShadow:cardShadow,flex:!isGrid&&(cardSizing===\"fixed\"||isHorizontal)?\"0 0 auto\":undefined,width:!isGrid&&cardSizing===\"fixed\"?cardWidth:undefined,minWidth:!isGrid&&cardSizing===\"fill\"&&isHorizontal?cardWidth:undefined};const heeftGezocht=!!searchLocation||!!(searchTextState&&searchTextState.trim().length>0);if(alleenNaZoeken&&!heeftGezocht&&!isCanvas)return null;return /*#__PURE__*/_jsxs(LazyMotion,{features:domAnimation,children:[/*#__PURE__*/_jsx(\"style\",{children:`.${scrollClass}::-webkit-scrollbar{display:none}.${scrollClass}{-ms-overflow-style:none;scrollbar-width:none}@keyframes sf-shimmer{0%{transform:translateX(-100%)}100%{transform:translateX(100%)}}.${shimmerClass}{background:#f0f0f0;position:relative;overflow:hidden}.${shimmerClass}::after{content:'';position:absolute;inset:0;background:linear-gradient(90deg,transparent 0%,rgba(255,255,255,0.4) 50%,transparent 100%);animation:sf-shimmer 1.5s infinite ease-in-out;will-change:transform}`}),/*#__PURE__*/_jsxs(\"div\",{ref:listRef,className:scrollClass,style:{...props.style,fontFamily:'-apple-system, BlinkMacSystemFont, \"Segoe UI\", Roboto, sans-serif',overflowX:isHorizontal?\"auto\":undefined,overflowY:!isHorizontal?\"auto\":undefined,contain:\"layout style\"},children:[/*#__PURE__*/_jsx(\"div\",{style:{...getContainerLayoutStyle(),display:showSkeleton?getContainerLayoutStyle().display:\"none\"},children:Array.from({length:skeletonCount},(_,i)=>/*#__PURE__*/_jsxs(\"div\",{style:{...cardShell,opacity:1-i*.08},children:[showImage&&/*#__PURE__*/_jsx(\"div\",{className:shimmerClass,style:{width:imageWidth,height:imageHeight,borderRadius:imageBorderRadius,flexShrink:0}}),/*#__PURE__*/_jsxs(\"div\",{style:{flex:1,minWidth:0,display:\"flex\",flexDirection:\"column\",justifyContent:\"center\",gap:6},children:[showName&&/*#__PURE__*/_jsx(\"div\",{className:shimmerClass,style:{height:nameFontSize,borderRadius:4,width:\"70%\"}}),showCity&&/*#__PURE__*/_jsx(\"div\",{className:shimmerClass,style:{height:cityFontSize,borderRadius:4,width:\"45%\"}}),showAddress&&/*#__PURE__*/_jsx(\"div\",{className:shimmerClass,style:{height:addressFontSize,borderRadius:4,width:\"60%\"}}),showDistance&&/*#__PURE__*/_jsx(\"div\",{className:shimmerClass,style:{height:distanceFontSize,borderRadius:4,width:\"25%\",marginTop:2}})]})]},`skel-${i}`))}),/*#__PURE__*/_jsxs(\"div\",{style:{display:showEmpty?\"flex\":\"none\",flexDirection:\"column\",alignItems:\"center\",justifyContent:\"center\",gap:12,padding:paddingStyle,minHeight:120},children:[/*#__PURE__*/_jsxs(\"svg\",{width:\"32\",height:\"32\",viewBox:\"0 0 24 24\",fill:\"none\",stroke:noResultsColor,strokeWidth:\"1.5\",strokeLinecap:\"round\",strokeLinejoin:\"round\",style:{opacity:.5},\"aria-hidden\":\"true\",children:[/*#__PURE__*/_jsx(\"path\",{d:\"M21 10c0 7-9 13-9 13s-9-6-9-13a9 9 0 0118 0z\"}),/*#__PURE__*/_jsx(\"circle\",{cx:\"12\",cy:\"10\",r:\"3\"}),/*#__PURE__*/_jsx(\"line\",{x1:\"2\",y1:\"2\",x2:\"22\",y2:\"22\"})]}),/*#__PURE__*/_jsx(\"span\",{style:{fontSize:noResultsFontSize,color:noResultsColor,textAlign:\"center\",lineHeight:1.4},children:noResultsText})]}),/*#__PURE__*/_jsxs(\"div\",{style:{...getContainerLayoutStyle(),display:showCards?getContainerLayoutStyle().display:\"none\"},children:[visibleStores.map((store,index)=>{const isActive=selectedId===store.id;const isHovered=hoveredId===store.id;const distance=distances[store.id];if(hasSlot){const showActive=(isActive||isHovered)&&hasSlotActive;return /*#__PURE__*/_jsxs(m.div,{layout:animateCards?true:undefined,initial:animateCards?{opacity:0,y:12}:undefined,animate:animateCards?{opacity:1,y:0}:undefined,exit:animateCards?{opacity:0,y:-8}:undefined,transition:{duration:.25,delay:Math.min(index*.03,.3)},\"data-sf-card\":`${finderId}-${store.id}`,\"data-sf-active\":isActive?\"true\":undefined,\"data-sf-hovered\":isHovered?\"true\":undefined,onClick:()=>handleCardClick(store.id),onMouseEnter:()=>handleCardHover(store.id),onMouseLeave:()=>handleCardHover(null),style:{cursor:\"pointer\",width:!isGrid&&cardSizing===\"fixed\"?cardWidth:undefined,flex:!isGrid&&(cardSizing===\"fixed\"||isHorizontal)?\"0 0 auto\":undefined},children:[/*#__PURE__*/_jsx(\"div\",{style:{display:showActive?\"none\":\"contents\"},children:/*#__PURE__*/React.cloneElement(cardSlot[0],{style:{...cardSlot[0].props?.style,width:isGrid||cardSizing===\"fill\"?\"100%\":cardWidth}})}),hasSlotActive&&/*#__PURE__*/_jsx(\"div\",{style:{display:showActive?\"contents\":\"none\"},children:/*#__PURE__*/React.cloneElement(cardSlotActive[0],{style:{...cardSlotActive[0].props?.style,width:isGrid||cardSizing===\"fill\"?\"100%\":cardWidth}})})]},store.id);}return /*#__PURE__*/_jsx(StoreCard,{store:store,isActive:isActive,isHovered:isHovered,distance:distance,onClick:()=>handleCardClick(store.id),onHover:()=>handleCardHover(store.id),onLeave:()=>handleCardHover(null),cardShell:cardShell,cardBg:cardBg,cardBgActive:cardBgActive,cardBorderWidth:cardBorderWidth,cardBorderColor:cardBorderColor,cardBorderColorActive:cardBorderColorActive,cardShadow:cardShadow,cardShadowActive:cardShadowActive,cardPadding:cardPadding,showImage:showImage,imageWidth:imageWidth,imageHeight:imageHeight,imageBorderRadius:imageBorderRadius,imageObjectFit:imageObjectFit,showName:showName,nameColor:nameColor,nameFontSize:nameFontSize,nameFontWeight:nameFontWeight,showCity:showCity,cityColor:cityColor,cityFontSize:cityFontSize,showAddress:showAddress,addressColor:addressColor,addressFontSize:addressFontSize,showDistance:showDistance,distanceColor:distanceColor,distanceFontSize:distanceFontSize,cardDirection:cardDirection,cardContentGap:cardContentGap,index:index,animateCards:animateCards},store.id);}),hasMore&&/*#__PURE__*/_jsx(\"button\",{type:\"button\",onClick:()=>setVisibleCount(c=>c+itemsPerPage),style:{display:\"flex\",alignItems:\"center\",justifyContent:\"center\",padding:\"12px 24px\",backgroundColor:loadMoreBg,color:loadMoreColor,border:\"none\",borderRadius:loadMoreRadius,cursor:\"pointer\",fontSize:14,fontWeight:500,fontFamily:\"inherit\",transition:\"opacity 0.15s\",gridColumn:isGrid?`span ${Math.max(1,gridColumns)}`:undefined,flex:isHorizontal&&!isGrid?\"0 0 auto\":undefined},children:loadMoreText||t(\"list.loadMore\",\"Meer laden...\")})]})]})]});}addPropertyControls(StoreFinder_List,{finderId:{type:ControlType.Number,defaultValue:0,min:0,step:1,displayStepper:true,title:\"Finder ID\"},alleenNaZoeken:{type:ControlType.Boolean,defaultValue:false,title:\"Alleen na zoeken\"},cardSlot:{type:ControlType.ComponentInstance,title:\"Custom card\"},cardSlotActive:{type:ControlType.ComponentInstance,title:\"Custom card (actief)\"},direction:{type:ControlType.Enum,defaultValue:\"vertical\",options:[\"vertical\",\"horizontal\",\"grid\"],optionTitles:[\"Verticaal\",\"Horizontaal\",\"Grid\"],title:\"Richting\"},gridColumns:{type:ControlType.Number,defaultValue:2,min:1,max:8,step:1,displayStepper:true,title:\"Kolommen\",hidden:p=>p.direction!==\"grid\"},gap:{type:ControlType.Number,defaultValue:12,min:0,max:40,step:1,title:\"Gap\"},cardSizing:{type:ControlType.Enum,defaultValue:\"fill\",title:\"Card breedte\",options:[\"fill\",\"fixed\"],optionTitles:[\"Vullend\",\"Vast\"],displaySegmentedControl:true,hidden:p=>p.direction===\"grid\"},cardWidth:{type:ControlType.Number,defaultValue:260,min:100,max:800,step:10,title:\"Breedte\",hidden:p=>p.direction===\"grid\"},padding:{type:ControlType.FusedNumber,defaultValue:0,toggleKey:\"paddingIsMixed\",toggleTitles:[\"Alle\",\"Individueel\"],valueKeys:[\"paddingTop\",\"paddingRight\",\"paddingBottom\",\"paddingLeft\"],valueLabels:[\"T\",\"R\",\"B\",\"L\"],min:0,title:\"Padding\"},cardDirection:{type:ControlType.Enum,defaultValue:\"horizontal\",options:[\"horizontal\",\"vertical\"],optionTitles:[\"Horizontaal\",\"Verticaal\"],displaySegmentedControl:true,title:\"Card richting\"},cardContentGap:{type:ControlType.Number,defaultValue:12,min:0,max:24,step:1,title:\"Card gap\"},cardBg:{type:ControlType.Color,defaultValue:\"#FFFFFF\",title:\"Card achtergrond\"},cardBgActive:{type:ControlType.Color,defaultValue:\"#F0F7FF\",title:\"Card actief bg\"},cardBorderColor:{type:ControlType.Color,defaultValue:\"#e8e8e8\",title:\"Card rand\"},cardBorderColorActive:{type:ControlType.Color,defaultValue:\"#0078FF\",title:\"Card actief rand\"},cardBorderWidth:{type:ControlType.Number,defaultValue:1,min:0,max:4,step:1,title:\"Card rand dikte\"},cardBorderRadius:{type:ControlType.Number,defaultValue:10,min:0,max:30,step:1,title:\"Card radius\"},cardPadding:{type:ControlType.Number,defaultValue:14,min:0,max:32,step:1,title:\"Card padding\"},cardShadow:{type:ControlType.String,defaultValue:\"0 1px 3px rgba(0,0,0,0.06)\",title:\"Card schaduw\"},cardShadowActive:{type:ControlType.String,defaultValue:\"0 2px 8px rgba(0,120,255,0.15)\",title:\"Card actief schaduw\"},showImage:{type:ControlType.Boolean,defaultValue:true,title:\"Afbeelding\"},imageWidth:{type:ControlType.Number,defaultValue:100,min:40,max:300,step:5,title:\"Afb. breedte\",hidden:p=>!p.showImage},imageHeight:{type:ControlType.Number,defaultValue:80,min:40,max:300,step:5,title:\"Afb. hoogte\",hidden:p=>!p.showImage},imageBorderRadius:{type:ControlType.Number,defaultValue:6,min:0,max:30,step:1,title:\"Afb. radius\",hidden:p=>!p.showImage},imageObjectFit:{type:ControlType.Enum,defaultValue:\"cover\",options:[\"cover\",\"contain\",\"fill\"],optionTitles:[\"Cover\",\"Contain\",\"Fill\"],displaySegmentedControl:true,title:\"Afb. fit\",hidden:p=>!p.showImage},showName:{type:ControlType.Boolean,defaultValue:true,title:\"Naam\"},nameColor:{type:ControlType.Color,defaultValue:\"#1a1a1a\",title:\"Naam kleur\",hidden:p=>!p.showName},nameFontSize:{type:ControlType.Number,defaultValue:15,min:10,max:24,step:1,title:\"Naam grootte\",hidden:p=>!p.showName},nameFontWeight:{type:ControlType.Number,defaultValue:600,min:300,max:900,step:100,title:\"Naam gewicht\",hidden:p=>!p.showName},showCity:{type:ControlType.Boolean,defaultValue:true,title:\"Stad\"},cityColor:{type:ControlType.Color,defaultValue:\"#666666\",title:\"Stad kleur\",hidden:p=>!p.showCity},cityFontSize:{type:ControlType.Number,defaultValue:13,min:10,max:20,step:1,title:\"Stad grootte\",hidden:p=>!p.showCity},showAddress:{type:ControlType.Boolean,defaultValue:true,title:\"Adres\"},addressColor:{type:ControlType.Color,defaultValue:\"#888888\",title:\"Adres kleur\",hidden:p=>!p.showAddress},addressFontSize:{type:ControlType.Number,defaultValue:13,min:10,max:20,step:1,title:\"Adres grootte\",hidden:p=>!p.showAddress},showDistance:{type:ControlType.Boolean,defaultValue:true,title:\"Afstand\"},distanceColor:{type:ControlType.Color,defaultValue:\"#0078FF\",title:\"Afstand kleur\",hidden:p=>!p.showDistance},distanceFontSize:{type:ControlType.Number,defaultValue:13,min:10,max:20,step:1,title:\"Afstand grootte\",hidden:p=>!p.showDistance},animateCards:{type:ControlType.Boolean,defaultValue:true,title:\"Animatie\"},noResultsText:{type:ControlType.String,defaultValue:\"Geen locaties gevonden\",title:\"Geen resultaten tekst\"},noResultsColor:{type:ControlType.Color,defaultValue:\"#888888\",title:\"Geen resultaten kleur\"},noResultsFontSize:{type:ControlType.Number,defaultValue:14,min:10,max:24,step:1,title:\"Geen resultaten grootte\"},paginationEnabled:{type:ControlType.Boolean,defaultValue:false,title:\"Paginatie\"},itemsPerPage:{type:ControlType.Number,defaultValue:20,min:1,max:100,step:1,displayStepper:true,title:\"Items per pagina\",hidden:p=>!p.paginationEnabled},loadMoreText:{type:ControlType.String,defaultValue:\"Meer laden...\",title:\"Meer laden tekst\",hidden:p=>!p.paginationEnabled},loadMoreBg:{type:ControlType.Color,defaultValue:\"#f5f5f5\",title:\"Knop achtergrond\",hidden:p=>!p.paginationEnabled},loadMoreColor:{type:ControlType.Color,defaultValue:\"#333333\",title:\"Knop kleur\",hidden:p=>!p.paginationEnabled},loadMoreRadius:{type:ControlType.Number,defaultValue:8,min:0,max:24,step:1,title:\"Knop radius\",hidden:p=>!p.paginationEnabled}});\nexport const __FramerMetadata__ = {\"exports\":{\"default\":{\"type\":\"reactComponent\",\"name\":\"StoreFinder_List\",\"slots\":[],\"annotations\":{\"framerContractVersion\":\"1\"}},\"__FramerMetadata__\":{\"type\":\"variable\"}}}\n//# sourceMappingURL=./Storefinder_list.map","import{jsx as _jsx,jsxs as _jsxs}from\"react/jsx-runtime\";import{addPropertyControls,ControlType,RenderTarget}from\"framer\";import{useState,useEffect,useRef,useMemo,useCallback}from\"react\";// @ts-ignore\nimport{useQueryData}from\"framer\";const SF_GLOBAL=\"__storeFinder__\";const createInitialSFState=()=>({stores:[],storesById:{},selectedId:null,hoveredId:null,searchLocation:null,searchText:\"\",distances:{},sortedIds:[],filters:{},filterOptions:{},filterLabels:{},mapReady:false,flyTo:null,totalVisible:0,language:\"nl\",country:\"nl\",selectedCountry:null,selectedCountryLocaleKey:null,countryOptions:[],translations:{},countryCenter:null,fieldMap:{},extraFields:[],dataReady:false});function _sfBus(id){if(typeof window===\"undefined\")return null;const w=window;if(!w[SF_GLOBAL])w[SF_GLOBAL]={};if(!w[SF_GLOBAL][id]){w[SF_GLOBAL][id]={state:createInitialSFState(),listeners:new Set};}return w[SF_GLOBAL][id];}function sfGet(id){return _sfBus(id)?.state??createInitialSFState();}function sfSet(id,updates){const bus=_sfBus(id);if(!bus)return;bus.state={...bus.state,...updates};bus.listeners.forEach(fn=>fn(bus.state));}function useSF(id){const[state,setState]=useState(()=>sfGet(id));useEffect(()=>{const bus=_sfBus(id);if(!bus)return;const listener=s=>setState({...s});bus.listeners.add(listener);setState({...bus.state});return()=>{bus.listeners.delete(listener);};},[id]);return state;}const TRANSLATIONS={nl:{\"search.placeholder\":\"Zoek op plaats of postcode...\",\"list.loading\":\"Locaties worden geladen...\",\"list.noResults\":\"Geen locaties gevonden\",\"list.loadMore\":\"Meer laden...\",\"detail.route\":\"Route plannen\",\"detail.close\":\"Sluiten\",\"filters.reset\":\"Wis filters\",\"filters.all\":\"Alle\",\"counter.locations\":\"locaties\",\"counter.location\":\"locatie\"},de:{\"search.placeholder\":\"Ort oder Postleitzahl suchen...\",\"list.loading\":\"Standorte werden geladen...\",\"list.noResults\":\"Keine Standorte gefunden\",\"list.loadMore\":\"Mehr laden...\",\"detail.route\":\"Route planen\",\"detail.close\":\"Schlie\\xdfen\",\"filters.reset\":\"Filter l\\xf6schen\",\"filters.all\":\"Alle\",\"counter.locations\":\"Standorte\",\"counter.location\":\"Standort\"},en:{\"search.placeholder\":\"Search by city or postcode...\",\"list.loading\":\"Loading locations...\",\"list.noResults\":\"No locations found\",\"list.loadMore\":\"Load more...\",\"detail.route\":\"Get directions\",\"detail.close\":\"Close\",\"filters.reset\":\"Clear filters\",\"filters.all\":\"All\",\"counter.locations\":\"locations\",\"counter.location\":\"location\"},es:{\"search.placeholder\":\"Buscar por ciudad o c\\xf3digo postal...\",\"list.loading\":\"Cargando ubicaciones...\",\"list.noResults\":\"No se encontraron ubicaciones\",\"list.loadMore\":\"Cargar m\\xe1s...\",\"detail.route\":\"C\\xf3mo llegar\",\"detail.close\":\"Cerrar\",\"filters.reset\":\"Borrar filtros\",\"filters.all\":\"Todos\",\"counter.locations\":\"ubicaciones\",\"counter.location\":\"ubicaci\\xf3n\"},fr:{\"search.placeholder\":\"Rechercher par ville ou code postal...\",\"list.loading\":\"Chargement des emplacements...\",\"list.noResults\":\"Aucun emplacement trouv\\xe9\",\"list.loadMore\":\"Charger plus...\",\"detail.route\":\"Itin\\xe9raire\",\"detail.close\":\"Fermer\",\"filters.reset\":\"Effacer les filtres\",\"filters.all\":\"Tous\",\"counter.locations\":\"emplacements\",\"counter.location\":\"emplacement\"},cs:{\"search.placeholder\":\"Hledat podle města nebo PSČ...\",\"list.loading\":\"Nač\\xedt\\xe1n\\xed poboček...\",\"list.noResults\":\"Ž\\xe1dn\\xe9 pobočky nenalezeny\",\"list.loadMore\":\"Nač\\xedst dalš\\xed...\",\"detail.route\":\"Napl\\xe1novat trasu\",\"detail.close\":\"Zavř\\xedt\",\"filters.reset\":\"Smazat filtry\",\"filters.all\":\"Vše\",\"counter.locations\":\"poboček\",\"counter.location\":\"pobočka\"}};function haversine(lat1,lng1,lat2,lng2){const R=6371;const dLat=(lat2-lat1)*Math.PI/180;const dLng=(lng2-lng1)*Math.PI/180;const a=Math.sin(dLat/2)**2+Math.cos(lat1*Math.PI/180)*Math.cos(lat2*Math.PI/180)*Math.sin(dLng/2)**2;return R*2*Math.atan2(Math.sqrt(a),Math.sqrt(1-a));}function parseCoordinates(value){if(!value||typeof value!==\"string\")return null;const parts=value.split(\",\").map(s=>parseFloat(s.trim()));if(parts.length>=2&&!isNaN(parts[0])&&!isNaN(parts[1])){return{lat:parts[0],lng:parts[1]};}return null;}function normalizeCountry(value){return String(value??\"\").trim().toLowerCase();}function getLocaleKey(language,country){return`${language||\"\"}|${normalizeCountry(country)}`;}function findQueryInElement(element){if(!element)return null;if(element?.props?.query)return element;const c1=element?.props?.children;if(c1?.props?.query)return c1;const c2=c1?.props?.children;if(c2?.props?.query)return c2;const c3=c2?.props?.children;if(c3?.props?.query)return c3;const c4=c3?.props?.children;if(c4?.props?.query)return c4;return deepFindQuery(element,0,10);}function deepFindQuery(el,depth,max){if(!el||depth>max)return null;if(el?.props?.query)return el;const ch=el?.props?.children;if(!ch)return null;if(Array.isArray(ch)){for(const c of ch){if(c?.props?.query)return c;}for(const c of ch){const r=deepFindQuery(c,depth+1,max);if(r)return r;}}if(typeof ch===\"object\"&&ch?.props)return deepFindQuery(ch,depth+1,max);return null;}function extractCollections(from){if(!from)return[];const cols=[];const walk=n=>{if(!n)return;if(n.type===\"Collection\")cols.push(n);else if(n.type===\"LeftJoin\"){walk(n.left);walk(n.right);}};walk(from);return cols;}function buildFieldsByTitle(collections){const result={};for(const col of collections){const alias=col?.alias||col?.id||\"main\";const controls=col?.data?.propertyControls;if(!controls||typeof controls!==\"object\")continue;const byTitle={};for(const fieldId of Object.keys(controls)){const ctrl=controls[fieldId];if(ctrl?.title)byTitle[ctrl.title]={id:fieldId,...ctrl};}result[alias]=byTitle;}return result;}export default function StoreFinder_Provider(props){const{finderId=0,language=\"nl\",filterByCountry=true,country=\"nl\",nameField=\"Title\",cityField=\"Stad\",countryField=\"\",addressField=\"Adres\",coordinatesField=\"Co\\xf6rdinaten\",slugField=\"Slug\",googleMapsField=\"Google Maps\",imageField=\"Afbeelding\",galleryField=\"\",filterFields=[],extraFields=[],comingSoonField=\"\",openingDateField=\"\",defaultLat=\"52.3676\",defaultLng=\"4.9041\",defaultZoom=\"7\",maxDistance=0,maxDistanceEnabled=false}=props;const parsedLat=parseFloat(defaultLat)||52.3676;const parsedLng=parseFloat(defaultLng)||4.9041;const parsedZoom=parseFloat(defaultZoom)||7;const isCanvas=RenderTarget.current()===RenderTarget.canvas;const collectionList=props.collectionList?.[0];const{originalQuery,mainAlias,mainFields}=useMemo(()=>{const empty={originalQuery:null,mainAlias:\"\",mainFields:{}};if(!collectionList)return empty;const queryParent=findQueryInElement(collectionList);if(!queryParent)return empty;const q=queryParent.props.query;const cols=extractCollections(q?.from);let orderedCols=[...cols];if(orderedCols.length>1&&Array.isArray(q?.select)){for(const field of q.select){if(field.type===\"Identifier\"&&field.name===\"id\"&&!field.alias){const mc=orderedCols.find(c=>c.alias===field.collection);if(mc)orderedCols=[mc,...orderedCols.filter(c=>c!==mc)];break;}}}const mAlias=orderedCols[0]?.alias||\"\";const fbt=buildFieldsByTitle(orderedCols);return{originalQuery:q,mainAlias:mAlias,mainFields:fbt[mAlias]||{}};},[collectionList]);const resolve=useCallback(title=>{if(mainFields[title])return mainFields[title].id;for(const key of Object.keys(mainFields)){if(key.toLowerCase()===title.toLowerCase())return mainFields[key].id;}return null;},[mainFields]);const resolvedFieldIds=useMemo(()=>({name:resolve(nameField),city:resolve(cityField),country:countryField?resolve(countryField):null,address:resolve(addressField),coordinates:resolve(coordinatesField),slug:resolve(slugField),googleMaps:resolve(googleMapsField),image:resolve(imageField),gallery:galleryField?resolve(galleryField):null,filters:filterFields.map(f=>{const fieldId=resolve(f.fieldName);const fieldDef=mainFields[f.fieldName]||Object.values(mainFields).find(v=>v.id===fieldId);return{fieldName:f.fieldName,fieldId,fieldDef};}).filter(f=>f.fieldId),extras:extraFields.map(f=>{const fieldId=resolve(f.fieldName);return{fieldName:f.fieldName,label:f.label||f.fieldName,fieldId};}).filter(f=>f.fieldId),facilityId:resolve(\"Facility ID\"),active:resolve(\"Active\"),comingSoon:comingSoonField?resolve(comingSoonField):null,openingDate:openingDateField?resolve(openingDateField):null}),[resolve,nameField,cityField,countryField,addressField,coordinatesField,slugField,googleMapsField,imageField,galleryField,filterFields,extraFields,comingSoonField,openingDateField,mainFields]);const{modifiedQuery,fieldIdToDataKey}=useMemo(()=>{if(!originalQuery)return{modifiedQuery:null,fieldIdToDataKey:{}};const select=originalQuery.select||[];const alreadySelected=new Set;for(const entry of select){if(entry.collection===mainAlias&&entry.name)alreadySelected.add(entry.name);}const neededFieldIds=new Set;const allResolved=[resolvedFieldIds.name,resolvedFieldIds.city,resolvedFieldIds.country,resolvedFieldIds.address,resolvedFieldIds.coordinates,resolvedFieldIds.slug,resolvedFieldIds.googleMaps,resolvedFieldIds.image,resolvedFieldIds.gallery,resolvedFieldIds.comingSoon,resolvedFieldIds.facilityId,resolvedFieldIds.active,resolvedFieldIds.openingDate,...resolvedFieldIds.filters.map(f=>f.fieldId),...resolvedFieldIds.extras.map(f=>f.fieldId)];for(const fid of allResolved){if(fid)neededFieldIds.add(fid);}const additionalSelects=[];for(const fieldId of neededFieldIds){if(!alreadySelected.has(fieldId)){additionalSelects.push({type:\"Identifier\",collection:mainAlias,name:fieldId});}}const newSelect=[...select,...additionalSelects];const mq={...originalQuery,select:newSelect};const mapping={};for(const entry of newSelect){if(entry.collection===mainAlias&&entry.name){mapping[entry.name]=entry.alias||entry.name;}}return{modifiedQuery:mq,fieldIdToDataKey:mapping};},[originalQuery,mainAlias,resolvedFieldIds]);const rawData=modifiedQuery?useQueryData(modifiedQuery):[];const parsedStores=useMemo(()=>{if(!Array.isArray(rawData)||rawData.length===0)return[];const dk=fieldId=>{if(!fieldId)return null;return fieldIdToDataKey[fieldId]||fieldId;};const coordKey=dk(resolvedFieldIds.coordinates);const nameKey=dk(resolvedFieldIds.name);const cityKey=dk(resolvedFieldIds.city);const countryKey=dk(resolvedFieldIds.country);const addressKey=dk(resolvedFieldIds.address);const slugKey=dk(resolvedFieldIds.slug);const gmapsKey=dk(resolvedFieldIds.googleMaps);const imageKey=dk(resolvedFieldIds.image);const galleryKey=dk(resolvedFieldIds.gallery);let actualCoordKey=coordKey;if(actualCoordKey&&rawData[0]&&!(actualCoordKey in rawData[0])){for(const key of Object.keys(rawData[0])){const val=rawData[0][key];if(typeof val===\"string\"&&/^-?\\d+\\.?\\d*\\s*,\\s*-?\\d+\\.?\\d*$/.test(val.trim())){actualCoordKey=key;break;}}}if(!actualCoordKey)return[];const parsed=[];for(let idx=0;idx<rawData.length;idx++){const item=rawData[idx];const coordStr=item[actualCoordKey];if(!coordStr)continue;const coordValue=typeof coordStr===\"string\"?coordStr:String(coordStr);const coords=parseCoordinates(coordValue);if(!coords)continue;const fields={...item};if(countryKey){const val=item[countryKey];if(val!==undefined)fields[\"__filter___country\"]=val;}for(const ff of resolvedFieldIds.filters){const fKey=dk(ff.fieldId);if(fKey){const val=item[fKey];if(val!==undefined)fields[`__filter_${ff.fieldName}`]=val;}}for(const ef of resolvedFieldIds.extras){const eKey=dk(ef.fieldId);if(eKey){const val=item[eKey];if(val!==undefined)fields[`__extra_${ef.fieldName}`]=val;}}if(resolvedFieldIds.comingSoon){const csKey=dk(resolvedFieldIds.comingSoon);if(csKey)fields.__comingSoon=!!item[csKey];}if(resolvedFieldIds.facilityId){const fidKey=dk(resolvedFieldIds.facilityId);if(fidKey)fields.__facilityId=String(item[fidKey]||\"\");}if(resolvedFieldIds.active){const aKey=dk(resolvedFieldIds.active);if(aKey)fields.__active=item[aKey];}if(resolvedFieldIds.openingDate){const odKey=dk(resolvedFieldIds.openingDate);if(odKey){const val=item[odKey];if(val&&typeof val===\"string\"&&val.trim())fields.__openingDate=val.trim();}}let imageUrl=\"\";const imageValue=imageKey?item[imageKey]:\"\";if(typeof imageValue===\"string\"&&imageValue){imageUrl=imageValue;}else if(imageValue&&typeof imageValue===\"object\"){imageUrl=imageValue.url||imageValue.src||\"\";if(!imageUrl&&imageValue.srcSet){const parts=imageValue.srcSet.split(\",\");const last=parts[parts.length-1]?.trim();if(last)imageUrl=last.split(/\\s+/)[0];}}const galleryImages=[];if(galleryKey){const gVal=item[galleryKey];const extractUrl=v=>{if(typeof v===\"string\"&&v)return v;if(v&&typeof v===\"object\"){if(v.url)return v.url;if(v.src)return v.src;if(v.srcSet){const parts=v.srcSet.split(\",\");const last=parts[parts.length-1]?.trim();if(last)return last.split(/\\s+/)[0];}}return\"\";};if(Array.isArray(gVal)){for(const img of gVal){const url=extractUrl(img);if(url)galleryImages.push(url);}}else{const url=extractUrl(gVal);if(url)galleryImages.push(url);}}fields[\"__gallery\"]=galleryImages;parsed.push({id:item.id||Math.random().toString(36),slug:slugKey?item[slugKey]||\"\":\"\",name:nameKey?item[nameKey]||\"\":\"\",city:cityKey?item[cityKey]||\"\":\"\",address:addressKey?item[addressKey]||\"\":\"\",coordinates:coordValue,lat:coords.lat,lng:coords.lng,googleMapsUrl:gmapsKey?item[gmapsKey]||\"\":\"\",image:imageUrl,fields});}return parsed;},[rawData,resolvedFieldIds,fieldIdToDataKey]);// STA-427: visibility is CMS-driven — hide clubs whose admin \"Active\"\n// flag (synced from facilities.is_active by cron-framer-sync) is false.\n// Draft clubs are already excluded by Framer's published CMS query.\nconst stores=useMemo(()=>parsedStores.filter(s=>s.fields?.__active!==false),[parsedStores]);const storesById=useMemo(()=>{const map={};for(const s of stores)map[s.id]=s;return map;},[stores]);const countryOptions=useMemo(()=>{const vals=new Set;for(const store of stores){const value=store.fields[\"__filter___country\"];if(value===undefined||value===null)continue;if(Array.isArray(value)){for(const item of value){const str=String(item).trim();if(str)vals.add(str);}continue;}const str=String(value).trim();if(str)vals.add(str);}return Array.from(vals).sort((a,b)=>a.localeCompare(b));},[stores]);const{filterOptions,filterLabels}=useMemo(()=>{const options={};const labels={};for(const ff of resolvedFieldIds.filters){const vals=new Set;const labelMap={};const def=ff.fieldDef;if(def){const enumOptions=def.options||def.optionTitles?def.options:null;const enumTitles=def.optionTitles||null;if(enumOptions&&enumTitles&&Array.isArray(enumOptions)&&Array.isArray(enumTitles)){for(let i=0;i<enumOptions.length;i++){labelMap[enumOptions[i]]=enumTitles[i]||enumOptions[i];}}}for(const store of stores){const v=store.fields[`__filter_${ff.fieldName}`];if(v===true)vals.add(\"true\");else if(v===false)vals.add(\"false\");else if(typeof v===\"string\"&&v.trim())vals.add(v.trim());}options[ff.fieldName]=Array.from(vals).sort();labels[ff.fieldName]=labelMap;}return{filterOptions:options,filterLabels:labels};},[stores,resolvedFieldIds.filters]);const fieldMap=useMemo(()=>{const map={};for(const[title,def]of Object.entries(mainFields)){if(def?.id)map[def.id]=title;}return map;},[mainFields]);const sf=useSF(finderId);const providerCountry=normalizeCountry(country);const providerLocaleKey=getLocaleKey(language,providerCountry);const selectedCountry=typeof sf.selectedCountry===\"string\"?normalizeCountry(sf.selectedCountry):null;const selectedCountryLocaleKey=typeof sf.selectedCountryLocaleKey===\"string\"?sf.selectedCountryLocaleKey:null;const selectedCountryIsCurrentLocale=selectedCountry!==null&&selectedCountryLocaleKey===providerLocaleKey;const activeCountry=selectedCountryIsCurrentLocale?selectedCountry:providerCountry;const{distances,sortedIds}=useMemo(()=>{const searchLoc=sf.searchLocation;const activeFilters=sf.filters||{};const dist={};if(searchLoc){for(const store of stores){dist[store.id]=haversine(searchLoc.lat,searchLoc.lng,store.lat,store.lng);}}let filtered=[...stores];if(filterByCountry&&countryField&&activeCountry){const c=activeCountry.trim().toLowerCase();filtered=filtered.filter(store=>{const storeVal=store.fields[\"__filter___country\"];if(storeVal===undefined||storeVal===null)return true;return String(storeVal).trim().toLowerCase()===c;});}for(const[filterField,filterValue]of Object.entries(activeFilters)){if(!filterValue)continue;const values=Array.isArray(filterValue)?filterValue:[filterValue];if(values.length===0)continue;filtered=filtered.filter(store=>{const storeVal=store.fields[`__filter_${filterField}`];if(storeVal===undefined||storeVal===null)return false;if(typeof storeVal===\"boolean\")return values.includes(String(storeVal));const storeStr=String(storeVal).trim();return values.some(v=>storeStr===v||storeStr.toLowerCase()===v.toLowerCase());});}if(maxDistanceEnabled&&maxDistance>0&&searchLoc){filtered=filtered.filter(s=>dist[s.id]!==undefined&&dist[s.id]<=maxDistance);}const sorted=searchLoc?filtered.sort((a,b)=>(dist[a.id]??Infinity)-(dist[b.id]??Infinity)).map(s=>s.id):filtered.map(s=>s.id);return{distances:dist,sortedIds:sorted};},[stores,sf.searchLocation,sf.filters,maxDistance,maxDistanceEnabled,filterByCountry,countryField,activeCountry]);useEffect(()=>{if(isCanvas)return;const translations=TRANSLATIONS[language]||TRANSLATIONS.nl;const countryCenter={lat:parsedLat,lng:parsedLng,zoom:parsedZoom};const extraFieldsMeta=resolvedFieldIds.extras.map(f=>({fieldName:f.fieldName,label:f.label}));const syncedSelectedCountry=selectedCountryIsCurrentLocale?selectedCountry:providerCountry;sfSet(finderId,{stores,storesById,distances,sortedIds,filterOptions,filterLabels,countryOptions,totalVisible:sortedIds.length,fieldMap,language,country,selectedCountry:syncedSelectedCountry,selectedCountryLocaleKey:providerLocaleKey,translations,countryCenter,extraFields:extraFieldsMeta,dataReady:true});},[stores,storesById,distances,sortedIds,filterOptions,filterLabels,countryOptions,fieldMap,finderId,isCanvas,language,country,providerCountry,providerLocaleKey,selectedCountry,selectedCountryIsCurrentLocale,parsedLat,parsedLng,parsedZoom,resolvedFieldIds.extras]);const initializedRef=useRef(false);useEffect(()=>{if(isCanvas||initializedRef.current)return;initializedRef.current=true;const currentState=sfGet(finderId);if(!currentState.flyTo){sfSet(finderId,{flyTo:{lat:parsedLat,lng:parsedLng,zoom:parsedZoom}});}},[finderId,parsedLat,parsedLng,parsedZoom,isCanvas]);if(isCanvas){const connected=!!collectionList;const configuredFields=[{label:\"Naam\",value:nameField},{label:\"Stad\",value:cityField},...filterByCountry&&countryField?[{label:\"Land\",value:countryField}]:[],{label:\"Adres\",value:addressField},{label:\"Co\\xf6rdinaten\",value:coordinatesField},{label:\"Slug\",value:slugField},{label:\"Google Maps\",value:googleMapsField},{label:\"Afbeelding\",value:imageField},...extraFields.filter(f=>f.fieldName).map(f=>({label:`+${f.label||f.fieldName}`,value:f.fieldName})),...comingSoonField?[{label:\"Coming Soon\",value:comingSoonField}]:[],...openingDateField?[{label:\"Opening\",value:openingDateField}]:[]];return /*#__PURE__*/_jsxs(\"div\",{style:{...props.style,display:\"flex\",flexDirection:\"column\",gap:8,padding:16,backgroundColor:connected?\"rgba(0,150,0,0.05)\":\"rgba(0,120,255,0.06)\",border:`1.5px dashed ${connected?\"rgba(0,150,0,0.3)\":\"rgba(0,120,255,0.3)\"}`,borderRadius:10,fontFamily:'-apple-system, BlinkMacSystemFont, \"Segoe UI\", Roboto, sans-serif',minHeight:80},children:[/*#__PURE__*/_jsxs(\"div\",{style:{display:\"flex\",alignItems:\"center\",gap:8},children:[/*#__PURE__*/_jsxs(\"svg\",{width:\"18\",height:\"18\",viewBox:\"0 0 24 24\",fill:\"none\",stroke:connected?\"rgba(0,150,0,0.8)\":\"rgba(0,120,255,0.8)\",strokeWidth:\"2\",strokeLinecap:\"round\",strokeLinejoin:\"round\",children:[/*#__PURE__*/_jsx(\"path\",{d:\"M21 10c0 7-9 13-9 13s-9-6-9-13a9 9 0 0118 0z\"}),/*#__PURE__*/_jsx(\"circle\",{cx:\"12\",cy:\"10\",r:\"3\"})]}),/*#__PURE__*/_jsx(\"span\",{style:{fontSize:13,fontWeight:600,color:connected?\"rgba(0,150,0,0.9)\":\"rgba(0,120,255,0.9)\"},children:\"StoreFinder Provider\"}),/*#__PURE__*/_jsxs(\"span\",{style:{fontSize:11,color:\"rgba(0,0,0,0.35)\",marginLeft:\"auto\"},children:[\"ID: \",finderId]})]}),connected?/*#__PURE__*/_jsxs(\"div\",{style:{fontSize:12,color:\"rgba(0,0,0,0.5)\",lineHeight:1.6},children:[/*#__PURE__*/_jsx(\"div\",{style:{color:\"rgba(0,150,0,0.8)\"},children:\"✓ CMS Collection List verbonden\"}),/*#__PURE__*/_jsx(\"div\",{style:{marginTop:6,fontSize:11,color:\"rgba(0,0,0,0.4)\",lineHeight:1.5},children:configuredFields.map((f,i)=>/*#__PURE__*/_jsxs(\"span\",{children:[i>0&&/*#__PURE__*/_jsxs(\"span\",{style:{color:\"rgba(0,0,0,0.2)\"},children:[\" \",\"\\xb7\",\" \"]}),/*#__PURE__*/_jsxs(\"span\",{style:{color:\"rgba(0,0,0,0.3)\"},children:[f.label,\":\"]}),\" \",/*#__PURE__*/_jsx(\"span\",{style:{fontFamily:\"monospace\",fontSize:10},children:f.value})]},i))}),/*#__PURE__*/_jsx(\"div\",{style:{marginTop:8,padding:\"6px 10px\",backgroundColor:\"rgba(0,150,0,0.06)\",borderRadius:6,fontSize:11,color:\"rgba(0,0,0,0.4)\"},children:\"Data laadt in Preview — dit component is onzichtbaar op de site\"})]}):/*#__PURE__*/_jsx(\"div\",{style:{fontSize:12,color:\"rgba(200,100,0,0.8)\",lineHeight:1.5},children:\"Verbind een CMS Collection List via het paneel rechts →\"})]});}return /*#__PURE__*/_jsx(\"div\",{style:{display:\"none\"},\"data-storefinder-provider\":finderId});}addPropertyControls(StoreFinder_Provider,{finderId:{type:ControlType.Number,defaultValue:0,min:0,step:1,displayStepper:true,title:\"Finder ID\"},language:{type:ControlType.Enum,defaultValue:\"nl\",title:\"Taal\",options:[\"nl\",\"de\",\"en\",\"es\",\"fr\",\"cs\"],optionTitles:[\"Nederlands\",\"Deutsch\",\"English\",\"Espa\\xf1ol\",\"Fran\\xe7ais\",\"Čeština\"]},filterByCountry:{type:ControlType.Boolean,defaultValue:true,title:\"Filter op land\",enabledTitle:\"Aan\",disabledTitle:\"Uit\"},country:{type:ControlType.String,defaultValue:\"nl\",title:\"Land\",placeholder:\"nl, de, be...\",hidden:props=>props.filterByCountry===false},collectionList:{type:ControlType.ComponentInstance,title:\"CMS Collection\"},nameField:{type:ControlType.String,defaultValue:\"Title\",placeholder:\"Veldnaam...\",title:\"Naam veld\"},cityField:{type:ControlType.String,defaultValue:\"Stad\",placeholder:\"Veldnaam...\",title:\"Stad veld\"},countryField:{type:ControlType.String,defaultValue:\"\",placeholder:\"Bijv. Land\",title:\"Land veld\",hidden:props=>props.filterByCountry===false},addressField:{type:ControlType.String,defaultValue:\"Adres\",placeholder:\"Veldnaam...\",title:\"Adres veld\"},coordinatesField:{type:ControlType.String,defaultValue:\"Co\\xf6rdinaten\",placeholder:\"Veldnaam...\",title:\"Co\\xf6rdinaten veld\"},slugField:{type:ControlType.String,defaultValue:\"Slug\",placeholder:\"Veldnaam...\",title:\"Slug veld\"},googleMapsField:{type:ControlType.String,defaultValue:\"Google Maps\",placeholder:\"Veldnaam...\",title:\"Google Maps veld\"},imageField:{type:ControlType.String,defaultValue:\"Afbeelding\",placeholder:\"Veldnaam...\",title:\"Afbeelding veld\"},galleryField:{type:ControlType.String,defaultValue:\"\",placeholder:\"Bijv. Gallery\",title:\"Gallery veld\"},comingSoonField:{type:ControlType.String,defaultValue:\"\",placeholder:\"Bijv. Coming Soon?\",title:\"Coming soon veld\"},openingDateField:{type:ControlType.String,defaultValue:\"\",placeholder:\"Bijv. Datum opening\",title:\"Opening datum veld\"},filterFields:{type:ControlType.Array,title:\"Filter velden\",control:{type:ControlType.Object,controls:{fieldName:{type:ControlType.String,defaultValue:\"\",placeholder:\"CMS Veldnaam\",title:\"Veld\"}}},defaultValue:[]},extraFields:{type:ControlType.Array,title:\"Extra CMS velden\",control:{type:ControlType.Object,controls:{fieldName:{type:ControlType.String,defaultValue:\"\",placeholder:\"CMS Veldnaam\",title:\"Veld\"},label:{type:ControlType.String,defaultValue:\"\",placeholder:\"Label in CardField\",title:\"Label\"}}},defaultValue:[]},defaultLat:{type:ControlType.String,defaultValue:\"52.3676\",placeholder:\"52.3676\",title:\"Standaard Lat\"},defaultLng:{type:ControlType.String,defaultValue:\"4.9041\",placeholder:\"4.9041\",title:\"Standaard Lng\"},defaultZoom:{type:ControlType.String,defaultValue:\"7\",placeholder:\"7\",title:\"Standaard Zoom\"},maxDistanceEnabled:{type:ControlType.Boolean,defaultValue:false,title:\"Max afstand\"},maxDistance:{type:ControlType.Number,defaultValue:50,min:1,max:500,step:1,unit:\"km\",title:\" \",hidden:props=>!props.maxDistanceEnabled}});\nexport const __FramerMetadata__ = {\"exports\":{\"default\":{\"type\":\"reactComponent\",\"name\":\"StoreFinder_Provider\",\"slots\":[],\"annotations\":{\"framerContractVersion\":\"1\"}},\"__FramerMetadata__\":{\"type\":\"variable\"}}}\n//# sourceMappingURL=./Storefinder_provider.map","// StoreFinder — Search (Zoekbalk)\n// Zoekbalk met optionele autocomplete via Mapbox Geocoding API.\n// Zoekt een locatie, berekent afstanden en sorteert de lijst.\nimport{jsx as _jsx,jsxs as _jsxs}from\"react/jsx-runtime\";import{addPropertyControls,ControlType,RenderTarget}from\"framer\";import{useState,useEffect,useRef,useCallback}from\"react\";// ═══════════════════════════════════════════════════════════════\n// SHARED STATE BUS\n// ═══════════════════════════════════════════════════════════════\nconst SF_GLOBAL=\"__storeFinder__\";const createInitialSFState=()=>({stores:[],storesById:{},selectedId:null,hoveredId:null,searchLocation:null,searchText:\"\",distances:{},sortedIds:[],filters:{},filterOptions:{},mapReady:false,flyTo:null,totalVisible:0,fieldMap:{},language:\"nl\",country:\"nl\",translations:{},countryCenter:null,extraFields:[]});function _sfBus(id){if(typeof window===\"undefined\")return null;const w=window;if(!w[SF_GLOBAL])w[SF_GLOBAL]={};if(!w[SF_GLOBAL][id]){w[SF_GLOBAL][id]={state:createInitialSFState(),listeners:new Set};}return w[SF_GLOBAL][id];}function sfGet(id){return _sfBus(id)?.state??createInitialSFState();}function sfSet(id,updates){const bus=_sfBus(id);if(!bus)return;bus.state={...bus.state,...updates};bus.listeners.forEach(fn=>fn(bus.state));}function useSF(id){const[state,setState]=useState(()=>sfGet(id));useEffect(()=>{const bus=_sfBus(id);if(!bus)return;const listener=s=>setState({...s});bus.listeners.add(listener);setState({...bus.state});return()=>{bus.listeners.delete(listener);};},[id]);return state;}// ── Mapbox Geocoding ──\nasync function geocodeSearch(query,token,country,proximity,language=\"nl\"){if(!query.trim()||!token)return[];const params=new URLSearchParams({q:query.trim(),access_token:token,language,limit:\"5\",types:\"place,postcode,address,locality,neighborhood\"});if(country)params.set(\"country\",country);if(proximity)params.set(\"proximity\",proximity);try{const res=await fetch(`https://api.mapbox.com/search/geocode/v6/forward?${params}`);if(!res.ok)return[];const data=await res.json();return(data.features||[]).map(f=>({id:f.id,name:f.properties?.name||f.properties?.full_address||\"\",fullName:f.properties?.full_address||f.properties?.name||\"\",lat:f.geometry?.coordinates?.[1]??0,lng:f.geometry?.coordinates?.[0]??0}));}catch{return[];}}export default function StoreFinder_Search(props){const{finderId=0,mapboxToken=\"\",placeholder=\"Zoek op plaats of postcode...\",autocomplete=true,country=\"\",proximity=\"\",flyToOnSearch=true,flyToZoom=12,// Styling\nfont={},backgroundColor=\"#FFFFFF\",textColor=\"#1a1a1a\",placeholderColor=\"#999999\",borderColor=\"#e0e0e0\",borderWidth=1,borderRadius=8,fontSize=15,paddingV=12,paddingH=16,iconColor=\"#999999\",showIcon=true,showClearButton=true,focusBorderColor=\"#0078FF\",dropdownBg=\"#FFFFFF\",dropdownTextColor=\"#1a1a1a\",dropdownHoverBg=\"#f5f5f5\",dropdownBorderColor=\"#e8e8e8\",dropdownShadow=\"0 8px 24px rgba(0,0,0,0.12)\",dropdownBorderRadius=10,dropdownPosition=\"below\"}=props;const isCanvas=RenderTarget.current()===RenderTarget.canvas;const sf=useSF(finderId);const t=(key,fallback)=>sf.translations?.[key]||fallback;const busLang=sf.language||\"nl\";// Country for geocoding: use Search prop if set, otherwise don't restrict\nconst geoCountry=country.trim();// Resolve fontSize from font object or prop fallback\nconst resolvedFontSize=font.fontSize||fontSize||15;const[inputValue,setInputValue]=useState(\"\");const[suggestions,setSuggestions]=useState([]);const[showDropdown,setShowDropdown]=useState(false);const[focusedIndex,setFocusedIndex]=useState(-1);const[isFocused,setIsFocused]=useState(false);const inputRef=useRef(null);const dropdownRef=useRef(null);const debounceRef=useRef(null);const skipAutocompleteRef=useRef(false);// Resolved placeholder: prop override > translation > default\nconst resolvedPlaceholder=placeholder!==\"Zoek op plaats of postcode...\"?placeholder:t(\"search.placeholder\",placeholder);// Fetch suggestions on input change\nuseEffect(()=>{if(!autocomplete||!inputValue.trim()||!mapboxToken||skipAutocompleteRef.current){skipAutocompleteRef.current=false;setSuggestions([]);setShowDropdown(false);return;}if(debounceRef.current)clearTimeout(debounceRef.current);debounceRef.current=setTimeout(async()=>{const results=await geocodeSearch(inputValue,mapboxToken,geoCountry,proximity,busLang);setSuggestions(results);setShowDropdown(results.length>0);setFocusedIndex(-1);},250);return()=>{if(debounceRef.current)clearTimeout(debounceRef.current);};},[inputValue,autocomplete,mapboxToken,country,proximity]);// Close dropdown on outside click\nuseEffect(()=>{if(typeof window===\"undefined\")return;const handleClick=e=>{if(dropdownRef.current&&!dropdownRef.current.contains(e.target)&&inputRef.current&&!inputRef.current.contains(e.target)){setShowDropdown(false);}};window.addEventListener(\"mousedown\",handleClick);return()=>window.removeEventListener(\"mousedown\",handleClick);},[]);const selectSuggestion=useCallback(suggestion=>{skipAutocompleteRef.current=true;setInputValue(suggestion.fullName||suggestion.name);setShowDropdown(false);setSuggestions([]);const location={lat:suggestion.lat,lng:suggestion.lng};// Single bus update — prevents double re-render\nsfSet(finderId,{searchLocation:location,searchText:suggestion.fullName||suggestion.name,selectedId:null,...flyToOnSearch?{flyTo:{...location,zoom:flyToZoom}}:{}});// Fire event after a tick so Provider can process distances first\nif(props.onSearchSelect){requestAnimationFrame(()=>props.onSearchSelect());}},[finderId,flyToOnSearch,flyToZoom,props.onSearchSelect]);const handleSubmit=useCallback(async()=>{if(!inputValue.trim()||!mapboxToken)return;const results=await geocodeSearch(inputValue,mapboxToken,geoCountry,proximity,busLang);if(results.length>0){selectSuggestion(results[0]);}},[inputValue,mapboxToken,geoCountry,busLang,proximity,selectSuggestion]);const handleClear=useCallback(()=>{setInputValue(\"\");setSuggestions([]);setShowDropdown(false);sfSet(finderId,{searchLocation:null,searchText:\"\"});inputRef.current?.focus();// NOTE: no event fired — clearing keeps current layout/variant\n},[finderId]);const handleKeyDown=useCallback(e=>{if(!showDropdown||suggestions.length===0){if(e.key===\"Enter\"){e.preventDefault();handleSubmit();}return;}switch(e.key){case\"ArrowDown\":e.preventDefault();setFocusedIndex(i=>i<suggestions.length-1?i+1:0);break;case\"ArrowUp\":e.preventDefault();setFocusedIndex(i=>i>0?i-1:suggestions.length-1);break;case\"Enter\":e.preventDefault();if(focusedIndex>=0){selectSuggestion(suggestions[focusedIndex]);}else{handleSubmit();}break;case\"Escape\":setShowDropdown(false);break;}},[showDropdown,suggestions,focusedIndex,selectSuggestion,handleSubmit]);// ═════════════════════════════════════\n// CANVAS PREVIEW\n// ═════════════════════════════════════\nif(isCanvas){return /*#__PURE__*/_jsxs(\"div\",{style:{...props.style,display:\"flex\",alignItems:\"center\",gap:10,backgroundColor,border:`${borderWidth}px solid ${borderColor}`,borderRadius,padding:`${paddingV}px ${paddingH}px`,...font},children:[showIcon&&/*#__PURE__*/_jsxs(\"svg\",{width:\"18\",height:\"18\",viewBox:\"0 0 24 24\",fill:\"none\",stroke:iconColor,strokeWidth:\"2\",strokeLinecap:\"round\",strokeLinejoin:\"round\",children:[/*#__PURE__*/_jsx(\"circle\",{cx:\"11\",cy:\"11\",r:\"8\"}),/*#__PURE__*/_jsx(\"line\",{x1:\"21\",y1:\"21\",x2:\"16.65\",y2:\"16.65\"})]}),/*#__PURE__*/_jsx(\"span\",{style:{color:placeholderColor,fontSize:resolvedFontSize,flex:1},children:placeholder})]});}// ═════════════════════════════════════\n// PUBLISHED/PREVIEW RENDER\n// ═════════════════════════════════════\nreturn /*#__PURE__*/_jsxs(\"div\",{style:{...props.style,position:\"relative\",...font},children:[/*#__PURE__*/_jsxs(\"div\",{style:{display:\"flex\",alignItems:\"center\",gap:10,backgroundColor,border:`${borderWidth}px solid ${isFocused?focusBorderColor:borderColor}`,borderRadius,padding:`${paddingV}px ${paddingH}px`,transition:\"border-color 0.2s ease\"},children:[showIcon&&/*#__PURE__*/_jsxs(\"svg\",{width:\"18\",height:\"18\",viewBox:\"0 0 24 24\",fill:\"none\",stroke:iconColor,strokeWidth:\"2\",strokeLinecap:\"round\",strokeLinejoin:\"round\",style:{flexShrink:0},children:[/*#__PURE__*/_jsx(\"circle\",{cx:\"11\",cy:\"11\",r:\"8\"}),/*#__PURE__*/_jsx(\"line\",{x1:\"21\",y1:\"21\",x2:\"16.65\",y2:\"16.65\"})]}),/*#__PURE__*/_jsx(\"input\",{ref:inputRef,type:\"text\",value:inputValue,onChange:e=>setInputValue(e.target.value),onKeyDown:handleKeyDown,onFocus:()=>{setIsFocused(true);if(suggestions.length>0)setShowDropdown(true);},onBlur:()=>setIsFocused(false),placeholder:resolvedPlaceholder,style:{flex:1,border:\"none\",outline:\"none\",backgroundColor:\"transparent\",color:textColor,fontSize:\"inherit\",fontFamily:\"inherit\",fontWeight:\"inherit\",letterSpacing:\"inherit\",lineHeight:\"inherit\"},\"aria-label\":\"Zoek locatie\",\"aria-autocomplete\":autocomplete?\"list\":\"none\",\"aria-expanded\":showDropdown,role:\"combobox\"}),showClearButton&&inputValue&&/*#__PURE__*/_jsx(\"button\",{onClick:handleClear,style:{flexShrink:0,width:22,height:22,borderRadius:\"50%\",border:\"none\",backgroundColor:\"rgba(0,0,0,0.08)\",cursor:\"pointer\",display:\"flex\",alignItems:\"center\",justifyContent:\"center\",padding:0,transition:\"background-color 0.15s\"},onMouseEnter:e=>{e.target.style.backgroundColor=\"rgba(0,0,0,0.15)\";},onMouseLeave:e=>{e.target.style.backgroundColor=\"rgba(0,0,0,0.08)\";},\"aria-label\":\"Wis zoekopdracht\",children:/*#__PURE__*/_jsxs(\"svg\",{width:\"12\",height:\"12\",viewBox:\"0 0 24 24\",fill:\"none\",stroke:textColor,strokeWidth:\"2.5\",strokeLinecap:\"round\",children:[/*#__PURE__*/_jsx(\"line\",{x1:\"18\",y1:\"6\",x2:\"6\",y2:\"18\"}),/*#__PURE__*/_jsx(\"line\",{x1:\"6\",y1:\"6\",x2:\"18\",y2:\"18\"})]})})]}),showDropdown&&suggestions.length>0&&/*#__PURE__*/_jsx(\"div\",{ref:dropdownRef,style:{position:\"absolute\",...dropdownPosition===\"above\"?{bottom:\"calc(100% + 4px)\"}:{top:\"calc(100% + 4px)\"},left:0,right:0,backgroundColor:dropdownBg,border:`1px solid ${dropdownBorderColor}`,borderRadius:dropdownBorderRadius,boxShadow:dropdownShadow,overflow:\"hidden\",zIndex:1e3},role:\"listbox\",children:suggestions.map((s,i)=>/*#__PURE__*/_jsxs(\"div\",{role:\"option\",\"aria-selected\":i===focusedIndex,style:{display:\"flex\",alignItems:\"center\",gap:10,padding:`10px ${paddingH}px`,cursor:\"pointer\",backgroundColor:i===focusedIndex?dropdownHoverBg:\"transparent\",transition:\"background-color 0.1s\"},onMouseDown:e=>{e.preventDefault();selectSuggestion(s);},onMouseEnter:()=>setFocusedIndex(i),children:[/*#__PURE__*/_jsxs(\"svg\",{width:\"16\",height:\"16\",viewBox:\"0 0 24 24\",fill:\"none\",stroke:iconColor,strokeWidth:\"2\",strokeLinecap:\"round\",strokeLinejoin:\"round\",style:{flexShrink:0},children:[/*#__PURE__*/_jsx(\"path\",{d:\"M21 10c0 7-9 13-9 13s-9-6-9-13a9 9 0 0118 0z\"}),/*#__PURE__*/_jsx(\"circle\",{cx:\"12\",cy:\"10\",r:\"3\"})]}),/*#__PURE__*/_jsxs(\"div\",{style:{flex:1,minWidth:0},children:[/*#__PURE__*/_jsx(\"div\",{style:{fontSize:resolvedFontSize-1,color:dropdownTextColor,fontWeight:500,whiteSpace:\"nowrap\",overflow:\"hidden\",textOverflow:\"ellipsis\"},children:s.name}),s.fullName!==s.name&&/*#__PURE__*/_jsx(\"div\",{style:{fontSize:resolvedFontSize-3,color:placeholderColor,whiteSpace:\"nowrap\",overflow:\"hidden\",textOverflow:\"ellipsis\",marginTop:1},children:s.fullName})]})]},s.id))})]});}// ═══════════════════════════════════════════════════════════════\n// PROPERTY CONTROLS\n// ═══════════════════════════════════════════════════════════════\naddPropertyControls(StoreFinder_Search,{finderId:{type:ControlType.Number,defaultValue:0,min:0,step:1,displayStepper:true,title:\"Finder ID\"},mapboxToken:{type:ControlType.String,defaultValue:\"\",placeholder:\"pk.eyJ1Ijo...\",title:\"Mapbox Token\",description:\"Nodig voor geocoding (adres → co\\xf6rdinaten)\"},placeholder:{type:ControlType.String,defaultValue:\"Zoek op plaats of postcode...\",title:\"Placeholder\"},autocomplete:{type:ControlType.Boolean,defaultValue:true,title:\"Autocomplete\",description:\"Toon suggesties tijdens het typen\"},country:{type:ControlType.String,defaultValue:\"\",placeholder:\"nl, de, be...\",title:\"Land(en)\",description:\"ISO land code(s), komma gescheiden. Leeg = zoek overal.\"},proximity:{type:ControlType.String,defaultValue:\"\",placeholder:\"5.387,52.154\",title:\"Proximity\",description:\"lng,lat — voorkeur voor resultaten dichtbij dit punt\"},flyToOnSearch:{type:ControlType.Boolean,defaultValue:true,title:\"Fly-to bij zoeken\"},flyToZoom:{type:ControlType.Number,defaultValue:12,min:5,max:18,step:.5,title:\"Fly-to zoom\",hidden:props=>!props.flyToOnSearch},// ── Styling ──\nfont:{//@ts-ignore\ntype:ControlType.Font,title:\"Lettertype\",controls:\"extended\",displayFontSize:true,displayTextAlignment:false,defaultValue:{fontSize:15,fontWeight:400,lineHeight:\"1.4em\"}},backgroundColor:{type:ControlType.Color,defaultValue:\"#FFFFFF\",title:\"Achtergrond\"},textColor:{type:ControlType.Color,defaultValue:\"#1a1a1a\",title:\"Tekstkleur\"},placeholderColor:{type:ControlType.Color,defaultValue:\"#999999\",title:\"Placeholder kleur\"},borderColor:{type:ControlType.Color,defaultValue:\"#e0e0e0\",title:\"Rand kleur\"},focusBorderColor:{type:ControlType.Color,defaultValue:\"#0078FF\",title:\"Focus rand kleur\"},borderWidth:{type:ControlType.Number,defaultValue:1,min:0,max:4,step:1,title:\"Rand dikte\"},borderRadius:{type:ControlType.Number,defaultValue:8,min:0,max:50,step:1,title:\"Hoekradius\"},paddingV:{type:ControlType.Number,defaultValue:12,min:4,max:24,step:1,title:\"Padding V\"},paddingH:{type:ControlType.Number,defaultValue:16,min:4,max:32,step:1,title:\"Padding H\"},iconColor:{type:ControlType.Color,defaultValue:\"#999999\",title:\"Icoon kleur\"},showIcon:{type:ControlType.Boolean,defaultValue:true,title:\"Zoek icoon\"},showClearButton:{type:ControlType.Boolean,defaultValue:true,title:\"Wis knop\"},// ── Dropdown styling ──\ndropdownBg:{type:ControlType.Color,defaultValue:\"#FFFFFF\",title:\"Dropdown achtergrond\",hidden:props=>!props.autocomplete},dropdownTextColor:{type:ControlType.Color,defaultValue:\"#1a1a1a\",title:\"Dropdown tekst\",hidden:props=>!props.autocomplete},dropdownHoverBg:{type:ControlType.Color,defaultValue:\"#f5f5f5\",title:\"Dropdown hover\",hidden:props=>!props.autocomplete},dropdownBorderColor:{type:ControlType.Color,defaultValue:\"#e8e8e8\",title:\"Dropdown rand\",hidden:props=>!props.autocomplete},dropdownBorderRadius:{type:ControlType.Number,defaultValue:10,min:0,max:24,step:1,title:\"Dropdown radius\",hidden:props=>!props.autocomplete},dropdownPosition:{type:ControlType.Enum,defaultValue:\"below\",title:\"Dropdown positie\",options:[\"below\",\"above\"],optionTitles:[\"Onder\",\"Boven\"],displaySegmentedControl:true,hidden:props=>!props.autocomplete},// ── Events ──\nonSearchSelect:{type:ControlType.EventHandler},onSearchClear:{type:ControlType.EventHandler}});\nexport const __FramerMetadata__ = {\"exports\":{\"default\":{\"type\":\"reactComponent\",\"name\":\"StoreFinder_Search\",\"slots\":[],\"annotations\":{\"framerContractVersion\":\"1\"}},\"__FramerMetadata__\":{\"type\":\"variable\"}}}\n//# sourceMappingURL=./Storefinder_search.map"],"mappings":"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"}