|
Server : Apache/2.4.58 (Win64) OpenSSL/3.1.3 PHP/8.2.12 System : Windows NT SERVER-PC 10.0 build 26200 (Windows 11) AMD64 User : ServerPC ( 0) PHP Version : 8.2.12 Disable Function : NONE Directory : C:/Program Files/NVIDIA Corporation/NVIDIA app/www/ |
Upload File : |
"use strict";(self.webpackChunknvapp=self.webpackChunknvapp||[]).push([[55],{55055:(Hs,Kt,p)=>{p.r(Kt),p.d(Kt,{SystemModule:()=>Xs});var v=p(92602),rt=p(37202),u=p(61142),$n=p(17076),t=p(58527);let jn=(()=>{class a{static{this.\u0275fac=function(e){return new(e||a)}}static{this.\u0275mod=t.$C({type:a})}static{this.\u0275inj=t.G2t({imports:[u.MD,$n.i,rt.G,(0,v.BU)()]})}}return a})(),kt=(()=>{class a{static{this.\u0275fac=function(e){return new(e||a)}}static{this.\u0275mod=t.$C({type:a})}static{this.\u0275inj=t.G2t({imports:[rt.G,(0,v.BU)(),v._N,rt.G,v._N]})}}return a})(),tn=(()=>{class a{static{this.\u0275fac=function(e){return new(e||a)}}static{this.\u0275mod=t.$C({type:a})}static{this.\u0275inj=t.G2t({imports:[u.MD,kt,(0,v.BU)()]})}}return a})(),Vn=(()=>{class a{static{this.\u0275fac=function(e){return new(e||a)}}static{this.\u0275mod=t.$C({type:a})}static{this.\u0275inj=t.G2t({imports:[(0,v.BU)(),kt,tn]})}}return a})();var L=p(56106);let An=(()=>{class a{static{this.\u0275fac=function(e){return new(e||a)}}static{this.\u0275mod=t.$C({type:a})}static{this.\u0275inj=t.G2t({imports:[(0,v.BU)(),kt,L.YN,rt.G]})}}return a})(),Un=(()=>{class a{static{this.\u0275fac=function(e){return new(e||a)}}static{this.\u0275mod=t.$C({type:a})}static{this.\u0275inj=t.G2t({imports:[rt.G,(0,v.BU)()]})}}return a})();var Ht=p(14354),M=p(91384),P=p(83915),A=p(14714),I=p(72147),mt=p(53461),Y=p(85735),Xn=p(16229),g=p(36466),T=p(31315),D=p(43848),h=p(45768),Mt=p(75597),nn=p(11001),Bn=p(9231),en=p(3960),Q=p(59584),Gt=p(95364),Nn=p(15294),Ln=p(63332),q=p(40018),an=p(47847),Ft=p(68477),N=p(28139),zt=p(93964);let Yn=(()=>{class a{constructor(n,e){this.tabGroup=n,this.logger=e.getLogger("nvapp/TabChangeGuardDirective")}ngOnInit(){this.originalHandleClick=this.tabGroup._handleClick,this.tabGroup._handleClick=(n,e,i)=>{i!==this.tabIndexToCheck?(this.waitForInputObsSub?.unsubscribe(),this.waitForInputObsSub=this.waitForAction$.subscribe(o=>{o&&this.originalHandleClick.call(this.tabGroup,n,e,i)},o=>this.logger.error(o))):this.originalHandleClick.call(this.tabGroup,n,e,i)}}ngOnDestroy(){this.waitForInputObsSub?.unsubscribe(),this.originalHandleClick&&(this.tabGroup._handleClick=this.originalHandleClick)}static{this.\u0275fac=function(e){return new(e||a)(t.rXU(Ft.T8),t.rXU(v.J6))}}static{this.\u0275dir=t.FsC({type:a,selectors:[["","nvAppTabChangeGuard",""]],inputs:{waitForAction$:"waitForAction$",tabIndexToCheck:"tabIndexToCheck"}})}}return a})();var tt=p(80583),S=p(83128),Et=p(31627),$t=p(88484),Pt=p(7428),on=p(31454),F=p(29370),sn=p(99204),X=p(44224),jt=p(58590),Hn=p(3496),m=p(65706),j=p(85539),f=p(1242),rn=p(25864),ln=p(51008),pn=p(62141),J=p(54676),nt=p(75723),U=p(47973),zn=p(20288),qt=p(31308),ft=p(92626),x=p(96542);const qn=(a,r)=>({"scan-errored":a,"is-dc-power":r});function Qn(a,r){1&a&&(t.j41(0,"div",3),t.nrm(1,"mat-spinner",4),t.j41(2,"span"),t.EFF(3),t.nI1(4,"translate"),t.k0s()()),2&a&&(t.R7$(3),t.SpI(" ",t.bMT(4,1,"performance.fetching")," "))}function Jn(a,r){if(1&a){const n=t.RV6();t.j41(0,"div",7)(1,"div",8)(2,"div",9),t.EFF(3),t.nI1(4,"translate"),t.k0s(),t.nrm(5,"mat-progress-bar",10),t.j41(6,"div",11),t.EFF(7),t.nI1(8,"translate"),t.k0s()(),t.j41(9,"div"),t.EFF(10),t.nI1(11,"translate"),t.k0s(),t.j41(12,"button",12),t.nI1(13,"async"),t.nI1(14,"async"),t.nI1(15,"translate"),t.bIt("click",function(){t.eBV(n);const i=t.XpG(2);return t.Njj(i.stopScan())}),t.k0s()()}if(2&a){const n=t.XpG(2);t.R7$(3),t.JRh(t.bMT(4,12,"performance.scanningText")),t.R7$(2),t.Y8G("mode",(null==n.ocScanResult?null:n.ocScanResult.percentComplete)>0?"determinate":"indeterminate")("value",null==n.ocScanResult?null:n.ocScanResult.percentComplete),t.BMQ("aria-valuemin",0)("aria-valuemax",100)("aria-valuenow",null==n.ocScanResult?null:n.ocScanResult.percentComplete),t.R7$(2),t.JRh(t.bMT(8,14,"performance.scanningMessage")),t.R7$(3),t.Lme("",null==n.ocScanResult?null:n.ocScanResult.percentComplete,"",t.bMT(11,16,"performance.percentage"),""),t.R7$(2),t.Y8G("showSpinner",t.bMT(13,18,n.stopScanProgress$)&&n.scanOnLoad)("disabled",t.bMT(14,20,n.stopScanProgress$)&&n.scanOnLoad)("buttonText",t.bMT(15,22,"performance.stopScan"))}}function Wn(a,r){1&a&&t.eu8(0)}function Zn(a,r){1&a&&(t.j41(0,"div"),t.EFF(1),t.nI1(2,"translate"),t.k0s()),2&a&&(t.R7$(),t.SpI(" ",t.bMT(2,1,"performance.autoTune.dcModeMessage")," "))}function Kn(a,r){if(1&a){const n=t.RV6();t.j41(0,"div"),t.EFF(1),t.nI1(2,"translate"),t.j41(3,"a",20),t.nI1(4,"translate"),t.bIt("click",function(){t.eBV(n);const i=t.XpG(3);return t.Njj(i.onLearnMoreAutoTune())})("keyup.enter",function(){t.eBV(n);const i=t.XpG(3);return t.Njj(i.onLearnMoreAutoTune())}),t.EFF(5),t.nI1(6,"translate"),t.k0s()()}2&a&&(t.R7$(),t.SpI(" ",t.bMT(2,3,"performance.autoTune.tuneInterrupted")," "),t.R7$(2),t.BMQ("aria-label",t.bMT(4,5,"common.learnMore")),t.R7$(2),t.SpI(" ",t.bMT(6,7,"common.learnMore")," "))}function te(a,r){if(1&a&&(t.j41(0,"span"),t.EFF(1),t.nI1(2,"translate"),t.nI1(3,"translate"),t.k0s()),2&a){const n=t.XpG(4);t.R7$(),t.E5c("\xa0\xa0|\xa0\xa0",t.bMT(2,3,"performance.vramTune")," +",null==n.ocScanResult?null:n.ocScanResult.memoryOcOffsetMhz," ",t.bMT(3,5,"performance.megaHertz"),"")}}function ne(a,r){if(1&a&&(t.j41(0,"span"),t.EFF(1),t.k0s()),2&a){const n=t.XpG(4);t.R7$(),t.SpI(" (",n.convertedCompletionTime,") ")}}function ee(a,r){if(1&a&&(t.j41(0,"div"),t.EFF(1),t.nI1(2,"translate"),t.nI1(3,"translate"),t.DNE(4,te,4,7,"span",18),t.nI1(5,"async"),t.DNE(6,ne,2,1,"span",18),t.k0s()),2&a){const n=t.XpG(3);t.R7$(),t.E5c(" ",t.bMT(2,5,"performance.gpuTune")," +",null==n.ocScanResult?null:n.ocScanResult.averageGpuClockOffsetMhz," ",t.bMT(3,7,"performance.megaHertz")," "),t.R7$(3),t.Y8G("ngIf",!1===t.bMT(5,9,n.systemIsLaptop$)),t.R7$(2),t.Y8G("ngIf",!!n.convertedCompletionTime)}}function ie(a,r){if(1&a){const n=t.RV6();t.j41(0,"div",13)(1,"div"),t.nrm(2,"mat-icon",14),t.k0s(),t.j41(3,"div",15)(4,"div")(5,"div",16),t.DNE(6,Wn,1,0,"ng-container",17)(7,Zn,3,3,"div",18)(8,Kn,7,9,"div",18),t.k0s()(),t.j41(9,"button",19),t.nI1(10,"translate"),t.nI1(11,"translate"),t.bIt("click",function(){t.eBV(n);const i=t.XpG(2);return t.Njj(i.restoreClock())}),t.EFF(12),t.nI1(13,"translate"),t.k0s()(),t.DNE(14,ee,7,11,"ng-template",null,1,t.C5r),t.k0s()}if(2&a){const n=t.sdS(15),e=t.XpG(2);t.Y8G("ngClass",t.l_i(15,qn,e.scanErrored,e.isDcPower)),t.R7$(6),t.Y8G("ngTemplateOutlet",n),t.R7$(),t.Y8G("ngIf",e.isDcPower),t.R7$(),t.Y8G("ngIf",e.scanErrored),t.R7$(),t.qtP("aria-label","",t.bMT(10,9,"performance.autoTune.dcModeMessage")," ",t.bMT(11,11,"performance.restore"),""),t.Y8G("disabled",e.isDcPower||e.completionState!==e.autoScanStatusCodes.completedSuccessfully),t.R7$(3),t.SpI(" ",t.bMT(13,13,"performance.restore")," ")}}function ae(a,r){if(1&a&&t.DNE(0,Jn,16,24,"div",5)(1,ie,16,18,"div",6),2&a){const n=t.XpG();t.Y8G("ngIf",(null==n.ocScanResult?null:n.ocScanResult.type)===n.autoScanStatusCodes.scanInProgress),t.R7$(),t.Y8G("ngIf",(null==n.ocScanResult?null:n.ocScanResult.type)===n.autoScanStatusCodes.scanNotRunning)}}let oe=(()=>{class a{constructor(n,e,i){this.loggingService=n,this.perfTuningService=e,this.perfSharedService=i,this.autoScanStatusCodes=j.H1,this.ocScanResult={},this.scanErrorResult={},this.isDcPower=!1,this.convertedCompletionTime="",this.isScanResultInProgress=!0,this.scanErrored=!1,this.scanOnLoad=void 0,this.destroyRef=(0,t.WQX)(t.abz),this.logger=this.loggingService.getLogger("nvapp/PerfAutoTuningResultComponent")}ngOnInit(){this.getPerfScanResults(),this.perfTuningService.isDcPowerMode.pipe((0,h.pQ)(this.destroyRef)).subscribe(n=>this.isDcPower=n,n=>this.logger.error("Error fetching power mode",n)),this.perfTuningService.getConvertedCompletionTime.pipe((0,h.pQ)(this.destroyRef)).subscribe(n=>this.convertedCompletionTime=n,n=>this.logger.error("Error fetching completion time",n)),this.stopScanProgress$=this.perfTuningService.getStopScanProgress(),this.systemIsLaptop$=this.perfSharedService.systemIsLaptop()}getPerfScanResults(){this.perfTuningService.getScanResultNotification().pipe((0,I.n)(n=>(this.ocScanResult=n,this.scanOnLoad||(this.scanOnLoad=this.ocScanResult.type===this.autoScanStatusCodes.scanInProgress),this.completionState=this.perfTuningService.getCompletionStatus(this.ocScanResult.completionStatus),!this.scanErrored&&(this.scanErrored=this.completionState!==j.H1.completedSuccessfully&&this.completionState!==j.H1.noResultButValid&&this.completionState!==j.H1.scanInProgress,this.scanErrored)?(this.scanErrorResult=this.ocScanResult,this.perfTuningService.getLastOcScanResults()):(0,D.of)(n))),(0,h.pQ)(this.destroyRef)).subscribe(()=>{this.isScanResultInProgress=!1},n=>{this.isScanResultInProgress=!1,this.logger.error(n),this.showErrorToast(n)})}restoreClock(){this.restoreOcSub?.unsubscribe(),this.restoreOcSub=this.perfTuningService.checkConsentAndRestoreOc().subscribe(g.l,n=>{this.showErrorToast(n)})}stopScan(){this.scanErrored=!1,this.scanOnLoad=!0,this.stopScanSub?.unsubscribe(),this.stopScanSub=this.perfTuningService.stopOcScan().subscribe(g.l,n=>{this.showErrorToast(n)})}onLearnMoreAutoTune(){this.learnMoreSub?.unsubscribe(),this.learnMoreSub=this.perfTuningService.learnMoreAutoTune(this.isDcPower,this.scanErrorResult).subscribe(g.l,n=>{this.showErrorToast(n)})}showErrorToast(n){this.perfSharedService.showErrorToast(n)}ngOnDestroy(){this.restoreOcSub?.unsubscribe(),this.stopScanSub?.unsubscribe(),this.learnMoreSub?.unsubscribe()}static{this.\u0275fac=function(e){return new(e||a)(t.rXU(v.J6),t.rXU($t.K),t.rXU(Pt.k))}}static{this.\u0275cmp=t.VBU({type:a,selectors:[["nv-app-perf-auto-tuning-result"]],decls:3,vars:2,consts:[["scanResultContainer",""],["scanUpdated",""],["class","scan-result-loading",4,"ngIf","ngIfElse"],[1,"scan-result-loading"],["color","accent","diameter","24",1,"scan-result-spinner"],["class","scan-result-container scan-running-visible",4,"ngIf"],["class","scan-result-container",3,"ngClass",4,"ngIf"],[1,"scan-result-container","scan-running-visible"],[1,"progress-bar-container"],[1,"font-sub2"],[3,"mode","value"],[1,"font-body3"],["mat-button","","nvAppTextButtonSpinner","",1,"font-button2",3,"click","showSpinner","disabled","buttonText"],[1,"scan-result-container",3,"ngClass"],["svgIcon","readiness_score",1,"align-icon"],[1,"scan-result-row"],[1,"scan-result-message","font-body2"],[4,"ngTemplateOutlet"],[4,"ngIf"],["mat-button","",1,"font-button2",3,"click","disabled"],["cdkMonitorElementFocus","","role","link","tabindex","0",1,"font-body2-link",3,"click","keyup.enter"]],template:function(e,i){if(1&e&&t.DNE(0,Qn,5,3,"div",2)(1,ae,2,2,"ng-template",null,0,t.C5r),2&e){const o=t.sdS(2);t.Y8G("ngIf",i.isScanResultInProgress)("ngIfElse",o)}},dependencies:[u.YU,u.bT,u.T3,U.iV,F.An,sn.LG,zn.HM,qt.vR,J.tG,N.PW,ft.u,u.Jj,x.D9],styles:["[_nghost-%COMP%]{flex:1}.align-icon[_ngcontent-%COMP%]{vertical-align:middle}.scan-result-loading[_ngcontent-%COMP%]{display:flex;align-items:center}.scan-result-spinner[_ngcontent-%COMP%]{margin-right:8px}.scan-result-container[_ngcontent-%COMP%]{display:flex;flex:1;align-items:center;gap:16px;margin-bottom:26px}.scan-result-container[_ngcontent-%COMP%] .progress-bar-container[_ngcontent-%COMP%]{display:flex;flex-direction:column;align-items:flex-start;flex:1}.scan-result-container[_ngcontent-%COMP%] .progress-bar-container[_ngcontent-%COMP%] mat-progress-bar[_ngcontent-%COMP%]{margin:5px 0}.scan-result-container.scan-errored[_ngcontent-%COMP%], .scan-result-container.is-dc-power[_ngcontent-%COMP%]{margin-bottom:22px}.scan-result-container.scan-running-visible[_ngcontent-%COMP%]{margin-bottom:12px}.scan-result-container.scan-errored.is-dc-power[_ngcontent-%COMP%]{margin-bottom:2px}mat-button[_ngcontent-%COMP%]{margin-left:8px}.scan-result-message[_ngcontent-%COMP%]{display:flex;flex-direction:column}.scan-result-row[_ngcontent-%COMP%]{display:flex;align-items:center;flex:1;justify-content:space-between}.scan-result-row[_ngcontent-%COMP%] > div[_ngcontent-%COMP%]{display:flex;align-items:center;gap:10px}.scan-result-row[_ngcontent-%COMP%] .material-icons[_ngcontent-%COMP%]{color:var(--accent-500)}"]})}}return a})();const se=["toggleElement"];let re=(()=>{class a{constructor(n,e,i,o,s){this.loggingService=n,this.perfTuningService=e,this.perfSharedService=i,this.renderer=o,this.a11yAnnouncer=s,this.autoScanStatusCodes=j.H1,this.autoTuneTitle=j.Sj,this.autoTuneDescription=j.s6,this.isDcPower=!1,this.toggleChangeTimerFlag=!1,this.destroyRef=(0,t.WQX)(t.abz),this.logger=this.loggingService.getLogger("nvapp/PerfAutoTuningComponent")}ngOnInit(){this.listenForAutoTuneToggleState(),this.triggerForAutoTuneToggleState(),this.perfTuningService.isDcPowerMode.pipe((0,h.pQ)(this.destroyRef)).subscribe(n=>this.isDcPower=n,n=>this.logger.error("Error fetching power mode",n))}listenForAutoTuneToggleState(){this.perfTuningService.getAutoTuneToggleState().pipe((0,h.pQ)(this.destroyRef)).subscribe(n=>{this.perfSharedService.updatePerfMarkers([S.mM.NvAppAutoTuningToggleDataEnd]),this.autoTunerToggleState=n,this.unfocusSlideToggle(),this.perfSharedService.gpuPerfTuningData.automaticTuningEnabled=this.autoTunerToggleState?f.T8.TRUE:f.T8.FALSE,this.logger.info("Received auto tuning "+(n?"enabled":"disabled"))},n=>{this.perfSharedService.updatePerfMarkers([S.mM.NvAppAutoTuningToggleDataEnd]),this.showErrorToast(n)})}unfocusSlideToggle(){setTimeout(()=>{this.renderer.removeClass(this.tuningToggleRef._elementRef.nativeElement,"cdk-focused"),this.renderer.removeClass(this.tuningToggleRef._elementRef.nativeElement,"cdk-keyboard-focused")},j.LD)}triggerForAutoTuneToggleState(){this.perfTuningService.getLastOcScanResults().pipe((0,h.pQ)(this.destroyRef)).subscribe(g.l,n=>{this.showErrorToast(n)})}checkPreventDefaultToggleAction(n){this.toggleChangeTimerFlag?n.preventDefault():(this.toggleChangeTimerFlag=!0,(0,Hn.O)(j.Td,-1).pipe((0,m.s)(1)).subscribe(()=>{this.toggleChangeTimerFlag=!1},e=>{this.logger.error("Timer errored!",e),this.toggleChangeTimerFlag=!1}))}onTuningToggleChange(n){this.perfTuningService.resetStopScanButton(),this.autoTuneSub?.unsubscribe(),this.autoTuneSub=this.perfTuningService.checkConsentAndEnableBgOcScan(n.checked).subscribe(e=>{switch(e){case j.Uj.tuneDisabled:this.autoTunerToggleState=!1;break;case j.Uj.tuneEnabled:this.autoTunerToggleState=!0}this.tuningToggleRef.checked=this.autoTunerToggleState,this.unfocusSlideToggle(),this.autoTunerToggleState&&setTimeout(()=>{this.a11yAnnouncer.announce(this.autoTunerToggleState,this.autoTuneTitle,rn.iE.toggle)},j.LD),this.logger.info(`Auto tuning ${this.autoTunerToggleState?"enabled":"disabled"} manually`)},e=>{this.tuningToggleRef.checked=this.autoTunerToggleState,this.showErrorToast(e)})}openAutoTuneInfoDialog(){this.perfTuningService.showAutoTuneInfoDialog()}showErrorToast(n){this.perfSharedService.showErrorToast(n)}ngOnDestroy(){this.perfTuningService.timeIntervalSub?.unsubscribe(),this.autoTuneSub?.unsubscribe()}static{this.\u0275fac=function(e){return new(e||a)(t.rXU(v.J6),t.rXU($t.K),t.rXU(Pt.k),t.rXU(t.sFG),t.rXU(ln.x))}}static{this.\u0275cmp=t.VBU({type:a,selectors:[["nv-app-perf-auto-tuning"]],viewQuery:function(e,i){if(1&e&&t.GBs(se,5),2&e){let o;t.mGM(o=t.lsd())&&(i.tuningToggleRef=o.first)}},decls:17,vars:20,consts:[["toggleElement",""],[1,"auto-tune-container"],[1,"tune-toggle-row","font-sub1"],[1,"setting-info-icon-container"],["tabindex","0","role","button",1,"material-icons","setting-info-icon","show",3,"click","keydown.enter"],["role","switch",3,"change","click","checked","disabled","aria-label","nvAppAnnouncer","associatedMessage"],[1,"font-body2"],[1,"scan-result"]],template:function(e,i){if(1&e){const o=t.RV6();t.j41(0,"div",1)(1,"div",2)(2,"div",3),t.EFF(3),t.nI1(4,"translate"),t.j41(5,"mat-icon",4),t.nI1(6,"translate"),t.nI1(7,"translate"),t.bIt("click",function(){return t.eBV(o),t.Njj(i.openAutoTuneInfoDialog())})("keydown.enter",function(){return t.eBV(o),t.Njj(i.openAutoTuneInfoDialog())}),t.EFF(8,"info"),t.k0s()(),t.j41(9,"mat-slide-toggle",5,0),t.nI1(11,"translate"),t.bIt("change",function(l){return t.eBV(o),t.Njj(i.onTuningToggleChange(l))})("click",function(l){return t.eBV(o),t.Njj(i.checkPreventDefaultToggleAction(l))}),t.k0s()(),t.j41(12,"div",6),t.EFF(13),t.nI1(14,"translate"),t.k0s(),t.j41(15,"div",7),t.nrm(16,"nv-app-perf-auto-tuning-result"),t.k0s()()}2&e&&(t.R7$(3),t.SpI(" ",t.bMT(4,10,i.autoTuneTitle)," "),t.R7$(2),t.qtP("aria-label","",t.bMT(6,12,i.autoTuneTitle)," ",t.bMT(7,14,"common.info"),""),t.R7$(4),t.Y8G("checked",i.autoTunerToggleState)("disabled",void 0===i.autoTunerToggleState||(null==i.perfTuningService||null==i.perfTuningService.ocScanResult?null:i.perfTuningService.ocScanResult.type)===i.autoScanStatusCodes.scanInProgress||i.isDcPower)("aria-label",t.bMT(11,16,i.autoTuneTitle))("nvAppAnnouncer",i.autoTunerToggleState)("associatedMessage",i.autoTuneTitle),t.R7$(4),t.SpI(" ",t.bMT(14,18,i.autoTuneDescription)," "))},dependencies:[F.An,pn.P2,J.tG,nt.L,oe,x.D9],styles:[".auto-tune-container[_ngcontent-%COMP%]{display:flex;flex-direction:column;justify-content:flex-start;margin-top:16px}.tune-toggle-row[_ngcontent-%COMP%]{display:flex;justify-content:space-between;align-items:center}.scan-result[_ngcontent-%COMP%]{display:flex;margin-top:24px}.auto-tune-container[_ngcontent-%COMP%] mat-divider[_ngcontent-%COMP%]{margin-top:24px}.scan-unsupported[_ngcontent-%COMP%]{align-self:center;display:flex;flex-direction:column;align-items:center;gap:10px}"]})}}return a})();var B=p(12949),Ot=p(65726),le=p(52960),st=p(51635),Vt=p(5428);function pe(a,r){if(1&a){const n=t.RV6();t.j41(0,"button",10),t.nI1(1,"translate"),t.bIt("click",function(){t.eBV(n);const i=t.XpG(2);return t.Njj(i.onSliderChange(i.sliderTypes.Unknown,i.ocProfiles.Default))}),t.k0s()}if(2&a){const n=t.XpG(2);t.Y8G("buttonText",t.bMT(1,2,"performance.restore"))("disabled",n.profileDisabled||n.isRestoreDisabled)}}function ce(a,r){if(1&a){const n=t.RV6();t.qex(0),t.j41(1,"div"),t.EFF(2),t.nI1(3,"translate"),t.k0s(),t.j41(4,"nv-hig-slider",13),t.nI1(5,"translate"),t.mxI("valueChange",function(i){t.eBV(n);const o=t.XpG().$implicit;return t.DH7(o.current,i)||(o.current=i),t.Njj(i)}),t.bIt("valueChange",function(){t.eBV(n);const i=t.XpG().$implicit,o=t.XpG(2);return t.Njj(o.onSliderChange(i.type))}),t.k0s(),t.bVm()}if(2&a){const n=t.XpG().$implicit,e=t.XpG(2);t.R7$(2),t.SpI(" ",t.bMT(3,9,n.sliderName)," "),t.R7$(2),t.R50("value",n.current),t.Y8G("min",n.min)("max",n.max)("step",1)("disabled",e.profileDisabled)("nvAppAnnouncer",n.current)("associatedMessage",n.sliderName),t.BMQ("aria-label",t.bMT(5,11,n.sliderName))}}function de(a,r){if(1&a&&(t.j41(0,"div",11),t.DNE(1,ce,6,13,"ng-container",12),t.k0s()),2&a){const n=r.$implicit;t.R7$(),t.Y8G("ngIf",n.isSupported)}}function ge(a,r){if(1&a){const n=t.RV6();t.j41(0,"nv-hig-slider",13),t.nI1(1,"translate"),t.mxI("valueChange",function(i){t.eBV(n);const o=t.XpG(3);return t.DH7(o.fanSettings[0].sliderSetting.current,i)||(o.fanSettings[0].sliderSetting.current=i),t.Njj(i)}),t.bIt("valueChange",function(){t.eBV(n);const i=t.XpG(3);return t.Njj(i.onSliderChange(i.sliderTypes.Fan))}),t.k0s()}if(2&a){const n=t.XpG(3);t.R50("value",n.fanSettings[0].sliderSetting.current),t.Y8G("min",n.fanSettings[0].sliderSetting.min)("max",n.fanSettings[0].sliderSetting.max)("step",1)("disabled",n.profileDisabled)("nvAppAnnouncer",n.fanSettings[0].sliderSetting.current)("associatedMessage","performance.perfLimiters.fanSpeedTarget"),t.BMQ("aria-label",t.bMT(1,8,"performance.perfLimiters.fanSpeedTarget"))}}function ue(a,r){if(1&a){const n=t.RV6();t.j41(0,"div",14)(1,"div"),t.EFF(2),t.nI1(3,"translate"),t.k0s(),t.j41(4,"div",15)(5,"mat-select",16),t.mxI("valueChange",function(i){t.eBV(n);const o=t.XpG(2);return t.DH7(o.fanSettings[0].autoPower,i)||(o.fanSettings[0].autoPower=i),t.Njj(i)}),t.bIt("selectionChange",function(i){t.eBV(n);const o=t.XpG(2);return o.onSliderChange(o.sliderTypes.Fan),t.Njj(o.unfocusSelect(i))}),t.j41(6,"mat-option",17),t.EFF(7),t.nI1(8,"translate"),t.k0s(),t.j41(9,"mat-option",17),t.EFF(10),t.nI1(11,"translate"),t.k0s()()(),t.DNE(12,ge,2,10,"nv-hig-slider",18),t.k0s()}if(2&a){const n=t.XpG(2);t.R7$(2),t.SpI(" ",t.bMT(3,8,"performance.perfLimiters.fanSpeedTarget")," "),t.R7$(3),t.R50("value",n.fanSettings[0].autoPower),t.Y8G("disabled",n.profileDisabled),t.R7$(),t.Y8G("value",!1),t.R7$(),t.SpI(" ",t.bMT(8,10,"performance.perfLimiters.manual")," "),t.R7$(2),t.Y8G("value",!0),t.R7$(),t.SpI(" ",t.bMT(11,12,"performance.perfLimiters.auto")," "),t.R7$(2),t.Y8G("ngIf",!n.fanSettings[0].autoPower)}}function he(a,r){if(1&a){const n=t.RV6();t.j41(0,"div",1)(1,"div",2)(2,"div",3)(3,"div",4),t.EFF(4),t.nI1(5,"translate"),t.k0s(),t.j41(6,"mat-icon",5),t.nI1(7,"translate"),t.nI1(8,"translate"),t.bIt("click",function(){t.eBV(n);const i=t.XpG();return t.Njj(i.openPerfLimitsInfoDialog())})("keydown.enter",function(){t.eBV(n);const i=t.XpG();return t.Njj(i.openPerfLimitsInfoDialog())}),t.EFF(9,"info"),t.k0s()(),t.DNE(10,pe,2,4,"button",6),t.k0s(),t.j41(11,"div",7),t.DNE(12,de,2,1,"div",8)(13,ue,13,14,"div",9),t.k0s()()}if(2&a){const n=t.XpG();t.R7$(4),t.SpI(" ",t.bMT(5,8,"performance.perfLimiters.title")," "),t.R7$(2),t.qtP("aria-label","",t.bMT(7,10,"performance.perfLimiters.title")," ",t.bMT(8,12,"common.info"),""),t.R7$(4),t.Y8G("ngIf",n.selectedOcProfile!==n.ocProfiles.Default),t.R7$(2),t.Y8G("ngForOf",n.sliderLimits)("ngForTrackBy",n.trackBySliderType),t.R7$(),t.Y8G("ngIf",null==n.fanSettings[0]?null:n.fanSettings[0].isVisible)}}let me=(()=>{class a{constructor(n,e,i,o){this.loggingService=n,this.perfLimitersService=e,this.perfSharedService=i,this.perfTuningService=o,this.sliderLimits=[],this.areSlidersSupported=!1,this.sliderTypes=j.vy,this.ocSliderTypes=j.vy,this.fanSettings=[],this.ocProfiles=j.NZ,this.profileDisabled=!1,this.isRestoreDisabled=!0,this.destroyRef=(0,t.WQX)(t.abz),this.logger=this.loggingService.getLogger("nvapp/PerfLimitersComponent")}ngOnInit(){this.listenPerfLimitSlidersMetaData(),this.initPerfLimitSliders(),this.listenScanResultsNotification()}listenPerfLimitSlidersMetaData(){this.perfLimitersService.getManualOcLimitsSliders().pipe((0,Ot.c)(0),(0,h.pQ)(this.destroyRef)).subscribe(([n,e,i,o])=>{this.sliderLimits=n.slice(),this.areSlidersSupported=this.perfLimitersService.hasSupportedSliders(this.sliderLimits),this.fanSettings=e.slice(),this.selectedOcProfile=i,this.isRestoreDisabled=o,this.perfSharedService.updatePerfMarkers([S.mM.NvAppPerfLimitDataEnd])},n=>{this.perfSharedService.updatePerfMarkers([S.mM.NvAppPerfLimitDataEnd]),this.showErrorToast(n)})}initPerfLimitSliders(){this.perfLimitersService.updateManualOcLimitsSliders().pipe((0,h.pQ)(this.destroyRef)).subscribe(g.l,n=>{this.showErrorToast(n)})}listenScanResultsNotification(){this.perfTuningService.getScanResultNotification().pipe((0,h.pQ)(this.destroyRef),(0,P.T)(n=>n.type),(0,mt.F)(),(0,Ot.c)(0)).subscribe(n=>{this.profileDisabled=!n},n=>{this.showErrorToast(n)})}openPerfLimitsInfoDialog(){this.perfLimitersService.showPerfLimitsInfoDialog()}onSliderChange(n,e){this.applyPerfLimitSub?.unsubscribe();let i=[],o=[];n!==j.vy.Unknown&&(n===j.vy.Fan?o=this.fanSettings:i=this.sliderLimits.filter(s=>s.type===n)),o=o.filter(s=>s.sliderSetting.isSupported),i=i.filter(s=>s.isSupported),this.applyPerfLimitSub=this.perfLimitersService.checkConsentAndSetPerfLimits(i,o,e,n).subscribe(g.l,s=>{this.showErrorToast(s)})}unfocusSelect(n){n.source.close()}showErrorToast(n){this.perfSharedService.showErrorToast(n)}trackBySliderType(n,e){return e.type}ngOnDestroy(){this.applyPerfLimitSub?.unsubscribe()}static{this.\u0275fac=function(e){return new(e||a)(t.rXU(v.J6),t.rXU(le.u),t.rXU(Pt.k),t.rXU($t.K))}}static{this.\u0275cmp=t.VBU({type:a,selectors:[["nv-app-perf-limiters"]],features:[t.Jv_([{provide:B.JO,useValue:{overlayPanelClass:"perf-limiter-fan-select"}}])],decls:1,vars:1,consts:[["class","perf-limits-container",4,"ngIf"],[1,"perf-limits-container"],[1,"perf-limit-title-row"],[1,"setting-info-icon-container"],[1,"font-sub1"],["tabindex","0","role","button",1,"material-icons","setting-info-icon","show",3,"click","keydown.enter"],["mat-button","","nvAppTextButtonSpinner","","class","font-button2",3,"buttonText","disabled","click",4,"ngIf"],[1,"font-body2","sliders-main-container"],["class","slider-container",4,"ngFor","ngForOf","ngForTrackBy"],["class","slider-container fan-container",4,"ngIf"],["mat-button","","nvAppTextButtonSpinner","",1,"font-button2",3,"click","buttonText","disabled"],[1,"slider-container"],[4,"ngIf"],["formatTextAs","Decimal","valueEntry","true",3,"valueChange","value","min","max","step","disabled","nvAppAnnouncer","associatedMessage"],[1,"slider-container","fan-container"],[1,"fan-mode-container"],["panelClass","mat-select-font-body2",1,"mat-mdc-select-dark-background","mat-select-font-body2",3,"valueChange","selectionChange","value","disabled"],[3,"value"],["formatTextAs","Decimal","valueEntry","true",3,"value","min","max","step","disabled","nvAppAnnouncer","associatedMessage","valueChange",4,"ngIf"]],template:function(e,i){1&e&&t.DNE(0,he,14,14,"div",0),2&e&&t.Y8G("ngIf",i.areSlidersSupported)},dependencies:[u.Sq,u.bT,U.iV,F.An,B.VO,st.wT,Vt.t,ft.u,nt.L,x.D9],styles:[".perf-limits-container[_ngcontent-%COMP%]{display:flex;align-items:flex-start;flex-direction:column;gap:16px;padding-bottom:16px}.sliders-main-container[_ngcontent-%COMP%]{display:flex;flex-direction:column;width:100%;gap:24px;margin-top:8px}.slider-container[_ngcontent-%COMP%]{display:flex;flex-direction:column;gap:15px}.mat-mdc-select[_ngcontent-%COMP%]{width:auto}.fan-container[_ngcontent-%COMP%]{gap:18px}.perf-limit-title-row[_ngcontent-%COMP%]{display:flex;width:100%;align-items:center;justify-content:space-between}"]})}}return a})();var cn=p(54504);let fe=(()=>{class a{static{this.\u0275fac=function(e){return new(e||a)}}static{this.\u0275cmp=t.VBU({type:a,selectors:[["nv-app-loading-indicator-dots"]],decls:1,vars:0,consts:[[1,"dot-flashing"]],template:function(e,i){1&e&&t.nrm(0,"div",0)},styles:['.dot-flashing[_ngcontent-%COMP%]{position:relative;width:5px;height:5px;border-radius:5px;background-color:var(--primary-900);color:var(--primary-900);animation:_ngcontent-%COMP%_dot-flashing .5s infinite linear alternate;animation-delay:.25s}.dot-flashing[_ngcontent-%COMP%]:before, .dot-flashing[_ngcontent-%COMP%]:after{content:"";display:inline-block;position:absolute;top:0}.dot-flashing[_ngcontent-%COMP%]:before{left:-10px;width:5px;height:5px;border-radius:5px;background-color:var(--primary-900);color:var(--primary-900);animation:_ngcontent-%COMP%_dot-flashing .5s infinite alternate;animation-delay:0s}.dot-flashing[_ngcontent-%COMP%]:after{left:10px;width:5px;height:5px;border-radius:5px;background-color:var(--primary-900);color:var(--primary-900);animation:_ngcontent-%COMP%_dot-flashing .5s infinite alternate;animation-delay:.5s}@keyframes _ngcontent-%COMP%_dot-flashing{0%{background-color:var(--primary-900)}50%,to{background-color:var(--primary-contrast-200)}}']})}}return a})(),_e=(()=>{class a{transform(n){return isNaN(n)}static{this.\u0275fac=function(e){return new(e||a)}}static{this.\u0275pipe=t.EJ8({name:"isNaN",type:a,pure:!0,standalone:!0})}}return a})();const ye=["statsTiles"];function Ce(a,r){if(1&a&&(t.qex(0),t.j41(1,"span",10),t.EFF(2),t.k0s(),t.bVm()),2&a){const n=t.XpG();t.R7$(2),t.JRh(n.gpusInfo[0].Name)}}function be(a,r){if(1&a&&(t.j41(0,"mat-option",14),t.EFF(1),t.k0s()),2&a){const n=r.$implicit;t.Y8G("value",n.index),t.R7$(),t.SpI(" ",n.Name," ")}}function ve(a,r){if(1&a){const n=t.RV6();t.j41(0,"mat-select",11),t.mxI("valueChange",function(i){t.eBV(n);const o=t.XpG();return t.DH7(o.perfSharedService.selectedGpu,i)||(o.perfSharedService.selectedGpu=i),t.Njj(i)}),t.bIt("selectionChange",function(i){t.eBV(n);const o=t.XpG();return t.Njj(o.getSelectedGpu(i))}),t.j41(1,"mat-select-trigger",12),t.EFF(2),t.k0s(),t.DNE(3,be,2,2,"mat-option",13),t.k0s()}if(2&a){const n=t.XpG();t.R50("value",n.perfSharedService.selectedGpu),t.R7$(2),t.JRh(null==n.gpusInfo[n.perfSharedService.selectedGpu]?null:n.gpusInfo[n.perfSharedService.selectedGpu].Name),t.R7$(),t.Y8G("ngForOf",n.gpusInfo)}}function Se(a,r){1&a&&(t.qex(0),t.EFF(1),t.nI1(2,"translate"),t.bVm()),2&a&&(t.R7$(),t.SpI(" ",t.bMT(2,1,"performance.notApplicable")," "))}function xe(a,r){if(1&a&&(t.EFF(0),t.j41(1,"span",6),t.EFF(2),t.nI1(3,"translate"),t.k0s()),2&a){const n=t.XpG(2).$implicit;t.SpI(" ",n.value," "),t.R7$(2),t.SpI(" ",t.bMT(3,2,n.unit)," ")}}function Me(a,r){if(1&a&&(t.j41(0,"span",18),t.DNE(1,Se,3,3,"ng-container",7)(2,xe,4,4,"ng-template",null,3,t.C5r),t.k0s()),2&a){const n=t.sdS(3),e=t.XpG().$implicit;t.R7$(),t.Y8G("ngIf",e.value<0)("ngIfElse",n)}}function Pe(a,r){if(1&a&&(t.j41(0,"span",19)(1,"div",20),t.nrm(2,"nv-app-loading-indicator-dots"),t.k0s(),t.j41(3,"span",21),t.EFF(4),t.nI1(5,"translate"),t.k0s()()),2&a){const n=t.XpG().$implicit;t.R7$(4),t.SpI(" ",t.bMT(5,1,n.unit)," ")}}function Oe(a,r){if(1&a&&(t.j41(0,"div",15)(1,"div",16),t.EFF(2),t.nI1(3,"translate"),t.k0s(),t.DNE(4,Me,4,2,"span",17),t.nI1(5,"isNaN"),t.DNE(6,Pe,6,3,"ng-template",null,2,t.C5r),t.k0s()),2&a){const n=r.$implicit,e=t.sdS(7);t.R7$(),t.Y8G("isMultiLineEllipsis",!0),t.R7$(),t.SpI(" ",t.bMT(3,4,n.name)," "),t.R7$(2),t.Y8G("ngIf",!t.bMT(5,6,n.value))("ngIfElse",e)}}let De=(()=>{class a{constructor(n,e,i,o){this.loggingService=n,this.perfSharedService=e,this.perfStatisticsService=i,this.announcer=o,this.selectedGpu=0,this.gpusInfo=[],this.destroyRef=(0,t.WQX)(t.abz),this.logger=this.loggingService.getLogger("nvapp/PerfStatisticsComponent")}ngOnInit(){this.getGpuInfo(),this.enableAndlistenPerfStatsNotifications()}ngAfterViewInit(){this.statsTiles?.nativeElement?.querySelectorAll(".stats-tile-title")?.forEach(i=>{i?.innerText?.trim().includes(" ")||(i?.classList?.remove("stats-tile-title"),i?.classList?.add("truncate"))})}getGpuInfo(){this.perfSharedService.gpuInfo.pipe((0,h.pQ)(this.destroyRef)).subscribe(n=>{this.gpusInfo=n?.slice()},n=>{this.logger.error("Error during GetGpuInfo call - ",n)})}enableAndlistenPerfStatsNotifications(){this.perfStatisticsService.enableAndRegisterPerfStatsNotifications().pipe((0,h.pQ)(this.destroyRef)).subscribe(g.l,g.l)}getSelectedGpu(n){this.perfSharedService.gpuPerfTuningData.gpuChanged=f.T8.TRUE,this.perfSharedService.selectedGpu=n.value,this.perfSharedService.gpuName=this.gpusInfo[n.value]?.Name,this.announcer.announce(null,this.perfSharedService.gpuName)}ngOnDestroy(){this.perfStatisticsService.disablePerfStatsNotifications()}static{this.\u0275fac=function(e){return new(e||a)(t.rXU(v.J6),t.rXU(Pt.k),t.rXU(on.q),t.rXU(ln.x))}}static{this.\u0275cmp=t.VBU({type:a,selectors:[["nv-app-perf-statistics"]],viewQuery:function(e,i){if(1&e&&t.GBs(ye,5),2&e){let o;t.mGM(o=t.lsd())&&(i.statsTiles=o.first)}},features:[t.Jv_([{provide:B.JO,useValue:{overlayPanelClass:"perf-stats-gpu-select"}}])],decls:12,vars:6,consts:[["showMultiGpuSelect",""],["statsTiles",""],["loadingDots",""],["validMetric",""],[1,"statistics-container"],["tabindex","0",1,"gpu-select-row"],[1,"font-sub1"],[4,"ngIf","ngIfElse"],[1,"stats-tiles-container"],["class","stats-tile geometry-rounded-lg","tabindex","0",4,"ngFor","ngForOf"],[1,"font-body2"],["panelClass","mat-select-font-body2 mat-mdc-select-transparent-background-panel",1,"gpu-select-override","mat-mdc-select-transparent-background",3,"valueChange","selectionChange","value"],[1,"dropdown-trigger","font-body2"],[3,"value",4,"ngFor","ngForOf"],[3,"value"],["tabindex","0",1,"stats-tile","geometry-rounded-lg"],["nvEllipsifiedTextWithTooltip","","tooltipClass","mat-tooltip-font-body3",1,"stats-tile-title","font-body2",3,"isMultiLineEllipsis"],["class","font-header5",4,"ngIf","ngIfElse"],[1,"font-header5"],[1,"metric-value-container"],[1,"loading-dots-container"],[1,"font-sub1","units-container"]],template:function(e,i){if(1&e&&(t.j41(0,"div",4)(1,"div",5)(2,"div",6),t.EFF(3),t.nI1(4,"translate"),t.k0s(),t.DNE(5,Ce,3,1,"ng-container",7)(6,ve,4,3,"ng-template",null,0,t.C5r),t.k0s(),t.j41(8,"div",8,1),t.DNE(10,Oe,8,8,"div",9),t.k0s(),t.nrm(11,"mat-divider"),t.k0s()),2&e){const o=t.sdS(7);t.R7$(3),t.SpI(" ",t.bMT(4,4,"performance.statistics")," "),t.R7$(2),t.Y8G("ngIf",1===i.gpusInfo.length)("ngIfElse",o),t.R7$(5),t.Y8G("ngForOf",i.perfStatisticsService.perfMetricsForDisplay)}},dependencies:[u.Sq,u.bT,X.q,B.VO,B.$2,st.wT,cn.a,fe,x.D9,_e],styles:["[_ngcontent-%COMP%]:root{--hig-marquee-ratio: .3229;--hig-marquee-parent-container-width: 100vw;--hig-marquee-container-height: calc(var(--hig-marquee-ratio) * 100vw);--hig-marquee-corner-column: 56px;--hig-marquee-text-column: 14vw;--hig-marquee-padded-image-first-row: calc(var(--hig-marquee-ratio) * (100vw - var(--hig-marquee-corner-column) - var(--hig-marquee-text-column)));--hig-marquee-padded-image-second-row: calc(var(--hig-marquee-container-height) - var(--hig-marquee-padded-image-first-row))}.ellipsified-text-with-tooltip[_ngcontent-%COMP%]{text-overflow:ellipsis;overflow:hidden}.ellipsified-text-with-tooltip.multi-line-ellipsis[_ngcontent-%COMP%]{display:-webkit-box;-webkit-box-orient:vertical;white-space:wrap}.ellipsified-text-with-tooltip.single-line-ellipsis[_ngcontent-%COMP%]{white-space:nowrap}[_ngcontent-%COMP%]:root{--rwd-column-count: 4;--rwd-gutter-count: 3 ;--rwd-gutter-size: 8px;--rwd-container-side-spacing: 16px;--rwd-column-size: calc((var(--rwd-container-width) - var(--rwd-sidebar-width) - 2 * 16px - 8px * 3 ) / 4);--rwd-sidebar-width: 0px;--rwd-container-width: 100vw}@media screen and (min-width: 480px){[_ngcontent-%COMP%]:root{--rwd-column-count: 6;--rwd-gutter-count: 5 ;--rwd-column-size: calc((var(--rwd-container-width) - var(--rwd-sidebar-width) - 2 * 16px - 8px * 5 ) / 6)}}@media screen and (min-width: 720px){[_ngcontent-%COMP%]:root{--rwd-column-count: 8;--rwd-gutter-count: 7 ;--rwd-column-size: calc((var(--rwd-container-width) - var(--rwd-sidebar-width) - 2 * 16px - 8px * 7 ) / 8)}}@media screen and (min-width: 960px){[_ngcontent-%COMP%]:root{--rwd-column-count: 12;--rwd-gutter-count: 11 ;--rwd-container-side-spacing: 24px;--rwd-column-size: calc((var(--rwd-container-width) - var(--rwd-sidebar-width) - 2 * 24px - 8px * 11 ) / 12)}}@media screen and (min-width: 1440px){[_ngcontent-%COMP%]:root{--rwd-gutter-size: 16px;--rwd-column-size: calc((var(--rwd-container-width) - var(--rwd-sidebar-width) - 2 * 24px - 16px * 11 ) / 12)}}.ellipsis[_ngcontent-%COMP%], .truncate[_ngcontent-%COMP%], .stats-tile-title[_ngcontent-%COMP%]{text-overflow:ellipsis;overflow:hidden}.statistics-container[_ngcontent-%COMP%]{padding-top:16px;display:flex;justify-content:space-between;flex-direction:column}.gpu-select-row[_ngcontent-%COMP%]{display:flex;justify-content:space-between;align-items:center}.gpu-select-override[_ngcontent-%COMP%]{width:auto;min-width:250px}.truncate[_ngcontent-%COMP%]{word-break:break-word;-webkit-box-orient:vertical;-webkit-line-clamp:1;display:-webkit-box}.stats-tile-title[_ngcontent-%COMP%]{-webkit-box-orient:vertical;-webkit-line-clamp:2;display:-webkit-box}.stats-tiles-container[_ngcontent-%COMP%]{display:grid;grid-template-columns:repeat(auto-fit,minmax(137px,1fr));grid-auto-flow:row;grid-gap:8px;justify-items:stretch;align-items:flex-start;margin-top:16px;justify-content:flex-start}.stats-tile[_ngcontent-%COMP%]{min-width:137px;height:88px;display:flex;flex-direction:column;background:var(--primary-850);justify-content:space-between;align-items:flex-start;padding:8px;box-sizing:border-box;border:var(--perf-statistics-tile-border-width) solid var(--perf-statistics-tile-border-color)}mat-divider[_ngcontent-%COMP%]{margin-top:16px}@media screen and (min-width: 304px) and (max-width: 1279px){.stats-tiles-container[_ngcontent-%COMP%]{grid-template-columns:repeat(auto-fit,minmax(202px,1fr))}}@media screen and (min-width: 1440px){.stats-tiles-container[_ngcontent-%COMP%]{grid-gap:16px}}.loading-dots-container[_ngcontent-%COMP%]{margin:0 10px}.units-container[_ngcontent-%COMP%]{margin-left:8px}.metric-value-container[_ngcontent-%COMP%]{display:flex;align-items:center}"]})}}return a})();const we=a=>({enabled:!0,section:a});function Ie(a,r){1&a&&(t.j41(0,"div",4),t.nrm(1,"mat-progress-spinner",5),t.k0s())}function Re(a,r){1&a&&(t.j41(0,"div",7),t.nrm(1,"nv-app-perf-auto-tuning")(2,"mat-divider")(3,"nv-app-perf-limiters"),t.k0s())}function Te(a,r){if(1&a&&(t.j41(0,"div",8),t.nrm(1,"mat-icon",9),t.nI1(2,"translate"),t.j41(3,"span"),t.EFF(4),t.nI1(5,"translate"),t.k0s()()),2&a){const n=t.XpG(2);t.R7$(),t.BMQ("aria-label",t.bMT(2,2,n.notSupportedMessaging)),t.R7$(3),t.JRh(t.bMT(5,4,n.notSupportedMessaging))}}function ke(a,r){if(1&a&&t.DNE(0,Re,4,0,"div",6)(1,Te,6,6,"ng-template",null,1,t.C5r),2&a){const n=t.sdS(2),e=t.XpG();t.Y8G("ngIf",e.isAutoTuneSupported)("ngIfElse",n)}}let Ge=(()=>{class a{set selectedIndex(n){1===this._tabIndex&&(this.logger.info("Tab changed from performance tab"),this.perfSharedService.sendGpuPerfTuningEvent()),this._tabIndex=n}constructor(n,e,i,o,s){this.loggingService=n,this.perfTuningService=e,this.perfSharedService=i,this.perfStatisticsService=o,this.appConfig=s,this.destroy$=new tt.B7,this.getAutoTuneIsInprogress=!0,this.notSupportedMessaging="",this._tabIndex=0,this.pageHighlightSection=Et.kA.Performance,this.destroyRef=(0,t.WQX)(t.abz),this.logger=this.loggingService.getLogger("nvapp/PerformanceComponent")}ngOnInit(){this.perfSharedService.updatePerfMarkers([S.mM.NvAppPerfRouteEnd,S.mM.NvAppAutoTuningToggleDataStart,S.mM.NvAppPerfLimitDataStart]),this.perfStatisticsService.initialize(),this.appConfig?.featureEnablement?.nvSearch?.enabled||this.perfSharedService.initialize(),this.perfTuningService.initialize(this.destroy$),this.initializeAutoTuningSupported()}initializeAutoTuningSupported(){this.perfSharedService.gpuInfo.pipe((0,I.n)(n=>(this.logger.info("Fetched GPU info",JSON.stringify(n)),n?.length>1?(this.notSupportedMessaging="performance.autoTuningMultiGpuNotSupported",(0,D.of)(!1)):this.perfTuningService.isAutoTuneSupported())),(0,M.M)(n=>{n||(this.logger.info("Auto tuning not supported"),this.notSupportedMessaging=this.notSupportedMessaging?this.notSupportedMessaging:"performance.backgroundOcUnSupported")}),(0,h.pQ)(this.destroyRef)).subscribe(n=>{n||this.perfSharedService.updatePerfMarkers([S.mM.NvAppAutoTuningToggleDataEnd,S.mM.NvAppPerfLimitDataEnd]),this.logger.info("Setting auto tuning support",n),this.isAutoTuneSupported=n,this.getAutoTuneIsInprogress=!1},n=>{this.perfSharedService.updatePerfMarkers([S.mM.NvAppAutoTuningToggleDataEnd,S.mM.NvAppPerfLimitDataEnd]),this.logger.error(n),this.isAutoTuneSupported=!1,this.getAutoTuneIsInprogress=!1})}ngOnDestroy(){1===this._tabIndex&&this.perfSharedService.sendGpuPerfTuningEvent(),this.destroy$.next(),this.destroy$.complete()}static{this.\u0275fac=function(e){return new(e||a)(t.rXU(v.J6),t.rXU($t.K),t.rXU(Pt.k),t.rXU(on.q),t.rXU(an.Vk))}}static{this.\u0275cmp=t.VBU({type:a,selectors:[["nv-app-performance"]],inputs:{selectedIndex:"selectedIndex"},decls:5,vars:5,consts:[["autoTunePerfContainer",""],["autoTuningNotSupported",""],[1,"performance-container",3,"nvappScrollHighlight"],["class","loading-spinner",4,"ngIf","ngIfElse"],[1,"loading-spinner"],["mode","indeterminate","color","accent","diameter","30"],["class","oc-container",4,"ngIf","ngIfElse"],[1,"oc-container"],[1,"scan-unsupported"],["svgIcon","info","tabindex","0","role","img",1,"material-icons","font-body2"]],template:function(e,i){if(1&e&&(t.j41(0,"div",2),t.nrm(1,"nv-app-perf-statistics"),t.DNE(2,Ie,2,0,"div",3)(3,ke,3,2,"ng-template",null,0,t.C5r),t.k0s()),2&e){const o=t.sdS(4);t.Y8G("nvappScrollHighlight",t.eq3(3,we,i.pageHighlightSection)),t.R7$(2),t.Y8G("ngIf",i.getAutoTuneIsInprogress)("ngIfElse",o)}},dependencies:[u.bT,F.An,sn.LG,X.q,jt.p,re,me,De,x.D9],styles:[".performance-container[_ngcontent-%COMP%]{display:flex;flex-direction:column;height:100%}.scan-unsupported[_ngcontent-%COMP%]{margin-top:16px;align-self:center;display:flex;flex-direction:column;align-items:center;gap:10px;flex:1;justify-content:center;max-width:400px}.scan-unsupported[_ngcontent-%COMP%] span[_ngcontent-%COMP%]{text-align:center}.loading-spinner[_ngcontent-%COMP%]{display:flex;align-items:center;justify-content:center;flex:1}.oc-container[_ngcontent-%COMP%]{display:flex;flex-direction:column;gap:16px}"]})}}return a})();var lt=p(17053),c=p(30627),V=p(88081),Qt=p(37898),Jt=p(92616),et=p(98504),pt=p(44296),H=p(26945),Wt=p(8619),dn=p(43615),ct=p(10174),Fe=p(26513),At=p(59859),W=p(67431),R=p(26875),y=p(21912),b=p(3321),Ee=p(168),O=p(26537),gn=p(96306),un=p(3306),Dt=p(97888),dt=p(4418);function $e(a,r){if(1&a&&(t.j41(0,"span",14),t.EFF(1),t.k0s()),2&a){const n=t.XpG().index;t.R7$(),t.SpI("(",n+1,")")}}function je(a,r){1&a&&(t.j41(0,"div",15),t.nrm(1,"mat-icon",16),t.j41(2,"span"),t.EFF(3),t.nI1(4,"translate"),t.k0s()()),2&a&&(t.R7$(3),t.SpI(" ",t.bMT(4,1,"system.display.noDisplayConnected")," "))}function Ve(a,r){if(1&a&&(t.j41(0,"span",24),t.EFF(1),t.k0s()),2&a){const n=t.XpG().$implicit;t.R7$(),t.JRh(n.identifier)}}function Ae(a,r){if(1&a&&t.nrm(0,"mat-icon",25),2&a){const n=t.XpG(5);t.Y8G("svgIcon",n.inActiveDisplayIcon)}}function Ue(a,r){if(1&a&&(t.qex(0),t.j41(1,"span"),t.EFF(2),t.nI1(3,"translate"),t.k0s(),t.bVm()),2&a){const n=t.XpG().$implicit;t.R7$(2),t.JRh(t.bMT(3,1,n.capabilities))}}function Xe(a,r){if(1&a){const n=t.RV6();t.j41(0,"div",18)(1,"mat-checkbox",19),t.bIt("change",function(){const i=t.eBV(n).$implicit,o=t.XpG(4);return t.Njj(o.handleCheckState(i))}),t.j41(2,"div",20),t.DNE(3,Ve,2,1,"span",21)(4,Ae,1,1,"mat-icon",22),t.j41(5,"span",23),t.EFF(6),t.DNE(7,Ue,4,3,"ng-container",12),t.k0s()()()()}if(2&a){const n=r.$implicit;t.R7$(),t.Y8G("checked",!n.inactive)("disabled",n.isDisabled),t.R7$(2),t.Y8G("ngIf",!n.inactive),t.R7$(),t.Y8G("ngIf",n.inactive),t.R7$(2),t.SpI(" ",n.name," "),t.R7$(),t.Y8G("ngIf",null==n?null:n.capabilities)}}function Be(a,r){if(1&a&&(t.qex(0),t.DNE(1,Xe,8,6,"div",17),t.bVm()),2&a){const n=t.XpG().$implicit;t.R7$(),t.Y8G("ngForOf",n.displays)}}function Ne(a,r){1&a&&t.nrm(0,"mat-divider",26)}function Le(a,r){if(1&a&&(t.j41(0,"div",8)(1,"span",9),t.EFF(2),t.DNE(3,$e,2,1,"span",10),t.k0s(),t.DNE(4,je,5,3,"div",11)(5,Be,2,1,"ng-container",12)(6,Ne,1,0,"mat-divider",13),t.k0s()),2&a){const n=r.$implicit,e=r.index,i=t.XpG(2);t.R7$(2),t.SpI("",n.name," "),t.R7$(),t.Y8G("ngIf",(null==i.physicalGpuInfo?null:i.physicalGpuInfo.length)>1),t.R7$(),t.Y8G("ngIf",0===(null==n.displays?null:n.displays.length)),t.R7$(),t.Y8G("ngIf",null==n.displays?null:n.displays.length),t.R7$(),t.Y8G("ngIf",(null==i.physicalGpuInfo?null:i.physicalGpuInfo.length)-1>e)}}function Ye(a,r){if(1&a){const n=t.RV6();t.j41(0,"div",1)(1,"span",2),t.EFF(2),t.nI1(3,"translate"),t.k0s(),t.j41(4,"mat-dialog-content",3),t.DNE(5,Le,7,5,"div",4),t.k0s(),t.j41(6,"mat-dialog-actions",5)(7,"button",6),t.bIt("click",function(){t.eBV(n);const i=t.XpG();return t.Njj(i.onCancelClick())}),t.EFF(8),t.nI1(9,"translate"),t.k0s(),t.j41(10,"button",7),t.nI1(11,"translate"),t.bIt("click",function(){t.eBV(n);const i=t.XpG();return t.Njj(i.onApplyClick())}),t.k0s()()()}if(2&a){const n=t.XpG();t.R7$(2),t.JRh(t.bMT(3,7,"multipleDisplays.manageDisplays.title")),t.R7$(3),t.Y8G("ngForOf",n.physicalGpuInfo),t.R7$(2),t.Y8G("disabled",n.applyInProgress),t.R7$(),t.SpI(" ",t.bMT(9,9,"save.cancel")," "),t.R7$(2),t.Y8G("showSpinner",n.applyInProgress)("buttonText",t.bMT(11,11,"save.apply"))("disabled",!n.isSettingChanged||n.applyInProgress)}}let He=(()=>{class a{constructor(n,e,i,o,s,l,d){this.dialogRef=n,this.displaysService=i,this.multiDisplaysSupportService=o,this.errorHandlerService=s,this.translateService=l,this.displayUtilService=d,this.destroyRef=(0,t.WQX)(t.abz),this.multiCloneSystem=!1,this.LogicalDisplayType=c.QE,this.isSettingChanged=!1,this.applyInProgress=!1,this.inActiveDisplayIcon=b.zG,this.isProcessing=!1,this.logger=e.getLogger("nvapp/SumdManageDisplaysComponent"),this.queueDisplayState=new Ee.f}refreshPhyscialGPUInfo(){this.physicalGpuInfo=this.multiDisplaysSupportService.mergePhysicalAndLogicalDisplayInfo(this.displaysState,this.getGpuAndDisplaysPhysicalInformation),this.removeActiveDisplaysNotPartOfTopology(),this.updateDisableState(),this.updatePrimaryOrCloneText()}updatePrimaryOrCloneText(){this.logger.info("PhysicalGpus and displays are",this.physicalGpuInfo),this.updateNonCloneGdiPrimaryText(),this.updateCloneGroupText()}removeActiveDisplaysNotPartOfTopology(){const n=(0,R.flatMap)(this.displaysState?.topology?.surfaces,e=>e.displays).map(e=>e.nvDisplayId);n?.length>0&&this.physicalGpuInfo.forEach(e=>{e.displays=e.displays.filter(i=>!0===i.inactive||n.includes(i.nvDisplayId))})}updateNonCloneGdiPrimaryText(){const n=(0,R.flatMap)(this.physicalGpuInfo,e=>e.displays.filter(i=>!i.inactive&&0===i.position?.X&&0===i.position?.Y));n?.length>0&&(n[0].capabilities="multipleDisplays.primaryIndicatorWithBracket")}updateCloneGroupText(){let n=0;const e=this.displaysState.topology.surfaces.filter(o=>o.displays.length>1),i=(0,R.flatMap)(this.physicalGpuInfo,o=>o.displays.filter(s=>!s.inactive));e.forEach(o=>{n++,o.displays.forEach(s=>{const l=i.find(d=>d.nvDisplayId===s.nvDisplayId);if(l)if(l.logicalDisplayType=c.QE.CloneDisplay,e.length>1){const d=this.displayUtilService.isClonePrimaryAsGDIPrimary(s)?"system.cloneGroupwithPrimary":"system.cloneGroup";l.capabilities=this.translateService.instant(d,{index:n})}else l.capabilities=this.displayUtilService.isClonePrimaryAsGDIPrimary(s)?"system.clonewithPrimary":"system.clone"})})}updateDisableState(){const n=(0,R.flatMap)(this.physicalGpuInfo,e=>e.displays.filter(i=>!i.inactive));1===n?.length?n[0].isDisabled=!0:n?.forEach(e=>e.isDisabled=!1)}ngOnInit(){(0,T.zV)([this.multiDisplaysSupportService.displayState$,this.multiDisplaysSupportService.gpuAndDisplayPhysicalInformation$]).pipe((0,h.pQ)(this.destroyRef)).subscribe(([n,e])=>{this.displaysState=(0,R.cloneDeep)(n),this.getGpuAndDisplaysPhysicalInformation=Object.assign([],e),this.refreshPhyscialGPUInfo()},g.l)}onCancelClick(){this.dialogRef.close()}onApplyClick(){this.applyInProgress=!0,this.multiDisplaysSupportService.applyStateChange().subscribe(n=>{this.displaysService.openApplyRevertSettingsDialog(this.multiDisplaysSupportService.refreshDisplayState().pipe((0,m.s)(1),(0,ct.u)(!0))),this.dialogRef.close()})}handleCheckState(n){this.logger.info("Display toggled : ",n?.inactive?" checked ":" unchecked "," displayid ",n?.nvDisplayId,"Identifier",n?.identifier," inactive state",n?.inactive),n.logicalDisplayType===c.QE.SurroundDisplay?(this.showErrorToastMessage(),this.refreshPhyscialGPUInfo()):(n.inactive=!n.inactive,this.updateDisableState(),this.queueDisplayState.enqueue({display:n,displayChecked:!n.inactive}),this.processQueue())}processQueue(){if(this.logger.info("Request is in processing ",this.isProcessing,"Queue length",this.queueDisplayState.size()),this.isProcessing||0===this.queueDisplayState.size())return;this.isProcessing=!0;const n=this.queueDisplayState.dequeue(),e=n?.display;this.logger.info("Process the request ",n.displayChecked,"display id ",e?.nvDisplayId,"Identifier",e.identifier),n.displayChecked?this.attachDisplay(e):this.detachDisplay(e)}attachDisplay(n){const e=this.getNewSurface(),i=this.createNewDisplay(n.nvDisplayId,n.gpuId);this.fillPosition(i),e.displays.push(i);const o=this.displaysState?.topology,s=this.displaysState?.inactiveDisplays.findIndex(l=>l.nvDisplayId==l.nvDisplayId);s>-1&&(this.displaysState?.inactiveDisplays?.splice(s,1),this.logger.info("Remove display id",n.nvDisplayId," Identifier",n.identifier," from inactive list and add it in active list","Inactive list is",this.displaysState?.inactiveDisplays)),o.surfaces.push(e),this.validateTopology(o,!1,n.nvDisplayId)}fillPosition(n){let e={left:0,top:0,right:0,bottom:0};this.displaysState?.topology?.surfaces.forEach(i=>{i.displays.forEach(o=>{e=this.unionRect(e,{left:o.position.X,top:o.position.Y,right:o.currentResolution.horizontal+o.position.X,bottom:o.currentResolution.vertical+o.position.Y})})}),n.position={X:e.right,Y:e.top}}getNewSurface(){return{id:this.displaysState?.topology?.surfaces?.length+1,displays:[]}}createNewDisplay(n,e){const i=(0,R.cloneDeep)(b.XC);return i.nvDisplayId=n,i.gpuId=e,i}isEmptyRect(n){return n.left>=n.right||n.top>=n.bottom}unionRect(n,e){return this.isEmptyRect(n)?e:this.isEmptyRect(e)?n:{left:Math.min(n.left,e.left),top:Math.min(n.top,e.top),right:Math.max(n.right,e.right),bottom:Math.max(n.bottom,e.bottom)}}validateTopology(n,e,i){this.logger.info("Validate the topology for display id",i,e?"uncheck":"checked","topology",n),this.multiDisplaysSupportService.setDisplaysState({topology:n,inactiveDisplays:null}).pipe((0,m.s)(1)).subscribe(o=>{this.displaysState=o?.displaysState??this.displaysState,this.isSettingChanged=0===this.queueDisplayState.size(),this.logger.info("successfully validated the topology for display id",i,e?"uncheck":"checked",this.displaysState),this.updateStateAndProcessQueue(e,i)},o=>{this.logger.error("Error occured while validating the topology for display id",i," Error ",o),this.updateStateAndProcessQueue(e,i)})}updateStateAndProcessQueue(n,e){this.isProcessing=!1,this.updateTheStateofDisplays(n,e),this.processQueue()}updateTheStateofDisplays(n,e){let i;i=n?this.displaysState?.inactiveDisplays?.filter(o=>o.nvDisplayId===e):(0,R.flatMap)(this.displaysState?.topology?.surfaces,o=>o.displays.filter(s=>s.nvDisplayId===e)),this.physicalGpuInfo?.forEach(o=>{const s=o.displays?.findIndex(l=>l.nvDisplayId===e);s>-1&&(o.displays[s]={...o.displays[s],...i[0]},o.displays[s].capabilities="")}),this.refreshThePositionOfAllDisplays(),this.updatePrimaryOrCloneText()}refreshThePositionOfAllDisplays(){this.physicalGpuInfo?.forEach(n=>{n?.displays?.forEach(e=>{if(e?.inactive)e.position={X:-1,Y:-1};else{const i=(0,R.flatMap)(this.displaysState?.topology?.surfaces,o=>o.displays.filter(s=>s.nvDisplayId===e.nvDisplayId));i?.length>0&&(e.position.X=i[0]?.position.X,e.position.Y=i[0]?.position.Y)}})})}detachDisplay(n){const e=this.displaysState.topology;let i;if(e.surfaces.forEach((o,s)=>{const l=o.displays.findIndex(d=>d.nvDisplayId===n.nvDisplayId);if(l>-1){i=s,o.displays.splice(l,1);const d={name:n.name,connectorType:n.connectorType,deviceType:n.deviceType,nvDisplayId:n.nvDisplayId,gpuId:n.gpuId};n.capabilities="",this.displaysState.inactiveDisplays.push(d)}}),i>-1){const o=e.surfaces[i];0===o?.displays?.length?e.surfaces.splice(i,1):1==o?.displays?.length&&this.physicalGpuInfo.forEach(s=>{const l=s.displays.find(d=>d.nvDisplayId===o?.displays[0]?.nvDisplayId);l&&(l.capabilities=0===o?.displays[0]?.position.X&&0===o?.displays[0]?.position.Y?"multipleDisplays.primaryIndicatorWithBracket":"")})}this.normalizeSurfaces(e),this.validateTopology(e,!0,n.nvDisplayId)}normalizeSurfaces(n){let e,i=!1;n.surfaces.some((o,s)=>(o.displays.some((l,d)=>0===s&&0===d&&(e=l.position,0===e.X&&0===e.Y)?(i=!0,!0):(l.position.X-=e.X,l.position.Y-=e.Y,!1)),!!i))}showErrorToastMessage(){this.errorHandlerService.showToastMessage({text:"multipleDisplays.manageDisplays.unableToDeactiveTheDisplay",translated:!1}).subscribe()}ngOnDestroy(){!this.applyInProgress&&this.isSettingChanged&&this.multiDisplaysSupportService.cancelStateChange().pipe((0,m.s)(1)).subscribe(g.l,n=>this.logger.error("Failed to cancel the changes",n))}static{this.\u0275fac=function(e){return new(e||a)(t.rXU(O.CP),t.rXU(v.J6),t.rXU(Q.R),t.rXU(q.b),t.rXU(gn.c),t.rXU(x.c$),t.rXU(un.Q))}}static{this.\u0275cmp=t.VBU({type:a,selectors:[["nv-app-sumd-manage-displays"]],decls:1,vars:1,consts:[["class","displays-container common-modal",4,"ngIf"],[1,"displays-container","common-modal"],["mat-dialog-title","",1,"font-header6","title","font-color-primary"],[1,"content","margin-top-4"],["class","gpu-display",4,"ngFor","ngForOf"],["align","end",1,"actions"],["mat-button","",1,"cancel-button","font-button2",3,"click","disabled"],["mat-raised-button","","nvAppTextButtonSpinner","",1,"apply-button","font-button2","mat-accent",3,"click","showSpinner","buttonText","disabled"],[1,"gpu-display"],[1,"font-body1","font-color-primary","gpu-name"],["class","font-body2 font-color-primary",4,"ngIf"],["class","font-body2 no-display flex-row gap-8 align-items-center status-info",4,"ngIf"],[4,"ngIf"],["class","gpu-divider",4,"ngIf"],[1,"font-body2","font-color-primary"],[1,"font-body2","no-display","flex-row","gap-8","align-items-center","status-info"],["svgIcon","info",1,"info-icon"],["class","display",4,"ngFor","ngForOf"],[1,"display"],[1,"manage-display-checkbox",3,"change","checked","disabled"],[1,"checkbox-content"],["class","font-sub1 system-display-box",4,"ngIf"],["class","inactive-icon",3,"svgIcon",4,"ngIf"],[1,"font-body1","font-color-primary"],[1,"font-sub1","system-display-box"],[1,"inactive-icon",3,"svgIcon"],[1,"gpu-divider"]],template:function(e,i){1&e&&t.DNE(0,Ye,12,13,"div",0),2&e&&t.Y8G("ngIf",null==i.physicalGpuInfo?null:i.physicalGpuInfo.length)},dependencies:[u.Sq,u.bT,Dt.Aq,J.tG,et.nM,U.iV,F.An,X.q,dt.So,O.BI,O.Yi,O.E7,ft.u,x.D9],styles:[".displays-container[_ngcontent-%COMP%]{min-width:560px;width:560px;max-height:80vh;box-shadow:0 4px 4px var(--secondary-250),0 4px 4px var(--secondary-250)}.displays-container[_ngcontent-%COMP%] .gpu-display[_ngcontent-%COMP%]{display:flex;flex-direction:column;gap:1px;padding-left:var(--system-item-padding)}.displays-container[_ngcontent-%COMP%] .gpu-display[_ngcontent-%COMP%] .gpu-name[_ngcontent-%COMP%]{padding:12px 0 12px 16px}.displays-container[_ngcontent-%COMP%] .display[_ngcontent-%COMP%]{display:flex;flex-direction:column;gap:10px;margin-left:16px;margin-right:22px}.displays-container[_ngcontent-%COMP%] .no-display[_ngcontent-%COMP%]{margin-left:24px}.displays-container[_ngcontent-%COMP%] .checkbox-content[_ngcontent-%COMP%]{display:flex;gap:16px}.displays-container[_ngcontent-%COMP%] .gpu-divider[_ngcontent-%COMP%]{margin:15px 24px 15px 16px}.displays-container[_ngcontent-%COMP%] .inactive-icon[_ngcontent-%COMP%]{width:27px;height:24px;fill:var(--primary-contrast-900)}",".margin-0[_ngcontent-%COMP%]{margin:0}.padding-0[_ngcontent-%COMP%]{padding:0}.gap-0[_ngcontent-%COMP%]{gap:0px}.margin-top-0[_ngcontent-%COMP%]{margin-top:0}.padding-top-0[_ngcontent-%COMP%]{padding-top:0}.margin-bottom-0[_ngcontent-%COMP%]{margin-bottom:0}.padding-bottom-0[_ngcontent-%COMP%]{padding-bottom:0}.margin-left-0[_ngcontent-%COMP%]{margin-left:0}.padding-left-0[_ngcontent-%COMP%]{padding-left:0}.margin-right-0[_ngcontent-%COMP%]{margin-right:0}.padding-right-0[_ngcontent-%COMP%]{padding-right:0}.margin-4[_ngcontent-%COMP%]{margin:4px}.padding-4[_ngcontent-%COMP%]{padding:4px}.gap-4[_ngcontent-%COMP%]{gap:4px}.margin-top-4[_ngcontent-%COMP%]{margin-top:4px}.padding-top-4[_ngcontent-%COMP%]{padding-top:4px}.margin-bottom-4[_ngcontent-%COMP%]{margin-bottom:4px}.padding-bottom-4[_ngcontent-%COMP%]{padding-bottom:4px}.margin-left-4[_ngcontent-%COMP%]{margin-left:4px}.padding-left-4[_ngcontent-%COMP%]{padding-left:4px}.margin-right-4[_ngcontent-%COMP%]{margin-right:4px}.padding-right-4[_ngcontent-%COMP%]{padding-right:4px}.margin-8[_ngcontent-%COMP%]{margin:8px}.padding-8[_ngcontent-%COMP%]{padding:8px}.gap-8[_ngcontent-%COMP%]{gap:8px}.margin-top-8[_ngcontent-%COMP%]{margin-top:8px}.padding-top-8[_ngcontent-%COMP%]{padding-top:8px}.margin-bottom-8[_ngcontent-%COMP%]{margin-bottom:8px}.padding-bottom-8[_ngcontent-%COMP%]{padding-bottom:8px}.margin-left-8[_ngcontent-%COMP%]{margin-left:8px}.padding-left-8[_ngcontent-%COMP%]{padding-left:8px}.margin-right-8[_ngcontent-%COMP%]{margin-right:8px}.padding-right-8[_ngcontent-%COMP%]{padding-right:8px}.margin-10[_ngcontent-%COMP%]{margin:10px}.padding-10[_ngcontent-%COMP%]{padding:10px}.gap-10[_ngcontent-%COMP%]{gap:10px}.margin-top-10[_ngcontent-%COMP%]{margin-top:10px}.padding-top-10[_ngcontent-%COMP%]{padding-top:10px}.margin-bottom-10[_ngcontent-%COMP%]{margin-bottom:10px}.padding-bottom-10[_ngcontent-%COMP%]{padding-bottom:10px}.margin-left-10[_ngcontent-%COMP%]{margin-left:10px}.padding-left-10[_ngcontent-%COMP%]{padding-left:10px}.margin-right-10[_ngcontent-%COMP%]{margin-right:10px}.padding-right-10[_ngcontent-%COMP%]{padding-right:10px}.margin-12[_ngcontent-%COMP%]{margin:12px}.padding-12[_ngcontent-%COMP%]{padding:12px}.gap-12[_ngcontent-%COMP%]{gap:12px}.margin-top-12[_ngcontent-%COMP%]{margin-top:12px}.padding-top-12[_ngcontent-%COMP%]{padding-top:12px}.margin-bottom-12[_ngcontent-%COMP%]{margin-bottom:12px}.padding-bottom-12[_ngcontent-%COMP%]{padding-bottom:12px}.margin-left-12[_ngcontent-%COMP%]{margin-left:12px}.padding-left-12[_ngcontent-%COMP%]{padding-left:12px}.margin-right-12[_ngcontent-%COMP%]{margin-right:12px}.padding-right-12[_ngcontent-%COMP%]{padding-right:12px}.margin-16[_ngcontent-%COMP%]{margin:16px}.padding-16[_ngcontent-%COMP%]{padding:16px}.gap-16[_ngcontent-%COMP%]{gap:16px}.margin-top-16[_ngcontent-%COMP%]{margin-top:16px}.padding-top-16[_ngcontent-%COMP%]{padding-top:16px}.margin-bottom-16[_ngcontent-%COMP%]{margin-bottom:16px}.padding-bottom-16[_ngcontent-%COMP%]{padding-bottom:16px}.margin-left-16[_ngcontent-%COMP%]{margin-left:16px}.padding-left-16[_ngcontent-%COMP%]{padding-left:16px}.margin-right-16[_ngcontent-%COMP%]{margin-right:16px}.padding-right-16[_ngcontent-%COMP%]{padding-right:16px}.margin-20[_ngcontent-%COMP%]{margin:20px}.padding-20[_ngcontent-%COMP%]{padding:20px}.gap-20[_ngcontent-%COMP%]{gap:20px}.margin-top-20[_ngcontent-%COMP%]{margin-top:20px}.padding-top-20[_ngcontent-%COMP%]{padding-top:20px}.margin-bottom-20[_ngcontent-%COMP%]{margin-bottom:20px}.padding-bottom-20[_ngcontent-%COMP%]{padding-bottom:20px}.margin-left-20[_ngcontent-%COMP%]{margin-left:20px}.padding-left-20[_ngcontent-%COMP%]{padding-left:20px}.margin-right-20[_ngcontent-%COMP%]{margin-right:20px}.padding-right-20[_ngcontent-%COMP%]{padding-right:20px}.margin-24[_ngcontent-%COMP%]{margin:24px}.padding-24[_ngcontent-%COMP%]{padding:24px}.gap-24[_ngcontent-%COMP%]{gap:24px}.margin-top-24[_ngcontent-%COMP%]{margin-top:24px}.padding-top-24[_ngcontent-%COMP%]{padding-top:24px}.margin-bottom-24[_ngcontent-%COMP%]{margin-bottom:24px}.padding-bottom-24[_ngcontent-%COMP%]{padding-bottom:24px}.margin-left-24[_ngcontent-%COMP%]{margin-left:24px}.padding-left-24[_ngcontent-%COMP%]{padding-left:24px}.margin-right-24[_ngcontent-%COMP%]{margin-right:24px}.padding-right-24[_ngcontent-%COMP%]{padding-right:24px}.margin-32[_ngcontent-%COMP%]{margin:32px}.padding-32[_ngcontent-%COMP%]{padding:32px}.gap-32[_ngcontent-%COMP%]{gap:32px}.margin-top-32[_ngcontent-%COMP%]{margin-top:32px}.padding-top-32[_ngcontent-%COMP%]{padding-top:32px}.margin-bottom-32[_ngcontent-%COMP%]{margin-bottom:32px}.padding-bottom-32[_ngcontent-%COMP%]{padding-bottom:32px}.margin-left-32[_ngcontent-%COMP%]{margin-left:32px}.padding-left-32[_ngcontent-%COMP%]{padding-left:32px}.margin-right-32[_ngcontent-%COMP%]{margin-right:32px}.padding-right-32[_ngcontent-%COMP%]{padding-right:32px}.margin-36[_ngcontent-%COMP%]{margin:36px}.padding-36[_ngcontent-%COMP%]{padding:36px}.gap-36[_ngcontent-%COMP%]{gap:36px}.margin-top-36[_ngcontent-%COMP%]{margin-top:36px}.padding-top-36[_ngcontent-%COMP%]{padding-top:36px}.margin-bottom-36[_ngcontent-%COMP%]{margin-bottom:36px}.padding-bottom-36[_ngcontent-%COMP%]{padding-bottom:36px}.margin-left-36[_ngcontent-%COMP%]{margin-left:36px}.padding-left-36[_ngcontent-%COMP%]{padding-left:36px}.margin-right-36[_ngcontent-%COMP%]{margin-right:36px}.padding-right-36[_ngcontent-%COMP%]{padding-right:36px}.flex-row[_ngcontent-%COMP%]{display:flex}.flex-col[_ngcontent-%COMP%]{display:flex;flex-direction:column}.justify-content-space-between[_ngcontent-%COMP%]{justify-content:space-between}.justify-content-center[_ngcontent-%COMP%]{justify-content:center}.align-items-center[_ngcontent-%COMP%]{align-items:center}.flex-none[_ngcontent-%COMP%]{flex:none}","[_ngcontent-%COMP%]:root{--rwd-column-count: 4;--rwd-gutter-count: 3 ;--rwd-gutter-size: 8px;--rwd-container-side-spacing: 16px;--rwd-column-size: calc((var(--rwd-container-width) - var(--rwd-sidebar-width) - 2 * 16px - 8px * 3 ) / 4);--rwd-sidebar-width: 0px;--rwd-container-width: 100vw}@media screen and (min-width: 480px){[_ngcontent-%COMP%]:root{--rwd-column-count: 6;--rwd-gutter-count: 5 ;--rwd-column-size: calc((var(--rwd-container-width) - var(--rwd-sidebar-width) - 2 * 16px - 8px * 5 ) / 6)}}@media screen and (min-width: 720px){[_ngcontent-%COMP%]:root{--rwd-column-count: 8;--rwd-gutter-count: 7 ;--rwd-column-size: calc((var(--rwd-container-width) - var(--rwd-sidebar-width) - 2 * 16px - 8px * 7 ) / 8)}}@media screen and (min-width: 960px){[_ngcontent-%COMP%]:root{--rwd-column-count: 12;--rwd-gutter-count: 11 ;--rwd-container-side-spacing: 24px;--rwd-column-size: calc((var(--rwd-container-width) - var(--rwd-sidebar-width) - 2 * 24px - 8px * 11 ) / 12)}}@media screen and (min-width: 1440px){[_ngcontent-%COMP%]:root{--rwd-gutter-size: 16px;--rwd-column-size: calc((var(--rwd-container-width) - var(--rwd-sidebar-width) - 2 * 24px - 16px * 11 ) / 12)}}[_ngcontent-%COMP%]:root{--hig-marquee-ratio: .3229;--hig-marquee-parent-container-width: 100vw;--hig-marquee-container-height: calc(var(--hig-marquee-ratio) * 100vw);--hig-marquee-corner-column: 56px;--hig-marquee-text-column: 14vw;--hig-marquee-padded-image-first-row: calc(var(--hig-marquee-ratio) * (100vw - var(--hig-marquee-corner-column) - var(--hig-marquee-text-column)));--hig-marquee-padded-image-second-row: calc(var(--hig-marquee-container-height) - var(--hig-marquee-padded-image-first-row))}.ellipsified-text-with-tooltip[_ngcontent-%COMP%]{text-overflow:ellipsis;overflow:hidden}.ellipsified-text-with-tooltip.multi-line-ellipsis[_ngcontent-%COMP%]{display:-webkit-box;-webkit-box-orient:vertical;white-space:wrap}.ellipsified-text-with-tooltip.single-line-ellipsis[_ngcontent-%COMP%]{white-space:nowrap}.ellipsis[_ngcontent-%COMP%]{text-overflow:ellipsis;overflow:hidden}.system-display-box[_ngcontent-%COMP%]{box-sizing:border-box;border:1px solid var(--system-display-border-color);display:flex;width:26px;height:20px;flex-direction:row;align-self:center;justify-content:center;align-items:center}.system-display-box[_ngcontent-%COMP%] span[_ngcontent-%COMP%]{color:var(--system-display-span-color)}.displays-chip[_ngcontent-%COMP%]{height:32px}.accordion-padding[_ngcontent-%COMP%]{padding:14px 0}.accordion-header[_ngcontent-%COMP%]{padding:14px 16px;width:100%}.accordion-header[_ngcontent-%COMP%] mat-icon[_ngcontent-%COMP%]{color:var(--primary-contrast-900)}.info-icon[_ngcontent-%COMP%]{width:16px;height:16px;flex-shrink:0}"]})}}return a})();var hn=p(55347),ze=p(30843),mn=p(29761),qe=p(19392),fn=p(93181);let _n=(()=>{class a{constructor(n){this.loggingService=n,this.svgIconsCache={},this.logger=n.getLogger("nvapp/MultiDisplaysUtilService")}createRects(n){n.append("rect").attr("class","rect-tile").attr("x",0).attr("y",0).attr("width",e=>e.w).attr("height",e=>e.h).style("stroke",e=>e.text?e.isSelected?y.lI:y.Em:y.j7).style("stroke-width",y.FB).style("stroke-dasharray",e=>e.text?"none":y.GL).style("rx",y.ZY).style("ry",y.ZY).style("fill",e=>e.text?e.isHovered?y.WF:y.EH:y.f8)}fetchAllSvgIcons(){if(0===Object.keys(this.svgIconsCache).length){const n=y.xO.map(e=>(0,qe.H)((0,W.JWy)(e)).pipe((0,P.T)(i=>(this.svgIconsCache[e]=i,this.svgIconsCache)),(0,A.W)(i=>(this.logger.error(`Failed to load SVG icon: ${e}`,i),(0,D.of)(this.svgIconsCache)))));return(0,fn.p)(n).pipe((0,P.T)(()=>this.svgIconsCache),(0,m.s)(1))}return(0,D.of)(this.svgIconsCache)}static{this.\u0275fac=function(e){return new(e||a)(t.KVO(v.J6))}}static{this.\u0275prov=t.jDH({token:a,factory:a.\u0275fac,providedIn:"root"})}}return a})();var _t=p(26986),Qe=p(44186),Je=p(33328);const We=(a,r,n,e)=>({top:a,left:r,width:n,visibility:e});let yn=(()=>{class a{constructor(n){this.loggingService=n,this.logger=this.loggingService.getLogger("nvapp/SumdDisplayTooltipComponent")}static{this.\u0275fac=function(e){return new(e||a)(t.rXU(v.J6))}}static{this.\u0275cmp=t.VBU({type:a,selectors:[["nv-app-sumd-display-tooltip"]],inputs:{tooltipForTile:"tooltipForTile"},decls:3,vars:9,consts:[[1,"sumd-displays-tooltip-container",3,"ngStyle"],[1,"sumd-displays-tooltip","geometry-rounded-md",3,"innerHtml"]],template:function(e,i){1&e&&(t.j41(0,"div",0),t.nrm(1,"div",1),t.nI1(2,"trustAsHtml"),t.k0s()),2&e&&(t.Y8G("ngStyle",t.ziG(4,We,(null==i.tooltipForTile?null:i.tooltipForTile.y)+"px",(null==i.tooltipForTile?null:i.tooltipForTile.x)+"px",(null==i.tooltipForTile?null:i.tooltipForTile.w)+"px",i.tooltipForTile.visible?"visible":"hidden")),t.R7$(),t.Y8G("innerHtml",t.bMT(2,2,null==i.tooltipForTile?null:i.tooltipForTile.tooltipText),t.npT))},dependencies:[u.B3,N.eI,Je.O],styles:[".sumd-displays-tooltip-container[_ngcontent-%COMP%]{position:absolute;top:0;left:0;display:flex;justify-content:center;align-items:center;box-sizing:border-box;margin-top:8px;z-index:1}.sumd-displays-tooltip[_ngcontent-%COMP%]{text-align:center;background-color:var(--primary-700);padding:8px;box-shadow:0 4px 4px var(--secondary-240)}"]})}}return a})(),Ze=(()=>{class a{constructor(n,e){this.focusMonitor=n,this.matMenu=e,this.destroyRef=(0,t.WQX)(t.abz)}ngAfterViewInit(){this.matMenu?._allItems?.forEach(n=>{this.focusMonitor.monitor(n._getHostElement(),!0).pipe((0,h.pQ)(this.destroyRef)).subscribe(e=>{e&&"program"===e&&n._getHostElement()?.blur()})})}ngOnDestroy(){this.matMenu?._allItems?.forEach(n=>this.focusMonitor.stopMonitoring(n._getHostElement()))}static{this.\u0275fac=function(e){return new(e||a)(t.rXU(qt.FN),t.rXU(pt.pI))}}static{this.\u0275dir=t.FsC({type:a,selectors:[["mat-menu","nvAppMatMenuPreventProgramFocus",""]]})}}return a})();const Ke=["menuTrigger"],ti=(a,r)=>({top:a,left:r});function ni(a,r){if(1&a){const n=t.RV6();t.j41(0,"button",9),t.bIt("click",function(){t.eBV(n);const i=t.XpG().$implicit,o=t.XpG();return t.Njj(o.cloneDisplay(null==i?null:i.surfaceId))}),t.EFF(1),t.k0s()}if(2&a){const n=t.XpG().$implicit;t.R7$(),t.SpI(" ",n.text," ")}}function ei(a,r){if(1&a&&(t.qex(0),t.DNE(1,ni,2,1,"button",12),t.bVm()),2&a){const n=r.$implicit,e=t.XpG();t.R7$(),t.Y8G("ngIf",e.contextForTile.selectedSurfaceId!==n.surfaceId)}}let ii=(()=>{class a{set contextForTile(n){this._contextForTile=n,this.cloneWithMenuItems=this.getSortedAndFilteredCloneWithMenuItemsForContextGpu(this._contextForTile)}get contextForTile(){return this._contextForTile}set displayMetaData(n){this._displayMetaData=n,this.cloneWithMenuItems=this.getSortedAndFilteredCloneWithMenuItemsForContextGpu(this._contextForTile)}get displayMetaData(){return this._displayMetaData}set currentSurfaces(n){this._currentSurfaces=n}set dirtySurfaces(n){this._dirtySurfaces=n}constructor(n,e,i){this.loggingService=n,this.multiDisplaysSupportService=e,this.displaysService=i,this.isCurrentSurface=!0,this.makePrimaryDisabled=!0,this.extendDisabled=!0,this.menuDisabled=!0,this.isSumdDirty$=new lt.c,this.logger=this.loggingService.getLogger("nvapp/SumdDisplayContextComponent")}ngOnInit(){this.isSumdDirty$=this.multiDisplaysSupportService.isSumdDirty$}ngOnChanges(n){n.contextForTile&&!n.contextForTile.firstChange&&(this.menuTrigger.openMenu(),this.updateMenuButtons())}getSortedAndFilteredCloneWithMenuItemsForContextGpu(n){const e=this._displayMetaData?.map(i=>({text:i?.cloneDisplayContextText,surfaceId:i?.surfaceId,gpuId:i?.gpuId}))?.sort((i,o)=>i.surfaceId-o.surfaceId);return null==n?.gpuId||null===n?.gpuId?e:e.filter(i=>i.gpuId===n?.gpuId&&i.surfaceId!==n.selectedSurfaceId)}updateMenuButtons(){setTimeout(()=>{this.makePrimaryDisabled=this.displayMetaData?.some(n=>n.isPrimary&&n.surfaceId===this.contextForTile?.selectedSurfaceId),this.updateSelectedSurface(),this.extendDisabled=1===this.selectedSurface?.displayItems.length,this.menuDisabled=!1},0)}updateSelectedSurface(){const n=this.isCurrentSurface?this._currentSurfaces:this._dirtySurfaces;this.selectedSurface=n?.find(e=>e.id===this.contextForTile.selectedSurfaceId)}makePrimary(){this.logger.info("Attempting to make primary.."),this.multiDisplaysSupportService.makePrimary(this.displayMetaData,this.contextForTile.selectedSurfaceId)}cloneDisplay(n){this.multiDisplaysSupportService.cloneDisplay(this.displayMetaData,this.contextForTile.selectedSurfaceId,n)}showDisplayIdentifier(){const n=this.selectedSurface.displayItems[0];let e=n?.identifier;e?(n?.logicalDisplayType===c.QE.CloneDisplay&&!n?.isClonePrimary&&(e=this.displaysService.getClonePrimaryDisplayIdentifier(n.cloneGroupId)),this.displaysService.identifyDisplays(!1,[e],`${f.d3.System_Displays}/${n?.name}`)):this.logger.error("display info is either null or identifier is undefined")}identifyDisplayClicked(){if(this.isCurrentSurface)this.showDisplayIdentifier();else{let n=this._dirtySurfaces.find(e=>e.displayItems.length>1&&e.id===this.selectedSurface.id);if(n){const e=n.displayItems,i=e.map(o=>o.identifier);i?this.displaysService.identifyDisplays(!1,i,`${f.d3.System_Displays}/${e[0]?.name}`):this.logger.error("Identifier undefined from clone dirty surfaces")}else{if(n=this._dirtySurfaces.find(e=>e.id===this.selectedSurface.id),n)return void this.showDisplayIdentifier();if(n=this._currentSurfaces.find(e=>e.displayItems.length>1&&e.id===this.selectedSurface.id),n){const e=n.displayItems;let i=e[0]?.identifier;i?(i=this.displaysService.getClonePrimaryDisplayIdentifier(e[0].cloneGroupId),this.displaysService.identifyDisplays(!1,[i],`${f.d3.System_Displays}/${e[0]?.name}`)):this.logger.error("Identifier undefined from clone current surfaces")}else this.logger.error("No selected surface found from clone current surfaces")}}}restoreDefaultClicked(){this.displaysService.restoreDisplayDefaults(this.selectedSurface.displayItems[0])}extendDisplays(){this.logger.info("Attempting to extend displays.."),this.multiDisplaysSupportService.extendDisplays(this.displayMetaData,this.contextForTile.selectedSurfaceId)}static{this.\u0275fac=function(e){return new(e||a)(t.rXU(v.J6),t.rXU(q.b),t.rXU(Q.R))}}static{this.\u0275cmp=t.VBU({type:a,selectors:[["nv-app-sumd-display-context"]],viewQuery:function(e,i){if(1&e&&t.GBs(Ke,5),2&e){let o;t.mGM(o=t.lsd())&&(i.menuTrigger=o.first)}},inputs:{contextForTile:"contextForTile",displayMetaData:"displayMetaData",isCurrentSurface:"isCurrentSurface",currentSurfaces:"currentSurfaces",dirtySurfaces:"dirtySurfaces"},features:[t.OA$],decls:25,vars:28,consts:[["menuTrigger","matMenuTrigger"],["moreMenu","matMenu"],["cloneMenu","matMenu"],[1,"sumd-displays-more-menu",3,"ngStyle"],[1,"menu-container"],["mat-button","",1,"more-icon-button",3,"matMenuTriggerFor"],["nvAppMatMenuPreventProgramFocus","",1,"more-menu"],["mat-menu-item","",1,"menu-item",3,"click","disabled"],["mat-menu-item","",1,"menu-item",3,"matMenuTriggerFor","disabled"],["mat-menu-item","",1,"menu-item",3,"click"],[1,"more-menu"],[4,"ngFor","ngForOf"],["mat-menu-item","","class","menu-item",3,"click",4,"ngIf"]],template:function(e,i){if(1&e){const o=t.RV6();t.j41(0,"div",3)(1,"div",4),t.nrm(2,"button",5,0),t.j41(4,"mat-menu",6,1)(6,"button",7),t.bIt("click",function(){return t.eBV(o),t.Njj(i.makePrimary())}),t.EFF(7),t.nI1(8,"translate"),t.k0s(),t.j41(9,"button",7),t.bIt("click",function(){return t.eBV(o),t.Njj(i.extendDisplays())}),t.EFF(10),t.nI1(11,"translate"),t.k0s(),t.j41(12,"button",8),t.EFF(13),t.nI1(14,"translate"),t.k0s(),t.j41(15,"button",9),t.bIt("click",function(){return t.eBV(o),t.Njj(i.identifyDisplayClicked())}),t.EFF(16),t.nI1(17,"translate"),t.k0s(),t.j41(18,"button",7),t.nI1(19,"async"),t.bIt("click",function(){return t.eBV(o),t.Njj(i.restoreDefaultClicked())}),t.EFF(20),t.nI1(21,"translate"),t.k0s()(),t.j41(22,"mat-menu",10,2),t.DNE(24,ei,2,1,"ng-container",11),t.k0s()()()}if(2&e){const o=t.sdS(5),s=t.sdS(23);t.Y8G("ngStyle",t.l_i(25,ti,(null==i.contextForTile?null:i.contextForTile.y)+"px",(null==i.contextForTile?null:i.contextForTile.x)+"px")),t.R7$(2),t.Y8G("matMenuTriggerFor",o),t.R7$(4),t.Y8G("disabled",i.makePrimaryDisabled),t.R7$(),t.SpI(" ",t.bMT(8,13,"multipleDisplays.makePrimary")," "),t.R7$(2),t.Y8G("disabled",i.extendDisabled),t.R7$(),t.SpI(" ",t.bMT(11,15,"multipleDisplays.extend")," "),t.R7$(2),t.Y8G("matMenuTriggerFor",s)("disabled",(null==i.displayMetaData?null:i.displayMetaData.length)<=1||0===(null==i.cloneWithMenuItems?null:i.cloneWithMenuItems.length)),t.R7$(),t.SpI(" ",t.bMT(14,17,"multipleDisplays.cloneWith")," "),t.R7$(3),t.SpI(" ",t.bMT(17,19,"system.display.identify")," "),t.R7$(2),t.Y8G("disabled",t.bMT(19,21,i.isSumdDirty$)),t.R7$(2),t.SpI(" ",t.bMT(21,23,"system.display.restoreDefaults")," "),t.R7$(4),t.Y8G("ngForOf",i.cloneWithMenuItems)}},dependencies:[u.Sq,u.bT,u.B3,et.tH,U.iV,pt.pI,pt.gy,pt.fS,N.eI,Ze,u.Jj,x.D9],styles:[".sumd-displays-more-menu[_ngcontent-%COMP%]{position:absolute;top:0;left:0;width:0;height:0;z-index:-1}.more-icon-button[_ngcontent-%COMP%]{visibility:hidden}"]})}}return a})();const ai=["canvasBase"];function oi(a,r){if(1&a){const n=t.RV6();t.j41(0,"div",15)(1,"button",16),t.nI1(2,"async"),t.bIt("click",function(){t.eBV(n);const i=t.XpG();return t.Njj(i.onCancelClick())}),t.EFF(3),t.nI1(4,"translate"),t.k0s(),t.j41(5,"button",17),t.nI1(6,"async"),t.nI1(7,"async"),t.nI1(8,"translate"),t.bIt("click",function(){t.eBV(n);const i=t.XpG();return t.Njj(i.onApplyClick())}),t.k0s()()}if(2&a){const n=t.XpG();t.R7$(),t.Y8G("disabled",n.applyInProgress||!0===t.bMT(2,5,n.applyOnLeave$)),t.R7$(2),t.SpI(" ",t.bMT(4,7,"save.cancel")," "),t.R7$(2),t.Y8G("showSpinner",n.applyInProgress||!0===t.bMT(6,9,n.applyOnLeave$))("disabled",n.applyInProgress||!0===t.bMT(7,11,n.applyOnLeave$))("buttonText",t.bMT(8,13,"save.apply"))}}let si=(()=>{class a{constructor(n,e,i,o,s,l,d,_,C,w){this.multiDisplaysSupportService=e,this.multiDisplaysRearrangeService=i,this.displayService=o,this.matDialog=s,this.translateService=l,this.overlayLoadingSpinnerService=d,this.multiDisplaysDatabaseService=_,this.multiDisplaysUtilService=C,this.keyboardMappingService=w,this.destroyRef=(0,t.WQX)(t.abz),this.displayMetaData=[],this.initialDisplayMetaData=[],this.displayMetaDataAtDragStart=[],this.svgIconCacheSubject=new Fe.t(null),this.applyInProgress=!1,this.contextForTile={x:0,y:0,visible:!1,gpuId:null},this.tooltipForTile={x:0,y:0,w:0,visible:!1,tooltipText:""},this.coordinatesTipForTile={x:0,y:0,w:0,visible:!1,tooltipText:""},this.startX=0,this.startY=0,this.isSumdDirty$=new lt.c,this.isSumdDirtyLocalFlag=!1,this.isDragging=!1,this.isCurrentSurface=!0,this.dragHandler=(0,W.$Er)().on("start",this.handleDisplayTileDragStart.bind(this)).on("drag",this.handleDisplayTileDrag.bind(this)).on("end",this.handleDisplayTileDragEnd.bind(this)),this.logger=n.getLogger("nvapp/SumdDisplaysCanvasComponent")}ngAfterViewInit(){this.multiDisplaysUtilService.fetchAllSvgIcons().pipe((0,m.s)(1)).subscribe(n=>{this.svgIconCacheSubject.next(n)}),this.listenForDisplayMetaDataChanges(),this.listenForCurrentSurfaceUpdates(),this.listenForDirtySurfaceUpdates(),this.listenForApplyOnLeave(),this.listenForSumdDirtyState(),this.listenForSelectedSurface()}listenForDisplayMetaDataChanges(){this.gpuDisplayInfoSub=this.multiDisplaysSupportService.displayMetaData$.subscribe(n=>{this.logger.info("SUMD DisplayMetaData received before rescale ",n.length),this.refreshDisplayMetaData(n),this.centerAlignDisplays(),this.checkRescaleDisplayTiles()},n=>this.logger.error(n))}listenForSelectedSurface(){this.selectSurfaceSub=this.multiDisplaysSupportService.selectedSurface.subscribe(n=>{this.logger.info("Selected surface received after selection"),this.displayMetaData?.forEach(e=>{e.isSelected=e.surfaceId===n.id}),this.updateTiles()},n=>this.logger.error(n))}refreshDisplayMetaData(n){this.displayMetaData=[],this.updateTiles(),this.displayMetaData=n,this.updateTiles()}listenForCurrentSurfaceUpdates(){this.currentSurfaceSub?.unsubscribe(),this.currentSurfaceSub=this.multiDisplaysSupportService.surfaces$.pipe((0,Ot.c)(0),(0,I.n)(n=>(this.currentSurfaces=n.slice(),this.isCurrentSurface=!0,this.refreshCanvasTitle()))).subscribe(g.l,n=>this.logger.error(n))}listenForDirtySurfaceUpdates(){this.dirtySurfaceSub?.unsubscribe(),this.dirtySurfaceSub=this.multiDisplaysSupportService.dirtySurfaces$.pipe((0,Ot.c)(0),(0,I.n)(n=>(this.dirtySurfaces=n.slice(),this.isCurrentSurface=!1,this.refreshCanvasTitle()))).subscribe(g.l,n=>this.logger.error(n))}listenForApplyOnLeave(){this.applyOnLeave$=this.multiDisplaysSupportService.applyOnLeave$}listenForSumdDirtyState(){this.isSumdDirty$=this.multiDisplaysSupportService.isSumdDirty$}refreshCanvasTitle(){return this.multiDisplaysSupportService.displayState$.pipe((0,m.s)(1),(0,M.M)(n=>{const e=(0,R.flatMap)(this.currentSurfaces,o=>o.displayItems),i=n?.inactiveDisplays?.length;this.canvasTitle=i>0?this.translateService.instant("multipleDisplays.canvasTitleWithActiveConnectedCount",{active:e.length,connected:i+e.length}):this.translateService.instant("multipleDisplays.canvasTitleWithCount",{active:e.length})}),(0,A.W)(n=>(this.logger.error("Error refreshing canvas title",n),(0,At.$)(n))))}onResize(n){this.logger.info("Resizing triggered."),this.checkRescaleDisplayTiles(),this.centerAlignDisplays()}registerTilesMouseHandler(n){n.on("click",this.displayTileClick.bind(this)).on("mouseover",this.displayTileHoverIn.bind(this)).on("mouseleave",this.displayTileHoverOut.bind(this))}createSurroundPartitions(n){this.displayMetaData.filter(i=>i.surroundInfo?.enabled).forEach(i=>{for(let o=1;o<i.surroundInfo.rows;o++)n.append("line").attr("class","line-surround").attr("x1",0).attr("y1",s=>s.h/i.surroundInfo.rows*o).attr("x2",s=>s.w).attr("y2",s=>s.h/i.surroundInfo.rows*o).attr("stroke",y.Em).style("stroke-width",y.FB).style("display",s=>s.id===i.id?"inline":"none");for(let o=1;o<i.surroundInfo.columns;o++)n.append("line").attr("class","line-surround").attr("x1",s=>s.w/i.surroundInfo.columns*o).attr("y1",0).attr("x2",s=>s.w/i.surroundInfo.columns*o).attr("y2",s=>s.h).attr("stroke",y.Em).style("stroke-width",y.FB).style("display",s=>s.id===i.id?"inline":"none")})}createDisplayIdText(n){n.append("text").attr("font-size",e=>(e.w+e.h)*y.uU+"em").attr("fill",e=>e.isHovered?y.mH:y.Yq).attr("x",e=>e.w/2).attr("y",e=>e.h/2).text(e=>e.text).style("text-anchor","middle").style("dominant-baseline","central")}createMoreMenu(n,e){const i=e[y.Qp],o=e[y.wv];i&&n.append(()=>document.importNode(i.documentElement,!0)).attr("class","more-menu-img").attr("tabindex","0").attr("opacity",1).attr("width",32).attr("height",32).attr("x",s=>s.w-26).attr("y",-4).style("cursor","pointer").on("focus",function(){(0,W.Ltv)(this).attr("opacity",1)}).on("click",this.displayContextClick.bind(this)).on("keyup",this.displayContextClick.bind(this)),o&&n.append(()=>document.importNode(o.documentElement,!0)).attr("class","hover-img").attr("fill","var(--display-canvas-three-dot-svg-hover-fill)").attr("opacity",0).attr("width",32).attr("height",32).attr("x",s=>s.w-26).attr("y",-4).style("cursor","pointer").on("click",this.displayContextClick.bind(this)).on("mouseover",function(){(0,W.Ltv)(this).attr("opacity",1)}).on("mouseout",function(){(0,W.Ltv)(this).attr("opacity",0)})}createPrimaryIcon(n,e){const i=e[y.w_];i&&n.append(()=>document.importNode(i.documentElement,!0)).attr("class","primary-img").attr("opacity",o=>o.isPrimary?1:0).attr("width",24).attr("height",24).attr("x",0).attr("y",o=>o.h-24)}createGsyncImage(n,e){const i=n.data()?.map(s=>s.w>y.UC[0]&&s.h>y.UC[1]&&s.gsyncInfo?.src?s.gsyncInfo?.src:y.$t)[0],o=e[i];o&&n.append(()=>document.importNode(o.documentElement,!0)).attr("class","gsync-img").attr("opacity",s=>s.gsyncInfo?.enabled?1:0).attr("width",s=>y.Aw*s.w*2).attr("height",s=>y.Aw*s.w).attr("x",s=>s.w>y.UC[0]&&s.h>y.UC[1]?4:0).attr("y",2)}updateTileGroupsOnEnter(n){return this.registerTilesMouseHandler(n),this.multiDisplaysUtilService.createRects(n),this.createSurroundPartitions(n),this.createDisplayIdText(n),this.svgIconCacheSubscription?.unsubscribe(),this.svgIconCacheSubscription=this.svgIconCacheSubject.pipe((0,Wt.p)(e=>null!==e),(0,h.pQ)(this.destroyRef)).subscribe({next:e=>{this.createMoreMenu(n,e),this.createPrimaryIcon(n,e),this.createGsyncImage(n,e)},error:e=>{this.logger.error("Error loading SVG assets",e)}}),n}updateTileGroupsOnUpdate(n){return n.selectAll("rect.rect-tile").style("stroke",e=>e.isSelected?y.lI:y.Em).style("stroke-width",y.FB).style("fill",e=>this.isDragging&&e.isSelected?y.g2:e.isHovered?y.WF:y.EH),n.selectAll("text").attr("fill",e=>e.isHovered?y.mH:y.Yq),n}updateTiles(){this.canvasBaseSvg=(0,W.Ltv)(this.canvasBase.nativeElement).select(".display-canvas"),this.canvasGroupElement=this.canvasBaseSvg.select(".display-group"),this.multiDisplaysRearrangeService.reStackTiles(this.displayMetaData),this.canvasInnerGroupElements=this.canvasGroupElement.selectAll("g").data(this.displayMetaData,n=>n.id).join(n=>{const e=n.append("g").attr("transform",i=>`translate(${i.x}, ${i.y})`);return this.displayMetaData.length>1&&e.call(this.dragHandler),this.updateTileGroupsOnEnter(e)},n=>(n.attr("transform",e=>`translate(${e.x}, ${e.y})`),n),n=>{n.remove()}),this.updateTileGroupsOnUpdate(this.canvasInnerGroupElements)}updateOnDragEnd(){this.canvasInnerGroupElements.attr("transform",n=>`translate(${n.x}, ${n.y})`)}handleDisplayTileDragStart(n,e){this.hideToolTip(),this.updateIsSelectedTile(e),this.multiDisplaysRearrangeService.reStackTiles(this.displayMetaData),this.displayMetaDataAtDragStart=(0,R.cloneDeep)(this.displayMetaData)}handleDisplayTileDrag(n,e){this.isDragging=!0,n.subject.x=n.x,n.subject.y=n.y,this.updateDisplayCoordinatesTip(e),this.updateTiles()}handleDisplayTileDragEnd(n){this.isDragging&&(this.isDragging=!1,this.hideCoordinatesTip(),this.hideToolTip(),this.multiDisplaysRearrangeService.isDragAboveThreshold(n.subject,this.initialDisplayMetaData)?(this.multiDisplaysRearrangeService.resolveOverlaps(n.subject,this.displayMetaData),this.multiDisplaysRearrangeService.resolveGaps(this.displayMetaData),this.updateOnDragEnd()):this.displayMetaData=(0,R.cloneDeep)(this.displayMetaDataAtDragStart),this.savePositionsAndNotify(),this.updateTiles())}savePositionsAndNotify(){const n=this.multiDisplaysRearrangeService.isPositionReallyChanged(this.initialDisplayMetaData,this.displayMetaData);this.updatePositionSub?.unsubscribe(),this.updatePositionSub=this.multiDisplaysSupportService.applyUpdatedPositions(this.displayMetaData).pipe((0,m.s)(1)).subscribe(()=>{this.updateIsSumdDirty(n)},e=>this.logger.error(e))}hideCoordinatesTip(){this.coordinatesTipForTile={...this.coordinatesTipForTile,visible:!1}}hideToolTip(){this.tooltipForTile={...this.tooltipForTile,visible:!1}}updateDisplayCoordinatesTip(n){this.multiDisplaysSupportService.updateCoordinatesTip(this.coordinatesTipForTile,this.tooltipForTile,this.displayMetaData,this.startX,this.startY,n)}displayTileClick(n,e){n.stopImmediatePropagation(),n.stopPropagation(),this.updateIsSelectedTile(e)}updateIsSelectedTile(n){this.multiDisplaysSupportService.selectSurfaceById(n.surfaceId)}displayTileHoverIn(n,e){this.multiDisplaysSupportService.updateContextAndTip(this.tooltipForTile,this.contextForTile,this.displayMetaData,this.startX,this.startY,e,this.currentSurfaces,this.dirtySurfaces,this.isCurrentSurface),this.updateTiles()}displayTileHoverOut(n,e){const[i,o]=(0,W.WnM)(n);i>=0&&i<=e.w&&o>=0&&o<=e.h||(this.tooltipForTile.visible=!1,this.displayMetaData.forEach(s=>{s.id===e.id&&(s.isHovered=!1)}),this.updateTiles())}displayContextClick(n,e){this.keyboardMappingService.isMouseOrKeyboardSpaceOrEnterEvent(n)&&(this.contextForTile={x:this.startX+e.x+e.w-28,y:this.startY+e.y+12,visible:!0,selectedSurfaceId:e.id,gpuId:e.gpuId})}updateIsSumdDirty(n){this.isSumdDirtyLocalFlag=n,this.multiDisplaysSupportService.isSumdDirty$=n}centerAlignDisplays(){[this.startX,this.startY]=this.multiDisplaysDatabaseService.getStartAlignedCoordinates(!1),this.startX&&this.startY?this.translateToCenter():setTimeout(()=>{this.fetchSvgWidthHeight(),this.svgWidth&&this.svgHeight?([this.startX,this.startY]=this.multiDisplaysRearrangeService.findStartCoordinates(this.svgWidth,this.svgHeight,this.displayMetaData),this.translateToCenter()):this.logger.info("Skipping center aligning as SVG is not available")},0)}translateToCenter(){this.canvasGroupElement.attr("transform",`translate(${this.startX},${this.startY})`),this.isSumdDirtyLocalFlag||(this.initialDisplayMetaData=(0,R.cloneDeep)(this.displayMetaData))}checkRescaleDisplayTiles(){setTimeout(()=>{if(this.fetchSvgWidthHeight(),!this.svgWidth||!this.svgHeight)return void this.logger.info("Skipping rescaling as SVG is not available");const n=this.multiDisplaysSupportService.rescaleDisplayTiles(this.displayMetaData,this.svgWidth,this.svgHeight,!1);n&&(this.logger.info("SUMD DisplayMetaData received after rescale.",n),this.refreshDisplayMetaData(n),this.centerAlignDisplays())},0)}fetchSvgWidthHeight(){this.canvasBaseSvg&&(this.svgWidth=parseInt(this.canvasBaseSvg.style("width")?.replace("px","")),this.svgHeight=parseInt(this.canvasBaseSvg.style("height")?.replace("px","")))}onApplyClick(){this.applyInProgress=!0,this.confirmAndSaveSub?.unsubscribe(),this.overlayLoadingSpinnerService.triggerOverlaySpinner(!0),this.confirmAndSaveSub=this.commitAndConfirm().pipe((0,dn.j)(()=>{this.overlayLoadingSpinnerService.triggerOverlaySpinner(!1)})).subscribe(g.l,g.l)}commitAndConfirm(){return this.multiDisplaysSupportService.commitSumdTopology().pipe((0,m.s)(1),(0,P.T)(n=>(this.displayService.openApplyRevertSettingsDialog(this.multiDisplaysSupportService.refreshDisplayState().pipe((0,ct.u)(!0))),this.updateIsSumdDirty(!1),this.applyInProgress=!1,this.logger.info("Apply display positions finished."),!0)),(0,A.W)(n=>(this.updateIsSumdDirty(!1),this.applyInProgress=!1,this.logger.error("Error occured while position update."),this.logger.error(n),(0,At.$)(n))))}onCancelClick(){this.cancelSub?.unsubscribe(),this.multiDisplaysSupportService.cancelStateChange().pipe((0,m.s)(1),(0,I.n)(()=>this.multiDisplaysSupportService.refreshDisplayState())).subscribe(()=>{this.updateIsSumdDirty(!1)},n=>this.logger.error(n))}openManageDisplaysDialog(){this.matDialog.open(He,{panelClass:["dialogPaddingRemove","common-dialog"],disableClose:!1})}ngOnDestroy(){this.multiDisplaysDatabaseService.resetFirstCanvasLoad(!1),this.gpuDisplayInfoSub?.unsubscribe(),this.updatePositionSub?.unsubscribe(),this.confirmAndSaveSub?.unsubscribe(),this.cancelSub?.unsubscribe(),this.currentSurfaceSub?.unsubscribe(),this.dirtySurfaceSub?.unsubscribe(),this.displayRescaleSub?.unsubscribe(),this.selectSurfaceSub?.unsubscribe()}static{this.\u0275fac=function(e){return new(e||a)(t.rXU(v.J6),t.rXU(q.b),t.rXU(hn.Z),t.rXU(Q.R),t.rXU(O.bZ),t.rXU(x.c$),t.rXU(ze.t),t.rXU(mn.b),t.rXU(_n),t.rXU(_t.j))}}static{this.\u0275cmp=t.VBU({type:a,selectors:[["nv-app-sumd-displays-canvas"]],viewQuery:function(e,i){if(1&e&&t.GBs(ai,5),2&e){let o;t.mGM(o=t.lsd())&&(i.canvasBase=o.first)}},hostBindings:function(e,i){1&e&&t.bIt("resize",function(s){return i.onResize(s)},!1,t.tSv)},decls:22,vars:22,consts:[["canvasBase",""],[1,"canvas-base-container","geometry-rounded-lg"],[1,"action-row-container-divider","geometry-top-rounded-lg"],[1,"action-row-container"],[1,"font-sub1","font-color-primary"],[1,"action-buttons"],["class","action-row",4,"ngIf"],["mat-button","","matTooltipClass","mat-tooltip-font-body3",1,"font-body2","manage-displays-button",3,"click","matTooltip","disabled"],["svgIcon","edit_settings",1,"material-icons"],[1,"display-section-divider"],[1,"canvas-base","geometry-bottom-rounded-lg"],[1,"display-canvas"],[1,"display-group"],[3,"contextForTile","displayMetaData","currentSurfaces","dirtySurfaces","isCurrentSurface"],[3,"tooltipForTile"],[1,"action-row"],["mat-button","",1,"cancel-button","font-button2",3,"click","disabled"],["mat-button","","nvAppTextButtonSpinner","","mat-raised-button","",1,"font-button2","mat-accent","apply-btn",3,"click","showSpinner","disabled","buttonText"]],template:function(e,i){if(1&e){const o=t.RV6();t.j41(0,"div",1)(1,"div",2)(2,"div",3)(3,"div",4),t.EFF(4),t.nI1(5,"translate"),t.k0s(),t.j41(6,"div",5),t.DNE(7,oi,9,15,"div",6),t.nI1(8,"async"),t.j41(9,"button",7),t.nI1(10,"translate"),t.nI1(11,"async"),t.nI1(12,"translate"),t.bIt("click",function(){return t.eBV(o),t.Njj(i.openManageDisplaysDialog())}),t.nrm(13,"mat-icon",8),t.k0s()()(),t.nrm(14,"mat-divider",9),t.k0s(),t.j41(15,"div",10,0),t.qSk(),t.j41(17,"svg",11),t.nrm(18,"g",12),t.k0s(),t.joV(),t.nrm(19,"nv-app-sumd-display-context",13)(20,"nv-app-sumd-display-tooltip",14)(21,"nv-app-sumd-display-tooltip",14),t.k0s()()}2&e&&(t.R7$(4),t.SpI(" ",t.bMT(5,12,i.canvasTitle)," "),t.R7$(3),t.Y8G("ngIf",!0===t.bMT(8,14,i.isSumdDirty$)),t.R7$(2),t.FS9("matTooltip",t.bMT(10,16,"multipleDisplays.manageDisplays.title")),t.Y8G("disabled",!0===t.bMT(11,18,i.isSumdDirty$)),t.BMQ("aria-label",t.bMT(12,20,"multipleDisplays.manageDisplays.title")),t.R7$(10),t.Y8G("contextForTile",i.contextForTile)("displayMetaData",i.displayMetaData)("currentSurfaces",i.currentSurfaces)("dirtySurfaces",i.dirtySurfaces)("isCurrentSurface",i.isCurrentSurface),t.R7$(),t.Y8G("tooltipForTile",i.tooltipForTile),t.R7$(),t.Y8G("tooltipForTile",i.coordinatesTipForTile))},dependencies:[u.bT,Dt.Aq,U.iV,F.An,Qe.oV,X.q,ft.u,yn,ii,u.Jj,x.D9],styles:[".canvas-base-container[_ngcontent-%COMP%]{display:flex;flex-direction:column;box-shadow:var(--sumd-canvas-base-container-box-shadow)}.canvas-base[_ngcontent-%COMP%]{height:calc(80vh - 454px);min-height:206px;max-height:730px;min-width:832px;max-width:1312px;box-sizing:border-box;position:relative;background-color:var(--sumd-canvas-base-bg-color)}.display-canvas[_ngcontent-%COMP%]{display:flex;justify-content:center;align-items:center;width:100%;height:100%}.display-group[_ngcontent-%COMP%]{display:flex;justify-content:center;align-items:center;fill:var(--hig-button-mat-icon-color)}.action-row-container-divider[_ngcontent-%COMP%]{background-color:var(--sumd-action-row-divider-bg-color);padding:0 16px}.action-row-container[_ngcontent-%COMP%]{display:flex;justify-content:space-between;align-items:center;height:48px}.action-row-container[_ngcontent-%COMP%] .action-row[_ngcontent-%COMP%]{margin-right:16px}.action-row-container[_ngcontent-%COMP%] .action-buttons[_ngcontent-%COMP%]{display:flex;align-items:center;justify-content:right}.action-row-container[_ngcontent-%COMP%] .apply-btn[_ngcontent-%COMP%]{margin-left:8px}.more-icon-button[_ngcontent-%COMP%]{padding:0;min-width:24px;height:24px}.manage-displays-button[_ngcontent-%COMP%]{padding:0;min-width:auto;line-height:initial}"]})}}return a})(),ri=(()=>{class a{constructor(n){this.loggingService=n,this.logger=this.loggingService.getLogger("nvapp/SumdContainerComponent")}static{this.\u0275fac=function(e){return new(e||a)(t.rXU(v.J6))}}static{this.\u0275cmp=t.VBU({type:a,selectors:[["nv-app-sumd-container"]],decls:2,vars:0,consts:[[1,"sumd-container"]],template:function(e,i){1&e&&(t.j41(0,"div",0),t.nrm(1,"nv-app-sumd-displays-canvas"),t.k0s())},dependencies:[si],styles:[".sumd-container[_ngcontent-%COMP%]{width:100%;height:100%}.sumd-title-row[_ngcontent-%COMP%]{display:flex;justify-content:space-between;padding:0 16px;height:48px;align-items:center}"]})}}return a})();var Ut=p(15172),z=p(46906);function li(a,r){if(1&a){const n=t.RV6();t.j41(0,"mat-chip",3),t.bIt("keydown",function(i){const o=t.eBV(n).$implicit,s=t.XpG();return t.Njj(s.rotationClicked(i,o.key))})("click",function(i){const o=t.eBV(n).$implicit,s=t.XpG();return t.Njj(s.rotationClicked(i,o.key))}),t.nrm(1,"mat-icon",4),t.j41(2,"span",5),t.EFF(3),t.nI1(4,"translate"),t.k0s()()}if(2&a){const n=r.$implicit,e=t.XpG();t.Y8G("disabled",e.disabled)("selected",n.key===e.selected),t.R7$(),t.Y8G("svgIcon",n.value.rotationIcon),t.R7$(2),t.JRh(t.bMT(4,4,n.value.rotationLabel))}}let Cn=(()=>{class a{constructor(n){this.keyboardMappingService=n,this.rotationChanged=new t.bkB,this.rotationListMap=b.D0,this.displayHeaders=V.H}rotationClicked(n,e){if(this.disabled)return n.preventDefault(),n.stopImmediatePropagation(),void n.stopPropagation();this.keyboardMappingService.isMouseOrKeyboardSpaceOrEnterEvent(n)&&this.rotationChanged.emit(e)}static{this.\u0275fac=function(e){return new(e||a)(t.rXU(_t.j))}}static{this.\u0275cmp=t.VBU({type:a,selectors:[["nv-app-display-orientation"]],inputs:{selected:"selected",disabled:"disabled"},outputs:{rotationChanged:"rotationChanged"},decls:7,vars:6,consts:[[1,"orientation-container"],[1,"font-body1","font-color-primary"],["selectable","","class","displays-rotation-chip mat-chip-with-icon",3,"disabled","selected","keydown","click",4,"ngFor","ngForOf"],["selectable","",1,"displays-rotation-chip","mat-chip-with-icon",3,"keydown","click","disabled","selected"],[1,"font-color-secondary","rotation-icon",3,"svgIcon"],[1,"font-body2"]],template:function(e,i){1&e&&(t.j41(0,"div",0)(1,"span",1),t.EFF(2),t.nI1(3,"translate"),t.k0s(),t.j41(4,"mat-chip-list"),t.DNE(5,li,5,6,"mat-chip",2),t.nI1(6,"keyvalue"),t.k0s()()),2&e&&(t.R7$(2),t.JRh(t.bMT(3,2,i.displayHeaders.Properties.Orientation)),t.R7$(3),t.Y8G("ngForOf",t.bMT(6,4,i.rotationListMap)))},dependencies:[u.Sq,F.An,z.O_,z.Id,u.lG,x.D9],styles:[".orientation-container[_ngcontent-%COMP%]{display:flex;flex-direction:column;justify-content:center;gap:16px}.displays-rotation-chip[_ngcontent-%COMP%]{height:32px}.rotation-icon[_ngcontent-%COMP%]{width:20px;height:20px;line-height:20px;margin-right:8px}"]})}}return a})();const bn=a=>({"disable-mat-select-trigger":a}),pi=a=>({DisplayName:a});function ci(a,r){if(1&a&&(t.j41(0,"div",30),t.EFF(1),t.nI1(2,"translate"),t.k0s()),2&a){const n=t.XpG();t.R7$(),t.SpI(" ",t.i5U(2,1,"multipleDisplays.displayProperties",t.eq3(4,pi,null==n.displayData?null:n.displayData.name))," ")}}function di(a,r){if(1&a&&(t.j41(0,"div",31),t.EFF(1),t.nI1(2,"translate"),t.k0s()),2&a){const n=t.XpG();t.R7$(),t.SpI(" ",t.bMT(2,1,n.displayHeaders.DisplayProperties)," ")}}function gi(a,r){if(1&a&&(t.j41(0,"div",32),t.EFF(1),t.k0s()),2&a){const n=t.XpG();t.R7$(),t.SpI(" ",n.panelSummary," ")}}function ui(a,r){if(1&a&&(t.j41(0,"div",21),t.EFF(1),t.nI1(2,"translate"),t.k0s()),2&a){const n=t.XpG();t.R7$(),t.SpI(" ",t.bMT(2,1,n.displayHeaders.Properties.ResolutionAndRotation)," ")}}function hi(a,r){if(1&a&&(t.nrm(0,"mat-icon",33),t.nI1(1,"async")),2&a){const n=t.XpG();t.Y8G("ngClass",!0===t.bMT(1,1,n.isSumdDirty$)?"display-disabled-color":"")}}function mi(a,r){1&a&&t.nrm(0,"mat-icon",34)}function fi(a,r){if(1&a&&(t.j41(0,"div",3)(1,"span",18),t.EFF(2),t.nI1(3,"translate"),t.k0s(),t.j41(4,"span",18),t.EFF(5),t.nI1(6,"translate"),t.k0s()()),2&a){const n=t.XpG(2);t.R7$(2),t.SpI(" ",t.bMT(3,2,n.displayHeaders.GlobalSettings.Gsync)," "),t.R7$(3),t.SpI(" ",t.bMT(6,4,n.displayHeaders.Gsync.AllowGsyncSettings),"")}}function _i(a,r){if(1&a&&(t.j41(0,"div",3)(1,"span",18),t.EFF(2),t.nI1(3,"translate"),t.k0s(),t.j41(4,"span",18),t.EFF(5),t.nI1(6,"translate"),t.k0s(),t.j41(7,"span",38),t.EFF(8),t.nI1(9,"translate"),t.k0s()()),2&a){const n=t.XpG(2);t.R7$(2),t.SpI(" ",t.bMT(3,3,n.displayHeaders.GlobalSettings.Gsync)," "),t.R7$(3),t.SpI(" ",t.bMT(6,5,n.displayHeaders.Gsync.PanelTitleVrr),""),t.R7$(3),t.JRh(t.bMT(9,7,n.displayHeaders.Gsync.NonGsyncCompatible))}}function yi(a,r){if(1&a){const n=t.RV6();t.j41(0,"div",35),t.DNE(1,fi,7,6,"div",36)(2,_i,10,9,"div",36),t.j41(3,"mat-slide-toggle",37),t.nI1(4,"translate"),t.mxI("ngModelChange",function(i){t.eBV(n);const o=t.XpG();return t.DH7(null==o.displayData?null:o.displayData.gsyncState.enabled,i)||((null==o.displayData?null:o.displayData.gsyncState).enabled=i),t.Njj(i)}),t.bIt("change",function(){t.eBV(n);const i=t.XpG();return t.Njj(i.onDisplayGsyncStateChange())}),t.k0s()()}if(2&a){const n=t.XpG();t.R7$(),t.Y8G("ngIf",(null==n.displayData?null:n.displayData.gsyncState.gsyncType)===n.gsyncTypes.GSyncCompatible),t.R7$(),t.Y8G("ngIf",(null==n.displayData?null:n.displayData.gsyncState.gsyncType)===n.gsyncTypes.VRR),t.R7$(),t.Y8G("disabled",!n.globalGSyncEnabled),t.R50("ngModel",null==n.displayData?null:n.displayData.gsyncState.enabled),t.Y8G("nvAppAnnouncer",null==n.displayData?null:n.displayData.gsyncState.enabled)("associatedMessage",n.displayHeaders.GlobalSettings.Gsync),t.BMQ("aria-label",t.bMT(4,7,"displayHeaders.GlobalSettings.Gsync"))}}function Ci(a,r){if(1&a&&(t.j41(0,"span",38),t.EFF(1),t.nI1(2,"translate"),t.k0s()),2&a){const n=t.XpG(2);t.R7$(),t.JRh(t.bMT(2,1,n.displayHeaders.Gsync.EnabledGlobally))}}function bi(a,r){if(1&a&&(t.j41(0,"span",38),t.EFF(1),t.nI1(2,"translate"),t.k0s()),2&a){const n=t.XpG(2);t.R7$(),t.JRh(t.bMT(2,1,n.displayHeaders.Gsync.DisabledGlobally))}}function vi(a,r){if(1&a&&(t.j41(0,"div",39)(1,"span",18),t.EFF(2),t.nI1(3,"translate"),t.k0s(),t.DNE(4,Ci,3,3,"span",40)(5,bi,3,3,"span",40),t.k0s()),2&a){const n=t.XpG();t.R7$(2),t.SpI(" ",t.bMT(3,3,n.displayHeaders.GlobalSettings.Gsync)," "),t.R7$(2),t.Y8G("ngIf",n.globalGSyncEnabled),t.R7$(),t.Y8G("ngIf",!n.globalGSyncEnabled)}}function Si(a,r){1&a&&t.nrm(0,"mat-divider")}function xi(a,r){if(1&a){const n=t.RV6();t.j41(0,"div",11)(1,"div",41)(2,"span",18),t.EFF(3),t.nI1(4,"translate"),t.k0s(),t.j41(5,"mat-icon",42),t.nI1(6,"translate"),t.nI1(7,"translate"),t.bIt("click",function(){t.eBV(n);const i=t.XpG();return t.Njj(i.onClickHDCPInfoDialog())})("keydown.enter",function(i){t.eBV(n);const o=t.XpG();return t.Njj(o.onClickHDCPInfoDialog(i))}),t.k0s()(),t.j41(8,"span",21),t.EFF(9),t.nI1(10,"translate"),t.k0s()()}if(2&a){const n=t.XpG();t.R7$(3),t.JRh(t.bMT(4,5,n.displayHeaders.Properties.HdcpStatus)),t.R7$(2),t.qtP("aria-label","",t.bMT(6,7,n.displayHeaders.Properties.HdcpStatus)," ",t.bMT(7,9,"common.info"),""),t.R7$(4),t.JRh(t.bMT(10,11,n.hdcpStausText))}}function Mi(a,r){if(1&a&&(t.j41(0,"mat-option",43),t.EFF(1),t.k0s()),2&a){const n=r.$implicit;t.Y8G("value",n),t.R7$(),t.SpI(" ",n.label," ")}}function Pi(a,r){if(1&a&&(t.j41(0,"mat-optgroup")(1,"div",3)(2,"span"),t.EFF(3),t.nI1(4,"translate"),t.k0s()(),t.DNE(5,Mi,2,2,"mat-option",27),t.k0s()),2&a){const n=r.$implicit;t.R7$(3),t.SpI(" ",t.bMT(4,2,n.value.label)," "),t.R7$(2),t.Y8G("ngForOf",n.value.uiResolutionsList)}}function Oi(a,r){if(1&a&&(t.j41(0,"mat-option",43),t.EFF(1),t.k0s()),2&a){const n=r.$implicit;t.Y8G("value",n),t.R7$(),t.SpI(" ",n.label," ")}}function Di(a,r){1&a&&(t.j41(0,"button",44),t.EFF(1),t.nI1(2,"translate"),t.k0s()),2&a&&(t.R7$(),t.SpI(" ",t.bMT(2,1,"system.display.customizeResolution")," "))}let wi=(()=>{class a{set gsyncGlobalState(n){this._gsyncGlobalState=n,this.globalGSyncEnabled=this.isGSyncEnabledGlobally(this._gsyncGlobalState)}get gsyncGlobalState(){return this._gsyncGlobalState}constructor(n,e,i,o,s,l){this.translateService=e,this.displayService=i,this.dialog=o,this.telemetryUtilsService=s,this.multiDisplaysSupportService=l,this._gsyncGlobalState=c.nX.NotAvailable,this.panelSummary="",this.globalGSyncEnabled=!1,this.gsyncTypes=c.rc,this.rotationListMap=b.D0,this.connectorTypeString="",this.connectorIcon="",this.resolutionGroupMap=new Map,this.hdcpStausText="",this.disableRotation=!1,this.disableResolution=!1,this.panelSummaryResolutionLabel="",this.panelSummaryRefreshRateLabel="",this.destroyRef=(0,t.WQX)(t.abz),this.isSumdDirty$=new lt.c,this.displayHeaders=V.H,this.logger=n.getLogger("nvapp/DisplayPropertiesPanelComponent")}ngOnInit(){this.updateUIControls(),this.listenForSumdDirtyState()}ngOnChanges(n){if(n&&n.displayData&&n.displayData?.isFirstChange())return;let e=!1;const i=n.displayData?.currentValue;n.displayData?.previousValue?.nvDisplayId!==i?.nvDisplayId&&(e=!0),this.updateUIControls(e)}listenForSumdDirtyState(){this.isSumdDirty$=this.multiDisplaysSupportService.isSumdDirty$.pipe((0,M.M)(n=>{this.isExpanded=this.isExpanded&&!n}))}updateUIControls(n=!1){this.clearSubscription(),this.initRotation(),this.disableResolutionControlsIfNeeded(),n&&(this.resolutionGroupMap.clear(),this.selectedRefreshRate=null),this.resolutionListSubscription=this.displayData.resolutionList$.subscribe(e=>{this.buildResolutionList(e)},e=>{this.logger.error(`Failed to fetch resolution list: ${e}`)}),this.buildHdcpStatusString(),this.setPanelSummaryString()}clearSubscription(){this.resolutionListSubscription&&(this.resolutionListSubscription.unsubscribe(),this.resolutionListSubscription=null)}disableResolutionControlsIfNeeded(){this.disableResolution=this.displayData.logicalDisplayType===c.QE.CloneDisplay&&!this.displayData.isClonePrimary}onResolutionChanged(){this.updateSelectedRefreshRate(this.selectedRefreshRate.value),this.logger.info("Selected resolution: ",JSON.stringify(this.currentResolution),"and refresh rate is ",JSON.stringify(this.selectedRefreshRate)),this.displayData.applyResolution({gpuIndex:this.displayData.gpuIndex,displayIndex:this.displayData.index,resolution:{horizontal:this.currentResolution.horizontal,vertical:this.currentResolution.vertical,flags:this.currentResolution.flags,tvFormat:this.currentResolution.tvFormat,refreshRate:this.selectedRefreshRate.value}},b.h4,{connectorType:this.displayData.connectorType,name:this.displayData.name}).pipe((0,m.s)(1),(0,h.pQ)(this.destroyRef)).subscribe(n=>{this.displayService.openApplyRevertSettingsDialog(this.refreshUIStateObs$())},n=>{this.logger.error(`Failed to apply resolution: ${n}`),this.displayService.refreshGpuDisplayInfo().subscribe(g.l,g.l)})}onRefreshRateChanged(){this.logger.info("Selected resolution: ",JSON.stringify(this.currentResolution),"and refresh rate is ",JSON.stringify(this.selectedRefreshRate)),this.displayData.applyResolution({gpuIndex:this.displayData.gpuIndex,displayIndex:this.displayData.index,resolution:{horizontal:this.currentResolution.horizontal,vertical:this.currentResolution.vertical,flags:this.currentResolution.flags,tvFormat:this.currentResolution.tvFormat,refreshRate:this.selectedRefreshRate.value}},b.qX,{connectorType:this.displayData.connectorType,name:this.displayData.name}).pipe((0,m.s)(1),(0,h.pQ)(this.destroyRef)).subscribe(n=>{this.displayService.openApplyRevertSettingsDialog(this.refreshUIStateObs$())},n=>{this.logger.error(`Failed to apply resolution: ${n}`),this.displayService.refreshGpuDisplayInfo().subscribe(g.l,g.l)})}isGSyncEnabledGlobally(n){return n===c.nX.FullscreenOnly||n===c.nX.FullscreenAndWindowed}buildGSyncPanelSummaryString(n){if(this.displayData?.gsyncState.gsyncType!==c.rc.NotSupported){let e=b.KN.get(this.displayData?.gsyncState.gsyncType),i=this.isGSyncEnabledGlobally(this.gsyncGlobalState);i?(this.displayData?.gsyncState.gsyncType===c.rc.VRR||this.displayData?.gsyncState.gsyncType===c.rc.GSyncCompatible)&&(i=this.displayData?.gsyncState.enabled):e="system.display.gSyncPanelSummaryCollapseStateForGsync",e=this.translateService.instant(e,{state:this.translateService.instant(i?"common.on":"common.off")}),e&&n.push(e)}}isDisplayGDIPrimary(){return 0===this.displayData?.position?.X&&0===this.displayData?.position?.Y}setPanelSummaryString(){this.buildConnectorString();const n=[],e=this.translateService.instant("system.display.collapsePanelConnectorText",{connector:this.connectorTypeString});this.buildGSyncPanelSummaryString(n),n.push(e),!0===this.displayData?.hdcpState?.isSupported&&!1===this.displayData?.hdcpState?.hdcpStatus.isUnavailable&&n.push(this.translateService.instant(b.z$)),this.panelSummaryResolutionLabel=this.displayService.getCurrentResolutionLabelForDisplay(this.displayData),this.panelSummaryRefreshRateLabel=this.displayService.getCurrentRefreshRateForDisplay(this.displayData),n.push(this.panelSummaryResolutionLabel,this.panelSummaryRefreshRateLabel),this.isDisplayGDIPrimary()&&n.push(this.translateService.instant("multipleDisplays.primaryIndicator")),this.panelSummary=n.join(" | ")}updateSelectedRefreshRate(n){const e=this.currentResolution?.refreshRates?.find(i=>i.value===n);this.selectedRefreshRate=e||this.currentResolution?.refreshRates[0],this.logger.info(" selected refresh rate is",this.selectedRefreshRate?.label)}getRefreshRateLabel(n){let e="system.display.refreshRateValue";return n.flags.isCustomUnderscan&&(e="system.display.refreshRateValueWithAsterisk"),this.translateService.instant(e,{refreshRate:n.refreshRate})}createUIResolution(n,e){return{...n,refreshRates:[{label:this.getRefreshRateLabel(n),value:n.refreshRate}],label:e}}buildResolutionList(n){this.resolutionGroupMap.clear(),this.currentResolution=null,n?.forEach(e=>{if(this.skipResolution(e))return;const i=this.displayService.buildResolutionMetadata(e,this.displayData),o=this.resolutionGroupMap.get(i.group)||{uiResolutionsList:[],label:i.group?this.translateService.instant(b.kr.get(i.group)):"",group:i.group};this.resolutionGroupMap.has(i.group)||this.resolutionGroupMap.set(i.group,o);const s=this.displayService.findSharedResolution(o,e);if(s)s.refreshRates.push({label:this.getRefreshRateLabel(e),value:e.refreshRate}),s.refreshRates.sort(this.sortRefreshRate),e.flags.isCurrent&&(this.currentResolution=s,this.currentResolution.refreshRate=e.refreshRate);else{const l=this.createUIResolution(e,i.resolution);o.uiResolutionsList.push(l),o.uiResolutionsList.sort(this.sortResolutions),l.flags.isCurrent&&(this.currentResolution=l)}}),!this.currentResolution&&0!==this.resolutionGroupMap.size&&(this.currentResolution=this.resolutionGroupMap?.entries()?.next()?.value[1]?.uiResolutionsList[0]),this.updateSelectedRefreshRate(this.currentResolution?.refreshRate)}sortRefreshRate(n,e){return n.value!==e.value?e.value-n.value:0}sortResolutions(n,e){return e.horizontal!==n.horizontal?e.horizontal-n.horizontal:e.vertical!==n.vertical?e.vertical-n.vertical:0}skipResolution(n){const e={gpuIndex:this.displayData.gpuIndex,index:this.displayData.index};if(!this.displayService.isValidResolution(n,e)||this.displayService.isDisplayPartOfMergedDisplays(e)&&!n.flags.isNative)return!0;if(!n.flags.isCurrent)if(n.flags.isCustom){if(!n.flags.isSupported&&this.displayData?.isHideModeEnabled||!n.flags.isChecked)return!0}else if(!n.flags.isSupported&&(this.displayData?.isHideModeEnabled||!n.flags.isChecked))return!0;return!1}buildConnectorString(){if(b.hR.has(this.displayData?.deviceType)){const n=b.hR.get(this.displayData?.deviceType);this.connectorIcon=n.connectorIcon,this.connectorTypeString=this.translateService.instant(n.connectorType)}else{const n=b.wM.get(this.displayData?.connectorType);n&&(this.connectorIcon=n.connectorIcon,this.connectorTypeString=this.translateService.instant("system.display.connectorFormatText",{connectorType:n.connectorType?this.translateService.instant(n.connectorType):"",connectorTypeSubString:n.connectorSubType?this.translateService.instant(n.connectorSubType):""}))}}buildHdcpStatusString(){this.hdcpStausText=this.isDisplayHDCPNonCapable(this.displayData?.hdcpState?.hdcpStatus)?"common.notSupported":this.displayData?.hdcpState?.hdcpStatus?.isUnavailable?"system.display.hdcpNotSupportedAsConfigured":"common.supported",this.hdcpStausText=this.translateService.instant(this.hdcpStausText)}isDisplayHDCPNonCapable(n){return!(!0!==n?.isUnavailable||!(n.isAbortSrmRevoked||n.isInvalidDisplayID||n.isInvalidGpu||n.isInvalidDisplay||n.isAbortBadDisplay))}isDisplayHDCPCapableButNotConfiguredCorrectly(n){return n?.isUnavailable&&!this.isDisplayHDCPNonCapable(n)}buildHDCPErrorStrings(n){const e=[];for(const i in n)if(n.hasOwnProperty(i)&&n[i]){const o=b.hN[i];o&&e.push(this.translateService.instant(o))}return e}onClickHDCPInfoDialog(n){n?.stopPropagation(),n?.preventDefault();const e={title:this.translateService.instant("system.display.hdcp"),description:this.translateService.instant("system.display.hdcpDiscription"),errors:this.isDisplayHDCPCapableButNotConfiguredCorrectly(this.displayData?.hdcpState?.hdcpStatus)?this.buildHDCPErrorStrings(this.displayData?.hdcpState?.hdcpStatus):void 0};this.dialog.open(Ut.Z,{hasBackdrop:!0,panelClass:["setting-info-modal","dialogPaddingRemove","common-dialog"],data:e}),this.telemetryUtilsService.sendClickEvent(f.EB.HDCPInfoDialog,`${f.d3.System_Displays}/${this.displayData.name}`,!0)}updateRotation(n){this.currentRotationState!==n&&(this.currentRotationState=n,this.logger.info("Updating rotation: ",this.currentRotationState),this.displayService.applyRotation({gpuIndex:this.displayData.gpuIndex,displayIndex:this.displayData.index,rotation:n},{connectorType:this.displayData.connectorType,name:this.displayData.name},this.refreshUIStateObs$()))}onDisplayGsyncStateChange(){this.logger.info("Gsync setting changed",this.displayData?.gsyncState.enabled),this.displayService.applyDisplayGsync({gpuIndex:this.displayData.gpuIndex,displayIndex:this.displayData.index,enabled:this.displayData?.gsyncState.enabled},{connectorType:this.displayData.connectorType,name:this.displayData.name}),this.setPanelSummaryString()}isRotationSupported(){return this.displayService.canEnableRotation({gpuIndex:this.displayData.gpuIndex,index:this.displayData.index},this.displayData)}initRotation(){this.currentRotationState=this.displayData?.rotationState,this.disableRotation=!this.isRotationSupported()}refreshUIStateObs$(){return(0,D.of)(!0).pipe((0,m.s)(1),(0,h.pQ)(this.destroyRef),(0,M.M)(n=>{const e=performance.now();this.updateUIControls();const i=performance.now();this.logger.info("updating UI controls took (ms): ",i-e)}))}ngOnDestroy(){this.clearSubscription()}static{this.\u0275fac=function(e){return new(e||a)(t.rXU(v.J6),t.rXU(x.c$),t.rXU(Q.R),t.rXU(O.bZ),t.rXU(f.AY),t.rXU(q.b))}}static{this.\u0275cmp=t.VBU({type:a,selectors:[["nv-app-display-properties-panel"]],inputs:{isExpanded:"isExpanded",displayData:"displayData",gsyncGlobalState:"gsyncGlobalState"},features:[t.OA$],decls:54,vars:58,consts:[["hideToggle","true",1,"displays-expansion-panel",3,"expandedChange","expanded","ngClass","disabled"],[3,"collapsedHeight","expandedHeight"],[1,"flex-row","accordion-header","hig-button-overlay","justify-content-space-between","align-items-center",3,"ngClass"],[1,"flex-col"],["class","font-sub1 font-color-primary",4,"ngIf"],["class","font-sub1 font-color-primary display-disabled-color",4,"ngIf"],["class","font-body2 font-color-secondary panel-summary",4,"ngIf"],["class","font-body2 font-color-secondary",4,"ngIf"],["svgIcon","chevron_down",3,"ngClass",4,"ngIf"],["svgIcon","chevron_up",4,"ngIf"],[1,"margin-top-16","flex-col","gap-16","margin-bottom-16"],[1,"flex-col","gap-16"],["class","flex-row justify-content-space-between",4,"ngIf"],["class","flex-col","tabindex","0",4,"ngIf"],[4,"ngIf"],[1,"flex-col","gap-24"],[1,"flex-row","gap-16"],[1,"flex-col","gap-16","connector-container-width"],[1,"font-body1","font-color-primary"],[1,"flex-row","gap-12","align-items-center"],[1,"connector-icon",3,"svgIcon"],[1,"font-body2","font-color-secondary"],["class","flex-col gap-16",4,"ngIf"],["panelClass","mat-select-font-body2 mat-opt-group-font-sub2",1,"mat-mdc-select-dark-background","resolution-dropdown-width",3,"ngModelChange","selectionChange","ngModel","disabled"],[1,"dropdown-trigger","font-body2",3,"ngClass"],[4,"ngFor","ngForOf"],["panelClass","mat-select-font-body2",1,"mat-mdc-select-dark-background","refresh-rate-dropdown-width",3,"ngModelChange","selectionChange","disabled","ngModel"],[3,"value",4,"ngFor","ngForOf"],["mat-button","","class","font-button2",4,"ngIf"],[3,"rotationChanged","disabled","selected"],[1,"font-sub1","font-color-primary"],[1,"font-sub1","font-color-primary","display-disabled-color"],[1,"font-body2","font-color-secondary","panel-summary"],["svgIcon","chevron_down",3,"ngClass"],["svgIcon","chevron_up"],[1,"flex-row","justify-content-space-between"],["class","flex-col",4,"ngIf"],["role","switch",3,"ngModelChange","change","disabled","ngModel","nvAppAnnouncer","associatedMessage"],[1,"font-body2","font-color-tertiary"],["tabindex","0",1,"flex-col"],["class","font-body2 font-color-tertiary",4,"ngIf"],[1,"flex-row","setting-info-icon-container"],["svgIcon","info","tabindex","0","role","button",1,"color-white-hue-1","setting-info-icon","show",3,"click","keydown.enter"],[3,"value"],["mat-button","",1,"font-button2"]],template:function(e,i){1&e&&(t.j41(0,"mat-expansion-panel",0),t.nI1(1,"async"),t.nI1(2,"async"),t.mxI("expandedChange",function(s){return t.DH7(i.isExpanded,s)||(i.isExpanded=s),s}),t.j41(3,"mat-expansion-panel-header",1)(4,"div",2)(5,"div",3),t.DNE(6,ci,3,6,"div",4),t.nI1(7,"async"),t.DNE(8,di,3,3,"div",5),t.nI1(9,"async"),t.DNE(10,gi,2,1,"div",6),t.nI1(11,"async"),t.DNE(12,ui,3,3,"div",7),t.k0s(),t.DNE(13,hi,2,3,"mat-icon",8)(14,mi,1,0,"mat-icon",9),t.k0s()(),t.j41(15,"div",10)(16,"div",11),t.DNE(17,yi,5,9,"div",12)(18,vi,6,5,"div",13),t.k0s(),t.DNE(19,Si,1,0,"mat-divider",14),t.j41(20,"div",15)(21,"div",16)(22,"div",17)(23,"span",18),t.EFF(24),t.nI1(25,"translate"),t.k0s(),t.j41(26,"div",19),t.nrm(27,"mat-icon",20),t.j41(28,"span",21),t.EFF(29),t.nI1(30,"translate"),t.k0s()()(),t.DNE(31,xi,11,13,"div",22),t.k0s(),t.j41(32,"div",11)(33,"div",16)(34,"div",11)(35,"span",18),t.EFF(36),t.nI1(37,"translate"),t.k0s(),t.j41(38,"mat-select",23),t.mxI("ngModelChange",function(s){return t.DH7(i.currentResolution,s)||(i.currentResolution=s),s}),t.bIt("selectionChange",function(){return i.onResolutionChanged()}),t.j41(39,"mat-select-trigger",24),t.EFF(40),t.k0s(),t.DNE(41,Pi,6,4,"mat-optgroup",25),t.nI1(42,"keyvalue"),t.k0s()(),t.j41(43,"div",11)(44,"span",18),t.EFF(45),t.nI1(46,"translate"),t.k0s(),t.j41(47,"mat-select",26),t.mxI("ngModelChange",function(s){return t.DH7(i.selectedRefreshRate,s)||(i.selectedRefreshRate=s),s}),t.bIt("selectionChange",function(){return i.onRefreshRateChanged()}),t.j41(48,"mat-select-trigger",24),t.EFF(49),t.k0s(),t.DNE(50,Oi,2,2,"mat-option",27),t.k0s()()(),t.j41(51,"div"),t.DNE(52,Di,3,3,"button",28),t.k0s()(),t.j41(53,"nv-app-display-orientation",29),t.bIt("rotationChanged",function(s){return i.updateRotation(s)}),t.k0s()()()()),2&e&&(t.R50("expanded",i.isExpanded),t.Y8G("ngClass",i.isExpanded?"ex-panel-bg":!0===t.bMT(1,34,i.isSumdDirty$)?"display-panel-disabled":"")("disabled",t.bMT(2,36,i.isSumdDirty$)),t.R7$(3),t.Y8G("collapsedHeight","auto")("expandedHeight","auto"),t.R7$(),t.Y8G("ngClass",i.isExpanded?"bottom-divider":""),t.R7$(2),t.Y8G("ngIf",!1===t.bMT(7,38,i.isSumdDirty$)),t.R7$(2),t.Y8G("ngIf",!0===t.bMT(9,40,i.isSumdDirty$)),t.R7$(2),t.Y8G("ngIf",!i.isExpanded&&!1===t.bMT(11,42,i.isSumdDirty$)),t.R7$(2),t.Y8G("ngIf",i.isExpanded),t.R7$(),t.Y8G("ngIf",!i.isExpanded),t.R7$(),t.Y8G("ngIf",i.isExpanded),t.R7$(3),t.Y8G("ngIf",(null==i.displayData?null:i.displayData.gsyncState.gsyncType)===i.gsyncTypes.VRR||(null==i.displayData?null:i.displayData.gsyncState.gsyncType)===i.gsyncTypes.GSyncCompatible),t.R7$(),t.Y8G("ngIf",(null==i.displayData?null:i.displayData.gsyncState.gsyncType)===i.gsyncTypes.GSyncCapable||(null==i.displayData?null:i.displayData.gsyncState.gsyncType)===i.gsyncTypes.GsyncUltimate),t.R7$(),t.Y8G("ngIf",(null==i.displayData?null:i.displayData.gsyncState.gsyncType)!==i.gsyncTypes.NotSupported),t.R7$(5),t.JRh(t.bMT(25,44,i.displayHeaders.Properties.Connector)),t.R7$(3),t.Y8G("svgIcon",i.connectorIcon),t.R7$(2),t.JRh(t.bMT(30,46,i.connectorTypeString)),t.R7$(2),t.Y8G("ngIf",null==i.displayData||null==i.displayData.hdcpState?null:i.displayData.hdcpState.isSupported),t.R7$(5),t.JRh(t.bMT(37,48,i.displayHeaders.Properties.Resolution)),t.R7$(2),t.R50("ngModel",i.currentResolution),t.Y8G("disabled",i.disableResolution),t.R7$(),t.Y8G("ngClass",t.eq3(54,bn,i.disableResolution)),t.R7$(),t.SpI(" ",null==i.currentResolution?null:i.currentResolution.label," "),t.R7$(),t.Y8G("ngForOf",t.bMT(42,50,i.resolutionGroupMap)),t.R7$(4),t.JRh(t.bMT(46,52,i.displayHeaders.Properties.RefreshRate)),t.R7$(2),t.Y8G("disabled",i.disableResolution),t.R50("ngModel",i.selectedRefreshRate),t.R7$(),t.Y8G("ngClass",t.eq3(56,bn,i.disableResolution)),t.R7$(),t.JRh(null==i.selectedRefreshRate?null:i.selectedRefreshRate.label),t.R7$(),t.Y8G("ngForOf",null==i.currentResolution?null:i.currentResolution.refreshRates),t.R7$(2),t.Y8G("ngIf",!1),t.R7$(),t.Y8G("disabled",i.disableRotation)("selected",i.currentRotationState))},dependencies:[u.YU,u.Sq,u.bT,J.tG,L.BC,L.vS,U.iV,F.An,X.q,B.VO,B.$2,st.wT,st.D7,pn.P2,H.GK,H.Z2,N.PW,nt.L,Cn,x.D9,u.Jj,u.lG],styles:[".connector-icon[_ngcontent-%COMP%]{width:32px;fill:var(--primary-contrast-700)}.connector-container-width[_ngcontent-%COMP%], .resolution-dropdown-width[_ngcontent-%COMP%]{width:380px}.refresh-rate-dropdown-width[_ngcontent-%COMP%]{width:138px}.rotation-icon[_ngcontent-%COMP%]{width:20px;height:20px;line-height:20px;margin-right:6px}",".ex-panel-margin[_ngcontent-%COMP%]{margin:8px 0}.ex-panel-bg[_ngcontent-%COMP%]{background-color:var(--system-common-ex-panel-bg-color)}.dark-divider[_ngcontent-%COMP%]{border-top-color:var(--primary-900)}.bottom-divider[_ngcontent-%COMP%]{border-bottom:1px solid var(--primary-900)}.disable-mat-select-trigger[_ngcontent-%COMP%]{opacity:.38}","[_ngcontent-%COMP%]:root{--rwd-column-count: 4;--rwd-gutter-count: 3 ;--rwd-gutter-size: 8px;--rwd-container-side-spacing: 16px;--rwd-column-size: calc((var(--rwd-container-width) - var(--rwd-sidebar-width) - 2 * 16px - 8px * 3 ) / 4);--rwd-sidebar-width: 0px;--rwd-container-width: 100vw}@media screen and (min-width: 480px){[_ngcontent-%COMP%]:root{--rwd-column-count: 6;--rwd-gutter-count: 5 ;--rwd-column-size: calc((var(--rwd-container-width) - var(--rwd-sidebar-width) - 2 * 16px - 8px * 5 ) / 6)}}@media screen and (min-width: 720px){[_ngcontent-%COMP%]:root{--rwd-column-count: 8;--rwd-gutter-count: 7 ;--rwd-column-size: calc((var(--rwd-container-width) - var(--rwd-sidebar-width) - 2 * 16px - 8px * 7 ) / 8)}}@media screen and (min-width: 960px){[_ngcontent-%COMP%]:root{--rwd-column-count: 12;--rwd-gutter-count: 11 ;--rwd-container-side-spacing: 24px;--rwd-column-size: calc((var(--rwd-container-width) - var(--rwd-sidebar-width) - 2 * 24px - 8px * 11 ) / 12)}}@media screen and (min-width: 1440px){[_ngcontent-%COMP%]:root{--rwd-gutter-size: 16px;--rwd-column-size: calc((var(--rwd-container-width) - var(--rwd-sidebar-width) - 2 * 24px - 16px * 11 ) / 12)}}[_ngcontent-%COMP%]:root{--hig-marquee-ratio: .3229;--hig-marquee-parent-container-width: 100vw;--hig-marquee-container-height: calc(var(--hig-marquee-ratio) * 100vw);--hig-marquee-corner-column: 56px;--hig-marquee-text-column: 14vw;--hig-marquee-padded-image-first-row: calc(var(--hig-marquee-ratio) * (100vw - var(--hig-marquee-corner-column) - var(--hig-marquee-text-column)));--hig-marquee-padded-image-second-row: calc(var(--hig-marquee-container-height) - var(--hig-marquee-padded-image-first-row))}.ellipsified-text-with-tooltip[_ngcontent-%COMP%]{text-overflow:ellipsis;overflow:hidden}.ellipsified-text-with-tooltip.multi-line-ellipsis[_ngcontent-%COMP%]{display:-webkit-box;-webkit-box-orient:vertical;white-space:wrap}.ellipsified-text-with-tooltip.single-line-ellipsis[_ngcontent-%COMP%]{white-space:nowrap}.ellipsis[_ngcontent-%COMP%]{text-overflow:ellipsis;overflow:hidden}.system-display-box[_ngcontent-%COMP%]{box-sizing:border-box;border:1px solid var(--system-display-border-color);display:flex;width:26px;height:20px;flex-direction:row;align-self:center;justify-content:center;align-items:center}.system-display-box[_ngcontent-%COMP%] span[_ngcontent-%COMP%]{color:var(--system-display-span-color)}.displays-chip[_ngcontent-%COMP%]{height:32px}.accordion-padding[_ngcontent-%COMP%]{padding:14px 0}.accordion-header[_ngcontent-%COMP%]{padding:14px 16px;width:100%}.accordion-header[_ngcontent-%COMP%] mat-icon[_ngcontent-%COMP%]{color:var(--primary-contrast-900)}.info-icon[_ngcontent-%COMP%]{width:16px;height:16px;flex-shrink:0}",".margin-0[_ngcontent-%COMP%]{margin:0}.padding-0[_ngcontent-%COMP%]{padding:0}.gap-0[_ngcontent-%COMP%]{gap:0px}.margin-top-0[_ngcontent-%COMP%]{margin-top:0}.padding-top-0[_ngcontent-%COMP%]{padding-top:0}.margin-bottom-0[_ngcontent-%COMP%]{margin-bottom:0}.padding-bottom-0[_ngcontent-%COMP%]{padding-bottom:0}.margin-left-0[_ngcontent-%COMP%]{margin-left:0}.padding-left-0[_ngcontent-%COMP%]{padding-left:0}.margin-right-0[_ngcontent-%COMP%]{margin-right:0}.padding-right-0[_ngcontent-%COMP%]{padding-right:0}.margin-4[_ngcontent-%COMP%]{margin:4px}.padding-4[_ngcontent-%COMP%]{padding:4px}.gap-4[_ngcontent-%COMP%]{gap:4px}.margin-top-4[_ngcontent-%COMP%]{margin-top:4px}.padding-top-4[_ngcontent-%COMP%]{padding-top:4px}.margin-bottom-4[_ngcontent-%COMP%]{margin-bottom:4px}.padding-bottom-4[_ngcontent-%COMP%]{padding-bottom:4px}.margin-left-4[_ngcontent-%COMP%]{margin-left:4px}.padding-left-4[_ngcontent-%COMP%]{padding-left:4px}.margin-right-4[_ngcontent-%COMP%]{margin-right:4px}.padding-right-4[_ngcontent-%COMP%]{padding-right:4px}.margin-8[_ngcontent-%COMP%]{margin:8px}.padding-8[_ngcontent-%COMP%]{padding:8px}.gap-8[_ngcontent-%COMP%]{gap:8px}.margin-top-8[_ngcontent-%COMP%]{margin-top:8px}.padding-top-8[_ngcontent-%COMP%]{padding-top:8px}.margin-bottom-8[_ngcontent-%COMP%]{margin-bottom:8px}.padding-bottom-8[_ngcontent-%COMP%]{padding-bottom:8px}.margin-left-8[_ngcontent-%COMP%]{margin-left:8px}.padding-left-8[_ngcontent-%COMP%]{padding-left:8px}.margin-right-8[_ngcontent-%COMP%]{margin-right:8px}.padding-right-8[_ngcontent-%COMP%]{padding-right:8px}.margin-10[_ngcontent-%COMP%]{margin:10px}.padding-10[_ngcontent-%COMP%]{padding:10px}.gap-10[_ngcontent-%COMP%]{gap:10px}.margin-top-10[_ngcontent-%COMP%]{margin-top:10px}.padding-top-10[_ngcontent-%COMP%]{padding-top:10px}.margin-bottom-10[_ngcontent-%COMP%]{margin-bottom:10px}.padding-bottom-10[_ngcontent-%COMP%]{padding-bottom:10px}.margin-left-10[_ngcontent-%COMP%]{margin-left:10px}.padding-left-10[_ngcontent-%COMP%]{padding-left:10px}.margin-right-10[_ngcontent-%COMP%]{margin-right:10px}.padding-right-10[_ngcontent-%COMP%]{padding-right:10px}.margin-12[_ngcontent-%COMP%]{margin:12px}.padding-12[_ngcontent-%COMP%]{padding:12px}.gap-12[_ngcontent-%COMP%]{gap:12px}.margin-top-12[_ngcontent-%COMP%]{margin-top:12px}.padding-top-12[_ngcontent-%COMP%]{padding-top:12px}.margin-bottom-12[_ngcontent-%COMP%]{margin-bottom:12px}.padding-bottom-12[_ngcontent-%COMP%]{padding-bottom:12px}.margin-left-12[_ngcontent-%COMP%]{margin-left:12px}.padding-left-12[_ngcontent-%COMP%]{padding-left:12px}.margin-right-12[_ngcontent-%COMP%]{margin-right:12px}.padding-right-12[_ngcontent-%COMP%]{padding-right:12px}.margin-16[_ngcontent-%COMP%]{margin:16px}.padding-16[_ngcontent-%COMP%]{padding:16px}.gap-16[_ngcontent-%COMP%]{gap:16px}.margin-top-16[_ngcontent-%COMP%]{margin-top:16px}.padding-top-16[_ngcontent-%COMP%]{padding-top:16px}.margin-bottom-16[_ngcontent-%COMP%]{margin-bottom:16px}.padding-bottom-16[_ngcontent-%COMP%]{padding-bottom:16px}.margin-left-16[_ngcontent-%COMP%]{margin-left:16px}.padding-left-16[_ngcontent-%COMP%]{padding-left:16px}.margin-right-16[_ngcontent-%COMP%]{margin-right:16px}.padding-right-16[_ngcontent-%COMP%]{padding-right:16px}.margin-20[_ngcontent-%COMP%]{margin:20px}.padding-20[_ngcontent-%COMP%]{padding:20px}.gap-20[_ngcontent-%COMP%]{gap:20px}.margin-top-20[_ngcontent-%COMP%]{margin-top:20px}.padding-top-20[_ngcontent-%COMP%]{padding-top:20px}.margin-bottom-20[_ngcontent-%COMP%]{margin-bottom:20px}.padding-bottom-20[_ngcontent-%COMP%]{padding-bottom:20px}.margin-left-20[_ngcontent-%COMP%]{margin-left:20px}.padding-left-20[_ngcontent-%COMP%]{padding-left:20px}.margin-right-20[_ngcontent-%COMP%]{margin-right:20px}.padding-right-20[_ngcontent-%COMP%]{padding-right:20px}.margin-24[_ngcontent-%COMP%]{margin:24px}.padding-24[_ngcontent-%COMP%]{padding:24px}.gap-24[_ngcontent-%COMP%]{gap:24px}.margin-top-24[_ngcontent-%COMP%]{margin-top:24px}.padding-top-24[_ngcontent-%COMP%]{padding-top:24px}.margin-bottom-24[_ngcontent-%COMP%]{margin-bottom:24px}.padding-bottom-24[_ngcontent-%COMP%]{padding-bottom:24px}.margin-left-24[_ngcontent-%COMP%]{margin-left:24px}.padding-left-24[_ngcontent-%COMP%]{padding-left:24px}.margin-right-24[_ngcontent-%COMP%]{margin-right:24px}.padding-right-24[_ngcontent-%COMP%]{padding-right:24px}.margin-32[_ngcontent-%COMP%]{margin:32px}.padding-32[_ngcontent-%COMP%]{padding:32px}.gap-32[_ngcontent-%COMP%]{gap:32px}.margin-top-32[_ngcontent-%COMP%]{margin-top:32px}.padding-top-32[_ngcontent-%COMP%]{padding-top:32px}.margin-bottom-32[_ngcontent-%COMP%]{margin-bottom:32px}.padding-bottom-32[_ngcontent-%COMP%]{padding-bottom:32px}.margin-left-32[_ngcontent-%COMP%]{margin-left:32px}.padding-left-32[_ngcontent-%COMP%]{padding-left:32px}.margin-right-32[_ngcontent-%COMP%]{margin-right:32px}.padding-right-32[_ngcontent-%COMP%]{padding-right:32px}.margin-36[_ngcontent-%COMP%]{margin:36px}.padding-36[_ngcontent-%COMP%]{padding:36px}.gap-36[_ngcontent-%COMP%]{gap:36px}.margin-top-36[_ngcontent-%COMP%]{margin-top:36px}.padding-top-36[_ngcontent-%COMP%]{padding-top:36px}.margin-bottom-36[_ngcontent-%COMP%]{margin-bottom:36px}.padding-bottom-36[_ngcontent-%COMP%]{padding-bottom:36px}.margin-left-36[_ngcontent-%COMP%]{margin-left:36px}.padding-left-36[_ngcontent-%COMP%]{padding-left:36px}.margin-right-36[_ngcontent-%COMP%]{margin-right:36px}.padding-right-36[_ngcontent-%COMP%]{padding-right:36px}.flex-row[_ngcontent-%COMP%]{display:flex}.flex-col[_ngcontent-%COMP%]{display:flex;flex-direction:column}.justify-content-space-between[_ngcontent-%COMP%]{justify-content:space-between}.justify-content-center[_ngcontent-%COMP%]{justify-content:center}.align-items-center[_ngcontent-%COMP%]{align-items:center}.flex-none[_ngcontent-%COMP%]{flex:none}"]})}}return a})();var wt=p(90093),yt=p(75707),It=p(73180);const Ct=.01;function gt(a,r,n){return a>n?a=n:a<r&&(a=r),Number(a.toFixed(2))}const vn={contrastValue:0,contrastMinValue:0,contrastMaxValue:0,brightnessValue:0,brightnessMinValue:0,brightnessMaxValue:0,gammaValue:0,gammaMinValue:0,gammaMaxValue:0},Sn={digitalVibranceValue:0,digitalVibranceMin:0,digitalVibranceMax:0},xn={hueValue:0,hueMin:0,hueMax:0},Ii={title:V.H.Color.ColorAccuracyMode,description:"system.display.colorAccuracyModeInfo.description"},Ri={title:V.H.Color.OutputColorSettings,description:"system.display.outputColorSettingsInfo.description",typicalUsageScenarios:"system.display.outputColorSettingsInfo.typicalUsageScenarios"},Ti={title:V.H.Color.ColorChannel,description:"system.display.colorChannelInfo.description",typicalUsageScenarios:"system.display.colorChannelInfo.typicalUsageScenarios"},ki={title:V.H.Color.ContentType,description:"system.display.contentTypeInfo.description",typicalUsageScenarios:"system.display.contentTypeInfo.typicalUsageScenarios"};var Gi=p(56315),Fi=p(45598),bt=p(44264);const Xt=a=>({"disable-mat-select-trigger":a});function Ei(a,r){if(1&a&&(t.j41(0,"div",24),t.EFF(1),t.k0s()),2&a){const n=t.XpG();t.R7$(),t.SpI(" ",n.panelSummary," ")}}function $i(a,r){if(1&a&&(t.j41(0,"div",25),t.EFF(1),t.nI1(2,"translate"),t.k0s()),2&a){const n=t.XpG();t.R7$(),t.SpI(" ",t.bMT(2,1,n.displayHeaders.Color.AdjustOutputColor)," ")}}function ji(a,r){if(1&a&&(t.nrm(0,"mat-icon",26),t.nI1(1,"async")),2&a){const n=t.XpG();t.Y8G("ngClass",!0===t.bMT(1,1,n.isSumdDirty$)?"display-disabled-color":"")}}function Vi(a,r){1&a&&t.nrm(0,"mat-icon",27)}function Ai(a,r){if(1&a&&(t.j41(0,"mat-option",39),t.EFF(1),t.nI1(2,"translate"),t.k0s()),2&a){const n=r.$implicit;t.Y8G("value",n),t.R7$(),t.SpI(" ",t.bMT(2,2,null==n?null:n.label)," ")}}function Ui(a,r){if(1&a){const n=t.RV6();t.j41(0,"div",35)(1,"span",14),t.EFF(2),t.nI1(3,"translate"),t.k0s(),t.j41(4,"mat-select",36),t.mxI("ngModelChange",function(i){t.eBV(n);const o=t.XpG(2);return t.DH7(o.selectedDesktopColorDepth,i)||(o.selectedDesktopColorDepth=i),t.Njj(i)}),t.bIt("selectionChange",function(){t.eBV(n);const i=t.XpG(2);return t.Njj(i.desktopColorDepthChanged())}),t.j41(5,"mat-select-trigger",37),t.EFF(6),t.nI1(7,"translate"),t.k0s(),t.DNE(8,Ai,3,4,"mat-option",38),t.k0s()()}if(2&a){const n=t.XpG(2);t.R7$(2),t.JRh(t.bMT(3,6,n.displayHeaders.Color.DesktopColorDepth)),t.R7$(2),t.R50("ngModel",n.selectedDesktopColorDepth),t.Y8G("disabled",n.disableOutputColorSettings),t.R7$(),t.Y8G("ngClass",t.eq3(10,Xt,n.disableOutputColorSettings)),t.R7$(),t.SpI(" ",t.bMT(7,8,null==n.selectedDesktopColorDepth?null:n.selectedDesktopColorDepth.label)," "),t.R7$(2),t.Y8G("ngForOf",n.desktopColorDepthList)}}function Xi(a,r){if(1&a&&(t.j41(0,"mat-option",39),t.EFF(1),t.nI1(2,"translate"),t.k0s()),2&a){const n=r.$implicit;t.Y8G("value",n),t.R7$(),t.SpI(" ",t.bMT(2,2,null==n?null:n.label)," ")}}function Bi(a,r){if(1&a){const n=t.RV6();t.j41(0,"div",40)(1,"span",14),t.EFF(2),t.nI1(3,"translate"),t.k0s(),t.j41(4,"mat-select",36),t.mxI("ngModelChange",function(i){t.eBV(n);const o=t.XpG(2);return t.DH7(o.selectedOutputColorDepth,i)||(o.selectedOutputColorDepth=i),t.Njj(i)}),t.bIt("selectionChange",function(){t.eBV(n);const i=t.XpG(2);return t.Njj(i.outputColorDepthChanged())}),t.j41(5,"mat-select-trigger",37),t.EFF(6),t.nI1(7,"translate"),t.k0s(),t.DNE(8,Xi,3,4,"mat-option",38),t.k0s()()}if(2&a){const n=t.XpG(2);t.R7$(2),t.JRh(t.bMT(3,6,n.displayHeaders.Color.OutputColorDepth)),t.R7$(2),t.R50("ngModel",n.selectedOutputColorDepth),t.Y8G("disabled",n.disableOutputColorSettings),t.R7$(),t.Y8G("ngClass",t.eq3(10,Xt,n.disableOutputColorSettings)),t.R7$(),t.SpI(" ",t.bMT(7,8,null==n.selectedOutputColorDepth?null:n.selectedOutputColorDepth.label)," "),t.R7$(2),t.Y8G("ngForOf",n.outputColorDepthList)}}function Ni(a,r){if(1&a&&(t.j41(0,"mat-option",39),t.EFF(1),t.nI1(2,"translate"),t.k0s()),2&a){const n=r.$implicit;t.Y8G("value",n),t.R7$(),t.SpI(" ",t.bMT(2,2,null==n?null:n.label)," ")}}function Li(a,r){if(1&a){const n=t.RV6();t.j41(0,"div",41)(1,"span",14),t.EFF(2),t.nI1(3,"translate"),t.k0s(),t.j41(4,"mat-select",36),t.mxI("ngModelChange",function(i){t.eBV(n);const o=t.XpG(2);return t.DH7(o.selectedOutputColorFormat,i)||(o.selectedOutputColorFormat=i),t.Njj(i)}),t.bIt("selectionChange",function(){t.eBV(n);const i=t.XpG(2);return t.Njj(i.outputColorFormatChanged())}),t.j41(5,"mat-select-trigger",37),t.EFF(6),t.nI1(7,"translate"),t.k0s(),t.DNE(8,Ni,3,4,"mat-option",38),t.k0s()()}if(2&a){const n=t.XpG(2);t.R7$(2),t.JRh(t.bMT(3,6,n.displayHeaders.Color.OutputColorFormat)),t.R7$(2),t.R50("ngModel",n.selectedOutputColorFormat),t.Y8G("disabled",n.disableOutputColorSettings),t.R7$(),t.Y8G("ngClass",t.eq3(10,Xt,n.disableOutputColorSettings)),t.R7$(),t.SpI(" ",t.bMT(7,8,null==n.selectedOutputColorFormat?null:n.selectedOutputColorFormat.label)," "),t.R7$(2),t.Y8G("ngForOf",n.outputColorFormatList)}}function Yi(a,r){if(1&a&&(t.j41(0,"mat-option",39),t.EFF(1),t.nI1(2,"translate"),t.k0s()),2&a){const n=r.$implicit;t.Y8G("value",n),t.R7$(),t.SpI(" ",t.bMT(2,2,null==n?null:n.label)," ")}}function Hi(a,r){if(1&a){const n=t.RV6();t.j41(0,"div",42)(1,"span",14),t.EFF(2),t.nI1(3,"translate"),t.k0s(),t.j41(4,"mat-select",36),t.mxI("ngModelChange",function(i){t.eBV(n);const o=t.XpG(2);return t.DH7(o.selectedDynamicRange,i)||(o.selectedDynamicRange=i),t.Njj(i)}),t.bIt("selectionChange",function(){t.eBV(n);const i=t.XpG(2);return t.Njj(i.dynamicRangeChanged())}),t.j41(5,"mat-select-trigger",37),t.EFF(6),t.nI1(7,"translate"),t.k0s(),t.DNE(8,Yi,3,4,"mat-option",38),t.k0s()()}if(2&a){const n=t.XpG(2);t.R7$(2),t.JRh(t.bMT(3,6,n.displayHeaders.Color.DynamicRange)),t.R7$(2),t.R50("ngModel",n.selectedDynamicRange),t.Y8G("disabled",n.disableOutputColorSettings),t.R7$(),t.Y8G("ngClass",t.eq3(10,Xt,n.disableOutputColorSettings)),t.R7$(),t.SpI(" ",t.bMT(7,8,null==n.selectedDynamicRange?null:n.selectedDynamicRange.label)," "),t.R7$(2),t.Y8G("ngForOf",n.dynamicRangeList)}}function zi(a,r){if(1&a){const n=t.RV6();t.j41(0,"div",19)(1,"div",12)(2,"div",13)(3,"span",14),t.EFF(4),t.nI1(5,"translate"),t.k0s(),t.j41(6,"mat-icon",15),t.nI1(7,"translate"),t.nI1(8,"translate"),t.bIt("click",function(i){t.eBV(n);const o=t.XpG();return t.Njj(o.onClickOutputColorSettingsInfoDialog(i))})("keydown.enter",function(i){t.eBV(n);const o=t.XpG();return t.Njj(o.onClickOutputColorSettingsInfoDialog(i))}),t.k0s()(),t.j41(9,"div",20)(10,"mat-chip-list")(11,"mat-chip",28),t.bIt("click",function(){t.eBV(n);const i=t.XpG();return t.Njj(i.setColorControlledByWhom(!0))})("keyup.enter",function(){t.eBV(n);const i=t.XpG();return t.Njj(i.setColorControlledByWhom(!0))}),t.j41(12,"span",29),t.EFF(13),t.nI1(14,"translate"),t.k0s()(),t.j41(15,"mat-chip",28),t.bIt("click",function(){t.eBV(n);const i=t.XpG();return t.Njj(i.setColorControlledByWhom(!1))})("keyup.enter",function(){t.eBV(n);const i=t.XpG();return t.Njj(i.setColorControlledByWhom(!1))}),t.j41(16,"span",29),t.EFF(17),t.nI1(18,"translate"),t.k0s()()()()(),t.j41(19,"div",30),t.DNE(20,Ui,9,12,"div",31)(21,Bi,9,12,"div",32)(22,Li,9,12,"div",33)(23,Hi,9,12,"div",34),t.k0s()()}if(2&a){const n=t.XpG();t.R7$(4),t.JRh(t.bMT(5,12,n.displayHeaders.Color.OutputColorSettings)),t.R7$(2),t.qtP("aria-label","",t.bMT(7,14,n.displayHeaders.Color.OutputColorSettings)," ",t.bMT(8,16,"common.info"),""),t.R7$(5),t.Y8G("selected",n.isColorSettingsOsControlled),t.R7$(2),t.JRh(t.bMT(14,18,"common.default")),t.R7$(2),t.Y8G("selected",!n.isColorSettingsOsControlled),t.R7$(2),t.JRh(t.bMT(18,20,"system.display.nvidia")),t.R7$(3),t.Y8G("ngIf",n.showDesktopColorDepth),t.R7$(),t.Y8G("ngIf",n.showOutputColorDepth),t.R7$(),t.Y8G("ngIf",n.showOutPutColorFormat),t.R7$(),t.Y8G("ngIf",n.showDynamicRange)}}function qi(a,r){1&a&&t.nrm(0,"mat-divider")}function Qi(a,r){if(1&a){const n=t.RV6();t.j41(0,"mat-chip",43),t.bIt("click",function(){const i=t.eBV(n).$implicit,o=t.XpG();return t.Njj(o.selectColorChannel(i.value))})("keyup.enter",function(){const i=t.eBV(n).$implicit,o=t.XpG();return t.Njj(o.selectColorChannel(i.value))}),t.j41(1,"span",29),t.EFF(2),t.nI1(3,"translate"),t.k0s()()}if(2&a){const n=r.$implicit,e=t.XpG();t.Y8G("selected",e.selectedChannel===n.value)("disabled",e.overrideColorToReferenceMode||e.isCloneSecondaryDisplay),t.R7$(2),t.JRh(t.bMT(3,3,null==n?null:n.label))}}function Ji(a,r){1&a&&t.nrm(0,"mat-divider")}function Wi(a,r){if(1&a){const n=t.RV6();t.qex(0),t.j41(1,"div",44)(2,"span",29),t.EFF(3),t.nI1(4,"translate"),t.k0s(),t.j41(5,"nv-hig-slider",45),t.nI1(6,"translate"),t.mxI("valueChange",function(i){const o=t.eBV(n).$implicit,s=t.XpG();return t.DH7(s[o.dataSource][o.valueProperty],i)||(s[o.dataSource][o.valueProperty]=i),t.Njj(i)}),t.bIt("input",function(i){const o=t.eBV(n).$implicit,s=t.XpG();return t.Njj(s.callHandler(o.inputHandler,i))})("keydown",function(i){t.eBV(n);const o=t.XpG();return t.Njj(o.onSliderKeyDown(i))})("keyup",function(i){t.eBV(n);const o=t.XpG();return t.Njj(o.onSliderKeyUp(i))})("change",function(i){const o=t.eBV(n).$implicit,s=t.XpG();return t.Njj(s.callHandler(o.changeHandler,i))}),t.k0s()(),t.DNE(7,Ji,1,0,"mat-divider",11),t.bVm()}if(2&a){const n=r.$implicit,e=t.XpG();t.R7$(3),t.JRh(t.bMT(4,11,n.translationKey)),t.R7$(2),t.R50("value",e[n.dataSource][n.valueProperty]),t.Y8G("min",null==e[n.dataSource]?null:e[n.dataSource][n.minProperty])("max",null==e[n.dataSource]?null:e[n.dataSource][n.maxProperty])("formatTextAs",n.formatAs)("step",n.step)("disabled",e.overrideColorToReferenceMode||e.isCloneSecondaryDisplay)("nvAppAnnouncer",e[n.dataSource][n.valueProperty])("associatedMessage",n.translationKey),t.BMQ("aria-label",t.bMT(6,13,n.translationKey)),t.R7$(2),t.Y8G("ngIf","gamma"===n.id)}}function Zi(a,r){if(1&a&&(t.j41(0,"mat-option",39),t.EFF(1),t.nI1(2,"translate"),t.k0s()),2&a){const n=r.$implicit;t.Y8G("value",n),t.R7$(),t.SpI(" ",t.bMT(2,2,null==n?null:n.label)," ")}}function Ki(a,r){if(1&a){const n=t.RV6();t.j41(0,"div",12)(1,"div",13)(2,"span",14),t.EFF(3),t.nI1(4,"translate"),t.k0s(),t.j41(5,"mat-icon",15),t.nI1(6,"translate"),t.nI1(7,"translate"),t.bIt("click",function(i){t.eBV(n);const o=t.XpG();return t.Njj(o.onClickContentTypeInfoDialog(i))})("keydown.enter",function(i){t.eBV(n);const o=t.XpG();return t.Njj(o.onClickContentTypeInfoDialog(i))}),t.k0s()(),t.j41(8,"mat-select",46),t.mxI("ngModelChange",function(i){t.eBV(n);const o=t.XpG();return t.DH7(o.selectedContentType,i)||(o.selectedContentType=i),t.Njj(i)}),t.bIt("selectionChange",function(){t.eBV(n);const i=t.XpG();return t.Njj(i.contentTypeChanged())}),t.j41(9,"mat-select-trigger",47),t.EFF(10),t.nI1(11,"translate"),t.k0s(),t.DNE(12,Zi,3,4,"mat-option",38),t.k0s()()}if(2&a){const n=t.XpG();t.R7$(3),t.JRh(t.bMT(4,7,n.displayHeaders.Color.ContentType)),t.R7$(2),t.qtP("aria-label","",t.bMT(6,9,n.displayHeaders.Color.ContentType)," ",t.bMT(7,11,"common.info"),""),t.R7$(3),t.R50("ngModel",n.selectedContentType),t.R7$(2),t.SpI(" ",t.bMT(11,13,null==n.selectedContentType?null:n.selectedContentType.label)," "),t.R7$(2),t.Y8G("ngForOf",n.contentTypeList)}}let ta=(()=>{class a{get storedColorChannel$(){return this._storedColorChannel.asObservable()}constructor(n,e,i,o,s,l,d){this.translateService=e,this.displaysService=i,this.displaySearchService=o,this.settingInfoModalService=s,this.nvAppTelemetryUtilService=l,this.multiDisplaysSupportService=d,this.panelSummary="",this.isCloneSecondaryDisplay=!1,this.isColorSettingsOsControlled=!0,this.disableOutputColorSettings=!1,this.desktopColorDepthList=[],this.outputColorDepthList=[],this.outputColorFormatList=[],this.dynamicRangeList=[],this.overrideColorToReferenceMode=!1,this.colorAccuracyMode="",this.colorChannelList=b._N,this.selectedChannel=c.Zt.All,this.currentBrightnessValue=0,this.brightnessSliderIntialized=!1,this.currentContrastValue=0,this.contrastSliderIntialized=!1,this.currentGammaValue=0,this.gammaSliderIntialized=!1,this.selectedChannelData=vn,this.colorChannelInfo=null,this.showDesktopColorDepth=!1,this.showOutputColorDepth=!1,this.showOutPutColorFormat=!1,this.showDynamicRange=!1,this.digitalVibranceSliderIntialized=!1,this.currentDigitalVibranceValue=0,this.digitalVibranceData=Sn,this.hueSliderIntialized=!1,this.currentHueValue=0,this.hueData=xn,this.showContentType=!0,this.contentTypeList=[],this.colorMetrics=b.Zw,this.throttle$=new tt.B7,this.digitalVibranceThrottle$=new tt.B7,this.hueThrottle$=new tt.B7,this.colorSliderKeyDown=!1,this._storedColorChannel=new Y.m(1),this.panelSummaryOutputColorSettings=new tt.B7,this.panelSummaryColorAccuracyMode=new tt.B7,this.destroyRef=(0,t.WQX)(t.abz),this.isSumdDirty$=new lt.c,this.displayHeaders=V.H,this.logger=n.getLogger("nvapp/DisplayColorPanelComponent")}ngOnInit(){this.setPanelSummaryString(),this.updateUIControls(),this.listenForSumdDirtyState(),this.initThottleForApplyColorCombination(),this.initThottleToApplyHue(),this.initThottleForApplyDigitalVibrance()}ngOnChanges(n){if(n&&n.displayData&&n.displayData?.isFirstChange())return;let e=!1;const i=n.displayData?.currentValue;n.displayData?.previousValue?.nvDisplayId!==i?.nvDisplayId&&(e=!0),this.updateUIControls(e)}updateUIControls(n=!1){this.clearSubscriptions(),this.isCloneSecondaryDisplay=this.displayData.isCloneSecondaryDisplay(),n&&(this._storedColorChannel.complete(),this._storedColorChannel=new Y.m(1)),this.getStoredSelectedColorChannel().subscribe(),this.updateColorControlledByWhom(),this.updateOutputColorSettings(),this.updateColorAccuracyMode(),this.updateColorChannelInfo(),this.updateDigitalVibrance(),this.updateHue(),this.updateContentType()}listenForSumdDirtyState(){this.isSumdDirty$=this.multiDisplaysSupportService.isSumdDirty$.pipe((0,M.M)(n=>{this.isExpanded=this.isExpanded&&!n}))}clearSubscriptions(){this.getIsColorSettingsOsControlledSub&&(this.getIsColorSettingsOsControlledSub.unsubscribe(),this.getIsColorSettingsOsControlledSub=null),this.getColorAccuracyModeSub&&(this.getColorAccuracyModeSub.unsubscribe(),this.getColorAccuracyModeSub=null),this.desktopColorDigitalVibranceSub&&(this.desktopColorDigitalVibranceSub.unsubscribe(),this.desktopColorDigitalVibranceSub=null),this.desktopColorHueSub&&(this.desktopColorHueSub.unsubscribe(),this.desktopColorHueSub=null),this.desktopColorContentTypeSub&&(this.desktopColorContentTypeSub.unsubscribe(),this.desktopColorContentTypeSub=null),this.desktopColorEnhancementInfoSub&&(this.desktopColorEnhancementInfoSub.unsubscribe(),this.desktopColorEnhancementInfoSub=null),this.colorCombinationInfoSubscription&&(this.colorCombinationInfoSubscription.unsubscribe(),this.colorCombinationInfoSubscription=null)}setPanelSummaryString(){(0,T.zV)([this.panelSummaryOutputColorSettings,this.panelSummaryColorAccuracyMode]).pipe((0,h.pQ)(this.destroyRef)).subscribe(([n,e])=>{this.panelSummary=[n,e].join(" | ")})}updateColorControlledByWhom(){this.getIsColorSettingsOsControlledSub=this.displayData.getIsColorSettingsOsControlled$.subscribe(n=>{this.logger.info(`isColorSettingsOsControlled: ${n?.isColorSettingsOsControlled}`),this.isColorSettingsOsControlled=n?.isColorSettingsOsControlled,this.disableOutputColorSettings=this.isColorSettingsOsControlled;const e=this.translateService.instant(this.isColorSettingsOsControlled?"common.default":"system.display.nvidia");this.panelSummaryOutputColorSettings.next(this.translateService.instant("system.display.outputColorSettingsPanelSummary",{outputColorSettingMode:e}))},n=>{this.logger.error("Error in getIsColorSettingsOsControlled",n),this.isColorSettingsOsControlled=!0})}updateColorAccuracyMode(){this.getColorAccuracyModeSub=this.displayData.getColorAccuracyMode$.subscribe(n=>{switch(this.logger.info(`Color accuracy mode: ${n?.colorAccuracyMode}`),this.overrideColorToReferenceMode=n?.colorAccuracyMode===c.cQ.Reference,n?.colorAccuracyMode){case c.cQ.Reference:this.colorAccuracyMode="system.display.reference";break;case c.cQ.Accurate:this.colorAccuracyMode="system.display.accurate";break;case c.cQ.Enhanced:this.colorAccuracyMode="system.display.enhanced";break;case c.cQ.Invalid:this.colorAccuracyMode=""}this.panelSummaryColorAccuracyMode.next(this.translateService.instant("system.display.colorAccuracyModePanelSummary",{colorAccuracyMode:this.colorAccuracyMode?.length>0?this.translateService.instant(this.colorAccuracyMode):""}))},n=>{this.logger.error("Error in GetColorAccuracyMode",n),this.overrideColorToReferenceMode=!1})}updateDigitalVibrance(){this.desktopColorDigitalVibranceSub=this.displayData.desktopColorDigitalVibrance$.subscribe(n=>{this.currentDigitalVibranceValue=n?.digitalVibranceValue,this.digitalVibranceData=n},n=>{this.logger.error("Error getting digital vibrance data:",n),this.currentDigitalVibranceValue=0,this.digitalVibranceData=Sn})}updateHue(){this.desktopColorHueSub=this.displayData.desktopColorHue$.subscribe(n=>{this.currentHueValue=n?.hueValue,this.hueData=n},n=>{this.logger.error("Error getting hue data:",n),this.currentHueValue=0,this.hueData=xn})}updateContentType(){this.desktopColorContentTypeSub=(0,T.zV)([this.displayData.desktopColorContentType$,this.displaySearchService.isContentTypeVisible(this.displayData)]).subscribe(([n,e])=>{this.showContentType=e;const i=n?.contentTypeSupportedList?.map(o=>{const s={label:b.EY.get(o),value:o};return o===n?.contentType&&(this.selectedContentType=s),s})||[];this.contentTypeList=i},n=>{this.logger.error("Error getting content type data:",n),this.showContentType=!1})}getStoredSelectedColorChannel(){return this.displayData.getDisplayLUID$.pipe((0,m.s)(1),(0,yt.ZZ)(n=>this.displaysService.getStoredDisplayMetadataFromDb(n?.displayLuid)),(0,P.T)(n=>{const e=n?.desktopColorSettingChannel||c.Zt.All;return this._storedColorChannel.next(e),e}),(0,A.W)(n=>(this.logger.error("Error in getStoredSelectedColorChannel",n),this._storedColorChannel.next(c.Zt.All),(0,D.of)(c.Zt.All))))}updateColorChannelInfo(){this.colorCombinationInfoSubscription=this.displayData.colorCombinationInfo$.pipe((0,I.n)(n=>this.storedColorChannel$.pipe((0,m.s)(1),(0,P.T)(e=>[n,e])))).subscribe(([n,e])=>{this.colorChannelInfo=n,this.selectedChannel=e,this.setSelectedChannelData()},n=>{this.logger.error("Error getting color channel info",n),this.currentBrightnessValue=0,this.currentContrastValue=0,this.currentGammaValue=0,this.selectedChannelData=vn})}getSelectedChannelGammaScalarValues(){const{gammaValue:n}=this.colorChannelInfo.colorCombinationInfo,{gammaRangeMin:e,gammaRangeMax:i}=this.getUpdatedGammaRange(),o=Number((e*Ct).toFixed(2)),s=Number((i*Ct).toFixed(2));return this.selectedChannel!==c.Zt.All?{gammaMinValue:o,gammaMaxValue:s,gammaValue:gt(n[this.selectedChannel]*Ct,o,s)}:{gammaMinValue:o,gammaMaxValue:s,gammaValue:gt(Math.floor((n[c.Zt.Red]+n[c.Zt.Green]+n[c.Zt.Blue])/3)*Ct,o,s)}}setSelectedChannelData(){if(!this.colorChannelInfo?.colorCombinationInfo)return;const{brightnessValue:n,brightnessMinValue:e,brightnessMaxValue:i,contrastValue:o,contrastMinValue:s,contrastMaxValue:l}=this.colorChannelInfo.colorCombinationInfo;let d,_,C,w,G,K;this.selectedChannel!==c.Zt.All?(d=n[this.selectedChannel],_=e[this.selectedChannel],C=i[this.selectedChannel],w=o[this.selectedChannel],G=s[this.selectedChannel],K=l[this.selectedChannel]):(d=Math.floor((n[c.Zt.Red]+n[c.Zt.Green]+n[c.Zt.Blue])/3),_=Math.floor((e[c.Zt.Red]+e[c.Zt.Green]+e[c.Zt.Blue])/3),C=Math.floor((i[c.Zt.Red]+i[c.Zt.Green]+i[c.Zt.Blue])/3),w=Math.floor((o[c.Zt.Red]+o[c.Zt.Green]+o[c.Zt.Blue])/3),G=Math.floor((s[c.Zt.Red]+s[c.Zt.Green]+s[c.Zt.Blue])/3),K=Math.floor((l[c.Zt.Red]+l[c.Zt.Green]+l[c.Zt.Blue])/3)),this.selectedChannelData={brightnessValue:gt(d,_,C),brightnessMinValue:_,brightnessMaxValue:C,contrastValue:gt(w,G,K),contrastMinValue:G,contrastMaxValue:K,...this.getSelectedChannelGammaScalarValues()},this.currentBrightnessValue=this.selectedChannelData.brightnessValue,this.currentContrastValue=this.selectedChannelData.contrastValue,this.currentGammaValue=this.selectedChannelData.gammaValue}setSelectedColorChannelToDB(){this._storedColorChannel.next(this.selectedChannel),this.displayData.getDisplayLUID$.pipe((0,m.s)(1),(0,M.M)(n=>{this.displaysService.setStoredDisplayMetadataToDb(n?.displayLuid,{desktopColorSettingChannel:this.selectedChannel})})).subscribe(g.l,g.l)}selectColorChannel(n){this.selectedChannel=n,this.setSelectedColorChannelToDB(),this.setSelectedChannelData(),this.nvAppTelemetryUtilService.sendSettingChangeEvent(b.Dj,n.toString(),`${f.d3.System_Displays}/${this.displayData.name}`,!0)}updateOutputColorSettings(){this.desktopColorEnhancementInfoSub=(0,T.zV)([this.displayData.desktopColorEnhancementInfo$,this.displaySearchService.getOutputColorVisibilityFlags(this.displayData)]).subscribe(([n,e])=>{n&&(this.showDesktopColorDepth=e.showDesktopColorDepth,this.showOutputColorDepth=e.showOutputColorDepth,this.showOutPutColorFormat=e.showOutPutColorFormat,this.showDynamicRange=e.showDynamicRange,this.showDesktopColorDepth&&(this.desktopColorDepthList=n?.desktopColorDepthPossibleValues.map(i=>{const o={label:b.rS.get(i),value:i};return i===n?.desktopColorDepthCurrentValue&&(this.selectedDesktopColorDepth=o),o})),this.showOutputColorDepth&&(this.outputColorDepthList=n?.outputColorDepthPossibleValues.map(i=>{const o={label:b.aM.get(i),value:i};return i===n?.outputColorDepthCurrentValue&&(this.selectedOutputColorDepth=o),o})),this.showOutPutColorFormat&&(this.outputColorFormatList=n?.outputColorFormatPossibleValues.map(i=>{const o={label:b.QN.get(i),value:i};return i===n?.outputColorFormatCurrentValue&&(this.selectedOutputColorFormat=o),o})),this.showDynamicRange&&(this.dynamicRangeList=n?.dynamicRangePossibleValues.map(i=>{const o={label:b.v_.get(i),value:i};return i===n?.dynamicRangeCurrentValue&&(this.selectedDynamicRange=o),o})))},n=>{this.logger.error("Error getting output color settings",n),this.showDesktopColorDepth=!1,this.showOutputColorDepth=!1,this.showOutPutColorFormat=!1,this.showDynamicRange=!1})}initThottleForApplyColorCombination(){this.throttle$.asObservable().pipe((0,It.c)(b.az,wt.E,{leading:!1,trailing:!0}),(0,I.n)(n=>this.applyColorCombinationInfo()),(0,h.pQ)(this.destroyRef)).subscribe(g.l,g.l)}setColorCombinationInfo(){this.throttle$.next()}initThottleForApplyDigitalVibrance(){this.digitalVibranceThrottle$.asObservable().pipe((0,It.c)(b.az,wt.E,{leading:!1,trailing:!0}),(0,I.n)(n=>this.displayData.applyDesktopColorDigitalVibrance(n)),(0,h.pQ)(this.destroyRef)).subscribe(g.l,g.l)}initThottleToApplyHue(){this.hueThrottle$.asObservable().pipe((0,It.c)(b.az,wt.E,{leading:!1,trailing:!0}),(0,I.n)(n=>this.displayData.applyDesktopColorHue(n)),(0,h.pQ)(this.destroyRef)).subscribe(g.l,g.l)}applyColorCombinationInfo(){const n=this.colorChannelInfo.colorCombinationInfo.brightnessValue,e=this.colorChannelInfo.colorCombinationInfo.contrastValue,i=this.colorChannelInfo.colorCombinationInfo.gammaValue;return this.logger.info("applying SetColorCombinationInfo - brightnessInfo:",n,"contrastInfo: ",e,"gammaInfo: ",i),this.displayData.applyColorCombinationInfo(n,e,i)}updateColorChannelValue(n,e){const{colorCombinationInfo:i}=this.colorChannelInfo,o="contrast"===e?i.contrastValue:i.brightnessValue,s="contrast"===e?i.contrastMinValue:i.brightnessMinValue,l="contrast"===e?i.contrastMaxValue:i.brightnessMaxValue;if(this.selectedChannel!==c.Zt.All)o[this.selectedChannel]=gt(n,s[this.selectedChannel],l[this.selectedChannel]);else{const C=gt(n,(s[c.Zt.Red]+s[c.Zt.Green]+s[c.Zt.Blue])/3,(l[c.Zt.Red]+l[c.Zt.Green]+l[c.Zt.Blue])/3);o[c.Zt.Red]=C,o[c.Zt.Green]=C,o[c.Zt.Blue]=C}}updateBrightnessValue(n){this.updateColorChannelValue(n,"brightness")}updateContrastValue(n){this.updateColorChannelValue(n,"contrast")}updateGammaValue(n){if(this.selectedChannel!==c.Zt.All)this.colorChannelInfo.colorCombinationInfo.gammaValue[this.selectedChannel]=Math.round(n/.01);else{const e=Math.round(n/.01);this.colorChannelInfo.colorCombinationInfo.gammaValue[c.Zt.Red]=e,this.colorChannelInfo.colorCombinationInfo.gammaValue[c.Zt.Green]=e,this.colorChannelInfo.colorCombinationInfo.gammaValue[c.Zt.Blue]=e}}updateSelectedChannelGammaRangeAndValue(){const{gammaRangeMin:n,gammaRangeMax:e}=this.getUpdatedGammaRange(),i=Number((n*Ct).toFixed(2)),o=Number((e*Ct).toFixed(2));this.selectedChannelData.gammaMinValue=i,this.selectedChannelData.gammaMaxValue=o,this.selectedChannelData.gammaValue=gt(this.selectedChannelData.gammaValue,i,o),this.updateGammaValue(this.selectedChannelData.gammaValue)}onBrightnessInputChange(n){const e=n.value;this.colorChannelInfo&&this.brightnessSliderIntialized&&this.currentBrightnessValue!==e&&(this.currentBrightnessValue=e,this.updateBrightnessValue(e),this.updateSelectedChannelGammaRangeAndValue(),this.setColorCombinationInfo()),this.brightnessSliderIntialized=!0}setAndRefreshColorCombinationInfo(n,e){const i=this.colorChannelInfo.colorCombinationInfo.brightnessValue,o=this.colorChannelInfo.colorCombinationInfo.contrastValue,s=this.colorChannelInfo.colorCombinationInfo.gammaValue;setTimeout(()=>{this.displayData.applyColorCombinationInfo(i,o,s).subscribe(l=>{this.logger.info("onBrightnessChange newBrightnessValue",i),this.colorSliderKeyDown||(this.displayData.refreshColorCombinationInfo(),this.nvAppTelemetryUtilService.sendSettingChangeEvent(e,n.toString(),`${f.d3.System_Displays}/${this.displayData.name}`,!0))},g.l)})}onSliderKeyDown(n){n.key!==Gi.PK.Enter&&(this.colorSliderKeyDown=!0)}onSliderKeyUp(n){this.colorSliderKeyDown=!1}onBrightnessChange(n){this.setAndRefreshColorCombinationInfo(n.value,b.y$)}onContrastInputChange(n){const e=n.value;this.colorChannelInfo&&this.contrastSliderIntialized&&this.currentContrastValue!==e&&(this.currentContrastValue=e,this.updateContrastValue(e),this.updateSelectedChannelGammaRangeAndValue(),this.setColorCombinationInfo()),this.contrastSliderIntialized=!0}onContrastChange(n){this.setAndRefreshColorCombinationInfo(n.value,b.jN)}onGammaInputChange(n){const e=Number(n.value.toFixed(2));this.colorChannelInfo&&this.gammaSliderIntialized&&this.currentGammaValue!==e&&(this.currentGammaValue=e,this.updateGammaValue(e),this.setColorCombinationInfo()),this.gammaSliderIntialized=!0}onGammaChange(n){const e=Number(n.value.toFixed(2));this.setAndRefreshColorCombinationInfo(e,b.I)}onDigitalVibranceInputChange(n){const e=n.value;this.digitalVibranceData&&this.digitalVibranceSliderIntialized&&this.currentDigitalVibranceValue!==e&&(this.currentDigitalVibranceValue=e,this.digitalVibranceThrottle$.next(this.currentDigitalVibranceValue)),this.digitalVibranceSliderIntialized=!0}onDigitalVibranceChange(n){const e=n.value;this.displayData.applyDesktopColorDigitalVibrance(e).subscribe(i=>{this.colorSliderKeyDown||(this.displayData.refreshDesktopColorDigitalVibrance(),this.nvAppTelemetryUtilService.sendSettingChangeEvent(b.$C,e.toString(),`${f.d3.System_Displays}/${this.displayData.name}`,!0))},g.l)}onHueInputChange(n){const e=n.value;this.hueData&&this.hueSliderIntialized&&this.currentHueValue!==e&&(this.currentHueValue=e,this.hueThrottle$.next(this.currentHueValue)),this.hueSliderIntialized=!0}onHueChange(n){const e=n.value;this.displayData.applyDesktopColorHue(e).subscribe(i=>{this.colorSliderKeyDown||(this.displayData.refreshDesktopColorHue(),this.nvAppTelemetryUtilService.sendSettingChangeEvent(b.R3,e.toString(),`${f.d3.System_Displays}/${this.displayData.name}`,!0))},g.l)}contentTypeChanged(){this.logger.info("selected content type Changed",this.selectedContentType),this.displayData.applyDesktopColorContentType(this.selectedContentType.value).subscribe()}setColorControlledByWhom(n){this.isColorSettingsOsControlled=n,this.logger.info("ColorSettings by OS controlled changed ",this.isColorSettingsOsControlled),this.disableOutputColorSettings=this.isColorSettingsOsControlled,this.displayData.applyIsColorSettingsOsControlled(this.isColorSettingsOsControlled).subscribe(g.l,g.l)}onOverrideToReferenceModeChanged(){this.logger.info("Override to reference mode changed",this.overrideColorToReferenceMode),this.displayData.applyColorAccuracyMode(this.overrideColorToReferenceMode?c.cQ.Reference:c.cQ.Auto).subscribe(g.l,g.l)}desktopColorDepthChanged(){this.logger.info("selected desktopColorDepth Changed",this.selectedDesktopColorDepth),this.displayData.applyDesktopColorDepth(this.selectedDesktopColorDepth.value).subscribe()}outputColorDepthChanged(){this.logger.info("selected outputColorDepth Changed",this.selectedOutputColorDepth),this.displayData.applyOutputColorDepth(this.selectedOutputColorDepth.value).subscribe()}outputColorFormatChanged(){this.logger.info("selected outputColorFormat Changed",this.selectedOutputColorFormat),this.displayData.applyOutPutColorFormat(this.selectedOutputColorFormat.value).subscribe()}dynamicRangeChanged(){this.logger.info("selected dynamicRange Changed",this.selectedDynamicRange),this.displayData.applyDynamicRange(this.selectedDynamicRange.value).subscribe()}showColorSettingsInfoPopup(n){const e={title:this.translateService.instant(n?.title),description:this.translateService.instant(n?.description),typicalUsageScenarios:n?.typicalUsageScenarios?this.translateService.instant(n?.typicalUsageScenarios):""};this.settingInfoModalService.openDialogWithData(e)}stopEventBubble(n){n?.stopPropagation(),n?.preventDefault()}onClickColorAccuracyModeInfoDialog(n){this.stopEventBubble(n),this.showColorSettingsInfoPopup(Ii),this.nvAppTelemetryUtilService.sendClickEvent(f.EB.ColorAccuracyModeInfoDialog,`${f.d3.System_Displays}/${this.displayData.name}`,!0)}onClickOutputColorSettingsInfoDialog(n){this.stopEventBubble(n),this.showColorSettingsInfoPopup(Ri),this.nvAppTelemetryUtilService.sendClickEvent(f.EB.OutputColorSettingsInfoDialog,`${f.d3.System_Displays}/${this.displayData.name}`,!0)}onClickContentTypeInfoDialog(n){this.stopEventBubble(n),this.showColorSettingsInfoPopup(ki),this.nvAppTelemetryUtilService.sendClickEvent(f.EB.ContentTypeInfoDialog,`${f.d3.System_Displays}/${this.displayData.name}`,!0)}onClickColorChannelInfoDialog(n){this.stopEventBubble(n),this.showColorSettingsInfoPopup(Ti),this.nvAppTelemetryUtilService.sendClickEvent(f.EB.ColorChannelInfoDialog,`${f.d3.System_Displays}/${this.displayData.name}`,!0)}getUpdatedGammaRange(){let i,o,n=30,e=280;if(this.selectedChannel!==c.Zt.All)i=this.colorChannelInfo.colorCombinationInfo.brightnessValue[this.selectedChannel],o=this.colorChannelInfo.colorCombinationInfo.contrastValue[this.selectedChannel];else{const{brightnessValue:s,contrastValue:l}=this.colorChannelInfo.colorCombinationInfo;i=(s[c.Zt.Red]+s[c.Zt.Green]+s[c.Zt.Blue])/3,o=(l[c.Zt.Red]+l[c.Zt.Green]+l[c.Zt.Blue])/3}return n=i>94||i>93&&o>83||i>92&&o>88||i>91&&o>96||i>90&&o>106?30:i>84||i>83&&o>82||i>82&&o>90?40:50,i<106?e=280:i<108?e=o>81?280:270:i<109?e=o>83?280:o>81?270:260:i<110?e=o>85?280:o>83?270:o>80?260:250:i<111?e=o>88?280:o>85?270:o>82?260:o>80?250:240:i<112?e=o>90?280:o>87?270:o>84?260:o>81?250:240:i<113?e=o>93?280:o>89?270:o>86?260:o>83?250:o>81?240:230:i<114?e=o>95?280:o>92?270:o>89?260:o>86?250:o>83?240:o>80?230:220:i<115?e=o>98?280:o>95?270:o>91?260:o>88?250:o>85?240:o>81?230:220:i<116?e=o>102?280:o>98?270:o>94?260:o>90?250:o>87?240:o>84?230:220:i<117?e=o>105?280:o>101?270:o>97?260:o>93?250:o>89?240:o>86?230:o>82?220:210:i<118?e=o>109?280:o>105?270:o>100?260:o>96?250:o>92?240:o>88?230:o>84?220:o>81?210:200:i<119?e=o>113?280:o>109?270:o>104?260:o>99?250:o>95?240:o>91?230:o>87?220:o>83?210:200:i<120?e=o>117?280:o>113?270:o>108?260:o>103?250:o>98?240:o>94?230:o>89?220:o>85?210:o>81?200:190:120===i&&(e=o>117?270:o>112?260:o>107?250:o>102?240:o>97?230:o>92?220:o>88?210:o>83?200:o>80?190:180),{gammaRangeMin:n,gammaRangeMax:e}}callHandler(n,e){n&&this[n]&&"function"==typeof this[n]&&this[n](e)}ngOnDestroy(){this.clearSubscriptions(),this.digitalVibranceThrottle$.complete(),this.hueThrottle$.complete(),this.throttle$.complete()}static{this.\u0275fac=function(e){return new(e||a)(t.rXU(v.J6),t.rXU(x.c$),t.rXU(Q.R),t.rXU(Fi.w),t.rXU(bt.P),t.rXU(f.AY),t.rXU(q.b))}}static{this.\u0275cmp=t.VBU({type:a,selectors:[["nv-app-display-color-panel"]],inputs:{isExpanded:"isExpanded",displayData:"displayData"},features:[t.OA$],decls:49,vars:56,consts:[["hideToggle","true",1,"displays-expansion-panel",3,"expandedChange","expanded","ngClass","disabled"],[3,"collapsedHeight","expandedHeight"],[1,"flex-row","accordion-header","hig-button-overlay","justify-content-space-between","align-items-center",3,"ngClass"],[1,"flex-col"],[1,"font-sub1","font-color-primary",3,"ngClass"],["class","font-body2 font-color-secondary panel-summary",4,"ngIf"],["class","font-body2 font-color-secondary",4,"ngIf"],["svgIcon","chevron_down",3,"ngClass",4,"ngIf"],["svgIcon","chevron_up",4,"ngIf"],[1,"flex-col","gap-16","margin-top-16","margin-bottom-16"],["class","flex-col gap-24",4,"ngIf"],[4,"ngIf"],[1,"flex-col","gap-16"],[1,"flex-row","setting-info-icon-container"],[1,"font-body1","font-color-primary"],["svgIcon","info","tabindex","0","role","button",1,"color-white-hue-1","setting-info-icon","show",3,"click","keydown.enter"],[1,"font-body1","font-color-secondary"],[3,"ngModelChange","change","ngModel","nvAppAnnouncer","associatedMessage"],[1,"font-body1","font-color-secondary","title"],[1,"flex-col","gap-24"],[1,"flex-row","gap-8"],["selectable","","class","displays-chip",3,"selected","disabled","click","keyup.enter",4,"ngFor","ngForOf"],[4,"ngFor","ngForOf"],["class","flex-col gap-16",4,"ngIf"],[1,"font-body2","font-color-secondary","panel-summary"],[1,"font-body2","font-color-secondary"],["svgIcon","chevron_down",3,"ngClass"],["svgIcon","chevron_up"],["selectable","",1,"displays-chip",3,"click","keyup.enter","selected"],[1,"font-body2"],[1,"gap-16","color-settings-grid"],["class","flex-col gap-16 desktop-color-depth",4,"ngIf"],["class","flex-col gap-16 output-color-depth",4,"ngIf"],["class","flex-col gap-16 output-color-format",4,"ngIf"],["class","flex-col gap-16 output-dynamic-range",4,"ngIf"],[1,"flex-col","gap-16","desktop-color-depth"],["panelClass","mat-select-font-body2",1,"mat-mdc-select-dark-background",3,"ngModelChange","selectionChange","ngModel","disabled"],[1,"dropdown-trigger","font-body2",3,"ngClass"],[3,"value",4,"ngFor","ngForOf"],[3,"value"],[1,"flex-col","gap-16","output-color-depth"],[1,"flex-col","gap-16","output-color-format"],[1,"flex-col","gap-16","output-dynamic-range"],["selectable","",1,"displays-chip",3,"click","keyup.enter","selected","disabled"],[1,"flex-col","gap-10","color-slider-container"],["valueEntry","true",3,"valueChange","input","keydown","keyup","change","value","min","max","formatTextAs","step","disabled","nvAppAnnouncer","associatedMessage"],["panelClass","mat-select-font-body2",1,"mat-mdc-select-dark-background","content-type-dropdown-width",3,"ngModelChange","selectionChange","ngModel"],[1,"dropdown-trigger","font-body2"]],template:function(e,i){1&e&&(t.j41(0,"mat-expansion-panel",0),t.nI1(1,"async"),t.nI1(2,"async"),t.mxI("expandedChange",function(s){return t.DH7(i.isExpanded,s)||(i.isExpanded=s),s}),t.j41(3,"mat-expansion-panel-header",1)(4,"div",2)(5,"div",3)(6,"div",4),t.nI1(7,"async"),t.EFF(8),t.nI1(9,"translate"),t.k0s(),t.DNE(10,Ei,2,1,"div",5),t.nI1(11,"async"),t.DNE(12,$i,3,3,"div",6),t.k0s(),t.DNE(13,ji,2,3,"mat-icon",7)(14,Vi,1,0,"mat-icon",8),t.k0s()(),t.j41(15,"div",9),t.DNE(16,zi,24,22,"div",10)(17,qi,1,0,"mat-divider",11),t.j41(18,"div",12)(19,"div",3)(20,"div",13)(21,"span",14),t.EFF(22),t.nI1(23,"translate"),t.k0s(),t.j41(24,"mat-icon",15),t.nI1(25,"translate"),t.nI1(26,"translate"),t.bIt("click",function(s){return i.onClickColorAccuracyModeInfoDialog(s)})("keydown.enter",function(s){return i.onClickColorAccuracyModeInfoDialog(s)}),t.k0s()(),t.j41(27,"span",16),t.EFF(28),t.nI1(29,"translate"),t.k0s()(),t.j41(30,"mat-checkbox",17),t.mxI("ngModelChange",function(s){return t.DH7(i.overrideColorToReferenceMode,s)||(i.overrideColorToReferenceMode=s),s}),t.bIt("change",function(){return i.onOverrideToReferenceModeChanged()}),t.j41(31,"span",18),t.EFF(32),t.nI1(33,"translate"),t.k0s()()(),t.nrm(34,"mat-divider"),t.j41(35,"div",19)(36,"div",12)(37,"div",13)(38,"span",14),t.EFF(39),t.nI1(40,"translate"),t.k0s(),t.j41(41,"mat-icon",15),t.nI1(42,"translate"),t.nI1(43,"translate"),t.bIt("click",function(s){return i.onClickColorChannelInfoDialog(s)})("keydown.enter",function(s){return i.onClickColorChannelInfoDialog(s)}),t.k0s()(),t.j41(44,"div",20)(45,"mat-chip-list"),t.DNE(46,Qi,4,5,"mat-chip",21),t.k0s()()(),t.DNE(47,Wi,8,15,"ng-container",22)(48,Ki,13,15,"div",23),t.k0s()()()),2&e&&(t.R50("expanded",i.isExpanded),t.Y8G("ngClass",i.isExpanded?"ex-panel-bg":!0===t.bMT(1,30,i.isSumdDirty$)?"display-panel-disabled":"")("disabled",t.bMT(2,32,i.isSumdDirty$)),t.R7$(3),t.Y8G("collapsedHeight","auto")("expandedHeight","auto"),t.R7$(),t.Y8G("ngClass",i.isExpanded?"bottom-divider":""),t.R7$(2),t.Y8G("ngClass",!0===t.bMT(7,34,i.isSumdDirty$)?"display-disabled-color":""),t.R7$(2),t.SpI(" ",t.bMT(9,36,i.displayHeaders.DisplayColor)," "),t.R7$(2),t.Y8G("ngIf",!i.isExpanded&&!1===t.bMT(11,38,i.isSumdDirty$)),t.R7$(2),t.Y8G("ngIf",i.isExpanded),t.R7$(),t.Y8G("ngIf",!i.isExpanded),t.R7$(),t.Y8G("ngIf",i.isExpanded),t.R7$(2),t.Y8G("ngIf",i.showOutputColorDepth||i.showDynamicRange),t.R7$(),t.Y8G("ngIf",i.showOutputColorDepth||i.showDynamicRange),t.R7$(5),t.JRh(t.bMT(23,40,i.displayHeaders.Color.ColorAccuracyMode)),t.R7$(2),t.qtP("aria-label","",t.bMT(25,42,i.displayHeaders.Color.ColorAccuracyMode)," ",t.bMT(26,44,"common.info"),""),t.R7$(4),t.JRh(t.bMT(29,46,i.colorAccuracyMode)),t.R7$(2),t.R50("ngModel",i.overrideColorToReferenceMode),t.Y8G("nvAppAnnouncer",i.overrideColorToReferenceMode)("associatedMessage",i.displayHeaders.Color.OverrideToReferenceMode),t.R7$(2),t.SpI(" ",t.bMT(33,48,i.displayHeaders.Color.OverrideToReferenceMode)," "),t.R7$(7),t.JRh(t.bMT(40,50,i.displayHeaders.Color.ColorChannel)),t.R7$(2),t.qtP("aria-label","",t.bMT(42,52,i.displayHeaders.Color.ColorChannel)," ",t.bMT(43,54,"common.info"),""),t.R7$(5),t.Y8G("ngForOf",i.colorChannelList),t.R7$(),t.Y8G("ngForOf",i.colorMetrics),t.R7$(),t.Y8G("ngIf",i.showContentType))},dependencies:[u.YU,u.Sq,u.bT,Vt.t,J.tG,et.nM,L.BC,L.vS,F.An,X.q,B.VO,B.$2,st.wT,H.GK,H.Z2,dt.So,z.O_,z.Id,N.PW,nt.L,x.D9,u.Jj],styles:['.color-settings-grid[_ngcontent-%COMP%]{display:grid;grid-template-columns:repeat(2,1fr);grid-template-areas:"desktopColorDepth outputColorDepth" "outputColorFormat outputDynamicRange";max-width:818px}.desktop-color-depth[_ngcontent-%COMP%]{grid-area:desktopColorDepth;max-width:401px}.output-color-depth[_ngcontent-%COMP%]{grid-area:outputColorDepth;max-width:401px}.output-color-format[_ngcontent-%COMP%]{grid-area:outputColorFormat;max-width:401px}.output-dynamic-range[_ngcontent-%COMP%]{grid-area:outputDynamicRange;max-width:401px}.content-type-dropdown-width[_ngcontent-%COMP%]{max-width:401px}.color-slider-container[_ngcontent-%COMP%]{padding-left:8px}',".ex-panel-margin[_ngcontent-%COMP%]{margin:8px 0}.ex-panel-bg[_ngcontent-%COMP%]{background-color:var(--system-common-ex-panel-bg-color)}.dark-divider[_ngcontent-%COMP%]{border-top-color:var(--primary-900)}.bottom-divider[_ngcontent-%COMP%]{border-bottom:1px solid var(--primary-900)}.disable-mat-select-trigger[_ngcontent-%COMP%]{opacity:.38}","[_ngcontent-%COMP%]:root{--rwd-column-count: 4;--rwd-gutter-count: 3 ;--rwd-gutter-size: 8px;--rwd-container-side-spacing: 16px;--rwd-column-size: calc((var(--rwd-container-width) - var(--rwd-sidebar-width) - 2 * 16px - 8px * 3 ) / 4);--rwd-sidebar-width: 0px;--rwd-container-width: 100vw}@media screen and (min-width: 480px){[_ngcontent-%COMP%]:root{--rwd-column-count: 6;--rwd-gutter-count: 5 ;--rwd-column-size: calc((var(--rwd-container-width) - var(--rwd-sidebar-width) - 2 * 16px - 8px * 5 ) / 6)}}@media screen and (min-width: 720px){[_ngcontent-%COMP%]:root{--rwd-column-count: 8;--rwd-gutter-count: 7 ;--rwd-column-size: calc((var(--rwd-container-width) - var(--rwd-sidebar-width) - 2 * 16px - 8px * 7 ) / 8)}}@media screen and (min-width: 960px){[_ngcontent-%COMP%]:root{--rwd-column-count: 12;--rwd-gutter-count: 11 ;--rwd-container-side-spacing: 24px;--rwd-column-size: calc((var(--rwd-container-width) - var(--rwd-sidebar-width) - 2 * 24px - 8px * 11 ) / 12)}}@media screen and (min-width: 1440px){[_ngcontent-%COMP%]:root{--rwd-gutter-size: 16px;--rwd-column-size: calc((var(--rwd-container-width) - var(--rwd-sidebar-width) - 2 * 24px - 16px * 11 ) / 12)}}[_ngcontent-%COMP%]:root{--hig-marquee-ratio: .3229;--hig-marquee-parent-container-width: 100vw;--hig-marquee-container-height: calc(var(--hig-marquee-ratio) * 100vw);--hig-marquee-corner-column: 56px;--hig-marquee-text-column: 14vw;--hig-marquee-padded-image-first-row: calc(var(--hig-marquee-ratio) * (100vw - var(--hig-marquee-corner-column) - var(--hig-marquee-text-column)));--hig-marquee-padded-image-second-row: calc(var(--hig-marquee-container-height) - var(--hig-marquee-padded-image-first-row))}.ellipsified-text-with-tooltip[_ngcontent-%COMP%]{text-overflow:ellipsis;overflow:hidden}.ellipsified-text-with-tooltip.multi-line-ellipsis[_ngcontent-%COMP%]{display:-webkit-box;-webkit-box-orient:vertical;white-space:wrap}.ellipsified-text-with-tooltip.single-line-ellipsis[_ngcontent-%COMP%]{white-space:nowrap}.ellipsis[_ngcontent-%COMP%]{text-overflow:ellipsis;overflow:hidden}.system-display-box[_ngcontent-%COMP%]{box-sizing:border-box;border:1px solid var(--system-display-border-color);display:flex;width:26px;height:20px;flex-direction:row;align-self:center;justify-content:center;align-items:center}.system-display-box[_ngcontent-%COMP%] span[_ngcontent-%COMP%]{color:var(--system-display-span-color)}.displays-chip[_ngcontent-%COMP%]{height:32px}.accordion-padding[_ngcontent-%COMP%]{padding:14px 0}.accordion-header[_ngcontent-%COMP%]{padding:14px 16px;width:100%}.accordion-header[_ngcontent-%COMP%] mat-icon[_ngcontent-%COMP%]{color:var(--primary-contrast-900)}.info-icon[_ngcontent-%COMP%]{width:16px;height:16px;flex-shrink:0}",".margin-0[_ngcontent-%COMP%]{margin:0}.padding-0[_ngcontent-%COMP%]{padding:0}.gap-0[_ngcontent-%COMP%]{gap:0px}.margin-top-0[_ngcontent-%COMP%]{margin-top:0}.padding-top-0[_ngcontent-%COMP%]{padding-top:0}.margin-bottom-0[_ngcontent-%COMP%]{margin-bottom:0}.padding-bottom-0[_ngcontent-%COMP%]{padding-bottom:0}.margin-left-0[_ngcontent-%COMP%]{margin-left:0}.padding-left-0[_ngcontent-%COMP%]{padding-left:0}.margin-right-0[_ngcontent-%COMP%]{margin-right:0}.padding-right-0[_ngcontent-%COMP%]{padding-right:0}.margin-4[_ngcontent-%COMP%]{margin:4px}.padding-4[_ngcontent-%COMP%]{padding:4px}.gap-4[_ngcontent-%COMP%]{gap:4px}.margin-top-4[_ngcontent-%COMP%]{margin-top:4px}.padding-top-4[_ngcontent-%COMP%]{padding-top:4px}.margin-bottom-4[_ngcontent-%COMP%]{margin-bottom:4px}.padding-bottom-4[_ngcontent-%COMP%]{padding-bottom:4px}.margin-left-4[_ngcontent-%COMP%]{margin-left:4px}.padding-left-4[_ngcontent-%COMP%]{padding-left:4px}.margin-right-4[_ngcontent-%COMP%]{margin-right:4px}.padding-right-4[_ngcontent-%COMP%]{padding-right:4px}.margin-8[_ngcontent-%COMP%]{margin:8px}.padding-8[_ngcontent-%COMP%]{padding:8px}.gap-8[_ngcontent-%COMP%]{gap:8px}.margin-top-8[_ngcontent-%COMP%]{margin-top:8px}.padding-top-8[_ngcontent-%COMP%]{padding-top:8px}.margin-bottom-8[_ngcontent-%COMP%]{margin-bottom:8px}.padding-bottom-8[_ngcontent-%COMP%]{padding-bottom:8px}.margin-left-8[_ngcontent-%COMP%]{margin-left:8px}.padding-left-8[_ngcontent-%COMP%]{padding-left:8px}.margin-right-8[_ngcontent-%COMP%]{margin-right:8px}.padding-right-8[_ngcontent-%COMP%]{padding-right:8px}.margin-10[_ngcontent-%COMP%]{margin:10px}.padding-10[_ngcontent-%COMP%]{padding:10px}.gap-10[_ngcontent-%COMP%]{gap:10px}.margin-top-10[_ngcontent-%COMP%]{margin-top:10px}.padding-top-10[_ngcontent-%COMP%]{padding-top:10px}.margin-bottom-10[_ngcontent-%COMP%]{margin-bottom:10px}.padding-bottom-10[_ngcontent-%COMP%]{padding-bottom:10px}.margin-left-10[_ngcontent-%COMP%]{margin-left:10px}.padding-left-10[_ngcontent-%COMP%]{padding-left:10px}.margin-right-10[_ngcontent-%COMP%]{margin-right:10px}.padding-right-10[_ngcontent-%COMP%]{padding-right:10px}.margin-12[_ngcontent-%COMP%]{margin:12px}.padding-12[_ngcontent-%COMP%]{padding:12px}.gap-12[_ngcontent-%COMP%]{gap:12px}.margin-top-12[_ngcontent-%COMP%]{margin-top:12px}.padding-top-12[_ngcontent-%COMP%]{padding-top:12px}.margin-bottom-12[_ngcontent-%COMP%]{margin-bottom:12px}.padding-bottom-12[_ngcontent-%COMP%]{padding-bottom:12px}.margin-left-12[_ngcontent-%COMP%]{margin-left:12px}.padding-left-12[_ngcontent-%COMP%]{padding-left:12px}.margin-right-12[_ngcontent-%COMP%]{margin-right:12px}.padding-right-12[_ngcontent-%COMP%]{padding-right:12px}.margin-16[_ngcontent-%COMP%]{margin:16px}.padding-16[_ngcontent-%COMP%]{padding:16px}.gap-16[_ngcontent-%COMP%]{gap:16px}.margin-top-16[_ngcontent-%COMP%]{margin-top:16px}.padding-top-16[_ngcontent-%COMP%]{padding-top:16px}.margin-bottom-16[_ngcontent-%COMP%]{margin-bottom:16px}.padding-bottom-16[_ngcontent-%COMP%]{padding-bottom:16px}.margin-left-16[_ngcontent-%COMP%]{margin-left:16px}.padding-left-16[_ngcontent-%COMP%]{padding-left:16px}.margin-right-16[_ngcontent-%COMP%]{margin-right:16px}.padding-right-16[_ngcontent-%COMP%]{padding-right:16px}.margin-20[_ngcontent-%COMP%]{margin:20px}.padding-20[_ngcontent-%COMP%]{padding:20px}.gap-20[_ngcontent-%COMP%]{gap:20px}.margin-top-20[_ngcontent-%COMP%]{margin-top:20px}.padding-top-20[_ngcontent-%COMP%]{padding-top:20px}.margin-bottom-20[_ngcontent-%COMP%]{margin-bottom:20px}.padding-bottom-20[_ngcontent-%COMP%]{padding-bottom:20px}.margin-left-20[_ngcontent-%COMP%]{margin-left:20px}.padding-left-20[_ngcontent-%COMP%]{padding-left:20px}.margin-right-20[_ngcontent-%COMP%]{margin-right:20px}.padding-right-20[_ngcontent-%COMP%]{padding-right:20px}.margin-24[_ngcontent-%COMP%]{margin:24px}.padding-24[_ngcontent-%COMP%]{padding:24px}.gap-24[_ngcontent-%COMP%]{gap:24px}.margin-top-24[_ngcontent-%COMP%]{margin-top:24px}.padding-top-24[_ngcontent-%COMP%]{padding-top:24px}.margin-bottom-24[_ngcontent-%COMP%]{margin-bottom:24px}.padding-bottom-24[_ngcontent-%COMP%]{padding-bottom:24px}.margin-left-24[_ngcontent-%COMP%]{margin-left:24px}.padding-left-24[_ngcontent-%COMP%]{padding-left:24px}.margin-right-24[_ngcontent-%COMP%]{margin-right:24px}.padding-right-24[_ngcontent-%COMP%]{padding-right:24px}.margin-32[_ngcontent-%COMP%]{margin:32px}.padding-32[_ngcontent-%COMP%]{padding:32px}.gap-32[_ngcontent-%COMP%]{gap:32px}.margin-top-32[_ngcontent-%COMP%]{margin-top:32px}.padding-top-32[_ngcontent-%COMP%]{padding-top:32px}.margin-bottom-32[_ngcontent-%COMP%]{margin-bottom:32px}.padding-bottom-32[_ngcontent-%COMP%]{padding-bottom:32px}.margin-left-32[_ngcontent-%COMP%]{margin-left:32px}.padding-left-32[_ngcontent-%COMP%]{padding-left:32px}.margin-right-32[_ngcontent-%COMP%]{margin-right:32px}.padding-right-32[_ngcontent-%COMP%]{padding-right:32px}.margin-36[_ngcontent-%COMP%]{margin:36px}.padding-36[_ngcontent-%COMP%]{padding:36px}.gap-36[_ngcontent-%COMP%]{gap:36px}.margin-top-36[_ngcontent-%COMP%]{margin-top:36px}.padding-top-36[_ngcontent-%COMP%]{padding-top:36px}.margin-bottom-36[_ngcontent-%COMP%]{margin-bottom:36px}.padding-bottom-36[_ngcontent-%COMP%]{padding-bottom:36px}.margin-left-36[_ngcontent-%COMP%]{margin-left:36px}.padding-left-36[_ngcontent-%COMP%]{padding-left:36px}.margin-right-36[_ngcontent-%COMP%]{margin-right:36px}.padding-right-36[_ngcontent-%COMP%]{padding-right:36px}.flex-row[_ngcontent-%COMP%]{display:flex}.flex-col[_ngcontent-%COMP%]{display:flex;flex-direction:column}.justify-content-space-between[_ngcontent-%COMP%]{justify-content:space-between}.justify-content-center[_ngcontent-%COMP%]{justify-content:center}.align-items-center[_ngcontent-%COMP%]{align-items:center}.flex-none[_ngcontent-%COMP%]{flex:none}"]})}}return a})();const na=["previewCanvasElement"],ea=["scalingPreviewContainer"],Mn=(a,r)=>({visible:a,hidden:r});function ia(a,r){if(1&a&&(t.j41(0,"mat-option",21),t.EFF(1),t.k0s()),2&a){const n=r.$implicit;t.Y8G("value",n),t.R7$(),t.SpI(" ",null==n?null:n.label," ")}}function aa(a,r){if(1&a&&(t.j41(0,"mat-option",21),t.EFF(1),t.k0s()),2&a){const n=r.$implicit;t.Y8G("value",n),t.R7$(),t.SpI(" ",null==n?null:n.label," ")}}let Pn=(()=>{class a{constructor(n,e,i,o,s){this.translateService=e,this.displayService=i,this.settingInfoModalService=o,this.nvAppTelemetryUtilService=s,this.scalingUIResolutionList=[],this.showPreviewError=!1,this.displayHeaders=V.H,this.dispSizeM_X=1,this.dispSizeM_Y=1,this.destroyRef=(0,t.WQX)(t.abz),this.logger=n.getLogger("nvapp/DisplayScalingPreviewComponent"),this.rcOut=this.rcCtrl}clearSubscription(){this.resolutionListSubscription&&(this.resolutionListSubscription.unsubscribe(),this.resolutionListSubscription=null)}getResolutionLabel(n){let e="";return n.flags.isNative?e=this.translateService.instant("system.display.resolutions.native"):n.flags.isRecommended&&(e=this.translateService.instant("system.display.resolutions.recommended")),this.translateService.instant("system.display.resolutions.pc",{horizontal:n.horizontal,vertical:n.vertical,recommended:e})}sortResolutionList(){this.scalingUIResolutionList.sort(function(n,e){return e.horizontal-n.horizontal==0?e.vertical-n.vertical:e.horizontal-n.horizontal})}skipResolution(n){return!(!n.flags.isSupported&&n.flags.isChecked)&&n.horizontal<c.zV&&n.vertical<c.A5&&!n.flags.isChecked}buildResolutionList(n,e){this.logger.info("selectedPreviewResolution: ",e),this.selectedResolution=null,this.nativeResolution=null,this.scalingUIResolutionList=[],n?.forEach(i=>{if(!this.skipResolution(i)){const o=this.scalingUIResolutionList.find(s=>s.horizontal===i.horizontal&&s.vertical===i.vertical);if(o)o.refreshRates.push({label:this.getRefreshRateLabel(i),value:i.refreshRate,tvFormat:i.tvFormat}),o.refreshRates.sort(this.sortRefreshRate);else{const s={...i,refreshRates:[{label:this.getRefreshRateLabel(i),value:i.refreshRate,tvFormat:i.tvFormat}],label:this.getResolutionLabel(i)};this.updateNativeRecommenedLabel(i),this.scalingUIResolutionList.push(s)}}}),this.sortResolutionList(),this.selectedResolution=this.scalingUIResolutionList?.find(i=>e?.horizontal===i?.horizontal&&e?.vertical===i?.vertical),this.selectedResolution?this.currentRefreshRate=this.selectedResolution?.refreshRates?.find(i=>e?.refreshRate===i.value&&e?.tvFormat===i?.tvFormat)||this.selectedResolution?.refreshRates[0]:(this.selectedResolution=this.scalingUIResolutionList[0],this.currentRefreshRate=this.selectedResolution?.refreshRates[0])}sortRefreshRate(n,e){return n.value!==e.value?e.value-n.value:0}getRefreshRateLabel(n){let e="system.display.refreshRateValue";return n.flags.isCustomUnderscan&&(e="system.display.refreshRateValueWithAsterisk"),this.translateService.instant(e,{refreshRate:n.refreshRate})}getSelectedPreviewResolution(){return this.displayData.getDisplayLUID$.pipe((0,m.s)(1),(0,yt.ZZ)(n=>this.displayService.getStoredDisplayMetadataFromDb(n?.displayLuid)),(0,P.T)(n=>n?.scalingPreviewResolution||null),(0,A.W)(n=>(this.logger.error("Error in getSelectedPreviewResolution",n),(0,D.of)(null))))}refreshData(){this.clearSubscription(),this.resolutionListSubscription=this.displayData.resolutionList$.pipe((0,yt.ZZ)(n=>this.getSelectedPreviewResolution().pipe((0,P.T)(e=>({resolutionList:n,selectedPreviewResolution:e}))))).subscribe(n=>{n.resolutionList?.length&&(this.buildResolutionList(n.resolutionList,n.selectedPreviewResolution),this.updateScalingPreview())},n=>{this.logger.error(`Failed to fetch resolution list: ${n}`)})}updateNativeRecommenedLabel(n){(n.flags.isNative||n.flags.isRecommended)&&(this.nativeRecommendedLabel=n.flags.isNative?"system.display.scalingPanel.nativeResolution":"system.display.scalingPanel.recommendedResolution",n.flags.isNative&&(this.nativeResolution=this.nativeResolution??{},this.nativeResolution.width=n.horizontal,this.nativeResolution.height=n.vertical),this.nativeRecommendedResolutionString=this.translateService.instant("system.display.resolutions.pc",{horizontal:n.horizontal,vertical:n.vertical,recommended:""}))}ngOnInit(){this.refreshData()}ngOnChanges(n){n&&n.displayData&&n.displayData?.isFirstChange()||this.refreshData()}setSelectedScalingPreviewResolutionToDB(){this.displayData.getDisplayLUID$.pipe((0,m.s)(1),(0,M.M)(n=>{this.displayService.setStoredDisplayMetadataToDb(n?.displayLuid,{scalingPreviewResolution:{horizontal:this.selectedResolution.horizontal,vertical:this.selectedResolution.vertical,refreshRate:this.currentRefreshRate.value,tvFormat:this.currentRefreshRate.tvFormat}})})).subscribe(g.l,g.l)}onResolutionChanged(){this.currentRefreshRate=this.selectedResolution.refreshRates[0],this.setSelectedScalingPreviewResolutionToDB(),this.updateScalingPreview(),this.nvAppTelemetryUtilService.sendSettingChangeEvent(b.ER,`${this.selectedResolution.horizontal} x ${this.selectedResolution.vertical} x ${this.currentRefreshRate.value}`,`${f.d3.System_Displays}/${this.displayData.name}`,!0)}onRefreshRateChanged(){this.setSelectedScalingPreviewResolutionToDB(),this.updateScalingPreview(),this.nvAppTelemetryUtilService.sendSettingChangeEvent(b.fF,`${this.selectedResolution.horizontal} x ${this.selectedResolution.vertical} x ${this.currentRefreshRate.value}`,`${f.d3.System_Displays}/${this.displayData.name}`,!0)}updateScalingPreview(){this.displayData.logicalDisplayType===c.QE.SurroundDisplay?this.showPreviewError=!0:this.displayService.getTimingScalingPreview({displayIndex:this.displayData.index,gpuIndex:this.displayData.gpuIndex,resolution:{horizontal:this.selectedResolution?.horizontal,vertical:this.selectedResolution?.vertical,flags:this.selectedResolution?.flags,tvFormat:this.currentRefreshRate?.tvFormat,refreshRate:this.currentRefreshRate?.value}}).pipe((0,m.s)(1),(0,h.pQ)(this.destroyRef)).subscribe(n=>{this.showPreviewError=!1,this.scanoutRect=n?.scalingPreviewInfo?.scanoutRectangle,this.rasterRect=n?.scalingPreviewInfo?.rasterRectangle,this.nativeResolution||(this.nativeResolution={},this.nativeResolution.width=n?.scalingPreviewInfo?.screenSize?.horizontal||this.displayData?.currentResolution?.horizontal,this.nativeResolution.height=n?.scalingPreviewInfo?.screenSize?.vertical||this.displayData?.currentResolution?.vertical),this.resetPreviewData(),this.setPreviewData()},n=>{this.showPreviewError=!0,this.logger.error("getTimingScalingPreview API Failed with error",n)})}ngAfterViewInit(){this.context=this.previewCanvasElement.nativeElement.getContext("2d"),this.scalingPreviewContainer&&(this.rcCtrl={left:0,top:0,right:255,bottom:146})}getEmptyRect(){return{left:0,top:0,right:0,bottom:0}}getEmptyPoint(){return{x:0,y:0}}getEmptySize(){return{width:0,height:0}}resetPreviewData(){this.gridOffset=this.getEmptyPoint(),this.cell=this.getEmptySize(),this.rcPad=this.getEmptyRect(),this.dispSizeM_X=1,this.dispSizeM_Y=1,this.displayData.isSurroundDisplay()||(this.dispSizeM_X=this.nativeResolution.width/(this.rasterRect.right-this.rasterRect.left),this.dispSizeM_Y=this.nativeResolution.height/(this.rasterRect.bottom-this.rasterRect.top)),this.rcOut={left:this.rcCtrl.left,top:this.rcCtrl.top,right:this.rcCtrl.right,bottom:this.rcCtrl.bottom}}setPreviewData(){const e=this.nativeResolution.width/this.nativeResolution.height;(this.rcOut.right-this.rcOut.left)/(this.rcOut.bottom-this.rcOut.top)>e?this.rcOut.right=Math.floor((this.rcOut.bottom-this.rcOut.top)*e+.5):this.rcOut.bottom=Math.floor((this.rcOut.right-this.rcOut.left)/e+.5),this.scalingPreviewContainer.nativeElement.style.width=this.rcOut.right-this.rcOut.left+"px",this.scalingPreviewContainer.nativeElement.style.height=this.rcOut.bottom-this.rcOut.top+"px";let i=(this.rasterRect.right-this.rasterRect.left)/(this.rcOut.right-this.rcOut.left);const o=(this.rasterRect.bottom-this.rasterRect.top)/(this.rcOut.bottom-this.rcOut.top);if(this.displayData.isSurroundDisplay()&&(i*=this.nativeResolution.width/(this.rasterRect.right-this.rasterRect.left)),this.rcTarget={left:Math.floor(this.scanoutRect.left/i+.5),top:Math.floor(this.scanoutRect.top/o+.5),right:Math.floor(this.scanoutRect.right/i+.5),bottom:Math.floor(this.scanoutRect.bottom/o+.5)},this.displayData.isSurroundDisplay()){const w=this.rcTarget.right-this.rcTarget.left,G=this.rcTarget.bottom-this.rcTarget.top;this.rcTarget={left:Math.floor((this.rcOut.right-this.rcOut.left-w)/2),right:Math.floor(this.rcTarget.left+w),top:Math.floor((this.rcOut.bottom-G)/2),bottom:Math.floor(this.rcTarget.top+G)}}this.rcSrc={left:0,top:0,right:Math.floor(this.selectedResolution?.horizontal/i+.5),bottom:Math.floor(this.selectedResolution?.vertical/o+.5)},this.mulX=(this.rcTarget.right-this.rcTarget.left)/(this.rcSrc.right-this.rcSrc.left)*this.dispSizeM_X,this.mulY=(this.rcTarget.bottom-this.rcTarget.top)/(this.rcSrc.bottom-this.rcSrc.top)*this.dispSizeM_Y,this.rows=b.OC;let s=Math.floor((this.rcSrc.bottom-this.rcSrc.top)/this.rows);for(;s<b.bh&&this.rows>5;)this.rows--,s=Math.floor((this.rcSrc.bottom-this.rcSrc.top)/this.rows);const l=s*this.mulX,d=s*this.mulY;this.cell=this.getEmptySize(),this.cell.width=Math.floor(l+.5),this.cell.height=Math.floor(d+.5),this.rows=Math.floor((this.rcTarget.bottom-this.rcTarget.top)/this.cell.height),this.cols=Math.floor((this.rcTarget.right-this.rcTarget.left)/this.cell.width);const _=this.rows>b.bh?2:1,C=this.rows-2*_;this.gridOffset.y=(this.rcTarget.bottom-this.rcTarget.top)%this.cell.height/2,this.rcPad.top=this.gridOffset.y+this.cell.height*_,this.rcPad.bottom=this.rcPad.top+this.cell.height*C,this.rcPad.left=(this.rcTarget.right-this.rcTarget.left-this.cell.width*C)/2,this.rcPad.right=this.rcPad.left+this.cell.width*C,this.gridOffset.x=this.rcPad.left%this.cell.width,this.DrawObjects()}DrawObjects(){const n=this.rcTarget.right-this.rcTarget.left,e=this.rcTarget.bottom-this.rcTarget.top;this.previewCanvasElement.nativeElement.width=n,this.previewCanvasElement.nativeElement.height=e,this.previewCanvasElement.nativeElement.style.left=this.rcTarget.left+"px",this.previewCanvasElement.nativeElement.style.top=this.rcTarget.top+"px",this.context.clearRect(0,0,n,e),this.context.beginPath(),this.context.fillStyle="rgb(57, 57, 57)",this.context.fillRect(0,0,n,e),this.context.stroke(),this.context.beginPath(),this.context.strokeStyle="rgb(187, 187, 187)";for(let o=0;o<this.rows+1;o++)this.drawLine(0,this.gridOffset.y+this.cell.height*o,n,this.gridOffset.y+this.cell.height*o);for(let o=0;o<this.cols+1;o++)this.drawLine(this.gridOffset.x+this.cell.width*o,0,this.gridOffset.x+this.cell.width*o,e);this.context.stroke(),this.context.beginPath(),this.context.fillStyle="rgb(0, 0, 0)",this.context.fillRect(this.rcPad.left,this.rcPad.top,this.rcPad.right-this.rcPad.left,this.rcPad.bottom-this.rcPad.top),this.context.stroke(),this.drawEllipse(this.rcPad.left,this.rcPad.top,this.rcPad.right-this.rcPad.left,this.rcPad.bottom-this.rcPad.top);const i={left:this.rcPad.left+(this.rcPad.right-this.rcPad.left)/3,top:this.rcPad.top+(this.rcPad.bottom-this.rcPad.top)/3,right:this.rcPad.right-(this.rcPad.right-this.rcPad.left)/3,bottom:this.rcPad.bottom-(this.rcPad.bottom-this.rcPad.top)/3};this.context.fillStyle="rgb(0, 0, 0)",this.context.fillRect(i.left,i.top,i.right-i.left,i.bottom-i.top),this.context.beginPath(),this.context.lineWidth=2,this.context.strokeStyle="rgb(187, 187, 187)",this.drawLine(this.rcPad.left,this.rcPad.top,this.rcPad.right,this.rcPad.bottom),this.drawLine(this.rcPad.left,this.rcPad.bottom,this.rcPad.right,this.rcPad.top),this.context.stroke()}drawLine(n,e,i,o){this.context.moveTo(n,e),this.context.lineTo(i,o)}drawEllipse(n,e,i,o){const s=n+i/2,l=e+o/2,d=i/2,_=o/2;this.context.beginPath(),this.context.fillStyle="rgb(255, 255, 255)",this.context.ellipse(s,l,d-1,_-1,0,0,2*Math.PI),this.context.fill(),this.context.lineWidth=1,this.context.strokeStyle="rgba(0,0,0,0)",this.context.stroke()}onClickPreviewInfoDialog(n){n?.stopPropagation(),n?.preventDefault();const e={title:this.translateService.instant(V.H.Scaling.Preview),description:this.translateService.instant("system.display.scalingPreviewInfo.description"),typicalUsageScenarios:""};this.settingInfoModalService.openDialogWithData(e),this.nvAppTelemetryUtilService.sendClickEvent(f.EB.ScalingPreviewInfoDialog,`${f.d3.System_Displays}/${this.displayData.name}`,!0)}ngOnDestroy(){this.clearSubscription()}static{this.\u0275fac=function(e){return new(e||a)(t.rXU(v.J6),t.rXU(x.c$),t.rXU(Q.R),t.rXU(bt.P),t.rXU(f.AY))}}static{this.\u0275cmp=t.VBU({type:a,selectors:[["nv-app-display-scaling-preview"]],viewQuery:function(e,i){if(1&e&&(t.GBs(na,5),t.GBs(ea,5)),2&e){let o;t.mGM(o=t.lsd())&&(i.previewCanvasElement=o.first),t.mGM(o=t.lsd())&&(i.scalingPreviewContainer=o.first)}},inputs:{displayData:"displayData"},features:[t.OA$],decls:45,vars:39,consts:[["scalingPreviewContainer",""],["previewCanvasElement",""],[1,"displays-expansion-panel"],[1,"flex-col","gap-24"],[1,"flex-row","setting-info-icon-container"],[1,"font-body1","font-color-primary"],["svgIcon","info","tabindex","0","role","button",1,"color-white-hue-1","setting-info-icon","show",3,"click","keydown.enter"],[1,"flex-row","preview-main-container"],[1,"flex-row","gap-16"],[1,"flex-col","gap-16"],["panelClass","mat-select-font-body2 mat-opt-group-font-sub2",1,"mat-mdc-select-dark-background","resolution-dropdown","hig-button-overlay",3,"ngModelChange","selectionChange","ngModel"],[1,"dropdown-trigger","font-body2"],["class","hig-button-overlay",3,"value",4,"ngFor","ngForOf"],["panelClass","mat-select-font-body2 mat-opt-group-font-sub2",1,"mat-mdc-select-dark-background","refresh-rate-dropdown","hig-button-overlay",3,"ngModelChange","selectionChange","ngModel"],[1,"flex-col"],[1,"font-body1","font-color-secondary"],[1,"preview-image-container",3,"ngClass"],["id","canvas",1,"preview-canvas"],[1,"preview-error-container",3,"ngClass"],[1,"flex-row","preview-error","setting-info-icon-container"],["svgIcon","info",1,"color-white-hue-1","setting-info-icon","show"],[1,"hig-button-overlay",3,"value"]],template:function(e,i){if(1&e){const o=t.RV6();t.j41(0,"div",2)(1,"div",3)(2,"div",4)(3,"span",5),t.EFF(4),t.nI1(5,"translate"),t.k0s(),t.j41(6,"mat-icon",6),t.nI1(7,"translate"),t.nI1(8,"translate"),t.bIt("click",function(l){return t.eBV(o),t.Njj(i.onClickPreviewInfoDialog(l))})("keydown.enter",function(l){return t.eBV(o),t.Njj(i.onClickPreviewInfoDialog(l))}),t.k0s()(),t.j41(9,"div",7)(10,"div",3)(11,"div",8)(12,"div",9)(13,"span",5),t.EFF(14),t.nI1(15,"translate"),t.k0s(),t.j41(16,"mat-select",10),t.mxI("ngModelChange",function(l){return t.eBV(o),t.DH7(i.selectedResolution,l)||(i.selectedResolution=l),t.Njj(l)}),t.bIt("selectionChange",function(){return t.eBV(o),t.Njj(i.onResolutionChanged())}),t.j41(17,"mat-select-trigger",11),t.EFF(18),t.nI1(19,"translate"),t.k0s(),t.DNE(20,ia,2,2,"mat-option",12),t.k0s()(),t.j41(21,"div",9)(22,"span",5),t.EFF(23),t.nI1(24,"translate"),t.k0s(),t.j41(25,"mat-select",13),t.mxI("ngModelChange",function(l){return t.eBV(o),t.DH7(i.currentRefreshRate,l)||(i.currentRefreshRate=l),t.Njj(l)}),t.bIt("selectionChange",function(){return t.eBV(o),t.Njj(i.onRefreshRateChanged())}),t.j41(26,"mat-select-trigger",11),t.EFF(27),t.k0s(),t.DNE(28,aa,2,2,"mat-option",12),t.k0s()()(),t.j41(29,"div",14)(30,"span",5),t.EFF(31),t.nI1(32,"translate"),t.k0s(),t.j41(33,"span",15),t.EFF(34),t.k0s()()(),t.j41(35,"div",16,0),t.nrm(37,"canvas",17,1),t.k0s(),t.j41(39,"div",18)(40,"div",19),t.nrm(41,"mat-icon",20),t.j41(42,"span",15),t.EFF(43),t.nI1(44,"translate"),t.k0s()()()()()()}2&e&&(t.R7$(4),t.SpI(" ",t.bMT(5,17,i.displayHeaders.Scaling.Preview)," "),t.R7$(2),t.qtP("aria-label","",t.bMT(7,19,i.displayHeaders.Scaling.Preview)," ",t.bMT(8,21,"common.info"),""),t.R7$(8),t.JRh(t.bMT(15,23,i.displayHeaders.Scaling.Resolution)),t.R7$(2),t.R50("ngModel",i.selectedResolution),t.R7$(2),t.JRh(t.bMT(19,25,null==i.selectedResolution?null:i.selectedResolution.label)),t.R7$(2),t.Y8G("ngForOf",i.scalingUIResolutionList),t.R7$(3),t.JRh(t.bMT(24,27,i.displayHeaders.Scaling.RefreshRate)),t.R7$(2),t.R50("ngModel",i.currentRefreshRate),t.R7$(2),t.JRh(null==i.currentRefreshRate?null:i.currentRefreshRate.label),t.R7$(),t.Y8G("ngForOf",null==i.selectedResolution?null:i.selectedResolution.refreshRates),t.R7$(3),t.SpI(" ",t.bMT(32,29,i.nativeRecommendedLabel)," "),t.R7$(3),t.JRh(i.nativeRecommendedResolutionString),t.R7$(),t.Y8G("ngClass",t.l_i(33,Mn,!i.showPreviewError,i.showPreviewError)),t.R7$(4),t.Y8G("ngClass",t.l_i(36,Mn,i.showPreviewError,!i.showPreviewError)),t.R7$(4),t.JRh(t.bMT(44,31,"system.display.scalingPanel.scalingPreviewError")))},dependencies:[u.YU,u.Sq,L.BC,L.vS,F.An,B.VO,B.$2,st.wT,N.PW,x.D9],styles:[".preview-main-container[_ngcontent-%COMP%]{gap:16px}.resolution-dropdown[_ngcontent-%COMP%]{width:380px}.refresh-rate-dropdown[_ngcontent-%COMP%]{width:138px}.preview-image-container[_ngcontent-%COMP%]{width:255px;height:146px;position:relative;background:var(--secondary-1000)}.preview-image-container[_ngcontent-%COMP%] .preview-canvas[_ngcontent-%COMP%]{position:absolute}.preview-error-container[_ngcontent-%COMP%]{background-color:var(--primary-700);width:255px;height:146px}.preview-error-container[_ngcontent-%COMP%] .preview-error[_ngcontent-%COMP%]{display:flex;justify-content:center;align-items:center;width:100%;height:100%}.visible[_ngcontent-%COMP%]{display:block}.hidden[_ngcontent-%COMP%]{display:none}",".ex-panel-margin[_ngcontent-%COMP%]{margin:8px 0}.ex-panel-bg[_ngcontent-%COMP%]{background-color:var(--system-common-ex-panel-bg-color)}.dark-divider[_ngcontent-%COMP%]{border-top-color:var(--primary-900)}.bottom-divider[_ngcontent-%COMP%]{border-bottom:1px solid var(--primary-900)}.disable-mat-select-trigger[_ngcontent-%COMP%]{opacity:.38}","[_ngcontent-%COMP%]:root{--rwd-column-count: 4;--rwd-gutter-count: 3 ;--rwd-gutter-size: 8px;--rwd-container-side-spacing: 16px;--rwd-column-size: calc((var(--rwd-container-width) - var(--rwd-sidebar-width) - 2 * 16px - 8px * 3 ) / 4);--rwd-sidebar-width: 0px;--rwd-container-width: 100vw}@media screen and (min-width: 480px){[_ngcontent-%COMP%]:root{--rwd-column-count: 6;--rwd-gutter-count: 5 ;--rwd-column-size: calc((var(--rwd-container-width) - var(--rwd-sidebar-width) - 2 * 16px - 8px * 5 ) / 6)}}@media screen and (min-width: 720px){[_ngcontent-%COMP%]:root{--rwd-column-count: 8;--rwd-gutter-count: 7 ;--rwd-column-size: calc((var(--rwd-container-width) - var(--rwd-sidebar-width) - 2 * 16px - 8px * 7 ) / 8)}}@media screen and (min-width: 960px){[_ngcontent-%COMP%]:root{--rwd-column-count: 12;--rwd-gutter-count: 11 ;--rwd-container-side-spacing: 24px;--rwd-column-size: calc((var(--rwd-container-width) - var(--rwd-sidebar-width) - 2 * 24px - 8px * 11 ) / 12)}}@media screen and (min-width: 1440px){[_ngcontent-%COMP%]:root{--rwd-gutter-size: 16px;--rwd-column-size: calc((var(--rwd-container-width) - var(--rwd-sidebar-width) - 2 * 24px - 16px * 11 ) / 12)}}[_ngcontent-%COMP%]:root{--hig-marquee-ratio: .3229;--hig-marquee-parent-container-width: 100vw;--hig-marquee-container-height: calc(var(--hig-marquee-ratio) * 100vw);--hig-marquee-corner-column: 56px;--hig-marquee-text-column: 14vw;--hig-marquee-padded-image-first-row: calc(var(--hig-marquee-ratio) * (100vw - var(--hig-marquee-corner-column) - var(--hig-marquee-text-column)));--hig-marquee-padded-image-second-row: calc(var(--hig-marquee-container-height) - var(--hig-marquee-padded-image-first-row))}.ellipsified-text-with-tooltip[_ngcontent-%COMP%]{text-overflow:ellipsis;overflow:hidden}.ellipsified-text-with-tooltip.multi-line-ellipsis[_ngcontent-%COMP%]{display:-webkit-box;-webkit-box-orient:vertical;white-space:wrap}.ellipsified-text-with-tooltip.single-line-ellipsis[_ngcontent-%COMP%]{white-space:nowrap}.ellipsis[_ngcontent-%COMP%]{text-overflow:ellipsis;overflow:hidden}.system-display-box[_ngcontent-%COMP%]{box-sizing:border-box;border:1px solid var(--system-display-border-color);display:flex;width:26px;height:20px;flex-direction:row;align-self:center;justify-content:center;align-items:center}.system-display-box[_ngcontent-%COMP%] span[_ngcontent-%COMP%]{color:var(--system-display-span-color)}.displays-chip[_ngcontent-%COMP%]{height:32px}.accordion-padding[_ngcontent-%COMP%]{padding:14px 0}.accordion-header[_ngcontent-%COMP%]{padding:14px 16px;width:100%}.accordion-header[_ngcontent-%COMP%] mat-icon[_ngcontent-%COMP%]{color:var(--primary-contrast-900)}.info-icon[_ngcontent-%COMP%]{width:16px;height:16px;flex-shrink:0}",".margin-0[_ngcontent-%COMP%]{margin:0}.padding-0[_ngcontent-%COMP%]{padding:0}.gap-0[_ngcontent-%COMP%]{gap:0px}.margin-top-0[_ngcontent-%COMP%]{margin-top:0}.padding-top-0[_ngcontent-%COMP%]{padding-top:0}.margin-bottom-0[_ngcontent-%COMP%]{margin-bottom:0}.padding-bottom-0[_ngcontent-%COMP%]{padding-bottom:0}.margin-left-0[_ngcontent-%COMP%]{margin-left:0}.padding-left-0[_ngcontent-%COMP%]{padding-left:0}.margin-right-0[_ngcontent-%COMP%]{margin-right:0}.padding-right-0[_ngcontent-%COMP%]{padding-right:0}.margin-4[_ngcontent-%COMP%]{margin:4px}.padding-4[_ngcontent-%COMP%]{padding:4px}.gap-4[_ngcontent-%COMP%]{gap:4px}.margin-top-4[_ngcontent-%COMP%]{margin-top:4px}.padding-top-4[_ngcontent-%COMP%]{padding-top:4px}.margin-bottom-4[_ngcontent-%COMP%]{margin-bottom:4px}.padding-bottom-4[_ngcontent-%COMP%]{padding-bottom:4px}.margin-left-4[_ngcontent-%COMP%]{margin-left:4px}.padding-left-4[_ngcontent-%COMP%]{padding-left:4px}.margin-right-4[_ngcontent-%COMP%]{margin-right:4px}.padding-right-4[_ngcontent-%COMP%]{padding-right:4px}.margin-8[_ngcontent-%COMP%]{margin:8px}.padding-8[_ngcontent-%COMP%]{padding:8px}.gap-8[_ngcontent-%COMP%]{gap:8px}.margin-top-8[_ngcontent-%COMP%]{margin-top:8px}.padding-top-8[_ngcontent-%COMP%]{padding-top:8px}.margin-bottom-8[_ngcontent-%COMP%]{margin-bottom:8px}.padding-bottom-8[_ngcontent-%COMP%]{padding-bottom:8px}.margin-left-8[_ngcontent-%COMP%]{margin-left:8px}.padding-left-8[_ngcontent-%COMP%]{padding-left:8px}.margin-right-8[_ngcontent-%COMP%]{margin-right:8px}.padding-right-8[_ngcontent-%COMP%]{padding-right:8px}.margin-10[_ngcontent-%COMP%]{margin:10px}.padding-10[_ngcontent-%COMP%]{padding:10px}.gap-10[_ngcontent-%COMP%]{gap:10px}.margin-top-10[_ngcontent-%COMP%]{margin-top:10px}.padding-top-10[_ngcontent-%COMP%]{padding-top:10px}.margin-bottom-10[_ngcontent-%COMP%]{margin-bottom:10px}.padding-bottom-10[_ngcontent-%COMP%]{padding-bottom:10px}.margin-left-10[_ngcontent-%COMP%]{margin-left:10px}.padding-left-10[_ngcontent-%COMP%]{padding-left:10px}.margin-right-10[_ngcontent-%COMP%]{margin-right:10px}.padding-right-10[_ngcontent-%COMP%]{padding-right:10px}.margin-12[_ngcontent-%COMP%]{margin:12px}.padding-12[_ngcontent-%COMP%]{padding:12px}.gap-12[_ngcontent-%COMP%]{gap:12px}.margin-top-12[_ngcontent-%COMP%]{margin-top:12px}.padding-top-12[_ngcontent-%COMP%]{padding-top:12px}.margin-bottom-12[_ngcontent-%COMP%]{margin-bottom:12px}.padding-bottom-12[_ngcontent-%COMP%]{padding-bottom:12px}.margin-left-12[_ngcontent-%COMP%]{margin-left:12px}.padding-left-12[_ngcontent-%COMP%]{padding-left:12px}.margin-right-12[_ngcontent-%COMP%]{margin-right:12px}.padding-right-12[_ngcontent-%COMP%]{padding-right:12px}.margin-16[_ngcontent-%COMP%]{margin:16px}.padding-16[_ngcontent-%COMP%]{padding:16px}.gap-16[_ngcontent-%COMP%]{gap:16px}.margin-top-16[_ngcontent-%COMP%]{margin-top:16px}.padding-top-16[_ngcontent-%COMP%]{padding-top:16px}.margin-bottom-16[_ngcontent-%COMP%]{margin-bottom:16px}.padding-bottom-16[_ngcontent-%COMP%]{padding-bottom:16px}.margin-left-16[_ngcontent-%COMP%]{margin-left:16px}.padding-left-16[_ngcontent-%COMP%]{padding-left:16px}.margin-right-16[_ngcontent-%COMP%]{margin-right:16px}.padding-right-16[_ngcontent-%COMP%]{padding-right:16px}.margin-20[_ngcontent-%COMP%]{margin:20px}.padding-20[_ngcontent-%COMP%]{padding:20px}.gap-20[_ngcontent-%COMP%]{gap:20px}.margin-top-20[_ngcontent-%COMP%]{margin-top:20px}.padding-top-20[_ngcontent-%COMP%]{padding-top:20px}.margin-bottom-20[_ngcontent-%COMP%]{margin-bottom:20px}.padding-bottom-20[_ngcontent-%COMP%]{padding-bottom:20px}.margin-left-20[_ngcontent-%COMP%]{margin-left:20px}.padding-left-20[_ngcontent-%COMP%]{padding-left:20px}.margin-right-20[_ngcontent-%COMP%]{margin-right:20px}.padding-right-20[_ngcontent-%COMP%]{padding-right:20px}.margin-24[_ngcontent-%COMP%]{margin:24px}.padding-24[_ngcontent-%COMP%]{padding:24px}.gap-24[_ngcontent-%COMP%]{gap:24px}.margin-top-24[_ngcontent-%COMP%]{margin-top:24px}.padding-top-24[_ngcontent-%COMP%]{padding-top:24px}.margin-bottom-24[_ngcontent-%COMP%]{margin-bottom:24px}.padding-bottom-24[_ngcontent-%COMP%]{padding-bottom:24px}.margin-left-24[_ngcontent-%COMP%]{margin-left:24px}.padding-left-24[_ngcontent-%COMP%]{padding-left:24px}.margin-right-24[_ngcontent-%COMP%]{margin-right:24px}.padding-right-24[_ngcontent-%COMP%]{padding-right:24px}.margin-32[_ngcontent-%COMP%]{margin:32px}.padding-32[_ngcontent-%COMP%]{padding:32px}.gap-32[_ngcontent-%COMP%]{gap:32px}.margin-top-32[_ngcontent-%COMP%]{margin-top:32px}.padding-top-32[_ngcontent-%COMP%]{padding-top:32px}.margin-bottom-32[_ngcontent-%COMP%]{margin-bottom:32px}.padding-bottom-32[_ngcontent-%COMP%]{padding-bottom:32px}.margin-left-32[_ngcontent-%COMP%]{margin-left:32px}.padding-left-32[_ngcontent-%COMP%]{padding-left:32px}.margin-right-32[_ngcontent-%COMP%]{margin-right:32px}.padding-right-32[_ngcontent-%COMP%]{padding-right:32px}.margin-36[_ngcontent-%COMP%]{margin:36px}.padding-36[_ngcontent-%COMP%]{padding:36px}.gap-36[_ngcontent-%COMP%]{gap:36px}.margin-top-36[_ngcontent-%COMP%]{margin-top:36px}.padding-top-36[_ngcontent-%COMP%]{padding-top:36px}.margin-bottom-36[_ngcontent-%COMP%]{margin-bottom:36px}.padding-bottom-36[_ngcontent-%COMP%]{padding-bottom:36px}.margin-left-36[_ngcontent-%COMP%]{margin-left:36px}.padding-left-36[_ngcontent-%COMP%]{padding-left:36px}.margin-right-36[_ngcontent-%COMP%]{margin-right:36px}.padding-right-36[_ngcontent-%COMP%]{padding-right:36px}.flex-row[_ngcontent-%COMP%]{display:flex}.flex-col[_ngcontent-%COMP%]{display:flex;flex-direction:column}.justify-content-space-between[_ngcontent-%COMP%]{justify-content:space-between}.justify-content-center[_ngcontent-%COMP%]{justify-content:center}.align-items-center[_ngcontent-%COMP%]{align-items:center}.flex-none[_ngcontent-%COMP%]{flex:none}"]})}}return a})();function ha(a,r){if(1&a&&(t.j41(0,"div",21),t.EFF(1),t.k0s()),2&a){const n=t.XpG();t.R7$(),t.SpI(" ",n.panelSummary," ")}}function ma(a,r){if(1&a&&(t.j41(0,"div",22),t.EFF(1),t.nI1(2,"translate"),t.k0s()),2&a){const n=t.XpG();t.R7$(),t.SpI(" ",t.bMT(2,1,n.displayHeaders.Scaling.PanelSummary)," ")}}function fa(a,r){if(1&a&&(t.nrm(0,"mat-icon",23),t.nI1(1,"async")),2&a){const n=t.XpG();t.Y8G("ngClass",!0===t.bMT(1,1,n.isSumdDirty$)?"display-disabled-color":"")}}function _a(a,r){1&a&&t.nrm(0,"mat-icon",24)}function ya(a,r){if(1&a){const n=t.RV6();t.j41(0,"mat-chip",25),t.bIt("keydown",function(i){const o=t.eBV(n).$implicit,s=t.XpG();return t.Njj(s.updateScalingMethod(i,o))})("click",function(i){const o=t.eBV(n).$implicit,s=t.XpG();return t.Njj(s.updateScalingMethod(i,o))}),t.nrm(1,"mat-icon",26),t.j41(2,"span",27),t.EFF(3),t.nI1(4,"translate"),t.k0s()()}if(2&a){const n=r.$implicit,e=t.XpG();t.Y8G("selected",n.scalingMethod===(null==e.scalingSetting||null==e.scalingSetting.scalingSettingsCurrent?null:e.scalingSetting.scalingSettingsCurrent.scalingMethod))("disabled",e.disableScaling),t.R7$(),t.Y8G("svgIcon",n.icon),t.R7$(2),t.JRh(t.bMT(4,4,n.label))}}function Ca(a,r){if(1&a){const n=t.RV6();t.j41(0,"mat-chip",28),t.bIt("click",function(i){const o=t.eBV(n).$implicit,s=t.XpG();return t.Njj(s.updateScalingMode(i,null==o?null:o.scalingMode))})("keydown.enter",function(i){const o=t.eBV(n).$implicit,s=t.XpG();return t.Njj(s.updateScalingMode(i,null==o?null:o.scalingMode))}),t.j41(1,"span",27),t.EFF(2),t.nI1(3,"translate"),t.k0s()()}if(2&a){const n=r.$implicit,e=t.XpG();t.Y8G("selected",n.scalingMode===(null==e.scalingSetting||null==e.scalingSetting.scalingSettingsCurrent?null:e.scalingSetting.scalingSettingsCurrent.scalingMode))("disabled",e.disableScaling),t.R7$(2),t.JRh(t.bMT(3,3,n.label))}}let ba=(()=>{class a{constructor(n,e,i,o,s,l,d){this.translateService=e,this.displayUtilService=i,this.settingInfoModalService=o,this.nvAppTelemetryUtilService=s,this.multiDisplaysSupportService=l,this.keyboardMappingService=d,this.panelSummary="",this.scalingMetaDataList=[],this.ScalingMethod=c.Z$,this.isSumdDirty$=new lt.c,this.displayHeaders=V.H,this.logger=n.getLogger("nvapp/DisplayScalingPanelComponent")}ngOnInit(){this.refreshData(),this.listenForSumdDirtyState()}ngOnDestroy(){this.clearSubscription()}ngOnChanges(n){n&&n.displayData&&n.displayData?.isFirstChange()||this.refreshData()}listenForSumdDirtyState(){this.isSumdDirty$=this.multiDisplaysSupportService.isSumdDirty$.pipe((0,M.M)(n=>{this.isExpanded=this.isExpanded&&!n}))}refreshData(){this.clearSubscription(),this.scalingSubscription=this.displayData.getScalingSetting$.subscribe(n=>{this.logger.info("Scaling",n),this.scalingSetting=n,this.setPanelSummaryString(),this.prepareScalingUiData()},n=>{this.logger.info("Failed to get the scaling setting",n)}),this.checkFeatureVisibility()}clearSubscription(){this.scalingSubscription&&(this.scalingSubscription.unsubscribe(),this.scalingSubscription=null)}getScalingMethodText(n){const e=b.K5.get(n);return e||this.logger.error("Unknown scaling method found:",n),e?this.translateService.instant(e):""}getScalingModeText(n){const e=b.yo.get(n);return e||this.logger.error("Unknown scaling mode found:",n),e?this.translateService.instant(e):""}prepareScalingUiData(){this.scalingMetaDataList=[],this.scalingSetting?.scalingSettingsPossibleValues?.forEach(e=>{const o={label:this.getScalingModeText(e.scalingMode),scalingMode:e.scalingMode},s=this.scalingMetaDataList.find(l=>l.scalingMethod===e.scalingMethod);if(s)s.scalingModeMetaDataList.push(o);else{const l=this.getScalingMethodText(e.scalingMethod),d=[];d.push(o);const _={scalingMethod:e.scalingMethod,label:l,icon:b.Gm.get(e.scalingMethod),scalingModeMetaDataList:d};this.scalingMetaDataList.push(_)}});const n=this.scalingMetaDataList.find(e=>e.scalingMethod===this.scalingSetting?.scalingSettingsCurrent?.scalingMethod);n&&(this.currentlySelectedScalingData=n),this.logger.info(" scaling metadata is",this.scalingMetaDataList)}setPanelSummaryString(){const n=this.getScalingMethodText(this.scalingSetting?.scalingSettingsCurrent?.scalingMethod),e=this.getScalingModeText(this.scalingSetting?.scalingSettingsCurrent?.scalingMode);this.panelSummary=[this.translateService.instant("system.display.scalingPanel.scalingModePanelSummary",{mode:n}),this.translateService.instant("system.display.scalingPanel.scalingDevicePanelSummary",{scalingDevice:e})].join(" | "),this.logger.info("scaling info: ",this.scalingSetting?.scalingSettingsCurrent)}applyScaling(n){let e="";n===b.bg?e=this.scalingSetting.scalingSettingsCurrent.scalingMethod?.toString():n===b.OW&&(e=this.scalingSetting.scalingSettingsCurrent.scalingMode?.toString()),this.displayData.applyScaling(this.scalingSetting.scalingSettingsCurrent).pipe((0,m.s)(1)).subscribe(i=>{this.logger.info("Successfully applied scaling"),this.nvAppTelemetryUtilService.sendSettingChangeEvent(n,e,`${f.d3.System_Displays}/${this.displayData.name}`,!0),this.blurAllChips()},i=>{this.logger.error(`Failed to apply scaling: ${i}`),this.nvAppTelemetryUtilService.sendSettingChangeEvent(n,e,`${f.d3.System_Displays}/${this.displayData.name}`,!0,i&&i.message?i.message:""),this.blurAllChips()})}updateScalingMethod(n,e){this.keyboardMappingService.isMouseOrKeyboardSpaceOrEnterEvent(n)&&this.scalingSetting?.scalingSettingsCurrent.scalingMethod!==e.scalingMethod&&(this.scalingSetting.scalingSettingsCurrent.scalingMethod=e.scalingMethod,this.currentlySelectedScalingData=e,this.currentlySelectedScalingData?.scalingModeMetaDataList.find(i=>i.scalingMode===this.scalingSetting?.scalingSettingsCurrent?.scalingMode)||(this.scalingSetting.scalingSettingsCurrent.scalingMode=this.currentlySelectedScalingData?.scalingModeMetaDataList[0]?.scalingMode),this.setPanelSummaryString(),this.logger.info("scalingSetting",this.scalingSetting),this.applyScaling(b.bg))}updateScalingMode(n,e){this.scalingSetting?.scalingSettingsCurrent.scalingMode!==e&&(this.scalingSetting.scalingSettingsCurrent.scalingMode=e,this.logger.info("scalingSetting",this.scalingSetting),this.setPanelSummaryString(),this.applyScaling(b.OW))}onScalingOverrideChange(){this.scalingSetting.isOverrideScalingEnabled=!this.scalingSetting.isOverrideScalingEnabled,this.displayData.applyScalingOverride(this.scalingSetting.isOverrideScalingEnabled).pipe((0,m.s)(1)).subscribe(n=>{this.logger.info("Successfully applied scaling overrides"),this.nvAppTelemetryUtilService.sendSettingChangeEvent(b.p5,this.scalingSetting.isOverrideScalingEnabled?f.T8.TRUE:f.T8.FALSE,`${f.d3.System_Displays}/${this.displayData.name}`,!0)},n=>{this.logger.error(`Failed to apply scaling overrides: ${n}`),this.nvAppTelemetryUtilService.sendSettingChangeEvent(b.p5,this.scalingSetting.isOverrideScalingEnabled?f.T8.TRUE:f.T8.FALSE,`${f.d3.System_Displays}/${this.displayData.name}`,!0,n&&n.message?n.message:"")})}checkFeatureVisibility(){this.displayUtilService.getIsUpscalingEnabled().pipe((0,m.s)(1)).subscribe(n=>{this.disableScaling=n?.enabled})}showScalingSettingsInfoPopup(n){this.displayUtilService.getNISState().pipe((0,m.s)(1)).subscribe(e=>{const i={title:this.translateService.instant(n?.title),description:this.translateService.instant(n?.description),typicalUsageScenarios:n?.typicalUsageScenarios?this.translateService.instant(n?.typicalUsageScenarios):""};e&&(i.importantInfo=[this.translateService.instant("system.display.scalingPanel.scalingImportantInfo")]),this.settingInfoModalService.openDialogWithData(i)})}onClickScalingModeInfoDialog(){this.showScalingSettingsInfoPopup({title:V.H.Scaling.Mode,description:"system.display.scalingModeInfo.description",typicalUsageScenarios:"system.display.scalingModeInfo.typicalUsageScenarios"}),this.nvAppTelemetryUtilService.sendClickEvent(f.EB.ScalingModeInfoDialog,`${f.d3.System_Displays}/${this.displayData.name}`,!0)}onClickPerformScalingOnInfoDialog(){this.showScalingSettingsInfoPopup({title:V.H.Scaling.Device,description:"system.display.performScalingOnInfo.description",typicalUsageScenarios:"system.display.performScalingOnInfo.typicalUsageScenarios"}),this.nvAppTelemetryUtilService.sendClickEvent(f.EB.ScalingDeviceInfoDialog,`${f.d3.System_Displays}/${this.displayData.name}`,!0)}blurAllChips(){this.chips?.forEach(n=>n?._blur())}static{this.\u0275fac=function(e){return new(e||a)(t.rXU(v.J6),t.rXU(x.c$),t.rXU(un.Q),t.rXU(bt.P),t.rXU(f.AY),t.rXU(q.b),t.rXU(_t.j))}}static{this.\u0275cmp=t.VBU({type:a,selectors:[["nv-app-display-scaling-panel"]],viewQuery:function(e,i){if(1&e&&(t.GBs(Pn,5),t.GBs(z.Id,5)),2&e){let o;t.mGM(o=t.lsd())&&(i.scalingPreviewComponent=o.first),t.mGM(o=t.lsd())&&(i.chips=o)}},inputs:{isExpanded:"isExpanded",displayData:"displayData"},features:[t.OA$],decls:43,vars:48,consts:[["hideToggle","true",1,"displays-expansion-panel",3,"expandedChange","expanded","ngClass","disabled"],[3,"collapsedHeight","expandedHeight"],[1,"flex-row","accordion-header","hig-button-overlay","justify-content-space-between","align-items-center",3,"ngClass"],[1,"flex-col"],[1,"font-sub1","font-color-primary",3,"ngClass"],["class","font-body2 font-color-secondary panel-summary",4,"ngIf"],["class","font-body2 font-color-secondary",4,"ngIf"],["svgIcon","chevron_down",3,"ngClass",4,"ngIf"],["svgIcon","chevron_up",4,"ngIf"],[1,"flex-col","gap-16","margin-top-16","margin-bottom-16"],[1,"flex-col","gap-24"],[1,"flex-col","gap-16"],[1,"flex-row","setting-info-icon-container"],[1,"font-body1","font-color-primary"],["svgIcon","info","tabindex","0","role","button",1,"color-white-hue-1","setting-info-icon","show",3,"click","keydown.enter"],[1,"flex-row","gap-8"],["selectable","","class","displays-chip mat-chip-with-icon",3,"selected","disabled","keydown","click",4,"ngFor","ngForOf"],["svgIcon","info","tabindex","0","role","img",1,"color-white-hue-1","setting-info-icon","show",3,"click","keydown.enter"],["selectable","","class","displays-chip",3,"selected","disabled","click","keydown.enter",4,"ngFor","ngForOf"],["color","accent",3,"change","disabled","checked","nvAppAnnouncer","associatedMessage"],[3,"displayData"],[1,"font-body2","font-color-secondary","panel-summary"],[1,"font-body2","font-color-secondary"],["svgIcon","chevron_down",3,"ngClass"],["svgIcon","chevron_up"],["selectable","",1,"displays-chip","mat-chip-with-icon",3,"keydown","click","selected","disabled"],[1,"font-color-secondary","scaling-method-icon",3,"svgIcon"],[1,"font-body2"],["selectable","",1,"displays-chip",3,"click","keydown.enter","selected","disabled"]],template:function(e,i){1&e&&(t.j41(0,"mat-expansion-panel",0),t.nI1(1,"async"),t.nI1(2,"async"),t.mxI("expandedChange",function(s){return t.DH7(i.isExpanded,s)||(i.isExpanded=s),s}),t.j41(3,"mat-expansion-panel-header",1)(4,"div",2)(5,"div",3)(6,"div",4),t.nI1(7,"async"),t.EFF(8),t.nI1(9,"translate"),t.k0s(),t.DNE(10,ha,2,1,"div",5),t.nI1(11,"async"),t.DNE(12,ma,3,3,"div",6),t.k0s(),t.DNE(13,fa,2,3,"mat-icon",7)(14,_a,1,0,"mat-icon",8),t.k0s()(),t.j41(15,"div",9)(16,"div",10)(17,"div",11)(18,"div",12)(19,"span",13),t.EFF(20),t.nI1(21,"translate"),t.k0s(),t.j41(22,"mat-icon",14),t.nI1(23,"translate"),t.nI1(24,"translate"),t.bIt("click",function(){return i.onClickScalingModeInfoDialog()})("keydown.enter",function(){return i.onClickScalingModeInfoDialog()}),t.k0s()(),t.j41(25,"div",15)(26,"mat-chip-list"),t.DNE(27,ya,5,6,"mat-chip",16),t.k0s()()(),t.j41(28,"div",11)(29,"div",12)(30,"span",13),t.EFF(31),t.nI1(32,"translate"),t.k0s(),t.j41(33,"mat-icon",17),t.nI1(34,"translate"),t.bIt("click",function(){return i.onClickPerformScalingOnInfoDialog()})("keydown.enter",function(){return i.onClickPerformScalingOnInfoDialog()}),t.k0s()(),t.j41(35,"div",15)(36,"mat-chip-list"),t.DNE(37,Ca,4,5,"mat-chip",18),t.k0s()()(),t.j41(38,"mat-checkbox",19),t.bIt("change",function(){return i.onScalingOverrideChange()}),t.EFF(39),t.nI1(40,"translate"),t.k0s()(),t.nrm(41,"mat-divider")(42,"nv-app-display-scaling-preview",20),t.k0s()()),2&e&&(t.R50("expanded",i.isExpanded),t.Y8G("ngClass",i.isExpanded?"ex-panel-bg":!0===t.bMT(1,26,i.isSumdDirty$)?"display-panel-disabled":"")("disabled",t.bMT(2,28,i.isSumdDirty$)),t.R7$(3),t.Y8G("collapsedHeight","auto")("expandedHeight","auto"),t.R7$(),t.Y8G("ngClass",i.isExpanded?"bottom-divider":""),t.R7$(2),t.Y8G("ngClass",!0===t.bMT(7,30,i.isSumdDirty$)?"display-disabled-color":""),t.R7$(2),t.SpI(" ",t.bMT(9,32,i.displayHeaders.DisplayScaling)," "),t.R7$(2),t.Y8G("ngIf",!i.isExpanded&&!1===t.bMT(11,34,i.isSumdDirty$)),t.R7$(2),t.Y8G("ngIf",i.isExpanded),t.R7$(),t.Y8G("ngIf",!i.isExpanded),t.R7$(),t.Y8G("ngIf",i.isExpanded),t.R7$(6),t.JRh(t.bMT(21,36,i.displayHeaders.Scaling.Mode)),t.R7$(2),t.qtP("aria-label","",t.bMT(23,38,i.displayHeaders.Scaling.Mode)," ",t.bMT(24,40,"common.info"),""),t.R7$(5),t.Y8G("ngForOf",i.scalingMetaDataList),t.R7$(4),t.SpI(" ",t.bMT(32,42,i.displayHeaders.Scaling.Device),""),t.R7$(2),t.BMQ("aria-label",t.bMT(34,44,i.displayHeaders.Scaling.Device)),t.R7$(4),t.Y8G("ngForOf",null==i.currentlySelectedScalingData?null:i.currentlySelectedScalingData.scalingModeMetaDataList),t.R7$(),t.Y8G("disabled",i.disableScaling||(null==i.scalingSetting||null==i.scalingSetting.scalingSettingsCurrent?null:i.scalingSetting.scalingSettingsCurrent.scalingMethod)===i.ScalingMethod.IntegerScaling)("checked",null==i.scalingSetting?null:i.scalingSetting.isOverrideScalingEnabled)("nvAppAnnouncer",null==i.scalingSetting?null:i.scalingSetting.isOverrideScalingEnabled)("associatedMessage",i.displayHeaders.Scaling.OverrideMode),t.R7$(),t.JRh(t.bMT(40,46,i.displayHeaders.Scaling.OverrideMode)),t.R7$(3),t.Y8G("displayData",i.displayData))},dependencies:[u.YU,u.Sq,u.bT,J.tG,et.nM,F.An,X.q,H.GK,H.Z2,dt.So,z.O_,z.Id,N.PW,nt.L,Pn,x.D9,u.Jj],styles:[".scaling-method-icon[_ngcontent-%COMP%]{width:20px;height:20px;line-height:20px;margin-right:6px}",".ex-panel-margin[_ngcontent-%COMP%]{margin:8px 0}.ex-panel-bg[_ngcontent-%COMP%]{background-color:var(--system-common-ex-panel-bg-color)}.dark-divider[_ngcontent-%COMP%]{border-top-color:var(--primary-900)}.bottom-divider[_ngcontent-%COMP%]{border-bottom:1px solid var(--primary-900)}.disable-mat-select-trigger[_ngcontent-%COMP%]{opacity:.38}","[_ngcontent-%COMP%]:root{--rwd-column-count: 4;--rwd-gutter-count: 3 ;--rwd-gutter-size: 8px;--rwd-container-side-spacing: 16px;--rwd-column-size: calc((var(--rwd-container-width) - var(--rwd-sidebar-width) - 2 * 16px - 8px * 3 ) / 4);--rwd-sidebar-width: 0px;--rwd-container-width: 100vw}@media screen and (min-width: 480px){[_ngcontent-%COMP%]:root{--rwd-column-count: 6;--rwd-gutter-count: 5 ;--rwd-column-size: calc((var(--rwd-container-width) - var(--rwd-sidebar-width) - 2 * 16px - 8px * 5 ) / 6)}}@media screen and (min-width: 720px){[_ngcontent-%COMP%]:root{--rwd-column-count: 8;--rwd-gutter-count: 7 ;--rwd-column-size: calc((var(--rwd-container-width) - var(--rwd-sidebar-width) - 2 * 16px - 8px * 7 ) / 8)}}@media screen and (min-width: 960px){[_ngcontent-%COMP%]:root{--rwd-column-count: 12;--rwd-gutter-count: 11 ;--rwd-container-side-spacing: 24px;--rwd-column-size: calc((var(--rwd-container-width) - var(--rwd-sidebar-width) - 2 * 24px - 8px * 11 ) / 12)}}@media screen and (min-width: 1440px){[_ngcontent-%COMP%]:root{--rwd-gutter-size: 16px;--rwd-column-size: calc((var(--rwd-container-width) - var(--rwd-sidebar-width) - 2 * 24px - 16px * 11 ) / 12)}}[_ngcontent-%COMP%]:root{--hig-marquee-ratio: .3229;--hig-marquee-parent-container-width: 100vw;--hig-marquee-container-height: calc(var(--hig-marquee-ratio) * 100vw);--hig-marquee-corner-column: 56px;--hig-marquee-text-column: 14vw;--hig-marquee-padded-image-first-row: calc(var(--hig-marquee-ratio) * (100vw - var(--hig-marquee-corner-column) - var(--hig-marquee-text-column)));--hig-marquee-padded-image-second-row: calc(var(--hig-marquee-container-height) - var(--hig-marquee-padded-image-first-row))}.ellipsified-text-with-tooltip[_ngcontent-%COMP%]{text-overflow:ellipsis;overflow:hidden}.ellipsified-text-with-tooltip.multi-line-ellipsis[_ngcontent-%COMP%]{display:-webkit-box;-webkit-box-orient:vertical;white-space:wrap}.ellipsified-text-with-tooltip.single-line-ellipsis[_ngcontent-%COMP%]{white-space:nowrap}.ellipsis[_ngcontent-%COMP%]{text-overflow:ellipsis;overflow:hidden}.system-display-box[_ngcontent-%COMP%]{box-sizing:border-box;border:1px solid var(--system-display-border-color);display:flex;width:26px;height:20px;flex-direction:row;align-self:center;justify-content:center;align-items:center}.system-display-box[_ngcontent-%COMP%] span[_ngcontent-%COMP%]{color:var(--system-display-span-color)}.displays-chip[_ngcontent-%COMP%]{height:32px}.accordion-padding[_ngcontent-%COMP%]{padding:14px 0}.accordion-header[_ngcontent-%COMP%]{padding:14px 16px;width:100%}.accordion-header[_ngcontent-%COMP%] mat-icon[_ngcontent-%COMP%]{color:var(--primary-contrast-900)}.info-icon[_ngcontent-%COMP%]{width:16px;height:16px;flex-shrink:0}",".margin-0[_ngcontent-%COMP%]{margin:0}.padding-0[_ngcontent-%COMP%]{padding:0}.gap-0[_ngcontent-%COMP%]{gap:0px}.margin-top-0[_ngcontent-%COMP%]{margin-top:0}.padding-top-0[_ngcontent-%COMP%]{padding-top:0}.margin-bottom-0[_ngcontent-%COMP%]{margin-bottom:0}.padding-bottom-0[_ngcontent-%COMP%]{padding-bottom:0}.margin-left-0[_ngcontent-%COMP%]{margin-left:0}.padding-left-0[_ngcontent-%COMP%]{padding-left:0}.margin-right-0[_ngcontent-%COMP%]{margin-right:0}.padding-right-0[_ngcontent-%COMP%]{padding-right:0}.margin-4[_ngcontent-%COMP%]{margin:4px}.padding-4[_ngcontent-%COMP%]{padding:4px}.gap-4[_ngcontent-%COMP%]{gap:4px}.margin-top-4[_ngcontent-%COMP%]{margin-top:4px}.padding-top-4[_ngcontent-%COMP%]{padding-top:4px}.margin-bottom-4[_ngcontent-%COMP%]{margin-bottom:4px}.padding-bottom-4[_ngcontent-%COMP%]{padding-bottom:4px}.margin-left-4[_ngcontent-%COMP%]{margin-left:4px}.padding-left-4[_ngcontent-%COMP%]{padding-left:4px}.margin-right-4[_ngcontent-%COMP%]{margin-right:4px}.padding-right-4[_ngcontent-%COMP%]{padding-right:4px}.margin-8[_ngcontent-%COMP%]{margin:8px}.padding-8[_ngcontent-%COMP%]{padding:8px}.gap-8[_ngcontent-%COMP%]{gap:8px}.margin-top-8[_ngcontent-%COMP%]{margin-top:8px}.padding-top-8[_ngcontent-%COMP%]{padding-top:8px}.margin-bottom-8[_ngcontent-%COMP%]{margin-bottom:8px}.padding-bottom-8[_ngcontent-%COMP%]{padding-bottom:8px}.margin-left-8[_ngcontent-%COMP%]{margin-left:8px}.padding-left-8[_ngcontent-%COMP%]{padding-left:8px}.margin-right-8[_ngcontent-%COMP%]{margin-right:8px}.padding-right-8[_ngcontent-%COMP%]{padding-right:8px}.margin-10[_ngcontent-%COMP%]{margin:10px}.padding-10[_ngcontent-%COMP%]{padding:10px}.gap-10[_ngcontent-%COMP%]{gap:10px}.margin-top-10[_ngcontent-%COMP%]{margin-top:10px}.padding-top-10[_ngcontent-%COMP%]{padding-top:10px}.margin-bottom-10[_ngcontent-%COMP%]{margin-bottom:10px}.padding-bottom-10[_ngcontent-%COMP%]{padding-bottom:10px}.margin-left-10[_ngcontent-%COMP%]{margin-left:10px}.padding-left-10[_ngcontent-%COMP%]{padding-left:10px}.margin-right-10[_ngcontent-%COMP%]{margin-right:10px}.padding-right-10[_ngcontent-%COMP%]{padding-right:10px}.margin-12[_ngcontent-%COMP%]{margin:12px}.padding-12[_ngcontent-%COMP%]{padding:12px}.gap-12[_ngcontent-%COMP%]{gap:12px}.margin-top-12[_ngcontent-%COMP%]{margin-top:12px}.padding-top-12[_ngcontent-%COMP%]{padding-top:12px}.margin-bottom-12[_ngcontent-%COMP%]{margin-bottom:12px}.padding-bottom-12[_ngcontent-%COMP%]{padding-bottom:12px}.margin-left-12[_ngcontent-%COMP%]{margin-left:12px}.padding-left-12[_ngcontent-%COMP%]{padding-left:12px}.margin-right-12[_ngcontent-%COMP%]{margin-right:12px}.padding-right-12[_ngcontent-%COMP%]{padding-right:12px}.margin-16[_ngcontent-%COMP%]{margin:16px}.padding-16[_ngcontent-%COMP%]{padding:16px}.gap-16[_ngcontent-%COMP%]{gap:16px}.margin-top-16[_ngcontent-%COMP%]{margin-top:16px}.padding-top-16[_ngcontent-%COMP%]{padding-top:16px}.margin-bottom-16[_ngcontent-%COMP%]{margin-bottom:16px}.padding-bottom-16[_ngcontent-%COMP%]{padding-bottom:16px}.margin-left-16[_ngcontent-%COMP%]{margin-left:16px}.padding-left-16[_ngcontent-%COMP%]{padding-left:16px}.margin-right-16[_ngcontent-%COMP%]{margin-right:16px}.padding-right-16[_ngcontent-%COMP%]{padding-right:16px}.margin-20[_ngcontent-%COMP%]{margin:20px}.padding-20[_ngcontent-%COMP%]{padding:20px}.gap-20[_ngcontent-%COMP%]{gap:20px}.margin-top-20[_ngcontent-%COMP%]{margin-top:20px}.padding-top-20[_ngcontent-%COMP%]{padding-top:20px}.margin-bottom-20[_ngcontent-%COMP%]{margin-bottom:20px}.padding-bottom-20[_ngcontent-%COMP%]{padding-bottom:20px}.margin-left-20[_ngcontent-%COMP%]{margin-left:20px}.padding-left-20[_ngcontent-%COMP%]{padding-left:20px}.margin-right-20[_ngcontent-%COMP%]{margin-right:20px}.padding-right-20[_ngcontent-%COMP%]{padding-right:20px}.margin-24[_ngcontent-%COMP%]{margin:24px}.padding-24[_ngcontent-%COMP%]{padding:24px}.gap-24[_ngcontent-%COMP%]{gap:24px}.margin-top-24[_ngcontent-%COMP%]{margin-top:24px}.padding-top-24[_ngcontent-%COMP%]{padding-top:24px}.margin-bottom-24[_ngcontent-%COMP%]{margin-bottom:24px}.padding-bottom-24[_ngcontent-%COMP%]{padding-bottom:24px}.margin-left-24[_ngcontent-%COMP%]{margin-left:24px}.padding-left-24[_ngcontent-%COMP%]{padding-left:24px}.margin-right-24[_ngcontent-%COMP%]{margin-right:24px}.padding-right-24[_ngcontent-%COMP%]{padding-right:24px}.margin-32[_ngcontent-%COMP%]{margin:32px}.padding-32[_ngcontent-%COMP%]{padding:32px}.gap-32[_ngcontent-%COMP%]{gap:32px}.margin-top-32[_ngcontent-%COMP%]{margin-top:32px}.padding-top-32[_ngcontent-%COMP%]{padding-top:32px}.margin-bottom-32[_ngcontent-%COMP%]{margin-bottom:32px}.padding-bottom-32[_ngcontent-%COMP%]{padding-bottom:32px}.margin-left-32[_ngcontent-%COMP%]{margin-left:32px}.padding-left-32[_ngcontent-%COMP%]{padding-left:32px}.margin-right-32[_ngcontent-%COMP%]{margin-right:32px}.padding-right-32[_ngcontent-%COMP%]{padding-right:32px}.margin-36[_ngcontent-%COMP%]{margin:36px}.padding-36[_ngcontent-%COMP%]{padding:36px}.gap-36[_ngcontent-%COMP%]{gap:36px}.margin-top-36[_ngcontent-%COMP%]{margin-top:36px}.padding-top-36[_ngcontent-%COMP%]{padding-top:36px}.margin-bottom-36[_ngcontent-%COMP%]{margin-bottom:36px}.padding-bottom-36[_ngcontent-%COMP%]{padding-bottom:36px}.margin-left-36[_ngcontent-%COMP%]{margin-left:36px}.padding-left-36[_ngcontent-%COMP%]{padding-left:36px}.margin-right-36[_ngcontent-%COMP%]{margin-right:36px}.padding-right-36[_ngcontent-%COMP%]{padding-right:36px}.flex-row[_ngcontent-%COMP%]{display:flex}.flex-col[_ngcontent-%COMP%]{display:flex;flex-direction:column}.justify-content-space-between[_ngcontent-%COMP%]{justify-content:space-between}.justify-content-center[_ngcontent-%COMP%]{justify-content:center}.align-items-center[_ngcontent-%COMP%]{align-items:center}.flex-none[_ngcontent-%COMP%]{flex:none}"]})}}return a})();var it=p(79539),ut=function(a){return a.TopologyChange="TopologyChange",a.DisplaySelectionChange="DisplaySelectionChange",a.DisableSurroundButton="DisableSurroundButton",a}(ut||{}),at=function(a){return a[a.Resolution=1]="Resolution",a[a.RefreshRate=2]="RefreshRate",a[a.SurroundConfig=3]="SurroundConfig",a}(at||{}),Zt=p(15652),va=p(30325),ot=p(51325),On=p(26772),Rt=p(9658),Tt=p(473),Dn=p(58108);let vt=(()=>{class a{get selectedSurroundTopology$(){return this._selectedSurroundTopology.asObservable()}get displayMetaData$(){return this._displayMetaData$.asObservable().pipe((0,Ot.c)(0))}get surroundDisplays$(){return this._surroundDisplays.asObservable()}get currentSurroundRotationType$(){return this._currentSurroundRotationType.asObservable()}get isSurroundAvailable$(){return this._isSurroundAvailable.asObservable()}get isSurroundEnabled$(){return this._isSurroundEnabled.asObservable()}get resolutions$(){return this._resolutions.asObservable()}get selectedResolution$(){return this._selectedResolution.asObservable()}constructor(n,e,i,o,s,l){this.loggingService=n,this.multiDisplaySupportService=e,this.surroundUtilsService=i,this.surroundMosaicAPIService=o,this.multiDisplaysDatabaseService=s,this.genericDialog=l,this._selectedSurroundTopology=new Y.m(1),this._displayMetaData$=new Y.m(1),this._surroundDisplays=new Y.m(1),this._currentSurroundRotationType=new Y.m(1),this._isSurroundAvailable=new Y.m(1),this._isSurroundEnabled=new Y.m(1),this._resolutions=new Y.m(1),this._selectedResolution=new Y.m(1),this._surroundSettingChanged$=new Y.m(1),this.logger=this.loggingService.getLogger("nvapp/SurroundService"),this.initialize()}prepareSurroundDisplayCanvasMetaData(n,e,i){const o=n.filter(xt=>xt.isSelected);o.length&&o.sort(this.surroundUtilsService.sortDisplaysOnSelectionOrder);const s=[];let l=0;const d=this.surroundUtilsService.isTopologyVertical(e),_=e?.row??0,C=e?.col??0,w=n.length>=ot.S9&&_===C,G=_*C,K=d||w?G-1:_-1,Bs=d||w?C-1:G-1;for(let xt=0;xt<=K;xt++)for(let Lt=0;Lt<=Bs&&!(l>G-1);Lt++){const Fn=i?ot.po:ot.QX,En=i?ot.QX:ot.po,Ns=Fn*Lt,Ls=En*xt,Yt=o?.[l];l++,s.push({id:Yt?.identifier,text:""+(Yt?.identifier??""),isSelected:!1,w:Fn,h:En,x:Ns,y:Ls,xOffset:Lt,yOffset:xt,nvDisplayId:Yt?.nvDisplayId,gpuId:Yt?.gpuId})}return s}setSelectSurroundTopology(n){this._selectedSurroundTopology.next(n)}setCurrentRotationState(n){this._currentSurroundRotationType.next(n)}setSurroundDisplaysState(n){this._surroundDisplays.next(n)}setSurroundSettingChangeType(n){this._surroundSettingChanged$.next(n)}rescaleDisplayTiles(n,e,i){return this.multiDisplaySupportService.rescaleDisplayTiles(n,e,i,!0,this.scaleFactor)}getStartAlignedCoordinates(){return this.multiDisplaysDatabaseService.getStartAlignedCoordinates(!0)}resetFirstCanvasLoad(){this.multiDisplaysDatabaseService.resetFirstCanvasLoad(!0)}updateContextAndTip(n,e,i,o,s){this.tootltipSub?.unsubscribe(),this.tootltipSub=this.surroundDisplays$.pipe((0,m.s)(1)).subscribe(l=>{const _=l.find(C=>(C.identifier===s.id||C.nvDisplayId===s.nvDisplayId)&&C.gpuId===s.gpuId).name??"";this.updateTipPosition(n,i,o,s,_,e)})}setSelectedResolution(n){this._selectedResolution.next(n)}applySurroundStateOnSettingChange(){return this._surroundSettingChanged$.asObservable().pipe((0,m.s)(1),(0,I.n)(n=>{switch(this.logger.info("setting type changed",at[n]),n){case at.Resolution:case at.RefreshRate:return this.setResolution();case at.SurroundConfig:return this.applySurroundConfig();default:return(0,D.of)(null)}}))}applySurroundConfig(){return(0,T.zV)([this.isSurroundEnabled$,this.currentSurroundRotationType$,this.selectedResolution$]).pipe((0,m.s)(1),(0,I.n)(([n,e,i])=>this.surroundMosaicAPIService.setSurroundConfig(c.Be.NEXTGENSURROUND,n,e,i)),(0,m.s)(1))}updateTipPosition(n,e,i,o,s,l){if(n.visible=!0,n.x=e+o.x,n.y=i+o.y+o.h,n.w=o.w,n.selectedSurfaceId=o.id,n.tooltipText=s,n.w<y.Gj){const d=Math.round(y.Gj-n.w)/2;n.x-=d,n.w=y.Gj}l.forEach(d=>{d.isHovered=d.id===o.id})}initialize(){this.setupPhysicalGpuAndSurroundConfigListener(),this.getSurroundConfigOnDisplayModeSetListener(),this.getSurroundConfigOnLaunch(),this.setupListenerForDefaultSurroundConfig()}initializeListeners(){this.setUpSurroundDisplaysMetaDataListener(),this.setupResolutionRefreshRateUpdateListener()}setupPhysicalGpuAndSurroundConfigListener(){this.physicalGpuAndSurroundConfigSubscription?.unsubscribe(),this.physicalGpuAndSurroundConfigSubscription=this.getPhysicalGpuInfoAndSurroundConfig().subscribe(()=>{this.logger.info("successfully setup the listener for display Meta data")},n=>{this.logger.error("failed to setup Physical gpu listener",n)})}getSurroundConfigOnLaunch(){this.surroundMosaicAPIService.getSurroundConfig().pipe((0,m.s)(1)).subscribe(n=>{this.logger.info("Successfully fetched surround config")},n=>{this.logger.error("failed to fetch surround config",n)})}getSurroundConfigOnDisplayModeSetListener(){this.surroundConfigOnDisplayModeSetSubscription?.unsubscribe(),this.surroundConfigOnDisplayModeSetSubscription=this.multiDisplaySupportService.gpuAndPhysicalDisplayInfo$.pipe((0,it.H)(n=>this.isSurroundEnabled$.pipe((0,m.s)(1))),(0,I.n)(n=>this.surroundMosaicAPIService.getSurroundConfig(c.Be.NEXTGENSURROUND,!0,n))).subscribe(g.l,n=>{this.logger.error("failed to fetch the surround config on display mode set change in case surround is enabled",n)})}getPhysicalGpuInfoAndSurroundConfig(){return(0,T.zV)([this.getPhysicalGpuInfo(),this.surroundMosaicAPIService.surroundOrMosaicConfig$]).pipe((0,I.n)(([n,e])=>this.surroundMosaicAPIService.defaultSurroundOrMosaicConfig$.pipe((0,m.s)(1),(0,P.T)(i=>[n,e,i]))),(0,M.M)(([n,e,i])=>{this.updateSurroundListeners(n,e,!1,i)}))}IsSurroundEnabled(n,e){return n?.some(i=>this.surroundUtilsService.isSurroundDisplay(i))||e.displayCount>1}setupResolutionRefreshRateUpdateListener(){this.resolutionAndRefreshRateSubscription?.unsubscribe(),this.resolutionAndRefreshRateSubscription=(0,T.zV)([this.isSurroundEnabled$,this.getDisplayResolutionList$(),this.surroundMosaicAPIService.surroundOrMosaicConfig$,this.surroundMosaicAPIService.maxSurroundResolution$,this.selectedSurroundTopology$,this.currentSurroundRotationType$]).subscribe(([n,e,i,o,s,l])=>{const d=i?.displays?.[0].rotation!==l;let _=this.prepareSurroundResolutionList(e);if(n&&d||!n){let C=o;if(n&&d){const G=_.find(K=>K.flags?.isRecommended);G&&(C=G)}const w=d||!n;C=this.swapResolutionInPortraitOrientation(C,s,l,i?.displays?.[0].rotation,w),this.surroundUtilsService.updatedSelectedRefreshRate(C),C?.horizontal&&C.vertical&&(_=[C]),this._selectedResolution.next(C)}this._resolutions.next(_)},n=>{this.logger.error("failed to setup a listener for display resolutions list",n)})}cleanUpListeners(){this.resolutionAndRefreshRateSubscription?.unsubscribe(),this.resolutionAndRefreshRateSubscription=null,this.displayMetaDataListenersSubscription?.unsubscribe(),this.displayMetaDataListenersSubscription=null}prepareSurroundResolutionList(n){if(!n.length)return[];const e=new Map;return n.forEach(i=>{const o=this.surroundUtilsService.getSurroundResolutionMatKey(i);if(e.has(o)){const s=e.get(o);s.refreshRates.push({translateParam:this.surroundUtilsService.getRefreshRateTranslateParams(i),value:i.refreshRate,isSelected:!1}),s.refreshRates.sort(this.surroundUtilsService.sortRefreshRate),i.flags.isCurrent&&(this.surroundUtilsService.updatedSelectedRefreshRate(s,i),s.refreshRate=i.refreshRate,s.flags.isCurrent=i.flags.isCurrent,i.flags.isBezelCorrected&&(s.flags.isBezelCorrected=i.flags.isCurrent),i.flags.isRecommended&&(s.flags.isRecommended=i.flags.isRecommended),this._selectedResolution.next(s))}else{const s=this.surroundUtilsService.createUIResolution(i);i.flags.isCurrent&&(this.surroundUtilsService.updatedSelectedRefreshRate(s,i),s.refreshRate=i.refreshRate,this._selectedResolution.next(s)),e.set(o,s)}}),[...e.values()].sort(this.surroundUtilsService.sortResolutions)}swapResolutionInPortraitOrientation(n,e,i,o,s=!1){if(!n?.horizontal||!n?.vertical)return{};const l=n.horizontal/e.col,d=n.vertical/e.row,_=this.surroundUtilsService.isLandscapeRotation(i),C=this.surroundUtilsService.isLandscapeRotation(o),w=(_||C)&&!(_&&C),G={...n,horizontal:w?d*e.col:n.horizontal,vertical:w?l*e.row:n.vertical};return G.resolutionTranslateParams=this.surroundUtilsService.getResolutionTranslateParam(G,s),G}getDisplayResolutionList$(){return this.surroundDisplays$.pipe((0,it.H)(n=>this.multiDisplaySupportService.surfaces$.pipe((0,m.s)(1),(0,P.T)(e=>[n,e]))),(0,I.n)(([n,e])=>{const i=n.find(l=>this.surroundUtilsService.isSurroundDisplay(l)),o=(0,R.flatMap)(e,l=>l.displayItems),s=o.find(l=>this.surroundUtilsService.isSurroundDisplay(l));return i&&s?o?.find(d=>d.nvDisplayId===i?.nvDisplayId)?.resolutionList$??(0,D.of)([]):(0,D.of)([])}),(0,P.T)(n=>(0,R.cloneDeep)(n).filter(e=>e.flags.isBezelCorrected||e.flags.isSupported||e.flags.isRecommended||e.flags.isCurrent)),(0,I.n)(n=>{const e=n?.find(i=>i?.flags?.isCurrent);return e?this.surroundMosaicAPIService.updateDefaultConfigWithResolution(e).pipe((0,ct.u)(n)):(0,D.of)(n)}))}setResolution(){return(0,T.zV)([this.surroundDisplays$,this.selectedResolution$]).pipe((0,m.s)(1),(0,I.n)(([n,e])=>{const i=n.find(o=>this.surroundUtilsService.isSurroundDisplay(o));return this.surroundMosaicAPIService.setResolution(e,i)}),(0,I.n)(n=>this.multiDisplaySupportService.refreshDisplayState()))}getPhysicalGpuInfo(){return this.multiDisplaySupportService.gpuAndPhysicalDisplayInfo$.pipe((0,mt.F)((n,e)=>(0,R.isEqual)((0,R.flatMap)(n,i=>i?.displays),(0,R.flatMap)(e,i=>i?.displays))),(0,yt.ZZ)(n=>this.surroundMosaicAPIService.getSpanIdentifiers().pipe((0,m.s)(1),(0,P.T)(e=>[n,e]))),(0,P.T)(([n,e])=>n.map(o=>{const s=o?.displays.map(l=>{const d=e.find(C=>C.displayId===l.nvDisplayId)?.identifier,_=l.originalName;return{...l,identifier:d??l.identifier,name:_}})?.sort(this.surroundUtilsService.sortDisplaysOnDisplayId);return{...o,displays:s}}).sort(this.surroundUtilsService.sortPhysicalGpuOnGpuId)))}setupListenerForDefaultSurroundConfig(){(0,T.zV)([this.surroundDisplays$,this.isSurroundEnabled$]).pipe((0,mt.F)(([n,e],[i,o])=>n?.filter(s=>!s.inactive)?.length===i?.filter(s=>!s.inactive)?.length&&e===o),(0,Wt.p)(([n,e])=>!e),(0,P.T)(([n,e])=>[this.surroundUtilsService.getDisplayNameMap(n),n]),(0,it.H)(([n,e])=>{const i=this.getDisplaySettingsArrayOfObs(e,n);return i.length?this.fetchDisplaySettingsArrayOfObs(i,e):(0,D.of)(null)})).subscribe(g.l,n=>{this.logger.error("failed to setup a listener for default surround topology",n)})}resetSurroundDataToOriginalState(n){return(0,T.zV)([this.getPhysicalGpuInfo(),this.surroundMosaicAPIService.surroundOrMosaicConfig$,this.surroundMosaicAPIService.defaultSurroundOrMosaicConfig$,this.surroundMosaicAPIService.defaultSurroundOrMosaicDisplaySettings$]).pipe((0,m.s)(1),(0,M.M)(([e,i,o,s])=>{const l=(0,R.merge)((0,R.cloneDeep)(i),(0,R.cloneDeep)(o));this.surroundMosaicAPIService.setDirtySurroundOrMosaicConfig((0,R.cloneDeep)(l));const d=n?{...i,rows:l.rows,columns:l.columns}:l;d.displayCount=i.displayCount,this.updateSurroundListeners(e,d,n),this.surroundMosaicAPIService.setSurroundMosaicDisplaySettings(o.displaySettings.width&&o.displaySettings.height&&!n&&s?.displayCount?(0,R.cloneDeep)(s):null)}))}updateSurroundDisplaySetting(n){return this.surroundMosaicAPIService.updateDisplaySetting(n)}getDisplaySettingsArrayOfObs(n,e){const i=[];let o=n?.length>ot.Rh?ot.Rh:n?.length;for(;o>1;){const s=[...e.values()].filter(l=>l.length>=o);s?.length&&s.forEach(l=>{const d={row:1,col:o??0},_=l.slice(0,o),C=this.getSurroundDisplaySettingsForDefaultConfig(_,d);i.push(C)}),o--}return i}fetchDisplaySettingsArrayOfObs(n,e){return(0,T.zV)(n).pipe((0,m.s)(1),(0,P.T)(i=>{const o=i?.map(_=>_?.mosaicDisplayConfigOut?.displayCount)?.filter(_=>!!_),s=Math.max(...o),d=i.find(_=>_?.mosaicDisplayConfigOut?.displayCount===s)?.mosaicDisplayConfigOut;return this.updateSurroundDisplaySettingsForDefaultConfig(d,e,!0),d}),(0,it.H)(i=>{const o={row:i.rows,col:i.columns},s=i?.displayIds;return this.getSurroundDisplaySettingsForDefaultConfig(s,o,!0)}))}getSurroundDisplaySettingsForDefaultConfig(n,e,i){return this.surroundMosaicAPIService.getSurroundMosaicDisplaySetting(e,c.Be.NEXTGENSURROUND,n,i).pipe((0,m.s)(1),(0,A.W)(o=>(this.logger.error("failed to fetch display settings for default config",o),(0,D.of)(null))))}updateSurroundDisplaySettingsForDefaultConfig(n,e,i){if(!n.errorFlags?.every(o=>0===o)||n?.displaySettings?.length){const o={row:n.rows,col:n.columns};this.setSelectSurroundTopology({...o}),this.surroundMosaicAPIService.updateSelectedTopology({...o},i);const s=n?.displayIds.map(l=>({displayId:l}));this.surroundUtilsService.setSurroundDisplaysSelected(e,s),this.setSurroundDisplaysState(e),this.surroundMosaicAPIService.updateSelectedDisplayList(e,i)}}updateSurroundListeners(n,e,i,o){const s=(0,R.flatMap)(n,_=>_?.displays);s?.length<=1&&(this.surroundMosaicAPIService.setSurroundMosaicDisplaySettings({}),this.surroundMosaicAPIService.setDefaultSurroundMosaicDisplaySettings({}),this.surroundMosaicAPIService.setDefaultSurroundOrMosaicConfig(e),this.surroundMosaicAPIService.setDirtySurroundOrMosaicConfig(e));const l=this.IsSurroundEnabled(s,e),d=!l&&(o?.displayCount>1||o?.displays?.length>1)?o:e;if(this.surroundUtilsService.setSurroundDisplaysSelected(s,d?.displays),this.setSurroundDisplaysState(s),this._isSurroundEnabled.next(l),this._isSurroundAvailable.next(s?.length>=ot.bS),l&&this.surroundMosaicAPIService.updateMaxResolutionWithDefaultInCaseSurroundEnabled(),!i){const _=this.surroundUtilsService.populateCurrentRotationType(s,e);this.setCurrentRotationState(_)}this.setSelectSurroundTopology({row:d.rows??0,col:d.columns??0})}setUpSurroundDisplaysMetaDataListener(){this.displayMetaDataListenersSubscription?.unsubscribe(),this.displayMetaDataListenersSubscription=(0,T.zV)([this._surroundDisplays,this._currentSurroundRotationType,this._selectedSurroundTopology]).subscribe(([n,e,i])=>{this.setSurroundDisplayMetaData(n,e,i),this.logger.info("successfully setup display meta data listeners for surround setting")},n=>{this.logger.error("failed to setup display meta data listener for surround",n)})}getDialogConfig(n){switch(n){case ut.TopologyChange:return{titleKey:"surround.changeTopologyDialogTitle",descriptionKey:"surround.changeTopologyDialogDescription"};case ut.DisplaySelectionChange:return{titleKey:"surround.changeDisplayDialogTitle",descriptionKey:"surround.changeDisplayDialogDescription"};default:return{titleKey:"surround.disableSurroundDialogTitle",descriptionKey:"surround.disableSurroundDialogDescription"}}}disableSurround(n){const{titleKey:e,descriptionKey:i}=this.getDialogConfig(n);return this.showConfirmationDialog(e,i).pipe((0,it.H)(o=>o?this.disableSurroundConfig():(0,D.of)(o)))}showConfirmationDialog(n,e){const o=this.genericDialog.open({panelClass:["dialogPaddingRemove"],data:{headerText:{text:n},primaryButton:{text:"common.ok"},secondaryButton:{text:"common.cancel"},autoFocusOnPrimaryButton:On.X6,bodyText:{text:e}}}),s=o.primaryButtonClick.pipe((0,ct.u)(!0)),l=o.secondaryButtonClick.pipe((0,ct.u)(!1)),d=o.afterClosed().pipe((0,ct.u)(!1));return(0,Zt.O4)(s,l,d).pipe((0,m.s)(1),(0,M.M)(()=>o.close()),(0,A.W)(_=>(this.logger.error("Error while clicking confirmation dialog",_),(0,D.of)(!1))))}prepareToOpenSurroundDialog(){return this.surroundMosaicAPIService.extendAllDisplays().pipe((0,m.s)(1),(0,it.H)(n=>this.multiDisplaySupportService.getDisplaysState()),(0,m.s)(1),(0,it.H)(n=>this.identifySurroundDisplays(!0)))}identifySurroundDisplays(n,e){return this.surroundMosaicAPIService.identifyAllSurroundDisplays(n,e).pipe((0,m.s)(1))}setSurroundDisplayMetaData(n,e,i){const o=this.surroundUtilsService.isLandscapeRotation(e);let s=this.prepareSurroundDisplayCanvasMetaData(n,i,o);this.scaleFactor=(0,va.A)().domain([0,(0,W.czq)(s,l=>l.w>l.h?l.w:l.h)]).range([0,y.ZK]),s=s.map(l=>{const d=l.x,_=l.y;return{id:l.id,isSelected:l.isSelected,text:l.text,w:this.scaleFactor(l.w),h:this.scaleFactor(l.h),x:this.scaleFactor(d)+l.xOffset,y:this.scaleFactor(_)+l.yOffset,nvDisplayId:l.nvDisplayId,currentScaleFactor:this.scaleFactor,gpuId:l.gpuId}}),this._displayMetaData$.next(s)}disableSurroundConfig(){return this.logger.info("Disabling surround"),this.surroundMosaicAPIService.disableSurroundConfig().pipe((0,P.T)(()=>!0),(0,M.M)(()=>{this.logger.info("disableSurround returned with success")}),(0,A.W)(n=>(this.logger.error("disableSurroundConfig failed with error",n),(0,At.$)(n))))}static{this.\u0275fac=function(e){return new(e||a)(t.KVO(v.J6),t.KVO(q.b),t.KVO(Rt.f),t.KVO(Tt.w),t.KVO(mn.b),t.KVO(Dn.uh))}}static{this.\u0275prov=t.jDH({token:a,factory:a.\u0275fac,providedIn:"root"})}}return a})(),Sa=(()=>{class a{constructor(n,e){this.loggingService=n,this.displayRearrangeService=e,this.surroundOverlapQ=[],this.logger=this.loggingService.getLogger("nvapp/SurroundRearrangeService")}updateSurroundTilePosition(n,e){this.updateSurroundOverlapQ(n,e);const i=this.findSurroundTileToMove(e);i?this.interchangeSurroundOverlapDisplayTile(i,n):(n.x=n.currentScaleFactor(n.xO),n.y=n.currentScaleFactor(n.yO))}findStartCoordinates(n,e,i){return this.displayRearrangeService.findStartCoordinates(n,e,i)}interchangeSurroundOverlapDisplayTile(n,e){n.x=e.currentScaleFactor(e.xO),n.y=e.currentScaleFactor(e.yO),e.x=n.currentScaleFactor(n.xO),e.y=n.currentScaleFactor(n.yO);const i=n.xO,o=n.yO;n.xO=e.xO,n.yO=e.yO,e.xO=i,e.yO=o}getSurroundOverlapRect(n,e){if(!this.displayRearrangeService.doRectanglesOverlap(n,e))return null;const i=Math.max(n.x,e.x),o=Math.max(n.y,e.y),s=Math.min(n.x+n.w,e.x+e.w)-i,l=Math.min(n.y+n.h,e.y+e.h)-o;return{id:e.id,x:i,y:o,overlapX:s,overlapY:l}}findSurroundTileToMove(n){let e,i,o;return this.surroundOverlapQ.forEach(s=>{void 0===i&&(i=s.overlapX,e=s.id),void 0===o&&(o=s.overlapY,e=s.id),(i<s.overlapX||i===s.overlapX&&o<s.overlapY||o<s.overlapY)&&(i=s.overlapX,o=s.overlapY,e=s.id)}),n.find(s=>s.id===e)}reStackTiles(n){this.displayRearrangeService.reStackTiles(n)}updateSurroundOverlapQ(n,e){this.surroundOverlapQ=[],e.forEach(i=>{if(n.id!==i.id){const o=this.getSurroundOverlapRect(n,i);o&&this.surroundOverlapQ.push(o)}})}static{this.\u0275fac=function(e){return new(e||a)(t.KVO(v.J6),t.KVO(hn.Z))}}static{this.\u0275prov=t.jDH({token:a,factory:a.\u0275fac,providedIn:"root"})}}return a})();const xa=["canvasBase"];function Ma(a,r){if(1&a&&(t.j41(0,"div",4,1),t.qSk(),t.j41(2,"svg",5),t.nrm(3,"g",6),t.k0s(),t.joV(),t.nrm(4,"nv-app-sumd-display-tooltip",7),t.k0s()),2&a){const n=t.XpG();t.R7$(4),t.Y8G("tooltipForTile",n.tooltipForTile)}}function Pa(a,r){1&a&&(t.j41(0,"div",8),t.nrm(1,"mat-icon",9),t.j41(2,"label",10),t.EFF(3),t.nI1(4,"translate"),t.k0s()()),2&a&&(t.R7$(3),t.JRh(t.bMT(4,1,"surround.notEnoughDisplayDialogError")))}let Oa=(()=>{class a{constructor(n,e,i,o,s,l){this.loggingService=n,this.surroundRearrangeService=e,this.surroundService=i,this.surroundUtilsService=o,this.multiDisplaysUtilService=s,this.surroundMosaicAPIService=l,this.startX=0,this.startY=0,this.isDragging=!1,this.isPositionChanged=!1,this.tooltipForTile={x:0,y:0,w:0,visible:!1,tooltipText:""},this.dragHandler=(0,W.$Er)().on("start",this.handleDisplayTileDragStart.bind(this)).on("drag",this.handleDisplayTileDrag.bind(this)).on("end",this.handleDisplayTileDragEnd.bind(this)),this.logger=this.loggingService.getLogger("nvapp/SurroundDisplayCanvasComponent")}ngAfterViewInit(){this.displayMetaDataSubscription=(0,T.zV)([this.surroundService.displayMetaData$,this.isSurroundAvailable()]).subscribe(([n,e])=>{this.logger.info("Surround DisplayMetaData received",n),this.showNotEnoughDisplaysError=!e,this.showNotEnoughDisplaysError||(this.refreshDisplayMetaData(n),this.centerAlignDisplays(),this.checkRescaleDisplayTiles())},n=>{this.logger.error("failed to setup display meta data listener",n)})}isSurroundAvailable(){return this.surroundService.isSurroundAvailable$.pipe((0,mt.F)())}refreshDisplayMetaData(n){this.displayMetaData=[],this.updateTiles(),this.displayMetaData=(0,R.cloneDeep)(n),this.updateTiles()}onResize(n){this.logger.info("Resizing triggered."),this.showNotEnoughDisplaysError||(this.checkRescaleDisplayTiles(),this.centerAlignDisplays())}displayTileHoverOut(n,e){const[i,o]=(0,W.WnM)(n);i>=0&&i<=e.w&&o>=0&&o<=e.h||(this.tooltipForTile.visible=!1,this.displayMetaData.forEach(s=>{s.id===e.id&&(s.isHovered=!1)}),this.updateTiles())}updateTileGroupsOnEnter(n){return this.displayMetaData.filter(i=>!!i.id).length>=1&&this.registerTilesMouseHandler(n),this.multiDisplaysUtilService.createRects(n),this.createDisplayIdText(n),n}registerTilesMouseHandler(n){n.on("click",this.displayTileClick.bind(this)).on("mouseover",this.displayTileHoverIn.bind(this)).on("mouseleave",this.displayTileHoverOut.bind(this))}createDisplayIdText(n){n.append("text").attr("font-size",e=>(e.w+e.h)*y.uU+"em").attr("fill",e=>e.isHovered?y.mH:y.Yq).attr("x",e=>e.w/2).attr("y",e=>e.h/2).text(e=>e.text).style("text-anchor","middle").style("dominant-baseline","middle")}updateTileGroupsOnUpdate(n){return n.selectAll("rect.rect-tile").style("stroke",e=>e.text?e.isSelected?y.lI:y.Em:y.j7).style("stroke-width",y.FB).style("fill",e=>e.text?this.isDragging&&e.isSelected?y.g2:e.isHovered?y.WF:y.EH:y.f8),n.selectAll("text").attr("fill",e=>e.isHovered?y.mH:y.Yq),n}updateTiles(){this.canvasBaseSvg=(0,W.Ltv)(this.canvasBase?.nativeElement).select(".display-canvas"),this.canvasGroupElement=this.canvasBaseSvg?.select(".display-group"),this.surroundRearrangeService.reStackTiles(this.displayMetaData),this.canvasInnerGroupElements=this.canvasGroupElement.selectAll("g").data(this.displayMetaData,n=>n.id).join(n=>{const e=n.append("g").attr("transform",o=>`translate(${o.x}, ${o.y})`),i=this.displayMetaData.every(o=>!!o.id);return this.displayMetaData.length>1&&i&&e.call(this.dragHandler),this.updateTileGroupsOnEnter(e)},n=>(n.attr("transform",e=>`translate(${e.x}, ${e.y})`),n),n=>{n.remove()}),this.updateTileGroupsOnUpdate(this.canvasInnerGroupElements)}displayTileHoverIn(n,e){n.stopImmediatePropagation(),n.stopPropagation(),e.id&&(this.surroundService.updateContextAndTip(this.tooltipForTile,this.displayMetaData,this.startX,this.startY,e),this.updateTiles())}handleDisplayTileDragStart(n,e){this.hideToolTip(),this.surroundUtilsService.selectDisplayMetadataById(this.displayMetaData,e.nvDisplayId),this.displayMetaDataAtDragStart=(0,R.cloneDeep)(this.displayMetaData),this.surroundRearrangeService.reStackTiles(this.displayMetaData)}displayTileClick(n,e){n.stopImmediatePropagation(),n.stopPropagation(),this.surroundUtilsService.selectDisplayMetadataById(this.displayMetaData,e.nvDisplayId),this.updateTiles()}handleDisplayTileDrag(n){this.isDragging=!0,this.isPositionChanged=!0,n.subject.x=n.x,n.subject.y=n.y,this.updateTiles()}handleDisplayTileDragEnd(n){this.isPositionChanged&&(this.hideToolTip(),this.isDragging=!1,this.surroundRearrangeService.updateSurroundTilePosition(n.subject,this.displayMetaData),this.updateTiles(),this.surroundMosaicAPIService.updateSelectedDisplayListOnSurroundCanvas(this.displayMetaData),this.surroundService.setSurroundSettingChangeType(at.SurroundConfig),this.isPositionChanged=!1)}centerAlignDisplays(){[this.startX,this.startY]=this.surroundService.getStartAlignedCoordinates(),this.startX&&this.startY&&!isNaN(this.startX)&&!isNaN(this.startY)?this.translateToCenter():setTimeout(()=>{this.fetchSvgWidthHeight(),this.svgWidth&&this.svgHeight?([this.startX,this.startY]=this.surroundRearrangeService.findStartCoordinates(this.svgWidth,this.svgHeight,this.displayMetaData),this.translateToCenter()):this.logger.info("Skipping center aligning as SVG is not available")},0)}translateToCenter(){this.canvasGroupElement.attr("transform",`translate(${this.startX},${this.startY})`)}checkRescaleDisplayTiles(){setTimeout(()=>{if(this.fetchSvgWidthHeight(),!this.svgWidth||!this.svgHeight)return void this.logger.info("Skipping rescaling as SVG is not available");const n=this.surroundService.rescaleDisplayTiles(this.displayMetaData,this.svgWidth,this.svgHeight);n&&(this.logger.info("Surround DisplayMetaData received after rescale.",n),this.refreshDisplayMetaData(n),this.centerAlignDisplays())},0)}fetchSvgWidthHeight(){if(this.canvasBaseSvg){const n=this.canvasBaseSvg?.node()?.getBoundingClientRect();this.svgWidth=n?.width??0,this.svgHeight=n?.height??0}}hideToolTip(){this.tooltipForTile={...this.tooltipForTile,visible:!1}}ngOnDestroy(){this.surroundService.resetFirstCanvasLoad(),this.displayMetaDataSubscription?.unsubscribe(),this.windowResizeSubscription?.unsubscribe(),this.displayRescaleSub?.unsubscribe()}static{this.\u0275fac=function(e){return new(e||a)(t.rXU(v.J6),t.rXU(Sa),t.rXU(vt),t.rXU(Rt.f),t.rXU(_n),t.rXU(Tt.w))}}static{this.\u0275cmp=t.VBU({type:a,selectors:[["nv-app-surround-canvas"]],viewQuery:function(e,i){if(1&e&&t.GBs(xa,5),2&e){let o;t.mGM(o=t.lsd())&&(i.canvasBase=o.first)}},hostBindings:function(e,i){1&e&&t.bIt("resize",function(s){return i.onResize(s)},!1,t.tSv)},decls:4,vars:2,consts:[["NotEnoughDisplayError",""],["canvasBase",""],[1,"surround-display-canvas","geometry-rounded-lg"],["class","canvas-base",4,"ngIf","ngIfElse"],[1,"canvas-base"],[1,"display-canvas"],[1,"display-group"],[3,"tooltipForTile"],[1,"error-container"],["svgIcon","info",1,"material-icons","error-info-icon"],[1,"error-info","font-body2"]],template:function(e,i){if(1&e&&(t.j41(0,"div",2),t.DNE(1,Ma,5,1,"div",3)(2,Pa,5,3,"ng-template",null,0,t.C5r),t.k0s()),2&e){const o=t.sdS(3);t.R7$(),t.Y8G("ngIf",!i.showNotEnoughDisplaysError)("ngIfElse",o)}},dependencies:[u.bT,F.An,yn,x.D9],styles:[".surround-display-canvas[_ngcontent-%COMP%]{display:flex;flex-direction:column;background:var(--surround-container-background);justify-content:center;align-items:center}.error-container[_ngcontent-%COMP%]{display:flex;flex-direction:column;justify-content:center;align-items:center;min-height:236px;max-height:280px;height:280px;width:100%;gap:16px}.canvas-base[_ngcontent-%COMP%]{display:flex;justify-content:center;align-items:center;min-height:236px;max-height:280px;height:280px;width:100%;box-sizing:border-box;position:relative}.display-canvas[_ngcontent-%COMP%]{display:flex;justify-content:center;align-items:center;width:100%;height:100%}.display-group[_ngcontent-%COMP%]{display:flex;justify-content:center;align-items:center}"]})}}return a})();function Da(a,r){if(1&a&&(t.qex(0),t.j41(1,"mat-option",5),t.EFF(2),t.nI1(3,"translate"),t.k0s(),t.bVm()),2&a){const n=r.$implicit;t.R7$(),t.Y8G("value",n),t.R7$(),t.SpI(" ",t.i5U(3,2,"surround.topology",n)," ")}}let wa=(()=>{class a{constructor(n,e,i,o){this.loggingService=n,this.surroundService=e,this.surroundUtilsService=i,this.surroundMosaicAPIService=o,this.topologyList=[],this.logger=this.loggingService.getLogger("nvapp/DisplayTopologyComponent")}ngOnInit(){this.topologySubscription=(0,T.zV)([this.getTopologyList(),this.surroundService.selectedSurroundTopology$]).subscribe(([n,e])=>{this.topologyList=n;const i=this.topologyList?.find(o=>e?.row===o?.row&&e?.col===o.col);i?(this.selectedTopology=i,this.surroundMosaicAPIService.updateSelectedTopology(this.selectedTopology)):(n.length>=ot.bS||0==e?.row&&0==e?.col)&&(this.surroundService.setSelectSurroundTopology(this.topologyList[0]),this.surroundMosaicAPIService.updateSelectedTopology(this.topologyList[0],!0))},n=>{this.logger.error("failed to setup a listener for topology",n)})}getTopologyList(){return this.surroundService.surroundDisplays$.pipe((0,mt.F)((n,e)=>n.length===e?.length),(0,P.T)(n=>this.surroundUtilsService.prepareDisplayTopologyList(n?.length)))}onSelectionChange(n){this.logger.info("onSelectionChange called with topology",n?.value),this.surroundService.isSurroundEnabled$.pipe((0,m.s)(1),(0,I.n)(e=>e?this.surroundService.disableSurround(ut.TopologyChange).pipe((0,P.T)(i=>[i,e])):this.updateSurroundConfigOnTopologyChange(n.value).pipe((0,P.T)(i=>[i,e]))),(0,M.M)(([e,i])=>{e?i||this.surroundService.setSelectSurroundTopology(n?.value):n?.source?.writeValue(this.selectedTopology)})).subscribe(()=>{this.logger.info("topology changed successfully")},e=>{this.logger.error("topology change failed with error",e)})}updateSurroundConfigOnTopologyChange(n){return(0,T.zV)([this.surroundMosaicAPIService.defaultSurroundOrMosaicDisplaySettings$,this.surroundService.surroundDisplays$]).pipe((0,m.s)(1),(0,I.n)(([e,i])=>{const o=n.row*n.col;if(e?.displayCount>=o){const s=[...e.displayIds].splice(0,o);return this.surroundService.getSurroundDisplaySettingsForDefaultConfig(s,n).pipe((0,M.M)(l=>{this.surroundService.updateSurroundDisplaySettingsForDefaultConfig(l?.mosaicDisplayConfigOut,i)}))}return this.surroundService.resetSurroundDataToOriginalState(!0)}),(0,P.T)(e=>!0))}ngOnDestroy(){this.topologySubscription?.unsubscribe()}static{this.\u0275fac=function(e){return new(e||a)(t.rXU(v.J6),t.rXU(vt),t.rXU(Rt.f),t.rXU(Tt.w))}}static{this.\u0275cmp=t.VBU({type:a,selectors:[["nv-app-display-topology"]],decls:9,vars:10,consts:[[1,"surround-display-topology"],["for","topology",1,"font-body1","font-color-primary"],["panelClass","mat-select-font-body2","disableOptionCentering","true",1,"topology-select","mat-mdc-select-in-modal",3,"selectionChange","value","disabled"],[1,"dropdown-trigger","font-body2"],[4,"ngFor","ngForOf"],[1,"topology-option",3,"value"]],template:function(e,i){1&e&&(t.j41(0,"div",0)(1,"label",1),t.EFF(2),t.nI1(3,"translate"),t.k0s(),t.j41(4,"mat-select",2),t.bIt("selectionChange",function(s){return i.onSelectionChange(s)}),t.j41(5,"mat-select-trigger",3),t.EFF(6),t.nI1(7,"translate"),t.k0s(),t.DNE(8,Da,4,5,"ng-container",4),t.k0s()()),2&e&&(t.R7$(2),t.JRh(t.bMT(3,5,"surround.topologyTitle")),t.R7$(2),t.Y8G("value",i.selectedTopology)("disabled",!(null!=i.topologyList&&i.topologyList.length)),t.R7$(2),t.JRh(t.i5U(7,7,"surround.topology",i.selectedTopology)),t.R7$(2),t.Y8G("ngForOf",i.topologyList))},dependencies:[u.Sq,B.VO,B.$2,st.wT,x.D9],styles:[".surround-display-topology[_ngcontent-%COMP%]{display:flex;flex-direction:column;gap:16px}.topology-select[_ngcontent-%COMP%]{width:182px}"]})}}return a})();function Ia(a,r){if(1&a&&(t.qex(0),t.EFF(1),t.bVm()),2&a){const n=t.XpG().index;t.R7$(),t.SpI("(",n+1,")")}}function Ra(a,r){if(1&a){const n=t.RV6();t.j41(0,"div")(1,"mat-checkbox",10),t.bIt("change",function(i){const o=t.eBV(n).$implicit,s=t.XpG(4);return t.Njj(s.onDisplaySelection(i,o))}),t.j41(2,"div",11)(3,"div",12)(4,"span",13),t.EFF(5),t.k0s()(),t.j41(6,"div",14),t.EFF(7),t.k0s()()()()}if(2&a){const n=r.$implicit,e=t.XpG(4);t.R7$(),t.Y8G("checked",n.isSelected)("disabled",!(null!=n&&n.isSelected)&&e.selectedDisplayCount===e.noOfDisplayAllowedForSelection),t.R7$(4),t.JRh(n.identifier),t.R7$(2),t.SpI(" ",n.name," ")}}function Ta(a,r){if(1&a&&(t.qex(0),t.DNE(1,Ra,8,4,"div",7),t.bVm()),2&a){const n=t.XpG().$implicit;t.R7$(),t.Y8G("ngForOf",n.displays)}}function ka(a,r){if(1&a&&(t.qex(0),t.j41(1,"span",8),t.EFF(2),t.DNE(3,Ia,2,1,"ng-container",9),t.k0s(),t.DNE(4,Ta,2,1,"ng-container",9),t.bVm()),2&a){const n=r.$implicit,e=t.XpG(2);t.R7$(2),t.SpI("",n.name," "),t.R7$(),t.Y8G("ngIf",(null==e.physicalGpuInfo?null:e.physicalGpuInfo.length)>1),t.R7$(),t.Y8G("ngIf",null==n.displays?null:n.displays.length)}}function Ga(a,r){if(1&a){const n=t.RV6();t.j41(0,"div",1)(1,"div",2)(2,"label",3),t.EFF(3),t.nI1(4,"translate"),t.k0s(),t.j41(5,"mat-icon",4),t.bIt("click",function(){t.eBV(n);const i=t.XpG();return t.Njj(i.onClickInfoDialog())})("keyup.enter",function(){t.eBV(n);const i=t.XpG();return t.Njj(i.onClickInfoDialog())}),t.k0s()(),t.nrm(6,"mat-divider",5),t.j41(7,"div",6),t.DNE(8,ka,5,3,"ng-container",7),t.k0s()()}if(2&a){const n=t.XpG();t.R7$(3),t.JRh(t.i5U(4,2,"surround.displayListTitle",n.titleParams)),t.R7$(5),t.Y8G("ngForOf",n.physicalGpuInfo)}}let Fa=(()=>{class a{constructor(n,e,i,o,s,l){this.loggingService=n,this.surroundService=e,this.surroundMosaicApiService=i,this.surroundUtilsService=o,this.settingInfoModalService=s,this.translateService=l,this.physicalGpuInfo=[],this.displays=[],this.selectedDisplays=[],this.titleParams={total:0,selected:0},this.selectedDisplayCount=0,this.noOfDisplayAllowedForSelection=0,this.destroyRef=(0,t.WQX)(t.abz),this.logger=this.loggingService.getLogger("nvapp/SurroundDisplayListComponent")}ngOnInit(){(0,T.zV)([this.surroundService.getPhysicalGpuInfo(),this.surroundService.surroundDisplays$,this.surroundService.selectedSurroundTopology$]).pipe((0,h.pQ)(this.destroyRef)).subscribe(([n,e,i])=>{n?.forEach(o=>{o?.displays?.forEach(s=>{s.isSelected=e?.find(l=>l?.nvDisplayId===s?.nvDisplayId)?.isSelected??!1})}),(i?.row>1||i?.col>1)&&(this.noOfDisplayAllowedForSelection=(i?.row??0)*(i?.col??0),this.selectedDisplayCount=this.surroundUtilsService.getSelectedDisplayCount(e)),this.displays=e??[],this.selectedDisplays=this.displays.filter(o=>o.isSelected)?.sort(this.surroundUtilsService.sortDisplaysOnSelectionOrder),this.physicalGpuInfo=n??[],this.updateDisplayTitleParams()},n=>{this.logger.error("failed to setup a listener for surround display and topology",n)})}updateDisplayTitleParams(){this.titleParams={total:this.noOfDisplayAllowedForSelection,selected:this.selectedDisplays?.length}}updateDisplaySelection(n,e){const i=this.displays?.find(o=>o?.nvDisplayId===n?.nvDisplayId);i&&(n.isSelected=e,i.isSelected=e,e?(this.selectedDisplays.push(i),i.selectionOrder=this.selectedDisplays.length):(i.selectionOrder=null,this.selectedDisplays=this.selectedDisplays.filter(o=>o.nvDisplayId!==i.nvDisplayId),this.selectedDisplays.forEach((o,s)=>{o.selectionOrder=s+1})))}updateDisplayState(n,e){this.updateDisplaySelection(n,e),this.updateDisplayTitleParams(),this.selectedDisplayCount=this.surroundUtilsService.getSelectedDisplayCount(this.displays)}handleDisplayUpdate(n,e){this.updateDisplayState(n,e),this.surroundService.setSurroundDisplaysState(this.displays)}handleError(n,e,i,o){this.logger.error("surround mosaic display setting failed with error",n),o.source.checked=i,this.updateDisplayState(e,i)}onDisplaySelection(n,e){const i=e.isSelected;this.surroundService.isSurroundEnabled$.pipe((0,m.s)(1),(0,I.n)(o=>o?this.surroundService.disableSurround(ut.DisplaySelectionChange).pipe((0,P.T)(s=>(s||(this.logger.info("surround disabled, reverting the selection"),n.source.checked=i),!1))):(0,D.of)(!0)),(0,Wt.p)(o=>o),(0,I.n)(()=>(this.logger.info("surround was disabled, proceeding with the operation"),this.handleDisplayUpdate(e,n?.checked),this.surroundMosaicApiService.updateSelectedDisplayList(this.selectedDisplays),this.selectedDisplayCount===this.noOfDisplayAllowedForSelection?this.getSurroundMosaicSettings():(this.surroundMosaicApiService.setSurroundMosaicDisplaySettings(null),(0,D.of)(void 0))))).subscribe(()=>{this.logger.info("surround mosaic display settings returned with success")},o=>{this.handleError(o,e,i,n)})}getSurroundMosaicSettings(){return this.surroundService.selectedSurroundTopology$.pipe((0,m.s)(1),(0,it.H)(n=>this.surroundMosaicApiService.getSurroundMosaicDisplaySetting(n,c.Be.NEXTGENSURROUND)))}onClickInfoDialog(){const n={title:this.translateService.instant("surround.surroundDisplays"),description:this.translateService.instant("surround.surroundInfoDialogDiscription"),importantInfo:[this.translateService.instant("surround.surroundInfoDialogImportantInfo")]};this.settingInfoModalService.openDialogWithData(n)}static{this.\u0275fac=function(e){return new(e||a)(t.rXU(v.J6),t.rXU(vt),t.rXU(Tt.w),t.rXU(Rt.f),t.rXU(bt.P),t.rXU(x.c$))}}static{this.\u0275cmp=t.VBU({type:a,selectors:[["nv-app-surround-display-list"]],decls:1,vars:1,consts:[["class","surround-display-list-container",4,"ngIf"],[1,"surround-display-list-container"],[1,"flex-col","gap-16","setting-info-icon-container"],["for","display-list-title",1,"display-list-title","font-body1","font-color-primary"],["svgIcon","info","tabindex","0","role","img",1,"color-white-hue-1","setting-info-icon","show",3,"click","keyup.enter"],[1,"mat-display-divider"],[1,"gpu-display"],[4,"ngFor","ngForOf"],[1,"font-body1","font-color-primary","gpu-name"],[4,"ngIf"],[1,"mat-surround-display-checkbox",3,"change","checked","disabled"],[1,"display"],[1,"system-display-box"],[1,"font-sub1"],["nvEllipsifiedTextWithTooltip","",1,"display-name","font-body1","font-color-primary"]],template:function(e,i){1&e&&t.DNE(0,Ga,9,5,"div",0),2&e&&t.Y8G("ngIf",!(null==i.physicalGpuInfo||!i.physicalGpuInfo.length))},dependencies:[u.Sq,u.bT,J.tG,et.nM,cn.a,F.An,X.q,dt.So,x.D9],styles:["[_ngcontent-%COMP%]:root{--rwd-column-count: 4;--rwd-gutter-count: 3 ;--rwd-gutter-size: 8px;--rwd-container-side-spacing: 16px;--rwd-column-size: calc((var(--rwd-container-width) - var(--rwd-sidebar-width) - 2 * 16px - 8px * 3 ) / 4);--rwd-sidebar-width: 0px;--rwd-container-width: 100vw}@media screen and (min-width: 480px){[_ngcontent-%COMP%]:root{--rwd-column-count: 6;--rwd-gutter-count: 5 ;--rwd-column-size: calc((var(--rwd-container-width) - var(--rwd-sidebar-width) - 2 * 16px - 8px * 5 ) / 6)}}@media screen and (min-width: 720px){[_ngcontent-%COMP%]:root{--rwd-column-count: 8;--rwd-gutter-count: 7 ;--rwd-column-size: calc((var(--rwd-container-width) - var(--rwd-sidebar-width) - 2 * 16px - 8px * 7 ) / 8)}}@media screen and (min-width: 960px){[_ngcontent-%COMP%]:root{--rwd-column-count: 12;--rwd-gutter-count: 11 ;--rwd-container-side-spacing: 24px;--rwd-column-size: calc((var(--rwd-container-width) - var(--rwd-sidebar-width) - 2 * 24px - 8px * 11 ) / 12)}}@media screen and (min-width: 1440px){[_ngcontent-%COMP%]:root{--rwd-gutter-size: 16px;--rwd-column-size: calc((var(--rwd-container-width) - var(--rwd-sidebar-width) - 2 * 24px - 16px * 11 ) / 12)}}[_ngcontent-%COMP%]:root{--hig-marquee-ratio: .3229;--hig-marquee-parent-container-width: 100vw;--hig-marquee-container-height: calc(var(--hig-marquee-ratio) * 100vw);--hig-marquee-corner-column: 56px;--hig-marquee-text-column: 14vw;--hig-marquee-padded-image-first-row: calc(var(--hig-marquee-ratio) * (100vw - var(--hig-marquee-corner-column) - var(--hig-marquee-text-column)));--hig-marquee-padded-image-second-row: calc(var(--hig-marquee-container-height) - var(--hig-marquee-padded-image-first-row))}.ellipsified-text-with-tooltip[_ngcontent-%COMP%]{text-overflow:ellipsis;overflow:hidden}.ellipsified-text-with-tooltip.multi-line-ellipsis[_ngcontent-%COMP%]{display:-webkit-box;-webkit-box-orient:vertical;white-space:wrap}.ellipsified-text-with-tooltip.single-line-ellipsis[_ngcontent-%COMP%]{white-space:nowrap}.ellipsis[_ngcontent-%COMP%]{text-overflow:ellipsis;overflow:hidden}.system-display-box[_ngcontent-%COMP%]{box-sizing:border-box;border:1px solid var(--system-display-border-color);display:flex;width:26px;height:20px;flex-direction:row;align-self:center;justify-content:center;align-items:center}.system-display-box[_ngcontent-%COMP%] span[_ngcontent-%COMP%]{color:var(--system-display-span-color)}.displays-chip[_ngcontent-%COMP%]{height:32px}.accordion-padding[_ngcontent-%COMP%]{padding:14px 0}.accordion-header[_ngcontent-%COMP%]{padding:14px 16px;width:100%}.accordion-header[_ngcontent-%COMP%] mat-icon[_ngcontent-%COMP%]{color:var(--primary-contrast-900)}.info-icon[_ngcontent-%COMP%]{width:16px;height:16px;flex-shrink:0}",".gpu-display[_ngcontent-%COMP%]{overflow:hidden;overflow-y:auto;max-height:243px}.gpu-display[_ngcontent-%COMP%] .gpu-name[_ngcontent-%COMP%]{margin:12px 0;display:flex}.gpu-display[_ngcontent-%COMP%] .display[_ngcontent-%COMP%]{display:flex;align-items:center;padding-left:4px}.gpu-display[_ngcontent-%COMP%] .display[_ngcontent-%COMP%] .display-name[_ngcontent-%COMP%]{padding:12px 16px;max-width:269px}.gpu-display[_ngcontent-%COMP%] .mat-surround-display-checkbox[_ngcontent-%COMP%]{display:flex}.gpu-display[_ngcontent-%COMP%] .system-display-box[_ngcontent-%COMP%]{flex:0 0 auto}.mat-display-divider[_ngcontent-%COMP%]{margin-top:12px}"]})}}return a})();const wn=a=>({"disable-mat-select-trigger":a});function Ea(a,r){if(1&a&&(t.j41(0,"mat-option",8),t.EFF(1),t.nI1(2,"translate"),t.k0s()),2&a){const n=r.$implicit;t.Y8G("value",n),t.R7$(),t.SpI(" ",t.i5U(2,2,"system.display.resolutions.pc",null==n?null:n.resolutionTranslateParams)," ")}}function $a(a,r){if(1&a&&(t.j41(0,"mat-option",8),t.EFF(1),t.nI1(2,"translate"),t.k0s()),2&a){const n=r.$implicit;t.Y8G("value",n.value),t.R7$(),t.SpI(" ",t.i5U(2,2,"system.display.refreshRateValue",null==n?null:n.translateParam)," ")}}let ja=(()=>{class a{constructor(n,e,i){this.loggingService=n,this.surroundService=e,this.surroundUtilsService=i,this.selectedResolution={},this.refreshRates=[],this.selectedRefreshRate={},this.resolutions=[],this.disableResolution=!1,this.destroyRef=(0,t.WQX)(t.abz),this.logger=this.loggingService.getLogger("nvapp/SurroundResolutionAndRefreshRateComponent")}ngOnInit(){this.surroundService.resolutions$.pipe((0,h.pQ)(this.destroyRef)).subscribe(n=>{this.resolutions=n,this.disableResolution=!this.resolutions?.length}),this.setupSelectedResolutionListener()}setupSelectedResolutionListener(){this.surroundService.selectedResolution$.pipe((0,I.n)(n=>(n?.horizontal&&n?.vertical?(this.selectedResolution=n,this.refreshRates=this.selectedResolution?.refreshRates,this.selectedRefreshRate=this.surroundUtilsService.findSelectedRefreshRate(this.refreshRates,n.refreshRate),this.selectedRefreshRate.isSelected=!0):(this.selectedResolution={},this.selectedRefreshRate={}),this.surroundService.updateSurroundDisplaySetting(this.selectedResolution))),(0,h.pQ)(this.destroyRef)).subscribe(g.l,n=>this.logger.error("error updating display setting",n))}onResolutionChanged(n){this.selectedResolution.refreshRates.forEach(e=>e.isSelected=!1),this.surroundService.setSelectedResolution(n?.value),this.surroundService.setSurroundSettingChangeType(at.Resolution)}onRefreshRateChanged(n){const e=this.selectedResolution.refreshRates.find(i=>i.value===n?.value);e&&(this.selectedResolution.refreshRates.forEach(i=>i.isSelected=!1),e.isSelected=!0),this.surroundService.setSelectedResolution(this.selectedResolution),this.surroundService.setSurroundSettingChangeType(at.RefreshRate)}static{this.\u0275fac=function(e){return new(e||a)(t.rXU(v.J6),t.rXU(vt),t.rXU(Rt.f))}}static{this.\u0275cmp=t.VBU({type:a,selectors:[["nv-app-resolution-and-refresh-rate"]],decls:19,vars:26,consts:[[1,"resolution-and-refresh-rate-container"],[1,"resolution-control"],[1,"font-body1","font-color-primary"],["panelClass","mat-select-font-body2",1,"mat-mdc-select-in-modal","resolution-dropdown-width",3,"selectionChange","value","disabled"],[1,"dropdown-trigger","font-body2",3,"ngClass"],[3,"value",4,"ngFor","ngForOf"],[1,"refresh-rate-control"],["panelClass","mat-select-font-body2",1,"mat-mdc-select-in-modal","refresh-rate-dropdown-width",3,"selectionChange","disabled","value"],[3,"value"]],template:function(e,i){1&e&&(t.j41(0,"div",0)(1,"div",1)(2,"span",2),t.EFF(3),t.nI1(4,"translate"),t.k0s(),t.j41(5,"mat-select",3),t.bIt("selectionChange",function(s){return i.onResolutionChanged(s)}),t.j41(6,"mat-select-trigger",4),t.EFF(7),t.nI1(8,"translate"),t.k0s(),t.DNE(9,Ea,3,5,"mat-option",5),t.k0s()(),t.j41(10,"div",6)(11,"span",2),t.EFF(12),t.nI1(13,"translate"),t.k0s(),t.j41(14,"mat-select",7),t.bIt("selectionChange",function(s){return i.onRefreshRateChanged(s)}),t.j41(15,"mat-select-trigger",4),t.EFF(16),t.nI1(17,"translate"),t.k0s(),t.DNE(18,$a,3,5,"mat-option",5),t.k0s()()()),2&e&&(t.R7$(3),t.JRh(t.bMT(4,12,"system.display.resolution")),t.R7$(2),t.Y8G("value",i.selectedResolution)("disabled",i.disableResolution),t.R7$(),t.Y8G("ngClass",t.eq3(22,wn,i.disableResolution)),t.R7$(),t.SpI(" ",t.i5U(8,14,"system.display.resolutions.pc",null==i.selectedResolution?null:i.selectedResolution.resolutionTranslateParams)," "),t.R7$(2),t.Y8G("ngForOf",i.resolutions),t.R7$(3),t.JRh(t.bMT(13,17,"system.display.refreshRate")),t.R7$(2),t.Y8G("disabled",i.disableResolution)("value",null==i.selectedRefreshRate?null:i.selectedRefreshRate.value),t.R7$(),t.Y8G("ngClass",t.eq3(24,wn,i.disableResolution)),t.R7$(),t.JRh(t.i5U(17,19,"system.display.refreshRateValue",null==i.selectedRefreshRate?null:i.selectedRefreshRate.translateParam)),t.R7$(2),t.Y8G("ngForOf",i.refreshRates))},dependencies:[u.YU,u.Sq,B.VO,B.$2,st.wT,N.PW,x.D9],styles:[".resolution-and-refresh-rate-container[_ngcontent-%COMP%]{display:flex;gap:24px;flex-direction:column}.resolution-control[_ngcontent-%COMP%], .refresh-rate-control[_ngcontent-%COMP%]{flex:1 0 auto;display:flex;flex-direction:column;gap:16px}"]})}}return a})();function Va(a,r){if(1&a){const n=t.RV6();t.j41(0,"button",14),t.bIt("click",function(){t.eBV(n);const i=t.XpG();return t.Njj(i.setSurroundConfig())}),t.EFF(1),t.nI1(2,"translate"),t.nI1(3,"uppercase"),t.k0s()}if(2&a){const n=t.XpG();t.Y8G("disabled",!n.isTopologyValid),t.R7$(),t.SpI(" ",t.bMT(3,4,t.bMT(2,2,"common.enable"))," ")}}function Aa(a,r){if(1&a){const n=t.RV6();t.j41(0,"button",15),t.bIt("click",function(){t.eBV(n);const i=t.XpG();return t.Njj(i.disableSurround())}),t.EFF(1),t.nI1(2,"translate"),t.nI1(3,"uppercase"),t.k0s()}2&a&&(t.R7$(),t.SpI(" ",t.bMT(3,3,t.bMT(2,1,"common.disable"))," "))}let Ua=(()=>{class a{constructor(n,e,i){this.loggingService=n,this.surroundService=e,this.surroundMosaicAPIService=i,this.destroyRef=(0,t.WQX)(t.abz),this.logger=this.loggingService.getLogger("nvapp/SurroundPageComponent")}ngOnInit(){this.surroundService.initializeListeners(),this.surroundMosaicAPIService.initialize(),this.surroundService.currentSurroundRotationType$.pipe((0,h.pQ)(this.destroyRef)).subscribe(n=>{this.currentRotationState=n},n=>{this.logger.error("failed to setup current rotation listener",n)}),this.surroundMosaicAPIService.surroundOrMosaicDisplaySettings$.pipe((0,h.pQ)(this.destroyRef),(0,M.M)(n=>{this.isTopologyValid=!!n?.errorFlags?.every(e=>0===e)})).subscribe(),(0,T.zV)([this.surroundService.isSurroundEnabled$,this.surroundService.isSurroundAvailable$]).pipe((0,h.pQ)(this.destroyRef)).subscribe(([n,e])=>{this.isSurroundEnabled=n,this.isSurroundAvailable=e}),this.surroundMosaicAPIService.isSurroundOrMosaicSettingDirty$.pipe((0,h.pQ)(this.destroyRef)).subscribe(n=>{this.isSurroundSettingDirty=n})}updateRotationState(n){this.currentRotationState=n,this.surroundService.setCurrentRotationState(n),this.surroundMosaicAPIService.updateRotation(n),this.surroundService.setSurroundSettingChangeType(at.SurroundConfig)}updateRotation(n){this.logger.info("rotation change",n);const e=this.currentRotationState;this.surroundService.isSurroundEnabled$.pipe((0,m.s)(1),(0,I.n)(i=>i?this.surroundService.showConfirmationDialog("surround.changeOrientationDialogTitle","surround.changeOrientationDialogDescriptionTemp").pipe((0,P.T)(o=>o?n:e)):(0,D.of)(n))).subscribe(i=>{this.updateRotationState(i)})}setSurroundConfig(){this.setSurroundSubscription||(this.setSurroundSubscription=this.surroundService.applySurroundConfig().pipe((0,m.s)(1)).subscribe(()=>{this.logger.info("setSurroundConfig returned with success"),this.setSurroundSubscription?.unsubscribe(),this.setSurroundSubscription=null},n=>{this.logger.error("setSurroundConfig failed with error",n),this.setSurroundSubscription?.unsubscribe(),this.setSurroundSubscription=null}))}disableSurround(){this.surroundService.disableSurround(ut.DisableSurroundButton).pipe((0,m.s)(1)).subscribe(n=>{this.logger.info("disableSurround returned with success")},n=>{this.logger.error("disableSurround failed with error",n)})}applyConfig(){this.surroundService.applySurroundStateOnSettingChange().pipe((0,m.s)(1)).subscribe(n=>{this.logger.info("success while applying the Surround update setting")},n=>{this.logger.error("failed to apply surround setting change",n)})}cancelState(){this.surroundService.resetSurroundDataToOriginalState().pipe((0,m.s)(1)).subscribe()}ngOnDestroy(){this.cancelState(),this.surroundMosaicAPIService.cleanUpListeners()}static{this.\u0275fac=function(e){return new(e||a)(t.rXU(v.J6),t.rXU(vt),t.rXU(Tt.w))}}static{this.\u0275cmp=t.VBU({type:a,selectors:[["nv-app-surround-page"]],decls:30,vars:20,consts:[["disableSurroundSection",""],[1,"surround-container"],["mat-dialog-title","",1,"surround-title-container"],[1,"surround-title-row"],[1,"font-header-6","font-color-primary"],["mat-icon-button","",1,"close-button",3,"mat-dialog-close"],[1,"close-icon","font-color-secondary"],["mat-dialog-content","",1,"surround-dialog-content"],[1,"surround-settings-container"],[1,"surround-settings","geometry-rounded-lg"],[3,"rotationChanged","selected","disabled"],["mat-dialog-actions","","align","end",1,"surround-actions"],["mat-button","",1,"hig-button","font-button2",3,"click","disabled"],["mat-raised-button","","class","mat-accent font-button2",3,"disabled","click",4,"ngIf","ngIfElse"],["mat-raised-button","",1,"mat-accent","font-button2",3,"click","disabled"],["mat-raised-button","",1,"mat-accent","font-button2",3,"click"]],template:function(e,i){if(1&e){const o=t.RV6();t.j41(0,"div",1)(1,"div",2)(2,"div",3)(3,"span",4),t.EFF(4),t.nI1(5,"translate"),t.k0s(),t.j41(6,"button",5)(7,"mat-icon",6),t.EFF(8,"close"),t.k0s()()()(),t.j41(9,"div",7),t.nrm(10,"nv-app-surround-canvas"),t.j41(11,"div",8)(12,"div",9),t.nrm(13,"nv-app-display-topology")(14,"nv-app-surround-display-list"),t.k0s(),t.j41(15,"div",9)(16,"nv-app-display-orientation",10),t.bIt("rotationChanged",function(l){return t.eBV(o),t.Njj(i.updateRotation(l))}),t.k0s(),t.nrm(17,"nv-app-resolution-and-refresh-rate"),t.k0s()()(),t.j41(18,"div",11)(19,"button",12),t.bIt("click",function(){return t.eBV(o),t.Njj(i.cancelState())}),t.EFF(20),t.nI1(21,"translate"),t.nI1(22,"uppercase"),t.k0s(),t.j41(23,"button",12),t.bIt("click",function(){return t.eBV(o),t.Njj(i.applyConfig())}),t.EFF(24),t.nI1(25,"translate"),t.nI1(26,"uppercase"),t.k0s(),t.DNE(27,Va,4,6,"button",13)(28,Aa,4,5,"ng-template",null,0,t.C5r),t.k0s()()}if(2&e){const o=t.sdS(29);t.R7$(4),t.SpI(" ",t.bMT(5,10,"surround.title")," "),t.R7$(2),t.Y8G("mat-dialog-close",!0),t.R7$(10),t.Y8G("selected",i.currentRotationState)("disabled",!i.isSurroundAvailable),t.R7$(3),t.Y8G("disabled",!i.isSurroundSettingDirty),t.R7$(),t.SpI(" ",t.bMT(22,14,t.bMT(21,12,"common.cancel"))," "),t.R7$(3),t.Y8G("disabled",!(i.isSurroundEnabled&&i.isSurroundSettingDirty)),t.R7$(),t.SpI(" ",t.bMT(26,18,t.bMT(25,16,"common.apply"))," "),t.R7$(3),t.Y8G("ngIf",!i.isSurroundEnabled)("ngIfElse",o)}},dependencies:[u.bT,Dt.Aq,U.iV,F.An,O.tx,O.BI,O.Yi,O.E7,Cn,Oa,wa,Fa,ja,u.Pc,x.D9],styles:[".surround-container[_ngcontent-%COMP%]{max-height:80vh;min-width:790px;max-width:1440px;width:790px}.surround-dialog-content[_ngcontent-%COMP%]{max-height:calc(80vh - 128px)}.surround-title-container[_ngcontent-%COMP%]{padding:0 24px;margin:0}.surround-title-row[_ngcontent-%COMP%]{padding:16px 0;display:flex;justify-content:space-between;align-items:center}.surround-settings-container[_ngcontent-%COMP%]{display:grid;grid-template-columns:1fr 1fr;column-gap:16px;max-width:1440px;margin:24px 0 0}.surround-settings-container[_ngcontent-%COMP%] .surround-settings[_ngcontent-%COMP%]{display:flex;flex-direction:column;gap:24px}.surround-actions[_ngcontent-%COMP%]{border:0;padding:0 8px;width:100%;max-width:1440px;margin-top:16px}",".ex-panel-margin[_ngcontent-%COMP%]{margin:8px 0}.ex-panel-bg[_ngcontent-%COMP%]{background-color:var(--system-common-ex-panel-bg-color)}.dark-divider[_ngcontent-%COMP%]{border-top-color:var(--primary-900)}.bottom-divider[_ngcontent-%COMP%]{border-bottom:1px solid var(--primary-900)}.disable-mat-select-trigger[_ngcontent-%COMP%]{opacity:.38}",".margin-0[_ngcontent-%COMP%]{margin:0}.padding-0[_ngcontent-%COMP%]{padding:0}.gap-0[_ngcontent-%COMP%]{gap:0px}.margin-top-0[_ngcontent-%COMP%]{margin-top:0}.padding-top-0[_ngcontent-%COMP%]{padding-top:0}.margin-bottom-0[_ngcontent-%COMP%]{margin-bottom:0}.padding-bottom-0[_ngcontent-%COMP%]{padding-bottom:0}.margin-left-0[_ngcontent-%COMP%]{margin-left:0}.padding-left-0[_ngcontent-%COMP%]{padding-left:0}.margin-right-0[_ngcontent-%COMP%]{margin-right:0}.padding-right-0[_ngcontent-%COMP%]{padding-right:0}.margin-4[_ngcontent-%COMP%]{margin:4px}.padding-4[_ngcontent-%COMP%]{padding:4px}.gap-4[_ngcontent-%COMP%]{gap:4px}.margin-top-4[_ngcontent-%COMP%]{margin-top:4px}.padding-top-4[_ngcontent-%COMP%]{padding-top:4px}.margin-bottom-4[_ngcontent-%COMP%]{margin-bottom:4px}.padding-bottom-4[_ngcontent-%COMP%]{padding-bottom:4px}.margin-left-4[_ngcontent-%COMP%]{margin-left:4px}.padding-left-4[_ngcontent-%COMP%]{padding-left:4px}.margin-right-4[_ngcontent-%COMP%]{margin-right:4px}.padding-right-4[_ngcontent-%COMP%]{padding-right:4px}.margin-8[_ngcontent-%COMP%]{margin:8px}.padding-8[_ngcontent-%COMP%]{padding:8px}.gap-8[_ngcontent-%COMP%]{gap:8px}.margin-top-8[_ngcontent-%COMP%]{margin-top:8px}.padding-top-8[_ngcontent-%COMP%]{padding-top:8px}.margin-bottom-8[_ngcontent-%COMP%]{margin-bottom:8px}.padding-bottom-8[_ngcontent-%COMP%]{padding-bottom:8px}.margin-left-8[_ngcontent-%COMP%]{margin-left:8px}.padding-left-8[_ngcontent-%COMP%]{padding-left:8px}.margin-right-8[_ngcontent-%COMP%]{margin-right:8px}.padding-right-8[_ngcontent-%COMP%]{padding-right:8px}.margin-10[_ngcontent-%COMP%]{margin:10px}.padding-10[_ngcontent-%COMP%]{padding:10px}.gap-10[_ngcontent-%COMP%]{gap:10px}.margin-top-10[_ngcontent-%COMP%]{margin-top:10px}.padding-top-10[_ngcontent-%COMP%]{padding-top:10px}.margin-bottom-10[_ngcontent-%COMP%]{margin-bottom:10px}.padding-bottom-10[_ngcontent-%COMP%]{padding-bottom:10px}.margin-left-10[_ngcontent-%COMP%]{margin-left:10px}.padding-left-10[_ngcontent-%COMP%]{padding-left:10px}.margin-right-10[_ngcontent-%COMP%]{margin-right:10px}.padding-right-10[_ngcontent-%COMP%]{padding-right:10px}.margin-12[_ngcontent-%COMP%]{margin:12px}.padding-12[_ngcontent-%COMP%]{padding:12px}.gap-12[_ngcontent-%COMP%]{gap:12px}.margin-top-12[_ngcontent-%COMP%]{margin-top:12px}.padding-top-12[_ngcontent-%COMP%]{padding-top:12px}.margin-bottom-12[_ngcontent-%COMP%]{margin-bottom:12px}.padding-bottom-12[_ngcontent-%COMP%]{padding-bottom:12px}.margin-left-12[_ngcontent-%COMP%]{margin-left:12px}.padding-left-12[_ngcontent-%COMP%]{padding-left:12px}.margin-right-12[_ngcontent-%COMP%]{margin-right:12px}.padding-right-12[_ngcontent-%COMP%]{padding-right:12px}.margin-16[_ngcontent-%COMP%]{margin:16px}.padding-16[_ngcontent-%COMP%]{padding:16px}.gap-16[_ngcontent-%COMP%]{gap:16px}.margin-top-16[_ngcontent-%COMP%]{margin-top:16px}.padding-top-16[_ngcontent-%COMP%]{padding-top:16px}.margin-bottom-16[_ngcontent-%COMP%]{margin-bottom:16px}.padding-bottom-16[_ngcontent-%COMP%]{padding-bottom:16px}.margin-left-16[_ngcontent-%COMP%]{margin-left:16px}.padding-left-16[_ngcontent-%COMP%]{padding-left:16px}.margin-right-16[_ngcontent-%COMP%]{margin-right:16px}.padding-right-16[_ngcontent-%COMP%]{padding-right:16px}.margin-20[_ngcontent-%COMP%]{margin:20px}.padding-20[_ngcontent-%COMP%]{padding:20px}.gap-20[_ngcontent-%COMP%]{gap:20px}.margin-top-20[_ngcontent-%COMP%]{margin-top:20px}.padding-top-20[_ngcontent-%COMP%]{padding-top:20px}.margin-bottom-20[_ngcontent-%COMP%]{margin-bottom:20px}.padding-bottom-20[_ngcontent-%COMP%]{padding-bottom:20px}.margin-left-20[_ngcontent-%COMP%]{margin-left:20px}.padding-left-20[_ngcontent-%COMP%]{padding-left:20px}.margin-right-20[_ngcontent-%COMP%]{margin-right:20px}.padding-right-20[_ngcontent-%COMP%]{padding-right:20px}.margin-24[_ngcontent-%COMP%]{margin:24px}.padding-24[_ngcontent-%COMP%]{padding:24px}.gap-24[_ngcontent-%COMP%]{gap:24px}.margin-top-24[_ngcontent-%COMP%]{margin-top:24px}.padding-top-24[_ngcontent-%COMP%]{padding-top:24px}.margin-bottom-24[_ngcontent-%COMP%]{margin-bottom:24px}.padding-bottom-24[_ngcontent-%COMP%]{padding-bottom:24px}.margin-left-24[_ngcontent-%COMP%]{margin-left:24px}.padding-left-24[_ngcontent-%COMP%]{padding-left:24px}.margin-right-24[_ngcontent-%COMP%]{margin-right:24px}.padding-right-24[_ngcontent-%COMP%]{padding-right:24px}.margin-32[_ngcontent-%COMP%]{margin:32px}.padding-32[_ngcontent-%COMP%]{padding:32px}.gap-32[_ngcontent-%COMP%]{gap:32px}.margin-top-32[_ngcontent-%COMP%]{margin-top:32px}.padding-top-32[_ngcontent-%COMP%]{padding-top:32px}.margin-bottom-32[_ngcontent-%COMP%]{margin-bottom:32px}.padding-bottom-32[_ngcontent-%COMP%]{padding-bottom:32px}.margin-left-32[_ngcontent-%COMP%]{margin-left:32px}.padding-left-32[_ngcontent-%COMP%]{padding-left:32px}.margin-right-32[_ngcontent-%COMP%]{margin-right:32px}.padding-right-32[_ngcontent-%COMP%]{padding-right:32px}.margin-36[_ngcontent-%COMP%]{margin:36px}.padding-36[_ngcontent-%COMP%]{padding:36px}.gap-36[_ngcontent-%COMP%]{gap:36px}.margin-top-36[_ngcontent-%COMP%]{margin-top:36px}.padding-top-36[_ngcontent-%COMP%]{padding-top:36px}.margin-bottom-36[_ngcontent-%COMP%]{margin-bottom:36px}.padding-bottom-36[_ngcontent-%COMP%]{padding-bottom:36px}.margin-left-36[_ngcontent-%COMP%]{margin-left:36px}.padding-left-36[_ngcontent-%COMP%]{padding-left:36px}.margin-right-36[_ngcontent-%COMP%]{margin-right:36px}.padding-right-36[_ngcontent-%COMP%]{padding-right:36px}.flex-row[_ngcontent-%COMP%]{display:flex}.flex-col[_ngcontent-%COMP%]{display:flex;flex-direction:column}.justify-content-space-between[_ngcontent-%COMP%]{justify-content:space-between}.justify-content-center[_ngcontent-%COMP%]{justify-content:center}.align-items-center[_ngcontent-%COMP%]{align-items:center}.flex-none[_ngcontent-%COMP%]{flex:none}"]})}}return a})();var In=p(70279),St=p(49678);function Xa(a,r){if(1&a){const n=t.RV6();t.j41(0,"div",2)(1,"span",3),t.EFF(2),t.nI1(3,"translate"),t.k0s(),t.j41(4,"mat-dialog-content",4)(5,"mat-radio-group",5),t.mxI("ngModelChange",function(i){t.eBV(n);const o=t.XpG();return t.DH7(o.gSyncEnabled,i)||(o.gSyncEnabled=i),t.Njj(i)}),t.bIt("ngModelChange",function(){t.eBV(n);const i=t.XpG();return t.Njj(i.gSyncStateChanged())}),t.j41(6,"mat-radio-button",6),t.EFF(7),t.nI1(8,"translate"),t.k0s(),t.j41(9,"mat-radio-button",6),t.EFF(10),t.nI1(11,"translate"),t.k0s()(),t.j41(12,"div",7)(13,"mat-chip-list")(14,"mat-chip",8),t.bIt("keydown",function(i){t.eBV(n);const o=t.XpG();return t.Njj(o.setGSyncEnableState(i,o.GlobalGsyncState.FullscreenOnly))})("click",function(i){t.eBV(n);const o=t.XpG();return t.Njj(o.setGSyncEnableState(i,o.GlobalGsyncState.FullscreenOnly))}),t.j41(15,"span",9),t.EFF(16),t.nI1(17,"translate"),t.k0s()(),t.j41(18,"mat-chip",8),t.bIt("keydown",function(i){t.eBV(n);const o=t.XpG();return t.Njj(o.setGSyncEnableState(i,o.GlobalGsyncState.FullscreenAndWindowed))})("click",function(i){t.eBV(n);const o=t.XpG();return t.Njj(o.setGSyncEnableState(i,o.GlobalGsyncState.FullscreenAndWindowed))}),t.j41(19,"span",9),t.EFF(20),t.nI1(21,"translate"),t.k0s()()()(),t.nrm(22,"mat-divider",10),t.j41(23,"div",11)(24,"mat-checkbox",12),t.nI1(25,"translate"),t.bIt("change",function(i){t.eBV(n);const o=t.XpG();return t.Njj(o.onGsyncIndicatorChanged(i))}),t.j41(26,"span",9),t.EFF(27),t.nI1(28,"translate"),t.k0s()()()(),t.j41(29,"mat-dialog-actions",13)(30,"button",14),t.bIt("click",function(){t.eBV(n);const i=t.XpG();return t.Njj(i.onCancelClick())}),t.EFF(31),t.nI1(32,"translate"),t.k0s(),t.j41(33,"button",15),t.bIt("click",function(){t.eBV(n);const i=t.XpG();return t.Njj(i.onApplyClick())}),t.EFF(34),t.nI1(35,"translate"),t.k0s()()()}if(2&a){const n=t.XpG();t.R7$(2),t.JRh(t.bMT(3,21,"system.display.gsyncGloablDialogTitle")),t.R7$(3),t.R50("ngModel",n.gSyncEnabled),t.R7$(),t.Y8G("value",!1),t.R7$(),t.SpI(" ",t.bMT(8,23,"common.off")," "),t.R7$(2),t.Y8G("value",!0),t.R7$(),t.SpI(" ",t.bMT(11,25,"common.on")," "),t.R7$(4),t.Y8G("disabled",!n.gSyncEnabled)("selected",n.selectedGSyncOption===n.GlobalGsyncState.FullscreenOnly),t.R7$(2),t.JRh(t.bMT(17,27,"system.display.enableForFullscreenMode")),t.R7$(2),t.Y8G("disabled",!n.gSyncEnabled)("selected",n.selectedGSyncOption===n.GlobalGsyncState.FullscreenAndWindowed),t.R7$(2),t.JRh(t.bMT(21,29,"system.display.enableWindowednFullscreenMode")),t.R7$(4),t.Y8G("checked",n.gsyncIndicator)("disabled",!n.gSyncEnabled)("nvAppAnnouncer",n.gsyncIndicator)("associatedMessage","common.showIndicator"),t.BMQ("aria-label",t.bMT(25,31,"common.showIndicator")),t.R7$(3),t.SpI(" ",t.bMT(28,33,"common.showIndicator")," "),t.R7$(4),t.SpI(" ",t.bMT(32,35,"save.cancel")," "),t.R7$(2),t.Y8G("disabled",!n.isDirty),t.R7$(),t.SpI(" ",t.bMT(35,37,"save.apply")," ")}}function Ba(a,r){if(1&a){const n=t.RV6();t.j41(0,"div",2)(1,"span",3),t.EFF(2),t.nI1(3,"translate"),t.k0s(),t.j41(4,"mat-dialog-content",16)(5,"span",17),t.EFF(6),t.nI1(7,"translate"),t.k0s(),t.j41(8,"p",18),t.EFF(9),t.nI1(10,"translate"),t.k0s(),t.j41(11,"a",19),t.bIt("click",function(){t.eBV(n);const i=t.XpG();return t.Njj(i.onViewGsyncDisplays())}),t.EFF(12),t.nI1(13,"translate"),t.k0s()(),t.j41(14,"mat-dialog-actions",13)(15,"button",14),t.bIt("click",function(){t.eBV(n);const i=t.XpG();return t.Njj(i.onCloseClick())}),t.EFF(16),t.nI1(17,"translate"),t.k0s()()()}2&a&&(t.R7$(2),t.JRh(t.bMT(3,5,"system.display.learnMoreGSYNCDisplays")),t.R7$(4),t.JRh(t.bMT(7,7,"manage3dSettings.Description")),t.R7$(3),t.SpI(" ",t.bMT(10,9,"system.display.gsyncInfo")," "),t.R7$(3),t.JRh(t.bMT(13,11,"system.display.viewGSyncDisplays")),t.R7$(4),t.SpI(" ",t.bMT(17,13,"common.close")," "))}let Na=(()=>{class a{constructor(n,e,i,o,s,l){this.dialogData=e,this.dialogRef=i,this.redirectService=o,this.keyboardMappingService=s,this.displaysService=l,this.GlobalGsyncState=c.nX,this.selectedGSyncOption=c.nX.FullscreenOnly,this.isGSyncSupported=!1,this.isDirty=!1,this.gsyncIndicator=!1,this.logger=n.getLogger("nvapp/GlobalGsyncSettingComponent"),this.gSyncEnabled=e.gsyncGlobalState!==c.nX.Off,this.isGSyncSupported=e.gsyncGlobalState!==c.nX.NotAvailable,this.isGSyncSupported&&this.gSyncEnabled&&(this.selectedGSyncOption=e.gsyncGlobalState)}storeOriginalValues(){this.originalGSyncEnabled=this.gSyncEnabled,this.originalSelectedGSyncOption=this.selectedGSyncOption,this.originalGsyncIndicator=this.gsyncIndicator}ngOnInit(){this.initializeGsyncIndicator(),this.storeOriginalValues()}initializeGsyncIndicator(){this.gsyncIndicator=this.dialogData?.gsyncIndicator||!1}gSyncStateChanged(){this.selectedGSyncOption=this.gSyncEnabled?c.nX.FullscreenOnly:c.nX.Off,this.updateDirtyState()}onGsyncIndicatorChanged(n){this.gsyncIndicator=n.checked,this.updateDirtyState()}onCancelClick(){this.dialogRef.close()}setGSyncEnableState(n,e){this.keyboardMappingService.isMouseOrKeyboardSpaceOrEnterEvent(n)&&(this.selectedGSyncOption=e,this.updateDirtyState(),this.logger.info("gSync option",this.selectedGSyncOption))}onApplyClick(){const n={...this.dialogData,selectedGSyncOption:this.selectedGSyncOption,gsyncIndicator:this.gsyncIndicator};this.dialogRef.close(n)}onCloseClick(){this.dialogRef.close()}onViewGsyncDisplays(){this.redirectService.redirectTo(In.r7.gSyncDisplays)}updateDirtyState(){this.isDirty=this.gSyncEnabled!==this.originalGSyncEnabled||this.selectedGSyncOption!==this.originalSelectedGSyncOption||this.gsyncIndicator!==this.originalGsyncIndicator}static{this.\u0275fac=function(e){return new(e||a)(t.rXU(v.J6),t.rXU(O.Vh),t.rXU(O.CP),t.rXU(In.Q5),t.rXU(_t.j),t.rXU(Q.R))}}static{this.\u0275cmp=t.VBU({type:a,selectors:[["nv-app-global-gsync-setting"]],decls:3,vars:2,consts:[["noGSyncSupport",""],["class","common-modal",4,"ngIf","ngIfElse"],[1,"common-modal"],["mat-dialog-title","",1,"font-header6","title","font-color-primary"],[1,"content","monitor-tech-content","margin-top-4"],[1,"flex-col","padding-left-8","padding-right-16","mat-radio-group-container",3,"ngModelChange","ngModel"],[3,"value"],[1,"flex-row","align-items-center","justify-content-space-between","margin-top-10","gsync-option-container"],["selectable","",1,"displays-chip",3,"keydown","click","disabled","selected"],[1,"font-body2"],[1,"divider"],[1,"indicator-checkbox"],[3,"change","checked","disabled","nvAppAnnouncer","associatedMessage"],["align","end",1,"actions"],["mat-button","",1,"cancel-button","font-button2",3,"click"],["mat-raised-button","",1,"apply-button","font-button2","mat-accent",3,"click","disabled"],[1,"content","monitor-tech-content"],[1,"font-sub1","font-color-primary"],[1,"font-body2","font-color-secondary"],[1,"font-body2-link",3,"click"]],template:function(e,i){if(1&e&&t.DNE(0,Xa,36,39,"div",1)(1,Ba,18,15,"ng-template",null,0,t.C5r),2&e){const o=t.sdS(2);t.Y8G("ngIf",i.isGSyncSupported)("ngIfElse",o)}},dependencies:[u.bT,Dt.Aq,J.tG,et.nM,L.BC,L.vS,U.iV,X.q,dt.So,O.BI,O.Yi,O.E7,St.VT,St._g,z.O_,z.Id,nt.L,x.D9],styles:[".monitor-tech-content[_ngcontent-%COMP%]{padding:0 8px}.mat-radio-group-container[_ngcontent-%COMP%]{display:flex;flex-direction:column;padding:0 8px}.mat-radio-group-container[_ngcontent-%COMP%] mat-radio-button[_ngcontent-%COMP%]{height:48px;display:flex}.gsync-option-container[_ngcontent-%COMP%]{padding-left:52px;padding-right:8px}.indicator-checkbox[_ngcontent-%COMP%]{margin-top:16px;display:flex;align-items:center;padding:0 24px 0 8px}.divider[_ngcontent-%COMP%]{margin:16px 24px 16px 16px}","[_ngcontent-%COMP%]:root{--rwd-column-count: 4;--rwd-gutter-count: 3 ;--rwd-gutter-size: 8px;--rwd-container-side-spacing: 16px;--rwd-column-size: calc((var(--rwd-container-width) - var(--rwd-sidebar-width) - 2 * 16px - 8px * 3 ) / 4);--rwd-sidebar-width: 0px;--rwd-container-width: 100vw}@media screen and (min-width: 480px){[_ngcontent-%COMP%]:root{--rwd-column-count: 6;--rwd-gutter-count: 5 ;--rwd-column-size: calc((var(--rwd-container-width) - var(--rwd-sidebar-width) - 2 * 16px - 8px * 5 ) / 6)}}@media screen and (min-width: 720px){[_ngcontent-%COMP%]:root{--rwd-column-count: 8;--rwd-gutter-count: 7 ;--rwd-column-size: calc((var(--rwd-container-width) - var(--rwd-sidebar-width) - 2 * 16px - 8px * 7 ) / 8)}}@media screen and (min-width: 960px){[_ngcontent-%COMP%]:root{--rwd-column-count: 12;--rwd-gutter-count: 11 ;--rwd-container-side-spacing: 24px;--rwd-column-size: calc((var(--rwd-container-width) - var(--rwd-sidebar-width) - 2 * 24px - 8px * 11 ) / 12)}}@media screen and (min-width: 1440px){[_ngcontent-%COMP%]:root{--rwd-gutter-size: 16px;--rwd-column-size: calc((var(--rwd-container-width) - var(--rwd-sidebar-width) - 2 * 24px - 16px * 11 ) / 12)}}[_ngcontent-%COMP%]:root{--hig-marquee-ratio: .3229;--hig-marquee-parent-container-width: 100vw;--hig-marquee-container-height: calc(var(--hig-marquee-ratio) * 100vw);--hig-marquee-corner-column: 56px;--hig-marquee-text-column: 14vw;--hig-marquee-padded-image-first-row: calc(var(--hig-marquee-ratio) * (100vw - var(--hig-marquee-corner-column) - var(--hig-marquee-text-column)));--hig-marquee-padded-image-second-row: calc(var(--hig-marquee-container-height) - var(--hig-marquee-padded-image-first-row))}.ellipsified-text-with-tooltip[_ngcontent-%COMP%]{text-overflow:ellipsis;overflow:hidden}.ellipsified-text-with-tooltip.multi-line-ellipsis[_ngcontent-%COMP%]{display:-webkit-box;-webkit-box-orient:vertical;white-space:wrap}.ellipsified-text-with-tooltip.single-line-ellipsis[_ngcontent-%COMP%]{white-space:nowrap}.ellipsis[_ngcontent-%COMP%]{text-overflow:ellipsis;overflow:hidden}.system-display-box[_ngcontent-%COMP%]{box-sizing:border-box;border:1px solid var(--system-display-border-color);display:flex;width:26px;height:20px;flex-direction:row;align-self:center;justify-content:center;align-items:center}.system-display-box[_ngcontent-%COMP%] span[_ngcontent-%COMP%]{color:var(--system-display-span-color)}.displays-chip[_ngcontent-%COMP%]{height:32px}.accordion-padding[_ngcontent-%COMP%]{padding:14px 0}.accordion-header[_ngcontent-%COMP%]{padding:14px 16px;width:100%}.accordion-header[_ngcontent-%COMP%] mat-icon[_ngcontent-%COMP%]{color:var(--primary-contrast-900)}.info-icon[_ngcontent-%COMP%]{width:16px;height:16px;flex-shrink:0}",".margin-0[_ngcontent-%COMP%]{margin:0}.padding-0[_ngcontent-%COMP%]{padding:0}.gap-0[_ngcontent-%COMP%]{gap:0px}.margin-top-0[_ngcontent-%COMP%]{margin-top:0}.padding-top-0[_ngcontent-%COMP%]{padding-top:0}.margin-bottom-0[_ngcontent-%COMP%]{margin-bottom:0}.padding-bottom-0[_ngcontent-%COMP%]{padding-bottom:0}.margin-left-0[_ngcontent-%COMP%]{margin-left:0}.padding-left-0[_ngcontent-%COMP%]{padding-left:0}.margin-right-0[_ngcontent-%COMP%]{margin-right:0}.padding-right-0[_ngcontent-%COMP%]{padding-right:0}.margin-4[_ngcontent-%COMP%]{margin:4px}.padding-4[_ngcontent-%COMP%]{padding:4px}.gap-4[_ngcontent-%COMP%]{gap:4px}.margin-top-4[_ngcontent-%COMP%]{margin-top:4px}.padding-top-4[_ngcontent-%COMP%]{padding-top:4px}.margin-bottom-4[_ngcontent-%COMP%]{margin-bottom:4px}.padding-bottom-4[_ngcontent-%COMP%]{padding-bottom:4px}.margin-left-4[_ngcontent-%COMP%]{margin-left:4px}.padding-left-4[_ngcontent-%COMP%]{padding-left:4px}.margin-right-4[_ngcontent-%COMP%]{margin-right:4px}.padding-right-4[_ngcontent-%COMP%]{padding-right:4px}.margin-8[_ngcontent-%COMP%]{margin:8px}.padding-8[_ngcontent-%COMP%]{padding:8px}.gap-8[_ngcontent-%COMP%]{gap:8px}.margin-top-8[_ngcontent-%COMP%]{margin-top:8px}.padding-top-8[_ngcontent-%COMP%]{padding-top:8px}.margin-bottom-8[_ngcontent-%COMP%]{margin-bottom:8px}.padding-bottom-8[_ngcontent-%COMP%]{padding-bottom:8px}.margin-left-8[_ngcontent-%COMP%]{margin-left:8px}.padding-left-8[_ngcontent-%COMP%]{padding-left:8px}.margin-right-8[_ngcontent-%COMP%]{margin-right:8px}.padding-right-8[_ngcontent-%COMP%]{padding-right:8px}.margin-10[_ngcontent-%COMP%]{margin:10px}.padding-10[_ngcontent-%COMP%]{padding:10px}.gap-10[_ngcontent-%COMP%]{gap:10px}.margin-top-10[_ngcontent-%COMP%]{margin-top:10px}.padding-top-10[_ngcontent-%COMP%]{padding-top:10px}.margin-bottom-10[_ngcontent-%COMP%]{margin-bottom:10px}.padding-bottom-10[_ngcontent-%COMP%]{padding-bottom:10px}.margin-left-10[_ngcontent-%COMP%]{margin-left:10px}.padding-left-10[_ngcontent-%COMP%]{padding-left:10px}.margin-right-10[_ngcontent-%COMP%]{margin-right:10px}.padding-right-10[_ngcontent-%COMP%]{padding-right:10px}.margin-12[_ngcontent-%COMP%]{margin:12px}.padding-12[_ngcontent-%COMP%]{padding:12px}.gap-12[_ngcontent-%COMP%]{gap:12px}.margin-top-12[_ngcontent-%COMP%]{margin-top:12px}.padding-top-12[_ngcontent-%COMP%]{padding-top:12px}.margin-bottom-12[_ngcontent-%COMP%]{margin-bottom:12px}.padding-bottom-12[_ngcontent-%COMP%]{padding-bottom:12px}.margin-left-12[_ngcontent-%COMP%]{margin-left:12px}.padding-left-12[_ngcontent-%COMP%]{padding-left:12px}.margin-right-12[_ngcontent-%COMP%]{margin-right:12px}.padding-right-12[_ngcontent-%COMP%]{padding-right:12px}.margin-16[_ngcontent-%COMP%]{margin:16px}.padding-16[_ngcontent-%COMP%]{padding:16px}.gap-16[_ngcontent-%COMP%]{gap:16px}.margin-top-16[_ngcontent-%COMP%]{margin-top:16px}.padding-top-16[_ngcontent-%COMP%]{padding-top:16px}.margin-bottom-16[_ngcontent-%COMP%]{margin-bottom:16px}.padding-bottom-16[_ngcontent-%COMP%]{padding-bottom:16px}.margin-left-16[_ngcontent-%COMP%]{margin-left:16px}.padding-left-16[_ngcontent-%COMP%]{padding-left:16px}.margin-right-16[_ngcontent-%COMP%]{margin-right:16px}.padding-right-16[_ngcontent-%COMP%]{padding-right:16px}.margin-20[_ngcontent-%COMP%]{margin:20px}.padding-20[_ngcontent-%COMP%]{padding:20px}.gap-20[_ngcontent-%COMP%]{gap:20px}.margin-top-20[_ngcontent-%COMP%]{margin-top:20px}.padding-top-20[_ngcontent-%COMP%]{padding-top:20px}.margin-bottom-20[_ngcontent-%COMP%]{margin-bottom:20px}.padding-bottom-20[_ngcontent-%COMP%]{padding-bottom:20px}.margin-left-20[_ngcontent-%COMP%]{margin-left:20px}.padding-left-20[_ngcontent-%COMP%]{padding-left:20px}.margin-right-20[_ngcontent-%COMP%]{margin-right:20px}.padding-right-20[_ngcontent-%COMP%]{padding-right:20px}.margin-24[_ngcontent-%COMP%]{margin:24px}.padding-24[_ngcontent-%COMP%]{padding:24px}.gap-24[_ngcontent-%COMP%]{gap:24px}.margin-top-24[_ngcontent-%COMP%]{margin-top:24px}.padding-top-24[_ngcontent-%COMP%]{padding-top:24px}.margin-bottom-24[_ngcontent-%COMP%]{margin-bottom:24px}.padding-bottom-24[_ngcontent-%COMP%]{padding-bottom:24px}.margin-left-24[_ngcontent-%COMP%]{margin-left:24px}.padding-left-24[_ngcontent-%COMP%]{padding-left:24px}.margin-right-24[_ngcontent-%COMP%]{margin-right:24px}.padding-right-24[_ngcontent-%COMP%]{padding-right:24px}.margin-32[_ngcontent-%COMP%]{margin:32px}.padding-32[_ngcontent-%COMP%]{padding:32px}.gap-32[_ngcontent-%COMP%]{gap:32px}.margin-top-32[_ngcontent-%COMP%]{margin-top:32px}.padding-top-32[_ngcontent-%COMP%]{padding-top:32px}.margin-bottom-32[_ngcontent-%COMP%]{margin-bottom:32px}.padding-bottom-32[_ngcontent-%COMP%]{padding-bottom:32px}.margin-left-32[_ngcontent-%COMP%]{margin-left:32px}.padding-left-32[_ngcontent-%COMP%]{padding-left:32px}.margin-right-32[_ngcontent-%COMP%]{margin-right:32px}.padding-right-32[_ngcontent-%COMP%]{padding-right:32px}.margin-36[_ngcontent-%COMP%]{margin:36px}.padding-36[_ngcontent-%COMP%]{padding:36px}.gap-36[_ngcontent-%COMP%]{gap:36px}.margin-top-36[_ngcontent-%COMP%]{margin-top:36px}.padding-top-36[_ngcontent-%COMP%]{padding-top:36px}.margin-bottom-36[_ngcontent-%COMP%]{margin-bottom:36px}.padding-bottom-36[_ngcontent-%COMP%]{padding-bottom:36px}.margin-left-36[_ngcontent-%COMP%]{margin-left:36px}.padding-left-36[_ngcontent-%COMP%]{padding-left:36px}.margin-right-36[_ngcontent-%COMP%]{margin-right:36px}.padding-right-36[_ngcontent-%COMP%]{padding-right:36px}.flex-row[_ngcontent-%COMP%]{display:flex}.flex-col[_ngcontent-%COMP%]{display:flex;flex-direction:column}.justify-content-space-between[_ngcontent-%COMP%]{justify-content:space-between}.justify-content-center[_ngcontent-%COMP%]{justify-content:center}.align-items-center[_ngcontent-%COMP%]{align-items:center}.flex-none[_ngcontent-%COMP%]{flex:none}"]})}}return a})();var $=p(51148),La=p(35146),Z=p(52842);function Ya(a,r){if(1&a){const n=t.RV6();t.qex(0),t.j41(1,"mat-chip",12),t.bIt("click",function(){const i=t.eBV(n).$implicit,o=t.XpG();return t.Njj(o.onModeChange(i.name))}),t.nrm(2,"mat-icon",13),t.j41(3,"span",7),t.EFF(4),t.nI1(5,"translate"),t.k0s()(),t.bVm()}if(2&a){const n=r.$implicit,e=t.XpG();t.R7$(),t.Y8G("disabled",e.isFeatureEnabled)("selected",e.selectedMode===n.name)("disabled",n.isDisabled),t.R7$(),t.Y8G("svgIcon",n.icon),t.R7$(2),t.JRh(t.bMT(5,5,n.name))}}function Ha(a,r){1&a&&(t.j41(0,"div",14),t.nrm(1,"mat-icon",6),t.j41(2,"span",15),t.EFF(3),t.nI1(4,"translate"),t.k0s()()),2&a&&(t.R7$(3),t.SpI(" ",t.bMT(4,1,"system.display.advanceOptimus.crashNote")," "))}let za=(()=>{class a{constructor(n,e,i,o,s){this.loggingService=n,this.dialogRef=e,this.data=i,this.translateService=o,this.manageDisplayModeService=s,this.displayModeChips=Z.bR,this.showWarning=!1,this.isDirty=!1,this.destroyRef=(0,t.WQX)(t.abz),this.displayHeaders=V.H,this.logger=n.getLogger("nvapp/ManageDisplayModeDialogComponent"),this.ddsState=i?.ddsState,this.initialMuxState=this.ddsState?.MuxState,this.muxState=this.ddsState?.MuxState,this.isAutomaticMode=this.ddsState?.bIsAutomatic}ngOnInit(){this.handleDdsStateUpdate()}onModeChange(n){this.logger.info("Selected Mode ",n),this.previousMuxState=this.muxState,this.isAutomaticMode=n===$.q5.Auto,this.isAutomaticMode||n===$.q5.Optimus?this.handleDdsStateUpdate():(this.muxState=$.iZ.State_DGPU,this.updateSelectedMode(this.isAutomaticMode,this.muxState),this.checkMuxStateChange(this.previousMuxState,this.muxState),this.updateDirtyState())}handleDdsStateUpdate(){this.manageDisplayModeService.getDdsState().pipe((0,m.s)(1)).subscribe(n=>{this.previousMuxState?(this.muxState=this.isAutomaticMode?n?.MuxState:$.iZ.State_IGPU,this.updateSelectedMode(this.isAutomaticMode,this.muxState),this.checkMuxStateChange(this.previousMuxState,this.muxState),this.updateDirtyState()):this.updateStateFromDds(n)},n=>{this.logger.error("Error refreshing DDS state",n),this.previousMuxState||this.updateStateFromDds(this.ddsState)})}updateStateFromDds(n){this.ddsState=n,this.initialMuxState=n?.MuxState,this.muxState=n?.MuxState,this.isAutomaticMode=n?.bIsAutomatic,this.updateSelectedMode(this.isAutomaticMode,this.muxState),this.listenToDdsStateChange()}checkMuxStateChange(n,e){n!==e&&e!==this.initialMuxState?this.checkBlockingAppPresence():this.showWarning=!1}checkBlockingAppPresence(){this.blockingAppSub?.unsubscribe(),this.blockingAppSub=this.manageDisplayModeService.getBlockingAppPresence().subscribe(n=>{this.logger.info("blocking app present status ",n),this.showWarning=n},n=>{this.logger.error("Error checking blocking app presence",n),this.showWarning=!1})}updateSelectedMode(n,e){this.selectedMode=n?$.q5.Auto:e===$.iZ.State_DGPU?$.q5.NvGpu:$.q5.Optimus,this.updateStatusInfo()}updateDirtyState(){const n={...this.ddsState,bIsAutomatic:this.isAutomaticMode,MuxState:this.muxState};this.isDirty=!(0,R.isEqual)(this.ddsState,n)}updateStatusInfo(){switch(this.selectedMode){case $.q5.Auto:const n=this.translateService.instant(Z.mW),e=this.translateService.instant(Z.Cp),i=this.translateService.instant(this.muxState===$.iZ.State_DGPU?Z.NK:Z.xQ);this.statusInfoText=`${n}: ${e} - ${i}`;break;case $.q5.NvGpu:this.statusInfoText=this.translateService.instant(Z.a4);break;case $.q5.Optimus:this.statusInfoText=this.translateService.instant(Z.BE);break;default:this.statusInfoText=""}}listenToDdsStateChange(){this.manageDisplayModeService.ddsState$.pipe((0,yt.ZZ)(n=>(0,La.yU)((0,D.of)(n),this.manageDisplayModeService.isACPowerConnected())),(0,h.pQ)(this.destroyRef)).subscribe(([n,e])=>{this.logger.info("Update received for dds and power state"),this.ddsState=n,this.isAutomaticMode?(this.muxState=n?.MuxState,this.updateSelectedMode(!0,this.muxState)):this.updateSelectedMode(!1,this.muxState),this.updateDisableState(n,e)},n=>{this.logger.error("Failed to get ddsState and power info ",n)})}updateDisableState(n,e){const i=n?.bIsAutomatic,o=!n?.bIsAutomatic&&n?.MuxState===$.iZ.State_DGPU,s=!n?.bIsAutomatic&&n?.MuxState===$.iZ.State_IGPU,l=this.manageDisplayModeService.getIsAllDisabled(n);this.logger.info("isAllDisabled flag ",l),this.displayModeChips[0].isDisabled=l&&!i||!e,this.displayModeChips[1].isDisabled=l&&!o,this.displayModeChips[2].isDisabled=l&&!s;const d=this.selectedMode===$.q5.Auto,_=this.selectedMode===$.q5.NvGpu,C=this.selectedMode===$.q5.Optimus;this.logger.info("Selected Mode ",this.selectedMode),s&&(d&&(this.isDirty=!this.displayModeChips[0].isDisabled),_&&(this.isDirty=!this.displayModeChips[1].isDisabled)),o&&(d&&(this.isDirty=!this.displayModeChips[0].isDisabled),C&&(this.isDirty=!this.displayModeChips[2].isDisabled)),i&&(_&&(this.isDirty=!this.displayModeChips[1].isDisabled),C&&(this.isDirty=!this.displayModeChips[2].isDisabled))}onCancel(){this.logger.info("cancel clicked"),this.dialogRef.close()}onApply(){const n={...this.ddsState,bIsAutomatic:this.isAutomaticMode,MuxState:this.muxState};this.logger.info("dds state on apply click ",n),this.dialogRef.close({ddsState:n})}ngOnDestroy(){this.blockingAppSub?.unsubscribe()}static{this.\u0275fac=function(e){return new(e||a)(t.rXU(v.J6),t.rXU(O.CP),t.rXU(O.Vh),t.rXU(x.c$),t.rXU(Jt.S))}}static{this.\u0275cmp=t.VBU({type:a,selectors:[["nv-app-manage-display-mode-dialog"]],decls:21,vars:16,consts:[[1,"common-modal"],["mat-dialog-title","",1,"font-header6","title","font-color-primary"],[1,"content"],[1,"flex-row","align-items-center","justify-content-space-between","margin-top-8","display-mode-container"],[4,"ngFor","ngForOf"],[1,"flex-row","gap-8","align-items-center","margin-top-16","status-info"],["svgIcon","info",1,"font-body2","info-icon"],[1,"font-body2"],["class","flex-row gap-8 margin-top-16 status-info",4,"ngIf"],["align","end",1,"actions"],["mat-button","",1,"cancel-button","font-button2",3,"click"],["mat-raised-button","",1,"apply-button","font-button2","mat-accent",3,"click","mat-dialog-close","disabled"],["selectable","",1,"displays-chip","mat-chip-with-icon",3,"click","disabled","selected"],[1,"display-mode-icon",3,"svgIcon"],[1,"flex-row","gap-8","margin-top-16","status-info"],[1,"font-body2","warning-text"]],template:function(e,i){1&e&&(t.j41(0,"div",0)(1,"span",1),t.EFF(2),t.nI1(3,"translate"),t.k0s(),t.j41(4,"mat-dialog-content",2)(5,"div",3)(6,"mat-chip-list"),t.DNE(7,Ya,6,7,"ng-container",4),t.k0s()(),t.j41(8,"div",5),t.nrm(9,"mat-icon",6),t.j41(10,"span",7),t.EFF(11),t.nI1(12,"translate"),t.k0s()(),t.DNE(13,Ha,5,3,"div",8),t.k0s(),t.j41(14,"mat-dialog-actions",9)(15,"button",10),t.bIt("click",function(){return i.onCancel()}),t.EFF(16),t.nI1(17,"translate"),t.k0s(),t.j41(18,"button",11),t.bIt("click",function(){return i.onApply()}),t.EFF(19),t.nI1(20,"translate"),t.k0s()()()),2&e&&(t.R7$(2),t.SpI(" ",t.bMT(3,8,i.displayHeaders.GlobalSettings.DisplayMode)," "),t.R7$(5),t.Y8G("ngForOf",i.displayModeChips),t.R7$(4),t.SpI(" ",t.bMT(12,10,i.statusInfoText)," "),t.R7$(2),t.Y8G("ngIf",i.showWarning),t.R7$(3),t.SpI(" ",t.bMT(17,12,"common.cancel")," "),t.R7$(2),t.Y8G("mat-dialog-close",i.selectedMode)("disabled",!i.isDirty),t.R7$(),t.SpI(" ",t.bMT(20,14,"common.apply")," "))},dependencies:[u.Sq,u.bT,Dt.Aq,U.iV,F.An,O.tx,O.BI,O.Yi,O.E7,z.O_,z.Id,x.D9],styles:[".display-mode-container[_ngcontent-%COMP%]{padding-left:16px;padding-right:24px}.display-mode-icon[_ngcontent-%COMP%]{width:20px;height:20px;margin-right:6px}.status-info[_ngcontent-%COMP%]{padding:0 24px 0 16px}.info-icon[_ngcontent-%COMP%]{width:16px;height:16px;flex-shrink:0;margin-top:2px}","[_ngcontent-%COMP%]:root{--rwd-column-count: 4;--rwd-gutter-count: 3 ;--rwd-gutter-size: 8px;--rwd-container-side-spacing: 16px;--rwd-column-size: calc((var(--rwd-container-width) - var(--rwd-sidebar-width) - 2 * 16px - 8px * 3 ) / 4);--rwd-sidebar-width: 0px;--rwd-container-width: 100vw}@media screen and (min-width: 480px){[_ngcontent-%COMP%]:root{--rwd-column-count: 6;--rwd-gutter-count: 5 ;--rwd-column-size: calc((var(--rwd-container-width) - var(--rwd-sidebar-width) - 2 * 16px - 8px * 5 ) / 6)}}@media screen and (min-width: 720px){[_ngcontent-%COMP%]:root{--rwd-column-count: 8;--rwd-gutter-count: 7 ;--rwd-column-size: calc((var(--rwd-container-width) - var(--rwd-sidebar-width) - 2 * 16px - 8px * 7 ) / 8)}}@media screen and (min-width: 960px){[_ngcontent-%COMP%]:root{--rwd-column-count: 12;--rwd-gutter-count: 11 ;--rwd-container-side-spacing: 24px;--rwd-column-size: calc((var(--rwd-container-width) - var(--rwd-sidebar-width) - 2 * 24px - 8px * 11 ) / 12)}}@media screen and (min-width: 1440px){[_ngcontent-%COMP%]:root{--rwd-gutter-size: 16px;--rwd-column-size: calc((var(--rwd-container-width) - var(--rwd-sidebar-width) - 2 * 24px - 16px * 11 ) / 12)}}[_ngcontent-%COMP%]:root{--hig-marquee-ratio: .3229;--hig-marquee-parent-container-width: 100vw;--hig-marquee-container-height: calc(var(--hig-marquee-ratio) * 100vw);--hig-marquee-corner-column: 56px;--hig-marquee-text-column: 14vw;--hig-marquee-padded-image-first-row: calc(var(--hig-marquee-ratio) * (100vw - var(--hig-marquee-corner-column) - var(--hig-marquee-text-column)));--hig-marquee-padded-image-second-row: calc(var(--hig-marquee-container-height) - var(--hig-marquee-padded-image-first-row))}.ellipsified-text-with-tooltip[_ngcontent-%COMP%]{text-overflow:ellipsis;overflow:hidden}.ellipsified-text-with-tooltip.multi-line-ellipsis[_ngcontent-%COMP%]{display:-webkit-box;-webkit-box-orient:vertical;white-space:wrap}.ellipsified-text-with-tooltip.single-line-ellipsis[_ngcontent-%COMP%]{white-space:nowrap}.ellipsis[_ngcontent-%COMP%]{text-overflow:ellipsis;overflow:hidden}.system-display-box[_ngcontent-%COMP%]{box-sizing:border-box;border:1px solid var(--system-display-border-color);display:flex;width:26px;height:20px;flex-direction:row;align-self:center;justify-content:center;align-items:center}.system-display-box[_ngcontent-%COMP%] span[_ngcontent-%COMP%]{color:var(--system-display-span-color)}.displays-chip[_ngcontent-%COMP%]{height:32px}.accordion-padding[_ngcontent-%COMP%]{padding:14px 0}.accordion-header[_ngcontent-%COMP%]{padding:14px 16px;width:100%}.accordion-header[_ngcontent-%COMP%] mat-icon[_ngcontent-%COMP%]{color:var(--primary-contrast-900)}.info-icon[_ngcontent-%COMP%]{width:16px;height:16px;flex-shrink:0}",".margin-0[_ngcontent-%COMP%]{margin:0}.padding-0[_ngcontent-%COMP%]{padding:0}.gap-0[_ngcontent-%COMP%]{gap:0px}.margin-top-0[_ngcontent-%COMP%]{margin-top:0}.padding-top-0[_ngcontent-%COMP%]{padding-top:0}.margin-bottom-0[_ngcontent-%COMP%]{margin-bottom:0}.padding-bottom-0[_ngcontent-%COMP%]{padding-bottom:0}.margin-left-0[_ngcontent-%COMP%]{margin-left:0}.padding-left-0[_ngcontent-%COMP%]{padding-left:0}.margin-right-0[_ngcontent-%COMP%]{margin-right:0}.padding-right-0[_ngcontent-%COMP%]{padding-right:0}.margin-4[_ngcontent-%COMP%]{margin:4px}.padding-4[_ngcontent-%COMP%]{padding:4px}.gap-4[_ngcontent-%COMP%]{gap:4px}.margin-top-4[_ngcontent-%COMP%]{margin-top:4px}.padding-top-4[_ngcontent-%COMP%]{padding-top:4px}.margin-bottom-4[_ngcontent-%COMP%]{margin-bottom:4px}.padding-bottom-4[_ngcontent-%COMP%]{padding-bottom:4px}.margin-left-4[_ngcontent-%COMP%]{margin-left:4px}.padding-left-4[_ngcontent-%COMP%]{padding-left:4px}.margin-right-4[_ngcontent-%COMP%]{margin-right:4px}.padding-right-4[_ngcontent-%COMP%]{padding-right:4px}.margin-8[_ngcontent-%COMP%]{margin:8px}.padding-8[_ngcontent-%COMP%]{padding:8px}.gap-8[_ngcontent-%COMP%]{gap:8px}.margin-top-8[_ngcontent-%COMP%]{margin-top:8px}.padding-top-8[_ngcontent-%COMP%]{padding-top:8px}.margin-bottom-8[_ngcontent-%COMP%]{margin-bottom:8px}.padding-bottom-8[_ngcontent-%COMP%]{padding-bottom:8px}.margin-left-8[_ngcontent-%COMP%]{margin-left:8px}.padding-left-8[_ngcontent-%COMP%]{padding-left:8px}.margin-right-8[_ngcontent-%COMP%]{margin-right:8px}.padding-right-8[_ngcontent-%COMP%]{padding-right:8px}.margin-10[_ngcontent-%COMP%]{margin:10px}.padding-10[_ngcontent-%COMP%]{padding:10px}.gap-10[_ngcontent-%COMP%]{gap:10px}.margin-top-10[_ngcontent-%COMP%]{margin-top:10px}.padding-top-10[_ngcontent-%COMP%]{padding-top:10px}.margin-bottom-10[_ngcontent-%COMP%]{margin-bottom:10px}.padding-bottom-10[_ngcontent-%COMP%]{padding-bottom:10px}.margin-left-10[_ngcontent-%COMP%]{margin-left:10px}.padding-left-10[_ngcontent-%COMP%]{padding-left:10px}.margin-right-10[_ngcontent-%COMP%]{margin-right:10px}.padding-right-10[_ngcontent-%COMP%]{padding-right:10px}.margin-12[_ngcontent-%COMP%]{margin:12px}.padding-12[_ngcontent-%COMP%]{padding:12px}.gap-12[_ngcontent-%COMP%]{gap:12px}.margin-top-12[_ngcontent-%COMP%]{margin-top:12px}.padding-top-12[_ngcontent-%COMP%]{padding-top:12px}.margin-bottom-12[_ngcontent-%COMP%]{margin-bottom:12px}.padding-bottom-12[_ngcontent-%COMP%]{padding-bottom:12px}.margin-left-12[_ngcontent-%COMP%]{margin-left:12px}.padding-left-12[_ngcontent-%COMP%]{padding-left:12px}.margin-right-12[_ngcontent-%COMP%]{margin-right:12px}.padding-right-12[_ngcontent-%COMP%]{padding-right:12px}.margin-16[_ngcontent-%COMP%]{margin:16px}.padding-16[_ngcontent-%COMP%]{padding:16px}.gap-16[_ngcontent-%COMP%]{gap:16px}.margin-top-16[_ngcontent-%COMP%]{margin-top:16px}.padding-top-16[_ngcontent-%COMP%]{padding-top:16px}.margin-bottom-16[_ngcontent-%COMP%]{margin-bottom:16px}.padding-bottom-16[_ngcontent-%COMP%]{padding-bottom:16px}.margin-left-16[_ngcontent-%COMP%]{margin-left:16px}.padding-left-16[_ngcontent-%COMP%]{padding-left:16px}.margin-right-16[_ngcontent-%COMP%]{margin-right:16px}.padding-right-16[_ngcontent-%COMP%]{padding-right:16px}.margin-20[_ngcontent-%COMP%]{margin:20px}.padding-20[_ngcontent-%COMP%]{padding:20px}.gap-20[_ngcontent-%COMP%]{gap:20px}.margin-top-20[_ngcontent-%COMP%]{margin-top:20px}.padding-top-20[_ngcontent-%COMP%]{padding-top:20px}.margin-bottom-20[_ngcontent-%COMP%]{margin-bottom:20px}.padding-bottom-20[_ngcontent-%COMP%]{padding-bottom:20px}.margin-left-20[_ngcontent-%COMP%]{margin-left:20px}.padding-left-20[_ngcontent-%COMP%]{padding-left:20px}.margin-right-20[_ngcontent-%COMP%]{margin-right:20px}.padding-right-20[_ngcontent-%COMP%]{padding-right:20px}.margin-24[_ngcontent-%COMP%]{margin:24px}.padding-24[_ngcontent-%COMP%]{padding:24px}.gap-24[_ngcontent-%COMP%]{gap:24px}.margin-top-24[_ngcontent-%COMP%]{margin-top:24px}.padding-top-24[_ngcontent-%COMP%]{padding-top:24px}.margin-bottom-24[_ngcontent-%COMP%]{margin-bottom:24px}.padding-bottom-24[_ngcontent-%COMP%]{padding-bottom:24px}.margin-left-24[_ngcontent-%COMP%]{margin-left:24px}.padding-left-24[_ngcontent-%COMP%]{padding-left:24px}.margin-right-24[_ngcontent-%COMP%]{margin-right:24px}.padding-right-24[_ngcontent-%COMP%]{padding-right:24px}.margin-32[_ngcontent-%COMP%]{margin:32px}.padding-32[_ngcontent-%COMP%]{padding:32px}.gap-32[_ngcontent-%COMP%]{gap:32px}.margin-top-32[_ngcontent-%COMP%]{margin-top:32px}.padding-top-32[_ngcontent-%COMP%]{padding-top:32px}.margin-bottom-32[_ngcontent-%COMP%]{margin-bottom:32px}.padding-bottom-32[_ngcontent-%COMP%]{padding-bottom:32px}.margin-left-32[_ngcontent-%COMP%]{margin-left:32px}.padding-left-32[_ngcontent-%COMP%]{padding-left:32px}.margin-right-32[_ngcontent-%COMP%]{margin-right:32px}.padding-right-32[_ngcontent-%COMP%]{padding-right:32px}.margin-36[_ngcontent-%COMP%]{margin:36px}.padding-36[_ngcontent-%COMP%]{padding:36px}.gap-36[_ngcontent-%COMP%]{gap:36px}.margin-top-36[_ngcontent-%COMP%]{margin-top:36px}.padding-top-36[_ngcontent-%COMP%]{padding-top:36px}.margin-bottom-36[_ngcontent-%COMP%]{margin-bottom:36px}.padding-bottom-36[_ngcontent-%COMP%]{padding-bottom:36px}.margin-left-36[_ngcontent-%COMP%]{margin-left:36px}.padding-left-36[_ngcontent-%COMP%]{padding-left:36px}.margin-right-36[_ngcontent-%COMP%]{margin-right:36px}.padding-right-36[_ngcontent-%COMP%]{padding-right:36px}.flex-row[_ngcontent-%COMP%]{display:flex}.flex-col[_ngcontent-%COMP%]{display:flex;flex-direction:column}.justify-content-space-between[_ngcontent-%COMP%]{justify-content:space-between}.justify-content-center[_ngcontent-%COMP%]{justify-content:center}.align-items-center[_ngcontent-%COMP%]{align-items:center}.flex-none[_ngcontent-%COMP%]{flex:none}"]})}}return a})();function qa(a,r){if(1&a){const n=t.RV6();t.qex(0),t.j41(1,"div",3),t.nrm(2,"mat-divider"),t.j41(3,"div",4)(4,"div",5),t.EFF(5),t.nI1(6,"translate"),t.k0s(),t.j41(7,"div",6)(8,"div",7)(9,"div",8)(10,"span",9),t.EFF(11),t.nI1(12,"translate"),t.k0s()(),t.j41(13,"div",10)(14,"a",11),t.nI1(15,"translate"),t.nI1(16,"translate"),t.bIt("click",function(i){t.eBV(n);const o=t.XpG(2);return t.Njj(o.onLearnMoreClicked(i))})("keydown.enter",function(i){t.eBV(n);const o=t.XpG(2);return t.Njj(o.onLearnMoreClicked(i))}),t.EFF(17),t.nI1(18,"translate"),t.k0s()()()()(),t.nrm(19,"mat-divider"),t.k0s(),t.bVm()}if(2&a){const n=t.XpG(2);t.R7$(5),t.SpI(" ",t.bMT(6,6,n.displayHeaders.GlobalSettings.GsyncCapable)," "),t.R7$(6),t.JRh(t.bMT(12,8,n.gsyncSelectedStateText)),t.R7$(3),t.qtP("aria-label","",t.bMT(15,10,n.gsyncSelectedStateText)," ",t.bMT(16,12,"common.learnMore"),""),t.R7$(3),t.SpI(" ",t.bMT(18,14,"common.learnMore")," ")}}function Qa(a,r){if(1&a&&(t.qex(0),t.DNE(1,qa,20,16,"ng-container",1),t.bVm()),2&a){const n=t.XpG();t.R7$(),t.Y8G("ngIf",!n.isDdsSupported&&!n.isGsyncAvailable)}}function Ja(a,r){if(1&a&&(t.qex(0),t.j41(1,"label",33),t.nI1(2,"async"),t.EFF(3),t.nI1(4,"translate"),t.k0s(),t.bVm()),2&a){const n=t.XpG(2);t.R7$(),t.Y8G("ngClass",!0===t.bMT(2,2,n.isSumdDirty$)?"display-disabled-color":""),t.R7$(2),t.SpI(" ",t.bMT(4,4,n.isQuadro?"system.display.gSyncAndDisplayModeHeader":"system.display.gSyncDisplayModeAndSurroundHeader")," ")}}function Wa(a,r){if(1&a&&(t.qex(0),t.j41(1,"label",33),t.nI1(2,"async"),t.EFF(3),t.nI1(4,"translate"),t.k0s(),t.bVm()),2&a){const n=t.XpG(2);t.R7$(),t.Y8G("ngClass",!0===t.bMT(2,2,n.isSumdDirty$)?"display-disabled-color":""),t.R7$(2),t.SpI(" ",t.bMT(4,4,n.isQuadro?"system.display.gSyncCapable":"system.display.gSyncAndSurroundHeader")," ")}}function Za(a,r){if(1&a&&(t.qex(0),t.EFF(1),t.nI1(2,"translate"),t.bVm()),2&a){const n=t.XpG(2);t.R7$(),t.JRh(t.bMT(2,1,n.displayHeaders.GlobalSettings.GlobalGsyncCollapse))}}function Ka(a,r){if(1&a&&t.EFF(0),2&a){const n=t.XpG(2);t.SpI(" ",n.panelSummary,"")}}function to(a,r){if(1&a){const n=t.RV6();t.j41(0,"button",34),t.nI1(1,"async"),t.bIt("click",function(i){t.eBV(n);const o=t.XpG(2);return t.Njj(o.restoreGsync(i))})("keydown",function(i){t.eBV(n);const o=t.XpG(2);return t.Njj(o.restoreGsync(i))}),t.EFF(2),t.nI1(3,"translate"),t.k0s()}if(2&a){const n=t.XpG(2);t.Y8G("ngClass",!0===t.bMT(1,2,n.isSumdDirty$)?"display-disabled-color":""),t.R7$(2),t.SpI(" ",t.bMT(3,4,"common.restore")," ")}}function no(a,r){if(1&a&&(t.nrm(0,"mat-icon",35),t.nI1(1,"async")),2&a){const n=t.XpG(2);t.Y8G("ngClass",!0===t.bMT(1,1,n.isSumdDirty$)?"display-disabled-color":"")}}function eo(a,r){1&a&&t.nrm(0,"mat-icon",36)}function io(a,r){if(1&a){const n=t.RV6();t.qex(0),t.j41(1,"div",26)(2,"div",37)(3,"span",38),t.EFF(4),t.nI1(5,"translate"),t.k0s(),t.j41(6,"mat-icon",39),t.nI1(7,"translate"),t.nI1(8,"translate"),t.bIt("click",function(){t.eBV(n);const i=t.XpG(2);return t.Njj(i.onManageDisplayModeInfoClicked())})("keydown.enter",function(){t.eBV(n);const i=t.XpG(2);return t.Njj(i.onManageDisplayModeInfoClicked())}),t.k0s()(),t.j41(9,"button",28),t.bIt("click",function(){t.eBV(n);const i=t.XpG(2);return t.Njj(i.openManageDisplayModeDialog())}),t.j41(10,"div",29)(11,"div"),t.EFF(12),t.nI1(13,"translate"),t.k0s(),t.nrm(14,"mat-icon",30),t.k0s()()(),t.bVm()}if(2&a){const n=t.XpG(2);t.R7$(4),t.JRh(t.bMT(5,6,"system.display.advanceOptimus.displayMode")),t.R7$(2),t.qtP("aria-label","",t.bMT(7,8,"system.display.advanceOptimus.displayMode")," ",t.bMT(8,10,"common.info"),""),t.R7$(3),t.Y8G("disabled",!1),t.R7$(3),t.JRh(t.bMT(13,12,n.displayModeText))}}function ao(a,r){if(1&a){const n=t.RV6();t.j41(0,"div",37)(1,"span",38),t.EFF(2),t.nI1(3,"translate"),t.k0s(),t.j41(4,"mat-icon",39),t.nI1(5,"translate"),t.nI1(6,"translate"),t.bIt("click",function(i){t.eBV(n);const o=t.XpG(2);return t.Njj(o.onLearnMoreClicked(i))})("keydown.enter",function(i){t.eBV(n);const o=t.XpG(2);return t.Njj(o.onLearnMoreClicked(i))}),t.k0s()()}if(2&a){const n=t.XpG(2);t.R7$(2),t.JRh(t.bMT(3,4,n.displayHeaders.GlobalSettings.Gsync)),t.R7$(2),t.qtP("aria-label","",t.bMT(5,6,"system.display.gSYNC")," ",t.bMT(6,8,"common.info"),"")}}function oo(a,r){if(1&a){const n=t.RV6();t.j41(0,"div",40)(1,"a",11),t.nI1(2,"translate"),t.nI1(3,"translate"),t.bIt("click",function(i){t.eBV(n);const o=t.XpG(2);return t.Njj(o.onLearnMoreClicked(i))})("keydown.enter",function(i){t.eBV(n);const o=t.XpG(2);return t.Njj(o.onLearnMoreClicked(i))}),t.EFF(4),t.nI1(5,"translate"),t.k0s()()}if(2&a){const n=t.XpG(2);t.R7$(),t.qtP("aria-label","",t.bMT(2,4,n.gsyncSelectedStateText)," ",t.bMT(3,6,"common.learnMore"),""),t.R7$(3),t.SpI(" ",t.bMT(5,8,"common.learnMore")," ")}}function so(a,r){if(1&a){const n=t.RV6();t.j41(0,"div",26)(1,"div",37)(2,"span",38),t.EFF(3),t.nI1(4,"translate"),t.k0s(),t.j41(5,"mat-icon",39),t.nI1(6,"translate"),t.nI1(7,"translate"),t.bIt("click",function(i){t.eBV(n);const o=t.XpG(2);return t.Njj(o.onClickSurroundInfoDialogButton(i))})("keydown.enter",function(i){t.eBV(n);const o=t.XpG(2);return t.Njj(o.onClickSurroundInfoDialogButton(i))}),t.k0s()(),t.j41(8,"button",28),t.bIt("click",function(){t.eBV(n);const i=t.XpG(2);return t.Njj(i.openSurroundDialog())}),t.j41(9,"div",29)(10,"div"),t.EFF(11),t.nI1(12,"translate"),t.k0s(),t.nrm(13,"mat-icon",30),t.k0s()()()}if(2&a){const n=t.XpG(2);t.R7$(3),t.JRh(t.bMT(4,6,"surround.settingTitle")),t.R7$(2),t.qtP("aria-label","",t.bMT(6,8,"surround.settingTitle")," ",t.bMT(7,10,"common.info"),""),t.R7$(3),t.Y8G("disabled",!n.isSurroundAvailable),t.R7$(3),t.JRh(t.bMT(12,12,n.surroundSettingValueText))}}function ro(a,r){if(1&a){const n=t.RV6();t.j41(0,"mat-accordion",12),t.nrm(1,"mat-divider"),t.j41(2,"div",13)(3,"mat-expansion-panel",14),t.nI1(4,"async"),t.nI1(5,"async"),t.mxI("expandedChange",function(i){t.eBV(n);const o=t.XpG();return t.DH7(o.isExpanded,i)||(o.isExpanded=i),t.Njj(i)}),t.j41(6,"mat-expansion-panel-header",15)(7,"div",16)(8,"div",17),t.DNE(9,Ja,5,6,"ng-container",1)(10,Wa,5,6,"ng-container",1),t.j41(11,"div",18),t.nI1(12,"async"),t.DNE(13,Za,3,3,"ng-container",19)(14,Ka,1,1,"ng-template",null,0,t.C5r),t.k0s()(),t.j41(16,"div",20),t.DNE(17,to,4,6,"button",21)(18,no,2,3,"mat-icon",22)(19,eo,1,0,"mat-icon",23),t.k0s()()(),t.j41(20,"div",24)(21,"div",25),t.DNE(22,io,15,14,"ng-container",1),t.j41(23,"div",26),t.DNE(24,ao,7,10,"div",27),t.j41(25,"button",28),t.bIt("click",function(){t.eBV(n);const i=t.XpG();return t.Njj(i.onGsyncClicked())}),t.j41(26,"div",29)(27,"div"),t.EFF(28),t.nI1(29,"translate"),t.k0s(),t.nrm(30,"mat-icon",30),t.k0s()()(),t.DNE(31,oo,6,10,"div",31)(32,so,14,14,"div",32),t.k0s()()()(),t.nrm(33,"mat-divider"),t.k0s()}if(2&a){const n=t.sdS(15),e=t.XpG();t.R7$(3),t.R50("expanded",e.isExpanded),t.Y8G("ngClass",e.isExpanded?"ex-panel-bg":!0===t.bMT(4,20,e.isSumdDirty$)?"display-panel-disabled":"")("disabled",t.bMT(5,22,e.isSumdDirty$)),t.R7$(3),t.Y8G("collapsedHeight","auto")("expandedHeight","auto"),t.R7$(),t.Y8G("ngClass",e.isExpanded?"bottom-divider":""),t.R7$(2),t.Y8G("ngIf",e.isDdsSupported),t.R7$(),t.Y8G("ngIf",!e.isDdsSupported),t.R7$(),t.Y8G("ngClass",!0===t.bMT(12,24,e.isSumdDirty$)?"display-disabled-color":""),t.R7$(2),t.Y8G("ngIf",e.isExpanded)("ngIfElse",n),t.R7$(4),t.Y8G("ngIf",e.isExpanded&&(e.isGsyncAvailable||!e.isQuadro&&e.isSurroundAvailable)),t.R7$(),t.Y8G("ngIf",!e.isExpanded),t.R7$(),t.Y8G("ngIf",e.isExpanded),t.R7$(3),t.Y8G("ngIf",e.isDdsSupported),t.R7$(2),t.Y8G("ngIf",!e.isQuadro||e.isDdsSupported),t.R7$(),t.Y8G("disabled",!e.isGsyncAvailable),t.R7$(3),t.JRh(t.bMT(29,26,e.gsyncSelectedStateText)),t.R7$(3),t.Y8G("ngIf",e.isQuadro&&!e.isDdsSupported),t.R7$(),t.Y8G("ngIf",!e.isQuadro)}}let lo=(()=>{class a{set showDisplayModeDropdown(n){this._showDisplayModeDropdown=n,this.updatePanelSummary()}get showDisplayModeDropdown(){return this._showDisplayModeDropdown}set gsyncGlobalState(n){this._gsyncGlobalState=n,this.isGsyncAvailable=this._gsyncGlobalState!==c.nX.NotAvailable,this.gsyncSelectedStateText=b.Tu.get(this._gsyncGlobalState),this.updatePanelSummary()}get gsyncGlobalState(){return this._gsyncGlobalState}set ddsState(n){this._ddsState=n,this.isDdsSupported=this._ddsState?.bIsSupported,this.displayModeText=this.getDisplayModeSummary(),this.updatePanelSummary()}get ddsState(){return this._ddsState}constructor(n,e,i,o,s,l,d,_,C,w,G){this.matDialog=e,this.translateService=i,this.settingInfoModalService=o,this.telemetryUtilsService=s,this.displaysService=l,this.multiDisplaysSupportService=d,this.manageDisplayModeService=_,this.keyboardMappingService=C,this.surroundService=w,this.hardwareInfoService=G,this.isGsyncAvailable=!1,this.panelSummary="",this.isExpanded=!1,this.displayModeTypes=c.iI,this.displayModeSelected=c.iI.Automatic,this.isSumdDirty$=new lt.c,this.isSurroundDialogOpenAlreadyInProgress=!1,this.destroyRef=(0,t.WQX)(t.abz),this.displayHeaders=V.H,this.logger=n.getLogger("nvapp/DisplayGlobalSettingsComponent")}ngOnInit(){this.listenForSumdDirtyState(),this.listenForSurroundPanelSummaryAndRelatedFlags()}checkIsQuadro(){return this.hardwareInfoService.getQuadroSystemFlag().pipe((0,h.pQ)(this.destroyRef)).pipe((0,M.M)(n=>{this.isQuadro=n}))}listenForSurroundPanelSummaryAndRelatedFlags(){this.surroundDisableStateListener=(0,T.zV)([this.checkIsQuadro(),this.surroundService.isSurroundAvailable$,this.surroundService.isSurroundEnabled$,this.surroundService.selectedSurroundTopology$]).pipe((0,h.pQ)(this.destroyRef),(0,M.M)(([n,e,i,o])=>{this.isSurroundAvailable=e,this.isSurroundEnabled=i,this.updateSurroundSettingText(o)})).subscribe(g.l,n=>{this.logger.error("failed to fetch if surround is disabled",n)})}listenForSumdDirtyState(){this.isSumdDirty$=this.multiDisplaysSupportService.isSumdDirty$.pipe((0,M.M)(n=>{this.isExpanded=this.isExpanded&&!n}))}updateSurroundSettingText(n){this.surroundSettingValueText=!this.isQuadro&&this.isSurroundAvailable?this.isSurroundEnabled&&(n?.row>1||n?.col>1)?n.row+" x "+n.col:b.aR:b.m6,this.updatePanelSummary()}onLearnMoreClicked(n){n.stopPropagation(),n.preventDefault(),this.gsyncGlobalState===c.nX.NotAvailable?this.openUpSellDialog():this.onClickInfoDialogButton()}openUpSellDialog(){const n={title:this.translateService.instant("system.display.learnMoreGSYNCDisplays"),description:this.translateService.instant("system.display.gsyncInfo"),link:{text:"system.display.viewGSyncDisplays",linkClickedCallback:this.gsyncDisplayDialogLinkClicked.bind(this)}};this.settingInfoModalService.openDialogWithData(n),this.telemetryUtilsService.sendClickEvent(f.EB.GSyncUpsellDialog,`${f.d3.System_Displays}`,!0)}openSurroundDialog(){this.isSurroundDialogOpenAlreadyInProgress||(this.isSurroundDialogOpenAlreadyInProgress=!0,this.surroundService.prepareToOpenSurroundDialog().pipe((0,h.pQ)(this.destroyRef)).subscribe(n=>{this.openSurroundDisplaysSheet(),this.isSurroundDialogOpenAlreadyInProgress=!1},n=>{this.isSurroundDialogOpenAlreadyInProgress=!1,this.logger.error("Failed to load surround dialog",n)}))}openSurroundDisplaysSheet(){this.matDialog.open(Ua,{panelClass:["surround-content-modal","common-dialog"],autoFocus:!0,restoreFocus:!0,disableClose:!0}).beforeClosed().pipe((0,m.s)(1),(0,it.H)(e=>this.surroundService.identifySurroundDisplays(!1,!0)),(0,h.pQ)(this.destroyRef)).subscribe(g.l,e=>{this.logger.error("failed to hide display identifiers",e)})}onGsyncClicked(){this.displaysService.ensureGsyncIndicatorFresh().pipe((0,m.s)(1),(0,A.W)(n=>(this.logger.error("Error getting fresh G-SYNC indicator state from backend",n),(0,D.of)({isEnabled:!1}))),(0,I.n)(n=>{const e=n.isEnabled;return this.openGsyncDialog(e).pipe((0,P.T)(i=>({dialogResult:i,currentGsyncIndicator:e})))}),(0,I.n)(({dialogResult:n,currentGsyncIndicator:e})=>n&&(this.gsyncGlobalState=n.selectedGSyncOption,this.gsyncSelectedStateText=b.Tu.get(n.selectedGSyncOption),this.updatePanelSummary(),n.gsyncIndicator!==e)?this.displaysService.setGsyncIndicator(n.gsyncIndicator).pipe((0,M.M)(()=>{this.logger.info("G-SYNC indicator state applied successfully")}),(0,A.W)(i=>(this.logger.error("Error applying G-SYNC indicator state:",i),(0,D.of)(null)))):(0,D.of)(null)),(0,M.M)(()=>{this.displaysService.applyGlobalGsync({globalGsyncState:this.gsyncGlobalState})}),(0,h.pQ)(this.destroyRef)).subscribe(()=>{this.logger.info("G-Sync setting dialog closed, Global Gsync state selected: ",this.gsyncGlobalState)},n=>{this.logger.error("failed to open G-Sync setting dialog",n)})}openGsyncDialog(n){return this.matDialog.open(Na,{panelClass:["graphics-setting-modal-container","common-dialog"],autoFocus:!1,hasBackdrop:!0,restoreFocus:!1,data:{gsyncGlobalState:this.gsyncGlobalState,gsyncIndicator:n}}).afterClosed().pipe((0,m.s)(1))}updatePanelSummary(){let n="";const e=[];if(this.ddsState?.bIsSupported){const i=this.getDisplayModeSummary();n=this.translateService.instant("system.display.globalDisplayModeHeader",{selectedGlobalDisplayModeText:i}),e.push(n)}this.gsyncSelectedStateText&&(this.isDdsSupported?(n=this.translateService.instant("system.display.globalGSyncModeHeaderText",{selectedGlobalGSysncText:this.translateService.instant(this.gsyncSelectedStateText)}),e.push(n),this.isQuadro||this.updateSurroundText(e,n)):this.isQuadro?(n=this.translateService.instant(this.gsyncSelectedStateText),e.push(n)):(n=this.translateService.instant("system.display.globalGSyncModeHeaderText",{selectedGlobalGSysncText:this.translateService.instant(this.gsyncSelectedStateText)}),e.push(n),this.updateSurroundText(e,n))),e.length&&(this.panelSummary=e.join(" | "))}updateSurroundText(n,e){this.surroundSettingValueText&&(e=this.translateService.instant("system.display.globalSurroundHeaderText",{surroundText:this.translateService.instant(this.surroundSettingValueText)}),n.push(e))}getDisplayModeSummary(){const n=this.translateService.instant(Z.NK),e=this.translateService.instant(Z.G7),i=this.translateService.instant(Z.xQ),o=this.translateService.instant(Z.mW),s=`${o} (${n})`,l=`${o} (${i})`;if(this.ddsState?.bIsAutomatic)switch(this.ddsState?.MuxState){case $.iZ.State_DGPU:return s;case $.iZ.State_IGPU:return l}else switch(this.ddsState?.MuxState){case $.iZ.State_DGPU:return n;case $.iZ.State_IGPU:return e}}restoreGsync(n){this.keyboardMappingService.isMouseOrKeyboardSpaceOrEnterEvent(n)&&(n.stopImmediatePropagation(),n.preventDefault(),this.displaysService.restoreGlobalGsyncState(this.isGsyncAvailable,this.isSurroundAvailable&&!this.isQuadro),this.telemetryUtilsService.sendClickEvent(f.EB.RestoreGlobalDisplaySettings,`${f.d3.System_Displays}`,!0))}onManageDisplayModeInfoClicked(){const n=this.manageDisplayModeService.getIsAllDisabled(this.ddsState);this.isACPowerConnectedSub?.unsubscribe(),this.isACPowerConnectedSub=this.manageDisplayModeService.isACPowerConnected().subscribe(e=>{this.openManageDisplayModeInfoDialog(n||!e)},e=>{this.logger.info("Error occurred while checking AC power status",e),this.openManageDisplayModeInfoDialog(n)})}openManageDisplayModeInfoDialog(n){const e=[this.translateService.instant("system.display.advanceOptimus.displaySettingsNotAvailable")],i={title:this.translateService.instant(V.H.GlobalSettings.DisplayMode),description:this.translateService.instant("system.display.advanceOptimus.displayModeInfoDialogDescription"),errors:n?e:[]};this.matDialog.open(Ut.Z,{autoFocus:!1,hasBackdrop:!0,restoreFocus:!1,panelClass:["setting-info-modal","dialogPaddingRemove","common-dialog"],data:i})}openManageDisplayModeDialog(){this.matDialog.open(za,{panelClass:["graphics-setting-modal-container","common-dialog"],autoFocus:!1,hasBackdrop:!0,restoreFocus:!1,data:{ddsState:this.ddsState}}).afterClosed().pipe((0,m.s)(1),(0,h.pQ)(this.destroyRef),(0,M.M)(e=>{e&&(this.ddsState=e?.ddsState,this.updatePanelSummary(),this.displaysService.applyDdsState({bIsAutomatic:this.ddsState?.bIsAutomatic,MuxState:this.ddsState?.MuxState},this.refreshUIStateObs$()))})).subscribe(e=>{this.logger.info("Display Mode dialog closed, Selected display mode: ",e)},e=>{this.logger.error("Error occurred while open manage display mode dialog ",e)})}onClickSurroundInfoDialogButton(n){n?.stopPropagation(),n?.preventDefault();const e={title:this.translateService.instant(b.W3),description:this.translateService.instant(b.qb),typicalUsageScenarios:this.translateService.instant(b.RU)};this.matDialog.open(Ut.Z,{hasBackdrop:!0,panelClass:["setting-info-modal","dialogPaddingRemove","common-dialog"],data:e})}ngOnDestroy(){this.isACPowerConnectedSub?.unsubscribe(),this.surroundDisableStateListener?.unsubscribe()}refreshUIStateObs$(){return(0,D.of)(!0).pipe((0,m.s)(1),(0,h.pQ)(this.destroyRef),(0,I.n)(n=>this.manageDisplayModeService.refreshDdsState()),(0,ct.u)(!0),(0,M.M)(n=>{this.logger.info("updated dds state on revert")}))}gsyncDisplayDialogLinkClicked(){this.displaysService.gsyncLinkClicked()}onClickInfoDialogButton(){const n={title:this.translateService.instant(V.H.GlobalSettings.Gsync),description:this.translateService.instant("system.display.globalGsyncInfoDialogDescription"),typicalUsageScenarios:this.translateService.instant("system.display.globalGsyncInfoDialogTypicalUsage")};this.matDialog.open(Ut.Z,{autoFocus:!0,hasBackdrop:!0,panelClass:["setting-info-modal","dialogPaddingRemove","common-dialog"],data:n}),this.telemetryUtilsService.sendClickEvent(f.EB.GSyncSettingInfo,`${f.d3.System_Displays}`,!0)}static{this.\u0275fac=function(e){return new(e||a)(t.rXU(v.J6),t.rXU(O.bZ),t.rXU(x.c$),t.rXU(bt.P),t.rXU(f.AY),t.rXU(Q.R),t.rXU(q.b),t.rXU(Jt.S),t.rXU(_t.j),t.rXU(vt),t.rXU(v.SQ))}}static{this.\u0275cmp=t.VBU({type:a,selectors:[["nv-app-display-global-settings"]],inputs:{enableSurround:"enableSurround",showDisplayModeDropdown:"showDisplayModeDropdown",gsyncGlobalState:"gsyncGlobalState",ddsState:"ddsState"},decls:2,vars:2,consts:[["panelDescription",""],[4,"ngIf"],["displayMode","flat",4,"ngIf"],[1,"gap-8","gsync-not-available-container"],[1,"gsync-not-available-text-container"],[1,"font-sub1","font-color-primary"],[1,"gsync-global-settings","gap-16"],[1,"flex-row","gap-8","gsync-dropdown"],[1,"flex-row","gap-8","setting-info-icon-container"],[1,"font-body2","font-color-secondary"],[1,"link"],["tabindex","0","role","link","cdkMonitorElementFocus","",1,"font-body2-link",3,"click","keydown.enter"],["displayMode","flat"],[1,"ex-panel-margin"],["hideToggle","true",1,"displays-expansion-panel",3,"expandedChange","expanded","ngClass","disabled"],[3,"collapsedHeight","expandedHeight"],[1,"flex-row","accordion-header","hig-button-overlay","justify-content-space-between","align-items-center",3,"ngClass"],[1,"flex-col"],[1,"font-body2","font-color-secondary",3,"ngClass"],[4,"ngIf","ngIfElse"],[1,"flex-row","align-items-center"],["mat-button","","class","font-button2 restore-button",3,"ngClass","click","keydown",4,"ngIf"],["svgIcon","chevron_down",3,"ngClass",4,"ngIf"],["svgIcon","chevron_up",4,"ngIf"],[1,"expanded-global-panel-container"],[1,"panel-expanded-row"],[1,"expanded-cell"],["class","setting-info-icon-container",4,"ngIf"],["mat-button","",1,"font-body2","gsync-button",3,"click","disabled"],[1,"flex-row","justify-content-space-between","align-items-center"],["svgIcon","edit_settings",1,"material-icons"],["class","link expanded-link-align expanded-cell",4,"ngIf"],["class","expanded-cell",4,"ngIf"],[1,"font-sub1","font-color-primary",3,"ngClass"],["mat-button","",1,"font-button2","restore-button",3,"click","keydown","ngClass"],["svgIcon","chevron_down",3,"ngClass"],["svgIcon","chevron_up"],[1,"setting-info-icon-container"],[1,"font-body1","font-color-primary"],["svgIcon","info","tabindex","0","role","img",1,"info-icon","font-body2",3,"click","keydown.enter"],[1,"link","expanded-link-align","expanded-cell"]],template:function(e,i){1&e&&t.DNE(0,Qa,2,1,"ng-container",1)(1,ro,34,28,"mat-accordion",2),2&e&&(t.Y8G("ngIf",i.isQuadro),t.R7$(),t.Y8G("ngIf",i.isGsyncAvailable||i.isDdsSupported||!i.isQuadro))},dependencies:[u.YU,u.bT,J.tG,U.iV,F.An,X.q,H.BS,H.GK,H.Z2,qt.vR,N.PW,x.D9,u.Jj],styles:[".ex-panel-margin[_ngcontent-%COMP%]{margin:8px 0}.ex-panel-bg[_ngcontent-%COMP%]{background-color:var(--system-common-ex-panel-bg-color)}.dark-divider[_ngcontent-%COMP%]{border-top-color:var(--primary-900)}.bottom-divider[_ngcontent-%COMP%]{border-bottom:1px solid var(--primary-900)}.disable-mat-select-trigger[_ngcontent-%COMP%]{opacity:.38}","[_ngcontent-%COMP%]:root{--rwd-column-count: 4;--rwd-gutter-count: 3 ;--rwd-gutter-size: 8px;--rwd-container-side-spacing: 16px;--rwd-column-size: calc((var(--rwd-container-width) - var(--rwd-sidebar-width) - 2 * 16px - 8px * 3 ) / 4);--rwd-sidebar-width: 0px;--rwd-container-width: 100vw}@media screen and (min-width: 480px){[_ngcontent-%COMP%]:root{--rwd-column-count: 6;--rwd-gutter-count: 5 ;--rwd-column-size: calc((var(--rwd-container-width) - var(--rwd-sidebar-width) - 2 * 16px - 8px * 5 ) / 6)}}@media screen and (min-width: 720px){[_ngcontent-%COMP%]:root{--rwd-column-count: 8;--rwd-gutter-count: 7 ;--rwd-column-size: calc((var(--rwd-container-width) - var(--rwd-sidebar-width) - 2 * 16px - 8px * 7 ) / 8)}}@media screen and (min-width: 960px){[_ngcontent-%COMP%]:root{--rwd-column-count: 12;--rwd-gutter-count: 11 ;--rwd-container-side-spacing: 24px;--rwd-column-size: calc((var(--rwd-container-width) - var(--rwd-sidebar-width) - 2 * 24px - 8px * 11 ) / 12)}}@media screen and (min-width: 1440px){[_ngcontent-%COMP%]:root{--rwd-gutter-size: 16px;--rwd-column-size: calc((var(--rwd-container-width) - var(--rwd-sidebar-width) - 2 * 24px - 16px * 11 ) / 12)}}[_ngcontent-%COMP%]:root{--hig-marquee-ratio: .3229;--hig-marquee-parent-container-width: 100vw;--hig-marquee-container-height: calc(var(--hig-marquee-ratio) * 100vw);--hig-marquee-corner-column: 56px;--hig-marquee-text-column: 14vw;--hig-marquee-padded-image-first-row: calc(var(--hig-marquee-ratio) * (100vw - var(--hig-marquee-corner-column) - var(--hig-marquee-text-column)));--hig-marquee-padded-image-second-row: calc(var(--hig-marquee-container-height) - var(--hig-marquee-padded-image-first-row))}.ellipsified-text-with-tooltip[_ngcontent-%COMP%]{text-overflow:ellipsis;overflow:hidden}.ellipsified-text-with-tooltip.multi-line-ellipsis[_ngcontent-%COMP%]{display:-webkit-box;-webkit-box-orient:vertical;white-space:wrap}.ellipsified-text-with-tooltip.single-line-ellipsis[_ngcontent-%COMP%]{white-space:nowrap}.ellipsis[_ngcontent-%COMP%]{text-overflow:ellipsis;overflow:hidden}.system-display-box[_ngcontent-%COMP%]{box-sizing:border-box;border:1px solid var(--system-display-border-color);display:flex;width:26px;height:20px;flex-direction:row;align-self:center;justify-content:center;align-items:center}.system-display-box[_ngcontent-%COMP%] span[_ngcontent-%COMP%]{color:var(--system-display-span-color)}.displays-chip[_ngcontent-%COMP%]{height:32px}.accordion-padding[_ngcontent-%COMP%]{padding:14px 0}.accordion-header[_ngcontent-%COMP%]{padding:14px 16px;width:100%}.accordion-header[_ngcontent-%COMP%] mat-icon[_ngcontent-%COMP%]{color:var(--primary-contrast-900)}.info-icon[_ngcontent-%COMP%]{width:16px;height:16px;flex-shrink:0}.gsync-button[_ngcontent-%COMP%]{background-color:var(--editable-modal-button-bg-color);box-shadow:var(--editable-modal-button-box-shadow);padding:6px 16px;text-transform:none;width:100%}.info-icon[_ngcontent-%COMP%]{width:16px;height:16px;cursor:pointer}.expanded-global-panel-container[_ngcontent-%COMP%]{display:flex;flex-direction:column;gap:16px;margin-top:16px;margin-bottom:16px}.panel-expanded-row[_ngcontent-%COMP%]{display:grid;grid-template-columns:1fr 1fr;grid-template-rows:auto;gap:16px}.panel-expanded-row[_ngcontent-%COMP%] > .expanded-cell[_ngcontent-%COMP%]{display:flex;flex-direction:column;gap:8px;flex-grow:1;align-items:flex-start}.gsync-not-available-text-container[_ngcontent-%COMP%]{padding:14px 16px}.gsync-not-available-container[_ngcontent-%COMP%]{display:grid}.font-body2-link.cdk-keyboard-focused[_ngcontent-%COMP%]{outline:none}.expanded-link-align[_ngcontent-%COMP%]{align-self:center}",".margin-0[_ngcontent-%COMP%]{margin:0}.padding-0[_ngcontent-%COMP%]{padding:0}.gap-0[_ngcontent-%COMP%]{gap:0px}.margin-top-0[_ngcontent-%COMP%]{margin-top:0}.padding-top-0[_ngcontent-%COMP%]{padding-top:0}.margin-bottom-0[_ngcontent-%COMP%]{margin-bottom:0}.padding-bottom-0[_ngcontent-%COMP%]{padding-bottom:0}.margin-left-0[_ngcontent-%COMP%]{margin-left:0}.padding-left-0[_ngcontent-%COMP%]{padding-left:0}.margin-right-0[_ngcontent-%COMP%]{margin-right:0}.padding-right-0[_ngcontent-%COMP%]{padding-right:0}.margin-4[_ngcontent-%COMP%]{margin:4px}.padding-4[_ngcontent-%COMP%]{padding:4px}.gap-4[_ngcontent-%COMP%]{gap:4px}.margin-top-4[_ngcontent-%COMP%]{margin-top:4px}.padding-top-4[_ngcontent-%COMP%]{padding-top:4px}.margin-bottom-4[_ngcontent-%COMP%]{margin-bottom:4px}.padding-bottom-4[_ngcontent-%COMP%]{padding-bottom:4px}.margin-left-4[_ngcontent-%COMP%]{margin-left:4px}.padding-left-4[_ngcontent-%COMP%]{padding-left:4px}.margin-right-4[_ngcontent-%COMP%]{margin-right:4px}.padding-right-4[_ngcontent-%COMP%]{padding-right:4px}.margin-8[_ngcontent-%COMP%]{margin:8px}.padding-8[_ngcontent-%COMP%]{padding:8px}.gap-8[_ngcontent-%COMP%]{gap:8px}.margin-top-8[_ngcontent-%COMP%]{margin-top:8px}.padding-top-8[_ngcontent-%COMP%]{padding-top:8px}.margin-bottom-8[_ngcontent-%COMP%]{margin-bottom:8px}.padding-bottom-8[_ngcontent-%COMP%]{padding-bottom:8px}.margin-left-8[_ngcontent-%COMP%]{margin-left:8px}.padding-left-8[_ngcontent-%COMP%]{padding-left:8px}.margin-right-8[_ngcontent-%COMP%]{margin-right:8px}.padding-right-8[_ngcontent-%COMP%]{padding-right:8px}.margin-10[_ngcontent-%COMP%]{margin:10px}.padding-10[_ngcontent-%COMP%]{padding:10px}.gap-10[_ngcontent-%COMP%]{gap:10px}.margin-top-10[_ngcontent-%COMP%]{margin-top:10px}.padding-top-10[_ngcontent-%COMP%]{padding-top:10px}.margin-bottom-10[_ngcontent-%COMP%]{margin-bottom:10px}.padding-bottom-10[_ngcontent-%COMP%]{padding-bottom:10px}.margin-left-10[_ngcontent-%COMP%]{margin-left:10px}.padding-left-10[_ngcontent-%COMP%]{padding-left:10px}.margin-right-10[_ngcontent-%COMP%]{margin-right:10px}.padding-right-10[_ngcontent-%COMP%]{padding-right:10px}.margin-12[_ngcontent-%COMP%]{margin:12px}.padding-12[_ngcontent-%COMP%]{padding:12px}.gap-12[_ngcontent-%COMP%]{gap:12px}.margin-top-12[_ngcontent-%COMP%]{margin-top:12px}.padding-top-12[_ngcontent-%COMP%]{padding-top:12px}.margin-bottom-12[_ngcontent-%COMP%]{margin-bottom:12px}.padding-bottom-12[_ngcontent-%COMP%]{padding-bottom:12px}.margin-left-12[_ngcontent-%COMP%]{margin-left:12px}.padding-left-12[_ngcontent-%COMP%]{padding-left:12px}.margin-right-12[_ngcontent-%COMP%]{margin-right:12px}.padding-right-12[_ngcontent-%COMP%]{padding-right:12px}.margin-16[_ngcontent-%COMP%]{margin:16px}.padding-16[_ngcontent-%COMP%]{padding:16px}.gap-16[_ngcontent-%COMP%]{gap:16px}.margin-top-16[_ngcontent-%COMP%]{margin-top:16px}.padding-top-16[_ngcontent-%COMP%]{padding-top:16px}.margin-bottom-16[_ngcontent-%COMP%]{margin-bottom:16px}.padding-bottom-16[_ngcontent-%COMP%]{padding-bottom:16px}.margin-left-16[_ngcontent-%COMP%]{margin-left:16px}.padding-left-16[_ngcontent-%COMP%]{padding-left:16px}.margin-right-16[_ngcontent-%COMP%]{margin-right:16px}.padding-right-16[_ngcontent-%COMP%]{padding-right:16px}.margin-20[_ngcontent-%COMP%]{margin:20px}.padding-20[_ngcontent-%COMP%]{padding:20px}.gap-20[_ngcontent-%COMP%]{gap:20px}.margin-top-20[_ngcontent-%COMP%]{margin-top:20px}.padding-top-20[_ngcontent-%COMP%]{padding-top:20px}.margin-bottom-20[_ngcontent-%COMP%]{margin-bottom:20px}.padding-bottom-20[_ngcontent-%COMP%]{padding-bottom:20px}.margin-left-20[_ngcontent-%COMP%]{margin-left:20px}.padding-left-20[_ngcontent-%COMP%]{padding-left:20px}.margin-right-20[_ngcontent-%COMP%]{margin-right:20px}.padding-right-20[_ngcontent-%COMP%]{padding-right:20px}.margin-24[_ngcontent-%COMP%]{margin:24px}.padding-24[_ngcontent-%COMP%]{padding:24px}.gap-24[_ngcontent-%COMP%]{gap:24px}.margin-top-24[_ngcontent-%COMP%]{margin-top:24px}.padding-top-24[_ngcontent-%COMP%]{padding-top:24px}.margin-bottom-24[_ngcontent-%COMP%]{margin-bottom:24px}.padding-bottom-24[_ngcontent-%COMP%]{padding-bottom:24px}.margin-left-24[_ngcontent-%COMP%]{margin-left:24px}.padding-left-24[_ngcontent-%COMP%]{padding-left:24px}.margin-right-24[_ngcontent-%COMP%]{margin-right:24px}.padding-right-24[_ngcontent-%COMP%]{padding-right:24px}.margin-32[_ngcontent-%COMP%]{margin:32px}.padding-32[_ngcontent-%COMP%]{padding:32px}.gap-32[_ngcontent-%COMP%]{gap:32px}.margin-top-32[_ngcontent-%COMP%]{margin-top:32px}.padding-top-32[_ngcontent-%COMP%]{padding-top:32px}.margin-bottom-32[_ngcontent-%COMP%]{margin-bottom:32px}.padding-bottom-32[_ngcontent-%COMP%]{padding-bottom:32px}.margin-left-32[_ngcontent-%COMP%]{margin-left:32px}.padding-left-32[_ngcontent-%COMP%]{padding-left:32px}.margin-right-32[_ngcontent-%COMP%]{margin-right:32px}.padding-right-32[_ngcontent-%COMP%]{padding-right:32px}.margin-36[_ngcontent-%COMP%]{margin:36px}.padding-36[_ngcontent-%COMP%]{padding:36px}.gap-36[_ngcontent-%COMP%]{gap:36px}.margin-top-36[_ngcontent-%COMP%]{margin-top:36px}.padding-top-36[_ngcontent-%COMP%]{padding-top:36px}.margin-bottom-36[_ngcontent-%COMP%]{margin-bottom:36px}.padding-bottom-36[_ngcontent-%COMP%]{padding-bottom:36px}.margin-left-36[_ngcontent-%COMP%]{margin-left:36px}.padding-left-36[_ngcontent-%COMP%]{padding-left:36px}.margin-right-36[_ngcontent-%COMP%]{margin-right:36px}.padding-right-36[_ngcontent-%COMP%]{padding-right:36px}.flex-row[_ngcontent-%COMP%]{display:flex}.flex-col[_ngcontent-%COMP%]{display:flex;flex-direction:column}.justify-content-space-between[_ngcontent-%COMP%]{justify-content:space-between}.justify-content-center[_ngcontent-%COMP%]{justify-content:center}.align-items-center[_ngcontent-%COMP%]{align-items:center}.flex-none[_ngcontent-%COMP%]{flex:none}"]})}}return a})();const po=(a,r)=>({enabled:a,section:r,expandAccordion:!0});function co(a,r){1&a&&t.nrm(0,"nv-app-page-load-spinner")}function go(a,r){1&a&&(t.j41(0,"div",15),t.nrm(1,"nv-app-sumd-container"),t.k0s())}function uo(a,r){if(1&a&&(t.j41(0,"mat-accordion",16),t.nrm(1,"mat-divider"),t.j41(2,"div",17),t.nrm(3,"nv-app-display-properties-panel",18),t.k0s(),t.nrm(4,"mat-divider"),t.j41(5,"div",17),t.nrm(6,"nv-app-display-scaling-panel",19),t.k0s(),t.nrm(7,"mat-divider"),t.j41(8,"div",17),t.nrm(9,"nv-app-display-color-panel",19),t.k0s(),t.nrm(10,"mat-divider"),t.k0s()),2&a){const n=t.XpG(3);t.R7$(3),t.Y8G("isExpanded",n.propertiesPanelExpanded)("displayData",null==n.selectedDisplay?null:n.selectedDisplay.type)("gsyncGlobalState",n.gsyncGlobalState),t.R7$(3),t.Y8G("isExpanded",n.scalingPanelExpanded)("displayData",null==n.selectedDisplay?null:n.selectedDisplay.type),t.R7$(3),t.Y8G("isExpanded",n.colorsPanelExpanded)("displayData",null==n.selectedDisplay?null:n.selectedDisplay.type)}}function ho(a,r){if(1&a&&(t.qex(0),t.j41(1,"div",12)(2,"span",5),t.EFF(3),t.nI1(4,"translate"),t.k0s()(),t.DNE(5,go,2,0,"div",13)(6,uo,11,7,"mat-accordion",14),t.bVm()),2&a){const n=t.XpG(2);t.R7$(3),t.SpI(" ",t.bMT(4,3,n.displayHeaders.DisplaySettings)," "),t.R7$(2),t.Y8G("ngIf",n.displays.length),t.R7$(),t.Y8G("ngIf",n.displays)}}function mo(a,r){if(1&a){const n=t.RV6();t.j41(0,"div",3)(1,"div",4)(2,"span",5),t.EFF(3),t.nI1(4,"translate"),t.k0s(),t.j41(5,"button",6),t.nI1(6,"async"),t.nI1(7,"translate"),t.nrm(8,"mat-icon",7),t.k0s(),t.j41(9,"mat-menu",8,1)(11,"button",9),t.bIt("click",function(){t.eBV(n);const i=t.XpG();return t.Njj(i.identifyAllDisplayClicked())}),t.EFF(12),t.nI1(13,"translate"),t.k0s()()(),t.nrm(14,"nv-app-display-global-settings",10),t.DNE(15,ho,7,5,"ng-container",11),t.k0s()}if(2&a){const n=t.sdS(10),e=t.XpG();t.Y8G("nvappScrollHighlight",t.l_i(19,po,!e.isLoading,e.pageHighlightSection)),t.R7$(3),t.SpI(" ",t.bMT(4,11,"manage3dSettings.globalSettings"),""),t.R7$(2),t.Y8G("matMenuTriggerFor",n)("disabled",t.bMT(6,13,e.isSumdDirty$)),t.BMQ("aria-label",t.bMT(7,15,"manage3dSettings.globalSettings")),t.R7$(7),t.SpI(" ",t.bMT(13,17,"system.display.identifyall")," "),t.R7$(2),t.Y8G("gsyncGlobalState",e.gsyncGlobalState)("enableSurround",e.enableSurround)("ddsState",e.ddsState)("showDisplayModeDropdown",!0),t.R7$(),t.Y8G("ngIf",e.isActiveDisplayConnected)}}let fo=(()=>{class a{constructor(n,e,i,o,s){this.displaysService=e,this.performanceMeasureService=i,this.multiDisplaysSupportService=o,this.manageDisplayModeService=s,this.gsyncGlobalState=c.nX.NotAvailable,this.isLoading=!0,this.displays=[],this.propertiesPanelExpanded=!1,this.scalingPanelExpanded=!1,this.colorsPanelExpanded=!1,this.destroyRef=(0,t.WQX)(t.abz),this.enableSurround=!0,this.isSumdDirty$=new lt.c,this.displayHeaders=V.H,this.pageHighlightSection=Et.kA.Display,this.initEnableSurround(),this.logger=n.getLogger("nvapp/DisplaysPageComponent")}ngOnInit(){this.performanceMeasureService.markNvAppPerformanceMarkers([S.mM.NvAppDisplaysRouteNavigationEnd,S.mM.NvAppDisplaysDataFetchStart],S.fR.SystemDisplays),this.listenToGlobalGsyncStateUpdate(),this.listenToDdsStateUpdate(),this.listenToDisplaysUpdate(),this.listenToSelectedDisplayUpdate(),this.listenForSumdDirtyState()}listenToGlobalGsyncStateUpdate(){this.displaysService.globalGsyncInfo.pipe((0,h.pQ)(this.destroyRef)).subscribe(n=>{this.gsyncGlobalState=n.globalGsyncState},n=>{this.logger.error("Failed to get global gsync info",n)})}listenToDdsStateUpdate(){this.manageDisplayModeService.ddsState$.pipe((0,h.pQ)(this.destroyRef)).subscribe(n=>{this.ddsState=n},n=>{this.logger.error("Failed to get ddsState info ",n)})}listenToDisplaysUpdate(){this.displaysService.displays$.pipe((0,h.pQ)(this.destroyRef)).subscribe(n=>{this.performanceMeasureService.markNvAppPerformanceMarkers([S.mM.NvAppDisplaysDataFetchEnd,S.mM.NvAppDisplaysViewRenderStart],S.fR.SystemDisplays),this.displays=n,this.isLoading=!1,this.performanceMeasureService.markNvAppPerformanceMarkers([S.mM.NvAppDisplaysViewRenderEnd],S.fR.SystemDisplays)},n=>{this.logger.error("Failed to get displays info",n),this.performanceMeasureService.markNvAppPerformanceMarkers([S.mM.NvAppDisplaysDataFetchEnd,S.mM.NvAppDisplaysViewRenderStart,S.mM.NvAppDisplaysViewRenderEnd],S.fR.SystemDisplays)})}listenToSelectedDisplayUpdate(){this.displaysService.selectedDisplay$.pipe((0,M.M)(n=>{this.selectedDisplay=n}),(0,h.pQ)(this.destroyRef)).subscribe(g.l,n=>{this.logger.error("failed to get selected display",n)})}listenForSumdDirtyState(){this.isSumdDirty$=this.multiDisplaysSupportService.isSumdDirty$}initEnableSurround(){this.displaysService.enableSurround$.pipe((0,h.pQ)(this.destroyRef)).subscribe(n=>{this.enableSurround=n})}identifyAllDisplayClicked(){this.displaysService.identifyDisplays(!0,[])}restoreDefaultClicked(n){this.displaysService.restoreDisplayDefaults(n)}static{this.\u0275fac=function(e){return new(e||a)(t.rXU(v.J6),t.rXU(Q.R),t.rXU(Qt.M),t.rXU(q.b),t.rXU(Jt.S))}}static{this.\u0275cmp=t.VBU({type:a,selectors:[["nv-app-displays-page"]],inputs:{isActiveDisplayConnected:"isActiveDisplayConnected"},decls:3,vars:2,consts:[["displaysData",""],["displayPageMenu","matMenu"],[4,"ngIf","ngIfElse"],[1,"flex-col","gap-16","margin-top-16","margin-bottom-16",3,"nvappScrollHighlight"],[1,"flex-row","justify-content-space-between"],[1,"font-sub1","font-color-primary"],["mat-button","",1,"more-icon-button","margin-right-16",3,"matMenuTriggerFor","disabled"],["svgIcon","more_vert",1,"material-icons"],["xPosition","before"],["mat-menu-item","",3,"click"],[3,"gsyncGlobalState","enableSurround","ddsState","showDisplayModeDropdown"],[4,"ngIf"],[1,"displays-title-container"],["class","flex-col gap-8",4,"ngIf"],["multi","","displayMode","flat","id","displays-page-accordion","class","",4,"ngIf"],[1,"flex-col","gap-8"],["multi","","displayMode","flat","id","displays-page-accordion",1,""],[1,"ex-panel-margin"],[3,"isExpanded","displayData","gsyncGlobalState"],[3,"isExpanded","displayData"]],template:function(e,i){if(1&e&&t.DNE(0,co,1,0,"nv-app-page-load-spinner",2)(1,mo,16,22,"ng-template",null,0,t.C5r),2&e){const o=t.sdS(2);t.Y8G("ngIf",i.isLoading)("ngIfElse",o)}},dependencies:[u.bT,et.tH,U.iV,F.An,pt.pI,pt.gy,pt.fS,X.q,H.BS,jt.p,zt.Q,ri,wi,ta,ba,lo,x.D9,u.Jj],styles:[".ex-panel-margin[_ngcontent-%COMP%]{margin:8px 0}.ex-panel-bg[_ngcontent-%COMP%]{background-color:var(--system-common-ex-panel-bg-color)}.dark-divider[_ngcontent-%COMP%]{border-top-color:var(--primary-900)}.bottom-divider[_ngcontent-%COMP%]{border-bottom:1px solid var(--primary-900)}.disable-mat-select-trigger[_ngcontent-%COMP%]{opacity:.38}","[_ngcontent-%COMP%]:root{--rwd-column-count: 4;--rwd-gutter-count: 3 ;--rwd-gutter-size: 8px;--rwd-container-side-spacing: 16px;--rwd-column-size: calc((var(--rwd-container-width) - var(--rwd-sidebar-width) - 2 * 16px - 8px * 3 ) / 4);--rwd-sidebar-width: 0px;--rwd-container-width: 100vw}@media screen and (min-width: 480px){[_ngcontent-%COMP%]:root{--rwd-column-count: 6;--rwd-gutter-count: 5 ;--rwd-column-size: calc((var(--rwd-container-width) - var(--rwd-sidebar-width) - 2 * 16px - 8px * 5 ) / 6)}}@media screen and (min-width: 720px){[_ngcontent-%COMP%]:root{--rwd-column-count: 8;--rwd-gutter-count: 7 ;--rwd-column-size: calc((var(--rwd-container-width) - var(--rwd-sidebar-width) - 2 * 16px - 8px * 7 ) / 8)}}@media screen and (min-width: 960px){[_ngcontent-%COMP%]:root{--rwd-column-count: 12;--rwd-gutter-count: 11 ;--rwd-container-side-spacing: 24px;--rwd-column-size: calc((var(--rwd-container-width) - var(--rwd-sidebar-width) - 2 * 24px - 8px * 11 ) / 12)}}@media screen and (min-width: 1440px){[_ngcontent-%COMP%]:root{--rwd-gutter-size: 16px;--rwd-column-size: calc((var(--rwd-container-width) - var(--rwd-sidebar-width) - 2 * 24px - 16px * 11 ) / 12)}}[_ngcontent-%COMP%]:root{--hig-marquee-ratio: .3229;--hig-marquee-parent-container-width: 100vw;--hig-marquee-container-height: calc(var(--hig-marquee-ratio) * 100vw);--hig-marquee-corner-column: 56px;--hig-marquee-text-column: 14vw;--hig-marquee-padded-image-first-row: calc(var(--hig-marquee-ratio) * (100vw - var(--hig-marquee-corner-column) - var(--hig-marquee-text-column)));--hig-marquee-padded-image-second-row: calc(var(--hig-marquee-container-height) - var(--hig-marquee-padded-image-first-row))}.ellipsified-text-with-tooltip[_ngcontent-%COMP%]{text-overflow:ellipsis;overflow:hidden}.ellipsified-text-with-tooltip.multi-line-ellipsis[_ngcontent-%COMP%]{display:-webkit-box;-webkit-box-orient:vertical;white-space:wrap}.ellipsified-text-with-tooltip.single-line-ellipsis[_ngcontent-%COMP%]{white-space:nowrap}.ellipsis[_ngcontent-%COMP%]{text-overflow:ellipsis;overflow:hidden}.system-display-box[_ngcontent-%COMP%]{box-sizing:border-box;border:1px solid var(--system-display-border-color);display:flex;width:26px;height:20px;flex-direction:row;align-self:center;justify-content:center;align-items:center}.system-display-box[_ngcontent-%COMP%] span[_ngcontent-%COMP%]{color:var(--system-display-span-color)}.displays-chip[_ngcontent-%COMP%]{height:32px}.accordion-padding[_ngcontent-%COMP%]{padding:14px 0}.accordion-header[_ngcontent-%COMP%]{padding:14px 16px;width:100%}.accordion-header[_ngcontent-%COMP%] mat-icon[_ngcontent-%COMP%]{color:var(--primary-contrast-900)}.info-icon[_ngcontent-%COMP%]{width:16px;height:16px;flex-shrink:0}.global-dropdown-width[_ngcontent-%COMP%]{width:385px}.info-icon[_ngcontent-%COMP%]{width:16px;height:16px}.ex-panel-margin[_ngcontent-%COMP%]{margin:8px 0}.more-icon-button[_ngcontent-%COMP%]{padding:0;min-width:24px;height:24px}#displays-page-accordion[_ngcontent-%COMP%] .mat-expansion-panel[_ngcontent-%COMP%] .mat-expansion-panel-header[_ngcontent-%COMP%]{padding:0!important}.display-carousel[_ngcontent-%COMP%]{--container-left-margin: 0px}.restore-button[_ngcontent-%COMP%]{margin-right:8px}.displays-title-container[_ngcontent-%COMP%]{display:flex;justify-content:space-between;align-items:center}",".margin-0[_ngcontent-%COMP%]{margin:0}.padding-0[_ngcontent-%COMP%]{padding:0}.gap-0[_ngcontent-%COMP%]{gap:0px}.margin-top-0[_ngcontent-%COMP%]{margin-top:0}.padding-top-0[_ngcontent-%COMP%]{padding-top:0}.margin-bottom-0[_ngcontent-%COMP%]{margin-bottom:0}.padding-bottom-0[_ngcontent-%COMP%]{padding-bottom:0}.margin-left-0[_ngcontent-%COMP%]{margin-left:0}.padding-left-0[_ngcontent-%COMP%]{padding-left:0}.margin-right-0[_ngcontent-%COMP%]{margin-right:0}.padding-right-0[_ngcontent-%COMP%]{padding-right:0}.margin-4[_ngcontent-%COMP%]{margin:4px}.padding-4[_ngcontent-%COMP%]{padding:4px}.gap-4[_ngcontent-%COMP%]{gap:4px}.margin-top-4[_ngcontent-%COMP%]{margin-top:4px}.padding-top-4[_ngcontent-%COMP%]{padding-top:4px}.margin-bottom-4[_ngcontent-%COMP%]{margin-bottom:4px}.padding-bottom-4[_ngcontent-%COMP%]{padding-bottom:4px}.margin-left-4[_ngcontent-%COMP%]{margin-left:4px}.padding-left-4[_ngcontent-%COMP%]{padding-left:4px}.margin-right-4[_ngcontent-%COMP%]{margin-right:4px}.padding-right-4[_ngcontent-%COMP%]{padding-right:4px}.margin-8[_ngcontent-%COMP%]{margin:8px}.padding-8[_ngcontent-%COMP%]{padding:8px}.gap-8[_ngcontent-%COMP%]{gap:8px}.margin-top-8[_ngcontent-%COMP%]{margin-top:8px}.padding-top-8[_ngcontent-%COMP%]{padding-top:8px}.margin-bottom-8[_ngcontent-%COMP%]{margin-bottom:8px}.padding-bottom-8[_ngcontent-%COMP%]{padding-bottom:8px}.margin-left-8[_ngcontent-%COMP%]{margin-left:8px}.padding-left-8[_ngcontent-%COMP%]{padding-left:8px}.margin-right-8[_ngcontent-%COMP%]{margin-right:8px}.padding-right-8[_ngcontent-%COMP%]{padding-right:8px}.margin-10[_ngcontent-%COMP%]{margin:10px}.padding-10[_ngcontent-%COMP%]{padding:10px}.gap-10[_ngcontent-%COMP%]{gap:10px}.margin-top-10[_ngcontent-%COMP%]{margin-top:10px}.padding-top-10[_ngcontent-%COMP%]{padding-top:10px}.margin-bottom-10[_ngcontent-%COMP%]{margin-bottom:10px}.padding-bottom-10[_ngcontent-%COMP%]{padding-bottom:10px}.margin-left-10[_ngcontent-%COMP%]{margin-left:10px}.padding-left-10[_ngcontent-%COMP%]{padding-left:10px}.margin-right-10[_ngcontent-%COMP%]{margin-right:10px}.padding-right-10[_ngcontent-%COMP%]{padding-right:10px}.margin-12[_ngcontent-%COMP%]{margin:12px}.padding-12[_ngcontent-%COMP%]{padding:12px}.gap-12[_ngcontent-%COMP%]{gap:12px}.margin-top-12[_ngcontent-%COMP%]{margin-top:12px}.padding-top-12[_ngcontent-%COMP%]{padding-top:12px}.margin-bottom-12[_ngcontent-%COMP%]{margin-bottom:12px}.padding-bottom-12[_ngcontent-%COMP%]{padding-bottom:12px}.margin-left-12[_ngcontent-%COMP%]{margin-left:12px}.padding-left-12[_ngcontent-%COMP%]{padding-left:12px}.margin-right-12[_ngcontent-%COMP%]{margin-right:12px}.padding-right-12[_ngcontent-%COMP%]{padding-right:12px}.margin-16[_ngcontent-%COMP%]{margin:16px}.padding-16[_ngcontent-%COMP%]{padding:16px}.gap-16[_ngcontent-%COMP%]{gap:16px}.margin-top-16[_ngcontent-%COMP%]{margin-top:16px}.padding-top-16[_ngcontent-%COMP%]{padding-top:16px}.margin-bottom-16[_ngcontent-%COMP%]{margin-bottom:16px}.padding-bottom-16[_ngcontent-%COMP%]{padding-bottom:16px}.margin-left-16[_ngcontent-%COMP%]{margin-left:16px}.padding-left-16[_ngcontent-%COMP%]{padding-left:16px}.margin-right-16[_ngcontent-%COMP%]{margin-right:16px}.padding-right-16[_ngcontent-%COMP%]{padding-right:16px}.margin-20[_ngcontent-%COMP%]{margin:20px}.padding-20[_ngcontent-%COMP%]{padding:20px}.gap-20[_ngcontent-%COMP%]{gap:20px}.margin-top-20[_ngcontent-%COMP%]{margin-top:20px}.padding-top-20[_ngcontent-%COMP%]{padding-top:20px}.margin-bottom-20[_ngcontent-%COMP%]{margin-bottom:20px}.padding-bottom-20[_ngcontent-%COMP%]{padding-bottom:20px}.margin-left-20[_ngcontent-%COMP%]{margin-left:20px}.padding-left-20[_ngcontent-%COMP%]{padding-left:20px}.margin-right-20[_ngcontent-%COMP%]{margin-right:20px}.padding-right-20[_ngcontent-%COMP%]{padding-right:20px}.margin-24[_ngcontent-%COMP%]{margin:24px}.padding-24[_ngcontent-%COMP%]{padding:24px}.gap-24[_ngcontent-%COMP%]{gap:24px}.margin-top-24[_ngcontent-%COMP%]{margin-top:24px}.padding-top-24[_ngcontent-%COMP%]{padding-top:24px}.margin-bottom-24[_ngcontent-%COMP%]{margin-bottom:24px}.padding-bottom-24[_ngcontent-%COMP%]{padding-bottom:24px}.margin-left-24[_ngcontent-%COMP%]{margin-left:24px}.padding-left-24[_ngcontent-%COMP%]{padding-left:24px}.margin-right-24[_ngcontent-%COMP%]{margin-right:24px}.padding-right-24[_ngcontent-%COMP%]{padding-right:24px}.margin-32[_ngcontent-%COMP%]{margin:32px}.padding-32[_ngcontent-%COMP%]{padding:32px}.gap-32[_ngcontent-%COMP%]{gap:32px}.margin-top-32[_ngcontent-%COMP%]{margin-top:32px}.padding-top-32[_ngcontent-%COMP%]{padding-top:32px}.margin-bottom-32[_ngcontent-%COMP%]{margin-bottom:32px}.padding-bottom-32[_ngcontent-%COMP%]{padding-bottom:32px}.margin-left-32[_ngcontent-%COMP%]{margin-left:32px}.padding-left-32[_ngcontent-%COMP%]{padding-left:32px}.margin-right-32[_ngcontent-%COMP%]{margin-right:32px}.padding-right-32[_ngcontent-%COMP%]{padding-right:32px}.margin-36[_ngcontent-%COMP%]{margin:36px}.padding-36[_ngcontent-%COMP%]{padding:36px}.gap-36[_ngcontent-%COMP%]{gap:36px}.margin-top-36[_ngcontent-%COMP%]{margin-top:36px}.padding-top-36[_ngcontent-%COMP%]{padding-top:36px}.margin-bottom-36[_ngcontent-%COMP%]{margin-bottom:36px}.padding-bottom-36[_ngcontent-%COMP%]{padding-bottom:36px}.margin-left-36[_ngcontent-%COMP%]{margin-left:36px}.padding-left-36[_ngcontent-%COMP%]{padding-left:36px}.margin-right-36[_ngcontent-%COMP%]{margin-right:36px}.padding-right-36[_ngcontent-%COMP%]{padding-right:36px}.flex-row[_ngcontent-%COMP%]{display:flex}.flex-col[_ngcontent-%COMP%]{display:flex;flex-direction:column}.justify-content-space-between[_ngcontent-%COMP%]{justify-content:space-between}.justify-content-center[_ngcontent-%COMP%]{justify-content:center}.align-items-center[_ngcontent-%COMP%]{align-items:center}.flex-none[_ngcontent-%COMP%]{flex:none}"]})}}return a})();var _o=p(4208),E=p(75831),k=p(19559),ht=p(76907),yo=p(20924),Bt=p(148),Co=p(62668),bo=p(59085),Nt=p(78812);const vo=a=>({disabled:a});function So(a,r){if(1&a){const n=t.RV6();t.j41(0,"a",20),t.bIt("click",function(){t.eBV(n);const i=t.XpG(2);return t.Njj(i.openWindowsSettings())}),t.EFF(1),t.nI1(2,"translate"),t.k0s()}2&a&&(t.R7$(),t.JRh(t.bMT(2,1,"common.change")))}function xo(a,r){if(1&a&&(t.j41(0,"div",17),t.nrm(1,"mat-icon",18),t.j41(2,"span",10),t.EFF(3),t.DNE(4,So,3,3,"a",19),t.k0s()()),2&a){const n=t.XpG();t.R7$(3),t.SpI("",n.errorString," "),t.R7$(),t.Y8G("ngIf",n.oldState.errorCode===n.hdrErrors.ENABLE_HDR_FROM_WINDOWS)}}function Mo(a,r){if(1&a){const n=t.RV6();t.j41(0,"div",9)(1,"span",10),t.EFF(2),t.nI1(3,"translate"),t.k0s(),t.j41(4,"nv-hig-slider",11),t.nI1(5,"translate"),t.mxI("valueChange",function(i){t.eBV(n);const o=t.XpG();return t.DH7(o.newState.peakBrightness,i)||(o.newState.peakBrightness=i),t.Njj(i)}),t.bIt("input",function(i){t.eBV(n);const o=t.XpG();return t.Njj(o.onPeakBrightnessChange(i))}),t.k0s()()}if(2&a){const n=t.XpG();t.R7$(2),t.JRh(t.bMT(3,9,"manage3dSettings.AIHDR.peakBrightness")),t.R7$(2),t.R50("value",n.newState.peakBrightness),t.Y8G("min",n.oldState.minPeakBrightness)("max",n.oldState.maxPeakBrightness)("step",n.sliderStepSize)("disabled",n.isControlDisabled)("nvAppAnnouncer",n.newState.peakBrightness)("associatedMessage","manage3dSettings.AIHDR.peakBrightness"),t.BMQ("aria-label",t.bMT(5,11,"manage3dSettings.AIHDR.peakBrightness"))}}function Po(a,r){if(1&a&&(t.qex(0),t.nrm(1,"mat-divider",12),t.j41(2,"div",21),t.nrm(3,"mat-icon",22),t.nI1(4,"translate"),t.j41(5,"span",10),t.EFF(6),t.k0s()(),t.bVm()),2&a){const n=t.XpG();t.R7$(3),t.qtP("aria-label","",n.statusString," ",t.bMT(4,4,"common.info"),""),t.R7$(3),t.JRh(n.statusString)}}function Oo(a,r){if(1&a){const n=t.RV6();t.j41(0,"div")(1,"button",23),t.bIt("click",function(){t.eBV(n);const i=t.XpG();return t.Njj(i.onCancelClick())}),t.EFF(2),t.nI1(3,"translate"),t.k0s(),t.j41(4,"button",24),t.bIt("click",function(){t.eBV(n);const i=t.XpG();return t.Njj(i.onOkClick())}),t.EFF(5),t.nI1(6,"translate"),t.k0s()()}2&a&&(t.R7$(2),t.SpI(" ",t.bMT(3,2,"save.cancel")," "),t.R7$(3),t.SpI(" ",t.bMT(6,4,"common.ok")," "))}function Do(a,r){if(1&a){const n=t.RV6();t.j41(0,"div")(1,"button",23),t.bIt("click",function(){t.eBV(n);const i=t.XpG();return t.Njj(i.onCancelClick())}),t.EFF(2),t.nI1(3,"translate"),t.k0s()()}2&a&&(t.R7$(2),t.SpI(" ",t.bMT(3,1,"common.close")," "))}let wo=(()=>{class a{constructor(n,e,i,o,s,l,d,_){this.dialogRef=e,this.preferencesService=i,this.videoService=s,this.translate=l,this.errorHandlerService=d,this.telemetryService=_,this.statusString="",this.errorString="",this.hdrErrors=k.FO,this.destroyRef=(0,t.WQX)(t.abz),this.throttle$=new tt.B7,this.isDirty=!1,this.setSettingInProcess=!1,this.peakBrightnessMaxRenderThreshold=E.IR,this.middleGraySliderMin=E.oE,this.middleGraySliderMax=E.Yx,this.saturationContrastMin=E.Zo,this.saturationContrastMax=E.D6,this.sliderStepSize=E.lz,this.logger=n.getLogger("nvapp/HdrDialogComponent"),this.oldState={...o},this.newState={...o},this.logger.info("Initialized with:",o)}ngOnInit(){this.isControlDisabled=this.oldState.errorCode!==this.hdrErrors.SUCCESS||!this.newState.isEnabled,this.isHdrIndicatorToBeShown=this.newState?.hdrStatusIndicator===k.el.HDRIndicator_On,this.isHdrToBeDisabled=this.newState?.disableHdrOnGameLaunch===k.V3.DisableHDROnGameLaunch_On,this.checkForGpuUtilizationSupport(),this.defaultValueString=(0,ht.xM)(this.translate),this.videoService.hdrStatus$.pipe((0,h.pQ)(this.destroyRef),(0,M.M)(n=>{this.statusString=this.translate.instant(E.yY,{status:this.translate.instant(n?E.iH:E.Xl)})})).subscribe(g.l,g.l),this.videoService.hdrInfo$.pipe((0,M.M)(n=>{this.oldState.errorCode=n.errorCode,this.errorString=this.translate.instant(E.aP.get(this.oldState.errorCode))}),(0,h.pQ)(this.destroyRef)).subscribe(g.l,g.l),this.throttle$.asObservable().pipe((0,It.c)(E.mi,wt.E,{leading:!1,trailing:!0}),(0,M.M)(n=>{this.logger.info("set the HDR setting in backend ",this.newState),this.videoService.setHdrState(this.newState),this.setSettingInProcess=!1}),(0,h.pQ)(this.destroyRef)).subscribe(g.l,g.l)}onDisableHdrChange(){this.newState.disableHdrOnGameLaunch=this.isHdrToBeDisabled?k.V3.DisableHDROnGameLaunch_On:k.V3.DisableHDROnGameLaunch_Off,this.settingChanged()}onHdrIndicatorChange(){this.newState.hdrStatusIndicator=this.isHdrIndicatorToBeShown?k.el.HDRIndicator_On:k.el.HDRIndicator_Off,this.settingChanged()}onRadioSelectionChange(n){this.newState.isEnabled=n.value,(this.newState.isEnabled!==this.oldState.isEnabled||this.isDirty)&&(this.isControlDisabled=this.oldState.errorCode!==this.hdrErrors.SUCCESS||!this.newState.isEnabled,this.settingChanged())}onPeakBrightnessChange(n){this.newState.peakBrightness=n.value,(this.newState.peakBrightness!==this.oldState.peakBrightness||this.isDirty)&&this.settingChanged()}onMiddleGrayChange(n){this.newState.middleGray=n.value,(this.newState.middleGray!==this.oldState.middleGray||this.isDirty)&&this.settingChanged()}onContrastChange(n){this.newState.contrast=n.value,(this.newState.contrast!==this.oldState.contrast||this.isDirty)&&this.settingChanged()}onSaturationChange(n){this.newState.saturation=n.value,(this.newState.saturation!==this.oldState.saturation||this.isDirty)&&this.settingChanged()}openWindowsSettings(){this.logger.info("Windows settings link clicked"),this.preferencesService.openWindowsNotifications(yo.Or.Nvapp.Localgames.PageId.Display).pipe((0,h.pQ)(this.destroyRef)).subscribe(g.l,n=>{this.logger.error("Error opening Windows Display Settings",n),(n?.code===Bt.Qq||n instanceof Co.n)&&this.errorHandlerService.showOptionalPluginFailErrorToast()})}onOkClick(){this.logger.info("Apply button clicked"),this.isDirty&&!this.setSettingInProcess?this.commitSetting():JSON.stringify(this.newState)!==JSON.stringify(this.oldState)&&(this.logger.info("set the settings and then commit"),this.videoService.setHdrState(this.newState),this.commitSetting()),this.dialogRef.close()}onCancelClick(){this.logger.info("Cancel button clicked"),this.videoService.cancelStateChange(this.videoService.getHdrState()),this.dialogRef.close()}checkForGpuUtilizationSupport(){this.videoService.isGPUUtilizationSupported().pipe((0,M.M)(n=>{this.isGpuUtilizationSupported=n}),(0,h.pQ)(this.destroyRef)).subscribe(g.l,n=>{this.logger.error("Some error occurred while getting isGPUUtilization support info ",n)})}sendTelemetry(){const n={hierarchy:this.videoService.getHierarchy(),isEnabled:this.newState.isEnabled?f.T8.TRUE:f.T8.FALSE,peakBrightness:this.newState.peakBrightness,minPeakBrightness:this.newState.maxPeakBrightness,maxPeakBrightness:this.newState.minPeakBrightness,middleGray:this.newState.middleGray,saturation:this.newState.saturation,contrast:this.newState.contrast,hdrStatusIndicator:this.isHdrIndicatorToBeShown?f.T8.TRUE:f.T8.FALSE};this.telemetryService.push(new f.IU(n))}settingChanged(){this.isDirty=!0,this.setSettingInProcess=!0,this.logger.info("setting change in progress"),this.throttle$.next()}commitSetting(){this.logger.info("Settings changed, applying new settings:",this.newState),this.videoService.applyStateChange(this.videoService.getHdrState()),this.sendTelemetry()}static{this.\u0275fac=function(e){return new(e||a)(t.rXU(v.J6),t.rXU(O.CP),t.rXU(bo.N),t.rXU(O.Vh),t.rXU(Gt.r),t.rXU(x.c$),t.rXU(gn.c),t.rXU(Nt.H0))}}static{this.\u0275cmp=t.VBU({type:a,selectors:[["nv-app-hdr-dialog"]],decls:44,vars:66,consts:[[1,"common-modal"],["mat-dialog-title","",1,"font-header6","title"],[1,"content","margin-top-4"],["class","flex-row gap-8 align-items-center padding-left-16 padding-right-16 margin-bottom-16 margin-left-4",4,"ngIf"],[1,"flex-col","padding-left-8","padding-right-16",3,"change","disabled"],[3,"checked","value"],[1,"font-body1"],[1,"flex-col","gap-16","padding-right-24","hdr-sliders"],["class","flex-col gap-10",4,"ngIf"],[1,"flex-col","gap-10"],[1,"font-body2"],["formatTextAs","integer","valueEntry","true",3,"valueChange","input","value","min","max","step","disabled","nvAppAnnouncer","associatedMessage"],[1,"divider"],[1,"flex-row","align-items-center","hdr-checkbox",3,"ngClass"],[3,"ngModelChange","change","ngModel","disabled","nvAppAnnouncer","associatedMessage"],[4,"ngIf"],["align","end",1,"actions"],[1,"flex-row","gap-8","align-items-center","padding-left-16","padding-right-16","margin-bottom-16","margin-left-4"],["svgIcon","info",1,"font-body2","info-icon"],["class","font-body2-link",3,"click",4,"ngIf"],[1,"font-body2-link",3,"click"],[1,"flex-row","gap-10","align-items-center","hdr-status"],["svgIcon","info","tabindex","0","role","img",1,"font-body2","info-icon"],["mat-button","",1,"cancel-button","font-button2",3,"click"],["mat-button","",1,"apply-button","font-button2",3,"click"]],template:function(e,i){1&e&&(t.j41(0,"div",0)(1,"span",1),t.EFF(2),t.nI1(3,"translate"),t.k0s(),t.j41(4,"mat-dialog-content",2),t.DNE(5,xo,5,2,"div",3),t.j41(6,"mat-radio-group",4),t.bIt("change",function(s){return i.onRadioSelectionChange(s)}),t.j41(7,"mat-radio-button",5)(8,"div",6),t.EFF(9),t.k0s()(),t.j41(10,"mat-radio-button",5)(11,"div",6),t.EFF(12),t.nI1(13,"translate"),t.k0s()()(),t.j41(14,"div",7),t.DNE(15,Mo,6,13,"div",8),t.j41(16,"div",9)(17,"span",10),t.EFF(18),t.nI1(19,"translate"),t.k0s(),t.j41(20,"nv-hig-slider",11),t.nI1(21,"translate"),t.mxI("valueChange",function(s){return t.DH7(i.newState.middleGray,s)||(i.newState.middleGray=s),s}),t.bIt("input",function(s){return i.onMiddleGrayChange(s)}),t.k0s()(),t.j41(22,"div",9)(23,"span",10),t.EFF(24),t.nI1(25,"translate"),t.k0s(),t.j41(26,"nv-hig-slider",11),t.nI1(27,"translate"),t.mxI("valueChange",function(s){return t.DH7(i.newState.contrast,s)||(i.newState.contrast=s),s}),t.bIt("input",function(s){return i.onContrastChange(s)}),t.k0s()(),t.j41(28,"div",9)(29,"span",10),t.EFF(30),t.nI1(31,"translate"),t.k0s(),t.j41(32,"nv-hig-slider",11),t.nI1(33,"translate"),t.mxI("valueChange",function(s){return t.DH7(i.newState.saturation,s)||(i.newState.saturation=s),s}),t.bIt("input",function(s){return i.onSaturationChange(s)}),t.k0s()()(),t.nrm(34,"mat-divider",12),t.j41(35,"div",13)(36,"mat-checkbox",14),t.mxI("ngModelChange",function(s){return t.DH7(i.isHdrIndicatorToBeShown,s)||(i.isHdrIndicatorToBeShown=s),s}),t.bIt("change",function(){return i.onHdrIndicatorChange()}),t.j41(37,"span",10),t.EFF(38),t.nI1(39,"translate"),t.k0s()()(),t.DNE(40,Po,7,6,"ng-container",15),t.k0s(),t.j41(41,"mat-dialog-actions",16),t.DNE(42,Oo,7,6,"div",15)(43,Do,4,3,"div",15),t.k0s()()),2&e&&(t.R7$(2),t.JRh(t.bMT(3,46,"system.video.highDynamicRange")),t.R7$(3),t.Y8G("ngIf",i.oldState.errorCode!==i.hdrErrors.SUCCESS),t.R7$(),t.Y8G("disabled",i.oldState.errorCode!==i.hdrErrors.SUCCESS),t.R7$(),t.Y8G("checked",!i.newState.isEnabled)("value",!1),t.R7$(2),t.SpI(" ",i.defaultValueString," "),t.R7$(),t.Y8G("checked",i.newState.isEnabled)("value",!0),t.R7$(2),t.SpI(" ",t.bMT(13,48,"common.on")," "),t.R7$(3),t.Y8G("ngIf",i.newState.maxPeakBrightness>i.peakBrightnessMaxRenderThreshold),t.R7$(3),t.JRh(t.bMT(19,50,"manage3dSettings.AIHDR.middleGrey")),t.R7$(2),t.R50("value",i.newState.middleGray),t.Y8G("min",i.middleGraySliderMin)("max",i.middleGraySliderMax)("step",i.sliderStepSize)("disabled",i.isControlDisabled)("nvAppAnnouncer",i.newState.middleGray)("associatedMessage","manage3dSettings.AIHDR.middleGrey"),t.BMQ("aria-label",t.bMT(21,52,"manage3dSettings.AIHDR.middleGrey")),t.R7$(4),t.JRh(t.bMT(25,54,"manage3dSettings.AIHDR.contrast")),t.R7$(2),t.R50("value",i.newState.contrast),t.Y8G("min",i.saturationContrastMin)("max",i.saturationContrastMax)("step",i.sliderStepSize)("disabled",i.isControlDisabled)("nvAppAnnouncer",i.newState.contrast)("associatedMessage","manage3dSettings.AIHDR.contrast"),t.BMQ("aria-label",t.bMT(27,56,"manage3dSettings.AIHDR.contrast")),t.R7$(4),t.JRh(t.bMT(31,58,"manage3dSettings.AIHDR.saturation")),t.R7$(2),t.R50("value",i.newState.saturation),t.Y8G("min",i.saturationContrastMin)("max",i.saturationContrastMax)("step",i.sliderStepSize)("disabled",i.isControlDisabled)("nvAppAnnouncer",i.newState.saturation)("associatedMessage","manage3dSettings.AIHDR.saturation"),t.BMQ("aria-label",t.bMT(33,60,"manage3dSettings.AIHDR.saturation")),t.R7$(3),t.Y8G("ngClass",t.eq3(64,vo,!i.isGpuUtilizationSupported)),t.R7$(),t.R50("ngModel",i.isHdrIndicatorToBeShown),t.Y8G("disabled",i.isControlDisabled||!i.isGpuUtilizationSupported)("nvAppAnnouncer",i.isHdrIndicatorToBeShown)("associatedMessage","system.video.showStatusOverlay"),t.R7$(2),t.SpI(" ",t.bMT(39,62,"system.video.showStatusOverlay")," "),t.R7$(2),t.Y8G("ngIf",i.oldState.errorCode===i.hdrErrors.SUCCESS&&i.statusString),t.R7$(2),t.Y8G("ngIf",i.oldState.errorCode===i.hdrErrors.SUCCESS),t.R7$(),t.Y8G("ngIf",i.oldState.errorCode!==i.hdrErrors.SUCCESS))},dependencies:[u.YU,u.bT,Vt.t,J.tG,et.nM,L.BC,L.vS,U.iV,F.An,X.q,dt.So,O.BI,O.Yi,O.E7,St.VT,St._g,N.PW,nt.L,x.D9],styles:["mat-radio-group[_ngcontent-%COMP%]{display:flex;flex-direction:column;padding:0 8px}mat-radio-group[_ngcontent-%COMP%] mat-radio-button[_ngcontent-%COMP%]{height:48px;display:flex}.info-icon[_ngcontent-%COMP%]{width:16px;height:16px}.hdr-sliders[_ngcontent-%COMP%]{margin-left:52px;margin-top:10px}.divider[_ngcontent-%COMP%]{margin:16px 24px 16px 16px}.hdr-checkbox[_ngcontent-%COMP%]{padding:0 24px 0 8px}.hdr-status[_ngcontent-%COMP%]{padding:0 24px 0 20px}.disabled[_ngcontent-%COMP%]{pointer-events:none;opacity:.38}",".margin-0[_ngcontent-%COMP%]{margin:0}.padding-0[_ngcontent-%COMP%]{padding:0}.gap-0[_ngcontent-%COMP%]{gap:0px}.margin-top-0[_ngcontent-%COMP%]{margin-top:0}.padding-top-0[_ngcontent-%COMP%]{padding-top:0}.margin-bottom-0[_ngcontent-%COMP%]{margin-bottom:0}.padding-bottom-0[_ngcontent-%COMP%]{padding-bottom:0}.margin-left-0[_ngcontent-%COMP%]{margin-left:0}.padding-left-0[_ngcontent-%COMP%]{padding-left:0}.margin-right-0[_ngcontent-%COMP%]{margin-right:0}.padding-right-0[_ngcontent-%COMP%]{padding-right:0}.margin-4[_ngcontent-%COMP%]{margin:4px}.padding-4[_ngcontent-%COMP%]{padding:4px}.gap-4[_ngcontent-%COMP%]{gap:4px}.margin-top-4[_ngcontent-%COMP%]{margin-top:4px}.padding-top-4[_ngcontent-%COMP%]{padding-top:4px}.margin-bottom-4[_ngcontent-%COMP%]{margin-bottom:4px}.padding-bottom-4[_ngcontent-%COMP%]{padding-bottom:4px}.margin-left-4[_ngcontent-%COMP%]{margin-left:4px}.padding-left-4[_ngcontent-%COMP%]{padding-left:4px}.margin-right-4[_ngcontent-%COMP%]{margin-right:4px}.padding-right-4[_ngcontent-%COMP%]{padding-right:4px}.margin-8[_ngcontent-%COMP%]{margin:8px}.padding-8[_ngcontent-%COMP%]{padding:8px}.gap-8[_ngcontent-%COMP%]{gap:8px}.margin-top-8[_ngcontent-%COMP%]{margin-top:8px}.padding-top-8[_ngcontent-%COMP%]{padding-top:8px}.margin-bottom-8[_ngcontent-%COMP%]{margin-bottom:8px}.padding-bottom-8[_ngcontent-%COMP%]{padding-bottom:8px}.margin-left-8[_ngcontent-%COMP%]{margin-left:8px}.padding-left-8[_ngcontent-%COMP%]{padding-left:8px}.margin-right-8[_ngcontent-%COMP%]{margin-right:8px}.padding-right-8[_ngcontent-%COMP%]{padding-right:8px}.margin-10[_ngcontent-%COMP%]{margin:10px}.padding-10[_ngcontent-%COMP%]{padding:10px}.gap-10[_ngcontent-%COMP%]{gap:10px}.margin-top-10[_ngcontent-%COMP%]{margin-top:10px}.padding-top-10[_ngcontent-%COMP%]{padding-top:10px}.margin-bottom-10[_ngcontent-%COMP%]{margin-bottom:10px}.padding-bottom-10[_ngcontent-%COMP%]{padding-bottom:10px}.margin-left-10[_ngcontent-%COMP%]{margin-left:10px}.padding-left-10[_ngcontent-%COMP%]{padding-left:10px}.margin-right-10[_ngcontent-%COMP%]{margin-right:10px}.padding-right-10[_ngcontent-%COMP%]{padding-right:10px}.margin-12[_ngcontent-%COMP%]{margin:12px}.padding-12[_ngcontent-%COMP%]{padding:12px}.gap-12[_ngcontent-%COMP%]{gap:12px}.margin-top-12[_ngcontent-%COMP%]{margin-top:12px}.padding-top-12[_ngcontent-%COMP%]{padding-top:12px}.margin-bottom-12[_ngcontent-%COMP%]{margin-bottom:12px}.padding-bottom-12[_ngcontent-%COMP%]{padding-bottom:12px}.margin-left-12[_ngcontent-%COMP%]{margin-left:12px}.padding-left-12[_ngcontent-%COMP%]{padding-left:12px}.margin-right-12[_ngcontent-%COMP%]{margin-right:12px}.padding-right-12[_ngcontent-%COMP%]{padding-right:12px}.margin-16[_ngcontent-%COMP%]{margin:16px}.padding-16[_ngcontent-%COMP%]{padding:16px}.gap-16[_ngcontent-%COMP%]{gap:16px}.margin-top-16[_ngcontent-%COMP%]{margin-top:16px}.padding-top-16[_ngcontent-%COMP%]{padding-top:16px}.margin-bottom-16[_ngcontent-%COMP%]{margin-bottom:16px}.padding-bottom-16[_ngcontent-%COMP%]{padding-bottom:16px}.margin-left-16[_ngcontent-%COMP%]{margin-left:16px}.padding-left-16[_ngcontent-%COMP%]{padding-left:16px}.margin-right-16[_ngcontent-%COMP%]{margin-right:16px}.padding-right-16[_ngcontent-%COMP%]{padding-right:16px}.margin-20[_ngcontent-%COMP%]{margin:20px}.padding-20[_ngcontent-%COMP%]{padding:20px}.gap-20[_ngcontent-%COMP%]{gap:20px}.margin-top-20[_ngcontent-%COMP%]{margin-top:20px}.padding-top-20[_ngcontent-%COMP%]{padding-top:20px}.margin-bottom-20[_ngcontent-%COMP%]{margin-bottom:20px}.padding-bottom-20[_ngcontent-%COMP%]{padding-bottom:20px}.margin-left-20[_ngcontent-%COMP%]{margin-left:20px}.padding-left-20[_ngcontent-%COMP%]{padding-left:20px}.margin-right-20[_ngcontent-%COMP%]{margin-right:20px}.padding-right-20[_ngcontent-%COMP%]{padding-right:20px}.margin-24[_ngcontent-%COMP%]{margin:24px}.padding-24[_ngcontent-%COMP%]{padding:24px}.gap-24[_ngcontent-%COMP%]{gap:24px}.margin-top-24[_ngcontent-%COMP%]{margin-top:24px}.padding-top-24[_ngcontent-%COMP%]{padding-top:24px}.margin-bottom-24[_ngcontent-%COMP%]{margin-bottom:24px}.padding-bottom-24[_ngcontent-%COMP%]{padding-bottom:24px}.margin-left-24[_ngcontent-%COMP%]{margin-left:24px}.padding-left-24[_ngcontent-%COMP%]{padding-left:24px}.margin-right-24[_ngcontent-%COMP%]{margin-right:24px}.padding-right-24[_ngcontent-%COMP%]{padding-right:24px}.margin-32[_ngcontent-%COMP%]{margin:32px}.padding-32[_ngcontent-%COMP%]{padding:32px}.gap-32[_ngcontent-%COMP%]{gap:32px}.margin-top-32[_ngcontent-%COMP%]{margin-top:32px}.padding-top-32[_ngcontent-%COMP%]{padding-top:32px}.margin-bottom-32[_ngcontent-%COMP%]{margin-bottom:32px}.padding-bottom-32[_ngcontent-%COMP%]{padding-bottom:32px}.margin-left-32[_ngcontent-%COMP%]{margin-left:32px}.padding-left-32[_ngcontent-%COMP%]{padding-left:32px}.margin-right-32[_ngcontent-%COMP%]{margin-right:32px}.padding-right-32[_ngcontent-%COMP%]{padding-right:32px}.margin-36[_ngcontent-%COMP%]{margin:36px}.padding-36[_ngcontent-%COMP%]{padding:36px}.gap-36[_ngcontent-%COMP%]{gap:36px}.margin-top-36[_ngcontent-%COMP%]{margin-top:36px}.padding-top-36[_ngcontent-%COMP%]{padding-top:36px}.margin-bottom-36[_ngcontent-%COMP%]{margin-bottom:36px}.padding-bottom-36[_ngcontent-%COMP%]{padding-bottom:36px}.margin-left-36[_ngcontent-%COMP%]{margin-left:36px}.padding-left-36[_ngcontent-%COMP%]{padding-left:36px}.margin-right-36[_ngcontent-%COMP%]{margin-right:36px}.padding-right-36[_ngcontent-%COMP%]{padding-right:36px}.flex-row[_ngcontent-%COMP%]{display:flex}.flex-col[_ngcontent-%COMP%]{display:flex;flex-direction:column}.justify-content-space-between[_ngcontent-%COMP%]{justify-content:space-between}.justify-content-center[_ngcontent-%COMP%]{justify-content:center}.align-items-center[_ngcontent-%COMP%]{align-items:center}.flex-none[_ngcontent-%COMP%]{flex:none}"]})}}return a})();const Rn=a=>({disabled:a});function Io(a,r){if(1&a){const n=t.RV6();t.qex(0),t.j41(1,"mat-chip",21),t.bIt("click",function(){const i=t.eBV(n).$implicit,o=t.XpG();return t.Njj(o.setQualityOption(i))})("keyup.enter",function(){const i=t.eBV(n).$implicit,o=t.XpG();return t.Njj(o.setQualityOption(i))}),t.j41(2,"span",22),t.EFF(3),t.nI1(4,"translate"),t.k0s()(),t.bVm()}if(2&a){const n=r.$implicit,e=t.XpG();t.R7$(),t.Y8G("selected",e.selectedQualityOption===n),t.R7$(2),t.JRh(t.bMT(4,2,n))}}function Ro(a,r){if(1&a){const n=t.RV6();t.j41(0,"div",23)(1,"nv-hig-slider",24),t.nI1(2,"translate"),t.mxI("valueChange",function(i){t.eBV(n);const o=t.XpG();return t.DH7(o.gpuUtilSliderValue,i)||(o.gpuUtilSliderValue=i),t.Njj(i)}),t.bIt("valueChange",function(i){t.eBV(n);const o=t.XpG();return t.Njj(o.selectGpuUtil(i))}),t.k0s()()}if(2&a){const n=t.XpG();t.R7$(),t.R50("value",n.gpuUtilSliderValue),t.Y8G("min",n.gpuUtilMinValue)("max",n.gpuUtilMaxValue)("step",n.stepValue)("tickInterval",1)("disabled",!n.newState.isEnabled||!n.isSliderToBeShown)("nvAppAnnouncer",n.gpuUtilSliderValue)("associatedMessage",n.sliderTitle),t.BMQ("aria-label",t.bMT(2,9,n.sliderTitle))}}function To(a,r){if(1&a){const n=t.RV6();t.j41(0,"div",23)(1,"nv-hig-slider",24),t.nI1(2,"translate"),t.mxI("valueChange",function(i){t.eBV(n);const o=t.XpG();return t.DH7(o.qualitySliderValue,i)||(o.qualitySliderValue=i),t.Njj(i)}),t.bIt("valueChange",function(i){t.eBV(n);const o=t.XpG();return t.Njj(o.selectQuality(i))}),t.k0s()()}if(2&a){const n=t.XpG();t.R7$(),t.R50("value",n.qualitySliderValue),t.Y8G("min",n.qualityMinValue)("max",n.qualityMaxValue)("step",n.stepValue)("tickInterval",1)("disabled",!n.newState.isEnabled)("nvAppAnnouncer",n.qualitySliderValue)("associatedMessage",n.sliderTitle),t.BMQ("aria-label",t.bMT(2,9,n.sliderTitle))}}function ko(a,r){if(1&a&&(t.j41(0,"div",25),t.nrm(1,"mat-icon",26),t.nI1(2,"translate"),t.j41(3,"span",16),t.EFF(4),t.k0s()()),2&a){const n=t.XpG();t.R7$(),t.qtP("aria-label","",n.statusString," ",t.bMT(2,4,"common.info"),""),t.R7$(3),t.JRh(n.statusString)}}let Go=(()=>{class a{constructor(n,e,i,o,s,l){this.dialogRef=e,this.videoService=o,this.translate=s,this.telemetryService=l,this.qualityChips=E.Wc,this.statusString="",this.qualityMinValue=E.cL,this.qualityMaxValue=E.ij,this.gpuUtilMinValue=E.B_,this.gpuUtilMaxValue=E.XW,this.stepValue=E.lz,this.destroyRef=(0,t.WQX)(t.abz),this.throttle$=new tt.B7,this.isDirty=!1,this.logger=n.getLogger("nvapp/VsrDialogComponent"),this.oldState={...i},this.newState={...i},this.logger.info("Initialized with:",i)}ngOnInit(){this.isAutoQuality=!this.newState.quality||this.newState.quality===k.FW.SuperResValue_Auto,this.selectedQualityOption=this.isAutoQuality?this.qualityChips[0]:this.qualityChips[1],this.isVsrIndicatorToBeShown=this.newState?.vsrStatusIndicator===k.Th.SuperResIndicator_On,this.isVsrToBeDisabled=this.newState?.disableVsrOnGameLaunch===k.uJ.DisableVSROnGameLaunch_On,this.gpuUtilSliderValue=this.newState?.gpuUtil??0,this.defaultValueString=(0,ht.xM)(this.translate),this.checkForGpuUtilizationSupport(),this.updateVsrStatusString(),this.updateVsrStateOnSettingChange()}onDisableVsrChange(){this.newState.disableVsrOnGameLaunch=this.isVsrToBeDisabled?k.uJ.DisableVSROnGameLaunch_On:k.uJ.DisableVSROnGameLaunch_Off,this.settingChanged()}onVsrIndicatorChange(){this.newState.vsrStatusIndicator=this.isVsrIndicatorToBeShown?k.Th.SuperResIndicator_On:k.Th.SuperResIndicator_Off,this.settingChanged()}updateFlags(){this.qualitySliderValue=this.isAutoQuality?k.FW.SuperResValue_Auto:this.newState.quality,this.sliderTitle=this.isAutoQuality?k.Fe.gpuUtilization:k.Fe.quality,this.lowIndicatorText=this.isAutoQuality?k.st.Low:k.st.VeryLow,this.isSliderToBeShown=!!this.isGpuUtilizationSupported||!this.isAutoQuality}checkForGpuUtilizationSupport(){this.videoService.isGPUUtilizationSupported().pipe((0,M.M)(n=>{this.isGpuUtilizationSupported=n,this.updateFlags()}),(0,h.pQ)(this.destroyRef)).subscribe(g.l,n=>{this.logger.error("Some error occurred while getting isGPUUtilization support info ",n)})}updateVsrStatusString(){this.videoService.vsrStatus$.pipe((0,h.pQ)(this.destroyRef),(0,M.M)(n=>{this.statusString=this.translate.instant(E.yY,{status:this.translate.instant(n.isActive?E.iH:E.Xl)})})).subscribe(g.l,g.l)}updateVsrStateOnSettingChange(){this.throttle$.asObservable().pipe((0,It.c)(E.mi,wt.E,{leading:!1,trailing:!0}),(0,M.M)(n=>{this.newState.quality=this.newState.isEnabled?this.newState.quality===k.FW.SuperResValue_Off?k.FW.SuperResValue_Auto:this.newState.quality:k.FW.SuperResValue_Off,this.logger.info("set the VSR setting in backend ",this.newState),this.videoService.setVsrState(this.newState)}),(0,h.pQ)(this.destroyRef)).subscribe(g.l,g.l)}onRadioSelectionChange(n){this.newState.isEnabled=n.value,this.settingChanged()}selectQuality(n){this.newState.quality=n,this.settingChanged()}setQualityOption(n){this.selectedQualityOption=n,this.isAutoQuality=n===k.IN.Auto,this.selectQuality(this.isAutoQuality?k.FW.SuperResValue_Auto:k.FW.SuperResValue_1),this.updateFlags()}selectGpuUtil(n){this.newState.gpuUtil=n,this.settingChanged()}onApplyClick(){this.logger.info("Apply button clicked"),this.isDirty&&(this.logger.info("Settings changed, applying new settings:",this.newState),this.videoService.applyStateChange(this.videoService.getVsrState()),this.sendTelemetry()),this.dialogRef.close()}onCancelClick(){this.logger.info("Cancel button clicked"),this.videoService.cancelStateChange(this.videoService.getVsrState()),this.dialogRef.close()}sendTelemetry(){const n={hierarchy:this.videoService.getHierarchy(),isEnabled:this.newState.isEnabled?f.T8.TRUE:f.T8.FALSE,quality:(0,ht.ah)(this.newState.quality),gpuUtil:(0,ht.NY)(this.newState.gpuUtil),vsrStatusIndicator:this.isVsrIndicatorToBeShown?f.T8.TRUE:f.T8.FALSE};this.telemetryService.push(new f.vK(n))}settingChanged(){this.isDirty=!0,this.throttle$.next()}static{this.\u0275fac=function(e){return new(e||a)(t.rXU(v.J6),t.rXU(O.CP),t.rXU(O.Vh),t.rXU(Gt.r),t.rXU(x.c$),t.rXU(Nt.H0))}}static{this.\u0275cmp=t.VBU({type:a,selectors:[["nv-app-vsr-dialog"]],decls:47,vars:47,consts:[[1,"common-modal"],["mat-dialog-title","",1,"font-header6","title"],[1,"content","margin-top-4"],[1,"flex-col","padding-left-8","padding-right-16",3,"change"],[3,"checked","value"],[1,"font-body1"],[1,"flex-col","gap-16","margin-top-10","quality-container"],[3,"disabled"],[4,"ngFor","ngForOf"],[1,"quality-slider","common-slider-container",3,"ngClass"],[1,"slider-title","font-body2"],[1,"slider-indicators","font-body3"],["class","slider-content",4,"ngIf"],[1,"divider"],[1,"flex-row","align-items-center","vsr-checkbox",3,"ngClass"],[3,"ngModelChange","change","ngModel","disabled","nvAppAnnouncer","associatedMessage"],[1,"font-body2"],["class","flex-row gap-10 align-items-center margin-top-16 vsr-status",4,"ngIf"],["align","end",1,"actions"],["mat-button","",1,"cancel-button","font-button2",3,"click"],["mat-button","",1,"apply-button","font-button2",3,"click"],["selectable","",1,"model-override-chip",3,"click","keyup.enter","selected"],[1,"font-body2","font-color-secondary"],[1,"slider-content"],[1,"common-slider",3,"valueChange","value","min","max","step","tickInterval","disabled","nvAppAnnouncer","associatedMessage"],[1,"flex-row","gap-10","align-items-center","margin-top-16","vsr-status"],["svgIcon","info","tabindex","0",1,"font-body2","info-icon"]],template:function(e,i){1&e&&(t.j41(0,"div",0)(1,"span",1),t.EFF(2),t.nI1(3,"translate"),t.k0s(),t.j41(4,"mat-dialog-content",2)(5,"mat-radio-group",3),t.bIt("change",function(s){return i.onRadioSelectionChange(s)}),t.j41(6,"mat-radio-button",4)(7,"div",5),t.EFF(8),t.k0s()(),t.j41(9,"mat-radio-button",4)(10,"div",5),t.EFF(11),t.nI1(12,"translate"),t.k0s()()(),t.j41(13,"div",6)(14,"span",5),t.EFF(15),t.nI1(16,"translate"),t.k0s(),t.j41(17,"mat-chip-list",7),t.DNE(18,Io,5,4,"ng-container",8),t.k0s(),t.j41(19,"div",9)(20,"div",10),t.EFF(21),t.nI1(22,"translate"),t.k0s(),t.j41(23,"div",11)(24,"span"),t.EFF(25),t.nI1(26,"translate"),t.k0s(),t.j41(27,"span"),t.EFF(28),t.nI1(29,"translate"),t.k0s()(),t.DNE(30,Ro,3,11,"div",12)(31,To,3,11,"div",12),t.k0s()(),t.nrm(32,"mat-divider",13),t.j41(33,"div",14)(34,"mat-checkbox",15),t.mxI("ngModelChange",function(s){return t.DH7(i.isVsrIndicatorToBeShown,s)||(i.isVsrIndicatorToBeShown=s),s}),t.bIt("change",function(){return i.onVsrIndicatorChange()}),t.j41(35,"span",16),t.EFF(36),t.nI1(37,"translate"),t.k0s()()(),t.nrm(38,"mat-divider",13),t.DNE(39,ko,5,6,"div",17),t.k0s(),t.j41(40,"mat-dialog-actions",18)(41,"button",19),t.bIt("click",function(){return i.onCancelClick()}),t.EFF(42),t.nI1(43,"translate"),t.k0s(),t.j41(44,"button",20),t.bIt("click",function(){return i.onApplyClick()}),t.EFF(45),t.nI1(46,"translate"),t.k0s()()()),2&e&&(t.R7$(2),t.JRh(t.bMT(3,25,"system.video.videoSuperResolution")),t.R7$(4),t.Y8G("checked",!i.newState.isEnabled)("value",!1),t.R7$(2),t.SpI(" ",i.defaultValueString," "),t.R7$(),t.Y8G("checked",i.newState.isEnabled)("value",!0),t.R7$(2),t.SpI(" ",t.bMT(12,27,"common.on")," "),t.R7$(4),t.JRh(t.bMT(16,29,"ops.quality")),t.R7$(2),t.Y8G("disabled",!i.newState.isEnabled),t.R7$(),t.Y8G("ngForOf",i.qualityChips),t.R7$(),t.Y8G("ngClass",t.eq3(43,Rn,!i.isGpuUtilizationSupported&&i.isAutoQuality)),t.R7$(2),t.JRh(t.bMT(22,31,i.sliderTitle)),t.R7$(4),t.JRh(t.bMT(26,33,i.lowIndicatorText)),t.R7$(3),t.JRh(t.bMT(29,35,"system.video.gpuUtilization.high")),t.R7$(2),t.Y8G("ngIf",i.isAutoQuality),t.R7$(),t.Y8G("ngIf",!i.isAutoQuality),t.R7$(2),t.Y8G("ngClass",t.eq3(45,Rn,!i.isGpuUtilizationSupported)),t.R7$(),t.R50("ngModel",i.isVsrIndicatorToBeShown),t.Y8G("disabled",!i.newState.isEnabled||!i.isGpuUtilizationSupported)("nvAppAnnouncer",i.isVsrIndicatorToBeShown)("associatedMessage","system.video.showStatusOverlay"),t.R7$(2),t.SpI(" ",t.bMT(37,37,"system.video.showStatusOverlay")," "),t.R7$(3),t.Y8G("ngIf",i.statusString),t.R7$(3),t.SpI(" ",t.bMT(43,39,"save.cancel")," "),t.R7$(3),t.SpI(" ",t.bMT(46,41,"common.ok")," "))},dependencies:[u.YU,u.Sq,u.bT,Vt.t,J.tG,et.nM,L.BC,L.vS,U.iV,F.An,X.q,dt.So,O.BI,O.Yi,O.E7,St.VT,St._g,z.O_,z.Id,N.PW,nt.L,x.D9],styles:["mat-radio-group[_ngcontent-%COMP%]{display:flex;flex-direction:column;padding:0 8px}mat-radio-group[_ngcontent-%COMP%] mat-radio-button[_ngcontent-%COMP%]{height:48px;display:flex}.quality-container[_ngcontent-%COMP%]{padding-left:52px;padding-right:8px}.quality-dropdown[_ngcontent-%COMP%]:disabled{opacity:.38}.info-icon[_ngcontent-%COMP%]{width:16px;height:16px}.dropdown-icon[_ngcontent-%COMP%]{margin-left:16px;width:24px;height:24px}.quality-slider[_ngcontent-%COMP%]{padding:0 16px 0 0;margin-top:8px}.quality-slider[_ngcontent-%COMP%] .slider-title[_ngcontent-%COMP%]{margin-bottom:16px}.quality-slider[_ngcontent-%COMP%] .slider-indicators[_ngcontent-%COMP%]{display:flex;justify-content:space-between;width:100%;margin-bottom:6px}.divider[_ngcontent-%COMP%]{margin:16px 24px 16px 16px}.vsr-checkbox[_ngcontent-%COMP%]{padding:0 24px 0 8px}.vsr-status[_ngcontent-%COMP%]{padding:0 24px 0 20px}.disabled[_ngcontent-%COMP%]{pointer-events:none;opacity:.38}",".margin-0[_ngcontent-%COMP%]{margin:0}.padding-0[_ngcontent-%COMP%]{padding:0}.gap-0[_ngcontent-%COMP%]{gap:0px}.margin-top-0[_ngcontent-%COMP%]{margin-top:0}.padding-top-0[_ngcontent-%COMP%]{padding-top:0}.margin-bottom-0[_ngcontent-%COMP%]{margin-bottom:0}.padding-bottom-0[_ngcontent-%COMP%]{padding-bottom:0}.margin-left-0[_ngcontent-%COMP%]{margin-left:0}.padding-left-0[_ngcontent-%COMP%]{padding-left:0}.margin-right-0[_ngcontent-%COMP%]{margin-right:0}.padding-right-0[_ngcontent-%COMP%]{padding-right:0}.margin-4[_ngcontent-%COMP%]{margin:4px}.padding-4[_ngcontent-%COMP%]{padding:4px}.gap-4[_ngcontent-%COMP%]{gap:4px}.margin-top-4[_ngcontent-%COMP%]{margin-top:4px}.padding-top-4[_ngcontent-%COMP%]{padding-top:4px}.margin-bottom-4[_ngcontent-%COMP%]{margin-bottom:4px}.padding-bottom-4[_ngcontent-%COMP%]{padding-bottom:4px}.margin-left-4[_ngcontent-%COMP%]{margin-left:4px}.padding-left-4[_ngcontent-%COMP%]{padding-left:4px}.margin-right-4[_ngcontent-%COMP%]{margin-right:4px}.padding-right-4[_ngcontent-%COMP%]{padding-right:4px}.margin-8[_ngcontent-%COMP%]{margin:8px}.padding-8[_ngcontent-%COMP%]{padding:8px}.gap-8[_ngcontent-%COMP%]{gap:8px}.margin-top-8[_ngcontent-%COMP%]{margin-top:8px}.padding-top-8[_ngcontent-%COMP%]{padding-top:8px}.margin-bottom-8[_ngcontent-%COMP%]{margin-bottom:8px}.padding-bottom-8[_ngcontent-%COMP%]{padding-bottom:8px}.margin-left-8[_ngcontent-%COMP%]{margin-left:8px}.padding-left-8[_ngcontent-%COMP%]{padding-left:8px}.margin-right-8[_ngcontent-%COMP%]{margin-right:8px}.padding-right-8[_ngcontent-%COMP%]{padding-right:8px}.margin-10[_ngcontent-%COMP%]{margin:10px}.padding-10[_ngcontent-%COMP%]{padding:10px}.gap-10[_ngcontent-%COMP%]{gap:10px}.margin-top-10[_ngcontent-%COMP%]{margin-top:10px}.padding-top-10[_ngcontent-%COMP%]{padding-top:10px}.margin-bottom-10[_ngcontent-%COMP%]{margin-bottom:10px}.padding-bottom-10[_ngcontent-%COMP%]{padding-bottom:10px}.margin-left-10[_ngcontent-%COMP%]{margin-left:10px}.padding-left-10[_ngcontent-%COMP%]{padding-left:10px}.margin-right-10[_ngcontent-%COMP%]{margin-right:10px}.padding-right-10[_ngcontent-%COMP%]{padding-right:10px}.margin-12[_ngcontent-%COMP%]{margin:12px}.padding-12[_ngcontent-%COMP%]{padding:12px}.gap-12[_ngcontent-%COMP%]{gap:12px}.margin-top-12[_ngcontent-%COMP%]{margin-top:12px}.padding-top-12[_ngcontent-%COMP%]{padding-top:12px}.margin-bottom-12[_ngcontent-%COMP%]{margin-bottom:12px}.padding-bottom-12[_ngcontent-%COMP%]{padding-bottom:12px}.margin-left-12[_ngcontent-%COMP%]{margin-left:12px}.padding-left-12[_ngcontent-%COMP%]{padding-left:12px}.margin-right-12[_ngcontent-%COMP%]{margin-right:12px}.padding-right-12[_ngcontent-%COMP%]{padding-right:12px}.margin-16[_ngcontent-%COMP%]{margin:16px}.padding-16[_ngcontent-%COMP%]{padding:16px}.gap-16[_ngcontent-%COMP%]{gap:16px}.margin-top-16[_ngcontent-%COMP%]{margin-top:16px}.padding-top-16[_ngcontent-%COMP%]{padding-top:16px}.margin-bottom-16[_ngcontent-%COMP%]{margin-bottom:16px}.padding-bottom-16[_ngcontent-%COMP%]{padding-bottom:16px}.margin-left-16[_ngcontent-%COMP%]{margin-left:16px}.padding-left-16[_ngcontent-%COMP%]{padding-left:16px}.margin-right-16[_ngcontent-%COMP%]{margin-right:16px}.padding-right-16[_ngcontent-%COMP%]{padding-right:16px}.margin-20[_ngcontent-%COMP%]{margin:20px}.padding-20[_ngcontent-%COMP%]{padding:20px}.gap-20[_ngcontent-%COMP%]{gap:20px}.margin-top-20[_ngcontent-%COMP%]{margin-top:20px}.padding-top-20[_ngcontent-%COMP%]{padding-top:20px}.margin-bottom-20[_ngcontent-%COMP%]{margin-bottom:20px}.padding-bottom-20[_ngcontent-%COMP%]{padding-bottom:20px}.margin-left-20[_ngcontent-%COMP%]{margin-left:20px}.padding-left-20[_ngcontent-%COMP%]{padding-left:20px}.margin-right-20[_ngcontent-%COMP%]{margin-right:20px}.padding-right-20[_ngcontent-%COMP%]{padding-right:20px}.margin-24[_ngcontent-%COMP%]{margin:24px}.padding-24[_ngcontent-%COMP%]{padding:24px}.gap-24[_ngcontent-%COMP%]{gap:24px}.margin-top-24[_ngcontent-%COMP%]{margin-top:24px}.padding-top-24[_ngcontent-%COMP%]{padding-top:24px}.margin-bottom-24[_ngcontent-%COMP%]{margin-bottom:24px}.padding-bottom-24[_ngcontent-%COMP%]{padding-bottom:24px}.margin-left-24[_ngcontent-%COMP%]{margin-left:24px}.padding-left-24[_ngcontent-%COMP%]{padding-left:24px}.margin-right-24[_ngcontent-%COMP%]{margin-right:24px}.padding-right-24[_ngcontent-%COMP%]{padding-right:24px}.margin-32[_ngcontent-%COMP%]{margin:32px}.padding-32[_ngcontent-%COMP%]{padding:32px}.gap-32[_ngcontent-%COMP%]{gap:32px}.margin-top-32[_ngcontent-%COMP%]{margin-top:32px}.padding-top-32[_ngcontent-%COMP%]{padding-top:32px}.margin-bottom-32[_ngcontent-%COMP%]{margin-bottom:32px}.padding-bottom-32[_ngcontent-%COMP%]{padding-bottom:32px}.margin-left-32[_ngcontent-%COMP%]{margin-left:32px}.padding-left-32[_ngcontent-%COMP%]{padding-left:32px}.margin-right-32[_ngcontent-%COMP%]{margin-right:32px}.padding-right-32[_ngcontent-%COMP%]{padding-right:32px}.margin-36[_ngcontent-%COMP%]{margin:36px}.padding-36[_ngcontent-%COMP%]{padding:36px}.gap-36[_ngcontent-%COMP%]{gap:36px}.margin-top-36[_ngcontent-%COMP%]{margin-top:36px}.padding-top-36[_ngcontent-%COMP%]{padding-top:36px}.margin-bottom-36[_ngcontent-%COMP%]{margin-bottom:36px}.padding-bottom-36[_ngcontent-%COMP%]{padding-bottom:36px}.margin-left-36[_ngcontent-%COMP%]{margin-left:36px}.padding-left-36[_ngcontent-%COMP%]{padding-left:36px}.margin-right-36[_ngcontent-%COMP%]{margin-right:36px}.padding-right-36[_ngcontent-%COMP%]{padding-right:36px}.flex-row[_ngcontent-%COMP%]{display:flex}.flex-col[_ngcontent-%COMP%]{display:flex;flex-direction:column}.justify-content-space-between[_ngcontent-%COMP%]{justify-content:space-between}.justify-content-center[_ngcontent-%COMP%]{justify-content:center}.align-items-center[_ngcontent-%COMP%]{align-items:center}.flex-none[_ngcontent-%COMP%]{flex:none}"]})}}return a})();var Fo=p(90279),Tn=p(66340),Eo=p(46058);const $o=(a,r,n)=>({enabled:a,section:r,expandAccordion:n});function jo(a,r){1&a&&t.nrm(0,"nv-app-page-load-spinner")}function Vo(a,r){if(1&a&&(t.qex(0),t.EFF(1),t.bVm()),2&a){const n=t.XpG(2);t.R7$(),t.JRh(n.panelSummary)}}function Ao(a,r){1&a&&(t.qex(0),t.EFF(1),t.nI1(2,"translate"),t.bVm()),2&a&&(t.R7$(),t.JRh(t.bMT(2,1,"system.video.rtxVideoEnhancementsDescriptionBoth")))}function Uo(a,r){1&a&&(t.qex(0),t.EFF(1),t.nI1(2,"translate"),t.bVm()),2&a&&(t.R7$(),t.JRh(t.bMT(2,1,"system.video.rtxVideoEnhancementsDescriptionVsr")))}function Xo(a,r){1&a&&(t.qex(0),t.EFF(1),t.nI1(2,"translate"),t.bVm()),2&a&&(t.R7$(),t.JRh(t.bMT(2,1,"system.video.rtxVideoEnhancementsDescriptionHdr")))}function Bo(a,r){if(1&a&&t.DNE(0,Ao,3,3,"ng-container",19)(1,Uo,3,3,"ng-container",19)(2,Xo,3,3,"ng-container",19),2&a){const n=t.XpG(2);t.Y8G("ngIf",n.vsrSupported&&n.hdrSupported),t.R7$(),t.Y8G("ngIf",n.vsrSupported&&!n.hdrSupported),t.R7$(),t.Y8G("ngIf",!n.vsrSupported&&n.hdrSupported)}}function No(a,r){if(1&a){const n=t.RV6();t.j41(0,"button",20),t.bIt("click",function(i){t.eBV(n);const o=t.XpG(2);return t.Njj(o.onRestoreDefaults(i))})("keydown",function(i){t.eBV(n);const o=t.XpG(2);return t.Njj(o.onRestoreDefaults(i))}),t.EFF(1),t.nI1(2,"translate"),t.k0s()}2&a&&(t.R7$(),t.SpI(" ",t.bMT(2,1,"common.restore")," "))}function Lo(a,r){1&a&&t.nrm(0,"mat-icon",21)}function Yo(a,r){1&a&&t.nrm(0,"mat-icon",22)}function Ho(a,r){if(1&a){const n=t.RV6();t.j41(0,"div",23)(1,"div",24)(2,"span",25),t.EFF(3),t.nI1(4,"translate"),t.k0s(),t.j41(5,"mat-icon",26),t.nI1(6,"translate"),t.nI1(7,"translate"),t.bIt("click",function(){t.eBV(n);const i=t.XpG(2);return t.Njj(i.openVsrInfoPopup())})("keydown.enter",function(){t.eBV(n);const i=t.XpG(2);return t.Njj(i.openVsrInfoPopup())}),t.k0s()(),t.j41(8,"button",27),t.bIt("click",function(){t.eBV(n);const i=t.XpG(2);return t.Njj(i.openVsrDialog())}),t.j41(9,"div",28)(10,"div"),t.EFF(11),t.k0s(),t.nrm(12,"mat-icon",29),t.k0s()()()}if(2&a){const n=t.XpG(2);t.Y8G("ngClass",n.vsrSupported&&n.hdrSupported?"vsr-control":""),t.R7$(3),t.JRh(t.bMT(4,6,"system.video.videoSuperResolution")),t.R7$(2),t.qtP("aria-label","",t.bMT(6,8,"system.video.videoSuperResolution")," ",t.bMT(7,10,"common.info"),""),t.R7$(6),t.JRh(n.vsrSummary)}}function zo(a,r){if(1&a){const n=t.RV6();t.j41(0,"div",23)(1,"div",24)(2,"span",25),t.EFF(3),t.nI1(4,"translate"),t.k0s(),t.j41(5,"mat-icon",26),t.nI1(6,"translate"),t.nI1(7,"translate"),t.bIt("click",function(){t.eBV(n);const i=t.XpG(2);return t.Njj(i.openHdrInfoPopup())})("keydown.enter",function(){t.eBV(n);const i=t.XpG(2);return t.Njj(i.openHdrInfoPopup())}),t.k0s()(),t.j41(8,"button",27),t.bIt("click",function(){t.eBV(n);const i=t.XpG(2);return t.Njj(i.openHdrDialog())}),t.j41(9,"div",28)(10,"div"),t.EFF(11),t.k0s(),t.nrm(12,"mat-icon",29),t.k0s()()()}if(2&a){const n=t.XpG(2);t.Y8G("ngClass",n.vsrSupported&&n.hdrSupported?"hdr-control":""),t.R7$(3),t.JRh(t.bMT(4,6,"system.video.highDynamicRange")),t.R7$(2),t.qtP("aria-label","",t.bMT(6,8,"system.video.highDynamicRange")," ",t.bMT(7,10,"common.info"),""),t.R7$(6),t.JRh(n.hdrSummary)}}function qo(a,r){if(1&a){const n=t.RV6();t.j41(0,"div",3)(1,"label",4),t.EFF(2),t.nI1(3,"translate"),t.k0s(),t.j41(4,"mat-accordion",5),t.nrm(5,"mat-divider"),t.j41(6,"div",6)(7,"mat-expansion-panel",7),t.mxI("expandedChange",function(i){t.eBV(n);const o=t.XpG();return t.DH7(o.isExpanded,i)||(o.isExpanded=i),t.Njj(i)}),t.j41(8,"mat-expansion-panel-header",8)(9,"div",9)(10,"div",10)(11,"label",11),t.EFF(12),t.nI1(13,"translate"),t.k0s(),t.j41(14,"label",12),t.DNE(15,Vo,2,1,"ng-container",2)(16,Bo,3,3,"ng-template",null,1,t.C5r),t.k0s()(),t.j41(18,"div",13),t.DNE(19,No,3,3,"button",14)(20,Lo,1,0,"mat-icon",15)(21,Yo,1,0,"mat-icon",16),t.k0s()()(),t.j41(22,"div",17),t.DNE(23,Ho,13,12,"div",18)(24,zo,13,12,"div",18),t.k0s()()(),t.nrm(25,"mat-divider"),t.k0s()()}if(2&a){const n=t.sdS(17),e=t.XpG();t.Y8G("nvappScrollHighlight",t.sMw(21,$o,(e.vsrSupported||e.hdrSupported)&&!e.isLoading,e.pageHighlightSection,!e.isExpanded)),t.R7$(2),t.SpI(" ",t.bMT(3,17,"manage3dSettings.globalSettings")," "),t.R7$(5),t.R50("expanded",e.isExpanded),t.Y8G("nvAppAnnouncer",e.isExpanded)("associatedMessage","system.video.rtxVideoEnhancements")("ngClass",e.isExpanded?"ex-panel-bg":""),t.R7$(),t.Y8G("collapsedHeight","auto")("expandedHeight","auto"),t.R7$(),t.Y8G("ngClass",e.isExpanded?"bottom-divider":""),t.R7$(3),t.SpI(" ",t.bMT(13,19,"system.video.rtxVideoEnhancements")," "),t.R7$(3),t.Y8G("ngIf",!e.isExpanded)("ngIfElse",n),t.R7$(4),t.Y8G("ngIf",e.isExpanded),t.R7$(),t.Y8G("ngIf",!e.isExpanded),t.R7$(),t.Y8G("ngIf",e.isExpanded),t.R7$(2),t.Y8G("ngIf",e.vsrSupported),t.R7$(),t.Y8G("ngIf",e.hdrSupported)}}let Qo=(()=>{class a{constructor(n,e,i,o,s,l,d,_,C,w){this.videoService=e,this.dialog=i,this.translate=o,this.genericDialog=s,this.settingInfoModalService=l,this.nvcplSystemInfoService=d,this.performanceMeasureService=_,this.redirectService=C,this.keyboardMappingService=w,this.isLoading=!0,this.isExpanded=!0,this.panelSummary="",this.vsrSummary="",this.vsrSupported=!1,this.hdrSummary="",this.hdrSupported=!1,this.videoColorSettingsPanel=!0,this.destroy$=new tt.B7,this.destroyRef=(0,t.WQX)(t.abz),this.displays=[],this.pageHighlightSection=Et.kA.Video,this.logger=n.getLogger("nvapp/VideoPageComponent")}getSystemCapabilities(){this.nvcplSystemInfoService.getSystemCapabilities().pipe((0,m.s)(1),(0,M.M)(n=>{this.isMsHybridSystem=n.isMsHybridSystem}),(0,h.pQ)(this.destroyRef)).subscribe(g.l,g.l)}ngOnInit(){this.logger.info("Initializing"),this.performanceMeasureService.markNvAppPerformanceMarkers([S.mM.NvAppVideoRouteNavigationEnd,S.mM.NvAppVideoDataFetchStart],S.fR.SystemVideo),this.getSystemCapabilities(),(0,T.zV)([this.videoService.vsrInfo$,this.videoService.hdrInfo$,this.videoService.vsrStatus$,this.videoService.hdrStatus$]).pipe((0,M.M)(([n,e,i,o])=>{this.performanceMeasureService.markNvAppPerformanceMarkers([S.mM.NvAppVideoDataFetchEnd,S.mM.NvAppVideoViewRenderStart],S.fR.SystemVideo),this.panelSummary=(0,ht.qP)(this.translate,n,e,i,o),this.vsrSummary=(0,ht.WX)(this.translate,n,i),this.hdrSummary=(0,ht.lo)(this.translate,e,o),this.vsrSupported=n.isSupported,this.hdrSupported=e.isSupported,this.isLoading=!1}),(0,h.pQ)(this.destroyRef)).subscribe(n=>{this.performanceMeasureService.markNvAppPerformanceMarkers([S.mM.NvAppVideoViewRenderEnd],S.fR.SystemVideo)},n=>{this.performanceMeasureService.markNvAppPerformanceMarkers([S.mM.NvAppVideoDataFetchEnd,S.mM.NvAppVideoViewRenderStart,S.mM.NvAppVideoViewRenderEnd],S.fR.SystemVideo)}),this.videoService.startPollingStatus(this.destroy$.asObservable()),this.logger.info("Initializing complete")}ngOnDestroy(){this.destroy$.next(),this.destroy$.complete()}openVsrDialog(){this.logger.info("Opening VSR setting dialog"),(0,T.zV)([this.videoService.vsrInfo$,this.videoService.vsrStatus$]).pipe((0,m.s)(1),(0,M.M)(([n,e])=>{const i={...n,...e};this.dialog.open(Go,{autoFocus:!1,hasBackdrop:!0,restoreFocus:!0,panelClass:["graphics-setting-modal-container","common-dialog"],data:i})}),(0,h.pQ)(this.destroyRef)).subscribe(g.l,g.l)}openHdrDialog(){this.logger.info("Opening HDR setting dialog"),(0,T.zV)([this.videoService.hdrInfo$,this.videoService.hdrStatus$]).pipe((0,m.s)(1),(0,M.M)(([n,e])=>{const i={...n,isActive:e};this.dialog.open(wo,{autoFocus:!1,hasBackdrop:!0,restoreFocus:!0,panelClass:["graphics-setting-modal-container","common-dialog"],data:i})}),(0,h.pQ)(this.destroyRef)).subscribe(g.l,g.l)}openVsrInfoPopup(){this.logger.info("Opening VSR info popup"),this.videoService.isGPUUtilizationSupported().pipe((0,M.M)(n=>{const e={title:this.translate.instant("system.video.videoSuperResolution"),description:this.translate.instant("system.video.vsrInfoPopup.description"),typicalUsageScenarios:this.translate.instant("system.video.vsrInfoPopup.typicalUsageScenarios"),tips:{text:this.translate.instant(this.isMsHybridSystem?"system.video.vsrInfoPopup.hybridSystemTips":"system.video.vsrInfoPopup.genericTips"),link:{text:"common.learnMore",linkClickedCallback:this.gsyncDisplayDialogLinkClicked.bind(this)}}};n||(e.importantInfo=[this.translate.instant("system.video.vsrInfoPopup.infoUpdateDriver")]),this.settingInfoModalService.openDialogWithData(e)}),(0,m.s)(1),(0,A.W)(n=>(this.logger.error("Error checking GPU utilization support:",n),(0,D.of)(!1)))).subscribe(g.l,g.l)}gsyncDisplayDialogLinkClicked(){this.redirectService.redirectTo(Fo.r7.VideoRtx)}openHdrInfoPopup(){this.logger.info("Opening HDR info popup"),(0,T.zV)([this.videoService.hdrInfo$,this.videoService.isGPUUtilizationSupported()]).pipe((0,m.s)(1),(0,M.M)(([n,e])=>{const i={title:this.translate.instant("system.video.highDynamicRange"),description:this.translate.instant("system.video.hdrInfoPopup.description"),typicalUsageScenarios:this.translate.instant("system.video.hdrInfoPopup.typicalUsageScenarios"),tips:{text:this.translate.instant(this.isMsHybridSystem?"system.video.hdrInfoPopup.hybridSystemTips":"system.video.hdrInfoPopup.genericTips"),link:{text:"common.learnMore",linkClickedCallback:this.gsyncDisplayDialogLinkClicked.bind(this)}}};e||(i.importantInfo=[this.translate.instant("system.video.hdrInfoPopup.infoUpdateDriver")]),n.errorCode!==k.FO.SUCCESS&&(i.errors=[this.translate.instant(E.Uc.get(n.errorCode))]),this.settingInfoModalService.openDialogWithData(i)})).subscribe(g.l,g.l)}onRestoreDefaults(n){if(!this.keyboardMappingService.isMouseOrKeyboardSpaceOrEnterEvent(n))return;n.stopImmediatePropagation(),n.preventDefault(),this.logger.info("Opening restore defaults dialog");const e=this.genericDialog.open({hasBackdrop:!0,panelClass:["dialogPaddingRemove"],data:{headerText:{text:"system.display.restoreDefaultsDlgTitle"},bodyText:{text:"system.video.videoRestoreDialogText"},primaryButton:{text:"common.ok"},secondaryButton:{text:"common.cancel"},autoFocusOnPrimaryButton:On.X6}});(0,Zt.O4)([e.primaryButtonClick.pipe((0,P.T)(i=>!0)),e.secondaryButtonClick.pipe((0,P.T)(i=>!1)),e.afterClosed().pipe((0,P.T)(i=>!1))]).pipe((0,m.s)(1),(0,yt.ZZ)(i=>i?this.videoService.restoreDefaults():(0,D.of)(null)),(0,_o.Q)(this.destroy$),(0,A.W)(i=>(this.logger.error("Error restoring defaults:",i),(0,D.of)(null))),(0,dn.j)(()=>e?.close())).subscribe(g.l,g.l)}static{this.\u0275fac=function(e){return new(e||a)(t.rXU(v.J6),t.rXU(Gt.r),t.rXU(O.bZ),t.rXU(x.c$),t.rXU(Dn.uh),t.rXU(bt.P),t.rXU(Tn.oY),t.rXU(Qt.M),t.rXU(Eo.Q),t.rXU(_t.j))}}static{this.\u0275cmp=t.VBU({type:a,selectors:[["nv-app-video-page"]],decls:3,vars:2,consts:[["videoPage",""],["panelDescription",""],[4,"ngIf","ngIfElse"],[1,"flex-col","video-page",3,"nvappScrollHighlight"],[1,"page-title","font-sub1","font-color-primary"],["displayMode","flat"],[1,"ex-panel-margin"],["hideToggle","true",1,"displays-expansion-panel",3,"expandedChange","expanded","nvAppAnnouncer","associatedMessage","ngClass"],[3,"collapsedHeight","expandedHeight"],[1,"flex-row","accordion-header","hig-button-overlay","justify-content-space-between","align-items-center",3,"ngClass"],[1,"flex-col"],["for","panel-title",1,"font-sub1","font-color-primary"],["for","panel-summary",1,"font-body2","font-color-secondary"],[1,"flex-row","align-items-center"],["mat-button","","class","font-button2 restore-button",3,"click","keydown",4,"ngIf"],["svgIcon","chevron_down",4,"ngIf"],["svgIcon","chevron_up",4,"ngIf"],[1,"gap-16","margin-top-16","margin-bottom-16","global-settings-grid"],["class","flex-col gap-16",3,"ngClass",4,"ngIf"],[4,"ngIf"],["mat-button","",1,"font-button2","restore-button",3,"click","keydown"],["svgIcon","chevron_down"],["svgIcon","chevron_up"],[1,"flex-col","gap-16",3,"ngClass"],[1,"flex-row","gap-8","align-items-center"],[1,"font-body1","font-color-primary"],["role","button","tabindex","0","svgIcon","info",1,"info-icon","font-body2",3,"click","keydown.enter"],["mat-button","",1,"font-body2","global-button",3,"click"],[1,"flex-row","justify-content-space-between","align-items-center"],["svgIcon","edit_settings",1,"material-icons"]],template:function(e,i){if(1&e&&t.DNE(0,jo,1,0,"nv-app-page-load-spinner",2)(1,qo,26,25,"ng-template",null,0,t.C5r),2&e){const o=t.sdS(2);t.Y8G("ngIf",i.isLoading)("ngIfElse",o)}},dependencies:[u.YU,u.bT,U.iV,F.An,X.q,H.BS,H.GK,H.Z2,N.PW,jt.p,zt.Q,nt.L,x.D9],styles:['.video-page[_ngcontent-%COMP%]{padding:16px 0}.page-title[_ngcontent-%COMP%]{display:block;margin-bottom:16px}.more-icon-button[_ngcontent-%COMP%]{padding:0;min-width:24px;height:24px}.info-icon[_ngcontent-%COMP%]{width:16px;height:16px;cursor:pointer}.global-button[_ngcontent-%COMP%]{background-color:var(--editable-modal-button-bg-color);box-shadow:var(--editable-modal-button-box-shadow);padding:6px 16px;text-transform:none}.global-settings-grid[_ngcontent-%COMP%]{display:grid;grid-template-columns:repeat(2,1fr);grid-template-areas:"vsr hdr"}.vsr-control[_ngcontent-%COMP%]{grid-area:vsr}.hdr-control[_ngcontent-%COMP%]{grid-area:hdr}.restore-button[_ngcontent-%COMP%]{margin-right:8px}.display-carousel[_ngcontent-%COMP%]{--container-left-margin: 0px}.display-section-title[_ngcontent-%COMP%]{margin-top:24px}',".margin-0[_ngcontent-%COMP%]{margin:0}.padding-0[_ngcontent-%COMP%]{padding:0}.gap-0[_ngcontent-%COMP%]{gap:0px}.margin-top-0[_ngcontent-%COMP%]{margin-top:0}.padding-top-0[_ngcontent-%COMP%]{padding-top:0}.margin-bottom-0[_ngcontent-%COMP%]{margin-bottom:0}.padding-bottom-0[_ngcontent-%COMP%]{padding-bottom:0}.margin-left-0[_ngcontent-%COMP%]{margin-left:0}.padding-left-0[_ngcontent-%COMP%]{padding-left:0}.margin-right-0[_ngcontent-%COMP%]{margin-right:0}.padding-right-0[_ngcontent-%COMP%]{padding-right:0}.margin-4[_ngcontent-%COMP%]{margin:4px}.padding-4[_ngcontent-%COMP%]{padding:4px}.gap-4[_ngcontent-%COMP%]{gap:4px}.margin-top-4[_ngcontent-%COMP%]{margin-top:4px}.padding-top-4[_ngcontent-%COMP%]{padding-top:4px}.margin-bottom-4[_ngcontent-%COMP%]{margin-bottom:4px}.padding-bottom-4[_ngcontent-%COMP%]{padding-bottom:4px}.margin-left-4[_ngcontent-%COMP%]{margin-left:4px}.padding-left-4[_ngcontent-%COMP%]{padding-left:4px}.margin-right-4[_ngcontent-%COMP%]{margin-right:4px}.padding-right-4[_ngcontent-%COMP%]{padding-right:4px}.margin-8[_ngcontent-%COMP%]{margin:8px}.padding-8[_ngcontent-%COMP%]{padding:8px}.gap-8[_ngcontent-%COMP%]{gap:8px}.margin-top-8[_ngcontent-%COMP%]{margin-top:8px}.padding-top-8[_ngcontent-%COMP%]{padding-top:8px}.margin-bottom-8[_ngcontent-%COMP%]{margin-bottom:8px}.padding-bottom-8[_ngcontent-%COMP%]{padding-bottom:8px}.margin-left-8[_ngcontent-%COMP%]{margin-left:8px}.padding-left-8[_ngcontent-%COMP%]{padding-left:8px}.margin-right-8[_ngcontent-%COMP%]{margin-right:8px}.padding-right-8[_ngcontent-%COMP%]{padding-right:8px}.margin-10[_ngcontent-%COMP%]{margin:10px}.padding-10[_ngcontent-%COMP%]{padding:10px}.gap-10[_ngcontent-%COMP%]{gap:10px}.margin-top-10[_ngcontent-%COMP%]{margin-top:10px}.padding-top-10[_ngcontent-%COMP%]{padding-top:10px}.margin-bottom-10[_ngcontent-%COMP%]{margin-bottom:10px}.padding-bottom-10[_ngcontent-%COMP%]{padding-bottom:10px}.margin-left-10[_ngcontent-%COMP%]{margin-left:10px}.padding-left-10[_ngcontent-%COMP%]{padding-left:10px}.margin-right-10[_ngcontent-%COMP%]{margin-right:10px}.padding-right-10[_ngcontent-%COMP%]{padding-right:10px}.margin-12[_ngcontent-%COMP%]{margin:12px}.padding-12[_ngcontent-%COMP%]{padding:12px}.gap-12[_ngcontent-%COMP%]{gap:12px}.margin-top-12[_ngcontent-%COMP%]{margin-top:12px}.padding-top-12[_ngcontent-%COMP%]{padding-top:12px}.margin-bottom-12[_ngcontent-%COMP%]{margin-bottom:12px}.padding-bottom-12[_ngcontent-%COMP%]{padding-bottom:12px}.margin-left-12[_ngcontent-%COMP%]{margin-left:12px}.padding-left-12[_ngcontent-%COMP%]{padding-left:12px}.margin-right-12[_ngcontent-%COMP%]{margin-right:12px}.padding-right-12[_ngcontent-%COMP%]{padding-right:12px}.margin-16[_ngcontent-%COMP%]{margin:16px}.padding-16[_ngcontent-%COMP%]{padding:16px}.gap-16[_ngcontent-%COMP%]{gap:16px}.margin-top-16[_ngcontent-%COMP%]{margin-top:16px}.padding-top-16[_ngcontent-%COMP%]{padding-top:16px}.margin-bottom-16[_ngcontent-%COMP%]{margin-bottom:16px}.padding-bottom-16[_ngcontent-%COMP%]{padding-bottom:16px}.margin-left-16[_ngcontent-%COMP%]{margin-left:16px}.padding-left-16[_ngcontent-%COMP%]{padding-left:16px}.margin-right-16[_ngcontent-%COMP%]{margin-right:16px}.padding-right-16[_ngcontent-%COMP%]{padding-right:16px}.margin-20[_ngcontent-%COMP%]{margin:20px}.padding-20[_ngcontent-%COMP%]{padding:20px}.gap-20[_ngcontent-%COMP%]{gap:20px}.margin-top-20[_ngcontent-%COMP%]{margin-top:20px}.padding-top-20[_ngcontent-%COMP%]{padding-top:20px}.margin-bottom-20[_ngcontent-%COMP%]{margin-bottom:20px}.padding-bottom-20[_ngcontent-%COMP%]{padding-bottom:20px}.margin-left-20[_ngcontent-%COMP%]{margin-left:20px}.padding-left-20[_ngcontent-%COMP%]{padding-left:20px}.margin-right-20[_ngcontent-%COMP%]{margin-right:20px}.padding-right-20[_ngcontent-%COMP%]{padding-right:20px}.margin-24[_ngcontent-%COMP%]{margin:24px}.padding-24[_ngcontent-%COMP%]{padding:24px}.gap-24[_ngcontent-%COMP%]{gap:24px}.margin-top-24[_ngcontent-%COMP%]{margin-top:24px}.padding-top-24[_ngcontent-%COMP%]{padding-top:24px}.margin-bottom-24[_ngcontent-%COMP%]{margin-bottom:24px}.padding-bottom-24[_ngcontent-%COMP%]{padding-bottom:24px}.margin-left-24[_ngcontent-%COMP%]{margin-left:24px}.padding-left-24[_ngcontent-%COMP%]{padding-left:24px}.margin-right-24[_ngcontent-%COMP%]{margin-right:24px}.padding-right-24[_ngcontent-%COMP%]{padding-right:24px}.margin-32[_ngcontent-%COMP%]{margin:32px}.padding-32[_ngcontent-%COMP%]{padding:32px}.gap-32[_ngcontent-%COMP%]{gap:32px}.margin-top-32[_ngcontent-%COMP%]{margin-top:32px}.padding-top-32[_ngcontent-%COMP%]{padding-top:32px}.margin-bottom-32[_ngcontent-%COMP%]{margin-bottom:32px}.padding-bottom-32[_ngcontent-%COMP%]{padding-bottom:32px}.margin-left-32[_ngcontent-%COMP%]{margin-left:32px}.padding-left-32[_ngcontent-%COMP%]{padding-left:32px}.margin-right-32[_ngcontent-%COMP%]{margin-right:32px}.padding-right-32[_ngcontent-%COMP%]{padding-right:32px}.margin-36[_ngcontent-%COMP%]{margin:36px}.padding-36[_ngcontent-%COMP%]{padding:36px}.gap-36[_ngcontent-%COMP%]{gap:36px}.margin-top-36[_ngcontent-%COMP%]{margin-top:36px}.padding-top-36[_ngcontent-%COMP%]{padding-top:36px}.margin-bottom-36[_ngcontent-%COMP%]{margin-bottom:36px}.padding-bottom-36[_ngcontent-%COMP%]{padding-bottom:36px}.margin-left-36[_ngcontent-%COMP%]{margin-left:36px}.padding-left-36[_ngcontent-%COMP%]{padding-left:36px}.margin-right-36[_ngcontent-%COMP%]{margin-right:36px}.padding-right-36[_ngcontent-%COMP%]{padding-right:36px}.flex-row[_ngcontent-%COMP%]{display:flex}.flex-col[_ngcontent-%COMP%]{display:flex;flex-direction:column}.justify-content-space-between[_ngcontent-%COMP%]{justify-content:space-between}.justify-content-center[_ngcontent-%COMP%]{justify-content:center}.align-items-center[_ngcontent-%COMP%]{align-items:center}.flex-none[_ngcontent-%COMP%]{flex:none}",".ex-panel-margin[_ngcontent-%COMP%]{margin:8px 0}.ex-panel-bg[_ngcontent-%COMP%]{background-color:var(--system-common-ex-panel-bg-color)}.dark-divider[_ngcontent-%COMP%]{border-top-color:var(--primary-900)}.bottom-divider[_ngcontent-%COMP%]{border-bottom:1px solid var(--primary-900)}.disable-mat-select-trigger[_ngcontent-%COMP%]{opacity:.38}","[_ngcontent-%COMP%]:root{--rwd-column-count: 4;--rwd-gutter-count: 3 ;--rwd-gutter-size: 8px;--rwd-container-side-spacing: 16px;--rwd-column-size: calc((var(--rwd-container-width) - var(--rwd-sidebar-width) - 2 * 16px - 8px * 3 ) / 4);--rwd-sidebar-width: 0px;--rwd-container-width: 100vw}@media screen and (min-width: 480px){[_ngcontent-%COMP%]:root{--rwd-column-count: 6;--rwd-gutter-count: 5 ;--rwd-column-size: calc((var(--rwd-container-width) - var(--rwd-sidebar-width) - 2 * 16px - 8px * 5 ) / 6)}}@media screen and (min-width: 720px){[_ngcontent-%COMP%]:root{--rwd-column-count: 8;--rwd-gutter-count: 7 ;--rwd-column-size: calc((var(--rwd-container-width) - var(--rwd-sidebar-width) - 2 * 16px - 8px * 7 ) / 8)}}@media screen and (min-width: 960px){[_ngcontent-%COMP%]:root{--rwd-column-count: 12;--rwd-gutter-count: 11 ;--rwd-container-side-spacing: 24px;--rwd-column-size: calc((var(--rwd-container-width) - var(--rwd-sidebar-width) - 2 * 24px - 8px * 11 ) / 12)}}@media screen and (min-width: 1440px){[_ngcontent-%COMP%]:root{--rwd-gutter-size: 16px;--rwd-column-size: calc((var(--rwd-container-width) - var(--rwd-sidebar-width) - 2 * 24px - 16px * 11 ) / 12)}}[_ngcontent-%COMP%]:root{--hig-marquee-ratio: .3229;--hig-marquee-parent-container-width: 100vw;--hig-marquee-container-height: calc(var(--hig-marquee-ratio) * 100vw);--hig-marquee-corner-column: 56px;--hig-marquee-text-column: 14vw;--hig-marquee-padded-image-first-row: calc(var(--hig-marquee-ratio) * (100vw - var(--hig-marquee-corner-column) - var(--hig-marquee-text-column)));--hig-marquee-padded-image-second-row: calc(var(--hig-marquee-container-height) - var(--hig-marquee-padded-image-first-row))}.ellipsified-text-with-tooltip[_ngcontent-%COMP%]{text-overflow:ellipsis;overflow:hidden}.ellipsified-text-with-tooltip.multi-line-ellipsis[_ngcontent-%COMP%]{display:-webkit-box;-webkit-box-orient:vertical;white-space:wrap}.ellipsified-text-with-tooltip.single-line-ellipsis[_ngcontent-%COMP%]{white-space:nowrap}.ellipsis[_ngcontent-%COMP%]{text-overflow:ellipsis;overflow:hidden}.system-display-box[_ngcontent-%COMP%]{box-sizing:border-box;border:1px solid var(--system-display-border-color);display:flex;width:26px;height:20px;flex-direction:row;align-self:center;justify-content:center;align-items:center}.system-display-box[_ngcontent-%COMP%] span[_ngcontent-%COMP%]{color:var(--system-display-span-color)}.displays-chip[_ngcontent-%COMP%]{height:32px}.accordion-padding[_ngcontent-%COMP%]{padding:14px 0}.accordion-header[_ngcontent-%COMP%]{padding:14px 16px;width:100%}.accordion-header[_ngcontent-%COMP%] mat-icon[_ngcontent-%COMP%]{color:var(--primary-contrast-900)}.info-icon[_ngcontent-%COMP%]{width:16px;height:16px;flex-shrink:0}"]})}}return a})();var Jo=p(33804),Wo=p(43187),Zo=p(10607);let kn=(()=>{class a{constructor(n,e,i){this.bridgeService=n,this.loggingService=e,this.nvAppTelemetryUtilService=i,this.logger=this.loggingService.getLogger("nvapp/LegacyControlPanelService")}getLoadingSpinner(){return this.loadingSpinner=new nn.k,this.loadingSpinner}clearLoadingSpinner(){this.loadingSpinner.clear()}launchLegacyControlPanel(n){return this.bridgeService.executeCommand(Wo.T.Nvapp.Nvcpldisplayplugin.LaunchApplication,{clsId:n}).pipe((0,M.M)(()=>{this.logger.info("Launching the Legacy Control Panel with ClsID :",n)}),(0,A.W)(e=>(this.logger.error("Legacy Control Panel launch failed",e),this.loadingSpinner.triggerLoadingIndicator(!1),(0,At.$)(e))))}launchApplication(n,e){this.launchSub&&this.launchSub.unsubscribe(),this.loadingSpinner.triggerLoadingIndicator(!0,0),this.nvAppTelemetryUtilService.sendClickEvent(f.EB.OpenNvCpl,e,!0),this.launchSub=this.launchLegacyControlPanel(n).subscribe(g.l,g.l)}getControlPanelClientInfo(){return this.controlPanelClientInfo?(0,D.of)(this.controlPanelClientInfo):this.bridgeService.executeCommand(rn.XW).pipe((0,M.M)(n=>{this.logger.info("Control Panel Client info response:",n),this.controlPanelClientInfo=n}),(0,A.W)(n=>(this.logger.info("Error in fetching control Panel Client Info ",n),this.loadingSpinner.triggerLoadingIndicator(!1),(0,D.of)(null))))}ngOnDestroy(){this.launchSub&&this.launchSub.unsubscribe()}static{this.\u0275fac=function(e){return new(e||a)(t.KVO(Zo.NZ),t.KVO(v.J6),t.KVO(f.AY))}}static{this.\u0275prov=t.jDH({token:a,factory:a.\u0275fac,providedIn:"root"})}}return a})();var Ko=p(29997),Gn=p(81728),ts=p(892);const ns={sliBasic:"{DE0549BD-F34D-4748-AD94-0F2F22749F4F}",manage3DSettings:"{BBB7D605-8639-49D0-849E-32C4A5DBB9C3}",colorSettingsadv:"{B53EBC0C-2251-4AE2-9818-FD6AAF843EC2}",sliMultimon:"{894BF76C-115F-44B7-9B32-ABFA7E6A804A}",sliPhysx:"{C8F113AE-A2C9-47CB-8DAE-9376C64665AD}",multiview:"{894BF76C-115F-44B7-9B32-ABFA7E6A804A}",stereoscopic3D:"{50125552-EC89-4049-B1B7-5FDBE38C8509}",changeResolution:"{91363F1E-E7CA-4959-85D6-963719EC79FC}",variableRefreshrate:"{80BA3813-908F-4D4C-A5FF-263640AD5B7A}",aceSettings:"{CBD600D7-2256-4ADB-8E3A-185F56EA9353}",manageLicense:"{DFA226E7-D28D-407D-95ED-5A79D9745BB5}",home:"{F18188EC-2567-4855-8BAE-2766F5EC54FC}"};function es(a,r){1&a&&(t.j41(0,"mat-icon"),t.EFF(1,"open_in_new"),t.k0s())}function is(a,r){if(1&a){const n=t.RV6();t.qex(0),t.j41(1,"div",1),t.nrm(2,"nv-app-preference-base",2),t.j41(3,"button",3),t.nI1(4,"translate"),t.nI1(5,"translate"),t.nI1(6,"translate"),t.nI1(7,"uppercase"),t.bIt("click",function(){t.eBV(n);const i=t.XpG();return t.Njj(i.openControlPanelDefaultPage(i.NavigationPageClsid.home))}),t.DNE(8,es,2,0,"mat-icon",0),t.k0s()(),t.bVm()}if(2&a){const n=t.XpG();t.R7$(2),t.Y8G("featureReadyState",n.controlPanelFeatureSection),t.R7$(),t.qtP("aria-label","",t.bMT(4,8,"preferences.featureReadiness.controlPanelFeature.header")," ",t.bMT(5,10,n.appsOpenButtonText),""),t.Y8G("showSpinner",n.isLoading)("disabled",n.isLoading)("buttonText",t.bMT(7,14,t.bMT(6,12,n.appsOpenButtonText))),t.R7$(5),t.Y8G("ngIf",!n.isLoading)}}let as=(()=>{class a{constructor(n,e,i,o){this.loggingService=n,this.legacyControlPanelService=e,this.telemetryService=i,this.windowService=o,this.NavigationPageClsid=ns,this.controlPanelFeatureSection=Bt.nJ,this.isLoading=!1,this.appsOpenButtonText="layout.apps.open",this.logger=n.getLogger("nvapp/LegacyControlPanelComponent"),this.telemetryService.setScreen(f.f3.System),this.loadingSpinner=this.legacyControlPanelService.getLoadingSpinner()}ngOnInit(){this.getControlPanelFeatureSection(),this.listenToLoadingSpinner()}openControlPanelDefaultPage(n){this.legacyControlPanelService.launchApplication(n,f.yP.Overview),this.stopLoadingSpinner()}getControlPanelFeatureSection(){this.controlPanelFeature={...Bt.nJ,toggle:{visible:!1}}}listenToLoadingSpinner(){this.loadingSpinner.getLoadingSpinner().subscribe(n=>{this.isLoading=n},g.l)}stopLoadingSpinner(){this.loadingSpinnerSub?.unsubscribe(),this.loadingSpinnerSub=(0,Zt.O4)([(0,ts.Y)(Bt.rf).pipe((0,P.T)(n=>!0)),this.windowService.getFocusEvent().pipe((0,P.T)(n=>!1))]).pipe((0,m.s)(1)).subscribe(()=>this.loadingSpinner.triggerLoadingIndicator(!1),n=>this.logger.error("Error while stoping loading spinner",n))}ngOnDestroy(){this.legacyControlPanelService.clearLoadingSpinner()}static{this.\u0275fac=function(e){return new(e||a)(t.rXU(v.J6),t.rXU(kn),t.rXU(Nt.H0),t.rXU(v.s7))}}static{this.\u0275cmp=t.VBU({type:a,selectors:[["nv-app-legacy-control-panel"]],decls:1,vars:1,consts:[[4,"ngIf"],[1,"preference-base"],[1,"preference-base-section",3,"featureReadyState"],["mat-button","","nvAppTextButtonSpinner","",1,"font-button2","text-button-icon",3,"click","showSpinner","disabled","buttonText"]],template:function(e,i){1&e&&t.DNE(0,is,9,16,"ng-container",0),2&e&&t.Y8G("ngIf",i.controlPanelFeature)},dependencies:[u.bT,U.iV,F.An,ft.u,Gn.I,u.Pc,x.D9],styles:[".preference-base[_ngcontent-%COMP%]{display:flex;flex-direction:row;justify-content:space-between;margin:16px 0}.text-button-icon[_ngcontent-%COMP%]{padding:0 16px;height:36px}.text-button-icon[_ngcontent-%COMP%] mat-icon[_ngcontent-%COMP%]{padding-right:4px;height:20px;font-size:18px;line-height:18px;width:20px}"]})}}return a})();const os=a=>({index:a});function ss(a,r){if(1&a&&(t.j41(0,"span",9),t.EFF(1),t.k0s()),2&a){const n=t.XpG().index;t.R7$(),t.SpI("(",n+1,")")}}function rs(a,r){1&a&&(t.j41(0,"div",10),t.nrm(1,"mat-icon",11),t.j41(2,"span"),t.EFF(3),t.nI1(4,"translate"),t.k0s()()),2&a&&(t.R7$(3),t.SpI(" ",t.bMT(4,1,"system.display.noDisplayConnected")," "))}function ls(a,r){1&a&&(t.j41(0,"span"),t.EFF(1),t.nI1(2,"translate"),t.k0s()),2&a&&(t.R7$(),t.JRh(t.bMT(2,1,"system.clone")))}function ps(a,r){if(1&a&&(t.j41(0,"span"),t.EFF(1),t.nI1(2,"translate"),t.k0s()),2&a){const n=t.XpG(2).$implicit;t.R7$(),t.JRh(t.i5U(2,1,"system.cloneGroup",t.eq3(4,os,n.cloneGroupId+1)))}}function cs(a,r){if(1&a&&(t.qex(0),t.DNE(1,ls,3,3,"span",8)(2,ps,3,6,"span",8),t.bVm()),2&a){const n=t.XpG(5);t.R7$(),t.Y8G("ngIf",!n.multiCloneSystem),t.R7$(),t.Y8G("ngIf",n.multiCloneSystem)}}function ds(a,r){if(1&a){const n=t.RV6();t.j41(0,"div",13)(1,"div",14)(2,"span",15),t.EFF(3),t.k0s()(),t.j41(4,"div",16)(5,"span",17),t.bIt("click",function(){const i=t.eBV(n).$implicit,o=t.XpG(2).$implicit,s=t.XpG(2);return t.Njj(s.selectDisplay(i,o))})("keyup.enter",function(){const i=t.eBV(n).$implicit,o=t.XpG(2).$implicit,s=t.XpG(2);return t.Njj(s.selectDisplay(i,o))}),t.EFF(6),t.DNE(7,cs,3,2,"ng-container",8),t.k0s(),t.j41(8,"span",18),t.EFF(9),t.k0s()()()}if(2&a){const n=r.$implicit,e=t.XpG(4);t.R7$(3),t.JRh(n.identifier),t.R7$(2),t.qtP("aria-label","",n.identifier," ",n.name,""),t.R7$(),t.SpI(" ",n.name," "),t.R7$(),t.Y8G("ngIf",n.logicalDisplayType===e.LogicalDisplayType.CloneDisplay),t.R7$(2),t.JRh(n.capabilities)}}function gs(a,r){if(1&a&&(t.qex(0),t.DNE(1,ds,10,7,"div",12),t.bVm()),2&a){const n=t.XpG().$implicit;t.R7$(),t.Y8G("ngForOf",n.displays)}}function us(a,r){if(1&a&&(t.j41(0,"div",4)(1,"span",5),t.EFF(2),t.DNE(3,ss,2,1,"span",6),t.k0s(),t.DNE(4,rs,5,3,"div",7)(5,gs,2,1,"ng-container",8),t.k0s()),2&a){const n=r.$implicit,e=t.XpG(2);t.R7$(2),t.SpI("",n.name," "),t.R7$(),t.Y8G("ngIf",(null==e.gpuDisplayOverview?null:e.gpuDisplayOverview.length)>1),t.R7$(),t.Y8G("ngIf",!n.displayConnected),t.R7$(),t.Y8G("ngIf",null==n.displays?null:n.displays.length)}}function hs(a,r){if(1&a&&(t.j41(0,"div",1)(1,"span",2),t.nI1(2,"translate"),t.EFF(3),t.nI1(4,"translate"),t.k0s(),t.DNE(5,us,6,4,"div",3),t.k0s()),2&a){const n=t.XpG();t.R7$(),t.BMQ("aria-label",t.bMT(2,3,"system.overview.displaysTitle")),t.R7$(2),t.JRh(t.bMT(4,5,"system.overview.displaysTitle")),t.R7$(2),t.Y8G("ngForOf",n.gpuDisplayOverview)}}let ms=(()=>{class a{constructor(n,e,i,o){this.loggingService=n,this.displaysService=e,this.translateService=i,this.multiDisplaysSupportService=o,this.destroyRef=(0,t.WQX)(t.abz),this.gpuDisplayOverview=[],this.multiCloneSystem=!1,this.LogicalDisplayType=c.QE,this.logger=n.getLogger("nvapp/SystemOverviewComponent")}ngOnInit(){(0,T.zV)([this.multiDisplaysSupportService.surfaces$,this.multiDisplaysSupportService.gpuAndDisplayPhysicalInformation$]).pipe((0,h.pQ)(this.destroyRef),(0,P.T)(([n,e])=>e.physicalGpus.map((o,s)=>{const l=(0,R.flatMap)(n,C=>C.displayItems.filter(w=>w.gpuId===o.id)),_={name:o.name,index:s,displays:[],displayConnected:o?.displays?.length>0};if(l.length>0){const C=l.map(w=>this.prepareDisplayCapabilities(w).pipe((0,P.T)(G=>({...w,capabilities:G}))));return(0,fn.p)(C).pipe((0,P.T)(w=>(_.displays=w,_)),(0,h.pQ)(this.destroyRef))}return(0,D.of)(_)})),(0,I.n)(n=>(0,T.zV)(n).pipe((0,P.T)(e=>(this.gpuDisplayOverview=e,this.gpuDisplayOverview)),(0,h.pQ)(this.destroyRef)))).subscribe(g.l,n=>{this.logger.error("Error while building the gpuDisplayOverview map",n)}),this.listenForMultiCloneSystem()}listenForMultiCloneSystem(){this.multiDisplaysSupportService.isMultiCloneSystem$.pipe((0,h.pQ)(this.destroyRef)).subscribe(n=>this.multiCloneSystem=n,g.l)}prepareDisplayCapabilities(n){const e=this.displaysService.getCurrentResolutionLabelForDisplay(n);let i=[];return e&&(i=[e],i.push(this.displaysService.getCurrentRefreshRateForDisplay(n))),n.desktopColorEnhancementInfo$.pipe((0,m.s)(1),(0,P.T)(o=>{const s=this.displaysService.getCurrentDesktopColorDepth(n,o.desktopColorDepthCurrentValue);return s&&i.push(s),this.prepareGsyncHdcpCapabilities(n,i)}),(0,A.W)(o=>(0,D.of)(this.prepareGsyncHdcpCapabilities(n,i))))}prepareGsyncHdcpCapabilities(n,e){if(n.gsyncState?.gsyncType!==c.rc.NotSupported){const i=b.qN.get(n.gsyncState?.gsyncType);e.push(this.translateService.instant(i))}return n.hdcpState.isSupported&&!1===n.hdcpState?.hdcpStatus.isUnavailable&&e.push(this.translateService.instant(b.z$)),e.join(" | ")}selectDisplay(n,e){this.displaysService.preSelectDisplay({index:n.index,gpuIndex:e.index})}static{this.\u0275fac=function(e){return new(e||a)(t.rXU(v.J6),t.rXU(Q.R),t.rXU(x.c$),t.rXU(q.b))}}static{this.\u0275cmp=t.VBU({type:a,selectors:[["nv-app-system-overview-displays"]],decls:1,vars:1,consts:[["class","displays-container",4,"ngIf"],[1,"displays-container"],["tabindex","0","role","group",1,"font-body1","font-color-primary"],["class","gpu-display","tabindex","0","role","listitem",4,"ngFor","ngForOf"],["tabindex","0","role","listitem",1,"gpu-display"],[1,"font-body1","font-color-primary"],["class","font-body2 font-color-primary",4,"ngIf"],["class","font-body2 no-display flex-row gap-8 align-items-center status-info",4,"ngIf"],[4,"ngIf"],[1,"font-body2","font-color-primary"],[1,"font-body2","no-display","flex-row","gap-8","align-items-center","status-info"],["svgIcon","info",1,"info-icon"],["class","display",4,"ngFor","ngForOf"],[1,"display"],[1,"system-display-box"],[1,"font-sub1"],[1,"display-name"],["tabindex","0","role","button",1,"font-body1-link",3,"click","keyup.enter"],[1,"font-body2"]],template:function(e,i){1&e&&t.DNE(0,hs,6,7,"div",0),2&e&&t.Y8G("ngIf",null==i.gpuDisplayOverview?null:i.gpuDisplayOverview.length)},dependencies:[u.Sq,u.bT,F.An,x.D9],styles:[".displays-container[_ngcontent-%COMP%]{display:flex;flex-direction:column;padding-left:var(--system-item-padding);margin-top:24px;gap:16px}.displays-container[_ngcontent-%COMP%] .gpu-display[_ngcontent-%COMP%]{display:flex;flex-direction:column;gap:16px;padding-left:var(--system-item-padding)}.displays-container[_ngcontent-%COMP%] .display[_ngcontent-%COMP%]{display:flex;gap:16px}.displays-container[_ngcontent-%COMP%] .display-name[_ngcontent-%COMP%]{display:flex;flex-direction:column;align-items:flex-start}","[_ngcontent-%COMP%]:root{--rwd-column-count: 4;--rwd-gutter-count: 3 ;--rwd-gutter-size: 8px;--rwd-container-side-spacing: 16px;--rwd-column-size: calc((var(--rwd-container-width) - var(--rwd-sidebar-width) - 2 * 16px - 8px * 3 ) / 4);--rwd-sidebar-width: 0px;--rwd-container-width: 100vw}@media screen and (min-width: 480px){[_ngcontent-%COMP%]:root{--rwd-column-count: 6;--rwd-gutter-count: 5 ;--rwd-column-size: calc((var(--rwd-container-width) - var(--rwd-sidebar-width) - 2 * 16px - 8px * 5 ) / 6)}}@media screen and (min-width: 720px){[_ngcontent-%COMP%]:root{--rwd-column-count: 8;--rwd-gutter-count: 7 ;--rwd-column-size: calc((var(--rwd-container-width) - var(--rwd-sidebar-width) - 2 * 16px - 8px * 7 ) / 8)}}@media screen and (min-width: 960px){[_ngcontent-%COMP%]:root{--rwd-column-count: 12;--rwd-gutter-count: 11 ;--rwd-container-side-spacing: 24px;--rwd-column-size: calc((var(--rwd-container-width) - var(--rwd-sidebar-width) - 2 * 24px - 8px * 11 ) / 12)}}@media screen and (min-width: 1440px){[_ngcontent-%COMP%]:root{--rwd-gutter-size: 16px;--rwd-column-size: calc((var(--rwd-container-width) - var(--rwd-sidebar-width) - 2 * 24px - 16px * 11 ) / 12)}}[_ngcontent-%COMP%]:root{--hig-marquee-ratio: .3229;--hig-marquee-parent-container-width: 100vw;--hig-marquee-container-height: calc(var(--hig-marquee-ratio) * 100vw);--hig-marquee-corner-column: 56px;--hig-marquee-text-column: 14vw;--hig-marquee-padded-image-first-row: calc(var(--hig-marquee-ratio) * (100vw - var(--hig-marquee-corner-column) - var(--hig-marquee-text-column)));--hig-marquee-padded-image-second-row: calc(var(--hig-marquee-container-height) - var(--hig-marquee-padded-image-first-row))}.ellipsified-text-with-tooltip[_ngcontent-%COMP%]{text-overflow:ellipsis;overflow:hidden}.ellipsified-text-with-tooltip.multi-line-ellipsis[_ngcontent-%COMP%]{display:-webkit-box;-webkit-box-orient:vertical;white-space:wrap}.ellipsified-text-with-tooltip.single-line-ellipsis[_ngcontent-%COMP%]{white-space:nowrap}.ellipsis[_ngcontent-%COMP%]{text-overflow:ellipsis;overflow:hidden}.system-display-box[_ngcontent-%COMP%]{box-sizing:border-box;border:1px solid var(--system-display-border-color);display:flex;width:26px;height:20px;flex-direction:row;align-self:center;justify-content:center;align-items:center}.system-display-box[_ngcontent-%COMP%] span[_ngcontent-%COMP%]{color:var(--system-display-span-color)}.displays-chip[_ngcontent-%COMP%]{height:32px}.accordion-padding[_ngcontent-%COMP%]{padding:14px 0}.accordion-header[_ngcontent-%COMP%]{padding:14px 16px;width:100%}.accordion-header[_ngcontent-%COMP%] mat-icon[_ngcontent-%COMP%]{color:var(--primary-contrast-900)}.info-icon[_ngcontent-%COMP%]{width:16px;height:16px;flex-shrink:0}",".margin-0[_ngcontent-%COMP%]{margin:0}.padding-0[_ngcontent-%COMP%]{padding:0}.gap-0[_ngcontent-%COMP%]{gap:0px}.margin-top-0[_ngcontent-%COMP%]{margin-top:0}.padding-top-0[_ngcontent-%COMP%]{padding-top:0}.margin-bottom-0[_ngcontent-%COMP%]{margin-bottom:0}.padding-bottom-0[_ngcontent-%COMP%]{padding-bottom:0}.margin-left-0[_ngcontent-%COMP%]{margin-left:0}.padding-left-0[_ngcontent-%COMP%]{padding-left:0}.margin-right-0[_ngcontent-%COMP%]{margin-right:0}.padding-right-0[_ngcontent-%COMP%]{padding-right:0}.margin-4[_ngcontent-%COMP%]{margin:4px}.padding-4[_ngcontent-%COMP%]{padding:4px}.gap-4[_ngcontent-%COMP%]{gap:4px}.margin-top-4[_ngcontent-%COMP%]{margin-top:4px}.padding-top-4[_ngcontent-%COMP%]{padding-top:4px}.margin-bottom-4[_ngcontent-%COMP%]{margin-bottom:4px}.padding-bottom-4[_ngcontent-%COMP%]{padding-bottom:4px}.margin-left-4[_ngcontent-%COMP%]{margin-left:4px}.padding-left-4[_ngcontent-%COMP%]{padding-left:4px}.margin-right-4[_ngcontent-%COMP%]{margin-right:4px}.padding-right-4[_ngcontent-%COMP%]{padding-right:4px}.margin-8[_ngcontent-%COMP%]{margin:8px}.padding-8[_ngcontent-%COMP%]{padding:8px}.gap-8[_ngcontent-%COMP%]{gap:8px}.margin-top-8[_ngcontent-%COMP%]{margin-top:8px}.padding-top-8[_ngcontent-%COMP%]{padding-top:8px}.margin-bottom-8[_ngcontent-%COMP%]{margin-bottom:8px}.padding-bottom-8[_ngcontent-%COMP%]{padding-bottom:8px}.margin-left-8[_ngcontent-%COMP%]{margin-left:8px}.padding-left-8[_ngcontent-%COMP%]{padding-left:8px}.margin-right-8[_ngcontent-%COMP%]{margin-right:8px}.padding-right-8[_ngcontent-%COMP%]{padding-right:8px}.margin-10[_ngcontent-%COMP%]{margin:10px}.padding-10[_ngcontent-%COMP%]{padding:10px}.gap-10[_ngcontent-%COMP%]{gap:10px}.margin-top-10[_ngcontent-%COMP%]{margin-top:10px}.padding-top-10[_ngcontent-%COMP%]{padding-top:10px}.margin-bottom-10[_ngcontent-%COMP%]{margin-bottom:10px}.padding-bottom-10[_ngcontent-%COMP%]{padding-bottom:10px}.margin-left-10[_ngcontent-%COMP%]{margin-left:10px}.padding-left-10[_ngcontent-%COMP%]{padding-left:10px}.margin-right-10[_ngcontent-%COMP%]{margin-right:10px}.padding-right-10[_ngcontent-%COMP%]{padding-right:10px}.margin-12[_ngcontent-%COMP%]{margin:12px}.padding-12[_ngcontent-%COMP%]{padding:12px}.gap-12[_ngcontent-%COMP%]{gap:12px}.margin-top-12[_ngcontent-%COMP%]{margin-top:12px}.padding-top-12[_ngcontent-%COMP%]{padding-top:12px}.margin-bottom-12[_ngcontent-%COMP%]{margin-bottom:12px}.padding-bottom-12[_ngcontent-%COMP%]{padding-bottom:12px}.margin-left-12[_ngcontent-%COMP%]{margin-left:12px}.padding-left-12[_ngcontent-%COMP%]{padding-left:12px}.margin-right-12[_ngcontent-%COMP%]{margin-right:12px}.padding-right-12[_ngcontent-%COMP%]{padding-right:12px}.margin-16[_ngcontent-%COMP%]{margin:16px}.padding-16[_ngcontent-%COMP%]{padding:16px}.gap-16[_ngcontent-%COMP%]{gap:16px}.margin-top-16[_ngcontent-%COMP%]{margin-top:16px}.padding-top-16[_ngcontent-%COMP%]{padding-top:16px}.margin-bottom-16[_ngcontent-%COMP%]{margin-bottom:16px}.padding-bottom-16[_ngcontent-%COMP%]{padding-bottom:16px}.margin-left-16[_ngcontent-%COMP%]{margin-left:16px}.padding-left-16[_ngcontent-%COMP%]{padding-left:16px}.margin-right-16[_ngcontent-%COMP%]{margin-right:16px}.padding-right-16[_ngcontent-%COMP%]{padding-right:16px}.margin-20[_ngcontent-%COMP%]{margin:20px}.padding-20[_ngcontent-%COMP%]{padding:20px}.gap-20[_ngcontent-%COMP%]{gap:20px}.margin-top-20[_ngcontent-%COMP%]{margin-top:20px}.padding-top-20[_ngcontent-%COMP%]{padding-top:20px}.margin-bottom-20[_ngcontent-%COMP%]{margin-bottom:20px}.padding-bottom-20[_ngcontent-%COMP%]{padding-bottom:20px}.margin-left-20[_ngcontent-%COMP%]{margin-left:20px}.padding-left-20[_ngcontent-%COMP%]{padding-left:20px}.margin-right-20[_ngcontent-%COMP%]{margin-right:20px}.padding-right-20[_ngcontent-%COMP%]{padding-right:20px}.margin-24[_ngcontent-%COMP%]{margin:24px}.padding-24[_ngcontent-%COMP%]{padding:24px}.gap-24[_ngcontent-%COMP%]{gap:24px}.margin-top-24[_ngcontent-%COMP%]{margin-top:24px}.padding-top-24[_ngcontent-%COMP%]{padding-top:24px}.margin-bottom-24[_ngcontent-%COMP%]{margin-bottom:24px}.padding-bottom-24[_ngcontent-%COMP%]{padding-bottom:24px}.margin-left-24[_ngcontent-%COMP%]{margin-left:24px}.padding-left-24[_ngcontent-%COMP%]{padding-left:24px}.margin-right-24[_ngcontent-%COMP%]{margin-right:24px}.padding-right-24[_ngcontent-%COMP%]{padding-right:24px}.margin-32[_ngcontent-%COMP%]{margin:32px}.padding-32[_ngcontent-%COMP%]{padding:32px}.gap-32[_ngcontent-%COMP%]{gap:32px}.margin-top-32[_ngcontent-%COMP%]{margin-top:32px}.padding-top-32[_ngcontent-%COMP%]{padding-top:32px}.margin-bottom-32[_ngcontent-%COMP%]{margin-bottom:32px}.padding-bottom-32[_ngcontent-%COMP%]{padding-bottom:32px}.margin-left-32[_ngcontent-%COMP%]{margin-left:32px}.padding-left-32[_ngcontent-%COMP%]{padding-left:32px}.margin-right-32[_ngcontent-%COMP%]{margin-right:32px}.padding-right-32[_ngcontent-%COMP%]{padding-right:32px}.margin-36[_ngcontent-%COMP%]{margin:36px}.padding-36[_ngcontent-%COMP%]{padding:36px}.gap-36[_ngcontent-%COMP%]{gap:36px}.margin-top-36[_ngcontent-%COMP%]{margin-top:36px}.padding-top-36[_ngcontent-%COMP%]{padding-top:36px}.margin-bottom-36[_ngcontent-%COMP%]{margin-bottom:36px}.padding-bottom-36[_ngcontent-%COMP%]{padding-bottom:36px}.margin-left-36[_ngcontent-%COMP%]{margin-left:36px}.padding-left-36[_ngcontent-%COMP%]{padding-left:36px}.margin-right-36[_ngcontent-%COMP%]{margin-right:36px}.padding-right-36[_ngcontent-%COMP%]{padding-right:36px}.flex-row[_ngcontent-%COMP%]{display:flex}.flex-col[_ngcontent-%COMP%]{display:flex;flex-direction:column}.justify-content-space-between[_ngcontent-%COMP%]{justify-content:space-between}.justify-content-center[_ngcontent-%COMP%]{justify-content:center}.align-items-center[_ngcontent-%COMP%]{align-items:center}.flex-none[_ngcontent-%COMP%]{flex:none}"]})}}return a})();const fs=(a,r)=>({enabled:a,section:r}),_s=a=>({last:a});function ys(a,r){if(1&a){const n=t.RV6();t.j41(0,"button",7),t.nI1(1,"translate"),t.bIt("click",function(){t.eBV(n);const i=t.XpG(2);return t.Njj(i.openMyRigDetails())}),t.k0s()}if(2&a){const n=t.XpG(2);t.Y8G("showSpinner",n.isLoading)("disabled",n.isLoading)("buttonText",t.bMT(1,3,n.viewDetailsButtonText))}}function Cs(a,r){if(1&a&&t.nrm(0,"nv-app-preference-base",8),2&a){const n=r.$implicit,e=r.index,i=t.XpG(2);t.Y8G("featureReadyState",n)("ngClass",t.eq3(2,_s,e===i.rigItems.length-1))}}function bs(a,r){1&a&&(t.qex(0),t.nrm(1,"nv-app-system-overview-displays"),t.bVm())}function vs(a,r){1&a&&(t.j41(0,"div"),t.nrm(1,"mat-divider",9)(2,"nv-app-legacy-control-panel"),t.k0s())}function Ss(a,r){if(1&a&&(t.j41(0,"div",1)(1,"div",2)(2,"label",3),t.EFF(3),t.nI1(4,"translate"),t.k0s(),t.DNE(5,ys,2,5,"button",4),t.k0s(),t.DNE(6,Cs,1,4,"nv-app-preference-base",5)(7,bs,2,0,"ng-container",6)(8,vs,3,0,"div",6),t.k0s()),2&a){const n=t.XpG();t.Y8G("nvappScrollHighlight",t.l_i(8,fs,n.rigItems&&n.rigItems.length>0&&!n.isLoading,n.pageHighlightSection)),t.R7$(3),t.SpI(" ",t.bMT(4,6,null==n.myRigFeature?null:n.myRigFeature.header)," "),t.R7$(2),t.Y8G("ngIf",null==n.myRigFeature||null==n.myRigFeature.primaryActionButton?null:n.myRigFeature.primaryActionButton.visible),t.R7$(),t.Y8G("ngForOf",n.rigItems),t.R7$(),t.Y8G("ngIf",(null==n.gpuInfo?null:n.gpuInfo.length)>0),t.R7$(),t.Y8G("ngIf",n.controlPanelFeatureEnabled)}}let xs=(()=>{class a{constructor(n,e,i,o,s,l,d,_,C){this.loggingService=n,this.appBarService=e,this.legacyControlPanelService=i,this.telemetryService=o,this.nvcplSystemInfoService=s,this.systemDetailsService=l,this.performanceMeasureService=d,this.hardwareInfoService=_,this.multiDisplaysSupportService=C,this.destroyRef=(0,t.WQX)(t.abz),this.disableTabAnimation=!0,this.selectedTabIndex=0,this.myRigFeature=Jo.PE,this.controlPanelFeatureEnabled=!1,this.isLoading=!1,this.viewDetailsButtonText="system.overview.viewRigDetails",this.gpuInfo=[],this.pageHighlightSection=Et.kA.Overview,this.logger=n.getLogger("nvapp/SystemOverviewComponent"),this.appBarService.setTitle("preferences.system"),this.telemetryService.setScreen(f.f3.System),this.loadingSpinner=this.systemDetailsService.getLoadingSpinner()}ngOnInit(){this.performanceMeasureService.markNvAppPerformanceMarkers([S.mM.NvAppSystemOverviewRouteNavigationEnd,S.mM.NvAppSystemOverviewDataFetchStart],S.fR.SystemOverview),this.getMyRig(),this.getDisplaysInfo(),this.getControlPanelPreference(),this.listenToLoadingSpinner()}ngAfterViewInit(){this.logger.info("Initializing DxVersion"),this.nvcplSystemInfoService.getDxVersion().pipe((0,m.s)(1)).subscribe(g.l,g.l)}openMyRigDetails(){this.systemDetailsService.showMyRigDialog(this.rigItems,f.yP.Overview)}getMyRig(){this.systemDetailsService.getMyRig().pipe((0,h.pQ)(this.destroyRef)).subscribe(n=>{this.performanceMeasureService.markNvAppPerformanceMarkers([S.mM.NvAppSystemOverviewDataFetchEnd,S.mM.NvAppSystemOverviewViewRenderStart],S.fR.SystemOverview),n&&(this.logger.info("My Rig ",n.rigItems),this.rigItems=n.rigItems,this.myRigFeature.header=n.myRigFeatureHeader,this.viewDetailsButtonText=n.viewDetailsButtonText),this.performanceMeasureService.markNvAppPerformanceMarkers([S.mM.NvAppSystemOverviewViewRenderEnd],S.fR.SystemOverview)},n=>{this.performanceMeasureService.markNvAppPerformanceMarkers([S.mM.NvAppSystemOverviewDataFetchEnd,S.mM.NvAppSystemOverviewViewRenderStart,S.mM.NvAppSystemOverviewViewRenderEnd],S.fR.SystemOverview),this.logger.error("Error occurred while fetching my rig",n)})}getControlPanelPreference(){this.legacyControlPanelService.getControlPanelClientInfo().pipe((0,h.pQ)(this.destroyRef)).subscribe(n=>{this.logger.info("Control Panel feature preference ",n),this.controlPanelFeatureEnabled=n?.isClientInstalled},n=>{this.logger.error("Error occurred while fetching control panel feature support",n)})}listenToLoadingSpinner(){this.loadingSpinner.getLoadingSpinner().subscribe(n=>{this.isLoading=n},g.l)}getDisplaysInfo(){this.multiDisplaysSupportService.gpuAndDisplayPhysicalInformation$.pipe((0,m.s)(1)).subscribe(n=>{this.logger.info("GPU Info received"),this.gpuInfo=n?.physicalGpus},g.l)}ngOnDestroy(){this.systemDetailsService.clearLoadingSpinner()}static{this.\u0275fac=function(e){return new(e||a)(t.rXU(v.J6),t.rXU(en.g),t.rXU(kn),t.rXU(Nt.H0),t.rXU(Tn.oY),t.rXU(Ko.j),t.rXU(Qt.M),t.rXU(v.SQ),t.rXU(q.b))}}static{this.\u0275cmp=t.VBU({type:a,selectors:[["nv-app-system-overview"]],decls:1,vars:1,consts:[["class","system-overview-container",3,"nvappScrollHighlight",4,"ngIf"],[1,"system-overview-container",3,"nvappScrollHighlight"],[1,"my-rig-header"],[1,"font-sub1","font-color-primary","text"],["mat-button","","class","font-button2 view-details-btn","nvAppTextButtonSpinner","",3,"showSpinner","disabled","buttonText","click",4,"ngIf"],["class","my-rig-container","tabindex","0",3,"featureReadyState","ngClass",4,"ngFor","ngForOf"],[4,"ngIf"],["mat-button","","nvAppTextButtonSpinner","",1,"font-button2","view-details-btn",3,"click","showSpinner","disabled","buttonText"],["tabindex","0",1,"my-rig-container",3,"featureReadyState","ngClass"],[1,"section-divider"]],template:function(e,i){1&e&&t.DNE(0,Ss,9,11,"div",0),2&e&&t.Y8G("ngIf",i.rigItems&&i.rigItems.length>0)},dependencies:[u.YU,u.Sq,u.bT,U.iV,X.q,N.PW,jt.p,ft.u,Gn.I,as,ms,x.D9],styles:[".system-overview-container[_ngcontent-%COMP%]{display:flex;flex-direction:column;flex:1}.system-overview-container[_ngcontent-%COMP%] .my-rig-container[_ngcontent-%COMP%]{padding-left:var(--system-item-padding);padding-bottom:24px}.system-overview-container[_ngcontent-%COMP%] .last[_ngcontent-%COMP%]{padding-bottom:0}.system-overview-container[_ngcontent-%COMP%] .section-divider[_ngcontent-%COMP%]{margin-top:16px}.system-overview-container[_ngcontent-%COMP%] .my-rig-header[_ngcontent-%COMP%]{display:flex;padding:16px 0;align-items:flex-start}.system-overview-container[_ngcontent-%COMP%] .my-rig-header[_ngcontent-%COMP%] .text[_ngcontent-%COMP%]{flex:1}.system-overview-container[_ngcontent-%COMP%] .my-rig-header[_ngcontent-%COMP%] .view-details-btn[_ngcontent-%COMP%]{height:36px}"]})}}return a})();const Ms=["systemTabGroup"];function Ps(a,r){1&a&&t.nrm(0,"nv-app-page-load-spinner")}function Os(a,r){if(1&a&&(t.qex(0),t.EFF(1),t.nI1(2,"translate"),t.bVm()),2&a){const n=t.XpG(5);t.R7$(),t.SpI(" ",t.bMT(2,1,n.overviewTabTitle)," ")}}function Ds(a,r){1&a&&(t.qex(0),t.EFF(1),t.nI1(2,"translate"),t.bVm()),2&a&&(t.R7$(),t.SpI(" ",t.bMT(2,1,"performance.title")," "))}function ws(a,r){1&a&&(t.qex(0),t.EFF(1),t.nI1(2,"translate"),t.bVm()),2&a&&(t.R7$(),t.SpI(" ",t.bMT(2,1,"system.video.title")," "))}function Is(a,r){1&a&&(t.qex(0),t.EFF(1),t.nI1(2,"translate"),t.bVm()),2&a&&(t.R7$(),t.SpI(" ",t.bMT(2,1,"system.display.title")," "))}function Rs(a,r){if(1&a&&(t.j41(0,"span",10),t.qex(1,8),t.DNE(2,Os,3,3,"ng-container",9)(3,Ds,3,3,"ng-container",9)(4,ws,3,3,"ng-container",9)(5,Is,3,3,"ng-container",9),t.bVm(),t.k0s()),2&a){const n=t.XpG(),e=n.$implicit,i=n.index,o=t.XpG(3);t.Y8G("ngClass",o.selectedTabIndex===i?"font-color-primary":"font-color-secondary"),t.R7$(),t.Y8G("ngSwitch",e),t.R7$(),t.Y8G("ngSwitchCase",o.systemTabs.Overview),t.R7$(),t.Y8G("ngSwitchCase",o.systemTabs.Performance),t.R7$(),t.Y8G("ngSwitchCase",o.systemTabs.Video),t.R7$(),t.Y8G("ngSwitchCase",o.systemTabs.Display)}}function Ts(a,r){1&a&&(t.qex(0),t.j41(1,"div",11),t.nrm(2,"nv-app-system-overview"),t.k0s(),t.bVm())}function ks(a,r){if(1&a&&(t.qex(0),t.j41(1,"div",11),t.nrm(2,"nv-app-performance",12),t.k0s(),t.bVm()),2&a){const n=t.XpG(4);t.R7$(2),t.Y8G("selectedIndex",n.selectedTabIndex)}}function Gs(a,r){1&a&&(t.qex(0),t.j41(1,"div",11),t.nrm(2,"nv-app-video-page"),t.k0s(),t.bVm())}function Fs(a,r){if(1&a&&(t.qex(0),t.j41(1,"div",11),t.nrm(2,"nv-app-displays-page",13),t.k0s(),t.bVm()),2&a){const n=t.XpG(4);t.R7$(2),t.Y8G("isActiveDisplayConnected",n.isActiveDisplayConnected)}}function Es(a,r){if(1&a&&(t.qex(0),t.j41(1,"mat-tab"),t.DNE(2,Rs,6,6,"ng-template",7),t.qex(3,8),t.DNE(4,Ts,3,0,"ng-container",9)(5,ks,3,1,"ng-container",9)(6,Gs,3,0,"ng-container",9)(7,Fs,3,1,"ng-container",9),t.bVm(),t.k0s(),t.bVm()),2&a){const n=r.$implicit,e=t.XpG(3);t.R7$(3),t.Y8G("ngSwitch",n),t.R7$(),t.Y8G("ngSwitchCase",e.systemTabs.Overview),t.R7$(),t.Y8G("ngSwitchCase",e.systemTabs.Performance),t.R7$(),t.Y8G("ngSwitchCase",e.systemTabs.Video),t.R7$(),t.Y8G("ngSwitchCase",e.systemTabs.Display)}}function $s(a,r){if(1&a){const n=t.RV6();t.j41(0,"div",4)(1,"mat-tab-group",5,1),t.bIt("selectedTabChange",function(i){t.eBV(n);const o=t.XpG(2);return t.Njj(o.tabChanged(i))}),t.DNE(3,Es,8,5,"ng-container",6),t.k0s()()}if(2&a){const n=t.XpG(2);t.R7$(),t.Y8G("@.disabled",n.disableTabAnimation)("waitForAction$",n.preActionBeforeTabSwitch$)("tabIndexToCheck",n.displayTabIndex),t.R7$(2),t.Y8G("ngForOf",n.systemTabList)}}function js(a,r){if(1&a&&t.DNE(0,$s,4,4,"div",3),2&a){const n=t.XpG();t.Y8G("ngIf",n.systemTabList.length)}}const Vs=[{path:"",component:(()=>{class a{constructor(n,e,i,o,s,l,d,_,C,w,G,K){this.loggingService=n,this.appBarService=e,this.windowService=i,this.displaysService=o,this.videoService=s,this.pageVisitTelemetryService=l,this.systemUtilService=d,this.hardwareInfoService=_,this.multiDisplaySupportService=C,this.route=w,this.cdr=G,this.appConfig=K,this.hostClass="nv-app-component-wrapper nested-tab-group-component",this.destroyRef=(0,t.WQX)(t.abz),this.disableTabAnimation=!0,this.selectedTabIndex=0,this.systemTabList=[],this.systemTabs=Mt.c,this.isLoading=!1,this.overviewTabTitle="",this.isActiveDisplayConnected=!1,this.videoSupported$=new Y.m(1),this.displaysSupported$=new Y.m(1),this.logger=this.loggingService.getLogger("nvapp/SystemComponent"),this.appBarService.setTitle("preferences.system"),this.loadingSpinner=new nn.k}ngOnInit(){this.setOverviewTabTitle(),this.listenForTabEnteredSystemView(),this.displaysService.refreshState(),this.updateTabSupport(),this.listenToDisplaySelectionChanges(),this.checkDisplaysTabCapability(),this.appConfig?.featureEnablement?.nvSearch?.enabled||this.videoService.initialize(),this.listenForVideoSupport(),this.listenToLoadingSpinner(),this.setPreActionBeforeTabSwitch()}updateActiveTab(){const n=this.route?.snapshot?.params?.activeTab;if(this.logger.info("Selected Tab",this.selectedTabIndex),this.systemUtilService.tabChanged(this.selectedTabIndex),void 0!==n){const e=Number(n),i=this.systemUtilService.getTabIndex(e);if(-1===i)return void this.logger.error("Invalid tab index",e);this.cdr.detectChanges(),this.selectedTabIndex=i,this.systemTabGroup&&(this.systemTabGroup.selectedIndex=i)}}tabChanged(n){this.logger.info(n.index),this.selectedTabIndex=n.index,this.systemUtilService.tabChanged(this.selectedTabIndex),setTimeout(()=>this.windowService.window.dispatchEvent(new Event("resize")))}setPreActionBeforeTabSwitch(){this.displayTabIndex=this.systemUtilService.getTabIndex(Mt.c.Display),this.preActionBeforeTabSwitch$=this.multiDisplaySupportService.saveOnTabChange()}listenForTabEnteredSystemView(){const n=Bn.H.map(e=>this.getTabEntered$(e));(0,Xn.h)(...n).pipe((0,M.M)(e=>{this.pageVisitTelemetryService.setTabChangedForPageEventTelemetry(e)}),(0,h.pQ)(this.destroyRef)).subscribe(g.l,e=>this.logger.error("failed to register for tab entered for page visit event for system tabs",e))}getTabEntered$(n){return this.systemUtilService.tabEntered$(n).pipe((0,P.T)(e=>this.systemUtilService.getSystemViewNameFromSystemTab(n)))}getUnsupportedTabs(n,e){return[n?null:Mt.c.Video,e?null:Mt.c.Display].filter(i=>null!==i)}listenForVideoSupport(){(0,T.zV)([this.videoService.vsrInfo$,this.videoService.hdrInfo$]).pipe((0,M.M)(([n,e])=>{this.videoSupported$.next(n.isSupported||e.isSupported)}),(0,A.W)(n=>(this.videoSupported$.next(!1),this.logger.error("Error fetching Video support:",n),(0,D.of)(null))),(0,h.pQ)(this.destroyRef)).subscribe()}listenToDisplaySelectionChanges(){this.displaysService.deepLinkDisplay.pipe((0,h.pQ)(this.destroyRef)).subscribe(n=>{if(n){this.logger.info("Displays tab selected with deep link",n);const e=this.systemUtilService.getTabIndex(Mt.c.Display);this.selectedTabIndex=e,this.systemTabGroup.selectedIndex=e}},n=>{this.logger.error("Error while listening to display deep link change",n)})}checkDisplaysTabCapability(){this.displaysService.isDisplaySupported$.pipe((0,I.n)(n=>(this.displaysSupported$.next(n),n?this.displaysService.activeDisplayConnected$:(0,D.of)(!1))),(0,h.pQ)(this.destroyRef)).subscribe({next:n=>{this.isActiveDisplayConnected=n},error:n=>{this.logger.error("Error fetching display support",n),this.displaysSupported$.next(!1),this.isActiveDisplayConnected=!1}})}updateTabSupport(){this.loadingSpinner.triggerLoadingIndicator(!0),(0,T.zV)([this.videoSupported$.asObservable(),this.displaysSupported$.asObservable()]).pipe((0,mt.F)((n,e)=>{const[i,o]=n,[s,l]=e;return i===s&&o===l}),(0,h.pQ)(this.destroyRef)).subscribe(([n,e])=>{this.logger.info("Support of tabs",n,e),this.systemTabList=this.systemUtilService.resetTabList(this.getUnsupportedTabs(n,e)),this.loadingSpinner.triggerLoadingIndicator(!1),this.updateActiveTab()},n=>{this.logger.error("Error updating tab support",n),this.systemTabList=this.systemUtilService.resetTabList(this.getUnsupportedTabs(!1,!1)),this.loadingSpinner.triggerLoadingIndicator(!1)})}listenToLoadingSpinner(){this.loadingSpinner.getLoadingSpinner().subscribe(n=>{this.isLoading=n},g.l)}setOverviewTabTitle(){this.hardwareInfoService.getQuadroSystemFlag().pipe((0,h.pQ)(this.destroyRef)).subscribe(n=>{this.overviewTabTitle=n?"system.overview.workstationTitle":"system.overview.geForceTitle"},n=>this.logger.error("Error fetching Quadro system flag",n))}ngOnDestroy(){this.loadingSpinner.clear(),this.systemUtilService.tabChanged(0)}static{this.\u0275fac=function(e){return new(e||a)(t.rXU(v.J6),t.rXU(en.g),t.rXU(v.s7),t.rXU(Q.R),t.rXU(Gt.r),t.rXU(Nn.V),t.rXU(Ln.j),t.rXU(v.SQ),t.rXU(q.b),t.rXU(Ht.nX),t.rXU(t.gRc),t.rXU(an.Vk))}}static{this.\u0275cmp=t.VBU({type:a,selectors:[["nv-app-system"]],viewQuery:function(e,i){if(1&e&&t.GBs(Ms,5),2&e){let o;t.mGM(o=t.lsd())&&(i.systemTabGroup=o.first)}},hostVars:2,hostBindings:function(e,i){2&e&&t.HbH(i.hostClass)},decls:3,vars:2,consts:[["systemPage",""],["systemTabGroup",""],[4,"ngIf","ngIfElse"],["class","system-container",4,"ngIf"],[1,"system-container"],["mat-stretch-tabs","false","nvAppTabChangeGuard","",1,"system-page-tabs","common-tabs",3,"selectedTabChange","waitForAction$","tabIndexToCheck"],[4,"ngFor","ngForOf"],["mat-tab-label",""],[3,"ngSwitch"],[4,"ngSwitchCase"],[1,"font-sub2",3,"ngClass"],[1,"tab-content"],[3,"selectedIndex"],[3,"isActiveDisplayConnected"]],template:function(e,i){if(1&e&&t.DNE(0,Ps,1,0,"nv-app-page-load-spinner",2)(1,js,1,1,"ng-template",null,0,t.C5r),2&e){const o=t.sdS(2);t.Y8G("ngIf",i.isLoading)("ngIfElse",o)}},dependencies:[u.YU,u.Sq,u.bT,u.ux,u.e1,Ft.ES,Ft.mq,Ft.T8,N.PW,zt.Q,Yn,Ge,fo,Qo,xs,x.D9],styles:["[_ngcontent-%COMP%]:root{--rwd-column-count: 4;--rwd-gutter-count: 3 ;--rwd-gutter-size: 8px;--rwd-container-side-spacing: 16px;--rwd-column-size: calc((var(--rwd-container-width) - var(--rwd-sidebar-width) - 2 * 16px - 8px * 3 ) / 4);--rwd-sidebar-width: 0px;--rwd-container-width: 100vw}@media screen and (min-width: 480px){[_ngcontent-%COMP%]:root{--rwd-column-count: 6;--rwd-gutter-count: 5 ;--rwd-column-size: calc((var(--rwd-container-width) - var(--rwd-sidebar-width) - 2 * 16px - 8px * 5 ) / 6)}}@media screen and (min-width: 720px){[_ngcontent-%COMP%]:root{--rwd-column-count: 8;--rwd-gutter-count: 7 ;--rwd-column-size: calc((var(--rwd-container-width) - var(--rwd-sidebar-width) - 2 * 16px - 8px * 7 ) / 8)}}@media screen and (min-width: 960px){[_ngcontent-%COMP%]:root{--rwd-column-count: 12;--rwd-gutter-count: 11 ;--rwd-container-side-spacing: 24px;--rwd-column-size: calc((var(--rwd-container-width) - var(--rwd-sidebar-width) - 2 * 24px - 8px * 11 ) / 12)}}@media screen and (min-width: 1440px){[_ngcontent-%COMP%]:root{--rwd-gutter-size: 16px;--rwd-column-size: calc((var(--rwd-container-width) - var(--rwd-sidebar-width) - 2 * 24px - 16px * 11 ) / 12)}}[_nghost-%COMP%]{--system-item-padding: 16px}.system-container[_ngcontent-%COMP%], .system-page-tabs[_ngcontent-%COMP%]{height:100%;min-height:100%;min-width:100%;width:100%}.system-page-tabs[_ngcontent-%COMP%] .tab-content[_ngcontent-%COMP%]{padding:0 calc(var(--rwd-container-side-spacing) - var(--scrollbar-width)) 0 var(--rwd-container-side-spacing);width:calc(calc(12 * var(--rwd-column-size) + 11 * var(--rwd-gutter-size)));max-width:calc(1440px - var(--rwd-sidebar-width) - 2 * var(--rwd-container-side-spacing))}"]})}}return a})()}];let As=(()=>{class a{static{this.\u0275fac=function(e){return new(e||a)}}static{this.\u0275mod=t.$C({type:a})}static{this.\u0275inj=t.G2t({imports:[Ht.iI.forChild(Vs),Ht.iI]})}}return a})(),Us=(()=>{class a{static{this.\u0275fac=function(e){return new(e||a)}}static{this.\u0275mod=t.$C({type:a})}static{this.\u0275inj=t.G2t({imports:[u.MD,rt.G,(0,v.BU)(),kt]})}}return a})(),Xs=(()=>{class a{static{this.\u0275fac=function(e){return new(e||a)}}static{this.\u0275mod=t.$C({type:a})}static{this.\u0275inj=t.G2t({imports:[rt.G,(0,v.BU)(),As,jn,Vn,An,Un,tn,Us]})}}return a})()}}]);
// SIG // Begin signature block
// SIG // MIIofQYJKoZIhvcNAQcCoIIobjCCKGoCAQExDzANBglg
// SIG // hkgBZQMEAgEFADB3BgorBgEEAYI3AgEEoGkwZzAyBgor
// SIG // BgEEAYI3AgEeMCQCAQEEEBDgyQbOONQRoqMAEEvTUJAC
// SIG // AQACAQACAQACAQACAQAwMTANBglghkgBZQMEAgEFAAQg
// SIG // t05pJwM8XzCDmSIYTw6Q8iGiuUY2KvFWsSNx8EKVfLSg
// SIG // gg20MIIGsDCCBJigAwIBAgIQCK1AsmDSnEyfXs2pvZOu
// SIG // 2TANBgkqhkiG9w0BAQwFADBiMQswCQYDVQQGEwJVUzEV
// SIG // MBMGA1UEChMMRGlnaUNlcnQgSW5jMRkwFwYDVQQLExB3
// SIG // d3cuZGlnaWNlcnQuY29tMSEwHwYDVQQDExhEaWdpQ2Vy
// SIG // dCBUcnVzdGVkIFJvb3QgRzQwHhcNMjEwNDI5MDAwMDAw
// SIG // WhcNMzYwNDI4MjM1OTU5WjBpMQswCQYDVQQGEwJVUzEX
// SIG // MBUGA1UEChMORGlnaUNlcnQsIEluYy4xQTA/BgNVBAMT
// SIG // OERpZ2lDZXJ0IFRydXN0ZWQgRzQgQ29kZSBTaWduaW5n
// SIG // IFJTQTQwOTYgU0hBMzg0IDIwMjEgQ0ExMIICIjANBgkq
// SIG // hkiG9w0BAQEFAAOCAg8AMIICCgKCAgEA1bQvQtAorXi3
// SIG // XdU5WRuxiEL1M4zrPYGXcMW7xIUmMJ+kjmjYXPXrNCQH
// SIG // 4UtP03hD9BfXHtr50tVnGlJPDqFX/IiZwZHMgQM+TXAk
// SIG // ZLON4gh9NH1MgFcSa0OamfLFOx/y78tHWhOmTLMBICXz
// SIG // ENOLsvsI8IrgnQnAZaf6mIBJNYc9URnokCF4RS6hnyzh
// SIG // GMIazMXuk0lwQjKP+8bqHPNlaJGiTUyCEUhSaN4QvRRX
// SIG // XegYE2XFf7JPhSxIpFaENdb5LpyqABXRN/4aBpTCfMjq
// SIG // GzLmysL0p6MDDnSlrzm2q2AS4+jWufcx4dyt5Big2MEj
// SIG // R0ezoQ9uo6ttmAaDG7dqZy3SvUQakhCBj7A7CdfHmzJa
// SIG // wv9qYFSLScGT7eG0XOBv6yb5jNWy+TgQ5urOkfW+0/tv
// SIG // k2E0XLyTRSiDNipmKF+wc86LJiUGsoPUXPYVGUztYuBe
// SIG // M/Lo6OwKp7ADK5GyNnm+960IHnWmZcy740hQ83eRGv7b
// SIG // UKJGyGFYmPV8AhY8gyitOYbs1LcNU9D4R+Z1MI3sMJN2
// SIG // FKZbS110YU0/EpF23r9Yy3IQKUHw1cVtJnZoEUETWJrc
// SIG // JisB9IlNWdt4z4FKPkBHX8mBUHOFECMhWWCKZFTBzCEa
// SIG // 6DgZfGYczXg4RTCZT/9jT0y7qg0IU0F8WD1Hs/q27Iwy
// SIG // CQLMbDwMVhECAwEAAaOCAVkwggFVMBIGA1UdEwEB/wQI
// SIG // MAYBAf8CAQAwHQYDVR0OBBYEFGg34Ou2O/hfEYb7/mF7
// SIG // CIhl9E5CMB8GA1UdIwQYMBaAFOzX44LScV1kTN8uZz/n
// SIG // upiuHA9PMA4GA1UdDwEB/wQEAwIBhjATBgNVHSUEDDAK
// SIG // BggrBgEFBQcDAzB3BggrBgEFBQcBAQRrMGkwJAYIKwYB
// SIG // BQUHMAGGGGh0dHA6Ly9vY3NwLmRpZ2ljZXJ0LmNvbTBB
// SIG // BggrBgEFBQcwAoY1aHR0cDovL2NhY2VydHMuZGlnaWNl
// SIG // cnQuY29tL0RpZ2lDZXJ0VHJ1c3RlZFJvb3RHNC5jcnQw
// SIG // QwYDVR0fBDwwOjA4oDagNIYyaHR0cDovL2NybDMuZGln
// SIG // aWNlcnQuY29tL0RpZ2lDZXJ0VHJ1c3RlZFJvb3RHNC5j
// SIG // cmwwHAYDVR0gBBUwEzAHBgVngQwBAzAIBgZngQwBBAEw
// SIG // DQYJKoZIhvcNAQEMBQADggIBADojRD2NCHbuj7w6mdNW
// SIG // 4AIapfhINPMstuZ0ZveUcrEAyq9sMCcTEp6QRJ9L/Z6j
// SIG // fCbVN7w6XUhtldU/SfQnuxaBRVD9nL22heB2fjdxyyL3
// SIG // WqqQz/WTauPrINHVUHmImoqKwba9oUgYftzYgBoRGRjN
// SIG // YZmBVvbJ43bnxOQbX0P4PpT/djk9ntSZz0rdKOtfJqGV
// SIG // WEjVGv7XJz/9kNF2ht0csGBc8w2o7uCJob054ThO2m67
// SIG // Np375SFTWsPK6Wrxoj7bQ7gzyE84FJKZ9d3OVG3ZXQIU
// SIG // H0AzfAPilbLCIXVzUstG2MQ0HKKlS43Nb3Y3LIU/Gs4m
// SIG // 6Ri+kAewQ3+ViCCCcPDMyu/9KTVcH4k4Vfc3iosJocsL
// SIG // 6TEa/y4ZXDlx4b6cpwoG1iZnt5LmTl/eeqxJzy6kdJKt
// SIG // 2zyknIYf48FWGysj/4+16oh7cGvmoLr9Oj9FpsToFpFS
// SIG // i0HASIRLlk2rREDjjfAVKM7t8RhWByovEMQMCGQ8M4+u
// SIG // KIw8y4+ICw2/O/TOHnuO77Xry7fwdxPm5yg/rBKupS8i
// SIG // bEH5glwVZsxsDsrFhsP2JjMMB0ug0wcCampAMEhLNKhR
// SIG // ILutG4UI4lkNbcoFUCvqShyepf2gpx8GdOfy1lKQ/a+F
// SIG // SCH5Vzu0nAPthkX0tGFuv2jiJmCG6sivqf6UHedjGzqG
// SIG // VnhOMIIG/DCCBOSgAwIBAgIQCZfFbKpZBVOU2anNuL7r
// SIG // VjANBgkqhkiG9w0BAQsFADBpMQswCQYDVQQGEwJVUzEX
// SIG // MBUGA1UEChMORGlnaUNlcnQsIEluYy4xQTA/BgNVBAMT
// SIG // OERpZ2lDZXJ0IFRydXN0ZWQgRzQgQ29kZSBTaWduaW5n
// SIG // IFJTQTQwOTYgU0hBMzg0IDIwMjEgQ0ExMB4XDTIzMDEx
// SIG // MzAwMDAwMFoXDTI2MDExNjIzNTk1OVowgYAxCzAJBgNV
// SIG // BAYTAlVTMRMwEQYDVQQIEwpDYWxpZm9ybmlhMRQwEgYD
// SIG // VQQHEwtTYW50YSBDbGFyYTEbMBkGA1UEChMSTlZJRElB
// SIG // IENvcnBvcmF0aW9uMQwwCgYDVQQLEwMyLUoxGzAZBgNV
// SIG // BAMTEk5WSURJQSBDb3Jwb3JhdGlvbjCCAaIwDQYJKoZI
// SIG // hvcNAQEBBQADggGPADCCAYoCggGBAIiAXRBzCNRy05OZ
// SIG // NUtJguKdJ1R5HNatdvXtn+pWXHg9PfhU9A5ZboWwSPej
// SIG // iZxJn9clYWVpyjPbkkFvaTBLYeHArmzswavs7+bct4df
// SIG // BTBZG8Qmc9kusaaOxNnuUevseGAC5H61QsGOVATdRQfS
// SIG // kfaP7kTBF9wuIat7BXVglPAlZagQTZWA/BA4Vr8GeNVY
// SIG // 5jU2C6F907UM6orsfsVfkBI8HSowD1U/faTS1yMBu1Mx
// SIG // ePUKZosFn2tYE4dUWId/Vv6LKWk30e/63C5Ul9e3eY7x
// SIG // aZ4eC0TqxluMWb2XdvCcfw9dELeI+0suWliFIyCgSf3A
// SIG // Kuq9cXnoMOBoPEeBOr3XWfCCNLxf9RcGxyaNPd1KcTOO
// SIG // ErSJMFpOCnVi5kys2NrTrFMFVZiRC49BidetoT6cHt3Z
// SIG // f+VHR3rqdUbo4xSpuvsfNA4GRYcWI2KvY3T6hBlrgTlr
// SIG // ngfA3ztOn+38KGJavEa7iJ+k/kjjnD47t0qQoRiujBi+
// SIG // q+mv6Hgy/g0VeQIDAQABo4ICBjCCAgIwHwYDVR0jBBgw
// SIG // FoAUaDfg67Y7+F8Rhvv+YXsIiGX0TkIwHQYDVR0OBBYE
// SIG // FL5vQA7WEARmpu0ItwJOm7f48LbRMA4GA1UdDwEB/wQE
// SIG // AwIHgDATBgNVHSUEDDAKBggrBgEFBQcDAzCBtQYDVR0f
// SIG // BIGtMIGqMFOgUaBPhk1odHRwOi8vY3JsMy5kaWdpY2Vy
// SIG // dC5jb20vRGlnaUNlcnRUcnVzdGVkRzRDb2RlU2lnbmlu
// SIG // Z1JTQTQwOTZTSEEzODQyMDIxQ0ExLmNybDBToFGgT4ZN
// SIG // aHR0cDovL2NybDQuZGlnaWNlcnQuY29tL0RpZ2lDZXJ0
// SIG // VHJ1c3RlZEc0Q29kZVNpZ25pbmdSU0E0MDk2U0hBMzg0
// SIG // MjAyMUNBMS5jcmwwPgYDVR0gBDcwNTAzBgZngQwBBAEw
// SIG // KTAnBggrBgEFBQcCARYbaHR0cDovL3d3dy5kaWdpY2Vy
// SIG // dC5jb20vQ1BTMIGUBggrBgEFBQcBAQSBhzCBhDAkBggr
// SIG // BgEFBQcwAYYYaHR0cDovL29jc3AuZGlnaWNlcnQuY29t
// SIG // MFwGCCsGAQUFBzAChlBodHRwOi8vY2FjZXJ0cy5kaWdp
// SIG // Y2VydC5jb20vRGlnaUNlcnRUcnVzdGVkRzRDb2RlU2ln
// SIG // bmluZ1JTQTQwOTZTSEEzODQyMDIxQ0ExLmNydDAMBgNV
// SIG // HRMBAf8EAjAAMA0GCSqGSIb3DQEBCwUAA4ICAQBNa3En
// SIG // raaMqv58RZV1qn0K09tv83qxwHaM6/N40w2fMljnGOxS
// SIG // xR1g0+R26S7XtwpzG+b8LWmWmyJKiZIogVkcfZpchS6B
// SIG // x+9HcUSo7TBBJn4ylcpQzksLOCmT6/DSeIDYucyQiHo8
// SIG // Nq3XkLpkJaDETnCBDulYZ+9pavQT4lNpB6sffbjsDcQ7
// SIG // CZQdImdzyNwd81c56xZc05ufVkronW78r35vwhzuNd88
// SIG // YQXr26fClBEXf3cNvytVupOeHZTy0Od+tPnAPl5744un
// SIG // 0f1MDjiKRne5FqDoo2F4EoeJQuaS6tWcFQg55dOEmOwS
// SIG // E8mweLCWDTTWmZV6x0IGHwagde1S5rkkmxpvAZRUkaD/
// SIG // ZTyxDiHywNi981mFvCnS1gKGd8GpqDuChpKAet8ivgB3
// SIG // 8hVTE/jsstKwQL7HNGxlmk7hyFxkbUNXki2gwJ/CSGaQ
// SIG // qqS3ctjF5Vv8mbtH2f3pK3AFaXOW7wDfjeuqF+yh6UxT
// SIG // ockgH6Ggc4tj+rcrwWhnbgu+JljlBbSKtGiEXMjA9Ccg
// SIG // YsbOIS9T1/FRAOW4KzCaG2FaX5eIhnCqXl79Va2OV8ul
// SIG // IgIbn1XaQQk6RvNPIwZzM8TARUTR9d1edtiuOymxDYm6
// SIG // j16TmoLkXlWUGLj05+yKut6rkqmYCqCJHRHD0T7LXUmw
// SIG // eBMWDQ5e0t8ADV8KGzGCGiEwghodAgEBMH0waTELMAkG
// SIG // A1UEBhMCVVMxFzAVBgNVBAoTDkRpZ2lDZXJ0LCBJbmMu
// SIG // MUEwPwYDVQQDEzhEaWdpQ2VydCBUcnVzdGVkIEc0IENv
// SIG // ZGUgU2lnbmluZyBSU0E0MDk2IFNIQTM4NCAyMDIxIENB
// SIG // MQIQCZfFbKpZBVOU2anNuL7rVjANBglghkgBZQMEAgEF
// SIG // AKB8MBAGCisGAQQBgjcCAQwxAjAAMBkGCSqGSIb3DQEJ
// SIG // AzEMBgorBgEEAYI3AgEEMBwGCisGAQQBgjcCAQsxDjAM
// SIG // BgorBgEEAYI3AgEVMC8GCSqGSIb3DQEJBDEiBCCi9UhK
// SIG // Ki5sES7TIgKOr0/n9OWSY7MHBJ9SzZ2jMffn7zANBgkq
// SIG // hkiG9w0BAQEFAASCAYBif44TQFZfPpU/75i7Icea4n/1
// SIG // r2f7ClrQy1IyorHvTTIBgv8UE2kishRWNDkonjEPFz+X
// SIG // /WrWtLMLiVDgMS2ot9nSptEV1J1wlxNgnesgotzM+GLM
// SIG // fIohi2f08fESsPnnGAAnxa0gaAMvWnYlNSI0eYdXG/MW
// SIG // DEXhOzunmduDvACFGzCRv7AEsXCdlJWNRuw0Xfs0PnHE
// SIG // U08ejZCdoWBV+mXrffJ/4m3irJILnzyFV0IAI/L7pJva
// SIG // pamzJSQI9MUvThIAjda2uIBSue2C6G3PQ9YBM1EzADuB
// SIG // l+y8zApyHIJtmwFB1NY8yktw8mtOUDRJiQGrKbcmfeCR
// SIG // TmdecIja1xcyDs6vBLRDfzu2L7jkUtpoISvh+1l+G5Ek
// SIG // mM3gpAZOx7dURg+HLvTLGRxakllTzAmpX8Y1+NYpbE7i
// SIG // 9p27QtH2raTFjU7iuOdHy89qlLVYJ8/P02vl1VD2LF6g
// SIG // 3hkIHxpsU2GBntiCAd+qnzLjtLaA68x6GEmpuZ7Vmy4/
// SIG // MHmhghd3MIIXcwYKKwYBBAGCNwMDATGCF2MwghdfBgkq
// SIG // hkiG9w0BBwKgghdQMIIXTAIBAzEPMA0GCWCGSAFlAwQC
// SIG // AQUAMHgGCyqGSIb3DQEJEAEEoGkEZzBlAgEBBglghkgB
// SIG // hv1sBwEwMTANBglghkgBZQMEAgEFAAQg1csVRDzWNoBC
// SIG // CeJwpTVlNeRBc9VrONqoyle/bApEvRQCEQCxKEoL9alC
// SIG // JGJIflgu2J5GGA8yMDI1MTAxNTIyMjExNVqgghM6MIIG
// SIG // 7TCCBNWgAwIBAgIQCoDvGEuN8QWC0cR2p5V0aDANBgkq
// SIG // hkiG9w0BAQsFADBpMQswCQYDVQQGEwJVUzEXMBUGA1UE
// SIG // ChMORGlnaUNlcnQsIEluYy4xQTA/BgNVBAMTOERpZ2lD
// SIG // ZXJ0IFRydXN0ZWQgRzQgVGltZVN0YW1waW5nIFJTQTQw
// SIG // OTYgU0hBMjU2IDIwMjUgQ0ExMB4XDTI1MDYwNDAwMDAw
// SIG // MFoXDTM2MDkwMzIzNTk1OVowYzELMAkGA1UEBhMCVVMx
// SIG // FzAVBgNVBAoTDkRpZ2lDZXJ0LCBJbmMuMTswOQYDVQQD
// SIG // EzJEaWdpQ2VydCBTSEEyNTYgUlNBNDA5NiBUaW1lc3Rh
// SIG // bXAgUmVzcG9uZGVyIDIwMjUgMTCCAiIwDQYJKoZIhvcN
// SIG // AQEBBQADggIPADCCAgoCggIBANBGrC0Sxp7Q6q5gVrMr
// SIG // V7pvUf+GcAoB38o3zBlCMGMyqJnfFNZx+wvA69HFTBdw
// SIG // bHwBSOeLpvPnZ8ZN+vo8dE2/pPvOx/Vj8TchTySA2R4Q
// SIG // KpVD7dvNZh6wW2R6kSu9RJt/4QhguSssp3qome7MrxVy
// SIG // fQO9sMx6ZAWjFDYOzDi8SOhPUWlLnh00Cll8pjrUcCV3
// SIG // K3E0zz09ldQ//nBZZREr4h/GI6Dxb2UoyrN0ijtUDVHR
// SIG // XdmncOOMA3CoB/iUSROUINDT98oksouTMYFOnHoRh6+8
// SIG // 6Ltc5zjPKHW5KqCvpSduSwhwUmotuQhcg9tw2YD3w6yS
// SIG // SSu+3qU8DD+nigNJFmt6LAHvH3KSuNLoZLc1Hf2JNMVL
// SIG // 4Q1OpbybpMe46YceNA0LfNsnqcnpJeItK/DhKbPxTTuG
// SIG // oX7wJNdoRORVbPR1VVnDuSeHVZlc4seAO+6d2sC26/PQ
// SIG // PdP51ho1zBp+xUIZkpSFA8vWdoUoHLWnqWU3dCCyFG1r
// SIG // oSrgHjSHlq8xymLnjCbSLZ49kPmk8iyyizNDIXj//cOg
// SIG // rY7rlRyTlaCCfw7aSUROwnu7zER6EaJ+AliL7ojTdS5P
// SIG // WPsWeupWs7NpChUk555K096V1hE0yZIXe+giAwW00aHz
// SIG // rDchIc2bQhpp0IoKRR7YufAkprxMiXAJQ1XCmnCfgPf8
// SIG // +3mnAgMBAAGjggGVMIIBkTAMBgNVHRMBAf8EAjAAMB0G
// SIG // A1UdDgQWBBTkO/zyMe39/dfzkXFjGVBDz2GM6DAfBgNV
// SIG // HSMEGDAWgBTvb1NK6eQGfHrK4pBW9i/USezLTjAOBgNV
// SIG // HQ8BAf8EBAMCB4AwFgYDVR0lAQH/BAwwCgYIKwYBBQUH
// SIG // AwgwgZUGCCsGAQUFBwEBBIGIMIGFMCQGCCsGAQUFBzAB
// SIG // hhhodHRwOi8vb2NzcC5kaWdpY2VydC5jb20wXQYIKwYB
// SIG // BQUHMAKGUWh0dHA6Ly9jYWNlcnRzLmRpZ2ljZXJ0LmNv
// SIG // bS9EaWdpQ2VydFRydXN0ZWRHNFRpbWVTdGFtcGluZ1JT
// SIG // QTQwOTZTSEEyNTYyMDI1Q0ExLmNydDBfBgNVHR8EWDBW
// SIG // MFSgUqBQhk5odHRwOi8vY3JsMy5kaWdpY2VydC5jb20v
// SIG // RGlnaUNlcnRUcnVzdGVkRzRUaW1lU3RhbXBpbmdSU0E0
// SIG // MDk2U0hBMjU2MjAyNUNBMS5jcmwwIAYDVR0gBBkwFzAI
// SIG // BgZngQwBBAIwCwYJYIZIAYb9bAcBMA0GCSqGSIb3DQEB
// SIG // CwUAA4ICAQBlKq3xHCcEua5gQezRCESeY0ByIfjk9iJP
// SIG // 2zWLpQq1b4URGnwWBdEZD9gBq9fNaNmFj6Eh8/YmRDfx
// SIG // T7C0k8FUFqNh+tshgb4O6Lgjg8K8elC4+oWCqnU/ML9l
// SIG // Ffim8/9yJmZSe2F8AQ/UdKFOtj7YMTmqPO9mzskgiC3Q
// SIG // YIUP2S3HQvHG1FDu+WUqW4daIqToXFE/JQ/EABgfZXLW
// SIG // U0ziTN6R3ygQBHMUBaB5bdrPbF6MRYs03h4obEMnxYOX
// SIG // 8VBRKe1uNnzQVTeLni2nHkX/QqvXnNb+YkDFkxUGtMTa
// SIG // iLR9wjxUxu2hECZpqyU1d0IbX6Wq8/gVutDojBIFeRlq
// SIG // AcuEVT0cKsb+zJNEsuEB7O7/cuvTQasnM9AWcIQfVjnz
// SIG // rvwiCZ85EE8LUkqRhoS3Y50OHgaY7T/lwd6UArb+BOVA
// SIG // kg2oOvol/DJgddJ35XTxfUlQ+8Hggt8l2Yv7roancJIF
// SIG // cbojBcxlRcGG0LIhp6GvReQGgMgYxQbV1S3CrWqZzBt1
// SIG // R9xJgKf47CdxVRd/ndUlQ05oxYy2zRWVFjF7mcr4C34M
// SIG // j3ocCVccAvlKV9jEnstrniLvUxxVZE/rptb7IRE2lskK
// SIG // PIJgbaP5t2nGj/ULLi49xTcBZU8atufk+EMF/cWuiC7P
// SIG // OGT75qaL6vdCvHlshtjdNXOCIUjsarfNZzCCBrQwggSc
// SIG // oAMCAQICEA3HrFcF/yGZLkBDIgw6SYYwDQYJKoZIhvcN
// SIG // AQELBQAwYjELMAkGA1UEBhMCVVMxFTATBgNVBAoTDERp
// SIG // Z2lDZXJ0IEluYzEZMBcGA1UECxMQd3d3LmRpZ2ljZXJ0
// SIG // LmNvbTEhMB8GA1UEAxMYRGlnaUNlcnQgVHJ1c3RlZCBS
// SIG // b290IEc0MB4XDTI1MDUwNzAwMDAwMFoXDTM4MDExNDIz
// SIG // NTk1OVowaTELMAkGA1UEBhMCVVMxFzAVBgNVBAoTDkRp
// SIG // Z2lDZXJ0LCBJbmMuMUEwPwYDVQQDEzhEaWdpQ2VydCBU
// SIG // cnVzdGVkIEc0IFRpbWVTdGFtcGluZyBSU0E0MDk2IFNI
// SIG // QTI1NiAyMDI1IENBMTCCAiIwDQYJKoZIhvcNAQEBBQAD
// SIG // ggIPADCCAgoCggIBALR4MdMKmEFyvjxGwBysddujRmh0
// SIG // tFEXnU2tjQ2UtZmWgyxU7UNqEY81FzJsQqr5G7A6c+Gh
// SIG // /qm8Xi4aPCOo2N8S9SLrC6Kbltqn7SWCWgzbNfiR+2fk
// SIG // HUiljNOqnIVD/gG3SYDEAd4dg2dDGpeZGKe+42DFUF0m
// SIG // R/vtLa4+gKPsYfwEu7EEbkC9+0F2w4QJLVSTEG8yAR2C
// SIG // QWIM1iI5PHg62IVwxKSpO0XaF9DPfNBKS7Zazch8NF5v
// SIG // p7eaZ2CVNxpqumzTCNSOxm+SAWSuIr21Qomb+zzQWKhx
// SIG // KTVVgtmUPAW35xUUFREmDrMxSNlr/NsJyUXzdtFUUt4a
// SIG // S4CEeIY8y9IaaGBpPNXKFifinT7zL2gdFpBP9qh8SdLn
// SIG // Eut/GcalNeJQ55IuwnKCgs+nrpuQNfVmUB5KlCX3ZA4x
// SIG // 5HHKS+rqBvKWxdCyQEEGcbLe1b8Aw4wJkhU1JrPsFfxW
// SIG // 1gaou30yZ46t4Y9F20HHfIY4/6vHespYMQmUiote8lad
// SIG // jS/nJ0+k6MvqzfpzPDOy5y6gqztiT96Fv/9bH7mQyogx
// SIG // G9QEPHrPV6/7umw052AkyiLA6tQbZl1KhBtTasySkuJD
// SIG // psZGKdlsjg4u70EwgWbVRSX1Wd4+zoFpp4Ra+MlKM2ba
// SIG // oD6x0VR4RjSpWM8o5a6D8bpfm4CLKczsG7ZrIGNTAgMB
// SIG // AAGjggFdMIIBWTASBgNVHRMBAf8ECDAGAQH/AgEAMB0G
// SIG // A1UdDgQWBBTvb1NK6eQGfHrK4pBW9i/USezLTjAfBgNV
// SIG // HSMEGDAWgBTs1+OC0nFdZEzfLmc/57qYrhwPTzAOBgNV
// SIG // HQ8BAf8EBAMCAYYwEwYDVR0lBAwwCgYIKwYBBQUHAwgw
// SIG // dwYIKwYBBQUHAQEEazBpMCQGCCsGAQUFBzABhhhodHRw
// SIG // Oi8vb2NzcC5kaWdpY2VydC5jb20wQQYIKwYBBQUHMAKG
// SIG // NWh0dHA6Ly9jYWNlcnRzLmRpZ2ljZXJ0LmNvbS9EaWdp
// SIG // Q2VydFRydXN0ZWRSb290RzQuY3J0MEMGA1UdHwQ8MDow
// SIG // OKA2oDSGMmh0dHA6Ly9jcmwzLmRpZ2ljZXJ0LmNvbS9E
// SIG // aWdpQ2VydFRydXN0ZWRSb290RzQuY3JsMCAGA1UdIAQZ
// SIG // MBcwCAYGZ4EMAQQCMAsGCWCGSAGG/WwHATANBgkqhkiG
// SIG // 9w0BAQsFAAOCAgEAF877FoAc/gc9EXZxML2+C8i1NKZ/
// SIG // zdCHxYgaMH9Pw5tcBnPw6O6FTGNpoV2V4wzSUGvI9NAz
// SIG // aoQk97frPBtIj+ZLzdp+yXdhOP4hCFATuNT+ReOPK0mC
// SIG // efSG+tXqGpYZ3essBS3q8nL2UwM+NMvEuBd/2vmdYxDC
// SIG // vwzJv2sRUoKEfJ+nN57mQfQXwcAEGCvRR2qKtntujB71
// SIG // WPYAgwPyWLKu6RnaID/B0ba2H3LUiwDRAXx1Neq9ydOa
// SIG // l95CHfmTnM4I+ZI2rVQfjXQA1WSjjf4J2a7jLzWGNqNX
// SIG // +DF0SQzHU0pTi4dBwp9nEC8EAqoxW6q17r0z0noDjs6+
// SIG // BFo+z7bKSBwZXTRNivYuve3L2oiKNqetRHdqfMTCW/Nm
// SIG // KLJ9M+MtucVGyOxiDf06VXxyKkOirv6o02OoXN4bFzK0
// SIG // vlNMsvhlqgF2puE6FndlENSmE+9JGYxOGLS/D284NHNb
// SIG // oDGcmWXfwXRy4kbu4QFhOm0xJuF2EZAOk5eCkhSxZON3
// SIG // rGlHqhpB/8MluDezooIs8CVnrpHMiD2wL40mm53+/j7t
// SIG // FaxYKIqL0Q4ssd8xHZnIn/7GELH3IdvG2XlM9q7WP/Uw
// SIG // gOkw/HQtyRN62JK4S1C8uw3PdBunvAZapsiI5YKdvlar
// SIG // Evf8EA+8hcpSM9LHJmyrxaFtoza2zNaQ9k+5t1wwggWN
// SIG // MIIEdaADAgECAhAOmxiO+dAt5+/bUOIIQBhaMA0GCSqG
// SIG // SIb3DQEBDAUAMGUxCzAJBgNVBAYTAlVTMRUwEwYDVQQK
// SIG // EwxEaWdpQ2VydCBJbmMxGTAXBgNVBAsTEHd3dy5kaWdp
// SIG // Y2VydC5jb20xJDAiBgNVBAMTG0RpZ2lDZXJ0IEFzc3Vy
// SIG // ZWQgSUQgUm9vdCBDQTAeFw0yMjA4MDEwMDAwMDBaFw0z
// SIG // MTExMDkyMzU5NTlaMGIxCzAJBgNVBAYTAlVTMRUwEwYD
// SIG // VQQKEwxEaWdpQ2VydCBJbmMxGTAXBgNVBAsTEHd3dy5k
// SIG // aWdpY2VydC5jb20xITAfBgNVBAMTGERpZ2lDZXJ0IFRy
// SIG // dXN0ZWQgUm9vdCBHNDCCAiIwDQYJKoZIhvcNAQEBBQAD
// SIG // ggIPADCCAgoCggIBAL/mkHNo3rvkXUo8MCIwaTPswqcl
// SIG // LskhPfKK2FnC4SmnPVirdprNrnsbhA3EMB/zG6Q4FutW
// SIG // xpdtHauyefLKEdLkX9YFPFIPUh/GnhWlfr6fqVcWWVVy
// SIG // r2iTcMKyunWZanMylNEQRBAu34LzB4TmdDttceItDBvu
// SIG // INXJIB1jKS3O7F5OyJP4IWGbNOsFxl7sWxq868nPzaw0
// SIG // QF+xembud8hIqGZXV59UWI4MK7dPpzDZVu7Ke13jrclP
// SIG // XuU15zHL2pNe3I6PgNq2kZhAkHnDeMe2scS1ahg4AxCN
// SIG // 2NQ3pC4FfYj1gj4QkXCrVYJBMtfbBHMqbpEBfCFM1Lyu
// SIG // GwN1XXhm2ToxRJozQL8I11pJpMLmqaBn3aQnvKFPObUR
// SIG // WBf3JFxGj2T3wWmIdph2PVldQnaHiZdpekjw4KISG2aa
// SIG // dMreSx7nDmOu5tTvkpI6nj3cAORFJYm2mkQZK37AlLTS
// SIG // YW3rM9nF30sEAMx9HJXDj/chsrIRt7t/8tWMcCxBYKqx
// SIG // YxhElRp2Yn72gLD76GSmM9GJB+G9t+ZDpBi4pncB4Q+U
// SIG // DCEdslQpJYls5Q5SUUd0viastkF13nqsX40/ybzTQRES
// SIG // W+UQUOsxxcpyFiIJ33xMdT9j7CFfxCBRa2+xq4aLT8LW
// SIG // RV+dIPyhHsXAj6KxfgommfXkaS+YHS312amyHeUbAgMB
// SIG // AAGjggE6MIIBNjAPBgNVHRMBAf8EBTADAQH/MB0GA1Ud
// SIG // DgQWBBTs1+OC0nFdZEzfLmc/57qYrhwPTzAfBgNVHSME
// SIG // GDAWgBRF66Kv9JLLgjEtUYunpyGd823IDzAOBgNVHQ8B
// SIG // Af8EBAMCAYYweQYIKwYBBQUHAQEEbTBrMCQGCCsGAQUF
// SIG // BzABhhhodHRwOi8vb2NzcC5kaWdpY2VydC5jb20wQwYI
// SIG // KwYBBQUHMAKGN2h0dHA6Ly9jYWNlcnRzLmRpZ2ljZXJ0
// SIG // LmNvbS9EaWdpQ2VydEFzc3VyZWRJRFJvb3RDQS5jcnQw
// SIG // RQYDVR0fBD4wPDA6oDigNoY0aHR0cDovL2NybDMuZGln
// SIG // aWNlcnQuY29tL0RpZ2lDZXJ0QXNzdXJlZElEUm9vdENB
// SIG // LmNybDARBgNVHSAECjAIMAYGBFUdIAAwDQYJKoZIhvcN
// SIG // AQEMBQADggEBAHCgv0NcVec4X6CjdBs9thbX979XB72a
// SIG // rKGHLOyFXqkauyL4hxppVCLtpIh3bb0aFPQTSnovLbc4
// SIG // 7/T/gLn4offyct4kvFIDyE7QKt76LVbP+fT3rDB6mouy
// SIG // XtTP0UNEm0Mh65ZyoUi0mcudT6cGAxN3J0TU53/oWajw
// SIG // vy8LpunyNDzs9wPHh6jSTEAZNUZqaVSwuKFWjuyk1T3o
// SIG // sdz9HNj0d1pcVIxv76FQPfx2CWiEn2/K2yCNNWAcAgPL
// SIG // ILCsWKAOQGPFmCLBsln1VWvPJ6tsds5vIy30fnFqI2si
// SIG // /xK4VC0nftg62fC2h5b9W9FcrBjDTZ9ztwGpn1eqXiji
// SIG // uZQxggN8MIIDeAIBATB9MGkxCzAJBgNVBAYTAlVTMRcw
// SIG // FQYDVQQKEw5EaWdpQ2VydCwgSW5jLjFBMD8GA1UEAxM4
// SIG // RGlnaUNlcnQgVHJ1c3RlZCBHNCBUaW1lU3RhbXBpbmcg
// SIG // UlNBNDA5NiBTSEEyNTYgMjAyNSBDQTECEAqA7xhLjfEF
// SIG // gtHEdqeVdGgwDQYJYIZIAWUDBAIBBQCggdEwGgYJKoZI
// SIG // hvcNAQkDMQ0GCyqGSIb3DQEJEAEEMBwGCSqGSIb3DQEJ
// SIG // BTEPFw0yNTEwMTUyMjIxMTVaMCsGCyqGSIb3DQEJEAIM
// SIG // MRwwGjAYMBYEFN1iMKyGCi0wa9o4sWh5UjAH+0F+MC8G
// SIG // CSqGSIb3DQEJBDEiBCAq9WbSv3MhgF3aM5DihucX8r+p
// SIG // vFFqpDki6Diio4fO2DA3BgsqhkiG9w0BCRACLzEoMCYw
// SIG // JDAiBCBKoD+iLNdchMVck4+CjmdrnK7Ksz/jbSaaozTx
// SIG // RhEKMzANBgkqhkiG9w0BAQEFAASCAgASQR5QoCpGrXJO
// SIG // RMf2sC/gM5LiKFAMRdr7XxeLT9LdUOhaPVrB6llwPBiU
// SIG // GpwTw40NSpOGs/4Yg0OyMBJ9UFd9LwRiNp5awMNfrXyc
// SIG // 0f9sy2W62EMD0CJHJXSYlxYYtvMvQUWETmV03F+giT9X
// SIG // dVJYV7X05jIzTpCrkLBp2PGDjhzxQBSn3Oy5Z1m9wEBW
// SIG // DdQYeH4Uzm9trrHnfDcoDlckhTVDEeQkSbIq/20u/4n2
// SIG // GM8yyJZ26N5zA+yy0l0I/mXP8MMH1UlDnQ2ubulkZole
// SIG // AVQyVlXp46VX9msTLjdYrdUoKnG8vJkyt2ya+kmdZLXC
// SIG // MpFDkyiH4EwwqxOgmKm0ud/5gxK9XkYs4qskuBo5AmRN
// SIG // eg5p1WnRQRNnbWkrgjPSFntTWc/2xSeEbD1twUolEcAF
// SIG // ZV/3UP1i+ClgDPHRSbCYWV7NeRORePOewrPBEQQ+U2gR
// SIG // jS7wgtNRU3Rz2YkvLCeYAXFuJL6w3hB0Ys9j/fX98x6K
// SIG // jcgGjDciXl4p0ckoGHW2BENBqxXYVemVG+ZRSz5NUpw5
// SIG // pT092n/SIUK9yLU8p4Wk3iyEuCwKYEcsEtFo2t4OrSCp
// SIG // zuB2t8QNiSHOWrWmKTCG0faV15RlqwHEylig1Uq7sKcb
// SIG // wiRi7hSmzWdeuvhAjYugEWxg3C3Iob1CmjB4sW7qmdVr
// SIG // n/91+eCxEA==
// SIG // End signature block