@tracktor/map 1.3.2 → 1.4.1

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
package/dist/main.umd.cjs CHANGED
@@ -1,5 +1,5 @@
1
1
  (function(){"use strict";try{if(typeof document<"u"){var o=document.createElement("style");o.appendChild(document.createTextNode(`.mapboxgl-map{font:12px/20px Helvetica Neue,Arial,Helvetica,sans-serif;overflow:hidden;position:relative;-webkit-tap-highlight-color:rgb(0 0 0/0)}.mapboxgl-canvas{left:0;position:absolute;top:0}.mapboxgl-map:-webkit-full-screen{height:100%;width:100%}.mapboxgl-canary{background-color:salmon}.mapboxgl-canvas-container.mapboxgl-interactive,.mapboxgl-ctrl-group button.mapboxgl-ctrl-compass{cursor:grab;-webkit-user-select:none;user-select:none}.mapboxgl-canvas-container.mapboxgl-interactive.mapboxgl-track-pointer{cursor:pointer}.mapboxgl-canvas-container.mapboxgl-interactive:active,.mapboxgl-ctrl-group button.mapboxgl-ctrl-compass:active{cursor:grabbing}.mapboxgl-canvas-container.mapboxgl-touch-zoom-rotate,.mapboxgl-canvas-container.mapboxgl-touch-zoom-rotate .mapboxgl-canvas{touch-action:pan-x pan-y}.mapboxgl-canvas-container.mapboxgl-touch-drag-pan,.mapboxgl-canvas-container.mapboxgl-touch-drag-pan .mapboxgl-canvas{touch-action:pinch-zoom}.mapboxgl-canvas-container.mapboxgl-touch-zoom-rotate.mapboxgl-touch-drag-pan,.mapboxgl-canvas-container.mapboxgl-touch-zoom-rotate.mapboxgl-touch-drag-pan .mapboxgl-canvas{touch-action:none}.mapboxgl-ctrl-bottom,.mapboxgl-ctrl-bottom-left,.mapboxgl-ctrl-bottom-right,.mapboxgl-ctrl-left,.mapboxgl-ctrl-right,.mapboxgl-ctrl-top,.mapboxgl-ctrl-top-left,.mapboxgl-ctrl-top-right{pointer-events:none;position:absolute;z-index:2}.mapboxgl-ctrl-top-left{left:0;top:0}.mapboxgl-ctrl-top{left:50%;top:0;transform:translate(-50%)}.mapboxgl-ctrl-top-right{right:0;top:0}.mapboxgl-ctrl-right{right:0;top:50%;transform:translateY(-50%)}.mapboxgl-ctrl-bottom-right{bottom:0;right:0}.mapboxgl-ctrl-bottom{bottom:0;left:50%;transform:translate(-50%)}.mapboxgl-ctrl-bottom-left{bottom:0;left:0}.mapboxgl-ctrl-left{left:0;top:50%;transform:translateY(-50%)}.mapboxgl-ctrl{clear:both;pointer-events:auto;transform:translate(0)}.mapboxgl-ctrl-top-left .mapboxgl-ctrl{float:left;margin:10px 0 0 10px}.mapboxgl-ctrl-top .mapboxgl-ctrl{float:left;margin:10px 0}.mapboxgl-ctrl-top-right .mapboxgl-ctrl{float:right;margin:10px 10px 0 0}.mapboxgl-ctrl-bottom-right .mapboxgl-ctrl,.mapboxgl-ctrl-right .mapboxgl-ctrl{float:right;margin:0 10px 10px 0}.mapboxgl-ctrl-bottom .mapboxgl-ctrl{float:left;margin:10px 0}.mapboxgl-ctrl-bottom-left .mapboxgl-ctrl,.mapboxgl-ctrl-left .mapboxgl-ctrl{float:left;margin:0 0 10px 10px}.mapboxgl-ctrl-group{background:#fff;border-radius:4px}.mapboxgl-ctrl-group:not(:empty){box-shadow:0 0 0 2px #0000001a}@media(-ms-high-contrast:active){.mapboxgl-ctrl-group:not(:empty){box-shadow:0 0 0 2px ButtonText}}.mapboxgl-ctrl-group button{background-color:initial;border:0;box-sizing:border-box;cursor:pointer;display:block;height:29px;outline:none;overflow:hidden;padding:0;width:29px}.mapboxgl-ctrl-group button+button{border-top:1px solid #ddd}.mapboxgl-ctrl button .mapboxgl-ctrl-icon{background-position:50%;background-repeat:no-repeat;display:block;height:100%;width:100%}@media(-ms-high-contrast:active){.mapboxgl-ctrl-icon{background-color:initial}.mapboxgl-ctrl-group button+button{border-top:1px solid ButtonText}}.mapboxgl-ctrl-attrib-button:focus,.mapboxgl-ctrl-group button:focus{box-shadow:0 0 2px 2px #0096ff}.mapboxgl-ctrl button:disabled{cursor:not-allowed}.mapboxgl-ctrl button:disabled .mapboxgl-ctrl-icon{opacity:.25}.mapboxgl-ctrl-group button:first-child{border-radius:4px 4px 0 0}.mapboxgl-ctrl-group button:last-child{border-radius:0 0 4px 4px}.mapboxgl-ctrl-group button:only-child{border-radius:inherit}.mapboxgl-ctrl button:not(:disabled):hover{background-color:#0000000d}.mapboxgl-ctrl-group button:focus:focus-visible{box-shadow:0 0 2px 2px #0096ff}.mapboxgl-ctrl-group button:focus:not(:focus-visible){box-shadow:none}.mapboxgl-ctrl button.mapboxgl-ctrl-zoom-out .mapboxgl-ctrl-icon{background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' fill='%23333' viewBox='0 0 29 29'%3E%3Cpath d='M10 13c-.75 0-1.5.75-1.5 1.5S9.25 16 10 16h9c.75 0 1.5-.75 1.5-1.5S19.75 13 19 13h-9z'/%3E%3C/svg%3E")}.mapboxgl-ctrl button.mapboxgl-ctrl-zoom-in .mapboxgl-ctrl-icon{background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' fill='%23333' viewBox='0 0 29 29'%3E%3Cpath d='M14.5 8.5c-.75 0-1.5.75-1.5 1.5v3h-3c-.75 0-1.5.75-1.5 1.5S9.25 16 10 16h3v3c0 .75.75 1.5 1.5 1.5S16 19.75 16 19v-3h3c.75 0 1.5-.75 1.5-1.5S19.75 13 19 13h-3v-3c0-.75-.75-1.5-1.5-1.5z'/%3E%3C/svg%3E")}@media(-ms-high-contrast:active){.mapboxgl-ctrl button.mapboxgl-ctrl-zoom-out .mapboxgl-ctrl-icon{background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' fill='%23fff' viewBox='0 0 29 29'%3E%3Cpath d='M10 13c-.75 0-1.5.75-1.5 1.5S9.25 16 10 16h9c.75 0 1.5-.75 1.5-1.5S19.75 13 19 13h-9z'/%3E%3C/svg%3E")}.mapboxgl-ctrl button.mapboxgl-ctrl-zoom-in .mapboxgl-ctrl-icon{background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' fill='%23fff' viewBox='0 0 29 29'%3E%3Cpath d='M14.5 8.5c-.75 0-1.5.75-1.5 1.5v3h-3c-.75 0-1.5.75-1.5 1.5S9.25 16 10 16h3v3c0 .75.75 1.5 1.5 1.5S16 19.75 16 19v-3h3c.75 0 1.5-.75 1.5-1.5S19.75 13 19 13h-3v-3c0-.75-.75-1.5-1.5-1.5z'/%3E%3C/svg%3E")}}@media(-ms-high-contrast:black-on-white){.mapboxgl-ctrl button.mapboxgl-ctrl-zoom-out .mapboxgl-ctrl-icon{background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' fill='%23000' viewBox='0 0 29 29'%3E%3Cpath d='M10 13c-.75 0-1.5.75-1.5 1.5S9.25 16 10 16h9c.75 0 1.5-.75 1.5-1.5S19.75 13 19 13h-9z'/%3E%3C/svg%3E")}.mapboxgl-ctrl button.mapboxgl-ctrl-zoom-in .mapboxgl-ctrl-icon{background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' fill='%23000' viewBox='0 0 29 29'%3E%3Cpath d='M14.5 8.5c-.75 0-1.5.75-1.5 1.5v3h-3c-.75 0-1.5.75-1.5 1.5S9.25 16 10 16h3v3c0 .75.75 1.5 1.5 1.5S16 19.75 16 19v-3h3c.75 0 1.5-.75 1.5-1.5S19.75 13 19 13h-3v-3c0-.75-.75-1.5-1.5-1.5z'/%3E%3C/svg%3E")}}.mapboxgl-ctrl button.mapboxgl-ctrl-fullscreen .mapboxgl-ctrl-icon{background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' fill='%23333' viewBox='0 0 29 29'%3E%3Cpath d='M24 16v5.5c0 1.75-.75 2.5-2.5 2.5H16v-1l3-1.5-4-5.5 1-1 5.5 4 1.5-3h1zM6 16l1.5 3 5.5-4 1 1-4 5.5 3 1.5v1H7.5C5.75 24 5 23.25 5 21.5V16h1zm7-11v1l-3 1.5 4 5.5-1 1-5.5-4L6 13H5V7.5C5 5.75 5.75 5 7.5 5H13zm11 2.5c0-1.75-.75-2.5-2.5-2.5H16v1l3 1.5-4 5.5 1 1 5.5-4 1.5 3h1V7.5z'/%3E%3C/svg%3E")}.mapboxgl-ctrl button.mapboxgl-ctrl-shrink .mapboxgl-ctrl-icon{background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 29 29'%3E%3Cpath d='M18.5 16c-1.75 0-2.5.75-2.5 2.5V24h1l1.5-3 5.5 4 1-1-4-5.5 3-1.5v-1h-5.5zM13 18.5c0-1.75-.75-2.5-2.5-2.5H5v1l3 1.5L4 24l1 1 5.5-4 1.5 3h1v-5.5zm3-8c0 1.75.75 2.5 2.5 2.5H24v-1l-3-1.5L25 5l-1-1-5.5 4L17 5h-1v5.5zM10.5 13c1.75 0 2.5-.75 2.5-2.5V5h-1l-1.5 3L5 4 4 5l4 5.5L5 12v1h5.5z'/%3E%3C/svg%3E")}@media(-ms-high-contrast:active){.mapboxgl-ctrl button.mapboxgl-ctrl-fullscreen .mapboxgl-ctrl-icon{background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' fill='%23fff' viewBox='0 0 29 29'%3E%3Cpath d='M24 16v5.5c0 1.75-.75 2.5-2.5 2.5H16v-1l3-1.5-4-5.5 1-1 5.5 4 1.5-3h1zM6 16l1.5 3 5.5-4 1 1-4 5.5 3 1.5v1H7.5C5.75 24 5 23.25 5 21.5V16h1zm7-11v1l-3 1.5 4 5.5-1 1-5.5-4L6 13H5V7.5C5 5.75 5.75 5 7.5 5H13zm11 2.5c0-1.75-.75-2.5-2.5-2.5H16v1l3 1.5-4 5.5 1 1 5.5-4 1.5 3h1V7.5z'/%3E%3C/svg%3E")}.mapboxgl-ctrl button.mapboxgl-ctrl-shrink .mapboxgl-ctrl-icon{background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' fill='%23fff' viewBox='0 0 29 29'%3E%3Cpath d='M18.5 16c-1.75 0-2.5.75-2.5 2.5V24h1l1.5-3 5.5 4 1-1-4-5.5 3-1.5v-1h-5.5zM13 18.5c0-1.75-.75-2.5-2.5-2.5H5v1l3 1.5L4 24l1 1 5.5-4 1.5 3h1v-5.5zm3-8c0 1.75.75 2.5 2.5 2.5H24v-1l-3-1.5L25 5l-1-1-5.5 4L17 5h-1v5.5zM10.5 13c1.75 0 2.5-.75 2.5-2.5V5h-1l-1.5 3L5 4 4 5l4 5.5L5 12v1h5.5z'/%3E%3C/svg%3E")}}@media(-ms-high-contrast:black-on-white){.mapboxgl-ctrl button.mapboxgl-ctrl-fullscreen .mapboxgl-ctrl-icon{background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' fill='%23000' viewBox='0 0 29 29'%3E%3Cpath d='M24 16v5.5c0 1.75-.75 2.5-2.5 2.5H16v-1l3-1.5-4-5.5 1-1 5.5 4 1.5-3h1zM6 16l1.5 3 5.5-4 1 1-4 5.5 3 1.5v1H7.5C5.75 24 5 23.25 5 21.5V16h1zm7-11v1l-3 1.5 4 5.5-1 1-5.5-4L6 13H5V7.5C5 5.75 5.75 5 7.5 5H13zm11 2.5c0-1.75-.75-2.5-2.5-2.5H16v1l3 1.5-4 5.5 1 1 5.5-4 1.5 3h1V7.5z'/%3E%3C/svg%3E")}.mapboxgl-ctrl button.mapboxgl-ctrl-shrink .mapboxgl-ctrl-icon{background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' fill='%23000' viewBox='0 0 29 29'%3E%3Cpath d='M18.5 16c-1.75 0-2.5.75-2.5 2.5V24h1l1.5-3 5.5 4 1-1-4-5.5 3-1.5v-1h-5.5zM13 18.5c0-1.75-.75-2.5-2.5-2.5H5v1l3 1.5L4 24l1 1 5.5-4 1.5 3h1v-5.5zm3-8c0 1.75.75 2.5 2.5 2.5H24v-1l-3-1.5L25 5l-1-1-5.5 4L17 5h-1v5.5zM10.5 13c1.75 0 2.5-.75 2.5-2.5V5h-1l-1.5 3L5 4 4 5l4 5.5L5 12v1h5.5z'/%3E%3C/svg%3E")}}.mapboxgl-ctrl button.mapboxgl-ctrl-compass .mapboxgl-ctrl-icon{background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' fill='%23333' viewBox='0 0 29 29'%3E%3Cpath d='M10.5 14l4-8 4 8h-8z'/%3E%3Cpath id='south' d='M10.5 16l4 8 4-8h-8z' fill='%23ccc'/%3E%3C/svg%3E")}@media(-ms-high-contrast:active){.mapboxgl-ctrl button.mapboxgl-ctrl-compass .mapboxgl-ctrl-icon{background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' fill='%23fff' viewBox='0 0 29 29'%3E%3Cpath d='M10.5 14l4-8 4 8h-8z'/%3E%3Cpath id='south' d='M10.5 16l4 8 4-8h-8z' fill='%23999'/%3E%3C/svg%3E")}}@media(-ms-high-contrast:black-on-white){.mapboxgl-ctrl button.mapboxgl-ctrl-compass .mapboxgl-ctrl-icon{background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' fill='%23000' viewBox='0 0 29 29'%3E%3Cpath d='M10.5 14l4-8 4 8h-8z'/%3E%3Cpath id='south' d='M10.5 16l4 8 4-8h-8z' fill='%23ccc'/%3E%3C/svg%3E")}}.mapboxgl-ctrl button.mapboxgl-ctrl-geolocate .mapboxgl-ctrl-icon{background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg viewBox='0 0 20 20' xmlns='http://www.w3.org/2000/svg' fill='%23333'%3E%3Cpath d='M10 4C9 4 9 5 9 5v.1A5 5 0 0 0 5.1 9H5s-1 0-1 1 1 1 1 1h.1A5 5 0 0 0 9 14.9v.1s0 1 1 1 1-1 1-1v-.1a5 5 0 0 0 3.9-3.9h.1s1 0 1-1-1-1-1-1h-.1A5 5 0 0 0 11 5.1V5s0-1-1-1zm0 2.5a3.5 3.5 0 1 1 0 7 3.5 3.5 0 1 1 0-7z'/%3E%3Ccircle id='dot' cx='10' cy='10' r='2'/%3E%3Cpath id='stroke' d='M14 5l1 1-9 9-1-1 9-9z' display='none'/%3E%3C/svg%3E")}.mapboxgl-ctrl button.mapboxgl-ctrl-buildings-toggle .mapboxgl-ctrl-icon{background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg fill='none' xmlns='http://www.w3.org/2000/svg' viewBox='0 0 30 30'%3E%3Cpath d='M3.3335 11.6666C3.3335 12.5871 4.07969 13.3333 5.00016 13.3333C5.92064 13.3333 6.66683 12.5871 6.66683 11.6666L6.66683 6.66659L11.6668 6.66659C12.5873 6.66659 13.3335 5.92039 13.3335 4.99992C13.3335 4.07944 12.5873 3.33325 11.6668 3.33325H3.3335V11.6666Z' fill='currentColor'/%3E%3Cpath d='M26.6668 11.6666C26.6668 12.5871 25.9206 13.3333 25.0002 13.3333C24.0797 13.3333 23.3335 12.5871 23.3335 11.6666L23.3335 6.66659L18.3335 6.66659C17.413 6.66659 16.6668 5.92039 16.6668 4.99992C16.6668 4.07944 17.413 3.33325 18.3335 3.33325H26.6668L26.6668 11.6666Z' fill='currentColor'/%3E%3Cpath d='M13.3335 24.9999C13.3335 25.9204 12.5873 26.6666 11.6668 26.6666H3.3335V18.3333C3.3335 17.4128 4.07969 16.6666 5.00016 16.6666C5.92064 16.6666 6.66683 17.4128 6.66683 18.3333V23.3333H11.6668C12.5873 23.3333 13.3335 24.0794 13.3335 24.9999Z' fill='currentColor'/%3E%3Cpath d='M18.3335 26.6666C17.413 26.6666 16.6668 25.9204 16.6668 24.9999C16.6668 24.0794 17.413 23.3333 18.3335 23.3333H23.3335V18.3333C23.3335 17.4128 24.0797 16.6666 25.0002 16.6666C25.9206 16.6666 26.6668 17.4128 26.6668 18.3333V26.6666H18.3335Z' fill='currentColor'/%3E%3C/svg%3E");background-size:26px 26px}.mapboxgl-ctrl button.mapboxgl-ctrl-buildings-toggle.mapboxgl-ctrl-level-button-selected .mapboxgl-ctrl-icon{filter:invert(1) brightness(1)}.mapboxgl-ctrl button.mapboxgl-ctrl-geolocate:disabled .mapboxgl-ctrl-icon{background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg viewBox='0 0 20 20' xmlns='http://www.w3.org/2000/svg' fill='%23aaa'%3E%3Cpath d='M10 4C9 4 9 5 9 5v.1A5 5 0 0 0 5.1 9H5s-1 0-1 1 1 1 1 1h.1A5 5 0 0 0 9 14.9v.1s0 1 1 1 1-1 1-1v-.1a5 5 0 0 0 3.9-3.9h.1s1 0 1-1-1-1-1-1h-.1A5 5 0 0 0 11 5.1V5s0-1-1-1zm0 2.5a3.5 3.5 0 1 1 0 7 3.5 3.5 0 1 1 0-7z'/%3E%3Ccircle id='dot' cx='10' cy='10' r='2'/%3E%3Cpath id='stroke' d='M14 5l1 1-9 9-1-1 9-9z' fill='%23f00'/%3E%3C/svg%3E")}.mapboxgl-ctrl button.mapboxgl-ctrl-geolocate.mapboxgl-ctrl-geolocate-active .mapboxgl-ctrl-icon{background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg viewBox='0 0 20 20' xmlns='http://www.w3.org/2000/svg' fill='%2333b5e5'%3E%3Cpath d='M10 4C9 4 9 5 9 5v.1A5 5 0 0 0 5.1 9H5s-1 0-1 1 1 1 1 1h.1A5 5 0 0 0 9 14.9v.1s0 1 1 1 1-1 1-1v-.1a5 5 0 0 0 3.9-3.9h.1s1 0 1-1-1-1-1-1h-.1A5 5 0 0 0 11 5.1V5s0-1-1-1zm0 2.5a3.5 3.5 0 1 1 0 7 3.5 3.5 0 1 1 0-7z'/%3E%3Ccircle id='dot' cx='10' cy='10' r='2'/%3E%3Cpath id='stroke' d='M14 5l1 1-9 9-1-1 9-9z' display='none'/%3E%3C/svg%3E")}.mapboxgl-ctrl button.mapboxgl-ctrl-geolocate.mapboxgl-ctrl-geolocate-active-error .mapboxgl-ctrl-icon{background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg viewBox='0 0 20 20' xmlns='http://www.w3.org/2000/svg' fill='%23e58978'%3E%3Cpath d='M10 4C9 4 9 5 9 5v.1A5 5 0 0 0 5.1 9H5s-1 0-1 1 1 1 1 1h.1A5 5 0 0 0 9 14.9v.1s0 1 1 1 1-1 1-1v-.1a5 5 0 0 0 3.9-3.9h.1s1 0 1-1-1-1-1-1h-.1A5 5 0 0 0 11 5.1V5s0-1-1-1zm0 2.5a3.5 3.5 0 1 1 0 7 3.5 3.5 0 1 1 0-7z'/%3E%3Ccircle id='dot' cx='10' cy='10' r='2'/%3E%3Cpath id='stroke' d='M14 5l1 1-9 9-1-1 9-9z' display='none'/%3E%3C/svg%3E")}.mapboxgl-ctrl button.mapboxgl-ctrl-geolocate.mapboxgl-ctrl-geolocate-background .mapboxgl-ctrl-icon{background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg viewBox='0 0 20 20' xmlns='http://www.w3.org/2000/svg' fill='%2333b5e5'%3E%3Cpath d='M10 4C9 4 9 5 9 5v.1A5 5 0 0 0 5.1 9H5s-1 0-1 1 1 1 1 1h.1A5 5 0 0 0 9 14.9v.1s0 1 1 1 1-1 1-1v-.1a5 5 0 0 0 3.9-3.9h.1s1 0 1-1-1-1-1-1h-.1A5 5 0 0 0 11 5.1V5s0-1-1-1zm0 2.5a3.5 3.5 0 1 1 0 7 3.5 3.5 0 1 1 0-7z'/%3E%3Ccircle id='dot' cx='10' cy='10' r='2' display='none'/%3E%3Cpath id='stroke' d='M14 5l1 1-9 9-1-1 9-9z' display='none'/%3E%3C/svg%3E")}.mapboxgl-ctrl button.mapboxgl-ctrl-geolocate.mapboxgl-ctrl-geolocate-background-error .mapboxgl-ctrl-icon{background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg viewBox='0 0 20 20' xmlns='http://www.w3.org/2000/svg' fill='%23e54e33'%3E%3Cpath d='M10 4C9 4 9 5 9 5v.1A5 5 0 0 0 5.1 9H5s-1 0-1 1 1 1 1 1h.1A5 5 0 0 0 9 14.9v.1s0 1 1 1 1-1 1-1v-.1a5 5 0 0 0 3.9-3.9h.1s1 0 1-1-1-1-1-1h-.1A5 5 0 0 0 11 5.1V5s0-1-1-1zm0 2.5a3.5 3.5 0 1 1 0 7 3.5 3.5 0 1 1 0-7z'/%3E%3Ccircle id='dot' cx='10' cy='10' r='2' display='none'/%3E%3Cpath id='stroke' d='M14 5l1 1-9 9-1-1 9-9z' display='none'/%3E%3C/svg%3E")}.mapboxgl-ctrl button.mapboxgl-ctrl-geolocate.mapboxgl-ctrl-geolocate-waiting .mapboxgl-ctrl-icon{animation:mapboxgl-spin 2s linear infinite}@media(-ms-high-contrast:active){.mapboxgl-ctrl button.mapboxgl-ctrl-geolocate .mapboxgl-ctrl-icon{background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg viewBox='0 0 20 20' xmlns='http://www.w3.org/2000/svg' fill='%23fff'%3E%3Cpath d='M10 4C9 4 9 5 9 5v.1A5 5 0 0 0 5.1 9H5s-1 0-1 1 1 1 1 1h.1A5 5 0 0 0 9 14.9v.1s0 1 1 1 1-1 1-1v-.1a5 5 0 0 0 3.9-3.9h.1s1 0 1-1-1-1-1-1h-.1A5 5 0 0 0 11 5.1V5s0-1-1-1zm0 2.5a3.5 3.5 0 1 1 0 7 3.5 3.5 0 1 1 0-7z'/%3E%3Ccircle id='dot' cx='10' cy='10' r='2'/%3E%3Cpath id='stroke' d='M14 5l1 1-9 9-1-1 9-9z' display='none'/%3E%3C/svg%3E")}.mapboxgl-ctrl button.mapboxgl-ctrl-geolocate:disabled .mapboxgl-ctrl-icon{background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg viewBox='0 0 20 20' xmlns='http://www.w3.org/2000/svg' fill='%23999'%3E%3Cpath d='M10 4C9 4 9 5 9 5v.1A5 5 0 0 0 5.1 9H5s-1 0-1 1 1 1 1 1h.1A5 5 0 0 0 9 14.9v.1s0 1 1 1 1-1 1-1v-.1a5 5 0 0 0 3.9-3.9h.1s1 0 1-1-1-1-1-1h-.1A5 5 0 0 0 11 5.1V5s0-1-1-1zm0 2.5a3.5 3.5 0 1 1 0 7 3.5 3.5 0 1 1 0-7z'/%3E%3Ccircle id='dot' cx='10' cy='10' r='2'/%3E%3Cpath id='stroke' d='M14 5l1 1-9 9-1-1 9-9z' fill='%23f00'/%3E%3C/svg%3E")}.mapboxgl-ctrl button.mapboxgl-ctrl-geolocate.mapboxgl-ctrl-geolocate-active .mapboxgl-ctrl-icon{background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg viewBox='0 0 20 20' xmlns='http://www.w3.org/2000/svg' fill='%2333b5e5'%3E%3Cpath d='M10 4C9 4 9 5 9 5v.1A5 5 0 0 0 5.1 9H5s-1 0-1 1 1 1 1 1h.1A5 5 0 0 0 9 14.9v.1s0 1 1 1 1-1 1-1v-.1a5 5 0 0 0 3.9-3.9h.1s1 0 1-1-1-1-1-1h-.1A5 5 0 0 0 11 5.1V5s0-1-1-1zm0 2.5a3.5 3.5 0 1 1 0 7 3.5 3.5 0 1 1 0-7z'/%3E%3Ccircle id='dot' cx='10' cy='10' r='2'/%3E%3Cpath id='stroke' d='M14 5l1 1-9 9-1-1 9-9z' display='none'/%3E%3C/svg%3E")}.mapboxgl-ctrl button.mapboxgl-ctrl-geolocate.mapboxgl-ctrl-geolocate-active-error .mapboxgl-ctrl-icon{background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg viewBox='0 0 20 20' xmlns='http://www.w3.org/2000/svg' fill='%23e58978'%3E%3Cpath d='M10 4C9 4 9 5 9 5v.1A5 5 0 0 0 5.1 9H5s-1 0-1 1 1 1 1 1h.1A5 5 0 0 0 9 14.9v.1s0 1 1 1 1-1 1-1v-.1a5 5 0 0 0 3.9-3.9h.1s1 0 1-1-1-1-1-1h-.1A5 5 0 0 0 11 5.1V5s0-1-1-1zm0 2.5a3.5 3.5 0 1 1 0 7 3.5 3.5 0 1 1 0-7z'/%3E%3Ccircle id='dot' cx='10' cy='10' r='2'/%3E%3Cpath id='stroke' d='M14 5l1 1-9 9-1-1 9-9z' display='none'/%3E%3C/svg%3E")}.mapboxgl-ctrl button.mapboxgl-ctrl-geolocate.mapboxgl-ctrl-geolocate-background .mapboxgl-ctrl-icon{background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg viewBox='0 0 20 20' xmlns='http://www.w3.org/2000/svg' fill='%2333b5e5'%3E%3Cpath d='M10 4C9 4 9 5 9 5v.1A5 5 0 0 0 5.1 9H5s-1 0-1 1 1 1 1 1h.1A5 5 0 0 0 9 14.9v.1s0 1 1 1 1-1 1-1v-.1a5 5 0 0 0 3.9-3.9h.1s1 0 1-1-1-1-1-1h-.1A5 5 0 0 0 11 5.1V5s0-1-1-1zm0 2.5a3.5 3.5 0 1 1 0 7 3.5 3.5 0 1 1 0-7z'/%3E%3Ccircle id='dot' cx='10' cy='10' r='2' display='none'/%3E%3Cpath id='stroke' d='M14 5l1 1-9 9-1-1 9-9z' display='none'/%3E%3C/svg%3E")}.mapboxgl-ctrl button.mapboxgl-ctrl-geolocate.mapboxgl-ctrl-geolocate-background-error .mapboxgl-ctrl-icon{background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg viewBox='0 0 20 20' xmlns='http://www.w3.org/2000/svg' fill='%23e54e33'%3E%3Cpath d='M10 4C9 4 9 5 9 5v.1A5 5 0 0 0 5.1 9H5s-1 0-1 1 1 1 1 1h.1A5 5 0 0 0 9 14.9v.1s0 1 1 1 1-1 1-1v-.1a5 5 0 0 0 3.9-3.9h.1s1 0 1-1-1-1-1-1h-.1A5 5 0 0 0 11 5.1V5s0-1-1-1zm0 2.5a3.5 3.5 0 1 1 0 7 3.5 3.5 0 1 1 0-7z'/%3E%3Ccircle id='dot' cx='10' cy='10' r='2' display='none'/%3E%3Cpath id='stroke' d='M14 5l1 1-9 9-1-1 9-9z' display='none'/%3E%3C/svg%3E")}}@media(-ms-high-contrast:black-on-white){.mapboxgl-ctrl button.mapboxgl-ctrl-geolocate .mapboxgl-ctrl-icon{background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg viewBox='0 0 20 20' xmlns='http://www.w3.org/2000/svg' fill='%23000'%3E%3Cpath d='M10 4C9 4 9 5 9 5v.1A5 5 0 0 0 5.1 9H5s-1 0-1 1 1 1 1 1h.1A5 5 0 0 0 9 14.9v.1s0 1 1 1 1-1 1-1v-.1a5 5 0 0 0 3.9-3.9h.1s1 0 1-1-1-1-1-1h-.1A5 5 0 0 0 11 5.1V5s0-1-1-1zm0 2.5a3.5 3.5 0 1 1 0 7 3.5 3.5 0 1 1 0-7z'/%3E%3Ccircle id='dot' cx='10' cy='10' r='2'/%3E%3Cpath id='stroke' d='M14 5l1 1-9 9-1-1 9-9z' display='none'/%3E%3C/svg%3E")}.mapboxgl-ctrl button.mapboxgl-ctrl-geolocate:disabled .mapboxgl-ctrl-icon{background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg viewBox='0 0 20 20' xmlns='http://www.w3.org/2000/svg' fill='%23666'%3E%3Cpath d='M10 4C9 4 9 5 9 5v.1A5 5 0 0 0 5.1 9H5s-1 0-1 1 1 1 1 1h.1A5 5 0 0 0 9 14.9v.1s0 1 1 1 1-1 1-1v-.1a5 5 0 0 0 3.9-3.9h.1s1 0 1-1-1-1-1-1h-.1A5 5 0 0 0 11 5.1V5s0-1-1-1zm0 2.5a3.5 3.5 0 1 1 0 7 3.5 3.5 0 1 1 0-7z'/%3E%3Ccircle id='dot' cx='10' cy='10' r='2'/%3E%3Cpath id='stroke' d='M14 5l1 1-9 9-1-1 9-9z' fill='%23f00'/%3E%3C/svg%3E")}}@keyframes mapboxgl-spin{0%{transform:rotate(0)}to{transform:rotate(1turn)}}a.mapboxgl-ctrl-logo{background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' xmlns:xlink='http://www.w3.org/1999/xlink' fill-rule='evenodd' viewBox='0 0 88 23'%3E%3Cdefs%3E%3Cpath id='logo' d='M11.5 2.25c5.105 0 9.25 4.145 9.25 9.25s-4.145 9.25-9.25 9.25-9.25-4.145-9.25-9.25 4.145-9.25 9.25-9.25zM6.997 15.983c-.051-.338-.828-5.802 2.233-8.873a4.395 4.395 0 013.13-1.28c1.27 0 2.49.51 3.39 1.42.91.9 1.42 2.12 1.42 3.39 0 1.18-.449 2.301-1.28 3.13C12.72 16.93 7 16 7 16l-.003-.017zM15.3 10.5l-2 .8-.8 2-.8-2-2-.8 2-.8.8-2 .8 2 2 .8z'/%3E%3Cpath id='text' d='M50.63 8c.13 0 .23.1.23.23V9c.7-.76 1.7-1.18 2.73-1.18 2.17 0 3.95 1.85 3.95 4.17s-1.77 4.19-3.94 4.19c-1.04 0-2.03-.43-2.74-1.18v3.77c0 .13-.1.23-.23.23h-1.4c-.13 0-.23-.1-.23-.23V8.23c0-.12.1-.23.23-.23h1.4zm-3.86.01c.01 0 .01 0 .01-.01.13 0 .22.1.22.22v7.55c0 .12-.1.23-.23.23h-1.4c-.13 0-.23-.1-.23-.23V15c-.7.76-1.69 1.19-2.73 1.19-2.17 0-3.94-1.87-3.94-4.19 0-2.32 1.77-4.19 3.94-4.19 1.03 0 2.02.43 2.73 1.18v-.75c0-.12.1-.23.23-.23h1.4zm26.375-.19a4.24 4.24 0 00-4.16 3.29c-.13.59-.13 1.19 0 1.77a4.233 4.233 0 004.17 3.3c2.35 0 4.26-1.87 4.26-4.19 0-2.32-1.9-4.17-4.27-4.17zM60.63 5c.13 0 .23.1.23.23v3.76c.7-.76 1.7-1.18 2.73-1.18 1.88 0 3.45 1.4 3.84 3.28.13.59.13 1.2 0 1.8-.39 1.88-1.96 3.29-3.84 3.29-1.03 0-2.02-.43-2.73-1.18v.77c0 .12-.1.23-.23.23h-1.4c-.13 0-.23-.1-.23-.23V5.23c0-.12.1-.23.23-.23h1.4zm-34 11h-1.4c-.13 0-.23-.11-.23-.23V8.22c.01-.13.1-.22.23-.22h1.4c.13 0 .22.11.23.22v.68c.5-.68 1.3-1.09 2.16-1.1h.03c1.09 0 2.09.6 2.6 1.55.45-.95 1.4-1.55 2.44-1.56 1.62 0 2.93 1.25 2.9 2.78l.03 5.2c0 .13-.1.23-.23.23h-1.41c-.13 0-.23-.11-.23-.23v-4.59c0-.98-.74-1.71-1.62-1.71-.8 0-1.46.7-1.59 1.62l.01 4.68c0 .13-.11.23-.23.23h-1.41c-.13 0-.23-.11-.23-.23v-4.59c0-.98-.74-1.71-1.62-1.71-.85 0-1.54.79-1.6 1.8v4.5c0 .13-.1.23-.23.23zm53.615 0h-1.61c-.04 0-.08-.01-.12-.03-.09-.06-.13-.19-.06-.28l2.43-3.71-2.39-3.65a.213.213 0 01-.03-.12c0-.12.09-.21.21-.21h1.61c.13 0 .24.06.3.17l1.41 2.37 1.4-2.37a.34.34 0 01.3-.17h1.6c.04 0 .08.01.12.03.09.06.13.19.06.28l-2.37 3.65 2.43 3.7c0 .05.01.09.01.13 0 .12-.09.21-.21.21h-1.61c-.13 0-.24-.06-.3-.17l-1.44-2.42-1.44 2.42a.34.34 0 01-.3.17zm-7.12-1.49c-1.33 0-2.42-1.12-2.42-2.51 0-1.39 1.08-2.52 2.42-2.52 1.33 0 2.42 1.12 2.42 2.51 0 1.39-1.08 2.51-2.42 2.52zm-19.865 0c-1.32 0-2.39-1.11-2.42-2.48v-.07c.02-1.38 1.09-2.49 2.4-2.49 1.32 0 2.41 1.12 2.41 2.51 0 1.39-1.07 2.52-2.39 2.53zm-8.11-2.48c-.01 1.37-1.09 2.47-2.41 2.47s-2.42-1.12-2.42-2.51c0-1.39 1.08-2.52 2.4-2.52 1.33 0 2.39 1.11 2.41 2.48l.02.08zm18.12 2.47c-1.32 0-2.39-1.11-2.41-2.48v-.06c.02-1.38 1.09-2.48 2.41-2.48s2.42 1.12 2.42 2.51c0 1.39-1.09 2.51-2.42 2.51z'/%3E%3C/defs%3E%3Cmask id='clip'%3E%3Crect x='0' y='0' width='100%25' height='100%25' fill='white'/%3E%3Cuse xlink:href='%23logo'/%3E%3Cuse xlink:href='%23text'/%3E%3C/mask%3E%3Cg id='outline' opacity='0.3' stroke='%23000' stroke-width='3'%3E%3Ccircle mask='url(%23clip)' cx='11.5' cy='11.5' r='9.25'/%3E%3Cuse xlink:href='%23text' mask='url(%23clip)'/%3E%3C/g%3E%3Cg id='fill' opacity='0.9' fill='%23fff'%3E%3Cuse xlink:href='%23logo'/%3E%3Cuse xlink:href='%23text'/%3E%3C/g%3E%3C/svg%3E");background-repeat:no-repeat;cursor:pointer;display:block;height:23px;margin:0 0 -4px -4px;overflow:hidden;width:88px}a.mapboxgl-ctrl-logo.mapboxgl-compact{width:23px}@media(-ms-high-contrast:active){a.mapboxgl-ctrl-logo{background-color:initial;background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' xmlns:xlink='http://www.w3.org/1999/xlink' fill-rule='evenodd' viewBox='0 0 88 23'%3E%3Cdefs%3E%3Cpath id='logo' d='M11.5 2.25c5.105 0 9.25 4.145 9.25 9.25s-4.145 9.25-9.25 9.25-9.25-4.145-9.25-9.25 4.145-9.25 9.25-9.25zM6.997 15.983c-.051-.338-.828-5.802 2.233-8.873a4.395 4.395 0 013.13-1.28c1.27 0 2.49.51 3.39 1.42.91.9 1.42 2.12 1.42 3.39 0 1.18-.449 2.301-1.28 3.13C12.72 16.93 7 16 7 16l-.003-.017zM15.3 10.5l-2 .8-.8 2-.8-2-2-.8 2-.8.8-2 .8 2 2 .8z'/%3E%3Cpath id='text' d='M50.63 8c.13 0 .23.1.23.23V9c.7-.76 1.7-1.18 2.73-1.18 2.17 0 3.95 1.85 3.95 4.17s-1.77 4.19-3.94 4.19c-1.04 0-2.03-.43-2.74-1.18v3.77c0 .13-.1.23-.23.23h-1.4c-.13 0-.23-.1-.23-.23V8.23c0-.12.1-.23.23-.23h1.4zm-3.86.01c.01 0 .01 0 .01-.01.13 0 .22.1.22.22v7.55c0 .12-.1.23-.23.23h-1.4c-.13 0-.23-.1-.23-.23V15c-.7.76-1.69 1.19-2.73 1.19-2.17 0-3.94-1.87-3.94-4.19 0-2.32 1.77-4.19 3.94-4.19 1.03 0 2.02.43 2.73 1.18v-.75c0-.12.1-.23.23-.23h1.4zm26.375-.19a4.24 4.24 0 00-4.16 3.29c-.13.59-.13 1.19 0 1.77a4.233 4.233 0 004.17 3.3c2.35 0 4.26-1.87 4.26-4.19 0-2.32-1.9-4.17-4.27-4.17zM60.63 5c.13 0 .23.1.23.23v3.76c.7-.76 1.7-1.18 2.73-1.18 1.88 0 3.45 1.4 3.84 3.28.13.59.13 1.2 0 1.8-.39 1.88-1.96 3.29-3.84 3.29-1.03 0-2.02-.43-2.73-1.18v.77c0 .12-.1.23-.23.23h-1.4c-.13 0-.23-.1-.23-.23V5.23c0-.12.1-.23.23-.23h1.4zm-34 11h-1.4c-.13 0-.23-.11-.23-.23V8.22c.01-.13.1-.22.23-.22h1.4c.13 0 .22.11.23.22v.68c.5-.68 1.3-1.09 2.16-1.1h.03c1.09 0 2.09.6 2.6 1.55.45-.95 1.4-1.55 2.44-1.56 1.62 0 2.93 1.25 2.9 2.78l.03 5.2c0 .13-.1.23-.23.23h-1.41c-.13 0-.23-.11-.23-.23v-4.59c0-.98-.74-1.71-1.62-1.71-.8 0-1.46.7-1.59 1.62l.01 4.68c0 .13-.11.23-.23.23h-1.41c-.13 0-.23-.11-.23-.23v-4.59c0-.98-.74-1.71-1.62-1.71-.85 0-1.54.79-1.6 1.8v4.5c0 .13-.1.23-.23.23zm53.615 0h-1.61c-.04 0-.08-.01-.12-.03-.09-.06-.13-.19-.06-.28l2.43-3.71-2.39-3.65a.213.213 0 01-.03-.12c0-.12.09-.21.21-.21h1.61c.13 0 .24.06.3.17l1.41 2.37 1.4-2.37a.34.34 0 01.3-.17h1.6c.04 0 .08.01.12.03.09.06.13.19.06.28l-2.37 3.65 2.43 3.7c0 .05.01.09.01.13 0 .12-.09.21-.21.21h-1.61c-.13 0-.24-.06-.3-.17l-1.44-2.42-1.44 2.42a.34.34 0 01-.3.17zm-7.12-1.49c-1.33 0-2.42-1.12-2.42-2.51 0-1.39 1.08-2.52 2.42-2.52 1.33 0 2.42 1.12 2.42 2.51 0 1.39-1.08 2.51-2.42 2.52zm-19.865 0c-1.32 0-2.39-1.11-2.42-2.48v-.07c.02-1.38 1.09-2.49 2.4-2.49 1.32 0 2.41 1.12 2.41 2.51 0 1.39-1.07 2.52-2.39 2.53zm-8.11-2.48c-.01 1.37-1.09 2.47-2.41 2.47s-2.42-1.12-2.42-2.51c0-1.39 1.08-2.52 2.4-2.52 1.33 0 2.39 1.11 2.41 2.48l.02.08zm18.12 2.47c-1.32 0-2.39-1.11-2.41-2.48v-.06c.02-1.38 1.09-2.48 2.41-2.48s2.42 1.12 2.42 2.51c0 1.39-1.09 2.51-2.42 2.51z'/%3E%3C/defs%3E%3Cmask id='clip'%3E%3Crect x='0' y='0' width='100%25' height='100%25' fill='white'/%3E%3Cuse xlink:href='%23logo'/%3E%3Cuse xlink:href='%23text'/%3E%3C/mask%3E%3Cg id='outline' opacity='1' stroke='%23000' stroke-width='3'%3E%3Ccircle mask='url(%23clip)' cx='11.5' cy='11.5' r='9.25'/%3E%3Cuse xlink:href='%23text' mask='url(%23clip)'/%3E%3C/g%3E%3Cg id='fill' opacity='1' fill='%23fff'%3E%3Cuse xlink:href='%23logo'/%3E%3Cuse xlink:href='%23text'/%3E%3C/g%3E%3C/svg%3E")}}@media(-ms-high-contrast:black-on-white){a.mapboxgl-ctrl-logo{background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' xmlns:xlink='http://www.w3.org/1999/xlink' fill-rule='evenodd' viewBox='0 0 88 23'%3E%3Cdefs%3E%3Cpath id='logo' d='M11.5 2.25c5.105 0 9.25 4.145 9.25 9.25s-4.145 9.25-9.25 9.25-9.25-4.145-9.25-9.25 4.145-9.25 9.25-9.25zM6.997 15.983c-.051-.338-.828-5.802 2.233-8.873a4.395 4.395 0 013.13-1.28c1.27 0 2.49.51 3.39 1.42.91.9 1.42 2.12 1.42 3.39 0 1.18-.449 2.301-1.28 3.13C12.72 16.93 7 16 7 16l-.003-.017zM15.3 10.5l-2 .8-.8 2-.8-2-2-.8 2-.8.8-2 .8 2 2 .8z'/%3E%3Cpath id='text' d='M50.63 8c.13 0 .23.1.23.23V9c.7-.76 1.7-1.18 2.73-1.18 2.17 0 3.95 1.85 3.95 4.17s-1.77 4.19-3.94 4.19c-1.04 0-2.03-.43-2.74-1.18v3.77c0 .13-.1.23-.23.23h-1.4c-.13 0-.23-.1-.23-.23V8.23c0-.12.1-.23.23-.23h1.4zm-3.86.01c.01 0 .01 0 .01-.01.13 0 .22.1.22.22v7.55c0 .12-.1.23-.23.23h-1.4c-.13 0-.23-.1-.23-.23V15c-.7.76-1.69 1.19-2.73 1.19-2.17 0-3.94-1.87-3.94-4.19 0-2.32 1.77-4.19 3.94-4.19 1.03 0 2.02.43 2.73 1.18v-.75c0-.12.1-.23.23-.23h1.4zm26.375-.19a4.24 4.24 0 00-4.16 3.29c-.13.59-.13 1.19 0 1.77a4.233 4.233 0 004.17 3.3c2.35 0 4.26-1.87 4.26-4.19 0-2.32-1.9-4.17-4.27-4.17zM60.63 5c.13 0 .23.1.23.23v3.76c.7-.76 1.7-1.18 2.73-1.18 1.88 0 3.45 1.4 3.84 3.28.13.59.13 1.2 0 1.8-.39 1.88-1.96 3.29-3.84 3.29-1.03 0-2.02-.43-2.73-1.18v.77c0 .12-.1.23-.23.23h-1.4c-.13 0-.23-.1-.23-.23V5.23c0-.12.1-.23.23-.23h1.4zm-34 11h-1.4c-.13 0-.23-.11-.23-.23V8.22c.01-.13.1-.22.23-.22h1.4c.13 0 .22.11.23.22v.68c.5-.68 1.3-1.09 2.16-1.1h.03c1.09 0 2.09.6 2.6 1.55.45-.95 1.4-1.55 2.44-1.56 1.62 0 2.93 1.25 2.9 2.78l.03 5.2c0 .13-.1.23-.23.23h-1.41c-.13 0-.23-.11-.23-.23v-4.59c0-.98-.74-1.71-1.62-1.71-.8 0-1.46.7-1.59 1.62l.01 4.68c0 .13-.11.23-.23.23h-1.41c-.13 0-.23-.11-.23-.23v-4.59c0-.98-.74-1.71-1.62-1.71-.85 0-1.54.79-1.6 1.8v4.5c0 .13-.1.23-.23.23zm53.615 0h-1.61c-.04 0-.08-.01-.12-.03-.09-.06-.13-.19-.06-.28l2.43-3.71-2.39-3.65a.213.213 0 01-.03-.12c0-.12.09-.21.21-.21h1.61c.13 0 .24.06.3.17l1.41 2.37 1.4-2.37a.34.34 0 01.3-.17h1.6c.04 0 .08.01.12.03.09.06.13.19.06.28l-2.37 3.65 2.43 3.7c0 .05.01.09.01.13 0 .12-.09.21-.21.21h-1.61c-.13 0-.24-.06-.3-.17l-1.44-2.42-1.44 2.42a.34.34 0 01-.3.17zm-7.12-1.49c-1.33 0-2.42-1.12-2.42-2.51 0-1.39 1.08-2.52 2.42-2.52 1.33 0 2.42 1.12 2.42 2.51 0 1.39-1.08 2.51-2.42 2.52zm-19.865 0c-1.32 0-2.39-1.11-2.42-2.48v-.07c.02-1.38 1.09-2.49 2.4-2.49 1.32 0 2.41 1.12 2.41 2.51 0 1.39-1.07 2.52-2.39 2.53zm-8.11-2.48c-.01 1.37-1.09 2.47-2.41 2.47s-2.42-1.12-2.42-2.51c0-1.39 1.08-2.52 2.4-2.52 1.33 0 2.39 1.11 2.41 2.48l.02.08zm18.12 2.47c-1.32 0-2.39-1.11-2.41-2.48v-.06c.02-1.38 1.09-2.48 2.41-2.48s2.42 1.12 2.42 2.51c0 1.39-1.09 2.51-2.42 2.51z'/%3E%3C/defs%3E%3Cmask id='clip'%3E%3Crect x='0' y='0' width='100%25' height='100%25' fill='white'/%3E%3Cuse xlink:href='%23logo'/%3E%3Cuse xlink:href='%23text'/%3E%3C/mask%3E%3Cg id='outline' opacity='1' stroke='%23fff' stroke-width='3' fill='%23fff'%3E%3Ccircle mask='url(%23clip)' cx='11.5' cy='11.5' r='9.25'/%3E%3Cuse xlink:href='%23text' mask='url(%23clip)'/%3E%3C/g%3E%3Cg id='fill' opacity='1' fill='%23000'%3E%3Cuse xlink:href='%23logo'/%3E%3Cuse xlink:href='%23text'/%3E%3C/g%3E%3C/svg%3E")}}.mapboxgl-ctrl.mapboxgl-ctrl-attrib{background-color:#ffffff80;margin:0;padding:0 5px}@media screen{.mapboxgl-ctrl-attrib.mapboxgl-compact{background-color:#fff;border-radius:12px;box-sizing:initial;margin:10px;min-height:20px;padding:2px 24px 2px 0;position:relative}.mapboxgl-ctrl-attrib.mapboxgl-compact-show{padding:2px 28px 2px 8px;visibility:visible}.mapboxgl-ctrl-bottom-left>.mapboxgl-ctrl-attrib.mapboxgl-compact-show,.mapboxgl-ctrl-left>.mapboxgl-ctrl-attrib.mapboxgl-compact-show,.mapboxgl-ctrl-top-left>.mapboxgl-ctrl-attrib.mapboxgl-compact-show{border-radius:12px;padding:2px 8px 2px 28px}.mapboxgl-ctrl-attrib.mapboxgl-compact .mapboxgl-ctrl-attrib-inner{display:none}.mapboxgl-ctrl-attrib-button{background-color:#ffffff80;background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg viewBox='0 0 20 20' xmlns='http://www.w3.org/2000/svg' fill-rule='evenodd'%3E%3Cpath d='M4 10a6 6 0 1 0 12 0 6 6 0 1 0-12 0m5-3a1 1 0 1 0 2 0 1 1 0 1 0-2 0m0 3a1 1 0 1 1 2 0v3a1 1 0 1 1-2 0'/%3E%3C/svg%3E");border:0;border-radius:12px;box-sizing:border-box;cursor:pointer;display:none;height:24px;outline:none;position:absolute;right:0;top:0;width:24px}.mapboxgl-ctrl-bottom-left .mapboxgl-ctrl-attrib-button,.mapboxgl-ctrl-left .mapboxgl-ctrl-attrib-button,.mapboxgl-ctrl-top-left .mapboxgl-ctrl-attrib-button{left:0}.mapboxgl-ctrl-attrib.mapboxgl-compact .mapboxgl-ctrl-attrib-button,.mapboxgl-ctrl-attrib.mapboxgl-compact-show .mapboxgl-ctrl-attrib-inner{display:block}.mapboxgl-ctrl-attrib.mapboxgl-compact-show .mapboxgl-ctrl-attrib-button{background-color:#0000000d}.mapboxgl-ctrl-bottom-right>.mapboxgl-ctrl-attrib.mapboxgl-compact:after{bottom:0;right:0}.mapboxgl-ctrl-right>.mapboxgl-ctrl-attrib.mapboxgl-compact:after{right:0}.mapboxgl-ctrl-top-right>.mapboxgl-ctrl-attrib.mapboxgl-compact:after{right:0;top:0}.mapboxgl-ctrl-top-left>.mapboxgl-ctrl-attrib.mapboxgl-compact:after{left:0;top:0}.mapboxgl-ctrl-bottom-left>.mapboxgl-ctrl-attrib.mapboxgl-compact:after{bottom:0;left:0}.mapboxgl-ctrl-left>.mapboxgl-ctrl-attrib.mapboxgl-compact:after{left:0}}@media screen and (-ms-high-contrast:active){.mapboxgl-ctrl-attrib.mapboxgl-compact:after{background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg viewBox='0 0 20 20' xmlns='http://www.w3.org/2000/svg' fill-rule='evenodd' fill='%23fff'%3E%3Cpath d='M4 10a6 6 0 1 0 12 0 6 6 0 1 0-12 0m5-3a1 1 0 1 0 2 0 1 1 0 1 0-2 0m0 3a1 1 0 1 1 2 0v3a1 1 0 1 1-2 0'/%3E%3C/svg%3E")}}@media screen and (-ms-high-contrast:black-on-white){.mapboxgl-ctrl-attrib.mapboxgl-compact:after{background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg viewBox='0 0 20 20' xmlns='http://www.w3.org/2000/svg' fill-rule='evenodd'%3E%3Cpath d='M4 10a6 6 0 1 0 12 0 6 6 0 1 0-12 0m5-3a1 1 0 1 0 2 0 1 1 0 1 0-2 0m0 3a1 1 0 1 1 2 0v3a1 1 0 1 1-2 0'/%3E%3C/svg%3E")}}.mapboxgl-ctrl-attrib a{color:#000000bf;text-decoration:none}.mapboxgl-ctrl-attrib a:hover{color:inherit;text-decoration:underline}.mapboxgl-ctrl-attrib .mapbox-improve-map{font-weight:700;margin-left:2px}.mapboxgl-attrib-empty{display:none}.mapboxgl-ctrl-scale{background-color:#ffffffbf;border:2px solid #333;border-top:#333;box-sizing:border-box;color:#333;font-size:10px;padding:0 5px;white-space:nowrap}.mapboxgl-popup{display:flex;left:0;pointer-events:none;position:absolute;top:0;will-change:transform}.mapboxgl-popup-anchor-top,.mapboxgl-popup-anchor-top-left,.mapboxgl-popup-anchor-top-right{flex-direction:column}.mapboxgl-popup-anchor-bottom,.mapboxgl-popup-anchor-bottom-left,.mapboxgl-popup-anchor-bottom-right{flex-direction:column-reverse}.mapboxgl-popup-anchor-left{flex-direction:row}.mapboxgl-popup-anchor-right{flex-direction:row-reverse}.mapboxgl-popup-tip{border:10px solid #0000;height:0;width:0;z-index:1}.mapboxgl-popup-anchor-top .mapboxgl-popup-tip{align-self:center;border-bottom-color:#fff;border-top:none}.mapboxgl-popup-anchor-top-left .mapboxgl-popup-tip{align-self:flex-start;border-bottom-color:#fff;border-left:none;border-top:none}.mapboxgl-popup-anchor-top-right .mapboxgl-popup-tip{align-self:flex-end;border-bottom-color:#fff;border-right:none;border-top:none}.mapboxgl-popup-anchor-bottom .mapboxgl-popup-tip{align-self:center;border-bottom:none;border-top-color:#fff}.mapboxgl-popup-anchor-bottom-left .mapboxgl-popup-tip{align-self:flex-start;border-bottom:none;border-left:none;border-top-color:#fff}.mapboxgl-popup-anchor-bottom-right .mapboxgl-popup-tip{align-self:flex-end;border-bottom:none;border-right:none;border-top-color:#fff}.mapboxgl-popup-anchor-left .mapboxgl-popup-tip{align-self:center;border-left:none;border-right-color:#fff}.mapboxgl-popup-anchor-right .mapboxgl-popup-tip{align-self:center;border-left-color:#fff;border-right:none}.mapboxgl-popup-close-button{background-color:initial;border:0;border-radius:0 3px 0 0;cursor:pointer;position:absolute;right:0;top:0}.mapboxgl-popup-close-button:hover{background-color:#0000000d}.mapboxgl-popup-content{background:#fff;border-radius:3px;box-shadow:0 1px 2px #0000001a;padding:10px 10px 15px;pointer-events:auto;position:relative}.mapboxgl-popup-anchor-top-left .mapboxgl-popup-content{border-top-left-radius:0}.mapboxgl-popup-anchor-top-right .mapboxgl-popup-content{border-top-right-radius:0}.mapboxgl-popup-anchor-bottom-left .mapboxgl-popup-content{border-bottom-left-radius:0}.mapboxgl-popup-anchor-bottom-right .mapboxgl-popup-content{border-bottom-right-radius:0}.mapboxgl-popup-track-pointer{display:none}.mapboxgl-popup-track-pointer *{pointer-events:none;-webkit-user-select:none;user-select:none}.mapboxgl-map:hover .mapboxgl-popup-track-pointer{display:flex}.mapboxgl-map:active .mapboxgl-popup-track-pointer{display:none}.mapboxgl-marker{left:0;opacity:1;position:absolute;top:0;transition:opacity .2s;will-change:transform}.mapboxgl-user-location-dot,.mapboxgl-user-location-dot:before{background-color:#1da1f2;border-radius:50%;height:15px;width:15px}.mapboxgl-user-location-dot:before{animation:mapboxgl-user-location-dot-pulse 2s infinite;content:"";position:absolute}.mapboxgl-user-location-dot:after{border:2px solid #fff;border-radius:50%;box-shadow:0 0 3px #00000059;box-sizing:border-box;content:"";height:19px;left:-2px;position:absolute;top:-2px;width:19px}.mapboxgl-user-location-show-heading .mapboxgl-user-location-heading{height:0;width:0}.mapboxgl-user-location-show-heading .mapboxgl-user-location-heading:after,.mapboxgl-user-location-show-heading .mapboxgl-user-location-heading:before{border-bottom:7.5px solid #4aa1eb;content:"";position:absolute}.mapboxgl-user-location-show-heading .mapboxgl-user-location-heading:before{border-left:7.5px solid #0000;transform:translateY(-28px) skewY(-20deg)}.mapboxgl-user-location-show-heading .mapboxgl-user-location-heading:after{border-right:7.5px solid #0000;transform:translate(7.5px,-28px) skewY(20deg)}@keyframes mapboxgl-user-location-dot-pulse{0%{opacity:1;transform:scale(1)}70%{opacity:0;transform:scale(3)}to{opacity:0;transform:scale(1)}}.mapboxgl-user-location-dot-stale{background-color:#aaa}.mapboxgl-user-location-dot-stale:after{display:none}.mapboxgl-user-location-accuracy-circle{background-color:#1da1f233;border-radius:100%;height:1px;width:1px}.mapboxgl-crosshair,.mapboxgl-crosshair .mapboxgl-interactive,.mapboxgl-crosshair .mapboxgl-interactive:active{cursor:crosshair}.mapboxgl-boxzoom{background:#fff;border:2px dotted #202020;height:0;left:0;opacity:.5;position:absolute;top:0;width:0}@media print{.mapbox-improve-map{display:none}}.mapboxgl-scroll-zoom-blocker,.mapboxgl-touch-pan-blocker{align-items:center;background:#000000b3;color:#fff;display:flex;font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Helvetica,Arial,sans-serif;height:100%;justify-content:center;left:0;opacity:0;pointer-events:none;position:absolute;text-align:center;top:0;transition:opacity .75s ease-in-out;transition-delay:1s;width:100%}.mapboxgl-scroll-zoom-blocker-show,.mapboxgl-touch-pan-blocker-show{opacity:1;transition:opacity .1s ease-in-out}.mapboxgl-canvas-container.mapboxgl-touch-pan-blocker-override.mapboxgl-scrollable-page,.mapboxgl-canvas-container.mapboxgl-touch-pan-blocker-override.mapboxgl-scrollable-page .mapboxgl-canvas{touch-action:pan-x pan-y}.mapboxgl-ctrl-separator{background-color:#e0e0e0;height:1px}.mapboxgl-ctrl button.mapboxgl-ctrl-level-button{color:#333;font-size:18px;font-weight:700;height:50px;width:50px}.mapboxgl-ctrl button.mapboxgl-ctrl-level-button:first-child{border-top-left-radius:8px;border-top-right-radius:8px}.mapboxgl-ctrl button.mapboxgl-ctrl-level-button:last-child{border-bottom-left-radius:8px;border-bottom-right-radius:8px}.mapboxgl-ctrl button.mapboxgl-ctrl-level-button:hover{background-color:#f5f5f5}.mapboxgl-ctrl button.mapboxgl-ctrl-level-button-selected{background-color:#4a5568;color:#fff}.mapboxgl-ctrl button.mapboxgl-ctrl-level-button-selected:hover{background-color:#2d3748}`)),document.head.appendChild(o)}}catch(t){console.error("vite-plugin-css-injected-by-js",t)}})();
