{"version":3,"file":"CustomMAP.BHPeg7T4.mjs","names":["useState","useRef","useMemo"],"sources":["https:/framerusercontent.com/modules/wxalM8LjOsPkdaVtq2kj/1O8hn45AMulxVDmW7bTh/CustomMAP.js"],"sourcesContent":["import{jsx as _jsx,jsxs as _jsxs}from\"react/jsx-runtime\";import{useEffect,useMemo,useRef,useState}from\"react\";import{addPropertyControls,ControlType,// @ts-ignore\nuseQueryData}from\"framer\";/* -----------------------------\n   Mapbox GL loader + CSS inject\n----------------------------- */let mapboxModulePromise=null;function loadMapboxGL(){if(mapboxModulePromise)return mapboxModulePromise;mapboxModulePromise=new Promise(async(resolve,reject)=>{try{const cssId=\"mapbox-gl-css\";if(!document.getElementById(cssId)){const link=document.createElement(\"link\");link.id=cssId;link.rel=\"stylesheet\";link.href=\"https://api.mapbox.com/mapbox-gl-js/v2.15.0/mapbox-gl.css\";document.head.appendChild(link);}const mod=await import(\"mapbox-gl\");resolve(mod.default??mod);}catch(e){reject(e);}});return mapboxModulePromise;}/* -----------------------------\n   UI Styles\n----------------------------- */const containerStyle={width:\"100%\",height:\"100%\",borderRadius:\"16px\",overflow:\"hidden\",position:\"relative\",border:\"2px solid #004E7F\",boxSizing:\"border-box\"};const mapContainerStyle={width:\"100%\",height:\"100%\",borderRadius:\"16px\"};/** Desktop default: flush with the map edge — no top/left/bottom padding, no right corner radius.\n    Now also no inner padding, so the image stack itself sits flush inside the sidebar. */const sidebarStyle={position:\"absolute\",top:0,left:0,width:\"25%\",height:\"100%\",backgroundColor:\"#ffffff\",borderRadius:0,padding:0,boxShadow:\"0 4px 12px rgba(0, 0, 0, 0.15)\",zIndex:1e3,display:\"flex\",flexDirection:\"column\",overflowY:\"auto\",boxSizing:\"border-box\"};/* No gap between cards — they stack directly against each other */const previewContainerStyle={display:\"flex\",flexDirection:\"column\",gap:0};/* Card is now edge-to-edge: no border, no radius, no gap — pure image stack */const previewCardStyle={position:\"relative\",width:\"100%\",height:\"140px\",borderRadius:0,overflow:\"hidden\",cursor:\"pointer\",transition:\"transform 0.2s ease, box-shadow 0.2s ease\",display:\"block\"};const previewImageStyle={width:\"100%\",height:\"100%\",objectFit:\"cover\",display:\"block\"};const previewFallbackStyle={width:\"100%\",height:\"100%\",display:\"flex\",alignItems:\"center\",justifyContent:\"center\",background:\"#f0f0f0\",color:\"#004E7F\",fontFamily:\"'Baloo 2', sans-serif\",fontSize:\"14px\",textAlign:\"center\",padding:\"8px\",boxSizing:\"border-box\"};/* -----------------------------\n   FIXED Overlay position (unchanged)\n----------------------------- */const overlayWrapStyle={position:\"absolute\",zIndex:1200,left:\"38%\",top:\"26%\",width:\"420px\",maxWidth:\"52%\",pointerEvents:\"auto\"};const overlayCardShellStyle={position:\"relative\",overflow:\"visible\"};const overlayCardStyle={position:\"relative\",background:\"#fff\",borderRadius:\"24px\",boxShadow:\"0 18px 40px rgba(0,0,0,0.20)\",overflow:\"hidden\"};/* Image sits flush at the top of the card (no inner margin/box) */const overlayImageBoxStyle={position:\"relative\",width:\"100%\",height:\"220px\",background:\"#D9D9D9\",overflow:\"hidden\"};const overlayImageStyle={width:\"100%\",height:\"100%\",objectFit:\"cover\",display:\"block\"};const overlayBodyStyle={padding:\"20px 22px 22px 22px\",display:\"flex\",flexDirection:\"column\",gap:\"14px\"};const overlayRowStyle={display:\"flex\",alignItems:\"center\",gap:\"10px\"};const overlayIconWrapStyle={width:\"20px\",height:\"20px\",display:\"flex\",alignItems:\"center\",justifyContent:\"center\",flexShrink:0};const overlayFlagStyle={width:\"24px\",height:\"16px\",objectFit:\"cover\",borderRadius:\"2px\",flexShrink:0};const overlayRowTextStyle={fontFamily:\"'Baloo 2', sans-serif\",fontSize:\"15px\",fontWeight:500,color:\"#333333\"};const overlayDistanceImagesWrapStyle={display:\"flex\",gap:\"8px\",flexWrap:\"wrap\",alignItems:\"center\"};const overlayDistanceImageStyle={height:\"26px\",width:\"auto\",objectFit:\"contain\",borderRadius:\"4px\",display:\"block\"};const overlayButtonStyle={width:\"100%\",height:\"50px\",border:\"none\",borderRadius:\"12px\",background:\"#004E7F\",color:\"#fff\",fontSize:\"18px\",fontWeight:700,letterSpacing:\"1px\",cursor:\"pointer\",fontFamily:\"'Baloo 2', sans-serif\",marginTop:\"4px\"};/* -----------------------------\n   Small inline icons\n----------------------------- */const CalendarIcon=()=>/*#__PURE__*/_jsxs(\"svg\",{width:\"20\",height:\"20\",viewBox:\"0 0 24 24\",fill:\"none\",stroke:\"#1a1a1a\",strokeWidth:\"1.6\",strokeLinecap:\"round\",strokeLinejoin:\"round\",children:[/*#__PURE__*/_jsx(\"rect\",{x:\"3\",y:\"5\",width:\"18\",height:\"16\",rx:\"2\"}),/*#__PURE__*/_jsx(\"line\",{x1:\"3\",y1:\"10\",x2:\"21\",y2:\"10\"}),/*#__PURE__*/_jsx(\"line\",{x1:\"8\",y1:\"3\",x2:\"8\",y2:\"7\"}),/*#__PURE__*/_jsx(\"line\",{x1:\"16\",y1:\"3\",x2:\"16\",y2:\"7\"}),/*#__PURE__*/_jsx(\"circle\",{cx:\"8\",cy:\"14.5\",r:\"0.9\",fill:\"#1a1a1a\",stroke:\"none\"}),/*#__PURE__*/_jsx(\"circle\",{cx:\"12\",cy:\"14.5\",r:\"0.9\",fill:\"#1a1a1a\",stroke:\"none\"}),/*#__PURE__*/_jsx(\"circle\",{cx:\"16\",cy:\"14.5\",r:\"0.9\",fill:\"#1a1a1a\",stroke:\"none\"})]});const RouteIcon=()=>/*#__PURE__*/_jsxs(\"svg\",{width:\"20\",height:\"20\",viewBox:\"0 0 24 24\",fill:\"none\",stroke:\"#1a1a1a\",strokeWidth:\"1.6\",strokeLinecap:\"round\",strokeLinejoin:\"round\",children:[/*#__PURE__*/_jsx(\"path\",{d:\"M3 16c2 0 2-3 4-3s2 3 4 3 2-3 4-3\"}),/*#__PURE__*/_jsx(\"circle\",{cx:\"19\",cy:\"13\",r:\"2.4\"}),/*#__PURE__*/_jsx(\"path\",{d:\"M19 15.4c0 1.8-2.2 4-2.2 4\"})]});/* -----------------------------\n   Responsive Helpers\n----------------------------- */const BREAKPOINT_TABLET=1024;const BREAKPOINT_MOBILE=640;function getModeByContainerWidth(w){if(w<BREAKPOINT_MOBILE)return\"mobile\";if(w<BREAKPOINT_TABLET)return\"tablet\";return\"desktop\";}function resolveImageValue(val){if(!val)return null;if(typeof val===\"string\")return val;if(typeof val===\"object\"){if(val.src)return val.src;if(val.srcSet){const firstUrl=String(val.srcSet).split(\",\")[0].trim().split(\" \")[0];return firstUrl||null;}}return null;}function formatDate(rawValue){if(!rawValue)return undefined;const d=new Date(rawValue);if(Number.isNaN(d.getTime()))return String(rawValue);return d.toLocaleDateString(\"en-US\",{month:\"short\",day:\"numeric\",year:\"numeric\"});}function parseLatLngFlexible(rawValue){const raw=String(rawValue??\"\").trim().replace(\";\",\",\");const parts=raw.includes(\",\")?raw.split(\",\").map(s=>s.trim()):raw.split(/\\s+/).map(s=>s.trim());const a=Number(parts[0]);const b=Number(parts[1]);let lat=a;let lng=b;if(Number.isFinite(a)&&Number.isFinite(b)){const aIsLat=Math.abs(a)<=90;const bIsLat=Math.abs(b)<=90;const aIsLng=Math.abs(a)<=180;const looksSwapped=aIsLng&&bIsLat&&!aIsLat;if(looksSwapped){lat=b;lng=a;}}return{lat,lng};}/* -----------------------------\n   Distance switch <-> image field pairs\n   (matches the exact CMS field titles, incl. their typos)\n----------------------------- */const DISTANCE_FIELD_PAIRS=[{switchField:\"LONG DISTANCE\",imageField:\"Long Distance\"},{switchField:\"DOUBLE\",imageField:\"Double\"},{switchField:\"TRIPLE\",imageField:\"Triple\"},{switchField:\"QUADRUPLE\",imageField:\"Quadruple\"},{switchField:\"QUINTUPLE\",imageField:\"Quintuple\"},{switchField:\"DECA\",imageField:\"Deca\"},{switchField:\"DOUBLE DECA\",imageField:\"Double Deca\"},{switchField:\"TRIPLE DECA\",imageField:\"Triple Deca\"},{switchField:\"DOUBLE PER-DAY\",imageField:\"Double PER-DAY\"},{switchField:\"TRIPLE PER-DAY\",imageField:\"Ttriple PER-DAY\"},{switchField:\"QUADRUPLE PER-DAY\",imageField:\"Quadruple PER-DAY\"},{switchField:\"QUINTUPLE PER-DAY\",imageField:\"QUintuple PER-DAY\"},{switchField:\"DECA PER-DAY\",imageField:\"DecA PER-DAY\"},{switchField:\"DOUBLE DECA PER-DAY\",imageField:\"DouBLE DECA PER-DAY\"},{switchField:\"TRIPLE DECA PER-DAY\",imageField:\"TRipLE DECA PER-DAY\"}];function extractDistanceImages(input){const images=[];for(const pair of DISTANCE_FIELD_PAIRS){if(input[pair.switchField]===true){const img=resolveImageValue(input[pair.imageField]);if(img)images.push(img);}}return images;}function formatToMarkerObject(input){const{lat,lng}=parseLatLngFlexible(input.position);return{id:input.id,position:[lat,lng],icon:resolveImageValue(input.Logo),name:input.Titel||input.Title||\"Race Title\",slug:input.Slug,image:resolveImageValue(input.Bild),address:input.Location||input.Address||input.Adresse||input.address,flag:resolveImageValue(input.Flag),date:formatDate(input.Datum||input.Date),anmeldeLink:input[\"Anmelde Link\"]||input.AnmeldeLink||null,distanceImages:extractDistanceImages(input)};}function flyToForOverlayResponsive(map,lngLat,zoom,mode){const container=map.getContainer();const w=container?.clientWidth||0;if(mode===\"desktop\"){const offsetX=Math.max(140,Math.min(w*.22,340));map.flyTo({center:lngLat,zoom,offset:[offsetX,0],speed:1.2,curve:1.4,essential:true});return;}if(mode===\"tablet\"){const offsetX=Math.max(220,Math.min(w*.36,520));map.flyTo({center:lngLat,zoom,offset:[offsetX,0],speed:1.2,curve:1.4,essential:true});return;}map.flyTo({center:lngLat,zoom,offset:[0,0],speed:1.2,curve:1.4,essential:true});}/* -----------------------------\n   Component\n----------------------------- */export default function OpenStreetMaps(props){const[markers,setMarkers]=useState([]);const[filteredMarkers,setFilteredMarkers]=useState([]);const[mapboxLoaded,setMapboxLoaded]=useState(false);const[selectedMarker,setSelectedMarker]=useState(null);const wrapperRef=useRef(null);const[mode,setMode]=useState(\"desktop\");useEffect(()=>{const el=wrapperRef.current;if(!el)return;const ro=new ResizeObserver(()=>{const w=el.clientWidth||0;setMode(getModeByContainerWidth(w));});ro.observe(el);setMode(getModeByContainerWidth(el.clientWidth||0));return()=>ro.disconnect();},[]);const mapContainerRef=useRef(null);const mapRef=useRef(null);const mapboxRef=useRef(null);const markerInstancesRef=useRef([]);const markerIndexRef=useRef(new Map);/* Tracks whether the current map \"click\" event originated from a marker,\n       so the map-wide click-to-close handler can ignore it */const markerClickGuardRef=useRef(false);/* ---- CMS integration ---- */const collectionList=props.collectionList?.[0];const query=collectionList?.props?.children?.props?.children?.props?.query;const propertyControlsById=query?.from?.data?.propertyControls||{};const select=[...Object.keys(propertyControlsById).map(id=>({name:id,type:\"Identifier\"})),{name:\"id\",type:\"Identifier\"}];const cmsData=query?useQueryData({...query,select}):[];/* ---- Load Mapbox ---- */useEffect(()=>{loadMapboxGL().then(mb=>{mapboxRef.current=mb;setMapboxLoaded(true);}).catch(e=>console.error(\"Failed to load mapbox-gl:\",e));},[]);/* ---- Monochrome map filter (CSS only, applied to the canvas only —\n       leaves markers/logos, sidebar, and popup at full color) ---- */useEffect(()=>{const styleId=\"osm-monochrome-style\";let styleEl=document.getElementById(styleId);if(props.monochromeMap){if(!styleEl){styleEl=document.createElement(\"style\");styleEl.id=styleId;document.head.appendChild(styleEl);}styleEl.textContent=`\n                .mapboxgl-canvas {\n                    filter: grayscale(1) contrast(1.05) brightness(1.02);\n                }\n            `;}else if(styleEl){styleEl.textContent=\"\";}},[props.monochromeMap]);/* ---- Parse markers ---- */useEffect(()=>{if(!collectionList)return;const formattedMarkers=(cmsData||[]).map(item=>{const marker={};for(const id in propertyControlsById){const property=propertyControlsById[id];const value=item[id];if(property.type===\"string\"||property.type===\"number\"||property.type===\"date\"||property.type===\"link\"){marker[property.title]=value;}else if(property.type===\"boolean\"){marker[property.title]=value;}else if(property.type===\"list\"){marker[property.title]=Array.isArray(value)?value:[];}else if(property.type===\"responsiveimage\"||property.type===\"image\"){marker[property.title]=value;}}if(!marker.position&&marker.Position)marker.position=marker.Position;if(!marker.position&&marker.Koordinaten)marker.position=marker.Koordinaten;if(!marker.position&&marker.Coordinates)marker.position=marker.Coordinates;return formatToMarkerObject(marker);});setMarkers(formattedMarkers);setFilteredMarkers(formattedMarkers);},[cmsData,propertyControlsById]);/* ---- Map init ---- */useEffect(()=>{if(!mapboxLoaded)return;if(!mapContainerRef.current)return;if(mapRef.current)return;const mb=mapboxRef.current;const token=props.mapboxAccessToken||props.accessToken||props.token||props.mapboxToken||\"\";const styleUrl=props.mapStyle||props.anonymousStyle||\"\";if(!token)return;mb.accessToken=token;const{lat,lng}=parseLatLngFlexible(props.initialLatLng||\"0,0\");const map=new mb.Map({container:mapContainerRef.current,style:styleUrl,center:[lng,lat],zoom:props.initialZoom??1,projection:\"mercator\",antialias:true});map.on(\"style.load\",()=>{renderMarkers();});/* Clicking anywhere on the map that isn't a marker closes the popup */map.on(\"click\",()=>{if(markerClickGuardRef.current){markerClickGuardRef.current=false;return;}setSelectedMarker(null);});mapRef.current=map;return()=>{try{map.remove();}catch{}mapRef.current=null;};// eslint-disable-next-line react-hooks/exhaustive-deps\n},[mapboxLoaded,props.mapboxAccessToken,props.accessToken,props.token,props.mapboxToken,props.mapStyle,props.anonymousStyle,props.initialLatLng,props.initialZoom]);/* ---- Apply style changes ---- */useEffect(()=>{const map=mapRef.current;if(!map)return;const styleUrl=props.mapStyle||props.anonymousStyle||\"\";try{if(styleUrl)map.setStyle(styleUrl);}catch{}},[props.mapStyle,props.anonymousStyle]);/* ---- Resize ---- */useEffect(()=>{const map=mapRef.current;if(!map||!mapContainerRef.current)return;const ro=new ResizeObserver(()=>{try{map.resize();}catch{}});ro.observe(mapContainerRef.current);return()=>ro.disconnect();},[mapboxLoaded]);const openOverlayForMarker=m=>{const map=mapRef.current;if(!map)return;/* Mark this as a marker-originated interaction so the map's own\n           click-to-close handler (which fires right after this) skips it */markerClickGuardRef.current=true;setSelectedMarker(m);const[lat,lng]=m.position;if(!Number.isFinite(lat)||!Number.isFinite(lng))return;const lngLat=[lng,lat];flyToForOverlayResponsive(map,lngLat,Math.max(map.getZoom(),props.initialZoom??1),mode);};/* -----------------------------\n       Render markers\n----------------------------- */const renderMarkers=()=>{const map=mapRef.current;const mb=mapboxRef.current;if(!map||!mb)return;markerInstancesRef.current.forEach(mk=>{try{mk.remove();}catch{}});markerInstancesRef.current=[];markerIndexRef.current.clear();/* Uniform height for every pin's logo image (width is auto, so each\n           logo keeps its own aspect ratio but they all read as \"same size\") */const PIN_LOGO_HEIGHT=42;filteredMarkers.forEach(m=>{const[lat,lng]=m.position;if(!Number.isFinite(lat)||!Number.isFinite(lng))return;const lngLat=[lng,lat];const el=document.createElement(\"div\");el.style.cursor=\"pointer\";el.style.userSelect=\"none\";el.style.display=\"flex\";el.style.alignItems=\"center\";el.style.justifyContent=\"center\";el.style.background=\"transparent\";const iconUrl=m.icon||props.defaultIcon;if(iconUrl){/* No background plate — just the logo image itself,\n                   fit-to-content width, uniform height across all pins.\n                   Filter forces every logo to render as a solid black\n                   silhouette (regardless of its original colors), with a\n                   thin white outline + drop shadow so it stays visible on\n                   both light and dark map areas. */const img=document.createElement(\"img\");img.src=iconUrl;img.style.height=`${PIN_LOGO_HEIGHT}px`;img.style.width=\"auto\";img.style.maxWidth=\"70px\";img.style.objectFit=\"contain\";img.style.display=\"block\";img.style.filter=\"brightness(0) saturate(100%) drop-shadow(0 0 1px rgba(255,255,255,0.9)) drop-shadow(0 0 1px rgba(255,255,255,0.9)) drop-shadow(0 3px 6px rgba(0,0,0,0.35))\";img.style.pointerEvents=\"none\";el.appendChild(img);}else{/* Fallback: plain dot when no logo is set at all */el.style.width=\"18px\";el.style.height=\"18px\";el.style.borderRadius=\"999px\";el.style.background=\"#004E7F\";el.style.boxShadow=\"0 6px 14px rgba(0,0,0,0.25)\";el.style.border=\"2px solid #fff\";}const markerInstance=new mb.Marker({element:el,anchor:\"center\"}).setLngLat(lngLat).addTo(map);el.addEventListener(\"click\",()=>openOverlayForMarker(m));markerInstancesRef.current.push(markerInstance);markerIndexRef.current.set(m.id,markerInstance);});};useEffect(()=>{const map=mapRef.current;if(!map)return;try{if(map.isStyleLoaded&&map.isStyleLoaded())renderMarkers();}catch{renderMarkers();}// eslint-disable-next-line react-hooks/exhaustive-deps\n},[filteredMarkers,props.defaultIcon]);/* -----------------------------\n       Sidebar interactions\n----------------------------- */const openFromSidebar=m=>{openOverlayForMarker(m);};const goToDetails=m=>{if(m.slug){window.location.href=`/races/${m.slug}`;}else{openFromSidebar(m);}};const previewMarkers=useMemo(()=>filteredMarkers,[filteredMarkers]);const computedSidebarStyle=mode===\"desktop\"?sidebarStyle:mode===\"tablet\"?{...sidebarStyle,width:\"50%\"}:{...sidebarStyle,width:\"100%\"};return /*#__PURE__*/_jsxs(\"div\",{ref:wrapperRef,style:containerStyle,children:[/*#__PURE__*/_jsx(\"div\",{ref:mapContainerRef,style:mapContainerStyle}),selectedMarker&&/*#__PURE__*/_jsx(\"div\",{style:overlayWrapStyle,children:/*#__PURE__*/_jsx(\"div\",{style:overlayCardShellStyle,children:/*#__PURE__*/_jsxs(\"div\",{style:overlayCardStyle,children:[/*#__PURE__*/_jsx(\"div\",{style:overlayImageBoxStyle,children:selectedMarker.image?/*#__PURE__*/_jsx(\"img\",{src:selectedMarker.image,alt:selectedMarker.name,style:overlayImageStyle}):null}),/*#__PURE__*/_jsxs(\"div\",{style:overlayBodyStyle,children:[selectedMarker.address&&/*#__PURE__*/_jsxs(\"div\",{style:overlayRowStyle,children:[selectedMarker.flag&&/*#__PURE__*/_jsx(\"img\",{src:selectedMarker.flag,alt:\"\",style:overlayFlagStyle}),/*#__PURE__*/_jsx(\"span\",{style:overlayRowTextStyle,children:selectedMarker.address})]}),selectedMarker.date&&/*#__PURE__*/_jsxs(\"div\",{style:overlayRowStyle,children:[/*#__PURE__*/_jsx(\"span\",{style:overlayIconWrapStyle,children:/*#__PURE__*/_jsx(CalendarIcon,{})}),/*#__PURE__*/_jsx(\"span\",{style:overlayRowTextStyle,children:selectedMarker.date})]}),selectedMarker.distanceImages&&selectedMarker.distanceImages.length>0&&/*#__PURE__*/_jsxs(\"div\",{style:overlayRowStyle,children:[/*#__PURE__*/_jsx(\"span\",{style:overlayIconWrapStyle,children:/*#__PURE__*/_jsx(RouteIcon,{})}),/*#__PURE__*/_jsx(\"div\",{style:overlayDistanceImagesWrapStyle,children:selectedMarker.distanceImages.map((imgUrl,idx)=>/*#__PURE__*/_jsx(\"img\",{src:imgUrl,alt:\"\",style:overlayDistanceImageStyle},idx))})]}),/*#__PURE__*/_jsx(\"button\",{style:overlayButtonStyle,onClick:()=>{if(selectedMarker.slug){window.location.href=`/races/${selectedMarker.slug}`;}},children:\"DISCOVER\"})]})]})})}),/*#__PURE__*/_jsx(\"div\",{style:computedSidebarStyle,children:previewMarkers.length>0&&/*#__PURE__*/_jsx(\"div\",{style:previewContainerStyle,children:previewMarkers.map(m=>/*#__PURE__*/_jsx(\"div\",{style:previewCardStyle,onClick:()=>goToDetails(m),onMouseEnter:e=>{e.currentTarget.style.transform=\"scale(1.02)\";if(props.sidebarHoverOpensPopup){openFromSidebar(m);}},onMouseLeave:e=>{e.currentTarget.style.transform=\"scale(1)\";},children:m.image?/*#__PURE__*/_jsx(\"img\",{src:m.image,alt:m.name,style:previewImageStyle}):/*#__PURE__*/_jsx(\"div\",{style:previewFallbackStyle,children:m.name})},m.id))})})]});}/* -----------------------------\n   Defaults + Controls (Hardcoded Credentials)\n----------------------------- */OpenStreetMaps.defaultProps={defaultIcon:null,initialLatLng:\"0,0\",initialZoom:1,mapStyle:\"mapbox://styles/masostudio/cmql6xevo009201sd14xjeutp\",mapboxAccessToken:\"pk.eyJ1IjoibWFzb3N0dWRpbyIsImEiOiJjbWh2djZobzkwMGFsMmlzYXF4cGFrenF3In0.G5oqh62JBNduAs0xOQOU6g\",sidebarHoverOpensPopup:true,monochromeMap:true};addPropertyControls(OpenStreetMaps,{collectionList:{type:ControlType.ComponentInstance,title:\"CMS Collection\"},mapboxAccessToken:{type:ControlType.String,title:\"Mapbox Token\",displayTextArea:true,defaultValue:\"pk.eyJ1IjoibWFzb3N0dWRpbyIsImEiOiJjbWh2djZobzkwMGFsMmlzYXF4cGFrenF3In0.G5oqh62JBNduAs0xOQOU6g\"},mapStyle:{type:ControlType.String,title:\"Map Style URL\",placeholder:\"mapbox://styles/<user>/<styleId>\",defaultValue:\"mapbox://styles/masostudio/cmql6xevo009201sd14xjeutp\"},defaultIcon:{type:ControlType.String,title:\"Fallback Icon URL\",placeholder:\"PNG URL (used if a race has no Logo set)\"},initialLatLng:{type:ControlType.String,title:\"Initial Position\",defaultValue:\"0,0\",placeholder:\"lat,lng\"},initialZoom:{type:ControlType.Number,title:\"Initial Zoom\",defaultValue:1,min:1,max:18,step:1},sidebarHoverOpensPopup:{type:ControlType.Boolean,title:\"Sidebar hover opens\",defaultValue:true},monochromeMap:{type:ControlType.Boolean,title:\"Monochrome Map\",defaultValue:true}});\nexport const __FramerMetadata__ = {\"exports\":{\"default\":{\"type\":\"reactComponent\",\"name\":\"OpenStreetMaps\",\"slots\":[],\"annotations\":{\"framerContractVersion\":\"1\"}},\"__FramerMetadata__\":{\"type\":\"variable\"}}}\n//# sourceMappingURL=./CustomMAP.map"],"mappings":"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"}