@tracktor/map 1.8.1 → 1.8.3
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/components/Markers/Markers.d.ts +6 -2
- package/dist/main.js +352 -311
- package/dist/main.umd.cjs +4 -4
- package/dist/types/MarkerProps.d.ts +9 -1
- package/package.json +1 -1
package/dist/main.js
CHANGED
|
@@ -1,12 +1,12 @@
|
|
|
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
|
-
import
|
|
2
|
+
import Le, { createContext as Ie, useEffect as w, useMemo as M, useRef as ae, memo as le, useState as V } from "react";
|
|
3
3
|
import { LicenseInfo as $e } from "@mui/x-license";
|
|
4
|
-
import
|
|
5
|
-
import { useTheme as
|
|
6
|
-
import
|
|
7
|
-
import { isArray as ce, isString as
|
|
8
|
-
const
|
|
9
|
-
var
|
|
4
|
+
import be from "mapbox-gl";
|
|
5
|
+
import { useTheme as xe, Box as H, GlobalStyles as Fe, Skeleton as Ne } from "@tracktor/design-system";
|
|
6
|
+
import De, { Marker as ve, Source as fe, Layer as pe, useMap as Ue, Popup as Ye } from "react-map-gl";
|
|
7
|
+
import { isArray as ce, isString as ie, isNumber as Q } from "@tracktor/react-utils";
|
|
8
|
+
const Lt = 2.333, It = 46.8677;
|
|
9
|
+
var Z = { exports: {} }, Y = {};
|
|
10
10
|
/**
|
|
11
11
|
* @license React
|
|
12
12
|
* react-jsx-runtime.production.js
|
|
@@ -16,17 +16,17 @@ var X = { exports: {} }, U = {};
|
|
|
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
18
|
*/
|
|
19
|
-
var
|
|
20
|
-
function
|
|
21
|
-
if (
|
|
22
|
-
|
|
19
|
+
var ge;
|
|
20
|
+
function Be() {
|
|
21
|
+
if (ge) return Y;
|
|
22
|
+
ge = 1;
|
|
23
23
|
var e = Symbol.for("react.transitional.element"), t = Symbol.for("react.fragment");
|
|
24
24
|
function n(a, o, l) {
|
|
25
25
|
var s = null;
|
|
26
26
|
if (l !== void 0 && (s = "" + l), o.key !== void 0 && (s = "" + o.key), "key" in o) {
|
|
27
27
|
l = {};
|
|
28
|
-
for (var
|
|
29
|
-
|
|
28
|
+
for (var u in o)
|
|
29
|
+
u !== "key" && (l[u] = o[u]);
|
|
30
30
|
} else l = o;
|
|
31
31
|
return o = l.ref, {
|
|
32
32
|
$$typeof: e,
|
|
@@ -36,9 +36,9 @@ function Ye() {
|
|
|
36
36
|
props: l
|
|
37
37
|
};
|
|
38
38
|
}
|
|
39
|
-
return
|
|
39
|
+
return Y.Fragment = t, Y.jsx = n, Y.jsxs = n, Y;
|
|
40
40
|
}
|
|
41
|
-
var
|
|
41
|
+
var B = {};
|
|
42
42
|
/**
|
|
43
43
|
* @license React
|
|
44
44
|
* react-jsx-runtime.development.js
|
|
@@ -48,24 +48,24 @@ var Y = {};
|
|
|
48
48
|
* This source code is licensed under the MIT license found in the
|
|
49
49
|
* LICENSE file in the root directory of this source tree.
|
|
50
50
|
*/
|
|
51
|
-
var
|
|
52
|
-
function
|
|
53
|
-
return
|
|
51
|
+
var me;
|
|
52
|
+
function Ve() {
|
|
53
|
+
return me || (me = 1, process.env.NODE_ENV !== "production" && (function() {
|
|
54
54
|
function e(r) {
|
|
55
55
|
if (r == null) return null;
|
|
56
56
|
if (typeof r == "function")
|
|
57
|
-
return r.$$typeof ===
|
|
57
|
+
return r.$$typeof === U ? null : r.displayName || r.name || null;
|
|
58
58
|
if (typeof r == "string") return r;
|
|
59
59
|
switch (r) {
|
|
60
|
-
case
|
|
60
|
+
case C:
|
|
61
61
|
return "Fragment";
|
|
62
|
-
case
|
|
62
|
+
case F:
|
|
63
63
|
return "Profiler";
|
|
64
|
-
case
|
|
64
|
+
case W:
|
|
65
65
|
return "StrictMode";
|
|
66
|
-
case
|
|
66
|
+
case N:
|
|
67
67
|
return "Suspense";
|
|
68
|
-
case
|
|
68
|
+
case D:
|
|
69
69
|
return "SuspenseList";
|
|
70
70
|
case A:
|
|
71
71
|
return "Activity";
|
|
@@ -74,18 +74,18 @@ function Be() {
|
|
|
74
74
|
switch (typeof r.tag == "number" && console.error(
|
|
75
75
|
"Received an unexpected object in getComponentNameFromType(). This is likely a bug in React. Please file an issue."
|
|
76
76
|
), r.$$typeof) {
|
|
77
|
-
case
|
|
77
|
+
case R:
|
|
78
78
|
return "Portal";
|
|
79
|
-
case
|
|
79
|
+
case re:
|
|
80
80
|
return r.displayName || "Context";
|
|
81
|
-
case K:
|
|
82
|
-
return (r._context.displayName || "Context") + ".Consumer";
|
|
83
81
|
case te:
|
|
82
|
+
return (r._context.displayName || "Context") + ".Consumer";
|
|
83
|
+
case ne:
|
|
84
84
|
var c = r.render;
|
|
85
85
|
return r = r.displayName, r || (r = c.displayName || c.name || "", r = r !== "" ? "ForwardRef(" + r + ")" : "ForwardRef"), r;
|
|
86
86
|
case T:
|
|
87
87
|
return c = r.displayName || null, c !== null ? c : e(r.type) || "Memo";
|
|
88
|
-
case
|
|
88
|
+
case S:
|
|
89
89
|
c = r._payload, r = r._init;
|
|
90
90
|
try {
|
|
91
91
|
return e(r(c));
|
|
@@ -115,8 +115,8 @@ function Be() {
|
|
|
115
115
|
}
|
|
116
116
|
}
|
|
117
117
|
function a(r) {
|
|
118
|
-
if (r ===
|
|
119
|
-
if (typeof r == "object" && r !== null && r.$$typeof ===
|
|
118
|
+
if (r === C) return "<>";
|
|
119
|
+
if (typeof r == "object" && r !== null && r.$$typeof === S)
|
|
120
120
|
return "<...>";
|
|
121
121
|
try {
|
|
122
122
|
var c = e(r);
|
|
@@ -126,22 +126,22 @@ function Be() {
|
|
|
126
126
|
}
|
|
127
127
|
}
|
|
128
128
|
function o() {
|
|
129
|
-
var r =
|
|
129
|
+
var r = P.A;
|
|
130
130
|
return r === null ? null : r.getOwner();
|
|
131
131
|
}
|
|
132
132
|
function l() {
|
|
133
133
|
return Error("react-stack-top-frame");
|
|
134
134
|
}
|
|
135
135
|
function s(r) {
|
|
136
|
-
if (
|
|
136
|
+
if (L.call(r, "key")) {
|
|
137
137
|
var c = Object.getOwnPropertyDescriptor(r, "key").get;
|
|
138
138
|
if (c && c.isReactWarning) return !1;
|
|
139
139
|
}
|
|
140
140
|
return r.key !== void 0;
|
|
141
141
|
}
|
|
142
|
-
function
|
|
142
|
+
function u(r, c) {
|
|
143
143
|
function y() {
|
|
144
|
-
|
|
144
|
+
G || (G = !0, console.error(
|
|
145
145
|
"%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)",
|
|
146
146
|
c
|
|
147
147
|
));
|
|
@@ -153,14 +153,14 @@ function Be() {
|
|
|
153
153
|
}
|
|
154
154
|
function d() {
|
|
155
155
|
var r = e(this.type);
|
|
156
|
-
return
|
|
156
|
+
return q[r] || (q[r] = !0, console.error(
|
|
157
157
|
"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."
|
|
158
158
|
)), r = this.props.ref, r !== void 0 ? r : null;
|
|
159
159
|
}
|
|
160
|
-
function
|
|
160
|
+
function f(r, c, y, g, i, v) {
|
|
161
161
|
var h = y.ref;
|
|
162
162
|
return r = {
|
|
163
|
-
$$typeof:
|
|
163
|
+
$$typeof: E,
|
|
164
164
|
type: r,
|
|
165
165
|
key: c,
|
|
166
166
|
props: y,
|
|
@@ -182,19 +182,19 @@ function Be() {
|
|
|
182
182
|
configurable: !1,
|
|
183
183
|
enumerable: !1,
|
|
184
184
|
writable: !0,
|
|
185
|
-
value:
|
|
185
|
+
value: i
|
|
186
186
|
}), Object.defineProperty(r, "_debugTask", {
|
|
187
187
|
configurable: !1,
|
|
188
188
|
enumerable: !1,
|
|
189
189
|
writable: !0,
|
|
190
|
-
value:
|
|
190
|
+
value: v
|
|
191
191
|
}), Object.freeze && (Object.freeze(r.props), Object.freeze(r)), r;
|
|
192
192
|
}
|
|
193
|
-
function m(r, c, y, g,
|
|
193
|
+
function m(r, c, y, g, i, v) {
|
|
194
194
|
var h = c.children;
|
|
195
195
|
if (h !== void 0)
|
|
196
196
|
if (g)
|
|
197
|
-
if (
|
|
197
|
+
if (I(h)) {
|
|
198
198
|
for (g = 0; g < h.length; g++)
|
|
199
199
|
_(h[g]);
|
|
200
200
|
Object.freeze && Object.freeze(h);
|
|
@@ -203,12 +203,12 @@ function Be() {
|
|
|
203
203
|
"React.jsx: Static children should always be an array. You are likely explicitly calling React.jsxs or React.jsxDEV. Use the Babel transform instead."
|
|
204
204
|
);
|
|
205
205
|
else _(h);
|
|
206
|
-
if (
|
|
206
|
+
if (L.call(c, "key")) {
|
|
207
207
|
h = e(r);
|
|
208
|
-
var
|
|
209
|
-
return
|
|
208
|
+
var j = Object.keys(c).filter(function(k) {
|
|
209
|
+
return k !== "key";
|
|
210
210
|
});
|
|
211
|
-
g = 0 <
|
|
211
|
+
g = 0 < j.length ? "{key: someKey, " + j.join(": ..., ") + ": ...}" : "{key: someKey}", X[h + g] || (j = 0 < j.length ? "{" + j.join(": ..., ") + ": ...}" : "{}", console.error(
|
|
212
212
|
`A props object containing a "key" prop is being spread into JSX:
|
|
213
213
|
let props = %s;
|
|
214
214
|
<%s {...props} />
|
|
@@ -217,34 +217,34 @@ React keys must be passed directly to JSX without using spread:
|
|
|
217
217
|
<%s key={someKey} {...props} />`,
|
|
218
218
|
g,
|
|
219
219
|
h,
|
|
220
|
-
|
|
220
|
+
j,
|
|
221
221
|
h
|
|
222
|
-
),
|
|
222
|
+
), X[h + g] = !0);
|
|
223
223
|
}
|
|
224
224
|
if (h = null, y !== void 0 && (n(y), h = "" + y), s(c) && (n(c.key), h = "" + c.key), "key" in c) {
|
|
225
225
|
y = {};
|
|
226
|
-
for (var
|
|
227
|
-
|
|
226
|
+
for (var O in c)
|
|
227
|
+
O !== "key" && (y[O] = c[O]);
|
|
228
228
|
} else y = c;
|
|
229
|
-
return h &&
|
|
229
|
+
return h && u(
|
|
230
230
|
y,
|
|
231
231
|
typeof r == "function" ? r.displayName || r.name || "Unknown" : r
|
|
232
|
-
),
|
|
232
|
+
), f(
|
|
233
233
|
r,
|
|
234
234
|
h,
|
|
235
235
|
y,
|
|
236
236
|
o(),
|
|
237
|
-
|
|
238
|
-
|
|
237
|
+
i,
|
|
238
|
+
v
|
|
239
239
|
);
|
|
240
240
|
}
|
|
241
241
|
function _(r) {
|
|
242
|
-
b(r) ? r._store && (r._store.validated = 1) : typeof r == "object" && r !== null && r.$$typeof ===
|
|
242
|
+
b(r) ? r._store && (r._store.validated = 1) : typeof r == "object" && r !== null && r.$$typeof === S && (r._payload.status === "fulfilled" ? b(r._payload.value) && r._payload.value._store && (r._payload.value._store.validated = 1) : r._store && (r._store.validated = 1));
|
|
243
243
|
}
|
|
244
244
|
function b(r) {
|
|
245
|
-
return typeof r == "object" && r !== null && r.$$typeof ===
|
|
245
|
+
return typeof r == "object" && r !== null && r.$$typeof === E;
|
|
246
246
|
}
|
|
247
|
-
var x =
|
|
247
|
+
var x = Le, E = Symbol.for("react.transitional.element"), R = Symbol.for("react.portal"), C = Symbol.for("react.fragment"), W = Symbol.for("react.strict_mode"), F = Symbol.for("react.profiler"), te = Symbol.for("react.consumer"), re = Symbol.for("react.context"), ne = Symbol.for("react.forward_ref"), N = Symbol.for("react.suspense"), D = Symbol.for("react.suspense_list"), T = Symbol.for("react.memo"), S = Symbol.for("react.lazy"), A = Symbol.for("react.activity"), U = Symbol.for("react.client.reference"), P = x.__CLIENT_INTERNALS_DO_NOT_USE_OR_WARN_USERS_THEY_CANNOT_UPGRADE, L = Object.prototype.hasOwnProperty, I = Array.isArray, $ = console.createTask ? console.createTask : function() {
|
|
248
248
|
return null;
|
|
249
249
|
};
|
|
250
250
|
x = {
|
|
@@ -252,54 +252,54 @@ React keys must be passed directly to JSX without using spread:
|
|
|
252
252
|
return r();
|
|
253
253
|
}
|
|
254
254
|
};
|
|
255
|
-
var
|
|
255
|
+
var G, q = {}, z = x.react_stack_bottom_frame.bind(
|
|
256
256
|
x,
|
|
257
257
|
l
|
|
258
|
-
)(), J =
|
|
259
|
-
|
|
260
|
-
var g = 1e4 >
|
|
258
|
+
)(), J = $(a(l)), X = {};
|
|
259
|
+
B.Fragment = C, B.jsx = function(r, c, y) {
|
|
260
|
+
var g = 1e4 > P.recentlyCreatedOwnerStacks++;
|
|
261
261
|
return m(
|
|
262
262
|
r,
|
|
263
263
|
c,
|
|
264
264
|
y,
|
|
265
265
|
!1,
|
|
266
|
-
g ? Error("react-stack-top-frame") :
|
|
267
|
-
g ?
|
|
266
|
+
g ? Error("react-stack-top-frame") : z,
|
|
267
|
+
g ? $(a(r)) : J
|
|
268
268
|
);
|
|
269
|
-
},
|
|
270
|
-
var g = 1e4 >
|
|
269
|
+
}, B.jsxs = function(r, c, y) {
|
|
270
|
+
var g = 1e4 > P.recentlyCreatedOwnerStacks++;
|
|
271
271
|
return m(
|
|
272
272
|
r,
|
|
273
273
|
c,
|
|
274
274
|
y,
|
|
275
275
|
!0,
|
|
276
|
-
g ? Error("react-stack-top-frame") :
|
|
277
|
-
g ?
|
|
276
|
+
g ? Error("react-stack-top-frame") : z,
|
|
277
|
+
g ? $(a(r)) : J
|
|
278
278
|
);
|
|
279
279
|
};
|
|
280
|
-
})()),
|
|
280
|
+
})()), B;
|
|
281
281
|
}
|
|
282
|
-
var
|
|
283
|
-
function
|
|
284
|
-
return
|
|
282
|
+
var ye;
|
|
283
|
+
function We() {
|
|
284
|
+
return ye || (ye = 1, process.env.NODE_ENV === "production" ? Z.exports = Be() : Z.exports = Ve()), Z.exports;
|
|
285
285
|
}
|
|
286
|
-
var
|
|
287
|
-
const
|
|
286
|
+
var p = We();
|
|
287
|
+
const Ge = Ie({
|
|
288
288
|
licenceMapbox: "",
|
|
289
289
|
licenseMuiX: ""
|
|
290
290
|
}), $t = ({ children: e, licenseMuiX: t, licenceMapbox: n }) => {
|
|
291
|
-
|
|
291
|
+
w(() => {
|
|
292
292
|
t && $e.setLicenseKey(t);
|
|
293
293
|
}, [t]);
|
|
294
|
-
const a =
|
|
294
|
+
const a = M(
|
|
295
295
|
() => ({
|
|
296
296
|
licenceMapbox: n,
|
|
297
297
|
licenseMuiX: t
|
|
298
298
|
}),
|
|
299
299
|
[t, n]
|
|
300
300
|
);
|
|
301
|
-
return n && (
|
|
302
|
-
},
|
|
301
|
+
return n && (be.accessToken = n), /* @__PURE__ */ p.jsx(Ge.Provider, { value: a, children: e });
|
|
302
|
+
}, qe = (e) => e?.type === "LineString" || e?.type === "MultiLineString", ze = (e) => {
|
|
303
303
|
let t;
|
|
304
304
|
Array.isArray(e[0][0]) ? t = e.reduce((o, l) => l.length > o.length ? l : o) : t = e;
|
|
305
305
|
const n = Math.floor(t.length / 2);
|
|
@@ -308,18 +308,18 @@ const We = Le({
|
|
|
308
308
|
if (!(e && t))
|
|
309
309
|
return null;
|
|
310
310
|
const n = e.geometry;
|
|
311
|
-
if (!
|
|
311
|
+
if (!qe(n))
|
|
312
312
|
return null;
|
|
313
|
-
const a = n.coordinates, [o, l] =
|
|
314
|
-
return /* @__PURE__ */
|
|
315
|
-
},
|
|
313
|
+
const a = n.coordinates, [o, l] = ze(a);
|
|
314
|
+
return /* @__PURE__ */ p.jsx(ve, { longitude: o, latitude: l, children: t });
|
|
315
|
+
}, Xe = (e) => ce(e) ? { features: e, type: "FeatureCollection" } : e.type === "FeatureCollection" ? e : { features: [e], type: "FeatureCollection" }, ee = ({ features: e, lineLabel: t, lineStyle: n }) => {
|
|
316
316
|
if (!e)
|
|
317
317
|
return null;
|
|
318
|
-
const a =
|
|
319
|
-
return /* @__PURE__ */
|
|
318
|
+
const a = Xe(e), o = a.features.filter((s) => s.geometry.type === "Polygon" || s.geometry.type === "MultiPolygon"), l = a.features.filter((s) => s.geometry.type === "LineString" || s.geometry.type === "MultiLineString");
|
|
319
|
+
return /* @__PURE__ */ p.jsxs(p.Fragment, { children: [
|
|
320
320
|
o.length > 0 && // biome-ignore lint/correctness/useUniqueElementIds: <ID must stay stable for map layer>
|
|
321
|
-
/* @__PURE__ */
|
|
322
|
-
|
|
321
|
+
/* @__PURE__ */ p.jsx(fe, { id: "features-polygon", type: "geojson", data: { features: o, type: "FeatureCollection" }, children: /* @__PURE__ */ p.jsx(
|
|
322
|
+
pe,
|
|
323
323
|
{
|
|
324
324
|
id: "polygon-fill",
|
|
325
325
|
type: "fill",
|
|
@@ -329,9 +329,9 @@ const We = Le({
|
|
|
329
329
|
}
|
|
330
330
|
}
|
|
331
331
|
) }),
|
|
332
|
-
l.length > 0 && /* @__PURE__ */
|
|
333
|
-
/* @__PURE__ */
|
|
334
|
-
|
|
332
|
+
l.length > 0 && /* @__PURE__ */ p.jsxs(p.Fragment, { children: [
|
|
333
|
+
/* @__PURE__ */ p.jsx(fe, { id: "features-line", type: "geojson", data: { features: l, type: "FeatureCollection" }, children: /* @__PURE__ */ p.jsx(
|
|
334
|
+
pe,
|
|
335
335
|
{
|
|
336
336
|
id: "line-stroke",
|
|
337
337
|
type: "line",
|
|
@@ -342,32 +342,45 @@ const We = Le({
|
|
|
342
342
|
}
|
|
343
343
|
}
|
|
344
344
|
) }),
|
|
345
|
-
t && l.map((s,
|
|
345
|
+
t && l.map((s, u) => /* @__PURE__ */ p.jsx(Je, { route: s, children: t }, `label-${u}`))
|
|
346
346
|
] })
|
|
347
347
|
] });
|
|
348
|
-
},
|
|
348
|
+
}, Ze = "#000000", He = "#FFFFFF", se = {
|
|
349
349
|
default: "#009ba6",
|
|
350
350
|
primary: "#3F83F8",
|
|
351
351
|
secondary: "#9C27B0",
|
|
352
352
|
success: "#4CAF50",
|
|
353
353
|
warning: "#FF9800"
|
|
354
|
-
},
|
|
355
|
-
const
|
|
356
|
-
|
|
357
|
-
|
|
354
|
+
}, Qe = (e) => e in se, Ke = ({ color: e, variant: t, size: n = 28 }) => {
|
|
355
|
+
const a = xe(), o = a.palette.mode === "dark" ? Ze : He, l = Math.max(3, Math.round(n * 0.25)), s = (() => {
|
|
356
|
+
if (t && Qe(t))
|
|
357
|
+
return se[t];
|
|
358
|
+
if (!e)
|
|
359
|
+
return se.default;
|
|
360
|
+
if (typeof e == "function")
|
|
361
|
+
return e(a);
|
|
362
|
+
if (ie(e) && e.includes(".")) {
|
|
363
|
+
const [u, d] = e.split("."), f = a.palette[u];
|
|
364
|
+
if (f && typeof f == "object" && d in f)
|
|
365
|
+
return f[d];
|
|
366
|
+
}
|
|
367
|
+
return e;
|
|
368
|
+
})();
|
|
369
|
+
return /* @__PURE__ */ p.jsx(
|
|
370
|
+
H,
|
|
358
371
|
{
|
|
359
372
|
component: "div",
|
|
360
373
|
style: {
|
|
361
|
-
backgroundColor:
|
|
362
|
-
border:
|
|
374
|
+
backgroundColor: o,
|
|
375
|
+
border: `${l}px solid ${s}`,
|
|
363
376
|
borderRadius: "50%",
|
|
364
377
|
boxShadow: "0 0 4px rgba(0,0,0,0.3)",
|
|
365
|
-
height:
|
|
366
|
-
width:
|
|
378
|
+
height: n,
|
|
379
|
+
width: n
|
|
367
380
|
}
|
|
368
381
|
}
|
|
369
382
|
);
|
|
370
|
-
},
|
|
383
|
+
}, et = (e) => ({
|
|
371
384
|
".mapboxgl-popup-close-button": {
|
|
372
385
|
color: e.palette.mode === "dark" ? "#fff !important" : "#000 !important",
|
|
373
386
|
fontSize: "20px !important"
|
|
@@ -382,12 +395,26 @@ const We = Le({
|
|
|
382
395
|
".mapboxgl-popup-tip": {
|
|
383
396
|
borderTopColor: `${e.palette.mode === "dark" ? "#1e1e1e" : "#ffffff"} !important`
|
|
384
397
|
}
|
|
385
|
-
}),
|
|
398
|
+
}), _e = (e) => {
|
|
399
|
+
if (Q(e))
|
|
400
|
+
return e;
|
|
401
|
+
if (ie(e) && e.trim() !== "") {
|
|
402
|
+
const t = Number(e);
|
|
403
|
+
return Number.isFinite(t) ? t : null;
|
|
404
|
+
}
|
|
405
|
+
return null;
|
|
406
|
+
}, Ee = (e) => {
|
|
407
|
+
const t = _e(e);
|
|
408
|
+
return t !== null && t >= -90 && t <= 90;
|
|
409
|
+
}, Re = (e) => {
|
|
410
|
+
const t = _e(e);
|
|
411
|
+
return t !== null && t >= -180 && t <= 180;
|
|
412
|
+
}, Ft = (e) => Array.isArray(e) && e.length === 2 && Ee(e[0]) && Re(e[1]), Se = (e) => {
|
|
386
413
|
if (typeof e != "object" || e === null)
|
|
387
414
|
return !1;
|
|
388
415
|
const t = e;
|
|
389
|
-
return (typeof t.id == "string" || typeof t.id == "number" || t.id === void 0) &&
|
|
390
|
-
},
|
|
416
|
+
return (typeof t.id == "string" || typeof t.id == "number" || t.id === void 0) && Ee(t.lat) && Re(t.lng);
|
|
417
|
+
}, he = (e) => ie(e) || Q(e) ? String(e) : JSON.stringify(e), tt = (e) => {
|
|
391
418
|
if (!e)
|
|
392
419
|
return [];
|
|
393
420
|
const t = ce(e) ? e : e.type === "FeatureCollection" ? e.features : [e], n = [];
|
|
@@ -396,7 +423,7 @@ const We = Le({
|
|
|
396
423
|
o.type === "Point" && n.push(o.coordinates), o.type === "LineString" && n.push(...o.coordinates), o.type === "Polygon" && n.push(...o.coordinates[0]);
|
|
397
424
|
}
|
|
398
425
|
return n;
|
|
399
|
-
},
|
|
426
|
+
}, rt = ({
|
|
400
427
|
markers: e = [],
|
|
401
428
|
features: t,
|
|
402
429
|
padding: n = 50,
|
|
@@ -404,24 +431,24 @@ const We = Le({
|
|
|
404
431
|
disableAnimation: o,
|
|
405
432
|
fitBounds: l = !0,
|
|
406
433
|
animationKey: s,
|
|
407
|
-
openPopup:
|
|
434
|
+
openPopup: u
|
|
408
435
|
}) => {
|
|
409
|
-
const { current: d } =
|
|
410
|
-
const x = [...m.map((
|
|
411
|
-
return x.length === 0 ? null : x.reduce((
|
|
436
|
+
const { current: d } = Ue(), f = ae(""), m = M(() => e.filter(Se), [e]), _ = M(() => tt(t), [t]), b = M(() => {
|
|
437
|
+
const x = [...m.map((E) => [E.lng, E.lat]), ..._];
|
|
438
|
+
return x.length === 0 ? null : x.reduce((E, [R, C]) => E.extend([R, C]), new be.LngLatBounds());
|
|
412
439
|
}, [m, _]);
|
|
413
|
-
return
|
|
414
|
-
if (
|
|
415
|
-
|
|
440
|
+
return w(() => {
|
|
441
|
+
if (u) {
|
|
442
|
+
f.current = s !== void 0 ? he(s) : "__initial_skip__";
|
|
416
443
|
return;
|
|
417
444
|
}
|
|
418
445
|
if (d && l && b) {
|
|
419
446
|
if (s !== void 0) {
|
|
420
|
-
const x =
|
|
421
|
-
if (
|
|
447
|
+
const x = he(s);
|
|
448
|
+
if (f.current === x)
|
|
422
449
|
return;
|
|
423
|
-
|
|
424
|
-
} else if (
|
|
450
|
+
f.current = x;
|
|
451
|
+
} else if (f.current === "__initial_skip__")
|
|
425
452
|
return;
|
|
426
453
|
if (!b.isEmpty()) {
|
|
427
454
|
if (m.length === 1 && _.length === 0) {
|
|
@@ -439,71 +466,71 @@ const We = Le({
|
|
|
439
466
|
});
|
|
440
467
|
}
|
|
441
468
|
}
|
|
442
|
-
}, [d, b, n, a, o, s, l, m, _,
|
|
443
|
-
},
|
|
469
|
+
}, [d, b, n, a, o, s, l, m, _, u]), null;
|
|
470
|
+
}, Te = (e, t) => {
|
|
444
471
|
if (t <= 0)
|
|
445
472
|
throw new Error("chunkSize must be greater than 0");
|
|
446
473
|
const n = [];
|
|
447
474
|
for (let a = 0; a < e.length; a += t)
|
|
448
475
|
n.push(e.slice(a, a + t));
|
|
449
476
|
return n;
|
|
450
|
-
},
|
|
451
|
-
const a = t.map((s,
|
|
452
|
-
if (
|
|
477
|
+
}, nt = (e, t) => [e, ...t.map((n) => n.coords)].map((n) => n.join(",")).join(";"), ot = (e, t, n) => {
|
|
478
|
+
const a = t.map((s, u) => {
|
|
479
|
+
if (u === 0 || s == null)
|
|
453
480
|
return null;
|
|
454
|
-
const d = e[
|
|
481
|
+
const d = e[u - 1];
|
|
455
482
|
return d ? { distance: s, id: d.id, point: d.coords } : null;
|
|
456
483
|
}).filter((s) => s !== null);
|
|
457
484
|
if (a.length === 0)
|
|
458
485
|
return { all: [], nearest: null };
|
|
459
|
-
const o = a.sort((s,
|
|
486
|
+
const o = a.sort((s, u) => s.distance - u.distance), l = o[0];
|
|
460
487
|
return n && l.distance > n ? { all: o, nearest: null } : { all: o, nearest: l };
|
|
461
488
|
};
|
|
462
|
-
function
|
|
489
|
+
function je(e, t, n) {
|
|
463
490
|
return async (a, o, l, s) => {
|
|
464
|
-
const
|
|
465
|
-
return m?.length ?
|
|
491
|
+
const u = nt(a, o), d = e(u, l), f = await t(d), m = f ? n(f)?.[0] : void 0;
|
|
492
|
+
return m?.length ? ot(o, m, s) : { all: [], nearest: null };
|
|
466
493
|
};
|
|
467
494
|
}
|
|
468
|
-
const
|
|
495
|
+
const ke = async (e, t, n) => {
|
|
469
496
|
const a = Array.from({ length: Math.ceil(e.length / t) }, (l, s) => e.slice(s * t, (s + 1) * t));
|
|
470
497
|
return (await Promise.all(a.map(async (l) => Promise.all(l.map(n))))).flat();
|
|
471
|
-
},
|
|
498
|
+
}, st = "https://api.mapbox.com", ue = (e, t, n, a, o = {}) => {
|
|
472
499
|
const l = new URLSearchParams({
|
|
473
500
|
access_token: "",
|
|
474
501
|
...o
|
|
475
502
|
});
|
|
476
|
-
return `${
|
|
477
|
-
},
|
|
503
|
+
return `${st}/${e}/${t}/mapbox/${n}/${a}?${l.toString()}`;
|
|
504
|
+
}, de = async (e) => {
|
|
478
505
|
try {
|
|
479
506
|
const t = await fetch(e);
|
|
480
507
|
return t.ok ? await t.json() : (console.error(`Mapbox API error: ${t.status} ${t.statusText}`), null);
|
|
481
508
|
} catch (t) {
|
|
482
509
|
return console.error("Mapbox network error:", t), null;
|
|
483
510
|
}
|
|
484
|
-
},
|
|
511
|
+
}, at = 25, lt = 5, ct = (e, t) => ue("directions-matrix", "v1", t, e, {
|
|
485
512
|
annotations: "distance",
|
|
486
513
|
sources: "0"
|
|
487
|
-
}),
|
|
514
|
+
}), it = (e) => e.distances ?? void 0, ut = je(ct, de, it), dt = async (e, t, n = "driving", a) => {
|
|
488
515
|
if (!t.length)
|
|
489
516
|
return [];
|
|
490
|
-
const o =
|
|
491
|
-
return (await
|
|
517
|
+
const o = Te(t, at - 1);
|
|
518
|
+
return (await ke(
|
|
492
519
|
o,
|
|
493
|
-
|
|
494
|
-
(s) =>
|
|
495
|
-
)).flatMap((s) => s.all).sort((s,
|
|
496
|
-
},
|
|
497
|
-
const a = `${e[0]},${e[1]}`, o =
|
|
520
|
+
lt,
|
|
521
|
+
(s) => ut(e, s, n, a)
|
|
522
|
+
)).flatMap((s) => s.all).sort((s, u) => s.distance - u.distance);
|
|
523
|
+
}, ft = async (e, t = "driving", n = [5, 10, 15]) => {
|
|
524
|
+
const a = `${e[0]},${e[1]}`, o = ue("isochrone", "v1", t, a, {
|
|
498
525
|
contours_minutes: n.join(","),
|
|
499
526
|
polygons: "true"
|
|
500
527
|
});
|
|
501
|
-
return await
|
|
502
|
-
},
|
|
503
|
-
const a = `${e.join(",")};${t.join(",")}`, o =
|
|
528
|
+
return await de(o);
|
|
529
|
+
}, pt = async (e, t, n = "driving") => {
|
|
530
|
+
const a = `${e.join(",")};${t.join(",")}`, o = ue("directions", "v5", n, a, {
|
|
504
531
|
geometries: "geojson",
|
|
505
532
|
overview: "full"
|
|
506
|
-
}), l = await
|
|
533
|
+
}), l = await de(o);
|
|
507
534
|
if (!l?.routes?.length)
|
|
508
535
|
return null;
|
|
509
536
|
const s = l.routes[0];
|
|
@@ -515,64 +542,64 @@ const je = async (e, t, n) => {
|
|
|
515
542
|
},
|
|
516
543
|
type: "Feature"
|
|
517
544
|
};
|
|
518
|
-
},
|
|
519
|
-
findNearest:
|
|
520
|
-
getIsochrone:
|
|
521
|
-
getItinerary:
|
|
522
|
-
},
|
|
523
|
-
const [o, l] =
|
|
524
|
-
return
|
|
545
|
+
}, K = {
|
|
546
|
+
findNearest: dt,
|
|
547
|
+
getIsochrone: ft,
|
|
548
|
+
getItinerary: pt
|
|
549
|
+
}, gt = ({ origin: e, profile: t = "driving", intervals: n = [5, 10, 15], onIsochroneLoaded: a }) => {
|
|
550
|
+
const [o, l] = V(null);
|
|
551
|
+
return w(() => {
|
|
525
552
|
let s = !1;
|
|
526
553
|
if (!e || e.length !== 2) {
|
|
527
554
|
l(null);
|
|
528
555
|
return;
|
|
529
556
|
}
|
|
530
557
|
return (async () => {
|
|
531
|
-
if (!
|
|
558
|
+
if (!K.getIsochrone) {
|
|
532
559
|
console.warn("⚠️ getIsochrone is not implemented for this provider.");
|
|
533
560
|
return;
|
|
534
561
|
}
|
|
535
|
-
const
|
|
536
|
-
s || (l(
|
|
562
|
+
const u = await K.getIsochrone(e, t, n);
|
|
563
|
+
s || (l(u), a?.(u ?? null));
|
|
537
564
|
})(), () => {
|
|
538
565
|
s = !0;
|
|
539
566
|
};
|
|
540
|
-
}, [e, t, n, a]), o ? /* @__PURE__ */
|
|
541
|
-
},
|
|
567
|
+
}, [e, t, n, a]), o ? /* @__PURE__ */ p.jsx(ee, { features: o }) : null;
|
|
568
|
+
}, mt = le(gt), yt = {
|
|
542
569
|
cycling: "routed-bike",
|
|
543
570
|
driving: "routed-car",
|
|
544
571
|
walking: "routed-foot"
|
|
545
|
-
},
|
|
546
|
-
const o = `${
|
|
572
|
+
}, ht = "https://routing.openstreetmap.de", we = (e, t, n, a) => {
|
|
573
|
+
const o = `${ht}/${yt[t]}/${e}/v1/${t}/${n}`, l = a ? `?${new URLSearchParams(a).toString()}` : "";
|
|
547
574
|
return `${o}${l}`;
|
|
548
|
-
},
|
|
575
|
+
}, Ce = async (e) => {
|
|
549
576
|
try {
|
|
550
577
|
const t = await fetch(e);
|
|
551
578
|
return t.ok ? await t.json() : (console.error("OSRM API error:", t.status, t.statusText), null);
|
|
552
579
|
} catch (t) {
|
|
553
580
|
return console.error("Error fetching OSRM API:", t), null;
|
|
554
581
|
}
|
|
555
|
-
},
|
|
582
|
+
}, bt = 100, xt = 5, vt = (e, t) => we("table", t, e, {
|
|
556
583
|
annotations: "distance",
|
|
557
584
|
sources: 0
|
|
558
|
-
}), _t =
|
|
559
|
-
|
|
560
|
-
|
|
585
|
+
}), _t = je(
|
|
586
|
+
vt,
|
|
587
|
+
Ce,
|
|
561
588
|
(e) => e.distances ?? void 0
|
|
562
|
-
),
|
|
589
|
+
), Et = async (e, t, n = "driving", a) => {
|
|
563
590
|
if (!t.length)
|
|
564
591
|
return [];
|
|
565
|
-
const o =
|
|
566
|
-
return (await
|
|
592
|
+
const o = Te(t, bt - 1);
|
|
593
|
+
return (await ke(
|
|
567
594
|
o,
|
|
568
|
-
|
|
595
|
+
xt,
|
|
569
596
|
(s) => _t(e, s, n, a)
|
|
570
|
-
)).flatMap((s) => s.all).sort((s,
|
|
571
|
-
},
|
|
572
|
-
const a = `${e.join(",")};${t.join(",")}`, o =
|
|
597
|
+
)).flatMap((s) => s.all).sort((s, u) => s.distance - u.distance);
|
|
598
|
+
}, Rt = async (e, t, n = "driving") => {
|
|
599
|
+
const a = `${e.join(",")};${t.join(",")}`, o = we("route", n, a, {
|
|
573
600
|
geometries: "geojson",
|
|
574
601
|
overview: "full"
|
|
575
|
-
}), l = await
|
|
602
|
+
}), l = await Ce(o);
|
|
576
603
|
if (!l?.routes?.length)
|
|
577
604
|
return null;
|
|
578
605
|
const s = l.routes[0];
|
|
@@ -585,19 +612,19 @@ const je = async (e, t, n) => {
|
|
|
585
612
|
type: "Feature"
|
|
586
613
|
};
|
|
587
614
|
}, Ae = {
|
|
588
|
-
findNearest:
|
|
589
|
-
getItinerary:
|
|
590
|
-
},
|
|
591
|
-
const [d,
|
|
592
|
-
return
|
|
593
|
-
l && (
|
|
594
|
-
}, [l, s]),
|
|
615
|
+
findNearest: Et,
|
|
616
|
+
getItinerary: Rt
|
|
617
|
+
}, Oe = ({ from: e, to: t, profile: n, engine: a, itineraryLineStyle: o, initialRoute: l, onRouteComputed: s, itineraryLabel: u }) => {
|
|
618
|
+
const [d, f] = V(l ?? null);
|
|
619
|
+
return w(() => {
|
|
620
|
+
l && (f(l), s?.(l));
|
|
621
|
+
}, [l, s]), w(() => {
|
|
595
622
|
!(e && t) || l || (async () => {
|
|
596
|
-
const _ = await (a === "OSRM" ? Ae :
|
|
597
|
-
|
|
623
|
+
const _ = await (a === "OSRM" ? Ae : K).getItinerary(e, t, n);
|
|
624
|
+
f(_ ?? null), s?.(_ ?? null);
|
|
598
625
|
})();
|
|
599
|
-
}, [e, t, n, a, l, s]), d ? /* @__PURE__ */
|
|
600
|
-
},
|
|
626
|
+
}, [e, t, n, a, l, s]), d ? /* @__PURE__ */ p.jsx(ee, { features: d, lineStyle: o, lineLabel: u }) : null;
|
|
627
|
+
}, St = ({
|
|
601
628
|
origin: e,
|
|
602
629
|
maxDistanceMeters: t,
|
|
603
630
|
destinations: n,
|
|
@@ -605,45 +632,45 @@ const je = async (e, t, n) => {
|
|
|
605
632
|
initialNearestResults: o,
|
|
606
633
|
itineraryLineStyle: l,
|
|
607
634
|
profile: s = "driving",
|
|
608
|
-
engine:
|
|
635
|
+
engine: u = "OSRM"
|
|
609
636
|
}) => {
|
|
610
|
-
const [d,
|
|
611
|
-
|
|
612
|
-
o &&
|
|
613
|
-
}, [o]),
|
|
637
|
+
const [d, f] = V(o ?? []), m = ae(null);
|
|
638
|
+
w(() => {
|
|
639
|
+
o && f(o);
|
|
640
|
+
}, [o]), w(() => {
|
|
614
641
|
const b = new AbortController();
|
|
615
642
|
if (o?.length) return;
|
|
616
643
|
if (!e || e.length !== 2 || !n?.length) {
|
|
617
|
-
|
|
644
|
+
f([]);
|
|
618
645
|
return;
|
|
619
646
|
}
|
|
620
|
-
|
|
621
|
-
const x = n.map((
|
|
622
|
-
coords: [
|
|
623
|
-
id:
|
|
647
|
+
f([]);
|
|
648
|
+
const x = n.map((R) => ({
|
|
649
|
+
coords: [R.lng, R.lat],
|
|
650
|
+
id: R.id
|
|
624
651
|
}));
|
|
625
|
-
return (
|
|
626
|
-
}, [e, t, n, s,
|
|
652
|
+
return (u === "OSRM" ? Ae : K).findNearest(e, x, s, t).then((R) => f(R ?? [])).catch(() => f([])), () => b.abort();
|
|
653
|
+
}, [e, t, n, s, u, o?.length]), w(() => {
|
|
627
654
|
const b = m.current;
|
|
628
|
-
(!b || b.length !== d.length || b.some((
|
|
655
|
+
(!b || b.length !== d.length || b.some((E, R) => E.id !== d[R]?.id || E.distance !== d[R]?.distance)) && (a?.(d), m.current = d);
|
|
629
656
|
}, [d, a]);
|
|
630
657
|
const _ = d[0];
|
|
631
|
-
return _ ? _.routeFeature ? /* @__PURE__ */
|
|
632
|
-
},
|
|
658
|
+
return _ ? _.routeFeature ? /* @__PURE__ */ p.jsx(ee, { features: _.routeFeature }) : /* @__PURE__ */ p.jsx(Oe, { from: e, to: _.point, profile: s, engine: u, itineraryLineStyle: l }) : null;
|
|
659
|
+
}, Tt = le(St), oe = {
|
|
633
660
|
satellite: "mapbox://styles/mapbox/satellite-streets-v12",
|
|
634
661
|
street: {
|
|
635
662
|
dark: "mapbox://styles/mapbox/dark-v11",
|
|
636
663
|
light: "mapbox://styles/mapbox/streets-v12"
|
|
637
664
|
}
|
|
638
|
-
},
|
|
665
|
+
}, Me = (e, t) => {
|
|
639
666
|
const n = t === "dark";
|
|
640
667
|
switch (e) {
|
|
641
668
|
case "satellite":
|
|
642
|
-
return
|
|
669
|
+
return oe.satellite;
|
|
643
670
|
default:
|
|
644
|
-
return n ?
|
|
671
|
+
return n ? oe.street.dark : oe.street.light;
|
|
645
672
|
}
|
|
646
|
-
},
|
|
673
|
+
}, jt = ({
|
|
647
674
|
mapStyle: e,
|
|
648
675
|
theme: t,
|
|
649
676
|
baseMapView: n,
|
|
@@ -653,8 +680,8 @@ const je = async (e, t, n) => {
|
|
|
653
680
|
cooperativeGestures: o,
|
|
654
681
|
doubleClickZoom: a,
|
|
655
682
|
failIfMajorPerformanceCaveat: !1,
|
|
656
|
-
style: e ??
|
|
657
|
-
}),
|
|
683
|
+
style: e ?? Me(n, t)
|
|
684
|
+
}), kt = ({
|
|
658
685
|
containerStyle: e,
|
|
659
686
|
square: t,
|
|
660
687
|
loading: n,
|
|
@@ -662,56 +689,56 @@ const je = async (e, t, n) => {
|
|
|
662
689
|
width: o = "100%",
|
|
663
690
|
center: l = [2.3522, 48.8566],
|
|
664
691
|
zoom: s = 5,
|
|
665
|
-
popupMaxWidth:
|
|
692
|
+
popupMaxWidth: u,
|
|
666
693
|
openPopup: d,
|
|
667
|
-
openPopupOnHover:
|
|
694
|
+
openPopupOnHover: f,
|
|
668
695
|
markers: m = [],
|
|
669
696
|
fitBounds: _ = !0,
|
|
670
697
|
fitBoundsPadding: b,
|
|
671
698
|
fitBoundDuration: x,
|
|
672
|
-
fitBoundsAnimationKey:
|
|
673
|
-
disableAnimation:
|
|
674
|
-
mapStyle:
|
|
675
|
-
onMapClick:
|
|
676
|
-
baseMapView:
|
|
677
|
-
cooperativeGestures:
|
|
678
|
-
doubleClickZoom:
|
|
679
|
-
projection:
|
|
680
|
-
theme:
|
|
681
|
-
features:
|
|
699
|
+
fitBoundsAnimationKey: E,
|
|
700
|
+
disableAnimation: R,
|
|
701
|
+
mapStyle: C,
|
|
702
|
+
onMapClick: W,
|
|
703
|
+
baseMapView: F,
|
|
704
|
+
cooperativeGestures: te = !0,
|
|
705
|
+
doubleClickZoom: re = !0,
|
|
706
|
+
projection: ne,
|
|
707
|
+
theme: N,
|
|
708
|
+
features: D,
|
|
682
709
|
itineraryParams: T,
|
|
683
|
-
findNearestMarker:
|
|
710
|
+
findNearestMarker: S,
|
|
684
711
|
isochrone: A
|
|
685
712
|
}) => {
|
|
686
|
-
const
|
|
687
|
-
const [
|
|
688
|
-
return { latitude:
|
|
689
|
-
}, [l, s]),
|
|
690
|
-
() =>
|
|
691
|
-
[
|
|
713
|
+
const U = xe(), P = ae(null), [L, I] = V(d ?? null), [$, G] = V(!1), q = M(() => {
|
|
714
|
+
const [i = 2.3522, v = 48.8566] = ce(l) ? l : [];
|
|
715
|
+
return { latitude: v, longitude: i, zoom: s };
|
|
716
|
+
}, [l, s]), z = M(
|
|
717
|
+
() => C || Me(F, N ?? U.palette.mode),
|
|
718
|
+
[F, C, N, U.palette.mode]
|
|
692
719
|
), {
|
|
693
720
|
style: J,
|
|
694
|
-
cooperativeGestures:
|
|
721
|
+
cooperativeGestures: X,
|
|
695
722
|
doubleClickZoom: r
|
|
696
|
-
} =
|
|
697
|
-
baseMapView:
|
|
698
|
-
cooperativeGestures:
|
|
699
|
-
doubleClickZoom:
|
|
700
|
-
mapStyle:
|
|
701
|
-
theme:
|
|
702
|
-
}), c = (
|
|
703
|
-
!
|
|
704
|
-
}, y = (
|
|
705
|
-
|
|
723
|
+
} = jt({
|
|
724
|
+
baseMapView: F,
|
|
725
|
+
cooperativeGestures: te,
|
|
726
|
+
doubleClickZoom: re,
|
|
727
|
+
mapStyle: z,
|
|
728
|
+
theme: N ?? U.palette.mode
|
|
729
|
+
}), c = (i, v) => {
|
|
730
|
+
!f && v && I(i);
|
|
731
|
+
}, y = (i, v) => {
|
|
732
|
+
f && I(v ? i : null);
|
|
706
733
|
};
|
|
707
|
-
|
|
708
|
-
|
|
734
|
+
w(() => {
|
|
735
|
+
I(d ?? null);
|
|
709
736
|
}, [d]);
|
|
710
|
-
const g =
|
|
711
|
-
return /* @__PURE__ */
|
|
712
|
-
/* @__PURE__ */
|
|
713
|
-
n && /* @__PURE__ */
|
|
714
|
-
|
|
737
|
+
const g = M(() => L ? m?.find((i) => i.id === L) ?? null : null, [L, m]);
|
|
738
|
+
return /* @__PURE__ */ p.jsxs(H, { "data-testid": "mapbox-container", sx: { height: a, position: "relative", width: o, ...e }, children: [
|
|
739
|
+
/* @__PURE__ */ p.jsx(Fe, { styles: et }),
|
|
740
|
+
n && /* @__PURE__ */ p.jsx(
|
|
741
|
+
Ne,
|
|
715
742
|
{
|
|
716
743
|
"data-testid": "skeleton-loader",
|
|
717
744
|
width: o,
|
|
@@ -724,65 +751,79 @@ const je = async (e, t, n) => {
|
|
|
724
751
|
}
|
|
725
752
|
}
|
|
726
753
|
),
|
|
727
|
-
!n && /* @__PURE__ */
|
|
728
|
-
|
|
754
|
+
!n && /* @__PURE__ */ p.jsxs(
|
|
755
|
+
De,
|
|
729
756
|
{
|
|
730
|
-
ref:
|
|
731
|
-
cooperativeGestures:
|
|
757
|
+
ref: P,
|
|
758
|
+
cooperativeGestures: X,
|
|
732
759
|
doubleClickZoom: r,
|
|
733
760
|
mapStyle: J,
|
|
734
|
-
projection:
|
|
761
|
+
projection: ne,
|
|
735
762
|
onLoad: () => {
|
|
736
|
-
|
|
763
|
+
G(!0), P.current?.resize();
|
|
737
764
|
},
|
|
738
|
-
initialViewState:
|
|
765
|
+
initialViewState: q,
|
|
739
766
|
style: { height: "100%", width: "100%" },
|
|
740
767
|
mapboxAccessToken: void 0,
|
|
741
|
-
onClick: (
|
|
742
|
-
const
|
|
743
|
-
const { lng:
|
|
744
|
-
return
|
|
768
|
+
onClick: (i) => {
|
|
769
|
+
const v = m.find((h) => {
|
|
770
|
+
const { lng: j, lat: O } = i.lngLat, k = Math.abs(Number(h.lng ?? 0) - j), Pe = Math.abs(Number(h.lat ?? 0) - O);
|
|
771
|
+
return k < 0.01 && Pe < 0.01;
|
|
745
772
|
});
|
|
746
|
-
|
|
773
|
+
W?.(i.lngLat.lng, i.lngLat.lat, v ?? null);
|
|
747
774
|
},
|
|
748
775
|
children: [
|
|
749
|
-
|
|
750
|
-
|
|
751
|
-
|
|
752
|
-
|
|
753
|
-
|
|
754
|
-
|
|
755
|
-
|
|
756
|
-
|
|
776
|
+
$ && m.filter(Se).map((i) => {
|
|
777
|
+
const v = typeof i.size == "number" ? i.size : void 0, h = (() => {
|
|
778
|
+
if (!i.IconComponent)
|
|
779
|
+
return null;
|
|
780
|
+
const k = { ...i.iconProps };
|
|
781
|
+
return v && (k.width = v, k.height = v), /* @__PURE__ */ p.jsx(i.IconComponent, { ...k });
|
|
782
|
+
})(), j = i.IconComponent ? null : /* @__PURE__ */ p.jsx(Ke, { color: i.color, variant: i.variant, size: v }), O = {
|
|
783
|
+
alignItems: "center",
|
|
784
|
+
cursor: i.Tooltip ? "pointer" : "default",
|
|
785
|
+
display: "inline-flex",
|
|
786
|
+
justifyContent: "center",
|
|
787
|
+
...i.IconComponent && !v ? {} : v ? { height: v, width: v } : {}
|
|
788
|
+
};
|
|
789
|
+
return /* @__PURE__ */ p.jsx(
|
|
790
|
+
ve,
|
|
791
|
+
{
|
|
792
|
+
longitude: i.lng,
|
|
793
|
+
latitude: i.lat,
|
|
794
|
+
anchor: "bottom",
|
|
795
|
+
onClick: (k) => {
|
|
796
|
+
k.originalEvent.stopPropagation(), i.id && c(i.id, !!i.Tooltip), W?.(i.lng, i.lat, i);
|
|
797
|
+
},
|
|
798
|
+
children: /* @__PURE__ */ p.jsx(
|
|
799
|
+
H,
|
|
800
|
+
{
|
|
801
|
+
component: "div",
|
|
802
|
+
onMouseEnter: () => i.id && y(i.id, !!i.Tooltip),
|
|
803
|
+
onMouseLeave: () => y(null),
|
|
804
|
+
style: O,
|
|
805
|
+
children: h || j
|
|
806
|
+
}
|
|
807
|
+
)
|
|
757
808
|
},
|
|
758
|
-
|
|
759
|
-
|
|
760
|
-
|
|
761
|
-
|
|
762
|
-
|
|
763
|
-
onMouseLeave: () => y(null),
|
|
764
|
-
style: { cursor: u.Tooltip ? "pointer" : "default" },
|
|
765
|
-
children: u.IconComponent ? /* @__PURE__ */ f.jsx(u.IconComponent, { ...u.iconProps }) : /* @__PURE__ */ f.jsx(Qe, { color: u.color, variant: u.variant })
|
|
766
|
-
}
|
|
767
|
-
)
|
|
768
|
-
},
|
|
769
|
-
u.id
|
|
770
|
-
)),
|
|
771
|
-
L && g?.Tooltip && /* @__PURE__ */ f.jsx(
|
|
772
|
-
Ue,
|
|
809
|
+
i.id
|
|
810
|
+
);
|
|
811
|
+
}),
|
|
812
|
+
$ && g?.Tooltip && /* @__PURE__ */ p.jsx(
|
|
813
|
+
Ye,
|
|
773
814
|
{
|
|
774
|
-
longitude:
|
|
775
|
-
latitude:
|
|
815
|
+
longitude: Q(g.lng) ? g.lng : 0,
|
|
816
|
+
latitude: Q(g.lat) ? g.lat : 0,
|
|
776
817
|
anchor: "top",
|
|
777
|
-
onClose: () =>
|
|
778
|
-
maxWidth:
|
|
818
|
+
onClose: () => I(null),
|
|
819
|
+
maxWidth: u,
|
|
779
820
|
closeOnClick: !0,
|
|
780
821
|
closeOnMove: !1,
|
|
781
|
-
children: /* @__PURE__ */
|
|
822
|
+
children: /* @__PURE__ */ p.jsx(H, { component: "div", sx: { minHeight: 60, minWidth: 240 }, children: g.Tooltip })
|
|
782
823
|
}
|
|
783
824
|
),
|
|
784
|
-
T && /* @__PURE__ */
|
|
785
|
-
|
|
825
|
+
T && /* @__PURE__ */ p.jsx(
|
|
826
|
+
Oe,
|
|
786
827
|
{
|
|
787
828
|
from: T.from,
|
|
788
829
|
to: T.to,
|
|
@@ -794,21 +835,21 @@ const je = async (e, t, n) => {
|
|
|
794
835
|
itineraryLabel: T.itineraryLabel
|
|
795
836
|
}
|
|
796
837
|
),
|
|
797
|
-
|
|
798
|
-
|
|
838
|
+
S && /* @__PURE__ */ p.jsx(
|
|
839
|
+
Tt,
|
|
799
840
|
{
|
|
800
|
-
origin:
|
|
801
|
-
destinations:
|
|
802
|
-
onNearestFound:
|
|
803
|
-
maxDistanceMeters:
|
|
804
|
-
engine:
|
|
805
|
-
profile:
|
|
806
|
-
initialNearestResults:
|
|
807
|
-
itineraryLineStyle:
|
|
841
|
+
origin: S.origin,
|
|
842
|
+
destinations: S.destinations,
|
|
843
|
+
onNearestFound: S.onNearestFound,
|
|
844
|
+
maxDistanceMeters: S.maxDistanceMeters,
|
|
845
|
+
engine: S.engine,
|
|
846
|
+
profile: S.profile,
|
|
847
|
+
initialNearestResults: S.initialNearestResults,
|
|
848
|
+
itineraryLineStyle: S.itineraryLineStyle
|
|
808
849
|
}
|
|
809
850
|
),
|
|
810
|
-
A && /* @__PURE__ */
|
|
811
|
-
|
|
851
|
+
A && /* @__PURE__ */ p.jsx(
|
|
852
|
+
mt,
|
|
812
853
|
{
|
|
813
854
|
origin: A.origin,
|
|
814
855
|
profile: A.profile,
|
|
@@ -816,15 +857,15 @@ const je = async (e, t, n) => {
|
|
|
816
857
|
intervals: A.intervals
|
|
817
858
|
}
|
|
818
859
|
),
|
|
819
|
-
|
|
820
|
-
_ && /* @__PURE__ */
|
|
821
|
-
|
|
860
|
+
D && /* @__PURE__ */ p.jsx(ee, { features: D }),
|
|
861
|
+
_ && /* @__PURE__ */ p.jsx(
|
|
862
|
+
rt,
|
|
822
863
|
{
|
|
823
864
|
markers: m,
|
|
824
|
-
features:
|
|
865
|
+
features: D,
|
|
825
866
|
padding: b,
|
|
826
|
-
duration:
|
|
827
|
-
animationKey:
|
|
867
|
+
duration: R ? 0 : x,
|
|
868
|
+
animationKey: E,
|
|
828
869
|
openPopup: !!d
|
|
829
870
|
}
|
|
830
871
|
)
|
|
@@ -832,25 +873,25 @@ const je = async (e, t, n) => {
|
|
|
832
873
|
}
|
|
833
874
|
)
|
|
834
875
|
] });
|
|
835
|
-
},
|
|
876
|
+
}, Nt = le(kt), Dt = ["OSRM", "Mapbox"], Ut = ["driving", "walking", "cycling"], Yt = (e, t) => {
|
|
836
877
|
const n = "geometry" in t ? t.geometry : t, [a, o] = e, l = (s) => s.map(
|
|
837
|
-
(
|
|
838
|
-
const [x,
|
|
839
|
-
return m > o !=
|
|
878
|
+
(u) => u.reduce((d, [f, m], _, b) => {
|
|
879
|
+
const [x, E] = b[(_ - 1 + b.length) % b.length];
|
|
880
|
+
return m > o != E > o && a < (x - f) * (o - m) / (E - m) + f ? !d : d;
|
|
840
881
|
}, !1)
|
|
841
|
-
).reduce((
|
|
882
|
+
).reduce((u, d, f) => f === 0 ? d : u && !d, !1);
|
|
842
883
|
return n.type === "Polygon" ? l(n.coordinates) : n.type === "MultiPolygon" ? n.coordinates.some((s) => l(s)) : !1;
|
|
843
884
|
};
|
|
844
885
|
export {
|
|
845
|
-
|
|
846
|
-
|
|
886
|
+
It as DEFAULT_CENTER_LAT,
|
|
887
|
+
Lt as DEFAULT_CENTER_LNG,
|
|
847
888
|
$t as MapProvider,
|
|
848
|
-
|
|
849
|
-
|
|
850
|
-
|
|
889
|
+
Nt as MapView,
|
|
890
|
+
Dt as engines,
|
|
891
|
+
Yt as isPointInGeoJSON,
|
|
851
892
|
Ft as isValidLatLngTuple,
|
|
852
|
-
|
|
853
|
-
|
|
854
|
-
|
|
855
|
-
|
|
893
|
+
Ee as isValidLatitude,
|
|
894
|
+
Re as isValidLongitude,
|
|
895
|
+
Se as isValidMarker,
|
|
896
|
+
Ut as profiles
|
|
856
897
|
};
|