From 6a6b2300c470449556f64c74669446f04459b0b1 Mon Sep 17 00:00:00 2001 From: Romain Monteil Date: Wed, 1 Oct 2025 16:39:39 +0200 Subject: [PATCH] [Map] Display warning when trying to define a custom icon for a `Marker` that already has an `Icon` --- src/Map/src/Bridge/Google/CHANGELOG.md | 4 ++++ src/Map/src/Bridge/Google/assets/dist/map_controller.js | 5 +++++ src/Map/src/Bridge/Google/assets/src/map_controller.ts | 6 ++++++ src/Map/src/Bridge/Leaflet/CHANGELOG.md | 4 ++++ src/Map/src/Bridge/Leaflet/assets/dist/map_controller.js | 5 +++++ src/Map/src/Bridge/Leaflet/assets/src/map_controller.ts | 6 ++++++ 6 files changed, 30 insertions(+) diff --git a/src/Map/src/Bridge/Google/CHANGELOG.md b/src/Map/src/Bridge/Google/CHANGELOG.md index 0cb3e3f1aec..bcaec6f1655 100644 --- a/src/Map/src/Bridge/Google/CHANGELOG.md +++ b/src/Map/src/Bridge/Google/CHANGELOG.md @@ -1,5 +1,9 @@ # CHANGELOG +## 2.31 + +- Display a warning when trying to define `bridgeOptions.content` for a `Marker` that already has an `Icon` + ## 2.30 - Ensure compatibility with PHP 8.5 diff --git a/src/Map/src/Bridge/Google/assets/dist/map_controller.js b/src/Map/src/Bridge/Google/assets/dist/map_controller.js index 9efc9a6b78b..edd7e374da2 100644 --- a/src/Map/src/Bridge/Google/assets/dist/map_controller.js +++ b/src/Map/src/Bridge/Google/assets/dist/map_controller.js @@ -248,6 +248,11 @@ var map_controller_default = class extends abstract_map_controller_default { this.createInfoWindow({ definition: infoWindow, element: marker }); } if (icon) { + if (Object.prototype.hasOwnProperty.call(bridgeOptions, "content")) { + console.warn('[Symfony UX Map] Defining "bridgeOptions.content" for a marker with a custom icon is not supported and will be ignored.'); + } else if (Object.prototype.hasOwnProperty.call(rawOptions, "content")) { + console.warn('[Symfony UX Map] Defining "rawOptions.content" for a marker with a custom icon is not supported and will be ignored.'); + } this.doCreateIcon({ definition: icon, element: marker }); } return marker; diff --git a/src/Map/src/Bridge/Google/assets/src/map_controller.ts b/src/Map/src/Bridge/Google/assets/src/map_controller.ts index b03a35fc553..64a4e8efa87 100644 --- a/src/Map/src/Bridge/Google/assets/src/map_controller.ts +++ b/src/Map/src/Bridge/Google/assets/src/map_controller.ts @@ -188,6 +188,12 @@ export default class extends AbstractMapController< } if (icon) { + if (Object.prototype.hasOwnProperty.call(bridgeOptions, 'content')) { + console.warn('[Symfony UX Map] Defining "bridgeOptions.content" for a marker with a custom icon is not supported and will be ignored.'); + } else if (Object.prototype.hasOwnProperty.call(rawOptions, 'content')) { + console.warn('[Symfony UX Map] Defining "rawOptions.content" for a marker with a custom icon is not supported and will be ignored.'); + } + this.doCreateIcon({ definition: icon, element: marker }); } diff --git a/src/Map/src/Bridge/Leaflet/CHANGELOG.md b/src/Map/src/Bridge/Leaflet/CHANGELOG.md index 1e67ab13109..7e9c057b040 100644 --- a/src/Map/src/Bridge/Leaflet/CHANGELOG.md +++ b/src/Map/src/Bridge/Leaflet/CHANGELOG.md @@ -1,5 +1,9 @@ # CHANGELOG +## 2.31 + +- Display a warning when trying to define `bridgeOptions.icon` for a `Marker` that already has an `Icon` + ## 2.30 - Ensure compatibility with PHP 8.5 diff --git a/src/Map/src/Bridge/Leaflet/assets/dist/map_controller.js b/src/Map/src/Bridge/Leaflet/assets/dist/map_controller.js index df3c4c1c9d7..de31328246c 100644 --- a/src/Map/src/Bridge/Leaflet/assets/dist/map_controller.js +++ b/src/Map/src/Bridge/Leaflet/assets/dist/map_controller.js @@ -228,6 +228,11 @@ var map_controller_default = class extends abstract_map_controller_default { this.createInfoWindow({ definition: infoWindow, element: marker2 }); } if (icon2) { + if (Object.prototype.hasOwnProperty.call(bridgeOptions, "icon")) { + console.warn('[Symfony UX Map] Defining "bridgeOptions.icon" for a marker with a custom icon is not supported and will be ignored.'); + } else if (Object.prototype.hasOwnProperty.call(rawOptions, "icon")) { + console.warn('[Symfony UX Map] Defining "rawOptions.icon" for a marker with a custom icon is not supported and will be ignored.'); + } this.doCreateIcon({ definition: icon2, element: marker2 }); } return marker2; diff --git a/src/Map/src/Bridge/Leaflet/assets/src/map_controller.ts b/src/Map/src/Bridge/Leaflet/assets/src/map_controller.ts index 52efd4405b3..b42d2d38957 100644 --- a/src/Map/src/Bridge/Leaflet/assets/src/map_controller.ts +++ b/src/Map/src/Bridge/Leaflet/assets/src/map_controller.ts @@ -154,6 +154,12 @@ export default class extends AbstractMapController< } if (icon) { + if (Object.prototype.hasOwnProperty.call(bridgeOptions, 'icon')) { + console.warn('[Symfony UX Map] Defining "bridgeOptions.icon" for a marker with a custom icon is not supported and will be ignored.'); + } else if (Object.prototype.hasOwnProperty.call(rawOptions, 'icon')) { + console.warn('[Symfony UX Map] Defining "rawOptions.icon" for a marker with a custom icon is not supported and will be ignored.'); + } + this.doCreateIcon({ definition: icon, element: marker }); }