1import{a as ve}from"./chunk-UTQYEOSV.js";import{a as R}from"./chunk-TXA554CQ.js";import{a as ie,b as ne,c as oe,d as re,e as se,g as ae,h as pe,i as ce}from"./chunk-TXIW6DEW.js";import{a as fe}from"./chunk-VXUJW7R5.js";import{e as P}from"./chunk-6ZJESQQM.js";import{a as _e}from"./chunk-6D6RAIJA.js";import{Y as ue}from"./chunk-PJQ4PKS2.js";import"./chunk-VL5LW6CD.js";import"./chunk-OLICYXFO.js";import"./chunk-BROQV66G.js";import"./chunk-2KYBFJ6D.js";import"./chunk-LMH7CWJD.js";import{a as L}from"./chunk-HWJNUBXM.js";import"./chunk-MTG76SG4.js";import"./chunk-H4RIA2SP.js";import"./chunk-SFI4CDBF.js";import"./chunk-3IE6ZIJT.js";import"./chunk-GURR5BWY.js";import"./chunk-4OODM5RZ.js";import{a as he}from"./chunk-HDN3V3OA.js";import"./chunk-25BZAPPZ.js";import"./chunk-YNY5VX5O.js";import{b as me}from"./chunk-B25OOK5G.js";import"./chunk-T4Z57YFC.js";import{a as M}from"./chunk-CZVPOIDA.js";import{a as D}from"./chunk-HKROCZZ5.js";import"./chunk-4TDVVZWI.js";import{b as te}from"./chunk-JV7BJH73.js";import"./chunk-PAWXXTXM.js";import{b as de}from"./chunk-LM52PLPW.js";import"./chunk-ZMRJTPMN.js";import"./chunk-SYZ4TT7R.js";import"./chunk-4KE2SNJZ.js";import{b as le}from"./chunk-LOPWR4IF.js";import{a as Q}from"./chunk-ERB4A4K4.js";import"./chunk-L72XHRI4.js";import{a as Z}from"./chunk-QJGDHPIL.js";import{c as ee}from"./chunk-5YER4OD3.js";import"./chunk-XQKA5YTI.js";import{a as G}from"./chunk-45XGHXLO.js";import{c as F,d as w,e as A,g as I}from"./chunk-OK4ZBCSP.js";import"./chunk-QYTBOKNQ.js";import"./chunk-JRV2IVKS.js";import{Ea as u,Ec as x,Fa as d,Ka as y,Ma as q,Mc as v,Oc as p,Rb as T,Sc as N,Tc as O,Uc as V,Yb as B,Yc as W,bd as l,cd as z,dd as b,hd as J,id as K,jd as X,lc as h,mc as f,od as Y,pc as E,qc as U,rc as _,sc as o,tc as r,uc as S,wd as g,xd as C,ya as m,zb as a}from"./chunk-X2XUJWBI.js";import"./chunk-ZUU3DWDH.js";var xe=()=>({prefix:"far",iconName:"plus"}),Ge=(i,c)=>c.id;function Me(i,c){if(i&1){let e=x();o(0,"div",4)(1,"button",5),v("click",function(){u(e);let n=p(2);return d(n.addAsset())}),S(2,"fa-icon",6),o(3,"span",7),l(4,"New asset"),r()()()}if(i&2){let e=p(2);a(),_("disabled",!e.currentUser.isSuperadmin()),a(),_("icon",Y(2,xe))}}function ye(i,c){if(i&1&&(o(0,"tr")(1,"td"),l(2),r(),o(3,"td"),l(4),r(),o(5,"td"),l(6),r(),o(7,"td"),l(8),g(9,"translate"),r()()),i&2){let e=c.$implicit;a(2),b(" ",e.type," "),a(2),b(" ",e.name," "),a(2),b(" ",e.location," "),a(2),b(" ",C(9,4,e.category)," ")}}function Te(i,c){if(i&1){let e=x();o(0,"div",1)(1,"div",8)(2,"div",9)(3,"table",10)(4,"thead")(5,"tr")(6,"th",11),v("sort",function(n){u(e);let s=p(2);return d(s.onSort(n))}),o(7,"span",12),l(8,"Display name"),r()(),o(9,"th",13),v("sort",function(n){u(e);let s=p(2);return d(s.onSort(n))}),o(10,"span",12),l(11,"Name"),r()(),o(12,"th",14),v("sort",function(n){u(e);let s=p(2);return d(s.onSort(n))}),o(13,"span",12),l(14,"Location"),r()(),o(15,"th",15),v("sort",function(n){u(e);let s=p(2);return d(s.onSort(n))}),o(16,"span",12),l(17,"Category"),r()()()(),o(18,"tbody"),E(19,ye,10,6,"tr",null,Ge),r()()()()()}if(i&2){let e=p(2);a(19),U(e.assetsOfGroup)}}function we(i,c){if(i&1&&(o(0,"div",0)(1,"div",1)(2,"div",2),S(3,"app-admin-config-page-header",3),g(4,"translate"),g(5,"translate"),g(6,"translate"),r(),h(7,Me,5,3,"div",4),r(),h(8,Te,21,0,"div",1),r()),i&2){let e=p();a(3),_("heading",C(4,6,"Asset Group"))("itemName",e.group?e.group.name:"")("count",e.assetsOfGroup.length)("type",e.assetsOfGroup.length===1?C(5,8,"Assets"):C(6,10,"Assets")),a(4),f(e.currentUser?7:-1),a(),f(e.group?8:-1)}}var ge=(()=>{class i{constructor(){this.assets=[],this.assetsOfGroup=[],this.loadGroup=new q,this.tableSortService=m(D),this.modalService=m(te),this.adminMachineService=m(P),this.toastService=m(Q),this.translateService=m(F),this.destroyRef=m(y)}onSort({column:e,direction:t}){this.headers&&this.group&&this.tableSortService.sortTableItems(this.assetsOfGroup,e,t,this.headers)}addAsset(){let e=this.modalService.open(fe,{backdrop:"static",size:"lg"});e.componentInstance.currentUser=this.currentUser,e.componentInstance.assets=this.assets,e.closed.subscribe(t=>
1{if(!t)return;this.adminMachineService.createNewMachine(t).pipe(G(this.destroyRef)).subscribe({next:s=>{this.toastService.success(this.translateService.instant("Asset added")+" "+s.name)},error:()=>{this.toastService.error(this.translateService.instant("Asset could not be added"))},complete:()=>{this.loadGroup.next(this)}})})}static{this.\u0275fac=function(t){return new(t||i)}}static{this.\u0275cmp=T({type:i,selectors:[["app-machine-group-machines"]],viewQuery:function(t,n){if(t&1&&N(M,5),t&2){let s;O(s=V())&&(n.headers=s)}},inputs:{currentUser:"currentUser",assets:"assets",group:"group",assetsOfGroup:"assetsOfGroup"},outputs:{loadGroup:"loadGroup"},decls:1,vars:1,consts:[[1,"container-fluid"],[1,"row"],[1,"col-10"],[3,"heading","itemName","count","type"],[1,"col-2"],[1,"btn","btn-primary",3,"click","disabled"],[3,"icon"],["translate","",1,"d-none","d-sm-inline"],[1,"col"],[1,"table-responsive"],[1,"table","table-striped"],["sortable","type",1,"sortable",3,"sort"],["translate",""],["sortable","name",1,"sortable",3,"sort"],["sortable","location",1,"sortable",3,"sort"],["sortable","category",1,"sortable",3,"sort"]],template:function(t,n){t&1&&h(0,we,9,12,"div",0),t&2&&f(n.group?0:-1)},dependencies:[I,w,R,le,M,A],encapsulation:2})}}return i})();var Ie=(i,c)=>c.id;function Ee(i,c){if(i&1&&(o(0,"tr")(1,"td"),l(2),r(),o(3,"td"),l(4),r(),o(5,"td"),l(6),g(7,"translate"),r()()),i&2){let e=c.$implicit;a(2),b(" ",e.displayName," "),a(2),b(" ",e.username," "),a(2),b(" ",C(7,3,e.role)," ")}}function Ue(i,c){if(i&1){let e=x();o(0,"div",0)(1,"div",1)(2,"div",2),S(3,"app-admin-config-page-header",3),g(4,"translate"),g(5,"translate"),g(6,"translate"),r()(),o(7,"div",1)(8,"div",4)(9,"div",5)(10,"table",6)(11,"thead")(12,"tr")(13,"th",7),v("sort",function(n){u(e);let s=p();return d(s.onSort(n))}),o(14,"span",8),l(15,"Name"),r()(),o(16,"th",9),v("sort",function(n){u(e);let s=p();return d(s.onSort(n))}),o(17,"span",8),l(18,"E-Mail"),r()(),o(19,"th",10),v("sort",function(n){u(e);let s=p();return d(s.onSort(n))}),o(20,"span",8),l(21,"Role"),r()()()(),o(22,"tbody"),E(23,Ee,8,5,"tr",null,Ie),r()()()()()()}if(i&2){let e=p();a(3),_("heading",C(4,3,"Users"))("count",e.users?e.users.length:0)("type",e.users&&e.users.length===1?C(5,5,"User"):C(6,7,"Users")),a(20),U(e.users)}}var Ce=(()=>{class i{constructor(){this.adminUserService=m(_e),this.tableSortService=m(D),this.destroyRef=m(y),this.users=[]}ngOnInit(){if(!this.group?.id)return;this.adminUserService.listUsersOfGroup(this.group.id).pipe(G(this.destroyRef)).subscribe(t=>{this.users=t})}onSort({column:e,direction:t}){this.headers&&this.group&&this.tableSortService.sortTableItems(this.users,e,t,this.headers)}static{this.\u0275fac=function(t){return new(t||i)}}static{this.\u0275cmp=T({type:i,selectors:[["app-machine-group-users"]],viewQuery:function(t,n){if(t&1&&N(M,5),t&2){let s;O(s=V())&&(n.headers=s)}},inputs:{group:"group"},decls:1,vars:1,consts:[[1,"container-fluid"],[1,"row"],[1,"col-12"],[3,"heading","count","type"],[1,"col"],[1,"table-responsive"],[1,"table","table-striped"],["sortable","displayName",1,"sortable",3,"sort"],["translate",""],["sortable","username",1,"sortable",3,"sort"],["sortable","role",1,"sortable",3,"sort"]],template:function(t,n){t&1&&h(0,Ue,25,9,"div",0),t&2&&f(n.group?0:-1)},dependencies:[I,w,R,M,A],encapsulation:2})}}return i})();var Se=(i,c)=>c.id;function Ne(i,c){if(i&1&&(o(0,"li"),l(1),r()),i&2){let e=c.$implicit;a(),z(e.name)}}function Oe(i,c){if(i&1&&(o(0,"ul",9),E(1,Ne,2,1,"li",null,Se),r()),i&2){let e=p().$implicit,t=p(3);a(),U(t.assetsOfSubGroup.get(e.id))}}function Ve(i,c){if(i&1&&(o(0,"tr")(1,"td"),l(2),r(),o(3,"td"),h(4,Oe,3,0,"ul",9),r()()),i&2){let e=c.$implicit,t=p(3);a(2),b(" ",e.name," "),a(2),f(e.id&&t.assetsOfSubGroup.get(e.id)?4:-1)}}function Ae(i,c){if(i&1){let e=x();o(0,"div",1)(1,"div",4)(2,"div",5)(3,"table",6)(4,"thead")(5,"tr")(6,"th",7),v("sort",function(n){u(e);let s=p(2);return d(s.onSort(n))}),o(7,"span",8),l(8,"Name"),r()(),o(9,"th")(10,"span",8),l(11,"Machines"),r()()()(),o(12,"tbody"),E(13,Ve,5,2,"tr",null,Se),r()()()()()}if(i&2){let e=p(2);a(13),U(e.subGroups)}}function De(i,c){if(i&1&&(o(0,"div",0)(1,"div",1)(2,"div",2),S(3,"app-admin-config-page-header",3),g(4,"translate"),g(5,"translate"),g(6,"translate"),r()(),h(7,Ae,15,0,"div",1),r()),i&2){let e=p();a(3),_("heading",C(4,4,"Groups"))("count",e.subGroups.length)("type",e.subGroups.length===1?C(5,6,"Group"):C(6,8,"Groups")),a(4),f(e.group?7:-1)}}var be=(()=>{class i{constructor(){this.adminMachineGroupService=m(L),this.subGroups=[],this.assetsOfSubGroup=new Map,this.destroyRef=m(y),this.tableSortService=m(D),this.assets=[]}ngOnInit(){if(!this.group?.id)return;this.adminMachineGroupService.listSubGroups(this.group.id).pipe(G(this.destroyRef)).subscribe({next:t=>{this.subGroups=t,this.obtainAssetsOfSubGroups()},error:t=>{console.log(t)}})}onSort({column:e,direction:t}){this.headers&&this.group&&this.tableSortService.sortTableItems(this.subGroups,e,t,this.headers)}obtainAssetsOfSubGroups(){for(let e of this.subGroups){let t=e.id,n=[];if(t!==void 0){for(let s of e.assetIds)for(let k of this.assets)s===k.id&&(n.push(k),console.log("asset of "+k.id));this.assetsOfSubGroup.set(t,n)}}}static{this.\u0275fac=function(t){return new(t||i)}}static{this.\u0275cmp=T({type:i,selectors:[["app-machine-group-groups"]],viewQuery:function(t,n){if(t&1&&N(M,5),t&2){let s;O(s=V())&&(n.headers=s)}},inputs:{group:"group",assets:"assets"},decls:1,vars:1,consts:[[1,"container-fluid"],[1,"row"],[1,"col-12"],[3,"heading","count","type"],[1,"col"],[1,"table-responsive"],[1,"table","table-striped"],["sortable","name",1,"sortable",3,"sort"],["translate",""],[1,"list-items"]],template:function(t,n){t&1&&h(0,De,8,10,"div",0),t&2&&f(n.group?0:-1)},dependencies:[I,w,R,M,A],encapsulation:2})}}return i})();function Re(i,c){i&1&&S(0,"ab-loading-spinner")}function ke(i,c){if(i&1&&S(0,"app-config-page-header",2),i&2){let e=p();_("title",e.group.name)("name",e.group.parentName)}}function Be(i,c){if(i&1){let e=x();o(0,"app-machine-group-machines",12),v("loadGroup",function(){u(e);let n=p();return d(n.loadMachineGroup())}),r()}if(i&2){let e=p();_("group",e.group)("currentUser",e.currentUser)("assets",e.assets)("assetsOfGroup",e.assetsOfGroup)}}function Fe(i,c){if(i&1&&S(0,"app-machine-group-users",13),i&2){let e=p(2);_("group",e.group)}}function Qe(i,c){i&1&&(o(0,"li",9)(1,"a",7),l(2,"Users"),r(),B(3,Fe,1,1,"ng-template",8),r())}function Pe(i,c){if(i&1&&S(0,"app-machine-group-groups",14),i&2){let e=p();_("assets",e.assetsOfGroup)("group",e.group)}}var Ht=(()=>{class i{constructor(){this.active="machines",this.machineGroupId=-1,this.loading=!1,this.assets=[],this.assetsOfGroup=[],this.toastService=m(Q),this.sideMenuService=m(ue),this.titleService=m(ee),this.translateService=m(F),this.adminMachineService=m(P),this.route=m(de),this.userService=m(he),this.adminMachineGroupService=m(L),this.destroyRef=m(y)}ngOnInit(){this.route.params.subscribe(e=>{this.group=void 0,this.active="machines";let t=e.machineGroupId;t&&(this.machineGroupId=parseInt(t),this.loadMachineGroup(),this.loadCurrentUser(),this.loadMachines())})}loadCurrentUser(){this.userService.get().subscribe({next:t=>{this.currentUser=t},error:()=>{this.toastService.error(this.translateService.instant("There is an error in getting current user details"))}})}loadMachineGroup(){this.loading=!0,this.adminMachineGroupService.getMachineGroup(this.machineGroupId).pipe(G(this.destroyRef)).subscribe({next:e=>{this.loading=!1,this.group=e,this.titleService.setTitle(e.name+" "+e.parentName+" - "+Z.PortalSettings.portalTitle),this.addAssetToMachineGroupSideMenu()},error:()=>{this.toastService.error(this.translateService.instant("The asset group could not be loaded!"))}})}loadMachines(){this.adminMachineService.getAllMachines().pipe(G(this.destroyRef)).subscribe({next:t=>{this.assets=t,this.assetsOfGroup=this.filterAssetsOfGroup(t)},error:()=>{this.toastService.error(this.translateService.instant("There is an error in getting the list of assets"))}})}
1addAssetToMachineGroupSideMenu(){if(!this.group)return;let e=this.sideMenuService.getMachineGroupItem(this.group.id);e&&this.sideMenuService.updateAssets(this.group,e,this.assets)}filterAssetsOfGroup(e){let t=[];if(!this.group)return t;for(let n of e)for(let s of this.group.assetIds)s===n.id&&t.push(n);return t}static{this.\u0275fac=function(t){return new(t||i)}}static{this.\u0275cmp=T({type:i,selectors:[["app-machine-group-config"]],decls:17,vars:5,consts:[["nav","ngbNav"],[1,"container-fluid"],[3,"title","name"],[1,"row"],[1,"col-lg-3"],["ngbNav","","orientation","vertical",1,"nav-pills",3,"activeIdChange","activeId"],["ngbNavItem","machines"],["ngbNavLink","","translate",""],["ngbNavContent",""],["ngbNavItem","users"],["ngbNavItem","groups"],[1,"col-lg-9",3,"ngbNavOutlet"],[3,"loadGroup","group","currentUser","assets","assetsOfGroup"],[3,"group"],[3,"assets","group"]],template:function(t,n){if(t&1){let s=x();o(0,"div",1),h(1,Re,1,0,"ab-loading-spinner"),h(2,ke,1,2,"app-config-page-header",2),o(3,"div",3)(4,"div",4)(5,"ul",5,0),X("activeIdChange",function($){return u(s),K(n.active,$)||(n.active=$),d($)}),o(7,"li",6)(8,"a",7),l(9,"Assets"),r(),B(10,Be,1,4,"ng-template",8),r(),h(11,Qe,4,0,"li",9),o(12,"li",10)(13,"a",7),l(14,"Groups"),r(),B(15,Pe,1,2,"ng-template",8),r()()(),S(16,"div",11),r()()}if(t&2){let s=W(6);a(),f(n.group?-1:1),a(),f(n.group?2:-1),a(3),J("activeId",n.active),a(6),f(n.currentUser!=null&&n.currentUser.hasAdminRole()?11:-1),a(5),_("ngbNavOutlet",s)}},dependencies:[I,w,me,ve,ce,ie,re,oe,ne,ae,se,pe,ge,Ce,be],encapsulation:2})}}return i})();export{Ht as MachineGroupConfigComponent};
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.