1"use strict";(self.webpackChunkemirates_visa=self.webpackChunkemirates_visa||[]).push([[239],{2239:(S,c,a)=>{a.r(c),a.d(c,{BlogsListModule:()=>I});var d=a(3453),i=a(6895),e=a(4650);let g=(()=>{class n{constructor(){}ngOnInit(){}static#e=this.\u0275fac=function(o){return new(o||n)};static#t=this.\u0275cmp=e.\u0275\u0275defineComponent({type:n,selectors:[["app-banner"]],decls:5,vars:0,consts:[[1,"page-banner","blog"],[1,"banner-header"],[1,"banner-para"]],template:function(o,l){1&o&&(e.\u0275\u0275elementStart(0,"div",0)(1,"h1",1),e.\u0275\u0275text(2,"Emirates Visa Blog"),e.\u0275\u0275elementEnd(),e.\u0275\u0275elementStart(3,"h2",2),e.\u0275\u0275text(4,"Latest visa and travel resources"),e.\u0275\u0275elementEnd()())}})}return n})();var p=a(5861),m=a(4497);function u(n,r){1&n&&(e.\u0275\u0275elementContainerStart(0),e.\u0275\u0275namespaceSVG(),e.\u0275\u0275elementStart(1,"svg",4),e.\u0275\u0275element(2,"circle",5),e.\u0275\u0275elementEnd(),e.\u0275\u0275elementContainerEnd())}const f=function(n){return{"background-image":n}};function _(n,r){if(1&n){const t=e.\u0275\u0275getCurrentView();e.\u0275\u0275elementContainerStart(0),e.\u0275\u0275elementStart(1,"div",10),e.\u0275\u0275listener("click",function(){const s=e.\u0275\u0275restoreView(t).$implicit,y=e.\u0275\u0275nextContext(2);return e.\u0275\u0275resetView(y.onBlog(s))}),e.\u0275\u0275element(2,"div",11),e.\u0275\u0275elementStart(3,"div",12)(4,"div",13),e.\u0275\u0275text(5),e.\u0275\u0275pipe(6,"date"),e.\u0275\u0275elementEnd(),e.\u0275\u0275elementStart(7,"div",14),e.\u0275\u0275text(8),e.\u0275\u0275elementEnd(),e.\u0275\u0275elementStart(9,"div"),e.\u0275\u0275text(10),e.\u0275\u0275elementEnd()()(),e.\u0275\u0275elementContainerEnd()}if(2&n){const t=r.$implicit;e.\u0275\u0275advance(2),e.\u0275\u0275property("ngStyle",e.\u0275\u0275pureFunction1(7,f,"url("+t.featuredImageUrl+")")),e.\u0275\u0275advance(3),e.\u0275\u0275textInterpolate(e.\u0275\u0275pipeBind2(6,4,1e3*t.created.seconds,"dd MMMM y")),e.\u0275\u0275advance(3),e.\u0275\u0275textInterpolate(t.title),e.\u0275\u0275advance(2),e.\u0275\u0275textInterpolate(t.description)}}function h(n,r){1&n&&(e.\u0275\u0275elementStart(0,"span"),e.\u0275\u0275text(1,"Load More"),e.\u0275\u0275elementEnd())}function v(n,r){1&n&&(e.\u0275\u0275elementStart(0,"span"),e.\u0275\u0275namespaceSVG(),e.\u0275\u0275elementStart(1,"svg",16),e.\u0275\u0275element(2,"circle",5),e.\u0275\u0275elementEnd()())}function B(n,r){if(1&n){const t=e.\u0275\u0275getCurrentView();e.\u0275\u0275elementStart(0,"button",15),e.\u0275\u0275listener("click",function(){e.\u0275\u0275restoreView(t);const l=e.\u0275\u0275nextContext(2);return e.\u0275\u0275resetView(l.onLoadMore())}),e.\u0275\u0275template(1,h,2,0,"span",9),e.\u0275\u0275template(2,v,3,0,"span",9),e.\u0275\u0275elementEnd()}if(2&n){const t=e.\u0275\u0275nextContext(2);e.\u0275\u0275property("disabled",t.loadingMore),e.\u0275\u0275advance(1),e.\u0275\u0275property("ngIf",!t.loadingMore),e.\u0275\u0275advance(1),e.\u0275\u0275property("ngIf",t.loadingMore)}}function x(n,r){1&n&&(e.\u0275\u0275elementStart(0,"div"),e.\u0275\u0275text(1," No More Blogs "),e.\u0275\u0275elementEnd())}function b(n,r){if(1&n&&(e.\u0275\u0275elementStart(0,"div",6),e.\u0275\u0275template(1,_,11,9,"ng-container",7),e.\u0275\u0275elementEnd(),e.\u0275\u0275template(2,B,3,3,"button",8),e.\u0275\u0275template(3,x,2,0,"div",9)),2&n){const t=e.\u0275\u0275nextContext();e.\u0275\u0275advance(1),e.\u0275\u0275property("ngForOf",t.blogs),e.\u0275\u0275advance(1),e.\u0275\u0275property("ngIf",!t.hideLoadMoreButton),e.\u0275\u0275advance(1),e.\u0275\u0275property("ngIf",t.noMoreBlogs)}}let C=(()=>{class n{constructor(t,o){this.router=t,this.blogService=o,this.didInitialBlogsLoad=!1,this.loadingMore=!1,this.hideLoadMoreButton=!1,this.noMoreBlogs=!1,this.blogs=[]}ngOnInit(){var t=this;return(0,p.Z)(function*(){const o=yield t.blogService.loadInitialBlogs();t.firstBlog=o.docs[0],t.lastBlog=o.docs[o.docs.length-1],o.docs.forEach(l=>{t.blogs.push(l.data())}),t.didInitialBlogsLoad=!0})()}onLoadMore(){var t=this;return(0,p.Z)(function*(){t.loadingMore=!0;const o=yield t.blogService.loadMoreBlogs(t.lastBlog);if(!o.docs.length)return t.hideLoadMoreButton=!0,void(t.noMoreBlogs=!0);
1o.docs.length<3&&(t.hideLoadMoreButton=!0,t.noMoreBlogs=!0),t.firstBlog=o.docs[0],t.lastBlog=o.docs[o.docs.length-1],o.docs.forEach(l=>{t.blogs.push(l.data())}),t.loadingMore=!1})()}onBlog(t){this.router.navigate(["blog",t.id])}static#e=this.\u0275fac=function(o){return new(o||n)(e.\u0275\u0275directiveInject(d.F0),e.\u0275\u0275directiveInject(m.Z))};static#t=this.\u0275cmp=e.\u0275\u0275defineComponent({type:n,selectors:[["app-blogs"]],decls:5,vars:2,consts:[[1,"bp-container"],[1,"content-wr"],[4,"ngIf","ngIfElse"],["initialBlogsLoaded",""],["width","45px","height","45px","viewBox","0 0 66 66","xmlns","http://www.w3.org/2000/svg",1,"spinner"],["fill","none","stroke-width","6","stroke-linecap","round","cx","33","cy","33","r","30",1,"path"],[1,"blogs-cards-wr"],[4,"ngFor","ngForOf"],["class","bp-btn",3,"disabled","click",4,"ngIf"],[4,"ngIf"],[1,"blog-card",3,"click"],[1,"blog-featured-image",3,"ngStyle"],[1,"blog-card-content"],[1,"blog-date"],[1,"blog-title"],[1,"bp-btn",3,"disabled","click"],["width","30px","height","30px","viewBox","0 0 66 66","xmlns","http://www.w3.org/2000/svg",1,"spinner"]],template:function(o,l){if(1&o&&(e.\u0275\u0275elementStart(0,"div",0)(1,"div",1),e.\u0275\u0275template(2,u,3,0,"ng-container",2),e.\u0275\u0275template(3,b,4,3,"ng-template",null,3,e.\u0275\u0275templateRefExtractor),e.\u0275\u0275elementEnd()()),2&o){const s=e.\u0275\u0275reference(4);e.\u0275\u0275advance(2),e.\u0275\u0275property("ngIf",!l.didInitialBlogsLoad)("ngIfElse",s)}},dependencies:[i.sg,i.O5,i.PC,i.uU]})}return n})();const M=[{path:"",component:(()=>{class n{constructor(){}ngOnInit(){}static#e=this.\u0275fac=function(o){return new(o||n)};static#t=this.\u0275cmp=e.\u0275\u0275defineComponent({type:n,selectors:[["app-blogs-list"]],decls:2,vars:0,template:function(o,l){1&o&&e.\u0275\u0275element(0,"app-banner")(1,"app-blogs")},dependencies:[g,C]})}return n})()}];let I=(()=>{class n{static#e=this.\u0275fac=function(o){return new(o||n)};static#t=this.\u0275mod=e.\u0275\u0275defineNgModule({type:n});static#n=this.\u0275inj=e.\u0275\u0275defineInjector({imports:[i.ez,d.Bz.forChild(M)]})}return n})()}}]);
Line numbers count LF bytes from the start of the resource, as the search results do. Vendor segments are library code the classifier recognised; they are stored but not indexed. Bytes are shown as Latin1 characters, one per byte.