@mxtommy/kip 3.10.0-beta.35 → 3.10.0-beta.36

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@mxtommy/kip",
3
- "version": "3.10.0-beta.35",
3
+ "version": "3.10.0-beta.36",
4
4
  "description": "An advanced and versatile marine instrumentation package to display Signal K data.",
5
5
  "license": "MIT",
6
6
  "author": {
package/plugin/index.js CHANGED
@@ -51,6 +51,7 @@ exports.default = (server) => {
51
51
  }
52
52
  function getAvailableDisplays() {
53
53
  const fullPath = server.getSelfPath('displays');
54
+ server.debug(`getAvailableDisplays: fullPath=${fullPath}`);
54
55
  return server.getPath(fullPath);
55
56
  }
56
57
  function pathToDotNotation(path) {
@@ -1,4 +1,4 @@
1
- import{a as ve,b as Ye,c as Ho,d as Zo,e as zo,f as Jt,g as $t,h as Xo,i as Ko,j as Jo,k as $o}from"./chunk-QXMATZB6.js";import{a as Wo,b as Uo,c as bt,d as qo,e as J,f as Qo,g as Yo,h as wt,i as se,j as Qe,l as Ct}from"./chunk-2YGPLTEW.js";import{a as Ro,d as jo}from"./chunk-LKF7CNOE.js";import{b as At}from"./chunk-ARVJVELO.js";import{a as Lo,b as No}from"./chunk-MZURT7UO.js";import{B as L,C as le,F as K,G as Ce,b as no,g as po,h as wo,i as Eo,j as ko,k as pe,l as ue,n as Go,o as ge,p as fe,q as he,r as We,s as ae,u as V,v as ft,w as Bo,x as ht,z as Vo}from"./chunk-SPUZNRYQ.js";import{A as be,B as z,C as Fo,D as Oo,E as qe,F as Kt,G as ut,H as B,J as gt,K as X,L as W,a as Ji,f as eo,g as to,i as io,j as oo,k as Zt,l as j,n as H,q as O,r as Z,s as Io,t as Do,u as zt,v as Po,w as re,x as Xt,y as pt,z as Ue}from"./chunk-4MSEQKGR.js";import{b as fo,f as ho,g as bo,h as _o,i as gi,j as Mo,m as yo,n as So,o as To,s as xo}from"./chunk-27I36ZYA.js";import{$b as Ve,Ab as Fe,Bb as Oe,Bd as ui,C as mi,Cc as Wt,Cd as Qt,Dc as Ki,E as tt,Ed as Yt,F as Ee,Fa as s,Fb as oe,Ga as Oi,Gb as Be,Gd as ne,Hb as U,Hc as Ut,Hd as F,I as Gi,Ia as Bi,Ib as st,Id as Y,J as Dt,Jb as ye,Jc as $i,K as it,Kb as r,La as Vi,Lb as x,Mb as q,Md as Te,N as Ii,Nb as dt,Nd as Re,Oa as _,Oc as Ne,P as Di,Pa as De,Pb as Vt,Qa as Ke,Qb as Lt,Ra as Li,Rb as Nt,Sa as Ni,Td as jt,Ua as Pe,Ud as uo,V as ot,Va as Ri,Vb as Se,Vd as ee,W as Pt,Wa as ce,Wd as Ht,Xa as Ot,Xb as St,Xd as Ae,Ya as Wi,Yb as Tt,Z as Pi,Zd as go,_d as te,a as we,ab as $,ac as Le,b as $e,ba as Ft,bb as p,ca as ke,cb as u,da as Ge,db as G,dc as ji,ea as de,eb as Bt,ec as Hi,ed as ao,f as N,fb as S,fc as Rt,fd as ro,fe as Co,g as It,ga as A,gb as T,gd as lo,ge as vo,hb as m,i as si,ia as Fi,ib as a,ic as Zi,j as _t,ja as M,jb as n,jc as Q,ka as y,kb as b,kc as f,l as Ei,lb as Ai,ld as so,mb as pi,na as nt,nd as co,ob as Ui,oc as ct,pa as Ie,pb as qi,pd as mo,q as di,qb as Qi,qc as R,qd as qt,ra as P,rb as D,sb as Yi,tb as v,u as ci,ua as at,vb as h,w as et,wa as Xe,wb as rt,xb as lt,xd as xt,yb as Mt,yc as zi,yd as mt,z as ki,zb as yt,zc as Xi,zd as Ao}from"./chunk-PB7HT3XU.js";var Bn=["*"];var Vn=new de("MAT_CARD_CONFIG"),Tl=(()=>{class o{appearance;constructor(){let e=A(Vn,{optional:!0});this.appearance=e?.appearance||"raised"}static \u0275fac=function(i){return new(i||o)};static \u0275cmp=_({type:o,selectors:[["mat-card"]],hostAttrs:[1,"mat-mdc-card","mdc-card"],hostVars:8,hostBindings:function(i,t){i&2&&U("mat-mdc-card-outlined",t.appearance==="outlined")("mdc-card--outlined",t.appearance==="outlined")("mat-mdc-card-filled",t.appearance==="filled")("mdc-card--filled",t.appearance==="filled")},inputs:{appearance:"appearance"},exportAs:["matCard"],ngContentSelectors:Bn,decls:1,vars:0,template:function(i,t){i&1&&(rt(),lt(0))},styles:[`.mat-mdc-card{display:flex;flex-direction:column;box-sizing:border-box;position:relative;border-style:solid;border-width:0;background-color:var(--mat-card-elevated-container-color, var(--mat-sys-surface-container-low));border-color:var(--mat-card-elevated-container-color, var(--mat-sys-surface-container-low));border-radius:var(--mat-card-elevated-container-shape, var(--mat-sys-corner-medium));box-shadow:var(--mat-card-elevated-container-elevation, var(--mat-sys-level1))}.mat-mdc-card::after{position:absolute;top:0;left:0;width:100%;height:100%;border:solid 1px rgba(0,0,0,0);content:"";display:block;pointer-events:none;box-sizing:border-box;border-radius:var(--mat-card-elevated-container-shape, var(--mat-sys-corner-medium))}.mat-mdc-card-outlined{background-color:var(--mat-card-outlined-container-color, var(--mat-sys-surface));border-radius:var(--mat-card-outlined-container-shape, var(--mat-sys-corner-medium));border-width:var(--mat-card-outlined-outline-width, 1px);border-color:var(--mat-card-outlined-outline-color, var(--mat-sys-outline-variant));box-shadow:var(--mat-card-outlined-container-elevation, var(--mat-sys-level0))}.mat-mdc-card-outlined::after{border:none}.mat-mdc-card-filled{background-color:var(--mat-card-filled-container-color, var(--mat-sys-surface-container-highest));border-radius:var(--mat-card-filled-container-shape, var(--mat-sys-corner-medium));box-shadow:var(--mat-card-filled-container-elevation, var(--mat-sys-level0))}.mdc-card__media{position:relative;box-sizing:border-box;background-repeat:no-repeat;background-position:center;background-size:cover}.mdc-card__media::before{display:block;content:""}.mdc-card__media:first-child{border-top-left-radius:inherit;border-top-right-radius:inherit}.mdc-card__media:last-child{border-bottom-left-radius:inherit;border-bottom-right-radius:inherit}.mat-mdc-card-actions{display:flex;flex-direction:row;align-items:center;box-sizing:border-box;min-height:52px;padding:8px}.mat-mdc-card-title{font-family:var(--mat-card-title-text-font, var(--mat-sys-title-large-font));line-height:var(--mat-card-title-text-line-height, var(--mat-sys-title-large-line-height));font-size:var(--mat-card-title-text-size, var(--mat-sys-title-large-size));letter-spacing:var(--mat-card-title-text-tracking, var(--mat-sys-title-large-tracking));font-weight:var(--mat-card-title-text-weight, var(--mat-sys-title-large-weight))}.mat-mdc-card-subtitle{color:var(--mat-card-subtitle-text-color, var(--mat-sys-on-surface));font-family:var(--mat-card-subtitle-text-font, var(--mat-sys-title-medium-font));line-height:var(--mat-card-subtitle-text-line-height, var(--mat-sys-title-medium-line-height));font-size:var(--mat-card-subtitle-text-size, var(--mat-sys-title-medium-size));letter-spacing:var(--mat-card-subtitle-text-tracking, var(--mat-sys-title-medium-tracking));font-weight:var(--mat-card-subtitle-text-weight, var(--mat-sys-title-medium-weight))}.mat-mdc-card-title,.mat-mdc-card-subtitle{display:block;margin:0}.mat-mdc-card-avatar~.mat-mdc-card-header-text .mat-mdc-card-title,.mat-mdc-card-avatar~.mat-mdc-card-header-text .mat-mdc-card-subtitle{padding:16px 16px 0}.mat-mdc-card-header{display:flex;padding:16px 16px 0}.mat-mdc-card-content{display:block;padding:0 16px}.mat-mdc-card-content:first-child{padding-top:16px}.mat-mdc-card-content:last-child{padding-bottom:16px}.mat-mdc-card-title-group{display:flex;justify-content:space-between;width:100%}.mat-mdc-card-avatar{height:40px;width:40px;border-radius:50%;flex-shrink:0;margin-bottom:16px;object-fit:cover}.mat-mdc-card-avatar~.mat-mdc-card-header-text .mat-mdc-card-subtitle,.mat-mdc-card-avatar~.mat-mdc-card-header-text .mat-mdc-card-title{line-height:normal}.mat-mdc-card-sm-image{width:80px;height:80px}.mat-mdc-card-md-image{width:112px;height:112px}.mat-mdc-card-lg-image{width:152px;height:152px}.mat-mdc-card-xl-image{width:240px;height:240px}.mat-mdc-card-subtitle~.mat-mdc-card-title,.mat-mdc-card-title~.mat-mdc-card-subtitle,.mat-mdc-card-header .mat-mdc-card-header-text .mat-mdc-card-title,.mat-mdc-card-header .mat-mdc-card-header-text .mat-mdc-card-subtitle,.mat-mdc-card-title-group .mat-mdc-card-title,.mat-mdc-card-title-group .mat-mdc-card-subtitle{padding-top:0}.mat-mdc-card-content>:last-child:not(.mat-mdc-card-footer){margin-bottom:0}.mat-mdc-card-actions-align-end{justify-content:flex-end}
1
+ import{a as ve,b as Ye,c as Ho,d as Zo,e as zo,f as Jt,g as $t,h as Xo,i as Ko,j as Jo,k as $o}from"./chunk-QXMATZB6.js";import{a as Wo,b as Uo,c as bt,d as qo,e as J,f as Qo,g as Yo,h as wt,i as se,j as Qe,l as Ct}from"./chunk-2YGPLTEW.js";import{a as Ro,d as jo}from"./chunk-LKF7CNOE.js";import{b as At}from"./chunk-EVQE5STK.js";import{a as Lo,b as No}from"./chunk-MZURT7UO.js";import{B as L,C as le,F as K,G as Ce,b as no,g as po,h as wo,i as Eo,j as ko,k as pe,l as ue,n as Go,o as ge,p as fe,q as he,r as We,s as ae,u as V,v as ft,w as Bo,x as ht,z as Vo}from"./chunk-SPUZNRYQ.js";import{A as be,B as z,C as Fo,D as Oo,E as qe,F as Kt,G as ut,H as B,J as gt,K as X,L as W,a as Ji,f as eo,g as to,i as io,j as oo,k as Zt,l as j,n as H,q as O,r as Z,s as Io,t as Do,u as zt,v as Po,w as re,x as Xt,y as pt,z as Ue}from"./chunk-4MSEQKGR.js";import{b as fo,f as ho,g as bo,h as _o,i as gi,j as Mo,m as yo,n as So,o as To,s as xo}from"./chunk-27I36ZYA.js";import{$b as Ve,Ab as Fe,Bb as Oe,Bd as ui,C as mi,Cc as Wt,Cd as Qt,Dc as Ki,E as tt,Ed as Yt,F as Ee,Fa as s,Fb as oe,Ga as Oi,Gb as Be,Gd as ne,Hb as U,Hc as Ut,Hd as F,I as Gi,Ia as Bi,Ib as st,Id as Y,J as Dt,Jb as ye,Jc as $i,K as it,Kb as r,La as Vi,Lb as x,Mb as q,Md as Te,N as Ii,Nb as dt,Nd as Re,Oa as _,Oc as Ne,P as Di,Pa as De,Pb as Vt,Qa as Ke,Qb as Lt,Ra as Li,Rb as Nt,Sa as Ni,Td as jt,Ua as Pe,Ud as uo,V as ot,Va as Ri,Vb as Se,Vd as ee,W as Pt,Wa as ce,Wd as Ht,Xa as Ot,Xb as St,Xd as Ae,Ya as Wi,Yb as Tt,Z as Pi,Zd as go,_d as te,a as we,ab as $,ac as Le,b as $e,ba as Ft,bb as p,ca as ke,cb as u,da as Ge,db as G,dc as ji,ea as de,eb as Bt,ec as Hi,ed as ao,f as N,fb as S,fc as Rt,fd as ro,fe as Co,g as It,ga as A,gb as T,gd as lo,ge as vo,hb as m,i as si,ia as Fi,ib as a,ic as Zi,j as _t,ja as M,jb as n,jc as Q,ka as y,kb as b,kc as f,l as Ei,lb as Ai,ld as so,mb as pi,na as nt,nd as co,ob as Ui,oc as ct,pa as Ie,pb as qi,pd as mo,q as di,qb as Qi,qc as R,qd as qt,ra as P,rb as D,sb as Yi,tb as v,u as ci,ua as at,vb as h,w as et,wa as Xe,wb as rt,xb as lt,xd as xt,yb as Mt,yc as zi,yd as mt,z as ki,zb as yt,zc as Xi,zd as Ao}from"./chunk-PB7HT3XU.js";var Bn=["*"];var Vn=new de("MAT_CARD_CONFIG"),Tl=(()=>{class o{appearance;constructor(){let e=A(Vn,{optional:!0});this.appearance=e?.appearance||"raised"}static \u0275fac=function(i){return new(i||o)};static \u0275cmp=_({type:o,selectors:[["mat-card"]],hostAttrs:[1,"mat-mdc-card","mdc-card"],hostVars:8,hostBindings:function(i,t){i&2&&U("mat-mdc-card-outlined",t.appearance==="outlined")("mdc-card--outlined",t.appearance==="outlined")("mat-mdc-card-filled",t.appearance==="filled")("mdc-card--filled",t.appearance==="filled")},inputs:{appearance:"appearance"},exportAs:["matCard"],ngContentSelectors:Bn,decls:1,vars:0,template:function(i,t){i&1&&(rt(),lt(0))},styles:[`.mat-mdc-card{display:flex;flex-direction:column;box-sizing:border-box;position:relative;border-style:solid;border-width:0;background-color:var(--mat-card-elevated-container-color, var(--mat-sys-surface-container-low));border-color:var(--mat-card-elevated-container-color, var(--mat-sys-surface-container-low));border-radius:var(--mat-card-elevated-container-shape, var(--mat-sys-corner-medium));box-shadow:var(--mat-card-elevated-container-elevation, var(--mat-sys-level1))}.mat-mdc-card::after{position:absolute;top:0;left:0;width:100%;height:100%;border:solid 1px rgba(0,0,0,0);content:"";display:block;pointer-events:none;box-sizing:border-box;border-radius:var(--mat-card-elevated-container-shape, var(--mat-sys-corner-medium))}.mat-mdc-card-outlined{background-color:var(--mat-card-outlined-container-color, var(--mat-sys-surface));border-radius:var(--mat-card-outlined-container-shape, var(--mat-sys-corner-medium));border-width:var(--mat-card-outlined-outline-width, 1px);border-color:var(--mat-card-outlined-outline-color, var(--mat-sys-outline-variant));box-shadow:var(--mat-card-outlined-container-elevation, var(--mat-sys-level0))}.mat-mdc-card-outlined::after{border:none}.mat-mdc-card-filled{background-color:var(--mat-card-filled-container-color, var(--mat-sys-surface-container-highest));border-radius:var(--mat-card-filled-container-shape, var(--mat-sys-corner-medium));box-shadow:var(--mat-card-filled-container-elevation, var(--mat-sys-level0))}.mdc-card__media{position:relative;box-sizing:border-box;background-repeat:no-repeat;background-position:center;background-size:cover}.mdc-card__media::before{display:block;content:""}.mdc-card__media:first-child{border-top-left-radius:inherit;border-top-right-radius:inherit}.mdc-card__media:last-child{border-bottom-left-radius:inherit;border-bottom-right-radius:inherit}.mat-mdc-card-actions{display:flex;flex-direction:row;align-items:center;box-sizing:border-box;min-height:52px;padding:8px}.mat-mdc-card-title{font-family:var(--mat-card-title-text-font, var(--mat-sys-title-large-font));line-height:var(--mat-card-title-text-line-height, var(--mat-sys-title-large-line-height));font-size:var(--mat-card-title-text-size, var(--mat-sys-title-large-size));letter-spacing:var(--mat-card-title-text-tracking, var(--mat-sys-title-large-tracking));font-weight:var(--mat-card-title-text-weight, var(--mat-sys-title-large-weight))}.mat-mdc-card-subtitle{color:var(--mat-card-subtitle-text-color, var(--mat-sys-on-surface));font-family:var(--mat-card-subtitle-text-font, var(--mat-sys-title-medium-font));line-height:var(--mat-card-subtitle-text-line-height, var(--mat-sys-title-medium-line-height));font-size:var(--mat-card-subtitle-text-size, var(--mat-sys-title-medium-size));letter-spacing:var(--mat-card-subtitle-text-tracking, var(--mat-sys-title-medium-tracking));font-weight:var(--mat-card-subtitle-text-weight, var(--mat-sys-title-medium-weight))}.mat-mdc-card-title,.mat-mdc-card-subtitle{display:block;margin:0}.mat-mdc-card-avatar~.mat-mdc-card-header-text .mat-mdc-card-title,.mat-mdc-card-avatar~.mat-mdc-card-header-text .mat-mdc-card-subtitle{padding:16px 16px 0}.mat-mdc-card-header{display:flex;padding:16px 16px 0}.mat-mdc-card-content{display:block;padding:0 16px}.mat-mdc-card-content:first-child{padding-top:16px}.mat-mdc-card-content:last-child{padding-bottom:16px}.mat-mdc-card-title-group{display:flex;justify-content:space-between;width:100%}.mat-mdc-card-avatar{height:40px;width:40px;border-radius:50%;flex-shrink:0;margin-bottom:16px;object-fit:cover}.mat-mdc-card-avatar~.mat-mdc-card-header-text .mat-mdc-card-subtitle,.mat-mdc-card-avatar~.mat-mdc-card-header-text .mat-mdc-card-title{line-height:normal}.mat-mdc-card-sm-image{width:80px;height:80px}.mat-mdc-card-md-image{width:112px;height:112px}.mat-mdc-card-lg-image{width:152px;height:152px}.mat-mdc-card-xl-image{width:240px;height:240px}.mat-mdc-card-subtitle~.mat-mdc-card-title,.mat-mdc-card-title~.mat-mdc-card-subtitle,.mat-mdc-card-header .mat-mdc-card-header-text .mat-mdc-card-title,.mat-mdc-card-header .mat-mdc-card-header-text .mat-mdc-card-subtitle,.mat-mdc-card-title-group .mat-mdc-card-title,.mat-mdc-card-title-group .mat-mdc-card-subtitle{padding-top:0}.mat-mdc-card-content>:last-child:not(.mat-mdc-card-footer){margin-bottom:0}.mat-mdc-card-actions-align-end{justify-content:flex-end}
2
2
  `],encapsulation:2,changeDetection:0})}return o})();var ei=(()=>{class o{static \u0275fac=function(i){return new(i||o)};static \u0275mod=De({type:o});static \u0275inj=Ge({imports:[ne,ne]})}return o})();function Ln(o,d){if(o&1&&(a(0,"p"),r(1),n()),o&2){let e=h();ye(`large-icon-tile-label${e.compact()?" compact":""}`),s(),x(e.label())}}function Nn(o,d){o&1&&b(0,"div",3)}var Pl=(()=>{class o{svgIcon=f.required();iconSize=f.required();label=f.required();iconOnly=f(!1);compact=f(!1);active=f(!1);static \u0275fac=function(i){return new(i||o)};static \u0275cmp=_({type:o,selectors:[["tile-large-icon"]],inputs:{svgIcon:[1,"svgIcon"],iconSize:[1,"iconSize"],label:[1,"label"],iconOnly:[1,"iconOnly"],compact:[1,"compact"],active:[1,"active"]},decls:4,vars:11,consts:[["matRipple",""],["aria-hidden","false",3,"svgIcon"],[3,"class"],[1,"active-accent-bar"]],template:function(i,t){i&1&&(a(0,"div",0),b(1,"mat-icon",1),p(2,Ln,2,3,"p",2),p(3,Nn,1,0,"div",3),n()),i&2&&(ye(`${t.compact()?"icon-container-compact":"icon-container"}`),U("active-container-accent",t.active()),s(),Be("width",t.iconSize(),"px")("height",t.iconSize(),"px"),m("svgIcon",t.svgIcon()),s(),u(t.iconOnly()?-1:2),s(),u(t.active()?3:-1))},dependencies:[Y,F,ei,Ht,jt],styles:["[_nghost-%COMP%]{display:block;width:100%}.icon-container[_ngcontent-%COMP%]{display:block;text-align:center;-webkit-tap-highlight-color:rgba(0,0,0,0);padding:10px 5px 15px;border-radius:7px;background-color:var(--mat-sys-surface-container);border-color:.2s ease;border:2px solid transparent}.icon-container[_ngcontent-%COMP%]:hover{border:2px solid var(--mat-sys-outline-variant);cursor:pointer}.icon-container[_ngcontent-%COMP%]:focus-visible{background-color:var(--mat-sys-surface-container-high);outline:-webkit-focus-ring-color auto 0px}.icon-container-compact[_ngcontent-%COMP%]{display:block;text-align:center;-webkit-tap-highlight-color:rgba(0,0,0,0);cursor:pointer;padding:5px;border-radius:7px;border:1px solid var(--mat-sys-outline-variant)}.icon-container-compact[_ngcontent-%COMP%]:hover{background-color:var(--mat-sys-inverse-on-surface);border:1px solid var(--mat-sys-primary);cursor:pointer}.icon-container-compact[_ngcontent-%COMP%]:focus-visible{background-color:var(--mat-sys-surface-bright);outline:-webkit-focus-ring-color auto 0px}.large-icon-tile-label[_ngcontent-%COMP%]{color:var(--mat-sys-outline);font-size:1.1em;margin:0}.compact[_ngcontent-%COMP%]{font-size:12px;margin:0}.active-container-accent[_ngcontent-%COMP%]{border:1px solid var(--mat-sys-tertiary);pointer-events:none;background-color:var(--mat-sys-on-tertiary)}.active-container-accent[_ngcontent-%COMP%] .large-icon-tile-label[_ngcontent-%COMP%]{font-weight:700}.active-accent-bar[_ngcontent-%COMP%]{position:absolute;top:0;bottom:0;right:0;width:7px;background:var(--mat-sys-tertiary);box-shadow:0 0 10px 0 var(--mat-sys-tertiary)}"]})}return o})();var Vl=(()=>{class o{isChromeOnMac;static DEBUG=!1;static _instanceCounter=0;_instanceId;swipeMinDistance=f(30);swipeMaxDuration=f(600);longPressMs=f(500);doubleTapInterval=f(300);tapSlop=f(20);pressMoveSlop=f(10);_swipeMinDistance=30;_swipeMaxDuration=600;_longPressMs=500;_doubleTapInterval=300;_tapSlop=20;_pressMoveSlop=10;swipeleft=Q();swiperight=Q();swipeup=Q();swipedown=Q();press=Q();doubletap=Q();zone=A(Ot);destroyRef=A(Ie);host=A(Xe);pointerId=null;startX=0;startY=0;startTime=0;tracking=!1;longPressTimer=null;pressFired=!1;cancelLongpressHandlers=[];lastTapTime=0;lastTapX=0;lastTapY=0;currentPointerType=null;lastTapUpTime=0;lastTapUpX=0;lastTapUpY=0;potentialDoubleTap=!1;constructor(){this.isChromeOnMac=(()=>{let e=navigator.userAgent,i=navigator.platform;return/Chrome\//.test(e)&&/Mac/.test(i)&&!/Edg\//.test(e)&&!/OPR\//.test(e)})(),this._instanceId=++o._instanceCounter,this.debug("GestureDirective instance created",{instanceId:this._instanceId}),this.zone.runOutsideAngular(()=>{let e=this.host.nativeElement;e.style.touchAction||(e.style.touchAction="none","webkitTouchCallout"in e.style&&(e.style.webkitTouchCallout="none")),e.addEventListener("pointerdown",this.onPointerDown,{passive:!1}),e.addEventListener("pointermove",this.onPointerMove,{passive:!0}),e.addEventListener("pointerup",this.onPointerUp,{passive:!0}),e.addEventListener("pointercancel",this.onPointerCancel,{passive:!0}),e.addEventListener("lostpointercapture",this.onPointerCancel,{passive:!0}),e.addEventListener("dblclick",this.onNativeDblClick,{passive:!0}),this.destroyRef.onDestroy(()=>{e.removeEventListener("pointerdown",this.onPointerDown),e.removeEventListener("pointermove",this.onPointerMove),e.removeEventListener("pointerup",this.onPointerUp),e.removeEventListener("pointercancel",this.onPointerCancel),e.removeEventListener("lostpointercapture",this.onPointerCancel),e.removeEventListener("dblclick",this.onNativeDblClick),this.longPressTimer&&(window.clearTimeout(this.longPressTimer),this.longPressTimer=null),this.removeLongpressCancelListeners();try{this.pointerId!==null&&typeof e.releasePointerCapture=="function"&&e.releasePointerCapture(this.pointerId)}catch{}this.pointerId=null,this.tracking=!1})})}onNativeDblClick=e=>{let i=new CustomEvent("doubletap",{detail:{x:e.clientX,y:e.clientY,dt:0}});this.zone.run(()=>this.doubletap.emit(i)),this.lastTapTime=0};onPointerDown=e=>{if(this.debug("pointerdown",{x:e.clientX,y:e.clientY,pointerId:e.pointerId,pointerType:e.pointerType,sourceElement:e.target instanceof Element?e.target.outerHTML:String(e.target)}),this.pointerId!==null)return;switch(this.pointerId=e.pointerId,this.tracking=!0,this.pressFired=!1,this.currentPointerType=e.pointerType||null,e.pointerType){case"touch":this._swipeMinDistance=this.swipeMinDistance(),this._swipeMaxDuration=this.swipeMaxDuration(),this._longPressMs=this.longPressMs(),this._doubleTapInterval=this.doubleTapInterval(),this._tapSlop=this.tapSlop(),this._pressMoveSlop=this.pressMoveSlop();break;case"pen":this._swipeMinDistance=20,this._swipeMaxDuration=500,this._longPressMs=400,this._doubleTapInterval=250,this._tapSlop=10,this._pressMoveSlop=8;break;case"mouse":default:this._swipeMinDistance=15,this._swipeMaxDuration=400,this._longPressMs=350,this._doubleTapInterval=250,this._tapSlop=8,this._pressMoveSlop=6;break}let t=performance.now()-this.lastTapUpTime,l=Math.hypot(e.clientX-this.lastTapUpX,e.clientY-this.lastTapUpY);this.potentialDoubleTap=t<=this._doubleTapInterval&&l<=this._tapSlop,this.startX=e.clientX,this.startY=e.clientY,this.startTime=performance.now();try{e.target.setPointerCapture(e.pointerId)}catch{}this.longPressTimer&&(this.debug("longpress timer cleared on pointerdown"),window.clearTimeout(this.longPressTimer)),this.potentialDoubleTap||(this.addLongpressCancelListeners(),this.debug("longpress timer scheduled"),this.longPressTimer=window.setTimeout(()=>{if(this.debug("longpress timer fired",{tracking:this.tracking}),!this.tracking){this.debug("longpress cancelled: not tracking");return}let c=e.clientX-this.startX,g=e.clientY-this.startY;if(Math.abs(c)<=this._pressMoveSlop&&Math.abs(g)<=this._pressMoveSlop){this.debug("longpress recognized",{x:this.startX,y:this.startY}),this.pressFired=!0;let C=new CustomEvent("press",{detail:{x:this.startX,y:this.startY,center:{x:this.startX,y:this.startY}}});this.zone.run(()=>this.press.emit(C))}this.removeLongpressCancelListeners()},this._longPressMs))};onPointerMove=e=>{!this.tracking||e.pointerId!==this.pointerId||this.pressFired||this.longPressTimer&&(this.debug("longpress cancelled by pointermove"),window.clearTimeout(this.longPressTimer),this.longPressTimer=null,this.removeLongpressCancelListeners())};onPointerUp=e=>{if(this.debug("pointerup",{x:e.clientX,y:e.clientY,pointerId:e.pointerId}),!this.tracking||e.pointerId!==this.pointerId)return;let i=performance.now(),t=i-this.startTime,l=e.clientX-this.startX,c=e.clientY-this.startY,g=Math.abs(l),C=Math.abs(c);if(this.longPressTimer&&(this.debug("longpress cancelled by pointerup"),window.clearTimeout(this.longPressTimer),this.longPressTimer=null),this.pressFired){this.debug("pointerup after longpress: not resetting gesture state");return}if(t<=this._swipeMaxDuration&&(g>=this._swipeMinDistance&&g>=C?(this.debug("swipe detected",{direction:l>0?"right":"left",dx:l,dy:c,duration:t}),this.zone.run(()=>{l>0?this.swiperight.emit(new CustomEvent("swiperight",{detail:{dx:l,dy:c,duration:t}})):this.swipeleft.emit(new CustomEvent("swipeleft",{detail:{dx:l,dy:c,duration:t}}))})):C>=this._swipeMinDistance&&C>g&&(this.debug("swipe detected",{direction:c>0?"down":"up",dx:l,dy:c,duration:t}),this.zone.run(()=>{c>0?this.swipedown.emit(new CustomEvent("swipedown",{detail:{dx:l,dy:c,duration:t}})):this.swipeup.emit(new CustomEvent("swipeup",{detail:{dx:l,dy:c,duration:t}}))}))),this.currentPointerType!=="mouse"&&g<=this._tapSlop&&C<=this._tapSlop&&t<this._longPressMs){let E=i,w=E-this.lastTapTime,k=Math.hypot(e.clientX-this.lastTapX,e.clientY-this.lastTapY);w<=this._doubleTapInterval&&k<=this._tapSlop?(this.zone.run(()=>this.doubletap.emit(new CustomEvent("doubletap",{detail:{x:e.clientX,y:e.clientY,dt:w}}))),this.lastTapTime=0,this.potentialDoubleTap=!1):(this.lastTapTime=E,this.lastTapX=e.clientX,this.lastTapY=e.clientY)}!this.pressFired&&g<=this._tapSlop&&C<=this._tapSlop&&t<this._longPressMs?(this.lastTapUpTime=i,this.lastTapUpX=e.clientX,this.lastTapUpY=e.clientY):this.potentialDoubleTap=!1,this.reset()};onPointerCancel=e=>{let i=this.host.nativeElement;this.debug("pointercancel",{pointerId:e.pointerId,pointerType:e.pointerType,event:e,documentActiveElement:document.activeElement,elementIsConnected:i.isConnected,elementVisibility:i.offsetParent!==null,hasPointerCapture:typeof i.hasPointerCapture=="function"?i.hasPointerCapture(e.pointerId):void 0,documentHidden:document.hidden});let t=e;if(this.isChromeOnMac&&e.pointerType==="mouse"&&e.pointerId===this.pointerId&&typeof t.buttons=="number"&&t.buttons!==0){this.debug("pointercancel ignored on Chrome/macOS: mouse button still pressed");return}e.pointerId===this.pointerId&&(this.longPressTimer&&(this.debug("longpress cancelled by pointercancel"),window.clearTimeout(this.longPressTimer),this.longPressTimer=null,this.removeLongpressCancelListeners()),this.reset())};addLongpressCancelListeners(){this.debug("addLongpressCancelListeners");let e=c=>{this.debug("longpress cancelled by event",c?.type),this.longPressTimer&&(window.clearTimeout(this.longPressTimer),this.longPressTimer=null),this.removeLongpressCancelListeners()},i=this.host.nativeElement,t=document,l={capture:!0};this.cancelLongpressHandlers=[{type:"pointermove",handler:e,opts:l,targets:["el","doc"]},{type:"pointerleave",handler:e,opts:l,targets:["el","doc"]},{type:"pointerout",handler:e,opts:l,targets:["el","doc"]},{type:"lostpointercapture",handler:e,opts:l,targets:["el","doc"]},{type:"blur",handler:e,opts:l,targets:["window"]}];for(let c of this.cancelLongpressHandlers){let{type:g,handler:C,opts:E,targets:w}=c;w&&w.includes("el")&&i.addEventListener(g,C,E),w&&w.includes("doc")&&t.addEventListener(g,C,E),w&&w.includes("window")&&window.addEventListener(g,C,E)}}removeLongpressCancelListeners(){this.debug("removeLongpressCancelListeners");let e=this.host.nativeElement,i=document;for(let t of this.cancelLongpressHandlers){let{type:l,handler:c,opts:g,targets:C}=t;C&&C.includes("el")&&e.removeEventListener(l,c,g),C&&C.includes("doc")&&i.removeEventListener(l,c,g),C&&C.includes("window")&&window.removeEventListener(l,c,g)}this.cancelLongpressHandlers=[]}reset(){this.debug("reset gesture state");try{let e=this.host.nativeElement;this.pointerId!==null&&typeof e.releasePointerCapture=="function"&&e.releasePointerCapture(this.pointerId)}catch{}this.pointerId=null,this.tracking=!1,this.pressFired=!1,this.currentPointerType=null,this.removeLongpressCancelListeners()}debug(...e){this.constructor.DEBUG&&console.debug(`[GestureDirective][#${this._instanceId}]`,...e)}static \u0275fac=function(i){return new(i||o)};static \u0275dir=Ke({type:o,selectors:[["","kipGestures",""]],inputs:{swipeMinDistance:[1,"swipeMinDistance"],swipeMaxDuration:[1,"swipeMaxDuration"],longPressMs:[1,"longPressMs"],doubleTapInterval:[1,"doubleTapInterval"],tapSlop:[1,"tapSlop"],pressMoveSlop:[1,"pressMoveSlop"]},outputs:{swipeleft:"swipeleft",swiperight:"swiperight",swipeup:"swipeup",swipedown:"swipedown",press:"press",doubletap:"doubletap"}})}return o})();function Rn(o,d){o&1&&Qi(0)}var en=(()=>{class o{data=A(ue);static \u0275fac=function(i){return new(i||o)};static \u0275cmp=_({type:o,selectors:[["dialog-frame"]],decls:8,vars:3,consts:[[1,"dialogue-header"],["mat-dialog-title",""],["mat-icon-button","",1,"dialog-close-icon",3,"mat-dialog-close"],[1,"dialog-content-padding"],[4,"ngComponentOutlet"]],template:function(i,t){i&1&&(a(0,"div",0)(1,"h6",1),r(2),n(),a(3,"button",2)(4,"mat-icon"),r(5,"close"),n()()(),a(6,"mat-dialog-content",3),Pe(7,Rn,1,0,"ng-container",4),n()),i&2&&(s(2),x(t.data.title),s(),m("mat-dialog-close",!1),s(4),m("ngComponentOutlet",t.data.componentType))},dependencies:[F,ae,ge,fe,he,te,ee,Xi],styles:[".dialogue-header[_ngcontent-%COMP%]{display:flex;justify-content:space-between;align-items:baseline}.dialog-close-icon[_ngcontent-%COMP%]{margin-right:15px}.mat-mdc-dialog-content[_ngcontent-%COMP%]{max-height:max-content}"]})}return o})();function Wn(o,d){if(o&1&&(a(0,"button",4),r(1),n()),o&2){let e=h();m("mat-dialog-close",!0),s(),x(e.data.confirmBtnText)}}var tn=(()=>{class o{data=A(ue);static \u0275fac=function(i){return new(i||o)};static \u0275cmp=_({type:o,selectors:[["dialog-confirmation"]],decls:12,vars:6,consts:[[1,"dialogue-header"],["mat-dialog-title",""],["mat-icon-button","",1,"dialog-close-icon",3,"mat-dialog-close"],["align","end"],["mat-flat-button","",3,"mat-dialog-close"]],template:function(i,t){i&1&&(a(0,"div",0)(1,"h5",1),r(2),n(),a(3,"button",2)(4,"mat-icon"),r(5,"close"),n()()(),a(6,"mat-dialog-content"),r(7),n(),a(8,"mat-dialog-actions",3)(9,"button",4),r(10),n(),p(11,Wn,2,2,"button",4),n()),i&2&&(s(2),x(t.data.title),s(),m("mat-dialog-close",!1),s(4),q(" ",t.data.message,`
3
3
  `),s(2),m("mat-dialog-close",!1),s(),x(t.data.cancelBtnText),s(),u(t.data.confirmBtnText?11:-1))},dependencies:[F,ae,ge,fe,We,he,te,Ae,ee],styles:[".dialogue-header[_ngcontent-%COMP%]{display:flex;justify-content:space-between;align-items:baseline}.dialog-close-icon[_ngcontent-%COMP%]{margin-right:15px}.mat-mdc-dialog-content[_ngcontent-%COMP%]{max-height:max-content}"]})}return o})();function Un(o,d){if(o&1&&(a(0,"button",9),r(1),n()),o&2){let e=h(),i=oe(1);m("disabled",!i.valid),s(),x(e.data.confirmBtnText)}}var on=(()=>{class o{dialogRef=A(pe);data=A(ue);saveName(){this.dialogRef.close(this.data)}static \u0275fac=function(i){return new(i||o)};static \u0275cmp=_({type:o,selectors:[["dialog-name"]],decls:19,vars:6,consts:[["name","ngForm"],["name","name",3,"ngSubmit"],[1,"dialogue-header"],["mat-dialog-title",""],["mat-icon-button","",1,"dialog-close-icon",3,"mat-dialog-close"],[1,"field-margin"],["matInput","","type","text","id","name","placeholder","Name","name","name","required","","cdkFocusInitial","",3,"ngModelChange","ngModel"],["align","end"],["mat-flat-button","",3,"mat-dialog-close"],["mat-flat-button","","type","submit",3,"disabled"]],template:function(i,t){if(i&1){let l=D();a(0,"form",1,0),v("ngSubmit",function(){return M(l),y(t.saveName())}),a(2,"div",2)(3,"h5",3),r(4),n(),a(5,"button",4)(6,"mat-icon"),r(7,"close"),n()()(),a(8,"mat-dialog-content")(9,"mat-form-field",5)(10,"mat-label"),r(11,"Name"),n(),a(12,"input",6),Nt("ngModelChange",function(g){return M(l),Lt(t.data.name,g)||(t.data.name=g),y(g)}),n(),a(13,"mat-error"),r(14," A name is required "),n()()(),a(15,"mat-dialog-actions",7)(16,"button",8),r(17),n(),p(18,Un,2,2,"button",9),n()()}i&2&&(s(4),x(t.data.title),s(),m("mat-dialog-close",!1),s(7),Vt("ngModel",t.data.name),s(4),m("mat-dialog-close",!1),s(),x(t.data.cancelBtnText),s(),u(t.data.confirmBtnText?18:-1))},dependencies:[ae,ge,fe,We,he,Y,F,le,L,V,ft,Ce,K,te,Ae,ee,X,pt,j,O,Z,B,Xt,zt],styles:[".dialogue-header[_ngcontent-%COMP%]{display:flex;justify-content:space-between;align-items:baseline}.dialog-close-icon[_ngcontent-%COMP%]{margin-right:15px}.mat-mdc-dialog-content[_ngcontent-%COMP%]{max-height:max-content}.field-margin[_ngcontent-%COMP%]{margin-left:15px;margin-bottom:15px}"]})}return o})();function qn(o,d){if(o&1&&(a(0,"mat-option",12),r(1),n()),o&2){let e=d.$implicit;m("value",Se(e.value)),s(),x(e.label)}}function Qn(o,d){if(o&1){let e=D();a(0,"button",21),v("click",function(){M(e);let t=h();return y(t.moveCtrlUp())}),a(1,"mat-icon"),r(2,"arrow_drop_up"),n()()}}function Yn(o,d){if(o&1){let e=D();a(0,"button",22),v("click",function(){M(e);let t=h();return y(t.moveCtrlDown())}),a(1,"mat-icon"),r(2,"arrow_drop_down"),n()()}}var nn=(()=>{class o{app=A(At);ctrlFormGroup=f.required();controlIndex=f(void 0);arrayLength=f(void 0);deleteCtrl=Q();moveUp=Q();moveDown=Q();colors=[];ngOnInit(){this.colors=this.app.configurableThemeColors}deleteControl(){let e={ctrlIndex:this.controlIndex(),pathID:this.ctrlFormGroup().get("pathID").value};this.deleteCtrl.emit(e)}moveCtrlUp(){this.moveUp.emit(this.controlIndex())}moveCtrlDown(){this.moveDown.emit(this.controlIndex())}static \u0275fac=function(i){return new(i||o)};static \u0275cmp=_({type:o,selectors:[["boolean-control-config"]],inputs:{ctrlFormGroup:[1,"ctrlFormGroup"],controlIndex:[1,"controlIndex"],arrayLength:[1,"arrayLength"]},outputs:{deleteCtrl:"deleteCtrl",moveUp:"moveUp",moveDown:"moveDown"},decls:36,vars:3,consts:[[1,"ctrl-grid","rounded-card","rounded-card-color",3,"formGroup"],[1,"controls","flex-container"],[1,"flex-label"],[1,"full-width"],["matInput","","type","string","placeholder","Enter a display label...","formControlName","ctrlLabel"],[1,"flex-settings"],[1,"settings"],["placeholder","Select Type...","formControlName","type","name","type","required",""],["value","1"],["value","2"],["value","3"],["placeholder","Select Color...","formControlName","color","name","color","required",""],[3,"value"],[1,"flex-full-width"],["formControlName","isNumeric"],[1,"actions"],[1,"flex-actions"],[1,"btn-grid"],["mat-icon-button","","type","button","aria-label","Move control up in the list",1,"up"],["mat-icon-button","","type","button","aria-label","Move control down in the list",1,"down"],["mat-icon-button","","type","button","aria-label","Delete control",1,"delete",3,"click"],["mat-icon-button","","type","button","aria-label","Move control up in the list",1,"up",3,"click"],["mat-icon-button","","type","button","aria-label","Move control down in the list",1,"down",3,"click"]],template:function(i,t){i&1&&(a(0,"div",0)(1,"div",1)(2,"div",2)(3,"mat-form-field",3)(4,"mat-label"),r(5,"Label"),n(),b(6,"input",4),n()(),a(7,"div",5)(8,"mat-form-field",6)(9,"mat-label"),r(10,"Type"),n(),a(11,"mat-select",7)(12,"mat-option",8),r(13,"Toggle"),n(),a(14,"mat-option",9),r(15,"Push"),n(),a(16,"mat-option",10),r(17,"Indicator"),n()()()(),a(18,"div",5)(19,"mat-form-field",6)(20,"mat-label"),r(21,"Color"),n(),a(22,"mat-select",11),S(23,qn,2,3,"mat-option",12,G),n()()(),a(25,"div",13)(26,"mat-checkbox",14),r(27," Use numeric path "),n()()(),a(28,"div",15)(29,"div",16)(30,"div",17),p(31,Qn,3,0,"button",18),p(32,Yn,3,0,"button",19),a(33,"button",20),v("click",function(){return t.deleteControl()}),a(34,"mat-icon"),r(35,"delete"),n()()()()()()),i&2&&(m("formGroup",t.ctrlFormGroup()),s(23),T(t.colors),s(8),u(t.controlIndex()!==0?31:-1),s(),u(t.controlIndex()!==t.arrayLength()-1?32:-1))},dependencies:[X,j,O,Z,B,W,z,qe,L,V,K,se,J,ee,Ye,ve,Y,F],styles:['.ctrl-grid[_ngcontent-%COMP%]{display:grid;width:auto;height:auto;margin:0 0 10px;grid-template-columns:[col-start] calc(100% - 90px) [col1-end] 80px [col2-end];grid-template-areas:"controls actions";row-gap:0px;column-gap:10px;justify-items:center;align-items:center;justify-content:center;align-content:center;padding-top:20px}.controls[_ngcontent-%COMP%]{grid-area:controls;width:100%}.actions[_ngcontent-%COMP%]{grid-area:actions}.btn-grid[_ngcontent-%COMP%]{display:grid;width:80px;height:80px;margin:0;grid-template-columns:[col-start] 50% [col1-end] 50% [col2-end];grid-template-rows:[row-start] 50% [row1-end] 50% [row2-end];grid-template-areas:"up delete" "down delete";row-gap:0px;column-gap:0px;justify-items:center;align-items:center;justify-content:center;align-content:center}.up[_ngcontent-%COMP%]{grid-area:up}.down[_ngcontent-%COMP%]{grid-area:down}.delete[_ngcontent-%COMP%]{grid-area:delete}.flex-label[_ngcontent-%COMP%]{flex-grow:2;flex-shrink:2}.flex-settings[_ngcontent-%COMP%]{flex-grow:1;flex-shrink:1}.settings[_ngcontent-%COMP%]{min-width:100px}.flex-actions[_ngcontent-%COMP%]{flex-grow:0;flex-shrink:0}.flex-full-width[_ngcontent-%COMP%]{width:100%}']})}return o})();function jn(o,d){if(o&1){let e=D();a(0,"boolean-control-config",4),v("moveUp",function(t){M(e);let l=h();return y(l.moveUp(t))})("moveDown",function(t){M(e);let l=h();return y(l.moveDown(t))})("deleteCtrl",function(t){M(e);let l=h();return y(l.deletePath(t))}),n()}if(o&2){let e=d.$implicit,i=d.$index,t=h();m("ctrlFormGroup",t.getFormGroup(e))("controlIndex",i)("arrayLength",t.arrayLength)}}var an=(()=>{class o{fb=A(gt);multiCtrlArray=f.required();addPath=Q();updatePath=Q();delPath=Q();multiFormGroup=null;arrayLength=0;multiCtrlArraySubscription=null;ngOnInit(){this.arrayLength=this.multiCtrlArray().length,this.multiFormGroup=new Io({multiCtrlArray:this.multiCtrlArray()}),this.multiCtrlArraySubscription=this.multiCtrlArray().valueChanges.pipe(Dt(350)).subscribe(e=>{this.updatePath.emit(e)})}addCtrlGroup(){let e=Ji.create();this.multiCtrlArray().push(this.fb.group({ctrlLabel:[null,H.required],type:["1",H.required],pathID:[e],color:["contrast"],isNumeric:[!1],value:[null]})),this.arrayLength=this.multiCtrlArray().length;let i={path:{description:null,path:null,pathID:e,source:"default",pathType:"boolean",supportsPut:!0,isPathConfigurable:!0,showPathSkUnitsFilter:!1,pathSkUnitsFilter:null,convertUnitTo:null,sampleTime:500},ctrlType:1};this.addPath.emit(i)}moveUp(e){let i=this.multiCtrlArray().at(e);this.multiCtrlArray().removeAt(e,{emitEvent:!1}),this.multiCtrlArray().insert(e-1,i,{emitEvent:!1})}moveDown(e){let i=this.multiCtrlArray().at(e);this.multiCtrlArray().removeAt(e,{emitEvent:!1}),this.multiCtrlArray().insert(e+1,i,{emitEvent:!1})}deletePath(e){this.delPath.emit(e),this.arrayLength=this.multiCtrlArray().length}getFormGroup(e){return e}ngOnDestroy(){this.multiCtrlArraySubscription?.unsubscribe()}static \u0275fac=function(i){return new(i||o)};static \u0275cmp=_({type:o,selectors:[["boolean-multicontrol-options"]],inputs:{multiCtrlArray:[1,"multiCtrlArray"]},outputs:{addPath:"addPath",updatePath:"updatePath",delPath:"delPath"},decls:7,vars:1,consts:[[3,"formGroup"],["formArrayName","multiCtrlArray"],[1,"full-width",3,"ctrlFormGroup","controlIndex","arrayLength"],["type","button","mat-mini-fab","","color","primary","aria-label","Add control down in the list",1,"add-btn",3,"click"],[1,"full-width",3,"moveUp","moveDown","deleteCtrl","ctrlFormGroup","controlIndex","arrayLength"]],template:function(i,t){i&1&&(a(0,"div",0)(1,"div",1),S(2,jn,1,3,"boolean-control-config",2,Bt),a(4,"button",3),v("click",function(){return t.addCtrlGroup()}),a(5,"mat-icon"),r(6,"add"),n()()()()),i&2&&(m("formGroup",t.multiFormGroup),s(2),T(t.multiCtrlArray().controls))},dependencies:[X,Z,W,z,Oo,nn,te,go,Y,F],styles:["[_nghost-%COMP%]{display:block;width:100%;height:100%;padding-top:15px;padding-bottom:15px}.add-btn[_ngcontent-%COMP%]{margin-left:calc(50% - 20px)}"]})}return o})();function Hn(o,d){if(o&1&&(a(0,"mat-option",8),r(1),n()),o&2){let e=d.$implicit;m("value",Se(e.value)),s(),x(e.label)}}var rn=(()=>{class o{app=A(At);displayName=f.required();showLabel=f.required();convertUnitTo=f.required();datasetUUID=f.required();datasetAverageArray=f.required();showAverageData=f.required();trackAgainstAverage=f.required();showDatasetMinimumValueLine=f.required();showDatasetMaximumValueLine=f.required();showDatasetAverageValueLine=f.required();showDatasetAngleAverageValueLine=f.required();verticalChart=f.required();inverseYAxis=f.required();showTimeScale=f.required();showYScale=f.required();startScaleAtZero=f.required();yScaleSuggestedMin=f.required();yScaleSuggestedMax=f.required();enableMinMaxScaleLimit=f.required();yScaleMin=f.required();yScaleMax=f.required();numDecimal=f.required();color=f.required();colors=[];ngOnInit(){this.colors=this.app.configurableThemeColors,this.showAverageData()&&!this.showAverageData()?.value&&this.trackAgainstAverage().disable(),this.enableMinMaxScaleLimit()&&this.setValueScaleOptionsControls(this.enableMinMaxScaleLimit().value)}setValueScaleOptionsControls(e){e?(this.yScaleMin()?.enable(),this.yScaleMax()?.enable(),this.yScaleSuggestedMin()?.disable(),this.yScaleSuggestedMax()?.disable()):(this.yScaleMin()?.disable(),this.yScaleMax()?.disable(),this.yScaleSuggestedMin()?.enable(),this.yScaleSuggestedMax()?.enable())}setScaleControls(e){this.setValueScaleOptionsControls(e.value)}enableTrackAgainstMovingAverage(e){e.checked?this.trackAgainstAverage().enable():(this.trackAgainstAverage().setValue(e.checked),this.trackAgainstAverage().disable())}static \u0275fac=function(i){return new(i||o)};static \u0275cmp=_({type:o,selectors:[["config-display-chart-options"]],inputs:{displayName:[1,"displayName"],showLabel:[1,"showLabel"],convertUnitTo:[1,"convertUnitTo"],datasetUUID:[1,"datasetUUID"],datasetAverageArray:[1,"datasetAverageArray"],showAverageData:[1,"showAverageData"],trackAgainstAverage:[1,"trackAgainstAverage"],showDatasetMinimumValueLine:[1,"showDatasetMinimumValueLine"],showDatasetMaximumValueLine:[1,"showDatasetMaximumValueLine"],showDatasetAverageValueLine:[1,"showDatasetAverageValueLine"],showDatasetAngleAverageValueLine:[1,"showDatasetAngleAverageValueLine"],verticalChart:[1,"verticalChart"],inverseYAxis:[1,"inverseYAxis"],showTimeScale:[1,"showTimeScale"],showYScale:[1,"showYScale"],startScaleAtZero:[1,"startScaleAtZero"],yScaleSuggestedMin:[1,"yScaleSuggestedMin"],yScaleSuggestedMax:[1,"yScaleSuggestedMax"],enableMinMaxScaleLimit:[1,"enableMinMaxScaleLimit"],yScaleMin:[1,"yScaleMin"],yScaleMax:[1,"yScaleMax"],numDecimal:[1,"numDecimal"],color:[1,"color"]},decls:84,vars:20,consts:[["minLine",""],[1,"tab-content"],[1,"chart-flex-container"],[1,"chart-panel-group"],[1,"full-width"],["matInput","","placeholder","Enter a label to display","name","displayName",3,"formControl"],["name","showLabel",1,"full-width",3,"formControl"],["placeholder","Select Color...","name","color","required","",3,"formControl"],[3,"value"],[1,"flex-item-rounded-card","rounded-card-color"],[2,"margin-left","10px"],["matInput","","type","number","min","0","max","5","placeholder","Enter or select number...","name","numDecimal","required","",3,"formControl"],["name","showAverageData",1,"full-width",2,"margin-top","10px",3,"change","formControl"],["name","trackAgainstAverage",1,"full-width",2,"margin-left","25px",3,"formControl"],["name","verticalChart",3,"formControl"],[1,"no-margin"],[1,"mat-caption"],["aria-label","Select an option","name","enableMinMaxScaleLimit",1,"chart-option-radio-group",3,"formControl"],[1,"chart-option-radio-button",3,"change","value"],[1,"chart-option-radio-button-config"],[1,"chart-option-radio-button-config-form-field"],["matInput","","type","number","name","yScaleSuggestedMin",3,"formControl"],["matInput","","type","number","name","yScaleSuggestedMax",3,"formControl"],[1,"chart-option-radio-button-config-item"],["matInput","","type","number","name","yScaleMin","required","",3,"formControl"],["matInput","","type","number","name","yScaleMax","required","",3,"formControl"],["name","showYScale",1,"full-width",3,"formControl"],["name","inverseYAxis",3,"formControl"],["name","showTimeScale",1,"full-width",3,"formControl"],["name","showDatasetMaximumValueLine",1,"full-width",3,"formControl"],["name","showDatasetAverageValueLine",1,"full-width",3,"formControl"],["name","showDatasetMinimumValueLine",1,"full-width",3,"formControl"]],template:function(i,t){if(i&1){let l=D();a(0,"div",1)(1,"div",2)(2,"div",3)(3,"mat-form-field",4)(4,"mat-label"),r(5,"Widget Label"),n(),b(6,"input",5),n()(),a(7,"div",3)(8,"mat-checkbox",6),r(9," Show Label "),n()()(),a(10,"div",2)(11,"mat-form-field",4)(12,"mat-label"),r(13,"Color"),n(),a(14,"mat-select",7),S(15,Hn,2,3,"mat-option",8,G),n()()(),a(17,"div",2)(18,"div",9)(19,"div")(20,"p"),r(21,"Series"),n(),a(22,"mat-form-field",10)(23,"mat-label"),r(24,"Value Decimal Places"),n(),b(25,"input",11),n(),a(26,"mat-checkbox",12),v("change",function(g){return M(l),y(t.enableTrackAgainstMovingAverage(g))}),r(27," Display Moving Average "),n(),a(28,"mat-checkbox",13),r(29," Track Against Moving Average "),n()(),a(30,"mat-checkbox",14),r(31," Vertical Data Graph "),n()(),a(32,"div",9)(33,"div")(34,"p",15),r(35,"Data Scale"),n(),a(36,"span",16),r(37,"(Default node is automatic scale)"),n(),a(38,"mat-radio-group",17)(39,"mat-radio-button",18),v("change",function(g){return M(l),y(t.setScaleControls(g))}),r(40,"Auto Scale"),n(),a(41,"div",19)(42,"mat-form-field",20)(43,"mat-label"),r(44,"Suggested Min"),n(),b(45,"input",21),n(),a(46,"mat-form-field",20)(47,"mat-label"),r(48,"Suggested Max"),n(),b(49,"input",22),n()(),a(50,"mat-radio-button",18),v("change",function(g){return M(l),y(t.setScaleControls(g))}),r(51," Fixed Scale "),n(),a(52,"div",19)(53,"div",23)(54,"mat-form-field",20)(55,"mat-label"),r(56,"Min"),n(),b(57,"input",24),n()(),a(58,"div",23)(59,"mat-form-field",20)(60,"mat-label"),r(61,"Max"),n(),b(62,"input",25),n()()()(),a(63,"mat-checkbox",26),r(64," Show Scale Ticks "),n(),a(65,"mat-checkbox",27),r(66," Inverse Scale "),n()()(),a(67,"div",9)(68,"div")(69,"p",15),r(70,"Time Scale"),n(),a(71,"mat-checkbox",28),r(72," Show Scale Ticks "),n()()(),a(73,"div",9)(74,"div")(75,"p",15),r(76,"Dataset"),n(),a(77,"mat-checkbox",29),r(78," Show Maximum Line "),n(),a(79,"mat-checkbox",30),r(80," Show Average Line "),n(),a(81,"mat-checkbox",31,0),r(83," Show Minimum Line "),n()()()()()}i&2&&(s(6),m("formControl",t.displayName()),s(2),m("formControl",t.showLabel()),s(6),m("formControl",t.color()),s(),T(t.colors),s(10),m("formControl",t.numDecimal()),s(),m("formControl",t.showAverageData()),s(2),m("formControl",t.trackAgainstAverage()),s(2),m("formControl",t.verticalChart()),s(8),m("formControl",t.enableMinMaxScaleLimit()),s(),m("value",!1),s(6),m("formControl",t.yScaleSuggestedMin()),s(4),m("formControl",t.yScaleSuggestedMax()),s(),m("value",!0),s(7),m("formControl",t.yScaleMin()),s(5),m("formControl",t.yScaleMax()),s(),m("formControl",t.showYScale()),s(2),m("formControl",t.inverseYAxis()),s(6),m("formControl",t.showTimeScale()),s(6),m("formControl",t.showDatasetMaximumValueLine()),s(2),m("formControl",t.showDatasetAverageValueLine()),s(2),m("formControl",t.showDatasetMinimumValueLine()))},dependencies:[ei,le,L,V,Ye,ve,Qe,se,J,wt,Ce,K,zo,Ho,Zo,W,j,Ue,O,B,ut,Kt,be],styles:[".chart-flex-container[_ngcontent-%COMP%]{display:flex;flex-direction:row;flex-wrap:wrap;margin:15px 0;gap:15px;align-items:stretch}.chart-panel-group[_ngcontent-%COMP%]{min-width:250px;flex-grow:1}.no-margin[_ngcontent-%COMP%]{margin:0}.chart-option-radio-group[_ngcontent-%COMP%]{display:flex;flex-direction:column;margin:0;align-items:flex-start}.chart-option-radio-button[_ngcontent-%COMP%]{margin:0}.chart-option-radio-button-config[_ngcontent-%COMP%]{margin-left:35px;display:flex;flex-direction:row;flex-wrap:wrap;gap:10px;align-items:flex-start}.chart-option-radio-button-config-item[_ngcontent-%COMP%]{flex-grow:0;flex-shrink:1;min-width:50px}.chart-option-radio-button-config-form-field[_ngcontent-%COMP%]{display:block;max-width:118px}"]})}return o})();var Zn=(o,d)=>d.uuid;function zn(o,d){if(o&1&&(a(0,"mat-option",4),r(1),n()),o&2){let e=d.$implicit;m("value",e.uuid),s(),q(" ",e.label," ")}}function Xn(o,d){if(o&1&&(a(0,"mat-option",4),r(1),n()),o&2){let e=d.$implicit;m("value",e.measure),s(),q(" ",e.description," ")}}function Kn(o,d){if(o&1&&(a(0,"mat-optgroup",6),S(1,Xn,2,2,"mat-option",4,G),n()),o&2){let e=d.$implicit;m("label",e.group),s(),T(e.units)}}var ln=(()=>{class o{datasetService=A(Jt);units=A(Ct);datasetUUID=f.required();convertUnitTo=f.required();availableDataSets=[];unitList={};ngOnInit(){this.availableDataSets=this.datasetService.list().filter(i=>i.editable!==!1).sort();let e=this.datasetUUID();e.value&&this.setPathUnits(e.value)}setPathUnits(e){let i=this.datasetService.getDatasetConfig(e);return e&&i?(this.unitList=this.units.getConversionsForPath(i.path),this.convertUnitTo()?.enable(),!0):(this.unitList=this.units.getConversionsForPath(""),this.convertUnitTo()?.disable(),!1)}datasetChanged(e){this.setPathUnits(e.value)}static \u0275fac=function(i){return new(i||o)};static \u0275cmp=_({type:o,selectors:[["config-dataset-chart-options"]],inputs:{datasetUUID:[1,"datasetUUID"],convertUnitTo:[1,"convertUnitTo"]},decls:14,vars:2,consts:[[1,"display-content","tab-content"],[1,"widget-options-grid"],[1,"options-grid-span2"],["placeholder","Select dataset...","name","datasetUUID","required","",3,"selectionChange","formControl"],[3,"value"],["placeholder","Select unit...","name","convertUnitTo","required","",3,"formControl"],[3,"label"]],template:function(i,t){i&1&&(a(0,"div",0)(1,"div",1)(2,"mat-form-field",2)(3,"mat-label"),r(4,"Dataset"),n(),a(5,"mat-select",3),v("selectionChange",function(c){return t.datasetChanged(c)}),S(6,zn,2,2,"mat-option",4,Zn),n()(),a(8,"mat-form-field",2)(9,"mat-label"),r(10,"Display Format"),n(),a(11,"mat-select",5),S(12,Kn,3,1,"mat-optgroup",6,G),n()()()()),i&2&&(s(5),m("formControl",t.datasetUUID()),s(),T(t.availableDataSets),s(5),m("formControl",t.convertUnitTo()),s(),T(t.unitList.conversions))},dependencies:[le,L,V,Qe,se,J,bt,W,O,B,be],styles:[".display-content[_ngcontent-%COMP%]{display:block;height:100%;width:100%;padding-top:15px;padding-bottom:10px}"]})}return o})();var sn=(()=>{class o{transform(e){return Object.keys(e)}static \u0275fac=function(i){return new(i||o)};static \u0275pipe=Li({name:"objectKeys",type:o,pure:!0})}return o})();var $n=["panel"],ea=["*"];function ta(o,d){if(o&1&&(Ai(0,"div",1,0),lt(2),pi()),o&2){let e=d.id,i=h();ye(i._classList),U("mat-mdc-autocomplete-visible",i.showPanel)("mat-mdc-autocomplete-hidden",!i.showPanel)("mat-autocomplete-panel-animations-enabled",!i._animationsDisabled)("mat-primary",i._color==="primary")("mat-accent",i._color==="accent")("mat-warn",i._color==="warn"),Yi("id",i.id),$("aria-label",i.ariaLabel||null)("aria-labelledby",i._getPanelAriaLabelledby(e))}}var Ci=class{source;option;constructor(d,e){this.source=d,this.option=e}},mn=new de("mat-autocomplete-default-options",{providedIn:"root",factory:ia});function ia(){return{autoActiveFirstOption:!1,autoSelectActiveOption:!1,hideSingleSelectionIndicator:!1,requireSelection:!1,hasBackdrop:!1}}var ni=(()=>{class o{_changeDetectorRef=A(ct);_elementRef=A(Xe);_defaults=A(mn);_animationsDisabled=Re();_activeOptionChanges=It.EMPTY;_keyManager;showPanel=!1;get isOpen(){return this._isOpen&&this.showPanel}_isOpen=!1;_latestOpeningTrigger;_setColor(e){this._color=e,this._changeDetectorRef.markForCheck()}_color;template;panel;options;optionGroups;ariaLabel;ariaLabelledby;displayWith=null;autoActiveFirstOption;autoSelectActiveOption;requireSelection;panelWidth;disableRipple;optionSelected=new ce;opened=new ce;closed=new ce;optionActivated=new ce;set classList(e){this._classList=e,this._elementRef.nativeElement.className=""}_classList;get hideSingleSelectionIndicator(){return this._hideSingleSelectionIndicator}set hideSingleSelectionIndicator(e){this._hideSingleSelectionIndicator=e,this._syncParentProperties()}_hideSingleSelectionIndicator;_syncParentProperties(){if(this.options)for(let e of this.options)e._changeDetectorRef.markForCheck()}id=A(xt).getId("mat-autocomplete-");inertGroups;constructor(){let e=A(lo);this.inertGroups=e?.SAFARI||!1,this.autoActiveFirstOption=!!this._defaults.autoActiveFirstOption,this.autoSelectActiveOption=!!this._defaults.autoSelectActiveOption,this.requireSelection=!!this._defaults.requireSelection,this._hideSingleSelectionIndicator=this._defaults.hideSingleSelectionIndicator??!1}ngAfterContentInit(){this._keyManager=new Ao(this.options).withWrap().skipPredicate(this._skipPredicate),this._activeOptionChanges=this._keyManager.change.subscribe(e=>{this.isOpen&&this.optionActivated.emit({source:this,option:this.options.toArray()[e]||null})}),this._setVisibility()}ngOnDestroy(){this._keyManager?.destroy(),this._activeOptionChanges.unsubscribe()}_setScrollTop(e){this.panel&&(this.panel.nativeElement.scrollTop=e)}_getScrollTop(){return this.panel?this.panel.nativeElement.scrollTop:0}_setVisibility(){this.showPanel=!!this.options?.length,this._changeDetectorRef.markForCheck()}_emitSelectEvent(e){let i=new Ci(this,e);this.optionSelected.emit(i)}_getPanelAriaLabelledby(e){if(this.ariaLabel)return null;let i=e?e+" ":"";return this.ariaLabelledby?i+this.ariaLabelledby:e}_skipPredicate(){return!1}static \u0275fac=function(i){return new(i||o)};static \u0275cmp=_({type:o,selectors:[["mat-autocomplete"]],contentQueries:function(i,t,l){if(i&1&&(Mt(l,J,5),Mt(l,Uo,5)),i&2){let c;Fe(c=Oe())&&(t.options=c),Fe(c=Oe())&&(t.optionGroups=c)}},viewQuery:function(i,t){if(i&1&&(yt(Oi,7),yt($n,5)),i&2){let l;Fe(l=Oe())&&(t.template=l.first),Fe(l=Oe())&&(t.panel=l.first)}},hostAttrs:[1,"mat-mdc-autocomplete"],inputs:{ariaLabel:[0,"aria-label","ariaLabel"],ariaLabelledby:[0,"aria-labelledby","ariaLabelledby"],displayWith:"displayWith",autoActiveFirstOption:[2,"autoActiveFirstOption","autoActiveFirstOption",R],autoSelectActiveOption:[2,"autoSelectActiveOption","autoSelectActiveOption",R],requireSelection:[2,"requireSelection","requireSelection",R],panelWidth:"panelWidth",disableRipple:[2,"disableRipple","disableRipple",R],classList:[0,"class","classList"],hideSingleSelectionIndicator:[2,"hideSingleSelectionIndicator","hideSingleSelectionIndicator",R]},outputs:{optionSelected:"optionSelected",opened:"opened",closed:"closed",optionActivated:"optionActivated"},exportAs:["matAutocomplete"],features:[St([{provide:Wo,useExisting:o}])],ngContentSelectors:ea,decls:1,vars:0,consts:[["panel",""],["role","listbox",1,"mat-mdc-autocomplete-panel","mdc-menu-surface","mdc-menu-surface--open",3,"id"]],template:function(i,t){i&1&&(rt(),Ri(0,ta,3,17,"ng-template"))},styles:[`div.mat-mdc-autocomplete-panel{width:100%;max-height:256px;visibility:hidden;transform-origin:center top;overflow:auto;padding:8px 0;box-sizing:border-box;position:relative;border-radius:var(--mat-autocomplete-container-shape, var(--mat-sys-corner-extra-small));box-shadow:var(--mat-autocomplete-container-elevation-shadow, 0px 3px 1px -2px rgba(0, 0, 0, 0.2), 0px 2px 2px 0px rgba(0, 0, 0, 0.14), 0px 1px 5px 0px rgba(0, 0, 0, 0.12));background-color:var(--mat-autocomplete-background-color, var(--mat-sys-surface-container))}@media(forced-colors: active){div.mat-mdc-autocomplete-panel{outline:solid 1px}}.cdk-overlay-pane:not(.mat-mdc-autocomplete-panel-above) div.mat-mdc-autocomplete-panel{border-top-left-radius:0;border-top-right-radius:0}.mat-mdc-autocomplete-panel-above div.mat-mdc-autocomplete-panel{border-bottom-left-radius:0;border-bottom-right-radius:0;transform-origin:center bottom}div.mat-mdc-autocomplete-panel.mat-mdc-autocomplete-visible{visibility:visible}div.mat-mdc-autocomplete-panel.mat-mdc-autocomplete-hidden{visibility:hidden;pointer-events:none}@keyframes _mat-autocomplete-enter{from{opacity:0;transform:scaleY(0.8)}to{opacity:1;transform:none}}.mat-autocomplete-panel-animations-enabled{animation:_mat-autocomplete-enter 120ms cubic-bezier(0, 0, 0.2, 1)}mat-autocomplete{display:none}
4
4
  `],encapsulation:2,changeDetection:0})}return o})();var oa={provide:Zt,useExisting:Ft(()=>kt),multi:!0};var An=new de("mat-autocomplete-scroll-strategy",{providedIn:"root",factory:()=>{let o=A(nt);return()=>gi(o)}});function na(o){let d=A(nt);return()=>gi(d)}var aa={provide:An,deps:[],useFactory:na},kt=(()=>{class o{_environmentInjector=A(Fi);_element=A(Xe);_injector=A(nt);_viewContainerRef=A(Vi);_zone=A(Ot);_changeDetectorRef=A(ct);_dir=A(Yt,{optional:!0});_formField=A(Vo,{optional:!0,host:!0});_viewportRuler=A(Co);_scrollStrategy=A(An);_renderer=A(Bi);_animationsDisabled=Re();_defaults=A(mn,{optional:!0});_overlayRef;_portal;_componentDestroyed=!1;_initialized=new _t;_keydownSubscription;_outsideClickSubscription;_cleanupWindowBlur;_previousValue;_valueOnAttach;_valueOnLastKeydown;_positionStrategy;_manuallyFloatingLabel=!1;_closingActionsSubscription;_viewportSubscription=It.EMPTY;_breakpointObserver=A(qt);_handsetLandscapeSubscription=It.EMPTY;_canOpenOnNextFocus=!0;_valueBeforeAutoSelection;_pendingAutoselectedOption;_closeKeyEventStream=new _t;_overlayPanelClass=mo(this._defaults?.overlayPanelClass||[]);_windowBlurHandler=()=>{this._canOpenOnNextFocus=this.panelOpen||!this._hasFocus()};_onChange=()=>{};_onTouched=()=>{};autocomplete;position="auto";connectedTo;autocompleteAttribute="off";autocompleteDisabled;constructor(){}_aboveClass="mat-mdc-autocomplete-panel-above";ngAfterViewInit(){this._initialized.next(),this._initialized.complete(),this._cleanupWindowBlur=this._renderer.listen("window","blur",this._windowBlurHandler)}ngOnChanges(e){e.position&&this._positionStrategy&&(this._setStrategyPositions(this._positionStrategy),this.panelOpen&&this._overlayRef.updatePosition())}ngOnDestroy(){this._cleanupWindowBlur?.(),this._handsetLandscapeSubscription.unsubscribe(),this._viewportSubscription.unsubscribe(),this._componentDestroyed=!0,this._destroyPanel(),this._closeKeyEventStream.complete(),this._clearFromModal()}get panelOpen(){return this._overlayAttached&&this.autocomplete.showPanel}_overlayAttached=!1;openPanel(){this._openPanelInternal()}closePanel(){this._resetLabel(),this._overlayAttached&&(this.panelOpen&&this._zone.run(()=>{this.autocomplete.closed.emit()}),this.autocomplete._latestOpeningTrigger===this&&(this.autocomplete._isOpen=!1,this.autocomplete._latestOpeningTrigger=null),this._overlayAttached=!1,this._pendingAutoselectedOption=null,this._overlayRef&&this._overlayRef.hasAttached()&&(this._overlayRef.detach(),this._closingActionsSubscription.unsubscribe()),this._updatePanelState(),this._componentDestroyed||this._changeDetectorRef.detectChanges(),this._trackedModal&&Qt(this._trackedModal,"aria-owns",this.autocomplete.id))}updatePosition(){this._overlayAttached&&this._overlayRef.updatePosition()}get panelClosingActions(){return tt(this.optionSelections,this.autocomplete._keyManager.tabOut.pipe(Ee(()=>this._overlayAttached)),this._closeKeyEventStream,this._getOutsideClickStream(),this._overlayRef?this._overlayRef.detachments().pipe(Ee(()=>this._overlayAttached)):di()).pipe(et(e=>e instanceof qo?e:null))}optionSelections=ki(()=>{let e=this.autocomplete?this.autocomplete.options:null;return e?e.changes.pipe(ot(e),Pt(()=>tt(...e.map(i=>i.onSelectionChange)))):this._initialized.pipe(Pt(()=>this.optionSelections))});get activeOption(){return this.autocomplete&&this.autocomplete._keyManager?this.autocomplete._keyManager.activeItem:null}_getOutsideClickStream(){return new si(e=>{let i=l=>{let c=ro(l),g=this._formField?this._formField.getConnectedOverlayOrigin().nativeElement:null,C=this.connectedTo?this.connectedTo.elementRef.nativeElement:null;this._overlayAttached&&c!==this._element.nativeElement&&!this._hasFocus()&&(!g||!g.contains(c))&&(!C||!C.contains(c))&&this._overlayRef&&!this._overlayRef.overlayElement.contains(c)&&e.next(l)},t=[this._renderer.listen("document","click",i),this._renderer.listen("document","auxclick",i),this._renderer.listen("document","touchend",i)];return()=>{t.forEach(l=>l())}})}writeValue(e){Promise.resolve(null).then(()=>this._assignOptionValue(e))}registerOnChange(e){this._onChange=e}registerOnTouched(e){this._onTouched=e}setDisabledState(e){this._element.nativeElement.disabled=e}_handleKeydown(e){let i=e,t=i.keyCode,l=mt(i);if(t===27&&!l&&i.preventDefault(),this._valueOnLastKeydown=this._element.nativeElement.value,this.activeOption&&t===13&&this.panelOpen&&!l)this.activeOption._selectViaInteraction(),this._resetActiveItem(),i.preventDefault();else if(this.autocomplete){let c=this.autocomplete._keyManager.activeItem,g=t===38||t===40;t===9||g&&!l&&this.panelOpen?this.autocomplete._keyManager.onKeydown(i):g&&this._canOpen()&&this._openPanelInternal(this._valueOnLastKeydown),(g||this.autocomplete._keyManager.activeItem!==c)&&(this._scrollToOption(this.autocomplete._keyManager.activeItemIndex||0),this.autocomplete.autoSelectActiveOption&&this.activeOption&&(this._pendingAutoselectedOption||(this._valueBeforeAutoSelection=this._valueOnLastKeydown),this._pendingAutoselectedOption=this.activeOption,this._assignOptionValue(this.activeOption.value)))}}_handleInput(e){let i=e.target,t=i.value;if(i.type==="number"&&(t=t==""?null:parseFloat(t)),this._previousValue!==t){if(this._previousValue=t,this._pendingAutoselectedOption=null,(!this.autocomplete||!this.autocomplete.requireSelection)&&this._onChange(t),!t)this._clearPreviousSelectedOption(null,!1);else if(this.panelOpen&&!this.autocomplete.requireSelection){let l=this.autocomplete.options?.find(c=>c.selected);if(l){let c=this._getDisplayValue(l.value);t!==c&&l.deselect(!1)}}if(this._canOpen()&&this._hasFocus()){let l=this._valueOnLastKeydown??this._element.nativeElement.value;this._valueOnLastKeydown=null,this._openPanelInternal(l)}}}_handleFocus(){this._canOpenOnNextFocus?this._canOpen()&&(this._previousValue=this._element.nativeElement.value,this._attachOverlay(this._previousValue),this._floatLabel(!0)):this._canOpenOnNextFocus=!0}_handleClick(){this._canOpen()&&!this.panelOpen&&this._openPanelInternal()}_hasFocus(){return ao()===this._element.nativeElement}_floatLabel(e=!1){this._formField&&this._formField.floatLabel==="auto"&&(e?this._formField._animateAndLockLabel():this._formField.floatLabel="always",this._manuallyFloatingLabel=!0)}_resetLabel(){this._manuallyFloatingLabel&&(this._formField&&(this._formField.floatLabel="auto"),this._manuallyFloatingLabel=!1)}_subscribeToClosingActions(){let e=new si(t=>{Wi(()=>{t.next()},{injector:this._environmentInjector})}),i=this.autocomplete.options?.changes.pipe(Pi(()=>this._positionStrategy.reapplyLastPosition()),Ii(0))??di();return tt(e,i).pipe(Pt(()=>this._zone.run(()=>{let t=this.panelOpen;return this._resetActiveItem(),this._updatePanelState(),this._changeDetectorRef.detectChanges(),this.panelOpen&&this._overlayRef.updatePosition(),t!==this.panelOpen&&(this.panelOpen?this._emitOpened():this.autocomplete.closed.emit()),this.panelClosingActions})),it(1)).subscribe(t=>this._setValueAndClose(t))}_emitOpened(){this.autocomplete.opened.emit()}_destroyPanel(){this._overlayRef&&(this.closePanel(),this._overlayRef.dispose(),this._overlayRef=null)}_getDisplayValue(e){let i=this.autocomplete;return i&&i.displayWith?i.displayWith(e):e}_assignOptionValue(e){let i=this._getDisplayValue(e);e==null&&this._clearPreviousSelectedOption(null,!1),this._updateNativeInputValue(i??"")}_updateNativeInputValue(e){this._formField?this._formField._control.value=e:this._element.nativeElement.value=e,this._previousValue=e}_setValueAndClose(e){let i=this.autocomplete,t=e?e.source:this._pendingAutoselectedOption;t?(this._clearPreviousSelectedOption(t),this._assignOptionValue(t.value),this._onChange(t.value),i._emitSelectEvent(t),this._element.nativeElement.focus()):i.requireSelection&&this._element.nativeElement.value!==this._valueOnAttach&&(this._clearPreviousSelectedOption(null),this._assignOptionValue(null),this._onChange(null)),this.closePanel()}_clearPreviousSelectedOption(e,i){this.autocomplete?.options?.forEach(t=>{t!==e&&t.selected&&t.deselect(i)})}_openPanelInternal(e=this._element.nativeElement.value){if(this._attachOverlay(e),this._floatLabel(),this._trackedModal){let i=this.autocomplete.id;ui(this._trackedModal,"aria-owns",i)}}_attachOverlay(e){this.autocomplete;let i=this._overlayRef;i?(this._positionStrategy.setOrigin(this._getConnectedElement()),i.updateSize({width:this._getPanelWidth()})):(this._portal=new fo(this.autocomplete.template,this._viewContainerRef,{id:this._formField?.getLabelId()}),i=To(this._injector,this._getOverlayConfig()),this._overlayRef=i,this._viewportSubscription=this._viewportRuler.change().subscribe(()=>{this.panelOpen&&i&&i.updateSize({width:this._getPanelWidth()})}),this._handsetLandscapeSubscription=this._breakpointObserver.observe(Te.HandsetLandscape).subscribe(l=>{l.matches?this._positionStrategy.withFlexibleDimensions(!0).withGrowAfterOpen(!0).withViewportMargin(8):this._positionStrategy.withFlexibleDimensions(!1).withGrowAfterOpen(!1).withViewportMargin(0)})),i&&!i.hasAttached()&&(i.attach(this._portal),this._valueOnAttach=e,this._valueOnLastKeydown=null,this._closingActionsSubscription=this._subscribeToClosingActions());let t=this.panelOpen;this.autocomplete._isOpen=this._overlayAttached=!0,this.autocomplete._latestOpeningTrigger=this,this.autocomplete._setColor(this._formField?.color),this._updatePanelState(),this._applyModalPanelOwnership(),this.panelOpen&&t!==this.panelOpen&&this._emitOpened()}_handlePanelKeydown=e=>{(e.keyCode===27&&!mt(e)||e.keyCode===38&&mt(e,"altKey"))&&(this._pendingAutoselectedOption&&(this._updateNativeInputValue(this._valueBeforeAutoSelection??""),this._pendingAutoselectedOption=null),this._closeKeyEventStream.next(),this._resetActiveItem(),e.stopPropagation(),e.preventDefault())};_updatePanelState(){if(this.autocomplete._setVisibility(),this.panelOpen){let e=this._overlayRef;this._keydownSubscription||(this._keydownSubscription=e.keydownEvents().subscribe(this._handlePanelKeydown)),this._outsideClickSubscription||(this._outsideClickSubscription=e.outsidePointerEvents().subscribe())}else this._keydownSubscription?.unsubscribe(),this._outsideClickSubscription?.unsubscribe(),this._keydownSubscription=this._outsideClickSubscription=null}_getOverlayConfig(){return new Mo({positionStrategy:this._getOverlayPosition(),scrollStrategy:this._scrollStrategy(),width:this._getPanelWidth(),direction:this._dir??void 0,hasBackdrop:this._defaults?.hasBackdrop,backdropClass:this._defaults?.backdropClass||"cdk-overlay-transparent-backdrop",panelClass:this._overlayPanelClass,disableAnimations:this._animationsDisabled})}_getOverlayPosition(){let e=yo(this._injector,this._getConnectedElement()).withFlexibleDimensions(!1).withPush(!1);return this._setStrategyPositions(e),this._positionStrategy=e,e}_setStrategyPositions(e){let i=[{originX:"start",originY:"bottom",overlayX:"start",overlayY:"top"},{originX:"end",originY:"bottom",overlayX:"end",overlayY:"top"}],t=this._aboveClass,l=[{originX:"start",originY:"top",overlayX:"start",overlayY:"bottom",panelClass:t},{originX:"end",originY:"top",overlayX:"end",overlayY:"bottom",panelClass:t}],c;this.position==="above"?c=l:this.position==="below"?c=i:c=[...i,...l],e.withPositions(c)}_getConnectedElement(){return this.connectedTo?this.connectedTo.elementRef:this._formField?this._formField.getConnectedOverlayOrigin():this._element}_getPanelWidth(){return this.autocomplete.panelWidth||this._getHostWidth()}_getHostWidth(){return this._getConnectedElement().nativeElement.getBoundingClientRect().width}_resetActiveItem(){let e=this.autocomplete;if(e.autoActiveFirstOption){let i=-1;for(let t=0;t<e.options.length;t++)if(!e.options.get(t).disabled){i=t;break}e._keyManager.setActiveItem(i)}else e._keyManager.setActiveItem(-1)}_canOpen(){let e=this._element.nativeElement;return!e.readOnly&&!e.disabled&&!this.autocompleteDisabled}_scrollToOption(e){let i=this.autocomplete,t=Qo(e,i.options,i.optionGroups);if(e===0&&t===1)i._setScrollTop(0);else if(i.panel){let l=i.options.toArray()[e];if(l){let c=l._getHostElement(),g=Yo(c.offsetTop,c.offsetHeight,i._getScrollTop(),i.panel.nativeElement.offsetHeight);i._setScrollTop(g)}}}_trackedModal=null;_applyModalPanelOwnership(){let e=this._element.nativeElement.closest('body > .cdk-overlay-container [aria-modal="true"]');if(!e)return;let i=this.autocomplete.id;this._trackedModal&&Qt(this._trackedModal,"aria-owns",i),ui(e,"aria-owns",i),this._trackedModal=e}_clearFromModal(){if(this._trackedModal){let e=this.autocomplete.id;Qt(this._trackedModal,"aria-owns",e),this._trackedModal=null}}static \u0275fac=function(i){return new(i||o)};static \u0275dir=Ke({type:o,selectors:[["input","matAutocomplete",""],["textarea","matAutocomplete",""]],hostAttrs:[1,"mat-mdc-autocomplete-trigger"],hostVars:7,hostBindings:function(i,t){i&1&&v("focusin",function(){return t._handleFocus()})("blur",function(){return t._onTouched()})("input",function(c){return t._handleInput(c)})("keydown",function(c){return t._handleKeydown(c)})("click",function(){return t._handleClick()}),i&2&&$("autocomplete",t.autocompleteAttribute)("role",t.autocompleteDisabled?null:"combobox")("aria-autocomplete",t.autocompleteDisabled?null:"list")("aria-activedescendant",t.panelOpen&&t.activeOption?t.activeOption.id:null)("aria-expanded",t.autocompleteDisabled?null:t.panelOpen.toString())("aria-controls",t.autocompleteDisabled||!t.panelOpen||t.autocomplete==null?null:t.autocomplete.id)("aria-haspopup",t.autocompleteDisabled?null:"listbox")},inputs:{autocomplete:[0,"matAutocomplete","autocomplete"],position:[0,"matAutocompletePosition","position"],connectedTo:[0,"matAutocompleteConnectedTo","connectedTo"],autocompleteAttribute:[0,"autocomplete","autocompleteAttribute"],autocompleteDisabled:[2,"matAutocompleteDisabled","autocompleteDisabled",R]},exportAs:["matAutocompleteTrigger"],features:[St([oa]),at]})}return o})(),pn=(()=>{class o{static \u0275fac=function(i){return new(i||o)};static \u0275mod=De({type:o});static \u0275inj=Ge({providers:[aa],imports:[xo,wt,ne,vo,wt,ne]})}return o})();var la=(o,d)=>d.path;function sa(o,d){o&1&&b(0,"i",22)}function da(o,d){o&1&&b(0,"i",23)}function ca(o,d){if(o&1&&(a(0,"mat-option",16),r(1),n()),o&2){let e=d.$implicit;m("value",e),s(),dt("",e.properties.quantity,": ",e.properties.display)}}function ma(o,d){if(o&1){let e=D();a(0,"div",5)(1,"mat-form-field",21)(2,"mat-label"),p(3,sa,1,0,"i",22)(4,da,1,0,"i",23),r(5," Filter"),n(),a(6,"mat-select",24,2),v("selectionChange",function(){M(e),h();let t=oe(11),l=h();return y(l.pathFormGroup().controls.path.setValue(t.value))}),a(8,"mat-option"),r(9,"All"),n(),S(10,ca,2,3,"mat-option",16,G),n()()()}if(o&2){let e=oe(7),i=h(2);s(3),u(e.value?4:3),s(3),m("formControl",i.pathSkUnitsFilterControl),s(4),T(i.pathSkUnitsFiltersList)}}function Aa(o,d){o&1&&(a(0,"span",8),r(1,"(optional)"),n())}function pa(o,d){o&1&&(a(0,"mat-hint"),r(1,"Leave blank to disable this path."),n())}function ua(o,d){if(o&1){let e=D();a(0,"button",25),v("click",function(){M(e);let t=h(2);return y(t.pathFormGroup().controls.path.setValue(""))}),a(1,"mat-icon"),r(2,"close"),n()()}}function ga(o,d){o&1&&(a(0,"mat-error"),r(1," Path is required. Please enter a valid Signal K path. "),n())}function fa(o,d){o&1&&(a(0,"mat-error"),r(1," Path not recognized. Please enter a path from the server's published list. "),n())}function ha(o,d){if(o&1&&(a(0,"span"),r(1),n(),b(2,"br"),a(3,"small",26),r(4),n()),o&2){let e=h().$implicit;s(),x(e.path),s(3),x(e.meta.description)}}function ba(o,d){if(o&1&&r(0),o&2){let e=h().$implicit;q(" ",e.path," ")}}function Ca(o,d){if(o&1&&(a(0,"mat-option",11),p(1,ha,5,2)(2,ba,1,1),n()),o&2){let e=d.$implicit;m("value",e.path),s(),u(e.meta!==void 0?1:2)}}function va(o,d){if(o&1&&(a(0,"mat-option",16),r(1),n()),o&2){let e=d.$implicit;m("value",e),s(),q(" ",e," ")}}function _a(o,d){if(o&1&&(a(0,"mat-option",16),r(1),n()),o&2){let e=d.$implicit;m("value",e.measure),s(),q(" ",e.description," ")}}function Ma(o,d){if(o&1&&(a(0,"mat-optgroup",28),S(1,_a,2,2,"mat-option",16,G),n()),o&2){let e=d.$implicit;m("label",e.group),s(),T(e.units)}}function ya(o,d){if(o&1&&(a(0,"mat-form-field",20)(1,"mat-label"),r(2,"Display Format"),n(),a(3,"mat-select",27),S(4,Ma,3,1,"mat-optgroup",28,G),n()()),o&2){let e=h(2);s(4),T(e.unitList.conversions)}}function Sa(o,d){if(o&1&&(a(0,"div",3)(1,"div",4)(2,"span"),r(3),n()(),p(4,ma,12,2,"div",5),a(5,"div",6)(6,"mat-form-field",7)(7,"mat-label"),r(8," Signal K Path "),p(9,Aa,2,0,"span",8),n(),b(10,"input",9,0),p(12,pa,2,0,"mat-hint"),p(13,ua,3,0,"button",10),p(14,ga,2,0,"mat-error")(15,fa,2,0,"mat-error"),a(16,"mat-autocomplete",null,1),S(18,Ca,3,2,"mat-option",11,la),Ve(20,"async"),n()()(),a(21,"div",12)(22,"div",13)(23,"mat-form-field",14)(24,"mat-label"),r(25,"Data Source"),n(),a(26,"mat-select",15),S(27,va,2,2,"mat-option",16,G),n()()(),a(29,"div",17)(30,"mat-form-field",14)(31,"mat-label"),r(32,"Sample Time"),n(),b(33,"input",18),n()(),a(34,"div",19),p(35,ya,6,0,"mat-form-field",20),n()()()),o&2){let e,i=oe(17),t=h();m("formGroup",t.pathFormGroup()),s(2),Be("color",t.pathFormGroup().enabled?"":"rgba(255,255,255,0.5)"),s(),x(t.pathFormGroup().value.description),s(),u(t.pathFormGroup().value.pathType==="number"&&t.showPathSkUnitsFilter?4:-1),s(5),u(t.pathFormGroup().value.pathRequired===!1?9:-1),s(),m("matAutocomplete",i),s(2),u(t.pathFormGroup().value.pathRequired===!1?12:-1),s(),u(t.pathFormGroup().value.path?13:-1),s(),u((e=t.pathFormGroup().controls.path.errors)!=null&&e.required?14:(e=t.pathFormGroup().controls.path.errors)!=null&&e.requireMatch?15:-1),s(4),T(Le(20,11,t.filteredPaths)),s(9),T(t.availableSources),s(8),u(t.pathFormGroup().value.pathType==="number"&&t.pathFormGroup().value.showConvertUnitTo===void 0||t.pathFormGroup().value.pathType==="number"&&t.pathFormGroup().value.showConvertUnitTo===!0?35:-1)}}function Ta(o){return d=>{let e=d.parent?.value?.pathRequired!==!1,i=d.value;return e?i===null||i===""?{requireMatch:!0}:o().some(c=>c.path===i)?null:{requireMatch:!0}:i===null||i===""||o().some(c=>c.path===i)?null:{requireMatch:!0}}}var un=(()=>{class o{_data=A(po);_units=A(Ct);_connection=A(eo);_destroyRef=A(Ie);pathFormGroup=f.required();multiCTRLArray=f.required();filterSelfPaths=f.required();availablePaths;filteredPaths=new Ei(null);availableSources;unitList={base:"",conversions:[]};showPathSkUnitsFilter=!1;pathSkUnitsFilterControl=new Po(null);pathSkUnitsFiltersList;unitlessUnit={unit:"unitless",properties:{display:"(null)",quantity:"Unitless",quantityDisplay:"(null)",description:""}};ngOnInit(){let e=this.pathFormGroup();e.controls.path.disabled||(this.pathSkUnitsFiltersList=this._units.skBaseUnits.sort((i,t)=>i.properties.quantity>t.properties.quantity?1:-1),this.pathSkUnitsFiltersList.unshift(this.unitlessUnit),e.value.pathSkUnitsFilter&&this.pathSkUnitsFilterControl.setValue(this.pathSkUnitsFiltersList.find(i=>i.unit===this.pathFormGroup().value.pathSkUnitsFilter),{onlySelf:!0}),e.value.showPathSkUnitsFilter&&(this.showPathSkUnitsFilter=e.value.showPathSkUnitsFilter),e.controls.path.setValidators([Ta(()=>this.getPaths())]),e.controls.path.updateValueAndValidity({onlySelf:!0,emitEvent:!1}),e.controls.pathRequired&&e.controls.pathRequired.valueChanges.pipe(Ne(this._destroyRef)).subscribe(()=>{this.pathFormGroup().controls.path.updateValueAndValidity()}),e.controls.path.valid?this.enableFormFields(!1):this.disablePathFields(),e.controls.sampleTime||(e.addControl("sampleTime",new re("500",H.required)),e.controls.sampleTime.updateValueAndValidity({onlySelf:!0,emitEvent:!1})),e.controls.path.valueChanges.pipe(Gi(i=>i===""?mi(0):mi(350)),ot(""),et(i=>this.filterPaths(i||""))).pipe(Ne(this._destroyRef)).subscribe(()=>{let i=this.pathFormGroup();i.controls.path.pristine||(i.controls.path.valid?(this.enableFormFields(!0),this.updatePathMetaBoundDisplayName(i.controls.path.value),this.updatePathMetaBoundDisplayScale(i.controls.path.value)):this.disablePathFields())}),e.controls.pathType.valueChanges.pipe(Ne(this._destroyRef)).subscribe(()=>{let i=this.pathFormGroup();i.value.showPathSkUnitsFilter?this.pathSkUnitsFilterControl.setValue(this.unitlessUnit):this.pathSkUnitsFilterControl.setValue(null),i.controls.path.updateValueAndValidity()}))}ngOnChanges(e){e.filterSelfPaths&&!e.filterSelfPaths.firstChange&&this.pathFormGroup().controls.path.updateValueAndValidity()}getPaths(){let e=this.pathFormGroup().controls.pathType.value,i=this.filterSelfPaths(),t=!1,l=this.pathFormGroup();if(l.value.supportsPut){let c=!1;this.multiCTRLArray().length>0&&(c=this.multiCTRLArray().some(g=>g.pathID===this.pathFormGroup().value.pathID&&g.type==="3")),c?t=!1:t=to(this._connection.skServerVersion,"2.12.0",">=")?l.value.supportsPut:!1}return this._data.getPathsAndMetaByType(e,t,i).sort()}filterPaths(e){let i=e.toLowerCase(),t=this.getPaths();if(this.pathSkUnitsFilterControl.value){let l=this.pathSkUnitsFilterControl.value.unit;t=t.filter(c=>{let g=!!c.meta&&!!c.meta.units,C=l==="unitless";return g&&c.meta.units===l||!g&&C})}t=t.filter(l=>l.path.toLowerCase().includes(i)),this.filteredPaths.next(t)}enableFormFields(e){let i=this._data.getPathObject(this.pathFormGroup().controls.path.value);if(i!=null){this.pathFormGroup().controls.sampleTime.enable({onlySelf:!1});let t=this.pathFormGroup();t.controls.pathType.value=="number"&&(this.unitList=this._units.getConversionsForPath(t.controls.path.value),e&&t.controls.convertUnitTo.setValue(this.unitList.base,{onlySelf:!0}),t.controls.convertUnitTo.enable({onlySelf:!1})),Object.keys(i.sources).length==1?(this.availableSources=["default"],e?t.controls.source.value!="default"&&t.controls.source.setValue("default",{onlySelf:!0}):t.controls.source.value!="default"&&t.controls.source.setValue("",{onlySelf:!0})):Object.keys(i.sources).length>1&&(this.availableSources=Object.keys(i.sources),t.controls.source.value=="default"&&t.controls.source.reset()),t.controls.source.enable({onlySelf:!1})}else this.disablePathFields()}disablePathFields(){this.pathFormGroup().controls.source.reset("",{onlySelf:!0}),this.pathFormGroup().controls.source.disable({onlySelf:!1}),this.pathFormGroup().controls.sampleTime.disable({onlySelf:!1});let e=this.pathFormGroup();e.controls.pathType.value=="number"&&(e.controls.convertUnitTo.reset("",{onlySelf:!0}),e.controls.convertUnitTo.disable({onlySelf:!1}))}updatePathMetaBoundDisplayName(e){let i=this.pathFormGroup();if(!Object.prototype.hasOwnProperty.call(i.parent.parent.value,"displayName"))return;let t=this._data.getPathMeta(e);t?.displayName&&i.parent.parent.controls.displayName.setValue(t.displayName)}updatePathMetaBoundDisplayScale(e){let i=this.pathFormGroup();if(!Object.prototype.hasOwnProperty.call(i.parent.parent.value,"displayScale"))return;let t=this._data.getPathMeta(e);if(t?.displayScale){let l=i.parent.parent.get("displayScale"),c=i.controls.convertUnitTo.value;t.displayScale.lower!==null&&t.displayScale.lower!==void 0&&l.controls.lower.setValue(this._units.convertToUnit(c,t.displayScale.lower)),t.displayScale.upper!==null&&t.displayScale.upper!==void 0&&l.controls.upper.setValue(this._units.convertToUnit(c,t.displayScale.upper)),t.displayScale.type!==null&&t.displayScale.type!==void 0&&l.controls.type.setValue(t.displayScale.type),t.displayScale.power!==null&&t.displayScale.power!==void 0&&l.controls.power.setValue(t.displayScale.power)}}static \u0275fac=function(i){return new(i||o)};static \u0275cmp=_({type:o,selectors:[["path-control-config"]],inputs:{pathFormGroup:[1,"pathFormGroup"],multiCTRLArray:[1,"multiCTRLArray"],filterSelfPaths:[1,"filterSelfPaths"]},features:[at],decls:1,vars:1,consts:[["pathInput",""],["pathAutoComplete","matAutocomplete"],["pathUnitsFilter",""],[1,"flex-container","rounded-card","rounded-card-color",3,"formGroup"],[1,"flex-field-100"],[1,"flex-field-fixed"],[1,"flex-field-to-100"],["floatLabel","auto","appearance","fill",1,"pathField"],[1,"optional-label"],["type","text","matInput","","placeholder","Type to use autocomplete or select from list","formControlName","path",3,"matAutocomplete"],["mat-icon-button","","matIconSuffix","","aria-label","Clear"],[2,"min-height","48px","line-height","1.15","height","auto","padding","8px 16px","white-space","normal",3,"value"],[1,"pathProperties"],[1,"sourceField"],["appearance","outline","floatLabel","always",1,"fields"],["placeholder","Select source","formControlName","source","required",""],[3,"value"],[1,"sampleTimeField"],["matInput","","type","number","placeholder","Sample time in milliseconds","formControlName","sampleTime","required",""],[1,"unitField"],[1,"fields"],["floatLabel","auto","appearance","fill",1,"filter-path"],[1,"fa-solid","fa-filter"],[1,"fa-solid","fa-filter-circle-xmark"],["panelWidth","",3,"selectionChange","formControl"],["mat-icon-button","","matIconSuffix","","aria-label","Clear",3,"click"],[1,"pathMetaDescription"],["placeholder","Select unit","formControlName","convertUnitTo","required",""],[3,"label"]],template:function(i,t){i&1&&p(0,Sa,36,13,"div",3),i&2&&u(t.pathFormGroup().value.isPathConfigurable?0:-1)},dependencies:[X,j,Ue,O,Z,B,W,be,z,qe,L,V,K,pn,ni,J,bt,kt,ee,ht,ft,se,Y,F,Bo,Wt],styles:[".pathGroup[_ngcontent-%COMP%]{width:100%}.pathGroupFields[_ngcontent-%COMP%]{display:block;width:calc(100% - 5px)}.pathField[_ngcontent-%COMP%]{width:100%}.pathProperties[_ngcontent-%COMP%]{display:flex;flex-flow:row wrap;justify-content:space-between;align-items:center;align-content:flex-start;gap:10px}.fields[_ngcontent-%COMP%]{width:100%}.sourceField[_ngcontent-%COMP%]{flex:3 1}.sampleTimeField[_ngcontent-%COMP%]{flex:1 3}.unitField[_ngcontent-%COMP%]{flex:3 1}"]})}return o})();function xa(o,d){if(o&1&&b(0,"path-control-config",6),o&2){let e=d.$implicit,i=h(2);m("pathFormGroup",e)("filterSelfPaths",i.filterSelfPaths().value)("multiCTRLArray",i.multiCTRLArray)}}function wa(o,d){if(o&1&&S(0,xa,1,3,"path-control-config",6,G),o&2){let e=h();T(e.pathsFormGroup.controls)}}function Ea(o,d){if(o&1&&b(0,"path-control-config",6),o&2){let e=d.$implicit,i=h(2);m("pathFormGroup",i.pathsFormGroup.get(e))("filterSelfPaths",i.filterSelfPaths().value)("multiCTRLArray",i.multiCTRLArray)}}function ka(o,d){if(o&1&&(S(0,Ea,1,3,"path-control-config",6,G),Ve(2,"objectKeys")),o&2){let e=h();T(Le(2,0,e.pathsFormGroup.controls))}}var gn=(()=>{class o{rootFormGroup=A(z);fb=A(gt);formGroupName=f.required();isArray=f.required();enableTimeout=f.required();dataTimeout=f.required();filterSelfPaths=f.required();addPathEvent=f(void 0);delPathEvent=f(void 0);updatePathEvent=f(void 0);pathsFormGroup;multiCTRLArray=[];ngOnInit(){this.isArray()?(this.pathsFormGroup=this.rootFormGroup.control.get(this.formGroupName()),this.multiCTRLArray=this.rootFormGroup.control.get("multiChildCtrls").value):this.pathsFormGroup=this.rootFormGroup.control.get(this.formGroupName())}addPath(e){this.pathsFormGroup.push(this.fb.group({description:[e.path.description],path:[e.path.path,H.required],pathID:[e.path.pathID],source:[e.path.source,H.required],pathType:[e.path.pathType],isPathConfigurable:[e.path.isPathConfigurable],showPathSkUnitsFilter:[e.path.showPathSkUnitsFilter],pathSkUnitsFilter:[e.path.pathSkUnitsFilter],convertUnitTo:[e.path.convertUnitTo],sampleTime:[e.path.sampleTime],supportsPut:[e.path.supportsPut]})),this.pathsFormGroup.updateValueAndValidity(),this.multiCTRLArray=this.rootFormGroup.control.get("multiChildCtrls").value}delPath(){this.multiCTRLArray=this.rootFormGroup.control.get("multiChildCtrls").value}updatePath(e){this.multiCTRLArray=e}ngOnChanges(e){e.addPathEvent&&!e.addPathEvent.firstChange&&this.addPath(e.addPathEvent.currentValue),e.delPathEvent&&!e.delPathEvent.firstChange&&this.delPath(),e.updatePathEvent&&!e.updatePathEvent.firstChange&&this.updatePath(e.updatePathEvent.currentValue)}static \u0275fac=function(i){return new(i||o)};static \u0275cmp=_({type:o,selectors:[["paths-options"]],inputs:{formGroupName:[1,"formGroupName"],isArray:[1,"isArray"],enableTimeout:[1,"enableTimeout"],dataTimeout:[1,"dataTimeout"],filterSelfPaths:[1,"filterSelfPaths"],addPathEvent:[1,"addPathEvent"],delPathEvent:[1,"delPathEvent"],updatePathEvent:[1,"updatePathEvent"]},features:[at],decls:14,vars:5,consts:[[1,"widget-options-grid"],["name","enableTimeout",3,"formControl"],["type","number","matNativeControl","","placeholder","Time in seconds...","name","dataTimeout","min","2","required","",3,"formControl"],["matTextSuffix",""],[3,"formGroup"],["name","filterSelfPaths",3,"formControl"],[2,"display","block",3,"pathFormGroup","filterSelfPaths","multiCTRLArray"]],template:function(i,t){i&1&&(a(0,"div",0)(1,"mat-checkbox",1),r(2," Enable Widget Data TTL "),n(),a(3,"mat-form-field")(4,"mat-label"),r(5,"TTL Timeout For Paths"),n(),b(6,"input",2),a(7,"span",3),r(8,"Seconds"),n()()(),Ui(9,4),p(10,wa,2,0)(11,ka,3,2),qi(),a(12,"mat-checkbox",5),r(13,` Restrict to own vessel
@@ -1 +1 @@
1
- import{a as k,b as A,g as v}from"./chunk-SPUZNRYQ.js";import{a as b,j as g}from"./chunk-4MSEQKGR.js";import{Jc as C,Oc as D,Pc as l,Tc as w,Xc as N,a as c,ad as I,b as f,c as P,ca as m,dc as p,f as S,fc as d,ga as n,j as V,l as u,pa as R,ra as h,t as y}from"./chunk-PB7HT3XU.js";var T=(()=>{class o{_settings=n(g);_router=n(N);dashboards=h([],{equal:k});activeDashboard=h(0);_widgetAction=new u(null);widgetAction$=this._widgetAction.asObservable();_isDashboardStatic=new u(!0);isDashboardStatic$=this._isDashboardStatic.asObservable();isDashboardStatic=l(this.isDashboardStatic$);blankDashboard=[{id:null,name:"Dashboard 1",icon:"dashboard-dashboard",configuration:[{w:12,h:12,id:"d1d58e6f-f8b4-4a72-9597-7f92aa6776fc",selector:"widget-tutorial",input:{widgetProperties:{type:"widget-tutorial",uuid:"d1d58e6f-f8b4-4a72-9597-7f92aa6776fc"}},x:0,y:0}]}];constructor(){let e=this._settings.getDashboardConfig();if(!e||e.length===0){console.warn("[Dashboard Service] No dashboards found in settings, creating blank dashboard");let t=this.blankDashboard.map(r=>f(c({},r),{id:b.create()}));this.dashboards.set([...t])}else this.dashboards.set(this._settings.getDashboardConfig());d(()=>{this._settings.saveDashboards(this.dashboards())})}toggleStaticDashboard(){this._isDashboardStatic.next(!this._isDashboardStatic.value)}add(e,t,r){this.dashboards.update(s=>[...s,{id:b.create(),name:e,icon:r,configuration:t}])}update(e,t,r){this.dashboards.update(s=>s.map((i,a)=>a===e?f(c({},i),{name:t,icon:r}):i))}delete(e){this.dashboards.update(t=>t.filter((r,s)=>s!==e)),this.dashboards().length===0?(this.add("Dashboard "+(this.dashboards().length+1),[]),this.activeDashboard.set(0)):this.activeDashboard()>this.dashboards().length-1&&this.activeDashboard.set(this.dashboards().length-1)}duplicate(e,t,r){if(e<0||e>=this.dashboards().length){console.error(`[Dashboard Service] Invalid itemIndex: ${e}`);return}let s=this.dashboards()[e],i=A(s);i.id=b.create(),i.name=t,i.icon=r||"dashboard-dashboard",Array.isArray(i.configuration)?i.configuration.forEach(a=>{a&&a.input?.widgetProperties?(a.id=b.create(),a.input.widgetProperties.uuid=a.id):console.error("Dashboard Service] Widget configuration is missing required properties:",a)}):(console.error("Dashboard Service] Dashboard configuration is not an array:",i.configuration),i.configuration=[]),this.dashboards.update(a=>[...a,i])}updateConfiguration(e,t){this.dashboards.update(r=>r.map((s,i)=>i===e?k(s.configuration,t)?s:f(c({},s),{configuration:t}):s))}previousDashboard(){this.activeDashboard()+1>this.dashboards().length-1?this.activeDashboard.set(0):this.activeDashboard.set(this.activeDashboard()+1)}nextDashboard(){this.activeDashboard()-1<0?this.activeDashboard.set(this.dashboards().length-1):this.activeDashboard.set(this.activeDashboard()-1)}setActiveDashboard(e){e>=0&&e<this.dashboards().length?this.activeDashboard.set(e):console.error(`[Dashboard Service] Invalid dashboard ID: ${e}`)}navigateToActive(){this._router.navigate(["/dashboard",this.activeDashboard()])}navigateTo(e){e>=0&&e<this.dashboards().length?this._router.navigate(["/dashboard",e]):console.error(`[Dashboard Service] Invalid dashboard ID: ${e}`)}navigateToNextDashboard(){let e=null;this.activeDashboard()-1<0?e=this.dashboards().length-1:e=this.activeDashboard()-1,this._router.navigate(["/dashboard",e])}navigateToPreviousDashboard(){let e=null;this.activeDashboard()+1>=this.dashboards().length?e=0:e=this.activeDashboard()+1,this._router.navigate(["/dashboard",e])}deleteWidget(e){this._widgetAction.next({id:e,operation:"delete"})}duplicateWidget(e){this._widgetAction.next({id:e,operation:"duplicate"})}setStaticDashboard(e){this._isDashboardStatic.next(e)}static \u0275fac=function(t){return new(t||o)};static \u0275prov=m({token:o,factory:o.\u0275fac,providedIn:"root"})}return o})();var j={name:"@mxtommy/kip",version:"3.10.0-beta.35",description:"An advanced and versatile marine instrumentation package to display Signal K data.",license:"MIT",author:{name:"Thomas St.Pierre, David Godin"},contributors:[{name:"David Godin",email:"godind@hotmail.com"},{name:"Thomas St.Pierre",email:"thomas@samoht.ca"}],homepage:"https://github.com/mxtommy/Kip",bugs:"https://github.com/mxtommy/Kip/issues",repository:{type:"git",url:"git+https://github.com/mxtommy/Kip.git"},keywords:["signalk-webapp","signalk-category-instruments","signalk-category-notifications","signalk-node-server-plugin","signal k","signalk","instruments","dashboard","marine","nmea"],signalk:{appIcon:"assets/icon-72x72.png",displayName:"KIP Instrument MFD"},main:"plugin/index.js","signalk-plugin-enabled-by-default":!0,scripts:{test:"ng test",lint:"ng lint",dev:"ng serve --configuration=dev --serve-path=/@mxtommy/kip/","build:plugin":"tsc -p ./kip-plugin/tsconfig.plugin.json","build:dev":"ng build --configuration=dev","build:prod":"ng build --configuration=production","build:all":"npm run build:plugin && npm run build:prod",e2e:"ng e2e"},devDependencies:{"@angular-devkit/build-angular":"^20.1.6","@angular/animations":"20.1.7","@angular/build":"^20.1.6","@angular/cdk":"20.1.6","@angular/cli":"^20.1.6","@angular/common":"20.1.7","@angular/compiler":"20.1.7","@angular/compiler-cli":"20.1.7","@angular/core":"20.1.7","@angular/forms":"20.1.7","@angular/language-service":"20.1.7","@angular/material":"20.1.6","@angular/platform-browser":"20.1.7","@angular/platform-browser-dynamic":"20.1.7","@angular/router":"20.1.7","@godind/ng-canvas-gauges":"^6.2.1","@robloche/chartjs-plugin-streaming":"^3.1.0","@types/canvas-gauges":"^2.1.8","@types/howler":"^2.2.10","@types/jasmine":"~3.6.0","@types/jasminewd2":"^2.0.9","@types/js-quantities":"^1.6.6","@types/lodash-es":"^4.17.9","@types/node":"^24.1.0","@zakj/no-sleep":"^0.13.5","angular-eslint":"20.1.1","chart.js":"^4.4.9","chartjs-adapter-date-fns":"^3.0.0","chartjs-plugin-annotation":"^3.0.1",codelyzer:"^6.0.0","compare-versions":"^6.1.1","core-js":"^3.13.1","date-fns":"^2.30.0",eslint:"^9.29.0",gridstack:"^11.4.0",howler:"^2.2.4","jasmine-core":"~4.0.1","jasmine-spec-reporter":"~5.0.0","js-quantities":"^1.8.0",karma:"^6.4.4","karma-chrome-launcher":"~3.1.0","karma-cli":"~2.0.0","karma-coverage-istanbul-reporter":"^3.0.3","karma-jasmine":"~4.0.0","karma-jasmine-html-reporter":"^1.6.0","lodash-es":"^4.17.21","ng-packagr":"^20.0.1","ngx-markdown":"^20.0.0","ngx-resize-observer":"^3.1.0",protractor:"~7.0.0","pwa-asset-generator":"^8.1.1",rxjs:"^7.8.2",sass:"^1.49.9",screenfull:"^6.0.2",steelseries:"^2.0.9","ts-node":"^10.9.2",tslib:"^2.6.2",typescript:"^5.8.3","zone.js":"^0.15.1"},dependencies:{"@signalk/server-api":"^2.7.2"}};var U=(()=>{class o{_http=n(C);_settings=n(g);_dashboard=n(T);_data=n(v);_destroyRef=n(R);_displayName=l(this._settings.getInstanceNameAsO());_isRemoteControl=l(this._settings.getIsRemoteControlAsO());PLUGIN_URL=this._settings.signalkUrl.url+"/plugins/kip";KIP_UUID=this._settings.KipUUID;ACTIVE_SCREEN_PATH=`self.displays.${this.KIP_UUID}.activeScreen`;previousIsRemoteControl=!1;constructor(){d(()=>{let e=this._isRemoteControl();if(!e&&!this.previousIsRemoteControl)return;let t=this._displayName(),r=this._dashboard.dashboards();p(()=>{this.previousIsRemoteControl=e;let s,i;if(!e)s=null,i=null;else{let a=r.map(O=>{var _=O,{configuration:E}=_,$=P(_,["configuration"]);return $});s={displayName:t,screens:a},i=this._dashboard.activeDashboard()}this.shareScreens(this.KIP_UUID,s).then(()=>{console.log("[Remote Dashboards] Screens shared")}).catch(a=>{console.error("[Remote Dashboards] Error sharing screens:",a)}),this.setActiveDashboard(this.KIP_UUID,i).then(()=>{console.log("[Remote Dashboards] Shared active dashboard")}).catch(a=>{console.error("[Remote Dashboards] Error sharing active dashboard:",a)})})}),d(()=>{if(!this._isRemoteControl())return;let t=this._dashboard.activeDashboard();p(()=>{this.setActiveDashboard(this.KIP_UUID,t).then(()=>{console.log("[Remote Dashboards] Shared active dashboard")}).catch(r=>{console.error("[Remote Dashboards] Error sharing active dashboard:",r)})})}),this.setupRemoteControlListener()}setupRemoteControlListener(){this._settings.getIsRemoteControlAsO().pipe(D(this._destroyRef)).subscribe(e=>{e?this._data.subscribePath(this.ACTIVE_SCREEN_PATH,"default").pipe(D(this._destroyRef)).subscribe(t=>{if(t.data.value==null)return;let r=Number(t.data.value);!isNaN(r)&&r>=0&&r<this._dashboard.dashboards().length&&this._dashboard.activeDashboard()!==r&&(console.log(`[Remote Dashboards] Setting active dashboard to ${r} from remote update`),this._dashboard.navigateTo(r))}):this._data.unsubscribePath(this.ACTIVE_SCREEN_PATH)})}setActiveDashboard(e,t){return S(this,null,function*(){let r=t===null?null:{screenIdx:t};return y(this._http.put(`${this.PLUGIN_URL}/displays/${e}/activeScreen`,r))})}shareScreens(e,t){let r=t===null?null:c({},t);return y(this._http.put(`${this.PLUGIN_URL}/displays/${e}`,r))}static \u0275fac=function(t){return new(t||o)};static \u0275prov=m({token:o,factory:o.\u0275fac,providedIn:"root"})}return o})();var ve=(()=>{class o{MODE_PATH="self.environment.mode";configurableThemeColors=[{label:"Contrast",value:"contrast"},{label:"Blue",value:"blue"},{label:"Green",value:"green"},{label:"Orange",value:"orange"},{label:"Yellow",value:"yellow"},{label:"Pink",value:"pink"},{label:"Purple",value:"purple"},{label:"Grey",value:"grey"}];snackbarAppNotifications=new V;cssThemeColorRoles$=new u(null);_cssThemeColorRoles=null;_settings=n(g);_data=n(v);_iconRegistry=n(I);_sanitizer=n(w);_remote=n(U);isNightMode=h(!1);_useAutoNightMode=l(this._settings.getAutoNightModeAsO(),{requireSync:!0});_theme=l(this._settings.getThemeNameAsO(),{requireSync:!0});_redNightMode=l(this._settings.getRedNightModeAsO(),{requireSync:!0});_environmentMode=l(this._data.subscribePath(this.MODE_PATH,"default"));appVersion=h(j.version);browserVersion=h("Unknown");osVersion=h("Unknown");constructor(){this._iconRegistry.addSvgIconSet(this._sanitizer.bypassSecurityTrustResourceUrl("assets/svg/icons.svg")),d(()=>{this._theme()==="light-theme"?document.body.classList.toggle("light-theme",this._theme()==="light-theme"):document.body.classList.remove("light-theme")}),d(()=>{let e=this._environmentMode().data.value;this._useAutoNightMode()&&(this.isNightMode.set(e==="night"),this.toggleDayNightMode())}),d(()=>{let e=this._redNightMode();p(()=>{e?this.toggleDayNightMode():this.toggleDayNightMode()})}),this.readThemeCssRoleVariables(),this._cssThemeColorRoles=this.cssThemeColorRoles$.getValue(),this.browserVersion.set(this.getBrowserVersion()),this.osVersion.set(this.getOSVersion()),console.log("*********** KIP Version Information ***********"),console.log(`** App Version: ${this.appVersion()}`),console.log(`** Browser Version: ${this.browserVersion()}`),console.log(`** OS Version: ${this.osVersion()}`),console.log("***********************************************")}sendSnackbarNotification(e,t=1e4,r=!1,s="Dismiss"){this.snackbarAppNotifications.next({message:e,duration:t,silent:r,action:s})}getSnackbarAppNotifications(){return this.snackbarAppNotifications.asObservable()}readThemeCssRoleVariables(){let e=document.body,t=getComputedStyle(e),r={background:t.getPropertyValue("--mat-sys-background").trim(),cardColor:t.getPropertyValue("--kip-widget-card-background-color").trim(),blue:t.getPropertyValue("--kip-blue-color").trim(),blueDim:t.getPropertyValue("--kip-blue-dim-color").trim(),blueDimmer:t.getPropertyValue("--kip-blue-dimmer-color").trim(),green:t.getPropertyValue("--kip-green-color").trim(),greenDim:t.getPropertyValue("--kip-green-dim-color").trim(),greenDimmer:t.getPropertyValue("--kip-green-dimmer-color").trim(),grey:t.getPropertyValue("--kip-grey-color").trim(),greyDim:t.getPropertyValue("--kip-grey-dim-color").trim(),greyDimmer:t.getPropertyValue("--kip-grey-dimmer-color").trim(),orange:t.getPropertyValue("--kip-orange-color").trim(),orangeDim:t.getPropertyValue("--kip-orange-dim-color").trim(),orangeDimmer:t.getPropertyValue("--kip-orange-dimmer-color").trim(),pink:t.getPropertyValue("--kip-pink-color").trim(),pinkDim:t.getPropertyValue("--kip-pink-dim-color").trim(),pinkDimmer:t.getPropertyValue("--kip-pink-dimmer-color").trim(),purple:t.getPropertyValue("--kip-purple-color").trim(),purpleDim:t.getPropertyValue("--kip-purple-dim-color").trim(),purpleDimmer:t.getPropertyValue("--kip-purple-dimmer-color").trim(),contrast:t.getPropertyValue("--kip-contrast-color").trim(),contrastDim:t.getPropertyValue("--kip-contrast-dim-color").trim(),contrastDimmer:t.getPropertyValue("--kip-contrast-dimmer-color").trim(),yellow:t.getPropertyValue("--kip-yellow-color").trim(),yellowDim:t.getPropertyValue("--kip-yellow-dim-color").trim(),yellowDimmer:t.getPropertyValue("--kip-yellow-dimmer-color").trim(),port:t.getPropertyValue("--kip-port-color").trim(),starboard:t.getPropertyValue("--kip-starboard-color").trim(),zoneNominal:t.getPropertyValue("--kip-zone-nominal-color").trim(),zoneAlert:t.getPropertyValue("--kip-zone-alert-color").trim(),zoneWarn:t.getPropertyValue("--kip-zone-warn-color").trim(),zoneAlarm:t.getPropertyValue("--kip-zone-alarm-color").trim(),zoneEmergency:t.getPropertyValue("--kip-zone-emergency-color").trim()};this.cssThemeColorRoles$.next(r)}get cssThemeColors(){return this._cssThemeColorRoles}setBrightness(e,t=!1){let r=document.body;r.style.setProperty("--kip-nightModeBrightness",`${e}`);let s=t?" sepia(0.5) hue-rotate(-30deg)":"";r.style.setProperty("--kip-nightModeFilters",s)}toggleDayNightMode(){this.isNightMode()?this._redNightMode()?(document.body.classList.toggle("night-theme",!0),this.setBrightness(1,!1)):(this.setBrightness(this._settings.getNightModeBrightness(),!0),document.body.classList.remove("night-theme"),this._theme()==="light-theme"?document.body.classList.toggle("light-theme",this._theme()==="light-theme"):document.body.classList.remove("light-theme")):(document.body.classList.remove("night-theme"),this._theme()==="light-theme"&&document.body.classList.toggle("light-theme",this._theme()==="light-theme"),this.setBrightness(1,!1)),this.readThemeCssRoleVariables(),this._cssThemeColorRoles=this.cssThemeColorRoles$.getValue()}getBrowserVersion(){let e=navigator.userAgent,t="Unknown";return e.includes("Edg")?t=`Edge ${e.match(/Edg\/(\d+)/)?.[1]}`:e.includes("Chrome")&&!e.includes("Edg")&&!e.includes("Chromium")?t=`Chrome ${e.match(/Chrome\/(\d+)/)?.[1]}`:e.includes("Chromium")?t=`Chromium ${e.match(/Chromium\/(\d+)/)?.[1]}`:e.includes("Firefox")?t=`Firefox ${e.match(/Firefox\/(\d+)/)?.[1]}`:e.includes("Safari")&&!e.includes("Chrome")&&!e.includes("Chromium")?t=`Safari ${e.match(/Version\/(\d+)/)?.[1]}`:(e.includes("Opera")||e.includes("OPR"))&&(t=`Opera ${e.match(/(Opera|OPR)\/(\d+)/)?.[2]}`),t}getOSVersion(){let e=navigator.platform,t=navigator.userAgent;return e.startsWith("Mac")?"macOS":e.startsWith("Win")?"Windows":/Linux/.test(e)?t.includes("ARM")||t.includes("aarch64")||t.includes("Raspberry")||e.includes("armv7l")||e.includes("armv8l")?"Raspberry Pi":"Linux":"Unknown OS"}static \u0275fac=function(t){return new(t||o)};static \u0275prov=m({token:o,factory:o.\u0275fac,providedIn:"root"})}return o})();export{T as a,ve as b};
1
+ import{a as k,b as A,g as v}from"./chunk-SPUZNRYQ.js";import{a as b,j as g}from"./chunk-4MSEQKGR.js";import{Jc as C,Oc as D,Pc as l,Tc as w,Xc as N,a as c,ad as I,b as f,c as P,ca as m,dc as p,f as S,fc as d,ga as n,j as V,l as u,pa as R,ra as h,t as y}from"./chunk-PB7HT3XU.js";var T=(()=>{class o{_settings=n(g);_router=n(N);dashboards=h([],{equal:k});activeDashboard=h(0);_widgetAction=new u(null);widgetAction$=this._widgetAction.asObservable();_isDashboardStatic=new u(!0);isDashboardStatic$=this._isDashboardStatic.asObservable();isDashboardStatic=l(this.isDashboardStatic$);blankDashboard=[{id:null,name:"Dashboard 1",icon:"dashboard-dashboard",configuration:[{w:12,h:12,id:"d1d58e6f-f8b4-4a72-9597-7f92aa6776fc",selector:"widget-tutorial",input:{widgetProperties:{type:"widget-tutorial",uuid:"d1d58e6f-f8b4-4a72-9597-7f92aa6776fc"}},x:0,y:0}]}];constructor(){let e=this._settings.getDashboardConfig();if(!e||e.length===0){console.warn("[Dashboard Service] No dashboards found in settings, creating blank dashboard");let t=this.blankDashboard.map(r=>f(c({},r),{id:b.create()}));this.dashboards.set([...t])}else this.dashboards.set(this._settings.getDashboardConfig());d(()=>{this._settings.saveDashboards(this.dashboards())})}toggleStaticDashboard(){this._isDashboardStatic.next(!this._isDashboardStatic.value)}add(e,t,r){this.dashboards.update(s=>[...s,{id:b.create(),name:e,icon:r,configuration:t}])}update(e,t,r){this.dashboards.update(s=>s.map((i,a)=>a===e?f(c({},i),{name:t,icon:r}):i))}delete(e){this.dashboards.update(t=>t.filter((r,s)=>s!==e)),this.dashboards().length===0?(this.add("Dashboard "+(this.dashboards().length+1),[]),this.activeDashboard.set(0)):this.activeDashboard()>this.dashboards().length-1&&this.activeDashboard.set(this.dashboards().length-1)}duplicate(e,t,r){if(e<0||e>=this.dashboards().length){console.error(`[Dashboard Service] Invalid itemIndex: ${e}`);return}let s=this.dashboards()[e],i=A(s);i.id=b.create(),i.name=t,i.icon=r||"dashboard-dashboard",Array.isArray(i.configuration)?i.configuration.forEach(a=>{a&&a.input?.widgetProperties?(a.id=b.create(),a.input.widgetProperties.uuid=a.id):console.error("Dashboard Service] Widget configuration is missing required properties:",a)}):(console.error("Dashboard Service] Dashboard configuration is not an array:",i.configuration),i.configuration=[]),this.dashboards.update(a=>[...a,i])}updateConfiguration(e,t){this.dashboards.update(r=>r.map((s,i)=>i===e?k(s.configuration,t)?s:f(c({},s),{configuration:t}):s))}previousDashboard(){this.activeDashboard()+1>this.dashboards().length-1?this.activeDashboard.set(0):this.activeDashboard.set(this.activeDashboard()+1)}nextDashboard(){this.activeDashboard()-1<0?this.activeDashboard.set(this.dashboards().length-1):this.activeDashboard.set(this.activeDashboard()-1)}setActiveDashboard(e){e>=0&&e<this.dashboards().length?this.activeDashboard.set(e):console.error(`[Dashboard Service] Invalid dashboard ID: ${e}`)}navigateToActive(){this._router.navigate(["/dashboard",this.activeDashboard()])}navigateTo(e){e>=0&&e<this.dashboards().length?this._router.navigate(["/dashboard",e]):console.error(`[Dashboard Service] Invalid dashboard ID: ${e}`)}navigateToNextDashboard(){let e=null;this.activeDashboard()-1<0?e=this.dashboards().length-1:e=this.activeDashboard()-1,this._router.navigate(["/dashboard",e])}navigateToPreviousDashboard(){let e=null;this.activeDashboard()+1>=this.dashboards().length?e=0:e=this.activeDashboard()+1,this._router.navigate(["/dashboard",e])}deleteWidget(e){this._widgetAction.next({id:e,operation:"delete"})}duplicateWidget(e){this._widgetAction.next({id:e,operation:"duplicate"})}setStaticDashboard(e){this._isDashboardStatic.next(e)}static \u0275fac=function(t){return new(t||o)};static \u0275prov=m({token:o,factory:o.\u0275fac,providedIn:"root"})}return o})();var j={name:"@mxtommy/kip",version:"3.10.0-beta.36",description:"An advanced and versatile marine instrumentation package to display Signal K data.",license:"MIT",author:{name:"Thomas St.Pierre, David Godin"},contributors:[{name:"David Godin",email:"godind@hotmail.com"},{name:"Thomas St.Pierre",email:"thomas@samoht.ca"}],homepage:"https://github.com/mxtommy/Kip",bugs:"https://github.com/mxtommy/Kip/issues",repository:{type:"git",url:"git+https://github.com/mxtommy/Kip.git"},keywords:["signalk-webapp","signalk-category-instruments","signalk-category-notifications","signalk-node-server-plugin","signal k","signalk","instruments","dashboard","marine","nmea"],signalk:{appIcon:"assets/icon-72x72.png",displayName:"KIP Instrument MFD"},main:"plugin/index.js","signalk-plugin-enabled-by-default":!0,scripts:{test:"ng test",lint:"ng lint",dev:"ng serve --configuration=dev --serve-path=/@mxtommy/kip/","build:plugin":"tsc -p ./kip-plugin/tsconfig.plugin.json","build:dev":"ng build --configuration=dev","build:prod":"ng build --configuration=production","build:all":"npm run build:plugin && npm run build:prod",e2e:"ng e2e"},devDependencies:{"@angular-devkit/build-angular":"^20.1.6","@angular/animations":"20.1.7","@angular/build":"^20.1.6","@angular/cdk":"20.1.6","@angular/cli":"^20.1.6","@angular/common":"20.1.7","@angular/compiler":"20.1.7","@angular/compiler-cli":"20.1.7","@angular/core":"20.1.7","@angular/forms":"20.1.7","@angular/language-service":"20.1.7","@angular/material":"20.1.6","@angular/platform-browser":"20.1.7","@angular/platform-browser-dynamic":"20.1.7","@angular/router":"20.1.7","@godind/ng-canvas-gauges":"^6.2.1","@robloche/chartjs-plugin-streaming":"^3.1.0","@types/canvas-gauges":"^2.1.8","@types/howler":"^2.2.10","@types/jasmine":"~3.6.0","@types/jasminewd2":"^2.0.9","@types/js-quantities":"^1.6.6","@types/lodash-es":"^4.17.9","@types/node":"^24.1.0","@zakj/no-sleep":"^0.13.5","angular-eslint":"20.1.1","chart.js":"^4.4.9","chartjs-adapter-date-fns":"^3.0.0","chartjs-plugin-annotation":"^3.0.1",codelyzer:"^6.0.0","compare-versions":"^6.1.1","core-js":"^3.13.1","date-fns":"^2.30.0",eslint:"^9.29.0",gridstack:"^11.4.0",howler:"^2.2.4","jasmine-core":"~4.0.1","jasmine-spec-reporter":"~5.0.0","js-quantities":"^1.8.0",karma:"^6.4.4","karma-chrome-launcher":"~3.1.0","karma-cli":"~2.0.0","karma-coverage-istanbul-reporter":"^3.0.3","karma-jasmine":"~4.0.0","karma-jasmine-html-reporter":"^1.6.0","lodash-es":"^4.17.21","ng-packagr":"^20.0.1","ngx-markdown":"^20.0.0","ngx-resize-observer":"^3.1.0",protractor:"~7.0.0","pwa-asset-generator":"^8.1.1",rxjs:"^7.8.2",sass:"^1.49.9",screenfull:"^6.0.2",steelseries:"^2.0.9","ts-node":"^10.9.2",tslib:"^2.6.2",typescript:"^5.8.3","zone.js":"^0.15.1"},dependencies:{"@signalk/server-api":"^2.7.2"}};var U=(()=>{class o{_http=n(C);_settings=n(g);_dashboard=n(T);_data=n(v);_destroyRef=n(R);_displayName=l(this._settings.getInstanceNameAsO());_isRemoteControl=l(this._settings.getIsRemoteControlAsO());PLUGIN_URL=this._settings.signalkUrl.url+"/plugins/kip";KIP_UUID=this._settings.KipUUID;ACTIVE_SCREEN_PATH=`self.displays.${this.KIP_UUID}.activeScreen`;previousIsRemoteControl=!1;constructor(){d(()=>{let e=this._isRemoteControl();if(!e&&!this.previousIsRemoteControl)return;let t=this._displayName(),r=this._dashboard.dashboards();p(()=>{this.previousIsRemoteControl=e;let s,i;if(!e)s=null,i=null;else{let a=r.map(O=>{var _=O,{configuration:E}=_,$=P(_,["configuration"]);return $});s={displayName:t,screens:a},i=this._dashboard.activeDashboard()}this.shareScreens(this.KIP_UUID,s).then(()=>{console.log("[Remote Dashboards] Screens shared")}).catch(a=>{console.error("[Remote Dashboards] Error sharing screens:",a)}),this.setActiveDashboard(this.KIP_UUID,i).then(()=>{console.log("[Remote Dashboards] Shared active dashboard")}).catch(a=>{console.error("[Remote Dashboards] Error sharing active dashboard:",a)})})}),d(()=>{if(!this._isRemoteControl())return;let t=this._dashboard.activeDashboard();p(()=>{this.setActiveDashboard(this.KIP_UUID,t).then(()=>{console.log("[Remote Dashboards] Shared active dashboard")}).catch(r=>{console.error("[Remote Dashboards] Error sharing active dashboard:",r)})})}),this.setupRemoteControlListener()}setupRemoteControlListener(){this._settings.getIsRemoteControlAsO().pipe(D(this._destroyRef)).subscribe(e=>{e?this._data.subscribePath(this.ACTIVE_SCREEN_PATH,"default").pipe(D(this._destroyRef)).subscribe(t=>{if(t.data.value==null)return;let r=Number(t.data.value);!isNaN(r)&&r>=0&&r<this._dashboard.dashboards().length&&this._dashboard.activeDashboard()!==r&&(console.log(`[Remote Dashboards] Setting active dashboard to ${r} from remote update`),this._dashboard.navigateTo(r))}):this._data.unsubscribePath(this.ACTIVE_SCREEN_PATH)})}setActiveDashboard(e,t){return S(this,null,function*(){let r=t===null?null:{screenIdx:t};return y(this._http.put(`${this.PLUGIN_URL}/displays/${e}/activeScreen`,r))})}shareScreens(e,t){let r=t===null?null:c({},t);return y(this._http.put(`${this.PLUGIN_URL}/displays/${e}`,r))}static \u0275fac=function(t){return new(t||o)};static \u0275prov=m({token:o,factory:o.\u0275fac,providedIn:"root"})}return o})();var ve=(()=>{class o{MODE_PATH="self.environment.mode";configurableThemeColors=[{label:"Contrast",value:"contrast"},{label:"Blue",value:"blue"},{label:"Green",value:"green"},{label:"Orange",value:"orange"},{label:"Yellow",value:"yellow"},{label:"Pink",value:"pink"},{label:"Purple",value:"purple"},{label:"Grey",value:"grey"}];snackbarAppNotifications=new V;cssThemeColorRoles$=new u(null);_cssThemeColorRoles=null;_settings=n(g);_data=n(v);_iconRegistry=n(I);_sanitizer=n(w);_remote=n(U);isNightMode=h(!1);_useAutoNightMode=l(this._settings.getAutoNightModeAsO(),{requireSync:!0});_theme=l(this._settings.getThemeNameAsO(),{requireSync:!0});_redNightMode=l(this._settings.getRedNightModeAsO(),{requireSync:!0});_environmentMode=l(this._data.subscribePath(this.MODE_PATH,"default"));appVersion=h(j.version);browserVersion=h("Unknown");osVersion=h("Unknown");constructor(){this._iconRegistry.addSvgIconSet(this._sanitizer.bypassSecurityTrustResourceUrl("assets/svg/icons.svg")),d(()=>{this._theme()==="light-theme"?document.body.classList.toggle("light-theme",this._theme()==="light-theme"):document.body.classList.remove("light-theme")}),d(()=>{let e=this._environmentMode().data.value;this._useAutoNightMode()&&(this.isNightMode.set(e==="night"),this.toggleDayNightMode())}),d(()=>{let e=this._redNightMode();p(()=>{e?this.toggleDayNightMode():this.toggleDayNightMode()})}),this.readThemeCssRoleVariables(),this._cssThemeColorRoles=this.cssThemeColorRoles$.getValue(),this.browserVersion.set(this.getBrowserVersion()),this.osVersion.set(this.getOSVersion()),console.log("*********** KIP Version Information ***********"),console.log(`** App Version: ${this.appVersion()}`),console.log(`** Browser Version: ${this.browserVersion()}`),console.log(`** OS Version: ${this.osVersion()}`),console.log("***********************************************")}sendSnackbarNotification(e,t=1e4,r=!1,s="Dismiss"){this.snackbarAppNotifications.next({message:e,duration:t,silent:r,action:s})}getSnackbarAppNotifications(){return this.snackbarAppNotifications.asObservable()}readThemeCssRoleVariables(){let e=document.body,t=getComputedStyle(e),r={background:t.getPropertyValue("--mat-sys-background").trim(),cardColor:t.getPropertyValue("--kip-widget-card-background-color").trim(),blue:t.getPropertyValue("--kip-blue-color").trim(),blueDim:t.getPropertyValue("--kip-blue-dim-color").trim(),blueDimmer:t.getPropertyValue("--kip-blue-dimmer-color").trim(),green:t.getPropertyValue("--kip-green-color").trim(),greenDim:t.getPropertyValue("--kip-green-dim-color").trim(),greenDimmer:t.getPropertyValue("--kip-green-dimmer-color").trim(),grey:t.getPropertyValue("--kip-grey-color").trim(),greyDim:t.getPropertyValue("--kip-grey-dim-color").trim(),greyDimmer:t.getPropertyValue("--kip-grey-dimmer-color").trim(),orange:t.getPropertyValue("--kip-orange-color").trim(),orangeDim:t.getPropertyValue("--kip-orange-dim-color").trim(),orangeDimmer:t.getPropertyValue("--kip-orange-dimmer-color").trim(),pink:t.getPropertyValue("--kip-pink-color").trim(),pinkDim:t.getPropertyValue("--kip-pink-dim-color").trim(),pinkDimmer:t.getPropertyValue("--kip-pink-dimmer-color").trim(),purple:t.getPropertyValue("--kip-purple-color").trim(),purpleDim:t.getPropertyValue("--kip-purple-dim-color").trim(),purpleDimmer:t.getPropertyValue("--kip-purple-dimmer-color").trim(),contrast:t.getPropertyValue("--kip-contrast-color").trim(),contrastDim:t.getPropertyValue("--kip-contrast-dim-color").trim(),contrastDimmer:t.getPropertyValue("--kip-contrast-dimmer-color").trim(),yellow:t.getPropertyValue("--kip-yellow-color").trim(),yellowDim:t.getPropertyValue("--kip-yellow-dim-color").trim(),yellowDimmer:t.getPropertyValue("--kip-yellow-dimmer-color").trim(),port:t.getPropertyValue("--kip-port-color").trim(),starboard:t.getPropertyValue("--kip-starboard-color").trim(),zoneNominal:t.getPropertyValue("--kip-zone-nominal-color").trim(),zoneAlert:t.getPropertyValue("--kip-zone-alert-color").trim(),zoneWarn:t.getPropertyValue("--kip-zone-warn-color").trim(),zoneAlarm:t.getPropertyValue("--kip-zone-alarm-color").trim(),zoneEmergency:t.getPropertyValue("--kip-zone-emergency-color").trim()};this.cssThemeColorRoles$.next(r)}get cssThemeColors(){return this._cssThemeColorRoles}setBrightness(e,t=!1){let r=document.body;r.style.setProperty("--kip-nightModeBrightness",`${e}`);let s=t?" sepia(0.5) hue-rotate(-30deg)":"";r.style.setProperty("--kip-nightModeFilters",s)}toggleDayNightMode(){this.isNightMode()?this._redNightMode()?(document.body.classList.toggle("night-theme",!0),this.setBrightness(1,!1)):(this.setBrightness(this._settings.getNightModeBrightness(),!0),document.body.classList.remove("night-theme"),this._theme()==="light-theme"?document.body.classList.toggle("light-theme",this._theme()==="light-theme"):document.body.classList.remove("light-theme")):(document.body.classList.remove("night-theme"),this._theme()==="light-theme"&&document.body.classList.toggle("light-theme",this._theme()==="light-theme"),this.setBrightness(1,!1)),this.readThemeCssRoleVariables(),this._cssThemeColorRoles=this.cssThemeColorRoles$.getValue()}getBrowserVersion(){let e=navigator.userAgent,t="Unknown";return e.includes("Edg")?t=`Edge ${e.match(/Edg\/(\d+)/)?.[1]}`:e.includes("Chrome")&&!e.includes("Edg")&&!e.includes("Chromium")?t=`Chrome ${e.match(/Chrome\/(\d+)/)?.[1]}`:e.includes("Chromium")?t=`Chromium ${e.match(/Chromium\/(\d+)/)?.[1]}`:e.includes("Firefox")?t=`Firefox ${e.match(/Firefox\/(\d+)/)?.[1]}`:e.includes("Safari")&&!e.includes("Chrome")&&!e.includes("Chromium")?t=`Safari ${e.match(/Version\/(\d+)/)?.[1]}`:(e.includes("Opera")||e.includes("OPR"))&&(t=`Opera ${e.match(/(Opera|OPR)\/(\d+)/)?.[2]}`),t}getOSVersion(){let e=navigator.platform,t=navigator.userAgent;return e.startsWith("Mac")?"macOS":e.startsWith("Win")?"Windows":/Linux/.test(e)?t.includes("ARM")||t.includes("aarch64")||t.includes("Raspberry")||e.includes("armv7l")||e.includes("armv8l")?"Raspberry Pi":"Linux":"Unknown OS"}static \u0275fac=function(t){return new(t||o)};static \u0275prov=m({token:o,factory:o.\u0275fac,providedIn:"root"})}return o})();export{T as a,ve as b};
@@ -1,4 +1,4 @@
1
- import{E as Xt,N as nn,a as tn}from"./chunk-I772OX6I.js";import{a as Ae,e as Ki,f as $i,g as Ji,i as Yi,j as en}from"./chunk-QXMATZB6.js";import{a as sn,b as ln,c as dn,d as cn,e as mn,f as pn,g as hn,h as un,i as gn,j as _n,k as fn,m as bn,n as Rt,p as At,q as vn}from"./chunk-5UBH6OWU.js";import{b as on}from"./chunk-PR5DAT3I.js";import{e as Ke,i as Ze,k as Gi,l as Zi}from"./chunk-2YGPLTEW.js";import{a as rn}from"./chunk-JNXVWBL2.js";import{b as It}from"./chunk-LKF7CNOE.js";import{a as an}from"./chunk-IUCJGG6N.js";import{b as ge}from"./chunk-ARVJVELO.js";import{a as ce}from"./chunk-MZURT7UO.js";import{B as de,D as qt,F as Ce,G as Dt,b as et,e as Ii,g as Ge,k as Pi,l as Vi,n as wt,p as Ni,q as Oi,u as le,v as Xi}from"./chunk-SPUZNRYQ.js";import{B as kt,E as Tt,F as Wi,G as Qi,H as fe,I as ji,J as qi,K as $,L as Et,e as Si,f as xi,g as wi,h as _t,i as Mi,j as ue,k as Mt,l as Re,m as Fi,n as Li,o as zi,q as ee,r as K,t as Bi,u as se,w as Ui,x as _e,y as Z,z as Hi}from"./chunk-4MSEQKGR.js";import{b as St,f as xt,g as jt}from"./chunk-27I36ZYA.js";import{$b as pt,Ab as k,Ad as vt,Bb as T,Bc as Wt,Db as ne,E as si,Eb as Te,Ec as Ci,Ed as yt,F as Ye,Fa as l,Fb as R,Ga as we,Gb as We,Gd as Fe,Hb as P,Hd as Di,Ia as Ne,Jb as ve,K as li,Kb as s,La as dt,Lb as X,Mb as ae,Md as Ct,Nb as Bt,Nd as De,Oa as M,Ob as Ut,Oc as je,Pa as he,Pb as S,Pc as gt,Qa as D,Qb as x,Qd as Qt,Ra as hi,Rb as w,Sa as ie,Sd as Ri,Td as Le,Ua as U,Ud as Ie,V as me,Va as ui,W as di,Wa as I,Wb as _i,Wd as Ai,X as Se,Xa as Me,Xb as Q,Xd as G,Yb as oe,Yc as ki,Zb as Ht,_b as fi,ab as N,ac as bi,ba as st,bb as y,bc as vi,ca as ci,cb as C,cc as yi,da as pe,db as ct,ea as B,eb as be,ec as ht,ed as Ti,f as rt,fb as H,g as Be,ga as m,gb as W,gd as qe,hb as h,ib as a,ic as ut,j as te,ja as u,jb as r,ka as g,kb as _,la as lt,lb as mt,lc as re,ld as Xe,mb as zt,nb as gi,nc as Qe,nd as Ee,o as ai,oa as mi,ob as Ue,oc as z,od as Ei,pa as pi,pb as He,q as oi,qb as Oe,qc as E,qd as ft,ra as V,rb as A,rc as j,sb as ke,tb as b,ua as xe,va as Pe,vb as v,w as ri,wa as q,wb as Y,xa as Ve,xb as O,xd as ye,yb as F,yd as bt,zb as L}from"./chunk-PB7HT3XU.js";var Yn=(n,p)=>p.key,ea=(n,p)=>p.measure;function ta(n,p){if(n&1&&(a(0,"mat-option",6),s(1),r()),n&2){let e=p.$implicit;h("value",e.measure),l(),X(e.description)}}function ia(n,p){if(n&1&&(a(0,"mat-form-field")(1,"mat-label"),s(2),r(),a(3,"mat-select",5),H(4,ta,2,2,"mat-option",6,ea),r()()),n&2){let e=p.$implicit,t=v();l(2),X(e.key),l(),h("placeholder",e.key)("formControlName",e.key),l(),W(t.groupUnits[e.key])}}var yn=(()=>{class n{units=m(Zi);appSettingsService=m(ue);appService=m(ge);unitsFormGroup=new Bi({});groupUnits=[];ngOnInit(){let e=this.appSettingsService.getDefaultUnits(),t=this.units.getConversions();for(let i of t){if(i.group==="Position")continue;let o=[];for(let d of i.units)o.push(d);this.groupUnits[i.group]=o,this.unitsFormGroup.addControl(i.group,new Ui(e[i.group]))}this.unitsFormGroup.updateValueAndValidity()}submitConfig(){this.appSettingsService.setDefaultUnits(this.unitsFormGroup.value),this.appService.sendSnackbarNotification("Configuration saved",3e3,!1)}static \u0275fac=function(t){return new(t||n)};static \u0275cmp=M({type:n,selectors:[["settings-units"]],decls:11,vars:4,consts:[[2,"height","100%",3,"ngSubmit","formGroup"],[1,"unit-grid"],[1,"formActionFooter"],[1,"formActionDivider"],["mat-flat-button","","type","submit",1,"formActionButton",3,"disabled"],["required","",3,"placeholder","formControlName"],[3,"value"]],template:function(t,i){t&1&&(a(0,"form",0),b("ngSubmit",function(){return i.submitConfig()}),a(1,"p"),s(2,"Configure your preferred default unit types. These defaults can be overridden within individual widget settings."),r(),a(3,"div",1),H(4,ia,6,3,"mat-form-field",null,Yn),pt(6,"keyvalue"),r(),a(7,"div",2),_(8,"mat-divider",3),a(9,"button",4),s(10,"Save"),r()()()),t&2&&(h("formGroup",i.unitsFormGroup),l(4),W(bi(6,2,i.unitsFormGroup.controls)),l(5),h("disabled",!i.unitsFormGroup.valid))},dependencies:[$,Z,ee,K,fe,Et,kt,Tt,de,le,Ze,Ke,ce,G,Ci],styles:[".unit-grid[_ngcontent-%COMP%]{display:grid;grid-template-columns:repeat(auto-fill,minmax(180px,auto));gap:10px}"]})}return n})();var Gt=new B("CdkAccordion"),Cn=(()=>{class n{_stateChanges=new te;_openCloseAllActions=new te;id=m(ye).getId("cdk-accordion-");multi=!1;openAll(){this.multi&&this._openCloseAllActions.next(!0)}closeAll(){this._openCloseAllActions.next(!1)}ngOnChanges(e){this._stateChanges.next(e)}ngOnDestroy(){this._stateChanges.complete(),this._openCloseAllActions.complete()}static \u0275fac=function(t){return new(t||n)};static \u0275dir=D({type:n,selectors:[["cdk-accordion"],["","cdkAccordion",""]],inputs:{multi:[2,"multi","multi",E]},exportAs:["cdkAccordion"],features:[Q([{provide:Gt,useExisting:n}]),xe]})}return n})(),Sn=(()=>{class n{accordion=m(Gt,{optional:!0,skipSelf:!0});_changeDetectorRef=m(z);_expansionDispatcher=m(It);_openCloseAllSubscription=Be.EMPTY;closed=new I;opened=new I;destroyed=new I;expandedChange=new I;id=m(ye).getId("cdk-accordion-child-");get expanded(){return this._expanded}set expanded(e){if(this._expanded!==e){if(this._expanded=e,this.expandedChange.emit(e),e){this.opened.emit();let t=this.accordion?this.accordion.id:this.id;this._expansionDispatcher.notify(this.id,t)}else this.closed.emit();this._changeDetectorRef.markForCheck()}}_expanded=!1;get disabled(){return this._disabled()}set disabled(e){this._disabled.set(e)}_disabled=V(!1);_removeUniqueSelectionListener=()=>{};constructor(){}ngOnInit(){this._removeUniqueSelectionListener=this._expansionDispatcher.listen((e,t)=>{this.accordion&&!this.accordion.multi&&this.accordion.id===t&&this.id!==e&&(this.expanded=!1)}),this.accordion&&(this._openCloseAllSubscription=this._subscribeToOpenCloseAllActions())}ngOnDestroy(){this.opened.complete(),this.closed.complete(),this.destroyed.emit(),this.destroyed.complete(),this._removeUniqueSelectionListener(),this._openCloseAllSubscription.unsubscribe()}toggle(){this.disabled||(this.expanded=!this.expanded)}close(){this.disabled||(this.expanded=!1)}open(){this.disabled||(this.expanded=!0)}_subscribeToOpenCloseAllActions(){return this.accordion._openCloseAllActions.subscribe(e=>{this.disabled||(this.expanded=e)})}static \u0275fac=function(t){return new(t||n)};static \u0275dir=D({type:n,selectors:[["cdk-accordion-item"],["","cdkAccordionItem",""]],inputs:{expanded:[2,"expanded","expanded",E],disabled:[2,"disabled","disabled",E]},outputs:{closed:"closed",opened:"opened",destroyed:"destroyed",expandedChange:"expandedChange"},exportAs:["cdkAccordionItem"],features:[Q([{provide:Gt,useValue:void 0}])]})}return n})(),xn=(()=>{class n{static \u0275fac=function(t){return new(t||n)};static \u0275mod=he({type:n});static \u0275inj=pe({})}return n})();var na=["body"],aa=["bodyWrapper"],oa=[[["mat-expansion-panel-header"]],"*",[["mat-action-row"]]],ra=["mat-expansion-panel-header","*","mat-action-row"];function sa(n,p){}var la=[[["mat-panel-title"]],[["mat-panel-description"]],"*"],da=["mat-panel-title","mat-panel-description","*"];function ca(n,p){n&1&&(mt(0,"span",1),lt(),mt(1,"svg",2),gi(2,"path",3),zt()())}var Kt=new B("MAT_ACCORDION"),kn=new B("MAT_EXPANSION_PANEL"),ma=(()=>{class n{_template=m(we);_expansionPanel=m(kn,{optional:!0});constructor(){}static \u0275fac=function(t){return new(t||n)};static \u0275dir=D({type:n,selectors:[["ng-template","matExpansionPanelContent",""]]})}return n})(),Tn=new B("MAT_EXPANSION_PANEL_DEFAULT_OPTIONS"),it=(()=>{class n extends Sn{_viewContainerRef=m(dt);_animationsDisabled=De();_document=m(mi);_ngZone=m(Me);_elementRef=m(q);_renderer=m(Ne);_cleanupTransitionEnd;get hideToggle(){return this._hideToggle||this.accordion&&this.accordion.hideToggle}set hideToggle(e){this._hideToggle=e}_hideToggle=!1;get togglePosition(){return this._togglePosition||this.accordion&&this.accordion.togglePosition}set togglePosition(e){this._togglePosition=e}_togglePosition;afterExpand=new I;afterCollapse=new I;_inputChanges=new te;accordion=m(Kt,{optional:!0,skipSelf:!0});_lazyContent;_body;_bodyWrapper;_portal;_headerId=m(ye).getId("mat-expansion-panel-header-");constructor(){super();let e=m(Tn,{optional:!0});this._expansionDispatcher=m(It),e&&(this.hideToggle=e.hideToggle)}_hasSpacing(){return this.accordion?this.expanded&&this.accordion.displayMode==="default":!1}_getExpandedState(){return this.expanded?"expanded":"collapsed"}toggle(){this.expanded=!this.expanded}close(){this.expanded=!1}open(){this.expanded=!0}ngAfterContentInit(){this._lazyContent&&this._lazyContent._expansionPanel===this&&this.opened.pipe(me(null),Ye(()=>this.expanded&&!this._portal),li(1)).subscribe(()=>{this._portal=new St(this._lazyContent._template,this._viewContainerRef)}),this._setupAnimationEvents()}ngOnChanges(e){this._inputChanges.next(e)}ngOnDestroy(){super.ngOnDestroy(),this._cleanupTransitionEnd?.(),this._inputChanges.complete()}_containsFocus(){if(this._body){let e=this._document.activeElement,t=this._body.nativeElement;return e===t||t.contains(e)}return!1}_transitionEndListener=({target:e,propertyName:t})=>{e===this._bodyWrapper?.nativeElement&&t==="grid-template-rows"&&this._ngZone.run(()=>{this.expanded?this.afterExpand.emit():this.afterCollapse.emit()})};_setupAnimationEvents(){this._ngZone.runOutsideAngular(()=>{this._animationsDisabled?(this.opened.subscribe(()=>this._ngZone.run(()=>this.afterExpand.emit())),this.closed.subscribe(()=>this._ngZone.run(()=>this.afterCollapse.emit()))):setTimeout(()=>{let e=this._elementRef.nativeElement;this._cleanupTransitionEnd=this._renderer.listen(e,"transitionend",this._transitionEndListener),e.classList.add("mat-expansion-panel-animations-enabled")},200)})}static \u0275fac=function(t){return new(t||n)};static \u0275cmp=M({type:n,selectors:[["mat-expansion-panel"]],contentQueries:function(t,i,o){if(t&1&&F(o,ma,5),t&2){let d;k(d=T())&&(i._lazyContent=d.first)}},viewQuery:function(t,i){if(t&1&&(L(na,5),L(aa,5)),t&2){let o;k(o=T())&&(i._body=o.first),k(o=T())&&(i._bodyWrapper=o.first)}},hostAttrs:[1,"mat-expansion-panel"],hostVars:4,hostBindings:function(t,i){t&2&&P("mat-expanded",i.expanded)("mat-expansion-panel-spacing",i._hasSpacing())},inputs:{hideToggle:[2,"hideToggle","hideToggle",E],togglePosition:"togglePosition"},outputs:{afterExpand:"afterExpand",afterCollapse:"afterCollapse"},exportAs:["matExpansionPanel"],features:[Q([{provide:Kt,useValue:void 0},{provide:kn,useExisting:n}]),ie,xe],ngContentSelectors:ra,decls:9,vars:4,consts:[["bodyWrapper",""],["body",""],[1,"mat-expansion-panel-content-wrapper"],["role","region",1,"mat-expansion-panel-content",3,"id"],[1,"mat-expansion-panel-body"],[3,"cdkPortalOutlet"]],template:function(t,i){t&1&&(Y(oa),O(0),a(1,"div",2,0)(3,"div",3,1)(5,"div",4),O(6,1),U(7,sa,0,0,"ng-template",5),r(),O(8,2),r()()),t&2&&(l(),N("inert",i.expanded?null:""),l(2),h("id",i.id),N("aria-labelledby",i._headerId),l(4),h("cdkPortalOutlet",i._portal))},dependencies:[xt],styles:[`.mat-expansion-panel{box-sizing:content-box;display:block;margin:0;overflow:hidden;position:relative;background:var(--mat-expansion-container-background-color, var(--mat-sys-surface));color:var(--mat-expansion-container-text-color, var(--mat-sys-on-surface));border-radius:var(--mat-expansion-container-shape, 12px)}.mat-expansion-panel.mat-expansion-panel-animations-enabled{transition:margin 225ms cubic-bezier(0.4, 0, 0.2, 1),box-shadow 280ms cubic-bezier(0.4, 0, 0.2, 1)}.mat-expansion-panel:not([class*=mat-elevation-z]){box-shadow:var(--mat-expansion-container-elevation-shadow, 0px 3px 1px -2px rgba(0, 0, 0, 0.2), 0px 2px 2px 0px rgba(0, 0, 0, 0.14), 0px 1px 5px 0px rgba(0, 0, 0, 0.12))}.mat-accordion .mat-expansion-panel:not(.mat-expanded),.mat-accordion .mat-expansion-panel:not(.mat-expansion-panel-spacing){border-radius:0}.mat-accordion .mat-expansion-panel:first-of-type{border-top-right-radius:var(--mat-expansion-container-shape, 12px);border-top-left-radius:var(--mat-expansion-container-shape, 12px)}.mat-accordion .mat-expansion-panel:last-of-type{border-bottom-right-radius:var(--mat-expansion-container-shape, 12px);border-bottom-left-radius:var(--mat-expansion-container-shape, 12px)}@media(forced-colors: active){.mat-expansion-panel{outline:solid 1px}}.mat-expansion-panel-content-wrapper{display:grid;grid-template-rows:0fr;grid-template-columns:100%}.mat-expansion-panel-animations-enabled .mat-expansion-panel-content-wrapper{transition:grid-template-rows 225ms cubic-bezier(0.4, 0, 0.2, 1)}.mat-expansion-panel.mat-expanded>.mat-expansion-panel-content-wrapper{grid-template-rows:1fr}@supports not (grid-template-rows: 0fr){.mat-expansion-panel-content-wrapper{height:0}.mat-expansion-panel.mat-expanded>.mat-expansion-panel-content-wrapper{height:auto}}.mat-expansion-panel-content{display:flex;flex-direction:column;overflow:visible;min-height:0;visibility:hidden;font-family:var(--mat-expansion-container-text-font, var(--mat-sys-body-large-font));font-size:var(--mat-expansion-container-text-size, var(--mat-sys-body-large-size));font-weight:var(--mat-expansion-container-text-weight, var(--mat-sys-body-large-weight));line-height:var(--mat-expansion-container-text-line-height, var(--mat-sys-body-large-line-height));letter-spacing:var(--mat-expansion-container-text-tracking, var(--mat-sys-body-large-tracking))}.mat-expansion-panel-animations-enabled .mat-expansion-panel-content{transition:visibility 190ms linear}.mat-expansion-panel.mat-expanded>.mat-expansion-panel-content-wrapper>.mat-expansion-panel-content{visibility:visible}.mat-expansion-panel-body{padding:0 24px 16px}.mat-expansion-panel-spacing{margin:16px 0}.mat-accordion>.mat-expansion-panel-spacing:first-child,.mat-accordion>*:first-child:not(.mat-expansion-panel) .mat-expansion-panel-spacing{margin-top:0}.mat-accordion>.mat-expansion-panel-spacing:last-child,.mat-accordion>*:last-child:not(.mat-expansion-panel) .mat-expansion-panel-spacing{margin-bottom:0}.mat-action-row{border-top-style:solid;border-top-width:1px;display:flex;flex-direction:row;justify-content:flex-end;padding:16px 8px 16px 24px;border-top-color:var(--mat-expansion-actions-divider-color, var(--mat-sys-outline))}.mat-action-row .mat-button-base,.mat-action-row .mat-mdc-button-base{margin-left:8px}[dir=rtl] .mat-action-row .mat-button-base,[dir=rtl] .mat-action-row .mat-mdc-button-base{margin-left:0;margin-right:8px}
1
+ import{E as Xt,N as nn,a as tn}from"./chunk-I772OX6I.js";import{a as Ae,e as Ki,f as $i,g as Ji,i as Yi,j as en}from"./chunk-QXMATZB6.js";import{a as sn,b as ln,c as dn,d as cn,e as mn,f as pn,g as hn,h as un,i as gn,j as _n,k as fn,m as bn,n as Rt,p as At,q as vn}from"./chunk-5UBH6OWU.js";import{b as on}from"./chunk-PR5DAT3I.js";import{e as Ke,i as Ze,k as Gi,l as Zi}from"./chunk-2YGPLTEW.js";import{a as rn}from"./chunk-JNXVWBL2.js";import{b as It}from"./chunk-LKF7CNOE.js";import{a as an}from"./chunk-IUCJGG6N.js";import{b as ge}from"./chunk-EVQE5STK.js";import{a as ce}from"./chunk-MZURT7UO.js";import{B as de,D as qt,F as Ce,G as Dt,b as et,e as Ii,g as Ge,k as Pi,l as Vi,n as wt,p as Ni,q as Oi,u as le,v as Xi}from"./chunk-SPUZNRYQ.js";import{B as kt,E as Tt,F as Wi,G as Qi,H as fe,I as ji,J as qi,K as $,L as Et,e as Si,f as xi,g as wi,h as _t,i as Mi,j as ue,k as Mt,l as Re,m as Fi,n as Li,o as zi,q as ee,r as K,t as Bi,u as se,w as Ui,x as _e,y as Z,z as Hi}from"./chunk-4MSEQKGR.js";import{b as St,f as xt,g as jt}from"./chunk-27I36ZYA.js";import{$b as pt,Ab as k,Ad as vt,Bb as T,Bc as Wt,Db as ne,E as si,Eb as Te,Ec as Ci,Ed as yt,F as Ye,Fa as l,Fb as R,Ga as we,Gb as We,Gd as Fe,Hb as P,Hd as Di,Ia as Ne,Jb as ve,K as li,Kb as s,La as dt,Lb as X,Mb as ae,Md as Ct,Nb as Bt,Nd as De,Oa as M,Ob as Ut,Oc as je,Pa as he,Pb as S,Pc as gt,Qa as D,Qb as x,Qd as Qt,Ra as hi,Rb as w,Sa as ie,Sd as Ri,Td as Le,Ua as U,Ud as Ie,V as me,Va as ui,W as di,Wa as I,Wb as _i,Wd as Ai,X as Se,Xa as Me,Xb as Q,Xd as G,Yb as oe,Yc as ki,Zb as Ht,_b as fi,ab as N,ac as bi,ba as st,bb as y,bc as vi,ca as ci,cb as C,cc as yi,da as pe,db as ct,ea as B,eb as be,ec as ht,ed as Ti,f as rt,fb as H,g as Be,ga as m,gb as W,gd as qe,hb as h,ib as a,ic as ut,j as te,ja as u,jb as r,ka as g,kb as _,la as lt,lb as mt,lc as re,ld as Xe,mb as zt,nb as gi,nc as Qe,nd as Ee,o as ai,oa as mi,ob as Ue,oc as z,od as Ei,pa as pi,pb as He,q as oi,qb as Oe,qc as E,qd as ft,ra as V,rb as A,rc as j,sb as ke,tb as b,ua as xe,va as Pe,vb as v,w as ri,wa as q,wb as Y,xa as Ve,xb as O,xd as ye,yb as F,yd as bt,zb as L}from"./chunk-PB7HT3XU.js";var Yn=(n,p)=>p.key,ea=(n,p)=>p.measure;function ta(n,p){if(n&1&&(a(0,"mat-option",6),s(1),r()),n&2){let e=p.$implicit;h("value",e.measure),l(),X(e.description)}}function ia(n,p){if(n&1&&(a(0,"mat-form-field")(1,"mat-label"),s(2),r(),a(3,"mat-select",5),H(4,ta,2,2,"mat-option",6,ea),r()()),n&2){let e=p.$implicit,t=v();l(2),X(e.key),l(),h("placeholder",e.key)("formControlName",e.key),l(),W(t.groupUnits[e.key])}}var yn=(()=>{class n{units=m(Zi);appSettingsService=m(ue);appService=m(ge);unitsFormGroup=new Bi({});groupUnits=[];ngOnInit(){let e=this.appSettingsService.getDefaultUnits(),t=this.units.getConversions();for(let i of t){if(i.group==="Position")continue;let o=[];for(let d of i.units)o.push(d);this.groupUnits[i.group]=o,this.unitsFormGroup.addControl(i.group,new Ui(e[i.group]))}this.unitsFormGroup.updateValueAndValidity()}submitConfig(){this.appSettingsService.setDefaultUnits(this.unitsFormGroup.value),this.appService.sendSnackbarNotification("Configuration saved",3e3,!1)}static \u0275fac=function(t){return new(t||n)};static \u0275cmp=M({type:n,selectors:[["settings-units"]],decls:11,vars:4,consts:[[2,"height","100%",3,"ngSubmit","formGroup"],[1,"unit-grid"],[1,"formActionFooter"],[1,"formActionDivider"],["mat-flat-button","","type","submit",1,"formActionButton",3,"disabled"],["required","",3,"placeholder","formControlName"],[3,"value"]],template:function(t,i){t&1&&(a(0,"form",0),b("ngSubmit",function(){return i.submitConfig()}),a(1,"p"),s(2,"Configure your preferred default unit types. These defaults can be overridden within individual widget settings."),r(),a(3,"div",1),H(4,ia,6,3,"mat-form-field",null,Yn),pt(6,"keyvalue"),r(),a(7,"div",2),_(8,"mat-divider",3),a(9,"button",4),s(10,"Save"),r()()()),t&2&&(h("formGroup",i.unitsFormGroup),l(4),W(bi(6,2,i.unitsFormGroup.controls)),l(5),h("disabled",!i.unitsFormGroup.valid))},dependencies:[$,Z,ee,K,fe,Et,kt,Tt,de,le,Ze,Ke,ce,G,Ci],styles:[".unit-grid[_ngcontent-%COMP%]{display:grid;grid-template-columns:repeat(auto-fill,minmax(180px,auto));gap:10px}"]})}return n})();var Gt=new B("CdkAccordion"),Cn=(()=>{class n{_stateChanges=new te;_openCloseAllActions=new te;id=m(ye).getId("cdk-accordion-");multi=!1;openAll(){this.multi&&this._openCloseAllActions.next(!0)}closeAll(){this._openCloseAllActions.next(!1)}ngOnChanges(e){this._stateChanges.next(e)}ngOnDestroy(){this._stateChanges.complete(),this._openCloseAllActions.complete()}static \u0275fac=function(t){return new(t||n)};static \u0275dir=D({type:n,selectors:[["cdk-accordion"],["","cdkAccordion",""]],inputs:{multi:[2,"multi","multi",E]},exportAs:["cdkAccordion"],features:[Q([{provide:Gt,useExisting:n}]),xe]})}return n})(),Sn=(()=>{class n{accordion=m(Gt,{optional:!0,skipSelf:!0});_changeDetectorRef=m(z);_expansionDispatcher=m(It);_openCloseAllSubscription=Be.EMPTY;closed=new I;opened=new I;destroyed=new I;expandedChange=new I;id=m(ye).getId("cdk-accordion-child-");get expanded(){return this._expanded}set expanded(e){if(this._expanded!==e){if(this._expanded=e,this.expandedChange.emit(e),e){this.opened.emit();let t=this.accordion?this.accordion.id:this.id;this._expansionDispatcher.notify(this.id,t)}else this.closed.emit();this._changeDetectorRef.markForCheck()}}_expanded=!1;get disabled(){return this._disabled()}set disabled(e){this._disabled.set(e)}_disabled=V(!1);_removeUniqueSelectionListener=()=>{};constructor(){}ngOnInit(){this._removeUniqueSelectionListener=this._expansionDispatcher.listen((e,t)=>{this.accordion&&!this.accordion.multi&&this.accordion.id===t&&this.id!==e&&(this.expanded=!1)}),this.accordion&&(this._openCloseAllSubscription=this._subscribeToOpenCloseAllActions())}ngOnDestroy(){this.opened.complete(),this.closed.complete(),this.destroyed.emit(),this.destroyed.complete(),this._removeUniqueSelectionListener(),this._openCloseAllSubscription.unsubscribe()}toggle(){this.disabled||(this.expanded=!this.expanded)}close(){this.disabled||(this.expanded=!1)}open(){this.disabled||(this.expanded=!0)}_subscribeToOpenCloseAllActions(){return this.accordion._openCloseAllActions.subscribe(e=>{this.disabled||(this.expanded=e)})}static \u0275fac=function(t){return new(t||n)};static \u0275dir=D({type:n,selectors:[["cdk-accordion-item"],["","cdkAccordionItem",""]],inputs:{expanded:[2,"expanded","expanded",E],disabled:[2,"disabled","disabled",E]},outputs:{closed:"closed",opened:"opened",destroyed:"destroyed",expandedChange:"expandedChange"},exportAs:["cdkAccordionItem"],features:[Q([{provide:Gt,useValue:void 0}])]})}return n})(),xn=(()=>{class n{static \u0275fac=function(t){return new(t||n)};static \u0275mod=he({type:n});static \u0275inj=pe({})}return n})();var na=["body"],aa=["bodyWrapper"],oa=[[["mat-expansion-panel-header"]],"*",[["mat-action-row"]]],ra=["mat-expansion-panel-header","*","mat-action-row"];function sa(n,p){}var la=[[["mat-panel-title"]],[["mat-panel-description"]],"*"],da=["mat-panel-title","mat-panel-description","*"];function ca(n,p){n&1&&(mt(0,"span",1),lt(),mt(1,"svg",2),gi(2,"path",3),zt()())}var Kt=new B("MAT_ACCORDION"),kn=new B("MAT_EXPANSION_PANEL"),ma=(()=>{class n{_template=m(we);_expansionPanel=m(kn,{optional:!0});constructor(){}static \u0275fac=function(t){return new(t||n)};static \u0275dir=D({type:n,selectors:[["ng-template","matExpansionPanelContent",""]]})}return n})(),Tn=new B("MAT_EXPANSION_PANEL_DEFAULT_OPTIONS"),it=(()=>{class n extends Sn{_viewContainerRef=m(dt);_animationsDisabled=De();_document=m(mi);_ngZone=m(Me);_elementRef=m(q);_renderer=m(Ne);_cleanupTransitionEnd;get hideToggle(){return this._hideToggle||this.accordion&&this.accordion.hideToggle}set hideToggle(e){this._hideToggle=e}_hideToggle=!1;get togglePosition(){return this._togglePosition||this.accordion&&this.accordion.togglePosition}set togglePosition(e){this._togglePosition=e}_togglePosition;afterExpand=new I;afterCollapse=new I;_inputChanges=new te;accordion=m(Kt,{optional:!0,skipSelf:!0});_lazyContent;_body;_bodyWrapper;_portal;_headerId=m(ye).getId("mat-expansion-panel-header-");constructor(){super();let e=m(Tn,{optional:!0});this._expansionDispatcher=m(It),e&&(this.hideToggle=e.hideToggle)}_hasSpacing(){return this.accordion?this.expanded&&this.accordion.displayMode==="default":!1}_getExpandedState(){return this.expanded?"expanded":"collapsed"}toggle(){this.expanded=!this.expanded}close(){this.expanded=!1}open(){this.expanded=!0}ngAfterContentInit(){this._lazyContent&&this._lazyContent._expansionPanel===this&&this.opened.pipe(me(null),Ye(()=>this.expanded&&!this._portal),li(1)).subscribe(()=>{this._portal=new St(this._lazyContent._template,this._viewContainerRef)}),this._setupAnimationEvents()}ngOnChanges(e){this._inputChanges.next(e)}ngOnDestroy(){super.ngOnDestroy(),this._cleanupTransitionEnd?.(),this._inputChanges.complete()}_containsFocus(){if(this._body){let e=this._document.activeElement,t=this._body.nativeElement;return e===t||t.contains(e)}return!1}_transitionEndListener=({target:e,propertyName:t})=>{e===this._bodyWrapper?.nativeElement&&t==="grid-template-rows"&&this._ngZone.run(()=>{this.expanded?this.afterExpand.emit():this.afterCollapse.emit()})};_setupAnimationEvents(){this._ngZone.runOutsideAngular(()=>{this._animationsDisabled?(this.opened.subscribe(()=>this._ngZone.run(()=>this.afterExpand.emit())),this.closed.subscribe(()=>this._ngZone.run(()=>this.afterCollapse.emit()))):setTimeout(()=>{let e=this._elementRef.nativeElement;this._cleanupTransitionEnd=this._renderer.listen(e,"transitionend",this._transitionEndListener),e.classList.add("mat-expansion-panel-animations-enabled")},200)})}static \u0275fac=function(t){return new(t||n)};static \u0275cmp=M({type:n,selectors:[["mat-expansion-panel"]],contentQueries:function(t,i,o){if(t&1&&F(o,ma,5),t&2){let d;k(d=T())&&(i._lazyContent=d.first)}},viewQuery:function(t,i){if(t&1&&(L(na,5),L(aa,5)),t&2){let o;k(o=T())&&(i._body=o.first),k(o=T())&&(i._bodyWrapper=o.first)}},hostAttrs:[1,"mat-expansion-panel"],hostVars:4,hostBindings:function(t,i){t&2&&P("mat-expanded",i.expanded)("mat-expansion-panel-spacing",i._hasSpacing())},inputs:{hideToggle:[2,"hideToggle","hideToggle",E],togglePosition:"togglePosition"},outputs:{afterExpand:"afterExpand",afterCollapse:"afterCollapse"},exportAs:["matExpansionPanel"],features:[Q([{provide:Kt,useValue:void 0},{provide:kn,useExisting:n}]),ie,xe],ngContentSelectors:ra,decls:9,vars:4,consts:[["bodyWrapper",""],["body",""],[1,"mat-expansion-panel-content-wrapper"],["role","region",1,"mat-expansion-panel-content",3,"id"],[1,"mat-expansion-panel-body"],[3,"cdkPortalOutlet"]],template:function(t,i){t&1&&(Y(oa),O(0),a(1,"div",2,0)(3,"div",3,1)(5,"div",4),O(6,1),U(7,sa,0,0,"ng-template",5),r(),O(8,2),r()()),t&2&&(l(),N("inert",i.expanded?null:""),l(2),h("id",i.id),N("aria-labelledby",i._headerId),l(4),h("cdkPortalOutlet",i._portal))},dependencies:[xt],styles:[`.mat-expansion-panel{box-sizing:content-box;display:block;margin:0;overflow:hidden;position:relative;background:var(--mat-expansion-container-background-color, var(--mat-sys-surface));color:var(--mat-expansion-container-text-color, var(--mat-sys-on-surface));border-radius:var(--mat-expansion-container-shape, 12px)}.mat-expansion-panel.mat-expansion-panel-animations-enabled{transition:margin 225ms cubic-bezier(0.4, 0, 0.2, 1),box-shadow 280ms cubic-bezier(0.4, 0, 0.2, 1)}.mat-expansion-panel:not([class*=mat-elevation-z]){box-shadow:var(--mat-expansion-container-elevation-shadow, 0px 3px 1px -2px rgba(0, 0, 0, 0.2), 0px 2px 2px 0px rgba(0, 0, 0, 0.14), 0px 1px 5px 0px rgba(0, 0, 0, 0.12))}.mat-accordion .mat-expansion-panel:not(.mat-expanded),.mat-accordion .mat-expansion-panel:not(.mat-expansion-panel-spacing){border-radius:0}.mat-accordion .mat-expansion-panel:first-of-type{border-top-right-radius:var(--mat-expansion-container-shape, 12px);border-top-left-radius:var(--mat-expansion-container-shape, 12px)}.mat-accordion .mat-expansion-panel:last-of-type{border-bottom-right-radius:var(--mat-expansion-container-shape, 12px);border-bottom-left-radius:var(--mat-expansion-container-shape, 12px)}@media(forced-colors: active){.mat-expansion-panel{outline:solid 1px}}.mat-expansion-panel-content-wrapper{display:grid;grid-template-rows:0fr;grid-template-columns:100%}.mat-expansion-panel-animations-enabled .mat-expansion-panel-content-wrapper{transition:grid-template-rows 225ms cubic-bezier(0.4, 0, 0.2, 1)}.mat-expansion-panel.mat-expanded>.mat-expansion-panel-content-wrapper{grid-template-rows:1fr}@supports not (grid-template-rows: 0fr){.mat-expansion-panel-content-wrapper{height:0}.mat-expansion-panel.mat-expanded>.mat-expansion-panel-content-wrapper{height:auto}}.mat-expansion-panel-content{display:flex;flex-direction:column;overflow:visible;min-height:0;visibility:hidden;font-family:var(--mat-expansion-container-text-font, var(--mat-sys-body-large-font));font-size:var(--mat-expansion-container-text-size, var(--mat-sys-body-large-size));font-weight:var(--mat-expansion-container-text-weight, var(--mat-sys-body-large-weight));line-height:var(--mat-expansion-container-text-line-height, var(--mat-sys-body-large-line-height));letter-spacing:var(--mat-expansion-container-text-tracking, var(--mat-sys-body-large-tracking))}.mat-expansion-panel-animations-enabled .mat-expansion-panel-content{transition:visibility 190ms linear}.mat-expansion-panel.mat-expanded>.mat-expansion-panel-content-wrapper>.mat-expansion-panel-content{visibility:visible}.mat-expansion-panel-body{padding:0 24px 16px}.mat-expansion-panel-spacing{margin:16px 0}.mat-accordion>.mat-expansion-panel-spacing:first-child,.mat-accordion>*:first-child:not(.mat-expansion-panel) .mat-expansion-panel-spacing{margin-top:0}.mat-accordion>.mat-expansion-panel-spacing:last-child,.mat-accordion>*:last-child:not(.mat-expansion-panel) .mat-expansion-panel-spacing{margin-bottom:0}.mat-action-row{border-top-style:solid;border-top-width:1px;display:flex;flex-direction:row;justify-content:flex-end;padding:16px 8px 16px 24px;border-top-color:var(--mat-expansion-actions-divider-color, var(--mat-sys-outline))}.mat-action-row .mat-button-base,.mat-action-row .mat-mdc-button-base{margin-left:8px}[dir=rtl] .mat-action-row .mat-button-base,[dir=rtl] .mat-action-row .mat-mdc-button-base{margin-left:0;margin-right:8px}
2
2
  `],encapsulation:2,changeDetection:0})}return n})();var nt=(()=>{class n{panel=m(it,{host:!0});_element=m(q);_focusMonitor=m(Xe);_changeDetectorRef=m(z);_parentChangeSubscription=Be.EMPTY;constructor(){m(Ee).load(Ie);let e=this.panel,t=m(Tn,{optional:!0}),i=m(new ut("tabindex"),{optional:!0}),o=e.accordion?e.accordion._stateChanges.pipe(Ye(d=>!!(d.hideToggle||d.togglePosition))):ai;this.tabIndex=parseInt(i||"")||0,this._parentChangeSubscription=si(e.opened,e.closed,o,e._inputChanges.pipe(Ye(d=>!!(d.hideToggle||d.disabled||d.togglePosition)))).subscribe(()=>this._changeDetectorRef.markForCheck()),e.closed.pipe(Ye(()=>e._containsFocus())).subscribe(()=>this._focusMonitor.focusVia(this._element,"program")),t&&(this.expandedHeight=t.expandedHeight,this.collapsedHeight=t.collapsedHeight)}expandedHeight;collapsedHeight;tabIndex=0;get disabled(){return this.panel.disabled}_toggle(){this.disabled||this.panel.toggle()}_isExpanded(){return this.panel.expanded}_getExpandedState(){return this.panel._getExpandedState()}_getPanelId(){return this.panel.id}_getTogglePosition(){return this.panel.togglePosition}_showToggle(){return!this.panel.hideToggle&&!this.panel.disabled}_getHeaderHeight(){let e=this._isExpanded();return e&&this.expandedHeight?this.expandedHeight:!e&&this.collapsedHeight?this.collapsedHeight:null}_keydown(e){switch(e.keyCode){case 32:case 13:bt(e)||(e.preventDefault(),this._toggle());break;default:this.panel.accordion&&this.panel.accordion._handleHeaderKeydown(e);return}}focus(e,t){e?this._focusMonitor.focusVia(this._element,e,t):this._element.nativeElement.focus(t)}ngAfterViewInit(){this._focusMonitor.monitor(this._element).subscribe(e=>{e&&this.panel.accordion&&this.panel.accordion._handleHeaderFocus(this)})}ngOnDestroy(){this._parentChangeSubscription.unsubscribe(),this._focusMonitor.stopMonitoring(this._element)}static \u0275fac=function(t){return new(t||n)};static \u0275cmp=M({type:n,selectors:[["mat-expansion-panel-header"]],hostAttrs:["role","button",1,"mat-expansion-panel-header","mat-focus-indicator"],hostVars:13,hostBindings:function(t,i){t&1&&b("click",function(){return i._toggle()})("keydown",function(d){return i._keydown(d)}),t&2&&(N("id",i.panel._headerId)("tabindex",i.disabled?-1:i.tabIndex)("aria-controls",i._getPanelId())("aria-expanded",i._isExpanded())("aria-disabled",i.panel.disabled),We("height",i._getHeaderHeight()),P("mat-expanded",i._isExpanded())("mat-expansion-toggle-indicator-after",i._getTogglePosition()==="after")("mat-expansion-toggle-indicator-before",i._getTogglePosition()==="before"))},inputs:{expandedHeight:"expandedHeight",collapsedHeight:"collapsedHeight",tabIndex:[2,"tabIndex","tabIndex",e=>e==null?0:j(e)]},ngContentSelectors:da,decls:5,vars:3,consts:[[1,"mat-content"],[1,"mat-expansion-indicator"],["xmlns","http://www.w3.org/2000/svg","viewBox","0 -960 960 960","aria-hidden","true","focusable","false"],["d","M480-345 240-585l56-56 184 184 184-184 56 56-240 240Z"]],template:function(t,i){t&1&&(Y(la),mt(0,"span",0),O(1),O(2,1),O(3,2),zt(),y(4,ca,3,0,"span",1)),t&2&&(P("mat-content-hide-toggle",!i._showToggle()),l(4),C(i._showToggle()?4:-1))},styles:[`.mat-expansion-panel-header{display:flex;flex-direction:row;align-items:center;padding:0 24px;border-radius:inherit;height:var(--mat-expansion-header-collapsed-state-height, 48px);font-family:var(--mat-expansion-header-text-font, var(--mat-sys-title-medium-font));font-size:var(--mat-expansion-header-text-size, var(--mat-sys-title-medium-size));font-weight:var(--mat-expansion-header-text-weight, var(--mat-sys-title-medium-weight));line-height:var(--mat-expansion-header-text-line-height, var(--mat-sys-title-medium-line-height));letter-spacing:var(--mat-expansion-header-text-tracking, var(--mat-sys-title-medium-tracking))}.mat-expansion-panel-animations-enabled .mat-expansion-panel-header{transition:height 225ms cubic-bezier(0.4, 0, 0.2, 1)}.mat-expansion-panel-header::before{border-radius:inherit}.mat-expansion-panel-header.mat-expanded{height:var(--mat-expansion-header-expanded-state-height, 64px)}.mat-expansion-panel-header[aria-disabled=true]{color:var(--mat-expansion-header-disabled-state-text-color, color-mix(in srgb, var(--mat-sys-on-surface) 38%, transparent))}.mat-expansion-panel-header:not([aria-disabled=true]){cursor:pointer}.mat-expansion-panel:not(.mat-expanded) .mat-expansion-panel-header:not([aria-disabled=true]):hover{background:var(--mat-expansion-header-hover-state-layer-color, color-mix(in srgb, var(--mat-sys-on-surface) calc(var(--mat-sys-hover-state-layer-opacity) * 100%), transparent))}@media(hover: none){.mat-expansion-panel:not(.mat-expanded) .mat-expansion-panel-header:not([aria-disabled=true]):hover{background:var(--mat-expansion-container-background-color, var(--mat-sys-surface))}}.mat-expansion-panel .mat-expansion-panel-header:not([aria-disabled=true]).cdk-keyboard-focused,.mat-expansion-panel .mat-expansion-panel-header:not([aria-disabled=true]).cdk-program-focused{background:var(--mat-expansion-header-focus-state-layer-color, color-mix(in srgb, var(--mat-sys-on-surface) calc(var(--mat-sys-focus-state-layer-opacity) * 100%), transparent))}.mat-expansion-panel-header._mat-animation-noopable{transition:none}.mat-expansion-panel-header:focus,.mat-expansion-panel-header:hover{outline:none}.mat-expansion-panel-header.mat-expanded:focus,.mat-expansion-panel-header.mat-expanded:hover{background:inherit}.mat-expansion-panel-header.mat-expansion-toggle-indicator-before{flex-direction:row-reverse}.mat-expansion-panel-header.mat-expansion-toggle-indicator-before .mat-expansion-indicator{margin:0 16px 0 0}[dir=rtl] .mat-expansion-panel-header.mat-expansion-toggle-indicator-before .mat-expansion-indicator{margin:0 0 0 16px}.mat-content{display:flex;flex:1;flex-direction:row;overflow:hidden}.mat-content.mat-content-hide-toggle{margin-right:8px}[dir=rtl] .mat-content.mat-content-hide-toggle{margin-right:0;margin-left:8px}.mat-expansion-toggle-indicator-before .mat-content.mat-content-hide-toggle{margin-left:24px;margin-right:0}[dir=rtl] .mat-expansion-toggle-indicator-before .mat-content.mat-content-hide-toggle{margin-right:24px;margin-left:0}.mat-expansion-panel-header-title{color:var(--mat-expansion-header-text-color, var(--mat-sys-on-surface))}.mat-expansion-panel-header-title,.mat-expansion-panel-header-description{display:flex;flex-grow:1;flex-basis:0;margin-right:16px;align-items:center}[dir=rtl] .mat-expansion-panel-header-title,[dir=rtl] .mat-expansion-panel-header-description{margin-right:0;margin-left:16px}.mat-expansion-panel-header[aria-disabled=true] .mat-expansion-panel-header-title,.mat-expansion-panel-header[aria-disabled=true] .mat-expansion-panel-header-description{color:inherit}.mat-expansion-panel-header-description{flex-grow:2;color:var(--mat-expansion-header-description-color, var(--mat-sys-on-surface-variant))}.mat-expansion-panel-animations-enabled .mat-expansion-indicator{transition:transform 225ms cubic-bezier(0.4, 0, 0.2, 1)}.mat-expansion-panel-header.mat-expanded .mat-expansion-indicator{transform:rotate(180deg)}.mat-expansion-indicator::after{border-style:solid;border-width:0 2px 2px 0;content:"";padding:3px;transform:rotate(45deg);vertical-align:middle;color:var(--mat-expansion-header-indicator-color, var(--mat-sys-on-surface-variant));display:var(--mat-expansion-legacy-header-indicator-display, none)}.mat-expansion-indicator svg{width:24px;height:24px;margin:0 -8px;vertical-align:middle;fill:var(--mat-expansion-header-indicator-color, var(--mat-sys-on-surface-variant));display:var(--mat-expansion-header-indicator-display, inline-block)}@media(forced-colors: active){.mat-expansion-panel-content{border-top:1px solid;border-top-left-radius:0;border-top-right-radius:0}}
3
3
  `],encapsulation:2,changeDetection:0})}return n})(),Pt=(()=>{class n{static \u0275fac=function(t){return new(t||n)};static \u0275dir=D({type:n,selectors:[["mat-panel-description"]],hostAttrs:[1,"mat-expansion-panel-header-description"]})}return n})(),Vt=(()=>{class n{static \u0275fac=function(t){return new(t||n)};static \u0275dir=D({type:n,selectors:[["mat-panel-title"]],hostAttrs:[1,"mat-expansion-panel-header-title"]})}return n})(),Nt=(()=>{class n extends Cn{_keyManager;_ownHeaders=new Ve;_headers;hideToggle=!1;displayMode="default";togglePosition="after";ngAfterContentInit(){this._headers.changes.pipe(me(this._headers)).subscribe(e=>{this._ownHeaders.reset(e.filter(t=>t.panel.accordion===this)),this._ownHeaders.notifyOnChanges()}),this._keyManager=new vt(this._ownHeaders).withWrap().withHomeAndEnd()}_handleHeaderKeydown(e){this._keyManager.onKeydown(e)}_handleHeaderFocus(e){this._keyManager.updateActiveItem(e)}ngOnDestroy(){super.ngOnDestroy(),this._keyManager?.destroy(),this._ownHeaders.destroy()}static \u0275fac=(()=>{let e;return function(i){return(e||(e=Pe(n)))(i||n)}})();static \u0275dir=D({type:n,selectors:[["mat-accordion"]],contentQueries:function(t,i,o){if(t&1&&F(o,nt,5),t&2){let d;k(d=T())&&(i._headers=d)}},hostAttrs:[1,"mat-accordion"],hostVars:2,hostBindings:function(t,i){t&2&&P("mat-accordion-multi",i.multi)},inputs:{hideToggle:[2,"hideToggle","hideToggle",E],displayMode:"displayMode",togglePosition:"togglePosition"},exportAs:["matAccordion"],features:[Q([{provide:Kt,useExisting:n}]),ie]})}return n})(),Ot=(()=>{class n{static \u0275fac=function(t){return new(t||n)};static \u0275mod=he({type:n});static \u0275inj=pe({imports:[Fe,xn,jt]})}return n})();var pa=["switch"],ha=["*"];function ua(n,p){n&1&&(a(0,"span",10),lt(),a(1,"svg",12),_(2,"path",13),r(),a(3,"svg",14),_(4,"path",15),r()())}var ga=new B("mat-slide-toggle-default-options",{providedIn:"root",factory:()=>({disableToggleValue:!1,hideIcon:!1,disabledInteractive:!1})}),Ft=class{source;checked;constructor(p,e){this.source=p,this.checked=e}},at=(()=>{class n{_elementRef=m(q);_focusMonitor=m(Xe);_changeDetectorRef=m(z);defaults=m(ga);_onChange=e=>{};_onTouched=()=>{};_validatorOnChange=()=>{};_uniqueId;_checked=!1;_createChangeEvent(e){return new Ft(this,e)}_labelId;get buttonId(){return`${this.id||this._uniqueId}-button`}_switchElement;focus(){this._switchElement.nativeElement.focus()}_noopAnimations=De();_focused;name=null;id;labelPosition="after";ariaLabel=null;ariaLabelledby=null;ariaDescribedby;required;color;disabled=!1;disableRipple=!1;tabIndex=0;get checked(){return this._checked}set checked(e){this._checked=e,this._changeDetectorRef.markForCheck()}hideIcon;disabledInteractive;change=new I;toggleChange=new I;get inputId(){return`${this.id||this._uniqueId}-input`}constructor(){m(Ee).load(Ie);let e=m(new ut("tabindex"),{optional:!0}),t=this.defaults;this.tabIndex=e==null?0:parseInt(e)||0,this.color=t.color||"accent",this.id=this._uniqueId=m(ye).getId("mat-mdc-slide-toggle-"),this.hideIcon=t.hideIcon??!1,this.disabledInteractive=t.disabledInteractive??!1,this._labelId=this._uniqueId+"-label"}ngAfterContentInit(){this._focusMonitor.monitor(this._elementRef,!0).subscribe(e=>{e==="keyboard"||e==="program"?(this._focused=!0,this._changeDetectorRef.markForCheck()):e||Promise.resolve().then(()=>{this._focused=!1,this._onTouched(),this._changeDetectorRef.markForCheck()})})}ngOnChanges(e){e.required&&this._validatorOnChange()}ngOnDestroy(){this._focusMonitor.stopMonitoring(this._elementRef)}writeValue(e){this.checked=!!e}registerOnChange(e){this._onChange=e}registerOnTouched(e){this._onTouched=e}validate(e){return this.required&&e.value!==!0?{required:!0}:null}registerOnValidatorChange(e){this._validatorOnChange=e}setDisabledState(e){this.disabled=e,this._changeDetectorRef.markForCheck()}toggle(){this.checked=!this.checked,this._onChange(this.checked)}_emitChangeEvent(){this._onChange(this.checked),this.change.emit(this._createChangeEvent(this.checked))}_handleClick(){this.disabled||(this.toggleChange.emit(),this.defaults.disableToggleValue||(this.checked=!this.checked,this._onChange(this.checked),this.change.emit(new Ft(this,this.checked))))}_getAriaLabelledBy(){return this.ariaLabelledby?this.ariaLabelledby:this.ariaLabel?null:this._labelId}static \u0275fac=function(t){return new(t||n)};static \u0275cmp=M({type:n,selectors:[["mat-slide-toggle"]],viewQuery:function(t,i){if(t&1&&L(pa,5),t&2){let o;k(o=T())&&(i._switchElement=o.first)}},hostAttrs:[1,"mat-mdc-slide-toggle"],hostVars:13,hostBindings:function(t,i){t&2&&(ke("id",i.id),N("tabindex",null)("aria-label",null)("name",null)("aria-labelledby",null),ve(i.color?"mat-"+i.color:""),P("mat-mdc-slide-toggle-focused",i._focused)("mat-mdc-slide-toggle-checked",i.checked)("_mat-animation-noopable",i._noopAnimations))},inputs:{name:"name",id:"id",labelPosition:"labelPosition",ariaLabel:[0,"aria-label","ariaLabel"],ariaLabelledby:[0,"aria-labelledby","ariaLabelledby"],ariaDescribedby:[0,"aria-describedby","ariaDescribedby"],required:[2,"required","required",E],color:"color",disabled:[2,"disabled","disabled",E],disableRipple:[2,"disableRipple","disableRipple",E],tabIndex:[2,"tabIndex","tabIndex",e=>e==null?0:j(e)],checked:[2,"checked","checked",E],hideIcon:[2,"hideIcon","hideIcon",E],disabledInteractive:[2,"disabledInteractive","disabledInteractive",E]},outputs:{change:"change",toggleChange:"toggleChange"},exportAs:["matSlideToggle"],features:[Q([{provide:Mt,useExisting:st(()=>n),multi:!0},{provide:Fi,useExisting:n,multi:!0}]),xe],ngContentSelectors:ha,decls:13,vars:27,consts:[["switch",""],["mat-internal-form-field","",3,"labelPosition"],["role","switch","type","button",1,"mdc-switch",3,"click","tabIndex","disabled"],[1,"mdc-switch__track"],[1,"mdc-switch__handle-track"],[1,"mdc-switch__handle"],[1,"mdc-switch__shadow"],[1,"mdc-elevation-overlay"],[1,"mdc-switch__ripple"],["mat-ripple","",1,"mat-mdc-slide-toggle-ripple","mat-focus-indicator",3,"matRippleTrigger","matRippleDisabled","matRippleCentered"],[1,"mdc-switch__icons"],[1,"mdc-label",3,"click","for"],["viewBox","0 0 24 24","aria-hidden","true",1,"mdc-switch__icon","mdc-switch__icon--on"],["d","M19.69,5.23L8.96,15.96l-4.23-4.23L2.96,13.5l6,6L21.46,7L19.69,5.23z"],["viewBox","0 0 24 24","aria-hidden","true",1,"mdc-switch__icon","mdc-switch__icon--off"],["d","M20 13H4v-2h16v2z"]],template:function(t,i){if(t&1){let o=A();Y(),a(0,"div",1)(1,"button",2,0),b("click",function(){return u(o),g(i._handleClick())}),_(3,"span",3),a(4,"span",4)(5,"span",5)(6,"span",6),_(7,"span",7),r(),a(8,"span",8),_(9,"span",9),r(),y(10,ua,5,0,"span",10),r()()(),a(11,"label",11),b("click",function(c){return u(o),g(c.stopPropagation())}),O(12),r()()}if(t&2){let o=R(2);h("labelPosition",i.labelPosition),l(),P("mdc-switch--selected",i.checked)("mdc-switch--unselected",!i.checked)("mdc-switch--checked",i.checked)("mdc-switch--disabled",i.disabled)("mat-mdc-slide-toggle-disabled-interactive",i.disabledInteractive),h("tabIndex",i.disabled&&!i.disabledInteractive?-1:i.tabIndex)("disabled",i.disabled&&!i.disabledInteractive),N("id",i.buttonId)("name",i.name)("aria-label",i.ariaLabel)("aria-labelledby",i._getAriaLabelledBy())("aria-describedby",i.ariaDescribedby)("aria-required",i.required||null)("aria-checked",i.checked)("aria-disabled",i.disabled&&i.disabledInteractive?"true":null),l(8),h("matRippleTrigger",o)("matRippleDisabled",i.disableRipple||i.disabled)("matRippleCentered",!0),l(),C(i.hideIcon?-1:10),l(),h("for",i.buttonId),N("id",i._labelId)}},dependencies:[Le,Gi],styles:[`.mdc-switch{align-items:center;background:none;border:none;cursor:pointer;display:inline-flex;flex-shrink:0;margin:0;outline:none;overflow:visible;padding:0;position:relative;width:var(--mat-slide-toggle-track-width, 52px)}.mdc-switch.mdc-switch--disabled{cursor:default;pointer-events:none}.mdc-switch.mat-mdc-slide-toggle-disabled-interactive{pointer-events:auto}.mdc-switch__track{overflow:hidden;position:relative;width:100%;height:var(--mat-slide-toggle-track-height, 32px);border-radius:var(--mat-slide-toggle-track-shape, var(--mat-sys-corner-full))}.mdc-switch--disabled.mdc-switch .mdc-switch__track{opacity:var(--mat-slide-toggle-disabled-track-opacity, 0.12)}.mdc-switch__track::before,.mdc-switch__track::after{border:1px solid rgba(0,0,0,0);border-radius:inherit;box-sizing:border-box;content:"";height:100%;left:0;position:absolute;width:100%;border-width:var(--mat-slide-toggle-track-outline-width, 2px);border-color:var(--mat-slide-toggle-track-outline-color, var(--mat-sys-outline))}.mdc-switch--selected .mdc-switch__track::before,.mdc-switch--selected .mdc-switch__track::after{border-width:var(--mat-slide-toggle-selected-track-outline-width, 2px);border-color:var(--mat-slide-toggle-selected-track-outline-color, transparent)}.mdc-switch--disabled .mdc-switch__track::before,.mdc-switch--disabled .mdc-switch__track::after{border-width:var(--mat-slide-toggle-disabled-unselected-track-outline-width, 2px);border-color:var(--mat-slide-toggle-disabled-unselected-track-outline-color, var(--mat-sys-on-surface))}@media(forced-colors: active){.mdc-switch__track{border-color:currentColor}}.mdc-switch__track::before{transition:transform 75ms 0ms cubic-bezier(0, 0, 0.2, 1);transform:translateX(0);background:var(--mat-slide-toggle-unselected-track-color, var(--mat-sys-surface-variant))}.mdc-switch--selected .mdc-switch__track::before{transition:transform 75ms 0ms cubic-bezier(0.4, 0, 0.6, 1);transform:translateX(100%)}[dir=rtl] .mdc-switch--selected .mdc-switch--selected .mdc-switch__track::before{transform:translateX(-100%)}.mdc-switch--selected .mdc-switch__track::before{opacity:var(--mat-slide-toggle-hidden-track-opacity, 0);transition:var(--mat-slide-toggle-hidden-track-transition, opacity 75ms)}.mdc-switch--unselected .mdc-switch__track::before{opacity:var(--mat-slide-toggle-visible-track-opacity, 1);transition:var(--mat-slide-toggle-visible-track-transition, opacity 75ms)}.mdc-switch:enabled:hover:not(:focus):not(:active) .mdc-switch__track::before{background:var(--mat-slide-toggle-unselected-hover-track-color, var(--mat-sys-surface-variant))}.mdc-switch:enabled:focus:not(:active) .mdc-switch__track::before{background:var(--mat-slide-toggle-unselected-focus-track-color, var(--mat-sys-surface-variant))}.mdc-switch:enabled:active .mdc-switch__track::before{background:var(--mat-slide-toggle-unselected-pressed-track-color, var(--mat-sys-surface-variant))}.mat-mdc-slide-toggle-disabled-interactive.mdc-switch--disabled:hover:not(:focus):not(:active) .mdc-switch__track::before,.mat-mdc-slide-toggle-disabled-interactive.mdc-switch--disabled:focus:not(:active) .mdc-switch__track::before,.mat-mdc-slide-toggle-disabled-interactive.mdc-switch--disabled:active .mdc-switch__track::before,.mdc-switch.mdc-switch--disabled .mdc-switch__track::before{background:var(--mat-slide-toggle-disabled-unselected-track-color, var(--mat-sys-surface-variant))}.mdc-switch__track::after{transform:translateX(-100%);background:var(--mat-slide-toggle-selected-track-color, var(--mat-sys-primary))}[dir=rtl] .mdc-switch__track::after{transform:translateX(100%)}.mdc-switch--selected .mdc-switch__track::after{transform:translateX(0)}.mdc-switch--selected .mdc-switch__track::after{opacity:var(--mat-slide-toggle-visible-track-opacity, 1);transition:var(--mat-slide-toggle-visible-track-transition, opacity 75ms)}.mdc-switch--unselected .mdc-switch__track::after{opacity:var(--mat-slide-toggle-hidden-track-opacity, 0);transition:var(--mat-slide-toggle-hidden-track-transition, opacity 75ms)}.mdc-switch:enabled:hover:not(:focus):not(:active) .mdc-switch__track::after{background:var(--mat-slide-toggle-selected-hover-track-color, var(--mat-sys-primary))}.mdc-switch:enabled:focus:not(:active) .mdc-switch__track::after{background:var(--mat-slide-toggle-selected-focus-track-color, var(--mat-sys-primary))}.mdc-switch:enabled:active .mdc-switch__track::after{background:var(--mat-slide-toggle-selected-pressed-track-color, var(--mat-sys-primary))}.mat-mdc-slide-toggle-disabled-interactive.mdc-switch--disabled:hover:not(:focus):not(:active) .mdc-switch__track::after,.mat-mdc-slide-toggle-disabled-interactive.mdc-switch--disabled:focus:not(:active) .mdc-switch__track::after,.mat-mdc-slide-toggle-disabled-interactive.mdc-switch--disabled:active .mdc-switch__track::after,.mdc-switch.mdc-switch--disabled .mdc-switch__track::after{background:var(--mat-slide-toggle-disabled-selected-track-color, var(--mat-sys-on-surface))}.mdc-switch__handle-track{height:100%;pointer-events:none;position:absolute;top:0;transition:transform 75ms 0ms cubic-bezier(0.4, 0, 0.2, 1);left:0;right:auto;transform:translateX(0);width:calc(100% - var(--mat-slide-toggle-handle-width))}[dir=rtl] .mdc-switch__handle-track{left:auto;right:0}.mdc-switch--selected .mdc-switch__handle-track{transform:translateX(100%)}[dir=rtl] .mdc-switch--selected .mdc-switch__handle-track{transform:translateX(-100%)}.mdc-switch__handle{display:flex;pointer-events:auto;position:absolute;top:50%;transform:translateY(-50%);left:0;right:auto;transition:width 75ms cubic-bezier(0.4, 0, 0.2, 1),height 75ms cubic-bezier(0.4, 0, 0.2, 1),margin 75ms cubic-bezier(0.4, 0, 0.2, 1);width:var(--mat-slide-toggle-handle-width);height:var(--mat-slide-toggle-handle-height);border-radius:var(--mat-slide-toggle-handle-shape, var(--mat-sys-corner-full))}[dir=rtl] .mdc-switch__handle{left:auto;right:0}.mat-mdc-slide-toggle .mdc-switch--unselected .mdc-switch__handle{width:var(--mat-slide-toggle-unselected-handle-size, 16px);height:var(--mat-slide-toggle-unselected-handle-size, 16px);margin:var(--mat-slide-toggle-unselected-handle-horizontal-margin, 0 8px)}.mat-mdc-slide-toggle .mdc-switch--unselected .mdc-switch__handle:has(.mdc-switch__icons){margin:var(--mat-slide-toggle-unselected-with-icon-handle-horizontal-margin, 0 4px)}.mat-mdc-slide-toggle .mdc-switch--selected .mdc-switch__handle{width:var(--mat-slide-toggle-selected-handle-size, 24px);height:var(--mat-slide-toggle-selected-handle-size, 24px);margin:var(--mat-slide-toggle-selected-handle-horizontal-margin, 0 24px)}.mat-mdc-slide-toggle .mdc-switch--selected .mdc-switch__handle:has(.mdc-switch__icons){margin:var(--mat-slide-toggle-selected-with-icon-handle-horizontal-margin, 0 24px)}.mat-mdc-slide-toggle .mdc-switch__handle:has(.mdc-switch__icons){width:var(--mat-slide-toggle-with-icon-handle-size, 24px);height:var(--mat-slide-toggle-with-icon-handle-size, 24px)}.mat-mdc-slide-toggle .mdc-switch:active:not(.mdc-switch--disabled) .mdc-switch__handle{width:var(--mat-slide-toggle-pressed-handle-size, 28px);height:var(--mat-slide-toggle-pressed-handle-size, 28px)}.mat-mdc-slide-toggle .mdc-switch--selected:active:not(.mdc-switch--disabled) .mdc-switch__handle{margin:var(--mat-slide-toggle-selected-pressed-handle-horizontal-margin, 0 22px)}.mat-mdc-slide-toggle .mdc-switch--unselected:active:not(.mdc-switch--disabled) .mdc-switch__handle{margin:var(--mat-slide-toggle-unselected-pressed-handle-horizontal-margin, 0 2px)}.mdc-switch--disabled.mdc-switch--selected .mdc-switch__handle::after{opacity:var(--mat-slide-toggle-disabled-selected-handle-opacity, 1)}.mdc-switch--disabled.mdc-switch--unselected .mdc-switch__handle::after{opacity:var(--mat-slide-toggle-disabled-unselected-handle-opacity, 0.38)}.mdc-switch__handle::before,.mdc-switch__handle::after{border:1px solid rgba(0,0,0,0);border-radius:inherit;box-sizing:border-box;content:"";width:100%;height:100%;left:0;position:absolute;top:0;transition:background-color 75ms 0ms cubic-bezier(0.4, 0, 0.2, 1),border-color 75ms 0ms cubic-bezier(0.4, 0, 0.2, 1);z-index:-1}@media(forced-colors: active){.mdc-switch__handle::before,.mdc-switch__handle::after{border-color:currentColor}}.mdc-switch--selected:enabled .mdc-switch__handle::after{background:var(--mat-slide-toggle-selected-handle-color, var(--mat-sys-on-primary))}.mdc-switch--selected:enabled:hover:not(:focus):not(:active) .mdc-switch__handle::after{background:var(--mat-slide-toggle-selected-hover-handle-color, var(--mat-sys-primary-container))}.mdc-switch--selected:enabled:focus:not(:active) .mdc-switch__handle::after{background:var(--mat-slide-toggle-selected-focus-handle-color, var(--mat-sys-primary-container))}.mdc-switch--selected:enabled:active .mdc-switch__handle::after{background:var(--mat-slide-toggle-selected-pressed-handle-color, var(--mat-sys-primary-container))}.mat-mdc-slide-toggle-disabled-interactive.mdc-switch--disabled.mdc-switch--selected:hover:not(:focus):not(:active) .mdc-switch__handle::after,.mat-mdc-slide-toggle-disabled-interactive.mdc-switch--disabled.mdc-switch--selected:focus:not(:active) .mdc-switch__handle::after,.mat-mdc-slide-toggle-disabled-interactive.mdc-switch--disabled.mdc-switch--selected:active .mdc-switch__handle::after,.mdc-switch--selected.mdc-switch--disabled .mdc-switch__handle::after{background:var(--mat-slide-toggle-disabled-selected-handle-color, var(--mat-sys-surface))}.mdc-switch--unselected:enabled .mdc-switch__handle::after{background:var(--mat-slide-toggle-unselected-handle-color, var(--mat-sys-outline))}.mdc-switch--unselected:enabled:hover:not(:focus):not(:active) .mdc-switch__handle::after{background:var(--mat-slide-toggle-unselected-hover-handle-color, var(--mat-sys-on-surface-variant))}.mdc-switch--unselected:enabled:focus:not(:active) .mdc-switch__handle::after{background:var(--mat-slide-toggle-unselected-focus-handle-color, var(--mat-sys-on-surface-variant))}.mdc-switch--unselected:enabled:active .mdc-switch__handle::after{background:var(--mat-slide-toggle-unselected-pressed-handle-color, var(--mat-sys-on-surface-variant))}.mdc-switch--unselected.mdc-switch--disabled .mdc-switch__handle::after{background:var(--mat-slide-toggle-disabled-unselected-handle-color, var(--mat-sys-on-surface))}.mdc-switch__handle::before{background:var(--mat-slide-toggle-handle-surface-color)}.mdc-switch__shadow{border-radius:inherit;bottom:0;left:0;position:absolute;right:0;top:0}.mdc-switch:enabled .mdc-switch__shadow{box-shadow:var(--mat-slide-toggle-handle-elevation-shadow)}.mat-mdc-slide-toggle-disabled-interactive.mdc-switch--disabled:hover:not(:focus):not(:active) .mdc-switch__shadow,.mat-mdc-slide-toggle-disabled-interactive.mdc-switch--disabled:focus:not(:active) .mdc-switch__shadow,.mat-mdc-slide-toggle-disabled-interactive.mdc-switch--disabled:active .mdc-switch__shadow,.mdc-switch.mdc-switch--disabled .mdc-switch__shadow{box-shadow:var(--mat-slide-toggle-disabled-handle-elevation-shadow)}.mdc-switch__ripple{left:50%;position:absolute;top:50%;transform:translate(-50%, -50%);z-index:-1;width:var(--mat-slide-toggle-state-layer-size, 40px);height:var(--mat-slide-toggle-state-layer-size, 40px)}.mdc-switch__ripple::after{content:"";opacity:0}.mdc-switch--disabled .mdc-switch__ripple::after{display:none}.mat-mdc-slide-toggle-disabled-interactive .mdc-switch__ripple::after{display:block}.mdc-switch:hover .mdc-switch__ripple::after{transition:75ms opacity cubic-bezier(0, 0, 0.2, 1)}.mat-mdc-slide-toggle-disabled-interactive.mdc-switch--disabled:enabled:focus .mdc-switch__ripple::after,.mat-mdc-slide-toggle-disabled-interactive.mdc-switch--disabled:enabled:active .mdc-switch__ripple::after,.mat-mdc-slide-toggle-disabled-interactive.mdc-switch--disabled:enabled:hover:not(:focus) .mdc-switch__ripple::after,.mdc-switch--unselected:enabled:hover:not(:focus) .mdc-switch__ripple::after{background:var(--mat-slide-toggle-unselected-hover-state-layer-color, var(--mat-sys-on-surface));opacity:var(--mat-slide-toggle-unselected-hover-state-layer-opacity, var(--mat-sys-hover-state-layer-opacity))}.mdc-switch--unselected:enabled:focus .mdc-switch__ripple::after{background:var(--mat-slide-toggle-unselected-focus-state-layer-color, var(--mat-sys-on-surface));opacity:var(--mat-slide-toggle-unselected-focus-state-layer-opacity, var(--mat-sys-focus-state-layer-opacity))}.mdc-switch--unselected:enabled:active .mdc-switch__ripple::after{background:var(--mat-slide-toggle-unselected-pressed-state-layer-color, var(--mat-sys-on-surface));opacity:var(--mat-slide-toggle-unselected-pressed-state-layer-opacity, var(--mat-sys-pressed-state-layer-opacity));transition:opacity 75ms linear}.mdc-switch--selected:enabled:hover:not(:focus) .mdc-switch__ripple::after{background:var(--mat-slide-toggle-selected-hover-state-layer-color, var(--mat-sys-primary));opacity:var(--mat-slide-toggle-selected-hover-state-layer-opacity, var(--mat-sys-hover-state-layer-opacity))}.mdc-switch--selected:enabled:focus .mdc-switch__ripple::after{background:var(--mat-slide-toggle-selected-focus-state-layer-color, var(--mat-sys-primary));opacity:var(--mat-slide-toggle-selected-focus-state-layer-opacity, var(--mat-sys-focus-state-layer-opacity))}.mdc-switch--selected:enabled:active .mdc-switch__ripple::after{background:var(--mat-slide-toggle-selected-pressed-state-layer-color, var(--mat-sys-primary));opacity:var(--mat-slide-toggle-selected-pressed-state-layer-opacity, var(--mat-sys-pressed-state-layer-opacity));transition:opacity 75ms linear}.mdc-switch__icons{position:relative;height:100%;width:100%;z-index:1;transform:translateZ(0)}.mdc-switch--disabled.mdc-switch--unselected .mdc-switch__icons{opacity:var(--mat-slide-toggle-disabled-unselected-icon-opacity, 0.38)}.mdc-switch--disabled.mdc-switch--selected .mdc-switch__icons{opacity:var(--mat-slide-toggle-disabled-selected-icon-opacity, 0.38)}.mdc-switch__icon{bottom:0;left:0;margin:auto;position:absolute;right:0;top:0;opacity:0;transition:opacity 30ms 0ms cubic-bezier(0.4, 0, 1, 1)}.mdc-switch--unselected .mdc-switch__icon{width:var(--mat-slide-toggle-unselected-icon-size, 16px);height:var(--mat-slide-toggle-unselected-icon-size, 16px);fill:var(--mat-slide-toggle-unselected-icon-color, var(--mat-sys-surface-variant))}.mdc-switch--unselected.mdc-switch--disabled .mdc-switch__icon{fill:var(--mat-slide-toggle-disabled-unselected-icon-color, var(--mat-sys-surface-variant))}.mdc-switch--selected .mdc-switch__icon{width:var(--mat-slide-toggle-selected-icon-size, 16px);height:var(--mat-slide-toggle-selected-icon-size, 16px);fill:var(--mat-slide-toggle-selected-icon-color, var(--mat-sys-on-primary-container))}.mdc-switch--selected.mdc-switch--disabled .mdc-switch__icon{fill:var(--mat-slide-toggle-disabled-selected-icon-color, var(--mat-sys-on-surface))}.mdc-switch--selected .mdc-switch__icon--on,.mdc-switch--unselected .mdc-switch__icon--off{opacity:1;transition:opacity 45ms 30ms cubic-bezier(0, 0, 0.2, 1)}.mat-mdc-slide-toggle{-webkit-user-select:none;user-select:none;display:inline-block;-webkit-tap-highlight-color:rgba(0,0,0,0);outline:0}.mat-mdc-slide-toggle .mat-mdc-slide-toggle-ripple,.mat-mdc-slide-toggle .mdc-switch__ripple::after{top:0;left:0;right:0;bottom:0;position:absolute;border-radius:50%;pointer-events:none}.mat-mdc-slide-toggle .mat-mdc-slide-toggle-ripple:not(:empty),.mat-mdc-slide-toggle .mdc-switch__ripple::after:not(:empty){transform:translateZ(0)}.mat-mdc-slide-toggle.mat-mdc-slide-toggle-focused .mat-focus-indicator::before{content:""}.mat-mdc-slide-toggle .mat-internal-form-field{color:var(--mat-slide-toggle-label-text-color, var(--mat-sys-on-surface));font-family:var(--mat-slide-toggle-label-text-font, var(--mat-sys-body-medium-font));line-height:var(--mat-slide-toggle-label-text-line-height, var(--mat-sys-body-medium-line-height));font-size:var(--mat-slide-toggle-label-text-size, var(--mat-sys-body-medium-size));letter-spacing:var(--mat-slide-toggle-label-text-tracking, var(--mat-sys-body-medium-tracking));font-weight:var(--mat-slide-toggle-label-text-weight, var(--mat-sys-body-medium-weight))}.mat-mdc-slide-toggle .mat-ripple-element{opacity:.12}.mat-mdc-slide-toggle .mat-focus-indicator::before{border-radius:50%}.mat-mdc-slide-toggle._mat-animation-noopable .mdc-switch__handle-track,.mat-mdc-slide-toggle._mat-animation-noopable .mdc-switch__icon,.mat-mdc-slide-toggle._mat-animation-noopable .mdc-switch__handle::before,.mat-mdc-slide-toggle._mat-animation-noopable .mdc-switch__handle::after,.mat-mdc-slide-toggle._mat-animation-noopable .mdc-switch__track::before,.mat-mdc-slide-toggle._mat-animation-noopable .mdc-switch__track::after{transition:none}.mat-mdc-slide-toggle .mdc-switch:enabled+.mdc-label{cursor:pointer}.mat-mdc-slide-toggle .mdc-switch--disabled+label{color:var(--mat-slide-toggle-disabled-label-text-color, var(--mat-sys-on-surface))}
4
4
  `],encapsulation:2,changeDetection:0})}return n})(),Dn=(()=>{class n{static \u0275fac=function(t){return new(t||n)};static \u0275mod=he({type:n});static \u0275inj=pe({imports:[at,Fe,Fe]})}return n})();var fa=["notificationsForm"],ba=["statePanel"],va=["soundPanel"];function ya(n,p){n&1&&(a(0,"mat-panel-description"),s(1," Show or hide menu items based on their state "),r())}function Ca(n,p){n&1&&(a(0,"mat-panel-description"),s(1," Mute and unmute data state audio prompts "),r())}var In=(()=>{class n{app=m(ge);settings=m(ue);_responsive=m(ft);isPhonePortrait;notificationsForm=re("notificationsForm");statePanel=re("statePanel");soundPanel=re("soundPanel");notificationConfig;notificationDisabledExpandPanel=!1;constructor(){this.isPhonePortrait=gt(this._responsive.observe(Ct.HandsetPortrait)),this.notificationConfig=et(this.settings.getNotificationConfig())}saveAllSettings(){this.settings.setNotificationConfig(et(this.notificationConfig)),this.notificationsForm().form.markAsPristine(),this.app.sendSnackbarNotification("Configuration saved",3e3,!1)}togglePanel(e){e.checked&&(this.notificationDisabledExpandPanel=!1,this.statePanel().close(),this.soundPanel().close())}static \u0275fac=function(t){return new(t||n)};static \u0275cmp=M({type:n,selectors:[["settings-notifications"]],viewQuery:function(t,i){t&1&&(ne(i.notificationsForm,fa,5),ne(i.statePanel,ba,5),ne(i.soundPanel,va,5)),t&2&&Te(3)},decls:64,vars:17,consts:[["notificationsForm","ngForm"],["statePanel",""],["soundPanel",""],["id","notificationSetting",3,"ngSubmit"],["name","disableNotifications","color","primary",3,"ngModelChange","change","ngModel"],[3,"disabled"],["name","showNormalState",3,"ngModelChange","ngModel"],["name","showNominalState",3,"ngModelChange","ngModel"],["name","=disableSound",3,"ngModelChange","ngModel"],["name","muteAlert",3,"ngModelChange","ngModel","disabled"],["name","muteWarn",3,"ngModelChange","ngModel","disabled"],["name","muteAlarm",3,"ngModelChange","ngModel","disabled"],["name","muteEmergency",3,"ngModelChange","ngModel","disabled"],[1,"formActionFooter"],[1,"formActionDivider"],["mat-flat-button","","type","submit",1,"formActionButton",3,"disabled"]],template:function(t,i){if(t&1){let o=A();a(0,"form",3,0),b("ngSubmit",function(){return u(o),g(i.saveAllSettings())}),a(2,"p"),s(3,"Manage notification settings, ensuring operators stay informed about critical events."),r(),a(4,"mat-slide-toggle",4),w("ngModelChange",function(c){return u(o),x(i.notificationConfig.disableNotifications,c)||(i.notificationConfig.disableNotifications=c),g(c)}),b("change",function(c){return u(o),g(i.togglePanel(c))}),s(5," Disable Notifications "),r(),_(6,"br")(7,"br"),a(8,"mat-accordion")(9,"mat-expansion-panel",5,1)(11,"mat-expansion-panel-header")(12,"mat-panel-title"),s(13," Notifications "),r(),y(14,ya,2,0,"mat-panel-description"),r(),a(15,"mat-checkbox",6),w("ngModelChange",function(c){return u(o),x(i.notificationConfig.devices.showNormalState,c)||(i.notificationConfig.devices.showNormalState=c),g(c)}),s(16," Show "),a(17,"b"),s(18,"Normal"),r(),s(19," state "),r(),_(20,"br"),a(21,"mat-checkbox",7),w("ngModelChange",function(c){return u(o),x(i.notificationConfig.devices.showNominalState,c)||(i.notificationConfig.devices.showNominalState=c),g(c)}),s(22," Show "),a(23,"b"),s(24,"Nominal"),r(),s(25," state "),r()(),a(26,"mat-expansion-panel",5,2)(28,"mat-expansion-panel-header")(29,"mat-panel-title"),s(30," Audio Prompts "),r(),y(31,Ca,2,0,"mat-panel-description"),r(),a(32,"mat-checkbox",8),w("ngModelChange",function(c){return u(o),x(i.notificationConfig.sound.disableSound,c)||(i.notificationConfig.sound.disableSound=c),g(c)}),s(33," Mute "),a(34,"b"),s(35,"all Notifications"),r()(),_(36,"br"),a(37,"mat-checkbox",9),w("ngModelChange",function(c){return u(o),x(i.notificationConfig.sound.muteAlert,c)||(i.notificationConfig.sound.muteAlert=c),g(c)}),s(38," Mute "),a(39,"b"),s(40,"all Alert"),r(),s(41," state "),r(),_(42,"br"),a(43,"mat-checkbox",10),w("ngModelChange",function(c){return u(o),x(i.notificationConfig.sound.muteWarn,c)||(i.notificationConfig.sound.muteWarn=c),g(c)}),s(44," Mute "),a(45,"b"),s(46,"all Warn"),r(),s(47," state "),r(),_(48,"br"),a(49,"mat-checkbox",11),w("ngModelChange",function(c){return u(o),x(i.notificationConfig.sound.muteAlarm,c)||(i.notificationConfig.sound.muteAlarm=c),g(c)}),s(50," Mute "),a(51,"b"),s(52,"all Alarm"),r(),s(53," state "),r(),_(54,"br"),a(55,"mat-checkbox",12),w("ngModelChange",function(c){return u(o),x(i.notificationConfig.sound.muteEmergency,c)||(i.notificationConfig.sound.muteEmergency=c),g(c)}),s(56," Mute "),a(57,"b"),s(58,"all Emergency"),r(),s(59," state "),r()()(),a(60,"div",13),_(61,"mat-divider",14),a(62,"button",15),s(63,"Save"),r()()()}if(t&2){let o=R(1);l(4),S("ngModel",i.notificationConfig.disableNotifications),l(5),h("disabled",i.notificationConfig.disableNotifications),l(5),C(i.isPhonePortrait().matches?-1:14),l(),S("ngModel",i.notificationConfig.devices.showNormalState),l(6),S("ngModel",i.notificationConfig.devices.showNominalState),l(5),h("disabled",i.notificationConfig.disableNotifications),l(5),C(i.isPhonePortrait().matches?-1:31),l(),S("ngModel",i.notificationConfig.sound.disableSound),l(5),S("ngModel",i.notificationConfig.sound.muteAlert),h("disabled",i.notificationConfig.sound.disableSound),l(6),S("ngModel",i.notificationConfig.sound.muteWarn),h("disabled",i.notificationConfig.sound.disableSound),l(6),S("ngModel",i.notificationConfig.sound.muteAlarm),h("disabled",i.notificationConfig.sound.disableSound),l(6),S("ngModel",i.notificationConfig.sound.muteEmergency),h("disabled",i.notificationConfig.sound.disableSound),l(7),h("disabled",!o.form.dirty)}},dependencies:[$,Z,ee,K,_e,se,Ae,Dn,at,Ot,Nt,it,nt,Vt,Pt,ce,G],encapsulation:2})}return n})();Xt.register(...nn);var Rn=Xt;var Sa=["activityGraph"],Zt=()=>({standalone:!1}),xa=()=>({standalone:!0}),An=(()=>{class n{dialog=m(wt);appSettingsService=m(ue);app=m(ge);DataService=m(Ge);signalKConnectionService=m(xi);deltaService=m(Ii);connectionStateMachine=m(Si);auth=m(_t);destroyRef=m(pi);canvasService=m(tn);activityGraph=re("activityGraph");connectionConfig;isConnecting=!1;authToken;endpointServiceStatus;streamStatus;_chart=null;textColor;ngOnInit(){this.connectionConfig=this.appSettingsService.getConnectionConfig(),this.auth.authToken$.pipe(je(this.destroyRef)).subscribe(e=>{e?this.authToken=e:this.authToken=null}),this.signalKConnectionService.getServiceEndpointStatusAsO().pipe(je(this.destroyRef)).subscribe(e=>{this.endpointServiceStatus=e}),this.deltaService.getDataStreamStatusAsO().pipe(je(this.destroyRef)).subscribe(e=>{this.streamStatus=e})}ngAfterViewInit(){this.textColor=window.getComputedStyle(this.activityGraph().nativeElement).color,this._chart?.destroy(),this.startChart(),this.DataService.getSignalkDeltaUpdateStatistics().pipe(je(this.destroyRef)).subscribe(e=>{this._chart.data.datasets[0].data.push({x:e.timestamp,y:e.value}),this._chart.data.datasets[0].data.length>10&&this._chart.data.datasets[0].data.shift(),this._chart?.update("none")})}openUserCredentialModal(e){this.dialog.open(an,{data:{user:this.connectionConfig.loginName,password:this.connectionConfig.loginPassword,error:e}}).afterClosed().pipe(je(this.destroyRef)).subscribe(i=>{i&&(this.connectionConfig.loginName=i.user,this.connectionConfig.loginPassword=i.password,this.connectToServer())})}connectToServer(){return rt(this,null,function*(){if(this.connectionConfig.useSharedConfig&&(!this.connectionConfig.loginName||!this.connectionConfig.loginPassword)){this.openUserCredentialModal("Credentials required");return}this.isConnecting=!0;try{console.log("[Settings-SignalK] Validating Signal K server before connecting..."),yield this.signalKConnectionService.validateSignalKUrl(this.connectionConfig.signalKUrl),console.log("[Settings-SignalK] Validation successful - proceeding with connection"),this.appSettingsService.setConnectionConfig(this.connectionConfig),this.connectionStateMachine.shutdown("Configuration changed - restarting app"),this.authToken&&!this.connectionConfig.useSharedConfig&&!this.authToken.isDeviceAccessToken&&this.auth.deleteToken(),window.__KIP_TEST__||location.reload()}catch(e){this.isConnecting=!1;let t=e?.message||"Unknown validation error";console.error("[Settings-SignalK] Server validation failed:",t),this.app.sendSnackbarNotification(`Connection failed: ${t}`,8e3,!1)}})}startChart(){this._chart=new Rn(this.activityGraph().nativeElement.getContext("2d"),{type:"line",data:{datasets:[{data:[],fill:!0,borderColor:this.textColor}]},options:{maintainAspectRatio:!1,animation:!1,parsing:!1,scales:{x:{type:"time",display:!0,time:{unit:"minute",minUnit:"second",round:"second",displayFormats:{hour:"k:mm''",minute:"mm''",second:'mm ss"',millisecond:"SSS"}},position:"bottom",ticks:{display:!1},grid:{display:!0}},y:{beginAtZero:!0,type:"linear",position:"right",title:{text:"Delta / Sec",display:!0}}},plugins:{legend:{display:!1,labels:{color:this.textColor}}}}})}useSharedConfigToggleClick(e){if(e.checked){let t=this.signalKConnectionService.serverVersion$.getValue();if(!wi(t,"1.46.2",">=")){this.app.sendSnackbarNotification("Configuration sharing requires Signal K version 1.46.2 or better",0),this.connectionConfig.useSharedConfig=!1;return}this.openUserCredentialModal(null)}}ngOnDestroy(){this._chart?.destroy();let e=this.activityGraph?.()?.nativeElement;this.canvasService.releaseCanvas(e,{clear:!0,removeFromDom:!0})}static \u0275fac=function(t){return new(t||n)};static \u0275cmp=M({type:n,selectors:[["settings-signalk"]],viewQuery:function(t,i){t&1&&ne(i.activityGraph,Sa,5),t&2&&Te()},decls:40,vars:22,consts:[["connectionForm","ngForm"],["useSharedConfigToggle",""],["activityGraph",""],["name","connectionForm",3,"ngSubmit"],[1,"connect-table"],[1,"url-cell"],[1,"connectUrlInput"],["type","url","matInput","","placeholder","Ex. http://192.168.0.1:3000","name","signalKURL","required","","pattern","https?://.+",3,"ngModelChange","ngModel","ngModelOptions"],[1,"connect-cell"],["mat-flat-button","","type","submit",1,"connect-btn",3,"disabled"],["colspan","2"],["name","useSharedConfigToggle","matTooltip","Activating authentication enables Signal K's user storage feature to save KIP configuration on the server. When authentication is not activated, KIP stores it's configuration locally in the Browser.",3,"ngModelChange","change","ngModel","ngModelOptions","disabled"],["mat-flat-button","","type","button","matTooltip","Configure Signal K user authentication credentials. The user must be a valid pre existing Signal K server user. It is strongly recommended not to use the default Signal K Admin user.",1,"credentials-btn",3,"click","disabled"],["name","signalKSubscribeAll",3,"ngModelChange","ngModel","ngModelOptions"],["name","isProxyEnabled",3,"ngModelChange","ngModel","ngModelOptions"],[1,"activity-container"],[1,"activity-graph-container"],[1,"activity-graph"],[1,"info-container"]],template:function(t,i){if(t&1){let o=A();a(0,"form",3,0),b("ngSubmit",function(){return u(o),g(i.connectToServer())}),_(2,"br"),a(3,"table",4)(4,"tr",4)(5,"td",5)(6,"mat-form-field",6)(7,"mat-label"),s(8,"Signal K URL"),r(),a(9,"input",7),w("ngModelChange",function(c){return u(o),x(i.connectionConfig.signalKUrl,c)||(i.connectionConfig.signalKUrl=c),g(c)}),r(),a(10,"mat-error"),s(11,' Valid URL is required. Ex. "https://demo.signalK.org" or "http://my.server.com:3000" '),r()()(),a(12,"td",8)(13,"button",9),s(14),r()()(),a(15,"tr",4)(16,"td",10)(17,"mat-slide-toggle",11,1),w("ngModelChange",function(c){return u(o),x(i.connectionConfig.useSharedConfig,c)||(i.connectionConfig.useSharedConfig=c),g(c)}),b("change",function(c){return u(o),g(i.useSharedConfigToggleClick(c))}),s(19," Login to server "),r(),a(20,"button",12),b("click",function(){return u(o),g(i.openUserCredentialModal(null))}),s(21," Set Credential "),r(),_(22,"br"),a(23,"mat-checkbox",13),w("ngModelChange",function(c){return u(o),x(i.connectionConfig.signalKSubscribeAll,c)||(i.connectionConfig.signalKSubscribeAll=c),g(c)}),s(24,"Subscribe to remote sources messages such as AIS and DSC targets. "),a(25,"i"),s(26,"Warning: this maybe generate heavy traffic."),r()()()(),a(27,"tr",4)(28,"td",10)(29,"mat-checkbox",14),w("ngModelChange",function(c){return u(o),x(i.connectionConfig.proxyEnabled,c)||(i.connectionConfig.proxyEnabled=c),g(c)}),s(30,"Signal K server is behind a Proxy"),r()()()()(),a(31,"div",15)(32,"div",16),_(33,"canvas",17,2),r(),a(35,"div",18)(36,"pre"),s(37),_(38,"br"),s(39),r()()()}if(t&2){let o=R(1);l(9),S("ngModel",i.connectionConfig.signalKUrl),h("ngModelOptions",oe(18,Zt)),l(4),h("disabled",!o.form.valid||i.isConnecting),l(),ae(" ",i.isConnecting?"Validating...":"Connect"," "),l(3),S("ngModel",i.connectionConfig.useSharedConfig),h("ngModelOptions",oe(19,xa))("disabled",!i.connectionConfig.signalKUrl),l(3),h("disabled",!i.connectionConfig.useSharedConfig),l(3),S("ngModel",i.connectionConfig.signalKSubscribeAll),h("ngModelOptions",oe(20,Zt)),l(6),S("ngModel",i.connectionConfig.proxyEnabled),h("ngModelOptions",oe(21,Zt)),l(8),Ut("KIP: ",i.app.appVersion(),`