@signalk/freeboard-sk 3.1.1 → 3.2.0-beta.1

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.
Files changed (45) hide show
  1. package/package.json +14 -13
  2. package/plugin/alarms/alarms.js +68 -9
  3. package/plugin/lib/fetch.js +5 -5
  4. package/plugin/vitest.config.mjs +11 -0
  5. package/public/assets/features-corpus.json +1 -1
  6. package/public/assets/help/index.html +27 -4
  7. package/public/{chunk-RU2QXGZX.js → chunk-24TYZLHO.js} +1 -1
  8. package/public/{chunk-WXOWBQXR.js → chunk-2M5JDEPT.js} +1 -1
  9. package/public/chunk-3FOJW6X2.js +1 -0
  10. package/public/{chunk-PSRS6NXJ.js → chunk-4WQCRQTL.js} +1 -1
  11. package/public/{chunk-D7ZEGEOC.js → chunk-5HE5CF34.js} +65 -65
  12. package/public/{chunk-7Z4ZZM32.js → chunk-ABEPBSQB.js} +1 -1
  13. package/public/chunk-B5SN3ZBN.js +80 -0
  14. package/public/chunk-BL2HZIKU.js +1 -0
  15. package/public/chunk-CJYO3MRU.js +1 -0
  16. package/public/{chunk-SOVFTS2B.js → chunk-FC62PK2U.js} +1 -1
  17. package/public/{chunk-7UXFP343.js → chunk-FMYAA5JW.js} +1 -1
  18. package/public/chunk-G4WOTWTM.js +1 -0
  19. package/public/chunk-K2CIRFN7.js +1709 -0
  20. package/public/{chunk-TVVJJZA5.js → chunk-K7PZKJJ7.js} +1 -1
  21. package/public/{chunk-Y5XX3LUA.js → chunk-KNJHWYQ3.js} +1 -1
  22. package/public/{chunk-DNH7JESK.js → chunk-LCD5GM7L.js} +1 -1
  23. package/public/{chunk-H7UNBNCX.js → chunk-MFLH4RMF.js} +1 -1
  24. package/public/{chunk-TGPAYIRR.js → chunk-OGLYW4PJ.js} +1 -1
  25. package/public/chunk-RARRAKK5.js +1 -0
  26. package/public/{chunk-PGHE7FOF.js → chunk-T5UYZVNA.js} +1 -1
  27. package/public/{chunk-NDDO5DKA.js → chunk-TTKT5FKY.js} +1 -1
  28. package/public/{chunk-VSWAOYSI.js → chunk-XTQIZ74A.js} +1 -1
  29. package/public/{chunk-EM5FQG4A.js → chunk-Y35QBGKJ.js} +1 -1
  30. package/public/{chunk-VXGBILC6.js → chunk-YYA2RIPK.js} +1 -1
  31. package/public/index.html +1 -1
  32. package/public/{main-QZHUBX6D.js → main-IJVM3TNP.js} +10 -10
  33. package/public/polyfills-LVNOU2XZ.js +2 -0
  34. package/public/worker-CENPLZN6.js +3 -0
  35. package/public/{worker-L3MMILBY.js → worker-RRU2OVZW.js} +1 -1
  36. package/public/{worker-DXJYWOSS.js → worker-WYGJSPFM.js} +3 -3
  37. package/public/chunk-C6Q5GPY7.js +0 -1
  38. package/public/chunk-GECNK37G.js +0 -80
  39. package/public/chunk-JH5KSRZ6.js +0 -1709
  40. package/public/chunk-O6UXXKK5.js +0 -1
  41. package/public/chunk-SWYHX6EA.js +0 -1
  42. package/public/chunk-VAP4SPL7.js +0 -1
  43. package/public/chunk-VYN2OBDD.js +0 -1
  44. package/public/polyfills-RV3JTMEC.js +0 -2
  45. package/public/worker-RQRJAJAB.js +0 -3
