@mapvx/website-component 0.6.0 → 0.6.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.
- package/dist/browser/main.js +1 -1
- package/package.json +1 -1
package/dist/browser/main.js
CHANGED
|
@@ -1341,7 +1341,7 @@ In order to be iterable, non-array objects must have a [Symbol.iterator]() metho
|
|
|
1341
1341
|
`);i.setAttribute(jh,""),i.innerHTML=_}};function P3(t){t()}function FP(t,r){var i=typeof r=="function"?r:x_;if(t.length===0)i();else{var l=P3;Cn.mutateApproach===f7&&(l=Cd.requestAnimationFrame||P3),l(function(){var u=aB(),o=Px.begin("mutate");t.map(u),o(),i()})}}var Ax=!1;function zP(){Ax=!0}function _x(){Ax=!1}var I_=null;function A3(t){if(p3&&Cn.observeMutations){var r=t.treeCallback,i=r===void 0?x_:r,l=t.nodeCallback,u=l===void 0?x_:l,o=t.pseudoElementsCallback,_=o===void 0?x_:o,M=t.observeMutationsRoot,P=M===void 0?wi:M;I_=new p3(function(Z){if(!Ax){var G=Sd();Ip(Z).forEach(function(N){if(N.type==="childList"&&N.addedNodes.length>0&&!M3(N.addedNodes[0])&&(Cn.searchPseudoElements&&_(N.target),i(N.target)),N.type==="attributes"&&N.target.parentNode&&Cn.searchPseudoElements&&_([N.target],!0),N.type==="attributes"&&M3(N.target)&&~_7.indexOf(N.attributeName))if(N.attributeName==="class"&&oB(N.target)){var X=P_(Ex(N.target)),K=X.prefix,Q=X.iconName;N.target.setAttribute(Cx,K||G),Q&&N.target.setAttribute(Sx,Q)}else sB(N.target)&&u(N.target)})}}),fu&&I_.observe(P,{childList:!0,attributes:!0,characterData:!0,subtree:!0})}}function dB(){I_&&I_.disconnect()}function hB(t){var r=t.getAttribute("style"),i=[];return r&&(i=r.split(";").reduce(function(l,u){var o=u.split(":"),_=o[0],M=o.slice(1);return _&&M.length>0&&(l[_]=M.join(":").trim()),l},{})),i}function fB(t){var r=t.getAttribute("data-prefix"),i=t.getAttribute("data-icon"),l=t.innerText!==void 0?t.innerText.trim():"",u=P_(Ex(t));return u.prefix||(u.prefix=Sd()),r&&i&&(u.prefix=r,u.iconName=i),u.iconName&&u.prefix||(u.prefix&&l.length>0&&(u.iconName=F7(u.prefix,t.innerText)||Tx(u.prefix,CP(t.innerText))),!u.iconName&&Cn.autoFetchSvg&&t.firstChild&&t.firstChild.nodeType===Node.TEXT_NODE&&(u.iconName=t.firstChild.data)),u}function pB(t){var r=Ip(t.attributes).reduce(function(i,l){return i.name!=="class"&&i.name!=="style"&&(i[l.name]=l.value),i},{});return r}function mB(){return{iconName:null,prefix:null,transform:_c,symbol:!1,mask:{iconName:null,prefix:null,rest:[]},maskId:null,extra:{classes:[],styles:{},attributes:{}}}}function k3(t){var r=arguments.length>1&&arguments[1]!==void 0?arguments[1]:{styleParser:!0},i=fB(t),l=i.iconName,u=i.prefix,o=i.rest,_=pB(t),M=px("parseNodeAttributes",{},t),P=r.styleParser?hB(t):[];return Lt({iconName:l,prefix:u,transform:_c,mask:{iconName:null,prefix:null,rest:[]},maskId:null,symbol:!1,extra:{classes:o,styles:P,attributes:_}},M)}var gB=Fl.styles;function jP(t){var r=Cn.autoReplaceSvg==="nest"?k3(t,{styleParser:!1}):k3(t);return~r.extra.classes.indexOf(yP)?Ed("generateLayersText",t,r):Ed("generateSvgReplacementMutation",t,r)}function yB(){return[].concat(zl(lP),zl(cP))}function R3(t){var r=arguments.length>1&&arguments[1]!==void 0?arguments[1]:null;if(!fu)return Promise.resolve();var i=wi.documentElement.classList,l=function(N){return i.add("".concat(y3,"-").concat(N))},u=function(N){return i.remove("".concat(y3,"-").concat(N))},o=Cn.autoFetchSvg?yB():q3.concat(Object.keys(gB));o.includes("fa")||o.push("fa");var _=[".".concat(yP,":not([").concat(jh,"])")].concat(o.map(function(G){return".".concat(G,":not([").concat(jh,"])")})).join(", ");if(_.length===0)return Promise.resolve();var M=[];try{M=Ip(t.querySelectorAll(_))}catch{}if(M.length>0)l("pending"),u("complete");else return Promise.resolve();var P=Px.begin("onTree"),Z=M.reduce(function(G,N){try{var X=jP(N);X&&G.push(X)}catch(K){pP||K.name==="MissingIcon"&&console.error(K)}return G},[]);return new Promise(function(G,N){Promise.all(Z).then(function(X){FP(X,function(){l("active"),l("complete"),u("pending"),typeof r=="function"&&r(),P(),G()})}).catch(function(X){P(),N(X)})})}function vB(t){var r=arguments.length>1&&arguments[1]!==void 0?arguments[1]:null;jP(t).then(function(i){i&&FP([i],r)})}function _B(t){return function(r){var i=arguments.length>1&&arguments[1]!==void 0?arguments[1]:{},l=(r||{}).icon?r:mx(r||{}),u=i.mask;return u&&(u=(u||{}).icon?u:mx(u||{})),t(l,Lt(Lt({},i),{},{mask:u}))}}var bB=function(r){var i=arguments.length>1&&arguments[1]!==void 0?arguments[1]:{},l=i.transform,u=l===void 0?_c:l,o=i.symbol,_=o===void 0?!1:o,M=i.mask,P=M===void 0?null:M,Z=i.maskId,G=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 A_(Lt({type:"icon"},r),function(){return Bh("beforeDOMElementCreation",{iconDefinition:r,params:i}),Mx({icons:{main:gx(ve),mask:P?gx(P.icon):{found:!1,width:null,height:null,icon:{}}},prefix:j,iconName:re,transform:Lt(Lt({},_c),u),symbol:_,maskId:G,extra:{attributes:Q,styles:le,classes:X}})})}},wB={mixout:function(){return{icon:_B(bB)}},hooks:function(){return{mutationObserverCallbacks:function(i){return i.treeCallback=R3,i.nodeCallback=vB,i}}},provides:function(r){r.i2svg=function(i){var l=i.node,u=l===void 0?wi:l,o=i.callback,_=o===void 0?function(){}:o;return R3(u,_)},r.generateSvgReplacementMutation=function(i,l){var u=l.iconName,o=l.prefix,_=l.transform,M=l.symbol,P=l.mask,Z=l.maskId,G=l.extra;return new Promise(function(N,X){Promise.all([yx(u,o),P.iconName?yx(P.iconName,P.prefix):Promise.resolve({found:!1,width:512,height:512,icon:{}})]).then(function(K){var Q=D_(K,2),te=Q[0],le=Q[1];N([i,Mx({icons:{main:te,mask:le},prefix:o,iconName:u,transform:_,symbol:M,maskId:Z,extra:G,watchable:!0})])}).catch(X)})},r.generateAbstractIcon=function(i){var l=i.children,u=i.attributes,o=i.main,_=i.transform,M=i.styles,P=T_(M);P.length>0&&(u.style=P);var Z;return Ix(_)&&(Z=Ed("generateAbstractTransformGrouping",{main:o,transform:_,containerWidth:o.width,iconWidth:o.width})),l.push(Z||o.icon),{children:l,attributes:u}}}},xB={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 A_({type:"layer"},function(){Bh("beforeDOMElementCreation",{assembler:i,params:l});var _=[];return i(function(M){Array.isArray(M)?M.map(function(P){_=_.concat(P.abstract)}):_=_.concat(M.abstract)}),[{tag:"span",attributes:{class:["".concat(Cn.cssPrefix,"-layers")].concat(zl(o)).join(" ")},children:_}]})}}}},CB={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,_=l.classes,M=_===void 0?[]:_,P=l.attributes,Z=P===void 0?{}:P,G=l.styles,N=G===void 0?{}:G;return A_({type:"counter",content:i},function(){return Bh("beforeDOMElementCreation",{content:i,params:l}),tB({content:i.toString(),title:o,extra:{attributes:Z,styles:N,classes:["".concat(Cn.cssPrefix,"-layers-counter")].concat(zl(M))}})})}}}},SB={mixout:function(){return{text:function(i){var l=arguments.length>1&&arguments[1]!==void 0?arguments[1]:{},u=l.transform,o=u===void 0?_c:u,_=l.classes,M=_===void 0?[]:_,P=l.attributes,Z=P===void 0?{}:P,G=l.styles,N=G===void 0?{}:G;return A_({type:"text",content:i},function(){return Bh("beforeDOMElementCreation",{content:i,params:l}),D3({content:i,transform:Lt(Lt({},_c),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,_=null,M=null;if(G3){var P=parseInt(getComputedStyle(i).fontSize,10),Z=i.getBoundingClientRect();_=Z.width/P,M=Z.height/P}return Promise.resolve([i,D3({content:i.innerHTML,width:_,height:M,transform:u,extra:o,watchable:!0})])}}},BP=new RegExp('"',"ug"),O3=[1105920,1112319],L3=Lt(Lt(Lt(Lt({},{FontAwesome:{normal:"fas",400:"fas"}}),hj),d7),wj),bx=Object.keys(L3).reduce(function(t,r){return t[r.toLowerCase()]=L3[r],t},{}),EB=Object.keys(bx).reduce(function(t,r){var i=bx[r];return t[r]=i[900]||zl(Object.entries(i))[0][1],t},{});function IB(t){var r=t.replace(BP,"");return CP(zl(r)[0]||"")}function DB(t){var r=t.getPropertyValue("font-feature-settings").includes("ss01"),i=t.getPropertyValue("content"),l=i.replace(BP,""),u=l.codePointAt(0),o=u>=O3[0]&&u<=O3[1],_=l.length===2?l[0]===l[1]:!1;return o||_||r}function TB(t,r){var i=t.replace(/^['"]|['"]$/g,"").toLowerCase(),l=parseInt(r),u=isNaN(l)?"normal":l;return(bx[i]||{})[u]||EB[i]}function N3(t,r){var i="".concat(h7).concat(r.replace(":","-"));return new Promise(function(l,u){if(t.getAttribute(i)!==null)return l();var o=Ip(t.children),_=o.filter(function(Me){return Me.getAttribute(ux)===r})[0],M=Cd.getComputedStyle(t,r),P=M.getPropertyValue("font-family"),Z=P.match(y7),G=M.getPropertyValue("font-weight"),N=M.getPropertyValue("content");if(_&&!Z)return t.removeChild(_),l();if(Z&&N!=="none"&&N!==""){var X=M.getPropertyValue("content"),K=TB(P,G),Q=IB(X),te=Z[0].startsWith("FontAwesome"),le=DB(M),j=Tx(K,Q),re=j;if(te){var ve=z7(Q);ve.iconName&&ve.prefix&&(j=ve.iconName,K=ve.prefix)}if(j&&!le&&(!_||_.getAttribute(Cx)!==K||_.getAttribute(Sx)!==re)){t.setAttribute(i,re),_&&t.removeChild(_);var Ye=mB(),ue=Ye.extra;ue.attributes[ux]=r,yx(j,K).then(function(Me){var Re=Mx(Lt(Lt({},Ye),{},{icons:{main:Me,mask:RP()},prefix:K,iconName:re,extra:ue,watchable:!0})),Ue=wi.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 Dg(qe)}).join(`
|
|
1342
1342
|
`),t.removeAttribute(i),l()}).catch(u)}else l()}else l()})}function MB(t){return Promise.all([N3(t,"::before"),N3(t,"::after")])}function PB(t){return t.parentNode!==document.head&&!~p7.indexOf(t.tagName.toUpperCase())&&!t.getAttribute(ux)&&(!t.parentNode||t.parentNode.tagName!=="svg")}var AB=function(r){return!!r&&fP.some(function(i){return r.includes(i)})},kB=function(r){if(!r)return[];for(var i=new Set,l=[r],u=[/(?=\s:)/,new RegExp("(?<=\\)\\)?[^,]*,)")],o=function(){var K=M[_];l=l.flatMap(function(Q){return Q.split(K).map(function(te){return te.replace(/,\s*$/,"").trim()})})},_=0,M=u;_<M.length;_++)o();l=l.flatMap(function(X){return X.includes("(")?X:X.split(",").map(function(K){return K.trim()})});var P=w_(l),Z;try{for(P.s();!(Z=P.n()).done;){var G=Z.value;if(AB(G)){var N=fP.reduce(function(X,K){return X.replace(K,"")},G);N!==""&&N!=="*"&&i.add(N)}}}catch(X){P.e(X)}finally{P.f()}return i};function F3(t){var r=arguments.length>1&&arguments[1]!==void 0?arguments[1]:!1;if(fu){var i;if(r)i=t;else if(Cn.searchPseudoElementsFullScan)i=t.querySelectorAll("*");else{var l=new Set,u=w_(document.styleSheets),o;try{for(u.s();!(o=u.n()).done;){var _=o.value;try{var M=w_(_.cssRules),P;try{for(M.s();!(P=M.n()).done;){var Z=P.value,G=kB(Z.selectorText),N=w_(G),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(_.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=Ip(i).filter(PB).map(MB),re=Px.begin("searchPseudoElements");zP(),Promise.all(j).then(function(){re(),_x(),te()}).catch(function(){re(),_x(),le()})})}}var RB={hooks:function(){return{mutationObserverCallbacks:function(i){return i.pseudoElementsCallback=F3,i}}},provides:function(r){r.pseudoElements2svg=function(i){var l=i.node,u=l===void 0?wi:l;Cn.searchPseudoElements&&F3(u)}}},z3=!1,OB={mixout:function(){return{dom:{unwatch:function(){zP(),z3=!0}}}},hooks:function(){return{bootstrap:function(){A3(px("mutationObserverCallbacks",{}))},noAuto:function(){dB()},watch:function(i){var l=i.observeMutationsRoot;z3?_x():A3(px("mutationObserverCallbacks",{observeMutationsRoot:l}))}}}},j3=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("-"),_=o[0],M=o.slice(1).join("-");if(_&&M==="h")return l.flipX=!0,l;if(_&&M==="v")return l.flipY=!0,l;if(M=parseFloat(M),isNaN(M))return l;switch(_){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)},LB={mixout:function(){return{parse:{transform:function(i){return j3(i)}}}},hooks:function(){return{parseNodeAttributes:function(i,l){var u=l.getAttribute("data-fa-transform");return u&&(i.transform=j3(u)),i}}},provides:function(r){r.generateAbstractTransformGrouping=function(i){var l=i.main,u=i.transform,o=i.containerWidth,_=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),") "),G="rotate(".concat(u.rotate," 0 0)"),N={transform:"".concat(P," ").concat(Z," ").concat(G)},X={transform:"translate(".concat(_/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)}]}]}}}},sx={x:0,y:0,width:"100%",height:"100%"};function B3(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 NB(t){return t.tag==="g"?t.children:[t]}var zB={hooks:function(){return{parseNodeAttributes:function(i,l){var u=l.getAttribute("data-fa-mask"),o=u?P_(u.split(" ").map(function(_){return _.trim()})):RP();return o.prefix||(o.prefix=Sd()),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,_=i.mask,M=i.maskId,P=i.transform,Z=o.width,G=o.icon,N=_.width,X=_.icon,K=D7({transform:P,containerWidth:N,iconWidth:Z}),Q={tag:"rect",attributes:Lt(Lt({},sx),{},{fill:"white"})},te=G.children?{children:G.children.map(B3)}:{},le={tag:"g",attributes:Lt({},K.inner),children:[B3(Lt({tag:G.tag,attributes:Lt(Lt({},G.attributes),K.path)},te))]},j={tag:"g",attributes:Lt({},K.outer),children:[le]},re="mask-".concat(M||b3()),ve="clip-".concat(M||b3()),Ye={tag:"mask",attributes:Lt(Lt({},sx),{},{id:re,maskUnits:"userSpaceOnUse",maskContentUnits:"userSpaceOnUse"}),children:[Q,j]},ue={tag:"defs",children:[{tag:"clipPath",attributes:{id:ve},children:NB(X)},Ye]};return l.push(ue,{tag:"rect",attributes:Lt({fill:"currentColor","clip-path":"url(#".concat(ve,")"),mask:"url(#".concat(re,")")},sx)}),{children:l,attributes:u}}}},jB={provides:function(r){var i=!1;Cd.matchMedia&&(i=Cd.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 _=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({},_),{},{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({},_),{},{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({},_),{},{values:"0;0;1;1;0;0;"})}]}),{tag:"g",attributes:{class:"missing"},children:l}}}},BB={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}}}},VB=[P7,wB,xB,CB,SB,RB,OB,LB,zB,jB,BB];q7(VB,{mixoutsTo:Ra});var gae=Ra.noAuto,VP=Ra.config,yae=Ra.library,UP=Ra.dom,$P=Ra.parse,vae=Ra.findIconDefinition,_ae=Ra.toHtml,k_=Ra.icon,kx=Ra.layer,UB=Ra.text,$B=Ra.counter;var HB=["*"],GB=(()=>{class t{defaultPrefix="fas";fallbackIcon=null;fixedWidth;set autoAddCss(i){VP.autoAddCss=i,this._autoAddCss=i}get autoAddCss(){return this._autoAddCss}_autoAddCss=!0;static \u0275fac=function(l){return new(l||t)};static \u0275prov=qt({token:t,factory:t.\u0275fac,providedIn:"root"})}return t})(),Tg=(()=>{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=qt({token:t,factory:t.\u0275fac,providedIn:"root"})}return t})(),WB=t=>{throw new Error(`Could not find icon with iconName=${t.iconName} and prefix=${t.prefix} in the icon library.`)},qB=()=>{throw new Error("Property `icon` is required for `fa-icon`/`fa-duotone-icon` components.")},GP=t=>t!=null&&(t===90||t===180||t===270||t==="90"||t==="180"||t==="270"),ZB=t=>{let r=GP(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)},Rx=new WeakSet,HP="fa-auto-css";function YB(t,r){if(!r.autoAddCss||Rx.has(t))return;if(t.getElementById(HP)!=null){r.autoAddCss=!1,Rx.add(t);return}let i=t.createElement("style");i.setAttribute("type","text/css"),i.setAttribute("id",HP),i.innerHTML=UP.css();let l=t.head.childNodes,u=null;for(let o=l.length-1;o>-1;o--){let _=l[o],M=_.nodeName.toUpperCase();["STYLE","LINK"].indexOf(M)>-1&&(u=_)}t.head.insertBefore(i,u),r.autoAddCss=!1,Rx.add(t)}var KB=t=>t.prefix!==void 0&&t.iconName!==void 0,XB=(t,r)=>KB(t)?t:Array.isArray(t)&&t.length===2?{prefix:t[0],iconName:t[1]}:{prefix:r,iconName:t},JB=(()=>{class t{stackItemSize=kr("1x");size=kr();_effect=vr(()=>{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=kh({type:t,selectors:[["fa-icon","stackItemSize",""],["fa-duotone-icon","stackItemSize",""]],inputs:{stackItemSize:[1,"stackItemSize"],size:[1,"size"]}})}return t})(),QB=(()=>{class t{size=kr();classes=On(()=>{let i=this.size(),l=i?{[`fa-${i}`]:!0}:{};return fr($t({},l),{"fa-stack":!0})});static \u0275fac=function(l){return new(l||t)};static \u0275cmp=En({type:t,selectors:[["fa-stack"]],hostVars:2,hostBindings:function(l,u){l&2&&_w(u.classes())},inputs:{size:[1,"size"]},ngContentSelectors:HB,decls:1,vars:0,template:function(l,u){l&1&&(lu(),cu(0))},encapsulation:2,changeDetection:0})}return t})(),qr=(()=>{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=On(()=>{let i=this.icon()??this.config.fallbackIcon;if(!i)return qB(),"";let l=this.findIconDefinition(i);if(!l)return"";let u=this.buildParams();YB(this.document,this.config);let o=k_(l,u);return this.sanitizer.bypassSecurityTrustHtml(o.html.join(`
|
|
1344
|
-
`))});document=Be(bi);sanitizer=Be(vg);config=Be(GB);iconLibrary=Be(Tg);stackItem=Be(JB,{optional:!0});stack=Be(QB,{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=XB(i,this.config.defaultPrefix);if("icon"in l)return l;let u=this.iconLibrary.getIconDefinition(l.prefix,l.iconName);return u??(WB(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"?$P.transform(u):u,_=this.mask(),M=_!=null?this.findIconDefinition(_):null,P={},Z=this.a11yRole();Z!=null&&(P.role=Z);let G={};return l.rotate!=null&&!GP(l.rotate)&&(G["--fa-rotate-angle"]=`${l.rotate}`),{title:this.title(),transform:o,classes:ZB(l),mask:M??void 0,symbol:this.symbol(),attributes:P,styles:G}}static \u0275fac=function(l){return new(l||t)};static \u0275cmp=En({type:t,selectors:[["fa-icon"]],hostAttrs:[1,"ng-fa-icon"],hostVars:2,hostBindings:function(l,u){l&2&&(_p("innerHTML",u.renderedIconHTML(),vd),sg("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 R_=(()=>{class t{static \u0275fac=function(l){return new(l||t)};static \u0275mod=mc({type:t});static \u0275inj=Sl({})}return t})();var wr=class t{iconLibrary=Be(Tg);logger=Be(mr);getIconDefinition(r,i){let l=this.iconLibrary.getIconDefinition(r,i);return l||(this.logger.logWarning(new Error(`Icon definition not found for ${r} ${i}`)),Jw)}static \u0275fac=function(i){return new(i||t)};static \u0275prov=qt({token:t,factory:t.\u0275fac})};var sr="primary",$g=Symbol("RouteTitle"),zx=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 $h(t){return new zx(t)}function QP(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 _=l[o],M=t[o];if(_[0]===":")u[_.substring(1)]=M;else if(_!==M.path)return null}return{consumed:t.slice(0,l.length),posParams:u}}function tV(t,r){if(t.length!==r.length)return!1;for(let i=0;i<t.length;++i)if(!bc(t[i],r[i]))return!1;return!0}function bc(t,r){let i=t?jx(t):void 0,l=r?jx(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],!eA(t[u],r[u]))return!1;return!0}function jx(t){return[...Object.keys(t),...Object.getOwnPropertySymbols(t)]}function eA(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 tA(t){return t.length>0?t[t.length-1]:null}function gu(t){return L1(t)?t:vp(t)?mi(Promise.resolve(t)):Wn(t)}var nV={exact:rA,subset:iA},nA={exact:rV,subset:iV,ignored:()=>!0};function WP(t,r,i){return nV[i.paths](t.root,r.root,i.matrixParams)&&nA[i.queryParams](t.queryParams,r.queryParams)&&!(i.fragment==="exact"&&t.fragment!==r.fragment)}function rV(t,r){return bc(t,r)}function rA(t,r,i){if(!Vh(t.segments,r.segments)||!N_(t.segments,r.segments,i)||t.numberOfChildren!==r.numberOfChildren)return!1;for(let l in r.children)if(!t.children[l]||!rA(t.children[l],r.children[l],i))return!1;return!0}function iV(t,r){return Object.keys(r).length<=Object.keys(t).length&&Object.keys(r).every(i=>eA(t[i],r[i]))}function iA(t,r,i){return oA(t,r,r.segments,i)}function oA(t,r,i,l){if(t.segments.length>i.length){let u=t.segments.slice(0,i.length);return!(!Vh(u,i)||r.hasChildren()||!N_(u,i,l))}else if(t.segments.length===i.length){if(!Vh(t.segments,i)||!N_(t.segments,i,l))return!1;for(let u in r.children)if(!t.children[u]||!iA(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!Vh(t.segments,u)||!N_(t.segments,u,l)||!t.children[sr]?!1:oA(t.children[sr],r,o,l)}}function N_(t,r,i){return r.every((l,u)=>nA[i](t[u].parameters,l.parameters))}var xc=class{root;queryParams;fragment;_queryParamMap;constructor(r=new Vr([],{}),i={},l=null){this.root=r,this.queryParams=i,this.fragment=l}get queryParamMap(){return this._queryParamMap??=$h(this.queryParams),this._queryParamMap}toString(){return aV.serialize(this)}},Vr=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 F_(this)}},Id=class{path;parameters;_parameterMap;constructor(r,i){this.path=r,this.parameters=i}get parameterMap(){return this._parameterMap??=$h(this.parameters),this._parameterMap}toString(){return aA(this)}};function oV(t,r){return Vh(t,r)&&t.every((i,l)=>bc(i.parameters,r[l].parameters))}function Vh(t,r){return t.length!==r.length?!1:t.every((i,l)=>i.path===r[l].path)}function sV(t,r){let i=[];return Object.entries(t.children).forEach(([l,u])=>{l===sr&&(i=i.concat(r(u,l)))}),Object.entries(t.children).forEach(([l,u])=>{l!==sr&&(i=i.concat(r(u,l)))}),i}var Hg=(()=>{class t{static \u0275fac=function(l){return new(l||t)};static \u0275prov=qt({token:t,factory:()=>new Hh,providedIn:"root"})}return t})(),Hh=class{parse(r){let i=new Vx(r);return new xc(i.parseRootSegment(),i.parseQueryParams(),i.parseFragment())}serialize(r){let i=`/${Mg(r.root,!0)}`,l=uV(r.queryParams),u=typeof r.fragment=="string"?`#${lV(r.fragment)}`:"";return`${i}${l}${u}`}},aV=new Hh;function F_(t){return t.segments.map(r=>aA(r)).join("/")}function Mg(t,r){if(!t.hasChildren())return F_(t);if(r){let i=t.children[sr]?Mg(t.children[sr],!1):"",l=[];return Object.entries(t.children).forEach(([u,o])=>{u!==sr&&l.push(`${u}:${Mg(o,!1)}`)}),l.length>0?`${i}(${l.join("//")})`:i}else{let i=sV(t,(l,u)=>u===sr?[Mg(t.children[sr],!1)]:[`${u}:${Mg(l,!1)}`]);return Object.keys(t.children).length===1&&t.children[sr]!=null?`${F_(t)}/${i[0]}`:`${F_(t)}/(${i.join("//")})`}}function sA(t){return encodeURIComponent(t).replace(/%40/g,"@").replace(/%3A/gi,":").replace(/%24/g,"$").replace(/%2C/gi,",")}function O_(t){return sA(t).replace(/%3B/gi,";")}function lV(t){return encodeURI(t)}function Bx(t){return sA(t).replace(/\(/g,"%28").replace(/\)/g,"%29").replace(/%26/gi,"&")}function z_(t){return decodeURIComponent(t)}function qP(t){return z_(t.replace(/\+/g,"%20"))}function aA(t){return`${Bx(t.path)}${cV(t.parameters)}`}function cV(t){return Object.entries(t).map(([r,i])=>`;${Bx(r)}=${Bx(i)}`).join("")}function uV(t){let r=Object.entries(t).map(([i,l])=>Array.isArray(l)?l.map(u=>`${O_(i)}=${O_(u)}`).join("&"):`${O_(i)}=${O_(l)}`).filter(i=>i);return r.length?`?${r.join("&")}`:""}var dV=/^[^\/()?;#]+/;function Ox(t){let r=t.match(dV);return r?r[0]:""}var hV=/^[^\/()?;=#]+/;function fV(t){let r=t.match(hV);return r?r[0]:""}var pV=/^[^=?&#]+/;function mV(t){let r=t.match(pV);return r?r[0]:""}var gV=/^[^&#]+/;function yV(t){let r=t.match(gV);return r?r[0]:""}var Vx=class{url;remaining;constructor(r){this.url=r,this.remaining=r}parseRootSegment(){return this.consumeOptional("/"),this.remaining===""||this.peekStartsWith("?")||this.peekStartsWith("#")?new Vr([],{}):new Vr([],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[sr]=new Vr(r,i)),l}parseSegment(){let r=Ox(this.remaining);if(r===""&&this.peekStartsWith(";"))throw new ln(4009,!1);return this.capture(r),new Id(z_(r),this.parseMatrixParams())}parseMatrixParams(){let r={};for(;this.consumeOptional(";");)this.parseParam(r);return r}parseParam(r){let i=fV(this.remaining);if(!i)return;this.capture(i);let l="";if(this.consumeOptional("=")){let u=Ox(this.remaining);u&&(l=u,this.capture(l))}r[z_(i)]=z_(l)}parseQueryParam(r){let i=mV(this.remaining);if(!i)return;this.capture(i);let l="";if(this.consumeOptional("=")){let _=yV(this.remaining);_&&(l=_,this.capture(l))}let u=qP(i),o=qP(l);if(r.hasOwnProperty(u)){let _=r[u];Array.isArray(_)||(_=[_],r[u]=_),_.push(o)}else r[u]=o}parseParens(r){let i={};for(this.capture("(");!this.consumeOptional(")")&&this.remaining.length>0;){let l=Ox(this.remaining),u=this.remaining[l.length];if(u!=="/"&&u!==")"&&u!==";")throw new ln(4010,!1);let o;l.indexOf(":")>-1?(o=l.slice(0,l.indexOf(":")),this.capture(o),this.capture(":")):r&&(o=sr);let _=this.parseChildren();i[o]=Object.keys(_).length===1?_[sr]:new Vr([],_),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 ln(4011,!1)}};function lA(t){return t.segments.length>0?new Vr([],{[sr]:t}):t}function cA(t){let r={};for(let[l,u]of Object.entries(t.children)){let o=cA(u);if(l===sr&&o.segments.length===0&&o.hasChildren())for(let[_,M]of Object.entries(o.children))r[_]=M;else(o.segments.length>0||o.hasChildren())&&(r[l]=o)}let i=new Vr(t.segments,r);return vV(i)}function vV(t){if(t.numberOfChildren===1&&t.children[sr]){let r=t.children[sr];return new Vr(t.segments.concat(r.segments),r.children)}return t}function Ap(t){return t instanceof xc}function uA(t,r,i=null,l=null){let u=dA(t);return hA(u,r,i,l)}function dA(t){let r;function i(o){let _={};for(let P of o.children){let Z=i(P);_[P.outlet]=Z}let M=new Vr(o.url,_);return o===t&&(r=M),M}let l=i(t.root),u=lA(l);return r??u}function hA(t,r,i,l){let u=t;for(;u.parent;)u=u.parent;if(r.length===0)return Lx(u,u,u,i,l);let o=_V(r);if(o.toRoot())return Lx(u,u,new Vr([],{}),i,l);let _=bV(o,u,t),M=_.processChildren?Ag(_.segmentGroup,_.index,o.commands):pA(_.segmentGroup,_.index,o.commands);return Lx(u,_.segmentGroup,M,i,l)}function j_(t){return typeof t=="object"&&t!=null&&!t.outlets&&!t.segmentPath}function Og(t){return typeof t=="object"&&t!=null&&t.outlets}function Lx(t,r,i,l,u){let o={};l&&Object.entries(l).forEach(([P,Z])=>{o[P]=Array.isArray(Z)?Z.map(G=>`${G}`):`${Z}`});let _;t===r?_=i:_=fA(t,r,i);let M=lA(cA(_));return new xc(M,o,u)}function fA(t,r,i){let l={};return Object.entries(t.children).forEach(([u,o])=>{o===r?l[u]=i:l[u]=fA(o,r,i)}),new Vr(t.segments,l)}var B_=class{isAbsolute;numberOfDoubleDots;commands;constructor(r,i,l){if(this.isAbsolute=r,this.numberOfDoubleDots=i,this.commands=l,r&&l.length>0&&j_(l[0]))throw new ln(4003,!1);let u=l.find(Og);if(u&&u!==tA(l))throw new ln(4004,!1)}toRoot(){return this.isAbsolute&&this.commands.length===1&&this.commands[0]=="/"}};function _V(t){if(typeof t[0]=="string"&&t.length===1&&t[0]==="/")return new B_(!0,0,t);let r=0,i=!1,l=t.reduce((u,o,_)=>{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]:_===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 B_(i,r,l)}var Mp=class{segmentGroup;processChildren;index;constructor(r,i,l){this.segmentGroup=r,this.processChildren=i,this.index=l}};function bV(t,r,i){if(t.isAbsolute)return new Mp(r,!0,0);if(!i)return new Mp(r,!1,NaN);if(i.parent===null)return new Mp(i,!0,0);let l=j_(t.commands[0])?0:1,u=i.segments.length-1+l;return wV(i,u,t.numberOfDoubleDots)}function wV(t,r,i){let l=t,u=r,o=i;for(;o>u;){if(o-=u,l=l.parent,!l)throw new ln(4005,!1);u=l.segments.length}return new Mp(l,!1,u-o)}function xV(t){return Og(t[0])?t[0].outlets:{[sr]:t}}function pA(t,r,i){if(t??=new Vr([],{}),t.segments.length===0&&t.hasChildren())return Ag(t,r,i);let l=CV(t,r,i),u=i.slice(l.commandIndex);if(l.match&&l.pathIndex<t.segments.length){let o=new Vr(t.segments.slice(0,l.pathIndex),{});return o.children[sr]=new Vr(t.segments.slice(l.pathIndex),t.children),Ag(o,0,u)}else return l.match&&u.length===0?new Vr(t.segments,{}):l.match&&!t.hasChildren()?Ux(t,r,i):l.match?Ag(t,0,u):Ux(t,r,i)}function Ag(t,r,i){if(i.length===0)return new Vr(t.segments,{});{let l=xV(i),u={};if(Object.keys(l).some(o=>o!==sr)&&t.children[sr]&&t.numberOfChildren===1&&t.children[sr].segments.length===0){let o=Ag(t.children[sr],r,i);return new Vr(t.segments,o.children)}return Object.entries(l).forEach(([o,_])=>{typeof _=="string"&&(_=[_]),_!==null&&(u[o]=pA(t.children[o],r,_))}),Object.entries(t.children).forEach(([o,_])=>{l[o]===void 0&&(u[o]=_)}),new Vr(t.segments,u)}}function CV(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 _=t.segments[u],M=i[l];if(Og(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(!YP(P,Z,_))return o;l+=2}else{if(!YP(P,{},_))return o;l++}u++}return{match:!0,pathIndex:u,commandIndex:l}}function Ux(t,r,i){let l=t.segments.slice(0,r),u=0;for(;u<i.length;){let o=i[u];if(Og(o)){let P=SV(o.outlets);return new Vr(l,P)}if(u===0&&j_(i[0])){let P=t.segments[r];l.push(new Id(P.path,ZP(i[0]))),u++;continue}let _=Og(o)?o.outlets[sr]:`${o}`,M=u<i.length-1?i[u+1]:null;_&&M&&j_(M)?(l.push(new Id(_,ZP(M))),u+=2):(l.push(new Id(_,{})),u++)}return new Vr(l,{})}function SV(t){let r={};return Object.entries(t).forEach(([i,l])=>{typeof l=="string"&&(l=[l]),l!==null&&(r[i]=Ux(new Vr([],{}),0,l))}),r}function ZP(t){let r={};return Object.entries(t).forEach(([i,l])=>r[i]=`${l}`),r}function YP(t,r,i){return t==i.path&&bc(r,i.parameters)}var kg="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}},Gh=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}')`}},pu=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||{}),Lg=function(t){return t[t.IgnoredSameUrlNavigation=0]="IgnoredSameUrlNavigation",t[t.IgnoredByUrlHandlingStrategy=1]="IgnoredByUrlHandlingStrategy",t}(Lg||{}),wc=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}')`}},mu=class extends La{reason;code;type=Jo.NavigationSkipped;constructor(r,i,l,u){super(r,i),this.reason=l,this.code=u}},kp=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})`}},Ng=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})`}},V_=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})`}},U_=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})`}},$_=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})`}},H_=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})`}},G_=class{route;type=Jo.RouteConfigLoadStart;constructor(r){this.route=r}toString(){return`RouteConfigLoadStart(path: ${this.route.path})`}},W_=class{route;type=Jo.RouteConfigLoadEnd;constructor(r){this.route=r}toString(){return`RouteConfigLoadEnd(path: ${this.route.path})`}},q_=class{snapshot;type=Jo.ChildActivationStart;constructor(r){this.snapshot=r}toString(){return`ChildActivationStart(path: '${this.snapshot.routeConfig&&this.snapshot.routeConfig.path||""}')`}},Z_=class{snapshot;type=Jo.ChildActivationEnd;constructor(r){this.snapshot=r}toString(){return`ChildActivationEnd(path: '${this.snapshot.routeConfig&&this.snapshot.routeConfig.path||""}')`}},Y_=class{snapshot;type=Jo.ActivationStart;constructor(r){this.snapshot=r}toString(){return`ActivationStart(path: '${this.snapshot.routeConfig&&this.snapshot.routeConfig.path||""}')`}},K_=class{snapshot;type=Jo.ActivationEnd;constructor(r){this.snapshot=r}toString(){return`ActivationEnd(path: '${this.snapshot.routeConfig&&this.snapshot.routeConfig.path||""}')`}};var Fg=class{},Rp=class{url;navigationBehaviorOptions;constructor(r,i){this.url=r,this.navigationBehaviorOptions=i}};function EV(t){return!(t instanceof Fg)&&!(t instanceof Rp)}function IV(t,r){return t.providers&&!t._injector&&(t._injector=ig(t.providers,r,`Route: ${t.path}`)),t._injector??r}function jl(t){return t.outlet||sr}function DV(t,r){let i=t.filter(l=>jl(l)===r);return i.push(...t.filter(l=>jl(l)!==r)),i}function Np(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 X_=class{rootInjector;outlet=null;route=null;children;attachRef=null;get injector(){return Np(this.route?.snapshot)??this.rootInjector}constructor(r){this.rootInjector=r,this.children=new Fp(this.rootInjector)}},Fp=(()=>{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 X_(this.rootInjector),this.contexts.set(i,l)),l}getContext(i){return this.contexts.get(i)||null}static \u0275fac=function(l){return new(l||t)(nr(ms))};static \u0275prov=qt({token:t,factory:t.\u0275fac,providedIn:"root"})}return t})(),J_=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=$x(r,this._root);return i?i.children.map(l=>l.value):[]}firstChild(r){let i=$x(r,this._root);return i&&i.children.length>0?i.children[0].value:null}siblings(r){let i=Hx(r,this._root);return i.length<2?[]:i[i.length-2].children.map(u=>u.value).filter(u=>u!==r)}pathFromRoot(r){return Hx(r,this._root).map(i=>i.value)}};function $x(t,r){if(t===r.value)return r;for(let i of r.children){let l=$x(t,i);if(l)return l}return null}function Hx(t,r){if(t===r.value)return[r];for(let i of r.children){let l=Hx(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 Tp(t){let r={};return t&&t.children.forEach(i=>r[i.value.outlet]=i),r}var zg=class extends J_{snapshot;constructor(r,i){super(r),this.snapshot=i,Jx(this,r)}toString(){return this.snapshot.toString()}};function mA(t){let r=TV(t),i=new Di([new Id("",{})]),l=new Di({}),u=new Di({}),o=new Di({}),_=new Di(""),M=new el(i,l,o,_,u,sr,t,r.root);return M.snapshot=r.root,new zg(new Oa(M,[]),r)}function TV(t){let r={},i={},l={},u="",o=new Uh([],r,l,u,i,sr,t,null,{});return new jg("",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,_,M,P){this.urlSubject=r,this.paramsSubject=i,this.queryParamsSubject=l,this.fragmentSubject=u,this.dataSubject=o,this.outlet=_,this.component=M,this._futureSnapshot=P,this.title=this.dataSubject?.pipe(qn(Z=>Z[$g]))??Wn(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(qn(r=>$h(r))),this._paramMap}get queryParamMap(){return this._queryParamMap??=this.queryParams.pipe(qn(r=>$h(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&&yA(u)&&(l.resolve[$g]=u.title),l}var Uh=class{url;params;queryParams;fragment;data;outlet;component;routeConfig;_resolve;_resolvedData;_routerState;_paramMap;_queryParamMap;get title(){return this.data?.[$g]}constructor(r,i,l,u,o,_,M,P,Z){this.url=r,this.params=i,this.queryParams=l,this.fragment=u,this.data=o,this.outlet=_,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??=$h(this.params),this._paramMap}get queryParamMap(){return this._queryParamMap??=$h(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}')`}},jg=class extends J_{url;constructor(r,i){super(i),this.url=r,Jx(this,i)}toString(){return gA(this._root)}};function Jx(t,r){r.value._routerState=t,r.children.forEach(i=>Jx(t,i))}function gA(t){let r=t.children.length>0?` { ${t.children.map(gA).join(", ")} } `:"";return`${t.value}${r}`}function Nx(t){if(t.snapshot){let r=t.snapshot,i=t._futureSnapshot;t.snapshot=i,bc(r.queryParams,i.queryParams)||t.queryParamsSubject.next(i.queryParams),r.fragment!==i.fragment&&t.fragmentSubject.next(i.fragment),bc(r.params,i.params)||t.paramsSubject.next(i.params),tV(r.url,i.url)||t.urlSubject.next(i.url),bc(r.data,i.data)||t.dataSubject.next(i.data)}else t.snapshot=t._futureSnapshot,t.dataSubject.next(t._futureSnapshot.data)}function Gx(t,r){let i=bc(t.params,r.params)&&oV(t.url,r.url),l=!t.parent!=!r.parent;return i&&!l&&(!t.parent||Gx(t.parent,r.parent))}function yA(t){return typeof t.title=="string"||t.title===null}var vA=new kn(""),Wh=(()=>{class t{activated=null;get activatedComponentRef(){return this.activated}_activatedRoute=null;name=sr;activateEvents=new Ts;deactivateEvents=new Ts;attachEvents=new Ts;detachEvents=new Ts;routerOutletData=kr(void 0);parentContexts=Be(Fp);location=Be(Ah);changeDetector=Be(u_);inputBinder=Be(r0,{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 ln(4012,!1);return this.activated.instance}get activatedRoute(){if(!this.activated)throw new ln(4012,!1);return this._activatedRoute}get activatedRouteData(){return this._activatedRoute?this._activatedRoute.snapshot.data:{}}detach(){if(!this.activated)throw new ln(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 ln(4013,!1);this._activatedRoute=i;let u=this.location,_=i.snapshot.component,M=this.parentContexts.getOrCreateContext(this.name).children,P=new Wx(i,M,u.injector,this.routerOutletData);this.activated=u.createComponent(_,{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=kh({type:t,selectors:[["router-outlet"]],inputs:{name:"name",routerOutletData:[1,"routerOutletData"]},outputs:{activateEvents:"activate",deactivateEvents:"deactivate",attachEvents:"attach",detachEvents:"detach"},exportAs:["outlet"],features:[Qm]})}return t})(),Wx=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===Fp?this.childContexts:r===vA?this.outletData:this.parent.get(r,i)}},r0=new kn("");var Qx=(()=>{class t{static \u0275fac=function(l){return new(l||t)};static \u0275cmp=En({type:t,selectors:[["ng-component"]],exportAs:["emptyRouterOutlet"],decls:1,vars:0,template:function(l,u){l&1&&Bt(0,"router-outlet")},dependencies:[Wh],encapsulation:2})}return t})();function eC(t){let r=t.children&&t.children.map(eC),i=r?fr($t({},t),{children:r}):$t({},t);return!i.component&&!i.loadComponent&&(r||i.loadChildren)&&i.outlet&&i.outlet!==sr&&(i.component=Qx),i}function MV(t,r,i){let l=Bg(t,r._root,i?i._root:void 0);return new zg(l,r)}function Bg(t,r,i){if(i&&t.shouldReuseRoute(r.value,i.value.snapshot)){let l=i.value;l._futureSnapshot=r.value;let u=PV(t,r,i);return new Oa(l,u)}else{if(t.shouldAttach(r.value)){let o=t.retrieve(r.value);if(o!==null){let _=o.route;return _.value._futureSnapshot=r.value,_.children=r.children.map(M=>Bg(t,M)),_}}let l=AV(r.value),u=r.children.map(o=>Bg(t,o));return new Oa(l,u)}}function PV(t,r,i){return r.children.map(l=>{for(let u of i.children)if(t.shouldReuseRoute(l.value,u.value.snapshot))return Bg(t,l,u);return Bg(t,l)})}function AV(t){return new el(new Di(t.url),new Di(t.params),new Di(t.queryParams),new Di(t.fragment),new Di(t.data),t.outlet,t.component,t)}var Op=class{redirectTo;navigationBehaviorOptions;constructor(r,i){this.redirectTo=r,this.navigationBehaviorOptions=i}},_A="ngNavigationCancelingError";function e0(t,r){let{redirectTo:i,navigationBehaviorOptions:l}=Ap(r)?{redirectTo:r,navigationBehaviorOptions:void 0}:r,u=bA(!1,ea.Redirect);return u.url=i,u.navigationBehaviorOptions=l,u}function bA(t,r){let i=new Error(`NavigationCancelingError: ${t||""}`);return i[_A]=!0,i.cancellationCode=r,i}function kV(t){return wA(t)&&Ap(t.url)}function wA(t){return!!t&&t[_A]}var RV=(t,r,i,l)=>qn(u=>(new qx(r,u.targetRouterState,u.currentRouterState,i,l).activate(t),u)),qx=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),Nx(this.futureState.root),this.activateChildRoutes(i,l,r)}deactivateChildRoutes(r,i,l){let u=Tp(i);r.children.forEach(o=>{let _=o.value.outlet;this.deactivateRoutes(o,u[_],l),delete u[_]}),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 _=l.getContext(u.outlet);_&&this.deactivateChildRoutes(r,i,_.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=Tp(r);for(let _ of Object.values(o))this.deactivateRouteAndItsChildren(_,u);if(l&&l.outlet){let _=l.outlet.detach(),M=l.children.onOutletDeactivated();this.routeReuseStrategy.store(r.value.snapshot,{componentRef:_,route:r,contexts:M})}}deactivateRouteAndOutlet(r,i){let l=i.getContext(r.value.outlet),u=l&&r.value.component?l.children:i,o=Tp(r);for(let _ of Object.values(o))this.deactivateRouteAndItsChildren(_,u);l&&(l.outlet&&(l.outlet.deactivate(),l.children.onOutletDeactivated()),l.attachRef=null,l.route=null)}activateChildRoutes(r,i,l){let u=Tp(i);r.children.forEach(o=>{this.activateRoutes(o,u[o.value.outlet],l),this.forwardEvent(new K_(o.value.snapshot))}),r.children.length&&this.forwardEvent(new Z_(r.value.snapshot))}activateRoutes(r,i,l){let u=r.value,o=i?i.value:null;if(Nx(u),u===o)if(u.component){let _=l.getOrCreateContext(u.outlet);this.activateChildRoutes(r,i,_.children)}else this.activateChildRoutes(r,i,l);else if(u.component){let _=l.getOrCreateContext(u.outlet);if(this.routeReuseStrategy.shouldAttach(u.snapshot)){let M=this.routeReuseStrategy.retrieve(u.snapshot);this.routeReuseStrategy.store(u.snapshot,null),_.children.onOutletReAttached(M.contexts),_.attachRef=M.componentRef,_.route=M.route.value,_.outlet&&_.outlet.attach(M.componentRef,M.route.value),Nx(M.route.value),this.activateChildRoutes(r,null,_.children)}else _.attachRef=null,_.route=u,_.outlet&&_.outlet.activateWith(u,_.injector),this.activateChildRoutes(r,null,_.children)}else this.activateChildRoutes(r,null,l)}},t0=class{path;route;constructor(r){this.path=r,this.route=this.path[this.path.length-1]}},Pp=class{component;route;constructor(r,i){this.component=r,this.route=i}};function OV(t,r,i){let l=t._root,u=r?r._root:null;return Pg(l,u,i,[l.value])}function LV(t){let r=t.routeConfig?t.routeConfig.canActivateChild:null;return!r||r.length===0?null:{node:t,guards:r}}function zp(t,r){let i=Symbol(),l=r.get(t,i);return l===i?typeof t=="function"&&!rb(t)?t:r.get(t):l}function Pg(t,r,i,l,u={canDeactivateChecks:[],canActivateChecks:[]}){let o=Tp(r);return t.children.forEach(_=>{NV(_,o[_.value.outlet],i,l.concat([_.value]),u),delete o[_.value.outlet]}),Object.entries(o).forEach(([_,M])=>Rg(M,i.getContext(_),u)),u}function NV(t,r,i,l,u={canDeactivateChecks:[],canActivateChecks:[]}){let o=t.value,_=r?r.value:null,M=i?i.getContext(t.value.outlet):null;if(_&&o.routeConfig===_.routeConfig){let P=FV(_,o,o.routeConfig.runGuardsAndResolvers);P?u.canActivateChecks.push(new t0(l)):(o.data=_.data,o._resolvedData=_._resolvedData),o.component?Pg(t,r,M?M.children:null,l,u):Pg(t,r,i,l,u),P&&M&&M.outlet&&M.outlet.isActivated&&u.canDeactivateChecks.push(new Pp(M.outlet.component,_))}else _&&Rg(r,M,u),u.canActivateChecks.push(new t0(l)),o.component?Pg(t,null,M?M.children:null,l,u):Pg(t,null,i,l,u);return u}function FV(t,r,i){if(typeof i=="function")return i(t,r);switch(i){case"pathParamsChange":return!Vh(t.url,r.url);case"pathParamsOrQueryParamsChange":return!Vh(t.url,r.url)||!bc(t.queryParams,r.queryParams);case"always":return!0;case"paramsOrQueryParamsChange":return!Gx(t,r)||!bc(t.queryParams,r.queryParams);case"paramsChange":default:return!Gx(t,r)}}function Rg(t,r,i){let l=Tp(t),u=t.value;Object.entries(l).forEach(([o,_])=>{u.component?r?Rg(_,r.children.getContext(o),i):Rg(_,null,i):Rg(_,r,i)}),u.component?r&&r.outlet&&r.outlet.isActivated?i.canDeactivateChecks.push(new Pp(r.outlet.component,u)):i.canDeactivateChecks.push(new Pp(null,u)):i.canDeactivateChecks.push(new Pp(null,u))}function Gg(t){return typeof t=="function"}function zV(t){return typeof t=="boolean"}function jV(t){return t&&Gg(t.canLoad)}function BV(t){return t&&Gg(t.canActivate)}function VV(t){return t&&Gg(t.canActivateChild)}function UV(t){return t&&Gg(t.canDeactivate)}function $V(t){return t&&Gg(t.canMatch)}function xA(t){return t instanceof Zc||t?.name==="EmptyError"}var L_=Symbol("INITIAL_VALUE");function Lp(){return ao(t=>lc(t.map(r=>r.pipe(Gs(1),$1(L_)))).pipe(qn(r=>{for(let i of r)if(i!==!0){if(i===L_)return L_;if(i===!1||HV(i))return i}return!0}),Xi(r=>r!==L_),Gs(1)))}function HV(t){return Ap(t)||t instanceof Op}function GV(t,r){return No(i=>{let{targetSnapshot:l,currentSnapshot:u,guards:{canActivateChecks:o,canDeactivateChecks:_}}=i;return _.length===0&&o.length===0?Wn(fr($t({},i),{guardsResult:!0})):WV(_,l,u,t).pipe(No(M=>M&&zV(M)?qV(l,o,t,r):Wn(M)),qn(M=>fr($t({},i),{guardsResult:M})))})}function WV(t,r,i,l){return mi(t).pipe(No(u=>JV(u.component,u.route,i,r,l)),Yc(u=>u!==!0,!0))}function qV(t,r,i,l){return mi(r).pipe(Kf(u=>Yf(YV(u.route.parent,l),ZV(u.route,l),XV(t,u.path,i),KV(t,u.route,i))),Yc(u=>u!==!0,!0))}function ZV(t,r){return t!==null&&r&&r(new Y_(t)),Wn(!0)}function YV(t,r){return t!==null&&r&&r(new q_(t)),Wn(!0)}function KV(t,r,i){let l=r.routeConfig?r.routeConfig.canActivate:null;if(!l||l.length===0)return Wn(!0);let u=l.map(o=>Sm(()=>{let _=Np(r)??i,M=zp(o,_),P=BV(M)?M.canActivate(r,t):Ws(_,()=>M(r,t));return gu(P).pipe(Yc())}));return Wn(u).pipe(Lp())}function XV(t,r,i){let l=r[r.length-1],o=r.slice(0,r.length-1).reverse().map(_=>LV(_)).filter(_=>_!==null).map(_=>Sm(()=>{let M=_.guards.map(P=>{let Z=Np(_.node)??i,G=zp(P,Z),N=VV(G)?G.canActivateChild(l,t):Ws(Z,()=>G(l,t));return gu(N).pipe(Yc())});return Wn(M).pipe(Lp())}));return Wn(o).pipe(Lp())}function JV(t,r,i,l,u){let o=r&&r.routeConfig?r.routeConfig.canDeactivate:null;if(!o||o.length===0)return Wn(!0);let _=o.map(M=>{let P=Np(r)??u,Z=zp(M,P),G=UV(Z)?Z.canDeactivate(t,r,i,l):Ws(P,()=>Z(t,r,i,l));return gu(G).pipe(Yc())});return Wn(_).pipe(Lp())}function QV(t,r,i,l){let u=r.canLoad;if(u===void 0||u.length===0)return Wn(!0);let o=u.map(_=>{let M=zp(_,t),P=jV(M)?M.canLoad(r,i):Ws(t,()=>M(r,i));return gu(P)});return Wn(o).pipe(Lp(),CA(l))}function CA(t){return P1(Bi(r=>{if(typeof r!="boolean")throw e0(t,r)}),qn(r=>r===!0))}function e9(t,r,i,l){let u=r.canMatch;if(!u||u.length===0)return Wn(!0);let o=u.map(_=>{let M=zp(_,t),P=$V(M)?M.canMatch(r,i):Ws(t,()=>M(r,i));return gu(P)});return Wn(o).pipe(Lp(),CA(l))}var Vg=class{segmentGroup;constructor(r){this.segmentGroup=r||null}},Ug=class extends Error{urlTree;constructor(r){super(),this.urlTree=r}};function Dp(t){return Zf(new Vg(t))}function t9(t){return Zf(new ln(4e3,!1))}function n9(t){return Zf(bA(!1,ea.GuardRejected))}var Zx=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 Wn(l);if(u.numberOfChildren>1||!u.children[sr])return t9(`${r.redirectTo}`);u=u.children[sr]}}applyRedirectCommands(r,i,l,u,o){return r9(i,u,o).pipe(qn(_=>{if(_ instanceof xc)throw new Ug(_);let M=this.applyRedirectCreateUrlTree(_,this.urlSerializer.parse(_),r,l);if(_[0]==="/")throw new Ug(M);return M}))}applyRedirectCreateUrlTree(r,i,l,u){let o=this.createSegmentGroup(r,i.root,l,u);return new xc(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),_={};return Object.entries(i.children).forEach(([M,P])=>{_[M]=this.createSegmentGroup(r,P,l,u)}),new Vr(o,_)}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 ln(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 r9(t,r,i){if(typeof t=="string")return Wn(t);let l=t,{queryParams:u,fragment:o,routeConfig:_,url:M,outlet:P,params:Z,data:G,title:N}=r;return gu(Ws(i,()=>l({params:Z,data:G,queryParams:u,fragment:o,routeConfig:_,url:M,outlet:P,title:N})))}var Yx={matched:!1,consumedSegments:[],remainingSegments:[],parameters:{},positionalParamSegments:{}};function i9(t,r,i,l,u){let o=SA(t,r,i);return o.matched?(l=IV(r,l),e9(l,r,i,u).pipe(qn(_=>_===!0?o:$t({},Yx)))):Wn(o)}function SA(t,r,i){if(r.path==="**")return o9(i);if(r.path==="")return r.pathMatch==="full"&&(t.hasChildren()||i.length>0)?$t({},Yx):{matched:!0,consumedSegments:[],remainingSegments:i,parameters:{},positionalParamSegments:{}};let u=(r.matcher||QP)(i,t,r);if(!u)return $t({},Yx);let o={};Object.entries(u.posParams??{}).forEach(([M,P])=>{o[M]=P.path});let _=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:_,positionalParamSegments:u.posParams??{}}}function o9(t){return{matched:!0,parameters:t.length>0?tA(t).parameters:{},consumedSegments:t,remainingSegments:[],positionalParamSegments:{}}}function KP(t,r,i,l){return i.length>0&&l9(t,i,l)?{segmentGroup:new Vr(r,a9(l,new Vr(i,t.children))),slicedSegments:[]}:i.length===0&&c9(t,i,l)?{segmentGroup:new Vr(t.segments,s9(t,i,l,t.children)),slicedSegments:i}:{segmentGroup:new Vr(t.segments,t.children),slicedSegments:i}}function s9(t,r,i,l){let u={};for(let o of i)if(i0(t,r,o)&&!l[jl(o)]){let _=new Vr([],{});u[jl(o)]=_}return $t($t({},l),u)}function a9(t,r){let i={};i[sr]=r;for(let l of t)if(l.path===""&&jl(l)!==sr){let u=new Vr([],{});i[jl(l)]=u}return i}function l9(t,r,i){return i.some(l=>i0(t,r,l)&&jl(l)!==sr)}function c9(t,r,i){return i.some(l=>i0(t,r,l))}function i0(t,r,i){return(t.hasChildren()||r.length>0)&&i.pathMatch==="full"?!1:i.path===""}function u9(t,r,i){return r.length===0&&!t.children[i]}var Kx=class{};function d9(t,r,i,l,u,o,_="emptyOnly"){return new Xx(t,r,i,l,u,_,o).recognize()}var h9=31,Xx=class{injector;configLoader;rootComponentType;config;urlTree;paramsInheritanceStrategy;urlSerializer;applyRedirects;absoluteRedirectCount=0;allowRedirects=!0;constructor(r,i,l,u,o,_,M){this.injector=r,this.configLoader=i,this.rootComponentType=l,this.config=u,this.urlTree=o,this.paramsInheritanceStrategy=_,this.urlSerializer=M,this.applyRedirects=new Zx(this.urlSerializer,this.urlTree)}noMatchError(r){return new ln(4002,`'${r.segmentGroup}'`)}recognize(){let r=KP(this.urlTree.root,[],[],this.config).segmentGroup;return this.match(r).pipe(qn(({children:i,rootSnapshot:l})=>{let u=new Oa(l,i),o=new jg("",u),_=uA(l,[],this.urlTree.queryParams,this.urlTree.fragment);return _.queryParams=this.urlTree.queryParams,o.url=this.urlSerializer.serialize(_),{state:o,tree:_}}))}match(r){let i=new Uh([],Object.freeze({}),Object.freeze($t({},this.urlTree.queryParams)),this.urlTree.fragment,Object.freeze({}),sr,this.rootComponentType,null,{});return this.processSegmentGroup(this.injector,this.config,r,sr,i).pipe(qn(l=>({children:l,rootSnapshot:i})),od(l=>{if(l instanceof Ug)return this.urlTree=l.urlTree,this.match(l.urlTree.root);throw l instanceof Vg?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(qn(_=>_ instanceof Oa?[_]:[]))}processChildren(r,i,l,u){let o=[];for(let _ of Object.keys(l.children))_==="primary"?o.unshift(_):o.push(_);return mi(o).pipe(Kf(_=>{let M=l.children[_],P=DV(i,_);return this.processSegmentGroup(r,P,M,_,u)}),B1((_,M)=>(_.push(...M),_)),sd(null),j1(),No(_=>{if(_===null)return Dp(l);let M=EA(_);return f9(M),Wn(M)}))}processSegment(r,i,l,u,o,_,M){return mi(i).pipe(Kf(P=>this.processSegmentAgainstRoute(P._injector??r,i,P,l,u,o,_,M).pipe(od(Z=>{if(Z instanceof Vg)return Wn(null);throw Z}))),Yc(P=>!!P),od(P=>{if(xA(P))return u9(l,u,o)?Wn(new Kx):Dp(l);throw P}))}processSegmentAgainstRoute(r,i,l,u,o,_,M,P){return jl(l)!==_&&(_===sr||!i0(u,o,l))?Dp(u):l.redirectTo===void 0?this.matchSegmentAgainstRoute(r,u,l,o,_,P):this.allowRedirects&&M?this.expandSegmentAgainstRouteUsingRedirect(r,u,i,l,o,_,P):Dp(u)}expandSegmentAgainstRouteUsingRedirect(r,i,l,u,o,_,M){let{matched:P,parameters:Z,consumedSegments:G,positionalParamSegments:N,remainingSegments:X}=SA(i,u,o);if(!P)return Dp(i);typeof u.redirectTo=="string"&&u.redirectTo[0]==="/"&&(this.absoluteRedirectCount++,this.absoluteRedirectCount>h9&&(this.allowRedirects=!1));let K=new Uh(o,Z,Object.freeze($t({},this.urlTree.queryParams)),this.urlTree.fragment,XP(u),jl(u),u.component??u._loadedComponent??null,u,JP(u)),Q=Q_(K,M,this.paramsInheritanceStrategy);return K.params=Object.freeze(Q.params),K.data=Object.freeze(Q.data),this.applyRedirects.applyRedirectCommands(G,u.redirectTo,N,K,r).pipe(ao(le=>this.applyRedirects.lineralizeSegments(u,le)),No(le=>this.processSegment(r,l,i,le.concat(X),_,!1,M)))}matchSegmentAgainstRoute(r,i,l,u,o,_){let M=i9(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 G=l._loadedInjector??r,{parameters:N,consumedSegments:X,remainingSegments:K}=P,Q=new Uh(X,N,Object.freeze($t({},this.urlTree.queryParams)),this.urlTree.fragment,XP(l),jl(l),l.component??l._loadedComponent??null,l,JP(l)),te=Q_(Q,_,this.paramsInheritanceStrategy);Q.params=Object.freeze(te.params),Q.data=Object.freeze(te.data);let{segmentGroup:le,slicedSegments:j}=KP(i,X,K,Z);if(j.length===0&&le.hasChildren())return this.processChildren(G,Z,le,Q).pipe(qn(ve=>new Oa(Q,ve)));if(Z.length===0&&j.length===0)return Wn(new Oa(Q,[]));let re=jl(l)===o;return this.processSegment(G,Z,le,j,re?sr:o,!0,Q).pipe(qn(ve=>new Oa(Q,ve instanceof Oa?[ve]:[])))}))):Dp(i)))}getChildConfig(r,i,l){return i.children?Wn({routes:i.children,injector:r}):i.loadChildren?i._loadedRoutes!==void 0?Wn({routes:i._loadedRoutes,injector:i._loadedInjector}):QV(r,i,l,this.urlSerializer).pipe(No(u=>u?this.configLoader.loadChildren(r,i).pipe(Bi(o=>{i._loadedRoutes=o.routes,i._loadedInjector=o.injector})):n9(i))):Wn({routes:[],injector:r})}};function f9(t){t.sort((r,i)=>r.value.outlet===sr?-1:i.value.outlet===sr?1:r.value.outlet.localeCompare(i.value.outlet))}function p9(t){let r=t.value.routeConfig;return r&&r.path===""}function EA(t){let r=[],i=new Set;for(let l of t){if(!p9(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=EA(l.children);r.push(new Oa(l.value,u))}return r.filter(l=>!i.has(l))}function XP(t){return t.data||{}}function JP(t){return t.resolve||{}}function m9(t,r,i,l,u,o){return No(_=>d9(t,r,i,l,_.extractedUrl,u,o).pipe(qn(({state:M,tree:P})=>fr($t({},_),{targetSnapshot:M,urlAfterRedirects:P}))))}function g9(t,r){return No(i=>{let{targetSnapshot:l,guards:{canActivateChecks:u}}=i;if(!u.length)return Wn(i);let o=new Set(u.map(P=>P.route)),_=new Set;for(let P of o)if(!_.has(P))for(let Z of IA(P))_.add(Z);let M=0;return mi(_).pipe(Kf(P=>o.has(P)?y9(P,l,t,r):(P.data=Q_(P,P.parent,t).resolve,Wn(void 0))),Bi(()=>M++),Xf(1),No(P=>M===_.size?Wn(i):Ds))})}function IA(t){let r=t.children.map(i=>IA(i)).flat();return[t,...r]}function y9(t,r,i,l){let u=t.routeConfig,o=t._resolve;return u?.title!==void 0&&!yA(u)&&(o[$g]=u.title),Sm(()=>(t.data=Q_(t,t.parent,i).resolve,v9(o,t,r,l).pipe(qn(_=>(t._resolvedData=_,t.data=$t($t({},t.data),_),null)))))}function v9(t,r,i,l){let u=jx(t);if(u.length===0)return Wn({});let o={};return mi(u).pipe(No(_=>_9(t[_],r,i,l).pipe(Yc(),Bi(M=>{if(M instanceof Op)throw e0(new Hh,M);o[_]=M}))),Xf(1),qn(()=>o),od(_=>xA(_)?Ds:Zf(_)))}function _9(t,r,i,l){let u=Np(r)??l,o=zp(t,u),_=o.resolve?o.resolve(r,i):Ws(u,()=>o(r,i));return gu(_)}function Fx(t){return ao(r=>{let i=t(r);return i?mi(i).pipe(qn(()=>r)):Wn(r)})}var tC=(()=>{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===sr);return l}getResolvedTitleForRoute(i){return i.data[$g]}static \u0275fac=function(l){return new(l||t)};static \u0275prov=qt({token:t,factory:()=>Be(DA),providedIn:"root"})}return t})(),DA=(()=>{class t extends tC{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)(nr(SM))};static \u0275prov=qt({token:t,factory:t.\u0275fac,providedIn:"root"})}return t})(),Wg=new kn("",{providedIn:"root",factory:()=>({})}),qg=new kn(""),TA=(()=>{class t{componentLoaders=new WeakMap;childrenLoaders=new WeakMap;onLoadStartListener;onLoadEndListener;compiler=Be(ww);loadComponent(i,l){if(this.componentLoaders.get(l))return this.componentLoaders.get(l);if(l._loadedComponent)return Wn(l._loadedComponent);this.onLoadStartListener&&this.onLoadStartListener(l);let u=gu(Ws(i,()=>l.loadComponent())).pipe(qn(PA),ao(AA),Bi(_=>{this.onLoadEndListener&&this.onLoadEndListener(l),l._loadedComponent=_}),Em(()=>{this.componentLoaders.delete(l)})),o=new Wf(u,()=>new Gr).pipe(Gf());return this.componentLoaders.set(l,o),o}loadChildren(i,l){if(this.childrenLoaders.get(l))return this.childrenLoaders.get(l);if(l._loadedRoutes)return Wn({routes:l._loadedRoutes,injector:l._loadedInjector});this.onLoadStartListener&&this.onLoadStartListener(l);let o=MA(l,this.compiler,i,this.onLoadEndListener).pipe(Em(()=>{this.childrenLoaders.delete(l)})),_=new Wf(o,()=>new Gr).pipe(Gf());return this.childrenLoaders.set(l,_),_}static \u0275fac=function(l){return new(l||t)};static \u0275prov=qt({token:t,factory:t.\u0275fac,providedIn:"root"})}return t})();function MA(t,r,i,l){return gu(Ws(i,()=>t.loadChildren())).pipe(qn(PA),ao(AA),No(u=>u instanceof Qv||Array.isArray(u)?Wn(u):mi(r.compileModuleAsync(u))),qn(u=>{l&&l(t);let o,_,M=!1;return Array.isArray(u)?(_=u,M=!0):(o=u.create(i).injector,_=o.get(qg,[],{optional:!0,self:!0}).flat()),{routes:_.map(eC),injector:o}}))}function b9(t){return t&&typeof t=="object"&&"default"in t}function PA(t){return b9(t)?t.default:t}function AA(t){return Wn(t)}var o0=(()=>{class t{static \u0275fac=function(l){return new(l||t)};static \u0275prov=qt({token:t,factory:()=>Be(w9),providedIn:"root"})}return t})(),w9=(()=>{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=qt({token:t,factory:t.\u0275fac,providedIn:"root"})}return t})(),kA=new kn("");var RA=new kn(""),OA=(()=>{class t{currentNavigation=null;currentTransition=null;lastSuccessfulNavigation=null;events=new Gr;transitionAbortWithErrorSubject=new Gr;configLoader=Be(TA);environmentInjector=Be(ms);destroyRef=Be(Ks);urlSerializer=Be(Hg);rootContexts=Be(Fp);location=Be(wp);inputBindingEnabled=Be(r0,{optional:!0})!==null;titleStrategy=Be(tC);options=Be(Wg,{optional:!0})||{};paramsInheritanceStrategy=this.options.paramsInheritanceStrategy||"emptyOnly";urlHandlingStrategy=Be(o0);createViewTransition=Be(kA,{optional:!0});navigationErrorHandler=Be(RA,{optional:!0});navigationId=0;get hasRequestedNavigation(){return this.navigationId!==0}transitions;afterPreactivation=()=>Wn(void 0);rootComponentType=null;destroyed=!1;constructor(){let i=u=>this.events.next(new G_(u)),l=u=>this.events.next(new W_(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(fr($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 Di(null),this.transitions.pipe(Xi(l=>l!==null),ao(l=>{let u=!1;return Wn(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?fr($t({},this.lastSuccessfulNavigation),{previousNavigation:null}):null,abort:()=>o.abortController.abort()};let _=!i.navigated||this.isUpdatingInternalState()||this.isUpdatedBrowserUrl(),M=o.extras.onSameUrlNavigation??i.onSameUrlNavigation;if(!_&&M!=="reload"){let P="";return this.events.next(new mu(o.id,this.urlSerializer.serialize(o.rawUrl),P,Lg.IgnoredSameUrlNavigation)),o.resolve(!1),Ds}if(this.urlHandlingStrategy.shouldProcessUrl(o.rawUrl))return Wn(o).pipe(ao(P=>(this.events.next(new Gh(P.id,this.urlSerializer.serialize(P.extractedUrl),P.source,P.restoredState)),P.id!==this.navigationId?Ds:Promise.resolve(P))),m9(this.environmentInjector,this.configLoader,this.rootComponentType,i.config,this.urlSerializer,this.paramsInheritanceStrategy),Bi(P=>{l.targetSnapshot=P.targetSnapshot,l.urlAfterRedirects=P.urlAfterRedirects,this.currentNavigation=fr($t({},this.currentNavigation),{finalUrl:P.urlAfterRedirects});let Z=new Ng(P.id,this.urlSerializer.serialize(P.extractedUrl),this.urlSerializer.serialize(P.urlAfterRedirects),P.targetSnapshot);this.events.next(Z)}));if(_&&this.urlHandlingStrategy.shouldProcessUrl(o.currentRawUrl)){let{id:P,extractedUrl:Z,source:G,restoredState:N,extras:X}=o,K=new Gh(P,this.urlSerializer.serialize(Z),G,N);this.events.next(K);let Q=mA(this.rootComponentType).snapshot;return this.currentTransition=l=fr($t({},o),{targetSnapshot:Q,urlAfterRedirects:Z,extras:fr($t({},X),{skipLocationChange:!1,replaceUrl:!1})}),this.currentNavigation.finalUrl=Z,Wn(l)}else{let P="";return this.events.next(new mu(o.id,this.urlSerializer.serialize(o.extractedUrl),P,Lg.IgnoredByUrlHandlingStrategy)),o.resolve(!1),Ds}}),Bi(o=>{let _=new V_(o.id,this.urlSerializer.serialize(o.extractedUrl),this.urlSerializer.serialize(o.urlAfterRedirects),o.targetSnapshot);this.events.next(_)}),qn(o=>(this.currentTransition=l=fr($t({},o),{guards:OV(o.targetSnapshot,o.currentSnapshot,this.rootContexts)}),l)),GV(this.environmentInjector,o=>this.events.next(o)),Bi(o=>{if(l.guardsResult=o.guardsResult,o.guardsResult&&typeof o.guardsResult!="boolean")throw e0(this.urlSerializer,o.guardsResult);let _=new U_(o.id,this.urlSerializer.serialize(o.extractedUrl),this.urlSerializer.serialize(o.urlAfterRedirects),o.targetSnapshot,!!o.guardsResult);this.events.next(_)}),Xi(o=>o.guardsResult?!0:(this.cancelNavigationTransition(o,"",ea.GuardRejected),!1)),Fx(o=>{if(o.guards.canActivateChecks.length!==0)return Wn(o).pipe(Bi(_=>{let M=new $_(_.id,this.urlSerializer.serialize(_.extractedUrl),this.urlSerializer.serialize(_.urlAfterRedirects),_.targetSnapshot);this.events.next(M)}),ao(_=>{let M=!1;return Wn(_).pipe(g9(this.paramsInheritanceStrategy,this.environmentInjector),Bi({next:()=>M=!0,complete:()=>{M||this.cancelNavigationTransition(_,"",ea.NoDataFromResolver)}}))}),Bi(_=>{let M=new H_(_.id,this.urlSerializer.serialize(_.extractedUrl),this.urlSerializer.serialize(_.urlAfterRedirects),_.targetSnapshot);this.events.next(M)}))}),Fx(o=>{let _=M=>{let P=[];if(M.routeConfig?.loadComponent&&!M.routeConfig._loadedComponent){let Z=Np(M)??this.environmentInjector;P.push(this.configLoader.loadComponent(Z,M.routeConfig).pipe(Bi(G=>{M.component=G}),qn(()=>{})))}for(let Z of M.children)P.push(..._(Z));return P};return lc(_(o.targetSnapshot.root)).pipe(sd(null),Gs(1))}),Fx(()=>this.afterPreactivation()),ao(()=>{let{currentSnapshot:o,targetSnapshot:_}=l,M=this.createViewTransition?.(this.environmentInjector,o.root,_.root);return M?mi(M).pipe(qn(()=>l)):Wn(l)}),qn(o=>{let _=MV(i.routeReuseStrategy,o.targetSnapshot,o.currentRouterState);return this.currentTransition=l=fr($t({},o),{targetRouterState:_}),this.currentNavigation.targetRouterState=_,l}),Bi(()=>{this.events.next(new Fg)}),RV(this.rootContexts,i.routeReuseStrategy,o=>this.events.next(o),this.inputBindingEnabled),Gs(1),ca(new Sr(o=>{let _=l.abortController.signal,M=()=>o.next();return _.addEventListener("abort",M),()=>_.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 pu(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}))),Em(()=>{u||this.cancelNavigationTransition(l,"",ea.SupersededByNewNavigation),this.currentTransition?.id===l.id&&(this.currentNavigation=null,this.currentTransition=null)}),od(o=>{if(this.destroyed)return l.resolve(!1),Ds;if(u=!0,wA(o))this.events.next(new wc(l.id,this.urlSerializer.serialize(l.extractedUrl),o.message,o.cancellationCode)),kV(o)?this.events.next(new Rp(o.url,o.navigationBehaviorOptions)):l.resolve(!1);else{let _=new kp(l.id,this.urlSerializer.serialize(l.extractedUrl),o,l.targetSnapshot??void 0);try{let M=Ws(this.environmentInjector,()=>this.navigationErrorHandler?.(_));if(M instanceof Op){let{message:P,cancellationCode:Z}=e0(this.urlSerializer,M);this.events.next(new wc(l.id,this.urlSerializer.serialize(l.extractedUrl),P,Z)),this.events.next(new Rp(M.redirectTo,M.navigationBehaviorOptions))}else throw this.events.next(_),o}catch(M){this.options.resolveNavigationPromiseOnError?l.resolve(!1):l.reject(M)}}return Ds}))}))}cancelNavigationTransition(i,l,u){let o=new wc(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=qt({token:t,factory:t.\u0275fac,providedIn:"root"})}return t})();function x9(t){return t!==kg}var LA=(()=>{class t{static \u0275fac=function(l){return new(l||t)};static \u0275prov=qt({token:t,factory:()=>Be(C9),providedIn:"root"})}return t})(),n0=class{shouldDetach(r){return!1}store(r,i){}shouldAttach(r){return!1}retrieve(r){return null}shouldReuseRoute(r,i){return r.routeConfig===i.routeConfig}},C9=(()=>{class t extends n0{static \u0275fac=(()=>{let i;return function(u){return(i||(i=pp(t)))(u||t)}})();static \u0275prov=qt({token:t,factory:t.\u0275fac,providedIn:"root"})}return t})(),NA=(()=>{class t{urlSerializer=Be(Hg);options=Be(Wg,{optional:!0})||{};canceledNavigationResolution=this.options.canceledNavigationResolution||"replace";location=Be(wp);urlHandlingStrategy=Be(o0);urlUpdateStrategy=this.options.urlUpdateStrategy||"deferred";currentUrlTree=new xc;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,_=u??o;return _ instanceof xc?this.urlSerializer.serialize(_):_}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=mA(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=qt({token:t,factory:()=>Be(S9),providedIn:"root"})}return t})(),S9=(()=>{class t extends NA{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 Gh?this.updateStateMemento():i instanceof mu?this.commitTransition(l):i instanceof Ng?this.urlUpdateStrategy==="eager"&&(l.extras.skipLocationChange||this.setBrowserUrl(this.createBrowserPath(l),l)):i instanceof Fg?(this.commitTransition(l),this.urlUpdateStrategy==="deferred"&&!l.extras.skipLocationChange&&this.setBrowserUrl(this.createBrowserPath(l),l)):i instanceof wc&&i.code!==ea.SupersededByNewNavigation&&i.code!==ea.Redirect?this.restoreHistory(l):i instanceof kp?this.restoreHistory(l,!0):i instanceof pu&&(this.lastSuccessfulId=i.id,this.currentPageId=this.browserPageId)}setBrowserUrl(i,{extras:l,id:u}){let{replaceUrl:o,state:_}=l;if(this.location.isCurrentPathEqualTo(i)||o){let M=this.browserPageId,P=$t($t({},_),this.generateNgRouterState(u,M));this.location.replaceState(i,"",P)}else{let M=$t($t({},_),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=pp(t)))(u||t)}})();static \u0275prov=qt({token:t,factory:t.\u0275fac,providedIn:"root"})}return t})();function nC(t,r){t.events.pipe(Xi(i=>i instanceof pu||i instanceof wc||i instanceof kp||i instanceof mu),qn(i=>i instanceof pu||i instanceof mu?0:(i instanceof wc?i.code===ea.Redirect||i.code===ea.SupersededByNewNavigation:!1)?2:1),Xi(i=>i!==2),Gs(1)).subscribe(()=>{r()})}var E9={paths:"exact",fragment:"ignored",matrixParams:"ignored",queryParams:"exact"},I9={paths:"subset",fragment:"ignored",matrixParams:"ignored",queryParams:"subset"},Dd=(()=>{class t{get currentUrlTree(){return this.stateManager.getCurrentUrlTree()}get rawUrlTree(){return this.stateManager.getRawUrlTree()}disposed=!1;nonRouterCurrentEntryChangeSubscription;console=Be(e_);stateManager=Be(NA);options=Be(Wg,{optional:!0})||{};pendingTasks=Be(eu);urlUpdateStrategy=this.options.urlUpdateStrategy||"deferred";navigationTransitions=Be(OA);urlSerializer=Be(Hg);location=Be(wp);urlHandlingStrategy=Be(o0);injector=Be(ms);_events=new Gr;get events(){return this._events}get routerState(){return this.stateManager.getRouterState()}navigated=!1;routeReuseStrategy=Be(LA);onSameUrlNavigation=this.options.onSameUrlNavigation||"ignore";config=Be(qg,{optional:!0})?.flat()??[];componentInputBindingEnabled=!!Be(r0,{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 wc&&l.code!==ea.Redirect&&l.code!==ea.SupersededByNewNavigation)this.navigated=!0;else if(l instanceof pu)this.navigated=!0;else if(l instanceof Rp){let _=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"||x9(u.source)},_);this.scheduleNavigation(M,kg,null,P,{resolve:u.resolve,reject:u.reject,promise:u.promise})}}EV(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),kg,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},_=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,_,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(eC),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:_,queryParamsHandling:M,preserveFragment:P}=l,Z=P?this.currentUrlTree.fragment:_,G=null;switch(M??this.options.defaultQueryParamsHandling){case"merge":G=$t($t({},this.currentUrlTree.queryParams),o);break;case"preserve":G=this.currentUrlTree.queryParams;break;default:G=o||null}G!==null&&(G=this.removeEmptyProps(G));let N;try{let X=u?u.snapshot:this.routerState.snapshot.root;N=dA(X)}catch{(typeof i[0]!="string"||i[0][0]!=="/")&&(i=[]),N=this.currentUrlTree.root}return hA(N,i,G,Z??null)}navigateByUrl(i,l={skipLocationChange:!1}){let u=Ap(i)?i:this.parseUrl(i),o=this.urlHandlingStrategy.merge(u,this.rawUrlTree);return this.scheduleNavigation(o,kg,null,l)}navigate(i,l={skipLocationChange:!1}){return D9(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({},E9):l===!1?u=$t({},I9):u=l,Ap(i))return WP(this.currentUrlTree,i,u);let o=this.parseUrl(i);return WP(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,_){if(this.disposed)return Promise.resolve(!1);let M,P,Z;_?(M=_.resolve,P=_.reject,Z=_.promise):Z=new Promise((N,X)=>{M=N,P=X});let G=this.pendingTasks.add();return nC(this,()=>{queueMicrotask(()=>this.pendingTasks.remove(G))}),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=qt({token:t,factory:t.\u0275fac,providedIn:"root"})}return t})();function D9(t){for(let r=0;r<t.length;r++)if(t[r]==null)throw new ln(4008,!1)}var P9=new kn("");function rC(t,...r){return dd([{provide:qg,multi:!0,useValue:t},[],{provide:el,useFactory:A9,deps:[Dd]},{provide:t_,multi:!0,useFactory:k9},r.map(i=>i.\u0275providers)])}function A9(t){return t.routerState.root}function k9(){let t=Be(Yo);return r=>{let i=t.get(Ll);if(r!==i.components[0])return;let l=t.get(Dd),u=t.get(R9);t.get(O9)===1&&l.initialNavigation(),t.get(L9,null,{optional:!0})?.setUpPreloading(),t.get(P9,null,{optional:!0})?.init(),l.resetRootComponentType(i.componentTypes[0]),u.closed||(u.next(),u.complete(),u.unsubscribe())}}var R9=new kn("",{factory:()=>new Gr}),O9=new kn("",{providedIn:"root",factory:()=>1});var L9=new kn("");var Vo=class t{logger=Be(mr);router=Be(Dd);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=qt({token:t,factory:t.\u0275fac})};function iC(t){return k_(t)}var F9={"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 s0(t){let r=F9[t];return r||["fak","shopping"]}var sC={};WS(sC,{faAirport:()=>z9,faArrowTopRight:()=>j9,faBackground:()=>oC,faBeauty:()=>B9,faCenter:()=>V9,faCompass:()=>U9,faCompassNorth:()=>$9,faDeals:()=>H9,faEvents:()=>G9,faFoodAndBeverage:()=>W9,faHealth:()=>q9,faHotels:()=>Z9,faParking:()=>Y9,faRoute:()=>K9,faServices:()=>X9,faShopping:()=>J9,faUser:()=>Q9});var z9={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"]},j9={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"]},oC={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"]},B9={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"]},V9={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"]},U9={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"]},$9={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"]},H9={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"]},G9={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"]},W9={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"]},q9={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"]},Z9={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"]},Y9={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"]},K9={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"]},X9={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"]},J9={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"]},Q9={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 ha=class t{onDestroy=new Gr;logger=Be(mr);mapService=Be(Co);navigatorService=Be(Vo);loadedDataService=Be(Xo);iconLibraryService=Be(wr);document=Be(bi);markers=new Set;ngOnDestroy(){this.onDestroy.next(),this.onDestroy.complete()}getIconFromPlace(r){this.logger.log("getIconFromPlace",r);let[i,l]=s0(r.localizedCategory||"");return this.iconLibraryService.getIconDefinition(i,l)}toSVGString(r){return kx(i=>{i(iC(oC)),i(iC(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=qt({token:t,factory:t.\u0275fac})};var FA={fas:{},fak:{}},aC=[];function zA(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"&&(FA[i.prefix][u]=i)}),FA[i.prefix][i.iconName]=i,aC.push(i)}})}zA(Qw);zA(sC);var l0=qS(Yw());var a0=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=Be(Dd);navigatorService=Be(Vo);locationStrategy=Be(yc);platformId=Be(pc);logger=Be(mr);sdkService=Be(da);loadedDataService=Be(Xo);homeStateService=Be(Ui);iconLibrary=Be(Tg);isInitialized=!1;isConnected=!1;static instanceCount=0;static hasBeenConnected=!1;constructor(){this.loadIcons(),vr(()=>{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())}),vr(()=>{this.homeStateService.hideDeals.set(this.hideDeals())}),vr(()=>{let r=this.initialData();r&&r.trim()!==""&&this.processInitialData(r)}),vr(()=>{this.homeStateService.showCategoryFilters.set(this.showCategoryFilters())}),vr(()=>{this.homeStateService.showCityFilter.set(this.showCityFilter())}),vr(()=>{let r=this.defaultToMap();this.logger.log("====> defaultToMap input",r),this.homeStateService.defaultToMap.set(r)})}ngOnInit(){wd(this.platformId)?this.handleInstanceTracking():this.logger.log("\u{1F5A5}\uFE0F Componente inicializado en servidor (SSR)")}loadIcons(){this.iconLibrary.addIcons(...aC)}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 l0.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 l0.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=wd(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(){wd(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=wd(this.platformId)?10:50;setTimeout(()=>{this.checkAndFixRouterSync()},r)}checkAndFixRouterSync(){if(!wd(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=En({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:[s_([Vo,Ui,ha,wr,vc])],decls:4,vars:2,consts:[[1,"named-container"],[1,"app-container"],[1,"app-content"]],template:function(i,l){i&1&&(pt(0,"div",0)(1,"div",1)(2,"div",2),Bt(3,"router-outlet"),yt()()()),i&2&&(gt(),Vi("inherit-font-family",l.inheritFontFamily()))},dependencies:[R_,Wh],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 c0=class t extends yc{_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=qt({token:t,factory:t.\u0275fac,providedIn:"root"})};function jA(t,r){let i=r?.injector??Be(Yo),l=new Ma(1),u=vr(()=>{let o;try{o=t()}catch(_){Nl(()=>l.error(_));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)??Be(Ks):null,u=eU(r?.equal),o;r?.requireSync?o=cr({kind:0},{equal:u}):o=cr({kind:1,value:r?.initialValue},{equal:u});let _,M=t.subscribe({next:P=>o.set({kind:1,value:P}),error:P=>{o.set({kind:2,error:P}),_?.()},complete:()=>{_?.()}});if(r?.requireSync&&o().kind===0)throw new ln(601,!1);return _=l?.onDestroy(M.unsubscribe.bind(M)),On(()=>{let P=o();switch(P.kind){case 1:return P.value;case 2:throw P.error;case 0:throw new ln(601,!1)}},{equal:r?.equal})}function eU(t=Object.is){return(r,i)=>r.kind===1&&i.kind===1&&t(r.value,i.value)}var tU=["categoryFilters"];function nU(t,r){if(t&1){let i=Qr();pt(0,"button",14),xn("click",function(){Nr(i);let u=cn();return Fr(u.onClearInput())}),Bt(1,"fa-icon",6),yt()}if(t&2){let i=cn();gt(),Yt("icon",i.faXmark)}}function rU(t,r){if(t&1&&Bt(0,"fa-icon",6),t&2){let i=cn(2);Yt("icon",i.faCaretUp)}}function iU(t,r){if(t&1&&Bt(0,"fa-icon",6),t&2){let i=cn(2);Yt("icon",i.faCaretDown)}}function oU(t,r){if(t&1){let i=Qr();pt(0,"button",21),xn("click",function(){let u=Nr(i).$implicit,o=cn(3);return Fr(o.onCitySelect(u))}),_n(1),yt()}if(t&2){let i=r.$implicit,l=cn(3);Vi("selected",i===l.selectedCity()),gt(),Bo(" ",i," ")}}function sU(t,r){if(t&1&&(pt(0,"div",19),zo(1,oU,2,3,"button",20,Rh),yt()),t&2){let i=cn(2);gt(),jo(i.citiesOptions())}}function aU(t,r){if(t&1){let i=Qr();pt(0,"div",9)(1,"button",15),xn("click",function(){Nr(i);let u=cn();return Fr(u.onCityFilterClick())}),Bt(2,"fa-icon",6),yt(),pt(3,"button",16),xn("click",function(){Nr(i);let u=cn();return Fr(u.onCityFilterClick())}),pt(4,"span",17),_n(5),yt(),pt(6,"div",18),ur(7,rU,1,1,"fa-icon",6)(8,iU,1,1,"fa-icon",6),yt()(),ur(9,sU,3,0,"div",19),yt()}if(t&2){let i=cn();gt(),Vi("active",i.isCityDropdownOpen()),gt(),Yt("icon",i.faFilter),gt(3),gs(i.selectedCity()),gt(2),dr(i.isCityDropdownOpen()?7:8),gt(2),dr(i.isCityDropdownOpen()?9:-1)}}var u0=class t{logger=Be(mr);stateService=Be(Ui);mapService=Be(Co);navigatorService=Be(Vo);iconLibrary=Be(wr);categoryFilters;activeView=On(()=>this.stateService.activeView());showCityFilter=On(()=>this.stateService.showCityFilter());inputValue=On(()=>this.stateService.inputValue());citiesOptions=On(()=>["All cities","Detroit",...[]]);selectedCity=Js(()=>this.citiesOptions()[0]);isCityDropdownOpen=cr(!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(){vr(()=>{let r=this.selectedCity();this.stateService.selectedCity.set(r)}),vr(()=>{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=En({type:t,selectors:[["app-home-screen"]],viewQuery:function(i,l){if(i&1&&Oh(tU,5),i&2){let u;Lh(u=Nh())&&(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&&(pt(0,"div",0)(1,"div",1)(2,"div",2)(3,"div",3)(4,"div",4)(5,"div",5),Bt(6,"fa-icon",6),yt(),pt(7,"input",7),xn("input",function(o){return l.onInputChange(o)}),yt(),ur(8,nU,2,1,"button",8),yt(),ur(9,aU,10,6,"div",9),yt(),pt(10,"div",10)(11,"button",11),xn("click",function(){return l.onGridClick()}),pt(12,"div",12),Bt(13,"fa-icon",6),yt(),pt(14,"span"),_n(15,"Grid View"),yt()(),pt(16,"button",11),xn("click",function(){return l.onMapClick()}),pt(17,"div",12),Bt(18,"fa-icon",6),yt(),pt(19,"span"),_n(20,"Map View"),yt()()()()(),pt(21,"div",13),Bt(22,"router-outlet"),yt()()),i&2&&(gt(4),Vi("active",l.inputValue()!==""),gt(2),Yt("icon",l.faMagnifyingGlass),gt(),Yt("value",l.inputValue()),gt(),dr(l.inputValue()!==""?8:-1),gt(),dr(l.showCityFilter()?9:-1),gt(2),Vi("active",l.activeView()==="grid"),gt(2),Yt("icon",l.faGrid2),gt(3),Vi("active",l.activeView()==="map"),gt(2),Yt("icon",l.faMapLocationDot))},dependencies:[qr,Wh],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})};function d0(t){return t.tags?.includes("deals")||t.tags?.includes("events")}function lU(t,r){t&1&&(gc(0,"div",3),_n(1,"Deals + Events"),au())}var h0=class t{navigatorService=Be(Vo);homeStateService=Be(Ui);place=kr.required();hasDealsOrEvents=On(()=>this.place().banners.filter(d0).length>0);hideDeals=On(()=>this.homeStateService.hideDeals());navigateToProfile(){this.navigatorService.navigateToProfile(this.place().lazarilloId)}static \u0275fac=function(i){return new(i||t)};static \u0275cmp=En({type:t,selectors:[["app-location-card"]],inputs:{place:[1,"place"]},decls:11,vars:6,consts:[[1,"location-card",3,"click"],[1,"card-image"],[3,"src","alt"],[1,"card-deals-or-events"],[1,"card-content"],[1,"location-name"],[1,"location-address"],[1,"location-category"]],template:function(i,l){i&1&&(gc(0,"button",0),r_("click",function(){return l.navigateToProfile()}),gc(1,"div",1),n_(2,"img",2),ur(3,lU,2,0,"div",3),au(),gc(4,"div",4)(5,"h3",5),_n(6),au(),gc(7,"p",6),_n(8),au(),gc(9,"span",7),_n(10),au()()()),i&2&&(gt(2),_p("src",l.place().images[0],Ph)("alt",l.place().title),gt(),dr(l.hasDealsOrEvents()&&!l.hideDeals()?3:-1),gt(3),gs(l.place().title),gt(2),gs(l.place().address),gt(2),gs(l.place().localizedCategory))},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}.location-card[_ngcontent-%COMP%]:hover{cursor:pointer}.card-image[_ngcontent-%COMP%]{width:227px;height:227px;overflow:hidden;position:relative}@container mapvx-container (width <= 640px){.card-image[_ngcontent-%COMP%]{width:160px;height:160px}}.card-image[_ngcontent-%COMP%] img[_ngcontent-%COMP%]{width:100%;height:100%;object-fit:cover;display:block;transition:transform .4s ease}.card-image[_ngcontent-%COMP%] img[_ngcontent-%COMP%]:hover{transform:scale(1.2)}.card-image[_ngcontent-%COMP%] .card-deals-or-events[_ngcontent-%COMP%]{position:absolute;bottom:0;left:0;width:100%;background-color:var(--definitions-colors-secondary-orange);color:var(--definitions-colors-text-white);display:flex;padding:5px;justify-content:center;align-items:center;gap:8.462px;flex-shrink:0;font:var(--definitions-textFonts-desktop-body-4);font-family:inherit}.card-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-sub-5);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 cU=["*"];function uU(t,r){if(t&1&&Bt(0,"app-location-card",2),t&2){let i=r.$implicit;Yt("place",i)}}function dU(t,r){t&1&&cu(0)}function hU(t,r){if(t&1){let i=Qr();pt(0,"button",6),xn("click",function(){Nr(i);let u=cn(3);return Fr(u.previousPage())}),Bt(1,"fa-icon",7),yt()}if(t&2){let i=cn(3);gt(),Yt("icon",i.faChevronLeft)}}function fU(t,r){if(t&1&&ur(0,hU,2,1,"button",5),t&2){let i=cn().$implicit,l=cn();dr(i<l.currentPageIndex()?0:-1)}}function pU(t,r){t&1&&(pt(0,"button",8),_n(1,"..."),yt())}function mU(t,r){if(t&1){let i=Qr();pt(0,"button",10),xn("click",function(){Nr(i);let u=cn(3);return Fr(u.nextPage())}),Bt(1,"fa-icon",7),yt()}if(t&2){let i=cn(3);gt(),Yt("icon",i.faChevronRight)}}function gU(t,r){if(t&1&&(ur(0,pU,2,0,"button",8),ur(1,mU,2,1,"button",9)),t&2){let i=cn().$implicit,l=cn();dr(i<l.totalPages()?0:-1),gt(),dr(i>l.currentPageIndex()?1:-1)}}function yU(t,r){if(t&1){let i=Qr();ur(0,fU,1,1),pt(1,"button",4),xn("click",function(){let u=Nr(i).$implicit,o=cn();return Fr(o.currentPageIndex.set(u))}),_n(2),yt(),ur(3,gU,2,2)}if(t&2){let i=r.$implicit,l=r.$index,u=r.$count,o=cn();dr(l===0?0:-1),gt(),Vi("active",o.currentPageIndex()===i),gt(),Bo(" ",i," "),gt(),dr(l===u-1?3:-1)}}var jp=class t{stateService=Be(Ui);iconLibrary=Be(wr);faChevronLeft=this.iconLibrary.getIconDefinition("fas","chevron-left");faChevronRight=this.iconLibrary.getIconDefinition("fas","chevron-right");places=kr.required();itemsPerPage=kr.required();currentPageIndex=cr(1);totalPages=On(()=>Math.ceil(this.places().length/this.itemsPerPage()));pages=On(()=>{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=On(()=>{let r=this.places(),i=this.itemsPerPage(),l=this.currentPageIndex();return r.slice((l-1)*i,l*i)});showMap=On(()=>this.stateService.activeView()==="map");constructor(){vr(()=>{this.places(),this.currentPageIndex.set(1)})}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=En({type:t,selectors:[["app-paginator"]],inputs:{places:[1,"places"],itemsPerPage:[1,"itemsPerPage"]},ngContentSelectors:cU,decls:8,vars:5,consts:[[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&&(lu(),pt(0,"div",0)(1,"div",1),zo(2,uU,1,1,"app-location-card",2,Qa,!1,dU,1,0),yt(),pt(5,"div",3),zo(6,yU,4,5,null,null,Rh),yt()()),i&2&&(Vi("with-map",l.showMap()),gt(),Vi("with-map",l.showMap()),gt(),jo(l.currentPagePlaces()),gt(4),jo(l.pages()))},dependencies:[h0,qr],styles:['.paginator[_ngcontent-%COMP%]{display:flex;flex-direction:column;align-items:center;gap:36px}.paginator.with-map[_ngcontent-%COMP%]{height:730px}.paginator-places[_ngcontent-%COMP%]{min-height:696px;display:flex;align-items:flex-start;align-content:flex-start;gap:24px 13px;align-self:stretch;flex-wrap:wrap}.paginator-places.with-map[_ngcontent-%COMP%]{gap:16px 8px;flex-shrink:0}.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 f0=class t{onDestroy=new Gr;iconLibrary=Be(wr);mapService=Be(Co);logger=Be(mr);loadedDataService=Be(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=En({type:t,selectors:[["app-center-map-button"]],decls:2,vars:1,consts:[[1,"button",3,"click"],[3,"icon"]],template:function(i,l){i&1&&(pt(0,"button",0),xn("click",function(){return l.onClick()}),Bt(1,"fa-icon",1),yt()),i&2&&(gt(),Yt("icon",l.faCenter))},dependencies:[qr],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 vU=t=>({rotate:t}),p0=class t{mapService=Be(Co);iconLibrary=Be(wr);rotation=ys(this.mapService.rotation.asObservable().pipe(qn(r=>360-r)),{initialValue:0});faCompass=this.iconLibrary.getIconDefinition("fak","compass");static \u0275fac=function(i){return new(i||t)};static \u0275cmp=En({type:t,selectors:[["app-compass-button"]],decls:2,vars:4,consts:[[1,"button"],[3,"icon","transform"]],template:function(i,l){i&1&&(pt(0,"button",0),Bt(1,"fa-icon",1),yt()),i&2&&(gt(),Yt("icon",l.faCompass)("transform",bw(2,vU,l.rotation())))},dependencies:[qr],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 Bp=class t{sdkService=Be(da);logger=Be(mr);currentlyWatchingLocation=cr(!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(p_(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=qt({token:t,factory:t.\u0275fac,providedIn:"root"})};var m0=class t{iconLibrary=Be(wr);locationService=Be(Bp);logger=Be(mr);locationPermission=cr("prompt");active=On(()=>this.locationService.currentlyWatchingLocation());faLocation=this.iconLibrary.getIconDefinition("fas","location-arrow");constructor(){this.checkLocationPermission(),vr(()=>{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=En({type:t,selectors:[["app-location-button"]],decls:2,vars:3,consts:[[1,"button",3,"click"],[3,"icon"]],template:function(i,l){i&1&&(pt(0,"button",0),xn("click",function(){return l.onClick()}),Bt(1,"fa-icon",1),yt()),i&2&&(Vi("active",l.active()),gt(),Yt("icon",l.faLocation))},dependencies:[qr],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 g0=class t{mapService=Be(Co);iconLibrary=Be(wr);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=En({type:t,selectors:[["app-zoom-buttons"]],decls:5,vars:2,consts:[[1,"content"],[1,"zoom-button","zoom-in",3,"click"],[3,"icon"],[1,"zoom-button","zoom-out",3,"click"]],template:function(i,l){i&1&&(pt(0,"div",0)(1,"button",1),xn("click",function(){return l.onZoomIn()}),Bt(2,"fa-icon",2),yt(),pt(3,"button",3),xn("click",function(){return l.onZoomOut()}),Bt(4,"fa-icon",2),yt()()),i&2&&(gt(2),Yt("icon",l.faPlus),gt(2),Yt("icon",l.faMinus))},dependencies:[qr],styles:[".content[_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 y0=class t{static \u0275fac=function(i){return new(i||t)};static \u0275cmp=En({type:t,selectors:[["app-buttons-container"]],decls:5,vars:0,consts:[[1,"content"]],template:function(i,l){i&1&&(pt(0,"div",0),Bt(1,"app-location-button")(2,"app-compass-button")(3,"app-center-map-button")(4,"app-zoom-buttons"),yt())},dependencies:[p0,f0,g0,m0],styles:[".content[_ngcontent-%COMP%]{display:flex;flex-direction:column;align-items:center;gap:20px}"],changeDetection:0})};var _U=["map"],bU=["*"],Td=class t{mapRef;logger=Be(mr);mapService=Be(Co);markerService=Be(ha);routingService=Be(vc);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=En({type:t,selectors:[["app-map"]],viewQuery:function(i,l){if(i&1&&Oh(_U,5),i&2){let u;Lh(u=Nh())&&(l.mapRef=u.first)}},ngContentSelectors:bU,decls:5,vars:0,consts:[["map",""],[1,"map-wrapper"],["id","map"],[1,"buttons-container"]],template:function(i,l){i&1&&(lu(),pt(0,"div",1),Bt(1,"div",2,0)(3,"app-buttons-container",3),cu(4),yt())},dependencies:[y0],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 wU=["*"];function xU(t,r){t&1&&(pt(0,"div",2),Bt(1,"app-map"),yt())}var Vp=class t{stateService=Be(Ui);showMap=On(()=>this.stateService.activeView()==="map");static \u0275fac=function(i){return new(i||t)};static \u0275cmp=En({type:t,selectors:[["app-view-container"]],ngContentSelectors:wU,decls:4,vars:1,consts:[[1,"view-container"],[1,"view-content"],[1,"map-container"]],template:function(i,l){i&1&&(lu(),pt(0,"div",0)(1,"div",1),cu(2),yt(),ur(3,xU,2,0,"div",2),yt()),i&2&&(gt(3),dr(l.showMap()?3:-1))},dependencies:[Td],styles:[".view-container[_ngcontent-%COMP%]{display:flex;align-items:flex-start;gap:8px}@container mapvx-container (width <= 1065px){.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%]{flex:1;min-width:0;height:100%;overflow-y:auto}.map-container[_ngcontent-%COMP%]{width:738px;height:730px;flex-shrink:0}@container mapvx-container (width <= 1065px){.map-container[_ngcontent-%COMP%]{width:100%}}@container mapvx-container (width <= 640px){.map-container[_ngcontent-%COMP%]{width:100%;height:400px}}"],changeDetection:0})};var CU=["categoryFilters"],SU=(t,r)=>r.name;function EU(t,r){if(t&1){let i=Qr();pt(0,"button",11),xn("click",function(){let u=Nr(i).$implicit,o=cn(2);return Fr(o.selectedFilter.set(u.name))}),_n(1),yt()}if(t&2){let i=r.$implicit,l=cn(2);Vi("active",l.selectedFilter()===i.name),gt(),Bo(" ",i.name," ")}}function IU(t,r){if(t&1&&(pt(0,"div",2)(1,"div",5,0)(3,"div",6),zo(4,EU,2,3,"button",7,SU),yt(),pt(6,"div",8),Bt(7,"div",9)(8,"div",10),yt()()()),t&2){let i=cn();gt(4),jo(i.categoryFiltersData()),gt(4),i_("left",i.indicatorPosition(),"px")}}var v0=class t{logger=Be(mr);stateService=Be(Ui);loadedDataService=Be(Xo);markerService=Be(ha);categoryFilters;activeView=On(()=>this.stateService.activeView());loadedPlaces=ys(this.loadedDataService.getAvailablePlaces(),{initialValue:[]});categoryFiltersData=ys(this.loadedDataService.getInstitution().pipe(qn(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=On(()=>this.stateService.selectedCity());showCategoryFilters=On(()=>this.stateService.showCategoryFilters());showCityFilter=On(()=>this.stateService.showCityFilter());indicatorPosition=On(()=>this.getIndicatorPosition(this.selectedFilter(),this.categoryFiltersData()));constructor(){vr(()=>{let r=this.categoryFiltersData();this.logger.log("====> loadedCategoryFiltersData",r)}),vr(()=>{if(this.activeView()==="map"){let r=this.places();this.logger.log("====> addMarkers ",r),this.markerService.addMarkers(r)}}),vr(()=>{let r=this.loadedPlaces(),i=this.showCategoryFilters(),l=r;if(i){let o=this.selectedFilter(),_=this.categoryFiltersData();if(o!=="All"){let M=_.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(_=>_.address?.includes(o)))}this.logger.log("====> filteredPlaces",l),this.places.set(l)}),vr(()=>{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 _=this.categoryFilters.nativeElement.getBoundingClientRect(),M=o.getBoundingClientRect(),P=M.width,Z=M.left-_.left,G=80,N=Z+P/2-G/2;return Math.min(Math.max(0,N),_.width-G)}static \u0275fac=function(i){return new(i||t)};static \u0275cmp=En({type:t,selectors:[["app-list-view"]],viewQuery:function(i,l){if(i&1&&Oh(CU,5),i&2){let u;Lh(u=Nh())&&(l.categoryFilters=u.first)}},decls:5,vars:3,consts:[["categoryFilters",""],[1,"list-view"],[1,"category-filters-overflow"],[1,"list-container"],[3,"places","itemsPerPage"],[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&&(pt(0,"div",1),ur(1,IU,9,2,"div",2),pt(2,"app-view-container")(3,"div",3),Bt(4,"app-paginator",4),yt()()()),i&2&&(gt(),dr(l.showCategoryFilters()?1:-1),gt(3),Yt("places",l.places())("itemsPerPage",10))},dependencies:[Vp,jp],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 DU=()=>({rotate:42}),_0=class t{iconLibrary=Be(wr);faCircleNotch=this.iconLibrary.getIconDefinition("fas","circle-notch");static \u0275fac=function(i){return new(i||t)};static \u0275cmp=En({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&&(pt(0,"div",0)(1,"div",1),Bt(2,"fa-icon",2),yt(),pt(3,"div",3),Bt(4,"div",4)(5,"div",5)(6,"div",6),yt()()),i&2&&(gt(2),Yt("icon",l.faCircleNotch)("transform",Fh(2,DU)))},dependencies:[qr],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 TU=()=>[1,2,3,4,5,6,7,8,9,10];function MU(t,r){t&1&&Bt(0,"app-loading-location-card")}var b0=class t{homeStateService=Be(Ui);showMap=On(()=>this.homeStateService.activeView()==="map");static \u0275fac=function(i){return new(i||t)};static \u0275cmp=En({type:t,selectors:[["app-loading-card-list"]],decls:3,vars:3,consts:[[1,"loading-container"]],template:function(i,l){i&1&&(pt(0,"div",0),zo(1,MU,1,0,"app-loading-location-card",null,Rh),yt()),i&2&&(Vi("with-map",l.showMap()),gt(),jo(Fh(2,TU)))},dependencies:[_0],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 PU(t,r){t&1&&(pt(0,"p"),_n(1,"Looking for your results..."),yt())}function AU(t,r){if(t&1&&(pt(0,"p"),_n(1),yt()),t&2){let i=cn(3);gt(),Bo('Showing 1 result for "',i.searchTerm(),'"')}}function kU(t,r){if(t&1&&(pt(0,"p"),_n(1),yt()),t&2){let i=cn(3);gt(),o_("Showing ",i.places().length,' results for "',i.searchTerm(),'"')}}function RU(t,r){if(t&1&&ur(0,AU,2,1,"p")(1,kU,2,2,"p"),t&2){let i=cn(2);dr(i.places().length===1?0:1)}}function OU(t,r){if(t&1&&(pt(0,"p"),_n(1),yt()),t&2){let i=cn(2);gt(),Bo('No results found for "',i.searchTerm(),'"')}}function LU(t,r){if(t&1&&ur(0,RU,2,1)(1,OU,2,1,"p"),t&2){let i=cn();dr(i.places().length>0?0:1)}}function NU(t,r){t&1&&Bt(0,"app-loading-card-list")}function FU(t,r){if(t&1&&(pt(0,"div",6)(1,"app-paginator",7)(2,"div",8),Bt(3,"fa-icon",4),pt(4,"h2"),_n(5,"No results found"),yt(),pt(6,"div",9)(7,"p"),_n(8,"Sorry, we can\u2019t find any places that match your search. Please try again."),yt()()()()()),t&2){let i=cn();gt(),Yt("places",i.places())("itemsPerPage",10),gt(2),Yt("icon",i.faBuildingMagnifyingGlass)}}var w0=class t{logger=Be(mr);loadedDataService=Be(Xo);sdkService=Be(da);stateService=Be(Ui);navigatorService=Be(Vo);markerService=Be(ha);iconLibrary=Be(wr);searching=cr(!0);inputValue$=jA(this.stateService.inputValue).pipe(F1(500),qn(r=>r.trim()),Xi(r=>r!==""),z1(),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),mi(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(){vr(()=>{let r=this.places();this.markerService.addMarkers(r)}),vr(()=>{let r=this.places();this.stateService.lastListedPlaces.set(r)}),vr(()=>{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=En({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","itemsPerPage"],[1,"no-results"],[1,"no-results-description"]],template:function(i,l){i&1&&(pt(0,"div",0)(1,"div",1)(2,"div",2)(3,"button",3),xn("click",function(){return l.onBackClick()}),Bt(4,"fa-icon",4),pt(5,"span"),_n(6,"Back"),yt()()(),pt(7,"div",5),ur(8,PU,2,0,"p")(9,LU,2,1),yt()(),pt(10,"app-view-container"),ur(11,NU,1,0,"app-loading-card-list")(12,FU,9,3,"div",6),yt()()),i&2&&(gt(4),Yt("icon",l.faArrowLeft),gt(4),dr(l.searching()?8:9),gt(3),dr(l.searching()?11:12))},dependencies:[Vp,jp,R_,qr,b0],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 x0(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 S0(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 C0(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} ${o}`}function UA(t){let r=C0(t.open),i=C0(t.close);return`${r} - ${i}`}function jU(t){let r=C0(t.open),i=C0(t.close);return`${r} to ${i}`}function BU(t){let r=new Date,i=new Date(r);$A(i);let l=S0(i),u=t[l];if(u&&u.length>0){for(let o of u)if(BA(o.open)&&BA(o.close)){let _=VA(o.open,i),M=VA(o.close,i);if(_>M&&VU(M),r>=_&&r<=M)return!0}}return!1}function $A(t){let r=t.getDate();t.setDate(r-1)}function VU(t){let r=t.getDate();t.setDate(r+1)}function UU(t){let i=S0(new Date),l=t[i];return l&&l.length>0}function BA(t){return/^([0-9]|0[0-9]|1[0-9]|2[0-4]):[0-5][0-9]$/.test(t)}function VA(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 $U(t){return t.sort((r,i)=>r.open.localeCompare(i.open))}function HU(t){let i=S0(new Date),l=t[i];return l&&l.length>0?HA(l):""}function GU(t){let r=new Date;$A(r);let i=S0(r),l=t[i];return l&&l.length>0?HA(l):""}function WU(t){let r=qU(t);return`Open on ${x0(r)}`}function HA(t){return t.length===1?UA(t[0]):($U(t),t.map(jU).join(" - "))}function qU(t){let i=new Date().getDay();for(let l=0;l<7;l++){let u=(i+l)%7,o=zU(u),_=t[o];if(_&&_.length>0)return o}return"mo"}function GA(t){return BU(t)?GU(t):UU(t)?HU(t):WU(t)}function WA(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=>UA(Z))},l=(M,P)=>M.length!==P.length?!1:M.every((Z,G)=>Z===P[G]),u=(M,P)=>M===P?x0(M):`${x0(M)} - ${x0(P)}`,o=[],_=0;for(;_<r.length;){let M=r[_],P=i(M),Z=_+1;for(;Z<r.length&&l(P,i(r[Z]));)Z++;let G=u(M,r[Z-1]);o.push({day:G,schedule:P}),_=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 ZU(t,r){if(t&1&&Bt(0,"div",9),t&2){let i=r.$implicit;Yt("innerHTML",i,vd)}}function YU(t,r){if(t&1&&(pt(0,"div",6)(1,"div",7),_n(2),yt(),pt(3,"div",8),zo(4,ZU,1,1,"div",9,Qa),yt()()),t&2){let i=r.$implicit;gt(2),gs(i.day),gt(2),jo(i.schedule)}}var E0=class t{iconLibrary=Be(wr);schedules=kr.required({transform:r=>r?WA(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=En({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&&(pt(0,"div",0)(1,"div",1)(2,"div",2),Bt(3,"fa-icon",3),pt(4,"h2"),_n(5,"Other Schedules"),yt()(),pt(6,"button",4),xn("click",function(){return l.hideModal()}),Bt(7,"fa-icon",3),yt()(),pt(8,"div",5),zo(9,YU,6,1,"div",6,Qa),yt()()),i&2&&(gt(3),Yt("icon",l.faClockThree),gt(4),Yt("icon",l.faXmark),gt(2),jo(l.schedules()))},dependencies:[qr],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 KU=()=>({rotate:42});function XU(t,r){if(t&1&&Bt(0,"fa-icon",3),t&2){let i=cn();Yt("icon",i.faCircleNotch)("transform",Fh(2,KU))}}function JU(t,r){if(t&1){let i=Qr();pt(0,"div",10),Bt(1,"fa-icon",9),pt(2,"div",24)(3,"button",25),xn("click",function(){Nr(i);let u=cn();return Fr(u.showOtherSchedulesModal())}),yt(),pt(4,"div",26),_n(5,"*Hours may vary"),yt()()()}if(t&2){let i=cn();gt(),Yt("icon",i.faClockThree),gt(2),Yt("innerHTML",i.schedule(),vd)}}function QU(t,r){if(t&1){let i=Qr();pt(0,"div",11)(1,"app-other-schedules",27),xn("closeClicked",function(){Nr(i);let u=cn();return Fr(u.hideOtherSchedulesModal())}),yt()()}if(t&2){let i=cn();gt(),Yt("schedules",i.place().openingHours)}}function e$(t,r){if(t&1&&Bt(0,"div",30),t&2){let i=r.$implicit;Yt("innerHTML",i,vd)}}function t$(t,r){if(t&1&&(pt(0,"div",12),Bt(1,"fa-icon",9),pt(2,"div",28)(3,"div",29),_n(4,"Deals + Events"),yt(),zo(5,e$,1,1,"div",30,Qa),yt()()),t&2){let i=cn();gt(),Yt("icon",i.faBadgeDollar),gt(4),jo(i.banners())}}function n$(t,r){if(t&1&&(pt(0,"div",21),_n(1),yt()),t&2){let i=cn();gt(),Bo(" ",i.address()," ")}}function r$(t,r){if(t&1&&(pt(0,"div",22),_n(1),yt()),t&2){let i=r.$implicit;gt(),Bo(" ",i," ")}}function i$(t,r){if(t&1&&(pt(0,"div",23)(1,"a",18),_n(2),yt()()),t&2){let i=r.$implicit;gt(),Yt("href",i.url,Ph),gt(),gs(i.title)}}var I0=class t{iconLibrary=Be(wr);sanitizer=Be(vg);logger=Be(mr);navigatorService=Be(Vo);place=kr.required();hideDeals=kr(!1);imageSrc=On(()=>this.place().images[0]||"");isImageLoading=cr(!0);schedule=On(()=>{let r=this.place().openingHours;return r?GA(r):""});banners=On(()=>this.place().banners.filter(d0).filter(r=>r.description!==void 0).map(r=>this.sanitizer.bypassSecurityTrustHtml(r.description||"")));address=On(()=>this.place().address||"");phones=On(()=>this.place().properties?.filter(r=>r.type==="phone").map(r=>this.formatPhoneNumber(r.subtitle))||[]);websites=On(()=>this.place().properties?.filter(r=>r.type==="url").map(this.prepareUrl)||[]);drivingDirectionsUrl=On(()=>{let r=this.place();return`https://waze.com/ul?ll=${r.position.lat},${r.position.lng}&navigate=yes`});otherSchedulesModal=cr(!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=On(()=>{let[r,i]=s0(this.place().localizedCategory||"");return this.iconLibrary.getIconDefinition(r,i)});constructor(){vr(()=>{this.imageSrc()&&this.startImageLoading()})}prepareUrl(r){return fr($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=En({type:t,selectors:[["app-profile-view"]],inputs:{place:[1,"place"],hideDeals:[1,"hideDeals"]},decls:34,vars:15,consts:[[1,"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-content"],[1,"deals-or-events-content-title"],[1,"banner-content",3,"innerHTML"]],template:function(i,l){i&1&&(pt(0,"div",0)(1,"div",1)(2,"img",2),xn("load",function(){return l.endImageLoading()})("error",function(){return l.endImageLoading()}),yt(),ur(3,XU,1,3,"fa-icon",3),yt(),pt(4,"div",4)(5,"div",5)(6,"h1",6),_n(7),yt(),pt(8,"div",7)(9,"div",8),Bt(10,"fa-icon",9),pt(11,"span"),_n(12),yt()(),ur(13,JU,6,2,"div",10),ur(14,QU,2,1,"div",11),yt(),ur(15,t$,7,1,"div",12),pt(16,"div",13),_n(17),yt()(),pt(18,"div",14)(19,"div",15)(20,"button",16),xn("click",function(){return l.navigateToRoute()}),Bt(21,"fa-icon",9),pt(22,"span"),_n(23,"Pedestrian-friendly directions"),yt()()(),pt(24,"div",17)(25,"a",18),_n(26,"Driving directions"),yt()()(),pt(27,"div",19),Bt(28,"div",20),ur(29,n$,2,1,"div",21),zo(30,r$,2,1,"div",22,Qa),zo(32,i$,3,2,"div",23,Qa),yt()()()),i&2&&(gt(),Vi("loading",l.isImageLoading()),gt(),Yt("src",l.imageSrc(),Ph)("alt",l.place().title),gt(),dr(l.isImageLoading()?3:-1),gt(4),gs(l.place().title),gt(3),Yt("icon",l.iconCategory()),gt(2),gs(l.place().localizedCategory),gt(),dr(l.schedule()!==""?13:-1),gt(),dr(l.otherSchedulesModal()?14:-1),gt(),dr(l.banners().length>0&&!l.hideDeals()?15:-1),gt(2),Bo(" ",l.place().description," "),gt(4),Yt("icon",l.faArrowTopRight),gt(4),Yt("href",l.drivingDirectionsUrl(),Ph),gt(4),dr(l.address()!==""?29:-1),gt(),jo(l.phones()),gt(2),jo(l.websites()))},dependencies:[qr,E0],styles:['.content[_ngcontent-%COMP%]{display:flex;padding:0 16px;flex-direction:column;align-items:center;gap:16px}@container mapvx-container (width <= 1024px){.content[_ngcontent-%COMP%]{padding:22px 0 0}}@container mapvx-container (width <= 640px){.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;width:100%;align-items:flex-start;gap:18px;color:var(--definitions-colors-secondary-orange)}.deals-or-events[_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%]{font:var(--definitions-textFonts-desktop-body-3);font-family:inherit;font-size:16px;white-space:pre-wrap}.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 Up=class t{iconLibraryService=Be(wr);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=En({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&&(pt(0,"button",0),xn("click",function(o){return l.onBackClick(o)}),Bt(1,"fa-icon",1),pt(2,"span"),_n(3,"Back"),yt()()),i&2&&(gt(),Yt("icon",l.faArrowLeft))},dependencies:[qr],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 o$(t,r){if(t&1&&Bt(0,"app-profile-view",5),t&2){let i=cn(),l=cg(5);Yt("place",l)("hideDeals",i.hideDeals())}}var D0=class t{onDestroy=new Gr;route=Be(el);logger=Be(mr);loadedDataService=Be(Xo);sdkService=Be(da);mapService=Be(Co);markerService=Be(ha);navigatorService=Be(Vo);homeStateService=Be(Ui);iconLibraryService=Be(wr);_profileId="";place=cr(null);mapReady=ys(this.mapService.mapReady,{requireSync:!0});hideDeals=On(()=>this.homeStateService.hideDeals());faArrowLeft=this.iconLibraryService.getIconDefinition("fas","arrow-left");constructor(){vr(()=>{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(qn(i=>i.get("id")),Xi(i=>i!==null),Xi(i=>i!==this._profileId),U1(1));lc([r,this.loadedDataService.getAvailablePlaces()]).pipe(ca(this.onDestroy),ao(([i,l])=>{let u=l.find(o=>o.lazarilloId===i);return u?Wn(u):mi(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=En({type:t,selectors:[["app-profile-screen"]],decls:9,vars:2,consts:[[1,"screen"],[1,"back-button"],[3,"buttonClick"],[1,"content"],[1,"profile-info"],[3,"place","hideDeals"],[1,"map"]],template:function(i,l){if(i&1){let u=Qr();pt(0,"div",0)(1,"div",1)(2,"app-back-button",2),xn("buttonClick",function(){return Nr(u),Fr(l.returnToHome())}),yt()(),pt(3,"div",3)(4,"div",4),bp(5),ur(6,o$,1,2,"app-profile-view",5),yt(),pt(7,"div",6),Bt(8,"app-map"),yt()()()}if(i&2){gt(5);let u=lg(l.place());gt(),dr(u!==null?6:-1)}},dependencies:[Td,Up,I0],styles:[".screen[_ngcontent-%COMP%]{display:flex;flex-direction:column;gap:18px}.content[_ngcontent-%COMP%]{display:flex;width:100%}@container mapvx-container (width <= 1024px){.content[_ngcontent-%COMP%]{flex-direction:column-reverse}}@container mapvx-container (width <= 640px){.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 T0=class t{iconLibrary=Be(wr);currentRoute=kr.required();startRouteClick=ka();faCircleSmall=this.iconLibrary.getIconDefinition("fas","circle-small");faArrowTopRight=this.iconLibrary.getIconDefinition("fak","arrow-top-right");time=On(()=>{let r=this.currentRoute();return this.toMinutes(r.duration)});distance=On(()=>{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=En({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&&(pt(0,"div",0)(1,"div",1)(2,"span",2),_n(3,"Time"),yt(),Bt(4,"fa-icon",3),pt(5,"span",4),_n(6),yt()(),pt(7,"div",1)(8,"span",2),_n(9,"Distance"),yt(),Bt(10,"fa-icon",3),pt(11,"span",4),_n(12),yt()()(),pt(13,"button",5),xn("click",function(){return l.onStartRouteClick()}),Bt(14,"fa-icon",3),pt(15,"span"),_n(16,"Start Route"),yt()()),i&2&&(gt(4),Yt("icon",l.faCircleSmall),gt(2),Bo("",l.time()," min"),gt(4),Yt("icon",l.faCircleSmall),gt(2),Bo("",l.distance()," mts"),gt(2),Yt("icon",l.faArrowTopRight))},dependencies:[qr],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 s$={"[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"},vfe=fr($t({},s$),{"[class.ng-submitted]":"isSubmitted"});var a$=new kn("",{providedIn:"root",factory:()=>qA}),qA="always";var l$=(()=>{class t{static \u0275fac=function(l){return new(l||t)};static \u0275mod=mc({type:t});static \u0275inj=Sl({})}return t})();var ZA=(()=>{class t{static withConfig(i){return{ngModule:t,providers:[{provide:a$,useValue:i.callSetDisabledState??qA}]}}static \u0275fac=function(l){return new(l||t)};static \u0275mod=mc({type:t});static \u0275inj=Sl({imports:[l$]})}return t})();function c$(t,r){if(t&1){let i=Qr();pt(0,"button",5),xn("click",function(){Nr(i);let u=cn();return Fr(u.clearSelectedPlace())}),Bt(1,"fa-icon",6),yt()}if(t&2){let i=cn();gt(),Yt("icon",i.faXmark)}}function u$(t,r){if(t&1){let i=Qr();pt(0,"button",10),xn("click",function(){let u=Nr(i).$implicit,o=cn(2);return Fr(o.selectPlace(u))}),pt(1,"div",11),Bt(2,"fa-icon",6),yt(),pt(3,"div",12)(4,"div",13),_n(5),yt(),pt(6,"div",14),_n(7),yt()()()}if(t&2){let i=r.$implicit,l=cn(2);gt(2),Yt("icon",l.faLocationDot),gt(3),gs(i.title),gt(2),gs(i.address)}}function d$(t,r){t&1&&(pt(0,"div",9),_n(1,"No results found"),yt())}function h$(t,r){if(t&1&&(pt(0,"div",4)(1,"div",7),zo(2,u$,8,3,"button",8,Qa),ur(4,d$,2,0,"div",9),yt()()),t&2){let i=cn();gt(2),jo(i.filteredPlaces()),gt(2),dr(i.filteredPlaces().length===0&&i.filterText().trim()?4:-1)}}var M0=class t{iconLibrary=Be(wr);places=kr.required();initialSelectedPlace=kr(null);placeholder=kr("Set a starting point");selectedPlace=Js(()=>this.initialSelectedPlace());selectedPlaceChange=ka();isDropdownOpen=cr(!1);filterText=Js(()=>this.selectedPlace()?.title||"");filteredPlaces=On(()=>{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});faLocationDot=this.iconLibrary.getIconDefinition("fas","location-dot");faXmark=this.iconLibrary.getIconDefinition("fas","xmark");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=En({type:t,selectors:[["app-place-selector"]],inputs:{places:[1,"places"],initialSelectedPlace:[1,"initialSelectedPlace"],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&&(pt(0,"div",0)(1,"div",1)(2,"input",2),xn("input",function(o){return l.onInputChange(o)})("focus",function(){return l.onInputFocus()})("blur",function(){return l.onInputBlur()}),yt(),ur(3,c$,2,1,"button",3),yt(),ur(4,h$,5,1,"div",4),yt()),i&2&&(gt(2),Yt("value",l.filterText())("placeholder",l.placeholder()),gt(),dr(l.selectedPlace()?3:-1),gt(),dr(l.isDropdownOpen()?4:-1))},dependencies:[xp,ZA,qr],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}}']})};function f$(t,r){if(t&1){let i=Qr();pt(0,"app-place-selector",18),xn("selectedPlaceChange",function(u){Nr(i);let o=cn();return Fr(o.onOriginSelected(u))}),yt()}if(t&2){let i=cn();Yt("places",i.places())("initialSelectedPlace",i.originPlace())}}function p$(t,r){if(t&1){let i=Qr();pt(0,"button",19),xn("click",function(){Nr(i);let u=cn();return Fr(u.requestLocationPermission())}),_n(1," Set a starting point "),yt()}}function m$(t,r){t&1&&(pt(0,"div",10),_n(1,"Current location"),yt())}var P0=class t{logger=Be(mr);iconLibrary=Be(wr);locationService=Be(Bp);places=kr.required();initialDestination=kr(null);originPlace=cr(null);destinationPlace=Js(()=>this.initialDestination());originSelected=ka();destinationSelected=ka();swapPlaces=ka();clearDestination=ka();locationPermission=cr("prompt");faLocationDot=this.iconLibrary.getIconDefinition("fas","location-dot");faEllipsisVertical=this.iconLibrary.getIconDefinition("fas","ellipsis-vertical");faArrowsRetweet=this.iconLibrary.getIconDefinition("fas","arrows-retweet");canSwapPlaces=On(()=>Hw(this.originPlace())&&Hw(this.destinationPlace()));constructor(){this.checkLocationPermission(),vr(()=>{this.locationPermission()==="granted"&&this.getCurrentLocation()})}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)}).catch(r=>{this.logger.logWarning("Error requesting location permission",r),this.locationPermission.set("denied")})}getCurrentLocation(){this.locationService.getCurrentLocation().then(r=>{this.originPlace.set(null),this.originSelected.emit(r)}).catch(r=>{this.logger.logWarning("Error getting current location",r)})}onOriginSelected(r){this.originSelected.emit(r),this.originPlace.set(r)}onDestinationSelected(r){this.destinationSelected.emit(r),this.destinationPlace.set(r)}onSwapPlaces(){let r=this.originPlace(),i=this.destinationPlace();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=En({type:t,selectors:[["app-route-selector"]],inputs:{places:[1,"places"],initialDestination:[1,"initialDestination"]},outputs:{originSelected:"originSelected",destinationSelected:"destinationSelected",swapPlaces:"swapPlaces",clearDestination:"clearDestination"},decls:22,vars:8,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,"places","initialSelectedPlace"],[1,"request-location-button"],[1,"current-location-info"],[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"],[3,"selectedPlaceChange","places","initialSelectedPlace"],[1,"request-location-button",3,"click"]],template:function(i,l){if(i&1&&(pt(0,"div",0)(1,"div",1)(2,"div",2)(3,"div",3),dv(),pt(4,"svg",4),Bt(5,"rect",5)(6,"path",6)(7,"path",7),yt()(),ur(8,f$,1,2,"app-place-selector",8)(9,p$,2,0,"button",9)(10,m$,2,0,"div",10),yt()(),hv(),pt(11,"div",11)(12,"div",12),Bt(13,"fa-icon",13),yt(),Bt(14,"div",14),pt(15,"button",15),xn("click",function(){return l.onSwapPlaces()}),Bt(16,"fa-icon",13),yt()(),pt(17,"div",16)(18,"div",2)(19,"div",3),Bt(20,"fa-icon",13),yt(),pt(21,"app-place-selector",17),xn("selectedPlaceChange",function(o){return l.onDestinationSelected(o)}),yt()()()()),i&2){let u;gt(8),dr((u=l.locationPermission())==="denied"?8:u==="prompt"?9:u==="granted"?10:-1),gt(5),Yt("icon",l.faEllipsisVertical),gt(2),Yt("disabled",!l.canSwapPlaces()),gt(),Yt("icon",l.faArrowsRetweet),gt(4),Yt("icon",l.faLocationDot),gt(),Yt("places",l.places())("initialSelectedPlace",l.destinationPlace())("placeholder","Select a destination")}},dependencies:[xp,M0,qr],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}.request-location-button[_ngcontent-%COMP%]{background:none;border:none;cursor:pointer;width:100%;text-align:start;font:var(--definitions-textFonts-desktop-button-1);font-family:inherit;font-feature-settings:"liga" off,"clig" off;letter-spacing:-1px;color:var(--definitions-colors-text-300)}.current-location-info[_ngcontent-%COMP%]{font:var(--definitions-textFonts-desktop-button-1);font-family:inherit;font-feature-settings:"liga" off,"clig" off;letter-spacing:-1px;color:var(--definitions-colors-text-800)}.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 g$(t,r){if(t&1){let i=Qr();pt(0,"button",1),xn("click",function(){Nr(i);let u=cn();return Fr(u.pauseRoute())}),Bt(1,"fa-icon",2),pt(2,"span"),_n(3,"Pause route"),yt()()}if(t&2){let i=cn();gt(),Yt("icon",i.faPause)}}function y$(t,r){if(t&1){let i=Qr();pt(0,"button",1),xn("click",function(){Nr(i);let u=cn();return Fr(u.resumeRoute())}),Bt(1,"fa-icon",2),pt(2,"span"),_n(3,"Resume route"),yt()()}if(t&2){let i=cn();gt(),Yt("icon",i.faPlay)}}function v$(t,r){if(t&1){let i=Qr();pt(0,"button",1),xn("click",function(){Nr(i);let u=cn();return Fr(u.restartRoute())}),Bt(1,"fa-icon",2),pt(2,"span"),_n(3,"Restart route"),yt()()}if(t&2){let i=cn();gt(),Yt("icon",i.faRestart)}}function _$(t,r){}var A0=class t{iconLibrary=Be(wr);routingService=Be(vc);AnimationState=g_;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=En({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&&ur(0,g$,4,1,"button",0)(1,y$,4,1,"button",0)(2,v$,4,1,"button",0)(3,_$,0,0),i&2){let u;dr((u=l.animationStatus())===l.AnimationState.Playing?0:u===l.AnimationState.Paused?1:u===l.AnimationState.Finished?2:3)}},dependencies:[qr],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 b$(t,r){if(t&1){let i=Qr();pt(0,"div",6)(1,"app-route-info",8),xn("startRouteClick",function(){Nr(i);let u=cn();return Fr(u.startStepAnimation())}),yt()()}if(t&2){cn();let i=cg(6);gt(),Yt("currentRoute",i)}}var k0=class t{routeId="";route=Be(el);logger=Be(mr);navigatorService=Be(Vo);loadedDataService=Be(Xo);mapService=Be(Co);markerService=Be(ha);homeStateService=Be(Ui);routingService=Be(vc);mapReady=ys(this.mapService.mapReady,{requireSync:!0});places=ys(this.loadedDataService.getAvailablePlaces(),{initialValue:[]});originPoint=cr(null);destinationPlace=Js(()=>this.initialDestination());initialDestination=cr(null);currentRoute=cr(null);constructor(){this.routeId=this.route.snapshot.params.id||"unknown",vr(()=>{let r=this.places();if(r.length>0){let i=r.find(l=>l.lazarilloId===this.routeId);i&&this.initialDestination.set(i)}}),vr(()=>{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)}}),vr(()=>{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)}),vr(()=>{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=En({type:t,selectors:[["app-route-screen"]],decls:11,vars:4,consts:[[1,"route-screen"],[1,"back-button"],[3,"buttonClick"],[1,"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=Qr();pt(0,"div",0)(1,"div",1)(2,"app-back-button",2),xn("buttonClick",function(){return Nr(u),Fr(l.returnToProfile())}),yt()(),pt(3,"div",3)(4,"div",4)(5,"app-route-selector",5),xn("originSelected",function(_){return Nr(u),Fr(l.onOriginSelected(_))})("destinationSelected",function(_){return Nr(u),Fr(l.onDestinationSelected(_))}),yt(),bp(6),ur(7,b$,2,1,"div",6),yt(),pt(8,"div",7)(9,"app-map"),Bt(10,"app-route-control-button"),yt()()()()}if(i&2){gt(5),Yt("places",l.places())("initialDestination",l.initialDestination()),gt();let u=lg(l.currentRoute());gt(),dr(u!==null?7:-1)}},dependencies:[Up,Td,P0,T0,A0],styles:[".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 YA=[{path:"",component:u0,children:[{path:"list",redirectTo:"",pathMatch:"full"},{path:"",component:v0},{path:"search",component:w0}]},{path:"profile/:id",component:D0},{path:"route/:id",component:k0},{path:"**",redirectTo:""}];var KA={providers:[Hb(),Cw(),rC(YA),{provide:yc,useClass:c0},mr]};$w(KA).then(t=>{let r=lM(a0,{injector:t.injector});customElements.define("mapvx-website",r)}).catch(t=>console.error(t));
|
|
1344
|
+
`))});document=Be(bi);sanitizer=Be(vg);config=Be(GB);iconLibrary=Be(Tg);stackItem=Be(JB,{optional:!0});stack=Be(QB,{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=XB(i,this.config.defaultPrefix);if("icon"in l)return l;let u=this.iconLibrary.getIconDefinition(l.prefix,l.iconName);return u??(WB(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"?$P.transform(u):u,_=this.mask(),M=_!=null?this.findIconDefinition(_):null,P={},Z=this.a11yRole();Z!=null&&(P.role=Z);let G={};return l.rotate!=null&&!GP(l.rotate)&&(G["--fa-rotate-angle"]=`${l.rotate}`),{title:this.title(),transform:o,classes:ZB(l),mask:M??void 0,symbol:this.symbol(),attributes:P,styles:G}}static \u0275fac=function(l){return new(l||t)};static \u0275cmp=En({type:t,selectors:[["fa-icon"]],hostAttrs:[1,"ng-fa-icon"],hostVars:2,hostBindings:function(l,u){l&2&&(_p("innerHTML",u.renderedIconHTML(),vd),sg("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 R_=(()=>{class t{static \u0275fac=function(l){return new(l||t)};static \u0275mod=mc({type:t});static \u0275inj=Sl({})}return t})();var wr=class t{iconLibrary=Be(Tg);logger=Be(mr);getIconDefinition(r,i){let l=this.iconLibrary.getIconDefinition(r,i);return l||(this.logger.logWarning(new Error(`Icon definition not found for ${r} ${i}`)),Jw)}static \u0275fac=function(i){return new(i||t)};static \u0275prov=qt({token:t,factory:t.\u0275fac})};var sr="primary",$g=Symbol("RouteTitle"),zx=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 $h(t){return new zx(t)}function QP(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 _=l[o],M=t[o];if(_[0]===":")u[_.substring(1)]=M;else if(_!==M.path)return null}return{consumed:t.slice(0,l.length),posParams:u}}function tV(t,r){if(t.length!==r.length)return!1;for(let i=0;i<t.length;++i)if(!bc(t[i],r[i]))return!1;return!0}function bc(t,r){let i=t?jx(t):void 0,l=r?jx(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],!eA(t[u],r[u]))return!1;return!0}function jx(t){return[...Object.keys(t),...Object.getOwnPropertySymbols(t)]}function eA(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 tA(t){return t.length>0?t[t.length-1]:null}function gu(t){return L1(t)?t:vp(t)?mi(Promise.resolve(t)):Wn(t)}var nV={exact:rA,subset:iA},nA={exact:rV,subset:iV,ignored:()=>!0};function WP(t,r,i){return nV[i.paths](t.root,r.root,i.matrixParams)&&nA[i.queryParams](t.queryParams,r.queryParams)&&!(i.fragment==="exact"&&t.fragment!==r.fragment)}function rV(t,r){return bc(t,r)}function rA(t,r,i){if(!Vh(t.segments,r.segments)||!N_(t.segments,r.segments,i)||t.numberOfChildren!==r.numberOfChildren)return!1;for(let l in r.children)if(!t.children[l]||!rA(t.children[l],r.children[l],i))return!1;return!0}function iV(t,r){return Object.keys(r).length<=Object.keys(t).length&&Object.keys(r).every(i=>eA(t[i],r[i]))}function iA(t,r,i){return oA(t,r,r.segments,i)}function oA(t,r,i,l){if(t.segments.length>i.length){let u=t.segments.slice(0,i.length);return!(!Vh(u,i)||r.hasChildren()||!N_(u,i,l))}else if(t.segments.length===i.length){if(!Vh(t.segments,i)||!N_(t.segments,i,l))return!1;for(let u in r.children)if(!t.children[u]||!iA(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!Vh(t.segments,u)||!N_(t.segments,u,l)||!t.children[sr]?!1:oA(t.children[sr],r,o,l)}}function N_(t,r,i){return r.every((l,u)=>nA[i](t[u].parameters,l.parameters))}var xc=class{root;queryParams;fragment;_queryParamMap;constructor(r=new Vr([],{}),i={},l=null){this.root=r,this.queryParams=i,this.fragment=l}get queryParamMap(){return this._queryParamMap??=$h(this.queryParams),this._queryParamMap}toString(){return aV.serialize(this)}},Vr=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 F_(this)}},Id=class{path;parameters;_parameterMap;constructor(r,i){this.path=r,this.parameters=i}get parameterMap(){return this._parameterMap??=$h(this.parameters),this._parameterMap}toString(){return aA(this)}};function oV(t,r){return Vh(t,r)&&t.every((i,l)=>bc(i.parameters,r[l].parameters))}function Vh(t,r){return t.length!==r.length?!1:t.every((i,l)=>i.path===r[l].path)}function sV(t,r){let i=[];return Object.entries(t.children).forEach(([l,u])=>{l===sr&&(i=i.concat(r(u,l)))}),Object.entries(t.children).forEach(([l,u])=>{l!==sr&&(i=i.concat(r(u,l)))}),i}var Hg=(()=>{class t{static \u0275fac=function(l){return new(l||t)};static \u0275prov=qt({token:t,factory:()=>new Hh,providedIn:"root"})}return t})(),Hh=class{parse(r){let i=new Vx(r);return new xc(i.parseRootSegment(),i.parseQueryParams(),i.parseFragment())}serialize(r){let i=`/${Mg(r.root,!0)}`,l=uV(r.queryParams),u=typeof r.fragment=="string"?`#${lV(r.fragment)}`:"";return`${i}${l}${u}`}},aV=new Hh;function F_(t){return t.segments.map(r=>aA(r)).join("/")}function Mg(t,r){if(!t.hasChildren())return F_(t);if(r){let i=t.children[sr]?Mg(t.children[sr],!1):"",l=[];return Object.entries(t.children).forEach(([u,o])=>{u!==sr&&l.push(`${u}:${Mg(o,!1)}`)}),l.length>0?`${i}(${l.join("//")})`:i}else{let i=sV(t,(l,u)=>u===sr?[Mg(t.children[sr],!1)]:[`${u}:${Mg(l,!1)}`]);return Object.keys(t.children).length===1&&t.children[sr]!=null?`${F_(t)}/${i[0]}`:`${F_(t)}/(${i.join("//")})`}}function sA(t){return encodeURIComponent(t).replace(/%40/g,"@").replace(/%3A/gi,":").replace(/%24/g,"$").replace(/%2C/gi,",")}function O_(t){return sA(t).replace(/%3B/gi,";")}function lV(t){return encodeURI(t)}function Bx(t){return sA(t).replace(/\(/g,"%28").replace(/\)/g,"%29").replace(/%26/gi,"&")}function z_(t){return decodeURIComponent(t)}function qP(t){return z_(t.replace(/\+/g,"%20"))}function aA(t){return`${Bx(t.path)}${cV(t.parameters)}`}function cV(t){return Object.entries(t).map(([r,i])=>`;${Bx(r)}=${Bx(i)}`).join("")}function uV(t){let r=Object.entries(t).map(([i,l])=>Array.isArray(l)?l.map(u=>`${O_(i)}=${O_(u)}`).join("&"):`${O_(i)}=${O_(l)}`).filter(i=>i);return r.length?`?${r.join("&")}`:""}var dV=/^[^\/()?;#]+/;function Ox(t){let r=t.match(dV);return r?r[0]:""}var hV=/^[^\/()?;=#]+/;function fV(t){let r=t.match(hV);return r?r[0]:""}var pV=/^[^=?&#]+/;function mV(t){let r=t.match(pV);return r?r[0]:""}var gV=/^[^&#]+/;function yV(t){let r=t.match(gV);return r?r[0]:""}var Vx=class{url;remaining;constructor(r){this.url=r,this.remaining=r}parseRootSegment(){return this.consumeOptional("/"),this.remaining===""||this.peekStartsWith("?")||this.peekStartsWith("#")?new Vr([],{}):new Vr([],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[sr]=new Vr(r,i)),l}parseSegment(){let r=Ox(this.remaining);if(r===""&&this.peekStartsWith(";"))throw new ln(4009,!1);return this.capture(r),new Id(z_(r),this.parseMatrixParams())}parseMatrixParams(){let r={};for(;this.consumeOptional(";");)this.parseParam(r);return r}parseParam(r){let i=fV(this.remaining);if(!i)return;this.capture(i);let l="";if(this.consumeOptional("=")){let u=Ox(this.remaining);u&&(l=u,this.capture(l))}r[z_(i)]=z_(l)}parseQueryParam(r){let i=mV(this.remaining);if(!i)return;this.capture(i);let l="";if(this.consumeOptional("=")){let _=yV(this.remaining);_&&(l=_,this.capture(l))}let u=qP(i),o=qP(l);if(r.hasOwnProperty(u)){let _=r[u];Array.isArray(_)||(_=[_],r[u]=_),_.push(o)}else r[u]=o}parseParens(r){let i={};for(this.capture("(");!this.consumeOptional(")")&&this.remaining.length>0;){let l=Ox(this.remaining),u=this.remaining[l.length];if(u!=="/"&&u!==")"&&u!==";")throw new ln(4010,!1);let o;l.indexOf(":")>-1?(o=l.slice(0,l.indexOf(":")),this.capture(o),this.capture(":")):r&&(o=sr);let _=this.parseChildren();i[o]=Object.keys(_).length===1?_[sr]:new Vr([],_),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 ln(4011,!1)}};function lA(t){return t.segments.length>0?new Vr([],{[sr]:t}):t}function cA(t){let r={};for(let[l,u]of Object.entries(t.children)){let o=cA(u);if(l===sr&&o.segments.length===0&&o.hasChildren())for(let[_,M]of Object.entries(o.children))r[_]=M;else(o.segments.length>0||o.hasChildren())&&(r[l]=o)}let i=new Vr(t.segments,r);return vV(i)}function vV(t){if(t.numberOfChildren===1&&t.children[sr]){let r=t.children[sr];return new Vr(t.segments.concat(r.segments),r.children)}return t}function Ap(t){return t instanceof xc}function uA(t,r,i=null,l=null){let u=dA(t);return hA(u,r,i,l)}function dA(t){let r;function i(o){let _={};for(let P of o.children){let Z=i(P);_[P.outlet]=Z}let M=new Vr(o.url,_);return o===t&&(r=M),M}let l=i(t.root),u=lA(l);return r??u}function hA(t,r,i,l){let u=t;for(;u.parent;)u=u.parent;if(r.length===0)return Lx(u,u,u,i,l);let o=_V(r);if(o.toRoot())return Lx(u,u,new Vr([],{}),i,l);let _=bV(o,u,t),M=_.processChildren?Ag(_.segmentGroup,_.index,o.commands):pA(_.segmentGroup,_.index,o.commands);return Lx(u,_.segmentGroup,M,i,l)}function j_(t){return typeof t=="object"&&t!=null&&!t.outlets&&!t.segmentPath}function Og(t){return typeof t=="object"&&t!=null&&t.outlets}function Lx(t,r,i,l,u){let o={};l&&Object.entries(l).forEach(([P,Z])=>{o[P]=Array.isArray(Z)?Z.map(G=>`${G}`):`${Z}`});let _;t===r?_=i:_=fA(t,r,i);let M=lA(cA(_));return new xc(M,o,u)}function fA(t,r,i){let l={};return Object.entries(t.children).forEach(([u,o])=>{o===r?l[u]=i:l[u]=fA(o,r,i)}),new Vr(t.segments,l)}var B_=class{isAbsolute;numberOfDoubleDots;commands;constructor(r,i,l){if(this.isAbsolute=r,this.numberOfDoubleDots=i,this.commands=l,r&&l.length>0&&j_(l[0]))throw new ln(4003,!1);let u=l.find(Og);if(u&&u!==tA(l))throw new ln(4004,!1)}toRoot(){return this.isAbsolute&&this.commands.length===1&&this.commands[0]=="/"}};function _V(t){if(typeof t[0]=="string"&&t.length===1&&t[0]==="/")return new B_(!0,0,t);let r=0,i=!1,l=t.reduce((u,o,_)=>{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]:_===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 B_(i,r,l)}var Mp=class{segmentGroup;processChildren;index;constructor(r,i,l){this.segmentGroup=r,this.processChildren=i,this.index=l}};function bV(t,r,i){if(t.isAbsolute)return new Mp(r,!0,0);if(!i)return new Mp(r,!1,NaN);if(i.parent===null)return new Mp(i,!0,0);let l=j_(t.commands[0])?0:1,u=i.segments.length-1+l;return wV(i,u,t.numberOfDoubleDots)}function wV(t,r,i){let l=t,u=r,o=i;for(;o>u;){if(o-=u,l=l.parent,!l)throw new ln(4005,!1);u=l.segments.length}return new Mp(l,!1,u-o)}function xV(t){return Og(t[0])?t[0].outlets:{[sr]:t}}function pA(t,r,i){if(t??=new Vr([],{}),t.segments.length===0&&t.hasChildren())return Ag(t,r,i);let l=CV(t,r,i),u=i.slice(l.commandIndex);if(l.match&&l.pathIndex<t.segments.length){let o=new Vr(t.segments.slice(0,l.pathIndex),{});return o.children[sr]=new Vr(t.segments.slice(l.pathIndex),t.children),Ag(o,0,u)}else return l.match&&u.length===0?new Vr(t.segments,{}):l.match&&!t.hasChildren()?Ux(t,r,i):l.match?Ag(t,0,u):Ux(t,r,i)}function Ag(t,r,i){if(i.length===0)return new Vr(t.segments,{});{let l=xV(i),u={};if(Object.keys(l).some(o=>o!==sr)&&t.children[sr]&&t.numberOfChildren===1&&t.children[sr].segments.length===0){let o=Ag(t.children[sr],r,i);return new Vr(t.segments,o.children)}return Object.entries(l).forEach(([o,_])=>{typeof _=="string"&&(_=[_]),_!==null&&(u[o]=pA(t.children[o],r,_))}),Object.entries(t.children).forEach(([o,_])=>{l[o]===void 0&&(u[o]=_)}),new Vr(t.segments,u)}}function CV(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 _=t.segments[u],M=i[l];if(Og(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(!YP(P,Z,_))return o;l+=2}else{if(!YP(P,{},_))return o;l++}u++}return{match:!0,pathIndex:u,commandIndex:l}}function Ux(t,r,i){let l=t.segments.slice(0,r),u=0;for(;u<i.length;){let o=i[u];if(Og(o)){let P=SV(o.outlets);return new Vr(l,P)}if(u===0&&j_(i[0])){let P=t.segments[r];l.push(new Id(P.path,ZP(i[0]))),u++;continue}let _=Og(o)?o.outlets[sr]:`${o}`,M=u<i.length-1?i[u+1]:null;_&&M&&j_(M)?(l.push(new Id(_,ZP(M))),u+=2):(l.push(new Id(_,{})),u++)}return new Vr(l,{})}function SV(t){let r={};return Object.entries(t).forEach(([i,l])=>{typeof l=="string"&&(l=[l]),l!==null&&(r[i]=Ux(new Vr([],{}),0,l))}),r}function ZP(t){let r={};return Object.entries(t).forEach(([i,l])=>r[i]=`${l}`),r}function YP(t,r,i){return t==i.path&&bc(r,i.parameters)}var kg="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}},Gh=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}')`}},pu=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||{}),Lg=function(t){return t[t.IgnoredSameUrlNavigation=0]="IgnoredSameUrlNavigation",t[t.IgnoredByUrlHandlingStrategy=1]="IgnoredByUrlHandlingStrategy",t}(Lg||{}),wc=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}')`}},mu=class extends La{reason;code;type=Jo.NavigationSkipped;constructor(r,i,l,u){super(r,i),this.reason=l,this.code=u}},kp=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})`}},Ng=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})`}},V_=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})`}},U_=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})`}},$_=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})`}},H_=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})`}},G_=class{route;type=Jo.RouteConfigLoadStart;constructor(r){this.route=r}toString(){return`RouteConfigLoadStart(path: ${this.route.path})`}},W_=class{route;type=Jo.RouteConfigLoadEnd;constructor(r){this.route=r}toString(){return`RouteConfigLoadEnd(path: ${this.route.path})`}},q_=class{snapshot;type=Jo.ChildActivationStart;constructor(r){this.snapshot=r}toString(){return`ChildActivationStart(path: '${this.snapshot.routeConfig&&this.snapshot.routeConfig.path||""}')`}},Z_=class{snapshot;type=Jo.ChildActivationEnd;constructor(r){this.snapshot=r}toString(){return`ChildActivationEnd(path: '${this.snapshot.routeConfig&&this.snapshot.routeConfig.path||""}')`}},Y_=class{snapshot;type=Jo.ActivationStart;constructor(r){this.snapshot=r}toString(){return`ActivationStart(path: '${this.snapshot.routeConfig&&this.snapshot.routeConfig.path||""}')`}},K_=class{snapshot;type=Jo.ActivationEnd;constructor(r){this.snapshot=r}toString(){return`ActivationEnd(path: '${this.snapshot.routeConfig&&this.snapshot.routeConfig.path||""}')`}};var Fg=class{},Rp=class{url;navigationBehaviorOptions;constructor(r,i){this.url=r,this.navigationBehaviorOptions=i}};function EV(t){return!(t instanceof Fg)&&!(t instanceof Rp)}function IV(t,r){return t.providers&&!t._injector&&(t._injector=ig(t.providers,r,`Route: ${t.path}`)),t._injector??r}function jl(t){return t.outlet||sr}function DV(t,r){let i=t.filter(l=>jl(l)===r);return i.push(...t.filter(l=>jl(l)!==r)),i}function Np(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 X_=class{rootInjector;outlet=null;route=null;children;attachRef=null;get injector(){return Np(this.route?.snapshot)??this.rootInjector}constructor(r){this.rootInjector=r,this.children=new Fp(this.rootInjector)}},Fp=(()=>{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 X_(this.rootInjector),this.contexts.set(i,l)),l}getContext(i){return this.contexts.get(i)||null}static \u0275fac=function(l){return new(l||t)(nr(ms))};static \u0275prov=qt({token:t,factory:t.\u0275fac,providedIn:"root"})}return t})(),J_=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=$x(r,this._root);return i?i.children.map(l=>l.value):[]}firstChild(r){let i=$x(r,this._root);return i&&i.children.length>0?i.children[0].value:null}siblings(r){let i=Hx(r,this._root);return i.length<2?[]:i[i.length-2].children.map(u=>u.value).filter(u=>u!==r)}pathFromRoot(r){return Hx(r,this._root).map(i=>i.value)}};function $x(t,r){if(t===r.value)return r;for(let i of r.children){let l=$x(t,i);if(l)return l}return null}function Hx(t,r){if(t===r.value)return[r];for(let i of r.children){let l=Hx(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 Tp(t){let r={};return t&&t.children.forEach(i=>r[i.value.outlet]=i),r}var zg=class extends J_{snapshot;constructor(r,i){super(r),this.snapshot=i,Jx(this,r)}toString(){return this.snapshot.toString()}};function mA(t){let r=TV(t),i=new Di([new Id("",{})]),l=new Di({}),u=new Di({}),o=new Di({}),_=new Di(""),M=new el(i,l,o,_,u,sr,t,r.root);return M.snapshot=r.root,new zg(new Oa(M,[]),r)}function TV(t){let r={},i={},l={},u="",o=new Uh([],r,l,u,i,sr,t,null,{});return new jg("",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,_,M,P){this.urlSubject=r,this.paramsSubject=i,this.queryParamsSubject=l,this.fragmentSubject=u,this.dataSubject=o,this.outlet=_,this.component=M,this._futureSnapshot=P,this.title=this.dataSubject?.pipe(qn(Z=>Z[$g]))??Wn(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(qn(r=>$h(r))),this._paramMap}get queryParamMap(){return this._queryParamMap??=this.queryParams.pipe(qn(r=>$h(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&&yA(u)&&(l.resolve[$g]=u.title),l}var Uh=class{url;params;queryParams;fragment;data;outlet;component;routeConfig;_resolve;_resolvedData;_routerState;_paramMap;_queryParamMap;get title(){return this.data?.[$g]}constructor(r,i,l,u,o,_,M,P,Z){this.url=r,this.params=i,this.queryParams=l,this.fragment=u,this.data=o,this.outlet=_,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??=$h(this.params),this._paramMap}get queryParamMap(){return this._queryParamMap??=$h(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}')`}},jg=class extends J_{url;constructor(r,i){super(i),this.url=r,Jx(this,i)}toString(){return gA(this._root)}};function Jx(t,r){r.value._routerState=t,r.children.forEach(i=>Jx(t,i))}function gA(t){let r=t.children.length>0?` { ${t.children.map(gA).join(", ")} } `:"";return`${t.value}${r}`}function Nx(t){if(t.snapshot){let r=t.snapshot,i=t._futureSnapshot;t.snapshot=i,bc(r.queryParams,i.queryParams)||t.queryParamsSubject.next(i.queryParams),r.fragment!==i.fragment&&t.fragmentSubject.next(i.fragment),bc(r.params,i.params)||t.paramsSubject.next(i.params),tV(r.url,i.url)||t.urlSubject.next(i.url),bc(r.data,i.data)||t.dataSubject.next(i.data)}else t.snapshot=t._futureSnapshot,t.dataSubject.next(t._futureSnapshot.data)}function Gx(t,r){let i=bc(t.params,r.params)&&oV(t.url,r.url),l=!t.parent!=!r.parent;return i&&!l&&(!t.parent||Gx(t.parent,r.parent))}function yA(t){return typeof t.title=="string"||t.title===null}var vA=new kn(""),Wh=(()=>{class t{activated=null;get activatedComponentRef(){return this.activated}_activatedRoute=null;name=sr;activateEvents=new Ts;deactivateEvents=new Ts;attachEvents=new Ts;detachEvents=new Ts;routerOutletData=kr(void 0);parentContexts=Be(Fp);location=Be(Ah);changeDetector=Be(u_);inputBinder=Be(r0,{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 ln(4012,!1);return this.activated.instance}get activatedRoute(){if(!this.activated)throw new ln(4012,!1);return this._activatedRoute}get activatedRouteData(){return this._activatedRoute?this._activatedRoute.snapshot.data:{}}detach(){if(!this.activated)throw new ln(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 ln(4013,!1);this._activatedRoute=i;let u=this.location,_=i.snapshot.component,M=this.parentContexts.getOrCreateContext(this.name).children,P=new Wx(i,M,u.injector,this.routerOutletData);this.activated=u.createComponent(_,{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=kh({type:t,selectors:[["router-outlet"]],inputs:{name:"name",routerOutletData:[1,"routerOutletData"]},outputs:{activateEvents:"activate",deactivateEvents:"deactivate",attachEvents:"attach",detachEvents:"detach"},exportAs:["outlet"],features:[Qm]})}return t})(),Wx=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===Fp?this.childContexts:r===vA?this.outletData:this.parent.get(r,i)}},r0=new kn("");var Qx=(()=>{class t{static \u0275fac=function(l){return new(l||t)};static \u0275cmp=En({type:t,selectors:[["ng-component"]],exportAs:["emptyRouterOutlet"],decls:1,vars:0,template:function(l,u){l&1&&Bt(0,"router-outlet")},dependencies:[Wh],encapsulation:2})}return t})();function eC(t){let r=t.children&&t.children.map(eC),i=r?fr($t({},t),{children:r}):$t({},t);return!i.component&&!i.loadComponent&&(r||i.loadChildren)&&i.outlet&&i.outlet!==sr&&(i.component=Qx),i}function MV(t,r,i){let l=Bg(t,r._root,i?i._root:void 0);return new zg(l,r)}function Bg(t,r,i){if(i&&t.shouldReuseRoute(r.value,i.value.snapshot)){let l=i.value;l._futureSnapshot=r.value;let u=PV(t,r,i);return new Oa(l,u)}else{if(t.shouldAttach(r.value)){let o=t.retrieve(r.value);if(o!==null){let _=o.route;return _.value._futureSnapshot=r.value,_.children=r.children.map(M=>Bg(t,M)),_}}let l=AV(r.value),u=r.children.map(o=>Bg(t,o));return new Oa(l,u)}}function PV(t,r,i){return r.children.map(l=>{for(let u of i.children)if(t.shouldReuseRoute(l.value,u.value.snapshot))return Bg(t,l,u);return Bg(t,l)})}function AV(t){return new el(new Di(t.url),new Di(t.params),new Di(t.queryParams),new Di(t.fragment),new Di(t.data),t.outlet,t.component,t)}var Op=class{redirectTo;navigationBehaviorOptions;constructor(r,i){this.redirectTo=r,this.navigationBehaviorOptions=i}},_A="ngNavigationCancelingError";function e0(t,r){let{redirectTo:i,navigationBehaviorOptions:l}=Ap(r)?{redirectTo:r,navigationBehaviorOptions:void 0}:r,u=bA(!1,ea.Redirect);return u.url=i,u.navigationBehaviorOptions=l,u}function bA(t,r){let i=new Error(`NavigationCancelingError: ${t||""}`);return i[_A]=!0,i.cancellationCode=r,i}function kV(t){return wA(t)&&Ap(t.url)}function wA(t){return!!t&&t[_A]}var RV=(t,r,i,l)=>qn(u=>(new qx(r,u.targetRouterState,u.currentRouterState,i,l).activate(t),u)),qx=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),Nx(this.futureState.root),this.activateChildRoutes(i,l,r)}deactivateChildRoutes(r,i,l){let u=Tp(i);r.children.forEach(o=>{let _=o.value.outlet;this.deactivateRoutes(o,u[_],l),delete u[_]}),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 _=l.getContext(u.outlet);_&&this.deactivateChildRoutes(r,i,_.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=Tp(r);for(let _ of Object.values(o))this.deactivateRouteAndItsChildren(_,u);if(l&&l.outlet){let _=l.outlet.detach(),M=l.children.onOutletDeactivated();this.routeReuseStrategy.store(r.value.snapshot,{componentRef:_,route:r,contexts:M})}}deactivateRouteAndOutlet(r,i){let l=i.getContext(r.value.outlet),u=l&&r.value.component?l.children:i,o=Tp(r);for(let _ of Object.values(o))this.deactivateRouteAndItsChildren(_,u);l&&(l.outlet&&(l.outlet.deactivate(),l.children.onOutletDeactivated()),l.attachRef=null,l.route=null)}activateChildRoutes(r,i,l){let u=Tp(i);r.children.forEach(o=>{this.activateRoutes(o,u[o.value.outlet],l),this.forwardEvent(new K_(o.value.snapshot))}),r.children.length&&this.forwardEvent(new Z_(r.value.snapshot))}activateRoutes(r,i,l){let u=r.value,o=i?i.value:null;if(Nx(u),u===o)if(u.component){let _=l.getOrCreateContext(u.outlet);this.activateChildRoutes(r,i,_.children)}else this.activateChildRoutes(r,i,l);else if(u.component){let _=l.getOrCreateContext(u.outlet);if(this.routeReuseStrategy.shouldAttach(u.snapshot)){let M=this.routeReuseStrategy.retrieve(u.snapshot);this.routeReuseStrategy.store(u.snapshot,null),_.children.onOutletReAttached(M.contexts),_.attachRef=M.componentRef,_.route=M.route.value,_.outlet&&_.outlet.attach(M.componentRef,M.route.value),Nx(M.route.value),this.activateChildRoutes(r,null,_.children)}else _.attachRef=null,_.route=u,_.outlet&&_.outlet.activateWith(u,_.injector),this.activateChildRoutes(r,null,_.children)}else this.activateChildRoutes(r,null,l)}},t0=class{path;route;constructor(r){this.path=r,this.route=this.path[this.path.length-1]}},Pp=class{component;route;constructor(r,i){this.component=r,this.route=i}};function OV(t,r,i){let l=t._root,u=r?r._root:null;return Pg(l,u,i,[l.value])}function LV(t){let r=t.routeConfig?t.routeConfig.canActivateChild:null;return!r||r.length===0?null:{node:t,guards:r}}function zp(t,r){let i=Symbol(),l=r.get(t,i);return l===i?typeof t=="function"&&!rb(t)?t:r.get(t):l}function Pg(t,r,i,l,u={canDeactivateChecks:[],canActivateChecks:[]}){let o=Tp(r);return t.children.forEach(_=>{NV(_,o[_.value.outlet],i,l.concat([_.value]),u),delete o[_.value.outlet]}),Object.entries(o).forEach(([_,M])=>Rg(M,i.getContext(_),u)),u}function NV(t,r,i,l,u={canDeactivateChecks:[],canActivateChecks:[]}){let o=t.value,_=r?r.value:null,M=i?i.getContext(t.value.outlet):null;if(_&&o.routeConfig===_.routeConfig){let P=FV(_,o,o.routeConfig.runGuardsAndResolvers);P?u.canActivateChecks.push(new t0(l)):(o.data=_.data,o._resolvedData=_._resolvedData),o.component?Pg(t,r,M?M.children:null,l,u):Pg(t,r,i,l,u),P&&M&&M.outlet&&M.outlet.isActivated&&u.canDeactivateChecks.push(new Pp(M.outlet.component,_))}else _&&Rg(r,M,u),u.canActivateChecks.push(new t0(l)),o.component?Pg(t,null,M?M.children:null,l,u):Pg(t,null,i,l,u);return u}function FV(t,r,i){if(typeof i=="function")return i(t,r);switch(i){case"pathParamsChange":return!Vh(t.url,r.url);case"pathParamsOrQueryParamsChange":return!Vh(t.url,r.url)||!bc(t.queryParams,r.queryParams);case"always":return!0;case"paramsOrQueryParamsChange":return!Gx(t,r)||!bc(t.queryParams,r.queryParams);case"paramsChange":default:return!Gx(t,r)}}function Rg(t,r,i){let l=Tp(t),u=t.value;Object.entries(l).forEach(([o,_])=>{u.component?r?Rg(_,r.children.getContext(o),i):Rg(_,null,i):Rg(_,r,i)}),u.component?r&&r.outlet&&r.outlet.isActivated?i.canDeactivateChecks.push(new Pp(r.outlet.component,u)):i.canDeactivateChecks.push(new Pp(null,u)):i.canDeactivateChecks.push(new Pp(null,u))}function Gg(t){return typeof t=="function"}function zV(t){return typeof t=="boolean"}function jV(t){return t&&Gg(t.canLoad)}function BV(t){return t&&Gg(t.canActivate)}function VV(t){return t&&Gg(t.canActivateChild)}function UV(t){return t&&Gg(t.canDeactivate)}function $V(t){return t&&Gg(t.canMatch)}function xA(t){return t instanceof Zc||t?.name==="EmptyError"}var L_=Symbol("INITIAL_VALUE");function Lp(){return ao(t=>lc(t.map(r=>r.pipe(Gs(1),$1(L_)))).pipe(qn(r=>{for(let i of r)if(i!==!0){if(i===L_)return L_;if(i===!1||HV(i))return i}return!0}),Xi(r=>r!==L_),Gs(1)))}function HV(t){return Ap(t)||t instanceof Op}function GV(t,r){return No(i=>{let{targetSnapshot:l,currentSnapshot:u,guards:{canActivateChecks:o,canDeactivateChecks:_}}=i;return _.length===0&&o.length===0?Wn(fr($t({},i),{guardsResult:!0})):WV(_,l,u,t).pipe(No(M=>M&&zV(M)?qV(l,o,t,r):Wn(M)),qn(M=>fr($t({},i),{guardsResult:M})))})}function WV(t,r,i,l){return mi(t).pipe(No(u=>JV(u.component,u.route,i,r,l)),Yc(u=>u!==!0,!0))}function qV(t,r,i,l){return mi(r).pipe(Kf(u=>Yf(YV(u.route.parent,l),ZV(u.route,l),XV(t,u.path,i),KV(t,u.route,i))),Yc(u=>u!==!0,!0))}function ZV(t,r){return t!==null&&r&&r(new Y_(t)),Wn(!0)}function YV(t,r){return t!==null&&r&&r(new q_(t)),Wn(!0)}function KV(t,r,i){let l=r.routeConfig?r.routeConfig.canActivate:null;if(!l||l.length===0)return Wn(!0);let u=l.map(o=>Sm(()=>{let _=Np(r)??i,M=zp(o,_),P=BV(M)?M.canActivate(r,t):Ws(_,()=>M(r,t));return gu(P).pipe(Yc())}));return Wn(u).pipe(Lp())}function XV(t,r,i){let l=r[r.length-1],o=r.slice(0,r.length-1).reverse().map(_=>LV(_)).filter(_=>_!==null).map(_=>Sm(()=>{let M=_.guards.map(P=>{let Z=Np(_.node)??i,G=zp(P,Z),N=VV(G)?G.canActivateChild(l,t):Ws(Z,()=>G(l,t));return gu(N).pipe(Yc())});return Wn(M).pipe(Lp())}));return Wn(o).pipe(Lp())}function JV(t,r,i,l,u){let o=r&&r.routeConfig?r.routeConfig.canDeactivate:null;if(!o||o.length===0)return Wn(!0);let _=o.map(M=>{let P=Np(r)??u,Z=zp(M,P),G=UV(Z)?Z.canDeactivate(t,r,i,l):Ws(P,()=>Z(t,r,i,l));return gu(G).pipe(Yc())});return Wn(_).pipe(Lp())}function QV(t,r,i,l){let u=r.canLoad;if(u===void 0||u.length===0)return Wn(!0);let o=u.map(_=>{let M=zp(_,t),P=jV(M)?M.canLoad(r,i):Ws(t,()=>M(r,i));return gu(P)});return Wn(o).pipe(Lp(),CA(l))}function CA(t){return P1(Bi(r=>{if(typeof r!="boolean")throw e0(t,r)}),qn(r=>r===!0))}function e9(t,r,i,l){let u=r.canMatch;if(!u||u.length===0)return Wn(!0);let o=u.map(_=>{let M=zp(_,t),P=$V(M)?M.canMatch(r,i):Ws(t,()=>M(r,i));return gu(P)});return Wn(o).pipe(Lp(),CA(l))}var Vg=class{segmentGroup;constructor(r){this.segmentGroup=r||null}},Ug=class extends Error{urlTree;constructor(r){super(),this.urlTree=r}};function Dp(t){return Zf(new Vg(t))}function t9(t){return Zf(new ln(4e3,!1))}function n9(t){return Zf(bA(!1,ea.GuardRejected))}var Zx=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 Wn(l);if(u.numberOfChildren>1||!u.children[sr])return t9(`${r.redirectTo}`);u=u.children[sr]}}applyRedirectCommands(r,i,l,u,o){return r9(i,u,o).pipe(qn(_=>{if(_ instanceof xc)throw new Ug(_);let M=this.applyRedirectCreateUrlTree(_,this.urlSerializer.parse(_),r,l);if(_[0]==="/")throw new Ug(M);return M}))}applyRedirectCreateUrlTree(r,i,l,u){let o=this.createSegmentGroup(r,i.root,l,u);return new xc(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),_={};return Object.entries(i.children).forEach(([M,P])=>{_[M]=this.createSegmentGroup(r,P,l,u)}),new Vr(o,_)}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 ln(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 r9(t,r,i){if(typeof t=="string")return Wn(t);let l=t,{queryParams:u,fragment:o,routeConfig:_,url:M,outlet:P,params:Z,data:G,title:N}=r;return gu(Ws(i,()=>l({params:Z,data:G,queryParams:u,fragment:o,routeConfig:_,url:M,outlet:P,title:N})))}var Yx={matched:!1,consumedSegments:[],remainingSegments:[],parameters:{},positionalParamSegments:{}};function i9(t,r,i,l,u){let o=SA(t,r,i);return o.matched?(l=IV(r,l),e9(l,r,i,u).pipe(qn(_=>_===!0?o:$t({},Yx)))):Wn(o)}function SA(t,r,i){if(r.path==="**")return o9(i);if(r.path==="")return r.pathMatch==="full"&&(t.hasChildren()||i.length>0)?$t({},Yx):{matched:!0,consumedSegments:[],remainingSegments:i,parameters:{},positionalParamSegments:{}};let u=(r.matcher||QP)(i,t,r);if(!u)return $t({},Yx);let o={};Object.entries(u.posParams??{}).forEach(([M,P])=>{o[M]=P.path});let _=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:_,positionalParamSegments:u.posParams??{}}}function o9(t){return{matched:!0,parameters:t.length>0?tA(t).parameters:{},consumedSegments:t,remainingSegments:[],positionalParamSegments:{}}}function KP(t,r,i,l){return i.length>0&&l9(t,i,l)?{segmentGroup:new Vr(r,a9(l,new Vr(i,t.children))),slicedSegments:[]}:i.length===0&&c9(t,i,l)?{segmentGroup:new Vr(t.segments,s9(t,i,l,t.children)),slicedSegments:i}:{segmentGroup:new Vr(t.segments,t.children),slicedSegments:i}}function s9(t,r,i,l){let u={};for(let o of i)if(i0(t,r,o)&&!l[jl(o)]){let _=new Vr([],{});u[jl(o)]=_}return $t($t({},l),u)}function a9(t,r){let i={};i[sr]=r;for(let l of t)if(l.path===""&&jl(l)!==sr){let u=new Vr([],{});i[jl(l)]=u}return i}function l9(t,r,i){return i.some(l=>i0(t,r,l)&&jl(l)!==sr)}function c9(t,r,i){return i.some(l=>i0(t,r,l))}function i0(t,r,i){return(t.hasChildren()||r.length>0)&&i.pathMatch==="full"?!1:i.path===""}function u9(t,r,i){return r.length===0&&!t.children[i]}var Kx=class{};function d9(t,r,i,l,u,o,_="emptyOnly"){return new Xx(t,r,i,l,u,_,o).recognize()}var h9=31,Xx=class{injector;configLoader;rootComponentType;config;urlTree;paramsInheritanceStrategy;urlSerializer;applyRedirects;absoluteRedirectCount=0;allowRedirects=!0;constructor(r,i,l,u,o,_,M){this.injector=r,this.configLoader=i,this.rootComponentType=l,this.config=u,this.urlTree=o,this.paramsInheritanceStrategy=_,this.urlSerializer=M,this.applyRedirects=new Zx(this.urlSerializer,this.urlTree)}noMatchError(r){return new ln(4002,`'${r.segmentGroup}'`)}recognize(){let r=KP(this.urlTree.root,[],[],this.config).segmentGroup;return this.match(r).pipe(qn(({children:i,rootSnapshot:l})=>{let u=new Oa(l,i),o=new jg("",u),_=uA(l,[],this.urlTree.queryParams,this.urlTree.fragment);return _.queryParams=this.urlTree.queryParams,o.url=this.urlSerializer.serialize(_),{state:o,tree:_}}))}match(r){let i=new Uh([],Object.freeze({}),Object.freeze($t({},this.urlTree.queryParams)),this.urlTree.fragment,Object.freeze({}),sr,this.rootComponentType,null,{});return this.processSegmentGroup(this.injector,this.config,r,sr,i).pipe(qn(l=>({children:l,rootSnapshot:i})),od(l=>{if(l instanceof Ug)return this.urlTree=l.urlTree,this.match(l.urlTree.root);throw l instanceof Vg?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(qn(_=>_ instanceof Oa?[_]:[]))}processChildren(r,i,l,u){let o=[];for(let _ of Object.keys(l.children))_==="primary"?o.unshift(_):o.push(_);return mi(o).pipe(Kf(_=>{let M=l.children[_],P=DV(i,_);return this.processSegmentGroup(r,P,M,_,u)}),B1((_,M)=>(_.push(...M),_)),sd(null),j1(),No(_=>{if(_===null)return Dp(l);let M=EA(_);return f9(M),Wn(M)}))}processSegment(r,i,l,u,o,_,M){return mi(i).pipe(Kf(P=>this.processSegmentAgainstRoute(P._injector??r,i,P,l,u,o,_,M).pipe(od(Z=>{if(Z instanceof Vg)return Wn(null);throw Z}))),Yc(P=>!!P),od(P=>{if(xA(P))return u9(l,u,o)?Wn(new Kx):Dp(l);throw P}))}processSegmentAgainstRoute(r,i,l,u,o,_,M,P){return jl(l)!==_&&(_===sr||!i0(u,o,l))?Dp(u):l.redirectTo===void 0?this.matchSegmentAgainstRoute(r,u,l,o,_,P):this.allowRedirects&&M?this.expandSegmentAgainstRouteUsingRedirect(r,u,i,l,o,_,P):Dp(u)}expandSegmentAgainstRouteUsingRedirect(r,i,l,u,o,_,M){let{matched:P,parameters:Z,consumedSegments:G,positionalParamSegments:N,remainingSegments:X}=SA(i,u,o);if(!P)return Dp(i);typeof u.redirectTo=="string"&&u.redirectTo[0]==="/"&&(this.absoluteRedirectCount++,this.absoluteRedirectCount>h9&&(this.allowRedirects=!1));let K=new Uh(o,Z,Object.freeze($t({},this.urlTree.queryParams)),this.urlTree.fragment,XP(u),jl(u),u.component??u._loadedComponent??null,u,JP(u)),Q=Q_(K,M,this.paramsInheritanceStrategy);return K.params=Object.freeze(Q.params),K.data=Object.freeze(Q.data),this.applyRedirects.applyRedirectCommands(G,u.redirectTo,N,K,r).pipe(ao(le=>this.applyRedirects.lineralizeSegments(u,le)),No(le=>this.processSegment(r,l,i,le.concat(X),_,!1,M)))}matchSegmentAgainstRoute(r,i,l,u,o,_){let M=i9(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 G=l._loadedInjector??r,{parameters:N,consumedSegments:X,remainingSegments:K}=P,Q=new Uh(X,N,Object.freeze($t({},this.urlTree.queryParams)),this.urlTree.fragment,XP(l),jl(l),l.component??l._loadedComponent??null,l,JP(l)),te=Q_(Q,_,this.paramsInheritanceStrategy);Q.params=Object.freeze(te.params),Q.data=Object.freeze(te.data);let{segmentGroup:le,slicedSegments:j}=KP(i,X,K,Z);if(j.length===0&&le.hasChildren())return this.processChildren(G,Z,le,Q).pipe(qn(ve=>new Oa(Q,ve)));if(Z.length===0&&j.length===0)return Wn(new Oa(Q,[]));let re=jl(l)===o;return this.processSegment(G,Z,le,j,re?sr:o,!0,Q).pipe(qn(ve=>new Oa(Q,ve instanceof Oa?[ve]:[])))}))):Dp(i)))}getChildConfig(r,i,l){return i.children?Wn({routes:i.children,injector:r}):i.loadChildren?i._loadedRoutes!==void 0?Wn({routes:i._loadedRoutes,injector:i._loadedInjector}):QV(r,i,l,this.urlSerializer).pipe(No(u=>u?this.configLoader.loadChildren(r,i).pipe(Bi(o=>{i._loadedRoutes=o.routes,i._loadedInjector=o.injector})):n9(i))):Wn({routes:[],injector:r})}};function f9(t){t.sort((r,i)=>r.value.outlet===sr?-1:i.value.outlet===sr?1:r.value.outlet.localeCompare(i.value.outlet))}function p9(t){let r=t.value.routeConfig;return r&&r.path===""}function EA(t){let r=[],i=new Set;for(let l of t){if(!p9(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=EA(l.children);r.push(new Oa(l.value,u))}return r.filter(l=>!i.has(l))}function XP(t){return t.data||{}}function JP(t){return t.resolve||{}}function m9(t,r,i,l,u,o){return No(_=>d9(t,r,i,l,_.extractedUrl,u,o).pipe(qn(({state:M,tree:P})=>fr($t({},_),{targetSnapshot:M,urlAfterRedirects:P}))))}function g9(t,r){return No(i=>{let{targetSnapshot:l,guards:{canActivateChecks:u}}=i;if(!u.length)return Wn(i);let o=new Set(u.map(P=>P.route)),_=new Set;for(let P of o)if(!_.has(P))for(let Z of IA(P))_.add(Z);let M=0;return mi(_).pipe(Kf(P=>o.has(P)?y9(P,l,t,r):(P.data=Q_(P,P.parent,t).resolve,Wn(void 0))),Bi(()=>M++),Xf(1),No(P=>M===_.size?Wn(i):Ds))})}function IA(t){let r=t.children.map(i=>IA(i)).flat();return[t,...r]}function y9(t,r,i,l){let u=t.routeConfig,o=t._resolve;return u?.title!==void 0&&!yA(u)&&(o[$g]=u.title),Sm(()=>(t.data=Q_(t,t.parent,i).resolve,v9(o,t,r,l).pipe(qn(_=>(t._resolvedData=_,t.data=$t($t({},t.data),_),null)))))}function v9(t,r,i,l){let u=jx(t);if(u.length===0)return Wn({});let o={};return mi(u).pipe(No(_=>_9(t[_],r,i,l).pipe(Yc(),Bi(M=>{if(M instanceof Op)throw e0(new Hh,M);o[_]=M}))),Xf(1),qn(()=>o),od(_=>xA(_)?Ds:Zf(_)))}function _9(t,r,i,l){let u=Np(r)??l,o=zp(t,u),_=o.resolve?o.resolve(r,i):Ws(u,()=>o(r,i));return gu(_)}function Fx(t){return ao(r=>{let i=t(r);return i?mi(i).pipe(qn(()=>r)):Wn(r)})}var tC=(()=>{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===sr);return l}getResolvedTitleForRoute(i){return i.data[$g]}static \u0275fac=function(l){return new(l||t)};static \u0275prov=qt({token:t,factory:()=>Be(DA),providedIn:"root"})}return t})(),DA=(()=>{class t extends tC{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)(nr(SM))};static \u0275prov=qt({token:t,factory:t.\u0275fac,providedIn:"root"})}return t})(),Wg=new kn("",{providedIn:"root",factory:()=>({})}),qg=new kn(""),TA=(()=>{class t{componentLoaders=new WeakMap;childrenLoaders=new WeakMap;onLoadStartListener;onLoadEndListener;compiler=Be(ww);loadComponent(i,l){if(this.componentLoaders.get(l))return this.componentLoaders.get(l);if(l._loadedComponent)return Wn(l._loadedComponent);this.onLoadStartListener&&this.onLoadStartListener(l);let u=gu(Ws(i,()=>l.loadComponent())).pipe(qn(PA),ao(AA),Bi(_=>{this.onLoadEndListener&&this.onLoadEndListener(l),l._loadedComponent=_}),Em(()=>{this.componentLoaders.delete(l)})),o=new Wf(u,()=>new Gr).pipe(Gf());return this.componentLoaders.set(l,o),o}loadChildren(i,l){if(this.childrenLoaders.get(l))return this.childrenLoaders.get(l);if(l._loadedRoutes)return Wn({routes:l._loadedRoutes,injector:l._loadedInjector});this.onLoadStartListener&&this.onLoadStartListener(l);let o=MA(l,this.compiler,i,this.onLoadEndListener).pipe(Em(()=>{this.childrenLoaders.delete(l)})),_=new Wf(o,()=>new Gr).pipe(Gf());return this.childrenLoaders.set(l,_),_}static \u0275fac=function(l){return new(l||t)};static \u0275prov=qt({token:t,factory:t.\u0275fac,providedIn:"root"})}return t})();function MA(t,r,i,l){return gu(Ws(i,()=>t.loadChildren())).pipe(qn(PA),ao(AA),No(u=>u instanceof Qv||Array.isArray(u)?Wn(u):mi(r.compileModuleAsync(u))),qn(u=>{l&&l(t);let o,_,M=!1;return Array.isArray(u)?(_=u,M=!0):(o=u.create(i).injector,_=o.get(qg,[],{optional:!0,self:!0}).flat()),{routes:_.map(eC),injector:o}}))}function b9(t){return t&&typeof t=="object"&&"default"in t}function PA(t){return b9(t)?t.default:t}function AA(t){return Wn(t)}var o0=(()=>{class t{static \u0275fac=function(l){return new(l||t)};static \u0275prov=qt({token:t,factory:()=>Be(w9),providedIn:"root"})}return t})(),w9=(()=>{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=qt({token:t,factory:t.\u0275fac,providedIn:"root"})}return t})(),kA=new kn("");var RA=new kn(""),OA=(()=>{class t{currentNavigation=null;currentTransition=null;lastSuccessfulNavigation=null;events=new Gr;transitionAbortWithErrorSubject=new Gr;configLoader=Be(TA);environmentInjector=Be(ms);destroyRef=Be(Ks);urlSerializer=Be(Hg);rootContexts=Be(Fp);location=Be(wp);inputBindingEnabled=Be(r0,{optional:!0})!==null;titleStrategy=Be(tC);options=Be(Wg,{optional:!0})||{};paramsInheritanceStrategy=this.options.paramsInheritanceStrategy||"emptyOnly";urlHandlingStrategy=Be(o0);createViewTransition=Be(kA,{optional:!0});navigationErrorHandler=Be(RA,{optional:!0});navigationId=0;get hasRequestedNavigation(){return this.navigationId!==0}transitions;afterPreactivation=()=>Wn(void 0);rootComponentType=null;destroyed=!1;constructor(){let i=u=>this.events.next(new G_(u)),l=u=>this.events.next(new W_(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(fr($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 Di(null),this.transitions.pipe(Xi(l=>l!==null),ao(l=>{let u=!1;return Wn(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?fr($t({},this.lastSuccessfulNavigation),{previousNavigation:null}):null,abort:()=>o.abortController.abort()};let _=!i.navigated||this.isUpdatingInternalState()||this.isUpdatedBrowserUrl(),M=o.extras.onSameUrlNavigation??i.onSameUrlNavigation;if(!_&&M!=="reload"){let P="";return this.events.next(new mu(o.id,this.urlSerializer.serialize(o.rawUrl),P,Lg.IgnoredSameUrlNavigation)),o.resolve(!1),Ds}if(this.urlHandlingStrategy.shouldProcessUrl(o.rawUrl))return Wn(o).pipe(ao(P=>(this.events.next(new Gh(P.id,this.urlSerializer.serialize(P.extractedUrl),P.source,P.restoredState)),P.id!==this.navigationId?Ds:Promise.resolve(P))),m9(this.environmentInjector,this.configLoader,this.rootComponentType,i.config,this.urlSerializer,this.paramsInheritanceStrategy),Bi(P=>{l.targetSnapshot=P.targetSnapshot,l.urlAfterRedirects=P.urlAfterRedirects,this.currentNavigation=fr($t({},this.currentNavigation),{finalUrl:P.urlAfterRedirects});let Z=new Ng(P.id,this.urlSerializer.serialize(P.extractedUrl),this.urlSerializer.serialize(P.urlAfterRedirects),P.targetSnapshot);this.events.next(Z)}));if(_&&this.urlHandlingStrategy.shouldProcessUrl(o.currentRawUrl)){let{id:P,extractedUrl:Z,source:G,restoredState:N,extras:X}=o,K=new Gh(P,this.urlSerializer.serialize(Z),G,N);this.events.next(K);let Q=mA(this.rootComponentType).snapshot;return this.currentTransition=l=fr($t({},o),{targetSnapshot:Q,urlAfterRedirects:Z,extras:fr($t({},X),{skipLocationChange:!1,replaceUrl:!1})}),this.currentNavigation.finalUrl=Z,Wn(l)}else{let P="";return this.events.next(new mu(o.id,this.urlSerializer.serialize(o.extractedUrl),P,Lg.IgnoredByUrlHandlingStrategy)),o.resolve(!1),Ds}}),Bi(o=>{let _=new V_(o.id,this.urlSerializer.serialize(o.extractedUrl),this.urlSerializer.serialize(o.urlAfterRedirects),o.targetSnapshot);this.events.next(_)}),qn(o=>(this.currentTransition=l=fr($t({},o),{guards:OV(o.targetSnapshot,o.currentSnapshot,this.rootContexts)}),l)),GV(this.environmentInjector,o=>this.events.next(o)),Bi(o=>{if(l.guardsResult=o.guardsResult,o.guardsResult&&typeof o.guardsResult!="boolean")throw e0(this.urlSerializer,o.guardsResult);let _=new U_(o.id,this.urlSerializer.serialize(o.extractedUrl),this.urlSerializer.serialize(o.urlAfterRedirects),o.targetSnapshot,!!o.guardsResult);this.events.next(_)}),Xi(o=>o.guardsResult?!0:(this.cancelNavigationTransition(o,"",ea.GuardRejected),!1)),Fx(o=>{if(o.guards.canActivateChecks.length!==0)return Wn(o).pipe(Bi(_=>{let M=new $_(_.id,this.urlSerializer.serialize(_.extractedUrl),this.urlSerializer.serialize(_.urlAfterRedirects),_.targetSnapshot);this.events.next(M)}),ao(_=>{let M=!1;return Wn(_).pipe(g9(this.paramsInheritanceStrategy,this.environmentInjector),Bi({next:()=>M=!0,complete:()=>{M||this.cancelNavigationTransition(_,"",ea.NoDataFromResolver)}}))}),Bi(_=>{let M=new H_(_.id,this.urlSerializer.serialize(_.extractedUrl),this.urlSerializer.serialize(_.urlAfterRedirects),_.targetSnapshot);this.events.next(M)}))}),Fx(o=>{let _=M=>{let P=[];if(M.routeConfig?.loadComponent&&!M.routeConfig._loadedComponent){let Z=Np(M)??this.environmentInjector;P.push(this.configLoader.loadComponent(Z,M.routeConfig).pipe(Bi(G=>{M.component=G}),qn(()=>{})))}for(let Z of M.children)P.push(..._(Z));return P};return lc(_(o.targetSnapshot.root)).pipe(sd(null),Gs(1))}),Fx(()=>this.afterPreactivation()),ao(()=>{let{currentSnapshot:o,targetSnapshot:_}=l,M=this.createViewTransition?.(this.environmentInjector,o.root,_.root);return M?mi(M).pipe(qn(()=>l)):Wn(l)}),qn(o=>{let _=MV(i.routeReuseStrategy,o.targetSnapshot,o.currentRouterState);return this.currentTransition=l=fr($t({},o),{targetRouterState:_}),this.currentNavigation.targetRouterState=_,l}),Bi(()=>{this.events.next(new Fg)}),RV(this.rootContexts,i.routeReuseStrategy,o=>this.events.next(o),this.inputBindingEnabled),Gs(1),ca(new Sr(o=>{let _=l.abortController.signal,M=()=>o.next();return _.addEventListener("abort",M),()=>_.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 pu(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}))),Em(()=>{u||this.cancelNavigationTransition(l,"",ea.SupersededByNewNavigation),this.currentTransition?.id===l.id&&(this.currentNavigation=null,this.currentTransition=null)}),od(o=>{if(this.destroyed)return l.resolve(!1),Ds;if(u=!0,wA(o))this.events.next(new wc(l.id,this.urlSerializer.serialize(l.extractedUrl),o.message,o.cancellationCode)),kV(o)?this.events.next(new Rp(o.url,o.navigationBehaviorOptions)):l.resolve(!1);else{let _=new kp(l.id,this.urlSerializer.serialize(l.extractedUrl),o,l.targetSnapshot??void 0);try{let M=Ws(this.environmentInjector,()=>this.navigationErrorHandler?.(_));if(M instanceof Op){let{message:P,cancellationCode:Z}=e0(this.urlSerializer,M);this.events.next(new wc(l.id,this.urlSerializer.serialize(l.extractedUrl),P,Z)),this.events.next(new Rp(M.redirectTo,M.navigationBehaviorOptions))}else throw this.events.next(_),o}catch(M){this.options.resolveNavigationPromiseOnError?l.resolve(!1):l.reject(M)}}return Ds}))}))}cancelNavigationTransition(i,l,u){let o=new wc(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=qt({token:t,factory:t.\u0275fac,providedIn:"root"})}return t})();function x9(t){return t!==kg}var LA=(()=>{class t{static \u0275fac=function(l){return new(l||t)};static \u0275prov=qt({token:t,factory:()=>Be(C9),providedIn:"root"})}return t})(),n0=class{shouldDetach(r){return!1}store(r,i){}shouldAttach(r){return!1}retrieve(r){return null}shouldReuseRoute(r,i){return r.routeConfig===i.routeConfig}},C9=(()=>{class t extends n0{static \u0275fac=(()=>{let i;return function(u){return(i||(i=pp(t)))(u||t)}})();static \u0275prov=qt({token:t,factory:t.\u0275fac,providedIn:"root"})}return t})(),NA=(()=>{class t{urlSerializer=Be(Hg);options=Be(Wg,{optional:!0})||{};canceledNavigationResolution=this.options.canceledNavigationResolution||"replace";location=Be(wp);urlHandlingStrategy=Be(o0);urlUpdateStrategy=this.options.urlUpdateStrategy||"deferred";currentUrlTree=new xc;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,_=u??o;return _ instanceof xc?this.urlSerializer.serialize(_):_}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=mA(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=qt({token:t,factory:()=>Be(S9),providedIn:"root"})}return t})(),S9=(()=>{class t extends NA{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 Gh?this.updateStateMemento():i instanceof mu?this.commitTransition(l):i instanceof Ng?this.urlUpdateStrategy==="eager"&&(l.extras.skipLocationChange||this.setBrowserUrl(this.createBrowserPath(l),l)):i instanceof Fg?(this.commitTransition(l),this.urlUpdateStrategy==="deferred"&&!l.extras.skipLocationChange&&this.setBrowserUrl(this.createBrowserPath(l),l)):i instanceof wc&&i.code!==ea.SupersededByNewNavigation&&i.code!==ea.Redirect?this.restoreHistory(l):i instanceof kp?this.restoreHistory(l,!0):i instanceof pu&&(this.lastSuccessfulId=i.id,this.currentPageId=this.browserPageId)}setBrowserUrl(i,{extras:l,id:u}){let{replaceUrl:o,state:_}=l;if(this.location.isCurrentPathEqualTo(i)||o){let M=this.browserPageId,P=$t($t({},_),this.generateNgRouterState(u,M));this.location.replaceState(i,"",P)}else{let M=$t($t({},_),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=pp(t)))(u||t)}})();static \u0275prov=qt({token:t,factory:t.\u0275fac,providedIn:"root"})}return t})();function nC(t,r){t.events.pipe(Xi(i=>i instanceof pu||i instanceof wc||i instanceof kp||i instanceof mu),qn(i=>i instanceof pu||i instanceof mu?0:(i instanceof wc?i.code===ea.Redirect||i.code===ea.SupersededByNewNavigation:!1)?2:1),Xi(i=>i!==2),Gs(1)).subscribe(()=>{r()})}var E9={paths:"exact",fragment:"ignored",matrixParams:"ignored",queryParams:"exact"},I9={paths:"subset",fragment:"ignored",matrixParams:"ignored",queryParams:"subset"},Dd=(()=>{class t{get currentUrlTree(){return this.stateManager.getCurrentUrlTree()}get rawUrlTree(){return this.stateManager.getRawUrlTree()}disposed=!1;nonRouterCurrentEntryChangeSubscription;console=Be(e_);stateManager=Be(NA);options=Be(Wg,{optional:!0})||{};pendingTasks=Be(eu);urlUpdateStrategy=this.options.urlUpdateStrategy||"deferred";navigationTransitions=Be(OA);urlSerializer=Be(Hg);location=Be(wp);urlHandlingStrategy=Be(o0);injector=Be(ms);_events=new Gr;get events(){return this._events}get routerState(){return this.stateManager.getRouterState()}navigated=!1;routeReuseStrategy=Be(LA);onSameUrlNavigation=this.options.onSameUrlNavigation||"ignore";config=Be(qg,{optional:!0})?.flat()??[];componentInputBindingEnabled=!!Be(r0,{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 wc&&l.code!==ea.Redirect&&l.code!==ea.SupersededByNewNavigation)this.navigated=!0;else if(l instanceof pu)this.navigated=!0;else if(l instanceof Rp){let _=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"||x9(u.source)},_);this.scheduleNavigation(M,kg,null,P,{resolve:u.resolve,reject:u.reject,promise:u.promise})}}EV(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),kg,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},_=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,_,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(eC),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:_,queryParamsHandling:M,preserveFragment:P}=l,Z=P?this.currentUrlTree.fragment:_,G=null;switch(M??this.options.defaultQueryParamsHandling){case"merge":G=$t($t({},this.currentUrlTree.queryParams),o);break;case"preserve":G=this.currentUrlTree.queryParams;break;default:G=o||null}G!==null&&(G=this.removeEmptyProps(G));let N;try{let X=u?u.snapshot:this.routerState.snapshot.root;N=dA(X)}catch{(typeof i[0]!="string"||i[0][0]!=="/")&&(i=[]),N=this.currentUrlTree.root}return hA(N,i,G,Z??null)}navigateByUrl(i,l={skipLocationChange:!1}){let u=Ap(i)?i:this.parseUrl(i),o=this.urlHandlingStrategy.merge(u,this.rawUrlTree);return this.scheduleNavigation(o,kg,null,l)}navigate(i,l={skipLocationChange:!1}){return D9(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({},E9):l===!1?u=$t({},I9):u=l,Ap(i))return WP(this.currentUrlTree,i,u);let o=this.parseUrl(i);return WP(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,_){if(this.disposed)return Promise.resolve(!1);let M,P,Z;_?(M=_.resolve,P=_.reject,Z=_.promise):Z=new Promise((N,X)=>{M=N,P=X});let G=this.pendingTasks.add();return nC(this,()=>{queueMicrotask(()=>this.pendingTasks.remove(G))}),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=qt({token:t,factory:t.\u0275fac,providedIn:"root"})}return t})();function D9(t){for(let r=0;r<t.length;r++)if(t[r]==null)throw new ln(4008,!1)}var P9=new kn("");function rC(t,...r){return dd([{provide:qg,multi:!0,useValue:t},[],{provide:el,useFactory:A9,deps:[Dd]},{provide:t_,multi:!0,useFactory:k9},r.map(i=>i.\u0275providers)])}function A9(t){return t.routerState.root}function k9(){let t=Be(Yo);return r=>{let i=t.get(Ll);if(r!==i.components[0])return;let l=t.get(Dd),u=t.get(R9);t.get(O9)===1&&l.initialNavigation(),t.get(L9,null,{optional:!0})?.setUpPreloading(),t.get(P9,null,{optional:!0})?.init(),l.resetRootComponentType(i.componentTypes[0]),u.closed||(u.next(),u.complete(),u.unsubscribe())}}var R9=new kn("",{factory:()=>new Gr}),O9=new kn("",{providedIn:"root",factory:()=>1});var L9=new kn("");var Vo=class t{logger=Be(mr);router=Be(Dd);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=qt({token:t,factory:t.\u0275fac})};function iC(t){return k_(t)}var F9={"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 s0(t){let r=F9[t];return r||["fak","shopping"]}var sC={};WS(sC,{faAirport:()=>z9,faArrowTopRight:()=>j9,faBackground:()=>oC,faBeauty:()=>B9,faCenter:()=>V9,faCompass:()=>U9,faCompassNorth:()=>$9,faDeals:()=>H9,faEvents:()=>G9,faFoodAndBeverage:()=>W9,faHealth:()=>q9,faHotels:()=>Z9,faParking:()=>Y9,faRoute:()=>K9,faServices:()=>X9,faShopping:()=>J9,faUser:()=>Q9});var z9={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"]},j9={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"]},oC={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"]},B9={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"]},V9={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"]},U9={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"]},$9={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"]},H9={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"]},G9={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"]},W9={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"]},q9={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"]},Z9={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"]},Y9={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"]},K9={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"]},X9={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"]},J9={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"]},Q9={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 ha=class t{onDestroy=new Gr;logger=Be(mr);mapService=Be(Co);navigatorService=Be(Vo);loadedDataService=Be(Xo);iconLibraryService=Be(wr);document=Be(bi);markers=new Set;ngOnDestroy(){this.onDestroy.next(),this.onDestroy.complete()}getIconFromPlace(r){this.logger.log("getIconFromPlace",r);let[i,l]=s0(r.localizedCategory||"");return this.iconLibraryService.getIconDefinition(i,l)}toSVGString(r){return kx(i=>{i(iC(oC)),i(iC(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=qt({token:t,factory:t.\u0275fac})};var FA={fas:{},fak:{}},aC=[];function zA(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"&&(FA[i.prefix][u]=i)}),FA[i.prefix][i.iconName]=i,aC.push(i)}})}zA(Qw);zA(sC);var l0=qS(Yw());var a0=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=Be(Dd);navigatorService=Be(Vo);locationStrategy=Be(yc);platformId=Be(pc);logger=Be(mr);sdkService=Be(da);loadedDataService=Be(Xo);homeStateService=Be(Ui);iconLibrary=Be(Tg);isInitialized=!1;isConnected=!1;static instanceCount=0;static hasBeenConnected=!1;constructor(){this.loadIcons(),vr(()=>{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())}),vr(()=>{this.homeStateService.hideDeals.set(this.hideDeals())}),vr(()=>{let r=this.initialData();r&&r.trim()!==""&&this.processInitialData(r)}),vr(()=>{this.homeStateService.showCategoryFilters.set(this.showCategoryFilters())}),vr(()=>{this.homeStateService.showCityFilter.set(this.showCityFilter())}),vr(()=>{let r=this.defaultToMap();this.logger.log("====> defaultToMap input",r),this.homeStateService.defaultToMap.set(r)})}ngOnInit(){wd(this.platformId)?this.handleInstanceTracking():this.logger.log("\u{1F5A5}\uFE0F Componente inicializado en servidor (SSR)")}loadIcons(){this.iconLibrary.addIcons(...aC)}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 l0.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 l0.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=wd(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(){wd(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=wd(this.platformId)?10:50;setTimeout(()=>{this.checkAndFixRouterSync()},r)}checkAndFixRouterSync(){if(!wd(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=En({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:[s_([Vo,Ui,ha,wr,vc])],decls:4,vars:2,consts:[[1,"named-container"],[1,"app-container"],[1,"app-content"]],template:function(i,l){i&1&&(pt(0,"div",0)(1,"div",1)(2,"div",2),Bt(3,"router-outlet"),yt()()()),i&2&&(gt(),Vi("inherit-font-family",l.inheritFontFamily()))},dependencies:[R_,Wh],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 c0=class t extends yc{_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=qt({token:t,factory:t.\u0275fac,providedIn:"root"})};function jA(t,r){let i=r?.injector??Be(Yo),l=new Ma(1),u=vr(()=>{let o;try{o=t()}catch(_){Nl(()=>l.error(_));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)??Be(Ks):null,u=eU(r?.equal),o;r?.requireSync?o=cr({kind:0},{equal:u}):o=cr({kind:1,value:r?.initialValue},{equal:u});let _,M=t.subscribe({next:P=>o.set({kind:1,value:P}),error:P=>{o.set({kind:2,error:P}),_?.()},complete:()=>{_?.()}});if(r?.requireSync&&o().kind===0)throw new ln(601,!1);return _=l?.onDestroy(M.unsubscribe.bind(M)),On(()=>{let P=o();switch(P.kind){case 1:return P.value;case 2:throw P.error;case 0:throw new ln(601,!1)}},{equal:r?.equal})}function eU(t=Object.is){return(r,i)=>r.kind===1&&i.kind===1&&t(r.value,i.value)}var tU=["categoryFilters"];function nU(t,r){if(t&1){let i=Qr();pt(0,"button",14),xn("click",function(){Nr(i);let u=cn();return Fr(u.onClearInput())}),Bt(1,"fa-icon",6),yt()}if(t&2){let i=cn();gt(),Yt("icon",i.faXmark)}}function rU(t,r){if(t&1&&Bt(0,"fa-icon",6),t&2){let i=cn(2);Yt("icon",i.faCaretUp)}}function iU(t,r){if(t&1&&Bt(0,"fa-icon",6),t&2){let i=cn(2);Yt("icon",i.faCaretDown)}}function oU(t,r){if(t&1){let i=Qr();pt(0,"button",21),xn("click",function(){let u=Nr(i).$implicit,o=cn(3);return Fr(o.onCitySelect(u))}),_n(1),yt()}if(t&2){let i=r.$implicit,l=cn(3);Vi("selected",i===l.selectedCity()),gt(),Bo(" ",i," ")}}function sU(t,r){if(t&1&&(pt(0,"div",19),zo(1,oU,2,3,"button",20,Rh),yt()),t&2){let i=cn(2);gt(),jo(i.citiesOptions())}}function aU(t,r){if(t&1){let i=Qr();pt(0,"div",9)(1,"button",15),xn("click",function(){Nr(i);let u=cn();return Fr(u.onCityFilterClick())}),Bt(2,"fa-icon",6),yt(),pt(3,"button",16),xn("click",function(){Nr(i);let u=cn();return Fr(u.onCityFilterClick())}),pt(4,"span",17),_n(5),yt(),pt(6,"div",18),ur(7,rU,1,1,"fa-icon",6)(8,iU,1,1,"fa-icon",6),yt()(),ur(9,sU,3,0,"div",19),yt()}if(t&2){let i=cn();gt(),Vi("active",i.isCityDropdownOpen()),gt(),Yt("icon",i.faFilter),gt(3),gs(i.selectedCity()),gt(2),dr(i.isCityDropdownOpen()?7:8),gt(2),dr(i.isCityDropdownOpen()?9:-1)}}var u0=class t{logger=Be(mr);stateService=Be(Ui);mapService=Be(Co);navigatorService=Be(Vo);iconLibrary=Be(wr);categoryFilters;activeView=On(()=>this.stateService.activeView());showCityFilter=On(()=>this.stateService.showCityFilter());inputValue=On(()=>this.stateService.inputValue());citiesOptions=On(()=>["All cities","Detroit",...[]]);selectedCity=Js(()=>this.citiesOptions()[0]);isCityDropdownOpen=cr(!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(){vr(()=>{let r=this.selectedCity();this.stateService.selectedCity.set(r)}),vr(()=>{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=En({type:t,selectors:[["app-home-screen"]],viewQuery:function(i,l){if(i&1&&Oh(tU,5),i&2){let u;Lh(u=Nh())&&(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&&(pt(0,"div",0)(1,"div",1)(2,"div",2)(3,"div",3)(4,"div",4)(5,"div",5),Bt(6,"fa-icon",6),yt(),pt(7,"input",7),xn("input",function(o){return l.onInputChange(o)}),yt(),ur(8,nU,2,1,"button",8),yt(),ur(9,aU,10,6,"div",9),yt(),pt(10,"div",10)(11,"button",11),xn("click",function(){return l.onGridClick()}),pt(12,"div",12),Bt(13,"fa-icon",6),yt(),pt(14,"span"),_n(15,"Grid View"),yt()(),pt(16,"button",11),xn("click",function(){return l.onMapClick()}),pt(17,"div",12),Bt(18,"fa-icon",6),yt(),pt(19,"span"),_n(20,"Map View"),yt()()()()(),pt(21,"div",13),Bt(22,"router-outlet"),yt()()),i&2&&(gt(4),Vi("active",l.inputValue()!==""),gt(2),Yt("icon",l.faMagnifyingGlass),gt(),Yt("value",l.inputValue()),gt(),dr(l.inputValue()!==""?8:-1),gt(),dr(l.showCityFilter()?9:-1),gt(2),Vi("active",l.activeView()==="grid"),gt(2),Yt("icon",l.faGrid2),gt(3),Vi("active",l.activeView()==="map"),gt(2),Yt("icon",l.faMapLocationDot))},dependencies:[qr,Wh],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})};function d0(t){return t.tags?.includes("deals")||t.tags?.includes("events")}function lU(t,r){t&1&&(gc(0,"div",3),_n(1,"Deals + Events"),au())}var h0=class t{navigatorService=Be(Vo);homeStateService=Be(Ui);place=kr.required();hasDealsOrEvents=On(()=>this.place().banners.filter(d0).length>0);hideDeals=On(()=>this.homeStateService.hideDeals());navigateToProfile(){this.navigatorService.navigateToProfile(this.place().lazarilloId)}static \u0275fac=function(i){return new(i||t)};static \u0275cmp=En({type:t,selectors:[["app-location-card"]],inputs:{place:[1,"place"]},decls:11,vars:6,consts:[[1,"location-card",3,"click"],[1,"card-image"],[3,"src","alt"],[1,"card-deals-or-events"],[1,"card-content"],[1,"location-name"],[1,"location-address"],[1,"location-category"]],template:function(i,l){i&1&&(gc(0,"button",0),r_("click",function(){return l.navigateToProfile()}),gc(1,"div",1),n_(2,"img",2),ur(3,lU,2,0,"div",3),au(),gc(4,"div",4)(5,"h3",5),_n(6),au(),gc(7,"p",6),_n(8),au(),gc(9,"span",7),_n(10),au()()()),i&2&&(gt(2),_p("src",l.place().images[0],Ph)("alt",l.place().title),gt(),dr(l.hasDealsOrEvents()&&!l.hideDeals()?3:-1),gt(3),gs(l.place().title),gt(2),gs(l.place().address),gt(2),gs(l.place().localizedCategory))},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}.location-card[_ngcontent-%COMP%]:hover{cursor:pointer}.card-image[_ngcontent-%COMP%]{width:227px;height:227px;overflow:hidden;position:relative}@container mapvx-container (width <= 640px){.card-image[_ngcontent-%COMP%]{width:160px;height:160px}}.card-image[_ngcontent-%COMP%] img[_ngcontent-%COMP%]{width:100%;height:100%;object-fit:cover;display:block;transition:transform .4s ease}.card-image[_ngcontent-%COMP%] img[_ngcontent-%COMP%]:hover{transform:scale(1.2)}.card-image[_ngcontent-%COMP%] .card-deals-or-events[_ngcontent-%COMP%]{position:absolute;bottom:0;left:0;width:100%;background-color:var(--definitions-colors-secondary-orange);color:var(--definitions-colors-text-white);display:flex;padding:5px;justify-content:center;align-items:center;gap:8.462px;flex-shrink:0;font:var(--definitions-textFonts-desktop-body-4);font-family:inherit}.card-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-sub-5);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 cU=["*"];function uU(t,r){if(t&1&&Bt(0,"app-location-card",2),t&2){let i=r.$implicit;Yt("place",i)}}function dU(t,r){t&1&&cu(0)}function hU(t,r){if(t&1){let i=Qr();pt(0,"button",6),xn("click",function(){Nr(i);let u=cn(3);return Fr(u.previousPage())}),Bt(1,"fa-icon",7),yt()}if(t&2){let i=cn(3);gt(),Yt("icon",i.faChevronLeft)}}function fU(t,r){if(t&1&&ur(0,hU,2,1,"button",5),t&2){let i=cn().$implicit,l=cn();dr(i<l.currentPageIndex()?0:-1)}}function pU(t,r){t&1&&(pt(0,"button",8),_n(1,"..."),yt())}function mU(t,r){if(t&1){let i=Qr();pt(0,"button",10),xn("click",function(){Nr(i);let u=cn(3);return Fr(u.nextPage())}),Bt(1,"fa-icon",7),yt()}if(t&2){let i=cn(3);gt(),Yt("icon",i.faChevronRight)}}function gU(t,r){if(t&1&&(ur(0,pU,2,0,"button",8),ur(1,mU,2,1,"button",9)),t&2){let i=cn().$implicit,l=cn();dr(i<l.totalPages()?0:-1),gt(),dr(i>l.currentPageIndex()?1:-1)}}function yU(t,r){if(t&1){let i=Qr();ur(0,fU,1,1),pt(1,"button",4),xn("click",function(){let u=Nr(i).$implicit,o=cn();return Fr(o.currentPageIndex.set(u))}),_n(2),yt(),ur(3,gU,2,2)}if(t&2){let i=r.$implicit,l=r.$index,u=r.$count,o=cn();dr(l===0?0:-1),gt(),Vi("active",o.currentPageIndex()===i),gt(),Bo(" ",i," "),gt(),dr(l===u-1?3:-1)}}var jp=class t{stateService=Be(Ui);iconLibrary=Be(wr);faChevronLeft=this.iconLibrary.getIconDefinition("fas","chevron-left");faChevronRight=this.iconLibrary.getIconDefinition("fas","chevron-right");places=kr.required();itemsPerPage=kr.required();currentPageIndex=cr(1);totalPages=On(()=>Math.ceil(this.places().length/this.itemsPerPage()));pages=On(()=>{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=On(()=>{let r=this.places(),i=this.itemsPerPage(),l=this.currentPageIndex();return r.slice((l-1)*i,l*i)});showMap=On(()=>this.stateService.activeView()==="map");constructor(){vr(()=>{this.places(),this.currentPageIndex.set(1)})}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=En({type:t,selectors:[["app-paginator"]],inputs:{places:[1,"places"],itemsPerPage:[1,"itemsPerPage"]},ngContentSelectors:cU,decls:8,vars:5,consts:[[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&&(lu(),pt(0,"div",0)(1,"div",1),zo(2,uU,1,1,"app-location-card",2,Qa,!1,dU,1,0),yt(),pt(5,"div",3),zo(6,yU,4,5,null,null,Rh),yt()()),i&2&&(Vi("with-map",l.showMap()),gt(),Vi("with-map",l.showMap()),gt(),jo(l.currentPagePlaces()),gt(4),jo(l.pages()))},dependencies:[h0,qr],styles:['.paginator[_ngcontent-%COMP%]{display:flex;flex-direction:column;align-items:center;gap:36px}.paginator.with-map[_ngcontent-%COMP%]{height:730px}.paginator-places[_ngcontent-%COMP%]{min-height:696px;display:flex;align-items:flex-start;align-content:flex-start;gap:24px 13px;align-self:stretch;flex-wrap:wrap}.paginator-places.with-map[_ngcontent-%COMP%]{gap:16px 8px;flex-shrink:0}.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 f0=class t{onDestroy=new Gr;iconLibrary=Be(wr);mapService=Be(Co);logger=Be(mr);loadedDataService=Be(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=En({type:t,selectors:[["app-center-map-button"]],decls:2,vars:1,consts:[[1,"button",3,"click"],[3,"icon"]],template:function(i,l){i&1&&(pt(0,"button",0),xn("click",function(){return l.onClick()}),Bt(1,"fa-icon",1),yt()),i&2&&(gt(),Yt("icon",l.faCenter))},dependencies:[qr],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 vU=t=>({rotate:t}),p0=class t{mapService=Be(Co);iconLibrary=Be(wr);rotation=ys(this.mapService.rotation.asObservable().pipe(qn(r=>360-r)),{initialValue:0});faCompass=this.iconLibrary.getIconDefinition("fak","compass");static \u0275fac=function(i){return new(i||t)};static \u0275cmp=En({type:t,selectors:[["app-compass-button"]],decls:2,vars:4,consts:[[1,"button"],[3,"icon","transform"]],template:function(i,l){i&1&&(pt(0,"button",0),Bt(1,"fa-icon",1),yt()),i&2&&(gt(),Yt("icon",l.faCompass)("transform",bw(2,vU,l.rotation())))},dependencies:[qr],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 Bp=class t{sdkService=Be(da);logger=Be(mr);currentlyWatchingLocation=cr(!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(p_(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=qt({token:t,factory:t.\u0275fac,providedIn:"root"})};var m0=class t{iconLibrary=Be(wr);locationService=Be(Bp);logger=Be(mr);locationPermission=cr("prompt");active=On(()=>this.locationService.currentlyWatchingLocation());faLocation=this.iconLibrary.getIconDefinition("fas","location-arrow");constructor(){this.checkLocationPermission(),vr(()=>{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=En({type:t,selectors:[["app-location-button"]],decls:2,vars:3,consts:[[1,"button",3,"click"],[3,"icon"]],template:function(i,l){i&1&&(pt(0,"button",0),xn("click",function(){return l.onClick()}),Bt(1,"fa-icon",1),yt()),i&2&&(Vi("active",l.active()),gt(),Yt("icon",l.faLocation))},dependencies:[qr],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 g0=class t{mapService=Be(Co);iconLibrary=Be(wr);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=En({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&&(pt(0,"div",0)(1,"button",1),xn("click",function(){return l.onZoomIn()}),Bt(2,"fa-icon",2),yt(),pt(3,"button",3),xn("click",function(){return l.onZoomOut()}),Bt(4,"fa-icon",2),yt()()),i&2&&(gt(2),Yt("icon",l.faPlus),gt(2),Yt("icon",l.faMinus))},dependencies:[qr],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 y0=class t{static \u0275fac=function(i){return new(i||t)};static \u0275cmp=En({type:t,selectors:[["app-buttons-container"]],decls:5,vars:0,consts:[[1,"buttons-container-wrapper"]],template:function(i,l){i&1&&(pt(0,"div",0),Bt(1,"app-location-button")(2,"app-compass-button")(3,"app-center-map-button")(4,"app-zoom-buttons"),yt())},dependencies:[p0,f0,g0,m0],styles:[".buttons-container-wrapper[_ngcontent-%COMP%]{display:flex;flex-direction:column;align-items:center;gap:20px}"],changeDetection:0})};var _U=["map"],bU=["*"],Td=class t{mapRef;logger=Be(mr);mapService=Be(Co);markerService=Be(ha);routingService=Be(vc);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=En({type:t,selectors:[["app-map"]],viewQuery:function(i,l){if(i&1&&Oh(_U,5),i&2){let u;Lh(u=Nh())&&(l.mapRef=u.first)}},ngContentSelectors:bU,decls:5,vars:0,consts:[["map",""],[1,"map-wrapper"],["id","map"],[1,"buttons-container"]],template:function(i,l){i&1&&(lu(),pt(0,"div",1),Bt(1,"div",2,0)(3,"app-buttons-container",3),cu(4),yt())},dependencies:[y0],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 wU=["*"];function xU(t,r){t&1&&(pt(0,"div",2),Bt(1,"app-map"),yt())}var Vp=class t{stateService=Be(Ui);showMap=On(()=>this.stateService.activeView()==="map");static \u0275fac=function(i){return new(i||t)};static \u0275cmp=En({type:t,selectors:[["app-view-container"]],ngContentSelectors:wU,decls:4,vars:1,consts:[[1,"view-container"],[1,"view-content"],[1,"map-container"]],template:function(i,l){i&1&&(lu(),pt(0,"div",0)(1,"div",1),cu(2),yt(),ur(3,xU,2,0,"div",2),yt()),i&2&&(gt(3),dr(l.showMap()?3:-1))},dependencies:[Td],styles:[".view-container[_ngcontent-%COMP%]{display:flex;align-items:flex-start;gap:8px}@container mapvx-container (width <= 1065px){.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%]{flex:1;min-width:0;height:100%;overflow-y:auto}.map-container[_ngcontent-%COMP%]{width:738px;height:730px;flex-shrink:0}@container mapvx-container (width <= 1065px){.map-container[_ngcontent-%COMP%]{width:100%}}@container mapvx-container (width <= 640px){.map-container[_ngcontent-%COMP%]{width:100%;height:400px}}"],changeDetection:0})};var CU=["categoryFilters"],SU=(t,r)=>r.name;function EU(t,r){if(t&1){let i=Qr();pt(0,"button",11),xn("click",function(){let u=Nr(i).$implicit,o=cn(2);return Fr(o.selectedFilter.set(u.name))}),_n(1),yt()}if(t&2){let i=r.$implicit,l=cn(2);Vi("active",l.selectedFilter()===i.name),gt(),Bo(" ",i.name," ")}}function IU(t,r){if(t&1&&(pt(0,"div",2)(1,"div",5,0)(3,"div",6),zo(4,EU,2,3,"button",7,SU),yt(),pt(6,"div",8),Bt(7,"div",9)(8,"div",10),yt()()()),t&2){let i=cn();gt(4),jo(i.categoryFiltersData()),gt(4),i_("left",i.indicatorPosition(),"px")}}var v0=class t{logger=Be(mr);stateService=Be(Ui);loadedDataService=Be(Xo);markerService=Be(ha);categoryFilters;activeView=On(()=>this.stateService.activeView());loadedPlaces=ys(this.loadedDataService.getAvailablePlaces(),{initialValue:[]});categoryFiltersData=ys(this.loadedDataService.getInstitution().pipe(qn(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=On(()=>this.stateService.selectedCity());showCategoryFilters=On(()=>this.stateService.showCategoryFilters());showCityFilter=On(()=>this.stateService.showCityFilter());indicatorPosition=On(()=>this.getIndicatorPosition(this.selectedFilter(),this.categoryFiltersData()));constructor(){vr(()=>{let r=this.categoryFiltersData();this.logger.log("====> loadedCategoryFiltersData",r)}),vr(()=>{if(this.activeView()==="map"){let r=this.places();this.logger.log("====> addMarkers ",r),this.markerService.addMarkers(r)}}),vr(()=>{let r=this.loadedPlaces(),i=this.showCategoryFilters(),l=r;if(i){let o=this.selectedFilter(),_=this.categoryFiltersData();if(o!=="All"){let M=_.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(_=>_.address?.includes(o)))}this.logger.log("====> filteredPlaces",l),this.places.set(l)}),vr(()=>{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 _=this.categoryFilters.nativeElement.getBoundingClientRect(),M=o.getBoundingClientRect(),P=M.width,Z=M.left-_.left,G=80,N=Z+P/2-G/2;return Math.min(Math.max(0,N),_.width-G)}static \u0275fac=function(i){return new(i||t)};static \u0275cmp=En({type:t,selectors:[["app-list-view"]],viewQuery:function(i,l){if(i&1&&Oh(CU,5),i&2){let u;Lh(u=Nh())&&(l.categoryFilters=u.first)}},decls:5,vars:3,consts:[["categoryFilters",""],[1,"list-view"],[1,"category-filters-overflow"],[1,"list-container"],[3,"places","itemsPerPage"],[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&&(pt(0,"div",1),ur(1,IU,9,2,"div",2),pt(2,"app-view-container")(3,"div",3),Bt(4,"app-paginator",4),yt()()()),i&2&&(gt(),dr(l.showCategoryFilters()?1:-1),gt(3),Yt("places",l.places())("itemsPerPage",10))},dependencies:[Vp,jp],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 DU=()=>({rotate:42}),_0=class t{iconLibrary=Be(wr);faCircleNotch=this.iconLibrary.getIconDefinition("fas","circle-notch");static \u0275fac=function(i){return new(i||t)};static \u0275cmp=En({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&&(pt(0,"div",0)(1,"div",1),Bt(2,"fa-icon",2),yt(),pt(3,"div",3),Bt(4,"div",4)(5,"div",5)(6,"div",6),yt()()),i&2&&(gt(2),Yt("icon",l.faCircleNotch)("transform",Fh(2,DU)))},dependencies:[qr],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 TU=()=>[1,2,3,4,5,6,7,8,9,10];function MU(t,r){t&1&&Bt(0,"app-loading-location-card")}var b0=class t{homeStateService=Be(Ui);showMap=On(()=>this.homeStateService.activeView()==="map");static \u0275fac=function(i){return new(i||t)};static \u0275cmp=En({type:t,selectors:[["app-loading-card-list"]],decls:3,vars:3,consts:[[1,"loading-container"]],template:function(i,l){i&1&&(pt(0,"div",0),zo(1,MU,1,0,"app-loading-location-card",null,Rh),yt()),i&2&&(Vi("with-map",l.showMap()),gt(),jo(Fh(2,TU)))},dependencies:[_0],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 PU(t,r){t&1&&(pt(0,"p"),_n(1,"Looking for your results..."),yt())}function AU(t,r){if(t&1&&(pt(0,"p"),_n(1),yt()),t&2){let i=cn(3);gt(),Bo('Showing 1 result for "',i.searchTerm(),'"')}}function kU(t,r){if(t&1&&(pt(0,"p"),_n(1),yt()),t&2){let i=cn(3);gt(),o_("Showing ",i.places().length,' results for "',i.searchTerm(),'"')}}function RU(t,r){if(t&1&&ur(0,AU,2,1,"p")(1,kU,2,2,"p"),t&2){let i=cn(2);dr(i.places().length===1?0:1)}}function OU(t,r){if(t&1&&(pt(0,"p"),_n(1),yt()),t&2){let i=cn(2);gt(),Bo('No results found for "',i.searchTerm(),'"')}}function LU(t,r){if(t&1&&ur(0,RU,2,1)(1,OU,2,1,"p"),t&2){let i=cn();dr(i.places().length>0?0:1)}}function NU(t,r){t&1&&Bt(0,"app-loading-card-list")}function FU(t,r){if(t&1&&(pt(0,"div",6)(1,"app-paginator",7)(2,"div",8),Bt(3,"fa-icon",4),pt(4,"h2"),_n(5,"No results found"),yt(),pt(6,"div",9)(7,"p"),_n(8,"Sorry, we can\u2019t find any places that match your search. Please try again."),yt()()()()()),t&2){let i=cn();gt(),Yt("places",i.places())("itemsPerPage",10),gt(2),Yt("icon",i.faBuildingMagnifyingGlass)}}var w0=class t{logger=Be(mr);loadedDataService=Be(Xo);sdkService=Be(da);stateService=Be(Ui);navigatorService=Be(Vo);markerService=Be(ha);iconLibrary=Be(wr);searching=cr(!0);inputValue$=jA(this.stateService.inputValue).pipe(F1(500),qn(r=>r.trim()),Xi(r=>r!==""),z1(),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),mi(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(){vr(()=>{let r=this.places();this.markerService.addMarkers(r)}),vr(()=>{let r=this.places();this.stateService.lastListedPlaces.set(r)}),vr(()=>{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=En({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","itemsPerPage"],[1,"no-results"],[1,"no-results-description"]],template:function(i,l){i&1&&(pt(0,"div",0)(1,"div",1)(2,"div",2)(3,"button",3),xn("click",function(){return l.onBackClick()}),Bt(4,"fa-icon",4),pt(5,"span"),_n(6,"Back"),yt()()(),pt(7,"div",5),ur(8,PU,2,0,"p")(9,LU,2,1),yt()(),pt(10,"app-view-container"),ur(11,NU,1,0,"app-loading-card-list")(12,FU,9,3,"div",6),yt()()),i&2&&(gt(4),Yt("icon",l.faArrowLeft),gt(4),dr(l.searching()?8:9),gt(3),dr(l.searching()?11:12))},dependencies:[Vp,jp,R_,qr,b0],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 x0(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 S0(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 C0(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} ${o}`}function UA(t){let r=C0(t.open),i=C0(t.close);return`${r} - ${i}`}function jU(t){let r=C0(t.open),i=C0(t.close);return`${r} to ${i}`}function BU(t){let r=new Date,i=new Date(r);$A(i);let l=S0(i),u=t[l];if(u&&u.length>0){for(let o of u)if(BA(o.open)&&BA(o.close)){let _=VA(o.open,i),M=VA(o.close,i);if(_>M&&VU(M),r>=_&&r<=M)return!0}}return!1}function $A(t){let r=t.getDate();t.setDate(r-1)}function VU(t){let r=t.getDate();t.setDate(r+1)}function UU(t){let i=S0(new Date),l=t[i];return l&&l.length>0}function BA(t){return/^([0-9]|0[0-9]|1[0-9]|2[0-4]):[0-5][0-9]$/.test(t)}function VA(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 $U(t){return t.sort((r,i)=>r.open.localeCompare(i.open))}function HU(t){let i=S0(new Date),l=t[i];return l&&l.length>0?HA(l):""}function GU(t){let r=new Date;$A(r);let i=S0(r),l=t[i];return l&&l.length>0?HA(l):""}function WU(t){let r=qU(t);return`Open on ${x0(r)}`}function HA(t){return t.length===1?UA(t[0]):($U(t),t.map(jU).join(" - "))}function qU(t){let i=new Date().getDay();for(let l=0;l<7;l++){let u=(i+l)%7,o=zU(u),_=t[o];if(_&&_.length>0)return o}return"mo"}function GA(t){return BU(t)?GU(t):UU(t)?HU(t):WU(t)}function WA(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=>UA(Z))},l=(M,P)=>M.length!==P.length?!1:M.every((Z,G)=>Z===P[G]),u=(M,P)=>M===P?x0(M):`${x0(M)} - ${x0(P)}`,o=[],_=0;for(;_<r.length;){let M=r[_],P=i(M),Z=_+1;for(;Z<r.length&&l(P,i(r[Z]));)Z++;let G=u(M,r[Z-1]);o.push({day:G,schedule:P}),_=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 ZU(t,r){if(t&1&&Bt(0,"div",9),t&2){let i=r.$implicit;Yt("innerHTML",i,vd)}}function YU(t,r){if(t&1&&(pt(0,"div",6)(1,"div",7),_n(2),yt(),pt(3,"div",8),zo(4,ZU,1,1,"div",9,Qa),yt()()),t&2){let i=r.$implicit;gt(2),gs(i.day),gt(2),jo(i.schedule)}}var E0=class t{iconLibrary=Be(wr);schedules=kr.required({transform:r=>r?WA(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=En({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&&(pt(0,"div",0)(1,"div",1)(2,"div",2),Bt(3,"fa-icon",3),pt(4,"h2"),_n(5,"Other Schedules"),yt()(),pt(6,"button",4),xn("click",function(){return l.hideModal()}),Bt(7,"fa-icon",3),yt()(),pt(8,"div",5),zo(9,YU,6,1,"div",6,Qa),yt()()),i&2&&(gt(3),Yt("icon",l.faClockThree),gt(4),Yt("icon",l.faXmark),gt(2),jo(l.schedules()))},dependencies:[qr],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 KU=()=>({rotate:42});function XU(t,r){if(t&1&&Bt(0,"fa-icon",3),t&2){let i=cn();Yt("icon",i.faCircleNotch)("transform",Fh(2,KU))}}function JU(t,r){if(t&1){let i=Qr();pt(0,"div",10),Bt(1,"fa-icon",9),pt(2,"div",24)(3,"button",25),xn("click",function(){Nr(i);let u=cn();return Fr(u.showOtherSchedulesModal())}),yt(),pt(4,"div",26),_n(5,"*Hours may vary"),yt()()()}if(t&2){let i=cn();gt(),Yt("icon",i.faClockThree),gt(2),Yt("innerHTML",i.schedule(),vd)}}function QU(t,r){if(t&1){let i=Qr();pt(0,"div",11)(1,"app-other-schedules",27),xn("closeClicked",function(){Nr(i);let u=cn();return Fr(u.hideOtherSchedulesModal())}),yt()()}if(t&2){let i=cn();gt(),Yt("schedules",i.place().openingHours)}}function e$(t,r){if(t&1&&Bt(0,"div",30),t&2){let i=r.$implicit;Yt("innerHTML",i,vd)}}function t$(t,r){if(t&1&&(pt(0,"div",12),Bt(1,"fa-icon",9),pt(2,"div",28)(3,"div",29),_n(4,"Deals + Events"),yt(),zo(5,e$,1,1,"div",30,Qa),yt()()),t&2){let i=cn();gt(),Yt("icon",i.faBadgeDollar),gt(4),jo(i.banners())}}function n$(t,r){if(t&1&&(pt(0,"div",21),_n(1),yt()),t&2){let i=cn();gt(),Bo(" ",i.address()," ")}}function r$(t,r){if(t&1&&(pt(0,"div",22),_n(1),yt()),t&2){let i=r.$implicit;gt(),Bo(" ",i," ")}}function i$(t,r){if(t&1&&(pt(0,"div",23)(1,"a",18),_n(2),yt()()),t&2){let i=r.$implicit;gt(),Yt("href",i.url,Ph),gt(),gs(i.title)}}var I0=class t{iconLibrary=Be(wr);sanitizer=Be(vg);logger=Be(mr);navigatorService=Be(Vo);place=kr.required();hideDeals=kr(!1);imageSrc=On(()=>this.place().images[0]||"");isImageLoading=cr(!0);schedule=On(()=>{let r=this.place().openingHours;return r?GA(r):""});banners=On(()=>this.place().banners.filter(d0).filter(r=>r.description!==void 0).map(r=>this.sanitizer.bypassSecurityTrustHtml(r.description||"")));address=On(()=>this.place().address||"");phones=On(()=>this.place().properties?.filter(r=>r.type==="phone").map(r=>this.formatPhoneNumber(r.subtitle))||[]);websites=On(()=>this.place().properties?.filter(r=>r.type==="url").map(this.prepareUrl)||[]);drivingDirectionsUrl=On(()=>{let r=this.place();return`https://waze.com/ul?ll=${r.position.lat},${r.position.lng}&navigate=yes`});otherSchedulesModal=cr(!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=On(()=>{let[r,i]=s0(this.place().localizedCategory||"");return this.iconLibrary.getIconDefinition(r,i)});constructor(){vr(()=>{this.imageSrc()&&this.startImageLoading()})}prepareUrl(r){return fr($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=En({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-content"],[1,"deals-or-events-content-title"],[1,"banner-content",3,"innerHTML"]],template:function(i,l){i&1&&(pt(0,"div",0)(1,"div",1)(2,"img",2),xn("load",function(){return l.endImageLoading()})("error",function(){return l.endImageLoading()}),yt(),ur(3,XU,1,3,"fa-icon",3),yt(),pt(4,"div",4)(5,"div",5)(6,"h1",6),_n(7),yt(),pt(8,"div",7)(9,"div",8),Bt(10,"fa-icon",9),pt(11,"span"),_n(12),yt()(),ur(13,JU,6,2,"div",10),ur(14,QU,2,1,"div",11),yt(),ur(15,t$,7,1,"div",12),pt(16,"div",13),_n(17),yt()(),pt(18,"div",14)(19,"div",15)(20,"button",16),xn("click",function(){return l.navigateToRoute()}),Bt(21,"fa-icon",9),pt(22,"span"),_n(23,"Pedestrian-friendly directions"),yt()()(),pt(24,"div",17)(25,"a",18),_n(26,"Driving directions"),yt()()(),pt(27,"div",19),Bt(28,"div",20),ur(29,n$,2,1,"div",21),zo(30,r$,2,1,"div",22,Qa),zo(32,i$,3,2,"div",23,Qa),yt()()()),i&2&&(gt(),Vi("loading",l.isImageLoading()),gt(),Yt("src",l.imageSrc(),Ph)("alt",l.place().title),gt(),dr(l.isImageLoading()?3:-1),gt(4),gs(l.place().title),gt(3),Yt("icon",l.iconCategory()),gt(2),gs(l.place().localizedCategory),gt(),dr(l.schedule()!==""?13:-1),gt(),dr(l.otherSchedulesModal()?14:-1),gt(),dr(l.banners().length>0&&!l.hideDeals()?15:-1),gt(2),Bo(" ",l.place().description," "),gt(4),Yt("icon",l.faArrowTopRight),gt(4),Yt("href",l.drivingDirectionsUrl(),Ph),gt(4),dr(l.address()!==""?29:-1),gt(),jo(l.phones()),gt(2),jo(l.websites()))},dependencies:[qr,E0],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;width:100%;align-items:flex-start;gap:18px;color:var(--definitions-colors-secondary-orange)}.deals-or-events[_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%]{font:var(--definitions-textFonts-desktop-body-3);font-family:inherit;font-size:16px;white-space:pre-wrap}.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 Up=class t{iconLibraryService=Be(wr);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=En({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&&(pt(0,"button",0),xn("click",function(o){return l.onBackClick(o)}),Bt(1,"fa-icon",1),pt(2,"span"),_n(3,"Back"),yt()()),i&2&&(gt(),Yt("icon",l.faArrowLeft))},dependencies:[qr],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 o$(t,r){if(t&1&&Bt(0,"app-profile-view",5),t&2){let i=cn(),l=cg(5);Yt("place",l)("hideDeals",i.hideDeals())}}var D0=class t{onDestroy=new Gr;route=Be(el);logger=Be(mr);loadedDataService=Be(Xo);sdkService=Be(da);mapService=Be(Co);markerService=Be(ha);navigatorService=Be(Vo);homeStateService=Be(Ui);iconLibraryService=Be(wr);_profileId="";place=cr(null);mapReady=ys(this.mapService.mapReady,{requireSync:!0});hideDeals=On(()=>this.homeStateService.hideDeals());faArrowLeft=this.iconLibraryService.getIconDefinition("fas","arrow-left");constructor(){vr(()=>{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(qn(i=>i.get("id")),Xi(i=>i!==null),Xi(i=>i!==this._profileId),U1(1));lc([r,this.loadedDataService.getAvailablePlaces()]).pipe(ca(this.onDestroy),ao(([i,l])=>{let u=l.find(o=>o.lazarilloId===i);return u?Wn(u):mi(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=En({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=Qr();pt(0,"div",0)(1,"div",1)(2,"app-back-button",2),xn("buttonClick",function(){return Nr(u),Fr(l.returnToHome())}),yt()(),pt(3,"div",3)(4,"div",4),bp(5),ur(6,o$,1,2,"app-profile-view",5),yt(),pt(7,"div",6),Bt(8,"app-map"),yt()()()}if(i&2){gt(5);let u=lg(l.place());gt(),dr(u!==null?6:-1)}},dependencies:[Td,Up,I0],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 T0=class t{iconLibrary=Be(wr);currentRoute=kr.required();startRouteClick=ka();faCircleSmall=this.iconLibrary.getIconDefinition("fas","circle-small");faArrowTopRight=this.iconLibrary.getIconDefinition("fak","arrow-top-right");time=On(()=>{let r=this.currentRoute();return this.toMinutes(r.duration)});distance=On(()=>{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=En({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&&(pt(0,"div",0)(1,"div",1)(2,"span",2),_n(3,"Time"),yt(),Bt(4,"fa-icon",3),pt(5,"span",4),_n(6),yt()(),pt(7,"div",1)(8,"span",2),_n(9,"Distance"),yt(),Bt(10,"fa-icon",3),pt(11,"span",4),_n(12),yt()()(),pt(13,"button",5),xn("click",function(){return l.onStartRouteClick()}),Bt(14,"fa-icon",3),pt(15,"span"),_n(16,"Start Route"),yt()()),i&2&&(gt(4),Yt("icon",l.faCircleSmall),gt(2),Bo("",l.time()," min"),gt(4),Yt("icon",l.faCircleSmall),gt(2),Bo("",l.distance()," mts"),gt(2),Yt("icon",l.faArrowTopRight))},dependencies:[qr],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 s$={"[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"},vfe=fr($t({},s$),{"[class.ng-submitted]":"isSubmitted"});var a$=new kn("",{providedIn:"root",factory:()=>qA}),qA="always";var l$=(()=>{class t{static \u0275fac=function(l){return new(l||t)};static \u0275mod=mc({type:t});static \u0275inj=Sl({})}return t})();var ZA=(()=>{class t{static withConfig(i){return{ngModule:t,providers:[{provide:a$,useValue:i.callSetDisabledState??qA}]}}static \u0275fac=function(l){return new(l||t)};static \u0275mod=mc({type:t});static \u0275inj=Sl({imports:[l$]})}return t})();function c$(t,r){if(t&1){let i=Qr();pt(0,"button",5),xn("click",function(){Nr(i);let u=cn();return Fr(u.clearSelectedPlace())}),Bt(1,"fa-icon",6),yt()}if(t&2){let i=cn();gt(),Yt("icon",i.faXmark)}}function u$(t,r){if(t&1){let i=Qr();pt(0,"button",10),xn("click",function(){let u=Nr(i).$implicit,o=cn(2);return Fr(o.selectPlace(u))}),pt(1,"div",11),Bt(2,"fa-icon",6),yt(),pt(3,"div",12)(4,"div",13),_n(5),yt(),pt(6,"div",14),_n(7),yt()()()}if(t&2){let i=r.$implicit,l=cn(2);gt(2),Yt("icon",l.faLocationDot),gt(3),gs(i.title),gt(2),gs(i.address)}}function d$(t,r){t&1&&(pt(0,"div",9),_n(1,"No results found"),yt())}function h$(t,r){if(t&1&&(pt(0,"div",4)(1,"div",7),zo(2,u$,8,3,"button",8,Qa),ur(4,d$,2,0,"div",9),yt()()),t&2){let i=cn();gt(2),jo(i.filteredPlaces()),gt(2),dr(i.filteredPlaces().length===0&&i.filterText().trim()?4:-1)}}var M0=class t{iconLibrary=Be(wr);places=kr.required();initialSelectedPlace=kr(null);placeholder=kr("Set a starting point");selectedPlace=Js(()=>this.initialSelectedPlace());selectedPlaceChange=ka();isDropdownOpen=cr(!1);filterText=Js(()=>this.selectedPlace()?.title||"");filteredPlaces=On(()=>{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});faLocationDot=this.iconLibrary.getIconDefinition("fas","location-dot");faXmark=this.iconLibrary.getIconDefinition("fas","xmark");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=En({type:t,selectors:[["app-place-selector"]],inputs:{places:[1,"places"],initialSelectedPlace:[1,"initialSelectedPlace"],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&&(pt(0,"div",0)(1,"div",1)(2,"input",2),xn("input",function(o){return l.onInputChange(o)})("focus",function(){return l.onInputFocus()})("blur",function(){return l.onInputBlur()}),yt(),ur(3,c$,2,1,"button",3),yt(),ur(4,h$,5,1,"div",4),yt()),i&2&&(gt(2),Yt("value",l.filterText())("placeholder",l.placeholder()),gt(),dr(l.selectedPlace()?3:-1),gt(),dr(l.isDropdownOpen()?4:-1))},dependencies:[xp,ZA,qr],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}}']})};function f$(t,r){if(t&1){let i=Qr();pt(0,"app-place-selector",18),xn("selectedPlaceChange",function(u){Nr(i);let o=cn();return Fr(o.onOriginSelected(u))}),yt()}if(t&2){let i=cn();Yt("places",i.places())("initialSelectedPlace",i.originPlace())}}function p$(t,r){if(t&1){let i=Qr();pt(0,"button",19),xn("click",function(){Nr(i);let u=cn();return Fr(u.requestLocationPermission())}),_n(1," Set a starting point "),yt()}}function m$(t,r){t&1&&(pt(0,"div",10),_n(1,"Current location"),yt())}var P0=class t{logger=Be(mr);iconLibrary=Be(wr);locationService=Be(Bp);places=kr.required();initialDestination=kr(null);originPlace=cr(null);destinationPlace=Js(()=>this.initialDestination());originSelected=ka();destinationSelected=ka();swapPlaces=ka();clearDestination=ka();locationPermission=cr("prompt");faLocationDot=this.iconLibrary.getIconDefinition("fas","location-dot");faEllipsisVertical=this.iconLibrary.getIconDefinition("fas","ellipsis-vertical");faArrowsRetweet=this.iconLibrary.getIconDefinition("fas","arrows-retweet");canSwapPlaces=On(()=>Hw(this.originPlace())&&Hw(this.destinationPlace()));constructor(){this.checkLocationPermission(),vr(()=>{this.locationPermission()==="granted"&&this.getCurrentLocation()})}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)}).catch(r=>{this.logger.logWarning("Error requesting location permission",r),this.locationPermission.set("denied")})}getCurrentLocation(){this.locationService.getCurrentLocation().then(r=>{this.originPlace.set(null),this.originSelected.emit(r)}).catch(r=>{this.logger.logWarning("Error getting current location",r)})}onOriginSelected(r){this.originSelected.emit(r),this.originPlace.set(r)}onDestinationSelected(r){this.destinationSelected.emit(r),this.destinationPlace.set(r)}onSwapPlaces(){let r=this.originPlace(),i=this.destinationPlace();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=En({type:t,selectors:[["app-route-selector"]],inputs:{places:[1,"places"],initialDestination:[1,"initialDestination"]},outputs:{originSelected:"originSelected",destinationSelected:"destinationSelected",swapPlaces:"swapPlaces",clearDestination:"clearDestination"},decls:22,vars:8,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,"places","initialSelectedPlace"],[1,"request-location-button"],[1,"current-location-info"],[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"],[3,"selectedPlaceChange","places","initialSelectedPlace"],[1,"request-location-button",3,"click"]],template:function(i,l){if(i&1&&(pt(0,"div",0)(1,"div",1)(2,"div",2)(3,"div",3),dv(),pt(4,"svg",4),Bt(5,"rect",5)(6,"path",6)(7,"path",7),yt()(),ur(8,f$,1,2,"app-place-selector",8)(9,p$,2,0,"button",9)(10,m$,2,0,"div",10),yt()(),hv(),pt(11,"div",11)(12,"div",12),Bt(13,"fa-icon",13),yt(),Bt(14,"div",14),pt(15,"button",15),xn("click",function(){return l.onSwapPlaces()}),Bt(16,"fa-icon",13),yt()(),pt(17,"div",16)(18,"div",2)(19,"div",3),Bt(20,"fa-icon",13),yt(),pt(21,"app-place-selector",17),xn("selectedPlaceChange",function(o){return l.onDestinationSelected(o)}),yt()()()()),i&2){let u;gt(8),dr((u=l.locationPermission())==="denied"?8:u==="prompt"?9:u==="granted"?10:-1),gt(5),Yt("icon",l.faEllipsisVertical),gt(2),Yt("disabled",!l.canSwapPlaces()),gt(),Yt("icon",l.faArrowsRetweet),gt(4),Yt("icon",l.faLocationDot),gt(),Yt("places",l.places())("initialSelectedPlace",l.destinationPlace())("placeholder","Select a destination")}},dependencies:[xp,M0,qr],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}.request-location-button[_ngcontent-%COMP%]{background:none;border:none;cursor:pointer;width:100%;text-align:start;font:var(--definitions-textFonts-desktop-button-1);font-family:inherit;font-feature-settings:"liga" off,"clig" off;letter-spacing:-1px;color:var(--definitions-colors-text-300)}.current-location-info[_ngcontent-%COMP%]{font:var(--definitions-textFonts-desktop-button-1);font-family:inherit;font-feature-settings:"liga" off,"clig" off;letter-spacing:-1px;color:var(--definitions-colors-text-800)}.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 g$(t,r){if(t&1){let i=Qr();pt(0,"button",1),xn("click",function(){Nr(i);let u=cn();return Fr(u.pauseRoute())}),Bt(1,"fa-icon",2),pt(2,"span"),_n(3,"Pause route"),yt()()}if(t&2){let i=cn();gt(),Yt("icon",i.faPause)}}function y$(t,r){if(t&1){let i=Qr();pt(0,"button",1),xn("click",function(){Nr(i);let u=cn();return Fr(u.resumeRoute())}),Bt(1,"fa-icon",2),pt(2,"span"),_n(3,"Resume route"),yt()()}if(t&2){let i=cn();gt(),Yt("icon",i.faPlay)}}function v$(t,r){if(t&1){let i=Qr();pt(0,"button",1),xn("click",function(){Nr(i);let u=cn();return Fr(u.restartRoute())}),Bt(1,"fa-icon",2),pt(2,"span"),_n(3,"Restart route"),yt()()}if(t&2){let i=cn();gt(),Yt("icon",i.faRestart)}}function _$(t,r){}var A0=class t{iconLibrary=Be(wr);routingService=Be(vc);AnimationState=g_;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=En({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&&ur(0,g$,4,1,"button",0)(1,y$,4,1,"button",0)(2,v$,4,1,"button",0)(3,_$,0,0),i&2){let u;dr((u=l.animationStatus())===l.AnimationState.Playing?0:u===l.AnimationState.Paused?1:u===l.AnimationState.Finished?2:3)}},dependencies:[qr],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 b$(t,r){if(t&1){let i=Qr();pt(0,"div",6)(1,"app-route-info",8),xn("startRouteClick",function(){Nr(i);let u=cn();return Fr(u.startStepAnimation())}),yt()()}if(t&2){cn();let i=cg(6);gt(),Yt("currentRoute",i)}}var k0=class t{routeId="";route=Be(el);logger=Be(mr);navigatorService=Be(Vo);loadedDataService=Be(Xo);mapService=Be(Co);markerService=Be(ha);homeStateService=Be(Ui);routingService=Be(vc);mapReady=ys(this.mapService.mapReady,{requireSync:!0});places=ys(this.loadedDataService.getAvailablePlaces(),{initialValue:[]});originPoint=cr(null);destinationPlace=Js(()=>this.initialDestination());initialDestination=cr(null);currentRoute=cr(null);constructor(){this.routeId=this.route.snapshot.params.id||"unknown",vr(()=>{let r=this.places();if(r.length>0){let i=r.find(l=>l.lazarilloId===this.routeId);i&&this.initialDestination.set(i)}}),vr(()=>{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)}}),vr(()=>{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)}),vr(()=>{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=En({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=Qr();pt(0,"div",0)(1,"div",1)(2,"app-back-button",2),xn("buttonClick",function(){return Nr(u),Fr(l.returnToProfile())}),yt()(),pt(3,"div",3)(4,"div",4)(5,"app-route-selector",5),xn("originSelected",function(_){return Nr(u),Fr(l.onOriginSelected(_))})("destinationSelected",function(_){return Nr(u),Fr(l.onDestinationSelected(_))}),yt(),bp(6),ur(7,b$,2,1,"div",6),yt(),pt(8,"div",7)(9,"app-map"),Bt(10,"app-route-control-button"),yt()()()()}if(i&2){gt(5),Yt("places",l.places())("initialDestination",l.initialDestination()),gt();let u=lg(l.currentRoute());gt(),dr(u!==null?7:-1)}},dependencies:[Up,Td,P0,T0,A0],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 YA=[{path:"",component:u0,children:[{path:"list",redirectTo:"",pathMatch:"full"},{path:"",component:v0},{path:"search",component:w0}]},{path:"profile/:id",component:D0},{path:"route/:id",component:k0},{path:"**",redirectTo:""}];var KA={providers:[Hb(),Cw(),rC(YA),{provide:yc,useClass:c0},mr]};$w(KA).then(t=>{let r=lM(a0,{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:
|