1import{a as N}from"./chunk-OG3O37N2.js";import{a as I}from"./chunk-HNKH2A6D.js";import{a as Z}from"./chunk-3V3YRWSS.js";import{a as b}from"./chunk-6TAZAZFQ.js";import{a as h}from"./chunk-LYZXHOEV.js";import{a as W}from"./chunk-2236OO75.js";import"./chunk-SPZV377N.js";import{d as Q}from"./chunk-VG747TC2.js";import{j as Y}from"./chunk-IMGON475.js";import"./chunk-SW27BSM2.js";import"./chunk-UCLMWNX4.js";import{a as M}from"./chunk-UMIH5LS3.js";import"./chunk-LJSYQ6VW.js";import{k as B,l as E,y as J}from"./chunk-UPDZMESH.js";import{$b as f,Ac as w,Bc as z,F as $,Fa as y,Hc as V,Ic as R,Jc as x,Kb as m,Oc as q,P as D,Pa as L,Qa as j,Qb as _,Vb as U,Wa as K,Zb as s,_b as o,dc as H,ia as v,kc as A,oc as X,pc as P,sb as g,tb as C,v as G,zc as O}from"./chunk-REFE22HE.js";var F=()=>[1,2,3,4,5,6,7,8,9,10];function ne(e,t){e&1&&(s(0,"th",4),f(1,"span",5),o());}function ie(e,t){e&1&&(s(0,"td",4),f(1,"span",5),o());}function re(e,t){e&1&&(s(0,"tr")(1,"td",4),f(2,"span",6),o(),m(3,ie,2,0,"td",2),o()),e&2&&(g(3),_("ngForOf",x(1,F)));}var ee=(()=>{let t=class t{};t.ɵfac=function(n){return new(n||t)();},t.ɵcmp=y({type:t,selectors:[["app-rankings-placeholder"]],standalone:!0,features:[R],decls:8,vars:4,consts:[[1,"table-responsive","col-11","mx-auto"],[1,"table","table-bordered"],["class","placeholder-glow",4,"ngFor","ngForOf"],[4,"ngFor","ngForOf"],[1,"placeholder-glow"],[1,"placeholder","col-6"],[1,"placeholder","col-8"]],template:function(n,l){n&1&&(s(0,"div",0)(1,"table",1)(2,"thead")(3,"tr"),f(4,"th"),m(5,ne,2,0,"th",2),o()(),s(6,"tbody"),m(7,re,4,2,"tr",3),o()()()),n&2&&(g(5),_("ngForOf",x(2,F)),g(2),_("ngForOf",x(3,F)));},dependencies:[E],encapsulation:2});let e=t;return e;})();var oe=(e,t,r,i,n)=>({"clickable pointer":e,"rating-low":t,"rating-medium":r,"rating-high":i,"rating-max":n});function ae(e,t){if(e&1&&(s(0,"th")(1,"span",11),O(2),o()()),e&2){let r=t.$implicit;g(2),w(r.name);}}function se(e,t){if(e&1){let r=H();s(0,"td",13),X("click",function(){let n=L(r),l=n.$implicit,c=n.index,u=P().index,p=P(2);return j(l>0?p.navigate(p.industries[u].id,p.categories[c].id):null);}),O(1),o();}if(e&2){let r=t.$implicit;_("ngClass",q(2,oe,r>0,r===0,r>0&&r<=87,r>87,r>499)),g(),z(" ",r," ");}}function ce(e,t){if(e&1&&(s(0,"tr",11)(1,"td",11),O(2),o(),m(3,se,2,8,"td",12),o()),e&2){let r=t.$implicit;g(2),w(r.industry),g(),_("ngForOf",r.ratings);}}function le(e,t){if(e&1&&(s(0,"div",7)(1,"table",8)(2,"thead")(3,"tr")(4,"th"),f(5,"span"),o(),m(6,ae,3,1,"th",9),o()(),s(7,"tbody"),m(8,ce,4,2,"tr",10),o()()()),e&2){let r=P();g(6),_("ngForOf",r.categories),g(2),_("ngForOf",r.ratingsMatrix);}}function de(e,t){e&1&&f(0,"app-rankings-placeholder");}var be=(()=>{let t=class t{constructor(i,n,l,c,u,p){this.industryService=i,this.skillService=n,this.ratingService=l,this.router=c,this.destroyRef=u,this.authenticationService=p,this.ERoutes=h,this.industries=[],this.categories=[],this.ratingsMatrix=[],this.loadingMatrix=!0,this.canSeeRankingDetails=!1;}ngOnInit(){this.getMatrix(),this.authenticationService.checkStatus(),this.authenticationService.isLogged.pipe(D(i=>i?this.getCurrentUser():G({})),M(this.destroyRef)).subscribe(i=>{this.canSeeRankingDetails=i?.item?.rights?.RESOURCES_RATINGS_MATRIX,this.companyType=i?.item?.companyType;});}getCurrentUser(){return this.authenticationService.currentUser$.pipe(M(this.destroyRef));}getMatrix(){this.loadingMatrix=!0;let i=this.industryService.getAllIndustries().pipe(M(this.destroyRef)).pipe(v(1)),n=this.skillService.getAllCategories().pipe(M(this.destroyRef)).pipe(v(1)),l=this.ratingService.getRatingMatrix().pipe(M(this.destroyRef)).pipe(v(1));$([i,n,l]).subscribe({next:([c,u,p])=>{this.industries=Object.values(c.industries),this.categories=Object.values(u.categories),this.ratingsMatrix=this.buildMatrix(this.industries,this.categories,p.ratings),this.loadingMatrix=!1;},error:c=>{console.error("Error loading data",c);}});}buildMatrix(i,n,l){let c=[];i.forEach(a=>{let d={industry:a.name,ratings:[]};n.forEach(k=>{let S=l[a.id]?.[k.id]||0;d.ratings.push(S);}),c.push(d);});let u=c.reduce((a,d)=>{let k=d.industry;a[k]||(a[k]=0);let S=0;for(let T=0;T<d.ratings.length;T++)S+=d.ratings[T];return a[k]=S,a;},{}),p=[];return Object.keys(u).forEach(a=>{p.push([a,u[a]]);}),p.sort((a,d)=>
1a[1]-d[1]),c.forEach(a=>{a.order=p.findIndex(d=>d[0]==a.industry);}),c.sort((a,d)=>a.order-d.order),c.reverse();}navigate(i,n){this.canSeeRankingDetails?this.router.navigate(["/"+h.PORTAL,h.RATINGS,h.RANKING_LIST_PROFILES],{queryParams:{industryId:i,categoryId:n}}):this.companyType===Y.CONSULTING&&this.router.navigate(["/"+h.PORTAL,h.SETTINGS,h.MEMBERSHIP]);}};t.ɵfac=function(n){return new(n||t)(C(b),C(I),C(N),C(Q),C(K),C(W));},t.ɵcmp=y({type:t,selectors:[["app-rankings"]],standalone:!0,features:[V([b,I,N]),R],decls:10,vars:1,consts:()=>{let i;i=" Sind Sie Kunde? Entdecken Sie die Besten in Ihrem Bereich ";let n;return n=" Das Plus-Feature f\xFCr Endkunden, Beratungsunternehmen und Personaldienstleister: berater.de Ranking Matrix. Ein Klick auf ein Fachgebiet mit der gew\xFCnschten Kombination aus Kompetenz und Branchenerfahrung zeigt Ihnen die besten Berater Ihres Fachgebiets \u2013 systematisch und \xFCbersichtlich. ",[i,n,[1,"rankings"],[1,"rankings-overview"],[1,"rankings-title","heading-base","h1","mb-3"],[1,"rankings-description"],[1,"rankings-content","col-12"],[1,"table-responsive","col-11","mx-auto"],[1,"table","table-bordered"],[4,"ngFor","ngForOf"],["class","rankings-table-text",4,"ngFor","ngForOf"],[1,"rankings-table-text"],[3,"ngClass","click",4,"ngFor","ngForOf"],[3,"click","ngClass"]];},template:function(n,l){n&1&&(s(0,"div",2)(1,"app-hp-overview-container")(2,"div",3)(3,"h1",4),A(4,0),o(),s(5,"p",5),A(6,1),o()()(),s(7,"div",6),m(8,le,9,2,"div",7)(9,de,1,0),o()()),n&2&&(g(8),U(8,l.loadingMatrix?9:8));},dependencies:[J,B,E,Z,ee],styles:[".rankings[_ngcontent-%COMP%]{background-color:#fff;padding-bottom:7rem}.rankings-title[_ngcontent-%COMP%], .rankings-description[_ngcontent-%COMP%]{text-align:center}.rankings[_ngcontent-%COMP%] th[_ngcontent-%COMP%], .rankings[_ngcontent-%COMP%] td[_ngcontent-%COMP%]{text-align:center;vertical-align:middle;padding:.25rem .5rem;white-space:normal;width:4rem}.rankings[_ngcontent-%COMP%] th[_ngcontent-%COMP%]{font-size:.75rem;font-weight:700}.rankings[_ngcontent-%COMP%] th[_ngcontent-%COMP%] span[_ngcontent-%COMP%]{transform:rotate(180deg);display:inline-block;writing-mode:vertical-rl}.rankings[_ngcontent-%COMP%] td[_ngcontent-%COMP%]{white-space:nowrap;width:4rem;height:4rem}.rankings[_ngcontent-%COMP%] td[_ngcontent-%COMP%]:first-child, .rankings[_ngcontent-%COMP%] th[_ngcontent-%COMP%]:first-child{width:12.5rem;white-space:normal;text-align:center}.rankings-table-text[_ngcontent-%COMP%]{font-size:.875rem;font-weight:500}.rankings[_ngcontent-%COMP%] .rating-low[_ngcontent-%COMP%]{background-color:#f5f7ea}.rankings[_ngcontent-%COMP%] .rating-medium[_ngcontent-%COMP%]{background-color:#e4e9c5}.rankings[_ngcontent-%COMP%] .rating-high[_ngcontent-%COMP%]{background-color:#d4dba0}.rankings[_ngcontent-%COMP%] .rating-max[_ngcontent-%COMP%]{background-color:#97a43e;color:#fff}.rankings[_ngcontent-%COMP%] td.clickable.pointer[_ngcontent-%COMP%]:hover{background-color:#798332;cursor:pointer;color:#fff}.rankings[_ngcontent-%COMP%] .disabled[_ngcontent-%COMP%]{color:#6c757d;cursor:not-allowed}"]});let e=t;return e;})();export{be as RankingsComponent};/**i18n:6ff56e1237b5ca15ba2d806f4d3091c6d8ad6faa4340cb54c69cbdda31c6edcb*/
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.