2
- (function(_,d){typeof exports=="object"&&typeof module<"u"?d(exports,require("react"),require("@mui/x-license"),require("mapbox-gl"),require("@tracktor/design-system"),require("react-map-gl"),require("@tracktor/react-utils")):typeof define=="function"&&define.amd?define(["exports","react","@mui/x-license","mapbox-gl","@tracktor/design-system","react-map-gl","@tracktor/react-utils"],d):(_=typeof globalThis<"u"?globalThis:_||self,d(_["@tracktor/map"]={},_.React,_.muiXLicense,_.mapboxgl,_.designSystem,_.MapboxMap,_.reactUtils))})(this,(function(_,d,fe,oe,j,x,S){"use strict";var V={exports:{}},L={};/**
2
+ (function(T,p){typeof exports=="object"&&typeof module<"u"?p(exports,require("react"),require("@mui/x-license"),require("mapbox-gl"),require("@tracktor/design-system"),require("react-map-gl"),require("@tracktor/react-utils")):typeof define=="function"&&define.amd?define(["exports","react","@mui/x-license","mapbox-gl","@tracktor/design-system","react-map-gl","@tracktor/react-utils"],p):(T=typeof globalThis<"u"?globalThis:T||self,p(T["@tracktor/map"]={},T.React,T.muiXLicense,T.mapboxgl,T.designSystem,T.MapboxMap,T.reactUtils))})(this,(function(T,p,fe,oe,j,x,S){"use strict";var V={exports:{}},L={};/**
3
3
  * @license React
4
4
  * react-jsx-runtime.production.js
5
5
  *
@@ -7,7 +7,7 @@
7
7
  *
8
8
  * This source code is licensed under the MIT license found in the
9
9
  * LICENSE file in the root directory of this source tree.
10
- */var se;function pe(){if(se)return L;se=1;var t=Symbol.for("react.transitional.element"),r=Symbol.for("react.fragment");function s(i,o,l){var u=null;if(l!==void 0&&(u=""+l),o.key!==void 0&&(u=""+o.key),"key"in o){l={};for(var c in o)c!=="key"&&(l[c]=o[c])}else l=o;return o=l.ref,{$$typeof:t,type:i,key:u,ref:o!==void 0?o:null,props:l}}return L.Fragment=r,L.jsx=s,L.jsxs=s,L}var M={};/**
10
+ */var se;function pe(){if(se)return L;se=1;var t=Symbol.for("react.transitional.element"),r=Symbol.for("react.fragment");function s(l,n,c){var a=null;if(c!==void 0&&(a=""+c),n.key!==void 0&&(a=""+n.key),"key"in n){c={};for(var u in n)u!=="key"&&(c[u]=n[u])}else c=n;return n=c.ref,{$$typeof:t,type:l,key:a,ref:n!==void 0?n:null,props:c}}return L.Fragment=r,L.jsx=s,L.jsxs=s,L}var M={};/**
11
11
  * @license React
12
12
  * react-jsx-runtime.development.js
13
13
  *
@@ -15,9 +15,9 @@
15
15
  *
16
16
  * This source code is licensed under the MIT license found in the
17
17
  * LICENSE file in the root directory of this source tree.
18
- */var ae;function me(){return ae||(ae=1,process.env.NODE_ENV!=="production"&&(function(){function t(e){if(e==null)return null;if(typeof e=="function")return e.$$typeof===te?null:e.displayName||e.name||null;if(typeof e=="string")return e;switch(e){case w:return"Fragment";case D:return"Profiler";case z:return"StrictMode";case Y:return"Suspense";case W:return"SuspenseList";case ee:return"Activity"}if(typeof e=="object")switch(typeof e.tag=="number"&&console.error("Received an unexpected object in getComponentNameFromType(). This is likely a bug in React. Please file an issue."),e.$$typeof){case I:return"Portal";case $:return e.displayName||"Context";case K:return(e._context.displayName||"Context")+".Consumer";case J:var a=e.render;return e=e.displayName,e||(e=a.displayName||a.name||"",e=e!==""?"ForwardRef("+e+")":"ForwardRef"),e;case q:return a=e.displayName||null,a!==null?a:t(e.type)||"Memo";case B:a=e._payload,e=e._init;try{return t(e(a))}catch{}}return null}function r(e){return""+e}function s(e){try{r(e);var a=!1}catch{a=!0}if(a){a=console;var g=a.error,b=typeof Symbol=="function"&&Symbol.toStringTag&&e[Symbol.toStringTag]||e.constructor.name||"Object";return g.call(a,"The provided key is an unsupported type %s. This value must be coerced to a string before using it here.",b),r(e)}}function i(e){if(e===w)return"<>";if(typeof e=="object"&&e!==null&&e.$$typeof===B)return"<...>";try{var a=t(e);return a?"<"+a+">":"<...>"}catch{return"<...>"}}function o(){var e=G.A;return e===null?null:e.getOwner()}function l(){return Error("react-stack-top-frame")}function u(e){if(A.call(e,"key")){var a=Object.getOwnPropertyDescriptor(e,"key").get;if(a&&a.isReactWarning)return!1}return e.key!==void 0}function c(e,a){function g(){Z||(Z=!0,console.error("%s: `key` is not a prop. Trying to access it will result in `undefined` being returned. If you need to access the same value within the child component, you should pass it as a different prop. (https://react.dev/link/special-props)",a))}g.isReactWarning=!0,Object.defineProperty(e,"key",{get:g,configurable:!0})}function p(){var e=t(this.type);return N[e]||(N[e]=!0,console.error("Accessing element.ref was removed in React 19. ref is now a regular prop. It will be removed from the JSX Element type in a future release.")),e=this.props.ref,e!==void 0?e:null}function y(e,a,g,b,P,k){var n=g.ref;return e={$$typeof:T,type:e,key:a,props:g,_owner:b},(n!==void 0?n:null)!==null?Object.defineProperty(e,"ref",{enumerable:!1,get:p}):Object.defineProperty(e,"ref",{enumerable:!1,value:null}),e._store={},Object.defineProperty(e._store,"validated",{configurable:!1,enumerable:!1,writable:!0,value:0}),Object.defineProperty(e,"_debugInfo",{configurable:!1,enumerable:!1,writable:!0,value:null}),Object.defineProperty(e,"_debugStack",{configurable:!1,enumerable:!1,writable:!0,value:P}),Object.defineProperty(e,"_debugTask",{configurable:!1,enumerable:!1,writable:!0,value:k}),Object.freeze&&(Object.freeze(e.props),Object.freeze(e)),e}function E(e,a,g,b,P,k){var n=a.children;if(n!==void 0)if(b)if(re(n)){for(b=0;b<n.length;b++)R(n[b]);Object.freeze&&Object.freeze(n)}else console.error("React.jsx: Static children should always be an array. You are likely explicitly calling React.jsxs or React.jsxDEV. Use the Babel transform instead.");else R(n);if(A.call(a,"key")){n=t(e);var h=Object.keys(a).filter(function(ne){return ne!=="key"});b=0<h.length?"{key: someKey, "+h.join(": ..., ")+": ...}":"{key: someKey}",U[n+b]||(h=0<h.length?"{"+h.join(": ..., ")+": ...}":"{}",console.error(`A props object containing a "key" prop is being spread into JSX:
18
+ */var ae;function me(){return ae||(ae=1,process.env.NODE_ENV!=="production"&&(function(){function t(e){if(e==null)return null;if(typeof e=="function")return e.$$typeof===te?null:e.displayName||e.name||null;if(typeof e=="string")return e;switch(e){case w:return"Fragment";case D:return"Profiler";case z:return"StrictMode";case Y:return"Suspense";case W:return"SuspenseList";case Z:return"Activity"}if(typeof e=="object")switch(typeof e.tag=="number"&&console.error("Received an unexpected object in getComponentNameFromType(). This is likely a bug in React. Please file an issue."),e.$$typeof){case I:return"Portal";case q:return e.displayName||"Context";case $:return(e._context.displayName||"Context")+".Consumer";case J:var i=e.render;return e=e.displayName,e||(e=i.displayName||i.name||"",e=e!==""?"ForwardRef("+e+")":"ForwardRef"),e;case ee:return i=e.displayName||null,i!==null?i:t(e.type)||"Memo";case B:i=e._payload,e=e._init;try{return t(e(i))}catch{}}return null}function r(e){return""+e}function s(e){try{r(e);var i=!1}catch{i=!0}if(i){i=console;var y=i.error,R=typeof Symbol=="function"&&Symbol.toStringTag&&e[Symbol.toStringTag]||e.constructor.name||"Object";return y.call(i,"The provided key is an unsupported type %s. This value must be coerced to a string before using it here.",R),r(e)}}function l(e){if(e===w)return"<>";if(typeof e=="object"&&e!==null&&e.$$typeof===B)return"<...>";try{var i=t(e);return i?"<"+i+">":"<...>"}catch{return"<...>"}}function n(){var e=G.A;return e===null?null:e.getOwner()}function c(){return Error("react-stack-top-frame")}function a(e){if(A.call(e,"key")){var i=Object.getOwnPropertyDescriptor(e,"key").get;if(i&&i.isReactWarning)return!1}return e.key!==void 0}function u(e,i){function y(){H||(H=!0,console.error("%s: `key` is not a prop. Trying to access it will result in `undefined` being returned. If you need to access the same value within the child component, you should pass it as a different prop. (https://react.dev/link/special-props)",i))}y.isReactWarning=!0,Object.defineProperty(e,"key",{get:y,configurable:!0})}function f(){var e=t(this.type);return N[e]||(N[e]=!0,console.error("Accessing element.ref was removed in React 19. ref is now a regular prop. It will be removed from the JSX Element type in a future release.")),e=this.props.ref,e!==void 0?e:null}function b(e,i,y,R,P,k){var o=y.ref;return e={$$typeof:v,type:e,key:i,props:y,_owner:R},(o!==void 0?o:null)!==null?Object.defineProperty(e,"ref",{enumerable:!1,get:f}):Object.defineProperty(e,"ref",{enumerable:!1,value:null}),e._store={},Object.defineProperty(e._store,"validated",{configurable:!1,enumerable:!1,writable:!0,value:0}),Object.defineProperty(e,"_debugInfo",{configurable:!1,enumerable:!1,writable:!0,value:null}),Object.defineProperty(e,"_debugStack",{configurable:!1,enumerable:!1,writable:!0,value:P}),Object.defineProperty(e,"_debugTask",{configurable:!1,enumerable:!1,writable:!0,value:k}),Object.freeze&&(Object.freeze(e.props),Object.freeze(e)),e}function m(e,i,y,R,P,k){var o=i.children;if(o!==void 0)if(R)if(re(o)){for(R=0;R<o.length;R++)E(o[R]);Object.freeze&&Object.freeze(o)}else console.error("React.jsx: Static children should always be an array. You are likely explicitly calling React.jsxs or React.jsxDEV. Use the Babel transform instead.");else E(o);if(A.call(i,"key")){o=t(e);var _=Object.keys(i).filter(function(ne){return ne!=="key"});R=0<_.length?"{key: someKey, "+_.join(": ..., ")+": ...}":"{key: someKey}",U[o+R]||(_=0<_.length?"{"+_.join(": ..., ")+": ...}":"{}",console.error(`A props object containing a "key" prop is being spread into JSX:
19
19
  let props = %s;
20
20
  <%s {...props} />
21
21
  React keys must be passed directly to JSX without using spread:
22
22
  let props = %s;
23
- <%s key={someKey} {...props} />`,b,n,h,n),U[n+b]=!0)}if(n=null,g!==void 0&&(s(g),n=""+g),u(a)&&(s(a.key),n=""+a.key),"key"in a){g={};for(var F in a)F!=="key"&&(g[F]=a[F])}else g=a;return n&&c(g,typeof e=="function"?e.displayName||e.name||"Unknown":e),y(e,n,g,o(),P,k)}function R(e){v(e)?e._store&&(e._store.validated=1):typeof e=="object"&&e!==null&&e.$$typeof===B&&(e._payload.status==="fulfilled"?v(e._payload.value)&&e._payload.value._store&&(e._payload.value._store.validated=1):e._store&&(e._store.validated=1))}function v(e){return typeof e=="object"&&e!==null&&e.$$typeof===T}var m=d,T=Symbol.for("react.transitional.element"),I=Symbol.for("react.portal"),w=Symbol.for("react.fragment"),z=Symbol.for("react.strict_mode"),D=Symbol.for("react.profiler"),K=Symbol.for("react.consumer"),$=Symbol.for("react.context"),J=Symbol.for("react.forward_ref"),Y=Symbol.for("react.suspense"),W=Symbol.for("react.suspense_list"),q=Symbol.for("react.memo"),B=Symbol.for("react.lazy"),ee=Symbol.for("react.activity"),te=Symbol.for("react.client.reference"),G=m.__CLIENT_INTERNALS_DO_NOT_USE_OR_WARN_USERS_THEY_CANNOT_UPGRADE,A=Object.prototype.hasOwnProperty,re=Array.isArray,C=console.createTask?console.createTask:function(){return null};m={react_stack_bottom_frame:function(e){return e()}};var Z,N={},O=m.react_stack_bottom_frame.bind(m,l)(),H=C(i(l)),U={};M.Fragment=w,M.jsx=function(e,a,g){var b=1e4>G.recentlyCreatedOwnerStacks++;return E(e,a,g,!1,b?Error("react-stack-top-frame"):O,b?C(i(e)):H)},M.jsxs=function(e,a,g){var b=1e4>G.recentlyCreatedOwnerStacks++;return E(e,a,g,!0,b?Error("react-stack-top-frame"):O,b?C(i(e)):H)}})()),M}var le;function ge(){return le||(le=1,process.env.NODE_ENV==="production"?V.exports=pe():V.exports=me()),V.exports}var f=ge();const ye=d.createContext({licenceMapbox:"",licenseMuiX:""}),Ee=({children:t,licenseMuiX:r,licenceMapbox:s})=>{d.useEffect(()=>{r&&fe.LicenseInfo.setLicenseKey(r)},[r]);const i=d.useMemo(()=>({licenceMapbox:s,licenseMuiX:r}),[r,s]);return s&&(oe.accessToken=s),f.jsx(ye.Provider,{value:i,children:t})},be=t=>({".mapboxgl-popup-close-button":{color:t.palette.mode==="dark"?"#fff !important":"#000 !important",fontSize:"20px !important"},".mapboxgl-popup-content":{backgroundColor:"transparent!important",borderRadius:"0px !important",boxShadow:"none!important",padding:"0px 0px!important",width:"fit-content!important"},".mapboxgl-popup-tip":{borderTopColor:`${t.palette.mode==="dark"?"#1e1e1e":"#ffffff"} !important`}}),ie=t=>Number.isFinite(t.lng)&&Number.isFinite(t.lat),ce=t=>S.isString(t)||S.isNumber(t)?String(t):JSON.stringify(t),_e=t=>{if(!t)return[];const r=S.isArray(t)?t:t.type==="FeatureCollection"?t.features:[t],s=[];for(const i of r){const o=i.geometry;o.type==="Point"&&s.push(o.coordinates),o.type==="LineString"&&s.push(...o.coordinates),o.type==="Polygon"&&s.push(...o.coordinates[0])}return s},Re=({markers:t=[],features:r,padding:s=50,duration:i=1e3,disableAnimation:o,fitBounds:l=!0,animationKey:u,openPopup:c})=>{const{current:p}=x.useMap(),y=d.useRef(""),E=d.useMemo(()=>t.filter(ie),[t]),R=d.useMemo(()=>_e(r),[r]),v=d.useMemo(()=>{const m=[...E.map(T=>[T.lng,T.lat]),...R];return m.length===0?null:m.reduce((T,[I,w])=>T.extend([I,w]),new oe.LngLatBounds)},[E,R]);return d.useEffect(()=>{if(c){y.current=u!==void 0?ce(u):"__initial_skip__";return}if(p&&l&&v){if(u!==void 0){const m=ce(u);if(y.current===m)return;y.current=m}else if(y.current==="__initial_skip__")return;if(!v.isEmpty()){if(E.length===1&&R.length===0){const m=E[0];p.flyTo({center:[m.lng,m.lat],duration:o?0:i,zoom:14});return}p.fitBounds([v.getSouthWest().toArray(),v.getNorthEast().toArray()],{duration:o?0:i,padding:s})}}},[p,v,s,i,o,u,l,E,R,c]),null},he=async(t,r,s="driving")=>{const o=`https://api.mapbox.com/directions/v5/mapbox/${s}/${t.join(",")};${r.join(",")}?geometries=geojson&overview=full&access_token=undefined`,l=await fetch(o);return l.ok?{geometry:(await l.json()).routes[0].geometry,properties:{},type:"Feature"}:null},ve=async(t,r,s="driving")=>{const l=`${`https://routing.openstreetmap.de/${{cycling:"routed-bike",driving:"routed-car",walking:"routed-foot"}[s]}`}/route/v1/driving/${t.join(",")};${r.join(",")}?overview=full&geometries=geojson`;try{const u=await fetch(l);if(!u.ok)return console.error("OSRM API error:",u.status,u.statusText),null;const c=await u.json();return!c.routes||c.routes.length===0?(console.warn("No routes found in OSRM response."),null):{geometry:c.routes[0].geometry,properties:{distance:c.routes[0].distance,duration:c.routes[0].duration},type:"Feature"}}catch(u){return console.error("Error fetching OSRM route:",u),null}},ue=({profile:t,routeService:r,to:s,from:i,itineraryLineStyle:o})=>{const[l,u]=d.useState(null);return d.useEffect(()=>{i&&s&&(async()=>{try{const c=r==="OSRM"?await ve(i,s,t):await he(i,s,t);c?u(c):(console.warn("No route found between the specified points."),u(null))}catch(c){console.error("Error fetching route:",c),u(null)}})()},[i,s,t,r]),l?f.jsx(x.Source,{type:"geojson",data:l,children:f.jsx(x.Layer,{type:"line",paint:{"line-color":o?.color??"#9c3333","line-opacity":o?.opacity??.8,"line-width":o?.width??4},layout:{"line-cap":"round","line-join":"round"}})}):null},Te="#000000",xe="#FFFFFF",X={default:"#009ba6",primary:"#3F83F8",secondary:"#9C27B0",success:"#4CAF50",warning:"#FF9800"},ke=t=>t in X,je=({color:t,variant:r})=>{const{palette:s}=j.useTheme(),i=s.mode==="dark"?Te:xe,o=r&&ke(r)&&X[r]||t||(S.isString(r)?r:X.default);return f.jsx(j.Box,{component:"div",style:{backgroundColor:i,border:`7px solid ${o}`,borderRadius:"50%",boxShadow:"0 0 4px rgba(0,0,0,0.3)",height:28,width:28}})},Se=async(t,r,s="driving",i)=>{const o={cycling:"routed-bike",driving:"routed-car",walking:"routed-foot"},l=[t,...r.map(m=>m.coords)].map(m=>`${m[0]},${m[1]}`).join(";"),u=`https://routing.openstreetmap.de/${o[s]}/table/v1/driving/${l}?sources=0&annotations=distance`,c=await fetch(u);if(!c.ok)return console.error("Error OSRM Table:",c.status,c.statusText),null;const p=await c.json();if(!(p.distances&&Array.isArray(p.distances))||p.distances.length===0)return console.error("OSRM Table unexpected response:",p),null;const y=p.distances[0];if(!y||y.length===0)return console.error("OSRM Table first row empty:",p),null;let E=-1,R=1/0;for(let m=1;m<y.length;m++){const T=y[m];T!=null&&T<R&&(R=T,E=m)}if(E===-1)return null;const v=r[E-1];return i!=null&&R>i?null:{distance:R,id:v.id,point:v.coords}},we=({origin:t,maxDistanceMeters:r,destinations:s,onNearestFound:i,profile:o="driving"})=>{const[l,u]=d.useState(null),c=d.useRef(null);return d.useEffect(()=>{if(!t||t.length!==2||!s?.length)return;const p=s.map(y=>({coords:[y.lng,y.lat],id:y.id}));(async()=>{const y=await Se(t,p,o,r);y&&u(E=>!E||E.id!==y.id||E.distance!==y.distance?y:E)})()},[t,r,s,o]),d.useEffect(()=>{if(!l){i?.(null,null,0),c.current=null;return}if(r!=null&&l.distance>r){i?.(null,null,0),c.current=null;return}const p=c.current;(!p||p.id!==l.id||p.distance!==l.distance)&&(i?.(l.id,l.point,l.distance),c.current=l)},[l,i,r]),l?.point?f.jsx(ue,{from:t,to:l.point,profile:"driving",routeService:"OSRM"}):null},Ae=d.memo(we),Ce=t=>S.isArray(t)?{features:t,type:"FeatureCollection"}:t.type==="FeatureCollection"?t:{features:[t],type:"FeatureCollection"},Oe=({features:t})=>{if(!t)return null;const r=Ce(t),s=r.features.filter(o=>o.geometry.type==="Polygon"||o.geometry.type==="MultiPolygon"),i=r.features.filter(o=>o.geometry.type==="LineString"||o.geometry.type==="MultiLineString");return f.jsxs(f.Fragment,{children:[s.length>0&&f.jsx(x.Source,{id:"features-polygon",type:"geojson",data:{features:s,type:"FeatureCollection"},children:f.jsx(x.Layer,{id:"polygon-fill",type:"fill",paint:{"fill-color":["coalesce",["get","color"],"#4ADE80"],"fill-opacity":.4}})}),i.length>0&&f.jsx(x.Source,{id:"features-line",type:"geojson",data:{features:i,type:"FeatureCollection"},children:f.jsx(x.Layer,{id:"line-stroke",type:"line",paint:{"line-color":["coalesce",["get","color"],"#3B82F6"],"line-opacity":.9,"line-width":3}})})]})},Q={satellite:"mapbox://styles/mapbox/satellite-streets-v12",street:{dark:"mapbox://styles/mapbox/dark-v11",light:"mapbox://styles/mapbox/streets-v12"}},de=(t,r)=>{const s=r==="dark";switch(t){case"satellite":return Q.satellite;default:return s?Q.street.dark:Q.street.light}},Pe=({mapStyle:t,theme:r,baseMapView:s,doubleClickZoom:i,cooperativeGestures:o})=>({cooperativeGestures:o,doubleClickZoom:i,failIfMajorPerformanceCaveat:!1,style:t??de(s,r)}),Ne=({containerStyle:t,square:r,loading:s,height:i=300,width:o="100%",center:l=[2.3522,48.8566],zoom:u=5,popupMaxWidth:c,openPopup:p,openPopupOnHover:y,markers:E=[],fitBounds:R=!0,fitBoundsPadding:v,fitBoundDuration:m,fitBoundsAnimationKey:T,disableAnimation:I,mapStyle:w,onMapClick:z,baseMapView:D,cooperativeGestures:K=!0,doubleClickZoom:$=!0,projection:J,theme:Y,features:W,from:q,to:B,profile:ee="driving",itineraryLineStyle:te,routeService:G="OSRM",findNearestMarker:A,onNearestFound:re})=>{const C=j.useTheme(),Z=d.useRef(null),[N,O]=d.useState(p??null),H=d.useMemo(()=>{if(S.isArray(l))return{latitude:l[1],longitude:l[0],zoom:u}},[l,u]),U=d.useMemo(()=>w||de(D,Y??C.palette.mode),[D,w,Y,C.palette.mode]),{style:e,cooperativeGestures:a,doubleClickZoom:g}=Pe({baseMapView:D,cooperativeGestures:K,doubleClickZoom:$,mapStyle:U,theme:Y??C.palette.mode}),b=(n,h)=>{!y&&h&&O(n)},P=(n,h)=>{y&&O(h?n:null)};d.useEffect(()=>{O(p??null)},[p]);const k=d.useMemo(()=>N?E?.find(n=>n.id===N)??null:null,[N,E]);return f.jsxs(j.Box,{"data-testid":"mapbox-container",sx:{height:i,position:"relative",width:o,...t},children:[f.jsx(j.GlobalStyles,{styles:be}),s&&f.jsx(j.Skeleton,{"data-testid":"skeleton-loader",width:o,height:i,variant:r?"rectangular":"rounded",sx:{inset:0,position:"absolute",zIndex:2}}),!s&&f.jsxs(x,{ref:Z,cooperativeGestures:a,doubleClickZoom:g,mapStyle:e,projection:J,initialViewState:H,style:{height:"100%",width:"100%"},mapboxAccessToken:void 0,onClick:n=>{const h=E.find(F=>{const{lng:ne,lat:Me}=n.lngLat,Ie=Math.abs(Number(F.lng||null)-ne),De=Math.abs(Number(F.lat||null)-Me);return Ie<.01&&De<.01});z?.(n.lngLat.lng,n.lngLat.lat,h??null)},children:[E.filter(ie).map(n=>f.jsx(x.Marker,{longitude:n.lng,latitude:n.lat,anchor:"bottom",onClick:h=>{h.originalEvent.stopPropagation(),n.id&&b(n.id,!!n.Tooltip),z?.(n.lng,n.lat,n)},children:f.jsx(j.Box,{component:"div",onMouseEnter:()=>n.id&&P(n.id,!!n.Tooltip),onMouseLeave:()=>P(null),style:{cursor:n.Tooltip?"pointer":"default"},children:n.IconComponent?f.jsx(n.IconComponent,{...n.iconProps}):f.jsx(je,{color:n.color,variant:n.variant})})},n.id)),k?.Tooltip&&f.jsx(x.Popup,{longitude:S.isNumber(k.lng)?k.lng:0,latitude:S.isNumber(k.lat)?k.lat:0,anchor:"top",onClose:()=>O(null),maxWidth:c,closeOnClick:!0,closeOnMove:!1,children:f.jsx(j.Box,{component:"div",sx:{minHeight:60,minWidth:240},children:k.Tooltip})}),f.jsx(ue,{from:q,to:B,profile:ee,routeService:G,itineraryLineStyle:te}),f.jsx(Ae,{origin:A?.origin,destinations:A?.destinations,onNearestFound:re,maxDistanceMeters:A?.maxDistanceMeters}),W&&f.jsx(Oe,{features:W}),R&&f.jsx(Re,{markers:E,features:W,padding:v,duration:I?0:m,animationKey:T,openPopup:!!p})]},`${a}-${g}-${J}-${U}-${A?.maxDistanceMeters}`)]})},Fe=d.memo(Ne),Le=(t,r)=>Number.isFinite(t)&&Number.isFinite(r)&&t>=-90&&t<=90&&r>=-180&&r<=180;_.DEFAULT_CENTER_LAT=46.8677,_.DEFAULT_CENTER_LNG=2.333,_.MapProvider=Ee,_.MarkerMap=Fe,_.isValidLatLng=Le,Object.defineProperty(_,Symbol.toStringTag,{value:"Module"})}));
23
+ <%s key={someKey} {...props} />`,R,o,_,o),U[o+R]=!0)}if(o=null,y!==void 0&&(s(y),o=""+y),a(i)&&(s(i.key),o=""+i.key),"key"in i){y={};for(var F in i)F!=="key"&&(y[F]=i[F])}else y=i;return o&&u(y,typeof e=="function"?e.displayName||e.name||"Unknown":e),b(e,o,y,n(),P,k)}function E(e){h(e)?e._store&&(e._store.validated=1):typeof e=="object"&&e!==null&&e.$$typeof===B&&(e._payload.status==="fulfilled"?h(e._payload.value)&&e._payload.value._store&&(e._payload.value._store.validated=1):e._store&&(e._store.validated=1))}function h(e){return typeof e=="object"&&e!==null&&e.$$typeof===v}var d=p,v=Symbol.for("react.transitional.element"),I=Symbol.for("react.portal"),w=Symbol.for("react.fragment"),z=Symbol.for("react.strict_mode"),D=Symbol.for("react.profiler"),$=Symbol.for("react.consumer"),q=Symbol.for("react.context"),J=Symbol.for("react.forward_ref"),Y=Symbol.for("react.suspense"),W=Symbol.for("react.suspense_list"),ee=Symbol.for("react.memo"),B=Symbol.for("react.lazy"),Z=Symbol.for("react.activity"),te=Symbol.for("react.client.reference"),G=d.__CLIENT_INTERNALS_DO_NOT_USE_OR_WARN_USERS_THEY_CANNOT_UPGRADE,A=Object.prototype.hasOwnProperty,re=Array.isArray,C=console.createTask?console.createTask:function(){return null};d={react_stack_bottom_frame:function(e){return e()}};var H,N={},O=d.react_stack_bottom_frame.bind(d,c)(),X=C(l(c)),U={};M.Fragment=w,M.jsx=function(e,i,y){var R=1e4>G.recentlyCreatedOwnerStacks++;return m(e,i,y,!1,R?Error("react-stack-top-frame"):O,R?C(l(e)):X)},M.jsxs=function(e,i,y){var R=1e4>G.recentlyCreatedOwnerStacks++;return m(e,i,y,!0,R?Error("react-stack-top-frame"):O,R?C(l(e)):X)}})()),M}var le;function ge(){return le||(le=1,process.env.NODE_ENV==="production"?V.exports=pe():V.exports=me()),V.exports}var g=ge();const ye=p.createContext({licenceMapbox:"",licenseMuiX:""}),be=({children:t,licenseMuiX:r,licenceMapbox:s})=>{p.useEffect(()=>{r&&fe.LicenseInfo.setLicenseKey(r)},[r]);const l=p.useMemo(()=>({licenceMapbox:s,licenseMuiX:r}),[r,s]);return s&&(oe.accessToken=s),g.jsx(ye.Provider,{value:l,children:t})},Ee=t=>({".mapboxgl-popup-close-button":{color:t.palette.mode==="dark"?"#fff !important":"#000 !important",fontSize:"20px !important"},".mapboxgl-popup-content":{backgroundColor:"transparent!important",borderRadius:"0px !important",boxShadow:"none!important",padding:"0px 0px!important",width:"fit-content!important"},".mapboxgl-popup-tip":{borderTopColor:`${t.palette.mode==="dark"?"#1e1e1e":"#ffffff"} !important`}}),ie=t=>Number.isFinite(t.lng)&&Number.isFinite(t.lat),ce=t=>S.isString(t)||S.isNumber(t)?String(t):JSON.stringify(t),he=t=>{if(!t)return[];const r=S.isArray(t)?t:t.type==="FeatureCollection"?t.features:[t],s=[];for(const l of r){const n=l.geometry;n.type==="Point"&&s.push(n.coordinates),n.type==="LineString"&&s.push(...n.coordinates),n.type==="Polygon"&&s.push(...n.coordinates[0])}return s},Re=({markers:t=[],features:r,padding:s=50,duration:l=1e3,disableAnimation:n,fitBounds:c=!0,animationKey:a,openPopup:u})=>{const{current:f}=x.useMap(),b=p.useRef(""),m=p.useMemo(()=>t.filter(ie),[t]),E=p.useMemo(()=>he(r),[r]),h=p.useMemo(()=>{const d=[...m.map(v=>[v.lng,v.lat]),...E];return d.length===0?null:d.reduce((v,[I,w])=>v.extend([I,w]),new oe.LngLatBounds)},[m,E]);return p.useEffect(()=>{if(u){b.current=a!==void 0?ce(a):"__initial_skip__";return}if(f&&c&&h){if(a!==void 0){const d=ce(a);if(b.current===d)return;b.current=d}else if(b.current==="__initial_skip__")return;if(!h.isEmpty()){if(m.length===1&&E.length===0){const d=m[0];f.flyTo({center:[d.lng,d.lat],duration:n?0:l,zoom:14});return}f.fitBounds([h.getSouthWest().toArray(),h.getNorthEast().toArray()],{duration:n?0:l,padding:s})}}},[f,h,s,l,n,a,c,m,E,u]),null},Te=async(t,r,s="driving")=>{const n=`https://api.mapbox.com/directions/v5/mapbox/${s}/${t.join(",")};${r.join(",")}?geometries=geojson&overview=full&access_token=undefined`,c=await fetch(n);return c.ok?{geometry:(await c.json()).routes[0].geometry,properties:{},type:"Feature"}:null},_e=async(t,r,s="driving")=>{const c=`${`https://routing.openstreetmap.de/${{cycling:"routed-bike",driving:"routed-car",walking:"routed-foot"}[s]}`}/route/v1/driving/${t.join(",")};${r.join(",")}?overview=full&geometries=geojson`;try{const a=await fetch(c);if(!a.ok)return console.error("OSRM API error:",a.status,a.statusText),null;const u=await a.json();return!u.routes||u.routes.length===0?(console.warn("No routes found in OSRM response."),null):{geometry:u.routes[0].geometry,properties:{distance:u.routes[0].distance,duration:u.routes[0].duration},type:"Feature"}}catch(a){return console.error("Error fetching OSRM route:",a),null}},ue=({profile:t,engine:r,to:s,from:l,itineraryLineStyle:n})=>{const[c,a]=p.useState(null);return p.useEffect(()=>{l&&s&&(async()=>{try{const u=r==="OSRM"?await _e(l,s,t):await Te(l,s,t);u?a(u):(console.warn("No route found between the specified points."),a(null))}catch(u){console.error("Error fetching route:",u),a(null)}})()},[l,s,t,r]),c?g.jsx(x.Source,{type:"geojson",data:c,children:g.jsx(x.Layer,{type:"line",paint:{"line-color":n?.color??"#9c3333","line-opacity":n?.opacity??.8,"line-width":n?.width??4},layout:{"line-cap":"round","line-join":"round"}})}):null},ve="#000000",xe="#FFFFFF",Q={default:"#009ba6",primary:"#3F83F8",secondary:"#9C27B0",success:"#4CAF50",warning:"#FF9800"},ke=t=>t in Q,je=({color:t,variant:r})=>{const{palette:s}=j.useTheme(),l=s.mode==="dark"?ve:xe,n=r&&ke(r)&&Q[r]||t||(S.isString(r)?r:Q.default);return g.jsx(j.Box,{component:"div",style:{backgroundColor:l,border:`7px solid ${n}`,borderRadius:"50%",boxShadow:"0 0 4px rgba(0,0,0,0.3)",height:28,width:28}})},Se=async(t,r,s="driving",l)=>{if(!r.length)return null;const c=[t,...r.map(d=>d.coords)].map(d=>`${d[0]},${d[1]}`).join(";"),a=`https://api.mapbox.com/directions-matrix/v1/mapbox/${s}/${c}?sources=0&annotations=distance&access_token=undefined`,u=await fetch(a);if(!u.ok)return console.error("Erreur Mapbox Matrix :",u.status,u.statusText),null;const f=await u.json();if(!(Array.isArray(f.distances)&&Array.isArray(f.distances[0])))return console.error("Response wrong format Mapbox Matrix :",f),null;const b=f.distances[0]?.slice(1).filter(d=>typeof d=="number")??[];if(!b.length)return null;const m=Math.min(...b.filter(d=>typeof d=="number")),E=b.indexOf(m);if(E===-1)return null;const h=r[E];return l!=null&&m>l?null:{distance:m,id:h.id,point:h.coords}},we=async(t,r,s="driving",l)=>{const n={cycling:"routed-bike",driving:"routed-car",walking:"routed-foot"},c=[t,...r.map(d=>d.coords)].map(d=>`${d[0]},${d[1]}`).join(";"),a=`https://routing.openstreetmap.de/${n[s]}/table/v1/driving/${c}?sources=0&annotations=distance`,u=await fetch(a);if(!u.ok)return console.error("Error OSRM Table:",u.status,u.statusText),null;const f=await u.json();if(!(f.distances&&Array.isArray(f.distances))||f.distances.length===0)return console.error("OSRM Table unexpected response:",f),null;const b=f.distances[0];if(!b||b.length===0)return console.error("OSRM Table first row empty:",f),null;let m=-1,E=1/0;for(let d=1;d<b.length;d++){const v=b[d];v!=null&&v<E&&(E=v,m=d)}if(m===-1)return null;const h=r[m-1];return l!=null&&E>l?null:{distance:E,id:h.id,point:h.coords}},Ae=({origin:t,maxDistanceMeters:r,destinations:s,onNearestFound:l,profile:n="driving",engine:c="OSRM"})=>{const[a,u]=p.useState(null),f=p.useRef(null);return console.log("engine:",c),p.useEffect(()=>{if(!t||t.length!==2||!s?.length)return;const b=s.map(m=>({coords:[m.lng,m.lat],id:m.id}));(async()=>{const E=await(c==="OSRM"?we:Se)(t,b,n,r);E&&u(h=>!h||h.id!==E.id||h.distance!==E.distance?E:h)})()},[t,r,s,n,c]),p.useEffect(()=>{if(!a){l?.(null,null,0),f.current=null;return}if(r!=null&&a.distance>r){l?.(null,null,0),f.current=null;return}const b=f.current;(!b||b.id!==a.id||b.distance!==a.distance)&&(l?.(a.id,a.point,a.distance),f.current=a)},[a,l,r]),a?.point?g.jsx(ue,{from:t,to:a.point,profile:n,engine:c}):null},Ce=p.memo(Ae),Oe=t=>S.isArray(t)?{features:t,type:"FeatureCollection"}:t.type==="FeatureCollection"?t:{features:[t],type:"FeatureCollection"},Pe=({features:t})=>{if(!t)return null;const r=Oe(t),s=r.features.filter(n=>n.geometry.type==="Polygon"||n.geometry.type==="MultiPolygon"),l=r.features.filter(n=>n.geometry.type==="LineString"||n.geometry.type==="MultiLineString");return g.jsxs(g.Fragment,{children:[s.length>0&&g.jsx(x.Source,{id:"features-polygon",type:"geojson",data:{features:s,type:"FeatureCollection"},children:g.jsx(x.Layer,{id:"polygon-fill",type:"fill",paint:{"fill-color":["coalesce",["get","color"],"#4ADE80"],"fill-opacity":.4}})}),l.length>0&&g.jsx(x.Source,{id:"features-line",type:"geojson",data:{features:l,type:"FeatureCollection"},children:g.jsx(x.Layer,{id:"line-stroke",type:"line",paint:{"line-color":["coalesce",["get","color"],"#3B82F6"],"line-opacity":.9,"line-width":3}})})]})},K={satellite:"mapbox://styles/mapbox/satellite-streets-v12",street:{dark:"mapbox://styles/mapbox/dark-v11",light:"mapbox://styles/mapbox/streets-v12"}},de=(t,r)=>{const s=r==="dark";switch(t){case"satellite":return K.satellite;default:return s?K.street.dark:K.street.light}},Ne=({mapStyle:t,theme:r,baseMapView:s,doubleClickZoom:l,cooperativeGestures:n})=>({cooperativeGestures:n,doubleClickZoom:l,failIfMajorPerformanceCaveat:!1,style:t??de(s,r)}),Fe=({containerStyle:t,square:r,loading:s,height:l=300,width:n="100%",center:c=[2.3522,48.8566],zoom:a=5,popupMaxWidth:u,openPopup:f,openPopupOnHover:b,markers:m=[],fitBounds:E=!0,fitBoundsPadding:h,fitBoundDuration:d,fitBoundsAnimationKey:v,disableAnimation:I,mapStyle:w,onMapClick:z,baseMapView:D,cooperativeGestures:$=!0,doubleClickZoom:q=!0,projection:J,theme:Y,features:W,from:ee,to:B,profile:Z="driving",itineraryLineStyle:te,engine:G="OSRM",findNearestMarker:A,onNearestFound:re})=>{const C=j.useTheme(),H=p.useRef(null),[N,O]=p.useState(f??null),X=p.useMemo(()=>{if(S.isArray(c))return{latitude:c[1],longitude:c[0],zoom:a}},[c,a]),U=p.useMemo(()=>w||de(D,Y??C.palette.mode),[D,w,Y,C.palette.mode]),{style:e,cooperativeGestures:i,doubleClickZoom:y}=Ne({baseMapView:D,cooperativeGestures:$,doubleClickZoom:q,mapStyle:U,theme:Y??C.palette.mode}),R=(o,_)=>{!b&&_&&O(o)},P=(o,_)=>{b&&O(_?o:null)};p.useEffect(()=>{O(f??null)},[f]);const k=p.useMemo(()=>N?m?.find(o=>o.id===N)??null:null,[N,m]);return g.jsxs(j.Box,{"data-testid":"mapbox-container",sx:{height:l,position:"relative",width:n,...t},children:[g.jsx(j.GlobalStyles,{styles:Ee}),s&&g.jsx(j.Skeleton,{"data-testid":"skeleton-loader",width:n,height:l,variant:r?"rectangular":"rounded",sx:{inset:0,position:"absolute",zIndex:2}}),!s&&g.jsxs(x,{ref:H,cooperativeGestures:i,doubleClickZoom:y,mapStyle:e,projection:J,initialViewState:X,style:{height:"100%",width:"100%"},mapboxAccessToken:void 0,onClick:o=>{const _=m.find(F=>{const{lng:ne,lat:Ye}=o.lngLat,We=Math.abs(Number(F.lng||null)-ne),Be=Math.abs(Number(F.lat||null)-Ye);return We<.01&&Be<.01});z?.(o.lngLat.lng,o.lngLat.lat,_??null)},children:[m.filter(ie).map(o=>g.jsx(x.Marker,{longitude:o.lng,latitude:o.lat,anchor:"bottom",onClick:_=>{_.originalEvent.stopPropagation(),o.id&&R(o.id,!!o.Tooltip),z?.(o.lng,o.lat,o)},children:g.jsx(j.Box,{component:"div",onMouseEnter:()=>o.id&&P(o.id,!!o.Tooltip),onMouseLeave:()=>P(null),style:{cursor:o.Tooltip?"pointer":"default"},children:o.IconComponent?g.jsx(o.IconComponent,{...o.iconProps}):g.jsx(je,{color:o.color,variant:o.variant})})},o.id)),k?.Tooltip&&g.jsx(x.Popup,{longitude:S.isNumber(k.lng)?k.lng:0,latitude:S.isNumber(k.lat)?k.lat:0,anchor:"top",onClose:()=>O(null),maxWidth:u,closeOnClick:!0,closeOnMove:!1,children:g.jsx(j.Box,{component:"div",sx:{minHeight:60,minWidth:240},children:k.Tooltip})}),g.jsx(ue,{from:ee,to:B,profile:Z,engine:G,itineraryLineStyle:te}),g.jsx(Ce,{origin:A?.origin,destinations:A?.destinations,onNearestFound:re,maxDistanceMeters:A?.maxDistanceMeters,engine:A?.engine,profile:Z}),W&&g.jsx(Pe,{features:W}),E&&g.jsx(Re,{markers:m,features:W,padding:h,duration:I?0:d,animationKey:v,openPopup:!!f})]},`${i}-${y}-${J}-${U}-${A?.maxDistanceMeters}`)]})},Le=p.memo(Fe),Me=["OSRM","Mapbox"],Ie=["driving","walking","cycling"],De=(t,r)=>Number.isFinite(t)&&Number.isFinite(r)&&t>=-90&&t<=90&&r>=-180&&r<=180;T.DEFAULT_CENTER_LAT=46.8677,T.DEFAULT_CENTER_LNG=2.333,T.MapProvider=be,T.MarkerMap=Le,T.engines=Me,T.isValidLatLng=De,T.profiles=Ie,Object.defineProperty(T,Symbol.toStringTag,{value:"Module"})}));
@@ -0,0 +1,11 @@
1
+ export interface NearestResult {
2
+ distance: number;
3
+ id: number | string;
4
+ point: [number, number];
5
+ }
6
+ interface Destination {
7
+ id: number | string;
8
+ coords: [number, number];
9
+ }
10
+ export declare const mapboxFindNearestPoint: (from: [number, number], destinations: Destination[], profile?: "driving" | "walking" | "cycling", maxDistanceMeters?: number) => Promise<NearestResult | null>;
11
+ export default mapboxFindNearestPoint;
@@ -8,6 +8,10 @@ export interface ItineraryLineStyle {
8
8
  width: number;
9
9
  opacity: number;
10
10
  }
11
+ export declare const engines: readonly ["OSRM", "Mapbox"];
12
+ export type Engine = (typeof engines)[number];
13
+ export declare const profiles: readonly ["driving", "walking", "cycling"];
14
+ export type Profile = (typeof profiles)[number];
11
15
  export interface FindNearestMarkerParams {
12
16
  origin?: [number, number];
13
17
  maxDistanceMeters?: number;
@@ -17,7 +21,8 @@ export interface FindNearestMarkerParams {
17
21
  id: number;
18
22
  }[];
19
23
  onNearestFound?: (id: number | string | null, coords: [number, number] | null, distanceMeters: number) => void;
20
- profile?: "driving" | "walking" | "cycling";
24
+ profile?: Profile;
25
+ engine?: Engine;
21
26
  }
22
27
  export interface MarkerMapProps {
23
28
  /**
@@ -153,7 +158,7 @@ export interface MarkerMapProps {
153
158
  * Transportation profile used for route calculation.
154
159
  * @default "driving"
155
160
  */
156
- profile?: "driving" | "walking" | "cycling";
161
+ profile?: Profile;
157
162
  /**
158
163
  * Custom styles for the itinerary line displayed on the map.
159
164
  * If not provided, default styles will be used.
@@ -161,13 +166,13 @@ export interface MarkerMapProps {
161
166
  */
162
167
  itineraryLineStyle?: Partial<ItineraryLineStyle>;
163
168
  /**
164
- * Route service to use for calculating routes.
169
+ * Engine to use for calculating routes.
165
170
  * @default "OSRM"
166
171
  * Options are:
167
172
  * - "OSRM": Uses the public OSRM API for routing.
168
173
  * - "Mapbox": Uses the Mapbox Directions API for routing.
169
174
  */
170
- routeService?: "OSRM" | "Mapbox";
175
+ engine?: Engine;
171
176
  /**
172
177
  * Parameters for finding the nearest marker to a given point.
173
178
  * If provided, the map will automatically center and zoom
package/package.json CHANGED
@@ -3,7 +3,7 @@
3
3
  "description": "A React library to easily display map with multiple tools",
4
4
  "private": false,
5
5
  "license": "UNLICENSED",
6
- "version": "1.3.2",
6
+ "version": "1.4.1",
7
7
  "type": "module",
8
8
  "main": "dist/main.umd.cjs",
9
9
  "module": "dist/main.js",