diff --git a/src/app/map/components/map.component.scss b/src/app/map/components/map.component.scss index 07f80bbd7b20aaa67201d3021b9e9ef940317ba3..2da18137b39d352f0a3123a470c164de3791f37f 100644 --- a/src/app/map/components/map.component.scss +++ b/src/app/map/components/map.component.scss @@ -87,10 +87,13 @@ } &:hover { svg { - fill: $red-info; + fill: $blue-hover; &.mdm { fill: #bd9e6a; } + &.france-service { + fill: $red-info; + } } } } diff --git a/src/app/map/components/map.component.ts b/src/app/map/components/map.component.ts index d3871abcfaf3293dfc5e1e6030895ad3920d1969..13335af944c9d9007955575b6678f7e88dfa3ade 100644 --- a/src/app/map/components/map.component.ts +++ b/src/app/map/components/map.component.ts @@ -82,33 +82,51 @@ export class MapComponent implements OnChanges { if (changes.toogleToolTipId && changes.toogleToolTipId.currentValue !== changes.toogleToolTipId.previousValue) { if (changes.toogleToolTipId.previousValue !== undefined) { if (this.isToPrint(changes.toogleToolTipId.previousValue)) { - this.mapService.setAddedToListMarker(changes.toogleToolTipId.previousValue); + this.mapService.setAddedToListMarker( + changes.toogleToolTipId.previousValue, + this.getMarkerTypeByStructureId(changes.toogleToolTipId.previousValue) + ); } else { - this.mapService.setUnactiveMarker(changes.toogleToolTipId.previousValue); + this.mapService.setUnactiveMarker( + changes.toogleToolTipId.previousValue, + this.getMarkerTypeByStructureId(changes.toogleToolTipId.previousValue) + ); } } if (changes.toogleToolTipId.currentValue !== undefined) { - this.mapService.setActiveMarker(changes.toogleToolTipId.currentValue); + this.mapService.setActiveMarker( + changes.toogleToolTipId.currentValue, + this.getMarkerTypeByStructureId(changes.toogleToolTipId.currentValue) + ); } } // Handle map marker selection if (changes.selectedMarkerId && this.map) { this.map.closePopup(); if (changes.selectedMarkerId.currentValue === undefined) { - this.mapService.setDefaultMarker(changes.selectedMarkerId.previousValue); + this.mapService.setDefaultMarker( + changes.selectedMarkerId.previousValue, + this.getMarkerTypeByStructureId(changes.selectedMarkerId.previousValue) + ); this.map.setView(this.mapOptions.center, this.mapOptions.zoom); } else { - this.mapService.setSelectedMarker(changes.selectedMarkerId.currentValue); + this.mapService.setSelectedMarker( + changes.selectedMarkerId.currentValue, + this.getMarkerTypeByStructureId(changes.selectedMarkerId.currentValue) + ); this.centerLeafletMapOnMarker(changes.selectedMarkerId.currentValue); } } if (changes.structuresToPrint) { if (changes.structuresToPrint.currentValue < changes.structuresToPrint.previousValue) { - this.mapService.setUnactiveMarker(this.toogleToolTipId); + this.mapService.setUnactiveMarker( + this.toogleToolTipId, + this.getMarkerTypeByStructureId(changes.structuresToPrint.previousValue) + ); } this.structuresToPrint.forEach((structure: Structure) => { - this.mapService.setAddedToListMarker(structure._id); + this.mapService.setAddedToListMarker(structure._id, this.getMarkerTypeByStructureId(structure._id)); }); } } @@ -142,9 +160,8 @@ export class MapComponent implements OnChanges { this.map = this.mapService.cleanMap(this.map); this.getStructuresPositions(this.structures); this.structuresToPrint.forEach((structure: Structure) => { - this.mapService.setAddedToListMarker(structure._id); + this.mapService.setAddedToListMarker(structure._id, this.getMarkerTypeByStructureId(structure._id)); }); - } } @@ -152,13 +169,33 @@ export class MapComponent implements OnChanges { return this.structuresToPrint.findIndex((elem) => elem._id == id) > -1 ? true : false; } + /** + * Returns according marker type base on {MarkerType} + * @param {Structure} structure + * @returns {MarkerType} + */ + private getMarkerType(structure: Structure): MarkerType { + return structure.labelsQualifications.includes('conseillerNumFranceServices') + ? MarkerType.conseillerFrance + : MarkerType.structure; + } + + /** + * Return the map marker type given a structure id + * @param {string} id - Structure id + * @returns {MarkerType} + */ + private getMarkerTypeByStructureId(id: string): MarkerType { + return this.getMarkerType(this.structures.find((structure) => structure._id === id)); + } + private getStructuresPositions(structureList: Structure[]): void { structureList.forEach((structure: Structure) => { this.mapService .createMarker( structure.getLat(), structure.getLon(), - MarkerType.structure, + this.getMarkerType(structure), structure._id, this.buildToolTip(structure) ) diff --git a/src/app/map/components/markerType.enum.ts b/src/app/map/components/markerType.enum.ts index 28a427b55b4bb4012d354b7a4947db5819683d46..9d6c395c7d5ad7d50a22fa3d664827da05c7c335 100644 --- a/src/app/map/components/markerType.enum.ts +++ b/src/app/map/components/markerType.enum.ts @@ -1,4 +1,5 @@ export enum MarkerType { structure = 0, mdm = 1, + conseillerFrance = 2, } diff --git a/src/app/map/services/map.service.ts b/src/app/map/services/map.service.ts index 9657aac8411ff2321d03b4d2fbf6fe325e6f626e..8b4dfbc0cfd99b91dea560241294b53f8c4ea65d 100644 --- a/src/app/map/services/map.service.ts +++ b/src/app/map/services/map.service.ts @@ -1,48 +1,24 @@ -import { HttpClient } from '@angular/common/http'; import { Injectable } from '@angular/core'; -import { DivIcon, divIcon, Map } from 'leaflet'; -import { Marker } from 'leaflet'; -import { Observable } from 'rxjs'; +import { DivIcon, divIcon, Map, Marker } from 'leaflet'; import { MarkerType } from '../components/markerType.enum'; -import { AddressGeometry } from '../models/addressGeometry.model'; - +import { + markerIcon, + markerIconActive, + markerIconAddedToList, + markerIconFranceService, + markerIconFranceServiceActive, + markerIconFranceServiceAddedToList, + markerIconFranceServiceHover, + markerIconHover, + markerIconMdm, + markerIconMdmActive, +} from './marker'; @Injectable({ providedIn: 'root', }) export class MapService { private static markersList = {}; private isMarkerActive = false; - public markerIconActive = divIcon({ - className: null, - html: '<svg width="40" height="46" fill="#A00000"><use xlink:href="assets/ico/sprite.svg#map-marker"></use></svg>', - iconSize: [40, 46], - iconAnchor: [20, 46], - popupAnchor: [0, -46], - }); - public markerIconAddedToList = divIcon({ - className: null, - html: - '<svg width="40" height="46" fill="#47C562" stroke="#fff" stroke-width="2"><use xlink:href="assets/ico/sprite.svg#map-marker-added"></use></svg>', - iconSize: [40, 46], - iconAnchor: [20, 46], - popupAnchor: [0, -46], - }); - public markerIcon = divIcon({ - className: null, - html: - '<svg width="40" height="46" fill="#348899" stroke="#fff" stroke-width="2"><use xlink:href="assets/ico/sprite.svg#map-marker"></use></svg>', - iconSize: [40, 46], - iconAnchor: [20, 46], - popupAnchor: [0, -46], - }); - public markerIconMdm = divIcon({ - className: null, - html: - '<svg width="19" height="24" fill="#D4C4A9" class="mdm"><use xlink:href="assets/ico/sprite.svg#mdm"></use></svg>', - iconSize: [19, 24], - iconAnchor: [9, 0], - }); - constructor(private http: HttpClient) {} public createMarker(lat: number, lon: number, markerType: MarkerType, id?: string, tooltip?: string): Marker { const marker = new Marker([lat, lon], { @@ -53,10 +29,20 @@ export class MapService { evt.target.openPopup(); }); + // handle icon change when select marker + marker.on('click', (evt) => { + evt.target.setIcon(this.getActiveMarkerIcon(markerType)); + }); + if (tooltip) { marker.bindPopup(tooltip, { autoPan: false, }); + + // handle icon change when unselect + marker.getPopup().on('remove', (evt) => { + marker.setIcon(this.getMarkerIcon(markerType)); + }); } if (id) { @@ -75,27 +61,55 @@ export class MapService { private getMarkerIcon(markerType: MarkerType): DivIcon { if (markerType === MarkerType.mdm) { - return this.markerIconMdm; + return markerIconMdm; + } else if (markerType === MarkerType.conseillerFrance) { + return markerIconFranceService; + } else { + return markerIcon; + } + } + + private getActiveMarkerIcon(markerType: MarkerType): DivIcon { + if (markerType === MarkerType.mdm) { + return markerIconMdmActive; + } else if (markerType === MarkerType.conseillerFrance) { + return markerIconFranceServiceActive; } else { - return this.markerIcon; + return markerIconActive; + } + } + + private getAddedToListMarkerIcon(markerType: MarkerType): DivIcon { + if (markerType === MarkerType.conseillerFrance) { + return markerIconFranceServiceAddedToList; + } else { + return markerIconAddedToList; + } + } + + private getHoverMarkerIcon(markerType: MarkerType): DivIcon { + if (markerType === MarkerType.conseillerFrance) { + return markerIconFranceServiceHover; + } else { + return markerIconHover; } } /** * @param id marker id */ - public setActiveMarker(id: string): void { - this.getMarker(id).setIcon(this.markerIconActive); + public setActiveMarker(id: string, type: MarkerType = MarkerType.structure): void { + this.getMarker(id).setIcon(this.getHoverMarkerIcon(type)); } - public setAddedToListMarker(id: string): void { - this.getMarker(id).setIcon(this.markerIconAddedToList); + public setAddedToListMarker(id: string, type: MarkerType = MarkerType.structure): void { + this.getMarker(id).setIcon(this.getAddedToListMarkerIcon(type)); } - public setUnactiveMarker(id: string): void { + public setUnactiveMarker(id: string, type: MarkerType = MarkerType.structure): void { // To skip mouseleave when user emit click on structure list if (!this.isMarkerActive) { - this.getMarker(id).setIcon(this.getMarkerIcon(MarkerType.structure)); + this.getMarker(id).setIcon(this.getMarkerIcon(type)); } this.isMarkerActive = false; } @@ -114,9 +128,9 @@ export class MapService { * @param id markerId * @param html html to display */ - public setSelectedMarker(id: string): void { + public setSelectedMarker(id: string, type: MarkerType = MarkerType.structure): void { if (id) { - this.getMarker(id).setIcon(this.markerIconActive); + this.getMarker(id).setIcon(this.getActiveMarkerIcon(type)); this.isMarkerActive = true; } } @@ -126,16 +140,9 @@ export class MapService { * @param id markerId * @param html html to display */ - public setDefaultMarker(id: string): void { + public setDefaultMarker(id: string, type: MarkerType = MarkerType.structure): void { if (id) { - const markerIcon = divIcon({ - className: null, - html: - '<svg width="40" height="46" fill="#348899" stroke="#fff" stroke-width="2"><use xlink:href="assets/ico/sprite.svg#map-marker"></use></svg>', - iconSize: [35, 41], - iconAnchor: [13, 41], - }); - this.getMarker(id).setIcon(markerIcon); + this.getMarker(id).setIcon(this.getMarkerIcon(type)); } } diff --git a/src/app/map/services/marker.ts b/src/app/map/services/marker.ts new file mode 100644 index 0000000000000000000000000000000000000000..b33008e4e0c0746c02e1e73b4964bf7baadcee2b --- /dev/null +++ b/src/app/map/services/marker.ts @@ -0,0 +1,73 @@ +import { divIcon } from 'leaflet'; + +export const markerIcon = divIcon({ + className: null, + html: '<svg width="48" height="48" fill="#348899"><use xlink:href="assets/ico/sprite.svg#map-marker"></use></svg>', + iconSize: [48, 48], + iconAnchor: [24, 48], + popupAnchor: [0, -48], +}); +export const markerIconActive = divIcon({ + className: null, + html: '<svg width="48" height="48"><use xlink:href="assets/ico/sprite.svg#map-markerSelected"></use></svg>', + iconSize: [48, 48], + iconAnchor: [24, 48], + popupAnchor: [0, -48], +}); +export const markerIconHover = divIcon({ + className: null, + html: '<svg width="48" height="48"><use xlink:href="assets/ico/sprite.svg#map-markerHover"></use></svg>', + iconSize: [48, 48], + iconAnchor: [24, 48], + popupAnchor: [0, -48], +}); +export const markerIconAddedToList = divIcon({ + className: null, + html: '<svg width="48" height="48"><use xlink:href="assets/ico/sprite.svg#map-marker-added"></use></svg>', + iconSize: [48, 48], + iconAnchor: [24, 48], + popupAnchor: [0, -48], +}); +export const markerIconMdm = divIcon({ + className: null, + html: + '<svg width="19" height="24" fill="#D4C4A9" class="mdm"><use xlink:href="assets/ico/sprite.svg#mdm"></use></svg>', + iconSize: [19, 24], + iconAnchor: [9, 0], +}); +export const markerIconMdmActive = divIcon({ + className: null, + html: '<svg width="19" height="24"><use xlink:href="assets/ico/sprite.svg#mdmActive"></use></svg>', + iconSize: [19, 24], + iconAnchor: [9, 0], +}); +export const markerIconFranceService = divIcon({ + className: null, + html: + '<svg width="48" height="48" fill="#ED3939" class="france-service"><use xlink:href="assets/ico/sprite.svg#conseillerFranceService"></use></svg>', + iconSize: [48, 48], + iconAnchor: [24, 48], + popupAnchor: [0, -48], +}); +export const markerIconFranceServiceActive = divIcon({ + className: null, + html: + '<svg width="48" height="48"><use xlink:href="assets/ico/sprite.svg#conseillerFranceServiceSelected"></use></svg>', + iconSize: [48, 48], + iconAnchor: [24, 48], + popupAnchor: [0, -48], +}); +export const markerIconFranceServiceHover = divIcon({ + className: null, + html: '<svg width="48" height="48"><use xlink:href="assets/ico/sprite.svg#conseillerFranceServiceHover"></use></svg>', + iconSize: [48, 48], + iconAnchor: [24, 48], + popupAnchor: [0, -48], +}); +export const markerIconFranceServiceAddedToList = divIcon({ + className: null, + html: '<svg width="48" height="48"><use xlink:href="assets/ico/sprite.svg#conseillerFranceServiceAdded"></use></svg>', + iconSize: [48, 48], + iconAnchor: [24, 48], + popupAnchor: [0, -48], +}); diff --git a/src/assets/ico/sprite.svg b/src/assets/ico/sprite.svg index aedc0249dbaa3a6dcaf02af8910115f1f4d2eb33..c86bb8603c610a3b47d673534f2eff2a86e9cdf4 100644 --- a/src/assets/ico/sprite.svg +++ b/src/assets/ico/sprite.svg @@ -1,5 +1,22 @@ <svg xmlns="http://www.w3.org/2000/svg"> -<symbol id="map-marker" viewBox="0 0 50 50" xmlns="http://www.w3.org/2000/svg"><path d="M19.72 43.73l.706.66.683-.683c2.038-2.04 4.04-3.864 5.934-5.588l.179-.163c6.32-5.755 11.624-10.585 11.624-18.493C38.846 9.267 30.59 1 20.402 1 10.214 1 1.957 9.267 1.957 19.463c0 4.152 1.08 7.233 3.179 10.152 2.04 2.84 5.05 5.523 8.833 8.899l.078.07c1.717 1.531 3.607 3.217 5.672 5.147zm6.508-24.267a5.83 5.83 0 01-5.826 5.833 5.83 5.83 0 01-5.826-5.833 5.83 5.83 0 015.826-5.833 5.83 5.83 0 015.826 5.833z"/></symbol> +<symbol id="map-marker" viewBox="0 0 48 48" xmlns="http://www.w3.org/2000/svg"> +<path d="M23.74 45.7307L24.4466 46.3909L25.1301 45.7067C27.1682 43.6665 29.1698 41.8435 31.0637 40.1188L31.2426 39.9559C37.5627 34.201 42.8674 29.3707 42.8674 21.463C42.8674 11.2671 34.6104 3 24.4227 3C14.2349 3 5.97791 11.2671 5.97791 21.463C5.97791 25.615 7.05764 28.6957 9.15679 31.6153C11.1977 34.4541 14.2063 37.1381 17.9903 40.514L18.0681 40.5834C19.7853 42.1155 21.6751 43.8015 23.74 45.7307ZM30.2489 21.463C30.2489 24.6856 27.6394 27.2963 24.4227 27.2963C21.2059 27.2963 18.5965 24.6856 18.5965 21.463C18.5965 18.2403 21.2059 15.6296 24.4227 15.6296C27.6394 15.6296 30.2489 18.2403 30.2489 21.463Z" stroke="white" stroke-width="2"/> +</symbol> + +<symbol id="map-markerSelected" viewBox="0 0 48 48" fill="none" xmlns="http://www.w3.org/2000/svg"> +<path d="M23.74 45.7307L24.4466 46.3909L25.1301 45.7067C27.1682 43.6665 29.1698 41.8435 31.0637 40.1188L31.2426 39.9559C37.5627 34.201 42.8674 29.3707 42.8674 21.463C42.8674 11.2671 34.6104 3 24.4227 3C14.2349 3 5.97791 11.2671 5.97791 21.463C5.97791 25.615 7.05764 28.6957 9.15679 31.6153C11.1977 34.4541 14.2063 37.1381 17.9903 40.514L18.0681 40.5834C19.7853 42.1155 21.6751 43.8015 23.74 45.7307ZM30.2489 21.463C30.2489 24.6856 27.6394 27.2963 24.4227 27.2963C21.2059 27.2963 18.5965 24.6856 18.5965 21.463C18.5965 18.2403 21.2059 15.6296 24.4227 15.6296C27.6394 15.6296 30.2489 18.2403 30.2489 21.463Z" fill="#ED3939" stroke="white" stroke-width="2"/> +</symbol> + +<symbol id="map-markerHover" viewBox="0 0 48 48" fill="none" xmlns="http://www.w3.org/2000/svg"> +<path d="M23.74 45.7307L24.4466 46.3909L25.1301 45.7067C27.1682 43.6665 29.1698 41.8435 31.0637 40.1188L31.2426 39.9559C37.5627 34.201 42.8674 29.3707 42.8674 21.463C42.8674 11.2671 34.6104 3 24.4227 3C14.2349 3 5.97791 11.2671 5.97791 21.463C5.97791 25.615 7.05764 28.6957 9.15679 31.6153C11.1977 34.4541 14.2063 37.1381 17.9903 40.514L18.0681 40.5834C19.7853 42.1155 21.6751 43.8015 23.74 45.7307ZM30.2489 21.463C30.2489 24.6856 27.6394 27.2963 24.4227 27.2963C21.2059 27.2963 18.5965 24.6856 18.5965 21.463C18.5965 18.2403 21.2059 15.6296 24.4227 15.6296C27.6394 15.6296 30.2489 18.2403 30.2489 21.463Z" fill="#117083" stroke="white" stroke-width="2"/> +</symbol> + +<symbol id="map-marker-added" viewBox="0 0 48 48" fill="none" xmlns="http://www.w3.org/2000/svg"> +<path d="M23.74 45.7307L24.4466 46.3909L25.1301 45.7067C27.1682 43.6665 29.1698 41.8435 31.0637 40.1188L31.2426 39.9559C37.5627 34.201 42.8674 29.3707 42.8674 21.463C42.8674 11.2671 34.6104 3 24.4227 3C14.2349 3 5.97791 11.2671 5.97791 21.463C5.97791 25.615 7.05764 28.6957 9.15679 31.6153C11.1977 34.4541 14.2063 37.1381 17.9903 40.514L18.0681 40.5834C19.7853 42.1155 21.6751 43.8015 23.74 45.7307ZM30.2489 21.463C30.2489 24.6856 27.6394 27.2963 24.4227 27.2963C21.2059 27.2963 18.5965 24.6856 18.5965 21.463C18.5965 18.2403 21.2059 15.6296 24.4227 15.6296C27.6394 15.6296 30.2489 18.2403 30.2489 21.463Z" fill="#47C562" stroke="white" stroke-width="2"/> +<circle cx="24.5" cy="21.5" r="11.5" fill="white"/> +<path d="M32.3299 15.8789C31.7108 15.3285 30.7627 15.3843 30.2123 16.0035L23.0123 24.1034L18.9396 20.8308C18.2939 20.3118 17.3497 20.4147 16.8308 21.0604C16.3119 21.7062 16.4147 22.6504 17.0605 23.1693L22.2457 27.3359C22.8688 27.8367 23.7752 27.7607 24.3064 27.1632L32.4545 17.9966C33.0049 17.3774 32.9491 16.4293 32.3299 15.8789Z" fill="#47C562"/> +</symbol> + <symbol id="adress" viewBox="0 0 22 22" xmlns="http://www.w3.org/2000/svg"> <path fill-rule="evenodd" clip-rule="evenodd" d="M11 2C12.6055 2.0145 14.1397 2.68885 15.265 3.87463C16.3902 5.06042 17.0142 6.66048 16.9998 8.32269C16.9998 11.8208 12.1242 19 11 19C9.87584 19 5.00025 11.8208 5.00025 8.32269C4.98578 6.66048 5.60982 5.06042 6.73504 3.87463C7.86026 2.68885 9.39446 2.0145 11 2ZM10.9999 5.55695C12.0865 5.53677 13.0768 6.19906 13.5059 7.23274C13.9349 8.26643 13.7173 9.4661 12.9553 10.2683C12.1933 11.0704 11.0384 11.3157 10.0329 10.8888C9.02744 10.4619 8.37129 9.44779 8.37266 8.32272C8.36215 6.80858 9.53743 5.57133 10.9999 5.55695Z" fill="#333333"/> </symbol> @@ -17,7 +34,6 @@ <path d="M19 21C19.5523 21 20 20.5523 20 20V7C20 6.44772 19.5523 6 19 6H16V17C16 17.5523 15.5523 18 15 18H9V20C9 20.5523 9.44772 21 10 21H19Z" fill="#32383D"/> </symbol> - <symbol id="copy" viewBox="0 0 24 24" fill="none" xmlns="http://www.w3.org/2000/svg"> <path fill-rule="evenodd" clip-rule="evenodd" d="M4 4C4 3.44771 4.44772 3 5 3H14C14.5523 3 15 3.44772 15 4V6H9C8.44772 6 8 6.44772 8 7V18H5C4.44772 18 4 17.5523 4 17V4ZM10 7C9.44772 7 9 7.44772 9 8V20C9 20.5523 9.44771 21 10 21H19C19.5523 21 20 20.5523 20 20V8C20 7.44772 19.5523 7 19 7H10Z" fill="#32383D"/> </symbol> @@ -50,7 +66,6 @@ <path d="M18.0992 4.36723C17.7086 3.9767 17.0755 3.9767 16.6849 4.36723L13.1494 7.90276L9.61388 4.36723C9.22336 3.9767 8.59019 3.9767 8.19967 4.36723C7.80914 4.75775 7.80914 5.39092 8.19967 5.78144L11.7352 9.31698L8.19967 12.8525C7.80914 13.243 7.80914 13.8762 8.19967 14.2667C8.59019 14.6572 9.22336 14.6572 9.61388 14.2667L13.1494 10.7312L16.6849 14.2667C17.0755 14.6572 17.7086 14.6572 18.0992 14.2667C18.4897 13.8762 18.4897 13.243 18.0992 12.8525L14.5636 9.31698L18.0992 5.78144C18.4897 5.39092 18.4897 4.75775 18.0992 4.36723Z" fill="white"/> </symbol> - <symbol id="remove" viewBox="0 0 24 24" xmlns="http://www.w3.org/2000/svg"> <path d="M6.97363 12.9062C6.34733 12.9062 5.89876 12.7877 5.62793 12.5507C5.36556 12.3053 5.23438 11.9879 5.23438 11.5986C5.23438 11.2092 5.36556 10.8961 5.62793 10.6591C5.89876 10.4137 6.34733 10.2952 6.97363 10.3036C14.44 10.3036 10.571 10.3036 17.0156 10.3036C17.6419 10.3036 18.0863 10.4221 18.3486 10.6591C18.6195 10.8961 18.7549 11.2092 18.7549 11.5986C18.7549 11.9879 18.6195 12.3053 18.3486 12.5507C18.0863 12.7877 17.6419 12.9062 17.0156 12.9062C9.63742 12.9062 13.3678 12.9062 6.97363 12.9062Z" stroke="none"/> </symbol> @@ -206,7 +221,6 @@ <path fill-rule="evenodd" clip-rule="evenodd" d="M6 12C5.44772 12 5 12.4477 5 13V21H9V17H23V21H27V13C27 12.4477 26.5523 12 26 12H6Z"/> </symbol> - <symbol id="menu" viewBox="0 0 32 32" fill="none" xmlns="http://www.w3.org/2000/svg"> <rect x="5" y="9" width="23" height="2" rx="1" fill="#333333"/> <rect x="5" y="15" width="23" height="2" rx="1" fill="#333333"/> @@ -233,7 +247,6 @@ <path d="M16.9696 9.5759C18.0037 8.95863 18.6962 7.82861 18.6962 6.53684C18.6962 4.5835 17.1127 3 15.1593 3C13.206 3 11.6225 4.5835 11.6225 6.53684C11.6225 7.82861 12.315 8.95863 13.349 9.5759C11.81 10.2675 10.7383 11.8139 10.7383 13.6105V15.1579H19.5804V13.6105C19.5804 11.8139 18.5087 10.2675 16.9696 9.5759Z" stroke="none"/> </symbol> - <symbol id="calendar" viewBox="0 0 22 22" xmlns="http://www.w3.org/2000/svg"> <path d="M8 10H5V13H8V10Z" fill="#333333"/> <path fill-rule="evenodd" clip-rule="evenodd" d="M6 2C5.44772 2 5 2.44772 5 3V4H3C2.44772 4 2 4.44772 2 5V19C2 19.5523 2.44772 20 3 20H19C19.5523 20 20 19.5523 20 19V5C20 4.44772 19.5523 4 19 4H17V3C17 2.44772 16.5523 2 16 2C15.4477 2 15 2.44772 15 3V4H7V3C7 2.44772 6.55229 2 6 2ZM4 9V18H18V9H4Z" fill="#333333"/> @@ -254,6 +267,49 @@ <path fill-rule="evenodd" clip-rule="evenodd" d="M2.84054 5.57617C1.72559 6.04339 1 7.13416 1 8.34305V23H8V18.5C8 17.6716 8.67157 17 9.5 17C10.3284 17 11 17.6716 11 18.5V23H18V8.40362C18 7.1644 17.2381 6.05271 16.0823 5.60565L14.5555 5.01505C14.1291 4.85011 13.746 4.5899 13.4355 4.2543L10.9183 1.5332C10.1451 0.6974 8.83121 0.674761 8.0297 1.48343L5.19821 4.34018C4.92065 4.62023 4.5906 4.84281 4.22694 4.9952L2.84054 5.57617ZM11 4.5C11 5.32843 10.3284 6 9.5 6C8.67157 6 8 5.32843 8 4.5C8 3.67157 8.67157 3 9.5 3C10.3284 3 11 3.67157 11 4.5ZM4.25 15.9354C3.54057 16.0544 3 16.6714 3 17.4146V18.75H4.25V15.9354ZM3 21.9146V19.25H4.25V21.9146H3ZM4.75 21.9146V19.25H6V21.9146H4.75ZM6 17.4146V18.75H4.75V15.9354C5.45943 16.0544 6 16.6714 6 17.4146ZM13 17.4146C13 16.6714 13.5406 16.0544 14.25 15.9354V18.75H13V17.4146ZM13 19.25V21.9146H14.25V19.25H13ZM14.75 19.25V21.9146H16V19.25H14.75ZM16 18.75V17.4146C16 16.6714 15.4594 16.0544 14.75 15.9354V18.75H16ZM14.25 8C13.5406 8.11902 13 8.73601 13 9.47926V10.8146H14.25V8ZM13 13.9793V11.3146H14.25V13.9793H13ZM14.75 13.9793V11.3146H16V13.9793H14.75ZM16 9.47926V10.8146H14.75V8C15.4594 8.11902 16 8.73601 16 9.47926ZM8 9.47926C8 8.73601 8.54057 8.11902 9.25 8V10.8146H8V9.47926ZM8 11.3146V13.9793H9.25V11.3146H8ZM9.75 11.3146V13.9793H11V11.3146H9.75ZM11 10.8146V9.47926C11 8.73601 10.4594 8.11902 9.75 8V10.8146H11ZM4.25 8C3.54057 8.11902 3 8.73601 3 9.47926V10.8146H4.25V8ZM3 13.9793V11.3146H4.25V13.9793H3ZM4.75 13.9793V11.3146H6V13.9793H4.75ZM6 9.47926V10.8146H4.75V8C5.45943 8.11902 6 8.73601 6 9.47926Z" stroke="none"/> </symbol> +<symbol id="mdm" viewBox="0 0 18 24" fill="none" xmlns="http://www.w3.org/2000/svg"> +<path fill-rule="evenodd" clip-rule="evenodd" d="M0 23.1087V7.95171C0 6.54134 0.84652 5.26877 2.1473 4.72368L3.5337 4.14271C3.83675 4.01572 4.11179 3.83024 4.34309 3.59687L7.17458 0.740107C8.17647 -0.270723 9.81889 -0.242424 10.7854 0.802322L13.3026 3.52342C13.5613 3.80309 13.8805 4.01994 14.2359 4.15738L15.7627 4.74798C17.1111 5.26956 18 6.56652 18 8.01228V23.1087H10V18.1087C10 17.5564 9.55229 17.1087 9 17.1087C8.44772 17.1087 8 17.5564 8 18.1087V23.1087H0ZM10.5 22.6087V18.1087C10.5 17.2802 9.82843 16.6087 9 16.6087C8.17157 16.6087 7.5 17.2802 7.5 18.1087V22.6087H0.5V7.95171C0.5 6.74282 1.22559 5.65205 2.34054 5.18483L3.72694 4.60386C4.0906 4.45147 4.42065 4.22889 4.69821 3.94885L7.5297 1.09209C8.33121 0.283422 9.64515 0.306061 10.4183 1.14186L12.9355 3.86296C13.246 4.19857 13.6291 4.45878 14.0555 4.62371L15.5823 5.21431C16.7381 5.66137 17.5 6.77306 17.5 8.01228V22.6087H10.5Z" fill="white"/> +<path fill-rule="evenodd" clip-rule="evenodd" d="M2.34054 5.18483C1.22559 5.65205 0.5 6.74282 0.5 7.95171V22.6087L7.5 22.6087V18.1087C7.5 17.2802 8.17157 16.6087 9 16.6087C9.82843 16.6087 10.5 17.2802 10.5 18.1087V22.6087L17.5 22.6087V8.01228C17.5 6.77306 16.7381 5.66137 15.5823 5.21431L14.0555 4.62371C13.6291 4.45877 13.246 4.19856 12.9355 3.86296L10.4183 1.14186C9.64515 0.306061 8.33121 0.283422 7.5297 1.09209L4.69821 3.94885C4.42065 4.22889 4.0906 4.45147 3.72694 4.60386L2.34054 5.18483ZM10.5 4.10866C10.5 4.93709 9.82843 5.60866 9 5.60866C8.17157 5.60866 7.5 4.93709 7.5 4.10866C7.5 3.28023 8.17157 2.60866 9 2.60866C9.82843 2.60866 10.5 3.28023 10.5 4.10866ZM3.75 15.544C3.04057 15.6631 2.5 16.2801 2.5 17.0233V18.3587H3.75V15.544ZM2.5 21.5233V18.8587H3.75V21.5233H2.5ZM4.25 21.5233V18.8587H5.5V21.5233H4.25ZM5.5 17.0233V18.3587H4.25V15.544C4.95943 15.6631 5.5 16.2801 5.5 17.0233ZM12.5 17.0233C12.5 16.2801 13.0406 15.6631 13.75 15.544V18.3587H12.5V17.0233ZM12.5 18.8587V21.5233H13.75V18.8587H12.5ZM14.25 18.8587V21.5233H15.5V18.8587H14.25ZM15.5 18.3587V17.0233C15.5 16.2801 14.9594 15.6631 14.25 15.544V18.3587H15.5ZM13.75 7.60866C13.0406 7.72768 12.5 8.34467 12.5 9.08792V10.4233H13.75V7.60866ZM12.5 13.5879V10.9233H13.75V13.5879H12.5ZM14.25 13.5879V10.9233H15.5V13.5879H14.25ZM15.5 9.08792V10.4233H14.25V7.60866C14.9594 7.72768 15.5 8.34467 15.5 9.08792ZM7.5 9.08792C7.5 8.34467 8.04057 7.72768 8.75 7.60866V10.4233H7.5V9.08792ZM7.5 10.9233V13.5879H8.75V10.9233H7.5ZM9.25 10.9233V13.5879H10.5V10.9233H9.25ZM10.5 10.4233V9.08792C10.5 8.34467 9.95943 7.72768 9.25 7.60866V10.4233H10.5ZM3.75 7.60866C3.04057 7.72768 2.5 8.34467 2.5 9.08792V10.4233H3.75V7.60866ZM2.5 13.5879V10.9233H3.75V13.5879H2.5ZM4.25 13.5879V10.9233H5.5V13.5879H4.25ZM5.5 9.08792V10.4233H4.25V7.60866C4.95943 7.72768 5.5 8.34467 5.5 9.08792Z"/> +</symbol> + +<symbol id="mdmActive" viewBox="0 0 18 24" fill="none" xmlns="http://www.w3.org/2000/svg"> +<path fill-rule="evenodd" clip-rule="evenodd" d="M0 23.1087V7.95171C0 6.54134 0.84652 5.26877 2.1473 4.72368L3.5337 4.14271C3.83675 4.01572 4.11179 3.83024 4.34309 3.59687L7.17458 0.740107C8.17647 -0.270723 9.81889 -0.242424 10.7854 0.802322L13.3026 3.52342C13.5613 3.80309 13.8805 4.01994 14.2359 4.15738L15.7627 4.74798C17.1111 5.26956 18 6.56652 18 8.01228V23.1087H10V18.1087C10 17.5564 9.55229 17.1087 9 17.1087C8.44772 17.1087 8 17.5564 8 18.1087V23.1087H0ZM10.5 22.6087V18.1087C10.5 17.2802 9.82843 16.6087 9 16.6087C8.17157 16.6087 7.5 17.2802 7.5 18.1087V22.6087H0.5V7.95171C0.5 6.74282 1.22559 5.65205 2.34054 5.18483L3.72694 4.60386C4.0906 4.45147 4.42065 4.22889 4.69821 3.94885L7.5297 1.09209C8.33121 0.283422 9.64515 0.306061 10.4183 1.14186L12.9355 3.86296C13.246 4.19857 13.6291 4.45878 14.0555 4.62371L15.5823 5.21431C16.7381 5.66137 17.5 6.77306 17.5 8.01228V22.6087H10.5Z" fill="white"/> +<path fill-rule="evenodd" clip-rule="evenodd" d="M2.34054 5.18483C1.22559 5.65205 0.5 6.74282 0.5 7.95171V22.6087L7.5 22.6087V18.1087C7.5 17.2802 8.17157 16.6087 9 16.6087C9.82843 16.6087 10.5 17.2802 10.5 18.1087V22.6087L17.5 22.6087V8.01228C17.5 6.77306 16.7381 5.66137 15.5823 5.21431L14.0555 4.62371C13.6291 4.45877 13.246 4.19856 12.9355 3.86296L10.4183 1.14186C9.64515 0.306061 8.33121 0.283422 7.5297 1.09209L4.69821 3.94885C4.42065 4.22889 4.0906 4.45147 3.72694 4.60386L2.34054 5.18483ZM10.5 4.10866C10.5 4.93709 9.82843 5.60866 9 5.60866C8.17157 5.60866 7.5 4.93709 7.5 4.10866C7.5 3.28023 8.17157 2.60866 9 2.60866C9.82843 2.60866 10.5 3.28023 10.5 4.10866ZM3.75 15.544C3.04057 15.6631 2.5 16.2801 2.5 17.0233V18.3587H3.75V15.544ZM2.5 21.5233V18.8587H3.75V21.5233H2.5ZM4.25 21.5233V18.8587H5.5V21.5233H4.25ZM5.5 17.0233V18.3587H4.25V15.544C4.95943 15.6631 5.5 16.2801 5.5 17.0233ZM12.5 17.0233C12.5 16.2801 13.0406 15.6631 13.75 15.544V18.3587H12.5V17.0233ZM12.5 18.8587V21.5233H13.75V18.8587H12.5ZM14.25 18.8587V21.5233H15.5V18.8587H14.25ZM15.5 18.3587V17.0233C15.5 16.2801 14.9594 15.6631 14.25 15.544V18.3587H15.5ZM13.75 7.60866C13.0406 7.72768 12.5 8.34467 12.5 9.08792V10.4233H13.75V7.60866ZM12.5 13.5879V10.9233H13.75V13.5879H12.5ZM14.25 13.5879V10.9233H15.5V13.5879H14.25ZM15.5 9.08792V10.4233H14.25V7.60866C14.9594 7.72768 15.5 8.34467 15.5 9.08792ZM7.5 9.08792C7.5 8.34467 8.04057 7.72768 8.75 7.60866V10.4233H7.5V9.08792ZM7.5 10.9233V13.5879H8.75V10.9233H7.5ZM9.25 10.9233V13.5879H10.5V10.9233H9.25ZM10.5 10.4233V9.08792C10.5 8.34467 9.95943 7.72768 9.25 7.60866V10.4233H10.5ZM3.75 7.60866C3.04057 7.72768 2.5 8.34467 2.5 9.08792V10.4233H3.75V7.60866ZM2.5 13.5879V10.9233H3.75V13.5879H2.5ZM4.25 13.5879V10.9233H5.5V13.5879H4.25ZM5.5 9.08792V10.4233H4.25V7.60866C4.95943 7.72768 5.5 8.34467 5.5 9.08792Z" fill="#ED3939"/> +</symbol> + +<symbol id="mdmHover" viewBox="0 0 48 48" fill="none" xmlns="http://www.w3.org/2000/svg"> +<path fill-rule="evenodd" clip-rule="evenodd" d="M15 35.1087V19.9517C15 18.5413 15.8465 17.2688 17.1473 16.7237L18.5337 16.1427C18.8367 16.0157 19.1118 15.8302 19.3431 15.5969L22.1746 12.7401C23.1765 11.7293 24.8189 11.7576 25.7854 12.8023L28.3026 15.5234C28.5613 15.8031 28.8805 16.0199 29.2359 16.1574L30.7627 16.748C32.1111 17.2696 33 18.5665 33 20.0123V35.1087H25V30.1087C25 29.5564 24.5523 29.1087 24 29.1087C23.4477 29.1087 23 29.5564 23 30.1087V35.1087H15ZM25.5 34.6087V30.1087C25.5 29.2802 24.8284 28.6087 24 28.6087C23.1716 28.6087 22.5 29.2802 22.5 30.1087V34.6087H15.5V19.9517C15.5 18.7428 16.2256 17.652 17.3405 17.1848L18.7269 16.6039C19.0906 16.4515 19.4206 16.2289 19.6982 15.9488L22.5297 13.0921C23.3312 12.2834 24.6451 12.3061 25.4183 13.1419L27.9355 15.863C28.246 16.1986 28.6291 16.4588 29.0555 16.6237L30.5823 17.2143C31.7381 17.6614 32.5 18.7731 32.5 20.0123V34.6087H25.5Z" fill="white"/> +<path fill-rule="evenodd" clip-rule="evenodd" d="M17.3405 17.1848C16.2256 17.652 15.5 18.7428 15.5 19.9517V34.6087L22.5 34.6087V30.1087C22.5 29.2802 23.1716 28.6087 24 28.6087C24.8284 28.6087 25.5 29.2802 25.5 30.1087V34.6087L32.5 34.6087V20.0123C32.5 18.7731 31.7381 17.6614 30.5823 17.2143L29.0555 16.6237C28.6291 16.4588 28.246 16.1986 27.9355 15.863L25.4183 13.1419C24.6451 12.3061 23.3312 12.2834 22.5297 13.0921L19.6982 15.9488C19.4206 16.2289 19.0906 16.4515 18.7269 16.6039L17.3405 17.1848ZM25.5 16.1087C25.5 16.9371 24.8284 17.6087 24 17.6087C23.1716 17.6087 22.5 16.9371 22.5 16.1087C22.5 15.2802 23.1716 14.6087 24 14.6087C24.8284 14.6087 25.5 15.2802 25.5 16.1087ZM18.75 27.544C18.0406 27.6631 17.5 28.2801 17.5 29.0233V30.3587H18.75V27.544ZM17.5 33.5233V30.8587H18.75V33.5233H17.5ZM19.25 33.5233V30.8587H20.5V33.5233H19.25ZM20.5 29.0233V30.3587H19.25V27.544C19.9594 27.6631 20.5 28.2801 20.5 29.0233ZM27.5 29.0233C27.5 28.2801 28.0406 27.6631 28.75 27.544V30.3587H27.5V29.0233ZM27.5 30.8587V33.5233H28.75V30.8587H27.5ZM29.25 30.8587V33.5233H30.5V30.8587H29.25ZM30.5 30.3587V29.0233C30.5 28.2801 29.9594 27.6631 29.25 27.544V30.3587H30.5ZM28.75 19.6087C28.0406 19.7277 27.5 20.3447 27.5 21.0879V22.4233H28.75V19.6087ZM27.5 25.5879V22.9233H28.75V25.5879H27.5ZM29.25 25.5879V22.9233H30.5V25.5879H29.25ZM30.5 21.0879V22.4233H29.25V19.6087C29.9594 19.7277 30.5 20.3447 30.5 21.0879ZM22.5 21.0879C22.5 20.3447 23.0406 19.7277 23.75 19.6087V22.4233H22.5V21.0879ZM22.5 22.9233V25.5879H23.75V22.9233H22.5ZM24.25 22.9233V25.5879H25.5V22.9233H24.25ZM25.5 22.4233V21.0879C25.5 20.3447 24.9594 19.7277 24.25 19.6087V22.4233H25.5ZM18.75 19.6087C18.0406 19.7277 17.5 20.3447 17.5 21.0879V22.4233H18.75V19.6087ZM17.5 25.5879V22.9233H18.75V25.5879H17.5ZM19.25 25.5879V22.9233H20.5V25.5879H19.25ZM20.5 21.0879V22.4233H19.25V19.6087C19.9594 19.7277 20.5 20.3447 20.5 21.0879Z" fill="#BD9E6A"/> +</symbol> + +<symbol id="conseillerFranceService" viewBox="0 0 48 48" xmlns="http://www.w3.org/2000/svg"> +<path d="M24.1752 4.3111L12 11.3612V25.4094L23.5247 45.3111H24.8255L36.3503 25.4094V11.3612L24.1752 4.3111Z"/> +<path fill-rule="evenodd" clip-rule="evenodd" d="M24.1752 2L38.3503 10.2083V25.9467L25.9785 47.3111H22.3718L10 25.9467V10.2082L24.1752 2ZM12 25.4094V11.3612L24.1752 4.31111L36.3503 11.3612V25.4094L24.8255 45.3111H23.5247L12 25.4094Z" fill="white"/> +<path d="M27.661 16.3823H32.2657V13.7028L24.175 9.02002L16.0582 13.7028V23.0682L24.175 27.725L32.2657 23.0682V20.3887H27.661V16.3823Z" fill="white"/> +<path d="M27.661 20.3886V16.3823L24.1749 14.3531L20.6889 16.3823V20.3886L24.1749 22.3918L27.661 20.3886Z" fill="#000091"/> +</symbol> + +<symbol id="conseillerFranceServiceSelected" viewBox="0 0 48 48" fill="none" xmlns="http://www.w3.org/2000/svg"> +<path d="M24.1752 4.3111L12 11.3612V25.4094L23.5247 45.3111H24.8255L36.3503 25.4094V11.3612L24.1752 4.3111Z" fill="white"/> +<path fill-rule="evenodd" clip-rule="evenodd" d="M24.1752 2L38.3503 10.2083V25.9467L25.9785 47.3111H22.3718L10 25.9467V10.2082L24.1752 2ZM12 25.4094V11.3612L24.1752 4.31111L36.3503 11.3612V25.4094L24.8255 45.3111H23.5247L12 25.4094Z" fill="#ED3939"/> +<path d="M27.661 16.3823H32.2657V13.7028L24.175 9.02002L16.0582 13.7028V23.0682L24.175 27.725L32.2657 23.0682V20.3887H27.661V16.3823Z" fill="#ED3939"/> +<path d="M27.661 20.3886V16.3823L24.1749 14.3531L20.6889 16.3823V20.3886L24.1749 22.3918L27.661 20.3886Z" fill="#3B3BE7"/> +</symbol> + +<symbol id="conseillerFranceServiceAdded" viewBox="0 0 48 48" fill="none" xmlns="http://www.w3.org/2000/svg"> +<path d="M24.1752 4.3111L12 11.3612V25.4094L23.5247 45.3111H24.8255L36.3503 25.4094V11.3612L24.1752 4.3111Z" fill="#47C562"/> +<path fill-rule="evenodd" clip-rule="evenodd" d="M24.1752 2L38.3503 10.2083V25.9467L25.9785 47.3111H22.3718L10 25.9467V10.2082L24.1752 2ZM12 25.4094V11.3612L24.1752 4.31111L36.3503 11.3612V25.4094L24.8255 45.3111H23.5247L12 25.4094Z" fill="white"/> +<path d="M32.5 23.5746V13.9001L24.25 9L16 13.9001V23.5746L24.25 28.4118L32.5 23.5746Z" fill="white"/> +<path d="M30.6177 15.3789C29.9985 14.8285 29.0504 14.8843 28.5 15.5035L23.452 21.1104L20.4396 18.507C19.7939 17.988 18.8497 18.0909 18.3308 18.7366C17.8119 19.3824 17.9147 20.3266 18.5605 20.8455L22.6853 24.3429C23.3085 24.8436 24.2149 24.7677 24.746 24.1702L30.7422 17.4966C31.2926 16.8774 31.2368 15.9293 30.6177 15.3789Z" fill="#47C562"/> +</symbol> + +<symbol id="conseillerFranceServiceHover" viewBox="0 0 48 48" fill="none" xmlns="http://www.w3.org/2000/svg"> +<path d="M24.1752 4.3111L12 11.3612V25.4094L23.5247 45.3111H24.8255L36.3503 25.4094V11.3612L24.1752 4.3111Z" fill="#A00000"/> +<path fill-rule="evenodd" clip-rule="evenodd" d="M24.1752 2L38.3503 10.2083V25.9467L25.9785 47.3111H22.3718L10 25.9467V10.2082L24.1752 2ZM12 25.4094V11.3612L24.1752 4.31111L36.3503 11.3612V25.4094L24.8255 45.3111H23.5247L12 25.4094Z" fill="white"/> +<path d="M27.661 16.3823H32.2657V13.7028L24.175 9.02002L16.0582 13.7028V23.0682L24.175 27.725L32.2657 23.0682V20.3887H27.661V16.3823Z" fill="white" fill-opacity="0.8"/> +<path d="M27.661 20.3886V16.3823L24.1749 14.3531L20.6889 16.3823V20.3886L24.1749 22.3918L27.661 20.3886Z" fill="#010176"/> +</symbol> + <symbol id="borne" viewBox="0 0 22 22" xmlns="http://www.w3.org/2000/svg"> <rect x="5" width="12" height="9" rx="1" stroke-width="1.9" fill="none"/> <path d="M6 14H16L14.6364 22H7.36364L6 14Z"/> @@ -282,12 +338,6 @@ <circle cx="49.5" cy="56.5" r="10.5" fill="#BDBDBD"/> </symbol> -<symbol id="map-marker-added" viewBox="0 0 50 50" xmlns="http://www.w3.org/2000/svg"> -<path d="M24.2664 45.7307L24.9731 46.391L25.6566 45.7067C27.6947 43.6665 29.6963 41.8435 31.5902 40.1188L31.7691 39.9559C38.0892 34.201 43.3939 29.3707 43.3939 21.463C43.3939 11.2671 35.1369 3 24.9491 3C14.7614 3 6.50439 11.2671 6.50439 21.463C6.50439 25.615 7.58413 28.6957 9.68328 31.6153C11.7242 34.454 14.7328 37.1381 18.5168 40.514L18.5946 40.5834C20.3118 42.1155 22.2016 43.8015 24.2664 45.7307Z" fill="#47C562" stroke="white" stroke-width="2"/> -<path d="M24.9487 31.4971C30.4716 31.4971 34.9487 27.0199 34.9487 21.4971C34.9487 15.9742 30.4716 11.4971 24.9487 11.4971C19.4259 11.4971 14.9487 15.9742 14.9487 21.4971C14.9487 27.0199 19.4259 31.4971 24.9487 31.4971Z" fill="white"/> -<path d="M20.1143 21.9233L24.0031 25.0483L30.1143 18.1733" stroke="#47C562" stroke-width="2" stroke-linecap="round" stroke-linejoin="round"/> -</symbol> - <symbol id="locateMe" width="25" height="34" viewBox="0 0 24 27" fill="none" xmlns="http://www.w3.org/2000/svg"> <path fill-rule="evenodd" clip-rule="evenodd" d="M15.5591 23.2986C19.8303 19.413 23.125 16.4157 23.125 11.5C23.125 5.14873 17.9763 0 11.625 0C5.27373 0 0.125 5.14873 0.125 11.5C0.125 16.6933 2.79938 19.0768 7.87479 23.6001C9.00649 24.6087 10.2576 25.7237 11.625 27C12.9811 25.6439 14.3117 24.4334 15.5591 23.2986ZM11.625 16C14.1103 16 16.125 13.9853 16.125 11.5C16.125 9.01472 14.1103 7 11.625 7C9.13972 7 7.125 9.01472 7.125 11.5C7.125 13.9853 9.13972 16 11.625 16Z" fill="#828282"/> </symbol>