{
  "version": 3,
  "sources": ["ssg:https://framerusercontent.com/modules/3nV75WnoP6U0WSGZvgZo/n2OHqZ1PNKDPFqlyJQ8V/SnazzyGoogleMaps.js"],
  "sourcesContent": ["import{jsx as _jsx}from\"react/jsx-runtime\";import{useEffect,useRef}from\"react\";import{addPropertyControls,ControlType}from\"framer\";/**\n *\n * @framerDisableUnlink\n *\n */export default function SnazzyGoogleMaps({location,apiKey,mapStylesJson,markerUrl,streetViewControl,mapTypeControl,fullscreenControl,zoom,disablePanning}){const mapRef=useRef(null);useEffect(()=>{if(!mapRef.current)return;const loadScript=url=>{const script=document.createElement(\"script\");script.src=url;script.async=true;script.defer=true;document.head.appendChild(script);return new Promise((resolve,reject)=>{script.onload=resolve;script.onerror=reject;});};const initializeMap=()=>{if(!mapRef.current)return;const[lat,lng]=location.split(\",\").map(Number);let mapStyles;try{mapStyles=JSON.parse(mapStylesJson);}catch(e){console.error(\"Invalid JSON for map styles:\",e);mapStyles=[];}const map=new google.maps.Map(mapRef.current,{center:{lat,lng},zoom:zoom,styles:mapStyles,streetViewControl:streetViewControl,mapTypeControl:mapTypeControl,fullscreenControl:fullscreenControl,draggable:!disablePanning});new google.maps.Marker({position:{lat,lng},map:map,icon:markerUrl});};const effectiveApiKey=apiKey||\"\"// Use empty string if API key is not provided\n;loadScript(`https://maps.googleapis.com/maps/api/js?key=${effectiveApiKey}`).then(initializeMap).catch(err=>{console.error(\"Failed to load Google Maps script:\",err);});},[location,mapStylesJson,apiKey,markerUrl,streetViewControl,mapTypeControl,fullscreenControl,zoom,disablePanning]);return /*#__PURE__*/_jsx(\"div\",{ref:mapRef,style:{width:\"100%\",height:\"100%\",zIndex:10,position:\"relative\"}});}SnazzyGoogleMaps.defaultProps={location:\"40.712776,-74.005974\",apiKey:\"\",mapStylesJson:JSON.stringify([{featureType:\"water\",elementType:\"geometry\",stylers:[{color:\"#e9e9e9\"},{lightness:17}]},{featureType:\"landscape\",elementType:\"geometry\",stylers:[{color:\"#f5f5f5\"},{lightness:20}]},{featureType:\"road.highway\",elementType:\"geometry.fill\",stylers:[{color:\"#ffffff\"},{lightness:17}]},{featureType:\"road.highway\",elementType:\"geometry.stroke\",stylers:[{color:\"#ffffff\"},{lightness:29},{weight:.2}]},{featureType:\"road.arterial\",elementType:\"geometry\",stylers:[{color:\"#ffffff\"},{lightness:18}]},{featureType:\"road.local\",elementType:\"geometry\",stylers:[{color:\"#ffffff\"},{lightness:16}]},{featureType:\"poi\",elementType:\"geometry\",stylers:[{color:\"#f5f5f5\"},{lightness:21}]},{featureType:\"poi.park\",elementType:\"geometry\",stylers:[{color:\"#dedede\"},{lightness:21}]},{elementType:\"labels.text.stroke\",stylers:[{visibility:\"on\"},{color:\"#ffffff\"},{lightness:16}]},{elementType:\"labels.text.fill\",stylers:[{saturation:36},{color:\"#333333\"},{lightness:40}]},{elementType:\"labels.icon\",stylers:[{visibility:\"off\"}]},{featureType:\"transit\",elementType:\"geometry\",stylers:[{color:\"#f2f2f2\"},{lightness:19}]},{featureType:\"administrative\",elementType:\"geometry.fill\",stylers:[{color:\"#fefefe\"},{lightness:20}]},{featureType:\"administrative\",elementType:\"geometry.stroke\",stylers:[{color:\"#fefefe\"},{lightness:17},{weight:1.2}]}],null,2),markerUrl:\"\",streetViewControl:true,mapTypeControl:true,fullscreenControl:true,zoom:12,disablePanning:false};addPropertyControls(SnazzyGoogleMaps,{location:{type:ControlType.String,title:\"Location (lat,lng)\",defaultValue:\"40.712776,-74.005974\"},apiKey:{type:ControlType.String,title:\"API Key\",defaultValue:\"\",placeholder:\"Enter your API key...\"},mapStylesJson:{type:ControlType.String,title:\"Map Styles (JSON)\",defaultValue:SnazzyGoogleMaps.defaultProps.mapStylesJson,displayTextArea:true,placeholder:\"Paste your JSON map styles here...\"},markerUrl:{type:ControlType.Image,title:\"Custom Marker\",defaultValue:\"\"},streetViewControl:{type:ControlType.Boolean,title:\"Street View Control\",defaultValue:true,enabledTitle:\"Show\",disabledTitle:\"Hide\"},mapTypeControl:{type:ControlType.Boolean,title:\"Map/Satellite Control\",defaultValue:true,enabledTitle:\"Show\",disabledTitle:\"Hide\"},fullscreenControl:{type:ControlType.Boolean,title:\"Fullscreen Control\",defaultValue:true,enabledTitle:\"Show\",disabledTitle:\"Hide\"},zoom:{type:ControlType.Number,title:\"Zoom Level\",defaultValue:12,min:1,max:20,unit:\"\"},disablePanning:{type:ControlType.Boolean,title:\"Disable Panning\",defaultValue:false,enabledTitle:\"Yes\",disabledTitle:\"No\"}});\nexport const __FramerMetadata__ = {\"exports\":{\"default\":{\"type\":\"reactComponent\",\"name\":\"SnazzyGoogleMaps\",\"slots\":[],\"annotations\":{\"framerContractVersion\":\"1\",\"framerDisableUnlink\":\"*\"}},\"__FramerMetadata__\":{\"type\":\"variable\"}}}\n//# sourceMappingURL=./SnazzyGoogleMaps.map"],
  "mappings": "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",
  "names": ["SnazzyGoogleMaps", "location", "apiKey", "mapStylesJson", "markerUrl", "streetViewControl", "mapTypeControl", "fullscreenControl", "zoom", "disablePanning", "mapRef", "pe", "ue", "loadScript", "url", "script", "resolve", "reject", "initializeMap", "lat", "lng", "mapStyles", "e", "map", "err", "p", "addPropertyControls", "ControlType"]
}
