diff --git a/plugins/carhop-blocks/blocks/localisation-map/build/localisation-map/carhop-pin.png b/plugins/carhop-blocks/blocks/localisation-map/build/localisation-map/carhop-pin.png
deleted file mode 100644
index f7f91e7..0000000
Binary files a/plugins/carhop-blocks/blocks/localisation-map/build/localisation-map/carhop-pin.png and /dev/null differ
diff --git a/plugins/carhop-blocks/blocks/localisation-map/build/localisation-map/index.asset.php b/plugins/carhop-blocks/blocks/localisation-map/build/localisation-map/index.asset.php
index 23a109b..d3f1cb7 100644
--- a/plugins/carhop-blocks/blocks/localisation-map/build/localisation-map/index.asset.php
+++ b/plugins/carhop-blocks/blocks/localisation-map/build/localisation-map/index.asset.php
@@ -1 +1 @@
- array('react-jsx-runtime', 'wp-block-editor', 'wp-blocks', 'wp-server-side-render'), 'version' => '222d888781be4eb372e6');
+ array('react-jsx-runtime', 'wp-block-editor', 'wp-blocks', 'wp-server-side-render'), 'version' => '8cd612634bc9c89b25eb');
diff --git a/plugins/carhop-blocks/blocks/localisation-map/build/localisation-map/index.js b/plugins/carhop-blocks/blocks/localisation-map/build/localisation-map/index.js
index 84f2bcc..ba76785 100644
--- a/plugins/carhop-blocks/blocks/localisation-map/build/localisation-map/index.js
+++ b/plugins/carhop-blocks/blocks/localisation-map/build/localisation-map/index.js
@@ -108,7 +108,10 @@ const GOOGLE_MAPS_CONFIG = {
lng: 4.151615298397132,
// Position originale du pin
title: "Carhop",
- // Options de couleur : 'red', 'blue', 'green', 'yellow', 'purple', 'orange'
+ address: "Av. de la Houssière 80, 7090 Braine-le-Comte",
+ placeId: "ChIJ41pZLUq1w0cRjXw8zlHnvXI",
+ // Place ID Google Maps (à remplacer par le vrai)
+
color: "green"
},
styles: [{
@@ -392,14 +395,40 @@ function initializeCarhopMaps() {
// Contrôle Street View
fullscreenControl: false // Bouton plein écran
});
- // Chemin vers votre pin personnalisé (à ajuster selon votre structure)
- const image = "/wp-content/plugins/carhop-blocks/blocks/localisation-map/build/localisation-map/carhop-pin.png";
+ // Chemin vers votre pin personnalisé avec fallback
+ const customPinPath = "/wp-content/plugins/carhop-blocks/blocks/localisation-map/src/localisation-map/carhop-pin.png";
+
// Add marker with custom color
- new google.maps.Marker({
+ const marker = new google.maps.Marker({
position: new google.maps.LatLng(GOOGLE_MAPS_CONFIG.marker.lat, GOOGLE_MAPS_CONFIG.marker.lng),
map: map,
title: GOOGLE_MAPS_CONFIG.marker.title,
- icon: image
+ icon: {
+ url: customPinPath,
+ scaledSize: new google.maps.Size(40, 40),
+ // Taille du pin
+ origin: new google.maps.Point(0, 0),
+ anchor: new google.maps.Point(20, 40) // Point d'ancrage (centre bas)
+ }
+ });
+
+ // Add click event to open Google Maps place
+ marker.addListener("click", function () {
+ const placeId = GOOGLE_MAPS_CONFIG.marker.placeId;
+
+ // URL pour ouvrir la fiche Google Maps complète
+ let googleMapsUrl;
+ if (placeId && placeId !== "ChIJXXXXXXXXXXXXXXXXXXXX") {
+ // Utiliser le Place ID pour ouvrir la fiche complète
+ googleMapsUrl = `https://www.google.com/maps/place/?q=place_id:${placeId}`;
+ } else {
+ // Fallback avec l'adresse
+ const address = encodeURIComponent(GOOGLE_MAPS_CONFIG.marker.address);
+ googleMapsUrl = `https://www.google.com/maps/search/?api=1&query=${address}`;
+ }
+
+ // Ouvrir dans un nouvel onglet
+ window.open(googleMapsUrl, "_blank");
});
// Mark as initialized
diff --git a/plugins/carhop-blocks/blocks/localisation-map/build/localisation-map/index.js.map b/plugins/carhop-blocks/blocks/localisation-map/build/localisation-map/index.js.map
index 483fffc..50f8fd6 100644
--- a/plugins/carhop-blocks/blocks/localisation-map/build/localisation-map/index.js.map
+++ b/plugins/carhop-blocks/blocks/localisation-map/build/localisation-map/index.js.map
@@ -1 +1 @@
-{"version":3,"file":"localisation-map/index.js","mappings":"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Q,CAAC0C,gBAAgB,CAAC,kBAAkB,EAAEf,iBAAiB,CAAC;AACjE,CAAC,MAAM;EACNA,iBAAiB,CAAC,CAAC;AACpB;;AAEA;AACAC,MAAM,CAACc,gBAAgB,CAAC,MAAM,EAAEf,iBAAiB,CAAC,C;;;;;;;;;;;AC1elD,6C;;;;;;;;;;;ACAA,wC;;;;;;;;;;;ACAA,kD;;;;;;;;;;;ACAA,2C;;;;;;UCAA;UACA;;UAEA;UACA;UACA;UACA;UACA;UACA;UACA;UACA;UACA;UACA;UACA;UACA;UACA;;UAEA;UACA;;UAEA;UACA;UACA;;UAEA;UACA;;;;;WCzBA;WACA;WACA;WACA;WACA,+BAA+B,wCAAwC;WACvE;WACA;WACA;WACA;WACA,iBAAiB,qBAAqB;WACtC;WACA;WACA,kBAAkB,qBAAqB;WACvC;WACA;WACA,KAAK;WACL;WACA;WACA;WACA;WACA;WACA;WACA;WACA;WACA;WACA;WACA;WACA,E;;;;;WC3BA;WACA;WACA;WACA;WACA;WACA,iCAAiC,WAAW;WAC5C;WACA,E;;;;;WCPA;WACA;WACA;WACA;WACA,yCAAyC,wCAAwC;WACjF;WACA;WACA,E;;;;;WCPA,wF;;;;;WCAA;WACA;WACA;WACA,uDAAuD,iBAAiB;WACxE;WACA,gDAAgD,aAAa;WAC7D,E;;;;;WCNA;;WAEA;WACA;WACA;WACA;WACA;WACA;WACA;;WAEA;;WAEA;;WAEA;;WAEA;;WAEA;;WAEA;;WAEA;WACA;WACA;WACA;WACA;WACA;WACA;WACA;WACA;WACA;WACA;WACA;WACA;WACA;WACA;WACA,MAAM,qBAAqB;WAC3B;WACA;WACA;WACA;WACA;WACA;WACA;WACA;;WAEA;WACA;WACA,4G;;;;;UEjDA;UACA;UACA;UACA;UACA","sources":["webpack://localisation-map/./src/localisation-map/edit.js","webpack://localisation-map/./src/localisation-map/index.js","webpack://localisation-map/./src/localisation-map/style.scss","webpack://localisation-map/./src/localisation-map/view.js","webpack://localisation-map/external window [\"wp\",\"blockEditor\"]","webpack://localisation-map/external window [\"wp\",\"blocks\"]","webpack://localisation-map/external window [\"wp\",\"serverSideRender\"]","webpack://localisation-map/external window \"ReactJSXRuntime\"","webpack://localisation-map/webpack/bootstrap","webpack://localisation-map/webpack/runtime/chunk loaded","webpack://localisation-map/webpack/runtime/compat get default export","webpack://localisation-map/webpack/runtime/define property getters","webpack://localisation-map/webpack/runtime/hasOwnProperty shorthand","webpack://localisation-map/webpack/runtime/make namespace object","webpack://localisation-map/webpack/runtime/jsonp chunk loading","webpack://localisation-map/webpack/before-startup","webpack://localisation-map/webpack/startup","webpack://localisation-map/webpack/after-startup"],"sourcesContent":["import ServerSideRender from \"@wordpress/server-side-render\";\r\nimport { useBlockProps } from \"@wordpress/block-editor\";\r\n\r\nexport default function Edit(props) {\r\n\treturn (\r\n\t\t
\r\n\t\t\t\r\n\t\t
\r\n\t);\r\n}\r\n","import { registerBlockType } from \"@wordpress/blocks\";\nimport \"./style.scss\";\n\nimport Edit from \"./edit\";\nimport metadata from \"./block.json\";\n\n// Import the view script to load map handling on the backend\nimport \"./view.js\";\n\nregisterBlockType(metadata.name, {\n\tedit: Edit,\n});\n","// extracted by mini-css-extract-plugin\nexport {};","/**\n * Google Maps initialization for Carhop Localisation Map block\n */\n\n// Configuration\nconst GOOGLE_MAPS_CONFIG = {\n\tapiKey: \"AIzaSyBs-owKPe4qiYLb2baCTAptLeNNJX7bTQk\",\n\tcenter: {\n\t\tlat: 50.61036915572659,\n\t\tlng: 4.148529499893204,\n\t},\n\tzoom: 15,\n\tmarker: {\n\t\tlat: 50.61036915386491,\n\t\tlng: 4.151615298397132, // Position originale du pin\n\t\ttitle: \"Carhop\",\n\t\t// Options de couleur : 'red', 'blue', 'green', 'yellow', 'purple', 'orange'\n\t\tcolor: \"green\",\n\t},\n\tstyles: [\n\t\t{\n\t\t\tfeatureType: \"administrative\",\n\t\t\telementType: \"geometry\",\n\t\t\tstylers: [\n\t\t\t\t{\n\t\t\t\t\tcolor: \"#136f63\",\n\t\t\t\t},\n\t\t\t],\n\t\t},\n\t\t{\n\t\t\tfeatureType: \"administrative\",\n\t\t\telementType: \"labels.text.fill\",\n\t\t\tstylers: [\n\t\t\t\t{\n\t\t\t\t\tcolor: \"#ffffff\",\n\t\t\t\t},\n\t\t\t\t{\n\t\t\t\t\tgamma: \"1.00\",\n\t\t\t\t},\n\t\t\t\t{\n\t\t\t\t\tlightness: \"0\",\n\t\t\t\t},\n\t\t\t\t{\n\t\t\t\t\tsaturation: \"0\",\n\t\t\t\t},\n\t\t\t\t{\n\t\t\t\t\tvisibility: \"on\",\n\t\t\t\t},\n\t\t\t\t{\n\t\t\t\t\tweight: \"1.5\",\n\t\t\t\t},\n\t\t\t],\n\t\t},\n\t\t{\n\t\t\tfeatureType: \"administrative\",\n\t\t\telementType: \"labels.text.stroke\",\n\t\t\tstylers: [\n\t\t\t\t{\n\t\t\t\t\tcolor: \"#19464b\",\n\t\t\t\t},\n\t\t\t\t{\n\t\t\t\t\tweight: \"2\",\n\t\t\t\t},\n\t\t\t],\n\t\t},\n\t\t{\n\t\t\tfeatureType: \"administrative.land_parcel\",\n\t\t\telementType: \"geometry\",\n\t\t\tstylers: [\n\t\t\t\t{\n\t\t\t\t\tcolor: \"#19464b\",\n\t\t\t\t},\n\t\t\t],\n\t\t},\n\t\t{\n\t\t\tfeatureType: \"landscape\",\n\t\t\telementType: \"all\",\n\t\t\tstylers: [\n\t\t\t\t{\n\t\t\t\t\tcolor: \"#19464b\",\n\t\t\t\t},\n\t\t\t],\n\t\t},\n\t\t{\n\t\t\tfeatureType: \"landscape\",\n\t\t\telementType: \"geometry\",\n\t\t\tstylers: [\n\t\t\t\t{\n\t\t\t\t\tcolor: \"#136f63\",\n\t\t\t\t},\n\t\t\t],\n\t\t},\n\t\t{\n\t\t\tfeatureType: \"landscape.man_made\",\n\t\t\telementType: \"geometry\",\n\t\t\tstylers: [\n\t\t\t\t{\n\t\t\t\t\tcolor: \"#136f63\",\n\t\t\t\t},\n\t\t\t],\n\t\t},\n\t\t{\n\t\t\tfeatureType: \"landscape.natural\",\n\t\t\telementType: \"labels.text.fill\",\n\t\t\tstylers: [\n\t\t\t\t{\n\t\t\t\t\tcolor: \"#ffffff\",\n\t\t\t\t},\n\t\t\t\t{\n\t\t\t\t\tvisibility: \"on\",\n\t\t\t\t},\n\t\t\t],\n\t\t},\n\t\t{\n\t\t\tfeatureType: \"landscape.natural.landcover\",\n\t\t\telementType: \"geometry\",\n\t\t\tstylers: [\n\t\t\t\t{\n\t\t\t\t\tcolor: \"#136f63\",\n\t\t\t\t},\n\t\t\t],\n\t\t},\n\t\t{\n\t\t\tfeatureType: \"landscape.natural.terrain\",\n\t\t\telementType: \"geometry\",\n\t\t\tstylers: [\n\t\t\t\t{\n\t\t\t\t\tcolor: \"#136f63\",\n\t\t\t\t},\n\t\t\t],\n\t\t},\n\t\t{\n\t\t\tfeatureType: \"poi\",\n\t\t\telementType: \"all\",\n\t\t\tstylers: [\n\t\t\t\t{\n\t\t\t\t\tvisibility: \"off\",\n\t\t\t\t},\n\t\t\t],\n\t\t},\n\t\t{\n\t\t\tfeatureType: \"poi.attraction\",\n\t\t\telementType: \"all\",\n\t\t\tstylers: [\n\t\t\t\t{\n\t\t\t\t\tvisibility: \"off\",\n\t\t\t\t},\n\t\t\t],\n\t\t},\n\t\t{\n\t\t\tfeatureType: \"poi.business\",\n\t\t\telementType: \"all\",\n\t\t\tstylers: [\n\t\t\t\t{\n\t\t\t\t\tvisibility: \"off\",\n\t\t\t\t},\n\t\t\t],\n\t\t},\n\t\t{\n\t\t\tfeatureType: \"poi.government\",\n\t\t\telementType: \"all\",\n\t\t\tstylers: [\n\t\t\t\t{\n\t\t\t\t\tvisibility: \"off\",\n\t\t\t\t},\n\t\t\t],\n\t\t},\n\t\t{\n\t\t\tfeatureType: \"poi.park\",\n\t\t\telementType: \"all\",\n\t\t\tstylers: [\n\t\t\t\t{\n\t\t\t\t\tvisibility: \"off\",\n\t\t\t\t},\n\t\t\t],\n\t\t},\n\t\t{\n\t\t\tfeatureType: \"poi.school\",\n\t\t\telementType: \"all\",\n\t\t\tstylers: [\n\t\t\t\t{\n\t\t\t\t\tvisibility: \"off\",\n\t\t\t\t},\n\t\t\t],\n\t\t},\n\t\t{\n\t\t\tfeatureType: \"poi.medical\",\n\t\t\telementType: \"all\",\n\t\t\tstylers: [\n\t\t\t\t{\n\t\t\t\t\tvisibility: \"off\",\n\t\t\t\t},\n\t\t\t],\n\t\t},\n\t\t{\n\t\t\tfeatureType: \"poi.place_of_worship\",\n\t\t\telementType: \"all\",\n\t\t\tstylers: [\n\t\t\t\t{\n\t\t\t\t\tvisibility: \"off\",\n\t\t\t\t},\n\t\t\t],\n\t\t},\n\t\t{\n\t\t\tfeatureType: \"poi.sports_complex\",\n\t\t\telementType: \"all\",\n\t\t\tstylers: [\n\t\t\t\t{\n\t\t\t\t\tvisibility: \"off\",\n\t\t\t\t},\n\t\t\t],\n\t\t},\n\t\t{\n\t\t\tfeatureType: \"road.highway\",\n\t\t\telementType: \"geometry.fill\",\n\t\t\tstylers: [\n\t\t\t\t{\n\t\t\t\t\tcolor: \"#136f63\",\n\t\t\t\t},\n\t\t\t\t{\n\t\t\t\t\tlightness: \"-40\",\n\t\t\t\t},\n\t\t\t],\n\t\t},\n\t\t{\n\t\t\tfeatureType: \"road.highway\",\n\t\t\telementType: \"geometry.stroke\",\n\t\t\tstylers: [\n\t\t\t\t{\n\t\t\t\t\tvisibility: \"off\",\n\t\t\t\t},\n\t\t\t],\n\t\t},\n\t\t{\n\t\t\tfeatureType: \"road.highway\",\n\t\t\telementType: \"labels\",\n\t\t\tstylers: [\n\t\t\t\t{\n\t\t\t\t\tvisibility: \"off\",\n\t\t\t\t},\n\t\t\t],\n\t\t},\n\t\t{\n\t\t\tfeatureType: \"road.highway\",\n\t\t\telementType: \"labels.text.fill\",\n\t\t\tstylers: [\n\t\t\t\t{\n\t\t\t\t\tcolor: \"#ffffff\",\n\t\t\t\t},\n\t\t\t],\n\t\t},\n\t\t{\n\t\t\tfeatureType: \"road.highway\",\n\t\t\telementType: \"labels.text.stroke\",\n\t\t\tstylers: [\n\t\t\t\t{\n\t\t\t\t\tcolor: \"#0a1f14\",\n\t\t\t\t},\n\t\t\t],\n\t\t},\n\t\t{\n\t\t\tfeatureType: \"road.arterial\",\n\t\t\telementType: \"geometry\",\n\t\t\tstylers: [\n\t\t\t\t{\n\t\t\t\t\tcolor: \"#136f63\",\n\t\t\t\t},\n\t\t\t\t{\n\t\t\t\t\tlightness: 30,\n\t\t\t\t},\n\t\t\t],\n\t\t},\n\t\t{\n\t\t\tfeatureType: \"road.arterial\",\n\t\t\telementType: \"geometry.fill\",\n\t\t\tstylers: [\n\t\t\t\t{\n\t\t\t\t\tcolor: \"#136f63\",\n\t\t\t\t},\n\t\t\t],\n\t\t},\n\t\t{\n\t\t\tfeatureType: \"road.arterial\",\n\t\t\telementType: \"labels\",\n\t\t\tstylers: [\n\t\t\t\t{\n\t\t\t\t\tvisibility: \"off\",\n\t\t\t\t},\n\t\t\t],\n\t\t},\n\t\t{\n\t\t\tfeatureType: \"road.arterial\",\n\t\t\telementType: \"labels.text.fill\",\n\t\t\tstylers: [\n\t\t\t\t{\n\t\t\t\t\tcolor: \"#ffffff\",\n\t\t\t\t},\n\t\t\t],\n\t\t},\n\t\t{\n\t\t\tfeatureType: \"road.arterial\",\n\t\t\telementType: \"labels.text.stroke\",\n\t\t\tstylers: [\n\t\t\t\t{\n\t\t\t\t\tcolor: \"#2c2c2c\",\n\t\t\t\t},\n\t\t\t],\n\t\t},\n\t\t{\n\t\t\tfeatureType: \"road.local\",\n\t\t\telementType: \"geometry\",\n\t\t\tstylers: [\n\t\t\t\t{\n\t\t\t\t\tcolor: \"#136F63\",\n\t\t\t\t},\n\t\t\t\t{\n\t\t\t\t\tlightness: -20,\n\t\t\t\t},\n\t\t\t],\n\t\t},\n\t\t{\n\t\t\tfeatureType: \"road.local\",\n\t\t\telementType: \"labels\",\n\t\t\tstylers: [\n\t\t\t\t{\n\t\t\t\t\tvisibility: \"simplified\",\n\t\t\t\t},\n\t\t\t],\n\t\t},\n\t\t{\n\t\t\tfeatureType: \"road.local\",\n\t\t\telementType: \"labels.text.fill\",\n\t\t\tstylers: [\n\t\t\t\t{\n\t\t\t\t\tcolor: \"#ffffff\",\n\t\t\t\t},\n\t\t\t],\n\t\t},\n\t\t{\n\t\t\tfeatureType: \"transit\",\n\t\t\telementType: \"geometry\",\n\t\t\tstylers: [\n\t\t\t\t{\n\t\t\t\t\tcolor: \"#136F63\",\n\t\t\t\t},\n\t\t\t\t{\n\t\t\t\t\tlightness: -20,\n\t\t\t\t},\n\t\t\t],\n\t\t},\n\t\t// Grandes masses d'eau (océans, lacs, grands fleuves)\n\t\t{\n\t\t\tfeatureType: \"water\",\n\t\t\telementType: \"geometry\",\n\t\t\tstylers: [\n\t\t\t\t{\n\t\t\t\t\tcolor: \"#136F63\",\n\t\t\t\t},\n\t\t\t\t{\n\t\t\t\t\tlightness: 18,\n\t\t\t\t},\n\t\t\t\t{\n\t\t\t\t\tsaturation: -50,\n\t\t\t\t},\n\t\t\t\t{\n\t\t\t\t\tvisibility: \"simplified\", // Simplifie l'affichage\n\t\t\t\t},\n\t\t\t],\n\t\t},\n\n\t\t{\n\t\t\tfeatureType: \"water\",\n\t\t\telementType: \"geometry.fill\",\n\t\t\tstylers: [\n\t\t\t\t{\n\t\t\t\t\tvisibility: \"simplified\",\n\t\t\t\t},\n\t\t\t],\n\t\t},\n\t\t// Masquer les labels des petites rivières\n\t\t{\n\t\t\tfeatureType: \"water\",\n\t\t\telementType: \"labels\",\n\t\t\tstylers: [\n\t\t\t\t{\n\t\t\t\t\tvisibility: \"off\",\n\t\t\t\t},\n\t\t\t],\n\t\t},\n\t],\n};\n\n/**\n * Initialize Google Maps for all map containers on the page\n */\nfunction initializeCarhopMaps() {\n\t// Find all map containers\n\tconst mapContainers = document.querySelectorAll(\".carhop-localisation-map\");\n\n\tmapContainers.forEach((container) => {\n\t\tconst mapElement = container.querySelector(\".map-container\");\n\n\t\tif (!mapElement || mapElement.dataset.initialized === \"true\") {\n\t\t\treturn;\n\t\t}\n\n\t\t// Create map\n\t\tconst map = new google.maps.Map(mapElement, {\n\t\t\tzoom: GOOGLE_MAPS_CONFIG.zoom,\n\t\t\tcenter: new google.maps.LatLng(\n\t\t\t\tGOOGLE_MAPS_CONFIG.center.lat,\n\t\t\t\tGOOGLE_MAPS_CONFIG.center.lng,\n\t\t\t),\n\t\t\tstyles: GOOGLE_MAPS_CONFIG.styles,\n\t\t\t// Contrôles de zoom\n\t\t\tzoomControl: true,\n\t\t\tzoomControlOptions: {\n\t\t\t\tposition: google.maps.ControlPosition.RIGHT_TOP,\n\t\t\t\tstyle: google.maps.ZoomControlStyle.DEFAULT,\n\t\t\t},\n\t\t\t// Autres contrôles utiles\n\t\t\tmapTypeControl: false, // Masquer le sélecteur de type de carte\n\t\t\tstreetViewControl: false, // Contrôle Street View\n\t\t\tfullscreenControl: false, // Bouton plein écran\n\t\t});\n\t\t// Chemin vers votre pin personnalisé (à ajuster selon votre structure)\n\t\tconst image =\n\t\t\t\"/wp-content/plugins/carhop-blocks/blocks/localisation-map/build/localisation-map/carhop-pin.png\";\n\t\t// Add marker with custom color\n\t\tnew google.maps.Marker({\n\t\t\tposition: new google.maps.LatLng(\n\t\t\t\tGOOGLE_MAPS_CONFIG.marker.lat,\n\t\t\t\tGOOGLE_MAPS_CONFIG.marker.lng,\n\t\t\t),\n\t\t\tmap: map,\n\t\t\ttitle: GOOGLE_MAPS_CONFIG.marker.title,\n\t\t\ticon: image,\n\t\t});\n\n\t\t// Mark as initialized\n\t\tmapElement.dataset.initialized = \"true\";\n\t});\n}\n\n/**\n * Load Google Maps API and initialize maps\n */\nfunction loadGoogleMapsAPI() {\n\t// Check if Google Maps is already loaded\n\tif (typeof google !== \"undefined\" && google.maps) {\n\t\tinitializeCarhopMaps();\n\t\treturn;\n\t}\n\n\t// Check if script is already loading\n\tif (window.carhopMapsLoading) {\n\t\twindow.carhopMapsCallbacks = window.carhopMapsCallbacks || [];\n\t\twindow.carhopMapsCallbacks.push(initializeCarhopMaps);\n\t\treturn;\n\t}\n\n\t// Mark as loading\n\twindow.carhopMapsLoading = true;\n\twindow.carhopMapsCallbacks = [initializeCarhopMaps];\n\n\t// Create callback function\n\twindow.carhopMapsReady = function () {\n\t\twindow.carhopMapsLoading = false;\n\t\tif (window.carhopMapsCallbacks) {\n\t\t\twindow.carhopMapsCallbacks.forEach((callback) => callback());\n\t\t\twindow.carhopMapsCallbacks = [];\n\t\t}\n\t};\n\n\t// Load Google Maps API\n\tconst script = document.createElement(\"script\");\n\tscript.src = `https://maps.googleapis.com/maps/api/js?key=${GOOGLE_MAPS_CONFIG.apiKey}&callback=carhopMapsReady`;\n\tscript.async = true;\n\tscript.defer = true;\n\tdocument.head.appendChild(script);\n}\n\n// Initialize when DOM is ready\nif (document.readyState === \"loading\") {\n\tdocument.addEventListener(\"DOMContentLoaded\", loadGoogleMapsAPI);\n} else {\n\tloadGoogleMapsAPI();\n}\n\n// Also initialize on window load as fallback\nwindow.addEventListener(\"load\", loadGoogleMapsAPI);\n","module.exports = window[\"wp\"][\"blockEditor\"];","module.exports = window[\"wp\"][\"blocks\"];","module.exports = window[\"wp\"][\"serverSideRender\"];","module.exports = window[\"ReactJSXRuntime\"];","// The module cache\nvar __webpack_module_cache__ = {};\n\n// The require function\nfunction __webpack_require__(moduleId) {\n\t// Check if module is in cache\n\tvar cachedModule = __webpack_module_cache__[moduleId];\n\tif (cachedModule !== undefined) {\n\t\treturn cachedModule.exports;\n\t}\n\t// Create a new module (and put it into the cache)\n\tvar module = __webpack_module_cache__[moduleId] = {\n\t\t// no module.id needed\n\t\t// no module.loaded needed\n\t\texports: {}\n\t};\n\n\t// Execute the module function\n\t__webpack_modules__[moduleId](module, module.exports, __webpack_require__);\n\n\t// Return the exports of the module\n\treturn module.exports;\n}\n\n// expose the modules object (__webpack_modules__)\n__webpack_require__.m = __webpack_modules__;\n\n","var deferred = [];\n__webpack_require__.O = (result, chunkIds, fn, priority) => {\n\tif(chunkIds) {\n\t\tpriority = priority || 0;\n\t\tfor(var i = deferred.length; i > 0 && deferred[i - 1][2] > priority; i--) deferred[i] = deferred[i - 1];\n\t\tdeferred[i] = [chunkIds, fn, priority];\n\t\treturn;\n\t}\n\tvar notFulfilled = Infinity;\n\tfor (var i = 0; i < deferred.length; i++) {\n\t\tvar [chunkIds, fn, priority] = deferred[i];\n\t\tvar fulfilled = true;\n\t\tfor (var j = 0; j < chunkIds.length; j++) {\n\t\t\tif ((priority & 1 === 0 || notFulfilled >= priority) && Object.keys(__webpack_require__.O).every((key) => (__webpack_require__.O[key](chunkIds[j])))) {\n\t\t\t\tchunkIds.splice(j--, 1);\n\t\t\t} else {\n\t\t\t\tfulfilled = false;\n\t\t\t\tif(priority < notFulfilled) notFulfilled = priority;\n\t\t\t}\n\t\t}\n\t\tif(fulfilled) {\n\t\t\tdeferred.splice(i--, 1)\n\t\t\tvar r = fn();\n\t\t\tif (r !== undefined) result = r;\n\t\t}\n\t}\n\treturn result;\n};","// getDefaultExport function for compatibility with non-harmony modules\n__webpack_require__.n = (module) => {\n\tvar getter = module && module.__esModule ?\n\t\t() => (module['default']) :\n\t\t() => (module);\n\t__webpack_require__.d(getter, { a: getter });\n\treturn getter;\n};","// define getter functions for harmony exports\n__webpack_require__.d = (exports, definition) => {\n\tfor(var key in definition) {\n\t\tif(__webpack_require__.o(definition, key) && !__webpack_require__.o(exports, key)) {\n\t\t\tObject.defineProperty(exports, key, { enumerable: true, get: definition[key] });\n\t\t}\n\t}\n};","__webpack_require__.o = (obj, prop) => (Object.prototype.hasOwnProperty.call(obj, prop))","// define __esModule on exports\n__webpack_require__.r = (exports) => {\n\tif(typeof Symbol !== 'undefined' && Symbol.toStringTag) {\n\t\tObject.defineProperty(exports, Symbol.toStringTag, { value: 'Module' });\n\t}\n\tObject.defineProperty(exports, '__esModule', { value: true });\n};","// no baseURI\n\n// object to store loaded and loading chunks\n// undefined = chunk not loaded, null = chunk preloaded/prefetched\n// [resolve, reject, Promise] = chunk loading, 0 = chunk loaded\nvar installedChunks = {\n\t\"localisation-map/index\": 0,\n\t\"localisation-map/style-index\": 0\n};\n\n// no chunk on demand loading\n\n// no prefetching\n\n// no preloaded\n\n// no HMR\n\n// no HMR manifest\n\n__webpack_require__.O.j = (chunkId) => (installedChunks[chunkId] === 0);\n\n// install a JSONP callback for chunk loading\nvar webpackJsonpCallback = (parentChunkLoadingFunction, data) => {\n\tvar [chunkIds, moreModules, runtime] = data;\n\t// add \"moreModules\" to the modules object,\n\t// then flag all \"chunkIds\" as loaded and fire callback\n\tvar moduleId, chunkId, i = 0;\n\tif(chunkIds.some((id) => (installedChunks[id] !== 0))) {\n\t\tfor(moduleId in moreModules) {\n\t\t\tif(__webpack_require__.o(moreModules, moduleId)) {\n\t\t\t\t__webpack_require__.m[moduleId] = moreModules[moduleId];\n\t\t\t}\n\t\t}\n\t\tif(runtime) var result = runtime(__webpack_require__);\n\t}\n\tif(parentChunkLoadingFunction) parentChunkLoadingFunction(data);\n\tfor(;i < chunkIds.length; i++) {\n\t\tchunkId = chunkIds[i];\n\t\tif(__webpack_require__.o(installedChunks, chunkId) && installedChunks[chunkId]) {\n\t\t\tinstalledChunks[chunkId][0]();\n\t\t}\n\t\tinstalledChunks[chunkId] = 0;\n\t}\n\treturn __webpack_require__.O(result);\n}\n\nvar chunkLoadingGlobal = globalThis[\"webpackChunklocalisation_map\"] = globalThis[\"webpackChunklocalisation_map\"] || [];\nchunkLoadingGlobal.forEach(webpackJsonpCallback.bind(null, 0));\nchunkLoadingGlobal.push = webpackJsonpCallback.bind(null, chunkLoadingGlobal.push.bind(chunkLoadingGlobal));","","// startup\n// Load entry module and return exports\n// This entry module depends on other loaded chunks and execution need to be delayed\nvar __webpack_exports__ = __webpack_require__.O(undefined, [\"localisation-map/style-index\"], () => (__webpack_require__(\"./src/localisation-map/index.js\")))\n__webpack_exports__ = __webpack_require__.O(__webpack_exports__);\n",""],"names":["ServerSideRender","useBlockProps","jsx","_jsx","Edit","props","children","block","attributes","registerBlockType","metadata","name","edit","GOOGLE_MAPS_CONFIG","apiKey","center","lat","lng","zoom","marker","title","color","styles","featureType","elementType","stylers","gamma","lightness","saturation","visibility","weight","initializeCarhopMaps","mapContainers","document","querySelectorAll","forEach","container","mapElement","querySelector","dataset","initialized","map","google","maps","Map","LatLng","zoomControl","zoomControlOptions","position","ControlPosition","RIGHT_TOP","style","ZoomControlStyle","DEFAULT","mapTypeControl","streetViewControl","fullscreenControl","image","Marker","icon","loadGoogleMapsAPI","window","carhopMapsLoading","carhopMapsCallbacks","push","carhopMapsReady","callback","script","createElement","src","async","defer","head","appendChild","readyState","addEventListener"],"sourceRoot":""}
\ No newline at end of file
+{"version":3,"file":"localisation-map/index.js","mappings":"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","sources":["webpack://localisation-map/./src/localisation-map/edit.js","webpack://localisation-map/./src/localisation-map/index.js","webpack://localisation-map/./src/localisation-map/style.scss","webpack://localisation-map/./src/localisation-map/view.js","webpack://localisation-map/external window [\"wp\",\"blockEditor\"]","webpack://localisation-map/external window [\"wp\",\"blocks\"]","webpack://localisation-map/external window [\"wp\",\"serverSideRender\"]","webpack://localisation-map/external window \"ReactJSXRuntime\"","webpack://localisation-map/webpack/bootstrap","webpack://localisation-map/webpack/runtime/chunk loaded","webpack://localisation-map/webpack/runtime/compat get default export","webpack://localisation-map/webpack/runtime/define property getters","webpack://localisation-map/webpack/runtime/hasOwnProperty shorthand","webpack://localisation-map/webpack/runtime/make namespace object","webpack://localisation-map/webpack/runtime/jsonp chunk loading","webpack://localisation-map/webpack/before-startup","webpack://localisation-map/webpack/startup","webpack://localisation-map/webpack/after-startup"],"sourcesContent":["import ServerSideRender from \"@wordpress/server-side-render\";\r\nimport { useBlockProps } from \"@wordpress/block-editor\";\r\n\r\nexport default function Edit(props) {\r\n\treturn (\r\n\t\t\r\n\t\t\t\r\n\t\t
\r\n\t);\r\n}\r\n","import { registerBlockType } from \"@wordpress/blocks\";\nimport \"./style.scss\";\n\nimport Edit from \"./edit\";\nimport metadata from \"./block.json\";\n\n// Import the view script to load map handling on the backend\nimport \"./view.js\";\n\nregisterBlockType(metadata.name, {\n\tedit: Edit,\n});\n","// extracted by mini-css-extract-plugin\nexport {};","/**\n * Google Maps initialization for Carhop Localisation Map block\n */\n\n// Configuration\nconst GOOGLE_MAPS_CONFIG = {\n\tapiKey: \"AIzaSyBs-owKPe4qiYLb2baCTAptLeNNJX7bTQk\",\n\tcenter: {\n\t\tlat: 50.61036915572659,\n\t\tlng: 4.148529499893204,\n\t},\n\tzoom: 15,\n\tmarker: {\n\t\tlat: 50.61036915386491,\n\t\tlng: 4.151615298397132, // Position originale du pin\n\t\ttitle: \"Carhop\",\n\t\taddress: \"Av. de la Houssière 80, 7090 Braine-le-Comte\",\n\t\tplaceId: \"ChIJ41pZLUq1w0cRjXw8zlHnvXI\", // Place ID Google Maps (à remplacer par le vrai)\n\n\t\tcolor: \"green\",\n\t},\n\tstyles: [\n\t\t{\n\t\t\tfeatureType: \"administrative\",\n\t\t\telementType: \"geometry\",\n\t\t\tstylers: [\n\t\t\t\t{\n\t\t\t\t\tcolor: \"#136f63\",\n\t\t\t\t},\n\t\t\t],\n\t\t},\n\t\t{\n\t\t\tfeatureType: \"administrative\",\n\t\t\telementType: \"labels.text.fill\",\n\t\t\tstylers: [\n\t\t\t\t{\n\t\t\t\t\tcolor: \"#ffffff\",\n\t\t\t\t},\n\t\t\t\t{\n\t\t\t\t\tgamma: \"1.00\",\n\t\t\t\t},\n\t\t\t\t{\n\t\t\t\t\tlightness: \"0\",\n\t\t\t\t},\n\t\t\t\t{\n\t\t\t\t\tsaturation: \"0\",\n\t\t\t\t},\n\t\t\t\t{\n\t\t\t\t\tvisibility: \"on\",\n\t\t\t\t},\n\t\t\t\t{\n\t\t\t\t\tweight: \"1.5\",\n\t\t\t\t},\n\t\t\t],\n\t\t},\n\t\t{\n\t\t\tfeatureType: \"administrative\",\n\t\t\telementType: \"labels.text.stroke\",\n\t\t\tstylers: [\n\t\t\t\t{\n\t\t\t\t\tcolor: \"#19464b\",\n\t\t\t\t},\n\t\t\t\t{\n\t\t\t\t\tweight: \"2\",\n\t\t\t\t},\n\t\t\t],\n\t\t},\n\t\t{\n\t\t\tfeatureType: \"administrative.land_parcel\",\n\t\t\telementType: \"geometry\",\n\t\t\tstylers: [\n\t\t\t\t{\n\t\t\t\t\tcolor: \"#19464b\",\n\t\t\t\t},\n\t\t\t],\n\t\t},\n\t\t{\n\t\t\tfeatureType: \"landscape\",\n\t\t\telementType: \"all\",\n\t\t\tstylers: [\n\t\t\t\t{\n\t\t\t\t\tcolor: \"#19464b\",\n\t\t\t\t},\n\t\t\t],\n\t\t},\n\t\t{\n\t\t\tfeatureType: \"landscape\",\n\t\t\telementType: \"geometry\",\n\t\t\tstylers: [\n\t\t\t\t{\n\t\t\t\t\tcolor: \"#136f63\",\n\t\t\t\t},\n\t\t\t],\n\t\t},\n\t\t{\n\t\t\tfeatureType: \"landscape.man_made\",\n\t\t\telementType: \"geometry\",\n\t\t\tstylers: [\n\t\t\t\t{\n\t\t\t\t\tcolor: \"#136f63\",\n\t\t\t\t},\n\t\t\t],\n\t\t},\n\t\t{\n\t\t\tfeatureType: \"landscape.natural\",\n\t\t\telementType: \"labels.text.fill\",\n\t\t\tstylers: [\n\t\t\t\t{\n\t\t\t\t\tcolor: \"#ffffff\",\n\t\t\t\t},\n\t\t\t\t{\n\t\t\t\t\tvisibility: \"on\",\n\t\t\t\t},\n\t\t\t],\n\t\t},\n\t\t{\n\t\t\tfeatureType: \"landscape.natural.landcover\",\n\t\t\telementType: \"geometry\",\n\t\t\tstylers: [\n\t\t\t\t{\n\t\t\t\t\tcolor: \"#136f63\",\n\t\t\t\t},\n\t\t\t],\n\t\t},\n\t\t{\n\t\t\tfeatureType: \"landscape.natural.terrain\",\n\t\t\telementType: \"geometry\",\n\t\t\tstylers: [\n\t\t\t\t{\n\t\t\t\t\tcolor: \"#136f63\",\n\t\t\t\t},\n\t\t\t],\n\t\t},\n\t\t{\n\t\t\tfeatureType: \"poi\",\n\t\t\telementType: \"all\",\n\t\t\tstylers: [\n\t\t\t\t{\n\t\t\t\t\tvisibility: \"off\",\n\t\t\t\t},\n\t\t\t],\n\t\t},\n\t\t{\n\t\t\tfeatureType: \"poi.attraction\",\n\t\t\telementType: \"all\",\n\t\t\tstylers: [\n\t\t\t\t{\n\t\t\t\t\tvisibility: \"off\",\n\t\t\t\t},\n\t\t\t],\n\t\t},\n\t\t{\n\t\t\tfeatureType: \"poi.business\",\n\t\t\telementType: \"all\",\n\t\t\tstylers: [\n\t\t\t\t{\n\t\t\t\t\tvisibility: \"off\",\n\t\t\t\t},\n\t\t\t],\n\t\t},\n\t\t{\n\t\t\tfeatureType: \"poi.government\",\n\t\t\telementType: \"all\",\n\t\t\tstylers: [\n\t\t\t\t{\n\t\t\t\t\tvisibility: \"off\",\n\t\t\t\t},\n\t\t\t],\n\t\t},\n\t\t{\n\t\t\tfeatureType: \"poi.park\",\n\t\t\telementType: \"all\",\n\t\t\tstylers: [\n\t\t\t\t{\n\t\t\t\t\tvisibility: \"off\",\n\t\t\t\t},\n\t\t\t],\n\t\t},\n\t\t{\n\t\t\tfeatureType: \"poi.school\",\n\t\t\telementType: \"all\",\n\t\t\tstylers: [\n\t\t\t\t{\n\t\t\t\t\tvisibility: \"off\",\n\t\t\t\t},\n\t\t\t],\n\t\t},\n\t\t{\n\t\t\tfeatureType: \"poi.medical\",\n\t\t\telementType: \"all\",\n\t\t\tstylers: [\n\t\t\t\t{\n\t\t\t\t\tvisibility: \"off\",\n\t\t\t\t},\n\t\t\t],\n\t\t},\n\t\t{\n\t\t\tfeatureType: \"poi.place_of_worship\",\n\t\t\telementType: \"all\",\n\t\t\tstylers: [\n\t\t\t\t{\n\t\t\t\t\tvisibility: \"off\",\n\t\t\t\t},\n\t\t\t],\n\t\t},\n\t\t{\n\t\t\tfeatureType: \"poi.sports_complex\",\n\t\t\telementType: \"all\",\n\t\t\tstylers: [\n\t\t\t\t{\n\t\t\t\t\tvisibility: \"off\",\n\t\t\t\t},\n\t\t\t],\n\t\t},\n\t\t{\n\t\t\tfeatureType: \"road.highway\",\n\t\t\telementType: \"geometry.fill\",\n\t\t\tstylers: [\n\t\t\t\t{\n\t\t\t\t\tcolor: \"#136f63\",\n\t\t\t\t},\n\t\t\t\t{\n\t\t\t\t\tlightness: \"-40\",\n\t\t\t\t},\n\t\t\t],\n\t\t},\n\t\t{\n\t\t\tfeatureType: \"road.highway\",\n\t\t\telementType: \"geometry.stroke\",\n\t\t\tstylers: [\n\t\t\t\t{\n\t\t\t\t\tvisibility: \"off\",\n\t\t\t\t},\n\t\t\t],\n\t\t},\n\t\t{\n\t\t\tfeatureType: \"road.highway\",\n\t\t\telementType: \"labels\",\n\t\t\tstylers: [\n\t\t\t\t{\n\t\t\t\t\tvisibility: \"off\",\n\t\t\t\t},\n\t\t\t],\n\t\t},\n\t\t{\n\t\t\tfeatureType: \"road.highway\",\n\t\t\telementType: \"labels.text.fill\",\n\t\t\tstylers: [\n\t\t\t\t{\n\t\t\t\t\tcolor: \"#ffffff\",\n\t\t\t\t},\n\t\t\t],\n\t\t},\n\t\t{\n\t\t\tfeatureType: \"road.highway\",\n\t\t\telementType: \"labels.text.stroke\",\n\t\t\tstylers: [\n\t\t\t\t{\n\t\t\t\t\tcolor: \"#0a1f14\",\n\t\t\t\t},\n\t\t\t],\n\t\t},\n\t\t{\n\t\t\tfeatureType: \"road.arterial\",\n\t\t\telementType: \"geometry\",\n\t\t\tstylers: [\n\t\t\t\t{\n\t\t\t\t\tcolor: \"#136f63\",\n\t\t\t\t},\n\t\t\t\t{\n\t\t\t\t\tlightness: 30,\n\t\t\t\t},\n\t\t\t],\n\t\t},\n\t\t{\n\t\t\tfeatureType: \"road.arterial\",\n\t\t\telementType: \"geometry.fill\",\n\t\t\tstylers: [\n\t\t\t\t{\n\t\t\t\t\tcolor: \"#136f63\",\n\t\t\t\t},\n\t\t\t],\n\t\t},\n\t\t{\n\t\t\tfeatureType: \"road.arterial\",\n\t\t\telementType: \"labels\",\n\t\t\tstylers: [\n\t\t\t\t{\n\t\t\t\t\tvisibility: \"off\",\n\t\t\t\t},\n\t\t\t],\n\t\t},\n\t\t{\n\t\t\tfeatureType: \"road.arterial\",\n\t\t\telementType: \"labels.text.fill\",\n\t\t\tstylers: [\n\t\t\t\t{\n\t\t\t\t\tcolor: \"#ffffff\",\n\t\t\t\t},\n\t\t\t],\n\t\t},\n\t\t{\n\t\t\tfeatureType: \"road.arterial\",\n\t\t\telementType: \"labels.text.stroke\",\n\t\t\tstylers: [\n\t\t\t\t{\n\t\t\t\t\tcolor: \"#2c2c2c\",\n\t\t\t\t},\n\t\t\t],\n\t\t},\n\t\t{\n\t\t\tfeatureType: \"road.local\",\n\t\t\telementType: \"geometry\",\n\t\t\tstylers: [\n\t\t\t\t{\n\t\t\t\t\tcolor: \"#136F63\",\n\t\t\t\t},\n\t\t\t\t{\n\t\t\t\t\tlightness: -20,\n\t\t\t\t},\n\t\t\t],\n\t\t},\n\t\t{\n\t\t\tfeatureType: \"road.local\",\n\t\t\telementType: \"labels\",\n\t\t\tstylers: [\n\t\t\t\t{\n\t\t\t\t\tvisibility: \"simplified\",\n\t\t\t\t},\n\t\t\t],\n\t\t},\n\t\t{\n\t\t\tfeatureType: \"road.local\",\n\t\t\telementType: \"labels.text.fill\",\n\t\t\tstylers: [\n\t\t\t\t{\n\t\t\t\t\tcolor: \"#ffffff\",\n\t\t\t\t},\n\t\t\t],\n\t\t},\n\t\t{\n\t\t\tfeatureType: \"transit\",\n\t\t\telementType: \"geometry\",\n\t\t\tstylers: [\n\t\t\t\t{\n\t\t\t\t\tcolor: \"#136F63\",\n\t\t\t\t},\n\t\t\t\t{\n\t\t\t\t\tlightness: -20,\n\t\t\t\t},\n\t\t\t],\n\t\t},\n\t\t// Grandes masses d'eau (océans, lacs, grands fleuves)\n\t\t{\n\t\t\tfeatureType: \"water\",\n\t\t\telementType: \"geometry\",\n\t\t\tstylers: [\n\t\t\t\t{\n\t\t\t\t\tcolor: \"#136F63\",\n\t\t\t\t},\n\t\t\t\t{\n\t\t\t\t\tlightness: 18,\n\t\t\t\t},\n\t\t\t\t{\n\t\t\t\t\tsaturation: -50,\n\t\t\t\t},\n\t\t\t\t{\n\t\t\t\t\tvisibility: \"simplified\", // Simplifie l'affichage\n\t\t\t\t},\n\t\t\t],\n\t\t},\n\n\t\t{\n\t\t\tfeatureType: \"water\",\n\t\t\telementType: \"geometry.fill\",\n\t\t\tstylers: [\n\t\t\t\t{\n\t\t\t\t\tvisibility: \"simplified\",\n\t\t\t\t},\n\t\t\t],\n\t\t},\n\t\t// Masquer les labels des petites rivières\n\t\t{\n\t\t\tfeatureType: \"water\",\n\t\t\telementType: \"labels\",\n\t\t\tstylers: [\n\t\t\t\t{\n\t\t\t\t\tvisibility: \"off\",\n\t\t\t\t},\n\t\t\t],\n\t\t},\n\t],\n};\n\n/**\n * Initialize Google Maps for all map containers on the page\n */\nfunction initializeCarhopMaps() {\n\t// Find all map containers\n\tconst mapContainers = document.querySelectorAll(\".carhop-localisation-map\");\n\n\tmapContainers.forEach((container) => {\n\t\tconst mapElement = container.querySelector(\".map-container\");\n\n\t\tif (!mapElement || mapElement.dataset.initialized === \"true\") {\n\t\t\treturn;\n\t\t}\n\n\t\t// Create map\n\t\tconst map = new google.maps.Map(mapElement, {\n\t\t\tzoom: GOOGLE_MAPS_CONFIG.zoom,\n\t\t\tcenter: new google.maps.LatLng(\n\t\t\t\tGOOGLE_MAPS_CONFIG.center.lat,\n\t\t\t\tGOOGLE_MAPS_CONFIG.center.lng,\n\t\t\t),\n\t\t\tstyles: GOOGLE_MAPS_CONFIG.styles,\n\t\t\t// Contrôles de zoom\n\t\t\tzoomControl: true,\n\t\t\tzoomControlOptions: {\n\t\t\t\tposition: google.maps.ControlPosition.RIGHT_TOP,\n\t\t\t\tstyle: google.maps.ZoomControlStyle.DEFAULT,\n\t\t\t},\n\t\t\t// Autres contrôles utiles\n\t\t\tmapTypeControl: false, // Masquer le sélecteur de type de carte\n\t\t\tstreetViewControl: false, // Contrôle Street View\n\t\t\tfullscreenControl: false, // Bouton plein écran\n\t\t});\n\t\t// Chemin vers votre pin personnalisé avec fallback\n\t\tconst customPinPath =\n\t\t\t\"/wp-content/plugins/carhop-blocks/blocks/localisation-map/src/localisation-map/carhop-pin.png\";\n\n\t\t// Add marker with custom color\n\t\tconst marker = new google.maps.Marker({\n\t\t\tposition: new google.maps.LatLng(\n\t\t\t\tGOOGLE_MAPS_CONFIG.marker.lat,\n\t\t\t\tGOOGLE_MAPS_CONFIG.marker.lng,\n\t\t\t),\n\t\t\tmap: map,\n\t\t\ttitle: GOOGLE_MAPS_CONFIG.marker.title,\n\t\t\ticon: {\n\t\t\t\turl: customPinPath,\n\t\t\t\tscaledSize: new google.maps.Size(40, 40), // Taille du pin\n\t\t\t\torigin: new google.maps.Point(0, 0),\n\t\t\t\tanchor: new google.maps.Point(20, 40), // Point d'ancrage (centre bas)\n\t\t\t},\n\t\t});\n\n\t\t// Add click event to open Google Maps place\n\t\tmarker.addListener(\"click\", function () {\n\t\t\tconst placeId = GOOGLE_MAPS_CONFIG.marker.placeId;\n\n\t\t\t// URL pour ouvrir la fiche Google Maps complète\n\t\t\tlet googleMapsUrl;\n\t\t\tif (placeId && placeId !== \"ChIJXXXXXXXXXXXXXXXXXXXX\") {\n\t\t\t\t// Utiliser le Place ID pour ouvrir la fiche complète\n\t\t\t\tgoogleMapsUrl = `https://www.google.com/maps/place/?q=place_id:${placeId}`;\n\t\t\t} else {\n\t\t\t\t// Fallback avec l'adresse\n\t\t\t\tconst address = encodeURIComponent(GOOGLE_MAPS_CONFIG.marker.address);\n\t\t\t\tgoogleMapsUrl = `https://www.google.com/maps/search/?api=1&query=${address}`;\n\t\t\t}\n\n\t\t\t// Ouvrir dans un nouvel onglet\n\t\t\twindow.open(googleMapsUrl, \"_blank\");\n\t\t});\n\n\t\t// Mark as initialized\n\t\tmapElement.dataset.initialized = \"true\";\n\t});\n}\n\n/**\n * Load Google Maps API and initialize maps\n */\nfunction loadGoogleMapsAPI() {\n\t// Check if Google Maps is already loaded\n\tif (typeof google !== \"undefined\" && google.maps) {\n\t\tinitializeCarhopMaps();\n\t\treturn;\n\t}\n\n\t// Check if script is already loading\n\tif (window.carhopMapsLoading) {\n\t\twindow.carhopMapsCallbacks = window.carhopMapsCallbacks || [];\n\t\twindow.carhopMapsCallbacks.push(initializeCarhopMaps);\n\t\treturn;\n\t}\n\n\t// Mark as loading\n\twindow.carhopMapsLoading = true;\n\twindow.carhopMapsCallbacks = [initializeCarhopMaps];\n\n\t// Create callback function\n\twindow.carhopMapsReady = function () {\n\t\twindow.carhopMapsLoading = false;\n\t\tif (window.carhopMapsCallbacks) {\n\t\t\twindow.carhopMapsCallbacks.forEach((callback) => callback());\n\t\t\twindow.carhopMapsCallbacks = [];\n\t\t}\n\t};\n\n\t// Load Google Maps API\n\tconst script = document.createElement(\"script\");\n\tscript.src = `https://maps.googleapis.com/maps/api/js?key=${GOOGLE_MAPS_CONFIG.apiKey}&callback=carhopMapsReady`;\n\tscript.async = true;\n\tscript.defer = true;\n\tdocument.head.appendChild(script);\n}\n\n// Initialize when DOM is ready\nif (document.readyState === \"loading\") {\n\tdocument.addEventListener(\"DOMContentLoaded\", loadGoogleMapsAPI);\n} else {\n\tloadGoogleMapsAPI();\n}\n\n// Also initialize on window load as fallback\nwindow.addEventListener(\"load\", loadGoogleMapsAPI);\n","module.exports = window[\"wp\"][\"blockEditor\"];","module.exports = window[\"wp\"][\"blocks\"];","module.exports = window[\"wp\"][\"serverSideRender\"];","module.exports = window[\"ReactJSXRuntime\"];","// The module cache\nvar __webpack_module_cache__ = {};\n\n// The require function\nfunction __webpack_require__(moduleId) {\n\t// Check if module is in cache\n\tvar cachedModule = __webpack_module_cache__[moduleId];\n\tif (cachedModule !== undefined) {\n\t\treturn cachedModule.exports;\n\t}\n\t// Create a new module (and put it into the cache)\n\tvar module = __webpack_module_cache__[moduleId] = {\n\t\t// no module.id needed\n\t\t// no module.loaded needed\n\t\texports: {}\n\t};\n\n\t// Execute the module function\n\t__webpack_modules__[moduleId](module, module.exports, __webpack_require__);\n\n\t// Return the exports of the module\n\treturn module.exports;\n}\n\n// expose the modules object (__webpack_modules__)\n__webpack_require__.m = __webpack_modules__;\n\n","var deferred = [];\n__webpack_require__.O = (result, chunkIds, fn, priority) => {\n\tif(chunkIds) {\n\t\tpriority = priority || 0;\n\t\tfor(var i = deferred.length; i > 0 && deferred[i - 1][2] > priority; i--) deferred[i] = deferred[i - 1];\n\t\tdeferred[i] = [chunkIds, fn, priority];\n\t\treturn;\n\t}\n\tvar notFulfilled = Infinity;\n\tfor (var i = 0; i < deferred.length; i++) {\n\t\tvar [chunkIds, fn, priority] = deferred[i];\n\t\tvar fulfilled = true;\n\t\tfor (var j = 0; j < chunkIds.length; j++) {\n\t\t\tif ((priority & 1 === 0 || notFulfilled >= priority) && Object.keys(__webpack_require__.O).every((key) => (__webpack_require__.O[key](chunkIds[j])))) {\n\t\t\t\tchunkIds.splice(j--, 1);\n\t\t\t} else {\n\t\t\t\tfulfilled = false;\n\t\t\t\tif(priority < notFulfilled) notFulfilled = priority;\n\t\t\t}\n\t\t}\n\t\tif(fulfilled) {\n\t\t\tdeferred.splice(i--, 1)\n\t\t\tvar r = fn();\n\t\t\tif (r !== undefined) result = r;\n\t\t}\n\t}\n\treturn result;\n};","// getDefaultExport function for compatibility with non-harmony modules\n__webpack_require__.n = (module) => {\n\tvar getter = module && module.__esModule ?\n\t\t() => (module['default']) :\n\t\t() => (module);\n\t__webpack_require__.d(getter, { a: getter });\n\treturn getter;\n};","// define getter functions for harmony exports\n__webpack_require__.d = (exports, definition) => {\n\tfor(var key in definition) {\n\t\tif(__webpack_require__.o(definition, key) && !__webpack_require__.o(exports, key)) {\n\t\t\tObject.defineProperty(exports, key, { enumerable: true, get: definition[key] });\n\t\t}\n\t}\n};","__webpack_require__.o = (obj, prop) => (Object.prototype.hasOwnProperty.call(obj, prop))","// define __esModule on exports\n__webpack_require__.r = (exports) => {\n\tif(typeof Symbol !== 'undefined' && Symbol.toStringTag) {\n\t\tObject.defineProperty(exports, Symbol.toStringTag, { value: 'Module' });\n\t}\n\tObject.defineProperty(exports, '__esModule', { value: true });\n};","// no baseURI\n\n// object to store loaded and loading chunks\n// undefined = chunk not loaded, null = chunk preloaded/prefetched\n// [resolve, reject, Promise] = chunk loading, 0 = chunk loaded\nvar installedChunks = {\n\t\"localisation-map/index\": 0,\n\t\"localisation-map/style-index\": 0\n};\n\n// no chunk on demand loading\n\n// no prefetching\n\n// no preloaded\n\n// no HMR\n\n// no HMR manifest\n\n__webpack_require__.O.j = (chunkId) => (installedChunks[chunkId] === 0);\n\n// install a JSONP callback for chunk loading\nvar webpackJsonpCallback = (parentChunkLoadingFunction, data) => {\n\tvar [chunkIds, moreModules, runtime] = data;\n\t// add \"moreModules\" to the modules object,\n\t// then flag all \"chunkIds\" as loaded and fire callback\n\tvar moduleId, chunkId, i = 0;\n\tif(chunkIds.some((id) => (installedChunks[id] !== 0))) {\n\t\tfor(moduleId in moreModules) {\n\t\t\tif(__webpack_require__.o(moreModules, moduleId)) {\n\t\t\t\t__webpack_require__.m[moduleId] = moreModules[moduleId];\n\t\t\t}\n\t\t}\n\t\tif(runtime) var result = runtime(__webpack_require__);\n\t}\n\tif(parentChunkLoadingFunction) parentChunkLoadingFunction(data);\n\tfor(;i < chunkIds.length; i++) {\n\t\tchunkId = chunkIds[i];\n\t\tif(__webpack_require__.o(installedChunks, chunkId) && installedChunks[chunkId]) {\n\t\t\tinstalledChunks[chunkId][0]();\n\t\t}\n\t\tinstalledChunks[chunkId] = 0;\n\t}\n\treturn __webpack_require__.O(result);\n}\n\nvar chunkLoadingGlobal = globalThis[\"webpackChunklocalisation_map\"] = globalThis[\"webpackChunklocalisation_map\"] || [];\nchunkLoadingGlobal.forEach(webpackJsonpCallback.bind(null, 0));\nchunkLoadingGlobal.push = webpackJsonpCallback.bind(null, chunkLoadingGlobal.push.bind(chunkLoadingGlobal));","","// startup\n// Load entry module and return exports\n// This entry module depends on other loaded chunks and execution need to be delayed\nvar __webpack_exports__ = __webpack_require__.O(undefined, [\"localisation-map/style-index\"], () => (__webpack_require__(\"./src/localisation-map/index.js\")))\n__webpack_exports__ = __webpack_require__.O(__webpack_exports__);\n",""],"names":["ServerSideRender","useBlockProps","jsx","_jsx","Edit","props","children","block","attributes","registerBlockType","metadata","name","edit","GOOGLE_MAPS_CONFIG","apiKey","center","lat","lng","zoom","marker","title","address","placeId","color","styles","featureType","elementType","stylers","gamma","lightness","saturation","visibility","weight","initializeCarhopMaps","mapContainers","document","querySelectorAll","forEach","container","mapElement","querySelector","dataset","initialized","map","google","maps","Map","LatLng","zoomControl","zoomControlOptions","position","ControlPosition","RIGHT_TOP","style","ZoomControlStyle","DEFAULT","mapTypeControl","streetViewControl","fullscreenControl","customPinPath","Marker","icon","url","scaledSize","Size","origin","Point","anchor","addListener","googleMapsUrl","encodeURIComponent","window","open","loadGoogleMapsAPI","carhopMapsLoading","carhopMapsCallbacks","push","carhopMapsReady","callback","script","createElement","src","async","defer","head","appendChild","readyState","addEventListener"],"sourceRoot":""}
\ No newline at end of file
diff --git a/plugins/carhop-blocks/blocks/localisation-map/build/localisation-map/render.php b/plugins/carhop-blocks/blocks/localisation-map/build/localisation-map/render.php
index d69fc98..a68eee1 100644
--- a/plugins/carhop-blocks/blocks/localisation-map/build/localisation-map/render.php
+++ b/plugins/carhop-blocks/blocks/localisation-map/build/localisation-map/render.php
@@ -8,6 +8,6 @@
$unique_id = 'carhop-map-' . uniqid();
?>
-
\ No newline at end of file
+
\ No newline at end of file
diff --git a/plugins/carhop-blocks/blocks/localisation-map/build/localisation-map/style-index-rtl.css b/plugins/carhop-blocks/blocks/localisation-map/build/localisation-map/style-index-rtl.css
index 6d7656d..889c0c4 100644
--- a/plugins/carhop-blocks/blocks/localisation-map/build/localisation-map/style-index-rtl.css
+++ b/plugins/carhop-blocks/blocks/localisation-map/build/localisation-map/style-index-rtl.css
@@ -6,10 +6,9 @@
}
.carhop-localisation-map .map-container {
margin: 0 auto;
- width: 800px;
+ width: 1200px;
height: 500px;
background-color: var(--wp--preset--color--primary);
- border-radius: 8px;
overflow: hidden;
}
.carhop-localisation-map .map-container:not([data-initialized=true]) {
diff --git a/plugins/carhop-blocks/blocks/localisation-map/build/localisation-map/style-index.css b/plugins/carhop-blocks/blocks/localisation-map/build/localisation-map/style-index.css
index a97e8d4..5171ddc 100644
--- a/plugins/carhop-blocks/blocks/localisation-map/build/localisation-map/style-index.css
+++ b/plugins/carhop-blocks/blocks/localisation-map/build/localisation-map/style-index.css
@@ -6,10 +6,9 @@
}
.carhop-localisation-map .map-container {
margin: 0 auto;
- width: 800px;
+ width: 1200px;
height: 500px;
background-color: var(--wp--preset--color--primary);
- border-radius: 8px;
overflow: hidden;
}
.carhop-localisation-map .map-container:not([data-initialized=true]) {
diff --git a/plugins/carhop-blocks/blocks/localisation-map/build/localisation-map/style-index.css.map b/plugins/carhop-blocks/blocks/localisation-map/build/localisation-map/style-index.css.map
index 89fe2c6..ec0c045 100644
--- a/plugins/carhop-blocks/blocks/localisation-map/build/localisation-map/style-index.css.map
+++ b/plugins/carhop-blocks/blocks/localisation-map/build/localisation-map/style-index.css.map
@@ -1 +1 @@
-{"version":3,"file":"localisation-map/style-index.css","mappings":";;;AAEE;EACC;AADH;AADC;EAIC;EACA;EACA;EACA;EACA;EACA;AAAF;AAGE;EACC;EACA;EACA;EACA;AADH;AAGG;EACC;AADJ,C","sources":["webpack://localisation-map/./src/localisation-map/style.scss"],"sourcesContent":[".carhop-localisation-map {\n\t.map-container {\n\t\ta:after {\n\t\t\tcontent: none !important;\n\t\t}\n\t\tmargin: 0 auto;\n\t\twidth: 800px;\n\t\theight: 500px;\n\t\tbackground-color: var(--wp--preset--color--primary);\n\t\tborder-radius: 8px;\n\t\toverflow: hidden;\n\n\t\t// Loading state\n\t\t&:not([data-initialized=\"true\"]) {\n\t\t\tdisplay: flex;\n\t\t\talign-items: center;\n\t\t\tjustify-content: center;\n\t\t\tcolor: white;\n\n\t\t\t&::before {\n\t\t\t\tcontent: \"Chargement de la carte...\";\n\t\t\t}\n\t\t}\n\t}\n}\n"],"names":[],"sourceRoot":""}
\ No newline at end of file
+{"version":3,"file":"localisation-map/style-index.css","mappings":";;;AAEE;EACC;AADH;AADC;EAIC;EACA;EACA;EACA;EACA;AAAF;AAGE;EACC;EACA;EACA;EACA;AADH;AAGG;EACC;AADJ,C","sources":["webpack://localisation-map/./src/localisation-map/style.scss"],"sourcesContent":[".carhop-localisation-map {\n\t.map-container {\n\t\ta:after {\n\t\t\tcontent: none !important;\n\t\t}\n\t\tmargin: 0 auto;\n\t\twidth: 1200px;\n\t\theight: 500px;\n\t\tbackground-color: var(--wp--preset--color--primary);\n\t\toverflow: hidden;\n\n\t\t// Loading state\n\t\t&:not([data-initialized=\"true\"]) {\n\t\t\tdisplay: flex;\n\t\t\talign-items: center;\n\t\t\tjustify-content: center;\n\t\t\tcolor: white;\n\n\t\t\t&::before {\n\t\t\t\tcontent: \"Chargement de la carte...\";\n\t\t\t}\n\t\t}\n\t}\n}\n"],"names":[],"sourceRoot":""}
\ No newline at end of file
diff --git a/plugins/carhop-blocks/blocks/localisation-map/build/localisation-map/view.asset.php b/plugins/carhop-blocks/blocks/localisation-map/build/localisation-map/view.asset.php
index c29589e..feb28b0 100644
--- a/plugins/carhop-blocks/blocks/localisation-map/build/localisation-map/view.asset.php
+++ b/plugins/carhop-blocks/blocks/localisation-map/build/localisation-map/view.asset.php
@@ -1 +1 @@
- array(), 'version' => '3b03e043d3968050b29f');
+ array(), 'version' => 'd691e92672b49c2509ce');
diff --git a/plugins/carhop-blocks/blocks/localisation-map/build/localisation-map/view.js b/plugins/carhop-blocks/blocks/localisation-map/build/localisation-map/view.js
index 843c62d..bb0a109 100644
--- a/plugins/carhop-blocks/blocks/localisation-map/build/localisation-map/view.js
+++ b/plugins/carhop-blocks/blocks/localisation-map/build/localisation-map/view.js
@@ -19,7 +19,10 @@ const GOOGLE_MAPS_CONFIG = {
lng: 4.151615298397132,
// Position originale du pin
title: "Carhop",
- // Options de couleur : 'red', 'blue', 'green', 'yellow', 'purple', 'orange'
+ address: "Av. de la Houssière 80, 7090 Braine-le-Comte",
+ placeId: "ChIJ41pZLUq1w0cRjXw8zlHnvXI",
+ // Place ID Google Maps (à remplacer par le vrai)
+
color: "green"
},
styles: [{
@@ -303,14 +306,40 @@ function initializeCarhopMaps() {
// Contrôle Street View
fullscreenControl: false // Bouton plein écran
});
- // Chemin vers votre pin personnalisé (à ajuster selon votre structure)
- const image = "/wp-content/plugins/carhop-blocks/blocks/localisation-map/build/localisation-map/carhop-pin.png";
+ // Chemin vers votre pin personnalisé avec fallback
+ const customPinPath = "/wp-content/plugins/carhop-blocks/blocks/localisation-map/src/localisation-map/carhop-pin.png";
+
// Add marker with custom color
- new google.maps.Marker({
+ const marker = new google.maps.Marker({
position: new google.maps.LatLng(GOOGLE_MAPS_CONFIG.marker.lat, GOOGLE_MAPS_CONFIG.marker.lng),
map: map,
title: GOOGLE_MAPS_CONFIG.marker.title,
- icon: image
+ icon: {
+ url: customPinPath,
+ scaledSize: new google.maps.Size(40, 40),
+ // Taille du pin
+ origin: new google.maps.Point(0, 0),
+ anchor: new google.maps.Point(20, 40) // Point d'ancrage (centre bas)
+ }
+ });
+
+ // Add click event to open Google Maps place
+ marker.addListener("click", function () {
+ const placeId = GOOGLE_MAPS_CONFIG.marker.placeId;
+
+ // URL pour ouvrir la fiche Google Maps complète
+ let googleMapsUrl;
+ if (placeId && placeId !== "ChIJXXXXXXXXXXXXXXXXXXXX") {
+ // Utiliser le Place ID pour ouvrir la fiche complète
+ googleMapsUrl = `https://www.google.com/maps/place/?q=place_id:${placeId}`;
+ } else {
+ // Fallback avec l'adresse
+ const address = encodeURIComponent(GOOGLE_MAPS_CONFIG.marker.address);
+ googleMapsUrl = `https://www.google.com/maps/search/?api=1&query=${address}`;
+ }
+
+ // Ouvrir dans un nouvel onglet
+ window.open(googleMapsUrl, "_blank");
});
// Mark as initialized
diff --git a/plugins/carhop-blocks/blocks/localisation-map/build/localisation-map/view.js.map b/plugins/carhop-blocks/blocks/localisation-map/build/localisation-map/view.js.map
index bd5526f..0fb9ff2 100644
--- a/plugins/carhop-blocks/blocks/localisation-map/build/localisation-map/view.js.map
+++ b/plugins/carhop-blocks/blocks/localisation-map/build/localisation-map/view.js.map
@@ -1 +1 @@
-{"version":3,"file":"localisation-map/view.js","mappings":"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","sources":["webpack://localisation-map/./src/localisation-map/view.js"],"sourcesContent":["/**\n * Google Maps initialization for Carhop Localisation Map block\n */\n\n// Configuration\nconst GOOGLE_MAPS_CONFIG = {\n\tapiKey: \"AIzaSyBs-owKPe4qiYLb2baCTAptLeNNJX7bTQk\",\n\tcenter: {\n\t\tlat: 50.61036915572659,\n\t\tlng: 4.148529499893204,\n\t},\n\tzoom: 15,\n\tmarker: {\n\t\tlat: 50.61036915386491,\n\t\tlng: 4.151615298397132, // Position originale du pin\n\t\ttitle: \"Carhop\",\n\t\t// Options de couleur : 'red', 'blue', 'green', 'yellow', 'purple', 'orange'\n\t\tcolor: \"green\",\n\t},\n\tstyles: [\n\t\t{\n\t\t\tfeatureType: \"administrative\",\n\t\t\telementType: \"geometry\",\n\t\t\tstylers: [\n\t\t\t\t{\n\t\t\t\t\tcolor: \"#136f63\",\n\t\t\t\t},\n\t\t\t],\n\t\t},\n\t\t{\n\t\t\tfeatureType: \"administrative\",\n\t\t\telementType: \"labels.text.fill\",\n\t\t\tstylers: [\n\t\t\t\t{\n\t\t\t\t\tcolor: \"#ffffff\",\n\t\t\t\t},\n\t\t\t\t{\n\t\t\t\t\tgamma: \"1.00\",\n\t\t\t\t},\n\t\t\t\t{\n\t\t\t\t\tlightness: \"0\",\n\t\t\t\t},\n\t\t\t\t{\n\t\t\t\t\tsaturation: \"0\",\n\t\t\t\t},\n\t\t\t\t{\n\t\t\t\t\tvisibility: \"on\",\n\t\t\t\t},\n\t\t\t\t{\n\t\t\t\t\tweight: \"1.5\",\n\t\t\t\t},\n\t\t\t],\n\t\t},\n\t\t{\n\t\t\tfeatureType: \"administrative\",\n\t\t\telementType: \"labels.text.stroke\",\n\t\t\tstylers: [\n\t\t\t\t{\n\t\t\t\t\tcolor: \"#19464b\",\n\t\t\t\t},\n\t\t\t\t{\n\t\t\t\t\tweight: \"2\",\n\t\t\t\t},\n\t\t\t],\n\t\t},\n\t\t{\n\t\t\tfeatureType: \"administrative.land_parcel\",\n\t\t\telementType: \"geometry\",\n\t\t\tstylers: [\n\t\t\t\t{\n\t\t\t\t\tcolor: \"#19464b\",\n\t\t\t\t},\n\t\t\t],\n\t\t},\n\t\t{\n\t\t\tfeatureType: \"landscape\",\n\t\t\telementType: \"all\",\n\t\t\tstylers: [\n\t\t\t\t{\n\t\t\t\t\tcolor: \"#19464b\",\n\t\t\t\t},\n\t\t\t],\n\t\t},\n\t\t{\n\t\t\tfeatureType: \"landscape\",\n\t\t\telementType: \"geometry\",\n\t\t\tstylers: [\n\t\t\t\t{\n\t\t\t\t\tcolor: \"#136f63\",\n\t\t\t\t},\n\t\t\t],\n\t\t},\n\t\t{\n\t\t\tfeatureType: \"landscape.man_made\",\n\t\t\telementType: \"geometry\",\n\t\t\tstylers: [\n\t\t\t\t{\n\t\t\t\t\tcolor: \"#136f63\",\n\t\t\t\t},\n\t\t\t],\n\t\t},\n\t\t{\n\t\t\tfeatureType: \"landscape.natural\",\n\t\t\telementType: \"labels.text.fill\",\n\t\t\tstylers: [\n\t\t\t\t{\n\t\t\t\t\tcolor: \"#ffffff\",\n\t\t\t\t},\n\t\t\t\t{\n\t\t\t\t\tvisibility: \"on\",\n\t\t\t\t},\n\t\t\t],\n\t\t},\n\t\t{\n\t\t\tfeatureType: \"landscape.natural.landcover\",\n\t\t\telementType: \"geometry\",\n\t\t\tstylers: [\n\t\t\t\t{\n\t\t\t\t\tcolor: \"#136f63\",\n\t\t\t\t},\n\t\t\t],\n\t\t},\n\t\t{\n\t\t\tfeatureType: \"landscape.natural.terrain\",\n\t\t\telementType: \"geometry\",\n\t\t\tstylers: [\n\t\t\t\t{\n\t\t\t\t\tcolor: \"#136f63\",\n\t\t\t\t},\n\t\t\t],\n\t\t},\n\t\t{\n\t\t\tfeatureType: \"poi\",\n\t\t\telementType: \"all\",\n\t\t\tstylers: [\n\t\t\t\t{\n\t\t\t\t\tvisibility: \"off\",\n\t\t\t\t},\n\t\t\t],\n\t\t},\n\t\t{\n\t\t\tfeatureType: \"poi.attraction\",\n\t\t\telementType: \"all\",\n\t\t\tstylers: [\n\t\t\t\t{\n\t\t\t\t\tvisibility: \"off\",\n\t\t\t\t},\n\t\t\t],\n\t\t},\n\t\t{\n\t\t\tfeatureType: \"poi.business\",\n\t\t\telementType: \"all\",\n\t\t\tstylers: [\n\t\t\t\t{\n\t\t\t\t\tvisibility: \"off\",\n\t\t\t\t},\n\t\t\t],\n\t\t},\n\t\t{\n\t\t\tfeatureType: \"poi.government\",\n\t\t\telementType: \"all\",\n\t\t\tstylers: [\n\t\t\t\t{\n\t\t\t\t\tvisibility: \"off\",\n\t\t\t\t},\n\t\t\t],\n\t\t},\n\t\t{\n\t\t\tfeatureType: \"poi.park\",\n\t\t\telementType: \"all\",\n\t\t\tstylers: [\n\t\t\t\t{\n\t\t\t\t\tvisibility: \"off\",\n\t\t\t\t},\n\t\t\t],\n\t\t},\n\t\t{\n\t\t\tfeatureType: \"poi.school\",\n\t\t\telementType: \"all\",\n\t\t\tstylers: [\n\t\t\t\t{\n\t\t\t\t\tvisibility: \"off\",\n\t\t\t\t},\n\t\t\t],\n\t\t},\n\t\t{\n\t\t\tfeatureType: \"poi.medical\",\n\t\t\telementType: \"all\",\n\t\t\tstylers: [\n\t\t\t\t{\n\t\t\t\t\tvisibility: \"off\",\n\t\t\t\t},\n\t\t\t],\n\t\t},\n\t\t{\n\t\t\tfeatureType: \"poi.place_of_worship\",\n\t\t\telementType: \"all\",\n\t\t\tstylers: [\n\t\t\t\t{\n\t\t\t\t\tvisibility: \"off\",\n\t\t\t\t},\n\t\t\t],\n\t\t},\n\t\t{\n\t\t\tfeatureType: \"poi.sports_complex\",\n\t\t\telementType: \"all\",\n\t\t\tstylers: [\n\t\t\t\t{\n\t\t\t\t\tvisibility: \"off\",\n\t\t\t\t},\n\t\t\t],\n\t\t},\n\t\t{\n\t\t\tfeatureType: \"road.highway\",\n\t\t\telementType: \"geometry.fill\",\n\t\t\tstylers: [\n\t\t\t\t{\n\t\t\t\t\tcolor: \"#136f63\",\n\t\t\t\t},\n\t\t\t\t{\n\t\t\t\t\tlightness: \"-40\",\n\t\t\t\t},\n\t\t\t],\n\t\t},\n\t\t{\n\t\t\tfeatureType: \"road.highway\",\n\t\t\telementType: \"geometry.stroke\",\n\t\t\tstylers: [\n\t\t\t\t{\n\t\t\t\t\tvisibility: \"off\",\n\t\t\t\t},\n\t\t\t],\n\t\t},\n\t\t{\n\t\t\tfeatureType: \"road.highway\",\n\t\t\telementType: \"labels\",\n\t\t\tstylers: [\n\t\t\t\t{\n\t\t\t\t\tvisibility: \"off\",\n\t\t\t\t},\n\t\t\t],\n\t\t},\n\t\t{\n\t\t\tfeatureType: \"road.highway\",\n\t\t\telementType: \"labels.text.fill\",\n\t\t\tstylers: [\n\t\t\t\t{\n\t\t\t\t\tcolor: \"#ffffff\",\n\t\t\t\t},\n\t\t\t],\n\t\t},\n\t\t{\n\t\t\tfeatureType: \"road.highway\",\n\t\t\telementType: \"labels.text.stroke\",\n\t\t\tstylers: [\n\t\t\t\t{\n\t\t\t\t\tcolor: \"#0a1f14\",\n\t\t\t\t},\n\t\t\t],\n\t\t},\n\t\t{\n\t\t\tfeatureType: \"road.arterial\",\n\t\t\telementType: \"geometry\",\n\t\t\tstylers: [\n\t\t\t\t{\n\t\t\t\t\tcolor: \"#136f63\",\n\t\t\t\t},\n\t\t\t\t{\n\t\t\t\t\tlightness: 30,\n\t\t\t\t},\n\t\t\t],\n\t\t},\n\t\t{\n\t\t\tfeatureType: \"road.arterial\",\n\t\t\telementType: \"geometry.fill\",\n\t\t\tstylers: [\n\t\t\t\t{\n\t\t\t\t\tcolor: \"#136f63\",\n\t\t\t\t},\n\t\t\t],\n\t\t},\n\t\t{\n\t\t\tfeatureType: \"road.arterial\",\n\t\t\telementType: \"labels\",\n\t\t\tstylers: [\n\t\t\t\t{\n\t\t\t\t\tvisibility: \"off\",\n\t\t\t\t},\n\t\t\t],\n\t\t},\n\t\t{\n\t\t\tfeatureType: \"road.arterial\",\n\t\t\telementType: \"labels.text.fill\",\n\t\t\tstylers: [\n\t\t\t\t{\n\t\t\t\t\tcolor: \"#ffffff\",\n\t\t\t\t},\n\t\t\t],\n\t\t},\n\t\t{\n\t\t\tfeatureType: \"road.arterial\",\n\t\t\telementType: \"labels.text.stroke\",\n\t\t\tstylers: [\n\t\t\t\t{\n\t\t\t\t\tcolor: \"#2c2c2c\",\n\t\t\t\t},\n\t\t\t],\n\t\t},\n\t\t{\n\t\t\tfeatureType: \"road.local\",\n\t\t\telementType: \"geometry\",\n\t\t\tstylers: [\n\t\t\t\t{\n\t\t\t\t\tcolor: \"#136F63\",\n\t\t\t\t},\n\t\t\t\t{\n\t\t\t\t\tlightness: -20,\n\t\t\t\t},\n\t\t\t],\n\t\t},\n\t\t{\n\t\t\tfeatureType: \"road.local\",\n\t\t\telementType: \"labels\",\n\t\t\tstylers: [\n\t\t\t\t{\n\t\t\t\t\tvisibility: \"simplified\",\n\t\t\t\t},\n\t\t\t],\n\t\t},\n\t\t{\n\t\t\tfeatureType: \"road.local\",\n\t\t\telementType: \"labels.text.fill\",\n\t\t\tstylers: [\n\t\t\t\t{\n\t\t\t\t\tcolor: \"#ffffff\",\n\t\t\t\t},\n\t\t\t],\n\t\t},\n\t\t{\n\t\t\tfeatureType: \"transit\",\n\t\t\telementType: \"geometry\",\n\t\t\tstylers: [\n\t\t\t\t{\n\t\t\t\t\tcolor: \"#136F63\",\n\t\t\t\t},\n\t\t\t\t{\n\t\t\t\t\tlightness: -20,\n\t\t\t\t},\n\t\t\t],\n\t\t},\n\t\t// Grandes masses d'eau (océans, lacs, grands fleuves)\n\t\t{\n\t\t\tfeatureType: \"water\",\n\t\t\telementType: \"geometry\",\n\t\t\tstylers: [\n\t\t\t\t{\n\t\t\t\t\tcolor: \"#136F63\",\n\t\t\t\t},\n\t\t\t\t{\n\t\t\t\t\tlightness: 18,\n\t\t\t\t},\n\t\t\t\t{\n\t\t\t\t\tsaturation: -50,\n\t\t\t\t},\n\t\t\t\t{\n\t\t\t\t\tvisibility: \"simplified\", // Simplifie l'affichage\n\t\t\t\t},\n\t\t\t],\n\t\t},\n\n\t\t{\n\t\t\tfeatureType: \"water\",\n\t\t\telementType: \"geometry.fill\",\n\t\t\tstylers: [\n\t\t\t\t{\n\t\t\t\t\tvisibility: \"simplified\",\n\t\t\t\t},\n\t\t\t],\n\t\t},\n\t\t// Masquer les labels des petites rivières\n\t\t{\n\t\t\tfeatureType: \"water\",\n\t\t\telementType: \"labels\",\n\t\t\tstylers: [\n\t\t\t\t{\n\t\t\t\t\tvisibility: \"off\",\n\t\t\t\t},\n\t\t\t],\n\t\t},\n\t],\n};\n\n/**\n * Initialize Google Maps for all map containers on the page\n */\nfunction initializeCarhopMaps() {\n\t// Find all map containers\n\tconst mapContainers = document.querySelectorAll(\".carhop-localisation-map\");\n\n\tmapContainers.forEach((container) => {\n\t\tconst mapElement = container.querySelector(\".map-container\");\n\n\t\tif (!mapElement || mapElement.dataset.initialized === \"true\") {\n\t\t\treturn;\n\t\t}\n\n\t\t// Create map\n\t\tconst map = new google.maps.Map(mapElement, {\n\t\t\tzoom: GOOGLE_MAPS_CONFIG.zoom,\n\t\t\tcenter: new google.maps.LatLng(\n\t\t\t\tGOOGLE_MAPS_CONFIG.center.lat,\n\t\t\t\tGOOGLE_MAPS_CONFIG.center.lng,\n\t\t\t),\n\t\t\tstyles: GOOGLE_MAPS_CONFIG.styles,\n\t\t\t// Contrôles de zoom\n\t\t\tzoomControl: true,\n\t\t\tzoomControlOptions: {\n\t\t\t\tposition: google.maps.ControlPosition.RIGHT_TOP,\n\t\t\t\tstyle: google.maps.ZoomControlStyle.DEFAULT,\n\t\t\t},\n\t\t\t// Autres contrôles utiles\n\t\t\tmapTypeControl: false, // Masquer le sélecteur de type de carte\n\t\t\tstreetViewControl: false, // Contrôle Street View\n\t\t\tfullscreenControl: false, // Bouton plein écran\n\t\t});\n\t\t// Chemin vers votre pin personnalisé (à ajuster selon votre structure)\n\t\tconst image =\n\t\t\t\"/wp-content/plugins/carhop-blocks/blocks/localisation-map/build/localisation-map/carhop-pin.png\";\n\t\t// Add marker with custom color\n\t\tnew google.maps.Marker({\n\t\t\tposition: new google.maps.LatLng(\n\t\t\t\tGOOGLE_MAPS_CONFIG.marker.lat,\n\t\t\t\tGOOGLE_MAPS_CONFIG.marker.lng,\n\t\t\t),\n\t\t\tmap: map,\n\t\t\ttitle: GOOGLE_MAPS_CONFIG.marker.title,\n\t\t\ticon: image,\n\t\t});\n\n\t\t// Mark as initialized\n\t\tmapElement.dataset.initialized = \"true\";\n\t});\n}\n\n/**\n * Load Google Maps API and initialize maps\n */\nfunction loadGoogleMapsAPI() {\n\t// Check if Google Maps is already loaded\n\tif (typeof google !== \"undefined\" && google.maps) {\n\t\tinitializeCarhopMaps();\n\t\treturn;\n\t}\n\n\t// Check if script is already loading\n\tif (window.carhopMapsLoading) {\n\t\twindow.carhopMapsCallbacks = window.carhopMapsCallbacks || [];\n\t\twindow.carhopMapsCallbacks.push(initializeCarhopMaps);\n\t\treturn;\n\t}\n\n\t// Mark as loading\n\twindow.carhopMapsLoading = true;\n\twindow.carhopMapsCallbacks = [initializeCarhopMaps];\n\n\t// Create callback function\n\twindow.carhopMapsReady = function () {\n\t\twindow.carhopMapsLoading = false;\n\t\tif (window.carhopMapsCallbacks) {\n\t\t\twindow.carhopMapsCallbacks.forEach((callback) => callback());\n\t\t\twindow.carhopMapsCallbacks = [];\n\t\t}\n\t};\n\n\t// Load Google Maps API\n\tconst script = document.createElement(\"script\");\n\tscript.src = `https://maps.googleapis.com/maps/api/js?key=${GOOGLE_MAPS_CONFIG.apiKey}&callback=carhopMapsReady`;\n\tscript.async = true;\n\tscript.defer = true;\n\tdocument.head.appendChild(script);\n}\n\n// Initialize when DOM is ready\nif (document.readyState === \"loading\") {\n\tdocument.addEventListener(\"DOMContentLoaded\", loadGoogleMapsAPI);\n} else {\n\tloadGoogleMapsAPI();\n}\n\n// Also initialize on window load as fallback\nwindow.addEventListener(\"load\", loadGoogleMapsAPI);\n"],"names":["GOOGLE_MAPS_CONFIG","apiKey","center","lat","lng","zoom","marker","title","color","styles","featureType","elementType","stylers","gamma","lightness","saturation","visibility","weight","initializeCarhopMaps","mapContainers","document","querySelectorAll","forEach","container","mapElement","querySelector","dataset","initialized","map","google","maps","Map","LatLng","zoomControl","zoomControlOptions","position","ControlPosition","RIGHT_TOP","style","ZoomControlStyle","DEFAULT","mapTypeControl","streetViewControl","fullscreenControl","image","Marker","icon","loadGoogleMapsAPI","window","carhopMapsLoading","carhopMapsCallbacks","push","carhopMapsReady","callback","script","createElement","src","async","defer","head","appendChild","readyState","addEventListener"],"sourceRoot":""}
\ No newline at end of file
+{"version":3,"file":"localisation-map/view.js","mappings":"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","sources":["webpack://localisation-map/./src/localisation-map/view.js"],"sourcesContent":["/**\n * Google Maps initialization for Carhop Localisation Map block\n */\n\n// Configuration\nconst GOOGLE_MAPS_CONFIG = {\n\tapiKey: \"AIzaSyBs-owKPe4qiYLb2baCTAptLeNNJX7bTQk\",\n\tcenter: {\n\t\tlat: 50.61036915572659,\n\t\tlng: 4.148529499893204,\n\t},\n\tzoom: 15,\n\tmarker: {\n\t\tlat: 50.61036915386491,\n\t\tlng: 4.151615298397132, // Position originale du pin\n\t\ttitle: \"Carhop\",\n\t\taddress: \"Av. de la Houssière 80, 7090 Braine-le-Comte\",\n\t\tplaceId: \"ChIJ41pZLUq1w0cRjXw8zlHnvXI\", // Place ID Google Maps (à remplacer par le vrai)\n\n\t\tcolor: \"green\",\n\t},\n\tstyles: [\n\t\t{\n\t\t\tfeatureType: \"administrative\",\n\t\t\telementType: \"geometry\",\n\t\t\tstylers: [\n\t\t\t\t{\n\t\t\t\t\tcolor: \"#136f63\",\n\t\t\t\t},\n\t\t\t],\n\t\t},\n\t\t{\n\t\t\tfeatureType: \"administrative\",\n\t\t\telementType: \"labels.text.fill\",\n\t\t\tstylers: [\n\t\t\t\t{\n\t\t\t\t\tcolor: \"#ffffff\",\n\t\t\t\t},\n\t\t\t\t{\n\t\t\t\t\tgamma: \"1.00\",\n\t\t\t\t},\n\t\t\t\t{\n\t\t\t\t\tlightness: \"0\",\n\t\t\t\t},\n\t\t\t\t{\n\t\t\t\t\tsaturation: \"0\",\n\t\t\t\t},\n\t\t\t\t{\n\t\t\t\t\tvisibility: \"on\",\n\t\t\t\t},\n\t\t\t\t{\n\t\t\t\t\tweight: \"1.5\",\n\t\t\t\t},\n\t\t\t],\n\t\t},\n\t\t{\n\t\t\tfeatureType: \"administrative\",\n\t\t\telementType: \"labels.text.stroke\",\n\t\t\tstylers: [\n\t\t\t\t{\n\t\t\t\t\tcolor: \"#19464b\",\n\t\t\t\t},\n\t\t\t\t{\n\t\t\t\t\tweight: \"2\",\n\t\t\t\t},\n\t\t\t],\n\t\t},\n\t\t{\n\t\t\tfeatureType: \"administrative.land_parcel\",\n\t\t\telementType: \"geometry\",\n\t\t\tstylers: [\n\t\t\t\t{\n\t\t\t\t\tcolor: \"#19464b\",\n\t\t\t\t},\n\t\t\t],\n\t\t},\n\t\t{\n\t\t\tfeatureType: \"landscape\",\n\t\t\telementType: \"all\",\n\t\t\tstylers: [\n\t\t\t\t{\n\t\t\t\t\tcolor: \"#19464b\",\n\t\t\t\t},\n\t\t\t],\n\t\t},\n\t\t{\n\t\t\tfeatureType: \"landscape\",\n\t\t\telementType: \"geometry\",\n\t\t\tstylers: [\n\t\t\t\t{\n\t\t\t\t\tcolor: \"#136f63\",\n\t\t\t\t},\n\t\t\t],\n\t\t},\n\t\t{\n\t\t\tfeatureType: \"landscape.man_made\",\n\t\t\telementType: \"geometry\",\n\t\t\tstylers: [\n\t\t\t\t{\n\t\t\t\t\tcolor: \"#136f63\",\n\t\t\t\t},\n\t\t\t],\n\t\t},\n\t\t{\n\t\t\tfeatureType: \"landscape.natural\",\n\t\t\telementType: \"labels.text.fill\",\n\t\t\tstylers: [\n\t\t\t\t{\n\t\t\t\t\tcolor: \"#ffffff\",\n\t\t\t\t},\n\t\t\t\t{\n\t\t\t\t\tvisibility: \"on\",\n\t\t\t\t},\n\t\t\t],\n\t\t},\n\t\t{\n\t\t\tfeatureType: \"landscape.natural.landcover\",\n\t\t\telementType: \"geometry\",\n\t\t\tstylers: [\n\t\t\t\t{\n\t\t\t\t\tcolor: \"#136f63\",\n\t\t\t\t},\n\t\t\t],\n\t\t},\n\t\t{\n\t\t\tfeatureType: \"landscape.natural.terrain\",\n\t\t\telementType: \"geometry\",\n\t\t\tstylers: [\n\t\t\t\t{\n\t\t\t\t\tcolor: \"#136f63\",\n\t\t\t\t},\n\t\t\t],\n\t\t},\n\t\t{\n\t\t\tfeatureType: \"poi\",\n\t\t\telementType: \"all\",\n\t\t\tstylers: [\n\t\t\t\t{\n\t\t\t\t\tvisibility: \"off\",\n\t\t\t\t},\n\t\t\t],\n\t\t},\n\t\t{\n\t\t\tfeatureType: \"poi.attraction\",\n\t\t\telementType: \"all\",\n\t\t\tstylers: [\n\t\t\t\t{\n\t\t\t\t\tvisibility: \"off\",\n\t\t\t\t},\n\t\t\t],\n\t\t},\n\t\t{\n\t\t\tfeatureType: \"poi.business\",\n\t\t\telementType: \"all\",\n\t\t\tstylers: [\n\t\t\t\t{\n\t\t\t\t\tvisibility: \"off\",\n\t\t\t\t},\n\t\t\t],\n\t\t},\n\t\t{\n\t\t\tfeatureType: \"poi.government\",\n\t\t\telementType: \"all\",\n\t\t\tstylers: [\n\t\t\t\t{\n\t\t\t\t\tvisibility: \"off\",\n\t\t\t\t},\n\t\t\t],\n\t\t},\n\t\t{\n\t\t\tfeatureType: \"poi.park\",\n\t\t\telementType: \"all\",\n\t\t\tstylers: [\n\t\t\t\t{\n\t\t\t\t\tvisibility: \"off\",\n\t\t\t\t},\n\t\t\t],\n\t\t},\n\t\t{\n\t\t\tfeatureType: \"poi.school\",\n\t\t\telementType: \"all\",\n\t\t\tstylers: [\n\t\t\t\t{\n\t\t\t\t\tvisibility: \"off\",\n\t\t\t\t},\n\t\t\t],\n\t\t},\n\t\t{\n\t\t\tfeatureType: \"poi.medical\",\n\t\t\telementType: \"all\",\n\t\t\tstylers: [\n\t\t\t\t{\n\t\t\t\t\tvisibility: \"off\",\n\t\t\t\t},\n\t\t\t],\n\t\t},\n\t\t{\n\t\t\tfeatureType: \"poi.place_of_worship\",\n\t\t\telementType: \"all\",\n\t\t\tstylers: [\n\t\t\t\t{\n\t\t\t\t\tvisibility: \"off\",\n\t\t\t\t},\n\t\t\t],\n\t\t},\n\t\t{\n\t\t\tfeatureType: \"poi.sports_complex\",\n\t\t\telementType: \"all\",\n\t\t\tstylers: [\n\t\t\t\t{\n\t\t\t\t\tvisibility: \"off\",\n\t\t\t\t},\n\t\t\t],\n\t\t},\n\t\t{\n\t\t\tfeatureType: \"road.highway\",\n\t\t\telementType: \"geometry.fill\",\n\t\t\tstylers: [\n\t\t\t\t{\n\t\t\t\t\tcolor: \"#136f63\",\n\t\t\t\t},\n\t\t\t\t{\n\t\t\t\t\tlightness: \"-40\",\n\t\t\t\t},\n\t\t\t],\n\t\t},\n\t\t{\n\t\t\tfeatureType: \"road.highway\",\n\t\t\telementType: \"geometry.stroke\",\n\t\t\tstylers: [\n\t\t\t\t{\n\t\t\t\t\tvisibility: \"off\",\n\t\t\t\t},\n\t\t\t],\n\t\t},\n\t\t{\n\t\t\tfeatureType: \"road.highway\",\n\t\t\telementType: \"labels\",\n\t\t\tstylers: [\n\t\t\t\t{\n\t\t\t\t\tvisibility: \"off\",\n\t\t\t\t},\n\t\t\t],\n\t\t},\n\t\t{\n\t\t\tfeatureType: \"road.highway\",\n\t\t\telementType: \"labels.text.fill\",\n\t\t\tstylers: [\n\t\t\t\t{\n\t\t\t\t\tcolor: \"#ffffff\",\n\t\t\t\t},\n\t\t\t],\n\t\t},\n\t\t{\n\t\t\tfeatureType: \"road.highway\",\n\t\t\telementType: \"labels.text.stroke\",\n\t\t\tstylers: [\n\t\t\t\t{\n\t\t\t\t\tcolor: \"#0a1f14\",\n\t\t\t\t},\n\t\t\t],\n\t\t},\n\t\t{\n\t\t\tfeatureType: \"road.arterial\",\n\t\t\telementType: \"geometry\",\n\t\t\tstylers: [\n\t\t\t\t{\n\t\t\t\t\tcolor: \"#136f63\",\n\t\t\t\t},\n\t\t\t\t{\n\t\t\t\t\tlightness: 30,\n\t\t\t\t},\n\t\t\t],\n\t\t},\n\t\t{\n\t\t\tfeatureType: \"road.arterial\",\n\t\t\telementType: \"geometry.fill\",\n\t\t\tstylers: [\n\t\t\t\t{\n\t\t\t\t\tcolor: \"#136f63\",\n\t\t\t\t},\n\t\t\t],\n\t\t},\n\t\t{\n\t\t\tfeatureType: \"road.arterial\",\n\t\t\telementType: \"labels\",\n\t\t\tstylers: [\n\t\t\t\t{\n\t\t\t\t\tvisibility: \"off\",\n\t\t\t\t},\n\t\t\t],\n\t\t},\n\t\t{\n\t\t\tfeatureType: \"road.arterial\",\n\t\t\telementType: \"labels.text.fill\",\n\t\t\tstylers: [\n\t\t\t\t{\n\t\t\t\t\tcolor: \"#ffffff\",\n\t\t\t\t},\n\t\t\t],\n\t\t},\n\t\t{\n\t\t\tfeatureType: \"road.arterial\",\n\t\t\telementType: \"labels.text.stroke\",\n\t\t\tstylers: [\n\t\t\t\t{\n\t\t\t\t\tcolor: \"#2c2c2c\",\n\t\t\t\t},\n\t\t\t],\n\t\t},\n\t\t{\n\t\t\tfeatureType: \"road.local\",\n\t\t\telementType: \"geometry\",\n\t\t\tstylers: [\n\t\t\t\t{\n\t\t\t\t\tcolor: \"#136F63\",\n\t\t\t\t},\n\t\t\t\t{\n\t\t\t\t\tlightness: -20,\n\t\t\t\t},\n\t\t\t],\n\t\t},\n\t\t{\n\t\t\tfeatureType: \"road.local\",\n\t\t\telementType: \"labels\",\n\t\t\tstylers: [\n\t\t\t\t{\n\t\t\t\t\tvisibility: \"simplified\",\n\t\t\t\t},\n\t\t\t],\n\t\t},\n\t\t{\n\t\t\tfeatureType: \"road.local\",\n\t\t\telementType: \"labels.text.fill\",\n\t\t\tstylers: [\n\t\t\t\t{\n\t\t\t\t\tcolor: \"#ffffff\",\n\t\t\t\t},\n\t\t\t],\n\t\t},\n\t\t{\n\t\t\tfeatureType: \"transit\",\n\t\t\telementType: \"geometry\",\n\t\t\tstylers: [\n\t\t\t\t{\n\t\t\t\t\tcolor: \"#136F63\",\n\t\t\t\t},\n\t\t\t\t{\n\t\t\t\t\tlightness: -20,\n\t\t\t\t},\n\t\t\t],\n\t\t},\n\t\t// Grandes masses d'eau (océans, lacs, grands fleuves)\n\t\t{\n\t\t\tfeatureType: \"water\",\n\t\t\telementType: \"geometry\",\n\t\t\tstylers: [\n\t\t\t\t{\n\t\t\t\t\tcolor: \"#136F63\",\n\t\t\t\t},\n\t\t\t\t{\n\t\t\t\t\tlightness: 18,\n\t\t\t\t},\n\t\t\t\t{\n\t\t\t\t\tsaturation: -50,\n\t\t\t\t},\n\t\t\t\t{\n\t\t\t\t\tvisibility: \"simplified\", // Simplifie l'affichage\n\t\t\t\t},\n\t\t\t],\n\t\t},\n\n\t\t{\n\t\t\tfeatureType: \"water\",\n\t\t\telementType: \"geometry.fill\",\n\t\t\tstylers: [\n\t\t\t\t{\n\t\t\t\t\tvisibility: \"simplified\",\n\t\t\t\t},\n\t\t\t],\n\t\t},\n\t\t// Masquer les labels des petites rivières\n\t\t{\n\t\t\tfeatureType: \"water\",\n\t\t\telementType: \"labels\",\n\t\t\tstylers: [\n\t\t\t\t{\n\t\t\t\t\tvisibility: \"off\",\n\t\t\t\t},\n\t\t\t],\n\t\t},\n\t],\n};\n\n/**\n * Initialize Google Maps for all map containers on the page\n */\nfunction initializeCarhopMaps() {\n\t// Find all map containers\n\tconst mapContainers = document.querySelectorAll(\".carhop-localisation-map\");\n\n\tmapContainers.forEach((container) => {\n\t\tconst mapElement = container.querySelector(\".map-container\");\n\n\t\tif (!mapElement || mapElement.dataset.initialized === \"true\") {\n\t\t\treturn;\n\t\t}\n\n\t\t// Create map\n\t\tconst map = new google.maps.Map(mapElement, {\n\t\t\tzoom: GOOGLE_MAPS_CONFIG.zoom,\n\t\t\tcenter: new google.maps.LatLng(\n\t\t\t\tGOOGLE_MAPS_CONFIG.center.lat,\n\t\t\t\tGOOGLE_MAPS_CONFIG.center.lng,\n\t\t\t),\n\t\t\tstyles: GOOGLE_MAPS_CONFIG.styles,\n\t\t\t// Contrôles de zoom\n\t\t\tzoomControl: true,\n\t\t\tzoomControlOptions: {\n\t\t\t\tposition: google.maps.ControlPosition.RIGHT_TOP,\n\t\t\t\tstyle: google.maps.ZoomControlStyle.DEFAULT,\n\t\t\t},\n\t\t\t// Autres contrôles utiles\n\t\t\tmapTypeControl: false, // Masquer le sélecteur de type de carte\n\t\t\tstreetViewControl: false, // Contrôle Street View\n\t\t\tfullscreenControl: false, // Bouton plein écran\n\t\t});\n\t\t// Chemin vers votre pin personnalisé avec fallback\n\t\tconst customPinPath =\n\t\t\t\"/wp-content/plugins/carhop-blocks/blocks/localisation-map/src/localisation-map/carhop-pin.png\";\n\n\t\t// Add marker with custom color\n\t\tconst marker = new google.maps.Marker({\n\t\t\tposition: new google.maps.LatLng(\n\t\t\t\tGOOGLE_MAPS_CONFIG.marker.lat,\n\t\t\t\tGOOGLE_MAPS_CONFIG.marker.lng,\n\t\t\t),\n\t\t\tmap: map,\n\t\t\ttitle: GOOGLE_MAPS_CONFIG.marker.title,\n\t\t\ticon: {\n\t\t\t\turl: customPinPath,\n\t\t\t\tscaledSize: new google.maps.Size(40, 40), // Taille du pin\n\t\t\t\torigin: new google.maps.Point(0, 0),\n\t\t\t\tanchor: new google.maps.Point(20, 40), // Point d'ancrage (centre bas)\n\t\t\t},\n\t\t});\n\n\t\t// Add click event to open Google Maps place\n\t\tmarker.addListener(\"click\", function () {\n\t\t\tconst placeId = GOOGLE_MAPS_CONFIG.marker.placeId;\n\n\t\t\t// URL pour ouvrir la fiche Google Maps complète\n\t\t\tlet googleMapsUrl;\n\t\t\tif (placeId && placeId !== \"ChIJXXXXXXXXXXXXXXXXXXXX\") {\n\t\t\t\t// Utiliser le Place ID pour ouvrir la fiche complète\n\t\t\t\tgoogleMapsUrl = `https://www.google.com/maps/place/?q=place_id:${placeId}`;\n\t\t\t} else {\n\t\t\t\t// Fallback avec l'adresse\n\t\t\t\tconst address = encodeURIComponent(GOOGLE_MAPS_CONFIG.marker.address);\n\t\t\t\tgoogleMapsUrl = `https://www.google.com/maps/search/?api=1&query=${address}`;\n\t\t\t}\n\n\t\t\t// Ouvrir dans un nouvel onglet\n\t\t\twindow.open(googleMapsUrl, \"_blank\");\n\t\t});\n\n\t\t// Mark as initialized\n\t\tmapElement.dataset.initialized = \"true\";\n\t});\n}\n\n/**\n * Load Google Maps API and initialize maps\n */\nfunction loadGoogleMapsAPI() {\n\t// Check if Google Maps is already loaded\n\tif (typeof google !== \"undefined\" && google.maps) {\n\t\tinitializeCarhopMaps();\n\t\treturn;\n\t}\n\n\t// Check if script is already loading\n\tif (window.carhopMapsLoading) {\n\t\twindow.carhopMapsCallbacks = window.carhopMapsCallbacks || [];\n\t\twindow.carhopMapsCallbacks.push(initializeCarhopMaps);\n\t\treturn;\n\t}\n\n\t// Mark as loading\n\twindow.carhopMapsLoading = true;\n\twindow.carhopMapsCallbacks = [initializeCarhopMaps];\n\n\t// Create callback function\n\twindow.carhopMapsReady = function () {\n\t\twindow.carhopMapsLoading = false;\n\t\tif (window.carhopMapsCallbacks) {\n\t\t\twindow.carhopMapsCallbacks.forEach((callback) => callback());\n\t\t\twindow.carhopMapsCallbacks = [];\n\t\t}\n\t};\n\n\t// Load Google Maps API\n\tconst script = document.createElement(\"script\");\n\tscript.src = `https://maps.googleapis.com/maps/api/js?key=${GOOGLE_MAPS_CONFIG.apiKey}&callback=carhopMapsReady`;\n\tscript.async = true;\n\tscript.defer = true;\n\tdocument.head.appendChild(script);\n}\n\n// Initialize when DOM is ready\nif (document.readyState === \"loading\") {\n\tdocument.addEventListener(\"DOMContentLoaded\", loadGoogleMapsAPI);\n} else {\n\tloadGoogleMapsAPI();\n}\n\n// Also initialize on window load as fallback\nwindow.addEventListener(\"load\", loadGoogleMapsAPI);\n"],"names":["GOOGLE_MAPS_CONFIG","apiKey","center","lat","lng","zoom","marker","title","address","placeId","color","styles","featureType","elementType","stylers","gamma","lightness","saturation","visibility","weight","initializeCarhopMaps","mapContainers","document","querySelectorAll","forEach","container","mapElement","querySelector","dataset","initialized","map","google","maps","Map","LatLng","zoomControl","zoomControlOptions","position","ControlPosition","RIGHT_TOP","style","ZoomControlStyle","DEFAULT","mapTypeControl","streetViewControl","fullscreenControl","customPinPath","Marker","icon","url","scaledSize","Size","origin","Point","anchor","addListener","googleMapsUrl","encodeURIComponent","window","open","loadGoogleMapsAPI","carhopMapsLoading","carhopMapsCallbacks","push","carhopMapsReady","callback","script","createElement","src","async","defer","head","appendChild","readyState","addEventListener"],"sourceRoot":""}
\ No newline at end of file
diff --git a/plugins/carhop-blocks/blocks/localisation-map/package.json b/plugins/carhop-blocks/blocks/localisation-map/package.json
index 82782ff..28bca1d 100644
--- a/plugins/carhop-blocks/blocks/localisation-map/package.json
+++ b/plugins/carhop-blocks/blocks/localisation-map/package.json
@@ -6,15 +6,16 @@
"license": "GPL-2.0-or-later",
"main": "build/index.js",
"scripts": {
- "build": "wp-scripts build --blocks-manifest",
+ "build": "wp-scripts build --blocks-manifest && npm run copy-assets",
+ "copy-assets": "cp src/localisation-map/carhop-pin.png build/localisation-map/",
"format": "wp-scripts format",
"lint:css": "wp-scripts lint-style",
"lint:js": "wp-scripts lint-js",
"packages-update": "wp-scripts packages-update",
"plugin-zip": "wp-scripts plugin-zip",
- "start": "wp-scripts start --blocks-manifest"
+ "start": "wp-scripts start --blocks-manifest && npm run copy-assets"
},
"devDependencies": {
"@wordpress/scripts": "^30.25.0"
}
-}
+}
\ No newline at end of file
diff --git a/plugins/carhop-blocks/blocks/localisation-map/src/localisation-map/render.php b/plugins/carhop-blocks/blocks/localisation-map/src/localisation-map/render.php
index d69fc98..a68eee1 100644
--- a/plugins/carhop-blocks/blocks/localisation-map/src/localisation-map/render.php
+++ b/plugins/carhop-blocks/blocks/localisation-map/src/localisation-map/render.php
@@ -8,6 +8,6 @@
$unique_id = 'carhop-map-' . uniqid();
?>
-
\ No newline at end of file
+
\ No newline at end of file
diff --git a/plugins/carhop-blocks/blocks/localisation-map/src/localisation-map/style.scss b/plugins/carhop-blocks/blocks/localisation-map/src/localisation-map/style.scss
index 8bb007c..f26283b 100644
--- a/plugins/carhop-blocks/blocks/localisation-map/src/localisation-map/style.scss
+++ b/plugins/carhop-blocks/blocks/localisation-map/src/localisation-map/style.scss
@@ -4,10 +4,9 @@
content: none !important;
}
margin: 0 auto;
- width: 800px;
+ width: 1200px;
height: 500px;
background-color: var(--wp--preset--color--primary);
- border-radius: 8px;
overflow: hidden;
// Loading state
diff --git a/plugins/carhop-blocks/blocks/localisation-map/src/localisation-map/view.js b/plugins/carhop-blocks/blocks/localisation-map/src/localisation-map/view.js
index 06acf9f..50c3fc2 100644
--- a/plugins/carhop-blocks/blocks/localisation-map/src/localisation-map/view.js
+++ b/plugins/carhop-blocks/blocks/localisation-map/src/localisation-map/view.js
@@ -16,6 +16,7 @@ const GOOGLE_MAPS_CONFIG = {
title: "Carhop",
address: "Av. de la Houssière 80, 7090 Braine-le-Comte",
placeId: "ChIJ41pZLUq1w0cRjXw8zlHnvXI", // Place ID Google Maps (à remplacer par le vrai)
+
color: "green",
},
styles: [
@@ -424,46 +425,10 @@ function initializeCarhopMaps() {
streetViewControl: false, // Contrôle Street View
fullscreenControl: false, // Bouton plein écran
});
+ // Chemin vers votre pin personnalisé avec fallback
+ const customPinPath =
+ "/wp-content/plugins/carhop-blocks/blocks/localisation-map/src/localisation-map/carhop-pin.png";
- // Créer une InfoWindow pour afficher les informations
- const infoWindow = new google.maps.InfoWindow();
-
- // Optionnel : Utiliser le Place ID pour obtenir les détails du lieu
- const service = new google.maps.places.PlacesService(map);
- const placeId = GOOGLE_MAPS_CONFIG.marker.placeId;
- let placeDetails = null;
-
- if (placeId && placeId !== "ChIJXXXXXXXXXXXXXXXXXXXX") {
- service.getDetails(
- {
- placeId: placeId,
- fields: [
- "name",
- "geometry",
- "formatted_address",
- "photos",
- "rating",
- "formatted_phone_number",
- "website",
- "opening_hours",
- ],
- },
- (place, status) => {
- if (
- status === google.maps.places.PlacesServiceStatus.OK &&
- place.geometry
- ) {
- // Centrer la carte sur le lieu exact
- map.setCenter(place.geometry.location);
- placeDetails = place;
- console.log("Lieu trouvé:", place.name, place.formatted_address);
- }
- },
- );
- }
- // Chemin vers votre pin personnalisé (à ajuster selon votre structure)
- const image =
- "/wp-content/plugins/carhop-blocks/blocks/localisation-map/build/localisation-map/carhop-pin.png";
// Add marker with custom color
const marker = new google.maps.Marker({
position: new google.maps.LatLng(
@@ -472,71 +437,33 @@ function initializeCarhopMaps() {
),
map: map,
title: GOOGLE_MAPS_CONFIG.marker.title,
- icon: image,
+ icon: {
+ url: customPinPath,
+ scaledSize: new google.maps.Size(40, 40), // Taille du pin
+ origin: new google.maps.Point(0, 0),
+ anchor: new google.maps.Point(20, 40), // Point d'ancrage (centre bas)
+ },
});
- // Add click event to show InfoWindow
+ // Add click event to open Google Maps place
marker.addListener("click", function () {
- let content = ``;
+ const placeId = GOOGLE_MAPS_CONFIG.marker.placeId;
- if (placeDetails) {
- // Utiliser les détails du lieu Google Maps
- content += `
${
- placeDetails.name || GOOGLE_MAPS_CONFIG.marker.title
- }
`;
-
- if (placeDetails.formatted_address) {
- content += `
Adresse: ${placeDetails.formatted_address}
`;
- }
-
- if (placeDetails.formatted_phone_number) {
- content += `
Téléphone: ${placeDetails.formatted_phone_number}
`;
- }
-
- if (placeDetails.rating) {
- content += `
Note: ${placeDetails.rating}/5 ⭐
`;
- }
-
- if (placeDetails.website) {
- content += `
Site web
`;
- }
-
- // Bouton pour ouvrir dans Google Maps
- content += `
`;
+ // URL pour ouvrir la fiche Google Maps complète
+ let googleMapsUrl;
+ if (placeId && placeId !== "ChIJXXXXXXXXXXXXXXXXXXXX") {
+ // Utiliser le Place ID pour ouvrir la fiche complète
+ googleMapsUrl = `https://www.google.com/maps/place/?q=place_id:${placeId}`;
} else {
- // Fallback avec les informations de base
- content += `
${GOOGLE_MAPS_CONFIG.marker.title}
`;
- content += `
Adresse: ${GOOGLE_MAPS_CONFIG.marker.address}
`;
-
- // Bouton pour ouvrir dans Google Maps
+ // Fallback avec l'adresse
const address = encodeURIComponent(GOOGLE_MAPS_CONFIG.marker.address);
- content += `
`;
+ googleMapsUrl = `https://www.google.com/maps/search/?api=1&query=${address}`;
}
- content += `
`;
-
- infoWindow.setContent(content);
- infoWindow.open(map, marker);
+ // Ouvrir dans un nouvel onglet
+ window.open(googleMapsUrl, "_blank");
});
- // Optionnel : Ouvrir automatiquement l'InfoWindow au chargement
- // Décommentez les lignes suivantes si vous voulez ouvrir le popup automatiquement
- /*
- setTimeout(() => {
- marker.trigger('click');
- }, 1500); // Attendre 1.5 secondes après le chargement
- */
-
// Mark as initialized
mapElement.dataset.initialized = "true";
});
@@ -574,7 +501,7 @@ function loadGoogleMapsAPI() {
// Load Google Maps API
const script = document.createElement("script");
- script.src = `https://maps.googleapis.com/maps/api/js?key=${GOOGLE_MAPS_CONFIG.apiKey}&libraries=places&callback=carhopMapsReady`;
+ script.src = `https://maps.googleapis.com/maps/api/js?key=${GOOGLE_MAPS_CONFIG.apiKey}&callback=carhopMapsReady`;
script.async = true;
script.defer = true;
document.head.appendChild(script);