@signalk/freeboard-sk 2.24.0 → 2.24.2

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 (61) hide show
  1. package/CHANGELOG.md +19 -0
  2. package/assets/icons/icon-192x192.png +0 -0
  3. package/docs/screenshots/1_freeboard-sk.png +0 -0
  4. package/docs/screenshots/README.md +31 -0
  5. package/package.json +26 -7
  6. package/public/3rdpartylicenses.txt +9 -361
  7. package/public/chunk-2AF4T5IB.js +1 -0
  8. package/public/chunk-346FAZUS.js +1 -0
  9. package/public/{chunk-BTVNOQ7K.js → chunk-3GHIRJ3C.js} +2 -2
  10. package/public/chunk-4SHFYAXK.js +1 -0
  11. package/public/{chunk-2LV2AYBP.js → chunk-64QDJX7X.js} +1 -1
  12. package/public/chunk-A4TULHTL.js +1 -0
  13. package/public/chunk-AEB5DG3B.js +1 -0
  14. package/public/chunk-AFVK3UQJ.js +5482 -0
  15. package/public/chunk-AX3UMUXB.js +1 -0
  16. package/public/{chunk-TLBNKF2R.js → chunk-EFVTFEXB.js} +1 -1
  17. package/public/chunk-FALIRPMH.js +1035 -0
  18. package/public/{chunk-A7QJNGJ7.js → chunk-FEIJMPL7.js} +2 -2
  19. package/public/chunk-G4GM24WE.js +1 -0
  20. package/public/{chunk-DPEXDGKO.js → chunk-GQXHMDKV.js} +1 -1
  21. package/public/chunk-KFWFMRV7.js +1 -0
  22. package/public/chunk-LXUTMJYP.js +1145 -0
  23. package/public/chunk-NTIQMWPW.js +2718 -0
  24. package/public/chunk-QIOZNURQ.js +1 -0
  25. package/public/chunk-RWJHAOI2.js +1 -0
  26. package/public/chunk-SBFXQ3G7.js +1 -0
  27. package/public/chunk-TAJAMNLU.js +1 -0
  28. package/public/chunk-UEUVGTXJ.js +1 -0
  29. package/public/{chunk-WUXY5N7A.js → chunk-WA2ENVQZ.js} +1 -1
  30. package/public/index.html +2 -2
  31. package/public/main-AZEF35BN.js +466 -0
  32. package/public/polyfills-RV3JTMEC.js +2 -0
  33. package/public/styles-FMJMFQ5P.css +1 -0
  34. package/public/worker-AUTVLQL7.js +3 -0
  35. package/public/worker-FRXPLBUO.js +12 -0
  36. package/public/worker-T4RJR7DG.js +12 -0
  37. package/public/worker-Y35X2QU7.js +26 -0
  38. package/public/chunk-3MOH2GUU.js +0 -1
  39. package/public/chunk-3ZBG3EOD.js +0 -1
  40. package/public/chunk-4SN3Q6K3.js +0 -1
  41. package/public/chunk-5KDMJ54F.js +0 -1
  42. package/public/chunk-67IVDHNW.js +0 -1
  43. package/public/chunk-AZK5ODAA.js +0 -1
  44. package/public/chunk-GMWUHE7S.js +0 -131
  45. package/public/chunk-GQRIAFM6.js +0 -1
  46. package/public/chunk-HQSHA6SH.js +0 -13
  47. package/public/chunk-LXWUCH7T.js +0 -1
  48. package/public/chunk-QPQHN5VS.js +0 -22
  49. package/public/chunk-RBFFWNLA.js +0 -1
  50. package/public/chunk-TQPGRJVE.js +0 -19
  51. package/public/chunk-V3DD3MHN.js +0 -1
  52. package/public/chunk-Y6FV7FIU.js +0 -1
  53. package/public/chunk-YPACWLLV.js +0 -1
  54. package/public/chunk-YUTPR5Z4.js +0 -1
  55. package/public/main-SF5NH7GR.js +0 -11
  56. package/public/polyfills-5CFQRCPP.js +0 -2
  57. package/public/styles-N7HVRSAT.css +0 -1
  58. package/public/worker-42LKK6ER.js +0 -26
  59. package/public/worker-FPJG6QKK.js +0 -5
  60. package/public/worker-UZNU4LIJ.js +0 -12
  61. package/public/worker-WYOFLVNH.js +0 -12