@@ -1,4 +1,4 @@
1
- import{a as It,b as Nt,c as Bt,d as Vt}from"./chunk-Y5XX3LUA.js";import{a as Dt,b as Ft,c as Tt,d as Ot,e as Et,g as Pt}from"./chunk-NDDO5DKA.js";import{a as vt}from"./chunk-VSWAOYSI.js";import{c as pt}from"./chunk-7UXFP343.js";import{e as xt,f as bt,i as kt,j as Rt,n as St,o as Mt}from"./chunk-7Z4ZZM32.js";import{$ as ue,$a as ke,$d as gt,Bc as rt,Cb as Ye,Cc as at,Da as W,Dd as dt,Ea as y,Eb as Xe,Fa as C,Ga as De,Gc as st,I as Q,Ia as xe,Ja as be,Jb as ae,Jd as ut,Ka as P,La as s,M as de,Ma as l,Mb as Ge,N as ve,Na as ee,P as d,Q as g,R as w,Ra as K,Rd as mt,Sa as Y,Ta as S,U as qe,Ua as T,V as Qe,Wa as k,Wb as Ze,Wd as ft,X as We,Xb as te,Ya as u,Yb as A,Yd as ht,Z as j,Za as fe,Zd as _t,_ as Ke,_a as $,aa as E,bb as L,bc as Je,c as Z,ca as B,cb as U,d as ze,ee as wt,f as Le,g as Ue,ga as ie,hb as re,he as yt,i as Ce,ib as q,j as je,ja as c,ka as oe,la as H,lb as f,lc as et,ld as lt,m as ce,mb as R,nb as X,nd as ct,pe as Ct,qa as J,ra as V,sa as me,ta as p,tc as tt,u as $e,uc as he,va as b,vc as nt,wa as z,wb as I,wc as it,xc as ot}from"./chunk-JH5KSRZ6.js";import{f as He}from"./chunk-6H3I7D5M.js";var rn=[[["caption"]],[["colgroup"],["col"]],"*"],an=["caption","colgroup, col","*"];function sn(n,o){n&1&&$(0,2)}function ln(n,o){n&1&&(s(0,"thead",0),S(1,1),l(),s(2,"tbody",0),S(3,2)(4,3),l(),s(5,"tfoot",0),S(6,4),l())}function cn(n,o){n&1&&S(0,1)(1,2)(2,3)(3,4)}var N=new ve("CDK_TABLE");var ge=(()=>{class n{template=d(H);constructor(){}static \u0275fac=function(t){return new(t||n)};static \u0275dir=p({type:n,selectors:[["","cdkCellDef",""]]})}return n})(),we=(()=>{class n{template=d(H);constructor(){}static \u0275fac=function(t){return new(t||n)};static \u0275dir=p({type:n,selectors:[["","cdkHeaderCellDef",""]]})}return n})(),Lt=(()=>{class n{template=d(H);constructor(){}static \u0275fac=function(t){return new(t||n)};static \u0275dir=p({type:n,selectors:[["","cdkFooterCellDef",""]]})}return n})(),ne=(()=>{class n{_table=d(N,{optional:!0});_hasStickyChanged=!1;get name(){return this._name}set name(e){this._setNameInput(e)}_name;get sticky(){return this._sticky}set sticky(e){e!==this._sticky&&(this._sticky=e,this._hasStickyChanged=!0)}_sticky=!1;get stickyEnd(){return this._stickyEnd}set stickyEnd(e){e!==this._stickyEnd&&(this._stickyEnd=e,this._hasStickyChanged=!0)}_stickyEnd=!1;cell;headerCell;footerCell;cssClassFriendlyName;_columnCssClassName;constructor(){}hasStickyChanged(){let e=this._hasStickyChanged;return this.resetStickyChanged(),e}resetStickyChanged(){this._hasStickyChanged=!1}_updateColumnCssClassName(){this._columnCssClassName=[`cdk-column-${this.cssClassFriendlyName}`]}_setNameInput(e){e&&(this._name=e,this.cssClassFriendlyName=e.replace(/[^a-z0-9_-]/gi,"-"),this._updateColumnCssClassName())}static \u0275fac=function(t){return new(t||n)};static \u0275dir=p({type:n,selectors:[["","cdkColumnDef",""]],contentQueries:function(t,i,r){if(t&1&&ke(r,ge,5)(r,we,5)(r,Lt,5),t&2){let a;L(a=U())&&(i.cell=a.first),L(a=U())&&(i.headerCell=a.first),L(a=U())&&(i.footerCell=a.first)}},inputs:{name:[0,"cdkColumnDef","name"],sticky:[2,"sticky","sticky",A],stickyEnd:[2,"stickyEnd","stickyEnd",A]}})}return n})(),pe=class{constructor(o,e){e.nativeElement.classList.add(...o._columnCssClassName)}},Ut=(()=>{class n extends pe{constructor(){super(d(ne),d(B))}static \u0275fac=function(t){return new(t||n)};static \u0275dir=p({type:n,selectors:[["cdk-header-cell"],["th","cdk-header-cell",""]],hostAttrs:["role","columnheader",1,"cdk-header-cell"],features:[b]})}return n})();var jt=(()=>{class n extends pe{constructor(){let e=d(ne),t=d(B);super(e,t);let i=e._table?._getCellRole();i&&t.nativeElement.setAttribute("role",i)}static \u0275fac=function(t){return new(t||n)};static \u0275dir=p({type:n,selectors:[["cdk-cell"],["td","cdk-cell",""]],hostAttrs:[1,"cdk-cell"],features:[b]})}return n})();var Se=(()=>{class n{template=d(H);_differs=d(te);columns;_columnsDiffer;constructor(){}ngOnChanges(e){if(!this._columnsDiffer){let t=e.columns&&e.columns.currentValue||[];this._columnsDiffer=this._differs.find(t).create(),this._columnsDiffer.diff(t)}}getColumnsDiff(){return this._columnsDiffer.diff(this.columns)}extractCellTemplate(e){return this instanceof le?e.headerCell.template:this instanceof Me?e.footerCell.template:e.cell.template}static \u0275fac=function(t){return new(t||n)};static \u0275dir=p({type:n,features:[ue]})}return n})(),le=(()=>{class n extends Se{_table=d(N,{optional:!0});_hasStickyChanged=!1;get sticky(){return this._sticky}set sticky(e){e!==this._sticky&&(this._sticky=e,this._hasStickyChanged=!0)}_sticky=!1;constructor(){super(d(H),d(te))}ngOnChanges(e){super.ngOnChanges(e)}hasStickyChanged(){let e=this._hasStickyChanged;return this.resetStickyChanged(),e}resetStickyChanged(){this._hasStickyChanged=!1}static \u0275fac=function(t){return new(t||n)};static \u0275dir=p({type:n,selectors:[["","cdkHeaderRowDef",""]],inputs:{columns:[0,"cdkHeaderRowDef","columns"],sticky:[2,"cdkHeaderRowDefSticky","sticky",A]},features:[b,ue]})}return n})(),Me=(()=>{class n extends Se{_table=d(N,{optional:!0});_hasStickyChanged=!1;get sticky(){return this._sticky}set sticky(e){e!==this._sticky&&(this._sticky=e,this._hasStickyChanged=!0)}_sticky=!1;constructor(){super(d(H),d(te))}ngOnChanges(e){super.ngOnChanges(e)}hasStickyChanged(){let e=this._hasStickyChanged;return this.resetStickyChanged(),e}resetStickyChanged(){this._hasStickyChanged=!1}static \u0275fac=function(t){return new(t||n)};static \u0275dir=p({type:n,selectors:[["","cdkFooterRowDef",""]],inputs:{columns:[0,"cdkFooterRowDef","columns"],sticky:[2,"cdkFooterRowDefSticky","sticky",A]},features:[b,ue]})}return n})(),ye=(()=>{class n extends Se{_table=d(N,{optional:!0});when;constructor(){super(d(H),d(te))}static \u0275fac=function(t){return new(t||n)};static \u0275dir=p({type:n,selectors:[["","cdkRowDef",""]],inputs:{columns:[0,"cdkRowDefColumns","columns"],when:[0,"cdkRowDefWhen","when"]},features:[b]})}return n})(),G=(()=>{class n{_viewContainer=d(J);cells;context;static mostRecentCellOutlet=null;constructor(){n.mostRecentCellOutlet=this}ngOnDestroy(){n.mostRecentCellOutlet===this&&(n.mostRecentCellOutlet=null)}static \u0275fac=function(t){return new(t||n)};static \u0275dir=p({type:n,selectors:[["","cdkCellOutlet",""]]})}return n})(),Fe=(()=>{class n{static \u0275fac=function(t){return new(t||n)};static \u0275cmp=V({type:n,selectors:[["cdk-header-row"],["tr","cdk-header-row",""]],hostAttrs:["role","row",1,"cdk-header-row"],decls:1,vars:0,consts:[["cdkCellOutlet",""]],template:function(t,i){t&1&&S(0,0)},dependencies:[G],encapsulation:2})}return n})();var Te=(()=>{class n{static \u0275fac=function(t){return new(t||n)};static \u0275cmp=V({type:n,selectors:[["cdk-row"],["tr","cdk-row",""]],hostAttrs:["role","row",1,"cdk-row"],decls:1,vars:0,consts:[["cdkCellOutlet",""]],template:function(t,i){t&1&&S(0,0)},dependencies:[G],encapsulation:2})}return n})(),$t=(()=>{class n{templateRef=d(H);_contentClassNames=["cdk-no-data-row","cdk-row"];_cellClassNames=["cdk-cell","cdk-no-data-cell"];_cellSelector="td, cdk-cell, [cdk-cell], .cdk-cell";constructor(){}static \u0275fac=function(t){return new(t||n)};static \u0275dir=p({type:n,selectors:[["ng-template","cdkNoDataRow",""]]})}return n})(),At=["top","bottom","left","right"],Re=class{_isNativeHtmlTable;_stickCellCss;_isBrowser;_needsPositionStickyOnElement;direction;_positionListener;_tableInjector;_elemSizeCache=new WeakMap;_resizeObserver=globalThis?.ResizeObserver?new globalThis.ResizeObserver(o=>this._updateCachedSizes(o)):null;_updatedStickyColumnsParamsToReplay=[];_stickyColumnsReplayTimeout=null;_cachedCellWidths=[];_borderCellCss;_destroyed=!1;constructor(o,e,t=!0,i=!0,r,a,m){this._isNativeHtmlTable=o,this._stickCellCss=e,this._isBrowser=t,this._needsPositionStickyOnElement=i,this.direction=r,this._positionListener=a,this._tableInjector=m,this._borderCellCss={top:`${e}-border-elem-top`,bottom:`${e}-border-elem-bottom`,left:`${e}-border-elem-left`,right:`${e}-border-elem-right`}}clearStickyPositioning(o,e){(e.includes("left")||e.includes("right"))&&this._removeFromStickyColumnReplayQueue(o);let t=[];for(let i of o)i.nodeType===i.ELEMENT_NODE&&t.push(i,...Array.from(i.children));oe({write:()=>{for(let i of t)this._removeStickyStyle(i,e)}},{injector:this._tableInjector})}updateStickyColumns(o,e,t,i=!0,r=!0){if(!o.length||!this._isBrowser||!(e.some(O=>O)||t.some(O=>O))){this._positionListener?.stickyColumnsUpdated({sizes:[]}),this._positionListener?.stickyEndColumnsUpdated({sizes:[]});return}let a=o[0],m=a.children.length,h=this.direction==="rtl",_=h?"right":"left",v=h?"left":"right",F=e.lastIndexOf(!0),D=t.indexOf(!0),x,Be,Ve;r&&this._updateStickyColumnReplayQueue({rows:[...o],stickyStartStates:[...e],stickyEndStates:[...t]}),oe({earlyRead:()=>{x=this._getCellWidths(a,i),Be=this._getStickyStartColumnPositions(x,e),Ve=this._getStickyEndColumnPositions(x,t)},write:()=>{for(let O of o)for(let M=0;M<m;M++){let Ae=O.children[M];e[M]&&this._addStickyStyle(Ae,_,Be[M],M===F),t[M]&&this._addStickyStyle(Ae,v,Ve[M],M===D)}this._positionListener&&x.some(O=>!!O)&&(this._positionListener.stickyColumnsUpdated({sizes:F===-1?[]:x.slice(0,F+1).map((O,M)=>e[M]?O:null)}),this._positionListener.stickyEndColumnsUpdated({sizes:D===-1?[]:x.slice(D).map((O,M)=>t[M+D]?O:null).reverse()}))}},{injector:this._tableInjector})}stickRows(o,e,t){if(!this._isBrowser)return;let i=t==="bottom"?o.slice().reverse():o,r=t==="bottom"?e.slice().reverse():e,a=[],m=[],h=[];oe({earlyRead:()=>{for(let _=0,v=0;_<i.length;_++){if(!r[_])continue;a[_]=v;let F=i[_];h[_]=this._isNativeHtmlTable?Array.from(F.children):[F];let D=this._retrieveElementSize(F).height;v+=D,m[_]=D}},write:()=>{let _=r.lastIndexOf(!0);for(let v=0;v<i.length;v++){if(!r[v])continue;let F=a[v],D=v===_;for(let x of h[v])this._addStickyStyle(x,t,F,D)}t==="top"?this._positionListener?.stickyHeaderRowsUpdated({sizes:m,offsets:a,elements:h}):this._positionListener?.stickyFooterRowsUpdated({sizes:m,offsets:a,elements:h})}},{injector:this._tableInjector})}updateStickyFooterContainer(o,e){this._isNativeHtmlTable&&oe({write:()=>{let t=o.querySelector("tfoot");t&&(e.some(i=>!i)?this._removeStickyStyle(t,["bottom"]):this._addStickyStyle(t,"bottom",0,!1))}},{injector:this._tableInjector})}destroy(){this._stickyColumnsReplayTimeout&&clearTimeout(this._stickyColumnsReplayTimeout),this._resizeObserver?.disconnect(),this._destroyed=!0}_removeStickyStyle(o,e){if(!o.classList.contains(this._stickCellCss))return;for(let i of e)o.style[i]="",o.classList.remove(this._borderCellCss[i]);At.some(i=>e.indexOf(i)===-1&&o.style[i])?o.style.zIndex=this._getCalculatedZIndex(o):(o.style.zIndex="",this._needsPositionStickyOnElement&&(o.style.position=""),o.classList.remove(this._stickCellCss))}_addStickyStyle(o,e,t,i){o.classList.add(this._stickCellCss),i&&o.classList.add(this._borderCellCss[e]),o.style[e]=`${t}px`,o.style.zIndex=this._getCalculatedZIndex(o),this._needsPositionStickyOnElement&&(o.style.cssText+="position: -webkit-sticky; position: sticky; ")}_getCalculatedZIndex(o){let e={top:100,bottom:10,left:1,right:1},t=0;for(let i of At)o.style[i]&&(t+=e[i]);return t?`${t}`:""}_getCellWidths(o,e=!0){if(!e&&this._cachedCellWidths.length)return this._cachedCellWidths;let t=[],i=o.children;for(let r=0;r<i.length;r++){let a=i[r];t.push(this._retrieveElementSize(a).width)}return this._cachedCellWidths=t,t}_getStickyStartColumnPositions(o,e){let t=[],i=0;for(let r=0;r<o.length;r++)e[r]&&(t[r]=i,i+=o[r]);return t}_getStickyEndColumnPositions(o,e){let t=[],i=0;for(let r=o.length;r>0;r--)e[r]&&(t[r]=i,i+=o[r]);return t}_retrieveElementSize(o){let e=this._elemSizeCache.get(o);if(e)return e;let t=o.getBoundingClientRect(),i={width:t.width,height:t.height};return this._resizeObserver&&(this._elemSizeCache.set(o,i),this._resizeObserver.observe(o,{box:"border-box"})),i}_updateStickyColumnReplayQueue(o){this._removeFromStickyColumnReplayQueue(o.rows),this._stickyColumnsReplayTimeout||this._updatedStickyColumnsParamsToReplay.push(o)}_removeFromStickyColumnReplayQueue(o){let e=new Set(o);for(let t of this._updatedStickyColumnsParamsToReplay)t.rows=t.rows.filter(i=>!e.has(i));this._updatedStickyColumnsParamsToReplay=this._updatedStickyColumnsParamsToReplay.filter(t=>!!t.rows.length)}_updateCachedSizes(o){let e=!1;for(let t of o){let i=t.borderBoxSize?.length?{width:t.borderBoxSize[0].inlineSize,height:t.borderBoxSize[0].blockSize}:{width:t.contentRect.width,height:t.contentRect.height};i.width!==this._elemSizeCache.get(t.target)?.width&&dn(t.target)&&(e=!0),this._elemSizeCache.set(t.target,i)}e&&this._updatedStickyColumnsParamsToReplay.length&&(this._stickyColumnsReplayTimeout&&clearTimeout(this._stickyColumnsReplayTimeout),this._stickyColumnsReplayTimeout=setTimeout(()=>{if(!this._destroyed){for(let t of this._updatedStickyColumnsParamsToReplay)this.updateStickyColumns(t.rows,t.stickyStartStates,t.stickyEndStates,!0,!1);this._updatedStickyColumnsParamsToReplay=[],this._stickyColumnsReplayTimeout=null}},0))}};function dn(n){return["cdk-cell","cdk-header-cell","cdk-footer-cell"].some(o=>n.classList.contains(o))}var se=new ve("STICKY_POSITIONING_LISTENER");var Oe=(()=>{class n{viewContainer=d(J);elementRef=d(B);constructor(){let e=d(N);e._rowOutlet=this,e._outletAssigned()}static \u0275fac=function(t){return new(t||n)};static \u0275dir=p({type:n,selectors:[["","rowOutlet",""]]})}return n})(),Ee=(()=>{class n{viewContainer=d(J);elementRef=d(B);constructor(){let e=d(N);e._headerRowOutlet=this,e._outletAssigned()}static \u0275fac=function(t){return new(t||n)};static \u0275dir=p({type:n,selectors:[["","headerRowOutlet",""]]})}return n})(),Pe=(()=>{class n{viewContainer=d(J);elementRef=d(B);constructor(){let e=d(N);e._footerRowOutlet=this,e._outletAssigned()}static \u0275fac=function(t){return new(t||n)};static \u0275dir=p({type:n,selectors:[["","footerRowOutlet",""]]})}return n})(),Ie=(()=>{class n{viewContainer=d(J);elementRef=d(B);constructor(){let e=d(N);e._noDataRowOutlet=this,e._outletAssigned()}static \u0275fac=function(t){return new(t||n)};static \u0275dir=p({type:n,selectors:[["","noDataRowOutlet",""]]})}return n})(),Ne=(()=>{class n{_differs=d(te);_changeDetectorRef=d(Ze);_elementRef=d(B);_dir=d(tt,{optional:!0});_platform=d(et);_viewRepeater;_viewportRuler=d(rt);_injector=d(qe);_virtualScrollViewport=d(at,{optional:!0,host:!0});_positionListener=d(se,{optional:!0})||d(se,{optional:!0,skipSelf:!0});_document=d(Qe);_data;_renderedRange;_onDestroy=new Z;_renderRows;_renderChangeSubscription=null;_columnDefsByName=new Map;_rowDefs;_headerRowDefs;_footerRowDefs;_dataDiffer;_defaultRowDef=null;_customColumnDefs=new Set;_customRowDefs=new Set;_customHeaderRowDefs=new Set;_customFooterRowDefs=new Set;_customNoDataRow=null;_headerRowDefChanged=!0;_footerRowDefChanged=!0;_stickyColumnStylesNeedReset=!0;_forceRecalculateCellWidths=!0;_cachedRenderRowsMap=new Map;_isNativeHtmlTable;_stickyStyler;stickyCssClass="cdk-table-sticky";needsPositionStickyOnElement=!0;_isServer;_isShowingNoDataRow=!1;_hasAllOutlets=!1;_hasInitialized=!1;_headerRowStickyUpdates=new Z;_footerRowStickyUpdates=new Z;_disableVirtualScrolling=!1;_getCellRole(){if(this._cellRoleInternal===void 0){let e=this._elementRef.nativeElement.getAttribute("role");return e==="grid"||e==="treegrid"?"gridcell":"cell"}return this._cellRoleInternal}_cellRoleInternal=void 0;get trackBy(){return this._trackByFn}set trackBy(e){this._trackByFn=e}_trackByFn;get dataSource(){return this._dataSource}set dataSource(e){this._dataSource!==e&&(this._switchDataSource(e),this._changeDetectorRef.markForCheck())}_dataSource;_dataSourceChanges=new Z;_dataStream=new Z;get multiTemplateDataRows(){return this._multiTemplateDataRows}set multiTemplateDataRows(e){this._multiTemplateDataRows=e,this._rowOutlet&&this._rowOutlet.viewContainer.length&&(this._forceRenderDataRows(),this.updateStickyColumnStyles())}_multiTemplateDataRows=!1;get fixedLayout(){return this._virtualScrollEnabled()?!0:this._fixedLayout}set fixedLayout(e){this._fixedLayout=e,this._forceRecalculateCellWidths=!0,this._stickyColumnStylesNeedReset=!0}_fixedLayout=!1;recycleRows=!1;contentChanged=new We;viewChange=new ze({start:0,end:Number.MAX_VALUE});_rowOutlet;_headerRowOutlet;_footerRowOutlet;_noDataRowOutlet;_contentColumnDefs;_contentRowDefs;_contentHeaderRowDefs;_contentFooterRowDefs;_noDataRow;constructor(){d(new Ge("role"),{optional:!0})||this._elementRef.nativeElement.setAttribute("role","table"),this._isServer=!this._platform.isBrowser,this._isNativeHtmlTable=this._elementRef.nativeElement.nodeName==="TABLE",this._dataDiffer=this._differs.find([]).create((t,i)=>this.trackBy?this.trackBy(i.dataIndex,i.data):i)}ngOnInit(){this._setupStickyStyler(),this._viewportRuler.change().pipe(Q(this._onDestroy)).subscribe(()=>{this._forceRecalculateCellWidths=!0})}ngAfterContentInit(){this._viewRepeater=this.recycleRows||this._virtualScrollEnabled()?new it:new pt,this._virtualScrollEnabled()&&this._setupVirtualScrolling(this._virtualScrollViewport),this._hasInitialized=!0}ngAfterContentChecked(){this._canRender()&&this._render()}ngOnDestroy(){this._stickyStyler?.destroy(),[this._rowOutlet?.viewContainer,this._headerRowOutlet?.viewContainer,this._footerRowOutlet?.viewContainer,this._cachedRenderRowsMap,this._customColumnDefs,this._customRowDefs,this._customHeaderRowDefs,this._customFooterRowDefs,this._columnDefsByName].forEach(e=>{e?.clear()}),this._headerRowDefs=[],this._footerRowDefs=[],this._defaultRowDef=null,this._headerRowStickyUpdates.complete(),this._footerRowStickyUpdates.complete(),this._onDestroy.next(),this._onDestroy.complete(),he(this.dataSource)&&this.dataSource.disconnect(this)}renderRows(){this._renderRows=this._getAllRenderRows();let e=this._dataDiffer.diff(this._renderRows);if(!e){this._updateNoDataRow(),this.contentChanged.next();return}let t=this._rowOutlet.viewContainer;this._viewRepeater.applyChanges(e,t,(i,r,a)=>this._getEmbeddedViewArgs(i.item,a),i=>i.item.data,i=>{i.operation===nt.INSERTED&&i.context&&this._renderCellTemplateForItem(i.record.item.rowDef,i.context)}),this._updateRowIndexContext(),e.forEachIdentityChange(i=>{let r=t.get(i.currentIndex);r.context.$implicit=i.item.data}),this._updateNoDataRow(),this.contentChanged.next(),this.updateStickyColumnStyles()}addColumnDef(e){this._customColumnDefs.add(e)}removeColumnDef(e){this._customColumnDefs.delete(e)}addRowDef(e){this._customRowDefs.add(e)}removeRowDef(e){this._customRowDefs.delete(e)}addHeaderRowDef(e){this._customHeaderRowDefs.add(e),this._headerRowDefChanged=!0}removeHeaderRowDef(e){this._customHeaderRowDefs.delete(e),this._headerRowDefChanged=!0}addFooterRowDef(e){this._customFooterRowDefs.add(e),this._footerRowDefChanged=!0}removeFooterRowDef(e){this._customFooterRowDefs.delete(e),this._footerRowDefChanged=!0}setNoDataRow(e){this._customNoDataRow=e}updateStickyHeaderRowStyles(){let e=this._getRenderedRows(this._headerRowOutlet);if(this._isNativeHtmlTable){let i=Ht(this._headerRowOutlet,"thead");i&&(i.style.display=e.length?"":"none")}let t=this._headerRowDefs.map(i=>i.sticky);this._stickyStyler.clearStickyPositioning(e,["top"]),this._stickyStyler.stickRows(e,t,"top"),this._headerRowDefs.forEach(i=>i.resetStickyChanged())}updateStickyFooterRowStyles(){let e=this._getRenderedRows(this._footerRowOutlet);if(this._isNativeHtmlTable){let i=Ht(this._footerRowOutlet,"tfoot");i&&(i.style.display=e.length?"":"none")}let t=this._footerRowDefs.map(i=>i.sticky);this._stickyStyler.clearStickyPositioning(e,["bottom"]),this._stickyStyler.stickRows(e,t,"bottom"),this._stickyStyler.updateStickyFooterContainer(this._elementRef.nativeElement,t),this._footerRowDefs.forEach(i=>i.resetStickyChanged())}updateStickyColumnStyles(){let e=this._getRenderedRows(this._headerRowOutlet),t=this._getRenderedRows(this._rowOutlet),i=this._getRenderedRows(this._footerRowOutlet);(this._isNativeHtmlTable&&!this.fixedLayout||this._stickyColumnStylesNeedReset)&&(this._stickyStyler.clearStickyPositioning([...e,...t,...i],["left","right"]),this._stickyColumnStylesNeedReset=!1),e.forEach((r,a)=>{this._addStickyColumnStyles([r],this._headerRowDefs[a])}),this._rowDefs.forEach(r=>{let a=[];for(let m=0;m<t.length;m++)this._renderRows[m].rowDef===r&&a.push(t[m]);this._addStickyColumnStyles(a,r)}),i.forEach((r,a)=>{this._addStickyColumnStyles([r],this._footerRowDefs[a])}),Array.from(this._columnDefsByName.values()).forEach(r=>r.resetStickyChanged())}stickyColumnsUpdated(e){this._positionListener?.stickyColumnsUpdated(e)}stickyEndColumnsUpdated(e){this._positionListener?.stickyEndColumnsUpdated(e)}stickyHeaderRowsUpdated(e){this._headerRowStickyUpdates.next(e),this._positionListener?.stickyHeaderRowsUpdated(e)}stickyFooterRowsUpdated(e){this._footerRowStickyUpdates.next(e),this._positionListener?.stickyFooterRowsUpdated(e)}_outletAssigned(){!this._hasAllOutlets&&this._rowOutlet&&this._headerRowOutlet&&this._footerRowOutlet&&this._noDataRowOutlet&&(this._hasAllOutlets=!0,this._canRender()&&this._render())}_canRender(){return this._hasAllOutlets&&this._hasInitialized}_render(){this._cacheRowDefs(),this._cacheColumnDefs(),!this._headerRowDefs.length&&!this._footerRowDefs.length&&this._rowDefs.length;let t=this._renderUpdatedColumns()||this._headerRowDefChanged||this._footerRowDefChanged;this._stickyColumnStylesNeedReset=this._stickyColumnStylesNeedReset||t,this._forceRecalculateCellWidths=t,this._headerRowDefChanged&&(this._forceRenderHeaderRows(),this._headerRowDefChanged=!1),this._footerRowDefChanged&&(this._forceRenderFooterRows(),this._footerRowDefChanged=!1),this.dataSource&&this._rowDefs.length>0&&!this._renderChangeSubscription?this._observeRenderChanges():this._stickyColumnStylesNeedReset&&this.updateStickyColumnStyles(),this._checkStickyStates()}_getAllRenderRows(){if(!Array.isArray(this._data)||!this._renderedRange)return[];let e=[],t=Math.min(this._data.length,this._renderedRange.end),i=this._cachedRenderRowsMap;this._cachedRenderRowsMap=new Map;for(let r=this._renderedRange.start;r<t;r++){let a=this._data[r],m=this._getRenderRowsForData(a,r,i.get(a));this._cachedRenderRowsMap.has(a)||this._cachedRenderRowsMap.set(a,new WeakMap);for(let h=0;h<m.length;h++){let _=m[h],v=this._cachedRenderRowsMap.get(_.data);v.has(_.rowDef)?v.get(_.rowDef).push(_):v.set(_.rowDef,[_]),e.push(_)}}return e}_getRenderRowsForData(e,t,i){return this._getRowDefs(e,t).map(a=>{let m=i&&i.has(a)?i.get(a):[];if(m.length){let h=m.shift();return h.dataIndex=t,h}else return{data:e,rowDef:a,dataIndex:t}})}_cacheColumnDefs(){this._columnDefsByName.clear(),_e(this._getOwnDefs(this._contentColumnDefs),this._customColumnDefs).forEach(t=>{this._columnDefsByName.has(t.name),this._columnDefsByName.set(t.name,t)})}_cacheRowDefs(){this._headerRowDefs=_e(this._getOwnDefs(this._contentHeaderRowDefs),this._customHeaderRowDefs),this._footerRowDefs=_e(this._getOwnDefs(this._contentFooterRowDefs),this._customFooterRowDefs),this._rowDefs=_e(this._getOwnDefs(this._contentRowDefs),this._customRowDefs);let e=this._rowDefs.filter(t=>!t.when);this._defaultRowDef=e[0]}_renderUpdatedColumns(){let e=(a,m)=>{let h=!!m.getColumnsDiff();return a||h},t=this._rowDefs.reduce(e,!1);t&&this._forceRenderDataRows();let i=this._headerRowDefs.reduce(e,!1);i&&this._forceRenderHeaderRows();let r=this._footerRowDefs.reduce(e,!1);return r&&this._forceRenderFooterRows(),t||i||r}_switchDataSource(e){this._data=[],he(this.dataSource)&&this.dataSource.disconnect(this),this._renderChangeSubscription&&(this._renderChangeSubscription.unsubscribe(),this._renderChangeSubscription=null),e||(this._dataDiffer&&this._dataDiffer.diff([]),this._rowOutlet&&this._rowOutlet.viewContainer.clear()),this._dataSource=e}_observeRenderChanges(){if(!this.dataSource)return;let e;he(this.dataSource)?e=this.dataSource.connect(this):je(this.dataSource)?e=this.dataSource:Array.isArray(this.dataSource)&&(e=Ce(this.dataSource)),this._renderChangeSubscription=ce([e,this.viewChange]).pipe(Q(this._onDestroy)).subscribe(([t,i])=>{this._data=t||[],this._renderedRange=i,this._dataStream.next(t),this.renderRows()})}_forceRenderHeaderRows(){this._headerRowOutlet.viewContainer.length>0&&this._headerRowOutlet.viewContainer.clear(),this._headerRowDefs.forEach((e,t)=>this._renderRow(this._headerRowOutlet,e,t)),this.updateStickyHeaderRowStyles()}_forceRenderFooterRows(){this._footerRowOutlet.viewContainer.length>0&&this._footerRowOutlet.viewContainer.clear(),this._footerRowDefs.forEach((e,t)=>this._renderRow(this._footerRowOutlet,e,t)),this.updateStickyFooterRowStyles()}_addStickyColumnStyles(e,t){let i=Array.from(t?.columns||[]).map(m=>{let h=this._columnDefsByName.get(m);return h}),r=i.map(m=>m.sticky),a=i.map(m=>m.stickyEnd);this._stickyStyler.updateStickyColumns(e,r,a,!this.fixedLayout||this._forceRecalculateCellWidths)}_getRenderedRows(e){let t=[];for(let i=0;i<e.viewContainer.length;i++){let r=e.viewContainer.get(i);t.push(r.rootNodes[0])}return t}_getRowDefs(e,t){if(this._rowDefs.length===1)return[this._rowDefs[0]];let i=[];if(this.multiTemplateDataRows)i=this._rowDefs.filter(r=>!r.when||r.when(t,e));else{let r=this._rowDefs.find(a=>a.when&&a.when(t,e))||this._defaultRowDef;r&&i.push(r)}return i.length,i}_getEmbeddedViewArgs(e,t){let i=e.rowDef,r={$implicit:e.data};return{templateRef:i.template,context:r,index:t}}_renderRow(e,t,i,r={}){let a=e.viewContainer.createEmbeddedView(t.template,r,i);return this._renderCellTemplateForItem(t,r),a}_renderCellTemplateForItem(e,t){for(let i of this._getCellTemplates(e))G.mostRecentCellOutlet&&G.mostRecentCellOutlet._viewContainer.createEmbeddedView(i,t);this._changeDetectorRef.markForCheck()}_updateRowIndexContext(){let e=this._rowOutlet.viewContainer;for(let t=0,i=e.length;t<i;t++){let a=e.get(t).context;a.count=i,a.first=t===0,a.last=t===i-1,a.even=t%2===0,a.odd=!a.even,this.multiTemplateDataRows?(a.dataIndex=this._renderRows[t].dataIndex,a.renderIndex=t):a.index=this._renderRows[t].dataIndex}}_getCellTemplates(e){return!e||!e.columns?[]:Array.from(e.columns,t=>{let i=this._columnDefsByName.get(t);return e.extractCellTemplate(i)})}_forceRenderDataRows(){this._dataDiffer.diff([]),this._rowOutlet.viewContainer.clear(),this.renderRows()}_checkStickyStates(){let e=(t,i)=>t||i.hasStickyChanged();this._headerRowDefs.reduce(e,!1)&&this.updateStickyHeaderRowStyles(),this._footerRowDefs.reduce(e,!1)&&this.updateStickyFooterRowStyles(),Array.from(this._columnDefsByName.values()).reduce(e,!1)&&(this._stickyColumnStylesNeedReset=!0,this.updateStickyColumnStyles())}_setupStickyStyler(){let e=this._dir?this._dir.value:"ltr",t=this._injector;this._stickyStyler=new Re(this._isNativeHtmlTable,this.stickyCssClass,this._platform.isBrowser,this.needsPositionStickyOnElement,e,this,t),(this._dir?this._dir.change:Ce()).pipe(Q(this._onDestroy)).subscribe(i=>{this._stickyStyler.direction=i,this.updateStickyColumnStyles()})}_setupVirtualScrolling(e){let t=typeof requestAnimationFrame<"u"?Ue:Le;this.viewChange.next({start:0,end:0}),e.renderedRangeStream.pipe($e(0,t),Q(this._onDestroy)).subscribe(this.viewChange),e.attach({dataStream:this._dataStream,measureRangeSize:(i,r)=>this._measureRangeSize(i,r)}),ce([e.renderedContentOffset,this._headerRowStickyUpdates]).pipe(Q(this._onDestroy)).subscribe(([i,r])=>{if(!(!r.sizes||!r.offsets||!r.elements))for(let a=0;a<r.elements.length;a++){let m=r.elements[a];if(m){let h=r.offsets[a],_=i!==0?Math.max(i-h,h):-h;for(let v of m)v.style.top=`${-_}px`}}}),ce([e.renderedContentOffset,this._footerRowStickyUpdates]).pipe(Q(this._onDestroy)).subscribe(([i,r])=>{if(!(!r.sizes||!r.offsets||!r.elements))for(let a=0;a<r.elements.length;a++){let m=r.elements[a];if(m)for(let h of m)h.style.bottom=`${i+r.offsets[a]}px`}})}_getOwnDefs(e){return e.filter(t=>!t._table||t._table===this)}_updateNoDataRow(){let e=this._customNoDataRow||this._noDataRow;if(!e)return;let t=this._rowOutlet.viewContainer.length===0;if(t===this._isShowingNoDataRow)return;let i=this._noDataRowOutlet.viewContainer;if(t){let r=i.createEmbeddedView(e.templateRef),a=r.rootNodes[0];if(r.rootNodes.length===1&&a?.nodeType===this._document.ELEMENT_NODE){a.setAttribute("role","row"),a.classList.add(...e._contentClassNames);let m=a.querySelectorAll(e._cellSelector);for(let h=0;h<m.length;h++)m[h].classList.add(...e._cellClassNames)}}else i.clear();this._isShowingNoDataRow=t,this._changeDetectorRef.markForCheck()}_measureRangeSize(e,t){if(e.start>=e.end||t!=="vertical")return 0;let i=this.viewChange.value,r=this._rowOutlet.viewContainer;e.start<i.start||e.end>i.end;let a=e.start-i.start,m=e.end-e.start,h,_;for(let D=0;D<m;D++){let x=r.get(D+a);if(x&&x.rootNodes.length){h=_=x.rootNodes[0];break}}for(let D=m-1;D>-1;D--){let x=r.get(D+a);if(x&&x.rootNodes.length){_=x.rootNodes[x.rootNodes.length-1];break}}let v=h?.getBoundingClientRect?.(),F=_?.getBoundingClientRect?.();return v&&F?F.bottom-v.top:0}_virtualScrollEnabled(){return!this._disableVirtualScrolling&&this._virtualScrollViewport!=null}static \u0275fac=function(t){return new(t||n)};static \u0275cmp=V({type:n,selectors:[["cdk-table"],["table","cdk-table",""]],contentQueries:function(t,i,r){if(t&1&&ke(r,$t,5)(r,ne,5)(r,ye,5)(r,le,5)(r,Me,5),t&2){let a;L(a=U())&&(i._noDataRow=a.first),L(a=U())&&(i._contentColumnDefs=a),L(a=U())&&(i._contentRowDefs=a),L(a=U())&&(i._contentHeaderRowDefs=a),L(a=U())&&(i._contentFooterRowDefs=a)}},hostAttrs:[1,"cdk-table"],hostVars:2,hostBindings:function(t,i){t&2&&q("cdk-table-fixed-layout",i.fixedLayout)},inputs:{trackBy:"trackBy",dataSource:"dataSource",multiTemplateDataRows:[2,"multiTemplateDataRows","multiTemplateDataRows",A],fixedLayout:[2,"fixedLayout","fixedLayout",A],recycleRows:[2,"recycleRows","recycleRows",A]},outputs:{contentChanged:"contentChanged"},exportAs:["cdkTable"],features:[I([{provide:N,useExisting:n},{provide:se,useValue:null}])],ngContentSelectors:an,decls:5,vars:2,consts:[["role","rowgroup"],["headerRowOutlet",""],["rowOutlet",""],["noDataRowOutlet",""],["footerRowOutlet",""]],template:function(t,i){t&1&&(fe(rn),$(0),$(1,1),y(2,sn,1,0),y(3,ln,7,0)(4,cn,4,0)),t&2&&(c(2),C(i._isServer?2:-1),c(),C(i._isNativeHtmlTable?3:4))},dependencies:[Ee,Oe,Ie,Pe],styles:[`.cdk-table-fixed-layout {
1
+ import{a as It,b as Nt,c as Bt,d as Vt}from"./chunk-KNJHWYQ3.js";import{a as Dt,b as Ft,c as Tt,d as Ot,e as Et,g as Pt}from"./chunk-TTKT5FKY.js";import{a as vt}from"./chunk-XTQIZ74A.js";import{c as pt}from"./chunk-FMYAA5JW.js";import{e as xt,f as bt,i as kt,j as Rt,n as St,o as Mt}from"./chunk-ABEPBSQB.js";import{$ as Ke,$a as ke,$d as gt,Bc as rt,Cb as Ye,Cc as at,Da as W,Dd as dt,Ea as y,Eb as Xe,Fa as C,Ga as De,Gc as st,I as Q,Ia as xe,Ja as be,Jb as ae,Jd as ut,Ka as P,La as s,M as de,Ma as l,Mb as Ge,N as ve,Na as ee,P as d,R as g,Ra as K,Rd as mt,S as w,Sa as Y,Ta as S,Ua as T,V as qe,W as Qe,Wa as k,Wb as Ze,Wd as ft,Xb as te,Y as We,Ya as u,Yb as A,Yd as ht,Za as fe,Zd as _t,_ as j,_a as $,aa as ue,ba as E,bb as L,bc as Je,c as Z,cb as U,d as ze,da as B,ee as wt,f as Le,g as Ue,ga as ie,hb as re,he as yt,i as Ce,ib as q,j as je,ja as c,ka as oe,la as H,lb as f,lc as et,ld as lt,m as ce,mb as R,nb as X,nd as ct,pe as Ct,qa as J,ra as V,sa as me,ta as p,tc as tt,u as $e,uc as he,va as b,vc as nt,wa as z,wb as I,wc as it,xc as ot}from"./chunk-K2CIRFN7.js";import{f as He}from"./chunk-6H3I7D5M.js";var rn=[[["caption"]],[["colgroup"],["col"]],"*"],an=["caption","colgroup, col","*"];function sn(n,o){n&1&&$(0,2)}function ln(n,o){n&1&&(s(0,"thead",0),S(1,1),l(),s(2,"tbody",0),S(3,2)(4,3),l(),s(5,"tfoot",0),S(6,4),l())}function cn(n,o){n&1&&S(0,1)(1,2)(2,3)(3,4)}var N=new ve("CDK_TABLE");var ge=(()=>{class n{template=d(H);constructor(){}static \u0275fac=function(t){return new(t||n)};static \u0275dir=p({type:n,selectors:[["","cdkCellDef",""]]})}return n})(),we=(()=>{class n{template=d(H);constructor(){}static \u0275fac=function(t){return new(t||n)};static \u0275dir=p({type:n,selectors:[["","cdkHeaderCellDef",""]]})}return n})(),Lt=(()=>{class n{template=d(H);constructor(){}static \u0275fac=function(t){return new(t||n)};static \u0275dir=p({type:n,selectors:[["","cdkFooterCellDef",""]]})}return n})(),ne=(()=>{class n{_table=d(N,{optional:!0});_hasStickyChanged=!1;get name(){return this._name}set name(e){this._setNameInput(e)}_name;get sticky(){return this._sticky}set sticky(e){e!==this._sticky&&(this._sticky=e,this._hasStickyChanged=!0)}_sticky=!1;get stickyEnd(){return this._stickyEnd}set stickyEnd(e){e!==this._stickyEnd&&(this._stickyEnd=e,this._hasStickyChanged=!0)}_stickyEnd=!1;cell;headerCell;footerCell;cssClassFriendlyName;_columnCssClassName;constructor(){}hasStickyChanged(){let e=this._hasStickyChanged;return this.resetStickyChanged(),e}resetStickyChanged(){this._hasStickyChanged=!1}_updateColumnCssClassName(){this._columnCssClassName=[`cdk-column-${this.cssClassFriendlyName}`]}_setNameInput(e){e&&(this._name=e,this.cssClassFriendlyName=e.replace(/[^a-z0-9_-]/gi,"-"),this._updateColumnCssClassName())}static \u0275fac=function(t){return new(t||n)};static \u0275dir=p({type:n,selectors:[["","cdkColumnDef",""]],contentQueries:function(t,i,r){if(t&1&&ke(r,ge,5)(r,we,5)(r,Lt,5),t&2){let a;L(a=U())&&(i.cell=a.first),L(a=U())&&(i.headerCell=a.first),L(a=U())&&(i.footerCell=a.first)}},inputs:{name:[0,"cdkColumnDef","name"],sticky:[2,"sticky","sticky",A],stickyEnd:[2,"stickyEnd","stickyEnd",A]}})}return n})(),pe=class{constructor(o,e){e.nativeElement.classList.add(...o._columnCssClassName)}},Ut=(()=>{class n extends pe{constructor(){super(d(ne),d(B))}static \u0275fac=function(t){return new(t||n)};static \u0275dir=p({type:n,selectors:[["cdk-header-cell"],["th","cdk-header-cell",""]],hostAttrs:["role","columnheader",1,"cdk-header-cell"],features:[b]})}return n})();var jt=(()=>{class n extends pe{constructor(){let e=d(ne),t=d(B);super(e,t);let i=e._table?._getCellRole();i&&t.nativeElement.setAttribute("role",i)}static \u0275fac=function(t){return new(t||n)};static \u0275dir=p({type:n,selectors:[["cdk-cell"],["td","cdk-cell",""]],hostAttrs:[1,"cdk-cell"],features:[b]})}return n})();var Se=(()=>{class n{template=d(H);_differs=d(te);columns;_columnsDiffer;constructor(){}ngOnChanges(e){if(!this._columnsDiffer){let t=e.columns&&e.columns.currentValue||[];this._columnsDiffer=this._differs.find(t).create(),this._columnsDiffer.diff(t)}}getColumnsDiff(){return this._columnsDiffer.diff(this.columns)}extractCellTemplate(e){return this instanceof le?e.headerCell.template:this instanceof Me?e.footerCell.template:e.cell.template}static \u0275fac=function(t){return new(t||n)};static \u0275dir=p({type:n,features:[ue]})}return n})(),le=(()=>{class n extends Se{_table=d(N,{optional:!0});_hasStickyChanged=!1;get sticky(){return this._sticky}set sticky(e){e!==this._sticky&&(this._sticky=e,this._hasStickyChanged=!0)}_sticky=!1;constructor(){super(d(H),d(te))}ngOnChanges(e){super.ngOnChanges(e)}hasStickyChanged(){let e=this._hasStickyChanged;return this.resetStickyChanged(),e}resetStickyChanged(){this._hasStickyChanged=!1}static \u0275fac=function(t){return new(t||n)};static \u0275dir=p({type:n,selectors:[["","cdkHeaderRowDef",""]],inputs:{columns:[0,"cdkHeaderRowDef","columns"],sticky:[2,"cdkHeaderRowDefSticky","sticky",A]},features:[b,ue]})}return n})(),Me=(()=>{class n extends Se{_table=d(N,{optional:!0});_hasStickyChanged=!1;get sticky(){return this._sticky}set sticky(e){e!==this._sticky&&(this._sticky=e,this._hasStickyChanged=!0)}_sticky=!1;constructor(){super(d(H),d(te))}ngOnChanges(e){super.ngOnChanges(e)}hasStickyChanged(){let e=this._hasStickyChanged;return this.resetStickyChanged(),e}resetStickyChanged(){this._hasStickyChanged=!1}static \u0275fac=function(t){return new(t||n)};static \u0275dir=p({type:n,selectors:[["","cdkFooterRowDef",""]],inputs:{columns:[0,"cdkFooterRowDef","columns"],sticky:[2,"cdkFooterRowDefSticky","sticky",A]},features:[b,ue]})}return n})(),ye=(()=>{class n extends Se{_table=d(N,{optional:!0});when;constructor(){super(d(H),d(te))}static \u0275fac=function(t){return new(t||n)};static \u0275dir=p({type:n,selectors:[["","cdkRowDef",""]],inputs:{columns:[0,"cdkRowDefColumns","columns"],when:[0,"cdkRowDefWhen","when"]},features:[b]})}return n})(),G=(()=>{class n{_viewContainer=d(J);cells;context;static mostRecentCellOutlet=null;constructor(){n.mostRecentCellOutlet=this}ngOnDestroy(){n.mostRecentCellOutlet===this&&(n.mostRecentCellOutlet=null)}static \u0275fac=function(t){return new(t||n)};static \u0275dir=p({type:n,selectors:[["","cdkCellOutlet",""]]})}return n})(),Fe=(()=>{class n{static \u0275fac=function(t){return new(t||n)};static \u0275cmp=V({type:n,selectors:[["cdk-header-row"],["tr","cdk-header-row",""]],hostAttrs:["role","row",1,"cdk-header-row"],decls:1,vars:0,consts:[["cdkCellOutlet",""]],template:function(t,i){t&1&&S(0,0)},dependencies:[G],encapsulation:2})}return n})();var Te=(()=>{class n{static \u0275fac=function(t){return new(t||n)};static \u0275cmp=V({type:n,selectors:[["cdk-row"],["tr","cdk-row",""]],hostAttrs:["role","row",1,"cdk-row"],decls:1,vars:0,consts:[["cdkCellOutlet",""]],template:function(t,i){t&1&&S(0,0)},dependencies:[G],encapsulation:2})}return n})(),$t=(()=>{class n{templateRef=d(H);_contentClassNames=["cdk-no-data-row","cdk-row"];_cellClassNames=["cdk-cell","cdk-no-data-cell"];_cellSelector="td, cdk-cell, [cdk-cell], .cdk-cell";constructor(){}static \u0275fac=function(t){return new(t||n)};static \u0275dir=p({type:n,selectors:[["ng-template","cdkNoDataRow",""]]})}return n})(),At=["top","bottom","left","right"],Re=class{_isNativeHtmlTable;_stickCellCss;_isBrowser;_needsPositionStickyOnElement;direction;_positionListener;_tableInjector;_elemSizeCache=new WeakMap;_resizeObserver=globalThis?.ResizeObserver?new globalThis.ResizeObserver(o=>this._updateCachedSizes(o)):null;_updatedStickyColumnsParamsToReplay=[];_stickyColumnsReplayTimeout=null;_cachedCellWidths=[];_borderCellCss;_destroyed=!1;constructor(o,e,t=!0,i=!0,r,a,m){this._isNativeHtmlTable=o,this._stickCellCss=e,this._isBrowser=t,this._needsPositionStickyOnElement=i,this.direction=r,this._positionListener=a,this._tableInjector=m,this._borderCellCss={top:`${e}-border-elem-top`,bottom:`${e}-border-elem-bottom`,left:`${e}-border-elem-left`,right:`${e}-border-elem-right`}}clearStickyPositioning(o,e){(e.includes("left")||e.includes("right"))&&this._removeFromStickyColumnReplayQueue(o);let t=[];for(let i of o)i.nodeType===i.ELEMENT_NODE&&t.push(i,...Array.from(i.children));oe({write:()=>{for(let i of t)this._removeStickyStyle(i,e)}},{injector:this._tableInjector})}updateStickyColumns(o,e,t,i=!0,r=!0){if(!o.length||!this._isBrowser||!(e.some(O=>O)||t.some(O=>O))){this._positionListener?.stickyColumnsUpdated({sizes:[]}),this._positionListener?.stickyEndColumnsUpdated({sizes:[]});return}let a=o[0],m=a.children.length,h=this.direction==="rtl",_=h?"right":"left",v=h?"left":"right",F=e.lastIndexOf(!0),D=t.indexOf(!0),x,Be,Ve;r&&this._updateStickyColumnReplayQueue({rows:[...o],stickyStartStates:[...e],stickyEndStates:[...t]}),oe({earlyRead:()=>{x=this._getCellWidths(a,i),Be=this._getStickyStartColumnPositions(x,e),Ve=this._getStickyEndColumnPositions(x,t)},write:()=>{for(let O of o)for(let M=0;M<m;M++){let Ae=O.children[M];e[M]&&this._addStickyStyle(Ae,_,Be[M],M===F),t[M]&&this._addStickyStyle(Ae,v,Ve[M],M===D)}this._positionListener&&x.some(O=>!!O)&&(this._positionListener.stickyColumnsUpdated({sizes:F===-1?[]:x.slice(0,F+1).map((O,M)=>e[M]?O:null)}),this._positionListener.stickyEndColumnsUpdated({sizes:D===-1?[]:x.slice(D).map((O,M)=>t[M+D]?O:null).reverse()}))}},{injector:this._tableInjector})}stickRows(o,e,t){if(!this._isBrowser)return;let i=t==="bottom"?o.slice().reverse():o,r=t==="bottom"?e.slice().reverse():e,a=[],m=[],h=[];oe({earlyRead:()=>{for(let _=0,v=0;_<i.length;_++){if(!r[_])continue;a[_]=v;let F=i[_];h[_]=this._isNativeHtmlTable?Array.from(F.children):[F];let D=this._retrieveElementSize(F).height;v+=D,m[_]=D}},write:()=>{let _=r.lastIndexOf(!0);for(let v=0;v<i.length;v++){if(!r[v])continue;let F=a[v],D=v===_;for(let x of h[v])this._addStickyStyle(x,t,F,D)}t==="top"?this._positionListener?.stickyHeaderRowsUpdated({sizes:m,offsets:a,elements:h}):this._positionListener?.stickyFooterRowsUpdated({sizes:m,offsets:a,elements:h})}},{injector:this._tableInjector})}updateStickyFooterContainer(o,e){this._isNativeHtmlTable&&oe({write:()=>{let t=o.querySelector("tfoot");t&&(e.some(i=>!i)?this._removeStickyStyle(t,["bottom"]):this._addStickyStyle(t,"bottom",0,!1))}},{injector:this._tableInjector})}destroy(){this._stickyColumnsReplayTimeout&&clearTimeout(this._stickyColumnsReplayTimeout),this._resizeObserver?.disconnect(),this._destroyed=!0}_removeStickyStyle(o,e){if(!o.classList.contains(this._stickCellCss))return;for(let i of e)o.style[i]="",o.classList.remove(this._borderCellCss[i]);At.some(i=>e.indexOf(i)===-1&&o.style[i])?o.style.zIndex=this._getCalculatedZIndex(o):(o.style.zIndex="",this._needsPositionStickyOnElement&&(o.style.position=""),o.classList.remove(this._stickCellCss))}_addStickyStyle(o,e,t,i){o.classList.add(this._stickCellCss),i&&o.classList.add(this._borderCellCss[e]),o.style[e]=`${t}px`,o.style.zIndex=this._getCalculatedZIndex(o),this._needsPositionStickyOnElement&&(o.style.cssText+="position: -webkit-sticky; position: sticky; ")}_getCalculatedZIndex(o){let e={top:100,bottom:10,left:1,right:1},t=0;for(let i of At)o.style[i]&&(t+=e[i]);return t?`${t}`:""}_getCellWidths(o,e=!0){if(!e&&this._cachedCellWidths.length)return this._cachedCellWidths;let t=[],i=o.children;for(let r=0;r<i.length;r++){let a=i[r];t.push(this._retrieveElementSize(a).width)}return this._cachedCellWidths=t,t}_getStickyStartColumnPositions(o,e){let t=[],i=0;for(let r=0;r<o.length;r++)e[r]&&(t[r]=i,i+=o[r]);return t}_getStickyEndColumnPositions(o,e){let t=[],i=0;for(let r=o.length;r>0;r--)e[r]&&(t[r]=i,i+=o[r]);return t}_retrieveElementSize(o){let e=this._elemSizeCache.get(o);if(e)return e;let t=o.getBoundingClientRect(),i={width:t.width,height:t.height};return this._resizeObserver&&(this._elemSizeCache.set(o,i),this._resizeObserver.observe(o,{box:"border-box"})),i}_updateStickyColumnReplayQueue(o){this._removeFromStickyColumnReplayQueue(o.rows),this._stickyColumnsReplayTimeout||this._updatedStickyColumnsParamsToReplay.push(o)}_removeFromStickyColumnReplayQueue(o){let e=new Set(o);for(let t of this._updatedStickyColumnsParamsToReplay)t.rows=t.rows.filter(i=>!e.has(i));this._updatedStickyColumnsParamsToReplay=this._updatedStickyColumnsParamsToReplay.filter(t=>!!t.rows.length)}_updateCachedSizes(o){let e=!1;for(let t of o){let i=t.borderBoxSize?.length?{width:t.borderBoxSize[0].inlineSize,height:t.borderBoxSize[0].blockSize}:{width:t.contentRect.width,height:t.contentRect.height};i.width!==this._elemSizeCache.get(t.target)?.width&&dn(t.target)&&(e=!0),this._elemSizeCache.set(t.target,i)}e&&this._updatedStickyColumnsParamsToReplay.length&&(this._stickyColumnsReplayTimeout&&clearTimeout(this._stickyColumnsReplayTimeout),this._stickyColumnsReplayTimeout=setTimeout(()=>{if(!this._destroyed){for(let t of this._updatedStickyColumnsParamsToReplay)this.updateStickyColumns(t.rows,t.stickyStartStates,t.stickyEndStates,!0,!1);this._updatedStickyColumnsParamsToReplay=[],this._stickyColumnsReplayTimeout=null}},0))}};function dn(n){return["cdk-cell","cdk-header-cell","cdk-footer-cell"].some(o=>n.classList.contains(o))}var se=new ve("STICKY_POSITIONING_LISTENER");var Oe=(()=>{class n{viewContainer=d(J);elementRef=d(B);constructor(){let e=d(N);e._rowOutlet=this,e._outletAssigned()}static \u0275fac=function(t){return new(t||n)};static \u0275dir=p({type:n,selectors:[["","rowOutlet",""]]})}return n})(),Ee=(()=>{class n{viewContainer=d(J);elementRef=d(B);constructor(){let e=d(N);e._headerRowOutlet=this,e._outletAssigned()}static \u0275fac=function(t){return new(t||n)};static \u0275dir=p({type:n,selectors:[["","headerRowOutlet",""]]})}return n})(),Pe=(()=>{class n{viewContainer=d(J);elementRef=d(B);constructor(){let e=d(N);e._footerRowOutlet=this,e._outletAssigned()}static \u0275fac=function(t){return new(t||n)};static \u0275dir=p({type:n,selectors:[["","footerRowOutlet",""]]})}return n})(),Ie=(()=>{class n{viewContainer=d(J);elementRef=d(B);constructor(){let e=d(N);e._noDataRowOutlet=this,e._outletAssigned()}static \u0275fac=function(t){return new(t||n)};static \u0275dir=p({type:n,selectors:[["","noDataRowOutlet",""]]})}return n})(),Ne=(()=>{class n{_differs=d(te);_changeDetectorRef=d(Ze);_elementRef=d(B);_dir=d(tt,{optional:!0});_platform=d(et);_viewRepeater;_viewportRuler=d(rt);_injector=d(qe);_virtualScrollViewport=d(at,{optional:!0,host:!0});_positionListener=d(se,{optional:!0})||d(se,{optional:!0,skipSelf:!0});_document=d(Qe);_data;_renderedRange;_onDestroy=new Z;_renderRows;_renderChangeSubscription=null;_columnDefsByName=new Map;_rowDefs;_headerRowDefs;_footerRowDefs;_dataDiffer;_defaultRowDef=null;_customColumnDefs=new Set;_customRowDefs=new Set;_customHeaderRowDefs=new Set;_customFooterRowDefs=new Set;_customNoDataRow=null;_headerRowDefChanged=!0;_footerRowDefChanged=!0;_stickyColumnStylesNeedReset=!0;_forceRecalculateCellWidths=!0;_cachedRenderRowsMap=new Map;_isNativeHtmlTable;_stickyStyler;stickyCssClass="cdk-table-sticky";needsPositionStickyOnElement=!0;_isServer;_isShowingNoDataRow=!1;_hasAllOutlets=!1;_hasInitialized=!1;_headerRowStickyUpdates=new Z;_footerRowStickyUpdates=new Z;_disableVirtualScrolling=!1;_getCellRole(){if(this._cellRoleInternal===void 0){let e=this._elementRef.nativeElement.getAttribute("role");return e==="grid"||e==="treegrid"?"gridcell":"cell"}return this._cellRoleInternal}_cellRoleInternal=void 0;get trackBy(){return this._trackByFn}set trackBy(e){this._trackByFn=e}_trackByFn;get dataSource(){return this._dataSource}set dataSource(e){this._dataSource!==e&&(this._switchDataSource(e),this._changeDetectorRef.markForCheck())}_dataSource;_dataSourceChanges=new Z;_dataStream=new Z;get multiTemplateDataRows(){return this._multiTemplateDataRows}set multiTemplateDataRows(e){this._multiTemplateDataRows=e,this._rowOutlet&&this._rowOutlet.viewContainer.length&&(this._forceRenderDataRows(),this.updateStickyColumnStyles())}_multiTemplateDataRows=!1;get fixedLayout(){return this._virtualScrollEnabled()?!0:this._fixedLayout}set fixedLayout(e){this._fixedLayout=e,this._forceRecalculateCellWidths=!0,this._stickyColumnStylesNeedReset=!0}_fixedLayout=!1;recycleRows=!1;contentChanged=new We;viewChange=new ze({start:0,end:Number.MAX_VALUE});_rowOutlet;_headerRowOutlet;_footerRowOutlet;_noDataRowOutlet;_contentColumnDefs;_contentRowDefs;_contentHeaderRowDefs;_contentFooterRowDefs;_noDataRow;constructor(){d(new Ge("role"),{optional:!0})||this._elementRef.nativeElement.setAttribute("role","table"),this._isServer=!this._platform.isBrowser,this._isNativeHtmlTable=this._elementRef.nativeElement.nodeName==="TABLE",this._dataDiffer=this._differs.find([]).create((t,i)=>this.trackBy?this.trackBy(i.dataIndex,i.data):i)}ngOnInit(){this._setupStickyStyler(),this._viewportRuler.change().pipe(Q(this._onDestroy)).subscribe(()=>{this._forceRecalculateCellWidths=!0})}ngAfterContentInit(){this._viewRepeater=this.recycleRows||this._virtualScrollEnabled()?new it:new pt,this._virtualScrollEnabled()&&this._setupVirtualScrolling(this._virtualScrollViewport),this._hasInitialized=!0}ngAfterContentChecked(){this._canRender()&&this._render()}ngOnDestroy(){this._stickyStyler?.destroy(),[this._rowOutlet?.viewContainer,this._headerRowOutlet?.viewContainer,this._footerRowOutlet?.viewContainer,this._cachedRenderRowsMap,this._customColumnDefs,this._customRowDefs,this._customHeaderRowDefs,this._customFooterRowDefs,this._columnDefsByName].forEach(e=>{e?.clear()}),this._headerRowDefs=[],this._footerRowDefs=[],this._defaultRowDef=null,this._headerRowStickyUpdates.complete(),this._footerRowStickyUpdates.complete(),this._onDestroy.next(),this._onDestroy.complete(),he(this.dataSource)&&this.dataSource.disconnect(this)}renderRows(){this._renderRows=this._getAllRenderRows();let e=this._dataDiffer.diff(this._renderRows);if(!e){this._updateNoDataRow(),this.contentChanged.next();return}let t=this._rowOutlet.viewContainer;this._viewRepeater.applyChanges(e,t,(i,r,a)=>this._getEmbeddedViewArgs(i.item,a),i=>i.item.data,i=>{i.operation===nt.INSERTED&&i.context&&this._renderCellTemplateForItem(i.record.item.rowDef,i.context)}),this._updateRowIndexContext(),e.forEachIdentityChange(i=>{let r=t.get(i.currentIndex);r.context.$implicit=i.item.data}),this._updateNoDataRow(),this.contentChanged.next(),this.updateStickyColumnStyles()}addColumnDef(e){this._customColumnDefs.add(e)}removeColumnDef(e){this._customColumnDefs.delete(e)}addRowDef(e){this._customRowDefs.add(e)}removeRowDef(e){this._customRowDefs.delete(e)}addHeaderRowDef(e){this._customHeaderRowDefs.add(e),this._headerRowDefChanged=!0}removeHeaderRowDef(e){this._customHeaderRowDefs.delete(e),this._headerRowDefChanged=!0}addFooterRowDef(e){this._customFooterRowDefs.add(e),this._footerRowDefChanged=!0}removeFooterRowDef(e){this._customFooterRowDefs.delete(e),this._footerRowDefChanged=!0}setNoDataRow(e){this._customNoDataRow=e}updateStickyHeaderRowStyles(){let e=this._getRenderedRows(this._headerRowOutlet);if(this._isNativeHtmlTable){let i=Ht(this._headerRowOutlet,"thead");i&&(i.style.display=e.length?"":"none")}let t=this._headerRowDefs.map(i=>i.sticky);this._stickyStyler.clearStickyPositioning(e,["top"]),this._stickyStyler.stickRows(e,t,"top"),this._headerRowDefs.forEach(i=>i.resetStickyChanged())}updateStickyFooterRowStyles(){let e=this._getRenderedRows(this._footerRowOutlet);if(this._isNativeHtmlTable){let i=Ht(this._footerRowOutlet,"tfoot");i&&(i.style.display=e.length?"":"none")}let t=this._footerRowDefs.map(i=>i.sticky);this._stickyStyler.clearStickyPositioning(e,["bottom"]),this._stickyStyler.stickRows(e,t,"bottom"),this._stickyStyler.updateStickyFooterContainer(this._elementRef.nativeElement,t),this._footerRowDefs.forEach(i=>i.resetStickyChanged())}updateStickyColumnStyles(){let e=this._getRenderedRows(this._headerRowOutlet),t=this._getRenderedRows(this._rowOutlet),i=this._getRenderedRows(this._footerRowOutlet);(this._isNativeHtmlTable&&!this.fixedLayout||this._stickyColumnStylesNeedReset)&&(this._stickyStyler.clearStickyPositioning([...e,...t,...i],["left","right"]),this._stickyColumnStylesNeedReset=!1),e.forEach((r,a)=>{this._addStickyColumnStyles([r],this._headerRowDefs[a])}),this._rowDefs.forEach(r=>{let a=[];for(let m=0;m<t.length;m++)this._renderRows[m].rowDef===r&&a.push(t[m]);this._addStickyColumnStyles(a,r)}),i.forEach((r,a)=>{this._addStickyColumnStyles([r],this._footerRowDefs[a])}),Array.from(this._columnDefsByName.values()).forEach(r=>r.resetStickyChanged())}stickyColumnsUpdated(e){this._positionListener?.stickyColumnsUpdated(e)}stickyEndColumnsUpdated(e){this._positionListener?.stickyEndColumnsUpdated(e)}stickyHeaderRowsUpdated(e){this._headerRowStickyUpdates.next(e),this._positionListener?.stickyHeaderRowsUpdated(e)}stickyFooterRowsUpdated(e){this._footerRowStickyUpdates.next(e),this._positionListener?.stickyFooterRowsUpdated(e)}_outletAssigned(){!this._hasAllOutlets&&this._rowOutlet&&this._headerRowOutlet&&this._footerRowOutlet&&this._noDataRowOutlet&&(this._hasAllOutlets=!0,this._canRender()&&this._render())}_canRender(){return this._hasAllOutlets&&this._hasInitialized}_render(){this._cacheRowDefs(),this._cacheColumnDefs(),!this._headerRowDefs.length&&!this._footerRowDefs.length&&this._rowDefs.length;let t=this._renderUpdatedColumns()||this._headerRowDefChanged||this._footerRowDefChanged;this._stickyColumnStylesNeedReset=this._stickyColumnStylesNeedReset||t,this._forceRecalculateCellWidths=t,this._headerRowDefChanged&&(this._forceRenderHeaderRows(),this._headerRowDefChanged=!1),this._footerRowDefChanged&&(this._forceRenderFooterRows(),this._footerRowDefChanged=!1),this.dataSource&&this._rowDefs.length>0&&!this._renderChangeSubscription?this._observeRenderChanges():this._stickyColumnStylesNeedReset&&this.updateStickyColumnStyles(),this._checkStickyStates()}_getAllRenderRows(){if(!Array.isArray(this._data)||!this._renderedRange)return[];let e=[],t=Math.min(this._data.length,this._renderedRange.end),i=this._cachedRenderRowsMap;this._cachedRenderRowsMap=new Map;for(let r=this._renderedRange.start;r<t;r++){let a=this._data[r],m=this._getRenderRowsForData(a,r,i.get(a));this._cachedRenderRowsMap.has(a)||this._cachedRenderRowsMap.set(a,new WeakMap);for(let h=0;h<m.length;h++){let _=m[h],v=this._cachedRenderRowsMap.get(_.data);v.has(_.rowDef)?v.get(_.rowDef).push(_):v.set(_.rowDef,[_]),e.push(_)}}return e}_getRenderRowsForData(e,t,i){return this._getRowDefs(e,t).map(a=>{let m=i&&i.has(a)?i.get(a):[];if(m.length){let h=m.shift();return h.dataIndex=t,h}else return{data:e,rowDef:a,dataIndex:t}})}_cacheColumnDefs(){this._columnDefsByName.clear(),_e(this._getOwnDefs(this._contentColumnDefs),this._customColumnDefs).forEach(t=>{this._columnDefsByName.has(t.name),this._columnDefsByName.set(t.name,t)})}_cacheRowDefs(){this._headerRowDefs=_e(this._getOwnDefs(this._contentHeaderRowDefs),this._customHeaderRowDefs),this._footerRowDefs=_e(this._getOwnDefs(this._contentFooterRowDefs),this._customFooterRowDefs),this._rowDefs=_e(this._getOwnDefs(this._contentRowDefs),this._customRowDefs);let e=this._rowDefs.filter(t=>!t.when);this._defaultRowDef=e[0]}_renderUpdatedColumns(){let e=(a,m)=>{let h=!!m.getColumnsDiff();return a||h},t=this._rowDefs.reduce(e,!1);t&&this._forceRenderDataRows();let i=this._headerRowDefs.reduce(e,!1);i&&this._forceRenderHeaderRows();let r=this._footerRowDefs.reduce(e,!1);return r&&this._forceRenderFooterRows(),t||i||r}_switchDataSource(e){this._data=[],he(this.dataSource)&&this.dataSource.disconnect(this),this._renderChangeSubscription&&(this._renderChangeSubscription.unsubscribe(),this._renderChangeSubscription=null),e||(this._dataDiffer&&this._dataDiffer.diff([]),this._rowOutlet&&this._rowOutlet.viewContainer.clear()),this._dataSource=e}_observeRenderChanges(){if(!this.dataSource)return;let e;he(this.dataSource)?e=this.dataSource.connect(this):je(this.dataSource)?e=this.dataSource:Array.isArray(this.dataSource)&&(e=Ce(this.dataSource)),this._renderChangeSubscription=ce([e,this.viewChange]).pipe(Q(this._onDestroy)).subscribe(([t,i])=>{this._data=t||[],this._renderedRange=i,this._dataStream.next(t),this.renderRows()})}_forceRenderHeaderRows(){this._headerRowOutlet.viewContainer.length>0&&this._headerRowOutlet.viewContainer.clear(),this._headerRowDefs.forEach((e,t)=>this._renderRow(this._headerRowOutlet,e,t)),this.updateStickyHeaderRowStyles()}_forceRenderFooterRows(){this._footerRowOutlet.viewContainer.length>0&&this._footerRowOutlet.viewContainer.clear(),this._footerRowDefs.forEach((e,t)=>this._renderRow(this._footerRowOutlet,e,t)),this.updateStickyFooterRowStyles()}_addStickyColumnStyles(e,t){let i=Array.from(t?.columns||[]).map(m=>{let h=this._columnDefsByName.get(m);return h}),r=i.map(m=>m.sticky),a=i.map(m=>m.stickyEnd);this._stickyStyler.updateStickyColumns(e,r,a,!this.fixedLayout||this._forceRecalculateCellWidths)}_getRenderedRows(e){let t=[];for(let i=0;i<e.viewContainer.length;i++){let r=e.viewContainer.get(i);t.push(r.rootNodes[0])}return t}_getRowDefs(e,t){if(this._rowDefs.length===1)return[this._rowDefs[0]];let i=[];if(this.multiTemplateDataRows)i=this._rowDefs.filter(r=>!r.when||r.when(t,e));else{let r=this._rowDefs.find(a=>a.when&&a.when(t,e))||this._defaultRowDef;r&&i.push(r)}return i.length,i}_getEmbeddedViewArgs(e,t){let i=e.rowDef,r={$implicit:e.data};return{templateRef:i.template,context:r,index:t}}_renderRow(e,t,i,r={}){let a=e.viewContainer.createEmbeddedView(t.template,r,i);return this._renderCellTemplateForItem(t,r),a}_renderCellTemplateForItem(e,t){for(let i of this._getCellTemplates(e))G.mostRecentCellOutlet&&G.mostRecentCellOutlet._viewContainer.createEmbeddedView(i,t);this._changeDetectorRef.markForCheck()}_updateRowIndexContext(){let e=this._rowOutlet.viewContainer;for(let t=0,i=e.length;t<i;t++){let a=e.get(t).context;a.count=i,a.first=t===0,a.last=t===i-1,a.even=t%2===0,a.odd=!a.even,this.multiTemplateDataRows?(a.dataIndex=this._renderRows[t].dataIndex,a.renderIndex=t):a.index=this._renderRows[t].dataIndex}}_getCellTemplates(e){return!e||!e.columns?[]:Array.from(e.columns,t=>{let i=this._columnDefsByName.get(t);return e.extractCellTemplate(i)})}_forceRenderDataRows(){this._dataDiffer.diff([]),this._rowOutlet.viewContainer.clear(),this.renderRows()}_checkStickyStates(){let e=(t,i)=>t||i.hasStickyChanged();this._headerRowDefs.reduce(e,!1)&&this.updateStickyHeaderRowStyles(),this._footerRowDefs.reduce(e,!1)&&this.updateStickyFooterRowStyles(),Array.from(this._columnDefsByName.values()).reduce(e,!1)&&(this._stickyColumnStylesNeedReset=!0,this.updateStickyColumnStyles())}_setupStickyStyler(){let e=this._dir?this._dir.value:"ltr",t=this._injector;this._stickyStyler=new Re(this._isNativeHtmlTable,this.stickyCssClass,this._platform.isBrowser,this.needsPositionStickyOnElement,e,this,t),(this._dir?this._dir.change:Ce()).pipe(Q(this._onDestroy)).subscribe(i=>{this._stickyStyler.direction=i,this.updateStickyColumnStyles()})}_setupVirtualScrolling(e){let t=typeof requestAnimationFrame<"u"?Ue:Le;this.viewChange.next({start:0,end:0}),e.renderedRangeStream.pipe($e(0,t),Q(this._onDestroy)).subscribe(this.viewChange),e.attach({dataStream:this._dataStream,measureRangeSize:(i,r)=>this._measureRangeSize(i,r)}),ce([e.renderedContentOffset,this._headerRowStickyUpdates]).pipe(Q(this._onDestroy)).subscribe(([i,r])=>{if(!(!r.sizes||!r.offsets||!r.elements))for(let a=0;a<r.elements.length;a++){let m=r.elements[a];if(m){let h=r.offsets[a],_=i!==0?Math.max(i-h,h):-h;for(let v of m)v.style.top=`${-_}px`}}}),ce([e.renderedContentOffset,this._footerRowStickyUpdates]).pipe(Q(this._onDestroy)).subscribe(([i,r])=>{if(!(!r.sizes||!r.offsets||!r.elements))for(let a=0;a<r.elements.length;a++){let m=r.elements[a];if(m)for(let h of m)h.style.bottom=`${i+r.offsets[a]}px`}})}_getOwnDefs(e){return e.filter(t=>!t._table||t._table===this)}_updateNoDataRow(){let e=this._customNoDataRow||this._noDataRow;if(!e)return;let t=this._rowOutlet.viewContainer.length===0;if(t===this._isShowingNoDataRow)return;let i=this._noDataRowOutlet.viewContainer;if(t){let r=i.createEmbeddedView(e.templateRef),a=r.rootNodes[0];if(r.rootNodes.length===1&&a?.nodeType===this._document.ELEMENT_NODE){a.setAttribute("role","row"),a.classList.add(...e._contentClassNames);let m=a.querySelectorAll(e._cellSelector);for(let h=0;h<m.length;h++)m[h].classList.add(...e._cellClassNames)}}else i.clear();this._isShowingNoDataRow=t,this._changeDetectorRef.markForCheck()}_measureRangeSize(e,t){if(e.start>=e.end||t!=="vertical")return 0;let i=this.viewChange.value,r=this._rowOutlet.viewContainer;e.start<i.start||e.end>i.end;let a=e.start-i.start,m=e.end-e.start,h,_;for(let D=0;D<m;D++){let x=r.get(D+a);if(x&&x.rootNodes.length){h=_=x.rootNodes[0];break}}for(let D=m-1;D>-1;D--){let x=r.get(D+a);if(x&&x.rootNodes.length){_=x.rootNodes[x.rootNodes.length-1];break}}let v=h?.getBoundingClientRect?.(),F=_?.getBoundingClientRect?.();return v&&F?F.bottom-v.top:0}_virtualScrollEnabled(){return!this._disableVirtualScrolling&&this._virtualScrollViewport!=null}static \u0275fac=function(t){return new(t||n)};static \u0275cmp=V({type:n,selectors:[["cdk-table"],["table","cdk-table",""]],contentQueries:function(t,i,r){if(t&1&&ke(r,$t,5)(r,ne,5)(r,ye,5)(r,le,5)(r,Me,5),t&2){let a;L(a=U())&&(i._noDataRow=a.first),L(a=U())&&(i._contentColumnDefs=a),L(a=U())&&(i._contentRowDefs=a),L(a=U())&&(i._contentHeaderRowDefs=a),L(a=U())&&(i._contentFooterRowDefs=a)}},hostAttrs:[1,"cdk-table"],hostVars:2,hostBindings:function(t,i){t&2&&q("cdk-table-fixed-layout",i.fixedLayout)},inputs:{trackBy:"trackBy",dataSource:"dataSource",multiTemplateDataRows:[2,"multiTemplateDataRows","multiTemplateDataRows",A],fixedLayout:[2,"fixedLayout","fixedLayout",A],recycleRows:[2,"recycleRows","recycleRows",A]},outputs:{contentChanged:"contentChanged"},exportAs:["cdkTable"],features:[I([{provide:N,useExisting:n},{provide:se,useValue:null}])],ngContentSelectors:an,decls:5,vars:2,consts:[["role","rowgroup"],["headerRowOutlet",""],["rowOutlet",""],["noDataRowOutlet",""],["footerRowOutlet",""]],template:function(t,i){t&1&&(fe(rn),$(0),$(1,1),y(2,sn,1,0),y(3,ln,7,0)(4,cn,4,0)),t&2&&(c(2),C(i._isServer?2:-1),c(),C(i._isNativeHtmlTable?3:4))},dependencies:[Ee,Oe,Ie,Pe],styles:[`.cdk-table-fixed-layout {
2
2
  table-layout: fixed;
3
3
  }
4
4
  `],encapsulation:2})}return n})();function _e(n,o){return n.concat(Array.from(o))}function Ht(n,o){let e=o.toUpperCase(),t=n.viewContainer.element.nativeElement;for(;t;){let i=t.nodeType===1?t.nodeName:null;if(i===e)return t;if(i==="TABLE")break;t=t.parentNode}return null}var qt=(()=>{class n{static \u0275fac=function(t){return new(t||n)};static \u0275mod=me({type:n});static \u0275inj=de({imports:[st]})}return n})();var un=[[["caption"]],[["colgroup"],["col"]],"*"],mn=["caption","colgroup, col","*"];function fn(n,o){n&1&&$(0,2)}function hn(n,o){n&1&&(s(0,"thead",0),S(1,1),l(),s(2,"tbody",2),S(3,3)(4,4),l(),s(5,"tfoot",0),S(6,5),l())}function _n(n,o){n&1&&S(0,1)(1,3)(2,4)(3,5)}var Qt=(()=>{class n extends Ne{stickyCssClass="mat-mdc-table-sticky";needsPositionStickyOnElement=!1;static \u0275fac=(()=>{let e;return function(i){return(e||(e=E(n)))(i||n)}})();static \u0275cmp=V({type:n,selectors:[["mat-table"],["table","mat-table",""]],hostAttrs:[1,"mat-mdc-table","mdc-data-table__table"],hostVars:2,hostBindings:function(t,i){t&2&&q("mat-table-fixed-layout",i.fixedLayout)},exportAs:["matTable"],features:[I([{provide:Ne,useExisting:n},{provide:N,useExisting:n},{provide:se,useValue:null}]),b],ngContentSelectors:mn,decls:5,vars:2,consts:[["role","rowgroup"],["headerRowOutlet",""],["role","rowgroup",1,"mdc-data-table__content"],["rowOutlet",""],["noDataRowOutlet",""],["footerRowOutlet",""]],template:function(t,i){t&1&&(fe(un),$(0),$(1,1),y(2,fn,1,0),y(3,hn,7,0)(4,_n,4,0)),t&2&&(c(2),C(i._isServer?2:-1),c(),C(i._isNativeHtmlTable?3:4))},dependencies:[Ee,Oe,Ie,Pe],styles:[`.mat-mdc-table-sticky {
@@ -1,3 +1,3 @@
1
- import{L as p,P as m,Z as h,hc as y,k as f}from"./chunk-JH5KSRZ6.js";import{f as d}from"./chunk-6H3I7D5M.js";var k=/^---\r?\n([\s\S]*?)\r?\n---\r?\n?([\s\S]*)$/;function _(r){let e=k.exec(r);if(!e)return{frontmatter:{},body:r.trim()};let t={};for(let s of e[1].split(/\r?\n/)){let o=s.trim();if(!o||o.startsWith("#"))continue;let i=o.indexOf(":");if(i===-1)continue;let n=o.slice(0,i).trim(),a=o.slice(i+1).trim().replace(/^["']|["']$/g,"");n&&(t[n]=a)}return{frontmatter:t,body:e[2].trim()}}var g=/!\[([^\]]*)\]\(([^)\s]+)[^)]*\)/g;function D(r){let e=[];g.lastIndex=0;let t;for(;t=g.exec(r);)e.push({alt:t[1],url:t[2]});if(e.length===0)return{images:e,body:r};let s=!1,o=r.replace(g,i=>s?i:(s=!0,"")).replace(/\n{3,}/g,`
1
+ import{L as p,P as m,_ as h,hc as y,k as f}from"./chunk-K2CIRFN7.js";import{f as d}from"./chunk-6H3I7D5M.js";var k=/^---\r?\n([\s\S]*?)\r?\n---\r?\n?([\s\S]*)$/;function _(r){let e=k.exec(r);if(!e)return{frontmatter:{},body:r.trim()};let t={};for(let s of e[1].split(/\r?\n/)){let o=s.trim();if(!o||o.startsWith("#"))continue;let i=o.indexOf(":");if(i===-1)continue;let n=o.slice(0,i).trim(),a=o.slice(i+1).trim().replace(/^["']|["']$/g,"");n&&(t[n]=a)}return{frontmatter:t,body:e[2].trim()}}var g=/!\[([^\]]*)\]\(([^)\s]+)[^)]*\)/g;function D(r){let e=[];g.lastIndex=0;let t;for(;t=g.exec(r);)e.push({alt:t[1],url:t[2]});if(e.length===0)return{images:e,body:r};let s=!1,o=r.replace(g,i=>s?i:(s=!0,"")).replace(/\n{3,}/g,`
2
2
 
3
3
  `).trim();return{images:e,body:o}}function C(r,e){if(!r&&!e)return 0;if(!r)return-1;if(!e)return 1;let t=i=>i.replace(/^v/i,"").split(/[.-]/).map(n=>/^\d+$/.test(n)?Number(n):n),s=t(r),o=t(e);for(let i=0;i<Math.max(s.length,o.length);i++){let n=s[i],a=o[i];if(n===void 0)return typeof a=="string"?1:-1;if(a===void 0)return typeof n=="string"?-1:1;if(n!==a)return typeof n=="number"&&typeof a=="number"?n<a?-1:1:String(n)<String(a)?-1:1}return 0}function F(r){if(!r)return null;let e=String(r).replace(/^v/i,"").split(".");return e.length<2?null:`${e[0]}.${e[1]}`}function I(r){let e=null;for(let t of r)!t||t.kind==="skip"||!t.since||C(t.since,e)>0&&(e=t.since);return F(e)}function M(r,e){let t=r.filter(n=>!n.since),s=t.length?t:r.filter(n=>F(n.since)===e),o=s.map(n=>w(n.title??"")).filter(n=>n.length>0);if(o.length===0)return null;let i=s.some(n=>n.kind==="new")?"New":"Updated";return{label:t.length?"Unreleased":`${i} in ${e}`,shown:o.slice(0,3),more:Math.max(0,o.length-3)}}function x(r){let e=r?.docs??[],t=r?.ledger??[],s=I(t),o=new Map;for(let i of t){if(!i||i.kind==="skip"||!i.feature)continue;let n=o.get(i.feature);n?n.push(i):o.set(i.feature,[i])}return e.map(i=>{let{frontmatter:n,body:a}=_(i.raw),{images:v,body:E}=D(a),c=(o.get(i.id)??[]).slice().sort((u,S)=>-P(u,S)),l=c.find(u=>u.since)??c[0];return{id:i.id,title:n.title||i.id,category:n.category||"General",body:E,since:l?.since??null,latestKind:l&&(l.kind==="new"||l.kind==="enhanced")?l.kind:null,events:c.map(u=>({pr:u.pr??null,date:u.date??null,title:w(u.title??"")})),recentChanges:M(c,s),images:v}})}function P(r,e){let t=r.date??"",s=e.date??"";return t!==s?t<s?-1:1:(r.pr??0)-(e.pr??0)}var L=/^\s*(feat|fix|perf|refactor|docs|test|chore|ci|build|style|revert)(\([^)]*\))?!?:\s*/i;function w(r){return r.replace(L,"").trim()}function A(r,e,t){let s=t==="asc"?1:-1;return[...r].sort((o,i)=>{let n;return e==="since"?n=C(o.since,i.since):n=o[e].localeCompare(i[e],void 0,{sensitivity:"base"}),n===0?o.title.localeCompare(i.title,void 0,{sensitivity:"base"}):n*s})}function N(r,e,t){return t===0?-1:Math.min(Math.max(r+(e==="ArrowDown"?1:-1),0),t-1)}function b(r,e){let t=r.find(o=>o.name===e);if(t)return t.hue;let s=0;for(let o=0;o<e.length;o++)s=s*31+e.charCodeAt(o)|0;return Math.abs(s)%360}function T(r,e){let t=e.trim().toLowerCase();return t?r.filter(s=>s.title.toLowerCase().includes(t)||s.category.toLowerCase().includes(t)||s.body.toLowerCase().includes(t)):r}var R=class r{http=m(y);_features=h([]);categories=[];loadPromise=null;features=this._features.asReadonly();load(){return this.loadPromise??=this.fetch()}fetch(){return d(this,null,function*(){try{let e=yield f(this.http.get("assets/features-corpus.json"));this.categories=e.categories??[],this._features.set(x(e))}catch(e){this._features.set([])}return this._features()})}hueFor(e){return b(this.categories,e)}static \u0275fac=function(t){return new(t||r)};static \u0275prov=p({token:r,factory:r.\u0275fac,providedIn:"root"})};export{A as a,N as b,T as c,R as d};
@@ -1,2 +1,2 @@
1
- import{a as pe}from"./chunk-GECNK37G.js";import{D as re,f as j,g as N,h as Y,i as Z,j as ee,k as te,l as ie,r as oe,w as se,z as le}from"./chunk-D7ZEGEOC.js";import{a as H,b as ne,c as ae}from"./chunk-NDDO5DKA.js";import{a as A,b as L}from"./chunk-PSRS6NXJ.js";import{i as U,j as z,k as q}from"./chunk-WXOWBQXR.js";import"./chunk-SOVFTS2B.js";import{a as B}from"./chunk-VSWAOYSI.js";import"./chunk-PGHE7FOF.js";import"./chunk-7UXFP343.js";import"./chunk-TGPAYIRR.js";import{j as J,o as Q}from"./chunk-7Z4ZZM32.js";import{Dd as E,Ea as f,Ed as G,Fa as x,Ha as b,Hd as R,Ia as v,Ja as T,Jd as X,Ka as u,La as a,Ma as o,Na as C,P as y,Q as d,R as m,Rd as O,Td as W,Ua as _,Wa as h,Wd as V,Ya as p,Yd as F,Zd as K,gb as w,ja as l,lb as r,mb as P,nb as M,oa as D,ob as S,pe as $,ra as I}from"./chunk-JH5KSRZ6.js";import{f as k}from"./chunk-6H3I7D5M.js";function de(s,t){if(s&1){let e=_();a(0,"button",11),h("click",function(){d(e);let i=p();return m(i.load())}),a(1,"mat-icon"),r(2,"file_upload"),o(),r(3," \xA0Load "),o()}if(s&2){let e=p();u("disabled",!e.display.loadRoutesOK&&!e.display.loadWaypointsOK&&!e.display.loadTracksOK)}}function me(s,t){s&1&&(a(0,"div",10)(1,"div")(2,"b"),r(3,"Invalid GPX Data:"),o(),C(4,"br")(5,"br"),a(6,"i"),r(7,"Selected file does not contain GPX data or"),C(8,"br"),r(9," does not correctly implement namespaced <extensions> attributes."),o()()())}function ue(s,t){s&1&&C(0,"mat-progress-bar",12)}function he(s,t){if(s&1){let e=_();a(0,"div",23)(1,"div",24),r(2),o(),a(3,"div",25)(4,"mat-checkbox",26,0),h("change",function(){let i=d(e).$index,c=w(5),g=p(4);return m(g.checkWpt(c.checked,i))}),o()()()}if(s&2){let e=t.$implicit,n=t.$index,i=p(4);l(2),P(e.name),l(2),u("checked",i.selWaypoints[n])}}function _e(s,t){if(s&1){let e=_();a(0,"div",13)(1,"mat-expansion-panel",16),h("opened",function(){d(e);let i=p(3);return m(i.display.expand.waypoints=!0)})("closed",function(){d(e);let i=p(3);return m(i.display.expand.waypoints=!1)}),a(2,"mat-expansion-panel-header",17)(3,"mat-panel-title")(4,"mat-icon",18),r(5,"place"),o(),r(6," \xA0\xA0 "),a(7,"b"),r(8,"Waypoints:"),o()(),a(9,"mat-panel-description")(10,"div",5)(11,"span",19),r(12),o(),a(13,"span",20)(14,"mat-checkbox",21),h("change",function(i){d(e);let c=p(3);return m(c.checkWpt(i.checked,-1))})("click",function(i){return i.cancelBubble=!0}),o()()()()(),a(15,"div",22),v(16,he,6,2,"div",23,b),o()()()}if(s&2){let e=p(3);l(),u("expanded",e.display.expand.waypoints),l(11),S(" (",e.display.selCount.waypoints," of ",e.gpxData==null?null:e.gpxData.waypoints.length,") "),l(2),u("indeterminate",e.display.someWptChecked)("checked",e.display.allWaypointsChecked)("disabled",e.gpxData.waypoints.length===0),l(2),T(e.gpxData.waypoints)}}function fe(s,t){if(s&1){let e=_();a(0,"div",23)(1,"div",24),r(2),o(),a(3,"div",25)(4,"mat-checkbox",29,1),h("change",function(){let i=d(e).$index,c=w(5),g=p(4);return m(g.checkRte(c.checked,i))}),o()()()}if(s&2){let e=t.$implicit,n=t.$index,i=p(4);l(2),P(e.name),l(2),u("checked",i.selRoutes[n])}}function xe(s,t){if(s&1){let e=_();a(0,"div",13)(1,"mat-expansion-panel",16),h("opened",function(){d(e);let i=p(3);return m(i.display.expand.routes=!0)})("closed",function(){d(e);let i=p(3);return m(i.display.expand.routes=!1)}),a(2,"mat-expansion-panel-header",17)(3,"mat-panel-title")(4,"mat-icon",27),r(5,"directions"),o(),r(6," \xA0\xA0 "),a(7,"b"),r(8,"Routes:"),o()(),a(9,"mat-panel-description")(10,"div",5)(11,"span",19),r(12),o(),a(13,"span",20)(14,"mat-checkbox",28),h("change",function(i){d(e);let c=p(3);return m(c.checkRte(i.checked,-1))})("click",function(i){return i.cancelBubble=!0}),o()()()()(),a(15,"div",22),v(16,fe,6,2,"div",23,b),o()()()}if(s&2){let e=p(3);l(),u("expanded",e.display.expand.routes),l(11),S(" (",e.display.selCount.routes," of ",e.gpxData==null?null:e.gpxData.routes.length,") "),l(2),u("indeterminate",e.display.someRteChecked)("checked",e.display.allRoutesChecked)("disabled",e.gpxData.routes.length==0),l(2),T(e.gpxData.routes)}}function ye(s,t){if(s&1){let e=_();a(0,"div",23)(1,"div",24),r(2),o(),a(3,"div",25)(4,"mat-checkbox",32,2),h("change",function(){let i=d(e).$index,c=w(5),g=p(4);return m(g.checkTrk(c.checked,i))}),o()()()}if(s&2){let e=t.$implicit,n=t.$index,i=p(4);l(2),P(e.name),l(2),u("checked",i.selTracks[n])}}function ge(s,t){if(s&1){let e=_();a(0,"div",13)(1,"mat-expansion-panel",16),h("opened",function(){d(e);let i=p(3);return m(i.display.expand.tracks=!0)})("closed",function(){d(e);let i=p(3);return m(i.display.expand.tracks=!1)}),a(2,"mat-expansion-panel-header",17)(3,"mat-panel-title")(4,"mat-icon",30),r(5,"show_chart"),o(),r(6," \xA0\xA0 "),a(7,"b"),r(8,"Tracks:"),o()(),a(9,"mat-panel-description")(10,"div",5)(11,"span",19),r(12),o(),a(13,"span",20)(14,"mat-checkbox",31),h("change",function(i){d(e);let c=p(3);return m(c.checkTrk(i.checked,-1))})("click",function(i){return i.cancelBubble=!0}),o()()()()(),a(15,"div",22),v(16,ye,6,2,"div",23,b),o()()()}if(s&2){let e=p(3);l(),u("expanded",e.display.expand.tracks),l(11),S(" (",e.display.selCount.tracks," of ",e.gpxData==null?null:e.gpxData.tracks.length,") "),l(2),u("indeterminate",e.display.someTrkChecked)("checked",e.display.allTracksChecked)("disabled",e.gpxData.tracks.length==0),l(2),T(e.gpxData.tracks)}}function Ce(s,t){if(s&1&&(a(0,"div",13)(1,"div",14)(2,"div"),r(3,"File:"),o(),a(4,"div",15),r(5),o()(),C(6,"mat-divider"),o(),f(7,_e,18,6,"div",13),f(8,xe,18,6,"div",13),f(9,ge,18,6,"div",13)),s&2){let e=p(2);l(5),M(" ",e.data.fileName," "),l(2),x(e.gpxData.waypoints.length!=0?7:-1),l(),x(e.gpxData.routes.length!=0?8:-1),l(),x(e.gpxData.tracks.length!=0&&e.app.featureFlags().resourceTracks?9:-1)}}function ke(s,t){if(s&1&&(a(0,"div",10),f(1,ue,1,0,"mat-progress-bar",12)(2,Ce,10,4),o()),s&2){let e=p();l(),x(e.app.sIsFetching()?1:2)}}var ce=class s{constructor(t){this.data=t}data;gpxData={name:"",routes:[],waypoints:[],tracks:[]};selRoutes=[];selectedRoute=null;selWaypoints=[];selTracks=[];display={notValid:!1,allRoutesChecked:!1,allWaypointsChecked:!1,allTracksChecked:!1,someWptChecked:!1,someRteChecked:!1,someTrkChecked:!1,loadRoutesOK:!1,loadWaypointsOK:!1,loadTracksOK:!1,routeViewer:!1,selCount:{routes:0,waypoints:0,tracks:0},expand:{routes:!1,waypoints:!1,tracks:!1}};errorCount=0;subCount=0;gpx;app=y(le);dialogRef=y(E);skres=y(re);signalk=y(oe);symbols=y(se);ngOnInit(){this.data.fileData=this.data.fileData||null,this.parseGPXData(this.data.fileData)}ngOnDestroy(){this.clear()}load(){this.uploadToServer({rte:{selected:this.selRoutes},wpt:{selected:this.selWaypoints},trk:{selected:this.selTracks}})}parseGPXData(t){return k(this,null,function*(){if(this.display.allRoutesChecked=!1,this.display.loadRoutesOK=!1,this.selRoutes=[],this.display.allWaypointsChecked=!1,this.display.loadWaypointsOK=!1,this.selWaypoints=[],this.display.allTracksChecked=!1,this.display.loadTracksOK=!1,this.selTracks=[],this.display.selCount={routes:0,waypoints:0,tracks:0},this.display.expand={routes:!1,waypoints:!1,tracks:!1},this.display.notValid=!1,this.gpxData=yield this.parseFileData(t),!this.gpxData){console.warn(`Selected file does not contain GPX data or
1
+ import{a as pe}from"./chunk-B5SN3ZBN.js";import{D as re,f as j,g as N,h as Y,i as Z,j as ee,k as te,l as ie,r as oe,w as se,z as le}from"./chunk-5HE5CF34.js";import{a as H,b as ne,c as ae}from"./chunk-TTKT5FKY.js";import{a as A,b as L}from"./chunk-4WQCRQTL.js";import{i as U,j as z,k as q}from"./chunk-2M5JDEPT.js";import"./chunk-FC62PK2U.js";import{a as B}from"./chunk-XTQIZ74A.js";import"./chunk-T5UYZVNA.js";import"./chunk-FMYAA5JW.js";import"./chunk-OGLYW4PJ.js";import{j as J,o as Q}from"./chunk-ABEPBSQB.js";import{Dd as E,Ea as f,Ed as G,Fa as x,Ha as b,Hd as R,Ia as v,Ja as T,Jd as X,Ka as u,La as a,Ma as o,Na as C,P as y,R as d,Rd as O,S as m,Td as W,Ua as _,Wa as h,Wd as V,Ya as p,Yd as F,Zd as K,gb as w,ja as l,lb as r,mb as P,nb as M,oa as D,ob as S,pe as $,ra as I}from"./chunk-K2CIRFN7.js";import{f as k}from"./chunk-6H3I7D5M.js";function de(s,t){if(s&1){let e=_();a(0,"button",11),h("click",function(){d(e);let i=p();return m(i.load())}),a(1,"mat-icon"),r(2,"file_upload"),o(),r(3," \xA0Load "),o()}if(s&2){let e=p();u("disabled",!e.display.loadRoutesOK&&!e.display.loadWaypointsOK&&!e.display.loadTracksOK)}}function me(s,t){s&1&&(a(0,"div",10)(1,"div")(2,"b"),r(3,"Invalid GPX Data:"),o(),C(4,"br")(5,"br"),a(6,"i"),r(7,"Selected file does not contain GPX data or"),C(8,"br"),r(9," does not correctly implement namespaced <extensions> attributes."),o()()())}function ue(s,t){s&1&&C(0,"mat-progress-bar",12)}function he(s,t){if(s&1){let e=_();a(0,"div",23)(1,"div",24),r(2),o(),a(3,"div",25)(4,"mat-checkbox",26,0),h("change",function(){let i=d(e).$index,c=w(5),g=p(4);return m(g.checkWpt(c.checked,i))}),o()()()}if(s&2){let e=t.$implicit,n=t.$index,i=p(4);l(2),P(e.name),l(2),u("checked",i.selWaypoints[n])}}function _e(s,t){if(s&1){let e=_();a(0,"div",13)(1,"mat-expansion-panel",16),h("opened",function(){d(e);let i=p(3);return m(i.display.expand.waypoints=!0)})("closed",function(){d(e);let i=p(3);return m(i.display.expand.waypoints=!1)}),a(2,"mat-expansion-panel-header",17)(3,"mat-panel-title")(4,"mat-icon",18),r(5,"place"),o(),r(6," \xA0\xA0 "),a(7,"b"),r(8,"Waypoints:"),o()(),a(9,"mat-panel-description")(10,"div",5)(11,"span",19),r(12),o(),a(13,"span",20)(14,"mat-checkbox",21),h("change",function(i){d(e);let c=p(3);return m(c.checkWpt(i.checked,-1))})("click",function(i){return i.cancelBubble=!0}),o()()()()(),a(15,"div",22),v(16,he,6,2,"div",23,b),o()()()}if(s&2){let e=p(3);l(),u("expanded",e.display.expand.waypoints),l(11),S(" (",e.display.selCount.waypoints," of ",e.gpxData==null?null:e.gpxData.waypoints.length,") "),l(2),u("indeterminate",e.display.someWptChecked)("checked",e.display.allWaypointsChecked)("disabled",e.gpxData.waypoints.length===0),l(2),T(e.gpxData.waypoints)}}function fe(s,t){if(s&1){let e=_();a(0,"div",23)(1,"div",24),r(2),o(),a(3,"div",25)(4,"mat-checkbox",29,1),h("change",function(){let i=d(e).$index,c=w(5),g=p(4);return m(g.checkRte(c.checked,i))}),o()()()}if(s&2){let e=t.$implicit,n=t.$index,i=p(4);l(2),P(e.name),l(2),u("checked",i.selRoutes[n])}}function xe(s,t){if(s&1){let e=_();a(0,"div",13)(1,"mat-expansion-panel",16),h("opened",function(){d(e);let i=p(3);return m(i.display.expand.routes=!0)})("closed",function(){d(e);let i=p(3);return m(i.display.expand.routes=!1)}),a(2,"mat-expansion-panel-header",17)(3,"mat-panel-title")(4,"mat-icon",27),r(5,"directions"),o(),r(6," \xA0\xA0 "),a(7,"b"),r(8,"Routes:"),o()(),a(9,"mat-panel-description")(10,"div",5)(11,"span",19),r(12),o(),a(13,"span",20)(14,"mat-checkbox",28),h("change",function(i){d(e);let c=p(3);return m(c.checkRte(i.checked,-1))})("click",function(i){return i.cancelBubble=!0}),o()()()()(),a(15,"div",22),v(16,fe,6,2,"div",23,b),o()()()}if(s&2){let e=p(3);l(),u("expanded",e.display.expand.routes),l(11),S(" (",e.display.selCount.routes," of ",e.gpxData==null?null:e.gpxData.routes.length,") "),l(2),u("indeterminate",e.display.someRteChecked)("checked",e.display.allRoutesChecked)("disabled",e.gpxData.routes.length==0),l(2),T(e.gpxData.routes)}}function ye(s,t){if(s&1){let e=_();a(0,"div",23)(1,"div",24),r(2),o(),a(3,"div",25)(4,"mat-checkbox",32,2),h("change",function(){let i=d(e).$index,c=w(5),g=p(4);return m(g.checkTrk(c.checked,i))}),o()()()}if(s&2){let e=t.$implicit,n=t.$index,i=p(4);l(2),P(e.name),l(2),u("checked",i.selTracks[n])}}function ge(s,t){if(s&1){let e=_();a(0,"div",13)(1,"mat-expansion-panel",16),h("opened",function(){d(e);let i=p(3);return m(i.display.expand.tracks=!0)})("closed",function(){d(e);let i=p(3);return m(i.display.expand.tracks=!1)}),a(2,"mat-expansion-panel-header",17)(3,"mat-panel-title")(4,"mat-icon",30),r(5,"show_chart"),o(),r(6," \xA0\xA0 "),a(7,"b"),r(8,"Tracks:"),o()(),a(9,"mat-panel-description")(10,"div",5)(11,"span",19),r(12),o(),a(13,"span",20)(14,"mat-checkbox",31),h("change",function(i){d(e);let c=p(3);return m(c.checkTrk(i.checked,-1))})("click",function(i){return i.cancelBubble=!0}),o()()()()(),a(15,"div",22),v(16,ye,6,2,"div",23,b),o()()()}if(s&2){let e=p(3);l(),u("expanded",e.display.expand.tracks),l(11),S(" (",e.display.selCount.tracks," of ",e.gpxData==null?null:e.gpxData.tracks.length,") "),l(2),u("indeterminate",e.display.someTrkChecked)("checked",e.display.allTracksChecked)("disabled",e.gpxData.tracks.length==0),l(2),T(e.gpxData.tracks)}}function Ce(s,t){if(s&1&&(a(0,"div",13)(1,"div",14)(2,"div"),r(3,"File:"),o(),a(4,"div",15),r(5),o()(),C(6,"mat-divider"),o(),f(7,_e,18,6,"div",13),f(8,xe,18,6,"div",13),f(9,ge,18,6,"div",13)),s&2){let e=p(2);l(5),M(" ",e.data.fileName," "),l(2),x(e.gpxData.waypoints.length!=0?7:-1),l(),x(e.gpxData.routes.length!=0?8:-1),l(),x(e.gpxData.tracks.length!=0&&e.app.featureFlags().resourceTracks?9:-1)}}function ke(s,t){if(s&1&&(a(0,"div",10),f(1,ue,1,0,"mat-progress-bar",12)(2,Ce,10,4),o()),s&2){let e=p();l(),x(e.app.sIsFetching()?1:2)}}var ce=class s{constructor(t){this.data=t}data;gpxData={name:"",routes:[],waypoints:[],tracks:[]};selRoutes=[];selectedRoute=null;selWaypoints=[];selTracks=[];display={notValid:!1,allRoutesChecked:!1,allWaypointsChecked:!1,allTracksChecked:!1,someWptChecked:!1,someRteChecked:!1,someTrkChecked:!1,loadRoutesOK:!1,loadWaypointsOK:!1,loadTracksOK:!1,routeViewer:!1,selCount:{routes:0,waypoints:0,tracks:0},expand:{routes:!1,waypoints:!1,tracks:!1}};errorCount=0;subCount=0;gpx;app=y(le);dialogRef=y(E);skres=y(re);signalk=y(oe);symbols=y(se);ngOnInit(){this.data.fileData=this.data.fileData||null,this.parseGPXData(this.data.fileData)}ngOnDestroy(){this.clear()}load(){this.uploadToServer({rte:{selected:this.selRoutes},wpt:{selected:this.selWaypoints},trk:{selected:this.selTracks}})}parseGPXData(t){return k(this,null,function*(){if(this.display.allRoutesChecked=!1,this.display.loadRoutesOK=!1,this.selRoutes=[],this.display.allWaypointsChecked=!1,this.display.loadWaypointsOK=!1,this.selWaypoints=[],this.display.allTracksChecked=!1,this.display.loadTracksOK=!1,this.selTracks=[],this.display.selCount={routes:0,waypoints:0,tracks:0},this.display.expand={routes:!1,waypoints:!1,tracks:!1},this.display.notValid=!1,this.gpxData=yield this.parseFileData(t),!this.gpxData){console.warn(`Selected file does not contain GPX data or
2
2
  does not correctly implement namespaced <extensions> attributes`,"Invalid GPX Data:"),this.display.notValid=!0;return}this.gpxData.routes.forEach(()=>{this.selRoutes.push(!1)}),this.selRoutes.length===1&&(this.selRoutes[0]=!0,this.display.allRoutesChecked=!0,this.display.expand.routes=!0,this.display.loadRoutesOK=!0,this.display.selCount.routes=1),this.gpxData.waypoints.forEach(()=>{this.selWaypoints.push(!1)}),this.selWaypoints.length===1&&(this.selWaypoints[0]=!0,this.display.allWaypointsChecked=!0,this.display.expand.waypoints=!0,this.display.loadWaypointsOK=!0,this.display.selCount.waypoints=1),this.gpxData.tracks.forEach(()=>{this.selTracks.push(!1)}),this.selTracks.length===1&&(this.selTracks[0]=!0,this.display.allTracksChecked=!0,this.display.expand.tracks=!0,this.display.loadTracksOK=!0,this.display.selCount.tracks=1)})}checkRte(t,e=-1){let n=0;if(e!==-1){this.selRoutes[e]=t,this.display.loadRoutesOK=t;for(let i of this.selRoutes)i&&n++;this.display.loadRoutesOK=n!==0,this.display.selCount.routes=n,this.display.allRoutesChecked=n===this.selRoutes.length}else{for(let i=0;i<this.selRoutes.length;i++)this.selRoutes[i]=t,this.display.loadRoutesOK=t,this.display.allRoutesChecked=t;this.display.selCount.routes=t?this.selRoutes.length:0}this.display.someRteChecked=!(this.display.allRoutesChecked||n===0)}checkWpt(t,e=-1){let n=0;if(e!==-1){this.selWaypoints[e]=t,this.display.loadWaypointsOK=t;for(let i of this.selWaypoints)i&&n++;this.display.loadWaypointsOK=n!==0,this.display.selCount.waypoints=n,this.display.allWaypointsChecked=n===this.selWaypoints.length}else{for(let i=0;i<this.selWaypoints.length;i++)this.selWaypoints[i]=t,this.display.loadWaypointsOK=t,this.display.allWaypointsChecked=t;this.display.selCount.waypoints=t?this.selWaypoints.length:0}this.display.someWptChecked=!(this.display.allWaypointsChecked||n===0)}checkTrk(t,e=-1){let n=0;if(e!==-1){this.selTracks[e]=t,this.display.loadTracksOK=t;for(let i of this.selTracks)i&&n++;this.display.loadTracksOK=n!==0,this.display.selCount.tracks=n,this.display.allTracksChecked=n===this.selTracks.length}else{for(let i=0;i<this.selTracks.length;i++)this.selTracks[i]=t,this.display.loadTracksOK=t,this.display.allTracksChecked=t;this.display.selCount.tracks=t?this.selTracks.length:0}this.display.someTrkChecked=!(this.display.allTracksChecked||n===0)}clear(){this.gpx=null}parseFileData(t){return k(this,null,function*(){let e={name:"",routes:[],waypoints:[],tracks:[]};if(this.gpx=new pe,this.app.sIsFetching.set(!0),!(yield this.gpx.parse(t)))return this.app.sIsFetching.set(!1),null;let n=1;return this.gpx.rte.forEach(i=>{e.routes.push({name:i.name!==""?i.name:`Rte: ${n}`,description:i.desc?i.desc:i.cmt?i.cmt:"",wptcount:i.rtept.length}),n++}),n=1,this.gpx.wpt.forEach(i=>{e.waypoints.push({name:i.name?i.name:`Wpt: ${n}`,description:i.desc?i.desc:i.cmt?i.cmt:""}),n++}),n=1,this.gpx.trk.forEach(i=>{e.tracks.push({name:i.name?i.name:`Trk: ${n}`,description:i.desc?i.desc:i.cmt?i.cmt:""}),n++}),this.app.sIsFetching.set(!1),e})}uploadToServer(t){return k(this,null,function*(){this.app.sIsFetching.set(!0),this.errorCount=0,this.subCount=0;for(let n=0;n<t.rte.selected.length;n++)t.rte.selected[n]&&this.transformRoute(this.gpx.rte[n]);for(let n=0;n<t.wpt.selected.length;n++)t.wpt.selected[n]&&this.transformWaypoint(this.gpx.wpt[n]);let e=[];for(let n=0;n<t.trk.selected.length;n++)if(t.trk.selected[n]){let i=this.transformTrack(this.gpx.trk[n]);this.subCount++;try{let c=yield this.skres.postToServer("tracks",i);this.subCount--,Math.floor(c.statusCode/100)===2?(e.push(c.id),this.app.debug("SUCCESS: Track added.")):this.errorCount++,this.checkComplete()}catch(c){this.errorCount++,this.subCount--,this.logError(c),this.checkComplete()}}e.length!==0&&this.skres.trackAddFromServer(e)})}errorList=[];logError(t){let e=t.error?t.error.message:t.message;this.errorList.push({status:t.status,message:e})}checkComplete(){this.subCount===0&&(this.app.sIsFetching.set(!1),this.app.saveConfig(),this.dialogRef.close({errCount:this.errorCount,errList:this.errorList}),this.app.debug(`GPXLoad: complete: ${this.errorCount}`))}transformRoute(t){let e=this.skres.buildRoute(t.rtept.map(i=>[i.lon,i.lat])),n=e[1];n.name=t.name??"",n.description=t.desc??"",t.cmt&&(n.feature.properties.cmt=t.cmt),t.src&&(n.feature.properties.src=t.src),t.number&&(n.feature.properties.number=t.number),t.type&&(n.feature.properties.type=t.type),n.feature.properties.coordinatesMeta=[],n.feature.properties.coordinatesMeta=t.rtept.map(i=>{let c={name:i.name??""};return i.cmt&&(c.description=i.cmt),c}),this.subCount++,this.signalk.api.put(this.app.skApiVersion,`/resources/routes/${e[0]}`,e[1]).subscribe(i=>{this.subCount--,Math.floor(i.statusCode/100)===2?(this.app.debug("SUCCESS: Route added."),this.skres.selectionAdd("routes",e[0])):this.errorCount++,this.checkComplete()},i=>{this.errorCount++,this.subCount--,this.logError(i),this.checkComplete()})}transformWaypoint(t){let e=this.skres.buildWaypoint([t.lon,t.lat]),n=e[1];if(t.ele&&n.feature.geometry.coordinates.push(t.ele),t.name&&t.name.length!==0&&(n.name=t.name),t.desc&&t.desc.length!==0&&(n.description=t.desc),t.type&&(n.type=t.type,n.feature.properties.type=t.type),t.cmt&&(n.feature.properties.cmt=t.cmt),t.src&&(n.feature.properties.src=t.src),t.sym){n.feature.properties.sym=t.sym;let i=this.symbols.resolveGpxSym(t.sym);i&&(n.type="waypoint",n.feature.properties.skIcon=i)}this.subCount++,this.signalk.api.put(this.app.skApiVersion,`/resources/waypoints/${e[0]}`,e[1]).subscribe(i=>{this.subCount--,Math.floor(i.statusCode/100)===2?(this.app.debug("SUCCESS: Waypoint added."),this.skres.selectionAdd("waypoints",e[0])):this.errorCount++,this.checkComplete()},i=>{this.errorCount++,this.subCount--,this.logError(i),this.checkComplete()})}transformTrack(t){let e={feature:{type:"Feature",geometry:{type:"MultiLineString",coordinates:[]},properties:{},id:""}};return t.trkseg&&t.trkseg.forEach(n=>{let i=[];n.trkpt.forEach(c=>{i.push([c.lon,c.lat])}),e.feature.geometry.coordinates.push(i)}),t.name&&t.name.length!==0?e.feature.properties.name=t.name:e.feature.properties.name=`gpxtrk #${Math.random().toString().slice(-5)}`,t.desc&&t.desc.length!==0&&(e.feature.properties.description=t.desc),t.cmt&&(e.feature.properties.cmt=t.cmt),t.src&&(e.feature.properties.src=t.src),t.type&&(e.feature.properties.type=t.type),e}static \u0275fac=function(e){return new(e||s)(D(G))};static \u0275cmp=I({type:s,selectors:[["gpxload-dialog"]],decls:13,vars:3,consts:[["wval",""],["rval",""],["tval",""],[1,"gpxload-dialog"],[2,"background-color","transparent"],[2,"display","flex","width","100%"],["mat-raised-button","","matTooltip","Load selected resources","matTooltipPosition","right",2,"width","85px",3,"disabled"],[2,"flex","1 1 auto","text-align","center"],[2,"text-align","right"],["mat-icon-button","",3,"click","disabled"],["mat-dialog-content",""],["mat-raised-button","","matTooltip","Load selected resources","matTooltipPosition","right",2,"width","85px",3,"click","disabled"],["mode","indeterminate"],[1,"card-group"],[2,"display","flex"],[2,"flex","1 1 auto","padding-left","10px","overflow","hidden","display","-webkit-box","-webkit-box-orient","vertical","-webkit-line-clamp","1","line-clamp","1","text-overflow","ellipsis"],[3,"opened","closed","expanded"],[2,"padding","0 12px"],[1,"icon-waypoint"],[1,"pnlSelectedItems"],[1,"pnlSelect"],["matTooltip","Select all Waypoints","matTooltipPosition","before",3,"change","click","indeterminate","checked","disabled"],[1,"list-container-scrollable"],[1,"item-row"],[1,"name"],[1,"check"],["matTooltip","Select Waypoint","matTooltipPosition","below",3,"change","checked"],[1,"icon-route"],["matTooltip","Select all Routes","matTooltipPosition","before",3,"change","click","indeterminate","checked","disabled"],["matTooltip","Select this Route","matTooltipPosition","below",3,"change","checked"],[1,"icon-track"],["matTooltip","Select all Tracks","matTooltipPosition","before",3,"change","click","indeterminate","checked","disabled"],["matTooltip","Select this Track","matTooltipPosition","below",3,"change","checked"]],template:function(e,n){e&1&&(a(0,"div",3)(1,"mat-toolbar",4)(2,"div",5)(3,"div"),f(4,de,4,1,"button",6),o(),a(5,"div",7),r(6,"Import GPX"),o(),a(7,"div",8)(8,"button",9),h("click",function(){return n.dialogRef.close(-1)}),a(9,"mat-icon"),r(10,"close"),o()()()()(),f(11,me,10,0,"div",10)(12,ke,3,1,"div",10),o()),e&2&&(l(4),x(n.app.sIsFetching()?-1:4),l(4),u("disabled",n.app.sIsFetching()),l(3),x(n.display.notValid?11:12))},dependencies:[ae,ne,N,j,X,R,K,F,V,W,O,U,J,Q,L,A,ie,Y,Z,te,ee,q,z,H,B,$],styles:[".gpxload-dialog[_ngcontent-%COMP%]{font-family:roboto;position:relative}.mat-expansion-panel-body[_ngcontent-%COMP%]{padding:0 12px 6px}.card-group-title[_ngcontent-%COMP%]{font-weight:700;font-size:10pt;font-family:Arial,Helvetica,sans-serif;padding:10px 0}.item-row[_ngcontent-%COMP%]{display:flex;width:100%;padding:2px 0}.item-row[_ngcontent-%COMP%] .name[_ngcontent-%COMP%]{flex:1 1 auto;overflow:hidden;display:-webkit-box;-webkit-box-orient:vertical;-webkit-line-clamp:1;text-overflow:ellipsis;line-height:2.5em}.item-row[_ngcontent-%COMP%] .check[_ngcontent-%COMP%]{text-align:right;padding-right:15px}.pnlSelectedItems[_ngcontent-%COMP%]{display:none;line-height:2.9em}.pnlSelect[_ngcontent-%COMP%]{flex:1 1 auto;padding-left:3px;padding-right:3px;text-align:right}.txtSelect[_ngcontent-%COMP%]{display:none}button[_ngcontent-%COMP%]{min-width:unset;padding:unset}@media only screen and (min-width:400px){.pnlSelectedItems[_ngcontent-%COMP%]{display:inline}}@media only screen and (min-width:475px){.pnlSelectedItems[_ngcontent-%COMP%]{display:inline;line-height:2.9em}.txtSelect[_ngcontent-%COMP%]{display:inline}.pnlSelect[_ngcontent-%COMP%]{flex:1 1 auto;padding-left:20px;padding-right:15px;text-align:right}button[_ngcontent-%COMP%]{min-width:inherit;padding:inherit}}"]})};export{ce as GPXImportDialog};
@@ -1 +1 @@
1
- import{va as z}from"./chunk-D7ZEGEOC.js";import"./chunk-NDDO5DKA.js";import"./chunk-PSRS6NXJ.js";import"./chunk-WXOWBQXR.js";import"./chunk-SOVFTS2B.js";import"./chunk-VSWAOYSI.js";import"./chunk-PGHE7FOF.js";import"./chunk-7UXFP343.js";import"./chunk-TGPAYIRR.js";import"./chunk-7Z4ZZM32.js";import{Dd as C,Ea as m,Ed as w,Fa as d,Gd as S,Hd as R,Id as E,Jd as O,Ka as _,La as a,Ma as o,Na as v,Q as f,R as u,Rd as T,Td as A,Ua as D,Wa as p,Wd as k,Ya as g,Yd as j,Zd as V,ab as b,bb as x,cb as y,ha as h,ja as s,kc as I,lb as r,mb as M,oa as c,ra as P}from"./chunk-JH5KSRZ6.js";import"./chunk-6H3I7D5M.js";var U=["frame"];function Q(n,e){if(n&1&&(a(0,"mat-dialog-content",3),v(1,"iframe",6,0),o()),n&2){let t=g();s(),_("src",t.url,h)("title",t.data.panel.title)}}function B(n,e){n&1&&(a(0,"mat-dialog-content",4),r(1," This widget has no settings. "),o())}function F(n,e){if(n&1){let t=D();a(0,"mat-dialog-actions",5)(1,"button",7),p("click",function(){f(t);let l=g();return u(l.removeWidget())}),a(2,"mat-icon"),r(3,"delete"),o(),r(4," Remove widget "),o()()}}var W=class n{constructor(e,t,i,l){this.dialogRef=e;this.data=t;this.service=i;this.sanitizer=l}dialogRef;data;service;sanitizer;frame;url;detach=null;ngOnInit(){let e=this.data.panel;e&&(this.url=this.sanitizer.bypassSecurityTrustResourceUrl(e.url?this.service.resolveAssetUrl(e.url):"about:blank"))}ngAfterViewInit(){let e=this.data.panel;!e||!this.frame||(this.detach=this.service.attachPanel(this.frame.nativeElement,{extension:this.data.extension,panel:e,targetInstance:this.data.targetInstance,targetWidget:this.data.targetWidget,close:()=>this.dialogRef.close()}))}removeWidget(){this.data.targetInstance&&this.service.removeWidget(this.data.targetInstance),this.dialogRef.close()}ngOnDestroy(){this.detach?.(),this.detach=null}static \u0275fac=function(t){return new(t||n)(c(C),c(w),c(z),c(I))};static \u0275cmp=P({type:n,selectors:[["fb-plotterext-panel-dialog"]],viewQuery:function(t,i){if(t&1&&b(U,5),t&2){let l;x(l=y())&&(i.frame=l.first)}},decls:9,vars:3,consts:[["frame",""],["mat-dialog-title","",1,"pe-panel-header"],["mat-icon-button","","aria-label","Close",3,"click"],[1,"pe-panel-content"],[1,"pe-panel-noconfig"],[1,"pe-panel-actions"],["sandbox","allow-scripts allow-same-origin allow-forms",3,"src","title"],["mat-button","",1,"pe-remove",3,"click"]],template:function(t,i){t&1&&(a(0,"div",1)(1,"span"),r(2),o(),a(3,"button",2),p("click",function(){return i.dialogRef.close()}),a(4,"mat-icon"),r(5,"close"),o()()(),m(6,Q,3,2,"mat-dialog-content",3)(7,B,2,0,"mat-dialog-content",4),m(8,F,5,0,"mat-dialog-actions",5)),t&2&&(s(2),M(i.data.panel?i.data.panel.title:i.data.title),s(4),d(i.data.panel?6:7),s(2),d(i.data.targetInstance?8:-1))},dependencies:[O,S,E,R,k,A,T,V,j],styles:[".pe-panel-header[_ngcontent-%COMP%]{display:flex;align-items:center;justify-content:space-between;padding-right:8px}.pe-panel-content[_ngcontent-%COMP%]{padding:0;height:60vh}.pe-panel-noconfig[_ngcontent-%COMP%]{padding:16px 24px}iframe[_ngcontent-%COMP%]{display:block;width:100%;height:100%;border:none}.pe-panel-actions[_ngcontent-%COMP%]{justify-content:flex-start}.pe-remove[_ngcontent-%COMP%]{color:#d32f2f}"]})};export{W as PlotterPanelDialog};
1
+ import{va as z}from"./chunk-5HE5CF34.js";import"./chunk-TTKT5FKY.js";import"./chunk-4WQCRQTL.js";import"./chunk-2M5JDEPT.js";import"./chunk-FC62PK2U.js";import"./chunk-XTQIZ74A.js";import"./chunk-T5UYZVNA.js";import"./chunk-FMYAA5JW.js";import"./chunk-OGLYW4PJ.js";import"./chunk-ABEPBSQB.js";import{Dd as C,Ea as m,Ed as w,Fa as d,Gd as S,Hd as R,Id as E,Jd as O,Ka as _,La as a,Ma as o,Na as v,R as f,Rd as T,S as u,Td as A,Ua as D,Wa as p,Wd as k,Ya as g,Yd as j,Zd as V,ab as b,bb as x,cb as y,ha as h,ja as s,kc as I,lb as r,mb as M,oa as c,ra as P}from"./chunk-K2CIRFN7.js";import"./chunk-6H3I7D5M.js";var U=["frame"];function Q(n,e){if(n&1&&(a(0,"mat-dialog-content",3),v(1,"iframe",6,0),o()),n&2){let t=g();s(),_("src",t.url,h)("title",t.data.panel.title)}}function B(n,e){n&1&&(a(0,"mat-dialog-content",4),r(1," This widget has no settings. "),o())}function F(n,e){if(n&1){let t=D();a(0,"mat-dialog-actions",5)(1,"button",7),p("click",function(){f(t);let l=g();return u(l.removeWidget())}),a(2,"mat-icon"),r(3,"delete"),o(),r(4," Remove widget "),o()()}}var W=class n{constructor(e,t,i,l){this.dialogRef=e;this.data=t;this.service=i;this.sanitizer=l}dialogRef;data;service;sanitizer;frame;url;detach=null;ngOnInit(){let e=this.data.panel;e&&(this.url=this.sanitizer.bypassSecurityTrustResourceUrl(e.url?this.service.resolveAssetUrl(e.url):"about:blank"))}ngAfterViewInit(){let e=this.data.panel;!e||!this.frame||(this.detach=this.service.attachPanel(this.frame.nativeElement,{extension:this.data.extension,panel:e,targetInstance:this.data.targetInstance,targetWidget:this.data.targetWidget,close:()=>this.dialogRef.close()}))}removeWidget(){this.data.targetInstance&&this.service.removeWidget(this.data.targetInstance),this.dialogRef.close()}ngOnDestroy(){this.detach?.(),this.detach=null}static \u0275fac=function(t){return new(t||n)(c(C),c(w),c(z),c(I))};static \u0275cmp=P({type:n,selectors:[["fb-plotterext-panel-dialog"]],viewQuery:function(t,i){if(t&1&&b(U,5),t&2){let l;x(l=y())&&(i.frame=l.first)}},decls:9,vars:3,consts:[["frame",""],["mat-dialog-title","",1,"pe-panel-header"],["mat-icon-button","","aria-label","Close",3,"click"],[1,"pe-panel-content"],[1,"pe-panel-noconfig"],[1,"pe-panel-actions"],["sandbox","allow-scripts allow-same-origin allow-forms",3,"src","title"],["mat-button","",1,"pe-remove",3,"click"]],template:function(t,i){t&1&&(a(0,"div",1)(1,"span"),r(2),o(),a(3,"button",2),p("click",function(){return i.dialogRef.close()}),a(4,"mat-icon"),r(5,"close"),o()()(),m(6,Q,3,2,"mat-dialog-content",3)(7,B,2,0,"mat-dialog-content",4),m(8,F,5,0,"mat-dialog-actions",5)),t&2&&(s(2),M(i.data.panel?i.data.panel.title:i.data.title),s(4),d(i.data.panel?6:7),s(2),d(i.data.targetInstance?8:-1))},dependencies:[O,S,E,R,k,A,T,V,j],styles:[".pe-panel-header[_ngcontent-%COMP%]{display:flex;align-items:center;justify-content:space-between;padding-right:8px}.pe-panel-content[_ngcontent-%COMP%]{padding:0;height:60vh}.pe-panel-noconfig[_ngcontent-%COMP%]{padding:16px 24px}iframe[_ngcontent-%COMP%]{display:block;width:100%;height:100%;border:none}.pe-panel-actions[_ngcontent-%COMP%]{justify-content:flex-start}.pe-remove[_ngcontent-%COMP%]{color:#d32f2f}"]})};export{W as PlotterPanelDialog};
@@ -1,4 +1,4 @@
1
- import{Za as l,_a as o,ib as r,ra as a}from"./chunk-JH5KSRZ6.js";var d=["mat-internal-form-field",""],f=["*"],g=(()=>{class t{labelPosition="after";static \u0275fac=function(n){return new(n||t)};static \u0275cmp=a({type:t,selectors:[["div","mat-internal-form-field",""]],hostAttrs:[1,"mdc-form-field","mat-internal-form-field"],hostVars:2,hostBindings:function(n,e){n&2&&r("mdc-form-field--align-end",e.labelPosition==="before")},inputs:{labelPosition:"labelPosition"},attrs:d,ngContentSelectors:f,decls:1,vars:0,template:function(n,e){n&1&&(l(),o(0))},styles:[`.mat-internal-form-field {
1
+ import{Za as l,_a as o,ib as r,ra as a}from"./chunk-K2CIRFN7.js";var d=["mat-internal-form-field",""],f=["*"],g=(()=>{class t{labelPosition="after";static \u0275fac=function(n){return new(n||t)};static \u0275cmp=a({type:t,selectors:[["div","mat-internal-form-field",""]],hostAttrs:[1,"mdc-form-field","mat-internal-form-field"],hostVars:2,hostBindings:function(n,e){n&2&&r("mdc-form-field--align-end",e.labelPosition==="before")},inputs:{labelPosition:"labelPosition"},attrs:d,ngContentSelectors:f,decls:1,vars:0,template:function(n,e){n&1&&(l(),o(0))},styles:[`.mat-internal-form-field {
2
2
  -moz-osx-font-smoothing: grayscale;
3
3
  -webkit-font-smoothing: antialiased;
4
4
  display: inline-flex;
@@ -0,0 +1 @@
1
+ import{F as $e,M as et,N as tt,O as it,ca as nt,da as $,e as Oe,ea as ee,ia as at,ja as ot,ka as rt,m as qe,n as B,p as je,q as Xe,s as Ye,t as Je,y as Qe,ya as st,z as L,za as lt}from"./chunk-5HE5CF34.js";import{a as K,b as Ke,c as ze}from"./chunk-TTKT5FKY.js";import{a as ke,h as Pe,j as Le,k as xe}from"./chunk-4WQCRQTL.js";import{a as Ie,d as Fe,i as Ae,j as Ne,k as Re}from"./chunk-2M5JDEPT.js";import{a as Y,b as J,c as Ze,d as Q}from"./chunk-FC62PK2U.js";import{a as Be}from"./chunk-XTQIZ74A.js";import"./chunk-T5UYZVNA.js";import"./chunk-FMYAA5JW.js";import"./chunk-OGLYW4PJ.js";import{b as z,c as Ue,f as Ge,i as q,j as He,n as j,o as X}from"./chunk-ABEPBSQB.js";import{$ as fe,$d as U,Da as O,Dd as Se,Ea as b,Fa as T,Ha as D,Hd as Ce,Ia as y,Ja as S,Jd as Me,Ka as h,Kb as F,La as i,Ma as n,Na as E,Ob as ye,P as W,Pb as A,R as m,Rd as we,S as c,T as x,Td as ve,U as pe,Ua as V,Wa as p,Wd as N,Y as _e,Ya as M,Yd as be,Zd as R,_ as I,da as ue,ee as G,gb as w,he as H,ie as Te,ja as o,jb as he,lb as s,le as De,mb as C,me as Ee,nb as k,ne as We,oe as Ve,pb as _,pe as Z,qb as f,ra as P,rb as u}from"./chunk-K2CIRFN7.js";import"./chunk-6H3I7D5M.js";var yt=(l,d)=>d[0];function St(l,d){if(l&1&&(i(0,"mat-option",8),x(),i(1,"svg",6),E(2,"line",7),n()()),l&2){let a=d.$implicit;h("value",a),o(2),O("stroke-width",a)}}function Ct(l,d){if(l&1&&(i(0,"mat-option",8),x(),i(1,"svg",6),E(2,"line",9),n()()),l&2){let a=d.$implicit;h("value",a[0]),o(2),O("stroke-dasharray",a[1])}}var te=class l{color=A("#ff0000");dash=A("none");weight=A(1);_color=F(()=>this.color());_dash=F(()=>this.dash());_weight=F(()=>this.weight());selectionChange=ye();app=W(L);line={dashArrays:this.app.lineDashMap,weights:[1,2,3,4,5]};constructor(){}ngOnInit(){}onSelectChange(){let d=this.app.formatLineDashArray(this._dash());this.selectionChange.emit({lineStyle:{fill:{color:this._color()},stroke:{color:this._color(),width:this._weight(),lineDash:d}},config:{color:this._color(),weight:this._weight(),dash:this._dash()}})}static \u0275fac=function(a){return new(a||l)};static \u0275cmp=P({type:l,selectors:[["linestyle-select"]],inputs:{color:[1,"color"],dash:[1,"dash"],weight:[1,"weight"]},outputs:{selectionChange:"selectionChange"},decls:25,vars:5,consts:[[2,"display","flex"],[2,"width","100px"],["mat-input","","matNativeControl","","type","color",3,"ngModelChange","change","ngModel"],[2,"width","110px"],[3,"ngModelChange","selectionChange","ngModel"],[2,"display","flex","align-items","center","gap","8px"],["width","48","height","10",2,"vertical-align","middle","margin-right","6px"],["x1","0","y1","5","x2","48","y2","5","stroke","currentColor","stroke-array","none"],[3,"value"],["x1","0","y1","5","x2","48","y2","5","stroke","currentColor","stroke-width","2"]],template:function(a,e){a&1&&(i(0,"div",0)(1,"mat-form-field",1)(2,"mat-label"),s(3,"Color"),n(),i(4,"input",2),u("ngModelChange",function(r){return f(e._color,r)||(e._color=r),r}),p("change",function(){return e.onSelectChange()}),n()(),i(5,"mat-form-field",3)(6,"mat-label"),s(7,"Weight"),n(),i(8,"mat-select",4),u("ngModelChange",function(r){return f(e._weight,r)||(e._weight=r),r}),p("selectionChange",function(){return e.onSelectChange()}),i(9,"mat-select-trigger")(10,"div",5),x(),i(11,"svg",6),E(12,"line",7),n()()(),y(13,St,3,2,"mat-option",8,D),n()(),pe(),i(15,"mat-form-field",3)(16,"mat-label"),s(17,"Style"),n(),i(18,"mat-select",4),u("ngModelChange",function(r){return f(e._dash,r)||(e._dash=r),r}),p("selectionChange",function(){return e.onSelectChange()}),i(19,"mat-select-trigger")(20,"div",5),x(),i(21,"svg",6),E(22,"line",9),n()()(),y(23,Ct,3,2,"mat-option",8,yt),n()()()),a&2&&(o(4),_("ngModel",e._color),o(4),_("ngModel",e._weight),o(4),O("stroke-width",e._weight()),o(),S(e.line.weights),o(5),_("ngModel",e._dash),o(4),O("stroke-dasharray",e.line.dashArrays.get(e._dash())),o(),S(e.line.dashArrays))},dependencies:[Z,U,G,H,R,N,K,X,j,q,z,Q,J,Ze,Y],encapsulation:2})};var ie="auto";var wt=(l,d)=>d[0];function vt(l,d){if(l&1){let a=V();i(0,"div",4)(1,"mat-radio-button",5,0),p("change",function(){m(a);let g=w(2),r=M().$implicit,t=M();return r[1].current=g.value,c(t.save(!0))}),s(3),n()()}if(l&2){let a=d.$implicit,e=M().$implicit,g=M();o(),h("name",e[0])("value",a)("checked",a===e[1].current),o(2),k(" ",g.pathLabel(a)," ")}}function bt(l,d){if(l&1&&(i(0,"div",2)(1,"div",3)(2,"div"),s(3),n()(),i(4,"div"),y(5,vt,4,4,"div",4,D),n()()),l&2){let a=d.$implicit;o(3),C(a[1].name),o(2),S(a[1].available)}}var ne=class l{title="";chosen=new _e;pathChoices={tws:{name:"True Wind Speed",choices:["environment.wind.speedTrue","environment.wind.speedOverGround"],available:[],current:""},twd:{name:"True Wind Direction",choices:["environment.wind.directionTrue","environment.wind.directionMagnetic","environment.wind.angleTrueGround","environment.wind.angleTrueWater"],available:[],current:""},heading:{name:"Heading / COG",choices:[ie,"navigation.courseOverGroundTrue","navigation.courseOverGroundMagnetic","navigation.headingTrue","navigation.headingMagnetic"],available:[],current:""}};pathChoicesArray=Object.entries(this.pathChoices);availPaths;app=W(L);constructor(){}pathLabel(d){return d===ie?"Automatic":d.split(".").slice(-1)[0]}ngOnInit(){this.initEntries()}initEntries(){this.availPaths=new Map(Object.entries(this.app.data.vessels.prefAvailablePaths)),this.pathChoices.tws.current=this.app.config.units.preferredPaths.tws,this.pathChoices.twd.current=this.app.config.units.preferredPaths.twd,this.pathChoices.heading.current=this.app.config.units.preferredPaths.heading,Object.entries(this.pathChoices).forEach(a=>{let e=a[1];e.choices.forEach(g=>{(g===ie||this.availPaths.has(g))&&e.available.push(g)}),e.available.length===0&&e.available.push(e.choices[0])})}save(d){let a={};Object.entries(this.pathChoices).forEach(e=>{a[e[0]]=e[1].current}),this.chosen.emit({save:d,value:a})}static \u0275fac=function(a){return new(a||l)};static \u0275cmp=P({type:l,selectors:[["signalk-preferred-paths"]],inputs:{title:"title"},outputs:{chosen:"chosen"},decls:6,vars:1,consts:[["pathopt",""],[2,"font-size","10pt"],[1,"sk-details"],[1,"title"],[2,"margin","5px 0 5px 0"],[3,"change","name","value","checked"]],template:function(a,e){a&1&&(i(0,"fieldset")(1,"legend",1),s(2),n(),i(3,"div"),y(4,bt,7,1,"div",2,wt),n()()),a&2&&(o(2),C(e.title),o(2),S(e.pathChoicesArray))},dependencies:[ee,$],styles:[".sk-details[_ngcontent-%COMP%]{position:relative;display:flex;flex-direction:column;font-family:Roboto,Arial,Helvetica,sans-serif;font-size:10pt;max-height:100%;width:60vw;max-width:300px}.sk-details[_ngcontent-%COMP%] .title[_ngcontent-%COMP%]{background:left 1px -webkit-gradient(linear,left top,left bottom,from(rgba(0,0,0,.18)),color-stop(.65,transparent)) #b2bbc2e3;padding:3px 5px 0;margin-top:3px;font-weight:500;line-height:23px;color:#000}.sk-details[_ngcontent-%COMP%] .content[_ngcontent-%COMP%]{padding:0;line-height:23px;margin:0;flex:1 1 auto;overflow:auto}.sk-details[_ngcontent-%COMP%] .item[_ngcontent-%COMP%]{display:flex;flex-direction:row;line-height:26px;border-width:0 0 0 0;border-style:solid;border-color:gray;padding-left:5px}.sk-details[_ngcontent-%COMP%] .content[_ngcontent-%COMP%] .item[_ngcontent-%COMP%]{border-width:0 0 1px 0}.sk-details[_ngcontent-%COMP%] .sectionname[_ngcontent-%COMP%]{text-align:left;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;width:100%;font-weight:500}.sk-details[_ngcontent-%COMP%] .pathvalue[_ngcontent-%COMP%]{display:flex;flex-wrap:nowrap;width:100%;background-color:#fff}.sk-details[_ngcontent-%COMP%] .pathvalue[_ngcontent-%COMP%] .path[_ngcontent-%COMP%]{text-align:left;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;font-style:italic}.sk-details[_ngcontent-%COMP%] .pathvalue[_ngcontent-%COMP%] .value[_ngcontent-%COMP%]{text-align:center;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}"],changeDetection:0})};var v=(l,d)=>d[0],Tt=(l,d)=>d.id;function Dt(l,d){if(l&1&&(i(0,"mat-option",41),s(1),n()),l&2){let a=d.$implicit;h("value",a[0]),o(),C(a[1])}}function Et(l,d){if(l&1&&(i(0,"mat-option",41),s(1),n()),l&2){let a=d.$implicit;h("value",a[0]),o(),C(a[1])}}function Wt(l,d){if(l&1&&(i(0,"mat-option",128),s(1),n()),l&2){let a=d.$implicit;h("value",a.url)("matTooltip",a.description),o(),k(" ",a.name," ")}}function Vt(l,d){if(l&1){let a=V();i(0,"div",46)(1,"div",38)(2,"mat-form-field",39)(3,"mat-label"),s(4,"Select Instruments App"),n(),i(5,"mat-select",64),u("ngModelChange",function(g){m(a);let r=M();return f(r.facade.settings.display.plugins.instruments,g)||(r.facade.settings.display.plugins.instruments=g),c(g)}),p("selectionChange",function(){m(a);let g=M();return c(g.onInstrumentApp())}),y(6,Wt,2,3,"mat-option",128,D),n()()(),i(8,"div",38)(9,"mat-form-field",52)(10,"mat-label"),s(11,"Parameters"),n(),i(12,"input",129,21),u("ngModelChange",function(g){m(a);let r=M();return f(r.facade.settings.display.plugins.parameters,g)||(r.facade.settings.display.plugins.parameters=g),c(g)}),p("change",function(){m(a);let g=M();return c(g.persistModel("pluginParameters"))}),n()()(),i(14,"div",38)(15,"mat-checkbox",130),u("ngModelChange",function(g){m(a);let r=M();return f(r.facade.settings.display.plugins.startOnOpen,g)||(r.facade.settings.display.plugins.startOnOpen=g),c(g)}),p("change",function(){m(a);let g=M();return c(g.persistModel("pluginStartOnOpen"))}),s(16," Halt App on hide "),n()(),i(17,"div",38)(18,"button",131),p("click",function(){m(a);let g=M();return c(g.toggleFavourites())}),i(19,"mat-icon"),s(20,"star"),n(),s(21," FAVOURITES "),n()()()}if(l&2){let a=M();o(5),_("ngModel",a.facade.settings.display.plugins.instruments),o(),S(a.facade.applicationList),o(6),h("disabled",a.facade.settings.display.plugins.instruments===null),_("ngModel",a.facade.settings.display.plugins.parameters),o(3),_("ngModel",a.facade.settings.display.plugins.startOnOpen)}}function kt(l,d){if(l&1&&(i(0,"mat-list-option",133),s(1),n()),l&2){let a=d.$implicit,e=M(2);h("disabled",a.url==e.facade.settings.display.plugins.instruments)("selected",e.facade.settings.display.plugins.favourites.includes(a.url))("value",a.url),o(),k(" ",a.name," ")}}function Pt(l,d){if(l&1){let a=V();i(0,"div",37)(1,"div",38)(2,"div",110),E(3,"br"),s(4,"Select Favourite Apps: "),n(),E(5,"mat-divider"),i(6,"mat-selection-list",132,22),p("selectionChange",function(g){m(a);let r=w(7),t=M();return c(t.onFavSelected(g,r))}),y(8,kt,2,4,"mat-list-option",133,D),n()()()}if(l&2){let a=M();o(8),S(a.facade.favouritesList)}}function Lt(l,d){if(l&1&&(i(0,"mat-option",41),s(1),n()),l&2){let a=d.$implicit;h("value",a[0]),o(),C(a[1])}}function xt(l,d){l&1&&(i(0,"mat-error"),s(1,"Please enter a number >= 0"),n())}function Ot(l,d){l&1&&(i(0,"mat-error"),s(1,"Please enter a number >= 1"),n())}function Bt(l,d){if(l&1&&(i(0,"mat-option",41),s(1),n()),l&2){let a=d.$implicit;h("value",a[0]),o(),C(a[1])}}function It(l,d){if(l&1&&(i(0,"mat-option",41),s(1),n()),l&2){let a=d.$implicit;h("value",a[0]),o(),C(a[1])}}function Ft(l,d){if(l&1&&(i(0,"mat-option",41),s(1),n()),l&2){let a=d.$implicit;h("value",a[0]),o(),C(a[1])}}function At(l,d){if(l&1&&(i(0,"mat-option",41),s(1),n()),l&2){let a=d.$implicit;h("value",a[0]),o(),C(a[1])}}function Nt(l,d){if(l&1&&(i(0,"mat-option",41),s(1),n()),l&2){let a=d.$implicit;h("value",a[0]),o(),C(a[1])}}function Rt(l,d){if(l&1&&(i(0,"mat-option",41),s(1),n()),l&2){let a=d.$implicit;h("value",a[0]),o(),C(a[1])}}function Ut(l,d){if(l&1&&(i(0,"mat-option",41),s(1),n()),l&2){let a=d.$implicit;h("value",a[0]),o(),C(a[1])}}function Gt(l,d){if(l&1){let a=V();i(0,"div",38)(1,"mat-form-field",39)(2,"mat-label"),s(3,"Position display format"),n(),i(4,"mat-select",134),u("ngModelChange",function(g){m(a);let r=M();return f(r.facade.settings.units.positionFormat,g)||(r.facade.settings.units.positionFormat=g),c(g)}),p("selectionChange",function(){m(a);let g=M();return c(g.persistModel())}),y(5,Ut,2,2,"mat-option",41,D),n()()()}if(l&2){let a=M();o(4),_("ngModel",a.facade.settings.units.positionFormat),o(),S(a.options.preferredValues.coords)}}function Ht(l,d){if(l&1&&(i(0,"mat-option",41),s(1),n()),l&2){let a=d.$implicit;h("value",a[0]),o(),C(a[1])}}function Zt(l,d){if(l&1){let a=V();i(0,"div",38)(1,"mat-form-field",39)(2,"mat-label"),s(3,"Prefer True / Magnetic values"),n(),i(4,"mat-select",135),u("ngModelChange",function(g){m(a);let r=M();return f(r.facade.settings.units.headingAttribute,g)||(r.facade.settings.units.headingAttribute=g),c(g)}),p("selectionChange",function(){m(a);let g=M();return c(g.persistModel("headingAttribute"))}),y(5,Ht,2,2,"mat-option",41,D),n()()()}if(l&2){let a=M();o(4),_("ngModel",a.facade.settings.units.headingAttribute),o(),S(a.options.preferredValues.heading)}}function Kt(l,d){if(l&1&&(i(0,"mat-option",41),s(1),n()),l&2){let a=d.$implicit;h("value",a),o(),C(a)}}function zt(l,d){if(l&1&&(i(0,"mat-option",41),s(1),n()),l&2){let a=d.$implicit;h("value",a[0]),o(),C(a[1])}}function qt(l,d){if(l&1&&(i(0,"mat-option",41),s(1),n()),l&2){let a=d.$implicit;h("value",a[0]),o(),C(a[1])}}function jt(l,d){if(l&1){let a=V();i(0,"mat-form-field",39)(1,"mat-label"),s(2,"Resume Following After"),n(),i(3,"mat-select",136),u("ngModelChange",function(g){m(a);let r=M();return f(r.facade.settings.map.refollowDelay,g)||(r.facade.settings.map.refollowDelay=g),c(g)}),p("selectionChange",function(){m(a);let g=M();return c(g.persistModel())}),y(4,qt,2,2,"mat-option",41,v),n()()}if(l&2){let a=M();o(3),_("ngModel",a.facade.settings.map.refollowDelay),o(),S(a.options.map.refollowDelay)}}function Xt(l,d){if(l&1&&(i(0,"mat-option",41),s(1),n()),l&2){let a=d.$implicit;h("value",a[0]),o(),C(a[1])}}function Yt(l,d){if(l&1&&(i(0,"mat-option",41),s(1),n()),l&2){let a=d.$implicit;h("value",a[0]),o(),C(a[1])}}function Jt(l,d){if(l&1&&(i(0,"mat-option",41),s(1),n()),l&2){let a=d.$implicit;h("value",a[0]),o(),C(a[1])}}function Qt(l,d){if(l&1&&(i(0,"mat-option",41),s(1),n()),l&2){let a=d.$implicit;h("value",a),o(),C(a)}}function $t(l,d){l&1&&(i(0,"mat-error"),s(1," Please enter a positive number "),n())}function ei(l,d){l&1&&(i(0,"mat-error"),s(1," Please enter a positive number "),n())}function ti(l,d){l&1&&(i(0,"mat-error"),s(1," Please enter a positive number "),n())}function ii(l,d){if(l&1&&(i(0,"mat-option",41),s(1),n()),l&2){let a=d.$implicit;h("value",a[0]),o(),C(a[1])}}function ni(l,d){l&1&&(i(0,"mat-error"),s(1," Please enter a number > 0 "),n())}function ai(l,d){if(l&1&&(i(0,"mat-option",41),s(1),n()),l&2){let a=d.$implicit;h("value",a),o(),C(a)}}function oi(l,d){if(l&1&&(i(0,"mat-option",41),s(1),n()),l&2){let a=d.$implicit;h("value",a[0]),o(),C(a[1])}}function ri(l,d){if(l&1&&(i(0,"mat-radio-button",41),E(1,"img",137),s(2),n()),l&2){let a=d.$implicit;h("value",a[0]),o(),he(`transform: scale(${a[0]})`),o(),k(" (",a[1],") ")}}function si(l,d){l&1&&(i(0,"mat-error"),s(1," Please enter a value between -90 and 90 (max 9 decimals) "),n())}function li(l,d){l&1&&(i(0,"mat-error"),s(1," Please enter a value between -180 and 180 (max 9 decimals) "),n())}function di(l,d){if(l&1&&(i(0,"mat-option",41),s(1),n()),l&2){let a=d.$implicit;h("value",a[0]),o(),C(a[1])}}function gi(l,d){if(l&1&&(i(0,"mat-option",41),s(1),n()),l&2){let a=d.$implicit;h("value",a[0]),o(),C(a[1])}}function mi(l,d){if(l&1&&(i(0,"mat-option",41),s(1),n()),l&2){let a=d.$implicit;h("value",a),o(),C(a)}}function ci(l,d){if(l&1&&(i(0,"mat-option",41),s(1),n()),l&2){let a=d.$implicit;h("value",a),o(),C(a)}}function pi(l,d){l&1&&(i(0,"mat-error"),s(1," Please enter a number >= 1. "),n())}function _i(l,d){if(l&1&&(i(0,"mat-option",41),s(1),n()),l&2){let a=d.$implicit;h("value",a[0]),o(),C(a[1])}}function fi(l,d){if(l&1&&(i(0,"mat-option",41),s(1),n()),l&2){let a=d.$implicit;h("value",a[0]),o(),C(a[1])}}function ui(l,d){if(l&1&&(i(0,"mat-option",41),s(1),n()),l&2){let a=d.$implicit;h("value",a[0]),o(),C(a[1])}}function hi(l,d){if(l&1&&(i(0,"mat-option",41),s(1),n()),l&2){let a=d.$implicit;h("value",a[0]),o(),C(a[1])}}function yi(l,d){if(l&1&&(i(0,"mat-option",41),s(1),n()),l&2){let a=d.$implicit;h("value",a[0]),o(),C(a[1])}}function Si(l,d){if(l&1&&(i(0,"mat-option",41),s(1),n()),l&2){let a=d.$implicit;h("value",a[0]),o(),C(a[1])}}function Ci(l,d){if(l&1&&(i(0,"mat-option",41),s(1),n()),l&2){let a=d.$implicit;h("value",a),o(),C(a)}}function Mi(l,d){if(l&1&&(i(0,"mat-option",41),s(1),n()),l&2){let a=d.$implicit;h("value",a[0]),o(),C(a[1])}}function wi(l,d){if(l&1&&(i(0,"mat-option",41),s(1),n()),l&2){let a=d.$implicit;h("value",a),o(),C(a)}}function vi(l,d){if(l&1&&(i(0,"mat-option",41),s(1),n()),l&2){let a=d.$implicit;h("value",a),o(),C(a)}}function bi(l,d){if(l&1){let a=V();i(0,"button",138),p("click",function(){m(a),M();let g=w(550);return c(g.value="")}),i(1,"mat-icon"),s(2,"close"),n()()}}function Ti(l,d){if(l&1&&(i(0,"mat-list-option",112),s(1),n()),l&2){let a=d.$implicit,e=M();h("selected",e.facade.settings.resources.paths.includes(a))("value",a),o(),k(" ",a," ")}}function Di(l,d){if(l&1&&(i(0,"mat-option",41),s(1),n()),l&2){let a=d.$implicit;h("value",a.id),o(),C(a.name)}}function Ei(l,d){if(l&1){let a=V();i(0,"mat-tab",113)(1,"div",32)(2,"div",33)(3,"div",125)(4,"div",35),s(5,"RADAR SETTINGS"),n(),i(6,"mat-card",36)(7,"div",46)(8,"div",38)(9,"mat-form-field",139)(10,"mat-label"),s(11,"Radar Devices"),n(),i(12,"mat-select",140,23),u("ngModelChange",function(g){m(a);let r=M();return f(r.facade.settings.radars.deviceId,g)||(r.facade.settings.radars.deviceId=g),c(g)}),p("selectionChange",function(){m(a);let g=M();return c(g.doRadar())}),y(14,Di,2,2,"mat-option",41,Tt),n()()(),i(16,"div",38)(17,"button",141),p("click",function(){m(a);let g=M();return c(g.refreshRadars())}),i(18,"mat-icon"),s(19," refresh"),n(),s(20," REFRESH "),n()()()()()()()()}if(l&2){let a=M();o(12),h("disabled",!a.radarList().length||a.app.uiCtrl().radarLayer),_("ngModel",a.facade.settings.radars.deviceId),o(2),S(a.radarList())}}function Wi(l,d){if(l&1&&(i(0,"mat-option",41),s(1),n()),l&2){let a=d.$implicit;h("value",a[0]),o(),C(a[1])}}function Vi(l,d){l&1&&(i(0,"mat-error"),s(1," Value required. "),n())}var mt=class l{show={favourites:I(!1)};options;centerOffsetLimit=je;aisStateFilter={moored:!1,anchored:!1};formattedNumberModel={rangeCirclesDistance:1e3};unitsChangedSignal=I(0);radarList=I([]);saveOnClose=!1;facade=W(lt);myElement=W(ue);dialogRef=W(Se);wakeLock=W(qe);s57=W(Ye);app=W(L);radarApi=W(Qe);constructor(){this.options=new st,fe(()=>{this.unitsChangedSignal(),this.formatNumberModel()})}ngOnInit(){this.facade.refresh(),this.facade.settings.selections.aisState.forEach(d=>{d in this.aisStateFilter&&(this.aisStateFilter[d]=!0)}),this.refreshRadars()}refreshRadars(){this.radarApi.listRadars().then(d=>{this.radarList.set(d)}).catch(()=>{this.radarList.set([])})}formatNumberModel(){this.formattedNumberModel={rangeCirclesDistance:this.facade.settings.units.distance==="kilometer"?Math.floor(this.facade.settings.vessels.rangeCirclesDistance/1e3):Math.floor(B.transform(this.facade.settings.vessels.rangeCirclesDistance,"m","naut-mile"))}}raiseChange(){this.app.alignUnitPrefs(this.app.serverConfig.unitPreferences()),this.unitsChangedSignal.update(d=>d+1)}handleClose(){this.saveOnClose&&this.persistModel(),this.dialogRef.close()}doWakelock(d){this.persistModel(),d?this.wakeLock.disable():this.wakeLock.enable()}doS57(d){this.facade.settings.map.s57Options.depthUnit=this.facade.settings.units.depth,d?this.parseNumber(d):this.persistModel(),this.s57.setOptions(this.facade.settings.map.s57Options)}doRadar(){this.radarApi.init(this.facade.settings.radars.deviceId).then(d=>{d&&this.persistModel()})}onLineStyle(d,a){let e=this.facade.settings.vessels.selfLines[d];e&&(e.color=a.config.color,e.dash=a.config.dash,e.weight=a.config.weight,this.app.selfLines.update(g=>{let r=Object.assign({},g);return r[d]=a.lineStyle,r}),this.persistModel())}toggleFavourites(){this.show.favourites.update(d=>!d)}parseCenterOffset(d){d.reset(typeof d.model=="number"?Xe(d.model):0),this.persistModel()}parseNumber(d,a){if(typeof d.model!="number"){d.reset(this.fallbackToDefault());return}!a&&d.model<0&&d.reset(Math.abs(d.model)),this.persistModel()}parseFormattedNumber(d,a){typeof d.model=="number"&&(!a&&d.model<0&&d.reset(Math.abs(d.model)),this.facade.settings.vessels.rangeCirclesDistance=this.facade.settings.units.distance==="kilometer"?Math.floor(this.formattedNumberModel.rangeCirclesDistance*1e3):Math.floor(B.nauticalMilesToKm(this.formattedNumberModel.rangeCirclesDistance)*1e3),this.persistModel())}fallbackToDefault(){let d=Je();if(typeof this.facade.settings.display.statusBar.referenceSpeed!="number")return d.display.statusBar.referenceSpeed;if(typeof this.facade.settings.display.statusBar.tapFadeSpeed!="number")return d.display.statusBar.tapFadeSpeed;if(typeof this.facade.settings.map.s57Options.shallowDepth!="number")return d.map.s57Options.shallowDepth;if(typeof this.facade.settings.map.s57Options.safetyDepth!="number")return d.map.s57Options.safetyDepth;if(typeof this.facade.settings.map.s57Options.deepDepth!="number")return d.map.s57Options.deepDepth;if(typeof this.facade.fixedPosition[0]!="number"||typeof this.facade.fixedPosition[1]!="number")return 0;if(typeof this.facade.settings.course.arrivalCircle!="number")return d.course.arrivalCircle}persistModel(d){this.facade.applySettings(),this.facade.emitChangeEvent(d)}get speedUnitSymbol(){return B.getSymbol(this.facade.settings.units.speed)}deferPersist(d){this.saveOnClose=!0,this.facade.emitChangeEvent(d)}onInstrumentApp(){this.persistModel("pluginInstruments"),this.facade.buildFavouritesList()}onPreferredPaths(d){d.save&&(this.facade.settings.units.preferredPaths=d.value,this.persistModel())}onFavSelected(d,a){this.facade.settings.display.plugins.favourites=a.selectedOptions.selected.map(e=>e.value),this.persistModel()}onAisStateFilter(){let d=[];for(let a in this.aisStateFilter)this.aisStateFilter[a]&&d.push(a);this.facade.settings.selections.aisState=[].concat(d),this.persistModel()}onResPathSelected(d){this.facade.settings.resources.paths=d.selectedOptions.selected.map(a=>a.value),this.facade.settings.resources.paths.forEach(a=>{a in this.facade.settings.selections.resourceSets||(this.facade.settings.selections.resourceSets[a]=[])}),this.persistModel()}clearAuthToken(){this.facade.clearToken()}renderSymbol(d){return B.getSymbol(d)}static \u0275fac=function(a){return new(a||l)};static \u0275cmp=P({type:l,selectors:[["settings-dialog"]],decls:649,vars:137,consts:[["refspeed","ngModel"],["tapfade","ngModel"],["serverprefs",""],["distunits",""],["centerOffsetY","ngModel"],["centerOffsetX","ngModel"],["s57shallowDepth","ngModel"],["s57safetyDepth","ngModel"],["s57deepDepth","ngModel"],["coursearrivalcircle","ngModel"],["courseautoadvance",""],["courseautoadvanceon",""],["vesselfixedlocationmode",""],["fixedlat","ngModel"],["fixedlon","ngModel"],["rangeCirclesDistance","ngModel"],["notesrootfilter",""],["respath",""],["skmaxradius",""],["videourl","ngModel"],["experiments",""],["instparams","ngModel"],["favs",""],["radarlist",""],[2,"background-color","transparent"],[1,"dialog-icon"],[2,"flex","1 1 auto","text-align","center"],[2,"text-align","right"],["mat-icon-button","",3,"click"],["mat-dialog-content",""],["dynamicHeight","false","mat-stretch-tabs","false","mat-align-tabs","start"],["label","Display"],[1,"theme-page","settings"],[1,"theme-panel"],["id","sectDisplay",1,"setting-group"],[1,"setting-group-title"],[1,"setting-card"],[1,"setting-card-row",2,"padding-bottom","10px"],[1,"setting-card-row-item"],[2,"width","100%"],["matTooltip","Dark Mode setting.",3,"ngModelChange","selectionChange","ngModel"],[3,"value"],["label","after","matTooltip","Auto-set using environment.mode value.",3,"ngModelChange","change","ngModel"],["matTooltip","Action button selection.",3,"ngModelChange","selectionChange","ngModel"],["label","after","matTooltip","Disable wake lock.",3,"ngModelChange","change","disabled","ngModel"],["label","after","matTooltip","Un-check to prefer dialogs over the information panel",3,"ngModelChange","change","ngModel"],[1,"setting-card-row"],["matTooltip","Do not play sounds","label","after",3,"ngModelChange","change","ngModel"],["label","after",3,"ngModelChange","change","ngModel"],["matTooltip","Period of time out of alarm state before re-triggering.",3,"ngModelChange","selectionChange","ngModel","disabled"],[1,"setting-group"],["label","after","matTooltip","Show the bearing, distance and ETA from the vessel to the cursor in the status bar. Click or tap the chart to hold the readout on that point.",3,"ngModelChange","change","ngModel"],["floatLabel","always",2,"width","100%"],["matInput","","type","number","min","0","matTooltip","Boat speed used to estimate ETA when SOG is unavailable (e.g. at anchor or hove to).",3,"ngModelChange","change","disabled","ngModel"],["matInput","","type","number","min","1","step","0.5","matTooltip","How long the marker left by a click or tap takes to fade. The readout stays held on that point until it does.",3,"ngModelChange","change","disabled","ngModel"],["matTooltip","Glyph used to display wind direction and speed.",3,"ngModelChange","selectionChange","ngModel"],["label","Units"],["id","sectUnits",1,"setting-group"],["label","after","matTooltip","Use the unit preferences configured on the server.",3,"ngModelChange","change","disabled","ngModel"],[3,"ngModelChange","selectionChange","disabled","ngModel"],["title","Preferred Paths",3,"chosen"],["label","Map"],["id","sectMap",1,"setting-group"],["aria-hidden","true",1,"setting-field-group-title"],[3,"ngModelChange","selectionChange","ngModel"],[1,"setting-field-group-title"],[1,"setting-field-group"],["floatLabel","always"],["matInput","","type","number","matTooltip","Where the vessel sits up or down the screen, as a percentage of the distance to the edge. Positive looks ahead (vessel lower); negative looks behind.",3,"ngModelChange","change","min","max","ngModel"],["matInput","","type","number","matTooltip","Where the vessel sits left or right of centre, as a percentage of the distance to the edge. Positive shifts the map right (vessel left).",3,"ngModelChange","change","min","max","ngModel"],["matTooltip","Add close button to popovers","label","after",3,"ngModelChange","change","ngModel"],["matTooltip","Double Click map to zoom","label","after",3,"ngModelChange","change","ngModel"],["matTooltip","Keep tiles visible when zooming past chart maxZoom","label","after",3,"ngModelChange","change","ngModel"],[1,"setting-card-row-item","setting-card-row-stack"],["matTooltip","What panning the chart does while following the vessel.",3,"ngModelChange","selectionChange","ngModel"],["placeholder","Graphicsstyle",3,"ngModelChange","selectionChange","ngModel"],["placeholder","Boundaries",3,"ngModelChange","selectionChange","ngModel"],["placeholder","Color Table",3,"ngModelChange","selectionChange","ngModel"],["placeholder","Colors",3,"ngModelChange","selectionChange","ngModel"],["matInput","","type","number","required","","min","0",3,"ngModelChange","change","ngModel"],["matSuffix",""],["multiple","","placeholder","Layers",3,"ngModelChange","selectionChange","ngModel"],["label","Course"],["id","sectCourse",1,"setting-group"],["matTooltip","Select the trigger for advancing to next point.",3,"ngModelChange","selectionChange","disabled","ngModel"],["matTooltip","Period of time before destination is advanced to next waypoint.",3,"ngModelChange","selectionChange","disabled","ngModel"],["label","Vessels"],["id","sectVessels",1,"setting-group"],[3,"ngModelChange","change","ngModel"],["label","after","matTooltip","e.g. Building, Camp, etc.",3,"ngModelChange","change","ngModel"],["matInput","","type","number","required","","pattern","^-?([1-8]?[0-9])(\\.\\d{1,9})?$","min","-90","max","90",3,"ngModelChange","change","ngModel","disabled"],["matInput","","type","number","required","","pattern","^-?(1[0-7]?[0-9]|[1-9]?[0-9])(\\.\\d{1,9})?$","min","-180","max","180",3,"ngModelChange","change","ngModel","disabled"],["matTooltip","Length of heading line.",3,"ngModelChange","selectionChange","ngModel"],[3,"selectionChange","color","dash","weight"],["matTooltip","Length of COG line.",3,"ngModelChange","selectionChange","ngModel"],[3,"ngModelChange","selectionChange","ngModel","disabled"],["label","after",3,"ngModelChange","change","ngModel","disabled"],["matInput","","type","number","required","","min","1",3,"ngModelChange","change","ngModel","disabled"],["matTooltip","Select to source trail data from the server","label","after",3,"ngModelChange","change","disabled","ngModel"],["discrete","","tickInterval","1","min","1","max","96",3,"disabled"],["matSliderThumb","",3,"ngModelChange","valueChange","ngModel"],["label","Resources"],["id","sectNotes",1,"setting-group"],[3,"valueChange","selectionChange","disabled","value"],["matInput","","type","text","placeholder","?radius=%note:radius%","matTooltip","Filter to apply when retrieving notes",3,"ngModelChange","change","ngModel"],["matSuffix","","mat-icon-button",""],["matTooltip","Allow group name editing.","label","after",3,"ngModelChange","change","ngModel"],["matTooltip","Require position information when adding notes to a group.","label","after",3,"ngModelChange","change","ngModel"],["label","after","matTooltip","Open Note details with a single click instead of showing the pop-up options",3,"ngModelChange","change","ngModel"],["id","sectResLayers",1,"setting-group"],[2,"font-style","italic"],["matTooltip","Select resource layers to show.",3,"selectionChange"],[3,"selected","value"],["label","Radar"],["label","Signal K"],["id","sectSKConnection",1,"setting-group"],[2,"font-size","smaller"],["matToolTip","Check to receive other vessel data","label","after",3,"ngModelChange","change","ngModel"],["matToolTip","Check to receive AtoN data","matTooltipPosition","below","label","after",3,"ngModelChange","change","ngModel"],["matTooltip","Check to receive aircraft data","matTooltipPosition","below","label","after",3,"ngModelChange","change","ngModel"],["matToolTip","Check to receive SaR data","matTooltipPosition","below","label","after",3,"ngModelChange","change","ngModel"],["matToolTip","Check to receive Weather / Meteo data","matTooltipPosition","below","label","after",3,"ngModelChange","change","ngModel"],["matToolTip","Only include AIS targets within this distance","matTooltipPosition","below",3,"ngModelChange","selectionChange","ngModel"],["mat-icon-button","","matTooltip","Clear Auth Token",3,"click"],["label","Experiments"],["id","sectExperiments",1,"setting-group"],["matInput","","type","text","required","","placeholder","Video stream URL","matTooltip","Enter URL of video stream",3,"ngModelChange","change","disabled","ngModel"],["matTooltip","Enable ALL experimental Features","label","after",3,"ngModelChange","change","ngModel"],["matTooltipPosition","right",3,"value","matTooltip"],["matInput","","type","text","placeholder","e.g. ?layout=mylayout","matTooltip","Enter parameters to pass to Instrument App",3,"ngModelChange","change","disabled","ngModel"],["matTooltip","Stop instrument app when hidden","label","after",3,"ngModelChange","change","ngModel"],["mat-raised-button","","matTooltip","Favourite Apps","label","after",3,"click"],[3,"selectionChange"],[3,"disabled","selected","value"],["matTooltip","Display position in this format",3,"ngModelChange","selectionChange","ngModel"],["matTooltip","Preferred value type for paths not in Preferred Paths above",3,"ngModelChange","selectionChange","ngModel"],["matTooltip","Resume following the vessel once the chart has been left idle for this long.",3,"ngModelChange","selectionChange","ngModel"],["src","./assets/img/vessels/self.png"],["matSuffix","","mat-icon-button","",3,"click"],[2,"width","stretch"],["matToolTip","Select radar device","matTooltipPosition","below",3,"ngModelChange","selectionChange","disabled","ngModel"],["mat-raised-button","",3,"click"]],template:function(a,e){if(a&1){let g=V();i(0,"mat-toolbar",24)(1,"span",25)(2,"mat-icon"),s(3,"settings"),n()(),i(4,"span",26),s(5,"Settings"),n(),i(6,"span",27)(7,"button",28),p("click",function(){return e.handleClose()}),i(8,"mat-icon"),s(9,"close"),n()()()(),i(10,"div",29)(11,"mat-tab-group",30)(12,"mat-tab",31)(13,"div",32)(14,"div",33)(15,"div",34)(16,"div",35),s(17,"DISPLAY"),n(),i(18,"mat-card",36)(19,"mat-card-content")(20,"div",37)(21,"div",38)(22,"mat-form-field",39)(23,"mat-label"),s(24,"Dark Mode setting"),n(),i(25,"mat-select",40),u("ngModelChange",function(t){return m(g),f(e.facade.settings.display.darkMode.source,t)||(e.facade.settings.display.darkMode.source=t),c(t)}),p("selectionChange",function(){return e.persistModel("darkTheme")}),y(26,Dt,2,2,"mat-option",41,v),n()()(),i(28,"div",38)(29,"mat-checkbox",42),u("ngModelChange",function(t){return m(g),f(e.facade.settings.display.nightMode,t)||(e.facade.settings.display.nightMode=t),c(t)}),p("change",function(){return e.persistModel()}),s(30," Auto-set Night Mode "),n()(),i(31,"div",38)(32,"mat-form-field",39)(33,"mat-label"),s(34,"Action Button"),n(),i(35,"mat-select",43),u("ngModelChange",function(t){return m(g),f(e.facade.settings.display.fab,t)||(e.facade.settings.display.fab=t),c(t)}),p("selectionChange",function(){return e.persistModel()}),y(36,Et,2,2,"mat-option",41,v),n()()(),i(38,"div",38)(39,"mat-checkbox",44),u("ngModelChange",function(t){return m(g),f(e.facade.settings.display.disableWakelock,t)||(e.facade.settings.display.disableWakelock=t),c(t)}),p("change",function(t){return e.doWakelock(t.checked)}),s(40," Allow Device to Sleep "),n()(),i(41,"div",38)(42,"mat-checkbox",45),u("ngModelChange",function(t){return m(g),f(e.facade.settings.display.preferInfoPanel,t)||(e.facade.settings.display.preferInfoPanel=t),c(t)}),p("change",function(){return e.persistModel()}),s(43," Prefer Info-Panel "),n()()()()(),E(44,"br"),i(45,"mat-card",36)(46,"mat-card-content"),b(47,Vt,22,4,"div",46),b(48,Pt,10,0,"div",37),n()(),E(49,"br"),n(),i(50,"div",34)(51,"div",35),s(52,"SOUND"),n(),i(53,"mat-card",36)(54,"mat-card-content")(55,"div",37)(56,"div",38)(57,"mat-checkbox",47),u("ngModelChange",function(t){return m(g),f(e.facade.settings.display.muteSound,t)||(e.facade.settings.display.muteSound=t),c(t)}),p("change",function(){return e.persistModel()}),s(58," Do not Play Sounds "),n()(),i(59,"div",38)(60,"mat-checkbox",48),u("ngModelChange",function(t){return m(g),f(e.facade.settings.display.depthAlarm.enabled,t)||(e.facade.settings.display.depthAlarm.enabled=t),c(t)}),p("change",function(){return e.persistModel()}),s(61," Show DEPTH Alarms "),n()(),i(62,"div",38)(63,"mat-form-field",39)(64,"mat-label"),s(65,"Alarm Smoothing Time"),n(),i(66,"mat-select",49),u("ngModelChange",function(t){return m(g),f(e.facade.settings.display.depthAlarm.smoothing,t)||(e.facade.settings.display.depthAlarm.smoothing=t),c(t)}),p("selectionChange",function(){return e.persistModel()}),y(67,Lt,2,2,"mat-option",41,v),n()()()()()()(),i(69,"div",50)(70,"div",35),s(71,"STATUS BAR OPTIONS"),n(),i(72,"mat-card",36)(73,"mat-card-content")(74,"div",37)(75,"div",38)(76,"mat-checkbox",51),u("ngModelChange",function(t){return m(g),f(e.facade.settings.display.statusBar.liveEta,t)||(e.facade.settings.display.statusBar.liveEta=t),c(t)}),p("change",function(){return e.persistModel()}),s(77," Live ETA at cursor "),n()(),i(78,"div",38)(79,"mat-form-field",52)(80,"mat-label"),s(81),n(),i(82,"input",53,0),u("ngModelChange",function(t){return m(g),f(e.facade.settings.display.statusBar.referenceSpeed,t)||(e.facade.settings.display.statusBar.referenceSpeed=t),c(t)}),p("change",function(){m(g);let t=w(83);return c(e.parseNumber(t))}),n(),b(84,xt,2,0,"mat-error"),n()(),i(85,"div",38)(86,"mat-form-field",52)(87,"mat-label"),s(88,"Tap Fade Speed (s)"),n(),i(89,"input",54,1),u("ngModelChange",function(t){return m(g),f(e.facade.settings.display.statusBar.tapFadeSpeed,t)||(e.facade.settings.display.statusBar.tapFadeSpeed=t),c(t)}),p("change",function(){m(g);let t=w(90);return c(e.parseNumber(t))}),n(),b(91,Ot,2,0,"mat-error"),n()()()()()(),i(92,"div",50)(93,"div",35),s(94,"WEATHER"),n(),i(95,"mat-card",36)(96,"mat-card-content")(97,"div",37)(98,"div",38)(99,"mat-form-field",39)(100,"mat-label"),s(101,"Wind indicator"),n(),i(102,"mat-select",55),u("ngModelChange",function(t){return m(g),f(e.facade.settings.display.windIndicator,t)||(e.facade.settings.display.windIndicator=t),c(t)}),p("selectionChange",function(){return e.persistModel()}),y(103,Bt,2,2,"mat-option",41,v),n()()()()()()()()()(),i(105,"mat-tab",56)(106,"div",32)(107,"div",33)(108,"div",57)(109,"div",35),s(110,"UNITS & VALUES"),n(),i(111,"mat-card",36)(112,"mat-card-content")(113,"div",37)(114,"div",38)(115,"fieldset")(116,"legend")(117,"mat-checkbox",58,2),u("ngModelChange",function(t){return m(g),f(e.facade.settings.units.useServerPrefs,t)||(e.facade.settings.units.useServerPrefs=t),c(t)}),p("change",function(){return m(g),e.raiseChange(),c(e.persistModel())}),s(119," Use Server Unit Preferences "),n()(),i(120,"div",37)(121,"div",38)(122,"mat-form-field",39)(123,"mat-label"),s(124,"Distance units"),n(),i(125,"mat-select",59,3),u("ngModelChange",function(t){return m(g),f(e.facade.settings.units.distance,t)||(e.facade.settings.units.distance=t),c(t)}),p("selectionChange",function(){return m(g),e.raiseChange(),c(e.persistModel())}),y(127,It,2,2,"mat-option",41,v),n()()(),i(129,"div",38)(130,"mat-form-field",39)(131,"mat-label"),s(132,"Depth units"),n(),i(133,"mat-select",59),u("ngModelChange",function(t){return m(g),f(e.facade.settings.units.depth,t)||(e.facade.settings.units.depth=t),c(t)}),p("selectionChange",function(){return m(g),e.raiseChange(),c(e.doS57())}),y(134,Ft,2,2,"mat-option",41,v),n()()(),i(136,"div",38)(137,"mat-form-field",39)(138,"mat-label"),s(139,"Length units"),n(),i(140,"mat-select",59),u("ngModelChange",function(t){return m(g),f(e.facade.settings.units.length,t)||(e.facade.settings.units.length=t),c(t)}),p("selectionChange",function(){return m(g),e.raiseChange(),c(e.persistModel())}),y(141,At,2,2,"mat-option",41,v),n()()(),i(143,"div",38)(144,"mat-form-field",39)(145,"mat-label"),s(146,"Temperature units"),n(),i(147,"mat-select",59),u("ngModelChange",function(t){return m(g),f(e.facade.settings.units.temperature,t)||(e.facade.settings.units.temperature=t),c(t)}),p("selectionChange",function(){return m(g),e.raiseChange(),c(e.persistModel())}),y(148,Nt,2,2,"mat-option",41,v),n()()(),i(150,"div",38)(151,"mat-form-field",39)(152,"mat-label"),s(153,"Speed units"),n(),i(154,"mat-select",59),u("ngModelChange",function(t){return m(g),f(e.facade.settings.units.speed,t)||(e.facade.settings.units.speed=t),c(t)}),p("selectionChange",function(){return m(g),e.raiseChange(),c(e.persistModel())}),y(155,Rt,2,2,"mat-option",41,v),n()()()()()()(),i(157,"div",37),b(158,Gt,7,1,"div",38),b(159,Zt,7,1,"div",38),i(160,"div",38)(161,"signalk-preferred-paths",60),p("chosen",function(t){return e.onPreferredPaths(t)}),n()()()()()()()()(),i(162,"mat-tab",61)(163,"div",32)(164,"div",33)(165,"div",62)(166,"div",35),s(167,"MAP"),n(),i(168,"mat-card")(169,"mat-card-content")(170,"div",37)(171,"div",38)(172,"div",63),s(173," \xA0 "),n(),i(174,"mat-form-field",39)(175,"mat-label"),s(176,"Feature label zoom level"),n(),i(177,"mat-select",64),u("ngModelChange",function(t){return m(g),f(e.facade.settings.map.labelsMinZoom,t)||(e.facade.settings.map.labelsMinZoom=t),c(t)}),p("selectionChange",function(){return e.persistModel()}),y(178,Kt,2,2,"mat-option",41,D),n()()(),i(180,"div",38)(181,"div",65),s(182," Offset Vessel Center (%) "),n(),i(183,"div",66)(184,"mat-form-field",67)(185,"mat-label"),s(186,"Vertical"),n(),i(187,"input",68,4),u("ngModelChange",function(t){return m(g),f(e.facade.settings.map.centerOffset.y,t)||(e.facade.settings.map.centerOffset.y=t),c(t)}),p("change",function(){m(g);let t=w(188);return c(e.parseCenterOffset(t))}),n()(),i(189,"mat-form-field",67)(190,"mat-label"),s(191,"Horizontal"),n(),i(192,"input",69,5),u("ngModelChange",function(t){return m(g),f(e.facade.settings.map.centerOffset.x,t)||(e.facade.settings.map.centerOffset.x=t),c(t)}),p("change",function(){m(g);let t=w(193);return c(e.parseCenterOffset(t))}),n()()()(),i(194,"div",38)(195,"mat-checkbox",70),u("ngModelChange",function(t){return m(g),f(e.facade.settings.map.popoverMulti,t)||(e.facade.settings.map.popoverMulti=t),c(t)}),p("change",function(){return e.persistModel()}),s(196," Popovers close with button "),n()(),i(197,"div",38)(198,"mat-checkbox",71),u("ngModelChange",function(t){return m(g),f(e.facade.settings.map.doubleClickZoom,t)||(e.facade.settings.map.doubleClickZoom=t),c(t)}),p("change",function(){return e.persistModel()}),s(199," Double click to Zoom "),n()(),i(200,"div",38)(201,"mat-checkbox",72),u("ngModelChange",function(t){return m(g),f(e.facade.settings.map.overZoomTiles,t)||(e.facade.settings.map.overZoomTiles=t),c(t)}),p("change",function(){return e.persistModel()}),s(202," Keep tiles visible on max zoom "),n()(),i(203,"div",73)(204,"mat-form-field",39)(205,"mat-label"),s(206,"Map Pan When Following"),n(),i(207,"mat-select",74),u("ngModelChange",function(t){return m(g),f(e.facade.settings.map.panBehavior,t)||(e.facade.settings.map.panBehavior=t),c(t)}),p("selectionChange",function(){return e.persistModel()}),y(208,zt,2,2,"mat-option",41,v),n()(),b(210,jt,6,1,"mat-form-field",39),n()()()(),i(211,"div",35),s(212,"VECTOR CHARTS"),n(),i(213,"mat-card")(214,"mat-card-content")(215,"div",37)(216,"div",38)(217,"mat-form-field",39)(218,"mat-label"),s(219,"Graphics Style"),n(),i(220,"mat-select",75),u("ngModelChange",function(t){return m(g),f(e.facade.settings.map.s57Options.graphicsStyle,t)||(e.facade.settings.map.s57Options.graphicsStyle=t),c(t)}),p("selectionChange",function(){return e.doS57()}),y(221,Xt,2,2,"mat-option",41,v),n()()(),i(223,"div",38)(224,"mat-form-field",39)(225,"mat-label"),s(226,"Boundaries"),n(),i(227,"mat-select",76),u("ngModelChange",function(t){return m(g),f(e.facade.settings.map.s57Options.boundaries,t)||(e.facade.settings.map.s57Options.boundaries=t),c(t)}),p("selectionChange",function(){return e.doS57()}),y(228,Yt,2,2,"mat-option",41,v),n()()(),i(230,"div",38)(231,"mat-form-field",39)(232,"mat-label"),s(233,"Color Table (Requires refresh)"),n(),i(234,"mat-select",77),u("ngModelChange",function(t){return m(g),f(e.facade.settings.map.s57Options.colorTable,t)||(e.facade.settings.map.s57Options.colorTable=t),c(t)}),p("selectionChange",function(){return e.doS57()}),y(235,Jt,2,2,"mat-option",41,v),n()()(),i(237,"div",38)(238,"mat-form-field",39)(239,"mat-label"),s(240,"Colors"),n(),i(241,"mat-select",78),u("ngModelChange",function(t){return m(g),f(e.facade.settings.map.s57Options.colors,t)||(e.facade.settings.map.s57Options.colors=t),c(t)}),p("selectionChange",function(){return e.doS57()}),y(242,Qt,2,2,"mat-option",41,D),n()()()(),i(244,"div",37)(245,"div",38)(246,"mat-form-field",39)(247,"mat-label"),s(248,"Shallow depth"),n(),i(249,"input",79,6),u("ngModelChange",function(t){return m(g),f(e.facade.settings.map.s57Options.shallowDepth,t)||(e.facade.settings.map.s57Options.shallowDepth=t),c(t)}),p("change",function(){m(g);let t=w(250);return c(e.doS57(t))}),n(),b(251,$t,2,0,"mat-error"),i(252,"span",80),s(253,"m"),n()()(),i(254,"div",38)(255,"mat-form-field",39)(256,"mat-label"),s(257,"Safety depth"),n(),i(258,"input",79,7),u("ngModelChange",function(t){return m(g),f(e.facade.settings.map.s57Options.safetyDepth,t)||(e.facade.settings.map.s57Options.safetyDepth=t),c(t)}),p("change",function(){m(g);let t=w(259);return c(e.doS57(t))}),n(),b(260,ei,2,0,"mat-error"),i(261,"span",80),s(262,"m"),n()()(),i(263,"div",38)(264,"mat-form-field",39)(265,"mat-label"),s(266,"Deep depth"),n(),i(267,"input",79,8),u("ngModelChange",function(t){return m(g),f(e.facade.settings.map.s57Options.deepDepth,t)||(e.facade.settings.map.s57Options.deepDepth=t),c(t)}),p("change",function(){m(g);let t=w(268);return c(e.doS57(t))}),n(),b(269,ti,2,0,"mat-error"),i(270,"span",80),s(271,"m"),n()()(),i(272,"div",38)(273,"mat-form-field",39)(274,"mat-label"),s(275,"Layers"),n(),i(276,"mat-select",81),u("ngModelChange",function(t){return m(g),f(e.facade.settings.map.s57Options.otherLayers,t)||(e.facade.settings.map.s57Options.otherLayers=t),c(t)}),p("selectionChange",function(){return e.doS57()}),y(277,ii,2,2,"mat-option",41,v),n()()()()()()()()()(),i(279,"mat-tab",82)(280,"div",32)(281,"div",33)(282,"div",83)(283,"div",35),s(284,"COURSE"),n(),i(285,"mat-card",36)(286,"mat-card-content")(287,"div",37)(288,"div",38)(289,"mat-form-field",39)(290,"mat-label"),s(291,"Arrival Circle"),n(),i(292,"input",79,9),u("ngModelChange",function(t){return m(g),f(e.facade.settings.course.arrivalCircle,t)||(e.facade.settings.course.arrivalCircle=t),c(t)}),p("change",function(){m(g);let t=w(293);return c(e.parseNumber(t))}),n(),b(294,ni,2,0,"mat-error"),i(295,"span",80),s(296,"m"),n()()()(),i(297,"div",37)(298,"div",38)(299,"mat-checkbox",48,10),u("ngModelChange",function(t){return m(g),f(e.facade.settings.course.autoNextPointOnArrival,t)||(e.facade.settings.course.autoNextPointOnArrival=t),c(t)}),p("change",function(){return e.persistModel()}),s(301," Auto-advance to next point on arrival "),n()()(),i(302,"div",37)(303,"div",38)(304,"mat-form-field",39)(305,"mat-label"),s(306,"Notification type to use"),n(),i(307,"mat-select",84,11),u("ngModelChange",function(t){return m(g),f(e.facade.settings.course.autoNextPointTrigger,t)||(e.facade.settings.course.autoNextPointTrigger=t),c(t)}),p("selectionChange",function(){return e.persistModel()}),y(309,ai,2,2,"mat-option",41,D),n()()(),i(311,"div",38)(312,"mat-form-field",39)(313,"mat-label"),s(314,"Time to wait before advancing"),n(),i(315,"mat-select",85),u("ngModelChange",function(t){return m(g),f(e.facade.settings.course.autoNextPointDelay,t)||(e.facade.settings.course.autoNextPointDelay=t),c(t)}),p("selectionChange",function(){return e.persistModel()}),y(316,oi,2,2,"mat-option",41,v),n()()()()()()()()()(),i(318,"mat-tab",86)(319,"div",32)(320,"div",33)(321,"div",87)(322,"div",35),s(323,"VESSEL"),n(),i(324,"mat-card",36)(325,"mat-card-content")(326,"div",37)(327,"div",38)(328,"fieldset")(329,"legend"),s(330,"Vessel Icon Size"),n(),i(331,"div",37)(332,"div",38)(333,"mat-radio-group",88),u("ngModelChange",function(t){return m(g),f(e.facade.settings.vessels.iconScale,t)||(e.facade.settings.vessels.iconScale=t),c(t)}),p("change",function(){return e.persistModel()}),y(334,ri,3,4,"mat-radio-button",41,v),n()()()()()(),i(336,"div",38)(337,"fieldset")(338,"legend")(339,"mat-checkbox",89,12),u("ngModelChange",function(t){return m(g),f(e.facade.settings.vessels.fixedLocationMode,t)||(e.facade.settings.vessels.fixedLocationMode=t),c(t)}),p("change",function(){return e.persistModel()}),s(341," Fixed Location Mode "),n()(),i(342,"div",37)(343,"div",38)(344,"mat-form-field",67)(345,"mat-label"),s(346,"Latitude"),n(),i(347,"input",90,13),u("ngModelChange",function(t){return m(g),f(e.facade.fixedPosition[1],t)||(e.facade.fixedPosition[1]=t),c(t)}),p("change",function(){m(g);let t=w(348);return c(e.parseNumber(t,!0))}),n(),b(349,si,2,0,"mat-error"),n(),i(350,"mat-form-field",67)(351,"mat-label"),s(352,"Longitude"),n(),i(353,"input",91,14),u("ngModelChange",function(t){return m(g),f(e.facade.fixedPosition[0],t)||(e.facade.fixedPosition[0]=t),c(t)}),p("change",function(){m(g);let t=w(354);return c(e.parseNumber(t,!0))}),n(),b(355,li,2,0,"mat-error"),n()()()()()()(),E(356,"br"),i(357,"mat-card",36)(358,"mat-card-content")(359,"div",38)(360,"fieldset")(361,"legend"),s(362,"Vessel Lines:"),n(),i(363,"div",37)(364,"mat-checkbox",48),u("ngModelChange",function(t){return m(g),f(e.facade.settings.vessels.windVectors,t)||(e.facade.settings.vessels.windVectors=t),c(t)}),p("change",function(){return e.persistModel()}),s(365," Display Wind Vectors "),n(),i(366,"mat-checkbox",48),u("ngModelChange",function(t){return m(g),f(e.facade.settings.vessels.laylines,t)||(e.facade.settings.vessels.laylines=t),c(t)}),p("change",function(){return e.persistModel()}),s(367," Display Laylines "),n()(),i(368,"div",37)(369,"div",38)(370,"fieldset")(371,"legend"),s(372,"Heading Line"),n(),i(373,"div",37)(374,"div",38)(375,"mat-form-field")(376,"mat-label"),s(377,"Heading Line Length"),n(),i(378,"mat-select",92),u("ngModelChange",function(t){return m(g),f(e.facade.settings.vessels.selfLines.heading.length,t)||(e.facade.settings.vessels.selfLines.heading.length=t),c(t)}),p("selectionChange",function(){return e.persistModel()}),y(379,di,2,2,"mat-option",41,v),n()()(),i(381,"div",38)(382,"linestyle-select",93),p("selectionChange",function(t){return e.onLineStyle("heading",t)}),n()()()()()(),i(383,"div",37)(384,"div",38)(385,"fieldset")(386,"legend"),s(387,"COG Line"),n(),i(388,"div",37)(389,"div",38)(390,"mat-form-field")(391,"mat-label"),s(392,"COG Line Length"),n(),i(393,"mat-select",94),u("ngModelChange",function(t){return m(g),f(e.facade.settings.vessels.selfLines.cog.length,t)||(e.facade.settings.vessels.selfLines.cog.length=t),c(t)}),p("selectionChange",function(){return e.persistModel()}),y(394,gi,2,2,"mat-option",41,v),n()()(),i(396,"div",38)(397,"linestyle-select",93),p("selectionChange",function(t){return e.onLineStyle("cog",t)}),n()()()()()()()(),i(398,"div",38)(399,"fieldset")(400,"legend")(401,"mat-checkbox",48),u("ngModelChange",function(t){return m(g),f(e.facade.settings.vessels.rangeCircles,t)||(e.facade.settings.vessels.rangeCircles=t),c(t)}),p("change",function(){return e.persistModel()}),s(402," Display Range Circles "),n()(),i(403,"div",37)(404,"div",38)(405,"mat-form-field",39)(406,"mat-label"),s(407,"Number of Range Circles"),n(),i(408,"mat-select",95),u("ngModelChange",function(t){return m(g),f(e.facade.settings.vessels.rangeCircleCount,t)||(e.facade.settings.vessels.rangeCircleCount=t),c(t)}),p("selectionChange",function(){return e.persistModel()}),y(409,mi,2,2,"mat-option",41,D),n()()(),i(411,"div",38)(412,"mat-form-field",39)(413,"mat-label"),s(414,"Minimum Zoom Level"),n(),i(415,"mat-select",95),u("ngModelChange",function(t){return m(g),f(e.facade.settings.vessels.rangeCircleMinZoom,t)||(e.facade.settings.vessels.rangeCircleMinZoom=t),c(t)}),p("selectionChange",function(){return e.persistModel()}),y(416,ci,2,2,"mat-option",41,D),n()()()(),i(418,"div",37)(419,"div",38)(420,"mat-checkbox",96),u("ngModelChange",function(t){return m(g),f(e.facade.settings.vessels.rangeCirclesFixed,t)||(e.facade.settings.vessels.rangeCirclesFixed=t),c(t)}),p("change",function(){return e.persistModel()}),s(421," Use Fixed Distance "),n()(),i(422,"div",38)(423,"mat-form-field",67)(424,"mat-label"),s(425),n(),i(426,"input",97,15),u("ngModelChange",function(t){return m(g),f(e.formattedNumberModel.rangeCirclesDistance,t)||(e.formattedNumberModel.rangeCirclesDistance=t),c(t)}),p("change",function(){m(g);let t=w(427);return c(e.parseFormattedNumber(t))}),n(),b(428,pi,2,0,"mat-error"),n()()()()()()(),E(429,"br"),i(430,"mat-card",36)(431,"mat-card-content")(432,"div",37)(433,"fieldset")(434,"legend")(435,"mat-checkbox",48),u("ngModelChange",function(t){return m(g),f(e.facade.settings.vessels.trail,t)||(e.facade.settings.vessels.trail=t),c(t)}),p("change",function(){return e.persistModel("vesselTrail")}),s(436," Display Vessel Track "),n()(),i(437,"div",37)(438,"div",38)(439,"mat-checkbox",98),u("ngModelChange",function(t){return m(g),f(e.facade.settings.vessels.trailFromServer,t)||(e.facade.settings.vessels.trailFromServer=t),c(t)}),p("change",function(){return e.persistModel("trailFromServer")}),s(440," Get Track from server "),n(),s(441," \xA0\xA0 "),i(442,"mat-slider",99)(443,"input",100),u("ngModelChange",function(t){return m(g),f(e.facade.settings.vessels.trailDuration,t)||(e.facade.settings.vessels.trailDuration=t),c(t)}),p("valueChange",function(){return e.deferPersist()}),n()(),s(444),n()(),i(445,"div",37)(446,"div",38)(447,"mat-form-field",39)(448,"mat-label"),s(449,"Resolution: Last hour"),n(),i(450,"mat-select",95),u("ngModelChange",function(t){return m(g),f(e.facade.settings.vessels.trailResolution.lastHour,t)||(e.facade.settings.vessels.trailResolution.lastHour=t),c(t)}),p("selectionChange",function(){return e.persistModel()}),y(451,_i,2,2,"mat-option",41,v),n()()(),i(453,"div",38)(454,"mat-form-field",39)(455,"mat-label"),s(456,"Resolution: 1 hr -> 24 hrs"),n(),i(457,"mat-select",95),u("ngModelChange",function(t){return m(g),f(e.facade.settings.vessels.trailResolution.next23,t)||(e.facade.settings.vessels.trailResolution.next23=t),c(t)}),p("selectionChange",function(){return e.persistModel()}),y(458,fi,2,2,"mat-option",41,v),n()()(),i(460,"div",38)(461,"mat-form-field",39)(462,"mat-label"),s(463,"Resolution: > 24 hrs"),n(),i(464,"mat-select",95),u("ngModelChange",function(t){return m(g),f(e.facade.settings.vessels.trailResolution.beyond24,t)||(e.facade.settings.vessels.trailResolution.beyond24=t),c(t)}),p("selectionChange",function(){return e.persistModel()}),y(465,ui,2,2,"mat-option",41,v),n()()()()()()()(),i(467,"div",35),s(468,"OTHER VESSELS"),n(),i(469,"mat-card",36)(470,"mat-card-content")(471,"div",37)(472,"div",38)(473,"mat-checkbox",48),u("ngModelChange",function(t){return m(g),f(e.facade.settings.vessels.aisShowTrack,t)||(e.facade.settings.vessels.aisShowTrack=t),c(t)}),p("change",function(){return e.persistModel()}),s(474," Show Track "),n(),s(475," \xA0 "),i(476,"mat-checkbox",48),u("ngModelChange",function(t){return m(g),f(e.aisStateFilter.moored,t)||(e.aisStateFilter.moored=t),c(t)}),p("change",function(){return e.onAisStateFilter()}),s(477," Hide Moored "),n(),s(478," \xA0 "),i(479,"mat-checkbox",48),u("ngModelChange",function(t){return m(g),f(e.aisStateFilter.anchored,t)||(e.aisStateFilter.anchored=t),c(t)}),p("change",function(){return e.onAisStateFilter()}),s(480," Hide Anchored "),n()()(),i(481,"div",37)(482,"div",38)(483,"mat-form-field",39)(484,"mat-label"),s(485,"Mark AIS target inactive after"),n(),i(486,"mat-select",64),u("ngModelChange",function(t){return m(g),f(e.facade.settings.vessels.aisStaleAge,t)||(e.facade.settings.vessels.aisStaleAge=t),c(t)}),p("selectionChange",function(){return e.persistModel()}),y(487,hi,2,2,"mat-option",41,v),n()()(),i(489,"div",38)(490,"mat-form-field",39)(491,"mat-label"),s(492,"Remove AIS target after"),n(),i(493,"mat-select",64),u("ngModelChange",function(t){return m(g),f(e.facade.settings.vessels.aisMaxAge,t)||(e.facade.settings.vessels.aisMaxAge=t),c(t)}),p("selectionChange",function(){return e.persistModel()}),y(494,yi,2,2,"mat-option",41,v),n()()(),i(496,"div",38)(497,"mat-form-field",39)(498,"mat-label"),s(499,"Wind Vector Value"),n(),i(500,"mat-select",64),u("ngModelChange",function(t){return m(g),f(e.facade.settings.vessels.aisWindApparent,t)||(e.facade.settings.vessels.aisWindApparent=t),c(t)}),p("selectionChange",function(){return e.persistModel()}),y(501,Si,2,2,"mat-option",41,v),n()()(),i(503,"div",38)(504,"mat-form-field",39)(505,"mat-label"),s(506,"Wind / Track Zoom Level"),n(),i(507,"mat-select",64),u("ngModelChange",function(t){return m(g),f(e.facade.settings.vessels.aisWindMinZoom,t)||(e.facade.settings.vessels.aisWindMinZoom=t),c(t)}),p("selectionChange",function(){return e.persistModel()}),y(508,Ci,2,2,"mat-option",41,D),n()()(),i(510,"div",38)(511,"mat-form-field",39)(512,"mat-label"),s(513,"COG Line"),n(),i(514,"mat-select",64),u("ngModelChange",function(t){return m(g),f(e.facade.settings.vessels.aisCogLine,t)||(e.facade.settings.vessels.aisCogLine=t),c(t)}),p("selectionChange",function(){return e.persistModel()}),y(515,Mi,2,2,"mat-option",41,v),n()()()()()()()()()(),i(517,"mat-tab",101)(518,"div",32)(519,"div",33)(520,"div",102)(521,"div",35),s(522,"NOTES"),n(),i(523,"mat-card",36)(524,"mat-card-content")(525,"div",46)(526,"div",38)(527,"mat-checkbox",48),u("ngModelChange",function(t){return m(g),f(e.facade.settings.ui.showNotes,t)||(e.facade.settings.ui.showNotes=t),c(t)}),p("change",function(){return e.persistModel()}),s(528," Display Notes on Map "),n()(),i(529,"div",38)(530,"mat-form-field",39)(531,"mat-label"),s(532,"Notes Zoom Level"),n(),i(533,"mat-select",103),u("valueChange",function(t){return m(g),f(e.facade.settings.resources.notes.minZoom,t)||(e.facade.settings.resources.notes.minZoom=t),c(t)}),p("selectionChange",function(){return e.persistModel("fetchNotes")}),y(534,wi,2,2,"mat-option",41,D),n()()()(),i(536,"div",46)(537,"div",38)(538,"mat-form-field",39)(539,"mat-label"),s(540),n(),i(541,"mat-select",59),u("ngModelChange",function(t){return m(g),f(e.facade.settings.resources.notes.getRadius,t)||(e.facade.settings.resources.notes.getRadius=t),c(t)}),p("selectionChange",function(){return e.persistModel("fetchNotes")}),y(542,vi,2,2,"mat-option",41,D),n()()()(),i(544,"div",46)(545,"div",38)(546,"mat-form-field",52)(547,"mat-label"),s(548,"Notes fetch filter:"),n(),i(549,"input",104,16),u("ngModelChange",function(t){return m(g),f(e.facade.settings.resources.notes.rootFilter,t)||(e.facade.settings.resources.notes.rootFilter=t),c(t)}),p("change",function(){return e.persistModel("fetchNotes")}),n(),b(551,bi,3,0,"button",105),n()()(),i(552,"div",46)(553,"div",38)(554,"mat-checkbox",106),u("ngModelChange",function(t){return m(g),f(e.facade.settings.resources.notes.groupNameEdit,t)||(e.facade.settings.resources.notes.groupNameEdit=t),c(t)}),p("change",function(){return e.persistModel()}),s(555," Edit Group Names "),n()(),i(556,"div",38)(557,"mat-checkbox",107),u("ngModelChange",function(t){return m(g),f(e.facade.settings.resources.notes.groupRequiresPosition,t)||(e.facade.settings.resources.notes.groupRequiresPosition=t),c(t)}),p("change",function(){return e.persistModel()}),s(558," Position Group Note "),n()()(),i(559,"div",46)(560,"div",38)(561,"mat-checkbox",108),u("ngModelChange",function(t){return m(g),f(e.facade.settings.display.singleClickNoteDetails,t)||(e.facade.settings.display.singleClickNoteDetails=t),c(t)}),p("change",function(){return e.persistModel()}),s(562," Single Click for Note Details "),n()()()()()(),i(563,"div",109)(564,"div",35),s(565,"CUSTOM RESOURCES"),n(),i(566,"mat-card",36)(567,"mat-card-content")(568,"div",46)(569,"div",38)(570,"div",110),s(571," Select custom resource types (./resources/<name>) "),n(),i(572,"mat-selection-list",111,17),p("selectionChange",function(){m(g);let t=w(573);return c(e.onResPathSelected(t))}),y(574,Ti,2,3,"mat-list-option",112,D),n()()()()()()()()(),b(576,Ei,21,2,"mat-tab",113),i(577,"mat-tab",114)(578,"div",32)(579,"div",33)(580,"div",115)(581,"div",35),s(582,"SIGNAL K: CONNECTION"),n(),i(583,"mat-card",36)(584,"mat-card-content")(585,"div",46)(586,"fieldset")(587,"legend"),s(588,"Filter Stream data:"),n(),i(589,"span",116),s(590," Check to include Signal K schema groups on display."),E(591,"br"),i(592,"i"),s(593,"Use to manage display performance."),n()(),i(594,"div",38)(595,"mat-checkbox",117),u("ngModelChange",function(t){return m(g),f(e.facade.settings.signalk.vessels,t)||(e.facade.settings.signalk.vessels=t),c(t)}),p("change",function(){return e.persistModel()}),s(596," Vessels (other than Self) "),n()(),i(597,"div",38)(598,"mat-checkbox",118),u("ngModelChange",function(t){return m(g),f(e.facade.settings.signalk.atons,t)||(e.facade.settings.signalk.atons=t),c(t)}),p("change",function(){return e.persistModel()}),s(599," Aids to Navigation (AtoN) "),n()(),i(600,"div",38)(601,"mat-checkbox",119),u("ngModelChange",function(t){return m(g),f(e.facade.settings.signalk.aircraft,t)||(e.facade.settings.signalk.aircraft=t),c(t)}),p("change",function(){return e.persistModel()}),s(602," Aircraft "),n()(),i(603,"div",38)(604,"mat-checkbox",120),u("ngModelChange",function(t){return m(g),f(e.facade.settings.signalk.sar,t)||(e.facade.settings.signalk.sar=t),c(t)}),p("change",function(){return e.persistModel()}),s(605," Search and Rescue (SaR) "),n()(),i(606,"div",38)(607,"mat-checkbox",121),u("ngModelChange",function(t){return m(g),f(e.facade.settings.signalk.meteo,t)||(e.facade.settings.signalk.meteo=t),c(t)}),p("change",function(){return e.persistModel()}),s(608," Weather (Meteo) "),n()(),i(609,"div",38),E(610,"br"),i(611,"mat-form-field",39)(612,"mat-label"),s(613,"Max. distance from vessel"),n(),i(614,"mat-select",122,18),u("ngModelChange",function(t){return m(g),f(e.facade.settings.signalk.maxRadius,t)||(e.facade.settings.signalk.maxRadius=t),c(t)}),p("selectionChange",function(){return e.persistModel()}),y(616,Wi,2,2,"mat-option",41,v),n()()()()(),i(618,"div",46)(619,"div",38)(620,"button",123),p("click",function(){return e.clearAuthToken()}),i(621,"mat-icon"),s(622,"key_off"),n()()()()()()()()()(),i(623,"mat-tab",124)(624,"div",32)(625,"div",33)(626,"div",125)(627,"div",35),s(628,"EXPERIMENTS"),n(),i(629,"mat-card",36)(630,"mat-card-content")(631,"div",46)(632,"div",38)(633,"mat-checkbox",48),u("ngModelChange",function(t){return m(g),f(e.facade.settings.resources.video.enable,t)||(e.facade.settings.resources.video.enable=t),c(t)}),p("change",function(){return e.persistModel()}),s(634," Enable Video "),n()(),i(635,"div",38)(636,"mat-form-field",52)(637,"mat-label"),s(638,"url:"),n(),i(639,"input",126,19),u("ngModelChange",function(t){return m(g),f(e.facade.settings.resources.video.url,t)||(e.facade.settings.resources.video.url=t),c(t)}),p("change",function(){return e.persistModel("videoUrl")}),n(),b(641,Vi,2,0,"mat-error"),n()()(),i(642,"div",46)(643,"div",38)(644,"mat-checkbox",127,20),u("ngModelChange",function(t){return m(g),f(e.facade.settings.experiments,t)||(e.facade.settings.experiments=t),c(t)}),p("change",function(){return e.persistModel()}),i(646,"mat-icon"),s(647,"science"),n(),s(648," Experimental Features "),n()()()()()()()()()()()}if(a&2){let g=w(83),r=w(90),t=w(126),ae=w(250),oe=w(259),re=w(268),se=w(293),me=w(300),ce=w(340),le=w(348),de=w(354),ge=w(427),ct=w(550),pt=w(640);o(25),_("ngModel",e.facade.settings.display.darkMode.source),o(),S(e.options.darkMode),o(3),_("ngModel",e.facade.settings.display.nightMode),o(6),_("ngModel",e.facade.settings.display.fab),o(),S(e.options.buttons.fab),o(3),h("disabled",!e.wakeLock.isAvailable),_("ngModel",e.facade.settings.display.disableWakelock),o(3),_("ngModel",e.facade.settings.display.preferInfoPanel),o(5),T(e.facade.applicationList.length>1?47:-1),o(),T(e.show.favourites()?48:-1),o(9),_("ngModel",e.facade.settings.display.muteSound),o(3),_("ngModel",e.facade.settings.display.depthAlarm.enabled),o(6),_("ngModel",e.facade.settings.display.depthAlarm.smoothing),h("disabled",!e.facade.settings.display.depthAlarm.enabled),o(),S(e.options.alarm.smoothing),o(9),_("ngModel",e.facade.settings.display.statusBar.liveEta),o(5),k("Reference Boat Speed (",e.speedUnitSymbol,")"),o(),h("disabled",!e.facade.settings.display.statusBar.liveEta),_("ngModel",e.facade.settings.display.statusBar.referenceSpeed),o(2),T(g.invalid&&(g.dirty||g.touched)?84:-1),o(5),h("disabled",!e.facade.settings.display.statusBar.liveEta),_("ngModel",e.facade.settings.display.statusBar.tapFadeSpeed),o(2),T(r.invalid&&(r.dirty||r.touched)?91:-1),o(11),_("ngModel",e.facade.settings.display.windIndicator),o(),S(e.options.windIndicator),o(14),h("disabled",!e.app.serverConfig.unitPreferences()),_("ngModel",e.facade.settings.units.useServerPrefs),o(8),h("disabled",e.facade.settings.units.useServerPrefs),_("ngModel",e.facade.settings.units.distance),o(2),S(e.options.availableUnits.distance),o(6),h("disabled",e.facade.settings.units.useServerPrefs),_("ngModel",e.facade.settings.units.depth),o(),S(e.options.availableUnits.depth),o(6),h("disabled",e.facade.settings.units.useServerPrefs),_("ngModel",e.facade.settings.units.length),o(),S(e.options.availableUnits.length),o(6),h("disabled",e.facade.settings.units.useServerPrefs),_("ngModel",e.facade.settings.units.temperature),o(),S(e.options.availableUnits.temperature),o(6),h("disabled",e.facade.settings.units.useServerPrefs),_("ngModel",e.facade.settings.units.speed),o(),S(e.options.availableUnits.speed),o(3),T(e.options.preferredValues.coords.length!==0?158:-1),o(),T(e.options.preferredValues.heading.length!==0?159:-1),o(18),_("ngModel",e.facade.settings.map.labelsMinZoom),o(),S(e.options.zoomLevels),o(9),h("min",-e.centerOffsetLimit)("max",e.centerOffsetLimit),_("ngModel",e.facade.settings.map.centerOffset.y),o(5),h("min",-e.centerOffsetLimit)("max",e.centerOffsetLimit),_("ngModel",e.facade.settings.map.centerOffset.x),o(3),_("ngModel",e.facade.settings.map.popoverMulti),o(3),_("ngModel",e.facade.settings.map.doubleClickZoom),o(3),_("ngModel",e.facade.settings.map.overZoomTiles),o(6),_("ngModel",e.facade.settings.map.panBehavior),o(),S(e.options.map.panBehavior),o(2),T(e.facade.settings.map.panBehavior==="exit"?210:-1),o(10),_("ngModel",e.facade.settings.map.s57Options.graphicsStyle),o(),S(e.options.map.s57.graphicsStyle),o(6),_("ngModel",e.facade.settings.map.s57Options.boundaries),o(),S(e.options.map.s57.boundaries),o(6),_("ngModel",e.facade.settings.map.s57Options.colorTable),o(),S(e.options.map.s57.colorTables),o(6),_("ngModel",e.facade.settings.map.s57Options.colors),o(),S(e.options.map.s57.colors),o(7),_("ngModel",e.facade.settings.map.s57Options.shallowDepth),o(2),T(ae.invalid&&(ae.dirty||ae.touched)?251:-1),o(7),_("ngModel",e.facade.settings.map.s57Options.safetyDepth),o(2),T(oe.invalid&&(oe.dirty||oe.touched)?260:-1),o(7),_("ngModel",e.facade.settings.map.s57Options.deepDepth),o(2),T(re.invalid&&(re.dirty||re.touched)?269:-1),o(7),_("ngModel",e.facade.settings.map.s57Options.otherLayers),o(),S(e.options.map.s57.otherLayers),o(15),_("ngModel",e.facade.settings.course.arrivalCircle),o(2),T(se.invalid&&(se.dirty||se.touched)?294:-1),o(5),_("ngModel",e.facade.settings.course.autoNextPointOnArrival),o(8),h("disabled",me.checked===!1),_("ngModel",e.facade.settings.course.autoNextPointTrigger),o(2),S(e.options.course.nextPointTrigger),o(6),h("disabled",me.checked===!1),_("ngModel",e.facade.settings.course.autoNextPointDelay),o(),S(e.options.course.nextPointDelay),o(17),_("ngModel",e.facade.settings.vessels.iconScale),o(),S(e.options.vessel.selfIconScale),o(5),_("ngModel",e.facade.settings.vessels.fixedLocationMode),o(8),_("ngModel",e.facade.fixedPosition[1]),h("disabled",!ce.checked),o(2),T(le.invalid&&(le.dirty||le.touched)?349:-1),o(4),_("ngModel",e.facade.fixedPosition[0]),h("disabled",!ce.checked),o(2),T(de.invalid&&(de.dirty||de.touched)?355:-1),o(9),_("ngModel",e.facade.settings.vessels.windVectors),o(2),_("ngModel",e.facade.settings.vessels.laylines),o(12),_("ngModel",e.facade.settings.vessels.selfLines.heading.length),o(),S(e.options.vessel.headingLine),o(3),h("color",e.facade.settings.vessels.selfLines.heading.color)("dash",e.facade.settings.vessels.selfLines.heading.dash)("weight",e.facade.settings.vessels.selfLines.heading.weight),o(11),_("ngModel",e.facade.settings.vessels.selfLines.cog.length),o(),S(e.options.vessel.cogLine),o(3),h("color",e.facade.settings.vessels.selfLines.cog.color)("dash",e.facade.settings.vessels.selfLines.cog.dash)("weight",e.facade.settings.vessels.selfLines.cog.weight),o(4),_("ngModel",e.facade.settings.vessels.rangeCircles),o(7),_("ngModel",e.facade.settings.vessels.rangeCircleCount),h("disabled",!e.facade.settings.vessels.rangeCircles),o(),S(e.options.rangeCircles.count),o(6),_("ngModel",e.facade.settings.vessels.rangeCircleMinZoom),h("disabled",!e.facade.settings.vessels.rangeCircles),o(),S(e.options.rangeCircles.zoomLevels),o(4),_("ngModel",e.facade.settings.vessels.rangeCirclesFixed),h("disabled",!e.facade.settings.vessels.rangeCircles),o(5),k(" Distance between circles (",e.renderSymbol(e.facade.settings.units.distance),") "),o(),_("ngModel",e.formattedNumberModel.rangeCirclesDistance),h("disabled",!e.facade.settings.vessels.rangeCircles||!e.facade.settings.vessels.rangeCirclesFixed),o(2),T(ge.invalid&&(ge.dirty||ge.touched)?428:-1),o(7),_("ngModel",e.facade.settings.vessels.trail),o(4),h("disabled",!e.facade.settings.vessels.trail),_("ngModel",e.facade.settings.vessels.trailFromServer),o(3),h("disabled",!e.facade.settings.vessels.trailFromServer||!e.facade.settings.vessels.trail),o(),_("ngModel",e.facade.settings.vessels.trailDuration),o(),k(" Length (",e.facade.settings.vessels.trailDuration," hrs) "),o(6),_("ngModel",e.facade.settings.vessels.trailResolution.lastHour),h("disabled",!e.facade.settings.vessels.trailFromServer||!e.facade.settings.vessels.trail),o(),S(e.options.trailIntervals.highResolution),o(6),_("ngModel",e.facade.settings.vessels.trailResolution.next23),h("disabled",!e.facade.settings.vessels.trailFromServer||!e.facade.settings.vessels.trail),o(),S(e.options.trailIntervals.highResolution),o(6),_("ngModel",e.facade.settings.vessels.trailResolution.beyond24),h("disabled",!e.facade.settings.vessels.trailFromServer||!e.facade.settings.vessels.trail),o(),S(e.options.trailIntervals.mediumResolution),o(8),_("ngModel",e.facade.settings.vessels.aisShowTrack),o(3),_("ngModel",e.aisStateFilter.moored),o(3),_("ngModel",e.aisStateFilter.anchored),o(7),_("ngModel",e.facade.settings.vessels.aisStaleAge),o(),S(e.options.vessel.aisTimeouts),o(6),_("ngModel",e.facade.settings.vessels.aisMaxAge),o(),S(e.options.vessel.aisTimeouts),o(6),_("ngModel",e.facade.settings.vessels.aisWindApparent),o(),S(e.options.preferredValues.wind),o(6),_("ngModel",e.facade.settings.vessels.aisWindMinZoom),o(),S(e.options.zoomLevels),o(6),_("ngModel",e.facade.settings.vessels.aisCogLine),o(),S(e.options.vessel.aisCogLine),o(12),_("ngModel",e.facade.settings.ui.showNotes),o(6),h("disabled",!e.facade.settings.ui.showNotes),_("value",e.facade.settings.resources.notes.minZoom),o(),S(e.options.zoomLevels),o(6),C("Fetch Notes radius: ("+e.options.availableUnits.distance.get(t.value)+")"),o(),h("disabled",!e.facade.settings.ui.showNotes),_("ngModel",e.facade.settings.resources.notes.getRadius),o(),S(e.options.resources.noteRadius),o(7),_("ngModel",e.facade.settings.resources.notes.rootFilter),o(2),T(ct.value?551:-1),o(3),_("ngModel",e.facade.settings.resources.notes.groupNameEdit),o(3),_("ngModel",e.facade.settings.resources.notes.groupRequiresPosition),o(4),_("ngModel",e.facade.settings.display.singleClickNoteDetails),o(13),S(e.facade.resourcePathList),o(2),T(e.app.featureFlags().radarApi?576:-1),o(19),_("ngModel",e.facade.settings.signalk.vessels),o(3),_("ngModel",e.facade.settings.signalk.atons),o(3),_("ngModel",e.facade.settings.signalk.aircraft),o(3),_("ngModel",e.facade.settings.signalk.sar),o(3),_("ngModel",e.facade.settings.signalk.meteo),o(7),_("ngModel",e.facade.settings.signalk.maxRadius),o(2),S(e.options.vessel.aisMaxRadius),o(17),_("ngModel",e.facade.settings.resources.video.enable),o(6),h("disabled",!e.facade.settings.resources.video.enable),_("ngModel",e.facade.settings.resources.video.url),o(2),T(pt.invalid?641:-1),o(3),_("ngModel",e.facade.settings.experiments)}},dependencies:[Z,U,Te,G,We,Ve,Ee,De,H,Me,Ce,Re,Ne,ee,nt,$,Ae,Ie,Fe,xe,Le,Pe,ke,N,ve,we,R,be,K,Be,rt,at,ot,$e,Q,q,z,Ue,Ge,J,Y,He,X,j,Oe,ze,Ke,it,et,tt,ne,te],styles:["[_nghost-%COMP%] .mat-dialog-content{padding:0 4px}[_nghost-%COMP%] .mat-mdc-dialog-content{display:flex;flex-direction:column;flex:1 1 auto;min-height:0;max-height:none;overflow:hidden}[_nghost-%COMP%] .mat-mdc-dialog-content .mat-mdc-tab-group, [_nghost-%COMP%] .mat-mdc-dialog-content .mat-mdc-tab-body-wrapper{flex:1 1 auto;min-height:0}.settings[_ngcontent-%COMP%] .setting-group-title[_ngcontent-%COMP%]{font-weight:700;font-size:10pt;font-family:Arial,Helvetica,sans-serif;padding:10px 0}.setting-card-row[_ngcontent-%COMP%]{display:flex;flex-wrap:wrap}.settings[_ngcontent-%COMP%] .setting-card-row-item[_ngcontent-%COMP%]{padding-right:15px;flex:1 1 auto}.settings[_ngcontent-%COMP%] .setting-card-row-item.setting-card-row-stack[_ngcontent-%COMP%]{flex-basis:220px}.settings[_ngcontent-%COMP%] .setting-field-group-title[_ngcontent-%COMP%]{font-size:10pt;font-family:Arial,Helvetica,sans-serif;opacity:.7;line-height:1.4;min-height:1.4em;padding-bottom:2px}.settings[_ngcontent-%COMP%] .setting-field-group[_ngcontent-%COMP%]{display:flex;flex-wrap:wrap;gap:10px}.settings[_ngcontent-%COMP%] .setting-field-group[_ngcontent-%COMP%] mat-form-field[_ngcontent-%COMP%]{flex:0 1 150px;min-width:80px}@media only screen and (max-width:599px){.settings[_ngcontent-%COMP%] .setting-group[_ngcontent-%COMP%]{padding:5px 5%}}@media only screen and (min-width:600px)and (max-width:959px),screen and (min-width:960px)and (max-width:1279px),screen and (min-width:1280px)and (max-width:1919px),screen and (min-width:1920px)and (max-width:5000px){.settings[_ngcontent-%COMP%] .setting-group[_ngcontent-%COMP%]{padding:5px 5%}}"]})};export{mt as SettingsDialog};
@@ -1,4 +1,4 @@
1
- import{M as a,ib as i,ra as c,sa as r,vd as d,xc as s}from"./chunk-JH5KSRZ6.js";var p=(()=>{class e{_animationsDisabled=d();state="unchecked";disabled=!1;appearance="full";constructor(){}static \u0275fac=function(t){return new(t||e)};static \u0275cmp=c({type:e,selectors:[["mat-pseudo-checkbox"]],hostAttrs:[1,"mat-pseudo-checkbox"],hostVars:12,hostBindings:function(t,o){t&2&&i("mat-pseudo-checkbox-indeterminate",o.state==="indeterminate")("mat-pseudo-checkbox-checked",o.state==="checked")("mat-pseudo-checkbox-disabled",o.disabled)("mat-pseudo-checkbox-minimal",o.appearance==="minimal")("mat-pseudo-checkbox-full",o.appearance==="full")("_mat-animation-noopable",o._animationsDisabled)},inputs:{state:"state",disabled:"disabled",appearance:"appearance"},decls:0,vars:0,template:function(t,o){},styles:[`.mat-pseudo-checkbox {
1
+ import{M as a,ib as i,ra as c,sa as r,vd as d,xc as s}from"./chunk-K2CIRFN7.js";var p=(()=>{class e{_animationsDisabled=d();state="unchecked";disabled=!1;appearance="full";constructor(){}static \u0275fac=function(t){return new(t||e)};static \u0275cmp=c({type:e,selectors:[["mat-pseudo-checkbox"]],hostAttrs:[1,"mat-pseudo-checkbox"],hostVars:12,hostBindings:function(t,o){t&2&&i("mat-pseudo-checkbox-indeterminate",o.state==="indeterminate")("mat-pseudo-checkbox-checked",o.state==="checked")("mat-pseudo-checkbox-disabled",o.disabled)("mat-pseudo-checkbox-minimal",o.appearance==="minimal")("mat-pseudo-checkbox-full",o.appearance==="full")("_mat-animation-noopable",o._animationsDisabled)},inputs:{state:"state",disabled:"disabled",appearance:"appearance"},decls:0,vars:0,template:function(t,o){},styles:[`.mat-pseudo-checkbox {
2
2
  border-radius: 2px;
3
3
  cursor: pointer;
4
4
  display: inline-block;
@@ -1,4 +1,4 @@
1
- import{$ as br,$a as Sr,$c as Xr,Cb as qr,Db as Vr,Ea as Le,Fa as Me,Fc as Kr,Ga as ot,Gb as Qr,Ia as ut,Ja as at,Jb as Tt,Ka as I,L as Fr,La as se,M as bt,Ma as ce,Na as Q,P as ze,Pb as We,Rb as Ur,Ta as Tr,Tb as $r,V as Cr,Ya as re,Za as _r,_a as Jt,ac as Wr,bb as Br,ca as yr,cb as Ir,cc as Yr,db as zr,eb as Lr,fa as Er,fb as en,ga as yt,gb as Mr,hb as tn,ib as vr,ja as N,kb as lt,la as wr,lb as ve,lc as Gr,mb as $e,nb as Pr,nd as Zr,oa as Ar,ra as it,sa as Et,sb as Rr,ta as wt,tb as Nr,ub as Or,vb as nn,wa as At,wb as Hr,xc as _t,zb as jr}from"./chunk-JH5KSRZ6.js";import{a as E,b as be,c as Oo,d as Ho,e as jo}from"./chunk-6H3I7D5M.js";var li=Oo((sc,ai)=>{"use strict";var St=Object.prototype.hasOwnProperty,ui=Object.prototype.toString,ei=Object.defineProperty,ti=Object.getOwnPropertyDescriptor,ni=function(n){return typeof Array.isArray=="function"?Array.isArray(n):ui.call(n)==="[object Array]"},ri=function(n){if(!n||ui.call(n)!=="[object Object]")return!1;var t=St.call(n,"constructor"),r=n.constructor&&n.constructor.prototype&&St.call(n.constructor.prototype,"isPrototypeOf");if(n.constructor&&!t&&!r)return!1;var i;for(i in n);return typeof i>"u"||St.call(n,i)},ii=function(n,t){ei&&t.name==="__proto__"?ei(n,t.name,{enumerable:!0,configurable:!0,value:t.newValue,writable:!0}):n[t.name]=t.newValue},oi=function(n,t){if(t==="__proto__")if(St.call(n,t)){if(ti)return ti(n,t).value}else return;return n[t]};ai.exports=function e(){var n,t,r,i,u,o,a=arguments[0],l=1,s=arguments.length,m=!1;for(typeof a=="boolean"&&(m=a,a=arguments[1]||{},l=2),(a==null||typeof a!="object"&&typeof a!="function")&&(a={});l<s;++l)if(n=arguments[l],n!=null)for(t in n)r=oi(a,t),i=oi(n,t),a!==i&&(m&&i&&(ri(i)||(u=ni(i)))?(u?(u=!1,o=r&&ni(r)?r:[]):o=r&&ri(r)?r:{},ii(a,{name:t,newValue:e(m,o,i)})):typeof i<"u"&&ii(a,{name:t,newValue:i}));return a}});var Ws=(()=>{class e{static \u0275fac=function(r){return new(r||e)};static \u0275mod=Et({type:e});static \u0275inj=bt({imports:[Zr,Xr,_t,Kr]})}return e})();var qo=["*",[["mat-toolbar-row"]]],Vo=["*","mat-toolbar-row"],Qo=(()=>{class e{static \u0275fac=function(r){return new(r||e)};static \u0275dir=wt({type:e,selectors:[["mat-toolbar-row"]],hostAttrs:[1,"mat-toolbar-row"],exportAs:["matToolbarRow"]})}return e})(),oc=(()=>{class e{_elementRef=ze(yr);_platform=ze(Gr);_document=ze(Cr);color;_toolbarRows;constructor(){}ngAfterViewInit(){this._platform.isBrowser&&(this._checkToolbarMixedModes(),this._toolbarRows.changes.subscribe(()=>this._checkToolbarMixedModes()))}_checkToolbarMixedModes(){this._toolbarRows.length}static \u0275fac=function(r){return new(r||e)};static \u0275cmp=it({type:e,selectors:[["mat-toolbar"]],contentQueries:function(r,i,u){if(r&1&&Sr(u,Qo,5),r&2){let o;Br(o=Ir())&&(i._toolbarRows=o)}},hostAttrs:[1,"mat-toolbar"],hostVars:6,hostBindings:function(r,i){r&2&&(lt(i.color?"mat-"+i.color:""),vr("mat-toolbar-multiple-rows",i._toolbarRows.length>0)("mat-toolbar-single-row",i._toolbarRows.length===0))},inputs:{color:"color"},exportAs:["matToolbar"],ngContentSelectors:Vo,decls:2,vars:0,template:function(r,i){r&1&&(_r(qo),Jt(0),Jt(1,1))},styles:[`.mat-toolbar {
1
+ import{$a as Sr,$c as Xr,Cb as qr,Db as Vr,Ea as Le,Fa as Me,Fc as Kr,Ga as ot,Gb as Qr,Ia as ut,Ja as at,Jb as Tt,Ka as I,L as Fr,La as se,M as bt,Ma as ce,Na as Q,P as ze,Pb as We,Rb as Ur,Ta as Tr,Tb as $r,W as Cr,Ya as re,Za as _r,_a as Jt,aa as br,ac as Wr,bb as Br,cb as Ir,cc as Yr,da as yr,db as zr,eb as Lr,fa as Er,fb as en,ga as yt,gb as Mr,hb as tn,ib as vr,ja as N,kb as lt,la as wr,lb as ve,lc as Gr,mb as $e,nb as Pr,nd as Zr,oa as Ar,ra as it,sa as Et,sb as Rr,ta as wt,tb as Nr,ub as Or,vb as nn,wa as At,wb as Hr,xc as _t,zb as jr}from"./chunk-K2CIRFN7.js";import{a as E,b as be,c as Oo,d as Ho,e as jo}from"./chunk-6H3I7D5M.js";var li=Oo((sc,ai)=>{"use strict";var St=Object.prototype.hasOwnProperty,ui=Object.prototype.toString,ei=Object.defineProperty,ti=Object.getOwnPropertyDescriptor,ni=function(n){return typeof Array.isArray=="function"?Array.isArray(n):ui.call(n)==="[object Array]"},ri=function(n){if(!n||ui.call(n)!=="[object Object]")return!1;var t=St.call(n,"constructor"),r=n.constructor&&n.constructor.prototype&&St.call(n.constructor.prototype,"isPrototypeOf");if(n.constructor&&!t&&!r)return!1;var i;for(i in n);return typeof i>"u"||St.call(n,i)},ii=function(n,t){ei&&t.name==="__proto__"?ei(n,t.name,{enumerable:!0,configurable:!0,value:t.newValue,writable:!0}):n[t.name]=t.newValue},oi=function(n,t){if(t==="__proto__")if(St.call(n,t)){if(ti)return ti(n,t).value}else return;return n[t]};ai.exports=function e(){var n,t,r,i,u,o,a=arguments[0],l=1,s=arguments.length,m=!1;for(typeof a=="boolean"&&(m=a,a=arguments[1]||{},l=2),(a==null||typeof a!="object"&&typeof a!="function")&&(a={});l<s;++l)if(n=arguments[l],n!=null)for(t in n)r=oi(a,t),i=oi(n,t),a!==i&&(m&&i&&(ri(i)||(u=ni(i)))?(u?(u=!1,o=r&&ni(r)?r:[]):o=r&&ri(r)?r:{},ii(a,{name:t,newValue:e(m,o,i)})):typeof i<"u"&&ii(a,{name:t,newValue:i}));return a}});var Ws=(()=>{class e{static \u0275fac=function(r){return new(r||e)};static \u0275mod=Et({type:e});static \u0275inj=bt({imports:[Zr,Xr,_t,Kr]})}return e})();var qo=["*",[["mat-toolbar-row"]]],Vo=["*","mat-toolbar-row"],Qo=(()=>{class e{static \u0275fac=function(r){return new(r||e)};static \u0275dir=wt({type:e,selectors:[["mat-toolbar-row"]],hostAttrs:[1,"mat-toolbar-row"],exportAs:["matToolbarRow"]})}return e})(),oc=(()=>{class e{_elementRef=ze(yr);_platform=ze(Gr);_document=ze(Cr);color;_toolbarRows;constructor(){}ngAfterViewInit(){this._platform.isBrowser&&(this._checkToolbarMixedModes(),this._toolbarRows.changes.subscribe(()=>this._checkToolbarMixedModes()))}_checkToolbarMixedModes(){this._toolbarRows.length}static \u0275fac=function(r){return new(r||e)};static \u0275cmp=it({type:e,selectors:[["mat-toolbar"]],contentQueries:function(r,i,u){if(r&1&&Sr(u,Qo,5),r&2){let o;Br(o=Ir())&&(i._toolbarRows=o)}},hostAttrs:[1,"mat-toolbar"],hostVars:6,hostBindings:function(r,i){r&2&&(lt(i.color?"mat-"+i.color:""),vr("mat-toolbar-multiple-rows",i._toolbarRows.length>0)("mat-toolbar-single-row",i._toolbarRows.length===0))},inputs:{color:"color"},exportAs:["matToolbar"],ngContentSelectors:Vo,decls:2,vars:0,template:function(r,i){r&1&&(_r(qo),Jt(0),Jt(1,1))},styles:[`.mat-toolbar {
2
2
  background: var(--mat-toolbar-container-background-color, var(--mat-sys-surface));
3
3
  color: var(--mat-toolbar-container-text-color, var(--mat-sys-on-surface));
4
4
  }