@mappedin/react-sdk 6.0.1-beta.43 → 6.0.1-beta.44

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.
Files changed (32) hide show
  1. package/THIRD_PARTY_LICENSES.txt +5675 -2451
  2. package/lib/esm/{GLTFExporter-BQXFQJSX.js → GLTFExporter-XQVCTG6M.js} +1 -1
  3. package/lib/esm/{GLTFLoader-ZRVC7DGN.js → GLTFLoader-TYL77RHE.js} +1 -1
  4. package/lib/esm/{browser-OJO26JZN.js → browser-STB2T6NP.js} +1 -1
  5. package/lib/esm/{chunk-DOOA5SBB.js → chunk-2DFVQLLS.js} +1 -1
  6. package/lib/esm/chunk-2OY65JNC.js +1 -0
  7. package/lib/esm/chunk-MOOEGGRP.js +1 -0
  8. package/lib/esm/chunk-MZY3INHN.js +1 -0
  9. package/lib/esm/chunk-VMPZPJW5.js +1 -0
  10. package/lib/esm/{chunk-VTOSGJTF.js → chunk-VPFGFRS7.js} +1 -1
  11. package/lib/esm/chunk-WULPIMBT.js +1 -0
  12. package/lib/esm/index.css +1 -1
  13. package/lib/esm/index.d.ts +1977 -730
  14. package/lib/esm/index.js +1 -1
  15. package/lib/esm/inspector-GOK26VAV.css +1 -0
  16. package/lib/esm/{inspector-6H6BRSQJ.js → inspector-KUSKAK43.js} +1 -1
  17. package/lib/esm/internal-7A3UJNAV.css +1 -0
  18. package/lib/esm/{internal-G2KM3BR4.js → internal-BKHYFNI6.js} +1 -1
  19. package/lib/esm/outdoor-context-v4-YNWNY6XZ.js +1 -0
  20. package/lib/esm/{roboto-regular-E5TUWU5Q.js → roboto-regular-B567NWMQ.js} +1 -1
  21. package/lib/esm/text3d-2NDOCPEF.js +1 -0
  22. package/package.json +2 -2
  23. package/lib/esm/chunk-BVQ2DBMP.js +0 -1
  24. package/lib/esm/chunk-BYMKRV3A.js +0 -1
  25. package/lib/esm/chunk-OPU32TFR.js +0 -1
  26. package/lib/esm/chunk-RV2X5GSW.js +0 -1
  27. package/lib/esm/chunk-WMO54VQZ.js +0 -1
  28. package/lib/esm/inspector-D2RCHDOY.css +0 -1
  29. package/lib/esm/internal-55777EMI.css +0 -1
  30. package/lib/esm/outdoor-context-v4-7M4OICNB.js +0 -1
  31. package/lib/esm/text3d-CTCEJGTL.js +0 -1
  32. package/lib/esm/text3d-Q7FFP3YS.css +0 -1
