@mapvx/website-component 0.8.0 → 0.8.1

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
@@ -1341,7 +1341,7 @@ In order to be iterable, non-array objects must have a [Symbol.iterator]() metho
1341
1341
  `);i.setAttribute(Fh,""),i.innerHTML=b}};function L3(t){t()}function UP(t,r){var i=typeof r=="function"?r:g_;if(t.length===0)i();else{var l=L3;Cn.mutateApproach===b7&&(l=xd.requestAnimationFrame||L3),l(function(){var u=pB(),o=Ex.begin("mutate");t.map(u),o(),i()})}}var Dx=!1;function $P(){Dx=!0}function mx(){Dx=!1}var b_=null;function N3(t){if(_3&&Cn.observeMutations){var r=t.treeCallback,i=r===void 0?g_:r,l=t.nodeCallback,u=l===void 0?g_:l,o=t.pseudoElementsCallback,b=o===void 0?g_:o,M=t.observeMutationsRoot,P=M===void 0?xi:M;b_=new _3(function(Z){if(!Dx){var q=Cd();xp(Z).forEach(function(N){if(N.type==="childList"&&N.addedNodes.length>0&&!O3(N.addedNodes[0])&&(Cn.searchPseudoElements&&b(N.target),i(N.target)),N.type==="attributes"&&N.target.parentNode&&Cn.searchPseudoElements&&b([N.target],!0),N.type==="attributes"&&O3(N.target)&&~E7.indexOf(N.attributeName))if(N.attributeName==="class"&&hB(N.target)){var X=S_(wx(N.target)),K=X.prefix,Q=X.iconName;N.target.setAttribute(_x,K||q),Q&&N.target.setAttribute(bx,Q)}else fB(N.target)&&u(N.target)})}}),du&&b_.observe(P,{childList:!0,attributes:!0,characterData:!0,subtree:!0})}}function vB(){b_&&b_.disconnect()}function _B(t){var r=t.getAttribute("style"),i=[];return r&&(i=r.split(";").reduce(function(l,u){var o=u.split(":"),b=o[0],M=o.slice(1);return b&&M.length>0&&(l[b]=M.join(":").trim()),l},{})),i}function bB(t){var r=t.getAttribute("data-prefix"),i=t.getAttribute("data-icon"),l=t.innerText!==void 0?t.innerText.trim():"",u=S_(wx(t));return u.prefix||(u.prefix=Cd()),r&&i&&(u.prefix=r,u.iconName=i),u.iconName&&u.prefix||(u.prefix&&l.length>0&&(u.iconName=H7(u.prefix,t.innerText)||Sx(u.prefix,TP(t.innerText))),!u.iconName&&Cn.autoFetchSvg&&t.firstChild&&t.firstChild.nodeType===Node.TEXT_NODE&&(u.iconName=t.firstChild.data)),u}function wB(t){var r=xp(t.attributes).reduce(function(i,l){return i.name!=="class"&&i.name!=="style"&&(i[l.name]=l.value),i},{});return r}function xB(){return{iconName:null,prefix:null,transform:yc,symbol:!1,mask:{iconName:null,prefix:null,rest:[]},maskId:null,extra:{classes:[],styles:{},attributes:{}}}}function F3(t){var r=arguments.length>1&&arguments[1]!==void 0?arguments[1]:{styleParser:!0},i=bB(t),l=i.iconName,u=i.prefix,o=i.rest,b=wB(t),M=ux("parseNodeAttributes",{},t),P=r.styleParser?_B(t):[];return Lt({iconName:l,prefix:u,transform:yc,mask:{iconName:null,prefix:null,rest:[]},maskId:null,symbol:!1,extra:{classes:o,styles:P,attributes:b}},M)}var CB=Fl.styles;function HP(t){var r=Cn.autoReplaceSvg==="nest"?F3(t,{styleParser:!1}):F3(t);return~r.extra.classes.indexOf(xP)?Sd("generateLayersText",t,r):Sd("generateSvgReplacementMutation",t,r)}function SB(){return[].concat(zl(fP),zl(pP))}function z3(t){var r=arguments.length>1&&arguments[1]!==void 0?arguments[1]:null;if(!du)return Promise.resolve();var i=xi.documentElement.classList,l=function(N){return i.add("".concat(x3,"-").concat(N))},u=function(N){return i.remove("".concat(x3,"-").concat(N))},o=Cn.autoFetchSvg?SB():J3.concat(Object.keys(CB));o.includes("fa")||o.push("fa");var b=[".".concat(xP,":not([").concat(Fh,"])")].concat(o.map(function(q){return".".concat(q,":not([").concat(Fh,"])")})).join(", ");if(b.length===0)return Promise.resolve();var M=[];try{M=xp(t.querySelectorAll(b))}catch{}if(M.length>0)l("pending"),u("complete");else return Promise.resolve();var P=Ex.begin("onTree"),Z=M.reduce(function(q,N){try{var X=HP(N);X&&q.push(X)}catch(K){_P||K.name==="MissingIcon"&&console.error(K)}return q},[]);return new Promise(function(q,N){Promise.all(Z).then(function(X){UP(X,function(){l("active"),l("complete"),u("pending"),typeof r=="function"&&r(),P(),q()})}).catch(function(X){P(),N(X)})})}function IB(t){var r=arguments.length>1&&arguments[1]!==void 0?arguments[1]:null;HP(t).then(function(i){i&&UP([i],r)})}function EB(t){return function(r){var i=arguments.length>1&&arguments[1]!==void 0?arguments[1]:{},l=(r||{}).icon?r:dx(r||{}),u=i.mask;return u&&(u=(u||{}).icon?u:dx(u||{})),t(l,Lt(Lt({},i),{},{mask:u}))}}var DB=function(r){var i=arguments.length>1&&arguments[1]!==void 0?arguments[1]:{},l=i.transform,u=l===void 0?yc:l,o=i.symbol,b=o===void 0?!1:o,M=i.mask,P=M===void 0?null:M,Z=i.maskId,q=Z===void 0?null:Z,N=i.classes,X=N===void 0?[]:N,K=i.attributes,Q=K===void 0?{}:K,te=i.styles,le=te===void 0?{}:te;if(r){var j=r.prefix,re=r.iconName,ve=r.icon;return I_(Lt({type:"icon"},r),function(){return zh("beforeDOMElementCreation",{iconDefinition:r,params:i}),Ix({icons:{main:hx(ve),mask:P?hx(P.icon):{found:!1,width:null,height:null,icon:{}}},prefix:j,iconName:re,transform:Lt(Lt({},yc),u),symbol:b,maskId:q,extra:{attributes:Q,styles:le,classes:X}})})}},TB={mixout:function(){return{icon:EB(DB)}},hooks:function(){return{mutationObserverCallbacks:function(i){return i.treeCallback=z3,i.nodeCallback=IB,i}}},provides:function(r){r.i2svg=function(i){var l=i.node,u=l===void 0?xi:l,o=i.callback,b=o===void 0?function(){}:o;return z3(u,b)},r.generateSvgReplacementMutation=function(i,l){var u=l.iconName,o=l.prefix,b=l.transform,M=l.symbol,P=l.mask,Z=l.maskId,q=l.extra;return new Promise(function(N,X){Promise.all([fx(u,o),P.iconName?fx(P.iconName,P.prefix):Promise.resolve({found:!1,width:512,height:512,icon:{}})]).then(function(K){var Q=w_(K,2),te=Q[0],le=Q[1];N([i,Ix({icons:{main:te,mask:le},prefix:o,iconName:u,transform:b,symbol:M,maskId:Z,extra:q,watchable:!0})])}).catch(X)})},r.generateAbstractIcon=function(i){var l=i.children,u=i.attributes,o=i.main,b=i.transform,M=i.styles,P=x_(M);P.length>0&&(u.style=P);var Z;return xx(b)&&(Z=Sd("generateAbstractTransformGrouping",{main:o,transform:b,containerWidth:o.width,iconWidth:o.width})),l.push(Z||o.icon),{children:l,attributes:u}}}},MB={mixout:function(){return{layer:function(i){var l=arguments.length>1&&arguments[1]!==void 0?arguments[1]:{},u=l.classes,o=u===void 0?[]:u;return I_({type:"layer"},function(){zh("beforeDOMElementCreation",{assembler:i,params:l});var b=[];return i(function(M){Array.isArray(M)?M.map(function(P){b=b.concat(P.abstract)}):b=b.concat(M.abstract)}),[{tag:"span",attributes:{class:["".concat(Cn.cssPrefix,"-layers")].concat(zl(o)).join(" ")},children:b}]})}}}},PB={mixout:function(){return{counter:function(i){var l=arguments.length>1&&arguments[1]!==void 0?arguments[1]:{},u=l.title,o=u===void 0?null:u,b=l.classes,M=b===void 0?[]:b,P=l.attributes,Z=P===void 0?{}:P,q=l.styles,N=q===void 0?{}:q;return I_({type:"counter",content:i},function(){return zh("beforeDOMElementCreation",{content:i,params:l}),lB({content:i.toString(),title:o,extra:{attributes:Z,styles:N,classes:["".concat(Cn.cssPrefix,"-layers-counter")].concat(zl(M))}})})}}}},AB={mixout:function(){return{text:function(i){var l=arguments.length>1&&arguments[1]!==void 0?arguments[1]:{},u=l.transform,o=u===void 0?yc:u,b=l.classes,M=b===void 0?[]:b,P=l.attributes,Z=P===void 0?{}:P,q=l.styles,N=q===void 0?{}:q;return I_({type:"text",content:i},function(){return zh("beforeDOMElementCreation",{content:i,params:l}),k3({content:i,transform:Lt(Lt({},yc),o),extra:{attributes:Z,styles:N,classes:["".concat(Cn.cssPrefix,"-layers-text")].concat(zl(M))}})})}}},provides:function(r){r.generateLayersText=function(i,l){var u=l.transform,o=l.extra,b=null,M=null;if(K3){var P=parseInt(getComputedStyle(i).fontSize,10),Z=i.getBoundingClientRect();b=Z.width/P,M=Z.height/P}return Promise.resolve([i,k3({content:i.innerHTML,width:b,height:M,transform:u,extra:o,watchable:!0})])}}},GP=new RegExp('"',"ug"),j3=[1105920,1112319],B3=Lt(Lt(Lt(Lt({},{FontAwesome:{normal:"fas",400:"fas"}}),_j),v7),Tj),gx=Object.keys(B3).reduce(function(t,r){return t[r.toLowerCase()]=B3[r],t},{}),kB=Object.keys(gx).reduce(function(t,r){var i=gx[r];return t[r]=i[900]||zl(Object.entries(i))[0][1],t},{});function RB(t){var r=t.replace(GP,"");return TP(zl(r)[0]||"")}function OB(t){var r=t.getPropertyValue("font-feature-settings").includes("ss01"),i=t.getPropertyValue("content"),l=i.replace(GP,""),u=l.codePointAt(0),o=u>=j3[0]&&u<=j3[1],b=l.length===2?l[0]===l[1]:!1;return o||b||r}function LB(t,r){var i=t.replace(/^['"]|['"]$/g,"").toLowerCase(),l=parseInt(r),u=isNaN(l)?"normal":l;return(gx[i]||{})[u]||kB[i]}function V3(t,r){var i="".concat(_7).concat(r.replace(":","-"));return new Promise(function(l,u){if(t.getAttribute(i)!==null)return l();var o=xp(t.children),b=o.filter(function(Me){return Me.getAttribute(sx)===r})[0],M=xd.getComputedStyle(t,r),P=M.getPropertyValue("font-family"),Z=P.match(S7),q=M.getPropertyValue("font-weight"),N=M.getPropertyValue("content");if(b&&!Z)return t.removeChild(b),l();if(Z&&N!=="none"&&N!==""){var X=M.getPropertyValue("content"),K=LB(P,q),Q=RB(X),te=Z[0].startsWith("FontAwesome"),le=OB(M),j=Sx(K,Q),re=j;if(te){var ve=G7(Q);ve.iconName&&ve.prefix&&(j=ve.iconName,K=ve.prefix)}if(j&&!le&&(!b||b.getAttribute(_x)!==K||b.getAttribute(bx)!==re)){t.setAttribute(i,re),b&&t.removeChild(b);var Ye=xB(),ue=Ye.extra;ue.attributes[sx]=r,fx(j,K).then(function(Me){var Re=Ix(Lt(Lt({},Ye),{},{icons:{main:Me,mask:zP()},prefix:K,iconName:re,extra:ue,watchable:!0})),Ue=xi.createElementNS("http://www.w3.org/2000/svg","svg");r==="::before"?t.insertBefore(Ue,t.firstChild):t.appendChild(Ue),Ue.outerHTML=Re.map(function(qe){return Eg(qe)}).join(`
1342
1342
  `),t.removeAttribute(i),l()}).catch(u)}else l()}else l()})}function NB(t){return Promise.all([V3(t,"::before"),V3(t,"::after")])}function zB(t){return t.parentNode!==document.head&&!~w7.indexOf(t.tagName.toUpperCase())&&!t.getAttribute(sx)&&(!t.parentNode||t.parentNode.tagName!=="svg")}var jB=function(r){return!!r&&vP.some(function(i){return r.includes(i)})},BB=function(r){if(!r)return[];for(var i=new Set,l=[r],u=[/(?=\s:)/,new RegExp("(?<=\\)\\)?[^,]*,)")],o=function(){var K=M[b];l=l.flatMap(function(Q){return Q.split(K).map(function(te){return te.replace(/,\s*$/,"").trim()})})},b=0,M=u;b<M.length;b++)o();l=l.flatMap(function(X){return X.includes("(")?X:X.split(",").map(function(K){return K.trim()})});var P=m_(l),Z;try{for(P.s();!(Z=P.n()).done;){var q=Z.value;if(jB(q)){var N=vP.reduce(function(X,K){return X.replace(K,"")},q);N!==""&&N!=="*"&&i.add(N)}}}catch(X){P.e(X)}finally{P.f()}return i};function U3(t){var r=arguments.length>1&&arguments[1]!==void 0?arguments[1]:!1;if(du){var i;if(r)i=t;else if(Cn.searchPseudoElementsFullScan)i=t.querySelectorAll("*");else{var l=new Set,u=m_(document.styleSheets),o;try{for(u.s();!(o=u.n()).done;){var b=o.value;try{var M=m_(b.cssRules),P;try{for(M.s();!(P=M.n()).done;){var Z=P.value,q=BB(Z.selectorText),N=m_(q),X;try{for(N.s();!(X=N.n()).done;){var K=X.value;l.add(K)}}catch(te){N.e(te)}finally{N.f()}}}catch(te){M.e(te)}finally{M.f()}}catch(te){Cn.searchPseudoElementsWarnings&&console.warn("Font Awesome: cannot parse stylesheet: ".concat(b.href," (").concat(te.message,`)
1343
1343
  If it declares any Font Awesome CSS pseudo-elements, they will not be rendered as SVG icons. Add crossorigin="anonymous" to the <link>, enable searchPseudoElementsFullScan for slower but more thorough DOM parsing, or suppress this warning by setting searchPseudoElementsWarnings to false.`))}}}catch(te){u.e(te)}finally{u.f()}if(!l.size)return;var Q=Array.from(l).join(", ");try{i=t.querySelectorAll(Q)}catch{}}return new Promise(function(te,le){var j=xp(i).filter(zB).map(NB),re=Ex.begin("searchPseudoElements");$P(),Promise.all(j).then(function(){re(),mx(),te()}).catch(function(){re(),mx(),le()})})}}var VB={hooks:function(){return{mutationObserverCallbacks:function(i){return i.pseudoElementsCallback=U3,i}}},provides:function(r){r.pseudoElements2svg=function(i){var l=i.node,u=l===void 0?xi:l;Cn.searchPseudoElements&&U3(u)}}},$3=!1,UB={mixout:function(){return{dom:{unwatch:function(){$P(),$3=!0}}}},hooks:function(){return{bootstrap:function(){N3(ux("mutationObserverCallbacks",{}))},noAuto:function(){vB()},watch:function(i){var l=i.observeMutationsRoot;$3?mx():N3(ux("mutationObserverCallbacks",{observeMutationsRoot:l}))}}}},H3=function(r){var i={size:16,x:0,y:0,flipX:!1,flipY:!1,rotate:0};return r.toLowerCase().split(" ").reduce(function(l,u){var o=u.toLowerCase().split("-"),b=o[0],M=o.slice(1).join("-");if(b&&M==="h")return l.flipX=!0,l;if(b&&M==="v")return l.flipY=!0,l;if(M=parseFloat(M),isNaN(M))return l;switch(b){case"grow":l.size=l.size+M;break;case"shrink":l.size=l.size-M;break;case"left":l.x=l.x-M;break;case"right":l.x=l.x+M;break;case"up":l.y=l.y-M;break;case"down":l.y=l.y+M;break;case"rotate":l.rotate=l.rotate+M;break}return l},i)},$B={mixout:function(){return{parse:{transform:function(i){return H3(i)}}}},hooks:function(){return{parseNodeAttributes:function(i,l){var u=l.getAttribute("data-fa-transform");return u&&(i.transform=H3(u)),i}}},provides:function(r){r.generateAbstractTransformGrouping=function(i){var l=i.main,u=i.transform,o=i.containerWidth,b=i.iconWidth,M={transform:"translate(".concat(o/2," 256)")},P="translate(".concat(u.x*32,", ").concat(u.y*32,") "),Z="scale(".concat(u.size/16*(u.flipX?-1:1),", ").concat(u.size/16*(u.flipY?-1:1),") "),q="rotate(".concat(u.rotate," 0 0)"),N={transform:"".concat(P," ").concat(Z," ").concat(q)},X={transform:"translate(".concat(b/2*-1," -256)")},K={outer:M,inner:N,path:X};return{tag:"g",attributes:Lt({},K.outer),children:[{tag:"g",attributes:Lt({},K.inner),children:[{tag:l.icon.tag,children:l.icon.children,attributes:Lt(Lt({},l.icon.attributes),K.path)}]}]}}}},nx={x:0,y:0,width:"100%",height:"100%"};function G3(t){var r=arguments.length>1&&arguments[1]!==void 0?arguments[1]:!0;return t.attributes&&(t.attributes.fill||r)&&(t.attributes.fill="black"),t}function HB(t){return t.tag==="g"?t.children:[t]}var GB={hooks:function(){return{parseNodeAttributes:function(i,l){var u=l.getAttribute("data-fa-mask"),o=u?S_(u.split(" ").map(function(b){return b.trim()})):zP();return o.prefix||(o.prefix=Cd()),i.mask=o,i.maskId=l.getAttribute("data-fa-mask-id"),i}}},provides:function(r){r.generateAbstractMask=function(i){var l=i.children,u=i.attributes,o=i.main,b=i.mask,M=i.maskId,P=i.transform,Z=o.width,q=o.icon,N=b.width,X=b.icon,K=O7({transform:P,containerWidth:N,iconWidth:Z}),Q={tag:"rect",attributes:Lt(Lt({},nx),{},{fill:"white"})},te=q.children?{children:q.children.map(G3)}:{},le={tag:"g",attributes:Lt({},K.inner),children:[G3(Lt({tag:q.tag,attributes:Lt(Lt({},q.attributes),K.path)},te))]},j={tag:"g",attributes:Lt({},K.outer),children:[le]},re="mask-".concat(M||I3()),ve="clip-".concat(M||I3()),Ye={tag:"mask",attributes:Lt(Lt({},nx),{},{id:re,maskUnits:"userSpaceOnUse",maskContentUnits:"userSpaceOnUse"}),children:[Q,j]},ue={tag:"defs",children:[{tag:"clipPath",attributes:{id:ve},children:HB(X)},Ye]};return l.push(ue,{tag:"rect",attributes:Lt({fill:"currentColor","clip-path":"url(#".concat(ve,")"),mask:"url(#".concat(re,")")},nx)}),{children:l,attributes:u}}}},WB={provides:function(r){var i=!1;xd.matchMedia&&(i=xd.matchMedia("(prefers-reduced-motion: reduce)").matches),r.missingIconAbstract=function(){var l=[],u={fill:"currentColor"},o={attributeType:"XML",repeatCount:"indefinite",dur:"2s"};l.push({tag:"path",attributes:Lt(Lt({},u),{},{d:"M156.5,447.7l-12.6,29.5c-18.7-9.5-35.9-21.2-51.5-34.9l22.7-22.7C127.6,430.5,141.5,440,156.5,447.7z M40.6,272H8.5 c1.4,21.2,5.4,41.7,11.7,61.1L50,321.2C45.1,305.5,41.8,289,40.6,272z M40.6,240c1.4-18.8,5.2-37,11.1-54.1l-29.5-12.6 C14.7,194.3,10,216.7,8.5,240H40.6z M64.3,156.5c7.8-14.9,17.2-28.8,28.1-41.5L69.7,92.3c-13.7,15.6-25.5,32.8-34.9,51.5 L64.3,156.5z M397,419.6c-13.9,12-29.4,22.3-46.1,30.4l11.9,29.8c20.7-9.9,39.8-22.6,56.9-37.6L397,419.6z M115,92.4 c13.9-12,29.4-22.3,46.1-30.4l-11.9-29.8c-20.7,9.9-39.8,22.6-56.8,37.6L115,92.4z M447.7,355.5c-7.8,14.9-17.2,28.8-28.1,41.5 l22.7,22.7c13.7-15.6,25.5-32.9,34.9-51.5L447.7,355.5z M471.4,272c-1.4,18.8-5.2,37-11.1,54.1l29.5,12.6 c7.5-21.1,12.2-43.5,13.6-66.8H471.4z M321.2,462c-15.7,5-32.2,8.2-49.2,9.4v32.1c21.2-1.4,41.7-5.4,61.1-11.7L321.2,462z M240,471.4c-18.8-1.4-37-5.2-54.1-11.1l-12.6,29.5c21.1,7.5,43.5,12.2,66.8,13.6V471.4z M462,190.8c5,15.7,8.2,32.2,9.4,49.2h32.1 c-1.4-21.2-5.4-41.7-11.7-61.1L462,190.8z M92.4,397c-12-13.9-22.3-29.4-30.4-46.1l-29.8,11.9c9.9,20.7,22.6,39.8,37.6,56.9 L92.4,397z M272,40.6c18.8,1.4,36.9,5.2,54.1,11.1l12.6-29.5C317.7,14.7,295.3,10,272,8.5V40.6z M190.8,50 c15.7-5,32.2-8.2,49.2-9.4V8.5c-21.2,1.4-41.7,5.4-61.1,11.7L190.8,50z M442.3,92.3L419.6,115c12,13.9,22.3,29.4,30.5,46.1 l29.8-11.9C470,128.5,457.3,109.4,442.3,92.3z M397,92.4l22.7-22.7c-15.6-13.7-32.8-25.5-51.5-34.9l-12.6,29.5 C370.4,72.1,384.4,81.5,397,92.4z"})});var b=Lt(Lt({},o),{},{attributeName:"opacity"}),M={tag:"circle",attributes:Lt(Lt({},u),{},{cx:"256",cy:"364",r:"28"}),children:[]};return i||M.children.push({tag:"animate",attributes:Lt(Lt({},o),{},{attributeName:"r",values:"28;14;28;28;14;28;"})},{tag:"animate",attributes:Lt(Lt({},b),{},{values:"1;0;1;1;0;1;"})}),l.push(M),l.push({tag:"path",attributes:Lt(Lt({},u),{},{opacity:"1",d:"M263.7,312h-16c-6.6,0-12-5.4-12-12c0-71,77.4-63.9,77.4-107.8c0-20-17.8-40.2-57.4-40.2c-29.1,0-44.3,9.6-59.2,28.7 c-3.9,5-11.1,6-16.2,2.4l-13.1-9.2c-5.6-3.9-6.9-11.8-2.6-17.2c21.2-27.2,46.4-44.7,91.2-44.7c52.3,0,97.4,29.8,97.4,80.2 c0,67.6-77.4,63.5-77.4,107.8C275.7,306.6,270.3,312,263.7,312z"}),children:i?[]:[{tag:"animate",attributes:Lt(Lt({},b),{},{values:"1;0;0;0;0;1;"})}]}),i||l.push({tag:"path",attributes:Lt(Lt({},u),{},{opacity:"0",d:"M232.5,134.5l7,168c0.3,6.4,5.6,11.5,12,11.5h9c6.4,0,11.7-5.1,12-11.5l7-168c0.3-6.8-5.2-12.5-12-12.5h-23 C237.7,122,232.2,127.7,232.5,134.5z"}),children:[{tag:"animate",attributes:Lt(Lt({},b),{},{values:"0;0;1;1;0;0;"})}]}),{tag:"g",attributes:{class:"missing"},children:l}}}},qB={hooks:function(){return{parseNodeAttributes:function(i,l){var u=l.getAttribute("data-fa-symbol"),o=u===null?!1:u===""?!0:u;return i.symbol=o,i}}}},ZB=[F7,TB,MB,PB,AB,VB,UB,$B,GB,WB,qB];eB(ZB,{mixoutsTo:Ra});var Sae=Ra.noAuto,WP=Ra.config,Iae=Ra.library,qP=Ra.dom,ZP=Ra.parse,Eae=Ra.findIconDefinition,Dae=Ra.toHtml,E_=Ra.icon,Tx=Ra.layer,YB=Ra.text,KB=Ra.counter;var XB=["*"],JB=(()=>{class t{defaultPrefix="fas";fallbackIcon=null;fixedWidth;set autoAddCss(i){WP.autoAddCss=i,this._autoAddCss=i}get autoAddCss(){return this._autoAddCss}_autoAddCss=!0;static \u0275fac=function(l){return new(l||t)};static \u0275prov=Zt({token:t,factory:t.\u0275fac,providedIn:"root"})}return t})(),Dg=(()=>{class t{definitions={};addIcons(...i){for(let l of i){l.prefix in this.definitions||(this.definitions[l.prefix]={}),this.definitions[l.prefix][l.iconName]=l;for(let u of l.icon[2])typeof u=="string"&&(this.definitions[l.prefix][u]=l)}}addIconPacks(...i){for(let l of i){let u=Object.keys(l).map(o=>l[o]);this.addIcons(...u)}}getIconDefinition(i,l){return i in this.definitions&&l in this.definitions[i]?this.definitions[i][l]:null}static \u0275fac=function(l){return new(l||t)};static \u0275prov=Zt({token:t,factory:t.\u0275fac,providedIn:"root"})}return t})(),QB=t=>{throw new Error(`Could not find icon with iconName=${t.iconName} and prefix=${t.prefix} in the icon library.`)},eV=()=>{throw new Error("Property `icon` is required for `fa-icon`/`fa-duotone-icon` components.")},KP=t=>t!=null&&(t===90||t===180||t===270||t==="90"||t==="180"||t==="270"),tV=t=>{let r=KP(t.rotate),i={[`fa-${t.animation}`]:t.animation!=null&&!t.animation.startsWith("spin"),"fa-spin":t.animation==="spin"||t.animation==="spin-reverse","fa-spin-pulse":t.animation==="spin-pulse"||t.animation==="spin-pulse-reverse","fa-spin-reverse":t.animation==="spin-reverse"||t.animation==="spin-pulse-reverse","fa-pulse":t.animation==="spin-pulse"||t.animation==="spin-pulse-reverse","fa-fw":t.fixedWidth,"fa-border":t.border,"fa-inverse":t.inverse,"fa-layers-counter":t.counter,"fa-flip-horizontal":t.flip==="horizontal"||t.flip==="both","fa-flip-vertical":t.flip==="vertical"||t.flip==="both",[`fa-${t.size}`]:t.size!==null,[`fa-rotate-${t.rotate}`]:r,"fa-rotate-by":t.rotate!=null&&!r,[`fa-pull-${t.pull}`]:t.pull!==null,[`fa-stack-${t.stackItemSize}`]:t.stackItemSize!=null};return Object.keys(i).map(l=>i[l]?l:null).filter(l=>l!=null)},Mx=new WeakSet,YP="fa-auto-css";function nV(t,r){if(!r.autoAddCss||Mx.has(t))return;if(t.getElementById(YP)!=null){r.autoAddCss=!1,Mx.add(t);return}let i=t.createElement("style");i.setAttribute("type","text/css"),i.setAttribute("id",YP),i.innerHTML=qP.css();let l=t.head.childNodes,u=null;for(let o=l.length-1;o>-1;o--){let b=l[o],M=b.nodeName.toUpperCase();["STYLE","LINK"].indexOf(M)>-1&&(u=b)}t.head.insertBefore(i,u),r.autoAddCss=!1,Mx.add(t)}var rV=t=>t.prefix!==void 0&&t.iconName!==void 0,iV=(t,r)=>rV(t)?t:Array.isArray(t)&&t.length===2?{prefix:t[0],iconName:t[1]}:{prefix:r,iconName:t},oV=(()=>{class t{stackItemSize=kr("1x");size=kr();_effect=_r(()=>{if(this.size())throw new Error('fa-icon is not allowed to customize size when used inside fa-stack. Set size on the enclosing fa-stack instead: <fa-stack size="4x">...</fa-stack>.')});static \u0275fac=function(l){return new(l||t)};static \u0275dir=Ah({type:t,selectors:[["fa-icon","stackItemSize",""],["fa-duotone-icon","stackItemSize",""]],inputs:{stackItemSize:[1,"stackItemSize"],size:[1,"size"]}})}return t})(),sV=(()=>{class t{size=kr();classes=An(()=>{let i=this.size(),l=i?{[`fa-${i}`]:!0}:{};return hr($t({},l),{"fa-stack":!0})});static \u0275fac=function(l){return new(l||t)};static \u0275cmp=In({type:t,selectors:[["fa-stack"]],hostVars:2,hostBindings:function(l,u){l&2&&pw(u.classes())},inputs:{size:[1,"size"]},ngContentSelectors:XB,decls:1,vars:0,template:function(l,u){l&1&&(ou(),su(0))},encapsulation:2,changeDetection:0})}return t})(),Fr=(()=>{class t{icon=Qs();title=Qs();animation=Qs();mask=Qs();flip=Qs();size=Qs();pull=Qs();border=Qs();inverse=Qs();symbol=Qs();rotate=Qs();fixedWidth=Qs();transform=Qs();a11yRole=Qs();renderedIconHTML=An(()=>{let i=this.icon()??this.config.fallbackIcon;if(!i)return eV(),"";let l=this.findIconDefinition(i);if(!l)return"";let u=this.buildParams();nV(this.document,this.config);let o=E_(l,u);return this.sanitizer.bypassSecurityTrustHtml(o.html.join(`
1344
- `))});document=je(wi);sanitizer=je(yg);config=je(JB);iconLibrary=je(Dg);stackItem=je(oV,{optional:!0});stack=je(sV,{optional:!0});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(i){let l=iV(i,this.config.defaultPrefix);if("icon"in l)return l;let u=this.iconLibrary.getIconDefinition(l.prefix,l.iconName);return u??(QB(l),null)}buildParams(){let i=this.fixedWidth(),l={flip:this.flip(),animation:this.animation(),border:this.border(),inverse:this.inverse(),size:this.size(),pull:this.pull(),rotate:this.rotate(),fixedWidth:typeof i=="boolean"?i:this.config.fixedWidth,stackItemSize:this.stackItem!=null?this.stackItem.stackItemSize():void 0},u=this.transform(),o=typeof u=="string"?ZP.transform(u):u,b=this.mask(),M=b!=null?this.findIconDefinition(b):null,P={},Z=this.a11yRole();Z!=null&&(P.role=Z);let q={};return l.rotate!=null&&!KP(l.rotate)&&(q["--fa-rotate-angle"]=`${l.rotate}`),{title:this.title(),transform:o,classes:tV(l),mask:M??void 0,symbol:this.symbol(),attributes:P,styles:q}}static \u0275fac=function(l){return new(l||t)};static \u0275cmp=In({type:t,selectors:[["fa-icon"]],hostAttrs:[1,"ng-fa-icon"],hostVars:2,hostBindings:function(l,u){l&2&&(Xv("innerHTML",u.renderedIconHTML(),yd),og("title",u.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(l,u){},encapsulation:2,changeDetection:0})}return t})();var D_=(()=>{class t{static \u0275fac=function(l){return new(l||t)};static \u0275mod=pc({type:t});static \u0275inj=Sl({})}return t})();var gr=class t{iconLibrary=je(Dg);logger=je(ar);getIconDefinition(r,i){let l=this.iconLibrary.getIconDefinition(r,i);return l||(this.logger.logWarning(new Error(`Icon definition not found for ${r} ${i}`)),Zw)}static \u0275fac=function(i){return new(i||t)};static \u0275prov=Zt({token:t,factory:t.\u0275fac})};var lr="primary",Ug=Symbol("RouteTitle"),Ox=class{params;constructor(r){this.params=r||{}}has(r){return Object.prototype.hasOwnProperty.call(this.params,r)}get(r){if(this.has(r)){let i=this.params[r];return Array.isArray(i)?i[0]:i}return null}getAll(r){if(this.has(r)){let i=this.params[r];return Array.isArray(i)?i:[i]}return[]}get keys(){return Object.keys(this.params)}};function Vh(t){return new Ox(t)}function iA(t,r,i){let l=i.path.split("/");if(l.length>t.length||i.pathMatch==="full"&&(r.hasChildren()||l.length<t.length))return null;let u={};for(let o=0;o<l.length;o++){let b=l[o],M=t[o];if(b[0]===":")u[b.substring(1)]=M;else if(b!==M.path)return null}return{consumed:t.slice(0,l.length),posParams:u}}function lV(t,r){if(t.length!==r.length)return!1;for(let i=0;i<t.length;++i)if(!vc(t[i],r[i]))return!1;return!0}function vc(t,r){let i=t?Lx(t):void 0,l=r?Lx(r):void 0;if(!i||!l||i.length!=l.length)return!1;let u;for(let o=0;o<i.length;o++)if(u=i[o],!oA(t[u],r[u]))return!1;return!0}function Lx(t){return[...Object.keys(t),...Object.getOwnPropertySymbols(t)]}function oA(t,r){if(Array.isArray(t)&&Array.isArray(r)){if(t.length!==r.length)return!1;let i=[...t].sort(),l=[...r].sort();return i.every((u,o)=>l[o]===u)}else return t===r}function sA(t){return t.length>0?t[t.length-1]:null}function pu(t){return P1(t)?t:mp(t)?gi(Promise.resolve(t)):qn(t)}var cV={exact:lA,subset:cA},aA={exact:uV,subset:dV,ignored:()=>!0};function XP(t,r,i){return cV[i.paths](t.root,r.root,i.matrixParams)&&aA[i.queryParams](t.queryParams,r.queryParams)&&!(i.fragment==="exact"&&t.fragment!==r.fragment)}function uV(t,r){return vc(t,r)}function lA(t,r,i){if(!jh(t.segments,r.segments)||!P_(t.segments,r.segments,i)||t.numberOfChildren!==r.numberOfChildren)return!1;for(let l in r.children)if(!t.children[l]||!lA(t.children[l],r.children[l],i))return!1;return!0}function dV(t,r){return Object.keys(r).length<=Object.keys(t).length&&Object.keys(r).every(i=>oA(t[i],r[i]))}function cA(t,r,i){return uA(t,r,r.segments,i)}function uA(t,r,i,l){if(t.segments.length>i.length){let u=t.segments.slice(0,i.length);return!(!jh(u,i)||r.hasChildren()||!P_(u,i,l))}else if(t.segments.length===i.length){if(!jh(t.segments,i)||!P_(t.segments,i,l))return!1;for(let u in r.children)if(!t.children[u]||!cA(t.children[u],r.children[u],l))return!1;return!0}else{let u=i.slice(0,t.segments.length),o=i.slice(t.segments.length);return!jh(t.segments,u)||!P_(t.segments,u,l)||!t.children[lr]?!1:uA(t.children[lr],r,o,l)}}function P_(t,r,i){return r.every((l,u)=>aA[i](t[u].parameters,l.parameters))}var bc=class{root;queryParams;fragment;_queryParamMap;constructor(r=new Ur([],{}),i={},l=null){this.root=r,this.queryParams=i,this.fragment=l}get queryParamMap(){return this._queryParamMap??=Vh(this.queryParams),this._queryParamMap}toString(){return pV.serialize(this)}},Ur=class{segments;children;parent=null;constructor(r,i){this.segments=r,this.children=i,Object.values(i).forEach(l=>l.parent=this)}hasChildren(){return this.numberOfChildren>0}get numberOfChildren(){return Object.keys(this.children).length}toString(){return A_(this)}},Id=class{path;parameters;_parameterMap;constructor(r,i){this.path=r,this.parameters=i}get parameterMap(){return this._parameterMap??=Vh(this.parameters),this._parameterMap}toString(){return hA(this)}};function hV(t,r){return jh(t,r)&&t.every((i,l)=>vc(i.parameters,r[l].parameters))}function jh(t,r){return t.length!==r.length?!1:t.every((i,l)=>i.path===r[l].path)}function fV(t,r){let i=[];return Object.entries(t.children).forEach(([l,u])=>{l===lr&&(i=i.concat(r(u,l)))}),Object.entries(t.children).forEach(([l,u])=>{l!==lr&&(i=i.concat(r(u,l)))}),i}var $g=(()=>{class t{static \u0275fac=function(l){return new(l||t)};static \u0275prov=Zt({token:t,factory:()=>new Uh,providedIn:"root"})}return t})(),Uh=class{parse(r){let i=new Fx(r);return new bc(i.parseRootSegment(),i.parseQueryParams(),i.parseFragment())}serialize(r){let i=`/${Tg(r.root,!0)}`,l=yV(r.queryParams),u=typeof r.fragment=="string"?`#${mV(r.fragment)}`:"";return`${i}${l}${u}`}},pV=new Uh;function A_(t){return t.segments.map(r=>hA(r)).join("/")}function Tg(t,r){if(!t.hasChildren())return A_(t);if(r){let i=t.children[lr]?Tg(t.children[lr],!1):"",l=[];return Object.entries(t.children).forEach(([u,o])=>{u!==lr&&l.push(`${u}:${Tg(o,!1)}`)}),l.length>0?`${i}(${l.join("//")})`:i}else{let i=fV(t,(l,u)=>u===lr?[Tg(t.children[lr],!1)]:[`${u}:${Tg(l,!1)}`]);return Object.keys(t.children).length===1&&t.children[lr]!=null?`${A_(t)}/${i[0]}`:`${A_(t)}/(${i.join("//")})`}}function dA(t){return encodeURIComponent(t).replace(/%40/g,"@").replace(/%3A/gi,":").replace(/%24/g,"$").replace(/%2C/gi,",")}function T_(t){return dA(t).replace(/%3B/gi,";")}function mV(t){return encodeURI(t)}function Nx(t){return dA(t).replace(/\(/g,"%28").replace(/\)/g,"%29").replace(/%26/gi,"&")}function k_(t){return decodeURIComponent(t)}function JP(t){return k_(t.replace(/\+/g,"%20"))}function hA(t){return`${Nx(t.path)}${gV(t.parameters)}`}function gV(t){return Object.entries(t).map(([r,i])=>`;${Nx(r)}=${Nx(i)}`).join("")}function yV(t){let r=Object.entries(t).map(([i,l])=>Array.isArray(l)?l.map(u=>`${T_(i)}=${T_(u)}`).join("&"):`${T_(i)}=${T_(l)}`).filter(i=>i);return r.length?`?${r.join("&")}`:""}var vV=/^[^\/()?;#]+/;function Px(t){let r=t.match(vV);return r?r[0]:""}var _V=/^[^\/()?;=#]+/;function bV(t){let r=t.match(_V);return r?r[0]:""}var wV=/^[^=?&#]+/;function xV(t){let r=t.match(wV);return r?r[0]:""}var CV=/^[^&#]+/;function SV(t){let r=t.match(CV);return r?r[0]:""}var Fx=class{url;remaining;constructor(r){this.url=r,this.remaining=r}parseRootSegment(){return this.consumeOptional("/"),this.remaining===""||this.peekStartsWith("?")||this.peekStartsWith("#")?new Ur([],{}):new Ur([],this.parseChildren())}parseQueryParams(){let r={};if(this.consumeOptional("?"))do this.parseQueryParam(r);while(this.consumeOptional("&"));return r}parseFragment(){return this.consumeOptional("#")?decodeURIComponent(this.remaining):null}parseChildren(){if(this.remaining==="")return{};this.consumeOptional("/");let r=[];for(this.peekStartsWith("(")||r.push(this.parseSegment());this.peekStartsWith("/")&&!this.peekStartsWith("//")&&!this.peekStartsWith("/(");)this.capture("/"),r.push(this.parseSegment());let i={};this.peekStartsWith("/(")&&(this.capture("/"),i=this.parseParens(!0));let l={};return this.peekStartsWith("(")&&(l=this.parseParens(!1)),(r.length>0||Object.keys(i).length>0)&&(l[lr]=new Ur(r,i)),l}parseSegment(){let r=Px(this.remaining);if(r===""&&this.peekStartsWith(";"))throw new on(4009,!1);return this.capture(r),new Id(k_(r),this.parseMatrixParams())}parseMatrixParams(){let r={};for(;this.consumeOptional(";");)this.parseParam(r);return r}parseParam(r){let i=bV(this.remaining);if(!i)return;this.capture(i);let l="";if(this.consumeOptional("=")){let u=Px(this.remaining);u&&(l=u,this.capture(l))}r[k_(i)]=k_(l)}parseQueryParam(r){let i=xV(this.remaining);if(!i)return;this.capture(i);let l="";if(this.consumeOptional("=")){let b=SV(this.remaining);b&&(l=b,this.capture(l))}let u=JP(i),o=JP(l);if(r.hasOwnProperty(u)){let b=r[u];Array.isArray(b)||(b=[b],r[u]=b),b.push(o)}else r[u]=o}parseParens(r){let i={};for(this.capture("(");!this.consumeOptional(")")&&this.remaining.length>0;){let l=Px(this.remaining),u=this.remaining[l.length];if(u!=="/"&&u!==")"&&u!==";")throw new on(4010,!1);let o;l.indexOf(":")>-1?(o=l.slice(0,l.indexOf(":")),this.capture(o),this.capture(":")):r&&(o=lr);let b=this.parseChildren();i[o]=Object.keys(b).length===1?b[lr]:new Ur([],b),this.consumeOptional("//")}return i}peekStartsWith(r){return this.remaining.startsWith(r)}consumeOptional(r){return this.peekStartsWith(r)?(this.remaining=this.remaining.substring(r.length),!0):!1}capture(r){if(!this.consumeOptional(r))throw new on(4011,!1)}};function fA(t){return t.segments.length>0?new Ur([],{[lr]:t}):t}function pA(t){let r={};for(let[l,u]of Object.entries(t.children)){let o=pA(u);if(l===lr&&o.segments.length===0&&o.hasChildren())for(let[b,M]of Object.entries(o.children))r[b]=M;else(o.segments.length>0||o.hasChildren())&&(r[l]=o)}let i=new Ur(t.segments,r);return IV(i)}function IV(t){if(t.numberOfChildren===1&&t.children[lr]){let r=t.children[lr];return new Ur(t.segments.concat(r.segments),r.children)}return t}function Dp(t){return t instanceof bc}function mA(t,r,i=null,l=null){let u=gA(t);return yA(u,r,i,l)}function gA(t){let r;function i(o){let b={};for(let P of o.children){let Z=i(P);b[P.outlet]=Z}let M=new Ur(o.url,b);return o===t&&(r=M),M}let l=i(t.root),u=fA(l);return r??u}function yA(t,r,i,l){let u=t;for(;u.parent;)u=u.parent;if(r.length===0)return Ax(u,u,u,i,l);let o=EV(r);if(o.toRoot())return Ax(u,u,new Ur([],{}),i,l);let b=DV(o,u,t),M=b.processChildren?Pg(b.segmentGroup,b.index,o.commands):_A(b.segmentGroup,b.index,o.commands);return Ax(u,b.segmentGroup,M,i,l)}function R_(t){return typeof t=="object"&&t!=null&&!t.outlets&&!t.segmentPath}function Rg(t){return typeof t=="object"&&t!=null&&t.outlets}function Ax(t,r,i,l,u){let o={};l&&Object.entries(l).forEach(([P,Z])=>{o[P]=Array.isArray(Z)?Z.map(q=>`${q}`):`${Z}`});let b;t===r?b=i:b=vA(t,r,i);let M=fA(pA(b));return new bc(M,o,u)}function vA(t,r,i){let l={};return Object.entries(t.children).forEach(([u,o])=>{o===r?l[u]=i:l[u]=vA(o,r,i)}),new Ur(t.segments,l)}var O_=class{isAbsolute;numberOfDoubleDots;commands;constructor(r,i,l){if(this.isAbsolute=r,this.numberOfDoubleDots=i,this.commands=l,r&&l.length>0&&R_(l[0]))throw new on(4003,!1);let u=l.find(Rg);if(u&&u!==sA(l))throw new on(4004,!1)}toRoot(){return this.isAbsolute&&this.commands.length===1&&this.commands[0]=="/"}};function EV(t){if(typeof t[0]=="string"&&t.length===1&&t[0]==="/")return new O_(!0,0,t);let r=0,i=!1,l=t.reduce((u,o,b)=>{if(typeof o=="object"&&o!=null){if(o.outlets){let M={};return Object.entries(o.outlets).forEach(([P,Z])=>{M[P]=typeof Z=="string"?Z.split("/"):Z}),[...u,{outlets:M}]}if(o.segmentPath)return[...u,o.segmentPath]}return typeof o!="string"?[...u,o]:b===0?(o.split("/").forEach((M,P)=>{P==0&&M==="."||(P==0&&M===""?i=!0:M===".."?r++:M!=""&&u.push(M))}),u):[...u,o]},[]);return new O_(i,r,l)}var Ip=class{segmentGroup;processChildren;index;constructor(r,i,l){this.segmentGroup=r,this.processChildren=i,this.index=l}};function DV(t,r,i){if(t.isAbsolute)return new Ip(r,!0,0);if(!i)return new Ip(r,!1,NaN);if(i.parent===null)return new Ip(i,!0,0);let l=R_(t.commands[0])?0:1,u=i.segments.length-1+l;return TV(i,u,t.numberOfDoubleDots)}function TV(t,r,i){let l=t,u=r,o=i;for(;o>u;){if(o-=u,l=l.parent,!l)throw new on(4005,!1);u=l.segments.length}return new Ip(l,!1,u-o)}function MV(t){return Rg(t[0])?t[0].outlets:{[lr]:t}}function _A(t,r,i){if(t??=new Ur([],{}),t.segments.length===0&&t.hasChildren())return Pg(t,r,i);let l=PV(t,r,i),u=i.slice(l.commandIndex);if(l.match&&l.pathIndex<t.segments.length){let o=new Ur(t.segments.slice(0,l.pathIndex),{});return o.children[lr]=new Ur(t.segments.slice(l.pathIndex),t.children),Pg(o,0,u)}else return l.match&&u.length===0?new Ur(t.segments,{}):l.match&&!t.hasChildren()?zx(t,r,i):l.match?Pg(t,0,u):zx(t,r,i)}function Pg(t,r,i){if(i.length===0)return new Ur(t.segments,{});{let l=MV(i),u={};if(Object.keys(l).some(o=>o!==lr)&&t.children[lr]&&t.numberOfChildren===1&&t.children[lr].segments.length===0){let o=Pg(t.children[lr],r,i);return new Ur(t.segments,o.children)}return Object.entries(l).forEach(([o,b])=>{typeof b=="string"&&(b=[b]),b!==null&&(u[o]=_A(t.children[o],r,b))}),Object.entries(t.children).forEach(([o,b])=>{l[o]===void 0&&(u[o]=b)}),new Ur(t.segments,u)}}function PV(t,r,i){let l=0,u=r,o={match:!1,pathIndex:0,commandIndex:0};for(;u<t.segments.length;){if(l>=i.length)return o;let b=t.segments[u],M=i[l];if(Rg(M))break;let P=`${M}`,Z=l<i.length-1?i[l+1]:null;if(u>0&&P===void 0)break;if(P&&Z&&typeof Z=="object"&&Z.outlets===void 0){if(!eA(P,Z,b))return o;l+=2}else{if(!eA(P,{},b))return o;l++}u++}return{match:!0,pathIndex:u,commandIndex:l}}function zx(t,r,i){let l=t.segments.slice(0,r),u=0;for(;u<i.length;){let o=i[u];if(Rg(o)){let P=AV(o.outlets);return new Ur(l,P)}if(u===0&&R_(i[0])){let P=t.segments[r];l.push(new Id(P.path,QP(i[0]))),u++;continue}let b=Rg(o)?o.outlets[lr]:`${o}`,M=u<i.length-1?i[u+1]:null;b&&M&&R_(M)?(l.push(new Id(b,QP(M))),u+=2):(l.push(new Id(b,{})),u++)}return new Ur(l,{})}function AV(t){let r={};return Object.entries(t).forEach(([i,l])=>{typeof l=="string"&&(l=[l]),l!==null&&(r[i]=zx(new Ur([],{}),0,l))}),r}function QP(t){let r={};return Object.entries(t).forEach(([i,l])=>r[i]=`${l}`),r}function eA(t,r,i){return t==i.path&&vc(r,i.parameters)}var Ag="imperative",Jo=function(t){return t[t.NavigationStart=0]="NavigationStart",t[t.NavigationEnd=1]="NavigationEnd",t[t.NavigationCancel=2]="NavigationCancel",t[t.NavigationError=3]="NavigationError",t[t.RoutesRecognized=4]="RoutesRecognized",t[t.ResolveStart=5]="ResolveStart",t[t.ResolveEnd=6]="ResolveEnd",t[t.GuardsCheckStart=7]="GuardsCheckStart",t[t.GuardsCheckEnd=8]="GuardsCheckEnd",t[t.RouteConfigLoadStart=9]="RouteConfigLoadStart",t[t.RouteConfigLoadEnd=10]="RouteConfigLoadEnd",t[t.ChildActivationStart=11]="ChildActivationStart",t[t.ChildActivationEnd=12]="ChildActivationEnd",t[t.ActivationStart=13]="ActivationStart",t[t.ActivationEnd=14]="ActivationEnd",t[t.Scroll=15]="Scroll",t[t.NavigationSkipped=16]="NavigationSkipped",t}(Jo||{}),La=class{id;url;constructor(r,i){this.id=r,this.url=i}},$h=class extends La{type=Jo.NavigationStart;navigationTrigger;restoredState;constructor(r,i,l="imperative",u=null){super(r,i),this.navigationTrigger=l,this.restoredState=u}toString(){return`NavigationStart(id: ${this.id}, url: '${this.url}')`}},hu=class extends La{urlAfterRedirects;type=Jo.NavigationEnd;constructor(r,i,l){super(r,i),this.urlAfterRedirects=l}toString(){return`NavigationEnd(id: ${this.id}, url: '${this.url}', urlAfterRedirects: '${this.urlAfterRedirects}')`}},ea=function(t){return t[t.Redirect=0]="Redirect",t[t.SupersededByNewNavigation=1]="SupersededByNewNavigation",t[t.NoDataFromResolver=2]="NoDataFromResolver",t[t.GuardRejected=3]="GuardRejected",t[t.Aborted=4]="Aborted",t}(ea||{}),Og=function(t){return t[t.IgnoredSameUrlNavigation=0]="IgnoredSameUrlNavigation",t[t.IgnoredByUrlHandlingStrategy=1]="IgnoredByUrlHandlingStrategy",t}(Og||{}),_c=class extends La{reason;code;type=Jo.NavigationCancel;constructor(r,i,l,u){super(r,i),this.reason=l,this.code=u}toString(){return`NavigationCancel(id: ${this.id}, url: '${this.url}')`}},fu=class extends La{reason;code;type=Jo.NavigationSkipped;constructor(r,i,l,u){super(r,i),this.reason=l,this.code=u}},Tp=class extends La{error;target;type=Jo.NavigationError;constructor(r,i,l,u){super(r,i),this.error=l,this.target=u}toString(){return`NavigationError(id: ${this.id}, url: '${this.url}', error: ${this.error})`}},Lg=class extends La{urlAfterRedirects;state;type=Jo.RoutesRecognized;constructor(r,i,l,u){super(r,i),this.urlAfterRedirects=l,this.state=u}toString(){return`RoutesRecognized(id: ${this.id}, url: '${this.url}', urlAfterRedirects: '${this.urlAfterRedirects}', state: ${this.state})`}},L_=class extends La{urlAfterRedirects;state;type=Jo.GuardsCheckStart;constructor(r,i,l,u){super(r,i),this.urlAfterRedirects=l,this.state=u}toString(){return`GuardsCheckStart(id: ${this.id}, url: '${this.url}', urlAfterRedirects: '${this.urlAfterRedirects}', state: ${this.state})`}},N_=class extends La{urlAfterRedirects;state;shouldActivate;type=Jo.GuardsCheckEnd;constructor(r,i,l,u,o){super(r,i),this.urlAfterRedirects=l,this.state=u,this.shouldActivate=o}toString(){return`GuardsCheckEnd(id: ${this.id}, url: '${this.url}', urlAfterRedirects: '${this.urlAfterRedirects}', state: ${this.state}, shouldActivate: ${this.shouldActivate})`}},F_=class extends La{urlAfterRedirects;state;type=Jo.ResolveStart;constructor(r,i,l,u){super(r,i),this.urlAfterRedirects=l,this.state=u}toString(){return`ResolveStart(id: ${this.id}, url: '${this.url}', urlAfterRedirects: '${this.urlAfterRedirects}', state: ${this.state})`}},z_=class extends La{urlAfterRedirects;state;type=Jo.ResolveEnd;constructor(r,i,l,u){super(r,i),this.urlAfterRedirects=l,this.state=u}toString(){return`ResolveEnd(id: ${this.id}, url: '${this.url}', urlAfterRedirects: '${this.urlAfterRedirects}', state: ${this.state})`}},j_=class{route;type=Jo.RouteConfigLoadStart;constructor(r){this.route=r}toString(){return`RouteConfigLoadStart(path: ${this.route.path})`}},B_=class{route;type=Jo.RouteConfigLoadEnd;constructor(r){this.route=r}toString(){return`RouteConfigLoadEnd(path: ${this.route.path})`}},V_=class{snapshot;type=Jo.ChildActivationStart;constructor(r){this.snapshot=r}toString(){return`ChildActivationStart(path: '${this.snapshot.routeConfig&&this.snapshot.routeConfig.path||""}')`}},U_=class{snapshot;type=Jo.ChildActivationEnd;constructor(r){this.snapshot=r}toString(){return`ChildActivationEnd(path: '${this.snapshot.routeConfig&&this.snapshot.routeConfig.path||""}')`}},$_=class{snapshot;type=Jo.ActivationStart;constructor(r){this.snapshot=r}toString(){return`ActivationStart(path: '${this.snapshot.routeConfig&&this.snapshot.routeConfig.path||""}')`}},H_=class{snapshot;type=Jo.ActivationEnd;constructor(r){this.snapshot=r}toString(){return`ActivationEnd(path: '${this.snapshot.routeConfig&&this.snapshot.routeConfig.path||""}')`}};var Ng=class{},Mp=class{url;navigationBehaviorOptions;constructor(r,i){this.url=r,this.navigationBehaviorOptions=i}};function kV(t){return!(t instanceof Ng)&&!(t instanceof Mp)}function RV(t,r){return t.providers&&!t._injector&&(t._injector=rg(t.providers,r,`Route: ${t.path}`)),t._injector??r}function jl(t){return t.outlet||lr}function OV(t,r){let i=t.filter(l=>jl(l)===r);return i.push(...t.filter(l=>jl(l)!==r)),i}function kp(t){if(!t)return null;if(t.routeConfig?._injector)return t.routeConfig._injector;for(let r=t.parent;r;r=r.parent){let i=r.routeConfig;if(i?._loadedInjector)return i._loadedInjector;if(i?._injector)return i._injector}return null}var G_=class{rootInjector;outlet=null;route=null;children;attachRef=null;get injector(){return kp(this.route?.snapshot)??this.rootInjector}constructor(r){this.rootInjector=r,this.children=new Rp(this.rootInjector)}},Rp=(()=>{class t{rootInjector;contexts=new Map;constructor(i){this.rootInjector=i}onChildOutletCreated(i,l){let u=this.getOrCreateContext(i);u.outlet=l,this.contexts.set(i,u)}onChildOutletDestroyed(i){let l=this.getContext(i);l&&(l.outlet=null,l.attachRef=null)}onOutletDeactivated(){let i=this.contexts;return this.contexts=new Map,i}onOutletReAttached(i){this.contexts=i}getOrCreateContext(i){let l=this.getContext(i);return l||(l=new G_(this.rootInjector),this.contexts.set(i,l)),l}getContext(i){return this.contexts.get(i)||null}static \u0275fac=function(l){return new(l||t)(rr(ms))};static \u0275prov=Zt({token:t,factory:t.\u0275fac,providedIn:"root"})}return t})(),W_=class{_root;constructor(r){this._root=r}get root(){return this._root.value}parent(r){let i=this.pathFromRoot(r);return i.length>1?i[i.length-2]:null}children(r){let i=jx(r,this._root);return i?i.children.map(l=>l.value):[]}firstChild(r){let i=jx(r,this._root);return i&&i.children.length>0?i.children[0].value:null}siblings(r){let i=Bx(r,this._root);return i.length<2?[]:i[i.length-2].children.map(u=>u.value).filter(u=>u!==r)}pathFromRoot(r){return Bx(r,this._root).map(i=>i.value)}};function jx(t,r){if(t===r.value)return r;for(let i of r.children){let l=jx(t,i);if(l)return l}return null}function Bx(t,r){if(t===r.value)return[r];for(let i of r.children){let l=Bx(t,i);if(l.length)return l.unshift(r),l}return[]}var Oa=class{value;children;constructor(r,i){this.value=r,this.children=i}toString(){return`TreeNode(${this.value})`}};function Sp(t){let r={};return t&&t.children.forEach(i=>r[i.value.outlet]=i),r}var Fg=class extends W_{snapshot;constructor(r,i){super(r),this.snapshot=i,Zx(this,r)}toString(){return this.snapshot.toString()}};function bA(t){let r=LV(t),i=new Ti([new Id("",{})]),l=new Ti({}),u=new Ti({}),o=new Ti({}),b=new Ti(""),M=new el(i,l,o,b,u,lr,t,r.root);return M.snapshot=r.root,new Fg(new Oa(M,[]),r)}function LV(t){let r={},i={},l={},u="",o=new Bh([],r,l,u,i,lr,t,null,{});return new zg("",new Oa(o,[]))}var el=class{urlSubject;paramsSubject;queryParamsSubject;fragmentSubject;dataSubject;outlet;component;snapshot;_futureSnapshot;_routerState;_paramMap;_queryParamMap;title;url;params;queryParams;fragment;data;constructor(r,i,l,u,o,b,M,P){this.urlSubject=r,this.paramsSubject=i,this.queryParamsSubject=l,this.fragmentSubject=u,this.dataSubject=o,this.outlet=b,this.component=M,this._futureSnapshot=P,this.title=this.dataSubject?.pipe(Zn(Z=>Z[Ug]))??qn(void 0),this.url=r,this.params=i,this.queryParams=l,this.fragment=u,this.data=o}get routeConfig(){return this._futureSnapshot.routeConfig}get root(){return this._routerState.root}get parent(){return this._routerState.parent(this)}get firstChild(){return this._routerState.firstChild(this)}get children(){return this._routerState.children(this)}get pathFromRoot(){return this._routerState.pathFromRoot(this)}get paramMap(){return this._paramMap??=this.params.pipe(Zn(r=>Vh(r))),this._paramMap}get queryParamMap(){return this._queryParamMap??=this.queryParams.pipe(Zn(r=>Vh(r))),this._queryParamMap}toString(){return this.snapshot?this.snapshot.toString():`Future(${this._futureSnapshot})`}};function q_(t,r,i="emptyOnly"){let l,{routeConfig:u}=t;return r!==null&&(i==="always"||u?.path===""||!r.component&&!r.routeConfig?.loadComponent)?l={params:$t($t({},r.params),t.params),data:$t($t({},r.data),t.data),resolve:$t($t($t($t({},t.data),r.data),u?.data),t._resolvedData)}:l={params:$t({},t.params),data:$t({},t.data),resolve:$t($t({},t.data),t._resolvedData??{})},u&&xA(u)&&(l.resolve[Ug]=u.title),l}var Bh=class{url;params;queryParams;fragment;data;outlet;component;routeConfig;_resolve;_resolvedData;_routerState;_paramMap;_queryParamMap;get title(){return this.data?.[Ug]}constructor(r,i,l,u,o,b,M,P,Z){this.url=r,this.params=i,this.queryParams=l,this.fragment=u,this.data=o,this.outlet=b,this.component=M,this.routeConfig=P,this._resolve=Z}get root(){return this._routerState.root}get parent(){return this._routerState.parent(this)}get firstChild(){return this._routerState.firstChild(this)}get children(){return this._routerState.children(this)}get pathFromRoot(){return this._routerState.pathFromRoot(this)}get paramMap(){return this._paramMap??=Vh(this.params),this._paramMap}get queryParamMap(){return this._queryParamMap??=Vh(this.queryParams),this._queryParamMap}toString(){let r=this.url.map(l=>l.toString()).join("/"),i=this.routeConfig?this.routeConfig.path:"";return`Route(url:'${r}', path:'${i}')`}},zg=class extends W_{url;constructor(r,i){super(i),this.url=r,Zx(this,i)}toString(){return wA(this._root)}};function Zx(t,r){r.value._routerState=t,r.children.forEach(i=>Zx(t,i))}function wA(t){let r=t.children.length>0?` { ${t.children.map(wA).join(", ")} } `:"";return`${t.value}${r}`}function kx(t){if(t.snapshot){let r=t.snapshot,i=t._futureSnapshot;t.snapshot=i,vc(r.queryParams,i.queryParams)||t.queryParamsSubject.next(i.queryParams),r.fragment!==i.fragment&&t.fragmentSubject.next(i.fragment),vc(r.params,i.params)||t.paramsSubject.next(i.params),lV(r.url,i.url)||t.urlSubject.next(i.url),vc(r.data,i.data)||t.dataSubject.next(i.data)}else t.snapshot=t._futureSnapshot,t.dataSubject.next(t._futureSnapshot.data)}function Vx(t,r){let i=vc(t.params,r.params)&&hV(t.url,r.url),l=!t.parent!=!r.parent;return i&&!l&&(!t.parent||Vx(t.parent,r.parent))}function xA(t){return typeof t.title=="string"||t.title===null}var CA=new Rn(""),Hh=(()=>{class t{activated=null;get activatedComponentRef(){return this.activated}_activatedRoute=null;name=lr;activateEvents=new Ts;deactivateEvents=new Ts;attachEvents=new Ts;detachEvents=new Ts;routerOutletData=kr(void 0);parentContexts=je(Rp);location=je(Ph);changeDetector=je(i_);inputBinder=je(X_,{optional:!0});supportsBindingToComponentInputs=!0;ngOnChanges(i){if(i.name){let{firstChange:l,previousValue:u}=i.name;if(l)return;this.isTrackedInParentContexts(u)&&(this.deactivate(),this.parentContexts.onChildOutletDestroyed(u)),this.initializeOutletWithName()}}ngOnDestroy(){this.isTrackedInParentContexts(this.name)&&this.parentContexts.onChildOutletDestroyed(this.name),this.inputBinder?.unsubscribeFromRouteData(this)}isTrackedInParentContexts(i){return this.parentContexts.getContext(i)?.outlet===this}ngOnInit(){this.initializeOutletWithName()}initializeOutletWithName(){if(this.parentContexts.onChildOutletCreated(this.name,this),this.activated)return;let i=this.parentContexts.getContext(this.name);i?.route&&(i.attachRef?this.attach(i.attachRef,i.route):this.activateWith(i.route,i.injector))}get isActivated(){return!!this.activated}get component(){if(!this.activated)throw new on(4012,!1);return this.activated.instance}get activatedRoute(){if(!this.activated)throw new on(4012,!1);return this._activatedRoute}get activatedRouteData(){return this._activatedRoute?this._activatedRoute.snapshot.data:{}}detach(){if(!this.activated)throw new on(4012,!1);this.location.detach();let i=this.activated;return this.activated=null,this._activatedRoute=null,this.detachEvents.emit(i.instance),i}attach(i,l){this.activated=i,this._activatedRoute=l,this.location.insert(i.hostView),this.inputBinder?.bindActivatedRouteToOutletComponent(this),this.attachEvents.emit(i.instance)}deactivate(){if(this.activated){let i=this.component;this.activated.destroy(),this.activated=null,this._activatedRoute=null,this.deactivateEvents.emit(i)}}activateWith(i,l){if(this.isActivated)throw new on(4013,!1);this._activatedRoute=i;let u=this.location,b=i.snapshot.component,M=this.parentContexts.getOrCreateContext(this.name).children,P=new Ux(i,M,u.injector,this.routerOutletData);this.activated=u.createComponent(b,{index:u.length,injector:P,environmentInjector:l}),this.changeDetector.markForCheck(),this.inputBinder?.bindActivatedRouteToOutletComponent(this),this.activateEvents.emit(this.activated.instance)}static \u0275fac=function(l){return new(l||t)};static \u0275dir=Ah({type:t,selectors:[["router-outlet"]],inputs:{name:"name",routerOutletData:[1,"routerOutletData"]},outputs:{activateEvents:"activate",deactivateEvents:"deactivate",attachEvents:"attach",detachEvents:"detach"},exportAs:["outlet"],features:[Xm]})}return t})(),Ux=class{route;childContexts;parent;outletData;constructor(r,i,l,u){this.route=r,this.childContexts=i,this.parent=l,this.outletData=u}get(r,i){return r===el?this.route:r===Rp?this.childContexts:r===CA?this.outletData:this.parent.get(r,i)}},X_=new Rn("");var Yx=(()=>{class t{static \u0275fac=function(l){return new(l||t)};static \u0275cmp=In({type:t,selectors:[["ng-component"]],exportAs:["emptyRouterOutlet"],decls:1,vars:0,template:function(l,u){l&1&&jt(0,"router-outlet")},dependencies:[Hh],encapsulation:2})}return t})();function Kx(t){let r=t.children&&t.children.map(Kx),i=r?hr($t({},t),{children:r}):$t({},t);return!i.component&&!i.loadComponent&&(r||i.loadChildren)&&i.outlet&&i.outlet!==lr&&(i.component=Yx),i}function NV(t,r,i){let l=jg(t,r._root,i?i._root:void 0);return new Fg(l,r)}function jg(t,r,i){if(i&&t.shouldReuseRoute(r.value,i.value.snapshot)){let l=i.value;l._futureSnapshot=r.value;let u=FV(t,r,i);return new Oa(l,u)}else{if(t.shouldAttach(r.value)){let o=t.retrieve(r.value);if(o!==null){let b=o.route;return b.value._futureSnapshot=r.value,b.children=r.children.map(M=>jg(t,M)),b}}let l=zV(r.value),u=r.children.map(o=>jg(t,o));return new Oa(l,u)}}function FV(t,r,i){return r.children.map(l=>{for(let u of i.children)if(t.shouldReuseRoute(l.value,u.value.snapshot))return jg(t,l,u);return jg(t,l)})}function zV(t){return new el(new Ti(t.url),new Ti(t.params),new Ti(t.queryParams),new Ti(t.fragment),new Ti(t.data),t.outlet,t.component,t)}var Pp=class{redirectTo;navigationBehaviorOptions;constructor(r,i){this.redirectTo=r,this.navigationBehaviorOptions=i}},SA="ngNavigationCancelingError";function Z_(t,r){let{redirectTo:i,navigationBehaviorOptions:l}=Dp(r)?{redirectTo:r,navigationBehaviorOptions:void 0}:r,u=IA(!1,ea.Redirect);return u.url=i,u.navigationBehaviorOptions=l,u}function IA(t,r){let i=new Error(`NavigationCancelingError: ${t||""}`);return i[SA]=!0,i.cancellationCode=r,i}function jV(t){return EA(t)&&Dp(t.url)}function EA(t){return!!t&&t[SA]}var BV=(t,r,i,l)=>Zn(u=>(new $x(r,u.targetRouterState,u.currentRouterState,i,l).activate(t),u)),$x=class{routeReuseStrategy;futureState;currState;forwardEvent;inputBindingEnabled;constructor(r,i,l,u,o){this.routeReuseStrategy=r,this.futureState=i,this.currState=l,this.forwardEvent=u,this.inputBindingEnabled=o}activate(r){let i=this.futureState._root,l=this.currState?this.currState._root:null;this.deactivateChildRoutes(i,l,r),kx(this.futureState.root),this.activateChildRoutes(i,l,r)}deactivateChildRoutes(r,i,l){let u=Sp(i);r.children.forEach(o=>{let b=o.value.outlet;this.deactivateRoutes(o,u[b],l),delete u[b]}),Object.values(u).forEach(o=>{this.deactivateRouteAndItsChildren(o,l)})}deactivateRoutes(r,i,l){let u=r.value,o=i?i.value:null;if(u===o)if(u.component){let b=l.getContext(u.outlet);b&&this.deactivateChildRoutes(r,i,b.children)}else this.deactivateChildRoutes(r,i,l);else o&&this.deactivateRouteAndItsChildren(i,l)}deactivateRouteAndItsChildren(r,i){r.value.component&&this.routeReuseStrategy.shouldDetach(r.value.snapshot)?this.detachAndStoreRouteSubtree(r,i):this.deactivateRouteAndOutlet(r,i)}detachAndStoreRouteSubtree(r,i){let l=i.getContext(r.value.outlet),u=l&&r.value.component?l.children:i,o=Sp(r);for(let b of Object.values(o))this.deactivateRouteAndItsChildren(b,u);if(l&&l.outlet){let b=l.outlet.detach(),M=l.children.onOutletDeactivated();this.routeReuseStrategy.store(r.value.snapshot,{componentRef:b,route:r,contexts:M})}}deactivateRouteAndOutlet(r,i){let l=i.getContext(r.value.outlet),u=l&&r.value.component?l.children:i,o=Sp(r);for(let b of Object.values(o))this.deactivateRouteAndItsChildren(b,u);l&&(l.outlet&&(l.outlet.deactivate(),l.children.onOutletDeactivated()),l.attachRef=null,l.route=null)}activateChildRoutes(r,i,l){let u=Sp(i);r.children.forEach(o=>{this.activateRoutes(o,u[o.value.outlet],l),this.forwardEvent(new H_(o.value.snapshot))}),r.children.length&&this.forwardEvent(new U_(r.value.snapshot))}activateRoutes(r,i,l){let u=r.value,o=i?i.value:null;if(kx(u),u===o)if(u.component){let b=l.getOrCreateContext(u.outlet);this.activateChildRoutes(r,i,b.children)}else this.activateChildRoutes(r,i,l);else if(u.component){let b=l.getOrCreateContext(u.outlet);if(this.routeReuseStrategy.shouldAttach(u.snapshot)){let M=this.routeReuseStrategy.retrieve(u.snapshot);this.routeReuseStrategy.store(u.snapshot,null),b.children.onOutletReAttached(M.contexts),b.attachRef=M.componentRef,b.route=M.route.value,b.outlet&&b.outlet.attach(M.componentRef,M.route.value),kx(M.route.value),this.activateChildRoutes(r,null,b.children)}else b.attachRef=null,b.route=u,b.outlet&&b.outlet.activateWith(u,b.injector),this.activateChildRoutes(r,null,b.children)}else this.activateChildRoutes(r,null,l)}},Y_=class{path;route;constructor(r){this.path=r,this.route=this.path[this.path.length-1]}},Ep=class{component;route;constructor(r,i){this.component=r,this.route=i}};function VV(t,r,i){let l=t._root,u=r?r._root:null;return Mg(l,u,i,[l.value])}function UV(t){let r=t.routeConfig?t.routeConfig.canActivateChild:null;return!r||r.length===0?null:{node:t,guards:r}}function Op(t,r){let i=Symbol(),l=r.get(t,i);return l===i?typeof t=="function"&&!J1(t)?t:r.get(t):l}function Mg(t,r,i,l,u={canDeactivateChecks:[],canActivateChecks:[]}){let o=Sp(r);return t.children.forEach(b=>{$V(b,o[b.value.outlet],i,l.concat([b.value]),u),delete o[b.value.outlet]}),Object.entries(o).forEach(([b,M])=>kg(M,i.getContext(b),u)),u}function $V(t,r,i,l,u={canDeactivateChecks:[],canActivateChecks:[]}){let o=t.value,b=r?r.value:null,M=i?i.getContext(t.value.outlet):null;if(b&&o.routeConfig===b.routeConfig){let P=HV(b,o,o.routeConfig.runGuardsAndResolvers);P?u.canActivateChecks.push(new Y_(l)):(o.data=b.data,o._resolvedData=b._resolvedData),o.component?Mg(t,r,M?M.children:null,l,u):Mg(t,r,i,l,u),P&&M&&M.outlet&&M.outlet.isActivated&&u.canDeactivateChecks.push(new Ep(M.outlet.component,b))}else b&&kg(r,M,u),u.canActivateChecks.push(new Y_(l)),o.component?Mg(t,null,M?M.children:null,l,u):Mg(t,null,i,l,u);return u}function HV(t,r,i){if(typeof i=="function")return i(t,r);switch(i){case"pathParamsChange":return!jh(t.url,r.url);case"pathParamsOrQueryParamsChange":return!jh(t.url,r.url)||!vc(t.queryParams,r.queryParams);case"always":return!0;case"paramsOrQueryParamsChange":return!Vx(t,r)||!vc(t.queryParams,r.queryParams);case"paramsChange":default:return!Vx(t,r)}}function kg(t,r,i){let l=Sp(t),u=t.value;Object.entries(l).forEach(([o,b])=>{u.component?r?kg(b,r.children.getContext(o),i):kg(b,null,i):kg(b,r,i)}),u.component?r&&r.outlet&&r.outlet.isActivated?i.canDeactivateChecks.push(new Ep(r.outlet.component,u)):i.canDeactivateChecks.push(new Ep(null,u)):i.canDeactivateChecks.push(new Ep(null,u))}function Hg(t){return typeof t=="function"}function GV(t){return typeof t=="boolean"}function WV(t){return t&&Hg(t.canLoad)}function qV(t){return t&&Hg(t.canActivate)}function ZV(t){return t&&Hg(t.canActivateChild)}function YV(t){return t&&Hg(t.canDeactivate)}function KV(t){return t&&Hg(t.canMatch)}function DA(t){return t instanceof Wc||t?.name==="EmptyError"}var M_=Symbol("INITIAL_VALUE");function Ap(){return ao(t=>lc(t.map(r=>r.pipe(Gs(1),z1(M_)))).pipe(Zn(r=>{for(let i of r)if(i!==!0){if(i===M_)return M_;if(i===!1||XV(i))return i}return!0}),Xi(r=>r!==M_),Gs(1)))}function XV(t){return Dp(t)||t instanceof Pp}function JV(t,r){return Fo(i=>{let{targetSnapshot:l,currentSnapshot:u,guards:{canActivateChecks:o,canDeactivateChecks:b}}=i;return b.length===0&&o.length===0?qn(hr($t({},i),{guardsResult:!0})):QV(b,l,u,t).pipe(Fo(M=>M&&GV(M)?e9(l,o,t,r):qn(M)),Zn(M=>hr($t({},i),{guardsResult:M})))})}function QV(t,r,i,l){return gi(t).pipe(Fo(u=>o9(u.component,u.route,i,r,l)),qc(u=>u!==!0,!0))}function e9(t,r,i,l){return gi(r).pipe(Zf(u=>qf(n9(u.route.parent,l),t9(u.route,l),i9(t,u.path,i),r9(t,u.route,i))),qc(u=>u!==!0,!0))}function t9(t,r){return t!==null&&r&&r(new $_(t)),qn(!0)}function n9(t,r){return t!==null&&r&&r(new V_(t)),qn(!0)}function r9(t,r,i){let l=r.routeConfig?r.routeConfig.canActivate:null;if(!l||l.length===0)return qn(!0);let u=l.map(o=>wm(()=>{let b=kp(r)??i,M=Op(o,b),P=qV(M)?M.canActivate(r,t):qs(b,()=>M(r,t));return pu(P).pipe(qc())}));return qn(u).pipe(Ap())}function i9(t,r,i){let l=r[r.length-1],o=r.slice(0,r.length-1).reverse().map(b=>UV(b)).filter(b=>b!==null).map(b=>wm(()=>{let M=b.guards.map(P=>{let Z=kp(b.node)??i,q=Op(P,Z),N=ZV(q)?q.canActivateChild(l,t):qs(Z,()=>q(l,t));return pu(N).pipe(qc())});return qn(M).pipe(Ap())}));return qn(o).pipe(Ap())}function o9(t,r,i,l,u){let o=r&&r.routeConfig?r.routeConfig.canDeactivate:null;if(!o||o.length===0)return qn(!0);let b=o.map(M=>{let P=kp(r)??u,Z=Op(M,P),q=YV(Z)?Z.canDeactivate(t,r,i,l):qs(P,()=>Z(t,r,i,l));return pu(q).pipe(qc())});return qn(b).pipe(Ap())}function s9(t,r,i,l){let u=r.canLoad;if(u===void 0||u.length===0)return qn(!0);let o=u.map(b=>{let M=Op(b,t),P=WV(M)?M.canLoad(r,i):qs(t,()=>M(r,i));return pu(P)});return qn(o).pipe(Ap(),TA(l))}function TA(t){return I1(Bi(r=>{if(typeof r!="boolean")throw Z_(t,r)}),Zn(r=>r===!0))}function a9(t,r,i,l){let u=r.canMatch;if(!u||u.length===0)return qn(!0);let o=u.map(b=>{let M=Op(b,t),P=KV(M)?M.canMatch(r,i):qs(t,()=>M(r,i));return pu(P)});return qn(o).pipe(Ap(),TA(l))}var Bg=class{segmentGroup;constructor(r){this.segmentGroup=r||null}},Vg=class extends Error{urlTree;constructor(r){super(),this.urlTree=r}};function Cp(t){return Wf(new Bg(t))}function l9(t){return Wf(new on(4e3,!1))}function c9(t){return Wf(IA(!1,ea.GuardRejected))}var Hx=class{urlSerializer;urlTree;constructor(r,i){this.urlSerializer=r,this.urlTree=i}lineralizeSegments(r,i){let l=[],u=i.root;for(;;){if(l=l.concat(u.segments),u.numberOfChildren===0)return qn(l);if(u.numberOfChildren>1||!u.children[lr])return l9(`${r.redirectTo}`);u=u.children[lr]}}applyRedirectCommands(r,i,l,u,o){return u9(i,u,o).pipe(Zn(b=>{if(b instanceof bc)throw new Vg(b);let M=this.applyRedirectCreateUrlTree(b,this.urlSerializer.parse(b),r,l);if(b[0]==="/")throw new Vg(M);return M}))}applyRedirectCreateUrlTree(r,i,l,u){let o=this.createSegmentGroup(r,i.root,l,u);return new bc(o,this.createQueryParams(i.queryParams,this.urlTree.queryParams),i.fragment)}createQueryParams(r,i){let l={};return Object.entries(r).forEach(([u,o])=>{if(typeof o=="string"&&o[0]===":"){let M=o.substring(1);l[u]=i[M]}else l[u]=o}),l}createSegmentGroup(r,i,l,u){let o=this.createSegments(r,i.segments,l,u),b={};return Object.entries(i.children).forEach(([M,P])=>{b[M]=this.createSegmentGroup(r,P,l,u)}),new Ur(o,b)}createSegments(r,i,l,u){return i.map(o=>o.path[0]===":"?this.findPosParam(r,o,u):this.findOrReturn(o,l))}findPosParam(r,i,l){let u=l[i.path.substring(1)];if(!u)throw new on(4001,!1);return u}findOrReturn(r,i){let l=0;for(let u of i){if(u.path===r.path)return i.splice(l),u;l++}return r}};function u9(t,r,i){if(typeof t=="string")return qn(t);let l=t,{queryParams:u,fragment:o,routeConfig:b,url:M,outlet:P,params:Z,data:q,title:N}=r;return pu(qs(i,()=>l({params:Z,data:q,queryParams:u,fragment:o,routeConfig:b,url:M,outlet:P,title:N})))}var Gx={matched:!1,consumedSegments:[],remainingSegments:[],parameters:{},positionalParamSegments:{}};function d9(t,r,i,l,u){let o=MA(t,r,i);return o.matched?(l=RV(r,l),a9(l,r,i,u).pipe(Zn(b=>b===!0?o:$t({},Gx)))):qn(o)}function MA(t,r,i){if(r.path==="**")return h9(i);if(r.path==="")return r.pathMatch==="full"&&(t.hasChildren()||i.length>0)?$t({},Gx):{matched:!0,consumedSegments:[],remainingSegments:i,parameters:{},positionalParamSegments:{}};let u=(r.matcher||iA)(i,t,r);if(!u)return $t({},Gx);let o={};Object.entries(u.posParams??{}).forEach(([M,P])=>{o[M]=P.path});let b=u.consumed.length>0?$t($t({},o),u.consumed[u.consumed.length-1].parameters):o;return{matched:!0,consumedSegments:u.consumed,remainingSegments:i.slice(u.consumed.length),parameters:b,positionalParamSegments:u.posParams??{}}}function h9(t){return{matched:!0,parameters:t.length>0?sA(t).parameters:{},consumedSegments:t,remainingSegments:[],positionalParamSegments:{}}}function tA(t,r,i,l){return i.length>0&&m9(t,i,l)?{segmentGroup:new Ur(r,p9(l,new Ur(i,t.children))),slicedSegments:[]}:i.length===0&&g9(t,i,l)?{segmentGroup:new Ur(t.segments,f9(t,i,l,t.children)),slicedSegments:i}:{segmentGroup:new Ur(t.segments,t.children),slicedSegments:i}}function f9(t,r,i,l){let u={};for(let o of i)if(J_(t,r,o)&&!l[jl(o)]){let b=new Ur([],{});u[jl(o)]=b}return $t($t({},l),u)}function p9(t,r){let i={};i[lr]=r;for(let l of t)if(l.path===""&&jl(l)!==lr){let u=new Ur([],{});i[jl(l)]=u}return i}function m9(t,r,i){return i.some(l=>J_(t,r,l)&&jl(l)!==lr)}function g9(t,r,i){return i.some(l=>J_(t,r,l))}function J_(t,r,i){return(t.hasChildren()||r.length>0)&&i.pathMatch==="full"?!1:i.path===""}function y9(t,r,i){return r.length===0&&!t.children[i]}var Wx=class{};function v9(t,r,i,l,u,o,b="emptyOnly"){return new qx(t,r,i,l,u,b,o).recognize()}var _9=31,qx=class{injector;configLoader;rootComponentType;config;urlTree;paramsInheritanceStrategy;urlSerializer;applyRedirects;absoluteRedirectCount=0;allowRedirects=!0;constructor(r,i,l,u,o,b,M){this.injector=r,this.configLoader=i,this.rootComponentType=l,this.config=u,this.urlTree=o,this.paramsInheritanceStrategy=b,this.urlSerializer=M,this.applyRedirects=new Hx(this.urlSerializer,this.urlTree)}noMatchError(r){return new on(4002,`'${r.segmentGroup}'`)}recognize(){let r=tA(this.urlTree.root,[],[],this.config).segmentGroup;return this.match(r).pipe(Zn(({children:i,rootSnapshot:l})=>{let u=new Oa(l,i),o=new zg("",u),b=mA(l,[],this.urlTree.queryParams,this.urlTree.fragment);return b.queryParams=this.urlTree.queryParams,o.url=this.urlSerializer.serialize(b),{state:o,tree:b}}))}match(r){let i=new Bh([],Object.freeze({}),Object.freeze($t({},this.urlTree.queryParams)),this.urlTree.fragment,Object.freeze({}),lr,this.rootComponentType,null,{});return this.processSegmentGroup(this.injector,this.config,r,lr,i).pipe(Zn(l=>({children:l,rootSnapshot:i})),rd(l=>{if(l instanceof Vg)return this.urlTree=l.urlTree,this.match(l.urlTree.root);throw l instanceof Bg?this.noMatchError(l):l}))}processSegmentGroup(r,i,l,u,o){return l.segments.length===0&&l.hasChildren()?this.processChildren(r,i,l,o):this.processSegment(r,i,l,l.segments,u,!0,o).pipe(Zn(b=>b instanceof Oa?[b]:[]))}processChildren(r,i,l,u){let o=[];for(let b of Object.keys(l.children))b==="primary"?o.unshift(b):o.push(b);return gi(o).pipe(Zf(b=>{let M=l.children[b],P=OV(i,b);return this.processSegmentGroup(r,P,M,b,u)}),L1((b,M)=>(b.push(...M),b)),id(null),O1(),Fo(b=>{if(b===null)return Cp(l);let M=PA(b);return b9(M),qn(M)}))}processSegment(r,i,l,u,o,b,M){return gi(i).pipe(Zf(P=>this.processSegmentAgainstRoute(P._injector??r,i,P,l,u,o,b,M).pipe(rd(Z=>{if(Z instanceof Bg)return qn(null);throw Z}))),qc(P=>!!P),rd(P=>{if(DA(P))return y9(l,u,o)?qn(new Wx):Cp(l);throw P}))}processSegmentAgainstRoute(r,i,l,u,o,b,M,P){return jl(l)!==b&&(b===lr||!J_(u,o,l))?Cp(u):l.redirectTo===void 0?this.matchSegmentAgainstRoute(r,u,l,o,b,P):this.allowRedirects&&M?this.expandSegmentAgainstRouteUsingRedirect(r,u,i,l,o,b,P):Cp(u)}expandSegmentAgainstRouteUsingRedirect(r,i,l,u,o,b,M){let{matched:P,parameters:Z,consumedSegments:q,positionalParamSegments:N,remainingSegments:X}=MA(i,u,o);if(!P)return Cp(i);typeof u.redirectTo=="string"&&u.redirectTo[0]==="/"&&(this.absoluteRedirectCount++,this.absoluteRedirectCount>_9&&(this.allowRedirects=!1));let K=new Bh(o,Z,Object.freeze($t({},this.urlTree.queryParams)),this.urlTree.fragment,nA(u),jl(u),u.component??u._loadedComponent??null,u,rA(u)),Q=q_(K,M,this.paramsInheritanceStrategy);return K.params=Object.freeze(Q.params),K.data=Object.freeze(Q.data),this.applyRedirects.applyRedirectCommands(q,u.redirectTo,N,K,r).pipe(ao(le=>this.applyRedirects.lineralizeSegments(u,le)),Fo(le=>this.processSegment(r,l,i,le.concat(X),b,!1,M)))}matchSegmentAgainstRoute(r,i,l,u,o,b){let M=d9(i,l,u,r,this.urlSerializer);return l.path==="**"&&(i.children={}),M.pipe(ao(P=>P.matched?(r=l._injector??r,this.getChildConfig(r,l,u).pipe(ao(({routes:Z})=>{let q=l._loadedInjector??r,{parameters:N,consumedSegments:X,remainingSegments:K}=P,Q=new Bh(X,N,Object.freeze($t({},this.urlTree.queryParams)),this.urlTree.fragment,nA(l),jl(l),l.component??l._loadedComponent??null,l,rA(l)),te=q_(Q,b,this.paramsInheritanceStrategy);Q.params=Object.freeze(te.params),Q.data=Object.freeze(te.data);let{segmentGroup:le,slicedSegments:j}=tA(i,X,K,Z);if(j.length===0&&le.hasChildren())return this.processChildren(q,Z,le,Q).pipe(Zn(ve=>new Oa(Q,ve)));if(Z.length===0&&j.length===0)return qn(new Oa(Q,[]));let re=jl(l)===o;return this.processSegment(q,Z,le,j,re?lr:o,!0,Q).pipe(Zn(ve=>new Oa(Q,ve instanceof Oa?[ve]:[])))}))):Cp(i)))}getChildConfig(r,i,l){return i.children?qn({routes:i.children,injector:r}):i.loadChildren?i._loadedRoutes!==void 0?qn({routes:i._loadedRoutes,injector:i._loadedInjector}):s9(r,i,l,this.urlSerializer).pipe(Fo(u=>u?this.configLoader.loadChildren(r,i).pipe(Bi(o=>{i._loadedRoutes=o.routes,i._loadedInjector=o.injector})):c9(i))):qn({routes:[],injector:r})}};function b9(t){t.sort((r,i)=>r.value.outlet===lr?-1:i.value.outlet===lr?1:r.value.outlet.localeCompare(i.value.outlet))}function w9(t){let r=t.value.routeConfig;return r&&r.path===""}function PA(t){let r=[],i=new Set;for(let l of t){if(!w9(l)){r.push(l);continue}let u=r.find(o=>l.value.routeConfig===o.value.routeConfig);u!==void 0?(u.children.push(...l.children),i.add(u)):r.push(l)}for(let l of i){let u=PA(l.children);r.push(new Oa(l.value,u))}return r.filter(l=>!i.has(l))}function nA(t){return t.data||{}}function rA(t){return t.resolve||{}}function x9(t,r,i,l,u,o){return Fo(b=>v9(t,r,i,l,b.extractedUrl,u,o).pipe(Zn(({state:M,tree:P})=>hr($t({},b),{targetSnapshot:M,urlAfterRedirects:P}))))}function C9(t,r){return Fo(i=>{let{targetSnapshot:l,guards:{canActivateChecks:u}}=i;if(!u.length)return qn(i);let o=new Set(u.map(P=>P.route)),b=new Set;for(let P of o)if(!b.has(P))for(let Z of AA(P))b.add(Z);let M=0;return gi(b).pipe(Zf(P=>o.has(P)?S9(P,l,t,r):(P.data=q_(P,P.parent,t).resolve,qn(void 0))),Bi(()=>M++),Yf(1),Fo(P=>M===b.size?qn(i):Ds))})}function AA(t){let r=t.children.map(i=>AA(i)).flat();return[t,...r]}function S9(t,r,i,l){let u=t.routeConfig,o=t._resolve;return u?.title!==void 0&&!xA(u)&&(o[Ug]=u.title),wm(()=>(t.data=q_(t,t.parent,i).resolve,I9(o,t,r,l).pipe(Zn(b=>(t._resolvedData=b,t.data=$t($t({},t.data),b),null)))))}function I9(t,r,i,l){let u=Lx(t);if(u.length===0)return qn({});let o={};return gi(u).pipe(Fo(b=>E9(t[b],r,i,l).pipe(qc(),Bi(M=>{if(M instanceof Pp)throw Z_(new Uh,M);o[b]=M}))),Yf(1),Zn(()=>o),rd(b=>DA(b)?Ds:Wf(b)))}function E9(t,r,i,l){let u=kp(r)??l,o=Op(t,u),b=o.resolve?o.resolve(r,i):qs(u,()=>o(r,i));return pu(b)}function Rx(t){return ao(r=>{let i=t(r);return i?gi(i).pipe(Zn(()=>r)):qn(r)})}var Xx=(()=>{class t{buildTitle(i){let l,u=i.root;for(;u!==void 0;)l=this.getResolvedTitleForRoute(u)??l,u=u.children.find(o=>o.outlet===lr);return l}getResolvedTitleForRoute(i){return i.data[Ug]}static \u0275fac=function(l){return new(l||t)};static \u0275prov=Zt({token:t,factory:()=>je(kA),providedIn:"root"})}return t})(),kA=(()=>{class t extends Xx{title;constructor(i){super(),this.title=i}updateTitle(i){let l=this.buildTitle(i);l!==void 0&&this.title.setTitle(l)}static \u0275fac=function(l){return new(l||t)(rr(MM))};static \u0275prov=Zt({token:t,factory:t.\u0275fac,providedIn:"root"})}return t})(),Gg=new Rn("",{providedIn:"root",factory:()=>({})}),Wg=new Rn(""),RA=(()=>{class t{componentLoaders=new WeakMap;childrenLoaders=new WeakMap;onLoadStartListener;onLoadEndListener;compiler=je(gw);loadComponent(i,l){if(this.componentLoaders.get(l))return this.componentLoaders.get(l);if(l._loadedComponent)return qn(l._loadedComponent);this.onLoadStartListener&&this.onLoadStartListener(l);let u=pu(qs(i,()=>l.loadComponent())).pipe(Zn(LA),ao(NA),Bi(b=>{this.onLoadEndListener&&this.onLoadEndListener(l),l._loadedComponent=b}),xm(()=>{this.componentLoaders.delete(l)})),o=new Hf(u,()=>new Wr).pipe($f());return this.componentLoaders.set(l,o),o}loadChildren(i,l){if(this.childrenLoaders.get(l))return this.childrenLoaders.get(l);if(l._loadedRoutes)return qn({routes:l._loadedRoutes,injector:l._loadedInjector});this.onLoadStartListener&&this.onLoadStartListener(l);let o=OA(l,this.compiler,i,this.onLoadEndListener).pipe(xm(()=>{this.childrenLoaders.delete(l)})),b=new Hf(o,()=>new Wr).pipe($f());return this.childrenLoaders.set(l,b),b}static \u0275fac=function(l){return new(l||t)};static \u0275prov=Zt({token:t,factory:t.\u0275fac,providedIn:"root"})}return t})();function OA(t,r,i,l){return pu(qs(i,()=>t.loadChildren())).pipe(Zn(LA),ao(NA),Fo(u=>u instanceof Zv||Array.isArray(u)?qn(u):gi(r.compileModuleAsync(u))),Zn(u=>{l&&l(t);let o,b,M=!1;return Array.isArray(u)?(b=u,M=!0):(o=u.create(i).injector,b=o.get(Wg,[],{optional:!0,self:!0}).flat()),{routes:b.map(Kx),injector:o}}))}function D9(t){return t&&typeof t=="object"&&"default"in t}function LA(t){return D9(t)?t.default:t}function NA(t){return qn(t)}var Q_=(()=>{class t{static \u0275fac=function(l){return new(l||t)};static \u0275prov=Zt({token:t,factory:()=>je(T9),providedIn:"root"})}return t})(),T9=(()=>{class t{shouldProcessUrl(i){return!0}extract(i){return i}merge(i,l){return i}static \u0275fac=function(l){return new(l||t)};static \u0275prov=Zt({token:t,factory:t.\u0275fac,providedIn:"root"})}return t})(),FA=new Rn("");var zA=new Rn(""),jA=(()=>{class t{currentNavigation=null;currentTransition=null;lastSuccessfulNavigation=null;events=new Wr;transitionAbortWithErrorSubject=new Wr;configLoader=je(RA);environmentInjector=je(ms);destroyRef=je(Ks);urlSerializer=je($g);rootContexts=je(Rp);location=je(yp);inputBindingEnabled=je(X_,{optional:!0})!==null;titleStrategy=je(Xx);options=je(Gg,{optional:!0})||{};paramsInheritanceStrategy=this.options.paramsInheritanceStrategy||"emptyOnly";urlHandlingStrategy=je(Q_);createViewTransition=je(FA,{optional:!0});navigationErrorHandler=je(zA,{optional:!0});navigationId=0;get hasRequestedNavigation(){return this.navigationId!==0}transitions;afterPreactivation=()=>qn(void 0);rootComponentType=null;destroyed=!1;constructor(){let i=u=>this.events.next(new j_(u)),l=u=>this.events.next(new B_(u));this.configLoader.onLoadEndListener=l,this.configLoader.onLoadStartListener=i,this.destroyRef.onDestroy(()=>{this.destroyed=!0})}complete(){this.transitions?.complete()}handleNavigationRequest(i){let l=++this.navigationId;this.transitions?.next(hr($t({},i),{extractedUrl:this.urlHandlingStrategy.extract(i.rawUrl),targetSnapshot:null,targetRouterState:null,guards:{canActivateChecks:[],canDeactivateChecks:[]},guardsResult:null,abortController:new AbortController,id:l}))}setupNavigations(i){return this.transitions=new Ti(null),this.transitions.pipe(Xi(l=>l!==null),ao(l=>{let u=!1;return qn(l).pipe(ao(o=>{if(this.navigationId>l.id)return this.cancelNavigationTransition(l,"",ea.SupersededByNewNavigation),Ds;this.currentTransition=l,this.currentNavigation={id:o.id,initialUrl:o.rawUrl,extractedUrl:o.extractedUrl,targetBrowserUrl:typeof o.extras.browserUrl=="string"?this.urlSerializer.parse(o.extras.browserUrl):o.extras.browserUrl,trigger:o.source,extras:o.extras,previousNavigation:this.lastSuccessfulNavigation?hr($t({},this.lastSuccessfulNavigation),{previousNavigation:null}):null,abort:()=>o.abortController.abort()};let b=!i.navigated||this.isUpdatingInternalState()||this.isUpdatedBrowserUrl(),M=o.extras.onSameUrlNavigation??i.onSameUrlNavigation;if(!b&&M!=="reload"){let P="";return this.events.next(new fu(o.id,this.urlSerializer.serialize(o.rawUrl),P,Og.IgnoredSameUrlNavigation)),o.resolve(!1),Ds}if(this.urlHandlingStrategy.shouldProcessUrl(o.rawUrl))return qn(o).pipe(ao(P=>(this.events.next(new $h(P.id,this.urlSerializer.serialize(P.extractedUrl),P.source,P.restoredState)),P.id!==this.navigationId?Ds:Promise.resolve(P))),x9(this.environmentInjector,this.configLoader,this.rootComponentType,i.config,this.urlSerializer,this.paramsInheritanceStrategy),Bi(P=>{l.targetSnapshot=P.targetSnapshot,l.urlAfterRedirects=P.urlAfterRedirects,this.currentNavigation=hr($t({},this.currentNavigation),{finalUrl:P.urlAfterRedirects});let Z=new Lg(P.id,this.urlSerializer.serialize(P.extractedUrl),this.urlSerializer.serialize(P.urlAfterRedirects),P.targetSnapshot);this.events.next(Z)}));if(b&&this.urlHandlingStrategy.shouldProcessUrl(o.currentRawUrl)){let{id:P,extractedUrl:Z,source:q,restoredState:N,extras:X}=o,K=new $h(P,this.urlSerializer.serialize(Z),q,N);this.events.next(K);let Q=bA(this.rootComponentType).snapshot;return this.currentTransition=l=hr($t({},o),{targetSnapshot:Q,urlAfterRedirects:Z,extras:hr($t({},X),{skipLocationChange:!1,replaceUrl:!1})}),this.currentNavigation.finalUrl=Z,qn(l)}else{let P="";return this.events.next(new fu(o.id,this.urlSerializer.serialize(o.extractedUrl),P,Og.IgnoredByUrlHandlingStrategy)),o.resolve(!1),Ds}}),Bi(o=>{let b=new L_(o.id,this.urlSerializer.serialize(o.extractedUrl),this.urlSerializer.serialize(o.urlAfterRedirects),o.targetSnapshot);this.events.next(b)}),Zn(o=>(this.currentTransition=l=hr($t({},o),{guards:VV(o.targetSnapshot,o.currentSnapshot,this.rootContexts)}),l)),JV(this.environmentInjector,o=>this.events.next(o)),Bi(o=>{if(l.guardsResult=o.guardsResult,o.guardsResult&&typeof o.guardsResult!="boolean")throw Z_(this.urlSerializer,o.guardsResult);let b=new N_(o.id,this.urlSerializer.serialize(o.extractedUrl),this.urlSerializer.serialize(o.urlAfterRedirects),o.targetSnapshot,!!o.guardsResult);this.events.next(b)}),Xi(o=>o.guardsResult?!0:(this.cancelNavigationTransition(o,"",ea.GuardRejected),!1)),Rx(o=>{if(o.guards.canActivateChecks.length!==0)return qn(o).pipe(Bi(b=>{let M=new F_(b.id,this.urlSerializer.serialize(b.extractedUrl),this.urlSerializer.serialize(b.urlAfterRedirects),b.targetSnapshot);this.events.next(M)}),ao(b=>{let M=!1;return qn(b).pipe(C9(this.paramsInheritanceStrategy,this.environmentInjector),Bi({next:()=>M=!0,complete:()=>{M||this.cancelNavigationTransition(b,"",ea.NoDataFromResolver)}}))}),Bi(b=>{let M=new z_(b.id,this.urlSerializer.serialize(b.extractedUrl),this.urlSerializer.serialize(b.urlAfterRedirects),b.targetSnapshot);this.events.next(M)}))}),Rx(o=>{let b=M=>{let P=[];if(M.routeConfig?.loadComponent&&!M.routeConfig._loadedComponent){let Z=kp(M)??this.environmentInjector;P.push(this.configLoader.loadComponent(Z,M.routeConfig).pipe(Bi(q=>{M.component=q}),Zn(()=>{})))}for(let Z of M.children)P.push(...b(Z));return P};return lc(b(o.targetSnapshot.root)).pipe(id(null),Gs(1))}),Rx(()=>this.afterPreactivation()),ao(()=>{let{currentSnapshot:o,targetSnapshot:b}=l,M=this.createViewTransition?.(this.environmentInjector,o.root,b.root);return M?gi(M).pipe(Zn(()=>l)):qn(l)}),Zn(o=>{let b=NV(i.routeReuseStrategy,o.targetSnapshot,o.currentRouterState);return this.currentTransition=l=hr($t({},o),{targetRouterState:b}),this.currentNavigation.targetRouterState=b,l}),Bi(()=>{this.events.next(new Ng)}),BV(this.rootContexts,i.routeReuseStrategy,o=>this.events.next(o),this.inputBindingEnabled),Gs(1),ca(new Sr(o=>{let b=l.abortController.signal,M=()=>o.next();return b.addEventListener("abort",M),()=>b.removeEventListener("abort",M)}).pipe(Xi(()=>!u&&!l.targetRouterState),Bi(()=>{this.cancelNavigationTransition(l,l.abortController.signal.reason+"",ea.Aborted)}))),Bi({next:o=>{u=!0,this.lastSuccessfulNavigation=this.currentNavigation,this.events.next(new hu(o.id,this.urlSerializer.serialize(o.extractedUrl),this.urlSerializer.serialize(o.urlAfterRedirects))),this.titleStrategy?.updateTitle(o.targetRouterState.snapshot),o.resolve(!0)},complete:()=>{u=!0}}),ca(this.transitionAbortWithErrorSubject.pipe(Bi(o=>{throw o}))),xm(()=>{u||this.cancelNavigationTransition(l,"",ea.SupersededByNewNavigation),this.currentTransition?.id===l.id&&(this.currentNavigation=null,this.currentTransition=null)}),rd(o=>{if(this.destroyed)return l.resolve(!1),Ds;if(u=!0,EA(o))this.events.next(new _c(l.id,this.urlSerializer.serialize(l.extractedUrl),o.message,o.cancellationCode)),jV(o)?this.events.next(new Mp(o.url,o.navigationBehaviorOptions)):l.resolve(!1);else{let b=new Tp(l.id,this.urlSerializer.serialize(l.extractedUrl),o,l.targetSnapshot??void 0);try{let M=qs(this.environmentInjector,()=>this.navigationErrorHandler?.(b));if(M instanceof Pp){let{message:P,cancellationCode:Z}=Z_(this.urlSerializer,M);this.events.next(new _c(l.id,this.urlSerializer.serialize(l.extractedUrl),P,Z)),this.events.next(new Mp(M.redirectTo,M.navigationBehaviorOptions))}else throw this.events.next(b),o}catch(M){this.options.resolveNavigationPromiseOnError?l.resolve(!1):l.reject(M)}}return Ds}))}))}cancelNavigationTransition(i,l,u){let o=new _c(i.id,this.urlSerializer.serialize(i.extractedUrl),l,u);this.events.next(o),i.resolve(!1)}isUpdatingInternalState(){return this.currentTransition?.extractedUrl.toString()!==this.currentTransition?.currentUrlTree.toString()}isUpdatedBrowserUrl(){let i=this.urlHandlingStrategy.extract(this.urlSerializer.parse(this.location.path(!0))),l=this.currentNavigation?.targetBrowserUrl??this.currentNavigation?.extractedUrl;return i.toString()!==l?.toString()&&!this.currentNavigation?.extras.skipLocationChange}static \u0275fac=function(l){return new(l||t)};static \u0275prov=Zt({token:t,factory:t.\u0275fac,providedIn:"root"})}return t})();function M9(t){return t!==Ag}var BA=(()=>{class t{static \u0275fac=function(l){return new(l||t)};static \u0275prov=Zt({token:t,factory:()=>je(P9),providedIn:"root"})}return t})(),K_=class{shouldDetach(r){return!1}store(r,i){}shouldAttach(r){return!1}retrieve(r){return null}shouldReuseRoute(r,i){return r.routeConfig===i.routeConfig}},P9=(()=>{class t extends K_{static \u0275fac=(()=>{let i;return function(u){return(i||(i=hp(t)))(u||t)}})();static \u0275prov=Zt({token:t,factory:t.\u0275fac,providedIn:"root"})}return t})(),VA=(()=>{class t{urlSerializer=je($g);options=je(Gg,{optional:!0})||{};canceledNavigationResolution=this.options.canceledNavigationResolution||"replace";location=je(yp);urlHandlingStrategy=je(Q_);urlUpdateStrategy=this.options.urlUpdateStrategy||"deferred";currentUrlTree=new bc;getCurrentUrlTree(){return this.currentUrlTree}rawUrlTree=this.currentUrlTree;getRawUrlTree(){return this.rawUrlTree}createBrowserPath({finalUrl:i,initialUrl:l,targetBrowserUrl:u}){let o=i!==void 0?this.urlHandlingStrategy.merge(i,l):l,b=u??o;return b instanceof bc?this.urlSerializer.serialize(b):b}commitTransition({targetRouterState:i,finalUrl:l,initialUrl:u}){l&&i?(this.currentUrlTree=l,this.rawUrlTree=this.urlHandlingStrategy.merge(l,u),this.routerState=i):this.rawUrlTree=u}routerState=bA(null);getRouterState(){return this.routerState}stateMemento=this.createStateMemento();updateStateMemento(){this.stateMemento=this.createStateMemento()}createStateMemento(){return{rawUrlTree:this.rawUrlTree,currentUrlTree:this.currentUrlTree,routerState:this.routerState}}resetInternalState({finalUrl:i}){this.routerState=this.stateMemento.routerState,this.currentUrlTree=this.stateMemento.currentUrlTree,this.rawUrlTree=this.urlHandlingStrategy.merge(this.currentUrlTree,i??this.rawUrlTree)}static \u0275fac=function(l){return new(l||t)};static \u0275prov=Zt({token:t,factory:()=>je(A9),providedIn:"root"})}return t})(),A9=(()=>{class t extends VA{currentPageId=0;lastSuccessfulId=-1;restoredState(){return this.location.getState()}get browserPageId(){return this.canceledNavigationResolution!=="computed"?this.currentPageId:this.restoredState()?.\u0275routerPageId??this.currentPageId}registerNonRouterCurrentEntryChangeListener(i){return this.location.subscribe(l=>{l.type==="popstate"&&setTimeout(()=>{i(l.url,l.state,"popstate")})})}handleRouterEvent(i,l){i instanceof $h?this.updateStateMemento():i instanceof fu?this.commitTransition(l):i instanceof Lg?this.urlUpdateStrategy==="eager"&&(l.extras.skipLocationChange||this.setBrowserUrl(this.createBrowserPath(l),l)):i instanceof Ng?(this.commitTransition(l),this.urlUpdateStrategy==="deferred"&&!l.extras.skipLocationChange&&this.setBrowserUrl(this.createBrowserPath(l),l)):i instanceof _c&&i.code!==ea.SupersededByNewNavigation&&i.code!==ea.Redirect?this.restoreHistory(l):i instanceof Tp?this.restoreHistory(l,!0):i instanceof hu&&(this.lastSuccessfulId=i.id,this.currentPageId=this.browserPageId)}setBrowserUrl(i,{extras:l,id:u}){let{replaceUrl:o,state:b}=l;if(this.location.isCurrentPathEqualTo(i)||o){let M=this.browserPageId,P=$t($t({},b),this.generateNgRouterState(u,M));this.location.replaceState(i,"",P)}else{let M=$t($t({},b),this.generateNgRouterState(u,this.browserPageId+1));this.location.go(i,"",M)}}restoreHistory(i,l=!1){if(this.canceledNavigationResolution==="computed"){let u=this.browserPageId,o=this.currentPageId-u;o!==0?this.location.historyGo(o):this.getCurrentUrlTree()===i.finalUrl&&o===0&&(this.resetInternalState(i),this.resetUrlToCurrentUrlTree())}else this.canceledNavigationResolution==="replace"&&(l&&this.resetInternalState(i),this.resetUrlToCurrentUrlTree())}resetUrlToCurrentUrlTree(){this.location.replaceState(this.urlSerializer.serialize(this.getRawUrlTree()),"",this.generateNgRouterState(this.lastSuccessfulId,this.currentPageId))}generateNgRouterState(i,l){return this.canceledNavigationResolution==="computed"?{navigationId:i,\u0275routerPageId:l}:{navigationId:i}}static \u0275fac=(()=>{let i;return function(u){return(i||(i=hp(t)))(u||t)}})();static \u0275prov=Zt({token:t,factory:t.\u0275fac,providedIn:"root"})}return t})();function Jx(t,r){t.events.pipe(Xi(i=>i instanceof hu||i instanceof _c||i instanceof Tp||i instanceof fu),Zn(i=>i instanceof hu||i instanceof fu?0:(i instanceof _c?i.code===ea.Redirect||i.code===ea.SupersededByNewNavigation:!1)?2:1),Xi(i=>i!==2),Gs(1)).subscribe(()=>{r()})}var k9={paths:"exact",fragment:"ignored",matrixParams:"ignored",queryParams:"exact"},R9={paths:"subset",fragment:"ignored",matrixParams:"ignored",queryParams:"subset"},Ed=(()=>{class t{get currentUrlTree(){return this.stateManager.getCurrentUrlTree()}get rawUrlTree(){return this.stateManager.getRawUrlTree()}disposed=!1;nonRouterCurrentEntryChangeSubscription;console=je(Yv);stateManager=je(VA);options=je(Gg,{optional:!0})||{};pendingTasks=je(Jc);urlUpdateStrategy=this.options.urlUpdateStrategy||"deferred";navigationTransitions=je(jA);urlSerializer=je($g);location=je(yp);urlHandlingStrategy=je(Q_);injector=je(ms);_events=new Wr;get events(){return this._events}get routerState(){return this.stateManager.getRouterState()}navigated=!1;routeReuseStrategy=je(BA);onSameUrlNavigation=this.options.onSameUrlNavigation||"ignore";config=je(Wg,{optional:!0})?.flat()??[];componentInputBindingEnabled=!!je(X_,{optional:!0});constructor(){this.resetConfig(this.config),this.navigationTransitions.setupNavigations(this).subscribe({error:i=>{this.console.warn(i)}}),this.subscribeToNavigationEvents()}eventsSubscription=new Ki;subscribeToNavigationEvents(){let i=this.navigationTransitions.events.subscribe(l=>{try{let u=this.navigationTransitions.currentTransition,o=this.navigationTransitions.currentNavigation;if(u!==null&&o!==null){if(this.stateManager.handleRouterEvent(l,o),l instanceof _c&&l.code!==ea.Redirect&&l.code!==ea.SupersededByNewNavigation)this.navigated=!0;else if(l instanceof hu)this.navigated=!0;else if(l instanceof Mp){let b=l.navigationBehaviorOptions,M=this.urlHandlingStrategy.merge(l.url,u.currentRawUrl),P=$t({browserUrl:u.extras.browserUrl,info:u.extras.info,skipLocationChange:u.extras.skipLocationChange,replaceUrl:u.extras.replaceUrl||this.urlUpdateStrategy==="eager"||M9(u.source)},b);this.scheduleNavigation(M,Ag,null,P,{resolve:u.resolve,reject:u.reject,promise:u.promise})}}kV(l)&&this._events.next(l)}catch(u){this.navigationTransitions.transitionAbortWithErrorSubject.next(u)}});this.eventsSubscription.add(i)}resetRootComponentType(i){this.routerState.root.component=i,this.navigationTransitions.rootComponentType=i}initialNavigation(){this.setUpLocationChangeListener(),this.navigationTransitions.hasRequestedNavigation||this.navigateToSyncWithBrowser(this.location.path(!0),Ag,this.stateManager.restoredState())}setUpLocationChangeListener(){this.nonRouterCurrentEntryChangeSubscription??=this.stateManager.registerNonRouterCurrentEntryChangeListener((i,l,u)=>{this.navigateToSyncWithBrowser(i,u,l)})}navigateToSyncWithBrowser(i,l,u){let o={replaceUrl:!0},b=u?.navigationId?u:null;if(u){let P=$t({},u);delete P.navigationId,delete P.\u0275routerPageId,Object.keys(P).length!==0&&(o.state=P)}let M=this.parseUrl(i);this.scheduleNavigation(M,l,b,o).catch(P=>{this.disposed||this.injector.get(Ja)(P)})}get url(){return this.serializeUrl(this.currentUrlTree)}getCurrentNavigation(){return this.navigationTransitions.currentNavigation}get lastSuccessfulNavigation(){return this.navigationTransitions.lastSuccessfulNavigation}resetConfig(i){this.config=i.map(Kx),this.navigated=!1}ngOnDestroy(){this.dispose()}dispose(){this._events.unsubscribe(),this.navigationTransitions.complete(),this.nonRouterCurrentEntryChangeSubscription&&(this.nonRouterCurrentEntryChangeSubscription.unsubscribe(),this.nonRouterCurrentEntryChangeSubscription=void 0),this.disposed=!0,this.eventsSubscription.unsubscribe()}createUrlTree(i,l={}){let{relativeTo:u,queryParams:o,fragment:b,queryParamsHandling:M,preserveFragment:P}=l,Z=P?this.currentUrlTree.fragment:b,q=null;switch(M??this.options.defaultQueryParamsHandling){case"merge":q=$t($t({},this.currentUrlTree.queryParams),o);break;case"preserve":q=this.currentUrlTree.queryParams;break;default:q=o||null}q!==null&&(q=this.removeEmptyProps(q));let N;try{let X=u?u.snapshot:this.routerState.snapshot.root;N=gA(X)}catch{(typeof i[0]!="string"||i[0][0]!=="/")&&(i=[]),N=this.currentUrlTree.root}return yA(N,i,q,Z??null)}navigateByUrl(i,l={skipLocationChange:!1}){let u=Dp(i)?i:this.parseUrl(i),o=this.urlHandlingStrategy.merge(u,this.rawUrlTree);return this.scheduleNavigation(o,Ag,null,l)}navigate(i,l={skipLocationChange:!1}){return O9(i),this.navigateByUrl(this.createUrlTree(i,l),l)}serializeUrl(i){return this.urlSerializer.serialize(i)}parseUrl(i){try{return this.urlSerializer.parse(i)}catch{return this.urlSerializer.parse("/")}}isActive(i,l){let u;if(l===!0?u=$t({},k9):l===!1?u=$t({},R9):u=l,Dp(i))return XP(this.currentUrlTree,i,u);let o=this.parseUrl(i);return XP(this.currentUrlTree,o,u)}removeEmptyProps(i){return Object.entries(i).reduce((l,[u,o])=>(o!=null&&(l[u]=o),l),{})}scheduleNavigation(i,l,u,o,b){if(this.disposed)return Promise.resolve(!1);let M,P,Z;b?(M=b.resolve,P=b.reject,Z=b.promise):Z=new Promise((N,X)=>{M=N,P=X});let q=this.pendingTasks.add();return Jx(this,()=>{queueMicrotask(()=>this.pendingTasks.remove(q))}),this.navigationTransitions.handleNavigationRequest({source:l,restoredState:u,currentUrlTree:this.currentUrlTree,currentRawUrl:this.currentUrlTree,rawUrl:i,extras:o,resolve:M,reject:P,promise:Z,currentSnapshot:this.routerState.snapshot,currentRouterState:this.routerState}),Z.catch(N=>Promise.reject(N))}static \u0275fac=function(l){return new(l||t)};static \u0275prov=Zt({token:t,factory:t.\u0275fac,providedIn:"root"})}return t})();function O9(t){for(let r=0;r<t.length;r++)if(t[r]==null)throw new on(4008,!1)}var F9=new Rn("");function Qx(t,...r){return cd([{provide:Wg,multi:!0,useValue:t},[],{provide:el,useFactory:z9,deps:[Ed]},{provide:Kv,multi:!0,useFactory:j9},r.map(i=>i.\u0275providers)])}function z9(t){return t.routerState.root}function j9(){let t=je(Yo);return r=>{let i=t.get(Ll);if(r!==i.components[0])return;let l=t.get(Ed),u=t.get(B9);t.get(V9)===1&&l.initialNavigation(),t.get(U9,null,{optional:!0})?.setUpPreloading(),t.get(F9,null,{optional:!0})?.init(),l.resetRootComponentType(i.componentTypes[0]),u.closed||(u.next(),u.complete(),u.unsubscribe())}}var B9=new Rn("",{factory:()=>new Wr}),V9=new Rn("",{providedIn:"root",factory:()=>1});var U9=new Rn("");var Uo=class t{logger=je(ar);router=je(Ed);history=[["/"]];resetHistory(){this.history=[["/"]],this.router.navigate(["/"])}getCurrentPath(){return this.history[this.history.length-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(r){this.router.navigate(["/profile",r]),this.history.push(["/profile",r])}navigateToRoute(r){this.router.navigate(["/route",r]),this.history.push(["/route",r])}goBack(){if(this.history.length>1){this.history.pop();let r=this.history.pop();if(!r){this.logger.log("No previous path found");return}this.router.navigate(r),this.history.push(r);return}this.logger.log("Only current path in history")}static \u0275fac=function(i){return new(i||t)};static \u0275prov=Zt({token:t,factory:t.\u0275fac})};function eC(t){return E_(t)}var H9={"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"]};function e0(t){let r=H9[t];return r||["fak","shopping"]}var nC={};US(nC,{faAirport:()=>G9,faArrowTopRight:()=>W9,faBackground:()=>tC,faBeauty:()=>q9,faCenter:()=>Z9,faCompass:()=>Y9,faCompassNorth:()=>K9,faDeals:()=>X9,faEvents:()=>J9,faFoodAndBeverage:()=>Q9,faHealth:()=>eU,faHotels:()=>tU,faParking:()=>nU,faRoute:()=>rU,faServices:()=>iU,faShopping:()=>oU,faUser:()=>sU});var G9={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"]},W9={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"]},tC={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"]},q9={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"]},Z9={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"]},Y9={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"]},K9={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"]},X9={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"]},J9={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"]},Q9={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"]},eU={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"]},tU={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"]},nU={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"]},rU={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"]},iU={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"]},oU={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"]},sU={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 da=class t{onDestroy=new Wr;logger=je(ar);mapService=je(So);navigatorService=je(Uo);loadedDataService=je(Xo);iconLibraryService=je(gr);document=je(wi);markers=new Set;ngOnDestroy(){this.onDestroy.next(),this.onDestroy.complete()}getIconFromPlace(r){this.logger.log("getIconFromPlace",r);let[i,l]=e0(r.localizedCategory||"");return this.iconLibraryService.getIconDefinition(i,l)}toSVGString(r){return Tx(i=>{i(eC(tC)),i(eC(r))}).html.join("")}createPlaceMarkerElement(r){let i=this.getIconFromPlace(r);return this.createElement(r.lazarilloId,i)}createOriginMarkerElement(){let r=this.iconLibraryService.getIconDefinition("fak","user");return this.createElement("origin",r,["route-marker","origin-marker"])}createElement(r,i,l=[]){let u=this.document.createElement("div");return u.className="marker",u.classList.add(...l),u.id=`${r}-marker`,u.innerHTML=this.toSVGString(i),u}addMarker(r){if(this.markers.has(r.lazarilloId)){this.logger.log("Marker already exists for place",r.lazarilloId);return}let i={element:this.createPlaceMarkerElement(r),id:r.lazarilloId,coordinate:r.position,onClick:()=>{this.logger.log("Marker clicked for place",r.lazarilloId),this.navigatorService.navigateToProfile(r.lazarilloId)},anchor:"bottom"};this.mapService.addMarker(i),this.markers.add(r.lazarilloId),this.logger.log("Marker added for place",r.lazarilloId)}addInitialMarkers(){this.loadedDataService.getAvailablePlaces().pipe(Gs(1),ca(this.onDestroy)).subscribe({next:r=>{r.forEach(i=>{this.addMarker(i)})},error:r=>{this.logger.logWarning("Error adding initial markers",r)}})}addMarkers(r){this.mapService.mapReady.pipe(Xi(i=>i),Gs(1),ca(this.onDestroy)).subscribe({next:()=>{this.removeAllMarkers(),r.forEach(i=>{this.addMarker(i)})},error:i=>{this.logger.logWarning("Error adding markers",i)}})}removeAllMarkers(){this.mapService.removeAllMarkers(),this.markers.clear()}hasMarker(r){return this.markers.has(r)}selectMarker(r){if(!this.markers.has(r)){this.logger.logWarning("Marker not found",r);return}let i=this.document.getElementById(`${r}-marker`);if(!i){this.logger.logWarning("Marker not found",r);return}i.classList.add("selected")}deselectMarker(r){if(!this.markers.has(r)){this.logger.logWarning("Marker not found",r);return}let i=this.document.getElementById(`${r}-marker`);if(!i){this.logger.logWarning("Marker not found",r);return}i.classList.remove("selected")}addOriginMarker(r){let i={element:this.createOriginMarkerElement(),id:"origin",coordinate:r,anchor:"bottom"};this.mapService.addMarker(i),this.markers.add("origin")}addDestinationMarker(r){let i={element:this.createElement(r.lazarilloId,this.getIconFromPlace(r),["route-marker","destination-marker"]),id:r.lazarilloId,coordinate:r.position,anchor:"bottom"};this.mapService.addMarker(i),this.markers.add(r.lazarilloId)}addRouteMarker(r){let i={element:this.createElement(r.lazarilloId,this.getIconFromPlace(r),["route-marker"]),id:r.lazarilloId,coordinate:r.position,anchor:"bottom"};this.mapService.addMarker(i),this.markers.add(r.lazarilloId)}addRouteMarkers(r){for(let i of r)this.addRouteMarker(i)}prepareToMapReuse(){this.removeAllMarkers()}static \u0275fac=function(i){return new(i||t)};static \u0275prov=Zt({token:t,factory:t.\u0275fac})};var UA={fas:{},fak:{}},rC=[];function $A(t){Object.keys(t).forEach(function(r){if(r!=="prefix"){var i=t[r],l=i.icon[2];l.forEach(function(u){typeof u=="string"&&(UA[i.prefix][u]=i)}),UA[i.prefix][i.iconName]=i,rC.push(i)}})}$A(Yw);$A(nC);var n0=$S(Gw());var t0=class t{apiKey=kr("");institutionId=kr("");initialData=kr("");showCategoryFilters=kr(!0,{transform:r=>typeof r=="string"?r==="true":r});showCityFilter=kr(!0,{transform:r=>typeof r=="string"?r==="true":r});defaultToMap=kr(!1,{transform:r=>typeof r=="string"?r==="true":r});inheritFontFamily=kr(!1,{transform:r=>typeof r=="string"?r==="true":r});hideDeals=kr(!1,{transform:this.transformToBoolean});router=je(Ed);navigatorService=je(Uo);locationStrategy=je(mc);platformId=je(fc);logger=je(ar);sdkService=je(ua);loadedDataService=je(Xo);homeStateService=je(Ui);iconLibrary=je(Dg);isInitialized=!1;isConnected=!1;static instanceCount=0;static hasBeenConnected=!1;constructor(){this.loadIcons(),_r(()=>{let r=this.apiKey();r&&r.trim()!==""&&!this.sdkService.isInitialized()&&(this.logger.log("\u{1F511} Initializing SDK with provided API key"),this.sdkService.initialize(r.trim()),this.loadData())}),_r(()=>{this.homeStateService.hideDeals.set(this.hideDeals())}),_r(()=>{let r=this.initialData();r&&r.trim()!==""&&this.processInitialData(r)}),_r(()=>{this.homeStateService.showCategoryFilters.set(this.showCategoryFilters())}),_r(()=>{this.homeStateService.showCityFilter.set(this.showCityFilter())}),_r(()=>{let r=this.defaultToMap();this.logger.log("====> defaultToMap input",r),this.homeStateService.defaultToMap.set(r)})}ngOnInit(){bd(this.platformId)?this.handleInstanceTracking():this.logger.log("\u{1F5A5}\uFE0F Componente inicializado en servidor (SSR)")}loadIcons(){this.iconLibrary.addIcons(...rC)}loadData(){this.loadPlaces(),this.loadConfiguration(),this.loadInstitution()}transformToBoolean(r){return typeof r=="string"?r==="true":r}processInitialData(r){try{let i=JSON.parse(r);if(i.availablePlaces){let u=i.availablePlaces.map(o=>new n0.LzPlace(o)).filter(o=>o.generalCategory!=="transport"&&!o.hidePlace);this.loadedDataService.setAvailablePlaces(u),this.logger.log(`\u2705 Successfully loaded ${u.length} places from initial data`)}if(i.institutions){let u=i.institutions.map(o=>new n0.Institution(o)).find(o=>o.lazarilloId===this.institutionId());u?this.loadedDataService.setInstitution(u):this.logger.log(`\u274C Institution not found for id ${this.institutionId()}`)}}catch(i){this.logger.log("\u274C Error processing initial data",i),this.logger.log(`\u274C Data: ${r}`)}}async loadPlaces(){let r=bd(this.platformId)?"Browser":"Server";try{this.logger.log(`\u{1F4CD} Loading initial places data on ${r}...`);let i=await this.sdkService.getAvailablePlaces(),l=i.filter(u=>u.generalCategory!=="transport"&&!u.hidePlace);this.loadedDataService.setAvailablePlaces(l),this.logger.log(`\u2705 Successfully loaded ${i.length} places on ${r}`)}catch(i){this.logger.log(`\u274C Error loading initial places data on ${r}:`,i),this.loadedDataService.setAvailablePlaces([])}}async loadConfiguration(){try{let r=await this.sdkService.getConfiguration();this.loadedDataService.setConfiguration(r),this.logger.log("\u2705 Successfully loaded configuration")}catch(r){this.logger.log("\u274C Error loading initial configuration",r)}}async loadInstitution(){try{let i=(await this.sdkService.getInstitutions()).find(l=>l.lazarilloId===this.institutionId());i?(this.loadedDataService.setInstitution(i),this.logger.log("\u2705 Successfully loaded institution",i)):this.logger.log("\u274C Institution not found")}catch(r){this.logger.log("\u274C Error loading institution data",r)}}handleInstanceTracking(){t.instanceCount++;let r=this.checkForExistingRouterContent(),i=this.router.url;t.hasBeenConnected||r||i!=="/"&&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: ${i}`),this.logger.log(` - Contenido en router outlet: ${r}`),this.handleReconnection()):this.logger.log(`\u{1F680} Primera conexi\xF3n del web component (instancia #${t.instanceCount})`),t.hasBeenConnected=!0}checkForExistingRouterContent(){try{let r=document.querySelector("router-outlet");return r?r.children.length>0:!1}catch{return!1}}ngAfterViewInit(){this.isConnected=!0,this.scheduleRouterInitialization()}ngOnDestroy(){this.isConnected=!1}scheduleRouterInitialization(){bd(this.platformId)?requestAnimationFrame(()=>{this.initializeRouter()}):setTimeout(()=>{this.initializeRouter()},0)}initializeRouter(){if(this.isInitialized&&this.isConnected)return;this.locationStrategy.setInitialPath("/");let r=this.router.url,i=this.router.routerState.root.firstChild;r==="/"&&!i?this.router.navigateByUrl("/").then(()=>{this.isInitialized=!0}).catch(l=>{console.error("Error en navegaci\xF3n inicial:",l),this.isInitialized=!0}):this.isInitialized=!0}handleReconnection(){this.logger.log("\u{1F504} Procesando reconexi\xF3n del web component");let r=bd(this.platformId)?10:50;setTimeout(()=>{this.checkAndFixRouterSync()},r)}checkAndFixRouterSync(){if(!bd(this.platformId)){this.logger.log("\u2139\uFE0F Saltando verificaci\xF3n de sincronizaci\xF3n en servidor");return}let r=this.locationStrategy.getCurrentPath()||"/",i=this.router.url,l=this.router.routerState.root.firstChild,u=this.checkForExistingRouterContent();this.logger.log("\u{1F50D} Verificando sincronizaci\xF3n del router:"),this.logger.log(` - Path interno: "${r}"`),this.logger.log(` - Router URL: "${i}"`),this.logger.log(` - Tiene ruta activa: ${!!l}`),this.logger.log(` - Contenido en router outlet: ${u}`),r==="/"&&i!=="/"||r==="/"&&!l&&u||r==="/"&&i==="/"&&u&&!l?(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:!0}).then(()=>{this.logger.log("\u2705 Navegaci\xF3n correctiva completada")}).catch(r=>{console.error("\u274C Error en navegaci\xF3n correctiva:",r)})}static \u0275fac=function(i){return new(i||t)};static \u0275cmp=In({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"]},features:[e_([Uo,Ui,da,gr,gc])],decls:4,vars:2,consts:[[1,"named-container"],[1,"app-container"],[1,"app-content"]],template:function(i,l){i&1&&(ft(0,"div",0)(1,"div",1)(2,"div",2),jt(3,"router-outlet"),gt()()()),i&2&&(mt(),li("inherit-font-family",l.inheritFontFamily()))},dependencies:[D_,Hh],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%}"]})};var r0=class t extends mc{_path="";_baseHref;_popStateListeners=[];constructor(){super(),this._baseHref=this.getBaseHref()}path(){return this._path}prepareExternalUrl(r){return this._baseHref+"#"+r}pushState(r,i,l,u){this._updatePath(r,l,u)}replaceState(r,i,l,u){this._updatePath(r,l,u)}forward(){}back(){}getState(){return null}historyGo(r){}onPopState(r){this._popStateListeners.push(r)}getBaseHref(){return typeof document<"u"?document.querySelector("base")?.href??"/":"/"}_updatePath(r,i,l){this._path=i+(l?"?"+l:""),this._notifyPopState(r,i)}_notifyPopState(r,i){let l={type:"popstate",state:r,url:i,pop:!0};this._popStateListeners.forEach(u=>{try{u(l)}catch(o){console.error("Error in popstate listener:",o)}})}getCurrentPath(){return this._path}setInitialPath(r){this._path=r}static \u0275fac=function(i){return new(i||t)};static \u0275prov=Zt({token:t,factory:t.\u0275fac,providedIn:"root"})};function HA(t,r){let i=r?.injector??je(Yo),l=new Ta(1),u=_r(()=>{let o;try{o=t()}catch(b){Nl(()=>l.error(b));return}Nl(()=>l.next(o))},{injector:i,manualCleanup:!0});return i.get(Ks).onDestroy(()=>{u.destroy(),l.complete()}),l.asObservable()}function ys(t,r){let l=!r?.manualCleanup?r?.injector?.get(Ks)??je(Ks):null,u=aU(r?.equal),o;r?.requireSync?o=Jn({kind:0},{equal:u}):o=Jn({kind:1,value:r?.initialValue},{equal:u});let b,M=t.subscribe({next:P=>o.set({kind:1,value:P}),error:P=>{o.set({kind:2,error:P}),b?.()},complete:()=>{b?.()}});if(r?.requireSync&&o().kind===0)throw new on(601,!1);return b=l?.onDestroy(M.unsubscribe.bind(M)),An(()=>{let P=o();switch(P.kind){case 1:return P.value;case 2:throw P.error;case 0:throw new on(601,!1)}},{equal:r?.equal})}function aU(t=Object.is){return(r,i)=>r.kind===1&&i.kind===1&&t(r.value,i.value)}var lU=["categoryFilters"];function cU(t,r){if(t&1){let i=ai();ft(0,"button",14),gn("click",function(){Br(i);let u=cn();return Vr(u.onClearInput())}),jt(1,"fa-icon",6),gt()}if(t&2){let i=cn();mt(),Ht("icon",i.faXmark)}}function uU(t,r){if(t&1&&jt(0,"fa-icon",6),t&2){let i=cn(2);Ht("icon",i.faCaretUp)}}function dU(t,r){if(t&1&&jt(0,"fa-icon",6),t&2){let i=cn(2);Ht("icon",i.faCaretDown)}}function hU(t,r){if(t&1){let i=ai();ft(0,"button",21),gn("click",function(){let u=Br(i).$implicit,o=cn(3);return Vr(o.onCitySelect(u))}),xn(1),gt()}if(t&2){let i=r.$implicit,l=cn(3);li("selected",i===l.selectedCity()),mt(),Vo(" ",i," ")}}function fU(t,r){if(t&1&&(ft(0,"div",19),jo(1,hU,2,3,"button",20,kh),gt()),t&2){let i=cn(2);mt(),Bo(i.citiesOptions())}}function pU(t,r){if(t&1){let i=ai();ft(0,"div",9)(1,"button",15),gn("click",function(){Br(i);let u=cn();return Vr(u.onCityFilterClick())}),jt(2,"fa-icon",6),gt(),ft(3,"button",16),gn("click",function(){Br(i);let u=cn();return Vr(u.onCityFilterClick())}),ft(4,"span",17),xn(5),gt(),ft(6,"div",18),pr(7,uU,1,1,"fa-icon",6)(8,dU,1,1,"fa-icon",6),gt()(),pr(9,fU,3,0,"div",19),gt()}if(t&2){let i=cn();mt(),li("active",i.isCityDropdownOpen()),mt(),Ht("icon",i.faFilter),mt(3),gs(i.selectedCity()),mt(2),mr(i.isCityDropdownOpen()?7:8),mt(2),mr(i.isCityDropdownOpen()?9:-1)}}var i0=class t{logger=je(ar);stateService=je(Ui);mapService=je(So);navigatorService=je(Uo);iconLibrary=je(gr);categoryFilters;activeView=An(()=>this.stateService.activeView());showCityFilter=An(()=>this.stateService.showCityFilter());inputValue=An(()=>this.stateService.inputValue());citiesOptions=An(()=>["All cities","Detroit",...[]]);selectedCity=Js(()=>this.citiesOptions()[0]);isCityDropdownOpen=Jn(!1);mapReady=ys(this.mapService.mapReady,{initialValue:!1});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(){_r(()=>{let r=this.selectedCity();this.stateService.selectedCity.set(r)}),_r(()=>{if(this.stateService.activeView()==="map"&&this.mapReady()){let r=this.stateService.lastListedPlaces();setTimeout(()=>{this.mapService.fitCoordinates(r.map(i=>i.position),{padding:{top:100,left:100,right:100,bottom:100}})},100)}})}onGridClick(){this.stateService.activeView.set("grid")}onMapClick(){this.stateService.activeView.set("map")}onInputChange(r){let i=r.target;this.stateService.inputValue.set(i.value),this.navigatorService.navigateToSearchView()}onClearInput(){this.stateService.inputValue.set(""),this.navigatorService.navigateToHome()}onCityFilterClick(){this.isCityDropdownOpen.update(r=>!r)}onCitySelect(r){this.selectedCity.set(r),this.isCityDropdownOpen.set(!1)}static \u0275fac=function(i){return new(i||t)};static \u0275cmp=In({type:t,selectors:[["app-home-screen"]],viewQuery:function(i,l){if(i&1&&Rh(lU,5),i&2){let u;Oh(u=Lh())&&(l.categoryFilters=u.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",3,"selected"],[1,"city-option",3,"click"]],template:function(i,l){i&1&&(ft(0,"div",0)(1,"div",1)(2,"div",2)(3,"div",3)(4,"div",4)(5,"div",5),jt(6,"fa-icon",6),gt(),ft(7,"input",7),gn("input",function(o){return l.onInputChange(o)}),gt(),pr(8,cU,2,1,"button",8),gt(),pr(9,pU,10,6,"div",9),gt(),ft(10,"div",10)(11,"button",11),gn("click",function(){return l.onGridClick()}),ft(12,"div",12),jt(13,"fa-icon",6),gt(),ft(14,"span"),xn(15,"Grid View"),gt()(),ft(16,"button",11),gn("click",function(){return l.onMapClick()}),ft(17,"div",12),jt(18,"fa-icon",6),gt(),ft(19,"span"),xn(20,"Map View"),gt()()()()(),ft(21,"div",13),jt(22,"router-outlet"),gt()()),i&2&&(mt(4),li("active",l.inputValue()!==""),mt(2),Ht("icon",l.faMagnifyingGlass),mt(),Ht("value",l.inputValue()),mt(),mr(l.inputValue()!==""?8:-1),mt(),mr(l.showCityFilter()?9:-1),mt(2),li("active",l.activeView()==="grid"),mt(2),Ht("icon",l.faGrid2),mt(3),li("active",l.activeView()==="map"),mt(2),Ht("icon",l.faMapLocationDot))},dependencies:[Fr,Hh],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}}"],changeDetection:0})};var o0="https://images.ctfassets.net/37yx0l0lf3yk/6eJ4fYG9hQxJ8ayujcebhe/8cf968e7d66df9a8bc75b72b7e7d6432/00002167_BedrockWebsite_TenantCOmingSoon_PlaceholderImage_3840x3840_V2-web.jpg?q=80&fm=webp&w=1920";function s0(t){return t.tags?.includes("deals")||t.tags?.includes("events")}var mU=()=>({rotate:42});function gU(t,r){if(t&1&&jt(0,"fa-icon",3),t&2){let i=cn();Ht("icon",i.faCircleNotch)("transform",au(2,mU))}}function yU(t,r){t&1&&(ft(0,"div",4),xn(1,"Deals + Events"),gt())}var a0=class t{iconLibrary=je(gr);navigatorService=je(Uo);homeStateService=je(Ui);place=kr.required();hasDealsOrEvents=An(()=>this.place().banners.some(s0));hideDeals=An(()=>this.homeStateService.hideDeals());imageSrc=An(()=>this.place().images[0]||o0);isImageLoading=Jn(!0);faCircleNotch=this.iconLibrary.getIconDefinition("fas","circle-notch");constructor(){_r(()=>{this.imageSrc()&&this.startImageLoading()})}navigateToProfile(){this.navigatorService.navigateToProfile(this.place().lazarilloId)}startImageLoading(){this.isImageLoading.set(!0)}endImageLoading(){this.isImageLoading.set(!1)}static \u0275fac=function(i){return new(i||t)};static \u0275cmp=In({type:t,selectors:[["app-location-card"]],inputs:{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(i,l){i&1&&(ft(0,"button",0),gn("click",function(){return l.navigateToProfile()}),ft(1,"div",1)(2,"img",2),gn("load",function(){return l.endImageLoading()})("error",function(){return l.endImageLoading()}),gt(),pr(3,gU,1,3,"fa-icon",3)(4,yU,2,0,"div",4),gt(),ft(5,"div",5)(6,"h3",6),xn(7),gt(),ft(8,"p",7),xn(9),gt(),ft(10,"span",8),xn(11),gt()()()),i&2&&(mt(),li("loading",l.isImageLoading()),mt(),Ht("src",l.imageSrc(),Mh)("alt",l.place().title),mt(),mr(l.isImageLoading()?3:l.hasDealsOrEvents()&&!l.hideDeals()?4:-1),mt(4),gs(l.place().title),mt(2),gs(l.place().address),mt(2),gs(l.place().localizedCategory))},dependencies:[Fr],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%]{min-width:227px;min-height:227px;overflow:hidden;position:relative}@container mapvx-container (width <= 640px){.card-image[_ngcontent-%COMP%]{min-width:160px;min-height:160px}}.card-image[_ngcontent-%COMP%] img[_ngcontent-%COMP%]{width:100%;aspect-ratio:1/1;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:227px;flex-direction:column;align-items:flex-start;gap:8px}@container mapvx-container (width <= 640px){.card-content[_ngcontent-%COMP%]{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}"],changeDetection:0})};var vU=["cardContainer"],_U=["*"];function bU(t,r){if(t&1&&jt(0,"app-location-card",3),t&2){let i=r.$implicit;Ht("place",i)}}function wU(t,r){t&1&&su(0)}function xU(t,r){if(t&1){let i=ai();ft(0,"button",7),gn("click",function(){Br(i);let u=cn(3);return Vr(u.previousPage())}),jt(1,"fa-icon",8),gt()}if(t&2){let i=cn(3);mt(),Ht("icon",i.faChevronLeft)}}function CU(t,r){if(t&1&&pr(0,xU,2,1,"button",6),t&2){let i=cn().$implicit,l=cn();mr(i<l.currentPageIndex()?0:-1)}}function SU(t,r){t&1&&(ft(0,"button",9),xn(1,"..."),gt())}function IU(t,r){if(t&1){let i=ai();ft(0,"button",11),gn("click",function(){Br(i);let u=cn(3);return Vr(u.nextPage())}),jt(1,"fa-icon",8),gt()}if(t&2){let i=cn(3);mt(),Ht("icon",i.faChevronRight)}}function EU(t,r){if(t&1&&(pr(0,SU,2,0,"button",9),pr(1,IU,2,1,"button",10)),t&2){let i=cn().$implicit,l=cn();mr(i<l.totalPages()?0:-1),mt(),mr(i>l.currentPageIndex()?1:-1)}}function DU(t,r){if(t&1){let i=ai();pr(0,CU,1,1),ft(1,"button",5),gn("click",function(){let u=Br(i).$implicit,o=cn();return Vr(o.currentPageIndex.set(u))}),xn(2),gt(),pr(3,EU,2,2)}if(t&2){let i=r.$implicit,l=r.$index,u=r.$count,o=cn();mr(l===0?0:-1),mt(),li("active",o.currentPageIndex()===i),mt(),Vo(" ",i," "),mt(),mr(l===u-1?3:-1)}}var Lp=class t{stateService=je(Ui);iconLibrary=je(gr);cardContainer=cM("cardContainer");faChevronLeft=this.iconLibrary.getIconDefinition("fas","chevron-left");faChevronRight=this.iconLibrary.getIconDefinition("fas","chevron-right");places=kr.required();itemsPerPage=An(()=>this.calculateItemsPerPage(this.showMap(),this.cardContainer()));currentPageIndex=Jn(1);totalPages=An(()=>Math.ceil(this.places().length/this.itemsPerPage()));pages=An(()=>{let r=this.totalPages();switch(r){case 0:return[];case 1:return[1];case 2:return[1,2];default:{let l=this.currentPageIndex()-1;return l<1&&(l=1),l+2>r&&(l=r-2),Array.from({length:3},(u,o)=>o+l)}}});currentPagePlaces=An(()=>{let r=this.places(),i=this.itemsPerPage(),l=this.currentPageIndex();return r.slice((l-1)*i,l*i)});showMap=An(()=>this.stateService.activeView()==="map");constructor(){_r(()=>{this.places(),this.currentPageIndex.set(1)})}calculateItemsPerPage(r,i){if(r)return 4;if(i){let l=globalThis.getComputedStyle(i.nativeElement),u=Number.parseInt(l.getPropertyValue("--card-width")||"0"),o=Number.parseInt(l.getPropertyValue("--card-gap")||"0"),b=u+o,M=i.nativeElement.clientWidth;return Math.floor((M+o)/b)*2||10}return 10}nextPage(){let r=this.currentPageIndex(),i=this.totalPages();r<i&&this.currentPageIndex.set(r+1)}previousPage(){let r=this.currentPageIndex();r>1&&this.currentPageIndex.set(r-1)}static \u0275fac=function(i){return new(i||t)};static \u0275cmp=In({type:t,selectors:[["app-paginator"]],viewQuery:function(i,l){i&1&&hw(l.cardContainer,vU,5),i&2&&fw()},inputs:{places:[1,"places"]},ngContentSelectors:_U,decls:9,vars:5,consts:[["cardContainer",""],[1,"paginator"],[1,"paginator-places"],[3,"place"],[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(i,l){i&1&&(ou(),ft(0,"div",1)(1,"div",2,0),jo(3,bU,1,1,"app-location-card",3,Qa,!1,wU,1,0),gt(),ft(6,"div",4),jo(7,DU,4,5,null,null,kh),gt()()),i&2&&(li("with-map",l.showMap()),mt(),li("with-map",l.showMap()),mt(2),Bo(l.currentPagePlaces()),mt(4),Bo(l.pages()))},dependencies:[a0,Fr],styles:['.paginator[_ngcontent-%COMP%]{display:flex;flex-direction:column;align-items:center;justify-content:space-between;gap:36px}.paginator.with-map[_ngcontent-%COMP%]{height:730px}@container mapvx-container (width <= 1024px){.paginator.with-map[_ngcontent-%COMP%]{height:unset}}.paginator-places[_ngcontent-%COMP%]{--card-width: 237;--card-gap: 13;display:grid;grid-template-columns:repeat(auto-fill,minmax(237px,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;grid-template-columns:repeat(auto-fill,minmax(170px,1fr))}}.paginator-places.with-map[_ngcontent-%COMP%]{gap:16px 8px;flex-shrink:0}@container mapvx-container (width <= 1024px){.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}'],changeDetection:0})};var l0=class t{onDestroy=new Wr;iconLibrary=je(gr);mapService=je(So);logger=je(ar);loadedDataService=je(Xo);faCenter=this.iconLibrary.getIconDefinition("fak","center");ngOnDestroy(){this.onDestroy.next(),this.onDestroy.complete()}onClick(){let r=this.mapService.rotation.getValue();this.loadedDataService.getConfiguration().pipe(Gs(1),ca(this.onDestroy)).subscribe({next:i=>{this.mapService.updateCamera({center:i.initialCenter,zoom:i.initialZoom,pitch:i.initialPitch??0,bearing:r})},error:i=>{this.logger.logWarning("Error centering map",i)}})}static \u0275fac=function(i){return new(i||t)};static \u0275cmp=In({type:t,selectors:[["app-center-map-button"]],decls:2,vars:1,consts:[[1,"button",3,"click"],[3,"icon"]],template:function(i,l){i&1&&(ft(0,"button",0),gn("click",function(){return l.onClick()}),jt(1,"fa-icon",1),gt()),i&2&&(mt(),Ht("icon",l.faCenter))},dependencies:[Fr],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)}"],changeDetection:0})};var TU=t=>({rotate:t}),c0=class t{mapService=je(So);iconLibrary=je(gr);rotation=ys(this.mapService.rotation.asObservable().pipe(Zn(r=>360-r)),{initialValue:0});faCompass=this.iconLibrary.getIconDefinition("fak","compass");static \u0275fac=function(i){return new(i||t)};static \u0275cmp=In({type:t,selectors:[["app-compass-button"]],decls:2,vars:4,consts:[[1,"button"],[3,"icon","transform"]],template:function(i,l){i&1&&(ft(0,"button",0),jt(1,"fa-icon",1),gt()),i&2&&(mt(),Ht("icon",l.faCompass)("transform",mw(2,TU,l.rotation())))},dependencies:[Fr],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)}"],changeDetection:0})};var Np=class t{sdkService=je(ua);logger=je(ar);currentlyWatchingLocation=Jn(!1);hasBearingPermission=!1;watchId;async checkLocationPermission(){return"permissions"in navigator?navigator.permissions.query({name:"geolocation"}).then(async r=>r.state).catch(r=>(this.logger.logWarning(r),"denied")):(this.logger.log("Permissions API not supported"),"denied")}async requestLocationPermission(){return new Promise(r=>{navigator.geolocation.getCurrentPosition(()=>{console.log("requestLocationPermission granted"),r("granted")},i=>{console.log("requestLocationPermission denied",i),i.code===3?r("prompt"):r("denied")},{enableHighAccuracy:!0,timeout:5e3})})}async getCurrentLocation(){return new Promise((r,i)=>{navigator.geolocation.getCurrentPosition(l=>{r(l_(l))},l=>{i(new Error("Error getting current location",{cause:l}))},{enableHighAccuracy:!0})})}checkBearingLocation(){typeof DeviceOrientationEvent<"u"&&"requestPermission"in DeviceOrientationEvent&&DeviceOrientationEvent.requestPermission().then(i=>{this.hasBearingPermission=i==="granted"}).catch(i=>{this.logger.logWarning(i),this.hasBearingPermission=!1}),this.hasBearingPermission=!0}startWatching(){this.checkBearingLocation(),console.log("startWatching"),console.log("hasBearingPermission",this.hasBearingPermission),this.currentlyWatchingLocation.set(!0),this.watchId&&this.sdkService.stopWatchingUserLocation(this.watchId),this.watchId=this.sdkService.watchUserLocation(r=>{console.log("position",r)},r=>{this.logger.logWarning("Error watching user location",r)}),this.hasBearingPermission&&this.sdkService.watchUserHeading(r=>{console.log("bearing",r)},r=>{this.logger.logWarning("Error watching user bearing",r)})}stopWatching(){console.log("stopWatching"),this.currentlyWatchingLocation.set(!1)}static \u0275fac=function(i){return new(i||t)};static \u0275prov=Zt({token:t,factory:t.\u0275fac,providedIn:"root"})};var u0=class t{iconLibrary=je(gr);locationService=je(Np);logger=je(ar);locationPermission=Jn("prompt");active=An(()=>this.locationService.currentlyWatchingLocation());faLocation=this.iconLibrary.getIconDefinition("fas","location-arrow");constructor(){this.checkLocationPermission(),_r(()=>{this.active()})}checkLocationPermission(){this.locationService.checkLocationPermission().then(r=>{this.locationPermission.set(r),r==="granted"&&this.active()&&this.locationService.startWatching()}).catch(r=>{this.logger.logWarning("Error checking location permission",r),this.locationPermission.set("denied")})}async onClick(){if(this.active())this.locationService.stopWatching();else switch(this.locationPermission()){case"granted":this.locationService.startWatching();break;case"prompt":await this.requestPermissions();break;case"denied":break}}async requestPermissions(){await this.locationService.requestLocationPermission()==="granted"?(this.locationPermission.set("granted"),this.locationService.startWatching()):this.locationPermission.set("denied")}static \u0275fac=function(i){return new(i||t)};static \u0275cmp=In({type:t,selectors:[["app-location-button"]],decls:2,vars:3,consts:[[1,"button",3,"click"],[3,"icon"]],template:function(i,l){i&1&&(ft(0,"button",0),gn("click",function(){return l.onClick()}),jt(1,"fa-icon",1),gt()),i&2&&(li("active",l.active()),mt(),Ht("icon",l.faLocation))},dependencies:[Fr],styles:["[_nghost-%COMP%]{display:none}.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}"],changeDetection:0})};var d0=class t{mapService=je(So);iconLibrary=je(gr);faPlus=this.iconLibrary.getIconDefinition("fas","plus");faMinus=this.iconLibrary.getIconDefinition("fas","minus");onZoomIn(){this.mapService.updateZoomLevelOn(1)}onZoomOut(){this.mapService.updateZoomLevelOn(-1)}static \u0275fac=function(i){return new(i||t)};static \u0275cmp=In({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(i,l){i&1&&(ft(0,"div",0)(1,"button",1),gn("click",function(){return l.onZoomIn()}),jt(2,"fa-icon",2),gt(),ft(3,"button",3),gn("click",function(){return l.onZoomOut()}),jt(4,"fa-icon",2),gt()()),i&2&&(mt(2),Ht("icon",l.faPlus),mt(2),Ht("icon",l.faMinus))},dependencies:[Fr],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)}"],changeDetection:0})};var h0=class t{static \u0275fac=function(i){return new(i||t)};static \u0275cmp=In({type:t,selectors:[["app-buttons-container"]],decls:5,vars:0,consts:[[1,"buttons-container-wrapper"]],template:function(i,l){i&1&&(ft(0,"div",0),jt(1,"app-location-button")(2,"app-compass-button")(3,"app-center-map-button")(4,"app-zoom-buttons"),gt())},dependencies:[c0,l0,d0,u0],styles:[".buttons-container-wrapper[_ngcontent-%COMP%]{display:flex;flex-direction:column;align-items:center;gap:20px}"],changeDetection:0})};var MU=["map"],PU=["*"],Dd=class t{mapRef;logger=je(ar);mapService=je(So);markerService=je(da);routingService=je(gc);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(i){return new(i||t)};static \u0275cmp=In({type:t,selectors:[["app-map"]],viewQuery:function(i,l){if(i&1&&Rh(MU,5),i&2){let u;Oh(u=Lh())&&(l.mapRef=u.first)}},ngContentSelectors:PU,decls:5,vars:0,consts:[["map",""],[1,"map-wrapper"],["id","map"],[1,"buttons-container"]],template:function(i,l){i&1&&(ou(),ft(0,"div",1),jt(1,"div",2,0)(3,"app-buttons-container",3),su(4),gt())},dependencies:[h0],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}"],changeDetection:0})};var AU=["*"];function kU(t,r){t&1&&(ft(0,"div",2),jt(1,"app-map"),gt())}var Fp=class t{stateService=je(Ui);showMap=An(()=>this.stateService.activeView()==="map");static \u0275fac=function(i){return new(i||t)};static \u0275cmp=In({type:t,selectors:[["app-view-container"]],ngContentSelectors:AU,decls:4,vars:3,consts:[[1,"view-container"],[1,"view-content"],[1,"map-container"]],template:function(i,l){i&1&&(ou(),ft(0,"div",0)(1,"div",1),su(2),gt(),pr(3,kU,2,0,"div",2),gt()),i&2&&(mt(),li("with-map",l.showMap()),mt(2),mr(l.showMap()?3:-1))},dependencies:[Dd],styles:[".view-container[_ngcontent-%COMP%]{display:flex;align-items:flex-start;gap:8px}@container mapvx-container (width <= 1024px){.view-container[_ngcontent-%COMP%]{flex-direction:column-reverse}}@container mapvx-container (width <= 640px){.view-container[_ngcontent-%COMP%]{flex-direction:column-reverse}}.view-content[_ngcontent-%COMP%]{width:100%}.view-content.with-map[_ngcontent-%COMP%]{width:482px;flex-shrink:0}@container mapvx-container (width <= 1024px){.view-content.with-map[_ngcontent-%COMP%]{width:100%}}.map-container[_ngcontent-%COMP%]{width:100%;height:730px}@container mapvx-container (width <= 1024px){.map-container[_ngcontent-%COMP%]{width:100%}}@container mapvx-container (width <= 640px){.map-container[_ngcontent-%COMP%]{width:100%;height:400px}}"],changeDetection:0})};var RU=["categoryFilters"],OU=(t,r)=>r.name;function LU(t,r){if(t&1){let i=ai();ft(0,"button",11),gn("click",function(){let u=Br(i).$implicit,o=cn(2);return Vr(o.selectedFilter.set(u.name))}),xn(1),gt()}if(t&2){let i=r.$implicit,l=cn(2);li("active",l.selectedFilter()===i.name),mt(),Vo(" ",i.name," ")}}function NU(t,r){if(t&1&&(ft(0,"div",2)(1,"div",5,0)(3,"div",6),jo(4,LU,2,3,"button",7,OU),gt(),ft(6,"div",8),jt(7,"div",9)(8,"div",10),gt()()()),t&2){let i=cn();mt(4),Bo(i.categoryFiltersData()),mt(4),Jv("left",i.indicatorPosition(),"px")}}var f0=class t{logger=je(ar);stateService=je(Ui);loadedDataService=je(Xo);markerService=je(da);categoryFilters;activeView=An(()=>this.stateService.activeView());loadedPlaces=ys(this.loadedDataService.getAvailablePlaces(),{initialValue:[]});categoryFiltersData=ys(this.loadedDataService.getInstitution().pipe(Zn(r=>{let i=r.properties;if(i){let l=i.filter(u=>"childPlaces"in u&&u.childPlaces!==void 0).map(u=>({placeData:"childPlaces"in u?u.childPlaces:[],name:u.title}));return l.splice(1,0,{name:"All",placeData:[]}),l}return[]})),{initialValue:[]});places=Js(()=>this.loadedPlaces());selectedFilter=Js(()=>this.categoryFiltersData()[0]?.name);selectedCity=An(()=>this.stateService.selectedCity());showCategoryFilters=An(()=>this.stateService.showCategoryFilters());showCityFilter=An(()=>this.stateService.showCityFilter());indicatorPosition=An(()=>this.getIndicatorPosition(this.selectedFilter(),this.categoryFiltersData()));constructor(){_r(()=>{let r=this.categoryFiltersData();this.logger.log("====> loadedCategoryFiltersData",r)}),_r(()=>{if(this.activeView()==="map"){let r=this.places();this.logger.log("====> addMarkers ",r),this.markerService.addMarkers(r)}}),_r(()=>{let r=this.loadedPlaces(),i=this.showCategoryFilters(),l=r;if(i){let o=this.selectedFilter(),b=this.categoryFiltersData();if(o!=="All"){let M=b.find(P=>P.name===o)?.placeData||[];l=r.filter(P=>M.includes(P.lazarilloId))}}if(this.showCityFilter()){let o=this.selectedCity();o!=="All cities"&&(l=l.filter(b=>b.address?.includes(o)))}this.logger.log("====> filteredPlaces",l),this.places.set(l)}),_r(()=>{let r=this.places();this.stateService.lastListedPlaces.set(r)})}getIndicatorPosition(r,i){if(!this.categoryFilters?.nativeElement)return 0;let l=this.categoryFilters.nativeElement.querySelectorAll(".category-btn");if(l.length===0)return 0;let u=i.findIndex(X=>X.name===r);if(u===-1||u>=l.length)return 0;let o=l[u];if(!o)return 0;let b=this.categoryFilters.nativeElement.getBoundingClientRect(),M=o.getBoundingClientRect(),P=M.width,Z=M.left-b.left,q=80,N=Z+P/2-q/2;return Math.min(Math.max(0,N),b.width-q)}static \u0275fac=function(i){return new(i||t)};static \u0275cmp=In({type:t,selectors:[["app-list-view"]],viewQuery:function(i,l){if(i&1&&Rh(RU,5),i&2){let u;Oh(u=Lh())&&(l.categoryFilters=u.first)}},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(i,l){i&1&&(ft(0,"div",1),pr(1,NU,9,2,"div",2),ft(2,"app-view-container")(3,"div",3),jt(4,"app-paginator",4),gt()()()),i&2&&(mt(),mr(l.showCategoryFilters()?1:-1),mt(3),Ht("places",l.places()))},dependencies:[Fp,Lp],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%}"],changeDetection:0})};var FU=()=>({rotate:42}),p0=class t{iconLibrary=je(gr);faCircleNotch=this.iconLibrary.getIconDefinition("fas","circle-notch");static \u0275fac=function(i){return new(i||t)};static \u0275cmp=In({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(i,l){i&1&&(ft(0,"div",0)(1,"div",1),jt(2,"fa-icon",2),gt(),ft(3,"div",3),jt(4,"div",4)(5,"div",5)(6,"div",6),gt()()),i&2&&(mt(2),Ht("icon",l.faCircleNotch)("transform",au(2,FU)))},dependencies:[Fr],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)}"]})};var zU=()=>[1,2,3,4,5,6,7,8,9,10];function jU(t,r){t&1&&jt(0,"app-loading-location-card")}var m0=class t{homeStateService=je(Ui);showMap=An(()=>this.homeStateService.activeView()==="map");static \u0275fac=function(i){return new(i||t)};static \u0275cmp=In({type:t,selectors:[["app-loading-card-list"]],decls:3,vars:3,consts:[[1,"loading-container"]],template:function(i,l){i&1&&(ft(0,"div",0),jo(1,jU,1,0,"app-loading-location-card",null,kh),gt()),i&2&&(li("with-map",l.showMap()),mt(),Bo(au(2,zU)))},dependencies:[p0],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}"]})};function BU(t,r){t&1&&(ft(0,"p"),xn(1,"Looking for your results..."),gt())}function VU(t,r){if(t&1&&(ft(0,"p"),xn(1),gt()),t&2){let i=cn(3);mt(),Vo('Showing 1 result for "',i.searchTerm(),'"')}}function UU(t,r){if(t&1&&(ft(0,"p"),xn(1),gt()),t&2){let i=cn(3);mt(),Qv("Showing ",i.places().length,' results for "',i.searchTerm(),'"')}}function $U(t,r){if(t&1&&pr(0,VU,2,1,"p")(1,UU,2,2,"p"),t&2){let i=cn(2);mr(i.places().length===1?0:1)}}function HU(t,r){if(t&1&&(ft(0,"p"),xn(1),gt()),t&2){let i=cn(2);mt(),Vo('No results found for "',i.searchTerm(),'"')}}function GU(t,r){if(t&1&&pr(0,$U,2,1)(1,HU,2,1,"p"),t&2){let i=cn();mr(i.places().length>0?0:1)}}function WU(t,r){t&1&&jt(0,"app-loading-card-list")}function qU(t,r){if(t&1&&(ft(0,"div",6)(1,"app-paginator",7)(2,"div",8),jt(3,"fa-icon",4),ft(4,"h2"),xn(5,"No results found"),gt(),ft(6,"div",9)(7,"p"),xn(8,"Sorry, we can\u2019t find any places that match your search. Please try again."),gt()()()()()),t&2){let i=cn();mt(),Ht("places",i.places()),mt(2),Ht("icon",i.faBuildingMagnifyingGlass)}}var g0=class t{logger=je(ar);loadedDataService=je(Xo);sdkService=je(ua);stateService=je(Ui);navigatorService=je(Uo);markerService=je(da);iconLibrary=je(gr);searching=Jn(!0);inputValue$=HA(this.stateService.inputValue).pipe(k1(500),Zn(r=>r.trim()),Xi(r=>r!==""),R1(),Bi(()=>this.searching.set(!0)));searchTerm=ys(this.inputValue$,{initialValue:""});places=ys(lc([this.loadedDataService.getInstitutionId(),this.inputValue$]).pipe(Bi(()=>this.searching.set(!0)),ao(([r,i])=>(this.logger.log("====> searchTerm",i),this.logger.log("====> institutionId",r),gi(this.sdkService.searchPlaces(i,r)))),Bi(()=>this.searching.set(!1))),{initialValue:[]});faArrowLeft=this.iconLibrary.getIconDefinition("fas","arrow-left");faBuildingMagnifyingGlass=this.iconLibrary.getIconDefinition("fas","building-magnifying-glass");constructor(){_r(()=>{let r=this.places();this.markerService.addMarkers(r)}),_r(()=>{let r=this.places();this.stateService.lastListedPlaces.set(r)}),_r(()=>{let r=this.searching();this.logger.log("====> searching",r)})}ngOnDestroy(){this.stateService.inputValue.set("")}onBackClick(){this.navigatorService.navigateToHome()}static \u0275fac=function(i){return new(i||t)};static \u0275cmp=In({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"],[1,"no-results"],[1,"no-results-description"]],template:function(i,l){i&1&&(ft(0,"div",0)(1,"div",1)(2,"div",2)(3,"button",3),gn("click",function(){return l.onBackClick()}),jt(4,"fa-icon",4),ft(5,"span"),xn(6,"Back"),gt()()(),ft(7,"div",5),pr(8,BU,2,0,"p")(9,GU,2,1),gt()(),ft(10,"app-view-container"),pr(11,WU,1,0,"app-loading-card-list")(12,qU,9,2,"div",6),gt()()),i&2&&(mt(4),Ht("icon",l.faArrowLeft),mt(4),mr(l.searching()?8:9),mt(3),mr(l.searching()?11:12))},dependencies:[Fp,Lp,D_,Fr,m0],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}'],changeDetection:0})};function y0(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 _0(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 ZU(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 v0(t){let[r,i]=t.split(":"),l=parseInt(r)%24,u=parseInt(i),o;return l<12?(o="AM",l===0&&(l=12)):(o="PM",l!==12&&(l-=12)),`${l}:${u<10?"0":""}${u}&nbsp;${o}`}function qA(t){let r=v0(t.open),i=v0(t.close);return`${r}&nbsp;-&nbsp;${i}`}function YU(t){let r=v0(t.open),i=v0(t.close);return`${r}&nbsp;to&nbsp;${i}`}function KU(t){let r=new Date,i=new Date(r);ZA(i);let l=_0(i),u=t[l];if(u&&u.length>0){for(let o of u)if(GA(o.open)&&GA(o.close)){let b=WA(o.open,i),M=WA(o.close,i);if(b>M&&XU(M),r>=b&&r<=M)return!0}}return!1}function ZA(t){let r=t.getDate();t.setDate(r-1)}function XU(t){let r=t.getDate();t.setDate(r+1)}function JU(t){let i=_0(new Date),l=t[i];return l&&l.length>0}function GA(t){return/^([0-9]|0[0-9]|1[0-9]|2[0-4]):[0-5][0-9]$/.test(t)}function WA(t,r){let[i,l]=t.split(":").map(Number),u=r?new Date(r):new Date;return new Date(u.getFullYear(),u.getMonth(),u.getDate(),i,l,0,0)}function QU(t){return t.sort((r,i)=>r.open.localeCompare(i.open))}function e$(t){let i=_0(new Date),l=t[i];return l&&l.length>0?YA(l):""}function t$(t){let r=new Date;ZA(r);let i=_0(r),l=t[i];return l&&l.length>0?YA(l):""}function n$(t){let r=r$(t);return`Open on ${y0(r)}`}function YA(t){return t.length===1?qA(t[0]):(QU(t),t.map(YU).join(" - "))}function r$(t){let i=new Date().getDay();for(let l=0;l<7;l++){let u=(i+l)%7,o=ZU(u),b=t[o];if(b&&b.length>0)return o}return"mo"}function KA(t){return KU(t)?t$(t):JU(t)?e$(t):n$(t)}function XA(t){let r=["mo","tu","we","th","fr","sa","su"],i=M=>{let P=t[M];return!P||P.length===0?["Closed"]:P.map(Z=>qA(Z))},l=(M,P)=>M.length!==P.length?!1:M.every((Z,q)=>Z===P[q]),u=(M,P)=>M===P?y0(M):`${y0(M)} - ${y0(P)}`,o=[],b=0;for(;b<r.length;){let M=r[b],P=i(M),Z=b+1;for(;Z<r.length&&l(P,i(r[Z]));)Z++;let q=u(M,r[Z-1]);o.push({day:q,schedule:P}),b=Z}if(o.length>1){let M=o[0],P=o[o.length-1];if(l(M.schedule,P.schedule)){let Z=M.day.split(" - "),N=P.day.split(" - ")[0],X=Z.length>1?Z[1]:Z[0],K=`${N} - ${X}`;o[0]={day:K,schedule:M.schedule},o.pop()}}return o}function i$(t,r){if(t&1&&jt(0,"div",9),t&2){let i=r.$implicit;Ht("innerHTML",i,yd)}}function o$(t,r){if(t&1&&(ft(0,"div",6)(1,"div",7),xn(2),gt(),ft(3,"div",8),jo(4,i$,1,1,"div",9,Qa),gt()()),t&2){let i=r.$implicit;mt(2),gs(i.day),mt(2),Bo(i.schedule)}}var b0=class t{iconLibrary=je(gr);schedules=kr.required({transform:r=>r?XA(r):[]});closeClicked=ka();faClockThree=this.iconLibrary.getIconDefinition("fas","clock-three");faXmark=this.iconLibrary.getIconDefinition("fas","xmark");hideModal(){this.closeClicked.emit()}static \u0275fac=function(i){return new(i||t)};static \u0275cmp=In({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(i,l){i&1&&(ft(0,"div",0)(1,"div",1)(2,"div",2),jt(3,"fa-icon",3),ft(4,"h2"),xn(5,"Other Schedules"),gt()(),ft(6,"button",4),gn("click",function(){return l.hideModal()}),jt(7,"fa-icon",3),gt()(),ft(8,"div",5),jo(9,o$,6,1,"div",6,Qa),gt()()),i&2&&(mt(3),Ht("icon",l.faClockThree),mt(4),Ht("icon",l.faXmark),mt(2),Bo(l.schedules()))},dependencies:[Fr],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}}"]})};var s$=()=>({rotate:42});function a$(t,r){if(t&1&&jt(0,"fa-icon",3),t&2){let i=cn();Ht("icon",i.faCircleNotch)("transform",au(2,s$))}}function l$(t,r){if(t&1){let i=ai();ft(0,"div",10),jt(1,"fa-icon",9),ft(2,"div",24)(3,"button",25),gn("click",function(){Br(i);let u=cn();return Vr(u.showOtherSchedulesModal())}),gt(),ft(4,"div",26),xn(5,"*Hours may vary"),gt()()()}if(t&2){let i=cn();mt(),Ht("icon",i.faClockThree),mt(2),Ht("innerHTML",i.schedule(),yd)}}function c$(t,r){if(t&1){let i=ai();ft(0,"div",11)(1,"app-other-schedules",27),gn("closeClicked",function(){Br(i);let u=cn();return Vr(u.hideOtherSchedulesModal())}),gt()()}if(t&2){let i=cn();mt(),Ht("schedules",i.place().openingHours)}}function u$(t,r){if(t&1&&jt(0,"div",31),t&2){let i=r.$implicit;Ht("innerHTML",i,yd)}}function d$(t,r){if(t&1&&(ft(0,"div",12)(1,"div",28),jt(2,"fa-icon",9),ft(3,"div",29),xn(4,"Deals + Events"),gt()(),ft(5,"div",30),jo(6,u$,1,1,"div",31,Qa),gt()()),t&2){let i=cn();mt(2),Ht("icon",i.faBadgeDollar),mt(4),Bo(i.banners())}}function h$(t,r){if(t&1&&(ft(0,"div",21),xn(1),gt()),t&2){let i=cn();mt(),Vo(" ",i.address()," ")}}function f$(t,r){if(t&1&&(ft(0,"div",22),xn(1),gt()),t&2){let i=r.$implicit;mt(),Vo(" ",i," ")}}function p$(t,r){if(t&1&&(ft(0,"div",23)(1,"a",18),xn(2),gt()()),t&2){let i=r.$implicit;mt(),Ht("href",i.url,Mh),mt(),gs(i.title)}}var w0=class t{iconLibrary=je(gr);sanitizer=je(yg);logger=je(ar);navigatorService=je(Uo);place=kr.required();hideDeals=kr(!1);imageSrc=An(()=>this.place().images[0]||o0);isImageLoading=Jn(!0);schedule=An(()=>{let r=this.place().openingHours;return r?KA(r):""});banners=An(()=>this.place().banners.filter(s0).filter(r=>r.description!==void 0).map(r=>this.sanitizer.bypassSecurityTrustHtml(r.description||"")));address=An(()=>this.place().address||"");phones=An(()=>this.place().properties?.filter(r=>r.type==="phone").map(r=>this.formatPhoneNumber(r.subtitle))||[]);websites=An(()=>this.place().properties?.filter(r=>r.type==="url").map(this.prepareUrl)||[]);drivingDirectionsUrl=An(()=>{let r=this.place();return`https://waze.com/ul?ll=${r.position.lat},${r.position.lng}&navigate=yes`});otherSchedulesModal=Jn(!1);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=An(()=>{let[r,i]=e0(this.place().localizedCategory||"");return this.iconLibrary.getIconDefinition(r,i)});constructor(){_r(()=>{this.imageSrc()&&this.startImageLoading()})}prepareUrl(r){return hr($t({},r),{url:r.url?.startsWith("http")?r.url:`https://${r.url}`})}startImageLoading(){this.isImageLoading.set(!0)}endImageLoading(){this.isImageLoading.set(!1)}showOtherSchedulesModal(){this.otherSchedulesModal.set(!0)}hideOtherSchedulesModal(){this.otherSchedulesModal.set(!1)}formatPhoneNumber(r){let i=r.replace(/^\+1/,"");return i=i.replace(/\D/g,""),i.length<10?(this.logger.logWarning(`Phone number '${i}' is to short for format`),i):`${i.slice(0,3)}.${i.slice(3,6)}.${i.slice(6)}`}navigateToRoute(){this.navigatorService.navigateToRoute(this.place().lazarilloId)}static \u0275fac=function(i){return new(i||t)};static \u0275cmp=In({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,"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"]],template:function(i,l){i&1&&(ft(0,"div",0)(1,"div",1)(2,"img",2),gn("load",function(){return l.endImageLoading()})("error",function(){return l.endImageLoading()}),gt(),pr(3,a$,1,3,"fa-icon",3),gt(),ft(4,"div",4)(5,"div",5)(6,"h1",6),xn(7),gt(),ft(8,"div",7)(9,"div",8),jt(10,"fa-icon",9),ft(11,"span"),xn(12),gt()(),pr(13,l$,6,2,"div",10),pr(14,c$,2,1,"div",11),gt(),pr(15,d$,8,1,"div",12),ft(16,"div",13),xn(17),gt()(),ft(18,"div",14)(19,"div",15)(20,"button",16),gn("click",function(){return l.navigateToRoute()}),jt(21,"fa-icon",9),ft(22,"span"),xn(23,"Pedestrian-friendly directions"),gt()()(),ft(24,"div",17)(25,"a",18),xn(26,"Driving directions"),gt()()(),ft(27,"div",19),jt(28,"div",20),pr(29,h$,2,1,"div",21),jo(30,f$,2,1,"div",22,Qa),jo(32,p$,3,2,"div",23,Qa),gt()()()),i&2&&(mt(),li("loading",l.isImageLoading()),mt(),Ht("src",l.imageSrc(),Mh)("alt",l.place().title),mt(),mr(l.isImageLoading()?3:-1),mt(4),gs(l.place().title),mt(3),Ht("icon",l.iconCategory()),mt(2),gs(l.place().localizedCategory),mt(),mr(l.schedule()!==""?13:-1),mt(),mr(l.otherSchedulesModal()?14:-1),mt(),mr(l.banners().length>0&&!l.hideDeals()?15:-1),mt(2),Vo(" ",l.place().description," "),mt(4),Ht("icon",l.faArrowTopRight),mt(4),Ht("href",l.drivingDirectionsUrl(),Mh),mt(4),mr(l.address()!==""?29:-1),mt(),Bo(l.phones()),mt(2),Bo(l.websites()))},dependencies:[Fr,b0],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}.schedule[_ngcontent-%COMP%] .schedule-time[_ngcontent-%COMP%] .schedule-warning[_ngcontent-%COMP%]{position:absolute;top:20px;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%]{color:var(--definitions-colors-secondary-orange);padding:5px;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}']})};var zp=class t{iconLibraryService=je(gr);buttonClick=ka();faArrowLeft=this.iconLibraryService.getIconDefinition("fas","arrow-left");onBackClick(r){this.buttonClick.emit(r)}static \u0275fac=function(i){return new(i||t)};static \u0275cmp=In({type:t,selectors:[["app-back-button"]],outputs:{buttonClick:"buttonClick"},decls:4,vars:1,consts:[[1,"back-btn",3,"click"],[3,"icon"]],template:function(i,l){i&1&&(ft(0,"button",0),gn("click",function(o){return l.onBackClick(o)}),jt(1,"fa-icon",1),ft(2,"span"),xn(3,"Back"),gt()()),i&2&&(mt(),Ht("icon",l.faArrowLeft))},dependencies:[Fr],styles:['.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}']})};function m$(t,r){if(t&1&&jt(0,"app-profile-view",5),t&2){let i=cn(),l=lg(5);Ht("place",l)("hideDeals",i.hideDeals())}}var x0=class t{onDestroy=new Wr;route=je(el);logger=je(ar);loadedDataService=je(Xo);sdkService=je(ua);mapService=je(So);markerService=je(da);navigatorService=je(Uo);homeStateService=je(Ui);iconLibraryService=je(gr);_profileId="";place=Jn(null);mapReady=ys(this.mapService.mapReady,{requireSync:!0});hideDeals=An(()=>this.homeStateService.hideDeals());faArrowLeft=this.iconLibraryService.getIconDefinition("fas","arrow-left");constructor(){_r(()=>{let r=this.place();if(r&&this.mapReady()){if(!this.markerService.hasMarker(r.lazarilloId)){let l=Nl(this.homeStateService.lastListedPlaces);l.length>0?this.markerService.addMarkers(l):this.markerService.addMarker(r)}this.markerService.selectMarker(r.lazarilloId),setTimeout(()=>{this.mapService.updateCamera({center:r.position})},100)}})}ngOnInit(){let r=this.route.paramMap.pipe(Zn(i=>i.get("id")),Xi(i=>i!==null),Xi(i=>i!==this._profileId),F1(1));lc([r,this.loadedDataService.getAvailablePlaces()]).pipe(ca(this.onDestroy),ao(([i,l])=>{let u=l.find(o=>o.lazarilloId===i);return u?qn(u):gi(this.sdkService.getPlaceDetail(i))})).subscribe({next:i=>{this._profileId!==i.lazarilloId&&this.cleanOldProfile(),this._profileId=i.lazarilloId,this.place.set(i)},error:i=>{this.logger.log("Error getting profile id",i)},complete:()=>{this.logger.log("Profile id complete")}})}ngOnDestroy(){this.cleanOldProfile(),this.onDestroy.next(),this.onDestroy.complete()}cleanOldProfile(){this._profileId!==""&&this.markerService.deselectMarker(this._profileId)}returnToHome(){this.navigatorService.navigateToHome()}static \u0275fac=function(i){return new(i||t)};static \u0275cmp=In({type:t,selectors:[["app-profile-screen"]],decls:9,vars:2,consts:[[1,"screen"],[1,"back-button"],[3,"buttonClick"],[1,"profile-screen-content"],[1,"profile-info"],[3,"place","hideDeals"],[1,"map"]],template:function(i,l){if(i&1){let u=ai();ft(0,"div",0)(1,"div",1)(2,"app-back-button",2),gn("buttonClick",function(){return Br(u),Vr(l.returnToHome())}),gt()(),ft(3,"div",3)(4,"div",4),gp(5),pr(6,m$,1,2,"app-profile-view",5),gt(),ft(7,"div",6),jt(8,"app-map"),gt()()()}if(i&2){mt(5);let u=ag(l.place());mt(),mr(u!==null?6:-1)}},dependencies:[Dd,zp,w0],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%;height:400px}}"],changeDetection:0})};var C0=class t{iconLibrary=je(gr);currentRoute=kr.required();startRouteClick=ka();faCircleSmall=this.iconLibrary.getIconDefinition("fas","circle-small");faArrowTopRight=this.iconLibrary.getIconDefinition("fak","arrow-top-right");time=An(()=>{let r=this.currentRoute();return this.toMinutes(r.duration)});distance=An(()=>{let r=this.currentRoute();return Math.ceil(r.length)});toMinutes(r){return Math.ceil(r/60)}onStartRouteClick(){this.startRouteClick.emit()}static \u0275fac=function(i){return new(i||t)};static \u0275cmp=In({type:t,selectors:[["app-route-info"]],inputs:{currentRoute:[1,"currentRoute"]},outputs:{startRouteClick:"startRouteClick"},decls:17,vars:5,consts:[[1,"route-info"],[1,"route-info-item"],[1,"route-info-item-label"],[3,"icon"],[1,"route-info-item-value"],[1,"start-route-button",3,"click"]],template:function(i,l){i&1&&(ft(0,"div",0)(1,"div",1)(2,"span",2),xn(3,"Time"),gt(),jt(4,"fa-icon",3),ft(5,"span",4),xn(6),gt()(),ft(7,"div",1)(8,"span",2),xn(9,"Distance"),gt(),jt(10,"fa-icon",3),ft(11,"span",4),xn(12),gt()()(),ft(13,"button",5),gn("click",function(){return l.onStartRouteClick()}),jt(14,"fa-icon",3),ft(15,"span"),xn(16,"Start Route"),gt()()),i&2&&(mt(4),Ht("icon",l.faCircleSmall),mt(2),Vo("",l.time()," min"),mt(4),Ht("icon",l.faCircleSmall),mt(2),Vo("",l.distance()," mts"),mt(2),Ht("icon",l.faArrowTopRight))},dependencies:[Fr],styles:['[_nghost-%COMP%]{display:flex;flex-direction:column;gap:40px}.route-info[_ngcontent-%COMP%]{display:flex;justify-content:space-between;align-items:center;flex-wrap:wrap}.route-info-item[_ngcontent-%COMP%]{display:flex;align-items:center;gap:10px;color:var(--definitions-colors-text-black)}.start-route-button[_ngcontent-%COMP%]{display:flex;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}.start-route-button[_ngcontent-%COMP%]{display:none}']})};var g$={"[class.ng-untouched]":"isUntouched","[class.ng-touched]":"isTouched","[class.ng-pristine]":"isPristine","[class.ng-dirty]":"isDirty","[class.ng-valid]":"isValid","[class.ng-invalid]":"isInvalid","[class.ng-pending]":"isPending"},kfe=hr($t({},g$),{"[class.ng-submitted]":"isSubmitted"});var y$=new Rn("",{providedIn:"root",factory:()=>JA}),JA="always";var v$=(()=>{class t{static \u0275fac=function(l){return new(l||t)};static \u0275mod=pc({type:t});static \u0275inj=Sl({})}return t})();var QA=(()=>{class t{static withConfig(i){return{ngModule:t,providers:[{provide:y$,useValue:i.callSetDisabledState??JA}]}}static \u0275fac=function(l){return new(l||t)};static \u0275mod=pc({type:t});static \u0275inj=Sl({imports:[v$]})}return t})();function _$(t,r){if(t&1){let i=ai();ft(0,"button",5),gn("click",function(){Br(i);let u=cn();return Vr(u.clearSelectedPlace())}),jt(1,"fa-icon",6),gt()}if(t&2){let i=cn();mt(),Ht("icon",i.faXmark)}}function b$(t,r){if(t&1){let i=ai();ft(0,"button",10),gn("click",function(){Br(i);let u=cn(2);return Vr(u.useCurrentLocation())}),ft(1,"div",11),jt(2,"fa-icon",6),gt(),ft(3,"div",12)(4,"div",13),xn(5,"Use current location"),gt()()()}if(t&2){let i=cn(2);mt(2),Ht("icon",i.faLocationArrow)}}function w$(t,r){if(t&1){let i=ai();ft(0,"button",10),gn("click",function(){let u=Br(i).$implicit,o=cn(2);return Vr(o.selectPlace(u))}),ft(1,"div",11),jt(2,"fa-icon",6),gt(),ft(3,"div",12)(4,"div",13),xn(5),gt(),ft(6,"div",14),xn(7),gt()()()}if(t&2){let i=r.$implicit,l=cn(2);mt(2),Ht("icon",l.faLocationDot),mt(3),gs(i.title),mt(2),gs(i.address)}}function x$(t,r){t&1&&(ft(0,"div",9),xn(1,"No results found"),gt())}function C$(t,r){if(t&1&&(ft(0,"div",4)(1,"div",7),pr(2,b$,6,1,"button",8),jo(3,w$,8,3,"button",8,Qa),pr(5,x$,2,0,"div",9),gt()()),t&2){let i=cn();mt(2),mr(i.allowCurrentLocation()&&i.locationPermission()!=="denied"?2:-1),mt(),Bo(i.filteredPlaces()),mt(2),mr(i.filteredPlaces().length===0&&i.filterText().trim()?5:-1)}}var S0=class t{logger=je(ar);locationService=je(Np);iconLibrary=je(gr);places=kr.required();initialSelectedPlace=kr(null);allowCurrentLocation=kr(!1);placeholder=kr("Set a starting point");selectedPlace=Js(()=>this.initialSelectedPlace());selectedPlaceChange=ka();isDropdownOpen=Jn(!1);filterText=Js(()=>this.selectedPlace()?.title||"");filteredPlaces=An(()=>{let r=this.places(),i=this.filterText().toLowerCase().trim();return i?r.filter(l=>l.title?.toLowerCase().includes(i)||l.address?.toLowerCase().includes(i)):r});locationPermission=Jn("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(r=>{this.locationPermission.set(r)}).catch(r=>{this.logger.logWarning("Error checking location permission",r),this.locationPermission.set("denied")})}requestLocationPermission(){this.locationService.requestLocationPermission().then(r=>{this.locationPermission.set(r),r==="granted"&&this.getCurrentLocation()}).catch(r=>{this.logger.logWarning("Error requesting location permission",r),this.locationPermission.set("denied")})}getCurrentLocation(){this.locationService.getCurrentLocation().then(r=>{this.selectedPlace.set(r),this.selectedPlaceChange.emit(r)}).catch(r=>{this.logger.logWarning("Error getting current location",r)})}useCurrentLocation(){switch(this.locationPermission()){case"granted":this.getCurrentLocation();break;case"prompt":this.requestLocationPermission();break}}selectPlace(r){this.selectedPlace.set(r),this.isDropdownOpen.set(!1),this.selectedPlaceChange.emit(r)}clearSelectedPlace(){this.selectedPlace.set(null),this.filterText.set(""),this.selectedPlaceChange.emit(null)}onInputFocus(){this.isDropdownOpen.set(!0)}onInputBlur(){setTimeout(()=>{this.isDropdownOpen.set(!1)},150)}onInputChange(r){let i=r.target;this.filterText.set(i.value),this.isDropdownOpen.set(!0)}static \u0275fac=function(i){return new(i||t)};static \u0275cmp=In({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(i,l){i&1&&(ft(0,"div",0)(1,"div",1)(2,"input",2),gn("input",function(o){return l.onInputChange(o)})("focus",function(){return l.onInputFocus()})("blur",function(){return l.onInputBlur()}),gt(),pr(3,_$,2,1,"button",3),gt(),pr(4,C$,6,2,"div",4),gt()),i&2&&(mt(2),Ht("value",l.filterText())("placeholder",l.placeholder()),mt(),mr(l.selectedPlace()?3:-1),mt(),mr(l.isDropdownOpen()?4:-1))},dependencies:[vp,QA,Fr],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}}']})};var I0=class t{logger=je(ar);iconLibrary=je(gr);places=kr.required();initialDestination=kr(null);originPlace=Jn(null);destinationPlace=Js(()=>this.initialDestination());originSelected=ka();destinationSelected=ka();swapPlaces=ka();clearDestination=ka();locationPermission=Jn("prompt");faLocationDot=this.iconLibrary.getIconDefinition("fas","location-dot");faEllipsisVertical=this.iconLibrary.getIconDefinition("fas","ellipsis-vertical");faArrowsRetweet=this.iconLibrary.getIconDefinition("fas","arrows-retweet");canSwapPlaces=An(()=>Bw(this.originPlace())&&Bw(this.destinationPlace()));onOriginSelected(r){this.originSelected.emit(r),this.originPlace.set(r)}onDestinationSelected(r){if(jw(r)){this.logger.logWarning("Current location is not allowed as destination");return}this.destinationSelected.emit(r),this.destinationPlace.set(r)}onSwapPlaces(){let r=this.originPlace(),i=this.destinationPlace();if(jw(r)){this.logger.logWarning("Should not be possible to swap places with current location as origin");return}this.originPlace.set(i),this.originSelected.emit(i),this.destinationPlace.set(r),this.destinationSelected.emit(r)}static \u0275fac=function(i){return new(i||t)};static \u0275cmp=In({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(i,l){i&1&&(ft(0,"div",0)(1,"div",1)(2,"div",2)(3,"div",3),cv(),ft(4,"svg",4),jt(5,"rect",5)(6,"path",6)(7,"path",7),gt()(),uv(),ft(8,"app-place-selector",8),gn("selectedPlaceChange",function(o){return l.onOriginSelected(o)}),gt()()(),ft(9,"div",9)(10,"div",10),jt(11,"fa-icon",11),gt(),jt(12,"div",12),ft(13,"button",13),gn("click",function(){return l.onSwapPlaces()}),jt(14,"fa-icon",11),gt()(),ft(15,"div",14)(16,"div",2)(17,"div",3),jt(18,"fa-icon",11),gt(),ft(19,"app-place-selector",15),gn("selectedPlaceChange",function(o){return l.onDestinationSelected(o)}),gt()()()()),i&2&&(mt(8),Ht("places",l.places())("initialSelectedPlace",l.originPlace())("allowCurrentLocation",!0),mt(3),Ht("icon",l.faEllipsisVertical),mt(2),Ht("disabled",!l.canSwapPlaces()),mt(),Ht("icon",l.faArrowsRetweet),mt(4),Ht("icon",l.faLocationDot),mt(),Ht("places",l.places())("initialSelectedPlace",l.destinationPlace())("placeholder","Select a destination"))},dependencies:[vp,S0,Fr],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}}']})};function S$(t,r){if(t&1){let i=ai();ft(0,"button",1),gn("click",function(){Br(i);let u=cn();return Vr(u.pauseRoute())}),jt(1,"fa-icon",2),ft(2,"span"),xn(3,"Pause route"),gt()()}if(t&2){let i=cn();mt(),Ht("icon",i.faPause)}}function I$(t,r){if(t&1){let i=ai();ft(0,"button",1),gn("click",function(){Br(i);let u=cn();return Vr(u.resumeRoute())}),jt(1,"fa-icon",2),ft(2,"span"),xn(3,"Resume route"),gt()()}if(t&2){let i=cn();mt(),Ht("icon",i.faPlay)}}function E$(t,r){if(t&1){let i=ai();ft(0,"button",1),gn("click",function(){Br(i);let u=cn();return Vr(u.restartRoute())}),jt(1,"fa-icon",2),ft(2,"span"),xn(3,"Restart route"),gt()()}if(t&2){let i=cn();mt(),Ht("icon",i.faRestart)}}function D$(t,r){}var E0=class t{iconLibrary=je(gr);routingService=je(gc);AnimationState=u_;animationStatus=ys(this.routingService.animationStatusSubject,{initialValue:0});faPlay=this.iconLibrary.getIconDefinition("fas","play");faPause=this.iconLibrary.getIconDefinition("fas","pause");faRestart=this.iconLibrary.getIconDefinition("fas","rotate-right");pauseRoute(){this.routingService.pauseRouteAnimation()}resumeRoute(){this.routingService.resumeRouteAnimation()}restartRoute(){this.routingService.restartRouteAnimation()}static \u0275fac=function(i){return new(i||t)};static \u0275cmp=In({type:t,selectors:[["app-route-control-button"]],decls:4,vars:1,consts:[[1,"route-control-button"],[1,"route-control-button",3,"click"],[3,"icon"]],template:function(i,l){if(i&1&&pr(0,S$,4,1,"button",0)(1,I$,4,1,"button",0)(2,E$,4,1,"button",0)(3,D$,0,0),i&2){let u;mr((u=l.animationStatus())===l.AnimationState.Playing?0:u===l.AnimationState.Paused?1:u===l.AnimationState.Finished?2:3)}},dependencies:[Fr],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}}"]})};function T$(t,r){if(t&1){let i=ai();ft(0,"div",6)(1,"app-route-info",8),gn("startRouteClick",function(){Br(i);let u=cn();return Vr(u.startStepAnimation())}),gt()()}if(t&2){cn();let i=lg(6);mt(),Ht("currentRoute",i)}}var D0=class t{routeId="";route=je(el);logger=je(ar);navigatorService=je(Uo);loadedDataService=je(Xo);mapService=je(So);markerService=je(da);homeStateService=je(Ui);routingService=je(gc);mapReady=ys(this.mapService.mapReady,{requireSync:!0});places=ys(this.loadedDataService.getAvailablePlaces(),{initialValue:[]});originPoint=Jn(null);destinationPlace=Js(()=>this.initialDestination());initialDestination=Jn(null);currentRoute=Jn(null);constructor(){this.routeId=this.route.snapshot.params.id||"unknown",_r(()=>{let r=this.places();if(r.length>0){let i=r.find(l=>l.lazarilloId===this.routeId);i&&this.initialDestination.set(i)}}),_r(()=>{let r=this.destinationPlace();if(r&&this.mapReady()){let l=Nl(this.homeStateService.lastListedPlaces);this.markerService.removeAllMarkers(),this.markerService.addMarkers(l),this.markerService.hasMarker(r.lazarilloId)||this.markerService.addMarker(r),this.markerService.selectMarker(r.lazarilloId),Nl(this.originPoint)===null&&setTimeout(()=>{this.mapService.updateCamera({center:r.position})},100)}}),_r(()=>{let r=this.originPoint(),i=this.destinationPlace();r&&i?this.mapReady()&&(this.markerService.removeAllMarkers(),this.markerService.addOriginMarker(r.position),this.markerService.addDestinationMarker(i),this.routingService.getRoute(r,i).then(l=>{this.currentRoute.set(l),this.routingService.startAnimatingRoute(l)}).catch(l=>{this.logger.logWarning("Error getting route",l)}),setTimeout(()=>{this.mapService.fitCoordinates([r.position,i.position],{padding:{top:340,left:0,right:50,bottom:0}})},100)):this.currentRoute.set(null)}),_r(()=>{let r=this.currentRoute();console.log("route",r)})}returnToProfile(){this.navigatorService.navigateToProfile(this.routeId)}onDestinationSelected(r){this.destinationPlace.set(r)}onOriginSelected(r){this.originPoint.set(r)}startStepAnimation(){this.currentRoute()&&this.logger.log("Starting step animation")}static \u0275fac=function(i){return new(i||t)};static \u0275cmp=In({type:t,selectors:[["app-route-screen"]],decls:11,vars:4,consts:[[1,"route-screen"],[1,"back-button"],[3,"buttonClick"],[1,"route-screen-content"],[1,"route-related-components"],[3,"originSelected","destinationSelected","places","initialDestination"],[1,"route-info"],[1,"map"],[3,"startRouteClick","currentRoute"]],template:function(i,l){if(i&1){let u=ai();ft(0,"div",0)(1,"div",1)(2,"app-back-button",2),gn("buttonClick",function(){return Br(u),Vr(l.returnToProfile())}),gt()(),ft(3,"div",3)(4,"div",4)(5,"app-route-selector",5),gn("originSelected",function(b){return Br(u),Vr(l.onOriginSelected(b))})("destinationSelected",function(b){return Br(u),Vr(l.onDestinationSelected(b))}),gt(),gp(6),pr(7,T$,2,1,"div",6),gt(),ft(8,"div",7)(9,"app-map"),jt(10,"app-route-control-button"),gt()()()()}if(i&2){mt(5),Ht("places",l.places())("initialDestination",l.initialDestination()),mt();let u=ag(l.currentRoute());mt(),mr(u!==null?7:-1)}},dependencies:[zp,Dd,I0,C0,E0],styles:[".route-screen-content[_ngcontent-%COMP%]{position:relative}.route-related-components[_ngcontent-%COMP%]{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%]{position:unset;width:100%}}.map[_ngcontent-%COMP%]{width:100%;height:820px}"],changeDetection:0})};var ek=[{path:"",component:i0,children:[{path:"list",redirectTo:"",pathMatch:"full"},{path:"",component:f0},{path:"search",component:g0}]},{path:"profile/:id",component:x0},{path:"route/:id",component:D0},{path:"**",redirectTo:""}];var tk={providers:[Lb(),vw(),Qx(ek),{provide:mc,useClass:r0},ar]};zw(tk).then(t=>{let r=fM(t0,{injector:t.injector});customElements.define("mapvx-website",r)}).catch(t=>console.error(t));
1344
+ `))});document=je(wi);sanitizer=je(yg);config=je(JB);iconLibrary=je(Dg);stackItem=je(oV,{optional:!0});stack=je(sV,{optional:!0});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(i){let l=iV(i,this.config.defaultPrefix);if("icon"in l)return l;let u=this.iconLibrary.getIconDefinition(l.prefix,l.iconName);return u??(QB(l),null)}buildParams(){let i=this.fixedWidth(),l={flip:this.flip(),animation:this.animation(),border:this.border(),inverse:this.inverse(),size:this.size(),pull:this.pull(),rotate:this.rotate(),fixedWidth:typeof i=="boolean"?i:this.config.fixedWidth,stackItemSize:this.stackItem!=null?this.stackItem.stackItemSize():void 0},u=this.transform(),o=typeof u=="string"?ZP.transform(u):u,b=this.mask(),M=b!=null?this.findIconDefinition(b):null,P={},Z=this.a11yRole();Z!=null&&(P.role=Z);let q={};return l.rotate!=null&&!KP(l.rotate)&&(q["--fa-rotate-angle"]=`${l.rotate}`),{title:this.title(),transform:o,classes:tV(l),mask:M??void 0,symbol:this.symbol(),attributes:P,styles:q}}static \u0275fac=function(l){return new(l||t)};static \u0275cmp=In({type:t,selectors:[["fa-icon"]],hostAttrs:[1,"ng-fa-icon"],hostVars:2,hostBindings:function(l,u){l&2&&(Xv("innerHTML",u.renderedIconHTML(),yd),og("title",u.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(l,u){},encapsulation:2,changeDetection:0})}return t})();var D_=(()=>{class t{static \u0275fac=function(l){return new(l||t)};static \u0275mod=pc({type:t});static \u0275inj=Sl({})}return t})();var gr=class t{iconLibrary=je(Dg);logger=je(ar);getIconDefinition(r,i){let l=this.iconLibrary.getIconDefinition(r,i);return l||(this.logger.logWarning(new Error(`Icon definition not found for ${r} ${i}`)),Zw)}static \u0275fac=function(i){return new(i||t)};static \u0275prov=Zt({token:t,factory:t.\u0275fac})};var lr="primary",Ug=Symbol("RouteTitle"),Ox=class{params;constructor(r){this.params=r||{}}has(r){return Object.prototype.hasOwnProperty.call(this.params,r)}get(r){if(this.has(r)){let i=this.params[r];return Array.isArray(i)?i[0]:i}return null}getAll(r){if(this.has(r)){let i=this.params[r];return Array.isArray(i)?i:[i]}return[]}get keys(){return Object.keys(this.params)}};function Vh(t){return new Ox(t)}function iA(t,r,i){let l=i.path.split("/");if(l.length>t.length||i.pathMatch==="full"&&(r.hasChildren()||l.length<t.length))return null;let u={};for(let o=0;o<l.length;o++){let b=l[o],M=t[o];if(b[0]===":")u[b.substring(1)]=M;else if(b!==M.path)return null}return{consumed:t.slice(0,l.length),posParams:u}}function lV(t,r){if(t.length!==r.length)return!1;for(let i=0;i<t.length;++i)if(!vc(t[i],r[i]))return!1;return!0}function vc(t,r){let i=t?Lx(t):void 0,l=r?Lx(r):void 0;if(!i||!l||i.length!=l.length)return!1;let u;for(let o=0;o<i.length;o++)if(u=i[o],!oA(t[u],r[u]))return!1;return!0}function Lx(t){return[...Object.keys(t),...Object.getOwnPropertySymbols(t)]}function oA(t,r){if(Array.isArray(t)&&Array.isArray(r)){if(t.length!==r.length)return!1;let i=[...t].sort(),l=[...r].sort();return i.every((u,o)=>l[o]===u)}else return t===r}function sA(t){return t.length>0?t[t.length-1]:null}function pu(t){return P1(t)?t:mp(t)?gi(Promise.resolve(t)):qn(t)}var cV={exact:lA,subset:cA},aA={exact:uV,subset:dV,ignored:()=>!0};function XP(t,r,i){return cV[i.paths](t.root,r.root,i.matrixParams)&&aA[i.queryParams](t.queryParams,r.queryParams)&&!(i.fragment==="exact"&&t.fragment!==r.fragment)}function uV(t,r){return vc(t,r)}function lA(t,r,i){if(!jh(t.segments,r.segments)||!P_(t.segments,r.segments,i)||t.numberOfChildren!==r.numberOfChildren)return!1;for(let l in r.children)if(!t.children[l]||!lA(t.children[l],r.children[l],i))return!1;return!0}function dV(t,r){return Object.keys(r).length<=Object.keys(t).length&&Object.keys(r).every(i=>oA(t[i],r[i]))}function cA(t,r,i){return uA(t,r,r.segments,i)}function uA(t,r,i,l){if(t.segments.length>i.length){let u=t.segments.slice(0,i.length);return!(!jh(u,i)||r.hasChildren()||!P_(u,i,l))}else if(t.segments.length===i.length){if(!jh(t.segments,i)||!P_(t.segments,i,l))return!1;for(let u in r.children)if(!t.children[u]||!cA(t.children[u],r.children[u],l))return!1;return!0}else{let u=i.slice(0,t.segments.length),o=i.slice(t.segments.length);return!jh(t.segments,u)||!P_(t.segments,u,l)||!t.children[lr]?!1:uA(t.children[lr],r,o,l)}}function P_(t,r,i){return r.every((l,u)=>aA[i](t[u].parameters,l.parameters))}var bc=class{root;queryParams;fragment;_queryParamMap;constructor(r=new Ur([],{}),i={},l=null){this.root=r,this.queryParams=i,this.fragment=l}get queryParamMap(){return this._queryParamMap??=Vh(this.queryParams),this._queryParamMap}toString(){return pV.serialize(this)}},Ur=class{segments;children;parent=null;constructor(r,i){this.segments=r,this.children=i,Object.values(i).forEach(l=>l.parent=this)}hasChildren(){return this.numberOfChildren>0}get numberOfChildren(){return Object.keys(this.children).length}toString(){return A_(this)}},Id=class{path;parameters;_parameterMap;constructor(r,i){this.path=r,this.parameters=i}get parameterMap(){return this._parameterMap??=Vh(this.parameters),this._parameterMap}toString(){return hA(this)}};function hV(t,r){return jh(t,r)&&t.every((i,l)=>vc(i.parameters,r[l].parameters))}function jh(t,r){return t.length!==r.length?!1:t.every((i,l)=>i.path===r[l].path)}function fV(t,r){let i=[];return Object.entries(t.children).forEach(([l,u])=>{l===lr&&(i=i.concat(r(u,l)))}),Object.entries(t.children).forEach(([l,u])=>{l!==lr&&(i=i.concat(r(u,l)))}),i}var $g=(()=>{class t{static \u0275fac=function(l){return new(l||t)};static \u0275prov=Zt({token:t,factory:()=>new Uh,providedIn:"root"})}return t})(),Uh=class{parse(r){let i=new Fx(r);return new bc(i.parseRootSegment(),i.parseQueryParams(),i.parseFragment())}serialize(r){let i=`/${Tg(r.root,!0)}`,l=yV(r.queryParams),u=typeof r.fragment=="string"?`#${mV(r.fragment)}`:"";return`${i}${l}${u}`}},pV=new Uh;function A_(t){return t.segments.map(r=>hA(r)).join("/")}function Tg(t,r){if(!t.hasChildren())return A_(t);if(r){let i=t.children[lr]?Tg(t.children[lr],!1):"",l=[];return Object.entries(t.children).forEach(([u,o])=>{u!==lr&&l.push(`${u}:${Tg(o,!1)}`)}),l.length>0?`${i}(${l.join("//")})`:i}else{let i=fV(t,(l,u)=>u===lr?[Tg(t.children[lr],!1)]:[`${u}:${Tg(l,!1)}`]);return Object.keys(t.children).length===1&&t.children[lr]!=null?`${A_(t)}/${i[0]}`:`${A_(t)}/(${i.join("//")})`}}function dA(t){return encodeURIComponent(t).replace(/%40/g,"@").replace(/%3A/gi,":").replace(/%24/g,"$").replace(/%2C/gi,",")}function T_(t){return dA(t).replace(/%3B/gi,";")}function mV(t){return encodeURI(t)}function Nx(t){return dA(t).replace(/\(/g,"%28").replace(/\)/g,"%29").replace(/%26/gi,"&")}function k_(t){return decodeURIComponent(t)}function JP(t){return k_(t.replace(/\+/g,"%20"))}function hA(t){return`${Nx(t.path)}${gV(t.parameters)}`}function gV(t){return Object.entries(t).map(([r,i])=>`;${Nx(r)}=${Nx(i)}`).join("")}function yV(t){let r=Object.entries(t).map(([i,l])=>Array.isArray(l)?l.map(u=>`${T_(i)}=${T_(u)}`).join("&"):`${T_(i)}=${T_(l)}`).filter(i=>i);return r.length?`?${r.join("&")}`:""}var vV=/^[^\/()?;#]+/;function Px(t){let r=t.match(vV);return r?r[0]:""}var _V=/^[^\/()?;=#]+/;function bV(t){let r=t.match(_V);return r?r[0]:""}var wV=/^[^=?&#]+/;function xV(t){let r=t.match(wV);return r?r[0]:""}var CV=/^[^&#]+/;function SV(t){let r=t.match(CV);return r?r[0]:""}var Fx=class{url;remaining;constructor(r){this.url=r,this.remaining=r}parseRootSegment(){return this.consumeOptional("/"),this.remaining===""||this.peekStartsWith("?")||this.peekStartsWith("#")?new Ur([],{}):new Ur([],this.parseChildren())}parseQueryParams(){let r={};if(this.consumeOptional("?"))do this.parseQueryParam(r);while(this.consumeOptional("&"));return r}parseFragment(){return this.consumeOptional("#")?decodeURIComponent(this.remaining):null}parseChildren(){if(this.remaining==="")return{};this.consumeOptional("/");let r=[];for(this.peekStartsWith("(")||r.push(this.parseSegment());this.peekStartsWith("/")&&!this.peekStartsWith("//")&&!this.peekStartsWith("/(");)this.capture("/"),r.push(this.parseSegment());let i={};this.peekStartsWith("/(")&&(this.capture("/"),i=this.parseParens(!0));let l={};return this.peekStartsWith("(")&&(l=this.parseParens(!1)),(r.length>0||Object.keys(i).length>0)&&(l[lr]=new Ur(r,i)),l}parseSegment(){let r=Px(this.remaining);if(r===""&&this.peekStartsWith(";"))throw new on(4009,!1);return this.capture(r),new Id(k_(r),this.parseMatrixParams())}parseMatrixParams(){let r={};for(;this.consumeOptional(";");)this.parseParam(r);return r}parseParam(r){let i=bV(this.remaining);if(!i)return;this.capture(i);let l="";if(this.consumeOptional("=")){let u=Px(this.remaining);u&&(l=u,this.capture(l))}r[k_(i)]=k_(l)}parseQueryParam(r){let i=xV(this.remaining);if(!i)return;this.capture(i);let l="";if(this.consumeOptional("=")){let b=SV(this.remaining);b&&(l=b,this.capture(l))}let u=JP(i),o=JP(l);if(r.hasOwnProperty(u)){let b=r[u];Array.isArray(b)||(b=[b],r[u]=b),b.push(o)}else r[u]=o}parseParens(r){let i={};for(this.capture("(");!this.consumeOptional(")")&&this.remaining.length>0;){let l=Px(this.remaining),u=this.remaining[l.length];if(u!=="/"&&u!==")"&&u!==";")throw new on(4010,!1);let o;l.indexOf(":")>-1?(o=l.slice(0,l.indexOf(":")),this.capture(o),this.capture(":")):r&&(o=lr);let b=this.parseChildren();i[o]=Object.keys(b).length===1?b[lr]:new Ur([],b),this.consumeOptional("//")}return i}peekStartsWith(r){return this.remaining.startsWith(r)}consumeOptional(r){return this.peekStartsWith(r)?(this.remaining=this.remaining.substring(r.length),!0):!1}capture(r){if(!this.consumeOptional(r))throw new on(4011,!1)}};function fA(t){return t.segments.length>0?new Ur([],{[lr]:t}):t}function pA(t){let r={};for(let[l,u]of Object.entries(t.children)){let o=pA(u);if(l===lr&&o.segments.length===0&&o.hasChildren())for(let[b,M]of Object.entries(o.children))r[b]=M;else(o.segments.length>0||o.hasChildren())&&(r[l]=o)}let i=new Ur(t.segments,r);return IV(i)}function IV(t){if(t.numberOfChildren===1&&t.children[lr]){let r=t.children[lr];return new Ur(t.segments.concat(r.segments),r.children)}return t}function Dp(t){return t instanceof bc}function mA(t,r,i=null,l=null){let u=gA(t);return yA(u,r,i,l)}function gA(t){let r;function i(o){let b={};for(let P of o.children){let Z=i(P);b[P.outlet]=Z}let M=new Ur(o.url,b);return o===t&&(r=M),M}let l=i(t.root),u=fA(l);return r??u}function yA(t,r,i,l){let u=t;for(;u.parent;)u=u.parent;if(r.length===0)return Ax(u,u,u,i,l);let o=EV(r);if(o.toRoot())return Ax(u,u,new Ur([],{}),i,l);let b=DV(o,u,t),M=b.processChildren?Pg(b.segmentGroup,b.index,o.commands):_A(b.segmentGroup,b.index,o.commands);return Ax(u,b.segmentGroup,M,i,l)}function R_(t){return typeof t=="object"&&t!=null&&!t.outlets&&!t.segmentPath}function Rg(t){return typeof t=="object"&&t!=null&&t.outlets}function Ax(t,r,i,l,u){let o={};l&&Object.entries(l).forEach(([P,Z])=>{o[P]=Array.isArray(Z)?Z.map(q=>`${q}`):`${Z}`});let b;t===r?b=i:b=vA(t,r,i);let M=fA(pA(b));return new bc(M,o,u)}function vA(t,r,i){let l={};return Object.entries(t.children).forEach(([u,o])=>{o===r?l[u]=i:l[u]=vA(o,r,i)}),new Ur(t.segments,l)}var O_=class{isAbsolute;numberOfDoubleDots;commands;constructor(r,i,l){if(this.isAbsolute=r,this.numberOfDoubleDots=i,this.commands=l,r&&l.length>0&&R_(l[0]))throw new on(4003,!1);let u=l.find(Rg);if(u&&u!==sA(l))throw new on(4004,!1)}toRoot(){return this.isAbsolute&&this.commands.length===1&&this.commands[0]=="/"}};function EV(t){if(typeof t[0]=="string"&&t.length===1&&t[0]==="/")return new O_(!0,0,t);let r=0,i=!1,l=t.reduce((u,o,b)=>{if(typeof o=="object"&&o!=null){if(o.outlets){let M={};return Object.entries(o.outlets).forEach(([P,Z])=>{M[P]=typeof Z=="string"?Z.split("/"):Z}),[...u,{outlets:M}]}if(o.segmentPath)return[...u,o.segmentPath]}return typeof o!="string"?[...u,o]:b===0?(o.split("/").forEach((M,P)=>{P==0&&M==="."||(P==0&&M===""?i=!0:M===".."?r++:M!=""&&u.push(M))}),u):[...u,o]},[]);return new O_(i,r,l)}var Ip=class{segmentGroup;processChildren;index;constructor(r,i,l){this.segmentGroup=r,this.processChildren=i,this.index=l}};function DV(t,r,i){if(t.isAbsolute)return new Ip(r,!0,0);if(!i)return new Ip(r,!1,NaN);if(i.parent===null)return new Ip(i,!0,0);let l=R_(t.commands[0])?0:1,u=i.segments.length-1+l;return TV(i,u,t.numberOfDoubleDots)}function TV(t,r,i){let l=t,u=r,o=i;for(;o>u;){if(o-=u,l=l.parent,!l)throw new on(4005,!1);u=l.segments.length}return new Ip(l,!1,u-o)}function MV(t){return Rg(t[0])?t[0].outlets:{[lr]:t}}function _A(t,r,i){if(t??=new Ur([],{}),t.segments.length===0&&t.hasChildren())return Pg(t,r,i);let l=PV(t,r,i),u=i.slice(l.commandIndex);if(l.match&&l.pathIndex<t.segments.length){let o=new Ur(t.segments.slice(0,l.pathIndex),{});return o.children[lr]=new Ur(t.segments.slice(l.pathIndex),t.children),Pg(o,0,u)}else return l.match&&u.length===0?new Ur(t.segments,{}):l.match&&!t.hasChildren()?zx(t,r,i):l.match?Pg(t,0,u):zx(t,r,i)}function Pg(t,r,i){if(i.length===0)return new Ur(t.segments,{});{let l=MV(i),u={};if(Object.keys(l).some(o=>o!==lr)&&t.children[lr]&&t.numberOfChildren===1&&t.children[lr].segments.length===0){let o=Pg(t.children[lr],r,i);return new Ur(t.segments,o.children)}return Object.entries(l).forEach(([o,b])=>{typeof b=="string"&&(b=[b]),b!==null&&(u[o]=_A(t.children[o],r,b))}),Object.entries(t.children).forEach(([o,b])=>{l[o]===void 0&&(u[o]=b)}),new Ur(t.segments,u)}}function PV(t,r,i){let l=0,u=r,o={match:!1,pathIndex:0,commandIndex:0};for(;u<t.segments.length;){if(l>=i.length)return o;let b=t.segments[u],M=i[l];if(Rg(M))break;let P=`${M}`,Z=l<i.length-1?i[l+1]:null;if(u>0&&P===void 0)break;if(P&&Z&&typeof Z=="object"&&Z.outlets===void 0){if(!eA(P,Z,b))return o;l+=2}else{if(!eA(P,{},b))return o;l++}u++}return{match:!0,pathIndex:u,commandIndex:l}}function zx(t,r,i){let l=t.segments.slice(0,r),u=0;for(;u<i.length;){let o=i[u];if(Rg(o)){let P=AV(o.outlets);return new Ur(l,P)}if(u===0&&R_(i[0])){let P=t.segments[r];l.push(new Id(P.path,QP(i[0]))),u++;continue}let b=Rg(o)?o.outlets[lr]:`${o}`,M=u<i.length-1?i[u+1]:null;b&&M&&R_(M)?(l.push(new Id(b,QP(M))),u+=2):(l.push(new Id(b,{})),u++)}return new Ur(l,{})}function AV(t){let r={};return Object.entries(t).forEach(([i,l])=>{typeof l=="string"&&(l=[l]),l!==null&&(r[i]=zx(new Ur([],{}),0,l))}),r}function QP(t){let r={};return Object.entries(t).forEach(([i,l])=>r[i]=`${l}`),r}function eA(t,r,i){return t==i.path&&vc(r,i.parameters)}var Ag="imperative",Jo=function(t){return t[t.NavigationStart=0]="NavigationStart",t[t.NavigationEnd=1]="NavigationEnd",t[t.NavigationCancel=2]="NavigationCancel",t[t.NavigationError=3]="NavigationError",t[t.RoutesRecognized=4]="RoutesRecognized",t[t.ResolveStart=5]="ResolveStart",t[t.ResolveEnd=6]="ResolveEnd",t[t.GuardsCheckStart=7]="GuardsCheckStart",t[t.GuardsCheckEnd=8]="GuardsCheckEnd",t[t.RouteConfigLoadStart=9]="RouteConfigLoadStart",t[t.RouteConfigLoadEnd=10]="RouteConfigLoadEnd",t[t.ChildActivationStart=11]="ChildActivationStart",t[t.ChildActivationEnd=12]="ChildActivationEnd",t[t.ActivationStart=13]="ActivationStart",t[t.ActivationEnd=14]="ActivationEnd",t[t.Scroll=15]="Scroll",t[t.NavigationSkipped=16]="NavigationSkipped",t}(Jo||{}),La=class{id;url;constructor(r,i){this.id=r,this.url=i}},$h=class extends La{type=Jo.NavigationStart;navigationTrigger;restoredState;constructor(r,i,l="imperative",u=null){super(r,i),this.navigationTrigger=l,this.restoredState=u}toString(){return`NavigationStart(id: ${this.id}, url: '${this.url}')`}},hu=class extends La{urlAfterRedirects;type=Jo.NavigationEnd;constructor(r,i,l){super(r,i),this.urlAfterRedirects=l}toString(){return`NavigationEnd(id: ${this.id}, url: '${this.url}', urlAfterRedirects: '${this.urlAfterRedirects}')`}},ea=function(t){return t[t.Redirect=0]="Redirect",t[t.SupersededByNewNavigation=1]="SupersededByNewNavigation",t[t.NoDataFromResolver=2]="NoDataFromResolver",t[t.GuardRejected=3]="GuardRejected",t[t.Aborted=4]="Aborted",t}(ea||{}),Og=function(t){return t[t.IgnoredSameUrlNavigation=0]="IgnoredSameUrlNavigation",t[t.IgnoredByUrlHandlingStrategy=1]="IgnoredByUrlHandlingStrategy",t}(Og||{}),_c=class extends La{reason;code;type=Jo.NavigationCancel;constructor(r,i,l,u){super(r,i),this.reason=l,this.code=u}toString(){return`NavigationCancel(id: ${this.id}, url: '${this.url}')`}},fu=class extends La{reason;code;type=Jo.NavigationSkipped;constructor(r,i,l,u){super(r,i),this.reason=l,this.code=u}},Tp=class extends La{error;target;type=Jo.NavigationError;constructor(r,i,l,u){super(r,i),this.error=l,this.target=u}toString(){return`NavigationError(id: ${this.id}, url: '${this.url}', error: ${this.error})`}},Lg=class extends La{urlAfterRedirects;state;type=Jo.RoutesRecognized;constructor(r,i,l,u){super(r,i),this.urlAfterRedirects=l,this.state=u}toString(){return`RoutesRecognized(id: ${this.id}, url: '${this.url}', urlAfterRedirects: '${this.urlAfterRedirects}', state: ${this.state})`}},L_=class extends La{urlAfterRedirects;state;type=Jo.GuardsCheckStart;constructor(r,i,l,u){super(r,i),this.urlAfterRedirects=l,this.state=u}toString(){return`GuardsCheckStart(id: ${this.id}, url: '${this.url}', urlAfterRedirects: '${this.urlAfterRedirects}', state: ${this.state})`}},N_=class extends La{urlAfterRedirects;state;shouldActivate;type=Jo.GuardsCheckEnd;constructor(r,i,l,u,o){super(r,i),this.urlAfterRedirects=l,this.state=u,this.shouldActivate=o}toString(){return`GuardsCheckEnd(id: ${this.id}, url: '${this.url}', urlAfterRedirects: '${this.urlAfterRedirects}', state: ${this.state}, shouldActivate: ${this.shouldActivate})`}},F_=class extends La{urlAfterRedirects;state;type=Jo.ResolveStart;constructor(r,i,l,u){super(r,i),this.urlAfterRedirects=l,this.state=u}toString(){return`ResolveStart(id: ${this.id}, url: '${this.url}', urlAfterRedirects: '${this.urlAfterRedirects}', state: ${this.state})`}},z_=class extends La{urlAfterRedirects;state;type=Jo.ResolveEnd;constructor(r,i,l,u){super(r,i),this.urlAfterRedirects=l,this.state=u}toString(){return`ResolveEnd(id: ${this.id}, url: '${this.url}', urlAfterRedirects: '${this.urlAfterRedirects}', state: ${this.state})`}},j_=class{route;type=Jo.RouteConfigLoadStart;constructor(r){this.route=r}toString(){return`RouteConfigLoadStart(path: ${this.route.path})`}},B_=class{route;type=Jo.RouteConfigLoadEnd;constructor(r){this.route=r}toString(){return`RouteConfigLoadEnd(path: ${this.route.path})`}},V_=class{snapshot;type=Jo.ChildActivationStart;constructor(r){this.snapshot=r}toString(){return`ChildActivationStart(path: '${this.snapshot.routeConfig&&this.snapshot.routeConfig.path||""}')`}},U_=class{snapshot;type=Jo.ChildActivationEnd;constructor(r){this.snapshot=r}toString(){return`ChildActivationEnd(path: '${this.snapshot.routeConfig&&this.snapshot.routeConfig.path||""}')`}},$_=class{snapshot;type=Jo.ActivationStart;constructor(r){this.snapshot=r}toString(){return`ActivationStart(path: '${this.snapshot.routeConfig&&this.snapshot.routeConfig.path||""}')`}},H_=class{snapshot;type=Jo.ActivationEnd;constructor(r){this.snapshot=r}toString(){return`ActivationEnd(path: '${this.snapshot.routeConfig&&this.snapshot.routeConfig.path||""}')`}};var Ng=class{},Mp=class{url;navigationBehaviorOptions;constructor(r,i){this.url=r,this.navigationBehaviorOptions=i}};function kV(t){return!(t instanceof Ng)&&!(t instanceof Mp)}function RV(t,r){return t.providers&&!t._injector&&(t._injector=rg(t.providers,r,`Route: ${t.path}`)),t._injector??r}function jl(t){return t.outlet||lr}function OV(t,r){let i=t.filter(l=>jl(l)===r);return i.push(...t.filter(l=>jl(l)!==r)),i}function kp(t){if(!t)return null;if(t.routeConfig?._injector)return t.routeConfig._injector;for(let r=t.parent;r;r=r.parent){let i=r.routeConfig;if(i?._loadedInjector)return i._loadedInjector;if(i?._injector)return i._injector}return null}var G_=class{rootInjector;outlet=null;route=null;children;attachRef=null;get injector(){return kp(this.route?.snapshot)??this.rootInjector}constructor(r){this.rootInjector=r,this.children=new Rp(this.rootInjector)}},Rp=(()=>{class t{rootInjector;contexts=new Map;constructor(i){this.rootInjector=i}onChildOutletCreated(i,l){let u=this.getOrCreateContext(i);u.outlet=l,this.contexts.set(i,u)}onChildOutletDestroyed(i){let l=this.getContext(i);l&&(l.outlet=null,l.attachRef=null)}onOutletDeactivated(){let i=this.contexts;return this.contexts=new Map,i}onOutletReAttached(i){this.contexts=i}getOrCreateContext(i){let l=this.getContext(i);return l||(l=new G_(this.rootInjector),this.contexts.set(i,l)),l}getContext(i){return this.contexts.get(i)||null}static \u0275fac=function(l){return new(l||t)(rr(ms))};static \u0275prov=Zt({token:t,factory:t.\u0275fac,providedIn:"root"})}return t})(),W_=class{_root;constructor(r){this._root=r}get root(){return this._root.value}parent(r){let i=this.pathFromRoot(r);return i.length>1?i[i.length-2]:null}children(r){let i=jx(r,this._root);return i?i.children.map(l=>l.value):[]}firstChild(r){let i=jx(r,this._root);return i&&i.children.length>0?i.children[0].value:null}siblings(r){let i=Bx(r,this._root);return i.length<2?[]:i[i.length-2].children.map(u=>u.value).filter(u=>u!==r)}pathFromRoot(r){return Bx(r,this._root).map(i=>i.value)}};function jx(t,r){if(t===r.value)return r;for(let i of r.children){let l=jx(t,i);if(l)return l}return null}function Bx(t,r){if(t===r.value)return[r];for(let i of r.children){let l=Bx(t,i);if(l.length)return l.unshift(r),l}return[]}var Oa=class{value;children;constructor(r,i){this.value=r,this.children=i}toString(){return`TreeNode(${this.value})`}};function Sp(t){let r={};return t&&t.children.forEach(i=>r[i.value.outlet]=i),r}var Fg=class extends W_{snapshot;constructor(r,i){super(r),this.snapshot=i,Zx(this,r)}toString(){return this.snapshot.toString()}};function bA(t){let r=LV(t),i=new Ti([new Id("",{})]),l=new Ti({}),u=new Ti({}),o=new Ti({}),b=new Ti(""),M=new el(i,l,o,b,u,lr,t,r.root);return M.snapshot=r.root,new Fg(new Oa(M,[]),r)}function LV(t){let r={},i={},l={},u="",o=new Bh([],r,l,u,i,lr,t,null,{});return new zg("",new Oa(o,[]))}var el=class{urlSubject;paramsSubject;queryParamsSubject;fragmentSubject;dataSubject;outlet;component;snapshot;_futureSnapshot;_routerState;_paramMap;_queryParamMap;title;url;params;queryParams;fragment;data;constructor(r,i,l,u,o,b,M,P){this.urlSubject=r,this.paramsSubject=i,this.queryParamsSubject=l,this.fragmentSubject=u,this.dataSubject=o,this.outlet=b,this.component=M,this._futureSnapshot=P,this.title=this.dataSubject?.pipe(Zn(Z=>Z[Ug]))??qn(void 0),this.url=r,this.params=i,this.queryParams=l,this.fragment=u,this.data=o}get routeConfig(){return this._futureSnapshot.routeConfig}get root(){return this._routerState.root}get parent(){return this._routerState.parent(this)}get firstChild(){return this._routerState.firstChild(this)}get children(){return this._routerState.children(this)}get pathFromRoot(){return this._routerState.pathFromRoot(this)}get paramMap(){return this._paramMap??=this.params.pipe(Zn(r=>Vh(r))),this._paramMap}get queryParamMap(){return this._queryParamMap??=this.queryParams.pipe(Zn(r=>Vh(r))),this._queryParamMap}toString(){return this.snapshot?this.snapshot.toString():`Future(${this._futureSnapshot})`}};function q_(t,r,i="emptyOnly"){let l,{routeConfig:u}=t;return r!==null&&(i==="always"||u?.path===""||!r.component&&!r.routeConfig?.loadComponent)?l={params:$t($t({},r.params),t.params),data:$t($t({},r.data),t.data),resolve:$t($t($t($t({},t.data),r.data),u?.data),t._resolvedData)}:l={params:$t({},t.params),data:$t({},t.data),resolve:$t($t({},t.data),t._resolvedData??{})},u&&xA(u)&&(l.resolve[Ug]=u.title),l}var Bh=class{url;params;queryParams;fragment;data;outlet;component;routeConfig;_resolve;_resolvedData;_routerState;_paramMap;_queryParamMap;get title(){return this.data?.[Ug]}constructor(r,i,l,u,o,b,M,P,Z){this.url=r,this.params=i,this.queryParams=l,this.fragment=u,this.data=o,this.outlet=b,this.component=M,this.routeConfig=P,this._resolve=Z}get root(){return this._routerState.root}get parent(){return this._routerState.parent(this)}get firstChild(){return this._routerState.firstChild(this)}get children(){return this._routerState.children(this)}get pathFromRoot(){return this._routerState.pathFromRoot(this)}get paramMap(){return this._paramMap??=Vh(this.params),this._paramMap}get queryParamMap(){return this._queryParamMap??=Vh(this.queryParams),this._queryParamMap}toString(){let r=this.url.map(l=>l.toString()).join("/"),i=this.routeConfig?this.routeConfig.path:"";return`Route(url:'${r}', path:'${i}')`}},zg=class extends W_{url;constructor(r,i){super(i),this.url=r,Zx(this,i)}toString(){return wA(this._root)}};function Zx(t,r){r.value._routerState=t,r.children.forEach(i=>Zx(t,i))}function wA(t){let r=t.children.length>0?` { ${t.children.map(wA).join(", ")} } `:"";return`${t.value}${r}`}function kx(t){if(t.snapshot){let r=t.snapshot,i=t._futureSnapshot;t.snapshot=i,vc(r.queryParams,i.queryParams)||t.queryParamsSubject.next(i.queryParams),r.fragment!==i.fragment&&t.fragmentSubject.next(i.fragment),vc(r.params,i.params)||t.paramsSubject.next(i.params),lV(r.url,i.url)||t.urlSubject.next(i.url),vc(r.data,i.data)||t.dataSubject.next(i.data)}else t.snapshot=t._futureSnapshot,t.dataSubject.next(t._futureSnapshot.data)}function Vx(t,r){let i=vc(t.params,r.params)&&hV(t.url,r.url),l=!t.parent!=!r.parent;return i&&!l&&(!t.parent||Vx(t.parent,r.parent))}function xA(t){return typeof t.title=="string"||t.title===null}var CA=new Rn(""),Hh=(()=>{class t{activated=null;get activatedComponentRef(){return this.activated}_activatedRoute=null;name=lr;activateEvents=new Ts;deactivateEvents=new Ts;attachEvents=new Ts;detachEvents=new Ts;routerOutletData=kr(void 0);parentContexts=je(Rp);location=je(Ph);changeDetector=je(i_);inputBinder=je(X_,{optional:!0});supportsBindingToComponentInputs=!0;ngOnChanges(i){if(i.name){let{firstChange:l,previousValue:u}=i.name;if(l)return;this.isTrackedInParentContexts(u)&&(this.deactivate(),this.parentContexts.onChildOutletDestroyed(u)),this.initializeOutletWithName()}}ngOnDestroy(){this.isTrackedInParentContexts(this.name)&&this.parentContexts.onChildOutletDestroyed(this.name),this.inputBinder?.unsubscribeFromRouteData(this)}isTrackedInParentContexts(i){return this.parentContexts.getContext(i)?.outlet===this}ngOnInit(){this.initializeOutletWithName()}initializeOutletWithName(){if(this.parentContexts.onChildOutletCreated(this.name,this),this.activated)return;let i=this.parentContexts.getContext(this.name);i?.route&&(i.attachRef?this.attach(i.attachRef,i.route):this.activateWith(i.route,i.injector))}get isActivated(){return!!this.activated}get component(){if(!this.activated)throw new on(4012,!1);return this.activated.instance}get activatedRoute(){if(!this.activated)throw new on(4012,!1);return this._activatedRoute}get activatedRouteData(){return this._activatedRoute?this._activatedRoute.snapshot.data:{}}detach(){if(!this.activated)throw new on(4012,!1);this.location.detach();let i=this.activated;return this.activated=null,this._activatedRoute=null,this.detachEvents.emit(i.instance),i}attach(i,l){this.activated=i,this._activatedRoute=l,this.location.insert(i.hostView),this.inputBinder?.bindActivatedRouteToOutletComponent(this),this.attachEvents.emit(i.instance)}deactivate(){if(this.activated){let i=this.component;this.activated.destroy(),this.activated=null,this._activatedRoute=null,this.deactivateEvents.emit(i)}}activateWith(i,l){if(this.isActivated)throw new on(4013,!1);this._activatedRoute=i;let u=this.location,b=i.snapshot.component,M=this.parentContexts.getOrCreateContext(this.name).children,P=new Ux(i,M,u.injector,this.routerOutletData);this.activated=u.createComponent(b,{index:u.length,injector:P,environmentInjector:l}),this.changeDetector.markForCheck(),this.inputBinder?.bindActivatedRouteToOutletComponent(this),this.activateEvents.emit(this.activated.instance)}static \u0275fac=function(l){return new(l||t)};static \u0275dir=Ah({type:t,selectors:[["router-outlet"]],inputs:{name:"name",routerOutletData:[1,"routerOutletData"]},outputs:{activateEvents:"activate",deactivateEvents:"deactivate",attachEvents:"attach",detachEvents:"detach"},exportAs:["outlet"],features:[Xm]})}return t})(),Ux=class{route;childContexts;parent;outletData;constructor(r,i,l,u){this.route=r,this.childContexts=i,this.parent=l,this.outletData=u}get(r,i){return r===el?this.route:r===Rp?this.childContexts:r===CA?this.outletData:this.parent.get(r,i)}},X_=new Rn("");var Yx=(()=>{class t{static \u0275fac=function(l){return new(l||t)};static \u0275cmp=In({type:t,selectors:[["ng-component"]],exportAs:["emptyRouterOutlet"],decls:1,vars:0,template:function(l,u){l&1&&jt(0,"router-outlet")},dependencies:[Hh],encapsulation:2})}return t})();function Kx(t){let r=t.children&&t.children.map(Kx),i=r?hr($t({},t),{children:r}):$t({},t);return!i.component&&!i.loadComponent&&(r||i.loadChildren)&&i.outlet&&i.outlet!==lr&&(i.component=Yx),i}function NV(t,r,i){let l=jg(t,r._root,i?i._root:void 0);return new Fg(l,r)}function jg(t,r,i){if(i&&t.shouldReuseRoute(r.value,i.value.snapshot)){let l=i.value;l._futureSnapshot=r.value;let u=FV(t,r,i);return new Oa(l,u)}else{if(t.shouldAttach(r.value)){let o=t.retrieve(r.value);if(o!==null){let b=o.route;return b.value._futureSnapshot=r.value,b.children=r.children.map(M=>jg(t,M)),b}}let l=zV(r.value),u=r.children.map(o=>jg(t,o));return new Oa(l,u)}}function FV(t,r,i){return r.children.map(l=>{for(let u of i.children)if(t.shouldReuseRoute(l.value,u.value.snapshot))return jg(t,l,u);return jg(t,l)})}function zV(t){return new el(new Ti(t.url),new Ti(t.params),new Ti(t.queryParams),new Ti(t.fragment),new Ti(t.data),t.outlet,t.component,t)}var Pp=class{redirectTo;navigationBehaviorOptions;constructor(r,i){this.redirectTo=r,this.navigationBehaviorOptions=i}},SA="ngNavigationCancelingError";function Z_(t,r){let{redirectTo:i,navigationBehaviorOptions:l}=Dp(r)?{redirectTo:r,navigationBehaviorOptions:void 0}:r,u=IA(!1,ea.Redirect);return u.url=i,u.navigationBehaviorOptions=l,u}function IA(t,r){let i=new Error(`NavigationCancelingError: ${t||""}`);return i[SA]=!0,i.cancellationCode=r,i}function jV(t){return EA(t)&&Dp(t.url)}function EA(t){return!!t&&t[SA]}var BV=(t,r,i,l)=>Zn(u=>(new $x(r,u.targetRouterState,u.currentRouterState,i,l).activate(t),u)),$x=class{routeReuseStrategy;futureState;currState;forwardEvent;inputBindingEnabled;constructor(r,i,l,u,o){this.routeReuseStrategy=r,this.futureState=i,this.currState=l,this.forwardEvent=u,this.inputBindingEnabled=o}activate(r){let i=this.futureState._root,l=this.currState?this.currState._root:null;this.deactivateChildRoutes(i,l,r),kx(this.futureState.root),this.activateChildRoutes(i,l,r)}deactivateChildRoutes(r,i,l){let u=Sp(i);r.children.forEach(o=>{let b=o.value.outlet;this.deactivateRoutes(o,u[b],l),delete u[b]}),Object.values(u).forEach(o=>{this.deactivateRouteAndItsChildren(o,l)})}deactivateRoutes(r,i,l){let u=r.value,o=i?i.value:null;if(u===o)if(u.component){let b=l.getContext(u.outlet);b&&this.deactivateChildRoutes(r,i,b.children)}else this.deactivateChildRoutes(r,i,l);else o&&this.deactivateRouteAndItsChildren(i,l)}deactivateRouteAndItsChildren(r,i){r.value.component&&this.routeReuseStrategy.shouldDetach(r.value.snapshot)?this.detachAndStoreRouteSubtree(r,i):this.deactivateRouteAndOutlet(r,i)}detachAndStoreRouteSubtree(r,i){let l=i.getContext(r.value.outlet),u=l&&r.value.component?l.children:i,o=Sp(r);for(let b of Object.values(o))this.deactivateRouteAndItsChildren(b,u);if(l&&l.outlet){let b=l.outlet.detach(),M=l.children.onOutletDeactivated();this.routeReuseStrategy.store(r.value.snapshot,{componentRef:b,route:r,contexts:M})}}deactivateRouteAndOutlet(r,i){let l=i.getContext(r.value.outlet),u=l&&r.value.component?l.children:i,o=Sp(r);for(let b of Object.values(o))this.deactivateRouteAndItsChildren(b,u);l&&(l.outlet&&(l.outlet.deactivate(),l.children.onOutletDeactivated()),l.attachRef=null,l.route=null)}activateChildRoutes(r,i,l){let u=Sp(i);r.children.forEach(o=>{this.activateRoutes(o,u[o.value.outlet],l),this.forwardEvent(new H_(o.value.snapshot))}),r.children.length&&this.forwardEvent(new U_(r.value.snapshot))}activateRoutes(r,i,l){let u=r.value,o=i?i.value:null;if(kx(u),u===o)if(u.component){let b=l.getOrCreateContext(u.outlet);this.activateChildRoutes(r,i,b.children)}else this.activateChildRoutes(r,i,l);else if(u.component){let b=l.getOrCreateContext(u.outlet);if(this.routeReuseStrategy.shouldAttach(u.snapshot)){let M=this.routeReuseStrategy.retrieve(u.snapshot);this.routeReuseStrategy.store(u.snapshot,null),b.children.onOutletReAttached(M.contexts),b.attachRef=M.componentRef,b.route=M.route.value,b.outlet&&b.outlet.attach(M.componentRef,M.route.value),kx(M.route.value),this.activateChildRoutes(r,null,b.children)}else b.attachRef=null,b.route=u,b.outlet&&b.outlet.activateWith(u,b.injector),this.activateChildRoutes(r,null,b.children)}else this.activateChildRoutes(r,null,l)}},Y_=class{path;route;constructor(r){this.path=r,this.route=this.path[this.path.length-1]}},Ep=class{component;route;constructor(r,i){this.component=r,this.route=i}};function VV(t,r,i){let l=t._root,u=r?r._root:null;return Mg(l,u,i,[l.value])}function UV(t){let r=t.routeConfig?t.routeConfig.canActivateChild:null;return!r||r.length===0?null:{node:t,guards:r}}function Op(t,r){let i=Symbol(),l=r.get(t,i);return l===i?typeof t=="function"&&!J1(t)?t:r.get(t):l}function Mg(t,r,i,l,u={canDeactivateChecks:[],canActivateChecks:[]}){let o=Sp(r);return t.children.forEach(b=>{$V(b,o[b.value.outlet],i,l.concat([b.value]),u),delete o[b.value.outlet]}),Object.entries(o).forEach(([b,M])=>kg(M,i.getContext(b),u)),u}function $V(t,r,i,l,u={canDeactivateChecks:[],canActivateChecks:[]}){let o=t.value,b=r?r.value:null,M=i?i.getContext(t.value.outlet):null;if(b&&o.routeConfig===b.routeConfig){let P=HV(b,o,o.routeConfig.runGuardsAndResolvers);P?u.canActivateChecks.push(new Y_(l)):(o.data=b.data,o._resolvedData=b._resolvedData),o.component?Mg(t,r,M?M.children:null,l,u):Mg(t,r,i,l,u),P&&M&&M.outlet&&M.outlet.isActivated&&u.canDeactivateChecks.push(new Ep(M.outlet.component,b))}else b&&kg(r,M,u),u.canActivateChecks.push(new Y_(l)),o.component?Mg(t,null,M?M.children:null,l,u):Mg(t,null,i,l,u);return u}function HV(t,r,i){if(typeof i=="function")return i(t,r);switch(i){case"pathParamsChange":return!jh(t.url,r.url);case"pathParamsOrQueryParamsChange":return!jh(t.url,r.url)||!vc(t.queryParams,r.queryParams);case"always":return!0;case"paramsOrQueryParamsChange":return!Vx(t,r)||!vc(t.queryParams,r.queryParams);case"paramsChange":default:return!Vx(t,r)}}function kg(t,r,i){let l=Sp(t),u=t.value;Object.entries(l).forEach(([o,b])=>{u.component?r?kg(b,r.children.getContext(o),i):kg(b,null,i):kg(b,r,i)}),u.component?r&&r.outlet&&r.outlet.isActivated?i.canDeactivateChecks.push(new Ep(r.outlet.component,u)):i.canDeactivateChecks.push(new Ep(null,u)):i.canDeactivateChecks.push(new Ep(null,u))}function Hg(t){return typeof t=="function"}function GV(t){return typeof t=="boolean"}function WV(t){return t&&Hg(t.canLoad)}function qV(t){return t&&Hg(t.canActivate)}function ZV(t){return t&&Hg(t.canActivateChild)}function YV(t){return t&&Hg(t.canDeactivate)}function KV(t){return t&&Hg(t.canMatch)}function DA(t){return t instanceof Wc||t?.name==="EmptyError"}var M_=Symbol("INITIAL_VALUE");function Ap(){return ao(t=>lc(t.map(r=>r.pipe(Gs(1),z1(M_)))).pipe(Zn(r=>{for(let i of r)if(i!==!0){if(i===M_)return M_;if(i===!1||XV(i))return i}return!0}),Xi(r=>r!==M_),Gs(1)))}function XV(t){return Dp(t)||t instanceof Pp}function JV(t,r){return Fo(i=>{let{targetSnapshot:l,currentSnapshot:u,guards:{canActivateChecks:o,canDeactivateChecks:b}}=i;return b.length===0&&o.length===0?qn(hr($t({},i),{guardsResult:!0})):QV(b,l,u,t).pipe(Fo(M=>M&&GV(M)?e9(l,o,t,r):qn(M)),Zn(M=>hr($t({},i),{guardsResult:M})))})}function QV(t,r,i,l){return gi(t).pipe(Fo(u=>o9(u.component,u.route,i,r,l)),qc(u=>u!==!0,!0))}function e9(t,r,i,l){return gi(r).pipe(Zf(u=>qf(n9(u.route.parent,l),t9(u.route,l),i9(t,u.path,i),r9(t,u.route,i))),qc(u=>u!==!0,!0))}function t9(t,r){return t!==null&&r&&r(new $_(t)),qn(!0)}function n9(t,r){return t!==null&&r&&r(new V_(t)),qn(!0)}function r9(t,r,i){let l=r.routeConfig?r.routeConfig.canActivate:null;if(!l||l.length===0)return qn(!0);let u=l.map(o=>wm(()=>{let b=kp(r)??i,M=Op(o,b),P=qV(M)?M.canActivate(r,t):qs(b,()=>M(r,t));return pu(P).pipe(qc())}));return qn(u).pipe(Ap())}function i9(t,r,i){let l=r[r.length-1],o=r.slice(0,r.length-1).reverse().map(b=>UV(b)).filter(b=>b!==null).map(b=>wm(()=>{let M=b.guards.map(P=>{let Z=kp(b.node)??i,q=Op(P,Z),N=ZV(q)?q.canActivateChild(l,t):qs(Z,()=>q(l,t));return pu(N).pipe(qc())});return qn(M).pipe(Ap())}));return qn(o).pipe(Ap())}function o9(t,r,i,l,u){let o=r&&r.routeConfig?r.routeConfig.canDeactivate:null;if(!o||o.length===0)return qn(!0);let b=o.map(M=>{let P=kp(r)??u,Z=Op(M,P),q=YV(Z)?Z.canDeactivate(t,r,i,l):qs(P,()=>Z(t,r,i,l));return pu(q).pipe(qc())});return qn(b).pipe(Ap())}function s9(t,r,i,l){let u=r.canLoad;if(u===void 0||u.length===0)return qn(!0);let o=u.map(b=>{let M=Op(b,t),P=WV(M)?M.canLoad(r,i):qs(t,()=>M(r,i));return pu(P)});return qn(o).pipe(Ap(),TA(l))}function TA(t){return I1(Bi(r=>{if(typeof r!="boolean")throw Z_(t,r)}),Zn(r=>r===!0))}function a9(t,r,i,l){let u=r.canMatch;if(!u||u.length===0)return qn(!0);let o=u.map(b=>{let M=Op(b,t),P=KV(M)?M.canMatch(r,i):qs(t,()=>M(r,i));return pu(P)});return qn(o).pipe(Ap(),TA(l))}var Bg=class{segmentGroup;constructor(r){this.segmentGroup=r||null}},Vg=class extends Error{urlTree;constructor(r){super(),this.urlTree=r}};function Cp(t){return Wf(new Bg(t))}function l9(t){return Wf(new on(4e3,!1))}function c9(t){return Wf(IA(!1,ea.GuardRejected))}var Hx=class{urlSerializer;urlTree;constructor(r,i){this.urlSerializer=r,this.urlTree=i}lineralizeSegments(r,i){let l=[],u=i.root;for(;;){if(l=l.concat(u.segments),u.numberOfChildren===0)return qn(l);if(u.numberOfChildren>1||!u.children[lr])return l9(`${r.redirectTo}`);u=u.children[lr]}}applyRedirectCommands(r,i,l,u,o){return u9(i,u,o).pipe(Zn(b=>{if(b instanceof bc)throw new Vg(b);let M=this.applyRedirectCreateUrlTree(b,this.urlSerializer.parse(b),r,l);if(b[0]==="/")throw new Vg(M);return M}))}applyRedirectCreateUrlTree(r,i,l,u){let o=this.createSegmentGroup(r,i.root,l,u);return new bc(o,this.createQueryParams(i.queryParams,this.urlTree.queryParams),i.fragment)}createQueryParams(r,i){let l={};return Object.entries(r).forEach(([u,o])=>{if(typeof o=="string"&&o[0]===":"){let M=o.substring(1);l[u]=i[M]}else l[u]=o}),l}createSegmentGroup(r,i,l,u){let o=this.createSegments(r,i.segments,l,u),b={};return Object.entries(i.children).forEach(([M,P])=>{b[M]=this.createSegmentGroup(r,P,l,u)}),new Ur(o,b)}createSegments(r,i,l,u){return i.map(o=>o.path[0]===":"?this.findPosParam(r,o,u):this.findOrReturn(o,l))}findPosParam(r,i,l){let u=l[i.path.substring(1)];if(!u)throw new on(4001,!1);return u}findOrReturn(r,i){let l=0;for(let u of i){if(u.path===r.path)return i.splice(l),u;l++}return r}};function u9(t,r,i){if(typeof t=="string")return qn(t);let l=t,{queryParams:u,fragment:o,routeConfig:b,url:M,outlet:P,params:Z,data:q,title:N}=r;return pu(qs(i,()=>l({params:Z,data:q,queryParams:u,fragment:o,routeConfig:b,url:M,outlet:P,title:N})))}var Gx={matched:!1,consumedSegments:[],remainingSegments:[],parameters:{},positionalParamSegments:{}};function d9(t,r,i,l,u){let o=MA(t,r,i);return o.matched?(l=RV(r,l),a9(l,r,i,u).pipe(Zn(b=>b===!0?o:$t({},Gx)))):qn(o)}function MA(t,r,i){if(r.path==="**")return h9(i);if(r.path==="")return r.pathMatch==="full"&&(t.hasChildren()||i.length>0)?$t({},Gx):{matched:!0,consumedSegments:[],remainingSegments:i,parameters:{},positionalParamSegments:{}};let u=(r.matcher||iA)(i,t,r);if(!u)return $t({},Gx);let o={};Object.entries(u.posParams??{}).forEach(([M,P])=>{o[M]=P.path});let b=u.consumed.length>0?$t($t({},o),u.consumed[u.consumed.length-1].parameters):o;return{matched:!0,consumedSegments:u.consumed,remainingSegments:i.slice(u.consumed.length),parameters:b,positionalParamSegments:u.posParams??{}}}function h9(t){return{matched:!0,parameters:t.length>0?sA(t).parameters:{},consumedSegments:t,remainingSegments:[],positionalParamSegments:{}}}function tA(t,r,i,l){return i.length>0&&m9(t,i,l)?{segmentGroup:new Ur(r,p9(l,new Ur(i,t.children))),slicedSegments:[]}:i.length===0&&g9(t,i,l)?{segmentGroup:new Ur(t.segments,f9(t,i,l,t.children)),slicedSegments:i}:{segmentGroup:new Ur(t.segments,t.children),slicedSegments:i}}function f9(t,r,i,l){let u={};for(let o of i)if(J_(t,r,o)&&!l[jl(o)]){let b=new Ur([],{});u[jl(o)]=b}return $t($t({},l),u)}function p9(t,r){let i={};i[lr]=r;for(let l of t)if(l.path===""&&jl(l)!==lr){let u=new Ur([],{});i[jl(l)]=u}return i}function m9(t,r,i){return i.some(l=>J_(t,r,l)&&jl(l)!==lr)}function g9(t,r,i){return i.some(l=>J_(t,r,l))}function J_(t,r,i){return(t.hasChildren()||r.length>0)&&i.pathMatch==="full"?!1:i.path===""}function y9(t,r,i){return r.length===0&&!t.children[i]}var Wx=class{};function v9(t,r,i,l,u,o,b="emptyOnly"){return new qx(t,r,i,l,u,b,o).recognize()}var _9=31,qx=class{injector;configLoader;rootComponentType;config;urlTree;paramsInheritanceStrategy;urlSerializer;applyRedirects;absoluteRedirectCount=0;allowRedirects=!0;constructor(r,i,l,u,o,b,M){this.injector=r,this.configLoader=i,this.rootComponentType=l,this.config=u,this.urlTree=o,this.paramsInheritanceStrategy=b,this.urlSerializer=M,this.applyRedirects=new Hx(this.urlSerializer,this.urlTree)}noMatchError(r){return new on(4002,`'${r.segmentGroup}'`)}recognize(){let r=tA(this.urlTree.root,[],[],this.config).segmentGroup;return this.match(r).pipe(Zn(({children:i,rootSnapshot:l})=>{let u=new Oa(l,i),o=new zg("",u),b=mA(l,[],this.urlTree.queryParams,this.urlTree.fragment);return b.queryParams=this.urlTree.queryParams,o.url=this.urlSerializer.serialize(b),{state:o,tree:b}}))}match(r){let i=new Bh([],Object.freeze({}),Object.freeze($t({},this.urlTree.queryParams)),this.urlTree.fragment,Object.freeze({}),lr,this.rootComponentType,null,{});return this.processSegmentGroup(this.injector,this.config,r,lr,i).pipe(Zn(l=>({children:l,rootSnapshot:i})),rd(l=>{if(l instanceof Vg)return this.urlTree=l.urlTree,this.match(l.urlTree.root);throw l instanceof Bg?this.noMatchError(l):l}))}processSegmentGroup(r,i,l,u,o){return l.segments.length===0&&l.hasChildren()?this.processChildren(r,i,l,o):this.processSegment(r,i,l,l.segments,u,!0,o).pipe(Zn(b=>b instanceof Oa?[b]:[]))}processChildren(r,i,l,u){let o=[];for(let b of Object.keys(l.children))b==="primary"?o.unshift(b):o.push(b);return gi(o).pipe(Zf(b=>{let M=l.children[b],P=OV(i,b);return this.processSegmentGroup(r,P,M,b,u)}),L1((b,M)=>(b.push(...M),b)),id(null),O1(),Fo(b=>{if(b===null)return Cp(l);let M=PA(b);return b9(M),qn(M)}))}processSegment(r,i,l,u,o,b,M){return gi(i).pipe(Zf(P=>this.processSegmentAgainstRoute(P._injector??r,i,P,l,u,o,b,M).pipe(rd(Z=>{if(Z instanceof Bg)return qn(null);throw Z}))),qc(P=>!!P),rd(P=>{if(DA(P))return y9(l,u,o)?qn(new Wx):Cp(l);throw P}))}processSegmentAgainstRoute(r,i,l,u,o,b,M,P){return jl(l)!==b&&(b===lr||!J_(u,o,l))?Cp(u):l.redirectTo===void 0?this.matchSegmentAgainstRoute(r,u,l,o,b,P):this.allowRedirects&&M?this.expandSegmentAgainstRouteUsingRedirect(r,u,i,l,o,b,P):Cp(u)}expandSegmentAgainstRouteUsingRedirect(r,i,l,u,o,b,M){let{matched:P,parameters:Z,consumedSegments:q,positionalParamSegments:N,remainingSegments:X}=MA(i,u,o);if(!P)return Cp(i);typeof u.redirectTo=="string"&&u.redirectTo[0]==="/"&&(this.absoluteRedirectCount++,this.absoluteRedirectCount>_9&&(this.allowRedirects=!1));let K=new Bh(o,Z,Object.freeze($t({},this.urlTree.queryParams)),this.urlTree.fragment,nA(u),jl(u),u.component??u._loadedComponent??null,u,rA(u)),Q=q_(K,M,this.paramsInheritanceStrategy);return K.params=Object.freeze(Q.params),K.data=Object.freeze(Q.data),this.applyRedirects.applyRedirectCommands(q,u.redirectTo,N,K,r).pipe(ao(le=>this.applyRedirects.lineralizeSegments(u,le)),Fo(le=>this.processSegment(r,l,i,le.concat(X),b,!1,M)))}matchSegmentAgainstRoute(r,i,l,u,o,b){let M=d9(i,l,u,r,this.urlSerializer);return l.path==="**"&&(i.children={}),M.pipe(ao(P=>P.matched?(r=l._injector??r,this.getChildConfig(r,l,u).pipe(ao(({routes:Z})=>{let q=l._loadedInjector??r,{parameters:N,consumedSegments:X,remainingSegments:K}=P,Q=new Bh(X,N,Object.freeze($t({},this.urlTree.queryParams)),this.urlTree.fragment,nA(l),jl(l),l.component??l._loadedComponent??null,l,rA(l)),te=q_(Q,b,this.paramsInheritanceStrategy);Q.params=Object.freeze(te.params),Q.data=Object.freeze(te.data);let{segmentGroup:le,slicedSegments:j}=tA(i,X,K,Z);if(j.length===0&&le.hasChildren())return this.processChildren(q,Z,le,Q).pipe(Zn(ve=>new Oa(Q,ve)));if(Z.length===0&&j.length===0)return qn(new Oa(Q,[]));let re=jl(l)===o;return this.processSegment(q,Z,le,j,re?lr:o,!0,Q).pipe(Zn(ve=>new Oa(Q,ve instanceof Oa?[ve]:[])))}))):Cp(i)))}getChildConfig(r,i,l){return i.children?qn({routes:i.children,injector:r}):i.loadChildren?i._loadedRoutes!==void 0?qn({routes:i._loadedRoutes,injector:i._loadedInjector}):s9(r,i,l,this.urlSerializer).pipe(Fo(u=>u?this.configLoader.loadChildren(r,i).pipe(Bi(o=>{i._loadedRoutes=o.routes,i._loadedInjector=o.injector})):c9(i))):qn({routes:[],injector:r})}};function b9(t){t.sort((r,i)=>r.value.outlet===lr?-1:i.value.outlet===lr?1:r.value.outlet.localeCompare(i.value.outlet))}function w9(t){let r=t.value.routeConfig;return r&&r.path===""}function PA(t){let r=[],i=new Set;for(let l of t){if(!w9(l)){r.push(l);continue}let u=r.find(o=>l.value.routeConfig===o.value.routeConfig);u!==void 0?(u.children.push(...l.children),i.add(u)):r.push(l)}for(let l of i){let u=PA(l.children);r.push(new Oa(l.value,u))}return r.filter(l=>!i.has(l))}function nA(t){return t.data||{}}function rA(t){return t.resolve||{}}function x9(t,r,i,l,u,o){return Fo(b=>v9(t,r,i,l,b.extractedUrl,u,o).pipe(Zn(({state:M,tree:P})=>hr($t({},b),{targetSnapshot:M,urlAfterRedirects:P}))))}function C9(t,r){return Fo(i=>{let{targetSnapshot:l,guards:{canActivateChecks:u}}=i;if(!u.length)return qn(i);let o=new Set(u.map(P=>P.route)),b=new Set;for(let P of o)if(!b.has(P))for(let Z of AA(P))b.add(Z);let M=0;return gi(b).pipe(Zf(P=>o.has(P)?S9(P,l,t,r):(P.data=q_(P,P.parent,t).resolve,qn(void 0))),Bi(()=>M++),Yf(1),Fo(P=>M===b.size?qn(i):Ds))})}function AA(t){let r=t.children.map(i=>AA(i)).flat();return[t,...r]}function S9(t,r,i,l){let u=t.routeConfig,o=t._resolve;return u?.title!==void 0&&!xA(u)&&(o[Ug]=u.title),wm(()=>(t.data=q_(t,t.parent,i).resolve,I9(o,t,r,l).pipe(Zn(b=>(t._resolvedData=b,t.data=$t($t({},t.data),b),null)))))}function I9(t,r,i,l){let u=Lx(t);if(u.length===0)return qn({});let o={};return gi(u).pipe(Fo(b=>E9(t[b],r,i,l).pipe(qc(),Bi(M=>{if(M instanceof Pp)throw Z_(new Uh,M);o[b]=M}))),Yf(1),Zn(()=>o),rd(b=>DA(b)?Ds:Wf(b)))}function E9(t,r,i,l){let u=kp(r)??l,o=Op(t,u),b=o.resolve?o.resolve(r,i):qs(u,()=>o(r,i));return pu(b)}function Rx(t){return ao(r=>{let i=t(r);return i?gi(i).pipe(Zn(()=>r)):qn(r)})}var Xx=(()=>{class t{buildTitle(i){let l,u=i.root;for(;u!==void 0;)l=this.getResolvedTitleForRoute(u)??l,u=u.children.find(o=>o.outlet===lr);return l}getResolvedTitleForRoute(i){return i.data[Ug]}static \u0275fac=function(l){return new(l||t)};static \u0275prov=Zt({token:t,factory:()=>je(kA),providedIn:"root"})}return t})(),kA=(()=>{class t extends Xx{title;constructor(i){super(),this.title=i}updateTitle(i){let l=this.buildTitle(i);l!==void 0&&this.title.setTitle(l)}static \u0275fac=function(l){return new(l||t)(rr(MM))};static \u0275prov=Zt({token:t,factory:t.\u0275fac,providedIn:"root"})}return t})(),Gg=new Rn("",{providedIn:"root",factory:()=>({})}),Wg=new Rn(""),RA=(()=>{class t{componentLoaders=new WeakMap;childrenLoaders=new WeakMap;onLoadStartListener;onLoadEndListener;compiler=je(gw);loadComponent(i,l){if(this.componentLoaders.get(l))return this.componentLoaders.get(l);if(l._loadedComponent)return qn(l._loadedComponent);this.onLoadStartListener&&this.onLoadStartListener(l);let u=pu(qs(i,()=>l.loadComponent())).pipe(Zn(LA),ao(NA),Bi(b=>{this.onLoadEndListener&&this.onLoadEndListener(l),l._loadedComponent=b}),xm(()=>{this.componentLoaders.delete(l)})),o=new Hf(u,()=>new Wr).pipe($f());return this.componentLoaders.set(l,o),o}loadChildren(i,l){if(this.childrenLoaders.get(l))return this.childrenLoaders.get(l);if(l._loadedRoutes)return qn({routes:l._loadedRoutes,injector:l._loadedInjector});this.onLoadStartListener&&this.onLoadStartListener(l);let o=OA(l,this.compiler,i,this.onLoadEndListener).pipe(xm(()=>{this.childrenLoaders.delete(l)})),b=new Hf(o,()=>new Wr).pipe($f());return this.childrenLoaders.set(l,b),b}static \u0275fac=function(l){return new(l||t)};static \u0275prov=Zt({token:t,factory:t.\u0275fac,providedIn:"root"})}return t})();function OA(t,r,i,l){return pu(qs(i,()=>t.loadChildren())).pipe(Zn(LA),ao(NA),Fo(u=>u instanceof Zv||Array.isArray(u)?qn(u):gi(r.compileModuleAsync(u))),Zn(u=>{l&&l(t);let o,b,M=!1;return Array.isArray(u)?(b=u,M=!0):(o=u.create(i).injector,b=o.get(Wg,[],{optional:!0,self:!0}).flat()),{routes:b.map(Kx),injector:o}}))}function D9(t){return t&&typeof t=="object"&&"default"in t}function LA(t){return D9(t)?t.default:t}function NA(t){return qn(t)}var Q_=(()=>{class t{static \u0275fac=function(l){return new(l||t)};static \u0275prov=Zt({token:t,factory:()=>je(T9),providedIn:"root"})}return t})(),T9=(()=>{class t{shouldProcessUrl(i){return!0}extract(i){return i}merge(i,l){return i}static \u0275fac=function(l){return new(l||t)};static \u0275prov=Zt({token:t,factory:t.\u0275fac,providedIn:"root"})}return t})(),FA=new Rn("");var zA=new Rn(""),jA=(()=>{class t{currentNavigation=null;currentTransition=null;lastSuccessfulNavigation=null;events=new Wr;transitionAbortWithErrorSubject=new Wr;configLoader=je(RA);environmentInjector=je(ms);destroyRef=je(Ks);urlSerializer=je($g);rootContexts=je(Rp);location=je(yp);inputBindingEnabled=je(X_,{optional:!0})!==null;titleStrategy=je(Xx);options=je(Gg,{optional:!0})||{};paramsInheritanceStrategy=this.options.paramsInheritanceStrategy||"emptyOnly";urlHandlingStrategy=je(Q_);createViewTransition=je(FA,{optional:!0});navigationErrorHandler=je(zA,{optional:!0});navigationId=0;get hasRequestedNavigation(){return this.navigationId!==0}transitions;afterPreactivation=()=>qn(void 0);rootComponentType=null;destroyed=!1;constructor(){let i=u=>this.events.next(new j_(u)),l=u=>this.events.next(new B_(u));this.configLoader.onLoadEndListener=l,this.configLoader.onLoadStartListener=i,this.destroyRef.onDestroy(()=>{this.destroyed=!0})}complete(){this.transitions?.complete()}handleNavigationRequest(i){let l=++this.navigationId;this.transitions?.next(hr($t({},i),{extractedUrl:this.urlHandlingStrategy.extract(i.rawUrl),targetSnapshot:null,targetRouterState:null,guards:{canActivateChecks:[],canDeactivateChecks:[]},guardsResult:null,abortController:new AbortController,id:l}))}setupNavigations(i){return this.transitions=new Ti(null),this.transitions.pipe(Xi(l=>l!==null),ao(l=>{let u=!1;return qn(l).pipe(ao(o=>{if(this.navigationId>l.id)return this.cancelNavigationTransition(l,"",ea.SupersededByNewNavigation),Ds;this.currentTransition=l,this.currentNavigation={id:o.id,initialUrl:o.rawUrl,extractedUrl:o.extractedUrl,targetBrowserUrl:typeof o.extras.browserUrl=="string"?this.urlSerializer.parse(o.extras.browserUrl):o.extras.browserUrl,trigger:o.source,extras:o.extras,previousNavigation:this.lastSuccessfulNavigation?hr($t({},this.lastSuccessfulNavigation),{previousNavigation:null}):null,abort:()=>o.abortController.abort()};let b=!i.navigated||this.isUpdatingInternalState()||this.isUpdatedBrowserUrl(),M=o.extras.onSameUrlNavigation??i.onSameUrlNavigation;if(!b&&M!=="reload"){let P="";return this.events.next(new fu(o.id,this.urlSerializer.serialize(o.rawUrl),P,Og.IgnoredSameUrlNavigation)),o.resolve(!1),Ds}if(this.urlHandlingStrategy.shouldProcessUrl(o.rawUrl))return qn(o).pipe(ao(P=>(this.events.next(new $h(P.id,this.urlSerializer.serialize(P.extractedUrl),P.source,P.restoredState)),P.id!==this.navigationId?Ds:Promise.resolve(P))),x9(this.environmentInjector,this.configLoader,this.rootComponentType,i.config,this.urlSerializer,this.paramsInheritanceStrategy),Bi(P=>{l.targetSnapshot=P.targetSnapshot,l.urlAfterRedirects=P.urlAfterRedirects,this.currentNavigation=hr($t({},this.currentNavigation),{finalUrl:P.urlAfterRedirects});let Z=new Lg(P.id,this.urlSerializer.serialize(P.extractedUrl),this.urlSerializer.serialize(P.urlAfterRedirects),P.targetSnapshot);this.events.next(Z)}));if(b&&this.urlHandlingStrategy.shouldProcessUrl(o.currentRawUrl)){let{id:P,extractedUrl:Z,source:q,restoredState:N,extras:X}=o,K=new $h(P,this.urlSerializer.serialize(Z),q,N);this.events.next(K);let Q=bA(this.rootComponentType).snapshot;return this.currentTransition=l=hr($t({},o),{targetSnapshot:Q,urlAfterRedirects:Z,extras:hr($t({},X),{skipLocationChange:!1,replaceUrl:!1})}),this.currentNavigation.finalUrl=Z,qn(l)}else{let P="";return this.events.next(new fu(o.id,this.urlSerializer.serialize(o.extractedUrl),P,Og.IgnoredByUrlHandlingStrategy)),o.resolve(!1),Ds}}),Bi(o=>{let b=new L_(o.id,this.urlSerializer.serialize(o.extractedUrl),this.urlSerializer.serialize(o.urlAfterRedirects),o.targetSnapshot);this.events.next(b)}),Zn(o=>(this.currentTransition=l=hr($t({},o),{guards:VV(o.targetSnapshot,o.currentSnapshot,this.rootContexts)}),l)),JV(this.environmentInjector,o=>this.events.next(o)),Bi(o=>{if(l.guardsResult=o.guardsResult,o.guardsResult&&typeof o.guardsResult!="boolean")throw Z_(this.urlSerializer,o.guardsResult);let b=new N_(o.id,this.urlSerializer.serialize(o.extractedUrl),this.urlSerializer.serialize(o.urlAfterRedirects),o.targetSnapshot,!!o.guardsResult);this.events.next(b)}),Xi(o=>o.guardsResult?!0:(this.cancelNavigationTransition(o,"",ea.GuardRejected),!1)),Rx(o=>{if(o.guards.canActivateChecks.length!==0)return qn(o).pipe(Bi(b=>{let M=new F_(b.id,this.urlSerializer.serialize(b.extractedUrl),this.urlSerializer.serialize(b.urlAfterRedirects),b.targetSnapshot);this.events.next(M)}),ao(b=>{let M=!1;return qn(b).pipe(C9(this.paramsInheritanceStrategy,this.environmentInjector),Bi({next:()=>M=!0,complete:()=>{M||this.cancelNavigationTransition(b,"",ea.NoDataFromResolver)}}))}),Bi(b=>{let M=new z_(b.id,this.urlSerializer.serialize(b.extractedUrl),this.urlSerializer.serialize(b.urlAfterRedirects),b.targetSnapshot);this.events.next(M)}))}),Rx(o=>{let b=M=>{let P=[];if(M.routeConfig?.loadComponent&&!M.routeConfig._loadedComponent){let Z=kp(M)??this.environmentInjector;P.push(this.configLoader.loadComponent(Z,M.routeConfig).pipe(Bi(q=>{M.component=q}),Zn(()=>{})))}for(let Z of M.children)P.push(...b(Z));return P};return lc(b(o.targetSnapshot.root)).pipe(id(null),Gs(1))}),Rx(()=>this.afterPreactivation()),ao(()=>{let{currentSnapshot:o,targetSnapshot:b}=l,M=this.createViewTransition?.(this.environmentInjector,o.root,b.root);return M?gi(M).pipe(Zn(()=>l)):qn(l)}),Zn(o=>{let b=NV(i.routeReuseStrategy,o.targetSnapshot,o.currentRouterState);return this.currentTransition=l=hr($t({},o),{targetRouterState:b}),this.currentNavigation.targetRouterState=b,l}),Bi(()=>{this.events.next(new Ng)}),BV(this.rootContexts,i.routeReuseStrategy,o=>this.events.next(o),this.inputBindingEnabled),Gs(1),ca(new Sr(o=>{let b=l.abortController.signal,M=()=>o.next();return b.addEventListener("abort",M),()=>b.removeEventListener("abort",M)}).pipe(Xi(()=>!u&&!l.targetRouterState),Bi(()=>{this.cancelNavigationTransition(l,l.abortController.signal.reason+"",ea.Aborted)}))),Bi({next:o=>{u=!0,this.lastSuccessfulNavigation=this.currentNavigation,this.events.next(new hu(o.id,this.urlSerializer.serialize(o.extractedUrl),this.urlSerializer.serialize(o.urlAfterRedirects))),this.titleStrategy?.updateTitle(o.targetRouterState.snapshot),o.resolve(!0)},complete:()=>{u=!0}}),ca(this.transitionAbortWithErrorSubject.pipe(Bi(o=>{throw o}))),xm(()=>{u||this.cancelNavigationTransition(l,"",ea.SupersededByNewNavigation),this.currentTransition?.id===l.id&&(this.currentNavigation=null,this.currentTransition=null)}),rd(o=>{if(this.destroyed)return l.resolve(!1),Ds;if(u=!0,EA(o))this.events.next(new _c(l.id,this.urlSerializer.serialize(l.extractedUrl),o.message,o.cancellationCode)),jV(o)?this.events.next(new Mp(o.url,o.navigationBehaviorOptions)):l.resolve(!1);else{let b=new Tp(l.id,this.urlSerializer.serialize(l.extractedUrl),o,l.targetSnapshot??void 0);try{let M=qs(this.environmentInjector,()=>this.navigationErrorHandler?.(b));if(M instanceof Pp){let{message:P,cancellationCode:Z}=Z_(this.urlSerializer,M);this.events.next(new _c(l.id,this.urlSerializer.serialize(l.extractedUrl),P,Z)),this.events.next(new Mp(M.redirectTo,M.navigationBehaviorOptions))}else throw this.events.next(b),o}catch(M){this.options.resolveNavigationPromiseOnError?l.resolve(!1):l.reject(M)}}return Ds}))}))}cancelNavigationTransition(i,l,u){let o=new _c(i.id,this.urlSerializer.serialize(i.extractedUrl),l,u);this.events.next(o),i.resolve(!1)}isUpdatingInternalState(){return this.currentTransition?.extractedUrl.toString()!==this.currentTransition?.currentUrlTree.toString()}isUpdatedBrowserUrl(){let i=this.urlHandlingStrategy.extract(this.urlSerializer.parse(this.location.path(!0))),l=this.currentNavigation?.targetBrowserUrl??this.currentNavigation?.extractedUrl;return i.toString()!==l?.toString()&&!this.currentNavigation?.extras.skipLocationChange}static \u0275fac=function(l){return new(l||t)};static \u0275prov=Zt({token:t,factory:t.\u0275fac,providedIn:"root"})}return t})();function M9(t){return t!==Ag}var BA=(()=>{class t{static \u0275fac=function(l){return new(l||t)};static \u0275prov=Zt({token:t,factory:()=>je(P9),providedIn:"root"})}return t})(),K_=class{shouldDetach(r){return!1}store(r,i){}shouldAttach(r){return!1}retrieve(r){return null}shouldReuseRoute(r,i){return r.routeConfig===i.routeConfig}},P9=(()=>{class t extends K_{static \u0275fac=(()=>{let i;return function(u){return(i||(i=hp(t)))(u||t)}})();static \u0275prov=Zt({token:t,factory:t.\u0275fac,providedIn:"root"})}return t})(),VA=(()=>{class t{urlSerializer=je($g);options=je(Gg,{optional:!0})||{};canceledNavigationResolution=this.options.canceledNavigationResolution||"replace";location=je(yp);urlHandlingStrategy=je(Q_);urlUpdateStrategy=this.options.urlUpdateStrategy||"deferred";currentUrlTree=new bc;getCurrentUrlTree(){return this.currentUrlTree}rawUrlTree=this.currentUrlTree;getRawUrlTree(){return this.rawUrlTree}createBrowserPath({finalUrl:i,initialUrl:l,targetBrowserUrl:u}){let o=i!==void 0?this.urlHandlingStrategy.merge(i,l):l,b=u??o;return b instanceof bc?this.urlSerializer.serialize(b):b}commitTransition({targetRouterState:i,finalUrl:l,initialUrl:u}){l&&i?(this.currentUrlTree=l,this.rawUrlTree=this.urlHandlingStrategy.merge(l,u),this.routerState=i):this.rawUrlTree=u}routerState=bA(null);getRouterState(){return this.routerState}stateMemento=this.createStateMemento();updateStateMemento(){this.stateMemento=this.createStateMemento()}createStateMemento(){return{rawUrlTree:this.rawUrlTree,currentUrlTree:this.currentUrlTree,routerState:this.routerState}}resetInternalState({finalUrl:i}){this.routerState=this.stateMemento.routerState,this.currentUrlTree=this.stateMemento.currentUrlTree,this.rawUrlTree=this.urlHandlingStrategy.merge(this.currentUrlTree,i??this.rawUrlTree)}static \u0275fac=function(l){return new(l||t)};static \u0275prov=Zt({token:t,factory:()=>je(A9),providedIn:"root"})}return t})(),A9=(()=>{class t extends VA{currentPageId=0;lastSuccessfulId=-1;restoredState(){return this.location.getState()}get browserPageId(){return this.canceledNavigationResolution!=="computed"?this.currentPageId:this.restoredState()?.\u0275routerPageId??this.currentPageId}registerNonRouterCurrentEntryChangeListener(i){return this.location.subscribe(l=>{l.type==="popstate"&&setTimeout(()=>{i(l.url,l.state,"popstate")})})}handleRouterEvent(i,l){i instanceof $h?this.updateStateMemento():i instanceof fu?this.commitTransition(l):i instanceof Lg?this.urlUpdateStrategy==="eager"&&(l.extras.skipLocationChange||this.setBrowserUrl(this.createBrowserPath(l),l)):i instanceof Ng?(this.commitTransition(l),this.urlUpdateStrategy==="deferred"&&!l.extras.skipLocationChange&&this.setBrowserUrl(this.createBrowserPath(l),l)):i instanceof _c&&i.code!==ea.SupersededByNewNavigation&&i.code!==ea.Redirect?this.restoreHistory(l):i instanceof Tp?this.restoreHistory(l,!0):i instanceof hu&&(this.lastSuccessfulId=i.id,this.currentPageId=this.browserPageId)}setBrowserUrl(i,{extras:l,id:u}){let{replaceUrl:o,state:b}=l;if(this.location.isCurrentPathEqualTo(i)||o){let M=this.browserPageId,P=$t($t({},b),this.generateNgRouterState(u,M));this.location.replaceState(i,"",P)}else{let M=$t($t({},b),this.generateNgRouterState(u,this.browserPageId+1));this.location.go(i,"",M)}}restoreHistory(i,l=!1){if(this.canceledNavigationResolution==="computed"){let u=this.browserPageId,o=this.currentPageId-u;o!==0?this.location.historyGo(o):this.getCurrentUrlTree()===i.finalUrl&&o===0&&(this.resetInternalState(i),this.resetUrlToCurrentUrlTree())}else this.canceledNavigationResolution==="replace"&&(l&&this.resetInternalState(i),this.resetUrlToCurrentUrlTree())}resetUrlToCurrentUrlTree(){this.location.replaceState(this.urlSerializer.serialize(this.getRawUrlTree()),"",this.generateNgRouterState(this.lastSuccessfulId,this.currentPageId))}generateNgRouterState(i,l){return this.canceledNavigationResolution==="computed"?{navigationId:i,\u0275routerPageId:l}:{navigationId:i}}static \u0275fac=(()=>{let i;return function(u){return(i||(i=hp(t)))(u||t)}})();static \u0275prov=Zt({token:t,factory:t.\u0275fac,providedIn:"root"})}return t})();function Jx(t,r){t.events.pipe(Xi(i=>i instanceof hu||i instanceof _c||i instanceof Tp||i instanceof fu),Zn(i=>i instanceof hu||i instanceof fu?0:(i instanceof _c?i.code===ea.Redirect||i.code===ea.SupersededByNewNavigation:!1)?2:1),Xi(i=>i!==2),Gs(1)).subscribe(()=>{r()})}var k9={paths:"exact",fragment:"ignored",matrixParams:"ignored",queryParams:"exact"},R9={paths:"subset",fragment:"ignored",matrixParams:"ignored",queryParams:"subset"},Ed=(()=>{class t{get currentUrlTree(){return this.stateManager.getCurrentUrlTree()}get rawUrlTree(){return this.stateManager.getRawUrlTree()}disposed=!1;nonRouterCurrentEntryChangeSubscription;console=je(Yv);stateManager=je(VA);options=je(Gg,{optional:!0})||{};pendingTasks=je(Jc);urlUpdateStrategy=this.options.urlUpdateStrategy||"deferred";navigationTransitions=je(jA);urlSerializer=je($g);location=je(yp);urlHandlingStrategy=je(Q_);injector=je(ms);_events=new Wr;get events(){return this._events}get routerState(){return this.stateManager.getRouterState()}navigated=!1;routeReuseStrategy=je(BA);onSameUrlNavigation=this.options.onSameUrlNavigation||"ignore";config=je(Wg,{optional:!0})?.flat()??[];componentInputBindingEnabled=!!je(X_,{optional:!0});constructor(){this.resetConfig(this.config),this.navigationTransitions.setupNavigations(this).subscribe({error:i=>{this.console.warn(i)}}),this.subscribeToNavigationEvents()}eventsSubscription=new Ki;subscribeToNavigationEvents(){let i=this.navigationTransitions.events.subscribe(l=>{try{let u=this.navigationTransitions.currentTransition,o=this.navigationTransitions.currentNavigation;if(u!==null&&o!==null){if(this.stateManager.handleRouterEvent(l,o),l instanceof _c&&l.code!==ea.Redirect&&l.code!==ea.SupersededByNewNavigation)this.navigated=!0;else if(l instanceof hu)this.navigated=!0;else if(l instanceof Mp){let b=l.navigationBehaviorOptions,M=this.urlHandlingStrategy.merge(l.url,u.currentRawUrl),P=$t({browserUrl:u.extras.browserUrl,info:u.extras.info,skipLocationChange:u.extras.skipLocationChange,replaceUrl:u.extras.replaceUrl||this.urlUpdateStrategy==="eager"||M9(u.source)},b);this.scheduleNavigation(M,Ag,null,P,{resolve:u.resolve,reject:u.reject,promise:u.promise})}}kV(l)&&this._events.next(l)}catch(u){this.navigationTransitions.transitionAbortWithErrorSubject.next(u)}});this.eventsSubscription.add(i)}resetRootComponentType(i){this.routerState.root.component=i,this.navigationTransitions.rootComponentType=i}initialNavigation(){this.setUpLocationChangeListener(),this.navigationTransitions.hasRequestedNavigation||this.navigateToSyncWithBrowser(this.location.path(!0),Ag,this.stateManager.restoredState())}setUpLocationChangeListener(){this.nonRouterCurrentEntryChangeSubscription??=this.stateManager.registerNonRouterCurrentEntryChangeListener((i,l,u)=>{this.navigateToSyncWithBrowser(i,u,l)})}navigateToSyncWithBrowser(i,l,u){let o={replaceUrl:!0},b=u?.navigationId?u:null;if(u){let P=$t({},u);delete P.navigationId,delete P.\u0275routerPageId,Object.keys(P).length!==0&&(o.state=P)}let M=this.parseUrl(i);this.scheduleNavigation(M,l,b,o).catch(P=>{this.disposed||this.injector.get(Ja)(P)})}get url(){return this.serializeUrl(this.currentUrlTree)}getCurrentNavigation(){return this.navigationTransitions.currentNavigation}get lastSuccessfulNavigation(){return this.navigationTransitions.lastSuccessfulNavigation}resetConfig(i){this.config=i.map(Kx),this.navigated=!1}ngOnDestroy(){this.dispose()}dispose(){this._events.unsubscribe(),this.navigationTransitions.complete(),this.nonRouterCurrentEntryChangeSubscription&&(this.nonRouterCurrentEntryChangeSubscription.unsubscribe(),this.nonRouterCurrentEntryChangeSubscription=void 0),this.disposed=!0,this.eventsSubscription.unsubscribe()}createUrlTree(i,l={}){let{relativeTo:u,queryParams:o,fragment:b,queryParamsHandling:M,preserveFragment:P}=l,Z=P?this.currentUrlTree.fragment:b,q=null;switch(M??this.options.defaultQueryParamsHandling){case"merge":q=$t($t({},this.currentUrlTree.queryParams),o);break;case"preserve":q=this.currentUrlTree.queryParams;break;default:q=o||null}q!==null&&(q=this.removeEmptyProps(q));let N;try{let X=u?u.snapshot:this.routerState.snapshot.root;N=gA(X)}catch{(typeof i[0]!="string"||i[0][0]!=="/")&&(i=[]),N=this.currentUrlTree.root}return yA(N,i,q,Z??null)}navigateByUrl(i,l={skipLocationChange:!1}){let u=Dp(i)?i:this.parseUrl(i),o=this.urlHandlingStrategy.merge(u,this.rawUrlTree);return this.scheduleNavigation(o,Ag,null,l)}navigate(i,l={skipLocationChange:!1}){return O9(i),this.navigateByUrl(this.createUrlTree(i,l),l)}serializeUrl(i){return this.urlSerializer.serialize(i)}parseUrl(i){try{return this.urlSerializer.parse(i)}catch{return this.urlSerializer.parse("/")}}isActive(i,l){let u;if(l===!0?u=$t({},k9):l===!1?u=$t({},R9):u=l,Dp(i))return XP(this.currentUrlTree,i,u);let o=this.parseUrl(i);return XP(this.currentUrlTree,o,u)}removeEmptyProps(i){return Object.entries(i).reduce((l,[u,o])=>(o!=null&&(l[u]=o),l),{})}scheduleNavigation(i,l,u,o,b){if(this.disposed)return Promise.resolve(!1);let M,P,Z;b?(M=b.resolve,P=b.reject,Z=b.promise):Z=new Promise((N,X)=>{M=N,P=X});let q=this.pendingTasks.add();return Jx(this,()=>{queueMicrotask(()=>this.pendingTasks.remove(q))}),this.navigationTransitions.handleNavigationRequest({source:l,restoredState:u,currentUrlTree:this.currentUrlTree,currentRawUrl:this.currentUrlTree,rawUrl:i,extras:o,resolve:M,reject:P,promise:Z,currentSnapshot:this.routerState.snapshot,currentRouterState:this.routerState}),Z.catch(N=>Promise.reject(N))}static \u0275fac=function(l){return new(l||t)};static \u0275prov=Zt({token:t,factory:t.\u0275fac,providedIn:"root"})}return t})();function O9(t){for(let r=0;r<t.length;r++)if(t[r]==null)throw new on(4008,!1)}var F9=new Rn("");function Qx(t,...r){return cd([{provide:Wg,multi:!0,useValue:t},[],{provide:el,useFactory:z9,deps:[Ed]},{provide:Kv,multi:!0,useFactory:j9},r.map(i=>i.\u0275providers)])}function z9(t){return t.routerState.root}function j9(){let t=je(Yo);return r=>{let i=t.get(Ll);if(r!==i.components[0])return;let l=t.get(Ed),u=t.get(B9);t.get(V9)===1&&l.initialNavigation(),t.get(U9,null,{optional:!0})?.setUpPreloading(),t.get(F9,null,{optional:!0})?.init(),l.resetRootComponentType(i.componentTypes[0]),u.closed||(u.next(),u.complete(),u.unsubscribe())}}var B9=new Rn("",{factory:()=>new Wr}),V9=new Rn("",{providedIn:"root",factory:()=>1});var U9=new Rn("");var Uo=class t{logger=je(ar);router=je(Ed);history=[["/"]];resetHistory(){this.history=[["/"]],this.router.navigate(["/"])}getCurrentPath(){return this.history[this.history.length-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(r){this.router.navigate(["/profile",r]),this.history.push(["/profile",r])}navigateToRoute(r){this.router.navigate(["/route",r]),this.history.push(["/route",r])}goBack(){if(this.history.length>1){this.history.pop();let r=this.history.pop();if(!r){this.logger.log("No previous path found");return}this.router.navigate(r),this.history.push(r);return}this.logger.log("Only current path in history")}static \u0275fac=function(i){return new(i||t)};static \u0275prov=Zt({token:t,factory:t.\u0275fac})};function eC(t){return E_(t)}var H9={"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"]};function e0(t){let r=H9[t];return r||["fak","shopping"]}var nC={};US(nC,{faAirport:()=>G9,faArrowTopRight:()=>W9,faBackground:()=>tC,faBeauty:()=>q9,faCenter:()=>Z9,faCompass:()=>Y9,faCompassNorth:()=>K9,faDeals:()=>X9,faEvents:()=>J9,faFoodAndBeverage:()=>Q9,faHealth:()=>eU,faHotels:()=>tU,faParking:()=>nU,faRoute:()=>rU,faServices:()=>iU,faShopping:()=>oU,faUser:()=>sU});var G9={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"]},W9={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"]},tC={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"]},q9={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"]},Z9={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"]},Y9={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"]},K9={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"]},X9={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"]},J9={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"]},Q9={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"]},eU={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"]},tU={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"]},nU={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"]},rU={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"]},iU={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"]},oU={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"]},sU={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 da=class t{onDestroy=new Wr;logger=je(ar);mapService=je(So);navigatorService=je(Uo);loadedDataService=je(Xo);iconLibraryService=je(gr);document=je(wi);markers=new Set;ngOnDestroy(){this.onDestroy.next(),this.onDestroy.complete()}getIconFromPlace(r){this.logger.log("getIconFromPlace",r);let[i,l]=e0(r.localizedCategory||"");return this.iconLibraryService.getIconDefinition(i,l)}toSVGString(r){return Tx(i=>{i(eC(tC)),i(eC(r))}).html.join("")}createPlaceMarkerElement(r){let i=this.getIconFromPlace(r);return this.createElement(r.lazarilloId,i)}createOriginMarkerElement(){let r=this.iconLibraryService.getIconDefinition("fak","user");return this.createElement("origin",r,["route-marker","origin-marker"])}createElement(r,i,l=[]){let u=this.document.createElement("div");return u.className="marker",u.classList.add(...l),u.id=`${r}-marker`,u.innerHTML=this.toSVGString(i),u}addMarker(r){if(this.markers.has(r.lazarilloId)){this.logger.log("Marker already exists for place",r.lazarilloId);return}let i={element:this.createPlaceMarkerElement(r),id:r.lazarilloId,coordinate:r.position,onClick:()=>{this.logger.log("Marker clicked for place",r.lazarilloId),this.navigatorService.navigateToProfile(r.lazarilloId)},anchor:"bottom"};this.mapService.addMarker(i),this.markers.add(r.lazarilloId),this.logger.log("Marker added for place",r.lazarilloId)}addInitialMarkers(){this.loadedDataService.getAvailablePlaces().pipe(Gs(1),ca(this.onDestroy)).subscribe({next:r=>{r.forEach(i=>{this.addMarker(i)})},error:r=>{this.logger.logWarning("Error adding initial markers",r)}})}addMarkers(r){this.mapService.mapReady.pipe(Xi(i=>i),Gs(1),ca(this.onDestroy)).subscribe({next:()=>{this.removeAllMarkers(),r.forEach(i=>{this.addMarker(i)})},error:i=>{this.logger.logWarning("Error adding markers",i)}})}removeAllMarkers(){this.mapService.removeAllMarkers(),this.markers.clear()}hasMarker(r){return this.markers.has(r)}selectMarker(r){if(!this.markers.has(r)){this.logger.logWarning("Marker not found",r);return}let i=this.document.getElementById(`${r}-marker`);if(!i){this.logger.logWarning("Marker not found",r);return}i.classList.add("selected")}deselectMarker(r){if(!this.markers.has(r)){this.logger.logWarning("Marker not found",r);return}let i=this.document.getElementById(`${r}-marker`);if(!i){this.logger.logWarning("Marker not found",r);return}i.classList.remove("selected")}addOriginMarker(r){let i={element:this.createOriginMarkerElement(),id:"origin",coordinate:r,anchor:"bottom"};this.mapService.addMarker(i),this.markers.add("origin")}addDestinationMarker(r){let i={element:this.createElement(r.lazarilloId,this.getIconFromPlace(r),["route-marker","destination-marker"]),id:r.lazarilloId,coordinate:r.position,anchor:"bottom"};this.mapService.addMarker(i),this.markers.add(r.lazarilloId)}addRouteMarker(r){let i={element:this.createElement(r.lazarilloId,this.getIconFromPlace(r),["route-marker"]),id:r.lazarilloId,coordinate:r.position,anchor:"bottom"};this.mapService.addMarker(i),this.markers.add(r.lazarilloId)}addRouteMarkers(r){for(let i of r)this.addRouteMarker(i)}prepareToMapReuse(){this.removeAllMarkers()}static \u0275fac=function(i){return new(i||t)};static \u0275prov=Zt({token:t,factory:t.\u0275fac})};var UA={fas:{},fak:{}},rC=[];function $A(t){Object.keys(t).forEach(function(r){if(r!=="prefix"){var i=t[r],l=i.icon[2];l.forEach(function(u){typeof u=="string"&&(UA[i.prefix][u]=i)}),UA[i.prefix][i.iconName]=i,rC.push(i)}})}$A(Yw);$A(nC);var n0=$S(Gw());var t0=class t{apiKey=kr("");institutionId=kr("");initialData=kr("");showCategoryFilters=kr(!0,{transform:r=>typeof r=="string"?r==="true":r});showCityFilter=kr(!0,{transform:r=>typeof r=="string"?r==="true":r});defaultToMap=kr(!1,{transform:r=>typeof r=="string"?r==="true":r});inheritFontFamily=kr(!1,{transform:r=>typeof r=="string"?r==="true":r});hideDeals=kr(!1,{transform:this.transformToBoolean});router=je(Ed);navigatorService=je(Uo);locationStrategy=je(mc);platformId=je(fc);logger=je(ar);sdkService=je(ua);loadedDataService=je(Xo);homeStateService=je(Ui);iconLibrary=je(Dg);isInitialized=!1;isConnected=!1;static instanceCount=0;static hasBeenConnected=!1;constructor(){this.loadIcons(),_r(()=>{let r=this.apiKey();r&&r.trim()!==""&&!this.sdkService.isInitialized()&&(this.logger.log("\u{1F511} Initializing SDK with provided API key"),this.sdkService.initialize(r.trim()),this.loadData())}),_r(()=>{this.homeStateService.hideDeals.set(this.hideDeals())}),_r(()=>{let r=this.initialData();r&&r.trim()!==""&&this.processInitialData(r)}),_r(()=>{this.homeStateService.showCategoryFilters.set(this.showCategoryFilters())}),_r(()=>{this.homeStateService.showCityFilter.set(this.showCityFilter())}),_r(()=>{let r=this.defaultToMap();this.logger.log("====> defaultToMap input",r),this.homeStateService.defaultToMap.set(r)})}ngOnInit(){bd(this.platformId)?this.handleInstanceTracking():this.logger.log("\u{1F5A5}\uFE0F Componente inicializado en servidor (SSR)")}loadIcons(){this.iconLibrary.addIcons(...rC)}loadData(){this.loadPlaces(),this.loadConfiguration(),this.loadInstitution()}transformToBoolean(r){return typeof r=="string"?r==="true":r}processInitialData(r){try{let i=JSON.parse(r);if(i.availablePlaces){let u=i.availablePlaces.map(o=>new n0.LzPlace(o)).filter(o=>o.generalCategory!=="transport"&&!o.hidePlace);this.loadedDataService.setAvailablePlaces(u),this.logger.log(`\u2705 Successfully loaded ${u.length} places from initial data`)}if(i.institutions){let u=i.institutions.map(o=>new n0.Institution(o)).find(o=>o.lazarilloId===this.institutionId());u?this.loadedDataService.setInstitution(u):this.logger.log(`\u274C Institution not found for id ${this.institutionId()}`)}}catch(i){this.logger.log("\u274C Error processing initial data",i),this.logger.log(`\u274C Data: ${r}`)}}async loadPlaces(){let r=bd(this.platformId)?"Browser":"Server";try{this.logger.log(`\u{1F4CD} Loading initial places data on ${r}...`);let i=await this.sdkService.getAvailablePlaces(),l=i.filter(u=>u.generalCategory!=="transport"&&!u.hidePlace);this.loadedDataService.setAvailablePlaces(l),this.logger.log(`\u2705 Successfully loaded ${i.length} places on ${r}`)}catch(i){this.logger.log(`\u274C Error loading initial places data on ${r}:`,i),this.loadedDataService.setAvailablePlaces([])}}async loadConfiguration(){try{let r=await this.sdkService.getConfiguration();this.loadedDataService.setConfiguration(r),this.logger.log("\u2705 Successfully loaded configuration")}catch(r){this.logger.log("\u274C Error loading initial configuration",r)}}async loadInstitution(){try{let i=(await this.sdkService.getInstitutions()).find(l=>l.lazarilloId===this.institutionId());i?(this.loadedDataService.setInstitution(i),this.logger.log("\u2705 Successfully loaded institution",i)):this.logger.log("\u274C Institution not found")}catch(r){this.logger.log("\u274C Error loading institution data",r)}}handleInstanceTracking(){t.instanceCount++;let r=this.checkForExistingRouterContent(),i=this.router.url;t.hasBeenConnected||r||i!=="/"&&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: ${i}`),this.logger.log(` - Contenido en router outlet: ${r}`),this.handleReconnection()):this.logger.log(`\u{1F680} Primera conexi\xF3n del web component (instancia #${t.instanceCount})`),t.hasBeenConnected=!0}checkForExistingRouterContent(){try{let r=document.querySelector("router-outlet");return r?r.children.length>0:!1}catch{return!1}}ngAfterViewInit(){this.isConnected=!0,this.scheduleRouterInitialization()}ngOnDestroy(){this.isConnected=!1}scheduleRouterInitialization(){bd(this.platformId)?requestAnimationFrame(()=>{this.initializeRouter()}):setTimeout(()=>{this.initializeRouter()},0)}initializeRouter(){if(this.isInitialized&&this.isConnected)return;this.locationStrategy.setInitialPath("/");let r=this.router.url,i=this.router.routerState.root.firstChild;r==="/"&&!i?this.router.navigateByUrl("/").then(()=>{this.isInitialized=!0}).catch(l=>{console.error("Error en navegaci\xF3n inicial:",l),this.isInitialized=!0}):this.isInitialized=!0}handleReconnection(){this.logger.log("\u{1F504} Procesando reconexi\xF3n del web component");let r=bd(this.platformId)?10:50;setTimeout(()=>{this.checkAndFixRouterSync()},r)}checkAndFixRouterSync(){if(!bd(this.platformId)){this.logger.log("\u2139\uFE0F Saltando verificaci\xF3n de sincronizaci\xF3n en servidor");return}let r=this.locationStrategy.getCurrentPath()||"/",i=this.router.url,l=this.router.routerState.root.firstChild,u=this.checkForExistingRouterContent();this.logger.log("\u{1F50D} Verificando sincronizaci\xF3n del router:"),this.logger.log(` - Path interno: "${r}"`),this.logger.log(` - Router URL: "${i}"`),this.logger.log(` - Tiene ruta activa: ${!!l}`),this.logger.log(` - Contenido en router outlet: ${u}`),r==="/"&&i!=="/"||r==="/"&&!l&&u||r==="/"&&i==="/"&&u&&!l?(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:!0}).then(()=>{this.logger.log("\u2705 Navegaci\xF3n correctiva completada")}).catch(r=>{console.error("\u274C Error en navegaci\xF3n correctiva:",r)})}static \u0275fac=function(i){return new(i||t)};static \u0275cmp=In({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"]},features:[e_([Uo,Ui,da,gr,gc])],decls:4,vars:2,consts:[[1,"named-container"],[1,"app-container"],[1,"app-content"]],template:function(i,l){i&1&&(ft(0,"div",0)(1,"div",1)(2,"div",2),jt(3,"router-outlet"),gt()()()),i&2&&(mt(),li("inherit-font-family",l.inheritFontFamily()))},dependencies:[D_,Hh],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%}"]})};var r0=class t extends mc{_path="";_baseHref;_popStateListeners=[];constructor(){super(),this._baseHref=this.getBaseHref()}path(){return this._path}prepareExternalUrl(r){return this._baseHref+"#"+r}pushState(r,i,l,u){this._updatePath(r,l,u)}replaceState(r,i,l,u){this._updatePath(r,l,u)}forward(){}back(){}getState(){return null}historyGo(r){}onPopState(r){this._popStateListeners.push(r)}getBaseHref(){return typeof document<"u"?document.querySelector("base")?.href??"/":"/"}_updatePath(r,i,l){this._path=i+(l?"?"+l:""),this._notifyPopState(r,i)}_notifyPopState(r,i){let l={type:"popstate",state:r,url:i,pop:!0};this._popStateListeners.forEach(u=>{try{u(l)}catch(o){console.error("Error in popstate listener:",o)}})}getCurrentPath(){return this._path}setInitialPath(r){this._path=r}static \u0275fac=function(i){return new(i||t)};static \u0275prov=Zt({token:t,factory:t.\u0275fac,providedIn:"root"})};function HA(t,r){let i=r?.injector??je(Yo),l=new Ta(1),u=_r(()=>{let o;try{o=t()}catch(b){Nl(()=>l.error(b));return}Nl(()=>l.next(o))},{injector:i,manualCleanup:!0});return i.get(Ks).onDestroy(()=>{u.destroy(),l.complete()}),l.asObservable()}function ys(t,r){let l=!r?.manualCleanup?r?.injector?.get(Ks)??je(Ks):null,u=aU(r?.equal),o;r?.requireSync?o=Jn({kind:0},{equal:u}):o=Jn({kind:1,value:r?.initialValue},{equal:u});let b,M=t.subscribe({next:P=>o.set({kind:1,value:P}),error:P=>{o.set({kind:2,error:P}),b?.()},complete:()=>{b?.()}});if(r?.requireSync&&o().kind===0)throw new on(601,!1);return b=l?.onDestroy(M.unsubscribe.bind(M)),An(()=>{let P=o();switch(P.kind){case 1:return P.value;case 2:throw P.error;case 0:throw new on(601,!1)}},{equal:r?.equal})}function aU(t=Object.is){return(r,i)=>r.kind===1&&i.kind===1&&t(r.value,i.value)}var lU=["categoryFilters"];function cU(t,r){if(t&1){let i=ai();ft(0,"button",14),gn("click",function(){Br(i);let u=cn();return Vr(u.onClearInput())}),jt(1,"fa-icon",6),gt()}if(t&2){let i=cn();mt(),Ht("icon",i.faXmark)}}function uU(t,r){if(t&1&&jt(0,"fa-icon",6),t&2){let i=cn(2);Ht("icon",i.faCaretUp)}}function dU(t,r){if(t&1&&jt(0,"fa-icon",6),t&2){let i=cn(2);Ht("icon",i.faCaretDown)}}function hU(t,r){if(t&1){let i=ai();ft(0,"button",21),gn("click",function(){let u=Br(i).$implicit,o=cn(3);return Vr(o.onCitySelect(u))}),xn(1),gt()}if(t&2){let i=r.$implicit,l=cn(3);li("selected",i===l.selectedCity()),mt(),Vo(" ",i," ")}}function fU(t,r){if(t&1&&(ft(0,"div",19),jo(1,hU,2,3,"button",20,kh),gt()),t&2){let i=cn(2);mt(),Bo(i.citiesOptions())}}function pU(t,r){if(t&1){let i=ai();ft(0,"div",9)(1,"button",15),gn("click",function(){Br(i);let u=cn();return Vr(u.onCityFilterClick())}),jt(2,"fa-icon",6),gt(),ft(3,"button",16),gn("click",function(){Br(i);let u=cn();return Vr(u.onCityFilterClick())}),ft(4,"span",17),xn(5),gt(),ft(6,"div",18),pr(7,uU,1,1,"fa-icon",6)(8,dU,1,1,"fa-icon",6),gt()(),pr(9,fU,3,0,"div",19),gt()}if(t&2){let i=cn();mt(),li("active",i.isCityDropdownOpen()),mt(),Ht("icon",i.faFilter),mt(3),gs(i.selectedCity()),mt(2),mr(i.isCityDropdownOpen()?7:8),mt(2),mr(i.isCityDropdownOpen()?9:-1)}}var i0=class t{logger=je(ar);stateService=je(Ui);mapService=je(So);navigatorService=je(Uo);iconLibrary=je(gr);categoryFilters;activeView=An(()=>this.stateService.activeView());showCityFilter=An(()=>this.stateService.showCityFilter());inputValue=An(()=>this.stateService.inputValue());citiesOptions=An(()=>["All cities","Detroit",...[]]);selectedCity=Js(()=>this.citiesOptions()[0]);isCityDropdownOpen=Jn(!1);mapReady=ys(this.mapService.mapReady,{initialValue:!1});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(){_r(()=>{let r=this.selectedCity();this.stateService.selectedCity.set(r)}),_r(()=>{if(this.stateService.activeView()==="map"&&this.mapReady()){let r=this.stateService.lastListedPlaces();setTimeout(()=>{this.mapService.fitCoordinates(r.map(i=>i.position),{padding:{top:100,left:100,right:100,bottom:100}})},100)}})}onGridClick(){this.stateService.activeView.set("grid")}onMapClick(){this.stateService.activeView.set("map")}onInputChange(r){let i=r.target;this.stateService.inputValue.set(i.value),this.navigatorService.navigateToSearchView()}onClearInput(){this.stateService.inputValue.set(""),this.navigatorService.navigateToHome()}onCityFilterClick(){this.isCityDropdownOpen.update(r=>!r)}onCitySelect(r){this.selectedCity.set(r),this.isCityDropdownOpen.set(!1)}static \u0275fac=function(i){return new(i||t)};static \u0275cmp=In({type:t,selectors:[["app-home-screen"]],viewQuery:function(i,l){if(i&1&&Rh(lU,5),i&2){let u;Oh(u=Lh())&&(l.categoryFilters=u.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",3,"selected"],[1,"city-option",3,"click"]],template:function(i,l){i&1&&(ft(0,"div",0)(1,"div",1)(2,"div",2)(3,"div",3)(4,"div",4)(5,"div",5),jt(6,"fa-icon",6),gt(),ft(7,"input",7),gn("input",function(o){return l.onInputChange(o)}),gt(),pr(8,cU,2,1,"button",8),gt(),pr(9,pU,10,6,"div",9),gt(),ft(10,"div",10)(11,"button",11),gn("click",function(){return l.onGridClick()}),ft(12,"div",12),jt(13,"fa-icon",6),gt(),ft(14,"span"),xn(15,"Grid View"),gt()(),ft(16,"button",11),gn("click",function(){return l.onMapClick()}),ft(17,"div",12),jt(18,"fa-icon",6),gt(),ft(19,"span"),xn(20,"Map View"),gt()()()()(),ft(21,"div",13),jt(22,"router-outlet"),gt()()),i&2&&(mt(4),li("active",l.inputValue()!==""),mt(2),Ht("icon",l.faMagnifyingGlass),mt(),Ht("value",l.inputValue()),mt(),mr(l.inputValue()!==""?8:-1),mt(),mr(l.showCityFilter()?9:-1),mt(2),li("active",l.activeView()==="grid"),mt(2),Ht("icon",l.faGrid2),mt(3),li("active",l.activeView()==="map"),mt(2),Ht("icon",l.faMapLocationDot))},dependencies:[Fr,Hh],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}}"],changeDetection:0})};var o0="https://images.ctfassets.net/37yx0l0lf3yk/6eJ4fYG9hQxJ8ayujcebhe/8cf968e7d66df9a8bc75b72b7e7d6432/00002167_BedrockWebsite_TenantCOmingSoon_PlaceholderImage_3840x3840_V2-web.jpg?q=80&fm=webp&w=1920";function s0(t){return t.tags?.includes("deals")||t.tags?.includes("events")}var mU=()=>({rotate:42});function gU(t,r){if(t&1&&jt(0,"fa-icon",3),t&2){let i=cn();Ht("icon",i.faCircleNotch)("transform",au(2,mU))}}function yU(t,r){t&1&&(ft(0,"div",4),xn(1,"Deals + Events"),gt())}var a0=class t{iconLibrary=je(gr);navigatorService=je(Uo);homeStateService=je(Ui);place=kr.required();hasDealsOrEvents=An(()=>this.place().banners.some(s0));hideDeals=An(()=>this.homeStateService.hideDeals());imageSrc=An(()=>this.place().images[0]||o0);isImageLoading=Jn(!0);faCircleNotch=this.iconLibrary.getIconDefinition("fas","circle-notch");constructor(){_r(()=>{this.imageSrc()&&this.startImageLoading()})}navigateToProfile(){this.navigatorService.navigateToProfile(this.place().lazarilloId)}startImageLoading(){this.isImageLoading.set(!0)}endImageLoading(){this.isImageLoading.set(!1)}static \u0275fac=function(i){return new(i||t)};static \u0275cmp=In({type:t,selectors:[["app-location-card"]],inputs:{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(i,l){i&1&&(ft(0,"button",0),gn("click",function(){return l.navigateToProfile()}),ft(1,"div",1)(2,"img",2),gn("load",function(){return l.endImageLoading()})("error",function(){return l.endImageLoading()}),gt(),pr(3,gU,1,3,"fa-icon",3)(4,yU,2,0,"div",4),gt(),ft(5,"div",5)(6,"h3",6),xn(7),gt(),ft(8,"p",7),xn(9),gt(),ft(10,"span",8),xn(11),gt()()()),i&2&&(mt(),li("loading",l.isImageLoading()),mt(),Ht("src",l.imageSrc(),Mh)("alt",l.place().title),mt(),mr(l.isImageLoading()?3:l.hasDealsOrEvents()&&!l.hideDeals()?4:-1),mt(4),gs(l.place().title),mt(2),gs(l.place().address),mt(2),gs(l.place().localizedCategory))},dependencies:[Fr],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%]{min-width:227px;min-height:227px;overflow:hidden;position:relative}@container mapvx-container (width <= 640px){.card-image[_ngcontent-%COMP%]{min-width:160px;min-height:160px}}.card-image[_ngcontent-%COMP%] img[_ngcontent-%COMP%]{width:100%;aspect-ratio:1/1;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:227px;flex-direction:column;align-items:flex-start;gap:8px}@container mapvx-container (width <= 640px){.card-content[_ngcontent-%COMP%]{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}"],changeDetection:0})};var vU=["cardContainer"],_U=["*"];function bU(t,r){if(t&1&&jt(0,"app-location-card",3),t&2){let i=r.$implicit;Ht("place",i)}}function wU(t,r){t&1&&su(0)}function xU(t,r){if(t&1){let i=ai();ft(0,"button",7),gn("click",function(){Br(i);let u=cn(3);return Vr(u.previousPage())}),jt(1,"fa-icon",8),gt()}if(t&2){let i=cn(3);mt(),Ht("icon",i.faChevronLeft)}}function CU(t,r){if(t&1&&pr(0,xU,2,1,"button",6),t&2){let i=cn().$implicit,l=cn();mr(i<l.currentPageIndex()?0:-1)}}function SU(t,r){t&1&&(ft(0,"button",9),xn(1,"..."),gt())}function IU(t,r){if(t&1){let i=ai();ft(0,"button",11),gn("click",function(){Br(i);let u=cn(3);return Vr(u.nextPage())}),jt(1,"fa-icon",8),gt()}if(t&2){let i=cn(3);mt(),Ht("icon",i.faChevronRight)}}function EU(t,r){if(t&1&&(pr(0,SU,2,0,"button",9),pr(1,IU,2,1,"button",10)),t&2){let i=cn().$implicit,l=cn();mr(i<l.totalPages()?0:-1),mt(),mr(i>l.currentPageIndex()?1:-1)}}function DU(t,r){if(t&1){let i=ai();pr(0,CU,1,1),ft(1,"button",5),gn("click",function(){let u=Br(i).$implicit,o=cn();return Vr(o.currentPageIndex.set(u))}),xn(2),gt(),pr(3,EU,2,2)}if(t&2){let i=r.$implicit,l=r.$index,u=r.$count,o=cn();mr(l===0?0:-1),mt(),li("active",o.currentPageIndex()===i),mt(),Vo(" ",i," "),mt(),mr(l===u-1?3:-1)}}var Lp=class t{stateService=je(Ui);iconLibrary=je(gr);cardContainer=cM("cardContainer");faChevronLeft=this.iconLibrary.getIconDefinition("fas","chevron-left");faChevronRight=this.iconLibrary.getIconDefinition("fas","chevron-right");places=kr.required();itemsPerPage=An(()=>this.calculateItemsPerPage(this.showMap(),this.cardContainer()));currentPageIndex=Jn(1);totalPages=An(()=>Math.ceil(this.places().length/this.itemsPerPage()));pages=An(()=>{let r=this.totalPages();switch(r){case 0:return[];case 1:return[1];case 2:return[1,2];default:{let l=this.currentPageIndex()-1;return l<1&&(l=1),l+2>r&&(l=r-2),Array.from({length:3},(u,o)=>o+l)}}});currentPagePlaces=An(()=>{let r=this.places(),i=this.itemsPerPage(),l=this.currentPageIndex();return r.slice((l-1)*i,l*i)});showMap=An(()=>this.stateService.activeView()==="map");constructor(){_r(()=>{this.places(),this.currentPageIndex.set(1)})}calculateItemsPerPage(r,i){if(r)return 4;if(i){let l=globalThis.getComputedStyle(i.nativeElement),u=Number.parseInt(l.getPropertyValue("--card-width")||"0"),o=Number.parseInt(l.getPropertyValue("--card-gap")||"0"),b=u+o,M=i.nativeElement.clientWidth;return Math.floor((M+o)/b)*2||10}return 10}nextPage(){let r=this.currentPageIndex(),i=this.totalPages();r<i&&this.currentPageIndex.set(r+1)}previousPage(){let r=this.currentPageIndex();r>1&&this.currentPageIndex.set(r-1)}static \u0275fac=function(i){return new(i||t)};static \u0275cmp=In({type:t,selectors:[["app-paginator"]],viewQuery:function(i,l){i&1&&hw(l.cardContainer,vU,5),i&2&&fw()},inputs:{places:[1,"places"]},ngContentSelectors:_U,decls:9,vars:5,consts:[["cardContainer",""],[1,"paginator"],[1,"paginator-places"],[3,"place"],[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(i,l){i&1&&(ou(),ft(0,"div",1)(1,"div",2,0),jo(3,bU,1,1,"app-location-card",3,Qa,!1,wU,1,0),gt(),ft(6,"div",4),jo(7,DU,4,5,null,null,kh),gt()()),i&2&&(li("with-map",l.showMap()),mt(),li("with-map",l.showMap()),mt(2),Bo(l.currentPagePlaces()),mt(4),Bo(l.pages()))},dependencies:[a0,Fr],styles:['.paginator[_ngcontent-%COMP%]{display:flex;flex-direction:column;align-items:center;justify-content:space-between;gap:36px}.paginator.with-map[_ngcontent-%COMP%]{height:730px}@container mapvx-container (width <= 1024px){.paginator.with-map[_ngcontent-%COMP%]{height:unset}}.paginator-places[_ngcontent-%COMP%]{--card-width: 237;--card-gap: 13;display:grid;grid-template-columns:repeat(auto-fill,minmax(237px,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;grid-template-columns:repeat(auto-fill,minmax(170px,1fr))}}.paginator-places.with-map[_ngcontent-%COMP%]{gap:16px 8px;flex-shrink:0}@container mapvx-container (width <= 1024px){.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}'],changeDetection:0})};var l0=class t{onDestroy=new Wr;iconLibrary=je(gr);mapService=je(So);logger=je(ar);loadedDataService=je(Xo);faCenter=this.iconLibrary.getIconDefinition("fak","center");ngOnDestroy(){this.onDestroy.next(),this.onDestroy.complete()}onClick(){let r=this.mapService.rotation.getValue();this.loadedDataService.getConfiguration().pipe(Gs(1),ca(this.onDestroy)).subscribe({next:i=>{this.mapService.updateCamera({center:i.initialCenter,zoom:i.initialZoom,pitch:i.initialPitch??0,bearing:r})},error:i=>{this.logger.logWarning("Error centering map",i)}})}static \u0275fac=function(i){return new(i||t)};static \u0275cmp=In({type:t,selectors:[["app-center-map-button"]],decls:2,vars:1,consts:[[1,"button",3,"click"],[3,"icon"]],template:function(i,l){i&1&&(ft(0,"button",0),gn("click",function(){return l.onClick()}),jt(1,"fa-icon",1),gt()),i&2&&(mt(),Ht("icon",l.faCenter))},dependencies:[Fr],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)}"],changeDetection:0})};var TU=t=>({rotate:t}),c0=class t{mapService=je(So);iconLibrary=je(gr);rotation=ys(this.mapService.rotation.asObservable().pipe(Zn(r=>360-r)),{initialValue:0});faCompass=this.iconLibrary.getIconDefinition("fak","compass");static \u0275fac=function(i){return new(i||t)};static \u0275cmp=In({type:t,selectors:[["app-compass-button"]],decls:2,vars:4,consts:[[1,"button"],[3,"icon","transform"]],template:function(i,l){i&1&&(ft(0,"button",0),jt(1,"fa-icon",1),gt()),i&2&&(mt(),Ht("icon",l.faCompass)("transform",mw(2,TU,l.rotation())))},dependencies:[Fr],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)}"],changeDetection:0})};var Np=class t{sdkService=je(ua);logger=je(ar);currentlyWatchingLocation=Jn(!1);hasBearingPermission=!1;watchId;async checkLocationPermission(){return"permissions"in navigator?navigator.permissions.query({name:"geolocation"}).then(async r=>r.state).catch(r=>(this.logger.logWarning(r),"denied")):(this.logger.log("Permissions API not supported"),"denied")}async requestLocationPermission(){return new Promise(r=>{navigator.geolocation.getCurrentPosition(()=>{console.log("requestLocationPermission granted"),r("granted")},i=>{console.log("requestLocationPermission denied",i),i.code===3?r("prompt"):r("denied")},{enableHighAccuracy:!0,timeout:5e3})})}async getCurrentLocation(){return new Promise((r,i)=>{navigator.geolocation.getCurrentPosition(l=>{r(l_(l))},l=>{i(new Error("Error getting current location",{cause:l}))},{enableHighAccuracy:!0})})}checkBearingLocation(){typeof DeviceOrientationEvent<"u"&&"requestPermission"in DeviceOrientationEvent&&DeviceOrientationEvent.requestPermission().then(i=>{this.hasBearingPermission=i==="granted"}).catch(i=>{this.logger.logWarning(i),this.hasBearingPermission=!1}),this.hasBearingPermission=!0}startWatching(){this.checkBearingLocation(),console.log("startWatching"),console.log("hasBearingPermission",this.hasBearingPermission),this.currentlyWatchingLocation.set(!0),this.watchId&&this.sdkService.stopWatchingUserLocation(this.watchId),this.watchId=this.sdkService.watchUserLocation(r=>{console.log("position",r)},r=>{this.logger.logWarning("Error watching user location",r)}),this.hasBearingPermission&&this.sdkService.watchUserHeading(r=>{console.log("bearing",r)},r=>{this.logger.logWarning("Error watching user bearing",r)})}stopWatching(){console.log("stopWatching"),this.currentlyWatchingLocation.set(!1)}static \u0275fac=function(i){return new(i||t)};static \u0275prov=Zt({token:t,factory:t.\u0275fac,providedIn:"root"})};var u0=class t{iconLibrary=je(gr);locationService=je(Np);logger=je(ar);locationPermission=Jn("prompt");active=An(()=>this.locationService.currentlyWatchingLocation());faLocation=this.iconLibrary.getIconDefinition("fas","location-arrow");constructor(){this.checkLocationPermission(),_r(()=>{this.active()})}checkLocationPermission(){this.locationService.checkLocationPermission().then(r=>{this.locationPermission.set(r),r==="granted"&&this.active()&&this.locationService.startWatching()}).catch(r=>{this.logger.logWarning("Error checking location permission",r),this.locationPermission.set("denied")})}async onClick(){if(this.active())this.locationService.stopWatching();else switch(this.locationPermission()){case"granted":this.locationService.startWatching();break;case"prompt":await this.requestPermissions();break;case"denied":break}}async requestPermissions(){await this.locationService.requestLocationPermission()==="granted"?(this.locationPermission.set("granted"),this.locationService.startWatching()):this.locationPermission.set("denied")}static \u0275fac=function(i){return new(i||t)};static \u0275cmp=In({type:t,selectors:[["app-location-button"]],decls:2,vars:3,consts:[[1,"button",3,"click"],[3,"icon"]],template:function(i,l){i&1&&(ft(0,"button",0),gn("click",function(){return l.onClick()}),jt(1,"fa-icon",1),gt()),i&2&&(li("active",l.active()),mt(),Ht("icon",l.faLocation))},dependencies:[Fr],styles:["[_nghost-%COMP%]{display:none}.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}"],changeDetection:0})};var d0=class t{mapService=je(So);iconLibrary=je(gr);faPlus=this.iconLibrary.getIconDefinition("fas","plus");faMinus=this.iconLibrary.getIconDefinition("fas","minus");onZoomIn(){this.mapService.updateZoomLevelOn(1)}onZoomOut(){this.mapService.updateZoomLevelOn(-1)}static \u0275fac=function(i){return new(i||t)};static \u0275cmp=In({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(i,l){i&1&&(ft(0,"div",0)(1,"button",1),gn("click",function(){return l.onZoomIn()}),jt(2,"fa-icon",2),gt(),ft(3,"button",3),gn("click",function(){return l.onZoomOut()}),jt(4,"fa-icon",2),gt()()),i&2&&(mt(2),Ht("icon",l.faPlus),mt(2),Ht("icon",l.faMinus))},dependencies:[Fr],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)}"],changeDetection:0})};var h0=class t{static \u0275fac=function(i){return new(i||t)};static \u0275cmp=In({type:t,selectors:[["app-buttons-container"]],decls:5,vars:0,consts:[[1,"buttons-container-wrapper"]],template:function(i,l){i&1&&(ft(0,"div",0),jt(1,"app-location-button")(2,"app-compass-button")(3,"app-center-map-button")(4,"app-zoom-buttons"),gt())},dependencies:[c0,l0,d0,u0],styles:[".buttons-container-wrapper[_ngcontent-%COMP%]{display:flex;flex-direction:column;align-items:center;gap:20px}"],changeDetection:0})};var MU=["map"],PU=["*"],Dd=class t{mapRef;logger=je(ar);mapService=je(So);markerService=je(da);routingService=je(gc);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(i){return new(i||t)};static \u0275cmp=In({type:t,selectors:[["app-map"]],viewQuery:function(i,l){if(i&1&&Rh(MU,5),i&2){let u;Oh(u=Lh())&&(l.mapRef=u.first)}},ngContentSelectors:PU,decls:5,vars:0,consts:[["map",""],[1,"map-wrapper"],["id","map"],[1,"buttons-container"]],template:function(i,l){i&1&&(ou(),ft(0,"div",1),jt(1,"div",2,0)(3,"app-buttons-container",3),su(4),gt())},dependencies:[h0],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}"],changeDetection:0})};var AU=["*"];function kU(t,r){t&1&&(ft(0,"div",2),jt(1,"app-map"),gt())}var Fp=class t{stateService=je(Ui);showMap=An(()=>this.stateService.activeView()==="map");static \u0275fac=function(i){return new(i||t)};static \u0275cmp=In({type:t,selectors:[["app-view-container"]],ngContentSelectors:AU,decls:4,vars:3,consts:[[1,"view-container"],[1,"view-content"],[1,"map-container"]],template:function(i,l){i&1&&(ou(),ft(0,"div",0)(1,"div",1),su(2),gt(),pr(3,kU,2,0,"div",2),gt()),i&2&&(mt(),li("with-map",l.showMap()),mt(2),mr(l.showMap()?3:-1))},dependencies:[Dd],styles:[".view-container[_ngcontent-%COMP%]{display:flex;align-items:flex-start;gap:8px}@container mapvx-container (width <= 1024px){.view-container[_ngcontent-%COMP%]{flex-direction:column-reverse}}@container mapvx-container (width <= 640px){.view-container[_ngcontent-%COMP%]{flex-direction:column-reverse}}.view-content[_ngcontent-%COMP%]{width:100%}.view-content.with-map[_ngcontent-%COMP%]{width:482px;flex-shrink:0}@container mapvx-container (width <= 1024px){.view-content.with-map[_ngcontent-%COMP%]{width:100%}}.map-container[_ngcontent-%COMP%]{width:100%;height:730px}@container mapvx-container (width <= 1024px){.map-container[_ngcontent-%COMP%]{width:100%}}@container mapvx-container (width <= 640px){.map-container[_ngcontent-%COMP%]{width:100%;height:400px}}"],changeDetection:0})};var RU=["categoryFilters"],OU=(t,r)=>r.name;function LU(t,r){if(t&1){let i=ai();ft(0,"button",11),gn("click",function(){let u=Br(i).$implicit,o=cn(2);return Vr(o.selectedFilter.set(u.name))}),xn(1),gt()}if(t&2){let i=r.$implicit,l=cn(2);li("active",l.selectedFilter()===i.name),mt(),Vo(" ",i.name," ")}}function NU(t,r){if(t&1&&(ft(0,"div",2)(1,"div",5,0)(3,"div",6),jo(4,LU,2,3,"button",7,OU),gt(),ft(6,"div",8),jt(7,"div",9)(8,"div",10),gt()()()),t&2){let i=cn();mt(4),Bo(i.categoryFiltersData()),mt(4),Jv("left",i.indicatorPosition(),"px")}}var f0=class t{logger=je(ar);stateService=je(Ui);loadedDataService=je(Xo);markerService=je(da);categoryFilters;activeView=An(()=>this.stateService.activeView());loadedPlaces=ys(this.loadedDataService.getAvailablePlaces(),{initialValue:[]});categoryFiltersData=ys(this.loadedDataService.getInstitution().pipe(Zn(r=>{let i=r.properties;if(i){let l=i.filter(u=>"childPlaces"in u&&u.childPlaces!==void 0).map(u=>({placeData:"childPlaces"in u?u.childPlaces:[],name:u.title}));return l.splice(1,0,{name:"All",placeData:[]}),l}return[]})),{initialValue:[]});places=Js(()=>this.loadedPlaces());selectedFilter=Js(()=>this.categoryFiltersData()[0]?.name);selectedCity=An(()=>this.stateService.selectedCity());showCategoryFilters=An(()=>this.stateService.showCategoryFilters());showCityFilter=An(()=>this.stateService.showCityFilter());indicatorPosition=An(()=>this.getIndicatorPosition(this.selectedFilter(),this.categoryFiltersData()));constructor(){_r(()=>{let r=this.categoryFiltersData();this.logger.log("====> loadedCategoryFiltersData",r)}),_r(()=>{if(this.activeView()==="map"){let r=this.places();this.logger.log("====> addMarkers ",r),this.markerService.addMarkers(r)}}),_r(()=>{let r=this.loadedPlaces(),i=this.showCategoryFilters(),l=r;if(i){let o=this.selectedFilter(),b=this.categoryFiltersData();if(o!=="All"){let M=b.find(P=>P.name===o)?.placeData||[];l=r.filter(P=>M.includes(P.lazarilloId))}}if(this.showCityFilter()){let o=this.selectedCity();o!=="All cities"&&(l=l.filter(b=>b.address?.includes(o)))}this.logger.log("====> filteredPlaces",l),this.places.set(l)}),_r(()=>{let r=this.places();this.stateService.lastListedPlaces.set(r)})}getIndicatorPosition(r,i){if(!this.categoryFilters?.nativeElement)return 0;let l=this.categoryFilters.nativeElement.querySelectorAll(".category-btn");if(l.length===0)return 0;let u=i.findIndex(X=>X.name===r);if(u===-1||u>=l.length)return 0;let o=l[u];if(!o)return 0;let b=this.categoryFilters.nativeElement.getBoundingClientRect(),M=o.getBoundingClientRect(),P=M.width,Z=M.left-b.left,q=80,N=Z+P/2-q/2;return Math.min(Math.max(0,N),b.width-q)}static \u0275fac=function(i){return new(i||t)};static \u0275cmp=In({type:t,selectors:[["app-list-view"]],viewQuery:function(i,l){if(i&1&&Rh(RU,5),i&2){let u;Oh(u=Lh())&&(l.categoryFilters=u.first)}},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(i,l){i&1&&(ft(0,"div",1),pr(1,NU,9,2,"div",2),ft(2,"app-view-container")(3,"div",3),jt(4,"app-paginator",4),gt()()()),i&2&&(mt(),mr(l.showCategoryFilters()?1:-1),mt(3),Ht("places",l.places()))},dependencies:[Fp,Lp],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%}"],changeDetection:0})};var FU=()=>({rotate:42}),p0=class t{iconLibrary=je(gr);faCircleNotch=this.iconLibrary.getIconDefinition("fas","circle-notch");static \u0275fac=function(i){return new(i||t)};static \u0275cmp=In({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(i,l){i&1&&(ft(0,"div",0)(1,"div",1),jt(2,"fa-icon",2),gt(),ft(3,"div",3),jt(4,"div",4)(5,"div",5)(6,"div",6),gt()()),i&2&&(mt(2),Ht("icon",l.faCircleNotch)("transform",au(2,FU)))},dependencies:[Fr],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)}"]})};var zU=()=>[1,2,3,4,5,6,7,8,9,10];function jU(t,r){t&1&&jt(0,"app-loading-location-card")}var m0=class t{homeStateService=je(Ui);showMap=An(()=>this.homeStateService.activeView()==="map");static \u0275fac=function(i){return new(i||t)};static \u0275cmp=In({type:t,selectors:[["app-loading-card-list"]],decls:3,vars:3,consts:[[1,"loading-container"]],template:function(i,l){i&1&&(ft(0,"div",0),jo(1,jU,1,0,"app-loading-location-card",null,kh),gt()),i&2&&(li("with-map",l.showMap()),mt(),Bo(au(2,zU)))},dependencies:[p0],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}"]})};function BU(t,r){t&1&&(ft(0,"p"),xn(1,"Looking for your results..."),gt())}function VU(t,r){if(t&1&&(ft(0,"p"),xn(1),gt()),t&2){let i=cn(3);mt(),Vo('Showing 1 result for "',i.searchTerm(),'"')}}function UU(t,r){if(t&1&&(ft(0,"p"),xn(1),gt()),t&2){let i=cn(3);mt(),Qv("Showing ",i.places().length,' results for "',i.searchTerm(),'"')}}function $U(t,r){if(t&1&&pr(0,VU,2,1,"p")(1,UU,2,2,"p"),t&2){let i=cn(2);mr(i.places().length===1?0:1)}}function HU(t,r){if(t&1&&(ft(0,"p"),xn(1),gt()),t&2){let i=cn(2);mt(),Vo('No results found for "',i.searchTerm(),'"')}}function GU(t,r){if(t&1&&pr(0,$U,2,1)(1,HU,2,1,"p"),t&2){let i=cn();mr(i.places().length>0?0:1)}}function WU(t,r){t&1&&jt(0,"app-loading-card-list")}function qU(t,r){if(t&1&&(ft(0,"div",6)(1,"app-paginator",7)(2,"div",8),jt(3,"fa-icon",4),ft(4,"h2"),xn(5,"No results found"),gt(),ft(6,"div",9)(7,"p"),xn(8,"Sorry, we can\u2019t find any places that match your search. Please try again."),gt()()()()()),t&2){let i=cn();mt(),Ht("places",i.places()),mt(2),Ht("icon",i.faBuildingMagnifyingGlass)}}var g0=class t{logger=je(ar);loadedDataService=je(Xo);sdkService=je(ua);stateService=je(Ui);navigatorService=je(Uo);markerService=je(da);iconLibrary=je(gr);searching=Jn(!0);inputValue$=HA(this.stateService.inputValue).pipe(k1(500),Zn(r=>r.trim()),Xi(r=>r!==""),R1(),Bi(()=>this.searching.set(!0)));searchTerm=ys(this.inputValue$,{initialValue:""});places=ys(lc([this.loadedDataService.getInstitutionId(),this.inputValue$]).pipe(Bi(()=>this.searching.set(!0)),ao(([r,i])=>(this.logger.log("====> searchTerm",i),this.logger.log("====> institutionId",r),gi(this.sdkService.searchPlaces(i,r)))),Bi(()=>this.searching.set(!1))),{initialValue:[]});faArrowLeft=this.iconLibrary.getIconDefinition("fas","arrow-left");faBuildingMagnifyingGlass=this.iconLibrary.getIconDefinition("fas","building-magnifying-glass");constructor(){_r(()=>{let r=this.places();this.markerService.addMarkers(r)}),_r(()=>{let r=this.places();this.stateService.lastListedPlaces.set(r)}),_r(()=>{let r=this.searching();this.logger.log("====> searching",r)})}ngOnDestroy(){this.stateService.inputValue.set("")}onBackClick(){this.navigatorService.navigateToHome()}static \u0275fac=function(i){return new(i||t)};static \u0275cmp=In({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"],[1,"no-results"],[1,"no-results-description"]],template:function(i,l){i&1&&(ft(0,"div",0)(1,"div",1)(2,"div",2)(3,"button",3),gn("click",function(){return l.onBackClick()}),jt(4,"fa-icon",4),ft(5,"span"),xn(6,"Back"),gt()()(),ft(7,"div",5),pr(8,BU,2,0,"p")(9,GU,2,1),gt()(),ft(10,"app-view-container"),pr(11,WU,1,0,"app-loading-card-list")(12,qU,9,2,"div",6),gt()()),i&2&&(mt(4),Ht("icon",l.faArrowLeft),mt(4),mr(l.searching()?8:9),mt(3),mr(l.searching()?11:12))},dependencies:[Fp,Lp,D_,Fr,m0],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}'],changeDetection:0})};function y0(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 _0(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 ZU(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 v0(t){let[r,i]=t.split(":"),l=parseInt(r)%24,u=parseInt(i),o;return l<12?(o="AM",l===0&&(l=12)):(o="PM",l!==12&&(l-=12)),`${l}:${u<10?"0":""}${u}&nbsp;${o}`}function qA(t){let r=v0(t.open),i=v0(t.close);return`${r}&nbsp;-&nbsp;${i}`}function YU(t){let r=v0(t.open),i=v0(t.close);return`${r}&nbsp;to&nbsp;${i}`}function KU(t){let r=new Date,i=new Date(r);ZA(i);let l=_0(i),u=t[l];if(u&&u.length>0){for(let o of u)if(GA(o.open)&&GA(o.close)){let b=WA(o.open,i),M=WA(o.close,i);if(b>M&&XU(M),r>=b&&r<=M)return!0}}return!1}function ZA(t){let r=t.getDate();t.setDate(r-1)}function XU(t){let r=t.getDate();t.setDate(r+1)}function JU(t){let i=_0(new Date),l=t[i];return l&&l.length>0}function GA(t){return/^([0-9]|0[0-9]|1[0-9]|2[0-4]):[0-5][0-9]$/.test(t)}function WA(t,r){let[i,l]=t.split(":").map(Number),u=r?new Date(r):new Date;return new Date(u.getFullYear(),u.getMonth(),u.getDate(),i,l,0,0)}function QU(t){return t.sort((r,i)=>r.open.localeCompare(i.open))}function e$(t){let i=_0(new Date),l=t[i];return l&&l.length>0?YA(l):""}function t$(t){let r=new Date;ZA(r);let i=_0(r),l=t[i];return l&&l.length>0?YA(l):""}function n$(t){let r=r$(t);return`Open on ${y0(r)}`}function YA(t){return t.length===1?qA(t[0]):(QU(t),t.map(YU).join(" - "))}function r$(t){let i=new Date().getDay();for(let l=0;l<7;l++){let u=(i+l)%7,o=ZU(u),b=t[o];if(b&&b.length>0)return o}return"mo"}function KA(t){return KU(t)?t$(t):JU(t)?e$(t):n$(t)}function XA(t){let r=["mo","tu","we","th","fr","sa","su"],i=M=>{let P=t[M];return!P||P.length===0?["Closed"]:P.map(Z=>qA(Z))},l=(M,P)=>M.length!==P.length?!1:M.every((Z,q)=>Z===P[q]),u=(M,P)=>M===P?y0(M):`${y0(M)} - ${y0(P)}`,o=[],b=0;for(;b<r.length;){let M=r[b],P=i(M),Z=b+1;for(;Z<r.length&&l(P,i(r[Z]));)Z++;let q=u(M,r[Z-1]);o.push({day:q,schedule:P}),b=Z}if(o.length>1){let M=o[0],P=o[o.length-1];if(l(M.schedule,P.schedule)){let Z=M.day.split(" - "),N=P.day.split(" - ")[0],X=Z.length>1?Z[1]:Z[0],K=`${N} - ${X}`;o[0]={day:K,schedule:M.schedule},o.pop()}}return o}function i$(t,r){if(t&1&&jt(0,"div",9),t&2){let i=r.$implicit;Ht("innerHTML",i,yd)}}function o$(t,r){if(t&1&&(ft(0,"div",6)(1,"div",7),xn(2),gt(),ft(3,"div",8),jo(4,i$,1,1,"div",9,Qa),gt()()),t&2){let i=r.$implicit;mt(2),gs(i.day),mt(2),Bo(i.schedule)}}var b0=class t{iconLibrary=je(gr);schedules=kr.required({transform:r=>r?XA(r):[]});closeClicked=ka();faClockThree=this.iconLibrary.getIconDefinition("fas","clock-three");faXmark=this.iconLibrary.getIconDefinition("fas","xmark");hideModal(){this.closeClicked.emit()}static \u0275fac=function(i){return new(i||t)};static \u0275cmp=In({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(i,l){i&1&&(ft(0,"div",0)(1,"div",1)(2,"div",2),jt(3,"fa-icon",3),ft(4,"h2"),xn(5,"Other Schedules"),gt()(),ft(6,"button",4),gn("click",function(){return l.hideModal()}),jt(7,"fa-icon",3),gt()(),ft(8,"div",5),jo(9,o$,6,1,"div",6,Qa),gt()()),i&2&&(mt(3),Ht("icon",l.faClockThree),mt(4),Ht("icon",l.faXmark),mt(2),Bo(l.schedules()))},dependencies:[Fr],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}}"]})};var s$=()=>({rotate:42});function a$(t,r){if(t&1&&jt(0,"fa-icon",3),t&2){let i=cn();Ht("icon",i.faCircleNotch)("transform",au(2,s$))}}function l$(t,r){if(t&1){let i=ai();ft(0,"div",10),jt(1,"fa-icon",9),ft(2,"div",24)(3,"button",25),gn("click",function(){Br(i);let u=cn();return Vr(u.showOtherSchedulesModal())}),gt(),ft(4,"div",26),xn(5,"*Hours may vary"),gt()()()}if(t&2){let i=cn();mt(),Ht("icon",i.faClockThree),mt(2),Ht("innerHTML",i.schedule(),yd)}}function c$(t,r){if(t&1){let i=ai();ft(0,"div",11)(1,"app-other-schedules",27),gn("closeClicked",function(){Br(i);let u=cn();return Vr(u.hideOtherSchedulesModal())}),gt()()}if(t&2){let i=cn();mt(),Ht("schedules",i.place().openingHours)}}function u$(t,r){if(t&1&&jt(0,"div",31),t&2){let i=r.$implicit;Ht("innerHTML",i,yd)}}function d$(t,r){if(t&1&&(ft(0,"div",12)(1,"div",28),jt(2,"fa-icon",9),ft(3,"div",29),xn(4,"Deals + Events"),gt()(),ft(5,"div",30),jo(6,u$,1,1,"div",31,Qa),gt()()),t&2){let i=cn();mt(2),Ht("icon",i.faBadgeDollar),mt(4),Bo(i.banners())}}function h$(t,r){if(t&1&&(ft(0,"div",21),xn(1),gt()),t&2){let i=cn();mt(),Vo(" ",i.address()," ")}}function f$(t,r){if(t&1&&(ft(0,"div",22),xn(1),gt()),t&2){let i=r.$implicit;mt(),Vo(" ",i," ")}}function p$(t,r){if(t&1&&(ft(0,"div",23)(1,"a",18),xn(2),gt()()),t&2){let i=r.$implicit;mt(),Ht("href",i.url,Mh),mt(),gs(i.title)}}var w0=class t{iconLibrary=je(gr);sanitizer=je(yg);logger=je(ar);navigatorService=je(Uo);place=kr.required();hideDeals=kr(!1);imageSrc=An(()=>this.place().images[0]||o0);isImageLoading=Jn(!0);schedule=An(()=>{let r=this.place().openingHours;return r?KA(r):""});banners=An(()=>this.place().banners.filter(s0).filter(r=>r.description!==void 0).map(r=>this.sanitizer.bypassSecurityTrustHtml(r.description||"")));address=An(()=>this.place().address||"");phones=An(()=>this.place().properties?.filter(r=>r.type==="phone").map(r=>this.formatPhoneNumber(r.subtitle))||[]);websites=An(()=>this.place().properties?.filter(r=>r.type==="url").map(this.prepareUrl)||[]);drivingDirectionsUrl=An(()=>{let r=this.place();return`https://waze.com/ul?ll=${r.position.lat},${r.position.lng}&navigate=yes`});otherSchedulesModal=Jn(!1);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=An(()=>{let[r,i]=e0(this.place().localizedCategory||"");return this.iconLibrary.getIconDefinition(r,i)});constructor(){_r(()=>{this.imageSrc()&&this.startImageLoading()})}prepareUrl(r){return hr($t({},r),{url:r.url?.startsWith("http")?r.url:`https://${r.url}`})}startImageLoading(){this.isImageLoading.set(!0)}endImageLoading(){this.isImageLoading.set(!1)}showOtherSchedulesModal(){this.otherSchedulesModal.set(!0)}hideOtherSchedulesModal(){this.otherSchedulesModal.set(!1)}formatPhoneNumber(r){let i=r.replace(/^\+1/,"");return i=i.replace(/\D/g,""),i.length<10?(this.logger.logWarning(`Phone number '${i}' is to short for format`),i):`${i.slice(0,3)}.${i.slice(3,6)}.${i.slice(6)}`}navigateToRoute(){this.navigatorService.navigateToRoute(this.place().lazarilloId)}static \u0275fac=function(i){return new(i||t)};static \u0275cmp=In({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,"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"]],template:function(i,l){i&1&&(ft(0,"div",0)(1,"div",1)(2,"img",2),gn("load",function(){return l.endImageLoading()})("error",function(){return l.endImageLoading()}),gt(),pr(3,a$,1,3,"fa-icon",3),gt(),ft(4,"div",4)(5,"div",5)(6,"h1",6),xn(7),gt(),ft(8,"div",7)(9,"div",8),jt(10,"fa-icon",9),ft(11,"span"),xn(12),gt()(),pr(13,l$,6,2,"div",10),pr(14,c$,2,1,"div",11),gt(),pr(15,d$,8,1,"div",12),ft(16,"div",13),xn(17),gt()(),ft(18,"div",14)(19,"div",15)(20,"button",16),gn("click",function(){return l.navigateToRoute()}),jt(21,"fa-icon",9),ft(22,"span"),xn(23,"Pedestrian-friendly directions"),gt()()(),ft(24,"div",17)(25,"a",18),xn(26,"Driving directions"),gt()()(),ft(27,"div",19),jt(28,"div",20),pr(29,h$,2,1,"div",21),jo(30,f$,2,1,"div",22,Qa),jo(32,p$,3,2,"div",23,Qa),gt()()()),i&2&&(mt(),li("loading",l.isImageLoading()),mt(),Ht("src",l.imageSrc(),Mh)("alt",l.place().title),mt(),mr(l.isImageLoading()?3:-1),mt(4),gs(l.place().title),mt(3),Ht("icon",l.iconCategory()),mt(2),gs(l.place().localizedCategory),mt(),mr(l.schedule()!==""?13:-1),mt(),mr(l.otherSchedulesModal()?14:-1),mt(),mr(l.banners().length>0&&!l.hideDeals()?15:-1),mt(2),Vo(" ",l.place().description," "),mt(4),Ht("icon",l.faArrowTopRight),mt(4),Ht("href",l.drivingDirectionsUrl(),Mh),mt(4),mr(l.address()!==""?29:-1),mt(),Bo(l.phones()),mt(2),Bo(l.websites()))},dependencies:[Fr,b0],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}.schedule[_ngcontent-%COMP%] .schedule-time[_ngcontent-%COMP%] .schedule-warning[_ngcontent-%COMP%]{position:absolute;top:20px;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%]{color:var(--definitions-colors-secondary-orange);padding:5px;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}']})};var zp=class t{iconLibraryService=je(gr);buttonClick=ka();faArrowLeft=this.iconLibraryService.getIconDefinition("fas","arrow-left");onBackClick(r){this.buttonClick.emit(r)}static \u0275fac=function(i){return new(i||t)};static \u0275cmp=In({type:t,selectors:[["app-back-button"]],outputs:{buttonClick:"buttonClick"},decls:4,vars:1,consts:[[1,"back-btn",3,"click"],[3,"icon"]],template:function(i,l){i&1&&(ft(0,"button",0),gn("click",function(o){return l.onBackClick(o)}),jt(1,"fa-icon",1),ft(2,"span"),xn(3,"Back"),gt()()),i&2&&(mt(),Ht("icon",l.faArrowLeft))},dependencies:[Fr],styles:['.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}']})};function m$(t,r){if(t&1&&jt(0,"app-profile-view",5),t&2){let i=cn(),l=lg(5);Ht("place",l)("hideDeals",i.hideDeals())}}var x0=class t{onDestroy=new Wr;route=je(el);logger=je(ar);loadedDataService=je(Xo);sdkService=je(ua);mapService=je(So);markerService=je(da);navigatorService=je(Uo);homeStateService=je(Ui);iconLibraryService=je(gr);_profileId="";place=Jn(null);mapReady=ys(this.mapService.mapReady,{requireSync:!0});hideDeals=An(()=>this.homeStateService.hideDeals());faArrowLeft=this.iconLibraryService.getIconDefinition("fas","arrow-left");constructor(){_r(()=>{let r=this.place();if(r&&this.mapReady()){if(!this.markerService.hasMarker(r.lazarilloId)){let l=Nl(this.homeStateService.lastListedPlaces);l.length>0?this.markerService.addMarkers(l):this.markerService.addMarker(r)}this.markerService.selectMarker(r.lazarilloId),setTimeout(()=>{this.mapService.updateCamera({center:r.position})},100)}})}ngOnInit(){let r=this.route.paramMap.pipe(Zn(i=>i.get("id")),Xi(i=>i!==null),Xi(i=>i!==this._profileId),F1(1));lc([r,this.loadedDataService.getAvailablePlaces()]).pipe(ca(this.onDestroy),ao(([i,l])=>{let u=l.find(o=>o.lazarilloId===i);return u?qn(u):gi(this.sdkService.getPlaceDetail(i))})).subscribe({next:i=>{this._profileId!==i.lazarilloId&&this.cleanOldProfile(),this._profileId=i.lazarilloId,this.place.set(i)},error:i=>{this.logger.log("Error getting profile id",i)},complete:()=>{this.logger.log("Profile id complete")}})}ngOnDestroy(){this.cleanOldProfile(),this.onDestroy.next(),this.onDestroy.complete()}cleanOldProfile(){this._profileId!==""&&this.markerService.deselectMarker(this._profileId)}returnToHome(){this.navigatorService.navigateToHome()}static \u0275fac=function(i){return new(i||t)};static \u0275cmp=In({type:t,selectors:[["app-profile-screen"]],decls:9,vars:2,consts:[[1,"screen"],[1,"back-button"],[3,"buttonClick"],[1,"profile-screen-content"],[1,"profile-info"],[3,"place","hideDeals"],[1,"map"]],template:function(i,l){if(i&1){let u=ai();ft(0,"div",0)(1,"div",1)(2,"app-back-button",2),gn("buttonClick",function(){return Br(u),Vr(l.returnToHome())}),gt()(),ft(3,"div",3)(4,"div",4),gp(5),pr(6,m$,1,2,"app-profile-view",5),gt(),ft(7,"div",6),jt(8,"app-map"),gt()()()}if(i&2){mt(5);let u=ag(l.place());mt(),mr(u!==null?6:-1)}},dependencies:[Dd,zp,w0],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%;height:400px}}"],changeDetection:0})};var C0=class t{iconLibrary=je(gr);currentRoute=kr.required();startRouteClick=ka();faCircleSmall=this.iconLibrary.getIconDefinition("fas","circle-small");faArrowTopRight=this.iconLibrary.getIconDefinition("fak","arrow-top-right");time=An(()=>{let r=this.currentRoute();return this.toMinutes(r.duration)});distance=An(()=>{let r=this.currentRoute();return Math.ceil(r.length*3.28084)});toMinutes(r){return Math.ceil(r/60)}onStartRouteClick(){this.startRouteClick.emit()}static \u0275fac=function(i){return new(i||t)};static \u0275cmp=In({type:t,selectors:[["app-route-info"]],inputs:{currentRoute:[1,"currentRoute"]},outputs:{startRouteClick:"startRouteClick"},decls:17,vars:5,consts:[[1,"route-info"],[1,"route-info-item"],[1,"route-info-item-label"],[3,"icon"],[1,"route-info-item-value"],[1,"start-route-button",3,"click"]],template:function(i,l){i&1&&(ft(0,"div",0)(1,"div",1)(2,"span",2),xn(3,"Time"),gt(),jt(4,"fa-icon",3),ft(5,"span",4),xn(6),gt()(),ft(7,"div",1)(8,"span",2),xn(9,"Distance"),gt(),jt(10,"fa-icon",3),ft(11,"span",4),xn(12),gt()()(),ft(13,"button",5),gn("click",function(){return l.onStartRouteClick()}),jt(14,"fa-icon",3),ft(15,"span"),xn(16,"Start Route"),gt()()),i&2&&(mt(4),Ht("icon",l.faCircleSmall),mt(2),Vo("",l.time()," min"),mt(4),Ht("icon",l.faCircleSmall),mt(2),Vo("",l.distance()," ft"),mt(2),Ht("icon",l.faArrowTopRight))},dependencies:[Fr],styles:['[_nghost-%COMP%]{display:flex;flex-direction:column;gap:40px}.route-info[_ngcontent-%COMP%]{display:flex;justify-content:space-between;align-items:center;flex-wrap:wrap}.route-info-item[_ngcontent-%COMP%]{display:flex;align-items:center;gap:10px;color:var(--definitions-colors-text-black)}.start-route-button[_ngcontent-%COMP%]{display:flex;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}.start-route-button[_ngcontent-%COMP%]{display:none}']})};var g$={"[class.ng-untouched]":"isUntouched","[class.ng-touched]":"isTouched","[class.ng-pristine]":"isPristine","[class.ng-dirty]":"isDirty","[class.ng-valid]":"isValid","[class.ng-invalid]":"isInvalid","[class.ng-pending]":"isPending"},kfe=hr($t({},g$),{"[class.ng-submitted]":"isSubmitted"});var y$=new Rn("",{providedIn:"root",factory:()=>JA}),JA="always";var v$=(()=>{class t{static \u0275fac=function(l){return new(l||t)};static \u0275mod=pc({type:t});static \u0275inj=Sl({})}return t})();var QA=(()=>{class t{static withConfig(i){return{ngModule:t,providers:[{provide:y$,useValue:i.callSetDisabledState??JA}]}}static \u0275fac=function(l){return new(l||t)};static \u0275mod=pc({type:t});static \u0275inj=Sl({imports:[v$]})}return t})();function _$(t,r){if(t&1){let i=ai();ft(0,"button",5),gn("click",function(){Br(i);let u=cn();return Vr(u.clearSelectedPlace())}),jt(1,"fa-icon",6),gt()}if(t&2){let i=cn();mt(),Ht("icon",i.faXmark)}}function b$(t,r){if(t&1){let i=ai();ft(0,"button",10),gn("click",function(){Br(i);let u=cn(2);return Vr(u.useCurrentLocation())}),ft(1,"div",11),jt(2,"fa-icon",6),gt(),ft(3,"div",12)(4,"div",13),xn(5,"Use current location"),gt()()()}if(t&2){let i=cn(2);mt(2),Ht("icon",i.faLocationArrow)}}function w$(t,r){if(t&1){let i=ai();ft(0,"button",10),gn("click",function(){let u=Br(i).$implicit,o=cn(2);return Vr(o.selectPlace(u))}),ft(1,"div",11),jt(2,"fa-icon",6),gt(),ft(3,"div",12)(4,"div",13),xn(5),gt(),ft(6,"div",14),xn(7),gt()()()}if(t&2){let i=r.$implicit,l=cn(2);mt(2),Ht("icon",l.faLocationDot),mt(3),gs(i.title),mt(2),gs(i.address)}}function x$(t,r){t&1&&(ft(0,"div",9),xn(1,"No results found"),gt())}function C$(t,r){if(t&1&&(ft(0,"div",4)(1,"div",7),pr(2,b$,6,1,"button",8),jo(3,w$,8,3,"button",8,Qa),pr(5,x$,2,0,"div",9),gt()()),t&2){let i=cn();mt(2),mr(i.allowCurrentLocation()&&i.locationPermission()!=="denied"?2:-1),mt(),Bo(i.filteredPlaces()),mt(2),mr(i.filteredPlaces().length===0&&i.filterText().trim()?5:-1)}}var S0=class t{logger=je(ar);locationService=je(Np);iconLibrary=je(gr);places=kr.required();initialSelectedPlace=kr(null);allowCurrentLocation=kr(!1);placeholder=kr("Set a starting point");selectedPlace=Js(()=>this.initialSelectedPlace());selectedPlaceChange=ka();isDropdownOpen=Jn(!1);filterText=Js(()=>this.selectedPlace()?.title||"");filteredPlaces=An(()=>{let r=this.places(),i=this.filterText().toLowerCase().trim();return i?r.filter(l=>l.title?.toLowerCase().includes(i)||l.address?.toLowerCase().includes(i)):r});locationPermission=Jn("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(r=>{this.locationPermission.set(r)}).catch(r=>{this.logger.logWarning("Error checking location permission",r),this.locationPermission.set("denied")})}requestLocationPermission(){this.locationService.requestLocationPermission().then(r=>{this.locationPermission.set(r),r==="granted"&&this.getCurrentLocation()}).catch(r=>{this.logger.logWarning("Error requesting location permission",r),this.locationPermission.set("denied")})}getCurrentLocation(){this.locationService.getCurrentLocation().then(r=>{this.selectedPlace.set(r),this.selectedPlaceChange.emit(r)}).catch(r=>{this.logger.logWarning("Error getting current location",r)})}useCurrentLocation(){switch(this.locationPermission()){case"granted":this.getCurrentLocation();break;case"prompt":this.requestLocationPermission();break}}selectPlace(r){this.selectedPlace.set(r),this.isDropdownOpen.set(!1),this.selectedPlaceChange.emit(r)}clearSelectedPlace(){this.selectedPlace.set(null),this.filterText.set(""),this.selectedPlaceChange.emit(null)}onInputFocus(){this.isDropdownOpen.set(!0)}onInputBlur(){setTimeout(()=>{this.isDropdownOpen.set(!1)},150)}onInputChange(r){let i=r.target;this.filterText.set(i.value),this.isDropdownOpen.set(!0)}static \u0275fac=function(i){return new(i||t)};static \u0275cmp=In({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(i,l){i&1&&(ft(0,"div",0)(1,"div",1)(2,"input",2),gn("input",function(o){return l.onInputChange(o)})("focus",function(){return l.onInputFocus()})("blur",function(){return l.onInputBlur()}),gt(),pr(3,_$,2,1,"button",3),gt(),pr(4,C$,6,2,"div",4),gt()),i&2&&(mt(2),Ht("value",l.filterText())("placeholder",l.placeholder()),mt(),mr(l.selectedPlace()?3:-1),mt(),mr(l.isDropdownOpen()?4:-1))},dependencies:[vp,QA,Fr],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}}']})};var I0=class t{logger=je(ar);iconLibrary=je(gr);places=kr.required();initialDestination=kr(null);originPlace=Jn(null);destinationPlace=Js(()=>this.initialDestination());originSelected=ka();destinationSelected=ka();swapPlaces=ka();clearDestination=ka();locationPermission=Jn("prompt");faLocationDot=this.iconLibrary.getIconDefinition("fas","location-dot");faEllipsisVertical=this.iconLibrary.getIconDefinition("fas","ellipsis-vertical");faArrowsRetweet=this.iconLibrary.getIconDefinition("fas","arrows-retweet");canSwapPlaces=An(()=>Bw(this.originPlace())&&Bw(this.destinationPlace()));onOriginSelected(r){this.originSelected.emit(r),this.originPlace.set(r)}onDestinationSelected(r){if(jw(r)){this.logger.logWarning("Current location is not allowed as destination");return}this.destinationSelected.emit(r),this.destinationPlace.set(r)}onSwapPlaces(){let r=this.originPlace(),i=this.destinationPlace();if(jw(r)){this.logger.logWarning("Should not be possible to swap places with current location as origin");return}this.originPlace.set(i),this.originSelected.emit(i),this.destinationPlace.set(r),this.destinationSelected.emit(r)}static \u0275fac=function(i){return new(i||t)};static \u0275cmp=In({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(i,l){i&1&&(ft(0,"div",0)(1,"div",1)(2,"div",2)(3,"div",3),cv(),ft(4,"svg",4),jt(5,"rect",5)(6,"path",6)(7,"path",7),gt()(),uv(),ft(8,"app-place-selector",8),gn("selectedPlaceChange",function(o){return l.onOriginSelected(o)}),gt()()(),ft(9,"div",9)(10,"div",10),jt(11,"fa-icon",11),gt(),jt(12,"div",12),ft(13,"button",13),gn("click",function(){return l.onSwapPlaces()}),jt(14,"fa-icon",11),gt()(),ft(15,"div",14)(16,"div",2)(17,"div",3),jt(18,"fa-icon",11),gt(),ft(19,"app-place-selector",15),gn("selectedPlaceChange",function(o){return l.onDestinationSelected(o)}),gt()()()()),i&2&&(mt(8),Ht("places",l.places())("initialSelectedPlace",l.originPlace())("allowCurrentLocation",!0),mt(3),Ht("icon",l.faEllipsisVertical),mt(2),Ht("disabled",!l.canSwapPlaces()),mt(),Ht("icon",l.faArrowsRetweet),mt(4),Ht("icon",l.faLocationDot),mt(),Ht("places",l.places())("initialSelectedPlace",l.destinationPlace())("placeholder","Select a destination"))},dependencies:[vp,S0,Fr],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}}']})};function S$(t,r){if(t&1){let i=ai();ft(0,"button",1),gn("click",function(){Br(i);let u=cn();return Vr(u.pauseRoute())}),jt(1,"fa-icon",2),ft(2,"span"),xn(3,"Pause route"),gt()()}if(t&2){let i=cn();mt(),Ht("icon",i.faPause)}}function I$(t,r){if(t&1){let i=ai();ft(0,"button",1),gn("click",function(){Br(i);let u=cn();return Vr(u.resumeRoute())}),jt(1,"fa-icon",2),ft(2,"span"),xn(3,"Resume route"),gt()()}if(t&2){let i=cn();mt(),Ht("icon",i.faPlay)}}function E$(t,r){if(t&1){let i=ai();ft(0,"button",1),gn("click",function(){Br(i);let u=cn();return Vr(u.restartRoute())}),jt(1,"fa-icon",2),ft(2,"span"),xn(3,"Restart route"),gt()()}if(t&2){let i=cn();mt(),Ht("icon",i.faRestart)}}function D$(t,r){}var E0=class t{iconLibrary=je(gr);routingService=je(gc);AnimationState=u_;animationStatus=ys(this.routingService.animationStatusSubject,{initialValue:0});faPlay=this.iconLibrary.getIconDefinition("fas","play");faPause=this.iconLibrary.getIconDefinition("fas","pause");faRestart=this.iconLibrary.getIconDefinition("fas","rotate-right");pauseRoute(){this.routingService.pauseRouteAnimation()}resumeRoute(){this.routingService.resumeRouteAnimation()}restartRoute(){this.routingService.restartRouteAnimation()}static \u0275fac=function(i){return new(i||t)};static \u0275cmp=In({type:t,selectors:[["app-route-control-button"]],decls:4,vars:1,consts:[[1,"route-control-button"],[1,"route-control-button",3,"click"],[3,"icon"]],template:function(i,l){if(i&1&&pr(0,S$,4,1,"button",0)(1,I$,4,1,"button",0)(2,E$,4,1,"button",0)(3,D$,0,0),i&2){let u;mr((u=l.animationStatus())===l.AnimationState.Playing?0:u===l.AnimationState.Paused?1:u===l.AnimationState.Finished?2:3)}},dependencies:[Fr],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}}"]})};function T$(t,r){if(t&1){let i=ai();ft(0,"div",6)(1,"app-route-info",8),gn("startRouteClick",function(){Br(i);let u=cn();return Vr(u.startStepAnimation())}),gt()()}if(t&2){cn();let i=lg(6);mt(),Ht("currentRoute",i)}}var D0=class t{routeId="";route=je(el);logger=je(ar);navigatorService=je(Uo);loadedDataService=je(Xo);mapService=je(So);markerService=je(da);homeStateService=je(Ui);routingService=je(gc);mapReady=ys(this.mapService.mapReady,{requireSync:!0});places=ys(this.loadedDataService.getAvailablePlaces(),{initialValue:[]});originPoint=Jn(null);destinationPlace=Js(()=>this.initialDestination());initialDestination=Jn(null);currentRoute=Jn(null);constructor(){this.routeId=this.route.snapshot.params.id||"unknown",_r(()=>{let r=this.places();if(r.length>0){let i=r.find(l=>l.lazarilloId===this.routeId);i&&this.initialDestination.set(i)}}),_r(()=>{let r=this.destinationPlace();if(r&&this.mapReady()){let l=Nl(this.homeStateService.lastListedPlaces);this.markerService.removeAllMarkers(),this.markerService.addMarkers(l),this.markerService.hasMarker(r.lazarilloId)||this.markerService.addMarker(r),this.markerService.selectMarker(r.lazarilloId),Nl(this.originPoint)===null&&setTimeout(()=>{this.mapService.updateCamera({center:r.position})},100)}}),_r(()=>{let r=this.originPoint(),i=this.destinationPlace();r&&i?this.mapReady()&&(this.markerService.removeAllMarkers(),this.markerService.addOriginMarker(r.position),this.markerService.addDestinationMarker(i),this.routingService.getRoute(r,i).then(l=>{this.currentRoute.set(l),this.routingService.startAnimatingRoute(l)}).catch(l=>{this.logger.logWarning("Error getting route",l)}),setTimeout(()=>{this.mapService.fitCoordinates([r.position,i.position],{padding:{top:340,left:0,right:50,bottom:0}})},100)):this.currentRoute.set(null)}),_r(()=>{let r=this.currentRoute();console.log("route",r)})}returnToProfile(){this.navigatorService.navigateToProfile(this.routeId)}onDestinationSelected(r){this.destinationPlace.set(r)}onOriginSelected(r){this.originPoint.set(r)}startStepAnimation(){this.currentRoute()&&this.logger.log("Starting step animation")}static \u0275fac=function(i){return new(i||t)};static \u0275cmp=In({type:t,selectors:[["app-route-screen"]],decls:11,vars:4,consts:[[1,"route-screen"],[1,"back-button"],[3,"buttonClick"],[1,"route-screen-content"],[1,"route-related-components"],[3,"originSelected","destinationSelected","places","initialDestination"],[1,"route-info"],[1,"map"],[3,"startRouteClick","currentRoute"]],template:function(i,l){if(i&1){let u=ai();ft(0,"div",0)(1,"div",1)(2,"app-back-button",2),gn("buttonClick",function(){return Br(u),Vr(l.returnToProfile())}),gt()(),ft(3,"div",3)(4,"div",4)(5,"app-route-selector",5),gn("originSelected",function(b){return Br(u),Vr(l.onOriginSelected(b))})("destinationSelected",function(b){return Br(u),Vr(l.onDestinationSelected(b))}),gt(),gp(6),pr(7,T$,2,1,"div",6),gt(),ft(8,"div",7)(9,"app-map"),jt(10,"app-route-control-button"),gt()()()()}if(i&2){mt(5),Ht("places",l.places())("initialDestination",l.initialDestination()),mt();let u=ag(l.currentRoute());mt(),mr(u!==null?7:-1)}},dependencies:[zp,Dd,I0,C0,E0],styles:[".route-screen-content[_ngcontent-%COMP%]{position:relative}.route-related-components[_ngcontent-%COMP%]{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%]{position:unset;width:100%}}.map[_ngcontent-%COMP%]{width:100%;height:820px}"],changeDetection:0})};var ek=[{path:"",component:i0,children:[{path:"list",redirectTo:"",pathMatch:"full"},{path:"",component:f0},{path:"search",component:g0}]},{path:"profile/:id",component:x0},{path:"route/:id",component:D0},{path:"**",redirectTo:""}];var tk={providers:[Lb(),vw(),Qx(ek),{provide:mc,useClass:r0},ar]};zw(tk).then(t=>{let r=fM(t0,{injector:t.injector});customElements.define("mapvx-website",r)}).catch(t=>console.error(t));
1345
1345
  /*! Bundled license information:
1346
1346
 
1347
1347
  maplibre-gl/dist/maplibre-gl.js:
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@mapvx/website-component",
3
- "version": "0.8.0",
3
+ "version": "0.8.1",
4
4
  "publishConfig": {
5
5
  "access": "public"
6
6
  },