PageSourceSearch

https://txerv.com/chunk-7SDVPHZY.js

js txerv.com collected 2026-10-02 01:47:27 UTC 11,021 bytes, 1 lines download raw bytes

1import{a as F}from"./chunk-3YYOKDQN.js";import{a as B}from"./chunk-YO4NVCET.js";import"./chunk-UVN2CBSY.js";import{p as I}from"./chunk-TVSS5XZ5.js";import{e as L,g as A,h as w,i as f,j as z}from"./chunk-FTKSJH5G.js";import"./chunk-GGYJAZMM.js";import{Bb as _,C as y,Cb as n,D as k,Db as e,Eb as o,Kc as S,Lb as O,Oc as g,U as M,V as D,Vb as E,Xb as t,Yb as x,_a as u,fa as s,ic as l,jc as p,lb as c,n as h,pb as P,s as m,z as C}from"./chunk-AU33U342.js";var v=class r{static \u0275fac=function(a){return new(a||r)};static \u0275cmp=c({type:r,selectors:[["app-admin-sidebar"]],decls:70,vars:0,consts:[[1,"sidebar"],[1,"sidebar-header"],[1,"logo"],["src","/assets/txerv-logo.svg","alt","TXERV Logo",1,"admin-logo-img"],[1,"badge","badge-cyan",2,"font-size","10px"],[1,"sidebar-nav"],[1,"nav-section"],["routerLink","/admin/dashboard","routerLinkActive","active",1,"nav-item"],[1,"icon"],["routerLink","/admin/leads","routerLinkActive","active",1,"nav-item"],["routerLink","/admin/services","routerLinkActive","active",1,"nav-item"],["routerLink","/admin/portfolio","routerLinkActive","active",1,"nav-item"],["routerLink","/admin/blog","routerLinkActive","active",1,"nav-item"],["routerLink","/admin/analytics","routerLinkActive","active",1,"nav-item"],["routerLink","/admin/content","routerLinkActive","active",1,"nav-item"],["routerLink","/admin/legal-pages","routerLinkActive","active",1,"nav-item"],["routerLink","/admin/media","routerLinkActive","active",1,"nav-item"],["routerLink","/admin/seo","routerLinkActive","active",1,"nav-item"],["routerLink","/admin/settings","routerLinkActive","active",1,"nav-item"],["routerLink","/admin/users","routerLinkActive","active",1,"nav-item"],[1,"sidebar-footer"],[1,"user-profile"],[1,"avatar"],[1,"user-info"],[1,"name"],[1,"role"]],template:function(a,d){a&1&&(n(0,"aside",0)(1,"div",1)(2,"div",2),o(3,"img",3),e(),n(4,"div",4),t(5,"Admin"),e()(),n(6,"nav",5)(7,"div",6),t(8,"Main"),e(),n(9,"a",7)(10,"span",8),t(11,"\u{1F4CA}"),e(),t(12," Dashboard "),e(),n(13,"a",9)(14,"span",8),t(15,"\u{1F3AF}"),e(),t(16," Leads "),e(),n(17,"a",10)(18,"span",8),t(19,"\u{1F6E0}\uFE0F"),e(),t(20," Services "),e(),n(21,"a",11)(22,"span",8),t(23,"\u{1F4BC}"),e(),t(24," Portfolio "),e(),n(25,"a",12)(26,"span",8),t(27,"\u{1F4DD}"),e(),t(28," Blog "),e(),n(29,"a",13)(30,"span",8),t(31,"\u{1F4C8}"),e(),t(32," Analytics "),e(),n(33,"div",6),t(34,"Management"),e(),n(35,"a",14)(36,"span",8),t(37,"\u{1F4C1}"),e(),t(38," Content Mgmt "),e(),n(39,"a",15)(40,"span",8),t(41,"\u2696\uFE0F"),e(),t(42," Legal Pages "),e(),n(43,"a",16)(44,"span",8),t(45,"\u{1F5BC}\uFE0F"),e(),t(46," Media Library "),e(),n(47,"a",17)(48,"span",8),t(49,"\u{1F50D}"),e(),t(50," SEO Tools "),e(),n(51,"a",18)(52,"span",8),t(53,"\u2699\uFE0F"),e(),t(54," Setting Management "),e(),n(55,"div",6),t(56,"System"),e(),n(57,"a",19)(58,"span",8),t(59,"\u{1F465}"),e(),t(60," Users & Roles "),e()(),n(61,"div",20)(62,"div",21)(63,"div",22),t(64,"M"),e(),n(65,"div",23)(66,"p",24),t(67,"Mudassar Ahmad"),e(),n(68,"p",25),t(69,"Admin"),e()()()()())},dependencies:[f,z],styles:['.sidebar[_ngcontent-%COMP%]{background:#09090b;color:#a1a1aa;height:100%;display:flex;flex-direction:column;border-right:1px solid var(--glass-border)}.sidebar-header[_ngcontent-%COMP%]{padding:var(--space-6);display:flex;align-items:center;gap:var(--space-3)}.logo[_ngcontent-%COMP%]{height:28px;display:flex;align-items:center}.admin-logo-img[_ngcontent-%COMP%]{height:100%;width:auto;filter:brightness(0) invert(1)}.sidebar-nav[_ngcontent-%COMP%]{flex:1;padding:0 var(--space-4);overflow-y:auto}.sidebar-nav[_ngcontent-%COMP%]::-webkit-scrollbar{width:4px}.sidebar-nav[_ngcontent-%COMP%]::-webkit-scrollbar-track{background:transparent}.sidebar-nav[_ngcontent-%COMP%]::-webkit-scrollbar-thumb{background:#ffffff1a;border-radius:4px}.sidebar-nav[_ngcontent-%COMP%]::-webkit-scrollbar-thumb:hover{background:#fff3}.nav-section[_ngcontent-%COMP%]{font-size:10px;font-weight:700;text-transform:uppercase;letter-spacing:.1em;margin:var(--space-6) 0 var(--space-3) var(--space-3);color:#52525b}.nav-item[_ngcontent-%COMP%]{display:flex;align-items:center;padding:var(--space-2) var(--space-3);border-radius:8px;color:#a1a1aa;text-decoration:none;font-size:.875rem;font-weight:500;margin-bottom:2px;transition:all .2s ease;position:relative}.nav-item[_ngcontent-%COMP%]:hover{background:#ffffff0d;color:#fff}.nav-item.active[_ngcontent-%COMP%]{background:#ffffff14;color:#fff;font-weight:600}.nav-item.active[_ngcontent-%COMP%]:before{content:"";position:absolute;
1left:0;top:15%;height:70%;width:3px;background:var(--accent-primary);border-radius:0 4px 4px 0}.icon[_ngcontent-%COMP%]{margin-right:var(--space-3);font-size:1rem;opacity:.7;transition:all .2s}.nav-item[_ngcontent-%COMP%]:hover   .icon[_ngcontent-%COMP%], .nav-item.active[_ngcontent-%COMP%]   .icon[_ngcontent-%COMP%]{opacity:1}.sidebar-footer[_ngcontent-%COMP%]{padding:var(--space-4);border-top:1px solid var(--glass-border);background:#ffffff03}.user-profile[_ngcontent-%COMP%]{display:flex;align-items:center;gap:var(--space-3);padding:var(--space-2);border-radius:8px;transition:background .2s;cursor:pointer}.user-profile[_ngcontent-%COMP%]:hover{background:#ffffff0d}.avatar[_ngcontent-%COMP%]{width:36px;height:36px;background:var(--bg-surface);border:1px solid var(--border-subtle);border-radius:8px;display:flex;align-items:center;justify-content:center;color:#fff;font-weight:600;font-size:.9rem}.user-info[_ngcontent-%COMP%]   p[_ngcontent-%COMP%]{margin:0;line-height:1.2}.name[_ngcontent-%COMP%]{font-size:.875rem;font-weight:600;color:#fff;margin-bottom:2px!important}.role[_ngcontent-%COMP%]{font-size:.75rem;color:#71717a;text-transform:capitalize}']})};function H(r,i){if(r&1&&(n(0,"span",15),t(1),e()),r&2){let a=i.ngIf;u(),x(a)}}var b=class r{authService=s(F);router=s(w);leadsService=s(B);unreadCount$=C(0,6e4).pipe(D(()=>this.leadsService.getUnreadCount().pipe(k(()=>h(0)))));pageTitle$=this.router.events.pipe(y(i=>i instanceof L),m(()=>this.router.url),M(this.router.url),m(i=>i.includes("/admin/settings")?"Setting Management":i.includes("/admin/leads")?"Leads":i.includes("/admin/services")?"Services":i.includes("/admin/portfolio")?"Portfolio":i.includes("/admin/blog/new")?"New Blog Post":i.includes("/admin/blog/edit")?"Edit Blog Post":i.includes("/admin/blog")?"Blog Management":"Dashboard Overview"));logout(){this.authService.logout().subscribe({next:()=>{this.router.navigate(["/admin/login"])},error:()=>{this.authService.clearSession(),this.router.navigate(["/admin/login"])}})}static \u0275fac=function(a){return new(a||r)};static \u0275cmp=c({type:r,selectors:[["app-admin-header"]],decls:24,vars:6,consts:[[1,"admin-header"],[1,"header-breadcrumb"],[1,"crumb"],[1,"sep"],[1,"crumb","active"],[1,"header-actions"],[1,"search-bar"],[1,"icon"],["type","text","placeholder","Search leads, posts..."],[1,"action-icons"],["routerLink","/admin/leads",1,"icon-btn"],["class","badge",4,"ngIf"],[1,"icon-btn"],[1,"divider"],[1,"logout-btn",3,"click"],[1,"badge"]],template:function(a,d){a&1&&(n(0,"header",0)(1,"div",1)(2,"span",2),t(3,"Admin"),e(),n(4,"span",3),t(5,"/"),e(),n(6,"span",4),t(7),l(8,"async"),e()(),n(9,"div",5)(10,"div",6)(11,"span",7),t(12,"\u{1F50D}"),e(),o(13,"input",8),e(),n(14,"div",9)(15,"button",10),t(16," \u{1F514} "),P(17,H,2,1,"span",11),l(18,"async"),e(),n(19,"button",12),t(20,"\u{1F4AC}"),e(),o(21,"div",13),n(22,"button",14),O("click",function(){return d.logout()}),t(23,"Log out"),e()()()()),a&2&&(u(7),x(p(8,2,d.pageTitle$)),u(10),_("ngIf",p(18,4,d.unreadCount$)))},dependencies:[S,f,g],styles:[".admin-header[_ngcontent-%COMP%]{height:64px;padding:0 24px;display:flex;align-items:center;justify-content:space-between;border-bottom:1px solid var(--border-subtle);background:var(--bg-surface);-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);position:sticky;top:0;z-index:10;transition:all .3s ease}.header-breadcrumb[_ngcontent-%COMP%]{display:flex;align-items:center;gap:var(--space-2);font-size:var(--fs-sm);font-weight:500}.crumb[_ngcontent-%COMP%]{color:var(--text-muted)}.sep[_ngcontent-%COMP%]{color:var(--border-strong)}.crumb.active[_ngcontent-%COMP%]{color:var(--text-primary)}.header-actions[_ngcontent-%COMP%]{display:flex;align-items:center;gap:var(--space-4)}.search-bar[_ngcontent-%COMP%]{display:flex;align-items:center;background:var(--bg-main);padding:var(--space-2) var(--space-4);border-radius:var(--radius-lg);gap:var(--space-2);border:1px solid var(--border-subtle)}.search-bar[_ngcontent-%COMP%]   input[_ngcontent-%COMP%]{border:none;background:transparent;outline:none;font-size:var(--fs-xs);width:220px;color:var(--text-primary)}
1.search-bar[_ngcontent-%COMP%]   input[_ngcontent-%COMP%]::placeholder{color:var(--text-muted)}.action-icons[_ngcontent-%COMP%]{display:flex;align-items:center;gap:var(--space-3)}.icon-btn[_ngcontent-%COMP%]{background:none;border:none;border-radius:var(--radius-md);padding:var(--space-2);cursor:pointer;position:relative;color:var(--text-secondary);display:flex;align-items:center;justify-content:center}.icon-btn[_ngcontent-%COMP%]:hover{background:var(--bg-main);color:var(--text-primary)}.badge[_ngcontent-%COMP%]{position:absolute;top:0;right:0;background:#ef4444;color:#fff;border-radius:10px;font-size:10px;font-weight:700;padding:2px 5px;line-height:1;border:2px solid var(--bg-surface)}.divider[_ngcontent-%COMP%]{width:1px;height:24px;background:var(--border-subtle);margin:0 var(--space-2)}.logout-btn[_ngcontent-%COMP%]{background:#ef44441a;border:1px solid rgba(239,68,68,.2);padding:var(--space-2) var(--space-4);border-radius:var(--radius-md);font-size:var(--fs-xs);font-weight:600;color:#ef4444;cursor:pointer;transition:all .2s;white-space:nowrap}.logout-btn[_ngcontent-%COMP%]:hover{background:#ef444426}"]})};var R=class r{store=s(I);isDarkMode$=this.store.select(i=>i.settings.settings.dark_mode_enabled).pipe(m(i=>i==="1"||i===!0));ngOnInit(){document.body.classList.add("admin-mode")}ngOnDestroy(){document.body.classList.remove("admin-mode")}static \u0275fac=function(a){return new(a||r)};static \u0275cmp=c({type:r,selectors:[["app-admin-layout"]],decls:7,vars:4,consts:[[1,"admin-shell"],[1,"sidebar-wrapper"],[1,"main-content"],[1,"page-content"]],template:function(a,d){a&1&&(n(0,"div",0),l(1,"async"),o(2,"app-admin-sidebar",1),n(3,"div",2),o(4,"app-admin-header"),n(5,"div",3),o(6,"router-outlet"),e()()()),a&2&&E("dark-theme",p(1,2,d.isDarkMode$))},dependencies:[A,v,b,g],styles:[".admin-shell[_ngcontent-%COMP%]{display:flex;height:100vh;width:100%;background:var(--bg-main);color:var(--text-primary);overflow:hidden;transition:background .3s ease,color .3s ease}.admin-shell.dark-theme[_ngcontent-%COMP%]{background:var(--bg-main);color:var(--text-primary)}.sidebar-wrapper[_ngcontent-%COMP%]{width:260px;height:100%;flex-shrink:0}.main-content[_ngcontent-%COMP%]{flex:1;display:flex;flex-direction:column;height:100%;overflow-y:auto}.page-content[_ngcontent-%COMP%]{padding:24px;flex:1}"]})};export{R as AdminLayoutComponent};

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.