diff --git a/dist/3307.3a433ce7022284ff.js b/dist/3307.3a433ce7022284ff.js new file mode 100644 index 00000000..8c44e5a1 --- /dev/null +++ b/dist/3307.3a433ce7022284ff.js @@ -0,0 +1 @@ +"use strict";(self.webpackChunkdf_admin_interface=self.webpackChunkdf_admin_interface||[]).push([[3307],{63307:(j,I,r)=>{r.r(I),r.d(I,{DfAppDetailsComponent:()=>O});var i=r(18724),F=r(21406),l=r(78227),u=r(11863),m=r(75066),E=r(91900),v=r(58001),C=r(54342),R=r(68660),p=r(93138),b=r(60368),c=r(42250),_=r(33492),f=r(18331),$=r(453),h=r(54688),A=r(94093),G=r(31147),k=r(98337),x=r(97828),U=r(43015),D=r(52483),L=r(73151),y=r(80972),T=r(56579),B=r(51407),Y=r(15629),M=r(66460),S=r(16994),t=r(1843),K=r(16396),N=r(19206),W=r(10056);r(69099);const w=["rolesInput"];function X(n,a){1&n&&(t.j41(0,"mat-error"),t.EFF(1),t.nI1(2,"transloco"),t.k0s()),2&n&&(t.R7$(1),t.SpI(" ",t.bMT(2,1,"apps.createApp.applicationName.error")," "))}function J(n,a){if(1&n&&(t.j41(0,"mat-error"),t.EFF(1),t.nI1(2,"transloco"),t.k0s()),2&n){const e=t.XpG();t.R7$(1),t.SpI(" ",t.bMT(2,1,e.appForm.controls.name.getError("server"))," ")}}function V(n,a){if(1&n&&(t.j41(0,"mat-option",39),t.EFF(1),t.k0s()),2&n){const e=a.$implicit;t.Y8G("value",e),t.R7$(1),t.SpI(" ",e.name," ")}}function z(n,a){if(1&n&&(t.j41(0,"mat-error"),t.EFF(1),t.nI1(2,"transloco"),t.k0s()),2&n){const e=t.XpG();t.R7$(1),t.SpI(" ",t.bMT(2,1,e.appForm.controls.defaultRole.getError("server"))," ")}}function H(n,a){if(1&n&&(t.j41(0,"mat-error"),t.EFF(1),t.nI1(2,"transloco"),t.k0s()),2&n){const e=t.XpG();t.R7$(1),t.SpI(" ",t.bMT(2,1,e.appForm.controls.description.getError("server"))," ")}}const Q=function(){return{"word-break":"break-all"}};function Z(n,a){if(1&n){const e=t.RV6();t.j41(0,"mat-card",40)(1,"mat-card-header")(2,"mat-card-subtitle"),t.EFF(3),t.nI1(4,"transloco"),t.k0s()(),t.j41(5,"mat-card-content"),t.EFF(6),t.k0s(),t.j41(7,"mat-card-actions")(8,"button",41),t.bIt("click",function(){t.eBV(e);const s=t.XpG();return t.Njj(s.copyApiKey())}),t.nrm(9,"fa-icon",42),t.EFF(10),t.nI1(11,"transloco"),t.k0s(),t.j41(12,"button",43),t.bIt("click",function(){t.eBV(e);const s=t.XpG();return t.Njj(s.refreshApiKey())}),t.nrm(13,"fa-icon",42),t.EFF(14),t.nI1(15,"transloco"),t.k0s()()()}if(2&n){const e=t.XpG();t.Aen(t.lJ4(15,Q)),t.R7$(3),t.JRh(t.bMT(4,9,"apps.createApp.apiKey.label")),t.R7$(3),t.SpI(" ",e.editApp.apiKey," "),t.R7$(3),t.Y8G("icon",e.faCopy),t.R7$(1),t.SpI(" ",t.bMT(11,11,"apps.createApp.apiKey.copy")," "),t.R7$(2),t.Y8G("disabled",e.disableKeyRefresh),t.R7$(1),t.Y8G("icon",e.faRefresh),t.R7$(1),t.SpI(" ",t.bMT(15,13,"apps.createApp.apiKey.refresh")," ")}}function q(n,a){if(1&n&&(t.j41(0,"mat-form-field",47)(1,"mat-label"),t.EFF(2),t.nI1(3,"transloco"),t.k0s(),t.j41(4,"mat-select",48)(5,"mat-option",39),t.EFF(6),t.nI1(7,"transloco"),t.k0s(),t.j41(8,"mat-option",39),t.EFF(9),t.nI1(10,"transloco"),t.k0s()(),t.nrm(11,"fa-icon",4),t.nI1(12,"transloco"),t.k0s()),2&n){const e=t.XpG(2);t.R7$(2),t.JRh(t.bMT(3,7,"apps.createApp.appLocation.options.fileStorage.storageService.label")),t.R7$(3),t.Y8G("value",3),t.R7$(1),t.SpI(" ",t.bMT(7,9,"apps.createApp.appLocation.options.fileStorage.storageService.options.file")," "),t.R7$(2),t.Y8G("value",4),t.R7$(1),t.SpI(" ",t.bMT(10,11,"apps.createApp.appLocation.options.fileStorage.storageService.options.log")," "),t.R7$(2),t.Y8G("icon",e.faCircleInfo)("matTooltip",t.bMT(12,13,"apps.createApp.appLocation.options.fileStorage.storageService.tooltip"))}}function tt(n,a){if(1&n&&(t.j41(0,"mat-error"),t.EFF(1),t.nI1(2,"transloco"),t.k0s()),2&n){const e=t.XpG(3);t.R7$(1),t.SpI(" ",t.bMT(2,1,e.appForm.controls.storageContainer.getError("server"))," ")}}function et(n,a){if(1&n&&(t.j41(0,"mat-form-field",47)(1,"mat-label"),t.EFF(2),t.nI1(3,"transloco"),t.k0s(),t.nrm(4,"input",49),t.nI1(5,"transloco"),t.DNE(6,tt,3,3,"mat-error",5),t.nrm(7,"fa-icon",4),t.nI1(8,"transloco"),t.k0s()),2&n){const e=t.XpG(2);t.R7$(2),t.JRh(t.bMT(3,5,"apps.createApp.appLocation.options.fileStorage.storageFolder.label")),t.R7$(2),t.FS9("placeholder",t.bMT(5,7,"apps.createApp.appLocation.options.fileStorage.storageFolder.placeholder")),t.R7$(2),t.Y8G("ngIf",e.appForm.controls.storageContainer.hasError("server")),t.R7$(1),t.Y8G("icon",e.faCircleInfo)("matTooltip",t.bMT(8,9,"apps.createApp.appLocation.options.fileStorage.storageFolder.tooltip"))}}function nt(n,a){1&n&&(t.j41(0,"mat-label"),t.EFF(1),t.nI1(2,"transloco"),t.k0s()),2&n&&(t.R7$(1),t.SpI(" ",t.bMT(2,1,"apps.createApp.appLocation.options.fileStorage.launchPath.label")," "))}function at(n,a){1&n&&(t.j41(0,"mat-label"),t.EFF(1),t.nI1(2,"transloco"),t.k0s()),2&n&&(t.R7$(1),t.SpI(" ",t.bMT(2,1,"apps.createApp.appLocation.options.webServer.pathToApp.label")," "))}function ot(n,a){if(1&n&&(t.j41(0,"mat-error"),t.EFF(1),t.nI1(2,"transloco"),t.k0s()),2&n){const e=t.XpG(3);t.R7$(1),t.SpI(" ",t.bMT(2,1,e.appForm.controls.path.getError("server"))," ")}}function rt(n,a){if(1&n&&(t.j41(0,"mat-form-field",47),t.DNE(1,nt,3,3,"mat-label",5),t.DNE(2,at,3,3,"mat-label",5),t.nrm(3,"input",50),t.nI1(4,"transloco"),t.DNE(5,ot,3,3,"mat-error",5),t.nrm(6,"fa-icon",4),t.nI1(7,"transloco"),t.k0s()),2&n){const e=t.XpG(2);t.R7$(1),t.Y8G("ngIf","1"===e.appForm.controls.appLocation.value),t.R7$(1),t.Y8G("ngIf","3"===e.appForm.controls.appLocation.value),t.R7$(1),t.FS9("placeholder",t.bMT(4,6,"apps.createApp.appLocation.options.fileStorage.launchPath.placeholder")),t.R7$(2),t.Y8G("ngIf",e.appForm.controls.path.hasError("server")),t.R7$(1),t.Y8G("icon",e.faCircleInfo)("matTooltip",t.bMT(7,8,"apps.createApp.appLocation.options."+("1"===e.appForm.controls.appLocation.value?"fileStorage.launchPath":"webServer.pathToApp")+".tooltip"))}}function it(n,a){if(1&n&&(t.j41(0,"mat-error"),t.EFF(1),t.nI1(2,"transloco"),t.k0s()),2&n){const e=t.XpG(3);t.R7$(1),t.SpI(" ",t.bMT(2,1,e.appForm.controls.url.getError("server"))," ")}}function st(n,a){if(1&n&&(t.j41(0,"mat-form-field",47)(1,"mat-label"),t.EFF(2),t.nI1(3,"transloco"),t.k0s(),t.nrm(4,"input",51),t.nI1(5,"transloco"),t.DNE(6,it,3,3,"mat-error",5),t.nrm(7,"fa-icon",4),t.nI1(8,"transloco"),t.k0s()),2&n){const e=t.XpG(2);t.R7$(2),t.SpI(" ",t.bMT(3,5,"apps.createApp.appLocation.options.remoteUrl.label")," "),t.R7$(2),t.FS9("placeholder",t.bMT(5,7,"apps.createApp.appLocation.options.fileStorage.launchPath.placeholder")),t.R7$(2),t.Y8G("ngIf",e.appForm.controls.url.hasError("server")),t.R7$(1),t.Y8G("icon",e.faCircleInfo)("matTooltip",t.bMT(8,9,"apps.createApp.appLocation.options.remoteUrl.url.tooltip"))}}function pt(n,a){if(1&n){const e=t.RV6();t.j41(0,"mat-card",52)(1,"mat-card-header")(2,"mat-card-subtitle"),t.EFF(3),t.nI1(4,"transloco"),t.k0s()(),t.j41(5,"mat-card-content"),t.EFF(6),t.k0s(),t.j41(7,"mat-card-actions")(8,"button",53),t.bIt("click",function(){t.eBV(e);const s=t.XpG(2);return t.Njj(s.copyAppUrl())}),t.nrm(9,"fa-icon",54),t.EFF(10),t.nI1(11,"transloco"),t.k0s()()()}if(2&n){const e=t.XpG(2);t.R7$(3),t.JRh(t.bMT(4,4,"apps.createApp.appLocation.options.urlPath.label")),t.R7$(3),t.SpI(" ",e.getAppLocationUrl()," "),t.R7$(3),t.Y8G("icon",e.faCopy),t.R7$(1),t.SpI(" ",t.bMT(11,6,"apps.createApp.appLocation.options.urlPath.copy")," ")}}function lt(n,a){if(1&n&&(t.j41(0,"div",44),t.DNE(1,q,13,15,"mat-form-field",45),t.DNE(2,et,9,11,"mat-form-field",45),t.DNE(3,rt,8,10,"mat-form-field",45),t.DNE(4,st,9,11,"mat-form-field",45),t.DNE(5,pt,12,8,"mat-card",46),t.k0s()),2&n){const e=t.XpG();t.R7$(1),t.Y8G("ngIf","1"===e.appForm.controls.appLocation.value),t.R7$(1),t.Y8G("ngIf","1"===e.appForm.controls.appLocation.value),t.R7$(1),t.Y8G("ngIf","1"===e.appForm.controls.appLocation.value||"3"===e.appForm.controls.appLocation.value),t.R7$(1),t.Y8G("ngIf","2"===e.appForm.controls.appLocation.value),t.R7$(1),t.Y8G("ngIf","1"===e.appForm.controls.appLocation.value||"3"===e.appForm.controls.appLocation.value)}}function ct(n,a){if(1&n&&(t.j41(0,"span",55),t.EFF(1),t.nI1(2,"transloco"),t.k0s()),2&n){const e=t.XpG();t.R7$(1),t.SpI(" ",t.i5U(2,1,"apps.metering.reachCount",e.reachSummary)," ")}}const mt=function(n){return{role:n}};function _t(n,a){if(1&n&&(t.j41(0,"p",56),t.EFF(1),t.nI1(2,"transloco"),t.k0s()),2&n){const e=t.XpG();t.R7$(1),t.SpI(" ",t.i5U(2,1,"apps.metering.reachHintRole",t.eq3(4,mt,null==e.appForm.value.defaultRole?null:e.appForm.value.defaultRole.name))," ")}}function dt(n,a){1&n&&(t.j41(0,"p",56),t.EFF(1),t.nI1(2,"transloco"),t.k0s()),2&n&&(t.R7$(1),t.SpI(" ",t.bMT(2,1,"apps.metering.reachHintPending")," "))}const ft=function(n){return{period:n}};function gt(n,a){if(1&n&&(t.j41(0,"div",58)(1,"div",59)(2,"span",60),t.EFF(3),t.k0s(),t.j41(4,"span",61),t.EFF(5),t.nI1(6,"transloco"),t.k0s()(),t.j41(7,"div",62),t.nrm(8,"div",63),t.k0s()()),2&n){const e=a.$implicit;t.HbH("df-meter--"+e.variant),t.R7$(3),t.JRh(e.name),t.R7$(2),t.Lme("",e.label," ",t.i5U(6,7,"apps.metering.perPeriod",t.eq3(10,ft,e.period)),""),t.R7$(3),t.xc7("width",100*e.ratio,"%")}}function ut(n,a){if(1&n&&(t.qex(0),t.DNE(1,gt,9,12,"div",57),t.bVm()),2&n){const e=t.XpG();t.R7$(1),t.Y8G("ngForOf",e.roleLimits)}}function ht(n,a){1&n&&(t.j41(0,"p",56),t.EFF(1),t.nI1(2,"transloco"),t.k0s()),2&n&&(t.R7$(1),t.SpI(" ",t.bMT(2,1,"apps.metering.limitsEmpty")," "))}function vt(n,a){if(1&n&&(t.j41(0,"div",66)(1,"div",67)(2,"span",68),t.EFF(3),t.nI1(4,"number"),t.k0s(),t.j41(5,"span",69),t.EFF(6),t.nI1(7,"transloco"),t.k0s()(),t.j41(8,"div",67)(9,"span",68),t.EFF(10),t.nI1(11,"currency"),t.k0s(),t.j41(12,"span",69),t.EFF(13),t.nI1(14,"transloco"),t.k0s()(),t.j41(15,"div",67)(16,"span",68),t.EFF(17),t.nI1(18,"number"),t.k0s(),t.j41(19,"span",69),t.EFF(20),t.nI1(21,"transloco"),t.k0s()()()),2&n){const e=t.XpG(2);t.R7$(3),t.JRh(t.bMT(4,6,e.keyUsage.tokens)),t.R7$(3),t.JRh(t.bMT(7,8,"apps.metering.tokensLabel")),t.R7$(4),t.JRh(t.ii3(11,10,e.keyUsage.spend,"USD","symbol","1.2-2")),t.R7$(3),t.JRh(t.bMT(14,15,"apps.metering.spendLabel")),t.R7$(4),t.JRh(t.bMT(18,17,e.keyUsage.requests)),t.R7$(3),t.JRh(t.bMT(21,19,"apps.metering.requestsLabel"))}}function Mt(n,a){1&n&&(t.j41(0,"p",56),t.EFF(1),t.nI1(2,"transloco"),t.k0s()),2&n&&(t.R7$(1),t.SpI(" ",t.bMT(2,1,"apps.metering.usageEmpty")," "))}function It(n,a){if(1&n&&(t.j41(0,"div",24)(1,"h3"),t.EFF(2),t.nI1(3,"transloco"),t.k0s(),t.DNE(4,vt,22,21,"div",64),t.DNE(5,Mt,3,3,"ng-template",null,65,t.C5r),t.k0s()),2&n){const e=t.sdS(6),o=t.XpG();t.R7$(2),t.JRh(t.bMT(3,3,"apps.metering.usageTitle")),t.R7$(2),t.Y8G("ngIf",o.keyUsage)("ngIfElse",e)}}function Et(n,a){1&n&&(t.j41(0,"span"),t.EFF(1),t.nI1(2,"transloco"),t.k0s()),2&n&&(t.R7$(1),t.JRh(t.bMT(2,1,"save")))}function Ct(n,a){1&n&&(t.j41(0,"span"),t.EFF(1),t.nI1(2,"transloco"),t.k0s()),2&n&&(t.R7$(1),t.JRh(t.bMT(2,1,"create")))}let O=class P{constructor(a,e,o,s,d,g,Rt,bt,Dt){this.fb=a,this.appsService=e,this.limitService=o,this.usageService=s,this.systemConfigDataService=d,this.activatedRoute=g,this.router=Rt,this.themeService=bt,this.snackbarService=Dt,this.roles=[],this.filteredRoles=[],this.trackById=(Tt,Ft)=>Ft.id,this.faCopy=A.jPR,this.faCircleInfo=A.mEO,this.faRefresh=A.Vpu,this.alertMsg="",this.showAlert=!1,this.alertType="error",this.selectedRoleId=null,this.reachOpen=!1,this.reachSummary=null,this.roleLimits=[],this.keyUsage=null,this.limitsRoute=["/",S.b.API_SECURITY,S.b.RATE_LIMITING],this.allLimits=[],this.isDarkMode=this.themeService.darkMode$,this.urlOrigin=window.location.origin,this.appForm=this.fb.group({name:["",l.k0.required],description:[""],defaultRole:[null],active:[!1],appLocation:["0"],storageServiceId:[3],storageContainer:["applications"],path:[""],url:[""]})}ngOnInit(){this.activatedRoute.data.subscribe(({roles:a,appData:e})=>{this.roles=a.resource||[],this.filteredRoles=a.resource||[],this.editApp=e||null}),this.editApp&&(this.snackbarService.setSnackbarLastEle(this.editApp.name,!0),this.appForm.patchValue({name:this.editApp.name,description:this.editApp.description,defaultRole:this.editApp.roleByRoleId,active:this.editApp.isActive,appLocation:`${this.editApp.type}`,storageServiceId:this.editApp.storageServiceId,storageContainer:this.editApp.storageContainer,path:this.editApp.path,url:this.editApp.url})),this.appForm.controls.appLocation.valueChanges.subscribe(a=>{const e=this.appForm.get("path"),o=this.appForm.get("url");"2"===a?(e?.clearValidators(),o?.setValidators([l.k0.required])):"3"===a&&(e?.setValidators([l.k0.required]),o?.clearValidators()),e?.updateValueAndValidity(),o?.updateValueAndValidity()}),this.appForm.controls.storageServiceId.updateValueAndValidity(),this.selectedRoleId=this.editApp?.roleId??null,this.appForm.controls.defaultRole.valueChanges.subscribe(a=>{this.selectedRoleId=a?.id??null,this.recomputeRoleLimits()}),this.loadMetering()}loadMetering(){if(this.limitService.getAll({limit:0,related:"limit_cache_by_limit_id"}).pipe((0,D.W)(()=>(0,L.of)({resource:[],meta:{count:0}}))).subscribe(a=>{this.allLimits=a.resource??[],this.recomputeRoleLimits()}),null!=this.editApp?.id){const a=this.editApp.id;this.usageService.loadAll("30d").pipe((0,D.W)(()=>(0,L.of)(null))).subscribe(e=>{const o=e?.raw.by_app?.find(s=>s.app_id===a);this.keyUsage=o?{tokens:(0,M.n)(o.input_tokens)+(0,M.n)(o.output_tokens),spend:(0,M.n)(o.cost_usd),requests:(0,M.n)(o.requests)}:null})}}recomputeRoleLimits(){const a=this.selectedRoleId;this.roleLimits=null!=a?this.allLimits.filter(e=>e.isActive&&e.roleId===a).map(e=>this.toMeter(e)).filter(e=>null!==e):[]}toMeter(a){const e=a.limitCacheByLimitId?.[0],o=e?.max??a.rate;if(!o||o<=0)return null;const s=e?.attempts??0,d=Math.max(0,Math.min(1,s/o));let g="ok";return d>=.9?g="danger":d>=.75&&(g="warning"),{name:a.name,consumed:s,cap:o,ratio:d,period:a.period,variant:g,label:`${s} / ${o}`}}filter(){const a=this.rolesInput.nativeElement.value.toLowerCase();this.filteredRoles=this.roles.filter(e=>e.name.toLowerCase().includes(a))}displayFn(a){return a&&a.name?a.name:""}getAppLocationUrl(){return`${this.urlOrigin}/\n ${"1"===this.appForm.value.appLocation&&3===this.appForm.value.storageServiceId?"file/":""}\n ${"1"===this.appForm.value.appLocation&&4===this.appForm.value.storageServiceId?"log/":""}\n ${"1"===this.appForm.value.appLocation?this.appForm.value.storageContainer+"/":""}\n ${this.appForm.value.path}`.replaceAll(/\s/g,"")}copyApiKey(){navigator.clipboard.writeText(this.editApp.apiKey).then().catch(a=>console.error(a))}copyAppUrl(){const a=this.getAppLocationUrl();navigator.clipboard.writeText(a).then().catch(e=>console.error(e))}triggerAlert(a,e){this.alertType=a,this.alertMsg=e,this.showAlert=!0}goBack(){this.router.navigate(["../"],{relativeTo:this.activatedRoute})}save(){if(this.appForm.invalid)return;const a={name:this.appForm.value.name,description:this.appForm.value.description,type:this.appForm.value.appLocation,role_id:this.appForm.value.defaultRole?this.appForm.value.defaultRole.id:null,is_active:this.appForm.value.active,url:"2"===this.appForm.value.appLocation?this.appForm.value.url:null,storage_service_id:"1"===this.appForm.value.appLocation?this.appForm.value.storageServiceId:null,storage_container:"1"===this.appForm.value.appLocation?this.appForm.value.storageContainer:null,path:"1"===this.appForm.value.appLocation||"3"===this.appForm.value.appLocation?this.appForm.value.path:null};this.editApp?this.appsService.update(this.editApp.id,a,{snackbarSuccess:"apps.updateSuccess"}).pipe((0,D.W)(e=>{const o=(0,T.cQ)(e);return this.triggerAlert("error",o.message),(0,y.$)(()=>o)})).subscribe(()=>{this.goBack()}):this.appsService.create({resource:[a]},{snackbarSuccess:"apps.createSuccess",fields:"*",related:"role_by_role_id"}).pipe((0,D.W)(e=>{const o=(0,T.cQ)(e),s=(0,T.aI)(this.appForm,o);return this.triggerAlert("error",s.length?s.join(" "):o.message),(0,y.$)(()=>o)})).subscribe(()=>{this.goBack()})}get disableKeyRefresh(){return null===this.editApp.createdById}refreshApiKey(){var a=this;return(0,i.A)(function*(){const e=yield(0,U.X)(a.systemConfigDataService.environment.server.host,a.appForm.getRawValue().name);a.appsService.update(a.editApp.id,{apiKey:e}).subscribe(()=>a.editApp.apiKey=e)})()}static{this.\u0275fac=function(e){return new(e||P)(t.rXU(l.ok),t.rXU(m.u7),t.rXU(m.gu),t.rXU(M.D_),t.rXU(K.f),t.rXU(u.nX),t.rXU(u.Ix),t.rXU(N.n),t.rXU(W.L))}}static{this.\u0275cmp=t.VBU({type:P,selectors:[["df-app-details"]],viewQuery:function(e,o){if(1&e&&t.GBs(w,5),2&e){let s;t.mGM(s=t.lsd())&&(o.rolesInput=s.first)}},standalone:!0,features:[t.aNF],decls:103,vars:101,consts:[[3,"showAlert","alertType","alertClosed"],[1,"details-section",3,"formGroup","ngSubmit"],["subscriptSizing","dynamic","appearance","outline",1,"dynamic-width"],["matInput","","formControlName","name","required","",3,"placeholder"],["matSuffix","",1,"tool-tip-trigger",3,"icon","matTooltip"],[4,"ngIf"],["type","text","placeholder","Pick one","matInput","","formControlName","defaultRole",3,"matAutocomplete","input","focus"],["rolesInput",""],["requireSelection","",3,"displayWith"],["auto","matAutocomplete"],[3,"value",4,"ngFor","ngForOf","ngForTrackBy"],["subscriptSizing","dynamic","appearance","outline",1,"full-width"],["rows","1","matInput","","formControlName","description",3,"placeholder"],["formControlName","active","color","primary",1,"full-width"],["class","full-width api-card",3,"style",4,"ngIf"],[1,"flex-col","full-width"],["aria-label","Select an option","formControlName","appLocation",1,"flex-col"],["value","0"],["value","1"],["value","3"],["value","2"],["class","full-width",4,"ngIf"],[1,"metering","full-width"],[1,"metering-head"],[1,"metering-block"],[1,"metering-block-head"],["class","metering-count",4,"ngIf"],["mat-button","","type","button","aria-controls","metering-reach",1,"metering-toggle",3,"click"],["class","metering-hint",4,"ngIf","ngIfElse"],["noRoleHint",""],["id","metering-reach",1,"metering-reach",3,"hidden"],[3,"roleId","loaded"],[4,"ngIf","ngIfElse"],["noLimits",""],[1,"metering-link",3,"routerLink"],["class","metering-block",4,"ngIf"],[1,"full-width","action-bar"],["mat-flat-button","","type","button",1,"cancel-btn",3,"click"],["mat-flat-button","","color","primary",1,"save-btn"],[3,"value"],[1,"full-width","api-card"],["mat-button","","type","button",1,"copy-btn",3,"click"],[3,"icon"],["mat-button","","type","button",1,"refresh-btn",3,"disabled","click"],[1,"full-width"],["appearance","outline",4,"ngIf"],["class","location-card",4,"ngIf"],["appearance","outline"],["formControlName","storageServiceId","name","defaultRole"],["matInput","","formControlName","storageContainer",3,"placeholder"],["matInput","","formControlName","path",3,"placeholder"],["matInput","","formControlName","url",3,"placeholder"],[1,"location-card"],["mat-button","","type","button",3,"click"],[1,"copy-icon",3,"icon"],[1,"metering-count"],[1,"metering-hint"],["class","metering-limit",3,"class",4,"ngFor","ngForOf"],[1,"metering-limit"],[1,"metering-limit-head"],[1,"metering-limit-name"],[1,"metering-limit-rate","df-numeric"],[1,"df-meter-track"],[1,"df-meter-fill"],["class","metering-stats",4,"ngIf","ngIfElse"],["noUsage",""],[1,"metering-stats"],[1,"metering-stat"],[1,"metering-stat-value","df-numeric"],[1,"metering-stat-label"]],template:function(e,o){if(1&e&&(t.j41(0,"div")(1,"df-alert",0),t.bIt("alertClosed",function(){return o.showAlert=!1}),t.EFF(2),t.nI1(3,"transloco"),t.k0s(),t.j41(4,"form",1),t.bIt("ngSubmit",function(){return o.save()}),t.j41(5,"mat-form-field",2)(6,"mat-label"),t.EFF(7),t.nI1(8,"transloco"),t.k0s(),t.nrm(9,"input",3),t.nI1(10,"transloco"),t.nrm(11,"fa-icon",4),t.nI1(12,"transloco"),t.DNE(13,X,3,3,"mat-error",5),t.DNE(14,J,3,3,"mat-error",5),t.k0s(),t.j41(15,"mat-form-field",2)(16,"mat-label"),t.EFF(17),t.nI1(18,"transloco"),t.k0s(),t.j41(19,"input",6,7),t.bIt("input",function(){return o.filter()})("focus",function(){return o.filter()}),t.k0s(),t.nrm(21,"fa-icon",4),t.nI1(22,"transloco"),t.j41(23,"mat-autocomplete",8,9),t.DNE(25,V,2,2,"mat-option",10),t.k0s(),t.DNE(26,z,3,3,"mat-error",5),t.j41(27,"mat-hint"),t.EFF(28),t.nI1(29,"transloco"),t.k0s()(),t.j41(30,"mat-form-field",11)(31,"mat-label"),t.EFF(32),t.nI1(33,"transloco"),t.k0s(),t.nrm(34,"textarea",12),t.nI1(35,"transloco"),t.DNE(36,H,3,3,"mat-error",5),t.nrm(37,"fa-icon",4),t.nI1(38,"transloco"),t.k0s(),t.j41(39,"mat-slide-toggle",13),t.EFF(40),t.nI1(41,"transloco"),t.k0s(),t.DNE(42,Z,16,16,"mat-card",14),t.j41(43,"div",15)(44,"p"),t.EFF(45),t.nI1(46,"transloco"),t.nrm(47,"fa-icon",4),t.nI1(48,"transloco"),t.k0s(),t.j41(49,"mat-radio-group",16)(50,"mat-radio-button",17),t.EFF(51),t.nI1(52,"transloco"),t.k0s(),t.j41(53,"mat-radio-button",18),t.EFF(54),t.nI1(55,"transloco"),t.k0s(),t.j41(56,"mat-radio-button",19),t.EFF(57),t.nI1(58,"transloco"),t.k0s(),t.j41(59,"mat-radio-button",20),t.EFF(60),t.nI1(61,"transloco"),t.k0s()()(),t.DNE(62,lt,6,5,"div",21),t.j41(63,"section",22)(64,"header",23)(65,"h2"),t.EFF(66),t.nI1(67,"transloco"),t.k0s(),t.j41(68,"p"),t.EFF(69),t.nI1(70,"transloco"),t.k0s()(),t.j41(71,"div",24)(72,"div",25)(73,"h3"),t.EFF(74),t.nI1(75,"transloco"),t.k0s(),t.DNE(76,ct,3,4,"span",26),t.j41(77,"button",27),t.bIt("click",function(){return o.reachOpen=!o.reachOpen}),t.EFF(78),t.nI1(79,"transloco"),t.k0s()(),t.DNE(80,_t,3,6,"p",28),t.DNE(81,dt,3,3,"ng-template",null,29,t.C5r),t.j41(83,"div",30)(84,"df-scope-map",31),t.bIt("loaded",function(d){return o.reachSummary=d}),t.k0s()()(),t.j41(85,"div",24)(86,"h3"),t.EFF(87),t.nI1(88,"transloco"),t.k0s(),t.DNE(89,ut,2,1,"ng-container",32),t.DNE(90,ht,3,3,"ng-template",null,33,t.C5r),t.j41(92,"a",34),t.EFF(93),t.nI1(94,"transloco"),t.k0s()(),t.DNE(95,It,7,5,"div",35),t.k0s(),t.j41(96,"div",36)(97,"button",37),t.bIt("click",function(){return o.goBack()}),t.EFF(98),t.nI1(99,"transloco"),t.k0s(),t.j41(100,"button",38),t.DNE(101,Et,3,3,"span",5),t.DNE(102,Ct,3,3,"span",5),t.k0s()()()()),2&e){const s=t.sdS(24),d=t.sdS(82),g=t.sdS(91);t.R7$(1),t.Y8G("showAlert",o.showAlert)("alertType",o.alertType),t.R7$(1),t.SpI(" ",t.bMT(3,53,o.alertMsg)," "),t.R7$(2),t.Y8G("formGroup",o.appForm),t.R7$(3),t.SpI(" ",t.bMT(8,55,"apps.createApp.applicationName.label")," "),t.R7$(2),t.FS9("placeholder",t.bMT(10,57,"apps.createApp.applicationName.label")),t.R7$(2),t.Y8G("icon",o.faCircleInfo)("matTooltip",t.bMT(12,59,"apps.createApp.applicationName.tooltip")),t.R7$(2),t.Y8G("ngIf",o.appForm.controls.name.hasError("required")),t.R7$(1),t.Y8G("ngIf",o.appForm.controls.name.hasError("server")),t.R7$(3),t.JRh(t.bMT(18,61,"apps.createApp.defaultRole.label")),t.R7$(2),t.Y8G("matAutocomplete",s),t.R7$(2),t.Y8G("icon",o.faCircleInfo)("matTooltip",t.bMT(22,63,"apps.createApp.defaultRole.tooltip")),t.R7$(2),t.Y8G("displayWith",o.displayFn),t.R7$(2),t.Y8G("ngForOf",o.filteredRoles)("ngForTrackBy",o.trackById),t.R7$(1),t.Y8G("ngIf",o.appForm.controls.defaultRole.hasError("server")),t.R7$(2),t.JRh(t.bMT(29,65,"apps.createApp.defaultRole.hint")),t.R7$(4),t.JRh(t.bMT(33,67,"apps.createApp.description.label")),t.R7$(2),t.FS9("placeholder",t.bMT(35,69,"apps.createApp.description.label")),t.R7$(2),t.Y8G("ngIf",o.appForm.controls.description.hasError("server")),t.R7$(1),t.Y8G("icon",o.faCircleInfo)("matTooltip",t.bMT(38,71,"apps.createApp.description.tooltip")),t.R7$(3),t.JRh(t.bMT(41,73,"apps.createApp.active")),t.R7$(2),t.Y8G("ngIf",o.editApp),t.R7$(3),t.SpI(" ",t.bMT(46,75,"apps.createApp.appLocation.label"),""),t.R7$(2),t.Y8G("icon",o.faCircleInfo)("matTooltip",t.bMT(48,77,"apps.createApp.appLocation.tooltip")),t.R7$(4),t.JRh(t.bMT(52,79,"apps.createApp.appLocation.options.noStorage")),t.R7$(3),t.JRh(t.bMT(55,81,"apps.createApp.appLocation.options.fileStorage.label")),t.R7$(3),t.JRh(t.bMT(58,83,"apps.createApp.appLocation.options.webServer.label")),t.R7$(3),t.JRh(t.bMT(61,85,"apps.createApp.appLocation.options.remoteUrl.label")),t.R7$(2),t.Y8G("ngIf","1"===o.appForm.controls.appLocation.value||"2"===o.appForm.controls.appLocation.value||"3"===o.appForm.controls.appLocation.value),t.R7$(4),t.JRh(t.bMT(67,87,"apps.metering.title")),t.R7$(3),t.JRh(t.bMT(70,89,"apps.metering.subtitle")),t.R7$(5),t.JRh(t.bMT(75,91,"apps.metering.reachTitle")),t.R7$(2),t.Y8G("ngIf",o.reachSummary),t.R7$(1),t.BMQ("aria-expanded",o.reachOpen),t.R7$(1),t.SpI(" ",t.bMT(79,93,o.reachOpen?"apps.metering.reachHide":"apps.metering.reachShow")," "),t.R7$(2),t.Y8G("ngIf",null!==o.selectedRoleId)("ngIfElse",d),t.R7$(3),t.Y8G("hidden",!o.reachOpen),t.R7$(1),t.Y8G("roleId",o.selectedRoleId),t.R7$(3),t.JRh(t.bMT(88,95,"apps.metering.limitsTitle")),t.R7$(2),t.Y8G("ngIf",o.roleLimits.length)("ngIfElse",g),t.R7$(3),t.Y8G("routerLink",o.limitsRoute),t.R7$(1),t.SpI(" ",t.bMT(94,97,"apps.metering.limitsManage")," "),t.R7$(2),t.Y8G("ngIf",o.editApp),t.R7$(3),t.SpI(" ",t.bMT(99,99,"cancel")," "),t.R7$(3),t.Y8G("ngIf",o.editApp),t.R7$(1),t.Y8G("ngIf",!o.editApp)}},dependencies:[l.X1,l.qT,l.me,l.BC,l.cb,l.YS,l.j4,l.JD,h.RG,h.rl,h.nJ,h.MV,h.TL,h.yw,$.fS,$.fg,f.bT,_.jL,_.$3,c.wT,_.pN,f.pM,c.Sy,b.mV,b.sG,p.Hu,p.RN,p.YY,p.m2,p.MM,p.Lc,R.Hl,R.$z,C.dX,C.aY,v.Wk,v.VT,v._g,E.Ve,E.VO,G.Kj,k.uc,k.oV,B.W,Y.A,f.QX,f.oe,u.Wk],styles:["mat-card[_ngcontent-%COMP%]{word-wrap:break-word}.api-card[_ngcontent-%COMP%], .location-card[_ngcontent-%COMP%]{background-color:var(--df-surface-2);border:1px solid var(--df-border-2);border-radius:var(--df-radius);box-shadow:none}.api-card[_ngcontent-%COMP%] mat-card-subtitle[_ngcontent-%COMP%], .location-card[_ngcontent-%COMP%] mat-card-subtitle[_ngcontent-%COMP%]{font-size:11px;font-weight:600;text-transform:uppercase;letter-spacing:.06em;color:var(--df-text-muted)}.api-card[_ngcontent-%COMP%] mat-card-content[_ngcontent-%COMP%], .location-card[_ngcontent-%COMP%] mat-card-content[_ngcontent-%COMP%]{font-family:SFMono-Regular,Menlo,Consolas,monospace;font-size:1.3rem;color:var(--df-text)}.api-card[_ngcontent-%COMP%] mat-card-actions[_ngcontent-%COMP%] button[_ngcontent-%COMP%], .location-card[_ngcontent-%COMP%] mat-card-actions[_ngcontent-%COMP%] button[_ngcontent-%COMP%]{color:var(--df-accent)}.action-bar[_ngcontent-%COMP%]{display:flex;justify-content:flex-end}.metering[_ngcontent-%COMP%]{margin-top:var(--df-space-6);padding-top:var(--df-space-5);border-top:1px solid var(--df-border-2);display:flex;flex-direction:column;gap:var(--df-space-5)}.metering[_ngcontent-%COMP%] .metering-head[_ngcontent-%COMP%] h2[_ngcontent-%COMP%]{margin:0;font-size:1.6rem;font-weight:600;color:var(--df-text)}.metering[_ngcontent-%COMP%] .metering-head[_ngcontent-%COMP%] p[_ngcontent-%COMP%]{margin:var(--df-space-1) 0 0;font-size:1.3rem;color:var(--df-text-muted)}.metering[_ngcontent-%COMP%] .metering-block[_ngcontent-%COMP%]{display:flex;flex-direction:column;gap:var(--df-space-2)}.metering[_ngcontent-%COMP%] .metering-block[_ngcontent-%COMP%] .metering-block-head[_ngcontent-%COMP%]{display:flex;align-items:center;gap:var(--df-space-3)}.metering[_ngcontent-%COMP%] .metering-block[_ngcontent-%COMP%] .metering-block-head[_ngcontent-%COMP%] .metering-count[_ngcontent-%COMP%]{font-size:1.3rem;color:var(--df-text-muted)}.metering[_ngcontent-%COMP%] .metering-block[_ngcontent-%COMP%] .metering-block-head[_ngcontent-%COMP%] .metering-toggle[_ngcontent-%COMP%]{margin-left:auto;min-width:0;font-size:1.3rem}.metering[_ngcontent-%COMP%] .metering-block[_ngcontent-%COMP%] h3[_ngcontent-%COMP%]{margin:0;font-size:1.1rem;font-weight:600;text-transform:uppercase;letter-spacing:.06em;color:var(--df-text-muted)}.metering[_ngcontent-%COMP%] .metering-hint[_ngcontent-%COMP%]{margin:0;font-size:1.3rem;color:var(--df-text-muted)}.metering[_ngcontent-%COMP%] .metering-link[_ngcontent-%COMP%]{align-self:flex-start;font-size:1.3rem;color:var(--df-accent);text-decoration:none}.metering[_ngcontent-%COMP%] .metering-link[_ngcontent-%COMP%]:hover{text-decoration:underline}.metering-limit[_ngcontent-%COMP%]{display:flex;flex-direction:column;gap:var(--df-space-1);padding:var(--df-space-2) 0}.metering-limit[_ngcontent-%COMP%] .metering-limit-head[_ngcontent-%COMP%]{display:flex;justify-content:space-between;gap:var(--df-space-3);font-size:1.3rem}.metering-limit[_ngcontent-%COMP%] .metering-limit-name[_ngcontent-%COMP%]{color:var(--df-text);font-weight:500}.metering-limit[_ngcontent-%COMP%] .metering-limit-rate[_ngcontent-%COMP%]{color:var(--df-text-muted);white-space:nowrap}.df-meter-track[_ngcontent-%COMP%]{position:relative;height:.6rem;border-radius:var(--df-radius-sm);background:var(--df-surface-2);border:1px solid var(--df-border);overflow:hidden}.df-meter-fill[_ngcontent-%COMP%]{height:100%;border-radius:inherit;background:var(--df-accent);transition:width .24s ease}.df-meter--warning[_ngcontent-%COMP%] .df-meter-fill[_ngcontent-%COMP%]{background:var(--df-warning)}.df-meter--warning[_ngcontent-%COMP%] .metering-limit-rate[_ngcontent-%COMP%]{color:var(--df-warning)}.df-meter--danger[_ngcontent-%COMP%] .df-meter-fill[_ngcontent-%COMP%]{background:var(--df-danger)}.df-meter--danger[_ngcontent-%COMP%] .metering-limit-rate[_ngcontent-%COMP%]{color:var(--df-danger)}.metering-stats[_ngcontent-%COMP%]{display:flex;flex-wrap:wrap;gap:var(--df-space-6)}.metering-stat[_ngcontent-%COMP%]{display:flex;flex-direction:column;gap:var(--df-space-1)}.metering-stat[_ngcontent-%COMP%] .metering-stat-value[_ngcontent-%COMP%]{font-size:2rem;font-weight:600;color:var(--df-text)}.metering-stat[_ngcontent-%COMP%] .metering-stat-label[_ngcontent-%COMP%]{font-size:1.1rem;text-transform:uppercase;letter-spacing:.06em;color:var(--df-text-muted)}"]})}};O=(0,F.Cg)([(0,x.d)({checkProperties:!0})],O)},51407:(j,I,r)=>{r.d(I,{W:()=>R});var i=r(1843),F=r(18331),l=r(68660),u=r(54342),m=r(94093);function E(p,b){if(1&p){const c=i.RV6();i.j41(0,"button",5),i.bIt("click",function(){i.eBV(c);const f=i.XpG(2);return i.Njj(f.dismissAlert())}),i.j41(1,"fa-icon",6),i.EFF(2),i.k0s()()}if(2&p){const c=i.XpG(2);i.R7$(1),i.Y8G("icon",c.faXmark),i.R7$(1),i.JRh("alerts.close")}}function v(p,b){if(1&p&&(i.j41(0,"div",1),i.nrm(1,"fa-icon",2),i.j41(2,"span",3),i.SdG(3),i.k0s(),i.DNE(4,E,3,2,"button",4),i.k0s()),2&p){const c=i.XpG();i.HbH(c.alertType),i.R7$(1),i.Y8G("icon",c.icon),i.R7$(3),i.Y8G("ngIf",c.dismissible)}}const C=["*"];let R=(()=>{class p{constructor(){this.alertType="success",this.showAlert=!1,this.dismissible=!0,this.alertClosed=new i.bkB,this.faXmark=m.Jyw}dismissAlert(){this.alertClosed.emit()}get icon(){switch(this.alertType){case"success":return m.SGM;case"error":return m.rfe;case"warning":return m.tUE;default:return m.iW_}}static{this.\u0275fac=function(_){return new(_||p)}}static{this.\u0275cmp=i.VBU({type:p,selectors:[["df-alert"]],inputs:{alertType:"alertType",showAlert:"showAlert",dismissible:"dismissible"},outputs:{alertClosed:"alertClosed"},standalone:!0,features:[i.aNF],ngContentSelectors:C,decls:1,vars:1,consts:[["class","alert-container",3,"class",4,"ngIf"],[1,"alert-container"],["aria-hidden","true",1,"alert-icon",3,"icon"],["role","alert",1,"alert-message"],["mat-icon-button","","class","dismiss-alert",3,"click",4,"ngIf"],["mat-icon-button","",1,"dismiss-alert",3,"click"],[3,"icon"]],template:function(_,f){1&_&&(i.NAR(),i.DNE(0,v,5,4,"div",0)),2&_&&i.Y8G("ngIf",f.showAlert)},dependencies:[F.bT,l.Hl,l.iY,u.dX,u.aY],styles:[".alert-container[_ngcontent-%COMP%]{display:flex;flex-direction:row;align-items:center;justify-content:space-between;background-color:var(--df-surface);color:var(--df-text);border:1px solid var(--df-border);border-radius:var(--df-radius-sm);font-size:1.4rem}.alert-container[_ngcontent-%COMP%] .alert-message[_ngcontent-%COMP%]{flex:1;padding:8px}.alert-container[_ngcontent-%COMP%] .alert-icon[_ngcontent-%COMP%]{padding:0 10px}.alert-container.success[_ngcontent-%COMP%]{border-color:var(--df-success-border)}.alert-container.success[_ngcontent-%COMP%] .alert-icon[_ngcontent-%COMP%]{color:var(--df-success)}.alert-container.error[_ngcontent-%COMP%]{border-color:var(--df-danger-border)}.alert-container.error[_ngcontent-%COMP%] .alert-icon[_ngcontent-%COMP%]{color:var(--df-danger)}.alert-container.warning[_ngcontent-%COMP%]{border-color:var(--df-warning, var(--df-danger-border))}.alert-container.warning[_ngcontent-%COMP%] .alert-icon[_ngcontent-%COMP%]{color:var(--df-warning, var(--df-danger))}.alert-container.info[_ngcontent-%COMP%] .alert-icon[_ngcontent-%COMP%]{color:var(--df-accent)}"]})}}return p})()}}]); \ No newline at end of file diff --git a/dist/5629.5e427cca66ca2ba1.js b/dist/5629.5e427cca66ca2ba1.js deleted file mode 100644 index 88c56f81..00000000 --- a/dist/5629.5e427cca66ca2ba1.js +++ /dev/null @@ -1 +0,0 @@ -"use strict";(self.webpackChunkdf_admin_interface=self.webpackChunkdf_admin_interface||[]).push([[5629],{15629:(x,u,i)=>{i.d(u,{A:()=>R});var l=i(18331),d=i(28600),t=i(31147),v=i(89115),h=i(73907),k=i(17189),b=i(61417),M=i(98443),e=i(1843),C=i(28067);function s(o,r){if(1&o&&e.nrm(0,"df-empty-state",6),2&o){const n=e.XpG().$implicit;e.Y8G("title",n("unresolvedTitle"))("description",n("unresolvedHint"))}}function f(o,r){1&o&&(e.j41(0,"div",7),e.nrm(1,"df-skeleton",8),e.k0s()),2&o&&(e.R7$(1),e.Y8G("count",3))}function c(o,r){if(1&o&&e.nrm(0,"df-empty-state",9),2&o){const n=e.XpG().$implicit;e.Y8G("title",n("emptyTitle"))("description",n("emptyHint"))}}function m(o,r){if(1&o&&(e.j41(0,"span",29),e.EFF(1),e.k0s()),2&o){const n=r.$implicit,a=e.XpG().$implicit;e.AVh("scope-map__verb--filtered","filtered"===a.scope),e.R7$(1),e.JRh(n)}}function g(o,r){if(1&o&&(e.j41(0,"span",30),e.EFF(1),e.k0s()),2&o){const n=e.XpG(4).$implicit;e.R7$(1),e.JRh(n("noVerbs"))}}function y(o,r){if(1&o&&(e.j41(0,"span",31),e.EFF(1),e.k0s()),2&o){const n=e.XpG(4).$implicit;e.Y8G("title",n("filteredHint")),e.R7$(1),e.JRh(n("filtered"))}}function P(o,r){if(1&o&&(e.j41(0,"li",21)(1,"span",22),e.nrm(2,"span",23),e.k0s(),e.j41(3,"span",24),e.EFF(4),e.k0s(),e.j41(5,"span",25),e.DNE(6,m,2,3,"span",26),e.DNE(7,g,2,1,"span",27),e.k0s(),e.DNE(8,y,2,2,"span",28),e.nrm(9,"df-badge",17),e.k0s()),2&o){const n=r.$implicit,a=e.XpG(3).$implicit;e.R7$(1),e.AVh("scope-map__state--allow",n.allow)("scope-map__state--deny",!n.allow),e.BMQ("aria-label",a(n.allow?"allow":"deny")),e.R7$(2),e.Y8G("title",n.component),e.R7$(1),e.JRh(n.target),e.R7$(2),e.Y8G("ngForOf",n.verbs),e.R7$(1),e.Y8G("ngIf",0===n.verbs.length),e.R7$(1),e.Y8G("ngIf","filtered"===n.scope),e.R7$(1),e.Y8G("variant","inherited"===n.source?"neutral":"accent")("dot",!1)("label",a("inherited"===n.source?"inherited":"explicit"))}}const w=function(o){return{count:o}};function D(o,r){if(1&o&&(e.j41(0,"mat-expansion-panel",12)(1,"mat-expansion-panel-header")(2,"mat-panel-title",13),e.nrm(3,"df-badge",14),e.j41(4,"span",15),e.EFF(5),e.k0s()(),e.j41(6,"mat-panel-description",16),e.nrm(7,"df-badge",17),e.j41(8,"span",18),e.EFF(9),e.k0s()()(),e.j41(10,"ul",19),e.DNE(11,P,10,13,"li",20),e.k0s()()),2&o){const n=r.$implicit,a=e.XpG(2).$implicit,_=e.XpG();e.R7$(3),e.Y8G("variant",n.allow?"success":"danger")("label",a(n.allow?"allow":"deny")),e.R7$(2),e.JRh(n.serviceLabel),e.R7$(2),e.Y8G("variant",n.allInherited?"neutral":"accent")("dot",!1)("label",a(n.allInherited?"inherited":"explicit")),e.R7$(2),e.JRh(a("grantCount",e.eq3(9,w,n.entries.length))),e.R7$(2),e.Y8G("ngForOf",n.entries)("ngForTrackBy",_.trackByEntry)}}function E(o,r){if(1&o&&(e.j41(0,"mat-accordion",10),e.DNE(1,D,12,11,"mat-expansion-panel",11),e.k0s()),2&o){const n=e.XpG(2);e.R7$(1),e.Y8G("ngForOf",n.groups)("ngForTrackBy",n.trackByGroup)}}function I(o,r){if(1&o&&(e.qex(0),e.j41(1,"section",1),e.DNE(2,s,1,2,"df-empty-state",2),e.DNE(3,f,2,1,"div",3),e.DNE(4,c,1,2,"df-empty-state",4),e.DNE(5,E,2,2,"mat-accordion",5),e.k0s(),e.bVm()),2&o){const n=e.XpG();e.R7$(2),e.Y8G("ngIf",!n.resolved),e.R7$(1),e.Y8G("ngIf",n.resolved&&n.loading),e.R7$(1),e.Y8G("ngIf",n.resolved&&!n.loading&&0===n.groups.length),e.R7$(1),e.Y8G("ngIf",n.resolved&&!n.loading&&n.groups.length>0)}}let R=(()=>{class o{constructor(n){this.scope=n,this.groups=[],this.loading=!1,this.resolved=!0,this.destroy$=new v.B}ngOnChanges(n){("roleId"in n||"keyId"in n||"agentId"in n)&&this.load()}ngOnDestroy(){this.destroy$.next(),this.destroy$.complete()}trackByGroup(n,a){return`${a.serviceId}:${a.serviceName}`}trackByEntry(n,a){return`${a.serviceId}:${a.component}`}load(){this.groups=[];const n=this.reachSource();n?(this.resolved=!0,this.loading=!0,n.pipe((0,h.Q)(this.destroy$)).subscribe(a=>{this.loading=!1,this.groups=this.group(a)})):this.resolved=!1}reachSource(){return null!=this.roleId?this.scope.reachForRole(this.roleId):null!=this.keyId?this.scope.reachForKey(this.keyId):null!=this.agentId?this.scope.reachForAgent(this.agentId):null}group(n){const a=new Map;for(const _ of n){const O=`${_.serviceId}:${_.serviceName}`;let p=a.get(O);p||(p={serviceId:_.serviceId,serviceLabel:_.serviceLabel,serviceName:_.serviceName,entries:[],allInherited:!0,allow:!1},a.set(O,p)),p.entries.push(_),p.allInherited=p.allInherited&&"inherited"===_.source,p.allow=p.allow||_.allow}return Array.from(a.values())}static{this.\u0275fac=function(a){return new(a||o)(e.rXU(C.q))}}static{this.\u0275cmp=e.VBU({type:o,selectors:[["df-scope-map"]],inputs:{roleId:"roleId",keyId:"keyId",agentId:"agentId"},standalone:!0,features:[e.OA$,e.aNF],decls:1,vars:1,consts:[[4,"transloco","translocoRead"],["data-testid","df-scope-map",1,"scope-map"],["icon","link_off",3,"title","description",4,"ngIf"],["class","scope-map__loading",4,"ngIf"],["icon","shield",3,"title","description",4,"ngIf"],["class","scope-map__accordion","multi","",4,"ngIf"],["icon","link_off",3,"title","description"],[1,"scope-map__loading"],["variant","block",3,"count"],["icon","shield",3,"title","description"],["multi","",1,"scope-map__accordion"],["class","scope-map__panel",4,"ngFor","ngForOf","ngForTrackBy"],[1,"scope-map__panel"],[1,"scope-map__title"],[3,"variant","label"],[1,"scope-map__service"],[1,"scope-map__desc"],[3,"variant","dot","label"],[1,"scope-map__count"],[1,"scope-map__entries"],["class","scope-map__entry",4,"ngFor","ngForOf","ngForTrackBy"],[1,"scope-map__entry"],[1,"scope-map__state"],["aria-hidden","true",1,"scope-map__dot"],[1,"scope-map__target",3,"title"],[1,"scope-map__verbs"],["class","scope-map__verb",3,"scope-map__verb--filtered",4,"ngFor","ngForOf"],["class","scope-map__verb-none",4,"ngIf"],["class","scope-map__scope-tag",3,"title",4,"ngIf"],[1,"scope-map__verb"],[1,"scope-map__verb-none"],[1,"scope-map__scope-tag",3,"title"]],template:function(a,_){1&a&&e.DNE(0,I,6,4,"ng-container",0),2&a&&e.Y8G("translocoRead","scopeMap")},dependencies:[l.MD,l.Sq,l.bT,d.MY,d.BS,d.GK,d.Z2,d.WN,d.Q6,t.Q8,t.bA,k.v,b.M,M.d],styles:["[_nghost-%COMP%]{display:block}.scope-map[_ngcontent-%COMP%]{display:block}.scope-map__loading[_ngcontent-%COMP%]{display:flex;flex-direction:column;gap:var(--df-space-3)}.scope-map__accordion[_ngcontent-%COMP%]{display:block}.scope-map__title[_ngcontent-%COMP%]{display:inline-flex;align-items:center;gap:var(--df-space-3);min-width:0}.scope-map__service[_ngcontent-%COMP%]{font-size:var(--df-font-size-md);font-weight:var(--df-font-weight-medium);color:var(--df-text);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.scope-map__desc[_ngcontent-%COMP%]{display:inline-flex;align-items:center;gap:var(--df-space-3);justify-content:flex-end}.scope-map__count[_ngcontent-%COMP%]{font-size:var(--df-font-size-xs);color:var(--df-text-muted);white-space:nowrap}.scope-map__entries[_ngcontent-%COMP%]{list-style:none;margin:0;padding:0;display:flex;flex-direction:column;gap:var(--df-space-1)}.scope-map__entry[_ngcontent-%COMP%]{display:flex;align-items:center;gap:var(--df-space-3);padding:var(--df-space-2) 0;border-top:1px solid var(--df-border-2);font-size:var(--df-font-size-sm)}.scope-map__entry[_ngcontent-%COMP%]:first-child{border-top:none}.scope-map__state[_ngcontent-%COMP%]{flex:none;display:inline-flex}.scope-map__dot[_ngcontent-%COMP%]{width:1rem;height:1rem;border-radius:50%;display:inline-block;background:var(--df-text-faint)}.scope-map__state--allow[_ngcontent-%COMP%] .scope-map__dot[_ngcontent-%COMP%]{background:var(--df-success);box-shadow:0 0 0 .3rem var(--df-success-soft)}.scope-map__state--deny[_ngcontent-%COMP%] .scope-map__dot[_ngcontent-%COMP%]{background:var(--df-danger);box-shadow:0 0 0 .3rem var(--df-danger-soft)}.scope-map__target[_ngcontent-%COMP%]{flex:1 1 auto;min-width:0;color:var(--df-text);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.scope-map__verbs[_ngcontent-%COMP%]{flex:none;display:inline-flex;flex-wrap:wrap;gap:var(--df-space-1);justify-content:flex-end}.scope-map__verb[_ngcontent-%COMP%]{font-size:var(--df-font-size-xs);font-weight:var(--df-font-weight-medium);color:var(--df-text-2);background:var(--df-surface-2);border:1px solid var(--df-border-2);border-radius:var(--df-radius-sm);padding:0 var(--df-space-2);line-height:1.8}.scope-map__verb--filtered[_ngcontent-%COMP%]{color:var(--df-warning);border-color:var(--df-warning-border)}.scope-map__verb-none[_ngcontent-%COMP%]{font-size:var(--df-font-size-xs);color:var(--df-text-muted);font-style:italic}.scope-map__scope-tag[_ngcontent-%COMP%]{flex:none;font-size:var(--df-font-size-xs);color:var(--df-warning);text-transform:uppercase;letter-spacing:.04em}"]})}}return o})()},98443:(x,u,i)=>{i.d(u,{d:()=>C});var l=i(18331),d=i(31147),t=i(1843);function v(s,f){1&s&&(t.j41(0,"div",8),t.nrm(1,"span",9),t.k0s())}function h(s,f){1&s&&(t.j41(0,"div",10),t.nrm(1,"span",11),t.k0s())}function k(s,f){1&s&&(t.j41(0,"div",12),t.nrm(1,"span",13)(2,"span",14)(3,"span",14)(4,"span",15),t.k0s())}function b(s,f){1&s&&(t.j41(0,"div",16),t.nrm(1,"span",17)(2,"span",9)(3,"span",18)(4,"span",19),t.k0s())}function M(s,f){1&s&&(t.j41(0,"div",8),t.nrm(1,"span",9),t.k0s())}function e(s,f){if(1&s&&(t.qex(0,2),t.DNE(1,v,2,0,"div",3),t.DNE(2,h,2,0,"div",4),t.DNE(3,k,5,0,"div",5),t.DNE(4,b,5,0,"div",6),t.DNE(5,M,2,0,"div",7),t.bVm()),2&s){const c=t.XpG();t.Y8G("ngSwitch",c.variant),t.R7$(1),t.Y8G("ngSwitchCase","line"),t.R7$(1),t.Y8G("ngSwitchCase","block"),t.R7$(1),t.Y8G("ngSwitchCase","table-row"),t.R7$(1),t.Y8G("ngSwitchCase","card")}}let C=(()=>{class s{constructor(){this.variant="line",this.count=1}get items(){const c=this.count>0?Math.floor(this.count):1;return Array.from({length:c},(m,g)=>g)}trackByIndex(c){return c}static{this.\u0275fac=function(m){return new(m||s)}}static{this.\u0275cmp=t.VBU({type:s,selectors:[["df-skeleton"]],inputs:{variant:"variant",count:"count"},standalone:!0,features:[t.aNF],decls:3,vars:5,consts:[["role","status","aria-live","polite","aria-busy","true",1,"df-skeleton"],[3,"ngSwitch",4,"ngFor","ngForOf","ngForTrackBy"],[3,"ngSwitch"],["class","df-skeleton__unit df-skeleton__unit--line",4,"ngSwitchCase"],["class","df-skeleton__unit df-skeleton__unit--block",4,"ngSwitchCase"],["class","df-skeleton__unit df-skeleton__unit--row",4,"ngSwitchCase"],["class","df-skeleton__unit df-skeleton__unit--card",4,"ngSwitchCase"],["class","df-skeleton__unit df-skeleton__unit--line",4,"ngSwitchDefault"],[1,"df-skeleton__unit","df-skeleton__unit--line"],[1,"df-skeleton__bar","df-skeleton__bar--line"],[1,"df-skeleton__unit","df-skeleton__unit--block"],[1,"df-skeleton__bar","df-skeleton__bar--block"],[1,"df-skeleton__unit","df-skeleton__unit--row"],[1,"df-skeleton__bar","df-skeleton__bar--cell","df-skeleton__bar--wide"],[1,"df-skeleton__bar","df-skeleton__bar--cell"],[1,"df-skeleton__bar","df-skeleton__bar--cell","df-skeleton__bar--narrow"],[1,"df-skeleton__unit","df-skeleton__unit--card"],[1,"df-skeleton__bar","df-skeleton__bar--title"],[1,"df-skeleton__bar","df-skeleton__bar--line","df-skeleton__bar--short"],[1,"df-skeleton__bar","df-skeleton__bar--action"]],template:function(m,g){1&m&&(t.j41(0,"div",0),t.nI1(1,"transloco"),t.DNE(2,e,6,5,"ng-container",1),t.k0s()),2&m&&(t.BMQ("aria-label",t.bMT(1,3,"skeleton.loading")),t.R7$(2),t.Y8G("ngForOf",g.items)("ngForTrackBy",g.trackByIndex))},dependencies:[l.pM,l.ux,l.e1,l.fG,d.Kj],styles:['[_nghost-%COMP%]{display:block;width:100%}.df-skeleton[_ngcontent-%COMP%]{display:flex;flex-direction:column;gap:var(--df-space-3);width:100%}.df-skeleton__bar[_ngcontent-%COMP%]{position:relative;display:block;overflow:hidden;border-radius:var(--df-radius-sm);background-color:var(--df-skeleton-bg, var(--df-hover))}.df-skeleton__bar[_ngcontent-%COMP%]:after{content:"";position:absolute;inset:0;transform:translate(-100%);background-image:linear-gradient(90deg,transparent 0%,var(--df-skeleton-shine, var(--df-border)) 50%,transparent 100%);animation:_ngcontent-%COMP%_df-skeleton-shimmer calc(var(--df-duration-standard, .2s) * 8) var(--df-ease-standard, ease) infinite;will-change:transform}@keyframes _ngcontent-%COMP%_df-skeleton-shimmer{to{transform:translate(100%)}}.df-skeleton__bar--line[_ngcontent-%COMP%]{height:var(--df-font-size-sm, 1.3rem);width:100%}.df-skeleton__bar--short[_ngcontent-%COMP%]{width:60%}.df-skeleton__bar--title[_ngcontent-%COMP%]{height:var(--df-font-size-lg, 1.6rem);width:40%}.df-skeleton__bar--block[_ngcontent-%COMP%]{height:12rem;width:100%}.df-skeleton__bar--action[_ngcontent-%COMP%]{height:var(--df-field-height, 4rem);width:33%;border-radius:var(--df-radius)}.df-skeleton__unit--line[_ngcontent-%COMP%], .df-skeleton__unit--block[_ngcontent-%COMP%]{display:block}.df-skeleton__unit--row[_ngcontent-%COMP%]{display:flex;align-items:center;gap:var(--df-space-4);min-height:var(--df-row-height, 3.8rem);padding:0 var(--df-space-2);border-bottom:1px solid var(--df-border-2, var(--df-border))}.df-skeleton__unit--row[_ngcontent-%COMP%] .df-skeleton__bar--cell[_ngcontent-%COMP%]{height:var(--df-font-size-sm, 1.3rem);flex:1}.df-skeleton__unit--row[_ngcontent-%COMP%] .df-skeleton__bar--wide[_ngcontent-%COMP%]{flex:2}.df-skeleton__unit--row[_ngcontent-%COMP%] .df-skeleton__bar--narrow[_ngcontent-%COMP%]{flex:0 0 15%}.df-skeleton__unit--card[_ngcontent-%COMP%]{display:flex;flex-direction:column;gap:var(--df-space-3);padding:var(--df-space-4);border:1px solid var(--df-border);border-radius:var(--df-radius);background-color:var(--df-surface)}@media (prefers-reduced-motion: reduce){.df-skeleton__bar[_ngcontent-%COMP%]:after{animation:none}}']})}}return s})()}}]); \ No newline at end of file diff --git a/dist/5629.b205e4c9c7fea8f7.js b/dist/5629.b205e4c9c7fea8f7.js new file mode 100644 index 00000000..780e9df7 --- /dev/null +++ b/dist/5629.b205e4c9c7fea8f7.js @@ -0,0 +1 @@ +"use strict";(self.webpackChunkdf_admin_interface=self.webpackChunkdf_admin_interface||[]).push([[5629],{15629:(x,u,i)=>{i.d(u,{A:()=>R});var l=i(18331),e=i(1843),t=i(28600),g=i(31147),v=i(89115),h=i(73907),k=i(17189),b=i(61417),M=i(98443),C=i(28067);function s(o,r){if(1&o&&e.nrm(0,"df-empty-state",6),2&o){const n=e.XpG().$implicit;e.Y8G("title",n("unresolvedTitle"))("description",n("unresolvedHint"))}}function p(o,r){1&o&&(e.j41(0,"div",7),e.nrm(1,"df-skeleton",8),e.k0s()),2&o&&(e.R7$(1),e.Y8G("count",3))}function c(o,r){if(1&o&&e.nrm(0,"df-empty-state",9),2&o){const n=e.XpG().$implicit;e.Y8G("title",n("emptyTitle"))("description",n("emptyHint"))}}function f(o,r){if(1&o&&(e.j41(0,"span",29),e.EFF(1),e.k0s()),2&o){const n=r.$implicit,a=e.XpG().$implicit;e.AVh("scope-map__verb--filtered","filtered"===a.scope),e.R7$(1),e.JRh(n)}}function m(o,r){if(1&o&&(e.j41(0,"span",30),e.EFF(1),e.k0s()),2&o){const n=e.XpG(4).$implicit;e.R7$(1),e.JRh(n("noVerbs"))}}function y(o,r){if(1&o&&(e.j41(0,"span",31),e.EFF(1),e.k0s()),2&o){const n=e.XpG(4).$implicit;e.Y8G("title",n("filteredHint")),e.R7$(1),e.JRh(n("filtered"))}}function P(o,r){if(1&o&&(e.j41(0,"li",21)(1,"span",22),e.nrm(2,"span",23),e.k0s(),e.j41(3,"span",24),e.EFF(4),e.k0s(),e.j41(5,"span",25),e.DNE(6,f,2,3,"span",26),e.DNE(7,m,2,1,"span",27),e.k0s(),e.DNE(8,y,2,2,"span",28),e.nrm(9,"df-badge",17),e.k0s()),2&o){const n=r.$implicit,a=e.XpG(3).$implicit;e.R7$(1),e.AVh("scope-map__state--allow",n.allow)("scope-map__state--deny",!n.allow),e.BMQ("aria-label",a(n.allow?"allow":"deny")),e.R7$(2),e.Y8G("title",n.component),e.R7$(1),e.JRh(n.target),e.R7$(2),e.Y8G("ngForOf",n.verbs),e.R7$(1),e.Y8G("ngIf",0===n.verbs.length),e.R7$(1),e.Y8G("ngIf","filtered"===n.scope),e.R7$(1),e.Y8G("variant","inherited"===n.source?"neutral":"accent")("dot",!1)("label",a("inherited"===n.source?"inherited":"explicit"))}}const w=function(o){return{count:o}};function D(o,r){if(1&o&&(e.j41(0,"mat-expansion-panel",12)(1,"mat-expansion-panel-header")(2,"mat-panel-title",13),e.nrm(3,"df-badge",14),e.j41(4,"span",15),e.EFF(5),e.k0s()(),e.j41(6,"mat-panel-description",16),e.nrm(7,"df-badge",17),e.j41(8,"span",18),e.EFF(9),e.k0s()()(),e.j41(10,"ul",19),e.DNE(11,P,10,13,"li",20),e.k0s()()),2&o){const n=r.$implicit,a=e.XpG(2).$implicit,_=e.XpG();e.R7$(3),e.Y8G("variant",n.allow?"success":"danger")("label",a(n.allow?"allow":"deny")),e.R7$(1),e.Y8G("title",n.serviceLabel&&n.serviceLabel!==n.serviceName?n.serviceLabel:""),e.R7$(1),e.JRh(n.serviceName),e.R7$(2),e.Y8G("variant",n.allInherited?"neutral":"accent")("dot",!1)("label",a(n.allInherited?"inherited":"explicit")),e.R7$(2),e.JRh(a("grantCount",e.eq3(10,w,n.entries.length))),e.R7$(2),e.Y8G("ngForOf",n.entries)("ngForTrackBy",_.trackByEntry)}}function E(o,r){if(1&o&&(e.j41(0,"mat-accordion",10),e.DNE(1,D,12,12,"mat-expansion-panel",11),e.k0s()),2&o){const n=e.XpG(2);e.R7$(1),e.Y8G("ngForOf",n.groups)("ngForTrackBy",n.trackByGroup)}}function I(o,r){if(1&o&&(e.qex(0),e.j41(1,"section",1),e.DNE(2,s,1,2,"df-empty-state",2),e.DNE(3,p,2,1,"div",3),e.DNE(4,c,1,2,"df-empty-state",4),e.DNE(5,E,2,2,"mat-accordion",5),e.k0s(),e.bVm()),2&o){const n=e.XpG();e.R7$(2),e.Y8G("ngIf",!n.resolved),e.R7$(1),e.Y8G("ngIf",n.resolved&&n.loading),e.R7$(1),e.Y8G("ngIf",n.resolved&&!n.loading&&0===n.groups.length),e.R7$(1),e.Y8G("ngIf",n.resolved&&!n.loading&&n.groups.length>0)}}let R=(()=>{class o{constructor(n){this.scope=n,this.loaded=new e.bkB,this.groups=[],this.loading=!1,this.resolved=!0,this.destroy$=new v.B}ngOnChanges(n){("roleId"in n||"keyId"in n||"agentId"in n)&&this.load()}ngOnDestroy(){this.destroy$.next(),this.destroy$.complete()}trackByGroup(n,a){return`${a.serviceId}:${a.serviceName}`}trackByEntry(n,a){return`${a.serviceId}:${a.component}`}load(){this.groups=[];const n=this.reachSource();n?(this.resolved=!0,this.loading=!0,n.pipe((0,h.Q)(this.destroy$)).subscribe(a=>{this.loading=!1,this.groups=this.group(a),this.loaded.emit({services:this.groups.length,entries:a.length})})):this.resolved=!1}reachSource(){return null!=this.roleId?this.scope.reachForRole(this.roleId):null!=this.keyId?this.scope.reachForKey(this.keyId):null!=this.agentId?this.scope.reachForAgent(this.agentId):null}group(n){const a=new Map;for(const _ of n){const O=`${_.serviceId}:${_.serviceName}`;let d=a.get(O);d||(d={serviceId:_.serviceId,serviceLabel:_.serviceLabel,serviceName:_.serviceName,entries:[],allInherited:!0,allow:!1},a.set(O,d)),d.entries.push(_),d.allInherited=d.allInherited&&"inherited"===_.source,d.allow=d.allow||_.allow}return Array.from(a.values())}static{this.\u0275fac=function(a){return new(a||o)(e.rXU(C.q))}}static{this.\u0275cmp=e.VBU({type:o,selectors:[["df-scope-map"]],inputs:{roleId:"roleId",keyId:"keyId",agentId:"agentId"},outputs:{loaded:"loaded"},standalone:!0,features:[e.OA$,e.aNF],decls:1,vars:1,consts:[[4,"transloco","translocoRead"],["data-testid","df-scope-map",1,"scope-map"],["icon","link_off",3,"title","description",4,"ngIf"],["class","scope-map__loading",4,"ngIf"],["icon","shield",3,"title","description",4,"ngIf"],["class","scope-map__accordion","multi","",4,"ngIf"],["icon","link_off",3,"title","description"],[1,"scope-map__loading"],["variant","block",3,"count"],["icon","shield",3,"title","description"],["multi","",1,"scope-map__accordion"],["class","scope-map__panel",4,"ngFor","ngForOf","ngForTrackBy"],[1,"scope-map__panel"],[1,"scope-map__title"],[3,"variant","label"],[1,"scope-map__service",3,"title"],[1,"scope-map__desc"],[3,"variant","dot","label"],[1,"scope-map__count"],[1,"scope-map__entries"],["class","scope-map__entry",4,"ngFor","ngForOf","ngForTrackBy"],[1,"scope-map__entry"],[1,"scope-map__state"],["aria-hidden","true",1,"scope-map__dot"],[1,"scope-map__target",3,"title"],[1,"scope-map__verbs"],["class","scope-map__verb",3,"scope-map__verb--filtered",4,"ngFor","ngForOf"],["class","scope-map__verb-none",4,"ngIf"],["class","scope-map__scope-tag",3,"title",4,"ngIf"],[1,"scope-map__verb"],[1,"scope-map__verb-none"],[1,"scope-map__scope-tag",3,"title"]],template:function(a,_){1&a&&e.DNE(0,I,6,4,"ng-container",0),2&a&&e.Y8G("translocoRead","scopeMap")},dependencies:[l.MD,l.Sq,l.bT,t.MY,t.BS,t.GK,t.Z2,t.WN,t.Q6,g.Q8,g.bA,k.v,b.M,M.d],styles:["[_nghost-%COMP%]{display:block}.scope-map[_ngcontent-%COMP%]{display:block}.scope-map__loading[_ngcontent-%COMP%]{display:flex;flex-direction:column;gap:var(--df-space-3)}.scope-map__accordion[_ngcontent-%COMP%]{display:block}.scope-map__title[_ngcontent-%COMP%]{display:inline-flex;align-items:center;gap:var(--df-space-3);min-width:0}.scope-map__service[_ngcontent-%COMP%]{font-size:var(--df-font-size-md);font-weight:var(--df-font-weight-medium);color:var(--df-text);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.scope-map__desc[_ngcontent-%COMP%]{display:inline-flex;align-items:center;gap:var(--df-space-3);justify-content:flex-end}.scope-map__count[_ngcontent-%COMP%]{font-size:var(--df-font-size-xs);color:var(--df-text-muted);white-space:nowrap}.scope-map__entries[_ngcontent-%COMP%]{list-style:none;margin:0;padding:0;display:flex;flex-direction:column;gap:var(--df-space-1)}.scope-map__entry[_ngcontent-%COMP%]{display:flex;align-items:center;gap:var(--df-space-3);padding:var(--df-space-2) 0;border-top:1px solid var(--df-border-2);font-size:var(--df-font-size-sm)}.scope-map__entry[_ngcontent-%COMP%]:first-child{border-top:none}.scope-map__state[_ngcontent-%COMP%]{flex:none;display:inline-flex}.scope-map__dot[_ngcontent-%COMP%]{width:1rem;height:1rem;border-radius:50%;display:inline-block;background:var(--df-text-faint)}.scope-map__state--allow[_ngcontent-%COMP%] .scope-map__dot[_ngcontent-%COMP%]{background:var(--df-success);box-shadow:0 0 0 .3rem var(--df-success-soft)}.scope-map__state--deny[_ngcontent-%COMP%] .scope-map__dot[_ngcontent-%COMP%]{background:var(--df-danger);box-shadow:0 0 0 .3rem var(--df-danger-soft)}.scope-map__target[_ngcontent-%COMP%]{flex:1 1 auto;min-width:0;color:var(--df-text);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.scope-map__verbs[_ngcontent-%COMP%]{flex:none;display:inline-flex;flex-wrap:wrap;gap:var(--df-space-1);justify-content:flex-end}.scope-map__verb[_ngcontent-%COMP%]{font-size:var(--df-font-size-xs);font-weight:var(--df-font-weight-medium);color:var(--df-text-2);background:var(--df-surface-2);border:1px solid var(--df-border-2);border-radius:var(--df-radius-sm);padding:0 var(--df-space-2);line-height:1.8}.scope-map__verb--filtered[_ngcontent-%COMP%]{color:var(--df-warning);border-color:var(--df-warning-border)}.scope-map__verb-none[_ngcontent-%COMP%]{font-size:var(--df-font-size-xs);color:var(--df-text-muted);font-style:italic}.scope-map__scope-tag[_ngcontent-%COMP%]{flex:none;font-size:var(--df-font-size-xs);color:var(--df-warning);text-transform:uppercase;letter-spacing:.04em}"]})}}return o})()},98443:(x,u,i)=>{i.d(u,{d:()=>C});var l=i(18331),e=i(31147),t=i(1843);function g(s,p){1&s&&(t.j41(0,"div",8),t.nrm(1,"span",9),t.k0s())}function v(s,p){1&s&&(t.j41(0,"div",10),t.nrm(1,"span",11),t.k0s())}function h(s,p){1&s&&(t.j41(0,"div",12),t.nrm(1,"span",13)(2,"span",14)(3,"span",14)(4,"span",15),t.k0s())}function k(s,p){1&s&&(t.j41(0,"div",16),t.nrm(1,"span",17)(2,"span",9)(3,"span",18)(4,"span",19),t.k0s())}function b(s,p){1&s&&(t.j41(0,"div",8),t.nrm(1,"span",9),t.k0s())}function M(s,p){if(1&s&&(t.qex(0,2),t.DNE(1,g,2,0,"div",3),t.DNE(2,v,2,0,"div",4),t.DNE(3,h,5,0,"div",5),t.DNE(4,k,5,0,"div",6),t.DNE(5,b,2,0,"div",7),t.bVm()),2&s){const c=t.XpG();t.Y8G("ngSwitch",c.variant),t.R7$(1),t.Y8G("ngSwitchCase","line"),t.R7$(1),t.Y8G("ngSwitchCase","block"),t.R7$(1),t.Y8G("ngSwitchCase","table-row"),t.R7$(1),t.Y8G("ngSwitchCase","card")}}let C=(()=>{class s{constructor(){this.variant="line",this.count=1}get items(){const c=this.count>0?Math.floor(this.count):1;return Array.from({length:c},(f,m)=>m)}trackByIndex(c){return c}static{this.\u0275fac=function(f){return new(f||s)}}static{this.\u0275cmp=t.VBU({type:s,selectors:[["df-skeleton"]],inputs:{variant:"variant",count:"count"},standalone:!0,features:[t.aNF],decls:3,vars:5,consts:[["role","status","aria-live","polite","aria-busy","true",1,"df-skeleton"],[3,"ngSwitch",4,"ngFor","ngForOf","ngForTrackBy"],[3,"ngSwitch"],["class","df-skeleton__unit df-skeleton__unit--line",4,"ngSwitchCase"],["class","df-skeleton__unit df-skeleton__unit--block",4,"ngSwitchCase"],["class","df-skeleton__unit df-skeleton__unit--row",4,"ngSwitchCase"],["class","df-skeleton__unit df-skeleton__unit--card",4,"ngSwitchCase"],["class","df-skeleton__unit df-skeleton__unit--line",4,"ngSwitchDefault"],[1,"df-skeleton__unit","df-skeleton__unit--line"],[1,"df-skeleton__bar","df-skeleton__bar--line"],[1,"df-skeleton__unit","df-skeleton__unit--block"],[1,"df-skeleton__bar","df-skeleton__bar--block"],[1,"df-skeleton__unit","df-skeleton__unit--row"],[1,"df-skeleton__bar","df-skeleton__bar--cell","df-skeleton__bar--wide"],[1,"df-skeleton__bar","df-skeleton__bar--cell"],[1,"df-skeleton__bar","df-skeleton__bar--cell","df-skeleton__bar--narrow"],[1,"df-skeleton__unit","df-skeleton__unit--card"],[1,"df-skeleton__bar","df-skeleton__bar--title"],[1,"df-skeleton__bar","df-skeleton__bar--line","df-skeleton__bar--short"],[1,"df-skeleton__bar","df-skeleton__bar--action"]],template:function(f,m){1&f&&(t.j41(0,"div",0),t.nI1(1,"transloco"),t.DNE(2,M,6,5,"ng-container",1),t.k0s()),2&f&&(t.BMQ("aria-label",t.bMT(1,3,"skeleton.loading")),t.R7$(2),t.Y8G("ngForOf",m.items)("ngForTrackBy",m.trackByIndex))},dependencies:[l.pM,l.ux,l.e1,l.fG,e.Kj],styles:['[_nghost-%COMP%]{display:block;width:100%}.df-skeleton[_ngcontent-%COMP%]{display:flex;flex-direction:column;gap:var(--df-space-3);width:100%}.df-skeleton__bar[_ngcontent-%COMP%]{position:relative;display:block;overflow:hidden;border-radius:var(--df-radius-sm);background-color:var(--df-skeleton-bg, var(--df-hover))}.df-skeleton__bar[_ngcontent-%COMP%]:after{content:"";position:absolute;inset:0;transform:translate(-100%);background-image:linear-gradient(90deg,transparent 0%,var(--df-skeleton-shine, var(--df-border)) 50%,transparent 100%);animation:_ngcontent-%COMP%_df-skeleton-shimmer calc(var(--df-duration-standard, .2s) * 8) var(--df-ease-standard, ease) infinite;will-change:transform}@keyframes _ngcontent-%COMP%_df-skeleton-shimmer{to{transform:translate(100%)}}.df-skeleton__bar--line[_ngcontent-%COMP%]{height:var(--df-font-size-sm, 1.3rem);width:100%}.df-skeleton__bar--short[_ngcontent-%COMP%]{width:60%}.df-skeleton__bar--title[_ngcontent-%COMP%]{height:var(--df-font-size-lg, 1.6rem);width:40%}.df-skeleton__bar--block[_ngcontent-%COMP%]{height:12rem;width:100%}.df-skeleton__bar--action[_ngcontent-%COMP%]{height:var(--df-field-height, 4rem);width:33%;border-radius:var(--df-radius)}.df-skeleton__unit--line[_ngcontent-%COMP%], .df-skeleton__unit--block[_ngcontent-%COMP%]{display:block}.df-skeleton__unit--row[_ngcontent-%COMP%]{display:flex;align-items:center;gap:var(--df-space-4);min-height:var(--df-row-height, 3.8rem);padding:0 var(--df-space-2);border-bottom:1px solid var(--df-border-2, var(--df-border))}.df-skeleton__unit--row[_ngcontent-%COMP%] .df-skeleton__bar--cell[_ngcontent-%COMP%]{height:var(--df-font-size-sm, 1.3rem);flex:1}.df-skeleton__unit--row[_ngcontent-%COMP%] .df-skeleton__bar--wide[_ngcontent-%COMP%]{flex:2}.df-skeleton__unit--row[_ngcontent-%COMP%] .df-skeleton__bar--narrow[_ngcontent-%COMP%]{flex:0 0 15%}.df-skeleton__unit--card[_ngcontent-%COMP%]{display:flex;flex-direction:column;gap:var(--df-space-3);padding:var(--df-space-4);border:1px solid var(--df-border);border-radius:var(--df-radius);background-color:var(--df-surface)}@media (prefers-reduced-motion: reduce){.df-skeleton__bar[_ngcontent-%COMP%]:after{animation:none}}']})}}return s})()}}]); \ No newline at end of file diff --git a/dist/assets/i18n/apps/en.json b/dist/assets/i18n/apps/en.json index fbca5b0e..1bd6f689 100644 --- a/dist/assets/i18n/apps/en.json +++ b/dist/assets/i18n/apps/en.json @@ -123,7 +123,10 @@ "tokensLabel": "Tokens", "spendLabel": "Spend", "requestsLabel": "Requests", - "perPeriod": "per {{period}}" + "perPeriod": "per {{period}}", + "reachCount": "{{services}} services, {{entries}} grants", + "reachShow": "Show", + "reachHide": "Hide" }, "importApp": { "title": "Import Application", diff --git a/dist/index.html b/dist/index.html index 74e09017..7b2b5e7e 100644 --- a/dist/index.html +++ b/dist/index.html @@ -10,5 +10,5 @@