@mappedin/maplibre-overlay 6.0.1-beta.54
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/LICENSE.txt +104 -0
- package/README.md +101 -0
- package/lib/esm/GLTFExporter-CVG4TSMU.js +1 -0
- package/lib/esm/GLTFLoader-N7FATKQH.js +1 -0
- package/lib/esm/chunk-3N4I2ZNL.js +1 -0
- package/lib/esm/chunk-CU2O7JF6.js +1 -0
- package/lib/esm/chunk-DMDOMXWY.js +1 -0
- package/lib/esm/chunk-DZU6L3QB.js +1 -0
- package/lib/esm/chunk-MSQIQNNK.js +1 -0
- package/lib/esm/chunk-MY2QYVOC.js +1 -0
- package/lib/esm/index.css +1 -0
- package/lib/esm/index.d.ts +208 -0
- package/lib/esm/index.js +1 -0
- package/lib/esm/outdoor-context-v5-H6GAWAMZ.js +1 -0
- package/lib/esm/roboto-regular-JDPVYXT5.js +1 -0
- package/lib/esm/text3d-FS4EQ4SH.js +1 -0
- package/package.json +49 -0
|
@@ -0,0 +1 @@
|
|
|
1
|
+
.mappedin__smart-collision-engine__container{position:absolute;left:0;top:0;bottom:0;right:0;pointer-events:none;transform-style:preserve-3d;font-family:InterUI-Regular,Helvetica,Arial,sans-serif}.mappedin__smart-collision-engine-debug__container{position:absolute;left:0;top:0;bottom:0;right:0;transition:opacity .3s ease-in-out;pointer-events:none;will-change:opacity}.mappedin__smart-collision-engine-debug__container.interacting{opacity:.2}.maplibregl-map{font:12px/20px Helvetica Neue,Arial,Helvetica,sans-serif;overflow:hidden;position:relative;-webkit-tap-highlight-color:rgb(0 0 0 / 0%)}.maplibregl-canvas{position:absolute;left:0;top:0}.maplibregl-map:fullscreen{width:100%;height:100%}.maplibregl-ctrl-group button.maplibregl-ctrl-compass{touch-action:none}.maplibregl-canvas-container.maplibregl-interactive,.maplibregl-ctrl-group button.maplibregl-ctrl-compass{cursor:grab;-webkit-user-select:none;user-select:none}.maplibregl-canvas-container.maplibregl-interactive.maplibregl-track-pointer{cursor:pointer}.maplibregl-canvas-container.maplibregl-interactive:active,.maplibregl-ctrl-group button.maplibregl-ctrl-compass:active{cursor:grabbing}.maplibregl-canvas-container.maplibregl-touch-zoom-rotate,.maplibregl-canvas-container.maplibregl-touch-zoom-rotate .maplibregl-canvas{touch-action:pan-x pan-y}.maplibregl-canvas-container.maplibregl-touch-drag-pan,.maplibregl-canvas-container.maplibregl-touch-drag-pan .maplibregl-canvas{touch-action:pinch-zoom}.maplibregl-canvas-container.maplibregl-touch-zoom-rotate.maplibregl-touch-drag-pan,.maplibregl-canvas-container.maplibregl-touch-zoom-rotate.maplibregl-touch-drag-pan .maplibregl-canvas{touch-action:none}.maplibregl-canvas-container.maplibregl-touch-drag-pan.maplibregl-cooperative-gestures,.maplibregl-canvas-container.maplibregl-touch-drag-pan.maplibregl-cooperative-gestures .maplibregl-canvas{touch-action:pan-x pan-y}.maplibregl-ctrl-top-left,.maplibregl-ctrl-top-right,.maplibregl-ctrl-bottom-left,.maplibregl-ctrl-bottom-right{position:absolute;pointer-events:none;z-index:2}.maplibregl-ctrl-top-left{top:0;left:0}.maplibregl-ctrl-top-right{top:0;right:0}.maplibregl-ctrl-bottom-left{bottom:0;left:0}.maplibregl-ctrl-bottom-right{right:0;bottom:0}.maplibregl-ctrl{clear:both;pointer-events:auto;transform:translate(0)}.maplibregl-ctrl-top-left .maplibregl-ctrl{margin:10px 0 0 10px;float:left}.maplibregl-ctrl-top-right .maplibregl-ctrl{margin:10px 10px 0 0;float:right}.maplibregl-ctrl-bottom-left .maplibregl-ctrl{margin:0 0 10px 10px;float:left}.maplibregl-ctrl-bottom-right .maplibregl-ctrl{margin:0 10px 10px 0;float:right}.maplibregl-ctrl-group{border-radius:4px;background:#fff}.maplibregl-ctrl-group:not(:empty){box-shadow:0 0 0 2px #0000001a}@media (forced-colors: active){.maplibregl-ctrl-group:not(:empty){box-shadow:0 0 0 2px ButtonText}}.maplibregl-ctrl-group button{width:29px;height:29px;display:block;padding:0;outline:none;border:0;box-sizing:border-box;background-color:transparent;cursor:pointer}.maplibregl-ctrl-group button+button{border-top:1px solid #ddd}.maplibregl-ctrl button .maplibregl-ctrl-icon{display:block;width:100%;height:100%;background-repeat:no-repeat;background-position:center center}@media (forced-colors: active){.maplibregl-ctrl-icon{background-color:transparent}.maplibregl-ctrl-group button+button{border-top:1px solid ButtonText}}.maplibregl-ctrl button::-moz-focus-inner{border:0;padding:0}.maplibregl-ctrl-attrib-button:focus,.maplibregl-ctrl-group button:focus{box-shadow:0 0 2px 2px #0096ff}.maplibregl-ctrl button:disabled{cursor:not-allowed}.maplibregl-ctrl button:disabled .maplibregl-ctrl-icon{opacity:.25}@media (hover: hover){.maplibregl-ctrl button:not(:disabled):hover{background-color:#0000000d}}.maplibregl-ctrl button:not(:disabled):active{background-color:#0000000d}.maplibregl-ctrl-group button:focus:focus-visible{box-shadow:0 0 2px 2px #0096ff}.maplibregl-ctrl-group button:focus:not(:focus-visible){box-shadow:none}.maplibregl-ctrl-group button:focus:first-child{border-radius:4px 4px 0 0}.maplibregl-ctrl-group button:focus:last-child{border-radius:0 0 4px 4px}.maplibregl-ctrl-group button:focus:only-child{border-radius:inherit}.maplibregl-ctrl button.maplibregl-ctrl-zoom-out .maplibregl-ctrl-icon{background-image:svg-load("svg/maplibregl-ctrl-zoom-out.svg",fill: #333)}.maplibregl-ctrl button.maplibregl-ctrl-zoom-in .maplibregl-ctrl-icon{background-image:svg-load("svg/maplibregl-ctrl-zoom-in.svg",fill: #333)}@media (forced-colors: active){.maplibregl-ctrl button.maplibregl-ctrl-zoom-out .maplibregl-ctrl-icon{background-image:svg-load("svg/maplibregl-ctrl-zoom-out.svg",fill: #fff)}.maplibregl-ctrl button.maplibregl-ctrl-zoom-in .maplibregl-ctrl-icon{background-image:svg-load("svg/maplibregl-ctrl-zoom-in.svg",fill: #fff)}}@media (forced-colors: active) and (prefers-color-scheme: light){.maplibregl-ctrl button.maplibregl-ctrl-zoom-out .maplibregl-ctrl-icon{background-image:svg-load("svg/maplibregl-ctrl-zoom-out.svg",fill: #000)}.maplibregl-ctrl button.maplibregl-ctrl-zoom-in .maplibregl-ctrl-icon{background-image:svg-load("svg/maplibregl-ctrl-zoom-in.svg",fill: #000)}}.maplibregl-ctrl button.maplibregl-ctrl-fullscreen .maplibregl-ctrl-icon{background-image:svg-load("svg/maplibregl-ctrl-fullscreen.svg",fill: #333)}.maplibregl-ctrl button.maplibregl-ctrl-shrink .maplibregl-ctrl-icon{background-image:svg-load("svg/maplibregl-ctrl-shrink.svg")}@media (forced-colors: active){.maplibregl-ctrl button.maplibregl-ctrl-fullscreen .maplibregl-ctrl-icon{background-image:svg-load("svg/maplibregl-ctrl-fullscreen.svg",fill: #fff)}.maplibregl-ctrl button.maplibregl-ctrl-shrink .maplibregl-ctrl-icon{background-image:svg-load("svg/maplibregl-ctrl-shrink.svg",fill: #fff)}}@media (forced-colors: active) and (prefers-color-scheme: light){.maplibregl-ctrl button.maplibregl-ctrl-fullscreen .maplibregl-ctrl-icon{background-image:svg-load("svg/maplibregl-ctrl-fullscreen.svg",fill: #000)}.maplibregl-ctrl button.maplibregl-ctrl-shrink .maplibregl-ctrl-icon{background-image:svg-load("svg/maplibregl-ctrl-shrink.svg",fill: #000)}}.maplibregl-ctrl button.maplibregl-ctrl-compass .maplibregl-ctrl-icon{background-image:svg-load("svg/maplibregl-ctrl-compass.svg",fill: #333)}@media (forced-colors: active){.maplibregl-ctrl button.maplibregl-ctrl-compass .maplibregl-ctrl-icon{@svg-load ctrl-compass-white url(svg/maplibregl-ctrl-compass.svg){fill: #fff; #south {fill: #999;}}background-image:svg-inline(ctrl-compass-white)}}@media (forced-colors: active) and (prefers-color-scheme: light){.maplibregl-ctrl button.maplibregl-ctrl-compass .maplibregl-ctrl-icon{background-image:svg-load("svg/maplibregl-ctrl-compass.svg",fill: #000)}}@svg-load ctrl-globe url(svg/maplibregl-ctrl-globe.svg){stroke: #333;}@svg-load ctrl-globe-enabled url(svg/maplibregl-ctrl-globe.svg){stroke: #33b5e5;}.maplibregl-ctrl button.maplibregl-ctrl-globe .maplibregl-ctrl-icon{background-image:svg-inline(ctrl-globe)}.maplibregl-ctrl button.maplibregl-ctrl-globe-enabled .maplibregl-ctrl-icon{background-image:svg-inline(ctrl-globe-enabled)}@svg-load ctrl-terrain url(svg/maplibregl-ctrl-terrain.svg){fill: #333;}@svg-load ctrl-terrain-enabled url(svg/maplibregl-ctrl-terrain.svg){fill: #33b5e5;}.maplibregl-ctrl button.maplibregl-ctrl-terrain .maplibregl-ctrl-icon{background-image:svg-inline(ctrl-terrain)}.maplibregl-ctrl button.maplibregl-ctrl-terrain-enabled .maplibregl-ctrl-icon{background-image:svg-inline(ctrl-terrain-enabled)}@svg-load ctrl-geolocate url(svg/maplibregl-ctrl-geolocate.svg){fill: #333; #stroke {display: none;}}@svg-load ctrl-geolocate-white url(svg/maplibregl-ctrl-geolocate.svg){fill: #fff; #stroke {display: none;}}@svg-load ctrl-geolocate-black url(svg/maplibregl-ctrl-geolocate.svg){fill: #000; #stroke {display: none;}}@svg-load ctrl-geolocate-disabled url(svg/maplibregl-ctrl-geolocate.svg){fill: #aaa; #stroke {fill: #f00;}}@svg-load ctrl-geolocate-disabled-white url(svg/maplibregl-ctrl-geolocate.svg){fill: #999; #stroke {fill: #f00;}}@svg-load ctrl-geolocate-disabled-black url(svg/maplibregl-ctrl-geolocate.svg){fill: #666; #stroke {fill: #f00;}}@svg-load ctrl-geolocate-active url(svg/maplibregl-ctrl-geolocate.svg){fill: #33b5e5; #stroke {display: none;}}@svg-load ctrl-geolocate-active-error url(svg/maplibregl-ctrl-geolocate.svg){fill: #e58978; #stroke {display: none;}}@svg-load ctrl-geolocate-background url(svg/maplibregl-ctrl-geolocate.svg){fill: #33b5e5; #stroke {display: none;} #dot {display: none;}}@svg-load ctrl-geolocate-background-error url(svg/maplibregl-ctrl-geolocate.svg){fill: #e54e33; #stroke {display: none;} #dot {display: none;}}.maplibregl-ctrl button.maplibregl-ctrl-geolocate .maplibregl-ctrl-icon{background-image:svg-inline(ctrl-geolocate)}.maplibregl-ctrl button.maplibregl-ctrl-geolocate:disabled .maplibregl-ctrl-icon{background-image:svg-inline(ctrl-geolocate-disabled)}.maplibregl-ctrl button.maplibregl-ctrl-geolocate.maplibregl-ctrl-geolocate-active .maplibregl-ctrl-icon{background-image:svg-inline(ctrl-geolocate-active)}.maplibregl-ctrl button.maplibregl-ctrl-geolocate.maplibregl-ctrl-geolocate-active-error .maplibregl-ctrl-icon{background-image:svg-inline(ctrl-geolocate-active-error)}.maplibregl-ctrl button.maplibregl-ctrl-geolocate.maplibregl-ctrl-geolocate-background .maplibregl-ctrl-icon{background-image:svg-inline(ctrl-geolocate-background)}.maplibregl-ctrl button.maplibregl-ctrl-geolocate.maplibregl-ctrl-geolocate-background-error .maplibregl-ctrl-icon{background-image:svg-inline(ctrl-geolocate-background-error)}.maplibregl-ctrl button.maplibregl-ctrl-geolocate.maplibregl-ctrl-geolocate-waiting .maplibregl-ctrl-icon{animation:maplibregl-spin 2s infinite linear}@media (forced-colors: active){.maplibregl-ctrl button.maplibregl-ctrl-geolocate .maplibregl-ctrl-icon{background-image:svg-inline(ctrl-geolocate-white)}.maplibregl-ctrl button.maplibregl-ctrl-geolocate:disabled .maplibregl-ctrl-icon{background-image:svg-inline(ctrl-geolocate-disabled-white)}.maplibregl-ctrl button.maplibregl-ctrl-geolocate.maplibregl-ctrl-geolocate-active .maplibregl-ctrl-icon{background-image:svg-inline(ctrl-geolocate-active)}.maplibregl-ctrl button.maplibregl-ctrl-geolocate.maplibregl-ctrl-geolocate-active-error .maplibregl-ctrl-icon{background-image:svg-inline(ctrl-geolocate-active-error)}.maplibregl-ctrl button.maplibregl-ctrl-geolocate.maplibregl-ctrl-geolocate-background .maplibregl-ctrl-icon{background-image:svg-inline(ctrl-geolocate-background)}.maplibregl-ctrl button.maplibregl-ctrl-geolocate.maplibregl-ctrl-geolocate-background-error .maplibregl-ctrl-icon{background-image:svg-inline(ctrl-geolocate-background-error)}}@media (forced-colors: active) and (prefers-color-scheme: light){.maplibregl-ctrl button.maplibregl-ctrl-geolocate .maplibregl-ctrl-icon{background-image:svg-inline(ctrl-geolocate-black)}.maplibregl-ctrl button.maplibregl-ctrl-geolocate:disabled .maplibregl-ctrl-icon{background-image:svg-inline(ctrl-geolocate-disabled-black)}}@keyframes maplibregl-spin{0%{transform:rotate(0)}to{transform:rotate(360deg)}}a.maplibregl-ctrl-logo{width:88px;height:23px;margin:0 0 -4px -4px;display:block;background-repeat:no-repeat;cursor:pointer;overflow:hidden;background-image:svg-load("svg/maplibregl-ctrl-logo.svg")}a.maplibregl-ctrl-logo.maplibregl-compact{width:14px}@media (forced-colors: active){a.maplibregl-ctrl-logo{@svg-load ctrl-logo-white url(svg/maplibregl-ctrl-logo.svg){#outline {opacity: 1;} #fill {opacity: 1;}}background-color:transparent;background-image:svg-inline(ctrl-logo-white)}}@media (forced-colors: active) and (prefers-color-scheme: light){a.maplibregl-ctrl-logo{@svg-load ctrl-logo-black url(svg/maplibregl-ctrl-logo.svg){#outline {opacity: 1; fill: #fff; stroke: #fff;} #fill {opacity: 1; fill: #000;}}background-image:svg-inline(ctrl-logo-black)}}.maplibregl-ctrl.maplibregl-ctrl-attrib{padding:0 5px;background-color:#ffffff80;margin:0}@media screen{.maplibregl-ctrl-attrib.maplibregl-compact{min-height:20px;padding:2px 24px 2px 0;margin:10px;position:relative;background-color:#fff;color:#000;border-radius:12px;box-sizing:content-box}.maplibregl-ctrl-attrib.maplibregl-compact-show{padding:2px 28px 2px 8px;visibility:visible}.maplibregl-ctrl-top-left>.maplibregl-ctrl-attrib.maplibregl-compact-show,.maplibregl-ctrl-bottom-left>.maplibregl-ctrl-attrib.maplibregl-compact-show{padding:2px 8px 2px 28px;border-radius:12px}.maplibregl-ctrl-attrib.maplibregl-compact .maplibregl-ctrl-attrib-inner{display:none}.maplibregl-ctrl-attrib-button{display:none;cursor:pointer;position:absolute;background-image:svg-load("svg/maplibregl-ctrl-attrib.svg");background-color:#ffffff80;width:24px;height:24px;box-sizing:border-box;border-radius:12px;outline:none;top:0;right:0;border:0}.maplibregl-ctrl-attrib summary.maplibregl-ctrl-attrib-button{-webkit-appearance:none;appearance:none;list-style:none}.maplibregl-ctrl-attrib summary.maplibregl-ctrl-attrib-button::-webkit-details-marker{display:none}.maplibregl-ctrl-top-left .maplibregl-ctrl-attrib-button,.maplibregl-ctrl-bottom-left .maplibregl-ctrl-attrib-button{left:0}.maplibregl-ctrl-attrib.maplibregl-compact .maplibregl-ctrl-attrib-button,.maplibregl-ctrl-attrib.maplibregl-compact-show .maplibregl-ctrl-attrib-inner{display:block}.maplibregl-ctrl-attrib.maplibregl-compact-show .maplibregl-ctrl-attrib-button{background-color:#0000000d}.maplibregl-ctrl-bottom-right>.maplibregl-ctrl-attrib.maplibregl-compact:after{bottom:0;right:0}.maplibregl-ctrl-top-right>.maplibregl-ctrl-attrib.maplibregl-compact:after{top:0;right:0}.maplibregl-ctrl-top-left>.maplibregl-ctrl-attrib.maplibregl-compact:after{top:0;left:0}.maplibregl-ctrl-bottom-left>.maplibregl-ctrl-attrib.maplibregl-compact:after{bottom:0;left:0}}@media screen and (forced-colors: active){.maplibregl-ctrl-attrib.maplibregl-compact:after{background-image:svg-load("svg/maplibregl-ctrl-attrib.svg",fill=#fff)}}@media screen and (forced-colors: active) and (prefers-color-scheme: light){.maplibregl-ctrl-attrib.maplibregl-compact:after{background-image:svg-load("svg/maplibregl-ctrl-attrib.svg")}}.maplibregl-ctrl-attrib a{color:#000000bf;text-decoration:none}.maplibregl-ctrl-attrib a:hover{color:inherit;text-decoration:underline}.maplibregl-attrib-empty{display:none}.maplibregl-ctrl-scale{background-color:#ffffffbf;font-size:10px;border-width:medium 2px 2px;border-style:none solid solid;border-color:#333;padding:0 5px;color:#333;box-sizing:border-box}.maplibregl-popup{position:absolute;top:0;left:0;display:flex;will-change:transform;pointer-events:none}.maplibregl-popup-anchor-top,.maplibregl-popup-anchor-top-left,.maplibregl-popup-anchor-top-right{flex-direction:column}.maplibregl-popup-anchor-bottom,.maplibregl-popup-anchor-bottom-left,.maplibregl-popup-anchor-bottom-right{flex-direction:column-reverse}.maplibregl-popup-anchor-left{flex-direction:row}.maplibregl-popup-anchor-right{flex-direction:row-reverse}.maplibregl-popup-tip{width:0;height:0;border:10px solid transparent;z-index:1}.maplibregl-popup-anchor-top .maplibregl-popup-tip{align-self:center;border-top:none;border-bottom-color:#fff}.maplibregl-popup-anchor-top-left .maplibregl-popup-tip{align-self:flex-start;border-top:none;border-left:none;border-bottom-color:#fff}.maplibregl-popup-anchor-top-right .maplibregl-popup-tip{align-self:flex-end;border-top:none;border-right:none;border-bottom-color:#fff}.maplibregl-popup-anchor-bottom .maplibregl-popup-tip{align-self:center;border-bottom:none;border-top-color:#fff}.maplibregl-popup-anchor-bottom-left .maplibregl-popup-tip{align-self:flex-start;border-bottom:none;border-left:none;border-top-color:#fff}.maplibregl-popup-anchor-bottom-right .maplibregl-popup-tip{align-self:flex-end;border-bottom:none;border-right:none;border-top-color:#fff}.maplibregl-popup-anchor-left .maplibregl-popup-tip{align-self:center;border-left:none;border-right-color:#fff}.maplibregl-popup-anchor-right .maplibregl-popup-tip{align-self:center;border-right:none;border-left-color:#fff}.maplibregl-popup-close-button{position:absolute;right:0;top:0;border:0;border-radius:0 3px 0 0;cursor:pointer;background-color:transparent}.maplibregl-popup-close-button:hover{background-color:#0000000d}.maplibregl-popup-content{position:relative;background:#fff;border-radius:3px;box-shadow:0 1px 2px #0000001a;padding:15px 10px;pointer-events:auto}.maplibregl-popup-anchor-top-left .maplibregl-popup-content{border-top-left-radius:0}.maplibregl-popup-anchor-top-right .maplibregl-popup-content{border-top-right-radius:0}.maplibregl-popup-anchor-bottom-left .maplibregl-popup-content{border-bottom-left-radius:0}.maplibregl-popup-anchor-bottom-right .maplibregl-popup-content{border-bottom-right-radius:0}.maplibregl-popup-track-pointer{display:none}.maplibregl-popup-track-pointer *{pointer-events:none;-webkit-user-select:none;user-select:none}.maplibregl-map:hover .maplibregl-popup-track-pointer{display:flex}.maplibregl-map:active .maplibregl-popup-track-pointer{display:none}.maplibregl-marker{position:absolute;top:0;left:0;will-change:transform;transition:opacity .2s}.maplibregl-user-location-dot{background-color:#1da1f2;width:15px;height:15px;border-radius:50%}.maplibregl-user-location-dot:before{background-color:#1da1f2;content:"";width:15px;height:15px;border-radius:50%;position:absolute;animation:maplibregl-user-location-dot-pulse 2s infinite}.maplibregl-user-location-dot:after{border-radius:50%;border:2px solid #fff;content:"";height:19px;left:-2px;position:absolute;top:-2px;width:19px;box-sizing:border-box;box-shadow:0 0 3px #00000059}@keyframes maplibregl-user-location-dot-pulse{0%{transform:scale(1);opacity:1}70%{transform:scale(3);opacity:0}to{transform:scale(1);opacity:0}}.maplibregl-user-location-dot-stale{background-color:#aaa}.maplibregl-user-location-dot-stale:after{display:none}.maplibregl-user-location-accuracy-circle{background-color:#1da1f233;width:1px;height:1px;border-radius:100%}.maplibregl-crosshair,.maplibregl-crosshair .maplibregl-interactive,.maplibregl-crosshair .maplibregl-interactive:active{cursor:crosshair}.maplibregl-boxzoom{position:absolute;top:0;left:0;width:0;height:0;background:#fff;border:2px dotted #202020;opacity:.5}.maplibregl-cooperative-gesture-screen{background:#0006;position:absolute;top:0;right:0;bottom:0;left:0;display:flex;justify-content:center;align-items:center;color:#fff;padding:1rem;font-size:1.4em;line-height:1.2;opacity:0;pointer-events:none;transition:opacity 1s ease 1s;z-index:99999}.maplibregl-cooperative-gesture-screen.maplibregl-show{opacity:1;transition:opacity .05s}.maplibregl-cooperative-gesture-screen .maplibregl-mobile-message{display:none}@media (hover: none),(pointer: coarse){.maplibregl-cooperative-gesture-screen .maplibregl-desktop-message{display:none}.maplibregl-cooperative-gesture-screen .maplibregl-mobile-message{display:block}}.maplibregl-pseudo-fullscreen{position:fixed!important;width:100%!important;height:100%!important;top:0!important;left:0!important;z-index:99999}.mappedin-marker{font-family:InterUI-Regular,Helvetica,Arial,sans-serif;font-weight:400;top:0;position:absolute;font-weight:700;color:#000;display:flex;flex-direction:row;will-change:transform,opacity;transition:opacity .15s ease-in-out;justify-content:center;opacity:0}.mappedin-marker[data-placement=low-priority-pin]>.mappedin-marker-content{visibility:hidden}.mappedin-marker:before{content:"";display:none;border-radius:50%;position:relative;width:var(--mappedin-pin-size, 2px);height:var(--mappedin-pin-size, 2px);background-color:var(--pin-color, #666)}.mappedin-marker[data-placement=low-priority-pin]:before{display:block}.mappedin-map .mappedin-control-container{position:absolute;left:0;top:0;bottom:0;right:0;pointer-events:none;font-family:InterUI-Regular,Helvetica,Arial,sans-serif}.mappedin-map .mappedin-control-container .mappedin-ctrl-top-left,.mappedin-map .mappedin-control-container .mappedin-ctrl-top-right,.mappedin-map .mappedin-control-container .mappedin-ctrl-bottom-left,.mappedin-map .mappedin-control-container .mappedin-ctrl-bottom-right{position:absolute;pointer-events:none}.mappedin-map .mappedin-control-container .mappedin-ctrl-top-left{top:0;left:0}.mappedin-map .mappedin-control-container .mappedin-ctrl-top-right{top:0;right:0}.mappedin-map .mappedin-control-container .mappedin-ctrl-bottom-left{bottom:0;left:0}.mappedin-map .mappedin-control-container .mappedin-ctrl-bottom-right{bottom:0;right:0}.mappedin-map .mappedin-control-container .mappedin-ctrl-attrib{display:block;position:relative;pointer-events:auto;font:9px/11px InterUI-Regular,Helvetica,Arial,sans-serif;padding:3px 5px 1px;background-color:#ffffff80;margin:0;min-width:11px;min-height:11px;-webkit-user-select:none;user-select:none}.mappedin-map .mappedin-control-container .mappedin-ctrl-attrib summary.mappedin-ctrl-attrib-button{-webkit-appearance:none;appearance:none;list-style:none}.mappedin-map .mappedin-control-container .mappedin-ctrl-attrib summary.mappedin-ctrl-attrib-button::-webkit-details-marker{display:none}.mappedin-map .mappedin-control-container .mappedin-ctrl-attrib.mappedin-compact .mappedin-ctrl-attrib-button,.mappedin-map .mappedin-control-container .mappedin-ctrl-attrib.mappedin-compact-show .mappedin-ctrl-attrib-inner{display:inline-block}.mappedin-map .mappedin-control-container .mappedin-ctrl-attrib.mappedin-compact{background-color:transparent}.mappedin-map .mappedin-control-container .mappedin-ctrl-attrib.mappedin-compact-show{min-width:15px;min-height:15px;box-sizing:border-box;background-color:#ffffff80}.mappedin-map .mappedin-control-container .mappedin-ctrl-attrib-top-left{float:left;border-bottom-right-radius:4px}.mappedin-map .mappedin-control-container .mappedin-ctrl-attrib-top-right{float:right;border-bottom-left-radius:4px}.mappedin-map .mappedin-control-container .mappedin-ctrl-attrib-bottom-left{float:left;border-top-right-radius:4px}.mappedin-map .mappedin-control-container .mappedin-ctrl-attrib-bottom-right{float:right;border-top-left-radius:4px}.mappedin-map .mappedin-control-container .mappedin-ctrl-attrib-top-left,.mappedin-map .mappedin-control-container .mappedin-ctrl-attrib-bottom-left{padding:3px 5px 1px 20px}.mappedin-map .mappedin-control-container .mappedin-ctrl-attrib-inner{display:inline-block;margin-right:12px}.mappedin-map .mappedin-control-container .mappedin-ctrl-attrib-inner,.mappedin-map .mappedin-control-container .mappedin-ctrl-attrib-inner a{color:#000000bf;text-decoration:none}.mappedin-map .mappedin-control-container .mappedin-ctrl-attrib-inner-bold,.mappedin-map .mappedin-control-container .mappedin-ctrl-attrib-inner-bold a{font-weight:700}.mappedin-map .mappedin-control-container .mappedin-ctrl-attrib-inner a:hover{color:#017ef1;text-decoration:underline;cursor:pointer}.mappedin-map .mappedin-control-container .mappedin-ctrl-attrib-button{display:none;cursor:pointer;position:absolute;width:15px;height:15px;box-sizing:border-box;border-radius:50%;top:0;right:2px;border:1px}.mappedin-map .mappedin-control-container .mappedin-ctrl-attrib-top-left .mappedin-ctrl-attrib-button,.mappedin-map .mappedin-control-container .mappedin-ctrl-attrib-bottom-left .mappedin-ctrl-attrib-button{left:2px}.mappedin-map .mappedin-interactive{cursor:grab}.mappedin-map .mappedin-interactive:active{cursor:grabbing}.mappedin-map .mappedin-interactive.mappedin-interaction-hover{cursor:pointer}
|
|
@@ -0,0 +1,208 @@
|
|
|
1
|
+
// Generated by dts-bundle v0.7.3
|
|
2
|
+
// Dependencies for this module:
|
|
3
|
+
// ../maplibre-overlay/@mappedin/mappedin-js
|
|
4
|
+
// ../maplibre-overlay/maplibre-gl
|
|
5
|
+
|
|
6
|
+
declare module '@mappedin/maplibre-overlay' {
|
|
7
|
+
import { MapView, type TShow3DMapOptions, type Position, type MapData } from '@mappedin/mappedin-js';
|
|
8
|
+
import type { IControl } from 'maplibre-gl';
|
|
9
|
+
/**
|
|
10
|
+
* Mappedin JS makes use of MapLibre to render the outdoor portion of the map. Mappedin JS exposes this layer through {@link MapView.Outdoor} and can be used to add additional layers as described in the [Outdoor Map Guide](https://developer.mappedin.com/web-sdk/outdoor-map).
|
|
11
|
+
*
|
|
12
|
+
* It is also possible to utilize the opposite architecture, by adding a MapView to a MapLibre Map.
|
|
13
|
+
* This is accomplished by using {@link MappedinMapLibreOverlay} class. It allows a developer to easily add a Mappedin indoor map to an existing MapLibre based app.
|
|
14
|
+
*
|
|
15
|
+
* Refer to the [Mappedin MapLibre Overlay](https://developer.mappedin.com/web-sdk/mappedin-maplibre-overlay) for more information and interactive examples.
|
|
16
|
+
|
|
17
|
+
* @experimental
|
|
18
|
+
*/
|
|
19
|
+
export const createMapLibreOverlay: (mapData: MapData, showMapOptions?: TShow3DMapOptions) => MappedinMapLibreOverlay;
|
|
20
|
+
export const FLOOR_GAP = 3;
|
|
21
|
+
/**
|
|
22
|
+
* Default map options used if no custom options are provided.
|
|
23
|
+
*
|
|
24
|
+
* @internal
|
|
25
|
+
*/
|
|
26
|
+
export const DEFAULT_MAP_OPTIONS: {
|
|
27
|
+
debug: false;
|
|
28
|
+
pitch: number;
|
|
29
|
+
bearing: number;
|
|
30
|
+
antialiasing: {
|
|
31
|
+
enabled: true;
|
|
32
|
+
};
|
|
33
|
+
shadingAndOutlines: true;
|
|
34
|
+
outdoorView: {
|
|
35
|
+
layersHiddenByGeometry: string[];
|
|
36
|
+
};
|
|
37
|
+
imagePlacementOptions: {
|
|
38
|
+
mode: "default";
|
|
39
|
+
};
|
|
40
|
+
flipImagesToFaceCamera: true;
|
|
41
|
+
multiFloorView: {
|
|
42
|
+
enabled: false;
|
|
43
|
+
floorGap: number;
|
|
44
|
+
};
|
|
45
|
+
};
|
|
46
|
+
export type TMappedinMapLibreOverlayEvents = {
|
|
47
|
+
/**
|
|
48
|
+
* Event emitted when the MappedinMap is loaded
|
|
49
|
+
*/
|
|
50
|
+
loaded: {
|
|
51
|
+
/**
|
|
52
|
+
* MapView instance
|
|
53
|
+
*/
|
|
54
|
+
mapView: MapView;
|
|
55
|
+
/**
|
|
56
|
+
* MapData instance
|
|
57
|
+
*/
|
|
58
|
+
mapData: MapData;
|
|
59
|
+
};
|
|
60
|
+
};
|
|
61
|
+
/**
|
|
62
|
+
* ## MappedinMapLibreOverlay in Mappedin JS
|
|
63
|
+
*
|
|
64
|
+
* MappedinMapLibreOverlay allows you to integrate Mappedin indoor maps into existing MapLibre-based applications. This class implements the MapLibre IControl interface, making it easy to add as a control to any MapLibre map.
|
|
65
|
+
*
|
|
66
|
+
* ### Features
|
|
67
|
+
* - **Seamless Integration**: Add indoor maps to existing MapLibre applications
|
|
68
|
+
* - **Event System**: Listen for map loading and state changes
|
|
69
|
+
* - **Outdoor Context**: Automatic outdoor map integration with tokens
|
|
70
|
+
* - **Customizable Options**: Configure map appearance and behavior
|
|
71
|
+
* - **Lifecycle Management**: Proper cleanup and resource management
|
|
72
|
+
*
|
|
73
|
+
* > **Best Practice:** Use this class when you have an existing MapLibre application and want to add indoor mapping capabilities. For new applications, consider using the standard MapView approach.
|
|
74
|
+
*
|
|
75
|
+
* ### Example Usage
|
|
76
|
+
* ```ts
|
|
77
|
+
* // Create the overlay
|
|
78
|
+
* const overlay = new MappedinMapLibreOverlay(
|
|
79
|
+
* { latitude: 43.6532, longitude: -79.3832 },
|
|
80
|
+
* mapData,
|
|
81
|
+
* { showDefaultUI: true }
|
|
82
|
+
* );
|
|
83
|
+
*
|
|
84
|
+
* // Add to MapLibre map
|
|
85
|
+
* mapLibreMap.addControl(overlay);
|
|
86
|
+
*
|
|
87
|
+
* // Listen for map loading
|
|
88
|
+
* overlay.on('loaded', ({ mapView, mapData }) => {
|
|
89
|
+
* console.log('Indoor map loaded!');
|
|
90
|
+
* // Now you can use mapView for interactions
|
|
91
|
+
* });
|
|
92
|
+
* ```
|
|
93
|
+
*
|
|
94
|
+
* ### Integration Patterns
|
|
95
|
+
* - **Add as Control**: Use `map.addControl(overlay)` to add to MapLibre
|
|
96
|
+
* - **Event Handling**: Listen for 'loaded' event to access MapView
|
|
97
|
+
* - **Outdoor Integration**: Automatic outdoor context with proper tokens
|
|
98
|
+
* - **Cleanup**: Properly remove overlay when done
|
|
99
|
+
*
|
|
100
|
+
* ### More Information
|
|
101
|
+
* - [MapLibre Overlay Guide](https://developer.mappedin.com/web-sdk/mappedin-maplibre-overlay)
|
|
102
|
+
* - [Outdoor Map Guide](https://developer.mappedin.com/web-sdk/outdoor-map)
|
|
103
|
+
* - [Getting Started Guide](https://developer.mappedin.com/web-sdk/getting-started)
|
|
104
|
+
*
|
|
105
|
+
* Mappedin JS makes use of MapLibre to render the outdoor portion of the map. Mappedin JS exposes this layer through {@link MapView.Outdoor} and can be used to add additional layers as described in the [Outdoor Map Guide](https://developer.mappedin.com/web-sdk/outdoor-map).
|
|
106
|
+
*
|
|
107
|
+
* It is also possible to utilize the opposite architecture, by adding a MapView to a MapLibre Map.
|
|
108
|
+
* This is accomplished by using this MappedinMapLibreOverlay class. It allows a developer to easily add a Mappedin indoor map to an existing MapLibre based app.
|
|
109
|
+
*
|
|
110
|
+
* Use {@link createMapLibreOverlay} to instantiate this class.
|
|
111
|
+
*
|
|
112
|
+
* Refer to the [Mappedin MapLibre Overlay](https://developer.mappedin.com/web-sdk/mappedin-maplibre-overlay) for more information and interactive examples.
|
|
113
|
+
*/
|
|
114
|
+
export class MappedinMapLibreOverlay implements IControl {
|
|
115
|
+
#private;
|
|
116
|
+
static instance: MappedinMapLibreOverlay;
|
|
117
|
+
/** @internal */
|
|
118
|
+
constructor(origin: Position | undefined, mapData: MapData, options?: TShow3DMapOptions);
|
|
119
|
+
/** @internal */
|
|
120
|
+
onAdd(map: any): HTMLDivElement;
|
|
121
|
+
/** @internal */
|
|
122
|
+
onRemove(): void;
|
|
123
|
+
/**
|
|
124
|
+
* Subscribe to overlay events.
|
|
125
|
+
*
|
|
126
|
+
* Listen for events emitted by the overlay, such as when the map is loaded and ready for interaction.
|
|
127
|
+
*
|
|
128
|
+
* @param eventName The name of the event to listen for.
|
|
129
|
+
* @param fn The callback function to execute when the event is emitted.
|
|
130
|
+
*
|
|
131
|
+
* @example Listen for map loading
|
|
132
|
+
* ```ts
|
|
133
|
+
* overlay.on('loaded', ({ mapView, mapData }) => {
|
|
134
|
+
* console.log('Indoor map loaded successfully!');
|
|
135
|
+
* console.log('Map name:', mapData.mapName);
|
|
136
|
+
*
|
|
137
|
+
* // Now you can use the MapView for interactions
|
|
138
|
+
* const spaces = mapData.getByType('space');
|
|
139
|
+
* console.log('Number of spaces:', spaces.length);
|
|
140
|
+
* });
|
|
141
|
+
* ```
|
|
142
|
+
*
|
|
143
|
+
* @example Set up map interactions after loading
|
|
144
|
+
* ```ts
|
|
145
|
+
* overlay.on('loaded', ({ mapView, mapData }) => {
|
|
146
|
+
* // Add markers to the map
|
|
147
|
+
* const coordinate = mapView.createCoordinate(43.6532, -79.3832);
|
|
148
|
+
* const marker = mapView.Markers.add(coordinate, {
|
|
149
|
+
* color: 'red',
|
|
150
|
+
* label: 'Important Location'
|
|
151
|
+
* });
|
|
152
|
+
*
|
|
153
|
+
* // Listen for map interactions
|
|
154
|
+
* mapView.on('click', (event) => {
|
|
155
|
+
* console.log('Map clicked:', event.coordinate);
|
|
156
|
+
* });
|
|
157
|
+
* });
|
|
158
|
+
*/
|
|
159
|
+
on: <EventName extends keyof TMappedinMapLibreOverlayEvents>(eventName: EventName, fn: (payload: TMappedinMapLibreOverlayEvents[EventName] extends {
|
|
160
|
+
data: null;
|
|
161
|
+
} ? TMappedinMapLibreOverlayEvents[EventName]["data"] : TMappedinMapLibreOverlayEvents[EventName]) => void) => void;
|
|
162
|
+
/**
|
|
163
|
+
* Unsubscribe from overlay events.
|
|
164
|
+
*
|
|
165
|
+
* Remove event listeners to prevent memory leaks and unwanted callbacks.
|
|
166
|
+
*
|
|
167
|
+
* @param eventName The name of the event to unsubscribe from.
|
|
168
|
+
* @param fn The callback function that was previously registered with `on()`.
|
|
169
|
+
*
|
|
170
|
+
* @example Remove event listener
|
|
171
|
+
* ```ts
|
|
172
|
+
* const handleLoaded = ({ mapView, mapData }) => {
|
|
173
|
+
* console.log('Map loaded');
|
|
174
|
+
* };
|
|
175
|
+
*
|
|
176
|
+
* overlay.on('loaded', handleLoaded);
|
|
177
|
+
*
|
|
178
|
+
* // Later, remove the listener
|
|
179
|
+
* overlay.off('loaded', handleLoaded);
|
|
180
|
+
* ```
|
|
181
|
+
*
|
|
182
|
+
* @example Clean up multiple listeners
|
|
183
|
+
* ```ts
|
|
184
|
+
* const listeners = [];
|
|
185
|
+
*
|
|
186
|
+
* const addListeners = () => {
|
|
187
|
+
* const loadedHandler = ({ mapView, mapData }) => {
|
|
188
|
+
* console.log('Map loaded');
|
|
189
|
+
* };
|
|
190
|
+
*
|
|
191
|
+
* overlay.on('loaded', loadedHandler);
|
|
192
|
+
* listeners.push(['loaded', loadedHandler]);
|
|
193
|
+
* };
|
|
194
|
+
*
|
|
195
|
+
* const removeListeners = () => {
|
|
196
|
+
* listeners.forEach(([eventName, handler]) => {
|
|
197
|
+
* overlay.off(eventName, handler);
|
|
198
|
+
* });
|
|
199
|
+
* listeners.length = 0;
|
|
200
|
+
* };
|
|
201
|
+
* ```
|
|
202
|
+
*/
|
|
203
|
+
off: <EventName extends keyof TMappedinMapLibreOverlayEvents>(eventName: EventName, fn: (payload: TMappedinMapLibreOverlayEvents[EventName] extends {
|
|
204
|
+
data: null;
|
|
205
|
+
} ? TMappedinMapLibreOverlayEvents[EventName]["data"] : TMappedinMapLibreOverlayEvents[EventName]) => void) => void;
|
|
206
|
+
}
|
|
207
|
+
}
|
|
208
|
+
|