package/lib/esm/index.js CHANGED
@@ -1 +1 @@
1
- import{i as E,j as V,k}from"./chunk-WMO54VQZ.js";import{c as x,n as A}from"./chunk-OPU32TFR.js";import"./chunk-RV2X5GSW.js";import"./chunk-VTOSGJTF.js";import"./chunk-DOOA5SBB.js";import{a}from"./chunk-BVQ2DBMP.js";import{a as n}from"./chunk-BYMKRV3A.js";a();a();import Y,{useCallback as $,useMemo as q}from"react";import{useContext as C,useEffect as T,useRef as S,useState as D}from"react";import{createPortal as B}from"react-dom";a();import{createContext as z,useContext as F}from"react";a();var L=class L extends Error{constructor(t){super("".concat(t," must be used within a MapView component."))}};n(L,"MapViewNullError");var m=L;var p=z({mapData:void 0,mapView:void 0});function G(){let{mapData:e,mapView:t}=F(p);if(!e||!t)throw new m("useMap");return{mapData:e,mapView:t}}n(G,"useMap");a();import{useEffect as U}from"react";function u(e,t){U(()=>{t!=null&&typeof e=="function"&&e(t)},[e,t])}n(u,"useOnLoad");function O(e){let{mapView:t}=C(p),r=S(),[o,i]=D(null);return T(()=>{if(t==null)throw new m("Marker");return r.current=t.Markers.add(e.target,"",{...e.options,dynamicResize:!0}),i(r.current),()=>{t==null||r.current==null||t.Markers.remove(r.current)}},[t,e.target]),T(()=>{o&&(t==null||t.updateState(o,{...e.options}))},[e.options]),u(e.onLoad,o),t==null||o==null?null:B(e.children,o.contentEl,o.id)}n(O,"Marker");function J(e){let{mapView:t}=C(p),[r,o]=D(null),i=S(A()),l=S(e.target),f=$(s=>{var M;o(s),(M=e.onLoad)==null||M.call(e,s)},[e.onLoad]);T(()=>{if(t==null)throw new m("Marker");if(r&&r.target!==e.target){let{duration:s=300,easing:M="linear"}=e;t.Markers.animateTo(r,e.target,{duration:s,easing:M})}},[t,e.target,r]);let c=q(()=>({...e,duration:void 0,easing:void 0}),[e.duration,e.easing]);return Y.createElement(O,{...c,key:i.current,target:l.current,onLoad:f})}n(J,"AnimatedMarker");a();import{useContext as K,useEffect as R,useRef as Q,useState as X}from"react";function Z(e){let{mapView:t}=K(p),r=Q(),[o,i]=X(void 0);return R(()=>{if(t==null)throw new m("Label");return r.current=t.Labels.add(e.target,e.text,e.options),i(r.current),()=>{t==null||r.current==null||t.Labels.remove(r.current)}},[t,e.target]),R(()=>{r.current&&(t==null||t.updateState(r.current,{text:e.text,...e.options}))},[e.text,e.options]),u(e.onLoad,o),null}n(Z,"Label");a();import{useCallback as _,useContext as ee,useEffect as te}from"react";function re(e,t){let{mapView:r}=ee(p),o=_(i=>t(i),[t]);te(()=>{if(r==null)throw new m("useEvent");return r.on(e,o),()=>{r!=null&&r.off(e,o)}},[r,e,t])}n(re,"useEvent");a();import{useContext as ae,useEffect as oe,useRef as ne,useState as ie}from"react";function pe(e){let{mapView:t}=ae(p),r=ne(),[o,i]=ie(void 0);return oe(()=>{if(t==null)throw new m("Path");let l=t.Paths.add(e.coordinate,e.options);return l.animation.then(()=>{var f;(f=e.onDrawComplete)==null||f.call(e)}),i(l),r.current=l,()=>{r.current&&t.Paths.remove(r.current)}},[t,e.coordinate,e.options]),u(e.onLoad,o),null}n(pe,"Path");a();import w,{useCallback as me,useEffect as ue,useMemo as de,useRef as j,useState as W}from"react";var se={width:"100%",height:"100%",position:"relative"};function le(e){let{mapData:t,options:r,style:o,fallback:i,children:l,...f}=e,c=j(!1),[s,M]=W(void 0),[h,P]=W(!0),y=j(null),b=de(()=>r,[]),v=me(()=>{if(t&&(y!=null&&y.current)){if(s)return;V(y.current,t,b).then(g=>{M(g)}).catch(g=>{x.error("Failed to render MapView",g)}).finally(()=>{P(!1)})}},[t,y.current,b]);return ue(()=>{c.current||(c.current=!0,v())},[v]),u(e.onLoad,s),w.createElement(p.Provider,{value:{mapData:t,mapView:s}},w.createElement("div",{"data-testid":"mappedin-map",ref:y,style:{...se,...o},...f}),h?w.createElement(w.Fragment,null,i):l)}n(le,"MapView");a();import{useContext as fe,useEffect as H,useState as ce}from"react";function Me(e){let{mapView:t}=fe(p),[r,o]=ce(!1);return H(()=>{if(t==null)throw new m("Navigation");return t.Navigation.draw(e.directions,e.options).then(()=>{var i;o(!0),(i=e.onDrawComplete)==null||i.call(e)}),()=>{t.Navigation.clear()}},[t,e.directions,e.options]),H(()=>{r!==!1&&typeof e.onLoad=="function"&&e.onLoad()},[e.onLoad,r]),null}n(Me,"Navigation");a();import{useContext as Pe,useEffect as ye,useRef as he,useState as xe}from"react";function we(e){let{mapView:t}=Pe(p),r=he(),[o,i]=xe(void 0);return ye(()=>{if(t==null)throw new Error("MapView not initialized");return r.current=t.Shapes.add(e.geometry,e.style,e.floor),i(r.current),()=>{t==null||r.current==null||t.Shapes.remove(r.current)}},[t,e.geometry,e.style,e.floor]),u(e.onLoad,o),null}n(we,"Shape");a();import{useContext as ge,useEffect as I,useRef as Le,useState as Te}from"react";function Se(e){let{mapView:t}=ge(p),r=Le(),[o,i]=Te(void 0);return I(()=>{if(t==null)throw new m("Model");return r.current=t.Models.add(e.target,e.url,e.options),i(r.current),()=>{t==null||r.current==null||t.Models.remove(r.current)}},[t,e.url]),I(()=>{r.current&&(t==null||t.updateState(r.current,{position:e.target,...e.options}))},[e.options,e.target]),u(e.onLoad,o),null}n(Se,"Model");a();import{useCallback as Ne,useEffect as be,useMemo as ve,useRef as Ae,useState as N}from"react";function Ee(e){let[t,r]=N(void 0),[o,i]=N(!0),[l,f]=N(void 0),c=Ae(0),s=ve(()=>e,[]),M=Ne(()=>{let h=++c.current;i(!0),f(void 0),E(s).then(P=>{c.current===h&&r(P)}).catch(P=>{c.current===h&&(x.error("Failed to fetch MapData",P),f(P))}).finally(()=>{c.current===h&&i(!1)})},[s]);return be(()=>{M()},[M]),{mapData:t,isLoading:o,error:l}}n(Ee,"useMapData");var Xt=k;export{J as AnimatedMarker,Z as Label,le as MapView,O as Marker,Se as Model,Me as Navigation,pe as Path,we as Shape,Xt as default,re as useEvent,G as useMap,Ee as useMapData};
1
+ import{k as E,l as V,m as k}from"./chunk-MOOEGGRP.js";import{d as x,q as A}from"./chunk-MZY3INHN.js";import"./chunk-WULPIMBT.js";import"./chunk-VPFGFRS7.js";import"./chunk-2DFVQLLS.js";import{a}from"./chunk-VMPZPJW5.js";import{a as n}from"./chunk-2OY65JNC.js";a();a();import Y,{useCallback as $,useMemo as q}from"react";import{useContext as C,useEffect as T,useRef as S,useState as D}from"react";import{createPortal as B}from"react-dom";a();import{createContext as z,useContext as F}from"react";a();var L=class L extends Error{constructor(t){super("".concat(t," must be used within a MapView component."))}};n(L,"MapViewNullError");var m=L;var p=z({mapData:void 0,mapView:void 0});function G(){let{mapData:e,mapView:t}=F(p);if(!e||!t)throw new m("useMap");return{mapData:e,mapView:t}}n(G,"useMap");a();import{useEffect as U}from"react";function u(e,t){U(()=>{t!=null&&typeof e=="function"&&e(t)},[e,t])}n(u,"useOnLoad");function O(e){let{mapView:t}=C(p),r=S(),[o,i]=D(null);return T(()=>{if(t==null)throw new m("Marker");return r.current=t.Markers.add(e.target,"",{...e.options,dynamicResize:!0}),i(r.current),()=>{t==null||r.current==null||t.Markers.remove(r.current)}},[t,e.target]),T(()=>{o&&(t==null||t.updateState(o,{...e.options}))},[e.options]),u(e.onLoad,o),t==null||o==null?null:B(e.children,o.contentEl,o.id)}n(O,"Marker");function J(e){let{mapView:t}=C(p),[r,o]=D(null),i=S(A()),l=S(e.target),f=$(d=>{var M;o(d),(M=e.onLoad)==null||M.call(e,d)},[e.onLoad]);T(()=>{if(t==null)throw new m("Marker");if(r&&r.target!==e.target){let{duration:d=300,easing:M="linear"}=e;t.Markers.animateTo(r,e.target,{duration:d,easing:M})}},[t,e.target,r]);let c=q(()=>({...e,duration:void 0,easing:void 0}),[e.duration,e.easing]);return Y.createElement(O,{...c,key:i.current,target:l.current,onLoad:f})}n(J,"AnimatedMarker");a();import{useContext as K,useEffect as R,useRef as Q,useState as X}from"react";function Z(e){let{mapView:t}=K(p),r=Q(),[o,i]=X(void 0);return R(()=>{if(t==null)throw new m("Label");return r.current=t.Labels.add(e.target,e.text,e.options),i(r.current),()=>{t==null||r.current==null||t.Labels.remove(r.current)}},[t,e.target]),R(()=>{r.current&&(t==null||t.updateState(r.current,{text:e.text,...e.options}))},[e.text,e.options]),u(e.onLoad,o),null}n(Z,"Label");a();import{useCallback as _,useContext as ee,useEffect as te}from"react";function re(e,t){let{mapView:r}=ee(p),o=_(i=>t(i),[t]);te(()=>{if(r==null)throw new m("useEvent");return r.on(e,o),()=>{r!=null&&r.off(e,o)}},[r,e,t])}n(re,"useEvent");a();import{useContext as ae,useEffect as oe,useRef as ne,useState as ie}from"react";function pe(e){let{mapView:t}=ae(p),r=ne(),[o,i]=ie(void 0);return oe(()=>{if(t==null)throw new m("Path");let l=t.Paths.add(e.coordinate,e.options);return l.animation.then(()=>{var f;(f=e.onDrawComplete)==null||f.call(e)}),i(l),r.current=l,()=>{r.current&&t.Paths.remove(r.current)}},[t,e.coordinate,e.options]),u(e.onLoad,o),null}n(pe,"Path");a();import w,{useCallback as me,useEffect as ue,useMemo as se,useRef as j,useState as W}from"react";var de={width:"100%",height:"100%",position:"relative"};function le(e){let{mapData:t,options:r,style:o,fallback:i,children:l,...f}=e,c=j(!1),[d,M]=W(void 0),[h,P]=W(!0),y=j(null),b=se(()=>r,[]),v=me(()=>{if(t&&(y!=null&&y.current)){if(d)return;V(y.current,t,b).then(g=>{M(g)}).catch(g=>{x.error("Failed to render MapView",g)}).finally(()=>{P(!1)})}},[t,y.current,b]);return ue(()=>{c.current||(c.current=!0,v())},[v]),u(e.onLoad,d),w.createElement(p.Provider,{value:{mapData:t,mapView:d}},w.createElement("div",{"data-testid":"mappedin-map",ref:y,style:{...de,...o},...f}),h?w.createElement(w.Fragment,null,i):l)}n(le,"MapView");a();import{useContext as fe,useEffect as H,useState as ce}from"react";function Me(e){let{mapView:t}=fe(p),[r,o]=ce(!1);return H(()=>{if(t==null)throw new m("Navigation");return t.Navigation.draw(e.directions,e.options).then(()=>{var i;o(!0),(i=e.onDrawComplete)==null||i.call(e)}),()=>{t.Navigation.clear()}},[t,e.directions,e.options]),H(()=>{r!==!1&&typeof e.onLoad=="function"&&e.onLoad()},[e.onLoad,r]),null}n(Me,"Navigation");a();import{useContext as Pe,useEffect as ye,useRef as he,useState as xe}from"react";function we(e){let{mapView:t}=Pe(p),r=he(),[o,i]=xe(void 0);return ye(()=>{if(t==null)throw new Error("MapView not initialized");return r.current=t.Shapes.add(e.geometry,e.style,e.floor),i(r.current),()=>{t==null||r.current==null||t.Shapes.remove(r.current)}},[t,e.geometry,e.style,e.floor]),u(e.onLoad,o),null}n(we,"Shape");a();import{useContext as ge,useEffect as I,useRef as Le,useState as Te}from"react";function Se(e){let{mapView:t}=ge(p),r=Le(),[o,i]=Te(void 0);return I(()=>{if(t==null)throw new m("Model");return r.current=t.Models.add(e.target,e.url,e.options),i(r.current),()=>{t==null||r.current==null||t.Models.remove(r.current)}},[t,e.url]),I(()=>{r.current&&(t==null||t.updateState(r.current,{position:e.target,...e.options}))},[e.options,e.target]),u(e.onLoad,o),null}n(Se,"Model");a();import{useCallback as Ne,useEffect as be,useMemo as ve,useRef as Ae,useState as N}from"react";function Ee(e){let[t,r]=N(void 0),[o,i]=N(!0),[l,f]=N(void 0),c=Ae(0),d=ve(()=>e,[]),M=Ne(()=>{let h=++c.current;i(!0),f(void 0),E(d).then(P=>{c.current===h&&r(P)}).catch(P=>{c.current===h&&(x.error("Failed to fetch MapData",P),f(P))}).finally(()=>{c.current===h&&i(!1)})},[d]);return be(()=>{M()},[M]),{mapData:t,isLoading:o,error:l}}n(Ee,"useMapData");var Xt=k;export{J as AnimatedMarker,Z as Label,le as MapView,O as Marker,Se as Model,Me as Navigation,pe as Path,we as Shape,Xt as default,re as useEvent,G as useMap,Ee as useMapData};
@@ -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}.mappedin-map .mappedin-interactive{cursor:grab}.mappedin-map .mappedin-interactive:active{cursor:grabbing}.mappedin-map .mappedin-interactive.mappedin-interaction-hover{cursor:pointer}.mappedin-marker{font-family:InterUI-Regular,Helvetica,Arial,sans-serif;font-weight:400;top:0;transition:transform .3s linear;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-anchor=low-priority-pin]{font-size:0;line-height:0}.mappedin-marker[data-anchor=low-priority-pin]>*{visibility:hidden}.mappedin-marker[data-anchor=low-priority-pin]:before{content:"";display:block;border-radius:50%;position:relative;width:var(--mappedin-pin-size, 2px);height:var(--mappedin-pin-size, 2px);background-color:var(--pin-color, #666)}.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}.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;-moz-user-select:none;-webkit-user-select:none;-ms-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 (-ms-high-contrast: 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 (-ms-high-contrast: 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}.maplibregl-ctrl button:not(:disabled):hover{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 (-ms-high-contrast: 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 (-ms-high-contrast: black-on-white){.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 (-ms-high-contrast: 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 (-ms-high-contrast: black-on-white){.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 (-ms-high-contrast: 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 (-ms-high-contrast: black-on-white){.maplibregl-ctrl button.maplibregl-ctrl-compass .maplibregl-ctrl-icon{background-image:svg-load("svg/maplibregl-ctrl-compass.svg",fill: #000)}}@svg-load ctrl-terrain url(svg/maplibregl-ctrl-terrain.svg){fill: #333; #stroke {display: none;}}@svg-load ctrl-terrain-enabled url(svg/maplibregl-ctrl-terrain.svg){fill: #33b5e5; #stroke {display: none;}}.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 (-ms-high-contrast: 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 (-ms-high-contrast: black-on-white){.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 (-ms-high-contrast: 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 (-ms-high-contrast: black-on-white){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:#ffffff7f;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:#ffffff7f;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 (-ms-high-contrast: active){.maplibregl-ctrl-attrib.maplibregl-compact:after{background-image:svg-load("svg/maplibregl-ctrl-attrib.svg",fill=#fff)}}@media screen and (-ms-high-contrast: black-on-white){.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),(width <= 480px){.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}:root{--pin-shadow-hover-scale: .9;--pin-shadow-width: 12px;--pin-shadow-height: 5px;--pin-shadow-opacity: .35;--pin-drop-animation-duration-ms: .25s}@keyframes drop-pin{0%{transform:translateY(-200%)}to{transform:translateY(0)}}@keyframes pin-shadow{0%{transform:scale(var(--pin-shadow-hover-scale))}to{transform:scale(1)}}.mappedin-dropped-pin-wrapper{position:relative;width:fit-content;height:fit-content;width:36px;height:42px}.mappedin-dropped-pin-wrapper svg{position:absolute;left:calc(50% - var(--pin-shadow-width));animation:drop-pin var(--pin-drop-animation-duration-ms) ease-in}.mappedin-dropped-pin-wrapper>.pin-shadow{position:absolute;left:calc(50% - var(--pin-shadow-width) / 2);bottom:0;height:var(--pin-shadow-height);width:var(--pin-shadow-width);border-radius:100%;opacity:var(--pin-shadow-opacity);animation:pin-shadow .25s ease-in}@keyframes bounce{0%{transform:translateY(-10px);opacity:0}12.5%{transform:translateY(0);opacity:1}25%{transform:translateY(0)}37.5%{transform:translateY(-10px)}50%{transform:translateY(0)}62.5%{transform:translateY(-10px)}75%{transform:translateY(0)}87.5%{transform:translateY(-10px)}to{transform:translateY(0)}}.mappedin-connection-marker{position:relative;display:flex}.mappedin-connection-marker .bouncey{animation:bounce 2.5s linear}.mappedin-connection-marker .arrow--down{transform:rotate(180deg)}.mappedin-connection-marker .connection-circle{display:flex;box-sizing:border-box;justify-content:center;align-items:center;border-radius:50%;border:2px solid white;box-shadow:0 2px 8px #00000026;background:#595959}.mappedin-js-inspector .list-items{max-height:600px;overflow-y:scroll;scroll-behavior:smooth}.mappedin-js-inspector .children:focus{border:1px solid blue}.mappedin-js-inspector #interactionPanel{position:absolute;right:0}.mappedin-js-inspector #mainPanel{position:absolute;left:0}.mappedin-js-inspector .title{white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
@@ -1 +1 @@
1
- import{a as Me,c as J,f as P,g as W,h as Ee}from"./chunk-WMO54VQZ.js";import{o as U}from"./chunk-OPU32TFR.js";import"./chunk-RV2X5GSW.js";import"./chunk-VTOSGJTF.js";import{S as ke}from"./chunk-DOOA5SBB.js";import{a as C}from"./chunk-BVQ2DBMP.js";import{a as n,f as T,g as x,h as D,i as Ae,j as B}from"./chunk-BYMKRV3A.js";C();C();C();C();var z=class z{constructor(e,o,t,r,a="div"){this.parent=e,this.object=o,this.property=t,this._disabled=!1,this._hidden=!1,this.initialValue=this.getValue(),this.domElement=document.createElement(a),this.domElement.classList.add("controller"),this.domElement.classList.add(r),this.$name=document.createElement("div"),this.$name.classList.add("name"),z.nextNameID=z.nextNameID||0,this.$name.id="lil-gui-name-".concat(++z.nextNameID),this.$widget=document.createElement("div"),this.$widget.classList.add("widget"),this.$disable=this.$widget,this.domElement.appendChild(this.$name),this.domElement.appendChild(this.$widget),this.domElement.addEventListener("keydown",s=>s.stopPropagation()),this.domElement.addEventListener("keyup",s=>s.stopPropagation()),this.parent.children.push(this),this.parent.controllers.push(this),this.parent.$children.appendChild(this.domElement),this._listenCallback=this._listenCallback.bind(this),this.name(t)}name(e){return this._name=e,this.$name.textContent=e,this}onChange(e){return this._onChange=e,this}_callOnChange(){this.parent._callOnChange(this),this._onChange!==void 0&&this._onChange.call(this,this.getValue()),this._changed=!0}onFinishChange(e){return this._onFinishChange=e,this}_callOnFinishChange(){this._changed&&(this.parent._callOnFinishChange(this),this._onFinishChange!==void 0&&this._onFinishChange.call(this,this.getValue())),this._changed=!1}reset(){return this.setValue(this.initialValue),this._callOnFinishChange(),this}enable(e=!0){return this.disable(!e)}disable(e=!0){return e===this._disabled?this:(this._disabled=e,this.domElement.classList.toggle("disabled",e),this.$disable.toggleAttribute("disabled",e),this)}show(e=!0){return this._hidden=!e,this.domElement.style.display=this._hidden?"none":"",this}hide(){return this.show(!1)}options(e){let o=this.parent.add(this.object,this.property,e);return o.name(this._name),this.destroy(),o}min(e){return this}max(e){return this}step(e){return this}decimals(e){return this}listen(e=!0){return this._listening=e,this._listenCallbackID!==void 0&&(cancelAnimationFrame(this._listenCallbackID),this._listenCallbackID=void 0),this._listening&&this._listenCallback(),this}_listenCallback(){this._listenCallbackID=requestAnimationFrame(this._listenCallback);let e=this.save();e!==this._listenPrevValue&&this.updateDisplay(),this._listenPrevValue=e}getValue(){return this.object[this.property]}setValue(e){return this.getValue()!==e&&(this.object[this.property]=e,this._callOnChange(),this.updateDisplay()),this}updateDisplay(){return this}load(e){return this.setValue(e),this._callOnFinishChange(),this}save(){return this.getValue()}destroy(){this.listen(!1),this.parent.children.splice(this.parent.children.indexOf(this),1),this.parent.controllers.splice(this.parent.controllers.indexOf(this),1),this.parent.$children.removeChild(this.domElement)}};n(z,"Controller");var L=z,re=class re extends L{constructor(e,o,t){super(e,o,t,"boolean","label"),this.$input=document.createElement("input"),this.$input.setAttribute("type","checkbox"),this.$input.setAttribute("aria-labelledby",this.$name.id),this.$widget.appendChild(this.$input),this.$input.addEventListener("change",()=>{this.setValue(this.$input.checked),this._callOnFinishChange()}),this.$disable=this.$input,this.updateDisplay()}updateDisplay(){return this.$input.checked=this.getValue(),this}};n(re,"BooleanController");var V=re;function ee(i){let e,o;return(e=i.match(/(#|0x)?([a-f0-9]{6})/i))?o=e[2]:(e=i.match(/rgb\(\s*(\d*)\s*,\s*(\d*)\s*,\s*(\d*)\s*\)/))?o=parseInt(e[1]).toString(16).padStart(2,0)+parseInt(e[2]).toString(16).padStart(2,0)+parseInt(e[3]).toString(16).padStart(2,0):(e=i.match(/^#?([a-f0-9])([a-f0-9])([a-f0-9])$/i))&&(o=e[1]+e[1]+e[2]+e[2]+e[3]+e[3]),o?"#"+o:!1}n(ee,"normalizeColorString");var Je={isPrimitive:!0,match:n(i=>typeof i=="string","match"),fromHexString:ee,toHexString:ee},j={isPrimitive:!0,match:n(i=>typeof i=="number","match"),fromHexString:n(i=>parseInt(i.substring(1),16),"fromHexString"),toHexString:n(i=>"#"+i.toString(16).padStart(6,0),"toHexString")},We={isPrimitive:!1,match:n(i=>Array.isArray(i),"match"),fromHexString(i,e,o=1){let t=j.fromHexString(i);e[0]=(t>>16&255)/255*o,e[1]=(t>>8&255)/255*o,e[2]=(t&255)/255*o},toHexString([i,e,o],t=1){t=255/t;let r=i*t<<16^e*t<<8^o*t<<0;return j.toHexString(r)}},Xe={isPrimitive:!1,match:n(i=>Object(i)===i,"match"),fromHexString(i,e,o=1){let t=j.fromHexString(i);e.r=(t>>16&255)/255*o,e.g=(t>>8&255)/255*o,e.b=(t&255)/255*o},toHexString({r:i,g:e,b:o},t=1){t=255/t;let r=i*t<<16^e*t<<8^o*t<<0;return j.toHexString(r)}},Ke=[Je,j,We,Xe];function Ze(i){return Ke.find(e=>e.match(i))}n(Ze,"getColorFormat");var se=class se extends L{constructor(e,o,t,r){super(e,o,t,"color"),this.$input=document.createElement("input"),this.$input.setAttribute("type","color"),this.$input.setAttribute("tabindex",-1),this.$input.setAttribute("aria-labelledby",this.$name.id),this.$text=document.createElement("input"),this.$text.setAttribute("type","text"),this.$text.setAttribute("spellcheck","false"),this.$text.setAttribute("aria-labelledby",this.$name.id),this.$display=document.createElement("div"),this.$display.classList.add("display"),this.$display.appendChild(this.$input),this.$widget.appendChild(this.$display),this.$widget.appendChild(this.$text),this._format=Ze(this.initialValue),this._rgbScale=r,this._initialValueHexString=this.save(),this._textFocused=!1,this.$input.addEventListener("input",()=>{this._setValueFromHexString(this.$input.value)}),this.$input.addEventListener("blur",()=>{this._callOnFinishChange()}),this.$text.addEventListener("input",()=>{let a=ee(this.$text.value);a&&this._setValueFromHexString(a)}),this.$text.addEventListener("focus",()=>{this._textFocused=!0,this.$text.select()}),this.$text.addEventListener("blur",()=>{this._textFocused=!1,this.updateDisplay(),this._callOnFinishChange()}),this.$disable=this.$text,this.updateDisplay()}reset(){return this._setValueFromHexString(this._initialValueHexString),this}_setValueFromHexString(e){if(this._format.isPrimitive){let o=this._format.fromHexString(e);this.setValue(o)}else this._format.fromHexString(e,this.getValue(),this._rgbScale),this._callOnChange(),this.updateDisplay()}save(){return this._format.toHexString(this.getValue(),this._rgbScale)}load(e){return this._setValueFromHexString(e),this._callOnFinishChange(),this}updateDisplay(){return this.$input.value=this._format.toHexString(this.getValue(),this._rgbScale),this._textFocused||(this.$text.value=this.$input.value.substring(1)),this.$display.style.backgroundColor=this.$input.value,this}};n(se,"ColorController");var te=se,ae=class ae extends L{constructor(e,o,t){super(e,o,t,"function"),this.$button=document.createElement("button"),this.$button.appendChild(this.$name),this.$widget.appendChild(this.$button),this.$button.addEventListener("click",r=>{r.preventDefault(),this.getValue().call(this.object),this._callOnChange()}),this.$button.addEventListener("touchstart",()=>{},{passive:!0}),this.$disable=this.$button}};n(ae,"FunctionController");var H=ae,le=class le extends L{constructor(e,o,t,r,a,s){super(e,o,t,"number"),this._initInput(),this.min(r),this.max(a);let l=s!==void 0;this.step(l?s:this._getImplicitStep(),l),this.updateDisplay()}decimals(e){return this._decimals=e,this.updateDisplay(),this}min(e){return this._min=e,this._onUpdateMinMax(),this}max(e){return this._max=e,this._onUpdateMinMax(),this}step(e,o=!0){return this._step=e,this._stepExplicit=o,this}updateDisplay(){let e=this.getValue();if(this._hasSlider){let o=(e-this._min)/(this._max-this._min);o=Math.max(0,Math.min(o,1)),this.$fill.style.width=o*100+"%"}return this._inputFocused||(this.$input.value=this._decimals===void 0?e:e.toFixed(this._decimals)),this}_initInput(){this.$input=document.createElement("input"),this.$input.setAttribute("type","text"),this.$input.setAttribute("aria-labelledby",this.$name.id),window.matchMedia("(pointer: coarse)").matches&&(this.$input.setAttribute("type","number"),this.$input.setAttribute("step","any")),this.$widget.appendChild(this.$input),this.$disable=this.$input;let o=n(()=>{let v=parseFloat(this.$input.value);isNaN(v)||(this._stepExplicit&&(v=this._snap(v)),this.setValue(this._clamp(v)))},"onInput"),t=n(v=>{let k=parseFloat(this.$input.value);isNaN(k)||(this._snapClampSetValue(k+v),this.$input.value=this.getValue())},"increment"),r=n(v=>{v.key==="Enter"&&this.$input.blur(),v.code==="ArrowUp"&&(v.preventDefault(),t(this._step*this._arrowKeyMultiplier(v))),v.code==="ArrowDown"&&(v.preventDefault(),t(this._step*this._arrowKeyMultiplier(v)*-1))},"onKeyDown"),a=n(v=>{this._inputFocused&&(v.preventDefault(),t(this._step*this._normalizeMouseWheel(v)))},"onWheel"),s=!1,l,d,g,h,p,f=5,c=n(v=>{l=v.clientX,d=g=v.clientY,s=!0,h=this.getValue(),p=0,window.addEventListener("mousemove",u),window.addEventListener("mouseup",b)},"onMouseDown"),u=n(v=>{if(s){let k=v.clientX-l,O=v.clientY-d;Math.abs(O)>f?(v.preventDefault(),this.$input.blur(),s=!1,this._setDraggingStyle(!0,"vertical")):Math.abs(k)>f&&b()}if(!s){let k=v.clientY-g;p-=k*this._step*this._arrowKeyMultiplier(v),h+p>this._max?p=this._max-h:h+p<this._min&&(p=this._min-h),this._snapClampSetValue(h+p)}g=v.clientY},"onMouseMove"),b=n(()=>{this._setDraggingStyle(!1,"vertical"),this._callOnFinishChange(),window.removeEventListener("mousemove",u),window.removeEventListener("mouseup",b)},"onMouseUp"),y=n(()=>{this._inputFocused=!0},"onFocus"),m=n(()=>{this._inputFocused=!1,this.updateDisplay(),this._callOnFinishChange()},"onBlur");this.$input.addEventListener("input",o),this.$input.addEventListener("keydown",r),this.$input.addEventListener("wheel",a,{passive:!1}),this.$input.addEventListener("mousedown",c),this.$input.addEventListener("focus",y),this.$input.addEventListener("blur",m)}_initSlider(){this._hasSlider=!0,this.$slider=document.createElement("div"),this.$slider.classList.add("slider"),this.$fill=document.createElement("div"),this.$fill.classList.add("fill"),this.$slider.appendChild(this.$fill),this.$widget.insertBefore(this.$slider,this.$input),this.domElement.classList.add("hasSlider");let e=n((m,v,k,O,R)=>(m-v)/(k-v)*(R-O)+O,"map"),o=n(m=>{let v=this.$slider.getBoundingClientRect(),k=e(m,v.left,v.right,this._min,this._max);this._snapClampSetValue(k)},"setValueFromX"),t=n(m=>{this._setDraggingStyle(!0),o(m.clientX),window.addEventListener("mousemove",r),window.addEventListener("mouseup",a)},"mouseDown"),r=n(m=>{o(m.clientX)},"mouseMove"),a=n(()=>{this._callOnFinishChange(),this._setDraggingStyle(!1),window.removeEventListener("mousemove",r),window.removeEventListener("mouseup",a)},"mouseUp"),s=!1,l,d,g=n(m=>{m.preventDefault(),this._setDraggingStyle(!0),o(m.touches[0].clientX),s=!1},"beginTouchDrag"),h=n(m=>{m.touches.length>1||(this._hasScrollBar?(l=m.touches[0].clientX,d=m.touches[0].clientY,s=!0):g(m),window.addEventListener("touchmove",p,{passive:!1}),window.addEventListener("touchend",f))},"onTouchStart"),p=n(m=>{if(s){let v=m.touches[0].clientX-l,k=m.touches[0].clientY-d;Math.abs(v)>Math.abs(k)?g(m):(window.removeEventListener("touchmove",p),window.removeEventListener("touchend",f))}else m.preventDefault(),o(m.touches[0].clientX)},"onTouchMove"),f=n(()=>{this._callOnFinishChange(),this._setDraggingStyle(!1),window.removeEventListener("touchmove",p),window.removeEventListener("touchend",f)},"onTouchEnd"),c=this._callOnFinishChange.bind(this),u=400,b,y=n(m=>{if(Math.abs(m.deltaX)<Math.abs(m.deltaY)&&this._hasScrollBar)return;m.preventDefault();let k=this._normalizeMouseWheel(m)*this._step;this._snapClampSetValue(this.getValue()+k),this.$input.value=this.getValue(),clearTimeout(b),b=setTimeout(c,u)},"onWheel");this.$slider.addEventListener("mousedown",t),this.$slider.addEventListener("touchstart",h,{passive:!1}),this.$slider.addEventListener("wheel",y,{passive:!1})}_setDraggingStyle(e,o="horizontal"){this.$slider&&this.$slider.classList.toggle("active",e),document.body.classList.toggle("lil-gui-dragging",e),document.body.classList.toggle("lil-gui-".concat(o),e)}_getImplicitStep(){return this._hasMin&&this._hasMax?(this._max-this._min)/1e3:.1}_onUpdateMinMax(){!this._hasSlider&&this._hasMin&&this._hasMax&&(this._stepExplicit||this.step(this._getImplicitStep(),!1),this._initSlider(),this.updateDisplay())}_normalizeMouseWheel(e){let{deltaX:o,deltaY:t}=e;return Math.floor(e.deltaY)!==e.deltaY&&e.wheelDelta&&(o=0,t=-e.wheelDelta/120,t*=this._stepExplicit?1:10),o+-t}_arrowKeyMultiplier(e){let o=this._stepExplicit?1:10;return e.shiftKey?o*=10:e.altKey&&(o/=10),o}_snap(e){let o=Math.round(e/this._step)*this._step;return parseFloat(o.toPrecision(15))}_clamp(e){return e<this._min&&(e=this._min),e>this._max&&(e=this._max),e}_snapClampSetValue(e){this.setValue(this._clamp(this._snap(e)))}get _hasScrollBar(){let e=this.parent.root.$children;return e.scrollHeight>e.clientHeight}get _hasMin(){return this._min!==void 0}get _hasMax(){return this._max!==void 0}};n(le,"NumberController");var ie=le,de=class de extends L{constructor(e,o,t,r){super(e,o,t,"option"),this.$select=document.createElement("select"),this.$select.setAttribute("aria-labelledby",this.$name.id),this.$display=document.createElement("div"),this.$display.classList.add("display"),this.$select.addEventListener("change",()=>{this.setValue(this._values[this.$select.selectedIndex]),this._callOnFinishChange()}),this.$select.addEventListener("focus",()=>{this.$display.classList.add("focus")}),this.$select.addEventListener("blur",()=>{this.$display.classList.remove("focus")}),this.$widget.appendChild(this.$select),this.$widget.appendChild(this.$display),this.$disable=this.$select,this.options(r)}options(e){return this._values=Array.isArray(e)?e:Object.values(e),this._names=Array.isArray(e)?e:Object.keys(e),this.$select.replaceChildren(),this._names.forEach(o=>{let t=document.createElement("option");t.textContent=o,this.$select.appendChild(t)}),this.updateDisplay(),this}updateDisplay(){let e=this.getValue(),o=this._values.indexOf(e);return this.$select.selectedIndex=o,this.$display.textContent=o===-1?e:this._names[o],this}};n(de,"OptionController");var oe=de,ce=class ce extends L{constructor(e,o,t){super(e,o,t,"string"),this.$input=document.createElement("input"),this.$input.setAttribute("type","text"),this.$input.setAttribute("spellcheck","false"),this.$input.setAttribute("aria-labelledby",this.$name.id),this.$input.addEventListener("input",()=>{this.setValue(this.$input.value)}),this.$input.addEventListener("keydown",r=>{r.code==="Enter"&&this.$input.blur()}),this.$input.addEventListener("blur",()=>{this._callOnFinishChange()}),this.$widget.appendChild(this.$input),this.$disable=this.$input,this.updateDisplay()}updateDisplay(){return this.$input.value=this.getValue(),this}};n(ce,"StringController");var ne=ce,Qe='.lil-gui {\n font-family: var(--font-family);\n font-size: var(--font-size);\n line-height: 1;\n font-weight: normal;\n font-style: normal;\n text-align: left;\n color: var(--text-color);\n user-select: none;\n -webkit-user-select: none;\n touch-action: manipulation;\n --background-color: #1f1f1f;\n --text-color: #ebebeb;\n --title-background-color: #111111;\n --title-text-color: #ebebeb;\n --widget-color: #424242;\n --hover-color: #4f4f4f;\n --focus-color: #595959;\n --number-color: #2cc9ff;\n --string-color: #a2db3c;\n --font-size: 11px;\n --input-font-size: 11px;\n --font-family: -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, Arial, sans-serif;\n --font-family-mono: Menlo, Monaco, Consolas, "Droid Sans Mono", monospace;\n --padding: 4px;\n --spacing: 4px;\n --widget-height: 20px;\n --title-height: calc(var(--widget-height) + var(--spacing) * 1.25);\n --name-width: 45%;\n --slider-knob-width: 2px;\n --slider-input-width: 27%;\n --color-input-width: 27%;\n --slider-input-min-width: 45px;\n --color-input-min-width: 45px;\n --folder-indent: 7px;\n --widget-padding: 0 0 0 3px;\n --widget-border-radius: 2px;\n --checkbox-size: calc(0.75 * var(--widget-height));\n --scrollbar-width: 5px;\n}\n.lil-gui, .lil-gui * {\n box-sizing: border-box;\n margin: 0;\n padding: 0;\n}\n.lil-gui.root {\n width: var(--width, 245px);\n display: flex;\n flex-direction: column;\n background: var(--background-color);\n}\n.lil-gui.root > .title {\n background: var(--title-background-color);\n color: var(--title-text-color);\n}\n.lil-gui.root > .children {\n overflow-x: hidden;\n overflow-y: auto;\n}\n.lil-gui.root > .children::-webkit-scrollbar {\n width: var(--scrollbar-width);\n height: var(--scrollbar-width);\n background: var(--background-color);\n}\n.lil-gui.root > .children::-webkit-scrollbar-thumb {\n border-radius: var(--scrollbar-width);\n background: var(--focus-color);\n}\n@media (pointer: coarse) {\n .lil-gui.allow-touch-styles, .lil-gui.allow-touch-styles .lil-gui {\n --widget-height: 28px;\n --padding: 6px;\n --spacing: 6px;\n --font-size: 13px;\n --input-font-size: 16px;\n --folder-indent: 10px;\n --scrollbar-width: 7px;\n --slider-input-min-width: 50px;\n --color-input-min-width: 65px;\n }\n}\n.lil-gui.force-touch-styles, .lil-gui.force-touch-styles .lil-gui {\n --widget-height: 28px;\n --padding: 6px;\n --spacing: 6px;\n --font-size: 13px;\n --input-font-size: 16px;\n --folder-indent: 10px;\n --scrollbar-width: 7px;\n --slider-input-min-width: 50px;\n --color-input-min-width: 65px;\n}\n.lil-gui.autoPlace {\n max-height: 100%;\n position: fixed;\n top: 0;\n right: 15px;\n z-index: 1001;\n}\n\n.lil-gui .controller {\n display: flex;\n align-items: center;\n padding: 0 var(--padding);\n margin: var(--spacing) 0;\n}\n.lil-gui .controller.disabled {\n opacity: 0.5;\n}\n.lil-gui .controller.disabled, .lil-gui .controller.disabled * {\n pointer-events: none !important;\n}\n.lil-gui .controller > .name {\n min-width: var(--name-width);\n flex-shrink: 0;\n white-space: pre;\n padding-right: var(--spacing);\n line-height: var(--widget-height);\n}\n.lil-gui .controller .widget {\n position: relative;\n display: flex;\n align-items: center;\n width: 100%;\n min-height: var(--widget-height);\n}\n.lil-gui .controller.string input {\n color: var(--string-color);\n}\n.lil-gui .controller.boolean {\n cursor: pointer;\n}\n.lil-gui .controller.color .display {\n width: 100%;\n height: var(--widget-height);\n border-radius: var(--widget-border-radius);\n position: relative;\n}\n@media (hover: hover) {\n .lil-gui .controller.color .display:hover:before {\n content: " ";\n display: block;\n position: absolute;\n border-radius: var(--widget-border-radius);\n border: 1px solid #fff9;\n top: 0;\n right: 0;\n bottom: 0;\n left: 0;\n }\n}\n.lil-gui .controller.color input[type=color] {\n opacity: 0;\n width: 100%;\n height: 100%;\n cursor: pointer;\n}\n.lil-gui .controller.color input[type=text] {\n margin-left: var(--spacing);\n font-family: var(--font-family-mono);\n min-width: var(--color-input-min-width);\n width: var(--color-input-width);\n flex-shrink: 0;\n}\n.lil-gui .controller.option select {\n opacity: 0;\n position: absolute;\n width: 100%;\n max-width: 100%;\n}\n.lil-gui .controller.option .display {\n position: relative;\n pointer-events: none;\n border-radius: var(--widget-border-radius);\n height: var(--widget-height);\n line-height: var(--widget-height);\n max-width: 100%;\n overflow: hidden;\n word-break: break-all;\n padding-left: 0.55em;\n padding-right: 1.75em;\n background: var(--widget-color);\n}\n@media (hover: hover) {\n .lil-gui .controller.option .display.focus {\n background: var(--focus-color);\n }\n}\n.lil-gui .controller.option .display.active {\n background: var(--focus-color);\n}\n.lil-gui .controller.option .display:after {\n font-family: "lil-gui";\n content: "\u2195";\n position: absolute;\n top: 0;\n right: 0;\n bottom: 0;\n padding-right: 0.375em;\n}\n.lil-gui .controller.option .widget,\n.lil-gui .controller.option select {\n cursor: pointer;\n}\n@media (hover: hover) {\n .lil-gui .controller.option .widget:hover .display {\n background: var(--hover-color);\n }\n}\n.lil-gui .controller.number input {\n color: var(--number-color);\n}\n.lil-gui .controller.number.hasSlider input {\n margin-left: var(--spacing);\n width: var(--slider-input-width);\n min-width: var(--slider-input-min-width);\n flex-shrink: 0;\n}\n.lil-gui .controller.number .slider {\n width: 100%;\n height: var(--widget-height);\n background: var(--widget-color);\n border-radius: var(--widget-border-radius);\n padding-right: var(--slider-knob-width);\n overflow: hidden;\n cursor: ew-resize;\n touch-action: pan-y;\n}\n@media (hover: hover) {\n .lil-gui .controller.number .slider:hover {\n background: var(--hover-color);\n }\n}\n.lil-gui .controller.number .slider.active {\n background: var(--focus-color);\n}\n.lil-gui .controller.number .slider.active .fill {\n opacity: 0.95;\n}\n.lil-gui .controller.number .fill {\n height: 100%;\n border-right: var(--slider-knob-width) solid var(--number-color);\n box-sizing: content-box;\n}\n\n.lil-gui-dragging .lil-gui {\n --hover-color: var(--widget-color);\n}\n.lil-gui-dragging * {\n cursor: ew-resize !important;\n}\n\n.lil-gui-dragging.lil-gui-vertical * {\n cursor: ns-resize !important;\n}\n\n.lil-gui .title {\n height: var(--title-height);\n line-height: calc(var(--title-height) - 4px);\n font-weight: 600;\n padding: 0 var(--padding);\n -webkit-tap-highlight-color: transparent;\n cursor: pointer;\n outline: none;\n text-decoration-skip: objects;\n}\n.lil-gui .title:before {\n font-family: "lil-gui";\n content: "\u25BE";\n padding-right: 2px;\n display: inline-block;\n}\n.lil-gui .title:active {\n background: var(--title-background-color);\n opacity: 0.75;\n}\n@media (hover: hover) {\n body:not(.lil-gui-dragging) .lil-gui .title:hover {\n background: var(--title-background-color);\n opacity: 0.85;\n }\n .lil-gui .title:focus {\n text-decoration: underline var(--focus-color);\n }\n}\n.lil-gui.root > .title:focus {\n text-decoration: none !important;\n}\n.lil-gui.closed > .title:before {\n content: "\u25B8";\n}\n.lil-gui.closed > .children {\n transform: translateY(-7px);\n opacity: 0;\n}\n.lil-gui.closed:not(.transition) > .children {\n display: none;\n}\n.lil-gui.transition > .children {\n transition-duration: 300ms;\n transition-property: height, opacity, transform;\n transition-timing-function: cubic-bezier(0.2, 0.6, 0.35, 1);\n overflow: hidden;\n pointer-events: none;\n}\n.lil-gui .children:empty:before {\n content: "Empty";\n padding: 0 var(--padding);\n margin: var(--spacing) 0;\n display: block;\n height: var(--widget-height);\n font-style: italic;\n line-height: var(--widget-height);\n opacity: 0.5;\n}\n.lil-gui.root > .children > .lil-gui > .title {\n border: 0 solid var(--widget-color);\n border-width: 1px 0;\n transition: border-color 300ms;\n}\n.lil-gui.root > .children > .lil-gui.closed > .title {\n border-bottom-color: transparent;\n}\n.lil-gui + .controller {\n border-top: 1px solid var(--widget-color);\n margin-top: 0;\n padding-top: var(--spacing);\n}\n.lil-gui .lil-gui .lil-gui > .title {\n border: none;\n}\n.lil-gui .lil-gui .lil-gui > .children {\n border: none;\n margin-left: var(--folder-indent);\n border-left: 2px solid var(--widget-color);\n}\n.lil-gui .lil-gui .controller {\n border: none;\n}\n\n.lil-gui label, .lil-gui input, .lil-gui button {\n -webkit-tap-highlight-color: transparent;\n}\n.lil-gui input {\n border: 0;\n outline: none;\n font-family: var(--font-family);\n font-size: var(--input-font-size);\n border-radius: var(--widget-border-radius);\n height: var(--widget-height);\n background: var(--widget-color);\n color: var(--text-color);\n width: 100%;\n}\n@media (hover: hover) {\n .lil-gui input:hover {\n background: var(--hover-color);\n }\n .lil-gui input:active {\n background: var(--focus-color);\n }\n}\n.lil-gui input:disabled {\n opacity: 1;\n}\n.lil-gui input[type=text],\n.lil-gui input[type=number] {\n padding: var(--widget-padding);\n -moz-appearance: textfield;\n}\n.lil-gui input[type=text]:focus,\n.lil-gui input[type=number]:focus {\n background: var(--focus-color);\n}\n.lil-gui input[type=checkbox] {\n appearance: none;\n width: var(--checkbox-size);\n height: var(--checkbox-size);\n border-radius: var(--widget-border-radius);\n text-align: center;\n cursor: pointer;\n}\n.lil-gui input[type=checkbox]:checked:before {\n font-family: "lil-gui";\n content: "\u2713";\n font-size: var(--checkbox-size);\n line-height: var(--checkbox-size);\n}\n@media (hover: hover) {\n .lil-gui input[type=checkbox]:focus {\n box-shadow: inset 0 0 0 1px var(--focus-color);\n }\n}\n.lil-gui button {\n outline: none;\n cursor: pointer;\n font-family: var(--font-family);\n font-size: var(--font-size);\n color: var(--text-color);\n width: 100%;\n height: var(--widget-height);\n text-transform: none;\n background: var(--widget-color);\n border-radius: var(--widget-border-radius);\n border: none;\n}\n@media (hover: hover) {\n .lil-gui button:hover {\n background: var(--hover-color);\n }\n .lil-gui button:focus {\n box-shadow: inset 0 0 0 1px var(--focus-color);\n }\n}\n.lil-gui button:active {\n background: var(--focus-color);\n}\n\n@font-face {\n font-family: "lil-gui";\n src: url("data:application/font-woff;charset=utf-8;base64,d09GRgABAAAAAAUsAAsAAAAACJwAAQAAAAAAAAAAAAAAAAAAAAAAAAAAAABHU1VCAAABCAAAAH4AAADAImwmYE9TLzIAAAGIAAAAPwAAAGBKqH5SY21hcAAAAcgAAAD0AAACrukyyJBnbHlmAAACvAAAAF8AAACEIZpWH2hlYWQAAAMcAAAAJwAAADZfcj2zaGhlYQAAA0QAAAAYAAAAJAC5AHhobXR4AAADXAAAABAAAABMAZAAAGxvY2EAAANsAAAAFAAAACgCEgIybWF4cAAAA4AAAAAeAAAAIAEfABJuYW1lAAADoAAAASIAAAIK9SUU/XBvc3QAAATEAAAAZgAAAJCTcMc2eJxVjbEOgjAURU+hFRBK1dGRL+ALnAiToyMLEzFpnPz/eAshwSa97517c/MwwJmeB9kwPl+0cf5+uGPZXsqPu4nvZabcSZldZ6kfyWnomFY/eScKqZNWupKJO6kXN3K9uCVoL7iInPr1X5baXs3tjuMqCtzEuagm/AAlzQgPAAB4nGNgYRBlnMDAysDAYM/gBiT5oLQBAwuDJAMDEwMrMwNWEJDmmsJwgCFeXZghBcjlZMgFCzOiKOIFAB71Bb8AeJy1kjFuwkAQRZ+DwRAwBtNQRUGKQ8OdKCAWUhAgKLhIuAsVSpWz5Bbkj3dEgYiUIszqWdpZe+Z7/wB1oCYmIoboiwiLT2WjKl/jscrHfGg/pKdMkyklC5Zs2LEfHYpjcRoPzme9MWWmk3dWbK9ObkWkikOetJ554fWyoEsmdSlt+uR0pCJR34b6t/TVg1SY3sYvdf8vuiKrpyaDXDISiegp17p7579Gp3p++y7HPAiY9pmTibljrr85qSidtlg4+l25GLCaS8e6rRxNBmsnERunKbaOObRz7N72ju5vdAjYpBXHgJylOAVsMseDAPEP8LYoUHicY2BiAAEfhiAGJgZWBgZ7RnFRdnVJELCQlBSRlATJMoLV2DK4glSYs6ubq5vbKrJLSbGrgEmovDuDJVhe3VzcXFwNLCOILB/C4IuQ1xTn5FPilBTj5FPmBAB4WwoqAHicY2BkYGAA4sk1sR/j+W2+MnAzpDBgAyEMQUCSg4EJxAEAwUgFHgB4nGNgZGBgSGFggJMhDIwMqEAYAByHATJ4nGNgAIIUNEwmAABl3AGReJxjYAACIQYlBiMGJ3wQAEcQBEV4nGNgZGBgEGZgY2BiAAEQyQWEDAz/wXwGAAsPATIAAHicXdBNSsNAHAXwl35iA0UQXYnMShfS9GPZA7T7LgIu03SSpkwzYTIt1BN4Ak/gKTyAeCxfw39jZkjymzcvAwmAW/wgwHUEGDb36+jQQ3GXGot79L24jxCP4gHzF/EIr4jEIe7wxhOC3g2TMYy4Q7+Lu/SHuEd/ivt4wJd4wPxbPEKMX3GI5+DJFGaSn4qNzk8mcbKSR6xdXdhSzaOZJGtdapd4vVPbi6rP+cL7TGXOHtXKll4bY1Xl7EGnPtp7Xy2n00zyKLVHfkHBa4IcJ2oD3cgggWvt/V/FbDrUlEUJhTn/0azVWbNTNr0Ens8de1tceK9xZmfB1CPjOmPH4kitmvOubcNpmVTN3oFJyjzCvnmrwhJTzqzVj9jiSX911FjeAAB4nG3HMRKCMBBA0f0giiKi4DU8k0V2GWbIZDOh4PoWWvq6J5V8If9NVNQcaDhyouXMhY4rPTcG7jwYmXhKq8Wz+p762aNaeYXom2n3m2dLTVgsrCgFJ7OTmIkYbwIbC6vIB7WmFfAAAA==") format("woff");\n}';function qe(i){let e=document.createElement("style");e.innerHTML=i;let o=document.querySelector("head link[rel=stylesheet], head style");o?document.head.insertBefore(e,o):document.head.appendChild(e)}n(qe,"_injectStyles");var _e=!1,X=class X{constructor({parent:e,autoPlace:o=e===void 0,container:t,width:r,title:a="Controls",closeFolders:s=!1,injectStyles:l=!0,touchStyles:d=!0}={}){if(this.parent=e,this.root=e?e.root:this,this.children=[],this.controllers=[],this.folders=[],this._closed=!1,this._hidden=!1,this.domElement=document.createElement("div"),this.domElement.classList.add("lil-gui"),this.$title=document.createElement("div"),this.$title.classList.add("title"),this.$title.setAttribute("role","button"),this.$title.setAttribute("aria-expanded",!0),this.$title.setAttribute("tabindex",0),this.$title.addEventListener("click",()=>this.openAnimated(this._closed)),this.$title.addEventListener("keydown",g=>{(g.code==="Enter"||g.code==="Space")&&(g.preventDefault(),this.$title.click())}),this.$title.addEventListener("touchstart",()=>{},{passive:!0}),this.$children=document.createElement("div"),this.$children.classList.add("children"),this.domElement.appendChild(this.$title),this.domElement.appendChild(this.$children),this.title(a),this.parent){this.parent.children.push(this),this.parent.folders.push(this),this.parent.$children.appendChild(this.domElement);return}this.domElement.classList.add("root"),d&&this.domElement.classList.add("allow-touch-styles"),!_e&&l&&(qe(Qe),_e=!0),t?t.appendChild(this.domElement):o&&(this.domElement.classList.add("autoPlace"),document.body.appendChild(this.domElement)),r&&this.domElement.style.setProperty("--width",r+"px"),this._closeFolders=s}add(e,o,t,r,a){if(Object(t)===t)return new oe(this,e,o,t);let s=e[o];switch(typeof s){case"number":return new ie(this,e,o,t,r,a);case"boolean":return new V(this,e,o);case"string":return new ne(this,e,o);case"function":return new H(this,e,o)}console.error("gui.add failed\n property:",o,"\n object:",e,"\n value:",s)}addColor(e,o,t=1){return new te(this,e,o,t)}addFolder(e){let o=new X({parent:this,title:e});return this.root._closeFolders&&o.close(),o}load(e,o=!0){return e.controllers&&this.controllers.forEach(t=>{t instanceof H||t._name in e.controllers&&t.load(e.controllers[t._name])}),o&&e.folders&&this.folders.forEach(t=>{t._title in e.folders&&t.load(e.folders[t._title])}),this}save(e=!0){let o={controllers:{},folders:{}};return this.controllers.forEach(t=>{if(!(t instanceof H)){if(t._name in o.controllers)throw new Error('Cannot save GUI with duplicate property "'.concat(t._name,'"'));o.controllers[t._name]=t.save()}}),e&&this.folders.forEach(t=>{if(t._title in o.folders)throw new Error('Cannot save GUI with duplicate folder "'.concat(t._title,'"'));o.folders[t._title]=t.save()}),o}open(e=!0){return this._setClosed(!e),this.$title.setAttribute("aria-expanded",!this._closed),this.domElement.classList.toggle("closed",this._closed),this}close(){return this.open(!1)}_setClosed(e){this._closed!==e&&(this._closed=e,this._callOnOpenClose(this))}show(e=!0){return this._hidden=!e,this.domElement.style.display=this._hidden?"none":"",this}hide(){return this.show(!1)}openAnimated(e=!0){return this._setClosed(!e),this.$title.setAttribute("aria-expanded",!this._closed),requestAnimationFrame(()=>{let o=this.$children.clientHeight;this.$children.style.height=o+"px",this.domElement.classList.add("transition");let t=n(a=>{a.target===this.$children&&(this.$children.style.height="",this.domElement.classList.remove("transition"),this.$children.removeEventListener("transitionend",t))},"onTransitionEnd");this.$children.addEventListener("transitionend",t);let r=e?this.$children.scrollHeight:0;this.domElement.classList.toggle("closed",!e),requestAnimationFrame(()=>{this.$children.style.height=r+"px"})}),this}title(e){return this._title=e,this.$title.textContent=e,this}reset(e=!0){return(e?this.controllersRecursive():this.controllers).forEach(t=>t.reset()),this}onChange(e){return this._onChange=e,this}_callOnChange(e){this.parent&&this.parent._callOnChange(e),this._onChange!==void 0&&this._onChange.call(this,{object:e.object,property:e.property,value:e.getValue(),controller:e})}onFinishChange(e){return this._onFinishChange=e,this}_callOnFinishChange(e){this.parent&&this.parent._callOnFinishChange(e),this._onFinishChange!==void 0&&this._onFinishChange.call(this,{object:e.object,property:e.property,value:e.getValue(),controller:e})}onOpenClose(e){return this._onOpenClose=e,this}_callOnOpenClose(e){this.parent&&this.parent._callOnOpenClose(e),this._onOpenClose!==void 0&&this._onOpenClose.call(this,e)}destroy(){this.parent&&(this.parent.children.splice(this.parent.children.indexOf(this),1),this.parent.folders.splice(this.parent.folders.indexOf(this),1)),this.domElement.parentElement&&this.domElement.parentElement.removeChild(this.domElement),Array.from(this.children).forEach(e=>e.destroy())}controllersRecursive(){let e=Array.from(this.controllers);return this.folders.forEach(o=>{e=e.concat(o.controllersRecursive())}),e}foldersRecursive(){let e=Array.from(this.folders);return this.folders.forEach(o=>{e=e.concat(o.foldersRecursive())}),e}};n(X,"GUI");var G=X,K=G;C();C();var w=(()=>{let i=new ke;return n(function(o){return i.set(o),"#".concat(i.getHexString())},"normalize")})();function we(i){let e;for(e of i)e()}n(we,"runAll");function he(i,e){let o=window.location.href,t=new URL(o),r=new URLSearchParams(t.search);for(let a in i)if(i.hasOwnProperty(a)){let s="".concat(e,".").concat(a);r.set(s,i[a])}t.search=r.toString(),history.pushState({path:t.toString()},"",t.toString())}n(he,"updateCurrentUrlParamsWithNamespace");function ue(i,e){let o=new URLSearchParams(window.location.search),t={};for(let[r,a]of o)if(r.startsWith("".concat(i,"."))){let s=r.slice(i.length+1);a==="true"||a==="false"?t[s]=a==="true":typeof(e==null?void 0:e[s])=="number"?t[s]=Number(a):t[s]=a}return{namespace:i,params:t}}n(ue,"getUrlParamsWithNamespace");var Ve=["interactive"];function Z(i,e,o){var r,a;let t=o.addFolder("".concat(e.type,"-").concat(e.id));for(let s in e){if(s==="visible"&&t.add(e,s).onChange(l=>{i.updateState(e.id,{[s]:l})}),s==="color"||s==="hoverColor"){e[s]=w(e[s]),t.addColor(e,s).onChange(l=>{i.updateState(e.id,{[s]:l})});continue}if(s==="height"){t.add(e,s,0,20,1).onChange(l=>{i.updateState(e.id,{[s]:l})});continue}if(s==="texture"&&e.texture){(r=t.addFolder("Texture - side").add(e,"texture"))==null||r.onChange(d=>{i.updateState(e.id,{texture:{url:d}})});continue}if(s==="topTexture"&&e.topTexture){(a=t.addFolder("Texture - top").add(e,"topTexture"))==null||a.onChange(d=>{i.updateState(e.id,{topTexture:{url:d}})});continue}if(s==="opacity"){t.add(e,s,0,1,.1).onChange(l=>{i.updateState(e.id,{[s]:l})});continue}Ve.includes(s)&&t.add(e,s).onChange(l=>{i.updateState(e.id,{[s]:l})})}return e.isInView&&(t.add(e,"isInView").listen().disable(),t.add(e,"isInViewCheck")),{cleanup(){t.destroy()}}}n(Z,"renderByProp");C();C();function et(){let i=[];function e(r,a){var d;let s=Object.values(r.getMapData())[0],l=a;if(l&&J.is(l)){let g=(d=s.getByType("enterprise-location"))==null?void 0:d.find(h=>h.spaces.some(p=>p.id===l.id));g&&(l=g)}return l}n(e,"getHighlightTarget");async function o(r,a){return a instanceof W?r.Camera.focusOn(a.locations.flatMap(s=>s.spaces),Y):a instanceof P?r.Camera.focusOn(a.spaces,Y):r.Camera.focusOn(a,Y)}n(o,"focusOn");function t(r,a,{focus:s=!1}={}){if(!window.enableHighlightCard)return()=>{};let l=e(r,a),d=document.createElement("div");if(d.style.cssText="\n position: absolute;\n top: 20px;\n left: 20px;\n background-color: rgba(30, 30, 30, 0.95);\n box-shadow: 0 4px 20px rgba(0, 0, 0, 0.3);\n border-radius: 12px;\n padding: 24px;\n max-width: 320px;\n z-index: 1000;\n font-family: 'Arial', sans-serif;\n transition: all 0.3s ease;\n color: #e0e0e0;\n ","name"in l){let h=document.createElement("h3");h.textContent=l.name,h.style.cssText="\n margin: 0 0 16px;\n font-size: 22px;\n font-weight: 600;\n color: #ffffff;\n letter-spacing: -0.5px;\n ",d.appendChild(h)}if(l instanceof P){if(l.description){let h=document.createElement("p");h.textContent=l.description,h.style.cssText="\n margin: 0 0 16px;\n font-size: 14px;\n color: #b0b0b0;\n line-height: 1.5;\n ",d.appendChild(h)}if(l.tags&&l.tags.length>0){let h=document.createElement("div");h.style.cssText="\n display: flex;\n flex-wrap: nowrap;\n gap: 8px;\n margin-bottom: 16px;\n overflow-x: hidden;\n max-height: 30px; /* Adjust this value based on your font size and padding */\n ",l.tags.forEach(p=>{let f=document.createElement("span");f.textContent=p,f.style.cssText="\n background-color: #3a3a3a;\n color: #e0e0e0;\n padding: 6px 12px;\n border-radius: 16px;\n font-size: 12px;\n font-weight: 500;\n text-transform: uppercase;\n white-space: nowrap;\n ",h.appendChild(f)}),d.appendChild(h)}}let g;if(!(a instanceof W)){let h=new K({autoPlace:!1});h.domElement.style.cssText="\n position: relative;\n overflow-y: auto;\n margin-top: 16px;\n border-top: 1px solid #444;\n padding-top: 16px;\n ";let p=r.getState(a);p&&(Z(r,{id:a.id,...p},h),d.appendChild(h.domElement)),g=h}return document.body.appendChild(d),s&&o(r,l),()=>{d.style.opacity="0",d.style.transform="translateY(-10px)",setTimeout(()=>d.remove(),300),g==null||g.destroy()}}return n(t,"highlightCard"),{highlightCard:t,highlight:n((r,a,{focus:s=!0}={})=>{i.length>0&&i.forEach(d=>r.Markers.remove(d));let l=e(r,a);if(l instanceof P)s&&r.Camera.focusOn(l.spaces,Y),i.push(...l.spaces.map(d=>r.Markers.add(d,'<div style="padding: 15px; background-color: #ffffff; border-radius: 8px; box-shadow: 0 4px 6px rgba(0,0,0,0.1); max-width: 250px; position: relative;">\n <h3 style="margin: 0 0 10px; color: #333; font-size: 16px; font-weight: 600;">'.concat(l.name,"</h3>\n ").concat(l.description?'<p style="margin: 0 0 10px; color: #666; font-size: 14px; font-weight: 400;">'.concat(l.description,"</p>"):"","\n ").concat(l.tags?l.tags.map(g=>'<span style="display: inline-block; padding: 3px 8px; background-color: #e0f2f1; color: #00796b; border-radius: 12px; font-size: 12px;">'.concat(g,"</span>")).join(" "):"",'\n <div style="position: absolute; bottom: -10px; left: 50%; transform: translateX(-50%); width: 0; height: 0; border-left: 10px solid transparent; border-right: 10px solid transparent; border-top: 10px solid #ffffff;"></div>\n </div>'),{rank:"always-visible",anchor:"top"})));else if(l instanceof W){s&&r.Camera.focusOn(l.locations.flatMap(h=>h.spaces),Y);let d=new Map,g=new Set;l.locations.forEach(h=>{d.has(h.name)||(h.spaces.forEach(p=>{i.push(r.Markers.add(p,'<div style="padding: 12px; background-color: rgba(0, 153, 51, 0.95); border-radius: 8px; box-shadow: 0 4px 8px rgba(0,0,0,0.3); transform: translateY(-4px); transition: all 0.3s ease;">\n <span style="font-weight: 600; color: #FFFFFF; font-size: 16px; text-shadow: 1px 1px 2px rgba(0,0,0,0.2);">'.concat(h.name,"</span>\n </div>"),{rank:"always-visible"}))}),d.set(h.name,!0))}),l.locations.forEach(h=>{h.coordinates.forEach(p=>{let f="".concat(p.latitude,",").concat(p.longitude);if(!g.has(f)&&!d.has(h.name)){let c=r.Markers.add(p,'<div style="padding: 10px; background-color: rgba(51, 102, 204, 0.9); border-radius: 6px; box-shadow: 0 3px 6px rgba(0,0,0,0.2);">\n <span style="font-weight: 500; color: #FFFFFF; font-size: 16px;">'.concat(h.name,'</span>\n <br>\n <span style="color: #FFFFFF; font-size: 12px; font-weight: 400;">Node</span>\n </div>'),{rank:"always-visible"});g.add(f),i.push(c)}})})}return()=>{i.forEach(d=>r.Markers.remove(d))}},"highlight")}}n(et,"createHighlightControl");var Y={duration:300,easing:"ease-in-out"},Q=et();C();var _={search:"",results:void 0,options:{places:{fields:{name:!0,description:!0,link:!0,category:!0},limit:5},locations:{fields:{name:!0,tag:!0,description:!0},limit:5},categories:{fields:{name:!0},limit:5}}};function tt(i){i.add(_.options.places.fields,"name").name("Places: Name"),i.add(_.options.places.fields,"description").name("Places: Description"),i.add(_.options.places.fields,"link").name("Places: Link"),i.add(_.options.places.fields,"category").name("Places: Category"),i.add(_.options.places,"limit"),i.add(_.options.locations.fields,"name").name("Locations: Name"),i.add(_.options.locations.fields,"tag").name("Locations: Tag"),i.add(_.options.locations.fields,"description").name("Locations: Description"),i.add(_.options.places,"limit"),i.add(_.options.categories.fields,"name").name("Categories: Name")}n(tt,"createAdvancedSettings");function Fe(i,e,o){var h;let t=new U,r=o.addFolder("Search");r.open();let a=r.add(_,"search").onChange(async p=>{let f=await e.Search.query(p,_.options);f&&(_.results=f,l(f,t))}),s=document.createElement("div");s.style.marginLeft="10px",(h=a.domElement.parentElement)==null||h.appendChild(s);let{renderSearch:l,close:d}=it(i,e,s,a.$input),g=r.addFolder("Advanced");return g.close(),tt(g),document.addEventListener("keydown",p=>{(p.metaKey||p.ctrlKey)&&p.key==="k"?(p.preventDefault(),r._closed&&r.open(),a.$input.focus()):p.key==="Escape"&&(d(),t.publish("highlight",void 0))}),{pubsub:t}}n(Fe,"createSearchControl");function it(i,e,o,t){let r,a;t.addEventListener("input",async l=>{l instanceof InputEvent&&(l.inputType==="insertText"||l.inputType==="insertCompositionText")&&(clearTimeout(r),r=setTimeout(async()=>{var g;let d=await e.Search.suggest(t.value);d&&d.length>0&&s((g=d[0])==null?void 0:g.suggestion)},100))});function s(l){if(!l){t.placeholder="";return}let d=t.value;t.value=l,t.setSelectionRange(d.length,l.length)}return n(s,"renderSuggestion"),{renderSearch(l,d){var g,h;if(l.places.length===0&&((g=l.enterpriseCategories)==null?void 0:g.length)===0&&((h=l.enterpriseLocations)==null?void 0:h.length)===0){o.textContent="No results found.";return}a=ot(o,l,i,d)},close(){a.destroy()}}}n(it,"mount");function ot(i,e,o,t){i.innerHTML="";let r=document.createElement("div");Object.assign(r.style,q.dropdownContainer);let a=document.createElement("ul");a.className="options-list",Object.assign(a.style,q.optionsList),a.style.display="block";let s=[],l=n((f,c)=>{if(c&&c.length>0){let u=document.createElement("li");u.textContent=f,Object.assign(u.style,q.sectionHeader),a.appendChild(u),c.forEach((b,y)=>{let m=document.createElement("li");m.textContent="".concat("name"in b.item?b.item.name:""," (").concat(b.type,")"),Object.assign(m.style,q.option),m.tabIndex=0,m.addEventListener("focus",()=>{g(s.indexOf(m))}),m.addEventListener("mouseover",()=>{m.style.backgroundColor="#f0f0f0"}),m.addEventListener("mouseout",()=>{m.style.backgroundColor=""}),m.addEventListener("click",()=>{}),m.setAttribute("data-type",f),m.setAttribute("data-index",y.toString()),a.appendChild(m),s.push(m)})}},"addSection");l("enterpriseLocations",e.enterpriseLocations),l("enterpriseCategories",e.enterpriseCategories),l("Places",e.places),r.appendChild(a),i.appendChild(r);let d=[],g=n(f=>{d.forEach(m=>m()),d=[],s.forEach((m,v)=>{v===f?m.style.backgroundColor="#e0e0e0":m.style.backgroundColor=""});let c=s[f],u=c.getAttribute("data-type"),b=parseInt(c.getAttribute("data-index")||"0",10);if(!u)return;let{item:y}=e[u.toLowerCase()][b];t.publish("highlight",y)},"highlightOption"),h=n(f=>{!r.contains(f.target)&&f.target!==i&&p()},"handleClickOutside");document.addEventListener("click",h);let p=n(()=>{i.innerHTML="",document.removeEventListener("click",h)},"destroy");return{destroy(){i.innerHTML="",t.publish("highlight",void 0)}}}n(ot,"createCustomDropdown");var q={dropdownContainer:{position:"absolute",color:"#202020"},optionsList:{display:"block",zIndex:"1002",position:"relative",maxHeight:"200px",overflowY:"auto",border:"1px solid #ccc",backgroundColor:"#fff",listStyleType:"none",margin:"0",padding:"0"},sectionHeader:{fontWeight:"bold",padding:"5px",backgroundColor:"#f0f0f0"},option:{padding:"5px",cursor:"pointer"}};function Se(i,e,o){o.domElement.id="interactionPanel";let t=[],{pubsub:r}=Fe(i,e,o);r.on("highlight",h=>{if(h){t.forEach(f=>f()),t=[];let p=h instanceof P?h.spaces[0]:h;if(i.Camera.focusOn(h),p&&!J.is(p))return;t.push(Q.highlightCard(i,p,{focus:!0}))}else t.forEach(p=>p()),t=[]});let a=o.addFolder("Click \u{1F447}").close(),{sub:s}=nt(i,a);s.on("click",h=>{t.forEach(p=>p()),t=[],h.spaces[0]&&(t=[Q.highlightCard(i,h.spaces[0])])});let l=o.addFolder("Hover \u{1F681}").close(),{sub:d}=rt(i,l),g;d.on("hover",h=>{h.spaces[0]?(g==null||g(),t.length===0&&(g=Q.highlightCard(i,h.spaces[0]))):(g==null||g(),g=void 0)})}n(Se,"createInteractionControls");function nt(i,e){let o=new U,t={position:"",hoverColor:w(i.getHoverColor())},r=e.add(t,"position").disable(),a=[];function s(){a.forEach(d=>d()),a.length=0}n(s,"reset");let l=0;return i.on("click",d=>{var u;let{labels:g,markers:h,coordinate:p}=d;s(),o.publish("click",d),clearInterval(l),r.load(JSON.stringify([p.longitude,p.latitude]));let f=g[0]||h[0];if(f){let b=ge(i,f,e);if(!b)return;a.push(b.destroy),b.labelItemFolder.openAnimated()}let c=(u=d.spaces[0])!=null?u:d.objects[0];if(c){let b={id:c.id,...i.getState(c.id),type:c.type,isInView:!1,isInViewCheck:pe(i,c.id)},{cleanup:y}=Z(i,b,e);l=setInterval(()=>{b.isInView=i.isInView(f||c)},500),a.push(y)}}),{sub:o}}n(nt,"createClickControls");function rt(i,e){let o=new U;i.setHoverColor("#1f3a7a");let t={position:"",hoverColor:w(i.getHoverColor()),intersected:"",type:"",id:""},r=e.add(t,"position").disable();e.add(t,"id").disable().listen(),e.add(t,"type").disable().listen(),e.addColor(t,"hoverColor").onChange(l=>{i.setHoverColor(l)});let a=[];function s(){a.forEach(l=>l()),a.length=0}return n(s,"reset"),i.on("hover",l=>{var b,y,m;let{coordinate:d,spaces:g,objects:h,markers:p,labels:f}=l;s(),o.publish("hover",l),r.load(JSON.stringify([d.longitude,d.latitude]));let c=(m=(y=(b=g[0])!=null?b:h[0])!=null?y:p[0])!=null?m:f[0];if(!c)return;let u=i.getState(c);u&&(t.type=u.type,t.id=c.id)}),{sub:o}}n(rt,"createHoverControls");function pe(i,e){return n(function(){console.log("isInView",i.isInView(e))},"isInView")}n(pe,"createIsInViewHandler");function Le(i,e,o){let t={labels:{},all(){o.Labels.all().forEach(c=>{this.labels[c.id]=c}),d()},removeAllLabels(){o.Labels.removeAll().forEach(c=>{delete this.labels[c.id]}),d()}},{addLabel:r,destroy:a}=st(i,o);i.add(t,"all"),i.add(t,"removeAllLabels");let s=i.addFolder("Label List");i.close();let l=new Map,{rerender:d}=g();function g(){function f(b){var y;delete t.labels[b.id],(y=l.get(b.id))==null||y.destroy()}n(f,"remove");function c(b){let y=ge(o,b,s,{onRemove:n(v=>{f(v)},"onRemove")});if(!y)return;let{labelItemFolder:m}=y;l.set(b.id,m)}n(c,"add");function u(){s.destroy(),s=i.addFolder("Label");for(let b in t.labels){let y=t.labels[b];c(y)}}return n(u,"rerender"),{rerender:u,add:c,remove:f}}n(g,"createLabelControls"),i.domElement.classList.add("list-items");let h;o.on("click",({labels:f,coordinate:c})=>{if(!i._closed)if(f[0]){h==null||h.close();let u=l.get(f[0].id);if(i.open(),!u)return;u==null||u.open(),u==null||u.domElement.scrollIntoView({block:"start"}),u==null||u.domElement.focus(),h=u}else r(c)});function p(f){for(let c of f)t.labels[c.id]=c;d()}return n(p,"populatelabels"),{populatelabels:p,destroy(){a()}}}n(Le,"createLabelControls");function ge(i,e,o,{onRemove:t}={}){var g,h,p,f;let r=o.addFolder("".concat((g=e.text)==null?void 0:g.substring(0,12)));r.onChange(c=>{i.updateState(e,{appearance:d.appearance,interactive:d.interactive})}),r.close();let a=i.getState(e);if((a==null?void 0:a.type)!=="label")throw new Error("error getting state for label: ".concat(e.id));let{appearance:s,interactive:l}=a;if(!s||s.margin==null||l==null)throw new Error("incomplte label state");let d={text:e.text,interactive:l,appearance:{...s,margin:s.margin||0,marker:{foregroundColor:(p=(h=s.marker)==null?void 0:h.foregroundColor)!=null&&p.active?w((f=s.marker.foregroundColor)==null?void 0:f.active):"black"},text:{foregroundColor:w(s.text.foregroundColor)}},remove(){i.Labels.remove(e),t==null||t(e),r.destroy()},isInView:pe(i,e.id)};return r.add(d.appearance,"margin",0,20).name("margin"),r.add(d,"text"),r.add(d,"interactive"),r.addColor(d.appearance.marker,"foregroundColor").name("marker foreground"),r.addColor(d.appearance.text,"foregroundColor").name("text forground"),r.add(d,"isInView"),r.add(d,"remove"),{labelItemFolder:r,destroy(){r.destroy()}}}n(ge,"addLabelControlToFolder");function st(i,e){let o=i.addFolder("Add"),t={onClick:!1,margin:0,text:"New Label!",interactive:!0,marginForegroundColor:w("skyblue"),marginBackgroundColor:w("coral"),textForegroundColor:w("slategray"),textBackgroundColor:w("white")};return o.add(t,"onClick"),o.add(t,"margin"),o.add(t,"interactive"),o.add(t,"text"),o.addColor(t,"marginForegroundColor"),o.addColor(t,"marginBackgroundColor"),o.addColor(t,"textForegroundColor"),o.addColor(t,"textBackgroundColor"),{destroy(){o.destroy()},addLabel(r){return o._closed||!t.onClick?void 0:e.Labels.add(r,t.text,{appearance:{margin:t.margin,marker:{foregroundColor:{active:t.marginForegroundColor,inactive:t.marginForegroundColor},backgroundColor:{active:t.marginBackgroundColor,inactive:t.marginBackgroundColor}},text:{foregroundColor:t.textForegroundColor,backgroundColor:t.marginBackgroundColor}},interactive:t.interactive})}}}n(st,"createAddControl");var $e={};C();var Ie="camera-ui";function Oe(i,e,o){var R,Ce;let t=i.addFolder("Camera \u{1F4F7}").onOpenClose(A=>{he({opened:!A._closed},Ie)}),{params:r}=ue(Ie);r.opened||t.close();let a=e.Camera.center.toJSON(),s=document.createElement("div");Object.assign(s.style,{display:"none",position:"absolute",left:"0px",zIndex:999,top:"0px",bottom:"0px",right:"0px",backgroundColor:"aqua",pointerEvents:"none",opacity:.5}),e.__core.container.appendChild(s);let{innerHeight:l,innerWidth:d}=window,[g,h,p,f]=(R=o==null?void 0:o.padding)!=null?R:[e.Camera.screenOffsets.top,e.Camera.screenOffsets.right,e.Camera.screenOffsets.bottom,e.Camera.screenOffsets.left],c={center_lat:a.latitude,center_lon:a.longitude,zoomLevel:e.Camera.zoomLevel,pitch:e.Camera.pitch,bearing:e.Camera.bearing,minZoomLevel:e.Camera.minZoomLevel,maxZoomLevel:e.Camera.maxZoomLevel,inset_type:o!=null&&o.padding?"pixel":e.Camera.screenOffsets.type,inset_top:g!=null?g:0,inset_left:f!=null?f:0,inset_right:h!=null?h:0,inset_bottom:p!=null?p:0,animateOnLoad:!0,persist:n(()=>{he(t.save().controllers,"camera"),navigator.clipboard.writeText(window.location.href)},"persist"),visualizeInset:!!(g||h||p||f),"Focus on click":(Ce=o==null?void 0:o.focusOnClick)!=null?Ce:!0,"Focus on current floor":n(()=>{e.Camera.focusOn([e.currentFloor],{screenOffsets:{top:20,left:20,right:20,bottom:20}})},"Focus on current floor")};function u(){c.inset_type=e.Camera.screenOffsets.type,c.inset_left=e.Camera.screenOffsets.left,c.inset_top=e.Camera.screenOffsets.top,c.inset_right=e.Camera.screenOffsets.right,c.inset_bottom=e.Camera.screenOffsets.bottom,c.inset_type==="portion"?Object.assign(s.style,{left:c.inset_left*d+"px",top:c.inset_top*l+"px",bottom:c.inset_bottom*l+"px",right:c.inset_right*d+"px"}):Object.assign(s.style,{left:c.inset_left+"px",top:c.inset_top+"px",bottom:c.inset_bottom+"px",right:c.inset_right+"px"})}n(u,"updateInsetVisualizer"),t.add(c,"center_lat").listen().disable(),t.add(c,"center_lon").listen().disable(),t.add(c,"zoomLevel",16,22,.5).listen().disable(),t.add(c,"pitch").listen().disable(),t.add(c,"bearing").listen().disable(),t.add(c,"minZoomLevel",5,22,.5).onChange(A=>{e.Camera.setMinZoomLevel(A)}),t.add(c,"maxZoomLevel",10,22,.5).onChange(A=>{e.Camera.setMaxZoomLevel(A)}),t.add(c,"animateOnLoad"),t.add(c,"visualizeInset").onChange(O),O(c.visualizeInset),t.add(c,"inset_type",["pixel","portion"]).onChange(k),t.add(c,"inset_top",0,l).onChange(k),t.add(c,"inset_bottom",0,l).onChange(k),t.add(c,"inset_left",0,d).onChange(k),t.add(c,"inset_right",0,d).onChange(k);let b=lt(e);t.add(c,"Focus on click").onChange(A=>{A?e.on("click",b):e.off("click",b)}),c["Focus on click"]&&e.on("click",b),t.add(c,"persist"),t.add(c,"Focus on current floor");let y=n(A=>{t._closed||(c.center_lat=A.center.latitude,c.center_lon=A.center.longitude,c.zoomLevel=A.zoomLevel,c.bearing=A.bearing,c.pitch=A.pitch)},"onCameraChanged");e.on("camera-change",y);let{params:m}=ue("camera",c);if(Object.keys(m).length>0){let A=m;e.Camera.setScreenOffsets({top:A.inset_top,left:A.inset_left,right:A.inset_right,bottom:A.inset_bottom,type:A.inset_type});let xe={pitch:A.pitch,center:new Me(A.center_lat,A.center_lon),bearing:A.bearing,zoomLevel:A.zoomLevel};A.animateOnLoad?e.Camera.animateTo(xe):e.Camera.set(xe),t.load({controllers:A,folders:{}}),u()}let v=[()=>{e.off("camera-change",y)}];function k(){e.Camera.setScreenOffsets({top:c.inset_top,left:c.inset_left,right:c.inset_right,bottom:c.inset_bottom,type:c.inset_type}),u()}n(k,"updateInset"),(c.inset_top||c.inset_right||c.inset_bottom||c.inset_left)&&k();function O(A){u(),A?s.style.display="block":s.style.display="none"}return n(O,"visualizeInsetUpdated"),()=>({destroy(){t.destroy(),we(v)}})}n(Oe,"createCameraControls");function lt(i){return n(function(o){var s;let{spaces:t,objects:r}=o,a=(s=t[0])!=null?s:r[0];a&&i.Camera.focusOn(a)},"handler")}n(lt,"createHandler");C();function Te(i,e,o){let t={markers:{},removeAllMarkers(){o.Markers.removeAll().forEach(c=>{delete this.markers[c.id]}),d()}},{addMarker:r,destroy:a}=ct(i,o);i.add(t,"removeAllMarkers");let s=i.addFolder("Marker List");i.close();let l=new Map,{rerender:d}=g();function g(){function f(b){var y;delete t.markers[b.id],(y=l.get(b.id))==null||y.destroy()}n(f,"remove");function c(b){let y=dt(o,b,s,{onRemove:n(v=>{f(v)},"onRemove")});if(!y)return;let{markerItemFolder:m}=y;l.set(b.id,m)}n(c,"add");function u(){s.destroy(),s=i.addFolder("marker");for(let b in t.markers){let y=t.markers[b];c(y)}}return n(u,"rerender"),{rerender:u,add:c,remove:f}}n(g,"createMarkerControls"),i.domElement.classList.add("list-items");let h;o.on("click",({markers:f,coordinate:c})=>{if(!i._closed)if(f[0]){h==null||h.close();let u=l.get(f[0].id);if(i.open(),!u)return;u==null||u.open(),u==null||u.domElement.scrollIntoView({block:"start"}),u==null||u.domElement.focus(),h=u}else r(c)});function p(f){for(let c of f)t.markers[c.id]=c;d()}return n(p,"populateMarkers"),{populateMarkers:p,destroy(){a()}}}n(Te,"createMarkerControls");function dt(i,e,o,{onRemove:t}={}){let r=o.addFolder("".concat(e.id.toString().substring(0,8)));r.onChange(d=>{i.updateState(e,{interactive:l.interactive})}),r.close();let a=i.getState(e);if((a==null?void 0:a.type)!=="marker")throw new Error("error getting state for marker: ".concat(e.id));let{interactive:s}=a;if(s==null)throw new Error("incomplte label state");let l={interactive:s,remove(){i.Markers.remove(e),t==null||t(e),r.destroy()}};return r.add(l,"interactive"),r.add(l,"remove"),{markerItemFolder:r,destroy(){r.destroy()}}}n(dt,"addMarkerControlToFolder");function ct(i,e){let o=i.addFolder("Add"),t={onClick:!1,interactive:!0};return o.add(t,"onClick"),o.add(t,"interactive"),{destroy(){o.destroy()},addMarker(r){return o._closed||!t.onClick?void 0:e.Markers.add(r,"<div>New Marker</div>",{interactive:t.interactive})}}}n(ct,"createAddControl");C();function De(i,e){let o=i.addFolder("Walls").close(),t={visible:!0,topColor:"#b1fa87",color:"#e8e8e8",texture:{url:""},topTexture:{url:""}};o.add(t,"visible").onChange(s=>{e.updateState("walls",{visible:s})}),o.addColor(t,"topColor").onChange(s=>{e.updateState("walls",{topColor:s})}),o.addColor(t,"color").onChange(s=>{e.updateState("walls",{color:s})}),o.addFolder("Texture - side").add(t.texture,"url").onFinishChange(s=>{e.updateState("walls",{texture:{url:s}})}),o.addFolder("Texture - top").add(t.topTexture,"url").onFinishChange(s=>{e.updateState("walls",{topTexture:{url:s}})}),e.updateState("walls",{topColor:t.topColor}),e.updateState("walls",{color:t.color})}n(De,"createGeometryControl");C();function Pe(i,e,o){var a,s;i.close();let t={language:(s=(a=o.currentLanguage)==null?void 0:a.code)!=null?s:"en"},r=o.getByType("enterprise-venue");i.add(t,"language",r==null?void 0:r.languages.map(l=>l.code)).onChange(l=>{o.changeLanguage(l)})}n(Pe,"createMiscControl");C();function ze(i,e,o){let t=i.addFolder("Debug");t.close();let r={showPolygonLabelTextAreaMesh:!1};t.add(r,"showPolygonLabelTextAreaMesh").onChange(a=>{e.Debug.update({showPolygonLabelTextAreaMesh:a})}).name("Show Flat Label Text Area Mesh"),e.Debug.update(r)}n(ze,"createDebugControl");C();function Ge(i,e,o){let t=i.addFolder("Text3D").close(),r={all:n(()=>{e.Text3D.labelAll()},"all"),removeAll:n(()=>{e.Text3D.removeAll()},"removeAll")};t.add(r,"all").name("Show All"),t.add(r,"removeAll").name("Remove All")}n(Ge,"createText3DControl");C();C();C();var F,N,$,M,I,S,Be,me,Ue,be=class be{constructor(e=new G({autoPlace:!0})){D(this,S);D(this,F);D(this,N,[]);D(this,$,{});D(this,M,{});D(this,I,{});Ae(this,F,e),x(this,F).domElement.style.left="0"}add(e,o,t){if(x(this,M)[e])throw new Error("Control ".concat(e," already exists"));x(this,$)[e]=o,x(this,I)[e]=o.default,B(this,S,Be).call(this,e,o,t),this.show()}addColor(e,o,t){if(x(this,M)[e])throw new Error("Control ".concat(e," already exists"));x(this,$)[e]=o,x(this,I)[e]=o.default,B(this,S,Ue).call(this,e,o,t),this.show()}update(e,o){if(!x(this,M)[e])throw new Error("Control ".concat(e," does not exist"));x(this,M)[e].setValue(o),x(this,$)[e].onChange&&x(this,$)[e].onChange(o,e)}replace(e,o,t){if(!x(this,M)[e]){this.add(e,o,t);return}o.args&&x(this,M)[e].options(o.args),o.default&&x(this,M)[e].setValue(o.default),o.onChange&&x(this,M)[e].onChange(r=>{o.onChange(r,e)})}remove(e){if(!x(this,M)[e])throw new Error("Control ".concat(e," does not exist"));x(this,M)[e].destroy(),x(this,M)[e].parent.children.length===0&&x(this,M)[e].parent.hide(),delete x(this,M)[e],delete x(this,$)[e],delete x(this,I)[e]}show(){x(this,F).show()}hide(){x(this,F).hide()}removeAll(){for(let e in x(this,M))this.remove(e)}destroy(){x(this,F).destroy()}};F=new WeakMap,N=new WeakMap,$=new WeakMap,M=new WeakMap,I=new WeakMap,S=new WeakSet,Be=n(function(e,o,t){let a=B(this,S,me).call(this,t).add(x(this,I),e,o.args,o.max,o.step);o.onChange&&a.onChange(s=>{o.onChange(s,e)}),o.onAdd&&o.onAdd(o.default,e),x(this,M)[e]=a},"#addControl"),me=n(function(e){if(!e)return x(this,F);let o=x(this,N).find(t=>t._title===e);return o?(o.show(),o):(o=x(this,F).addFolder(e),x(this,N).push(o),o)},"#getFolder"),Ue=n(function(e,o,t){let a=B(this,S,me).call(this,t).addColor(x(this,I),e);o.onChange&&a.onChange(s=>{o.onChange(s,e)}),x(this,M)[e]=a},"#addColorControl"),n(be,"GUI");var fe=be;function ht(i,e,o){var l;let t={},r=i.getByType("floor"),a=i.getByType("floor-stack");a.length>1&&(t.FloorStack={default:e.currentFloorStack.id,args:a.reduce((d,{id:g,name:h})=>({...d,[h]:g}),{}),onChange:n(d=>{d!==e.currentFloorStack.id&&(e.setFloorStack(d),o.replace("Floor",{default:e.currentFloor.id,args:e.currentFloorStack.floors.reduce((g,{id:h,name:p})=>({...g,[p]:h}),{})}))},"onChange")}),r.length>1&&(t.Floor={default:e.currentFloor.id,args:e.currentFloorStack.floors.reduce((d,{id:g,name:h})=>({...d,[h]:g}),{}),onChange:n(d=>{d!==e.currentFloor.id&&e.setFloor(d)},"onChange"),onAdd:n(()=>{e.on("floor-change",d=>{d!=null&&d.floor.id&&(a.length>1&&o.replace("FloorStack",{default:e.currentFloorStack.id}),o.replace("Floor",{default:e.currentFloor.id,args:e.currentFloorStack.floors.reduce((h,{id:p,name:f})=>({...h,[f]:p}),{})}))})},"onAdd")});let s=i.getByType("enterprise-venue");return s&&s.languages.length>1&&(t.Language={default:((l=i.currentLanguage)==null?void 0:l.code)||s.languages[0].code,args:s.languages.reduce((d,{code:g,name:h})=>({...d,[h]:g}),{}),onChange:n(d=>{i.changeLanguage(d)},"onChange")}),t}n(ht,"createDefaultControls");function He(i,e,o=new G){let t=new fe(o),r=ht(i,e,t);Object.keys(r).length||t.hide();for(let a in r)t.add(a,r[a]);return t}n(He,"createGUI");async function je(i,e,{initialfloorsInStack:o,root:t,floorsInDirections:r,showLabelsPerFloor:a=!0}){async function s(u){i.StackedMaps.changeFloorOnElevationChanges(!1),i.Outdoor.setOpacity(.15),i.StackedMaps.setFloorVisiblityMode("only-current-floor"),i.Camera.setPanMode("default"),await i.Camera.focusOn(u,{pitch:10})}n(s,"zoomToFloor");async function l(){i.Outdoor.setOpacity(.25),i.StackedMaps.changeFloorOnElevationChanges(!0),i.Camera.setPanMode("elevation"),i.StackedMaps.setFloorVisiblityMode("all-floors"),await i.Camera.focusOn(i.currentFloor,{axisAlignedPadding:{vertical:i.StackedMaps.distanceBetweenFloors},pitch:90})}n(l,"showCurrentFloorWithPadding");async function d(u){await i.Camera.animateElevation(u.elevation*i.StackedMaps.distanceBetweenFloors)}n(d,"scrollToFloor");let g=i.currentFloor;i.on("floor-change",async u=>{i.StackedMaps.expanded&&u.reason!=="stacked-maps-elevation-change"&&(i.StackedMaps.changeFloorOnElevationChanges(!1),i.StackedMaps.setFloorVisiblityMode("all-floors"),await i.Camera.focusOn(g,{axisAlignedPadding:{vertical:i.StackedMaps.distanceBetweenFloors},pitch:90,duration:500}),i.StackedMaps.changeFloorOnElevationChanges(!0),await d(i.currentFloor),await s(i.currentFloor),i.StackedMaps.setFloorVisiblityMode("only-current-floor")),g=i.currentFloor}),i.on("stacked-maps-state-change",({state:u})=>{console.log("stacked-maps-state-change",u)});let h=e.getByType("space");if(a){let u=h.reduce((b,y)=>(b.has(y.floor)||b.set(y.floor,[]),y.name&&y.name!==""&&b.get(y.floor).push(i.Labels.add(y,y.name)),b),new Map);i.on("floor-change",()=>{u.forEach((b,y)=>{b.forEach(m=>{i.updateState(m,{enabled:i.currentFloor===y})})})})}let p=He(e,i,t),f=o!=null?o:[];async function c(){i.Outdoor.setOpacity(.25),f=e.getByType("floor"),await i.Camera.animateTo({pitch:90}),await i.StackedMaps.collapse(),i.StackedMaps.clearCachedFloorSeparationDistance(),await i.StackedMaps.expand({distanceBetweenFloors:"auto"})}return n(c,"expandAll"),p.add("Expand - All",{default:n(async()=>{await c()},"default")},"Stack Maps"),r&&p.add("Expand - Only Navigation",{default:n(async()=>{i.Outdoor.setOpacity(.25),f=r,await i.StackedMaps.collapse(),i.setFloor(r[0]),await i.StackedMaps.expand({includedFloors:r,distanceBetweenFloors:"auto"})},"default")},"Stack Maps"),p.add("Show All Floors",{default:n(async()=>{f=e.getByType("floor"),i.Outdoor.setOpacity(.25),i.StackedMaps.setFloorVisiblityMode("all-floors"),i.StackedMaps.changeFloorOnElevationChanges(!1),i.Camera.setPanMode("elevation"),i.Camera.focusOn(f,{pitch:90})},"default")},"Stack Maps"),p.add("Show Current Floor with padding",{default:n(async()=>{await l()},"default")},"Stack Maps"),p.add("Zoom to Current Floor",{default:n(async()=>{s(i.currentFloor)},"default")},"Stack Maps"),p.add("Collapse",{default:n(()=>{i.Outdoor.setOpacity("initial"),i.StackedMaps.collapse()},"default")},"Stack Maps"),p.add("Default",{default:n(async()=>{i.Camera.setPanMode("default")},"default")},"Camera Pan Mode"),p.add("Elevation",{default:n(async()=>{i.Camera.setPanMode("elevation")},"default")},"Camera Pan Mode"),p.add("zoom in to floor 2",{default:n(async()=>{i.Outdoor.setOpacity(.25),console.log(i.currentFloor.name),await i.Camera.focusOn(i.currentFloor,{axisAlignedPadding:{vertical:i.StackedMaps.distanceBetweenFloors},pitch:90}),i.StackedMaps.expanded||await i.StackedMaps.expand({distanceBetweenFloors:i.StackedMaps.distanceBetweenFloors});let u=i.StackedMaps.includedFloors[2],b=f.findIndex(y=>y.id===u.id);i.StackedMaps.changeFloorOnElevationChanges(!0),i.Camera.setPanMode("elevation"),i.StackedMaps.setFloorVisiblityMode("all-floors"),await i.Camera.animateElevation(b*i.StackedMaps.distanceBetweenFloors),i.Outdoor.setOpacity(.15),console.log("focusing on",u.name),await i.Camera.focusOn(u,{pitch:10}),i.StackedMaps.setFloorVisiblityMode("only-current-floor"),i.Camera.setPanMode("default"),i.StackedMaps.changeFloorOnElevationChanges(!1)},"default")},"Camera Pan Mode"),p.add("All Floors",{default:n(async()=>{i.StackedMaps.setFloorVisiblityMode("all-floors")},"default")},"Visibility Mode"),p.add("Only Active Floor",{default:n(async()=>{i.StackedMaps.setFloorVisiblityMode("only-current-floor")},"default")},"Visibility Mode"),p.add("Up",{default:n(async()=>{let u=f.find(b=>b.elevation===i.currentFloor.elevation+1);u&&await d(u)},"default")},"Floors Up/Down"),p.add("Down",{default:n(async()=>{let u=f.find(b=>b.elevation===i.currentFloor.elevation-1);u&&await d(u)},"default")},"Floors Up/Down"),{zoomToFloor:s,expandAll:c}}n(je,"createStackMapsControl");function Ye(i,e,o){let t=i.addFolder("StackedMaps");t.close(),je(e,o,{root:t,showLabelsPerFloor:!1})}n(Ye,"createStackmapsControl");function Re(i,e,o){ut();let t=new K({title:"SDK Controls"});t.domElement.classList.add("mappedin-js-inspector"),Se(e,i,t),Oe(t,e,o==null?void 0:o.camera);let r=t.addFolder("Levels").close(),a=t.addFolder("Scene Controls");a.close();let s=t.addFolder("Labels");Ge(t,e,i);let l=t.addFolder("Markers");De(t,e),Ye(t,e,i);let d=t.addFolder("misc");ze(t,e,i),Pe(d,e,i);let g={level:e.currentFloor.id},{populatelabels:h}=Le(s,i,e),{populateMarkers:p}=Te(l,i,e),f=i.getByType("floor").reduce((u,b)=>(u[b.name]=b.id,u),{}),c=r.add(g,"level",f).onChange(u=>{e.setFloor(u),g.level=e.currentFloor.id,c.updateDisplay()});return e.on("floor-change-start",u=>{r.controllers[0].setValue(u.floor.id)}),i.getByType("space").forEach(u=>{e.updateState(u,{interactive:!0})}),i.getByType("object").forEach(u=>{e.updateState(u,{interactive:!0})}),i.getByType("object").forEach(u=>{e.updateState(u,{interactive:!0})}),e.setHoverColor("#a2b7e6"),e.Camera.setMaxZoomLevel(20),{populatelabels:h,sceneFolder:a,populateMarkers:p}}n(Re,"createUi");var Ne="mappedin-sdk-debug-css";function ut(){if(document.getElementById(Ne))return;let i=document.createElement("style");i.id=Ne,i.textContent=$e,document.head.appendChild(i)}n(ut,"injectCss");var ye=class ye{constructor(e,o){T(this,"_enabled",!1);T(this,"mv");T(this,"api");T(this,"mapData");T(this,"scenegraphVisualizerMounted",!1);T(this,"storeStateToLocalStorageEnabled",!1);this.mv=e,this.api=o,this.mapData=this.api.getMapData()}setMapData(e){this.mapData=e}async enable(e={}){var t;if(this._enabled)return;if(this._enabled=!0,!this.mapData)throw new Error("Please set mapData before enable debug.");let{sceneFolder:o}=Re(this.mapData,this.mv,e);o.onOpenClose(r=>{r===o&&!r._closed&&!this.scenegraphVisualizerMounted&&(this.scenegraphVisualizerMounted=!0,Ee(this.api.core,o))}),(t=this.api.getMapDataInternal())==null||t.spaces.forEach(r=>{this.mv.updateState(r.id,{interactive:!0})})}get enabled(){return this._enabled}};n(ye,"Inspector");var ve=ye;export{ve as Inspector};
1
+ import{a as Me,c as J,f as P,g as W,j as Ee}from"./chunk-MOOEGGRP.js";import{r as U}from"./chunk-MZY3INHN.js";import"./chunk-WULPIMBT.js";import"./chunk-VPFGFRS7.js";import{S as ke}from"./chunk-2DFVQLLS.js";import{a as C}from"./chunk-VMPZPJW5.js";import{a as r,f as D,g as x,h as T,i as Ae,j as G}from"./chunk-2OY65JNC.js";C();C();C();C();var B=class B{constructor(e,o,t,n,a="div"){this.parent=e,this.object=o,this.property=t,this._disabled=!1,this._hidden=!1,this.initialValue=this.getValue(),this.domElement=document.createElement(a),this.domElement.classList.add("controller"),this.domElement.classList.add(n),this.$name=document.createElement("div"),this.$name.classList.add("name"),B.nextNameID=B.nextNameID||0,this.$name.id="lil-gui-name-".concat(++B.nextNameID),this.$widget=document.createElement("div"),this.$widget.classList.add("widget"),this.$disable=this.$widget,this.domElement.appendChild(this.$name),this.domElement.appendChild(this.$widget),this.domElement.addEventListener("keydown",s=>s.stopPropagation()),this.domElement.addEventListener("keyup",s=>s.stopPropagation()),this.parent.children.push(this),this.parent.controllers.push(this),this.parent.$children.appendChild(this.domElement),this._listenCallback=this._listenCallback.bind(this),this.name(t)}name(e){return this._name=e,this.$name.textContent=e,this}onChange(e){return this._onChange=e,this}_callOnChange(){this.parent._callOnChange(this),this._onChange!==void 0&&this._onChange.call(this,this.getValue()),this._changed=!0}onFinishChange(e){return this._onFinishChange=e,this}_callOnFinishChange(){this._changed&&(this.parent._callOnFinishChange(this),this._onFinishChange!==void 0&&this._onFinishChange.call(this,this.getValue())),this._changed=!1}reset(){return this.setValue(this.initialValue),this._callOnFinishChange(),this}enable(e=!0){return this.disable(!e)}disable(e=!0){return e===this._disabled?this:(this._disabled=e,this.domElement.classList.toggle("disabled",e),this.$disable.toggleAttribute("disabled",e),this)}show(e=!0){return this._hidden=!e,this.domElement.style.display=this._hidden?"none":"",this}hide(){return this.show(!1)}options(e){let o=this.parent.add(this.object,this.property,e);return o.name(this._name),this.destroy(),o}min(e){return this}max(e){return this}step(e){return this}decimals(e){return this}listen(e=!0){return this._listening=e,this._listenCallbackID!==void 0&&(cancelAnimationFrame(this._listenCallbackID),this._listenCallbackID=void 0),this._listening&&this._listenCallback(),this}_listenCallback(){this._listenCallbackID=requestAnimationFrame(this._listenCallback);let e=this.save();e!==this._listenPrevValue&&this.updateDisplay(),this._listenPrevValue=e}getValue(){return this.object[this.property]}setValue(e){return this.getValue()!==e&&(this.object[this.property]=e,this._callOnChange(),this.updateDisplay()),this}updateDisplay(){return this}load(e){return this.setValue(e),this._callOnFinishChange(),this}save(){return this.getValue()}destroy(){this.listen(!1),this.parent.children.splice(this.parent.children.indexOf(this),1),this.parent.controllers.splice(this.parent.controllers.indexOf(this),1),this.parent.$children.removeChild(this.domElement)}};r(B,"Controller");var L=B,re=class re extends L{constructor(e,o,t){super(e,o,t,"boolean","label"),this.$input=document.createElement("input"),this.$input.setAttribute("type","checkbox"),this.$input.setAttribute("aria-labelledby",this.$name.id),this.$widget.appendChild(this.$input),this.$input.addEventListener("change",()=>{this.setValue(this.$input.checked),this._callOnFinishChange()}),this.$disable=this.$input,this.updateDisplay()}updateDisplay(){return this.$input.checked=this.getValue(),this}};r(re,"BooleanController");var V=re;function ee(i){let e,o;return(e=i.match(/(#|0x)?([a-f0-9]{6})/i))?o=e[2]:(e=i.match(/rgb\(\s*(\d*)\s*,\s*(\d*)\s*,\s*(\d*)\s*\)/))?o=parseInt(e[1]).toString(16).padStart(2,0)+parseInt(e[2]).toString(16).padStart(2,0)+parseInt(e[3]).toString(16).padStart(2,0):(e=i.match(/^#?([a-f0-9])([a-f0-9])([a-f0-9])$/i))&&(o=e[1]+e[1]+e[2]+e[2]+e[3]+e[3]),o?"#"+o:!1}r(ee,"normalizeColorString");var Je={isPrimitive:!0,match:r(i=>typeof i=="string","match"),fromHexString:ee,toHexString:ee},j={isPrimitive:!0,match:r(i=>typeof i=="number","match"),fromHexString:r(i=>parseInt(i.substring(1),16),"fromHexString"),toHexString:r(i=>"#"+i.toString(16).padStart(6,0),"toHexString")},We={isPrimitive:!1,match:r(i=>Array.isArray(i),"match"),fromHexString(i,e,o=1){let t=j.fromHexString(i);e[0]=(t>>16&255)/255*o,e[1]=(t>>8&255)/255*o,e[2]=(t&255)/255*o},toHexString([i,e,o],t=1){t=255/t;let n=i*t<<16^e*t<<8^o*t<<0;return j.toHexString(n)}},Xe={isPrimitive:!1,match:r(i=>Object(i)===i,"match"),fromHexString(i,e,o=1){let t=j.fromHexString(i);e.r=(t>>16&255)/255*o,e.g=(t>>8&255)/255*o,e.b=(t&255)/255*o},toHexString({r:i,g:e,b:o},t=1){t=255/t;let n=i*t<<16^e*t<<8^o*t<<0;return j.toHexString(n)}},Ke=[Je,j,We,Xe];function Ze(i){return Ke.find(e=>e.match(i))}r(Ze,"getColorFormat");var se=class se extends L{constructor(e,o,t,n){super(e,o,t,"color"),this.$input=document.createElement("input"),this.$input.setAttribute("type","color"),this.$input.setAttribute("tabindex",-1),this.$input.setAttribute("aria-labelledby",this.$name.id),this.$text=document.createElement("input"),this.$text.setAttribute("type","text"),this.$text.setAttribute("spellcheck","false"),this.$text.setAttribute("aria-labelledby",this.$name.id),this.$display=document.createElement("div"),this.$display.classList.add("display"),this.$display.appendChild(this.$input),this.$widget.appendChild(this.$display),this.$widget.appendChild(this.$text),this._format=Ze(this.initialValue),this._rgbScale=n,this._initialValueHexString=this.save(),this._textFocused=!1,this.$input.addEventListener("input",()=>{this._setValueFromHexString(this.$input.value)}),this.$input.addEventListener("blur",()=>{this._callOnFinishChange()}),this.$text.addEventListener("input",()=>{let a=ee(this.$text.value);a&&this._setValueFromHexString(a)}),this.$text.addEventListener("focus",()=>{this._textFocused=!0,this.$text.select()}),this.$text.addEventListener("blur",()=>{this._textFocused=!1,this.updateDisplay(),this._callOnFinishChange()}),this.$disable=this.$text,this.updateDisplay()}reset(){return this._setValueFromHexString(this._initialValueHexString),this}_setValueFromHexString(e){if(this._format.isPrimitive){let o=this._format.fromHexString(e);this.setValue(o)}else this._format.fromHexString(e,this.getValue(),this._rgbScale),this._callOnChange(),this.updateDisplay()}save(){return this._format.toHexString(this.getValue(),this._rgbScale)}load(e){return this._setValueFromHexString(e),this._callOnFinishChange(),this}updateDisplay(){return this.$input.value=this._format.toHexString(this.getValue(),this._rgbScale),this._textFocused||(this.$text.value=this.$input.value.substring(1)),this.$display.style.backgroundColor=this.$input.value,this}};r(se,"ColorController");var te=se,ae=class ae extends L{constructor(e,o,t){super(e,o,t,"function"),this.$button=document.createElement("button"),this.$button.appendChild(this.$name),this.$widget.appendChild(this.$button),this.$button.addEventListener("click",n=>{n.preventDefault(),this.getValue().call(this.object),this._callOnChange()}),this.$button.addEventListener("touchstart",()=>{},{passive:!0}),this.$disable=this.$button}};r(ae,"FunctionController");var H=ae,le=class le extends L{constructor(e,o,t,n,a,s){super(e,o,t,"number"),this._initInput(),this.min(n),this.max(a);let l=s!==void 0;this.step(l?s:this._getImplicitStep(),l),this.updateDisplay()}decimals(e){return this._decimals=e,this.updateDisplay(),this}min(e){return this._min=e,this._onUpdateMinMax(),this}max(e){return this._max=e,this._onUpdateMinMax(),this}step(e,o=!0){return this._step=e,this._stepExplicit=o,this}updateDisplay(){let e=this.getValue();if(this._hasSlider){let o=(e-this._min)/(this._max-this._min);o=Math.max(0,Math.min(o,1)),this.$fill.style.width=o*100+"%"}return this._inputFocused||(this.$input.value=this._decimals===void 0?e:e.toFixed(this._decimals)),this}_initInput(){this.$input=document.createElement("input"),this.$input.setAttribute("type","text"),this.$input.setAttribute("aria-labelledby",this.$name.id),window.matchMedia("(pointer: coarse)").matches&&(this.$input.setAttribute("type","number"),this.$input.setAttribute("step","any")),this.$widget.appendChild(this.$input),this.$disable=this.$input;let o=r(()=>{let v=parseFloat(this.$input.value);isNaN(v)||(this._stepExplicit&&(v=this._snap(v)),this.setValue(this._clamp(v)))},"onInput"),t=r(v=>{let k=parseFloat(this.$input.value);isNaN(k)||(this._snapClampSetValue(k+v),this.$input.value=this.getValue())},"increment"),n=r(v=>{v.key==="Enter"&&this.$input.blur(),v.code==="ArrowUp"&&(v.preventDefault(),t(this._step*this._arrowKeyMultiplier(v))),v.code==="ArrowDown"&&(v.preventDefault(),t(this._step*this._arrowKeyMultiplier(v)*-1))},"onKeyDown"),a=r(v=>{this._inputFocused&&(v.preventDefault(),t(this._step*this._normalizeMouseWheel(v)))},"onWheel"),s=!1,l,d,g,h,p,f=5,c=r(v=>{l=v.clientX,d=g=v.clientY,s=!0,h=this.getValue(),p=0,window.addEventListener("mousemove",u),window.addEventListener("mouseup",b)},"onMouseDown"),u=r(v=>{if(s){let k=v.clientX-l,O=v.clientY-d;Math.abs(O)>f?(v.preventDefault(),this.$input.blur(),s=!1,this._setDraggingStyle(!0,"vertical")):Math.abs(k)>f&&b()}if(!s){let k=v.clientY-g;p-=k*this._step*this._arrowKeyMultiplier(v),h+p>this._max?p=this._max-h:h+p<this._min&&(p=this._min-h),this._snapClampSetValue(h+p)}g=v.clientY},"onMouseMove"),b=r(()=>{this._setDraggingStyle(!1,"vertical"),this._callOnFinishChange(),window.removeEventListener("mousemove",u),window.removeEventListener("mouseup",b)},"onMouseUp"),y=r(()=>{this._inputFocused=!0},"onFocus"),m=r(()=>{this._inputFocused=!1,this.updateDisplay(),this._callOnFinishChange()},"onBlur");this.$input.addEventListener("input",o),this.$input.addEventListener("keydown",n),this.$input.addEventListener("wheel",a,{passive:!1}),this.$input.addEventListener("mousedown",c),this.$input.addEventListener("focus",y),this.$input.addEventListener("blur",m)}_initSlider(){this._hasSlider=!0,this.$slider=document.createElement("div"),this.$slider.classList.add("slider"),this.$fill=document.createElement("div"),this.$fill.classList.add("fill"),this.$slider.appendChild(this.$fill),this.$widget.insertBefore(this.$slider,this.$input),this.domElement.classList.add("hasSlider");let e=r((m,v,k,O,R)=>(m-v)/(k-v)*(R-O)+O,"map"),o=r(m=>{let v=this.$slider.getBoundingClientRect(),k=e(m,v.left,v.right,this._min,this._max);this._snapClampSetValue(k)},"setValueFromX"),t=r(m=>{this._setDraggingStyle(!0),o(m.clientX),window.addEventListener("mousemove",n),window.addEventListener("mouseup",a)},"mouseDown"),n=r(m=>{o(m.clientX)},"mouseMove"),a=r(()=>{this._callOnFinishChange(),this._setDraggingStyle(!1),window.removeEventListener("mousemove",n),window.removeEventListener("mouseup",a)},"mouseUp"),s=!1,l,d,g=r(m=>{m.preventDefault(),this._setDraggingStyle(!0),o(m.touches[0].clientX),s=!1},"beginTouchDrag"),h=r(m=>{m.touches.length>1||(this._hasScrollBar?(l=m.touches[0].clientX,d=m.touches[0].clientY,s=!0):g(m),window.addEventListener("touchmove",p,{passive:!1}),window.addEventListener("touchend",f))},"onTouchStart"),p=r(m=>{if(s){let v=m.touches[0].clientX-l,k=m.touches[0].clientY-d;Math.abs(v)>Math.abs(k)?g(m):(window.removeEventListener("touchmove",p),window.removeEventListener("touchend",f))}else m.preventDefault(),o(m.touches[0].clientX)},"onTouchMove"),f=r(()=>{this._callOnFinishChange(),this._setDraggingStyle(!1),window.removeEventListener("touchmove",p),window.removeEventListener("touchend",f)},"onTouchEnd"),c=this._callOnFinishChange.bind(this),u=400,b,y=r(m=>{if(Math.abs(m.deltaX)<Math.abs(m.deltaY)&&this._hasScrollBar)return;m.preventDefault();let k=this._normalizeMouseWheel(m)*this._step;this._snapClampSetValue(this.getValue()+k),this.$input.value=this.getValue(),clearTimeout(b),b=setTimeout(c,u)},"onWheel");this.$slider.addEventListener("mousedown",t),this.$slider.addEventListener("touchstart",h,{passive:!1}),this.$slider.addEventListener("wheel",y,{passive:!1})}_setDraggingStyle(e,o="horizontal"){this.$slider&&this.$slider.classList.toggle("active",e),document.body.classList.toggle("lil-gui-dragging",e),document.body.classList.toggle("lil-gui-".concat(o),e)}_getImplicitStep(){return this._hasMin&&this._hasMax?(this._max-this._min)/1e3:.1}_onUpdateMinMax(){!this._hasSlider&&this._hasMin&&this._hasMax&&(this._stepExplicit||this.step(this._getImplicitStep(),!1),this._initSlider(),this.updateDisplay())}_normalizeMouseWheel(e){let{deltaX:o,deltaY:t}=e;return Math.floor(e.deltaY)!==e.deltaY&&e.wheelDelta&&(o=0,t=-e.wheelDelta/120,t*=this._stepExplicit?1:10),o+-t}_arrowKeyMultiplier(e){let o=this._stepExplicit?1:10;return e.shiftKey?o*=10:e.altKey&&(o/=10),o}_snap(e){let o=Math.round(e/this._step)*this._step;return parseFloat(o.toPrecision(15))}_clamp(e){return e<this._min&&(e=this._min),e>this._max&&(e=this._max),e}_snapClampSetValue(e){this.setValue(this._clamp(this._snap(e)))}get _hasScrollBar(){let e=this.parent.root.$children;return e.scrollHeight>e.clientHeight}get _hasMin(){return this._min!==void 0}get _hasMax(){return this._max!==void 0}};r(le,"NumberController");var ie=le,de=class de extends L{constructor(e,o,t,n){super(e,o,t,"option"),this.$select=document.createElement("select"),this.$select.setAttribute("aria-labelledby",this.$name.id),this.$display=document.createElement("div"),this.$display.classList.add("display"),this.$select.addEventListener("change",()=>{this.setValue(this._values[this.$select.selectedIndex]),this._callOnFinishChange()}),this.$select.addEventListener("focus",()=>{this.$display.classList.add("focus")}),this.$select.addEventListener("blur",()=>{this.$display.classList.remove("focus")}),this.$widget.appendChild(this.$select),this.$widget.appendChild(this.$display),this.$disable=this.$select,this.options(n)}options(e){return this._values=Array.isArray(e)?e:Object.values(e),this._names=Array.isArray(e)?e:Object.keys(e),this.$select.replaceChildren(),this._names.forEach(o=>{let t=document.createElement("option");t.textContent=o,this.$select.appendChild(t)}),this.updateDisplay(),this}updateDisplay(){let e=this.getValue(),o=this._values.indexOf(e);return this.$select.selectedIndex=o,this.$display.textContent=o===-1?e:this._names[o],this}};r(de,"OptionController");var oe=de,ce=class ce extends L{constructor(e,o,t){super(e,o,t,"string"),this.$input=document.createElement("input"),this.$input.setAttribute("type","text"),this.$input.setAttribute("spellcheck","false"),this.$input.setAttribute("aria-labelledby",this.$name.id),this.$input.addEventListener("input",()=>{this.setValue(this.$input.value)}),this.$input.addEventListener("keydown",n=>{n.code==="Enter"&&this.$input.blur()}),this.$input.addEventListener("blur",()=>{this._callOnFinishChange()}),this.$widget.appendChild(this.$input),this.$disable=this.$input,this.updateDisplay()}updateDisplay(){return this.$input.value=this.getValue(),this}};r(ce,"StringController");var ne=ce,Qe='.lil-gui {\n font-family: var(--font-family);\n font-size: var(--font-size);\n line-height: 1;\n font-weight: normal;\n font-style: normal;\n text-align: left;\n color: var(--text-color);\n user-select: none;\n -webkit-user-select: none;\n touch-action: manipulation;\n --background-color: #1f1f1f;\n --text-color: #ebebeb;\n --title-background-color: #111111;\n --title-text-color: #ebebeb;\n --widget-color: #424242;\n --hover-color: #4f4f4f;\n --focus-color: #595959;\n --number-color: #2cc9ff;\n --string-color: #a2db3c;\n --font-size: 11px;\n --input-font-size: 11px;\n --font-family: -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, Arial, sans-serif;\n --font-family-mono: Menlo, Monaco, Consolas, "Droid Sans Mono", monospace;\n --padding: 4px;\n --spacing: 4px;\n --widget-height: 20px;\n --title-height: calc(var(--widget-height) + var(--spacing) * 1.25);\n --name-width: 45%;\n --slider-knob-width: 2px;\n --slider-input-width: 27%;\n --color-input-width: 27%;\n --slider-input-min-width: 45px;\n --color-input-min-width: 45px;\n --folder-indent: 7px;\n --widget-padding: 0 0 0 3px;\n --widget-border-radius: 2px;\n --checkbox-size: calc(0.75 * var(--widget-height));\n --scrollbar-width: 5px;\n}\n.lil-gui, .lil-gui * {\n box-sizing: border-box;\n margin: 0;\n padding: 0;\n}\n.lil-gui.root {\n width: var(--width, 245px);\n display: flex;\n flex-direction: column;\n background: var(--background-color);\n}\n.lil-gui.root > .title {\n background: var(--title-background-color);\n color: var(--title-text-color);\n}\n.lil-gui.root > .children {\n overflow-x: hidden;\n overflow-y: auto;\n}\n.lil-gui.root > .children::-webkit-scrollbar {\n width: var(--scrollbar-width);\n height: var(--scrollbar-width);\n background: var(--background-color);\n}\n.lil-gui.root > .children::-webkit-scrollbar-thumb {\n border-radius: var(--scrollbar-width);\n background: var(--focus-color);\n}\n@media (pointer: coarse) {\n .lil-gui.allow-touch-styles, .lil-gui.allow-touch-styles .lil-gui {\n --widget-height: 28px;\n --padding: 6px;\n --spacing: 6px;\n --font-size: 13px;\n --input-font-size: 16px;\n --folder-indent: 10px;\n --scrollbar-width: 7px;\n --slider-input-min-width: 50px;\n --color-input-min-width: 65px;\n }\n}\n.lil-gui.force-touch-styles, .lil-gui.force-touch-styles .lil-gui {\n --widget-height: 28px;\n --padding: 6px;\n --spacing: 6px;\n --font-size: 13px;\n --input-font-size: 16px;\n --folder-indent: 10px;\n --scrollbar-width: 7px;\n --slider-input-min-width: 50px;\n --color-input-min-width: 65px;\n}\n.lil-gui.autoPlace {\n max-height: 100%;\n position: fixed;\n top: 0;\n right: 15px;\n z-index: 1001;\n}\n\n.lil-gui .controller {\n display: flex;\n align-items: center;\n padding: 0 var(--padding);\n margin: var(--spacing) 0;\n}\n.lil-gui .controller.disabled {\n opacity: 0.5;\n}\n.lil-gui .controller.disabled, .lil-gui .controller.disabled * {\n pointer-events: none !important;\n}\n.lil-gui .controller > .name {\n min-width: var(--name-width);\n flex-shrink: 0;\n white-space: pre;\n padding-right: var(--spacing);\n line-height: var(--widget-height);\n}\n.lil-gui .controller .widget {\n position: relative;\n display: flex;\n align-items: center;\n width: 100%;\n min-height: var(--widget-height);\n}\n.lil-gui .controller.string input {\n color: var(--string-color);\n}\n.lil-gui .controller.boolean {\n cursor: pointer;\n}\n.lil-gui .controller.color .display {\n width: 100%;\n height: var(--widget-height);\n border-radius: var(--widget-border-radius);\n position: relative;\n}\n@media (hover: hover) {\n .lil-gui .controller.color .display:hover:before {\n content: " ";\n display: block;\n position: absolute;\n border-radius: var(--widget-border-radius);\n border: 1px solid #fff9;\n top: 0;\n right: 0;\n bottom: 0;\n left: 0;\n }\n}\n.lil-gui .controller.color input[type=color] {\n opacity: 0;\n width: 100%;\n height: 100%;\n cursor: pointer;\n}\n.lil-gui .controller.color input[type=text] {\n margin-left: var(--spacing);\n font-family: var(--font-family-mono);\n min-width: var(--color-input-min-width);\n width: var(--color-input-width);\n flex-shrink: 0;\n}\n.lil-gui .controller.option select {\n opacity: 0;\n position: absolute;\n width: 100%;\n max-width: 100%;\n}\n.lil-gui .controller.option .display {\n position: relative;\n pointer-events: none;\n border-radius: var(--widget-border-radius);\n height: var(--widget-height);\n line-height: var(--widget-height);\n max-width: 100%;\n overflow: hidden;\n word-break: break-all;\n padding-left: 0.55em;\n padding-right: 1.75em;\n background: var(--widget-color);\n}\n@media (hover: hover) {\n .lil-gui .controller.option .display.focus {\n background: var(--focus-color);\n }\n}\n.lil-gui .controller.option .display.active {\n background: var(--focus-color);\n}\n.lil-gui .controller.option .display:after {\n font-family: "lil-gui";\n content: "\u2195";\n position: absolute;\n top: 0;\n right: 0;\n bottom: 0;\n padding-right: 0.375em;\n}\n.lil-gui .controller.option .widget,\n.lil-gui .controller.option select {\n cursor: pointer;\n}\n@media (hover: hover) {\n .lil-gui .controller.option .widget:hover .display {\n background: var(--hover-color);\n }\n}\n.lil-gui .controller.number input {\n color: var(--number-color);\n}\n.lil-gui .controller.number.hasSlider input {\n margin-left: var(--spacing);\n width: var(--slider-input-width);\n min-width: var(--slider-input-min-width);\n flex-shrink: 0;\n}\n.lil-gui .controller.number .slider {\n width: 100%;\n height: var(--widget-height);\n background: var(--widget-color);\n border-radius: var(--widget-border-radius);\n padding-right: var(--slider-knob-width);\n overflow: hidden;\n cursor: ew-resize;\n touch-action: pan-y;\n}\n@media (hover: hover) {\n .lil-gui .controller.number .slider:hover {\n background: var(--hover-color);\n }\n}\n.lil-gui .controller.number .slider.active {\n background: var(--focus-color);\n}\n.lil-gui .controller.number .slider.active .fill {\n opacity: 0.95;\n}\n.lil-gui .controller.number .fill {\n height: 100%;\n border-right: var(--slider-knob-width) solid var(--number-color);\n box-sizing: content-box;\n}\n\n.lil-gui-dragging .lil-gui {\n --hover-color: var(--widget-color);\n}\n.lil-gui-dragging * {\n cursor: ew-resize !important;\n}\n\n.lil-gui-dragging.lil-gui-vertical * {\n cursor: ns-resize !important;\n}\n\n.lil-gui .title {\n height: var(--title-height);\n line-height: calc(var(--title-height) - 4px);\n font-weight: 600;\n padding: 0 var(--padding);\n -webkit-tap-highlight-color: transparent;\n cursor: pointer;\n outline: none;\n text-decoration-skip: objects;\n}\n.lil-gui .title:before {\n font-family: "lil-gui";\n content: "\u25BE";\n padding-right: 2px;\n display: inline-block;\n}\n.lil-gui .title:active {\n background: var(--title-background-color);\n opacity: 0.75;\n}\n@media (hover: hover) {\n body:not(.lil-gui-dragging) .lil-gui .title:hover {\n background: var(--title-background-color);\n opacity: 0.85;\n }\n .lil-gui .title:focus {\n text-decoration: underline var(--focus-color);\n }\n}\n.lil-gui.root > .title:focus {\n text-decoration: none !important;\n}\n.lil-gui.closed > .title:before {\n content: "\u25B8";\n}\n.lil-gui.closed > .children {\n transform: translateY(-7px);\n opacity: 0;\n}\n.lil-gui.closed:not(.transition) > .children {\n display: none;\n}\n.lil-gui.transition > .children {\n transition-duration: 300ms;\n transition-property: height, opacity, transform;\n transition-timing-function: cubic-bezier(0.2, 0.6, 0.35, 1);\n overflow: hidden;\n pointer-events: none;\n}\n.lil-gui .children:empty:before {\n content: "Empty";\n padding: 0 var(--padding);\n margin: var(--spacing) 0;\n display: block;\n height: var(--widget-height);\n font-style: italic;\n line-height: var(--widget-height);\n opacity: 0.5;\n}\n.lil-gui.root > .children > .lil-gui > .title {\n border: 0 solid var(--widget-color);\n border-width: 1px 0;\n transition: border-color 300ms;\n}\n.lil-gui.root > .children > .lil-gui.closed > .title {\n border-bottom-color: transparent;\n}\n.lil-gui + .controller {\n border-top: 1px solid var(--widget-color);\n margin-top: 0;\n padding-top: var(--spacing);\n}\n.lil-gui .lil-gui .lil-gui > .title {\n border: none;\n}\n.lil-gui .lil-gui .lil-gui > .children {\n border: none;\n margin-left: var(--folder-indent);\n border-left: 2px solid var(--widget-color);\n}\n.lil-gui .lil-gui .controller {\n border: none;\n}\n\n.lil-gui label, .lil-gui input, .lil-gui button {\n -webkit-tap-highlight-color: transparent;\n}\n.lil-gui input {\n border: 0;\n outline: none;\n font-family: var(--font-family);\n font-size: var(--input-font-size);\n border-radius: var(--widget-border-radius);\n height: var(--widget-height);\n background: var(--widget-color);\n color: var(--text-color);\n width: 100%;\n}\n@media (hover: hover) {\n .lil-gui input:hover {\n background: var(--hover-color);\n }\n .lil-gui input:active {\n background: var(--focus-color);\n }\n}\n.lil-gui input:disabled {\n opacity: 1;\n}\n.lil-gui input[type=text],\n.lil-gui input[type=number] {\n padding: var(--widget-padding);\n -moz-appearance: textfield;\n}\n.lil-gui input[type=text]:focus,\n.lil-gui input[type=number]:focus {\n background: var(--focus-color);\n}\n.lil-gui input[type=checkbox] {\n appearance: none;\n width: var(--checkbox-size);\n height: var(--checkbox-size);\n border-radius: var(--widget-border-radius);\n text-align: center;\n cursor: pointer;\n}\n.lil-gui input[type=checkbox]:checked:before {\n font-family: "lil-gui";\n content: "\u2713";\n font-size: var(--checkbox-size);\n line-height: var(--checkbox-size);\n}\n@media (hover: hover) {\n .lil-gui input[type=checkbox]:focus {\n box-shadow: inset 0 0 0 1px var(--focus-color);\n }\n}\n.lil-gui button {\n outline: none;\n cursor: pointer;\n font-family: var(--font-family);\n font-size: var(--font-size);\n color: var(--text-color);\n width: 100%;\n height: var(--widget-height);\n text-transform: none;\n background: var(--widget-color);\n border-radius: var(--widget-border-radius);\n border: none;\n}\n@media (hover: hover) {\n .lil-gui button:hover {\n background: var(--hover-color);\n }\n .lil-gui button:focus {\n box-shadow: inset 0 0 0 1px var(--focus-color);\n }\n}\n.lil-gui button:active {\n background: var(--focus-color);\n}\n\n@font-face {\n font-family: "lil-gui";\n src: url("data:application/font-woff;charset=utf-8;base64,d09GRgABAAAAAAUsAAsAAAAACJwAAQAAAAAAAAAAAAAAAAAAAAAAAAAAAABHU1VCAAABCAAAAH4AAADAImwmYE9TLzIAAAGIAAAAPwAAAGBKqH5SY21hcAAAAcgAAAD0AAACrukyyJBnbHlmAAACvAAAAF8AAACEIZpWH2hlYWQAAAMcAAAAJwAAADZfcj2zaGhlYQAAA0QAAAAYAAAAJAC5AHhobXR4AAADXAAAABAAAABMAZAAAGxvY2EAAANsAAAAFAAAACgCEgIybWF4cAAAA4AAAAAeAAAAIAEfABJuYW1lAAADoAAAASIAAAIK9SUU/XBvc3QAAATEAAAAZgAAAJCTcMc2eJxVjbEOgjAURU+hFRBK1dGRL+ALnAiToyMLEzFpnPz/eAshwSa97517c/MwwJmeB9kwPl+0cf5+uGPZXsqPu4nvZabcSZldZ6kfyWnomFY/eScKqZNWupKJO6kXN3K9uCVoL7iInPr1X5baXs3tjuMqCtzEuagm/AAlzQgPAAB4nGNgYRBlnMDAysDAYM/gBiT5oLQBAwuDJAMDEwMrMwNWEJDmmsJwgCFeXZghBcjlZMgFCzOiKOIFAB71Bb8AeJy1kjFuwkAQRZ+DwRAwBtNQRUGKQ8OdKCAWUhAgKLhIuAsVSpWz5Bbkj3dEgYiUIszqWdpZe+Z7/wB1oCYmIoboiwiLT2WjKl/jscrHfGg/pKdMkyklC5Zs2LEfHYpjcRoPzme9MWWmk3dWbK9ObkWkikOetJ554fWyoEsmdSlt+uR0pCJR34b6t/TVg1SY3sYvdf8vuiKrpyaDXDISiegp17p7579Gp3p++y7HPAiY9pmTibljrr85qSidtlg4+l25GLCaS8e6rRxNBmsnERunKbaOObRz7N72ju5vdAjYpBXHgJylOAVsMseDAPEP8LYoUHicY2BiAAEfhiAGJgZWBgZ7RnFRdnVJELCQlBSRlATJMoLV2DK4glSYs6ubq5vbKrJLSbGrgEmovDuDJVhe3VzcXFwNLCOILB/C4IuQ1xTn5FPilBTj5FPmBAB4WwoqAHicY2BkYGAA4sk1sR/j+W2+MnAzpDBgAyEMQUCSg4EJxAEAwUgFHgB4nGNgZGBgSGFggJMhDIwMqEAYAByHATJ4nGNgAIIUNEwmAABl3AGReJxjYAACIQYlBiMGJ3wQAEcQBEV4nGNgZGBgEGZgY2BiAAEQyQWEDAz/wXwGAAsPATIAAHicXdBNSsNAHAXwl35iA0UQXYnMShfS9GPZA7T7LgIu03SSpkwzYTIt1BN4Ak/gKTyAeCxfw39jZkjymzcvAwmAW/wgwHUEGDb36+jQQ3GXGot79L24jxCP4gHzF/EIr4jEIe7wxhOC3g2TMYy4Q7+Lu/SHuEd/ivt4wJd4wPxbPEKMX3GI5+DJFGaSn4qNzk8mcbKSR6xdXdhSzaOZJGtdapd4vVPbi6rP+cL7TGXOHtXKll4bY1Xl7EGnPtp7Xy2n00zyKLVHfkHBa4IcJ2oD3cgggWvt/V/FbDrUlEUJhTn/0azVWbNTNr0Ens8de1tceK9xZmfB1CPjOmPH4kitmvOubcNpmVTN3oFJyjzCvnmrwhJTzqzVj9jiSX911FjeAAB4nG3HMRKCMBBA0f0giiKi4DU8k0V2GWbIZDOh4PoWWvq6J5V8If9NVNQcaDhyouXMhY4rPTcG7jwYmXhKq8Wz+p762aNaeYXom2n3m2dLTVgsrCgFJ7OTmIkYbwIbC6vIB7WmFfAAAA==") format("woff");\n}';function qe(i){let e=document.createElement("style");e.innerHTML=i;let o=document.querySelector("head link[rel=stylesheet], head style");o?document.head.insertBefore(e,o):document.head.appendChild(e)}r(qe,"_injectStyles");var we=!1,X=class X{constructor({parent:e,autoPlace:o=e===void 0,container:t,width:n,title:a="Controls",closeFolders:s=!1,injectStyles:l=!0,touchStyles:d=!0}={}){if(this.parent=e,this.root=e?e.root:this,this.children=[],this.controllers=[],this.folders=[],this._closed=!1,this._hidden=!1,this.domElement=document.createElement("div"),this.domElement.classList.add("lil-gui"),this.$title=document.createElement("div"),this.$title.classList.add("title"),this.$title.setAttribute("role","button"),this.$title.setAttribute("aria-expanded",!0),this.$title.setAttribute("tabindex",0),this.$title.addEventListener("click",()=>this.openAnimated(this._closed)),this.$title.addEventListener("keydown",g=>{(g.code==="Enter"||g.code==="Space")&&(g.preventDefault(),this.$title.click())}),this.$title.addEventListener("touchstart",()=>{},{passive:!0}),this.$children=document.createElement("div"),this.$children.classList.add("children"),this.domElement.appendChild(this.$title),this.domElement.appendChild(this.$children),this.title(a),this.parent){this.parent.children.push(this),this.parent.folders.push(this),this.parent.$children.appendChild(this.domElement);return}this.domElement.classList.add("root"),d&&this.domElement.classList.add("allow-touch-styles"),!we&&l&&(qe(Qe),we=!0),t?t.appendChild(this.domElement):o&&(this.domElement.classList.add("autoPlace"),document.body.appendChild(this.domElement)),n&&this.domElement.style.setProperty("--width",n+"px"),this._closeFolders=s}add(e,o,t,n,a){if(Object(t)===t)return new oe(this,e,o,t);let s=e[o];switch(typeof s){case"number":return new ie(this,e,o,t,n,a);case"boolean":return new V(this,e,o);case"string":return new ne(this,e,o);case"function":return new H(this,e,o)}console.error("gui.add failed\n property:",o,"\n object:",e,"\n value:",s)}addColor(e,o,t=1){return new te(this,e,o,t)}addFolder(e){let o=new X({parent:this,title:e});return this.root._closeFolders&&o.close(),o}load(e,o=!0){return e.controllers&&this.controllers.forEach(t=>{t instanceof H||t._name in e.controllers&&t.load(e.controllers[t._name])}),o&&e.folders&&this.folders.forEach(t=>{t._title in e.folders&&t.load(e.folders[t._title])}),this}save(e=!0){let o={controllers:{},folders:{}};return this.controllers.forEach(t=>{if(!(t instanceof H)){if(t._name in o.controllers)throw new Error('Cannot save GUI with duplicate property "'.concat(t._name,'"'));o.controllers[t._name]=t.save()}}),e&&this.folders.forEach(t=>{if(t._title in o.folders)throw new Error('Cannot save GUI with duplicate folder "'.concat(t._title,'"'));o.folders[t._title]=t.save()}),o}open(e=!0){return this._setClosed(!e),this.$title.setAttribute("aria-expanded",!this._closed),this.domElement.classList.toggle("closed",this._closed),this}close(){return this.open(!1)}_setClosed(e){this._closed!==e&&(this._closed=e,this._callOnOpenClose(this))}show(e=!0){return this._hidden=!e,this.domElement.style.display=this._hidden?"none":"",this}hide(){return this.show(!1)}openAnimated(e=!0){return this._setClosed(!e),this.$title.setAttribute("aria-expanded",!this._closed),requestAnimationFrame(()=>{let o=this.$children.clientHeight;this.$children.style.height=o+"px",this.domElement.classList.add("transition");let t=r(a=>{a.target===this.$children&&(this.$children.style.height="",this.domElement.classList.remove("transition"),this.$children.removeEventListener("transitionend",t))},"onTransitionEnd");this.$children.addEventListener("transitionend",t);let n=e?this.$children.scrollHeight:0;this.domElement.classList.toggle("closed",!e),requestAnimationFrame(()=>{this.$children.style.height=n+"px"})}),this}title(e){return this._title=e,this.$title.textContent=e,this}reset(e=!0){return(e?this.controllersRecursive():this.controllers).forEach(t=>t.reset()),this}onChange(e){return this._onChange=e,this}_callOnChange(e){this.parent&&this.parent._callOnChange(e),this._onChange!==void 0&&this._onChange.call(this,{object:e.object,property:e.property,value:e.getValue(),controller:e})}onFinishChange(e){return this._onFinishChange=e,this}_callOnFinishChange(e){this.parent&&this.parent._callOnFinishChange(e),this._onFinishChange!==void 0&&this._onFinishChange.call(this,{object:e.object,property:e.property,value:e.getValue(),controller:e})}onOpenClose(e){return this._onOpenClose=e,this}_callOnOpenClose(e){this.parent&&this.parent._callOnOpenClose(e),this._onOpenClose!==void 0&&this._onOpenClose.call(this,e)}destroy(){this.parent&&(this.parent.children.splice(this.parent.children.indexOf(this),1),this.parent.folders.splice(this.parent.folders.indexOf(this),1)),this.domElement.parentElement&&this.domElement.parentElement.removeChild(this.domElement),Array.from(this.children).forEach(e=>e.destroy())}controllersRecursive(){let e=Array.from(this.controllers);return this.folders.forEach(o=>{e=e.concat(o.controllersRecursive())}),e}foldersRecursive(){let e=Array.from(this.folders);return this.folders.forEach(o=>{e=e.concat(o.foldersRecursive())}),e}};r(X,"GUI");var z=X,K=z;C();C();var _=(()=>{let i=new ke;return r(function(o){return i.set(o),"#".concat(i.getHexString())},"normalize")})();function _e(i){let e;for(e of i)e()}r(_e,"runAll");function he(i,e){let o=window.location.href,t=new URL(o),n=new URLSearchParams(t.search);for(let a in i)if(i.hasOwnProperty(a)){let s="".concat(e,".").concat(a);n.set(s,i[a])}t.search=n.toString(),history.pushState({path:t.toString()},"",t.toString())}r(he,"updateCurrentUrlParamsWithNamespace");function ue(i,e){let o=new URLSearchParams(window.location.search),t={};for(let[n,a]of o)if(n.startsWith("".concat(i,"."))){let s=n.slice(i.length+1);a==="true"||a==="false"?t[s]=a==="true":typeof(e==null?void 0:e[s])=="number"?t[s]=Number(a):t[s]=a}return{namespace:i,params:t}}r(ue,"getUrlParamsWithNamespace");var Ve=["interactive"];function Z(i,e,o){var n,a;let t=o.addFolder("".concat(e.type,"-").concat(e.id));for(let s in e){if(s==="visible"&&t.add(e,s).onChange(l=>{i.updateState(e.id,{[s]:l})}),s==="color"||s==="hoverColor"){e[s]=_(e[s]),t.addColor(e,s).onChange(l=>{i.updateState(e.id,{[s]:l})});continue}if(s==="height"){t.add(e,s,0,20,1).onChange(l=>{i.updateState(e.id,{[s]:l})});continue}if(s==="texture"&&e.texture){(n=t.addFolder("Texture - side").add(e,"texture"))==null||n.onChange(d=>{i.updateState(e.id,{texture:{url:d}})});continue}if(s==="topTexture"&&e.topTexture){(a=t.addFolder("Texture - top").add(e,"topTexture"))==null||a.onChange(d=>{i.updateState(e.id,{topTexture:{url:d}})});continue}if(s==="opacity"){t.add(e,s,0,1,.1).onChange(l=>{i.updateState(e.id,{[s]:l})});continue}Ve.includes(s)&&t.add(e,s).onChange(l=>{i.updateState(e.id,{[s]:l})})}return e.isInView&&(t.add(e,"isInView").listen().disable(),t.add(e,"isInViewCheck")),{cleanup(){t.destroy()}}}r(Z,"renderByProp");C();C();function et(){let i=[];function e(n,a){var d;let s=Object.values(n.getMapData())[0],l=a;if(l&&J.is(l)){let g=(d=s.getByType("enterprise-location"))==null?void 0:d.find(h=>h.spaces.some(p=>p.id===l.id));g&&(l=g)}return l}r(e,"getHighlightTarget");async function o(n,a){return a instanceof W?n.Camera.focusOn(a.locations.flatMap(s=>s.spaces),Y):a instanceof P?n.Camera.focusOn(a.spaces,Y):n.Camera.focusOn(a,Y)}r(o,"focusOn");function t(n,a,{focus:s=!1}={}){if(!window.enableHighlightCard)return()=>{};let l=e(n,a),d=document.createElement("div");if(d.style.cssText="\n position: absolute;\n top: 20px;\n left: 20px;\n background-color: rgba(30, 30, 30, 0.95);\n box-shadow: 0 4px 20px rgba(0, 0, 0, 0.3);\n border-radius: 12px;\n padding: 24px;\n max-width: 320px;\n z-index: 1000;\n font-family: 'Arial', sans-serif;\n transition: all 0.3s ease;\n color: #e0e0e0;\n ","name"in l){let h=document.createElement("h3");h.textContent=l.name,h.style.cssText="\n margin: 0 0 16px;\n font-size: 22px;\n font-weight: 600;\n color: #ffffff;\n letter-spacing: -0.5px;\n ",d.appendChild(h)}if(l instanceof P){if(l.description){let h=document.createElement("p");h.textContent=l.description,h.style.cssText="\n margin: 0 0 16px;\n font-size: 14px;\n color: #b0b0b0;\n line-height: 1.5;\n ",d.appendChild(h)}if(l.tags&&l.tags.length>0){let h=document.createElement("div");h.style.cssText="\n display: flex;\n flex-wrap: nowrap;\n gap: 8px;\n margin-bottom: 16px;\n overflow-x: hidden;\n max-height: 30px; /* Adjust this value based on your font size and padding */\n ",l.tags.forEach(p=>{let f=document.createElement("span");f.textContent=p,f.style.cssText="\n background-color: #3a3a3a;\n color: #e0e0e0;\n padding: 6px 12px;\n border-radius: 16px;\n font-size: 12px;\n font-weight: 500;\n text-transform: uppercase;\n white-space: nowrap;\n ",h.appendChild(f)}),d.appendChild(h)}}let g;if(!(a instanceof W)){let h=new K({autoPlace:!1});h.domElement.style.cssText="\n position: relative;\n overflow-y: auto;\n margin-top: 16px;\n border-top: 1px solid #444;\n padding-top: 16px;\n ";let p=n.getState(a);p&&(Z(n,{id:a.id,...p},h),d.appendChild(h.domElement)),g=h}return document.body.appendChild(d),s&&o(n,l),()=>{d.style.opacity="0",d.style.transform="translateY(-10px)",setTimeout(()=>d.remove(),300),g==null||g.destroy()}}return r(t,"highlightCard"),{highlightCard:t,highlight:r((n,a,{focus:s=!0}={})=>{i.length>0&&i.forEach(d=>n.Markers.remove(d));let l=e(n,a);if(l instanceof P)s&&n.Camera.focusOn(l.spaces,Y),i.push(...l.spaces.map(d=>n.Markers.add(d,'<div style="padding: 15px; background-color: #ffffff; border-radius: 8px; box-shadow: 0 4px 6px rgba(0,0,0,0.1); max-width: 250px; position: relative;">\n <h3 style="margin: 0 0 10px; color: #333; font-size: 16px; font-weight: 600;">'.concat(l.name,"</h3>\n ").concat(l.description?'<p style="margin: 0 0 10px; color: #666; font-size: 14px; font-weight: 400;">'.concat(l.description,"</p>"):"","\n ").concat(l.tags?l.tags.map(g=>'<span style="display: inline-block; padding: 3px 8px; background-color: #e0f2f1; color: #00796b; border-radius: 12px; font-size: 12px;">'.concat(g,"</span>")).join(" "):"",'\n <div style="position: absolute; bottom: -10px; left: 50%; transform: translateX(-50%); width: 0; height: 0; border-left: 10px solid transparent; border-right: 10px solid transparent; border-top: 10px solid #ffffff;"></div>\n </div>'),{rank:"always-visible",anchor:"top"})));else if(l instanceof W){s&&n.Camera.focusOn(l.locations.flatMap(h=>h.spaces),Y);let d=new Map,g=new Set;l.locations.forEach(h=>{d.has(h.name)||(h.spaces.forEach(p=>{i.push(n.Markers.add(p,'<div style="padding: 12px; background-color: rgba(0, 153, 51, 0.95); border-radius: 8px; box-shadow: 0 4px 8px rgba(0,0,0,0.3); transform: translateY(-4px); transition: all 0.3s ease;">\n <span style="font-weight: 600; color: #FFFFFF; font-size: 16px; text-shadow: 1px 1px 2px rgba(0,0,0,0.2);">'.concat(h.name,"</span>\n </div>"),{rank:"always-visible"}))}),d.set(h.name,!0))}),l.locations.forEach(h=>{h.coordinates.forEach(p=>{let f="".concat(p.latitude,",").concat(p.longitude);if(!g.has(f)&&!d.has(h.name)){let c=n.Markers.add(p,'<div style="padding: 10px; background-color: rgba(51, 102, 204, 0.9); border-radius: 6px; box-shadow: 0 3px 6px rgba(0,0,0,0.2);">\n <span style="font-weight: 500; color: #FFFFFF; font-size: 16px;">'.concat(h.name,'</span>\n <br>\n <span style="color: #FFFFFF; font-size: 12px; font-weight: 400;">Node</span>\n </div>'),{rank:"always-visible"});g.add(f),i.push(c)}})})}return()=>{i.forEach(d=>n.Markers.remove(d))}},"highlight")}}r(et,"createHighlightControl");var Y={duration:300,easing:"ease-in-out"},Q=et();C();var w={search:"",results:void 0,options:{places:{fields:{name:!0,description:!0,link:!0,category:!0},limit:5},locations:{fields:{name:!0,tag:!0,description:!0},limit:5},categories:{fields:{name:!0},limit:5}}};function tt(i){i.add(w.options.places.fields,"name").name("Places: Name"),i.add(w.options.places.fields,"description").name("Places: Description"),i.add(w.options.places.fields,"link").name("Places: Link"),i.add(w.options.places.fields,"category").name("Places: Category"),i.add(w.options.places,"limit"),i.add(w.options.locations.fields,"name").name("Locations: Name"),i.add(w.options.locations.fields,"tag").name("Locations: Tag"),i.add(w.options.locations.fields,"description").name("Locations: Description"),i.add(w.options.places,"limit"),i.add(w.options.categories.fields,"name").name("Categories: Name")}r(tt,"createAdvancedSettings");function Fe(i,e,o){var h;let t=new U,n=o.addFolder("Search");n.open();let a=n.add(w,"search").onChange(async p=>{let f=await e.Search.query(p,w.options);f&&(w.results=f,l(f,t))}),s=document.createElement("div");s.style.marginLeft="10px",(h=a.domElement.parentElement)==null||h.appendChild(s);let{renderSearch:l,close:d}=it(i,e,s,a.$input),g=n.addFolder("Advanced");return g.close(),tt(g),document.addEventListener("keydown",p=>{(p.metaKey||p.ctrlKey)&&p.key==="k"?(p.preventDefault(),n._closed&&n.open(),a.$input.focus()):p.key==="Escape"&&(d(),t.publish("highlight",void 0))}),{pubsub:t}}r(Fe,"createSearchControl");function it(i,e,o,t){let n,a;t.addEventListener("input",async l=>{l instanceof InputEvent&&(l.inputType==="insertText"||l.inputType==="insertCompositionText")&&(clearTimeout(n),n=setTimeout(async()=>{var g;let d=await e.Search.suggest(t.value);d&&d.length>0&&s((g=d[0])==null?void 0:g.suggestion)},100))});function s(l){if(!l){t.placeholder="";return}let d=t.value;t.value=l,t.setSelectionRange(d.length,l.length)}return r(s,"renderSuggestion"),{renderSearch(l,d){var g,h;if(l.places.length===0&&((g=l.enterpriseCategories)==null?void 0:g.length)===0&&((h=l.enterpriseLocations)==null?void 0:h.length)===0){o.textContent="No results found.";return}a=ot(o,l,i,d)},close(){a.destroy()}}}r(it,"mount");function ot(i,e,o,t){i.innerHTML="";let n=document.createElement("div");Object.assign(n.style,q.dropdownContainer);let a=document.createElement("ul");a.className="options-list",Object.assign(a.style,q.optionsList),a.style.display="block";let s=[],l=r((f,c)=>{if(c&&c.length>0){let u=document.createElement("li");u.textContent=f,Object.assign(u.style,q.sectionHeader),a.appendChild(u),c.forEach((b,y)=>{let m=document.createElement("li");m.textContent="".concat("name"in b.item?b.item.name:""," (").concat(b.type,")"),Object.assign(m.style,q.option),m.tabIndex=0,m.addEventListener("focus",()=>{g(s.indexOf(m))}),m.addEventListener("mouseover",()=>{m.style.backgroundColor="#f0f0f0"}),m.addEventListener("mouseout",()=>{m.style.backgroundColor=""}),m.addEventListener("click",()=>{}),m.setAttribute("data-type",f),m.setAttribute("data-index",y.toString()),a.appendChild(m),s.push(m)})}},"addSection");l("enterpriseLocations",e.enterpriseLocations),l("enterpriseCategories",e.enterpriseCategories),l("Places",e.places),n.appendChild(a),i.appendChild(n);let d=[],g=r(f=>{d.forEach(m=>m()),d=[],s.forEach((m,v)=>{v===f?m.style.backgroundColor="#e0e0e0":m.style.backgroundColor=""});let c=s[f],u=c.getAttribute("data-type"),b=parseInt(c.getAttribute("data-index")||"0",10);if(!u)return;let{item:y}=e[u.toLowerCase()][b];t.publish("highlight",y)},"highlightOption"),h=r(f=>{!n.contains(f.target)&&f.target!==i&&p()},"handleClickOutside");document.addEventListener("click",h);let p=r(()=>{i.innerHTML="",document.removeEventListener("click",h)},"destroy");return{destroy(){i.innerHTML="",t.publish("highlight",void 0)}}}r(ot,"createCustomDropdown");var q={dropdownContainer:{position:"absolute",color:"#202020"},optionsList:{display:"block",zIndex:"1002",position:"relative",maxHeight:"200px",overflowY:"auto",border:"1px solid #ccc",backgroundColor:"#fff",listStyleType:"none",margin:"0",padding:"0"},sectionHeader:{fontWeight:"bold",padding:"5px",backgroundColor:"#f0f0f0"},option:{padding:"5px",cursor:"pointer"}};function Se(i,e,o){o.domElement.id="interactionPanel";let t=[],{pubsub:n}=Fe(i,e,o);n.on("highlight",h=>{if(h){t.forEach(f=>f()),t=[];let p=h instanceof P?h.spaces[0]:h;if(i.Camera.focusOn(h),p&&!J.is(p))return;t.push(Q.highlightCard(i,p,{focus:!0}))}else t.forEach(p=>p()),t=[]});let a=o.addFolder("Click \u{1F447}").close(),{sub:s}=nt(i,a);s.on("click",h=>{t.forEach(p=>p()),t=[],h.spaces[0]&&(t=[Q.highlightCard(i,h.spaces[0])])});let l=o.addFolder("Hover \u{1F681}").close(),{sub:d}=rt(i,l),g;d.on("hover",h=>{h.spaces[0]?(g==null||g(),t.length===0&&(g=Q.highlightCard(i,h.spaces[0]))):(g==null||g(),g=void 0)})}r(Se,"createInteractionControls");function nt(i,e){let o=new U,t={position:"",hoverColor:_(i.getHoverColor())},n=e.add(t,"position").disable(),a=[];function s(){a.forEach(d=>d()),a.length=0}r(s,"reset");let l=0;return i.on("click",d=>{var u;let{labels:g,markers:h,coordinate:p}=d;s(),o.publish("click",d),clearInterval(l),n.load(JSON.stringify([p.longitude,p.latitude]));let f=g[0]||h[0];if(f){let b=ge(i,f,e);if(!b)return;a.push(b.destroy),b.labelItemFolder.openAnimated()}let c=(u=d.spaces[0])!=null?u:d.objects[0];if(c){let b={id:c.id,...i.getState(c.id),type:c.type,isInView:!1,isInViewCheck:pe(i,c.id)},{cleanup:y}=Z(i,b,e);l=setInterval(()=>{b.isInView=i.isInView(f||c)},500),a.push(y)}}),{sub:o}}r(nt,"createClickControls");function rt(i,e){let o=new U;i.setHoverColor("#1f3a7a");let t={position:"",hoverColor:_(i.getHoverColor()),intersected:"",type:"",id:""},n=e.add(t,"position").disable();e.add(t,"id").disable().listen(),e.add(t,"type").disable().listen(),e.addColor(t,"hoverColor").onChange(l=>{i.setHoverColor(l)});let a=[];function s(){a.forEach(l=>l()),a.length=0}return r(s,"reset"),i.on("hover",l=>{var b,y,m;let{coordinate:d,spaces:g,objects:h,markers:p,labels:f}=l;s(),o.publish("hover",l),n.load(JSON.stringify([d.longitude,d.latitude]));let c=(m=(y=(b=g[0])!=null?b:h[0])!=null?y:p[0])!=null?m:f[0];if(!c)return;let u=i.getState(c);u&&(t.type=u.type,t.id=c.id)}),{sub:o}}r(rt,"createHoverControls");function pe(i,e){return r(function(){console.log("isInView",i.isInView(e))},"isInView")}r(pe,"createIsInViewHandler");function Le(i,e,o){let t={labels:{},all(){o.Labels.all().forEach(c=>{this.labels[c.id]=c}),d()},removeAllLabels(){o.Labels.removeAll().forEach(c=>{delete this.labels[c.id]}),d()}},{addLabel:n,destroy:a}=st(i,o);i.add(t,"all"),i.add(t,"removeAllLabels");let s=i.addFolder("Label List");i.close();let l=new Map,{rerender:d}=g();function g(){function f(b){var y;delete t.labels[b.id],(y=l.get(b.id))==null||y.destroy()}r(f,"remove");function c(b){let y=ge(o,b,s,{onRemove:r(v=>{f(v)},"onRemove")});if(!y)return;let{labelItemFolder:m}=y;l.set(b.id,m)}r(c,"add");function u(){s.destroy(),s=i.addFolder("Label");for(let b in t.labels){let y=t.labels[b];c(y)}}return r(u,"rerender"),{rerender:u,add:c,remove:f}}r(g,"createLabelControls"),i.domElement.classList.add("list-items");let h;o.on("click",({labels:f,coordinate:c})=>{if(!i._closed)if(f[0]){h==null||h.close();let u=l.get(f[0].id);if(i.open(),!u)return;u==null||u.open(),u==null||u.domElement.scrollIntoView({block:"start"}),u==null||u.domElement.focus(),h=u}else n(c)});function p(f){for(let c of f)t.labels[c.id]=c;d()}return r(p,"populatelabels"),{populatelabels:p,destroy(){a()}}}r(Le,"createLabelControls");function ge(i,e,o,{onRemove:t}={}){var g,h,p,f;let n=o.addFolder("".concat((g=e.text)==null?void 0:g.substring(0,12)));n.onChange(c=>{i.updateState(e,{appearance:d.appearance,interactive:d.interactive})}),n.close();let a=i.getState(e);if((a==null?void 0:a.type)!=="label")throw new Error("error getting state for label: ".concat(e.id));let{appearance:s,interactive:l}=a;if(!s||s.margin==null||l==null)throw new Error("incomplte label state");let d={text:e.text,interactive:l,appearance:{...s,margin:s.margin||0,marker:{foregroundColor:(p=(h=s.marker)==null?void 0:h.foregroundColor)!=null&&p.active?_((f=s.marker.foregroundColor)==null?void 0:f.active):"black"},text:{foregroundColor:_(s.text.foregroundColor)}},remove(){i.Labels.remove(e),t==null||t(e),n.destroy()},isInView:pe(i,e.id)};return n.add(d.appearance,"margin",0,20).name("margin"),n.add(d,"text"),n.add(d,"interactive"),n.addColor(d.appearance.marker,"foregroundColor").name("marker foreground"),n.addColor(d.appearance.text,"foregroundColor").name("text forground"),n.add(d,"isInView"),n.add(d,"remove"),{labelItemFolder:n,destroy(){n.destroy()}}}r(ge,"addLabelControlToFolder");function st(i,e){let o=i.addFolder("Add"),t={onClick:!1,margin:0,text:"New Label!",interactive:!0,marginForegroundColor:_("skyblue"),marginBackgroundColor:_("coral"),textForegroundColor:_("slategray"),textBackgroundColor:_("white")};return o.add(t,"onClick"),o.add(t,"margin"),o.add(t,"interactive"),o.add(t,"text"),o.addColor(t,"marginForegroundColor"),o.addColor(t,"marginBackgroundColor"),o.addColor(t,"textForegroundColor"),o.addColor(t,"textBackgroundColor"),{destroy(){o.destroy()},addLabel(n){return o._closed||!t.onClick?void 0:e.Labels.add(n,t.text,{appearance:{margin:t.margin,marker:{foregroundColor:{active:t.marginForegroundColor,inactive:t.marginForegroundColor},backgroundColor:{active:t.marginBackgroundColor,inactive:t.marginBackgroundColor}},text:{foregroundColor:t.textForegroundColor,backgroundColor:t.marginBackgroundColor}},interactive:t.interactive})}}}r(st,"createAddControl");var $e={};C();var Ie="camera-ui";function Oe(i,e,o){var R,Ce;let t=i.addFolder("Camera \u{1F4F7}").onOpenClose(A=>{he({opened:!A._closed},Ie)}),{params:n}=ue(Ie);n.opened||t.close();let a=e.Camera.center.toJSON(),s=document.createElement("div");Object.assign(s.style,{display:"none",position:"absolute",left:"0px",zIndex:999,top:"0px",bottom:"0px",right:"0px",backgroundColor:"aqua",pointerEvents:"none",opacity:.5}),e.__core.container.appendChild(s);let{innerHeight:l,innerWidth:d}=window,[g,h,p,f]=(R=o==null?void 0:o.padding)!=null?R:[e.Camera.screenOffsets.top,e.Camera.screenOffsets.right,e.Camera.screenOffsets.bottom,e.Camera.screenOffsets.left],c={center_lat:a.latitude,center_lon:a.longitude,zoomLevel:e.Camera.zoomLevel,pitch:e.Camera.pitch,bearing:e.Camera.bearing,minZoomLevel:e.Camera.minZoomLevel,maxZoomLevel:e.Camera.maxZoomLevel,inset_type:o!=null&&o.padding?"pixel":e.Camera.screenOffsets.type,inset_top:g!=null?g:0,inset_left:f!=null?f:0,inset_right:h!=null?h:0,inset_bottom:p!=null?p:0,animateOnLoad:!0,persist:r(()=>{he(t.save().controllers,"camera"),navigator.clipboard.writeText(window.location.href)},"persist"),visualizeInset:!!(g||h||p||f),"Focus on click":(Ce=o==null?void 0:o.focusOnClick)!=null?Ce:!0,"Focus on current floor":r(()=>{e.Camera.focusOn([e.currentFloor],{screenOffsets:{top:20,left:20,right:20,bottom:20}})},"Focus on current floor")};function u(){c.inset_type=e.Camera.screenOffsets.type,c.inset_left=e.Camera.screenOffsets.left,c.inset_top=e.Camera.screenOffsets.top,c.inset_right=e.Camera.screenOffsets.right,c.inset_bottom=e.Camera.screenOffsets.bottom,c.inset_type==="portion"?Object.assign(s.style,{left:c.inset_left*d+"px",top:c.inset_top*l+"px",bottom:c.inset_bottom*l+"px",right:c.inset_right*d+"px"}):Object.assign(s.style,{left:c.inset_left+"px",top:c.inset_top+"px",bottom:c.inset_bottom+"px",right:c.inset_right+"px"})}r(u,"updateInsetVisualizer"),t.add(c,"center_lat").listen().disable(),t.add(c,"center_lon").listen().disable(),t.add(c,"zoomLevel",16,22,.5).listen().disable(),t.add(c,"pitch").listen().disable(),t.add(c,"bearing").listen().disable(),t.add(c,"minZoomLevel",5,22,.5).onChange(A=>{e.Camera.setMinZoomLevel(A)}),t.add(c,"maxZoomLevel",10,22,.5).onChange(A=>{e.Camera.setMaxZoomLevel(A)}),t.add(c,"animateOnLoad"),t.add(c,"visualizeInset").onChange(O),O(c.visualizeInset),t.add(c,"inset_type",["pixel","portion"]).onChange(k),t.add(c,"inset_top",0,l).onChange(k),t.add(c,"inset_bottom",0,l).onChange(k),t.add(c,"inset_left",0,d).onChange(k),t.add(c,"inset_right",0,d).onChange(k);let b=lt(e);t.add(c,"Focus on click").onChange(A=>{A?e.on("click",b):e.off("click",b)}),c["Focus on click"]&&e.on("click",b),t.add(c,"persist"),t.add(c,"Focus on current floor");let y=r(A=>{t._closed||(c.center_lat=A.center.latitude,c.center_lon=A.center.longitude,c.zoomLevel=A.zoomLevel,c.bearing=A.bearing,c.pitch=A.pitch)},"onCameraChanged");e.on("camera-change",y);let{params:m}=ue("camera",c);if(Object.keys(m).length>0){let A=m;e.Camera.setScreenOffsets({top:A.inset_top,left:A.inset_left,right:A.inset_right,bottom:A.inset_bottom,type:A.inset_type});let xe={pitch:A.pitch,center:new Me(A.center_lat,A.center_lon),bearing:A.bearing,zoomLevel:A.zoomLevel};A.animateOnLoad?e.Camera.animateTo(xe):e.Camera.set(xe),t.load({controllers:A,folders:{}}),u()}let v=[()=>{e.off("camera-change",y)}];function k(){e.Camera.setScreenOffsets({top:c.inset_top,left:c.inset_left,right:c.inset_right,bottom:c.inset_bottom,type:c.inset_type}),u()}r(k,"updateInset"),(c.inset_top||c.inset_right||c.inset_bottom||c.inset_left)&&k();function O(A){u(),A?s.style.display="block":s.style.display="none"}return r(O,"visualizeInsetUpdated"),()=>({destroy(){t.destroy(),_e(v)}})}r(Oe,"createCameraControls");function lt(i){return r(function(o){var s;let{spaces:t,objects:n}=o,a=(s=t[0])!=null?s:n[0];a&&i.Camera.focusOn(a)},"handler")}r(lt,"createHandler");C();function De(i,e,o){let t={markers:{},removeAllMarkers(){o.Markers.removeAll().forEach(c=>{delete this.markers[c.id]}),d()}},{addMarker:n,destroy:a}=ct(i,o);i.add(t,"removeAllMarkers");let s=i.addFolder("Marker List");i.close();let l=new Map,{rerender:d}=g();function g(){function f(b){var y;delete t.markers[b.id],(y=l.get(b.id))==null||y.destroy()}r(f,"remove");function c(b){let y=dt(o,b,s,{onRemove:r(v=>{f(v)},"onRemove")});if(!y)return;let{markerItemFolder:m}=y;l.set(b.id,m)}r(c,"add");function u(){s.destroy(),s=i.addFolder("marker");for(let b in t.markers){let y=t.markers[b];c(y)}}return r(u,"rerender"),{rerender:u,add:c,remove:f}}r(g,"createMarkerControls"),i.domElement.classList.add("list-items");let h;o.on("click",({markers:f,coordinate:c})=>{if(!i._closed)if(f[0]){h==null||h.close();let u=l.get(f[0].id);if(i.open(),!u)return;u==null||u.open(),u==null||u.domElement.scrollIntoView({block:"start"}),u==null||u.domElement.focus(),h=u}else n(c)});function p(f){for(let c of f)t.markers[c.id]=c;d()}return r(p,"populateMarkers"),{populateMarkers:p,destroy(){a()}}}r(De,"createMarkerControls");function dt(i,e,o,{onRemove:t}={}){let n=o.addFolder("".concat(e.id.toString().substring(0,8)));n.onChange(d=>{i.updateState(e,{interactive:l.interactive})}),n.close();let a=i.getState(e);if((a==null?void 0:a.type)!=="marker")throw new Error("error getting state for marker: ".concat(e.id));let{interactive:s}=a;if(s==null)throw new Error("incomplte label state");let l={interactive:s,remove(){i.Markers.remove(e),t==null||t(e),n.destroy()}};return n.add(l,"interactive"),n.add(l,"remove"),{markerItemFolder:n,destroy(){n.destroy()}}}r(dt,"addMarkerControlToFolder");function ct(i,e){let o=i.addFolder("Add"),t={onClick:!1,interactive:!0};return o.add(t,"onClick"),o.add(t,"interactive"),{destroy(){o.destroy()},addMarker(n){return o._closed||!t.onClick?void 0:e.Markers.add(n,"<div>New Marker</div>",{interactive:t.interactive})}}}r(ct,"createAddControl");C();function Te(i,e){let o=i.addFolder("Walls").close(),t={visible:!0,topColor:"#b1fa87",color:"#e8e8e8",texture:{url:""},topTexture:{url:""}};o.add(t,"visible").onChange(s=>{e.updateState("walls",{visible:s})}),o.addColor(t,"topColor").onChange(s=>{e.updateState("walls",{topColor:s})}),o.addColor(t,"color").onChange(s=>{e.updateState("walls",{color:s})}),o.addFolder("Texture - side").add(t.texture,"url").onFinishChange(s=>{e.updateState("walls",{texture:{url:s}})}),o.addFolder("Texture - top").add(t.topTexture,"url").onFinishChange(s=>{e.updateState("walls",{topTexture:{url:s}})}),e.updateState("walls",{topColor:t.topColor}),e.updateState("walls",{color:t.color})}r(Te,"createGeometryControl");C();function Pe(i,e,o){var a,s;i.close();let t={language:(s=(a=o.currentLanguage)==null?void 0:a.code)!=null?s:"en"},n=o.getByType("enterprise-venue");i.add(t,"language",n==null?void 0:n.languages.map(l=>l.code)).onChange(l=>{o.changeLanguage(l)})}r(Pe,"createMiscControl");C();function Be(i,e,o){let t=i.addFolder("Debug");t.close();let n=e.Debug.state,a={showPolygonLabelTextAreaMesh:n.showPolygonLabelTextAreaMesh,showCollisionBoxes:n.showCollisionBoxes,showEnvMap:n.showEnvMap};t.add(a,"showPolygonLabelTextAreaMesh").onChange(s=>{e.Debug.update({showPolygonLabelTextAreaMesh:s})}).name("Show Flat Label Text Area Mesh"),t.add(a,"showCollisionBoxes").onChange(s=>{e.Debug.update({showCollisionBoxes:s})}).name("Show Collision Boxes"),t.add(a,"showEnvMap").onChange(s=>{e.Debug.update({showEnvMap:s})}).name("Show Environment Map"),e.Debug.update(a)}r(Be,"createDebugControl");C();function ze(i,e,o){let t=i.addFolder("Text3D").close(),n={all:r(()=>{e.Text3D.labelAll()},"all"),removeAll:r(()=>{e.Text3D.removeAll()},"removeAll")};t.add(n,"all").name("Show All"),t.add(n,"removeAll").name("Remove All")}r(ze,"createText3DControl");C();C();C();var F,N,$,M,I,S,Ge,me,Ue,be=class be{constructor(e=new z({autoPlace:!0})){T(this,S);T(this,F);T(this,N,[]);T(this,$,{});T(this,M,{});T(this,I,{});Ae(this,F,e),x(this,F).domElement.style.left="0"}add(e,o,t){if(x(this,M)[e])throw new Error("Control ".concat(e," already exists"));x(this,$)[e]=o,x(this,I)[e]=o.default,G(this,S,Ge).call(this,e,o,t),this.show()}addColor(e,o,t){if(x(this,M)[e])throw new Error("Control ".concat(e," already exists"));x(this,$)[e]=o,x(this,I)[e]=o.default,G(this,S,Ue).call(this,e,o,t),this.show()}update(e,o){if(!x(this,M)[e])throw new Error("Control ".concat(e," does not exist"));x(this,M)[e].setValue(o),x(this,$)[e].onChange&&x(this,$)[e].onChange(o,e)}replace(e,o,t){if(!x(this,M)[e]){this.add(e,o,t);return}o.args&&x(this,M)[e].options(o.args),o.default&&x(this,M)[e].setValue(o.default),o.onChange&&x(this,M)[e].onChange(n=>{o.onChange(n,e)})}remove(e){if(!x(this,M)[e])throw new Error("Control ".concat(e," does not exist"));x(this,M)[e].destroy(),x(this,M)[e].parent.children.length===0&&x(this,M)[e].parent.hide(),delete x(this,M)[e],delete x(this,$)[e],delete x(this,I)[e]}show(){x(this,F).show()}hide(){x(this,F).hide()}removeAll(){for(let e in x(this,M))this.remove(e)}destroy(){x(this,F).destroy()}};F=new WeakMap,N=new WeakMap,$=new WeakMap,M=new WeakMap,I=new WeakMap,S=new WeakSet,Ge=r(function(e,o,t){let a=G(this,S,me).call(this,t).add(x(this,I),e,o.args,o.max,o.step);o.onChange&&a.onChange(s=>{o.onChange(s,e)}),o.onAdd&&o.onAdd(o.default,e),x(this,M)[e]=a},"#addControl"),me=r(function(e){if(!e)return x(this,F);let o=x(this,N).find(t=>t._title===e);return o?(o.show(),o):(o=x(this,F).addFolder(e),x(this,N).push(o),o)},"#getFolder"),Ue=r(function(e,o,t){let a=G(this,S,me).call(this,t).addColor(x(this,I),e);o.onChange&&a.onChange(s=>{o.onChange(s,e)}),x(this,M)[e]=a},"#addColorControl"),r(be,"GUI");var fe=be;function ht(i,e,o){var l;let t={},n=i.getByType("floor"),a=i.getByType("floor-stack");a.length>1&&(t.FloorStack={default:e.currentFloorStack.id,args:a.reduce((d,{id:g,name:h})=>({...d,[h]:g}),{}),onChange:r(d=>{d!==e.currentFloorStack.id&&(e.setFloorStack(d),o.replace("Floor",{default:e.currentFloor.id,args:e.currentFloorStack.floors.reduce((g,{id:h,name:p})=>({...g,[p]:h}),{})}))},"onChange")}),n.length>1&&(t.Floor={default:e.currentFloor.id,args:e.currentFloorStack.floors.reduce((d,{id:g,name:h})=>({...d,[h]:g}),{}),onChange:r(d=>{d!==e.currentFloor.id&&e.setFloor(d)},"onChange"),onAdd:r(()=>{e.on("floor-change",d=>{d!=null&&d.floor.id&&(a.length>1&&o.replace("FloorStack",{default:e.currentFloorStack.id}),o.replace("Floor",{default:e.currentFloor.id,args:e.currentFloorStack.floors.reduce((h,{id:p,name:f})=>({...h,[f]:p}),{})}))})},"onAdd")});let s=i.getByType("enterprise-venue");return s&&s.languages.length>1&&(t.Language={default:((l=i.currentLanguage)==null?void 0:l.code)||s.languages[0].code,args:s.languages.reduce((d,{code:g,name:h})=>({...d,[h]:g}),{}),onChange:r(d=>{i.changeLanguage(d)},"onChange")}),t}r(ht,"createDefaultControls");function He(i,e,o=new z){let t=new fe(o),n=ht(i,e,t);Object.keys(n).length||t.hide();for(let a in n)t.add(a,n[a]);return t}r(He,"createGUI");async function je(i,e,{initialfloorsInStack:o,root:t,floorsInDirections:n,showLabelsPerFloor:a=!0}){async function s(u){i.StackedMaps.changeFloorOnElevationChanges(!1),i.Outdoor.setOpacity(.15),i.StackedMaps.setFloorVisiblityMode("only-current-floor"),i.Camera.setPanMode("default"),await i.Camera.focusOn(u,{pitch:10})}r(s,"zoomToFloor");async function l(){i.Outdoor.setOpacity(.25),i.StackedMaps.changeFloorOnElevationChanges(!0),i.Camera.setPanMode("elevation"),i.StackedMaps.setFloorVisiblityMode("all-floors"),await i.Camera.focusOn(i.currentFloor,{axisAlignedPadding:{vertical:i.StackedMaps.distanceBetweenFloors},pitch:90})}r(l,"showCurrentFloorWithPadding");async function d(u){await i.Camera.animateElevation(u.elevation*i.StackedMaps.distanceBetweenFloors)}r(d,"scrollToFloor");let g=i.currentFloor;i.on("floor-change",async u=>{i.StackedMaps.expanded&&u.reason!=="stacked-maps-elevation-change"&&(i.StackedMaps.changeFloorOnElevationChanges(!1),i.StackedMaps.setFloorVisiblityMode("all-floors"),await i.Camera.focusOn(g,{axisAlignedPadding:{vertical:i.StackedMaps.distanceBetweenFloors},pitch:90,duration:500}),i.StackedMaps.changeFloorOnElevationChanges(!0),await d(i.currentFloor),await s(i.currentFloor),i.StackedMaps.setFloorVisiblityMode("only-current-floor")),g=i.currentFloor}),i.on("stacked-maps-state-change",({state:u})=>{console.log("stacked-maps-state-change",u)});let h=e.getByType("space");if(a){let u=h.reduce((b,y)=>(b.has(y.floor)||b.set(y.floor,[]),y.name&&y.name!==""&&b.get(y.floor).push(i.Labels.add(y,y.name)),b),new Map);i.on("floor-change",()=>{u.forEach((b,y)=>{b.forEach(m=>{i.updateState(m,{enabled:i.currentFloor===y})})})})}let p=He(e,i,t),f=o!=null?o:[];async function c(){i.Outdoor.setOpacity(.25),f=e.getByType("floor"),await i.Camera.animateTo({pitch:90}),await i.StackedMaps.collapse(),i.StackedMaps.clearCachedFloorSeparationDistance(),await i.StackedMaps.expand({distanceBetweenFloors:"auto"})}return r(c,"expandAll"),p.add("Expand - All",{default:r(async()=>{await c()},"default")},"Stack Maps"),n&&p.add("Expand - Only Navigation",{default:r(async()=>{i.Outdoor.setOpacity(.25),f=n,await i.StackedMaps.collapse(),i.setFloor(n[0]),await i.StackedMaps.expand({includedFloors:n,distanceBetweenFloors:"auto"})},"default")},"Stack Maps"),p.add("Show All Floors",{default:r(async()=>{f=e.getByType("floor"),i.Outdoor.setOpacity(.25),i.StackedMaps.setFloorVisiblityMode("all-floors"),i.StackedMaps.changeFloorOnElevationChanges(!1),i.Camera.setPanMode("elevation"),i.Camera.focusOn(f,{pitch:90})},"default")},"Stack Maps"),p.add("Show Current Floor with padding",{default:r(async()=>{await l()},"default")},"Stack Maps"),p.add("Zoom to Current Floor",{default:r(async()=>{s(i.currentFloor)},"default")},"Stack Maps"),p.add("Collapse",{default:r(()=>{i.Outdoor.setOpacity("initial"),i.StackedMaps.collapse()},"default")},"Stack Maps"),p.add("Default",{default:r(async()=>{i.Camera.setPanMode("default")},"default")},"Camera Pan Mode"),p.add("Elevation",{default:r(async()=>{i.Camera.setPanMode("elevation")},"default")},"Camera Pan Mode"),p.add("zoom in to floor 2",{default:r(async()=>{i.Outdoor.setOpacity(.25),console.log(i.currentFloor.name),await i.Camera.focusOn(i.currentFloor,{axisAlignedPadding:{vertical:i.StackedMaps.distanceBetweenFloors},pitch:90}),i.StackedMaps.expanded||await i.StackedMaps.expand({distanceBetweenFloors:i.StackedMaps.distanceBetweenFloors});let u=i.StackedMaps.includedFloors[2],b=f.findIndex(y=>y.id===u.id);i.StackedMaps.changeFloorOnElevationChanges(!0),i.Camera.setPanMode("elevation"),i.StackedMaps.setFloorVisiblityMode("all-floors"),await i.Camera.animateElevation(b*i.StackedMaps.distanceBetweenFloors),i.Outdoor.setOpacity(.15),console.log("focusing on",u.name),await i.Camera.focusOn(u,{pitch:10}),i.StackedMaps.setFloorVisiblityMode("only-current-floor"),i.Camera.setPanMode("default"),i.StackedMaps.changeFloorOnElevationChanges(!1)},"default")},"Camera Pan Mode"),p.add("All Floors",{default:r(async()=>{i.StackedMaps.setFloorVisiblityMode("all-floors")},"default")},"Visibility Mode"),p.add("Only Active Floor",{default:r(async()=>{i.StackedMaps.setFloorVisiblityMode("only-current-floor")},"default")},"Visibility Mode"),p.add("Up",{default:r(async()=>{let u=f.find(b=>b.elevation===i.currentFloor.elevation+1);u&&await d(u)},"default")},"Floors Up/Down"),p.add("Down",{default:r(async()=>{let u=f.find(b=>b.elevation===i.currentFloor.elevation-1);u&&await d(u)},"default")},"Floors Up/Down"),{zoomToFloor:s,expandAll:c}}r(je,"createStackMapsControl");function Ye(i,e,o){let t=i.addFolder("StackedMaps");t.close(),je(e,o,{root:t,showLabelsPerFloor:!1})}r(Ye,"createStackmapsControl");function Re(i,e,o){ut();let t=new K({title:"SDK Controls"});t.domElement.classList.add("mappedin-js-inspector"),Se(e,i,t),Oe(t,e,o==null?void 0:o.camera);let n=t.addFolder("Levels").close(),a=t.addFolder("Scene Controls");a.close();let s=t.addFolder("Labels");ze(t,e,i);let l=t.addFolder("Markers");Te(t,e),Ye(t,e,i);let d=t.addFolder("misc");Be(t,e,i),Pe(d,e,i);let g={level:e.currentFloor.id},{populatelabels:h}=Le(s,i,e),{populateMarkers:p}=De(l,i,e),f=i.getByType("floor").reduce((u,b)=>(u[b.name]=b.id,u),{}),c=n.add(g,"level",f).onChange(u=>{e.setFloor(u),g.level=e.currentFloor.id,c.updateDisplay()});return e.on("floor-change-start",u=>{n.controllers[0].setValue(u.floor.id)}),i.getByType("space").forEach(u=>{e.updateState(u,{interactive:!0})}),i.getByType("object").forEach(u=>{e.updateState(u,{interactive:!0})}),i.getByType("object").forEach(u=>{e.updateState(u,{interactive:!0})}),e.setHoverColor("#a2b7e6"),e.Camera.setMaxZoomLevel(20),{populatelabels:h,sceneFolder:a,populateMarkers:p}}r(Re,"createUi");var Ne="mappedin-sdk-debug-css";function ut(){if(document.getElementById(Ne))return;let i=document.createElement("style");i.id=Ne,i.textContent=$e,document.head.appendChild(i)}r(ut,"injectCss");var ye=class ye{constructor(e,o){D(this,"_enabled",!1);D(this,"mv");D(this,"api");D(this,"mapData");D(this,"scenegraphVisualizerMounted",!1);D(this,"storeStateToLocalStorageEnabled",!1);this.mv=e,this.api=o,this.mapData=this.api.getMapData()}setMapData(e){this.mapData=e}async enable(e={}){var t;if(this._enabled)return;if(this._enabled=!0,!this.mapData)throw new Error("Please set mapData before enable debug.");let{sceneFolder:o}=Re(this.mapData,this.mv,e);o.onOpenClose(n=>{n===o&&!n._closed&&!this.scenegraphVisualizerMounted&&(this.scenegraphVisualizerMounted=!0,Ee(this.api.core,o))}),(t=this.api.getMapDataInternal())==null||t.spaces.forEach(n=>{this.mv.updateState(n.id,{interactive:!0})})}get enabled(){return this._enabled}};r(ye,"Inspector");var ve=ye;export{ve as Inspector};
@@ -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}.mappedin-map .mappedin-interactive{cursor:grab}.mappedin-map .mappedin-interactive:active{cursor:grabbing}.mappedin-map .mappedin-interactive.mappedin-interaction-hover{cursor:pointer}.mappedin-marker{font-family:InterUI-Regular,Helvetica,Arial,sans-serif;font-weight:400;top:0;transition:transform .3s linear;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-anchor=low-priority-pin]{font-size:0;line-height:0}.mappedin-marker[data-anchor=low-priority-pin]>*{visibility:hidden}.mappedin-marker[data-anchor=low-priority-pin]:before{content:"";display:block;border-radius:50%;position:relative;width:var(--mappedin-pin-size, 2px);height:var(--mappedin-pin-size, 2px);background-color:var(--pin-color, #666)}.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}.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;-moz-user-select:none;-webkit-user-select:none;-ms-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 (-ms-high-contrast: 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 (-ms-high-contrast: 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}.maplibregl-ctrl button:not(:disabled):hover{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 (-ms-high-contrast: 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 (-ms-high-contrast: black-on-white){.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 (-ms-high-contrast: 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 (-ms-high-contrast: black-on-white){.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 (-ms-high-contrast: 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 (-ms-high-contrast: black-on-white){.maplibregl-ctrl button.maplibregl-ctrl-compass .maplibregl-ctrl-icon{background-image:svg-load("svg/maplibregl-ctrl-compass.svg",fill: #000)}}@svg-load ctrl-terrain url(svg/maplibregl-ctrl-terrain.svg){fill: #333; #stroke {display: none;}}@svg-load ctrl-terrain-enabled url(svg/maplibregl-ctrl-terrain.svg){fill: #33b5e5; #stroke {display: none;}}.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 (-ms-high-contrast: 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 (-ms-high-contrast: black-on-white){.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 (-ms-high-contrast: 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 (-ms-high-contrast: black-on-white){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:#ffffff7f;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:#ffffff7f;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 (-ms-high-contrast: active){.maplibregl-ctrl-attrib.maplibregl-compact:after{background-image:svg-load("svg/maplibregl-ctrl-attrib.svg",fill=#fff)}}@media screen and (-ms-high-contrast: black-on-white){.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),(width <= 480px){.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}:root{--pin-shadow-hover-scale: .9;--pin-shadow-width: 12px;--pin-shadow-height: 5px;--pin-shadow-opacity: .35;--pin-drop-animation-duration-ms: .25s}@keyframes drop-pin{0%{transform:translateY(-200%)}to{transform:translateY(0)}}@keyframes pin-shadow{0%{transform:scale(var(--pin-shadow-hover-scale))}to{transform:scale(1)}}.mappedin-dropped-pin-wrapper{position:relative;width:fit-content;height:fit-content;width:36px;height:42px}.mappedin-dropped-pin-wrapper svg{position:absolute;left:calc(50% - var(--pin-shadow-width));animation:drop-pin var(--pin-drop-animation-duration-ms) ease-in}.mappedin-dropped-pin-wrapper>.pin-shadow{position:absolute;left:calc(50% - var(--pin-shadow-width) / 2);bottom:0;height:var(--pin-shadow-height);width:var(--pin-shadow-width);border-radius:100%;opacity:var(--pin-shadow-opacity);animation:pin-shadow .25s ease-in}@keyframes bounce{0%{transform:translateY(-10px);opacity:0}12.5%{transform:translateY(0);opacity:1}25%{transform:translateY(0)}37.5%{transform:translateY(-10px)}50%{transform:translateY(0)}62.5%{transform:translateY(-10px)}75%{transform:translateY(0)}87.5%{transform:translateY(-10px)}to{transform:translateY(0)}}.mappedin-connection-marker{position:relative;display:flex}.mappedin-connection-marker .bouncey{animation:bounce 2.5s linear}.mappedin-connection-marker .arrow--down{transform:rotate(180deg)}.mappedin-connection-marker .connection-circle{display:flex;box-sizing:border-box;justify-content:center;align-items:center;border-radius:50%;border:2px solid white;box-shadow:0 2px 8px #00000026;background:#595959}.mappedin-js-inspector .list-items{max-height:600px;overflow-y:scroll;scroll-behavior:smooth}.mappedin-js-inspector .children:focus{border:1px solid blue}.mappedin-js-inspector #interactionPanel{position:absolute;right:0}.mappedin-js-inspector #mainPanel{position:absolute;left:0}.mappedin-js-inspector .title{white-space:nowrap;overflow:hidden;text-overflow:ellipsis}