@mapvx/web-components-ssr 1.4.0-dev.1 → 1.4.0-dev.2

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.
@@ -913,7 +913,7 @@ ${Ke}
913
913
  <path style="${_e}${he}" d="M16.4471 7.26386C16.2568 6.80696 15.808 6.51052 15.3131 6.51052C14.8181 6.51052 14.3693 6.80696 14.179 7.26386L8.52211 20.7533C8.29366 21.2972 8.48404 21.9227 8.97085 22.2518C9.45767 22.5809 10.1104 22.5156 10.5265 22.0995L15.3131 17.3129L20.0996 22.0995C20.5157 22.5156 21.1657 22.5782 21.6553 22.2518C22.1448 21.9254 22.3325 21.2972 22.104 20.7533L16.4471 7.26386Z"/>
914
914
  </g>
915
915
  </svg>`;return `data:image/svg+xml,${encodeURIComponent(Zt)}`}var JF=Ux();var n6=x(Cv());function Vx(){let t="",e="0123456789ABCDEF";for(let n=0;n<10;n++)t+=e.charAt(Math.floor(Math.random()*e.length));return t}function e6(t){if(t===0)return [];if(t===1)return [0];let e=1/(t-1);return Array.from({length:t},(n,o)=>o*e)}function t6(t,e){return t.flatMap((n,o)=>[n,e[o]])}function sA(t){let e={lat:-1/0,lng:-1/0},n={lat:1/0,lng:1/0};return t.forEach(o=>{o.lat>e.lat&&(e.lat=o.lat),o.lng>e.lng&&(e.lng=o.lng),o.lat<n.lat&&(n.lat=o.lat),o.lng<n.lng&&(n.lng=o.lng);}),[n,e]}var qs=(function(t){return t[t.left=0]="left",t[t.right=1]="right",t[t.top=2]="top",t[t.bottom=3]="bottom",t})(qs||{}),jx=class{static createMarkerElement(e){var n,o,c,s;let m=document.createElement("div"),w=(o=(n=e.iconProperties)===null||n===void 0?void 0:n.width)!==null&&o!==void 0?o:40,I=(s=(c=e.iconProperties)===null||c===void 0?void 0:c.height)!==null&&s!==void 0?s:40;if(m.className="mapvx-marker",e.text)switch(e.textPosition){case qs.top:case qs.bottom:m.classList.add("text-column"),m.style.width=`${Math.max(w,200)}px`,m.style.height="auto";break;case qs.left:case qs.right:default:m.classList.add("text-row"),m.style.width="auto",m.style.height=`${I}px`;break}else m.classList.add("no-text"),m.style.width=`${w}px`,m.style.height=`${I}px`;if(m.addEventListener("click",()=>{var B;(B=e.onClick)===null||B===void 0||B.call(e);}),e.element)return m.appendChild(e.element),this.setAndCreateText(e,m,`${I}px`,`${w}px`);let P=this.createIconElement(e,w,I),L=e.text?this.createTextContainer(typeof e.text=="string"?this.createTextElement(e.text,e.textProperties):e.text,e.textPosition):null;return e.textPosition===qs.top||e.textPosition===qs.left?(L&&m.appendChild(L),m.appendChild(P)):(m.appendChild(P),L&&m.appendChild(L)),m}static setAndCreateText(e,n,o,c){if(e.text){let s=typeof e.text=="string"?this.createTextElement(e.text,e.textProperties):e.text,m=this.createTextContainer(s,e.textPosition);n.appendChild(m);}return n}static createIconElement(e,n,o){if(typeof e.icon=="string")return this.createIcon(e);if(e.icon instanceof HTMLImageElement)return e.icon.style.width=`${n}px`,e.icon.style.height=`${o}px`,e.icon;if(e.icon)return e.icon;{let c=document.createElement("div");return c.className="icon-default",c.style.width=`${n}px`,c.style.height=`${o}px`,c}}static createTextContainer(e,n){let o=document.createElement("div");switch(o.className="text-container",n){case qs.top:o.classList.add("top");break;case qs.bottom:o.classList.add("bottom");break;case qs.left:o.classList.add("left");break;default:o.classList.add("right");break}return e.style.display="block",e.style.margin="0",o.appendChild(e),o}static createIcon(e){var n,o,c,s;let m=document.createElement("img");return m.src=typeof e.icon=="string"?e.icon:"",m.width=(o=(n=e.iconProperties)===null||n===void 0?void 0:n.width)!==null&&o!==void 0?o:40,m.height=(s=(c=e.iconProperties)===null||c===void 0?void 0:c.height)!==null&&s!==void 0?s:40,m.style.objectFit="contain",m.style.filter="drop-shadow(0px 4px 4px rgba(0, 0, 0, 0.25))",m}static createTextElement(e,n){var o,c,s,m,w,I,P;let L=document.createElement("p");return L.textContent=e,L.style.fontSize=(o=n?.fontSize)!==null&&o!==void 0?o:"14px",L.style.padding=(c=n?.padding)!==null&&c!==void 0?c:"0px",L.style.margin=(s=n?.margin)!==null&&s!==void 0?s:"0px",L.style.fontWeight=(m=n?.fontWeight)!==null&&m!==void 0?m:"600",L.style.fontFamily=(w=n?.fontFamily)!==null&&w!==void 0?w:"'Open Sans', sans-serif",L.style.color=(I=n?.color)!==null&&I!==void 0?I:"#000000",L.style.textShadow=(P=n?.textShadow)!==null&&P!==void 0?P:"-1px -1px 0 #fff, 1px -1px 0 #fff, -1px 1px 0 #fff, 1px 1px 0 #fff",L}},uu=class extends n6.Marker{constructor(e){var n,o,c,s;super({element:jx.createMarkerElement(e),draggable:false,anchor:(n=e.anchor)!==null&&n!==void 0?n:"center",offset:[0,0]}),this.setLngLat([e.coordinate.lng,e.coordinate.lat]),this.setRotationAlignment((o=e.rotationAlignment)!==null&&o!==void 0?o:"viewport"),this.setPitchAlignment("viewport"),typeof e.rotation=="number"&&this.setRotation(e.rotation),this.id=(c=e.id)!==null&&c!==void 0?c:Vx(),this.coordinate=e.coordinate,this.floorId=(s=e.floorId)!==null&&s!==void 0?s:"";}addToMap(e){e&&this.addTo(e);}updateIcon(e){var n,o;if(e.element)this._element.innerHTML="",this._element.appendChild(e.element);else {let c=jx.createMarkerElement(e),s=this._element.querySelector("div"),m=c.querySelector("div");m&&((n=s?.parentElement)===null||n===void 0||n.replaceChild(m,s));}this.setRotationAlignment((o=e.rotationAlignment)!==null&&o!==void 0?o:"viewport"),this.setPitchAlignment("viewport"),typeof e.rotation=="number"&&this.setRotation(e.rotation);}setFloor(e){this.floorId=e;}hide(){this.remove();}show(e){e&&this.addTo(e);}changeFloor(e,n,o=false){e==this.floorId||o&&!this.floorId?this.show(n):this.hide();}};function $x(t){return {id:t.id,route:t,aheadId:`AHEAD_${t.id}`,behindId:`BEHIND_${t.id}`,currentId:`CURRENT_${t.id}`,aheadSourceData:{type:"FeatureCollection",features:[]},behindSourceData:{type:"FeatureCollection",features:[]},currentSourceData:{type:"Feature",properties:{},geometry:{type:"LineString",coordinates:[]}},animationStatus:"NO_ROUTE",stepAnimationStatus:"NO_ROUTE"}}var{asin:BQ,atan2:aA,cos:du,sin:za,pow:r6,sqrt:i6,PI:Dv}=Math;function o6(t){return za(t/2)*za(t/2)}function pu(t){return t*(Dv/180)}function lA(t){return t*(180/Dv)}function cA(t,e){return t.lat===e.lat&&t.lng===e.lng}var pp=(()=>{class t{static distance(n,o){let c=pu(n.lat),s=pu(o.lat),m=pu(n.lng),w=pu(o.lng),I=s-c,P=w-m,L=o6(I)+du(c)*du(s)*o6(P);return 2*t.EARTH_RADIUS*BQ(i6(L))}static intermediatePointBetween(n,o,c){let s=pu(n.lat),m=pu(o.lat),w=pu(n.lng),I=pu(o.lng),P=t.distance(n,o)/t.EARTH_RADIUS,L=za((1-c)*P)/za(P),B=za(c*P)/za(P),Y=L*du(s)*du(w)+B*du(m)*du(I),W=L*du(s)*za(w)+B*du(m)*za(I),ue=L*za(s)+B*za(m),_e=aA(ue,i6(r6(Y,2)+r6(W,2))),he=aA(W,Y),Pe=lA(_e),Ke=lA(he);return {lat:Pe,lng:Ke}}static bearingInDegBetween(n,o){let c=t.bearingInRadBetween(n,o);return lA(c)}static bearingInRadBetween(n,o){let c=o.lng-n.lng,s=o.lat-n.lat;return (Dv/2-aA(s,c)+2*Dv)%(2*Dv)}static intermediateAngleBetween(n,o,c){let s=(o-n+180)%360-180;return s<-180&&(s+=360),(n+360+s*c)%360}}return t.EARTH_RADIUS=6378e3,t})();var Kf={top:150,right:150,bottom:150,left:150},Hx=class{constructor(e){this.routes=new Map,this.mapvxMap=e;}get map(){return this.mapvxMap.map}resolveInstance(e){let n=e??this.lastAddedRouteId;return n?this.routes.get(n):void 0}addSourcesAndLayersForRoute(e){this.map.addSource(e.aheadId,{type:"geojson",data:e.aheadSourceData}),this.map.addLayer({id:e.aheadId,type:"line",source:e.aheadId,layout:{"line-join":"round","line-cap":"round"}}),this.map.addSource(e.behindId,{type:"geojson",data:e.behindSourceData}),this.map.addLayer({id:e.behindId,type:"line",source:e.behindId,layout:{"line-join":"round","line-cap":"round"}}),this.map.addSource(e.currentId,{type:"geojson",data:e.currentSourceData}),this.map.addLayer({id:e.currentId,type:"line",source:e.currentId,layout:{"line-join":"round","line-cap":"round"}});}removeSourcesAndLayersForRoute(e){let n=[e.aheadId,e.behindId,e.currentId];for(let o of n){try{this.map.removeLayer(o);}catch{}try{this.map.removeSource(o);}catch{}}}addSourcesAndLayers(){for(let e of this.routes.values())this.addSourcesAndLayersForRoute(e);this.syncRouteCollision();}syncRouteCollision(){let e=[];for(let n of this.routes.values())for(let o of n.route.steps){let c=this.getFloorKeyForStep(o);for(let s of o.coordinates)e.push({lng:s.lng,lat:s.lat,floorKey:c});}this.mapvxMap.setRouteCollisionPath(e);}addRoute(e,n){let o=$x(e);this.routes.set(o.id,o),this.lastAddedRouteId=o.id,this.addSourcesAndLayersForRoute(o),this.setSourceData(o,o.aheadId,e.steps),this.setLayerPaint(o.aheadId,n),this.updateLayerFilter(o.aheadId),this.syncRouteCollision();}updateRouteProgress(e,n,o){let c=this.routes.get(e);if(!c)return;let m=c.route.steps,w=1/0,I=0,P=0,L=0;for(let ee=0;ee<m.length;ee++){let de=m[ee].coordinates;for(let me=0;me<de.length-1;me++){let Oe=de[me],Le=de[me+1],{fraction:ut,dist:et}=this.projectPointToSegment(n,Oe,Le);et<w&&(w=et,I=ee,P=me,L=ut);}}let B=[];for(let ee=0;ee<I;ee++)B.push({type:"Feature",properties:{floor_key:this.getFloorKeyForStep(m[ee])},geometry:{type:"LineString",coordinates:m[ee].geoJsonCoordinates}});let Y=m[I],W=Y.coordinates,ue=[];for(let ee=0;ee<=P;ee++)ue.push([W[ee].lng,W[ee].lat]);let _e=W[P],he=W[Math.min(P+1,W.length-1)],Pe=_e.lat+L*(he.lat-_e.lat),Ke=_e.lng+L*(he.lng-_e.lng);ue.push([Ke,Pe]),ue.length>=2&&B.push({type:"Feature",properties:{floor_key:this.getFloorKeyForStep(Y)},geometry:{type:"LineString",coordinates:ue}});let ot=[],Zt=[[Ke,Pe]];for(let ee=P+1;ee<W.length;ee++)Zt.push([W[ee].lng,W[ee].lat]);Zt.length>=2&&ot.push({type:"Feature",properties:{floor_key:this.getFloorKeyForStep(Y)},geometry:{type:"LineString",coordinates:Zt}});for(let ee=I+1;ee<m.length;ee++)ot.push({type:"Feature",properties:{floor_key:this.getFloorKeyForStep(m[ee])},geometry:{type:"LineString",coordinates:m[ee].geoJsonCoordinates}});c.behindSourceData.features=B;let qt=this.map.getSource(c.behindId);qt?.setData(c.behindSourceData),c.aheadSourceData.features=ot;let st=this.map.getSource(c.aheadId);st?.setData(c.aheadSourceData),this.setLayerPaint(c.behindId,o),this.updateLayerFilter(c.behindId),this.updateLayerFilter(c.aheadId);}projectPointToSegment(e,n,o){let c=o.lng-n.lng,s=o.lat-n.lat,m=c*c+s*s;if(m===0){let Y=e.lng-n.lng,W=e.lat-n.lat;return {fraction:0,dist:Y*Y+W*W}}let w=((e.lng-n.lng)*c+(e.lat-n.lat)*s)/m;w=Math.max(0,Math.min(1,w));let I=n.lng+w*c,P=n.lat+w*s,L=e.lng-I,B=e.lat-P;return {fraction:w,dist:L*L+B*B}}setSourceData(e,n,o){let c=this.createFeaturesFrom(o),s=this.map.getSource(n);n===e.aheadId?(e.aheadSourceData.features=c,s?.setData(e.aheadSourceData)):n===e.behindId&&(e.behindSourceData.features=c,s?.setData(e.behindSourceData));}setCurrentSourceData(e,n){e.currentSourceData.properties={floor_key:this.getFloorKeyForStep(n)};let o=n?.coordinates[0];o!=null?e.currentSourceData.geometry.coordinates=[[o.lng,o.lat]]:e.currentSourceData.geometry.coordinates=[];let c=this.map.getSource(e.currentId);c?.setData(e.currentSourceData);}setLayerPaint(e,n){let o=this.preparePaintForLayer(n);for(let c in o)this.map.setPaintProperty(e,c,o[c]);}preparePaintForLayer(e){if("color"in e.routeStyle)return {"line-color":e.routeStyle.color,"line-gradient":null,"line-width":e.polylineWidth};{let{colors:n,positions:o}=e.routeStyle,c=o??e6(n.length);if(c.length!==n.length)throw new Error("Error: position array has different length than colors array");let s=t6(c,n);return {"line-color":null,"line-gradient":["interpolate",["linear"],["line-progress"],...s],"line-width":e.polylineWidth}}}updateLayerFilter(e,n){let o=n??this.mapvxMap.getCurrentFloor();o!==void 0&&this.map.getStyle().layers.some(c=>c.id===e)&&this.map.setFilter(e,["==",["get","floor_key"],o]);}getFloorKeyForStep(e){var n,o,c,s,m,w,I;if(!e)return this.mapvxMap.getCurrentFloor();if(((o=(n=e.startInsideFloor)===null||n===void 0?void 0:n.length)!==null&&o!==void 0?o:0)>0)return ((s=(c=e.endInsideFloor)===null||c===void 0?void 0:c.length)!==null&&s!==void 0?s:0)>0&&e.startInsideFloor!==e.endInsideFloor&&!e.elevatorStep?e.endInsideFloor:e.startInsideFloor;if(((w=(m=e.endInsideFloor)===null||m===void 0?void 0:m.length)!==null&&w!==void 0?w:0)>0)return e.endInsideFloor;let L=this.mapvxMap.getInnerFloors().find(B=>B.reachableFromGPS===true);return (I=L?.key)!==null&&I!==void 0?I:""}createFeaturesFrom(e){return e.map(o=>({type:"Feature",properties:{floor_key:this.getFloorKeyForStep(o)},geometry:{type:"LineString",coordinates:o.geoJsonCoordinates}}))}updateRouteLayers(e){for(let n of this.routes.values())this.updateLayerFilter(n.aheadId,e),this.updateLayerFilter(n.behindId,e),this.updateLayerFilter(n.currentId,e);}updateRouteMarkerVisibility(e){var n,o,c;for(let s of this.routes.values())((n=s.routeMarker)===null||n===void 0?void 0:n.floorId)===e?(o=s.routeMarker)===null||o===void 0||o.show(this.map):(c=s.routeMarker)===null||c===void 0||c.hide();}updatePlaceFloorForRouting(e,n,o){var c;n&&o&&(this.mapvxMap.updatePlaceAndFloorForRouting(n,o),this.updateRouteLayers(o),(c=e.routeMarker)===null||c===void 0||c.setFloor(o),this.updateRouteMarkerVisibility(o));}startAnimating(e,n,o){var c,s,m;let w=$x(e);this.routes.set(w.id,w),this.lastAddedRouteId=w.id,w.animationStatus="STARTED",w.route=e;let I=e.steps[0];if(this.addSourcesAndLayersForRoute(w),this.updatePlaceFloorForRouting(w,I.startInsidePlace,I.startInsideFloor),this.setSourceData(w,w.aheadId,e.steps),this.setSourceData(w,w.behindId,[]),w.currentSourceData.properties={floor_key:this.getFloorKeyForStep(I)},w.currentSourceData.geometry.coordinates=[[I.coordinates[0].lng,I.coordinates[0].lat]],this.setLayerPaint(w.aheadId,n.aheadConfig),this.setLayerPaint(w.behindId,n.behindConfig),this.setLayerPaint(w.currentId,n.behindConfig),w.animationConfig=o,w.routeMarker=new uu({coordinate:I.startLocation,floorId:I.startInsideFloor,icon:n.routeIcon,rotationAlignment:"map"}),w.routeMarker.addToMap(this.map),!((c=o.autoFitByPlace)===null||c===void 0)&&c.enabled&&e.steps.length>0&&I.startInsidePlace){w.currentPlaceId=I.startInsidePlace;let P={padding:(s=o.autoFitByPlace.padding)!==null&&s!==void 0?s:Kf};this.mapvxMap.fitRouteByPlace(e,I.startInsidePlace,P);}(m=o.callBack)===null||m===void 0||m.call(o,{isFinished:false,step:I}),w.conditions={index:0,coordinatesIndex:0,iconRotation:0,rotatingIcon:true,startTime:void 0,progress:0,resetTime:false,waitStartTime:void 0,animationId:requestAnimationFrame(P=>this.animateStep(P,w)),onFinish:P=>this.prepareForNextStep(P,w)},this.syncRouteCollision();}clearRouteInstance(e){var n;(n=e.routeMarker)===null||n===void 0||n.remove(),e.routeMarker=void 0,this.setSourceData(e,e.aheadId,[]),this.setSourceData(e,e.behindId,[]),e.currentSourceData.geometry.coordinates=[];let o=this.map.getSource(e.currentId);o?.setData(e.currentSourceData),(e.animationStatus==="STARTED"||e.stepAnimationStatus==="ANIMATING")&&e.conditions!=null&&cancelAnimationFrame(e.conditions.animationId),e.animationStatus="NO_ROUTE",e.stepAnimationStatus="NO_ROUTE",e.conditions=void 0,e.animationConfig=void 0,e.currentPlaceId=void 0;}removeRoute(e){let n=this.resolveInstance(e);if(n){if(this.clearRouteInstance(n),this.removeSourcesAndLayersForRoute(n),this.routes.delete(n.id),this.lastAddedRouteId===n.id){let o=[...this.routes.keys()];this.lastAddedRouteId=o.length>0?o[o.length-1]:void 0;}this.syncRouteCollision();}}removeAllRoutes(){for(let e of this.routes.values())this.clearRouteInstance(e),this.removeSourcesAndLayersForRoute(e);this.routes.clear(),this.lastAddedRouteId=void 0,this.syncRouteCollision();}getRouteIds(){return [...this.routes.keys()]}internalPause(e){e.animationStatus=="STARTED"&&e.conditions!=null&&(cancelAnimationFrame(e.conditions.animationId),e.animationStatus="PAUSED");}pauseAnimation(e){let n=this.resolveInstance(e);n&&this.internalPause(n);}internalResume(e){e.animationStatus=="PAUSED"&&e.conditions!=null&&(e.conditions.resetTime=true,e.conditions.animationId=requestAnimationFrame(n=>this.animateStep(n,e)),e.animationStatus="STARTED");}resumeAnimation(e){let n=this.resolveInstance(e);n&&this.internalResume(n);}restartAnimation(e){var n,o,c,s,m;let w=this.resolveInstance(e);if(!w)throw new Error("Does not exist animated route to restart");if(w.animationStatus==="NO_ROUTE")throw new Error("Does not exist animated route to restart");if(w.conditions==null||w.animationConfig==null||w.route==null||w.routeMarker==null)throw new Error("Error: conditions and animationConfig should not be null at this point");w.animationStatus==="STARTED"&&cancelAnimationFrame(w.conditions.animationId),w.animationStatus="STARTED";let I=w.route.steps[0];this.updatePlaceFloorForRouting(w,I.startInsidePlace,I.startInsideFloor),this.setSourceData(w,w.aheadId,w.route.steps),this.setSourceData(w,w.behindId,[]),w.currentSourceData.properties={floor_key:this.getFloorKeyForStep(I)},w.currentSourceData.geometry.coordinates=[[I.coordinates[0].lng,I.coordinates[0].lat]];let P=this.map.getSource(w.currentId);if(P?.setData(w.currentSourceData),(n=this.setMarkerRotation(w,0))===null||n===void 0||n.setLngLat(I.startLocation).addTo(this.map),!((o=w.animationConfig.autoFitByPlace)===null||o===void 0)&&o.enabled&&w.route.steps.length>0&&I.startInsidePlace){w.currentPlaceId=I.startInsidePlace;let L={padding:(c=w.animationConfig.autoFitByPlace.padding)!==null&&c!==void 0?c:Kf};this.mapvxMap.fitRouteByPlace(w.route,I.startInsidePlace,L);}(m=(s=w.animationConfig).callBack)===null||m===void 0||m.call(s,{isFinished:false,step:I}),w.conditions={index:0,coordinatesIndex:0,iconRotation:0,rotatingIcon:true,startTime:void 0,progress:0,resetTime:false,waitStartTime:void 0,animationId:requestAnimationFrame(L=>this.animateStep(L,w)),onFinish:L=>this.prepareForNextStep(L,w)};}stopAnimation(e){let n=this.resolveInstance(e);n&&n.animationStatus!="FINISHED"&&(n.animationStatus="FINISHED");}addStepAnimation(e,n,o){var c,s,m;let w=$x(e);this.routes.set(w.id,w),this.lastAddedRouteId=w.id,w.stepAnimationStatus="WAITING",w.route=e;let I=e.steps[0];if(this.addSourcesAndLayersForRoute(w),this.updatePlaceFloorForRouting(w,I.startInsidePlace,I.startInsideFloor),this.setSourceData(w,w.aheadId,e.steps),this.setSourceData(w,w.behindId,[]),this.setCurrentSourceData(w,I),this.setLayerPaint(w.aheadId,n.aheadConfig),this.setLayerPaint(w.behindId,n.behindConfig),this.setLayerPaint(w.currentId,n.behindConfig),w.animationConfig=o,w.routeMarker=new uu({coordinate:I.startLocation,floorId:I.startInsideFloor,icon:n.routeIcon,rotationAlignment:"map"}),w.routeMarker.addToMap(this.map),this.cameraFollow(w,I.startLocation),!((c=o.autoFitByPlace)===null||c===void 0)&&c.enabled&&e.steps.length>0&&I.startInsidePlace){w.currentPlaceId=I.startInsidePlace;let P={padding:(s=o.autoFitByPlace.padding)!==null&&s!==void 0?s:Kf};this.mapvxMap.fitRouteByPlace(e,I.startInsidePlace,P);}(m=o.callBack)===null||m===void 0||m.call(o,{isFinished:false,step:I}),w.conditions={index:0,coordinatesIndex:0,iconRotation:0,rotatingIcon:true,startTime:void 0,progress:0,resetTime:false,waitStartTime:void 0,animationId:0,isStepByStep:true,onFinish:()=>{var P,L,B,Y;if(w.conditions==null||w.animationConfig==null||w.route==null)throw new Error("Error: conditions, animationConfig or route should not be null at this point");let{index:W}=w.conditions;W++;let ue=w.route.steps.slice(0,W),_e=w.route.steps.slice(W),he=w.route.steps[W];if(this.setSourceData(w,w.behindId,ue),this.setSourceData(w,w.aheadId,_e),this.setCurrentSourceData(w,he),w.conditions.index=W,W<e.steps.length){let Pe=e.steps[W];if(!((P=o.autoFitByPlace)===null||P===void 0)&&P.enabled&&Pe&&w.route!=null){let Ke=Pe.startInsidePlace||Pe.endInsidePlace;if(Ke&&Ke!==w.currentPlaceId){w.currentPlaceId=Ke;let ot={padding:(L=o.autoFitByPlace.padding)!==null&&L!==void 0?L:Kf};this.mapvxMap.fitRouteByPlace(w.route,Ke,ot);}}(B=o.callBack)===null||B===void 0||B.call(o,{isFinished:false,step:Pe});}else (Y=o.callBack)===null||Y===void 0||Y.call(o,{isFinished:true,step:null});w.stepAnimationStatus="WAITING";}},this.syncRouteCollision();}nextStepAnimation(e){let n=this.resolveInstance(e);if(!n)throw new Error("Error: Does not exist step animation");if(n.stepAnimationStatus==="NO_ROUTE")throw new Error("Error: Does not exist step animation");if(n.conditions==null||n.animationConfig==null||n.route==null)throw new Error("Error: conditions, animationConfig or route should not be null at this point");n.stepAnimationStatus==="ANIMATING"&&cancelAnimationFrame(n.conditions.animationId),n.stepAnimationStatus="ANIMATING";let{index:o}=n.conditions;if(o<n.route.steps.length)n.conditions.coordinatesIndex=0,n.conditions.startTime=void 0,n.conditions.progress=0,n.conditions.rotatingIcon=true,n.conditions.waitStartTime=void 0,n.conditions.animationId=requestAnimationFrame(c=>this.animateStep(c,n));else throw new Error("Error: Does not exist next step to animate")}previousStepAnimation(e){var n,o,c,s;let m=this.resolveInstance(e);if(!m)throw new Error("Error: Does not exist step animation");if(m.stepAnimationStatus==="NO_ROUTE")throw new Error("Error: Does not exist step animation");if(m.conditions==null||m.animationConfig==null||m.route==null)throw new Error("Error: conditions, animationConfig or route should not be null at this point");m.stepAnimationStatus==="ANIMATING"&&cancelAnimationFrame(m.conditions.animationId),m.stepAnimationStatus="WAITING";let{index:w}=m.conditions;if(w>0){w--;let I=m.route.steps.slice(0,w),P=m.route.steps.slice(w),L=m.route.steps[w];this.setSourceData(m,m.behindId,I),this.setSourceData(m,m.aheadId,P),this.setCurrentSourceData(m,L),L.startInsideFloor!=L.endInsideFloor&&L.startInsideFloor&&this.updatePlaceFloorForRouting(m,L.startInsidePlace,L.startInsideFloor),m.conditions.index=w,m.conditions.coordinatesIndex=0,m.conditions.startTime=void 0,m.conditions.progress=0,m.conditions.rotatingIcon=true,m.conditions.waitStartTime=void 0,this.setMarkerLngLat(m,L.startLocation);let B=I[I.length-1];if(B!=null){let Y=B.coordinates.slice(-2),W=pp.bearingInDegBetween(Y[0],Y[1]);this.setMarkerRotation(m,W);}else this.setMarkerRotation(m,0);if(!((n=m.animationConfig.autoFitByPlace)===null||n===void 0)&&n.enabled&&L&&m.route!=null){let Y=L.startInsidePlace||L.endInsidePlace;if(Y&&Y!==m.currentPlaceId){m.currentPlaceId=Y;let W={padding:(o=m.animationConfig.autoFitByPlace.padding)!==null&&o!==void 0?o:Kf};this.mapvxMap.fitRouteByPlace(m.route,Y,W);}}(s=(c=m.animationConfig).callBack)===null||s===void 0||s.call(c,{isFinished:false,step:L});}else throw new Error("previous step doesn't exists to animate")}centerOnCurrentStep(e){var n;let o=this.resolveInstance(e);if(!o)throw new Error("Error: Does not exist step animation");if(o.stepAnimationStatus==="NO_ROUTE")throw new Error("Error: Does not exist step animation");if(o.conditions==null||o.animationConfig==null||o.route==null)throw new Error("Error: conditions, animationConfig or route should not be null at this point");let c=(n=o.routeMarker)===null||n===void 0?void 0:n.getLngLat();if(c)this.map.panTo(c);else throw new Error("Error: marker has no position set")}prepareForNextStep(e,n){var o,c,s,m,w,I;if(n.conditions==null||n.animationConfig==null||n.route==null)throw new Error("Error: conditions, animationConfig or route should not be null at this point");let{index:P}=n.conditions,L=n.route.steps.slice(0,P+1),B=n.route.steps.slice(P+1);if(this.setSourceData(n,n.behindId,L),this.setSourceData(n,n.aheadId,B),n.currentSourceData.geometry.coordinates=[],P+1<n.route.steps.length){let Y=n.route.steps[P+1];if(n.currentSourceData.geometry.coordinates.push([Y.startLocation.lng,Y.startLocation.lat]),n.currentSourceData.properties={floor_key:this.getFloorKeyForStep(Y)},n.conditions.startTime=e,n.conditions.index++,n.conditions.coordinatesIndex=0,n.conditions.progress=0,n.conditions.rotatingIcon=true,cA(n.route.steps[P].endLocation,Y.startLocation)||(n.conditions.nextFloorFirstStepIndex=P+2),n.conditions.animationId=requestAnimationFrame(W=>this.animateStep(W,n)),!((o=n.animationConfig.autoFitByPlace)===null||o===void 0)&&o.enabled&&Y&&n.route!=null){let W=Y.startInsidePlace||Y.endInsidePlace;if(W&&W!==n.currentPlaceId){n.currentPlaceId=W;let ue={padding:(c=n.animationConfig.autoFitByPlace.padding)!==null&&c!==void 0?c:Kf};this.mapvxMap.fitRouteByPlace(n.route,W,ue);}}(m=(s=n.animationConfig).callBack)===null||m===void 0||m.call(s,{isFinished:false,step:n.route.steps[P+1]});}else (I=(w=n.animationConfig).callBack)===null||I===void 0||I.call(w,{isFinished:true,step:null}),n.animationStatus="FINISHED";}animateStep(e,n){var o,c;if(n.conditions==null||n.animationConfig==null||n.route==null)throw new Error("Error: conditions and animationConfig should not be null at this point");let{startTime:s,resetTime:m,progress:w}=n.conditions,{coordinatesIndex:I,iconRotation:P,index:L,onFinish:B,rotatingIcon:Y,waitStartTime:W}=n.conditions,{stepTime:ue,minimumSpeed:_e,iconRotationTime:he,changeFloorTime:Pe}=n.animationConfig;if(s==null){n.conditions.startTime=e,n.conditions.animationId=requestAnimationFrame(st=>this.animateStep(st,n));return}m?(s=e-w,n.conditions.startTime=s,m=false,n.conditions.resetTime=m):(w=e-s,n.conditions.progress=w);let Ke=w/1e3,ot=n.route.steps[L];if(ot.coordinates.length<=0){B?.(e);return}let Zt=ot.coordinates[I],qt=ot.coordinates[I+1];if(Zt!=null&&qt!=null){if(Y){let Le=pp.bearingInDegBetween(Zt,qt);if(he===0||n.conditions.nextFloorFirstStepIndex===L||Math.abs(Le-n.conditions.iconRotation)<15){n.conditions.nextFloorFirstStepIndex=void 0,this.setMarkerRotation(n,Le),n.conditions.startTime=e,n.conditions.rotatingIcon=false,n.conditions.iconRotation=Le,n.conditions.animationId=requestAnimationFrame(ut=>this.animateStep(ut,n));return}else if(Ke<he){let ut=pp.intermediateAngleBetween(P,Le,Ke/he);this.setMarkerRotation(n,ut),n.conditions.animationId=requestAnimationFrame(et=>this.animateStep(et,n));return}else {this.setMarkerRotation(n,Le),n.conditions.startTime=e,n.conditions.rotatingIcon=false,n.conditions.iconRotation=Le,n.conditions.animationId=requestAnimationFrame(ut=>this.animateStep(ut,n));return}}if(ot.startInsideFloor!==ot.endInsideFloor){if(W==null){n.conditions.waitStartTime=e,n.conditions.animationId=requestAnimationFrame(Le=>this.animateStep(Le,n));return}if(e-W<Pe*1e3){n.conditions.animationId=requestAnimationFrame(Le=>this.animateStep(Le,n));return}else {this.updatePlaceFloorForRouting(n,ot.endInsidePlace,ot.endInsideFloor),this.setMarkerLngLat(n,ot.endLocation),n.conditions.waitStartTime=void 0,B?.(e);return}}let st=pp.distance(Zt,qt),ee=Math.max(ot.distance/ue,_e??0);if(ee*Ke>st){n.currentSourceData.geometry.coordinates.push([qt.lng,qt.lat]);let Le=this.map.getSource(n.currentId);if(Le?.setData(n.currentSourceData),I+2<ot.coordinates.length){let ut=ot.coordinates[I+2];if(!cA(qt,ut))if(n.conditions.isStepByStep)n.conditions.rotatingIcon=true;else {let et=pp.bearingInDegBetween(qt,ut);n.conditions.iconRotation=et,(o=n.routeMarker)===null||o===void 0||o.setRotation(et);}n.conditions.startTime=e,n.conditions.progress=0,n.conditions.coordinatesIndex++,n.conditions.animationId=requestAnimationFrame(et=>this.animateStep(et,n));return}else {B?.(e);return}}let de=ee*Ke/st,me=st===0?qt:pp.intermediatePointBetween(Zt,qt,Math.min(de,1));n.currentSourceData.geometry.coordinates.push([me.lng,me.lat]);let Oe=this.map.getSource(n.currentId);Oe?.setData(n.currentSourceData),this.setMarkerLngLat(n,me),(c=n.routeMarker)===null||c===void 0||c.addTo(this.map),n.conditions.animationId=requestAnimationFrame(Le=>this.animateStep(Le,n));return}else {B?.(e);return}}setMarkerLngLat(e,n){var o,c;!((o=e.conditions)===null||o===void 0)&&o.isStepByStep&&this.cameraFollow(e,n),(c=e.routeMarker)===null||c===void 0||c.setLngLat(n);}setMarkerRotation(e,n){var o,c,s,m,w;return !((o=e.conditions)===null||o===void 0)&&o.isStepByStep&&!(!((c=e.animationConfig)===null||c===void 0)&&c.keepFixedBearing)&&this.mapvxMap.updateCamera({duration:(s=e.animationConfig)===null||s===void 0?void 0:s.iconRotationTime,animate:true,bearing:n,center:(m=e.routeMarker)===null||m===void 0?void 0:m.getLngLat()}),(w=e.routeMarker)===null||w===void 0?void 0:w.setRotation(n)}setMarkerFloor(e,n){var o;let c=this.resolveInstance(n);(o=c?.routeMarker)===null||o===void 0||o.setFloor(e);}cameraFollow(e,n){var o,c,s,m;let w=(c=(o=e.animationConfig)===null||o===void 0?void 0:o.keepFixedBearing)!==null&&c!==void 0?c:false;this.mapvxMap.updateCamera(Object.assign({center:n,animate:true,duration:(s=e.animationConfig)===null||s===void 0?void 0:s.iconRotationTime},w?{}:{bearing:(m=e.routeMarker)===null||m===void 0?void 0:m.getRotation()}));}};var uA=["ar"];var dA=(function(t){return t.cardinal="CARDINAL",t.clock="CLOCK",t.relative="RELATIVE",t})(dA||{}),pA=(function(t){return t.metric="METRIC",t.imperial="IMPERIAL",t.steps="STEPS",t})(pA||{}),Gx=(function(t){return t.walking="WALKING",t.driving="DRIVING",t.bicycling="BICYCLING",t.transit="TRANSIT",t})(Gx||{}),Uo=class{constructor(e){var n,o,c,s,m;this.initialLocation=e.initialLocation,this.finalLocation=e.finalLocation,this.preferAccessibleRoute=(n=e.preferAccessibleRoute)!==null&&n!==void 0?n:false,this.language=(o=e.language)!==null&&o!==void 0?o:"en",this.unitSystem=(c=e.unitSystem)!==null&&c!==void 0?c:pA.metric,this.announceFormat=(s=e.announceFormat)!==null&&s!==void 0?s:dA.relative,this.userBearing=(m=e.userBearing)!==null&&m!==void 0?m:0;}},Wl=class{constructor(e){var n,o;this.polylineWidth=(n=e.polylineWidth)!==null&&n!==void 0?n:10,this.routeStyle=(o=e.routeStyle)!==null&&o!==void 0?o:{type:"Solid",color:"#1257ED"};}};var hp=class{constructor(e){var n,o,c,s,m;this.stepTime=(n=e.stepTime)!==null&&n!==void 0?n:3,this.minimumSpeed=(o=e.minimumSpeed)!==null&&o!==void 0?o:40,this.changeFloorTime=(c=e.changeFloorTime)!==null&&c!==void 0?c:0,this.iconRotationTime=(s=e.iconRotationTime)!==null&&s!==void 0?s:0,this.keepFixedBearing=(m=e.keepFixedBearing)!==null&&m!==void 0?m:false,this.callBack=e.callBack,this.autoFitByPlace=e.autoFitByPlace;}},fp=class{constructor(e){var n,o,c;if(this.aheadPathStyle=(n=e.aheadPathStyle)!==null&&n!==void 0?n:{type:"Solid",color:"#0C0C0C"},this.behindPathStyle=(o=e.behindPathStyle)!==null&&o!==void 0?o:{type:"Solid",color:"#276EF1"},this.polylineWidth=(c=e.polylineWidth)!==null&&c!==void 0?c:10,e.routeIcon!=null)this.routeIcon=e.routeIcon;else {let s=new Image(40,40);e.routeIconConfig!=null?s.src=Ux(e.routeIconConfig):s.src=JF,this.routeIcon=s;}}get aheadConfig(){return new Wl({polylineWidth:this.polylineWidth,routeStyle:this.aheadPathStyle})}get behindConfig(){return new Wl({polylineWidth:this.polylineWidth,routeStyle:this.behindPathStyle})}};var gp="#276EF1",qx=["belowLabels","aboveBasemap","top"],mp={fillColor:gp,fillOpacity:.14,strokeColor:gp,strokeWidth:2,strokeOpacity:.65,renderOrder:"aboveBasemap"};function hA(t){return Object.assign(Object.assign({},t),{coordinate:Object.assign({},t.coordinate)})}function UQ(t){if(!Number.isFinite(t)||t<=0)throw new Error(`Invalid radiusMeters: ${t}. Must be a positive finite number.`)}function VQ(t){if(t==null||typeof t!="object")throw new Error("Invalid coordinate: expected an object with lat and lng properties.");if(!Number.isFinite(t.lat)||!Number.isFinite(t.lng)||t.lat<-90||t.lat>90||t.lng<-180||t.lng>180)throw new Error(`Invalid coordinate: lat=${t.lat}, lng=${t.lng}. latitude must be in [-90, 90], longitude in [-180, 180], and both finite.`)}function s6(t,e){return Number.isFinite(t)?Math.max(0,Math.min(1,t)):e}function fA(t,e=false){var n,o,c,s,m;if(UQ(t.radiusMeters),VQ(t.coordinate),t.renderOrder!==void 0&&!qx.includes(t.renderOrder))throw new Error(`Invalid renderOrder: ${String(t.renderOrder)}. Must be one of: ${qx.join(", ")}.`);return {id:(n=t.id)!==null&&n!==void 0?n:Vx(),coordinate:{lat:t.coordinate.lat,lng:t.coordinate.lng},radiusMeters:t.radiusMeters,fillColor:(o=t.fillColor)!==null&&o!==void 0?o:mp.fillColor,fillOpacity:s6(t.fillOpacity,mp.fillOpacity),strokeColor:(c=t.strokeColor)!==null&&c!==void 0?c:mp.strokeColor,strokeWidth:(s=t.strokeWidth)!==null&&s!==void 0?s:mp.strokeWidth,strokeOpacity:s6(t.strokeOpacity,mp.strokeOpacity),floorId:t.floorId,renderOrder:(m=t.renderOrder)!==null&&m!==void 0?m:mp.renderOrder,hidden:e}}function mA(t,e,n,o=64){let c=Number.isFinite(o)?Math.max(3,Math.floor(o)):64,s=[],m=e*Math.PI/180,w=110574,I=111320*Math.cos(m||1e-6),P=n/w,L=n/(I||1);for(let B=0;B<c;B+=1){let Y=B/c*Math.PI*2;s.push([t+L*Math.cos(Y),e+P*Math.sin(Y)]);}return s.push([s[0][0],s[0][1]]),s}function gA(t){if(t instanceof Error)return t;{let e=String(t);return new Error(e)}}var hu=class{constructor(){this.logger=Tv.getInstance();}logEvent(e,n={}){this.logger.logEvent(e,this.prepareSegmentation(n));}logError(e,...n){let o=gA(e);this.logger.logError(o,...n);}logWarning(e,...n){let o=gA(e);this.logger.logWarning(o,...n);}logDebug(...e){this.logger.logDebug(...e);}debugLog(...e){this.logger.debugLog(e);}};var yA={enabled:true,maxTiles:400,ttlMs:18e5,persistToServiceWorker:true,preloadAdjacentZooms:false,maxConcurrentTileFetches:6},vA=1e5;var a6=function(t,e){e===void 0&&(e=5);for(var n=Math.pow(10,e),o=t.length,c=new Array(Math.floor(t.length/2)),s=0,m=0,w=0,I=0;s<o;++I){var P=1,L=0,B=void 0;do B=t.charCodeAt(s++)-63-1,P+=B<<L,L+=5;while(B>=31);m+=P&1?~(P>>1):P>>1,P=1,L=0;do B=t.charCodeAt(s++)-63-1,P+=B<<L,L+=5;while(B>=31);w+=P&1?~(P>>1):P>>1,c[I]=[m/n,w/n];}return c.length=I,c};var bi=[];for(let t=0;t<256;++t)bi.push((t+256).toString(16).slice(1));function l6(t,e=0){return (bi[t[e+0]]+bi[t[e+1]]+bi[t[e+2]]+bi[t[e+3]]+"-"+bi[t[e+4]]+bi[t[e+5]]+"-"+bi[t[e+6]]+bi[t[e+7]]+"-"+bi[t[e+8]]+bi[t[e+9]]+"-"+bi[t[e+10]]+bi[t[e+11]]+bi[t[e+12]]+bi[t[e+13]]+bi[t[e+14]]+bi[t[e+15]]).toLowerCase()}var _A,jQ=new Uint8Array(16);function bA(){if(!_A){if(typeof crypto>"u"||!crypto.getRandomValues)throw new Error("crypto.getRandomValues() not supported. See https://github.com/uuidjs/uuid#getrandomvalues-not-supported");_A=crypto.getRandomValues.bind(crypto);}return _A(jQ)}var $Q=typeof crypto<"u"&&crypto.randomUUID&&crypto.randomUUID.bind(crypto),xA={randomUUID:$Q};function HQ(t,e,n){if(xA.randomUUID&&!e&&!t)return xA.randomUUID();t=t||{};let o=t.random??t.rng?.()??bA();if(o.length<16)throw new Error("Random bytes length must be >= 16");if(o[6]=o[6]&15|64,o[8]=o[8]&63|128,e){if(n=n||0,n<0||n+16>e.length)throw new RangeError(`UUID byte range ${n}:${n+15} is out of buffer bounds`);for(let c=0;c<16;++c)e[n+c]=o[c];return e}return l6(o)}var wA=HQ;var xo=class{constructor(e){this.id=wA(),this.legs=[],e.legs.forEach(n=>{let o=new Wx(n);this.legs.push(o);});}get steps(){return this.legs.flatMap(e=>e.steps)}get duration(){return this.legs.map(e=>e.duration).reduce((e,n)=>e+n,0)}get length(){return this.legs.map(e=>e.distance).reduce((e,n)=>e+n,0)}},Wx=class{constructor(e){this.distance=e.distance.value,this.duration=e.duration.value,this.startLocation=e.start_location,this.endLocation=e.end_location,this.steps=[],e.steps.forEach(n=>{let o=new Zx(n);this.steps.push(o);});}},Zx=class{constructor(e){this.distance=e.distance.value,this.duration=e.duration.value,this.startLocation=e.start_location,this.startInsideFloor=e.start_inside_floor,this.startInsidePlace=e.start_inside_place,this.endLocation=e.end_location,this.endInsideFloor=e.end_inside_floor,this.endInsidePlace=e.end_inside_place,this.htmlInstruction=e.html_instructions,this.plainInstruction=e.plain_instructions,this.maneuver=e.maneuver,this.elevatorStep=e.elevator_step,this.showPopup=e.show_popup,this.iconPrefix=e.icon_prefix,this.polyline=new SA(e.polyline);}get geoJsonCoordinates(){return this.polyline.geoJsonCoordinates}get coordinates(){return this.polyline.coordinates}},SA=class{constructor(e){this.points=e.points,this.pointsLatLng=e.points_lat_lng,this.overviewPoints=e.overview_points,this.decodedPoints=a6(e.points).map(n=>({lat:n[0],lng:n[1]}));}get geoJsonCoordinates(){return this.overviewPoints!=null?this.overviewPoints.map(e=>[e.lng,e.lat]):this.decodedPoints.map(e=>[e.lng,e.lat])}get coordinates(){return this.overviewPoints!=null?this.overviewPoints:this.decodedPoints}};var yp=class{constructor(e){var n;this.mapvxId=e.id,this.country=e.country,this.city=e.city,this.title=e.title,this.category=e.category,this.icon=e.icon,this.description=e.description,this.hasPlaces=e.hasPlaces,this.properties=Lf.parseProperties((n=e.properties)!==null&&n!==void 0?n:[]);}};var Qf=class{constructor(e){this.schedule=e.schedules,this.routes=e.realtimeSchedules;}};function EA(t){let e=t.trim().toLowerCase();return e?/^(?:[a-z0-9-]+\.)*mapvx\.com$/.test(e):false}var Yx=class{constructor(e,n="https://public-api.mapvx.com",o){this.lang=e,this.mapvxRequestContext=o;let c=n.startsWith("http://")||n.startsWith("https://")?n:`https://${n}`,s=c.endsWith("/")?c.slice(0,-1):c;this.baseUrl=`${s}/api/sdk/v2/`,this.baseUrlPortal=`${s}/api/portal/`,this.baseUrlHealth="https://api.mapvx.com/api/sdk/v2/health",this.oldBaseUrl="https://api.mapvx.com/api/sdk/",this.routeBaseUrl="https://api.mapvx.com/sdk/";}setLang(e){this.lang=e;}getMapVxContextHeaders(e){var n,o,c,s,m,w,I,P;if(!EA(e)||!this.mapvxRequestContext)return {};let L=this.mapvxRequestContext,B={};return !((n=L.baseUrl)===null||n===void 0)&&n.trim()&&(B["X-MapVx-Base-Url"]=L.baseUrl.trim()),!((o=L.totemId)===null||o===void 0)&&o.trim()&&(B["X-MapVx-Totem-Id"]=L.totemId.trim()),!((c=L.originId)===null||c===void 0)&&c.trim()&&(B["X-MapVx-Origin-Id"]=L.originId.trim()),!((s=L.institutionId)===null||s===void 0)&&s.trim()&&(B["X-MapVx-Institution-Id"]=L.institutionId.trim()),!((m=L.parentPlace)===null||m===void 0)&&m.trim()&&(B["X-MapVx-Parent-Place"]=L.parentPlace.trim()),!((w=L.institutionName)===null||w===void 0)&&w.trim()&&(B["X-MapVx-Institution-Name"]=L.institutionName.trim()),!((I=L.fullUrl)===null||I===void 0)&&I.trim()&&(B["X-MapVx-Full-Url"]=L.fullUrl.trim()),!((P=L.mvxProduct)===null||P===void 0)&&P.trim()&&(B["mvx-product"]=L.mvxProduct.trim()),B}async fetchFromUrl(e,n,o){let c=new URL(e);c.search=new URLSearchParams(n).toString();let s=c.hostname,m=this.getMapVxContextHeaders(s),w=Object.assign({},o);return Object.keys(m).length>0&&(w.headers=Object.assign(Object.assign({},o.headers&&typeof o.headers=="object"&&!Array.isArray(o.headers)?o.headers:{}),m)),fetch(c.toString(),w)}async fetchTransport(e,n){let o={method:"GET",headers:{"content-type":"application/json",Authorization:`Bearer ${e}`}},c={stopId:n,lang:this.lang};return this.fetchFromUrl(this.oldBaseUrl+"vehiclesWithSchedules",c,o)}async fetchStops(e,n,o){let c={method:"GET",headers:{"content-type":"application/json",Authorization:`Bearer ${e}`}},s={stopId:n,vehicleId:o,lang:this.lang};return this.fetchFromUrl(this.oldBaseUrl+"stops",s,c)}async fetchMapStyle(e,n){let o={method:"GET",headers:{"content-type":"application/json",Authorization:`Bearer ${e}`}},c={lang:this.lang};return n!=null&&(c.place_id=n),this.fetchFromUrl(this.baseUrl+"mapStyleJson",c,o)}async fetchAnyMapStyle(e,n){let o={method:"GET",headers:{"content-type":"application/json",Authorization:`Bearer ${e}`}},c={lang:this.lang,institution_id:n};return this.fetchFromUrl(this.baseUrlPortal+"mapStyle",c,o)}async fetchAllowedPlaces(e){let n={method:"GET",headers:{"content-type":"application/json",Authorization:`Bearer ${e}`}},o={lang:this.lang};return this.fetchFromUrl(this.baseUrl+"availablePlaces",o,n)}async fetchPlacesFromAnyInstitution(e,n){let o={method:"GET",headers:{"content-type":"application/json",Authorization:`Bearer ${n}`}},c={institution_id:e,lang:this.lang};return this.fetchFromUrl(this.baseUrlPortal+"availablePlaces",c,o)}async fetchPlaceDetail(e,n,o,c,s){let m={method:"GET",headers:{"content-type":"application/json",Authorization:`Bearer ${e}`}},w={place_id:n,lang:this.lang};return o!==void 0&&(w.building=o),c!==void 0?w.floor=c:s!==void 0&&(w.floor=s),this.fetchFromUrl(this.baseUrl+"place",w,m)}async fetchAnyPlaceDetail(e,n,o,c,s){let m={method:"GET",headers:{"content-type":"application/json",Authorization:`Bearer ${e}`}},w={place_id:n,lang:this.lang};return o!==void 0&&(w.building=o),c!==void 0?w.floor=c:s!==void 0&&(w.floor=s),this.fetchFromUrl(this.baseUrlPortal+"place",w,m)}async fetchSubPlaces(e,n){let o={method:"GET",headers:{"content-type":"application/json",Authorization:`Bearer ${n}`}},c={targetPlace:e,lang:this.lang};return this.fetchFromUrl(this.baseUrl+"subPlaces",c,o)}async fetchAnySubPlaces(e,n){let o={method:"GET",headers:{"content-type":"application/json",Authorization:`Bearer ${n}`}},c={place_id:e,lang:this.lang};return this.fetchFromUrl(this.baseUrlPortal+"subPlaces",c,o)}buildRouteParams(e){let n={fromLatLng:void 0,fromBuilding:void 0,fromFloor:void 0,toLatLng:void 0,toBuilding:void 0,toFloor:void 0,fromPlaceId:void 0,toPlaceId:void 0,travelMode:Gx.walking,reducedMobility:e.preferAccessibleRoute?1:0,announceFormat:e.announceFormat,userBearing:e.userBearing,lang:this.lang,unitSystem:e.unitSystem};if("id"in e.initialLocation){let{id:c,buildingId:s,floorId:m,level:w}=e.initialLocation;n.fromPlaceId=c,s!==void 0&&(n.fromBuilding=s),m!==void 0?n.fromFloor=m:w!==void 0&&(n.fromFloor=w);}else {let{lat:c,lng:s,floorId:m,placeId:w}=e.initialLocation;n.fromLatLng=`${c},${s}`,n.fromFloor=m,n.fromBuilding=w;}if("id"in e.finalLocation){let{id:c,buildingId:s,floorId:m,level:w}=e.finalLocation;n.toPlaceId=c,s!==void 0&&(n.toBuilding=s),m!==void 0?n.toFloor=m:w!==void 0&&(n.toFloor=w);}else {let{lat:c,lng:s,floorId:m,placeId:w}=e.finalLocation;n.toLatLng=`${c},${s}`,n.toFloor=m,n.toBuilding=w;}let o={};for(let c in n){let s=n[c];s!=null&&(o[c]=s);}return o}async fetchRoute(e,n){let o={method:"GET",headers:{"content-type":"application/json",Authorization:`Bearer ${n}`}},c=this.buildRouteParams(e);return this.fetchFromUrl(this.routeBaseUrl+"route",c,o)}async fetchRouteV2(e,n){let o={method:"GET",headers:{"content-type":"application/json",Authorization:`Bearer ${n}`}},c=this.buildRouteParams(e);return this.fetchFromUrl(this.routeBaseUrl+"v2/route",c,o)}async fetchLiveRoute(e,n){let o={method:"GET",headers:{"content-type":"application/json",Authorization:`Bearer ${n}`}},c=this.buildRouteParams(e);return this.fetchFromUrl(this.routeBaseUrl+"liveroute",c,o)}async fetchInstitutions(e){let n={method:"GET",headers:{"content-type":"application/json",Authorization:`Bearer ${e}`}},o={lang:this.lang};return this.fetchFromUrl(this.baseUrl+"institution",o,n)}async fetchSearchResults(e,n,o,c,s,m,w,I){let P={method:"GET",headers:{"content-type":"application/json",Authorization:`Bearer ${o}`}},L={institution_id:e,input:n,lang:this.lang};return c&&(L.parentPlaces=[...c]),s&&(L.origin=s),m&&(L.lat=m),w&&(L.lng=w),I&&(L.floor=I),this.fetchFromUrl(this.baseUrl+"searchPlacesWithFilters",L,P)}async fetchSearchPlacesByTags(e,n,o,c,s,m,w,I,P){let L={method:"GET",headers:{"content-type":"application/json",Authorization:`Bearer ${o}`}},B={institution_id:e,tags:[...n],lang:this.lang};return c&&c.length>0&&(B.parentPlaces=[...c]),s&&(B.sort=s),m&&(B.origin=m),w&&(B.lat=w),I&&(B.lng=I),P&&(B.floor=P),this.fetchFromUrl(this.baseUrl+"searchPlacesByTags",B,L)}async fetchConfiguration(e,n,o){let c={method:"GET",headers:{"content-type":"application/json",Authorization:`Bearer ${e}`}},s={lang:this.lang};return n&&(s.place_id=n),o&&(s.product=o),this.fetchFromUrl(this.baseUrl+"configuration",s,c)}async fetchCategories(e,n){let o={method:"GET",headers:{"content-type":"application/json",Authorization:`Bearer ${e}`}},c={lang:this.lang};return n&&(c.id=n),this.fetchFromUrl(this.baseUrl+"category",c,o)}async fetchRoutesForOrigin(e,n,o,c,s,m){let w={method:"GET",headers:{"content-type":"application/json",Authorization:`Bearer ${e}`}},I={placeId:n,fromPlace:o,announceFormat:c,unitSystem:s,mode:m,lang:this.lang};return this.fetchFromUrl(this.routeBaseUrl+"routes_for_origin",I,w)}async fetchCacheTimestamp(e,n){let o={method:"GET",headers:{"content-type":"application/json",Authorization:`Bearer ${e}`}},c={placeId:n};return this.fetchFromUrl(this.routeBaseUrl+"cache_timestamp",c,o)}async fetchCssCustomization(e,n){let o={method:"GET",headers:{"content-type":"application/json",Authorization:`Bearer ${e}`}},c={type:n};return this.fetchFromUrl(this.baseUrl+"styles/customStyles",c,o)}async postHealth(e,n,o,c,s){let m=JSON.stringify({healthPingId:n,placeId:o,totemId:c,status:s}),w={},I={method:"POST",headers:{accept:"application/json","Content-Type":"application/json",Authorization:`Bearer ${e}`},body:m};return this.fetchFromUrl(this.baseUrlHealth,w,I)}};function pr(t){if(typeof t=="string")return t;if(t&&typeof t=="object"){let e=t;if(typeof e.message=="string")return e.message;if(typeof e.error=="string")return e.error}return JSON.stringify(t)}var Jf=class extends hu{constructor(e,n,o,c,s){super(),this.currentLang="en",this.token=e,this.currentLang=n,this.requester=new Yx(n,o,s),this.cache=c??new ep;}setLang(e){this.currentLang=e,this.requester.setLang(e);}prepareSegmentation(e){return Object.assign(Object.assign({},e),{token:this.token})}async fetchAndParseMapStyle(e){if(e===void 0&&this.baseStyle)return this.baseStyle;try{let n=await this.requester.fetchMapStyle(this.token,e);if(!n.ok){let s=await n.json();throw new Error(`Fetch failed with status ${n.status}: ${pr(s)}`)}let c=(await n.json()).style;return e===void 0&&(this.baseStyle=c),this.logEvent("fetchAndParseMapStyle"),c}catch(n){throw this.logError(n,{functionName:"fetchAndParseMapStyle"}),new Error("Failed to fetch and parse map style",{cause:n})}}async fetchAndParseAnyMapStyle(e,n){try{let o=await this.requester.fetchAnyMapStyle(n,e);if(!o.ok){let m=await o.json();throw new Error(`Fetch failed with status ${o.status}: ${pr(m)}`)}let s=(await o.json()).style;return this.logEvent("fetchAndParseAnyMapStyle"),s}catch(o){throw this.logError(o,{functionName:"fetchAndParseAnyMapStyle"}),new Error("Failed to fetch and parse map style with bearer token",{cause:o})}}async fetchAndParseInstitutions(){try{let e=await this.requester.fetchInstitutions(this.token);if(!e.ok){let s=await e.json();throw new Error(`Fetch failed with status ${e.status}: ${pr(s)}`)}let n=await e.json(),o=[];for(let s of n){let m=new yp(s);o.push(m);}o.sort((s,m)=>s.title.localeCompare(m.title));let c=o;if(c)return this.logEvent("fetchAndParseInstitutionsV2"),c;throw new Error("No institutions associated to this apiKey")}catch(e){throw this.logError(e,{functionName:"fetchAndParseInstitutionsV2"}),new Error("Failed to fetch and parse institution",{cause:e})}}async fetchAndParsePlaceDetail(e){try{let{id:n,buildingId:o,floorId:c,level:s}=e,m=this.placeCacheKey(n,o),w=this.cache.getPlace(m,this.currentLang);if(w!=null)return this.logEvent("fetchAndParsePlaceDetail",{cached:"true"}),w;let I=await this.requester.fetchPlaceDetail(this.token,n,o,c,s);if(!I.ok){let B=await I.json();throw new Error(`Fetch failed with status ${I.status}: ${pr(B)}`)}let P=await I.json(),L=new xr(P);return this.cachePlace(L,o),this.logEvent("fetchAndParsePlaceDetail",{cached:"false"}),L}catch(n){throw new Error("Failed to fetch and parse place detail",{cause:n})}}async fetchAndParseAnyPlaceDetail(e,n){try{let{id:o,buildingId:c,floorId:s,level:m}=e,w=this.placeCacheKey(o,c),I=this.cache.getPlace(w,this.currentLang);if(I!=null)return this.logEvent("fetchAndParseAnyPlaceDetail",{cached:"true"}),I;let P=await this.requester.fetchAnyPlaceDetail(n,o,c,s,m);if(!P.ok){let Y=await P.json();throw new Error(`Fetch failed with status ${P.status}: ${pr(Y)}`)}let L=await P.json(),B=new xr(L);return this.cachePlace(B,c),this.logEvent("fetchAndParseAnyPlaceDetail",{cached:"false"}),B}catch(o){throw new Error("Failed to fetch and parse place detail with bearer token",{cause:o})}}placeCacheKey(e,n){return n!=null?`${e}_${n}`:e}cachePlace(e,n){this.cache.setPlace(e.mapvxId,e,this.currentLang),e.clientId!=null&&this.cache.setPlace(this.placeCacheKey(e.clientId,n),e,this.currentLang);}async fetchAndParseSubPlaces(e){try{let n=this.cache.getSubPlaces(e,this.currentLang);if(n!=null)return this.logEvent("fetchAndParseSubPlaces",{cached:"true"}),n.data;let o=await this.requester.fetchSubPlaces(e,this.token);if(!o.ok){let m=await o.json();throw new Error(`Fetch failed with status ${o.status}: ${pr(m)}`)}let s=(await o.json()).map(m=>new xr(m));return this.cache.setSubPlaces(e,this.currentLang,{timestamp:Date.now(),data:s}),this.logEvent("fetchAndParseSubPlaces",{cached:"false"}),s.forEach(m=>{this.cache.hasPlace(m.mapvxId,this.currentLang)||this.cache.setPlace(m.mapvxId,m,this.currentLang),m.clientId!=null&&!this.cache.hasPlace(m.clientId,this.currentLang)&&this.cache.setPlace(m.clientId,m,this.currentLang);}),s}catch(n){throw new Error("Failed to fetch and parse subplaces",{cause:n})}}async fetchAndParseAnySubPlaces(e,n){try{let o=await this.requester.fetchAnySubPlaces(e,n);if(!o.ok){let m=await o.json();throw new Error(`Fetch failed with status ${o.status}: ${pr(m)}`)}let s=(await o.json()).map(m=>new xr(m));return this.logEvent("fetchAndParseAnySubPlaces"),s.forEach(m=>{this.cache.hasPlace(m.mapvxId,this.currentLang)||this.cache.setPlace(m.mapvxId,m,this.currentLang),m.clientId!=null&&!this.cache.hasPlace(m.clientId,this.currentLang)&&this.cache.setPlace(m.clientId,m,this.currentLang);}),s}catch(o){throw new Error("Failed to fetch and parse any subplaces",{cause:o})}}async fetchAndParseAvailablePlaces(){try{let e=await this.requester.fetchAllowedPlaces(this.token);if(!e.ok){let c=await e.json();throw new Error(`Fetch failed with status ${e.status}: ${pr(c)}`)}let o=(await e.json()).map(c=>new xr(c));return this.logEvent("fetchAndParseAvailablePlaces"),o.forEach(c=>{this.cache.hasPlace(c.mapvxId,this.currentLang)||this.cache.setPlace(c.mapvxId,c,this.currentLang),c.clientId!=null&&!this.cache.hasPlace(c.clientId,this.currentLang)&&this.cache.setPlace(c.clientId,c,this.currentLang);}),o}catch(e){throw this.logError(e,{functionName:"fetchAndParseAvailablePlaces"}),new Error("Failed to fetch and parse parent places",{cause:e})}}async fetchAndParsePlacesFromInstitution(e,n){try{let o=await this.requester.fetchPlacesFromAnyInstitution(e,n);if(!o.ok){let m=await o.json();throw new Error(`Fetch failed with status ${o.status}: ${pr(m)}`)}let s=(await o.json()).map(m=>new xr(m));return this.logEvent("fetchAndParsePlacesFromInstitution"),s.forEach(m=>{this.cache.hasPlace(m.mapvxId,this.currentLang)||this.cache.setPlace(m.mapvxId,m,this.currentLang),m.clientId!=null&&!this.cache.hasPlace(m.clientId,this.currentLang)&&this.cache.setPlace(m.clientId,m,this.currentLang);}),s}catch(o){throw this.logError(o,{functionName:"fetchAndParsePlacesFromInstitution"}),new Error("Failed to fetch and parse parent places from institution",{cause:o})}}getCachedPlaces(e){let n=[];return e.forEach(o=>{let c=this.cache.getPlace(o,this.currentLang);c!=null&&n.push(c);}),n}getCachedSubPlaces(e){let n=this.cache.getSubPlaces(e,this.currentLang);return n?.data}async fetchAndParseRoute(e){try{let n="";"id"in e.finalLocation&&(n=e.finalLocation.id);let o=this.cache.getRoute(n);if(o!=null)return this.logEvent("fetchAndParseRoute",{cached:"true"}),this.debugLog("Route cache testing. Found in cach\xE9."),o.data;let c=await this.requester.fetchRoute(e,this.token);if(!c.ok){let w=await c.json();throw new Error(`Fetch failed with status ${c.status}: ${pr(w)}`)}let s=await c.json(),m=new xo(s[0]);return this.logEvent("fetchAndParseRoute"),this.debugLog("Route cache testing. Fetched."),m}catch(n){throw new Error("Failed to fetch and parse route",{cause:n})}}async fetchAndParseRouteV2(e){try{let n="";"id"in e.finalLocation&&(n=e.finalLocation.id);let o=this.cache.getRoute(n);if(o!=null)return this.logEvent("fetchAndParseRouteV2",{cached:"true"}),this.debugLog("Route cache testing. Found in cach\xE9."),o.data;let c=await this.requester.fetchRouteV2(e,this.token);if(!c.ok){let w=await c.json();throw new Error(`Fetch failed with status ${c.status}: ${pr(w)}`)}let s=await c.json(),m=new xo(s[0]);return this.logEvent("fetchAndParseRouteV2"),this.debugLog("Route cache testing. Fetched."),m}catch(n){throw new Error("Failed to fetch and parse route",{cause:n})}}async fetchAndParseLiveRoute(e){try{let n=await this.requester.fetchLiveRoute(e,this.token);if(!n.ok){let s=await n.json();throw new Error(`Fetch failed with status ${n.status}: ${pr(s)}`)}let o=await n.json(),c=new xo(o[0]);return this.logEvent("fetchAndParseLiveRoute"),this.debugLog("Live route fetched."),c}catch(n){throw new Error("Failed to fetch and parse route",{cause:n})}}async fetchAndParseTransport(e){try{let n=this.cache.getVehicle(e,this.currentLang);if(n!=null&&(Date.now()-n.timestamp<60*1e3||n.data.routes.length===0))return this.logEvent("fetchAndParseTransport",{cached:"true"}),n.data;let o=await this.requester.fetchTransport(this.token,e);if(!o.ok){let m=await o.json();throw new Error(`Fetch failed with status ${o.status}: ${pr(m)}`)}let c=await o.json();if(c.realtimeSchedules.length>0){let m=c.realtimeSchedules.map(I=>this.fetchAndParseStops(e,I.vehicleId)),w=await Promise.all(m);w.length>0&&c.realtimeSchedules.forEach(I=>{var P,L;I.stops=(L=(P=w.find(B=>B.id==I.vehicleId))===null||P===void 0?void 0:P.places)!==null&&L!==void 0?L:[];});}let s=new Qf(c);return this.cache.setVehicle(e,{timestamp:Date.now(),data:s},this.currentLang),this.logEvent("fetchAndParseTransport",{cached:"false"}),s}catch(n){let o=this.cache.getVehicle(e,this.currentLang);if(o!=null){let c=new Qf({realtimeSchedules:[],schedules:o.data.schedule});return this.logEvent("fetchAndParseTransport",{cached:"true"}),c}else throw new Error("Failed to fetch and parse transport",{cause:n})}}async fetchAndParseStops(e,n){try{let o=this.cache.getStops(e+n,this.currentLang);if(o!=null&&Date.now()-o.timestamp<60*1e3)return this.logEvent("fetchAndParseStops",{cached:"true"}),{id:n,places:o.data};let c=await this.requester.fetchStops(this.token,e,n);if(!c.ok){let w=await c.json();throw new Error(`Fetch failed with status ${c.status}: ${pr(w)}`)}let m=(await c.json()).map(w=>new xr(w));return this.cache.setStops(e+n,{timestamp:Date.now(),data:m},this.currentLang),this.logEvent("fetchAndParseStops",{cached:"false"}),{id:n,places:m}}catch(o){throw new Error("Failed to fetch and parse stops",{cause:o})}}async fetchAndParseSearchResults(e,n,o,c,s,m,w){try{let I=await this.requester.fetchSearchResults(e,n,this.token,o,c,s,m,w);if(!I.ok){let B=await I.json();throw new Error(`Fetch failed with status ${I.status}: ${pr(B)}`)}return (await I.json()).map(B=>new xr(B))}catch(I){throw new Error("Failed to fetch and parse search results",{cause:I})}}async fetchAndParseSearchPlacesByTags(e,n,o,c,s,m,w,I){try{let P=await this.requester.fetchSearchPlacesByTags(e,n,this.token,o,c,s,m,w,I);if(!P.ok){let Y=await P.json();throw new Error(`Fetch failed with status ${P.status}: ${pr(Y)}`)}let B=(await P.json()).map(Y=>new xr(Y));return this.logEvent("fetchAndParseSearchPlacesByTags"),B.forEach(Y=>{this.cache.hasPlace(Y.mapvxId,this.currentLang)||this.cache.setPlace(Y.mapvxId,Y,this.currentLang),Y.clientId!=null&&!this.cache.hasPlace(Y.clientId,this.currentLang)&&this.cache.setPlace(Y.clientId,Y,this.currentLang);}),B}catch(P){throw new Error("Failed to fetch and parse search places by tags",{cause:P})}}async fetchAndParseRoutesFromOrigin(e,n,o,c,s){try{let m=await this.requester.fetchRoutesForOrigin(this.token,e,n,o,c,s);if(!m.ok){let P=await m.json();throw new Error(`Fetch failed with status ${m.status}: ${pr(P)}`)}let{routes:w,accessibleRoutes:I}=await m.json();Object.entries(w).forEach(([P,L])=>{let B=new xo(L[0]);this.cache.setRoute(P,{timestamp:Date.now(),data:B});}),Object.entries(I).forEach(([P,L])=>{let B=new xo(L[0]);this.cache.setAccessibleRoute(P,{timestamp:Date.now(),data:B});}),this.debugLog("Route cache testing. Cache populated!");}catch(m){throw new Error("Failed to fetch and parse routes from origin results",{cause:m})}}async fetchAndParseCacheTimestamp(e){try{let n=await this.requester.fetchCacheTimestamp(this.token,e);if(!n.ok){let c=await n.json();throw new Error(`Fetch failed with status ${n.status}: ${pr(c)}`)}let{lastUpdate:o}=await n.json();return o}catch(n){throw new Error("Failed to fetch and parse cache timestamp",{cause:n})}}cleanRoutesCache(){this.cache.cleanRoutesCache(),this.cache.cleanAccessibleRoutesCache();}async fetchAndParseConfiguration(e,n){try{let o=this.cache.getConfiguration(e||"default",n||"default",this.currentLang);if(o!=null)return this.logEvent("fetchAndParseConfiguration",{cached:"true"}),o.data;let c=await this.requester.fetchConfiguration(this.token,e,n);if(!c.ok){let m=await c.json();throw new Error(`Fetch failed with status ${c.status}: ${pr(m)}`)}let s=await c.json();return this.cache.setConfiguration(e||"default",n||"default",this.currentLang,{timestamp:Date.now(),data:s}),this.logEvent("fetchAndParseConfiguration",{cached:"false"}),s}catch(o){throw this.logError(o,{functionName:"fetchAndParseConfiguration"}),new Error("Failed to fetch and parse configuration",{cause:o})}}async fetchAndParseCategories(e){try{let n=this.cache.getCategories(e||"default",this.currentLang);if(n!=null)return this.logEvent("fetchAndParseCategories",{cached:"true"}),n.data;let o=await this.requester.fetchCategories(this.token,e);if(!o.ok){let s=await o.json();throw new Error(`Fetch failed with status ${o.status}: ${pr(s)}`)}let c=await o.json();return this.cache.setCategories(e||"default",this.currentLang,{timestamp:Date.now(),data:c}),this.logEvent("fetchAndParseCategories",{cached:"false"}),c}catch(n){throw new Error("Failed to fetch and parse categories",{cause:n})}}async fetchAndParseCssCustomization(e){try{let n=await this.requester.fetchCssCustomization(this.token,e);if(!n.ok){let c=await n.json();throw new Error(`Fetch failed with status ${n.status}: ${pr(c)}`)}return await n.json()}catch(n){throw new Error("Failed to fetch and parse css customization",{cause:n})}}async postAndParseHealthPing(e,n,o,c){let s=await this.requester.postHealth(this.token,e,n,o,c);if(!s.ok){let w=await s.json();throw new Error(`Post failed with status ${s.status}: ${pr(w)}`)}return await s.json()}};function c6(t){var e,n,o,c,s,m;let w=[];!((e=t.startLocation)===null||e===void 0)&&e.lat&&(!((n=t.startLocation)===null||n===void 0)&&n.lng)&&w.push({lat:t.startLocation.lat,lng:t.startLocation.lng}),!((o=t.endLocation)===null||o===void 0)&&o.lat&&(!((c=t.endLocation)===null||c===void 0)&&c.lng)&&w.push({lat:t.endLocation.lat,lng:t.endLocation.lng});let I=(s=t.polyline)===null||s===void 0?void 0:s.overviewPoints;return Array.isArray(I)&&I.length>0?I.forEach(P=>{P?.lat&&P?.lng&&w.push({lat:P.lat,lng:P.lng});}):Array.isArray((m=t.polyline)===null||m===void 0?void 0:m.pointsLatLng)&&t.polyline.pointsLatLng.length>0&&t.polyline.pointsLatLng.forEach(P=>{P?.lat&&P?.lng&&w.push({lat:P.lat,lng:P.lng});}),w.length===0&&t.coordinates?t.coordinates:w}var em=x(Cv());var GQ=[{type:"directional",color:16777215,intensity:2,position:{x:50,y:100,z:80}},{type:"directional",color:16777215,intensity:1.5,position:{x:-50,y:80,z:-60}},{type:"ambient",color:16777215,intensity:1.5}],IA=t=>{let e=t.match(/\w\w/g);if(!e||e.length<3)throw new Error(`Invalid hex color: ${t}`);let n=Number.parseInt(e[0],16),o=Number.parseInt(e[1],16),c=Number.parseInt(e[2],16);return [n,o,c]};function d6(t){return t.lights&&t.lights.length>0?[...t.lights]:[...GQ]}function p6(t,e){var n,o,c,s,m,w;return {yaw:((n=t?.yaw)!==null&&n!==void 0?n:0)+((o=e?.yaw)!==null&&o!==void 0?o:0),pitch:((c=t?.pitch)!==null&&c!==void 0?c:0)+((s=e?.pitch)!==null&&s!==void 0?s:0),roll:((m=t?.roll)!==null&&m!==void 0?m:0)+((w=e?.roll)!==null&&w!==void 0?w:0)}}function u6(t,e){return t===void 0?[e,e,e]:typeof t=="number"?[t,t,t]:[t[0],t[1],t[2]]}function h6(t,e){let n=u6(t,1);return e===void 0?n:u6(e,1)}function f6(t,e,n){var o,c;return (c=(o=n.zoomTransparency)!==null&&o!==void 0?o:e?.zoomTransparency)!==null&&c!==void 0?c:t.zoomTransparency}function qQ(t,e){return t&&e>=t.zoom?t.opacity:1}function m6(t,e,n){var o,c;return (c=(o=n.routeTransparency)!==null&&o!==void 0?o:e?.routeTransparency)!==null&&c!==void 0?c:t.routeTransparency}function g6(t,e,n){return e>=t.minX&&e<=t.maxX&&n>=t.minZ&&n<=t.maxZ}function y6(t,e,n,o){let c=qQ(t,n),s=o&&e?e.opacity:1;return Math.min(c,s)}function v6(t,e){return t.visibility.mode==="allFloors"?true:t.visibility.floorKey===e}function _6(t,e,n,o,c){var s,m,w,I,P,L;let B=(t.x-e.x)/n,Y=(t.y-e.y)/n,W=(s=o?.x)!==null&&s!==void 0?s:0,ue=(m=o?.y)!==null&&m!==void 0?m:0,_e=(w=o?.z)!==null&&w!==void 0?w:0,he=(I=c?.x)!==null&&I!==void 0?I:0,Pe=(P=c?.y)!==null&&P!==void 0?P:0,Ke=(L=c?.z)!==null&&L!==void 0?L:0;return [B+W+he,ue+Pe,Y+_e+Ke]}function WQ(t){return t.type==="Polygon"?[t.coordinates]:t.type==="MultiPolygon"?t.coordinates:[]}function b6(t,e,n){var o;let c=t.filter(m=>{var w,I,P;return ((w=m.properties)===null||w===void 0?void 0:w.class)==="room"&&((I=m.properties)===null||I===void 0?void 0:I.subclass)!=="empty"&&((P=m.properties)===null||P===void 0?void 0:P.floor_key)===e}),s=[];for(let m of c){let w=!((o=m.properties)===null||o===void 0)&&o.height?Number(m.properties.height):n;for(let I of WQ(m.geometry))for(let P of I)s.push({path:P.map(([L,B])=>[L,B,w])});}return s}function x6(t,e,n,o){return t.filter(s=>{var m,w,I,P,L,B;if(((m=s.properties)===null||m===void 0?void 0:m.layerName)!=="area_name"&&((w=s.properties)===null||w===void 0?void 0:w.layerName)!=="poi"||((I=s.geometry)===null||I===void 0?void 0:I.type)!=="Point")return false;let Y=((P=s.properties)===null||P===void 0?void 0:P["name:latin"])||((L=s.properties)===null||L===void 0?void 0:L.name);return !(!Y||!((B=s.properties)===null||B===void 0)&&B.floor_key&&s.properties.floor_key!==e||n("logo-"+Y))}).map(s=>{var m,w,I;return {position:[...s.geometry.coordinates.slice(0,2),!((m=s.properties)===null||m===void 0)&&m.height?Number(s.properties.height):o],text:((w=s.properties)===null||w===void 0?void 0:w["name:latin"])||((I=s.properties)===null||I===void 0?void 0:I.name)||""}})}function ZQ(t,e){return t.includes("wheelchair")?"accessible_toilets":t.includes("changing_table")?"changing_table":e}function w6(t,e,n){return t.filter(c=>{var s,m,w;if(((s=c.geometry)===null||s===void 0?void 0:s.type)!=="Point"||!((m=c.properties)===null||m===void 0)&&m.floor_key&&c.properties.floor_key!==e)return false;let I=(w=c.properties)===null||w===void 0?void 0:w.subclass;return I==="elevator"||I==="toilets"}).map(c=>{var s,m,w;return {position:[...c.geometry.coordinates.slice(0,2),!((s=c.properties)===null||s===void 0)&&s.height?Number(c.properties.height):n],icon:ZQ(((m=c.properties)===null||m===void 0?void 0:m.tags)||"",((w=c.properties)===null||w===void 0?void 0:w.subclass)||"")}})}function S6(t,e,n,o){return t.filter(s=>{var m,w,I;if(((m=s.geometry)===null||m===void 0?void 0:m.type)!=="Point"||!((w=s.properties)===null||w===void 0)&&w.floor_key&&s.properties.floor_key!==e)return false;let P=(I=s.properties)===null||I===void 0?void 0:I.name;return P?!!n["logo-"+P]:false}).map(s=>{var m,w,I;let P=(m=s.properties)===null||m===void 0?void 0:m.name;return {position:[...s.geometry.coordinates.slice(0,2),!((w=s.properties)===null||w===void 0)&&w.height?Number(s.properties.height):o],icon:"logo-"+P,rotation:!((I=s.properties)===null||I===void 0)&&I.rotation_icon?Number(s.properties.rotation_icon):0}})}function E6(t,e,n){let o=t[e];if(!o)return 10;let c=o.pixelRatio,s=o.width/c,m=o.height/c;return 10*(m/Math.max(s,m))*(n[e]||1)}var I6="https://mapvx-glb-assets.s3.us-east-1.amazonaws.com/decoders/draco/",T6="https://mapvx-glb-assets.s3.us-east-1.amazonaws.com/decoders/transcoder/";var Av,Mv;function Xx(){return Av??(Av=Promise.all([import('./chunk-C12DvVrC.js'),import('./chunk-y8EsCUPj.js'),import('./chunk-ZOhCrUx8.js'),import('./chunk-VKMNXWI5.js')]).then(([t,e,n,o])=>({THREE:t,GLTFLoader:e.GLTFLoader,DRACOLoader:n.DRACOLoader,KTX2Loader:o.KTX2Loader}))),Av}function C6(){return Mv??(Mv=Promise.all([import('./chunk-DQUK2GdN.js'),import('./chunk-CIopM6sW.js'),import('./chunk-CEnPvr71.js').then(function(n){return n.c})]).then(([t,e,n])=>({MapboxOverlay:t.MapboxOverlay,MVTLayer:e.MVTLayer,IconLayer:n.IconLayer,PathLayer:n.PathLayer,TextLayer:n.TextLayer}))),Mv}var Pv;function YQ(){return Pv??(Pv=Xx().then(t=>{let e=new t.DRACOLoader;e.setDecoderPath(I6);let n=new t.GLTFLoader;n.setDRACOLoader(e);let o=new t.KTX2Loader;return o.setTranscoderPath(T6),n.setKTX2Loader(o),o.detectSupport(new t.THREE.WebGLRenderer({antialias:true})),n})),Pv}async function D6(t){let e=await YQ();return new Promise((n,o)=>{e.load(t,c=>{n(c.scene);},void 0,c=>{o(c instanceof Error?c:new Error(String(c)));});})}function A6(t,e){let n=new t.Box3().setFromObject(e),o=n.getCenter(new t.Vector3);return o.y=n.min.y,o}function M6(t,e,n){let o=0;for(let c of n){if(c.type==="ambient"){e.add(new t.AmbientLight(c.color,c.intensity)),o++;continue}let s=new t.DirectionalLight(c.color,c.intensity);s.position.set(c.position.x,c.position.y,c.position.z),e.add(s),o++;}return o}var Kx=class{constructor(e,n,o){this.currentFloor="",this.threeMod=void 0,this.deckMod=void 0,this.deckOverlay=void 0,this.scene3DGlbScene=void 0,this.scene3DGlbRootByUrl=new globalThis.Map,this.scene3DGlbTemplateById=new globalThis.Map,this.scene3DGlbLightCount=0,this.scene3DModelsGroup=void 0,this.scene3DRouteCollisionPoints=[],this.spriteIconMapping={},this.spriteAtlasImage=new Image,this.map=e,this.scene3DConfig=n,this.initialCenter=o;}async onMapLoad(){var e,n;try{await this.ensure3DLibs();}catch(m){console.error("Failed to load 3D libraries (three/deck.gl)",m);return}if(!this.deckMod)return;let o=(n=(e=this.scene3DConfig.customLayers)===null||e===void 0?void 0:e.iconLayers)===null||n===void 0?void 0:n.spriteUrl;o&&await this.loadSpriteAtlas(o).catch(m=>console.error("Failed to load sprite atlas",m)),this.deckOverlay=new this.deckMod.MapboxOverlay({layers:[]}),this.map.addControl(this.deckOverlay),this.hideLayers(this.scene3DConfig.hideLayers);let c=this.scene3DConfig.models;c!==void 0&&c.enabled!==false&&c.assets.length>0&&this.map.addLayer(this.createGlbCustomLayer()),this.updateDeckOverlay();}onZoom(){this.applyModelOpacity();}setRouteCollisionPath(e){this.scene3DRouteCollisionPoints=e,this.recomputeRouteAffectedModels(),this.applyModelOpacity();}onFloorChange(e){this.currentFloor=e??"",this.updateDeckOverlay(),this.placeScene3DModels();}refreshOverlay(e){this.currentFloor=e??"",this.updateDeckOverlay();}async ensure3DLibs(){var e,n;(e=this.threeMod)!==null&&e!==void 0||(this.threeMod=await Xx()),(n=this.deckMod)!==null&&n!==void 0||(this.deckMod=await C6());}createGlbCustomLayer(){let e=this.threeMod.THREE,n=em.MercatorCoordinate.fromLngLat(this.initialCenter,0),o=n.meterInMercatorCoordinateUnits(),c=new e.Matrix4().makeTranslation(n.x,n.y,n.z).scale(new e.Vector3(o,-o,o)).multiply(new e.Matrix4().makeRotationX(Math.PI/2));this.scene3DGlbScene=new e.Scene;let s=this.scene3DConfig.models;if(s&&s.enabled!==false&&s.assets.length>0){let P=d6(s);this.scene3DGlbLightCount=M6(e,this.scene3DGlbScene,P);}else this.scene3DGlbLightCount=0;this.loadScene3DGlbTemplates().then(()=>this.placeScene3DModels()).catch(P=>{console.error("Failed to initialize declarative GLB models",P);});let m,w,I=new e.Matrix4;return {id:"3d-glb-models",type:"custom",renderingMode:"3d",onAdd:(P,L)=>{w=new e.Camera,m=new e.WebGLRenderer({canvas:P.getCanvas(),context:L,antialias:true}),m.autoClear=false,m.setSize=function(B,Y){this.setViewport(0,0,B,Y);};},render:(P,L)=>{var B;if(!w||!m||!this.scene3DGlbScene||!this.scene3DModelsGroup||this.scene3DModelsGroup.children.length===0)return;let Y=this.map.getCanvas(),W=Y.width,ue=Y.height;if(W===0||ue===0)return;let _e=(B=L.defaultProjectionData)===null||B===void 0?void 0:B.mainMatrix;_e&&(m.setSize(W,ue),I.fromArray(_e).multiply(c),w.projectionMatrix.copy(I),m.resetState(),m.render(this.scene3DGlbScene,w));}}}async loadScene3DGlbTemplates(){var e;let n=(e=this.threeMod)===null||e===void 0?void 0:e.THREE,o=this.scene3DConfig.models;if(!(!n||!o||o.enabled===false||o.assets.length===0)){this.scene3DGlbRootByUrl.clear(),this.scene3DGlbTemplateById.clear();for(let c of o.assets)try{let s=this.scene3DGlbRootByUrl.get(c.url);s||(s=await D6(c.url),this.scene3DGlbRootByUrl.set(c.url,s));let m=A6(n,s);this.scene3DGlbTemplateById.set(c.id,{root:s,center:m});}catch(s){console.error(`Failed to load GLB asset "${c.id}" from ${c.url}`,s);}}}placeScene3DModels(){var e,n,o,c,s,m,w,I;let P=(e=this.threeMod)===null||e===void 0?void 0:e.THREE;if(!P||!this.scene3DGlbScene)return;let L=this.scene3DConfig.models;if(!L||L.enabled===false||(this.scene3DModelsGroup&&(this.scene3DGlbScene.remove(this.scene3DModelsGroup),this.scene3DModelsGroup=void 0),this.scene3DGlbTemplateById.size===0))return;let B=em.MercatorCoordinate.fromLngLat(this.initialCenter,0),Y=B.meterInMercatorCoordinateUnits(),W=this.currentFloor,ue=new P.Group;ue.position.set((o=(n=L.globalOffset)===null||n===void 0?void 0:n.x)!==null&&o!==void 0?o:0,(s=(c=L.globalOffset)===null||c===void 0?void 0:c.y)!==null&&s!==void 0?s:0,(w=(m=L.globalOffset)===null||m===void 0?void 0:m.z)!==null&&w!==void 0?w:0);for(let _e of L.placements){if(!v6(_e,W))continue;let he=this.scene3DGlbTemplateById.get(_e.assetId);if(!he)continue;let Pe=L.assets.find(et=>et.id===_e.assetId);if(!Pe)continue;let Ke=em.MercatorCoordinate.fromLngLat([_e.position.lng,_e.position.lat],(I=_e.position.altitude)!==null&&I!==void 0?I:0),[ot,Zt,qt]=_6(Ke,B,Y,Pe.defaultModelOffset,_e.offset),st=new P.Group;st.position.set(ot,Zt,qt);let ee=p6(Pe.defaultRotation,_e.rotation);st.rotation.set(P.MathUtils.degToRad(ee.pitch),P.MathUtils.degToRad(-ee.yaw),P.MathUtils.degToRad(ee.roll),"YXZ");let[de,me,Oe]=h6(Pe.defaultScale,_e.scale);st.scale.set(de,me,Oe);let Le=he.root.clone(true);Le.traverse(et=>{let Pt=et;Pt.isMesh&&(Pt.material=Array.isArray(Pt.material)?Pt.material.map(Ct=>Ct.clone()):Pt.material.clone());}),Le.position.set(-he.center.x,-he.center.y,-he.center.z),st.userData.zoomTransparency=f6(L,Pe,_e),st.userData.routeTransparency=m6(L,Pe,_e);let ut=new P.Box3().setFromObject(Le);st.userData.footprint={minX:ut.min.x,maxX:ut.max.x,minZ:ut.min.z,maxZ:ut.max.z},st.add(Le),ue.add(st);}this.scene3DModelsGroup=ue,this.scene3DGlbScene.add(ue),this.recomputeRouteAffectedModels(),this.applyModelOpacity(),this.map.triggerRepaint();}recomputeRouteAffectedModels(){var e;let n=(e=this.threeMod)===null||e===void 0?void 0:e.THREE,o=this.scene3DModelsGroup;if(!n||!o)return;let c=this.scene3DRouteCollisionPoints.filter(P=>P.floorKey===this.currentFloor),s=em.MercatorCoordinate.fromLngLat(this.initialCenter,0),m=s.meterInMercatorCoordinateUnits(),w=c.map(P=>{let L=em.MercatorCoordinate.fromLngLat([P.lng,P.lat],0),B=(L.x-s.x)/m,Y=(L.y-s.y)/m;return new n.Vector3(B,0,Y)});o.updateMatrixWorld(true);let I=new n.Vector3;for(let P of o.children){let L=P.userData.routeTransparency,B=P.userData.footprint;if(!L||!B||w.length===0){P.userData.routeAffected=false;continue}P.userData.routeAffected=w.some(Y=>(I.copy(Y),o.localToWorld(I),P.worldToLocal(I),g6(B,I.x,I.z)));}}applyModelOpacity(){if(!this.scene3DModelsGroup)return;let e=this.map.getZoom(),n=false;for(let o of this.scene3DModelsGroup.children){let c=o.userData.zoomTransparency,s=o.userData.routeTransparency,m=o.userData.routeAffected===true,w=y6(c,s,e,m);o.traverse(I=>{let P=I;if(!P.isMesh)return;let L=Array.isArray(P.material)?P.material:[P.material];for(let B of L)B.opacity!==w&&(B.transparent=w<1,B.opacity=w,B.depthWrite=w>=1,n=true);});}n&&this.map.triggerRepaint();}async loadSpriteAtlas(e){let[n,o]=await Promise.all([fetch(`${e}.json`).then(c=>c.json()),new Promise((c,s)=>{let m=new Image;m.crossOrigin="anonymous",m.onload=()=>c(m),m.onerror=s,m.src=`${e}.png`;})]);this.spriteIconMapping=n,this.spriteAtlasImage=o;}makeElevatedLinesLayer(e,n){var o;let c=this.deckMod;return c?new c.MVTLayer({id:"indoor-lines-elevated",data:n.dataUrl,binary:(o=n.binaryData)!==null&&o!==void 0?o:false,renderSubLayers:s=>{var m,w,I,P;let L=b6(s.data||[],e,(m=n.defaultHeight)!==null&&m!==void 0?m:5);return L.length?new c.PathLayer(Object.assign(Object.assign({},s),{id:`${s.id}-paths`,data:L,getPath:B=>B.path,getColor:IA((w=n.lineColor)!==null&&w!==void 0?w:"#cbcbcb"),getWidth:(I=n.lineWidth)!==null&&I!==void 0?I:1.5,widthUnits:(P=n.widthUnits)!==null&&P!==void 0?P:"pixels",pickable:false})):null},updateTriggers:{renderSubLayers:[e]}}):null}makeLabelLayer(e,n,o=true){var c,s,m;let w=this.deckMod;return w?new w.MVTLayer({id:"indoor-labels",data:n.dataUrl,binary:(c=n.binaryData)!==null&&c!==void 0?c:false,minZoom:(s=n.minZoom)!==null&&s!==void 0?s:19.5,maxZoom:(m=n.maxZoom)!==null&&m!==void 0?m:24,renderSubLayers:I=>{var P,L,B,Y,W,ue;let _e=x6(I.data||[],e,he=>this.map.hasImage(he),(P=n.defaultHeight)!==null&&P!==void 0?P:5);return _e.length?new w.TextLayer(Object.assign(Object.assign({},I),{id:`${I.id}-labels`,data:_e,getPosition:he=>he.position,getText:he=>he.text,getSize:(L=n.size)!==null&&L!==void 0?L:16,getColor:IA((B=n.color)!==null&&B!==void 0?B:"#91969b"),outlineColor:o?[255,255,255,255]:[0,0,0,0],outlineWidth:o?4:0,fontSettings:{sdf:o},fontFamily:(Y=n.fontFamily)!==null&&Y!==void 0?Y:"Open Sans, sans-serif",fontWeight:(W=n.fontWeight)!==null&&W!==void 0?W:600,billboard:true,pickable:false,characterSet:"auto",wordBreak:"break-word",maxWidth:(ue=n.maxWidth)!==null&&ue!==void 0?ue:150})):null},updateTriggers:{renderSubLayers:[e]}}):null}makePoiIconLayer(e,n){var o,c,s;let m=this.deckMod;return !m||!this.spriteIconMapping||!this.spriteAtlasImage?null:new m.MVTLayer({id:"indoor-poi-icons",data:n.dataUrl,binary:(o=n.binaryData)!==null&&o!==void 0?o:false,minZoom:(c=n.minZoom)!==null&&c!==void 0?c:17,maxZoom:(s=n.maxZoom)!==null&&s!==void 0?s:24,renderSubLayers:w=>{var I,P,L,B,Y;let W=w6(w.data||[],e,(I=n.defaultHeight)!==null&&I!==void 0?I:5);return W.length?new m.IconLayer(Object.assign(Object.assign({},w),{id:`${w.id}-poi-icons`,data:W,iconAtlas:this.spriteAtlasImage,iconMapping:this.spriteIconMapping,getIcon:ue=>ue.icon,getPosition:ue=>ue.position,getSize:(P=n.size)!==null&&P!==void 0?P:2,sizeUnits:(L=n.sizeUnits)!==null&&L!==void 0?L:"meters",sizeScale:(B=n.sizeScale)!==null&&B!==void 0?B:1,billboard:(Y=n.billboard)!==null&&Y!==void 0?Y:true,pickable:false})):null},updateTriggers:{renderSubLayers:[e]}})}makeStoreLogoLayer(e,n){var o,c,s;let m=this.deckMod;return !m||!this.spriteIconMapping||!this.spriteAtlasImage?null:new m.MVTLayer({id:"indoor-store-logos",data:n.dataUrl,binary:(o=n.binaryData)!==null&&o!==void 0?o:false,minZoom:(c=n.minZoom)!==null&&c!==void 0?c:13,maxZoom:(s=n.maxZoom)!==null&&s!==void 0?s:24,renderSubLayers:w=>{var I,P,L,B;let Y=S6(w.data||[],e,this.spriteIconMapping,(I=n.defaultHeight)!==null&&I!==void 0?I:5);return Y.length?new m.IconLayer(Object.assign(Object.assign({},w),{id:`${w.id}-store-logos`,data:Y,iconAtlas:this.spriteAtlasImage,iconMapping:this.spriteIconMapping,getIcon:W=>W.icon,getPosition:W=>W.position,getAngle:W=>-W.rotation,getSize:W=>{var ue;return E6(this.spriteIconMapping,W.icon,(ue=n.logoScale)!==null&&ue!==void 0?ue:{})},sizeUnits:(P=n.sizeUnits)!==null&&P!==void 0?P:"meters",sizeScale:(L=n.sizeScale)!==null&&L!==void 0?L:1,billboard:(B=n.billboard)!==null&&B!==void 0?B:false,pickable:false})):null},updateTriggers:{renderSubLayers:[e]}})}updateDeckOverlay(){if(!this.deckOverlay||!this.currentFloor||!this.scene3DConfig.customLayers)return;let{customLayers:e}=this.scene3DConfig,n=[];if(e.elevatedLinesLayer&&n.push(this.makeElevatedLinesLayer(this.currentFloor,e.elevatedLinesLayer)),e.labelsLayer&&n.push(this.makeLabelLayer(this.currentFloor,e.labelsLayer,false)),e.iconLayers){let{storeLogosLayer:o,poiIconsLayer:c}=e.iconLayers;o&&n.push(this.makeStoreLogoLayer(this.currentFloor,o)),c&&n.push(this.makePoiIconLayer(this.currentFloor,c));}this.deckOverlay.setProps({layers:n});}hideLayers(e){if(e)for(let n of e){let o=this.map.getLayer(n);o&&this.map.setLayoutProperty(o.id,"visibility","none");}}};var vp=x(Cv()),XQ=512,P6=(t,e,n)=>Math.min(Math.max(t,e),n);function R6(t,e){let{bearing:n,padding:o,containerWidth:c,containerHeight:s,maxZoom:m,minZoom:w}=e,I=-n*Math.PI/180,P=Math.cos(I),L=Math.sin(I),B=1/0,Y=1/0,W=-1/0,ue=-1/0;for(let de of t){let me=vp.MercatorCoordinate.fromLngLat({lat:de.lat,lng:de.lng}),Oe=me.x*P-me.y*L,Le=me.x*L+me.y*P;B=Math.min(B,Oe),Y=Math.min(Y,Le),W=Math.max(W,Oe),ue=Math.max(ue,Le);}let _e=W-B||Number.EPSILON,he=ue-Y||Number.EPSILON,Pe=Math.max(1,c-o.left-o.right),Ke=Math.max(1,s-o.top-o.bottom),ot=Math.min(Pe/_e,Ke/he),Zt=P6(Math.log2(ot/XQ),w,m),qt=(B+W)/2,st=(Y+ue)/2;return {center:new vp.MercatorCoordinate(qt*P+st*L,-qt*L+st*P,0).toLngLat(),zoom:Zt}}function k6(t,e,n,o){let{bearing:c,pitch:s,padding:m,containerWidth:w,containerHeight:I,maxZoom:P,minZoom:L}=o;t.setBearing(c),t.setPitch(s),t.setPadding(m),t.setCenter(n.center),t.setZoom(n.zoom);let B=Math.max(1,w-m.left-m.right),Y=Math.max(1,I-m.top-m.bottom),W=4,ue=.01,_e={center:n.center,zoom:n.zoom};for(let he=0;he<W;he++){let Pe=1/0,Ke=1/0,ot=-1/0,Zt=-1/0,qt=true;for(let Le of e){let ut=t.locationToScreenPoint(new vp.LngLat(Le.lng,Le.lat));if(!t.isPointOnMapSurface(ut)){qt=false;break}Pe=Math.min(Pe,ut.x),Ke=Math.min(Ke,ut.y),ot=Math.max(ot,ut.x),Zt=Math.max(Zt,ut.y);}if(!qt)break;let st=new vp.Point((Pe+ot)/2,(Ke+Zt)/2);t.setCenter(t.screenPointToLocation(st));let ee=Math.max(ot-Pe,1e-6),de=Math.max(Zt-Ke,1e-6),me=Math.min(B/ee,Y/de),Oe=Math.log2(me);if(t.setZoom(P6(t.zoom+Oe,L,P)),_e={center:t.center,zoom:t.zoom},Math.abs(Oe)<ue)break}return _e}function O6(t){let e={};return t.bearing!==void 0&&(e.bearing=t.bearing),t.interactive!==void 0&&(e.interactive=t.interactive),t.dragPan!==void 0&&(e.dragPan=t.dragPan),t.scrollZoom!==void 0&&(e.scrollZoom=t.scrollZoom),t.doubleClickZoom!==void 0&&(e.doubleClickZoom=t.doubleClickZoom),t.touchZoomRotate!==void 0&&(e.touchZoomRotate=t.touchZoomRotate),t.keyboard!==void 0&&(e.keyboard=t.keyboard),t.rotateEnabled===false&&(e.dragRotate=false,e.pitchWithRotate=false),e}function N6(t){return t.rotateEnabled===false}var tm="mapvx-circles",U6="mapvx-circles-fill",V6="mapvx-circles-line",KQ={aboveBasemap:"",belowLabels:"-below-labels",top:"-top"},L6=5,QQ=1e3;function JQ(t){let e=KQ[t];return {fill:U6+e,line:V6+e}}function eJ(t){return t.startsWith(U6)||t.startsWith(V6)}var F6=false;function z6(t){return t==null?t:typeof structuredClone=="function"?structuredClone(t):JSON.parse(JSON.stringify(t))}function tJ(t){if(F6)return;let e=new Bx(t);ls.default.addProtocol("cached-tile",(n,o)=>{let c=n.url.replace("cached-tile://","https://");return e.acquire(o.signal).then(()=>fetch(c,{signal:o.signal}).then(s=>{if(!s.ok)throw new Error(`HTTP error! status: ${s.status}`);return s.arrayBuffer()}).then(s=>({data:s})).finally(()=>{e.release();}))}),F6=true;}function Qx(t,e){if(t===void 0)return 0;if(typeof t=="number")return t;let n=t.match(/^(-?\d*\.?\d+)(px|%|vh|vw)?$/);if(!n)return 0;let o=Number.parseFloat(n[1]);switch(n[2]||"px"){case "px":return o;case "%":return o/100*e;case "vh":return o/100*window.innerHeight;case "vw":return o/100*window.innerWidth;default:return o}}function B6(t,e,n){return t?{top:Qx(t.top,n),bottom:Qx(t.bottom,n),left:Qx(t.left,e),right:Qx(t.right,e)}:{top:0,bottom:0,left:0,right:0}}var Jx=class extends hu{constructor(e,n,o){var c,s,m;super(),this.liveRouteTicket=0,this.potentialParentPlaces=[],this.innerFloors=[],this.subPlaces=[],this.currentFloor="",this.baseFilters={},this.markers=[],this.circles=[],this.enableHover=false,this.hoveredId="unselected",this.failedTiles=new Set,this.tileRetryState=new WeakMap,this.geoLocation=navigator.geolocation,this.scene3D=void 0,uA.includes((c=e.lang)!==null&&c!==void 0?c:"")&&this.setRTLSupport(),this.repository=new Jf(o,(s=e.lang)!==null&&s!==void 0?s:"en",e.apiUrl,void 0,e.mapvxRequestContext),this.token=o,this.parentPlaceId=e.parentPlaceId,this.routeController=new Hx(this),this.userLocationMarker=void 0,this.watchPositionID=void 0,this.onFloorChange=e.onFloorChange,this.onParentPlaceChange=e.onParentPlaceChange,this.mode=(m=e.mode)!==null&&m!==void 0?m:"2D",this.scene3DConfig=e.scene3D,this.initialCenter=e.center,this.tileCacheConfig=(()=>{let w=Object.assign(Object.assign({},yA),e.tileCache);return w.maxTiles=Math.min(w.maxTiles,vA),w})(),e.parentPlaceId!=null&&this.initialPlaceDetailSetUp(e.parentPlaceId,e.authToken),e.otherPotentialParentPlacesIds&&e.otherPotentialParentPlacesIds.length>0&&this.loadOtherPotentialParentPlaces(e.otherPotentialParentPlacesIds),this.enableHover=e.enableHover||false,this.initialMapStyleSetUp(e,n);}setRTLSupport(){(0, ls.setRTLTextPlugin)("https://unpkg.com/@mapbox/mapbox-gl-rtl-text@0.3.0/dist/mapbox-gl-rtl-text.js",false).catch(()=>{});}transformStyleForCaching(e){if(!e)return e;let n=z6(e);if(n?.sources)for(let o of Object.keys(n.sources)){let c=n.sources[o];c.tiles&&Array.isArray(c.tiles)&&(c.tiles=c.tiles.map(s=>s.startsWith("https://")?s.replace("https://","cached-tile://"):s));}return n}initialPlaceDetailSetUp(e,n){if(n){this.repository.fetchAndParseAnyPlaceDetail({id:e},n).then(o=>{this.changeParentPlaceTo(o),this.potentialParentPlaces.push(o);}).catch(console.error);return}this.repository.fetchAndParsePlaceDetail({id:e}).then(o=>{this.changeParentPlaceTo(o),this.potentialParentPlaces.push(o);}).catch(console.error);}loadOtherPotentialParentPlaces(e){Promise.all(e.map(n=>this.repository.fetchAndParsePlaceDetail({id:n}))).then(n=>{this.potentialParentPlaces.push(...n);}).catch(console.error);}subPlacesLoad(e){this.repository.fetchAndParseSubPlaces(e).then(n=>{this.subPlaces=n;}).catch(console.error);}initialMapStyleSetUp(e,n){if(e.institutionId&&e.authToken){this.repository.fetchAndParseAnyMapStyle(e.institutionId,e.authToken).then(o=>this.onMapStyleLoaded(e,n,o)).catch(console.error);return}this.repository.fetchAndParseMapStyle(e.parentPlaceId).then(o=>this.onMapStyleLoaded(e,n,o)).catch(console.error);}onMapStyleLoaded(e,n,o){var c,s,m,w,I,P,L;let B=this.tileCacheConfig.enabled&&this.tileCacheConfig.persistToServiceWorker;B&&tJ(this.tileCacheConfig.maxConcurrentTileFetches);let Y=B?this.transformStyleForCaching(o):o,W=Object.assign({container:n,style:Y,center:e.center,zoom:e.zoom,pitch:(c=e.pitch)!==null&&c!==void 0?c:0,attributionControl:false,maplibreLogo:false,bearingSnap:(s=e.bearingSnap)!==null&&s!==void 0?s:0,cancelPendingTileRequestsWhileZooming:true,maxTileCacheSize:this.tileCacheConfig.maxTiles},O6(e));if(e.maxZoom&&(W.maxZoom=e.maxZoom),e.minZoom&&(W.minZoom=e.minZoom),e.maxBounds&&e.maxBounds.length>1){let ue=sA(e.maxBounds);W.maxBounds=new ls.LngLatBounds([ue[0].lng,ue[0].lat],[ue[1].lng,ue[1].lat]);}this.map=new ls.Map(W),this.is3DSceneActive()&&this.scene3DConfig&&(this.scene3D=new Kx(this.map,this.scene3DConfig,this.initialCenter)),N6(e)&&((w=(m=this.map.touchZoomRotate)===null||m===void 0?void 0:m.disableRotation)===null||w===void 0||w.call(m)),this.map.addControl(new ls.NavigationControl({showCompass:(I=e.showCompass)!==null&&I!==void 0?I:true,showZoom:(P=e.showZoom)!==null&&P!==void 0?P:true}),(L=e.navigationPosition)!==null&&L!==void 0?L:"top-right"),this.map.on("load",()=>{var ue,_e;(ue=this.scene3D)===null||ue===void 0||ue.onMapLoad(),this.whenStyleUpdates(o),e.lang&&this.setLayersForLanguage(e.lang),(_e=e.onMapReady)===null||_e===void 0||_e.call(e),this.onHover(),this.subscribeToFailedTiles();}),this.map.on("styledata",()=>{this.circles.length>0&&this.ensureCircleLayers();}),this.map.on("zoom",()=>{var ue;(ue=this.scene3D)===null||ue===void 0||ue.onZoom();}),this.map.on("zoomend",()=>{var ue;(ue=e.onZoomEnd)===null||ue===void 0||ue.call(e,this.getZoomLevel());}),this.map.on("rotate",()=>{var ue;(ue=e.onRotate)===null||ue===void 0||ue.call(e,this.map.getBearing());}),this.defaultClickListener();}setBaseFilters(e){if(!e)return;let n=["==",["get","public_place"],true];e.layers.filter(o=>o.id.startsWith("indoor-")).forEach(o=>{let c=this.baseFilters[o.id];if(c!=null){let s=["all",c,n];this.map.setFilter(o.id,s);}else this.map.setFilter(o.id,n);switch(o.type){case "line":case "symbol":case "fill-extrusion":case "fill":o.filter!=null&&(this.baseFilters[o.id]=o.filter);break;}});}setLayersForLanguage(e){var n,o;let c=["aerodrome_label","mountain_peak","park","place","poi","transportation_name","water_name","waterway"],s=(o=(n=this.map.getStyle())===null||n===void 0?void 0:n.layers)!==null&&o!==void 0?o:[];s.filter(I=>{var P;return I.type==="symbol"&&I.source==="openmaptiles"&&c.includes((P=I["source-layer"])!==null&&P!==void 0?P:"")}).map(I=>I.id).forEach(I=>{try{let P=this.map.getLayoutProperty(I,"symbol-placement");this.map.setLayoutProperty(I,"text-field",["case",["has",`name:${e}`],["get",`name:${e}`],["format",["get","name:latin"],P==="line"?" ":`
916
- `,["get","name:nonlatin"]]]);}catch(P){this.debugLog("Layer language update failed (layer may not exist)",P);}}),s.filter(I=>{var P;return I.type==="symbol"&&I.source==="indoorequal"&&((P=I.layout)===null||P===void 0?void 0:P["text-field"])!==void 0}).map(I=>I.id).forEach(I=>{try{this.map.setLayoutProperty(I,"text-field",["case",["has",`name:${e}`],["get",`name:${e}`],["get","name"]]);}catch(P){this.debugLog("Layer language update failed (layer may not exist)",P);}});}prepareSegmentation(e){var n;return Object.assign(Object.assign({},e),{token:this.token,parentPlaceId:(n=this.parentPlaceId)!==null&&n!==void 0?n:"None"})}destroyMap(){this.circles=[],this.map.remove(),this.unsubscribeFromFailedTiles();}clearTileCache(){try{this.failedTiles.clear(),this.map&&this.map.triggerRepaint(),this.logEvent("clearTileCache");}catch(e){this.debugLog("Tile cache clear failed (cache may not exist)",e);}}is3DSceneActive(){var e;return this.mode==="3D"&&((e=this.scene3DConfig)===null||e===void 0?void 0:e.enabled)!==false}getCurrentFloor(){var e;return (e=this.currentFloor)!==null&&e!==void 0?e:""}setRouteCollisionPath(e){var n;this.is3DSceneActive()&&((n=this.scene3D)===null||n===void 0||n.setRouteCollisionPath(e));}changeParentPlaceTo(e,n=false,o){var c,s,m,w,I,P,L;this.parentPlace=e,this.parentPlaceId=e?.mapvxId,this.innerFloors=(s=(c=e?.innerFloors)===null||c===void 0?void 0:c.sort((B,Y)=>B.index-Y.index))!==null&&s!==void 0?s:[],this.currentFloor=(P=(w=(m=this.innerFloors.find(B=>B.defaultFloor))===null||m===void 0?void 0:m.key)!==null&&w!==void 0?w:(I=this.innerFloors[0])===null||I===void 0?void 0:I.key)!==null&&P!==void 0?P:"",e&&this.subPlacesLoad(e.mapvxId),(L=this.scene3D)===null||L===void 0||L.onFloorChange(this.currentFloor),n&&this.repository.fetchAndParseMapStyle(e?.mapvxId).then(B=>{let W=this.tileCacheConfig.enabled&&this.tileCacheConfig.persistToServiceWorker?this.transformStyleForCaching(B):B;this.map.setStyle(W),this.whenStyleUpdates(W),o?.();}).catch(console.error);}updatePlaceAndFloor(e,n){var o,c,s,m,w,I;let P=this.potentialParentPlaces.find(L=>L.mapvxId===e);this.parentPlace=P,this.parentPlaceId=P?.mapvxId,this.innerFloors=(o=P?.innerFloors.sort((L,B)=>L.index-B.index))!==null&&o!==void 0?o:[],this.currentFloor=(w=(s=n??((c=this.innerFloors.find(L=>L.defaultFloor))===null||c===void 0?void 0:c.key))!==null&&s!==void 0?s:(m=this.innerFloors[0])===null||m===void 0?void 0:m.key)!==null&&w!==void 0?w:"",(I=this.scene3D)===null||I===void 0||I.onFloorChange(this.currentFloor);}updateParentPlaceAndFloor(e,n,o){var c,s,m,w;try{this.updatePlaceAndFloor(e,n),this.filterByFloorKey(this.currentFloor),(c=this.onParentPlaceChange)===null||c===void 0||c.call(this,e),(s=this.onFloorChange)===null||s===void 0||s.call(this,(m=this.currentFloor)!==null&&m!==void 0?m:""),this.logEvent("updateParentPlaceAndFloor"),(w=o?.onComplete)===null||w===void 0||w.call(o);}catch(I){this.debugLog("Parent place/floor update failed",I);}}setLang(e){this.repository.setLang(e),uA.includes(e)&&this.setRTLSupport(),this.map.isStyleLoaded()?this.setLayersForLanguage(e):this.map.once("load",()=>this.setLayersForLanguage(e));}setParentPlace(e,n,o){this.changeParentPlaceTo(e,n,o);}removeParentPlace(){this.changeParentPlaceTo(void 0,true);}whenStyleUpdates(e){var n;e&&this.setBaseFilters(e),this.routeController.addSourcesAndLayers(),this.refreshCircles(),this.filterByFloorKey(this.currentFloor),(n=this.scene3D)===null||n===void 0||n.refreshOverlay(this.currentFloor);}addMarker(e){var n,o;try{if(e.id){let m=this.markers.findIndex(w=>w.id===e.id);m!==-1&&(this.markers[m].remove(),this.markers.splice(m,1),this.logEvent("removeMarker",{markerId:e.id,reason:"duplicate"}));}let c=new uu(e),s=!this.parentPlace||((o=(n=this.innerFloors.find(m=>m.key===this.currentFloor))===null||n===void 0?void 0:n.reachableFromGPS)!==null&&o!==void 0?o:!1);return c.changeFloor(this.currentFloor,this.map,s),this.markers.push(c),this.logEvent("addMarker"),c.id}catch(c){throw new Error("Failed to add marker",{cause:c})}}updateMarker(e){var n;try{let o=this.markers.find(c=>c.id===e.id);return o!==void 0&&o.updateIcon(e),this.logEvent("updateMarker"),(n=o?.id)!==null&&n!==void 0?n:""}catch(o){throw new Error("Failed to update marker",{cause:o})}}updateMarkerPosition(e,n){try{let o=this.markers.find(c=>c.id===e);o!==void 0&&o.setLngLat(n),this.logEvent("updateMarkerPosition");}catch(o){throw new Error("Failed to update marker position",{cause:o})}}showMarker(e){try{let n=this.markers.find(o=>o.id===e);n!==null&&this.map&&n?.show(this.map),this.logEvent("showMarker");}catch(n){this.debugLog("Show marker failed (marker may not exist)",n);}}hideMarker(e){try{let n=this.markers.find(o=>o.id===e);n!==null&&n?.hide(),this.logEvent("hideMarker");}catch(n){this.debugLog("Hide marker failed (marker may not exist)",n);}}removeMarker(e){try{let n=this.markers.find(o=>o.id===e);n!==null&&(n?.remove(),this.markers=this.markers.filter(o=>o.id!==e)),this.logEvent("removeMarker");}catch(n){throw new Error("Failed to remove marker",{cause:n})}}removeAllMarkers(){try{this.markers.forEach(e=>{e.remove();}),this.markers=[],this.logEvent("removeAllMarkers");}catch(e){throw new Error("Failed to remove all markers",{cause:e})}}addCircle(e){try{e.id&&(this.circles=this.circles.filter(o=>o.id!==e.id));let n=fA(e);return this.circles.push(n),this.refreshCircles(),this.logEvent("addCircle"),n.id}catch(n){throw new Error(`Failed to add circle: ${n instanceof Error?n.message:String(n)}`)}}updateCircle(e){try{let n=this.circles.findIndex(o=>o.id===e.id);return n===-1?null:(this.circles[n]=fA(e,this.circles[n].hidden),this.refreshCircles(),this.logEvent("updateCircle"),this.circles[n].id)}catch(n){throw new Error(`Failed to update circle: ${n instanceof Error?n.message:String(n)}`)}}getCircle(e){let n=this.circles.find(o=>o.id===e);return n?hA(n):void 0}getCircles(){return this.circles.map(hA)}hasCircle(e){return this.circles.some(n=>n.id===e)}updateCirclePosition(e,n,o){try{let c=this.circles.find(w=>w.id===e);if(c===void 0)return !1;if(!n)throw new Error("Circle center is required");let{lat:s,lng:m}=n;if(!Number.isFinite(s)||s<-90||s>90)throw new Error(`Invalid latitude: ${s}. Must be between -90 and 90.`);if(!Number.isFinite(m)||m<-180||m>180)throw new Error(`Invalid longitude: ${m}. Must be between -180 and 180.`);if(o!==void 0&&(!Number.isFinite(o)||o<=0))throw new Error(`Invalid radiusMeters: ${o}. Must be a positive finite number.`);return c.coordinate={lat:n.lat,lng:n.lng},o!==void 0&&(c.radiusMeters=o),this.refreshCircles(),this.logEvent("updateCirclePosition"),!0}catch(c){throw new Error(`Failed to update circle position: ${c instanceof Error?c.message:String(c)}`)}}updateCircleStyle(e,n){try{let o=this.circles.find(c=>c.id===e);return o===void 0?!1:(n.fillColor!==void 0&&(o.fillColor=n.fillColor),n.fillOpacity!==void 0&&(o.fillOpacity=Math.max(0,Math.min(1,n.fillOpacity))),n.strokeColor!==void 0&&(o.strokeColor=n.strokeColor),n.strokeWidth!==void 0&&(o.strokeWidth=n.strokeWidth),n.strokeOpacity!==void 0&&(o.strokeOpacity=Math.max(0,Math.min(1,n.strokeOpacity))),this.refreshCircles(),this.logEvent("updateCircleStyle"),!0)}catch(o){throw new Error(`Failed to update circle style: ${o instanceof Error?o.message:String(o)}`)}}removeCircle(e){try{this.circles=this.circles.filter(n=>n.id!==e),this.refreshCircles(),this.logEvent("removeCircle");}catch(n){throw new Error("Failed to remove circle",{cause:n})}}removeAllCircles(){try{this.circles=[],this.refreshCircles(),this.logEvent("removeAllCircles");}catch(e){throw new Error("Failed to remove all circles",{cause:e})}}showCircle(e){try{let n=this.circles.find(o=>o.id===e);return n===void 0?!1:(n.hidden=!1,this.refreshCircles(),this.logEvent("showCircle"),!0)}catch(n){return this.debugLog("Show circle failed",n),false}}hideCircle(e){try{let n=this.circles.find(o=>o.id===e);return n===void 0?!1:(n.hidden=!0,this.refreshCircles(),this.logEvent("hideCircle"),!0)}catch(n){return this.debugLog("Hide circle failed",n),false}}circleFeatureCollection(){var e,n,o;let c=(e=this.currentFloor)!==null&&e!==void 0?e:"",s=!this.parentPlace||((o=(n=this.innerFloors.find(w=>w.key===c))===null||n===void 0?void 0:n.reachableFromGPS)!==null&&o!==void 0?o:false);return {type:"FeatureCollection",features:this.circles.filter(w=>{var I;if(w.hidden)return false;let P=(I=w.floorId)!==null&&I!==void 0?I:"";return P===c||s&&P===""}).map(w=>({type:"Feature",properties:{id:w.id,fillColor:w.fillColor,fillOpacity:w.fillOpacity,strokeColor:w.strokeColor,strokeWidth:w.strokeWidth,strokeOpacity:w.strokeOpacity,renderOrder:w.renderOrder},geometry:{type:"Polygon",coordinates:[mA(w.coordinate.lng,w.coordinate.lat,w.radiusMeters)]}}))}}circleBeforeIdFor(e){var n,o,c,s;if(e==="top")return;let m=((o=(n=this.map.getStyle())===null||n===void 0?void 0:n.layers)!==null&&o!==void 0?o:[]).filter(I=>!eJ(I.id));if(e==="belowLabels")return (c=m.find(I=>I.type==="symbol"))===null||c===void 0?void 0:c.id;let w=-1;return m.forEach((I,P)=>{I.type!=="symbol"&&(w=P);}),(s=m.slice(w+1).find(I=>I.type==="symbol"))===null||s===void 0?void 0:s.id}ensureCircleLayers(){if(this.map)try{this.map.getSource(tm)||this.map.addSource(tm,{type:"geojson",data:this.circleFeatureCollection()});let e=new Set(this.circles.map(n=>n.renderOrder));e.add("aboveBasemap");for(let n of qx){if(!e.has(n))continue;let o=JQ(n),c=this.circleBeforeIdFor(n),s=["==",["get","renderOrder"],n];if(this.map.getLayer(o.fill))this.map.moveLayer(o.fill,c);else {let m={id:o.fill,type:"fill",source:tm,filter:s,paint:{"fill-color":["get","fillColor"],"fill-opacity":["get","fillOpacity"]}};this.map.addLayer(m,c);}if(this.map.getLayer(o.line))this.map.moveLayer(o.line,c);else {let m={id:o.line,type:"line",source:tm,filter:s,paint:{"line-color":["get","strokeColor"],"line-width":["get","strokeWidth"],"line-opacity":["get","strokeOpacity"]}};this.map.addLayer(m,c);}}}catch(e){this.debugLog("Layers not added: style not loaded yet, the styledata listener will re-add them",e);}}refreshCircles(){if(this.map&&!(this.circles.length===0&&!this.map.getSource(tm))){this.ensureCircleLayers();try{let e=this.map.getSource(tm);e?.setData(this.circleFeatureCollection());}catch(e){this.debugLog("Source not found (a new style may still be loading)",e);}}}filterByFloorKey(e){this.currentFloor=e;let n=e??"";this.innerFloors.every(o=>o.key!==e)&&e!==""&&this.logEvent("invalidFloorKey",{floorKey:n}),this.updateFiltersTo(n),this.updateMarkersTo(n),this.refreshCircles(),this.routeController.updateRouteLayers(n),this.routeController.updateRouteMarkerVisibility(n);}getContainer(){return this.map.getContainer()}resize(){try{this.map&&(this.map.resize(),this.logEvent("resize"));}catch(e){this.debugLog("Resize failed (map/container may not be ready)",e);}}updateMarkersTo(e){var n,o;let c=!this.parentPlace||((o=(n=this.innerFloors.find(s=>s.key===e))===null||n===void 0?void 0:n.reachableFromGPS)!==null&&o!==void 0?o:false);this.markers.forEach(s=>{s.changeFloor(e,this.map,c);});}updateFiltersTo(e){var n,o,c,s;if(!this.map)return;let m=(o=(n=this.map.getStyle())===null||n===void 0?void 0:n.layers)!==null&&o!==void 0?o:[];m.filter(P=>P.id.startsWith("base-indoor-")).forEach(P=>{this.map.removeLayer(P.id);});let w=(c=this.innerFloors.find(P=>P.key===e))===null||c===void 0?void 0:c.baseFloor,I=m.filter(P=>P.id.startsWith("indoor-"));if(w!=null){let P=(s=I[0])===null||s===void 0?void 0:s.id;I.filter(L=>L.type!=="fill-extrusion").forEach(L=>{let B=z6(L);B.id="base-"+L.id,this.baseFilters[B.id]=this.baseFilters[L.id],this.map.addLayer(B,P),this.applyLayerFilters(B,w);});}I.forEach(P=>{this.applyLayerFilters(P,e);});}applyLayerFilters(e,n){var o;let c=this.baseFilters[e.id],s=n??"",m=["any",["in",s,["get","floor_key"]]],w=["==",["get","public_place"],true],I=["!",["in",(o=this.parentPlaceId)!==null&&o!==void 0?o:"noRef",["get","is_subplace"]]],P=["in",s,["get","show_in_floor"]],L=w;this.parentPlaceId!=null&&(L=["any",m,w]);let B=["all",L,["any",I,P]];if(e.id.includes("hover")?c=["in",this.hoveredId,["get","ref"]]:!e.id.includes("colored")&&(e.type=="fill"||e.type==="fill-extrusion")&&B.push(["!",["in",this.hoveredId,["get","ref"]]]),c!=null){let Y=["all",c,B];this.map.setFilter(e.id,Y);}else this.map.setFilter(e.id,B);}getInnerFloors(){return this.innerFloors}updateCamera(e,n){this.map.once("moveend",n),this.map.easeTo(Object.assign({},e));}setMaxZoom(e,n){var o;this.map.setMaxZoom(e),(o=n?.onComplete)===null||o===void 0||o.call(n);}setMinZoom(e,n){var o;this.map.setMinZoom(e),(o=n?.onComplete)===null||o===void 0||o.call(n);}setBearing(e,n){var o;if(Number.isFinite(e)){if(n?.animate){n.onComplete&&this.map.once("moveend",n.onComplete),this.map.rotateTo(e,{duration:600});return}this.map.setBearing(e),(o=n?.onComplete)===null||o===void 0||o.call(n);}}setRotationEnabled(e){var n,o,c,s,m,w,I,P,L,B;e?((o=(n=this.map.dragRotate)===null||n===void 0?void 0:n.enable)===null||o===void 0||o.call(n),(s=(c=this.map.touchZoomRotate)===null||c===void 0?void 0:c.enableRotation)===null||s===void 0||s.call(c),(w=(m=this.map.keyboard)===null||m===void 0?void 0:m.enable)===null||w===void 0||w.call(m)):((P=(I=this.map.dragRotate)===null||I===void 0?void 0:I.disable)===null||P===void 0||P.call(I),(B=(L=this.map.touchZoomRotate)===null||L===void 0?void 0:L.disableRotation)===null||B===void 0||B.call(L));}setPanEnabled(e){var n,o,c,s;e?(o=(n=this.map.dragPan)===null||n===void 0?void 0:n.enable)===null||o===void 0||o.call(n):(s=(c=this.map.dragPan)===null||c===void 0?void 0:c.disable)===null||s===void 0||s.call(c);}setScrollZoomEnabled(e){var n,o,c,s;e?(o=(n=this.map.scrollZoom)===null||n===void 0?void 0:n.enable)===null||o===void 0||o.call(n):(s=(c=this.map.scrollZoom)===null||c===void 0?void 0:c.disable)===null||s===void 0||s.call(c);}isInsideBounds(e){let n=this.map.getMaxBounds();return n!=null?n.contains(e):true}setMaxBounds(e,n){var o;if(e.length>1){let c=sA(e);this.map.setMaxBounds(new ls.LngLatBounds([c[0].lng,c[0].lat],[c[1].lng,c[1].lat]));}(o=n?.onComplete)===null||o===void 0||o.call(n);}fitCoordinates(e,n){var o,c;if(e.length===0)return;let s=n?.onComplete;if(e.length===1){let[m]=e;s&&this.map.once("moveend",s),this.map.setCenter({lat:m.lat,lng:m.lng});}else {let m,w,I,P;for(let Ke of e){let{lat:ot,lng:Zt}=Ke;m=m===void 0?ot:Math.min(m,ot),w=w===void 0?Zt:Math.min(w,Zt),I=I===void 0?ot:Math.max(I,ot),P=P===void 0?Zt:Math.max(P,Zt);}let L=[w??0,m??0,P??0,I??0],B=this.map.getContainer(),Y=B.clientWidth,W=B.clientHeight,ue=B6(n?.padding,Y,W),_e=Object.assign(Object.assign({},n),{padding:ue}),he=this.map.getBearing(),Pe=this.map.getPitch();(o=_e.bearing)!==null&&o!==void 0||(_e.bearing=he),(c=_e.pitch)!==null&&c!==void 0||(_e.pitch=Pe),s&&this.map.once("moveend",s),this.map.fitBounds(L,_e);}}easeToCoordinates(e,n){var o,c,s;if(e.length===0)return;let m=n?.onComplete,w=this.map.getContainer(),I=w.clientWidth,P=w.clientHeight,L=B6(n?.padding,I,P);if(e.length===1){let[_e]=e;m&&this.map.once("moveend",m),this.map.easeTo(Object.assign(Object.assign({},n),{center:{lat:_e.lat,lng:_e.lng},padding:L}));return}let B=(o=n?.bearing)!==null&&o!==void 0?o:this.map.getBearing(),Y=(c=n?.pitch)!==null&&c!==void 0?c:this.map.getPitch(),W={bearing:B,padding:L,containerWidth:I,containerHeight:P,maxZoom:(s=n?.maxZoom)!==null&&s!==void 0?s:this.map.getMaxZoom(),minZoom:this.map.getMinZoom()},ue=R6(e,W);Y>0&&(ue=k6(this.map.transform.clone(),e,ue,Object.assign(Object.assign({},W),{pitch:Y}))),m&&this.map.once("moveend",m),this.map.easeTo(Object.assign(Object.assign({},n),{center:ue.center,zoom:ue.zoom,bearing:B,pitch:Y,padding:L}));}fitRouteByPlace(e,n,o){let c=e.steps.filter(m=>m.startInsidePlace===n||m.endInsidePlace===n);if(c.length===0)return;let s=c.flatMap(m=>c6(m));s.length>0&&this.fitCoordinates(s,o);}getZoomLevel(){return this.map.getZoom()}updateFloor(e,n){var o,c,s;try{this.filterByFloorKey(e),(o=this.scene3D)===null||o===void 0||o.onFloorChange(this.currentFloor),(c=this.onFloorChange)===null||c===void 0||c.call(this,e),this.logEvent("updateFloor",{floorId:e}),(s=n?.onComplete)===null||s===void 0||s.call(n);}catch(m){this.debugLog("Floor update failed",m);}}updatePlaceAndFloorForRouting(e,n){var o;try{this.updatePlaceAndFloor(e,n),this.updateFiltersTo(n),this.updateMarkersTo(n),(o=this.onFloorChange)===null||o===void 0||o.call(this,n),this.logEvent("updatePlaceAndFloorForRouting",{floorId:n});}catch(c){this.debugLog("Place/floor update for routing failed",c);}}async addRoute(e,n={}){try{this.logEvent("addRoute");let o=new Uo(e),c=new Wl(n),s=await this.repository.fetchAndParseRoute(o);return this.routeController.addRoute(s,c),s}catch(o){throw new Error("Error: Failed to add route",{cause:o})}}async addLiveRoute(e,n={}){try{this.logEvent("addLiveRoute");let o=new Uo(e),c=new Wl(n),s=++this.liveRouteTicket,m=await this.repository.fetchAndParseLiveRoute(o);return s!==this.liveRouteTicket||(this.liveRouteId!==void 0&&this.liveRouteId!==m.id&&this.routeController.removeRoute(this.liveRouteId),this.routeController.getRouteIds().includes(m.id)&&this.routeController.removeRoute(m.id),this.routeController.addRoute(m,c),this.liveRouteId=m.id),m}catch(o){let c=o instanceof Error?o.message:String(o);throw new Error(`Error: Failed to add route: ${c}`,{cause:o})}}updateRouteProgress(e,n,o={type:"Solid",color:"#276EF1"}){try{let c=new Wl({routeStyle:o});this.routeController.updateRouteProgress(e,n,c);}catch(c){this.debugLog("Route update failed (route may not exist)",c);}}removeRoute(e){try{this.logEvent("removeRoute"),this.routeController.removeRoute(e);}catch(n){this.debugLog("Remove route failed (no route may exist)",n);}this.syncLiveRouteId();}removeRouteById(e){try{this.logEvent("removeRouteById"),this.routeController.removeRoute(e);}catch(n){this.debugLog("Remove route failed (route may not exist)",n);}this.syncLiveRouteId();}removeAllRoutes(){try{this.logEvent("removeAllRoutes"),this.routeController.removeAllRoutes();}catch(e){this.debugLog("Remove all routes failed",e);}this.syncLiveRouteId();}syncLiveRouteId(){this.liveRouteId!==void 0&&!this.routeController.getRouteIds().includes(this.liveRouteId)&&(this.liveRouteId=void 0);}getActiveRouteIds(){return this.routeController.getRouteIds()}addPopOver(e){let n=e.placeId;if(n!==void 0){let o=this.subPlaces.find(c=>c.clientId===n||c.mapvxId===n);o!==void 0&&new ls.default.Popup().setLngLat(o.position).setText(o.title).addTo(this.map);}return ""}removePopOver(e){throw Error("Not implemented")}startClickListener(e){this.clickCallback=e;}stopClickListener(){this.clickCallback=void 0;}defaultClickListener(){this.map.on("click",async e=>{var n,o;let m=this.map.queryRenderedFeatures(e.point).filter(I=>{var P;return I.properties.class==="room"&&((P=I.properties)===null||P===void 0?void 0:P.floor_key)===this.currentFloor})[0],w=m?.properties.ref;if(w!=null&&typeof w=="string"&&w.length>0){console.log("touchedFeature",w);let I=this.subPlaces.find(L=>L.mapvxId===w);if(I===void 0)for(let L of this.potentialParentPlaces){let B=this.repository.getCachedSubPlaces(L.mapvxId);if(B&&(I=B.find(Y=>Y.mapvxId===w),I!==void 0))break}if(I===void 0){let L=this.repository.getCachedPlaces([w]);L.length===0?(console.log("fetching place detail from server",w),I=await this.repository.fetchAndParsePlaceDetail({id:w})):(console.log("using cached place detail",w),I=L?.[0]);}console.log("clickedPlace",I?.title);let P=(o=(n=I?.mapvxId)!==null&&n!==void 0?n:I?.clientId)!==null&&o!==void 0?o:"";I!==void 0&&this.clickCallback&&this.clickCallback(P);}});}onHover(){this.enableHover&&(this.map.on("mousemove","hoverable",e=>{var n;let o=(n=e.features)===null||n===void 0?void 0:n.find(s=>{var m,w;return ((m=s.properties.ref)===null||m===void 0?void 0:m.length)>0&&((w=s.properties)===null||w===void 0?void 0:w.floor_key)===this.currentFloor}),c=o?.properties.ref;c!=null&&typeof c=="string"&&c.length>0?(this.hoveredId=c,this.updateFiltersTo(this.currentFloor)):c===void 0&&this.hoveredId!=="unselected"&&(this.hoveredId="unselected",this.updateFiltersTo(this.currentFloor));}),this.map.on("mouseleave","hoverable",()=>{this.hoveredId="unselected",this.updateFiltersTo(this.currentFloor);}));}setPlacesAsSelected(e,n){try{this.hasLayer("indoor-colored-places")||this.createColoredPlacesLayer();let o=this.createBasicFilters(),s=["any",...e.map(w=>["==",["get","ref"],w])],m=["all",s,o];if(this.map.setFilter("indoor-colored-places",m),this.baseFilters["indoor-colored-places"]=s,n!==void 0){let w=this.map.getLayer("indoor-colored-places");switch(w?.type){case "fill":this.map.setPaintProperty("indoor-colored-places","fill-color",n);break;case "fill-extrusion":this.map.setPaintProperty("indoor-colored-places","fill-extrusion-color",n);break;default:break}}}catch(o){this.debugLog("Place selection failed (layer may not exist)",o);}}is3DStyle(){return this.map.getStyle().layers.some(n=>n.type==="fill-extrusion")}createColoredPlacesLayer(){if(this.is3DStyle()){let e={id:"indoor-colored-places",type:"fill-extrusion",source:"indoorequal","source-layer":"area",filter:["all",["has","ref"],["==",["get","ref"],"unselected"]],paint:{"fill-extrusion-height":2.5,"fill-extrusion-color":gp,"fill-extrusion-opacity":.8}};this.map.addLayer(e);}else {let e={id:"indoor-colored-places",type:"fill",source:"indoorequal","source-layer":"area",filter:["all",["has","ref"],["==",["get","ref"],"unselected"]],paint:{"fill-color":gp}};this.map.addLayer(e);}}createBasicFilters(){var e,n;let o=["==",["get","public_place"],true],c=["!",["in",(e=this.parentPlaceId)!==null&&e!==void 0?e:"noRef",["get","is_subplace"]]],s=(n=this.currentFloor)!==null&&n!==void 0?n:"noRef",m=["in",s,["get","floor_key"]],w=["in",s,["get","show_in_floor"]],I=o;return this.parentPlaceId!=null&&(I=["any",m,o]),["all",I,["any",c,w]]}hasLayer(e){return this.map.getLayer(e)!==void 0}clearColoredPlaces(){if(this.hasLayer("indoor-colored-places")){let e=["==",["get","ref"],"unselected"];this.baseFilters["indoor-colored-places"]=e,this.map.setFilter("indoor-colored-places",e);}}async startAnimateRoute(e,n={},o={}){try{let c;if(e instanceof xo)c=e;else {let w=new Uo(e);c=await this.repository.fetchAndParseRoute(w);}let s=new fp(n),m=new hp(o);return this.routeController.startAnimating(c,s,m),c}catch(c){throw new Error("Error: Failed to start animating route",{cause:c})}}async startAnimateRouteV2(e,n={},o={}){try{let c;if(e instanceof xo)c=e;else {let w=new Uo(e);c=await this.repository.fetchAndParseRouteV2(w);}let s=new fp(n),m=new hp(o);return this.routeController.startAnimating(c,s,m),c}catch(c){throw new Error("Error: Failed to start animating route",{cause:c})}}pauseAnimateRoute(e){try{this.routeController.pauseAnimation(e),this.logEvent("pauseAnimateRoute");}catch(n){this.debugLog("Pause animation failed (no animation may be running)",n);}}resumeAnimateRoute(e){try{this.routeController.resumeAnimation(e),this.logEvent("resumeAnimateRoute");}catch(n){this.debugLog("Resume animation failed (no animation may be paused)",n);}}restartAnimateRoute(e){try{this.routeController.restartAnimation(e),this.logEvent("restartAnimateRoute");}catch(n){this.debugLog("Restart animation failed (no animation may exist)",n);}}stopAnimateRoute(){this.logWarning(new Error("Not implemented"),{functionName:"stopAnimateRoute"});}async addStepAnimation(e,n={},o={}){try{let c;if(e instanceof xo)c=e;else {let w=new Uo(e);c=await this.repository.fetchAndParseRoute(w);}let s=new fp(n),m=new hp(o);return this.routeController.addStepAnimation(c,s,m),this.logEvent("addStepAnimation"),c}catch(c){throw new Error("Error: Failed to add step animation",{cause:c})}}async addStepAnimationV2(e,n={},o={}){try{let c;if(e instanceof xo)c=e;else {let w=new Uo(e);c=await this.repository.fetchAndParseRouteV2(w);}let s=new fp(n),m=new hp(o);return this.routeController.addStepAnimation(c,s,m),this.logEvent("addStepAnimationV2"),c}catch(c){throw new Error("Error: Failed to add step animation",{cause:c})}}nextStepAnimation(e){try{this.routeController.nextStepAnimation(e),this.logEvent("nextStepAnimation");}catch(n){throw new Error("Error: Failed to animate step",{cause:n})}}previousStepAnimation(e){try{this.routeController.previousStepAnimation(e),this.logEvent("previousStepAnimation");}catch(n){let o=n instanceof Error?n.message:String(n);throw new Error("Error: Failed to prepare to animate previous step, "+o)}}centerOnCurrentStepAnimation(e){try{this.routeController.centerOnCurrentStep(e),this.logEvent("centerOnCurrentStepAnimation");}catch(n){let o=n instanceof Error?n.message:String(n);throw new Error("Error: Failed to center on current step animation, "+o)}}addUserLocationTracking(e,n,o){let c={lat:0,lng:0},s;if(o!=null)s=o;else {let P=new Image(40,40);P.src=QF,s=P;}let m={coordinate:c,icon:s,text:""},w=new uu(m);w.addToMap(this.map),this.userLocationMarker=w;let I=P=>{w.setLngLat([P.coords.longitude,P.coords.latitude]);};this.geoLocation=n??navigator.geolocation,this.watchPositionID=this.geoLocation.watchPosition(I,P=>{console.error("Error getting user location:",P);},{enableHighAccuracy:e});}removeUserLocationTracking(){this.userLocationMarker!==void 0&&(this.userLocationMarker.remove(),this.userLocationMarker=void 0,this.watchPositionID&&(this.geoLocation.clearWatch(this.watchPositionID),this.watchPositionID=void 0));}getBearing(){return this.map.getBearing()}addBorderToPlaces(e,n,o){try{this.hasLayer("indoor-bordered-places")||this.createBorderedPlacesLayer();let c=this.createBasicFilters(),m=["any",...e.map(I=>["==",["get","ref"],I])],w=["all",m,c];this.map.setFilter("indoor-bordered-places",w),this.baseFilters["indoor-bordered-places"]=m,n!==void 0&&o!==void 0&&(this.map.setPaintProperty("indoor-bordered-places","line-color",n),this.map.setPaintProperty("indoor-bordered-places","line-width",o));}catch(c){throw new Error("Failed to add border to places",{cause:c})}}createBorderedPlacesLayer(){let e={id:"indoor-bordered-places",type:"line",source:"indoorequal","source-layer":"area",filter:["all",["has","ref"],["==",["get","ref"],"unselected"]],paint:{"line-color":gp,"line-width":4}};this.map.addLayer(e);}clearBorderedPlaces(){if(this.hasLayer("indoor-bordered-places")){let e=["==",["get","ref"],"unselected"];this.baseFilters["indoor-bordered-places"]=e,this.map.setFilter("indoor-bordered-places",e);}}onWebGLContextLost(e){var n,o;e.originalEvent.preventDefault(),console.warn("Contexto WebGL perdido \u{1F622}");let c=(n=this===null||this===void 0?void 0:this.map)===null||n===void 0?void 0:n.getCanvas(),s=c?.getContext("webgl")||c?.getContext("webgl2");if(s&&s.isContextLost()){c.addEventListener("webglcontextrestored",()=>{console.debug("Contexto WebGL restaurado, forzando re-render"),this.map.triggerRepaint(),this.failedTiles.clear();},{once:true});let m=s.getExtension("WEBGL_lose_context");(o=m?.restoreContext)===null||o===void 0||o.call(m);}}onWebGLContextRestored(){console.debug("Evento webglcontextrestored recibido, haciendo map.redraw()"),this.map.redraw(),this.failedTiles.clear();}onSourceData(e){var n;if(e.source.type==="vector"&&e.sourceId==="indoorequal"&&e.tile&&!e.isSourceLoaded){let o=(n=e.tile)===null||n===void 0?void 0:n.state;(o==="errored"||o==="expired")&&this.failedTiles.add(e.tile);}}onSourceDataAbort(e){e.source.type==="vector"&&e.sourceId==="indoorequal"&&e.tile&&this.failedTiles.delete(e.tile);}subscribeToFailedTiles(){this.retryTimer||(this.boundOnSourceData=this.onSourceData.bind(this),this.boundOnSourceDataAbort=this.onSourceDataAbort.bind(this),this.boundOnWebGLContextLost=this.onWebGLContextLost.bind(this),this.boundOnWebGLContextRestored=this.onWebGLContextRestored.bind(this),this.retryTimer=setInterval(()=>{if(!this.map.getSource("indoorequal")){this.failedTiles.clear();return}let e=this.map.getSource("indoorequal");if(!e||e.type!=="vector"){this.failedTiles.clear();return}let n=[],o=[];this.failedTiles.forEach(s=>{if(!s||s.state==="unloaded"||s.state==="loading"){o.push(s);return}s.state==="errored"||s.state==="expired"?n.push(s):o.push(s);}),o.forEach(s=>this.failedTiles.delete(s));let c=Date.now();n.forEach(s=>{var m;let w=(m=this.tileRetryState.get(s))!==null&&m!==void 0?m:{attempts:0,nextAttemptAt:0,pending:false};if(w.pending||c<w.nextAttemptAt)return;let I=P=>{let L=w.attempts+1;if(L>=L6){this.debugLog(`Tile reload failed ${L} times, dropping it from the retry queue`,P),this.failedTiles.delete(s),this.tileRetryState.delete(s);return}let B=QQ*2**(L-1);this.debugLog(`Tile reload failed (attempt ${L}/${L6}), retrying in ${B}ms`,P),this.tileRetryState.set(s,{attempts:L,nextAttemptAt:Date.now()+B,pending:false});};try{s&&(s.state==="errored"||s.state==="expired")&&(this.tileRetryState.set(s,Object.assign(Object.assign({},w),{pending:!0})),e.loadTile(s).then(()=>{this.tileRetryState.delete(s);}).catch(I));}catch(P){I(P);}});},1e3),this.map.on("sourcedata",this.boundOnSourceData),this.map.on("sourcedataabort",this.boundOnSourceDataAbort),this.map.on("webglcontextlost",this.boundOnWebGLContextLost),this.map.on("webglcontextrestored",this.boundOnWebGLContextRestored));}unsubscribeFromFailedTiles(){this.retryTimer&&(clearInterval(this.retryTimer),this.retryTimer=void 0),this.boundOnSourceData&&(this.map.off("sourcedata",this.boundOnSourceData),this.boundOnSourceData=void 0),this.boundOnSourceDataAbort&&(this.map.off("sourcedataabort",this.boundOnSourceDataAbort),this.boundOnSourceDataAbort=void 0),this.boundOnWebGLContextLost&&(this.map.off("webglcontextlost",this.boundOnWebGLContextLost),this.boundOnWebGLContextLost=void 0),this.boundOnWebGLContextRestored&&(this.map.off("webglcontextrestored",this.boundOnWebGLContextRestored),this.boundOnWebGLContextRestored=void 0),this.failedTiles.clear();}};function j6(t){return t instanceof DeviceOrientationEvent}function $6(t){return typeof t=="string"?{id:t}:t}function TA(t,e){let o=Object.assign(Object.assign({},{lang:"en",apiUrl:"https://public-api.mapvx.com",cache:{persistent:false}}),e);return new e2(t,o)}var e2=class extends hu{constructor(e,n){var o,c,s;super(),this.maps=[],this.geoLocation=navigator.geolocation,this.headingListeners=[],this.token=e,this.config=n;let m=new ep({persistent:(o=n.cache)===null||o===void 0?void 0:o.persistent,maxStorageBytes:(c=n.cache)===null||c===void 0?void 0:c.maxStorageBytes,configs:(s=n.cache)===null||s===void 0?void 0:s.configs});this.repository=new Jf(e,this.config.lang,this.config.apiUrl,m,this.config.mapvxRequestContext),this.cachePlaces(),this.logEvent("initSDK");}cachePlaces(){this.repository.fetchAndParseAvailablePlaces().catch(()=>{});}setSdkLang(e){this.config.lang=e,this.repository.setLang(e),this.maps.forEach(n=>n.setLang(e));}unregisterMap(e){let n=this.maps.indexOf(e);n>=0&&this.maps.splice(n,1);}async getPlaceDetail(e){try{let n=$6(e),o=await this.repository.fetchAndParsePlaceDetail(n);return this.logEvent("getPlaceDetail",{id:n.id}),o}catch(n){throw new Error("Error getPlaceDetail",{cause:n})}}async getAnyPlaceDetail(e,n){try{let o=$6(e),c=await this.repository.fetchAndParseAnyPlaceDetail(o,n);return this.logEvent("getAnyPlaceDetail",{id:o.id}),c}catch(o){throw new Error("Error getAnyPlaceDetail",{cause:o})}}prepareSegmentation(e){return Object.assign(Object.assign({},e),{token:this.token})}createMap(e,n){try{n.lang=this.config.lang,n.apiUrl=this.config.apiUrl,n.mapvxRequestContext=this.config.mapvxRequestContext;let o=new Jx(n,e,this.token),c=o.destroyMap.bind(o);return o.destroyMap=()=>{try{c();}finally{this.unregisterMap(o);}},this.maps.push(o),this.logEvent("createMap"),o}catch(o){throw new Error("Failed to create map",{cause:o})}}async getConfiguration(e,n){try{let o=await this.repository.fetchAndParseConfiguration(e,n);return this.logEvent("configuration"),o}catch(o){throw new Error("Failed to get configuration",{cause:o})}}async getCategories(e){try{let n=await this.repository.fetchAndParseCategories(e);return this.logEvent("categories"),n}catch(n){throw new Error("Failed to get categories",{cause:n})}}async getTransport(e){try{return await this.repository.fetchAndParseTransport(e)}catch(n){throw new Error("Failed to get transport",{cause:n})}}getCachedPlaces(e){try{let n=this.repository.getCachedPlaces(e);return this.logEvent("getCachedPlaces"),n}catch(n){throw new Error("Failed to get cached places",{cause:n})}}async getAvailablePlaces(){try{let e=await this.repository.fetchAndParseAvailablePlaces();return this.logEvent("getAvailablePlaces"),e}catch(e){throw new Error("Failed to get available places",{cause:e})}}async getSubPlaces(e){try{let n=await this.repository.fetchAndParseSubPlaces(e);return this.logEvent("getSubPlaces"),n}catch(n){throw new Error("Failed to get subplaces",{cause:n})}}async getPlacesFromInstitution(e,n){try{let o=await this.repository.fetchAndParsePlacesFromInstitution(e,n);return this.logEvent("getPlacesFromInstitution"),o}catch(o){throw new Error("Failed to get places from institution",{cause:o})}}async getAnySubPlaces(e,n){try{let o=await this.repository.fetchAndParseAnySubPlaces(e,n);return this.logEvent("getAnySubPlaces"),o}catch(o){throw new Error("Failed to get any sub-places",{cause:o})}}async getInstitutions(){try{let e=await this.repository.fetchAndParseInstitutions();return this.logEvent("getInstitutions"),e}catch(e){throw new Error("Error getInstitution",{cause:e})}}async getRoute(e){try{let n=new Uo(e),o=await this.repository.fetchAndParseRoute(n);return this.logEvent("getRoute"),o}catch(n){throw new Error("Failed to get route",{cause:n})}}async getRouteV2(e){try{let n=new Uo(e),o=await this.repository.fetchAndParseRouteV2(n);return this.logEvent("getRouteV2"),o}catch(n){throw new Error("Failed to get route",{cause:n})}}async getLiveRoute(e){try{let n=new Uo(e),o=await this.repository.fetchAndParseLiveRoute(n);return this.logEvent("getLiveRoute"),o}catch(n){throw new Error("Failed to get route",{cause:n})}}async getPlacesByInput(e,n,o,c,s,m,w,I){try{let P=o?c?[o,...c]:[o]:c,L=await this.repository.fetchAndParseSearchResults(n,e,P,s,m,w,I);return this.logEvent("getPlacesByInput"),L}catch(P){throw new Error("Failed to get places by input",{cause:P})}}async searchPlacesByTags(e,n,o={}){if(!n||n.length===0)throw new Error("searchPlacesByTags requires at least one tag");let{parentPlaces:c,sort:s,origin:m,lat:w,lng:I,floor:P}=o;if(s==="distance"){let L=w!=null&&I!=null&&P!=null&&c!=null&&c.length>0;if(!m&&!L)throw new Error('searchPlacesByTags with sort "distance" requires "origin" or "lat" + "lng" + "floor" + "parentPlaces"')}try{let L=await this.repository.fetchAndParseSearchPlacesByTags(e,n,c,s,m,w,I,P);return this.logEvent("searchPlacesByTags"),L}catch(L){throw new Error("Failed to search places by tags",{cause:L})}}async getPlacesByCategory(e){try{return this.logEvent("getPlacesByCategory"),[]}catch(n){throw new Error("Failed to get places by category",{cause:n})}}setGeoLocation(e){this.geoLocation=e;}getUserLocation(e={enableHighAccuracy:true,timeout:60*1e3,maximumAge:10*1e3}){return new Promise((n,o)=>{this.geoLocation.getCurrentPosition(c=>{n(c);},c=>{o(c);},e);})}watchUserPosition(e,n,o={enableHighAccuracy:true,timeout:60*1e3,maximumAge:1e3}){return this.geoLocation.watchPosition(c=>{e(c);},c=>{n(c);},o)}unWatchUserPosition(e){this.geoLocation.clearWatch(e);}watchUserHeading(e,n){let o=c=>{if(!j6(c))return;let s=null;c.webkitCompassHeading!==void 0?s=c.webkitCompassHeading||null:c.absolute&&c.alpha!==null&&(s=360-c.alpha),s!==null?e(s):n("Could not retrieve heading information.");};this.headingListeners.push(o),"ondeviceorientationabsolute"in window?window.addEventListener("deviceorientationabsolute",o):"ondeviceorientation"in window&&window.addEventListener("deviceorientation",o);}unwatchUserHeading(){this.headingListeners.forEach(e=>{window.removeEventListener("deviceorientationabsolute",e),window.removeEventListener("deviceorientation",e);}),this.headingListeners=[];}static getLang(){return this.config.lang}async loadRoutesForOriginCache(e,n,o,c,s){await this.repository.fetchAndParseRoutesFromOrigin(e,n,o,c,s);}async getCacheTimestamp(e){try{let n=await this.repository.fetchAndParseCacheTimestamp(e);return this.logEvent("getCacheTimestamp"),n}catch(n){throw new Error("Failed to get cache timestamp",{cause:n})}}cleanRoutesCache(){this.repository.cleanRoutesCache();}async getCssCustomization(e){try{let n=await this.repository.fetchAndParseCssCustomization(e);return this.logEvent("cssCustomization"),n}catch(n){throw new Error("Failed to get css customization",{cause:n})}}async notifyHealth(e,n,o,c){try{return await this.repository.postAndParseHealthPing(e,n,o,c)}catch(s){throw new Error("Failed to notify health",{cause:s})}}};var wo=class t{logger=se(Tt);_sdk;get sdk(){if(this._sdk!=null)return this._sdk;throw this.logger.log("Called sdk access without sdk initialized"),new Error("SDK not initialized")}initialize(e,n="en"){this._sdk=TA(e,{lang:n});}isInitialized(){return this._sdk!=null}createMap(e,n){return this.sdk.createMap(e,n)}async getAvailablePlaces(){return this.sdk.getAvailablePlaces()}async getSubPlaces(e){return this.sdk.getSubPlaces(e)}async getConfiguration(){return this.sdk.getConfiguration()}async searchPlaces(e,n){return this.sdk.getPlacesByInput(e,n)}async getInstitutions(){return this.sdk.getInstitutions()}async getPlaceDetail(e){return this.sdk.getPlaceDetail(e)}async getRoute(e,n){let o={initialLocation:Bs(e)?e.position:{id:e.mapvxId},finalLocation:Bs(n)?n.position:{id:n.mapvxId}};return this.sdk.getRouteV2(o)}watchUserLocation(e,n){return this.sdk.watchUserPosition(o=>e(I1(o)),o=>n(new Error("Error watching user location",{cause:o})))}stopWatchingUserLocation(e){this.sdk.unWatchUserPosition(e);}watchUserHeading(e,n){return this.sdk.watchUserHeading(e,o=>n(new Error(`Error watching user bearing: ${o}`)))}stopWatchingUserHeading(){this.sdk.unwatchUserHeading();}static \u0275fac=function(n){return new(n||t)};static \u0275prov=ct({token:t,factory:t.\u0275fac,providedIn:"root"})};var tr=class t{onDestroy=new an;logger=se(Tt);sdkService=se(wo);loadedDataService=se(In);_map;mapReady=new Cn(false);rotation=new Cn(0);configuration;currentFloorId=dt(void 0);get map(){if(this._map!=null)return this._map;throw this.logger.log("Called map access without map created"),new Error("Map not created")}ngOnDestroy(){this.mapReady.complete(),this.onDestroy.next(),this.onDestroy.complete();}createMap(e,n){this.mapReady.next(false),this._map!=null?(this.logger.log("====> map already exists, waiting for container to be ready"),this.waitForMapContainer(e,this._map.getContainer(),n)):(this.logger.log("====> map does not exist, creating new map"),this.loadedDataService.getConfiguration().pipe(ni(this.onDestroy)).subscribe(o=>{this.configuration=o;let c={zoom:o.initialZoom??15,center:o.initialCenter??{lat:0,lng:0},maxZoom:o.limitZoomIn,minZoom:o.limitZoomOut,lang:o.defaultLanguage,maxBounds:o.pointsOfInterest,otherPotentialParentPlacesIds:o.potentialParentPlaces,onMapReady:()=>{n?.(),this.mapReady.next(true);},onRotate:s=>{this.rotation.next(s);},onFloorChange:s=>{this.currentFloorId.set(s);}};this._map=this.sdkService.createMap(e,c);}));}waitForMapContainer(e,n,o){let s=0,m=()=>{s++;try{e.replaceWith(n),o?.(),this.mapReady.next(!0);return}catch{this.logger.log(`Map container not ready yet, attempt ${s}/100`);}s<100?setTimeout(m,100):(this.logger.logWarning("Map container not available after maximum attempts, creating new map"),this._map?.destroyMap(),this._map=void 0,this.mapReady.next(false),this.createMap(e,o));};m();}waitUntilMapReady(e){return Oo([e,this.mapReady]).pipe(mr(([,n])=>n),Qt(([n])=>n))}waitUntilMapIsReady(){return e=>this.waitUntilMapReady(e)}removeAllMarkers(){try{this.map.removeAllMarkers();}catch(e){this.logger.logWarning("Error removing all markers",e);}}removeMarker(e){try{this.map.removeMarker(e);}catch(n){this.logger.logWarning("Error removing marker",n);}}addMarker(e){try{this.map.addMarker(e);}catch(n){this.logger.logWarning("Error adding marker",n);}}updateMarkerPosition(e,n){try{this.map.updateMarkerPosition(e,n),this.logger.log("Update marker position success with arguments ",e,n);}catch(o){this.logger.log("Update marker position failed with arguments ",e,n),this.logger.logWarning(new Error("Update marker position failed",{cause:o}));}}updateZoomLevelOn(e){let n=this.map.getZoomLevel();try{this.map.updateCamera({zoom:n+e});}catch(o){this.logger.logWarning("Error updating zoom level",o);}}updateToInitialCamera(){try{this.map.updateCamera({center:this.configuration?.initialCenter??{lat:0,lng:0},zoom:this.configuration?.initialZoom??15,pitch:this.configuration?.initialPitch??0,bearing:0});}catch(e){this.logger.logWarning("Error updating to initial camera",e);}}updateCamera(e,n){try{this.map.updateCamera(e,n);}catch(o){this.logger.logWarning("Error updating camera",o);}}fitCoordinates(e,n){try{let o=this.map.getBearing();this.logger.log(`Current map bearing is ${o}`),this.map.fitCoordinates(e,r$1({bearing:o},n));}catch(o){this.logger.log("Fit coordinates failed with arguments ",e,n),this.logger.logWarning(new Error("Fit coordinates failed",{cause:o}));}}fitRoute(e,n,o,c){let s=[e,n,...o.legs.flatMap(w=>w.steps.flatMap(I=>I.coordinates))],m=this.map.getBearing();try{this.map.fitCoordinates(s,r$1({bearing:m},c));}catch(w){this.logger.log("Fit route failed with arguments ",o,c),this.logger.logWarning(new Error("Fit route failed",{cause:w}));}}startAnimatingRoute(e,n,o){try{this.map.startAnimateRouteV2(e,n,o).catch(c=>{this.logger.logWarning("Error starting animating route",c);});}catch(c){this.logger.logWarning("Error starting animating route",c);}}addStepAnimation(e,n,o){try{this.map.addStepAnimationV2(e,n,o).catch(c=>{this.logger.logWarning("Error adding step animation",c);});}catch(c){this.logger.logWarning("Error adding step animation",c);}}nextStepAnimation(){try{this.map.nextStepAnimation();}catch(e){this.logger.logWarning("Error animating next step",e);}}previousStepAnimation(){try{this.map.previousStepAnimation();}catch(e){this.logger.logWarning("Error animating previous step",e);}}centerOnCurrentStepAnimation(){try{this.map.centerOnCurrentStepAnimation();}catch(e){this.logger.logWarning("Error centering on current step",e);}}pauseAnimatingRoute(){try{this.map.pauseAnimateRoute();}catch(e){this.logger.logWarning("Error pausing animating route",e);}}resumeAnimatingRoute(){try{this.map.resumeAnimateRoute();}catch(e){this.logger.logWarning("Error resuming animating route",e);}}restartAnimatingRoute(){try{this.map.restartAnimateRoute();}catch(e){this.logger.logWarning("Error restarting animating route",e);}}removeRoute(){try{this.map.removeRoute();}catch(e){this.logger.logWarning("Error removing route",e);}}setParentPlace(e){try{this.map.setParentPlace(e,!1);}catch(n){this.logger.logWarning("Error setting parent place",n);}}updateFloor(e){try{this.map.updateFloor(e),this.currentFloorId.set(e);}catch(n){this.logger.logWarning("Error updating floor",n);}}removeParentPlace(){try{this.map.removeParentPlace();}catch(e){this.logger.logWarning("Error removing parent place and floor",e);}}prepareToReuse(){this.mapReady.next(false);}static \u0275fac=function(n){return new(n||t)};static \u0275prov=ct({token:t,factory:t.\u0275fac,providedIn:"root"})};var MA={};w(MA,{faAdd:()=>UJ,faArrowDown:()=>yJ,faArrowDownArrowUp:()=>Y6,faArrowDownFromArc:()=>MJ,faArrowDownFromBracket:()=>qee,faArrowDownFromDottedLine:()=>xee,faArrowDownFromLine:()=>p8,faArrowDownLeft:()=>Bee,faArrowDownLong:()=>r8,faArrowDownLongToLine:()=>bJ,faArrowDownRight:()=>lJ,faArrowDownToArc:()=>sJ,faArrowDownToBracket:()=>ete,faArrowDownToLine:()=>g8,faArrowFromBottom:()=>ZJ,faArrowFromLeft:()=>ree,faArrowFromRight:()=>Eee,faArrowFromTop:()=>jee,faArrowLeft:()=>HJ,faArrowLeftArrowRight:()=>IJ,faArrowLeftFromArc:()=>VJ,faArrowLeftFromBracket:()=>hJ,faArrowLeftFromDottedLine:()=>Wee,faArrowLeftFromLine:()=>s8,faArrowLeftLong:()=>l8,faArrowLeftLongToLine:()=>ote,faArrowLeftRotate:()=>TJ,faArrowLeftToArc:()=>mee,faArrowLeftToBracket:()=>vte,faArrowLeftToDottedLine:()=>$J,faArrowLeftToLine:()=>h8,faArrowPointer:()=>G6,faArrowProgress:()=>zee,faArrowRight:()=>gee,faArrowRightArrowLeft:()=>e8,faArrowRightFromArc:()=>Cee,faArrowRightFromBracket:()=>n8,faArrowRightFromDottedLine:()=>GJ,faArrowRightFromLine:()=>i8,faArrowRightLong:()=>_8,faArrowRightLongToLine:()=>iJ,faArrowRightRotate:()=>OJ,faArrowRightToArc:()=>wJ,faArrowRightToBracket:()=>m8,faArrowRightToDottedLine:()=>xJ,faArrowRightToLine:()=>v8,faArrowRotateBack:()=>CJ,faArrowRotateBackward:()=>DJ,faArrowRotateForward:()=>NJ,faArrowRotateLeft:()=>Rv,faArrowRotateRight:()=>t2,faArrowToBottom:()=>Jee,faArrowToLeft:()=>Gee,faArrowToRight:()=>rte,faArrowToTop:()=>XJ,faArrowTrendDown:()=>rJ,faArrowTrendUp:()=>_te,faArrowTurnDown:()=>o8,faArrowTurnDownLeft:()=>ute,faArrowTurnDownRight:()=>Qee,faArrowTurnLeft:()=>mte,faArrowTurnLeftDown:()=>bee,faArrowTurnLeftUp:()=>xte,faArrowTurnRight:()=>uJ,faArrowTurnUp:()=>a8,faArrowUTurnDownLeft:()=>PJ,faArrowUTurnDownRight:()=>See,faArrowUTurnLeftDown:()=>vJ,faArrowUTurnLeftUp:()=>Dee,faArrowUTurnRightDown:()=>Aee,faArrowUTurnRightUp:()=>kee,faArrowUTurnUpLeft:()=>wte,faArrowUTurnUpRight:()=>see,faArrowUp:()=>Tee,faArrowUpArrowDown:()=>H6,faArrowUpFromArc:()=>wee,faArrowUpFromBracket:()=>Nee,faArrowUpFromDottedLine:()=>Vee,faArrowUpFromLine:()=>J6,faArrowUpLeft:()=>$ee,faArrowUpLong:()=>d8,faArrowUpLongToLine:()=>qJ,faArrowUpRight:()=>oee,faArrowUpRightAndArrowDownLeftFromCenter:()=>Uee,faArrowUpToArc:()=>KJ,faArrowUpToBracket:()=>aJ,faArrowUpToDottedLine:()=>bte,faArrowUpToLine:()=>t8,faArrowsCross:()=>cee,faArrowsDownToLine:()=>fee,faArrowsH:()=>zJ,faArrowsLeftRight:()=>X6,faArrowsRepeat:()=>Q6,faArrowsRetweet:()=>q6,faArrowsRotate:()=>CA,faArrowsRotateReverse:()=>oJ,faArrowsSpin:()=>pte,faArrowsSplitUpAndLeft:()=>Hee,faArrowsTurnRight:()=>yee,faArrowsUpDown:()=>f8,faArrowsV:()=>Yee,faBadgeDollar:()=>FJ,faBuildingMagnifyingGlass:()=>Zee,faCaretDown:()=>kJ,faCaretUp:()=>WJ,faChevronLeft:()=>iee,faChevronRight:()=>tte,faCircle:()=>Oee,faCircleNotch:()=>ite,faCircleSmall:()=>hte,faClockThree:()=>yte,faClose:()=>uee,faEllipsis:()=>S8,faEllipsisH:()=>dte,faEllipsisHAlt:()=>cte,faEllipsisStroke:()=>w8,faEllipsisStrokeVertical:()=>c8,faEllipsisV:()=>nte,faEllipsisVAlt:()=>Lee,faEllipsisVertical:()=>y8,faExchange:()=>YJ,faFilter:()=>fte,faGrid2:()=>SJ,faLevelDown:()=>vee,faLevelUp:()=>Mee,faLocation:()=>mJ,faLocationArrow:()=>Kee,faLocationArrowUp:()=>BJ,faLocationCrosshairs:()=>W6,faLocationDot:()=>Z6,faLongArrowDown:()=>JJ,faLongArrowLeft:()=>Ree,faLongArrowRight:()=>ste,faLongArrowUp:()=>Fee,faMagnifyingGlass:()=>b8,faMapLocationDot:()=>x8,faMapMarkedAlt:()=>lte,faMapMarkerAlt:()=>gJ,faMinus:()=>E8,faMousePointer:()=>cJ,faMultiply:()=>dee,faPause:()=>_J,faPlay:()=>Iee,faPlayPause:()=>_ee,faPlus:()=>K6,faQuestionSquare:()=>AA,faRedo:()=>LJ,faRedoAlt:()=>aee,faRefresh:()=>dJ,faRemove:()=>pee,faRepeatAlt:()=>jJ,faRetweetAlt:()=>fJ,faRotate:()=>I8,faRotateBack:()=>eee,faRotateBackward:()=>tee,faRotateForward:()=>lee,faRotateLeft:()=>n2,faRotateReverse:()=>RJ,faRotateRight:()=>DA,faSearch:()=>ate,faSignIn:()=>Xee,faSignOut:()=>QJ,faSortAlt:()=>EJ,faSortUpDown:()=>nJ,faSquareQuestion:()=>u8,faSubtract:()=>gte,faSwapArrows:()=>Pee,faSync:()=>pJ,faSyncAlt:()=>Ste,faTimes:()=>hee,faUndo:()=>AJ,faUndoAlt:()=>nee,faXmark:()=>kv});var H6={prefix:"fas",iconName:"arrow-up-arrow-down",icon:[512,512,["sort-up-down"],"e099","M150.6 9.4c-12.5-12.5-32.8-12.5-45.3 0l-96 96c-12.5 12.5-12.5 32.8 0 45.3s32.8 12.5 45.3 0L96 109.3 96 480c0 17.7 14.3 32 32 32s32-14.3 32-32l0-370.7 41.4 41.4c12.5 12.5 32.8 12.5 45.3 0s12.5-32.8 0-45.3l-96-96zm352 397.3c12.5-12.5 12.5-32.8 0-45.3s-32.8-12.5-45.3 0L416 402.7 416 32c0-17.7-14.3-32-32-32s-32 14.3-32 32l0 370.7-41.4-41.4c-12.5-12.5-32.8-12.5-45.3 0s-12.5 32.8 0 45.3l96 96c12.5 12.5 32.8 12.5 45.3 0l96-96z"]},nJ=H6,rJ={prefix:"fas",iconName:"arrow-trend-down",icon:[576,512,[],"e097","M384 352c-17.7 0-32 14.3-32 32s14.3 32 32 32l160 0c17.7 0 32-14.3 32-32l0-160c0-17.7-14.3-32-32-32s-32 14.3-32 32l0 82.7-169.4-169.4c-12.5-12.5-32.8-12.5-45.3 0L192 242.7 54.6 105.4c-12.5-12.5-32.8-12.5-45.3 0s-12.5 32.8 0 45.3l160 160c12.5 12.5 32.8 12.5 45.3 0L320 205.3 466.7 352 384 352z"]},iJ={prefix:"fas",iconName:"arrow-right-long-to-line",icon:[640,512,[],"e3d5","M640 128c0-17.7-14.3-32-32-32s-32 14.3-32 32l0 256c0 17.7 14.3 32 32 32s32-14.3 32-32l0-256zM374.6 105.4c-12.5-12.5-32.8-12.5-45.3 0s-12.5 32.8 0 45.3L402.7 224 32 224c-17.7 0-32 14.3-32 32s14.3 32 32 32l370.7 0-73.4 73.4c-12.5 12.5-12.5 32.8 0 45.3s32.8 12.5 45.3 0l128-128c12.5-12.5 12.5-32.8 0-45.3l-128-128z"]},oJ={prefix:"fas",iconName:"arrows-rotate-reverse",icon:[512,512,[],"e630","M446.1 228.5c-13.3-93-93.4-164.5-190.1-164.5-53 0-101 21.5-135.8 56.2-.2 .2-.4 .4-.6 .6l-7.6 7.2 47.9 0c17.7 0 32 14.3 32 32s-14.3 32-32 32L32 192c-17.7 0-32-14.3-32-32L0 32C0 14.3 14.3 0 32 0S64 14.3 64 32l0 53.4 11.3-10.7C121.5 28.6 185.5 0 256 0 385 0 491.7 95.4 509.4 219.5 511.9 237 499.8 253.2 482.3 255.7s-33.7-9.7-36.2-27.1zM2.6 292.5C.1 275 12.2 258.8 29.7 256.3s33.7 9.7 36.2 27.1c13.3 93 93.4 164.5 190.1 164.5 53 0 101-21.5 135.8-56.2 .2-.2 .4-.4 .6-.6l7.6-7.2-47.9 0c-17.7 0-32-14.3-32-32s14.3-32 32-32l128 0c8.5 0 16.7 3.4 22.7 9.5s9.3 14.3 9.3 22.8l-1 127c-.1 17.7-14.6 31.9-32.3 31.7s-31.9-14.6-31.7-32.3l.4-51.5-10.7 10.1C390.5 483.4 326.5 512 256 512 127 512 20.3 416.6 2.6 292.5z"]},sJ={prefix:"fas",iconName:"arrow-down-to-arc",icon:[512,512,[],"e4ae","M256 448c106 0 192-86 192-192 0-17.7 14.3-32 32-32s32 14.3 32 32c0 141.4-114.6 256-256 256S0 397.4 0 256c0-17.7 14.3-32 32-32s32 14.3 32 32c0 106 86 192 192 192zm22.6-105.4c-12.5 12.5-32.8 12.5-45.3 0l-96-96c-12.5-12.5-12.5-32.8 0-45.3s32.8-12.5 45.3 0L224 242.7 224 32c0-17.7 14.3-32 32-32s32 14.3 32 32l0 210.7 41.4-41.4c12.5-12.5 32.8-12.5 45.3 0s12.5 32.8 0 45.3l-96 96z"]},aJ={prefix:"fas",iconName:"arrow-up-to-bracket",icon:[448,512,[],"e66a","M64 160l0-64c0-17.7 14.3-32 32-32l256 0c17.7 0 32 14.3 32 32l0 64c0 17.7 14.3 32 32 32s32-14.3 32-32l0-64c0-53-43-96-96-96L96 0C43 0 0 43 0 96l0 64c0 17.7 14.3 32 32 32s32-14.3 32-32zm182.6 9.4c-12.5-12.5-32.8-12.5-45.3 0l-128 128c-12.5 12.5-12.5 32.8 0 45.3s32.8 12.5 45.3 0L192 269.3 192 480c0 17.7 14.3 32 32 32s32-14.3 32-32l0-210.7 73.4 73.4c12.5 12.5 32.8 12.5 45.3 0s12.5-32.8 0-45.3l-128-128z"]},lJ={prefix:"fas",iconName:"arrow-down-right",icon:[384,512,[],"e093","M352 448c17.7 0 32-14.3 32-32l0-224c0-17.7-14.3-32-32-32s-32 14.3-32 32L320 338.7 54.6 73.4c-12.5-12.5-32.8-12.5-45.3 0s-12.5 32.8 0 45.3L274.7 384 128 384c-17.7 0-32 14.3-32 32s14.3 32 32 32l224 0z"]},G6={prefix:"fas",iconName:"arrow-pointer",icon:[448,512,["mouse-pointer"],"f245","M77.3 2.5c8.1-4.1 17.9-3.2 25.1 2.3l320 239.9c8.3 6.2 11.6 17 8.4 26.8s-12.4 16.4-22.8 16.4l-152.3 0 88.9 177.7c7.9 15.8 1.5 35-14.3 42.9s-35 1.5-42.9-14.3l-88.9-177.7-91.3 121.8c-6.2 8.3-17 11.6-26.8 8.4S64 434.3 64 424L64 24c0-9.1 5.1-17.4 13.3-21.5z"]},cJ=G6,uJ={prefix:"fas",iconName:"arrow-turn-right",icon:[512,512,[],"e635","M64 416c0 17.7-14.3 32-32 32S0 433.7 0 416l0-96c0-53 43-96 96-96l306.7 0-73.4-73.4c-12.5-12.5-12.5-32.8 0-45.3s32.8-12.5 45.3 0l128 128c12.5 12.5 12.5 32.8 0 45.3l-128 128c-12.5 12.5-32.8 12.5-45.3 0s-12.5-32.8 0-45.3L402.7 288 96 288c-17.7 0-32 14.3-32 32l0 96z"]},CA={prefix:"fas",iconName:"arrows-rotate",icon:[512,512,[128472,"refresh","sync"],"f021","M65.9 228.5c13.3-93 93.4-164.5 190.1-164.5 53 0 101 21.5 135.8 56.2 .2 .2 .4 .4 .6 .6l7.6 7.2-47.9 0c-17.7 0-32 14.3-32 32s14.3 32 32 32l128 0c17.7 0 32-14.3 32-32l0-128c0-17.7-14.3-32-32-32s-32 14.3-32 32l0 53.4-11.3-10.7C390.5 28.6 326.5 0 256 0 127 0 20.3 95.4 2.6 219.5 .1 237 12.2 253.2 29.7 255.7s33.7-9.7 36.2-27.1zm443.5 64c2.5-17.5-9.7-33.7-27.1-36.2s-33.7 9.7-36.2 27.1c-13.3 93-93.4 164.5-190.1 164.5-53 0-101-21.5-135.8-56.2-.2-.2-.4-.4-.6-.6l-7.6-7.2 47.9 0c17.7 0 32-14.3 32-32s-14.3-32-32-32L32 320c-8.5 0-16.7 3.4-22.7 9.5S-.1 343.7 0 352.3l1 127c.1 17.7 14.6 31.9 32.3 31.7S65.2 496.4 65 478.7l-.4-51.5 10.7 10.1c46.3 46.1 110.2 74.7 180.7 74.7 129 0 235.7-95.4 253.4-219.5z"]},dJ=CA,pJ=CA,hJ={prefix:"fas",iconName:"arrow-left-from-bracket",icon:[512,512,[],"e668","M352 416c-17.7 0-32 14.3-32 32s14.3 32 32 32l64 0c53 0 96-43 96-96l0-256c0-53-43-96-96-96l-64 0c-17.7 0-32 14.3-32 32s14.3 32 32 32l64 0c17.7 0 32 14.3 32 32l0 256c0 17.7-14.3 32-32 32l-64 0zM9.4 233.4c-12.5 12.5-12.5 32.8 0 45.3l128 128c12.5 12.5 32.8 12.5 45.3 0s12.5-32.8 0-45.3L109.3 288 320 288c17.7 0 32-14.3 32-32s-14.3-32-32-32l-210.7 0 73.4-73.4c12.5-12.5 12.5-32.8 0-45.3s-32.8-12.5-45.3 0l-128 128z"]},q6={prefix:"fas",iconName:"arrows-retweet",icon:[576,512,["retweet-alt"],"f361","M118.6 41.4c-12.5-12.5-32.8-12.5-45.3 0l-64 64c-12.5 12.5-12.5 32.8 0 45.3s32.8 12.5 45.3 0L64 141.3 64 384c0 53 43 96 96 96l128 0c17.7 0 32-14.3 32-32s-14.3-32-32-32l-128 0c-17.7 0-32-14.3-32-32l0-242.7 9.4 9.4c12.5 12.5 32.8 12.5 45.3 0s12.5-32.8 0-45.3l-64-64zM457.4 470.6c12.5 12.5 32.8 12.5 45.3 0l64-64c12.5-12.5 12.5-32.8 0-45.3s-32.8-12.5-45.3 0l-9.4 9.4 0-242.7c0-53-43-96-96-96L288 32c-17.7 0-32 14.3-32 32s14.3 32 32 32l128 0c17.7 0 32 14.3 32 32l0 242.7-9.4-9.4c-12.5-12.5-32.8-12.5-45.3 0s-12.5 32.8 0 45.3l64 64z"]},fJ=q6,W6={prefix:"fas",iconName:"location-crosshairs",icon:[576,512,["location"],"f601","M288-16c17.7 0 32 14.3 32 32l0 18.3c98.1 14 175.7 91.6 189.7 189.7l18.3 0c17.7 0 32 14.3 32 32s-14.3 32-32 32l-18.3 0c-14 98.1-91.6 175.7-189.7 189.7l0 18.3c0 17.7-14.3 32-32 32s-32-14.3-32-32l0-18.3C157.9 463.7 80.3 386.1 66.3 288L48 288c-17.7 0-32-14.3-32-32s14.3-32 32-32l18.3 0C80.3 125.9 157.9 48.3 256 34.3L256 16c0-17.7 14.3-32 32-32zM128 256a160 160 0 1 0 320 0 160 160 0 1 0 -320 0zm160-96a96 96 0 1 1 0 192 96 96 0 1 1 0-192z"]},mJ=W6,Z6={prefix:"fas",iconName:"location-dot",icon:[384,512,["map-marker-alt"],"f3c5","M0 188.6C0 84.4 86 0 192 0S384 84.4 384 188.6c0 119.3-120.2 262.3-170.4 316.8-11.8 12.8-31.5 12.8-43.3 0-50.2-54.5-170.4-197.5-170.4-316.8zM192 256a64 64 0 1 0 0-128 64 64 0 1 0 0 128z"]},gJ=Z6,yJ={prefix:"fas",iconName:"arrow-down",icon:[384,512,[8595],"f063","M169.4 502.6c12.5 12.5 32.8 12.5 45.3 0l160-160c12.5-12.5 12.5-32.8 0-45.3s-32.8-12.5-45.3 0L224 402.7 224 32c0-17.7-14.3-32-32-32s-32 14.3-32 32l0 370.7-105.4-105.4c-12.5-12.5-32.8-12.5-45.3 0s-12.5 32.8 0 45.3l160 160z"]},vJ={prefix:"fas",iconName:"arrow-u-turn-left-down",icon:[576,512,[],"e7e9","M180.7 504.8c-12.6 10.3-31.1 9.5-42.8-2.2l-112-112c-12.5-12.5-12.5-32.8 0-45.2s32.8-12.5 45.2 0l57.4 57.4 0-210.7C128.5 89.3 209.2 5.4 310.6 .3l9.9-.2c106 0 192 86 192 192l0 224-.2 3.3c-1.6 16.1-15.3 28.7-31.8 28.7s-30.2-12.6-31.8-28.7l-.2-3.3 0-224c0-70.7-57.3-128-128-128l-6.6 .2C246.3 67.6 192.5 123.5 192.5 192l0 210.7 57.4-57.4 2.4-2.2c12.6-10.2 31.1-9.5 42.8 2.2s12.4 30.2 2.2 42.8l-2.2 2.4-112 112-2.4 2.2z"]},_J={prefix:"fas",iconName:"pause",icon:[384,512,[9208],"f04c","M48 32C21.5 32 0 53.5 0 80L0 432c0 26.5 21.5 48 48 48l64 0c26.5 0 48-21.5 48-48l0-352c0-26.5-21.5-48-48-48L48 32zm224 0c-26.5 0-48 21.5-48 48l0 352c0 26.5 21.5 48 48 48l64 0c26.5 0 48-21.5 48-48l0-352c0-26.5-21.5-48-48-48l-64 0z"]},bJ={prefix:"fas",iconName:"arrow-down-long-to-line",icon:[320,512,[],"e6b7","M9.4 310.6c-12.5-12.5-12.5-32.8 0-45.3s32.8-12.5 45.3 0L128 338.7 128-32c0-17.7 14.3-32 32-32s32 14.3 32 32l0 370.7 73.4-73.4c12.5-12.5 32.8-12.5 45.3 0s12.5 32.8 0 45.3l-128 128c-12.5 12.5-32.8 12.5-45.3 0l-128-128zM32 576c-17.7 0-32-14.3-32-32s14.3-32 32-32l256 0c17.7 0 32 14.3 32 32s-14.3 32-32 32L32 576z"]},xJ={prefix:"fas",iconName:"arrow-right-to-dotted-line",icon:[512,512,[],"e6bc","M480 448a32 32 0 1 0 0-64 32 32 0 1 0 0 64zM374.6 278.6c12.5-12.5 12.5-32.8 0-45.3l-128-128c-12.5-12.5-32.8-12.5-45.3 0s-12.5 32.8 0 45.3L274.7 224 32 224c-17.7 0-32 14.3-32 32s14.3 32 32 32l242.7 0-73.4 73.4c-12.5 12.5-12.5 32.8 0 45.3s32.8 12.5 45.3 0l128-128zM512 309.3a32 32 0 1 0 -64 0 32 32 0 1 0 64 0zm-32-74.7a32 32 0 1 0 0-64 32 32 0 1 0 0 64zM512 96a32 32 0 1 0 -64 0 32 32 0 1 0 64 0z"]},wJ={prefix:"fas",iconName:"arrow-right-to-arc",icon:[512,512,[],"e4b2","M448 256c0 106-86 192-192 192-17.7 0-32 14.3-32 32s14.3 32 32 32c141.4 0 256-114.6 256-256S397.4 0 256 0c-17.7 0-32 14.3-32 32s14.3 32 32 32c106 0 192 86 192 192zM342.6 278.6c12.5-12.5 12.5-32.8 0-45.3l-96-96c-12.5-12.5-32.8-12.5-45.3 0s-12.5 32.8 0 45.3L242.7 224 32 224c-17.7 0-32 14.3-32 32s14.3 32 32 32l210.7 0-41.4 41.4c-12.5 12.5-12.5 32.8 0 45.3s32.8 12.5 45.3 0l96-96z"]},SJ={prefix:"fas",iconName:"grid-2",icon:[448,512,[],"e196","M192 80c0-26.5-21.5-48-48-48L48 32C21.5 32 0 53.5 0 80l0 96c0 26.5 21.5 48 48 48l96 0c26.5 0 48-21.5 48-48l0-96zm0 256c0-26.5-21.5-48-48-48l-96 0c-26.5 0-48 21.5-48 48l0 96c0 26.5 21.5 48 48 48l96 0c26.5 0 48-21.5 48-48l0-96zM256 80l0 96c0 26.5 21.5 48 48 48l96 0c26.5 0 48-21.5 48-48l0-96c0-26.5-21.5-48-48-48l-96 0c-26.5 0-48 21.5-48 48zM448 336c0-26.5-21.5-48-48-48l-96 0c-26.5 0-48 21.5-48 48l0 96c0 26.5 21.5 48 48 48l96 0c26.5 0 48-21.5 48-48l0-96z"]},Y6={prefix:"fas",iconName:"arrow-down-arrow-up",icon:[512,512,["sort-alt"],"f883","M150.6 502.6l96-96c12.5-12.5 12.5-32.8 0-45.3s-32.8-12.5-45.3 0L160 402.7 160 32c0-17.7-14.3-32-32-32S96 14.3 96 32l0 370.7-41.4-41.4c-12.5-12.5-32.8-12.5-45.3 0s-12.5 32.8 0 45.3l96 96c12.5 12.5 32.8 12.5 45.3 0zM406.6 9.4c-12.5-12.5-32.8-12.5-45.3 0l-96 96c-12.5 12.5-12.5 32.8 0 45.3s32.8 12.5 45.3 0L352 109.3 352 480c0 17.7 14.3 32 32 32s32-14.3 32-32l0-370.7 41.4 41.4c12.5 12.5 32.8 12.5 45.3 0s12.5-32.8 0-45.3l-96-96z"]},EJ=Y6,IJ={prefix:"fas",iconName:"arrow-left-arrow-right",icon:[512,512,[],"e6b8","M502.6 406.6l-96 96c-12.5 12.5-32.8 12.5-45.3 0s-12.5-32.8 0-45.3L402.7 416 32 416c-17.7 0-32-14.3-32-32s14.3-32 32-32l370.7 0-41.4-41.4c-12.5-12.5-12.5-32.8 0-45.3s32.8-12.5 45.3 0l96 96c12.5 12.5 12.5 32.8 0 45.3zM9.4 150.6c-12.5-12.5-12.5-32.8 0-45.3l96-96c12.5-12.5 32.8-12.5 45.3 0s12.5 32.8 0 45.3L109.3 96 480 96c17.7 0 32 14.3 32 32s-14.3 32-32 32l-370.7 0 41.4 41.4c12.5 12.5 12.5 32.8 0 45.3s-32.8 12.5-45.3 0l-96-96z"]},Rv={prefix:"fas",iconName:"arrow-rotate-left",icon:[512,512,[8634,"arrow-left-rotate","arrow-rotate-back","arrow-rotate-backward","undo"],"f0e2","M256 64c-56.8 0-107.9 24.7-143.1 64l47.1 0c17.7 0 32 14.3 32 32s-14.3 32-32 32L32 192c-17.7 0-32-14.3-32-32L0 32C0 14.3 14.3 0 32 0S64 14.3 64 32l0 54.7C110.9 33.6 179.5 0 256 0 397.4 0 512 114.6 512 256S397.4 512 256 512c-87 0-163.9-43.4-210.1-109.7-10.1-14.5-6.6-34.4 7.9-44.6s34.4-6.6 44.6 7.9c34.8 49.8 92.4 82.3 157.6 82.3 106 0 192-86 192-192S362 64 256 64z"]},TJ=Rv,CJ=Rv,DJ=Rv,AJ=Rv,MJ={prefix:"fas",iconName:"arrow-down-from-arc",icon:[512,512,[],"e614","M256 64c-106 0-192 86-192 192 0 17.7-14.3 32-32 32S0 273.7 0 256C0 114.6 114.6 0 256 0S512 114.6 512 256c0 17.7-14.3 32-32 32s-32-14.3-32-32c0-106-86-192-192-192zM121.4 390.6c-12.5-12.5-12.5-32.8 0-45.3s32.8-12.5 45.3 0L224 402.7 224 192c0-17.7 14.3-32 32-32s32 14.3 32 32l0 210.7 57.4-57.4c12.5-12.5 32.8-12.5 45.3 0s12.5 32.8 0 45.3l-112 112c-12.5 12.5-32.8 12.5-45.3 0l-112-112z"]},PJ={prefix:"fas",iconName:"arrow-u-turn-down-left",icon:[512,512,[],"e7e7","M7.7 363.8c-10.3 12.6-9.5 31.1 2.2 42.8l112 112c12.5 12.5 32.8 12.5 45.2 0s12.5-32.8 0-45.2l-57.4-57.4 210.8 0c102.7 0 186.6-80.7 191.8-182.1l.2-9.9c0-106-86-192-192-192l-224 0-3.3 .2C77.1 33.8 64.5 47.4 64.5 64S77.1 94.2 93.2 95.8l3.3 .2 224 0c70.7 0 128 57.3 128 128l-.2 6.6C444.9 298.2 389 352 320.5 352l-210.8 0 57.4-57.4 2.2-2.4c10.2-12.6 9.5-31.1-2.2-42.8s-30.2-12.4-42.8-2.2l-2.4 2.2-112 112-2.2 2.4z"]},RJ={prefix:"fas",iconName:"rotate-reverse",icon:[512,512,[],"e631","M168 192L24 192c-13.3 0-24-10.7-24-24L0 24C0 14.3 5.8 5.5 14.8 1.8S34.1 .2 41 7L92.7 58.8C137 22.1 194 0 256 0 385 0 491.7 95.4 509.4 219.5 511.9 237 499.8 253.2 482.3 255.7s-33.7-9.7-36.2-27.1C432.7 135.5 352.7 64 256 64 211.6 64 170.8 79 138.3 104.3L185 151c6.9 6.9 8.9 17.2 5.2 26.2S177.7 192 168 192zM2.6 292.5C.1 275 12.2 258.8 29.7 256.3s33.7 9.7 36.2 27.1c13.3 93 93.4 164.5 190.1 164.5 44.4 0 85.2-15 117.7-40.3L327 361c-6.9-6.9-8.9-17.2-5.2-26.2S334.3 320 344 320l144 0c13.3 0 24 10.7 24 24l0 144c0 9.7-5.8 18.5-14.8 22.2s-19.3 1.7-26.2-5.2l-51.8-51.8C375 489.9 318 512 256 512 127 512 20.3 416.6 2.6 292.5z"]},kJ={prefix:"fas",iconName:"caret-down",icon:[320,512,[],"f0d7","M140.3 376.8c12.6 10.2 31.1 9.5 42.8-2.2l128-128c9.2-9.2 11.9-22.9 6.9-34.9S301.4 192 288.5 192l-256 0c-12.9 0-24.6 7.8-29.6 19.8S.7 237.5 9.9 246.6l128 128 2.4 2.2z"]},t2={prefix:"fas",iconName:"arrow-rotate-right",icon:[512,512,[8635,"arrow-right-rotate","arrow-rotate-forward","redo"],"f01e","M436.7 74.7L448 85.4 448 32c0-17.7 14.3-32 32-32s32 14.3 32 32l0 128c0 17.7-14.3 32-32 32l-128 0c-17.7 0-32-14.3-32-32s14.3-32 32-32l47.9 0-7.6-7.2c-.2-.2-.4-.4-.6-.6-75-75-196.5-75-271.5 0s-75 196.5 0 271.5 196.5 75 271.5 0c8.2-8.2 15.5-16.9 21.9-26.1 10.1-14.5 30.1-18 44.6-7.9s18 30.1 7.9 44.6c-8.5 12.2-18.2 23.8-29.1 34.7-100 100-262.1 100-362 0S-25 175 75 75c99.9-99.9 261.7-100 361.7-.3z"]},OJ=t2,NJ=t2,LJ=t2,FJ={prefix:"fas",iconName:"badge-dollar",icon:[512,512,[],"f645","M256 0C292.8 0 324.8 20.7 340.9 51.1 373.8 41 411 49 437 75s34 63.3 23.9 96.1C491.3 187.2 512 219.2 512 256s-20.7 68.8-51.1 84.9C471 373.8 463 411 437 437s-63.3 34-96.1 23.9C324.8 491.3 292.8 512 256 512s-68.8-20.7-84.9-51.1C138.2 471 101 463 75 437s-34-63.3-23.9-96.1C20.7 324.8 0 292.8 0 256s20.7-68.8 51.1-84.9C41 138.2 49 101 75 75s63.3-34 96.1-23.9C187.2 20.7 219.2 0 256 0zm4 144c-11 0-20 9-20 20l0 4c-28.8 .3-52 23.7-52 52.5 0 25.7 18.5 47.6 43.9 51.8l41.7 7c6 1 10.4 6.2 10.4 12.3 0 6.9-5.6 12.5-12.5 12.5L216 304c-11 0-20 9-20 20s9 20 20 20l24 0 0 4c0 11 9 20 20 20s20-9 20-20l0-4.7c25-4.1 44-25.7 44-51.8 0-25.7-18.5-47.6-43.9-51.8l-41.7-7c-6-1-10.4-6.2-10.4-12.3 0-6.9 5.6-12.5 12.5-12.5l47.5 0c11 0 20-9 20-20s-9-20-20-20l-8 0 0-4c0-11-9-20-20-20z"]},X6={prefix:"fas",iconName:"arrows-left-right",icon:[576,512,["arrows-h"],"f07e","M470.6 374.6l96-96c12.5-12.5 12.5-32.8 0-45.3l-96-96c-12.5-12.5-32.8-12.5-45.3 0s-12.5 32.8 0 45.3l41.4 41.4-357.5 0 41.4-41.4c12.5-12.5 12.5-32.8 0-45.3s-32.8-12.5-45.3 0l-96 96c-6 6-9.4 14.1-9.4 22.6s3.4 16.6 9.4 22.6l96 96c12.5 12.5 32.8 12.5 45.3 0s12.5-32.8 0-45.3l-41.4-41.4 357.5 0-41.4 41.4c-12.5 12.5-12.5 32.8 0 45.3s32.8 12.5 45.3 0z"]},zJ=X6,BJ={prefix:"fas",iconName:"location-arrow-up",icon:[448,512,[],"e63a","M253.1 18.6C247.8 7.3 236.5 0 224 0s-23.8 7.3-29.1 18.6l-192 416c-5.6 12.2-3.1 26.5 6.4 36s23.8 12.1 36 6.5L224 395.2 402.7 477.1c12.2 5.6 26.5 3 36-6.5s12-23.8 6.4-36l-192-416z"]},K6={prefix:"fas",iconName:"plus",icon:[448,512,[10133,61543,"add"],"2b","M256 64c0-17.7-14.3-32-32-32s-32 14.3-32 32l0 160-160 0c-17.7 0-32 14.3-32 32s14.3 32 32 32l160 0 0 160c0 17.7 14.3 32 32 32s32-14.3 32-32l0-160 160 0c17.7 0 32-14.3 32-32s-14.3-32-32-32l-160 0 0-160z"]},UJ=K6,VJ={prefix:"fas",iconName:"arrow-left-from-arc",icon:[512,512,[],"e615","M448 256c0-106-86-192-192-192-17.7 0-32-14.3-32-32S238.3 0 256 0C397.4 0 512 114.6 512 256S397.4 512 256 512c-17.7 0-32-14.3-32-32s14.3-32 32-32c106 0 192-86 192-192zM121.4 121.4c12.5-12.5 32.8-12.5 45.3 0s12.5 32.8 0 45.3L109.3 224 320 224c17.7 0 32 14.3 32 32s-14.3 32-32 32l-210.7 0 57.4 57.4c12.5 12.5 12.5 32.8 0 45.3s-32.8 12.5-45.3 0l-112-112c-12.5-12.5-12.5-32.8 0-45.3l112-112z"]},Q6={prefix:"fas",iconName:"arrows-repeat",icon:[512,512,["repeat-alt"],"f364","M470.6 118.6c6-6 9.4-14.1 9.4-22.6s-3.4-16.6-9.4-22.6l-80-80c-12.5-12.5-32.8-12.5-45.3 0s-12.5 32.8 0 45.3L370.7 64 192 64C86 64 0 150 0 256 0 273.7 14.3 288 32 288s32-14.3 32-32c0-70.7 57.3-128 128-128l178.7 0-25.4 25.4c-12.5 12.5-12.5 32.8 0 45.3s32.8 12.5 45.3 0l80-80zM41.4 393.4c-6 6-9.4 14.1-9.4 22.6s3.4 16.6 9.4 22.6l80 80c12.5 12.5 32.8 12.5 45.3 0s12.5-32.8 0-45.3L141.3 448 320 448c106 0 192-86 192-192 0-17.7-14.3-32-32-32s-32 14.3-32 32c0 70.7-57.3 128-128 128l-178.7 0 25.4-25.4c12.5-12.5 12.5-32.8 0-45.3s-32.8-12.5-45.3 0l-80 80z"]},jJ=Q6,$J={prefix:"fas",iconName:"arrow-left-to-dotted-line",icon:[512,512,[],"e6ba","M32 64a32 32 0 1 0 0 64 32 32 0 1 0 0-64zM137.4 233.4c-12.5 12.5-12.5 32.8 0 45.3l128 128c12.5 12.5 32.8 12.5 45.3 0s12.5-32.8 0-45.3L237.3 288 480 288c17.7 0 32-14.3 32-32s-14.3-32-32-32l-242.7 0 73.4-73.4c12.5-12.5 12.5-32.8 0-45.3s-32.8-12.5-45.3 0l-128 128zM0 202.7a32 32 0 1 0 64 0 32 32 0 1 0 -64 0zm32 74.7a32 32 0 1 0 0 64 32 32 0 1 0 0-64zM0 416a32 32 0 1 0 64 0 32 32 0 1 0 -64 0z"]},HJ={prefix:"fas",iconName:"arrow-left",icon:[512,512,[8592],"f060","M9.4 233.4c-12.5 12.5-12.5 32.8 0 45.3l160 160c12.5 12.5 32.8 12.5 45.3 0s12.5-32.8 0-45.3L109.3 288 480 288c17.7 0 32-14.3 32-32s-14.3-32-32-32l-370.7 0 105.4-105.4c12.5-12.5 12.5-32.8 0-45.3s-32.8-12.5-45.3 0l-160 160z"]},GJ={prefix:"fas",iconName:"arrow-right-from-dotted-line",icon:[512,512,[],"e6bb","M502.6 278.6c12.5-12.5 12.5-32.8 0-45.3l-128-128c-12.5-12.5-32.8-12.5-45.3 0s-12.5 32.8 0 45.3L402.7 224 160 224c-17.7 0-32 14.3-32 32s14.3 32 32 32l242.7 0-73.4 73.4c-12.5 12.5-12.5 32.8 0 45.3s32.8 12.5 45.3 0l128-128zM32 448a32 32 0 1 0 0-64 32 32 0 1 0 0 64zM64 309.3a32 32 0 1 0 -64 0 32 32 0 1 0 64 0zM32 234.7a32 32 0 1 0 0-64 32 32 0 1 0 0 64zM64 96A32 32 0 1 0 0 96 32 32 0 1 0 64 96z"]},qJ={prefix:"fas",iconName:"arrow-up-long-to-line",icon:[320,512,[],"e6bd","M9.4 201.4c-12.5 12.5-12.5 32.8 0 45.3s32.8 12.5 45.3 0L128 173.3 128 544c0 17.7 14.3 32 32 32s32-14.3 32-32l0-370.7 73.4 73.4c12.5 12.5 32.8 12.5 45.3 0s12.5-32.8 0-45.3l-128-128c-12.5-12.5-32.8-12.5-45.3 0l-128 128zM32-64C14.3-64 0-49.7 0-32S14.3 0 32 0L288 0c17.7 0 32-14.3 32-32s-14.3-32-32-32L32-64z"]},WJ={prefix:"fas",iconName:"caret-up",icon:[320,512,[],"f0d8","M140.3 135.2c12.6-10.3 31.1-9.5 42.8 2.2l128 128c9.2 9.2 11.9 22.9 6.9 34.9S301.4 320 288.5 320l-256 0c-12.9 0-24.6-7.8-29.6-19.8S.7 274.5 9.9 265.4l128-128 2.4-2.2z"]},J6={prefix:"fas",iconName:"arrow-up-from-line",icon:[384,512,[8613,"arrow-from-bottom"],"f342","M214.6 9.4c-12.5-12.5-32.8-12.5-45.3 0l-128 128c-12.5 12.5-12.5 32.8 0 45.3s32.8 12.5 45.3 0L160 109.3 160 352c0 17.7 14.3 32 32 32s32-14.3 32-32l0-242.7 73.4 73.4c12.5 12.5 32.8 12.5 45.3 0s12.5-32.8 0-45.3l-128-128zM32 448c-17.7 0-32 14.3-32 32s14.3 32 32 32l320 0c17.7 0 32-14.3 32-32s-14.3-32-32-32L32 448z"]},ZJ=J6,e8={prefix:"fas",iconName:"arrow-right-arrow-left",icon:[512,512,[8644,"exchange"],"f0ec","M502.6 150.6l-96 96c-12.5 12.5-32.8 12.5-45.3 0s-12.5-32.8 0-45.3L402.7 160 32 160c-17.7 0-32-14.3-32-32S14.3 96 32 96l370.7 0-41.4-41.4c-12.5-12.5-12.5-32.8 0-45.3s32.8-12.5 45.3 0l96 96c12.5 12.5 12.5 32.8 0 45.3zm-397.3 352l-96-96c-12.5-12.5-12.5-32.8 0-45.3l96-96c12.5-12.5 32.8-12.5 45.3 0s12.5 32.8 0 45.3L109.3 352 480 352c17.7 0 32 14.3 32 32s-14.3 32-32 32l-370.7 0 41.4 41.4c12.5 12.5 12.5 32.8 0 45.3s-32.8 12.5-45.3 0z"]},YJ=e8,t8={prefix:"fas",iconName:"arrow-up-to-line",icon:[384,512,["arrow-to-top"],"f341","M32 0C14.3 0 0 14.3 0 32S14.3 64 32 64l320 0c17.7 0 32-14.3 32-32S369.7 0 352 0L32 0zM214.6 137.4c-12.5-12.5-32.8-12.5-45.3 0l-128 128c-12.5 12.5-12.5 32.8 0 45.3s32.8 12.5 45.3 0L160 237.3 160 480c0 17.7 14.3 32 32 32s32-14.3 32-32l0-242.7 73.4 73.4c12.5 12.5 32.8 12.5 45.3 0s12.5-32.8 0-45.3l-128-128z"]},XJ=t8,KJ={prefix:"fas",iconName:"arrow-up-to-arc",icon:[512,512,[],"e617","M256 64c106 0 192 86 192 192 0 17.7 14.3 32 32 32s32-14.3 32-32C512 114.6 397.4 0 256 0S0 114.6 0 256c0 17.7 14.3 32 32 32s32-14.3 32-32C64 150 150 64 256 64zm22.6 105.4c-12.5-12.5-32.8-12.5-45.3 0l-96 96c-12.5 12.5-12.5 32.8 0 45.3s32.8 12.5 45.3 0L224 269.3 224 480c0 17.7 14.3 32 32 32s32-14.3 32-32l0-210.7 41.4 41.4c12.5 12.5 32.8 12.5 45.3 0s12.5-32.8 0-45.3l-96-96z"]},n8={prefix:"fas",iconName:"arrow-right-from-bracket",icon:[512,512,["sign-out"],"f08b","M160 96c17.7 0 32-14.3 32-32s-14.3-32-32-32L96 32C43 32 0 75 0 128L0 384c0 53 43 96 96 96l64 0c17.7 0 32-14.3 32-32s-14.3-32-32-32l-64 0c-17.7 0-32-14.3-32-32l0-256c0-17.7 14.3-32 32-32l64 0zM502.6 278.6c12.5-12.5 12.5-32.8 0-45.3l-128-128c-12.5-12.5-32.8-12.5-45.3 0s-12.5 32.8 0 45.3L402.7 224 192 224c-17.7 0-32 14.3-32 32s14.3 32 32 32l210.7 0-73.4 73.4c-12.5 12.5-12.5 32.8 0 45.3s32.8 12.5 45.3 0l128-128z"]},QJ=n8,r8={prefix:"fas",iconName:"arrow-down-long",icon:[320,512,["long-arrow-down"],"f175","M137.4 534.6c12.5 12.5 32.8 12.5 45.3 0l128-128c12.5-12.5 12.5-32.8 0-45.3s-32.8-12.5-45.3 0L192 434.7 192 0c0-17.7-14.3-32-32-32S128-17.7 128 0l0 434.7-73.4-73.4c-12.5-12.5-32.8-12.5-45.3 0s-12.5 32.8 0 45.3l128 128z"]},JJ=r8,n2={prefix:"fas",iconName:"rotate-left",icon:[512,512,["rotate-back","rotate-backward","undo-alt"],"f2ea","M24 192l144 0c9.7 0 18.5-5.8 22.2-14.8s1.7-19.3-5.2-26.2l-46.7-46.7c75.3-58.6 184.3-53.3 253.5 15.9 75 75 75 196.5 0 271.5s-196.5 75-271.5 0c-10.2-10.2-19-21.3-26.4-33-9.5-14.9-29.3-19.3-44.2-9.8s-19.3 29.3-9.8 44.2C49.7 408.7 61.4 423.5 75 437 175 537 337 537 437 437S537 175 437 75C342.8-19.3 193.3-24.7 92.7 58.8L41 7C34.1 .2 23.8-1.9 14.8 1.8S0 14.3 0 24L0 168c0 13.3 10.7 24 24 24z"]},eee=n2,tee=n2,nee=n2,i8={prefix:"fas",iconName:"arrow-right-from-line",icon:[512,512,[8614,"arrow-from-left"],"f343","M64 96c0-17.7-14.3-32-32-32S0 78.3 0 96L0 416c0 17.7 14.3 32 32 32s32-14.3 32-32L64 96zM502.6 278.6c12.5-12.5 12.5-32.8 0-45.3l-128-128c-12.5-12.5-32.8-12.5-45.3 0s-12.5 32.8 0 45.3L402.7 224 160 224c-17.7 0-32 14.3-32 32s14.3 32 32 32l242.7 0-73.4 73.4c-12.5 12.5-12.5 32.8 0 45.3s32.8 12.5 45.3 0l128-128z"]},ree=i8,iee={prefix:"fas",iconName:"chevron-left",icon:[320,512,[9001],"f053","M9.4 233.4c-12.5 12.5-12.5 32.8 0 45.3l192 192c12.5 12.5 32.8 12.5 45.3 0s12.5-32.8 0-45.3L77.3 256 246.6 86.6c12.5-12.5 12.5-32.8 0-45.3s-32.8-12.5-45.3 0l-192 192z"]},oee={prefix:"fas",iconName:"arrow-up-right",icon:[384,512,[],"e09f","M384 96c0-17.7-14.3-32-32-32L128 64c-17.7 0-32 14.3-32 32s14.3 32 32 32L274.7 128 9.4 393.4c-12.5 12.5-12.5 32.8 0 45.3s32.8 12.5 45.3 0L320 173.3 320 320c0 17.7 14.3 32 32 32s32-14.3 32-32l0-224z"]},see={prefix:"fas",iconName:"arrow-u-turn-up-right",icon:[512,512,[],"e7ee","M505.3 148.2c10.3-12.6 9.5-31.1-2.2-42.8l-112-112c-12.5-12.5-32.8-12.5-45.2 0s-12.5 32.8 0 45.2L403.2 96 192.5 96C89.8 96 5.9 176.7 .8 278.1L.5 288c0 106 86 192 192 192l224 0 3.3-.2c16.1-1.6 28.7-15.3 28.7-31.8s-12.6-30.2-28.7-31.8l-3.3-.2-224 0c-70.7 0-128-57.3-128-128l.2-6.6C68.1 213.8 124 160 192.5 160l210.7 0-57.4 57.4-2.2 2.4c-10.2 12.6-9.5 31.1 2.2 42.8s30.2 12.4 42.8 2.2l2.4-2.2 112-112 2.2-2.4z"]},DA={prefix:"fas",iconName:"rotate-right",icon:[512,512,["redo-alt","rotate-forward"],"f2f9","M488 192l-144 0c-9.7 0-18.5-5.8-22.2-14.8s-1.7-19.3 5.2-26.2l46.7-46.7c-75.3-58.6-184.3-53.3-253.5 15.9-75 75-75 196.5 0 271.5s196.5 75 271.5 0c8.2-8.2 15.5-16.9 21.9-26.1 10.1-14.5 30.1-18 44.6-7.9s18 30.1 7.9 44.6c-8.5 12.2-18.2 23.8-29.1 34.7-100 100-262.1 100-362 0S-25 175 75 75c94.3-94.3 243.7-99.6 344.3-16.2L471 7c6.9-6.9 17.2-8.9 26.2-5.2S512 14.3 512 24l0 144c0 13.3-10.7 24-24 24z"]},aee=DA,lee=DA,cee={prefix:"fas",iconName:"arrows-cross",icon:[448,512,[],"e0a2","M54.6 41.4c-12.5-12.5-32.8-12.5-45.3 0s-12.5 32.8 0 45.3L144.8 222.1 190.1 176.8 54.6 41.4zM257.9 335.2l80.8 80.8-50.7 0c-17.7 0-32 14.3-32 32s14.3 32 32 32l128 0c17.7 0 32-14.3 32-32l0-128c0-17.7-14.3-32-32-32s-32 14.3-32 32l0 50.7-80.8-80.8-45.3 45.3zM288 32c-17.7 0-32 14.3-32 32s14.3 32 32 32L338.7 96 9.4 425.4c-12.5 12.5-12.5 32.8 0 45.3s32.8 12.5 45.3 0L384 141.3 384 192c0 17.7 14.3 32 32 32s32-14.3 32-32l0-128c0-17.7-14.3-32-32-32L288 32z"]},kv={prefix:"fas",iconName:"xmark",icon:[384,512,[215,10005,10006,10060,128473,"close","multiply","remove","times"],"f00d","M55.1 73.4c-12.5-12.5-32.8-12.5-45.3 0s-12.5 32.8 0 45.3L147.2 256 9.9 393.4c-12.5 12.5-12.5 32.8 0 45.3s32.8 12.5 45.3 0L192.5 301.3 329.9 438.6c12.5 12.5 32.8 12.5 45.3 0s12.5-32.8 0-45.3L237.8 256 375.1 118.6c12.5-12.5 12.5-32.8 0-45.3s-32.8-12.5-45.3 0L192.5 210.7 55.1 73.4z"]},uee=kv,dee=kv,pee=kv,hee=kv,fee={prefix:"fas",iconName:"arrows-down-to-line",icon:[512,512,[],"e4b8","M214.6 310.6l-64 64c-12.5 12.5-32.8 12.5-45.3 0l-64-64c-12.5-12.5-12.5-32.8 0-45.3s32.8-12.5 45.3 0L96 274.7 96 32c0-17.7 14.3-32 32-32s32 14.3 32 32l0 242.7 9.4-9.4c12.5-12.5 32.8-12.5 45.3 0s12.5 32.8 0 45.3zm256 0l-64 64c-12.5 12.5-32.8 12.5-45.3 0l-64-64c-12.5-12.5-12.5-32.8 0-45.3s32.8-12.5 45.3 0l9.4 9.4 0-242.7c0-17.7 14.3-32 32-32s32 14.3 32 32l0 242.7 9.4-9.4c12.5-12.5 32.8-12.5 45.3 0s12.5 32.8 0 45.3zM32 512c-17.7 0-32-14.3-32-32s14.3-32 32-32l448 0c17.7 0 32 14.3 32 32s-14.3 32-32 32L32 512z"]},mee={prefix:"fas",iconName:"arrow-left-to-arc",icon:[512,512,[],"e616","M64 256c0-106 86-192 192-192 17.7 0 32-14.3 32-32S273.7 0 256 0C114.6 0 0 114.6 0 256S114.6 512 256 512c17.7 0 32-14.3 32-32s-14.3-32-32-32C150 448 64 362 64 256zm105.4-22.6c-12.5 12.5-12.5 32.8 0 45.3l96 96c12.5 12.5 32.8 12.5 45.3 0s12.5-32.8 0-45.3L269.3 288 480 288c17.7 0 32-14.3 32-32s-14.3-32-32-32l-210.7 0 41.4-41.4c12.5-12.5 12.5-32.8 0-45.3s-32.8-12.5-45.3 0l-96 96z"]},gee={prefix:"fas",iconName:"arrow-right",icon:[512,512,[8594],"f061","M502.6 278.6c12.5-12.5 12.5-32.8 0-45.3l-160-160c-12.5-12.5-32.8-12.5-45.3 0s-12.5 32.8 0 45.3L402.7 224 32 224c-17.7 0-32 14.3-32 32s14.3 32 32 32l370.7 0-105.4 105.4c-12.5 12.5-12.5 32.8 0 45.3s32.8 12.5 45.3 0l160-160z"]},yee={prefix:"fas",iconName:"arrows-turn-right",icon:[448,512,[],"e4c0","M313.4-6.6c12.5-12.5 32.8-12.5 45.3 0l80 80c12.5 12.5 12.5 32.8 0 45.3l-80 80c-12.5 12.5-32.8 12.5-45.3 0s-12.5-32.8 0-45.3L338.7 128 128 128c-35.3 0-64 28.7-64 64l0 32c0 17.7-14.3 32-32 32S0 241.7 0 224l0-32C0 121.3 57.3 64 128 64l210.7 0-25.4-25.4c-12.5-12.5-12.5-32.8 0-45.3zm-96 256c12.5-12.5 32.8-12.5 45.3 0l80 80c12.5 12.5 12.5 32.8 0 45.3l-80 80c-12.5 12.5-32.8 12.5-45.3 0s-12.5-32.8 0-45.3L242.7 384 96 384c-17.7 0-32 14.3-32 32l0 32c0 17.7-14.3 32-32 32S0 465.7 0 448l0-32c0-53 43-96 96-96l146.7 0-25.4-25.4c-12.5-12.5-12.5-32.8 0-45.3z"]},o8={prefix:"fas",iconName:"arrow-turn-down",icon:[384,512,["level-down"],"f149","M32 64C14.3 64 0 49.7 0 32S14.3 0 32 0l96 0c53 0 96 43 96 96l0 306.7 73.4-73.4c12.5-12.5 32.8-12.5 45.3 0s12.5 32.8 0 45.3l-128 128c-12.5 12.5-32.8 12.5-45.3 0l-128-128c-12.5-12.5-12.5-32.8 0-45.3s32.8-12.5 45.3 0L160 402.7 160 96c0-17.7-14.3-32-32-32L32 64z"]},vee=o8,_ee={prefix:"fas",iconName:"play-pause",icon:[512,512,[],"e22f","M52.5 71.4c-9.5-7.9-22.8-9.7-34.1-4.4S0 83.6 0 96L0 416c0 12.4 7.2 23.7 18.4 29s24.5 3.6 34.1-4.4l192-160c7.3-6.1 11.5-15.1 11.5-24.6s-4.2-18.5-11.5-24.6l-192-160zM384 96c0-17.7-14.3-32-32-32s-32 14.3-32 32l0 320c0 17.7 14.3 32 32 32s32-14.3 32-32l0-320zm128 0c0-17.7-14.3-32-32-32s-32 14.3-32 32l0 320c0 17.7 14.3 32 32 32s32-14.3 32-32l0-320z"]},bee={prefix:"fas",iconName:"arrow-turn-left-down",icon:[384,512,[],"e633","M352 64c17.7 0 32-14.3 32-32S369.7 0 352 0L256 0c-53 0-96 43-96 96l0 306.7-73.4-73.4c-12.5-12.5-32.8-12.5-45.3 0s-12.5 32.8 0 45.3l128 128c12.5 12.5 32.8 12.5 45.3 0l128-128c12.5-12.5 12.5-32.8 0-45.3s-32.8-12.5-45.3 0L224 402.7 224 96c0-17.7 14.3-32 32-32l96 0z"]},xee={prefix:"fas",iconName:"arrow-down-from-dotted-line",icon:[384,512,[],"e090","M169.4 502.6c12.5 12.5 32.8 12.5 45.3 0l128-128c12.5-12.5 12.5-32.8 0-45.3s-32.8-12.5-45.3 0L224 402.7 224 160c0-17.7-14.3-32-32-32s-32 14.3-32 32l0 242.7-73.4-73.4c-12.5-12.5-32.8-12.5-45.3 0s-12.5 32.8 0 45.3l128 128zM0 32A32 32 0 1 0 64 32 32 32 0 1 0 0 32zM138.7 64a32 32 0 1 0 0-64 32 32 0 1 0 0 64zm74.7-32a32 32 0 1 0 64 0 32 32 0 1 0 -64 0zM352 64a32 32 0 1 0 0-64 32 32 0 1 0 0 64z"]},wee={prefix:"fas",iconName:"arrow-up-from-arc",icon:[512,512,[],"e4b4","M256 448c-106 0-192-86-192-192 0-17.7-14.3-32-32-32S0 238.3 0 256C0 397.4 114.6 512 256 512S512 397.4 512 256c0-17.7-14.3-32-32-32s-32 14.3-32 32c0 106-86 192-192 192zM121.4 121.4c-12.5 12.5-12.5 32.8 0 45.3s32.8 12.5 45.3 0L224 109.3 224 320c0 17.7 14.3 32 32 32s32-14.3 32-32l0-210.7 57.4 57.4c12.5 12.5 32.8 12.5 45.3 0s12.5-32.8 0-45.3l-112-112c-12.5-12.5-32.8-12.5-45.3 0l-112 112z"]},See={prefix:"fas",iconName:"arrow-u-turn-down-right",icon:[512,512,[],"e7e8","M505.3 363.8c10.3 12.6 9.5 31.1-2.2 42.8l-112 112c-12.5 12.5-32.8 12.5-45.2 0s-12.5-32.8 0-45.2l57.4-57.4-210.7 0C89.8 416 5.9 335.3 .8 233.9L.5 224c0-106 86-192 192-192l224 0 3.3 .2c16.1 1.6 28.7 15.3 28.7 31.8s-12.6 30.2-28.7 31.8l-3.3 .2-224 0c-70.7 0-128 57.3-128 128l.2 6.6C68.1 298.2 124 352 192.5 352l210.7 0-57.4-57.4-2.2-2.4c-10.2-12.6-9.5-31.1 2.2-42.8s30.2-12.4 42.8-2.2l2.4 2.2 112 112 2.2 2.4z"]},s8={prefix:"fas",iconName:"arrow-left-from-line",icon:[512,512,[8612,"arrow-from-right"],"f344","M448 416c0 17.7 14.3 32 32 32s32-14.3 32-32l0-320c0-17.7-14.3-32-32-32s-32 14.3-32 32l0 320zM9.4 233.4c-12.5 12.5-12.5 32.8 0 45.3l128 128c12.5 12.5 32.8 12.5 45.3 0s12.5-32.8 0-45.3L109.3 288 352 288c17.7 0 32-14.3 32-32s-14.3-32-32-32l-242.7 0 73.4-73.4c12.5-12.5 12.5-32.8 0-45.3s-32.8-12.5-45.3 0l-128 128z"]},Eee=s8,Iee={prefix:"fas",iconName:"play",icon:[448,512,[9654],"f04b","M91.2 36.9c-12.4-6.8-27.4-6.5-39.6 .7S32 57.9 32 72l0 368c0 14.1 7.5 27.2 19.6 34.4s27.2 7.5 39.6 .7l336-184c12.8-7 20.8-20.5 20.8-35.1s-8-28.1-20.8-35.1l-336-184z"]},Tee={prefix:"fas",iconName:"arrow-up",icon:[384,512,[8593],"f062","M214.6 9.4c-12.5-12.5-32.8-12.5-45.3 0l-160 160c-12.5 12.5-12.5 32.8 0 45.3s32.8 12.5 45.3 0L160 109.3 160 480c0 17.7 14.3 32 32 32s32-14.3 32-32l0-370.7 105.4 105.4c12.5 12.5 32.8 12.5 45.3 0s12.5-32.8 0-45.3l-160-160z"]},Cee={prefix:"fas",iconName:"arrow-right-from-arc",icon:[512,512,[],"e4b1","M64 256c0-106 86-192 192-192 17.7 0 32-14.3 32-32S273.7 0 256 0C114.6 0 0 114.6 0 256S114.6 512 256 512c17.7 0 32-14.3 32-32s-14.3-32-32-32C150 448 64 362 64 256zM390.6 121.4c-12.5-12.5-32.8-12.5-45.3 0s-12.5 32.8 0 45.3L402.7 224 192 224c-17.7 0-32 14.3-32 32s14.3 32 32 32l210.7 0-57.4 57.4c-12.5 12.5-12.5 32.8 0 45.3s32.8 12.5 45.3 0l112-112c12.5-12.5 12.5-32.8 0-45.3l-112-112z"]},Dee={prefix:"fas",iconName:"arrow-u-turn-left-up",icon:[576,512,[],"e7ea","M180.7 7.2c-12.6-10.3-31.1-9.5-42.8 2.2l-112 112c-12.5 12.5-12.5 32.8 0 45.2s32.8 12.5 45.2 0l57.4-57.4 0 210.8c0 102.7 80.7 186.6 182.1 191.8l9.9 .2c106 0 192-86 192-192l0-224-.2-3.3C510.7 76.6 497.1 64 480.5 64s-30.2 12.6-31.8 28.7l-.2 3.3 0 224c0 70.7-57.3 128-128 128l-6.6-.2c-67.6-3.4-121.4-59.4-121.4-127.8l0-210.8 57.4 57.4 2.4 2.2c12.6 10.2 31.1 9.5 42.8-2.2s12.4-30.2 2.2-42.8l-2.2-2.4-112-112-2.4-2.2z"]},Aee={prefix:"fas",iconName:"arrow-u-turn-right-down",icon:[576,512,[],"e7eb","M396.3 504.8c12.6 10.3 31.1 9.5 42.8-2.2l112-112c12.5-12.5 12.5-32.8 0-45.2s-32.8-12.5-45.2 0l-57.4 57.4 0-210.7C448.5 89.3 367.8 5.4 266.4 .3L256.5 0c-106 0-192 86-192 192l0 224 .2 3.3C66.3 435.4 79.9 448 96.5 448s30.2-12.6 31.8-28.7l.2-3.3 0-224c0-70.7 57.3-128 128-128l6.6 .2c67.6 3.4 121.4 59.4 121.4 127.8l0 210.7-57.4-57.4-2.4-2.2c-12.6-10.2-31.1-9.5-42.8 2.2s-12.4 30.2-2.2 42.8l2.2 2.4 112 112 2.4 2.2z"]},a8={prefix:"fas",iconName:"arrow-turn-up",icon:[384,512,["level-up"],"f148","M32 448c-17.7 0-32 14.3-32 32s14.3 32 32 32l96 0c53 0 96-43 96-96l0-306.7 73.4 73.4c12.5 12.5 32.8 12.5 45.3 0s12.5-32.8 0-45.3l-128-128c-12.5-12.5-32.8-12.5-45.3 0l-128 128c-12.5 12.5-12.5 32.8 0 45.3s32.8 12.5 45.3 0L160 109.3 160 416c0 17.7-14.3 32-32 32l-96 0z"]},Mee=a8,Pee={prefix:"fas",iconName:"swap-arrows",icon:[576,512,[],"e60a","M9.4 150.6c-12.5-12.5-12.5-32.8 0-45.3l64-64c12.5-12.5 32.8-12.5 45.3 0l64 64c12.5 12.5 12.5 32.8 0 45.3s-32.8 12.5-45.3 0l-9.4-9.4 0 210.7c0 35.3 28.7 64 64 64s64-28.7 64-64l0-192c0-70.7 57.3-128 128-128S512 89.3 512 160l0 210.7 9.4-9.4c12.5-12.5 32.8-12.5 45.3 0s12.5 32.8 0 45.3l-64 64c-6 6-14.1 9.4-22.6 9.4s-16.6-3.4-22.6-9.4l-64-64c-12.5-12.5-12.5-32.8 0-45.3s32.8-12.5 45.3 0l9.4 9.4 0-210.7c0-35.3-28.7-64-64-64s-64 28.7-64 64l0 192c0 70.7-57.3 128-128 128S64 422.7 64 352l0-210.7-9.4 9.4c-12.5 12.5-32.8 12.5-45.3 0z"]},l8={prefix:"fas",iconName:"arrow-left-long",icon:[576,512,["long-arrow-left"],"f177","M9.4 233.4c-12.5 12.5-12.5 32.8 0 45.3l128 128c12.5 12.5 32.8 12.5 45.3 0s12.5-32.8 0-45.3L109.3 288 544 288c17.7 0 32-14.3 32-32s-14.3-32-32-32l-434.7 0 73.4-73.4c12.5-12.5 12.5-32.8 0-45.3s-32.8-12.5-45.3 0l-128 128z"]},Ree=l8,kee={prefix:"fas",iconName:"arrow-u-turn-right-up",icon:[576,512,[],"e7ec","M396.3 7.2c12.6-10.3 31.1-9.5 42.8 2.2l112 112c12.5 12.5 12.5 32.8 0 45.2s-32.8 12.5-45.2 0l-57.4-57.4 0 210.8c0 102.7-80.7 186.6-182.1 191.8l-9.9 .2c-106 0-192-86-192-192l0-224 .2-3.3C66.3 76.6 79.9 64 96.5 64s30.2 12.6 31.8 28.7l.2 3.3 0 224c0 70.7 57.3 128 128 128l6.6-.2c67.6-3.4 121.4-59.4 121.4-127.8l0-210.8-57.4 57.4-2.4 2.2c-12.6 10.2-31.1 9.5-42.8-2.2s-12.4-30.2-2.2-42.8l2.2-2.4 112-112 2.4-2.2z"]},Oee={prefix:"fas",iconName:"circle",icon:[512,512,[9679,9898,9899,11044,61708,61915,128308,128309,128992,128993,128994,128995,128996],"f111","M0 256a256 256 0 1 1 512 0 256 256 0 1 1 -512 0z"]},Nee={prefix:"fas",iconName:"arrow-up-from-bracket",icon:[448,512,[],"e09a","M246.6 9.4c-12.5-12.5-32.8-12.5-45.3 0l-128 128c-12.5 12.5-12.5 32.8 0 45.3s32.8 12.5 45.3 0L192 109.3 192 320c0 17.7 14.3 32 32 32s32-14.3 32-32l0-210.7 73.4 73.4c12.5 12.5 32.8 12.5 45.3 0s12.5-32.8 0-45.3l-128-128zM64 352c0-17.7-14.3-32-32-32S0 334.3 0 352l0 64c0 53 43 96 96 96l256 0c53 0 96-43 96-96l0-64c0-17.7-14.3-32-32-32s-32 14.3-32 32l0 64c0 17.7-14.3 32-32 32L96 448c-17.7 0-32-14.3-32-32l0-64z"]},c8={prefix:"fas",iconName:"ellipsis-stroke-vertical",icon:[128,512,["ellipsis-v-alt"],"f39c","M80 432c0 8.8-7.2 16-16 16s-16-7.2-16-16 7.2-16 16-16 16 7.2 16 16zm48 0c0-35.3-28.7-64-64-64s-64 28.7-64 64 28.7 64 64 64 64-28.7 64-64zM80 256c0 8.8-7.2 16-16 16s-16-7.2-16-16 7.2-16 16-16 16 7.2 16 16zm48 0c0-35.3-28.7-64-64-64s-64 28.7-64 64 28.7 64 64 64 64-28.7 64-64zM64 96a16 16 0 1 1 0-32 16 16 0 1 1 0 32zm0-80a64 64 0 1 0 0 128 64 64 0 1 0 0-128z"]},Lee=c8,u8={prefix:"fas",iconName:"square-question",icon:[448,512,["question-square"],"f2fd","M64 32C28.7 32 0 60.7 0 96L0 416c0 35.3 28.7 64 64 64l320 0c35.3 0 64-28.7 64-64l0-320c0-35.3-28.7-64-64-64L64 32zM224 176c-17.7 0-32 14.3-32 32 0 13.3-10.7 24-24 24s-24-10.7-24-24c0-44.2 35.8-80 80-80s80 35.8 80 80c0 47.2-36 67.2-56 74.5l0 3.8c0 13.3-10.7 24-24 24s-24-10.7-24-24l0-8.1c0-20.5 14.8-35.2 30.1-40.2 6.4-2.1 13.2-5.5 18.2-10.3 4.3-4.2 7.7-10 7.7-19.6 0-17.7-14.3-32-32-32zM192 368a32 32 0 1 1 64 0 32 32 0 1 1 -64 0z"]},AA=u8,d8={prefix:"fas",iconName:"arrow-up-long",icon:[320,512,["long-arrow-up"],"f176","M182.6-22.6c-12.5-12.5-32.8-12.5-45.3 0l-128 128c-12.5 12.5-12.5 32.8 0 45.3s32.8 12.5 45.3 0L128 77.3 128 512c0 17.7 14.3 32 32 32s32-14.3 32-32l0-434.7 73.4 73.4c12.5 12.5 32.8 12.5 45.3 0s12.5-32.8 0-45.3l-128-128z"]},Fee=d8,zee={prefix:"fas",iconName:"arrow-progress",icon:[512,512,[],"e5df","M230.8 33.8c9-3.7 19.3-1.7 26.2 5.2l40 40c9.4 9.4 9.4 24.6 0 33.9l-40 40c-6.9 6.9-17.2 8.9-26.2 5.2S216 145.7 216 136l0-8-104 0c-26.5 0-48 21.5-48 48s21.5 48 48 48l288 0c61.9 0 112 50.1 112 112 0 46.4-28.2 86.1-68.3 103.2-9.3 23.9-32.5 40.8-59.7 40.8-35.3 0-64-28.7-64-64s28.7-64 64-64c18.6 0 35.4 7.9 47 20.6 10.4-8.8 17-21.9 17-36.6 0-26.5-21.5-48-48-48l-288 0C50.1 288 0 237.9 0 176S50.1 64 112 64l104 0 0-8c0-9.7 5.8-18.5 14.8-22.2zM416 32a64 64 0 1 1 0 128 64 64 0 1 1 0-128zM151.4 448c-11.1 19.1-31.7 32-55.4 32-35.3 0-64-28.7-64-64s28.7-64 64-64c23.7 0 44.4 12.9 55.4 32l32.6 0 0-8c0-9.7 5.8-18.5 14.8-22.2s19.3-1.7 26.2 5.2l40 40c9.4 9.4 9.4 24.6 0 33.9l-40 40c-6.9 6.9-17.2 8.9-26.2 5.2S184 465.7 184 456l0-8-32.6 0z"]},Bee={prefix:"fas",iconName:"arrow-down-left",icon:[384,512,[],"e091","M0 416c0 17.7 14.3 32 32 32l224 0c17.7 0 32-14.3 32-32s-14.3-32-32-32l-146.7 0 265.4-265.4c12.5-12.5 12.5-32.8 0-45.3s-32.8-12.5-45.3 0L64 338.7 64 192c0-17.7-14.3-32-32-32S0 174.3 0 192L0 416z"]},Uee={prefix:"fas",iconName:"arrow-up-right-and-arrow-down-left-from-center",icon:[512,512,[],"e0a0","M352 0c-17.7 0-32 14.3-32 32s14.3 32 32 32l50.7 0-105.4 105.4c-12.5 12.5-12.5 32.8 0 45.3s32.8 12.5 45.3 0L448 109.3 448 160c0 17.7 14.3 32 32 32s32-14.3 32-32l0-128c0-17.7-14.3-32-32-32L352 0zM214.6 297.4c-12.5-12.5-32.8-12.5-45.3 0L64 402.7 64 352c0-17.7-14.3-32-32-32S0 334.3 0 352L0 480c0 17.7 14.3 32 32 32l128 0c17.7 0 32-14.3 32-32s-14.3-32-32-32l-50.7 0 105.4-105.4c12.5-12.5 12.5-32.8 0-45.3z"]},Vee={prefix:"fas",iconName:"arrow-up-from-dotted-line",icon:[384,512,[],"e09b","M169.4 9.4c12.5-12.5 32.8-12.5 45.3 0l128 128c12.5 12.5 12.5 32.8 0 45.3s-32.8 12.5-45.3 0L224 109.3 224 352c0 17.7-14.3 32-32 32s-32-14.3-32-32l0-242.7-73.4 73.4c-12.5 12.5-32.8 12.5-45.3 0s-12.5-32.8 0-45.3l128-128zM0 480c0-17.7 14.3-32 32-32s32 14.3 32 32-14.3 32-32 32-32-14.3-32-32zm138.7-32c17.7 0 32 14.3 32 32s-14.3 32-32 32-32-14.3-32-32 14.3-32 32-32zm74.7 32c0-17.7 14.3-32 32-32s32 14.3 32 32-14.3 32-32 32-32-14.3-32-32zM352 448c17.7 0 32 14.3 32 32s-14.3 32-32 32-32-14.3-32-32 14.3-32 32-32z"]},p8={prefix:"fas",iconName:"arrow-down-from-line",icon:[384,512,[8615,"arrow-from-top"],"f345","M32 64C14.3 64 0 49.7 0 32S14.3 0 32 0L352 0c17.7 0 32 14.3 32 32s-14.3 32-32 32L32 64zM342.6 374.6l-128 128c-12.5 12.5-32.8 12.5-45.3 0l-128-128c-12.5-12.5-12.5-32.8 0-45.3s32.8-12.5 45.3 0L160 402.7 160 160c0-17.7 14.3-32 32-32s32 14.3 32 32l0 242.7 73.4-73.4c12.5-12.5 32.8-12.5 45.3 0s12.5 32.8 0 45.3z"]},jee=p8,$ee={prefix:"fas",iconName:"arrow-up-left",icon:[384,512,[],"e09d","M32 64C14.3 64 0 78.3 0 96L0 320c0 17.7 14.3 32 32 32s32-14.3 32-32l0-146.7 265.4 265.4c12.5 12.5 32.8 12.5 45.3 0s12.5-32.8 0-45.3L109.3 128 256 128c17.7 0 32-14.3 32-32s-14.3-32-32-32L32 64z"]},Hee={prefix:"fas",iconName:"arrows-split-up-and-left",icon:[512,512,[],"e4bc","M342.6-22.6c-12.5-12.5-32.8-12.5-45.3 0l-96 96c-12.5 12.5-12.5 32.8 0 45.3s32.8 12.5 45.3 0l41.4-41.4 0 195.9c-18.8-10.9-40.7-17.1-64-17.1l-114.7 0 41.4-41.4c12.5-12.5 12.5-32.8 0-45.3s-32.8-12.5-45.3 0l-96 96c-12.5 12.5-12.5 32.8 0 45.3l96 96c12.5 12.5 32.8 12.5 45.3 0s12.5-32.8 0-45.3L109.3 320 224 320c35.3 0 64 28.7 64 64 0 70.7 57.3 128 128 128l32 0c17.7 0 32-14.3 32-32s-14.3-32-32-32l-32 0c-35.3 0-64-28.7-64-64l0-306.7 41.4 41.4c12.5 12.5 32.8 12.5 45.3 0s12.5-32.8 0-45.3l-96-96z"]},h8={prefix:"fas",iconName:"arrow-left-to-line",icon:[512,512,[8676,"arrow-to-left"],"f33e","M0 416c0 17.7 14.3 32 32 32s32-14.3 32-32L64 96c0-17.7-14.3-32-32-32S0 78.3 0 96L0 416zM137.4 233.4c-12.5 12.5-12.5 32.8 0 45.3l128 128c12.5 12.5 32.8 12.5 45.3 0s12.5-32.8 0-45.3L237.3 288 480 288c17.7 0 32-14.3 32-32s-14.3-32-32-32l-242.7 0 73.4-73.4c12.5-12.5 12.5-32.8 0-45.3s-32.8-12.5-45.3 0l-128 128z"]},Gee=h8,qee={prefix:"fas",iconName:"arrow-down-from-bracket",icon:[448,512,[],"e667","M384 160c0 17.7 14.3 32 32 32s32-14.3 32-32l0-64c0-53-43-96-96-96L96 0C43 0 0 43 0 96l0 64c0 17.7 14.3 32 32 32s32-14.3 32-32l0-64c0-17.7 14.3-32 32-32l256 0c17.7 0 32 14.3 32 32l0 64zM201.4 502.6c12.5 12.5 32.8 12.5 45.3 0l128-128c12.5-12.5 12.5-32.8 0-45.3s-32.8-12.5-45.3 0L256 402.7 256 192c0-17.7-14.3-32-32-32s-32 14.3-32 32l0 210.7-73.4-73.4c-12.5-12.5-32.8-12.5-45.3 0s-12.5 32.8 0 45.3l128 128z"]},Wee={prefix:"fas",iconName:"arrow-left-from-dotted-line",icon:[512,512,[],"e6b9","M9.4 233.4c-12.5 12.5-12.5 32.8 0 45.3l128 128c12.5 12.5 32.8 12.5 45.3 0s12.5-32.8 0-45.3L109.3 288 352 288c17.7 0 32-14.3 32-32s-14.3-32-32-32l-242.7 0 73.4-73.4c12.5-12.5 12.5-32.8 0-45.3s-32.8-12.5-45.3 0l-128 128zM480 64a32 32 0 1 0 0 64 32 32 0 1 0 0-64zM448 202.7a32 32 0 1 0 64 0 32 32 0 1 0 -64 0zm32 74.7a32 32 0 1 0 0 64 32 32 0 1 0 0-64zM448 416a32 32 0 1 0 64 0 32 32 0 1 0 -64 0z"]},Zee={prefix:"fas",iconName:"building-magnifying-glass",icon:[512,512,[],"e61c","M0 64C0 28.7 28.7 0 64 0L320 0c35.3 0 64 28.7 64 64l0 116.8c-12.8-3.1-26.2-4.8-40-4.8-92.8 0-168 75.2-168 168 0 2.7 .1 5.4 .2 8l-.2 0c-17.7 0-32 14.3-32 32l0 80 82.4 0c27 26.4 62.9 43.9 102.7 47.4-3 .4-6 .6-9.1 .6L64 512c-35.3 0-64-28.7-64-64L0 64zM112 96c-8.8 0-16 7.2-16 16l0 32c0 8.8 7.2 16 16 16l32 0c8.8 0 16-7.2 16-16l0-32c0-8.8-7.2-16-16-16l-32 0zm112 16l0 32c0 8.8 7.2 16 16 16l32 0c8.8 0 16-7.2 16-16l0-32c0-8.8-7.2-16-16-16l-32 0c-8.8 0-16 7.2-16 16zM112 224c-8.8 0-16 7.2-16 16l0 32c0 8.8 7.2 16 16 16l32 0c8.8 0 16-7.2 16-16l0-32c0-8.8-7.2-16-16-16l-32 0zM344 416.1a72 72 0 1 0 0-144 72 72 0 1 0 0 144zm0 48c-66.3 0-120-53.7-120-120s53.7-120 120-120 120 53.7 120 120c0 24.5-7.3 47.2-19.9 66.2L505 471.1c9.4 9.4 9.4 24.6 0 33.9s-24.6 9.4-33.9 0l-60.8-60.9c-19 12.6-41.7 19.9-66.2 19.9z"]},f8={prefix:"fas",iconName:"arrows-up-down",icon:[256,512,["arrows-v"],"f07d","M150.6-22.6c-12.5-12.5-32.8-12.5-45.3 0l-96 96c-12.5 12.5-12.5 32.8 0 45.3s32.8 12.5 45.3 0L96 77.3 96 434.7 54.6 393.4c-12.5-12.5-32.8-12.5-45.3 0s-12.5 32.8 0 45.3l96 96c6 6 14.1 9.4 22.6 9.4s16.6-3.4 22.6-9.4l96-96c12.5-12.5 12.5-32.8 0-45.3s-32.8-12.5-45.3 0l-41.4 41.4 0-357.5 41.4 41.4c12.5 12.5 32.8 12.5 45.3 0s12.5-32.8 0-45.3l-96-96z"]},Yee=f8,m8={prefix:"fas",iconName:"arrow-right-to-bracket",icon:[512,512,["sign-in"],"f090","M352 96l64 0c17.7 0 32 14.3 32 32l0 256c0 17.7-14.3 32-32 32l-64 0c-17.7 0-32 14.3-32 32s14.3 32 32 32l64 0c53 0 96-43 96-96l0-256c0-53-43-96-96-96l-64 0c-17.7 0-32 14.3-32 32s14.3 32 32 32zm-9.4 182.6c12.5-12.5 12.5-32.8 0-45.3l-128-128c-12.5-12.5-32.8-12.5-45.3 0s-12.5 32.8 0 45.3L242.7 224 32 224c-17.7 0-32 14.3-32 32s14.3 32 32 32l210.7 0-73.4 73.4c-12.5 12.5-12.5 32.8 0 45.3s32.8 12.5 45.3 0l128-128z"]},Xee=m8,Kee={prefix:"fas",iconName:"location-arrow",icon:[512,512,[],"f124","M477.9 75.5c4.5-11.8 1.7-25.2-7.2-34.1s-22.3-11.8-34.1-7.2l-416 160C7.9 199-.3 211.2 0 224.7s9.1 25.4 21.9 29.6l176.8 58.9 58.9 176.8c4.3 12.8 16.1 21.6 29.6 21.9s25.7-7.9 30.6-20.5l160-416z"]},Qee={prefix:"fas",iconName:"arrow-turn-down-right",icon:[512,512,[],"e3d6","M64 96c0-17.7-14.3-32-32-32S0 78.3 0 96l0 96c0 53 43 96 96 96l306.7 0-73.4 73.4c-12.5 12.5-12.5 32.8 0 45.3s32.8 12.5 45.3 0l128-128c12.5-12.5 12.5-32.8 0-45.3l-128-128c-12.5-12.5-32.8-12.5-45.3 0s-12.5 32.8 0 45.3L402.7 224 96 224c-17.7 0-32-14.3-32-32l0-96z"]},g8={prefix:"fas",iconName:"arrow-down-to-line",icon:[384,512,["arrow-to-bottom"],"f33d","M32 512c-17.7 0-32-14.3-32-32s14.3-32 32-32l320 0c17.7 0 32 14.3 32 32s-14.3 32-32 32L32 512zM214.6 374.6c-12.5 12.5-32.8 12.5-45.3 0l-128-128c-12.5-12.5-12.5-32.8 0-45.3s32.8-12.5 45.3 0L160 274.7 160 32c0-17.7 14.3-32 32-32s32 14.3 32 32l0 242.7 73.4-73.4c12.5-12.5 32.8-12.5 45.3 0s12.5 32.8 0 45.3l-128 128z"]},Jee=g8,ete={prefix:"fas",iconName:"arrow-down-to-bracket",icon:[448,512,[],"e094","M374.6 214.6l-128 128c-12.5 12.5-32.8 12.5-45.3 0l-128-128c-12.5-12.5-12.5-32.8 0-45.3s32.8-12.5 45.3 0L192 242.7 192 32c0-17.7 14.3-32 32-32s32 14.3 32 32l0 210.7 73.4-73.4c12.5-12.5 32.8-12.5 45.3 0s12.5 32.8 0 45.3zM64 352l0 64c0 17.7 14.3 32 32 32l256 0c17.7 0 32-14.3 32-32l0-64c0-17.7 14.3-32 32-32s32 14.3 32 32l0 64c0 53-43 96-96 96L96 512c-53 0-96-43-96-96l0-64c0-17.7 14.3-32 32-32s32 14.3 32 32z"]},tte={prefix:"fas",iconName:"chevron-right",icon:[320,512,[9002],"f054","M311.1 233.4c12.5 12.5 12.5 32.8 0 45.3l-192 192c-12.5 12.5-32.8 12.5-45.3 0s-12.5-32.8 0-45.3L243.2 256 73.9 86.6c-12.5-12.5-12.5-32.8 0-45.3s32.8-12.5 45.3 0l192 192z"]},y8={prefix:"fas",iconName:"ellipsis-vertical",icon:[128,512,["ellipsis-v"],"f142","M64 144a56 56 0 1 1 0-112 56 56 0 1 1 0 112zm0 224c30.9 0 56 25.1 56 56s-25.1 56-56 56-56-25.1-56-56 25.1-56 56-56zm56-112c0 30.9-25.1 56-56 56s-56-25.1-56-56 25.1-56 56-56 56 25.1 56 56z"]},nte=y8,v8={prefix:"fas",iconName:"arrow-right-to-line",icon:[512,512,[8677,"arrow-to-right"],"f340","M512 96c0-17.7-14.3-32-32-32s-32 14.3-32 32l0 320c0 17.7 14.3 32 32 32s32-14.3 32-32l0-320zM374.6 278.6c12.5-12.5 12.5-32.8 0-45.3l-128-128c-12.5-12.5-32.8-12.5-45.3 0s-12.5 32.8 0 45.3L274.7 224 32 224c-17.7 0-32 14.3-32 32s14.3 32 32 32l242.7 0-73.4 73.4c-12.5 12.5-12.5 32.8 0 45.3s32.8 12.5 45.3 0l128-128z"]},rte=v8,ite={prefix:"fas",iconName:"circle-notch",icon:[512,512,[],"f1ce","M222.7 32.1c5 16.9-4.6 34.8-21.5 39.8-79.3 23.6-137.1 97.1-137.1 184.1 0 106 86 192 192 192s192-86 192-192c0-86.9-57.8-160.4-137.1-184.1-16.9-5-26.6-22.9-21.5-39.8s22.9-26.6 39.8-21.5C434.9 42.1 512 140 512 256 512 397.4 397.4 512 256 512S0 397.4 0 256c0-116 77.1-213.9 182.9-245.4 16.9-5 34.8 4.6 39.8 21.5z"]},ote={prefix:"fas",iconName:"arrow-left-long-to-line",icon:[640,512,[],"e3d4","M265.4 105.4c12.5-12.5 32.8-12.5 45.3 0s12.5 32.8 0 45.3L237.3 224 608 224c17.7 0 32 14.3 32 32s-14.3 32-32 32l-370.7 0 73.4 73.4c12.5 12.5 12.5 32.8 0 45.3s-32.8 12.5-45.3 0l-128-128c-12.5-12.5-12.5-32.8 0-45.3l128-128zM0 128c0-17.7 14.3-32 32-32s32 14.3 32 32l0 256c0 17.7-14.3 32-32 32S0 401.7 0 384L0 128z"]},_8={prefix:"fas",iconName:"arrow-right-long",icon:[576,512,["long-arrow-right"],"f178","M566.6 278.6c12.5-12.5 12.5-32.8 0-45.3l-128-128c-12.5-12.5-32.8-12.5-45.3 0s-12.5 32.8 0 45.3L466.7 224 32 224c-17.7 0-32 14.3-32 32s14.3 32 32 32l434.7 0-73.4 73.4c-12.5 12.5-12.5 32.8 0 45.3s32.8 12.5 45.3 0l128-128z"]},ste=_8,b8={prefix:"fas",iconName:"magnifying-glass",icon:[512,512,[128269,"search"],"f002","M416 208c0 45.9-14.9 88.3-40 122.7L502.6 457.4c12.5 12.5 12.5 32.8 0 45.3s-32.8 12.5-45.3 0L330.7 376C296.3 401.1 253.9 416 208 416 93.1 416 0 322.9 0 208S93.1 0 208 0 416 93.1 416 208zM208 352a144 144 0 1 0 0-288 144 144 0 1 0 0 288z"]},ate=b8,x8={prefix:"fas",iconName:"map-location-dot",icon:[640,512,["map-marked-alt"],"f5a0","M576 48c0-11.1-5.7-21.4-15.2-27.2s-21.2-6.4-31.1-1.4L413.5 77.5 234.1 17.6c-8.1-2.7-16.8-2.1-24.4 1.7l-128 64C70.8 88.8 64 99.9 64 112l0 352c0 11.1 5.7 21.4 15.2 27.2s21.2 6.4 31.1 1.4l116.1-58.1 173.3 57.8c-4.3-6.4-8.5-13.1-12.6-19.9-11-18.3-21.9-39.3-30-61.8l-101.2-33.7 0-284.5 128 42.7 0 99.3c31-35.8 77-58.4 128-58.4 22.6 0 44.2 4.4 64 12.5L576 48zM512 224c-66.3 0-120 52.8-120 117.9 0 68.9 64.1 150.4 98.6 189.3 11.6 13 31.3 13 42.9 0 34.5-38.9 98.6-120.4 98.6-189.3 0-65.1-53.7-117.9-120-117.9zM472 344a40 40 0 1 1 80 0 40 40 0 1 1 -80 0z"]},lte=x8,w8={prefix:"fas",iconName:"ellipsis-stroke",icon:[512,512,["ellipsis-h-alt"],"f39b","M64 256a16 16 0 1 0 32 0 16 16 0 1 0 -32 0zm80 0a64 64 0 1 1 -128 0 64 64 0 1 1 128 0zm112-16a16 16 0 1 0 0 32 16 16 0 1 0 0-32zm0 80a64 64 0 1 1 0-128 64 64 0 1 1 0 128zm176-80a16 16 0 1 0 0 32 16 16 0 1 0 0-32zm0 80a64 64 0 1 1 0-128 64 64 0 1 1 0 128z"]},cte=w8,ute={prefix:"fas",iconName:"arrow-turn-down-left",icon:[512,512,[],"e2e1","M448 96c0-17.7 14.3-32 32-32s32 14.3 32 32l0 96c0 53-43 96-96 96l-306.7 0 73.4 73.4c12.5 12.5 12.5 32.8 0 45.3s-32.8 12.5-45.3 0l-128-128c-12.5-12.5-12.5-32.8 0-45.3l128-128c12.5-12.5 32.8-12.5 45.3 0s12.5 32.8 0 45.3L109.3 224 416 224c17.7 0 32-14.3 32-32l0-96z"]},S8={prefix:"fas",iconName:"ellipsis",icon:[448,512,["ellipsis-h"],"f141","M0 256a56 56 0 1 1 112 0 56 56 0 1 1 -112 0zm168 0a56 56 0 1 1 112 0 56 56 0 1 1 -112 0zm224-56a56 56 0 1 1 0 112 56 56 0 1 1 0-112z"]},dte=S8,pte={prefix:"fas",iconName:"arrows-spin",icon:[512,512,[],"e4bb","M481.7 240.1c-17.6-1.2-32.9 12-34.2 29.7-3.3 47-23.6 89.4-54.8 121L361 359c-6.9-6.9-17.2-8.9-26.2-5.2S320 366.3 320 376l0 112c0 13.3 10.7 24 24 24l112 0c9.7 0 18.5-5.8 22.2-14.8s1.7-19.3-5.2-26.2l-35-35c41.7-42.2 68.9-98.8 73.4-161.8 1.2-17.6-12-32.9-29.7-34.2zM39 41L74 76c-41.7 42.2-68.9 98.8-73.4 161.8-1.2 17.6 12 32.9 29.7 34.2s32.9-12 34.2-29.7c3.3-47 23.6-89.4 54.8-121L151 153c6.9 6.9 17.2 8.9 26.2 5.2S192 145.7 192 136l0-112c0-13.3-10.7-24-24-24L56 0C46.3 0 37.5 5.8 33.8 14.8S32.2 34.1 39 41zm201-10.7c-1.2 17.6 12 32.9 29.7 34.2 47 3.3 89.4 23.6 121 54.8L359 151c-6.9 6.9-8.9 17.2-5.2 26.2S366.3 192 376 192l112 0c13.3 0 24-10.7 24-24l0-112c0-9.7-5.8-18.5-14.8-22.2S477.9 32.2 471 39L436 74c-42.2-41.7-98.8-68.9-161.8-73.4-17.6-1.2-32.9 12-34.2 29.7zM41 473l35-35c42.2 41.7 98.8 68.9 161.8 73.4 17.6 1.2 32.9-12 34.2-29.7s-12-32.9-29.7-34.2c-47-3.3-89.4-23.6-121-54.8L153 361c6.9-6.9 8.9-17.2 5.2-26.2S145.7 320 136 320L24 320c-13.3 0-24 10.7-24 24L0 456c0 9.7 5.8 18.5 14.8 22.2S34.1 479.8 41 473z"]},hte={prefix:"fas",iconName:"circle-small",icon:[320,512,[],"e122","M0 256a160 160 0 1 1 320 0 160 160 0 1 1 -320 0z"]},fte={prefix:"fas",iconName:"filter",icon:[512,512,[],"f0b0","M32 64C19.1 64 7.4 71.8 2.4 83.8S.2 109.5 9.4 118.6L192 301.3 192 416c0 8.5 3.4 16.6 9.4 22.6l64 64c9.2 9.2 22.9 11.9 34.9 6.9S320 492.9 320 480l0-178.7 182.6-182.6c9.2-9.2 11.9-22.9 6.9-34.9S492.9 64 480 64L32 64z"]},mte={prefix:"fas",iconName:"arrow-turn-left",icon:[512,512,[],"e632","M448 416c0 17.7 14.3 32 32 32s32-14.3 32-32l0-96c0-53-43-96-96-96l-306.7 0 73.4-73.4c12.5-12.5 12.5-32.8 0-45.3s-32.8-12.5-45.3 0l-128 128c-12.5 12.5-12.5 32.8 0 45.3l128 128c12.5 12.5 32.8 12.5 45.3 0s12.5-32.8 0-45.3L109.3 288 416 288c17.7 0 32 14.3 32 32l0 96z"]},E8={prefix:"fas",iconName:"minus",icon:[448,512,[8211,8722,10134,"subtract"],"f068","M0 256c0-17.7 14.3-32 32-32l384 0c17.7 0 32 14.3 32 32s-14.3 32-32 32L32 288c-17.7 0-32-14.3-32-32z"]},gte=E8,yte={prefix:"fas",iconName:"clock-three",icon:[512,512,[],"e356","M256 0a256 256 0 1 1 0 512 256 256 0 1 1 0-512zM232 120l0 136c0 13.3 10.7 24 24 24l104 0c13.3 0 24-10.7 24-24s-10.7-24-24-24l-80 0 0-112c0-13.3-10.7-24-24-24s-24 10.7-24 24z"]},vte={prefix:"fas",iconName:"arrow-left-to-bracket",icon:[512,512,[],"e669","M160 96L96 96c-17.7 0-32 14.3-32 32l0 256c0 17.7 14.3 32 32 32l64 0c17.7 0 32 14.3 32 32s-14.3 32-32 32l-64 0c-53 0-96-43-96-96L0 128C0 75 43 32 96 32l64 0c17.7 0 32 14.3 32 32s-14.3 32-32 32zm9.4 182.6c-12.5-12.5-12.5-32.8 0-45.3l128-128c12.5-12.5 32.8-12.5 45.3 0s12.5 32.8 0 45.3L269.3 224 480 224c17.7 0 32 14.3 32 32s-14.3 32-32 32l-210.7 0 73.4 73.4c12.5 12.5 12.5 32.8 0 45.3s-32.8 12.5-45.3 0l-128-128z"]},_te={prefix:"fas",iconName:"arrow-trend-up",icon:[576,512,[],"e098","M384 160c-17.7 0-32-14.3-32-32s14.3-32 32-32l160 0c17.7 0 32 14.3 32 32l0 160c0 17.7-14.3 32-32 32s-32-14.3-32-32l0-82.7-169.4 169.4c-12.5 12.5-32.8 12.5-45.3 0L192 269.3 54.6 406.6c-12.5 12.5-32.8 12.5-45.3 0s-12.5-32.8 0-45.3l160-160c12.5-12.5 32.8-12.5 45.3 0L320 306.7 466.7 160 384 160z"]},bte={prefix:"fas",iconName:"arrow-up-to-dotted-line",icon:[384,512,[],"e0a1","M64 32A32 32 0 1 1 0 32 32 32 0 1 1 64 32zM169.4 137.4c12.5-12.5 32.8-12.5 45.3 0l128 128c12.5 12.5 12.5 32.8 0 45.3s-32.8 12.5-45.3 0L224 237.3 224 480c0 17.7-14.3 32-32 32s-32-14.3-32-32l0-242.7-73.4 73.4c-12.5 12.5-32.8 12.5-45.3 0s-12.5-32.8 0-45.3l128-128zM138.7 64a32 32 0 1 1 0-64 32 32 0 1 1 0 64zM277.3 32a32 32 0 1 1 -64 0 32 32 0 1 1 64 0zM352 64a32 32 0 1 1 0-64 32 32 0 1 1 0 64z"]},xte={prefix:"fas",iconName:"arrow-turn-left-up",icon:[384,512,[],"e634","M352 448c17.7 0 32 14.3 32 32s-14.3 32-32 32l-96 0c-53 0-96-43-96-96l0-306.7-73.4 73.4c-12.5 12.5-32.8 12.5-45.3 0s-12.5-32.8 0-45.3l128-128c12.5-12.5 32.8-12.5 45.3 0l128 128c12.5 12.5 12.5 32.8 0 45.3s-32.8 12.5-45.3 0L224 109.3 224 416c0 17.7 14.3 32 32 32l96 0z"]},wte={prefix:"fas",iconName:"arrow-u-turn-up-left",icon:[512,512,[],"e7ed","M7.7 148.2c-10.3-12.6-9.5-31.1 2.2-42.8l112-112c12.5-12.5 32.8-12.5 45.2 0s12.5 32.8 0 45.2L109.7 96 320.5 96c102.7 0 186.6 80.7 191.8 182.1l.2 9.9c0 106-86 192-192 192l-224 0-3.3-.2c-16.1-1.6-28.7-15.3-28.7-31.8s12.6-30.2 28.7-31.8l3.3-.2 224 0c70.7 0 128-57.3 128-128l-.2-6.6C444.9 213.8 389 160 320.5 160l-210.8 0 57.4 57.4 2.2 2.4c10.2 12.6 9.5 31.1-2.2 42.8s-30.2 12.4-42.8 2.2l-2.4-2.2-112-112-2.2-2.4z"]},I8={prefix:"fas",iconName:"rotate",icon:[512,512,[128260,"sync-alt"],"f2f1","M480.1 192l7.9 0c13.3 0 24-10.7 24-24l0-144c0-9.7-5.8-18.5-14.8-22.2S477.9 .2 471 7L419.3 58.8C375 22.1 318 0 256 0 127 0 20.3 95.4 2.6 219.5 .1 237 12.2 253.2 29.7 255.7s33.7-9.7 36.2-27.1C79.2 135.5 159.3 64 256 64 300.4 64 341.2 79 373.7 104.3L327 151c-6.9 6.9-8.9 17.2-5.2 26.2S334.3 192 344 192l136.1 0zm29.4 100.5c2.5-17.5-9.7-33.7-27.1-36.2s-33.7 9.7-36.2 27.1c-13.3 93-93.4 164.5-190.1 164.5-44.4 0-85.2-15-117.7-40.3L185 361c6.9-6.9 8.9-17.2 5.2-26.2S177.7 320 168 320L24 320c-13.3 0-24 10.7-24 24L0 488c0 9.7 5.8 18.5 14.8 22.2S34.1 511.8 41 505l51.8-51.8C137 489.9 194 512 256 512 385 512 491.7 416.6 509.4 292.5z"]},Ste=I8;function LA(t,e){(e==null||e>t.length)&&(e=t.length);for(var n=0,o=Array(e);n<e;n++)o[n]=t[n];return o}function Ete(t){if(Array.isArray(t))return t}function Ite(t){if(Array.isArray(t))return LA(t)}function Tte(t,e){if(!(t instanceof e))throw new TypeError("Cannot call a class as a function")}function T8(t,e){for(var n=0;n<e.length;n++){var o=e[n];o.enumerable=o.enumerable||false,o.configurable=true,"value"in o&&(o.writable=true),Object.defineProperty(t,iz(o.key),o);}}function Cte(t,e,n){return e&&T8(t.prototype,e),Object.defineProperty(t,"prototype",{writable:false}),t}function a2(t,e){var n=typeof Symbol<"u"&&t[Symbol.iterator]||t["@@iterator"];if(!n){if(Array.isArray(t)||(n=KA(t))||e){n&&(t=n);var o=0,c=function(){};return {s:c,n:function(){return o>=t.length?{done:true}:{done:false,value:t[o++]}},e:function(I){throw I},f:c}}throw new TypeError(`Invalid attempt to iterate non-iterable instance.
916
+ `,["get","name:nonlatin"]]]);}catch(P){this.debugLog("Layer language update failed (layer may not exist)",P);}}),s.filter(I=>{var P;return I.type==="symbol"&&I.source==="indoorequal"&&((P=I.layout)===null||P===void 0?void 0:P["text-field"])!==void 0}).map(I=>I.id).forEach(I=>{try{this.map.setLayoutProperty(I,"text-field",["case",["has",`name:${e}`],["get",`name:${e}`],["get","name"]]);}catch(P){this.debugLog("Layer language update failed (layer may not exist)",P);}});}prepareSegmentation(e){var n;return Object.assign(Object.assign({},e),{token:this.token,parentPlaceId:(n=this.parentPlaceId)!==null&&n!==void 0?n:"None"})}destroyMap(){this.circles=[],this.map.remove(),this.unsubscribeFromFailedTiles();}clearTileCache(){try{this.failedTiles.clear(),this.map&&this.map.triggerRepaint(),this.logEvent("clearTileCache");}catch(e){this.debugLog("Tile cache clear failed (cache may not exist)",e);}}is3DSceneActive(){var e;return this.mode==="3D"&&((e=this.scene3DConfig)===null||e===void 0?void 0:e.enabled)!==false}getCurrentFloor(){var e;return (e=this.currentFloor)!==null&&e!==void 0?e:""}setRouteCollisionPath(e){var n;this.is3DSceneActive()&&((n=this.scene3D)===null||n===void 0||n.setRouteCollisionPath(e));}changeParentPlaceTo(e,n=false,o){var c,s,m,w,I,P,L;this.parentPlace=e,this.parentPlaceId=e?.mapvxId,this.innerFloors=(s=(c=e?.innerFloors)===null||c===void 0?void 0:c.sort((B,Y)=>B.index-Y.index))!==null&&s!==void 0?s:[],this.currentFloor=(P=(w=(m=this.innerFloors.find(B=>B.defaultFloor))===null||m===void 0?void 0:m.key)!==null&&w!==void 0?w:(I=this.innerFloors[0])===null||I===void 0?void 0:I.key)!==null&&P!==void 0?P:"",e&&this.subPlacesLoad(e.mapvxId),(L=this.scene3D)===null||L===void 0||L.onFloorChange(this.currentFloor),n&&this.repository.fetchAndParseMapStyle(e?.mapvxId).then(B=>{let W=this.tileCacheConfig.enabled&&this.tileCacheConfig.persistToServiceWorker?this.transformStyleForCaching(B):B;this.map.setStyle(W),this.whenStyleUpdates(W),o?.();}).catch(console.error);}updatePlaceAndFloor(e,n){var o,c,s,m,w,I;let P=this.potentialParentPlaces.find(L=>L.mapvxId===e);this.parentPlace=P,this.parentPlaceId=P?.mapvxId,this.innerFloors=(o=P?.innerFloors.sort((L,B)=>L.index-B.index))!==null&&o!==void 0?o:[],this.currentFloor=(w=(s=n??((c=this.innerFloors.find(L=>L.defaultFloor))===null||c===void 0?void 0:c.key))!==null&&s!==void 0?s:(m=this.innerFloors[0])===null||m===void 0?void 0:m.key)!==null&&w!==void 0?w:"",(I=this.scene3D)===null||I===void 0||I.onFloorChange(this.currentFloor);}updateParentPlaceAndFloor(e,n,o){var c,s,m,w;try{this.updatePlaceAndFloor(e,n),this.filterByFloorKey(this.currentFloor),(c=this.onParentPlaceChange)===null||c===void 0||c.call(this,e),(s=this.onFloorChange)===null||s===void 0||s.call(this,(m=this.currentFloor)!==null&&m!==void 0?m:""),this.logEvent("updateParentPlaceAndFloor"),(w=o?.onComplete)===null||w===void 0||w.call(o);}catch(I){this.debugLog("Parent place/floor update failed",I);}}setLang(e){this.repository.setLang(e),uA.includes(e)&&this.setRTLSupport(),this.map.isStyleLoaded()?this.setLayersForLanguage(e):this.map.once("load",()=>this.setLayersForLanguage(e));}setParentPlace(e,n,o){this.changeParentPlaceTo(e,n,o);}removeParentPlace(){this.changeParentPlaceTo(void 0,true);}whenStyleUpdates(e){var n;e&&this.setBaseFilters(e),this.routeController.addSourcesAndLayers(),this.refreshCircles(),this.filterByFloorKey(this.currentFloor),(n=this.scene3D)===null||n===void 0||n.refreshOverlay(this.currentFloor);}addMarker(e){var n,o;try{if(e.id){let m=this.markers.findIndex(w=>w.id===e.id);m!==-1&&(this.markers[m].remove(),this.markers.splice(m,1),this.logEvent("removeMarker",{markerId:e.id,reason:"duplicate"}));}let c=new uu(e),s=!this.parentPlace||((o=(n=this.innerFloors.find(m=>m.key===this.currentFloor))===null||n===void 0?void 0:n.reachableFromGPS)!==null&&o!==void 0?o:!1);return c.changeFloor(this.currentFloor,this.map,s),this.markers.push(c),this.logEvent("addMarker"),c.id}catch(c){throw new Error("Failed to add marker",{cause:c})}}updateMarker(e){var n;try{let o=this.markers.find(c=>c.id===e.id);return o!==void 0&&o.updateIcon(e),this.logEvent("updateMarker"),(n=o?.id)!==null&&n!==void 0?n:""}catch(o){throw new Error("Failed to update marker",{cause:o})}}updateMarkerPosition(e,n){try{let o=this.markers.find(c=>c.id===e);o!==void 0&&o.setLngLat(n),this.logEvent("updateMarkerPosition");}catch(o){throw new Error("Failed to update marker position",{cause:o})}}showMarker(e){try{let n=this.markers.find(o=>o.id===e);n!==null&&this.map&&n?.show(this.map),this.logEvent("showMarker");}catch(n){this.debugLog("Show marker failed (marker may not exist)",n);}}hideMarker(e){try{let n=this.markers.find(o=>o.id===e);n!==null&&n?.hide(),this.logEvent("hideMarker");}catch(n){this.debugLog("Hide marker failed (marker may not exist)",n);}}removeMarker(e){try{let n=this.markers.find(o=>o.id===e);n!==null&&(n?.remove(),this.markers=this.markers.filter(o=>o.id!==e)),this.logEvent("removeMarker");}catch(n){throw new Error("Failed to remove marker",{cause:n})}}removeAllMarkers(){try{this.markers.forEach(e=>{e.remove();}),this.markers=[],this.logEvent("removeAllMarkers");}catch(e){throw new Error("Failed to remove all markers",{cause:e})}}addCircle(e){try{e.id&&(this.circles=this.circles.filter(o=>o.id!==e.id));let n=fA(e);return this.circles.push(n),this.refreshCircles(),this.logEvent("addCircle"),n.id}catch(n){throw new Error(`Failed to add circle: ${n instanceof Error?n.message:String(n)}`)}}updateCircle(e){try{let n=this.circles.findIndex(o=>o.id===e.id);return n===-1?null:(this.circles[n]=fA(e,this.circles[n].hidden),this.refreshCircles(),this.logEvent("updateCircle"),this.circles[n].id)}catch(n){throw new Error(`Failed to update circle: ${n instanceof Error?n.message:String(n)}`)}}getCircle(e){let n=this.circles.find(o=>o.id===e);return n?hA(n):void 0}getCircles(){return this.circles.map(hA)}hasCircle(e){return this.circles.some(n=>n.id===e)}updateCirclePosition(e,n,o){try{let c=this.circles.find(w=>w.id===e);if(c===void 0)return !1;if(!n)throw new Error("Circle center is required");let{lat:s,lng:m}=n;if(!Number.isFinite(s)||s<-90||s>90)throw new Error(`Invalid latitude: ${s}. Must be between -90 and 90.`);if(!Number.isFinite(m)||m<-180||m>180)throw new Error(`Invalid longitude: ${m}. Must be between -180 and 180.`);if(o!==void 0&&(!Number.isFinite(o)||o<=0))throw new Error(`Invalid radiusMeters: ${o}. Must be a positive finite number.`);return c.coordinate={lat:n.lat,lng:n.lng},o!==void 0&&(c.radiusMeters=o),this.refreshCircles(),this.logEvent("updateCirclePosition"),!0}catch(c){throw new Error(`Failed to update circle position: ${c instanceof Error?c.message:String(c)}`)}}updateCircleStyle(e,n){try{let o=this.circles.find(c=>c.id===e);return o===void 0?!1:(n.fillColor!==void 0&&(o.fillColor=n.fillColor),n.fillOpacity!==void 0&&(o.fillOpacity=Math.max(0,Math.min(1,n.fillOpacity))),n.strokeColor!==void 0&&(o.strokeColor=n.strokeColor),n.strokeWidth!==void 0&&(o.strokeWidth=n.strokeWidth),n.strokeOpacity!==void 0&&(o.strokeOpacity=Math.max(0,Math.min(1,n.strokeOpacity))),this.refreshCircles(),this.logEvent("updateCircleStyle"),!0)}catch(o){throw new Error(`Failed to update circle style: ${o instanceof Error?o.message:String(o)}`)}}removeCircle(e){try{this.circles=this.circles.filter(n=>n.id!==e),this.refreshCircles(),this.logEvent("removeCircle");}catch(n){throw new Error("Failed to remove circle",{cause:n})}}removeAllCircles(){try{this.circles=[],this.refreshCircles(),this.logEvent("removeAllCircles");}catch(e){throw new Error("Failed to remove all circles",{cause:e})}}showCircle(e){try{let n=this.circles.find(o=>o.id===e);return n===void 0?!1:(n.hidden=!1,this.refreshCircles(),this.logEvent("showCircle"),!0)}catch(n){return this.debugLog("Show circle failed",n),false}}hideCircle(e){try{let n=this.circles.find(o=>o.id===e);return n===void 0?!1:(n.hidden=!0,this.refreshCircles(),this.logEvent("hideCircle"),!0)}catch(n){return this.debugLog("Hide circle failed",n),false}}circleFeatureCollection(){var e,n,o;let c=(e=this.currentFloor)!==null&&e!==void 0?e:"",s=!this.parentPlace||((o=(n=this.innerFloors.find(w=>w.key===c))===null||n===void 0?void 0:n.reachableFromGPS)!==null&&o!==void 0?o:false);return {type:"FeatureCollection",features:this.circles.filter(w=>{var I;if(w.hidden)return false;let P=(I=w.floorId)!==null&&I!==void 0?I:"";return P===c||s&&P===""}).map(w=>({type:"Feature",properties:{id:w.id,fillColor:w.fillColor,fillOpacity:w.fillOpacity,strokeColor:w.strokeColor,strokeWidth:w.strokeWidth,strokeOpacity:w.strokeOpacity,renderOrder:w.renderOrder},geometry:{type:"Polygon",coordinates:[mA(w.coordinate.lng,w.coordinate.lat,w.radiusMeters)]}}))}}circleBeforeIdFor(e){var n,o,c,s;if(e==="top")return;let m=((o=(n=this.map.getStyle())===null||n===void 0?void 0:n.layers)!==null&&o!==void 0?o:[]).filter(I=>!eJ(I.id));if(e==="belowLabels")return (c=m.find(I=>I.type==="symbol"))===null||c===void 0?void 0:c.id;let w=-1;return m.forEach((I,P)=>{I.type!=="symbol"&&(w=P);}),(s=m.slice(w+1).find(I=>I.type==="symbol"))===null||s===void 0?void 0:s.id}ensureCircleLayers(){if(this.map)try{this.map.getSource(tm)||this.map.addSource(tm,{type:"geojson",data:this.circleFeatureCollection()});let e=new Set(this.circles.map(n=>n.renderOrder));e.add("aboveBasemap");for(let n of qx){if(!e.has(n))continue;let o=JQ(n),c=this.circleBeforeIdFor(n),s=["==",["get","renderOrder"],n];if(this.map.getLayer(o.fill))this.map.moveLayer(o.fill,c);else {let m={id:o.fill,type:"fill",source:tm,filter:s,paint:{"fill-color":["get","fillColor"],"fill-opacity":["get","fillOpacity"]}};this.map.addLayer(m,c);}if(this.map.getLayer(o.line))this.map.moveLayer(o.line,c);else {let m={id:o.line,type:"line",source:tm,filter:s,paint:{"line-color":["get","strokeColor"],"line-width":["get","strokeWidth"],"line-opacity":["get","strokeOpacity"]}};this.map.addLayer(m,c);}}}catch(e){this.debugLog("Layers not added: style not loaded yet, the styledata listener will re-add them",e);}}refreshCircles(){if(this.map&&!(this.circles.length===0&&!this.map.getSource(tm))){this.ensureCircleLayers();try{let e=this.map.getSource(tm);e?.setData(this.circleFeatureCollection());}catch(e){this.debugLog("Source not found (a new style may still be loading)",e);}}}filterByFloorKey(e){this.currentFloor=e;let n=e??"";this.innerFloors.every(o=>o.key!==e)&&e!==""&&this.logEvent("invalidFloorKey",{floorKey:n}),this.updateFiltersTo(n),this.updateMarkersTo(n),this.refreshCircles(),this.routeController.updateRouteLayers(n),this.routeController.updateRouteMarkerVisibility(n);}getContainer(){return this.map.getContainer()}resize(){try{this.map&&(this.map.resize(),this.logEvent("resize"));}catch(e){this.debugLog("Resize failed (map/container may not be ready)",e);}}updateMarkersTo(e){var n,o;let c=!this.parentPlace||((o=(n=this.innerFloors.find(s=>s.key===e))===null||n===void 0?void 0:n.reachableFromGPS)!==null&&o!==void 0?o:false);this.markers.forEach(s=>{s.changeFloor(e,this.map,c);});}updateFiltersTo(e){var n,o,c,s;if(!this.map)return;let m=(o=(n=this.map.getStyle())===null||n===void 0?void 0:n.layers)!==null&&o!==void 0?o:[];m.filter(P=>P.id.startsWith("base-indoor-")).forEach(P=>{this.map.removeLayer(P.id);});let w=(c=this.innerFloors.find(P=>P.key===e))===null||c===void 0?void 0:c.baseFloor,I=m.filter(P=>P.id.startsWith("indoor-"));if(w!=null){let P=(s=I[0])===null||s===void 0?void 0:s.id;I.filter(L=>L.type!=="fill-extrusion").forEach(L=>{let B=z6(L);B.id="base-"+L.id,this.baseFilters[B.id]=this.baseFilters[L.id],this.map.addLayer(B,P),this.applyLayerFilters(B,w);});}I.forEach(P=>{this.applyLayerFilters(P,e);});}applyLayerFilters(e,n){var o;let c=this.baseFilters[e.id],s=n??"",m=["any",["in",s,["get","floor_key"]]],w=["==",["get","public_place"],true],I=["!",["in",(o=this.parentPlaceId)!==null&&o!==void 0?o:"noRef",["get","is_subplace"]]],P=["in",s,["get","show_in_floor"]],L=w;this.parentPlaceId!=null&&(L=["any",m,w]);let B=["all",L,["any",I,P]];if(e.id.includes("hover")?c=["in",this.hoveredId,["get","ref"]]:!e.id.includes("colored")&&(e.type=="fill"||e.type==="fill-extrusion")&&B.push(["!",["in",this.hoveredId,["get","ref"]]]),c!=null){let Y=["all",c,B];this.map.setFilter(e.id,Y);}else this.map.setFilter(e.id,B);}getInnerFloors(){return this.innerFloors}updateCamera(e,n){this.map.once("moveend",n),this.map.easeTo(Object.assign({},e));}setMaxZoom(e,n){var o;this.map.setMaxZoom(e),(o=n?.onComplete)===null||o===void 0||o.call(n);}setMinZoom(e,n){var o;this.map.setMinZoom(e),(o=n?.onComplete)===null||o===void 0||o.call(n);}setBearing(e,n){var o;if(Number.isFinite(e)){if(n?.animate){n.onComplete&&this.map.once("moveend",n.onComplete),this.map.rotateTo(e,{duration:600});return}this.map.setBearing(e),(o=n?.onComplete)===null||o===void 0||o.call(n);}}setRotationEnabled(e){var n,o,c,s,m,w,I,P,L,B;e?((o=(n=this.map.dragRotate)===null||n===void 0?void 0:n.enable)===null||o===void 0||o.call(n),(s=(c=this.map.touchZoomRotate)===null||c===void 0?void 0:c.enableRotation)===null||s===void 0||s.call(c),(w=(m=this.map.keyboard)===null||m===void 0?void 0:m.enable)===null||w===void 0||w.call(m)):((P=(I=this.map.dragRotate)===null||I===void 0?void 0:I.disable)===null||P===void 0||P.call(I),(B=(L=this.map.touchZoomRotate)===null||L===void 0?void 0:L.disableRotation)===null||B===void 0||B.call(L));}setPanEnabled(e){var n,o,c,s;e?(o=(n=this.map.dragPan)===null||n===void 0?void 0:n.enable)===null||o===void 0||o.call(n):(s=(c=this.map.dragPan)===null||c===void 0?void 0:c.disable)===null||s===void 0||s.call(c);}setScrollZoomEnabled(e){var n,o,c,s;e?(o=(n=this.map.scrollZoom)===null||n===void 0?void 0:n.enable)===null||o===void 0||o.call(n):(s=(c=this.map.scrollZoom)===null||c===void 0?void 0:c.disable)===null||s===void 0||s.call(c);}isInsideBounds(e){let n=this.map.getMaxBounds();return n!=null?n.contains(e):true}setMaxBounds(e,n){var o;if(e.length>1){let c=sA(e);this.map.setMaxBounds(new ls.LngLatBounds([c[0].lng,c[0].lat],[c[1].lng,c[1].lat]));}(o=n?.onComplete)===null||o===void 0||o.call(n);}fitCoordinates(e,n){var o,c;if(e.length===0)return;let s=n?.onComplete;if(e.length===1){let[m]=e;s&&this.map.once("moveend",s),this.map.setCenter({lat:m.lat,lng:m.lng});}else {let m,w,I,P;for(let Ke of e){let{lat:ot,lng:Zt}=Ke;m=m===void 0?ot:Math.min(m,ot),w=w===void 0?Zt:Math.min(w,Zt),I=I===void 0?ot:Math.max(I,ot),P=P===void 0?Zt:Math.max(P,Zt);}let L=[w??0,m??0,P??0,I??0],B=this.map.getContainer(),Y=B.clientWidth,W=B.clientHeight,ue=B6(n?.padding,Y,W),_e=Object.assign(Object.assign({},n),{padding:ue}),he=this.map.getBearing(),Pe=this.map.getPitch();(o=_e.bearing)!==null&&o!==void 0||(_e.bearing=he),(c=_e.pitch)!==null&&c!==void 0||(_e.pitch=Pe),s&&this.map.once("moveend",s),this.map.fitBounds(L,_e);}}easeToCoordinates(e,n){var o,c,s;if(e.length===0)return;let m=n?.onComplete,w=this.map.getContainer(),I=w.clientWidth,P=w.clientHeight,L=B6(n?.padding,I,P);if(e.length===1){let[_e]=e;m&&this.map.once("moveend",m),this.map.easeTo(Object.assign(Object.assign({},n),{center:{lat:_e.lat,lng:_e.lng},padding:L}));return}let B=(o=n?.bearing)!==null&&o!==void 0?o:this.map.getBearing(),Y=(c=n?.pitch)!==null&&c!==void 0?c:this.map.getPitch(),W={bearing:B,padding:L,containerWidth:I,containerHeight:P,maxZoom:(s=n?.maxZoom)!==null&&s!==void 0?s:this.map.getMaxZoom(),minZoom:this.map.getMinZoom()},ue=R6(e,W);Y>0&&(ue=k6(this.map.transform.clone(),e,ue,Object.assign(Object.assign({},W),{pitch:Y}))),m&&this.map.once("moveend",m),this.map.easeTo(Object.assign(Object.assign({},n),{center:ue.center,zoom:ue.zoom,bearing:B,pitch:Y,padding:L}));}fitRouteByPlace(e,n,o){let c=e.steps.filter(m=>m.startInsidePlace===n||m.endInsidePlace===n);if(c.length===0)return;let s=c.flatMap(m=>c6(m));s.length>0&&this.fitCoordinates(s,o);}getZoomLevel(){return this.map.getZoom()}updateFloor(e,n){var o,c,s;try{this.filterByFloorKey(e),(o=this.scene3D)===null||o===void 0||o.onFloorChange(this.currentFloor),(c=this.onFloorChange)===null||c===void 0||c.call(this,e),this.logEvent("updateFloor",{floorId:e}),(s=n?.onComplete)===null||s===void 0||s.call(n);}catch(m){this.debugLog("Floor update failed",m);}}updatePlaceAndFloorForRouting(e,n){var o;try{this.updatePlaceAndFloor(e,n),this.updateFiltersTo(n),this.updateMarkersTo(n),(o=this.onFloorChange)===null||o===void 0||o.call(this,n),this.logEvent("updatePlaceAndFloorForRouting",{floorId:n});}catch(c){this.debugLog("Place/floor update for routing failed",c);}}async addRoute(e,n={}){try{this.logEvent("addRoute");let o=new Uo(e),c=new Wl(n),s=await this.repository.fetchAndParseRoute(o);return this.routeController.addRoute(s,c),s}catch(o){throw new Error("Error: Failed to add route",{cause:o})}}async addLiveRoute(e,n={}){try{this.logEvent("addLiveRoute");let o=new Uo(e),c=new Wl(n),s=++this.liveRouteTicket,m=await this.repository.fetchAndParseLiveRoute(o);return s!==this.liveRouteTicket||(this.liveRouteId!==void 0&&this.liveRouteId!==m.id&&this.routeController.removeRoute(this.liveRouteId),this.routeController.getRouteIds().includes(m.id)&&this.routeController.removeRoute(m.id),this.routeController.addRoute(m,c),this.liveRouteId=m.id),m}catch(o){let c=o instanceof Error?o.message:String(o);throw new Error(`Error: Failed to add route: ${c}`,{cause:o})}}updateRouteProgress(e,n,o={type:"Solid",color:"#276EF1"}){try{let c=new Wl({routeStyle:o});this.routeController.updateRouteProgress(e,n,c);}catch(c){this.debugLog("Route update failed (route may not exist)",c);}}removeRoute(e){try{this.logEvent("removeRoute"),this.routeController.removeRoute(e);}catch(n){this.debugLog("Remove route failed (no route may exist)",n);}this.syncLiveRouteId();}removeRouteById(e){try{this.logEvent("removeRouteById"),this.routeController.removeRoute(e);}catch(n){this.debugLog("Remove route failed (route may not exist)",n);}this.syncLiveRouteId();}removeAllRoutes(){try{this.logEvent("removeAllRoutes"),this.routeController.removeAllRoutes();}catch(e){this.debugLog("Remove all routes failed",e);}this.syncLiveRouteId();}syncLiveRouteId(){this.liveRouteId!==void 0&&!this.routeController.getRouteIds().includes(this.liveRouteId)&&(this.liveRouteId=void 0);}getActiveRouteIds(){return this.routeController.getRouteIds()}addPopOver(e){let n=e.placeId;if(n!==void 0){let o=this.subPlaces.find(c=>c.clientId===n||c.mapvxId===n);o!==void 0&&new ls.default.Popup().setLngLat(o.position).setText(o.title).addTo(this.map);}return ""}removePopOver(e){throw Error("Not implemented")}startClickListener(e){this.clickCallback=e;}stopClickListener(){this.clickCallback=void 0;}defaultClickListener(){this.map.on("click",async e=>{var n,o;let m=this.map.queryRenderedFeatures(e.point).filter(I=>{var P;return I.properties.class==="room"&&((P=I.properties)===null||P===void 0?void 0:P.floor_key)===this.currentFloor})[0],w=m?.properties.ref;if(w!=null&&typeof w=="string"&&w.length>0){console.log("touchedFeature",w);let I=this.subPlaces.find(L=>L.mapvxId===w);if(I===void 0)for(let L of this.potentialParentPlaces){let B=this.repository.getCachedSubPlaces(L.mapvxId);if(B&&(I=B.find(Y=>Y.mapvxId===w),I!==void 0))break}if(I===void 0){let L=this.repository.getCachedPlaces([w]);L.length===0?(console.log("fetching place detail from server",w),I=await this.repository.fetchAndParsePlaceDetail({id:w})):(console.log("using cached place detail",w),I=L?.[0]);}console.log("clickedPlace",I?.title);let P=(o=(n=I?.mapvxId)!==null&&n!==void 0?n:I?.clientId)!==null&&o!==void 0?o:"";I!==void 0&&this.clickCallback&&this.clickCallback(P);}});}onHover(){this.enableHover&&(this.map.on("mousemove","hoverable",e=>{var n;let o=(n=e.features)===null||n===void 0?void 0:n.find(s=>{var m,w;return ((m=s.properties.ref)===null||m===void 0?void 0:m.length)>0&&((w=s.properties)===null||w===void 0?void 0:w.floor_key)===this.currentFloor}),c=o?.properties.ref;c!=null&&typeof c=="string"&&c.length>0?(this.hoveredId=c,this.updateFiltersTo(this.currentFloor)):c===void 0&&this.hoveredId!=="unselected"&&(this.hoveredId="unselected",this.updateFiltersTo(this.currentFloor));}),this.map.on("mouseleave","hoverable",()=>{this.hoveredId="unselected",this.updateFiltersTo(this.currentFloor);}));}setPlacesAsSelected(e,n){try{this.hasLayer("indoor-colored-places")||this.createColoredPlacesLayer();let o=this.createBasicFilters(),s=["any",...e.map(w=>["==",["get","ref"],w])],m=["all",s,o];if(this.map.setFilter("indoor-colored-places",m),this.baseFilters["indoor-colored-places"]=s,n!==void 0){let w=this.map.getLayer("indoor-colored-places");switch(w?.type){case "fill":this.map.setPaintProperty("indoor-colored-places","fill-color",n);break;case "fill-extrusion":this.map.setPaintProperty("indoor-colored-places","fill-extrusion-color",n);break;default:break}}}catch(o){this.debugLog("Place selection failed (layer may not exist)",o);}}is3DStyle(){return this.map.getStyle().layers.some(n=>n.type==="fill-extrusion")}createColoredPlacesLayer(){if(this.is3DStyle()){let e={id:"indoor-colored-places",type:"fill-extrusion",source:"indoorequal","source-layer":"area",filter:["all",["has","ref"],["==",["get","ref"],"unselected"]],paint:{"fill-extrusion-height":2.5,"fill-extrusion-color":gp,"fill-extrusion-opacity":.8}};this.map.addLayer(e);}else {let e={id:"indoor-colored-places",type:"fill",source:"indoorequal","source-layer":"area",filter:["all",["has","ref"],["==",["get","ref"],"unselected"]],paint:{"fill-color":gp}};this.map.addLayer(e);}}createBasicFilters(){var e,n;let o=["==",["get","public_place"],true],c=["!",["in",(e=this.parentPlaceId)!==null&&e!==void 0?e:"noRef",["get","is_subplace"]]],s=(n=this.currentFloor)!==null&&n!==void 0?n:"noRef",m=["in",s,["get","floor_key"]],w=["in",s,["get","show_in_floor"]],I=o;return this.parentPlaceId!=null&&(I=["any",m,o]),["all",I,["any",c,w]]}hasLayer(e){return this.map.getLayer(e)!==void 0}clearColoredPlaces(){if(this.hasLayer("indoor-colored-places")){let e=["==",["get","ref"],"unselected"];this.baseFilters["indoor-colored-places"]=e,this.map.setFilter("indoor-colored-places",e);}}async startAnimateRoute(e,n={},o={}){try{let c;if(e instanceof xo)c=e;else {let w=new Uo(e);c=await this.repository.fetchAndParseRoute(w);}let s=new fp(n),m=new hp(o);return this.routeController.startAnimating(c,s,m),c}catch(c){throw new Error("Error: Failed to start animating route",{cause:c})}}async startAnimateRouteV2(e,n={},o={}){try{let c;if(e instanceof xo)c=e;else {let w=new Uo(e);c=await this.repository.fetchAndParseRouteV2(w);}let s=new fp(n),m=new hp(o);return this.routeController.startAnimating(c,s,m),c}catch(c){throw new Error("Error: Failed to start animating route",{cause:c})}}pauseAnimateRoute(e){try{this.routeController.pauseAnimation(e),this.logEvent("pauseAnimateRoute");}catch(n){this.debugLog("Pause animation failed (no animation may be running)",n);}}resumeAnimateRoute(e){try{this.routeController.resumeAnimation(e),this.logEvent("resumeAnimateRoute");}catch(n){this.debugLog("Resume animation failed (no animation may be paused)",n);}}restartAnimateRoute(e){try{this.routeController.restartAnimation(e),this.logEvent("restartAnimateRoute");}catch(n){this.debugLog("Restart animation failed (no animation may exist)",n);}}stopAnimateRoute(){this.logWarning(new Error("Not implemented"),{functionName:"stopAnimateRoute"});}async addStepAnimation(e,n={},o={}){try{let c;if(e instanceof xo)c=e;else {let w=new Uo(e);c=await this.repository.fetchAndParseRoute(w);}let s=new fp(n),m=new hp(o);return this.routeController.addStepAnimation(c,s,m),this.logEvent("addStepAnimation"),c}catch(c){throw new Error("Error: Failed to add step animation",{cause:c})}}async addStepAnimationV2(e,n={},o={}){try{let c;if(e instanceof xo)c=e;else {let w=new Uo(e);c=await this.repository.fetchAndParseRouteV2(w);}let s=new fp(n),m=new hp(o);return this.routeController.addStepAnimation(c,s,m),this.logEvent("addStepAnimationV2"),c}catch(c){throw new Error("Error: Failed to add step animation",{cause:c})}}nextStepAnimation(e){try{this.routeController.nextStepAnimation(e),this.logEvent("nextStepAnimation");}catch(n){throw new Error("Error: Failed to animate step",{cause:n})}}previousStepAnimation(e){try{this.routeController.previousStepAnimation(e),this.logEvent("previousStepAnimation");}catch(n){let o=n instanceof Error?n.message:String(n);throw new Error("Error: Failed to prepare to animate previous step, "+o)}}centerOnCurrentStepAnimation(e){try{this.routeController.centerOnCurrentStep(e),this.logEvent("centerOnCurrentStepAnimation");}catch(n){let o=n instanceof Error?n.message:String(n);throw new Error("Error: Failed to center on current step animation, "+o)}}addUserLocationTracking(e,n,o){let c={lat:0,lng:0},s;if(o!=null)s=o;else {let P=new Image(40,40);P.src=QF,s=P;}let m={coordinate:c,icon:s,text:""},w=new uu(m);w.addToMap(this.map),this.userLocationMarker=w;let I=P=>{w.setLngLat([P.coords.longitude,P.coords.latitude]);};this.geoLocation=n??navigator.geolocation,this.watchPositionID=this.geoLocation.watchPosition(I,P=>{console.error("Error getting user location:",P);},{enableHighAccuracy:e});}removeUserLocationTracking(){this.userLocationMarker!==void 0&&(this.userLocationMarker.remove(),this.userLocationMarker=void 0,this.watchPositionID&&(this.geoLocation.clearWatch(this.watchPositionID),this.watchPositionID=void 0));}getBearing(){return this.map.getBearing()}addBorderToPlaces(e,n,o){try{this.hasLayer("indoor-bordered-places")||this.createBorderedPlacesLayer();let c=this.createBasicFilters(),m=["any",...e.map(I=>["==",["get","ref"],I])],w=["all",m,c];this.map.setFilter("indoor-bordered-places",w),this.baseFilters["indoor-bordered-places"]=m,n!==void 0&&o!==void 0&&(this.map.setPaintProperty("indoor-bordered-places","line-color",n),this.map.setPaintProperty("indoor-bordered-places","line-width",o));}catch(c){throw new Error("Failed to add border to places",{cause:c})}}createBorderedPlacesLayer(){let e={id:"indoor-bordered-places",type:"line",source:"indoorequal","source-layer":"area",filter:["all",["has","ref"],["==",["get","ref"],"unselected"]],paint:{"line-color":gp,"line-width":4}};this.map.addLayer(e);}clearBorderedPlaces(){if(this.hasLayer("indoor-bordered-places")){let e=["==",["get","ref"],"unselected"];this.baseFilters["indoor-bordered-places"]=e,this.map.setFilter("indoor-bordered-places",e);}}onWebGLContextLost(e){var n,o;e.originalEvent.preventDefault(),console.warn("Contexto WebGL perdido \u{1F622}");let c=(n=this===null||this===void 0?void 0:this.map)===null||n===void 0?void 0:n.getCanvas(),s=c?.getContext("webgl")||c?.getContext("webgl2");if(s&&s.isContextLost()){c.addEventListener("webglcontextrestored",()=>{console.debug("Contexto WebGL restaurado, forzando re-render"),this.map.triggerRepaint(),this.failedTiles.clear();},{once:true});let m=s.getExtension("WEBGL_lose_context");(o=m?.restoreContext)===null||o===void 0||o.call(m);}}onWebGLContextRestored(){console.debug("Evento webglcontextrestored recibido, haciendo map.redraw()"),this.map.redraw(),this.failedTiles.clear();}onSourceData(e){var n;if(e.source.type==="vector"&&e.sourceId==="indoorequal"&&e.tile&&!e.isSourceLoaded){let o=(n=e.tile)===null||n===void 0?void 0:n.state;(o==="errored"||o==="expired")&&this.failedTiles.add(e.tile);}}onSourceDataAbort(e){e.source.type==="vector"&&e.sourceId==="indoorequal"&&e.tile&&this.failedTiles.delete(e.tile);}subscribeToFailedTiles(){this.retryTimer||(this.boundOnSourceData=this.onSourceData.bind(this),this.boundOnSourceDataAbort=this.onSourceDataAbort.bind(this),this.boundOnWebGLContextLost=this.onWebGLContextLost.bind(this),this.boundOnWebGLContextRestored=this.onWebGLContextRestored.bind(this),this.retryTimer=setInterval(()=>{if(!this.map.getSource("indoorequal")){this.failedTiles.clear();return}let e=this.map.getSource("indoorequal");if(!e||e.type!=="vector"){this.failedTiles.clear();return}let n=[],o=[];this.failedTiles.forEach(s=>{if(!s||s.state==="unloaded"||s.state==="loading"){o.push(s);return}s.state==="errored"||s.state==="expired"?n.push(s):o.push(s);}),o.forEach(s=>this.failedTiles.delete(s));let c=Date.now();n.forEach(s=>{var m;let w=(m=this.tileRetryState.get(s))!==null&&m!==void 0?m:{attempts:0,nextAttemptAt:0,pending:false};if(w.pending||c<w.nextAttemptAt)return;let I=P=>{let L=w.attempts+1;if(L>=L6){this.debugLog(`Tile reload failed ${L} times, dropping it from the retry queue`,P),this.failedTiles.delete(s),this.tileRetryState.delete(s);return}let B=QQ*2**(L-1);this.debugLog(`Tile reload failed (attempt ${L}/${L6}), retrying in ${B}ms`,P),this.tileRetryState.set(s,{attempts:L,nextAttemptAt:Date.now()+B,pending:false});};try{s&&(s.state==="errored"||s.state==="expired")&&(this.tileRetryState.set(s,Object.assign(Object.assign({},w),{pending:!0})),e.loadTile(s).then(()=>{this.tileRetryState.delete(s);}).catch(I));}catch(P){I(P);}});},1e3),this.map.on("sourcedata",this.boundOnSourceData),this.map.on("sourcedataabort",this.boundOnSourceDataAbort),this.map.on("webglcontextlost",this.boundOnWebGLContextLost),this.map.on("webglcontextrestored",this.boundOnWebGLContextRestored));}unsubscribeFromFailedTiles(){this.retryTimer&&(clearInterval(this.retryTimer),this.retryTimer=void 0),this.boundOnSourceData&&(this.map.off("sourcedata",this.boundOnSourceData),this.boundOnSourceData=void 0),this.boundOnSourceDataAbort&&(this.map.off("sourcedataabort",this.boundOnSourceDataAbort),this.boundOnSourceDataAbort=void 0),this.boundOnWebGLContextLost&&(this.map.off("webglcontextlost",this.boundOnWebGLContextLost),this.boundOnWebGLContextLost=void 0),this.boundOnWebGLContextRestored&&(this.map.off("webglcontextrestored",this.boundOnWebGLContextRestored),this.boundOnWebGLContextRestored=void 0),this.failedTiles.clear();}};function j6(t){return t instanceof DeviceOrientationEvent}function $6(t){return typeof t=="string"?{id:t}:t}function TA(t,e){let o=Object.assign(Object.assign({},{lang:"en",apiUrl:"https://public-api.mapvx.com",cache:{persistent:false}}),e);return new e2(t,o)}var e2=class extends hu{constructor(e,n){var o,c,s;super(),this.maps=[],this.geoLocation=navigator.geolocation,this.headingListeners=[],this.token=e,this.config=n;let m=new ep({persistent:(o=n.cache)===null||o===void 0?void 0:o.persistent,maxStorageBytes:(c=n.cache)===null||c===void 0?void 0:c.maxStorageBytes,configs:(s=n.cache)===null||s===void 0?void 0:s.configs});this.repository=new Jf(e,this.config.lang,this.config.apiUrl,m,this.config.mapvxRequestContext),this.cachePlaces(),this.logEvent("initSDK");}cachePlaces(){this.repository.fetchAndParseAvailablePlaces().catch(()=>{});}setSdkLang(e){this.config.lang=e,this.repository.setLang(e),this.maps.forEach(n=>n.setLang(e));}unregisterMap(e){let n=this.maps.indexOf(e);n>=0&&this.maps.splice(n,1);}async getPlaceDetail(e){try{let n=$6(e),o=await this.repository.fetchAndParsePlaceDetail(n);return this.logEvent("getPlaceDetail",{id:n.id}),o}catch(n){throw new Error("Error getPlaceDetail",{cause:n})}}async getAnyPlaceDetail(e,n){try{let o=$6(e),c=await this.repository.fetchAndParseAnyPlaceDetail(o,n);return this.logEvent("getAnyPlaceDetail",{id:o.id}),c}catch(o){throw new Error("Error getAnyPlaceDetail",{cause:o})}}prepareSegmentation(e){return Object.assign(Object.assign({},e),{token:this.token})}createMap(e,n){try{n.lang=this.config.lang,n.apiUrl=this.config.apiUrl,n.mapvxRequestContext=this.config.mapvxRequestContext;let o=new Jx(n,e,this.token),c=o.destroyMap.bind(o);return o.destroyMap=()=>{try{c();}finally{this.unregisterMap(o);}},this.maps.push(o),this.logEvent("createMap"),o}catch(o){throw new Error("Failed to create map",{cause:o})}}async getConfiguration(e,n){try{let o=await this.repository.fetchAndParseConfiguration(e,n);return this.logEvent("configuration"),o}catch(o){throw new Error("Failed to get configuration",{cause:o})}}async getCategories(e){try{let n=await this.repository.fetchAndParseCategories(e);return this.logEvent("categories"),n}catch(n){throw new Error("Failed to get categories",{cause:n})}}async getTransport(e){try{return await this.repository.fetchAndParseTransport(e)}catch(n){throw new Error("Failed to get transport",{cause:n})}}getCachedPlaces(e){try{let n=this.repository.getCachedPlaces(e);return this.logEvent("getCachedPlaces"),n}catch(n){throw new Error("Failed to get cached places",{cause:n})}}async getAvailablePlaces(){try{let e=await this.repository.fetchAndParseAvailablePlaces();return this.logEvent("getAvailablePlaces"),e}catch(e){throw new Error("Failed to get available places",{cause:e})}}async getSubPlaces(e){try{let n=await this.repository.fetchAndParseSubPlaces(e);return this.logEvent("getSubPlaces"),n}catch(n){throw new Error("Failed to get subplaces",{cause:n})}}async getPlacesFromInstitution(e,n){try{let o=await this.repository.fetchAndParsePlacesFromInstitution(e,n);return this.logEvent("getPlacesFromInstitution"),o}catch(o){throw new Error("Failed to get places from institution",{cause:o})}}async getAnySubPlaces(e,n){try{let o=await this.repository.fetchAndParseAnySubPlaces(e,n);return this.logEvent("getAnySubPlaces"),o}catch(o){throw new Error("Failed to get any sub-places",{cause:o})}}async getInstitutions(){try{let e=await this.repository.fetchAndParseInstitutions();return this.logEvent("getInstitutions"),e}catch(e){throw new Error("Error getInstitution",{cause:e})}}async getRoute(e){try{let n=new Uo(e),o=await this.repository.fetchAndParseRoute(n);return this.logEvent("getRoute"),o}catch(n){throw new Error("Failed to get route",{cause:n})}}async getRouteV2(e){try{let n=new Uo(e),o=await this.repository.fetchAndParseRouteV2(n);return this.logEvent("getRouteV2"),o}catch(n){throw new Error("Failed to get route",{cause:n})}}async getLiveRoute(e){try{let n=new Uo(e),o=await this.repository.fetchAndParseLiveRoute(n);return this.logEvent("getLiveRoute"),o}catch(n){throw new Error("Failed to get route",{cause:n})}}async getPlacesByInput(e,n,o,c,s,m,w,I){try{let P=o?c?[o,...c]:[o]:c,L=await this.repository.fetchAndParseSearchResults(n,e,P,s,m,w,I);return this.logEvent("getPlacesByInput"),L}catch(P){throw new Error("Failed to get places by input",{cause:P})}}async searchPlacesByTags(e,n,o={}){if(!n||n.length===0)throw new Error("searchPlacesByTags requires at least one tag");let{parentPlaces:c,sort:s,origin:m,lat:w,lng:I,floor:P}=o;if(s==="distance"){let L=w!=null&&I!=null&&P!=null&&c!=null&&c.length>0;if(!m&&!L)throw new Error('searchPlacesByTags with sort "distance" requires "origin" or "lat" + "lng" + "floor" + "parentPlaces"')}try{let L=await this.repository.fetchAndParseSearchPlacesByTags(e,n,c,s,m,w,I,P);return this.logEvent("searchPlacesByTags"),L}catch(L){throw new Error("Failed to search places by tags",{cause:L})}}async getPlacesByCategory(e){try{return this.logEvent("getPlacesByCategory"),[]}catch(n){throw new Error("Failed to get places by category",{cause:n})}}setGeoLocation(e){this.geoLocation=e;}getUserLocation(e={enableHighAccuracy:true,timeout:60*1e3,maximumAge:10*1e3}){return new Promise((n,o)=>{this.geoLocation.getCurrentPosition(c=>{n(c);},c=>{o(c);},e);})}watchUserPosition(e,n,o={enableHighAccuracy:true,timeout:60*1e3,maximumAge:1e3}){return this.geoLocation.watchPosition(c=>{e(c);},c=>{n(c);},o)}unWatchUserPosition(e){this.geoLocation.clearWatch(e);}watchUserHeading(e,n){let o=c=>{if(!j6(c))return;let s=null;c.webkitCompassHeading!==void 0?s=c.webkitCompassHeading||null:c.absolute&&c.alpha!==null&&(s=360-c.alpha),s!==null?e(s):n("Could not retrieve heading information.");};this.headingListeners.push(o),"ondeviceorientationabsolute"in window?window.addEventListener("deviceorientationabsolute",o):"ondeviceorientation"in window&&window.addEventListener("deviceorientation",o);}unwatchUserHeading(){this.headingListeners.forEach(e=>{window.removeEventListener("deviceorientationabsolute",e),window.removeEventListener("deviceorientation",e);}),this.headingListeners=[];}static getLang(){return this.config.lang}async loadRoutesForOriginCache(e,n,o,c,s){await this.repository.fetchAndParseRoutesFromOrigin(e,n,o,c,s);}async getCacheTimestamp(e){try{let n=await this.repository.fetchAndParseCacheTimestamp(e);return this.logEvent("getCacheTimestamp"),n}catch(n){throw new Error("Failed to get cache timestamp",{cause:n})}}cleanRoutesCache(){this.repository.cleanRoutesCache();}async getCssCustomization(e){try{let n=await this.repository.fetchAndParseCssCustomization(e);return this.logEvent("cssCustomization"),n}catch(n){throw new Error("Failed to get css customization",{cause:n})}}async notifyHealth(e,n,o,c){try{return await this.repository.postAndParseHealthPing(e,n,o,c)}catch(s){throw new Error("Failed to notify health",{cause:s})}}};var wo=class t{logger=se(Tt);_sdk;get sdk(){if(this._sdk!=null)return this._sdk;throw this.logger.log("Called sdk access without sdk initialized"),new Error("SDK not initialized")}initialize(e,n="en"){this._sdk=TA(e,{lang:n});}isInitialized(){return this._sdk!=null}createMap(e,n){return this.sdk.createMap(e,n)}async getAvailablePlaces(){return this.sdk.getAvailablePlaces()}async getSubPlaces(e){return this.sdk.getSubPlaces(e)}async getConfiguration(){return this.sdk.getConfiguration()}async searchPlaces(e,n){return this.sdk.getPlacesByInput(e,n)}async getInstitutions(){return this.sdk.getInstitutions()}async getPlaceDetail(e){return this.sdk.getPlaceDetail(e)}async getRoute(e,n){let o={initialLocation:Bs(e)?e.position:{id:e.mapvxId},finalLocation:Bs(n)?n.position:{id:n.mapvxId}};return this.sdk.getRouteV2(o)}watchUserLocation(e,n){return this.sdk.watchUserPosition(o=>e(I1(o)),o=>n(new Error("Error watching user location",{cause:o})))}stopWatchingUserLocation(e){this.sdk.unWatchUserPosition(e);}watchUserHeading(e,n){return this.sdk.watchUserHeading(e,o=>n(new Error(`Error watching user bearing: ${o}`)))}stopWatchingUserHeading(){this.sdk.unwatchUserHeading();}static \u0275fac=function(n){return new(n||t)};static \u0275prov=ct({token:t,factory:t.\u0275fac,providedIn:"root"})};var tr=class t{onDestroy=new an;logger=se(Tt);sdkService=se(wo);loadedDataService=se(In);_map;mapReady=new Cn(false);rotation=new Cn(0);configuration;currentParentPlaceId;currentFloorId=dt(void 0);get map(){if(this._map!=null)return this._map;throw this.logger.log("Called map access without map created"),new Error("Map not created")}ngOnDestroy(){this.mapReady.complete(),this.onDestroy.next(),this.onDestroy.complete();}createMap(e,n){this.mapReady.next(false),this._map!=null?(this.logger.log("====> map already exists, waiting for container to be ready"),this.waitForMapContainer(e,this._map.getContainer(),n)):(this.logger.log("====> map does not exist, creating new map"),this.loadedDataService.getConfiguration().pipe(ni(this.onDestroy)).subscribe(o=>{this.configuration=o;let c={zoom:o.initialZoom??15,center:o.initialCenter??{lat:0,lng:0},maxZoom:o.limitZoomIn,minZoom:o.limitZoomOut,lang:o.defaultLanguage,maxBounds:o.pointsOfInterest,otherPotentialParentPlacesIds:o.potentialParentPlaces,onMapReady:()=>{n?.(),this.mapReady.next(true);},onRotate:s=>{this.rotation.next(s);},onFloorChange:s=>{this.currentFloorId.set(s);}};this._map=this.sdkService.createMap(e,c);}));}waitForMapContainer(e,n,o){let s=0,m=()=>{s++;try{e.replaceWith(n),o?.(),this.mapReady.next(!0);return}catch{this.logger.log(`Map container not ready yet, attempt ${s}/100`);}s<100?setTimeout(m,100):(this.logger.logWarning("Map container not available after maximum attempts, creating new map"),this._map?.destroyMap(),this._map=void 0,this.mapReady.next(false),this.createMap(e,o));};m();}waitUntilMapReady(e){return Oo([e,this.mapReady]).pipe(mr(([,n])=>n),Qt(([n])=>n))}waitUntilMapIsReady(){return e=>this.waitUntilMapReady(e)}removeAllMarkers(){try{this.map.removeAllMarkers();}catch(e){this.logger.logWarning("Error removing all markers",e);}}removeMarker(e){try{this.map.removeMarker(e);}catch(n){this.logger.logWarning("Error removing marker",n);}}addMarker(e){try{this.map.addMarker(e);}catch(n){this.logger.logWarning("Error adding marker",n);}}updateMarkerPosition(e,n){try{this.map.updateMarkerPosition(e,n),this.logger.log("Update marker position success with arguments ",e,n);}catch(o){this.logger.log("Update marker position failed with arguments ",e,n),this.logger.logWarning(new Error("Update marker position failed",{cause:o}));}}updateZoomLevelOn(e){let n=this.map.getZoomLevel();try{this.map.updateCamera({zoom:n+e});}catch(o){this.logger.logWarning("Error updating zoom level",o);}}updateToInitialCamera(){try{this.map.updateCamera({center:this.configuration?.initialCenter??{lat:0,lng:0},zoom:this.configuration?.initialZoom??15,pitch:this.configuration?.initialPitch??0,bearing:0});}catch(e){this.logger.logWarning("Error updating to initial camera",e);}}updateCamera(e,n){try{this.map.updateCamera(e,n);}catch(o){this.logger.logWarning("Error updating camera",o);}}fitCoordinates(e,n){try{let o=this.map.getBearing();this.logger.log(`Current map bearing is ${o}`),this.map.fitCoordinates(e,r$1({bearing:o},n));}catch(o){this.logger.log("Fit coordinates failed with arguments ",e,n),this.logger.logWarning(new Error("Fit coordinates failed",{cause:o}));}}fitRoute(e,n,o,c){let s=[e,n,...o.legs.flatMap(w=>w.steps.flatMap(I=>I.coordinates))],m=this.map.getBearing();try{this.map.fitCoordinates(s,r$1({bearing:m},c));}catch(w){this.logger.log("Fit route failed with arguments ",o,c),this.logger.logWarning(new Error("Fit route failed",{cause:w}));}}startAnimatingRoute(e,n,o){try{this.map.startAnimateRouteV2(e,n,o).catch(c=>{this.logger.logWarning("Error starting animating route",c);});}catch(c){this.logger.logWarning("Error starting animating route",c);}}addStepAnimation(e,n,o){try{this.map.addStepAnimationV2(e,n,o).catch(c=>{this.logger.logWarning("Error adding step animation",c);});}catch(c){this.logger.logWarning("Error adding step animation",c);}}nextStepAnimation(){try{this.map.nextStepAnimation();}catch(e){this.logger.logWarning("Error animating next step",e);}}previousStepAnimation(){try{this.map.previousStepAnimation();}catch(e){this.logger.logWarning("Error animating previous step",e);}}centerOnCurrentStepAnimation(){try{this.map.centerOnCurrentStepAnimation();}catch(e){this.logger.logWarning("Error centering on current step",e);}}pauseAnimatingRoute(){try{this.map.pauseAnimateRoute();}catch(e){this.logger.logWarning("Error pausing animating route",e);}}resumeAnimatingRoute(){try{this.map.resumeAnimateRoute();}catch(e){this.logger.logWarning("Error resuming animating route",e);}}restartAnimatingRoute(){try{this.map.restartAnimateRoute();}catch(e){this.logger.logWarning("Error restarting animating route",e);}}removeRoute(){try{this.map.removeRoute();}catch(e){this.logger.logWarning("Error removing route",e);}}parentPlaceReady=Promise.resolve();setParentPlace(e,n){try{let o=e.mapvxId!==this.currentParentPlaceId;this.currentParentPlaceId=e.mapvxId,this.parentPlaceReady=new Promise(c=>{let s=()=>{n?.(),c();};this.map.setParentPlace(e,o,s),o||s();});}catch(o){this.logger.logWarning("Error setting parent place",o),this.parentPlaceReady=Promise.resolve();}}waitForParentPlaceReady(){return this.parentPlaceReady}updateFloor(e){try{this.map.updateFloor(e),this.currentFloorId.set(e);}catch(n){this.logger.logWarning("Error updating floor",n);}}removeParentPlace(){try{this.map.removeParentPlace(),this.currentParentPlaceId=void 0;}catch(e){this.logger.logWarning("Error removing parent place and floor",e);}}prepareToReuse(){this.mapReady.next(false);}static \u0275fac=function(n){return new(n||t)};static \u0275prov=ct({token:t,factory:t.\u0275fac,providedIn:"root"})};var MA={};w(MA,{faAdd:()=>UJ,faArrowDown:()=>yJ,faArrowDownArrowUp:()=>Y6,faArrowDownFromArc:()=>MJ,faArrowDownFromBracket:()=>qee,faArrowDownFromDottedLine:()=>xee,faArrowDownFromLine:()=>p8,faArrowDownLeft:()=>Bee,faArrowDownLong:()=>r8,faArrowDownLongToLine:()=>bJ,faArrowDownRight:()=>lJ,faArrowDownToArc:()=>sJ,faArrowDownToBracket:()=>ete,faArrowDownToLine:()=>g8,faArrowFromBottom:()=>ZJ,faArrowFromLeft:()=>ree,faArrowFromRight:()=>Eee,faArrowFromTop:()=>jee,faArrowLeft:()=>HJ,faArrowLeftArrowRight:()=>IJ,faArrowLeftFromArc:()=>VJ,faArrowLeftFromBracket:()=>hJ,faArrowLeftFromDottedLine:()=>Wee,faArrowLeftFromLine:()=>s8,faArrowLeftLong:()=>l8,faArrowLeftLongToLine:()=>ote,faArrowLeftRotate:()=>TJ,faArrowLeftToArc:()=>mee,faArrowLeftToBracket:()=>vte,faArrowLeftToDottedLine:()=>$J,faArrowLeftToLine:()=>h8,faArrowPointer:()=>G6,faArrowProgress:()=>zee,faArrowRight:()=>gee,faArrowRightArrowLeft:()=>e8,faArrowRightFromArc:()=>Cee,faArrowRightFromBracket:()=>n8,faArrowRightFromDottedLine:()=>GJ,faArrowRightFromLine:()=>i8,faArrowRightLong:()=>_8,faArrowRightLongToLine:()=>iJ,faArrowRightRotate:()=>OJ,faArrowRightToArc:()=>wJ,faArrowRightToBracket:()=>m8,faArrowRightToDottedLine:()=>xJ,faArrowRightToLine:()=>v8,faArrowRotateBack:()=>CJ,faArrowRotateBackward:()=>DJ,faArrowRotateForward:()=>NJ,faArrowRotateLeft:()=>Rv,faArrowRotateRight:()=>t2,faArrowToBottom:()=>Jee,faArrowToLeft:()=>Gee,faArrowToRight:()=>rte,faArrowToTop:()=>XJ,faArrowTrendDown:()=>rJ,faArrowTrendUp:()=>_te,faArrowTurnDown:()=>o8,faArrowTurnDownLeft:()=>ute,faArrowTurnDownRight:()=>Qee,faArrowTurnLeft:()=>mte,faArrowTurnLeftDown:()=>bee,faArrowTurnLeftUp:()=>xte,faArrowTurnRight:()=>uJ,faArrowTurnUp:()=>a8,faArrowUTurnDownLeft:()=>PJ,faArrowUTurnDownRight:()=>See,faArrowUTurnLeftDown:()=>vJ,faArrowUTurnLeftUp:()=>Dee,faArrowUTurnRightDown:()=>Aee,faArrowUTurnRightUp:()=>kee,faArrowUTurnUpLeft:()=>wte,faArrowUTurnUpRight:()=>see,faArrowUp:()=>Tee,faArrowUpArrowDown:()=>H6,faArrowUpFromArc:()=>wee,faArrowUpFromBracket:()=>Nee,faArrowUpFromDottedLine:()=>Vee,faArrowUpFromLine:()=>J6,faArrowUpLeft:()=>$ee,faArrowUpLong:()=>d8,faArrowUpLongToLine:()=>qJ,faArrowUpRight:()=>oee,faArrowUpRightAndArrowDownLeftFromCenter:()=>Uee,faArrowUpToArc:()=>KJ,faArrowUpToBracket:()=>aJ,faArrowUpToDottedLine:()=>bte,faArrowUpToLine:()=>t8,faArrowsCross:()=>cee,faArrowsDownToLine:()=>fee,faArrowsH:()=>zJ,faArrowsLeftRight:()=>X6,faArrowsRepeat:()=>Q6,faArrowsRetweet:()=>q6,faArrowsRotate:()=>CA,faArrowsRotateReverse:()=>oJ,faArrowsSpin:()=>pte,faArrowsSplitUpAndLeft:()=>Hee,faArrowsTurnRight:()=>yee,faArrowsUpDown:()=>f8,faArrowsV:()=>Yee,faBadgeDollar:()=>FJ,faBuildingMagnifyingGlass:()=>Zee,faCaretDown:()=>kJ,faCaretUp:()=>WJ,faChevronLeft:()=>iee,faChevronRight:()=>tte,faCircle:()=>Oee,faCircleNotch:()=>ite,faCircleSmall:()=>hte,faClockThree:()=>yte,faClose:()=>uee,faEllipsis:()=>S8,faEllipsisH:()=>dte,faEllipsisHAlt:()=>cte,faEllipsisStroke:()=>w8,faEllipsisStrokeVertical:()=>c8,faEllipsisV:()=>nte,faEllipsisVAlt:()=>Lee,faEllipsisVertical:()=>y8,faExchange:()=>YJ,faFilter:()=>fte,faGrid2:()=>SJ,faLevelDown:()=>vee,faLevelUp:()=>Mee,faLocation:()=>mJ,faLocationArrow:()=>Kee,faLocationArrowUp:()=>BJ,faLocationCrosshairs:()=>W6,faLocationDot:()=>Z6,faLongArrowDown:()=>JJ,faLongArrowLeft:()=>Ree,faLongArrowRight:()=>ste,faLongArrowUp:()=>Fee,faMagnifyingGlass:()=>b8,faMapLocationDot:()=>x8,faMapMarkedAlt:()=>lte,faMapMarkerAlt:()=>gJ,faMinus:()=>E8,faMousePointer:()=>cJ,faMultiply:()=>dee,faPause:()=>_J,faPlay:()=>Iee,faPlayPause:()=>_ee,faPlus:()=>K6,faQuestionSquare:()=>AA,faRedo:()=>LJ,faRedoAlt:()=>aee,faRefresh:()=>dJ,faRemove:()=>pee,faRepeatAlt:()=>jJ,faRetweetAlt:()=>fJ,faRotate:()=>I8,faRotateBack:()=>eee,faRotateBackward:()=>tee,faRotateForward:()=>lee,faRotateLeft:()=>n2,faRotateReverse:()=>RJ,faRotateRight:()=>DA,faSearch:()=>ate,faSignIn:()=>Xee,faSignOut:()=>QJ,faSortAlt:()=>EJ,faSortUpDown:()=>nJ,faSquareQuestion:()=>u8,faSubtract:()=>gte,faSwapArrows:()=>Pee,faSync:()=>pJ,faSyncAlt:()=>Ste,faTimes:()=>hee,faUndo:()=>AJ,faUndoAlt:()=>nee,faXmark:()=>kv});var H6={prefix:"fas",iconName:"arrow-up-arrow-down",icon:[512,512,["sort-up-down"],"e099","M150.6 9.4c-12.5-12.5-32.8-12.5-45.3 0l-96 96c-12.5 12.5-12.5 32.8 0 45.3s32.8 12.5 45.3 0L96 109.3 96 480c0 17.7 14.3 32 32 32s32-14.3 32-32l0-370.7 41.4 41.4c12.5 12.5 32.8 12.5 45.3 0s12.5-32.8 0-45.3l-96-96zm352 397.3c12.5-12.5 12.5-32.8 0-45.3s-32.8-12.5-45.3 0L416 402.7 416 32c0-17.7-14.3-32-32-32s-32 14.3-32 32l0 370.7-41.4-41.4c-12.5-12.5-32.8-12.5-45.3 0s-12.5 32.8 0 45.3l96 96c12.5 12.5 32.8 12.5 45.3 0l96-96z"]},nJ=H6,rJ={prefix:"fas",iconName:"arrow-trend-down",icon:[576,512,[],"e097","M384 352c-17.7 0-32 14.3-32 32s14.3 32 32 32l160 0c17.7 0 32-14.3 32-32l0-160c0-17.7-14.3-32-32-32s-32 14.3-32 32l0 82.7-169.4-169.4c-12.5-12.5-32.8-12.5-45.3 0L192 242.7 54.6 105.4c-12.5-12.5-32.8-12.5-45.3 0s-12.5 32.8 0 45.3l160 160c12.5 12.5 32.8 12.5 45.3 0L320 205.3 466.7 352 384 352z"]},iJ={prefix:"fas",iconName:"arrow-right-long-to-line",icon:[640,512,[],"e3d5","M640 128c0-17.7-14.3-32-32-32s-32 14.3-32 32l0 256c0 17.7 14.3 32 32 32s32-14.3 32-32l0-256zM374.6 105.4c-12.5-12.5-32.8-12.5-45.3 0s-12.5 32.8 0 45.3L402.7 224 32 224c-17.7 0-32 14.3-32 32s14.3 32 32 32l370.7 0-73.4 73.4c-12.5 12.5-12.5 32.8 0 45.3s32.8 12.5 45.3 0l128-128c12.5-12.5 12.5-32.8 0-45.3l-128-128z"]},oJ={prefix:"fas",iconName:"arrows-rotate-reverse",icon:[512,512,[],"e630","M446.1 228.5c-13.3-93-93.4-164.5-190.1-164.5-53 0-101 21.5-135.8 56.2-.2 .2-.4 .4-.6 .6l-7.6 7.2 47.9 0c17.7 0 32 14.3 32 32s-14.3 32-32 32L32 192c-17.7 0-32-14.3-32-32L0 32C0 14.3 14.3 0 32 0S64 14.3 64 32l0 53.4 11.3-10.7C121.5 28.6 185.5 0 256 0 385 0 491.7 95.4 509.4 219.5 511.9 237 499.8 253.2 482.3 255.7s-33.7-9.7-36.2-27.1zM2.6 292.5C.1 275 12.2 258.8 29.7 256.3s33.7 9.7 36.2 27.1c13.3 93 93.4 164.5 190.1 164.5 53 0 101-21.5 135.8-56.2 .2-.2 .4-.4 .6-.6l7.6-7.2-47.9 0c-17.7 0-32-14.3-32-32s14.3-32 32-32l128 0c8.5 0 16.7 3.4 22.7 9.5s9.3 14.3 9.3 22.8l-1 127c-.1 17.7-14.6 31.9-32.3 31.7s-31.9-14.6-31.7-32.3l.4-51.5-10.7 10.1C390.5 483.4 326.5 512 256 512 127 512 20.3 416.6 2.6 292.5z"]},sJ={prefix:"fas",iconName:"arrow-down-to-arc",icon:[512,512,[],"e4ae","M256 448c106 0 192-86 192-192 0-17.7 14.3-32 32-32s32 14.3 32 32c0 141.4-114.6 256-256 256S0 397.4 0 256c0-17.7 14.3-32 32-32s32 14.3 32 32c0 106 86 192 192 192zm22.6-105.4c-12.5 12.5-32.8 12.5-45.3 0l-96-96c-12.5-12.5-12.5-32.8 0-45.3s32.8-12.5 45.3 0L224 242.7 224 32c0-17.7 14.3-32 32-32s32 14.3 32 32l0 210.7 41.4-41.4c12.5-12.5 32.8-12.5 45.3 0s12.5 32.8 0 45.3l-96 96z"]},aJ={prefix:"fas",iconName:"arrow-up-to-bracket",icon:[448,512,[],"e66a","M64 160l0-64c0-17.7 14.3-32 32-32l256 0c17.7 0 32 14.3 32 32l0 64c0 17.7 14.3 32 32 32s32-14.3 32-32l0-64c0-53-43-96-96-96L96 0C43 0 0 43 0 96l0 64c0 17.7 14.3 32 32 32s32-14.3 32-32zm182.6 9.4c-12.5-12.5-32.8-12.5-45.3 0l-128 128c-12.5 12.5-12.5 32.8 0 45.3s32.8 12.5 45.3 0L192 269.3 192 480c0 17.7 14.3 32 32 32s32-14.3 32-32l0-210.7 73.4 73.4c12.5 12.5 32.8 12.5 45.3 0s12.5-32.8 0-45.3l-128-128z"]},lJ={prefix:"fas",iconName:"arrow-down-right",icon:[384,512,[],"e093","M352 448c17.7 0 32-14.3 32-32l0-224c0-17.7-14.3-32-32-32s-32 14.3-32 32L320 338.7 54.6 73.4c-12.5-12.5-32.8-12.5-45.3 0s-12.5 32.8 0 45.3L274.7 384 128 384c-17.7 0-32 14.3-32 32s14.3 32 32 32l224 0z"]},G6={prefix:"fas",iconName:"arrow-pointer",icon:[448,512,["mouse-pointer"],"f245","M77.3 2.5c8.1-4.1 17.9-3.2 25.1 2.3l320 239.9c8.3 6.2 11.6 17 8.4 26.8s-12.4 16.4-22.8 16.4l-152.3 0 88.9 177.7c7.9 15.8 1.5 35-14.3 42.9s-35 1.5-42.9-14.3l-88.9-177.7-91.3 121.8c-6.2 8.3-17 11.6-26.8 8.4S64 434.3 64 424L64 24c0-9.1 5.1-17.4 13.3-21.5z"]},cJ=G6,uJ={prefix:"fas",iconName:"arrow-turn-right",icon:[512,512,[],"e635","M64 416c0 17.7-14.3 32-32 32S0 433.7 0 416l0-96c0-53 43-96 96-96l306.7 0-73.4-73.4c-12.5-12.5-12.5-32.8 0-45.3s32.8-12.5 45.3 0l128 128c12.5 12.5 12.5 32.8 0 45.3l-128 128c-12.5 12.5-32.8 12.5-45.3 0s-12.5-32.8 0-45.3L402.7 288 96 288c-17.7 0-32 14.3-32 32l0 96z"]},CA={prefix:"fas",iconName:"arrows-rotate",icon:[512,512,[128472,"refresh","sync"],"f021","M65.9 228.5c13.3-93 93.4-164.5 190.1-164.5 53 0 101 21.5 135.8 56.2 .2 .2 .4 .4 .6 .6l7.6 7.2-47.9 0c-17.7 0-32 14.3-32 32s14.3 32 32 32l128 0c17.7 0 32-14.3 32-32l0-128c0-17.7-14.3-32-32-32s-32 14.3-32 32l0 53.4-11.3-10.7C390.5 28.6 326.5 0 256 0 127 0 20.3 95.4 2.6 219.5 .1 237 12.2 253.2 29.7 255.7s33.7-9.7 36.2-27.1zm443.5 64c2.5-17.5-9.7-33.7-27.1-36.2s-33.7 9.7-36.2 27.1c-13.3 93-93.4 164.5-190.1 164.5-53 0-101-21.5-135.8-56.2-.2-.2-.4-.4-.6-.6l-7.6-7.2 47.9 0c17.7 0 32-14.3 32-32s-14.3-32-32-32L32 320c-8.5 0-16.7 3.4-22.7 9.5S-.1 343.7 0 352.3l1 127c.1 17.7 14.6 31.9 32.3 31.7S65.2 496.4 65 478.7l-.4-51.5 10.7 10.1c46.3 46.1 110.2 74.7 180.7 74.7 129 0 235.7-95.4 253.4-219.5z"]},dJ=CA,pJ=CA,hJ={prefix:"fas",iconName:"arrow-left-from-bracket",icon:[512,512,[],"e668","M352 416c-17.7 0-32 14.3-32 32s14.3 32 32 32l64 0c53 0 96-43 96-96l0-256c0-53-43-96-96-96l-64 0c-17.7 0-32 14.3-32 32s14.3 32 32 32l64 0c17.7 0 32 14.3 32 32l0 256c0 17.7-14.3 32-32 32l-64 0zM9.4 233.4c-12.5 12.5-12.5 32.8 0 45.3l128 128c12.5 12.5 32.8 12.5 45.3 0s12.5-32.8 0-45.3L109.3 288 320 288c17.7 0 32-14.3 32-32s-14.3-32-32-32l-210.7 0 73.4-73.4c12.5-12.5 12.5-32.8 0-45.3s-32.8-12.5-45.3 0l-128 128z"]},q6={prefix:"fas",iconName:"arrows-retweet",icon:[576,512,["retweet-alt"],"f361","M118.6 41.4c-12.5-12.5-32.8-12.5-45.3 0l-64 64c-12.5 12.5-12.5 32.8 0 45.3s32.8 12.5 45.3 0L64 141.3 64 384c0 53 43 96 96 96l128 0c17.7 0 32-14.3 32-32s-14.3-32-32-32l-128 0c-17.7 0-32-14.3-32-32l0-242.7 9.4 9.4c12.5 12.5 32.8 12.5 45.3 0s12.5-32.8 0-45.3l-64-64zM457.4 470.6c12.5 12.5 32.8 12.5 45.3 0l64-64c12.5-12.5 12.5-32.8 0-45.3s-32.8-12.5-45.3 0l-9.4 9.4 0-242.7c0-53-43-96-96-96L288 32c-17.7 0-32 14.3-32 32s14.3 32 32 32l128 0c17.7 0 32 14.3 32 32l0 242.7-9.4-9.4c-12.5-12.5-32.8-12.5-45.3 0s-12.5 32.8 0 45.3l64 64z"]},fJ=q6,W6={prefix:"fas",iconName:"location-crosshairs",icon:[576,512,["location"],"f601","M288-16c17.7 0 32 14.3 32 32l0 18.3c98.1 14 175.7 91.6 189.7 189.7l18.3 0c17.7 0 32 14.3 32 32s-14.3 32-32 32l-18.3 0c-14 98.1-91.6 175.7-189.7 189.7l0 18.3c0 17.7-14.3 32-32 32s-32-14.3-32-32l0-18.3C157.9 463.7 80.3 386.1 66.3 288L48 288c-17.7 0-32-14.3-32-32s14.3-32 32-32l18.3 0C80.3 125.9 157.9 48.3 256 34.3L256 16c0-17.7 14.3-32 32-32zM128 256a160 160 0 1 0 320 0 160 160 0 1 0 -320 0zm160-96a96 96 0 1 1 0 192 96 96 0 1 1 0-192z"]},mJ=W6,Z6={prefix:"fas",iconName:"location-dot",icon:[384,512,["map-marker-alt"],"f3c5","M0 188.6C0 84.4 86 0 192 0S384 84.4 384 188.6c0 119.3-120.2 262.3-170.4 316.8-11.8 12.8-31.5 12.8-43.3 0-50.2-54.5-170.4-197.5-170.4-316.8zM192 256a64 64 0 1 0 0-128 64 64 0 1 0 0 128z"]},gJ=Z6,yJ={prefix:"fas",iconName:"arrow-down",icon:[384,512,[8595],"f063","M169.4 502.6c12.5 12.5 32.8 12.5 45.3 0l160-160c12.5-12.5 12.5-32.8 0-45.3s-32.8-12.5-45.3 0L224 402.7 224 32c0-17.7-14.3-32-32-32s-32 14.3-32 32l0 370.7-105.4-105.4c-12.5-12.5-32.8-12.5-45.3 0s-12.5 32.8 0 45.3l160 160z"]},vJ={prefix:"fas",iconName:"arrow-u-turn-left-down",icon:[576,512,[],"e7e9","M180.7 504.8c-12.6 10.3-31.1 9.5-42.8-2.2l-112-112c-12.5-12.5-12.5-32.8 0-45.2s32.8-12.5 45.2 0l57.4 57.4 0-210.7C128.5 89.3 209.2 5.4 310.6 .3l9.9-.2c106 0 192 86 192 192l0 224-.2 3.3c-1.6 16.1-15.3 28.7-31.8 28.7s-30.2-12.6-31.8-28.7l-.2-3.3 0-224c0-70.7-57.3-128-128-128l-6.6 .2C246.3 67.6 192.5 123.5 192.5 192l0 210.7 57.4-57.4 2.4-2.2c12.6-10.2 31.1-9.5 42.8 2.2s12.4 30.2 2.2 42.8l-2.2 2.4-112 112-2.4 2.2z"]},_J={prefix:"fas",iconName:"pause",icon:[384,512,[9208],"f04c","M48 32C21.5 32 0 53.5 0 80L0 432c0 26.5 21.5 48 48 48l64 0c26.5 0 48-21.5 48-48l0-352c0-26.5-21.5-48-48-48L48 32zm224 0c-26.5 0-48 21.5-48 48l0 352c0 26.5 21.5 48 48 48l64 0c26.5 0 48-21.5 48-48l0-352c0-26.5-21.5-48-48-48l-64 0z"]},bJ={prefix:"fas",iconName:"arrow-down-long-to-line",icon:[320,512,[],"e6b7","M9.4 310.6c-12.5-12.5-12.5-32.8 0-45.3s32.8-12.5 45.3 0L128 338.7 128-32c0-17.7 14.3-32 32-32s32 14.3 32 32l0 370.7 73.4-73.4c12.5-12.5 32.8-12.5 45.3 0s12.5 32.8 0 45.3l-128 128c-12.5 12.5-32.8 12.5-45.3 0l-128-128zM32 576c-17.7 0-32-14.3-32-32s14.3-32 32-32l256 0c17.7 0 32 14.3 32 32s-14.3 32-32 32L32 576z"]},xJ={prefix:"fas",iconName:"arrow-right-to-dotted-line",icon:[512,512,[],"e6bc","M480 448a32 32 0 1 0 0-64 32 32 0 1 0 0 64zM374.6 278.6c12.5-12.5 12.5-32.8 0-45.3l-128-128c-12.5-12.5-32.8-12.5-45.3 0s-12.5 32.8 0 45.3L274.7 224 32 224c-17.7 0-32 14.3-32 32s14.3 32 32 32l242.7 0-73.4 73.4c-12.5 12.5-12.5 32.8 0 45.3s32.8 12.5 45.3 0l128-128zM512 309.3a32 32 0 1 0 -64 0 32 32 0 1 0 64 0zm-32-74.7a32 32 0 1 0 0-64 32 32 0 1 0 0 64zM512 96a32 32 0 1 0 -64 0 32 32 0 1 0 64 0z"]},wJ={prefix:"fas",iconName:"arrow-right-to-arc",icon:[512,512,[],"e4b2","M448 256c0 106-86 192-192 192-17.7 0-32 14.3-32 32s14.3 32 32 32c141.4 0 256-114.6 256-256S397.4 0 256 0c-17.7 0-32 14.3-32 32s14.3 32 32 32c106 0 192 86 192 192zM342.6 278.6c12.5-12.5 12.5-32.8 0-45.3l-96-96c-12.5-12.5-32.8-12.5-45.3 0s-12.5 32.8 0 45.3L242.7 224 32 224c-17.7 0-32 14.3-32 32s14.3 32 32 32l210.7 0-41.4 41.4c-12.5 12.5-12.5 32.8 0 45.3s32.8 12.5 45.3 0l96-96z"]},SJ={prefix:"fas",iconName:"grid-2",icon:[448,512,[],"e196","M192 80c0-26.5-21.5-48-48-48L48 32C21.5 32 0 53.5 0 80l0 96c0 26.5 21.5 48 48 48l96 0c26.5 0 48-21.5 48-48l0-96zm0 256c0-26.5-21.5-48-48-48l-96 0c-26.5 0-48 21.5-48 48l0 96c0 26.5 21.5 48 48 48l96 0c26.5 0 48-21.5 48-48l0-96zM256 80l0 96c0 26.5 21.5 48 48 48l96 0c26.5 0 48-21.5 48-48l0-96c0-26.5-21.5-48-48-48l-96 0c-26.5 0-48 21.5-48 48zM448 336c0-26.5-21.5-48-48-48l-96 0c-26.5 0-48 21.5-48 48l0 96c0 26.5 21.5 48 48 48l96 0c26.5 0 48-21.5 48-48l0-96z"]},Y6={prefix:"fas",iconName:"arrow-down-arrow-up",icon:[512,512,["sort-alt"],"f883","M150.6 502.6l96-96c12.5-12.5 12.5-32.8 0-45.3s-32.8-12.5-45.3 0L160 402.7 160 32c0-17.7-14.3-32-32-32S96 14.3 96 32l0 370.7-41.4-41.4c-12.5-12.5-32.8-12.5-45.3 0s-12.5 32.8 0 45.3l96 96c12.5 12.5 32.8 12.5 45.3 0zM406.6 9.4c-12.5-12.5-32.8-12.5-45.3 0l-96 96c-12.5 12.5-12.5 32.8 0 45.3s32.8 12.5 45.3 0L352 109.3 352 480c0 17.7 14.3 32 32 32s32-14.3 32-32l0-370.7 41.4 41.4c12.5 12.5 32.8 12.5 45.3 0s12.5-32.8 0-45.3l-96-96z"]},EJ=Y6,IJ={prefix:"fas",iconName:"arrow-left-arrow-right",icon:[512,512,[],"e6b8","M502.6 406.6l-96 96c-12.5 12.5-32.8 12.5-45.3 0s-12.5-32.8 0-45.3L402.7 416 32 416c-17.7 0-32-14.3-32-32s14.3-32 32-32l370.7 0-41.4-41.4c-12.5-12.5-12.5-32.8 0-45.3s32.8-12.5 45.3 0l96 96c12.5 12.5 12.5 32.8 0 45.3zM9.4 150.6c-12.5-12.5-12.5-32.8 0-45.3l96-96c12.5-12.5 32.8-12.5 45.3 0s12.5 32.8 0 45.3L109.3 96 480 96c17.7 0 32 14.3 32 32s-14.3 32-32 32l-370.7 0 41.4 41.4c12.5 12.5 12.5 32.8 0 45.3s-32.8 12.5-45.3 0l-96-96z"]},Rv={prefix:"fas",iconName:"arrow-rotate-left",icon:[512,512,[8634,"arrow-left-rotate","arrow-rotate-back","arrow-rotate-backward","undo"],"f0e2","M256 64c-56.8 0-107.9 24.7-143.1 64l47.1 0c17.7 0 32 14.3 32 32s-14.3 32-32 32L32 192c-17.7 0-32-14.3-32-32L0 32C0 14.3 14.3 0 32 0S64 14.3 64 32l0 54.7C110.9 33.6 179.5 0 256 0 397.4 0 512 114.6 512 256S397.4 512 256 512c-87 0-163.9-43.4-210.1-109.7-10.1-14.5-6.6-34.4 7.9-44.6s34.4-6.6 44.6 7.9c34.8 49.8 92.4 82.3 157.6 82.3 106 0 192-86 192-192S362 64 256 64z"]},TJ=Rv,CJ=Rv,DJ=Rv,AJ=Rv,MJ={prefix:"fas",iconName:"arrow-down-from-arc",icon:[512,512,[],"e614","M256 64c-106 0-192 86-192 192 0 17.7-14.3 32-32 32S0 273.7 0 256C0 114.6 114.6 0 256 0S512 114.6 512 256c0 17.7-14.3 32-32 32s-32-14.3-32-32c0-106-86-192-192-192zM121.4 390.6c-12.5-12.5-12.5-32.8 0-45.3s32.8-12.5 45.3 0L224 402.7 224 192c0-17.7 14.3-32 32-32s32 14.3 32 32l0 210.7 57.4-57.4c12.5-12.5 32.8-12.5 45.3 0s12.5 32.8 0 45.3l-112 112c-12.5 12.5-32.8 12.5-45.3 0l-112-112z"]},PJ={prefix:"fas",iconName:"arrow-u-turn-down-left",icon:[512,512,[],"e7e7","M7.7 363.8c-10.3 12.6-9.5 31.1 2.2 42.8l112 112c12.5 12.5 32.8 12.5 45.2 0s12.5-32.8 0-45.2l-57.4-57.4 210.8 0c102.7 0 186.6-80.7 191.8-182.1l.2-9.9c0-106-86-192-192-192l-224 0-3.3 .2C77.1 33.8 64.5 47.4 64.5 64S77.1 94.2 93.2 95.8l3.3 .2 224 0c70.7 0 128 57.3 128 128l-.2 6.6C444.9 298.2 389 352 320.5 352l-210.8 0 57.4-57.4 2.2-2.4c10.2-12.6 9.5-31.1-2.2-42.8s-30.2-12.4-42.8-2.2l-2.4 2.2-112 112-2.2 2.4z"]},RJ={prefix:"fas",iconName:"rotate-reverse",icon:[512,512,[],"e631","M168 192L24 192c-13.3 0-24-10.7-24-24L0 24C0 14.3 5.8 5.5 14.8 1.8S34.1 .2 41 7L92.7 58.8C137 22.1 194 0 256 0 385 0 491.7 95.4 509.4 219.5 511.9 237 499.8 253.2 482.3 255.7s-33.7-9.7-36.2-27.1C432.7 135.5 352.7 64 256 64 211.6 64 170.8 79 138.3 104.3L185 151c6.9 6.9 8.9 17.2 5.2 26.2S177.7 192 168 192zM2.6 292.5C.1 275 12.2 258.8 29.7 256.3s33.7 9.7 36.2 27.1c13.3 93 93.4 164.5 190.1 164.5 44.4 0 85.2-15 117.7-40.3L327 361c-6.9-6.9-8.9-17.2-5.2-26.2S334.3 320 344 320l144 0c13.3 0 24 10.7 24 24l0 144c0 9.7-5.8 18.5-14.8 22.2s-19.3 1.7-26.2-5.2l-51.8-51.8C375 489.9 318 512 256 512 127 512 20.3 416.6 2.6 292.5z"]},kJ={prefix:"fas",iconName:"caret-down",icon:[320,512,[],"f0d7","M140.3 376.8c12.6 10.2 31.1 9.5 42.8-2.2l128-128c9.2-9.2 11.9-22.9 6.9-34.9S301.4 192 288.5 192l-256 0c-12.9 0-24.6 7.8-29.6 19.8S.7 237.5 9.9 246.6l128 128 2.4 2.2z"]},t2={prefix:"fas",iconName:"arrow-rotate-right",icon:[512,512,[8635,"arrow-right-rotate","arrow-rotate-forward","redo"],"f01e","M436.7 74.7L448 85.4 448 32c0-17.7 14.3-32 32-32s32 14.3 32 32l0 128c0 17.7-14.3 32-32 32l-128 0c-17.7 0-32-14.3-32-32s14.3-32 32-32l47.9 0-7.6-7.2c-.2-.2-.4-.4-.6-.6-75-75-196.5-75-271.5 0s-75 196.5 0 271.5 196.5 75 271.5 0c8.2-8.2 15.5-16.9 21.9-26.1 10.1-14.5 30.1-18 44.6-7.9s18 30.1 7.9 44.6c-8.5 12.2-18.2 23.8-29.1 34.7-100 100-262.1 100-362 0S-25 175 75 75c99.9-99.9 261.7-100 361.7-.3z"]},OJ=t2,NJ=t2,LJ=t2,FJ={prefix:"fas",iconName:"badge-dollar",icon:[512,512,[],"f645","M256 0C292.8 0 324.8 20.7 340.9 51.1 373.8 41 411 49 437 75s34 63.3 23.9 96.1C491.3 187.2 512 219.2 512 256s-20.7 68.8-51.1 84.9C471 373.8 463 411 437 437s-63.3 34-96.1 23.9C324.8 491.3 292.8 512 256 512s-68.8-20.7-84.9-51.1C138.2 471 101 463 75 437s-34-63.3-23.9-96.1C20.7 324.8 0 292.8 0 256s20.7-68.8 51.1-84.9C41 138.2 49 101 75 75s63.3-34 96.1-23.9C187.2 20.7 219.2 0 256 0zm4 144c-11 0-20 9-20 20l0 4c-28.8 .3-52 23.7-52 52.5 0 25.7 18.5 47.6 43.9 51.8l41.7 7c6 1 10.4 6.2 10.4 12.3 0 6.9-5.6 12.5-12.5 12.5L216 304c-11 0-20 9-20 20s9 20 20 20l24 0 0 4c0 11 9 20 20 20s20-9 20-20l0-4.7c25-4.1 44-25.7 44-51.8 0-25.7-18.5-47.6-43.9-51.8l-41.7-7c-6-1-10.4-6.2-10.4-12.3 0-6.9 5.6-12.5 12.5-12.5l47.5 0c11 0 20-9 20-20s-9-20-20-20l-8 0 0-4c0-11-9-20-20-20z"]},X6={prefix:"fas",iconName:"arrows-left-right",icon:[576,512,["arrows-h"],"f07e","M470.6 374.6l96-96c12.5-12.5 12.5-32.8 0-45.3l-96-96c-12.5-12.5-32.8-12.5-45.3 0s-12.5 32.8 0 45.3l41.4 41.4-357.5 0 41.4-41.4c12.5-12.5 12.5-32.8 0-45.3s-32.8-12.5-45.3 0l-96 96c-6 6-9.4 14.1-9.4 22.6s3.4 16.6 9.4 22.6l96 96c12.5 12.5 32.8 12.5 45.3 0s12.5-32.8 0-45.3l-41.4-41.4 357.5 0-41.4 41.4c-12.5 12.5-12.5 32.8 0 45.3s32.8 12.5 45.3 0z"]},zJ=X6,BJ={prefix:"fas",iconName:"location-arrow-up",icon:[448,512,[],"e63a","M253.1 18.6C247.8 7.3 236.5 0 224 0s-23.8 7.3-29.1 18.6l-192 416c-5.6 12.2-3.1 26.5 6.4 36s23.8 12.1 36 6.5L224 395.2 402.7 477.1c12.2 5.6 26.5 3 36-6.5s12-23.8 6.4-36l-192-416z"]},K6={prefix:"fas",iconName:"plus",icon:[448,512,[10133,61543,"add"],"2b","M256 64c0-17.7-14.3-32-32-32s-32 14.3-32 32l0 160-160 0c-17.7 0-32 14.3-32 32s14.3 32 32 32l160 0 0 160c0 17.7 14.3 32 32 32s32-14.3 32-32l0-160 160 0c17.7 0 32-14.3 32-32s-14.3-32-32-32l-160 0 0-160z"]},UJ=K6,VJ={prefix:"fas",iconName:"arrow-left-from-arc",icon:[512,512,[],"e615","M448 256c0-106-86-192-192-192-17.7 0-32-14.3-32-32S238.3 0 256 0C397.4 0 512 114.6 512 256S397.4 512 256 512c-17.7 0-32-14.3-32-32s14.3-32 32-32c106 0 192-86 192-192zM121.4 121.4c12.5-12.5 32.8-12.5 45.3 0s12.5 32.8 0 45.3L109.3 224 320 224c17.7 0 32 14.3 32 32s-14.3 32-32 32l-210.7 0 57.4 57.4c12.5 12.5 12.5 32.8 0 45.3s-32.8 12.5-45.3 0l-112-112c-12.5-12.5-12.5-32.8 0-45.3l112-112z"]},Q6={prefix:"fas",iconName:"arrows-repeat",icon:[512,512,["repeat-alt"],"f364","M470.6 118.6c6-6 9.4-14.1 9.4-22.6s-3.4-16.6-9.4-22.6l-80-80c-12.5-12.5-32.8-12.5-45.3 0s-12.5 32.8 0 45.3L370.7 64 192 64C86 64 0 150 0 256 0 273.7 14.3 288 32 288s32-14.3 32-32c0-70.7 57.3-128 128-128l178.7 0-25.4 25.4c-12.5 12.5-12.5 32.8 0 45.3s32.8 12.5 45.3 0l80-80zM41.4 393.4c-6 6-9.4 14.1-9.4 22.6s3.4 16.6 9.4 22.6l80 80c12.5 12.5 32.8 12.5 45.3 0s12.5-32.8 0-45.3L141.3 448 320 448c106 0 192-86 192-192 0-17.7-14.3-32-32-32s-32 14.3-32 32c0 70.7-57.3 128-128 128l-178.7 0 25.4-25.4c12.5-12.5 12.5-32.8 0-45.3s-32.8-12.5-45.3 0l-80 80z"]},jJ=Q6,$J={prefix:"fas",iconName:"arrow-left-to-dotted-line",icon:[512,512,[],"e6ba","M32 64a32 32 0 1 0 0 64 32 32 0 1 0 0-64zM137.4 233.4c-12.5 12.5-12.5 32.8 0 45.3l128 128c12.5 12.5 32.8 12.5 45.3 0s12.5-32.8 0-45.3L237.3 288 480 288c17.7 0 32-14.3 32-32s-14.3-32-32-32l-242.7 0 73.4-73.4c12.5-12.5 12.5-32.8 0-45.3s-32.8-12.5-45.3 0l-128 128zM0 202.7a32 32 0 1 0 64 0 32 32 0 1 0 -64 0zm32 74.7a32 32 0 1 0 0 64 32 32 0 1 0 0-64zM0 416a32 32 0 1 0 64 0 32 32 0 1 0 -64 0z"]},HJ={prefix:"fas",iconName:"arrow-left",icon:[512,512,[8592],"f060","M9.4 233.4c-12.5 12.5-12.5 32.8 0 45.3l160 160c12.5 12.5 32.8 12.5 45.3 0s12.5-32.8 0-45.3L109.3 288 480 288c17.7 0 32-14.3 32-32s-14.3-32-32-32l-370.7 0 105.4-105.4c12.5-12.5 12.5-32.8 0-45.3s-32.8-12.5-45.3 0l-160 160z"]},GJ={prefix:"fas",iconName:"arrow-right-from-dotted-line",icon:[512,512,[],"e6bb","M502.6 278.6c12.5-12.5 12.5-32.8 0-45.3l-128-128c-12.5-12.5-32.8-12.5-45.3 0s-12.5 32.8 0 45.3L402.7 224 160 224c-17.7 0-32 14.3-32 32s14.3 32 32 32l242.7 0-73.4 73.4c-12.5 12.5-12.5 32.8 0 45.3s32.8 12.5 45.3 0l128-128zM32 448a32 32 0 1 0 0-64 32 32 0 1 0 0 64zM64 309.3a32 32 0 1 0 -64 0 32 32 0 1 0 64 0zM32 234.7a32 32 0 1 0 0-64 32 32 0 1 0 0 64zM64 96A32 32 0 1 0 0 96 32 32 0 1 0 64 96z"]},qJ={prefix:"fas",iconName:"arrow-up-long-to-line",icon:[320,512,[],"e6bd","M9.4 201.4c-12.5 12.5-12.5 32.8 0 45.3s32.8 12.5 45.3 0L128 173.3 128 544c0 17.7 14.3 32 32 32s32-14.3 32-32l0-370.7 73.4 73.4c12.5 12.5 32.8 12.5 45.3 0s12.5-32.8 0-45.3l-128-128c-12.5-12.5-32.8-12.5-45.3 0l-128 128zM32-64C14.3-64 0-49.7 0-32S14.3 0 32 0L288 0c17.7 0 32-14.3 32-32s-14.3-32-32-32L32-64z"]},WJ={prefix:"fas",iconName:"caret-up",icon:[320,512,[],"f0d8","M140.3 135.2c12.6-10.3 31.1-9.5 42.8 2.2l128 128c9.2 9.2 11.9 22.9 6.9 34.9S301.4 320 288.5 320l-256 0c-12.9 0-24.6-7.8-29.6-19.8S.7 274.5 9.9 265.4l128-128 2.4-2.2z"]},J6={prefix:"fas",iconName:"arrow-up-from-line",icon:[384,512,[8613,"arrow-from-bottom"],"f342","M214.6 9.4c-12.5-12.5-32.8-12.5-45.3 0l-128 128c-12.5 12.5-12.5 32.8 0 45.3s32.8 12.5 45.3 0L160 109.3 160 352c0 17.7 14.3 32 32 32s32-14.3 32-32l0-242.7 73.4 73.4c12.5 12.5 32.8 12.5 45.3 0s12.5-32.8 0-45.3l-128-128zM32 448c-17.7 0-32 14.3-32 32s14.3 32 32 32l320 0c17.7 0 32-14.3 32-32s-14.3-32-32-32L32 448z"]},ZJ=J6,e8={prefix:"fas",iconName:"arrow-right-arrow-left",icon:[512,512,[8644,"exchange"],"f0ec","M502.6 150.6l-96 96c-12.5 12.5-32.8 12.5-45.3 0s-12.5-32.8 0-45.3L402.7 160 32 160c-17.7 0-32-14.3-32-32S14.3 96 32 96l370.7 0-41.4-41.4c-12.5-12.5-12.5-32.8 0-45.3s32.8-12.5 45.3 0l96 96c12.5 12.5 12.5 32.8 0 45.3zm-397.3 352l-96-96c-12.5-12.5-12.5-32.8 0-45.3l96-96c12.5-12.5 32.8-12.5 45.3 0s12.5 32.8 0 45.3L109.3 352 480 352c17.7 0 32 14.3 32 32s-14.3 32-32 32l-370.7 0 41.4 41.4c12.5 12.5 12.5 32.8 0 45.3s-32.8 12.5-45.3 0z"]},YJ=e8,t8={prefix:"fas",iconName:"arrow-up-to-line",icon:[384,512,["arrow-to-top"],"f341","M32 0C14.3 0 0 14.3 0 32S14.3 64 32 64l320 0c17.7 0 32-14.3 32-32S369.7 0 352 0L32 0zM214.6 137.4c-12.5-12.5-32.8-12.5-45.3 0l-128 128c-12.5 12.5-12.5 32.8 0 45.3s32.8 12.5 45.3 0L160 237.3 160 480c0 17.7 14.3 32 32 32s32-14.3 32-32l0-242.7 73.4 73.4c12.5 12.5 32.8 12.5 45.3 0s12.5-32.8 0-45.3l-128-128z"]},XJ=t8,KJ={prefix:"fas",iconName:"arrow-up-to-arc",icon:[512,512,[],"e617","M256 64c106 0 192 86 192 192 0 17.7 14.3 32 32 32s32-14.3 32-32C512 114.6 397.4 0 256 0S0 114.6 0 256c0 17.7 14.3 32 32 32s32-14.3 32-32C64 150 150 64 256 64zm22.6 105.4c-12.5-12.5-32.8-12.5-45.3 0l-96 96c-12.5 12.5-12.5 32.8 0 45.3s32.8 12.5 45.3 0L224 269.3 224 480c0 17.7 14.3 32 32 32s32-14.3 32-32l0-210.7 41.4 41.4c12.5 12.5 32.8 12.5 45.3 0s12.5-32.8 0-45.3l-96-96z"]},n8={prefix:"fas",iconName:"arrow-right-from-bracket",icon:[512,512,["sign-out"],"f08b","M160 96c17.7 0 32-14.3 32-32s-14.3-32-32-32L96 32C43 32 0 75 0 128L0 384c0 53 43 96 96 96l64 0c17.7 0 32-14.3 32-32s-14.3-32-32-32l-64 0c-17.7 0-32-14.3-32-32l0-256c0-17.7 14.3-32 32-32l64 0zM502.6 278.6c12.5-12.5 12.5-32.8 0-45.3l-128-128c-12.5-12.5-32.8-12.5-45.3 0s-12.5 32.8 0 45.3L402.7 224 192 224c-17.7 0-32 14.3-32 32s14.3 32 32 32l210.7 0-73.4 73.4c-12.5 12.5-12.5 32.8 0 45.3s32.8 12.5 45.3 0l128-128z"]},QJ=n8,r8={prefix:"fas",iconName:"arrow-down-long",icon:[320,512,["long-arrow-down"],"f175","M137.4 534.6c12.5 12.5 32.8 12.5 45.3 0l128-128c12.5-12.5 12.5-32.8 0-45.3s-32.8-12.5-45.3 0L192 434.7 192 0c0-17.7-14.3-32-32-32S128-17.7 128 0l0 434.7-73.4-73.4c-12.5-12.5-32.8-12.5-45.3 0s-12.5 32.8 0 45.3l128 128z"]},JJ=r8,n2={prefix:"fas",iconName:"rotate-left",icon:[512,512,["rotate-back","rotate-backward","undo-alt"],"f2ea","M24 192l144 0c9.7 0 18.5-5.8 22.2-14.8s1.7-19.3-5.2-26.2l-46.7-46.7c75.3-58.6 184.3-53.3 253.5 15.9 75 75 75 196.5 0 271.5s-196.5 75-271.5 0c-10.2-10.2-19-21.3-26.4-33-9.5-14.9-29.3-19.3-44.2-9.8s-19.3 29.3-9.8 44.2C49.7 408.7 61.4 423.5 75 437 175 537 337 537 437 437S537 175 437 75C342.8-19.3 193.3-24.7 92.7 58.8L41 7C34.1 .2 23.8-1.9 14.8 1.8S0 14.3 0 24L0 168c0 13.3 10.7 24 24 24z"]},eee=n2,tee=n2,nee=n2,i8={prefix:"fas",iconName:"arrow-right-from-line",icon:[512,512,[8614,"arrow-from-left"],"f343","M64 96c0-17.7-14.3-32-32-32S0 78.3 0 96L0 416c0 17.7 14.3 32 32 32s32-14.3 32-32L64 96zM502.6 278.6c12.5-12.5 12.5-32.8 0-45.3l-128-128c-12.5-12.5-32.8-12.5-45.3 0s-12.5 32.8 0 45.3L402.7 224 160 224c-17.7 0-32 14.3-32 32s14.3 32 32 32l242.7 0-73.4 73.4c-12.5 12.5-12.5 32.8 0 45.3s32.8 12.5 45.3 0l128-128z"]},ree=i8,iee={prefix:"fas",iconName:"chevron-left",icon:[320,512,[9001],"f053","M9.4 233.4c-12.5 12.5-12.5 32.8 0 45.3l192 192c12.5 12.5 32.8 12.5 45.3 0s12.5-32.8 0-45.3L77.3 256 246.6 86.6c12.5-12.5 12.5-32.8 0-45.3s-32.8-12.5-45.3 0l-192 192z"]},oee={prefix:"fas",iconName:"arrow-up-right",icon:[384,512,[],"e09f","M384 96c0-17.7-14.3-32-32-32L128 64c-17.7 0-32 14.3-32 32s14.3 32 32 32L274.7 128 9.4 393.4c-12.5 12.5-12.5 32.8 0 45.3s32.8 12.5 45.3 0L320 173.3 320 320c0 17.7 14.3 32 32 32s32-14.3 32-32l0-224z"]},see={prefix:"fas",iconName:"arrow-u-turn-up-right",icon:[512,512,[],"e7ee","M505.3 148.2c10.3-12.6 9.5-31.1-2.2-42.8l-112-112c-12.5-12.5-32.8-12.5-45.2 0s-12.5 32.8 0 45.2L403.2 96 192.5 96C89.8 96 5.9 176.7 .8 278.1L.5 288c0 106 86 192 192 192l224 0 3.3-.2c16.1-1.6 28.7-15.3 28.7-31.8s-12.6-30.2-28.7-31.8l-3.3-.2-224 0c-70.7 0-128-57.3-128-128l.2-6.6C68.1 213.8 124 160 192.5 160l210.7 0-57.4 57.4-2.2 2.4c-10.2 12.6-9.5 31.1 2.2 42.8s30.2 12.4 42.8 2.2l2.4-2.2 112-112 2.2-2.4z"]},DA={prefix:"fas",iconName:"rotate-right",icon:[512,512,["redo-alt","rotate-forward"],"f2f9","M488 192l-144 0c-9.7 0-18.5-5.8-22.2-14.8s-1.7-19.3 5.2-26.2l46.7-46.7c-75.3-58.6-184.3-53.3-253.5 15.9-75 75-75 196.5 0 271.5s196.5 75 271.5 0c8.2-8.2 15.5-16.9 21.9-26.1 10.1-14.5 30.1-18 44.6-7.9s18 30.1 7.9 44.6c-8.5 12.2-18.2 23.8-29.1 34.7-100 100-262.1 100-362 0S-25 175 75 75c94.3-94.3 243.7-99.6 344.3-16.2L471 7c6.9-6.9 17.2-8.9 26.2-5.2S512 14.3 512 24l0 144c0 13.3-10.7 24-24 24z"]},aee=DA,lee=DA,cee={prefix:"fas",iconName:"arrows-cross",icon:[448,512,[],"e0a2","M54.6 41.4c-12.5-12.5-32.8-12.5-45.3 0s-12.5 32.8 0 45.3L144.8 222.1 190.1 176.8 54.6 41.4zM257.9 335.2l80.8 80.8-50.7 0c-17.7 0-32 14.3-32 32s14.3 32 32 32l128 0c17.7 0 32-14.3 32-32l0-128c0-17.7-14.3-32-32-32s-32 14.3-32 32l0 50.7-80.8-80.8-45.3 45.3zM288 32c-17.7 0-32 14.3-32 32s14.3 32 32 32L338.7 96 9.4 425.4c-12.5 12.5-12.5 32.8 0 45.3s32.8 12.5 45.3 0L384 141.3 384 192c0 17.7 14.3 32 32 32s32-14.3 32-32l0-128c0-17.7-14.3-32-32-32L288 32z"]},kv={prefix:"fas",iconName:"xmark",icon:[384,512,[215,10005,10006,10060,128473,"close","multiply","remove","times"],"f00d","M55.1 73.4c-12.5-12.5-32.8-12.5-45.3 0s-12.5 32.8 0 45.3L147.2 256 9.9 393.4c-12.5 12.5-12.5 32.8 0 45.3s32.8 12.5 45.3 0L192.5 301.3 329.9 438.6c12.5 12.5 32.8 12.5 45.3 0s12.5-32.8 0-45.3L237.8 256 375.1 118.6c12.5-12.5 12.5-32.8 0-45.3s-32.8-12.5-45.3 0L192.5 210.7 55.1 73.4z"]},uee=kv,dee=kv,pee=kv,hee=kv,fee={prefix:"fas",iconName:"arrows-down-to-line",icon:[512,512,[],"e4b8","M214.6 310.6l-64 64c-12.5 12.5-32.8 12.5-45.3 0l-64-64c-12.5-12.5-12.5-32.8 0-45.3s32.8-12.5 45.3 0L96 274.7 96 32c0-17.7 14.3-32 32-32s32 14.3 32 32l0 242.7 9.4-9.4c12.5-12.5 32.8-12.5 45.3 0s12.5 32.8 0 45.3zm256 0l-64 64c-12.5 12.5-32.8 12.5-45.3 0l-64-64c-12.5-12.5-12.5-32.8 0-45.3s32.8-12.5 45.3 0l9.4 9.4 0-242.7c0-17.7 14.3-32 32-32s32 14.3 32 32l0 242.7 9.4-9.4c12.5-12.5 32.8-12.5 45.3 0s12.5 32.8 0 45.3zM32 512c-17.7 0-32-14.3-32-32s14.3-32 32-32l448 0c17.7 0 32 14.3 32 32s-14.3 32-32 32L32 512z"]},mee={prefix:"fas",iconName:"arrow-left-to-arc",icon:[512,512,[],"e616","M64 256c0-106 86-192 192-192 17.7 0 32-14.3 32-32S273.7 0 256 0C114.6 0 0 114.6 0 256S114.6 512 256 512c17.7 0 32-14.3 32-32s-14.3-32-32-32C150 448 64 362 64 256zm105.4-22.6c-12.5 12.5-12.5 32.8 0 45.3l96 96c12.5 12.5 32.8 12.5 45.3 0s12.5-32.8 0-45.3L269.3 288 480 288c17.7 0 32-14.3 32-32s-14.3-32-32-32l-210.7 0 41.4-41.4c12.5-12.5 12.5-32.8 0-45.3s-32.8-12.5-45.3 0l-96 96z"]},gee={prefix:"fas",iconName:"arrow-right",icon:[512,512,[8594],"f061","M502.6 278.6c12.5-12.5 12.5-32.8 0-45.3l-160-160c-12.5-12.5-32.8-12.5-45.3 0s-12.5 32.8 0 45.3L402.7 224 32 224c-17.7 0-32 14.3-32 32s14.3 32 32 32l370.7 0-105.4 105.4c-12.5 12.5-12.5 32.8 0 45.3s32.8 12.5 45.3 0l160-160z"]},yee={prefix:"fas",iconName:"arrows-turn-right",icon:[448,512,[],"e4c0","M313.4-6.6c12.5-12.5 32.8-12.5 45.3 0l80 80c12.5 12.5 12.5 32.8 0 45.3l-80 80c-12.5 12.5-32.8 12.5-45.3 0s-12.5-32.8 0-45.3L338.7 128 128 128c-35.3 0-64 28.7-64 64l0 32c0 17.7-14.3 32-32 32S0 241.7 0 224l0-32C0 121.3 57.3 64 128 64l210.7 0-25.4-25.4c-12.5-12.5-12.5-32.8 0-45.3zm-96 256c12.5-12.5 32.8-12.5 45.3 0l80 80c12.5 12.5 12.5 32.8 0 45.3l-80 80c-12.5 12.5-32.8 12.5-45.3 0s-12.5-32.8 0-45.3L242.7 384 96 384c-17.7 0-32 14.3-32 32l0 32c0 17.7-14.3 32-32 32S0 465.7 0 448l0-32c0-53 43-96 96-96l146.7 0-25.4-25.4c-12.5-12.5-12.5-32.8 0-45.3z"]},o8={prefix:"fas",iconName:"arrow-turn-down",icon:[384,512,["level-down"],"f149","M32 64C14.3 64 0 49.7 0 32S14.3 0 32 0l96 0c53 0 96 43 96 96l0 306.7 73.4-73.4c12.5-12.5 32.8-12.5 45.3 0s12.5 32.8 0 45.3l-128 128c-12.5 12.5-32.8 12.5-45.3 0l-128-128c-12.5-12.5-12.5-32.8 0-45.3s32.8-12.5 45.3 0L160 402.7 160 96c0-17.7-14.3-32-32-32L32 64z"]},vee=o8,_ee={prefix:"fas",iconName:"play-pause",icon:[512,512,[],"e22f","M52.5 71.4c-9.5-7.9-22.8-9.7-34.1-4.4S0 83.6 0 96L0 416c0 12.4 7.2 23.7 18.4 29s24.5 3.6 34.1-4.4l192-160c7.3-6.1 11.5-15.1 11.5-24.6s-4.2-18.5-11.5-24.6l-192-160zM384 96c0-17.7-14.3-32-32-32s-32 14.3-32 32l0 320c0 17.7 14.3 32 32 32s32-14.3 32-32l0-320zm128 0c0-17.7-14.3-32-32-32s-32 14.3-32 32l0 320c0 17.7 14.3 32 32 32s32-14.3 32-32l0-320z"]},bee={prefix:"fas",iconName:"arrow-turn-left-down",icon:[384,512,[],"e633","M352 64c17.7 0 32-14.3 32-32S369.7 0 352 0L256 0c-53 0-96 43-96 96l0 306.7-73.4-73.4c-12.5-12.5-32.8-12.5-45.3 0s-12.5 32.8 0 45.3l128 128c12.5 12.5 32.8 12.5 45.3 0l128-128c12.5-12.5 12.5-32.8 0-45.3s-32.8-12.5-45.3 0L224 402.7 224 96c0-17.7 14.3-32 32-32l96 0z"]},xee={prefix:"fas",iconName:"arrow-down-from-dotted-line",icon:[384,512,[],"e090","M169.4 502.6c12.5 12.5 32.8 12.5 45.3 0l128-128c12.5-12.5 12.5-32.8 0-45.3s-32.8-12.5-45.3 0L224 402.7 224 160c0-17.7-14.3-32-32-32s-32 14.3-32 32l0 242.7-73.4-73.4c-12.5-12.5-32.8-12.5-45.3 0s-12.5 32.8 0 45.3l128 128zM0 32A32 32 0 1 0 64 32 32 32 0 1 0 0 32zM138.7 64a32 32 0 1 0 0-64 32 32 0 1 0 0 64zm74.7-32a32 32 0 1 0 64 0 32 32 0 1 0 -64 0zM352 64a32 32 0 1 0 0-64 32 32 0 1 0 0 64z"]},wee={prefix:"fas",iconName:"arrow-up-from-arc",icon:[512,512,[],"e4b4","M256 448c-106 0-192-86-192-192 0-17.7-14.3-32-32-32S0 238.3 0 256C0 397.4 114.6 512 256 512S512 397.4 512 256c0-17.7-14.3-32-32-32s-32 14.3-32 32c0 106-86 192-192 192zM121.4 121.4c-12.5 12.5-12.5 32.8 0 45.3s32.8 12.5 45.3 0L224 109.3 224 320c0 17.7 14.3 32 32 32s32-14.3 32-32l0-210.7 57.4 57.4c12.5 12.5 32.8 12.5 45.3 0s12.5-32.8 0-45.3l-112-112c-12.5-12.5-32.8-12.5-45.3 0l-112 112z"]},See={prefix:"fas",iconName:"arrow-u-turn-down-right",icon:[512,512,[],"e7e8","M505.3 363.8c10.3 12.6 9.5 31.1-2.2 42.8l-112 112c-12.5 12.5-32.8 12.5-45.2 0s-12.5-32.8 0-45.2l57.4-57.4-210.7 0C89.8 416 5.9 335.3 .8 233.9L.5 224c0-106 86-192 192-192l224 0 3.3 .2c16.1 1.6 28.7 15.3 28.7 31.8s-12.6 30.2-28.7 31.8l-3.3 .2-224 0c-70.7 0-128 57.3-128 128l.2 6.6C68.1 298.2 124 352 192.5 352l210.7 0-57.4-57.4-2.2-2.4c-10.2-12.6-9.5-31.1 2.2-42.8s30.2-12.4 42.8-2.2l2.4 2.2 112 112 2.2 2.4z"]},s8={prefix:"fas",iconName:"arrow-left-from-line",icon:[512,512,[8612,"arrow-from-right"],"f344","M448 416c0 17.7 14.3 32 32 32s32-14.3 32-32l0-320c0-17.7-14.3-32-32-32s-32 14.3-32 32l0 320zM9.4 233.4c-12.5 12.5-12.5 32.8 0 45.3l128 128c12.5 12.5 32.8 12.5 45.3 0s12.5-32.8 0-45.3L109.3 288 352 288c17.7 0 32-14.3 32-32s-14.3-32-32-32l-242.7 0 73.4-73.4c12.5-12.5 12.5-32.8 0-45.3s-32.8-12.5-45.3 0l-128 128z"]},Eee=s8,Iee={prefix:"fas",iconName:"play",icon:[448,512,[9654],"f04b","M91.2 36.9c-12.4-6.8-27.4-6.5-39.6 .7S32 57.9 32 72l0 368c0 14.1 7.5 27.2 19.6 34.4s27.2 7.5 39.6 .7l336-184c12.8-7 20.8-20.5 20.8-35.1s-8-28.1-20.8-35.1l-336-184z"]},Tee={prefix:"fas",iconName:"arrow-up",icon:[384,512,[8593],"f062","M214.6 9.4c-12.5-12.5-32.8-12.5-45.3 0l-160 160c-12.5 12.5-12.5 32.8 0 45.3s32.8 12.5 45.3 0L160 109.3 160 480c0 17.7 14.3 32 32 32s32-14.3 32-32l0-370.7 105.4 105.4c12.5 12.5 32.8 12.5 45.3 0s12.5-32.8 0-45.3l-160-160z"]},Cee={prefix:"fas",iconName:"arrow-right-from-arc",icon:[512,512,[],"e4b1","M64 256c0-106 86-192 192-192 17.7 0 32-14.3 32-32S273.7 0 256 0C114.6 0 0 114.6 0 256S114.6 512 256 512c17.7 0 32-14.3 32-32s-14.3-32-32-32C150 448 64 362 64 256zM390.6 121.4c-12.5-12.5-32.8-12.5-45.3 0s-12.5 32.8 0 45.3L402.7 224 192 224c-17.7 0-32 14.3-32 32s14.3 32 32 32l210.7 0-57.4 57.4c-12.5 12.5-12.5 32.8 0 45.3s32.8 12.5 45.3 0l112-112c12.5-12.5 12.5-32.8 0-45.3l-112-112z"]},Dee={prefix:"fas",iconName:"arrow-u-turn-left-up",icon:[576,512,[],"e7ea","M180.7 7.2c-12.6-10.3-31.1-9.5-42.8 2.2l-112 112c-12.5 12.5-12.5 32.8 0 45.2s32.8 12.5 45.2 0l57.4-57.4 0 210.8c0 102.7 80.7 186.6 182.1 191.8l9.9 .2c106 0 192-86 192-192l0-224-.2-3.3C510.7 76.6 497.1 64 480.5 64s-30.2 12.6-31.8 28.7l-.2 3.3 0 224c0 70.7-57.3 128-128 128l-6.6-.2c-67.6-3.4-121.4-59.4-121.4-127.8l0-210.8 57.4 57.4 2.4 2.2c12.6 10.2 31.1 9.5 42.8-2.2s12.4-30.2 2.2-42.8l-2.2-2.4-112-112-2.4-2.2z"]},Aee={prefix:"fas",iconName:"arrow-u-turn-right-down",icon:[576,512,[],"e7eb","M396.3 504.8c12.6 10.3 31.1 9.5 42.8-2.2l112-112c12.5-12.5 12.5-32.8 0-45.2s-32.8-12.5-45.2 0l-57.4 57.4 0-210.7C448.5 89.3 367.8 5.4 266.4 .3L256.5 0c-106 0-192 86-192 192l0 224 .2 3.3C66.3 435.4 79.9 448 96.5 448s30.2-12.6 31.8-28.7l.2-3.3 0-224c0-70.7 57.3-128 128-128l6.6 .2c67.6 3.4 121.4 59.4 121.4 127.8l0 210.7-57.4-57.4-2.4-2.2c-12.6-10.2-31.1-9.5-42.8 2.2s-12.4 30.2-2.2 42.8l2.2 2.4 112 112 2.4 2.2z"]},a8={prefix:"fas",iconName:"arrow-turn-up",icon:[384,512,["level-up"],"f148","M32 448c-17.7 0-32 14.3-32 32s14.3 32 32 32l96 0c53 0 96-43 96-96l0-306.7 73.4 73.4c12.5 12.5 32.8 12.5 45.3 0s12.5-32.8 0-45.3l-128-128c-12.5-12.5-32.8-12.5-45.3 0l-128 128c-12.5 12.5-12.5 32.8 0 45.3s32.8 12.5 45.3 0L160 109.3 160 416c0 17.7-14.3 32-32 32l-96 0z"]},Mee=a8,Pee={prefix:"fas",iconName:"swap-arrows",icon:[576,512,[],"e60a","M9.4 150.6c-12.5-12.5-12.5-32.8 0-45.3l64-64c12.5-12.5 32.8-12.5 45.3 0l64 64c12.5 12.5 12.5 32.8 0 45.3s-32.8 12.5-45.3 0l-9.4-9.4 0 210.7c0 35.3 28.7 64 64 64s64-28.7 64-64l0-192c0-70.7 57.3-128 128-128S512 89.3 512 160l0 210.7 9.4-9.4c12.5-12.5 32.8-12.5 45.3 0s12.5 32.8 0 45.3l-64 64c-6 6-14.1 9.4-22.6 9.4s-16.6-3.4-22.6-9.4l-64-64c-12.5-12.5-12.5-32.8 0-45.3s32.8-12.5 45.3 0l9.4 9.4 0-210.7c0-35.3-28.7-64-64-64s-64 28.7-64 64l0 192c0 70.7-57.3 128-128 128S64 422.7 64 352l0-210.7-9.4 9.4c-12.5 12.5-32.8 12.5-45.3 0z"]},l8={prefix:"fas",iconName:"arrow-left-long",icon:[576,512,["long-arrow-left"],"f177","M9.4 233.4c-12.5 12.5-12.5 32.8 0 45.3l128 128c12.5 12.5 32.8 12.5 45.3 0s12.5-32.8 0-45.3L109.3 288 544 288c17.7 0 32-14.3 32-32s-14.3-32-32-32l-434.7 0 73.4-73.4c12.5-12.5 12.5-32.8 0-45.3s-32.8-12.5-45.3 0l-128 128z"]},Ree=l8,kee={prefix:"fas",iconName:"arrow-u-turn-right-up",icon:[576,512,[],"e7ec","M396.3 7.2c12.6-10.3 31.1-9.5 42.8 2.2l112 112c12.5 12.5 12.5 32.8 0 45.2s-32.8 12.5-45.2 0l-57.4-57.4 0 210.8c0 102.7-80.7 186.6-182.1 191.8l-9.9 .2c-106 0-192-86-192-192l0-224 .2-3.3C66.3 76.6 79.9 64 96.5 64s30.2 12.6 31.8 28.7l.2 3.3 0 224c0 70.7 57.3 128 128 128l6.6-.2c67.6-3.4 121.4-59.4 121.4-127.8l0-210.8-57.4 57.4-2.4 2.2c-12.6 10.2-31.1 9.5-42.8-2.2s-12.4-30.2-2.2-42.8l2.2-2.4 112-112 2.4-2.2z"]},Oee={prefix:"fas",iconName:"circle",icon:[512,512,[9679,9898,9899,11044,61708,61915,128308,128309,128992,128993,128994,128995,128996],"f111","M0 256a256 256 0 1 1 512 0 256 256 0 1 1 -512 0z"]},Nee={prefix:"fas",iconName:"arrow-up-from-bracket",icon:[448,512,[],"e09a","M246.6 9.4c-12.5-12.5-32.8-12.5-45.3 0l-128 128c-12.5 12.5-12.5 32.8 0 45.3s32.8 12.5 45.3 0L192 109.3 192 320c0 17.7 14.3 32 32 32s32-14.3 32-32l0-210.7 73.4 73.4c12.5 12.5 32.8 12.5 45.3 0s12.5-32.8 0-45.3l-128-128zM64 352c0-17.7-14.3-32-32-32S0 334.3 0 352l0 64c0 53 43 96 96 96l256 0c53 0 96-43 96-96l0-64c0-17.7-14.3-32-32-32s-32 14.3-32 32l0 64c0 17.7-14.3 32-32 32L96 448c-17.7 0-32-14.3-32-32l0-64z"]},c8={prefix:"fas",iconName:"ellipsis-stroke-vertical",icon:[128,512,["ellipsis-v-alt"],"f39c","M80 432c0 8.8-7.2 16-16 16s-16-7.2-16-16 7.2-16 16-16 16 7.2 16 16zm48 0c0-35.3-28.7-64-64-64s-64 28.7-64 64 28.7 64 64 64 64-28.7 64-64zM80 256c0 8.8-7.2 16-16 16s-16-7.2-16-16 7.2-16 16-16 16 7.2 16 16zm48 0c0-35.3-28.7-64-64-64s-64 28.7-64 64 28.7 64 64 64 64-28.7 64-64zM64 96a16 16 0 1 1 0-32 16 16 0 1 1 0 32zm0-80a64 64 0 1 0 0 128 64 64 0 1 0 0-128z"]},Lee=c8,u8={prefix:"fas",iconName:"square-question",icon:[448,512,["question-square"],"f2fd","M64 32C28.7 32 0 60.7 0 96L0 416c0 35.3 28.7 64 64 64l320 0c35.3 0 64-28.7 64-64l0-320c0-35.3-28.7-64-64-64L64 32zM224 176c-17.7 0-32 14.3-32 32 0 13.3-10.7 24-24 24s-24-10.7-24-24c0-44.2 35.8-80 80-80s80 35.8 80 80c0 47.2-36 67.2-56 74.5l0 3.8c0 13.3-10.7 24-24 24s-24-10.7-24-24l0-8.1c0-20.5 14.8-35.2 30.1-40.2 6.4-2.1 13.2-5.5 18.2-10.3 4.3-4.2 7.7-10 7.7-19.6 0-17.7-14.3-32-32-32zM192 368a32 32 0 1 1 64 0 32 32 0 1 1 -64 0z"]},AA=u8,d8={prefix:"fas",iconName:"arrow-up-long",icon:[320,512,["long-arrow-up"],"f176","M182.6-22.6c-12.5-12.5-32.8-12.5-45.3 0l-128 128c-12.5 12.5-12.5 32.8 0 45.3s32.8 12.5 45.3 0L128 77.3 128 512c0 17.7 14.3 32 32 32s32-14.3 32-32l0-434.7 73.4 73.4c12.5 12.5 32.8 12.5 45.3 0s12.5-32.8 0-45.3l-128-128z"]},Fee=d8,zee={prefix:"fas",iconName:"arrow-progress",icon:[512,512,[],"e5df","M230.8 33.8c9-3.7 19.3-1.7 26.2 5.2l40 40c9.4 9.4 9.4 24.6 0 33.9l-40 40c-6.9 6.9-17.2 8.9-26.2 5.2S216 145.7 216 136l0-8-104 0c-26.5 0-48 21.5-48 48s21.5 48 48 48l288 0c61.9 0 112 50.1 112 112 0 46.4-28.2 86.1-68.3 103.2-9.3 23.9-32.5 40.8-59.7 40.8-35.3 0-64-28.7-64-64s28.7-64 64-64c18.6 0 35.4 7.9 47 20.6 10.4-8.8 17-21.9 17-36.6 0-26.5-21.5-48-48-48l-288 0C50.1 288 0 237.9 0 176S50.1 64 112 64l104 0 0-8c0-9.7 5.8-18.5 14.8-22.2zM416 32a64 64 0 1 1 0 128 64 64 0 1 1 0-128zM151.4 448c-11.1 19.1-31.7 32-55.4 32-35.3 0-64-28.7-64-64s28.7-64 64-64c23.7 0 44.4 12.9 55.4 32l32.6 0 0-8c0-9.7 5.8-18.5 14.8-22.2s19.3-1.7 26.2 5.2l40 40c9.4 9.4 9.4 24.6 0 33.9l-40 40c-6.9 6.9-17.2 8.9-26.2 5.2S184 465.7 184 456l0-8-32.6 0z"]},Bee={prefix:"fas",iconName:"arrow-down-left",icon:[384,512,[],"e091","M0 416c0 17.7 14.3 32 32 32l224 0c17.7 0 32-14.3 32-32s-14.3-32-32-32l-146.7 0 265.4-265.4c12.5-12.5 12.5-32.8 0-45.3s-32.8-12.5-45.3 0L64 338.7 64 192c0-17.7-14.3-32-32-32S0 174.3 0 192L0 416z"]},Uee={prefix:"fas",iconName:"arrow-up-right-and-arrow-down-left-from-center",icon:[512,512,[],"e0a0","M352 0c-17.7 0-32 14.3-32 32s14.3 32 32 32l50.7 0-105.4 105.4c-12.5 12.5-12.5 32.8 0 45.3s32.8 12.5 45.3 0L448 109.3 448 160c0 17.7 14.3 32 32 32s32-14.3 32-32l0-128c0-17.7-14.3-32-32-32L352 0zM214.6 297.4c-12.5-12.5-32.8-12.5-45.3 0L64 402.7 64 352c0-17.7-14.3-32-32-32S0 334.3 0 352L0 480c0 17.7 14.3 32 32 32l128 0c17.7 0 32-14.3 32-32s-14.3-32-32-32l-50.7 0 105.4-105.4c12.5-12.5 12.5-32.8 0-45.3z"]},Vee={prefix:"fas",iconName:"arrow-up-from-dotted-line",icon:[384,512,[],"e09b","M169.4 9.4c12.5-12.5 32.8-12.5 45.3 0l128 128c12.5 12.5 12.5 32.8 0 45.3s-32.8 12.5-45.3 0L224 109.3 224 352c0 17.7-14.3 32-32 32s-32-14.3-32-32l0-242.7-73.4 73.4c-12.5 12.5-32.8 12.5-45.3 0s-12.5-32.8 0-45.3l128-128zM0 480c0-17.7 14.3-32 32-32s32 14.3 32 32-14.3 32-32 32-32-14.3-32-32zm138.7-32c17.7 0 32 14.3 32 32s-14.3 32-32 32-32-14.3-32-32 14.3-32 32-32zm74.7 32c0-17.7 14.3-32 32-32s32 14.3 32 32-14.3 32-32 32-32-14.3-32-32zM352 448c17.7 0 32 14.3 32 32s-14.3 32-32 32-32-14.3-32-32 14.3-32 32-32z"]},p8={prefix:"fas",iconName:"arrow-down-from-line",icon:[384,512,[8615,"arrow-from-top"],"f345","M32 64C14.3 64 0 49.7 0 32S14.3 0 32 0L352 0c17.7 0 32 14.3 32 32s-14.3 32-32 32L32 64zM342.6 374.6l-128 128c-12.5 12.5-32.8 12.5-45.3 0l-128-128c-12.5-12.5-12.5-32.8 0-45.3s32.8-12.5 45.3 0L160 402.7 160 160c0-17.7 14.3-32 32-32s32 14.3 32 32l0 242.7 73.4-73.4c12.5-12.5 32.8-12.5 45.3 0s12.5 32.8 0 45.3z"]},jee=p8,$ee={prefix:"fas",iconName:"arrow-up-left",icon:[384,512,[],"e09d","M32 64C14.3 64 0 78.3 0 96L0 320c0 17.7 14.3 32 32 32s32-14.3 32-32l0-146.7 265.4 265.4c12.5 12.5 32.8 12.5 45.3 0s12.5-32.8 0-45.3L109.3 128 256 128c17.7 0 32-14.3 32-32s-14.3-32-32-32L32 64z"]},Hee={prefix:"fas",iconName:"arrows-split-up-and-left",icon:[512,512,[],"e4bc","M342.6-22.6c-12.5-12.5-32.8-12.5-45.3 0l-96 96c-12.5 12.5-12.5 32.8 0 45.3s32.8 12.5 45.3 0l41.4-41.4 0 195.9c-18.8-10.9-40.7-17.1-64-17.1l-114.7 0 41.4-41.4c12.5-12.5 12.5-32.8 0-45.3s-32.8-12.5-45.3 0l-96 96c-12.5 12.5-12.5 32.8 0 45.3l96 96c12.5 12.5 32.8 12.5 45.3 0s12.5-32.8 0-45.3L109.3 320 224 320c35.3 0 64 28.7 64 64 0 70.7 57.3 128 128 128l32 0c17.7 0 32-14.3 32-32s-14.3-32-32-32l-32 0c-35.3 0-64-28.7-64-64l0-306.7 41.4 41.4c12.5 12.5 32.8 12.5 45.3 0s12.5-32.8 0-45.3l-96-96z"]},h8={prefix:"fas",iconName:"arrow-left-to-line",icon:[512,512,[8676,"arrow-to-left"],"f33e","M0 416c0 17.7 14.3 32 32 32s32-14.3 32-32L64 96c0-17.7-14.3-32-32-32S0 78.3 0 96L0 416zM137.4 233.4c-12.5 12.5-12.5 32.8 0 45.3l128 128c12.5 12.5 32.8 12.5 45.3 0s12.5-32.8 0-45.3L237.3 288 480 288c17.7 0 32-14.3 32-32s-14.3-32-32-32l-242.7 0 73.4-73.4c12.5-12.5 12.5-32.8 0-45.3s-32.8-12.5-45.3 0l-128 128z"]},Gee=h8,qee={prefix:"fas",iconName:"arrow-down-from-bracket",icon:[448,512,[],"e667","M384 160c0 17.7 14.3 32 32 32s32-14.3 32-32l0-64c0-53-43-96-96-96L96 0C43 0 0 43 0 96l0 64c0 17.7 14.3 32 32 32s32-14.3 32-32l0-64c0-17.7 14.3-32 32-32l256 0c17.7 0 32 14.3 32 32l0 64zM201.4 502.6c12.5 12.5 32.8 12.5 45.3 0l128-128c12.5-12.5 12.5-32.8 0-45.3s-32.8-12.5-45.3 0L256 402.7 256 192c0-17.7-14.3-32-32-32s-32 14.3-32 32l0 210.7-73.4-73.4c-12.5-12.5-32.8-12.5-45.3 0s-12.5 32.8 0 45.3l128 128z"]},Wee={prefix:"fas",iconName:"arrow-left-from-dotted-line",icon:[512,512,[],"e6b9","M9.4 233.4c-12.5 12.5-12.5 32.8 0 45.3l128 128c12.5 12.5 32.8 12.5 45.3 0s12.5-32.8 0-45.3L109.3 288 352 288c17.7 0 32-14.3 32-32s-14.3-32-32-32l-242.7 0 73.4-73.4c12.5-12.5 12.5-32.8 0-45.3s-32.8-12.5-45.3 0l-128 128zM480 64a32 32 0 1 0 0 64 32 32 0 1 0 0-64zM448 202.7a32 32 0 1 0 64 0 32 32 0 1 0 -64 0zm32 74.7a32 32 0 1 0 0 64 32 32 0 1 0 0-64zM448 416a32 32 0 1 0 64 0 32 32 0 1 0 -64 0z"]},Zee={prefix:"fas",iconName:"building-magnifying-glass",icon:[512,512,[],"e61c","M0 64C0 28.7 28.7 0 64 0L320 0c35.3 0 64 28.7 64 64l0 116.8c-12.8-3.1-26.2-4.8-40-4.8-92.8 0-168 75.2-168 168 0 2.7 .1 5.4 .2 8l-.2 0c-17.7 0-32 14.3-32 32l0 80 82.4 0c27 26.4 62.9 43.9 102.7 47.4-3 .4-6 .6-9.1 .6L64 512c-35.3 0-64-28.7-64-64L0 64zM112 96c-8.8 0-16 7.2-16 16l0 32c0 8.8 7.2 16 16 16l32 0c8.8 0 16-7.2 16-16l0-32c0-8.8-7.2-16-16-16l-32 0zm112 16l0 32c0 8.8 7.2 16 16 16l32 0c8.8 0 16-7.2 16-16l0-32c0-8.8-7.2-16-16-16l-32 0c-8.8 0-16 7.2-16 16zM112 224c-8.8 0-16 7.2-16 16l0 32c0 8.8 7.2 16 16 16l32 0c8.8 0 16-7.2 16-16l0-32c0-8.8-7.2-16-16-16l-32 0zM344 416.1a72 72 0 1 0 0-144 72 72 0 1 0 0 144zm0 48c-66.3 0-120-53.7-120-120s53.7-120 120-120 120 53.7 120 120c0 24.5-7.3 47.2-19.9 66.2L505 471.1c9.4 9.4 9.4 24.6 0 33.9s-24.6 9.4-33.9 0l-60.8-60.9c-19 12.6-41.7 19.9-66.2 19.9z"]},f8={prefix:"fas",iconName:"arrows-up-down",icon:[256,512,["arrows-v"],"f07d","M150.6-22.6c-12.5-12.5-32.8-12.5-45.3 0l-96 96c-12.5 12.5-12.5 32.8 0 45.3s32.8 12.5 45.3 0L96 77.3 96 434.7 54.6 393.4c-12.5-12.5-32.8-12.5-45.3 0s-12.5 32.8 0 45.3l96 96c6 6 14.1 9.4 22.6 9.4s16.6-3.4 22.6-9.4l96-96c12.5-12.5 12.5-32.8 0-45.3s-32.8-12.5-45.3 0l-41.4 41.4 0-357.5 41.4 41.4c12.5 12.5 32.8 12.5 45.3 0s12.5-32.8 0-45.3l-96-96z"]},Yee=f8,m8={prefix:"fas",iconName:"arrow-right-to-bracket",icon:[512,512,["sign-in"],"f090","M352 96l64 0c17.7 0 32 14.3 32 32l0 256c0 17.7-14.3 32-32 32l-64 0c-17.7 0-32 14.3-32 32s14.3 32 32 32l64 0c53 0 96-43 96-96l0-256c0-53-43-96-96-96l-64 0c-17.7 0-32 14.3-32 32s14.3 32 32 32zm-9.4 182.6c12.5-12.5 12.5-32.8 0-45.3l-128-128c-12.5-12.5-32.8-12.5-45.3 0s-12.5 32.8 0 45.3L242.7 224 32 224c-17.7 0-32 14.3-32 32s14.3 32 32 32l210.7 0-73.4 73.4c-12.5 12.5-12.5 32.8 0 45.3s32.8 12.5 45.3 0l128-128z"]},Xee=m8,Kee={prefix:"fas",iconName:"location-arrow",icon:[512,512,[],"f124","M477.9 75.5c4.5-11.8 1.7-25.2-7.2-34.1s-22.3-11.8-34.1-7.2l-416 160C7.9 199-.3 211.2 0 224.7s9.1 25.4 21.9 29.6l176.8 58.9 58.9 176.8c4.3 12.8 16.1 21.6 29.6 21.9s25.7-7.9 30.6-20.5l160-416z"]},Qee={prefix:"fas",iconName:"arrow-turn-down-right",icon:[512,512,[],"e3d6","M64 96c0-17.7-14.3-32-32-32S0 78.3 0 96l0 96c0 53 43 96 96 96l306.7 0-73.4 73.4c-12.5 12.5-12.5 32.8 0 45.3s32.8 12.5 45.3 0l128-128c12.5-12.5 12.5-32.8 0-45.3l-128-128c-12.5-12.5-32.8-12.5-45.3 0s-12.5 32.8 0 45.3L402.7 224 96 224c-17.7 0-32-14.3-32-32l0-96z"]},g8={prefix:"fas",iconName:"arrow-down-to-line",icon:[384,512,["arrow-to-bottom"],"f33d","M32 512c-17.7 0-32-14.3-32-32s14.3-32 32-32l320 0c17.7 0 32 14.3 32 32s-14.3 32-32 32L32 512zM214.6 374.6c-12.5 12.5-32.8 12.5-45.3 0l-128-128c-12.5-12.5-12.5-32.8 0-45.3s32.8-12.5 45.3 0L160 274.7 160 32c0-17.7 14.3-32 32-32s32 14.3 32 32l0 242.7 73.4-73.4c12.5-12.5 32.8-12.5 45.3 0s12.5 32.8 0 45.3l-128 128z"]},Jee=g8,ete={prefix:"fas",iconName:"arrow-down-to-bracket",icon:[448,512,[],"e094","M374.6 214.6l-128 128c-12.5 12.5-32.8 12.5-45.3 0l-128-128c-12.5-12.5-12.5-32.8 0-45.3s32.8-12.5 45.3 0L192 242.7 192 32c0-17.7 14.3-32 32-32s32 14.3 32 32l0 210.7 73.4-73.4c12.5-12.5 32.8-12.5 45.3 0s12.5 32.8 0 45.3zM64 352l0 64c0 17.7 14.3 32 32 32l256 0c17.7 0 32-14.3 32-32l0-64c0-17.7 14.3-32 32-32s32 14.3 32 32l0 64c0 53-43 96-96 96L96 512c-53 0-96-43-96-96l0-64c0-17.7 14.3-32 32-32s32 14.3 32 32z"]},tte={prefix:"fas",iconName:"chevron-right",icon:[320,512,[9002],"f054","M311.1 233.4c12.5 12.5 12.5 32.8 0 45.3l-192 192c-12.5 12.5-32.8 12.5-45.3 0s-12.5-32.8 0-45.3L243.2 256 73.9 86.6c-12.5-12.5-12.5-32.8 0-45.3s32.8-12.5 45.3 0l192 192z"]},y8={prefix:"fas",iconName:"ellipsis-vertical",icon:[128,512,["ellipsis-v"],"f142","M64 144a56 56 0 1 1 0-112 56 56 0 1 1 0 112zm0 224c30.9 0 56 25.1 56 56s-25.1 56-56 56-56-25.1-56-56 25.1-56 56-56zm56-112c0 30.9-25.1 56-56 56s-56-25.1-56-56 25.1-56 56-56 56 25.1 56 56z"]},nte=y8,v8={prefix:"fas",iconName:"arrow-right-to-line",icon:[512,512,[8677,"arrow-to-right"],"f340","M512 96c0-17.7-14.3-32-32-32s-32 14.3-32 32l0 320c0 17.7 14.3 32 32 32s32-14.3 32-32l0-320zM374.6 278.6c12.5-12.5 12.5-32.8 0-45.3l-128-128c-12.5-12.5-32.8-12.5-45.3 0s-12.5 32.8 0 45.3L274.7 224 32 224c-17.7 0-32 14.3-32 32s14.3 32 32 32l242.7 0-73.4 73.4c-12.5 12.5-12.5 32.8 0 45.3s32.8 12.5 45.3 0l128-128z"]},rte=v8,ite={prefix:"fas",iconName:"circle-notch",icon:[512,512,[],"f1ce","M222.7 32.1c5 16.9-4.6 34.8-21.5 39.8-79.3 23.6-137.1 97.1-137.1 184.1 0 106 86 192 192 192s192-86 192-192c0-86.9-57.8-160.4-137.1-184.1-16.9-5-26.6-22.9-21.5-39.8s22.9-26.6 39.8-21.5C434.9 42.1 512 140 512 256 512 397.4 397.4 512 256 512S0 397.4 0 256c0-116 77.1-213.9 182.9-245.4 16.9-5 34.8 4.6 39.8 21.5z"]},ote={prefix:"fas",iconName:"arrow-left-long-to-line",icon:[640,512,[],"e3d4","M265.4 105.4c12.5-12.5 32.8-12.5 45.3 0s12.5 32.8 0 45.3L237.3 224 608 224c17.7 0 32 14.3 32 32s-14.3 32-32 32l-370.7 0 73.4 73.4c12.5 12.5 12.5 32.8 0 45.3s-32.8 12.5-45.3 0l-128-128c-12.5-12.5-12.5-32.8 0-45.3l128-128zM0 128c0-17.7 14.3-32 32-32s32 14.3 32 32l0 256c0 17.7-14.3 32-32 32S0 401.7 0 384L0 128z"]},_8={prefix:"fas",iconName:"arrow-right-long",icon:[576,512,["long-arrow-right"],"f178","M566.6 278.6c12.5-12.5 12.5-32.8 0-45.3l-128-128c-12.5-12.5-32.8-12.5-45.3 0s-12.5 32.8 0 45.3L466.7 224 32 224c-17.7 0-32 14.3-32 32s14.3 32 32 32l434.7 0-73.4 73.4c-12.5 12.5-12.5 32.8 0 45.3s32.8 12.5 45.3 0l128-128z"]},ste=_8,b8={prefix:"fas",iconName:"magnifying-glass",icon:[512,512,[128269,"search"],"f002","M416 208c0 45.9-14.9 88.3-40 122.7L502.6 457.4c12.5 12.5 12.5 32.8 0 45.3s-32.8 12.5-45.3 0L330.7 376C296.3 401.1 253.9 416 208 416 93.1 416 0 322.9 0 208S93.1 0 208 0 416 93.1 416 208zM208 352a144 144 0 1 0 0-288 144 144 0 1 0 0 288z"]},ate=b8,x8={prefix:"fas",iconName:"map-location-dot",icon:[640,512,["map-marked-alt"],"f5a0","M576 48c0-11.1-5.7-21.4-15.2-27.2s-21.2-6.4-31.1-1.4L413.5 77.5 234.1 17.6c-8.1-2.7-16.8-2.1-24.4 1.7l-128 64C70.8 88.8 64 99.9 64 112l0 352c0 11.1 5.7 21.4 15.2 27.2s21.2 6.4 31.1 1.4l116.1-58.1 173.3 57.8c-4.3-6.4-8.5-13.1-12.6-19.9-11-18.3-21.9-39.3-30-61.8l-101.2-33.7 0-284.5 128 42.7 0 99.3c31-35.8 77-58.4 128-58.4 22.6 0 44.2 4.4 64 12.5L576 48zM512 224c-66.3 0-120 52.8-120 117.9 0 68.9 64.1 150.4 98.6 189.3 11.6 13 31.3 13 42.9 0 34.5-38.9 98.6-120.4 98.6-189.3 0-65.1-53.7-117.9-120-117.9zM472 344a40 40 0 1 1 80 0 40 40 0 1 1 -80 0z"]},lte=x8,w8={prefix:"fas",iconName:"ellipsis-stroke",icon:[512,512,["ellipsis-h-alt"],"f39b","M64 256a16 16 0 1 0 32 0 16 16 0 1 0 -32 0zm80 0a64 64 0 1 1 -128 0 64 64 0 1 1 128 0zm112-16a16 16 0 1 0 0 32 16 16 0 1 0 0-32zm0 80a64 64 0 1 1 0-128 64 64 0 1 1 0 128zm176-80a16 16 0 1 0 0 32 16 16 0 1 0 0-32zm0 80a64 64 0 1 1 0-128 64 64 0 1 1 0 128z"]},cte=w8,ute={prefix:"fas",iconName:"arrow-turn-down-left",icon:[512,512,[],"e2e1","M448 96c0-17.7 14.3-32 32-32s32 14.3 32 32l0 96c0 53-43 96-96 96l-306.7 0 73.4 73.4c12.5 12.5 12.5 32.8 0 45.3s-32.8 12.5-45.3 0l-128-128c-12.5-12.5-12.5-32.8 0-45.3l128-128c12.5-12.5 32.8-12.5 45.3 0s12.5 32.8 0 45.3L109.3 224 416 224c17.7 0 32-14.3 32-32l0-96z"]},S8={prefix:"fas",iconName:"ellipsis",icon:[448,512,["ellipsis-h"],"f141","M0 256a56 56 0 1 1 112 0 56 56 0 1 1 -112 0zm168 0a56 56 0 1 1 112 0 56 56 0 1 1 -112 0zm224-56a56 56 0 1 1 0 112 56 56 0 1 1 0-112z"]},dte=S8,pte={prefix:"fas",iconName:"arrows-spin",icon:[512,512,[],"e4bb","M481.7 240.1c-17.6-1.2-32.9 12-34.2 29.7-3.3 47-23.6 89.4-54.8 121L361 359c-6.9-6.9-17.2-8.9-26.2-5.2S320 366.3 320 376l0 112c0 13.3 10.7 24 24 24l112 0c9.7 0 18.5-5.8 22.2-14.8s1.7-19.3-5.2-26.2l-35-35c41.7-42.2 68.9-98.8 73.4-161.8 1.2-17.6-12-32.9-29.7-34.2zM39 41L74 76c-41.7 42.2-68.9 98.8-73.4 161.8-1.2 17.6 12 32.9 29.7 34.2s32.9-12 34.2-29.7c3.3-47 23.6-89.4 54.8-121L151 153c6.9 6.9 17.2 8.9 26.2 5.2S192 145.7 192 136l0-112c0-13.3-10.7-24-24-24L56 0C46.3 0 37.5 5.8 33.8 14.8S32.2 34.1 39 41zm201-10.7c-1.2 17.6 12 32.9 29.7 34.2 47 3.3 89.4 23.6 121 54.8L359 151c-6.9 6.9-8.9 17.2-5.2 26.2S366.3 192 376 192l112 0c13.3 0 24-10.7 24-24l0-112c0-9.7-5.8-18.5-14.8-22.2S477.9 32.2 471 39L436 74c-42.2-41.7-98.8-68.9-161.8-73.4-17.6-1.2-32.9 12-34.2 29.7zM41 473l35-35c42.2 41.7 98.8 68.9 161.8 73.4 17.6 1.2 32.9-12 34.2-29.7s-12-32.9-29.7-34.2c-47-3.3-89.4-23.6-121-54.8L153 361c6.9-6.9 8.9-17.2 5.2-26.2S145.7 320 136 320L24 320c-13.3 0-24 10.7-24 24L0 456c0 9.7 5.8 18.5 14.8 22.2S34.1 479.8 41 473z"]},hte={prefix:"fas",iconName:"circle-small",icon:[320,512,[],"e122","M0 256a160 160 0 1 1 320 0 160 160 0 1 1 -320 0z"]},fte={prefix:"fas",iconName:"filter",icon:[512,512,[],"f0b0","M32 64C19.1 64 7.4 71.8 2.4 83.8S.2 109.5 9.4 118.6L192 301.3 192 416c0 8.5 3.4 16.6 9.4 22.6l64 64c9.2 9.2 22.9 11.9 34.9 6.9S320 492.9 320 480l0-178.7 182.6-182.6c9.2-9.2 11.9-22.9 6.9-34.9S492.9 64 480 64L32 64z"]},mte={prefix:"fas",iconName:"arrow-turn-left",icon:[512,512,[],"e632","M448 416c0 17.7 14.3 32 32 32s32-14.3 32-32l0-96c0-53-43-96-96-96l-306.7 0 73.4-73.4c12.5-12.5 12.5-32.8 0-45.3s-32.8-12.5-45.3 0l-128 128c-12.5 12.5-12.5 32.8 0 45.3l128 128c12.5 12.5 32.8 12.5 45.3 0s12.5-32.8 0-45.3L109.3 288 416 288c17.7 0 32 14.3 32 32l0 96z"]},E8={prefix:"fas",iconName:"minus",icon:[448,512,[8211,8722,10134,"subtract"],"f068","M0 256c0-17.7 14.3-32 32-32l384 0c17.7 0 32 14.3 32 32s-14.3 32-32 32L32 288c-17.7 0-32-14.3-32-32z"]},gte=E8,yte={prefix:"fas",iconName:"clock-three",icon:[512,512,[],"e356","M256 0a256 256 0 1 1 0 512 256 256 0 1 1 0-512zM232 120l0 136c0 13.3 10.7 24 24 24l104 0c13.3 0 24-10.7 24-24s-10.7-24-24-24l-80 0 0-112c0-13.3-10.7-24-24-24s-24 10.7-24 24z"]},vte={prefix:"fas",iconName:"arrow-left-to-bracket",icon:[512,512,[],"e669","M160 96L96 96c-17.7 0-32 14.3-32 32l0 256c0 17.7 14.3 32 32 32l64 0c17.7 0 32 14.3 32 32s-14.3 32-32 32l-64 0c-53 0-96-43-96-96L0 128C0 75 43 32 96 32l64 0c17.7 0 32 14.3 32 32s-14.3 32-32 32zm9.4 182.6c-12.5-12.5-12.5-32.8 0-45.3l128-128c12.5-12.5 32.8-12.5 45.3 0s12.5 32.8 0 45.3L269.3 224 480 224c17.7 0 32 14.3 32 32s-14.3 32-32 32l-210.7 0 73.4 73.4c12.5 12.5 12.5 32.8 0 45.3s-32.8 12.5-45.3 0l-128-128z"]},_te={prefix:"fas",iconName:"arrow-trend-up",icon:[576,512,[],"e098","M384 160c-17.7 0-32-14.3-32-32s14.3-32 32-32l160 0c17.7 0 32 14.3 32 32l0 160c0 17.7-14.3 32-32 32s-32-14.3-32-32l0-82.7-169.4 169.4c-12.5 12.5-32.8 12.5-45.3 0L192 269.3 54.6 406.6c-12.5 12.5-32.8 12.5-45.3 0s-12.5-32.8 0-45.3l160-160c12.5-12.5 32.8-12.5 45.3 0L320 306.7 466.7 160 384 160z"]},bte={prefix:"fas",iconName:"arrow-up-to-dotted-line",icon:[384,512,[],"e0a1","M64 32A32 32 0 1 1 0 32 32 32 0 1 1 64 32zM169.4 137.4c12.5-12.5 32.8-12.5 45.3 0l128 128c12.5 12.5 12.5 32.8 0 45.3s-32.8 12.5-45.3 0L224 237.3 224 480c0 17.7-14.3 32-32 32s-32-14.3-32-32l0-242.7-73.4 73.4c-12.5 12.5-32.8 12.5-45.3 0s-12.5-32.8 0-45.3l128-128zM138.7 64a32 32 0 1 1 0-64 32 32 0 1 1 0 64zM277.3 32a32 32 0 1 1 -64 0 32 32 0 1 1 64 0zM352 64a32 32 0 1 1 0-64 32 32 0 1 1 0 64z"]},xte={prefix:"fas",iconName:"arrow-turn-left-up",icon:[384,512,[],"e634","M352 448c17.7 0 32 14.3 32 32s-14.3 32-32 32l-96 0c-53 0-96-43-96-96l0-306.7-73.4 73.4c-12.5 12.5-32.8 12.5-45.3 0s-12.5-32.8 0-45.3l128-128c12.5-12.5 32.8-12.5 45.3 0l128 128c12.5 12.5 12.5 32.8 0 45.3s-32.8 12.5-45.3 0L224 109.3 224 416c0 17.7 14.3 32 32 32l96 0z"]},wte={prefix:"fas",iconName:"arrow-u-turn-up-left",icon:[512,512,[],"e7ed","M7.7 148.2c-10.3-12.6-9.5-31.1 2.2-42.8l112-112c12.5-12.5 32.8-12.5 45.2 0s12.5 32.8 0 45.2L109.7 96 320.5 96c102.7 0 186.6 80.7 191.8 182.1l.2 9.9c0 106-86 192-192 192l-224 0-3.3-.2c-16.1-1.6-28.7-15.3-28.7-31.8s12.6-30.2 28.7-31.8l3.3-.2 224 0c70.7 0 128-57.3 128-128l-.2-6.6C444.9 213.8 389 160 320.5 160l-210.8 0 57.4 57.4 2.2 2.4c10.2 12.6 9.5 31.1-2.2 42.8s-30.2 12.4-42.8 2.2l-2.4-2.2-112-112-2.2-2.4z"]},I8={prefix:"fas",iconName:"rotate",icon:[512,512,[128260,"sync-alt"],"f2f1","M480.1 192l7.9 0c13.3 0 24-10.7 24-24l0-144c0-9.7-5.8-18.5-14.8-22.2S477.9 .2 471 7L419.3 58.8C375 22.1 318 0 256 0 127 0 20.3 95.4 2.6 219.5 .1 237 12.2 253.2 29.7 255.7s33.7-9.7 36.2-27.1C79.2 135.5 159.3 64 256 64 300.4 64 341.2 79 373.7 104.3L327 151c-6.9 6.9-8.9 17.2-5.2 26.2S334.3 192 344 192l136.1 0zm29.4 100.5c2.5-17.5-9.7-33.7-27.1-36.2s-33.7 9.7-36.2 27.1c-13.3 93-93.4 164.5-190.1 164.5-44.4 0-85.2-15-117.7-40.3L185 361c6.9-6.9 8.9-17.2 5.2-26.2S177.7 320 168 320L24 320c-13.3 0-24 10.7-24 24L0 488c0 9.7 5.8 18.5 14.8 22.2S34.1 511.8 41 505l51.8-51.8C137 489.9 194 512 256 512 385 512 491.7 416.6 509.4 292.5z"]},Ste=I8;function LA(t,e){(e==null||e>t.length)&&(e=t.length);for(var n=0,o=Array(e);n<e;n++)o[n]=t[n];return o}function Ete(t){if(Array.isArray(t))return t}function Ite(t){if(Array.isArray(t))return LA(t)}function Tte(t,e){if(!(t instanceof e))throw new TypeError("Cannot call a class as a function")}function T8(t,e){for(var n=0;n<e.length;n++){var o=e[n];o.enumerable=o.enumerable||false,o.configurable=true,"value"in o&&(o.writable=true),Object.defineProperty(t,iz(o.key),o);}}function Cte(t,e,n){return e&&T8(t.prototype,e),Object.defineProperty(t,"prototype",{writable:false}),t}function a2(t,e){var n=typeof Symbol<"u"&&t[Symbol.iterator]||t["@@iterator"];if(!n){if(Array.isArray(t)||(n=KA(t))||e){n&&(t=n);var o=0,c=function(){};return {s:c,n:function(){return o>=t.length?{done:true}:{done:false,value:t[o++]}},e:function(I){throw I},f:c}}throw new TypeError(`Invalid attempt to iterate non-iterable instance.
917
917
  In order to be iterable, non-array objects must have a [Symbol.iterator]() method.`)}var s,m=true,w=false;return {s:function(){n=n.call(t);},n:function(){var I=n.next();return m=I.done,I},e:function(I){w=true,s=I;},f:function(){try{m||n.return==null||n.return();}finally{if(w)throw s}}}}function wt(t,e,n){return (e=iz(e))in t?Object.defineProperty(t,e,{value:n,enumerable:true,configurable:true,writable:true}):t[e]=n,t}function Dte(t){if(typeof Symbol<"u"&&t[Symbol.iterator]!=null||t["@@iterator"]!=null)return Array.from(t)}function Ate(t,e){var n=t==null?null:typeof Symbol<"u"&&t[Symbol.iterator]||t["@@iterator"];if(n!=null){var o,c,s,m,w=[],I=true,P=false;try{if(s=(n=n.call(t)).next,e===0){if(Object(n)!==n)return;I=!1;}else for(;!(I=(o=s.call(n)).done)&&(w.push(o.value),w.length!==e);I=!0);}catch(L){P=true,c=L;}finally{try{if(!I&&n.return!=null&&(m=n.return(),Object(m)!==m))return}finally{if(P)throw c}}return w}}function Mte(){throw new TypeError(`Invalid attempt to destructure non-iterable instance.
918
918
  In order to be iterable, non-array objects must have a [Symbol.iterator]() method.`)}function Pte(){throw new TypeError(`Invalid attempt to spread non-iterable instance.
919
919
  In order to be iterable, non-array objects must have a [Symbol.iterator]() method.`)}function C8(t,e){var n=Object.keys(t);if(Object.getOwnPropertySymbols){var o=Object.getOwnPropertySymbols(t);e&&(o=o.filter(function(c){return Object.getOwnPropertyDescriptor(t,c).enumerable})),n.push.apply(n,o);}return n}function He(t){for(var e=1;e<arguments.length;e++){var n=arguments[e]!=null?arguments[e]:{};e%2?C8(Object(n),true).forEach(function(o){wt(t,o,n[o]);}):Object.getOwnPropertyDescriptors?Object.defineProperties(t,Object.getOwnPropertyDescriptors(n)):C8(Object(n)).forEach(function(o){Object.defineProperty(t,o,Object.getOwnPropertyDescriptor(n,o));});}return t}function h2(t,e){return Ete(t)||Ate(t,e)||KA(t,e)||Mte()}function Zs(t){return Ite(t)||Dte(t)||KA(t)||Pte()}function Rte(t,e){if(typeof t!="object"||!t)return t;var n=t[Symbol.toPrimitive];if(n!==void 0){var o=n.call(t,e);if(typeof o!="object")return o;throw new TypeError("@@toPrimitive must return a primitive value.")}return (e==="string"?String:Number)(t)}function iz(t){var e=Rte(t,"string");return typeof e=="symbol"?e:e+""}function u2(t){"@babel/helpers - typeof";return u2=typeof Symbol=="function"&&typeof Symbol.iterator=="symbol"?function(e){return typeof e}:function(e){return e&&typeof Symbol=="function"&&e.constructor===Symbol&&e!==Symbol.prototype?"symbol":typeof e},u2(t)}function KA(t,e){if(t){if(typeof t=="string")return LA(t,e);var n={}.toString.call(t).slice(8,-1);return n==="Object"&&t.constructor&&(n=t.constructor.name),n==="Map"||n==="Set"?Array.from(t):n==="Arguments"||/^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(n)?LA(t,e):void 0}}var D8=function(){},QA={},oz={},sz=null,az={mark:D8,measure:D8};try{typeof window<"u"&&(QA=window),typeof document<"u"&&(oz=document),typeof MutationObserver<"u"&&(sz=MutationObserver),typeof performance<"u"&&(az=performance);}catch{}var kte=QA.navigator||{},A8=kte.userAgent,M8=A8===void 0?"":A8,mu=QA,Zn=oz,P8=sz,r2=az;!!mu.document;var Xl=!!Zn.documentElement&&!!Zn.head&&typeof Zn.addEventListener=="function"&&typeof Zn.createElement=="function",lz=~M8.indexOf("MSIE")||~M8.indexOf("Trident/"),i2,Ote=/fa(k|kd|s|r|l|t|d|dr|dl|dt|b|slr|slpr|wsb|tl|ns|nds|es|gt|jr|jfr|jdr|usb|ufsb|udsb|cr|ss|sr|sl|st|sds|sdr|sdl|sdt|sldr|slpdr|pr|ms|vs)?[\-\ ]/,Nte=/Font ?Awesome ?([567 ]*)(Solid|Regular|Light|Thin|Duotone|Brands|Free|Pro|Sharp Duotone|Sharp|Kit|Notdog Duo|Notdog|Chisel|Etch|Graphite|Thumbprint|Jelly Fill|Jelly Duo|Jelly|Utility|Utility Fill|Utility Duo|Slab Press|Slab|Slab Duo|Slab Press Duo|Pixel|Mosaic|Vellum|Whiteboard)?.*/i,cz={classic:{fa:"solid",fas:"solid","fa-solid":"solid",far:"regular","fa-regular":"regular",fal:"light","fa-light":"light",fat:"thin","fa-thin":"thin",fab:"brands","fa-brands":"brands"},duotone:{fa:"solid",fad:"solid","fa-solid":"solid","fa-duotone":"solid",fadr:"regular","fa-regular":"regular",fadl:"light","fa-light":"light",fadt:"thin","fa-thin":"thin"},sharp:{fa:"solid",fass:"solid","fa-solid":"solid",fasr:"regular","fa-regular":"regular",fasl:"light","fa-light":"light",fast:"thin","fa-thin":"thin"},"sharp-duotone":{fa:"solid",fasds:"solid","fa-solid":"solid",fasdr:"regular","fa-regular":"regular",fasdl:"light","fa-light":"light",fasdt:"thin","fa-thin":"thin"},slab:{"fa-regular":"regular",faslr:"regular"},"slab-press":{"fa-regular":"regular",faslpr:"regular"},"slab-duo":{"fa-regular":"regular",fasldr:"regular"},"slab-press-duo":{"fa-regular":"regular",faslpdr:"regular"},thumbprint:{"fa-light":"light",fatl:"light"},vellum:{"fa-solid":"solid",favs:"solid"},pixel:{"fa-regular":"regular",fapr:"regular"},mosaic:{"fa-solid":"solid",fams:"solid"},whiteboard:{"fa-semibold":"semibold",fawsb:"semibold"},notdog:{"fa-solid":"solid",fans:"solid"},"notdog-duo":{"fa-solid":"solid",fands:"solid"},etch:{"fa-solid":"solid",faes:"solid"},graphite:{"fa-thin":"thin",fagt:"thin"},jelly:{"fa-regular":"regular",fajr:"regular"},"jelly-fill":{"fa-regular":"regular",fajfr:"regular"},"jelly-duo":{"fa-regular":"regular",fajdr:"regular"},chisel:{"fa-regular":"regular",facr:"regular"},utility:{"fa-semibold":"semibold",fausb:"semibold"},"utility-duo":{"fa-semibold":"semibold",faudsb:"semibold"},"utility-fill":{"fa-semibold":"semibold",faufsb:"semibold"}},Lte={GROUP:"duotone-group",PRIMARY:"primary",SECONDARY:"secondary"},uz=["fa-classic","fa-duotone","fa-sharp","fa-sharp-duotone","fa-thumbprint","fa-whiteboard","fa-notdog","fa-notdog-duo","fa-chisel","fa-etch","fa-graphite","fa-jelly","fa-jelly-fill","fa-jelly-duo","fa-slab","fa-slab-press","fa-slab-press-duo","fa-slab-duo","fa-mosaic","fa-pixel","fa-vellum","fa-utility","fa-utility-duo","fa-utility-fill"],xi="classic",zv="duotone",dz="sharp",pz="sharp-duotone",hz="chisel",fz="etch",mz="graphite",gz="jelly",yz="jelly-duo",vz="jelly-fill",_z="mosaic",bz="notdog",xz="notdog-duo",wz="pixel",Sz="slab",Ez="slab-duo",Iz="slab-press",Tz="slab-press-duo",Cz="thumbprint",Dz="utility",Az="utility-duo",Mz="utility-fill",Pz="vellum",Rz="whiteboard",Fte="Classic",zte="Duotone",Bte="Sharp",Ute="Sharp Duotone",Vte="Chisel",jte="Etch",$te="Graphite",Hte="Jelly",Gte="Jelly Duo",qte="Jelly Fill",Wte="Mosaic",Zte="Notdog",Yte="Notdog Duo",Xte="Pixel",Kte="Slab",Qte="Slab Duo",Jte="Slab Press",ene="Slab Press Duo",tne="Thumbprint",nne="Utility",rne="Utility Duo",ine="Utility Fill",one="Vellum",sne="Whiteboard",kz=[xi,zv,dz,pz,hz,fz,mz,gz,yz,vz,_z,bz,xz,wz,Sz,Ez,Iz,Tz,Cz,Dz,Az,Mz,Pz,Rz];(i2={},wt(wt(wt(wt(wt(wt(wt(wt(wt(wt(i2,xi,Fte),zv,zte),dz,Bte),pz,Ute),hz,Vte),fz,jte),mz,$te),gz,Hte),yz,Gte),vz,qte),wt(wt(wt(wt(wt(wt(wt(wt(wt(wt(i2,_z,Wte),bz,Zte),xz,Yte),wz,Xte),Sz,Kte),Ez,Qte),Iz,Jte),Tz,ene),Cz,tne),Dz,nne),wt(wt(wt(wt(i2,Az,rne),Mz,ine),Pz,one),Rz,sne));var ane={classic:{900:"fas",400:"far",normal:"far",300:"fal",100:"fat"},duotone:{900:"fad",400:"fadr",300:"fadl",100:"fadt"},sharp:{900:"fass",400:"fasr",300:"fasl",100:"fast"},"sharp-duotone":{900:"fasds",400:"fasdr",300:"fasdl",100:"fasdt"},slab:{400:"faslr"},"slab-press":{400:"faslpr"},"slab-duo":{400:"fasldr"},"slab-press-duo":{400:"faslpdr"},vellum:{900:"favs"},mosaic:{900:"fams"},pixel:{400:"fapr"},whiteboard:{600:"fawsb"},thumbprint:{300:"fatl"},notdog:{900:"fans"},"notdog-duo":{900:"fands"},etch:{900:"faes"},graphite:{100:"fagt"},chisel:{400:"facr"},jelly:{400:"fajr"},"jelly-fill":{400:"fajfr"},"jelly-duo":{400:"fajdr"},utility:{600:"fausb"},"utility-duo":{600:"faudsb"},"utility-fill":{600:"faufsb"}},lne={"Font Awesome 7 Free":{900:"fas",400:"far"},"Font Awesome 7 Pro":{900:"fas",400:"far",normal:"far",300:"fal",100:"fat"},"Font Awesome 7 Brands":{400:"fab",normal:"fab"},"Font Awesome 7 Duotone":{900:"fad",400:"fadr",normal:"fadr",300:"fadl",100:"fadt"},"Font Awesome 7 Sharp":{900:"fass",400:"fasr",normal:"fasr",300:"fasl",100:"fast"},"Font Awesome 7 Sharp Duotone":{900:"fasds",400:"fasdr",normal:"fasdr",300:"fasdl",100:"fasdt"},"Font Awesome 7 Jelly":{400:"fajr",normal:"fajr"},"Font Awesome 7 Jelly Fill":{400:"fajfr",normal:"fajfr"},"Font Awesome 7 Jelly Duo":{400:"fajdr",normal:"fajdr"},"Font Awesome 7 Slab":{400:"faslr",normal:"faslr"},"Font Awesome 7 Slab Press":{400:"faslpr",normal:"faslpr"},"Font Awesome 7 Slab Duo":{400:"fasldr",normal:"fasldr"},"Font Awesome 7 Slab Press Duo":{400:"faslpdr",normal:"faslpdr"},"Font Awesome 7 Pixel":{400:"fapr",normal:"fapr"},"Font Awesome 7 Mosaic":{900:"fams",normal:"fams"},"Font Awesome 7 Vellum":{900:"favs",normal:"favs"},"Font Awesome 7 Thumbprint":{300:"fatl",normal:"fatl"},"Font Awesome 7 Notdog":{900:"fans",normal:"fans"},"Font Awesome 7 Notdog Duo":{900:"fands",normal:"fands"},"Font Awesome 7 Etch":{900:"faes",normal:"faes"},"Font Awesome 7 Graphite":{100:"fagt",normal:"fagt"},"Font Awesome 7 Chisel":{400:"facr",normal:"facr"},"Font Awesome 7 Whiteboard":{600:"fawsb",normal:"fawsb"},"Font Awesome 7 Utility":{600:"fausb",normal:"fausb"},"Font Awesome 7 Utility Duo":{600:"faudsb",normal:"faudsb"},"Font Awesome 7 Utility Fill":{600:"faufsb",normal:"faufsb"}},cne=new Map([["classic",{defaultShortPrefixId:"fas",defaultStyleId:"solid",styleIds:["solid","regular","light","thin","brands"],futureStyleIds:[],defaultFontWeight:900}],["duotone",{defaultShortPrefixId:"fad",defaultStyleId:"solid",styleIds:["solid","regular","light","thin"],futureStyleIds:[],defaultFontWeight:900}],["sharp",{defaultShortPrefixId:"fass",defaultStyleId:"solid",styleIds:["solid","regular","light","thin"],futureStyleIds:[],defaultFontWeight:900}],["sharp-duotone",{defaultShortPrefixId:"fasds",defaultStyleId:"solid",styleIds:["solid","regular","light","thin"],futureStyleIds:[],defaultFontWeight:900}],["chisel",{defaultShortPrefixId:"facr",defaultStyleId:"regular",styleIds:["regular"],futureStyleIds:[],defaultFontWeight:400}],["etch",{defaultShortPrefixId:"faes",defaultStyleId:"solid",styleIds:["solid"],futureStyleIds:[],defaultFontWeight:900}],["graphite",{defaultShortPrefixId:"fagt",defaultStyleId:"thin",styleIds:["thin"],futureStyleIds:[],defaultFontWeight:100}],["jelly",{defaultShortPrefixId:"fajr",defaultStyleId:"regular",styleIds:["regular"],futureStyleIds:[],defaultFontWeight:400}],["jelly-duo",{defaultShortPrefixId:"fajdr",defaultStyleId:"regular",styleIds:["regular"],futureStyleIds:[],defaultFontWeight:400}],["jelly-fill",{defaultShortPrefixId:"fajfr",defaultStyleId:"regular",styleIds:["regular"],futureStyleIds:[],defaultFontWeight:400}],["mosaic",{defaultShortPrefixId:"fams",defaultStyleId:"solid",styleIds:["solid"],futureStyleIds:[],defaultFontWeight:900}],["notdog",{defaultShortPrefixId:"fans",defaultStyleId:"solid",styleIds:["solid"],futureStyleIds:[],defaultFontWeight:900}],["notdog-duo",{defaultShortPrefixId:"fands",defaultStyleId:"solid",styleIds:["solid"],futureStyleIds:[],defaultFontWeight:900}],["pixel",{defaultShortPrefixId:"fapr",defaultStyleId:"regular",styleIds:["regular"],futureStyleIds:[],defaultFontWeight:400}],["slab",{defaultShortPrefixId:"faslr",defaultStyleId:"regular",styleIds:["regular"],futureStyleIds:[],defaultFontWeight:400}],["slab-duo",{defaultShortPrefixId:"fasldr",defaultStyleId:"regular",styleIds:["regular"],futureStyleIds:[],defaultFontWeight:400}],["slab-press",{defaultShortPrefixId:"faslpr",defaultStyleId:"regular",styleIds:["regular"],futureStyleIds:[],defaultFontWeight:400}],["slab-press-duo",{defaultShortPrefixId:"faslpdr",defaultStyleId:"regular",styleIds:["regular"],futureStyleIds:[],defaultFontWeight:400}],["thumbprint",{defaultShortPrefixId:"fatl",defaultStyleId:"light",styleIds:["light"],futureStyleIds:[],defaultFontWeight:300}],["utility",{defaultShortPrefixId:"fausb",defaultStyleId:"semibold",styleIds:["semibold"],futureStyleIds:[],defaultFontWeight:600}],["utility-duo",{defaultShortPrefixId:"faudsb",defaultStyleId:"semibold",styleIds:["semibold"],futureStyleIds:[],defaultFontWeight:600}],["utility-fill",{defaultShortPrefixId:"faufsb",defaultStyleId:"semibold",styleIds:["semibold"],futureStyleIds:[],defaultFontWeight:600}],["vellum",{defaultShortPrefixId:"favs",defaultStyleId:"solid",styleIds:["solid"],futureStyleIds:[],defaultFontWeight:900}],["whiteboard",{defaultShortPrefixId:"fawsb",defaultStyleId:"semibold",styleIds:["semibold"],futureStyleIds:[],defaultFontWeight:600}]]),une={chisel:{regular:"facr"},classic:{brands:"fab",light:"fal",regular:"far",solid:"fas",thin:"fat"},duotone:{light:"fadl",regular:"fadr",solid:"fad",thin:"fadt"},etch:{solid:"faes"},graphite:{thin:"fagt"},jelly:{regular:"fajr"},"jelly-duo":{regular:"fajdr"},"jelly-fill":{regular:"fajfr"},mosaic:{solid:"fams"},notdog:{solid:"fans"},"notdog-duo":{solid:"fands"},pixel:{regular:"fapr"},sharp:{light:"fasl",regular:"fasr",solid:"fass",thin:"fast"},"sharp-duotone":{light:"fasdl",regular:"fasdr",solid:"fasds",thin:"fasdt"},slab:{regular:"faslr"},"slab-duo":{regular:"fasldr"},"slab-press":{regular:"faslpr"},"slab-press-duo":{regular:"faslpdr"},thumbprint:{light:"fatl"},utility:{semibold:"fausb"},"utility-duo":{semibold:"faudsb"},"utility-fill":{semibold:"faufsb"},vellum:{solid:"favs"},whiteboard:{semibold:"fawsb"}},Oz=["fak","fa-kit","fakd","fa-kit-duotone"],R8={kit:{fak:"kit","fa-kit":"kit"},"kit-duotone":{fakd:"kit-duotone","fa-kit-duotone":"kit-duotone"}},dne=["kit"],pne="kit",hne="kit-duotone",fne="Kit",mne="Kit Duotone";wt(wt({},pne,fne),hne,mne);var gne={kit:{"fa-kit":"fak"}},yne={"Font Awesome Kit":{400:"fak",normal:"fak"},"Font Awesome Kit Duotone":{400:"fakd",normal:"fakd"}},vne={kit:{fak:"fa-kit"}},k8={kit:{kit:"fak"},"kit-duotone":{"kit-duotone":"fakd"}},o2,s2={GROUP:"duotone-group",SWAP_OPACITY:"swap-opacity",PRIMARY:"primary",SECONDARY:"secondary"},_ne=["fa-classic","fa-duotone","fa-sharp","fa-sharp-duotone","fa-thumbprint","fa-whiteboard","fa-notdog","fa-notdog-duo","fa-chisel","fa-etch","fa-graphite","fa-jelly","fa-jelly-fill","fa-jelly-duo","fa-slab","fa-slab-press","fa-slab-press-duo","fa-slab-duo","fa-mosaic","fa-pixel","fa-vellum","fa-utility","fa-utility-duo","fa-utility-fill"],bne="classic",xne="duotone",wne="sharp",Sne="sharp-duotone",Ene="chisel",Ine="etch",Tne="graphite",Cne="jelly",Dne="jelly-duo",Ane="jelly-fill",Mne="mosaic",Pne="notdog",Rne="notdog-duo",kne="pixel",One="slab",Nne="slab-duo",Lne="slab-press",Fne="slab-press-duo",zne="thumbprint",Bne="utility",Une="utility-duo",Vne="utility-fill",jne="vellum",$ne="whiteboard",Hne="Classic",Gne="Duotone",qne="Sharp",Wne="Sharp Duotone",Zne="Chisel",Yne="Etch",Xne="Graphite",Kne="Jelly",Qne="Jelly Duo",Jne="Jelly Fill",ere="Mosaic",tre="Notdog",nre="Notdog Duo",rre="Pixel",ire="Slab",ore="Slab Duo",sre="Slab Press",are="Slab Press Duo",lre="Thumbprint",cre="Utility",ure="Utility Duo",dre="Utility Fill",pre="Vellum",hre="Whiteboard";(o2={},wt(wt(wt(wt(wt(wt(wt(wt(wt(wt(o2,bne,Hne),xne,Gne),wne,qne),Sne,Wne),Ene,Zne),Ine,Yne),Tne,Xne),Cne,Kne),Dne,Qne),Ane,Jne),wt(wt(wt(wt(wt(wt(wt(wt(wt(wt(o2,Mne,ere),Pne,tre),Rne,nre),kne,rre),One,ire),Nne,ore),Lne,sre),Fne,are),zne,lre),Bne,cre),wt(wt(wt(wt(o2,Une,ure),Vne,dre),jne,pre),$ne,hre));var fre="kit",mre="kit-duotone",gre="Kit",yre="Kit Duotone";wt(wt({},fre,gre),mre,yre);var vre={classic:{"fa-brands":"fab","fa-duotone":"fad","fa-light":"fal","fa-regular":"far","fa-solid":"fas","fa-thin":"fat"},duotone:{"fa-regular":"fadr","fa-light":"fadl","fa-thin":"fadt"},sharp:{"fa-solid":"fass","fa-regular":"fasr","fa-light":"fasl","fa-thin":"fast"},"sharp-duotone":{"fa-solid":"fasds","fa-regular":"fasdr","fa-light":"fasdl","fa-thin":"fasdt"},slab:{"fa-regular":"faslr"},"slab-press":{"fa-regular":"faslpr"},"slab-duo":{"fa-regular":"fasldr"},"slab-press-duo":{"fa-regular":"faslpdr"},pixel:{"fa-regular":"fapr"},mosaic:{"fa-solid":"fams"},vellum:{"fa-solid":"favs"},whiteboard:{"fa-semibold":"fawsb"},thumbprint:{"fa-light":"fatl"},notdog:{"fa-solid":"fans"},"notdog-duo":{"fa-solid":"fands"},etch:{"fa-solid":"faes"},graphite:{"fa-thin":"fagt"},jelly:{"fa-regular":"fajr"},"jelly-fill":{"fa-regular":"fajfr"},"jelly-duo":{"fa-regular":"fajdr"},chisel:{"fa-regular":"facr"},utility:{"fa-semibold":"fausb"},"utility-duo":{"fa-semibold":"faudsb"},"utility-fill":{"fa-semibold":"faufsb"}},_re={classic:["fas","far","fal","fat","fad"],duotone:["fadr","fadl","fadt"],sharp:["fass","fasr","fasl","fast"],"sharp-duotone":["fasds","fasdr","fasdl","fasdt"],slab:["faslr"],"slab-press":["faslpr"],"slab-duo":["fasldr"],"slab-press-duo":["faslpdr"],pixel:["fapr"],mosaic:["fams"],vellum:["favs"],whiteboard:["fawsb"],thumbprint:["fatl"],notdog:["fans"],"notdog-duo":["fands"],etch:["faes"],graphite:["fagt"],jelly:["fajr"],"jelly-fill":["fajfr"],"jelly-duo":["fajdr"],chisel:["facr"],utility:["fausb"],"utility-duo":["faudsb"],"utility-fill":["faufsb"]},FA={classic:{fab:"fa-brands",fad:"fa-duotone",fal:"fa-light",far:"fa-regular",fas:"fa-solid",fat:"fa-thin"},duotone:{fadr:"fa-regular",fadl:"fa-light",fadt:"fa-thin"},sharp:{fass:"fa-solid",fasr:"fa-regular",fasl:"fa-light",fast:"fa-thin"},"sharp-duotone":{fasds:"fa-solid",fasdr:"fa-regular",fasdl:"fa-light",fasdt:"fa-thin"},slab:{faslr:"fa-regular"},"slab-press":{faslpr:"fa-regular"},"slab-duo":{fasldr:"fa-regular"},"slab-press-duo":{faslpdr:"fa-regular"},pixel:{fapr:"fa-regular"},mosaic:{fams:"fa-solid"},vellum:{favs:"fa-solid"},whiteboard:{fawsb:"fa-semibold"},thumbprint:{fatl:"fa-light"},notdog:{fans:"fa-solid"},"notdog-duo":{fands:"fa-solid"},etch:{faes:"fa-solid"},graphite:{fagt:"fa-thin"},jelly:{fajr:"fa-regular"},"jelly-fill":{fajfr:"fa-regular"},"jelly-duo":{fajdr:"fa-regular"},chisel:{facr:"fa-regular"},utility:{fausb:"fa-semibold"},"utility-duo":{faudsb:"fa-semibold"},"utility-fill":{faufsb:"fa-semibold"}},bre=["fa-solid","fa-regular","fa-light","fa-thin","fa-duotone","fa-brands","fa-semibold"],Nz=["fa","fas","far","fal","fat","fad","fadr","fadl","fadt","fab","fass","fasr","fasl","fast","fasds","fasdr","fasdl","fasdt","faslr","faslpr","fasldr","faslpdr","fapr","fams","favs","fawsb","fatl","fans","fands","faes","fagt","fajr","fajfr","fajdr","facr","fausb","faudsb","faufsb"].concat(_ne,bre),xre=["solid","regular","light","thin","duotone","brands","semibold"],Lz=[1,2,3,4,5,6,7,8,9,10],wre=Lz.concat([11,12,13,14,15,16,17,18,19,20]),Sre=["aw","fw","pull-left","pull-right"],Ere=[].concat(Zs(Object.keys(_re)),xre,Sre,["2xs","xs","sm","lg","xl","2xl","beat","beat-fade","border","bounce","buzz","canvas-square","canvas-roomy","fade","flip-360","flip-both","flip-horizontal","flip-vertical","flip","float","inverse","jello","layers","layers-bottom-left","layers-bottom-right","layers-counter","layers-text","layers-top-left","layers-top-right","li","pull-end","pull-start","pulse","rotate-180","rotate-270","rotate-90","rotate-by","shake","spin-pulse","spin-reverse","spin","spin-snap","spin-snap-4","spin-snap-8","stack-1x","stack-2x","stack","swing","ul","wag","width-auto","width-fixed",s2.GROUP,s2.SWAP_OPACITY,s2.PRIMARY,s2.SECONDARY]).concat(Lz.map(function(t){return "".concat(t,"x")})).concat(wre.map(function(t){return "w-".concat(t)})),Ire={"Font Awesome 5 Free":{900:"fas",400:"far"},"Font Awesome 5 Pro":{900:"fas",400:"far",normal:"far",300:"fal"},"Font Awesome 5 Brands":{400:"fab",normal:"fab"},"Font Awesome 5 Duotone":{900:"fad"}},Zl="___FONT_AWESOME___",zA=16,Fz="fa",zz="svg-inline--fa",bp="data-fa-i2svg",BA="data-fa-pseudo-element",Tre="data-fa-pseudo-element-pending",JA="data-prefix",eM="data-icon",O8="fontawesome-i2svg",Cre="async",Dre=["HTML","HEAD","STYLE","SCRIPT"],Bz=["::before","::after",":before",":after"],Uz=(function(){try{return !0}catch{return false}})();function Bv(t){return new Proxy(t,{get:function(n,o){return o in n?n[o]:n[xi]}})}var Vz=He({},cz);Vz[xi]=He(He(He(He({},{"fa-duotone":"duotone"}),cz[xi]),R8.kit),R8["kit-duotone"]);var Are=Bv(Vz),UA=He({},une);UA[xi]=He(He(He(He({},{duotone:"fad"}),UA[xi]),k8.kit),k8["kit-duotone"]);var N8=Bv(UA),VA=He({},FA);VA[xi]=He(He({},VA[xi]),vne.kit);var tM=Bv(VA),jA=He({},vre);jA[xi]=He(He({},jA[xi]),gne.kit);Bv(jA);var Mre=Ote,jz="fa-layers-text",Pre=Nte,Rre=He({},ane);Bv(Rre);var kre=["class","data-prefix","data-icon","data-fa-transform","data-fa-mask"],PA=Lte,Ore=[].concat(Zs(dne),Zs(Ere)),Nv=mu.FontAwesomeConfig||{};function Nre(t){var e=Zn.querySelector("script["+t+"]");if(e)return e.getAttribute(t)}function Lre(t){return t===""?true:t==="false"?false:t==="true"?true:t}Zn&&typeof Zn.querySelector=="function"&&(L8=[["data-family-prefix","familyPrefix"],["data-css-prefix","cssPrefix"],["data-family-default","familyDefault"],["data-style-default","styleDefault"],["data-replacement-class","replacementClass"],["data-auto-replace-svg","autoReplaceSvg"],["data-auto-add-css","autoAddCss"],["data-search-pseudo-elements","searchPseudoElements"],["data-search-pseudo-elements-warnings","searchPseudoElementsWarnings"],["data-search-pseudo-elements-full-scan","searchPseudoElementsFullScan"],["data-observe-mutations","observeMutations"],["data-mutate-approach","mutateApproach"],["data-keep-original-source","keepOriginalSource"],["data-measure-performance","measurePerformance"],["data-show-missing-icons","showMissingIcons"]],L8.forEach(function(t){var e=h2(t,2),n=e[0],o=e[1],c=Lre(Nre(n));c!=null&&(Nv[o]=c);}));var L8,$z={styleDefault:"solid",familyDefault:xi,cssPrefix:Fz,replacementClass:zz,autoReplaceSvg:true,autoAddCss:true,searchPseudoElements:false,searchPseudoElementsWarnings:true,searchPseudoElementsFullScan:false,observeMutations:true,mutateApproach:"async",keepOriginalSource:true,measurePerformance:false,showMissingIcons:true};Nv.familyPrefix&&(Nv.cssPrefix=Nv.familyPrefix);var im=He(He({},$z),Nv);im.autoReplaceSvg||(im.observeMutations=false);var xt={};Object.keys($z).forEach(function(t){Object.defineProperty(xt,t,{enumerable:true,set:function(n){im[t]=n,Lv.forEach(function(o){return o(xt)});},get:function(){return im[t]}});});Object.defineProperty(xt,"familyPrefix",{enumerable:true,set:function(e){im.cssPrefix=e,Lv.forEach(function(n){return n(xt)});},get:function(){return im.cssPrefix}});mu.FontAwesomeConfig=xt;var Lv=[];function Fre(t){return Lv.push(t),function(){Lv.splice(Lv.indexOf(t),1);}}var fu=zA,Ba={size:16,x:0,y:0,rotate:0,flipX:false,flipY:false};function zre(t){if(!(!t||!Xl)){var e=Zn.createElement("style");e.setAttribute("type","text/css"),e.innerHTML=t;for(var n=Zn.head.childNodes,o=null,c=n.length-1;c>-1;c--){var s=n[c],m=(s.tagName||"").toUpperCase();["STYLE","LINK"].indexOf(m)>-1&&(o=s);}return Zn.head.insertBefore(e,o),t}}var Bre="0123456789abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ";function F8(){for(var t=12,e="";t-- >0;)e+=Bre[Math.random()*62|0];return e}function om(t){for(var e=[],n=(t||[]).length>>>0;n--;)e[n]=t[n];return e}function nM(t){return t.classList?om(t.classList):(t.getAttribute("class")||"").split(" ").filter(function(e){return e})}function Hz(t){return "".concat(t).replace(/&/g,"&amp;").replace(/"/g,"&quot;").replace(/'/g,"&#39;").replace(/</g,"&lt;").replace(/>/g,"&gt;")}function Ure(t){return Object.keys(t||{}).reduce(function(e,n){return e+"".concat(n,'="').concat(Hz(t[n]),'" ')},"").trim()}function f2(t){return Object.keys(t||{}).reduce(function(e,n){return e+"".concat(n,": ").concat(t[n].trim(),";")},"")}function rM(t){return t.size!==Ba.size||t.x!==Ba.x||t.y!==Ba.y||t.rotate!==Ba.rotate||t.flipX||t.flipY}function Vre(t){var e=t.transform,n=t.containerWidth,o=t.iconWidth,c={transform:"translate(".concat(n/2," 256)")},s="translate(".concat(e.x*32,", ").concat(e.y*32,") "),m="scale(".concat(e.size/16*(e.flipX?-1:1),", ").concat(e.size/16*(e.flipY?-1:1),") "),w="rotate(".concat(e.rotate," 0 0)"),I={transform:"".concat(s," ").concat(m," ").concat(w)},P={transform:"translate(".concat(o/2*-1," -256)")};return {outer:c,inner:I,path:P}}function jre(t){var e=t.transform,n=t.width,o=n===void 0?zA:n,c=t.height,s=c===void 0?zA:c,I="";return lz?I+="translate(".concat(e.x/fu-o/2,"em, ").concat(e.y/fu-s/2,"em) "):I+="translate(calc(-50% + ".concat(e.x/fu,"em), calc(-50% + ").concat(e.y/fu,"em)) "),I+="scale(".concat(e.size/fu*(e.flipX?-1:1),", ").concat(e.size/fu*(e.flipY?-1:1),") "),I+="rotate(".concat(e.rotate,"deg) "),I}var $re=`:root, :host {
@@ -1996,7 +1996,7 @@ If it declares any Font Awesome CSS pseudo-elements, they will not be rendered a
1996
1996
  `))});cspNonce=se(uf);document=se(Sn);sanitizer=se(Ny);config=se(ioe);iconLibrary=se(Vv);stackItem=se(doe,{optional:true});stack=se(poe,{optional:true});constructor(){this.stack!=null&&this.stackItem==null&&console.error('FontAwesome: fa-icon and fa-duotone-icon elements must specify stackItemSize attribute when wrapped into fa-stack. Example: <fa-icon stackItemSize="2x" />.');}findIconDefinition(n){let o=uoe(n,this.config.defaultPrefix);if("icon"in o)return o;let c=this.iconLibrary.getIconDefinition(o.prefix,o.iconName);return c??(ooe(o),null)}buildParams(){let n=this.fixedWidth(),o={flip:this.flip(),animation:this.animation(),border:this.border(),inverse:this.inverse(),size:this.size(),pull:this.pull(),rotate:this.rotate(),fixedWidth:typeof n=="boolean"?n:this.config.fixedWidth,stackItemSize:this.stackItem!=null?this.stackItem.stackItemSize():void 0},c=this.transform(),s=typeof c=="string"?pB.transform(c):c,m=this.mask(),w=m!=null?this.findIconDefinition(m):null,I={},P=this.a11yRole();P!=null&&(I.role=P);let L={};return o.rotate!=null&&!fB(o.rotate)&&(L["--fa-rotate-angle"]=`${o.rotate}`),{title:this.title(),transform:s,classes:aoe(o),mask:w??void 0,symbol:this.symbol(),attributes:I,styles:L}}static \u0275fac=function(o){return new(o||t)};static \u0275cmp=ht({type:t,selectors:[["fa-icon"]],hostAttrs:[1,"ng-fa-icon"],hostVars:2,hostBindings:function(o,c){o&2&&(d1("innerHTML",c.renderedIconHTML(),Yc),wy("title",c.title()??void 0));},inputs:{icon:[1,"icon"],title:[1,"title"],animation:[1,"animation"],mask:[1,"mask"],flip:[1,"flip"],size:[1,"size"],pull:[1,"pull"],border:[1,"border"],inverse:[1,"inverse"],symbol:[1,"symbol"],rotate:[1,"rotate"],fixedWidth:[1,"fixedWidth"],transform:[1,"transform"],a11yRole:[1,"a11yRole"]},outputs:{icon:"iconChange",title:"titleChange",animation:"animationChange",mask:"maskChange",flip:"flipChange",size:"sizeChange",pull:"pullChange",border:"borderChange",inverse:"inverseChange",symbol:"symbolChange",rotate:"rotateChange",fixedWidth:"fixedWidthChange",transform:"transformChange",a11yRole:"a11yRoleChange"},decls:0,vars:0,template:function(o,c){},encapsulation:2})}return t})();var b2=(()=>{class t{static \u0275fac=function(o){return new(o||t)};static \u0275mod=zs({type:t});static \u0275inj=Xo({})}return t})();var Ut=class t{iconLibrary=se(Vv);logger=se(Tt);getIconDefinition(e,n){let o=this.iconLibrary.getIconDefinition(e,n);return o||(this.logger.logWarning(new Error(`Icon definition not found for ${e} ${n}`)),AA)}static \u0275fac=function(n){return new(n||t)};static \u0275prov=ct({token:t,factory:t.\u0275fac})};var Wr=class t{logger=se(Tt);router=se(eu);platformId=se(Ms);history=[["/"]];resetHistory(){this.history=[["/"]],this.router.navigate(["/"]);}getCurrentPath(){return this.history.at(-1)?.join("")??"/"}navigateToHome(){this.router.navigate(["/"]),this.history.push(["/"]);}navigateToListView(){this.router.navigate(["/list"]),this.history.push(["/list"]);}navigateToSearchView(){this.router.navigate(["/search"]),this.history.push(["/search"]);}navigateToProfile(e){this.scrollToTop(),this.router.navigate(["/profile",e]),this.history.push(["/profile",e]);}navigateToRoute(e){this.router.navigate(["/route",e]),this.history.push(["/route",e]);}goBack(){if(this.history.length>1){this.history.pop();let e=this.history.pop();if(!e){this.logger.log("No previous path found");return}this.router.navigate(e),this.history.push(e);return}this.logger.log("Only current path in history");}scrollToTop(){if(Aa(this.platformId))try{let e=document.querySelector("mapvx-website");if(e){e.scrollIntoView({behavior:"smooth",block:"start"});return}window.scrollTo({top:0,behavior:"smooth"});}catch(e){this.logger.log("Error scrolling to top:",e),window.scrollTo(0,0);}}static \u0275fac=function(n){return new(n||t)};static \u0275prov=ct({token:t,factory:t.\u0275fac})};v2.autoAddCss=false;function dM(t){return _2(t)}var foe={"Yoga Studio":["fak","beauty"],"Salon / Barbershop":["fak","services"],"Event Space":["fak","events"],"Comedy Club":["fak","events"],"Women's Store":["fak","shopping"],Gym:["fak","beauty"],Spa:["fak","beauty"],"Men's Store":["fak","shopping"],"Clothing Store":["fak","shopping"],"Shoe Store":["fak","shopping"],"Gift Shop":["fak","shopping"],Winery:["fak","food-and-beverage"],"Perfume Shop":["fak","shopping"],"Sporting Goods Shop":["fak","shopping"],"Jewelry Store":["fak","shopping"],"Flower Shop":["fak","shopping"],"Watch Shop":["fak","shopping"],"Health & Beauty Service":["fak","beauty"],"Furniture / Home Store":["fak","shopping"],"Optical Shop":["fak","beauty"],"Salad Place":["fak","food-and-beverage"],"Italian Restaurant":["fak","food-and-beverage"],Cafeteria:["fak","food-and-beverage"],Restaurant:["fak","food-and-beverage"],Caf\u00E9:["fak","food-and-beverage"],"American Restaurant":["fak","food-and-beverage"],"Fast Food Restaurant":["fak","food-and-beverage"],"Cocktail Bar":["fak","food-and-beverage"],Delicatessen:["fak","food-and-beverage"],"Japanese Restaurant":["fak","food-and-beverage"],"Middle Eastern Restaurant":["fak","food-and-beverage"],"Mediterranean Restaurant":["fak","food-and-beverage"],"Brazilian Restaurant":["fak","food-and-beverage"],Pub:["fak","food-and-beverage"],"Beer Bar":["fak","food-and-beverage"],Bar:["fak","food-and-beverage"],Lounge:["fak","food-and-beverage"],Nightclub:["fak","food-and-beverage"],"Chocolate Shop":["fak","food-and-beverage"],"Ice Cream Shop":["fak","food-and-beverage"],"Donut Shop":["fak","food-and-beverage"],"Coffee Shop":["fak","food-and-beverage"],"Grocery Store":["fak","shopping"],Pharmacy:["fak","health"],"Convenience Store":["fak","shopping"],"Dentist's Office":["fak","health"],Bank:["fak","services"],"Travel Agency":["fak","airport"],"Shipping Store":["fak","services"],"Mobile Phone Shop":["fak","shopping"],Parking:["fak","parking"],"Public Restrooms":["fak","user"],"Public Bathroom":["fak","user"],"Transport Service":["fak","user"],Hotel:["fak","hotels"],"Coming soon":["fak","user"],"Roller Rink":["fak","beauty"],"Music Venue":["fak","events"],"Football Shop":["fak","shopping"],Stage:["fak","events"],Tavern:["fak","food-and-beverage"],"Point of interest":["fak","user"],Entrance:["fak","user"],Exit:["fak","user"],"Music Festival":["fak","events"],"Public Art":["fak","palette"]};function x2(t){let e=foe[t];return e||["fak","shopping"]}var hM={};w(hM,{faAirport:()=>moe,faArrowTopRight:()=>goe,faBackground:()=>pM,faBeauty:()=>yoe,faCenter:()=>voe,faCompass:()=>_oe,faCompassNorth:()=>boe,faDeals:()=>xoe,faEvents:()=>woe,faFoodAndBeverage:()=>Soe,faHealth:()=>Eoe,faHotels:()=>Ioe,faPalette:()=>Toe,faParking:()=>Coe,faRoute:()=>Doe,faServices:()=>Aoe,faShopping:()=>Moe,faUser:()=>Poe});var moe={prefix:"fak",iconName:"airport",icon:[448,512,[],"e009","M431.4 140.8c-.2-.7-.6-1.3-1.1-1.9-14.7-18.5-41.3-23.7-61.9-11.8l-84.5 48.8-49.6-32.1 4.1-2.4c3.6-2 4.8-6.6 2.8-10.2s-6.6-4.8-10.2-2.8l-10.7 6.3-28-18.2 4.1-2.4c3.6-2 4.8-6.6 2.8-10.2s-6.6-4.8-10.2-2.8l-10.7 6.3-66.7-43.2-44.9 25.9 133.4 134.5-54.3 31.4c-10.7 6.1-27.7 21.2-41 36.2L33.3 254.2c-2.3-1.2-5.1-1.2-7.2 .1L4.2 266.9C2.3 268 1 270.1 .6 272.2s.4 4.5 1.9 6.1l65.4 70.9 28.8 92.1c.7 2.2 2.3 3.9 4.5 4.7 .8 .4 1.8 .5 2.8 .5 1.3 0 2.5-.4 3.7-1l21.9-12.6c2.3-1.3 3.6-3.6 3.7-6.1l2.9-80.6c19.7-4.1 41.3-11.3 51.9-17.5l54.3-31.4 49.8 182.7 44.9-25.9-4.1-79.3 10.7-6.3c3.6-2 4.8-6.6 2.8-10.2s-6.6-4.8-10.2-2.8l-4.1 2.4-1.7-33.5 10.7-6.3c3.6-2 4.8-6.6 2.8-10.2s-6.6-4.8-10.2-2.8l-4.1 2.4-3-59.1 84.5-48.7c20.6-11.8 29.4-37.4 20.7-59.5l-.4 .5z"]},goe={prefix:"fak",iconName:"arrow-top-right",icon:[427,512,[],"e010","M41 490.7l0-320 275.1 0-88.6-95.3 35.1-38 147.7 160-148.3 160.7-34.5-38 88.6-96-225.8 0 0 266.7-49.2 0z"]},pM={prefix:"fak",iconName:"background",icon:[388,512,[],"e00a","M387.9 193.9C387.9 86.9 301 0 193.9 0S0 86.9 0 193.9 84.7 385.6 190.1 387.7l0 67.8c-11.6 1.9-20.5 11.9-20.5 24 0 13.5 11 24.4 24.4 24.4s24.4-11 24.4-24.4c0-12.1-8.8-22.2-20.5-24l0-67.8c105.3-2 190.1-88 190.1-193.8zM210.5 479.4c0 9.2-7.4 16.6-16.6 16.6s-16.6-7.4-16.6-16.6 7.4-16.6 16.6-16.6 16.6 7.4 16.6 16.6z"]},yoe={prefix:"fak",iconName:"beauty",icon:[576,512,[],"e000","M190.8 234.2c-21.8-10.6-45.1-16.3-66.9-18.6-.6-35.8 5.4-66.6 8.6-78.7 1-3.2 4.2-5.1 7.4-4.5 11.8 3.5 40 13.1 69.4 31.7-9 21.1-16 45.1-18.2 70.4l0 0zm176.6-70.4c29.1-18.6 57.6-28.2 69.4-31.7 3.2-.6 6.4 1 7.4 4.5 3.2 12.5 9.3 42.9 8.6 78.7-22.1 2.2-45.1 8-66.9 18.6-2.2-25.3-9-49-18.2-70.4l0 0zM260.9 417.6c-33.9 6.1-94.1 10.2-143.7-19.8-63-38.4-89-120-95-142.7-.6-3.2 1-6.7 4.2-7.7 21.8-5.8 101.1-23 163.8 14.4 5.1 71 49.6 131.2 70.4 155.5l0 0zM385.7 262.1c63-37.4 142.4-20.2 163.8-14.4 3.2 1 5.1 4.2 4.2 7.7-6.1 22.7-32 104.3-95 142.7-49.6 30.1-109.4 25.9-143.7 19.8 5.1-5.8 11.2-13.4 18.2-23 17.3-24 37.4-58.6 47-98.6 2.6-10.9 4.5-22.1 5.4-33.6l0 0zm-23.4-12.8c0 89.3-74.2 161.9-74.2 161.9s-74.2-72.6-74.2-161.9c0-76.8 54.4-140.8 70.1-157.8 2.2-2.2 6.1-2.2 8.3 0 15.7 17 70.1 81 70.1 157.8l0 0z"]},voe={prefix:"fak",iconName:"center",icon:[576,512,[],"e00f","M545.2 238.7l-50.9 0C486 138.2 406 57.9 305.5 49.9l0-50.9c0-9.6-8-17.3-17.3-17.3S271-10.6 271-1l0 50.9C170.5 58.2 90.5 138.2 82.2 238.7l-50.9 0c-9.6 0-17.3 8-17.3 17.3s7.7 17.3 17.3 17.3l50.9 0C90.5 373.4 170.5 454.1 271 462.1l0 50.9c0 9.6 8 17.3 17.3 17.3s17.3-7.7 17.3-17.3l0-50.9c100.2-8.3 180.8-88.6 188.8-188.8l50.9 0c9.6 0 17.3-7.7 17.3-17.3s-7.7-17.3-17.3-17.3zM459.1 256c0 5.8-.3 11.5-1 17.3-8 80.3-72.3 144.6-152.6 153-11.5 1.3-23 1.3-34.6 0-80.6-8.3-144.6-72.6-152.6-153l0 0c-.6-5.4-1-11.2-1-17.3s.3-11.5 1-17.3l0 0c8.3-80.6 72.3-144.6 152.6-152.6 11.5-1.3 23-1.3 34.6 0 80.3 8.3 144.6 72.3 152.6 152.6 .6 5.8 1 11.5 1 17.3zm-271.2 0a100.1 100.1 0 1 1 200.2 0 100.1 100.1 0 1 1 -200.2 0z"]},_oe={prefix:"fak",iconName:"compass",icon:[256,512,[],"e00d","M238.9 263.4l0 257.6-47 0-118.4-163.2 0 163.2-55.7 0 0-257.6 47 0 118.4 161.6 0-161.6 55.7 0zM26.8 203.5c-3.2 0-5.8-1.3-7.7-3.5-1.6-2.2-1.9-4.8-.6-7L119.9-4.2C121.2-7 124.7-9 128.2-9s7 1.9 8.3 4.8L238 193c1.6 3.2 .6 6.7-2.6 9s-7.7 2.2-10.9 .6l-96.3-53.4-96.3 53.4s-3.2 1.3-5.1 1.3l0 0z"]},boe={prefix:"fak",iconName:"compass-north",icon:[382,512,[],"e00b","M202.8 6.9c-6.5-6.5-17-6.5-23.6 0L112.5 73.6c-4.8 4.8-6.2 11.9-3.6 18.2 2.6 6.2 8.7 10.4 15.4 10.4l133.4 0c6.7 0 12.9-4 15.4-10.4 2.6-6.2 1.2-13.3-3.6-18.2L202.8 6.9zM191 133a190.5 190.5 0 1 0 0 381 190.5 190.5 0 1 0 0-381zm38.9 278.1l-74.7-107.9 0 97.6c0 9.9-8 17.9-17.9 17.9s-17.9-8-17.9-17.9l0-154.7c0-7.9 5.1-14.8 12.5-17s15.6 .5 20 6.9l74.7 107.9 0-97.6c0-9.9 8-17.9 17.9-17.9s17.9 8 17.9 17.9l0 154.7c0 7.9-5 14.8-12.5 17-7.4 2.3-15.6-.5-20-6.9z"]},xoe={prefix:"fak",iconName:"deals",icon:[512,512,[],"e007","M256 0a256 256 0 1 0 0 512 256 256 0 1 0 0-512zm0 30.1a225.9 225.9 0 1 1 0 451.8 225.9 225.9 0 1 1 0-451.8zM288 232l-10.2-2.2 0-66.9c19.5 6.1 30.7 23 36.8 41.6l46.7-18.6c-9.3-32-34.2-63.7-83.2-70.7l0-33.6-35.5 0 0 33.3c-53.4 5.8-81.3 41.6-81.3 80.6 0 51.5 30.1 73.3 73 81.3l8 1.6 0 72.3c-26.9-7.4-40.6-31-44.8-53.8l-49 18.6 .3 0c9.3 39.7 38.7 75.8 93.8 82.2l0 33.6 35.5 0 0-33.3c58.9-5.8 86.1-42.2 86.1-83.8 0-50.9-37.4-73-75.8-82.2zm-45.8-70.7l0 61.8c-17.6-4.8-27.5-13.8-27.5-31 0-12.5 7.7-26.2 27.5-30.7l0 0zM277.8 351l0-66.9c19.8 4.8 32 16 32 32.6s-9.6 30.1-32 34.2z"]},woe={prefix:"fak",iconName:"events",icon:[576,512,[],"e003","M421.4 122.6c-24.3-24.3-27.2-62.1-8.6-89.6 1.6-2.2 1.3-5.4-.6-7.4L370.2-16.3c-2.2-2.2-5.8-2.2-8 0L132.8 213.1c-2.2 2.2-2.2 5.8 0 8l11.5 11.5c3.5 3.5 3.5 9.3 0 12.8s-9.3 3.5-12.8 0L120 233.9c-2.2-2.2-5.8-2.2-8 0L15.7 330.2c-2.2 2.2-2.2 5.8 0 8l41.9 41.9c1.9 1.9 5.1 2.2 7.4 .6 27.5-18.6 65.3-15.7 89.6 8.6s27.2 62.1 8.6 89.6c-1.6 2.2-1.3 5.4 .6 7.4l41.9 41.9c2.2 2.2 5.8 2.2 8 0L310.1 432c2.2-2.2 2.2-5.8 0-8l-11.5-11.5c-3.5-3.5-3.5-9.3 0-12.5 3.5-3.5 9.3-3.5 12.5 0l11.5 11.5c2.2 2.2 5.8 2.2 8 0L560 182.1c2.2-2.2 2.2-5.8 0-8l-41.9-41.9c-1.9-1.9-5.1-2.2-7.4-.6-27.5 18.6-65.3 15.7-89.6-8.6zm-225 174.7c-4.5 4.5-11.8 4.5-16.3 0L152 269.1c-4.5-4.5-4.5-11.8 0-16.3s11.8-4.5 16.3 0L196.5 281c4.5 4.5 4.5 11.8 0 16.3zM247 344.6c-4.5 4.5-11.8 4.5-16.3 0l-28.2-28.2c-4.5-4.5-4.5-11.8 0-16.3s11.8-4.5 16.3 0L247 328.3c4.5 4.5 4.5 11.8 0 16.3zm48.3 48c-4.5 4.5-11.8 4.5-16.3 0l-28.2-28.2c-4.5-4.5-4.5-11.8 0-16.3s11.8-4.5 16.3 0l28.2 28.2c4.5 4.5 4.5 11.8 0 16.3zM421.4 229.1c-.3 2.9-2.6 5.4-5.1 6.7l-43.2 18.9c-1.9 1-3.5 2.2-4.2 4.2l-18.9 43.2s-1 1.9-1.9 2.6c-1.3 1.3-2.9 2.2-4.8 2.6-2.9 .3-6.1-.6-8-2.9l-31-35.2c-1.3-1.6-3.5-2.6-5.4-2.9l-46.7-4.5c-2.9 0-5.8-2.2-7-4.8s-1.3-6.1 0-8.3l23.7-40.3c1-1.9 1.6-4.2 1-6.1l-10.2-45.8c-.6-2.9 0-6.1 2.2-8.3s5.1-2.9 8.3-2.2l45.8 10.2c2.2 .3 4.2 0 6.1-1l40.3-23.7c2.6-1.6 5.8-1.6 8.3 0 2.6 1.3 4.5 4.2 4.8 7l4.5 46.7c0 2.2 1.3 4.2 2.9 5.4l35.2 31c2.2 1.9 3.2 5.1 2.9 8l0 0z"]},Soe={prefix:"fak",iconName:"food-and-beverage",icon:[512,512,[],"e001","M497.9 145.9l-127 0 0-114.6-24 0 0 114.6-127.4 0c-8 0-14.4 6.4-14.4 14.4l0 17.3c0 8 6.4 14.4 14.4 14.4l19.2 0 3.5 53.8c-61.1-30.1-140.5-23.4-192.6 18.2-29.1 23-47.4 55-48.6 90.6 0 5.1 3.8 9.3 9 9.3l301.4 0c5.1 0 9.3-4.2 9-9.3-1.6-43.5-28.8-80.6-66.6-103l-3.8-59.5 218.9 0-17 259.2c-.6 10.9-11.8 18.2-23 18.2l-116.2 0c5.1-4.5 8.6-10.9 8.6-18.2l0-19.5c0-4.8-4.2-8.3-9-8.3l-303 0c-4.8 0-9 3.5-9 8.3l0 19.5c0 17.9 19.2 29.4 37.4 29.4l390.4 0c17-.3 32.6-11.8 33.6-28.8L479 192 498.2 192c8 0 14.4-6.4 14.4-14.4l0-17.3c0-8-6.4-14.4-14.4-14.4zm3.8 31.7c0 1.9-1.6 3.8-3.8 3.8l-278.4 0c-1.9 0-3.8-1.6-3.8-3.8l0-17.3c0-1.9 1.6-3.8 3.8-3.8l278.4 0c1.9 0 3.8 1.6 3.8 3.8l0 17.3zM9.3 402.9l301.8 0c4.8 0 8.6-3.8 8.6-8.6s-3.8-8.6-8.6-8.6l-301.8 0c-4.8 0-8.6 3.8-8.6 8.6s3.8 8.6 8.6 8.6z"]},Eoe={prefix:"fak",iconName:"health",icon:[512,512,[],"e002","M256 0a256 256 0 1 0 0 512 256 256 0 1 0 0-512zm0 30.1a225.9 225.9 0 1 1 0 451.8 225.9 225.9 0 1 1 0-451.8zM393.9 212.5l-94.4 0 0-94.4c0-5.1-4.2-9.3-9.3-9.3l-68.5 0c-5.1 0-9.3 4.2-9.3 9.3l0 94.4-94.4 0c-5.1 0-9.3 4.2-9.3 9.3l0 68.5c0 5.1 4.2 9.3 9.3 9.3l94.4 0 0 94.4c0 5.1 4.2 9.3 9.3 9.3l68.5 0c5.1 0 9.3-4.2 9.3-9.3l0-94.4 94.4 0c5.1 0 9.3-4.2 9.3-9.3l0-68.5c0-5.1-4.2-9.3-9.3-9.3z"]},Ioe={prefix:"fak",iconName:"hotels",icon:[512,512,[],"e00c","M50.1 357.8l8.1-18.1 80.6 36.1-8.1 18.1zm462.7 78.7L428 207.7c14.4-8.6 26.2-21.4 33.9-36.8 10.9-22.4 11.8-48 3.2-72.3-17.9-48.3-71.7-74.9-119.7-59.2-17 5.4-31.4 15.7-42.2 29.4-7.7-2.2-15.7-3.5-23.7-4.5-3.5-.3-6.7 0-10.2-.3-1.6-4.5-3.5-8.3-5.8-11.2-2.2-3.2-5.4-6.4-9.3-9.9-14.4-12.8-32.3-21.1-51.2-22.7-5.1-.3-9.6-.6-13.4 0-4.8 .3-10.2 2.2-16 5.1-10.9 5.4-20.5 13.4-28.8 23.7L46.2 171.8c-8.3 10.9-15 23-19.8 35.5-5.4 12.5-9.3 25.9-10.9 40.3L-.5 407c-1.3 13.1 0 25.9 3.5 37.8 1.9 6.4 4.5 11.2 7.4 15.4 2.2 3.2 5.4 6.4 9.3 9.9 14.4 12.8 32.3 21.1 51.2 22.7 2.9 .3 5.4 .3 8 .3l0 0c1.9 0 3.8 0 5.4-.3 4.8-.3 10.2-2.2 16-5.1 10.9-5.4 20.5-13.4 28.8-23.7l98.6-122.9c8.3-10.9 15-23 19.8-35.5 5.4-12.5 9.3-25.9 10.9-40l13.8-136.3 1.9 0c3.5 .3 6.7 .3 10.2 .3 .6 9.3 1.9 18.6 5.4 27.8 14.4 39 52.2 63.7 91.2 63.7 3.2 0 6.4-.3 9.6-.6l42.9 116.5-44.5 14.4 12.2 37.8 46.1-15 6.4 17-59.5 19.5 12.2 37.8 61.1-19.8 8.3 22.1 37.1-13.8zM237.6 92.5c2.9-1.6 9-3.5 17.3-4.5 .3 4.2 0 8.3 0 12.8-8.6-2.9-14.7-6.1-17.3-8.3zm1.3 170.2c-1.3 11.8-4.5 23.7-9.6 34.9-4.2 10.9-9.9 21.4-17 30.7L114 450.9c-6.4 8-13.8 14.1-22.1 18.2-4.5 2.2-7.7 2.9-9.3 3.2l-9.3 0c-14.7-1.3-28.5-7.7-40-17.9-2.9-2.6-5.1-4.8-6.7-7-1-1.3-2.6-4.2-4.2-9.6-2.6-9.3-3.8-19.2-2.6-29.8L36 248.6c1.6-11.8 4.8-23.7 9.6-34.9 4.2-10.9 9.9-21.4 17-30.7L161.1 60.5c6.4-8 13.8-14.1 22.1-18.2 4.5-2.2 7.7-2.9 9.3-3.2l9.3 0c14.7 1.3 28.5 7.7 40 17.9 2.6 2.6 5.1 5.1 6.4 7l.3 .6c-8 1.3-14.7 3.2-20.5 6.1-2.6-3.2-5.8-6.1-9.6-8-6.4-2.9-13.8-3.2-20.5-.3s-12.2 8.3-15 15c-5.8 14.1 .6 30.4 14.1 36.2 3.5 1.6 7 2.2 10.9 2.2 3.2 0 6.7-.6 9.9-1.9 1.9-1 3.5-2.2 5.1-3.5 7.4 6.1 17.9 10.9 30.1 14.1L239.2 262.1zM212.9 93.1s-1.6 2.2-2.9 2.9c-1 .6-2.9 1-5.1 0-3.8-1.6-5.4-6.4-3.8-10.6 .6-1.9 2.2-3.2 4.2-4.2 1-.6 2.9-1 5.1 0 1.9 .6 3.2 2.2 3.8 4.2-.6 1.9-1.3 3.5-1.3 5.1l0 2.6zM274.4 105c.6-5.8 .6-11.5 0-17.3l2.9 0c5.1 .6 9.6 1.3 13.4 2.2-2.2 5.1-3.8 10.2-5.1 15.7-3.2 0-6.1 0-9.6-.3l-1.9 0zm52.5 38.4c-2.6-6.7-3.5-13.4-3.5-20.2 3.5-1.6 6.7-3.2 9-5.4 6.4-5.1 8-11.2 8.3-15.4 .3-4.5-1-8.6-3.2-12.5 5.4-5.8 12.2-10.9 20.2-13.4 28.2-9.3 59.5 6.7 70.1 35.2 5.1 13.8 4.5 28.5-1.6 41.3-5.8 12.2-16.3 21.1-29.1 25.3-28.2 9.3-59.5-6.7-70.1-35.2z"]},Toe={prefix:"fak",iconName:"palette",icon:[512,512,[],"e012","M453 132.6q11.2 21.2 11.2 45.1 0 46.9-37.3 64.8-5 2.4-15.2 6.6-12.9 5.4-18.9 8.5-9.8 5.1-16.3 11.1-9.2 8.5-9.1 25.7 .1 15.5 6.8 29.9 1.8 3.8 6.4 11.3 7.5 12.4 9.8 19.5 4.5 13.4 1.6 28.4-2.6 14-10.8 26.2-19.1 28.3-58.2 41.8-31.3 10.8-70.2 10.8-51.4 0-93.2-17.6-38.5-16.2-66.1-46-25.6-27.6-39.1-63.9-12.9-34.5-12.9-71.3 0-34.2 12.7-68.8 13.3-36.4 38-65.7 26.9-31.9 63.7-50.6 40.5-20.6 89.3-23.3 77.1-4.2 132.6 17 2.2 .8 3.1 2.9t.1 4.3-2.9 3.1-4.3 .1q-53.3-20.4-128-16.3-46.5 2.6-84.8 22.1-34.8 17.7-60.2 47.9-23.4 27.8-36.1 62.3-12 32.7-12 65 0 34.8 12.2 67.4 12.7 34.2 36.9 60.2 26 28 62.2 43.3 39.7 16.7 88.9 16.7 37.1 0 66.6-10.2 35.5-12.3 52.5-37.5 6.9-10.3 9.1-22 2.3-12.2-1.3-22.9-2-6-8.8-17.2-4.8-8-6.9-12.4-7.8-16.7-7.9-34.6-.1-22.1 12.8-34 7.6-6.9 18.6-12.7 6.5-3.4 19.8-8.9 9.9-4.1 14.6-6.4 30.9-14.8 30.9-54.7 0-21.1-9.9-39.8-1.1-2-.4-4.3t2.7-3.3 4.3-.4 3.3 2.7zM289.7 405.3a29.3 29.3 0 1 0 0-58.7 29.3 29.3 0 1 0 0 58.7zM267.6 162.8a29.3 29.3 0 1 0 0-58.7 29.3 29.3 0 1 0 0 58.7zM164.7 199.5a29.3 29.3 0 1 0 0-58.7 29.3 29.3 0 1 0 0 58.7zm-44.1 103a29.3 29.3 0 1 0 0-58.7 29.3 29.3 0 1 0 0 58.7zm58.8 88a29.3 29.3 0 1 0 0-58.7 29.3 29.3 0 1 0 0 58.7zM299.1 181.9c8.5 7.4 16.6 15.7 24.3 25l0 0c3.9 4.7 7.7 9.6 11.2 14.6l-19.8 21.1c1.1 12-3 24.4-12.3 33.7-.4 .4-.8 .7-1.3 1-11.3 10.6-26.1 17.2-40.8 19.9-15.1 2.8-30.7 1.5-42.4-4.3-1.6-.8-2.7-2.3-3-4.1s.3-3.6 1.6-4.9c6-6 9.1-11.4 10.8-16.5 1.8-5.2 2.2-10.2 2.6-15.6 .6-10.8 .6-23.3 12.7-35.4 9-9 21-13 32.7-12.3l22.7-21.2 1.1-1zm130.1-122c8.1-7.5 21.1-7.4 28.9 .4 4 4 6.1 9.1 6.1 14.4 .2 5.5-1.9 10.6-5.7 14.5l0 0-116.2 123.9c-3.3-4.6-6.8-9.1-10.4-13.4l0 0c-7.8-9.4-16-17.9-24.7-25.5l121.9-114.3 0 0z"]},Coe={prefix:"fak",iconName:"parking",icon:[448,512,[],"e006","M16 0L246.4 0C356.5 0 432 63.7 432 165.4S356.5 332.2 247 332.2l-119.7 0 0 179.8-111.4 0 0-512zM315.8 165.4c0-45.1-36.5-73.3-89.3-73.3l-98.9 0 0 147.8 98.9 0c52.8 0 89.3-26.9 89.3-74.6z"]},Doe={prefix:"fak",iconName:"route",icon:[384,512,[],"e00e","M22.7 206.4c-3.2-3.2-5.1-7.7-4.5-11.8 .3-4.2 3.2-7.4 7-8.6L347.8 82.6c4.8-1.6 10.2 0 14.1 4.2 3.8 3.8 5.8 9.6 4.2 14.1L262.7 423c-1.6 5.1-6.7 7.7-12.2 6.7-5.8-1-10.6-5.8-12.2-11.2L192.3 257 30.4 210.6c-2.6-.6-4.8-2.2-6.7-4.2l-.3 0z"]},Aoe={prefix:"fak",iconName:"services",icon:[512,512,[],"e005","M89.6 51.2l102.4 0c7 0 12.8-5.8 12.8-12.8S199 25.6 192 25.6l-140.8 0C22.7 25.6 0 48.6 0 76.8l0 384C0 489.3 23 512 51.2 512L192 512c7 0 12.8-5.8 12.8-12.8S199 486.4 192 486.4l-102.4 0c-7 0-12.8-5.8-12.8-12.8s5.8-12.8 12.8-12.8l102.4 0c7 0 12.8-5.8 12.8-12.8S199 435.2 192 435.2l-102.4 0c-7 0-12.8-5.8-12.8-12.8s5.8-12.8 12.8-12.8l102.4 0c7 0 12.8-5.8 12.8-12.8S199 384 192 384L89.6 384c-7 0-12.8-5.8-12.8-12.8s5.8-12.8 12.8-12.8l102.4 0c7 0 12.8-5.8 12.8-12.8S199 332.8 192 332.8l-102.4 0c-7 0-12.8-5.8-12.8-12.8s5.8-12.8 12.8-12.8l102.4 0c7 0 12.8-5.8 12.8-12.8S199 281.6 192 281.6l-102.4 0c-7 0-12.8-5.8-12.8-12.8S82.6 256 89.6 256L192 256c7 0 12.8-5.8 12.8-12.8S199 230.4 192 230.4l-102.4 0c-7 0-12.8-5.8-12.8-12.8s5.8-12.8 12.8-12.8l102.4 0c7 0 12.8-5.8 12.8-12.8S199 179.2 192 179.2l-102.4 0c-7 0-12.8-5.8-12.8-12.8s5.8-12.8 12.8-12.8l102.4 0c7 0 12.8-5.8 12.8-12.8S199 128 192 128L89.6 128c-7 0-12.8-5.8-12.8-12.8s5.8-12.8 12.8-12.8l102.4 0c7 0 12.8-5.8 12.8-12.8S199 76.8 192 76.8l-102.4 0c-7 0-12.8-5.8-12.8-12.8s5.8-12.8 12.8-12.8l0 0zM460.8 385.3l0-1.3c0-33.6-28.8-63.4-72.6-81.9 21.4-26.9 21.4-73.3 21.4-97.3 0-25.6-17.3-204.8-38.4-204.8s-38.4 179.2-38.4 204.8c0 20.2 .3 70.1 21.8 97.3-44.2 18.6-73 48.3-73 81.9l0 1.3c-29.1 6.1-51.2 31.7-51.2 62.7 0 35.5 28.8 64 64 64s64-28.8 64-64c0-31-22.1-57-51.2-62.7l0-1.3c0-23.4 25.3-46.7 64-61.4 39 14.7 64 38.1 64 61.4l0 1.3c-29.4 6.1-51.2 31.7-51.2 62.7 0 35.5 28.8 64 64 64s64-28.8 64-64c0-31-22.1-57-51.2-62.7l0 0zM256 448a38.4 38.4 0 1 1 76.8 0 38.4 38.4 0 1 1 -76.8 0zM371.2 256a12.8 12.8 0 1 1 0 25.6 12.8 12.8 0 1 1 0-25.6zM448 409.6a38.4 38.4 0 1 1 0 76.8 38.4 38.4 0 1 1 0-76.8z"]},Moe={prefix:"fak",iconName:"shopping",icon:[512,512,[],"e004","M498.1 501.1L446.6 107.8c-.6-4.8-4.8-8.6-9.6-8.6l-76.5 0 0-22.4c0-42.6-34.6-77.1-77.1-77.1-9.3 0-17.9 1.6-26.2 4.8-8.3-2.9-17-4.8-26.2-4.8-42.6 0-77.1 34.6-77.1 77.1l0 22.4-77.8 0c-4.8 0-9 3.5-9.6 8.6L14.9 501.1c0 2.9 .3 5.4 2.2 7.7s4.5 3.2 7.4 3.2l464.3 0c2.9 0 5.4-1.3 7.4-3.2s2.6-5.1 2.2-7.7l0 0zM354.4 481.3l47.7-362.6 26.6 0 47.7 364.2zM283.1 19.5c32 0 57.6 25.9 57.6 57.6l0 22.4-33 0 0-22.4c0-23-10.2-43.5-25.9-57.6l1.3 0zm-25.9 6.4c18.6 9.6 31.4 28.8 31.4 51.2l0 22.4-63 0 0-22.4c0-22.4 12.8-41.9 31.4-51.2l0 0zM173 77.1c0-32 25.9-57.6 57.6-57.6l1.3 0c-16 14.1-25.9 34.9-25.9 57.6l0 22.4-33 0 0-22.4z"]},Poe={prefix:"fak",iconName:"user",icon:[320,512,[],"e008","M190.7 104l0 0c28.8 0 52.2-23.4 52.2-52.2S219.5-.3 190.7-.3l0 0c-28.8 0-52.2 23.7-52.2 52.2s23.7 51.8 52.2 51.8zM75.8 381.1l0 0c-.6 1.6-1.6 3.2-2.9 4.8-11.5 13.8-22.7 27.2-34.2 41L12.1 458.6c-5.4 6.4-4.5 16 1.9 21.4l20.5 17.3c2.9 2.2 6.1 3.5 9.9 3.5 4.5 0 8.6-1.9 11.5-5.4 12.2-14.4 38.1-45.1 51.8-61.4 1.6-1.9 3.5-4.2 5.4-6.1 4.8-5.1 9.3-10.6 12.8-16.6 4.8-9 9.3-18.2 13.1-27.5L88.6 345.6c-4.2 11.8-8 23.7-12.2 35.2zM312 223.7l-1.3 0c-6.7-1-13.1-2.2-19.5-3.8-39.4-11.8-62.1-33-71.7-65.9-1.9-6.7-5.1-12.8-9-18.6-10.2-15.4-26.2-25.6-44.2-28.2-16.3-2.9-32.6 1.6-45.4 11.8-17.3 14.1-35.8 26.9-53.8 39.4L63 161.3c-10.2 7-19.5 16.3-26.6 26.9-9.9 14.1-20.2 28.2-30.7 42.2l-7 9.6c-4.8 6.7-3.5 16.3 3.2 21.1l21.8 15.7c6.7 4.8 16.3 3.5 21.1-3.5l7-9.6c11.8-16.3 23-32 34.9-47.4 2.2-2.6 4.5-5.1 7.4-7l-9.6 54.4c-3.5 19.2 3.5 38.4 18.2 50.9 11.8 9.9 24 20.2 35.8 30.1 13.4 11.2 26.9 22.4 40.3 33.9 1.6 1.3 2.9 3.2 3.8 5.4 7.7 20.5 15 41 22.4 61.4l20.5 56.3c2.2 6.1 8 9.9 14.1 9.9 1.6 0 3.5 0 5.1-1l25-9c7.7-2.9 11.8-11.5 9-19.2-9-25.3-33.9-94.1-47.7-131.2-1.3-2.9-2.9-5.4-5.4-7.7-13.8-11.8-27.5-23.7-41.6-34.9-1.6-1.3-2.2-1.6-1.3-5.4 2.9-11.2 5.1-22.4 6.7-33.6 2.2-16.3 4.2-28.8 7-42.9 29.4 31.7 69.8 50.6 112.6 53.4 4.2 0 8-1.3 11.2-3.8 3.2-2.9 4.8-7 4.8-11.2l0-26.9c0-7.7-5.8-14.1-13.1-15z"]};var si=class t{onDestroy=new an;logger=se(Tt);mapService=se(tr);navigatorService=se(Wr);loadedDataService=se(In);iconLibraryService=se(Ut);document=se(Sn);markers=new Set;_hasCurrentLocationMarker=false;ngOnDestroy(){this.onDestroy.next(),this.onDestroy.complete();}getIconFromPlace(e){this.logger.log("getIconFromPlace",e);let[n,o]=x2(e.localizedCategory||"");return this.iconLibraryService.getIconDefinition(n,o)}toSVGString(e){return cM(n=>{n(dM(pM)),n(dM(e));}).html.join("")}createPlaceMarkerElement(e){let n=this.getIconFromPlace(e);return this.createElement(e.mapvxId,n)}createOriginMarkerElement(){let e=this.iconLibraryService.getIconDefinition("fak","user");return this.createElement("origin",e,["route-marker","origin-marker"])}createElement(e,n,o=[]){let c=this.document.createElement("div");return c.className="marker",c.classList.add(...o),c.id=`${e}-marker`,c.innerHTML=this.toSVGString(n),c}addMarker(e){if(this.markers.has(e.mapvxId)){this.logger.log("Marker already exists for place",e.mapvxId);return}let n={element:this.createPlaceMarkerElement(e),id:e.mapvxId,coordinate:e.position,floorId:e.inFloors?.[0],onClick:()=>{this.logger.log("Marker clicked for place",e.mapvxId),this.logger.logEvent("marker_clicked",{id:e.mapvxId,name:e.title,clientId:e.clientId||""}),this.navigatorService.navigateToProfile(e.mapvxId);},anchor:"bottom"};this.mapService.addMarker(n),this.markers.add(e.mapvxId),this.logger.log("Marker added for place",e.mapvxId);}addInitialMarkers(){this.loadedDataService.getAvailablePlaces().pipe(Xi(1),ni(this.onDestroy)).subscribe({next:e=>{for(let n of e)this.addMarker(n);},error:e=>{this.logger.logWarning("Error adding initial markers",e);}});}addMarkers(e){this.mapService.mapReady.pipe(mr(n=>n),Xi(1),ni(this.onDestroy)).subscribe({next:()=>{this.removeAllMarkers();for(let n of e)this.addMarker(n);},error:n=>{this.logger.logWarning("Error adding markers",n);}});}removeAllMarkers(){for(let e of this.markers)this.mapService.removeMarker(e);this.markers.clear();}hasMarker(e){return this.markers.has(e)}selectMarker(e){if(!this.markers.has(e)){this.logger.logWarning("Marker not found",e);return}let n=this.document.getElementById(`${e}-marker`);if(!n){this.logger.logWarning("Marker not found",e);return}n.classList.add("selected");}deselectMarker(e){if(!this.markers.has(e)){this.logger.logWarning("Marker not found",e);return}let n=this.document.getElementById(`${e}-marker`);if(!n){this.logger.logWarning("Marker not found",e);return}n.classList.remove("selected");}deselectMarkers(){let e=this.document.querySelectorAll(".marker.selected");for(let n of e)n.classList.remove("selected");}addOriginMarker(e){let n={element:this.createOriginMarkerElement(),id:"origin",coordinate:e,anchor:"bottom"};this.mapService.addMarker(n),this.markers.add("origin");}addDestinationMarker(e){let n={element:this.createElement(e.mapvxId,this.getIconFromPlace(e),["route-marker","destination-marker"]),id:e.mapvxId,coordinate:e.position,anchor:"bottom"};this.mapService.addMarker(n),this.markers.add(e.mapvxId);}addRouteMarker(e){let n={element:this.createElement(e.mapvxId,this.getIconFromPlace(e),["route-marker"]),id:e.mapvxId,coordinate:e.position,anchor:"bottom"};this.mapService.addMarker(n),this.markers.add(e.mapvxId);}addRouteMarkers(e){for(let n of e)this.addRouteMarker(n);}createCurrentLocationMarkerElement(){let e=this.document.createElement("div");return e.className="current-location-marker",e.id="current-location-marker",e.innerHTML=C4,e}addCurrentLocationMarker(e){let n={element:this.createCurrentLocationMarkerElement(),id:"current-location",coordinate:e,anchor:"bottom"};this.mapService.addMarker(n),this._hasCurrentLocationMarker=true;}updateCurrentLocationMarker(e){this.mapService.updateMarkerPosition("current-location",e);}getCurrentLocationMarkerElement(){return this.document.getElementById("current-location-marker")}get hasCurrentLocationMarker(){return this._hasCurrentLocationMarker}removeCurrentLocationMarker(){this.mapService.removeMarker("current-location"),this._hasCurrentLocationMarker=false;}prepareToMapReuse(){this.removeAllMarkers();}static \u0275fac=function(n){return new(n||t)};static \u0275prov=ct({token:t,factory:t.\u0275fac})};var vu=class t{sdkService=se(wo);logger=se(Tt);markerService=se(si);currentlyWatchingLocation=dt(false);currentLocation=new Cn(null);currentBearing=new Cn(null);hasBearingPermission=false;watchId;async checkLocationPermission(){return "permissions"in navigator?navigator.permissions.query({name:"geolocation"}).then(async e=>e.state).catch(e=>(this.logger.logWarning(e),"denied")):(this.logger.log("Permissions API not supported"),"denied")}async requestLocationPermission(){return new Promise(e=>{navigator.geolocation.getCurrentPosition(()=>{console.log("requestLocationPermission granted"),e("granted");},n=>{console.log("requestLocationPermission denied",n),n.code===3?e("prompt"):e("denied");},{enableHighAccuracy:true,timeout:5e3});})}async getCurrentLocation(){return this.currentlyWatchingLocation()&&this.currentLocation.value!=null?this.currentLocation.value:new Promise((e,n)=>{navigator.geolocation.getCurrentPosition(o=>{e(I1(o));},o=>{n(new Error("Error getting current location",{cause:o}));},{enableHighAccuracy:true});})}checkBearingLocation(){typeof DeviceOrientationEvent<"u"&&"requestPermission"in DeviceOrientationEvent?DeviceOrientationEvent.requestPermission().then(n=>{this.hasBearingPermission=n==="granted";}).catch(n=>{this.logger.logWarning(n),this.hasBearingPermission=false;}):this.hasBearingPermission=true;}startWatching(){this.checkBearingLocation(),console.log("startWatching"),console.log("hasBearingPermission",this.hasBearingPermission),this.currentlyWatchingLocation.set(true),!this.watchId&&(this.watchId=this.sdkService.watchUserLocation(e=>{this.currentLocation.next(e);},e=>{this.logger.logWarning("Error watching user location",e);}),this.hasBearingPermission&&this.sdkService.watchUserHeading(e=>{this.currentBearing.next(e);},e=>{this.logger.logWarning("Error watching user bearing",e);}));}stopWatching(){this.watchId&&this.sdkService.stopWatchingUserLocation(this.watchId),this.hasBearingPermission&&this.sdkService.stopWatchingUserHeading(),this.watchId=void 0,this.markerService.removeCurrentLocationMarker(),this.currentlyWatchingLocation.set(false);}temporalStopWatching(){this.watchId&&this.sdkService.stopWatchingUserLocation(this.watchId),this.hasBearingPermission&&this.sdkService.stopWatchingUserHeading(),this.watchId=void 0;}static \u0275fac=function(n){return new(n||t)};static \u0275prov=ct({token:t,factory:t.\u0275fac})};var jv=(s=>(s[s.NotStarted=0]="NotStarted",s[s.Playing=1]="Playing",s[s.Paused=2]="Paused",s[s.Finished=3]="Finished",s[s.Stepping=4]="Stepping",s))(jv||{});var Roe=1.5,So=class t{logger=se(Tt);mapService=se(tr);sdkService=se(wo);platformId=se(Ms);document=se(Sn);animationStatusSubject=new Cn(0);activeRouteSubject=new Cn(null);currentStepSubject=new Cn(null);getRoute(e,n){return this.sdkService.getRoute(e,n)}getSecondaryOrangeColor(){if(!Aa(this.platformId))return "#EE5845";try{return getComputedStyle(this.document.documentElement).getPropertyValue("--definitions-colors-secondary-orange").trim()}catch(e){return this.logger.logWarning("Error getting --definitions-colors-secondary-orange:",e),"#EE5845"}}startAnimatingRoute(e){this.animationStatusSubject.next(1),this.activeRouteSubject.next(e),this.mapService.startAnimatingRoute(e,this.getDrawConfig(),this.getAnimationConfig(1));}startSteppingRoute(e){this.animationStatusSubject.next(4),this.activeRouteSubject.next(e),this.mapService.addStepAnimation(e,this.getDrawConfig(),this.getAnimationConfig(4));}animateNextStep(){this.mapService.nextStepAnimation();}animatePreviousStep(){this.mapService.previousStepAnimation();}centerOnCurrentStep(){this.mapService.centerOnCurrentStepAnimation();}getDrawConfig(){let e=this.getSecondaryOrangeColor();return {behindPathStyle:{type:"Solid",color:e},aheadPathStyle:{type:"Solid",color:"#000000"},routeIcon:this.getRouteIcon(e)}}getAnimationConfig(e){return {changeFloorTime:Roe,callBack:({isFinished:n,step:o})=>{n?(this.animationStatusSubject.next(3),this.currentStepSubject.next(null)):(this.animationStatusSubject.next(e),this.currentStepSubject.next(o));}}}getRouteIcon(e){let n=this.document.createElement("div");return n.className="route-icon",n.id="route-icon",n.innerHTML=`<svg width="30" height="30" viewBox="0 0 30 30" fill="none" xmlns="http://www.w3.org/2000/svg">
1997
1997
  <circle cx="15" cy="15" r="15" fill="${e}"/>
1998
1998
  <path d="M10.0788 19.6042L14.5476 8.6442C14.7061 8.25536 15.0835 8 15.5013 8C15.9191 8 16.2965 8.25536 16.455 8.6442L20.9238 19.6042C21.1946 20.2717 20.7106 21 19.9932 21C19.7684 21 19.5523 20.9246 19.3766 20.7882L15.5013 17.75L11.6232 20.7882C11.4474 20.9246 11.2313 21 11.0066 21C10.292 21 9.80512 20.2687 10.076 19.6042H10.0788Z" fill="white"/>
1999
- </svg>`,n}pauseRouteAnimation(){this.animationStatusSubject.next(2),this.mapService.pauseAnimatingRoute();}resumeRouteAnimation(){this.animationStatusSubject.next(1),this.mapService.resumeAnimatingRoute();}restartRouteAnimation(){this.animationStatusSubject.next(1),this.mapService.restartAnimatingRoute();}removeRoute(){this.animationStatusSubject.next(0),this.activeRouteSubject.next(null),this.currentStepSubject.next(null),this.mapService.removeRoute();}static \u0275fac=function(n){return new(n||t)};static \u0275prov=ct({token:t,factory:t.\u0275fac})};var w2={term:"",results:[]};function S2(t,e){let n=se(ri),o=new Yo(1),c=Ot(()=>{let s;try{s=t();}catch(m){vi(()=>o.error(m));return}vi(()=>o.next(s));},{injector:n,manualCleanup:true});return n.get(Oi).onDestroy(()=>{c.destroy(),o.complete();}),o.asObservable()}function Yn(t,e){let o=!e?.manualCleanup?e?.injector?.get(Oi)??se(Oi):null,c=koe(e?.equal),s;e?.requireSync?s=dt({kind:0},{equal:c}):s=dt({kind:1,value:e?.initialValue},{equal:c});let m,w=t.subscribe({next:I=>s.set({kind:1,value:I}),error:I=>{s.set({kind:2,error:I}),m?.();},complete:()=>{m?.();}});if(e?.requireSync&&s().kind===0)throw new tt(601,false);return m=o?.onDestroy(w.unsubscribe.bind(w)),Xe(()=>{let I=s();switch(I.kind){case 1:return I.value;case 2:throw I.error;case 0:throw new tt(601,false)}},{equal:e?.equal})}function koe(t=Object.is){return (e,n)=>e.kind===1&&n.kind===1&&t(e.value,n.value)}var Xn=class t{loadedDataService=se(In);homePlaces=dt([]);showCategoryFilters=dt(true);showCityFilter=dt(true);defaultToMap=dt(false);activeView=ii(()=>this.defaultToMap()?"map":"grid");inputValue=dt("");selectedInstitution=dt("");hideDeals=dt(false);cardWidth=dt(void 0);rowsPerPage=dt(2);initialInstitutionId=dt("");showDealLabels=dt(false);lastListedPlaces=dt([]);selectedCity=ii(()=>{let e=this.selectedInstitution(),n=this.loadedDataService.cityFilterOptions();return n.find(c=>c.institutionId===e)??(n.length>0?n[0]:void 0)});cityFilterGroups=Xe(()=>{let e=new Map(this.loadedDataService.loadedInstitutions().map(o=>[o.mapvxId,o.city])),n=[];for(let o of this.loadedDataService.cityFilterOptions()){let c=e.get(o.institutionId)?.trim()||o.name,s=n.find(m=>m.name===c);s?s.filterIds.push(o.filterId):n.push({name:c,option:o,filterIds:[o.filterId]});}return n});selectedCityGroup=Xe(()=>{let e=this.selectedCity();if(!e)return;let n=this.cityFilterGroups();return n.find(o=>o.filterIds.includes(e.filterId))??(n.length>0?n[0]:void 0)});availableCityGroups=Xe(()=>{let e=this.cityFilterGroups(),n=this.initialInstitutionId(),o=this.loadedDataService.loadedInstitutions().find(s=>s.mapvxId===n)?.city?.trim();if(!o)return e;let c=e.filter(s=>s.name===o);return c.length>0?c:e});selectedFilterId=Xe(()=>this.selectedCity()?.filterId??"");loadedPlaces=Yn(this.loadedDataService.getAvailablePlaces(),{initialValue:[]});listablePlaceIds=Xe(()=>{let e=this.loadedPlaces().filter(c=>c.visibility==="public");if(!this.showCityFilter())return new Set(e.map(c=>c.mapvxId));let n=this.selectedFilterId(),o=n===""?e:e.filter(c=>c.parentInstitutionId===n);return new Set(o.map(c=>c.mapvxId))});institutionCategoryFilters=Yn(this.loadedDataService.getInstitution().pipe(Qt(e=>{let n=e.properties;if(n){let o=n.filter(c=>"childPlaces"in c&&c.childPlaces!==void 0).map(c=>({placeData:"childPlaces"in c?c.childPlaces:[],name:c.title}));return o.splice(1,0,{name:"All",placeData:[]}),o}return []})),{initialValue:[]});categoryFiltersData=Xe(()=>{let e=this.listablePlaceIds();return this.institutionCategoryFilters().filter(n=>n.name==="All"||n.placeData.some(o=>e.has(o)))});selectedFilter=ii({source:this.categoryFiltersData,computation:(e,n)=>{let o=e.map(s=>s.name),c=n?.value;return c&&o.includes(c)?c:e[0]?.name??""}});filterId=Xe(()=>{let e=this.selectedFilterId();return e===""?this.initialInstitutionId():e});currentPageIndex=ii({source:this.selectedFilter,computation:(e,n)=>e!==n?.source?1:n?.value??1});lastCardSelected=new an;userAction=new an;lastSearchData=dt(w2);static \u0275fac=function(n){return new(n||t)};static \u0275prov=ct({token:t,factory:t.\u0275fac})};var mB={fas:{},fak:{}},fM=[];function gB(t){Object.keys(t).forEach(function(e){if(e!=="prefix"){var n=t[e],o=n.icon[2];o.forEach(function(c){typeof c=="string"&&(mB[n.prefix][c]=n);}),mB[n.prefix][n.iconName]=n,fM.push(n);}});}gB(MA);gB(hM);var E2=class t{destroy$=new an;apiKey=Wt("");institutionId=Wt("");initialData=Wt("");showCategoryFilters=Wt(true,{transform:e=>typeof e=="string"?e==="true":e});showCityFilter=Wt(true,{transform:e=>typeof e=="string"?e==="true":e});defaultToMap=Wt(false,{transform:e=>typeof e=="string"?e==="true":e});inheritFontFamily=Wt(false,{transform:e=>typeof e=="string"?e==="true":e});hideDeals=Wt(false,{transform:this.transformToBoolean});showDealLabels=Wt(false,{transform:this.transformToBoolean});cardWidth=Wt(void 0,{transform:e=>{if(!(e==null||e==="")){if(typeof e=="string"){let n=Number.parseInt(e,10);return Number.isNaN(n)||n<=0?void 0:n}return typeof e=="number"&&e<=0?void 0:e}}});rowsPerPage=Wt(2,{transform:e=>{if(typeof e=="string"){let n=Number.parseInt(e,10);return Number.isNaN(n)||n<=0?2:Math.min(Math.max(n,1),10)}return e<=0?2:Math.min(Math.max(e,1),10)}});cardSelected=Ni();userAction=Ni();router=se(eu);navigatorService=se(Wr);locationStrategy=se(Da);platformId=se(Ms);logger=se(Tt);sdkService=se(wo);loadedDataService=se(In);homeStateService=se(Xn);iconLibrary=se(Vv);isInitialized=false;isConnected=false;static instanceCount=0;static hasBeenConnected=false;static INSTITUTION_FETCH_RETRIES=3;static INSTITUTION_FETCH_RETRY_DELAY_MS=1e3;constructor(){this.loadIcons(),this.logger.sessionStart(),Ot(()=>{let e=this.apiKey();e&&e.trim()!==""&&!this.sdkService.isInitialized()&&(this.logger.log("\u{1F511} Initializing SDK with provided API key"),this.sdkService.initialize(e.trim()),this.logger.setApiKey(e.trim()),this.loadData());}),Ot(()=>{this.homeStateService.initialInstitutionId.set(this.institutionId());}),Ot(()=>{let e=this.showDealLabels();this.homeStateService.showDealLabels.set(e);}),Ot(()=>{this.homeStateService.hideDeals.set(this.hideDeals());}),Ot(()=>{this.homeStateService.cardWidth.set(this.cardWidth());}),Ot(()=>{this.homeStateService.rowsPerPage.set(this.rowsPerPage());}),Ot(()=>{let e=this.initialData();e&&e.trim()!==""&&this.processInitialData(e);}),Ot(()=>{this.homeStateService.showCategoryFilters.set(this.showCategoryFilters());}),Ot(()=>{this.homeStateService.showCityFilter.set(this.showCityFilter());}),Ot(()=>{let e=this.defaultToMap();this.logger.log("====> defaultToMap input",e),this.homeStateService.defaultToMap.set(e);}),Ot(()=>{let e=this.institutionId(),n=this.loadedDataService.institutionsLoaded();e&&e.trim()!==""&&n&&(this.loadedDataService.updateInstitution(e),this.logger.setInstitutionId(e));}),Ot(()=>{let e=this.loadedDataService.cityFilterOptions(),n=this.resolveCityOptionForInput(e);n&&this.homeStateService.selectedInstitution.set(n.institutionId);}),this.homeStateService.lastCardSelected.pipe(ni(this.destroy$)).subscribe(e=>{this.cardSelected.emit(e),this.logger.log("====> cardSelected",e);}),this.homeStateService.userAction.pipe(ni(this.destroy$)).subscribe(e=>{this.userAction.emit(e),this.logger.log("====> userAction",e);});}ngOnInit(){Aa(this.platformId)?this.handleInstanceTracking():this.logger.log("\u{1F5A5}\uFE0F Componente inicializado en servidor (SSR)");}loadIcons(){this.iconLibrary.addIcons(...fM);}loadData(){this.loadPlaces(),this.loadConfiguration(),this.loadInstitution();}async loadCityFilterOptions(e){this.loadedDataService.cityFilterOptions.set(e);let n=this.resolveCityOptionForInput(e);n&&this.homeStateService.selectedInstitution.set(n.institutionId);let o=e.filter(c=>c.type==="parent-place");Promise.all(o.map(async c=>{let s=async()=>{let w=await this.sdkService.getPlaceDetail(c.parentPlaceId);this.loadedDataService.updatePotentialParentPlaces(w);},m=async()=>{let w=await this.sdkService.getSubPlaces(c.parentPlaceId);this.loadedDataService.updateAvailablePlaces(w);};await Promise.all([s(),m()]);}));}resolveCityOptionForInput(e){let n=this.institutionId().trim();if(n!==""){let o=e.find(c=>c.institutionId===n)??e.find(c=>c.filterId===n);if(o)return o;this.logger.logWarning(`Institution id "${n}" matches no city filter option, falling back to the first one`);}return e[0]}transformToBoolean(e){return typeof e=="string"?e==="true":e}processInitialData(e){try{let n=JSON.parse(e);if(n.availablePlaces){let c=n.availablePlaces.map(s=>new xr(s)).filter(s=>s.generalCategory!=="transport"&&!s.hidePlace);this.loadedDataService.updateAvailablePlaces(c),this.logger.log(`\u2705 Successfully loaded ${c.length} places from initial data`);}if(n.institutions){let o=n.institutions.map(s=>{try{return new yp(s)}catch(m){this.logger.logWarning("\u274C Error parsing institution",m);return}}).filter(s=>s!==void 0);this.loadedDataService.setInstitutions(o);let c=o.find(s=>s.mapvxId===this.institutionId());c?this.loadedDataService.setInstitution(c):this.logger.log(`\u274C Institution not found for id ${this.institutionId()}`);}}catch(n){this.logger.log("\u274C Error processing initial data",n),this.logger.log(`\u274C Data: ${e}`);}}async loadPlaces(){let e=Aa(this.platformId)?"Browser":"Server";try{this.logger.log(`\u{1F4CD} Loading initial places data on ${e}...`);let n=await this.sdkService.getAvailablePlaces(),o=n.filter(c=>c.generalCategory!=="transport"&&!c.hidePlace);this.loadedDataService.updateAvailablePlaces(o),this.logger.log(`\u2705 Successfully loaded ${n.length} places on ${e}`);}catch(n){this.logger.log(`\u274C Error loading initial places data on ${e}:`,n);}}async loadConfiguration(){try{let e=await this.sdkService.getConfiguration();this.loadedDataService.setConfiguration(e);let n=e.cityOptions||[];this.loadCityFilterOptions(n),this.logger.log("\u2705 Successfully loaded configuration",e);}catch(e){this.logger.log("\u274C Error loading initial configuration",e);}}async loadInstitution(){try{let e=await this.fetchInstitutionsWithRetry(),n=e.find(o=>o.mapvxId===this.institutionId());this.loadedDataService.setInstitutions(e),n?(this.loadedDataService.setInstitution(n),this.logger.log("\u2705 Successfully loaded institution",n)):this.logger.log("\u274C Institution not found");}catch(e){this.logger.log(`\u274C Error loading institution data after ${t.INSTITUTION_FETCH_RETRIES} retries`,e);}}async fetchInstitutionsWithRetry(){let e;for(let n=0;n<=t.INSTITUTION_FETCH_RETRIES;n++)try{return await this.sdkService.getInstitutions()}catch(o){e=o,n<t.INSTITUTION_FETCH_RETRIES&&(this.logger.logWarning(`\u26A0\uFE0F Error loading institutions, retrying (${n+1}/${t.INSTITUTION_FETCH_RETRIES})`,o),await this.delay(t.INSTITUTION_FETCH_RETRY_DELAY_MS*(n+1)));}throw e}delay(e){return new Promise(n=>setTimeout(n,e))}handleInstanceTracking(){t.instanceCount++;let e=this.checkForExistingRouterContent(),n=this.router.url;t.hasBeenConnected||e||n!=="/"&&t.instanceCount===1?(this.logger.log("\u{1F504} Detectada reconexi\xF3n del web component"),this.logger.log(` - Instancia #${t.instanceCount}`),this.logger.log(` - URL del router: ${n}`),this.logger.log(` - Contenido en router outlet: ${e}`),this.handleReconnection()):this.logger.log(`\u{1F680} Primera conexi\xF3n del web component (instancia #${t.instanceCount})`),t.hasBeenConnected=true;}checkForExistingRouterContent(){try{let e=document.querySelector("router-outlet");return e?e.children.length>0:!1}catch{return false}}ngAfterViewInit(){this.isConnected=true,this.scheduleRouterInitialization();}ngOnDestroy(){this.logger.sessionEnd(),this.isConnected=false,this.destroy$.next(),this.destroy$.complete();}scheduleRouterInitialization(){Aa(this.platformId)?requestAnimationFrame(()=>{this.initializeRouter();}):setTimeout(()=>{this.initializeRouter();},0);}initializeRouter(){if(this.isInitialized&&this.isConnected)return;this.locationStrategy.setInitialPath("/");let e=this.router.url,n=this.router.routerState.root.firstChild;e==="/"&&!n?this.router.navigateByUrl("/").then(()=>{this.isInitialized=true;}).catch(o=>{console.error("Error en navegaci\xF3n inicial:",o),this.isInitialized=true;}):this.isInitialized=true;}handleReconnection(){this.logger.log("\u{1F504} Procesando reconexi\xF3n del web component");let e=Aa(this.platformId)?10:50;setTimeout(()=>{this.checkAndFixRouterSync();},e);}checkAndFixRouterSync(){if(!Aa(this.platformId)){this.logger.log("\u2139\uFE0F Saltando verificaci\xF3n de sincronizaci\xF3n en servidor");return}let e=this.locationStrategy.getCurrentPath()||"/",n=this.router.url,o=this.router.routerState.root.firstChild,c=this.checkForExistingRouterContent();this.logger.log("\u{1F50D} Verificando sincronizaci\xF3n del router:"),this.logger.log(` - Path interno: "${e}"`),this.logger.log(` - Router URL: "${n}"`),this.logger.log(` - Tiene ruta activa: ${!!o}`),this.logger.log(` - Contenido en router outlet: ${c}`),e==="/"&&n!=="/"||e==="/"&&!o&&c||e==="/"&&n==="/"&&c&&!o?(this.logger.log("\u26A0\uFE0F Desincronizaci\xF3n detectada - aplicando correcci\xF3n"),this.performGentleReset()):this.logger.log("\u2705 Router sincronizado correctamente");}performGentleReset(){this.logger.log("\u{1F504} Realizando reset suave del router"),this.router.navigateByUrl("/",{replaceUrl:true}).then(()=>{this.logger.log("\u2705 Navegaci\xF3n correctiva completada");}).catch(e=>{console.error("\u274C Error en navegaci\xF3n correctiva:",e);});}static \u0275fac=function(n){return new(n||t)};static \u0275cmp=ht({type:t,selectors:[["app-root"]],inputs:{apiKey:[1,"apiKey"],institutionId:[1,"institutionId"],initialData:[1,"initialData"],showCategoryFilters:[1,"showCategoryFilters"],showCityFilter:[1,"showCityFilter"],defaultToMap:[1,"defaultToMap"],inheritFontFamily:[1,"inheritFontFamily"],hideDeals:[1,"hideDeals"],showDealLabels:[1,"showDealLabels"],cardWidth:[1,"cardWidth"],rowsPerPage:[1,"rowsPerPage"]},outputs:{cardSelected:"cardSelected",userAction:"userAction"},features:[h1([Wr,Xn,si,Ut,So,vu])],decls:4,vars:2,consts:[[1,"named-container"],[1,"app-container"],[1,"app-content"]],template:function(n,o){n&1&&(be(0,"div",0)(1,"div",1)(2,"div",2),Ve(3,"router-outlet"),Ee()()()),n&2&&(we(),An("inherit-font-family",o.inheritFontFamily()));},dependencies:[b2,Qd],styles:["*[_ngcontent-%COMP%]{margin:0;padding:0}.named-container[_ngcontent-%COMP%]{container-name:mapvx-container;container-type:inline-size;width:100%}.app-container[_ngcontent-%COMP%]{display:flex;padding:0;flex-direction:column;justify-content:center;align-items:flex-start;gap:22px;background:var(--definitions-colors-background-50);font-family:Open Sans,sans-serif}.app-container.inherit-font-family[_ngcontent-%COMP%]{font-family:inherit}.app-header[_ngcontent-%COMP%]{display:flex;flex-direction:column;justify-content:center;align-items:flex-start;gap:19px}.app-header[_ngcontent-%COMP%] h1[_ngcontent-%COMP%]{color:var(--definitions-colors-text-900);font:var(--definitions-textFonts-desktop-h1);font-family:inherit}.app-header[_ngcontent-%COMP%] p[_ngcontent-%COMP%]{color:var(--definitions-colors-text-800);font:var(--definitions-textFonts-desktop-sub-1);font-family:inherit}.main-navigation[_ngcontent-%COMP%]{display:flex;gap:.5rem;justify-content:center;flex-wrap:wrap}.nav-button[_ngcontent-%COMP%]{background:#fff3;border:1px solid rgba(255,255,255,.3);color:#fff;padding:.5rem 1rem;border-radius:4px;cursor:pointer;font-size:.9rem;transition:all .2s ease}.nav-button[_ngcontent-%COMP%]:hover{background:#ffffff4d;transform:translateY(-1px)}.nav-button[_ngcontent-%COMP%]:active{transform:translateY(0)}.route-debug[_ngcontent-%COMP%]{margin-top:.5rem;text-align:center}.route-debug[_ngcontent-%COMP%] small[_ngcontent-%COMP%]{color:#fffc;font-size:.8rem;font-family:Courier New,monospace;background:#0000001a;padding:.25rem .5rem;border-radius:4px}.app-content[_ngcontent-%COMP%]{width:100%}"],changeDetection:1})};var Ooe=["categoryFilters"];function Noe(t,e){if(t&1){let n=yn();be(0,"button",14),at("click",function(){cn(n);let c=Ye();return un(c.onClearInput())}),Ve(1,"fa-icon",6),Ee();}if(t&2){let n=Ye();we(),We("icon",n.faXmark);}}function Loe(t,e){if(t&1&&Ve(0,"fa-icon",6),t&2){let n=Ye(2);We("icon",n.faCaretUp);}}function Foe(t,e){if(t&1&&Ve(0,"fa-icon",6),t&2){let n=Ye(2);We("icon",n.faCaretDown);}}function zoe(t,e){if(t&1){let n=yn();be(0,"button",21),at("click",function(){let c=cn(n).$implicit,s=Ye(3);return un(s.onCitySelect(c))}),it(1),Ee();}if(t&2){let n=e.$implicit;we(),br(" ",n.name," ");}}function Boe(t,e){if(t&1&&(be(0,"div",19),vr(1,zoe,2,1,"button",20,qd),Ee()),t&2){let n=Ye(2);we(),_r(n.citiesOptions());}}function Uoe(t,e){if(t&1){let n=yn();be(0,"div",9)(1,"button",15),at("click",function(){cn(n);let c=Ye();return un(c.onCityFilterClick())}),Ve(2,"fa-icon",6),Ee(),be(3,"button",16),at("click",function(){cn(n);let c=Ye();return un(c.onCityFilterClick())}),be(4,"span",17),it(5),Ee(),be(6,"div",18),Et(7,Loe,1,1,"fa-icon",6)(8,Foe,1,1,"fa-icon",6),Ee()(),Et(9,Boe,3,0,"div",19),Ee();}if(t&2){let n=Ye();we(),An("active",n.isCityDropdownOpen()),we(),We("icon",n.faFilter),we(3),ar(n.selectedCity()?.name),we(2),It(n.isCityDropdownOpen()?7:8),we(2),It(n.isCityDropdownOpen()?9:-1);}}var I2=class t{logger=se(Tt);stateService=se(Xn);mapService=se(tr);navigatorService=se(Wr);loadedDataService=se(In);iconLibrary=se(Ut);categoryFilters;activeView=Xe(()=>this.stateService.activeView());showCityFilter=Xe(()=>this.stateService.showCityFilter()&&this.citiesOptions().length>1);inputValue=Xe(()=>this.stateService.inputValue());citiesOptions=Xe(()=>this.stateService.availableCityGroups());selectedCity=Xe(()=>this.stateService.selectedCityGroup());isCityDropdownOpen=dt(false);mapReady=Yn(this.mapService.mapReady,{initialValue:false});faGrid2=this.iconLibrary.getIconDefinition("fas","grid-2");faMagnifyingGlass=this.iconLibrary.getIconDefinition("fas","magnifying-glass");faMapLocationDot=this.iconLibrary.getIconDefinition("fas","map-location-dot");faXmark=this.iconLibrary.getIconDefinition("fas","xmark");faCaretDown=this.iconLibrary.getIconDefinition("fas","caret-down");faCaretUp=this.iconLibrary.getIconDefinition("fas","caret-up");faFilter=this.iconLibrary.getIconDefinition("fas","filter");constructor(){Ot(()=>{if(this.stateService.activeView()==="map"&&this.mapReady()){let e=this.stateService.lastListedPlaces(),n=e.map(c=>c.inFloors?.[0]),o=this.getMostFrequentValue(n);o!==void 0&&this.mapService.updateFloor(o),setTimeout(()=>{this.mapService.fitCoordinates(e.map(c=>c.position),{padding:{top:100,left:100,right:100,bottom:100}});},100);}}),Ot(()=>{let e=this.stateService.selectedCity();e&&this.syncMapParentPlace(e);});}syncMapParentPlace(e){if(e.type==="institution"){this.mapService.removeParentPlace(),this.loadedDataService.parentPlace.set(void 0),this.logger.setParentPlaceId("");return}let n=this.loadedDataService.potentialParentPlaces().find(o=>o.mapvxId===e.parentPlaceId);n?(this.mapService.setParentPlace(n),this.loadedDataService.parentPlace.set(n),this.logger.setParentPlaceId(n.mapvxId)):(this.mapService.removeParentPlace(),this.logger.setParentPlaceId(""));}ngOnInit(){this.stateService.inputValue()!==""&&this.navigatorService.navigateToSearchView();}ngAfterViewInit(){this.readUrlParams();}readUrlParams(){let e=new URLSearchParams(location.search),n=e.get("search");if(n){this.stateService.inputValue.set(n),setTimeout(()=>{this.logger.logEvent("search_text_from_url",{term:n}),this.navigatorService.navigateToSearchView();},100);return}let o=e.get("tenant");if(o){this.logger.logEvent("profile_from_url",{id:o}),this.navigatorService.navigateToProfile(o);return}let c=e.get("destination");c&&(this.logger.logEvent("route_from_url",{id:c}),this.navigatorService.navigateToRoute(c));}onGridClick(){this.stateService.activeView.set("grid"),this.logger.logEvent("grid_view_selected");}onMapClick(){this.stateService.activeView.set("map"),this.logger.logEvent("map_view_selected");}onInputChange(e){let n=e.target;this.stateService.inputValue.set(n.value),this.navigatorService.navigateToSearchView();}onClearInput(){this.stateService.inputValue.set(""),this.stateService.userAction.next({type:"return-to-home",data:{filter:this.stateService.selectedFilter()}}),this.navigatorService.navigateToHome();}onCityFilterClick(){this.isCityDropdownOpen.update(e=>!e);}onCitySelect(e){let n=e.option;this.stateService.selectedInstitution.set(n.institutionId),this.stateService.selectedCity.set(n),this.isCityDropdownOpen.set(false),this.loadedDataService.updateInstitution(n.institutionId),this.logger.setInstitutionId(n.institutionId);}getMostFrequentValue(e){if(e.length===0)return;let n=new Map,o=0,c;for(let s of e){if(s==null)continue;let m=(n.get(s)||0)+1;n.set(s,m),m>o&&(o=m,c=s);}return c}static \u0275fac=function(n){return new(n||t)};static \u0275cmp=ht({type:t,selectors:[["app-home-screen"]],viewQuery:function(n,o){if(n&1&&bf(Ooe,5),n&2){let c;Ey(c=Iy())&&(o.categoryFilters=c.first);}},decls:23,vars:12,consts:[[1,"home-screen"],[1,"sub-navigation"],[1,"sub-nav-top"],[1,"search-section"],[1,"search-bar"],[1,"search-icon"],[3,"icon"],["name","search input","type","text","placeholder","Search...",1,"search-input",3,"input","value"],[1,"search-clear"],[1,"city-filter-container"],[1,"view-toggle"],[1,"view-btn",3,"click"],[1,"view-icon"],[1,"sub-content"],[1,"search-clear",3,"click"],[1,"mobile-city-filter",3,"click"],[1,"desktop-city-filter",3,"click"],[1,"city-text"],[1,"dropdown-icon"],[1,"city-dropdown"],[1,"city-option"],[1,"city-option",3,"click"]],template:function(n,o){n&1&&(be(0,"div",0)(1,"div",1)(2,"div",2)(3,"div",3)(4,"div",4)(5,"div",5),Ve(6,"fa-icon",6),Ee(),be(7,"input",7),at("input",function(s){return o.onInputChange(s)}),Ee(),Et(8,Noe,2,1,"button",8),Ee(),Et(9,Uoe,10,6,"div",9),Ee(),be(10,"div",10)(11,"button",11),at("click",function(){return o.onGridClick()}),be(12,"div",12),Ve(13,"fa-icon",6),Ee(),be(14,"span"),it(15,"Grid View"),Ee()(),be(16,"button",11),at("click",function(){return o.onMapClick()}),be(17,"div",12),Ve(18,"fa-icon",6),Ee(),be(19,"span"),it(20,"Map View"),Ee()()()()(),be(21,"div",13),Ve(22,"router-outlet"),Ee()()),n&2&&(we(4),An("active",o.inputValue()!==""),we(2),We("icon",o.faMagnifyingGlass),we(),We("value",o.inputValue()),we(),It(o.inputValue()!==""?8:-1),we(),It(o.showCityFilter()?9:-1),we(2),An("active",o.activeView()==="grid"),we(2),We("icon",o.faGrid2),we(3),An("active",o.activeView()==="map"),we(2),We("icon",o.faMapLocationDot));},dependencies:[tn,Qd],styles:["*[_ngcontent-%COMP%]{margin:0;padding:0;border:0}.home-screen[_ngcontent-%COMP%]{display:flex;flex-direction:column;gap:36px}.sub-navigation[_ngcontent-%COMP%]{display:flex;flex-direction:column;gap:2.25rem;margin-bottom:1.5rem}.sub-nav-top[_ngcontent-%COMP%]{display:flex;justify-content:space-between;align-items:center;gap:40px}@container mapvx-container (width <= 640px){.sub-nav-top[_ngcontent-%COMP%]{gap:13px}}.search-section[_ngcontent-%COMP%]{display:flex;gap:24px;align-items:center}@container mapvx-container (width <= 640px){.search-section[_ngcontent-%COMP%]{gap:11px}}.search-bar[_ngcontent-%COMP%]{background:var(--definitions-colors-background-white);border-bottom:1px solid var(--definitions-colors-primary-black);display:flex;width:342px;padding:12px 20px;align-items:center;gap:10px}@container mapvx-container (width <= 960px){.search-bar[_ngcontent-%COMP%]{width:150px}}@container mapvx-container (width <= 640px){.search-bar[_ngcontent-%COMP%]{width:110px}}.search-bar.active[_ngcontent-%COMP%]{border-bottom:1px solid var(--definitions-colors-secondary-orange)}.search-icon[_ngcontent-%COMP%]{color:var(--definitions-colors-text-800);display:flex;align-items:center;font-size:20px}.search-bar.active[_ngcontent-%COMP%] fa-icon[_ngcontent-%COMP%]{color:var(--definitions-colors-secondary-orange)}.search-clear[_ngcontent-%COMP%]{color:var(--definitions-colors-secondary-orange);display:flex;align-items:center;font-size:20px;border:none;background:none}.search-clear[_ngcontent-%COMP%]:hover{cursor:pointer}.search-input[_ngcontent-%COMP%]{border:none;outline:none;background:transparent;font:var(--definitions-textFonts-desktop-button-4);font-family:inherit;color:var(--definitions-colors-text-800);width:100%}.search-input[_ngcontent-%COMP%]::placeholder{color:var(--definitions-colors-text-800)}.city-filter-container[_ngcontent-%COMP%]{position:relative}.desktop-city-filter[_ngcontent-%COMP%]{display:flex;align-items:center;gap:.5rem;padding:.875rem 1rem;height:45px;box-sizing:border-box;cursor:pointer;border:none;background:none}@container mapvx-container (width <= 640px){.desktop-city-filter[_ngcontent-%COMP%]{display:none}}.city-text[_ngcontent-%COMP%]{font:var(--definitions-textFonts-desktop-button-5);font-family:inherit;color:var(--definitions-colors-text-900);white-space:nowrap}.dropdown-icon[_ngcontent-%COMP%]{color:var(--definitions-colors-text-900);display:flex;align-items:center;font-size:12px}.mobile-city-filter[_ngcontent-%COMP%]{display:none}@container mapvx-container (width <= 640px){.mobile-city-filter[_ngcontent-%COMP%]{display:flex;height:45px;width:52px;padding:0;justify-content:center;align-items:center;gap:10px;cursor:pointer;border:none;background:var(--definitions-colors-background-white);color:var(--definitions-colors-primary-black);font-size:20px}.mobile-city-filter.active[_ngcontent-%COMP%]{background:var(--definitions-colors-primary-black);color:var(--definitions-colors-black_white-50)}}.city-dropdown[_ngcontent-%COMP%]{position:absolute;top:100%;left:0;right:0;background:var(--definitions-colors-background-white);border:1px solid var(--definitions-colors-primary-300);z-index:1;padding:8px 0;min-width:111px}.city-option[_ngcontent-%COMP%]{display:block;width:100%;padding:12px 16px;border:none;background:none;text-align:center;cursor:pointer;font:var(--definitions-textFonts-desktop-input-2);font-family:inherit;color:var(--definitions-colors-text-900);transition:background-color .2s ease}.city-option[_ngcontent-%COMP%]:not(:last-child){border-bottom:1px solid var(--definitions-colors-primary-100)}.city-option[_ngcontent-%COMP%]:hover{background:var(--definitions-colors-background-50)}.view-toggle[_ngcontent-%COMP%]{display:flex;align-items:center}.view-btn[_ngcontent-%COMP%]{display:flex;align-items:center;gap:.625rem;padding:10px 28px;border:none;background:var(--definitions-colors-background-50);cursor:pointer;font:var(--definitions-textFonts-desktop-button-2);font-family:inherit;color:var(--definitions-colors-text-900);white-space:nowrap;transition:all .2s ease;position:relative;border-bottom:1px solid var(--definitions-colors-text-900)}.view-btn.active[_ngcontent-%COMP%]{background:var(--definitions-colors-text-900);color:var(--definitions-colors-text-50)}.view-btn[_ngcontent-%COMP%] .view-icon[_ngcontent-%COMP%]{display:flex;align-items:center;color:currentcolor}@container mapvx-container (width <= 770px){.view-btn[_ngcontent-%COMP%]{padding:10px 0;width:52px;justify-content:center}.view-btn[_ngcontent-%COMP%] span[_ngcontent-%COMP%]{display:none}}@container mapvx-container (width <= 640px){.view-btn[_ngcontent-%COMP%]{padding:10px 0;width:52px;justify-content:center}.view-btn[_ngcontent-%COMP%] span[_ngcontent-%COMP%]{display:none}}"]})};function T2(t){return t.tags?.includes("deals")||t.tags?.includes("events")}function yB(t){let e="#EE5845";if(!t?.trim())return e;let o=/style\s*=\s*["']([^"']*)["']/i.exec(t);if(!o?.[1])return e;let c=o[1],m=/(?:^|;)\s*color\s*:\s*([^;]+)/i.exec(c);return Voe(m?.[1])??e}function Voe(t){if(!t)return null;let e=t.trim().replace(/\s*!important\s*$/i,""),n=e.toLowerCase(),o=/^#[0-9a-f]{3,8}$/i.test(e),c=/^rgba?\(\s*\d{1,3}\s*,\s*\d{1,3}\s*,\s*\d{1,3}(?:\s*,\s*(0|1|0?\.\d+))?\s*\)$/i.test(e),s=/^hsla?\(\s*\d{1,3}(?:deg)?\s*,\s*\d{1,3}%\s*,\s*\d{1,3}%(?:\s*,\s*(0|1|0?\.\d+))?\s*\)$/i.test(e),m=/^[a-z]+$/i.test(e);return o||c||s||m?o?e.toUpperCase():n:null}var joe=()=>({rotate:42});function $oe(t,e){if(t&1&&Ve(0,"fa-icon",3),t&2){let n=Ye();We("icon",n.faCircleNotch)("transform",zl(2,joe));}}function Hoe(t,e){t&1&&(be(0,"div",4),it(1,"Deals + Events"),Ee());}var C2=class t{logger=se(Tt);iconLibrary=se(Ut);navigatorService=se(Wr);homeStateService=se(Xn);fromSearch=Wt(false);place=Wt.required();hasDealsOrEvents=Xe(()=>this.place().banners.some(T2));hideDeals=Xe(()=>this.homeStateService.hideDeals());showDealLabels=Xe(()=>this.homeStateService.showDealLabels());imageSrc=Xe(()=>this.place().images[0]||this.place().logo||T1);isImageLoading=dt(true);faCircleNotch=this.iconLibrary.getIconDefinition("fas","circle-notch");constructor(){Ot(()=>{this.imageSrc()&&this.startImageLoading();});}navigateToProfile(){let e=this.place(),n=e.mapvxId;this.homeStateService.lastCardSelected.next(n),this.navigatorService.navigateToProfile(n),this.fromSearch()?this.logger.logEvent("search_result_card_selected",{id:n,name:e.title,clientId:e.clientId||""}):this.logger.logEvent("card_selected",{id:n,name:e.title,clientId:e.clientId||""});}startImageLoading(){this.isImageLoading.set(true);}endImageLoading(){this.isImageLoading.set(false);}static \u0275fac=function(n){return new(n||t)};static \u0275cmp=ht({type:t,selectors:[["app-location-card"]],inputs:{fromSearch:[1,"fromSearch"],place:[1,"place"]},decls:12,vars:8,consts:[[1,"location-card",3,"click"],[1,"card-image"],[3,"load","error","src","alt"],[1,"loading-icon",3,"icon","transform"],[1,"card-deals-or-events"],[1,"card-content"],[1,"location-name"],[1,"location-address"],[1,"location-category"]],template:function(n,o){n&1&&(be(0,"button",0),at("click",function(){return o.navigateToProfile()}),be(1,"div",1)(2,"img",2),at("load",function(){return o.endImageLoading()})("error",function(){return o.endImageLoading()}),Ee(),Et(3,$oe,1,3,"fa-icon",3)(4,Hoe,2,0,"div",4),Ee(),be(5,"div",5)(6,"h3",6),it(7),Ee(),be(8,"p",7),it(9),Ee(),be(10,"span",8),it(11),Ee()()()),n&2&&(we(),An("loading",o.isImageLoading()),we(),We("src",o.imageSrc(),jd)("alt",o.place().title),we(),It(o.isImageLoading()?3:o.hasDealsOrEvents()&&!o.hideDeals()&&o.showDealLabels()?4:-1),we(4),ar(o.place().title),we(2),ar(o.place().address),we(2),ar(o.place().localizedCategory));},dependencies:[tn],styles:["*[_ngcontent-%COMP%]{margin:0;padding:0}.location-card[_ngcontent-%COMP%]{display:flex;padding:5px 5px 10px;flex-direction:column;align-items:flex-start;gap:12px;background:var(--definitions-colors-background-50);border:none;width:100%}.location-card[_ngcontent-%COMP%]:hover{cursor:pointer}.card-image[_ngcontent-%COMP%]{width:100%;overflow:hidden;position:relative;aspect-ratio:1/1}@container mapvx-container (width <= 640px){.card-image[_ngcontent-%COMP%]{min-width:160px;min-height:160px}}.card-image[_ngcontent-%COMP%] img[_ngcontent-%COMP%]{width:100%;height:100%;object-fit:cover;display:block;transition:transform .4s ease}.card-image[_ngcontent-%COMP%] img[_ngcontent-%COMP%]:hover{transform:scale(1.2)}.card-image[_ngcontent-%COMP%] .card-deals-or-events[_ngcontent-%COMP%]{position:absolute;bottom:0;left:0;width:100%;background-color:var(--definitions-colors-secondary-orange);color:var(--definitions-colors-text-white);display:flex;padding:5px;justify-content:center;align-items:center;gap:8.462px;flex-shrink:0;font:var(--definitions-textFonts-desktop-body-4);font-family:inherit}.card-image.loading[_ngcontent-%COMP%]{background-color:var(--definitions-colors-primary-300);display:flex;justify-content:center;align-items:center}.card-image.loading[_ngcontent-%COMP%] .loading-icon[_ngcontent-%COMP%]{color:var(--definitions-colors-primary-600);font-size:100px}.card-image.loading[_ngcontent-%COMP%] img[_ngcontent-%COMP%]{display:none}.card-content[_ngcontent-%COMP%]{display:flex;width:100%;flex-direction:column;align-items:flex-start;gap:8px}@container mapvx-container (width <= 640px){.card-content[_ngcontent-%COMP%]{min-width:160px}}.location-name[_ngcontent-%COMP%]{color:var(--definitions-colors-text-black);font:var(--definitions-textFonts-desktop-body-3);font-family:inherit;display:-webkit-box;-webkit-line-clamp:1;-webkit-box-orient:vertical;overflow:hidden;text-overflow:ellipsis;text-align:start}.location-address[_ngcontent-%COMP%]{color:var(--definitions-colors-text-grey);font:var(--definitions-textFonts-desktop-body-5);font-family:inherit;display:-webkit-box;-webkit-line-clamp:1;-webkit-box-orient:vertical;overflow:hidden;text-overflow:ellipsis;text-align:start}.location-category[_ngcontent-%COMP%]{color:var(--definitions-colors-text-light-grey);font:var(--definitions-textFonts-desktop-body-5);font-family:inherit;display:none}"]})};var Goe=["cardContainer"],qoe=["*"];function Woe(t,e){if(t&1&&Ve(0,"app-location-card",3),t&2){let n=e.$implicit,o=Ye();We("place",n)("fromSearch",o.fromSearch());}}function Zoe(t,e){t&1&&Ll(0);}function Yoe(t,e){if(t&1){let n=yn();be(0,"button",7),at("click",function(){cn(n);let c=Ye(3);return un(c.previousPage())}),Ve(1,"fa-icon",8),Ee();}if(t&2){let n=Ye(3);we(),We("icon",n.faChevronLeft);}}function Xoe(t,e){if(t&1&&Et(0,Yoe,2,1,"button",6),t&2){let n=Ye().$implicit,o=Ye();It(n<o.currentPageIndex()?0:-1);}}function Koe(t,e){t&1&&(be(0,"button",9),it(1,"..."),Ee());}function Qoe(t,e){if(t&1){let n=yn();be(0,"button",11),at("click",function(){cn(n);let c=Ye(3);return un(c.nextPage())}),Ve(1,"fa-icon",8),Ee();}if(t&2){let n=Ye(3);we(),We("icon",n.faChevronRight);}}function Joe(t,e){if(t&1&&(Et(0,Koe,2,0,"button",9),Et(1,Qoe,2,1,"button",10)),t&2){let n=Ye().$implicit,o=Ye();It(n<o.totalPages()?0:-1),we(),It(n>o.currentPageIndex()?1:-1);}}function ese(t,e){if(t&1){let n=yn();Et(0,Xoe,1,1),be(1,"button",5),at("click",function(){let c=cn(n).$implicit,s=Ye();return un(s.goToPage(c))}),it(2),Ee(),Et(3,Joe,2,2);}if(t&2){let n=e.$implicit,o=e.$index,c=e.$count,s=Ye();It(o===0?0:-1),we(),An("active",s.currentPageIndex()===n),we(),br(" ",n," "),we(),It(o===c-1?3:-1);}}var sm=class t{logger=se(Tt);stateService=se(Xn);iconLibrary=se(Ut);cardContainer=y1("cardContainer");faChevronLeft=this.iconLibrary.getIconDefinition("fas","chevron-left");faChevronRight=this.iconLibrary.getIconDefinition("fas","chevron-right");fromSearch=Wt(false);places=Wt.required();itemsPerPage=Xe(()=>this.calculateItemsPerPage(this.showMap(),this.cardContainer(),this.stateService.cardWidth(),this.stateService.rowsPerPage()));totalPages=Xe(()=>Math.ceil(this.places().length/this.itemsPerPage()));currentPageIndex=Xe(()=>{let e=this.totalPages(),n=this.stateService.currentPageIndex();return e>0&&n>e?e:n});cardContainerStyles=Xe(()=>{let e=this.stateService.cardWidth();return e?{"--card-width":`${e}`}:{}});pages=Xe(()=>{let e=this.totalPages();switch(e){case 0:return [];case 1:return [1];case 2:return [1,2];default:{let o=this.currentPageIndex()-1;return o<1&&(o=1),o+2>e&&(o=e-2),Array.from({length:3},(c,s)=>s+o)}}});currentPagePlaces=Xe(()=>{let e=this.places(),n=this.itemsPerPage(),o=this.currentPageIndex();return e.slice((o-1)*n,o*n)});showMap=Xe(()=>this.stateService.activeView()==="map");constructor(){pL(()=>{let e=this.currentPageIndex();e!==this.stateService.currentPageIndex()&&this.stateService.currentPageIndex.set(e);});}calculateItemsPerPage(e,n,o,c=2){try{if(n){let s=globalThis.getComputedStyle(n.nativeElement),m=o??Number.parseInt(s.getPropertyValue("--card-width")||"0"),w=Number.parseInt(s.getPropertyValue("--card-gap")||"0"),I=m+w;if(I<=0)return c*5;let P=n.nativeElement.clientWidth,B=Math.floor((P+w)/I)*c;return Number.isFinite(B)&&B>0?B:c*5}return c*5}catch(s){return this.logger.logError("Error calculating items per page",s),c*5}}nextPage(){let e=this.currentPageIndex(),n=this.totalPages();e<n&&this.stateService.currentPageIndex.set(e+1);}previousPage(){let e=this.currentPageIndex();e>1&&this.stateService.currentPageIndex.set(e-1);}goToPage(e){this.stateService.currentPageIndex.set(e);}static \u0275fac=function(n){return new(n||t)};static \u0275cmp=ht({type:t,selectors:[["app-paginator"]],viewQuery:function(n,o){n&1&&xf(o.cardContainer,Goe,5),n&2&&Ty();},inputs:{fromSearch:[1,"fromSearch"],places:[1,"places"]},ngContentSelectors:qoe,decls:9,vars:6,consts:[["cardContainer",""],[1,"paginator"],[1,"paginator-places",3,"ngStyle"],[3,"place","fromSearch"],[1,"paginator-buttons"],[1,"paginator-button",3,"click"],[1,"previous-button"],[1,"previous-button",3,"click"],[3,"icon"],[1,"paginator-button","ellipsis"],[1,"next-button"],[1,"next-button",3,"click"]],template:function(n,o){n&1&&(Nl(),be(0,"div",1)(1,"div",2,0),vr(3,Woe,1,2,"app-location-card",3,vo,false,Zoe,1,0),Ee(),be(6,"div",4),vr(7,ese,4,5,null,null,qd),Ee()()),n&2&&(An("with-map",o.showMap()),we(),An("with-map",o.showMap()),We("ngStyle",o.cardContainerStyles()),we(2),_r(o.currentPagePlaces()),we(4),_r(o.pages()));},dependencies:[My,JT,C2,tn],styles:['.paginator[_ngcontent-%COMP%]{display:flex;flex-direction:column;align-items:center;justify-content:space-between;gap:36px}.paginator.with-map[_ngcontent-%COMP%]{min-height:730px}@container mapvx-container (width <= 1024px){.paginator.with-map[_ngcontent-%COMP%]{min-height:unset}}.paginator-places[_ngcontent-%COMP%]{--card-width: 237;--card-gap: 13;display:grid;grid-template-columns:repeat(auto-fill,minmax(calc(var(--card-width) * 1px),1fr));align-items:flex-start;place-content:flex-start space-around;gap:24px 13px;align-self:stretch}@container mapvx-container (width <= 640px){.paginator-places[_ngcontent-%COMP%]{--card-width: 170}}.paginator-places.with-map[_ngcontent-%COMP%]{--card-gap: 8;gap:16px 8px;flex-shrink:0}@container mapvx-container (width <= 640px){.paginator-places.with-map[_ngcontent-%COMP%]{display:flex;overflow-x:auto}}.paginator-buttons[_ngcontent-%COMP%]{display:flex;justify-content:center;align-items:center;gap:8px;flex-wrap:wrap}.paginator-button[_ngcontent-%COMP%]{color:var(--definitions-colors-text-900);text-align:center;font:var(--definitions-textFonts-desktop-button-1);font-family:inherit;font-feature-settings:"liga" off,"clig" off;letter-spacing:-1px;border:none;background:none}.paginator-button[_ngcontent-%COMP%]:hover{cursor:pointer}.paginator-button.active[_ngcontent-%COMP%]{color:var(--definitions-colors-secondary-orange)}.paginator-button.ellipsis[_ngcontent-%COMP%]:hover{cursor:default}.previous-button[_ngcontent-%COMP%], .next-button[_ngcontent-%COMP%]{color:var(--definitions-colors-text-900);background:none;border:none;font-size:21px}.previous-button[_ngcontent-%COMP%]:hover, .next-button[_ngcontent-%COMP%]:hover{cursor:pointer}']})};var D2=class t{onDestroy=new an;iconLibrary=se(Ut);mapService=se(tr);logger=se(Tt);loadedDataService=se(In);faCenter=this.iconLibrary.getIconDefinition("fak","center");ngOnDestroy(){this.onDestroy.next(),this.onDestroy.complete();}onClick(){this.logger.logEvent("map_center_button_clicked");let e=this.mapService.rotation.getValue();this.loadedDataService.getConfiguration().pipe(Xi(1),ni(this.onDestroy)).subscribe({next:n=>{this.mapService.updateCamera({center:n.initialCenter,zoom:n.initialZoom,pitch:n.initialPitch??0,bearing:e});},error:n=>{this.logger.logWarning("Error centering map",n);}});}static \u0275fac=function(n){return new(n||t)};static \u0275cmp=ht({type:t,selectors:[["app-center-map-button"]],decls:2,vars:1,consts:[[1,"button",3,"click"],[3,"icon"]],template:function(n,o){n&1&&(be(0,"button",0),at("click",function(){return o.onClick()}),Ve(1,"fa-icon",1),Ee()),n&2&&(we(),We("icon",o.faCenter));},dependencies:[tn],styles:[".button[_ngcontent-%COMP%]{width:40px;height:40px;border-radius:40px;border:1px solid var(--definitions-colors-primary-900);background-color:var(--definitions-colors-background-white);box-shadow:var(--definitions-shadows-general)}.button[_ngcontent-%COMP%]:hover{cursor:pointer}.button[_ngcontent-%COMP%] fa-icon[_ngcontent-%COMP%]{font-size:20px;color:var(--definitions-colors-text-black)}"]})};var tse=t=>({rotate:t}),A2=class t{mapService=se(tr);iconLibrary=se(Ut);rotation=Yn(this.mapService.rotation.asObservable().pipe(Qt(e=>360-e)),{initialValue:0});faCompass=this.iconLibrary.getIconDefinition("fak","compass");static \u0275fac=function(n){return new(n||t)};static \u0275cmp=ht({type:t,selectors:[["app-compass-button"]],decls:2,vars:4,consts:[[1,"button"],[3,"icon","transform"]],template:function(n,o){n&1&&(be(0,"button",0),Ve(1,"fa-icon",1),Ee()),n&2&&(we(),We("icon",o.faCompass)("transform",kT(2,tse,o.rotation())));},dependencies:[tn],styles:[".button[_ngcontent-%COMP%]{width:40px;height:40px;border-radius:40px;border:1px solid var(--definitions-colors-primary-900);background-color:var(--definitions-colors-background-white);box-shadow:var(--definitions-shadows-general)}.button[_ngcontent-%COMP%] fa-icon[_ngcontent-%COMP%]{font-size:20px;color:var(--definitions-colors-text-black)}"]})};var M2=class t{iconLibrary=se(Ut);locationService=se(vu);logger=se(Tt);markerService=se(si);mapService=se(tr);locationPermission=dt("prompt");active=Xe(()=>this.locationService.currentlyWatchingLocation());mapReady=Yn(this.mapService.mapReady.asObservable(),{initialValue:false});positionSubscription;bearingSubscription;faLocation=this.iconLibrary.getIconDefinition("fas","location-arrow");constructor(){this.checkLocationPermission(),Ot(()=>{this.mapReady()?this.active()?(this.positionSubscription=this.locationService.currentLocation.asObservable().subscribe({next:e=>{this.logger.log("location",e),e!=null&&(this.markerService.hasCurrentLocationMarker?this.markerService.updateCurrentLocationMarker(e.position):this.markerService.addCurrentLocationMarker(e.position));},error:e=>{this.logger.logWarning("Error updating current location marker position",e);}}),this.bearingSubscription=Oo([this.locationService.currentBearing.asObservable(),this.mapService.rotation.asObservable()]).subscribe({next:([e,n])=>{this.logger.log("bearing",e),this.logger.log("maprotation",n);let c=(e??0)-n;if(this.logger.log("markerRotation",c),this.markerService.hasCurrentLocationMarker){let s=this.markerService.getCurrentLocationMarkerElement();s!=null&&(s.style.transform=`rotate(${c}deg)`);}},error:e=>{this.logger.logWarning("Error updating current location marker rotation",e);}})):(this.positionSubscription?.unsubscribe(),this.bearingSubscription?.unsubscribe(),this.markerService.removeCurrentLocationMarker(),this.positionSubscription=void 0,this.bearingSubscription=void 0):(this.positionSubscription?.unsubscribe(),this.bearingSubscription?.unsubscribe(),this.positionSubscription=void 0,this.bearingSubscription=void 0);});}ngOnDestroy(){this.locationService.temporalStopWatching(),this.positionSubscription?.unsubscribe(),this.bearingSubscription?.unsubscribe(),this.markerService.removeCurrentLocationMarker();}checkLocationPermission(){this.locationService.checkLocationPermission().then(e=>{this.locationPermission.set(e),e==="granted"&&this.active()&&this.locationService.startWatching();}).catch(e=>{this.logger.logWarning("Error checking location permission",e),this.locationPermission.set("denied");});}async onClick(){if(this.logger.logEvent("map_location_button_clicked"),this.active())this.locationService.stopWatching();else switch(this.locationPermission()){case "granted":this.locationService.startWatching();break;case "prompt":await this.requestPermissions();break;case "denied":this.logger.logWarning("Location permission denied");break}}async requestPermissions(){await this.locationService.requestLocationPermission()==="granted"?(this.locationPermission.set("granted"),this.locationService.startWatching()):this.locationPermission.set("denied");}static \u0275fac=function(n){return new(n||t)};static \u0275cmp=ht({type:t,selectors:[["app-location-button"]],decls:2,vars:3,consts:[[1,"button",3,"click"],[3,"icon"]],template:function(n,o){n&1&&(be(0,"button",0),at("click",function(){return o.onClick()}),Ve(1,"fa-icon",1),Ee()),n&2&&(An("active",o.active()),we(),We("icon",o.faLocation));},dependencies:[tn],styles:[".button[_ngcontent-%COMP%]{width:40px;height:40px;border-radius:40px;border:1px solid var(--definitions-colors-primary-900);background-color:var(--definitions-colors-background-white);color:var(--definitions-colors-text-black);box-shadow:var(--definitions-shadows-general)}.button[_ngcontent-%COMP%]:hover{cursor:pointer}.button.active[_ngcontent-%COMP%]{background-color:var(--definitions-colors-secondary-blue);color:var(--definitions-colors-text-white);border-color:var(--definitions-colors-secondary-blue)}.button[_ngcontent-%COMP%] fa-icon[_ngcontent-%COMP%]{font-size:18px}"]})};var P2=class t{logger=se(Tt);mapService=se(tr);iconLibrary=se(Ut);faPlus=this.iconLibrary.getIconDefinition("fas","plus");faMinus=this.iconLibrary.getIconDefinition("fas","minus");onZoomIn(){this.logger.logEvent("map_zoom_in_button_clicked"),this.mapService.updateZoomLevelOn(1);}onZoomOut(){this.logger.logEvent("map_zoom_out_button_clicked"),this.mapService.updateZoomLevelOn(-1);}static \u0275fac=function(n){return new(n||t)};static \u0275cmp=ht({type:t,selectors:[["app-zoom-buttons"]],decls:5,vars:2,consts:[[1,"zoom-buttons-container"],[1,"zoom-button","zoom-in",3,"click"],[3,"icon"],[1,"zoom-button","zoom-out",3,"click"]],template:function(n,o){n&1&&(be(0,"div",0)(1,"button",1),at("click",function(){return o.onZoomIn()}),Ve(2,"fa-icon",2),Ee(),be(3,"button",3),at("click",function(){return o.onZoomOut()}),Ve(4,"fa-icon",2),Ee()()),n&2&&(we(2),We("icon",o.faPlus),we(2),We("icon",o.faMinus));},dependencies:[tn],styles:[".zoom-buttons-container[_ngcontent-%COMP%]{display:flex;flex-direction:column;align-items:center;border-radius:40px;border:1px solid var(--definitions-colors-primary-900);background-color:var(--definitions-colors-background-white);box-shadow:var(--definitions-shadows-general)}.zoom-button[_ngcontent-%COMP%]{width:40px;height:40px;border:none;background-color:transparent}.zoom-button[_ngcontent-%COMP%]:hover{cursor:pointer}.zoom-button.zoom-in[_ngcontent-%COMP%]{border-radius:40px 40px 0 0}.zoom-button.zoom-out[_ngcontent-%COMP%]{border-radius:0 0 40px 40px}.zoom-button[_ngcontent-%COMP%] fa-icon[_ngcontent-%COMP%]{font-size:20px;color:var(--definitions-colors-text-black)}"]})};var R2=class t{static \u0275fac=function(n){return new(n||t)};static \u0275cmp=ht({type:t,selectors:[["app-buttons-container"]],decls:5,vars:0,consts:[[1,"buttons-container-wrapper"]],template:function(n,o){n&1&&(be(0,"div",0),Ve(1,"app-location-button")(2,"app-compass-button")(3,"app-center-map-button")(4,"app-zoom-buttons"),Ee());},dependencies:[A2,D2,P2,M2],styles:[".buttons-container-wrapper[_ngcontent-%COMP%]{display:flex;flex-direction:column;align-items:center;gap:20px}"]})};function am(t){return `Level ${t.level}`}function vB(t,e){if(!e)return;let n=t.find(o=>o.key===e);return n?am(n):void 0}function mM(t){return t.startInsideFloor!==void 0&&t.endInsideFloor!==void 0&&t.startInsideFloor!==t.endInsideFloor}function _B(t){return t.steps.filter(mM).map(e=>({fromFloorId:e.startInsideFloor,toFloorId:e.endInsideFloor,byElevator:e.elevatorStep}))}function nse(t,e){if(t&1){let n=yn();be(0,"button",4),at("click",function(){let c=cn(n).$implicit,s=Ye(3);return un(s.selectFloor(c))}),it(1),Ee();}if(t&2){let n=e.$implicit,o=Ye(3);we(),br(" ",o.floorLabel(n)," ");}}function rse(t,e){if(t&1&&(be(0,"div",2),vr(1,nse,2,1,"button",3,vo),Ee()),t&2){let n=Ye(2);we(),_r(n.floors());}}function ise(t,e){if(t&1){let n=yn();be(0,"button",0),at("click",function(){cn(n);let c=Ye();return un(c.toggleFloorSelector())}),be(1,"span"),it(2),Ee(),Ve(3,"fa-icon",1),Ee(),Et(4,rse,3,0,"div",2);}if(t&2){let n=Ye();we(2),ar(n.floorLabel(n.selectedFloor())),we(),We("icon",n.showFloorOptions()?n.caretUp:n.caretDown),we(),It(n.showFloorOptions()?4:-1);}}var k2=class t{loadedDataService=se(In);mapService=se(tr);iconLibrary=se(Ut);parentPlace=Xe(()=>this.loadedDataService.parentPlace());floors=Xe(()=>this.parentPlace()?.innerFloors??[]);currentFloorId=Xe(()=>this.mapService.currentFloorId());selectedFloor=Xe(()=>this.floors().find(e=>e.key===this.currentFloorId())??this.floors()[0]);showFloorOptions=dt(false);caretDown=this.iconLibrary.getIconDefinition("fas","caret-down");caretUp=this.iconLibrary.getIconDefinition("fas","caret-up");floorLabel=am;toggleFloorSelector(){this.showFloorOptions.update(e=>!e);}selectFloor(e){this.showFloorOptions.set(false),this.mapService.updateFloor(e.key);}static \u0275fac=function(n){return new(n||t)};static \u0275cmp=ht({type:t,selectors:[["app-floor-selector"]],decls:1,vars:1,consts:[[1,"floor-selector-button",3,"click"],[3,"icon"],[1,"floor-options"],[1,"floor-option"],[1,"floor-option",3,"click"]],template:function(n,o){n&1&&Et(0,ise,5,3),n&2&&It(o.floors().length>1?0:-1);},dependencies:[tn],styles:[".floor-selector-button[_ngcontent-%COMP%]{padding:10px;border:0;border-radius:16px;background-color:var(--definitions-colors-background-white);box-shadow:var(--definitions-shadows-general)}.floor-options[_ngcontent-%COMP%]{position:absolute;top:100%;left:0;right:0;background-color:var(--definitions-colors-background-white);border-radius:16px;box-shadow:var(--definitions-shadows-general);display:flex;flex-direction:column}.floor-option[_ngcontent-%COMP%]{padding:10px;border:0;background-color:transparent}.floor-option[_ngcontent-%COMP%]:not(:last-child){border-bottom:1px solid var(--definitions-colors-gray-200)}"],changeDetection:1})};var ose=["map"],sse=["*"];function ase(t,e){t&1&&Ve(0,"app-floor-selector",3);}var _u=class t{mapRef;logger=se(Tt);mapService=se(tr);markerService=se(si);routingService=se(So);loadedDataService=se(In);showFloorSelector=Xe(()=>this.loadedDataService.parentPlace()!==void 0);ngAfterViewInit(){this.mapService.createMap(this.mapRef.nativeElement);}ngOnDestroy(){this.logger.log("Destroying map and preparing to reuse"),this.markerService.prepareToMapReuse(),this.routingService.removeRoute(),this.mapService.prepareToReuse();}static \u0275fac=function(n){return new(n||t)};static \u0275cmp=ht({type:t,selectors:[["app-map"]],viewQuery:function(n,o){if(n&1&&bf(ose,5),n&2){let c;Ey(c=Iy())&&(o.mapRef=c.first);}},ngContentSelectors:sse,decls:6,vars:1,consts:[["map",""],[1,"map-wrapper"],["id","map"],[1,"floor-selector"],[1,"buttons-container"]],template:function(n,o){n&1&&(Nl(),be(0,"div",1),Ve(1,"div",2,0),Et(3,ase,1,0,"app-floor-selector",3),Ve(4,"app-buttons-container",4),Ll(5),Ee()),n&2&&(we(3),It(o.showFloorSelector()?3:-1));},dependencies:[R2,k2],styles:[".map-wrapper[_ngcontent-%COMP%]{height:100%;width:100%;position:relative}#map[_ngcontent-%COMP%]{height:100%;min-width:10px;min-height:10px}.buttons-container[_ngcontent-%COMP%]{position:absolute;bottom:18px;right:17px}.floor-selector[_ngcontent-%COMP%]{position:absolute;top:18px;right:17px}"]})};var lse=["*"];function cse(t,e){t&1&&(be(0,"div",2),Ve(1,"app-map"),Ee());}var lm=class t{stateService=se(Xn);showMap=Xe(()=>this.stateService.activeView()==="map");static \u0275fac=function(n){return new(n||t)};static \u0275cmp=ht({type:t,selectors:[["app-view-container"]],ngContentSelectors:lse,decls:4,vars:3,consts:[[1,"view-container"],[1,"view-content"],[1,"map-container"]],template:function(n,o){n&1&&(Nl(),be(0,"div",0)(1,"div",1),Ll(2),Ee(),Et(3,cse,2,0,"div",2),Ee()),n&2&&(we(),An("with-map",o.showMap()),we(2),It(o.showMap()?3:-1));},dependencies:[_u],styles:[".view-container[_ngcontent-%COMP%]{display:flex;align-items:stretch;gap:8px}@container mapvx-container (width <= 1024px){.view-container[_ngcontent-%COMP%]{flex-direction:column-reverse;align-items:flex-start}}@container mapvx-container (width <= 640px){.view-container[_ngcontent-%COMP%]{flex-direction:column-reverse;align-items:flex-start}}.view-content[_ngcontent-%COMP%]{width:100%}.view-content.with-map[_ngcontent-%COMP%]{width:50%;min-width:482px;flex-shrink:0}@container mapvx-container (width <= 1024px){.view-content.with-map[_ngcontent-%COMP%]{width:100%;min-width:unset}}.map-container[_ngcontent-%COMP%]{width:100%;min-height:730px}@container mapvx-container (width <= 1024px){.map-container[_ngcontent-%COMP%]{width:100%;height:730px}}@container mapvx-container (width <= 640px){.map-container[_ngcontent-%COMP%]{width:100%;height:400px;min-height:unset}}"]})};var use=["categoryFilters"],dse=(t,e)=>e.name;function pse(t,e){if(t&1){let n=yn();be(0,"button",11),at("click",function(){let c=cn(n).$implicit,s=Ye(2);return un(s.updateSelectedFilter(c.name))}),it(1),Ee();}if(t&2){let n=e.$implicit,o=Ye(2);An("active",o.selectedFilter()===n.name),we(),br(" ",n.name," ");}}function hse(t,e){if(t&1&&(be(0,"div",2)(1,"div",5,0)(3,"div",6),vr(4,pse,2,3,"button",7,dse),Ee(),be(6,"div",8),Ve(7,"div",9)(8,"div",10),Ee()()()),t&2){let n=Ye();we(4),_r(n.categoryFiltersData()),we(4),wf("left",n.indicatorPosition(),"px");}}var O2=class t{logger=se(Tt);stateService=se(Xn);loadedDataService=se(In);markerService=se(si);categoryFilters=y1("categoryFilters");activeView=Xe(()=>this.stateService.activeView());loadedPlaces=Yn(this.loadedDataService.getAvailablePlaces(),{initialValue:[]});categoryFiltersData=Xe(()=>this.stateService.categoryFiltersData());places=ii(()=>this.loadedPlaces());selectedFilter=Xe(()=>this.stateService.selectedFilter());selectedInstitution=Xe(()=>this.stateService.selectedInstitution());selectedCity=Xe(()=>this.stateService.selectedCity());showCategoryFilters=Xe(()=>this.stateService.showCategoryFilters());showCityFilter=Xe(()=>this.stateService.showCityFilter());indicatorPosition=dt(0);constructor(){Ot(()=>{let e=this.activeView();this.logger.logEvent("page_view",{page_title:"List Page",page_location:`/list?view=${e}`});}),Ot(()=>{let e=this.categoryFiltersData();if(this.logger.log("====> loadedCategoryFiltersData",e),e.length>0){let n=e.map(o=>o.name);this.readFilterFromUrl(n);}}),Ot(()=>{if(this.activeView()==="map"){let e=this.places();this.logger.log("====> addMarkers ",e),this.markerService.addMarkers(e);}}),Ot(()=>{let e=this.loadedPlaces(),n=this.showCategoryFilters(),o=e.filter(s=>s.visibility==="public");if(this.showCityFilter()){let s=this.stateService.selectedFilterId();s!==""&&(o=o.filter(m=>m.parentInstitutionId===s));}if(n){let s=this.selectedFilter(),m=this.categoryFiltersData();if(s!=="All"){let w=m.find(I=>I.name===s)?.placeData||[];o=o.filter(I=>w.includes(I.mapvxId));}}o.sort((s,m)=>s.title.trim().localeCompare(m.title.trim())),this.logger.log("====> filteredPlaces",o),this.places.set(o);}),Ot(()=>{let e=this.places();this.stateService.lastListedPlaces.set(e);}),Ot(()=>{let e=this.selectedFilter(),n=this.categoryFiltersData(),o=this.categoryFilters();this.showCategoryFilters()&&o?requestAnimationFrame(()=>{let s=this.getIndicatorPosition(e,n,o);this.indicatorPosition.set(s);}):this.indicatorPosition.set(0);});}readFilterFromUrl(e){let o=new URLSearchParams(location.search).get("tab");o&&e.includes(o)&&this.stateService.selectedFilter.set(o);}getIndicatorPosition(e,n,o){if(o==null)return 0;let c=o.nativeElement.querySelectorAll(".category-btn");if(c.length===0)return 0;let s=n.findIndex(W=>W.name===e);if(s===-1||s>=c.length)return 0;let m=c[s];if(!m)return 0;let w=o.nativeElement.getBoundingClientRect(),I=m.getBoundingClientRect(),P=I.width,L=I.left-w.left,B=80,Y=L+P/2-B/2;return Math.min(Math.max(0,Y),w.width-B)}updateSelectedFilter(e){this.stateService.selectedFilter.set(e),this.stateService.userAction.next({type:"select-filter",data:{filter:e}}),this.logger.logEvent("filter_selected",{filter:e});}static \u0275fac=function(n){return new(n||t)};static \u0275cmp=ht({type:t,selectors:[["app-list-view"]],viewQuery:function(n,o){n&1&&xf(o.categoryFilters,use,5),n&2&&Ty();},decls:5,vars:2,consts:[["categoryFilters",""],[1,"list-view"],[1,"category-filters-overflow"],[1,"list-container"],[3,"places"],[1,"category-filters-container"],[1,"category-filters"],[1,"category-btn",3,"active"],[1,"active-indicator"],[1,"background-line"],[1,"active-line"],[1,"category-btn",3,"click"]],template:function(n,o){n&1&&(be(0,"div",1),Et(1,hse,9,2,"div",2),be(2,"app-view-container")(3,"div",3),Ve(4,"app-paginator",4),Ee()()()),n&2&&(we(),It(o.showCategoryFilters()?1:-1),we(3),We("places",o.places()));},dependencies:[lm,sm],styles:[".list-view[_ngcontent-%COMP%]{display:flex;flex-direction:column;gap:36px}.category-filters-overflow[_ngcontent-%COMP%]{width:100%;overflow-x:auto}.category-filters-container[_ngcontent-%COMP%]{display:flex;flex-direction:column;align-items:flex-start;gap:16px;width:100%;min-width:max-content}.category-filters[_ngcontent-%COMP%]{display:flex;gap:2.4375rem;align-items:center}.category-btn[_ngcontent-%COMP%]{background:none;border:none;cursor:pointer;font:var(--definitions-textFonts-desktop-button-5);font-family:inherit;font-weight:400;color:var(--definitions-colors-text-900);white-space:nowrap;padding:0;transition:color .2s ease}.category-btn.active[_ngcontent-%COMP%], .category-btn[_ngcontent-%COMP%]:hover{color:var(--definitions-colors-secondary-orange)}.active-indicator[_ngcontent-%COMP%]{position:relative;width:100%;height:3px;display:flex;align-items:center}.background-line[_ngcontent-%COMP%]{height:.5px;background:var(--definitions-colors-primary-black);border-radius:2px;width:100%}.active-line[_ngcontent-%COMP%]{position:absolute;top:0;height:100%;width:80px;background:var(--definitions-colors-secondary-orange);border-radius:2px;transition:left .3s ease}.list-container[_ngcontent-%COMP%]{width:100%}"]})};var fse=()=>({rotate:42}),N2=class t{iconLibrary=se(Ut);faCircleNotch=this.iconLibrary.getIconDefinition("fas","circle-notch");static \u0275fac=function(n){return new(n||t)};static \u0275cmp=ht({type:t,selectors:[["app-loading-location-card"]],decls:7,vars:3,consts:[[1,"loading-location-card"],[1,"loading-card-image"],[3,"icon","transform"],[1,"loading-card-content"],[1,"loading-location-name"],[1,"loading-location-address"],[1,"loading-location-category"]],template:function(n,o){n&1&&(be(0,"div",0)(1,"div",1),Ve(2,"fa-icon",2),Ee(),be(3,"div",3),Ve(4,"div",4)(5,"div",5)(6,"div",6),Ee()()),n&2&&(we(2),We("icon",o.faCircleNotch)("transform",zl(2,fse)));},dependencies:[tn],styles:[".loading-location-card[_ngcontent-%COMP%]{display:flex;padding:5px 5px 10px;flex-direction:column;align-items:flex-start;gap:12px}.loading-card-image[_ngcontent-%COMP%]{display:flex;width:227px;height:227px;justify-content:center;align-items:center;background-color:var(--definitions-colors-primary-300)}@container mapvx-container (width <= 640px){.loading-card-image[_ngcontent-%COMP%]{width:160px;height:160px}}.loading-card-image[_ngcontent-%COMP%] fa-icon[_ngcontent-%COMP%]{color:var(--definitions-colors-primary-600);font-size:95px}.loading-card-content[_ngcontent-%COMP%]{display:flex;width:227px;flex-direction:column;align-items:flex-start;gap:8px}@container mapvx-container (width <= 640px){.loading-card-content[_ngcontent-%COMP%]{width:160px}}.loading-location-name[_ngcontent-%COMP%]{display:flex;width:85%;height:24px;padding:7.253px 0;flex-direction:column;justify-content:center;align-items:center;border-radius:28.09px;background:var(--definitions-colors-primary-300)}.loading-location-address[_ngcontent-%COMP%]{display:flex;width:70%;height:11px;align-items:center;gap:18px;flex-shrink:0;align-self:stretch;border-radius:28.09px;background:var(--definitions-colors-primary-200)}.loading-location-category[_ngcontent-%COMP%]{display:flex;width:45%;height:11px;justify-content:space-between;align-items:center;border-radius:24px;background:var(--definitions-colors-primary-200)}"],changeDetection:1})};var mse=()=>[1,2,3,4,5,6,7,8,9,10];function gse(t,e){t&1&&Ve(0,"app-loading-location-card");}var L2=class t{homeStateService=se(Xn);showMap=Xe(()=>this.homeStateService.activeView()==="map");static \u0275fac=function(n){return new(n||t)};static \u0275cmp=ht({type:t,selectors:[["app-loading-card-list"]],decls:3,vars:3,consts:[[1,"loading-container"]],template:function(n,o){n&1&&(be(0,"div",0),vr(1,gse,1,0,"app-loading-location-card",null,qd),Ee()),n&2&&(An("with-map",o.showMap()),we(),_r(zl(2,mse)));},dependencies:[N2],styles:[".loading-container[_ngcontent-%COMP%]{display:flex;place-content:flex-start;align-items:flex-start;gap:24px 13px;align-self:stretch;flex-wrap:wrap}.loading-container.with-map[_ngcontent-%COMP%]{gap:16px 8px;height:730px}"],changeDetection:1})};function yse(t,e){t&1&&(be(0,"p"),it(1,"Looking for your results..."),Ee());}function vse(t,e){if(t&1&&(be(0,"p"),it(1),Ee()),t&2){let n=Ye(3);we(),br('Showing 1 result for "',n.searchTerm(),'"');}}function _se(t,e){if(t&1&&(be(0,"p"),it(1),Ee()),t&2){let n=Ye(3);we(),p1("Showing ",n.places().length,' results for "',n.searchTerm(),'"');}}function bse(t,e){if(t&1&&Et(0,vse,2,1,"p")(1,_se,2,2,"p"),t&2){let n=Ye(2);It(n.places().length===1?0:1);}}function xse(t,e){if(t&1&&(be(0,"p"),it(1),Ee()),t&2){let n=Ye(2);we(),br('No results found for "',n.searchTerm(),'"');}}function wse(t,e){if(t&1&&Et(0,bse,2,1)(1,xse,2,1,"p"),t&2){let n=Ye();It(n.places().length>0?0:1);}}function Sse(t,e){t&1&&Ve(0,"app-loading-card-list");}function Ese(t,e){if(t&1&&(be(0,"div",6)(1,"app-paginator",7)(2,"div",8),Ve(3,"fa-icon",4),be(4,"h2"),it(5,"No results found"),Ee(),be(6,"div",9)(7,"p"),it(8,"Sorry, we can\u2019t find any places that match your search. Please try again."),Ee()()()()()),t&2){let n=Ye();we(),We("places",n.places())("fromSearch",true),we(2),We("icon",n.faBuildingMagnifyingGlass);}}var F2=class t{logger=se(Tt);loadedDataService=se(In);sdkService=se(wo);stateService=se(Xn);navigatorService=se(Wr);markerService=se(si);iconLibrary=se(Ut);searching=ii(()=>this.stateService.lastSearchData().term==="");inputValue$=S2(this.stateService.inputValue).pipe(nE(500),Qt(e=>e.trim()),mr(e=>e!==""),rE());searchTerm=Yn(this.inputValue$,{initialValue:this.stateService.lastSearchData().term});places=Yn(Oo([S2(this.stateService.filterId),this.inputValue$,S2(this.stateService.lastSearchData)]).pipe($r(([e,n,o])=>o.term===n?(this.logger.log("====> lastSearchData",o),this.searching.set(false),Gt(o.results)):(this.searching.set(true),this.logger.log("====> searchTerm",n),this.logger.logEvent("search",{term:n,searchInstitutionId:e}),this.logger.log("====> institutionId",e),Un(this.sdkService.searchPlaces(n,e)))),Ki(e=>{this.searching.set(false),e.length>0?this.logger.logEvent("search_results",{resultsCount:e.length.toString(),term:this.searchTerm(),searchInstitutionId:this.stateService.filterId()}):this.logger.logEvent("search_empty",{term:this.searchTerm(),searchInstitutionId:this.stateService.filterId()});})),{initialValue:this.stateService.lastSearchData().results});faArrowLeft=this.iconLibrary.getIconDefinition("fas","arrow-left");faBuildingMagnifyingGlass=this.iconLibrary.getIconDefinition("fas","building-magnifying-glass");constructor(){this.logger.logEvent("page_view",{page_title:"Search Page",page_location:"/search"}),Ot(()=>{let e=this.places();this.markerService.addMarkers(e);}),Ot(()=>{let e=this.places();this.stateService.lastListedPlaces.set(e);}),Ot(()=>{let e=this.searching();this.logger.log("====> searching",e);}),Ot(()=>{let e=this.searchTerm();e&&this.stateService.userAction.next({type:"search",data:{searchTerm:e}});});}ngOnDestroy(){this.stateService.inputValue()===""?(this.logger.log("====> EMPTY_SEARCH_DATA"),this.stateService.lastSearchData.set(w2)):(this.logger.log("====> SETTING LAST SEARCH DATA"),this.stateService.lastSearchData.set({term:this.stateService.inputValue(),results:this.places()}));}onBackClick(){this.stateService.inputValue.set(""),this.stateService.userAction.next({type:"return-to-home",data:{filter:this.stateService.selectedFilter()}}),this.logger.logEvent("search_back_clicked",{term:this.searchTerm(),searchInstitutionId:this.stateService.filterId()}),this.navigatorService.navigateToHome();}static \u0275fac=function(n){return new(n||t)};static \u0275cmp=ht({type:t,selectors:[["app-search-view"]],decls:13,vars:3,consts:[[1,"search-view"],[1,"search-view-header"],[1,"back-button"],[1,"back-btn",3,"click"],[3,"icon"],[1,"search-view-info"],[1,"results-container"],[3,"places","fromSearch"],[1,"no-results"],[1,"no-results-description"]],template:function(n,o){n&1&&(be(0,"div",0)(1,"div",1)(2,"div",2)(3,"button",3),at("click",function(){return o.onBackClick()}),Ve(4,"fa-icon",4),be(5,"span"),it(6,"Back"),Ee()()(),be(7,"div",5),Et(8,yse,2,0,"p")(9,wse,2,1),Ee()(),be(10,"app-view-container"),Et(11,Sse,1,0,"app-loading-card-list")(12,Ese,9,3,"div",6),Ee()()),n&2&&(we(4),We("icon",o.faArrowLeft),we(4),It(o.searching()?8:9),we(3),It(o.searching()?11:12));},dependencies:[lm,sm,b2,tn,L2],styles:['*[_ngcontent-%COMP%]{margin:0;padding:0}.search-view[_ngcontent-%COMP%]{display:flex;flex-direction:column;gap:36px}.search-view-header[_ngcontent-%COMP%]{display:flex;width:100%;flex-direction:column;justify-content:center;align-items:flex-start;gap:23px}.search-view-info[_ngcontent-%COMP%] p[_ngcontent-%COMP%]{color:var(--definitions-colors-text-800);font:var(--definitions-textFonts-desktop-sub-2);font-family:inherit;letter-spacing:-.9px}.results-container[_ngcontent-%COMP%]{width:100%}.back-button[_ngcontent-%COMP%]{display:flex;justify-content:flex-start;align-items:center;gap:16px}.back-btn[_ngcontent-%COMP%]{display:flex;justify-content:center;align-items:center;gap:12px;color:var(--definitions-colors-secondary-blue);border:none;background:none}.back-btn[_ngcontent-%COMP%]:hover{cursor:pointer}.back-btn[_ngcontent-%COMP%] fa-icon[_ngcontent-%COMP%]{font-size:24px}.back-btn[_ngcontent-%COMP%] span[_ngcontent-%COMP%]{color:var(--definitions-colors-secondary-blue);font:var(--definitions-textFonts-desktop-button-1);font-family:inherit;font-feature-settings:"liga" off,"clig" off;letter-spacing:-1px}.no-results[_ngcontent-%COMP%]{display:flex;width:100%;height:100%;flex-direction:column;justify-content:center;align-items:center;gap:31px}.no-results[_ngcontent-%COMP%] fa-icon[_ngcontent-%COMP%]{font-size:160px;color:var(--definitions-colors-text-light-grey)}.no-results[_ngcontent-%COMP%] h2[_ngcontent-%COMP%]{color:var(--definitions-colors-text-grey);font:var(--definitions-textFonts-desktop-h2);font-family:inherit}.no-results[_ngcontent-%COMP%] p[_ngcontent-%COMP%]{color:var(--definitions-colors-text-grey);font:var(--definitions-textFonts-desktop-sub-1);font-family:inherit;text-align:center}']})};function z2(t){switch(t){case "su":return "Sunday";case "mo":return "Monday";case "tu":return "Tuesday";case "we":return "Wednesday";case "th":return "Thursday";case "fr":return "Friday";case "sa":return "Saturday"}}function U2(t){switch(t.getDay()){case 0:return "su";case 1:return "mo";case 2:return "tu";case 3:return "we";case 4:return "th";case 5:return "fr";case 6:return "sa";default:return "mo"}}function Ise(t){switch(t){case 0:return "su";case 1:return "mo";case 2:return "tu";case 3:return "we";case 4:return "th";case 5:return "fr";case 6:return "sa";default:return "mo"}}function B2(t){let[e,n]=t.split(":"),o=parseInt(e)%24,c=parseInt(n),s;return o<12?(s="AM",o===0&&(o=12)):(s="PM",o!==12&&(o-=12)),`${o}:${c<10?"0":""}${c}&nbsp;${s}`}function wB(t){let e=B2(t.open),n=B2(t.close);return `${e}&nbsp;-&nbsp;${n}`}function Tse(t){let e=B2(t.open),n=B2(t.close);return `${e}&nbsp;to&nbsp;${n}`}function Cse(t){let e=new Date,n=new Date(e);SB(n);let o=U2(n),c=t[o];if(c&&c.length>0){for(let s of c)if(bB(s.open)&&bB(s.close)){let m=xB(s.open,n),w=xB(s.close,n);if(m>w&&Dse(w),e>=m&&e<=w)return true}}return false}function SB(t){let e=t.getDate();t.setDate(e-1);}function Dse(t){let e=t.getDate();t.setDate(e+1);}function Ase(t){let n=U2(new Date),o=t[n];return o&&o.length>0}function bB(t){return /^([0-9]|0[0-9]|1[0-9]|2[0-4]):[0-5][0-9]$/.test(t)}function xB(t,e){let[n,o]=t.split(":").map(Number),c=e?new Date(e):new Date;return new Date(c.getFullYear(),c.getMonth(),c.getDate(),n,o,0,0)}function Mse(t){return t.sort((e,n)=>e.open.localeCompare(n.open))}function Pse(t){let n=U2(new Date),o=t[n];return o&&o.length>0?EB(o):""}function Rse(t){let e=new Date;SB(e);let n=U2(e),o=t[n];return o&&o.length>0?EB(o):""}function kse(t){let e=Ose(t);return `Open on ${z2(e)}`}function EB(t){return t.length===1?wB(t[0]):(Mse(t),t.map(Tse).join(" - "))}function Ose(t){let n=new Date().getDay();for(let o=0;o<7;o++){let c=(n+o)%7,s=Ise(c),m=t[s];if(m&&m.length>0)return s}return "mo"}function IB(t){return Cse(t)?Rse(t):Ase(t)?Pse(t):kse(t)}function TB(t){let e=["mo","tu","we","th","fr","sa","su"],n=w=>{let I=t[w];return !I||I.length===0?["Closed"]:I.map(P=>wB(P))},o=(w,I)=>w.length!==I.length?false:w.every((P,L)=>P===I[L]),c=(w,I)=>w===I?z2(w):`${z2(w)} - ${z2(I)}`,s=[],m=0;for(;m<e.length;){let w=e[m],I=n(w),P=m+1;for(;P<e.length&&o(I,n(e[P]));)P++;let L=c(w,e[P-1]);s.push({day:L,schedule:I}),m=P;}if(s.length>1){let w=s[0],I=s[s.length-1];if(o(w.schedule,I.schedule)){let P=w.day.split(" - "),B=I.day.split(" - ")[0],Y=P.length>1?P[1]:P[0],W=`${B} - ${Y}`;s[0]={day:W,schedule:w.schedule},s.pop();}}return s}function Nse(t,e){if(t&1&&Ve(0,"div",9),t&2){let n=e.$implicit;We("innerHTML",n,Yc);}}function Lse(t,e){if(t&1&&(be(0,"div",6)(1,"div",7),it(2),Ee(),be(3,"div",8),vr(4,Nse,1,1,"div",9,vo),Ee()()),t&2){let n=e.$implicit;we(2),ar(n.day),we(2),_r(n.schedule);}}var V2=class t{iconLibrary=se(Ut);schedules=Wt.required({transform:e=>e?TB(e):[]});closeClicked=Ni();faClockThree=this.iconLibrary.getIconDefinition("fas","clock-three");faXmark=this.iconLibrary.getIconDefinition("fas","xmark");hideModal(){this.closeClicked.emit();}static \u0275fac=function(n){return new(n||t)};static \u0275cmp=ht({type:t,selectors:[["app-other-schedules"]],inputs:{schedules:[1,"schedules"]},outputs:{closeClicked:"closeClicked"},decls:11,vars:2,consts:[[1,"other-schedules-container"],[1,"other-schedules-header"],[1,"other-schedules-title"],[3,"icon"],[1,"close-button",3,"click"],[1,"schedules"],[1,"schedule"],[1,"schedule-day"],[1,"schedule-time"],[1,"schedule-time-item",3,"innerHTML"]],template:function(n,o){n&1&&(be(0,"div",0)(1,"div",1)(2,"div",2),Ve(3,"fa-icon",3),be(4,"h2"),it(5,"Other Schedules"),Ee()(),be(6,"button",4),at("click",function(){return o.hideModal()}),Ve(7,"fa-icon",3),Ee()(),be(8,"div",5),vr(9,Lse,6,1,"div",6,vo),Ee()()),n&2&&(we(3),We("icon",o.faClockThree),we(4),We("icon",o.faXmark),we(2),_r(o.schedules()));},dependencies:[tn],styles:[".other-schedules-container[_ngcontent-%COMP%]{padding:16px;background-color:var(--definitions-colors-background-50);box-shadow:var(--definitions-shadows-general)}.other-schedules-header[_ngcontent-%COMP%]{display:flex;justify-content:space-between;align-items:center}.other-schedules-title[_ngcontent-%COMP%]{display:flex;align-items:center;gap:8px}.other-schedules-title[_ngcontent-%COMP%] h2[_ngcontent-%COMP%]{margin:0;color:var(--definitions-colors-text-900);font:var(--definitions-textFonts-desktop-sub-2);font-family:inherit}@container mapvx-container (width <= 640px){.other-schedules-title[_ngcontent-%COMP%] h2[_ngcontent-%COMP%]{font-size:16px}}.other-schedules-title[_ngcontent-%COMP%] fa-icon[_ngcontent-%COMP%]{color:var(--definitions-colors-primary-600);font-size:32px}@container mapvx-container (width <= 640px){.other-schedules-title[_ngcontent-%COMP%] fa-icon[_ngcontent-%COMP%]{font-size:20px}}.close-button[_ngcontent-%COMP%]{padding:0;background:none;border:none;cursor:pointer}.close-button[_ngcontent-%COMP%] fa-icon[_ngcontent-%COMP%]{font-size:20px}.schedules[_ngcontent-%COMP%]{display:flex;flex-direction:column;gap:16px;background-color:#fff}.schedule[_ngcontent-%COMP%]{display:flex;gap:40px;align-items:center;justify-content:space-between}.schedule-times[_ngcontent-%COMP%]{display:flex;flex-direction:column;gap:8px}.schedule-time[_ngcontent-%COMP%]{display:flex;flex-direction:column;align-items:end}.schedule-time-item[_ngcontent-%COMP%]{color:var(--definitions-colors-text-800);font:var(--definitions-textFonts-desktop-sub-5);font-family:inherit}@container mapvx-container (width <= 640px){.schedule-time-item[_ngcontent-%COMP%]{font-size:12px;font-weight:400}}"],changeDetection:1})};var Fse=()=>({rotate:42});function zse(t,e){if(t&1&&Ve(0,"fa-icon",3),t&2){let n=Ye();We("icon",n.faCircleNotch)("transform",zl(2,Fse));}}function Bse(t,e){if(t&1){let n=yn();be(0,"div",10),Ve(1,"fa-icon",9),be(2,"div",24)(3,"button",25),at("click",function(){cn(n);let c=Ye();return un(c.showOtherSchedulesModal())}),Ee(),be(4,"div",26),it(5,"*Hours may vary"),Ee()()();}if(t&2){let n=Ye();we(),We("icon",n.faClockThree),we(2),We("innerHTML",n.schedule(),Yc);}}function Use(t,e){if(t&1){let n=yn();be(0,"div",11)(1,"app-other-schedules",27),at("closeClicked",function(){cn(n);let c=Ye();return un(c.hideOtherSchedulesModal())}),Ee()();}if(t&2){let n=Ye();we(),We("schedules",n.place().openingHours);}}function Vse(t,e){if(t&1&&Ve(0,"div",32),t&2){let n=e.$implicit;wf("color",n.color)("border-color",n.color),We("innerHTML",n.description,Yc);}}function jse(t,e){if(t&1&&(be(0,"div",12)(1,"div",28),Ve(2,"fa-icon",9),be(3,"div",29),it(4,"Deals + Events"),Ee()(),be(5,"div",30),vr(6,Vse,1,5,"div",31,vo),Ee()()),t&2){let n=Ye();we(2),We("icon",n.faBadgeDollar),we(4),_r(n.banners());}}function $se(t,e){if(t&1&&(be(0,"div",21),it(1),Ee()),t&2){let n=Ye();we(),br(" ",n.address()," ");}}function Hse(t,e){if(t&1&&(be(0,"div",22),it(1),Ee()),t&2){let n=e.$implicit;we(),br(" ",n," ");}}function Gse(t,e){if(t&1){let n=yn();be(0,"div",23)(1,"a",18),at("click",function(){let c=cn(n).$implicit,s=Ye();return un(s.logWebsiteClick(c.url))}),it(2),Ee()();}if(t&2){let n=e.$implicit;we(),We("href",n.url,jd),we(),ar(n.title);}}var j2=class t{iconLibrary=se(Ut);sanitizer=se(Ny);logger=se(Tt);navigatorService=se(Wr);stateService=se(Xn);place=Wt.required();hideDeals=Wt(false);imageSrc=Xe(()=>this.place().images[0]||this.place().logo||T1);isImageLoading=dt(true);schedule=Xe(()=>{let e=this.place().openingHours;return e?IB(e):""});banners=Xe(()=>this.place().banners.filter(T2).filter(e=>e.description!==void 0).map(e=>({description:this.sanitizer.bypassSecurityTrustHtml(e.description||""),color:yB(e.description||"")})));address=Xe(()=>this.place().address||"");phones=Xe(()=>this.place().properties?.filter(e=>e.type==="phone").map(e=>this.formatPhoneNumber(e.subtitle))||[]);websites=Xe(()=>this.place().properties?.filter(e=>e.type==="url").map(this.prepareUrl)||[]);drivingDirectionsUrl=Xe(()=>{let e=this.place();return `https://www.google.com/maps/dir/?api=1&destination=${e.position.lat},${e.position.lng}&travelmode=driving`});otherSchedulesModal=dt(false);faCircleNotch=this.iconLibrary.getIconDefinition("fas","circle-notch");faBadgeDollar=this.iconLibrary.getIconDefinition("fas","badge-dollar");faClockThree=this.iconLibrary.getIconDefinition("fas","clock-three");faArrowTopRight=this.iconLibrary.getIconDefinition("fak","arrow-top-right");iconCategory=Xe(()=>{let[e,n]=x2(this.place().localizedCategory||"");return this.iconLibrary.getIconDefinition(e,n)});constructor(){Ot(()=>{this.imageSrc()&&this.startImageLoading();});}prepareUrl(e){return s$1(r$1({},e),{url:e.url?.startsWith("http")?e.url:`https://${e.url}`})}startImageLoading(){this.isImageLoading.set(true);}endImageLoading(){this.isImageLoading.set(false);}showOtherSchedulesModal(){this.otherSchedulesModal.set(true);}hideOtherSchedulesModal(){this.otherSchedulesModal.set(false);}formatPhoneNumber(e){let n=e.replace(/^\+1/,"");return n=n.replaceAll(/\D/g,""),n.length<10?(this.logger.logWarning(`Phone number '${n}' is to short for format`),n):`${n.slice(0,3)}.${n.slice(3,6)}.${n.slice(6)}`}navigateToRoute(){this.stateService.userAction.next({type:"select-destination",data:{destinationId:this.place().mapvxId,alias:this.place().clientId}}),this.logger.logEvent("pedestrian_directions_selected",{id:this.place().mapvxId,name:this.place().title,clientId:this.place().clientId||""}),this.navigatorService.navigateToRoute(this.place().mapvxId);}logDrivingDirectionsClick(){this.logger.logEvent("driving_directions_clicked",{id:this.place().mapvxId,name:this.place().title,clientId:this.place().clientId||"",url:this.drivingDirectionsUrl()});}logWebsiteClick(e){e&&this.logger.logEvent("profile_website_clicked",{id:this.place().mapvxId,name:this.place().title,clientId:this.place().clientId||"",url:e});}static \u0275fac=function(n){return new(n||t)};static \u0275cmp=ht({type:t,selectors:[["app-profile-view"]],inputs:{place:[1,"place"],hideDeals:[1,"hideDeals"]},decls:34,vars:15,consts:[[1,"profile-view-content"],[1,"image"],[3,"load","error","src","alt"],[1,"loading-icon",3,"icon","transform"],[1,"info"],[1,"basic-info"],[1,"title"],[1,"category-schedule"],[1,"category"],[3,"icon"],[1,"schedule"],[1,"other-schedules-modal"],[1,"deals-or-events"],[1,"description"],[1,"direction-buttons"],[1,"route-button-container"],[1,"route-button",3,"click"],[1,"driving-link"],["target","_blank",3,"click","href"],[1,"properties"],[1,"separator"],[1,"address"],[1,"phone"],[1,"website"],[1,"schedule-time"],[1,"schedule-button",3,"click","innerHTML"],[1,"schedule-warning"],[3,"closeClicked","schedules"],[1,"deals-or-events-header"],[1,"deals-or-events-content-title"],[1,"deals-or-events-content"],[1,"banner-content",3,"innerHTML","color","border-color"],[1,"banner-content",3,"innerHTML"]],template:function(n,o){n&1&&(be(0,"div",0)(1,"div",1)(2,"img",2),at("load",function(){return o.endImageLoading()})("error",function(){return o.endImageLoading()}),Ee(),Et(3,zse,1,3,"fa-icon",3),Ee(),be(4,"div",4)(5,"div",5)(6,"h1",6),it(7),Ee(),be(8,"div",7)(9,"div",8),Ve(10,"fa-icon",9),be(11,"span"),it(12),Ee()(),Et(13,Bse,6,2,"div",10),Et(14,Use,2,1,"div",11),Ee(),Et(15,jse,8,1,"div",12),be(16,"div",13),it(17),Ee()(),be(18,"div",14)(19,"div",15)(20,"button",16),at("click",function(){return o.navigateToRoute()}),Ve(21,"fa-icon",9),be(22,"span"),it(23,"Pedestrian-friendly directions"),Ee()()(),be(24,"div",17)(25,"a",18),at("click",function(){return o.logDrivingDirectionsClick()}),it(26,"Driving directions"),Ee()()(),be(27,"div",19),Ve(28,"div",20),Et(29,$se,2,1,"div",21),vr(30,Hse,2,1,"div",22,vo),vr(32,Gse,3,2,"div",23,vo),Ee()()()),n&2&&(we(),An("loading",o.isImageLoading()),we(),We("src",o.imageSrc(),jd)("alt",o.place().title),we(),It(o.isImageLoading()?3:-1),we(4),ar(o.place().title),we(3),We("icon",o.iconCategory()),we(2),ar(o.place().localizedCategory),we(),It(o.schedule()!==""?13:-1),we(),It(o.otherSchedulesModal()?14:-1),we(),It(o.banners().length>0&&!o.hideDeals()?15:-1),we(2),br(" ",o.place().description," "),we(4),We("icon",o.faArrowTopRight),we(4),We("href",o.drivingDirectionsUrl(),jd),we(4),It(o.address()!==""?29:-1),we(),_r(o.phones()),we(2),_r(o.websites()));},dependencies:[tn,V2],styles:['.profile-view-content[_ngcontent-%COMP%]{display:flex;padding:0 16px;flex-direction:column;align-items:center;gap:16px}@container mapvx-container (width <= 1024px){.profile-view-content[_ngcontent-%COMP%]{padding:22px 0 0}}@container mapvx-container (width <= 640px){.profile-view-content[_ngcontent-%COMP%]{padding:22px 0 0}}.image[_ngcontent-%COMP%] img[_ngcontent-%COMP%]{display:block;width:100%;object-fit:cover;aspect-ratio:1/1}.image.loading[_ngcontent-%COMP%]{background-color:var(--definitions-colors-primary-300);height:200px;width:100%;display:flex;justify-content:center;align-items:center}.image.loading[_ngcontent-%COMP%] .loading-icon[_ngcontent-%COMP%]{color:var(--definitions-colors-primary-600);font-size:100px}.image.loading[_ngcontent-%COMP%] img[_ngcontent-%COMP%]{display:none}.info[_ngcontent-%COMP%]{display:flex;flex-direction:column;align-items:flex-start;gap:24px;width:100%}.basic-info[_ngcontent-%COMP%]{display:flex;flex-direction:column;align-items:flex-start;gap:16px;width:100%}.title[_ngcontent-%COMP%]{font:var(--definitions-textFonts-desktop-h6);font-family:inherit;margin:0;color:var(--definitions-colors-text-black)}.category-schedule[_ngcontent-%COMP%]{display:flex;width:100%;justify-content:space-between;flex-wrap:wrap;position:relative}.category[_ngcontent-%COMP%]{display:flex;gap:18px;color:var(--definitions-colors-text-grey);align-items:center}.category[_ngcontent-%COMP%] fa-icon[_ngcontent-%COMP%]{font-size:20px}.category[_ngcontent-%COMP%] span[_ngcontent-%COMP%]{font:var(--definitions-textFonts-desktop-body-3);font-family:inherit;font-size:16px}.schedule[_ngcontent-%COMP%]{display:flex;gap:18px;align-items:center}.schedule[_ngcontent-%COMP%] fa-icon[_ngcontent-%COMP%]{color:var(--definitions-colors-primary-600);font-size:20px}.schedule[_ngcontent-%COMP%] .schedule-time[_ngcontent-%COMP%]{position:relative}.schedule[_ngcontent-%COMP%] .schedule-time[_ngcontent-%COMP%] .schedule-button[_ngcontent-%COMP%]{font:var(--definitions-textFonts-desktop-button-3);font-family:inherit;font-size:16px;color:var(--definitions-colors-secondary-blue);border:none;background:none;cursor:pointer;text-align:start}.schedule[_ngcontent-%COMP%] .schedule-time[_ngcontent-%COMP%] .schedule-warning[_ngcontent-%COMP%]{position:absolute;top:100%;margin-top:-5px;left:0;font:var(--definitions-textFonts-desktop-sub-5);font-family:inherit;font-size:16px;color:var(--definitions-colors-text-black)}.other-schedules-modal[_ngcontent-%COMP%]{position:absolute;width:max-content;bottom:0;right:50%;transform:translate(50%) translateY(100%)}.deals-or-events[_ngcontent-%COMP%]{display:flex;flex-direction:column;align-items:flex-start;gap:8px;width:100%}.deals-or-events-header[_ngcontent-%COMP%]{display:flex;width:100%;align-items:flex-start;gap:18px;color:var(--definitions-colors-secondary-orange)}.deals-or-events-header[_ngcontent-%COMP%] fa-icon[_ngcontent-%COMP%]{font-size:20px}.deals-or-events-content[_ngcontent-%COMP%]{display:flex;flex-direction:column;align-items:flex-start;gap:8px}.deals-or-events-content-title[_ngcontent-%COMP%]{font:var(--definitions-textFonts-desktop-sub-4);font-family:inherit;font-size:16px}.banner-content[_ngcontent-%COMP%]{width:-webkit-fill-available;width:stretch;color:var(--definitions-colors-secondary-orange);padding:10px;font:var(--definitions-textFonts-desktop-body-3);font-family:inherit;font-size:16px;white-space:pre-wrap;border:1px solid var(--definitions-colors-secondary-orange);border-radius:8px;box-shadow:var(--definitions-shadows-general)}.description[_ngcontent-%COMP%]{font:var(--definitions-textFonts-desktop-body-2);font-family:inherit;color:var(--definitions-colors-text-black)}.direction-buttons[_ngcontent-%COMP%]{display:flex;flex-direction:column;align-items:center;gap:16px;align-self:stretch;width:100%}.route-button-container[_ngcontent-%COMP%]{width:100%}.route-button[_ngcontent-%COMP%]{display:flex;padding:8px 16px;justify-content:center;align-items:center;gap:10px;align-self:stretch;background:var(--definitions-colors-primary-black);color:var(--definitions-colors-text-white);border:none;cursor:pointer;width:100%}.route-button[_ngcontent-%COMP%] span[_ngcontent-%COMP%]{font:var(--definitions-textFonts-desktop-button-2);font-family:inherit;font-size:16px;font-feature-settings:"liga" off,"clig" off}.driving-link[_ngcontent-%COMP%] a[_ngcontent-%COMP%]{color:var(--definitions-colors-secondary-blue);text-decoration:none;font:var(--definitions-textFonts-desktop-button-2);font-family:inherit;font-size:16px;font-feature-settings:"liga" off,"clig" off}.properties[_ngcontent-%COMP%]{display:flex;flex-direction:column;align-items:flex-start;gap:16px;width:100%}.separator[_ngcontent-%COMP%]{width:100%;height:1px;background:var(--definitions-colors-primary-100)}.address[_ngcontent-%COMP%], .phone[_ngcontent-%COMP%]{font:var(--definitions-textFonts-desktop-sub-1);font-family:inherit;font-size:16px;color:var(--definitions-colors-text-black)}.website[_ngcontent-%COMP%]{font:var(--definitions-textFonts-desktop-button-1);font-family:inherit;font-size:16px;font-feature-settings:"liga" off,"clig" off}.website[_ngcontent-%COMP%] a[_ngcontent-%COMP%]{color:var(--definitions-colors-secondary-blue);text-decoration:none}'],changeDetection:1})};var cm=class t{iconLibraryService=se(Ut);faArrowLeft=this.iconLibraryService.getIconDefinition("fas","arrow-left");static \u0275fac=function(n){return new(n||t)};static \u0275cmp=ht({type:t,selectors:[["button","backButton",""]],decls:3,vars:1,consts:[[3,"icon"]],template:function(n,o){n&1&&(Ve(0,"fa-icon",0),be(1,"span"),it(2,"Back"),Ee()),n&2&&We("icon",o.faArrowLeft);},dependencies:[tn],styles:['[_nghost-%COMP%]{display:flex;justify-content:center;align-items:center;gap:12px;color:var(--definitions-colors-secondary-blue);border:none;background:none}[_nghost-%COMP%]:hover{cursor:pointer}[_nghost-%COMP%] fa-icon[_ngcontent-%COMP%]{font-size:24px}[_nghost-%COMP%] span[_ngcontent-%COMP%]{color:var(--definitions-colors-secondary-blue);font:var(--definitions-textFonts-desktop-button-1);font-family:inherit;font-feature-settings:"liga" off,"clig" off;letter-spacing:-1px}'],changeDetection:1})};function qse(t,e){if(t&1&&Ve(0,"app-profile-view",5),t&2){let n=Ye(),o=Ca(6);We("place",o)("hideDeals",n.hideDeals());}}var $2=class t{onDestroy=new an;route=se(rs);logger=se(Tt);loadedDataService=se(In);sdkService=se(wo);mapService=se(tr);markerService=se(si);navigatorService=se(Wr);homeStateService=se(Xn);iconLibraryService=se(Ut);_profileId="";place=dt(null);mapReady=Yn(this.mapService.mapReady,{requireSync:true});hideDeals=Xe(()=>this.homeStateService.hideDeals());faArrowLeft=this.iconLibraryService.getIconDefinition("fas","arrow-left");constructor(){Ot(()=>{let e=this.place();if(e&&this.mapReady()){if(e.parentType==="Place")if(this.loadedDataService.parentPlace()===void 0){let s=this.loadedDataService.potentialParentPlaces().find(m=>m.mapvxId===e.parentId);if(s){this.loadedDataService.parentPlace.set(s),this.mapService.setParentPlace(s);let m=e.inFloors?.[0];m&&this.mapService.updateFloor(m);}}else {let c=e.inFloors?.[0];c&&this.mapService.updateFloor(c);}if(!this.markerService.hasMarker(e.mapvxId)){let o=vi(this.homeStateService.lastListedPlaces);o.length>0?this.markerService.addMarkers(o):this.markerService.addMarker(e);}this.markerService.selectMarker(e.mapvxId),setTimeout(()=>{this.mapService.updateCamera({center:e.position});},100);}});}ngOnInit(){this.addBackListener();let e=this.route.paramMap.pipe(Qt(n=>n.get("id")),mr(n=>n!==null),mr(n=>n!==this._profileId),sE(1));Oo([e,this.loadedDataService.getAvailablePlaces()]).pipe(ni(this.onDestroy),$r(([n,o])=>{this.logger.logEvent("page_view",{page_title:"Profile Page",page_location:`/profile/${n}`});let c=o.find(s=>s.mapvxId===n||s.clientId===n);return c?Gt(c):Un(this.sdkService.getPlaceDetail(n))})).subscribe({next:n=>{this._profileId!==n.mapvxId&&this.cleanOldProfile(),this._profileId=n.mapvxId,this.place.set(n),this.loadedDataService.updateInstitution(n.parentInstitutionId),this.homeStateService.selectedInstitution.set(n.parentInstitutionId),this.homeStateService.userAction.next({type:"show-place",data:{placeId:n.mapvxId,alias:n.clientId}});},error:n=>{this.logger.log("Error getting profile id",n);},complete:()=>{this.logger.log("Profile id complete");}});}ngOnDestroy(){this.removeBackListener(),this.cleanOldProfile(),this.onDestroy.next(),this.onDestroy.complete();}cleanOldProfile(){this._profileId!==""&&this.markerService.deselectMarker(this._profileId);}returnToHome(){this.homeStateService.userAction.next({type:"return-to-home",data:{filter:this.homeStateService.selectedFilter()}}),this.logger.logEvent("profile_back_clicked",{id:this.place()?.mapvxId||"",name:this.place()?.title||"",clientId:this.place()?.clientId||""}),this.navigatorService.navigateToHome();}backListener(e){this.logger.log("Back listener",e),this.returnToHome();}listener=e=>this.backListener(e);addBackListener(){globalThis.addEventListener("popstate",this.listener);}removeBackListener(){globalThis.removeEventListener("popstate",this.listener);}static \u0275fac=function(n){return new(n||t)};static \u0275cmp=ht({type:t,selectors:[["app-profile-screen"]],decls:10,vars:2,consts:[[1,"screen"],[1,"back-button"],["backButton","",3,"click"],[1,"profile-screen-content"],[1,"profile-info"],[3,"place","hideDeals"],[1,"map"]],template:function(n,o){if(n&1&&(be(0,"div",0)(1,"div",1)(2,"button",2),at("click",function(){return o.returnToHome()}),it(3,"Back"),Ee()(),be(4,"div",3)(5,"div",4),Ta(6),Et(7,qse,1,2,"app-profile-view",5),Ee(),be(8,"div",6),Ve(9,"app-map"),Ee()()()),n&2){we(6);let c=Fl(o.place());we(),It(c!==null?7:-1);}},dependencies:[_u,cm,j2],styles:[".screen[_ngcontent-%COMP%]{display:flex;flex-direction:column;gap:18px}.profile-screen-content[_ngcontent-%COMP%]{display:flex;width:100%}@container mapvx-container (width <= 1024px){.profile-screen-content[_ngcontent-%COMP%]{flex-direction:column-reverse}}@container mapvx-container (width <= 640px){.profile-screen-content[_ngcontent-%COMP%]{flex-direction:column-reverse}}.profile-info[_ngcontent-%COMP%]{display:flex;width:432px;flex-shrink:0}.profile-info[_ngcontent-%COMP%] app-profile-view[_ngcontent-%COMP%]{width:100%}@container mapvx-container (width <= 1024px){.profile-info[_ngcontent-%COMP%]{width:100%}}.map[_ngcontent-%COMP%]{width:100%;min-height:730px}@container mapvx-container (width <= 1024px){.map[_ngcontent-%COMP%]{height:730px}}@container mapvx-container (width <= 640px){.map[_ngcontent-%COMP%]{width:100%;min-height:unset;height:400px}}"]})};function Wse(t,e){if(t&1){let n=yn();be(0,"button",1),at("click",function(){cn(n);let c=Ye();return un(c.pauseRoute())}),Ve(1,"fa-icon",2),be(2,"span"),it(3,"Pause route"),Ee()();}if(t&2){let n=Ye();we(),We("icon",n.faPause);}}function Zse(t,e){if(t&1){let n=yn();be(0,"button",1),at("click",function(){cn(n);let c=Ye();return un(c.resumeRoute())}),Ve(1,"fa-icon",2),be(2,"span"),it(3,"Resume route"),Ee()();}if(t&2){let n=Ye();we(),We("icon",n.faPlay);}}function Yse(t,e){if(t&1){let n=yn();be(0,"button",1),at("click",function(){cn(n);let c=Ye();return un(c.nextStep())}),Ve(1,"fa-icon",2),be(2,"span"),it(3,"Next step"),Ee()();}if(t&2){let n=Ye();we(),We("icon",n.faNextStep);}}function Xse(t,e){if(t&1){let n=yn();be(0,"button",1),at("click",function(){cn(n);let c=Ye();return un(c.restartRoute())}),Ve(1,"fa-icon",2),be(2,"span"),it(3,"Restart route"),Ee()();}if(t&2){let n=Ye();we(),We("icon",n.faRestart);}}function Kse(t,e){}var H2=class t{logger=se(Tt);iconLibrary=se(Ut);routingService=se(So);restartRouteCallback=Ni();AnimationState=jv;animationStatus=Yn(this.routingService.animationStatusSubject,{initialValue:0});faPlay=this.iconLibrary.getIconDefinition("fas","play");faPause=this.iconLibrary.getIconDefinition("fas","pause");faRestart=this.iconLibrary.getIconDefinition("fas","rotate-right");faNextStep=this.iconLibrary.getIconDefinition("fas","chevron-right");nextStep(){this.logger.logEvent("route_button_clicked",{action:"next-step"}),this.routingService.animateNextStep();}pauseRoute(){this.logger.logEvent("route_button_clicked",{action:"pause"}),this.routingService.pauseRouteAnimation();}resumeRoute(){this.logger.logEvent("route_button_clicked",{action:"resume"}),this.routingService.resumeRouteAnimation();}restartRoute(){this.logger.logEvent("route_button_clicked",{action:"restart"}),this.routingService.restartRouteAnimation(),this.restartRouteCallback.emit();}static \u0275fac=function(n){return new(n||t)};static \u0275cmp=ht({type:t,selectors:[["app-route-control-button"]],outputs:{restartRouteCallback:"restartRouteCallback"},decls:5,vars:1,consts:[[1,"route-control-button"],[1,"route-control-button",3,"click"],[3,"icon"]],template:function(n,o){if(n&1&&Et(0,Wse,4,1,"button",0)(1,Zse,4,1,"button",0)(2,Yse,4,1,"button",0)(3,Xse,4,1,"button",0)(4,Kse,0,0),n&2){let c;It((c=o.animationStatus())===o.AnimationState.Playing?0:c===o.AnimationState.Paused?1:c===o.AnimationState.Stepping?2:c===o.AnimationState.Finished?3:4);}},dependencies:[tn],styles:["[_nghost-%COMP%]{position:absolute;top:20px;left:500px}@container mapvx-container (width <= 1024px){[_nghost-%COMP%]{top:90px;left:unset;right:20px}}.route-control-button[_ngcontent-%COMP%]{display:flex;width:180px;height:45px;justify-content:center;align-items:center;gap:10px;background:var(--definitions-colors-background-white);color:var(--definitions-colors-text-black);box-shadow:var(--definitions-shadows-general);border:none;cursor:pointer}@container mapvx-container (width <= 1024px){.route-control-button[_ngcontent-%COMP%]{width:45px}}.route-control-button[_ngcontent-%COMP%] fa-icon[_ngcontent-%COMP%]{font-size:16px}.route-control-button[_ngcontent-%COMP%] span[_ngcontent-%COMP%]{font:var(--definitions-textFonts-desktop-button-5);font-family:inherit}@container mapvx-container (width <= 1024px){.route-control-button[_ngcontent-%COMP%] span[_ngcontent-%COMP%]{display:none}}"],changeDetection:1})};function Qse(t,e){if(t&1&&(Ve(0,"fa-icon",3),be(1,"span",8),it(2,"Elevator"),Ee()),t&2){let n=Ye(2);We("icon",n.faCircleSmall);}}function Jse(t,e){if(t&1&&(be(0,"div",5),Ve(1,"fa-icon",3),be(2,"span",7),it(3),Ee(),Et(4,Qse,3,1),Ee()),t&2){let n=Ye(),o=Ca(13);we(),We("icon",n.faArrowsUpDown),we(2),ar(o.path),we(),It(o.byElevator?4:-1);}}function eae(t,e){if(t&1){let n=yn();be(0,"button",9),at("click",function(){cn(n);let c=Ye();return un(c.onStartRouteClick())}),Ve(1,"fa-icon",3),be(2,"span"),it(3,"Start Route"),Ee()();}if(t&2){let n=Ye();we(),We("icon",n.faArrowTopRight);}}var G2=class t{iconLibrary=se(Ut);loadedDataService=se(In);routingService=se(So);currentRoute=Wt.required();startRouteClick=Ni();animationStatus=Yn(this.routingService.animationStatusSubject,{initialValue:0});canStartRoute=Xe(()=>this.animationStatus()!==4);faCircleSmall=this.iconLibrary.getIconDefinition("fas","circle-small");faArrowTopRight=this.iconLibrary.getIconDefinition("fak","arrow-top-right");faArrowsUpDown=this.iconLibrary.getIconDefinition("fas","arrows-up-down");time=Xe(()=>{let e=this.currentRoute();return this.toMinutes(e.duration)});distance=Xe(()=>{let e=this.currentRoute();return Math.ceil(e.length*3.28084)});floorChangeSummary=Xe(()=>{let e=this.loadedDataService.parentPlace()?.innerFloors??[],n=_B(this.currentRoute());if(n.length===0||e.length===0)return;let o=[n[0].fromFloorId,...n.map(c=>c.toFloorId)].map(c=>vB(e,c));if(!o.includes(void 0))return {path:o.join(" \u2192 "),byElevator:n.every(c=>c.byElevator)}});toMinutes(e){return Math.ceil(e/60)}onStartRouteClick(){this.startRouteClick.emit();}static \u0275fac=function(n){return new(n||t)};static \u0275cmp=ht({type:t,selectors:[["app-route-info"]],inputs:{currentRoute:[1,"currentRoute"]},outputs:{startRouteClick:"startRouteClick"},decls:16,vars:7,consts:[[1,"route-info"],[1,"route-info-item"],[1,"route-info-item-label"],[3,"icon"],[1,"route-info-item-value"],[1,"floor-change"],[1,"start-route-button"],[1,"floor-change-path"],[1,"floor-change-mode"],[1,"start-route-button",3,"click"]],template:function(n,o){if(n&1&&(be(0,"div",0)(1,"div",1)(2,"span",2),it(3,"Time"),Ee(),Ve(4,"fa-icon",3),be(5,"span",4),it(6),Ee()(),be(7,"div",1)(8,"span",2),it(9,"Distance"),Ee(),Ve(10,"fa-icon",3),be(11,"span",4),it(12),Ee()()(),Ta(13),Et(14,Jse,5,3,"div",5),Et(15,eae,4,1,"button",6)),n&2){we(4),We("icon",o.faCircleSmall),we(2),br("",o.time()," min"),we(4),We("icon",o.faCircleSmall),we(2),br("",o.distance()," ft"),we();let c=Fl(o.floorChangeSummary());we(),It(c?14:-1),we(),It(o.canStartRoute()?15:-1);}},dependencies:[tn],styles:['[_nghost-%COMP%]{display:flex;flex-direction:column;gap:16px}.route-info[_ngcontent-%COMP%]{display:flex;justify-content:space-between;align-items:center;flex-wrap:wrap}.route-info-item[_ngcontent-%COMP%], .floor-change[_ngcontent-%COMP%]{display:flex;align-items:center;gap:10px;color:var(--definitions-colors-text-black)}.start-route-button[_ngcontent-%COMP%]{display:flex;margin-top:24px;padding:8px 16px;justify-content:center;align-items:center;gap:10px;background-color:var(--definitions-colors-primary-900);color:var(--definitions-colors-text-50);border:none;cursor:pointer;width:100%}.start-route-button[_ngcontent-%COMP%] span[_ngcontent-%COMP%]{font:var(--definitions-textFonts-desktop-button-2);font-family:inherit;font-feature-settings:"liga" off,"clig" off;line-height:15px}'],changeDetection:1})};var tae=new mt("",{factory:()=>CB}),CB="always";var nae=(()=>{class t{static \u0275fac=function(o){return new(o||t)};static \u0275mod=zs({type:t});static \u0275inj=Xo({})}return t})();var DB=(()=>{class t{static withConfig(n){return {ngModule:t,providers:[{provide:tae,useValue:n.callSetDisabledState??CB}]}}static \u0275fac=function(o){return new(o||t)};static \u0275mod=zs({type:t});static \u0275inj=Xo({imports:[nae]})}return t})();function rae(t,e){if(t&1){let n=yn();be(0,"button",5),at("click",function(){cn(n);let c=Ye();return un(c.clearSelectedPlace())}),Ve(1,"fa-icon",6),Ee();}if(t&2){let n=Ye();we(),We("icon",n.faXmark);}}function iae(t,e){if(t&1){let n=yn();be(0,"button",10),at("click",function(){cn(n);let c=Ye(2);return un(c.useCurrentLocation())}),be(1,"div",11),Ve(2,"fa-icon",6),Ee(),be(3,"div",12)(4,"div",13),it(5,"Use current location"),Ee()()();}if(t&2){let n=Ye(2);we(2),We("icon",n.faLocationArrow);}}function oae(t,e){if(t&1){let n=yn();be(0,"button",10),at("click",function(){let c=cn(n).$implicit,s=Ye(2);return un(s.selectPlace(c))}),be(1,"div",11),Ve(2,"fa-icon",6),Ee(),be(3,"div",12)(4,"div",13),it(5),Ee(),be(6,"div",14),it(7),Ee()()();}if(t&2){let n=e.$implicit,o=Ye(2);we(2),We("icon",o.faLocationDot),we(3),ar(n.title),we(2),ar(n.address);}}function sae(t,e){t&1&&(be(0,"div",9),it(1,"No results found"),Ee());}function aae(t,e){if(t&1&&(be(0,"div",4)(1,"div",7),Et(2,iae,6,1,"button",8),vr(3,oae,8,3,"button",8,vo),Et(5,sae,2,0,"div",9),Ee()()),t&2){let n=Ye();we(2),It(n.allowCurrentLocation()&&n.locationPermission()!=="denied"?2:-1),we(),_r(n.filteredPlaces()),we(2),It(n.filteredPlaces().length===0&&n.filterText().trim()?5:-1);}}var q2=class t{logger=se(Tt);locationService=se(vu);iconLibrary=se(Ut);places=Wt.required();initialSelectedPlace=Wt(null);allowCurrentLocation=Wt(false);placeholder=Wt("Set a starting point");selectedPlace=ii(()=>this.initialSelectedPlace());selectedPlaceChange=Ni();isDropdownOpen=dt(false);filterText=ii(()=>this.selectedPlace()?.title||"");filteredPlaces=Xe(()=>{let e=this.places(),n=this.filterText().toLowerCase().trim();return n?e.filter(o=>o.title?.toLowerCase().includes(n)||o.address?.toLowerCase().includes(n)):e});locationPermission=dt("prompt");faLocationDot=this.iconLibrary.getIconDefinition("fas","location-dot");faLocationArrow=this.iconLibrary.getIconDefinition("fas","location-arrow");faXmark=this.iconLibrary.getIconDefinition("fas","xmark");constructor(){this.checkLocationPermission();}checkLocationPermission(){this.locationService.checkLocationPermission().then(e=>{this.locationPermission.set(e);}).catch(e=>{this.logger.logWarning("Error checking location permission",e),this.locationPermission.set("denied");});}requestLocationPermission(){this.locationService.requestLocationPermission().then(e=>{this.locationPermission.set(e),e==="granted"&&this.getCurrentLocation();}).catch(e=>{this.logger.logWarning("Error requesting location permission",e),this.locationPermission.set("denied");});}getCurrentLocation(){this.locationService.getCurrentLocation().then(e=>{this.selectedPlace.set(e),this.selectedPlaceChange.emit(e);}).catch(e=>{this.logger.logWarning("Error getting current location",e);});}useCurrentLocation(){switch(this.locationPermission()){case "granted":this.getCurrentLocation();break;case "prompt":this.requestLocationPermission();break}}selectPlace(e){this.selectedPlace.set(e),this.isDropdownOpen.set(false),this.selectedPlaceChange.emit(e);}clearSelectedPlace(){this.selectedPlace.set(null),this.filterText.set(""),this.selectedPlaceChange.emit(null);}onInputFocus(){this.isDropdownOpen.set(true);}onInputBlur(){setTimeout(()=>{this.isDropdownOpen.set(false);},150);}onInputChange(e){let n=e.target;this.filterText.set(n.value),this.isDropdownOpen.set(true);}static \u0275fac=function(n){return new(n||t)};static \u0275cmp=ht({type:t,selectors:[["app-place-selector"]],inputs:{places:[1,"places"],initialSelectedPlace:[1,"initialSelectedPlace"],allowCurrentLocation:[1,"allowCurrentLocation"],placeholder:[1,"placeholder"]},outputs:{selectedPlaceChange:"selectedPlaceChange"},decls:5,vars:4,consts:[[1,"place-selector"],[1,"input-container"],["type","text","name","place-input",1,"place-input",3,"input","focus","blur","value","placeholder"],[1,"clear-button"],[1,"dropdown-container"],[1,"clear-button",3,"click"],[3,"icon"],[1,"dropdown-list"],["type","button",1,"place-option"],[1,"no-results"],["type","button",1,"place-option",3,"click"],[1,"place-icon"],[1,"place-info"],[1,"place-title"],[1,"place-address"]],template:function(n,o){n&1&&(be(0,"div",0)(1,"div",1)(2,"input",2),at("input",function(s){return o.onInputChange(s)})("focus",function(){return o.onInputFocus()})("blur",function(){return o.onInputBlur()}),Ee(),Et(3,rae,2,1,"button",3),Ee(),Et(4,aae,6,2,"div",4),Ee()),n&2&&(we(2),We("value",o.filterText())("placeholder",o.placeholder()),we(),It(o.selectedPlace()?3:-1),we(),It(o.isDropdownOpen()?4:-1));},dependencies:[DB,tn],styles:['[_nghost-%COMP%]{width:100%}.place-selector[_ngcontent-%COMP%]{position:relative;width:100%}.input-container[_ngcontent-%COMP%]{width:100%;display:flex}.place-input[_ngcontent-%COMP%]{width:100%;border:none;font:var(--definitions-textFonts-desktop-button-1);font-family:inherit;font-feature-settings:"liga" off,"clig" off;letter-spacing:-1px;text-overflow:ellipsis;outline:none;color:var(--definitions-colors-text-black)}.place-input[_ngcontent-%COMP%]::placeholder{color:var(--definitions-colors-primary-300)}.clear-button[_ngcontent-%COMP%]{background:none;border:none;cursor:pointer;display:flex;align-items:center;justify-content:center;font-size:16px;color:var(--definitions-colors-text-900)}.dropdown-container[_ngcontent-%COMP%]{position:absolute;top:100%;left:0;right:0;z-index:10;margin-top:4px}.dropdown-list[_ngcontent-%COMP%]{background:var(--definitions-colors-background-50);border-radius:8px;box-shadow:var(--definitions-shadows-general);max-height:300px;overflow-y:auto;border:1px solid var(--definitions-colors-gray-200)}.place-option[_ngcontent-%COMP%]{display:flex;align-items:flex-start;gap:4px;padding:15px 24px;cursor:pointer;transition:background-color .2s ease;border-bottom:1px solid #f5f5f5;background:none;border:none;width:100%;text-align:left}.place-option[_ngcontent-%COMP%]:last-child{border-bottom:none}.place-option[_ngcontent-%COMP%]:hover{background-color:#f8f9fa}.place-option[_ngcontent-%COMP%]:active{background-color:#e9ecef}.place-option[_ngcontent-%COMP%]:focus{outline:2px solid #5D5D5D;outline-offset:-2px}.place-icon[_ngcontent-%COMP%]{flex-shrink:0;width:19.341px;height:19.341px;margin-top:2px;color:var(--definitions-colors-primary-600)}.place-info[_ngcontent-%COMP%]{flex:1;display:flex;flex-direction:column;gap:4px;min-width:0}.place-title[_ngcontent-%COMP%]{font:var(--definitions-textFonts-desktop-button-3);font-family:inherit;color:var(--definitions-colors-text-900);word-wrap:break-word}.place-address[_ngcontent-%COMP%]{font:var(--definitions-textFonts-desktop-body-3);font-family:inherit;color:var(--definitions-colors-text-800);word-wrap:break-word}.no-results[_ngcontent-%COMP%]{padding:20px 24px;text-align:center;font:var(--definitions-textFonts-desktop-body-3);font-family:inherit;color:var(--definitions-colors-text-800)}@media(width<=768px){.place-option[_ngcontent-%COMP%]{padding:12px 20px}.place-title[_ngcontent-%COMP%]{font-size:15px}.place-address[_ngcontent-%COMP%]{font-size:13px}}'],changeDetection:1})};var W2=class t{logger=se(Tt);iconLibrary=se(Ut);places=Wt.required();initialDestination=Wt(null);originPlace=dt(null);destinationPlace=ii(()=>this.initialDestination());originSelected=Ni();destinationSelected=Ni();swapPlaces=Ni();clearDestination=Ni();locationPermission=dt("prompt");faLocationDot=this.iconLibrary.getIconDefinition("fas","location-dot");faEllipsisVertical=this.iconLibrary.getIconDefinition("fas","ellipsis-vertical");faArrowsRetweet=this.iconLibrary.getIconDefinition("fas","arrows-retweet");canSwapPlaces=Xe(()=>uC(this.originPlace())&&uC(this.destinationPlace()));onOriginSelected(e){this.originSelected.emit(e),this.originPlace.set(e);}onDestinationSelected(e){if(Bs(e)){this.logger.logWarning("Current location is not allowed as destination");return}this.destinationSelected.emit(e),this.destinationPlace.set(e);}onSwapPlaces(){let e=this.originPlace(),n=this.destinationPlace();if(Bs(e)){this.logger.logWarning("Should not be possible to swap places with current location as origin");return}this.originPlace.set(n),this.originSelected.emit(n),this.destinationPlace.set(e),this.destinationSelected.emit(e);}static \u0275fac=function(n){return new(n||t)};static \u0275cmp=ht({type:t,selectors:[["app-route-selector"]],inputs:{places:[1,"places"],initialDestination:[1,"initialDestination"]},outputs:{originSelected:"originSelected",destinationSelected:"destinationSelected",swapPlaces:"swapPlaces",clearDestination:"clearDestination"},decls:20,vars:10,consts:[[1,"route-selector"],[1,"routing-option","origin"],[1,"place-info"],[1,"place-icon"],["xmlns","http://www.w3.org/2000/svg","width","36","height","36","viewBox","0 0 36 36","fill","none"],["width","36","height","36","rx","18","fill","#8DC8FF"],["d","M29.2517 17.7595C29.1117 23.9741 23.9602 28.8986 17.7456 28.7586C11.5309 28.6185 6.60648 23.4671 6.74649 17.2524C6.8865 11.0378 12.038 6.11332 18.2526 6.25333C24.4673 6.39334 29.3917 11.5448 29.2517 17.7595Z","fill","#2C57A0"],["d","M13.5364 22.4764C13.4259 22.5279 13.3135 22.5415 13.199 22.5173C13.0847 22.4932 12.9902 22.4373 12.9155 22.3496C12.8298 22.2721 12.7772 22.1766 12.7577 22.0629C12.7384 21.9495 12.7519 21.8395 12.7982 21.7327L17.6404 11.5662C17.7437 11.3532 17.9102 11.2493 18.1399 11.2545C18.3697 11.2597 18.5313 11.371 18.6249 11.5884L23.0044 21.9626C23.0458 22.0714 23.0543 22.182 23.03 22.2944C23.0054 22.407 22.9485 22.5001 22.8594 22.5736C22.7808 22.6579 22.6839 22.7095 22.5687 22.7283C22.4532 22.7475 22.3415 22.7288 22.2335 22.6723L17.9278 20.6691L13.5364 22.4764ZM14.4251 20.9295L17.954 19.5064L21.4153 21.087L18.0981 13.1117L14.4251 20.9295Z","fill","white"],[3,"selectedPlaceChange","places","initialSelectedPlace","allowCurrentLocation"],[1,"connector-line"],[1,"connector-dots"],[3,"icon"],[1,"connector-line-element"],["type","button",1,"swap-button",3,"click","disabled"],[1,"routing-option","destination"],[3,"selectedPlaceChange","places","initialSelectedPlace","placeholder"]],template:function(n,o){n&1&&(be(0,"div",0)(1,"div",1)(2,"div",2)(3,"div",3),Sb(),be(4,"svg",4),Ve(5,"rect",5)(6,"path",6)(7,"path",7),Ee()(),Eb(),be(8,"app-place-selector",8),at("selectedPlaceChange",function(s){return o.onOriginSelected(s)}),Ee()()(),be(9,"div",9)(10,"div",10),Ve(11,"fa-icon",11),Ee(),Ve(12,"div",12),be(13,"button",13),at("click",function(){return o.onSwapPlaces()}),Ve(14,"fa-icon",11),Ee()(),be(15,"div",14)(16,"div",2)(17,"div",3),Ve(18,"fa-icon",11),Ee(),be(19,"app-place-selector",15),at("selectedPlaceChange",function(s){return o.onDestinationSelected(s)}),Ee()()()()),n&2&&(we(8),We("places",o.places())("initialSelectedPlace",o.originPlace())("allowCurrentLocation",true),we(3),We("icon",o.faEllipsisVertical),we(2),We("disabled",!o.canSwapPlaces()),we(),We("icon",o.faArrowsRetweet),we(4),We("icon",o.faLocationDot),we(),We("places",o.places())("initialSelectedPlace",o.destinationPlace())("placeholder","Select a destination"));},dependencies:[q2,tn],styles:['.route-selector[_ngcontent-%COMP%]{display:flex;flex-direction:column;gap:5px;position:relative;width:100%;box-sizing:border-box}.routing-option[_ngcontent-%COMP%]{display:flex;gap:10px;align-items:center;padding:0 40px 0 0;box-sizing:border-box;width:100%}.place-info[_ngcontent-%COMP%]{display:flex;gap:10px;align-items:center;flex:1;min-width:0}.place-icon[_ngcontent-%COMP%]{flex-shrink:0;width:36px;height:36px;display:flex;align-items:center;justify-content:center}.destination[_ngcontent-%COMP%] .place-icon[_ngcontent-%COMP%]{color:var(--definitions-colors-text-black)}.connector-line[_ngcontent-%COMP%]{display:flex;gap:8px;align-items:center;width:100%;position:relative}.connector-dots[_ngcontent-%COMP%]{flex-shrink:0;width:36px;height:36px;display:flex;align-items:center;justify-content:center}.connector-dots[_ngcontent-%COMP%] fa-icon[_ngcontent-%COMP%]{font-size:20px;color:#5d5d5d}.connector-line-element[_ngcontent-%COMP%]{flex:1;height:1px;background:#e0e0e0;position:relative}.connector-line-element[_ngcontent-%COMP%]:before{content:"";position:absolute;top:50%;left:0;right:0;height:1px;background:repeating-linear-gradient(to right,#e0e0e0 0,#e0e0e0 4px,transparent 4px,transparent 8px);transform:translateY(-50%)}.swap-button[_ngcontent-%COMP%]{flex-shrink:0;width:32px;height:25px;background:none;border:none;cursor:pointer;display:flex;align-items:center;justify-content:center;border-radius:4px;transition:background-color .2s ease}.swap-button[_ngcontent-%COMP%]:disabled{opacity:.5;cursor:not-allowed}.swap-button[_ngcontent-%COMP%]:hover:not(:disabled){background-color:#f5f5f5}.swap-button[_ngcontent-%COMP%] fa-icon[_ngcontent-%COMP%]{font-size:16px;color:#5d5d5d}.clear-button[_ngcontent-%COMP%]{flex-shrink:0;width:20px;height:20px;background:none;border:none;cursor:pointer;display:flex;align-items:center;justify-content:center;border-radius:50%;transition:background-color .2s ease}.clear-button[_ngcontent-%COMP%]:hover{background-color:#f5f5f5}.clear-button[_ngcontent-%COMP%] fa-icon[_ngcontent-%COMP%]{font-size:12px;color:#666}.select-destination-button[_ngcontent-%COMP%]{background:none;border:none;cursor:pointer;padding:8px 12px;border-radius:6px;transition:background-color .2s ease;flex:1;text-align:left}.select-destination-button[_ngcontent-%COMP%]:hover{background-color:#f8f9fa}.select-destination-button[_ngcontent-%COMP%] .place-label[_ngcontent-%COMP%]{font-family:Open Sans,sans-serif;font-weight:600;font-size:20px;line-height:1;color:#cbcbcb;font-variation-settings:"wdth" 100;letter-spacing:-1px}.destination-selector[_ngcontent-%COMP%]{position:absolute;top:81px;left:84.5px;width:310px;z-index:1000;background:#fff;box-shadow:0 4px 4px #00000040;border-radius:8px;overflow:hidden}@media(width<=768px){.route-selector[_ngcontent-%COMP%]{padding:20px 16px}.place-text[_ngcontent-%COMP%]{font-size:18px}.place-icon[_ngcontent-%COMP%]{width:32px;height:32px}.place-icon[_ngcontent-%COMP%] fa-icon[_ngcontent-%COMP%]{font-size:18px}.destination-selector[_ngcontent-%COMP%]{left:16px;right:16px;width:auto}}'],changeDetection:1})};function lae(t,e){if(t&1&&Ve(0,"fa-icon",2),t&2){Ye(2);let n=Ca(0);We("icon",n.icon);}}function cae(t,e){if(t&1&&(be(0,"div",1),Et(1,lae,1,1,"fa-icon",2),be(2,"span",3),it(3),Ee()()),t&2){Ye();let n=Ca(0);An("route-step-floor-change",n.icon!==void 0),we(),It(n.icon?1:-1),we(2),ar(n.text);}}var Z2=class t{iconLibrary=se(Ut);routingService=se(So);loadedDataService=se(In);currentStep=Yn(this.routingService.currentStepSubject,{initialValue:null});faArrowUp=this.iconLibrary.getIconDefinition("fas","arrow-up");faArrowDown=this.iconLibrary.getIconDefinition("fas","arrow-down");instruction=Xe(()=>{let e=this.currentStep();if(!e)return;let n=this.loadedDataService.parentPlace()?.innerFloors??[];return this.getFloorChangeInstruction(e,n)??this.getPlainInstruction(e)});getFloorChangeInstruction(e,n){if(!mM(e))return;let o=n.find(I=>I.key===e.startInsideFloor),c=n.find(I=>I.key===e.endInsideFloor);if(!o||!c)return;let s=c.level>o.level,m=s?"up":"down";return {text:e.elevatorStep?`Take the elevator ${m} to ${am(c)}`:`Go ${m} to ${am(c)}`,icon:s?this.faArrowUp:this.faArrowDown}}getPlainInstruction(e){let n=e.plainInstruction?.trim();return n?{text:n}:void 0}static \u0275fac=function(n){return new(n||t)};static \u0275cmp=ht({type:t,selectors:[["app-route-step"]],decls:2,vars:2,consts:[[1,"route-step",3,"route-step-floor-change"],[1,"route-step"],[3,"icon"],[1,"route-step-text"]],template:function(n,o){if(n&1&&(Ta(0),Et(1,cae,4,4,"div",0)),n&2){let c=Fl(o.instruction());we(),It(c?1:-1);}},dependencies:[tn],styles:[".route-step[_ngcontent-%COMP%]{display:flex;align-items:center;gap:10px;padding:10px 16px;border-radius:16px;background-color:var(--definitions-colors-background-white);box-shadow:var(--definitions-shadows-general);color:var(--definitions-colors-text-black)}.route-step-floor-change[_ngcontent-%COMP%]{background-color:var(--definitions-colors-secondary-orange);color:var(--definitions-colors-text-50)}.route-step-text[_ngcontent-%COMP%]{font-family:inherit}"],changeDetection:1})};function uae(t,e){if(t&1){let n=yn();be(0,"div",6)(1,"app-route-info",9),at("startRouteClick",function(){cn(n);let c=Ye();return un(c.startStepAnimation())}),Ee()();}if(t&2){Ye();let n=Ca(8);we(),We("currentRoute",n);}}var Y2=class t{routeId="";route=se(rs);logger=se(Tt);navigatorService=se(Wr);loadedDataService=se(In);mapService=se(tr);markerService=se(si);homeStateService=se(Xn);routingService=se(So);mapReady=Yn(this.mapService.mapReady,{requireSync:true});places=Yn(Oo([this.loadedDataService.getAvailablePlaces(),this.loadedDataService.getInstitutionId()]).pipe(Qt(([e,n])=>e.filter(o=>o.parentInstitutionId===n))),{initialValue:[]});originPoint=dt(null);destinationPlace=ii(()=>this.initialDestination());initialDestination=dt(null);currentRoute=dt(null);constructor(){this.routeId=this.route.snapshot.params.id||"unknown",this.logger.logEvent("page_view",{page_title:"Route Page",page_location:`/route/${this.routeId}`}),Ot(()=>{let e=this.places();if(e.length>0){let n=e.find(o=>o.mapvxId===this.routeId||o.clientId===this.routeId);n&&this.initialDestination.set(n);}}),Ot(()=>{let e=this.originPoint(),n=this.destinationPlace();if(this.mapReady()){if(this.markerService.removeAllMarkers(),e&&n){this.markerService.addOriginMarker(e.position),this.markerService.addDestinationMarker(n);return}this.markerService.addRouteMarkers(vi(this.homeStateService.lastListedPlaces)),n&&(this.markerService.hasMarker(n.mapvxId)||this.markerService.addRouteMarker(n),this.markerService.selectMarker(n.mapvxId),setTimeout(()=>{this.mapService.updateCamera({center:n.position});},100));}}),Ot(e=>{let n=this.originPoint(),o=this.destinationPlace();if(!n||!o||!this.mapReady())return;let c=false;e(()=>{c=true,this.currentRoute.set(null),this.routingService.removeRoute();}),this.logger.logEvent("route_selected",{originId:Bs(n)?"current-location":n.mapvxId,originName:n.title,destinationId:o.mapvxId,destinationName:o.title,destinationClientId:o.clientId||"",originClientId:Bs(n)?"":n.clientId||""}),this.routingService.getRoute(n,o).then(s=>{c||(this.currentRoute.set(s),this.routingService.startAnimatingRoute(s),this.fitMapToRoute(n,o,s));}).catch(s=>{this.logger.logWarning("Error getting route",s);});});}returnToProfile(){this.navigatorService.navigateToProfile(this.routeId);let e=this.originPoint(),n=this.destinationPlace();this.logger.logEvent("route_back_clicked",{destinationId:n?.mapvxId||"",destinationName:n?.title||"",destinationClientId:n?.clientId||"",originId:Bs(e)?"current-location":e?.mapvxId||"",originName:e?.title||"",originClientId:Bs(e)?"":e?.clientId||""});}onDestinationSelected(e){this.destinationPlace.set(e);}onOriginSelected(e){this.originPoint.set(e);}startStepAnimation(){let e=this.currentRoute();e&&(this.logger.logEvent("route_button_clicked",{action:"start"}),this.routingService.removeRoute(),this.routingService.startSteppingRoute(e));}fitMapToRoute(e,n,o){let c=e?.position??this.originPoint()?.position,s=n?.position??this.destinationPlace()?.position,m=o??this.currentRoute(),w=document.querySelector(".route-related-components");if(c&&s&&m&&w&&this.mapReady()){let I=getComputedStyle(w),P=Number.parseInt(I.getPropertyValue("--padding-top")),L=Number.parseInt(I.getPropertyValue("--padding-left"));setTimeout(()=>{this.mapService.fitRoute(c,s,m,{padding:{top:P,left:L,right:70,bottom:50}});},100);}}static \u0275fac=function(n){return new(n||t)};static \u0275cmp=ht({type:t,selectors:[["app-route-screen"]],decls:13,vars:4,consts:[[1,"route-screen"],[1,"back-button"],["backButton","",3,"click"],[1,"route-screen-content"],[1,"route-related-components"],[3,"originSelected","destinationSelected","places","initialDestination"],[1,"route-info"],[1,"map"],[3,"restartRouteCallback"],[3,"startRouteClick","currentRoute"]],template:function(n,o){if(n&1&&(be(0,"div",0)(1,"div",1)(2,"button",2),at("click",function(){return o.returnToProfile()}),it(3,"Back"),Ee()(),be(4,"div",3)(5,"div",4)(6,"app-route-selector",5),at("originSelected",function(s){return o.onOriginSelected(s)})("destinationSelected",function(s){return o.onDestinationSelected(s)}),Ee(),Ve(7,"app-route-step"),Ta(8),Et(9,uae,2,1,"div",6),Ee(),be(10,"div",7)(11,"app-map")(12,"app-route-control-button",8),at("restartRouteCallback",function(){return o.fitMapToRoute()}),Ee()()()()()),n&2){we(6),We("places",o.places())("initialDestination",o.initialDestination()),we(2);let c=Fl(o.currentRoute());we(),It(c!==null?9:-1);}},dependencies:[cm,_u,W2,G2,Z2,H2],styles:[".route-screen-content[_ngcontent-%COMP%]{position:relative}.route-related-components[_ngcontent-%COMP%]{--padding-top: 130;--padding-left: 450;position:absolute;top:0;left:0;width:450px;box-sizing:border-box;z-index:1;display:flex;flex-direction:column;gap:40px;padding:40px 38px;background-color:var(--definitions-colors-background-white)}@container mapvx-container (width <= 1024px){.route-related-components[_ngcontent-%COMP%]{--padding-top: 70;--padding-left: 50;position:unset;width:100%}}.map[_ngcontent-%COMP%]{width:100%;height:820px}"]})};var AB=[{path:"",component:I2,children:[{path:"list",redirectTo:"",pathMatch:"full"},{path:"",component:O2},{path:"search",component:F2}]},{path:"profile/:id",component:$2},{path:"route/:id",component:Y2},{path:"**",redirectTo:""}];var X2=class{handleError(e){console.error("CustomErrorHandler",e);}};var K2=class t extends Da{_path="";_baseHref;_popStateListeners=[];constructor(){super(),this._baseHref=this.getBaseHref();}path(){return this._path}prepareExternalUrl(e){return this._baseHref+"#"+e}pushState(e,n,o,c){this._updatePath(e,o,c);}replaceState(e,n,o,c){this._updatePath(e,o,c);}forward(){}back(){}getState(){return null}historyGo(e){}onPopState(e){this._popStateListeners.push(e);}getBaseHref(){return typeof document<"u"?document.querySelector("base")?.href??"/":"/"}_updatePath(e,n,o){this._path=n+(o?"?"+o:""),this._notifyPopState(e,n);}_notifyPopState(e,n){let o={type:"popstate",state:e,url:n,pop:true};this._popStateListeners.forEach(c=>{try{c(o);}catch(s){console.error("Error in popstate listener:",s);}});}getCurrentPath(){return this._path}setInitialPath(e){this._path=e;}static \u0275fac=function(n){return new(n||t)};static \u0275prov=ct({token:t,factory:t.\u0275fac,providedIn:"root"})};var MB={providers:[{provide:yo,useClass:X2},OT(),FC(AB),{provide:Da,useClass:K2},lb(T4.forRoot(Ly,[{command:"config",values:[Ly,{send_page_view:false}]}]))]};cC(MB).then(t=>{let e=fL(E2,{injector:t.injector});customElements.define("mapvx-website",e);}).catch(t=>console.error(t));
1999
+ </svg>`,n}pauseRouteAnimation(){this.animationStatusSubject.next(2),this.mapService.pauseAnimatingRoute();}resumeRouteAnimation(){this.animationStatusSubject.next(1),this.mapService.resumeAnimatingRoute();}restartRouteAnimation(){this.animationStatusSubject.next(1),this.mapService.restartAnimatingRoute();}removeRoute(){this.animationStatusSubject.next(0),this.activeRouteSubject.next(null),this.currentStepSubject.next(null),this.mapService.removeRoute();}static \u0275fac=function(n){return new(n||t)};static \u0275prov=ct({token:t,factory:t.\u0275fac})};var w2={term:"",results:[]};function S2(t,e){let n=se(ri),o=new Yo(1),c=Ot(()=>{let s;try{s=t();}catch(m){vi(()=>o.error(m));return}vi(()=>o.next(s));},{injector:n,manualCleanup:true});return n.get(Oi).onDestroy(()=>{c.destroy(),o.complete();}),o.asObservable()}function Yn(t,e){let o=!e?.manualCleanup?e?.injector?.get(Oi)??se(Oi):null,c=koe(e?.equal),s;e?.requireSync?s=dt({kind:0},{equal:c}):s=dt({kind:1,value:e?.initialValue},{equal:c});let m,w=t.subscribe({next:I=>s.set({kind:1,value:I}),error:I=>{s.set({kind:2,error:I}),m?.();},complete:()=>{m?.();}});if(e?.requireSync&&s().kind===0)throw new tt(601,false);return m=o?.onDestroy(w.unsubscribe.bind(w)),Xe(()=>{let I=s();switch(I.kind){case 1:return I.value;case 2:throw I.error;case 0:throw new tt(601,false)}},{equal:e?.equal})}function koe(t=Object.is){return (e,n)=>e.kind===1&&n.kind===1&&t(e.value,n.value)}var Xn=class t{loadedDataService=se(In);homePlaces=dt([]);showCategoryFilters=dt(true);showCityFilter=dt(true);defaultToMap=dt(false);activeView=ii(()=>this.defaultToMap()?"map":"grid");inputValue=dt("");selectedInstitution=dt("");hideDeals=dt(false);cardWidth=dt(void 0);rowsPerPage=dt(2);initialInstitutionId=dt("");showDealLabels=dt(false);lastListedPlaces=dt([]);selectedCity=ii(()=>{let e=this.selectedInstitution(),n=this.loadedDataService.cityFilterOptions();return n.find(c=>c.institutionId===e)??(n.length>0?n[0]:void 0)});cityFilterGroups=Xe(()=>{let e=new Map(this.loadedDataService.loadedInstitutions().map(o=>[o.mapvxId,o.city])),n=[];for(let o of this.loadedDataService.cityFilterOptions()){let c=e.get(o.institutionId)?.trim()||o.name,s=n.find(m=>m.name===c);s?s.filterIds.push(o.filterId):n.push({name:c,option:o,filterIds:[o.filterId]});}return n});selectedCityGroup=Xe(()=>{let e=this.selectedCity();if(!e)return;let n=this.cityFilterGroups();return n.find(o=>o.filterIds.includes(e.filterId))??(n.length>0?n[0]:void 0)});availableCityGroups=Xe(()=>{let e=this.cityFilterGroups(),n=this.initialInstitutionId(),o=this.loadedDataService.loadedInstitutions().find(s=>s.mapvxId===n)?.city?.trim();if(!o)return e;let c=e.filter(s=>s.name===o);return c.length>0?c:e});selectedFilterId=Xe(()=>this.selectedCity()?.filterId??"");loadedPlaces=Yn(this.loadedDataService.getAvailablePlaces(),{initialValue:[]});listablePlaceIds=Xe(()=>{let e=this.loadedPlaces().filter(c=>c.visibility==="public");if(!this.showCityFilter())return new Set(e.map(c=>c.mapvxId));let n=this.selectedFilterId(),o=n===""?e:e.filter(c=>c.parentInstitutionId===n);return new Set(o.map(c=>c.mapvxId))});institutionCategoryFilters=Yn(this.loadedDataService.getInstitution().pipe(Qt(e=>{let n=e.properties;if(n){let o=n.filter(c=>"childPlaces"in c&&c.childPlaces!==void 0).map(c=>({placeData:"childPlaces"in c?c.childPlaces:[],name:c.title}));return o.splice(1,0,{name:"All",placeData:[]}),o}return []})),{initialValue:[]});categoryFiltersData=Xe(()=>{let e=this.listablePlaceIds();return this.institutionCategoryFilters().filter(n=>n.name==="All"||n.placeData.some(o=>e.has(o)))});selectedFilter=ii({source:this.categoryFiltersData,computation:(e,n)=>{let o=e.map(s=>s.name),c=n?.value;return c&&o.includes(c)?c:e[0]?.name??""}});filterId=Xe(()=>{let e=this.selectedFilterId();return e===""?this.initialInstitutionId():e});currentPageIndex=ii({source:this.selectedFilter,computation:(e,n)=>e!==n?.source?1:n?.value??1});lastCardSelected=new an;userAction=new an;lastSearchData=dt(w2);static \u0275fac=function(n){return new(n||t)};static \u0275prov=ct({token:t,factory:t.\u0275fac})};var mB={fas:{},fak:{}},fM=[];function gB(t){Object.keys(t).forEach(function(e){if(e!=="prefix"){var n=t[e],o=n.icon[2];o.forEach(function(c){typeof c=="string"&&(mB[n.prefix][c]=n);}),mB[n.prefix][n.iconName]=n,fM.push(n);}});}gB(MA);gB(hM);var E2=class t{destroy$=new an;apiKey=Wt("");institutionId=Wt("");initialData=Wt("");showCategoryFilters=Wt(true,{transform:e=>typeof e=="string"?e==="true":e});showCityFilter=Wt(true,{transform:e=>typeof e=="string"?e==="true":e});defaultToMap=Wt(false,{transform:e=>typeof e=="string"?e==="true":e});inheritFontFamily=Wt(false,{transform:e=>typeof e=="string"?e==="true":e});hideDeals=Wt(false,{transform:this.transformToBoolean});showDealLabels=Wt(false,{transform:this.transformToBoolean});cardWidth=Wt(void 0,{transform:e=>{if(!(e==null||e==="")){if(typeof e=="string"){let n=Number.parseInt(e,10);return Number.isNaN(n)||n<=0?void 0:n}return typeof e=="number"&&e<=0?void 0:e}}});rowsPerPage=Wt(2,{transform:e=>{if(typeof e=="string"){let n=Number.parseInt(e,10);return Number.isNaN(n)||n<=0?2:Math.min(Math.max(n,1),10)}return e<=0?2:Math.min(Math.max(e,1),10)}});cardSelected=Ni();userAction=Ni();router=se(eu);navigatorService=se(Wr);locationStrategy=se(Da);platformId=se(Ms);logger=se(Tt);sdkService=se(wo);loadedDataService=se(In);homeStateService=se(Xn);iconLibrary=se(Vv);isInitialized=false;isConnected=false;static instanceCount=0;static hasBeenConnected=false;static INSTITUTION_FETCH_RETRIES=3;static INSTITUTION_FETCH_RETRY_DELAY_MS=1e3;constructor(){this.loadIcons(),this.logger.sessionStart(),Ot(()=>{let e=this.apiKey();e&&e.trim()!==""&&!this.sdkService.isInitialized()&&(this.logger.log("\u{1F511} Initializing SDK with provided API key"),this.sdkService.initialize(e.trim()),this.logger.setApiKey(e.trim()),this.loadData());}),Ot(()=>{this.homeStateService.initialInstitutionId.set(this.institutionId());}),Ot(()=>{let e=this.showDealLabels();this.homeStateService.showDealLabels.set(e);}),Ot(()=>{this.homeStateService.hideDeals.set(this.hideDeals());}),Ot(()=>{this.homeStateService.cardWidth.set(this.cardWidth());}),Ot(()=>{this.homeStateService.rowsPerPage.set(this.rowsPerPage());}),Ot(()=>{let e=this.initialData();e&&e.trim()!==""&&this.processInitialData(e);}),Ot(()=>{this.homeStateService.showCategoryFilters.set(this.showCategoryFilters());}),Ot(()=>{this.homeStateService.showCityFilter.set(this.showCityFilter());}),Ot(()=>{let e=this.defaultToMap();this.logger.log("====> defaultToMap input",e),this.homeStateService.defaultToMap.set(e);}),Ot(()=>{let e=this.institutionId(),n=this.loadedDataService.institutionsLoaded();e&&e.trim()!==""&&n&&(this.loadedDataService.updateInstitution(e),this.logger.setInstitutionId(e));}),Ot(()=>{let e=this.loadedDataService.cityFilterOptions(),n=this.resolveCityOptionForInput(e);n&&this.homeStateService.selectedInstitution.set(n.institutionId);}),this.homeStateService.lastCardSelected.pipe(ni(this.destroy$)).subscribe(e=>{this.cardSelected.emit(e),this.logger.log("====> cardSelected",e);}),this.homeStateService.userAction.pipe(ni(this.destroy$)).subscribe(e=>{this.userAction.emit(e),this.logger.log("====> userAction",e);});}ngOnInit(){Aa(this.platformId)?this.handleInstanceTracking():this.logger.log("\u{1F5A5}\uFE0F Componente inicializado en servidor (SSR)");}loadIcons(){this.iconLibrary.addIcons(...fM);}loadData(){this.loadPlaces(),this.loadConfiguration(),this.loadInstitution();}async loadCityFilterOptions(e){this.loadedDataService.cityFilterOptions.set(e);let n=this.resolveCityOptionForInput(e);n&&this.homeStateService.selectedInstitution.set(n.institutionId);let o=e.filter(c=>c.type==="parent-place");Promise.all(o.map(async c=>{let s=async()=>{let w=await this.sdkService.getPlaceDetail(c.parentPlaceId);this.loadedDataService.updatePotentialParentPlaces(w);},m=async()=>{let w=await this.sdkService.getSubPlaces(c.parentPlaceId);this.loadedDataService.updateAvailablePlaces(w);};await Promise.all([s(),m()]);}));}resolveCityOptionForInput(e){let n=this.institutionId().trim();if(n!==""){let o=e.find(c=>c.institutionId===n)??e.find(c=>c.filterId===n);if(o)return o;this.logger.logWarning(`Institution id "${n}" matches no city filter option, falling back to the first one`);}return e[0]}transformToBoolean(e){return typeof e=="string"?e==="true":e}processInitialData(e){try{let n=JSON.parse(e);if(n.availablePlaces){let c=n.availablePlaces.map(s=>new xr(s)).filter(s=>s.generalCategory!=="transport"&&!s.hidePlace);this.loadedDataService.updateAvailablePlaces(c),this.logger.log(`\u2705 Successfully loaded ${c.length} places from initial data`);}if(n.institutions){let o=n.institutions.map(s=>{try{return new yp(s)}catch(m){this.logger.logWarning("\u274C Error parsing institution",m);return}}).filter(s=>s!==void 0);this.loadedDataService.setInstitutions(o);let c=o.find(s=>s.mapvxId===this.institutionId());c?this.loadedDataService.setInstitution(c):this.logger.log(`\u274C Institution not found for id ${this.institutionId()}`);}}catch(n){this.logger.log("\u274C Error processing initial data",n),this.logger.log(`\u274C Data: ${e}`);}}async loadPlaces(){let e=Aa(this.platformId)?"Browser":"Server";try{this.logger.log(`\u{1F4CD} Loading initial places data on ${e}...`);let n=await this.sdkService.getAvailablePlaces(),o=n.filter(c=>c.generalCategory!=="transport"&&!c.hidePlace);this.loadedDataService.updateAvailablePlaces(o),this.logger.log(`\u2705 Successfully loaded ${n.length} places on ${e}`);}catch(n){this.logger.log(`\u274C Error loading initial places data on ${e}:`,n);}}async loadConfiguration(){try{let e=await this.sdkService.getConfiguration();this.loadedDataService.setConfiguration(e);let n=e.cityOptions||[];this.loadCityFilterOptions(n),this.logger.log("\u2705 Successfully loaded configuration",e);}catch(e){this.logger.log("\u274C Error loading initial configuration",e);}}async loadInstitution(){try{let e=await this.fetchInstitutionsWithRetry(),n=e.find(o=>o.mapvxId===this.institutionId());this.loadedDataService.setInstitutions(e),n?(this.loadedDataService.setInstitution(n),this.logger.log("\u2705 Successfully loaded institution",n)):this.logger.log("\u274C Institution not found");}catch(e){this.logger.log(`\u274C Error loading institution data after ${t.INSTITUTION_FETCH_RETRIES} retries`,e);}}async fetchInstitutionsWithRetry(){let e;for(let n=0;n<=t.INSTITUTION_FETCH_RETRIES;n++)try{return await this.sdkService.getInstitutions()}catch(o){e=o,n<t.INSTITUTION_FETCH_RETRIES&&(this.logger.logWarning(`\u26A0\uFE0F Error loading institutions, retrying (${n+1}/${t.INSTITUTION_FETCH_RETRIES})`,o),await this.delay(t.INSTITUTION_FETCH_RETRY_DELAY_MS*(n+1)));}throw e}delay(e){return new Promise(n=>setTimeout(n,e))}handleInstanceTracking(){t.instanceCount++;let e=this.checkForExistingRouterContent(),n=this.router.url;t.hasBeenConnected||e||n!=="/"&&t.instanceCount===1?(this.logger.log("\u{1F504} Detectada reconexi\xF3n del web component"),this.logger.log(` - Instancia #${t.instanceCount}`),this.logger.log(` - URL del router: ${n}`),this.logger.log(` - Contenido en router outlet: ${e}`),this.handleReconnection()):this.logger.log(`\u{1F680} Primera conexi\xF3n del web component (instancia #${t.instanceCount})`),t.hasBeenConnected=true;}checkForExistingRouterContent(){try{let e=document.querySelector("router-outlet");return e?e.children.length>0:!1}catch{return false}}ngAfterViewInit(){this.isConnected=true,this.scheduleRouterInitialization();}ngOnDestroy(){this.logger.sessionEnd(),this.isConnected=false,this.destroy$.next(),this.destroy$.complete();}scheduleRouterInitialization(){Aa(this.platformId)?requestAnimationFrame(()=>{this.initializeRouter();}):setTimeout(()=>{this.initializeRouter();},0);}initializeRouter(){if(this.isInitialized&&this.isConnected)return;this.locationStrategy.setInitialPath("/");let e=this.router.url,n=this.router.routerState.root.firstChild;e==="/"&&!n?this.router.navigateByUrl("/").then(()=>{this.isInitialized=true;}).catch(o=>{console.error("Error en navegaci\xF3n inicial:",o),this.isInitialized=true;}):this.isInitialized=true;}handleReconnection(){this.logger.log("\u{1F504} Procesando reconexi\xF3n del web component");let e=Aa(this.platformId)?10:50;setTimeout(()=>{this.checkAndFixRouterSync();},e);}checkAndFixRouterSync(){if(!Aa(this.platformId)){this.logger.log("\u2139\uFE0F Saltando verificaci\xF3n de sincronizaci\xF3n en servidor");return}let e=this.locationStrategy.getCurrentPath()||"/",n=this.router.url,o=this.router.routerState.root.firstChild,c=this.checkForExistingRouterContent();this.logger.log("\u{1F50D} Verificando sincronizaci\xF3n del router:"),this.logger.log(` - Path interno: "${e}"`),this.logger.log(` - Router URL: "${n}"`),this.logger.log(` - Tiene ruta activa: ${!!o}`),this.logger.log(` - Contenido en router outlet: ${c}`),e==="/"&&n!=="/"||e==="/"&&!o&&c||e==="/"&&n==="/"&&c&&!o?(this.logger.log("\u26A0\uFE0F Desincronizaci\xF3n detectada - aplicando correcci\xF3n"),this.performGentleReset()):this.logger.log("\u2705 Router sincronizado correctamente");}performGentleReset(){this.logger.log("\u{1F504} Realizando reset suave del router"),this.router.navigateByUrl("/",{replaceUrl:true}).then(()=>{this.logger.log("\u2705 Navegaci\xF3n correctiva completada");}).catch(e=>{console.error("\u274C Error en navegaci\xF3n correctiva:",e);});}static \u0275fac=function(n){return new(n||t)};static \u0275cmp=ht({type:t,selectors:[["app-root"]],inputs:{apiKey:[1,"apiKey"],institutionId:[1,"institutionId"],initialData:[1,"initialData"],showCategoryFilters:[1,"showCategoryFilters"],showCityFilter:[1,"showCityFilter"],defaultToMap:[1,"defaultToMap"],inheritFontFamily:[1,"inheritFontFamily"],hideDeals:[1,"hideDeals"],showDealLabels:[1,"showDealLabels"],cardWidth:[1,"cardWidth"],rowsPerPage:[1,"rowsPerPage"]},outputs:{cardSelected:"cardSelected",userAction:"userAction"},features:[h1([Wr,Xn,si,Ut,So,vu])],decls:4,vars:2,consts:[[1,"named-container"],[1,"app-container"],[1,"app-content"]],template:function(n,o){n&1&&(be(0,"div",0)(1,"div",1)(2,"div",2),Ve(3,"router-outlet"),Ee()()()),n&2&&(we(),An("inherit-font-family",o.inheritFontFamily()));},dependencies:[b2,Qd],styles:["*[_ngcontent-%COMP%]{margin:0;padding:0}.named-container[_ngcontent-%COMP%]{container-name:mapvx-container;container-type:inline-size;width:100%}.app-container[_ngcontent-%COMP%]{display:flex;padding:0;flex-direction:column;justify-content:center;align-items:flex-start;gap:22px;background:var(--definitions-colors-background-50);font-family:Open Sans,sans-serif}.app-container.inherit-font-family[_ngcontent-%COMP%]{font-family:inherit}.app-header[_ngcontent-%COMP%]{display:flex;flex-direction:column;justify-content:center;align-items:flex-start;gap:19px}.app-header[_ngcontent-%COMP%] h1[_ngcontent-%COMP%]{color:var(--definitions-colors-text-900);font:var(--definitions-textFonts-desktop-h1);font-family:inherit}.app-header[_ngcontent-%COMP%] p[_ngcontent-%COMP%]{color:var(--definitions-colors-text-800);font:var(--definitions-textFonts-desktop-sub-1);font-family:inherit}.main-navigation[_ngcontent-%COMP%]{display:flex;gap:.5rem;justify-content:center;flex-wrap:wrap}.nav-button[_ngcontent-%COMP%]{background:#fff3;border:1px solid rgba(255,255,255,.3);color:#fff;padding:.5rem 1rem;border-radius:4px;cursor:pointer;font-size:.9rem;transition:all .2s ease}.nav-button[_ngcontent-%COMP%]:hover{background:#ffffff4d;transform:translateY(-1px)}.nav-button[_ngcontent-%COMP%]:active{transform:translateY(0)}.route-debug[_ngcontent-%COMP%]{margin-top:.5rem;text-align:center}.route-debug[_ngcontent-%COMP%] small[_ngcontent-%COMP%]{color:#fffc;font-size:.8rem;font-family:Courier New,monospace;background:#0000001a;padding:.25rem .5rem;border-radius:4px}.app-content[_ngcontent-%COMP%]{width:100%}"],changeDetection:1})};var Ooe=["categoryFilters"];function Noe(t,e){if(t&1){let n=yn();be(0,"button",14),at("click",function(){cn(n);let c=Ye();return un(c.onClearInput())}),Ve(1,"fa-icon",6),Ee();}if(t&2){let n=Ye();we(),We("icon",n.faXmark);}}function Loe(t,e){if(t&1&&Ve(0,"fa-icon",6),t&2){let n=Ye(2);We("icon",n.faCaretUp);}}function Foe(t,e){if(t&1&&Ve(0,"fa-icon",6),t&2){let n=Ye(2);We("icon",n.faCaretDown);}}function zoe(t,e){if(t&1){let n=yn();be(0,"button",21),at("click",function(){let c=cn(n).$implicit,s=Ye(3);return un(s.onCitySelect(c))}),it(1),Ee();}if(t&2){let n=e.$implicit;we(),br(" ",n.name," ");}}function Boe(t,e){if(t&1&&(be(0,"div",19),vr(1,zoe,2,1,"button",20,qd),Ee()),t&2){let n=Ye(2);we(),_r(n.citiesOptions());}}function Uoe(t,e){if(t&1){let n=yn();be(0,"div",9)(1,"button",15),at("click",function(){cn(n);let c=Ye();return un(c.onCityFilterClick())}),Ve(2,"fa-icon",6),Ee(),be(3,"button",16),at("click",function(){cn(n);let c=Ye();return un(c.onCityFilterClick())}),be(4,"span",17),it(5),Ee(),be(6,"div",18),Et(7,Loe,1,1,"fa-icon",6)(8,Foe,1,1,"fa-icon",6),Ee()(),Et(9,Boe,3,0,"div",19),Ee();}if(t&2){let n=Ye();we(),An("active",n.isCityDropdownOpen()),we(),We("icon",n.faFilter),we(3),ar(n.selectedCity()?.name),we(2),It(n.isCityDropdownOpen()?7:8),we(2),It(n.isCityDropdownOpen()?9:-1);}}var I2=class t{logger=se(Tt);stateService=se(Xn);mapService=se(tr);navigatorService=se(Wr);loadedDataService=se(In);iconLibrary=se(Ut);categoryFilters;activeView=Xe(()=>this.stateService.activeView());showCityFilter=Xe(()=>this.stateService.showCityFilter()&&this.citiesOptions().length>1);inputValue=Xe(()=>this.stateService.inputValue());citiesOptions=Xe(()=>this.stateService.availableCityGroups());selectedCity=Xe(()=>this.stateService.selectedCityGroup());isCityDropdownOpen=dt(false);mapReady=Yn(this.mapService.mapReady,{initialValue:false});faGrid2=this.iconLibrary.getIconDefinition("fas","grid-2");faMagnifyingGlass=this.iconLibrary.getIconDefinition("fas","magnifying-glass");faMapLocationDot=this.iconLibrary.getIconDefinition("fas","map-location-dot");faXmark=this.iconLibrary.getIconDefinition("fas","xmark");faCaretDown=this.iconLibrary.getIconDefinition("fas","caret-down");faCaretUp=this.iconLibrary.getIconDefinition("fas","caret-up");faFilter=this.iconLibrary.getIconDefinition("fas","filter");constructor(){Ot(()=>{if(this.stateService.activeView()==="map"&&this.mapReady()){let e=this.stateService.lastListedPlaces(),n=e.map(c=>c.inFloors?.[0]),o=this.getMostFrequentValue(n);o!==void 0&&this.mapService.updateFloor(o),setTimeout(()=>{this.mapService.fitCoordinates(e.map(c=>c.position),{padding:{top:100,left:100,right:100,bottom:100}});},100);}}),Ot(()=>{let e=this.stateService.selectedCity();e&&this.syncMapParentPlace(e);});}syncMapParentPlace(e){if(e.type==="institution"){this.mapService.removeParentPlace(),this.loadedDataService.parentPlace.set(void 0),this.logger.setParentPlaceId("");return}let n=this.loadedDataService.potentialParentPlaces().find(o=>o.mapvxId===e.parentPlaceId);n?(this.mapService.setParentPlace(n),this.loadedDataService.parentPlace.set(n),this.logger.setParentPlaceId(n.mapvxId)):(this.mapService.removeParentPlace(),this.logger.setParentPlaceId(""));}ngOnInit(){this.stateService.inputValue()!==""&&this.navigatorService.navigateToSearchView();}ngAfterViewInit(){this.readUrlParams();}readUrlParams(){let e=new URLSearchParams(location.search),n=e.get("search");if(n){this.stateService.inputValue.set(n),setTimeout(()=>{this.logger.logEvent("search_text_from_url",{term:n}),this.navigatorService.navigateToSearchView();},100);return}let o=e.get("tenant");if(o){this.logger.logEvent("profile_from_url",{id:o}),this.navigatorService.navigateToProfile(o);return}let c=e.get("destination");c&&(this.logger.logEvent("route_from_url",{id:c}),this.navigatorService.navigateToRoute(c));}onGridClick(){this.stateService.activeView.set("grid"),this.logger.logEvent("grid_view_selected");}onMapClick(){this.stateService.activeView.set("map"),this.logger.logEvent("map_view_selected");}onInputChange(e){let n=e.target;this.stateService.inputValue.set(n.value),this.navigatorService.navigateToSearchView();}onClearInput(){this.stateService.inputValue.set(""),this.stateService.userAction.next({type:"return-to-home",data:{filter:this.stateService.selectedFilter()}}),this.navigatorService.navigateToHome();}onCityFilterClick(){this.isCityDropdownOpen.update(e=>!e);}onCitySelect(e){let n=e.option;this.stateService.selectedInstitution.set(n.institutionId),this.stateService.selectedCity.set(n),this.isCityDropdownOpen.set(false),this.loadedDataService.updateInstitution(n.institutionId),this.logger.setInstitutionId(n.institutionId);}getMostFrequentValue(e){if(e.length===0)return;let n=new Map,o=0,c;for(let s of e){if(s==null)continue;let m=(n.get(s)||0)+1;n.set(s,m),m>o&&(o=m,c=s);}return c}static \u0275fac=function(n){return new(n||t)};static \u0275cmp=ht({type:t,selectors:[["app-home-screen"]],viewQuery:function(n,o){if(n&1&&bf(Ooe,5),n&2){let c;Ey(c=Iy())&&(o.categoryFilters=c.first);}},decls:23,vars:12,consts:[[1,"home-screen"],[1,"sub-navigation"],[1,"sub-nav-top"],[1,"search-section"],[1,"search-bar"],[1,"search-icon"],[3,"icon"],["name","search input","type","text","placeholder","Search...",1,"search-input",3,"input","value"],[1,"search-clear"],[1,"city-filter-container"],[1,"view-toggle"],[1,"view-btn",3,"click"],[1,"view-icon"],[1,"sub-content"],[1,"search-clear",3,"click"],[1,"mobile-city-filter",3,"click"],[1,"desktop-city-filter",3,"click"],[1,"city-text"],[1,"dropdown-icon"],[1,"city-dropdown"],[1,"city-option"],[1,"city-option",3,"click"]],template:function(n,o){n&1&&(be(0,"div",0)(1,"div",1)(2,"div",2)(3,"div",3)(4,"div",4)(5,"div",5),Ve(6,"fa-icon",6),Ee(),be(7,"input",7),at("input",function(s){return o.onInputChange(s)}),Ee(),Et(8,Noe,2,1,"button",8),Ee(),Et(9,Uoe,10,6,"div",9),Ee(),be(10,"div",10)(11,"button",11),at("click",function(){return o.onGridClick()}),be(12,"div",12),Ve(13,"fa-icon",6),Ee(),be(14,"span"),it(15,"Grid View"),Ee()(),be(16,"button",11),at("click",function(){return o.onMapClick()}),be(17,"div",12),Ve(18,"fa-icon",6),Ee(),be(19,"span"),it(20,"Map View"),Ee()()()()(),be(21,"div",13),Ve(22,"router-outlet"),Ee()()),n&2&&(we(4),An("active",o.inputValue()!==""),we(2),We("icon",o.faMagnifyingGlass),we(),We("value",o.inputValue()),we(),It(o.inputValue()!==""?8:-1),we(),It(o.showCityFilter()?9:-1),we(2),An("active",o.activeView()==="grid"),we(2),We("icon",o.faGrid2),we(3),An("active",o.activeView()==="map"),we(2),We("icon",o.faMapLocationDot));},dependencies:[tn,Qd],styles:["*[_ngcontent-%COMP%]{margin:0;padding:0;border:0}.home-screen[_ngcontent-%COMP%]{display:flex;flex-direction:column;gap:36px}.sub-navigation[_ngcontent-%COMP%]{display:flex;flex-direction:column;gap:2.25rem;margin-bottom:1.5rem}.sub-nav-top[_ngcontent-%COMP%]{display:flex;justify-content:space-between;align-items:center;gap:40px}@container mapvx-container (width <= 640px){.sub-nav-top[_ngcontent-%COMP%]{gap:13px}}.search-section[_ngcontent-%COMP%]{display:flex;gap:24px;align-items:center}@container mapvx-container (width <= 640px){.search-section[_ngcontent-%COMP%]{gap:11px}}.search-bar[_ngcontent-%COMP%]{background:var(--definitions-colors-background-white);border-bottom:1px solid var(--definitions-colors-primary-black);display:flex;width:342px;padding:12px 20px;align-items:center;gap:10px}@container mapvx-container (width <= 960px){.search-bar[_ngcontent-%COMP%]{width:150px}}@container mapvx-container (width <= 640px){.search-bar[_ngcontent-%COMP%]{width:110px}}.search-bar.active[_ngcontent-%COMP%]{border-bottom:1px solid var(--definitions-colors-secondary-orange)}.search-icon[_ngcontent-%COMP%]{color:var(--definitions-colors-text-800);display:flex;align-items:center;font-size:20px}.search-bar.active[_ngcontent-%COMP%] fa-icon[_ngcontent-%COMP%]{color:var(--definitions-colors-secondary-orange)}.search-clear[_ngcontent-%COMP%]{color:var(--definitions-colors-secondary-orange);display:flex;align-items:center;font-size:20px;border:none;background:none}.search-clear[_ngcontent-%COMP%]:hover{cursor:pointer}.search-input[_ngcontent-%COMP%]{border:none;outline:none;background:transparent;font:var(--definitions-textFonts-desktop-button-4);font-family:inherit;color:var(--definitions-colors-text-800);width:100%}.search-input[_ngcontent-%COMP%]::placeholder{color:var(--definitions-colors-text-800)}.city-filter-container[_ngcontent-%COMP%]{position:relative}.desktop-city-filter[_ngcontent-%COMP%]{display:flex;align-items:center;gap:.5rem;padding:.875rem 1rem;height:45px;box-sizing:border-box;cursor:pointer;border:none;background:none}@container mapvx-container (width <= 640px){.desktop-city-filter[_ngcontent-%COMP%]{display:none}}.city-text[_ngcontent-%COMP%]{font:var(--definitions-textFonts-desktop-button-5);font-family:inherit;color:var(--definitions-colors-text-900);white-space:nowrap}.dropdown-icon[_ngcontent-%COMP%]{color:var(--definitions-colors-text-900);display:flex;align-items:center;font-size:12px}.mobile-city-filter[_ngcontent-%COMP%]{display:none}@container mapvx-container (width <= 640px){.mobile-city-filter[_ngcontent-%COMP%]{display:flex;height:45px;width:52px;padding:0;justify-content:center;align-items:center;gap:10px;cursor:pointer;border:none;background:var(--definitions-colors-background-white);color:var(--definitions-colors-primary-black);font-size:20px}.mobile-city-filter.active[_ngcontent-%COMP%]{background:var(--definitions-colors-primary-black);color:var(--definitions-colors-black_white-50)}}.city-dropdown[_ngcontent-%COMP%]{position:absolute;top:100%;left:0;right:0;background:var(--definitions-colors-background-white);border:1px solid var(--definitions-colors-primary-300);z-index:1;padding:8px 0;min-width:111px}.city-option[_ngcontent-%COMP%]{display:block;width:100%;padding:12px 16px;border:none;background:none;text-align:center;cursor:pointer;font:var(--definitions-textFonts-desktop-input-2);font-family:inherit;color:var(--definitions-colors-text-900);transition:background-color .2s ease}.city-option[_ngcontent-%COMP%]:not(:last-child){border-bottom:1px solid var(--definitions-colors-primary-100)}.city-option[_ngcontent-%COMP%]:hover{background:var(--definitions-colors-background-50)}.view-toggle[_ngcontent-%COMP%]{display:flex;align-items:center}.view-btn[_ngcontent-%COMP%]{display:flex;align-items:center;gap:.625rem;padding:10px 28px;border:none;background:var(--definitions-colors-background-50);cursor:pointer;font:var(--definitions-textFonts-desktop-button-2);font-family:inherit;color:var(--definitions-colors-text-900);white-space:nowrap;transition:all .2s ease;position:relative;border-bottom:1px solid var(--definitions-colors-text-900)}.view-btn.active[_ngcontent-%COMP%]{background:var(--definitions-colors-text-900);color:var(--definitions-colors-text-50)}.view-btn[_ngcontent-%COMP%] .view-icon[_ngcontent-%COMP%]{display:flex;align-items:center;color:currentcolor}@container mapvx-container (width <= 770px){.view-btn[_ngcontent-%COMP%]{padding:10px 0;width:52px;justify-content:center}.view-btn[_ngcontent-%COMP%] span[_ngcontent-%COMP%]{display:none}}@container mapvx-container (width <= 640px){.view-btn[_ngcontent-%COMP%]{padding:10px 0;width:52px;justify-content:center}.view-btn[_ngcontent-%COMP%] span[_ngcontent-%COMP%]{display:none}}"]})};function T2(t){return t.tags?.includes("deals")||t.tags?.includes("events")}function yB(t){let e="#EE5845";if(!t?.trim())return e;let o=/style\s*=\s*["']([^"']*)["']/i.exec(t);if(!o?.[1])return e;let c=o[1],m=/(?:^|;)\s*color\s*:\s*([^;]+)/i.exec(c);return Voe(m?.[1])??e}function Voe(t){if(!t)return null;let e=t.trim().replace(/\s*!important\s*$/i,""),n=e.toLowerCase(),o=/^#[0-9a-f]{3,8}$/i.test(e),c=/^rgba?\(\s*\d{1,3}\s*,\s*\d{1,3}\s*,\s*\d{1,3}(?:\s*,\s*(0|1|0?\.\d+))?\s*\)$/i.test(e),s=/^hsla?\(\s*\d{1,3}(?:deg)?\s*,\s*\d{1,3}%\s*,\s*\d{1,3}%(?:\s*,\s*(0|1|0?\.\d+))?\s*\)$/i.test(e),m=/^[a-z]+$/i.test(e);return o||c||s||m?o?e.toUpperCase():n:null}var joe=()=>({rotate:42});function $oe(t,e){if(t&1&&Ve(0,"fa-icon",3),t&2){let n=Ye();We("icon",n.faCircleNotch)("transform",zl(2,joe));}}function Hoe(t,e){t&1&&(be(0,"div",4),it(1,"Deals + Events"),Ee());}var C2=class t{logger=se(Tt);iconLibrary=se(Ut);navigatorService=se(Wr);homeStateService=se(Xn);fromSearch=Wt(false);place=Wt.required();hasDealsOrEvents=Xe(()=>this.place().banners.some(T2));hideDeals=Xe(()=>this.homeStateService.hideDeals());showDealLabels=Xe(()=>this.homeStateService.showDealLabels());imageSrc=Xe(()=>this.place().images[0]||this.place().logo||T1);isImageLoading=dt(true);faCircleNotch=this.iconLibrary.getIconDefinition("fas","circle-notch");constructor(){Ot(()=>{this.imageSrc()&&this.startImageLoading();});}navigateToProfile(){let e=this.place(),n=e.mapvxId;this.homeStateService.lastCardSelected.next(n),this.navigatorService.navigateToProfile(n),this.fromSearch()?this.logger.logEvent("search_result_card_selected",{id:n,name:e.title,clientId:e.clientId||""}):this.logger.logEvent("card_selected",{id:n,name:e.title,clientId:e.clientId||""});}startImageLoading(){this.isImageLoading.set(true);}endImageLoading(){this.isImageLoading.set(false);}static \u0275fac=function(n){return new(n||t)};static \u0275cmp=ht({type:t,selectors:[["app-location-card"]],inputs:{fromSearch:[1,"fromSearch"],place:[1,"place"]},decls:12,vars:8,consts:[[1,"location-card",3,"click"],[1,"card-image"],[3,"load","error","src","alt"],[1,"loading-icon",3,"icon","transform"],[1,"card-deals-or-events"],[1,"card-content"],[1,"location-name"],[1,"location-address"],[1,"location-category"]],template:function(n,o){n&1&&(be(0,"button",0),at("click",function(){return o.navigateToProfile()}),be(1,"div",1)(2,"img",2),at("load",function(){return o.endImageLoading()})("error",function(){return o.endImageLoading()}),Ee(),Et(3,$oe,1,3,"fa-icon",3)(4,Hoe,2,0,"div",4),Ee(),be(5,"div",5)(6,"h3",6),it(7),Ee(),be(8,"p",7),it(9),Ee(),be(10,"span",8),it(11),Ee()()()),n&2&&(we(),An("loading",o.isImageLoading()),we(),We("src",o.imageSrc(),jd)("alt",o.place().title),we(),It(o.isImageLoading()?3:o.hasDealsOrEvents()&&!o.hideDeals()&&o.showDealLabels()?4:-1),we(4),ar(o.place().title),we(2),ar(o.place().address),we(2),ar(o.place().localizedCategory));},dependencies:[tn],styles:["*[_ngcontent-%COMP%]{margin:0;padding:0}.location-card[_ngcontent-%COMP%]{display:flex;padding:5px 5px 10px;flex-direction:column;align-items:flex-start;gap:12px;background:var(--definitions-colors-background-50);border:none;width:100%}.location-card[_ngcontent-%COMP%]:hover{cursor:pointer}.card-image[_ngcontent-%COMP%]{width:100%;overflow:hidden;position:relative;aspect-ratio:1/1}@container mapvx-container (width <= 640px){.card-image[_ngcontent-%COMP%]{min-width:160px;min-height:160px}}.card-image[_ngcontent-%COMP%] img[_ngcontent-%COMP%]{width:100%;height:100%;object-fit:cover;display:block;transition:transform .4s ease}.card-image[_ngcontent-%COMP%] img[_ngcontent-%COMP%]:hover{transform:scale(1.2)}.card-image[_ngcontent-%COMP%] .card-deals-or-events[_ngcontent-%COMP%]{position:absolute;bottom:0;left:0;width:100%;background-color:var(--definitions-colors-secondary-orange);color:var(--definitions-colors-text-white);display:flex;padding:5px;justify-content:center;align-items:center;gap:8.462px;flex-shrink:0;font:var(--definitions-textFonts-desktop-body-4);font-family:inherit}.card-image.loading[_ngcontent-%COMP%]{background-color:var(--definitions-colors-primary-300);display:flex;justify-content:center;align-items:center}.card-image.loading[_ngcontent-%COMP%] .loading-icon[_ngcontent-%COMP%]{color:var(--definitions-colors-primary-600);font-size:100px}.card-image.loading[_ngcontent-%COMP%] img[_ngcontent-%COMP%]{display:none}.card-content[_ngcontent-%COMP%]{display:flex;width:100%;flex-direction:column;align-items:flex-start;gap:8px}@container mapvx-container (width <= 640px){.card-content[_ngcontent-%COMP%]{min-width:160px}}.location-name[_ngcontent-%COMP%]{color:var(--definitions-colors-text-black);font:var(--definitions-textFonts-desktop-body-3);font-family:inherit;display:-webkit-box;-webkit-line-clamp:1;-webkit-box-orient:vertical;overflow:hidden;text-overflow:ellipsis;text-align:start}.location-address[_ngcontent-%COMP%]{color:var(--definitions-colors-text-grey);font:var(--definitions-textFonts-desktop-body-5);font-family:inherit;display:-webkit-box;-webkit-line-clamp:1;-webkit-box-orient:vertical;overflow:hidden;text-overflow:ellipsis;text-align:start}.location-category[_ngcontent-%COMP%]{color:var(--definitions-colors-text-light-grey);font:var(--definitions-textFonts-desktop-body-5);font-family:inherit;display:none}"]})};var Goe=["cardContainer"],qoe=["*"];function Woe(t,e){if(t&1&&Ve(0,"app-location-card",3),t&2){let n=e.$implicit,o=Ye();We("place",n)("fromSearch",o.fromSearch());}}function Zoe(t,e){t&1&&Ll(0);}function Yoe(t,e){if(t&1){let n=yn();be(0,"button",7),at("click",function(){cn(n);let c=Ye(3);return un(c.previousPage())}),Ve(1,"fa-icon",8),Ee();}if(t&2){let n=Ye(3);we(),We("icon",n.faChevronLeft);}}function Xoe(t,e){if(t&1&&Et(0,Yoe,2,1,"button",6),t&2){let n=Ye().$implicit,o=Ye();It(n<o.currentPageIndex()?0:-1);}}function Koe(t,e){t&1&&(be(0,"button",9),it(1,"..."),Ee());}function Qoe(t,e){if(t&1){let n=yn();be(0,"button",11),at("click",function(){cn(n);let c=Ye(3);return un(c.nextPage())}),Ve(1,"fa-icon",8),Ee();}if(t&2){let n=Ye(3);we(),We("icon",n.faChevronRight);}}function Joe(t,e){if(t&1&&(Et(0,Koe,2,0,"button",9),Et(1,Qoe,2,1,"button",10)),t&2){let n=Ye().$implicit,o=Ye();It(n<o.totalPages()?0:-1),we(),It(n>o.currentPageIndex()?1:-1);}}function ese(t,e){if(t&1){let n=yn();Et(0,Xoe,1,1),be(1,"button",5),at("click",function(){let c=cn(n).$implicit,s=Ye();return un(s.goToPage(c))}),it(2),Ee(),Et(3,Joe,2,2);}if(t&2){let n=e.$implicit,o=e.$index,c=e.$count,s=Ye();It(o===0?0:-1),we(),An("active",s.currentPageIndex()===n),we(),br(" ",n," "),we(),It(o===c-1?3:-1);}}var sm=class t{logger=se(Tt);stateService=se(Xn);iconLibrary=se(Ut);cardContainer=y1("cardContainer");faChevronLeft=this.iconLibrary.getIconDefinition("fas","chevron-left");faChevronRight=this.iconLibrary.getIconDefinition("fas","chevron-right");fromSearch=Wt(false);places=Wt.required();itemsPerPage=Xe(()=>this.calculateItemsPerPage(this.showMap(),this.cardContainer(),this.stateService.cardWidth(),this.stateService.rowsPerPage()));totalPages=Xe(()=>Math.ceil(this.places().length/this.itemsPerPage()));currentPageIndex=Xe(()=>{let e=this.totalPages(),n=this.stateService.currentPageIndex();return e>0&&n>e?e:n});cardContainerStyles=Xe(()=>{let e=this.stateService.cardWidth();return e?{"--card-width":`${e}`}:{}});pages=Xe(()=>{let e=this.totalPages();switch(e){case 0:return [];case 1:return [1];case 2:return [1,2];default:{let o=this.currentPageIndex()-1;return o<1&&(o=1),o+2>e&&(o=e-2),Array.from({length:3},(c,s)=>s+o)}}});currentPagePlaces=Xe(()=>{let e=this.places(),n=this.itemsPerPage(),o=this.currentPageIndex();return e.slice((o-1)*n,o*n)});showMap=Xe(()=>this.stateService.activeView()==="map");constructor(){pL(()=>{let e=this.currentPageIndex();e!==this.stateService.currentPageIndex()&&this.stateService.currentPageIndex.set(e);});}calculateItemsPerPage(e,n,o,c=2){try{if(n){let s=globalThis.getComputedStyle(n.nativeElement),m=o??Number.parseInt(s.getPropertyValue("--card-width")||"0"),w=Number.parseInt(s.getPropertyValue("--card-gap")||"0"),I=m+w;if(I<=0)return c*5;let P=n.nativeElement.clientWidth,B=Math.floor((P+w)/I)*c;return Number.isFinite(B)&&B>0?B:c*5}return c*5}catch(s){return this.logger.logError("Error calculating items per page",s),c*5}}nextPage(){let e=this.currentPageIndex(),n=this.totalPages();e<n&&this.stateService.currentPageIndex.set(e+1);}previousPage(){let e=this.currentPageIndex();e>1&&this.stateService.currentPageIndex.set(e-1);}goToPage(e){this.stateService.currentPageIndex.set(e);}static \u0275fac=function(n){return new(n||t)};static \u0275cmp=ht({type:t,selectors:[["app-paginator"]],viewQuery:function(n,o){n&1&&xf(o.cardContainer,Goe,5),n&2&&Ty();},inputs:{fromSearch:[1,"fromSearch"],places:[1,"places"]},ngContentSelectors:qoe,decls:9,vars:6,consts:[["cardContainer",""],[1,"paginator"],[1,"paginator-places",3,"ngStyle"],[3,"place","fromSearch"],[1,"paginator-buttons"],[1,"paginator-button",3,"click"],[1,"previous-button"],[1,"previous-button",3,"click"],[3,"icon"],[1,"paginator-button","ellipsis"],[1,"next-button"],[1,"next-button",3,"click"]],template:function(n,o){n&1&&(Nl(),be(0,"div",1)(1,"div",2,0),vr(3,Woe,1,2,"app-location-card",3,vo,false,Zoe,1,0),Ee(),be(6,"div",4),vr(7,ese,4,5,null,null,qd),Ee()()),n&2&&(An("with-map",o.showMap()),we(),An("with-map",o.showMap()),We("ngStyle",o.cardContainerStyles()),we(2),_r(o.currentPagePlaces()),we(4),_r(o.pages()));},dependencies:[My,JT,C2,tn],styles:['.paginator[_ngcontent-%COMP%]{display:flex;flex-direction:column;align-items:center;justify-content:space-between;gap:36px}.paginator.with-map[_ngcontent-%COMP%]{min-height:730px}@container mapvx-container (width <= 1024px){.paginator.with-map[_ngcontent-%COMP%]{min-height:unset}}.paginator-places[_ngcontent-%COMP%]{--card-width: 237;--card-gap: 13;display:grid;grid-template-columns:repeat(auto-fill,minmax(calc(var(--card-width) * 1px),1fr));align-items:flex-start;place-content:flex-start space-around;gap:24px 13px;align-self:stretch}@container mapvx-container (width <= 640px){.paginator-places[_ngcontent-%COMP%]{--card-width: 170}}.paginator-places.with-map[_ngcontent-%COMP%]{--card-gap: 8;gap:16px 8px;flex-shrink:0}@container mapvx-container (width <= 640px){.paginator-places.with-map[_ngcontent-%COMP%]{display:flex;overflow-x:auto}}.paginator-buttons[_ngcontent-%COMP%]{display:flex;justify-content:center;align-items:center;gap:8px;flex-wrap:wrap}.paginator-button[_ngcontent-%COMP%]{color:var(--definitions-colors-text-900);text-align:center;font:var(--definitions-textFonts-desktop-button-1);font-family:inherit;font-feature-settings:"liga" off,"clig" off;letter-spacing:-1px;border:none;background:none}.paginator-button[_ngcontent-%COMP%]:hover{cursor:pointer}.paginator-button.active[_ngcontent-%COMP%]{color:var(--definitions-colors-secondary-orange)}.paginator-button.ellipsis[_ngcontent-%COMP%]:hover{cursor:default}.previous-button[_ngcontent-%COMP%], .next-button[_ngcontent-%COMP%]{color:var(--definitions-colors-text-900);background:none;border:none;font-size:21px}.previous-button[_ngcontent-%COMP%]:hover, .next-button[_ngcontent-%COMP%]:hover{cursor:pointer}']})};var D2=class t{onDestroy=new an;iconLibrary=se(Ut);mapService=se(tr);logger=se(Tt);loadedDataService=se(In);faCenter=this.iconLibrary.getIconDefinition("fak","center");ngOnDestroy(){this.onDestroy.next(),this.onDestroy.complete();}onClick(){this.logger.logEvent("map_center_button_clicked");let e=this.mapService.rotation.getValue();this.loadedDataService.getConfiguration().pipe(Xi(1),ni(this.onDestroy)).subscribe({next:n=>{this.mapService.updateCamera({center:n.initialCenter,zoom:n.initialZoom,pitch:n.initialPitch??0,bearing:e});},error:n=>{this.logger.logWarning("Error centering map",n);}});}static \u0275fac=function(n){return new(n||t)};static \u0275cmp=ht({type:t,selectors:[["app-center-map-button"]],decls:2,vars:1,consts:[[1,"button",3,"click"],[3,"icon"]],template:function(n,o){n&1&&(be(0,"button",0),at("click",function(){return o.onClick()}),Ve(1,"fa-icon",1),Ee()),n&2&&(we(),We("icon",o.faCenter));},dependencies:[tn],styles:[".button[_ngcontent-%COMP%]{width:40px;height:40px;border-radius:40px;border:1px solid var(--definitions-colors-primary-900);background-color:var(--definitions-colors-background-white);box-shadow:var(--definitions-shadows-general)}.button[_ngcontent-%COMP%]:hover{cursor:pointer}.button[_ngcontent-%COMP%] fa-icon[_ngcontent-%COMP%]{font-size:20px;color:var(--definitions-colors-text-black)}"]})};var tse=t=>({rotate:t}),A2=class t{mapService=se(tr);iconLibrary=se(Ut);rotation=Yn(this.mapService.rotation.asObservable().pipe(Qt(e=>360-e)),{initialValue:0});faCompass=this.iconLibrary.getIconDefinition("fak","compass");static \u0275fac=function(n){return new(n||t)};static \u0275cmp=ht({type:t,selectors:[["app-compass-button"]],decls:2,vars:4,consts:[[1,"button"],[3,"icon","transform"]],template:function(n,o){n&1&&(be(0,"button",0),Ve(1,"fa-icon",1),Ee()),n&2&&(we(),We("icon",o.faCompass)("transform",kT(2,tse,o.rotation())));},dependencies:[tn],styles:[".button[_ngcontent-%COMP%]{width:40px;height:40px;border-radius:40px;border:1px solid var(--definitions-colors-primary-900);background-color:var(--definitions-colors-background-white);box-shadow:var(--definitions-shadows-general)}.button[_ngcontent-%COMP%] fa-icon[_ngcontent-%COMP%]{font-size:20px;color:var(--definitions-colors-text-black)}"]})};var M2=class t{iconLibrary=se(Ut);locationService=se(vu);logger=se(Tt);markerService=se(si);mapService=se(tr);locationPermission=dt("prompt");active=Xe(()=>this.locationService.currentlyWatchingLocation());mapReady=Yn(this.mapService.mapReady.asObservable(),{initialValue:false});positionSubscription;bearingSubscription;faLocation=this.iconLibrary.getIconDefinition("fas","location-arrow");constructor(){this.checkLocationPermission(),Ot(()=>{this.mapReady()?this.active()?(this.positionSubscription=this.locationService.currentLocation.asObservable().subscribe({next:e=>{this.logger.log("location",e),e!=null&&(this.markerService.hasCurrentLocationMarker?this.markerService.updateCurrentLocationMarker(e.position):this.markerService.addCurrentLocationMarker(e.position));},error:e=>{this.logger.logWarning("Error updating current location marker position",e);}}),this.bearingSubscription=Oo([this.locationService.currentBearing.asObservable(),this.mapService.rotation.asObservable()]).subscribe({next:([e,n])=>{this.logger.log("bearing",e),this.logger.log("maprotation",n);let c=(e??0)-n;if(this.logger.log("markerRotation",c),this.markerService.hasCurrentLocationMarker){let s=this.markerService.getCurrentLocationMarkerElement();s!=null&&(s.style.transform=`rotate(${c}deg)`);}},error:e=>{this.logger.logWarning("Error updating current location marker rotation",e);}})):(this.positionSubscription?.unsubscribe(),this.bearingSubscription?.unsubscribe(),this.markerService.removeCurrentLocationMarker(),this.positionSubscription=void 0,this.bearingSubscription=void 0):(this.positionSubscription?.unsubscribe(),this.bearingSubscription?.unsubscribe(),this.positionSubscription=void 0,this.bearingSubscription=void 0);});}ngOnDestroy(){this.locationService.temporalStopWatching(),this.positionSubscription?.unsubscribe(),this.bearingSubscription?.unsubscribe(),this.markerService.removeCurrentLocationMarker();}checkLocationPermission(){this.locationService.checkLocationPermission().then(e=>{this.locationPermission.set(e),e==="granted"&&this.active()&&this.locationService.startWatching();}).catch(e=>{this.logger.logWarning("Error checking location permission",e),this.locationPermission.set("denied");});}async onClick(){if(this.logger.logEvent("map_location_button_clicked"),this.active())this.locationService.stopWatching();else switch(this.locationPermission()){case "granted":this.locationService.startWatching();break;case "prompt":await this.requestPermissions();break;case "denied":this.logger.logWarning("Location permission denied");break}}async requestPermissions(){await this.locationService.requestLocationPermission()==="granted"?(this.locationPermission.set("granted"),this.locationService.startWatching()):this.locationPermission.set("denied");}static \u0275fac=function(n){return new(n||t)};static \u0275cmp=ht({type:t,selectors:[["app-location-button"]],decls:2,vars:3,consts:[[1,"button",3,"click"],[3,"icon"]],template:function(n,o){n&1&&(be(0,"button",0),at("click",function(){return o.onClick()}),Ve(1,"fa-icon",1),Ee()),n&2&&(An("active",o.active()),we(),We("icon",o.faLocation));},dependencies:[tn],styles:[".button[_ngcontent-%COMP%]{width:40px;height:40px;border-radius:40px;border:1px solid var(--definitions-colors-primary-900);background-color:var(--definitions-colors-background-white);color:var(--definitions-colors-text-black);box-shadow:var(--definitions-shadows-general)}.button[_ngcontent-%COMP%]:hover{cursor:pointer}.button.active[_ngcontent-%COMP%]{background-color:var(--definitions-colors-secondary-blue);color:var(--definitions-colors-text-white);border-color:var(--definitions-colors-secondary-blue)}.button[_ngcontent-%COMP%] fa-icon[_ngcontent-%COMP%]{font-size:18px}"]})};var P2=class t{logger=se(Tt);mapService=se(tr);iconLibrary=se(Ut);faPlus=this.iconLibrary.getIconDefinition("fas","plus");faMinus=this.iconLibrary.getIconDefinition("fas","minus");onZoomIn(){this.logger.logEvent("map_zoom_in_button_clicked"),this.mapService.updateZoomLevelOn(1);}onZoomOut(){this.logger.logEvent("map_zoom_out_button_clicked"),this.mapService.updateZoomLevelOn(-1);}static \u0275fac=function(n){return new(n||t)};static \u0275cmp=ht({type:t,selectors:[["app-zoom-buttons"]],decls:5,vars:2,consts:[[1,"zoom-buttons-container"],[1,"zoom-button","zoom-in",3,"click"],[3,"icon"],[1,"zoom-button","zoom-out",3,"click"]],template:function(n,o){n&1&&(be(0,"div",0)(1,"button",1),at("click",function(){return o.onZoomIn()}),Ve(2,"fa-icon",2),Ee(),be(3,"button",3),at("click",function(){return o.onZoomOut()}),Ve(4,"fa-icon",2),Ee()()),n&2&&(we(2),We("icon",o.faPlus),we(2),We("icon",o.faMinus));},dependencies:[tn],styles:[".zoom-buttons-container[_ngcontent-%COMP%]{display:flex;flex-direction:column;align-items:center;border-radius:40px;border:1px solid var(--definitions-colors-primary-900);background-color:var(--definitions-colors-background-white);box-shadow:var(--definitions-shadows-general)}.zoom-button[_ngcontent-%COMP%]{width:40px;height:40px;border:none;background-color:transparent}.zoom-button[_ngcontent-%COMP%]:hover{cursor:pointer}.zoom-button.zoom-in[_ngcontent-%COMP%]{border-radius:40px 40px 0 0}.zoom-button.zoom-out[_ngcontent-%COMP%]{border-radius:0 0 40px 40px}.zoom-button[_ngcontent-%COMP%] fa-icon[_ngcontent-%COMP%]{font-size:20px;color:var(--definitions-colors-text-black)}"]})};var R2=class t{static \u0275fac=function(n){return new(n||t)};static \u0275cmp=ht({type:t,selectors:[["app-buttons-container"]],decls:5,vars:0,consts:[[1,"buttons-container-wrapper"]],template:function(n,o){n&1&&(be(0,"div",0),Ve(1,"app-location-button")(2,"app-compass-button")(3,"app-center-map-button")(4,"app-zoom-buttons"),Ee());},dependencies:[A2,D2,P2,M2],styles:[".buttons-container-wrapper[_ngcontent-%COMP%]{display:flex;flex-direction:column;align-items:center;gap:20px}"]})};function am(t){return `Level ${t.level}`}function vB(t,e){if(!e)return;let n=t.find(o=>o.key===e);return n?am(n):void 0}function mM(t){return t.startInsideFloor!==void 0&&t.endInsideFloor!==void 0&&t.startInsideFloor!==t.endInsideFloor}function _B(t){return t.steps.filter(mM).map(e=>({fromFloorId:e.startInsideFloor,toFloorId:e.endInsideFloor,byElevator:e.elevatorStep}))}function nse(t,e){if(t&1){let n=yn();be(0,"button",4),at("click",function(){let c=cn(n).$implicit,s=Ye(3);return un(s.selectFloor(c))}),it(1),Ee();}if(t&2){let n=e.$implicit,o=Ye(3);we(),br(" ",o.floorLabel(n)," ");}}function rse(t,e){if(t&1&&(be(0,"div",2),vr(1,nse,2,1,"button",3,vo),Ee()),t&2){let n=Ye(2);we(),_r(n.floors());}}function ise(t,e){if(t&1){let n=yn();be(0,"button",0),at("click",function(){cn(n);let c=Ye();return un(c.toggleFloorSelector())}),be(1,"span"),it(2),Ee(),Ve(3,"fa-icon",1),Ee(),Et(4,rse,3,0,"div",2);}if(t&2){let n=Ye();we(2),ar(n.floorLabel(n.selectedFloor())),we(),We("icon",n.showFloorOptions()?n.caretUp:n.caretDown),we(),It(n.showFloorOptions()?4:-1);}}var k2=class t{loadedDataService=se(In);mapService=se(tr);iconLibrary=se(Ut);parentPlace=Xe(()=>this.loadedDataService.parentPlace());floors=Xe(()=>this.parentPlace()?.innerFloors??[]);currentFloorId=Xe(()=>this.mapService.currentFloorId());selectedFloor=Xe(()=>this.floors().find(e=>e.key===this.currentFloorId())??this.floors()[0]);showFloorOptions=dt(false);caretDown=this.iconLibrary.getIconDefinition("fas","caret-down");caretUp=this.iconLibrary.getIconDefinition("fas","caret-up");floorLabel=am;toggleFloorSelector(){this.showFloorOptions.update(e=>!e);}selectFloor(e){this.showFloorOptions.set(false),this.mapService.updateFloor(e.key);}static \u0275fac=function(n){return new(n||t)};static \u0275cmp=ht({type:t,selectors:[["app-floor-selector"]],decls:1,vars:1,consts:[[1,"floor-selector-button",3,"click"],[3,"icon"],[1,"floor-options"],[1,"floor-option"],[1,"floor-option",3,"click"]],template:function(n,o){n&1&&Et(0,ise,5,3),n&2&&It(o.floors().length>1?0:-1);},dependencies:[tn],styles:[".floor-selector-button[_ngcontent-%COMP%]{padding:10px;border:0;border-radius:16px;background-color:var(--definitions-colors-background-white);box-shadow:var(--definitions-shadows-general)}.floor-options[_ngcontent-%COMP%]{position:absolute;top:100%;left:0;right:0;background-color:var(--definitions-colors-background-white);border-radius:16px;box-shadow:var(--definitions-shadows-general);display:flex;flex-direction:column}.floor-option[_ngcontent-%COMP%]{padding:10px;border:0;background-color:transparent}.floor-option[_ngcontent-%COMP%]:not(:last-child){border-bottom:1px solid var(--definitions-colors-gray-200)}"],changeDetection:1})};var ose=["map"],sse=["*"];function ase(t,e){t&1&&Ve(0,"app-floor-selector",3);}var _u=class t{mapRef;logger=se(Tt);mapService=se(tr);markerService=se(si);routingService=se(So);loadedDataService=se(In);showFloorSelector=Xe(()=>this.loadedDataService.parentPlace()!==void 0);ngAfterViewInit(){this.mapService.createMap(this.mapRef.nativeElement);}ngOnDestroy(){this.logger.log("Destroying map and preparing to reuse"),this.markerService.prepareToMapReuse(),this.routingService.removeRoute(),this.mapService.prepareToReuse();}static \u0275fac=function(n){return new(n||t)};static \u0275cmp=ht({type:t,selectors:[["app-map"]],viewQuery:function(n,o){if(n&1&&bf(ose,5),n&2){let c;Ey(c=Iy())&&(o.mapRef=c.first);}},ngContentSelectors:sse,decls:6,vars:1,consts:[["map",""],[1,"map-wrapper"],["id","map"],[1,"floor-selector"],[1,"buttons-container"]],template:function(n,o){n&1&&(Nl(),be(0,"div",1),Ve(1,"div",2,0),Et(3,ase,1,0,"app-floor-selector",3),Ve(4,"app-buttons-container",4),Ll(5),Ee()),n&2&&(we(3),It(o.showFloorSelector()?3:-1));},dependencies:[R2,k2],styles:[".map-wrapper[_ngcontent-%COMP%]{height:100%;width:100%;position:relative}#map[_ngcontent-%COMP%]{height:100%;min-width:10px;min-height:10px}.buttons-container[_ngcontent-%COMP%]{position:absolute;bottom:18px;right:17px}.floor-selector[_ngcontent-%COMP%]{position:absolute;top:18px;right:17px}"]})};var lse=["*"];function cse(t,e){t&1&&(be(0,"div",2),Ve(1,"app-map"),Ee());}var lm=class t{stateService=se(Xn);showMap=Xe(()=>this.stateService.activeView()==="map");static \u0275fac=function(n){return new(n||t)};static \u0275cmp=ht({type:t,selectors:[["app-view-container"]],ngContentSelectors:lse,decls:4,vars:3,consts:[[1,"view-container"],[1,"view-content"],[1,"map-container"]],template:function(n,o){n&1&&(Nl(),be(0,"div",0)(1,"div",1),Ll(2),Ee(),Et(3,cse,2,0,"div",2),Ee()),n&2&&(we(),An("with-map",o.showMap()),we(2),It(o.showMap()?3:-1));},dependencies:[_u],styles:[".view-container[_ngcontent-%COMP%]{display:flex;align-items:stretch;gap:8px}@container mapvx-container (width <= 1024px){.view-container[_ngcontent-%COMP%]{flex-direction:column-reverse;align-items:flex-start}}@container mapvx-container (width <= 640px){.view-container[_ngcontent-%COMP%]{flex-direction:column-reverse;align-items:flex-start}}.view-content[_ngcontent-%COMP%]{width:100%}.view-content.with-map[_ngcontent-%COMP%]{width:50%;min-width:482px;flex-shrink:0}@container mapvx-container (width <= 1024px){.view-content.with-map[_ngcontent-%COMP%]{width:100%;min-width:unset}}.map-container[_ngcontent-%COMP%]{width:100%;min-height:730px}@container mapvx-container (width <= 1024px){.map-container[_ngcontent-%COMP%]{width:100%;height:730px}}@container mapvx-container (width <= 640px){.map-container[_ngcontent-%COMP%]{width:100%;height:400px;min-height:unset}}"]})};var use=["categoryFilters"],dse=(t,e)=>e.name;function pse(t,e){if(t&1){let n=yn();be(0,"button",11),at("click",function(){let c=cn(n).$implicit,s=Ye(2);return un(s.updateSelectedFilter(c.name))}),it(1),Ee();}if(t&2){let n=e.$implicit,o=Ye(2);An("active",o.selectedFilter()===n.name),we(),br(" ",n.name," ");}}function hse(t,e){if(t&1&&(be(0,"div",2)(1,"div",5,0)(3,"div",6),vr(4,pse,2,3,"button",7,dse),Ee(),be(6,"div",8),Ve(7,"div",9)(8,"div",10),Ee()()()),t&2){let n=Ye();we(4),_r(n.categoryFiltersData()),we(4),wf("left",n.indicatorPosition(),"px");}}var O2=class t{logger=se(Tt);stateService=se(Xn);loadedDataService=se(In);markerService=se(si);categoryFilters=y1("categoryFilters");activeView=Xe(()=>this.stateService.activeView());loadedPlaces=Yn(this.loadedDataService.getAvailablePlaces(),{initialValue:[]});categoryFiltersData=Xe(()=>this.stateService.categoryFiltersData());places=ii(()=>this.loadedPlaces());selectedFilter=Xe(()=>this.stateService.selectedFilter());selectedInstitution=Xe(()=>this.stateService.selectedInstitution());selectedCity=Xe(()=>this.stateService.selectedCity());showCategoryFilters=Xe(()=>this.stateService.showCategoryFilters()&&this.categoryFiltersData().length>1);showCityFilter=Xe(()=>this.stateService.showCityFilter());indicatorPosition=dt(0);constructor(){Ot(()=>{let e=this.activeView();this.logger.logEvent("page_view",{page_title:"List Page",page_location:`/list?view=${e}`});}),Ot(()=>{let e=this.categoryFiltersData();if(this.logger.log("====> loadedCategoryFiltersData",e),e.length>0){let n=e.map(o=>o.name);this.readFilterFromUrl(n);}}),Ot(()=>{if(this.activeView()==="map"){let e=this.places();this.logger.log("====> addMarkers ",e),this.markerService.addMarkers(e);}}),Ot(()=>{let e=this.loadedPlaces(),n=this.showCategoryFilters(),o=e.filter(s=>s.visibility==="public");if(this.showCityFilter()){let s=this.stateService.selectedFilterId();s!==""&&(o=o.filter(m=>m.parentInstitutionId===s));}if(n){let s=this.selectedFilter(),m=this.categoryFiltersData();if(s!=="All"){let w=m.find(I=>I.name===s)?.placeData||[];o=o.filter(I=>w.includes(I.mapvxId));}}o.sort((s,m)=>s.title.trim().localeCompare(m.title.trim())),this.logger.log("====> filteredPlaces",o),this.places.set(o);}),Ot(()=>{let e=this.places();this.stateService.lastListedPlaces.set(e);}),Ot(()=>{let e=this.selectedFilter(),n=this.categoryFiltersData(),o=this.categoryFilters();this.showCategoryFilters()&&o?requestAnimationFrame(()=>{let s=this.getIndicatorPosition(e,n,o);this.indicatorPosition.set(s);}):this.indicatorPosition.set(0);});}readFilterFromUrl(e){let o=new URLSearchParams(location.search).get("tab");o&&e.includes(o)&&this.stateService.selectedFilter.set(o);}getIndicatorPosition(e,n,o){if(o==null)return 0;let c=o.nativeElement.querySelectorAll(".category-btn");if(c.length===0)return 0;let s=n.findIndex(W=>W.name===e);if(s===-1||s>=c.length)return 0;let m=c[s];if(!m)return 0;let w=o.nativeElement.getBoundingClientRect(),I=m.getBoundingClientRect(),P=I.width,L=I.left-w.left,B=80,Y=L+P/2-B/2;return Math.min(Math.max(0,Y),w.width-B)}updateSelectedFilter(e){this.stateService.selectedFilter.set(e),this.stateService.userAction.next({type:"select-filter",data:{filter:e}}),this.logger.logEvent("filter_selected",{filter:e});}static \u0275fac=function(n){return new(n||t)};static \u0275cmp=ht({type:t,selectors:[["app-list-view"]],viewQuery:function(n,o){n&1&&xf(o.categoryFilters,use,5),n&2&&Ty();},decls:5,vars:2,consts:[["categoryFilters",""],[1,"list-view"],[1,"category-filters-overflow"],[1,"list-container"],[3,"places"],[1,"category-filters-container"],[1,"category-filters"],[1,"category-btn",3,"active"],[1,"active-indicator"],[1,"background-line"],[1,"active-line"],[1,"category-btn",3,"click"]],template:function(n,o){n&1&&(be(0,"div",1),Et(1,hse,9,2,"div",2),be(2,"app-view-container")(3,"div",3),Ve(4,"app-paginator",4),Ee()()()),n&2&&(we(),It(o.showCategoryFilters()?1:-1),we(3),We("places",o.places()));},dependencies:[lm,sm],styles:[".list-view[_ngcontent-%COMP%]{display:flex;flex-direction:column;gap:36px}.category-filters-overflow[_ngcontent-%COMP%]{width:100%;overflow-x:auto}.category-filters-container[_ngcontent-%COMP%]{display:flex;flex-direction:column;align-items:flex-start;gap:16px;width:100%;min-width:max-content}.category-filters[_ngcontent-%COMP%]{display:flex;gap:2.4375rem;align-items:center}.category-btn[_ngcontent-%COMP%]{background:none;border:none;cursor:pointer;font:var(--definitions-textFonts-desktop-button-5);font-family:inherit;font-weight:400;color:var(--definitions-colors-text-900);white-space:nowrap;padding:0;transition:color .2s ease}.category-btn.active[_ngcontent-%COMP%], .category-btn[_ngcontent-%COMP%]:hover{color:var(--definitions-colors-secondary-orange)}.active-indicator[_ngcontent-%COMP%]{position:relative;width:100%;height:3px;display:flex;align-items:center}.background-line[_ngcontent-%COMP%]{height:.5px;background:var(--definitions-colors-primary-black);border-radius:2px;width:100%}.active-line[_ngcontent-%COMP%]{position:absolute;top:0;height:100%;width:80px;background:var(--definitions-colors-secondary-orange);border-radius:2px;transition:left .3s ease}.list-container[_ngcontent-%COMP%]{width:100%}"]})};var fse=()=>({rotate:42}),N2=class t{iconLibrary=se(Ut);faCircleNotch=this.iconLibrary.getIconDefinition("fas","circle-notch");static \u0275fac=function(n){return new(n||t)};static \u0275cmp=ht({type:t,selectors:[["app-loading-location-card"]],decls:7,vars:3,consts:[[1,"loading-location-card"],[1,"loading-card-image"],[3,"icon","transform"],[1,"loading-card-content"],[1,"loading-location-name"],[1,"loading-location-address"],[1,"loading-location-category"]],template:function(n,o){n&1&&(be(0,"div",0)(1,"div",1),Ve(2,"fa-icon",2),Ee(),be(3,"div",3),Ve(4,"div",4)(5,"div",5)(6,"div",6),Ee()()),n&2&&(we(2),We("icon",o.faCircleNotch)("transform",zl(2,fse)));},dependencies:[tn],styles:[".loading-location-card[_ngcontent-%COMP%]{display:flex;padding:5px 5px 10px;flex-direction:column;align-items:flex-start;gap:12px}.loading-card-image[_ngcontent-%COMP%]{display:flex;width:227px;height:227px;justify-content:center;align-items:center;background-color:var(--definitions-colors-primary-300)}@container mapvx-container (width <= 640px){.loading-card-image[_ngcontent-%COMP%]{width:160px;height:160px}}.loading-card-image[_ngcontent-%COMP%] fa-icon[_ngcontent-%COMP%]{color:var(--definitions-colors-primary-600);font-size:95px}.loading-card-content[_ngcontent-%COMP%]{display:flex;width:227px;flex-direction:column;align-items:flex-start;gap:8px}@container mapvx-container (width <= 640px){.loading-card-content[_ngcontent-%COMP%]{width:160px}}.loading-location-name[_ngcontent-%COMP%]{display:flex;width:85%;height:24px;padding:7.253px 0;flex-direction:column;justify-content:center;align-items:center;border-radius:28.09px;background:var(--definitions-colors-primary-300)}.loading-location-address[_ngcontent-%COMP%]{display:flex;width:70%;height:11px;align-items:center;gap:18px;flex-shrink:0;align-self:stretch;border-radius:28.09px;background:var(--definitions-colors-primary-200)}.loading-location-category[_ngcontent-%COMP%]{display:flex;width:45%;height:11px;justify-content:space-between;align-items:center;border-radius:24px;background:var(--definitions-colors-primary-200)}"],changeDetection:1})};var mse=()=>[1,2,3,4,5,6,7,8,9,10];function gse(t,e){t&1&&Ve(0,"app-loading-location-card");}var L2=class t{homeStateService=se(Xn);showMap=Xe(()=>this.homeStateService.activeView()==="map");static \u0275fac=function(n){return new(n||t)};static \u0275cmp=ht({type:t,selectors:[["app-loading-card-list"]],decls:3,vars:3,consts:[[1,"loading-container"]],template:function(n,o){n&1&&(be(0,"div",0),vr(1,gse,1,0,"app-loading-location-card",null,qd),Ee()),n&2&&(An("with-map",o.showMap()),we(),_r(zl(2,mse)));},dependencies:[N2],styles:[".loading-container[_ngcontent-%COMP%]{display:flex;place-content:flex-start;align-items:flex-start;gap:24px 13px;align-self:stretch;flex-wrap:wrap}.loading-container.with-map[_ngcontent-%COMP%]{gap:16px 8px;height:730px}"],changeDetection:1})};function yse(t,e){t&1&&(be(0,"p"),it(1,"Looking for your results..."),Ee());}function vse(t,e){if(t&1&&(be(0,"p"),it(1),Ee()),t&2){let n=Ye(3);we(),br('Showing 1 result for "',n.searchTerm(),'"');}}function _se(t,e){if(t&1&&(be(0,"p"),it(1),Ee()),t&2){let n=Ye(3);we(),p1("Showing ",n.places().length,' results for "',n.searchTerm(),'"');}}function bse(t,e){if(t&1&&Et(0,vse,2,1,"p")(1,_se,2,2,"p"),t&2){let n=Ye(2);It(n.places().length===1?0:1);}}function xse(t,e){if(t&1&&(be(0,"p"),it(1),Ee()),t&2){let n=Ye(2);we(),br('No results found for "',n.searchTerm(),'"');}}function wse(t,e){if(t&1&&Et(0,bse,2,1)(1,xse,2,1,"p"),t&2){let n=Ye();It(n.places().length>0?0:1);}}function Sse(t,e){t&1&&Ve(0,"app-loading-card-list");}function Ese(t,e){if(t&1&&(be(0,"div",6)(1,"app-paginator",7)(2,"div",8),Ve(3,"fa-icon",4),be(4,"h2"),it(5,"No results found"),Ee(),be(6,"div",9)(7,"p"),it(8,"Sorry, we can\u2019t find any places that match your search. Please try again."),Ee()()()()()),t&2){let n=Ye();we(),We("places",n.places())("fromSearch",true),we(2),We("icon",n.faBuildingMagnifyingGlass);}}var F2=class t{logger=se(Tt);loadedDataService=se(In);sdkService=se(wo);stateService=se(Xn);navigatorService=se(Wr);markerService=se(si);iconLibrary=se(Ut);searching=ii(()=>this.stateService.lastSearchData().term==="");inputValue$=S2(this.stateService.inputValue).pipe(nE(500),Qt(e=>e.trim()),mr(e=>e!==""),rE());searchTerm=Yn(this.inputValue$,{initialValue:this.stateService.lastSearchData().term});places=Yn(Oo([S2(this.stateService.filterId),this.inputValue$,S2(this.stateService.lastSearchData)]).pipe($r(([e,n,o])=>o.term===n?(this.logger.log("====> lastSearchData",o),this.searching.set(false),Gt(o.results)):(this.searching.set(true),this.logger.log("====> searchTerm",n),this.logger.logEvent("search",{term:n,searchInstitutionId:e}),this.logger.log("====> institutionId",e),Un(this.sdkService.searchPlaces(n,e)))),Ki(e=>{this.searching.set(false),e.length>0?this.logger.logEvent("search_results",{resultsCount:e.length.toString(),term:this.searchTerm(),searchInstitutionId:this.stateService.filterId()}):this.logger.logEvent("search_empty",{term:this.searchTerm(),searchInstitutionId:this.stateService.filterId()});})),{initialValue:this.stateService.lastSearchData().results});faArrowLeft=this.iconLibrary.getIconDefinition("fas","arrow-left");faBuildingMagnifyingGlass=this.iconLibrary.getIconDefinition("fas","building-magnifying-glass");constructor(){this.logger.logEvent("page_view",{page_title:"Search Page",page_location:"/search"}),Ot(()=>{let e=this.places();this.markerService.addMarkers(e);}),Ot(()=>{let e=this.places();this.stateService.lastListedPlaces.set(e);}),Ot(()=>{let e=this.searching();this.logger.log("====> searching",e);}),Ot(()=>{let e=this.searchTerm();e&&this.stateService.userAction.next({type:"search",data:{searchTerm:e}});});}ngOnDestroy(){this.stateService.inputValue()===""?(this.logger.log("====> EMPTY_SEARCH_DATA"),this.stateService.lastSearchData.set(w2)):(this.logger.log("====> SETTING LAST SEARCH DATA"),this.stateService.lastSearchData.set({term:this.stateService.inputValue(),results:this.places()}));}onBackClick(){this.stateService.inputValue.set(""),this.stateService.userAction.next({type:"return-to-home",data:{filter:this.stateService.selectedFilter()}}),this.logger.logEvent("search_back_clicked",{term:this.searchTerm(),searchInstitutionId:this.stateService.filterId()}),this.navigatorService.navigateToHome();}static \u0275fac=function(n){return new(n||t)};static \u0275cmp=ht({type:t,selectors:[["app-search-view"]],decls:13,vars:3,consts:[[1,"search-view"],[1,"search-view-header"],[1,"back-button"],[1,"back-btn",3,"click"],[3,"icon"],[1,"search-view-info"],[1,"results-container"],[3,"places","fromSearch"],[1,"no-results"],[1,"no-results-description"]],template:function(n,o){n&1&&(be(0,"div",0)(1,"div",1)(2,"div",2)(3,"button",3),at("click",function(){return o.onBackClick()}),Ve(4,"fa-icon",4),be(5,"span"),it(6,"Back"),Ee()()(),be(7,"div",5),Et(8,yse,2,0,"p")(9,wse,2,1),Ee()(),be(10,"app-view-container"),Et(11,Sse,1,0,"app-loading-card-list")(12,Ese,9,3,"div",6),Ee()()),n&2&&(we(4),We("icon",o.faArrowLeft),we(4),It(o.searching()?8:9),we(3),It(o.searching()?11:12));},dependencies:[lm,sm,b2,tn,L2],styles:['*[_ngcontent-%COMP%]{margin:0;padding:0}.search-view[_ngcontent-%COMP%]{display:flex;flex-direction:column;gap:36px}.search-view-header[_ngcontent-%COMP%]{display:flex;width:100%;flex-direction:column;justify-content:center;align-items:flex-start;gap:23px}.search-view-info[_ngcontent-%COMP%] p[_ngcontent-%COMP%]{color:var(--definitions-colors-text-800);font:var(--definitions-textFonts-desktop-sub-2);font-family:inherit;letter-spacing:-.9px}.results-container[_ngcontent-%COMP%]{width:100%}.back-button[_ngcontent-%COMP%]{display:flex;justify-content:flex-start;align-items:center;gap:16px}.back-btn[_ngcontent-%COMP%]{display:flex;justify-content:center;align-items:center;gap:12px;color:var(--definitions-colors-secondary-blue);border:none;background:none}.back-btn[_ngcontent-%COMP%]:hover{cursor:pointer}.back-btn[_ngcontent-%COMP%] fa-icon[_ngcontent-%COMP%]{font-size:24px}.back-btn[_ngcontent-%COMP%] span[_ngcontent-%COMP%]{color:var(--definitions-colors-secondary-blue);font:var(--definitions-textFonts-desktop-button-1);font-family:inherit;font-feature-settings:"liga" off,"clig" off;letter-spacing:-1px}.no-results[_ngcontent-%COMP%]{display:flex;width:100%;height:100%;flex-direction:column;justify-content:center;align-items:center;gap:31px}.no-results[_ngcontent-%COMP%] fa-icon[_ngcontent-%COMP%]{font-size:160px;color:var(--definitions-colors-text-light-grey)}.no-results[_ngcontent-%COMP%] h2[_ngcontent-%COMP%]{color:var(--definitions-colors-text-grey);font:var(--definitions-textFonts-desktop-h2);font-family:inherit}.no-results[_ngcontent-%COMP%] p[_ngcontent-%COMP%]{color:var(--definitions-colors-text-grey);font:var(--definitions-textFonts-desktop-sub-1);font-family:inherit;text-align:center}']})};function z2(t){switch(t){case "su":return "Sunday";case "mo":return "Monday";case "tu":return "Tuesday";case "we":return "Wednesday";case "th":return "Thursday";case "fr":return "Friday";case "sa":return "Saturday"}}function U2(t){switch(t.getDay()){case 0:return "su";case 1:return "mo";case 2:return "tu";case 3:return "we";case 4:return "th";case 5:return "fr";case 6:return "sa";default:return "mo"}}function Ise(t){switch(t){case 0:return "su";case 1:return "mo";case 2:return "tu";case 3:return "we";case 4:return "th";case 5:return "fr";case 6:return "sa";default:return "mo"}}function B2(t){let[e,n]=t.split(":"),o=parseInt(e)%24,c=parseInt(n),s;return o<12?(s="AM",o===0&&(o=12)):(s="PM",o!==12&&(o-=12)),`${o}:${c<10?"0":""}${c}&nbsp;${s}`}function wB(t){let e=B2(t.open),n=B2(t.close);return `${e}&nbsp;-&nbsp;${n}`}function Tse(t){let e=B2(t.open),n=B2(t.close);return `${e}&nbsp;to&nbsp;${n}`}function Cse(t){let e=new Date,n=new Date(e);SB(n);let o=U2(n),c=t[o];if(c&&c.length>0){for(let s of c)if(bB(s.open)&&bB(s.close)){let m=xB(s.open,n),w=xB(s.close,n);if(m>w&&Dse(w),e>=m&&e<=w)return true}}return false}function SB(t){let e=t.getDate();t.setDate(e-1);}function Dse(t){let e=t.getDate();t.setDate(e+1);}function Ase(t){let n=U2(new Date),o=t[n];return o&&o.length>0}function bB(t){return /^([0-9]|0[0-9]|1[0-9]|2[0-4]):[0-5][0-9]$/.test(t)}function xB(t,e){let[n,o]=t.split(":").map(Number),c=e?new Date(e):new Date;return new Date(c.getFullYear(),c.getMonth(),c.getDate(),n,o,0,0)}function Mse(t){return t.sort((e,n)=>e.open.localeCompare(n.open))}function Pse(t){let n=U2(new Date),o=t[n];return o&&o.length>0?EB(o):""}function Rse(t){let e=new Date;SB(e);let n=U2(e),o=t[n];return o&&o.length>0?EB(o):""}function kse(t){let e=Ose(t);return `Open on ${z2(e)}`}function EB(t){return t.length===1?wB(t[0]):(Mse(t),t.map(Tse).join(" - "))}function Ose(t){let n=new Date().getDay();for(let o=0;o<7;o++){let c=(n+o)%7,s=Ise(c),m=t[s];if(m&&m.length>0)return s}return "mo"}function IB(t){return Cse(t)?Rse(t):Ase(t)?Pse(t):kse(t)}function TB(t){let e=["mo","tu","we","th","fr","sa","su"],n=w=>{let I=t[w];return !I||I.length===0?["Closed"]:I.map(P=>wB(P))},o=(w,I)=>w.length!==I.length?false:w.every((P,L)=>P===I[L]),c=(w,I)=>w===I?z2(w):`${z2(w)} - ${z2(I)}`,s=[],m=0;for(;m<e.length;){let w=e[m],I=n(w),P=m+1;for(;P<e.length&&o(I,n(e[P]));)P++;let L=c(w,e[P-1]);s.push({day:L,schedule:I}),m=P;}if(s.length>1){let w=s[0],I=s[s.length-1];if(o(w.schedule,I.schedule)){let P=w.day.split(" - "),B=I.day.split(" - ")[0],Y=P.length>1?P[1]:P[0],W=`${B} - ${Y}`;s[0]={day:W,schedule:w.schedule},s.pop();}}return s}function Nse(t,e){if(t&1&&Ve(0,"div",9),t&2){let n=e.$implicit;We("innerHTML",n,Yc);}}function Lse(t,e){if(t&1&&(be(0,"div",6)(1,"div",7),it(2),Ee(),be(3,"div",8),vr(4,Nse,1,1,"div",9,vo),Ee()()),t&2){let n=e.$implicit;we(2),ar(n.day),we(2),_r(n.schedule);}}var V2=class t{iconLibrary=se(Ut);schedules=Wt.required({transform:e=>e?TB(e):[]});closeClicked=Ni();faClockThree=this.iconLibrary.getIconDefinition("fas","clock-three");faXmark=this.iconLibrary.getIconDefinition("fas","xmark");hideModal(){this.closeClicked.emit();}static \u0275fac=function(n){return new(n||t)};static \u0275cmp=ht({type:t,selectors:[["app-other-schedules"]],inputs:{schedules:[1,"schedules"]},outputs:{closeClicked:"closeClicked"},decls:11,vars:2,consts:[[1,"other-schedules-container"],[1,"other-schedules-header"],[1,"other-schedules-title"],[3,"icon"],[1,"close-button",3,"click"],[1,"schedules"],[1,"schedule"],[1,"schedule-day"],[1,"schedule-time"],[1,"schedule-time-item",3,"innerHTML"]],template:function(n,o){n&1&&(be(0,"div",0)(1,"div",1)(2,"div",2),Ve(3,"fa-icon",3),be(4,"h2"),it(5,"Other Schedules"),Ee()(),be(6,"button",4),at("click",function(){return o.hideModal()}),Ve(7,"fa-icon",3),Ee()(),be(8,"div",5),vr(9,Lse,6,1,"div",6,vo),Ee()()),n&2&&(we(3),We("icon",o.faClockThree),we(4),We("icon",o.faXmark),we(2),_r(o.schedules()));},dependencies:[tn],styles:[".other-schedules-container[_ngcontent-%COMP%]{padding:16px;background-color:var(--definitions-colors-background-50);box-shadow:var(--definitions-shadows-general)}.other-schedules-header[_ngcontent-%COMP%]{display:flex;justify-content:space-between;align-items:center}.other-schedules-title[_ngcontent-%COMP%]{display:flex;align-items:center;gap:8px}.other-schedules-title[_ngcontent-%COMP%] h2[_ngcontent-%COMP%]{margin:0;color:var(--definitions-colors-text-900);font:var(--definitions-textFonts-desktop-sub-2);font-family:inherit}@container mapvx-container (width <= 640px){.other-schedules-title[_ngcontent-%COMP%] h2[_ngcontent-%COMP%]{font-size:16px}}.other-schedules-title[_ngcontent-%COMP%] fa-icon[_ngcontent-%COMP%]{color:var(--definitions-colors-primary-600);font-size:32px}@container mapvx-container (width <= 640px){.other-schedules-title[_ngcontent-%COMP%] fa-icon[_ngcontent-%COMP%]{font-size:20px}}.close-button[_ngcontent-%COMP%]{padding:0;background:none;border:none;cursor:pointer}.close-button[_ngcontent-%COMP%] fa-icon[_ngcontent-%COMP%]{font-size:20px}.schedules[_ngcontent-%COMP%]{display:flex;flex-direction:column;gap:16px;background-color:#fff}.schedule[_ngcontent-%COMP%]{display:flex;gap:40px;align-items:center;justify-content:space-between}.schedule-times[_ngcontent-%COMP%]{display:flex;flex-direction:column;gap:8px}.schedule-time[_ngcontent-%COMP%]{display:flex;flex-direction:column;align-items:end}.schedule-time-item[_ngcontent-%COMP%]{color:var(--definitions-colors-text-800);font:var(--definitions-textFonts-desktop-sub-5);font-family:inherit}@container mapvx-container (width <= 640px){.schedule-time-item[_ngcontent-%COMP%]{font-size:12px;font-weight:400}}"],changeDetection:1})};var Fse=()=>({rotate:42});function zse(t,e){if(t&1&&Ve(0,"fa-icon",3),t&2){let n=Ye();We("icon",n.faCircleNotch)("transform",zl(2,Fse));}}function Bse(t,e){if(t&1){let n=yn();be(0,"div",10),Ve(1,"fa-icon",9),be(2,"div",24)(3,"button",25),at("click",function(){cn(n);let c=Ye();return un(c.showOtherSchedulesModal())}),Ee(),be(4,"div",26),it(5,"*Hours may vary"),Ee()()();}if(t&2){let n=Ye();we(),We("icon",n.faClockThree),we(2),We("innerHTML",n.schedule(),Yc);}}function Use(t,e){if(t&1){let n=yn();be(0,"div",11)(1,"app-other-schedules",27),at("closeClicked",function(){cn(n);let c=Ye();return un(c.hideOtherSchedulesModal())}),Ee()();}if(t&2){let n=Ye();we(),We("schedules",n.place().openingHours);}}function Vse(t,e){if(t&1&&Ve(0,"div",32),t&2){let n=e.$implicit;wf("color",n.color)("border-color",n.color),We("innerHTML",n.description,Yc);}}function jse(t,e){if(t&1&&(be(0,"div",12)(1,"div",28),Ve(2,"fa-icon",9),be(3,"div",29),it(4,"Deals + Events"),Ee()(),be(5,"div",30),vr(6,Vse,1,5,"div",31,vo),Ee()()),t&2){let n=Ye();we(2),We("icon",n.faBadgeDollar),we(4),_r(n.banners());}}function $se(t,e){if(t&1&&(be(0,"div",21),it(1),Ee()),t&2){let n=Ye();we(),br(" ",n.address()," ");}}function Hse(t,e){if(t&1&&(be(0,"div",22),it(1),Ee()),t&2){let n=e.$implicit;we(),br(" ",n," ");}}function Gse(t,e){if(t&1){let n=yn();be(0,"div",23)(1,"a",18),at("click",function(){let c=cn(n).$implicit,s=Ye();return un(s.logWebsiteClick(c.url))}),it(2),Ee()();}if(t&2){let n=e.$implicit;we(),We("href",n.url,jd),we(),ar(n.title);}}var j2=class t{iconLibrary=se(Ut);sanitizer=se(Ny);logger=se(Tt);navigatorService=se(Wr);stateService=se(Xn);place=Wt.required();hideDeals=Wt(false);imageSrc=Xe(()=>this.place().images[0]||this.place().logo||T1);isImageLoading=dt(true);schedule=Xe(()=>{let e=this.place().openingHours;return e?IB(e):""});banners=Xe(()=>this.place().banners.filter(T2).filter(e=>e.description!==void 0).map(e=>({description:this.sanitizer.bypassSecurityTrustHtml(e.description||""),color:yB(e.description||"")})));address=Xe(()=>this.place().address||"");phones=Xe(()=>this.place().properties?.filter(e=>e.type==="phone").map(e=>this.formatPhoneNumber(e.subtitle))||[]);websites=Xe(()=>this.place().properties?.filter(e=>e.type==="url").map(this.prepareUrl)||[]);drivingDirectionsUrl=Xe(()=>{let e=this.place();return `https://www.google.com/maps/dir/?api=1&destination=${e.position.lat},${e.position.lng}&travelmode=driving`});otherSchedulesModal=dt(false);faCircleNotch=this.iconLibrary.getIconDefinition("fas","circle-notch");faBadgeDollar=this.iconLibrary.getIconDefinition("fas","badge-dollar");faClockThree=this.iconLibrary.getIconDefinition("fas","clock-three");faArrowTopRight=this.iconLibrary.getIconDefinition("fak","arrow-top-right");iconCategory=Xe(()=>{let[e,n]=x2(this.place().localizedCategory||"");return this.iconLibrary.getIconDefinition(e,n)});constructor(){Ot(()=>{this.imageSrc()&&this.startImageLoading();});}prepareUrl(e){return s$1(r$1({},e),{url:e.url?.startsWith("http")?e.url:`https://${e.url}`})}startImageLoading(){this.isImageLoading.set(true);}endImageLoading(){this.isImageLoading.set(false);}showOtherSchedulesModal(){this.otherSchedulesModal.set(true);}hideOtherSchedulesModal(){this.otherSchedulesModal.set(false);}formatPhoneNumber(e){let n=e.replace(/^\+1/,"");return n=n.replaceAll(/\D/g,""),n.length<10?(this.logger.logWarning(`Phone number '${n}' is to short for format`),n):`${n.slice(0,3)}.${n.slice(3,6)}.${n.slice(6)}`}navigateToRoute(){this.stateService.userAction.next({type:"select-destination",data:{destinationId:this.place().mapvxId,alias:this.place().clientId}}),this.logger.logEvent("pedestrian_directions_selected",{id:this.place().mapvxId,name:this.place().title,clientId:this.place().clientId||""}),this.navigatorService.navigateToRoute(this.place().mapvxId);}logDrivingDirectionsClick(){this.logger.logEvent("driving_directions_clicked",{id:this.place().mapvxId,name:this.place().title,clientId:this.place().clientId||"",url:this.drivingDirectionsUrl()});}logWebsiteClick(e){e&&this.logger.logEvent("profile_website_clicked",{id:this.place().mapvxId,name:this.place().title,clientId:this.place().clientId||"",url:e});}static \u0275fac=function(n){return new(n||t)};static \u0275cmp=ht({type:t,selectors:[["app-profile-view"]],inputs:{place:[1,"place"],hideDeals:[1,"hideDeals"]},decls:34,vars:15,consts:[[1,"profile-view-content"],[1,"image"],[3,"load","error","src","alt"],[1,"loading-icon",3,"icon","transform"],[1,"info"],[1,"basic-info"],[1,"title"],[1,"category-schedule"],[1,"category"],[3,"icon"],[1,"schedule"],[1,"other-schedules-modal"],[1,"deals-or-events"],[1,"description"],[1,"direction-buttons"],[1,"route-button-container"],[1,"route-button",3,"click"],[1,"driving-link"],["target","_blank",3,"click","href"],[1,"properties"],[1,"separator"],[1,"address"],[1,"phone"],[1,"website"],[1,"schedule-time"],[1,"schedule-button",3,"click","innerHTML"],[1,"schedule-warning"],[3,"closeClicked","schedules"],[1,"deals-or-events-header"],[1,"deals-or-events-content-title"],[1,"deals-or-events-content"],[1,"banner-content",3,"innerHTML","color","border-color"],[1,"banner-content",3,"innerHTML"]],template:function(n,o){n&1&&(be(0,"div",0)(1,"div",1)(2,"img",2),at("load",function(){return o.endImageLoading()})("error",function(){return o.endImageLoading()}),Ee(),Et(3,zse,1,3,"fa-icon",3),Ee(),be(4,"div",4)(5,"div",5)(6,"h1",6),it(7),Ee(),be(8,"div",7)(9,"div",8),Ve(10,"fa-icon",9),be(11,"span"),it(12),Ee()(),Et(13,Bse,6,2,"div",10),Et(14,Use,2,1,"div",11),Ee(),Et(15,jse,8,1,"div",12),be(16,"div",13),it(17),Ee()(),be(18,"div",14)(19,"div",15)(20,"button",16),at("click",function(){return o.navigateToRoute()}),Ve(21,"fa-icon",9),be(22,"span"),it(23,"Pedestrian-friendly directions"),Ee()()(),be(24,"div",17)(25,"a",18),at("click",function(){return o.logDrivingDirectionsClick()}),it(26,"Driving directions"),Ee()()(),be(27,"div",19),Ve(28,"div",20),Et(29,$se,2,1,"div",21),vr(30,Hse,2,1,"div",22,vo),vr(32,Gse,3,2,"div",23,vo),Ee()()()),n&2&&(we(),An("loading",o.isImageLoading()),we(),We("src",o.imageSrc(),jd)("alt",o.place().title),we(),It(o.isImageLoading()?3:-1),we(4),ar(o.place().title),we(3),We("icon",o.iconCategory()),we(2),ar(o.place().localizedCategory),we(),It(o.schedule()!==""?13:-1),we(),It(o.otherSchedulesModal()?14:-1),we(),It(o.banners().length>0&&!o.hideDeals()?15:-1),we(2),br(" ",o.place().description," "),we(4),We("icon",o.faArrowTopRight),we(4),We("href",o.drivingDirectionsUrl(),jd),we(4),It(o.address()!==""?29:-1),we(),_r(o.phones()),we(2),_r(o.websites()));},dependencies:[tn,V2],styles:['.profile-view-content[_ngcontent-%COMP%]{display:flex;padding:0 16px;flex-direction:column;align-items:center;gap:16px}@container mapvx-container (width <= 1024px){.profile-view-content[_ngcontent-%COMP%]{padding:22px 0 0}}@container mapvx-container (width <= 640px){.profile-view-content[_ngcontent-%COMP%]{padding:22px 0 0}}.image[_ngcontent-%COMP%] img[_ngcontent-%COMP%]{display:block;width:100%;object-fit:cover;aspect-ratio:1/1}.image.loading[_ngcontent-%COMP%]{background-color:var(--definitions-colors-primary-300);height:200px;width:100%;display:flex;justify-content:center;align-items:center}.image.loading[_ngcontent-%COMP%] .loading-icon[_ngcontent-%COMP%]{color:var(--definitions-colors-primary-600);font-size:100px}.image.loading[_ngcontent-%COMP%] img[_ngcontent-%COMP%]{display:none}.info[_ngcontent-%COMP%]{display:flex;flex-direction:column;align-items:flex-start;gap:24px;width:100%}.basic-info[_ngcontent-%COMP%]{display:flex;flex-direction:column;align-items:flex-start;gap:16px;width:100%}.title[_ngcontent-%COMP%]{font:var(--definitions-textFonts-desktop-h6);font-family:inherit;margin:0;color:var(--definitions-colors-text-black)}.category-schedule[_ngcontent-%COMP%]{display:flex;width:100%;justify-content:space-between;flex-wrap:wrap;position:relative}.category[_ngcontent-%COMP%]{display:flex;gap:18px;color:var(--definitions-colors-text-grey);align-items:center}.category[_ngcontent-%COMP%] fa-icon[_ngcontent-%COMP%]{font-size:20px}.category[_ngcontent-%COMP%] span[_ngcontent-%COMP%]{font:var(--definitions-textFonts-desktop-body-3);font-family:inherit;font-size:16px}.schedule[_ngcontent-%COMP%]{display:flex;gap:18px;align-items:center}.schedule[_ngcontent-%COMP%] fa-icon[_ngcontent-%COMP%]{color:var(--definitions-colors-primary-600);font-size:20px}.schedule[_ngcontent-%COMP%] .schedule-time[_ngcontent-%COMP%]{position:relative}.schedule[_ngcontent-%COMP%] .schedule-time[_ngcontent-%COMP%] .schedule-button[_ngcontent-%COMP%]{font:var(--definitions-textFonts-desktop-button-3);font-family:inherit;font-size:16px;color:var(--definitions-colors-secondary-blue);border:none;background:none;cursor:pointer;text-align:start}.schedule[_ngcontent-%COMP%] .schedule-time[_ngcontent-%COMP%] .schedule-warning[_ngcontent-%COMP%]{position:absolute;top:100%;margin-top:-5px;left:0;font:var(--definitions-textFonts-desktop-sub-5);font-family:inherit;font-size:16px;color:var(--definitions-colors-text-black)}.other-schedules-modal[_ngcontent-%COMP%]{position:absolute;width:max-content;bottom:0;right:50%;transform:translate(50%) translateY(100%)}.deals-or-events[_ngcontent-%COMP%]{display:flex;flex-direction:column;align-items:flex-start;gap:8px;width:100%}.deals-or-events-header[_ngcontent-%COMP%]{display:flex;width:100%;align-items:flex-start;gap:18px;color:var(--definitions-colors-secondary-orange)}.deals-or-events-header[_ngcontent-%COMP%] fa-icon[_ngcontent-%COMP%]{font-size:20px}.deals-or-events-content[_ngcontent-%COMP%]{display:flex;flex-direction:column;align-items:flex-start;gap:8px}.deals-or-events-content-title[_ngcontent-%COMP%]{font:var(--definitions-textFonts-desktop-sub-4);font-family:inherit;font-size:16px}.banner-content[_ngcontent-%COMP%]{width:-webkit-fill-available;width:stretch;color:var(--definitions-colors-secondary-orange);padding:10px;font:var(--definitions-textFonts-desktop-body-3);font-family:inherit;font-size:16px;white-space:pre-wrap;border:1px solid var(--definitions-colors-secondary-orange);border-radius:8px;box-shadow:var(--definitions-shadows-general)}.description[_ngcontent-%COMP%]{font:var(--definitions-textFonts-desktop-body-2);font-family:inherit;color:var(--definitions-colors-text-black)}.direction-buttons[_ngcontent-%COMP%]{display:flex;flex-direction:column;align-items:center;gap:16px;align-self:stretch;width:100%}.route-button-container[_ngcontent-%COMP%]{width:100%}.route-button[_ngcontent-%COMP%]{display:flex;padding:8px 16px;justify-content:center;align-items:center;gap:10px;align-self:stretch;background:var(--definitions-colors-primary-black);color:var(--definitions-colors-text-white);border:none;cursor:pointer;width:100%}.route-button[_ngcontent-%COMP%] span[_ngcontent-%COMP%]{font:var(--definitions-textFonts-desktop-button-2);font-family:inherit;font-size:16px;font-feature-settings:"liga" off,"clig" off}.driving-link[_ngcontent-%COMP%] a[_ngcontent-%COMP%]{color:var(--definitions-colors-secondary-blue);text-decoration:none;font:var(--definitions-textFonts-desktop-button-2);font-family:inherit;font-size:16px;font-feature-settings:"liga" off,"clig" off}.properties[_ngcontent-%COMP%]{display:flex;flex-direction:column;align-items:flex-start;gap:16px;width:100%}.separator[_ngcontent-%COMP%]{width:100%;height:1px;background:var(--definitions-colors-primary-100)}.address[_ngcontent-%COMP%], .phone[_ngcontent-%COMP%]{font:var(--definitions-textFonts-desktop-sub-1);font-family:inherit;font-size:16px;color:var(--definitions-colors-text-black)}.website[_ngcontent-%COMP%]{font:var(--definitions-textFonts-desktop-button-1);font-family:inherit;font-size:16px;font-feature-settings:"liga" off,"clig" off}.website[_ngcontent-%COMP%] a[_ngcontent-%COMP%]{color:var(--definitions-colors-secondary-blue);text-decoration:none}'],changeDetection:1})};var cm=class t{iconLibraryService=se(Ut);faArrowLeft=this.iconLibraryService.getIconDefinition("fas","arrow-left");static \u0275fac=function(n){return new(n||t)};static \u0275cmp=ht({type:t,selectors:[["button","backButton",""]],decls:3,vars:1,consts:[[3,"icon"]],template:function(n,o){n&1&&(Ve(0,"fa-icon",0),be(1,"span"),it(2,"Back"),Ee()),n&2&&We("icon",o.faArrowLeft);},dependencies:[tn],styles:['[_nghost-%COMP%]{display:flex;justify-content:center;align-items:center;gap:12px;color:var(--definitions-colors-secondary-blue);border:none;background:none}[_nghost-%COMP%]:hover{cursor:pointer}[_nghost-%COMP%] fa-icon[_ngcontent-%COMP%]{font-size:24px}[_nghost-%COMP%] span[_ngcontent-%COMP%]{color:var(--definitions-colors-secondary-blue);font:var(--definitions-textFonts-desktop-button-1);font-family:inherit;font-feature-settings:"liga" off,"clig" off;letter-spacing:-1px}'],changeDetection:1})};function qse(t,e){if(t&1&&Ve(0,"app-profile-view",5),t&2){let n=Ye(),o=Ca(6);We("place",o)("hideDeals",n.hideDeals());}}var $2=class t{onDestroy=new an;route=se(rs);logger=se(Tt);loadedDataService=se(In);sdkService=se(wo);mapService=se(tr);markerService=se(si);navigatorService=se(Wr);homeStateService=se(Xn);iconLibraryService=se(Ut);_profileId="";place=dt(null);mapReady=Yn(this.mapService.mapReady,{requireSync:true});hideDeals=Xe(()=>this.homeStateService.hideDeals());faArrowLeft=this.iconLibraryService.getIconDefinition("fas","arrow-left");constructor(){Ot(()=>{let e=this.place();if(e&&this.mapReady()){if(e.parentType==="Place"){let o=this.loadedDataService.parentPlace(),c=e.inFloors?.[0];if(o===void 0||o.mapvxId!==e.parentId){let m=this.loadedDataService.potentialParentPlaces().find(w=>w.mapvxId===e.parentId);m&&(this.loadedDataService.parentPlace.set(m),this.mapService.setParentPlace(m,()=>{c&&this.mapService.updateFloor(c);}));}else c&&this.mapService.updateFloor(c);}if(!this.markerService.hasMarker(e.mapvxId)){let o=vi(this.homeStateService.lastListedPlaces);o.length>0?this.markerService.addMarkers(o):this.markerService.addMarker(e);}this.markerService.selectMarker(e.mapvxId),setTimeout(()=>{this.mapService.updateCamera({center:e.position});},100);}});}ngOnInit(){this.addBackListener();let e=this.route.paramMap.pipe(Qt(n=>n.get("id")),mr(n=>n!==null),mr(n=>n!==this._profileId),sE(1));Oo([e,this.loadedDataService.getAvailablePlaces()]).pipe(ni(this.onDestroy),$r(([n,o])=>{this.logger.logEvent("page_view",{page_title:"Profile Page",page_location:`/profile/${n}`});let c=o.find(s=>s.mapvxId===n||s.clientId===n);return c?Gt(c):Un(this.sdkService.getPlaceDetail(n))})).subscribe({next:n=>{this._profileId!==n.mapvxId&&this.cleanOldProfile(),this._profileId=n.mapvxId,this.place.set(n),this.loadedDataService.updateInstitution(n.parentInstitutionId),this.homeStateService.selectedInstitution.set(n.parentInstitutionId),this.homeStateService.userAction.next({type:"show-place",data:{placeId:n.mapvxId,alias:n.clientId}});},error:n=>{this.logger.log("Error getting profile id",n);},complete:()=>{this.logger.log("Profile id complete");}});}ngOnDestroy(){this.removeBackListener(),this.cleanOldProfile(),this.onDestroy.next(),this.onDestroy.complete();}cleanOldProfile(){this._profileId!==""&&this.markerService.deselectMarker(this._profileId);}returnToHome(){this.homeStateService.userAction.next({type:"return-to-home",data:{filter:this.homeStateService.selectedFilter()}}),this.logger.logEvent("profile_back_clicked",{id:this.place()?.mapvxId||"",name:this.place()?.title||"",clientId:this.place()?.clientId||""}),this.navigatorService.navigateToHome();}backListener(e){this.logger.log("Back listener",e),this.returnToHome();}listener=e=>this.backListener(e);addBackListener(){globalThis.addEventListener("popstate",this.listener);}removeBackListener(){globalThis.removeEventListener("popstate",this.listener);}static \u0275fac=function(n){return new(n||t)};static \u0275cmp=ht({type:t,selectors:[["app-profile-screen"]],decls:10,vars:2,consts:[[1,"screen"],[1,"back-button"],["backButton","",3,"click"],[1,"profile-screen-content"],[1,"profile-info"],[3,"place","hideDeals"],[1,"map"]],template:function(n,o){if(n&1&&(be(0,"div",0)(1,"div",1)(2,"button",2),at("click",function(){return o.returnToHome()}),it(3,"Back"),Ee()(),be(4,"div",3)(5,"div",4),Ta(6),Et(7,qse,1,2,"app-profile-view",5),Ee(),be(8,"div",6),Ve(9,"app-map"),Ee()()()),n&2){we(6);let c=Fl(o.place());we(),It(c!==null?7:-1);}},dependencies:[_u,cm,j2],styles:[".screen[_ngcontent-%COMP%]{display:flex;flex-direction:column;gap:18px}.profile-screen-content[_ngcontent-%COMP%]{display:flex;width:100%}@container mapvx-container (width <= 1024px){.profile-screen-content[_ngcontent-%COMP%]{flex-direction:column-reverse}}@container mapvx-container (width <= 640px){.profile-screen-content[_ngcontent-%COMP%]{flex-direction:column-reverse}}.profile-info[_ngcontent-%COMP%]{display:flex;width:432px;flex-shrink:0}.profile-info[_ngcontent-%COMP%] app-profile-view[_ngcontent-%COMP%]{width:100%}@container mapvx-container (width <= 1024px){.profile-info[_ngcontent-%COMP%]{width:100%}}.map[_ngcontent-%COMP%]{width:100%;min-height:730px}@container mapvx-container (width <= 1024px){.map[_ngcontent-%COMP%]{height:730px}}@container mapvx-container (width <= 640px){.map[_ngcontent-%COMP%]{width:100%;min-height:unset;height:400px}}"]})};function Wse(t,e){if(t&1){let n=yn();be(0,"button",1),at("click",function(){cn(n);let c=Ye();return un(c.pauseRoute())}),Ve(1,"fa-icon",2),be(2,"span"),it(3,"Pause route"),Ee()();}if(t&2){let n=Ye();we(),We("icon",n.faPause);}}function Zse(t,e){if(t&1){let n=yn();be(0,"button",1),at("click",function(){cn(n);let c=Ye();return un(c.resumeRoute())}),Ve(1,"fa-icon",2),be(2,"span"),it(3,"Resume route"),Ee()();}if(t&2){let n=Ye();we(),We("icon",n.faPlay);}}function Yse(t,e){if(t&1){let n=yn();be(0,"button",1),at("click",function(){cn(n);let c=Ye();return un(c.nextStep())}),Ve(1,"fa-icon",2),be(2,"span"),it(3,"Next step"),Ee()();}if(t&2){let n=Ye();we(),We("icon",n.faNextStep);}}function Xse(t,e){if(t&1){let n=yn();be(0,"button",1),at("click",function(){cn(n);let c=Ye();return un(c.restartRoute())}),Ve(1,"fa-icon",2),be(2,"span"),it(3,"Restart route"),Ee()();}if(t&2){let n=Ye();we(),We("icon",n.faRestart);}}function Kse(t,e){}var H2=class t{logger=se(Tt);iconLibrary=se(Ut);routingService=se(So);restartRouteCallback=Ni();AnimationState=jv;animationStatus=Yn(this.routingService.animationStatusSubject,{initialValue:0});faPlay=this.iconLibrary.getIconDefinition("fas","play");faPause=this.iconLibrary.getIconDefinition("fas","pause");faRestart=this.iconLibrary.getIconDefinition("fas","rotate-right");faNextStep=this.iconLibrary.getIconDefinition("fas","chevron-right");nextStep(){this.logger.logEvent("route_button_clicked",{action:"next-step"}),this.routingService.animateNextStep();}pauseRoute(){this.logger.logEvent("route_button_clicked",{action:"pause"}),this.routingService.pauseRouteAnimation();}resumeRoute(){this.logger.logEvent("route_button_clicked",{action:"resume"}),this.routingService.resumeRouteAnimation();}restartRoute(){this.logger.logEvent("route_button_clicked",{action:"restart"}),this.routingService.restartRouteAnimation(),this.restartRouteCallback.emit();}static \u0275fac=function(n){return new(n||t)};static \u0275cmp=ht({type:t,selectors:[["app-route-control-button"]],outputs:{restartRouteCallback:"restartRouteCallback"},decls:5,vars:1,consts:[[1,"route-control-button"],[1,"route-control-button",3,"click"],[3,"icon"]],template:function(n,o){if(n&1&&Et(0,Wse,4,1,"button",0)(1,Zse,4,1,"button",0)(2,Yse,4,1,"button",0)(3,Xse,4,1,"button",0)(4,Kse,0,0),n&2){let c;It((c=o.animationStatus())===o.AnimationState.Playing?0:c===o.AnimationState.Paused?1:c===o.AnimationState.Stepping?2:c===o.AnimationState.Finished?3:4);}},dependencies:[tn],styles:["[_nghost-%COMP%]{position:absolute;top:20px;left:500px}@container mapvx-container (width <= 1024px){[_nghost-%COMP%]{top:90px;left:unset;right:20px}}.route-control-button[_ngcontent-%COMP%]{display:flex;width:180px;height:45px;justify-content:center;align-items:center;gap:10px;background:var(--definitions-colors-background-white);color:var(--definitions-colors-text-black);box-shadow:var(--definitions-shadows-general);border:none;cursor:pointer}@container mapvx-container (width <= 1024px){.route-control-button[_ngcontent-%COMP%]{width:45px}}.route-control-button[_ngcontent-%COMP%] fa-icon[_ngcontent-%COMP%]{font-size:16px}.route-control-button[_ngcontent-%COMP%] span[_ngcontent-%COMP%]{font:var(--definitions-textFonts-desktop-button-5);font-family:inherit}@container mapvx-container (width <= 1024px){.route-control-button[_ngcontent-%COMP%] span[_ngcontent-%COMP%]{display:none}}"],changeDetection:1})};function Qse(t,e){if(t&1&&(Ve(0,"fa-icon",3),be(1,"span",8),it(2,"Elevator"),Ee()),t&2){let n=Ye(2);We("icon",n.faCircleSmall);}}function Jse(t,e){if(t&1&&(be(0,"div",5),Ve(1,"fa-icon",3),be(2,"span",7),it(3),Ee(),Et(4,Qse,3,1),Ee()),t&2){let n=Ye(),o=Ca(13);we(),We("icon",n.faArrowsUpDown),we(2),ar(o.path),we(),It(o.byElevator?4:-1);}}function eae(t,e){if(t&1){let n=yn();be(0,"button",9),at("click",function(){cn(n);let c=Ye();return un(c.onStartRouteClick())}),Ve(1,"fa-icon",3),be(2,"span"),it(3,"Start Route"),Ee()();}if(t&2){let n=Ye();we(),We("icon",n.faArrowTopRight);}}var G2=class t{iconLibrary=se(Ut);loadedDataService=se(In);routingService=se(So);currentRoute=Wt.required();startRouteClick=Ni();animationStatus=Yn(this.routingService.animationStatusSubject,{initialValue:0});canStartRoute=Xe(()=>this.animationStatus()!==4);faCircleSmall=this.iconLibrary.getIconDefinition("fas","circle-small");faArrowTopRight=this.iconLibrary.getIconDefinition("fak","arrow-top-right");faArrowsUpDown=this.iconLibrary.getIconDefinition("fas","arrows-up-down");time=Xe(()=>{let e=this.currentRoute();return this.toMinutes(e.duration)});distance=Xe(()=>{let e=this.currentRoute();return Math.ceil(e.length*3.28084)});floorChangeSummary=Xe(()=>{let e=this.loadedDataService.parentPlace()?.innerFloors??[],n=_B(this.currentRoute());if(n.length===0||e.length===0)return;let o=[n[0].fromFloorId,...n.map(c=>c.toFloorId)].map(c=>vB(e,c));if(!o.includes(void 0))return {path:o.join(" \u2192 "),byElevator:n.every(c=>c.byElevator)}});toMinutes(e){return Math.ceil(e/60)}onStartRouteClick(){this.startRouteClick.emit();}static \u0275fac=function(n){return new(n||t)};static \u0275cmp=ht({type:t,selectors:[["app-route-info"]],inputs:{currentRoute:[1,"currentRoute"]},outputs:{startRouteClick:"startRouteClick"},decls:16,vars:7,consts:[[1,"route-info"],[1,"route-info-item"],[1,"route-info-item-label"],[3,"icon"],[1,"route-info-item-value"],[1,"floor-change"],[1,"start-route-button"],[1,"floor-change-path"],[1,"floor-change-mode"],[1,"start-route-button",3,"click"]],template:function(n,o){if(n&1&&(be(0,"div",0)(1,"div",1)(2,"span",2),it(3,"Time"),Ee(),Ve(4,"fa-icon",3),be(5,"span",4),it(6),Ee()(),be(7,"div",1)(8,"span",2),it(9,"Distance"),Ee(),Ve(10,"fa-icon",3),be(11,"span",4),it(12),Ee()()(),Ta(13),Et(14,Jse,5,3,"div",5),Et(15,eae,4,1,"button",6)),n&2){we(4),We("icon",o.faCircleSmall),we(2),br("",o.time()," min"),we(4),We("icon",o.faCircleSmall),we(2),br("",o.distance()," ft"),we();let c=Fl(o.floorChangeSummary());we(),It(c?14:-1),we(),It(o.canStartRoute()?15:-1);}},dependencies:[tn],styles:['[_nghost-%COMP%]{display:flex;flex-direction:column;gap:16px}.route-info[_ngcontent-%COMP%]{display:flex;justify-content:space-between;align-items:center;flex-wrap:wrap}.route-info-item[_ngcontent-%COMP%], .floor-change[_ngcontent-%COMP%]{display:flex;align-items:center;gap:10px;color:var(--definitions-colors-text-black)}.start-route-button[_ngcontent-%COMP%]{display:flex;margin-top:24px;padding:8px 16px;justify-content:center;align-items:center;gap:10px;background-color:var(--definitions-colors-primary-900);color:var(--definitions-colors-text-50);border:none;cursor:pointer;width:100%}.start-route-button[_ngcontent-%COMP%] span[_ngcontent-%COMP%]{font:var(--definitions-textFonts-desktop-button-2);font-family:inherit;font-feature-settings:"liga" off,"clig" off;line-height:15px}'],changeDetection:1})};var tae=new mt("",{factory:()=>CB}),CB="always";var nae=(()=>{class t{static \u0275fac=function(o){return new(o||t)};static \u0275mod=zs({type:t});static \u0275inj=Xo({})}return t})();var DB=(()=>{class t{static withConfig(n){return {ngModule:t,providers:[{provide:tae,useValue:n.callSetDisabledState??CB}]}}static \u0275fac=function(o){return new(o||t)};static \u0275mod=zs({type:t});static \u0275inj=Xo({imports:[nae]})}return t})();function rae(t,e){if(t&1){let n=yn();be(0,"button",5),at("click",function(){cn(n);let c=Ye();return un(c.clearSelectedPlace())}),Ve(1,"fa-icon",6),Ee();}if(t&2){let n=Ye();we(),We("icon",n.faXmark);}}function iae(t,e){if(t&1){let n=yn();be(0,"button",10),at("click",function(){cn(n);let c=Ye(2);return un(c.useCurrentLocation())}),be(1,"div",11),Ve(2,"fa-icon",6),Ee(),be(3,"div",12)(4,"div",13),it(5,"Use current location"),Ee()()();}if(t&2){let n=Ye(2);we(2),We("icon",n.faLocationArrow);}}function oae(t,e){if(t&1){let n=yn();be(0,"button",10),at("click",function(){let c=cn(n).$implicit,s=Ye(2);return un(s.selectPlace(c))}),be(1,"div",11),Ve(2,"fa-icon",6),Ee(),be(3,"div",12)(4,"div",13),it(5),Ee(),be(6,"div",14),it(7),Ee()()();}if(t&2){let n=e.$implicit,o=Ye(2);we(2),We("icon",o.faLocationDot),we(3),ar(n.title),we(2),ar(n.address);}}function sae(t,e){t&1&&(be(0,"div",9),it(1,"No results found"),Ee());}function aae(t,e){if(t&1&&(be(0,"div",4)(1,"div",7),Et(2,iae,6,1,"button",8),vr(3,oae,8,3,"button",8,vo),Et(5,sae,2,0,"div",9),Ee()()),t&2){let n=Ye();we(2),It(n.allowCurrentLocation()&&n.locationPermission()!=="denied"?2:-1),we(),_r(n.filteredPlaces()),we(2),It(n.filteredPlaces().length===0&&n.filterText().trim()?5:-1);}}var q2=class t{logger=se(Tt);locationService=se(vu);iconLibrary=se(Ut);places=Wt.required();initialSelectedPlace=Wt(null);allowCurrentLocation=Wt(false);placeholder=Wt("Set a starting point");selectedPlace=ii(()=>this.initialSelectedPlace());selectedPlaceChange=Ni();isDropdownOpen=dt(false);filterText=ii(()=>this.selectedPlace()?.title||"");filteredPlaces=Xe(()=>{let e=this.places(),n=this.filterText().toLowerCase().trim();return n?e.filter(o=>o.title?.toLowerCase().includes(n)||o.address?.toLowerCase().includes(n)):e});locationPermission=dt("prompt");faLocationDot=this.iconLibrary.getIconDefinition("fas","location-dot");faLocationArrow=this.iconLibrary.getIconDefinition("fas","location-arrow");faXmark=this.iconLibrary.getIconDefinition("fas","xmark");constructor(){this.checkLocationPermission();}checkLocationPermission(){this.locationService.checkLocationPermission().then(e=>{this.locationPermission.set(e);}).catch(e=>{this.logger.logWarning("Error checking location permission",e),this.locationPermission.set("denied");});}requestLocationPermission(){this.locationService.requestLocationPermission().then(e=>{this.locationPermission.set(e),e==="granted"&&this.getCurrentLocation();}).catch(e=>{this.logger.logWarning("Error requesting location permission",e),this.locationPermission.set("denied");});}getCurrentLocation(){this.locationService.getCurrentLocation().then(e=>{this.selectedPlace.set(e),this.selectedPlaceChange.emit(e);}).catch(e=>{this.logger.logWarning("Error getting current location",e);});}useCurrentLocation(){switch(this.locationPermission()){case "granted":this.getCurrentLocation();break;case "prompt":this.requestLocationPermission();break}}selectPlace(e){this.selectedPlace.set(e),this.isDropdownOpen.set(false),this.selectedPlaceChange.emit(e);}clearSelectedPlace(){this.selectedPlace.set(null),this.filterText.set(""),this.selectedPlaceChange.emit(null);}onInputFocus(){this.isDropdownOpen.set(true);}onInputBlur(){setTimeout(()=>{this.isDropdownOpen.set(false);},150);}onInputChange(e){let n=e.target;this.filterText.set(n.value),this.isDropdownOpen.set(true);}static \u0275fac=function(n){return new(n||t)};static \u0275cmp=ht({type:t,selectors:[["app-place-selector"]],inputs:{places:[1,"places"],initialSelectedPlace:[1,"initialSelectedPlace"],allowCurrentLocation:[1,"allowCurrentLocation"],placeholder:[1,"placeholder"]},outputs:{selectedPlaceChange:"selectedPlaceChange"},decls:5,vars:4,consts:[[1,"place-selector"],[1,"input-container"],["type","text","name","place-input",1,"place-input",3,"input","focus","blur","value","placeholder"],[1,"clear-button"],[1,"dropdown-container"],[1,"clear-button",3,"click"],[3,"icon"],[1,"dropdown-list"],["type","button",1,"place-option"],[1,"no-results"],["type","button",1,"place-option",3,"click"],[1,"place-icon"],[1,"place-info"],[1,"place-title"],[1,"place-address"]],template:function(n,o){n&1&&(be(0,"div",0)(1,"div",1)(2,"input",2),at("input",function(s){return o.onInputChange(s)})("focus",function(){return o.onInputFocus()})("blur",function(){return o.onInputBlur()}),Ee(),Et(3,rae,2,1,"button",3),Ee(),Et(4,aae,6,2,"div",4),Ee()),n&2&&(we(2),We("value",o.filterText())("placeholder",o.placeholder()),we(),It(o.selectedPlace()?3:-1),we(),It(o.isDropdownOpen()?4:-1));},dependencies:[DB,tn],styles:['[_nghost-%COMP%]{width:100%}.place-selector[_ngcontent-%COMP%]{position:relative;width:100%}.input-container[_ngcontent-%COMP%]{width:100%;display:flex}.place-input[_ngcontent-%COMP%]{width:100%;border:none;font:var(--definitions-textFonts-desktop-button-1);font-family:inherit;font-feature-settings:"liga" off,"clig" off;letter-spacing:-1px;text-overflow:ellipsis;outline:none;color:var(--definitions-colors-text-black)}.place-input[_ngcontent-%COMP%]::placeholder{color:var(--definitions-colors-primary-300)}.clear-button[_ngcontent-%COMP%]{background:none;border:none;cursor:pointer;display:flex;align-items:center;justify-content:center;font-size:16px;color:var(--definitions-colors-text-900)}.dropdown-container[_ngcontent-%COMP%]{position:absolute;top:100%;left:0;right:0;z-index:10;margin-top:4px}.dropdown-list[_ngcontent-%COMP%]{background:var(--definitions-colors-background-50);border-radius:8px;box-shadow:var(--definitions-shadows-general);max-height:300px;overflow-y:auto;border:1px solid var(--definitions-colors-gray-200)}.place-option[_ngcontent-%COMP%]{display:flex;align-items:flex-start;gap:4px;padding:15px 24px;cursor:pointer;transition:background-color .2s ease;border-bottom:1px solid #f5f5f5;background:none;border:none;width:100%;text-align:left}.place-option[_ngcontent-%COMP%]:last-child{border-bottom:none}.place-option[_ngcontent-%COMP%]:hover{background-color:#f8f9fa}.place-option[_ngcontent-%COMP%]:active{background-color:#e9ecef}.place-option[_ngcontent-%COMP%]:focus{outline:2px solid #5D5D5D;outline-offset:-2px}.place-icon[_ngcontent-%COMP%]{flex-shrink:0;width:19.341px;height:19.341px;margin-top:2px;color:var(--definitions-colors-primary-600)}.place-info[_ngcontent-%COMP%]{flex:1;display:flex;flex-direction:column;gap:4px;min-width:0}.place-title[_ngcontent-%COMP%]{font:var(--definitions-textFonts-desktop-button-3);font-family:inherit;color:var(--definitions-colors-text-900);word-wrap:break-word}.place-address[_ngcontent-%COMP%]{font:var(--definitions-textFonts-desktop-body-3);font-family:inherit;color:var(--definitions-colors-text-800);word-wrap:break-word}.no-results[_ngcontent-%COMP%]{padding:20px 24px;text-align:center;font:var(--definitions-textFonts-desktop-body-3);font-family:inherit;color:var(--definitions-colors-text-800)}@media(width<=768px){.place-option[_ngcontent-%COMP%]{padding:12px 20px}.place-title[_ngcontent-%COMP%]{font-size:15px}.place-address[_ngcontent-%COMP%]{font-size:13px}}'],changeDetection:1})};var W2=class t{logger=se(Tt);iconLibrary=se(Ut);places=Wt.required();initialDestination=Wt(null);originPlace=dt(null);destinationPlace=ii(()=>this.initialDestination());originSelected=Ni();destinationSelected=Ni();swapPlaces=Ni();clearDestination=Ni();locationPermission=dt("prompt");faLocationDot=this.iconLibrary.getIconDefinition("fas","location-dot");faEllipsisVertical=this.iconLibrary.getIconDefinition("fas","ellipsis-vertical");faArrowsRetweet=this.iconLibrary.getIconDefinition("fas","arrows-retweet");canSwapPlaces=Xe(()=>uC(this.originPlace())&&uC(this.destinationPlace()));onOriginSelected(e){this.originSelected.emit(e),this.originPlace.set(e);}onDestinationSelected(e){if(Bs(e)){this.logger.logWarning("Current location is not allowed as destination");return}this.destinationSelected.emit(e),this.destinationPlace.set(e);}onSwapPlaces(){let e=this.originPlace(),n=this.destinationPlace();if(Bs(e)){this.logger.logWarning("Should not be possible to swap places with current location as origin");return}this.originPlace.set(n),this.originSelected.emit(n),this.destinationPlace.set(e),this.destinationSelected.emit(e);}static \u0275fac=function(n){return new(n||t)};static \u0275cmp=ht({type:t,selectors:[["app-route-selector"]],inputs:{places:[1,"places"],initialDestination:[1,"initialDestination"]},outputs:{originSelected:"originSelected",destinationSelected:"destinationSelected",swapPlaces:"swapPlaces",clearDestination:"clearDestination"},decls:20,vars:10,consts:[[1,"route-selector"],[1,"routing-option","origin"],[1,"place-info"],[1,"place-icon"],["xmlns","http://www.w3.org/2000/svg","width","36","height","36","viewBox","0 0 36 36","fill","none"],["width","36","height","36","rx","18","fill","#8DC8FF"],["d","M29.2517 17.7595C29.1117 23.9741 23.9602 28.8986 17.7456 28.7586C11.5309 28.6185 6.60648 23.4671 6.74649 17.2524C6.8865 11.0378 12.038 6.11332 18.2526 6.25333C24.4673 6.39334 29.3917 11.5448 29.2517 17.7595Z","fill","#2C57A0"],["d","M13.5364 22.4764C13.4259 22.5279 13.3135 22.5415 13.199 22.5173C13.0847 22.4932 12.9902 22.4373 12.9155 22.3496C12.8298 22.2721 12.7772 22.1766 12.7577 22.0629C12.7384 21.9495 12.7519 21.8395 12.7982 21.7327L17.6404 11.5662C17.7437 11.3532 17.9102 11.2493 18.1399 11.2545C18.3697 11.2597 18.5313 11.371 18.6249 11.5884L23.0044 21.9626C23.0458 22.0714 23.0543 22.182 23.03 22.2944C23.0054 22.407 22.9485 22.5001 22.8594 22.5736C22.7808 22.6579 22.6839 22.7095 22.5687 22.7283C22.4532 22.7475 22.3415 22.7288 22.2335 22.6723L17.9278 20.6691L13.5364 22.4764ZM14.4251 20.9295L17.954 19.5064L21.4153 21.087L18.0981 13.1117L14.4251 20.9295Z","fill","white"],[3,"selectedPlaceChange","places","initialSelectedPlace","allowCurrentLocation"],[1,"connector-line"],[1,"connector-dots"],[3,"icon"],[1,"connector-line-element"],["type","button",1,"swap-button",3,"click","disabled"],[1,"routing-option","destination"],[3,"selectedPlaceChange","places","initialSelectedPlace","placeholder"]],template:function(n,o){n&1&&(be(0,"div",0)(1,"div",1)(2,"div",2)(3,"div",3),Sb(),be(4,"svg",4),Ve(5,"rect",5)(6,"path",6)(7,"path",7),Ee()(),Eb(),be(8,"app-place-selector",8),at("selectedPlaceChange",function(s){return o.onOriginSelected(s)}),Ee()()(),be(9,"div",9)(10,"div",10),Ve(11,"fa-icon",11),Ee(),Ve(12,"div",12),be(13,"button",13),at("click",function(){return o.onSwapPlaces()}),Ve(14,"fa-icon",11),Ee()(),be(15,"div",14)(16,"div",2)(17,"div",3),Ve(18,"fa-icon",11),Ee(),be(19,"app-place-selector",15),at("selectedPlaceChange",function(s){return o.onDestinationSelected(s)}),Ee()()()()),n&2&&(we(8),We("places",o.places())("initialSelectedPlace",o.originPlace())("allowCurrentLocation",true),we(3),We("icon",o.faEllipsisVertical),we(2),We("disabled",!o.canSwapPlaces()),we(),We("icon",o.faArrowsRetweet),we(4),We("icon",o.faLocationDot),we(),We("places",o.places())("initialSelectedPlace",o.destinationPlace())("placeholder","Select a destination"));},dependencies:[q2,tn],styles:['.route-selector[_ngcontent-%COMP%]{display:flex;flex-direction:column;gap:5px;position:relative;width:100%;box-sizing:border-box}.routing-option[_ngcontent-%COMP%]{display:flex;gap:10px;align-items:center;padding:0 40px 0 0;box-sizing:border-box;width:100%}.place-info[_ngcontent-%COMP%]{display:flex;gap:10px;align-items:center;flex:1;min-width:0}.place-icon[_ngcontent-%COMP%]{flex-shrink:0;width:36px;height:36px;display:flex;align-items:center;justify-content:center}.destination[_ngcontent-%COMP%] .place-icon[_ngcontent-%COMP%]{color:var(--definitions-colors-text-black)}.connector-line[_ngcontent-%COMP%]{display:flex;gap:8px;align-items:center;width:100%;position:relative}.connector-dots[_ngcontent-%COMP%]{flex-shrink:0;width:36px;height:36px;display:flex;align-items:center;justify-content:center}.connector-dots[_ngcontent-%COMP%] fa-icon[_ngcontent-%COMP%]{font-size:20px;color:#5d5d5d}.connector-line-element[_ngcontent-%COMP%]{flex:1;height:1px;background:#e0e0e0;position:relative}.connector-line-element[_ngcontent-%COMP%]:before{content:"";position:absolute;top:50%;left:0;right:0;height:1px;background:repeating-linear-gradient(to right,#e0e0e0 0,#e0e0e0 4px,transparent 4px,transparent 8px);transform:translateY(-50%)}.swap-button[_ngcontent-%COMP%]{flex-shrink:0;width:32px;height:25px;background:none;border:none;cursor:pointer;display:flex;align-items:center;justify-content:center;border-radius:4px;transition:background-color .2s ease}.swap-button[_ngcontent-%COMP%]:disabled{opacity:.5;cursor:not-allowed}.swap-button[_ngcontent-%COMP%]:hover:not(:disabled){background-color:#f5f5f5}.swap-button[_ngcontent-%COMP%] fa-icon[_ngcontent-%COMP%]{font-size:16px;color:#5d5d5d}.clear-button[_ngcontent-%COMP%]{flex-shrink:0;width:20px;height:20px;background:none;border:none;cursor:pointer;display:flex;align-items:center;justify-content:center;border-radius:50%;transition:background-color .2s ease}.clear-button[_ngcontent-%COMP%]:hover{background-color:#f5f5f5}.clear-button[_ngcontent-%COMP%] fa-icon[_ngcontent-%COMP%]{font-size:12px;color:#666}.select-destination-button[_ngcontent-%COMP%]{background:none;border:none;cursor:pointer;padding:8px 12px;border-radius:6px;transition:background-color .2s ease;flex:1;text-align:left}.select-destination-button[_ngcontent-%COMP%]:hover{background-color:#f8f9fa}.select-destination-button[_ngcontent-%COMP%] .place-label[_ngcontent-%COMP%]{font-family:Open Sans,sans-serif;font-weight:600;font-size:20px;line-height:1;color:#cbcbcb;font-variation-settings:"wdth" 100;letter-spacing:-1px}.destination-selector[_ngcontent-%COMP%]{position:absolute;top:81px;left:84.5px;width:310px;z-index:1000;background:#fff;box-shadow:0 4px 4px #00000040;border-radius:8px;overflow:hidden}@media(width<=768px){.route-selector[_ngcontent-%COMP%]{padding:20px 16px}.place-text[_ngcontent-%COMP%]{font-size:18px}.place-icon[_ngcontent-%COMP%]{width:32px;height:32px}.place-icon[_ngcontent-%COMP%] fa-icon[_ngcontent-%COMP%]{font-size:18px}.destination-selector[_ngcontent-%COMP%]{left:16px;right:16px;width:auto}}'],changeDetection:1})};function lae(t,e){if(t&1&&Ve(0,"fa-icon",2),t&2){Ye(2);let n=Ca(0);We("icon",n.icon);}}function cae(t,e){if(t&1&&(be(0,"div",1),Et(1,lae,1,1,"fa-icon",2),be(2,"span",3),it(3),Ee()()),t&2){Ye();let n=Ca(0);An("route-step-floor-change",n.icon!==void 0),we(),It(n.icon?1:-1),we(2),ar(n.text);}}var Z2=class t{iconLibrary=se(Ut);routingService=se(So);loadedDataService=se(In);currentStep=Yn(this.routingService.currentStepSubject,{initialValue:null});faArrowUp=this.iconLibrary.getIconDefinition("fas","arrow-up");faArrowDown=this.iconLibrary.getIconDefinition("fas","arrow-down");instruction=Xe(()=>{let e=this.currentStep();if(!e)return;let n=this.loadedDataService.parentPlace()?.innerFloors??[];return this.getFloorChangeInstruction(e,n)??this.getPlainInstruction(e)});getFloorChangeInstruction(e,n){if(!mM(e))return;let o=n.find(I=>I.key===e.startInsideFloor),c=n.find(I=>I.key===e.endInsideFloor);if(!o||!c)return;let s=c.level>o.level,m=s?"up":"down";return {text:e.elevatorStep?`Take the elevator ${m} to ${am(c)}`:`Go ${m} to ${am(c)}`,icon:s?this.faArrowUp:this.faArrowDown}}getPlainInstruction(e){let n=e.plainInstruction?.trim();return n?{text:n}:void 0}static \u0275fac=function(n){return new(n||t)};static \u0275cmp=ht({type:t,selectors:[["app-route-step"]],decls:2,vars:2,consts:[[1,"route-step",3,"route-step-floor-change"],[1,"route-step"],[3,"icon"],[1,"route-step-text"]],template:function(n,o){if(n&1&&(Ta(0),Et(1,cae,4,4,"div",0)),n&2){let c=Fl(o.instruction());we(),It(c?1:-1);}},dependencies:[tn],styles:[".route-step[_ngcontent-%COMP%]{display:flex;align-items:center;gap:10px;padding:10px 16px;border-radius:16px;background-color:var(--definitions-colors-background-white);box-shadow:var(--definitions-shadows-general);color:var(--definitions-colors-text-black)}.route-step-floor-change[_ngcontent-%COMP%]{background-color:var(--definitions-colors-secondary-orange);color:var(--definitions-colors-text-50)}.route-step-text[_ngcontent-%COMP%]{font-family:inherit}"],changeDetection:1})};function uae(t,e){if(t&1){let n=yn();be(0,"div",6)(1,"app-route-info",9),at("startRouteClick",function(){cn(n);let c=Ye();return un(c.startStepAnimation())}),Ee()();}if(t&2){Ye();let n=Ca(8);we(),We("currentRoute",n);}}var Y2=class t{routeId="";route=se(rs);logger=se(Tt);navigatorService=se(Wr);loadedDataService=se(In);mapService=se(tr);markerService=se(si);homeStateService=se(Xn);routingService=se(So);mapReady=Yn(this.mapService.mapReady,{requireSync:true});places=Yn(Oo([this.loadedDataService.getAvailablePlaces(),this.loadedDataService.getInstitutionId()]).pipe(Qt(([e,n])=>e.filter(o=>o.parentInstitutionId===n))),{initialValue:[]});originPoint=dt(null);destinationPlace=ii(()=>this.initialDestination());initialDestination=dt(null);currentRoute=dt(null);constructor(){this.routeId=this.route.snapshot.params.id||"unknown",this.logger.logEvent("page_view",{page_title:"Route Page",page_location:`/route/${this.routeId}`}),Ot(()=>{let e=this.places();if(e.length>0){let n=e.find(o=>o.mapvxId===this.routeId||o.clientId===this.routeId);n&&this.initialDestination.set(n);}}),Ot(()=>{let e=this.originPoint(),n=this.destinationPlace();if(this.mapReady()){if(this.markerService.removeAllMarkers(),e&&n){this.markerService.addOriginMarker(e.position),this.markerService.addDestinationMarker(n);return}this.markerService.addRouteMarkers(vi(this.homeStateService.lastListedPlaces)),n&&(this.markerService.hasMarker(n.mapvxId)||this.markerService.addRouteMarker(n),this.markerService.selectMarker(n.mapvxId),setTimeout(()=>{this.mapService.updateCamera({center:n.position});},100));}}),Ot(e=>{let n=this.originPoint(),o=this.destinationPlace();if(!n||!o||!this.mapReady())return;let c=false;e(()=>{c=true,this.currentRoute.set(null),this.routingService.removeRoute();}),this.logger.logEvent("route_selected",{originId:Bs(n)?"current-location":n.mapvxId,originName:n.title,destinationId:o.mapvxId,destinationName:o.title,destinationClientId:o.clientId||"",originClientId:Bs(n)?"":n.clientId||""}),Promise.all([this.mapService.waitForParentPlaceReady(),this.routingService.getRoute(n,o)]).then(([,s])=>{c||(this.currentRoute.set(s),this.routingService.startAnimatingRoute(s),this.fitMapToRoute(n,o,s));}).catch(s=>{this.logger.logWarning("Error getting route",s);});});}returnToProfile(){this.navigatorService.navigateToProfile(this.routeId);let e=this.originPoint(),n=this.destinationPlace();this.logger.logEvent("route_back_clicked",{destinationId:n?.mapvxId||"",destinationName:n?.title||"",destinationClientId:n?.clientId||"",originId:Bs(e)?"current-location":e?.mapvxId||"",originName:e?.title||"",originClientId:Bs(e)?"":e?.clientId||""});}onDestinationSelected(e){this.destinationPlace.set(e);}onOriginSelected(e){this.originPoint.set(e);}startStepAnimation(){let e=this.currentRoute();e&&(this.logger.logEvent("route_button_clicked",{action:"start"}),this.routingService.removeRoute(),this.routingService.startSteppingRoute(e));}fitMapToRoute(e,n,o){let c=e?.position??this.originPoint()?.position,s=n?.position??this.destinationPlace()?.position,m=o??this.currentRoute(),w=document.querySelector(".route-related-components");if(c&&s&&m&&w&&this.mapReady()){let I=getComputedStyle(w),P=Number.parseInt(I.getPropertyValue("--padding-top")),L=Number.parseInt(I.getPropertyValue("--padding-left"));setTimeout(()=>{this.mapService.fitRoute(c,s,m,{padding:{top:P,left:L,right:70,bottom:50}});},100);}}static \u0275fac=function(n){return new(n||t)};static \u0275cmp=ht({type:t,selectors:[["app-route-screen"]],decls:13,vars:4,consts:[[1,"route-screen"],[1,"back-button"],["backButton","",3,"click"],[1,"route-screen-content"],[1,"route-related-components"],[3,"originSelected","destinationSelected","places","initialDestination"],[1,"route-info"],[1,"map"],[3,"restartRouteCallback"],[3,"startRouteClick","currentRoute"]],template:function(n,o){if(n&1&&(be(0,"div",0)(1,"div",1)(2,"button",2),at("click",function(){return o.returnToProfile()}),it(3,"Back"),Ee()(),be(4,"div",3)(5,"div",4)(6,"app-route-selector",5),at("originSelected",function(s){return o.onOriginSelected(s)})("destinationSelected",function(s){return o.onDestinationSelected(s)}),Ee(),Ve(7,"app-route-step"),Ta(8),Et(9,uae,2,1,"div",6),Ee(),be(10,"div",7)(11,"app-map")(12,"app-route-control-button",8),at("restartRouteCallback",function(){return o.fitMapToRoute()}),Ee()()()()()),n&2){we(6),We("places",o.places())("initialDestination",o.initialDestination()),we(2);let c=Fl(o.currentRoute());we(),It(c!==null?9:-1);}},dependencies:[cm,_u,W2,G2,Z2,H2],styles:[".route-screen-content[_ngcontent-%COMP%]{position:relative}.route-related-components[_ngcontent-%COMP%]{--padding-top: 130;--padding-left: 450;position:absolute;top:0;left:0;width:450px;box-sizing:border-box;z-index:1;display:flex;flex-direction:column;gap:40px;padding:40px 38px;background-color:var(--definitions-colors-background-white)}@container mapvx-container (width <= 1024px){.route-related-components[_ngcontent-%COMP%]{--padding-top: 70;--padding-left: 50;position:unset;width:100%}}.map[_ngcontent-%COMP%]{width:100%;height:820px}"]})};var AB=[{path:"",component:I2,children:[{path:"list",redirectTo:"",pathMatch:"full"},{path:"",component:O2},{path:"search",component:F2}]},{path:"profile/:id",component:$2},{path:"route/:id",component:Y2},{path:"**",redirectTo:""}];var X2=class{handleError(e){console.error("CustomErrorHandler",e);}};var K2=class t extends Da{_path="";_baseHref;_popStateListeners=[];constructor(){super(),this._baseHref=this.getBaseHref();}path(){return this._path}prepareExternalUrl(e){return this._baseHref+"#"+e}pushState(e,n,o,c){this._updatePath(e,o,c);}replaceState(e,n,o,c){this._updatePath(e,o,c);}forward(){}back(){}getState(){return null}historyGo(e){}onPopState(e){this._popStateListeners.push(e);}getBaseHref(){return typeof document<"u"?document.querySelector("base")?.href??"/":"/"}_updatePath(e,n,o){this._path=n+(o?"?"+o:""),this._notifyPopState(e,n);}_notifyPopState(e,n){let o={type:"popstate",state:e,url:n,pop:true};this._popStateListeners.forEach(c=>{try{c(o);}catch(s){console.error("Error in popstate listener:",s);}});}getCurrentPath(){return this._path}setInitialPath(e){this._path=e;}static \u0275fac=function(n){return new(n||t)};static \u0275prov=ct({token:t,factory:t.\u0275fac,providedIn:"root"})};var MB={providers:[{provide:yo,useClass:X2},OT(),FC(AB),{provide:Da,useClass:K2},lb(T4.forRoot(Ly,[{command:"config",values:[Ly,{send_page_view:false}]}]))]};cC(MB).then(t=>{let e=fL(E2,{injector:t.injector});customElements.define("mapvx-website",e);}).catch(t=>console.error(t));
2000
2000
  /*! Bundled license information:
2001
2001
 
2002
2002
  maplibre-gl/dist/maplibre-gl.js: