@signalk/freeboard-sk 3.2.0-beta.0 → 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 (38) hide show
  1. package/package.json +14 -13
  2. package/plugin/alarms/alarms.js +59 -4
  3. package/plugin/lib/fetch.js +4 -4
  4. package/plugin/vitest.config.mjs +11 -0
  5. package/public/{chunk-RU2QXGZX.js → chunk-24TYZLHO.js} +1 -1
  6. package/public/{chunk-WXOWBQXR.js → chunk-2M5JDEPT.js} +1 -1
  7. package/public/chunk-3FOJW6X2.js +1 -0
  8. package/public/{chunk-PSRS6NXJ.js → chunk-4WQCRQTL.js} +1 -1
  9. package/public/{chunk-2RJKLB5L.js → chunk-5HE5CF34.js} +53 -53
  10. package/public/{chunk-7Z4ZZM32.js → chunk-ABEPBSQB.js} +1 -1
  11. package/public/chunk-BL2HZIKU.js +1 -0
  12. package/public/chunk-CJYO3MRU.js +1 -0
  13. package/public/{chunk-SOVFTS2B.js → chunk-FC62PK2U.js} +1 -1
  14. package/public/{chunk-7UXFP343.js → chunk-FMYAA5JW.js} +1 -1
  15. package/public/chunk-G4WOTWTM.js +1 -0
  16. package/public/chunk-K2CIRFN7.js +1709 -0
  17. package/public/{chunk-TVVJJZA5.js → chunk-K7PZKJJ7.js} +1 -1
  18. package/public/{chunk-Y5XX3LUA.js → chunk-KNJHWYQ3.js} +1 -1
  19. package/public/{chunk-JOTL4UUV.js → chunk-LCD5GM7L.js} +1 -1
  20. package/public/{chunk-OU4PGUT3.js → chunk-MFLH4RMF.js} +1 -1
  21. package/public/{chunk-TGPAYIRR.js → chunk-OGLYW4PJ.js} +1 -1
  22. package/public/{chunk-TEKC7VXV.js → chunk-RARRAKK5.js} +1 -1
  23. package/public/{chunk-PGHE7FOF.js → chunk-T5UYZVNA.js} +1 -1
  24. package/public/{chunk-NDDO5DKA.js → chunk-TTKT5FKY.js} +1 -1
  25. package/public/{chunk-VSWAOYSI.js → chunk-XTQIZ74A.js} +1 -1
  26. package/public/{chunk-L3MJOGJ2.js → chunk-Y35QBGKJ.js} +1 -1
  27. package/public/{chunk-TVMAD5AZ.js → chunk-YYA2RIPK.js} +1 -1
  28. package/public/index.html +1 -1
  29. package/public/{main-WYFYYBYG.js → main-IJVM3TNP.js} +6 -6
  30. package/public/polyfills-LVNOU2XZ.js +2 -0
  31. package/public/{worker-XSMNG74L.js → worker-CENPLZN6.js} +1 -1
  32. package/public/{worker-2AV5I4KP.js → worker-RRU2OVZW.js} +1 -1
  33. package/public/chunk-C6Q5GPY7.js +0 -1
  34. package/public/chunk-DDECKPFC.js +0 -1
  35. package/public/chunk-HB342AB6.js +0 -1
  36. package/public/chunk-JH5KSRZ6.js +0 -1709
  37. package/public/chunk-VYN2OBDD.js +0 -1
  38. package/public/polyfills-RV3JTMEC.js +0 -2
@@ -1 +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-2RJKLB5L.js";import{a as K,b as Ke,c as ze}from"./chunk-NDDO5DKA.js";import{a as ke,h as Pe,j as Le,k as xe}from"./chunk-PSRS6NXJ.js";import{a as Ie,d as Fe,i as Ae,j as Ne,k as Re}from"./chunk-WXOWBQXR.js";import{a as Y,b as J,c as Ze,d as Q}from"./chunk-SOVFTS2B.js";import{a as Be}from"./chunk-VSWAOYSI.js";import"./chunk-PGHE7FOF.js";import"./chunk-7UXFP343.js";import"./chunk-TGPAYIRR.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-7Z4ZZM32.js";import{$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,Q as m,R as c,Rd as we,S as x,T as pe,Td as ve,Ua as V,Wa as p,Wd as N,X as _e,Ya as M,Yd as be,Z as I,Zd as R,_ as fe,ca 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-JH5KSRZ6.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
+ 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
  }