@@ -1 +0,0 @@
1
- import{A as ze,Aa as it,Ba as nt,D as qe,E as L,J as je,P as Xe,Q as Ye,R as Je,b as Me,e as Ee,fa as Qe,g as We,ga as $,h as ke,ha as ee,l as Pe,la as $e,m as H,ma as et,na as tt,u as Ge,v as Ze,w as He,x as Q,z as Ke}from"./chunk-GMWUHE7S.js";import{a as xe,d as Oe,i as Ie,j as Fe,k as Be}from"./chunk-TQPGRJVE.js";import{e as Le,f as X,g as Y,h as Ue,i as J}from"./chunk-HQSHA6SH.js";import{$d as Ve,Aa as V,Ba as T,Da as b,Ea as S,Ed as we,Fa as w,Fb as F,Ga as h,Gd as Ce,Ha as i,Ia as n,Ja as D,Jb as fe,Jd as A,Kb as B,L as E,Ld as ye,M as g,Md as N,N as m,O as x,Od as R,P as ge,Qa as W,Sa as p,T as me,Td as U,Ua as y,V as I,W as ce,Wd as G,Xd as ve,_ as pe,_d as be,ae as Te,be as De,cb as M,ce as Z,fa as s,fb as _e,ge as K,hb as d,he as Ae,ib as C,jb as k,je as Ne,lb as _,mb as f,me as z,na as P,nb as u,ne as Re,rd as ue,re as q,se as j,vd as he,xd as Se,za as O}from"./chunk-QPQHN5VS.js";import"./chunk-EQVTEUXC.js";var pt=(l,c)=>c[0];function _t(l,c){if(l&1&&(i(0,"mat-option",8),x(),i(1,"svg",6),D(2,"line",7),n()()),l&2){let a=c.$implicit;h("value",a),s(2),O("stroke-width",a)}}function ft(l,c){if(l&1&&(i(0,"mat-option",8),x(),i(1,"svg",6),D(2,"line",9),n()()),l&2){let a=c.$implicit;h("value",a[0]),s(2),O("stroke-dasharray",a[1])}}var te=class l{color=B("#ff0000");dash=B("none");weight=B(1);_color=F(()=>this.color());_dash=F(()=>this.dash());_weight=F(()=>this.weight());selectionChange=fe();app=E(L);line={dashArrays:this.app.lineDashMap,weights:[1,2,3,4,5]};constructor(){}ngOnInit(){}onSelectChange(c){let a=this.app.formatLineDashArray(this._dash());this.selectionChange.emit({lineStyle:{fill:{color:this._color()},stroke:{color:this._color(),width:this._weight(),lineDash:a}},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"),d(3,"Color"),n(),i(4,"input",2),u("ngModelChange",function(r){return f(e._color,r)||(e._color=r),r}),p("change",function(r){return e.onSelectChange({key:"color",value:r.srcElement.value})}),n()(),i(5,"mat-form-field",3)(6,"mat-label"),d(7,"Weight"),n(),i(8,"mat-select",4),u("ngModelChange",function(r){return f(e._weight,r)||(e._weight=r),r}),p("selectionChange",function(r){return e.onSelectChange({key:"weight",value:r.value})}),i(9,"mat-select-trigger")(10,"div",5),x(),i(11,"svg",6),D(12,"line",7),n()()(),S(13,_t,3,2,"mat-option",8,b),n()(),ge(),i(15,"mat-form-field",3)(16,"mat-label"),d(17,"Style"),n(),i(18,"mat-select",4),u("ngModelChange",function(r){return f(e._dash,r)||(e._dash=r),r}),p("selectionChange",function(r){return e.onSelectChange({key:"dash",value:r.value})}),i(19,"mat-select-trigger")(20,"div",5),x(),i(21,"svg",6),D(22,"line",9),n()()(),S(23,ft,3,2,"mat-option",8,pt),n()()()),a&2&&(s(4),_("ngModel",e._color),s(4),_("ngModel",e._weight),s(4),O("stroke-width",e._weight()),s(),w(e.line.weights),s(5),_("ngModel",e._dash),s(4),O("stroke-dasharray",e.line.dashArrays.get(e._dash())),s(),w(e.line.dashArrays))},dependencies:[Z,R,U,G,N,A,H,j,q,z,K,J,Y,Ue,X],encapsulation:2})};var ht=(l,c)=>c[0];function St(l,c){if(l&1){let a=W();i(0,"div",4)(1,"mat-radio-button",5,0),p("change",function(){g(a);let o=M(2),r=y().$implicit,t=y();return r[1].current=o.value,m(t.save(!0))}),d(3),n()()}if(l&2){let a=c.$implicit,e=y().$implicit;s(),h("name",e[0])("value",a)("checked",a===e[1].current),s(2),k(" ",a.split(".").slice(-1)," ")}}function wt(l,c){if(l&1&&(i(0,"div",2)(1,"div",3)(2,"div"),d(3),n()(),i(4,"div"),S(5,St,4,4,"div",4,b),n()()),l&2){let a=c.$implicit;s(3),C(a[1].name),s(2),w(a[1].available)}}var ie=class l{title="";chosen=new me;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:["navigation.courseOverGroundTrue","navigation.courseOverGroundMagnetic","navigation.headingTrue","navigation.headingMagnetic"],available:[],current:""}};pathChoicesArray=Object.entries(this.pathChoices);availPaths;app=E(L);constructor(){}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(o=>{this.availPaths.has(o)&&e.available.push(o)}),e.available.length===0&&e.available.push(e.choices[0])})}save(c){let a={};Object.entries(this.pathChoices).forEach(e=>{a[e[0]]=e[1].current}),this.chosen.emit({save:c,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),d(2),n(),i(3,"div"),S(4,wt,7,1,"div",2,ht),n()()),a&2&&(s(2),C(e.title),s(2),w(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,c)=>c[0],Ct=(l,c)=>c.id;function yt(l,c){if(l&1&&(i(0,"mat-option",37),d(1),n()),l&2){let a=c.$implicit;h("value",a[0]),s(),C(a[1])}}function Mt(l,c){if(l&1&&(i(0,"mat-option",37),d(1),n()),l&2){let a=c.$implicit;h("value",a[0]),s(),C(a[1])}}function vt(l,c){if(l&1&&(i(0,"mat-option",112),d(1),n()),l&2){let a=c.$implicit;h("value",a.url)("matTooltip",a.description),s(),k(" ",a.name," ")}}function bt(l,c){if(l&1){let a=W();i(0,"div",42)(1,"div",34)(2,"mat-form-field",35)(3,"mat-label"),d(4,"Select Instruments App"),n(),i(5,"mat-select",53),u("ngModelChange",function(o){g(a);let r=y();return f(r.facade.settings.display.plugins.instruments,o)||(r.facade.settings.display.plugins.instruments=o),m(o)}),p("selectionChange",function(){g(a);let o=y();return m(o.onInstrumentApp())}),S(6,vt,2,3,"mat-option",112,b),n()()(),i(8,"div",34)(9,"mat-form-field",88)(10,"mat-label"),d(11,"Parameters"),n(),i(12,"input",113,17),u("ngModelChange",function(o){g(a);let r=y();return f(r.facade.settings.display.plugins.parameters,o)||(r.facade.settings.display.plugins.parameters=o),m(o)}),p("change",function(){g(a);let o=y();return m(o.persistModel("pluginParameters"))}),n()()(),i(14,"div",34)(15,"mat-checkbox",114),u("ngModelChange",function(o){g(a);let r=y();return f(r.facade.settings.display.plugins.startOnOpen,o)||(r.facade.settings.display.plugins.startOnOpen=o),m(o)}),p("change",function(){g(a);let o=y();return m(o.persistModel("pluginStartOnOpen"))}),d(16," Halt App on hide "),n()(),i(17,"div",34)(18,"button",115),p("click",function(){g(a);let o=y();return m(o.toggleFavourites())}),i(19,"mat-icon"),d(20,"star"),n(),d(21," FAVOURITES "),n()()()}if(l&2){let a=y();s(5),_("ngModel",a.facade.settings.display.plugins.instruments),s(),w(a.facade.applicationList),s(6),h("disabled",a.facade.settings.display.plugins.instruments===null),_("ngModel",a.facade.settings.display.plugins.parameters),s(3),_("ngModel",a.facade.settings.display.plugins.startOnOpen)}}function Vt(l,c){if(l&1&&(i(0,"mat-list-option",117),d(1),n()),l&2){let a=c.$implicit,e=y(2);h("disabled",a.url==e.facade.settings.display.plugins.instruments)("selected",e.facade.settings.display.plugins.favourites.includes(a.url))("value",a.url),s(),k(" ",a.name," ")}}function Tt(l,c){if(l&1){let a=W();i(0,"div",33)(1,"div",34)(2,"div",94),D(3,"br"),d(4,"Select Favourite Apps: "),n(),D(5,"mat-divider"),i(6,"mat-selection-list",116,18),p("selectionChange",function(o){g(a);let r=M(7),t=y();return m(t.onFavSelected(o,r))}),S(8,Vt,2,4,"mat-list-option",117,b),n()()()}if(l&2){let a=y();s(8),w(a.facade.favouritesList)}}function Dt(l,c){if(l&1&&(i(0,"mat-option",37),d(1),n()),l&2){let a=c.$implicit;h("value",a[0]),s(),C(a[1])}}function Et(l,c){if(l&1&&(i(0,"mat-option",37),d(1),n()),l&2){let a=c.$implicit;h("value",a[0]),s(),C(a[1])}}function Wt(l,c){if(l&1&&(i(0,"mat-option",37),d(1),n()),l&2){let a=c.$implicit;h("value",a[0]),s(),C(a[1])}}function kt(l,c){if(l&1&&(i(0,"mat-option",37),d(1),n()),l&2){let a=c.$implicit;h("value",a[0]),s(),C(a[1])}}function Pt(l,c){if(l&1&&(i(0,"mat-option",37),d(1),n()),l&2){let a=c.$implicit;h("value",a[0]),s(),C(a[1])}}function Lt(l,c){if(l&1&&(i(0,"mat-option",37),d(1),n()),l&2){let a=c.$implicit;h("value",a[0]),s(),C(a[1])}}function xt(l,c){if(l&1&&(i(0,"mat-option",37),d(1),n()),l&2){let a=c.$implicit;h("value",a[0]),s(),C(a[1])}}function Ot(l,c){if(l&1){let a=W();i(0,"div",34)(1,"mat-form-field",35)(2,"mat-label"),d(3,"Position display format"),n(),i(4,"mat-select",118),u("ngModelChange",function(o){g(a);let r=y();return f(r.facade.settings.units.positionFormat,o)||(r.facade.settings.units.positionFormat=o),m(o)}),p("selectionChange",function(){g(a);let o=y();return m(o.persistModel())}),S(5,xt,2,2,"mat-option",37,b),n()()()}if(l&2){let a=y();s(4),_("ngModel",a.facade.settings.units.positionFormat),s(),w(a.options.preferredValues.coords)}}function It(l,c){if(l&1&&(i(0,"mat-option",37),d(1),n()),l&2){let a=c.$implicit;h("value",a[0]),s(),C(a[1])}}function Ft(l,c){if(l&1){let a=W();i(0,"div",34)(1,"mat-form-field",35)(2,"mat-label"),d(3,"Prefer True / Magnetic values"),n(),i(4,"mat-select",119),u("ngModelChange",function(o){g(a);let r=y();return f(r.facade.settings.units.headingAttribute,o)||(r.facade.settings.units.headingAttribute=o),m(o)}),p("selectionChange",function(){g(a);let o=y();return m(o.persistModel("headingAttribute"))}),S(5,It,2,2,"mat-option",37,b),n()()()}if(l&2){let a=y();s(4),_("ngModel",a.facade.settings.units.headingAttribute),s(),w(a.options.preferredValues.heading)}}function Bt(l,c){if(l&1&&(i(0,"mat-option",37),d(1),n()),l&2){let a=c.$implicit;h("value",a),s(),C(a)}}function At(l,c){if(l&1&&(i(0,"mat-option",37),d(1),n()),l&2){let a=c.$implicit;h("value",a[0]),s(),C(a[1])}}function Nt(l,c){if(l&1&&(i(0,"mat-option",37),d(1),n()),l&2){let a=c.$implicit;h("value",a[0]),s(),C(a[1])}}function Rt(l,c){if(l&1&&(i(0,"mat-option",37),d(1),n()),l&2){let a=c.$implicit;h("value",a[0]),s(),C(a[1])}}function Ut(l,c){if(l&1&&(i(0,"mat-option",37),d(1),n()),l&2){let a=c.$implicit;h("value",a[0]),s(),C(a[1])}}function Gt(l,c){if(l&1&&(i(0,"mat-option",37),d(1),n()),l&2){let a=c.$implicit;h("value",a),s(),C(a)}}function Zt(l,c){l&1&&(i(0,"mat-error"),d(1," Please enter a positive number "),n())}function Ht(l,c){l&1&&(i(0,"mat-error"),d(1," Please enter a positive number "),n())}function Kt(l,c){l&1&&(i(0,"mat-error"),d(1," Please enter a positive number "),n())}function zt(l,c){if(l&1&&(i(0,"mat-option",37),d(1),n()),l&2){let a=c.$implicit;h("value",a[0]),s(),C(a[1])}}function qt(l,c){l&1&&(i(0,"mat-error"),d(1," Please enter a number > 0 "),n())}function jt(l,c){if(l&1&&(i(0,"mat-option",37),d(1),n()),l&2){let a=c.$implicit;h("value",a),s(),C(a)}}function Xt(l,c){if(l&1&&(i(0,"mat-option",37),d(1),n()),l&2){let a=c.$implicit;h("value",a[0]),s(),C(a[1])}}function Yt(l,c){if(l&1&&(i(0,"mat-radio-button",37),D(1,"img",120),d(2),n()),l&2){let a=c.$implicit;h("value",a[0]),s(),_e(`transform: scale(${a[0]})`),s(),k(" (",a[1],") ")}}function Jt(l,c){l&1&&(i(0,"mat-error"),d(1," Please enter a value between -90 and 90 (max 9 decimals) "),n())}function Qt(l,c){l&1&&(i(0,"mat-error"),d(1," Please enter a value between -180 and 180 (max 9 decimals) "),n())}function $t(l,c){if(l&1&&(i(0,"mat-option",37),d(1),n()),l&2){let a=c.$implicit;h("value",a[0]),s(),C(a[1])}}function ei(l,c){if(l&1&&(i(0,"mat-option",37),d(1),n()),l&2){let a=c.$implicit;h("value",a[0]),s(),C(a[1])}}function ti(l,c){if(l&1&&(i(0,"mat-option",37),d(1),n()),l&2){let a=c.$implicit;h("value",a),s(),C(a)}}function ii(l,c){if(l&1&&(i(0,"mat-option",37),d(1),n()),l&2){let a=c.$implicit;h("value",a),s(),C(a)}}function ni(l,c){l&1&&(i(0,"mat-error"),d(1," Please enter a number >= 1. "),n())}function ai(l,c){if(l&1&&(i(0,"mat-option",37),d(1),n()),l&2){let a=c.$implicit;h("value",a[0]),s(),C(a[1])}}function oi(l,c){if(l&1&&(i(0,"mat-option",37),d(1),n()),l&2){let a=c.$implicit;h("value",a[0]),s(),C(a[1])}}function ri(l,c){if(l&1&&(i(0,"mat-option",37),d(1),n()),l&2){let a=c.$implicit;h("value",a[0]),s(),C(a[1])}}function si(l,c){if(l&1&&(i(0,"mat-option",37),d(1),n()),l&2){let a=c.$implicit;h("value",a[0]),s(),C(a[1])}}function li(l,c){if(l&1&&(i(0,"mat-option",37),d(1),n()),l&2){let a=c.$implicit;h("value",a[0]),s(),C(a[1])}}function di(l,c){if(l&1&&(i(0,"mat-option",37),d(1),n()),l&2){let a=c.$implicit;h("value",a[0]),s(),C(a[1])}}function gi(l,c){if(l&1&&(i(0,"mat-option",37),d(1),n()),l&2){let a=c.$implicit;h("value",a),s(),C(a)}}function mi(l,c){if(l&1&&(i(0,"mat-option",37),d(1),n()),l&2){let a=c.$implicit;h("value",a[0]),s(),C(a[1])}}function ci(l,c){if(l&1&&(i(0,"mat-option",37),d(1),n()),l&2){let a=c.$implicit;h("value",a),s(),C(a)}}function pi(l,c){if(l&1&&(i(0,"mat-option",37),d(1),n()),l&2){let a=c.$implicit;h("value",a),s(),C(a)}}function _i(l,c){if(l&1){let a=W();i(0,"button",121),p("click",function(){g(a),y();let o=M(500);return m(o.value="")}),i(1,"mat-icon"),d(2,"close"),n()()}}function fi(l,c){if(l&1&&(i(0,"mat-list-option",96),d(1),n()),l&2){let a=c.$implicit,e=y();h("selected",e.facade.settings.resources.paths.includes(a))("value",a),s(),k(" ",a," ")}}function ui(l,c){if(l&1&&(i(0,"mat-option",37),d(1),n()),l&2){let a=c.$implicit;h("value",a.id),s(),C(a.name)}}function hi(l,c){if(l&1){let a=W();i(0,"mat-tab",97)(1,"div",28)(2,"div",29)(3,"div",109)(4,"div",31),d(5,"RADAR SETTINGS"),n(),i(6,"mat-card",32)(7,"div",42)(8,"div",34)(9,"mat-form-field",122)(10,"mat-label"),d(11,"Radar Devices"),n(),i(12,"mat-select",123,19),u("ngModelChange",function(o){g(a);let r=y();return f(r.facade.settings.radars.deviceId,o)||(r.facade.settings.radars.deviceId=o),m(o)}),p("selectionChange",function(){g(a);let o=y();return m(o.doRadar())}),S(14,ui,2,2,"mat-option",37,Ct),n()()(),i(16,"div",34)(17,"button",124),p("click",function(){g(a);let o=y();return m(o.refreshRadars())}),i(18,"mat-icon"),d(19," refresh"),n(),d(20," REFRESH "),n()()()()()()()()}if(l&2){let a=y();s(12),h("disabled",!a.radarList().length||a.app.uiCtrl().radarLayer),_("ngModel",a.facade.settings.radars.deviceId),s(2),w(a.radarList())}}function Si(l,c){if(l&1&&(i(0,"mat-option",37),d(1),n()),l&2){let a=c.$implicit;h("value",a[0]),s(),C(a[1])}}function wi(l,c){l&1&&(i(0,"mat-error"),d(1," Value required. "),n())}var rt=class l{show={favourites:I(!1)};options;aisStateFilter={moored:!1,anchored:!1};formattedNumberModel={rangeCirclesDistance:1e3};unitsChangedSignal=I(0);radarList=I([]);saveOnClose=!1;facade=E(nt);myElement=E(pe);dialogRef=E(ue);wakeLock=E(He);s57=E(Ke);app=E(L);radarApi=E(qe);constructor(){this.options=new it,ce(()=>{this.unitsChangedSignal(),this.formatNumberModel()})}ngOnInit(){this.facade.refresh(),this.facade.settings.selections.aisState.forEach(c=>{c in this.aisStateFilter&&(this.aisStateFilter[c]=!0)}),this.refreshRadars()}refreshRadars(){this.radarApi.listRadars().then(c=>{this.radarList.set(c)}).catch(()=>{this.radarList.set([])})}formatNumberModel(){this.formattedNumberModel={rangeCirclesDistance:this.facade.settings.units.distance==="kilometer"?Math.floor(this.facade.settings.vessels.rangeCirclesDistance/1e3):Math.floor(Q.transform(this.facade.settings.vessels.rangeCirclesDistance,"m","naut-mile"))}}raiseChange(){this.app.alignUnitPrefs(this.app.serverConfig.unitPreferences()),this.unitsChangedSignal.update(c=>c+1)}handleClose(){this.saveOnClose&&this.persistModel(),this.dialogRef.close()}doWakelock(c){this.persistModel(),c?this.wakeLock.disable():this.wakeLock.enable()}doS57(c){this.facade.settings.map.s57Options.depthUnit=this.facade.settings.units.depth,c?this.parseNumber(c):this.persistModel(),this.s57.setOptions(this.facade.settings.map.s57Options)}doRadar(){this.radarApi.init(this.facade.settings.radars.deviceId).then(c=>{c&&this.persistModel()})}onLineStyle(c,a){let e=this.facade.settings.vessels.selfLines[c];e&&(e.color=a.config.color,e.dash=a.config.dash,e.weight=a.config.weight,this.app.selfLines.update(o=>{let r=Object.assign({},o);return r[c]=a.lineStyle,r}),this.persistModel())}toggleFavourites(){this.show.favourites.update(c=>!c)}parseNumber(c,a){if(typeof c.model!="number"){c.reset(this.fallbackToDefault());return}!a&&c.model<0&&c.reset(Math.abs(c.model)),this.persistModel()}parseFormattedNumber(c,a){typeof c.model=="number"&&(!a&&c.model<0&&c.reset(Math.abs(c.model)),this.facade.settings.vessels.rangeCirclesDistance=this.facade.settings.units.distance==="kilometer"?Math.floor(this.formattedNumberModel.rangeCirclesDistance*1e3):Math.floor(Q.nauticalMilesToKm(this.formattedNumberModel.rangeCirclesDistance)*1e3),this.persistModel())}fallbackToDefault(){let c=ze();if(typeof this.facade.settings.map.s57Options.shallowDepth!="number")return c.map.s57Options.shallowDepth;if(typeof this.facade.settings.map.s57Options.safetyDepth!="number")return c.map.s57Options.safetyDepth;if(typeof this.facade.settings.map.s57Options.deepDepth!="number")return c.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 c.course.arrivalCircle}persistModel(c){this.facade.applySettings(),this.facade.emitChangeEvent(c)}deferPersist(c){this.saveOnClose=!0,this.facade.emitChangeEvent(c)}onInstrumentApp(){this.persistModel("pluginInstruments"),this.facade.buildFavouritesList()}onPreferredPaths(c){c.save&&(this.facade.settings.units.preferredPaths=c.value,this.persistModel())}onFavSelected(c,a){this.facade.settings.display.plugins.favourites=a.selectedOptions.selected.map(e=>e.value),this.persistModel()}onAisStateFilter(){let c=[];for(let a in this.aisStateFilter)this.aisStateFilter[a]&&c.push(a);this.facade.settings.selections.aisState=[].concat(c),this.persistModel()}onResPathSelected(c){this.facade.settings.resources.paths=c.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(c){return Q.getSymbol(c)}static \u0275fac=function(a){return new(a||l)};static \u0275cmp=P({type:l,selectors:[["settings-dialog"]],decls:595,vars:121,consts:[["serverprefs",""],["distunits",""],["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","",2,"display","flex"],["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"],["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"],[3,"ngModelChange","selectionChange","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"],["matTooltip","Do not exit follow vessel when map is panned.","label","after",3,"ngModelChange","change","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"],["floatLabel","always"],["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"],["floatLabel","always",2,"width","100%"],["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"],["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"],["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 o=W();i(0,"mat-toolbar",20)(1,"span",21)(2,"mat-icon"),d(3,"settings"),n()(),i(4,"span",22),d(5,"Settings"),n(),i(6,"span",23)(7,"button",24),p("click",function(){return g(o),m(e.handleClose())}),i(8,"mat-icon"),d(9,"close"),n()()()(),i(10,"div",25)(11,"mat-tab-group",26)(12,"mat-tab",27)(13,"div",28)(14,"div",29)(15,"div",30)(16,"div",31),d(17,"DISPLAY"),n(),i(18,"mat-card",32)(19,"mat-card-content")(20,"div",33)(21,"div",34)(22,"mat-form-field",35)(23,"mat-label"),d(24,"Dark Mode setting"),n(),i(25,"mat-select",36),u("ngModelChange",function(t){return g(o),f(e.facade.settings.display.darkMode.source,t)||(e.facade.settings.display.darkMode.source=t),m(t)}),p("selectionChange",function(){return g(o),m(e.persistModel("darkTheme"))}),S(26,yt,2,2,"mat-option",37,v),n()()(),i(28,"div",34)(29,"mat-checkbox",38),u("ngModelChange",function(t){return g(o),f(e.facade.settings.display.nightMode,t)||(e.facade.settings.display.nightMode=t),m(t)}),p("change",function(){return g(o),m(e.persistModel())}),d(30," Auto-set Night Mode "),n()(),i(31,"div",34)(32,"mat-form-field",35)(33,"mat-label"),d(34,"Action Button"),n(),i(35,"mat-select",39),u("ngModelChange",function(t){return g(o),f(e.facade.settings.display.fab,t)||(e.facade.settings.display.fab=t),m(t)}),p("selectionChange",function(){return g(o),m(e.persistModel())}),S(36,Mt,2,2,"mat-option",37,v),n()()(),i(38,"div",34)(39,"mat-checkbox",40),u("ngModelChange",function(t){return g(o),f(e.facade.settings.display.disableWakelock,t)||(e.facade.settings.display.disableWakelock=t),m(t)}),p("change",function(t){return g(o),m(e.doWakelock(t.checked))}),d(40," Allow Device to Sleep "),n()(),i(41,"div",34)(42,"mat-checkbox",41),u("ngModelChange",function(t){return g(o),f(e.facade.settings.display.preferInfoPanel,t)||(e.facade.settings.display.preferInfoPanel=t),m(t)}),p("change",function(){return g(o),m(e.persistModel())}),d(43," Prefer Info-Panel "),n()()()()(),D(44,"br"),i(45,"mat-card",32)(46,"mat-card-content"),V(47,bt,22,4,"div",42),V(48,Tt,10,0,"div",33),n()(),D(49,"br"),n(),i(50,"div",30)(51,"div",31),d(52,"SOUND"),n(),i(53,"mat-card",32)(54,"mat-card-content")(55,"div",33)(56,"div",34)(57,"mat-checkbox",43),u("ngModelChange",function(t){return g(o),f(e.facade.settings.display.muteSound,t)||(e.facade.settings.display.muteSound=t),m(t)}),p("change",function(){return g(o),m(e.persistModel())}),d(58," Do not Play Sounds "),n()(),i(59,"div",34)(60,"mat-checkbox",44),u("ngModelChange",function(t){return g(o),f(e.facade.settings.display.depthAlarm.enabled,t)||(e.facade.settings.display.depthAlarm.enabled=t),m(t)}),p("change",function(){return g(o),m(e.persistModel())}),d(61," Show DEPTH Alarms "),n()(),i(62,"div",34)(63,"mat-form-field",35)(64,"mat-label"),d(65,"Alarm Smoothing Time"),n(),i(66,"mat-select",45),u("ngModelChange",function(t){return g(o),f(e.facade.settings.display.depthAlarm.smoothing,t)||(e.facade.settings.display.depthAlarm.smoothing=t),m(t)}),p("selectionChange",function(){return g(o),m(e.persistModel())}),S(67,Dt,2,2,"mat-option",37,v),n()()()()()()()()()(),i(69,"mat-tab",46)(70,"div",28)(71,"div",29)(72,"div",47)(73,"div",31),d(74,"UNITS & VALUES"),n(),i(75,"mat-card",32)(76,"mat-card-content")(77,"div",33)(78,"div",34)(79,"fieldset")(80,"legend")(81,"mat-checkbox",48,0),u("ngModelChange",function(t){return g(o),f(e.facade.settings.units.useServerPrefs,t)||(e.facade.settings.units.useServerPrefs=t),m(t)}),p("change",function(){return g(o),e.raiseChange(),m(e.persistModel())}),d(83," Use Server Unit Preferences "),n()(),i(84,"div",33)(85,"div",34)(86,"mat-form-field",35)(87,"mat-label"),d(88,"Distance units"),n(),i(89,"mat-select",49,1),u("ngModelChange",function(t){return g(o),f(e.facade.settings.units.distance,t)||(e.facade.settings.units.distance=t),m(t)}),p("selectionChange",function(){return g(o),e.raiseChange(),m(e.persistModel())}),S(91,Et,2,2,"mat-option",37,v),n()()(),i(93,"div",34)(94,"mat-form-field",35)(95,"mat-label"),d(96,"Depth units"),n(),i(97,"mat-select",49),u("ngModelChange",function(t){return g(o),f(e.facade.settings.units.depth,t)||(e.facade.settings.units.depth=t),m(t)}),p("selectionChange",function(){return g(o),e.raiseChange(),m(e.doS57())}),S(98,Wt,2,2,"mat-option",37,v),n()()(),i(100,"div",34)(101,"mat-form-field",35)(102,"mat-label"),d(103,"Length units"),n(),i(104,"mat-select",49),u("ngModelChange",function(t){return g(o),f(e.facade.settings.units.length,t)||(e.facade.settings.units.length=t),m(t)}),p("selectionChange",function(){return g(o),e.raiseChange(),m(e.persistModel())}),S(105,kt,2,2,"mat-option",37,v),n()()(),i(107,"div",34)(108,"mat-form-field",35)(109,"mat-label"),d(110,"Temperature units"),n(),i(111,"mat-select",49),u("ngModelChange",function(t){return g(o),f(e.facade.settings.units.temperature,t)||(e.facade.settings.units.temperature=t),m(t)}),p("selectionChange",function(){return g(o),e.raiseChange(),m(e.persistModel())}),S(112,Pt,2,2,"mat-option",37,v),n()()(),i(114,"div",34)(115,"mat-form-field",35)(116,"mat-label"),d(117,"Speed units"),n(),i(118,"mat-select",49),u("ngModelChange",function(t){return g(o),f(e.facade.settings.units.speed,t)||(e.facade.settings.units.speed=t),m(t)}),p("selectionChange",function(){return g(o),e.raiseChange(),m(e.persistModel())}),S(119,Lt,2,2,"mat-option",37,v),n()()()()()()(),i(121,"div",33),V(122,Ot,7,1,"div",34),V(123,Ft,7,1,"div",34),i(124,"div",34)(125,"signalk-preferred-paths",50),p("chosen",function(t){return g(o),m(e.onPreferredPaths(t))}),n()()()()()()()()(),i(126,"mat-tab",51)(127,"div",28)(128,"div",29)(129,"div",52)(130,"div",31),d(131,"MAP"),n(),i(132,"mat-card")(133,"mat-card-content")(134,"div",33)(135,"div",34)(136,"mat-form-field",35)(137,"mat-label"),d(138,"Feature label zoom level"),n(),i(139,"mat-select",53),u("ngModelChange",function(t){return g(o),f(e.facade.settings.map.labelsMinZoom,t)||(e.facade.settings.map.labelsMinZoom=t),m(t)}),p("selectionChange",function(){return g(o),m(e.persistModel())}),S(140,Bt,2,2,"mat-option",37,b),n()()(),i(142,"div",34)(143,"mat-form-field",35)(144,"mat-label"),d(145,"Offset Vessel Center"),n(),i(146,"mat-select",53),u("ngModelChange",function(t){return g(o),f(e.facade.settings.map.centerOffset,t)||(e.facade.settings.map.centerOffset=t),m(t)}),p("selectionChange",function(){return g(o),m(e.persistModel())}),S(147,At,2,2,"mat-option",37,v),n()()(),i(149,"div",34)(150,"mat-checkbox",54),u("ngModelChange",function(t){return g(o),f(e.facade.settings.map.popoverMulti,t)||(e.facade.settings.map.popoverMulti=t),m(t)}),p("change",function(){return g(o),m(e.persistModel())}),d(151," Popovers close with button "),n()(),i(152,"div",34)(153,"mat-checkbox",55),u("ngModelChange",function(t){return g(o),f(e.facade.settings.map.doubleClickZoom,t)||(e.facade.settings.map.doubleClickZoom=t),m(t)}),p("change",function(){return g(o),m(e.persistModel())}),d(154," Double click to Zoom "),n()(),i(155,"div",34)(156,"mat-checkbox",56),u("ngModelChange",function(t){return g(o),f(e.facade.settings.map.overZoomTiles,t)||(e.facade.settings.map.overZoomTiles=t),m(t)}),p("change",function(){return g(o),m(e.persistModel())}),d(157," Keep tiles visible on max zoom "),n()(),i(158,"div",34)(159,"mat-checkbox",57),u("ngModelChange",function(t){return g(o),f(e.facade.settings.map.lockMoveMap,t)||(e.facade.settings.map.lockMoveMap=t),m(t)}),p("change",function(){return g(o),m(e.persistModel())}),d(160," Lock Follow Vessel "),n()()()()(),i(161,"div",31),d(162,"VECTOR CHARTS"),n(),i(163,"mat-card")(164,"mat-card-content")(165,"div",33)(166,"div",34)(167,"mat-form-field",35)(168,"mat-label"),d(169,"Graphics Style"),n(),i(170,"mat-select",58),u("ngModelChange",function(t){return g(o),f(e.facade.settings.map.s57Options.graphicsStyle,t)||(e.facade.settings.map.s57Options.graphicsStyle=t),m(t)}),p("selectionChange",function(){return g(o),m(e.doS57())}),S(171,Nt,2,2,"mat-option",37,v),n()()(),i(173,"div",34)(174,"mat-form-field",35)(175,"mat-label"),d(176,"Boundaries"),n(),i(177,"mat-select",59),u("ngModelChange",function(t){return g(o),f(e.facade.settings.map.s57Options.boundaries,t)||(e.facade.settings.map.s57Options.boundaries=t),m(t)}),p("selectionChange",function(){return g(o),m(e.doS57())}),S(178,Rt,2,2,"mat-option",37,v),n()()(),i(180,"div",34)(181,"mat-form-field",35)(182,"mat-label"),d(183,"Color Table (Requires refresh)"),n(),i(184,"mat-select",60),u("ngModelChange",function(t){return g(o),f(e.facade.settings.map.s57Options.colorTable,t)||(e.facade.settings.map.s57Options.colorTable=t),m(t)}),p("selectionChange",function(){return g(o),m(e.doS57())}),S(185,Ut,2,2,"mat-option",37,v),n()()(),i(187,"div",34)(188,"mat-form-field",35)(189,"mat-label"),d(190,"Colors"),n(),i(191,"mat-select",61),u("ngModelChange",function(t){return g(o),f(e.facade.settings.map.s57Options.colors,t)||(e.facade.settings.map.s57Options.colors=t),m(t)}),p("selectionChange",function(){return g(o),m(e.doS57())}),S(192,Gt,2,2,"mat-option",37,b),n()()()(),i(194,"div",33)(195,"div",34)(196,"mat-form-field",35)(197,"mat-label"),d(198,"Shallow depth"),n(),i(199,"input",62,2),u("ngModelChange",function(t){return g(o),f(e.facade.settings.map.s57Options.shallowDepth,t)||(e.facade.settings.map.s57Options.shallowDepth=t),m(t)}),p("change",function(){g(o);let t=M(200);return m(e.doS57(t))}),n(),V(201,Zt,2,0,"mat-error"),i(202,"span",63),d(203,"m"),n()()(),i(204,"div",34)(205,"mat-form-field",35)(206,"mat-label"),d(207,"Safety depth"),n(),i(208,"input",62,3),u("ngModelChange",function(t){return g(o),f(e.facade.settings.map.s57Options.safetyDepth,t)||(e.facade.settings.map.s57Options.safetyDepth=t),m(t)}),p("change",function(){g(o);let t=M(209);return m(e.doS57(t))}),n(),V(210,Ht,2,0,"mat-error"),i(211,"span",63),d(212,"m"),n()()(),i(213,"div",34)(214,"mat-form-field",35)(215,"mat-label"),d(216,"Deep depth"),n(),i(217,"input",62,4),u("ngModelChange",function(t){return g(o),f(e.facade.settings.map.s57Options.deepDepth,t)||(e.facade.settings.map.s57Options.deepDepth=t),m(t)}),p("change",function(){g(o);let t=M(218);return m(e.doS57(t))}),n(),V(219,Kt,2,0,"mat-error"),i(220,"span",63),d(221,"m"),n()()(),i(222,"div",34)(223,"mat-form-field",35)(224,"mat-label"),d(225,"Layers"),n(),i(226,"mat-select",64),u("ngModelChange",function(t){return g(o),f(e.facade.settings.map.s57Options.otherLayers,t)||(e.facade.settings.map.s57Options.otherLayers=t),m(t)}),p("selectionChange",function(){return g(o),m(e.doS57())}),S(227,zt,2,2,"mat-option",37,v),n()()()()()()()()()(),i(229,"mat-tab",65)(230,"div",28)(231,"div",29)(232,"div",66)(233,"div",31),d(234,"COURSE"),n(),i(235,"mat-card",32)(236,"mat-card-content")(237,"div",33)(238,"div",34)(239,"mat-form-field",35)(240,"mat-label"),d(241,"Arrival Circle"),n(),i(242,"input",62,5),u("ngModelChange",function(t){return g(o),f(e.facade.settings.course.arrivalCircle,t)||(e.facade.settings.course.arrivalCircle=t),m(t)}),p("change",function(){g(o);let t=M(243);return m(e.parseNumber(t))}),n(),V(244,qt,2,0,"mat-error"),i(245,"span",63),d(246,"m"),n()()()(),i(247,"div",33)(248,"div",34)(249,"mat-checkbox",44,6),u("ngModelChange",function(t){return g(o),f(e.facade.settings.course.autoNextPointOnArrival,t)||(e.facade.settings.course.autoNextPointOnArrival=t),m(t)}),p("change",function(){return g(o),m(e.persistModel())}),d(251," Auto-advance to next point on arrival "),n()()(),i(252,"div",33)(253,"div",34)(254,"mat-form-field",35)(255,"mat-label"),d(256,"Notification type to use"),n(),i(257,"mat-select",67,7),u("ngModelChange",function(t){return g(o),f(e.facade.settings.course.autoNextPointTrigger,t)||(e.facade.settings.course.autoNextPointTrigger=t),m(t)}),p("selectionChange",function(){return g(o),m(e.persistModel())}),S(259,jt,2,2,"mat-option",37,b),n()()(),i(261,"div",34)(262,"mat-form-field",35)(263,"mat-label"),d(264,"Time to wait before advancing"),n(),i(265,"mat-select",68),u("ngModelChange",function(t){return g(o),f(e.facade.settings.course.autoNextPointDelay,t)||(e.facade.settings.course.autoNextPointDelay=t),m(t)}),p("selectionChange",function(){return g(o),m(e.persistModel())}),S(266,Xt,2,2,"mat-option",37,v),n()()()()()()()()()(),i(268,"mat-tab",69)(269,"div",28)(270,"div",29)(271,"div",70)(272,"div",31),d(273,"VESSEL"),n(),i(274,"mat-card",32)(275,"mat-card-content")(276,"div",33)(277,"div",34)(278,"fieldset")(279,"legend"),d(280,"Vessel Icon Size"),n(),i(281,"div",33)(282,"div",34)(283,"mat-radio-group",71),u("ngModelChange",function(t){return g(o),f(e.facade.settings.vessels.iconScale,t)||(e.facade.settings.vessels.iconScale=t),m(t)}),p("change",function(){return g(o),m(e.persistModel())}),S(284,Yt,3,4,"mat-radio-button",37,v),n()()()()()(),i(286,"div",34)(287,"fieldset")(288,"legend")(289,"mat-checkbox",72,8),u("ngModelChange",function(t){return g(o),f(e.facade.settings.vessels.fixedLocationMode,t)||(e.facade.settings.vessels.fixedLocationMode=t),m(t)}),p("change",function(){return g(o),m(e.persistModel())}),d(291," Fixed Location Mode "),n()(),i(292,"div",33)(293,"div",34)(294,"mat-form-field",73)(295,"mat-label"),d(296,"Latitude"),n(),i(297,"input",74,9),u("ngModelChange",function(t){return g(o),f(e.facade.fixedPosition[1],t)||(e.facade.fixedPosition[1]=t),m(t)}),p("change",function(){g(o);let t=M(298);return m(e.parseNumber(t,!0))}),n(),V(299,Jt,2,0,"mat-error"),n(),i(300,"mat-form-field",73)(301,"mat-label"),d(302,"Longitude"),n(),i(303,"input",75,10),u("ngModelChange",function(t){return g(o),f(e.facade.fixedPosition[0],t)||(e.facade.fixedPosition[0]=t),m(t)}),p("change",function(){g(o);let t=M(304);return m(e.parseNumber(t,!0))}),n(),V(305,Qt,2,0,"mat-error"),n()()()()()()(),D(306,"br"),i(307,"mat-card",32)(308,"mat-card-content")(309,"div",34)(310,"fieldset")(311,"legend"),d(312,"Vessel Lines:"),n(),i(313,"div",33)(314,"mat-checkbox",44),u("ngModelChange",function(t){return g(o),f(e.facade.settings.vessels.windVectors,t)||(e.facade.settings.vessels.windVectors=t),m(t)}),p("change",function(){return g(o),m(e.persistModel())}),d(315," Display Wind Vectors "),n(),i(316,"mat-checkbox",44),u("ngModelChange",function(t){return g(o),f(e.facade.settings.vessels.laylines,t)||(e.facade.settings.vessels.laylines=t),m(t)}),p("change",function(){return g(o),m(e.persistModel())}),d(317," Display Laylines "),n()(),i(318,"div",33)(319,"div",34)(320,"fieldset")(321,"legend"),d(322,"Heading Line"),n(),i(323,"div",33)(324,"div",34)(325,"mat-form-field")(326,"mat-label"),d(327,"Heading Line Length"),n(),i(328,"mat-select",76),u("ngModelChange",function(t){return g(o),f(e.facade.settings.vessels.selfLines.heading.length,t)||(e.facade.settings.vessels.selfLines.heading.length=t),m(t)}),p("selectionChange",function(){return g(o),m(e.persistModel())}),S(329,$t,2,2,"mat-option",37,v),n()()(),i(331,"div",34)(332,"linestyle-select",77),p("selectionChange",function(t){return g(o),m(e.onLineStyle("heading",t))}),n()()()()()(),i(333,"div",33)(334,"div",34)(335,"fieldset")(336,"legend"),d(337,"COG Line"),n(),i(338,"div",33)(339,"div",34)(340,"mat-form-field")(341,"mat-label"),d(342,"COG Line Length"),n(),i(343,"mat-select",78),u("ngModelChange",function(t){return g(o),f(e.facade.settings.vessels.selfLines.cog.length,t)||(e.facade.settings.vessels.selfLines.cog.length=t),m(t)}),p("selectionChange",function(){return g(o),m(e.persistModel())}),S(344,ei,2,2,"mat-option",37,v),n()()(),i(346,"div",34)(347,"linestyle-select",77),p("selectionChange",function(t){return g(o),m(e.onLineStyle("cog",t))}),n()()()()()()()(),i(348,"div",34)(349,"fieldset")(350,"legend")(351,"mat-checkbox",44),u("ngModelChange",function(t){return g(o),f(e.facade.settings.vessels.rangeCircles,t)||(e.facade.settings.vessels.rangeCircles=t),m(t)}),p("change",function(){return g(o),m(e.persistModel())}),d(352," Display Range Circles "),n()(),i(353,"div",33)(354,"div",34)(355,"mat-form-field",35)(356,"mat-label"),d(357,"Number of Range Circles"),n(),i(358,"mat-select",79),u("ngModelChange",function(t){return g(o),f(e.facade.settings.vessels.rangeCircleCount,t)||(e.facade.settings.vessels.rangeCircleCount=t),m(t)}),p("selectionChange",function(){return g(o),m(e.persistModel())}),S(359,ti,2,2,"mat-option",37,b),n()()(),i(361,"div",34)(362,"mat-form-field",35)(363,"mat-label"),d(364,"Minimum Zoom Level"),n(),i(365,"mat-select",79),u("ngModelChange",function(t){return g(o),f(e.facade.settings.vessels.rangeCircleMinZoom,t)||(e.facade.settings.vessels.rangeCircleMinZoom=t),m(t)}),p("selectionChange",function(){return g(o),m(e.persistModel())}),S(366,ii,2,2,"mat-option",37,b),n()()()(),i(368,"div",33)(369,"div",34)(370,"mat-checkbox",80),u("ngModelChange",function(t){return g(o),f(e.facade.settings.vessels.rangeCirclesFixed,t)||(e.facade.settings.vessels.rangeCirclesFixed=t),m(t)}),p("change",function(){return g(o),m(e.persistModel())}),d(371," Use Fixed Distance "),n()(),i(372,"div",34)(373,"mat-form-field",73)(374,"mat-label"),d(375),n(),i(376,"input",81,11),u("ngModelChange",function(t){return g(o),f(e.formattedNumberModel.rangeCirclesDistance,t)||(e.formattedNumberModel.rangeCirclesDistance=t),m(t)}),p("change",function(){g(o);let t=M(377);return m(e.parseFormattedNumber(t))}),n(),V(378,ni,2,0,"mat-error"),n()()()()()()(),D(379,"br"),i(380,"mat-card",32)(381,"mat-card-content")(382,"div",33)(383,"fieldset")(384,"legend")(385,"mat-checkbox",44),u("ngModelChange",function(t){return g(o),f(e.facade.settings.vessels.trail,t)||(e.facade.settings.vessels.trail=t),m(t)}),p("change",function(){return g(o),m(e.persistModel("vesselTrail"))}),d(386," Display Vessel Track "),n()(),i(387,"div",33)(388,"div",34)(389,"mat-checkbox",82),u("ngModelChange",function(t){return g(o),f(e.facade.settings.vessels.trailFromServer,t)||(e.facade.settings.vessels.trailFromServer=t),m(t)}),p("change",function(){return g(o),m(e.persistModel("trailFromServer"))}),d(390," Get Track from server "),n(),d(391," \xA0\xA0 "),i(392,"mat-slider",83)(393,"input",84),u("ngModelChange",function(t){return g(o),f(e.facade.settings.vessels.trailDuration,t)||(e.facade.settings.vessels.trailDuration=t),m(t)}),p("valueChange",function(){return g(o),m(e.deferPersist())}),n()(),d(394),n()(),i(395,"div",33)(396,"div",34)(397,"mat-form-field",35)(398,"mat-label"),d(399,"Resolution: Last hour"),n(),i(400,"mat-select",79),u("ngModelChange",function(t){return g(o),f(e.facade.settings.vessels.trailResolution.lastHour,t)||(e.facade.settings.vessels.trailResolution.lastHour=t),m(t)}),p("selectionChange",function(){return g(o),m(e.persistModel())}),S(401,ai,2,2,"mat-option",37,v),n()()(),i(403,"div",34)(404,"mat-form-field",35)(405,"mat-label"),d(406,"Resolution: 1 hr -> 24 hrs"),n(),i(407,"mat-select",79),u("ngModelChange",function(t){return g(o),f(e.facade.settings.vessels.trailResolution.next23,t)||(e.facade.settings.vessels.trailResolution.next23=t),m(t)}),p("selectionChange",function(){return g(o),m(e.persistModel())}),S(408,oi,2,2,"mat-option",37,v),n()()(),i(410,"div",34)(411,"mat-form-field",35)(412,"mat-label"),d(413,"Resolution: > 24 hrs"),n(),i(414,"mat-select",79),u("ngModelChange",function(t){return g(o),f(e.facade.settings.vessels.trailResolution.beyond24,t)||(e.facade.settings.vessels.trailResolution.beyond24=t),m(t)}),p("selectionChange",function(){return g(o),m(e.persistModel())}),S(415,ri,2,2,"mat-option",37,v),n()()()()()()()(),i(417,"div",31),d(418,"OTHER VESSELS"),n(),i(419,"mat-card",32)(420,"mat-card-content")(421,"div",33)(422,"div",34)(423,"mat-checkbox",44),u("ngModelChange",function(t){return g(o),f(e.facade.settings.vessels.aisShowTrack,t)||(e.facade.settings.vessels.aisShowTrack=t),m(t)}),p("change",function(){return g(o),m(e.persistModel())}),d(424," Show Track "),n(),d(425," \xA0 "),i(426,"mat-checkbox",44),u("ngModelChange",function(t){return g(o),f(e.aisStateFilter.moored,t)||(e.aisStateFilter.moored=t),m(t)}),p("change",function(){return g(o),m(e.onAisStateFilter())}),d(427," Hide Moored "),n(),d(428," \xA0 "),i(429,"mat-checkbox",44),u("ngModelChange",function(t){return g(o),f(e.aisStateFilter.anchored,t)||(e.aisStateFilter.anchored=t),m(t)}),p("change",function(){return g(o),m(e.onAisStateFilter())}),d(430," Hide Anchored "),n()()(),i(431,"div",33)(432,"div",34)(433,"mat-form-field",35)(434,"mat-label"),d(435,"Mark AIS target inactive after"),n(),i(436,"mat-select",53),u("ngModelChange",function(t){return g(o),f(e.facade.settings.vessels.aisStaleAge,t)||(e.facade.settings.vessels.aisStaleAge=t),m(t)}),p("selectionChange",function(){return g(o),m(e.persistModel())}),S(437,si,2,2,"mat-option",37,v),n()()(),i(439,"div",34)(440,"mat-form-field",35)(441,"mat-label"),d(442,"Remove AIS target after"),n(),i(443,"mat-select",53),u("ngModelChange",function(t){return g(o),f(e.facade.settings.vessels.aisMaxAge,t)||(e.facade.settings.vessels.aisMaxAge=t),m(t)}),p("selectionChange",function(){return g(o),m(e.persistModel())}),S(444,li,2,2,"mat-option",37,v),n()()(),i(446,"div",34)(447,"mat-form-field",35)(448,"mat-label"),d(449,"Wind Vector Value"),n(),i(450,"mat-select",53),u("ngModelChange",function(t){return g(o),f(e.facade.settings.vessels.aisWindApparent,t)||(e.facade.settings.vessels.aisWindApparent=t),m(t)}),p("selectionChange",function(){return g(o),m(e.persistModel())}),S(451,di,2,2,"mat-option",37,v),n()()(),i(453,"div",34)(454,"mat-form-field",35)(455,"mat-label"),d(456,"Wind / Track Zoom Level"),n(),i(457,"mat-select",53),u("ngModelChange",function(t){return g(o),f(e.facade.settings.vessels.aisWindMinZoom,t)||(e.facade.settings.vessels.aisWindMinZoom=t),m(t)}),p("selectionChange",function(){return g(o),m(e.persistModel())}),S(458,gi,2,2,"mat-option",37,b),n()()(),i(460,"div",34)(461,"mat-form-field",35)(462,"mat-label"),d(463,"COG Line"),n(),i(464,"mat-select",53),u("ngModelChange",function(t){return g(o),f(e.facade.settings.vessels.aisCogLine,t)||(e.facade.settings.vessels.aisCogLine=t),m(t)}),p("selectionChange",function(){return g(o),m(e.persistModel())}),S(465,mi,2,2,"mat-option",37,v),n()()()()()()()()()(),i(467,"mat-tab",85)(468,"div",28)(469,"div",29)(470,"div",86)(471,"div",31),d(472,"NOTES"),n(),i(473,"mat-card",32)(474,"mat-card-content")(475,"div",42)(476,"div",34)(477,"mat-checkbox",44),u("ngModelChange",function(t){return g(o),f(e.facade.settings.ui.showNotes,t)||(e.facade.settings.ui.showNotes=t),m(t)}),p("change",function(){return g(o),m(e.persistModel())}),d(478," Display Notes on Map "),n()(),i(479,"div",34)(480,"mat-form-field",35)(481,"mat-label"),d(482,"Notes Zoom Level"),n(),i(483,"mat-select",87),u("valueChange",function(t){return g(o),f(e.facade.settings.resources.notes.minZoom,t)||(e.facade.settings.resources.notes.minZoom=t),m(t)}),p("selectionChange",function(){return g(o),m(e.persistModel("fetchNotes"))}),S(484,ci,2,2,"mat-option",37,b),n()()()(),i(486,"div",42)(487,"div",34)(488,"mat-form-field",35)(489,"mat-label"),d(490),n(),i(491,"mat-select",49),u("ngModelChange",function(t){return g(o),f(e.facade.settings.resources.notes.getRadius,t)||(e.facade.settings.resources.notes.getRadius=t),m(t)}),p("selectionChange",function(){return g(o),m(e.persistModel("fetchNotes"))}),S(492,pi,2,2,"mat-option",37,b),n()()()(),i(494,"div",42)(495,"div",34)(496,"mat-form-field",88)(497,"mat-label"),d(498,"Notes fetch filter:"),n(),i(499,"input",89,12),u("ngModelChange",function(t){return g(o),f(e.facade.settings.resources.notes.rootFilter,t)||(e.facade.settings.resources.notes.rootFilter=t),m(t)}),p("change",function(){return g(o),m(e.persistModel("fetchNotes"))}),n(),V(501,_i,3,0,"button",90),n()()(),i(502,"div",42)(503,"div",34)(504,"mat-checkbox",91),u("ngModelChange",function(t){return g(o),f(e.facade.settings.resources.notes.groupNameEdit,t)||(e.facade.settings.resources.notes.groupNameEdit=t),m(t)}),p("change",function(){return g(o),m(e.persistModel())}),d(505," Edit Group Names "),n()(),i(506,"div",34)(507,"mat-checkbox",92),u("ngModelChange",function(t){return g(o),f(e.facade.settings.resources.notes.groupRequiresPosition,t)||(e.facade.settings.resources.notes.groupRequiresPosition=t),m(t)}),p("change",function(){return g(o),m(e.persistModel())}),d(508," Position Group Note "),n()()()()()(),i(509,"div",93)(510,"div",31),d(511,"CUSTOM RESOURCES"),n(),i(512,"mat-card",32)(513,"mat-card-content")(514,"div",42)(515,"div",34)(516,"div",94),d(517," Select custom resource types (./resources/<name>) "),n(),i(518,"mat-selection-list",95,13),p("selectionChange",function(){g(o);let t=M(519);return m(e.onResPathSelected(t))}),S(520,fi,2,3,"mat-list-option",96,b),n()()()()()()()()(),V(522,hi,21,2,"mat-tab",97),i(523,"mat-tab",98)(524,"div",28)(525,"div",29)(526,"div",99)(527,"div",31),d(528,"SIGNAL K: CONNECTION"),n(),i(529,"mat-card",32)(530,"mat-card-content")(531,"div",42)(532,"fieldset")(533,"legend"),d(534,"Filter Stream data:"),n(),i(535,"span",100),d(536," Check to include Signal K schema groups on display."),D(537,"br"),i(538,"i"),d(539,"Use to manage display performance."),n()(),i(540,"div",34)(541,"mat-checkbox",101),u("ngModelChange",function(t){return g(o),f(e.facade.settings.signalk.vessels,t)||(e.facade.settings.signalk.vessels=t),m(t)}),p("change",function(){return g(o),m(e.persistModel())}),d(542," Vessels (other than Self) "),n()(),i(543,"div",34)(544,"mat-checkbox",102),u("ngModelChange",function(t){return g(o),f(e.facade.settings.signalk.atons,t)||(e.facade.settings.signalk.atons=t),m(t)}),p("change",function(){return g(o),m(e.persistModel())}),d(545," Aids to Navigation (AtoN) "),n()(),i(546,"div",34)(547,"mat-checkbox",103),u("ngModelChange",function(t){return g(o),f(e.facade.settings.signalk.aircraft,t)||(e.facade.settings.signalk.aircraft=t),m(t)}),p("change",function(){return g(o),m(e.persistModel())}),d(548," Aircraft "),n()(),i(549,"div",34)(550,"mat-checkbox",104),u("ngModelChange",function(t){return g(o),f(e.facade.settings.signalk.sar,t)||(e.facade.settings.signalk.sar=t),m(t)}),p("change",function(){return g(o),m(e.persistModel())}),d(551," Search and Rescue (SaR) "),n()(),i(552,"div",34)(553,"mat-checkbox",105),u("ngModelChange",function(t){return g(o),f(e.facade.settings.signalk.meteo,t)||(e.facade.settings.signalk.meteo=t),m(t)}),p("change",function(){return g(o),m(e.persistModel())}),d(554," Weather (Meteo) "),n()(),i(555,"div",34),D(556,"br"),i(557,"mat-form-field",35)(558,"mat-label"),d(559,"Max. distance from vessel"),n(),i(560,"mat-select",106,14),u("ngModelChange",function(t){return g(o),f(e.facade.settings.signalk.maxRadius,t)||(e.facade.settings.signalk.maxRadius=t),m(t)}),p("selectionChange",function(){return g(o),m(e.persistModel())}),S(562,Si,2,2,"mat-option",37,v),n()()()()(),i(564,"div",42)(565,"div",34)(566,"button",107),p("click",function(){return g(o),m(e.clearAuthToken())}),i(567,"mat-icon"),d(568,"key_off"),n()()()()()()()()()(),i(569,"mat-tab",108)(570,"div",28)(571,"div",29)(572,"div",109)(573,"div",31),d(574,"EXPERIMENTS"),n(),i(575,"mat-card",32)(576,"mat-card-content")(577,"div",42)(578,"div",34)(579,"mat-checkbox",44),u("ngModelChange",function(t){return g(o),f(e.facade.settings.resources.video.enable,t)||(e.facade.settings.resources.video.enable=t),m(t)}),p("change",function(){return g(o),m(e.persistModel())}),d(580," Enable Video "),n()(),i(581,"div",34)(582,"mat-form-field",88)(583,"mat-label"),d(584,"url:"),n(),i(585,"input",110,15),u("ngModelChange",function(t){return g(o),f(e.facade.settings.resources.video.url,t)||(e.facade.settings.resources.video.url=t),m(t)}),p("change",function(){return g(o),m(e.persistModel("videoUrl"))}),n(),V(587,wi,2,0,"mat-error"),n()()(),i(588,"div",42)(589,"div",34)(590,"mat-checkbox",111,16),u("ngModelChange",function(t){return g(o),f(e.facade.settings.experiments,t)||(e.facade.settings.experiments=t),m(t)}),p("change",function(){return g(o),m(e.persistModel())}),i(592,"mat-icon"),d(593,"science"),n(),d(594," Experimental Features "),n()()()()()()()()()()()}if(a&2){let o=M(90),r=M(200),t=M(209),ne=M(218),ae=M(243),le=M(250),de=M(290),oe=M(298),re=M(304),se=M(377),st=M(500),lt=M(586);s(25),_("ngModel",e.facade.settings.display.darkMode.source),s(),w(e.options.darkMode),s(3),_("ngModel",e.facade.settings.display.nightMode),s(6),_("ngModel",e.facade.settings.display.fab),s(),w(e.options.buttons.fab),s(3),h("disabled",!e.wakeLock.isAvailable),_("ngModel",e.facade.settings.display.disableWakelock),s(3),_("ngModel",e.facade.settings.display.preferInfoPanel),s(5),T(e.facade.applicationList.length>1?47:-1),s(),T(e.show.favourites()?48:-1),s(9),_("ngModel",e.facade.settings.display.muteSound),s(3),_("ngModel",e.facade.settings.display.depthAlarm.enabled),s(6),_("ngModel",e.facade.settings.display.depthAlarm.smoothing),h("disabled",!e.facade.settings.display.depthAlarm.enabled),s(),w(e.options.alarm.smoothing),s(14),h("disabled",!e.app.serverConfig.unitPreferences()),_("ngModel",e.facade.settings.units.useServerPrefs),s(8),h("disabled",e.facade.settings.units.useServerPrefs),_("ngModel",e.facade.settings.units.distance),s(2),w(e.options.availableUnits.distance),s(6),h("disabled",e.facade.settings.units.useServerPrefs),_("ngModel",e.facade.settings.units.depth),s(),w(e.options.availableUnits.depth),s(6),h("disabled",e.facade.settings.units.useServerPrefs),_("ngModel",e.facade.settings.units.length),s(),w(e.options.availableUnits.length),s(6),h("disabled",e.facade.settings.units.useServerPrefs),_("ngModel",e.facade.settings.units.temperature),s(),w(e.options.availableUnits.temperature),s(6),h("disabled",e.facade.settings.units.useServerPrefs),_("ngModel",e.facade.settings.units.speed),s(),w(e.options.availableUnits.speed),s(3),T(e.options.preferredValues.coords.length!==0?122:-1),s(),T(e.options.preferredValues.heading.length!==0?123:-1),s(16),_("ngModel",e.facade.settings.map.labelsMinZoom),s(),w(e.options.zoomLevels),s(6),_("ngModel",e.facade.settings.map.centerOffset),s(),w(e.options.map.centerOffset),s(3),_("ngModel",e.facade.settings.map.popoverMulti),s(3),_("ngModel",e.facade.settings.map.doubleClickZoom),s(3),_("ngModel",e.facade.settings.map.overZoomTiles),s(3),_("ngModel",e.facade.settings.map.lockMoveMap),s(11),_("ngModel",e.facade.settings.map.s57Options.graphicsStyle),s(),w(e.options.map.s57.graphicsStyle),s(6),_("ngModel",e.facade.settings.map.s57Options.boundaries),s(),w(e.options.map.s57.boundaries),s(6),_("ngModel",e.facade.settings.map.s57Options.colorTable),s(),w(e.options.map.s57.colorTables),s(6),_("ngModel",e.facade.settings.map.s57Options.colors),s(),w(e.options.map.s57.colors),s(7),_("ngModel",e.facade.settings.map.s57Options.shallowDepth),s(2),T(r.invalid&&(r.dirty||r.touched)?201:-1),s(7),_("ngModel",e.facade.settings.map.s57Options.safetyDepth),s(2),T(t.invalid&&(t.dirty||t.touched)?210:-1),s(7),_("ngModel",e.facade.settings.map.s57Options.deepDepth),s(2),T(ne.invalid&&(ne.dirty||ne.touched)?219:-1),s(7),_("ngModel",e.facade.settings.map.s57Options.otherLayers),s(),w(e.options.map.s57.otherLayers),s(15),_("ngModel",e.facade.settings.course.arrivalCircle),s(2),T(ae.invalid&&(ae.dirty||ae.touched)?244:-1),s(5),_("ngModel",e.facade.settings.course.autoNextPointOnArrival),s(8),h("disabled",le.checked===!1),_("ngModel",e.facade.settings.course.autoNextPointTrigger),s(2),w(e.options.course.nextPointTrigger),s(6),h("disabled",le.checked===!1),_("ngModel",e.facade.settings.course.autoNextPointDelay),s(),w(e.options.course.nextPointDelay),s(17),_("ngModel",e.facade.settings.vessels.iconScale),s(),w(e.options.vessel.selfIconScale),s(5),_("ngModel",e.facade.settings.vessels.fixedLocationMode),s(8),_("ngModel",e.facade.fixedPosition[1]),h("disabled",!de.checked),s(2),T(oe.invalid&&(oe.dirty||oe.touched)?299:-1),s(4),_("ngModel",e.facade.fixedPosition[0]),h("disabled",!de.checked),s(2),T(re.invalid&&(re.dirty||re.touched)?305:-1),s(9),_("ngModel",e.facade.settings.vessels.windVectors),s(2),_("ngModel",e.facade.settings.vessels.laylines),s(12),_("ngModel",e.facade.settings.vessels.selfLines.heading.length),s(),w(e.options.vessel.headingLine),s(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),s(11),_("ngModel",e.facade.settings.vessels.selfLines.cog.length),s(),w(e.options.vessel.cogLine),s(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),s(4),_("ngModel",e.facade.settings.vessels.rangeCircles),s(7),_("ngModel",e.facade.settings.vessels.rangeCircleCount),h("disabled",!e.facade.settings.vessels.rangeCircles),s(),w(e.options.rangeCircles.count),s(6),_("ngModel",e.facade.settings.vessels.rangeCircleMinZoom),h("disabled",!e.facade.settings.vessels.rangeCircles),s(),w(e.options.rangeCircles.zoomLevels),s(4),_("ngModel",e.facade.settings.vessels.rangeCirclesFixed),h("disabled",!e.facade.settings.vessels.rangeCircles),s(5),k(" Distance between circles (",e.renderSymbol(e.facade.settings.units.distance),") "),s(),_("ngModel",e.formattedNumberModel.rangeCirclesDistance),h("disabled",!e.facade.settings.vessels.rangeCircles||!e.facade.settings.vessels.rangeCirclesFixed),s(2),T(se.invalid&&(se.dirty||se.touched)?378:-1),s(7),_("ngModel",e.facade.settings.vessels.trail),s(4),h("disabled",!e.facade.settings.vessels.trail),_("ngModel",e.facade.settings.vessels.trailFromServer),s(3),h("disabled",!e.facade.settings.vessels.trailFromServer||!e.facade.settings.vessels.trail),s(),_("ngModel",e.facade.settings.vessels.trailDuration),s(),k(" Length (",e.facade.settings.vessels.trailDuration," hrs) "),s(6),_("ngModel",e.facade.settings.vessels.trailResolution.lastHour),h("disabled",!e.facade.settings.vessels.trailFromServer||!e.facade.settings.vessels.trail),s(),w(e.options.trailIntervals.highResolution),s(6),_("ngModel",e.facade.settings.vessels.trailResolution.next23),h("disabled",!e.facade.settings.vessels.trailFromServer||!e.facade.settings.vessels.trail),s(),w(e.options.trailIntervals.highResolution),s(6),_("ngModel",e.facade.settings.vessels.trailResolution.beyond24),h("disabled",!e.facade.settings.vessels.trailFromServer||!e.facade.settings.vessels.trail),s(),w(e.options.trailIntervals.mediumResolution),s(8),_("ngModel",e.facade.settings.vessels.aisShowTrack),s(3),_("ngModel",e.aisStateFilter.moored),s(3),_("ngModel",e.aisStateFilter.anchored),s(7),_("ngModel",e.facade.settings.vessels.aisStaleAge),s(),w(e.options.vessel.aisTimeouts),s(6),_("ngModel",e.facade.settings.vessels.aisMaxAge),s(),w(e.options.vessel.aisTimeouts),s(6),_("ngModel",e.facade.settings.vessels.aisWindApparent),s(),w(e.options.preferredValues.wind),s(6),_("ngModel",e.facade.settings.vessels.aisWindMinZoom),s(),w(e.options.zoomLevels),s(6),_("ngModel",e.facade.settings.vessels.aisCogLine),s(),w(e.options.vessel.aisCogLine),s(12),_("ngModel",e.facade.settings.ui.showNotes),s(6),h("disabled",!e.facade.settings.ui.showNotes),_("value",e.facade.settings.resources.notes.minZoom),s(),w(e.options.zoomLevels),s(6),C("Fetch Notes radius: ("+e.options.availableUnits.distance.get(o.value)+")"),s(),h("disabled",!e.facade.settings.ui.showNotes),_("ngModel",e.facade.settings.resources.notes.getRadius),s(),w(e.options.resources.noteRadius),s(7),_("ngModel",e.facade.settings.resources.notes.rootFilter),s(2),T(st.value?501:-1),s(3),_("ngModel",e.facade.settings.resources.notes.groupNameEdit),s(3),_("ngModel",e.facade.settings.resources.notes.groupRequiresPosition),s(13),w(e.facade.resourcePathList),s(2),T(e.app.featureFlags().radarApi?522:-1),s(19),_("ngModel",e.facade.settings.signalk.vessels),s(3),_("ngModel",e.facade.settings.signalk.atons),s(3),_("ngModel",e.facade.settings.signalk.aircraft),s(3),_("ngModel",e.facade.settings.signalk.sar),s(3),_("ngModel",e.facade.settings.signalk.meteo),s(7),_("ngModel",e.facade.settings.signalk.maxRadius),s(2),w(e.options.vessel.aisMaxRadius),s(17),_("ngModel",e.facade.settings.resources.video.enable),s(6),h("disabled",!e.facade.settings.resources.video.enable),_("ngModel",e.facade.settings.resources.video.url),s(2),T(lt.invalid?587:-1),s(3),_("ngModel",e.facade.settings.experiments)}},dependencies:[Z,R,ve,U,Te,De,Ve,be,G,Se,he,Be,Fe,ee,Qe,$,Ie,xe,Oe,ke,We,Ee,Me,A,Ce,we,N,ye,H,Le,tt,$e,et,je,J,z,K,Ae,Ne,Y,X,Re,j,q,Pe,Ze,Ge,Je,Xe,Ye,ie,te],styles:["[_nghost-%COMP%] .mat-dialog-content{padding:0 4px}.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}@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{rt as SettingsDialog};