@@ -1,4 +1,4 @@
1
- import{Cd as Z,I as r,Ic as z,N as _,Oa as f,P as n,Pa as R,Pc as G,Rc as j,U as p,Uc as F,V as T,Wa as A,Wb as H,Xa as O,Y as w,Yc as U,ab as M,bb as x,c,ca as h,cb as S,cd as B,fd as $,ib as u,ja as D,ka as m,kb as L,lb as k,lc as V,mb as N,na as P,qa as C,ra as I,rc as g,rd as y,ta as E,tc as Y,vd as v,zc as X}from"./chunk-JH5KSRZ6.js";import{a as l}from"./chunk-6H3I7D5M.js";var q=["tooltip"],K=20;var J=new _("mat-tooltip-scroll-strategy",{providedIn:"root",factory:()=>{let a=n(p);return()=>j(a,{scrollThrottle:K})}}),tt=new _("mat-tooltip-default-options",{providedIn:"root",factory:()=>({showDelay:0,hideDelay:0,touchendHideDelay:1500})});var Q="tooltip-panel",et={passive:!0},it=8,ot=8,st=24,nt=200,It=(()=>{class a{_elementRef=n(h);_ngZone=n(w);_platform=n(V);_ariaDescriber=n(Z);_focusMonitor=n(B);_dir=n(Y);_injector=n(p);_viewContainerRef=n(C);_mediaMatcher=n($);_document=n(T);_renderer=n(P);_animationsDisabled=v();_defaultOptions=n(tt,{optional:!0});_overlayRef=null;_tooltipInstance=null;_overlayPanelClass;_portal;_position="below";_positionAtOrigin=!1;_disabled=!1;_tooltipClass;_viewInitialized=!1;_pointerExitEventsInitialized=!1;_tooltipComponent=at;_viewportMargin=8;_currentPosition;_cssClassPrefix="mat-mdc";_ariaDescriptionPending=!1;_dirSubscribed=!1;get position(){return this._position}set position(t){t!==this._position&&(this._position=t,this._overlayRef&&(this._updatePosition(this._overlayRef),this._tooltipInstance?.show(0),this._overlayRef.updatePosition()))}get positionAtOrigin(){return this._positionAtOrigin}set positionAtOrigin(t){this._positionAtOrigin=y(t),this._detach(),this._overlayRef=null}get disabled(){return this._disabled}set disabled(t){let e=y(t);this._disabled!==e&&(this._disabled=e,e?this.hide(0):this._setupPointerEnterEventsIfNeeded(),this._syncAriaDescription(this.message))}get showDelay(){return this._showDelay}set showDelay(t){this._showDelay=g(t)}_showDelay;get hideDelay(){return this._hideDelay}set hideDelay(t){this._hideDelay=g(t),this._tooltipInstance&&(this._tooltipInstance._mouseLeaveHideDelay=this._hideDelay)}_hideDelay;touchGestures="auto";get message(){return this._message}set message(t){let e=this._message;this._message=t!=null?String(t).trim():"",!this._message&&this._isTooltipVisible()?this.hide(0):(this._setupPointerEnterEventsIfNeeded(),this._updateTooltipMessage()),this._syncAriaDescription(e)}_message="";get tooltipClass(){return this._tooltipClass}set tooltipClass(t){this._tooltipClass=t,this._tooltipInstance&&this._setTooltipClass(this._tooltipClass)}_eventCleanups=[];_touchstartTimeout=null;_destroyed=new c;_isDestroyed=!1;constructor(){let t=this._defaultOptions;t&&(this._showDelay=t.showDelay,this._hideDelay=t.hideDelay,t.position&&(this.position=t.position),t.positionAtOrigin&&(this.positionAtOrigin=t.positionAtOrigin),t.touchGestures&&(this.touchGestures=t.touchGestures),t.tooltipClass&&(this.tooltipClass=t.tooltipClass)),this._viewportMargin=it}ngAfterViewInit(){this._viewInitialized=!0,this._setupPointerEnterEventsIfNeeded(),this._focusMonitor.monitor(this._elementRef).pipe(r(this._destroyed)).subscribe(t=>{t?t==="keyboard"&&this._ngZone.run(()=>this.show()):this._ngZone.run(()=>this.hide(0))})}ngOnDestroy(){let t=this._elementRef.nativeElement;this._touchstartTimeout&&clearTimeout(this._touchstartTimeout),this._overlayRef&&(this._overlayRef.dispose(),this._tooltipInstance=null),this._eventCleanups.forEach(e=>e()),this._eventCleanups.length=0,this._destroyed.next(),this._destroyed.complete(),this._isDestroyed=!0,this._ariaDescriber.removeDescription(t,this.message,"tooltip"),this._focusMonitor.stopMonitoring(t)}show(t=this.showDelay,e){if(this.disabled||!this.message||this._isTooltipVisible()){this._tooltipInstance?._cancelPendingAnimations();return}let i=this._createOverlay(e);this._detach(),this._portal=this._portal||new z(this._tooltipComponent,this._viewContainerRef);let o=this._tooltipInstance=i.attach(this._portal).instance;o._triggerElement=this._elementRef.nativeElement,o._mouseLeaveHideDelay=this._hideDelay,o.afterHidden().pipe(r(this._destroyed)).subscribe(()=>this._detach()),this._setTooltipClass(this._tooltipClass),this._updateTooltipMessage(),o.show(t)}hide(t=this.hideDelay){let e=this._tooltipInstance;e&&(e.isVisible()?e.hide(t):(e._cancelPendingAnimations(),this._detach()))}toggle(t){this._isTooltipVisible()?this.hide():this.show(void 0,t)}_isTooltipVisible(){return!!this._tooltipInstance&&this._tooltipInstance.isVisible()}_createOverlay(t){if(this._overlayRef){let s=this._overlayRef.getConfig().positionStrategy;if((!this.positionAtOrigin||!t)&&s._origin instanceof h)return this._overlayRef;this._detach()}let e=this._injector.get(X).getAncestorScrollContainers(this._elementRef),i=`${this._cssClassPrefix}-${Q}`,o=F(this._injector,this.positionAtOrigin?t||this._elementRef:this._elementRef).withTransformOriginOn(`.${this._cssClassPrefix}-tooltip`).withFlexibleDimensions(!1).withViewportMargin(this._viewportMargin).withScrollableContainers(e).withPopoverLocation("global");return o.positionChanges.pipe(r(this._destroyed)).subscribe(s=>{this._updateCurrentPositionClass(s.connectionPair),this._tooltipInstance&&s.scrollableViewProperties.isOverlayClipped&&this._tooltipInstance.isVisible()&&this._ngZone.run(()=>this.hide(0))}),this._overlayRef=U(this._injector,{direction:this._dir,positionStrategy:o,panelClass:this._overlayPanelClass?[...this._overlayPanelClass,i]:i,scrollStrategy:this._injector.get(J)(),disableAnimations:this._animationsDisabled,eventPredicate:this._overlayEventPredicate}),this._updatePosition(this._overlayRef),this._overlayRef.detachments().pipe(r(this._destroyed)).subscribe(()=>this._detach()),this._overlayRef.outsidePointerEvents().pipe(r(this._destroyed)).subscribe(()=>this._tooltipInstance?._handleBodyInteraction()),this._overlayRef.keydownEvents().pipe(r(this._destroyed)).subscribe(s=>{s.preventDefault(),s.stopPropagation(),this._ngZone.run(()=>this.hide(0))}),this._defaultOptions?.disableTooltipInteractivity&&this._overlayRef.addPanelClass(`${this._cssClassPrefix}-tooltip-panel-non-interactive`),this._dirSubscribed||(this._dirSubscribed=!0,this._dir.change.pipe(r(this._destroyed)).subscribe(()=>{this._overlayRef&&this._updatePosition(this._overlayRef)})),this._overlayRef}_detach(){this._overlayRef&&this._overlayRef.hasAttached()&&this._overlayRef.detach(),this._tooltipInstance=null}_updatePosition(t){let e=t.getConfig().positionStrategy,i=this._getOrigin(),o=this._getOverlayPosition();e.withPositions([this._addOffset(l(l({},i.main),o.main)),this._addOffset(l(l({},i.fallback),o.fallback))])}_addOffset(t){let e=ot,i=!this._dir||this._dir.value=="ltr";return t.originY==="top"?t.offsetY=-e:t.originY==="bottom"?t.offsetY=e:t.originX==="start"?t.offsetX=i?-e:e:t.originX==="end"&&(t.offsetX=i?e:-e),t}_getOrigin(){let t=!this._dir||this._dir.value=="ltr",e=this.position,i;e=="above"||e=="below"?i={originX:"center",originY:e=="above"?"top":"bottom"}:e=="before"||e=="left"&&t||e=="right"&&!t?i={originX:"start",originY:"center"}:(e=="after"||e=="right"&&t||e=="left"&&!t)&&(i={originX:"end",originY:"center"});let{x:o,y:s}=this._invertPosition(i.originX,i.originY);return{main:i,fallback:{originX:o,originY:s}}}_getOverlayPosition(){let t=!this._dir||this._dir.value=="ltr",e=this.position,i;e=="above"?i={overlayX:"center",overlayY:"bottom"}:e=="below"?i={overlayX:"center",overlayY:"top"}:e=="before"||e=="left"&&t||e=="right"&&!t?i={overlayX:"end",overlayY:"center"}:(e=="after"||e=="right"&&t||e=="left"&&!t)&&(i={overlayX:"start",overlayY:"center"});let{x:o,y:s}=this._invertPosition(i.overlayX,i.overlayY);return{main:i,fallback:{overlayX:o,overlayY:s}}}_updateTooltipMessage(){this._tooltipInstance&&(this._tooltipInstance.message=this.message,this._tooltipInstance._markForCheck(),m(()=>{this._tooltipInstance&&this._overlayRef.updatePosition()},{injector:this._injector}))}_setTooltipClass(t){this._tooltipInstance&&(this._tooltipInstance.tooltipClass=t instanceof Set?Array.from(t):t,this._tooltipInstance._markForCheck())}_invertPosition(t,e){return this.position==="above"||this.position==="below"?e==="top"?e="bottom":e==="bottom"&&(e="top"):t==="end"?t="start":t==="start"&&(t="end"),{x:t,y:e}}_updateCurrentPositionClass(t){let{overlayY:e,originX:i,originY:o}=t,s;if(e==="center"?this._dir&&this._dir.value==="rtl"?s=i==="end"?"left":"right":s=i==="start"?"left":"right":s=e==="bottom"&&o==="top"?"above":"below",s!==this._currentPosition){let d=this._overlayRef;if(d){let b=`${this._cssClassPrefix}-${Q}-`;d.removePanelClass(b+this._currentPosition),d.addPanelClass(b+s)}this._currentPosition=s}}_setupPointerEnterEventsIfNeeded(){this._disabled||!this.message||!this._viewInitialized||this._eventCleanups.length||(this._isTouchPlatform()?this.touchGestures!=="off"&&(this._disableNativeGesturesIfNecessary(),this._addListener("touchstart",t=>{let e=t.targetTouches?.[0],i=e?{x:e.clientX,y:e.clientY}:void 0;this._setupPointerExitEventsIfNeeded(),this._touchstartTimeout&&clearTimeout(this._touchstartTimeout);let o=500;this._touchstartTimeout=setTimeout(()=>{this._touchstartTimeout=null,this.show(void 0,i)},this._defaultOptions?.touchLongPressShowDelay??o)})):this._addListener("mouseenter",t=>{this._setupPointerExitEventsIfNeeded();let e;t.x!==void 0&&t.y!==void 0&&(e=t),this.show(void 0,e)}))}_setupPointerExitEventsIfNeeded(){if(!this._pointerExitEventsInitialized){if(this._pointerExitEventsInitialized=!0,!this._isTouchPlatform())this._addListener("mouseleave",t=>{let e=t.relatedTarget;(!e||!this._overlayRef?.overlayElement.contains(e))&&this.hide()}),this._addListener("wheel",t=>{if(this._isTooltipVisible()){let e=this._document.elementFromPoint(t.clientX,t.clientY),i=this._elementRef.nativeElement;e!==i&&!i.contains(e)&&this.hide()}});else if(this.touchGestures!=="off"){this._disableNativeGesturesIfNecessary();let t=()=>{this._touchstartTimeout&&clearTimeout(this._touchstartTimeout),this.hide(this._defaultOptions?.touchendHideDelay)};this._addListener("touchend",t),this._addListener("touchcancel",t)}}}_addListener(t,e){this._eventCleanups.push(this._renderer.listen(this._elementRef.nativeElement,t,e,et))}_isTouchPlatform(){let t=this._defaultOptions?.detectHoverCapability;return typeof t=="function"?!t():this._platform.IOS||this._platform.ANDROID?!0:this._platform.isBrowser?!!t&&this._mediaMatcher.matchMedia("(any-hover: none)").matches:!1}_disableNativeGesturesIfNecessary(){let t=this.touchGestures;if(t!=="off"){let e=this._elementRef.nativeElement,i=e.style;(t==="on"||e.nodeName!=="INPUT"&&e.nodeName!=="TEXTAREA")&&(i.userSelect=i.msUserSelect=i.webkitUserSelect=i.MozUserSelect="none"),(t==="on"||!e.draggable)&&(i.webkitUserDrag="none"),i.touchAction="none",i.webkitTapHighlightColor="transparent"}}_syncAriaDescription(t){this._ariaDescriptionPending||(this._ariaDescriptionPending=!0,this._ariaDescriber.removeDescription(this._elementRef.nativeElement,t,"tooltip"),this._isDestroyed||m({write:()=>{this._ariaDescriptionPending=!1,this.message&&!this.disabled&&this._ariaDescriber.describe(this._elementRef.nativeElement,this.message,"tooltip")}},{injector:this._injector}))}_overlayEventPredicate=t=>t.type==="keydown"?this._isTooltipVisible()&&t.keyCode===27&&!G(t):!0;static \u0275fac=function(e){return new(e||a)};static \u0275dir=E({type:a,selectors:[["","matTooltip",""]],hostAttrs:[1,"mat-mdc-tooltip-trigger"],hostVars:2,hostBindings:function(e,i){e&2&&u("mat-mdc-tooltip-disabled",i.disabled)},inputs:{position:[0,"matTooltipPosition","position"],positionAtOrigin:[0,"matTooltipPositionAtOrigin","positionAtOrigin"],disabled:[0,"matTooltipDisabled","disabled"],showDelay:[0,"matTooltipShowDelay","showDelay"],hideDelay:[0,"matTooltipHideDelay","hideDelay"],touchGestures:[0,"matTooltipTouchGestures","touchGestures"],message:[0,"matTooltip","message"],tooltipClass:[0,"matTooltipClass","tooltipClass"]},exportAs:["matTooltip"]})}return a})(),at=(()=>{class a{_changeDetectorRef=n(H);_elementRef=n(h);_isMultiline=!1;message;tooltipClass;_showTimeoutId;_hideTimeoutId;_triggerElement;_mouseLeaveHideDelay;_animationsDisabled=v();_tooltip;_closeOnInteraction=!1;_isVisible=!1;_onHide=new c;_showAnimation="mat-mdc-tooltip-show";_hideAnimation="mat-mdc-tooltip-hide";constructor(){}show(t){this._hideTimeoutId!=null&&clearTimeout(this._hideTimeoutId),this._showTimeoutId=setTimeout(()=>{this._toggleVisibility(!0),this._showTimeoutId=void 0},t)}hide(t){this._showTimeoutId!=null&&clearTimeout(this._showTimeoutId),this._hideTimeoutId=setTimeout(()=>{this._toggleVisibility(!1),this._hideTimeoutId=void 0},t)}afterHidden(){return this._onHide}isVisible(){return this._isVisible}ngOnDestroy(){this._cancelPendingAnimations(),this._onHide.complete(),this._triggerElement=null}_handleBodyInteraction(){this._closeOnInteraction&&this.hide(0)}_markForCheck(){this._changeDetectorRef.markForCheck()}_handleMouseLeave({relatedTarget:t}){(!t||!this._triggerElement.contains(t))&&(this.isVisible()?this.hide(this._mouseLeaveHideDelay):this._finalizeAnimation(!1))}_onShow(){this._isMultiline=this._isTooltipMultiline(),this._markForCheck()}_isTooltipMultiline(){let t=this._elementRef.nativeElement.getBoundingClientRect();return t.height>st&&t.width>=nt}_handleAnimationEnd({animationName:t}){(t===this._showAnimation||t===this._hideAnimation)&&this._finalizeAnimation(t===this._showAnimation)}_cancelPendingAnimations(){this._showTimeoutId!=null&&clearTimeout(this._showTimeoutId),this._hideTimeoutId!=null&&clearTimeout(this._hideTimeoutId),this._showTimeoutId=this._hideTimeoutId=void 0}_finalizeAnimation(t){t?this._closeOnInteraction=!0:this.isVisible()||this._onHide.next()}_toggleVisibility(t){let e=this._tooltip.nativeElement,i=this._showAnimation,o=this._hideAnimation;if(e.classList.remove(t?o:i),e.classList.add(t?i:o),this._isVisible!==t&&(this._isVisible=t,this._changeDetectorRef.markForCheck()),t&&!this._animationsDisabled&&typeof getComputedStyle=="function"){let s=getComputedStyle(e);(s.getPropertyValue("animation-duration")==="0s"||s.getPropertyValue("animation-name")==="none")&&(this._animationsDisabled=!0)}t&&this._onShow(),this._animationsDisabled&&(e.classList.add("_mat-animation-noopable"),this._finalizeAnimation(t))}static \u0275fac=function(e){return new(e||a)};static \u0275cmp=I({type:a,selectors:[["mat-tooltip-component"]],viewQuery:function(e,i){if(e&1&&M(q,7),e&2){let o;x(o=S())&&(i._tooltip=o.first)}},hostAttrs:["aria-hidden","true"],hostBindings:function(e,i){e&1&&A("mouseleave",function(s){return i._handleMouseLeave(s)})},decls:4,vars:5,consts:[["tooltip",""],[1,"mdc-tooltip","mat-mdc-tooltip",3,"animationend"],[1,"mat-mdc-tooltip-surface","mdc-tooltip__surface"]],template:function(e,i){e&1&&(f(0,"div",1,0),O("animationend",function(s){return i._handleAnimationEnd(s)}),f(2,"div",2),k(3),R()()),e&2&&(L(i.tooltipClass),u("mdc-tooltip--multiline",i._isMultiline),D(3),N(i.message))},styles:[`.mat-mdc-tooltip {
1
+ import{Cd as Z,I as r,Ic as z,N as _,Oa as f,P as n,Pa as R,Pc as G,Rc as j,Uc as F,V as p,W as T,Wa as A,Wb as H,Xa as O,Yc as U,Z as w,ab as M,bb as x,c,cb as S,cd as B,da as h,fd as $,ib as u,ja as D,ka as m,kb as L,lb as k,lc as V,mb as N,na as P,qa as C,ra as I,rc as g,rd as y,ta as E,tc as Y,vd as v,zc as X}from"./chunk-K2CIRFN7.js";import{a as l}from"./chunk-6H3I7D5M.js";var q=["tooltip"],K=20;var J=new _("mat-tooltip-scroll-strategy",{providedIn:"root",factory:()=>{let a=n(p);return()=>j(a,{scrollThrottle:K})}}),tt=new _("mat-tooltip-default-options",{providedIn:"root",factory:()=>({showDelay:0,hideDelay:0,touchendHideDelay:1500})});var Q="tooltip-panel",et={passive:!0},it=8,ot=8,st=24,nt=200,It=(()=>{class a{_elementRef=n(h);_ngZone=n(w);_platform=n(V);_ariaDescriber=n(Z);_focusMonitor=n(B);_dir=n(Y);_injector=n(p);_viewContainerRef=n(C);_mediaMatcher=n($);_document=n(T);_renderer=n(P);_animationsDisabled=v();_defaultOptions=n(tt,{optional:!0});_overlayRef=null;_tooltipInstance=null;_overlayPanelClass;_portal;_position="below";_positionAtOrigin=!1;_disabled=!1;_tooltipClass;_viewInitialized=!1;_pointerExitEventsInitialized=!1;_tooltipComponent=at;_viewportMargin=8;_currentPosition;_cssClassPrefix="mat-mdc";_ariaDescriptionPending=!1;_dirSubscribed=!1;get position(){return this._position}set position(t){t!==this._position&&(this._position=t,this._overlayRef&&(this._updatePosition(this._overlayRef),this._tooltipInstance?.show(0),this._overlayRef.updatePosition()))}get positionAtOrigin(){return this._positionAtOrigin}set positionAtOrigin(t){this._positionAtOrigin=y(t),this._detach(),this._overlayRef=null}get disabled(){return this._disabled}set disabled(t){let e=y(t);this._disabled!==e&&(this._disabled=e,e?this.hide(0):this._setupPointerEnterEventsIfNeeded(),this._syncAriaDescription(this.message))}get showDelay(){return this._showDelay}set showDelay(t){this._showDelay=g(t)}_showDelay;get hideDelay(){return this._hideDelay}set hideDelay(t){this._hideDelay=g(t),this._tooltipInstance&&(this._tooltipInstance._mouseLeaveHideDelay=this._hideDelay)}_hideDelay;touchGestures="auto";get message(){return this._message}set message(t){let e=this._message;this._message=t!=null?String(t).trim():"",!this._message&&this._isTooltipVisible()?this.hide(0):(this._setupPointerEnterEventsIfNeeded(),this._updateTooltipMessage()),this._syncAriaDescription(e)}_message="";get tooltipClass(){return this._tooltipClass}set tooltipClass(t){this._tooltipClass=t,this._tooltipInstance&&this._setTooltipClass(this._tooltipClass)}_eventCleanups=[];_touchstartTimeout=null;_destroyed=new c;_isDestroyed=!1;constructor(){let t=this._defaultOptions;t&&(this._showDelay=t.showDelay,this._hideDelay=t.hideDelay,t.position&&(this.position=t.position),t.positionAtOrigin&&(this.positionAtOrigin=t.positionAtOrigin),t.touchGestures&&(this.touchGestures=t.touchGestures),t.tooltipClass&&(this.tooltipClass=t.tooltipClass)),this._viewportMargin=it}ngAfterViewInit(){this._viewInitialized=!0,this._setupPointerEnterEventsIfNeeded(),this._focusMonitor.monitor(this._elementRef).pipe(r(this._destroyed)).subscribe(t=>{t?t==="keyboard"&&this._ngZone.run(()=>this.show()):this._ngZone.run(()=>this.hide(0))})}ngOnDestroy(){let t=this._elementRef.nativeElement;this._touchstartTimeout&&clearTimeout(this._touchstartTimeout),this._overlayRef&&(this._overlayRef.dispose(),this._tooltipInstance=null),this._eventCleanups.forEach(e=>e()),this._eventCleanups.length=0,this._destroyed.next(),this._destroyed.complete(),this._isDestroyed=!0,this._ariaDescriber.removeDescription(t,this.message,"tooltip"),this._focusMonitor.stopMonitoring(t)}show(t=this.showDelay,e){if(this.disabled||!this.message||this._isTooltipVisible()){this._tooltipInstance?._cancelPendingAnimations();return}let i=this._createOverlay(e);this._detach(),this._portal=this._portal||new z(this._tooltipComponent,this._viewContainerRef);let o=this._tooltipInstance=i.attach(this._portal).instance;o._triggerElement=this._elementRef.nativeElement,o._mouseLeaveHideDelay=this._hideDelay,o.afterHidden().pipe(r(this._destroyed)).subscribe(()=>this._detach()),this._setTooltipClass(this._tooltipClass),this._updateTooltipMessage(),o.show(t)}hide(t=this.hideDelay){let e=this._tooltipInstance;e&&(e.isVisible()?e.hide(t):(e._cancelPendingAnimations(),this._detach()))}toggle(t){this._isTooltipVisible()?this.hide():this.show(void 0,t)}_isTooltipVisible(){return!!this._tooltipInstance&&this._tooltipInstance.isVisible()}_createOverlay(t){if(this._overlayRef){let s=this._overlayRef.getConfig().positionStrategy;if((!this.positionAtOrigin||!t)&&s._origin instanceof h)return this._overlayRef;this._detach()}let e=this._injector.get(X).getAncestorScrollContainers(this._elementRef),i=`${this._cssClassPrefix}-${Q}`,o=F(this._injector,this.positionAtOrigin?t||this._elementRef:this._elementRef).withTransformOriginOn(`.${this._cssClassPrefix}-tooltip`).withFlexibleDimensions(!1).withViewportMargin(this._viewportMargin).withScrollableContainers(e).withPopoverLocation("global");return o.positionChanges.pipe(r(this._destroyed)).subscribe(s=>{this._updateCurrentPositionClass(s.connectionPair),this._tooltipInstance&&s.scrollableViewProperties.isOverlayClipped&&this._tooltipInstance.isVisible()&&this._ngZone.run(()=>this.hide(0))}),this._overlayRef=U(this._injector,{direction:this._dir,positionStrategy:o,panelClass:this._overlayPanelClass?[...this._overlayPanelClass,i]:i,scrollStrategy:this._injector.get(J)(),disableAnimations:this._animationsDisabled,eventPredicate:this._overlayEventPredicate}),this._updatePosition(this._overlayRef),this._overlayRef.detachments().pipe(r(this._destroyed)).subscribe(()=>this._detach()),this._overlayRef.outsidePointerEvents().pipe(r(this._destroyed)).subscribe(()=>this._tooltipInstance?._handleBodyInteraction()),this._overlayRef.keydownEvents().pipe(r(this._destroyed)).subscribe(s=>{s.preventDefault(),s.stopPropagation(),this._ngZone.run(()=>this.hide(0))}),this._defaultOptions?.disableTooltipInteractivity&&this._overlayRef.addPanelClass(`${this._cssClassPrefix}-tooltip-panel-non-interactive`),this._dirSubscribed||(this._dirSubscribed=!0,this._dir.change.pipe(r(this._destroyed)).subscribe(()=>{this._overlayRef&&this._updatePosition(this._overlayRef)})),this._overlayRef}_detach(){this._overlayRef&&this._overlayRef.hasAttached()&&this._overlayRef.detach(),this._tooltipInstance=null}_updatePosition(t){let e=t.getConfig().positionStrategy,i=this._getOrigin(),o=this._getOverlayPosition();e.withPositions([this._addOffset(l(l({},i.main),o.main)),this._addOffset(l(l({},i.fallback),o.fallback))])}_addOffset(t){let e=ot,i=!this._dir||this._dir.value=="ltr";return t.originY==="top"?t.offsetY=-e:t.originY==="bottom"?t.offsetY=e:t.originX==="start"?t.offsetX=i?-e:e:t.originX==="end"&&(t.offsetX=i?e:-e),t}_getOrigin(){let t=!this._dir||this._dir.value=="ltr",e=this.position,i;e=="above"||e=="below"?i={originX:"center",originY:e=="above"?"top":"bottom"}:e=="before"||e=="left"&&t||e=="right"&&!t?i={originX:"start",originY:"center"}:(e=="after"||e=="right"&&t||e=="left"&&!t)&&(i={originX:"end",originY:"center"});let{x:o,y:s}=this._invertPosition(i.originX,i.originY);return{main:i,fallback:{originX:o,originY:s}}}_getOverlayPosition(){let t=!this._dir||this._dir.value=="ltr",e=this.position,i;e=="above"?i={overlayX:"center",overlayY:"bottom"}:e=="below"?i={overlayX:"center",overlayY:"top"}:e=="before"||e=="left"&&t||e=="right"&&!t?i={overlayX:"end",overlayY:"center"}:(e=="after"||e=="right"&&t||e=="left"&&!t)&&(i={overlayX:"start",overlayY:"center"});let{x:o,y:s}=this._invertPosition(i.overlayX,i.overlayY);return{main:i,fallback:{overlayX:o,overlayY:s}}}_updateTooltipMessage(){this._tooltipInstance&&(this._tooltipInstance.message=this.message,this._tooltipInstance._markForCheck(),m(()=>{this._tooltipInstance&&this._overlayRef.updatePosition()},{injector:this._injector}))}_setTooltipClass(t){this._tooltipInstance&&(this._tooltipInstance.tooltipClass=t instanceof Set?Array.from(t):t,this._tooltipInstance._markForCheck())}_invertPosition(t,e){return this.position==="above"||this.position==="below"?e==="top"?e="bottom":e==="bottom"&&(e="top"):t==="end"?t="start":t==="start"&&(t="end"),{x:t,y:e}}_updateCurrentPositionClass(t){let{overlayY:e,originX:i,originY:o}=t,s;if(e==="center"?this._dir&&this._dir.value==="rtl"?s=i==="end"?"left":"right":s=i==="start"?"left":"right":s=e==="bottom"&&o==="top"?"above":"below",s!==this._currentPosition){let d=this._overlayRef;if(d){let b=`${this._cssClassPrefix}-${Q}-`;d.removePanelClass(b+this._currentPosition),d.addPanelClass(b+s)}this._currentPosition=s}}_setupPointerEnterEventsIfNeeded(){this._disabled||!this.message||!this._viewInitialized||this._eventCleanups.length||(this._isTouchPlatform()?this.touchGestures!=="off"&&(this._disableNativeGesturesIfNecessary(),this._addListener("touchstart",t=>{let e=t.targetTouches?.[0],i=e?{x:e.clientX,y:e.clientY}:void 0;this._setupPointerExitEventsIfNeeded(),this._touchstartTimeout&&clearTimeout(this._touchstartTimeout);let o=500;this._touchstartTimeout=setTimeout(()=>{this._touchstartTimeout=null,this.show(void 0,i)},this._defaultOptions?.touchLongPressShowDelay??o)})):this._addListener("mouseenter",t=>{this._setupPointerExitEventsIfNeeded();let e;t.x!==void 0&&t.y!==void 0&&(e=t),this.show(void 0,e)}))}_setupPointerExitEventsIfNeeded(){if(!this._pointerExitEventsInitialized){if(this._pointerExitEventsInitialized=!0,!this._isTouchPlatform())this._addListener("mouseleave",t=>{let e=t.relatedTarget;(!e||!this._overlayRef?.overlayElement.contains(e))&&this.hide()}),this._addListener("wheel",t=>{if(this._isTooltipVisible()){let e=this._document.elementFromPoint(t.clientX,t.clientY),i=this._elementRef.nativeElement;e!==i&&!i.contains(e)&&this.hide()}});else if(this.touchGestures!=="off"){this._disableNativeGesturesIfNecessary();let t=()=>{this._touchstartTimeout&&clearTimeout(this._touchstartTimeout),this.hide(this._defaultOptions?.touchendHideDelay)};this._addListener("touchend",t),this._addListener("touchcancel",t)}}}_addListener(t,e){this._eventCleanups.push(this._renderer.listen(this._elementRef.nativeElement,t,e,et))}_isTouchPlatform(){let t=this._defaultOptions?.detectHoverCapability;return typeof t=="function"?!t():this._platform.IOS||this._platform.ANDROID?!0:this._platform.isBrowser?!!t&&this._mediaMatcher.matchMedia("(any-hover: none)").matches:!1}_disableNativeGesturesIfNecessary(){let t=this.touchGestures;if(t!=="off"){let e=this._elementRef.nativeElement,i=e.style;(t==="on"||e.nodeName!=="INPUT"&&e.nodeName!=="TEXTAREA")&&(i.userSelect=i.msUserSelect=i.webkitUserSelect=i.MozUserSelect="none"),(t==="on"||!e.draggable)&&(i.webkitUserDrag="none"),i.touchAction="none",i.webkitTapHighlightColor="transparent"}}_syncAriaDescription(t){this._ariaDescriptionPending||(this._ariaDescriptionPending=!0,this._ariaDescriber.removeDescription(this._elementRef.nativeElement,t,"tooltip"),this._isDestroyed||m({write:()=>{this._ariaDescriptionPending=!1,this.message&&!this.disabled&&this._ariaDescriber.describe(this._elementRef.nativeElement,this.message,"tooltip")}},{injector:this._injector}))}_overlayEventPredicate=t=>t.type==="keydown"?this._isTooltipVisible()&&t.keyCode===27&&!G(t):!0;static \u0275fac=function(e){return new(e||a)};static \u0275dir=E({type:a,selectors:[["","matTooltip",""]],hostAttrs:[1,"mat-mdc-tooltip-trigger"],hostVars:2,hostBindings:function(e,i){e&2&&u("mat-mdc-tooltip-disabled",i.disabled)},inputs:{position:[0,"matTooltipPosition","position"],positionAtOrigin:[0,"matTooltipPositionAtOrigin","positionAtOrigin"],disabled:[0,"matTooltipDisabled","disabled"],showDelay:[0,"matTooltipShowDelay","showDelay"],hideDelay:[0,"matTooltipHideDelay","hideDelay"],touchGestures:[0,"matTooltipTouchGestures","touchGestures"],message:[0,"matTooltip","message"],tooltipClass:[0,"matTooltipClass","tooltipClass"]},exportAs:["matTooltip"]})}return a})(),at=(()=>{class a{_changeDetectorRef=n(H);_elementRef=n(h);_isMultiline=!1;message;tooltipClass;_showTimeoutId;_hideTimeoutId;_triggerElement;_mouseLeaveHideDelay;_animationsDisabled=v();_tooltip;_closeOnInteraction=!1;_isVisible=!1;_onHide=new c;_showAnimation="mat-mdc-tooltip-show";_hideAnimation="mat-mdc-tooltip-hide";constructor(){}show(t){this._hideTimeoutId!=null&&clearTimeout(this._hideTimeoutId),this._showTimeoutId=setTimeout(()=>{this._toggleVisibility(!0),this._showTimeoutId=void 0},t)}hide(t){this._showTimeoutId!=null&&clearTimeout(this._showTimeoutId),this._hideTimeoutId=setTimeout(()=>{this._toggleVisibility(!1),this._hideTimeoutId=void 0},t)}afterHidden(){return this._onHide}isVisible(){return this._isVisible}ngOnDestroy(){this._cancelPendingAnimations(),this._onHide.complete(),this._triggerElement=null}_handleBodyInteraction(){this._closeOnInteraction&&this.hide(0)}_markForCheck(){this._changeDetectorRef.markForCheck()}_handleMouseLeave({relatedTarget:t}){(!t||!this._triggerElement.contains(t))&&(this.isVisible()?this.hide(this._mouseLeaveHideDelay):this._finalizeAnimation(!1))}_onShow(){this._isMultiline=this._isTooltipMultiline(),this._markForCheck()}_isTooltipMultiline(){let t=this._elementRef.nativeElement.getBoundingClientRect();return t.height>st&&t.width>=nt}_handleAnimationEnd({animationName:t}){(t===this._showAnimation||t===this._hideAnimation)&&this._finalizeAnimation(t===this._showAnimation)}_cancelPendingAnimations(){this._showTimeoutId!=null&&clearTimeout(this._showTimeoutId),this._hideTimeoutId!=null&&clearTimeout(this._hideTimeoutId),this._showTimeoutId=this._hideTimeoutId=void 0}_finalizeAnimation(t){t?this._closeOnInteraction=!0:this.isVisible()||this._onHide.next()}_toggleVisibility(t){let e=this._tooltip.nativeElement,i=this._showAnimation,o=this._hideAnimation;if(e.classList.remove(t?o:i),e.classList.add(t?i:o),this._isVisible!==t&&(this._isVisible=t,this._changeDetectorRef.markForCheck()),t&&!this._animationsDisabled&&typeof getComputedStyle=="function"){let s=getComputedStyle(e);(s.getPropertyValue("animation-duration")==="0s"||s.getPropertyValue("animation-name")==="none")&&(this._animationsDisabled=!0)}t&&this._onShow(),this._animationsDisabled&&(e.classList.add("_mat-animation-noopable"),this._finalizeAnimation(t))}static \u0275fac=function(e){return new(e||a)};static \u0275cmp=I({type:a,selectors:[["mat-tooltip-component"]],viewQuery:function(e,i){if(e&1&&M(q,7),e&2){let o;x(o=S())&&(i._tooltip=o.first)}},hostAttrs:["aria-hidden","true"],hostBindings:function(e,i){e&1&&A("mouseleave",function(s){return i._handleMouseLeave(s)})},decls:4,vars:5,consts:[["tooltip",""],[1,"mdc-tooltip","mat-mdc-tooltip",3,"animationend"],[1,"mat-mdc-tooltip-surface","mdc-tooltip__surface"]],template:function(e,i){e&1&&(f(0,"div",1,0),O("animationend",function(s){return i._handleAnimationEnd(s)}),f(2,"div",2),k(3),R()()),e&2&&(L(i.tooltipClass),u("mdc-tooltip--multiline",i._isMultiline),D(3),N(i.message))},styles:[`.mat-mdc-tooltip {
2
2
  position: relative;
3
3
  transform: scale(0);
4
4
  display: inline-flex;