@signalk/freeboard-sk 3.3.0-beta.0 → 3.3.0-beta.2
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/README.md +6 -10
- package/package.json +4 -2
- package/public/assets/features/bearing-distance-1.jpg +0 -0
- package/public/assets/features-corpus.json +1 -1
- package/public/assets/help/index.html +3 -2
- package/public/assets/img/bearing-distance.svg +5 -0
- package/public/{chunk-OBOT3EYE.js → chunk-2RUVNGMC.js} +1 -1
- package/public/{chunk-OKVIYJ6A.js → chunk-CAELFTDN.js} +1 -1
- package/public/{chunk-S2NZQZZH.js → chunk-IJLAFJJG.js} +1 -1
- package/public/{chunk-QIIV7CZB.js → chunk-JCA64CSP.js} +1 -1
- package/public/{chunk-Z2D7B2ZG.js → chunk-KOLNF6AV.js} +1 -1
- package/public/{chunk-IGMXHN4X.js → chunk-QP4TKOWU.js} +1 -1
- package/public/chunk-QZNRNBJP.js +4170 -0
- package/public/{chunk-67S2RK5V.js → chunk-ZU73TDN7.js} +1 -1
- package/public/index.html +1 -1
- package/public/{main-S6QEWGOY.js → main-KV5IV6BY.js} +10 -10
- package/public/chunk-F4EUFUYM.js +0 -4097
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
import{d as Co}from"./chunk-T7ZWMXKZ.js";import{$ as Ni,A as hi,Aa as no,B as gi,Ba as io,C as Ci,Ca as oo,D as bi,E as vi,F as wi,G as xi,Ga as ro,H as ot,Ha as ao,I as yi,Ia as so,J as Ei,Ja as lo,Ka as co,N as j,O as Ti,P as Si,Q as Mi,R as Ai,Ra as po,Sa as uo,T as Pi,U as ki,Ua as mo,V as Ii,Va as _o,W as Ri,Wa as fo,X as Di,Y as Oi,Z as Li,Za as ho,_ as Vi,_a as go,a as ni,ba as Fi,c as ii,ca as $i,da as Bi,ea as zi,fa as rt,g as qt,ga as at,h as Ut,ha as st,ia as lt,ja as qi,ka as Ui,la as Hi,ma as Wi,na as Gi,oa as ji,p as li,pa as Ki,q as ci,qa as Xi,ra as Zi,s as di,sa as Qi,t as pi,u as ui,wa as Yi,x as mi,xa as Ji,y as _i,ya as eo,z as fi,za as to}from"./chunk-F4EUFUYM.js";import{c as it}from"./chunk-ISXARX6U.js";import"./chunk-62WHV6CJ.js";import"./chunk-MYBGWSLC.js";import{a as nt}from"./chunk-6E2BDKCH.js";import"./chunk-45ZTFAA5.js";import"./chunk-X6D4D6EN.js";import{a as oi,g as ri,i as ai,k as si,n as Ht,q as Wt,u as Gt}from"./chunk-PD55PKQG.js";import"./chunk-YZN4NRWW.js";import"./chunk-YSHHABBQ.js";import{$ as X,$a as l,A as Tn,Aa as ae,Ab as Ln,Ad as tt,B as Dt,Cb as ue,Cc as Ye,Da as se,Ea as le,Ec as Wn,Fc as Me,Ga as J,Gc as Gn,Ha as f,Hd as Jn,I as Ot,Ia as h,K as oe,Ka as Ce,Kc as zt,Kd as ei,La as z,Ma as q,Mb as Vn,Mc as jn,N as Sn,Na as v,Nb as L,O as Ue,Oa as a,P as Lt,Pa as s,Qa as b,Qd as fe,R as C,Ra as In,Rd as he,Sa as Rn,T as m,Ta as Ke,Tb as ee,U as _,Uc as Kn,X as Vt,Xa as y,Y as ye,Ya as Te,Yb as Nn,Yc as Je,Za as u,Zd as Ae,_ as He,_a as Dn,_b as Xe,aa as W,ab as be,ac as Ze,ba as Z,bb as ie,be as ti,c as _e,cb as Ft,ce as Pe,da as We,db as Q,dc as Fn,eb as N,fa as Y,fb as F,ga as Mn,hc as $n,hd as Xn,ia as An,ic as Bn,ja as re,jb as ve,jd as Zn,ka as Pn,kb as G,la as Oe,lb as $,m as Rt,ma as c,mb as $t,na as Nt,nb as On,nc as zn,ob as p,oc as qn,od as et,pb as B,pc as ce,pd as Qn,qa as Ge,qb as pe,qc as Qe,ra as Ee,sd as Yn,t as yn,u as De,ua as I,uc as Un,va as je,wa as kn,wc as Bt,wd as we,ya as Le,yc as Hn,z as En,zb as Se}from"./chunk-RG7WQ7O2.js";import{a as ze,b as qe,d as A,f as ya,g as O}from"./chunk-NCEQPEJE.js";var ke=A((ju,To)=>{"use strict";var $a="2.0.0",Ba=Number.MAX_SAFE_INTEGER||9007199254740991,za=16,qa=250,Ua=["major","premajor","minor","preminor","patch","prepatch","prerelease"];To.exports={MAX_LENGTH:256,MAX_SAFE_COMPONENT_LENGTH:za,MAX_SAFE_BUILD_LENGTH:qa,MAX_SAFE_INTEGER:Ba,RELEASE_TYPES:Ua,SEMVER_SPEC_VERSION:$a,FLAG_INCLUDE_PRERELEASE:1,FLAG_LOOSE:2}});var Ve=A((Ku,So)=>{"use strict";var Ha=typeof process=="object"&&process.env&&process.env.NODE_DEBUG&&/\bsemver\b/i.test(process.env.NODE_DEBUG)?(...i)=>console.error("SEMVER",...i):()=>{};So.exports=Ha});var Ie=A((de,Mo)=>{"use strict";var{MAX_SAFE_COMPONENT_LENGTH:Qt,MAX_SAFE_BUILD_LENGTH:Wa,MAX_LENGTH:Ga}=ke(),ja=Ve();de=Mo.exports={};var Ka=de.re=[],Xa=de.safeRe=[],w=de.src=[],Za=de.safeSrc=[],x=de.t={},Qa=0,Yt="[a-zA-Z0-9-]",Ya=[["\\s",1],["\\d",Ga],[Yt,Wa]],Ja=i=>{for(let[t,e]of Ya)i=i.split(`${t}*`).join(`${t}{0,${e}}`).split(`${t}+`).join(`${t}{1,${e}}`);return i},P=(i,t,e)=>{let n=Ja(t),o=Qa++;ja(i,o,t),x[i]=o,w[o]=t,Za[o]=n,Ka[o]=new RegExp(t,e?"g":void 0),Xa[o]=new RegExp(n,e?"g":void 0)};P("NUMERICIDENTIFIER","0|[1-9]\\d*");P("NUMERICIDENTIFIERLOOSE","\\d+");P("NONNUMERICIDENTIFIER",`\\d*[a-zA-Z-]${Yt}*`);P("MAINVERSION",`(${w[x.NUMERICIDENTIFIER]})\\.(${w[x.NUMERICIDENTIFIER]})\\.(${w[x.NUMERICIDENTIFIER]})`);P("MAINVERSIONLOOSE",`(${w[x.NUMERICIDENTIFIERLOOSE]})\\.(${w[x.NUMERICIDENTIFIERLOOSE]})\\.(${w[x.NUMERICIDENTIFIERLOOSE]})`);P("PRERELEASEIDENTIFIER",`(?:${w[x.NONNUMERICIDENTIFIER]}|${w[x.NUMERICIDENTIFIER]})`);P("PRERELEASEIDENTIFIERLOOSE",`(?:${w[x.NONNUMERICIDENTIFIER]}|${w[x.NUMERICIDENTIFIERLOOSE]})`);P("PRERELEASE",`(?:-(${w[x.PRERELEASEIDENTIFIER]}(?:\\.${w[x.PRERELEASEIDENTIFIER]})*))`);P("PRERELEASELOOSE",`(?:-?(${w[x.PRERELEASEIDENTIFIERLOOSE]}(?:\\.${w[x.PRERELEASEIDENTIFIERLOOSE]})*))`);P("BUILDIDENTIFIER",`${Yt}+`);P("BUILD",`(?:\\+(${w[x.BUILDIDENTIFIER]}(?:\\.${w[x.BUILDIDENTIFIER]})*))`);P("FULLPLAIN",`v?${w[x.MAINVERSION]}${w[x.PRERELEASE]}?${w[x.BUILD]}?`);P("FULL",`^${w[x.FULLPLAIN]}$`);P("LOOSEPLAIN",`[v=\\s]*${w[x.MAINVERSIONLOOSE]}${w[x.PRERELEASELOOSE]}?${w[x.BUILD]}?`);P("LOOSE",`^${w[x.LOOSEPLAIN]}$`);P("GTLT","((?:<|>)?=?)");P("XRANGEIDENTIFIERLOOSE",`${w[x.NUMERICIDENTIFIERLOOSE]}|x|X|\\*`);P("XRANGEIDENTIFIER",`${w[x.NUMERICIDENTIFIER]}|x|X|\\*`);P("XRANGEPLAIN",`[v=\\s]*(${w[x.XRANGEIDENTIFIER]})(?:\\.(${w[x.XRANGEIDENTIFIER]})(?:\\.(${w[x.XRANGEIDENTIFIER]})(?:${w[x.PRERELEASE]})?${w[x.BUILD]}?)?)?`);P("XRANGEPLAINLOOSE",`[v=\\s]*(${w[x.XRANGEIDENTIFIERLOOSE]})(?:\\.(${w[x.XRANGEIDENTIFIERLOOSE]})(?:\\.(${w[x.XRANGEIDENTIFIERLOOSE]})(?:${w[x.PRERELEASELOOSE]})?${w[x.BUILD]}?)?)?`);P("XRANGE",`^${w[x.GTLT]}\\s*${w[x.XRANGEPLAIN]}$`);P("XRANGELOOSE",`^${w[x.GTLT]}\\s*${w[x.XRANGEPLAINLOOSE]}$`);P("COERCEPLAIN",`(^|[^\\d])(\\d{1,${Qt}})(?:\\.(\\d{1,${Qt}}))?(?:\\.(\\d{1,${Qt}}))?`);P("COERCE",`${w[x.COERCEPLAIN]}(?:$|[^\\d])`);P("COERCEFULL",w[x.COERCEPLAIN]+`(?:${w[x.PRERELEASE]})?(?:${w[x.BUILD]})?(?:$|[^\\d])`);P("COERCERTL",w[x.COERCE],!0);P("COERCERTLFULL",w[x.COERCEFULL],!0);P("LONETILDE","(?:~>?)");P("TILDETRIM",`(\\s*)${w[x.LONETILDE]}\\s+`,!0);de.tildeTrimReplace="$1~";P("TILDE",`^${w[x.LONETILDE]}${w[x.XRANGEPLAIN]}$`);P("TILDELOOSE",`^${w[x.LONETILDE]}${w[x.XRANGEPLAINLOOSE]}$`);P("LONECARET","(?:\\^)");P("CARETTRIM",`(\\s*)${w[x.LONECARET]}\\s+`,!0);de.caretTrimReplace="$1^";P("CARET",`^${w[x.LONECARET]}${w[x.XRANGEPLAIN]}$`);P("CARETLOOSE",`^${w[x.LONECARET]}${w[x.XRANGEPLAINLOOSE]}$`);P("COMPARATORLOOSE",`^${w[x.GTLT]}\\s*(${w[x.LOOSEPLAIN]})$|^$`);P("COMPARATOR",`^${w[x.GTLT]}\\s*(${w[x.FULLPLAIN]})$|^$`);P("COMPARATORTRIM",`(\\s*)${w[x.GTLT]}\\s*(${w[x.LOOSEPLAIN]}|${w[x.XRANGEPLAIN]})`,!0);de.comparatorTrimReplace="$1$2$3";P("HYPHENRANGE",`^\\s*(${w[x.XRANGEPLAIN]})\\s+-\\s+(${w[x.XRANGEPLAIN]})\\s*$`);P("HYPHENRANGELOOSE",`^\\s*(${w[x.XRANGEPLAINLOOSE]})\\s+-\\s+(${w[x.XRANGEPLAINLOOSE]})\\s*$`);P("STAR","(<|>)?=?\\s*\\*");P("GTE0","^\\s*>=\\s*0\\.0\\.0\\s*$");P("GTE0PRE","^\\s*>=\\s*0\\.0\\.0-0\\s*$")});var ut=A((Xu,Ao)=>{"use strict";var es=Object.freeze({loose:!0}),ts=Object.freeze({}),ns=i=>i?typeof i!="object"?es:i:ts;Ao.exports=ns});var Jt=A((Zu,Io)=>{"use strict";var Po=/^[0-9]+$/,ko=(i,t)=>{if(typeof i=="number"&&typeof t=="number")return i===t?0:i<t?-1:1;let e=Po.test(i),n=Po.test(t);return e&&n&&(i=+i,t=+t),i===t?0:e&&!n?-1:n&&!e?1:i<t?-1:1},is=(i,t)=>ko(t,i);Io.exports={compareIdentifiers:ko,rcompareIdentifiers:is}});var U=A((Qu,Do)=>{"use strict";var mt=Ve(),{MAX_LENGTH:Ro,MAX_SAFE_INTEGER:_t}=ke(),{safeRe:ft,t:ht}=Ie(),os=ut(),{compareIdentifiers:en}=Jt(),rs=(i,t)=>{let e=t.split(".");if(e.length>i.length)return!1;for(let n=0;n<e.length;n++)if(en(i[n],e[n])!==0)return!1;return!0},tn=class i{constructor(t,e){if(e=os(e),t instanceof i){if(t.loose===!!e.loose&&t.includePrerelease===!!e.includePrerelease)return t;t=t.version}else if(typeof t!="string")throw new TypeError(`Invalid version. Must be a string. Got type "${typeof t}".`);if(t.length>Ro)throw new TypeError(`version is longer than ${Ro} characters`);mt("SemVer",t,e),this.options=e,this.loose=!!e.loose,this.includePrerelease=!!e.includePrerelease;let n=t.trim().match(e.loose?ft[ht.LOOSE]:ft[ht.FULL]);if(!n)throw new TypeError(`Invalid Version: ${t}`);if(this.raw=t,this.major=+n[1],this.minor=+n[2],this.patch=+n[3],this.major>_t||this.major<0)throw new TypeError("Invalid major version");if(this.minor>_t||this.minor<0)throw new TypeError("Invalid minor version");if(this.patch>_t||this.patch<0)throw new TypeError("Invalid patch version");n[4]?this.prerelease=n[4].split(".").map(o=>{if(/^[0-9]+$/.test(o)){let r=+o;if(r>=0&&r<_t)return r}return o}):this.prerelease=[],this.build=n[5]?n[5].split("."):[],this.format()}format(){return this.version=`${this.major}.${this.minor}.${this.patch}`,this.prerelease.length&&(this.version+=`-${this.prerelease.join(".")}`),this.version}toString(){return this.version}compare(t){if(mt("SemVer.compare",this.version,this.options,t),!(t instanceof i)){if(typeof t=="string"&&t===this.version)return 0;t=new i(t,this.options)}return t.version===this.version?0:this.compareMain(t)||this.comparePre(t)}compareMain(t){return t instanceof i||(t=new i(t,this.options)),this.major<t.major?-1:this.major>t.major?1:this.minor<t.minor?-1:this.minor>t.minor?1:this.patch<t.patch?-1:this.patch>t.patch?1:0}comparePre(t){if(t instanceof i||(t=new i(t,this.options)),this.prerelease.length&&!t.prerelease.length)return-1;if(!this.prerelease.length&&t.prerelease.length)return 1;if(!this.prerelease.length&&!t.prerelease.length)return 0;let e=0;do{let n=this.prerelease[e],o=t.prerelease[e];if(mt("prerelease compare",e,n,o),n===void 0&&o===void 0)return 0;if(o===void 0)return 1;if(n===void 0)return-1;if(n===o)continue;return en(n,o)}while(++e)}compareBuild(t){t instanceof i||(t=new i(t,this.options));let e=0;do{let n=this.build[e],o=t.build[e];if(mt("build compare",e,n,o),n===void 0&&o===void 0)return 0;if(o===void 0)return 1;if(n===void 0)return-1;if(n===o)continue;return en(n,o)}while(++e)}inc(t,e,n){if(t.startsWith("pre")){if(!e&&n===!1)throw new Error("invalid increment argument: identifier is empty");if(e){let o=`-${e}`.match(this.options.loose?ft[ht.PRERELEASELOOSE]:ft[ht.PRERELEASE]);if(!o||o[1]!==e)throw new Error(`invalid identifier: ${e}`)}}switch(t){case"premajor":this.prerelease.length=0,this.patch=0,this.minor=0,this.major++,this.inc("pre",e,n);break;case"preminor":this.prerelease.length=0,this.patch=0,this.minor++,this.inc("pre",e,n);break;case"prepatch":this.prerelease.length=0,this.inc("patch",e,n),this.inc("pre",e,n);break;case"prerelease":this.prerelease.length===0&&this.inc("patch",e,n),this.inc("pre",e,n);break;case"release":if(this.prerelease.length===0)throw new Error(`version ${this.raw} is not a prerelease`);this.prerelease.length=0;break;case"major":(this.minor!==0||this.patch!==0||this.prerelease.length===0)&&this.major++,this.minor=0,this.patch=0,this.prerelease=[];break;case"minor":(this.patch!==0||this.prerelease.length===0)&&this.minor++,this.patch=0,this.prerelease=[];break;case"patch":this.prerelease.length===0&&this.patch++,this.prerelease=[];break;case"pre":{let o=Number(n)?1:0;if(this.prerelease.length===0)this.prerelease=[o];else{let r=this.prerelease.length;for(;--r>=0;)typeof this.prerelease[r]=="number"&&(this.prerelease[r]++,r=-2);if(r===-1){if(e===this.prerelease.join(".")&&n===!1)throw new Error("invalid increment argument: identifier already exists");this.prerelease.push(o)}}if(e){let r=[e,o];if(n===!1&&(r=[e]),rs(this.prerelease,e)){let d=this.prerelease[e.split(".").length];isNaN(d)&&(this.prerelease=r)}else this.prerelease=r}break}default:throw new Error(`invalid increment argument: ${t}`)}return this.raw=this.format(),this.build.length&&(this.raw+=`+${this.build.join(".")}`),this}};Do.exports=tn});var ge=A((Yu,Lo)=>{"use strict";var Oo=U(),as=(i,t,e=!1)=>{if(i instanceof Oo)return i;try{return new Oo(i,t)}catch(n){if(!e)return null;throw n}};Lo.exports=as});var No=A((Ju,Vo)=>{"use strict";var ss=ge(),ls=(i,t)=>{let e=ss(i,t);return e?e.version:null};Vo.exports=ls});var $o=A((em,Fo)=>{"use strict";var cs=ge(),ds=(i,t)=>{let e=cs(i.trim().replace(/^[=v]+/,""),t);return e?e.version:null};Fo.exports=ds});var qo=A((tm,zo)=>{"use strict";var Bo=U(),ps=(i,t,e,n,o)=>{typeof e=="string"&&(o=n,n=e,e=void 0);try{return new Bo(i instanceof Bo?i.version:i,e).inc(t,n,o).version}catch(r){return null}};zo.exports=ps});var Wo=A((nm,Ho)=>{"use strict";var Uo=ge(),us=(i,t)=>{let e=Uo(i,null,!0),n=Uo(t,null,!0),o=e.compare(n);if(o===0)return null;let r=o>0,d=r?e:n,g=r?n:e,E=!!d.prerelease.length;if(!!g.prerelease.length&&!E){if(!g.patch&&!g.minor)return"major";if(g.compareMain(d)===0)return g.minor&&!g.patch?"minor":"patch"}let k=E?"pre":"";return e.major!==n.major?k+"major":e.minor!==n.minor?k+"minor":e.patch!==n.patch?k+"patch":"prerelease"};Ho.exports=us});var jo=A((im,Go)=>{"use strict";var ms=U(),_s=(i,t)=>new ms(i,t).major;Go.exports=_s});var Xo=A((om,Ko)=>{"use strict";var fs=U(),hs=(i,t)=>new fs(i,t).minor;Ko.exports=hs});var Qo=A((rm,Zo)=>{"use strict";var gs=U(),Cs=(i,t)=>new gs(i,t).patch;Zo.exports=Cs});var Jo=A((am,Yo)=>{"use strict";var bs=ge(),vs=(i,t)=>{let e=bs(i,t);return e&&e.prerelease.length?e.prerelease:null};Yo.exports=vs});var te=A((sm,tr)=>{"use strict";var er=U(),ws=(i,t,e)=>new er(i,e).compare(new er(t,e));tr.exports=ws});var ir=A((lm,nr)=>{"use strict";var xs=te(),ys=(i,t,e)=>xs(t,i,e);nr.exports=ys});var rr=A((cm,or)=>{"use strict";var Es=te(),Ts=(i,t)=>Es(i,t,!0);or.exports=Ts});var gt=A((dm,sr)=>{"use strict";var ar=U(),Ss=(i,t,e)=>{let n=new ar(i,e),o=new ar(t,e);return n.compare(o)||n.compareBuild(o)};sr.exports=Ss});var cr=A((pm,lr)=>{"use strict";var Ms=gt(),As=(i,t)=>i.sort((e,n)=>Ms(e,n,t));lr.exports=As});var pr=A((um,dr)=>{"use strict";var Ps=gt(),ks=(i,t)=>i.sort((e,n)=>Ps(n,e,t));dr.exports=ks});var Ne=A((mm,ur)=>{"use strict";var Is=te(),Rs=(i,t,e)=>Is(i,t,e)>0;ur.exports=Rs});var Ct=A((_m,mr)=>{"use strict";var Ds=te(),Os=(i,t,e)=>Ds(i,t,e)<0;mr.exports=Os});var nn=A((fm,_r)=>{"use strict";var Ls=te(),Vs=(i,t,e)=>Ls(i,t,e)===0;_r.exports=Vs});var on=A((hm,fr)=>{"use strict";var Ns=te(),Fs=(i,t,e)=>Ns(i,t,e)!==0;fr.exports=Fs});var bt=A((gm,hr)=>{"use strict";var $s=te(),Bs=(i,t,e)=>$s(i,t,e)>=0;hr.exports=Bs});var vt=A((Cm,gr)=>{"use strict";var zs=te(),qs=(i,t,e)=>zs(i,t,e)<=0;gr.exports=qs});var rn=A((bm,Cr)=>{"use strict";var Us=nn(),Hs=on(),Ws=Ne(),Gs=bt(),js=Ct(),Ks=vt(),Xs=(i,t,e,n)=>{switch(t){case"===":return typeof i=="object"&&(i=i.version),typeof e=="object"&&(e=e.version),i===e;case"!==":return typeof i=="object"&&(i=i.version),typeof e=="object"&&(e=e.version),i!==e;case"":case"=":case"==":return Us(i,e,n);case"!=":return Hs(i,e,n);case">":return Ws(i,e,n);case">=":return Gs(i,e,n);case"<":return js(i,e,n);case"<=":return Ks(i,e,n);default:throw new TypeError(`Invalid operator: ${t}`)}};Cr.exports=Xs});var vr=A((vm,br)=>{"use strict";var Zs=U(),Qs=ge(),{safeRe:wt,t:xt}=Ie(),Ys=(i,t)=>{if(i instanceof Zs)return i;if(typeof i=="number"&&(i=String(i)),typeof i!="string")return null;t=t||{};let e=null;if(!t.rtl)e=i.match(t.includePrerelease?wt[xt.COERCEFULL]:wt[xt.COERCE]);else{let E=t.includePrerelease?wt[xt.COERCERTLFULL]:wt[xt.COERCERTL],T;for(;(T=E.exec(i))&&(!e||e.index+e[0].length!==i.length);)(!e||T.index+T[0].length!==e.index+e[0].length)&&(e=T),E.lastIndex=T.index+T[1].length+T[2].length;E.lastIndex=-1}if(e===null)return null;let n=e[2],o=e[3]||"0",r=e[4]||"0",d=t.includePrerelease&&e[5]?`-${e[5]}`:"",g=t.includePrerelease&&e[6]?`+${e[6]}`:"";return Qs(`${n}.${o}.${r}${d}${g}`,t)};br.exports=Ys});var xr=A((wm,wr)=>{"use strict";var Js=ge(),el=ke(),tl=U(),nl=(i,t,e)=>{if(!el.RELEASE_TYPES.includes(t))return null;let n=il(i,e);return n&&ol(n,t)},il=(i,t)=>{let e=i instanceof tl?i.version:i;return Js(e,t)},ol=(i,t)=>{if(rl(t))return i.version;switch(i.prerelease=[],t){case"major":i.minor=0,i.patch=0;break;case"minor":i.patch=0;break}return i.format()},rl=i=>i.startsWith("pre");wr.exports=nl});var Er=A((xm,yr)=>{"use strict";var an=class{constructor(){this.max=1e3,this.map=new Map}get(t){let e=this.map.get(t);if(e!==void 0)return this.map.delete(t),this.map.set(t,e),e}delete(t){return this.map.delete(t)}set(t,e){if(!this.delete(t)&&e!==void 0){if(this.map.size>=this.max){let o=this.map.keys().next().value;this.delete(o)}this.map.set(t,e)}return this}};yr.exports=an});var ne=A((ym,Ar)=>{"use strict";var al=/\s+/g,sn=class i{constructor(t,e){if(e=ll(e),t instanceof i)return t.loose===!!e.loose&&t.includePrerelease===!!e.includePrerelease?t:new i(t.raw,e);if(t instanceof ln)return this.raw=t.value,this.set=[[t]],this.formatted=void 0,this;if(this.options=e,this.loose=!!e.loose,this.includePrerelease=!!e.includePrerelease,this.raw=t.trim().replace(al," "),this.set=this.raw.split("||").map(n=>this.parseRange(n.trim())).filter(n=>n.length),!this.set.length)throw new TypeError(`Invalid SemVer Range: ${this.raw}`);if(this.set.length>1){let n=this.set[0];if(this.set=this.set.filter(o=>!Sr(o[0])),this.set.length===0)this.set=[n];else if(this.set.length>1){for(let o of this.set)if(o.length===1&&gl(o[0])){this.set=[o];break}}}this.formatted=void 0}get range(){if(this.formatted===void 0){this.formatted="";for(let t=0;t<this.set.length;t++){t>0&&(this.formatted+="||");let e=this.set[t];for(let n=0;n<e.length;n++)n>0&&(this.formatted+=" "),this.formatted+=e[n].toString().trim()}}return this.formatted}format(){return this.range}toString(){return this.range}parseRange(t){t=t.replace(hl,"");let n=((this.options.includePrerelease&&_l)|(this.options.loose&&fl))+":"+t,o=Tr.get(n);if(o)return o;let r=this.options.loose,d=r?K[H.HYPHENRANGELOOSE]:K[H.HYPHENRANGE];t=t.replace(d,Al(this.options.includePrerelease)),R("hyphen replace",t),t=t.replace(K[H.COMPARATORTRIM],pl),R("comparator trim",t),t=t.replace(K[H.TILDETRIM],ul),R("tilde trim",t),t=t.replace(K[H.CARETTRIM],ml),R("caret trim",t);let g=t.split(" ").map(S=>Cl(S,this.options)).join(" ").split(/\s+/).map(S=>Ml(S,this.options));r&&(g=g.filter(S=>(R("loose invalid filter",S,this.options),!!S.match(K[H.COMPARATORLOOSE])))),R("range list",g);let E=new Map,T=g.map(S=>new ln(S,this.options));for(let S of T){if(Sr(S))return[S];E.set(S.value,S)}E.size>1&&E.has("")&&E.delete("");let k=[...E.values()];return Tr.set(n,k),k}intersects(t,e){if(!(t instanceof i))throw new TypeError("a Range is required");return this.set.some(n=>Mr(n,e)&&t.set.some(o=>Mr(o,e)&&n.every(r=>o.every(d=>r.intersects(d,e)))))}test(t){if(!t)return!1;if(typeof t=="string")try{t=new cl(t,this.options)}catch(e){return!1}for(let e=0;e<this.set.length;e++)if(Pl(this.set[e],t,this.options))return!0;return!1}};Ar.exports=sn;var sl=Er(),Tr=new sl,ll=ut(),ln=Fe(),R=Ve(),cl=U(),{safeRe:K,src:dl,t:H,comparatorTrimReplace:pl,tildeTrimReplace:ul,caretTrimReplace:ml}=Ie(),{FLAG_INCLUDE_PRERELEASE:_l,FLAG_LOOSE:fl}=ke(),hl=new RegExp(dl[H.BUILD],"g"),Sr=i=>i.value==="<0.0.0-0",gl=i=>i.value==="",Mr=(i,t)=>{let e=!0,n=i.slice(),o=n.pop();for(;e&&n.length;)e=n.every(r=>o.intersects(r,t)),o=n.pop();return e},Cl=(i,t)=>(i=i.replace(K[H.BUILD],""),R("comp",i,t),i=xl(i,t),R("caret",i),i=vl(i,t),R("tildes",i),i=El(i,t),R("xrange",i),i=Sl(i,t),R("stars",i),i),V=i=>!i||i.toLowerCase()==="x"||i==="*",bl=(i,t,e)=>V(i)&&!V(t)||V(t)&&e&&!V(e),vl=(i,t)=>i.trim().split(/\s+/).map(e=>wl(e,t)).join(" "),wl=(i,t)=>{let e=t.loose?K[H.TILDELOOSE]:K[H.TILDE],n=t.includePrerelease?"-0":"";return i.replace(e,(o,r,d,g,E)=>{R("tilde",i,o,r,d,g,E);let T;return V(r)?T="":V(d)?T=`>=${r}.0.0${n} <${+r+1}.0.0-0`:V(g)?T=`>=${r}.${d}.0${n} <${r}.${+d+1}.0-0`:E?(R("replaceTilde pr",E),T=`>=${r}.${d}.${g}-${E} <${r}.${+d+1}.0-0`):T=`>=${r}.${d}.${g} <${r}.${+d+1}.0-0`,R("tilde return",T),T})},xl=(i,t)=>i.trim().split(/\s+/).map(e=>yl(e,t)).join(" "),yl=(i,t)=>{R("caret",i,t);let e=t.loose?K[H.CARETLOOSE]:K[H.CARET],n=t.includePrerelease?"-0":"";return i.replace(e,(o,r,d,g,E)=>{R("caret",i,o,r,d,g,E);let T;return V(r)?T="":V(d)?T=`>=${r}.0.0${n} <${+r+1}.0.0-0`:V(g)?r==="0"?T=`>=${r}.${d}.0${n} <${r}.${+d+1}.0-0`:T=`>=${r}.${d}.0${n} <${+r+1}.0.0-0`:E?(R("replaceCaret pr",E),r==="0"?d==="0"?T=`>=${r}.${d}.${g}-${E} <${r}.${d}.${+g+1}-0`:T=`>=${r}.${d}.${g}-${E} <${r}.${+d+1}.0-0`:T=`>=${r}.${d}.${g}-${E} <${+r+1}.0.0-0`):(R("no pr"),r==="0"?d==="0"?T=`>=${r}.${d}.${g} <${r}.${d}.${+g+1}-0`:T=`>=${r}.${d}.${g} <${r}.${+d+1}.0-0`:T=`>=${r}.${d}.${g} <${+r+1}.0.0-0`),R("caret return",T),T})},El=(i,t)=>(R("replaceXRanges",i,t),i.split(/\s+/).map(e=>Tl(e,t)).join(" ")),Tl=(i,t)=>{i=i.trim();let e=t.loose?K[H.XRANGELOOSE]:K[H.XRANGE];return i.replace(e,(n,o,r,d,g,E)=>{if(R("xRange",i,n,o,r,d,g,E),bl(r,d,g))return i;let T=V(r),k=T||V(d),S=k||V(g),D=S;return o==="="&&D&&(o=""),E=t.includePrerelease?"-0":"",T?o===">"||o==="<"?n="<0.0.0-0":n="*":o&&D?(k&&(d=0),g=0,o===">"?(o=">=",k?(r=+r+1,d=0,g=0):(d=+d+1,g=0)):o==="<="&&(o="<",k?r=+r+1:d=+d+1),o==="<"&&(E="-0"),n=`${o+r}.${d}.${g}${E}`):k?n=`>=${r}.0.0${E} <${+r+1}.0.0-0`:S&&(n=`>=${r}.${d}.0${E} <${r}.${+d+1}.0-0`),R("xRange return",n),n})},Sl=(i,t)=>(R("replaceStars",i,t),i.trim().replace(K[H.STAR],"")),Ml=(i,t)=>(R("replaceGTE0",i,t),i.trim().replace(K[t.includePrerelease?H.GTE0PRE:H.GTE0],"")),Al=i=>(t,e,n,o,r,d,g,E,T,k,S,D)=>(V(n)?e="":V(o)?e=`>=${n}.0.0${i?"-0":""}`:V(r)?e=`>=${n}.${o}.0${i?"-0":""}`:d?e=`>=${e}`:e=`>=${e}${i?"-0":""}`,V(T)?E="":V(k)?E=`<${+T+1}.0.0-0`:V(S)?E=`<${T}.${+k+1}.0-0`:D?E=`<=${T}.${k}.${S}-${D}`:i?E=`<${T}.${k}.${+S+1}-0`:E=`<=${E}`,`${e} ${E}`.trim()),Pl=(i,t,e)=>{for(let n=0;n<i.length;n++)if(!i[n].test(t))return!1;if(t.prerelease.length&&!e.includePrerelease){for(let n=0;n<i.length;n++)if(R(i[n].semver),i[n].semver!==ln.ANY&&i[n].semver.prerelease.length>0){let o=i[n].semver;if(o.major===t.major&&o.minor===t.minor&&o.patch===t.patch)return!0}return!1}return!0}});var Fe=A((Em,Or)=>{"use strict";var $e=Symbol("SemVer ANY"),pn=class i{static get ANY(){return $e}constructor(t,e){if(e=Pr(e),t instanceof i){if(t.loose===!!e.loose)return t;t=t.value}t=t.trim().split(/\s+/).join(" "),dn("comparator",t,e),this.options=e,this.loose=!!e.loose,this.parse(t),this.semver===$e?this.value="":this.value=this.operator+this.semver.version,dn("comp",this)}parse(t){let e=this.options.loose?kr[Ir.COMPARATORLOOSE]:kr[Ir.COMPARATOR],n=t.match(e);if(!n)throw new TypeError(`Invalid comparator: ${t}`);this.operator=n[1]!==void 0?n[1]:"",this.operator==="="&&(this.operator=""),n[2]?this.semver=new Rr(n[2],this.options.loose):this.semver=$e}toString(){return this.value}test(t){if(dn("Comparator.test",t,this.options.loose),this.semver===$e||t===$e)return!0;if(typeof t=="string")try{t=new Rr(t,this.options)}catch(e){return!1}return cn(t,this.operator,this.semver,this.options)}intersects(t,e){if(!(t instanceof i))throw new TypeError("a Comparator is required");return this.operator===""?this.value===""?!0:new Dr(t.value,e).test(this.value):t.operator===""?t.value===""?!0:new Dr(this.value,e).test(t.semver):(e=Pr(e),e.includePrerelease&&(this.value==="<0.0.0-0"||t.value==="<0.0.0-0")||!e.includePrerelease&&(this.value.startsWith("<0.0.0")||t.value.startsWith("<0.0.0"))?!1:!!(this.operator.startsWith(">")&&t.operator.startsWith(">")||this.operator.startsWith("<")&&t.operator.startsWith("<")||this.semver.version===t.semver.version&&this.operator.includes("=")&&t.operator.includes("=")||cn(this.semver,"<",t.semver,e)&&this.operator.startsWith(">")&&t.operator.startsWith("<")||cn(this.semver,">",t.semver,e)&&this.operator.startsWith("<")&&t.operator.startsWith(">")))}};Or.exports=pn;var Pr=ut(),{safeRe:kr,t:Ir}=Ie(),cn=rn(),dn=Ve(),Rr=U(),Dr=ne()});var Be=A((Tm,Lr)=>{"use strict";var kl=ne(),Il=(i,t,e)=>{try{t=new kl(t,e)}catch(n){return!1}return t.test(i)};Lr.exports=Il});var Nr=A((Sm,Vr)=>{"use strict";var Rl=ne(),Dl=(i,t)=>new Rl(i,t).set.map(e=>e.map(n=>n.value).join(" ").trim().split(" "));Vr.exports=Dl});var $r=A((Mm,Fr)=>{"use strict";var Ol=U(),Ll=ne(),Vl=(i,t,e)=>{let n=null,o=null,r=null;try{r=new Ll(t,e)}catch(d){return null}return i.forEach(d=>{r.test(d)&&(!n||o.compare(d)===-1)&&(n=d,o=new Ol(n,e))}),n};Fr.exports=Vl});var zr=A((Am,Br)=>{"use strict";var Nl=U(),Fl=ne(),$l=(i,t,e)=>{let n=null,o=null,r=null;try{r=new Fl(t,e)}catch(d){return null}return i.forEach(d=>{r.test(d)&&(!n||o.compare(d)===1)&&(n=d,o=new Nl(n,e))}),n};Br.exports=$l});var Hr=A((Pm,Ur)=>{"use strict";var un=U(),Bl=ne(),qr=Ne(),zl=(i,t)=>{i=new Bl(i,t);let e=new un("0.0.0");if(i.test(e)||(e=new un("0.0.0-0"),i.test(e)))return e;e=null;for(let n=0;n<i.set.length;++n){let o=i.set[n],r=null;o.forEach(d=>{let g=new un(d.semver.version);switch(d.operator){case">":g.prerelease.length===0?g.patch++:g.prerelease.push(0),g.raw=g.format();case"":case">=":(!r||qr(g,r))&&(r=g);break;case"<":case"<=":break;default:throw new Error(`Unexpected operation: ${d.operator}`)}}),r&&(!e||qr(e,r))&&(e=r)}return e&&i.test(e)?e:null};Ur.exports=zl});var Gr=A((km,Wr)=>{"use strict";var ql=ne(),Ul=(i,t)=>{try{return new ql(i,t).range||"*"}catch(e){return null}};Wr.exports=Ul});var yt=A((Im,Zr)=>{"use strict";var Hl=U(),Xr=Fe(),{ANY:Wl}=Xr,Gl=ne(),jl=Be(),jr=Ne(),Kr=Ct(),Kl=vt(),Xl=bt(),Zl=(i,t,e,n)=>{i=new Hl(i,n),t=new Gl(t,n);let o,r,d,g,E;switch(e){case">":o=jr,r=Kl,d=Kr,g=">",E=">=";break;case"<":o=Kr,r=Xl,d=jr,g="<",E="<=";break;default:throw new TypeError('Must provide a hilo val of "<" or ">"')}if(jl(i,t,n))return!1;for(let T=0;T<t.set.length;++T){let k=t.set[T],S=null,D=null;if(k.forEach(M=>{M.semver===Wl&&(M=new Xr(">=0.0.0")),S=S||M,D=D||M,o(M.semver,S.semver,n)?S=M:d(M.semver,D.semver,n)&&(D=M)}),S.operator===g||S.operator===E||(!D.operator||D.operator===g)&&r(i,D.semver))return!1;if(D.operator===E&&d(i,D.semver))return!1}return!0};Zr.exports=Zl});var Yr=A((Rm,Qr)=>{"use strict";var Ql=yt(),Yl=(i,t,e)=>Ql(i,t,">",e);Qr.exports=Yl});var ea=A((Dm,Jr)=>{"use strict";var Jl=yt(),ec=(i,t,e)=>Jl(i,t,"<",e);Jr.exports=ec});var ia=A((Om,na)=>{"use strict";var ta=ne(),tc=(i,t,e)=>(i=new ta(i,e),t=new ta(t,e),i.intersects(t,e));na.exports=tc});var ra=A((Lm,oa)=>{"use strict";var nc=Be(),ic=te();oa.exports=(i,t,e)=>{let n=[],o=null,r=null,d=i.sort((k,S)=>ic(k,S,e));for(let k of d)nc(k,t,e)?(r=k,o||(o=k)):(r&&n.push([o,r]),r=null,o=null);o&&n.push([o,null]);let g=[];for(let[k,S]of n)k===S?g.push(k):!S&&k===d[0]?g.push("*"):S?k===d[0]?g.push(`<=${S}`):g.push(`${k} - ${S}`):g.push(`>=${k}`);let E=g.join(" || "),T=typeof t.raw=="string"?t.raw:String(t);return E.length<T.length?E:t}});var pa=A((Vm,da)=>{"use strict";var aa=ne(),fn=Fe(),{ANY:mn}=fn,_n=Be(),hn=te(),oc=(i,t,e={})=>{if(i===t)return!0;i=new aa(i,e),t=new aa(t,e);let n=!1;e:for(let o of i.set){for(let r of t.set){let d=ac(o,r,e);if(n=n||d!==null,d)continue e}if(n)return!1}return!0},rc=[new fn(">=0.0.0-0")],sa=[new fn(">=0.0.0")],ac=(i,t,e)=>{if(i===t)return!0;if(i.length===1&&i[0].semver===mn){if(t.length===1&&t[0].semver===mn)return!0;e.includePrerelease?i=rc:i=sa}if(t.length===1&&t[0].semver===mn){if(e.includePrerelease)return!0;t=sa}let n=new Set,o,r;for(let M of i)M.operator===">"||M.operator===">="?o=la(o,M,e):M.operator==="<"||M.operator==="<="?r=ca(r,M,e):n.add(M.semver);if(n.size>1)return null;let d;if(o&&r){if(d=hn(o.semver,r.semver,e),d>0)return null;if(d===0&&(o.operator!==">="||r.operator!=="<="))return null}for(let M of n){if(o&&!_n(M,String(o),e)||r&&!_n(M,String(r),e))return null;for(let xa of t)if(!_n(M,String(xa),e))return!1;return!0}let g,E,T,k,S=r&&!e.includePrerelease&&r.semver.prerelease.length?r.semver:!1,D=o&&!e.includePrerelease&&o.semver.prerelease.length?o.semver:!1;S&&S.prerelease.length===1&&r.operator==="<"&&S.prerelease[0]===0&&(S=!1);for(let M of t){if(k=k||M.operator===">"||M.operator===">=",T=T||M.operator==="<"||M.operator==="<=",o){if(D&&M.semver.prerelease&&M.semver.prerelease.length&&M.semver.major===D.major&&M.semver.minor===D.minor&&M.semver.patch===D.patch&&(D=!1),M.operator===">"||M.operator===">="){if(g=la(o,M,e),g===M&&g!==o)return!1}else if(o.operator===">="&&!M.test(o.semver))return!1}if(r){if(S&&M.semver.prerelease&&M.semver.prerelease.length&&M.semver.major===S.major&&M.semver.minor===S.minor&&M.semver.patch===S.patch&&(S=!1),M.operator==="<"||M.operator==="<="){if(E=ca(r,M,e),E===M&&E!==r)return!1}else if(r.operator==="<="&&!M.test(r.semver))return!1}if(!M.operator&&(r||o)&&d!==0)return!1}return!(o&&T&&!r&&d!==0||r&&k&&!o&&d!==0||D||S)},la=(i,t,e)=>{if(!i)return t;let n=hn(i.semver,t.semver,e);return n>0?i:n<0||t.operator===">"&&i.operator===">="?t:i},ca=(i,t,e)=>{if(!i)return t;let n=hn(i.semver,t.semver,e);return n<0?i:n>0||t.operator==="<"&&i.operator==="<="?t:i};da.exports=oc});var fa=A((Nm,_a)=>{"use strict";var gn=Ie(),ua=ke(),sc=U(),ma=Jt(),lc=ge(),cc=No(),dc=$o(),pc=qo(),uc=Wo(),mc=jo(),_c=Xo(),fc=Qo(),hc=Jo(),gc=te(),Cc=ir(),bc=rr(),vc=gt(),wc=cr(),xc=pr(),yc=Ne(),Ec=Ct(),Tc=nn(),Sc=on(),Mc=bt(),Ac=vt(),Pc=rn(),kc=vr(),Ic=xr(),Rc=Fe(),Dc=ne(),Oc=Be(),Lc=Nr(),Vc=$r(),Nc=zr(),Fc=Hr(),$c=Gr(),Bc=yt(),zc=Yr(),qc=ea(),Uc=ia(),Hc=ra(),Wc=pa();_a.exports={parse:lc,valid:cc,clean:dc,inc:pc,diff:uc,major:mc,minor:_c,patch:fc,prerelease:hc,compare:gc,rcompare:Cc,compareLoose:bc,compareBuild:vc,sort:wc,rsort:xc,gt:yc,lt:Ec,eq:Tc,neq:Sc,gte:Mc,lte:Ac,cmp:Pc,coerce:kc,truncate:Ic,Comparator:Rc,Range:Dc,satisfies:Oc,toComparators:Lc,maxSatisfying:Vc,minSatisfying:Nc,minVersion:Fc,validRange:$c,outside:Bc,gtr:zc,ltr:qc,intersects:Uc,simplifyRange:Hc,subset:Wc,SemVer:sc,re:gn.re,src:gn.src,tokens:gn.t,SEMVER_SPEC_VERSION:ua.SEMVER_SPEC_VERSION,RELEASE_TYPES:ua.RELEASE_TYPES,compareIdentifiers:ma.compareIdentifiers,rcompareIdentifiers:ma.rcompareIdentifiers}});var bo="mat-badge-content",Ea=(()=>{class i{static \u0275fac=function(n){return new(n||i)};static \u0275cmp=I({type:i,selectors:[["ng-component"]],decls:0,vars:0,template:function(n,o){},styles:[`.mat-badge {
|
|
1
|
+
import{d as Co}from"./chunk-T7ZWMXKZ.js";import{$ as Ni,A as gi,Aa as no,B as Ci,Ba as io,C as bi,Ca as oo,D as vi,E as wi,F as xi,G as yi,Ga as ro,H as ot,Ha as ao,I as jt,Ia as so,J as Ei,Ja as lo,Ka as co,N as j,O as Ti,P as Si,Q as Mi,R as Ai,Ra as po,Sa as uo,T as Pi,U as ki,Ua as mo,V as Ii,Va as _o,W as Di,Wa as fo,X as Ri,Y as Oi,Z as Li,Za as ho,_ as Vi,_a as go,a as ii,ba as Fi,c as oi,ca as Bi,da as $i,ea as zi,fa as rt,g as qt,ga as at,h as Ut,ha as st,ia as lt,ja as qi,ka as Ui,la as Hi,ma as Wi,na as Gi,oa as ji,p as ci,pa as Ki,q as di,qa as Xi,ra as Zi,s as pi,sa as Qi,t as ui,u as mi,wa as Yi,x as _i,xa as Ji,y as fi,ya as eo,z as hi,za as to}from"./chunk-QZNRNBJP.js";import{c as it}from"./chunk-ISXARX6U.js";import"./chunk-62WHV6CJ.js";import"./chunk-MYBGWSLC.js";import{a as nt}from"./chunk-6E2BDKCH.js";import"./chunk-45ZTFAA5.js";import"./chunk-X6D4D6EN.js";import{a as ri,g as ai,i as si,k as li,n as Ht,q as Wt,u as Gt}from"./chunk-PD55PKQG.js";import"./chunk-YZN4NRWW.js";import"./chunk-YSHHABBQ.js";import{$ as X,$a as l,A as Sn,Aa as ae,Ab as Vn,Ad as tt,B as Rt,Cb as ue,Cc as Ye,Da as se,Ea as le,Ec as Gn,Fc as Me,Ga as J,Gc as jn,Ha as f,Hd as ei,I as Ot,Ia as h,K as oe,Ka as Ce,Kc as zt,Kd as ti,La as z,Ma as q,Mb as Nn,Mc as Kn,N as Mn,Na as v,Nb as L,O as Ue,Oa as a,P as Lt,Pa as s,Qa as b,Qd as fe,R as C,Ra as Dn,Rd as he,Sa as Rn,T as m,Ta as Ke,Tb as ee,U as _,Uc as Xn,X as Vt,Xa as y,Y as ye,Ya as Te,Yb as Fn,Yc as Je,Za as u,Zd as Ae,_ as He,_a as On,_b as Xe,aa as W,ab as be,ac as Ze,ba as Z,bb as ie,be as ni,c as _e,cb as Ft,ce as Pe,da as We,db as Q,dc as Bn,eb as N,fa as Y,fb as F,ga as An,hc as $n,hd as Zn,ia as Pn,ic as zn,ja as re,jb as ve,jd as Qn,ka as kn,kb as G,la as Oe,lb as B,m as Dt,ma as c,mb as Bt,na as Nt,nb as Ln,nc as qn,ob as p,oc as Un,od as et,pb as $,pc as ce,pd as Yn,qa as Ge,qb as pe,qc as Qe,ra as Ee,sd as Jn,t as En,u as Re,ua as I,uc as Hn,va as je,wa as In,wc as $t,wd as we,ya as Le,yc as Wn,z as Tn,zb as Se}from"./chunk-RG7WQ7O2.js";import{a as ze,b as qe,d as A,f as ya,g as O}from"./chunk-NCEQPEJE.js";var ke=A((ju,To)=>{"use strict";var Ba="2.0.0",$a=Number.MAX_SAFE_INTEGER||9007199254740991,za=16,qa=250,Ua=["major","premajor","minor","preminor","patch","prepatch","prerelease"];To.exports={MAX_LENGTH:256,MAX_SAFE_COMPONENT_LENGTH:za,MAX_SAFE_BUILD_LENGTH:qa,MAX_SAFE_INTEGER:$a,RELEASE_TYPES:Ua,SEMVER_SPEC_VERSION:Ba,FLAG_INCLUDE_PRERELEASE:1,FLAG_LOOSE:2}});var Ve=A((Ku,So)=>{"use strict";var Ha=typeof process=="object"&&process.env&&process.env.NODE_DEBUG&&/\bsemver\b/i.test(process.env.NODE_DEBUG)?(...i)=>console.error("SEMVER",...i):()=>{};So.exports=Ha});var Ie=A((de,Mo)=>{"use strict";var{MAX_SAFE_COMPONENT_LENGTH:Yt,MAX_SAFE_BUILD_LENGTH:Wa,MAX_LENGTH:Ga}=ke(),ja=Ve();de=Mo.exports={};var Ka=de.re=[],Xa=de.safeRe=[],w=de.src=[],Za=de.safeSrc=[],x=de.t={},Qa=0,Jt="[a-zA-Z0-9-]",Ya=[["\\s",1],["\\d",Ga],[Jt,Wa]],Ja=i=>{for(let[t,e]of Ya)i=i.split(`${t}*`).join(`${t}{0,${e}}`).split(`${t}+`).join(`${t}{1,${e}}`);return i},P=(i,t,e)=>{let n=Ja(t),o=Qa++;ja(i,o,t),x[i]=o,w[o]=t,Za[o]=n,Ka[o]=new RegExp(t,e?"g":void 0),Xa[o]=new RegExp(n,e?"g":void 0)};P("NUMERICIDENTIFIER","0|[1-9]\\d*");P("NUMERICIDENTIFIERLOOSE","\\d+");P("NONNUMERICIDENTIFIER",`\\d*[a-zA-Z-]${Jt}*`);P("MAINVERSION",`(${w[x.NUMERICIDENTIFIER]})\\.(${w[x.NUMERICIDENTIFIER]})\\.(${w[x.NUMERICIDENTIFIER]})`);P("MAINVERSIONLOOSE",`(${w[x.NUMERICIDENTIFIERLOOSE]})\\.(${w[x.NUMERICIDENTIFIERLOOSE]})\\.(${w[x.NUMERICIDENTIFIERLOOSE]})`);P("PRERELEASEIDENTIFIER",`(?:${w[x.NONNUMERICIDENTIFIER]}|${w[x.NUMERICIDENTIFIER]})`);P("PRERELEASEIDENTIFIERLOOSE",`(?:${w[x.NONNUMERICIDENTIFIER]}|${w[x.NUMERICIDENTIFIERLOOSE]})`);P("PRERELEASE",`(?:-(${w[x.PRERELEASEIDENTIFIER]}(?:\\.${w[x.PRERELEASEIDENTIFIER]})*))`);P("PRERELEASELOOSE",`(?:-?(${w[x.PRERELEASEIDENTIFIERLOOSE]}(?:\\.${w[x.PRERELEASEIDENTIFIERLOOSE]})*))`);P("BUILDIDENTIFIER",`${Jt}+`);P("BUILD",`(?:\\+(${w[x.BUILDIDENTIFIER]}(?:\\.${w[x.BUILDIDENTIFIER]})*))`);P("FULLPLAIN",`v?${w[x.MAINVERSION]}${w[x.PRERELEASE]}?${w[x.BUILD]}?`);P("FULL",`^${w[x.FULLPLAIN]}$`);P("LOOSEPLAIN",`[v=\\s]*${w[x.MAINVERSIONLOOSE]}${w[x.PRERELEASELOOSE]}?${w[x.BUILD]}?`);P("LOOSE",`^${w[x.LOOSEPLAIN]}$`);P("GTLT","((?:<|>)?=?)");P("XRANGEIDENTIFIERLOOSE",`${w[x.NUMERICIDENTIFIERLOOSE]}|x|X|\\*`);P("XRANGEIDENTIFIER",`${w[x.NUMERICIDENTIFIER]}|x|X|\\*`);P("XRANGEPLAIN",`[v=\\s]*(${w[x.XRANGEIDENTIFIER]})(?:\\.(${w[x.XRANGEIDENTIFIER]})(?:\\.(${w[x.XRANGEIDENTIFIER]})(?:${w[x.PRERELEASE]})?${w[x.BUILD]}?)?)?`);P("XRANGEPLAINLOOSE",`[v=\\s]*(${w[x.XRANGEIDENTIFIERLOOSE]})(?:\\.(${w[x.XRANGEIDENTIFIERLOOSE]})(?:\\.(${w[x.XRANGEIDENTIFIERLOOSE]})(?:${w[x.PRERELEASELOOSE]})?${w[x.BUILD]}?)?)?`);P("XRANGE",`^${w[x.GTLT]}\\s*${w[x.XRANGEPLAIN]}$`);P("XRANGELOOSE",`^${w[x.GTLT]}\\s*${w[x.XRANGEPLAINLOOSE]}$`);P("COERCEPLAIN",`(^|[^\\d])(\\d{1,${Yt}})(?:\\.(\\d{1,${Yt}}))?(?:\\.(\\d{1,${Yt}}))?`);P("COERCE",`${w[x.COERCEPLAIN]}(?:$|[^\\d])`);P("COERCEFULL",w[x.COERCEPLAIN]+`(?:${w[x.PRERELEASE]})?(?:${w[x.BUILD]})?(?:$|[^\\d])`);P("COERCERTL",w[x.COERCE],!0);P("COERCERTLFULL",w[x.COERCEFULL],!0);P("LONETILDE","(?:~>?)");P("TILDETRIM",`(\\s*)${w[x.LONETILDE]}\\s+`,!0);de.tildeTrimReplace="$1~";P("TILDE",`^${w[x.LONETILDE]}${w[x.XRANGEPLAIN]}$`);P("TILDELOOSE",`^${w[x.LONETILDE]}${w[x.XRANGEPLAINLOOSE]}$`);P("LONECARET","(?:\\^)");P("CARETTRIM",`(\\s*)${w[x.LONECARET]}\\s+`,!0);de.caretTrimReplace="$1^";P("CARET",`^${w[x.LONECARET]}${w[x.XRANGEPLAIN]}$`);P("CARETLOOSE",`^${w[x.LONECARET]}${w[x.XRANGEPLAINLOOSE]}$`);P("COMPARATORLOOSE",`^${w[x.GTLT]}\\s*(${w[x.LOOSEPLAIN]})$|^$`);P("COMPARATOR",`^${w[x.GTLT]}\\s*(${w[x.FULLPLAIN]})$|^$`);P("COMPARATORTRIM",`(\\s*)${w[x.GTLT]}\\s*(${w[x.LOOSEPLAIN]}|${w[x.XRANGEPLAIN]})`,!0);de.comparatorTrimReplace="$1$2$3";P("HYPHENRANGE",`^\\s*(${w[x.XRANGEPLAIN]})\\s+-\\s+(${w[x.XRANGEPLAIN]})\\s*$`);P("HYPHENRANGELOOSE",`^\\s*(${w[x.XRANGEPLAINLOOSE]})\\s+-\\s+(${w[x.XRANGEPLAINLOOSE]})\\s*$`);P("STAR","(<|>)?=?\\s*\\*");P("GTE0","^\\s*>=\\s*0\\.0\\.0\\s*$");P("GTE0PRE","^\\s*>=\\s*0\\.0\\.0-0\\s*$")});var ut=A((Xu,Ao)=>{"use strict";var es=Object.freeze({loose:!0}),ts=Object.freeze({}),ns=i=>i?typeof i!="object"?es:i:ts;Ao.exports=ns});var en=A((Zu,Io)=>{"use strict";var Po=/^[0-9]+$/,ko=(i,t)=>{if(typeof i=="number"&&typeof t=="number")return i===t?0:i<t?-1:1;let e=Po.test(i),n=Po.test(t);return e&&n&&(i=+i,t=+t),i===t?0:e&&!n?-1:n&&!e?1:i<t?-1:1},is=(i,t)=>ko(t,i);Io.exports={compareIdentifiers:ko,rcompareIdentifiers:is}});var U=A((Qu,Ro)=>{"use strict";var mt=Ve(),{MAX_LENGTH:Do,MAX_SAFE_INTEGER:_t}=ke(),{safeRe:ft,t:ht}=Ie(),os=ut(),{compareIdentifiers:tn}=en(),rs=(i,t)=>{let e=t.split(".");if(e.length>i.length)return!1;for(let n=0;n<e.length;n++)if(tn(i[n],e[n])!==0)return!1;return!0},nn=class i{constructor(t,e){if(e=os(e),t instanceof i){if(t.loose===!!e.loose&&t.includePrerelease===!!e.includePrerelease)return t;t=t.version}else if(typeof t!="string")throw new TypeError(`Invalid version. Must be a string. Got type "${typeof t}".`);if(t.length>Do)throw new TypeError(`version is longer than ${Do} characters`);mt("SemVer",t,e),this.options=e,this.loose=!!e.loose,this.includePrerelease=!!e.includePrerelease;let n=t.trim().match(e.loose?ft[ht.LOOSE]:ft[ht.FULL]);if(!n)throw new TypeError(`Invalid Version: ${t}`);if(this.raw=t,this.major=+n[1],this.minor=+n[2],this.patch=+n[3],this.major>_t||this.major<0)throw new TypeError("Invalid major version");if(this.minor>_t||this.minor<0)throw new TypeError("Invalid minor version");if(this.patch>_t||this.patch<0)throw new TypeError("Invalid patch version");n[4]?this.prerelease=n[4].split(".").map(o=>{if(/^[0-9]+$/.test(o)){let r=+o;if(r>=0&&r<_t)return r}return o}):this.prerelease=[],this.build=n[5]?n[5].split("."):[],this.format()}format(){return this.version=`${this.major}.${this.minor}.${this.patch}`,this.prerelease.length&&(this.version+=`-${this.prerelease.join(".")}`),this.version}toString(){return this.version}compare(t){if(mt("SemVer.compare",this.version,this.options,t),!(t instanceof i)){if(typeof t=="string"&&t===this.version)return 0;t=new i(t,this.options)}return t.version===this.version?0:this.compareMain(t)||this.comparePre(t)}compareMain(t){return t instanceof i||(t=new i(t,this.options)),this.major<t.major?-1:this.major>t.major?1:this.minor<t.minor?-1:this.minor>t.minor?1:this.patch<t.patch?-1:this.patch>t.patch?1:0}comparePre(t){if(t instanceof i||(t=new i(t,this.options)),this.prerelease.length&&!t.prerelease.length)return-1;if(!this.prerelease.length&&t.prerelease.length)return 1;if(!this.prerelease.length&&!t.prerelease.length)return 0;let e=0;do{let n=this.prerelease[e],o=t.prerelease[e];if(mt("prerelease compare",e,n,o),n===void 0&&o===void 0)return 0;if(o===void 0)return 1;if(n===void 0)return-1;if(n===o)continue;return tn(n,o)}while(++e)}compareBuild(t){t instanceof i||(t=new i(t,this.options));let e=0;do{let n=this.build[e],o=t.build[e];if(mt("build compare",e,n,o),n===void 0&&o===void 0)return 0;if(o===void 0)return 1;if(n===void 0)return-1;if(n===o)continue;return tn(n,o)}while(++e)}inc(t,e,n){if(t.startsWith("pre")){if(!e&&n===!1)throw new Error("invalid increment argument: identifier is empty");if(e){let o=`-${e}`.match(this.options.loose?ft[ht.PRERELEASELOOSE]:ft[ht.PRERELEASE]);if(!o||o[1]!==e)throw new Error(`invalid identifier: ${e}`)}}switch(t){case"premajor":this.prerelease.length=0,this.patch=0,this.minor=0,this.major++,this.inc("pre",e,n);break;case"preminor":this.prerelease.length=0,this.patch=0,this.minor++,this.inc("pre",e,n);break;case"prepatch":this.prerelease.length=0,this.inc("patch",e,n),this.inc("pre",e,n);break;case"prerelease":this.prerelease.length===0&&this.inc("patch",e,n),this.inc("pre",e,n);break;case"release":if(this.prerelease.length===0)throw new Error(`version ${this.raw} is not a prerelease`);this.prerelease.length=0;break;case"major":(this.minor!==0||this.patch!==0||this.prerelease.length===0)&&this.major++,this.minor=0,this.patch=0,this.prerelease=[];break;case"minor":(this.patch!==0||this.prerelease.length===0)&&this.minor++,this.patch=0,this.prerelease=[];break;case"patch":this.prerelease.length===0&&this.patch++,this.prerelease=[];break;case"pre":{let o=Number(n)?1:0;if(this.prerelease.length===0)this.prerelease=[o];else{let r=this.prerelease.length;for(;--r>=0;)typeof this.prerelease[r]=="number"&&(this.prerelease[r]++,r=-2);if(r===-1){if(e===this.prerelease.join(".")&&n===!1)throw new Error("invalid increment argument: identifier already exists");this.prerelease.push(o)}}if(e){let r=[e,o];if(n===!1&&(r=[e]),rs(this.prerelease,e)){let d=this.prerelease[e.split(".").length];isNaN(d)&&(this.prerelease=r)}else this.prerelease=r}break}default:throw new Error(`invalid increment argument: ${t}`)}return this.raw=this.format(),this.build.length&&(this.raw+=`+${this.build.join(".")}`),this}};Ro.exports=nn});var ge=A((Yu,Lo)=>{"use strict";var Oo=U(),as=(i,t,e=!1)=>{if(i instanceof Oo)return i;try{return new Oo(i,t)}catch(n){if(!e)return null;throw n}};Lo.exports=as});var No=A((Ju,Vo)=>{"use strict";var ss=ge(),ls=(i,t)=>{let e=ss(i,t);return e?e.version:null};Vo.exports=ls});var Bo=A((em,Fo)=>{"use strict";var cs=ge(),ds=(i,t)=>{let e=cs(i.trim().replace(/^[=v]+/,""),t);return e?e.version:null};Fo.exports=ds});var qo=A((tm,zo)=>{"use strict";var $o=U(),ps=(i,t,e,n,o)=>{typeof e=="string"&&(o=n,n=e,e=void 0);try{return new $o(i instanceof $o?i.version:i,e).inc(t,n,o).version}catch(r){return null}};zo.exports=ps});var Wo=A((nm,Ho)=>{"use strict";var Uo=ge(),us=(i,t)=>{let e=Uo(i,null,!0),n=Uo(t,null,!0),o=e.compare(n);if(o===0)return null;let r=o>0,d=r?e:n,g=r?n:e,E=!!d.prerelease.length;if(!!g.prerelease.length&&!E){if(!g.patch&&!g.minor)return"major";if(g.compareMain(d)===0)return g.minor&&!g.patch?"minor":"patch"}let k=E?"pre":"";return e.major!==n.major?k+"major":e.minor!==n.minor?k+"minor":e.patch!==n.patch?k+"patch":"prerelease"};Ho.exports=us});var jo=A((im,Go)=>{"use strict";var ms=U(),_s=(i,t)=>new ms(i,t).major;Go.exports=_s});var Xo=A((om,Ko)=>{"use strict";var fs=U(),hs=(i,t)=>new fs(i,t).minor;Ko.exports=hs});var Qo=A((rm,Zo)=>{"use strict";var gs=U(),Cs=(i,t)=>new gs(i,t).patch;Zo.exports=Cs});var Jo=A((am,Yo)=>{"use strict";var bs=ge(),vs=(i,t)=>{let e=bs(i,t);return e&&e.prerelease.length?e.prerelease:null};Yo.exports=vs});var te=A((sm,tr)=>{"use strict";var er=U(),ws=(i,t,e)=>new er(i,e).compare(new er(t,e));tr.exports=ws});var ir=A((lm,nr)=>{"use strict";var xs=te(),ys=(i,t,e)=>xs(t,i,e);nr.exports=ys});var rr=A((cm,or)=>{"use strict";var Es=te(),Ts=(i,t)=>Es(i,t,!0);or.exports=Ts});var gt=A((dm,sr)=>{"use strict";var ar=U(),Ss=(i,t,e)=>{let n=new ar(i,e),o=new ar(t,e);return n.compare(o)||n.compareBuild(o)};sr.exports=Ss});var cr=A((pm,lr)=>{"use strict";var Ms=gt(),As=(i,t)=>i.sort((e,n)=>Ms(e,n,t));lr.exports=As});var pr=A((um,dr)=>{"use strict";var Ps=gt(),ks=(i,t)=>i.sort((e,n)=>Ps(n,e,t));dr.exports=ks});var Ne=A((mm,ur)=>{"use strict";var Is=te(),Ds=(i,t,e)=>Is(i,t,e)>0;ur.exports=Ds});var Ct=A((_m,mr)=>{"use strict";var Rs=te(),Os=(i,t,e)=>Rs(i,t,e)<0;mr.exports=Os});var on=A((fm,_r)=>{"use strict";var Ls=te(),Vs=(i,t,e)=>Ls(i,t,e)===0;_r.exports=Vs});var rn=A((hm,fr)=>{"use strict";var Ns=te(),Fs=(i,t,e)=>Ns(i,t,e)!==0;fr.exports=Fs});var bt=A((gm,hr)=>{"use strict";var Bs=te(),$s=(i,t,e)=>Bs(i,t,e)>=0;hr.exports=$s});var vt=A((Cm,gr)=>{"use strict";var zs=te(),qs=(i,t,e)=>zs(i,t,e)<=0;gr.exports=qs});var an=A((bm,Cr)=>{"use strict";var Us=on(),Hs=rn(),Ws=Ne(),Gs=bt(),js=Ct(),Ks=vt(),Xs=(i,t,e,n)=>{switch(t){case"===":return typeof i=="object"&&(i=i.version),typeof e=="object"&&(e=e.version),i===e;case"!==":return typeof i=="object"&&(i=i.version),typeof e=="object"&&(e=e.version),i!==e;case"":case"=":case"==":return Us(i,e,n);case"!=":return Hs(i,e,n);case">":return Ws(i,e,n);case">=":return Gs(i,e,n);case"<":return js(i,e,n);case"<=":return Ks(i,e,n);default:throw new TypeError(`Invalid operator: ${t}`)}};Cr.exports=Xs});var vr=A((vm,br)=>{"use strict";var Zs=U(),Qs=ge(),{safeRe:wt,t:xt}=Ie(),Ys=(i,t)=>{if(i instanceof Zs)return i;if(typeof i=="number"&&(i=String(i)),typeof i!="string")return null;t=t||{};let e=null;if(!t.rtl)e=i.match(t.includePrerelease?wt[xt.COERCEFULL]:wt[xt.COERCE]);else{let E=t.includePrerelease?wt[xt.COERCERTLFULL]:wt[xt.COERCERTL],T;for(;(T=E.exec(i))&&(!e||e.index+e[0].length!==i.length);)(!e||T.index+T[0].length!==e.index+e[0].length)&&(e=T),E.lastIndex=T.index+T[1].length+T[2].length;E.lastIndex=-1}if(e===null)return null;let n=e[2],o=e[3]||"0",r=e[4]||"0",d=t.includePrerelease&&e[5]?`-${e[5]}`:"",g=t.includePrerelease&&e[6]?`+${e[6]}`:"";return Qs(`${n}.${o}.${r}${d}${g}`,t)};br.exports=Ys});var xr=A((wm,wr)=>{"use strict";var Js=ge(),el=ke(),tl=U(),nl=(i,t,e)=>{if(!el.RELEASE_TYPES.includes(t))return null;let n=il(i,e);return n&&ol(n,t)},il=(i,t)=>{let e=i instanceof tl?i.version:i;return Js(e,t)},ol=(i,t)=>{if(rl(t))return i.version;switch(i.prerelease=[],t){case"major":i.minor=0,i.patch=0;break;case"minor":i.patch=0;break}return i.format()},rl=i=>i.startsWith("pre");wr.exports=nl});var Er=A((xm,yr)=>{"use strict";var sn=class{constructor(){this.max=1e3,this.map=new Map}get(t){let e=this.map.get(t);if(e!==void 0)return this.map.delete(t),this.map.set(t,e),e}delete(t){return this.map.delete(t)}set(t,e){if(!this.delete(t)&&e!==void 0){if(this.map.size>=this.max){let o=this.map.keys().next().value;this.delete(o)}this.map.set(t,e)}return this}};yr.exports=sn});var ne=A((ym,Ar)=>{"use strict";var al=/\s+/g,ln=class i{constructor(t,e){if(e=ll(e),t instanceof i)return t.loose===!!e.loose&&t.includePrerelease===!!e.includePrerelease?t:new i(t.raw,e);if(t instanceof cn)return this.raw=t.value,this.set=[[t]],this.formatted=void 0,this;if(this.options=e,this.loose=!!e.loose,this.includePrerelease=!!e.includePrerelease,this.raw=t.trim().replace(al," "),this.set=this.raw.split("||").map(n=>this.parseRange(n.trim())).filter(n=>n.length),!this.set.length)throw new TypeError(`Invalid SemVer Range: ${this.raw}`);if(this.set.length>1){let n=this.set[0];if(this.set=this.set.filter(o=>!Sr(o[0])),this.set.length===0)this.set=[n];else if(this.set.length>1){for(let o of this.set)if(o.length===1&&gl(o[0])){this.set=[o];break}}}this.formatted=void 0}get range(){if(this.formatted===void 0){this.formatted="";for(let t=0;t<this.set.length;t++){t>0&&(this.formatted+="||");let e=this.set[t];for(let n=0;n<e.length;n++)n>0&&(this.formatted+=" "),this.formatted+=e[n].toString().trim()}}return this.formatted}format(){return this.range}toString(){return this.range}parseRange(t){t=t.replace(hl,"");let n=((this.options.includePrerelease&&_l)|(this.options.loose&&fl))+":"+t,o=Tr.get(n);if(o)return o;let r=this.options.loose,d=r?K[H.HYPHENRANGELOOSE]:K[H.HYPHENRANGE];t=t.replace(d,Al(this.options.includePrerelease)),D("hyphen replace",t),t=t.replace(K[H.COMPARATORTRIM],pl),D("comparator trim",t),t=t.replace(K[H.TILDETRIM],ul),D("tilde trim",t),t=t.replace(K[H.CARETTRIM],ml),D("caret trim",t);let g=t.split(" ").map(S=>Cl(S,this.options)).join(" ").split(/\s+/).map(S=>Ml(S,this.options));r&&(g=g.filter(S=>(D("loose invalid filter",S,this.options),!!S.match(K[H.COMPARATORLOOSE])))),D("range list",g);let E=new Map,T=g.map(S=>new cn(S,this.options));for(let S of T){if(Sr(S))return[S];E.set(S.value,S)}E.size>1&&E.has("")&&E.delete("");let k=[...E.values()];return Tr.set(n,k),k}intersects(t,e){if(!(t instanceof i))throw new TypeError("a Range is required");return this.set.some(n=>Mr(n,e)&&t.set.some(o=>Mr(o,e)&&n.every(r=>o.every(d=>r.intersects(d,e)))))}test(t){if(!t)return!1;if(typeof t=="string")try{t=new cl(t,this.options)}catch(e){return!1}for(let e=0;e<this.set.length;e++)if(Pl(this.set[e],t,this.options))return!0;return!1}};Ar.exports=ln;var sl=Er(),Tr=new sl,ll=ut(),cn=Fe(),D=Ve(),cl=U(),{safeRe:K,src:dl,t:H,comparatorTrimReplace:pl,tildeTrimReplace:ul,caretTrimReplace:ml}=Ie(),{FLAG_INCLUDE_PRERELEASE:_l,FLAG_LOOSE:fl}=ke(),hl=new RegExp(dl[H.BUILD],"g"),Sr=i=>i.value==="<0.0.0-0",gl=i=>i.value==="",Mr=(i,t)=>{let e=!0,n=i.slice(),o=n.pop();for(;e&&n.length;)e=n.every(r=>o.intersects(r,t)),o=n.pop();return e},Cl=(i,t)=>(i=i.replace(K[H.BUILD],""),D("comp",i,t),i=xl(i,t),D("caret",i),i=vl(i,t),D("tildes",i),i=El(i,t),D("xrange",i),i=Sl(i,t),D("stars",i),i),V=i=>!i||i.toLowerCase()==="x"||i==="*",bl=(i,t,e)=>V(i)&&!V(t)||V(t)&&e&&!V(e),vl=(i,t)=>i.trim().split(/\s+/).map(e=>wl(e,t)).join(" "),wl=(i,t)=>{let e=t.loose?K[H.TILDELOOSE]:K[H.TILDE],n=t.includePrerelease?"-0":"";return i.replace(e,(o,r,d,g,E)=>{D("tilde",i,o,r,d,g,E);let T;return V(r)?T="":V(d)?T=`>=${r}.0.0${n} <${+r+1}.0.0-0`:V(g)?T=`>=${r}.${d}.0${n} <${r}.${+d+1}.0-0`:E?(D("replaceTilde pr",E),T=`>=${r}.${d}.${g}-${E} <${r}.${+d+1}.0-0`):T=`>=${r}.${d}.${g} <${r}.${+d+1}.0-0`,D("tilde return",T),T})},xl=(i,t)=>i.trim().split(/\s+/).map(e=>yl(e,t)).join(" "),yl=(i,t)=>{D("caret",i,t);let e=t.loose?K[H.CARETLOOSE]:K[H.CARET],n=t.includePrerelease?"-0":"";return i.replace(e,(o,r,d,g,E)=>{D("caret",i,o,r,d,g,E);let T;return V(r)?T="":V(d)?T=`>=${r}.0.0${n} <${+r+1}.0.0-0`:V(g)?r==="0"?T=`>=${r}.${d}.0${n} <${r}.${+d+1}.0-0`:T=`>=${r}.${d}.0${n} <${+r+1}.0.0-0`:E?(D("replaceCaret pr",E),r==="0"?d==="0"?T=`>=${r}.${d}.${g}-${E} <${r}.${d}.${+g+1}-0`:T=`>=${r}.${d}.${g}-${E} <${r}.${+d+1}.0-0`:T=`>=${r}.${d}.${g}-${E} <${+r+1}.0.0-0`):(D("no pr"),r==="0"?d==="0"?T=`>=${r}.${d}.${g} <${r}.${d}.${+g+1}-0`:T=`>=${r}.${d}.${g} <${r}.${+d+1}.0-0`:T=`>=${r}.${d}.${g} <${+r+1}.0.0-0`),D("caret return",T),T})},El=(i,t)=>(D("replaceXRanges",i,t),i.split(/\s+/).map(e=>Tl(e,t)).join(" ")),Tl=(i,t)=>{i=i.trim();let e=t.loose?K[H.XRANGELOOSE]:K[H.XRANGE];return i.replace(e,(n,o,r,d,g,E)=>{if(D("xRange",i,n,o,r,d,g,E),bl(r,d,g))return i;let T=V(r),k=T||V(d),S=k||V(g),R=S;return o==="="&&R&&(o=""),E=t.includePrerelease?"-0":"",T?o===">"||o==="<"?n="<0.0.0-0":n="*":o&&R?(k&&(d=0),g=0,o===">"?(o=">=",k?(r=+r+1,d=0,g=0):(d=+d+1,g=0)):o==="<="&&(o="<",k?r=+r+1:d=+d+1),o==="<"&&(E="-0"),n=`${o+r}.${d}.${g}${E}`):k?n=`>=${r}.0.0${E} <${+r+1}.0.0-0`:S&&(n=`>=${r}.${d}.0${E} <${r}.${+d+1}.0-0`),D("xRange return",n),n})},Sl=(i,t)=>(D("replaceStars",i,t),i.trim().replace(K[H.STAR],"")),Ml=(i,t)=>(D("replaceGTE0",i,t),i.trim().replace(K[t.includePrerelease?H.GTE0PRE:H.GTE0],"")),Al=i=>(t,e,n,o,r,d,g,E,T,k,S,R)=>(V(n)?e="":V(o)?e=`>=${n}.0.0${i?"-0":""}`:V(r)?e=`>=${n}.${o}.0${i?"-0":""}`:d?e=`>=${e}`:e=`>=${e}${i?"-0":""}`,V(T)?E="":V(k)?E=`<${+T+1}.0.0-0`:V(S)?E=`<${T}.${+k+1}.0-0`:R?E=`<=${T}.${k}.${S}-${R}`:i?E=`<${T}.${k}.${+S+1}-0`:E=`<=${E}`,`${e} ${E}`.trim()),Pl=(i,t,e)=>{for(let n=0;n<i.length;n++)if(!i[n].test(t))return!1;if(t.prerelease.length&&!e.includePrerelease){for(let n=0;n<i.length;n++)if(D(i[n].semver),i[n].semver!==cn.ANY&&i[n].semver.prerelease.length>0){let o=i[n].semver;if(o.major===t.major&&o.minor===t.minor&&o.patch===t.patch)return!0}return!1}return!0}});var Fe=A((Em,Or)=>{"use strict";var Be=Symbol("SemVer ANY"),un=class i{static get ANY(){return Be}constructor(t,e){if(e=Pr(e),t instanceof i){if(t.loose===!!e.loose)return t;t=t.value}t=t.trim().split(/\s+/).join(" "),pn("comparator",t,e),this.options=e,this.loose=!!e.loose,this.parse(t),this.semver===Be?this.value="":this.value=this.operator+this.semver.version,pn("comp",this)}parse(t){let e=this.options.loose?kr[Ir.COMPARATORLOOSE]:kr[Ir.COMPARATOR],n=t.match(e);if(!n)throw new TypeError(`Invalid comparator: ${t}`);this.operator=n[1]!==void 0?n[1]:"",this.operator==="="&&(this.operator=""),n[2]?this.semver=new Dr(n[2],this.options.loose):this.semver=Be}toString(){return this.value}test(t){if(pn("Comparator.test",t,this.options.loose),this.semver===Be||t===Be)return!0;if(typeof t=="string")try{t=new Dr(t,this.options)}catch(e){return!1}return dn(t,this.operator,this.semver,this.options)}intersects(t,e){if(!(t instanceof i))throw new TypeError("a Comparator is required");return this.operator===""?this.value===""?!0:new Rr(t.value,e).test(this.value):t.operator===""?t.value===""?!0:new Rr(this.value,e).test(t.semver):(e=Pr(e),e.includePrerelease&&(this.value==="<0.0.0-0"||t.value==="<0.0.0-0")||!e.includePrerelease&&(this.value.startsWith("<0.0.0")||t.value.startsWith("<0.0.0"))?!1:!!(this.operator.startsWith(">")&&t.operator.startsWith(">")||this.operator.startsWith("<")&&t.operator.startsWith("<")||this.semver.version===t.semver.version&&this.operator.includes("=")&&t.operator.includes("=")||dn(this.semver,"<",t.semver,e)&&this.operator.startsWith(">")&&t.operator.startsWith("<")||dn(this.semver,">",t.semver,e)&&this.operator.startsWith("<")&&t.operator.startsWith(">")))}};Or.exports=un;var Pr=ut(),{safeRe:kr,t:Ir}=Ie(),dn=an(),pn=Ve(),Dr=U(),Rr=ne()});var $e=A((Tm,Lr)=>{"use strict";var kl=ne(),Il=(i,t,e)=>{try{t=new kl(t,e)}catch(n){return!1}return t.test(i)};Lr.exports=Il});var Nr=A((Sm,Vr)=>{"use strict";var Dl=ne(),Rl=(i,t)=>new Dl(i,t).set.map(e=>e.map(n=>n.value).join(" ").trim().split(" "));Vr.exports=Rl});var Br=A((Mm,Fr)=>{"use strict";var Ol=U(),Ll=ne(),Vl=(i,t,e)=>{let n=null,o=null,r=null;try{r=new Ll(t,e)}catch(d){return null}return i.forEach(d=>{r.test(d)&&(!n||o.compare(d)===-1)&&(n=d,o=new Ol(n,e))}),n};Fr.exports=Vl});var zr=A((Am,$r)=>{"use strict";var Nl=U(),Fl=ne(),Bl=(i,t,e)=>{let n=null,o=null,r=null;try{r=new Fl(t,e)}catch(d){return null}return i.forEach(d=>{r.test(d)&&(!n||o.compare(d)===1)&&(n=d,o=new Nl(n,e))}),n};$r.exports=Bl});var Hr=A((Pm,Ur)=>{"use strict";var mn=U(),$l=ne(),qr=Ne(),zl=(i,t)=>{i=new $l(i,t);let e=new mn("0.0.0");if(i.test(e)||(e=new mn("0.0.0-0"),i.test(e)))return e;e=null;for(let n=0;n<i.set.length;++n){let o=i.set[n],r=null;o.forEach(d=>{let g=new mn(d.semver.version);switch(d.operator){case">":g.prerelease.length===0?g.patch++:g.prerelease.push(0),g.raw=g.format();case"":case">=":(!r||qr(g,r))&&(r=g);break;case"<":case"<=":break;default:throw new Error(`Unexpected operation: ${d.operator}`)}}),r&&(!e||qr(e,r))&&(e=r)}return e&&i.test(e)?e:null};Ur.exports=zl});var Gr=A((km,Wr)=>{"use strict";var ql=ne(),Ul=(i,t)=>{try{return new ql(i,t).range||"*"}catch(e){return null}};Wr.exports=Ul});var yt=A((Im,Zr)=>{"use strict";var Hl=U(),Xr=Fe(),{ANY:Wl}=Xr,Gl=ne(),jl=$e(),jr=Ne(),Kr=Ct(),Kl=vt(),Xl=bt(),Zl=(i,t,e,n)=>{i=new Hl(i,n),t=new Gl(t,n);let o,r,d,g,E;switch(e){case">":o=jr,r=Kl,d=Kr,g=">",E=">=";break;case"<":o=Kr,r=Xl,d=jr,g="<",E="<=";break;default:throw new TypeError('Must provide a hilo val of "<" or ">"')}if(jl(i,t,n))return!1;for(let T=0;T<t.set.length;++T){let k=t.set[T],S=null,R=null;if(k.forEach(M=>{M.semver===Wl&&(M=new Xr(">=0.0.0")),S=S||M,R=R||M,o(M.semver,S.semver,n)?S=M:d(M.semver,R.semver,n)&&(R=M)}),S.operator===g||S.operator===E||(!R.operator||R.operator===g)&&r(i,R.semver))return!1;if(R.operator===E&&d(i,R.semver))return!1}return!0};Zr.exports=Zl});var Yr=A((Dm,Qr)=>{"use strict";var Ql=yt(),Yl=(i,t,e)=>Ql(i,t,">",e);Qr.exports=Yl});var ea=A((Rm,Jr)=>{"use strict";var Jl=yt(),ec=(i,t,e)=>Jl(i,t,"<",e);Jr.exports=ec});var ia=A((Om,na)=>{"use strict";var ta=ne(),tc=(i,t,e)=>(i=new ta(i,e),t=new ta(t,e),i.intersects(t,e));na.exports=tc});var ra=A((Lm,oa)=>{"use strict";var nc=$e(),ic=te();oa.exports=(i,t,e)=>{let n=[],o=null,r=null,d=i.sort((k,S)=>ic(k,S,e));for(let k of d)nc(k,t,e)?(r=k,o||(o=k)):(r&&n.push([o,r]),r=null,o=null);o&&n.push([o,null]);let g=[];for(let[k,S]of n)k===S?g.push(k):!S&&k===d[0]?g.push("*"):S?k===d[0]?g.push(`<=${S}`):g.push(`${k} - ${S}`):g.push(`>=${k}`);let E=g.join(" || "),T=typeof t.raw=="string"?t.raw:String(t);return E.length<T.length?E:t}});var pa=A((Vm,da)=>{"use strict";var aa=ne(),hn=Fe(),{ANY:_n}=hn,fn=$e(),gn=te(),oc=(i,t,e={})=>{if(i===t)return!0;i=new aa(i,e),t=new aa(t,e);let n=!1;e:for(let o of i.set){for(let r of t.set){let d=ac(o,r,e);if(n=n||d!==null,d)continue e}if(n)return!1}return!0},rc=[new hn(">=0.0.0-0")],sa=[new hn(">=0.0.0")],ac=(i,t,e)=>{if(i===t)return!0;if(i.length===1&&i[0].semver===_n){if(t.length===1&&t[0].semver===_n)return!0;e.includePrerelease?i=rc:i=sa}if(t.length===1&&t[0].semver===_n){if(e.includePrerelease)return!0;t=sa}let n=new Set,o,r;for(let M of i)M.operator===">"||M.operator===">="?o=la(o,M,e):M.operator==="<"||M.operator==="<="?r=ca(r,M,e):n.add(M.semver);if(n.size>1)return null;let d;if(o&&r){if(d=gn(o.semver,r.semver,e),d>0)return null;if(d===0&&(o.operator!==">="||r.operator!=="<="))return null}for(let M of n){if(o&&!fn(M,String(o),e)||r&&!fn(M,String(r),e))return null;for(let xa of t)if(!fn(M,String(xa),e))return!1;return!0}let g,E,T,k,S=r&&!e.includePrerelease&&r.semver.prerelease.length?r.semver:!1,R=o&&!e.includePrerelease&&o.semver.prerelease.length?o.semver:!1;S&&S.prerelease.length===1&&r.operator==="<"&&S.prerelease[0]===0&&(S=!1);for(let M of t){if(k=k||M.operator===">"||M.operator===">=",T=T||M.operator==="<"||M.operator==="<=",o){if(R&&M.semver.prerelease&&M.semver.prerelease.length&&M.semver.major===R.major&&M.semver.minor===R.minor&&M.semver.patch===R.patch&&(R=!1),M.operator===">"||M.operator===">="){if(g=la(o,M,e),g===M&&g!==o)return!1}else if(o.operator===">="&&!M.test(o.semver))return!1}if(r){if(S&&M.semver.prerelease&&M.semver.prerelease.length&&M.semver.major===S.major&&M.semver.minor===S.minor&&M.semver.patch===S.patch&&(S=!1),M.operator==="<"||M.operator==="<="){if(E=ca(r,M,e),E===M&&E!==r)return!1}else if(r.operator==="<="&&!M.test(r.semver))return!1}if(!M.operator&&(r||o)&&d!==0)return!1}return!(o&&T&&!r&&d!==0||r&&k&&!o&&d!==0||R||S)},la=(i,t,e)=>{if(!i)return t;let n=gn(i.semver,t.semver,e);return n>0?i:n<0||t.operator===">"&&i.operator===">="?t:i},ca=(i,t,e)=>{if(!i)return t;let n=gn(i.semver,t.semver,e);return n<0?i:n>0||t.operator==="<"&&i.operator==="<="?t:i};da.exports=oc});var fa=A((Nm,_a)=>{"use strict";var Cn=Ie(),ua=ke(),sc=U(),ma=en(),lc=ge(),cc=No(),dc=Bo(),pc=qo(),uc=Wo(),mc=jo(),_c=Xo(),fc=Qo(),hc=Jo(),gc=te(),Cc=ir(),bc=rr(),vc=gt(),wc=cr(),xc=pr(),yc=Ne(),Ec=Ct(),Tc=on(),Sc=rn(),Mc=bt(),Ac=vt(),Pc=an(),kc=vr(),Ic=xr(),Dc=Fe(),Rc=ne(),Oc=$e(),Lc=Nr(),Vc=Br(),Nc=zr(),Fc=Hr(),Bc=Gr(),$c=yt(),zc=Yr(),qc=ea(),Uc=ia(),Hc=ra(),Wc=pa();_a.exports={parse:lc,valid:cc,clean:dc,inc:pc,diff:uc,major:mc,minor:_c,patch:fc,prerelease:hc,compare:gc,rcompare:Cc,compareLoose:bc,compareBuild:vc,sort:wc,rsort:xc,gt:yc,lt:Ec,eq:Tc,neq:Sc,gte:Mc,lte:Ac,cmp:Pc,coerce:kc,truncate:Ic,Comparator:Dc,Range:Rc,satisfies:Oc,toComparators:Lc,maxSatisfying:Vc,minSatisfying:Nc,minVersion:Fc,validRange:Bc,outside:$c,gtr:zc,ltr:qc,intersects:Uc,simplifyRange:Hc,subset:Wc,SemVer:sc,re:Cn.re,src:Cn.src,tokens:Cn.t,SEMVER_SPEC_VERSION:ua.SEMVER_SPEC_VERSION,RELEASE_TYPES:ua.RELEASE_TYPES,compareIdentifiers:ma.compareIdentifiers,rcompareIdentifiers:ma.rcompareIdentifiers}});var bo="mat-badge-content",Ea=(()=>{class i{static \u0275fac=function(n){return new(n||i)};static \u0275cmp=I({type:i,selectors:[["ng-component"]],decls:0,vars:0,template:function(n,o){},styles:[`.mat-badge {
|
|
2
2
|
position: relative;
|
|
3
3
|
}
|
|
4
4
|
.mat-badge.mat-badge {
|
|
@@ -108,7 +108,7 @@ import{d as Co}from"./chunk-T7ZWMXKZ.js";import{$ as Ni,A as hi,Aa as no,B as gi
|
|
|
108
108
|
.mat-badge-large.mat-badge-overlap .mat-badge-content {
|
|
109
109
|
margin: var(--mat-badge-large-size-container-overlap-offset, -12px);
|
|
110
110
|
}
|
|
111
|
-
`],encapsulation:2,changeDetection:0})}return i})(),vo=(()=>{class i{_ngZone=C(X);_elementRef=C(Y);_ariaDescriber=C(
|
|
111
|
+
`],encapsulation:2,changeDetection:0})}return i})(),vo=(()=>{class i{_ngZone=C(X);_elementRef=C(Y);_ariaDescriber=C(ei);_renderer=C(Ge);_animationsDisabled=tt();_idGenerator=C(Kn);get color(){return this._color}set color(e){this._setColor(e),this._color=e}_color="primary";overlap=!0;disabled=!1;position="above after";get content(){return this._content}set content(e){this._updateRenderedContent(e)}_content;get description(){return this._description}set description(e){this._updateDescription(e)}_description;size="medium";hidden=!1;_badgeElement;_inlineBadgeDescription;_isInitialized=!1;_interactivityChecker=C(et);_document=C(ye);constructor(){let e=C(Hn);e.load(Ea),e.load(Qn)}isAbove(){return this.position.indexOf("below")===-1}isAfter(){return this.position.indexOf("before")===-1}getBadgeElement(){return this._badgeElement}ngOnInit(){this._clearExistingBadges(),this.content&&!this._badgeElement&&(this._badgeElement=this._createBadgeElement(),this._updateRenderedContent(this.content)),this._isInitialized=!0}ngAfterViewInit(){}ngOnDestroy(){this._renderer.destroyNode&&(this._renderer.destroyNode(this._badgeElement),this._inlineBadgeDescription?.remove()),this._ariaDescriber.removeDescription(this._elementRef.nativeElement,this.description)}_isHostInteractive(){return this._interactivityChecker.isFocusable(this._elementRef.nativeElement,{ignoreVisibility:!0})}_createBadgeElement(){let e=this._renderer.createElement("span"),n="mat-badge-active";return e.setAttribute("id",this._idGenerator.getId("mat-badge-content-")),e.setAttribute("aria-hidden","true"),e.classList.add(bo),this._animationsDisabled&&e.classList.add("_mat-animation-noopable"),this._elementRef.nativeElement.appendChild(e),typeof requestAnimationFrame=="function"&&!this._animationsDisabled?this._ngZone.runOutsideAngular(()=>{requestAnimationFrame(()=>{e.classList.add(n)})}):e.classList.add(n),e}_updateRenderedContent(e){let n=`${e??""}`.trim();this._isInitialized&&n&&!this._badgeElement&&(this._badgeElement=this._createBadgeElement()),this._badgeElement&&(this._badgeElement.textContent=n),this._content=n}_updateDescription(e){this._ariaDescriber.removeDescription(this._elementRef.nativeElement,this.description),(!e||this._isHostInteractive())&&this._removeInlineDescription(),this._description=e,this._isHostInteractive()?this._ariaDescriber.describe(this._elementRef.nativeElement,e):this._updateInlineDescription()}_updateInlineDescription(){this._inlineBadgeDescription||(this._inlineBadgeDescription=this._document.createElement("span"),this._inlineBadgeDescription.classList.add("cdk-visually-hidden")),this._inlineBadgeDescription.textContent=this.description,this._badgeElement?.appendChild(this._inlineBadgeDescription)}_removeInlineDescription(){this._inlineBadgeDescription?.remove(),this._inlineBadgeDescription=void 0}_setColor(e){let n=this._elementRef.nativeElement.classList;n.remove(`mat-badge-${this._color}`),e&&n.add(`mat-badge-${e}`)}_clearExistingBadges(){let e=this._elementRef.nativeElement.querySelectorAll(`:scope > .${bo}`);for(let n of Array.from(e))n!==this._badgeElement&&n.remove()}static \u0275fac=function(n){return new(n||i)};static \u0275dir=In({type:i,selectors:[["","matBadge",""]],hostAttrs:[1,"mat-badge"],hostVars:20,hostBindings:function(n,o){n&2&&B("mat-badge-overlap",o.overlap)("mat-badge-above",o.isAbove())("mat-badge-below",!o.isAbove())("mat-badge-before",!o.isAfter())("mat-badge-after",o.isAfter())("mat-badge-small",o.size==="small")("mat-badge-medium",o.size==="medium")("mat-badge-large",o.size==="large")("mat-badge-hidden",o.hidden||!o.content)("mat-badge-disabled",o.disabled)},inputs:{color:[0,"matBadgeColor","color"],overlap:[2,"matBadgeOverlap","overlap",Ze],disabled:[2,"matBadgeDisabled","disabled",Ze],position:[0,"matBadgePosition","position"],content:[0,"matBadge","content"],description:[0,"matBadgeDescription","description"],size:[0,"matBadgeSize","size"],hidden:[2,"matBadgeHidden","hidden",Ze]}})}return i})(),wo=(()=>{class i{static \u0275fac=function(n){return new(n||i)};static \u0275mod=je({type:i});static \u0275inj=Ue({imports:[Jn,Ye]})}return i})();var pt=["*"],Ma=["content"],Aa=[[["mat-drawer"]],[["mat-drawer-content"]],"*"],Pa=["mat-drawer","mat-drawer-content","*"];function ka(i,t){if(i&1){let e=y();a(0,"div",1),u("click",function(){m(e);let o=l();return _(o._onBackdropClicked())}),s()}if(i&2){let e=l();B("mat-drawer-shown",e._isShowingBackdrop())}}function Ia(i,t){i&1&&(a(0,"mat-drawer-content"),ie(1,2),s())}var Da=[[["mat-sidenav"]],[["mat-sidenav-content"]],"*"],Ra=["mat-sidenav","mat-sidenav-content","*"];function Oa(i,t){if(i&1){let e=y();a(0,"div",1),u("click",function(){m(e);let o=l();return _(o._onBackdropClicked())}),s()}if(i&2){let e=l();B("mat-drawer-shown",e._isShowingBackdrop())}}function La(i,t){i&1&&(a(0,"mat-sidenav-content"),ie(1,2),s())}var Va=`.mat-drawer-container {
|
|
112
112
|
position: relative;
|
|
113
113
|
z-index: 1;
|
|
114
114
|
color: var(--mat-sidenav-content-text-color, var(--mat-sys-on-background));
|
|
@@ -282,7 +282,7 @@ import{d as Co}from"./chunk-T7ZWMXKZ.js";import{$ as Ni,A as hi,Aa as no,B as gi
|
|
|
282
282
|
.mat-sidenav-fixed {
|
|
283
283
|
position: fixed;
|
|
284
284
|
}
|
|
285
|
-
`;var Na=new Lt("MAT_DRAWER_DEFAULT_AUTOSIZE",{providedIn:"root",factory:()=>!1}),Xt=new Lt("MAT_DRAWER_CONTAINER"),ct=(()=>{class i extends Me{_platform=C(Qe);_changeDetectorRef=C(Xe);_container=C(Kt);constructor(){let e=C(Y),n=C(Wn),o=C(X);super(e,n,o)}ngAfterContentInit(){this._container._contentMarginChanges.subscribe(()=>{this._changeDetectorRef.markForCheck()})}_shouldBeHidden(){if(this._platform.isBrowser)return!1;let{start:e,end:n}=this._container;return e!=null&&e.mode!=="over"&&e.opened||n!=null&&n.mode!=="over"&&n.opened}static \u0275fac=function(n){return new(n||i)};static \u0275cmp=I({type:i,selectors:[["mat-drawer-content"]],hostAttrs:[1,"mat-drawer-content"],hostVars:6,hostBindings:function(n,o){n&2&&(G("margin-left",o._container._contentMargins.left,"px")("margin-right",o._container._contentMargins.right,"px"),$("mat-drawer-content-hidden",o._shouldBeHidden()))},features:[Se([{provide:Me,useExisting:i}]),Le],ngContentSelectors:pt,decls:1,vars:0,template:function(n,o){n&1&&(be(),ie(0))},encapsulation:2,changeDetection:0})}return i})(),jt=(()=>{class i{_elementRef=C(Y);_focusTrapFactory=C(Qn);_focusMonitor=C(Xn);_platform=C(Qe);_ngZone=C(X);_renderer=C(Ge);_interactivityChecker=C(et);_doc=C(ye);_container=C(Xt,{optional:!0});_focusTrap=null;_elementFocusedBeforeDrawerWasOpened=null;_eventCleanups;_isAttached=!1;_anchor=null;get position(){return this._position}set position(e){e=e==="end"?"end":"start",e!==this._position&&(this._isAttached&&this._updatePositionInParent(e),this._position=e,this.onPositionChanged.emit())}_position="start";get mode(){return this._mode}set mode(e){this._mode=e,this._updateFocusTrapState(),this._modeChanged.next()}_mode="over";get disableClose(){return this._disableClose}set disableClose(e){this._disableClose=we(e)}_disableClose=!1;get autoFocus(){let e=this._autoFocus;return e??(this.mode==="side"?"dialog":"first-tabbable")}set autoFocus(e){(e==="true"||e==="false"||e==null)&&(e=we(e)),this._autoFocus=e}_autoFocus;get opened(){return this._opened()}set opened(e){this.toggle(we(e))}_opened=W(!1);_openedVia=null;_animationStarted=new _e;_animationEnd=new _e;openedChange=new He(!0);_openedStream=this.openedChange.pipe(De(e=>e),Rt(()=>{}));openedStart=this._animationStarted.pipe(De(()=>this.opened),Dt(void 0));_closedStream=this.openedChange.pipe(De(e=>!e),Rt(()=>{}));closedStart=this._animationStarted.pipe(De(()=>!this.opened),Dt(void 0));_destroyed=new _e;onPositionChanged=new He;_content;_modeChanged=new _e;_injector=C(Vt);_changeDetectorRef=C(Xe);constructor(){this.openedChange.pipe(oe(this._destroyed)).subscribe(e=>{e?(this._elementFocusedBeforeDrawerWasOpened=this._doc.activeElement,this._takeFocus()):this._isFocusWithinDrawer()&&this._restoreFocus(this._openedVia||"program")}),this._eventCleanups=this._ngZone.runOutsideAngular(()=>{let e=this._renderer,n=this._elementRef.nativeElement;return[e.listen(n,"keydown",o=>{o.keyCode===27&&!this.disableClose&&!Kn(o)&&this._ngZone.run(()=>{this.close(),o.stopPropagation(),o.preventDefault()})}),e.listen(n,"transitionend",this._handleTransitionEvent),e.listen(n,"transitioncancel",this._handleTransitionEvent)]}),this._animationEnd.subscribe(()=>{this.openedChange.emit(this.opened)})}_forceFocus(e,n){this._interactivityChecker.isFocusable(e)||(e.tabIndex=-1,this._ngZone.runOutsideAngular(()=>{let o=()=>{r(),d(),e.removeAttribute("tabindex")},r=this._renderer.listen(e,"blur",o),d=this._renderer.listen(e,"mousedown",o)})),e.focus(n)}_focusByCssSelector(e,n){let o=this._elementRef.nativeElement.querySelector(e);o&&this._forceFocus(o,n)}_takeFocus(){if(!this._focusTrap)return;let e=this._elementRef.nativeElement;switch(this.autoFocus){case!1:case"dialog":return;case!0:case"first-tabbable":Nt(()=>{!this._focusTrap.focusInitialElement()&&typeof e.focus=="function"&&e.focus()},{injector:this._injector});break;case"first-heading":this._focusByCssSelector('h1, h2, h3, h4, h5, h6, [role="heading"]');break;default:this._focusByCssSelector(this.autoFocus);break}}_restoreFocus(e){this.autoFocus!=="dialog"&&(this._elementFocusedBeforeDrawerWasOpened?this._focusMonitor.focusVia(this._elementFocusedBeforeDrawerWasOpened,e):this._elementRef.nativeElement.blur(),this._elementFocusedBeforeDrawerWasOpened=null)}_isFocusWithinDrawer(){let e=this._doc.activeElement;return!!e&&this._elementRef.nativeElement.contains(e)}ngAfterViewInit(){this._isAttached=!0,this._position==="end"&&this._updatePositionInParent("end"),this._platform.isBrowser&&(this._focusTrap=this._focusTrapFactory.create(this._elementRef.nativeElement),this._updateFocusTrapState())}ngOnDestroy(){this._eventCleanups.forEach(e=>e()),this._focusTrap?.destroy(),this._anchor?.remove(),this._anchor=null,this._animationStarted.complete(),this._animationEnd.complete(),this._modeChanged.complete(),this._destroyed.next(),this._destroyed.complete()}open(e){return this.toggle(!0,e)}close(){return this.toggle(!1)}_closeViaBackdropClick(){return this._setOpen(!1,!0,"mouse")}toggle(e=!this.opened,n){e&&n&&(this._openedVia=n);let o=this._setOpen(e,!e&&this._isFocusWithinDrawer(),this._openedVia||"program");return e||(this._openedVia=null),o}_setOpen(e,n,o){return e===this.opened?Promise.resolve(e?"open":"close"):(this._opened.set(e),this._container?._transitionsEnabled?(this._setIsAnimating(!0),setTimeout(()=>this._animationStarted.next())):setTimeout(()=>{this._animationStarted.next(),this._animationEnd.next()}),this._elementRef.nativeElement.classList.toggle("mat-drawer-opened",e),!e&&n&&this._restoreFocus(o),this._changeDetectorRef.markForCheck(),this._updateFocusTrapState(),new Promise(r=>{this.openedChange.pipe(Tn(1)).subscribe(d=>r(d?"open":"close"))}))}_setIsAnimating(e){this._elementRef.nativeElement.classList.toggle("mat-drawer-animating",e)}_getWidth(){return this._elementRef.nativeElement.offsetWidth||0}_updateFocusTrapState(){this._focusTrap&&(this._focusTrap.enabled=this.opened&&!!this._container?._isShowingBackdrop())}_updatePositionInParent(e){if(!this._platform.isBrowser)return;let n=this._elementRef.nativeElement,o=n.parentNode;e==="end"?(this._anchor||(this._anchor=this._doc.createComment("mat-drawer-anchor"),o.insertBefore(this._anchor,n)),o.appendChild(n)):this._anchor&&this._anchor.parentNode.insertBefore(n,this._anchor)}_handleTransitionEvent=e=>{let n=this._elementRef.nativeElement;e.target===n&&this._ngZone.run(()=>{e.type==="transitionend"&&this._setIsAnimating(!1),this._animationEnd.next(e)})};static \u0275fac=function(n){return new(n||i)};static \u0275cmp=I({type:i,selectors:[["mat-drawer"]],viewQuery:function(n,o){if(n&1&&Q(Ma,5),n&2){let r;N(r=F())&&(o._content=r.first)}},hostAttrs:[1,"mat-drawer"],hostVars:12,hostBindings:function(n,o){n&2&&(J("align",null)("tabIndex",o.mode!=="side"?"-1":null),G("visibility",!o._container&&!o.opened?"hidden":null),$("mat-drawer-end",o.position==="end")("mat-drawer-over",o.mode==="over")("mat-drawer-push",o.mode==="push")("mat-drawer-side",o.mode==="side"))},inputs:{position:"position",mode:"mode",disableClose:"disableClose",autoFocus:"autoFocus",opened:"opened"},outputs:{openedChange:"openedChange",_openedStream:"opened",openedStart:"openedStart",_closedStream:"closed",closedStart:"closedStart",onPositionChanged:"positionChanged"},exportAs:["matDrawer"],ngContentSelectors:pt,decls:3,vars:0,consts:[["content",""],["cdkScrollable","",1,"mat-drawer-inner-container"]],template:function(n,o){n&1&&(be(),a(0,"div",1,0),ie(2),s())},dependencies:[Me],encapsulation:2,changeDetection:0})}return i})(),Kt=(()=>{class i{_dir=C(Hn,{optional:!0});_element=C(Y);_ngZone=C(X);_changeDetectorRef=C(Xe);_animationDisabled=tt();_transitionsEnabled=!1;_allDrawers;_drawers=new Mn;_content;_userContent;get start(){return this._start}get end(){return this._end}get autosize(){return this._autosize}set autosize(e){this._autosize=we(e)}_autosize=C(Na);get hasBackdrop(){return this._drawerHasBackdrop(this._start)||this._drawerHasBackdrop(this._end)}set hasBackdrop(e){this._backdropOverride=e==null?null:we(e)}_backdropOverride=null;backdropClick=new He;_start=null;_end=null;_left=null;_right=null;_destroyed=new _e;_doCheckSubject=new _e;_contentMargins={left:null,right:null};_contentMarginChanges=new _e;get scrollable(){return this._userContent||this._content}_injector=C(Vt);constructor(){let e=C(Qe),n=C(Gn);this._dir?.change.pipe(oe(this._destroyed)).subscribe(()=>{this._validateDrawers(),this.updateContentMargins()}),n.change().pipe(oe(this._destroyed)).subscribe(()=>this.updateContentMargins()),!this._animationDisabled&&e.isBrowser&&this._ngZone.runOutsideAngular(()=>{setTimeout(()=>{this._element.nativeElement.classList.add("mat-drawer-transition"),this._transitionsEnabled=!0},200)})}ngAfterContentInit(){this._allDrawers.changes.pipe(Ot(this._allDrawers),oe(this._destroyed)).subscribe(e=>{this._drawers.reset(e.filter(n=>!n._container||n._container===this)),this._drawers.notifyOnChanges()}),this._drawers.changes.pipe(Ot(null)).subscribe(()=>{this._validateDrawers(),this._drawers.forEach(e=>{this._watchDrawerToggle(e),this._watchDrawerPosition(e),this._watchDrawerMode(e)}),(!this._drawers.length||this._isDrawerOpen(this._start)||this._isDrawerOpen(this._end))&&this.updateContentMargins(),this._changeDetectorRef.markForCheck()}),this._ngZone.runOutsideAngular(()=>{this._doCheckSubject.pipe(En(10),oe(this._destroyed)).subscribe(()=>this.updateContentMargins())})}ngOnDestroy(){this._contentMarginChanges.complete(),this._doCheckSubject.complete(),this._drawers.destroy(),this._destroyed.next(),this._destroyed.complete()}open(){this._drawers.forEach(e=>e.open())}close(){this._drawers.forEach(e=>e.close())}updateContentMargins(){let e=0,n=0;if(this._left&&this._left.opened){if(this._left.mode=="side")e+=this._left._getWidth();else if(this._left.mode=="push"){let o=this._left._getWidth();e+=o,n-=o}}if(this._right&&this._right.opened){if(this._right.mode=="side")n+=this._right._getWidth();else if(this._right.mode=="push"){let o=this._right._getWidth();n+=o,e-=o}}e=e||null,n=n||null,(e!==this._contentMargins.left||n!==this._contentMargins.right)&&(this._contentMargins={left:e,right:n},this._ngZone.run(()=>this._contentMarginChanges.next(this._contentMargins)))}ngDoCheck(){this._autosize&&this._isPushed()&&this._ngZone.runOutsideAngular(()=>this._doCheckSubject.next())}_watchDrawerToggle(e){e._animationStarted.pipe(oe(this._drawers.changes)).subscribe(()=>{this.updateContentMargins(),this._changeDetectorRef.markForCheck()}),e.mode!=="side"&&e.openedChange.pipe(oe(this._drawers.changes)).subscribe(()=>this._setContainerClass(e.opened))}_watchDrawerPosition(e){e.onPositionChanged.pipe(oe(this._drawers.changes)).subscribe(()=>{Nt({read:()=>this._validateDrawers()},{injector:this._injector})})}_watchDrawerMode(e){e._modeChanged.pipe(oe(yn(this._drawers.changes,this._destroyed))).subscribe(()=>{this.updateContentMargins(),this._changeDetectorRef.markForCheck()})}_setContainerClass(e){let n=this._element.nativeElement.classList,o="mat-drawer-container-has-open";e?n.add(o):n.remove(o)}_validateDrawers(){this._start=this._end=null,this._drawers.forEach(e=>{e.position=="end"?(this._end!=null,this._end=e):(this._start!=null,this._start=e)}),this._right=this._left=null,this._dir&&this._dir.value==="rtl"?(this._left=this._end,this._right=this._start):(this._left=this._start,this._right=this._end)}_isPushed(){return this._isDrawerOpen(this._start)&&this._start.mode!="over"||this._isDrawerOpen(this._end)&&this._end.mode!="over"}_onBackdropClicked(){this.backdropClick.emit(),this._closeModalDrawersViaBackdrop()}_closeModalDrawersViaBackdrop(){[this._start,this._end].filter(e=>e&&!e.disableClose&&this._drawerHasBackdrop(e)).forEach(e=>e._closeViaBackdropClick())}_isShowingBackdrop(){return this._isDrawerOpen(this._start)&&this._drawerHasBackdrop(this._start)||this._isDrawerOpen(this._end)&&this._drawerHasBackdrop(this._end)}_isDrawerOpen(e){return e!=null&&e.opened}_drawerHasBackdrop(e){return this._backdropOverride==null?!!e&&e.mode!=="side":this._backdropOverride}static \u0275fac=function(n){return new(n||i)};static \u0275cmp=I({type:i,selectors:[["mat-drawer-container"]],contentQueries:function(n,o,r){if(n&1&&Ft(r,ct,5)(r,jt,5),n&2){let d;N(d=F())&&(o._content=d.first),N(d=F())&&(o._allDrawers=d)}},viewQuery:function(n,o){if(n&1&&Q(ct,5),n&2){let r;N(r=F())&&(o._userContent=r.first)}},hostAttrs:[1,"mat-drawer-container"],hostVars:2,hostBindings:function(n,o){n&2&&$("mat-drawer-container-explicit-backdrop",o._backdropOverride)},inputs:{autosize:"autosize",hasBackdrop:"hasBackdrop"},outputs:{backdropClick:"backdropClick"},exportAs:["matDrawerContainer"],features:[Se([{provide:Xt,useExisting:i}])],ngContentSelectors:Pa,decls:4,vars:2,consts:[[1,"mat-drawer-backdrop",3,"mat-drawer-shown"],[1,"mat-drawer-backdrop",3,"click"]],template:function(n,o){n&1&&(be(Aa),f(0,ka,1,2,"div",0),ie(1),ie(2,1),f(3,Ia,2,0,"mat-drawer-content")),n&2&&(h(o.hasBackdrop?0:-1),c(3),h(o._content?-1:3))},dependencies:[ct],styles:[`.mat-drawer-container {
|
|
285
|
+
`;var Na=new Lt("MAT_DRAWER_DEFAULT_AUTOSIZE",{providedIn:"root",factory:()=>!1}),Zt=new Lt("MAT_DRAWER_CONTAINER"),ct=(()=>{class i extends Me{_platform=C(Qe);_changeDetectorRef=C(Xe);_container=C(Xt);constructor(){let e=C(Y),n=C(Gn),o=C(X);super(e,n,o)}ngAfterContentInit(){this._container._contentMarginChanges.subscribe(()=>{this._changeDetectorRef.markForCheck()})}_shouldBeHidden(){if(this._platform.isBrowser)return!1;let{start:e,end:n}=this._container;return e!=null&&e.mode!=="over"&&e.opened||n!=null&&n.mode!=="over"&&n.opened}static \u0275fac=function(n){return new(n||i)};static \u0275cmp=I({type:i,selectors:[["mat-drawer-content"]],hostAttrs:[1,"mat-drawer-content"],hostVars:6,hostBindings:function(n,o){n&2&&(G("margin-left",o._container._contentMargins.left,"px")("margin-right",o._container._contentMargins.right,"px"),B("mat-drawer-content-hidden",o._shouldBeHidden()))},features:[Se([{provide:Me,useExisting:i}]),Le],ngContentSelectors:pt,decls:1,vars:0,template:function(n,o){n&1&&(be(),ie(0))},encapsulation:2,changeDetection:0})}return i})(),Kt=(()=>{class i{_elementRef=C(Y);_focusTrapFactory=C(Yn);_focusMonitor=C(Zn);_platform=C(Qe);_ngZone=C(X);_renderer=C(Ge);_interactivityChecker=C(et);_doc=C(ye);_container=C(Zt,{optional:!0});_focusTrap=null;_elementFocusedBeforeDrawerWasOpened=null;_eventCleanups;_isAttached=!1;_anchor=null;get position(){return this._position}set position(e){e=e==="end"?"end":"start",e!==this._position&&(this._isAttached&&this._updatePositionInParent(e),this._position=e,this.onPositionChanged.emit())}_position="start";get mode(){return this._mode}set mode(e){this._mode=e,this._updateFocusTrapState(),this._modeChanged.next()}_mode="over";get disableClose(){return this._disableClose}set disableClose(e){this._disableClose=we(e)}_disableClose=!1;get autoFocus(){let e=this._autoFocus;return e??(this.mode==="side"?"dialog":"first-tabbable")}set autoFocus(e){(e==="true"||e==="false"||e==null)&&(e=we(e)),this._autoFocus=e}_autoFocus;get opened(){return this._opened()}set opened(e){this.toggle(we(e))}_opened=W(!1);_openedVia=null;_animationStarted=new _e;_animationEnd=new _e;openedChange=new He(!0);_openedStream=this.openedChange.pipe(Re(e=>e),Dt(()=>{}));openedStart=this._animationStarted.pipe(Re(()=>this.opened),Rt(void 0));_closedStream=this.openedChange.pipe(Re(e=>!e),Dt(()=>{}));closedStart=this._animationStarted.pipe(Re(()=>!this.opened),Rt(void 0));_destroyed=new _e;onPositionChanged=new He;_content;_modeChanged=new _e;_injector=C(Vt);_changeDetectorRef=C(Xe);constructor(){this.openedChange.pipe(oe(this._destroyed)).subscribe(e=>{e?(this._elementFocusedBeforeDrawerWasOpened=this._doc.activeElement,this._takeFocus()):this._isFocusWithinDrawer()&&this._restoreFocus(this._openedVia||"program")}),this._eventCleanups=this._ngZone.runOutsideAngular(()=>{let e=this._renderer,n=this._elementRef.nativeElement;return[e.listen(n,"keydown",o=>{o.keyCode===27&&!this.disableClose&&!Xn(o)&&this._ngZone.run(()=>{this.close(),o.stopPropagation(),o.preventDefault()})}),e.listen(n,"transitionend",this._handleTransitionEvent),e.listen(n,"transitioncancel",this._handleTransitionEvent)]}),this._animationEnd.subscribe(()=>{this.openedChange.emit(this.opened)})}_forceFocus(e,n){this._interactivityChecker.isFocusable(e)||(e.tabIndex=-1,this._ngZone.runOutsideAngular(()=>{let o=()=>{r(),d(),e.removeAttribute("tabindex")},r=this._renderer.listen(e,"blur",o),d=this._renderer.listen(e,"mousedown",o)})),e.focus(n)}_focusByCssSelector(e,n){let o=this._elementRef.nativeElement.querySelector(e);o&&this._forceFocus(o,n)}_takeFocus(){if(!this._focusTrap)return;let e=this._elementRef.nativeElement;switch(this.autoFocus){case!1:case"dialog":return;case!0:case"first-tabbable":Nt(()=>{!this._focusTrap.focusInitialElement()&&typeof e.focus=="function"&&e.focus()},{injector:this._injector});break;case"first-heading":this._focusByCssSelector('h1, h2, h3, h4, h5, h6, [role="heading"]');break;default:this._focusByCssSelector(this.autoFocus);break}}_restoreFocus(e){this.autoFocus!=="dialog"&&(this._elementFocusedBeforeDrawerWasOpened?this._focusMonitor.focusVia(this._elementFocusedBeforeDrawerWasOpened,e):this._elementRef.nativeElement.blur(),this._elementFocusedBeforeDrawerWasOpened=null)}_isFocusWithinDrawer(){let e=this._doc.activeElement;return!!e&&this._elementRef.nativeElement.contains(e)}ngAfterViewInit(){this._isAttached=!0,this._position==="end"&&this._updatePositionInParent("end"),this._platform.isBrowser&&(this._focusTrap=this._focusTrapFactory.create(this._elementRef.nativeElement),this._updateFocusTrapState())}ngOnDestroy(){this._eventCleanups.forEach(e=>e()),this._focusTrap?.destroy(),this._anchor?.remove(),this._anchor=null,this._animationStarted.complete(),this._animationEnd.complete(),this._modeChanged.complete(),this._destroyed.next(),this._destroyed.complete()}open(e){return this.toggle(!0,e)}close(){return this.toggle(!1)}_closeViaBackdropClick(){return this._setOpen(!1,!0,"mouse")}toggle(e=!this.opened,n){e&&n&&(this._openedVia=n);let o=this._setOpen(e,!e&&this._isFocusWithinDrawer(),this._openedVia||"program");return e||(this._openedVia=null),o}_setOpen(e,n,o){return e===this.opened?Promise.resolve(e?"open":"close"):(this._opened.set(e),this._container?._transitionsEnabled?(this._setIsAnimating(!0),setTimeout(()=>this._animationStarted.next())):setTimeout(()=>{this._animationStarted.next(),this._animationEnd.next()}),this._elementRef.nativeElement.classList.toggle("mat-drawer-opened",e),!e&&n&&this._restoreFocus(o),this._changeDetectorRef.markForCheck(),this._updateFocusTrapState(),new Promise(r=>{this.openedChange.pipe(Sn(1)).subscribe(d=>r(d?"open":"close"))}))}_setIsAnimating(e){this._elementRef.nativeElement.classList.toggle("mat-drawer-animating",e)}_getWidth(){return this._elementRef.nativeElement.offsetWidth||0}_updateFocusTrapState(){this._focusTrap&&(this._focusTrap.enabled=this.opened&&!!this._container?._isShowingBackdrop())}_updatePositionInParent(e){if(!this._platform.isBrowser)return;let n=this._elementRef.nativeElement,o=n.parentNode;e==="end"?(this._anchor||(this._anchor=this._doc.createComment("mat-drawer-anchor"),o.insertBefore(this._anchor,n)),o.appendChild(n)):this._anchor&&this._anchor.parentNode.insertBefore(n,this._anchor)}_handleTransitionEvent=e=>{let n=this._elementRef.nativeElement;e.target===n&&this._ngZone.run(()=>{e.type==="transitionend"&&this._setIsAnimating(!1),this._animationEnd.next(e)})};static \u0275fac=function(n){return new(n||i)};static \u0275cmp=I({type:i,selectors:[["mat-drawer"]],viewQuery:function(n,o){if(n&1&&Q(Ma,5),n&2){let r;N(r=F())&&(o._content=r.first)}},hostAttrs:[1,"mat-drawer"],hostVars:12,hostBindings:function(n,o){n&2&&(J("align",null)("tabIndex",o.mode!=="side"?"-1":null),G("visibility",!o._container&&!o.opened?"hidden":null),B("mat-drawer-end",o.position==="end")("mat-drawer-over",o.mode==="over")("mat-drawer-push",o.mode==="push")("mat-drawer-side",o.mode==="side"))},inputs:{position:"position",mode:"mode",disableClose:"disableClose",autoFocus:"autoFocus",opened:"opened"},outputs:{openedChange:"openedChange",_openedStream:"opened",openedStart:"openedStart",_closedStream:"closed",closedStart:"closedStart",onPositionChanged:"positionChanged"},exportAs:["matDrawer"],ngContentSelectors:pt,decls:3,vars:0,consts:[["content",""],["cdkScrollable","",1,"mat-drawer-inner-container"]],template:function(n,o){n&1&&(be(),a(0,"div",1,0),ie(2),s())},dependencies:[Me],encapsulation:2,changeDetection:0})}return i})(),Xt=(()=>{class i{_dir=C(Wn,{optional:!0});_element=C(Y);_ngZone=C(X);_changeDetectorRef=C(Xe);_animationDisabled=tt();_transitionsEnabled=!1;_allDrawers;_drawers=new An;_content;_userContent;get start(){return this._start}get end(){return this._end}get autosize(){return this._autosize}set autosize(e){this._autosize=we(e)}_autosize=C(Na);get hasBackdrop(){return this._drawerHasBackdrop(this._start)||this._drawerHasBackdrop(this._end)}set hasBackdrop(e){this._backdropOverride=e==null?null:we(e)}_backdropOverride=null;backdropClick=new He;_start=null;_end=null;_left=null;_right=null;_destroyed=new _e;_doCheckSubject=new _e;_contentMargins={left:null,right:null};_contentMarginChanges=new _e;get scrollable(){return this._userContent||this._content}_injector=C(Vt);constructor(){let e=C(Qe),n=C(jn);this._dir?.change.pipe(oe(this._destroyed)).subscribe(()=>{this._validateDrawers(),this.updateContentMargins()}),n.change().pipe(oe(this._destroyed)).subscribe(()=>this.updateContentMargins()),!this._animationDisabled&&e.isBrowser&&this._ngZone.runOutsideAngular(()=>{setTimeout(()=>{this._element.nativeElement.classList.add("mat-drawer-transition"),this._transitionsEnabled=!0},200)})}ngAfterContentInit(){this._allDrawers.changes.pipe(Ot(this._allDrawers),oe(this._destroyed)).subscribe(e=>{this._drawers.reset(e.filter(n=>!n._container||n._container===this)),this._drawers.notifyOnChanges()}),this._drawers.changes.pipe(Ot(null)).subscribe(()=>{this._validateDrawers(),this._drawers.forEach(e=>{this._watchDrawerToggle(e),this._watchDrawerPosition(e),this._watchDrawerMode(e)}),(!this._drawers.length||this._isDrawerOpen(this._start)||this._isDrawerOpen(this._end))&&this.updateContentMargins(),this._changeDetectorRef.markForCheck()}),this._ngZone.runOutsideAngular(()=>{this._doCheckSubject.pipe(Tn(10),oe(this._destroyed)).subscribe(()=>this.updateContentMargins())})}ngOnDestroy(){this._contentMarginChanges.complete(),this._doCheckSubject.complete(),this._drawers.destroy(),this._destroyed.next(),this._destroyed.complete()}open(){this._drawers.forEach(e=>e.open())}close(){this._drawers.forEach(e=>e.close())}updateContentMargins(){let e=0,n=0;if(this._left&&this._left.opened){if(this._left.mode=="side")e+=this._left._getWidth();else if(this._left.mode=="push"){let o=this._left._getWidth();e+=o,n-=o}}if(this._right&&this._right.opened){if(this._right.mode=="side")n+=this._right._getWidth();else if(this._right.mode=="push"){let o=this._right._getWidth();n+=o,e-=o}}e=e||null,n=n||null,(e!==this._contentMargins.left||n!==this._contentMargins.right)&&(this._contentMargins={left:e,right:n},this._ngZone.run(()=>this._contentMarginChanges.next(this._contentMargins)))}ngDoCheck(){this._autosize&&this._isPushed()&&this._ngZone.runOutsideAngular(()=>this._doCheckSubject.next())}_watchDrawerToggle(e){e._animationStarted.pipe(oe(this._drawers.changes)).subscribe(()=>{this.updateContentMargins(),this._changeDetectorRef.markForCheck()}),e.mode!=="side"&&e.openedChange.pipe(oe(this._drawers.changes)).subscribe(()=>this._setContainerClass(e.opened))}_watchDrawerPosition(e){e.onPositionChanged.pipe(oe(this._drawers.changes)).subscribe(()=>{Nt({read:()=>this._validateDrawers()},{injector:this._injector})})}_watchDrawerMode(e){e._modeChanged.pipe(oe(En(this._drawers.changes,this._destroyed))).subscribe(()=>{this.updateContentMargins(),this._changeDetectorRef.markForCheck()})}_setContainerClass(e){let n=this._element.nativeElement.classList,o="mat-drawer-container-has-open";e?n.add(o):n.remove(o)}_validateDrawers(){this._start=this._end=null,this._drawers.forEach(e=>{e.position=="end"?(this._end!=null,this._end=e):(this._start!=null,this._start=e)}),this._right=this._left=null,this._dir&&this._dir.value==="rtl"?(this._left=this._end,this._right=this._start):(this._left=this._start,this._right=this._end)}_isPushed(){return this._isDrawerOpen(this._start)&&this._start.mode!="over"||this._isDrawerOpen(this._end)&&this._end.mode!="over"}_onBackdropClicked(){this.backdropClick.emit(),this._closeModalDrawersViaBackdrop()}_closeModalDrawersViaBackdrop(){[this._start,this._end].filter(e=>e&&!e.disableClose&&this._drawerHasBackdrop(e)).forEach(e=>e._closeViaBackdropClick())}_isShowingBackdrop(){return this._isDrawerOpen(this._start)&&this._drawerHasBackdrop(this._start)||this._isDrawerOpen(this._end)&&this._drawerHasBackdrop(this._end)}_isDrawerOpen(e){return e!=null&&e.opened}_drawerHasBackdrop(e){return this._backdropOverride==null?!!e&&e.mode!=="side":this._backdropOverride}static \u0275fac=function(n){return new(n||i)};static \u0275cmp=I({type:i,selectors:[["mat-drawer-container"]],contentQueries:function(n,o,r){if(n&1&&Ft(r,ct,5)(r,Kt,5),n&2){let d;N(d=F())&&(o._content=d.first),N(d=F())&&(o._allDrawers=d)}},viewQuery:function(n,o){if(n&1&&Q(ct,5),n&2){let r;N(r=F())&&(o._userContent=r.first)}},hostAttrs:[1,"mat-drawer-container"],hostVars:2,hostBindings:function(n,o){n&2&&B("mat-drawer-container-explicit-backdrop",o._backdropOverride)},inputs:{autosize:"autosize",hasBackdrop:"hasBackdrop"},outputs:{backdropClick:"backdropClick"},exportAs:["matDrawerContainer"],features:[Se([{provide:Zt,useExisting:i}])],ngContentSelectors:Pa,decls:4,vars:2,consts:[[1,"mat-drawer-backdrop",3,"mat-drawer-shown"],[1,"mat-drawer-backdrop",3,"click"]],template:function(n,o){n&1&&(be(Aa),f(0,ka,1,2,"div",0),ie(1),ie(2,1),f(3,Ia,2,0,"mat-drawer-content")),n&2&&(h(o.hasBackdrop?0:-1),c(3),h(o._content?-1:3))},dependencies:[ct],styles:[`.mat-drawer-container {
|
|
286
286
|
position: relative;
|
|
287
287
|
z-index: 1;
|
|
288
288
|
color: var(--mat-sidenav-content-text-color, var(--mat-sys-on-background));
|
|
@@ -456,13 +456,13 @@ import{d as Co}from"./chunk-T7ZWMXKZ.js";import{$ as Ni,A as hi,Aa as no,B as gi
|
|
|
456
456
|
.mat-sidenav-fixed {
|
|
457
457
|
position: fixed;
|
|
458
458
|
}
|
|
459
|
-
`],encapsulation:2,changeDetection:0})}return i})(),dt=(()=>{class i extends ct{static \u0275fac=(()=>{let e;return function(o){return(e||(e=We(i)))(o||i)}})();static \u0275cmp=I({type:i,selectors:[["mat-sidenav-content"]],hostAttrs:[1,"mat-drawer-content","mat-sidenav-content"],features:[Se([{provide:Me,useExisting:i}]),Le],ngContentSelectors:pt,decls:1,vars:0,template:function(n,o){n&1&&(be(),ie(0))},encapsulation:2,changeDetection:0})}return i})(),Zt=(()=>{class i extends jt{get fixedInViewport(){return this._fixedInViewport}set fixedInViewport(e){this._fixedInViewport=we(e)}_fixedInViewport=!1;get fixedTopGap(){return this._fixedTopGap}set fixedTopGap(e){this._fixedTopGap=Bt(e)}_fixedTopGap=0;get fixedBottomGap(){return this._fixedBottomGap}set fixedBottomGap(e){this._fixedBottomGap=Bt(e)}_fixedBottomGap=0;static \u0275fac=(()=>{let e;return function(o){return(e||(e=We(i)))(o||i)}})();static \u0275cmp=I({type:i,selectors:[["mat-sidenav"]],hostAttrs:[1,"mat-drawer","mat-sidenav"],hostVars:16,hostBindings:function(n,o){n&2&&(J("tabIndex",o.mode!=="side"?"-1":null)("align",null),G("top",o.fixedInViewport?o.fixedTopGap:null,"px")("bottom",o.fixedInViewport?o.fixedBottomGap:null,"px"),$("mat-drawer-end",o.position==="end")("mat-drawer-over",o.mode==="over")("mat-drawer-push",o.mode==="push")("mat-drawer-side",o.mode==="side")("mat-sidenav-fixed",o.fixedInViewport))},inputs:{fixedInViewport:"fixedInViewport",fixedTopGap:"fixedTopGap",fixedBottomGap:"fixedBottomGap"},exportAs:["matSidenav"],features:[Se([{provide:jt,useExisting:i}]),Le],ngContentSelectors:pt,decls:3,vars:0,consts:[["content",""],["cdkScrollable","",1,"mat-drawer-inner-container"]],template:function(n,o){n&1&&(be(),a(0,"div",1,0),ie(2),s())},dependencies:[Me],encapsulation:2,changeDetection:0})}return i})(),xo=(()=>{class i extends Kt{_allDrawers=void 0;_content=void 0;static \u0275fac=(()=>{let e;return function(o){return(e||(e=We(i)))(o||i)}})();static \u0275cmp=I({type:i,selectors:[["mat-sidenav-container"]],contentQueries:function(n,o,r){if(n&1&&Ft(r,dt,5)(r,Zt,5),n&2){let d;N(d=F())&&(o._content=d.first),N(d=F())&&(o._allDrawers=d)}},hostAttrs:[1,"mat-drawer-container","mat-sidenav-container"],hostVars:2,hostBindings:function(n,o){n&2&&$("mat-drawer-container-explicit-backdrop",o._backdropOverride)},exportAs:["matSidenavContainer"],features:[Se([{provide:Xt,useExisting:i},{provide:Kt,useExisting:i}]),Le],ngContentSelectors:Da,decls:4,vars:2,consts:[[1,"mat-drawer-backdrop",3,"mat-drawer-shown"],[1,"mat-drawer-backdrop",3,"click"]],template:function(n,o){n&1&&(be(Ra),f(0,Oa,1,2,"div",0),ie(1),ie(2,1),f(3,La,2,0,"mat-sidenav-content")),n&2&&(h(o.hasBackdrop?0:-1),c(3),h(o._content?-1:3))},dependencies:[dt],styles:[Va],encapsulation:2,changeDetection:0})}return i})(),yo=(()=>{class i{static \u0275fac=function(n){return new(n||i)};static \u0275mod=je({type:i});static \u0275inj=Ue({imports:[zt,Ye,zt]})}return i})();function Eo(i){if(!((i.ctrlKey||i.metaKey)&&!i.shiftKey&&i.key.toLowerCase()==="z"))return!1;let e=i.target,n=e?.tagName;return!(n==="INPUT"||n==="TEXTAREA"||n==="SELECT"||e?.isContentEditable)}var xn=ya(fa());function Cn(i){let t=[];for(let e of i)for(let n of e.events)t.push(`${e.id}:${n.pr}`);return t}function ha(i,t){if(!Array.isArray(t))return i;let e=new Set(t.filter(n=>typeof n=="string"));return i.filter(n=>!e.has(n))}var ga="fb-whats-new-seen",Et=class i{corpus=C(Co);_hasUnseen=W(!1);hasUnseen=this._hasUnseen.asReadonly();init(){return O(this,null,function*(){let t=yield this.corpus.load(),e=ha(Cn(t),this.readSeen());this._hasUnseen.set(e.length>0)})}markAllSeen(){return O(this,null,function*(){let t=yield this.corpus.load();this.writeSeen(Cn(t)),this._hasUnseen.set(!1)})}readSeen(){try{let t=localStorage.getItem(ga);return t===null?null:JSON.parse(t)}catch(t){return null}}writeSeen(t){try{localStorage.setItem(ga,JSON.stringify(t))}catch(e){}}static \u0275fac=function(e){return new(e||i)};static \u0275prov=Sn({token:i,factory:i.\u0275fac,providedIn:"root"})};var Kc=["frame"],Tt=class i{constructor(t,e){this.service=t;this.sanitizer=e}service;sanitizer;placed=ee.required();frame;url;detach=null;ngOnInit(){let t=this.service.widgetDef(this.placed().extension,this.placed().widget);this.url=this.sanitizer.bypassSecurityTrustResourceUrl(t?.url?this.service.resolveAssetUrl(t.url):"about:blank"),this.detach=this.service.attachWidget(this.frame.nativeElement,this.placed())}onFrameLoad(){}ngOnDestroy(){this.detach?.(),this.detach=null}static \u0275fac=function(e){return new(e||i)(Ee(j),Ee(ce))};static \u0275cmp=I({type:i,selectors:[["fb-plotterext-widget"]],viewQuery:function(e,n){if(e&1&&Q(Kc,7),e&2){let o;N(o=F())&&(n.frame=o.first)}},inputs:{placed:[1,"placed"]},decls:2,vars:2,consts:[["frame",""],["sandbox","allow-scripts allow-same-origin allow-forms",3,"load","src","title"]],template:function(e,n){e&1&&(In(0,"iframe",1,0),Dn("load",function(){return n.onFrameLoad()}),Rn()),e&2&&Te("src",n.url,re)("title",n.placed().widget)},styles:["[_nghost-%COMP%]{display:block;width:100%;height:100%}iframe[_ngcontent-%COMP%]{display:block;width:100%;height:100%;border:none;background:transparent}"]})};var Xc=()=>[],Zc=(i,t)=>t.type+t.extension,Qc=(i,t)=>t.instanceId;function Yc(i,t){if(i&1){let e=y();a(0,"div",3)(1,"mat-icon",4),p(2,"filter_alt"),s(),a(3,"span",5),p(4),s(),a(5,"button",6),u("click",function(){let o=m(e).$implicit,r=l(2);return _(r.clearChip(o))}),a(6,"mat-icon"),p(7,"close"),s()()()}if(i&2){let e=t.$implicit;c(4),B(e.label)}}function Jc(i,t){if(i&1&&(a(0,"div",2),z(1,Yc,8,1,"div",3,Zc),s()),i&2){let e=l();$("pe-chips-low",(e.byAnchor().ct??Ln(2,Xc)).length>0),c(),q(e.service.filterChips())}}function ed(i,t){if(i&1&&(a(0,"div",9),b(1,"fb-plotterext-widget",10),s()),i&2){let e=t.$implicit,n=l(2);$t(n.cellStyle(e)),c(),v("placed",e)}}function td(i,t){if(i&1&&(a(0,"div",7),z(1,ed,2,3,"div",8,Qc),s()),i&2){let e=t.$implicit,n=l();$t(n.anchorStyle(e)),On("pe-"+e),J("data-anchor",e),c(),q(n.byAnchor()[e])}}var nd=1500,Ca=8,St=class i{anchors=Ht;byAnchor=L(()=>{let t={};for(let e of Ht)t[e]=[];for(let e of this.service.activeWidgets())t[e.anchor]?.push(e);return t});service=C(j);zone=C(X);host=C(Y);holdTimer=null;downPoint=null;onPointerDown=t=>this.pointerDown(t);onPointerMove=t=>this.pointerMove(t);onPointerEnd=()=>this.cancelHold();unregisterHitTester=null;ngOnInit(){this.unregisterHitTester=this.service.registerHitTester((t,e)=>this.hitTest(t,e)),this.zone.runOutsideAngular(()=>{document.addEventListener("pointerdown",this.onPointerDown,!0),document.addEventListener("pointermove",this.onPointerMove,!0),document.addEventListener("pointerup",this.onPointerEnd,!0),document.addEventListener("pointercancel",this.onPointerEnd,!0)})}ngOnDestroy(){this.cancelHold(),this.unregisterHitTester?.(),this.unregisterHitTester=null,document.removeEventListener("pointerdown",this.onPointerDown,!0),document.removeEventListener("pointermove",this.onPointerMove,!0),document.removeEventListener("pointerup",this.onPointerEnd,!0),document.removeEventListener("pointercancel",this.onPointerEnd,!0)}anchorStyle(t){let e={"grid-template-columns":`repeat(${Wt[t].cols}, var(--pe-cell-w))`};if(t!=="ct"&&t!=="cb")return e;let n=new Set;for(let r of this.byAnchor()[t]??[]){let d=this.service.widgetDef(r.extension,r.widget),{cols:g}=Gt(d?.size??"1x1");for(let E=r.col;E<r.col+g&&E<2;E++)n.add(E)}let o="0px";return n.size===1&&(o=n.has(0)?"calc((var(--pe-cell-w) + var(--pe-gap)) / 2)":"calc((var(--pe-cell-w) + var(--pe-gap)) / -2)"),e["--pe-center-shift"]=o,e}cellStyle(t){let e=this.service.widgetDef(t.extension,t.widget),{cols:n,rows:o}=Gt(e?.size??"1x1");return{"grid-column":`${t.col+1} / span ${n}`,"grid-row":`${t.row+1} / span ${o}`}}clearChip(t){this.service.clearResourceFilter(t.extension,t.type)}pointerDown(t){if(this.cancelHold(),!t.isPrimary||t.pointerType==="mouse"&&t.button!==0||t.target?.closest(".cdk-overlay-container, mat-dialog-container, button, mat-toolbar, .pe-cell, .pe-chips, .fb-pe-window, .fb-pe-window-backdrop"))return;let n=this.hitTest(t.clientX,t.clientY);n&&(this.service.cellOccupied(n.anchor,n.cell)||(this.downPoint={x:t.clientX,y:t.clientY},this.holdTimer=setTimeout(()=>{this.holdTimer=null,this.zone.run(()=>this.service.openAddWidgetPicker(n.anchor,n.cell))},nd)))}pointerMove(t){if(!this.holdTimer||!this.downPoint)return;let e=t.clientX-this.downPoint.x,n=t.clientY-this.downPoint.y;e*e+n*n>Ca*Ca&&this.cancelHold()}cancelHold(){this.holdTimer&&clearTimeout(this.holdTimer),this.holdTimer=null,this.downPoint=null}hitTest(t,e){let n=this.host.nativeElement.querySelectorAll(".pe-anchor");for(let o of Array.from(n)){let r=o.getBoundingClientRect();if(t<r.left||t>r.right||e<r.top||e>r.bottom)continue;let d=o.dataset.anchor,{cols:g,rows:E}=Wt[d],T=Math.min(g-1,Math.max(0,Math.floor((t-r.left)/r.width*g))),k=Math.min(E-1,Math.max(0,Math.floor((e-r.top)/r.height*E)));return{anchor:d,cell:{col:T,row:k}}}return null}static \u0275fac=function(e){return new(e||i)};static \u0275cmp=I({type:i,selectors:[["fb-plotterext-overlay"]],decls:3,vars:1,consts:[[1,"pe-chips",3,"pe-chips-low"],[1,"pe-anchor",3,"class","style"],[1,"pe-chips"],[1,"pe-chip"],[1,"pe-chip-icon"],[1,"pe-chip-label"],["aria-label","Clear filter",1,"pe-chip-clear",3,"click"],[1,"pe-anchor"],[1,"pe-cell",3,"style"],[1,"pe-cell"],[3,"placed"]],template:function(e,n){e&1&&(f(0,Jc,3,3,"div",0),z(1,td,3,5,"div",1,Ce)),e&2&&(h(n.service.filterChips().length?0:-1),c(),q(n.anchors))},dependencies:[Tt,he,fe],styles:["[_nghost-%COMP%]{position:absolute;inset:0;z-index:2000;pointer-events:none;--pe-cell-w: clamp(96px, 11vw, 150px);--pe-cell-h: clamp(84px, 9.5vw, 124px);--pe-gap: 6px;--pe-margin: 10px}.pe-anchor[_ngcontent-%COMP%]{position:absolute;display:grid;grid-template-rows:repeat(2,var(--pe-cell-h));gap:var(--pe-gap);pointer-events:none}.pe-tr[_ngcontent-%COMP%]{top:0;right:0}.pe-ct[_ngcontent-%COMP%]{top:0;left:50%;transform:translate(calc(-50% + var(--pe-center-shift, 0px)))}.pe-cb[_ngcontent-%COMP%]{bottom:0;left:50%;transform:translate(calc(-50% + var(--pe-center-shift, 0px)))}.pe-bl[_ngcontent-%COMP%]{bottom:0;left:0}.pe-br[_ngcontent-%COMP%]{bottom:0;right:0}.pe-cell[_ngcontent-%COMP%]{pointer-events:auto;overflow:hidden;border-radius:10px;box-shadow:0 1px 5px #00000059}.pe-chips[_ngcontent-%COMP%]{position:absolute;top:8px;left:50%;transform:translate(-50%);display:flex;gap:6px;pointer-events:auto;z-index:1}.pe-chips-low[_ngcontent-%COMP%]{top:calc(2 * var(--pe-cell-h) + var(--pe-gap) + 10px)}.pe-chip[_ngcontent-%COMP%]{display:flex;align-items:center;gap:4px;background:#141a20d9;color:#e8edf2;border-radius:16px;padding:3px 6px 3px 10px;font-size:12px;max-width:320px;box-shadow:0 1px 4px #00000059}.pe-chip-icon[_ngcontent-%COMP%]{font-size:16px;width:16px;height:16px;color:#29b6f6}.pe-chip-label[_ngcontent-%COMP%]{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.pe-chip-clear[_ngcontent-%COMP%]{display:flex;align-items:center;justify-content:center;border:none;background:#ffffff26;color:#e8edf2;border-radius:50%;width:20px;height:20px;padding:0;cursor:pointer}.pe-chip-clear[_ngcontent-%COMP%] mat-icon[_ngcontent-%COMP%]{font-size:14px;width:14px;height:14px}"]})};var id=["frame"],od=(i,t)=>t.key;function rd(i,t){if(i&1&&b(0,"fb-plotterext-runtime",0),i&2){let e=t.$implicit;v("entry",e)}}var vn=class i{constructor(t,e){this.service=t;this.sanitizer=e}service;sanitizer;entry=ee.required();frame;url;detach=null;ngOnInit(){let{extension:t,runtime:e}=this.entry();this.url=this.sanitizer.bypassSecurityTrustResourceUrl(e.url?this.service.resolveAssetUrl(e.url):"about:blank"),this.detach=this.service.attachBackground(this.frame.nativeElement,{extension:t,runtime:e})}ngOnDestroy(){this.detach?.(),this.detach=null}static \u0275fac=function(e){return new(e||i)(Ee(j),Ee(ce))};static \u0275cmp=I({type:i,selectors:[["fb-plotterext-runtime"]],viewQuery:function(e,n){if(e&1&&Q(id,7),e&2){let o;N(o=F())&&(n.frame=o.first)}},inputs:{entry:[1,"entry"]},decls:2,vars:2,consts:[["frame",""],["sandbox","allow-scripts allow-same-origin allow-forms","aria-hidden","true",3,"src","title"]],template:function(e,n){e&1&&Ke(0,"iframe",1,0),e&2&&Te("src",n.url,re)("title",n.entry().runtime.id)},styles:["[_nghost-%COMP%]{display:none}"]})},Mt=class i{service=C(j);static \u0275fac=function(e){return new(e||i)};static \u0275cmp=I({type:i,selectors:[["fb-plotterext-runtimes"]],decls:2,vars:0,consts:[[3,"entry"]],template:function(e,n){e&1&&z(0,rd,1,1,"fb-plotterext-runtime",0,od),e&2&&q(n.service.backgroundRuntimes())},dependencies:[vn],styles:["[_nghost-%COMP%]{display:none}"]})};var ad=["frame"],sd=(i,t)=>t.key;function ld(i,t){if(i&1){let e=y();a(0,"div",1)(1,"span"),p(2),s(),a(3,"button",4),u("click",function(){m(e);let o=l();return _(o.service.closeVisiblePanel())}),a(4,"mat-icon"),p(5,"close"),s()()()}i&2&&(c(2),B(t.panel.title))}function cd(i,t){if(i&1&&(a(0,"div",5),b(1,"fb-plotterext-panel-frame",6),s()),i&2){let e=t.$implicit;$("pe-body-hidden",!e.visible),c(),v("panelKey",e.key)("extension",e.extension)("panel",e.panel)}}var wn=class i{panelKey=ee.required();extension=ee.required();panel=ee.required();frame;url;detach=null;service=C(j);sanitizer=C(ce);ngOnInit(){this.url=this.sanitizer.bypassSecurityTrustResourceUrl(this.panel().url?this.service.resolveAssetUrl(this.panel().url):"about:blank"),this.detach=this.service.attachPanel(this.frame.nativeElement,{extension:this.extension(),panel:this.panel(),close:()=>this.service.closePanel(this.panelKey())})}ngOnDestroy(){this.detach?.(),this.detach=null}static \u0275fac=function(e){return new(e||i)};static \u0275cmp=I({type:i,selectors:[["fb-plotterext-panel-frame"]],viewQuery:function(e,n){if(e&1&&Q(ad,7),e&2){let o;N(o=F())&&(n.frame=o.first)}},inputs:{panelKey:[1,"panelKey"],extension:[1,"extension"],panel:[1,"panel"]},decls:2,vars:2,consts:[["frame",""],["sandbox","allow-scripts allow-same-origin allow-forms",3,"src","title"]],template:function(e,n){e&1&&Ke(0,"iframe",1,0),e&2&&Te("src",n.url,re)("title",n.panel().title)},styles:["[_nghost-%COMP%]{display:block;width:100%;height:100%}iframe[_ngcontent-%COMP%]{display:block;width:100%;height:100%;border:none}"]})},At=class i{service=C(j);isOpen=L(()=>!!this.service.visiblePanel());constructor(){let t=!0;Z(()=>{if(this.isOpen(),t){t=!1;return}this.service.pulseMapResize()})}onTransitionEnd(t){t.propertyName==="width"&&this.service.pulseMapResize(80)}static \u0275fac=function(e){return new(e||i)};static \u0275cmp=I({type:i,selectors:[["fb-plotterext-panel-drawer"]],hostVars:2,hostBindings:function(e,n){e&2&&$("pe-open",n.isOpen())},decls:5,vars:1,consts:[[1,"pe-drawer-inner",3,"transitionend"],[1,"pe-drawer-head"],[1,"pe-drawer-bodies"],[1,"pe-drawer-body",3,"pe-body-hidden"],["mat-icon-button","","aria-label","Close panel",3,"click"],[1,"pe-drawer-body"],[3,"panelKey","extension","panel"]],template:function(e,n){if(e&1&&(a(0,"div",0),u("transitionend",function(r){return n.onTransitionEnd(r)}),f(1,ld,6,1,"div",1),a(2,"div",2),z(3,cd,2,5,"div",3,sd),s()()),e&2){let o;c(),h((o=n.service.visiblePanel())?1:-1,o),c(2),q(n.service.openPanels())}},dependencies:[Pe,Ae,he,fe,wn],styles:["[_nghost-%COMP%]{flex:0 0 auto;height:100%;width:0;max-width:92vw;overflow:hidden;background:#1d242b;color:#e8edf2}.pe-open[_nghost-%COMP%]{width:390px;box-shadow:-2px 0 8px #0006}.pe-drawer-inner[_ngcontent-%COMP%]{width:390px;max-width:92vw;height:100%;display:flex;flex-direction:column}.pe-drawer-head[_ngcontent-%COMP%]{display:flex;align-items:center;justify-content:space-between;padding:4px 4px 4px 14px;font-weight:600;border-bottom:1px solid rgba(255,255,255,.12);flex:0 0 auto}.pe-drawer-bodies[_ngcontent-%COMP%]{flex:1;min-height:0;position:relative}.pe-drawer-body[_ngcontent-%COMP%]{position:absolute;inset:0}.pe-body-hidden[_ngcontent-%COMP%]{visibility:hidden;pointer-events:none}"]})};var ud=["frame"];function md(i,t){if(i&1){let e=y();a(0,"button",10),u("pointerenter",function(o){m(e);let r=l();return _(r.onHoverReveal(o))})("pointerdown",function(o){m(e);let r=l();return r.revealBar(),_(r.startGesture(o,"move"))})("click",function(){m(e);let o=l();return _(o.revealBar())}),s()}if(i&2){let e=l();J("tabindex",e.barShown()?-1:0)}}function _d(i,t){if(i&1){let e=y();a(0,"button",5),u("click",function(){m(e);let o=l();return _(o.toggleCollapsed())}),a(1,"mat-icon"),p(2),s()(),a(3,"button",11),u("menuOpened",function(){m(e);let o=l();return _(o.holdBar("menu"))})("menuClosed",function(){m(e);let o=l();return _(o.releaseBar("menu"))}),a(4,"mat-icon"),p(5,"more_vert"),s()()}if(i&2){let e=l(),n=ve(9);v("matTooltip",e.def().collapsed?"Expand":"Collapse"),J("aria-label",e.def().collapsed?"Expand":"Collapse"),c(2),B(e.def().collapsed?"expand_more":"expand_less"),c(),v("matMenuTriggerFor",n)}}function fd(i,t){if(i&1){let e=y();a(0,"button",12),u("click",function(){let o=m(e).$implicit,r=l();return _(r.windows.setOpacity(r.def().id,o))}),a(1,"mat-icon"),p(2),s(),a(3,"span"),p(4),s()()}if(i&2){let e=t.$implicit,n=l();J("aria-checked",n.def().opacity===e),c(2),B(n.def().opacity===e?"radio_button_checked":"radio_button_unchecked"),c(2),pe("Opacity ",e*100,"%")}}function hd(i,t){if(i&1){let e=y();a(0,"div",14),u("pointerenter",function(o){let r=m(e).$implicit,d=l(2);return _(r.includes("n")&&d.onHoverReveal(o))})("pointerdown",function(o){let r=m(e).$implicit,d=l(2);return _(d.startGesture(o,r))}),s()}if(i&2){let e=t.$implicit;J("data-mode",e)}}function gd(i,t){if(i&1&&z(0,hd,1,1,"div",13,Ce),i&2){let e=l();q(e.resizeModes)}}var Cd=wi.barH,va=3e3,bd=1e3,Pt=class i{def=ee.required();frame;resizeModes=["n","s","e","w","ne","nw","se","sw"];opacities=[1,.8,.6,.4];windows=C(ot);host=C(j);sanitizer=C(ce);zone=C(X);el=C(Y).nativeElement;src;detach=null;z=L(()=>(this.windows.zOrder().indexOf(this.def().id)+1)*2);front=L(()=>this.windows.zOrder().at(-1)===this.def().id);presentation=L(()=>this.windows.presentation(this.def(),this.windows.area()));floating=L(()=>this.presentation()==="floating");movable=L(()=>this.floating()&&this.def().movable);resizable=L(()=>this.floating()&&this.def().resizable&&!this.def().collapsed);hides=L(()=>this.def().userClose==="hide"&&!this.def().modal);rect=L(()=>this.windows.rectOf(this.def(),this.windows.area()));drawn=L(()=>{let t=this.rect();return this.def().collapsed?qe(ze({},t),{h:Cd}):t});autoHide=L(()=>this.def().titleBar==="autoHide"&&!this.def().collapsed&&this.floating());barShown=W(!0);barHolds=new Set;barTimer;gesture=null;frameReq=0;constructor(){Z(()=>{this.autoHide()&&Vn(()=>this.revealBar())}),Z(()=>{let t=this.drawn();this.gesture||this.applyRect(t)})}ngOnInit(){let t=this.def().panel.url;this.src=this.sanitizer.bypassSecurityTrustResourceUrl(t?this.host.resolveAssetUrl(t):"about:blank"),this.detach=this.host.attachWindow(this.frame.nativeElement,this.def()),this.frame.nativeElement.addEventListener("load",this.watchEscape)}watchEscape=()=>{try{this.frame.nativeElement.contentWindow?.addEventListener("keydown",t=>{t.key==="Escape"&&this.def().modal&&this.zone.run(()=>this.windows.close(this.def().id,"user"))})}catch(t){}};ngOnDestroy(){this.frame.nativeElement.removeEventListener("load",this.watchEscape),this.endGesture(),clearTimeout(this.barTimer),this.detach?.(),this.detach=null}revealBar(){this.barShown.set(!0),this.scheduleBarHide(va)}holdBar(t){this.barHolds.add(t),clearTimeout(this.barTimer),this.barShown.set(!0)}releaseBar(t,e=va){this.barHolds.delete(t)&&this.scheduleBarHide(e)}scheduleBarHide(t){clearTimeout(this.barTimer),!this.barHolds.size&&(this.barTimer=setTimeout(()=>this.barShown.set(!1),t))}isHover(t){return t.pointerType==="mouse"||t.pointerType==="pen"}onHoverReveal(t){this.autoHide()&&this.isHover(t)&&this.revealBar()}onBarEnter(t){this.isHover(t)&&this.holdBar("hover")}onBarLeave(t){this.isHover(t)&&this.releaseBar("hover",bd)}onFocusIn(t){let e=t.target;e.closest(".fb-pe-window__bar, .fb-pe-window__grip")&&e.matches(":focus-visible")&&this.holdBar("focus")}startGesture(t,e){if(this.gesture||!t.isPrimary||t.pointerType==="mouse"&&t.button!==0||(e==="move"?!this.movable():!this.resizable()))return;let n=t.currentTarget,o=t.target.closest("a, button");if(e==="move"&&o&&o!==n)return;t.preventDefault();let r=this.drawn();this.gesture={pointerId:t.pointerId,mode:e,startX:t.clientX,startY:t.clientY,start:r,current:r,target:n},n.setPointerCapture(t.pointerId),this.holdBar("gesture"),this.windows.gestureActive.set(!0),this.zone.runOutsideAngular(()=>{n.addEventListener("pointermove",this.onMove),n.addEventListener("pointerup",this.onEnd),n.addEventListener("pointercancel",this.onEnd),n.addEventListener("lostpointercapture",this.onEnd)})}onMove=t=>{let e=this.gesture;!e||t.pointerId!==e.pointerId||(e.current=xi(e.start,e.mode,t.clientX-e.startX,t.clientY-e.startY,this.windows.area()),this.frameReq||(this.frameReq=requestAnimationFrame(()=>{this.frameReq=0,this.gesture&&this.applyRect(this.gesture.current)})))};onEnd=t=>{this.gesture&&t.pointerId===this.gesture.pointerId&&this.zone.run(()=>this.endGesture(!0))};endGesture(t=!1){let e=this.gesture;if(e){if(this.gesture=null,this.frameReq&&(cancelAnimationFrame(this.frameReq),this.frameReq=0),e.target.removeEventListener("pointermove",this.onMove),e.target.removeEventListener("pointerup",this.onEnd),e.target.removeEventListener("pointercancel",this.onEnd),e.target.removeEventListener("lostpointercapture",this.onEnd),e.target.hasPointerCapture(e.pointerId)&&e.target.releasePointerCapture(e.pointerId),this.windows.gestureActive.set(!1),this.releaseBar("gesture"),t&&e.current!==e.start){let{w:n,h:o}=this.def().collapsed?this.rect():e.current;this.windows.setRectFromGesture(this.def().id,{x:e.current.x,y:e.current.y,w:n,h:o})}this.applyRect(t?e.current:this.drawn())}}toggleCollapsed(){this.windows.setCollapsed(this.def().id,!this.def().collapsed)}onBarDoubleClick(t){this.def().modal||t.target.closest("a, button")||this.toggleCollapsed()}applyRect(t){this.el.style.transform=`translate(${Math.round(t.x)}px, ${Math.round(t.y)}px)`,this.el.style.width=`${Math.round(t.w)}px`,this.el.style.height=`${Math.round(t.h)}px`}static \u0275fac=function(e){return new(e||i)};static \u0275cmp=I({type:i,selectors:[["fb-pe-window"]],viewQuery:function(e,n){if(e&1&&Q(ud,7),e&2){let o;N(o=F())&&(n.frame=o.first)}},hostAttrs:[1,"fb-pe-window"],hostVars:21,hostBindings:function(e,n){e&1&&u("pointerdown",function(){return n.windows.focus(n.def().id)})("focusin",function(r){return n.onFocusIn(r)})("focusout",function(){return n.releaseBar("focus")}),e&2&&(J("data-window-id",n.def().id),G("z-index",n.z())("opacity",n.def().opacity),$("collapsed",n.def().collapsed)("hidden",!n.def().visible)("modal",n.def().modal)("sheet",n.presentation()==="sheet")("fullscreen",n.presentation()==="fullscreen")("fixed-place",!n.movable())("bar-overlay",n.autoHide())("bar-hidden",n.autoHide()&&!n.barShown()))},inputs:{def:[1,"def"]},decls:16,vars:12,consts:[["moremenu","matMenu"],["frame",""],["aria-label","Show title bar",1,"fb-pe-window__grip"],[1,"fb-pe-window__bar",3,"pointerenter","pointerleave","pointerdown","dblclick"],[1,"fb-pe-window__title",3,"title"],["mat-icon-button","",1,"fb-pe-window__btn",3,"click","matTooltip"],["xPosition","before"],["mat-menu-item","","role","menuitemradio"],[1,"fb-pe-window__body"],["sandbox","allow-scripts allow-same-origin allow-forms",3,"src","title"],["aria-label","Show title bar",1,"fb-pe-window__grip",3,"pointerenter","pointerdown","click"],["mat-icon-button","","matTooltip","More","aria-label","More",1,"fb-pe-window__btn",3,"menuOpened","menuClosed","matMenuTriggerFor"],["mat-menu-item","","role","menuitemradio",3,"click"],[1,"fb-pe-window__handle"],[1,"fb-pe-window__handle",3,"pointerenter","pointerdown"]],template:function(e,n){if(e&1){let o=y();f(0,md,1,1,"button",2),a(1,"div",3),u("pointerenter",function(d){return n.onBarEnter(d)})("pointerleave",function(d){return n.onBarLeave(d)})("pointerdown",function(d){return m(o),n.revealBar(),_(n.startGesture(d,"move"))})("dblclick",function(d){return n.onBarDoubleClick(d)}),a(2,"span",4),p(3),s(),f(4,_d,6,4),a(5,"button",5),u("click",function(){return n.windows.userClose(n.def().id)}),a(6,"mat-icon"),p(7),s()()(),a(8,"mat-menu",6,0),z(10,fd,5,3,"button",7,Ce),s(),a(12,"div",8),b(13,"iframe",9,1),s(),f(15,gd,2,0)}e&2&&(h(n.autoHide()?0:-1),c(),$("front",n.front()),c(),v("title",n.def().title),c(),B(n.def().title),c(),h(n.def().modal?-1:4),c(),v("matTooltip",n.hides()?"Hide":"Close"),J("aria-label",n.hides()?"Hide":"Close"),c(2),B(n.hides()?"remove":"close"),c(3),q(n.opacities),c(3),v("src",n.src,re)("title",n.def().title),c(2),h(n.resizable()?15:-1))},dependencies:[Pe,Ae,he,fe,lt,at,rt,st,it,nt],styles:['[_nghost-%COMP%]{position:absolute;top:0;left:0;display:flex;flex-direction:column;pointer-events:auto;box-sizing:border-box;background:#fafafa;border:1px solid rgba(0,0,0,.3);border-radius:6px;box-shadow:0 4px 16px #00000059;overflow:visible}.dark-theme[_nghost-%COMP%], .dark-theme [_nghost-%COMP%]{background:#303030;border-color:#ffffff40}.fb-pe-window__bar[_ngcontent-%COMP%]{flex:0 0 32px;height:32px;display:flex;align-items:center;gap:2px;padding-left:8px;cursor:grab;touch-action:none;-webkit-user-select:none;user-select:none;border-radius:6px 6px 0 0;background:#e0e0e0;color:#000000de}.fb-pe-window__bar.front[_ngcontent-%COMP%]{background:#c5cae9}.dark-theme[_nghost-%COMP%] .fb-pe-window__bar[_ngcontent-%COMP%], .dark-theme [_nghost-%COMP%] .fb-pe-window__bar[_ngcontent-%COMP%]{background:#424242;color:#fff}.dark-theme[_nghost-%COMP%] .fb-pe-window__bar.front[_ngcontent-%COMP%], .dark-theme [_nghost-%COMP%] .fb-pe-window__bar.front[_ngcontent-%COMP%]{background:#3949ab}.fb-pe-window__title[_ngcontent-%COMP%]{flex:1 1 auto;overflow:hidden;white-space:nowrap;text-overflow:ellipsis;font-size:13px;font-weight:500}.fb-pe-window__btn[_ngcontent-%COMP%]{--mat-icon-button-state-layer-size: 28px;width:28px;height:28px;padding:2px;cursor:pointer}.fb-pe-window__btn[_ngcontent-%COMP%] mat-icon[_ngcontent-%COMP%]{font-size:18px;width:18px;height:18px}.fb-pe-window__body[_ngcontent-%COMP%]{position:relative;flex:1 1 auto;min-height:0;border-radius:0 0 6px 6px;overflow:hidden}.fb-pe-window__body[_ngcontent-%COMP%] iframe[_ngcontent-%COMP%]{display:block;width:100%;height:100%;border:0;background:#fff}.bar-overlay[_nghost-%COMP%] .fb-pe-window__bar[_ngcontent-%COMP%]{position:absolute;top:0;left:0;right:0;z-index:2;transition:opacity .15s ease-out,transform .15s ease-out}.bar-overlay[_nghost-%COMP%] .fb-pe-window__body[_ngcontent-%COMP%]{border-radius:6px}.bar-hidden[_nghost-%COMP%] .fb-pe-window__bar[_ngcontent-%COMP%]{opacity:0;transform:translateY(-6px);visibility:hidden;transition:opacity .3s ease-in,transform .3s ease-in,visibility 0s linear .3s}.fb-pe-window__grip[_ngcontent-%COMP%]{position:absolute;top:0;left:50%;z-index:1;width:64px;height:16px;margin:0 0 0 -32px;padding:0;border:0;background:transparent;cursor:grab;touch-action:none;transition:opacity .15s ease-out}.fb-pe-window__grip[_ngcontent-%COMP%]:before{content:"";position:absolute;top:5px;left:14px;right:14px;height:5px;border-radius:3px;background:#00000073;box-shadow:0 0 0 1px #fff9}[_nghost-%COMP%]:not(.bar-hidden) .fb-pe-window__grip[_ngcontent-%COMP%]{opacity:0}@media(pointer:coarse){.fb-pe-window__grip[_ngcontent-%COMP%]{width:96px;height:24px;margin-left:-48px}.fb-pe-window__grip[_ngcontent-%COMP%]:before{top:9px;left:24px;right:24px}}@media(prefers-reduced-motion:reduce){.fb-pe-window__bar[_ngcontent-%COMP%], .fb-pe-window__grip[_ngcontent-%COMP%]{transition:none!important}}.collapsed[_nghost-%COMP%] .fb-pe-window__body[_ngcontent-%COMP%]{visibility:hidden}.collapsed[_nghost-%COMP%] .fb-pe-window__bar[_ngcontent-%COMP%]{border-radius:6px}.collapsed[_nghost-%COMP%] .fb-pe-window__handle[_ngcontent-%COMP%]{display:none}.fb-pe-window__handle[_ngcontent-%COMP%]{position:absolute;z-index:3;touch-action:none;--edge: 10px;--out: calc(var(--edge) / -2)}@media(pointer:coarse){.fb-pe-window__handle[_ngcontent-%COMP%]{--edge: 16px}}.fb-pe-window__handle[data-mode*=n][_ngcontent-%COMP%]{top:var(--out)}.fb-pe-window__handle[data-mode*=s][_ngcontent-%COMP%]{bottom:var(--out)}.fb-pe-window__handle[data-mode*=e][_ngcontent-%COMP%]{right:var(--out)}.fb-pe-window__handle[data-mode*=w][_ngcontent-%COMP%]{left:var(--out)}.fb-pe-window__handle[data-mode=n][_ngcontent-%COMP%], .fb-pe-window__handle[data-mode=s][_ngcontent-%COMP%]{left:var(--edge);right:var(--edge);height:var(--edge);cursor:ns-resize}.fb-pe-window__handle[data-mode=e][_ngcontent-%COMP%], .fb-pe-window__handle[data-mode=w][_ngcontent-%COMP%]{top:var(--edge);bottom:var(--edge);width:var(--edge);cursor:ew-resize}.fb-pe-window__handle[data-mode=ne][_ngcontent-%COMP%], .fb-pe-window__handle[data-mode=nw][_ngcontent-%COMP%], .fb-pe-window__handle[data-mode=se][_ngcontent-%COMP%], .fb-pe-window__handle[data-mode=sw][_ngcontent-%COMP%]{width:calc(var(--edge) * 1.5);height:calc(var(--edge) * 1.5)}.fb-pe-window__handle[data-mode=ne][_ngcontent-%COMP%], .fb-pe-window__handle[data-mode=sw][_ngcontent-%COMP%]{cursor:nesw-resize}.fb-pe-window__handle[data-mode=nw][_ngcontent-%COMP%], .fb-pe-window__handle[data-mode=se][_ngcontent-%COMP%]{cursor:nwse-resize}.hidden[_nghost-%COMP%]{display:none}.sheet[_nghost-%COMP%], .fullscreen[_nghost-%COMP%]{border-radius:0}.sheet[_nghost-%COMP%] .fb-pe-window__bar[_ngcontent-%COMP%], .fullscreen[_nghost-%COMP%] .fb-pe-window__bar[_ngcontent-%COMP%], .sheet[_nghost-%COMP%] .fb-pe-window__body[_ngcontent-%COMP%], .fullscreen[_nghost-%COMP%] .fb-pe-window__body[_ngcontent-%COMP%]{border-radius:0;cursor:default}.fixed-place[_nghost-%COMP%] .fb-pe-window__bar[_ngcontent-%COMP%]{cursor:default}'],changeDetection:0})};var vd=(i,t)=>t.id;function wd(i,t){i&1&&(a(0,"div",2),u("pointerdown",function(n){return n.stopPropagation()}),s()),i&2&&G("z-index",t)}function xd(i,t){if(i&1&&b(0,"fb-pe-window",1),i&2){let e=t.$implicit;v("def",e)}}var yd="fb-pe-window-gesture",kt=class i{inset=ee(0);service=C(ot);overlays=C(Je);document=C(ye);el=C(Y).nativeElement;zone=C(X);observer=null;backdropZ=L(()=>{let t=this.service.activeModal();return t?(this.service.zOrder().indexOf(t.id)+1)*2-1:0});constructor(){Z(()=>{this.document.body.classList.toggle(yd,this.service.gestureActive())})}ngAfterViewInit(){this.measure(),!(typeof ResizeObserver>"u")&&(this.observer=new ResizeObserver(()=>this.zone.run(()=>this.measure())),this.observer.observe(this.el))}ngOnDestroy(){this.observer?.disconnect()}measure(){let t=this.el.getBoundingClientRect();t.width>0&&t.height>0&&this.service.setArea({w:t.width,h:t.height})}onEscape(t){if(t.defaultPrevented||this.overlays.getContainerElement().querySelector(".cdk-overlay-pane"))return;let e=this.service.activeModal();e&&this.service.close(e.id,"user")}onWindowBlur(){setTimeout(()=>{let t=this.document.activeElement;if(t?.tagName!=="IFRAME")return;let e=t.closest("[data-window-id]")?.getAttribute("data-window-id");e&&this.service.focus(e)})}static \u0275fac=function(e){return new(e||i)};static \u0275cmp=I({type:i,selectors:[["fb-pe-window-layer"]],hostVars:4,hostBindings:function(e,n){e&1&&u("blur",function(){return n.onWindowBlur()},Pn)("keydown.escape",function(r){return n.onEscape(r)},Oe),e&2&&G("left",n.inset(),"px")("right",n.inset(),"px")},inputs:{inset:[1,"inset"]},decls:3,vars:1,consts:[[1,"fb-pe-window-backdrop",3,"z-index"],[3,"def"],[1,"fb-pe-window-backdrop",3,"pointerdown"]],template:function(e,n){if(e&1&&(f(0,wd,1,2,"div",0),z(1,xd,1,1,"fb-pe-window",1,vd)),e&2){let o;h((o=n.backdropZ())?0:-1,o),c(),q(n.service.windows())}},dependencies:[Pt],styles:["[_nghost-%COMP%]{position:absolute;inset:0;z-index:4850;pointer-events:none;overflow:hidden}.fb-pe-window-backdrop[_ngcontent-%COMP%]{position:absolute;inset:0;pointer-events:auto;background:#00000052}"],changeDetection:0})};var Ed=["sideright"],Td=["fbMap"],Sd=()=>[Hi],Md=()=>[Zi],Ad=()=>[qi],Pd=()=>[Ri],kd=()=>[Oi],Id=()=>[Ui],Rd=()=>[Fi],Dd=()=>[Yi],Od=()=>[to],Ld=(i,t)=>({"dark-theme":i,"app-night":t}),xe=(i,t)=>({"button-primary":i,"button-toolbar":t}),Vd=(i,t)=>t.extension+"/"+t.button.id,Nd=(i,t)=>t[0];function Fd(i,t){if(i&1){let e=y();a(0,"button",9),u("click",function(){m(e);let o=l();return _(o.displayLeftMenu("resourceGroups",!0))}),a(1,"mat-icon"),p(2,"category"),s(),p(3," \xA0Groups "),s()}}function $d(i,t){if(i&1){let e=y();a(0,"button",9),u("click",function(){m(e);let o=l();return _(o.showOverlaysMoved())}),a(1,"mat-icon"),p(2,"layers"),s(),p(3," \xA0Overlays "),s()}}function Bd(i,t){if(i&1){let e=y();a(0,"button",9),u("click",function(){m(e);let o=l();return _(o.displayLeftMenu("trackList",!0))}),a(1,"mat-icon",34),p(2,"show_chart"),s(),p(3," \xA0Tracks "),s()}}function zd(i,t){if(i&1){let e=y();a(0,"div")(1,"button",9),u("click",function(){let o=m(e).$implicit,r=l(2);return _(r.openExperiment({choice:o,value:null}))}),b(2,"mat-icon",35),p(3),s()()}if(i&2){let e=t.$implicit;c(3),pe(" \xA0",e," ")}}function qd(i,t){if(i&1&&(a(0,"div"),z(1,zd,4,1,"div",null,Ce),s()),i&2){let e=l();c(),q(e.app.config.resources.paths.sort())}}function Ud(i,t){if(i&1){let e=y();a(0,"a",9),u("click",function(){m(e);let o=l();return _(o.clearTrail(o.app.data.serverTrail))}),a(1,"mat-icon"),p(2,"clear_all"),s(),a(3,"span"),p(4),s()(),a(5,"a",9),u("click",function(){m(e);let o=l();return _(o.trailToRoute())}),a(6,"mat-icon"),p(7,"insights"),s(),a(8,"span"),p(9,"Trail to Route"),s()(),b(10,"mat-divider")}if(i&2){let e=l();c(4),pe("",e.app.data.serverTrail?"Refresh":"Clear"," Trail")}}function Hd(i,t){if(i&1){let e=y();a(0,"a",9),u("click",function(){m(e);let o=l();return _(o.clearDestination())}),a(1,"mat-icon"),p(2,"clear_all"),s(),a(3,"span"),p(4,"Stop Navigating"),s()(),a(5,"a",9),u("click",function(){m(e);let o=l();return _(o.clearCourseData())}),a(6,"mat-icon"),p(7,"clear_all"),s(),a(8,"span"),p(9,"Clear Course Data"),s()(),b(10,"mat-divider")}}function Wd(i,t){if(i&1){let e=y();b(0,"mat-divider"),a(1,"a",9),u("click",function(){m(e);let o=l();return _(o.showWeather("forecast"))}),a(2,"mat-icon"),p(3,"air"),s(),a(4,"span"),p(5,"Weather Forecast"),s()()}}function Gd(i,t){if(i&1){let e=y();a(0,"a",9),u("click",function(){m(e);let o=l();return _(o.skres.newWaypointAt(o.app.data.vessels.active.position))}),a(1,"mat-icon",11),p(2,"add_location"),s(),a(3,"span"),p(4,"Add Waypoint at Vessel"),s()()}}function jd(i,t){if(i&1){let e=y();a(0,"a",9),u("click",function(){m(e);let o=l();return _(o.drawFeature("note"))}),a(1,"mat-icon"),p(2,"local_offer"),s(),a(3,"span"),p(4,"Add Note"),s()()}}function Kd(i,t){if(i&1){let e=y();a(0,"a",9),u("click",function(){m(e);let o=l();return _(o.showLogin(null,!1))}),a(1,"mat-icon",36),p(2," account_circle "),s(),a(3,"span"),p(4),s()(),b(5,"mat-divider")}if(i&2){let e=l();c(),v("matBadgeHidden",e.app.isLoggedIn()),c(3),B(e.app.isLoggedIn()?"Change User":"Login")}}function Xd(i,t){if(i&1){let e=y();a(0,"a",9),u("click",function(){m(e);let o=l();return _(o.displayLeftMenu("anchorWatch",!0))}),a(1,"mat-icon"),p(2,"anchor"),s(),a(3,"span"),p(4,"Anchor Watch"),s()()}}function Zd(i,t){i&1&&(a(0,"mat-icon",16),p(1,"check_box"),s())}function Qd(i,t){i&1&&b(0,"mat-icon",37)}function Yd(i,t){if(i&1){let e=y();a(0,"a",9),u("click",function(){m(e);let o=l();return _(o.toggleRadarOverlay())}),f(1,Zd,2,0,"mat-icon",16)(2,Qd,1,0,"mat-icon",37),a(3,"span"),p(4,"Radar Overlay"),s()()}if(i&2){let e=l();c(),h(e.app.uiCtrl().radarLayer?1:2)}}function Jd(i,t){if(i&1){let e=y();a(0,"a",9),u("click",function(){m(e);let o=l();return _(o.showPlaybackSettings())}),a(1,"mat-icon"),p(2,"history"),s(),a(3,"span"),p(4,"Playback History"),s()()}}function ep(i,t){if(i&1){let e=y();a(0,"radar-panel",43),u("connect",function(){m(e);let o=l(2);return _(o.connectRadar())})("disconnect",function(){m(e);let o=l(2);return _(o.disconnectRadar())}),s()}}function tp(i,t){if(i&1){let e=y();a(0,"note-panel",44),u("edit",function(o){m(e);let r=l(2);return _(r.skres.showNoteEditor({id:o}))})("move",function(o){m(e);let r=l(2);return _(r.onNoteMove(o))})("panTo",function(o){m(e);let r=l(2);return _(r.centerAndZoom(o.center,o.zoomLevel))}),s()}if(i&2){let e=l(2);v("note",e.infoPanel.item().resource)("id",e.infoPanel.item().id)("interacting",e.isInteracting())}}function np(i,t){if(i&1){let e=y();a(0,"region-panel",45),u("edit",function(o){m(e);let r=l(2);return _(r.skres.editRegionInfo(o))})("panTo",function(o){m(e);let r=l(2);return _(r.centerAndZoom(o.center,o.zoomLevel))}),s()}if(i&2){let e=l(2);v("region",e.infoPanel.item().resource)("id",e.infoPanel.item().id)("related",e.infoPanel.related())("interacting",e.isInteracting())}}function ip(i,t){if(i&1){let e=y();a(0,"waypoint-panel",46),u("edit",function(o){m(e);let r=l(2);return _(r.skres.editWaypointInfo(o))})("panTo",function(o){m(e);let r=l(2);return _(r.centerAndZoom(o.center,o.zoomLevel))}),s()}if(i&2){let e=l(2);v("waypoint",e.infoPanel.item().resource)("id",e.infoPanel.item().id)("related",e.infoPanel.related())("interacting",e.isInteracting())}}function op(i,t){if(i&1){let e=y();a(0,"route-panel",47),u("edit",function(o){m(e);let r=l(2);return _(r.onRouteInfoEdit(o))})("activate",function(o){m(e);let r=l(2);return _(r.activateRoute(o))})("panTo",function(o){m(e);let r=l(2);return _(r.centerAndZoom(o.center,o.zoomLevel))}),s()}if(i&2){let e=l(2);v("route",e.infoPanel.item().resource)("id",e.infoPanel.item().id)("related",e.infoPanel.related())("interacting",e.isInteracting())}}function rp(i,t){if(i&1){let e=y();a(0,"info-panel",38),u("closed",function(){m(e);let o=l();return _(o.closeDrawer())}),f(1,ep,1,0,"radar-panel"),f(2,tp,1,3,"note-panel",39),f(3,np,1,4,"region-panel",40),f(4,ip,1,4,"waypoint-panel",41),f(5,op,1,4,"route-panel",42),s()}if(i&2){let e,n,o,r,d,g=l();c(),h(((e=g.infoPanel.item())==null?null:e.type)==="radars"?1:-1),c(),h(((n=g.infoPanel.item())==null?null:n.type)==="notes"?2:-1),c(),h(((o=g.infoPanel.item())==null?null:o.type)==="regions"?3:-1),c(),h(((r=g.infoPanel.item())==null?null:r.type)==="waypoints"?4:-1),c(),h(((d=g.infoPanel.item())==null?null:d.type)==="routes"?5:-1)}}function ap(i,t){if(i&1){let e=y();a(0,"a",55),u("click",function(){m(e);let o=l(2);return _(o.closeInstrumentPanel())}),a(1,"mat-icon"),p(2,"open_in_new"),s()()}if(i&2){let e=l(2);v("href",e.instUrl(),An)}}function sp(i,t){if(i&1&&b(0,"iframe",54),i&2){let e=l(2);v("src",e.instUrl(),re)}}function lp(i,t){if(i&1){let e=y();a(0,"div",22)(1,"mat-nav-list")(2,"a",48)(3,"a",49),u("click",function(){m(e);let o=l();return _(o.closeInstrumentPanel())}),a(4,"mat-icon"),p(5,"arrow_forward"),s()(),p(6," \xA0\xA0\xA0\xA0 "),f(7,ap,3,1,"a",50),a(8,"a",51),u("click",function(){m(e);let o=l();return _(o.selectPlugin())}),a(9,"mat-icon"),p(10,"arrow_back_ios"),s()(),a(11,"a",52),u("click",function(){m(e);let o=l();return _(o.selectPlugin(!0))}),a(12,"mat-icon"),p(13,"arrow_forward_ios"),s()()(),b(14,"mat-divider"),s(),a(15,"div",53),f(16,sp,1,1,"iframe",54),s()()}if(i&2){let e=l();c(7),h(e.app.config.display.plugins.instruments?7:-1),c(),v("disabled",e.app.config.display.plugins.favourites.length===0),c(3),v("disabled",e.app.config.display.plugins.favourites.length===0),c(5),h(e.app.instrumentPanel().activate?16:-1)}}function cp(i,t){i&1&&(a(0,"div",24),b(1,"mat-progress-bar",56),s())}function dp(i,t){if(i&1){let e=y();a(0,"autopilot-console",57),u("close",function(){m(e);let o=l();return _(o.toggleAutopilotConsole(!1))}),s()}if(i&2){let e=l();v("apData",e.app.data.vessels.self.autopilot)}}function pp(i,t){if(i&1){let e=y();a(0,"route-builder",58),u("save",function(o){m(e);let r=l();return _(r.skres.newRouteAt(o.coordinates,o.meta))})("close",function(){m(e);let o=l();return _(o.toggleRouteBuilderConsole(!1))}),s()}}function up(i,t){if(i&1){let e=y();a(0,"div",60)(1,"button",78),u("click",function(){m(e);let o=l(3);return _(o.showSelectMode())}),a(2,"mat-icon"),p(3,"cancel"),s()()()}}function mp(i,t){if(i&1){let e=y();a(0,"div",60)(1,"button",79),u("click",function(){m(e);let o=l(3);return _(o.openFeatureBrowser())}),a(2,"mat-icon"),p(3,"tips_and_updates"),s()()()}}function _p(i,t){if(i&1){let e=y();a(0,"div",62)(1,"div",60)(2,"button",69),u("click",function(){m(e);let o=l(2);return _(o.toggleAlertList(!0))}),b(3,"mat-icon",70),s()(),a(4,"div",60)(5,"button",71)(6,"mat-icon"),p(7,"layers"),s()()(),a(8,"div",60)(9,"button",72)(10,"mat-icon"),p(11,"edit"),s()()(),a(12,"div",60)(13,"button",73),u("click",function(){m(e);let o=l(2);return _(o.toggleNorthUp())}),b(14,"mat-icon",74),s()(),a(15,"div",60)(16,"button",75),u("click",function(){m(e);let o=l(2);return _(o.toggleMoveMap())}),b(17,"mat-icon",76),s()(),a(18,"div",60)(19,"button",77)(20,"mat-icon"),p(21,"more_horiz"),s()()(),f(22,up,4,0,"div",60),f(23,mp,4,0,"div",60),s()}if(i&2){let e=l(2),n=ve(3),o=ve(41),r=ve(73);c(2),v("matBadge",e.notiMgr.alerts().length)("matBadgeHidden",e.notiMgr.alerts().length===0),c(3),v("disabled",e.isInteracting())("matMenuTriggerFor",n),c(4),v("disabled",e.isInteracting())("matMenuTriggerFor",r),c(4),v("ngClass",ue(16,xe,!e.app.uiConfig().mapNorthUp,e.app.uiConfig().mapNorthUp))("matTooltip",e.app.uiConfig().mapNorthUp?"Show Heading Up":"Show North Up"),c(),v("svgIcon",e.app.uiConfig().mapNorthUp?"heading-n-up":"heading-h-up"),c(2),v("ngClass",ue(19,xe,e.app.uiConfig().mapMove,!e.app.uiConfig().mapMove))("disabled",!e.app.data.vessels.showSelf)("matTooltip",e.app.uiConfig().mapMove?"Turn off Follow Vessel":"Center & Follow Vessel"),c(3),v("disabled",e.isInteracting())("matMenuTriggerFor",o),c(3),h(e.mode===1?22:-1),c(),h(e.whatsNew.hasUnseen()?23:-1)}}function fp(i,t){if(i&1){let e=y();a(0,"route-list",81),u("activate",function(o){m(e);let r=l(4);return _(r.activateRoute(o.id))})("deactivate",function(){m(e);let o=l(4);return _(o.clearDestination())})("select",function(o){m(e);let r=l(4);return _(r.handleResourceInfo("routes",o.id))})("points",function(o){m(e);let r=l(4);return _(r.featureProperties({id:o.id,type:"route"}))})("notes",function(o){m(e);let r=l(4);return _(r.skres.showRelatedNotes(o.id,"route",o.readOnly))})("closed",function(){m(e);let o=l(4);return _(o.displayLeftMenu())}),s()}if(i&2){let e=l(4);v("activeRoute",e.app.data.activeRoute)("editingRouteId",e.app.data.editingId)}}function hp(i,t){i&1&&(ae(0,fp,1,2),se(1,0,Sd),le())}function gp(i,t){if(i&1){let e=y();a(0,"waypoint-list",82),u("select",function(o){m(e);let r=l(4);return _(r.handleResourceInfo("waypoints",o.id))})("goto",function(o){m(e);let r=l(4);return _(r.course.navigateToWaypoint(o.id))})("deactivate",function(){m(e);let o=l(4);return _(o.clearDestination())})("center",function(o){m(e);let r=l(4);return _(r.centerAndZoom(o))})("notes",function(o){m(e);let r=l(4);return _(r.skres.showRelatedNotes(o.id,"waypoint",o.readOnly))})("closed",function(){m(e);let o=l(4);return _(o.displayLeftMenu())}),s()}if(i&2){let e=l(4);v("activeWaypoint",e.app.data.activeWaypoint)("editingWaypointId",e.app.data.editingId)}}function Cp(i,t){i&1&&(ae(0,gp,1,2),se(1,0,Md),le())}function bp(i,t){if(i&1){let e=y();a(0,"chart-list",83),u("closed",function(){m(e);let o=l(4);return _(o.displayLeftMenu())}),s()}if(i&2){let e=l(4);v("selectedCharts",e.app.config.selections.charts)}}function vp(i,t){i&1&&(ae(0,bp,1,1),se(1,0,Ad),le())}function wp(i,t){if(i&1){let e=y();a(0,"note-list",84),u("select",function(o){m(e);let r=l(4);return _(r.handleResourceInfo("notes",o.id))})("pan",function(o){m(e);let r=l(4);return _(r.centerAndZoom(o.center,o.zoomLevel))})("closed",function(){m(e);let o=l(4);return _(o.displayLeftMenu())}),s()}if(i&2){let e=l(4);v("notes",e.skres.notes())}}function xp(i,t){i&1&&(ae(0,wp,1,1),se(1,0,Pd),le())}function yp(i,t){if(i&1){let e=y();a(0,"region-list",85),u("select",function(o){m(e);let r=l(4);return _(r.handleResourceInfo("regions",o.id))})("pan",function(o){m(e);let r=l(4);return _(r.centerAndZoom(o.center,o.zoomLevel))})("closed",function(){m(e);let o=l(4);return _(o.displayLeftMenu())}),s()}if(i&2){let e=l(4);v("regions",e.skres.regions())}}function Ep(i,t){i&1&&(ae(0,yp,1,1),se(1,0,kd),le())}function Tp(i,t){if(i&1){let e=y();a(0,"track-list",86),u("center",function(o){m(e);let r=l(4);return _(r.centerAndZoom(o))})("closed",function(){m(e);let o=l(4);return _(o.displayLeftMenu())}),s()}}function Sp(i,t){i&1&&(ae(0,Tp,1,0),se(1,0,Id),le())}function Mp(i,t){if(i&1){let e=y();a(0,"ais-list",87),u("properties",function(o){m(e);let r=l(4);return _(r.featureProperties({id:o,type:"ais"}))})("closed",function(){m(e);let o=l(4);return _(o.displayLeftMenu())})("focusVessel",function(o){m(e);let r=l(4);return _(r.switchActiveVessel(o))})("pan",function(o){m(e);let r=l(4);return _(r.centerAndZoom(o.center,o.zoomLevel))}),s()}if(i&2){let e=l(4);v("focusId",e.app.data.vessels.activeId)}}function Ap(i,t){i&1&&(ae(0,Mp,1,1),se(1,0,Rd),le())}function Pp(i,t){if(i&1){let e=y();a(0,"group-list",38),u("closed",function(){m(e);let o=l(4);return _(o.displayLeftMenu())}),s()}}function kp(i,t){i&1&&(ae(0,Pp,1,0),se(1,0,Dd),le())}function Ip(i,t){if(i&1){let e=y();a(0,"anchor-watch",88),u("closed",function(){m(e);let o=l(3);return _(o.displayLeftMenu())}),s()}if(i&2){let e=l(3);v("showSelf",e.app.data.vessels.showSelf)("radius",e.anchor.radius())("raised",e.anchor.raised())}}function Rp(i,t){if(i&1){let e=y();a(0,"weather-list",38),u("closed",function(){m(e);let o=l(4);return _(o.displayLeftMenu())}),s()}}function Dp(i,t){i&1&&(ae(0,Rp,1,0),se(1,0,Od),le())}function Op(i,t){if(i&1&&(a(0,"div",63),f(1,hp,3,0),f(2,Cp,3,0),f(3,vp,3,0),f(4,xp,3,0),f(5,Ep,3,0),f(6,Sp,3,0),f(7,Ap,3,0),f(8,kp,3,0),f(9,Ip,1,3,"anchor-watch",80),f(10,Dp,3,0),s()),i&2){let e=l(2);c(),h(e.leftMenuCtrl().routeList?1:-1),c(),h(e.leftMenuCtrl().waypointList?2:-1),c(),h(e.leftMenuCtrl().chartList?3:-1),c(),h(e.leftMenuCtrl().noteList?4:-1),c(),h(e.leftMenuCtrl().regionList?5:-1),c(),h(e.leftMenuCtrl().trackList?6:-1),c(),h(e.leftMenuCtrl().aisList?7:-1),c(),h(e.leftMenuCtrl().resourceGroups?8:-1),c(),h(e.leftMenuCtrl().anchorWatch?9:-1),c(),h(e.leftMenuCtrl().weatherList?10:-1)}}function Lp(i,t){i&1&&(a(0,"div",65)(1,"mat-icon",89),p(2,"visibility_off "),s()())}function Vp(i,t){i&1&&(a(0,"div",65)(1,"mat-icon",90),p(2,"compare_arrows "),s()())}function Np(i,t){i&1&&(a(0,"div",65)(1,"mat-icon",91),p(2,"directions_boat "),s()())}function Fp(i,t){i&1&&(a(0,"div",65)(1,"mat-icon",92),p(2,"local_offer "),s()())}function $p(i,t){i&1&&(a(0,"div",65)(1,"mat-icon",93),p(2,"signal_wifi_statusbar_connected_no_internet_4 "),s()())}function Bp(i,t){if(i&1){let e=y();a(0,"button",99),u("click",function(){m(e);let o=l(4);return _(o.openInstrumentPanel())}),a(1,"mat-icon"),p(2,"av_timer"),s()()}}function zp(i,t){if(i&1&&(a(0,"div",95),f(1,Bp,3,0,"button",98),b(2,"br"),p(3,"\xA0"),b(4,"br"),p(5,"\xA0 "),s()),i&2){let e=l(3);c(),h(!e.app.instrumentPanel().open&&!e.infoPanel.opened()&&!e.isInteracting()&&!e.app.data.vessels.activeId?1:-1)}}function qp(i,t){if(i&1){let e=y();a(0,"div",60)(1,"button",100),u("click",function(){m(e);let o=l(3);return _(o.enableAudio())}),a(2,"mat-icon",34),p(3,"volume_off"),s()(),b(4,"br"),p(5,"\xA0"),b(6,"br"),s()}}function Up(i,t){if(i&1){let e=y();a(0,"div",60)(1,"button",101),u("click",function(){m(e);let o=l(3);return _(o.toggleFullscreen())}),a(2,"mat-icon"),p(3),s()(),b(4,"br"),p(5,"\xA0"),b(6,"br"),s()}if(i&2){let e=l(3);c(),v("ngClass",ue(3,xe,e.displayFullscreen().active,!e.displayFullscreen().active))("matTooltip",e.displayFullscreen().active?"Exit Fullscreen ":"Go Fullscreen"),c(2),pe(" ",e.displayFullscreen().active?"fullscreen_exit ":"fullscreen"," ")}}function Hp(i,t){if(i&1){let e=y();a(0,"div",60)(1,"fb-experiments",102),u("selected",function(o){m(e);let r=l(3);return _(r.openExperiment(o))}),s(),b(2,"br"),p(3,"\xA0"),b(4,"br"),s()}}function Wp(i,t){if(i&1){let e=y();a(0,"div",60)(1,"pip-video",103),u("click",function(){m(e);let o=l(3);return _(o.focusMap())}),s(),b(2,"br"),p(3,"\xA0"),b(4,"br"),s()}if(i&2){let e=l(3);c(),v("src",e.vidUrl())("muted",!0)}}function Gp(i,t){if(i&1){let e=y();a(0,"div",60)(1,"button",104),u("click",function(){m(e);let o=l(3);return _(o.toggleAutopilotConsole(!o.app.uiCtrl().autopilotConsole))}),b(2,"mat-icon",105),s(),b(3,"br"),p(4,"\xA0"),b(5,"br"),s()}if(i&2){let e=l(3);c(),v("ngClass",ue(1,xe,e.app.data.vessels.self.autopilot.enabled,!e.app.data.vessels.self.autopilot.enabled))}}function jp(i,t){if(i&1){let e=y();a(0,"div",60)(1,"button",106),u("click",function(){m(e);let o=l(3);return _(o.toggleRadarPanel())}),b(2,"mat-icon",37),s(),b(3,"br"),p(4,"\xA0"),b(5,"br"),s()}if(i&2){let e=l(3);c(),v("ngClass",ue(2,xe,e.app.uiCtrl().radarLayer,!e.app.uiCtrl().radarLayer))("disabled",e.app.instrumentPanel().open)}}function Kp(i,t){if(i&1){let e=y();a(0,"div",60)(1,"button",107),u("click",function(){let o=m(e).$implicit,r=l(3);return _(r.plotterExt.handleButtonAction(o.extension,o.button))}),a(2,"mat-icon"),p(3),s()(),b(4,"br"),p(5,"\xA0"),b(6,"br"),s()}if(i&2){let e=t.$implicit;c(),v("matTooltip",e.button.title),c(2),B(e.button.icon||"extension")}}function Xp(i,t){if(i&1){let e=y();a(0,"div",94),f(1,zp,6,1,"div",95),f(2,qp,7,0,"div",60),f(3,Up,7,6,"div",60),a(4,"div",60)(5,"button",96),u("click",function(){m(e);let o=l(2);return _(o.toggleConstrainMapZoom())}),a(6,"mat-icon"),p(7,"zoom_in_map"),s()(),b(8,"br"),p(9,"\xA0"),b(10,"br"),s(),a(11,"div",60)(12,"button",97),u("click",function(){m(e);let o=l(2);return _(o.invertFeatureLabelColor())}),a(13,"mat-icon"),p(14),s()(),b(15,"br"),p(16,"\xA0"),b(17,"br"),s(),f(18,Hp,5,0,"div",60),f(19,Wp,5,2,"div",60),f(20,Gp,6,4,"div",60),f(21,jp,6,5,"div",60),z(22,Kp,7,2,"div",60,Vd),s()}if(i&2){let e=l(2);G("top",60+e.plotterExt.toolbarTopOffset(),"px"),c(),h(e.app.instrumentPanelAvailable()&&e.app.config.display.plugins.instruments?1:-1),c(),h(e.audioStatus()!=="running"?2:-1),c(),h(e.app.isTopWindow()&&e.displayFullscreen().enabled?3:-1),c(2),v("ngClass",ue(12,xe,e.app.uiConfig().mapConstrainZoom,!e.app.uiConfig().mapConstrainZoom)),c(7),v("ngClass",ue(15,xe,e.app.uiConfig().invertColor,!e.app.uiConfig().invertColor)),c(2),B("invert_colors"),c(4),h(e.app.config.experiments?18:-1),c(),h(e.app.config.resources.video.enable&&e.app.config.resources.video.url?19:-1),c(),h(e.app.featureFlags().autopilotApi&&e.app.data.vessels.self.autopilot.default&&e.app.config.display.fab!=="autopilot"?20:-1),c(),h(e.app.featureFlags().radarApi&&e.radarApi.radarId()&&e.app.config.display.fab!=="radar"?21:-1),c(),q(e.plotterExt.toolbarButtons())}}function Zp(i,t){if(i&1){let e=y();a(0,"div",59)(1,"div",60)(2,"button",61)(3,"mat-icon"),p(4,"menu"),s()()()(),f(5,_p,24,22,"div",62),f(6,Op,11,10,"div",63),a(7,"div",64),f(8,Lp,3,0,"div",65),f(9,Vp,3,0,"div",65),f(10,Np,3,0,"div",65),f(11,Fp,3,0,"div",65),f(12,$p,3,0,"div",65),s(),a(13,"div",66)(14,"div",60)(15,"button",67),u("click",function(){m(e);let o=l();return _(o.toggleToolbarButtons())}),a(16,"mat-icon"),p(17),s()()()(),f(18,Xp,24,18,"div",68)}if(i&2){let e=l(),n=ve(109);c(2),v("disabled",e.isInteracting())("matBadgeHidden",e.app.isLoggedIn())("matMenuTriggerFor",n),c(3),h(e.app.uiConfig().toolbarButtons?5:-1),c(),h(e.leftMenuCtrl().leftMenuPanel?6:-1),c(),G("top",20+e.plotterExt.toolbarTopOffset(),"px"),c(),h(!e.wakeLock.enabled()&&e.wakeLock.isAvailable?8:-1),c(),h(e.app.uiConfig().showCourseData?-1:9),c(),h(e.app.uiConfig().showAisTargets?-1:10),c(),h(e.app.uiConfig().showNotes?-1:11),c(),h(e.stream.watchDogAlarm()?12:-1),c(),G("top",e.plotterExt.toolbarTopOffset(),"px"),c(2),v("matTooltip",e.app.uiConfig().toolbarButtons?"Hide Toobars":"Show Toobars"),c(2),B(e.app.uiConfig().toolbarButtons?"apps":"apps_outage"),c(),h(e.app.uiConfig().toolbarButtons?18:-1)}}function Qp(i,t){if(i&1&&(a(0,"div",31)(1,"div",108)(2,"mat-icon"),p(3,"access_time"),s(),a(4,"b"),p(5,"Playback:"),s()(),a(6,"div",109),p(7),s()()),i&2){let e=l();c(7),B(e.playbackTime())}}function Yp(i,t){if(i&1){let e=y();a(0,"alert-list",113),u("closed",function(){m(e);let o=l(2);return _(o.toggleAlertList(!1))}),s()}if(i&2){let e=l(2);v("alerts",e.notiMgr.alerts())}}function Jp(i,t){if(i&1){let e=y();a(0,"span",112)(1,"fb-alert",114),u("nextPoint",function(){m(e);let o=l(2);return _(o.course.coursePointIndex(o.course.courseData().pointIndex+1))})("routeEnd",function(){m(e);let o=l(2);return _(o.clearDestination())}),s()()}if(i&2){let e=t.$implicit,n=l(2);c(),v("audioStatus",n.audioStatus())("alert",e[1])("acknowledged",e[1].acknowledged)("silenced",e[1].silenced)("doNotPlaySound",n.app.config.display.muteSound)}}function eu(i,t){if(i&1&&(f(0,Yp,1,1,"alert-list",110),a(1,"div",111),z(2,Jp,2,5,"span",112,Nd),s()),i&2){let e=l();h(e.app.uiCtrl().alertList?0:-1),c(2),q(e.notiMgr.alerts())}}function tu(i,t){if(i&1){let e=y();a(0,"fb-interact-help",115),u("finish",function(){m(e);let o=l();return _(o.handleInteractionFinish())})("cancel",function(){m(e);let o=l();return _(o.closeInteraction())})("undo",function(){m(e);let o=l();return _(o.handleInteractionUndo())}),s()}}function nu(i,t){if(i&1){let e=y();a(0,"route-nextpoint",118),u("selected",function(o){m(e);let r=l(2);return _(r.routeNextPoint(o))}),s()}if(i&2){let e=l(2);v("index",e.course.courseData().pointIndex)("total",e.course.courseData().pointTotal)("circular",e.app.data.activeRouteCircular)}}function iu(i,t){if(i&1&&b(0,"ap-dial-text",128),i&2){let e=l(3);v("title","VMG")("value",e.app.formatSpeed(e.course.courseData().vmg,!0))("units",e.app.formattedSpeedUnits)}}function ou(i,t){if(i&1&&b(0,"ap-dial-text",128),i&2){let e=l(3);v("title","BRG")("value",e.course.courseData().bearing.value.toFixed(1))("units",e.course.courseData().bearing.type==="M"?"deg (M)":"deg (T)")}}function ru(i,t){if(i&1&&b(0,"ap-dial-text",128),i&2){let e=l(3);v("title","XTE")("value",e.course.courseData().xte>10?e.course.courseData().xte.toFixed(1):e.course.courseData().xte.toFixed(3))("units",e.convert.getSymbol(e.app.config.units.distance))}}function au(i,t){if(i&1&&b(0,"ap-dial-text",131),i&2){let e=l(4);v("title","DTG")("value",e.course.courseData().route.dtg.toFixed(1))("units",e.convert.getSymbol(e.app.config.units.distance))}}function su(i,t){if(i&1&&b(0,"ap-dial-ttg",132),i&2){let e=l(4);v("value",e.course.courseData().route.ttg)}}function lu(i,t){if(i&1&&b(0,"ap-dial-eta",133),i&2){let e=l(4);v("title","ETA")("value",e.course.courseData().route.eta)}}function cu(i,t){if(i&1&&(f(0,au,1,3,"ap-dial-text",131),f(1,su,1,1,"ap-dial-ttg",132),f(2,lu,1,2,"ap-dial-eta",133)),i&2){let e=l(3);h(e.course.courseData().route.dtg?0:-1),c(),h(e.course.courseData().route.ttg?1:-1),c(),h(e.course.courseData().route.eta?2:-1)}}function du(i,t){if(i&1&&b(0,"ap-dial-text",128),i&2){let e=l(3);v("title","DTG")("value",e.course.courseData().dtg.toFixed(1))("units",e.convert.getSymbol(e.app.config.units.distance))}}function pu(i,t){if(i&1&&b(0,"ap-dial-ttg",129),i&2){let e=l(3);v("value",e.course.courseData().ttg)}}function uu(i,t){if(i&1&&b(0,"ap-dial-eta",130),i&2){let e=l(3);v("title","ETA")("value",e.course.courseData().eta)}}function mu(i,t){if(i&1){let e=y();a(0,"div",117)(1,"div",119)(2,"div",120)(3,"button",121),u("click",function(){m(e);let o=l(2);return _(o.openCourseSettings())}),b(4,"mat-icon",122),s(),b(5,"br"),a(6,"button",123),u("click",function(){m(e);let o=l(2);return _(o.autopilot.engage())}),b(7,"mat-icon",124),s()(),a(8,"div")(9,"button",125),u("click",function(){m(e);let o=l(2);return _(o.course.courseRestart())}),a(10,"mat-icon"),p(11,"replay"),s()(),b(12,"br"),a(13,"button",126),u("click",function(){m(e);let o=l(2);return _(o.course.courseReverse())}),a(14,"mat-icon",127),p(15," multiple_stop "),s()()()(),f(16,iu,1,3,"ap-dial-text",128),f(17,ou,1,3,"ap-dial-text",128),f(18,ru,1,3,"ap-dial-text",128),f(19,cu,3,3),f(20,du,1,3,"ap-dial-text",128),f(21,pu,1,1,"ap-dial-ttg",129),f(22,uu,1,2,"ap-dial-eta",130),s()}if(i&2){let e=l(2);c(6),v("disabled",!e.app.featureFlags().autopilotApi||!e.app.data.vessels.self.autopilot.default),c(),v("color",e.navDataPanel().apModeColor),c(6),v("disabled",!e.app.data.activeRoute),c(),v("color",e.app.data.activeRouteReversed?"primary":"none"),c(2),h(e.course.courseData().vmg?16:-1),c(),h(e.course.courseData().bearing.value?17:-1),c(),h(e.course.courseData().xte?18:-1),c(),h(e.app.data.activeRoute?19:-1),c(),h(e.course.courseData().dtg?20:-1),c(),h(e.course.courseData().ttg?21:-1),c(),h(e.course.courseData().eta?22:-1)}}function _u(i,t){if(i&1&&(a(0,"div",32),f(1,nu,1,3,"route-nextpoint",116),f(2,mu,23,11,"div",117),s()),i&2){let e=l();c(),h(e.navDataPanel().nextPointCtrl?1:-1),c(),h(e.app.config.ui.showCourseData&&e.navDataPanel().show?2:-1)}}function fu(i,t){if(i&1){let e=y();a(0,"mfb-container",134),u("radarClick",function(){m(e);let o=l();return _(o.toggleRadarPanel())}),s()}if(i&2){let e=l();v("action",e.app.config.display.fab)}}var wa="fb-track-api-notice-dismissed",It=class i{sideright;fbMap;navDataPanel=W({show:!1,nextPointCtrl:!1,apModeColor:"",apModeText:""});playbackTime=W(null);leftMenuCtrl=W({leftMenuPanel:!1,routeList:!1,waypointList:!1,chartList:!1,noteList:!1,regionList:!1,trackList:!1,aisList:!1,resourceGroups:!1,anchorWatch:!1,weatherList:!1});displayFullscreen=W({active:!1,enabled:document.fullscreenEnabled});features={playbackAPI:!0};mode=0;timers=[];trackApiNoticeShown=!1;instUrl=W(null);selFavourite=-1;vidUrl=W(null);convert=qt;obsList=[];streamOptions={options:null,toMode:null};mapSetFocus=W("");mapCenter=W([0,0]);audioStatus=W("");isInteracting=L(()=>this.mapInteract.isMeasuring()||this.mapInteract.isDrawing()||this.mapInteract.isModifying()||this.mapInteract.isBoxSelecting());app=C(ho);infoPanel=C(Wi);mapInteract=C(ui);anchor=C(ro);notiMgr=C(no);course=C(ki);stream=C(bi);skres=C(Mi);gpxExport=C(go);skresOther=C(Ai);signalk=C(di);dom=C(ce);overlayContainer=C(Je);bottomSheet=C(li);dialog=C(ei);wakeLock=C(ni);settings=C(mo);autopilot=C(so);radarApi=C(vi);symbols=C(pi);routeBuffers=C(Ei);plotterExt=C(j);temporaryRoutes=C(Gi);whatsNew=C(Et);constructor(){this.app.data.vessels.active=this.app.data.vessels.self,Z(()=>{this.app.debug("** skAuthChange Event:",this.app.skAuthChange()),this.handleSKAuthChange()}),Z(()=>{this.app.debug("** kioskMode Event:",this.app.kioskMode()),this.toggleSuppressContextMenu(this.app.kioskMode())}),Z(()=>{this.handleSelectionEnded(this.mapInteract.selection())}),Z(()=>{this.app.uiConfig(),this.handleSettingChangeEvent(void 0)}),Z(()=>{this.infoPanel.opened()||this.app.instrumentPanel().activate?this.sideright?.opened||this.openDrawer():this.sideright?.opened&&this.closeDrawer()}),Z(()=>{let t=this.app.mapMoveRequest();t&&(this.app.uiConfig.update(e=>e.mapMove?qe(ze({},e),{mapMove:!1}):e),this.centerAndZoom(t.center,t.zoom))})}ngAfterViewInit(){setTimeout(()=>{this.app.config.display.disableWakelock||this.wakeLock.enable()},500)}enableAudio(){this.app.audio.context&&this.app.audio.context.resume()}ngOnInit(){this.whatsNew.init(),this.audioStatus.update(()=>this.app.audio.context.state),this.app.debug("audio state:",this.audioStatus()),this.app.audio.context.onstatechange=()=>{this.app.debug("audio statechange:",this.app.audio.context.state),this.audioStatus.update(()=>this.app.audio.context.state)},this.mapCenter.update(()=>this.app.config.map.center),this.app.instrumentPanel.update(t=>Object.assign({},t,{activate:!this.app.config.display.plugins.startOnOpen})),this.setDarkTheme(),this.instUrl.update(()=>this.dom.bypassSecurityTrustResourceUrl(this.formatInstrumentsUrl())),this.vidUrl.update(()=>this.dom.bypassSecurityTrustResourceUrl(`${this.app.config.resources.video.url}`)),this.connectSignalKServer(),this.obsList.push(this.stream.delta$().subscribe(t=>this.onMessage(t))),this.obsList.push(this.stream.connect$().subscribe(t=>this.onConnect(t))),this.obsList.push(this.stream.close$().subscribe(t=>this.onClose(t))),this.obsList.push(this.stream.error$().subscribe(t=>this.onError(t))),this.obsList.push(this.stream.trail$().subscribe(t=>this.handleTrailUpdate(t))),this.obsList.push(this.stream.trackSource$().subscribe(t=>this.handleTrackSource(t))),this.obsList.push(this.settings.change$.subscribe(t=>this.handleSettingChangeEvent(t))),document.addEventListener("fullscreenchange",()=>{this.displayFullscreen.update(t=>Object.assign({},t,{active:!!document.fullscreenElement}))}),document.addEventListener("fullscreenerror",()=>{this.displayFullscreen.update(t=>Object.assign({},t,{active:!1}))})}ngOnDestroy(){this.stopTimers(),this.stream.terminate(),this.signalk.disconnect(),this.obsList.forEach(t=>t.unsubscribe())}getOrientation(){return this.app.uiConfig().mapNorthUp?"rotate(0deg)":"rotate("+(0-this.app.data.vessels.active.orientation)+"rad)"}showRadarPanel(){if(!this.radarApi.hasWebGL){this.radarApi.showNoWebGLMessage();return}this.app.instrumentPanel().open&&this.closeInstrumentPanel(),this.connectRadar(),this.infoPanel.openRadar(this.radarApi.radar()),this.focusMap()}toggleRadarPanel(){this.infoPanel.item()?.type==="radars"?(this.infoPanel.close(),this.closeDrawer()):this.showRadarPanel()}connectRadar(){this.app.uiCtrl().radarLayer||this.app.uiCtrl.update(t=>Object.assign({},t,{radarLayer:!0}))}toggleRadarOverlay(){this.app.uiCtrl().radarLayer?this.disconnectRadar():this.showRadarPanel()}disconnectRadar(){this.app.uiCtrl().radarLayer&&this.app.uiCtrl.update(t=>Object.assign({},t,{radarLayer:!1}))}toggleMoveMap(t=!1){this.app.uiConfig.update(e=>{let n=t?!1:!e.mapMove;return Object.assign({},e,{mapMove:n})}),this.focusMap()}resumeMoveMap(){this.app.uiConfig.update(t=>Object.assign({},t,{mapMove:!0})),this.focusMap()}toggleNorthUp(){this.app.uiConfig.update(t=>Object.assign({},t,{mapNorthUp:!t.mapNorthUp})),this.focusMap()}toggleToolbarButtons(){this.app.uiConfig.update(t=>Object.assign({},t,{toolbarButtons:!t.toolbarButtons})),this.focusMap()}toggleConstrainMapZoom(){this.app.uiConfig.update(t=>Object.assign({},t,{mapConstrainZoom:!t.mapConstrainZoom})),this.skres.setMapZoomRange(),this.focusMap()}invertFeatureLabelColor(){this.app.uiConfig.update(t=>Object.assign({},t,{invertColor:!t.invertColor})),this.focusMap()}toggleAlertList(t){this.app.uiCtrl.update(e=>Object.assign({},e,{alertList:t}))}toggleAutopilotConsole(t){this.app.uiCtrl.update(e=>Object.assign({},e,{autopilotConsole:t}))}toggleRouteBuilderConsole(t){this.app.uiCtrl.update(e=>Object.assign({},e,{routeBuilder:t}))}toggleSuppressContextMenu(t){this.app.uiCtrl.update(e=>Object.assign({},e,{suppressContextMenu:t}))}toggleFullscreen(){let t=document.documentElement,e=t.requestFullscreen||t.webkitRequestFullScreen||t.mozRequestFullscreen||t.msRequestFullscreen;e&&(document.fullscreenElement?document.exitFullscreen&&document.exitFullscreen():e.call(t),this.focusMap())}darkThemeApplied;setDarkTheme(){let t=window.matchMedia("(prefers-color-scheme: dark)"),e=this.app.config.display.darkMode.source===0&&t.matches||this.app.config.display.darkMode.source===1&&this.app.data.vessels.self.environment.mode==="night"||this.app.config.display.darkMode.source===-1;if(e===this.darkThemeApplied)return;this.darkThemeApplied=e;let n=this.overlayContainer.getContainerElement();e?n.classList.add("dark-theme"):n.classList.remove("dark-theme"),this.app.config.display.darkMode.enabled=e}formatInstrumentsUrl(){let t=`${this.app.hostDef.url}${this.app.config.display.plugins.instruments}`,e=this.app.config.display.plugins.parameters?this.app.config.display.plugins.parameters.length>0&&this.app.config.display.plugins.parameters[0]!=="?"?`?${this.app.config.display.plugins.parameters}`:this.app.config.display.plugins.parameters:"";return e?`${t}/${e}`:t}selectPlugin(t=!1){t?this.selFavourite===-1?this.selFavourite=0:this.selFavourite===this.app.config.display.plugins.favourites.length-1?this.selFavourite=-1:this.selFavourite++:this.selFavourite===-1?this.selFavourite=this.app.config.display.plugins.favourites.length-1:this.selFavourite===0?this.selFavourite=-1:this.selFavourite--;let e=this.selFavourite===-1?this.formatInstrumentsUrl():`${this.app.hostDef.url}${this.app.config.display.plugins.favourites[this.selFavourite]}`;this.instUrl.update(()=>this.dom.bypassSecurityTrustResourceUrl(e))}showOverlaysMoved(){this.app.showMsgBox("Overlays have moved",`Overlays have moved to the Chart list.
|
|
459
|
+
`],encapsulation:2,changeDetection:0})}return i})(),dt=(()=>{class i extends ct{static \u0275fac=(()=>{let e;return function(o){return(e||(e=We(i)))(o||i)}})();static \u0275cmp=I({type:i,selectors:[["mat-sidenav-content"]],hostAttrs:[1,"mat-drawer-content","mat-sidenav-content"],features:[Se([{provide:Me,useExisting:i}]),Le],ngContentSelectors:pt,decls:1,vars:0,template:function(n,o){n&1&&(be(),ie(0))},encapsulation:2,changeDetection:0})}return i})(),Qt=(()=>{class i extends Kt{get fixedInViewport(){return this._fixedInViewport}set fixedInViewport(e){this._fixedInViewport=we(e)}_fixedInViewport=!1;get fixedTopGap(){return this._fixedTopGap}set fixedTopGap(e){this._fixedTopGap=$t(e)}_fixedTopGap=0;get fixedBottomGap(){return this._fixedBottomGap}set fixedBottomGap(e){this._fixedBottomGap=$t(e)}_fixedBottomGap=0;static \u0275fac=(()=>{let e;return function(o){return(e||(e=We(i)))(o||i)}})();static \u0275cmp=I({type:i,selectors:[["mat-sidenav"]],hostAttrs:[1,"mat-drawer","mat-sidenav"],hostVars:16,hostBindings:function(n,o){n&2&&(J("tabIndex",o.mode!=="side"?"-1":null)("align",null),G("top",o.fixedInViewport?o.fixedTopGap:null,"px")("bottom",o.fixedInViewport?o.fixedBottomGap:null,"px"),B("mat-drawer-end",o.position==="end")("mat-drawer-over",o.mode==="over")("mat-drawer-push",o.mode==="push")("mat-drawer-side",o.mode==="side")("mat-sidenav-fixed",o.fixedInViewport))},inputs:{fixedInViewport:"fixedInViewport",fixedTopGap:"fixedTopGap",fixedBottomGap:"fixedBottomGap"},exportAs:["matSidenav"],features:[Se([{provide:Kt,useExisting:i}]),Le],ngContentSelectors:pt,decls:3,vars:0,consts:[["content",""],["cdkScrollable","",1,"mat-drawer-inner-container"]],template:function(n,o){n&1&&(be(),a(0,"div",1,0),ie(2),s())},dependencies:[Me],encapsulation:2,changeDetection:0})}return i})(),xo=(()=>{class i extends Xt{_allDrawers=void 0;_content=void 0;static \u0275fac=(()=>{let e;return function(o){return(e||(e=We(i)))(o||i)}})();static \u0275cmp=I({type:i,selectors:[["mat-sidenav-container"]],contentQueries:function(n,o,r){if(n&1&&Ft(r,dt,5)(r,Qt,5),n&2){let d;N(d=F())&&(o._content=d.first),N(d=F())&&(o._allDrawers=d)}},hostAttrs:[1,"mat-drawer-container","mat-sidenav-container"],hostVars:2,hostBindings:function(n,o){n&2&&B("mat-drawer-container-explicit-backdrop",o._backdropOverride)},exportAs:["matSidenavContainer"],features:[Se([{provide:Zt,useExisting:i},{provide:Xt,useExisting:i}]),Le],ngContentSelectors:Ra,decls:4,vars:2,consts:[[1,"mat-drawer-backdrop",3,"mat-drawer-shown"],[1,"mat-drawer-backdrop",3,"click"]],template:function(n,o){n&1&&(be(Da),f(0,Oa,1,2,"div",0),ie(1),ie(2,1),f(3,La,2,0,"mat-sidenav-content")),n&2&&(h(o.hasBackdrop?0:-1),c(3),h(o._content?-1:3))},dependencies:[dt],styles:[Va],encapsulation:2,changeDetection:0})}return i})(),yo=(()=>{class i{static \u0275fac=function(n){return new(n||i)};static \u0275mod=je({type:i});static \u0275inj=Ue({imports:[zt,Ye,zt]})}return i})();function Eo(i){if(!((i.ctrlKey||i.metaKey)&&!i.shiftKey&&i.key.toLowerCase()==="z"))return!1;let e=i.target,n=e?.tagName;return!(n==="INPUT"||n==="TEXTAREA"||n==="SELECT"||e?.isContentEditable)}var yn=ya(fa());function bn(i){let t=[];for(let e of i)for(let n of e.events)t.push(`${e.id}:${n.pr}`);return t}function ha(i,t){if(!Array.isArray(t))return i;let e=new Set(t.filter(n=>typeof n=="string"));return i.filter(n=>!e.has(n))}var ga="fb-whats-new-seen",Et=class i{corpus=C(Co);_hasUnseen=W(!1);hasUnseen=this._hasUnseen.asReadonly();init(){return O(this,null,function*(){let t=yield this.corpus.load(),e=ha(bn(t),this.readSeen());this._hasUnseen.set(e.length>0)})}markAllSeen(){return O(this,null,function*(){let t=yield this.corpus.load();this.writeSeen(bn(t)),this._hasUnseen.set(!1)})}readSeen(){try{let t=localStorage.getItem(ga);return t===null?null:JSON.parse(t)}catch(t){return null}}writeSeen(t){try{localStorage.setItem(ga,JSON.stringify(t))}catch(e){}}static \u0275fac=function(e){return new(e||i)};static \u0275prov=Mn({token:i,factory:i.\u0275fac,providedIn:"root"})};var Kc=["frame"],Tt=class i{constructor(t,e){this.service=t;this.sanitizer=e}service;sanitizer;placed=ee.required();frame;url;detach=null;ngOnInit(){let t=this.service.widgetDef(this.placed().extension,this.placed().widget);this.url=this.sanitizer.bypassSecurityTrustResourceUrl(t?.url?this.service.resolveAssetUrl(t.url):"about:blank"),this.detach=this.service.attachWidget(this.frame.nativeElement,this.placed())}onFrameLoad(){}ngOnDestroy(){this.detach?.(),this.detach=null}static \u0275fac=function(e){return new(e||i)(Ee(j),Ee(ce))};static \u0275cmp=I({type:i,selectors:[["fb-plotterext-widget"]],viewQuery:function(e,n){if(e&1&&Q(Kc,7),e&2){let o;N(o=F())&&(n.frame=o.first)}},inputs:{placed:[1,"placed"]},decls:2,vars:2,consts:[["frame",""],["sandbox","allow-scripts allow-same-origin allow-forms",3,"load","src","title"]],template:function(e,n){e&1&&(Dn(0,"iframe",1,0),On("load",function(){return n.onFrameLoad()}),Rn()),e&2&&Te("src",n.url,re)("title",n.placed().widget)},styles:["[_nghost-%COMP%]{display:block;width:100%;height:100%}iframe[_ngcontent-%COMP%]{display:block;width:100%;height:100%;border:none;background:transparent}"]})};var Xc=()=>[],Zc=(i,t)=>t.type+t.extension,Qc=(i,t)=>t.instanceId;function Yc(i,t){if(i&1){let e=y();a(0,"div",3)(1,"mat-icon",4),p(2,"filter_alt"),s(),a(3,"span",5),p(4),s(),a(5,"button",6),u("click",function(){let o=m(e).$implicit,r=l(2);return _(r.clearChip(o))}),a(6,"mat-icon"),p(7,"close"),s()()()}if(i&2){let e=t.$implicit;c(4),$(e.label)}}function Jc(i,t){if(i&1&&(a(0,"div",2),z(1,Yc,8,1,"div",3,Zc),s()),i&2){let e=l();B("pe-chips-low",(e.byAnchor().ct??Vn(2,Xc)).length>0),c(),q(e.service.filterChips())}}function ed(i,t){if(i&1&&(a(0,"div",9),b(1,"fb-plotterext-widget",10),s()),i&2){let e=t.$implicit,n=l(2);Bt(n.cellStyle(e)),c(),v("placed",e)}}function td(i,t){if(i&1&&(a(0,"div",7),z(1,ed,2,3,"div",8,Qc),s()),i&2){let e=t.$implicit,n=l();Bt(n.anchorStyle(e)),Ln("pe-"+e),J("data-anchor",e),c(),q(n.byAnchor()[e])}}var nd=1500,Ca=8,St=class i{anchors=Ht;byAnchor=L(()=>{let t={};for(let e of Ht)t[e]=[];for(let e of this.service.activeWidgets())t[e.anchor]?.push(e);return t});service=C(j);zone=C(X);host=C(Y);holdTimer=null;downPoint=null;onPointerDown=t=>this.pointerDown(t);onPointerMove=t=>this.pointerMove(t);onPointerEnd=()=>this.cancelHold();unregisterHitTester=null;ngOnInit(){this.unregisterHitTester=this.service.registerHitTester((t,e)=>this.hitTest(t,e)),this.zone.runOutsideAngular(()=>{document.addEventListener("pointerdown",this.onPointerDown,!0),document.addEventListener("pointermove",this.onPointerMove,!0),document.addEventListener("pointerup",this.onPointerEnd,!0),document.addEventListener("pointercancel",this.onPointerEnd,!0)})}ngOnDestroy(){this.cancelHold(),this.unregisterHitTester?.(),this.unregisterHitTester=null,document.removeEventListener("pointerdown",this.onPointerDown,!0),document.removeEventListener("pointermove",this.onPointerMove,!0),document.removeEventListener("pointerup",this.onPointerEnd,!0),document.removeEventListener("pointercancel",this.onPointerEnd,!0)}anchorStyle(t){let e={"grid-template-columns":`repeat(${Wt[t].cols}, var(--pe-cell-w))`};if(t!=="ct"&&t!=="cb")return e;let n=new Set;for(let r of this.byAnchor()[t]??[]){let d=this.service.widgetDef(r.extension,r.widget),{cols:g}=Gt(d?.size??"1x1");for(let E=r.col;E<r.col+g&&E<2;E++)n.add(E)}let o="0px";return n.size===1&&(o=n.has(0)?"calc((var(--pe-cell-w) + var(--pe-gap)) / 2)":"calc((var(--pe-cell-w) + var(--pe-gap)) / -2)"),e["--pe-center-shift"]=o,e}cellStyle(t){let e=this.service.widgetDef(t.extension,t.widget),{cols:n,rows:o}=Gt(e?.size??"1x1");return{"grid-column":`${t.col+1} / span ${n}`,"grid-row":`${t.row+1} / span ${o}`}}clearChip(t){this.service.clearResourceFilter(t.extension,t.type)}pointerDown(t){if(this.cancelHold(),!t.isPrimary||t.pointerType==="mouse"&&t.button!==0||t.target?.closest(".cdk-overlay-container, mat-dialog-container, button, mat-toolbar, .pe-cell, .pe-chips, .fb-pe-window, .fb-pe-window-backdrop"))return;let n=this.hitTest(t.clientX,t.clientY);n&&(this.service.cellOccupied(n.anchor,n.cell)||(this.downPoint={x:t.clientX,y:t.clientY},this.holdTimer=setTimeout(()=>{this.holdTimer=null,this.zone.run(()=>this.service.openAddWidgetPicker(n.anchor,n.cell))},nd)))}pointerMove(t){if(!this.holdTimer||!this.downPoint)return;let e=t.clientX-this.downPoint.x,n=t.clientY-this.downPoint.y;e*e+n*n>Ca*Ca&&this.cancelHold()}cancelHold(){this.holdTimer&&clearTimeout(this.holdTimer),this.holdTimer=null,this.downPoint=null}hitTest(t,e){let n=this.host.nativeElement.querySelectorAll(".pe-anchor");for(let o of Array.from(n)){let r=o.getBoundingClientRect();if(t<r.left||t>r.right||e<r.top||e>r.bottom)continue;let d=o.dataset.anchor,{cols:g,rows:E}=Wt[d],T=Math.min(g-1,Math.max(0,Math.floor((t-r.left)/r.width*g))),k=Math.min(E-1,Math.max(0,Math.floor((e-r.top)/r.height*E)));return{anchor:d,cell:{col:T,row:k}}}return null}static \u0275fac=function(e){return new(e||i)};static \u0275cmp=I({type:i,selectors:[["fb-plotterext-overlay"]],decls:3,vars:1,consts:[[1,"pe-chips",3,"pe-chips-low"],[1,"pe-anchor",3,"class","style"],[1,"pe-chips"],[1,"pe-chip"],[1,"pe-chip-icon"],[1,"pe-chip-label"],["aria-label","Clear filter",1,"pe-chip-clear",3,"click"],[1,"pe-anchor"],[1,"pe-cell",3,"style"],[1,"pe-cell"],[3,"placed"]],template:function(e,n){e&1&&(f(0,Jc,3,3,"div",0),z(1,td,3,5,"div",1,Ce)),e&2&&(h(n.service.filterChips().length?0:-1),c(),q(n.anchors))},dependencies:[Tt,he,fe],styles:["[_nghost-%COMP%]{position:absolute;inset:0;z-index:2000;pointer-events:none;--pe-cell-w: clamp(96px, 11vw, 150px);--pe-cell-h: clamp(84px, 9.5vw, 124px);--pe-gap: 6px;--pe-margin: 10px}.pe-anchor[_ngcontent-%COMP%]{position:absolute;display:grid;grid-template-rows:repeat(2,var(--pe-cell-h));gap:var(--pe-gap);pointer-events:none}.pe-tr[_ngcontent-%COMP%]{top:0;right:0}.pe-ct[_ngcontent-%COMP%]{top:0;left:50%;transform:translate(calc(-50% + var(--pe-center-shift, 0px)))}.pe-cb[_ngcontent-%COMP%]{bottom:0;left:50%;transform:translate(calc(-50% + var(--pe-center-shift, 0px)))}.pe-bl[_ngcontent-%COMP%]{bottom:0;left:0}.pe-br[_ngcontent-%COMP%]{bottom:0;right:0}.pe-cell[_ngcontent-%COMP%]{pointer-events:auto;overflow:hidden;border-radius:10px;box-shadow:0 1px 5px #00000059}.pe-chips[_ngcontent-%COMP%]{position:absolute;top:8px;left:50%;transform:translate(-50%);display:flex;gap:6px;pointer-events:auto;z-index:1}.pe-chips-low[_ngcontent-%COMP%]{top:calc(2 * var(--pe-cell-h) + var(--pe-gap) + 10px)}.pe-chip[_ngcontent-%COMP%]{display:flex;align-items:center;gap:4px;background:#141a20d9;color:#e8edf2;border-radius:16px;padding:3px 6px 3px 10px;font-size:12px;max-width:320px;box-shadow:0 1px 4px #00000059}.pe-chip-icon[_ngcontent-%COMP%]{font-size:16px;width:16px;height:16px;color:#29b6f6}.pe-chip-label[_ngcontent-%COMP%]{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.pe-chip-clear[_ngcontent-%COMP%]{display:flex;align-items:center;justify-content:center;border:none;background:#ffffff26;color:#e8edf2;border-radius:50%;width:20px;height:20px;padding:0;cursor:pointer}.pe-chip-clear[_ngcontent-%COMP%] mat-icon[_ngcontent-%COMP%]{font-size:14px;width:14px;height:14px}"]})};var id=["frame"],od=(i,t)=>t.key;function rd(i,t){if(i&1&&b(0,"fb-plotterext-runtime",0),i&2){let e=t.$implicit;v("entry",e)}}var wn=class i{constructor(t,e){this.service=t;this.sanitizer=e}service;sanitizer;entry=ee.required();frame;url;detach=null;ngOnInit(){let{extension:t,runtime:e}=this.entry();this.url=this.sanitizer.bypassSecurityTrustResourceUrl(e.url?this.service.resolveAssetUrl(e.url):"about:blank"),this.detach=this.service.attachBackground(this.frame.nativeElement,{extension:t,runtime:e})}ngOnDestroy(){this.detach?.(),this.detach=null}static \u0275fac=function(e){return new(e||i)(Ee(j),Ee(ce))};static \u0275cmp=I({type:i,selectors:[["fb-plotterext-runtime"]],viewQuery:function(e,n){if(e&1&&Q(id,7),e&2){let o;N(o=F())&&(n.frame=o.first)}},inputs:{entry:[1,"entry"]},decls:2,vars:2,consts:[["frame",""],["sandbox","allow-scripts allow-same-origin allow-forms","aria-hidden","true",3,"src","title"]],template:function(e,n){e&1&&Ke(0,"iframe",1,0),e&2&&Te("src",n.url,re)("title",n.entry().runtime.id)},styles:["[_nghost-%COMP%]{display:none}"]})},Mt=class i{service=C(j);static \u0275fac=function(e){return new(e||i)};static \u0275cmp=I({type:i,selectors:[["fb-plotterext-runtimes"]],decls:2,vars:0,consts:[[3,"entry"]],template:function(e,n){e&1&&z(0,rd,1,1,"fb-plotterext-runtime",0,od),e&2&&q(n.service.backgroundRuntimes())},dependencies:[wn],styles:["[_nghost-%COMP%]{display:none}"]})};var ad=["frame"],sd=(i,t)=>t.key;function ld(i,t){if(i&1){let e=y();a(0,"div",1)(1,"span"),p(2),s(),a(3,"button",4),u("click",function(){m(e);let o=l();return _(o.service.closeVisiblePanel())}),a(4,"mat-icon"),p(5,"close"),s()()()}i&2&&(c(2),$(t.panel.title))}function cd(i,t){if(i&1&&(a(0,"div",5),b(1,"fb-plotterext-panel-frame",6),s()),i&2){let e=t.$implicit;B("pe-body-hidden",!e.visible),c(),v("panelKey",e.key)("extension",e.extension)("panel",e.panel)}}var xn=class i{panelKey=ee.required();extension=ee.required();panel=ee.required();frame;url;detach=null;service=C(j);sanitizer=C(ce);ngOnInit(){this.url=this.sanitizer.bypassSecurityTrustResourceUrl(this.panel().url?this.service.resolveAssetUrl(this.panel().url):"about:blank"),this.detach=this.service.attachPanel(this.frame.nativeElement,{extension:this.extension(),panel:this.panel(),close:()=>this.service.closePanel(this.panelKey())})}ngOnDestroy(){this.detach?.(),this.detach=null}static \u0275fac=function(e){return new(e||i)};static \u0275cmp=I({type:i,selectors:[["fb-plotterext-panel-frame"]],viewQuery:function(e,n){if(e&1&&Q(ad,7),e&2){let o;N(o=F())&&(n.frame=o.first)}},inputs:{panelKey:[1,"panelKey"],extension:[1,"extension"],panel:[1,"panel"]},decls:2,vars:2,consts:[["frame",""],["sandbox","allow-scripts allow-same-origin allow-forms",3,"src","title"]],template:function(e,n){e&1&&Ke(0,"iframe",1,0),e&2&&Te("src",n.url,re)("title",n.panel().title)},styles:["[_nghost-%COMP%]{display:block;width:100%;height:100%}iframe[_ngcontent-%COMP%]{display:block;width:100%;height:100%;border:none}"]})},At=class i{service=C(j);isOpen=L(()=>!!this.service.visiblePanel());constructor(){let t=!0;Z(()=>{if(this.isOpen(),t){t=!1;return}this.service.pulseMapResize()})}onTransitionEnd(t){t.propertyName==="width"&&this.service.pulseMapResize(80)}static \u0275fac=function(e){return new(e||i)};static \u0275cmp=I({type:i,selectors:[["fb-plotterext-panel-drawer"]],hostVars:2,hostBindings:function(e,n){e&2&&B("pe-open",n.isOpen())},decls:5,vars:1,consts:[[1,"pe-drawer-inner",3,"transitionend"],[1,"pe-drawer-head"],[1,"pe-drawer-bodies"],[1,"pe-drawer-body",3,"pe-body-hidden"],["mat-icon-button","","aria-label","Close panel",3,"click"],[1,"pe-drawer-body"],[3,"panelKey","extension","panel"]],template:function(e,n){if(e&1&&(a(0,"div",0),u("transitionend",function(r){return n.onTransitionEnd(r)}),f(1,ld,6,1,"div",1),a(2,"div",2),z(3,cd,2,5,"div",3,sd),s()()),e&2){let o;c(),h((o=n.service.visiblePanel())?1:-1,o),c(2),q(n.service.openPanels())}},dependencies:[Pe,Ae,he,fe,xn],styles:["[_nghost-%COMP%]{flex:0 0 auto;height:100%;width:0;max-width:92vw;overflow:hidden;background:#1d242b;color:#e8edf2}.pe-open[_nghost-%COMP%]{width:390px;box-shadow:-2px 0 8px #0006}.pe-drawer-inner[_ngcontent-%COMP%]{width:390px;max-width:92vw;height:100%;display:flex;flex-direction:column}.pe-drawer-head[_ngcontent-%COMP%]{display:flex;align-items:center;justify-content:space-between;padding:4px 4px 4px 14px;font-weight:600;border-bottom:1px solid rgba(255,255,255,.12);flex:0 0 auto}.pe-drawer-bodies[_ngcontent-%COMP%]{flex:1;min-height:0;position:relative}.pe-drawer-body[_ngcontent-%COMP%]{position:absolute;inset:0}.pe-body-hidden[_ngcontent-%COMP%]{visibility:hidden;pointer-events:none}"]})};var ud=["frame"];function md(i,t){if(i&1){let e=y();a(0,"button",10),u("pointerenter",function(o){m(e);let r=l();return _(r.onHoverReveal(o))})("pointerdown",function(o){m(e);let r=l();return r.revealBar(),_(r.startGesture(o,"move"))})("click",function(){m(e);let o=l();return _(o.revealBar())}),s()}if(i&2){let e=l();J("tabindex",e.barShown()?-1:0)}}function _d(i,t){if(i&1){let e=y();a(0,"button",5),u("click",function(){m(e);let o=l();return _(o.toggleCollapsed())}),a(1,"mat-icon"),p(2),s()(),a(3,"button",11),u("menuOpened",function(){m(e);let o=l();return _(o.holdBar("menu"))})("menuClosed",function(){m(e);let o=l();return _(o.releaseBar("menu"))}),a(4,"mat-icon"),p(5,"more_vert"),s()()}if(i&2){let e=l(),n=ve(9);v("matTooltip",e.def().collapsed?"Expand":"Collapse"),J("aria-label",e.def().collapsed?"Expand":"Collapse"),c(2),$(e.def().collapsed?"expand_more":"expand_less"),c(),v("matMenuTriggerFor",n)}}function fd(i,t){if(i&1){let e=y();a(0,"button",12),u("click",function(){let o=m(e).$implicit,r=l();return _(r.windows.setOpacity(r.def().id,o))}),a(1,"mat-icon"),p(2),s(),a(3,"span"),p(4),s()()}if(i&2){let e=t.$implicit,n=l();J("aria-checked",n.def().opacity===e),c(2),$(n.def().opacity===e?"radio_button_checked":"radio_button_unchecked"),c(2),pe("Opacity ",e*100,"%")}}function hd(i,t){if(i&1){let e=y();a(0,"div",14),u("pointerenter",function(o){let r=m(e).$implicit,d=l(2);return _(r.includes("n")&&d.onHoverReveal(o))})("pointerdown",function(o){let r=m(e).$implicit,d=l(2);return _(d.startGesture(o,r))}),s()}if(i&2){let e=t.$implicit;J("data-mode",e)}}function gd(i,t){if(i&1&&z(0,hd,1,1,"div",13,Ce),i&2){let e=l();q(e.resizeModes)}}var Cd=xi.barH,va=3e3,bd=1e3,Pt=class i{def=ee.required();frame;resizeModes=["n","s","e","w","ne","nw","se","sw"];opacities=[1,.8,.6,.4];windows=C(ot);host=C(j);sanitizer=C(ce);zone=C(X);el=C(Y).nativeElement;src;detach=null;z=L(()=>(this.windows.zOrder().indexOf(this.def().id)+1)*2);front=L(()=>this.windows.zOrder().at(-1)===this.def().id);presentation=L(()=>this.windows.presentation(this.def(),this.windows.area()));floating=L(()=>this.presentation()==="floating");movable=L(()=>this.floating()&&this.def().movable);resizable=L(()=>this.floating()&&this.def().resizable&&!this.def().collapsed);hides=L(()=>this.def().userClose==="hide"&&!this.def().modal);rect=L(()=>this.windows.rectOf(this.def(),this.windows.area()));drawn=L(()=>{let t=this.rect();return this.def().collapsed?qe(ze({},t),{h:Cd}):t});autoHide=L(()=>this.def().titleBar==="autoHide"&&!this.def().collapsed);barShown=W(!0);barHolds=new Set;barTimer;gesture=null;frameReq=0;constructor(){Z(()=>{this.autoHide()&&Nn(()=>this.revealBar())}),Z(()=>{let t=this.drawn();this.gesture||this.applyRect(t)})}ngOnInit(){let t=this.def().panel.url;this.src=this.sanitizer.bypassSecurityTrustResourceUrl(t?this.host.resolveAssetUrl(t):"about:blank"),this.detach=this.host.attachWindow(this.frame.nativeElement,this.def()),this.frame.nativeElement.addEventListener("load",this.watchEscape)}watchEscape=()=>{try{this.frame.nativeElement.contentWindow?.addEventListener("keydown",t=>{t.key==="Escape"&&this.def().modal&&this.zone.run(()=>this.windows.close(this.def().id,"user"))})}catch(t){}};ngOnDestroy(){this.frame.nativeElement.removeEventListener("load",this.watchEscape),this.endGesture(),clearTimeout(this.barTimer),this.detach?.(),this.detach=null}revealBar(){this.barShown.set(!0),this.scheduleBarHide(va)}holdBar(t){this.barHolds.add(t),clearTimeout(this.barTimer),this.barShown.set(!0)}releaseBar(t,e=va){this.barHolds.delete(t)&&this.scheduleBarHide(e)}scheduleBarHide(t){clearTimeout(this.barTimer),!this.barHolds.size&&(this.barTimer=setTimeout(()=>this.barShown.set(!1),t))}isHover(t){return t.pointerType==="mouse"||t.pointerType==="pen"}onHoverReveal(t){this.autoHide()&&this.isHover(t)&&this.revealBar()}onBarEnter(t){this.isHover(t)&&this.holdBar("hover")}onBarLeave(t){this.isHover(t)&&this.releaseBar("hover",bd)}onFocusIn(t){let e=t.target;e.closest(".fb-pe-window__bar, .fb-pe-window__grip")&&e.matches(":focus-visible")&&this.holdBar("focus")}startGesture(t,e){if(this.gesture||!t.isPrimary||t.pointerType==="mouse"&&t.button!==0||(e==="move"?!this.movable():!this.resizable()))return;let n=t.currentTarget,o=t.target.closest("a, button");if(e==="move"&&o&&o!==n)return;t.preventDefault();let r=this.drawn();this.gesture={pointerId:t.pointerId,mode:e,startX:t.clientX,startY:t.clientY,start:r,current:r,target:n},n.setPointerCapture(t.pointerId),this.holdBar("gesture"),this.windows.gestureActive.set(!0),this.zone.runOutsideAngular(()=>{n.addEventListener("pointermove",this.onMove),n.addEventListener("pointerup",this.onEnd),n.addEventListener("pointercancel",this.onEnd),n.addEventListener("lostpointercapture",this.onEnd)})}onMove=t=>{let e=this.gesture;!e||t.pointerId!==e.pointerId||(e.current=yi(e.start,e.mode,t.clientX-e.startX,t.clientY-e.startY,this.windows.area()),this.frameReq||(this.frameReq=requestAnimationFrame(()=>{this.frameReq=0,this.gesture&&this.applyRect(this.gesture.current)})))};onEnd=t=>{this.gesture&&t.pointerId===this.gesture.pointerId&&this.zone.run(()=>this.endGesture(!0))};endGesture(t=!1){let e=this.gesture;if(e){if(this.gesture=null,this.frameReq&&(cancelAnimationFrame(this.frameReq),this.frameReq=0),e.target.removeEventListener("pointermove",this.onMove),e.target.removeEventListener("pointerup",this.onEnd),e.target.removeEventListener("pointercancel",this.onEnd),e.target.removeEventListener("lostpointercapture",this.onEnd),e.target.hasPointerCapture(e.pointerId)&&e.target.releasePointerCapture(e.pointerId),this.windows.gestureActive.set(!1),this.releaseBar("gesture"),t&&e.current!==e.start){let{w:n,h:o}=this.def().collapsed?this.rect():e.current;this.windows.setRectFromGesture(this.def().id,{x:e.current.x,y:e.current.y,w:n,h:o})}this.applyRect(t?e.current:this.drawn())}}toggleCollapsed(){this.windows.setCollapsed(this.def().id,!this.def().collapsed)}onBarDoubleClick(t){this.def().modal||t.target.closest("a, button")||this.toggleCollapsed()}applyRect(t){this.el.style.transform=`translate(${Math.round(t.x)}px, ${Math.round(t.y)}px)`,this.el.style.width=`${Math.round(t.w)}px`,this.el.style.height=`${Math.round(t.h)}px`}static \u0275fac=function(e){return new(e||i)};static \u0275cmp=I({type:i,selectors:[["fb-pe-window"]],viewQuery:function(e,n){if(e&1&&Q(ud,7),e&2){let o;N(o=F())&&(n.frame=o.first)}},hostAttrs:[1,"fb-pe-window"],hostVars:19,hostBindings:function(e,n){e&1&&u("pointerdown",function(){return n.windows.focus(n.def().id)})("focusin",function(r){return n.onFocusIn(r)})("focusout",function(){return n.releaseBar("focus")}),e&2&&(J("data-window-id",n.def().id),G("z-index",n.z())("opacity",n.def().opacity),B("collapsed",n.def().collapsed)("hidden",!n.def().visible)("modal",n.def().modal)("fullscreen",n.presentation()==="fullscreen")("fixed-place",!n.movable())("bar-overlay",n.autoHide())("bar-hidden",n.autoHide()&&!n.barShown()))},inputs:{def:[1,"def"]},decls:16,vars:12,consts:[["moremenu","matMenu"],["frame",""],["aria-label","Show title bar",1,"fb-pe-window__grip"],[1,"fb-pe-window__bar",3,"pointerenter","pointerleave","pointerdown","dblclick"],[1,"fb-pe-window__title",3,"title"],["mat-icon-button","",1,"fb-pe-window__btn",3,"click","matTooltip"],["xPosition","before"],["mat-menu-item","","role","menuitemradio"],[1,"fb-pe-window__body"],["sandbox","allow-scripts allow-same-origin allow-forms",3,"src","title"],["aria-label","Show title bar",1,"fb-pe-window__grip",3,"pointerenter","pointerdown","click"],["mat-icon-button","","matTooltip","More","aria-label","More",1,"fb-pe-window__btn",3,"menuOpened","menuClosed","matMenuTriggerFor"],["mat-menu-item","","role","menuitemradio",3,"click"],[1,"fb-pe-window__handle"],[1,"fb-pe-window__handle",3,"pointerenter","pointerdown"]],template:function(e,n){if(e&1){let o=y();f(0,md,1,1,"button",2),a(1,"div",3),u("pointerenter",function(d){return n.onBarEnter(d)})("pointerleave",function(d){return n.onBarLeave(d)})("pointerdown",function(d){return m(o),n.revealBar(),_(n.startGesture(d,"move"))})("dblclick",function(d){return n.onBarDoubleClick(d)}),a(2,"span",4),p(3),s(),f(4,_d,6,4),a(5,"button",5),u("click",function(){return n.windows.userClose(n.def().id)}),a(6,"mat-icon"),p(7),s()()(),a(8,"mat-menu",6,0),z(10,fd,5,3,"button",7,Ce),s(),a(12,"div",8),b(13,"iframe",9,1),s(),f(15,gd,2,0)}e&2&&(h(n.autoHide()?0:-1),c(),B("front",n.front()),c(),v("title",n.def().title),c(),$(n.def().title),c(),h(n.def().modal?-1:4),c(),v("matTooltip",n.hides()?"Hide":"Close"),J("aria-label",n.hides()?"Hide":"Close"),c(2),$(n.hides()?"remove":"close"),c(3),q(n.opacities),c(3),v("src",n.src,re)("title",n.def().title),c(2),h(n.resizable()?15:-1))},dependencies:[Pe,Ae,he,fe,lt,at,rt,st,it,nt],styles:['[_nghost-%COMP%]{position:absolute;top:0;left:0;display:flex;flex-direction:column;pointer-events:auto;box-sizing:border-box;background:#fafafa;border:1px solid rgba(0,0,0,.3);border-radius:6px;box-shadow:0 4px 16px #00000059;overflow:visible}.dark-theme[_nghost-%COMP%], .dark-theme [_nghost-%COMP%]{background:#303030;border-color:#ffffff40}.fb-pe-window__bar[_ngcontent-%COMP%]{flex:0 0 32px;height:32px;display:flex;align-items:center;gap:2px;padding-left:8px;cursor:grab;touch-action:none;-webkit-user-select:none;user-select:none;border-radius:6px 6px 0 0;background:#e0e0e0;color:#000000de}.fb-pe-window__bar.front[_ngcontent-%COMP%]{background:#c5cae9}.dark-theme[_nghost-%COMP%] .fb-pe-window__bar[_ngcontent-%COMP%], .dark-theme [_nghost-%COMP%] .fb-pe-window__bar[_ngcontent-%COMP%]{background:#424242;color:#fff}.dark-theme[_nghost-%COMP%] .fb-pe-window__bar.front[_ngcontent-%COMP%], .dark-theme [_nghost-%COMP%] .fb-pe-window__bar.front[_ngcontent-%COMP%]{background:#3949ab}.fb-pe-window__title[_ngcontent-%COMP%]{flex:1 1 auto;overflow:hidden;white-space:nowrap;text-overflow:ellipsis;font-size:13px;font-weight:500}.fb-pe-window__btn[_ngcontent-%COMP%]{--mat-icon-button-state-layer-size: 28px;width:28px;height:28px;padding:2px;cursor:pointer}.fb-pe-window__btn[_ngcontent-%COMP%] mat-icon[_ngcontent-%COMP%]{font-size:18px;width:18px;height:18px}.fb-pe-window__body[_ngcontent-%COMP%]{position:relative;flex:1 1 auto;min-height:0;border-radius:0 0 6px 6px;overflow:hidden}.fb-pe-window__body[_ngcontent-%COMP%] iframe[_ngcontent-%COMP%]{display:block;width:100%;height:100%;border:0;background:#fff}.bar-overlay[_nghost-%COMP%] .fb-pe-window__bar[_ngcontent-%COMP%]{position:absolute;top:0;left:0;right:0;z-index:2;transition:opacity .15s ease-out,transform .15s ease-out}.bar-overlay[_nghost-%COMP%] .fb-pe-window__body[_ngcontent-%COMP%]{border-radius:6px}.bar-hidden[_nghost-%COMP%] .fb-pe-window__bar[_ngcontent-%COMP%]{opacity:0;transform:translateY(-6px);visibility:hidden;transition:opacity .3s ease-in,transform .3s ease-in,visibility 0s linear .3s}.fb-pe-window__grip[_ngcontent-%COMP%]{position:absolute;top:0;left:50%;z-index:1;width:64px;height:16px;margin:0 0 0 -32px;padding:0;border:0;background:transparent;cursor:grab;touch-action:none;transition:opacity .15s ease-out}.fb-pe-window__grip[_ngcontent-%COMP%]:before{content:"";position:absolute;top:5px;left:14px;right:14px;height:5px;border-radius:3px;background:#00000073;box-shadow:0 0 0 1px #fff9}[_nghost-%COMP%]:not(.bar-hidden) .fb-pe-window__grip[_ngcontent-%COMP%]{opacity:0}@media(pointer:coarse){.fb-pe-window__grip[_ngcontent-%COMP%]{width:96px;height:24px;margin-left:-48px}.fb-pe-window__grip[_ngcontent-%COMP%]:before{top:9px;left:24px;right:24px}}@media(prefers-reduced-motion:reduce){.fb-pe-window__bar[_ngcontent-%COMP%], .fb-pe-window__grip[_ngcontent-%COMP%]{transition:none!important}}.collapsed[_nghost-%COMP%] .fb-pe-window__body[_ngcontent-%COMP%]{visibility:hidden}.collapsed[_nghost-%COMP%] .fb-pe-window__bar[_ngcontent-%COMP%]{border-radius:6px}.collapsed[_nghost-%COMP%] .fb-pe-window__handle[_ngcontent-%COMP%]{display:none}.fb-pe-window__handle[_ngcontent-%COMP%]{position:absolute;z-index:3;touch-action:none;--edge: 10px;--out: calc(var(--edge) / -2)}@media(pointer:coarse){.fb-pe-window__handle[_ngcontent-%COMP%]{--edge: 16px}}.fb-pe-window__handle[data-mode*=n][_ngcontent-%COMP%]{top:var(--out)}.fb-pe-window__handle[data-mode*=s][_ngcontent-%COMP%]{bottom:var(--out)}.fb-pe-window__handle[data-mode*=e][_ngcontent-%COMP%]{right:var(--out)}.fb-pe-window__handle[data-mode*=w][_ngcontent-%COMP%]{left:var(--out)}.fb-pe-window__handle[data-mode=n][_ngcontent-%COMP%], .fb-pe-window__handle[data-mode=s][_ngcontent-%COMP%]{left:var(--edge);right:var(--edge);height:var(--edge);cursor:ns-resize}.fb-pe-window__handle[data-mode=e][_ngcontent-%COMP%], .fb-pe-window__handle[data-mode=w][_ngcontent-%COMP%]{top:var(--edge);bottom:var(--edge);width:var(--edge);cursor:ew-resize}.fb-pe-window__handle[data-mode=ne][_ngcontent-%COMP%], .fb-pe-window__handle[data-mode=nw][_ngcontent-%COMP%], .fb-pe-window__handle[data-mode=se][_ngcontent-%COMP%], .fb-pe-window__handle[data-mode=sw][_ngcontent-%COMP%]{width:calc(var(--edge) * 1.5);height:calc(var(--edge) * 1.5)}.fb-pe-window__handle[data-mode=ne][_ngcontent-%COMP%], .fb-pe-window__handle[data-mode=sw][_ngcontent-%COMP%]{cursor:nesw-resize}.fb-pe-window__handle[data-mode=nw][_ngcontent-%COMP%], .fb-pe-window__handle[data-mode=se][_ngcontent-%COMP%]{cursor:nwse-resize}.hidden[_nghost-%COMP%]{display:none}.fullscreen[_nghost-%COMP%]{border-radius:0}.fullscreen[_nghost-%COMP%] .fb-pe-window__bar[_ngcontent-%COMP%], .fullscreen[_nghost-%COMP%] .fb-pe-window__body[_ngcontent-%COMP%]{border-radius:0;cursor:default}.fixed-place[_nghost-%COMP%] .fb-pe-window__bar[_ngcontent-%COMP%]{cursor:default}'],changeDetection:0})};var vd=(i,t)=>t.id;function wd(i,t){i&1&&(a(0,"div",2),u("pointerdown",function(n){return n.stopPropagation()}),s()),i&2&&G("z-index",t)}function xd(i,t){if(i&1&&b(0,"fb-pe-window",1),i&2){let e=t.$implicit;v("def",e)}}var yd="fb-pe-window-gesture",kt=class i{inset=ee(0);service=C(ot);overlays=C(Je);document=C(ye);el=C(Y).nativeElement;zone=C(X);observer=null;backdropZ=L(()=>{let t=this.service.activeModal();return t?(this.service.zOrder().indexOf(t.id)+1)*2-1:0});constructor(){Z(()=>{this.document.body.classList.toggle(yd,this.service.gestureActive())})}ngAfterViewInit(){this.measure(),!(typeof ResizeObserver>"u")&&(this.observer=new ResizeObserver(()=>this.zone.run(()=>this.measure())),this.observer.observe(this.el))}ngOnDestroy(){this.observer?.disconnect()}measure(){let t=this.el.getBoundingClientRect();t.width>0&&t.height>0&&this.service.setArea({w:t.width,h:t.height})}onEscape(t){if(t.defaultPrevented||this.overlays.getContainerElement().querySelector(".cdk-overlay-pane"))return;let e=this.service.activeModal();e&&this.service.close(e.id,"user")}onWindowBlur(){setTimeout(()=>{let t=this.document.activeElement;if(t?.tagName!=="IFRAME")return;let e=t.closest("[data-window-id]")?.getAttribute("data-window-id");e&&this.service.focus(e)})}static \u0275fac=function(e){return new(e||i)};static \u0275cmp=I({type:i,selectors:[["fb-pe-window-layer"]],hostVars:4,hostBindings:function(e,n){e&1&&u("blur",function(){return n.onWindowBlur()},kn)("keydown.escape",function(r){return n.onEscape(r)},Oe),e&2&&G("left",n.inset(),"px")("right",n.inset(),"px")},inputs:{inset:[1,"inset"]},decls:3,vars:1,consts:[[1,"fb-pe-window-backdrop",3,"z-index"],[3,"def"],[1,"fb-pe-window-backdrop",3,"pointerdown"]],template:function(e,n){if(e&1&&(f(0,wd,1,2,"div",0),z(1,xd,1,1,"fb-pe-window",1,vd)),e&2){let o;h((o=n.backdropZ())?0:-1,o),c(),q(n.service.windows())}},dependencies:[Pt],styles:["[_nghost-%COMP%]{position:absolute;inset:0;z-index:4850;pointer-events:none;overflow:hidden}.fb-pe-window-backdrop[_ngcontent-%COMP%]{position:absolute;inset:0;pointer-events:auto;background:#00000052}"],changeDetection:0})};var Ed=["sideright"],Td=["fbMap"],Sd=()=>[Hi],Md=()=>[Zi],Ad=()=>[qi],Pd=()=>[Di],kd=()=>[Oi],Id=()=>[Ui],Dd=()=>[Fi],Rd=()=>[Yi],Od=()=>[to],Ld=(i,t)=>({"dark-theme":i,"app-night":t}),xe=(i,t)=>({"button-primary":i,"button-toolbar":t}),Vd=(i,t)=>t.extension+"/"+t.button.id,Nd=(i,t)=>t[0];function Fd(i,t){if(i&1){let e=y();a(0,"button",9),u("click",function(){m(e);let o=l();return _(o.displayLeftMenu("resourceGroups",!0))}),a(1,"mat-icon"),p(2,"category"),s(),p(3," \xA0Groups "),s()}}function Bd(i,t){if(i&1){let e=y();a(0,"button",9),u("click",function(){m(e);let o=l();return _(o.showOverlaysMoved())}),a(1,"mat-icon"),p(2,"layers"),s(),p(3," \xA0Overlays "),s()}}function $d(i,t){if(i&1){let e=y();a(0,"button",9),u("click",function(){m(e);let o=l();return _(o.displayLeftMenu("trackList",!0))}),a(1,"mat-icon",35),p(2,"show_chart"),s(),p(3," \xA0Tracks "),s()}}function zd(i,t){if(i&1){let e=y();a(0,"div")(1,"button",9),u("click",function(){let o=m(e).$implicit,r=l(2);return _(r.openExperiment({choice:o,value:null}))}),b(2,"mat-icon",36),p(3),s()()}if(i&2){let e=t.$implicit;c(3),pe(" \xA0",e," ")}}function qd(i,t){if(i&1&&(a(0,"div"),z(1,zd,4,1,"div",null,Ce),s()),i&2){let e=l();c(),q(e.app.config.resources.paths.sort())}}function Ud(i,t){if(i&1){let e=y();a(0,"a",9),u("click",function(){m(e);let o=l();return _(o.clearTrail(o.app.data.serverTrail))}),a(1,"mat-icon"),p(2,"clear_all"),s(),a(3,"span"),p(4),s()(),a(5,"a",9),u("click",function(){m(e);let o=l();return _(o.trailToRoute())}),a(6,"mat-icon"),p(7,"insights"),s(),a(8,"span"),p(9,"Trail to Route"),s()(),b(10,"mat-divider")}if(i&2){let e=l();c(4),pe("",e.app.data.serverTrail?"Refresh":"Clear"," Trail")}}function Hd(i,t){if(i&1){let e=y();a(0,"a",9),u("click",function(){m(e);let o=l();return _(o.clearDestination())}),a(1,"mat-icon"),p(2,"clear_all"),s(),a(3,"span"),p(4,"Stop Navigating"),s()(),a(5,"a",9),u("click",function(){m(e);let o=l();return _(o.clearCourseData())}),a(6,"mat-icon"),p(7,"clear_all"),s(),a(8,"span"),p(9,"Clear Course Data"),s()(),b(10,"mat-divider")}}function Wd(i,t){if(i&1){let e=y();b(0,"mat-divider"),a(1,"a",9),u("click",function(){m(e);let o=l();return _(o.showWeather("forecast"))}),a(2,"mat-icon"),p(3,"air"),s(),a(4,"span"),p(5,"Weather Forecast"),s()()}}function Gd(i,t){if(i&1){let e=y();a(0,"a",9),u("click",function(){m(e);let o=l();return _(o.skres.newWaypointAt(o.app.data.vessels.active.position))}),a(1,"mat-icon",11),p(2,"add_location"),s(),a(3,"span"),p(4,"Add Waypoint at Vessel"),s()()}}function jd(i,t){if(i&1){let e=y();a(0,"a",9),u("click",function(){m(e);let o=l();return _(o.drawFeature("note"))}),a(1,"mat-icon"),p(2,"local_offer"),s(),a(3,"span"),p(4,"Add Note"),s()()}}function Kd(i,t){if(i&1){let e=y();a(0,"a",9),u("click",function(){m(e);let o=l();return _(o.showLogin(null,!1))}),a(1,"mat-icon",37),p(2," account_circle "),s(),a(3,"span"),p(4),s()(),b(5,"mat-divider")}if(i&2){let e=l();c(),v("matBadgeHidden",e.app.isLoggedIn()),c(3),$(e.app.isLoggedIn()?"Change User":"Login")}}function Xd(i,t){if(i&1){let e=y();a(0,"a",9),u("click",function(){m(e);let o=l();return _(o.displayLeftMenu("anchorWatch",!0))}),a(1,"mat-icon"),p(2,"anchor"),s(),a(3,"span"),p(4,"Anchor Watch"),s()()}}function Zd(i,t){i&1&&(a(0,"mat-icon",16),p(1,"check_box"),s())}function Qd(i,t){i&1&&b(0,"mat-icon",38)}function Yd(i,t){if(i&1){let e=y();a(0,"a",9),u("click",function(){m(e);let o=l();return _(o.toggleRadarOverlay())}),f(1,Zd,2,0,"mat-icon",16)(2,Qd,1,0,"mat-icon",38),a(3,"span"),p(4,"Radar Overlay"),s()()}if(i&2){let e=l();c(),h(e.app.uiCtrl().radarLayer?1:2)}}function Jd(i,t){if(i&1){let e=y();a(0,"a",9),u("click",function(){m(e);let o=l();return _(o.showPlaybackSettings())}),a(1,"mat-icon"),p(2,"history"),s(),a(3,"span"),p(4,"Playback History"),s()()}}function ep(i,t){if(i&1){let e=y();a(0,"radar-panel",44),u("connect",function(){m(e);let o=l(2);return _(o.connectRadar())})("disconnect",function(){m(e);let o=l(2);return _(o.disconnectRadar())}),s()}}function tp(i,t){if(i&1){let e=y();a(0,"note-panel",45),u("edit",function(o){m(e);let r=l(2);return _(r.skres.showNoteEditor({id:o}))})("move",function(o){m(e);let r=l(2);return _(r.onNoteMove(o))})("panTo",function(o){m(e);let r=l(2);return _(r.centerAndZoom(o.center,o.zoomLevel))}),s()}if(i&2){let e=l(2);v("note",e.infoPanel.item().resource)("id",e.infoPanel.item().id)("interacting",e.isInteracting())}}function np(i,t){if(i&1){let e=y();a(0,"region-panel",46),u("edit",function(o){m(e);let r=l(2);return _(r.skres.editRegionInfo(o))})("panTo",function(o){m(e);let r=l(2);return _(r.centerAndZoom(o.center,o.zoomLevel))}),s()}if(i&2){let e=l(2);v("region",e.infoPanel.item().resource)("id",e.infoPanel.item().id)("related",e.infoPanel.related())("interacting",e.isInteracting())}}function ip(i,t){if(i&1){let e=y();a(0,"waypoint-panel",47),u("edit",function(o){m(e);let r=l(2);return _(r.skres.editWaypointInfo(o))})("panTo",function(o){m(e);let r=l(2);return _(r.centerAndZoom(o.center,o.zoomLevel))}),s()}if(i&2){let e=l(2);v("waypoint",e.infoPanel.item().resource)("id",e.infoPanel.item().id)("related",e.infoPanel.related())("interacting",e.isInteracting())}}function op(i,t){if(i&1){let e=y();a(0,"route-panel",48),u("edit",function(o){m(e);let r=l(2);return _(r.onRouteInfoEdit(o))})("activate",function(o){m(e);let r=l(2);return _(r.activateRoute(o))})("panTo",function(o){m(e);let r=l(2);return _(r.centerAndZoom(o.center,o.zoomLevel))}),s()}if(i&2){let e=l(2);v("route",e.infoPanel.item().resource)("id",e.infoPanel.item().id)("related",e.infoPanel.related())("interacting",e.isInteracting())}}function rp(i,t){if(i&1){let e=y();a(0,"info-panel",39),u("closed",function(){m(e);let o=l();return _(o.closeDrawer())}),f(1,ep,1,0,"radar-panel"),f(2,tp,1,3,"note-panel",40),f(3,np,1,4,"region-panel",41),f(4,ip,1,4,"waypoint-panel",42),f(5,op,1,4,"route-panel",43),s()}if(i&2){let e,n,o,r,d,g=l();c(),h(((e=g.infoPanel.item())==null?null:e.type)==="radars"?1:-1),c(),h(((n=g.infoPanel.item())==null?null:n.type)==="notes"?2:-1),c(),h(((o=g.infoPanel.item())==null?null:o.type)==="regions"?3:-1),c(),h(((r=g.infoPanel.item())==null?null:r.type)==="waypoints"?4:-1),c(),h(((d=g.infoPanel.item())==null?null:d.type)==="routes"?5:-1)}}function ap(i,t){if(i&1){let e=y();a(0,"a",56),u("click",function(){m(e);let o=l(2);return _(o.closeInstrumentPanel())}),a(1,"mat-icon"),p(2,"open_in_new"),s()()}if(i&2){let e=l(2);v("href",e.instUrl(),Pn)}}function sp(i,t){if(i&1&&b(0,"iframe",55),i&2){let e=l(2);v("src",e.instUrl(),re)}}function lp(i,t){if(i&1){let e=y();a(0,"div",23)(1,"mat-nav-list")(2,"a",49)(3,"a",50),u("click",function(){m(e);let o=l();return _(o.closeInstrumentPanel())}),a(4,"mat-icon"),p(5,"arrow_forward"),s()(),p(6," \xA0\xA0\xA0\xA0 "),f(7,ap,3,1,"a",51),a(8,"a",52),u("click",function(){m(e);let o=l();return _(o.selectPlugin())}),a(9,"mat-icon"),p(10,"arrow_back_ios"),s()(),a(11,"a",53),u("click",function(){m(e);let o=l();return _(o.selectPlugin(!0))}),a(12,"mat-icon"),p(13,"arrow_forward_ios"),s()()(),b(14,"mat-divider"),s(),a(15,"div",54),f(16,sp,1,1,"iframe",55),s()()}if(i&2){let e=l();c(7),h(e.app.config.display.plugins.instruments?7:-1),c(),v("disabled",e.app.config.display.plugins.favourites.length===0),c(3),v("disabled",e.app.config.display.plugins.favourites.length===0),c(5),h(e.app.instrumentPanel().activate?16:-1)}}function cp(i,t){i&1&&(a(0,"div",25),b(1,"mat-progress-bar",57),s())}function dp(i,t){if(i&1){let e=y();a(0,"autopilot-console",58),u("close",function(){m(e);let o=l();return _(o.toggleAutopilotConsole(!1))}),s()}if(i&2){let e=l();v("apData",e.app.data.vessels.self.autopilot)}}function pp(i,t){if(i&1){let e=y();a(0,"route-builder",59),u("save",function(o){m(e);let r=l();return _(r.skres.newRouteAt(o.coordinates,o.meta))})("close",function(){m(e);let o=l();return _(o.toggleRouteBuilderConsole(!1))}),s()}}function up(i,t){if(i&1){let e=y();a(0,"div",61)(1,"button",79),u("click",function(){m(e);let o=l(3);return _(o.showSelectMode())}),a(2,"mat-icon"),p(3,"cancel"),s()()()}}function mp(i,t){if(i&1){let e=y();a(0,"div",61)(1,"button",80),u("click",function(){m(e);let o=l(3);return _(o.openFeatureBrowser())}),a(2,"mat-icon"),p(3,"tips_and_updates"),s()()()}}function _p(i,t){if(i&1){let e=y();a(0,"div",63)(1,"div",61)(2,"button",70),u("click",function(){m(e);let o=l(2);return _(o.toggleAlertList(!0))}),b(3,"mat-icon",71),s()(),a(4,"div",61)(5,"button",72)(6,"mat-icon"),p(7,"layers"),s()()(),a(8,"div",61)(9,"button",73)(10,"mat-icon"),p(11,"edit"),s()()(),a(12,"div",61)(13,"button",74),u("click",function(){m(e);let o=l(2);return _(o.toggleNorthUp())}),b(14,"mat-icon",75),s()(),a(15,"div",61)(16,"button",76),u("click",function(){m(e);let o=l(2);return _(o.toggleMoveMap())}),b(17,"mat-icon",77),s()(),a(18,"div",61)(19,"button",78)(20,"mat-icon"),p(21,"more_horiz"),s()()(),f(22,up,4,0,"div",61),f(23,mp,4,0,"div",61),s()}if(i&2){let e=l(2),n=ve(3),o=ve(41),r=ve(73);c(2),v("matBadge",e.notiMgr.alerts().length)("matBadgeHidden",e.notiMgr.alerts().length===0),c(3),v("disabled",e.isInteracting())("matMenuTriggerFor",n),c(4),v("disabled",e.isInteracting())("matMenuTriggerFor",r),c(4),v("ngClass",ue(16,xe,!e.app.uiConfig().mapNorthUp,e.app.uiConfig().mapNorthUp))("matTooltip",e.app.uiConfig().mapNorthUp?"Show Heading Up":"Show North Up"),c(),v("svgIcon",e.app.uiConfig().mapNorthUp?"heading-n-up":"heading-h-up"),c(2),v("ngClass",ue(19,xe,e.app.uiConfig().mapMove,!e.app.uiConfig().mapMove))("disabled",!e.app.data.vessels.showSelf)("matTooltip",e.app.uiConfig().mapMove?"Turn off Follow Vessel":"Center & Follow Vessel"),c(3),v("disabled",e.isInteracting())("matMenuTriggerFor",o),c(3),h(e.mode===1?22:-1),c(),h(e.whatsNew.hasUnseen()?23:-1)}}function fp(i,t){if(i&1){let e=y();a(0,"route-list",82),u("activate",function(o){m(e);let r=l(4);return _(r.activateRoute(o.id))})("deactivate",function(){m(e);let o=l(4);return _(o.clearDestination())})("select",function(o){m(e);let r=l(4);return _(r.handleResourceInfo("routes",o.id))})("points",function(o){m(e);let r=l(4);return _(r.featureProperties({id:o.id,type:"route"}))})("notes",function(o){m(e);let r=l(4);return _(r.skres.showRelatedNotes(o.id,"route",o.readOnly))})("closed",function(){m(e);let o=l(4);return _(o.displayLeftMenu())}),s()}if(i&2){let e=l(4);v("activeRoute",e.app.data.activeRoute)("editingRouteId",e.app.data.editingId)}}function hp(i,t){i&1&&(ae(0,fp,1,2),se(1,0,Sd),le())}function gp(i,t){if(i&1){let e=y();a(0,"waypoint-list",83),u("select",function(o){m(e);let r=l(4);return _(r.handleResourceInfo("waypoints",o.id))})("goto",function(o){m(e);let r=l(4);return _(r.course.navigateToWaypoint(o.id))})("deactivate",function(){m(e);let o=l(4);return _(o.clearDestination())})("center",function(o){m(e);let r=l(4);return _(r.centerAndZoom(o))})("notes",function(o){m(e);let r=l(4);return _(r.skres.showRelatedNotes(o.id,"waypoint",o.readOnly))})("closed",function(){m(e);let o=l(4);return _(o.displayLeftMenu())}),s()}if(i&2){let e=l(4);v("activeWaypoint",e.app.data.activeWaypoint)("editingWaypointId",e.app.data.editingId)}}function Cp(i,t){i&1&&(ae(0,gp,1,2),se(1,0,Md),le())}function bp(i,t){if(i&1){let e=y();a(0,"chart-list",84),u("closed",function(){m(e);let o=l(4);return _(o.displayLeftMenu())}),s()}if(i&2){let e=l(4);v("selectedCharts",e.app.config.selections.charts)}}function vp(i,t){i&1&&(ae(0,bp,1,1),se(1,0,Ad),le())}function wp(i,t){if(i&1){let e=y();a(0,"note-list",85),u("select",function(o){m(e);let r=l(4);return _(r.handleResourceInfo("notes",o.id))})("pan",function(o){m(e);let r=l(4);return _(r.centerAndZoom(o.center,o.zoomLevel))})("closed",function(){m(e);let o=l(4);return _(o.displayLeftMenu())}),s()}if(i&2){let e=l(4);v("notes",e.skres.notes())}}function xp(i,t){i&1&&(ae(0,wp,1,1),se(1,0,Pd),le())}function yp(i,t){if(i&1){let e=y();a(0,"region-list",86),u("select",function(o){m(e);let r=l(4);return _(r.handleResourceInfo("regions",o.id))})("pan",function(o){m(e);let r=l(4);return _(r.centerAndZoom(o.center,o.zoomLevel))})("closed",function(){m(e);let o=l(4);return _(o.displayLeftMenu())}),s()}if(i&2){let e=l(4);v("regions",e.skres.regions())}}function Ep(i,t){i&1&&(ae(0,yp,1,1),se(1,0,kd),le())}function Tp(i,t){if(i&1){let e=y();a(0,"track-list",87),u("center",function(o){m(e);let r=l(4);return _(r.centerAndZoom(o))})("closed",function(){m(e);let o=l(4);return _(o.displayLeftMenu())}),s()}}function Sp(i,t){i&1&&(ae(0,Tp,1,0),se(1,0,Id),le())}function Mp(i,t){if(i&1){let e=y();a(0,"ais-list",88),u("properties",function(o){m(e);let r=l(4);return _(r.featureProperties({id:o,type:"ais"}))})("closed",function(){m(e);let o=l(4);return _(o.displayLeftMenu())})("focusVessel",function(o){m(e);let r=l(4);return _(r.switchActiveVessel(o))})("pan",function(o){m(e);let r=l(4);return _(r.centerAndZoom(o.center,o.zoomLevel))}),s()}if(i&2){let e=l(4);v("focusId",e.app.data.vessels.activeId)}}function Ap(i,t){i&1&&(ae(0,Mp,1,1),se(1,0,Dd),le())}function Pp(i,t){if(i&1){let e=y();a(0,"group-list",39),u("closed",function(){m(e);let o=l(4);return _(o.displayLeftMenu())}),s()}}function kp(i,t){i&1&&(ae(0,Pp,1,0),se(1,0,Rd),le())}function Ip(i,t){if(i&1){let e=y();a(0,"anchor-watch",89),u("closed",function(){m(e);let o=l(3);return _(o.displayLeftMenu())}),s()}if(i&2){let e=l(3);v("showSelf",e.app.data.vessels.showSelf)("radius",e.anchor.radius())("raised",e.anchor.raised())}}function Dp(i,t){if(i&1){let e=y();a(0,"weather-list",39),u("closed",function(){m(e);let o=l(4);return _(o.displayLeftMenu())}),s()}}function Rp(i,t){i&1&&(ae(0,Dp,1,0),se(1,0,Od),le())}function Op(i,t){if(i&1&&(a(0,"div",64),f(1,hp,3,0),f(2,Cp,3,0),f(3,vp,3,0),f(4,xp,3,0),f(5,Ep,3,0),f(6,Sp,3,0),f(7,Ap,3,0),f(8,kp,3,0),f(9,Ip,1,3,"anchor-watch",81),f(10,Rp,3,0),s()),i&2){let e=l(2);c(),h(e.leftMenuCtrl().routeList?1:-1),c(),h(e.leftMenuCtrl().waypointList?2:-1),c(),h(e.leftMenuCtrl().chartList?3:-1),c(),h(e.leftMenuCtrl().noteList?4:-1),c(),h(e.leftMenuCtrl().regionList?5:-1),c(),h(e.leftMenuCtrl().trackList?6:-1),c(),h(e.leftMenuCtrl().aisList?7:-1),c(),h(e.leftMenuCtrl().resourceGroups?8:-1),c(),h(e.leftMenuCtrl().anchorWatch?9:-1),c(),h(e.leftMenuCtrl().weatherList?10:-1)}}function Lp(i,t){i&1&&(a(0,"div",66)(1,"mat-icon",90),p(2,"visibility_off "),s()())}function Vp(i,t){i&1&&(a(0,"div",66)(1,"mat-icon",91),p(2,"compare_arrows "),s()())}function Np(i,t){i&1&&(a(0,"div",66)(1,"mat-icon",92),p(2,"directions_boat "),s()())}function Fp(i,t){i&1&&(a(0,"div",66)(1,"mat-icon",93),p(2,"local_offer "),s()())}function Bp(i,t){i&1&&(a(0,"div",66)(1,"mat-icon",94),p(2,"signal_wifi_statusbar_connected_no_internet_4 "),s()())}function $p(i,t){if(i&1){let e=y();a(0,"button",100),u("click",function(){m(e);let o=l(4);return _(o.openInstrumentPanel())}),a(1,"mat-icon"),p(2,"av_timer"),s()()}}function zp(i,t){if(i&1&&(a(0,"div",96),f(1,$p,3,0,"button",99),b(2,"br"),p(3,"\xA0"),b(4,"br"),p(5,"\xA0 "),s()),i&2){let e=l(3);c(),h(!e.app.instrumentPanel().open&&!e.infoPanel.opened()&&!e.isInteracting()&&!e.app.data.vessels.activeId?1:-1)}}function qp(i,t){if(i&1){let e=y();a(0,"div",61)(1,"button",101),u("click",function(){m(e);let o=l(3);return _(o.enableAudio())}),a(2,"mat-icon",35),p(3,"volume_off"),s()(),b(4,"br"),p(5,"\xA0"),b(6,"br"),s()}}function Up(i,t){if(i&1){let e=y();a(0,"div",61)(1,"button",102),u("click",function(){m(e);let o=l(3);return _(o.toggleFullscreen())}),a(2,"mat-icon"),p(3),s()(),b(4,"br"),p(5,"\xA0"),b(6,"br"),s()}if(i&2){let e=l(3);c(),v("ngClass",ue(3,xe,e.displayFullscreen().active,!e.displayFullscreen().active))("matTooltip",e.displayFullscreen().active?"Exit Fullscreen ":"Go Fullscreen"),c(2),pe(" ",e.displayFullscreen().active?"fullscreen_exit ":"fullscreen"," ")}}function Hp(i,t){if(i&1){let e=y();a(0,"div",61)(1,"fb-experiments",103),u("selected",function(o){m(e);let r=l(3);return _(r.openExperiment(o))}),s(),b(2,"br"),p(3,"\xA0"),b(4,"br"),s()}}function Wp(i,t){if(i&1){let e=y();a(0,"div",61)(1,"pip-video",104),u("click",function(){m(e);let o=l(3);return _(o.focusMap())}),s(),b(2,"br"),p(3,"\xA0"),b(4,"br"),s()}if(i&2){let e=l(3);c(),v("src",e.vidUrl())("muted",!0)}}function Gp(i,t){if(i&1){let e=y();a(0,"div",61)(1,"button",105),u("click",function(){m(e);let o=l(3);return _(o.toggleAutopilotConsole(!o.app.uiCtrl().autopilotConsole))}),b(2,"mat-icon",106),s(),b(3,"br"),p(4,"\xA0"),b(5,"br"),s()}if(i&2){let e=l(3);c(),v("ngClass",ue(1,xe,e.app.data.vessels.self.autopilot.enabled,!e.app.data.vessels.self.autopilot.enabled))}}function jp(i,t){if(i&1){let e=y();a(0,"div",61)(1,"button",107),u("click",function(){m(e);let o=l(3);return _(o.toggleRadarPanel())}),b(2,"mat-icon",38),s(),b(3,"br"),p(4,"\xA0"),b(5,"br"),s()}if(i&2){let e=l(3);c(),v("ngClass",ue(2,xe,e.app.uiCtrl().radarLayer,!e.app.uiCtrl().radarLayer))("disabled",e.app.instrumentPanel().open)}}function Kp(i,t){if(i&1){let e=y();a(0,"div",61)(1,"button",108),u("click",function(){let o=m(e).$implicit,r=l(3);return _(r.plotterExt.handleButtonAction(o.extension,o.button))}),a(2,"mat-icon"),p(3),s()(),b(4,"br"),p(5,"\xA0"),b(6,"br"),s()}if(i&2){let e=t.$implicit;c(),v("matTooltip",e.button.title),c(2),$(e.button.icon||"extension")}}function Xp(i,t){if(i&1){let e=y();a(0,"div",95),f(1,zp,6,1,"div",96),f(2,qp,7,0,"div",61),f(3,Up,7,6,"div",61),a(4,"div",61)(5,"button",97),u("click",function(){m(e);let o=l(2);return _(o.toggleConstrainMapZoom())}),a(6,"mat-icon"),p(7,"zoom_in_map"),s()(),b(8,"br"),p(9,"\xA0"),b(10,"br"),s(),a(11,"div",61)(12,"button",98),u("click",function(){m(e);let o=l(2);return _(o.invertFeatureLabelColor())}),a(13,"mat-icon"),p(14),s()(),b(15,"br"),p(16,"\xA0"),b(17,"br"),s(),f(18,Hp,5,0,"div",61),f(19,Wp,5,2,"div",61),f(20,Gp,6,4,"div",61),f(21,jp,6,5,"div",61),z(22,Kp,7,2,"div",61,Vd),s()}if(i&2){let e=l(2);G("top",60+e.plotterExt.toolbarTopOffset(),"px"),c(),h(e.app.instrumentPanelAvailable()&&e.app.config.display.plugins.instruments?1:-1),c(),h(e.audioStatus()!=="running"?2:-1),c(),h(e.app.isTopWindow()&&e.displayFullscreen().enabled?3:-1),c(2),v("ngClass",ue(12,xe,e.app.uiConfig().mapConstrainZoom,!e.app.uiConfig().mapConstrainZoom)),c(7),v("ngClass",ue(15,xe,e.app.uiConfig().invertColor,!e.app.uiConfig().invertColor)),c(2),$("invert_colors"),c(4),h(e.app.config.experiments?18:-1),c(),h(e.app.config.resources.video.enable&&e.app.config.resources.video.url?19:-1),c(),h(e.app.featureFlags().autopilotApi&&e.app.data.vessels.self.autopilot.default&&e.app.config.display.fab!=="autopilot"?20:-1),c(),h(e.app.featureFlags().radarApi&&e.radarApi.radarId()&&e.app.config.display.fab!=="radar"?21:-1),c(),q(e.plotterExt.toolbarButtons())}}function Zp(i,t){if(i&1){let e=y();a(0,"div",60)(1,"div",61)(2,"button",62)(3,"mat-icon"),p(4,"menu"),s()()()(),f(5,_p,24,22,"div",63),f(6,Op,11,10,"div",64),a(7,"div",65),f(8,Lp,3,0,"div",66),f(9,Vp,3,0,"div",66),f(10,Np,3,0,"div",66),f(11,Fp,3,0,"div",66),f(12,Bp,3,0,"div",66),s(),a(13,"div",67)(14,"div",61)(15,"button",68),u("click",function(){m(e);let o=l();return _(o.toggleToolbarButtons())}),a(16,"mat-icon"),p(17),s()()()(),f(18,Xp,24,18,"div",69)}if(i&2){let e=l(),n=ve(108);c(2),v("disabled",e.isInteracting())("matBadgeHidden",e.app.isLoggedIn())("matMenuTriggerFor",n),c(3),h(e.app.uiConfig().toolbarButtons?5:-1),c(),h(e.leftMenuCtrl().leftMenuPanel?6:-1),c(),G("top",20+e.plotterExt.toolbarTopOffset(),"px"),c(),h(!e.wakeLock.enabled()&&e.wakeLock.isAvailable?8:-1),c(),h(e.app.uiConfig().showCourseData?-1:9),c(),h(e.app.uiConfig().showAisTargets?-1:10),c(),h(e.app.uiConfig().showNotes?-1:11),c(),h(e.stream.watchDogAlarm()?12:-1),c(),G("top",e.plotterExt.toolbarTopOffset(),"px"),c(2),v("matTooltip",e.app.uiConfig().toolbarButtons?"Hide Toobars":"Show Toobars"),c(2),$(e.app.uiConfig().toolbarButtons?"apps":"apps_outage"),c(),h(e.app.uiConfig().toolbarButtons?18:-1)}}function Qp(i,t){if(i&1&&(a(0,"div",32)(1,"div",109)(2,"mat-icon"),p(3,"access_time"),s(),a(4,"b"),p(5,"Playback:"),s()(),a(6,"div",110),p(7),s()()),i&2){let e=l();c(7),$(e.playbackTime())}}function Yp(i,t){if(i&1){let e=y();a(0,"alert-list",114),u("closed",function(){m(e);let o=l(2);return _(o.toggleAlertList(!1))}),s()}if(i&2){let e=l(2);v("alerts",e.notiMgr.alerts())}}function Jp(i,t){if(i&1){let e=y();a(0,"span",113)(1,"fb-alert",115),u("nextPoint",function(){m(e);let o=l(2);return _(o.course.coursePointIndex(o.course.courseData().pointIndex+1))})("routeEnd",function(){m(e);let o=l(2);return _(o.clearDestination())}),s()()}if(i&2){let e=t.$implicit,n=l(2);c(),v("audioStatus",n.audioStatus())("alert",e[1])("acknowledged",e[1].acknowledged)("silenced",e[1].silenced)("doNotPlaySound",n.app.config.display.muteSound)}}function eu(i,t){if(i&1&&(f(0,Yp,1,1,"alert-list",111),a(1,"div",112),z(2,Jp,2,5,"span",113,Nd),s()),i&2){let e=l();h(e.app.uiCtrl().alertList?0:-1),c(2),q(e.notiMgr.alerts())}}function tu(i,t){if(i&1){let e=y();a(0,"fb-interact-help",116),u("finish",function(){m(e);let o=l();return _(o.handleInteractionFinish())})("cancel",function(){m(e);let o=l();return _(o.closeInteraction())})("undo",function(){m(e);let o=l();return _(o.handleInteractionUndo())}),s()}}function nu(i,t){if(i&1){let e=y();a(0,"route-nextpoint",119),u("selected",function(o){m(e);let r=l(2);return _(r.routeNextPoint(o))}),s()}if(i&2){let e=l(2);v("index",e.course.courseData().pointIndex)("total",e.course.courseData().pointTotal)("circular",e.app.data.activeRouteCircular)}}function iu(i,t){if(i&1&&b(0,"ap-dial-text",129),i&2){let e=l(3);v("title","VMG")("value",e.app.formatSpeed(e.course.courseData().vmg,!0))("units",e.app.formattedSpeedUnits)}}function ou(i,t){if(i&1&&b(0,"ap-dial-text",129),i&2){let e=l(3);v("title","BRG")("value",e.course.courseData().bearing.value.toFixed(1))("units",e.course.courseData().bearing.type==="M"?"deg (M)":"deg (T)")}}function ru(i,t){if(i&1&&b(0,"ap-dial-text",129),i&2){let e=l(3);v("title","XTE")("value",e.course.courseData().xte>10?e.course.courseData().xte.toFixed(1):e.course.courseData().xte.toFixed(3))("units",e.convert.getSymbol(e.app.config.units.distance))}}function au(i,t){if(i&1&&b(0,"ap-dial-text",132),i&2){let e=l(4);v("title","DTG")("value",e.course.courseData().route.dtg.toFixed(1))("units",e.convert.getSymbol(e.app.config.units.distance))}}function su(i,t){if(i&1&&b(0,"ap-dial-ttg",133),i&2){let e=l(4);v("value",e.course.courseData().route.ttg)}}function lu(i,t){if(i&1&&b(0,"ap-dial-eta",134),i&2){let e=l(4);v("title","ETA")("value",e.course.courseData().route.eta)}}function cu(i,t){if(i&1&&(f(0,au,1,3,"ap-dial-text",132),f(1,su,1,1,"ap-dial-ttg",133),f(2,lu,1,2,"ap-dial-eta",134)),i&2){let e=l(3);h(e.course.courseData().route.dtg?0:-1),c(),h(e.course.courseData().route.ttg?1:-1),c(),h(e.course.courseData().route.eta?2:-1)}}function du(i,t){if(i&1&&b(0,"ap-dial-text",129),i&2){let e=l(3);v("title","DTG")("value",e.course.courseData().dtg.toFixed(1))("units",e.convert.getSymbol(e.app.config.units.distance))}}function pu(i,t){if(i&1&&b(0,"ap-dial-ttg",130),i&2){let e=l(3);v("value",e.course.courseData().ttg)}}function uu(i,t){if(i&1&&b(0,"ap-dial-eta",131),i&2){let e=l(3);v("title","ETA")("value",e.course.courseData().eta)}}function mu(i,t){if(i&1){let e=y();a(0,"div",118)(1,"div",120)(2,"div",121)(3,"button",122),u("click",function(){m(e);let o=l(2);return _(o.openCourseSettings())}),b(4,"mat-icon",123),s(),b(5,"br"),a(6,"button",124),u("click",function(){m(e);let o=l(2);return _(o.autopilot.engage())}),b(7,"mat-icon",125),s()(),a(8,"div")(9,"button",126),u("click",function(){m(e);let o=l(2);return _(o.course.courseRestart())}),a(10,"mat-icon"),p(11,"replay"),s()(),b(12,"br"),a(13,"button",127),u("click",function(){m(e);let o=l(2);return _(o.course.courseReverse())}),a(14,"mat-icon",128),p(15," multiple_stop "),s()()()(),f(16,iu,1,3,"ap-dial-text",129),f(17,ou,1,3,"ap-dial-text",129),f(18,ru,1,3,"ap-dial-text",129),f(19,cu,3,3),f(20,du,1,3,"ap-dial-text",129),f(21,pu,1,1,"ap-dial-ttg",130),f(22,uu,1,2,"ap-dial-eta",131),s()}if(i&2){let e=l(2);c(6),v("disabled",!e.app.featureFlags().autopilotApi||!e.app.data.vessels.self.autopilot.default),c(),v("color",e.navDataPanel().apModeColor),c(6),v("disabled",!e.app.data.activeRoute),c(),v("color",e.app.data.activeRouteReversed?"primary":"none"),c(2),h(e.course.courseData().vmg?16:-1),c(),h(e.course.courseData().bearing.value?17:-1),c(),h(e.course.courseData().xte?18:-1),c(),h(e.app.data.activeRoute?19:-1),c(),h(e.course.courseData().dtg?20:-1),c(),h(e.course.courseData().ttg?21:-1),c(),h(e.course.courseData().eta?22:-1)}}function _u(i,t){if(i&1&&(a(0,"div",33),f(1,nu,1,3,"route-nextpoint",117),f(2,mu,23,11,"div",118),s()),i&2){let e=l();c(),h(e.navDataPanel().nextPointCtrl?1:-1),c(),h(e.app.config.ui.showCourseData&&e.navDataPanel().show?2:-1)}}function fu(i,t){if(i&1){let e=y();a(0,"mfb-container",135),u("radarClick",function(){m(e);let o=l();return _(o.toggleRadarPanel())}),s()}if(i&2){let e=l();v("action",e.app.config.display.fab)}}var wa="fb-track-api-notice-dismissed",It=class i{sideright;fbMap;navDataPanel=W({show:!1,nextPointCtrl:!1,apModeColor:"",apModeText:""});playbackTime=W(null);leftMenuCtrl=W({leftMenuPanel:!1,routeList:!1,waypointList:!1,chartList:!1,noteList:!1,regionList:!1,trackList:!1,aisList:!1,resourceGroups:!1,anchorWatch:!1,weatherList:!1});displayFullscreen=W({active:!1,enabled:document.fullscreenEnabled});features={playbackAPI:!0};mode=0;timers=[];trackApiNoticeShown=!1;instUrl=W(null);selFavourite=-1;vidUrl=W(null);convert=qt;obsList=[];streamOptions={options:null,toMode:null};mapSetFocus=W("");mapCenter=W([0,0]);audioStatus=W("");isInteracting=L(()=>this.mapInteract.isMeasuring()||this.mapInteract.isDrawing()||this.mapInteract.isModifying()||this.mapInteract.isBoxSelecting());app=C(ho);infoPanel=C(Wi);mapInteract=C(mi);anchor=C(ro);notiMgr=C(no);course=C(ki);stream=C(vi);skres=C(Mi);gpxExport=C(go);skresOther=C(Ai);signalk=C(pi);dom=C(ce);overlayContainer=C(Je);bottomSheet=C(ci);dialog=C(ti);wakeLock=C(ii);settings=C(mo);autopilot=C(so);radarApi=C(wi);symbols=C(ui);routeBuffers=C(Ei);plotterExt=C(j);temporaryRoutes=C(Gi);whatsNew=C(Et);constructor(){this.app.data.vessels.active=this.app.data.vessels.self,Z(()=>{this.app.debug("** skAuthChange Event:",this.app.skAuthChange()),this.handleSKAuthChange()}),Z(()=>{this.app.debug("** kioskMode Event:",this.app.kioskMode()),this.toggleSuppressContextMenu(this.app.kioskMode())}),Z(()=>{this.handleSelectionEnded(this.mapInteract.selection())}),Z(()=>{this.app.uiConfig(),this.handleSettingChangeEvent(void 0)}),Z(()=>{this.infoPanel.opened()||this.app.instrumentPanel().activate?this.sideright?.opened||this.openDrawer():this.sideright?.opened&&this.closeDrawer()}),Z(()=>{let t=this.app.mapMoveRequest();t&&(this.app.uiConfig.update(e=>e.mapMove?qe(ze({},e),{mapMove:!1}):e),this.centerAndZoom(t.center,t.zoom))})}ngAfterViewInit(){setTimeout(()=>{this.app.config.display.disableWakelock||this.wakeLock.enable()},500)}enableAudio(){this.app.audio.context&&this.app.audio.context.resume()}ngOnInit(){this.whatsNew.init(),this.audioStatus.update(()=>this.app.audio.context.state),this.app.debug("audio state:",this.audioStatus()),this.app.audio.context.onstatechange=()=>{this.app.debug("audio statechange:",this.app.audio.context.state),this.audioStatus.update(()=>this.app.audio.context.state)},this.mapCenter.update(()=>this.app.config.map.center),this.app.instrumentPanel.update(t=>Object.assign({},t,{activate:!this.app.config.display.plugins.startOnOpen})),this.setDarkTheme(),this.instUrl.update(()=>this.dom.bypassSecurityTrustResourceUrl(this.formatInstrumentsUrl())),this.vidUrl.update(()=>this.dom.bypassSecurityTrustResourceUrl(`${this.app.config.resources.video.url}`)),this.connectSignalKServer(),this.obsList.push(this.stream.delta$().subscribe(t=>this.onMessage(t))),this.obsList.push(this.stream.connect$().subscribe(t=>this.onConnect(t))),this.obsList.push(this.stream.close$().subscribe(t=>this.onClose(t))),this.obsList.push(this.stream.error$().subscribe(t=>this.onError(t))),this.obsList.push(this.stream.trail$().subscribe(t=>this.handleTrailUpdate(t))),this.obsList.push(this.stream.trackSource$().subscribe(t=>this.handleTrackSource(t))),this.obsList.push(this.settings.change$.subscribe(t=>this.handleSettingChangeEvent(t))),document.addEventListener("fullscreenchange",()=>{this.displayFullscreen.update(t=>Object.assign({},t,{active:!!document.fullscreenElement}))}),document.addEventListener("fullscreenerror",()=>{this.displayFullscreen.update(t=>Object.assign({},t,{active:!1}))})}ngOnDestroy(){this.stopTimers(),this.stream.terminate(),this.signalk.disconnect(),this.obsList.forEach(t=>t.unsubscribe())}getOrientation(){return this.app.uiConfig().mapNorthUp?"rotate(0deg)":"rotate("+(0-this.app.data.vessels.active.orientation)+"rad)"}showRadarPanel(){if(!this.radarApi.hasWebGL){this.radarApi.showNoWebGLMessage();return}this.app.instrumentPanel().open&&this.closeInstrumentPanel(),this.connectRadar(),this.infoPanel.openRadar(this.radarApi.radar()),this.focusMap()}toggleRadarPanel(){this.infoPanel.item()?.type==="radars"?(this.infoPanel.close(),this.closeDrawer()):this.showRadarPanel()}connectRadar(){this.app.uiCtrl().radarLayer||this.app.uiCtrl.update(t=>Object.assign({},t,{radarLayer:!0}))}toggleRadarOverlay(){this.app.uiCtrl().radarLayer?this.disconnectRadar():this.showRadarPanel()}disconnectRadar(){this.app.uiCtrl().radarLayer&&this.app.uiCtrl.update(t=>Object.assign({},t,{radarLayer:!1}))}toggleMoveMap(t=!1){this.app.uiConfig.update(e=>{let n=t?!1:!e.mapMove;return Object.assign({},e,{mapMove:n})}),this.focusMap()}resumeMoveMap(){this.app.uiConfig.update(t=>Object.assign({},t,{mapMove:!0})),this.focusMap()}toggleNorthUp(){this.app.uiConfig.update(t=>Object.assign({},t,{mapNorthUp:!t.mapNorthUp})),this.focusMap()}toggleToolbarButtons(){this.app.uiConfig.update(t=>Object.assign({},t,{toolbarButtons:!t.toolbarButtons})),this.focusMap()}toggleConstrainMapZoom(){this.app.uiConfig.update(t=>Object.assign({},t,{mapConstrainZoom:!t.mapConstrainZoom})),this.skres.setMapZoomRange(),this.focusMap()}invertFeatureLabelColor(){this.app.uiConfig.update(t=>Object.assign({},t,{invertColor:!t.invertColor})),this.focusMap()}toggleAlertList(t){this.app.uiCtrl.update(e=>Object.assign({},e,{alertList:t}))}toggleAutopilotConsole(t){this.app.uiCtrl.update(e=>Object.assign({},e,{autopilotConsole:t}))}toggleRouteBuilderConsole(t){this.app.uiCtrl.update(e=>Object.assign({},e,{routeBuilder:t}))}toggleSuppressContextMenu(t){this.app.uiCtrl.update(e=>Object.assign({},e,{suppressContextMenu:t}))}toggleFullscreen(){let t=document.documentElement,e=t.requestFullscreen||t.webkitRequestFullScreen||t.mozRequestFullscreen||t.msRequestFullscreen;e&&(document.fullscreenElement?document.exitFullscreen&&document.exitFullscreen():e.call(t),this.focusMap())}darkThemeApplied;setDarkTheme(){let t=window.matchMedia("(prefers-color-scheme: dark)"),e=this.app.config.display.darkMode.source===0&&t.matches||this.app.config.display.darkMode.source===1&&this.app.data.vessels.self.environment.mode==="night"||this.app.config.display.darkMode.source===-1;if(e===this.darkThemeApplied)return;this.darkThemeApplied=e;let n=this.overlayContainer.getContainerElement();e?n.classList.add("dark-theme"):n.classList.remove("dark-theme"),this.app.config.display.darkMode.enabled=e}formatInstrumentsUrl(){let t=`${this.app.hostDef.url}${this.app.config.display.plugins.instruments}`,e=this.app.config.display.plugins.parameters?this.app.config.display.plugins.parameters.length>0&&this.app.config.display.plugins.parameters[0]!=="?"?`?${this.app.config.display.plugins.parameters}`:this.app.config.display.plugins.parameters:"";return e?`${t}/${e}`:t}selectPlugin(t=!1){t?this.selFavourite===-1?this.selFavourite=0:this.selFavourite===this.app.config.display.plugins.favourites.length-1?this.selFavourite=-1:this.selFavourite++:this.selFavourite===-1?this.selFavourite=this.app.config.display.plugins.favourites.length-1:this.selFavourite===0?this.selFavourite=-1:this.selFavourite--;let e=this.selFavourite===-1?this.formatInstrumentsUrl():`${this.app.hostDef.url}${this.app.config.display.plugins.favourites[this.selFavourite]}`;this.instUrl.update(()=>this.dom.bypassSecurityTrustResourceUrl(e))}showOverlaysMoved(){this.app.showMsgBox("Overlays have moved",`Overlays have moved to the Chart list.
|
|
460
460
|
|
|
461
|
-
Your existing overlays appear there as charts, with the same Time control and auto-refresh.`)}handleContextMenuSelection(t){switch(t){case"cleartrail":this.clearTrail(this.app.data.serverTrail);break;case"trail2route":this.trailToRoute();break;case"cleardestination":this.clearDestination();break;case"anchor":this.displayLeftMenu("anchorWatch",!0);break;case"weather_forecast":this.showWeather("forecast");break}}trailToRoute(){return O(this,null,function*(){let{Trail2RouteDialog:t}=yield import("./chunk-
|
|
462
|
-
e.g. https, http://localhost, http://127.0.0.1`):this.app.config.resources.paths.includes(t.choice)&&this.bottomSheet.open(Ji,{disableClose:!0,data:{path:t.choice}}).afterDismissed().subscribe(()=>{this.focusMap()})}openCourseSettings(){this.bottomSheet.open(Pi,{disableClose:!0,data:{title:"Course Settings"}}).afterDismissed().subscribe(()=>{this.focusMap()})}handleSKAuthChange(){this.signalk.getLoginStatus().subscribe(t=>{this.app.data.loginRequired=t.authenticationRequired??!1,this.app.isLoggedIn.update(()=>t.status==="loggedIn"),this.signalk.get("/plugins/freeboard-sk").subscribe(()=>{this.app.debug("User Authenticated"),this.app.isLoggedIn.set(!0)},e=>{e.status===401&&(this.app.debug("User NOT Authenticated"),this.app.isLoggedIn.set(!1))})})}connectSignalKServer(){this.app.data.selfId=null,this.app.data.server=null,this.signalk.proxied=this.app.config.signalk.proxied,this.signalk.connect(this.app.hostDef.name,this.app.hostDef.port,this.app.hostDef.ssl).subscribe({next:()=>{this.signalk.authToken=this.app.getFBToken(),this.app.watchSKLogin(),this.app.loadUserConfigfromServer().finally(()=>{this.loadSymbolsThenFetchResources(),this.plotterExt.init()}),this.getFeatures(),this.app.data.server=this.signalk.server.info,this.openSKStream()},error:()=>{this.app.showMessage("Unable to contact Signal K server! (Retrying in 5 secs)",!1,5e3),setTimeout(()=>this.connectSignalKServer(),5e3)}})}getFeatures(){return O(this,null,function*(){let t={anchorApi:!1,autopilotApi:!1,weatherApi:!1,radarApi:!1,notificationApi:!1,buddyList:!1,tidalApi:!1};this.signalk.get("/signalk/v2/features?enabled=1").subscribe(n=>{t.weatherApi=n.apis.includes("weather"),t.autopilotApi=n.apis.includes("autopilot"),t.radarApi=n.apis.includes("radar"),t.notificationApi=n.apis.includes("notifications");let o={charts:!1,pmTiles:!1,anchorAlarm:!1,hoekensAnchorAlarm:!1};n.plugins.forEach(r=>{r.id==="anchoralarm"&&(this.app.debug("*** found anchoralarm plugin"),t.anchorApi=!0,o.anchorAlarm=!0),r.id==="hoekens-anchor-alarm"&&
|
|
463
|
-
Not all features were loaded.`),this.focusMap())})})}importResourceSet(){return O(this,null,function*(){let{ResourceImportDialog:t}=yield import("./chunk-
|
|
461
|
+
Your existing overlays appear there as charts, with the same Time control and auto-refresh.`)}handleContextMenuSelection(t){switch(t){case"cleartrail":this.clearTrail(this.app.data.serverTrail);break;case"trail2route":this.trailToRoute();break;case"cleardestination":this.clearDestination();break;case"anchor":this.displayLeftMenu("anchorWatch",!0);break;case"weather_forecast":this.showWeather("forecast");break}}trailToRoute(){return O(this,null,function*(){let{Trail2RouteDialog:t}=yield import("./chunk-CAELFTDN.js");this.dialog.open(t,{disableClose:!0,data:{trail:this.app.selfTrail()}}).afterClosed().subscribe(e=>{e.result&&this.skres.newRouteAt(e.data),this.focusMap()})})}showWeather(t){t==="forecast"&&this.bottomSheet.open(_o,{disableClose:!0,data:{title:"Forecast",position:this.app.data.vessels.self.position,subTitle:"Location: Vessel Position"}}).afterDismissed().subscribe(()=>{this.focusMap()})}openExperiment(t){t.choice==="debugCapture"?window.isSecureContext?(navigator.clipboard.writeText(JSON.stringify({data:this.app.data,config:this.app.config})),this.app.showMessage("Debug data catpured to clipboard.")):this.app.showAlert("Feature Unavailable",`This feature is only available in a secure context!
|
|
462
|
+
e.g. https, http://localhost, http://127.0.0.1`):this.app.config.resources.paths.includes(t.choice)&&this.bottomSheet.open(Ji,{disableClose:!0,data:{path:t.choice}}).afterDismissed().subscribe(()=>{this.focusMap()})}openCourseSettings(){this.bottomSheet.open(Pi,{disableClose:!0,data:{title:"Course Settings"}}).afterDismissed().subscribe(()=>{this.focusMap()})}handleSKAuthChange(){this.signalk.getLoginStatus().subscribe(t=>{this.app.data.loginRequired=t.authenticationRequired??!1,this.app.isLoggedIn.update(()=>t.status==="loggedIn"),this.signalk.get("/plugins/freeboard-sk").subscribe(()=>{this.app.debug("User Authenticated"),this.app.isLoggedIn.set(!0)},e=>{e.status===401&&(this.app.debug("User NOT Authenticated"),this.app.isLoggedIn.set(!1))})})}connectSignalKServer(){this.app.data.selfId=null,this.app.data.server=null,this.signalk.proxied=this.app.config.signalk.proxied,this.signalk.connect(this.app.hostDef.name,this.app.hostDef.port,this.app.hostDef.ssl).subscribe({next:()=>{this.signalk.authToken=this.app.getFBToken(),this.app.watchSKLogin(),this.app.loadUserConfigfromServer().finally(()=>{this.loadSymbolsThenFetchResources(),this.plotterExt.init()}),this.getFeatures(),this.app.data.server=this.signalk.server.info,this.openSKStream()},error:()=>{this.app.showMessage("Unable to contact Signal K server! (Retrying in 5 secs)",!1,5e3),setTimeout(()=>this.connectSignalKServer(),5e3)}})}getFeatures(){return O(this,null,function*(){let t={anchorApi:!1,autopilotApi:!1,weatherApi:!1,radarApi:!1,notificationApi:!1,buddyList:!1,tidalApi:!1};this.signalk.get("/signalk/v2/features?enabled=1").subscribe(n=>{t.weatherApi=n.apis.includes("weather"),t.autopilotApi=n.apis.includes("autopilot"),t.radarApi=n.apis.includes("radar"),t.notificationApi=n.apis.includes("notifications");let o={charts:!1,pmTiles:!1,anchorAlarm:!1,hoekensAnchorAlarm:!1};n.plugins.forEach(r=>{r.id==="anchoralarm"&&(this.app.debug("*** found anchoralarm plugin"),t.anchorApi=!0,o.anchorAlarm=!0),r.id==="hoekens-anchor-alarm"&&yn.satisfies(r.version,">=2.12.0")&&(this.app.debug("*** found hoekens-anchor-alarm plugin"),t.anchorApi=!0,o.hoekensAnchorAlarm=!0),r.id==="signalk-buddylist-plugin"&&(this.app.debug("*** found buddylist plugin"),t.buddyList=!!yn.satisfies(r.version,">1.2.0")),r.id==="signalk-pmtiles-plugin"&&(this.app.debug("*** found PMTiles plugin"),o.pmTiles=!0),r.id==="signalk-tidal-currents"&&(this.app.debug("*** found signalk-tidal-currents plugin"),t.tidalApi=!0)}),this.anchor.setPlugin(o.hoekensAnchorAlarm&&!o.anchorAlarm?"hoekens-anchor-alarm":"anchoralarm"),this.app.featureFlags.update(r=>Object.assign({},r,t))},()=>{this.app.debug("*** Features API not present!")}),this.app.fetchUnitPrefsFromSKServer();let e=yield this.skresOther.initCustomCollections();this.app.featureFlags.update(n=>Object.assign({},n,e))})}startTimers(){this.app.debug("Starting Trail logging timer..."),this.timers.push(setInterval(()=>{this.processTrail()},5e3))}stopTimers(){this.app.debug("Stopping timers:"),this.timers.forEach(t=>clearInterval(t)),this.timers=[]}processTrail(t){if(!this.app.config.vessels.trail)return;let e=this.app.selfTrail().slice(-1);if(this.app.data.vessels.showSelf){if(e.length===0){this.app.stampTrailPoint(this.app.data.vessels.self.position),this.app.selfTrail.update(o=>{let r=[].concat(o);return r.push(this.app.data.vessels.self.position),r});return}(this.app.data.vessels.self.position[0]!==e[0][0]||this.app.data.vessels.self.position[1]!==e[0][1])&&(this.app.stampTrailPoint(this.app.data.vessels.self.position),this.app.selfTrail.update(o=>{let r=[].concat(o);return r.push(this.app.data.vessels.self.position),r}))}if(!t||t.length===0)this.app.selfTrail().length%60===0&&this.app.data.serverTrail&&this.app.serverTrailWanted()&&this.stream.requestTrailFromServer(),this.app.selfTrail.update(o=>o.slice(-5e3));else{let o=t.slice(-1),r=o.length!==0?o[0].slice(-1):t.length>1?t[t.length-2].slice(-1):[],d=this.app.selfTrailTimed()?.times,g=d?.[d.length-1]?.slice(-1)[0];r[0]&&g&&this.app.stampTrailPoint(r[0],g),this.app.selfTrail.update(()=>r)}let n=this.mode===1?"history":"self";this.app.db.saveTrail(n,this.app.selfTrail())}handleTrackSource(t){this.app.debug("Track source:",t),this.app.config.vessels.trail&&this.app.serverTrailWanted()&&this.stream.requestTrailFromServer(),this.showTrackApiNotice(t)}onVisibilityChange(){document.visibilityState==="visible"&&this.mode===0&&this.app.config.vessels.trail&&this.app.serverTrailWanted()&&this.stream.requestTrailFromServer()}showTrackApiNotice(t){if(!(t.api!=="v1"||this.trackApiNoticeShown)){try{if(localStorage.getItem(wa))return}catch(e){}this.trackApiNoticeShown=!0,this.app.showAlert("Vessel Tracks",oi(t),"OK","Don't show this message again").subscribe(e=>{if(e?.checked)try{localStorage.setItem(wa,"1")}catch(n){}})}}handleTrailUpdate(t){t.action==="get"&&t.mode==="trail"&&(this.app.serverTrailWanted()&&this.app.selfTrailFromServer.update(()=>t.data),this.processTrail(t.data))}handleSettingChangeEvent(t){t?.includes("darkTheme")&&this.setDarkTheme(),t?.includes("headingAttribute")&&(this.app.debug("True / Magnetic selection changed.."),this.app.data.vessels.self.heading=this.app.useMagnetic?this.app.data.vessels.self.headingMagnetic:this.app.data.vessels.self.headingTrue,this.app.data.vessels.self.cog=this.app.useMagnetic?this.app.data.vessels.self.cogMagnetic:this.app.data.vessels.self.cogTrue,this.app.data.vessels.self.wind.direction=this.app.useMagnetic?this.app.data.vessels.self.wind.mwd:this.app.data.vessels.self.wind.twd,this.app.data.vessels.aisTargets.forEach(e=>{e.heading=this.app.useMagnetic?e.headingMagnetic:e.headingTrue,e.cog=this.app.useMagnetic?e.cogMagnetic:e.cogTrue,e.wind.direction=this.app.useMagnetic?e.wind.mwd:e.wind.twd}),this.app.sTrueMagChoice.set(this.app.config.units.headingAttribute)),(t?.includes("pluginParameters")||t?.includes("pluginInstruments")||t?.includes("pluginStartOnOpen"))&&(this.instUrl.update(()=>this.dom.bypassSecurityTrustResourceUrl(this.formatInstrumentsUrl())),this.app.instrumentPanel.update(e=>Object.assign({},e,{activate:this.app.config.display.plugins.startOnOpen?!!e.open:!0}))),t?.includes("videoUrl")&&this.vidUrl.update(()=>this.dom.bypassSecurityTrustResourceUrl(`${this.app.config.resources.video.url}`)),(t?.includes("vesselTrail")||t?.includes("trailSource"))&&this.app.config.vessels.trail&&(this.app.serverTrailWanted()?this.stream.requestTrailFromServer():this.app.data.serverTrail=!1)}focusMap(){this.mapSetFocus.update(()=>Date().valueOf())}openDrawer(){this.sideright.open()}closeDrawer(){this.sideright.close()}openInstrumentPanel(){this.app.instrumentPanel().open||(this.infoPanel.opened()&&this.infoPanel.close(),this.app.instrumentPanel.update(t=>Object.assign({},t,{open:!0,activate:!0})))}closeInstrumentPanel(){this.app.instrumentPanel.update(t=>Object.assign({},t,{open:!1,activate:this.app.config.display.plugins.startOnOpen?!1:t.activate})),this.focusMap()}displayLeftMenu(t="",e=!1){let n={leftMenuPanel:e,routeList:!1,waypointList:!1,chartList:!1,noteList:!1,regionList:!1,trackList:!1,aisList:!1,resourceGroups:!1,anchorWatch:!1,weatherList:!1};switch(t){case"routeList":n.routeList=e;break;case"waypointList":n.waypointList=e;break;case"chartList":n.chartList=e;break;case"noteList":n.noteList=e;break;case"regionList":n.regionList=e;break;case"trackList":n.trackList=e;break;case"anchorWatch":n.anchorWatch=e;break;case"aisList":n.aisList=e;break;case"resourceGroups":n.resourceGroups=e;break;case"weatherList":n.weatherList=e;break;default:n.leftMenuPanel=!1}this.leftMenuCtrl.update(()=>n),e||this.focusMap()}handleResourceInfo(t,e){t==="notes"&&!this.app.useInfoPanel()?this.skres.noteSelected(e,!1):t==="regions"&&!this.app.useInfoPanel()?this.skres.editRegionInfo(e):t==="waypoints"&&!this.app.useInfoPanel()?this.skres.editWaypointInfo(e):t==="routes"&&!this.app.useInfoPanel()?this.skres.editRouteInfo(e):this.infoPanel.open(t,e)}onNoteMove(t){this.infoPanel.opened()&&(this.infoPanel.close(),this.closeDrawer()),this.skres.startNoteModify(t)}openAbout(){return O(this,null,function*(){let{AboutDialog:t}=yield import("./chunk-I33LU6L4.js");this.dialog.open(t,{disableClose:!1,data:{name:this.app.name,version:this.app.version,description:this.app.description,logo:this.app.logo,url:this.app.url}}).afterClosed().subscribe(()=>this.focusMap())})}openSettings(){return O(this,null,function*(){let{SettingsDialog:t}=yield import("./chunk-2RUVNGMC.js");this.dialog.open(t,{disableClose:!0,data:{},width:"1000px",maxWidth:"96vw",height:"80vh"}).afterClosed().subscribe(()=>{this.focusMap()})})}openFeatureBrowser(){return O(this,null,function*(){this.whatsNew.markAllSeen();let{FeatureBrowserDialog:t}=yield import("./chunk-MX5HWKAH.js");this.dialog.open(t,{data:{},width:"900px",maxWidth:"96vw"}).afterClosed().subscribe(()=>{this.focusMap()})})}importFile(t){t.data.indexOf("<gpx ")!==-1?this.processGPX(t):t.data.indexOf('"type": "FeatureCollection",')!==-1?this.processGeoJSON(t):this.app.showAlert("Import","File format not supported!"),this.focusMap()}processGPX(t){return O(this,null,function*(){let{GPXImportDialog:e}=yield import("./chunk-KOLNF6AV.js");this.dialog.open(e,{disableClose:!0,data:{fileData:t.data,fileName:t.name}}).afterClosed().subscribe(n=>{if(typeof n.errCount>"u"||n.errCount<0){this.focusMap();return}this.fetchResources(),n.errCount===0?this.app.showMsgBox("GPX Load","GPX file resources loaded successfully."):this.app.showErrorList(n.errList),this.focusMap()})})}exportToGPX(){return O(this,null,function*(){yield this.gpxExport.exportResources(),this.focusMap()})}processGeoJSON(t){return O(this,null,function*(){let{GeoJSONImportDialog:e}=yield import("./chunk-JCA64CSP.js");this.dialog.open(e,{disableClose:!0,data:{fileData:t.data,fileName:t.name}}).afterClosed().subscribe(n=>{n<0||(this.fetchResources(),n===0?this.app.showMsgBox("GeoJSON Load","GeoJSON features loaded successfully."):this.app.showAlert("GeoJSON Load",`Completed with errors!
|
|
463
|
+
Not all features were loaded.`),this.focusMap())})})}importResourceSet(){return O(this,null,function*(){let{ResourceImportDialog:t}=yield import("./chunk-QP4TKOWU.js");this.dialog.open(t,{disableClose:!0,data:{}}).afterClosed().subscribe(e=>{if(e){try{let n=JSON.parse(e.data);this.skres.postToServer(e.path,n)}catch(n){this.app.showAlert("Load Resource",`Resources were not loaded!
|
|
464
464
|
Invalid JSON.`)}this.focusMap()}})})}showLogin(t,e=!0,n){return O(this,null,function*(){let{LoginDialog:o}=yield import("./chunk-I33LU6L4.js");this.dialog.open(o,{disableClose:!0,data:{message:t||"Login to Signal K server."}}).afterClosed().subscribe(r=>{r.cancel?(this.app.hasAuthToken.set(!1),this.signalk.isLoggedIn().subscribe(d=>{this.app.isLoggedIn.set(d)}),n?this.showLogin(null,!1,!0):e&&this.app.showAlert("Login Cancelled:","Update operations are NOT available until you have authenticated to the Signal K server.")):this.signalk.login(r.user,r.pwd).subscribe({next:d=>{this.app.setAuthToken(d.token),this.app.loadUserConfigfromServer().then(g=>{g&&(this.loadSymbolsThenFetchResources(),this.plotterExt.init())}),n&&this.queryAfterConnect(),this.app.isLoggedIn.set(!0)},error:()=>{this.app.setAuthToken(null),this.signalk.isLoggedIn().subscribe(d=>{this.app.isLoggedIn.set(d)}),n?this.app.showConfirm("Invalid Username or Password.","Authentication Failed:","Try Again").subscribe(()=>{this.showLogin(null,!1,!0)}):this.app.showConfirm(`Invalid Username or Password.
|
|
465
465
|
Note: Choosing CLOSE may make operations requiring authentication unavailable.`,"Authentication Failed:","Try Again","Close").subscribe(d=>{d&&this.showLogin()})}}),this.focusMap()})})}showPlaybackSettings(){return O(this,null,function*(){let{PlaybackDialog:t}=yield import("./chunk-BXGNCKBA.js");this.dialog.open(t,{disableClose:!1}).afterClosed().subscribe(e=>{e.result?this.switchMode(1,e.query):this.switchMode(0),this.focusMap()})})}centerAndZoom(t,e){this.mapCenter.update(()=>t),typeof e=="number"&&(this.app.config.map.zoomLevel=e)}toggleAisTargets(){this.app.config.ui.showAisTargets=!this.app.config.ui.showAisTargets,this.app.config.ui.showAisTargets&&this.stream.aisTargetUpdated(),this.app.saveConfig()}toggleCourseData(){this.app.config.ui.showCourseData=!this.app.config.ui.showCourseData,this.app.saveConfig()}toggleNotes(){this.app.config.ui.showNotes=!this.app.config.ui.showNotes,this.app.saveConfig()}clearTrail(t=!1){let e=()=>{this.app.data.serverTrail?this.app.serverTrailWanted()&&this.stream.requestTrailFromServer():this.app.selfTrail.set([])};t?e():this.app.data.serverTrail||this.app.showConfirm("Clear Vessel Trail","Do you want to delete the vessel trail?").subscribe(n=>{n&&e()})}clearCourseData(){this.course.initCourseData()}clearDestination(){this.course.clearCourse()}activateRoute(t){return O(this,null,function*(){let e=this.routeBuffers.get(t);e?.saved&&e.href&&(t=e.href);let n=this.temporaryRoutes.isDraft(t),o=n?this.routeBuffers.get(t).points.map(g=>g.position):this.skres.fromCache("routes",t)?.[1].feature.geometry.coordinates;if(!o)try{o=(yield this.skres.fromServer("routes",t)).feature.geometry.coordinates}catch(g){this.app.parseHttpErrorResponse(g);return}let r=g=>n?this.temporaryRoutes.start(t,g):this.course.activateRoute(t,g),d=Ut.closestForwardPoint(o,this.app.data.vessels.self.position,qt.radiansToDegrees(this.app.data.vessels.self.heading));if(d===-1){this.app.showConfirm(`Closest point is behind vessel!
|
|
466
|
-
Do you want to start from the first point?`,"Start Route").subscribe(g=>{g&&r()});return}r(d)})}routeNextPoint(t){this.course.rejoinRouteAt(t),this.focusMap()}featureProperties(t){return O(this,null,function*(){let e;if(t.type==="route")try{let n=!!t.resource,o;n?o=t.resource[1]:(this.app.sIsFetching.set(!0),o=yield this.skres.fromServer("routes",t.id),this.app.sIsFetching.set(!1)),o&&this.bottomSheet.open(Ii,{disableClose:!0,data:{title:"Route Properties",resource:[t.id,o,!1],type:t.type,noButtons:n}}).afterDismissed().subscribe(r=>{r&&this.clearDestination(),this.focusMap()})}catch(n){this.app.sIsFetching.set(!1),this.app.parseHttpErrorResponse(n)}else if(t.type==="aton"||t.type==="meteo"){let n,o,r;t.type==="meteo"?(e=this.app.data.meteo.get(t.id),n="Meteo Properties",o="air",r=t.type):t.id.slice(0,3)==="sar"?(e=this.app.data.sar.get(t.id),n="SaR Properties",o="tour",r="sar"):(e=this.app.data.atons.get(t.id),n="AtoN Properties",o="beenhere",r="aton"),e&&this.bottomSheet.open(
|
|
467
|
-
Please select only one file for processing.`);else{let e=new FileReader;if(e.onerror=()=>{this.app.showAlert("File Load error","There was an error reading the file contents!")},!t.dataTransfer.files[0].name)return;let n=t.dataTransfer.files[0].name;e.onload=()=>{this.processGPX({name:n,data:e.result})},e.readAsText(t.dataTransfer.files[0])}}switchActiveVessel(t=null){if(this.app.data.vessels.activeId=t,!t)this.app.data.vessels.active=this.app.data.vessels.self;else{let e=this.app.data.vessels.aisTargets.get(t);e?(this.app.data.vessels.active=e,this.sideright.close()):(this.app.data.vessels.active=this.app.data.vessels.self,this.app.data.vessels.activeId=null)}this.app.data.activeRoute=null,this.clearCourseData(),this.app.debug(`** Active vessel: ${this.app.data.vessels.activeId} `),this.app.debug(this.app.data.vessels.active)}switchMode(t,e){this.app.debug(`switchMode from: ${this.mode} to ${t}`),t===1?(this.app.db.saveTrail("self",this.app.selfTrail()),this.app.selfTrail.set([])):this.app.db.getTrail("self").then(n=>{this.app.selfTrail.update(()=>n&&n.value?n.value:[])}),this.switchActiveVessel(),this.openSKStream(e,t,!0)}showSelectMode(){this.mode===0?this.app.showConfirm("Do you want to change to History Playback mode?","Switch Mode").subscribe(t=>{t&&this.showPlaybackSettings()}):this.app.showConfirm("Do you want to exit History Playback mode?","Exit History Playback").subscribe(t=>{t&&this.switchMode(0)})}handleSelectionEnded(t){t.mode==="seedChart"&&this.skres.seedChartCache(t.data,t.bbox)}drawFeature(t){this.mapInteract.startDrawing(t)}onRouteInfoEdit(t){let e=this.routeBuffers.getForRoute(t);e&&(!e.saved||e.dirty)?this.saveRouteBuffer(e.routeId):this.skres.editRouteInfo(t)}saveRouteBuffer(t){return O(this,null,function*(){try{let e=yield this.plotterExt.saveBuffer(t,{dialog:!0,promote:!0});e&&this.infoPanel.open("routes",e.href)}catch(e){}})}handleDrawEnded(t){switch(this.mapInteract.isDrawing(),this.app.data.editingId="",this.mapInteract.draw.resourceType){case"note":{let e={position:t.coordinates};this.mapInteract.draw.properties.group&&(e.group=this.mapInteract.draw.properties.group),this.skres.showNoteEditor(e);break}case"waypoint":this.skres.newWaypointAt(t.coordinates);break;case"route":this.routeBuffers.create({points:t.coordinates.
|
|
468
|
-
Signal K server version 2 or later is required!`),this.app.alignCustomResourcesPaths(),this.signalk.api.getSelf().subscribe(t=>{this.stream.post({cmd:"vessel",options:{context:"self",name:t.name}}),this.anchor.queryAnchorStatus(void 0,this.app.data.vessels.self.position),this.radarApi.init()},t=>{t.status&&t.status===401&&this.showLogin(null,!1,!0),this.app.debug("No vessel data available!")})}onConnect(t){this.app.showMessage("Connection Open.",!1,2e3),this.app.debug(t),this.queryAfterConnect(),this.startTimers(),this.temporaryRoutes.sweep()}onClose(t){if(this.app.debug("onClose: STREAM connection closed..."),this.app.debug(t),this.stopTimers(),t.result)this.openSKStream(this.streamOptions.options,this.streamOptions.toMode);else{let e={title:"Connection Closed:",buttonText:"Re-connect",message:""};t.playback?(e.buttonText="OK",e.message="Unable to open Playback connection.",this.app.showAlert(e.message,e.title,e.buttonText).subscribe(()=>{this.mode===0?this.switchMode(this.mode):this.showPlaybackSettings()})):this.reconnecting||(this.reconnecting=!0,setTimeout(()=>{this.reconnecting=!1,this.openSKStream(this.streamOptions.options,this.mode)},5e3))}}reconnecting=!1;onError(t){this.app.showMessage("Connection Error!",!1,2e3),console.warn("Stream Error!",t)}onMessage(t){if(t.action==="hello"){this.app.debug(t),t.playback?this.mode=1:(this.mode=0,this.stream.subscribe()),this.app.data.selfId=t.self;return}else if(t.action==="update"){if(this.mode===1){let e=new Date(t.timestamp);this.playbackTime.update(()=>`${e.toDateString().slice(4)} ${e.toTimeString().slice(0,8)}`)}else this.playbackTime.set(null),this.setDarkTheme();this.updateNavPanel()}}updateNavPanel(){this.navDataPanel.update(()=>({show:!!(this.app.data.activeRoute||this.app.data.activeWaypoint||this.course.courseData().position),nextPointCtrl:!!this.app.data.activeRoute,apModeColor:this.app.data.vessels.self.autopilot.enabled?"primary":"",apModeText:this.app.data.vessels.self.autopilot.default?`Autopilot: ${this.app.data.vessels.self.autopilot.default}`:""}))}static \u0275fac=function(e){return new(e||i)};static \u0275cmp=I({type:i,selectors:[["app-root"]],viewQuery:function(e,n){if(e&1&&Q(Ed,5)(Td,5),e&2){let o;N(o=F())&&(n.sideright=o.first),N(o=F())&&(n.fbMap=o.first)}},hostBindings:function(e,n){e&1&&u("visibilitychange",function(){return n.onVisibilityChange()},Oe)("keydown",function(r){return n.onDocumentKeydown(r)},Oe)},decls:172,vars:52,consts:[["layersmenu","matMenu"],["settingsmenu","matMenu"],["editmenu","matMenu"],["mainmenu","matMenu"],["sideright",""],["fbMap",""],["northArrow",""],[3,"ngClass"],[1,"appframe","mat-app-background"],["mat-menu-item","",3,"click"],["svgIcon","route",1,"icon-route"],[1,"icon-waypoint"],["mat-menu-item",""],["accept",".gpx,.json",3,"chosen","astext"],["svgIcon","route-import",1,"ob"],["svgIcon","route-export",1,"ob"],[1,"icon-accent"],[1,"icon-route"],["svgIcon","route-planning",1,"icon-route"],["theme-main","",1,"view"],["hasBackdrop","false",1,"pe-view-main"],["mode","side","position","end",3,"disableClose"],[2,"display","flex","flex-direction","column","position","relative"],[2,"overflow","hidden"],[2,"z-index","4700","position","fixed","top","0px","left","0px","width","100%"],[3,"apData"],[2,"display","relative","width","100%","height","100%",3,"dragover","drop"],[3,"drawEnded","activate","deactivate","exitMovingMap","resumeMovingMap","focusVessel","info","menuItemSelected","scaleUnits","setFocus","mapCenter","mapZoom","northUp","movingMap","vesselTrail","activeRoute","dblClickZoom","overZoomTiles","measureMode","drawMode"],[3,"inset"],[2,"position","absolute","top","60px","left","56px","width","50px"],["src","./assets/img/north_arrow.svg","width","50","height","70"],[1,"playbackPanel","mat-app-background"],[1,"navdataPanel"],[3,"action"],[1,"icon-warn"],["svgIcon","chart-display-settings-iec",1,"ob"],["matBadge","!","matBadgeOverlap","true","matBadgeSize","medium","matBadgePosition","below after","aria-hidden","false",3,"matBadgeHidden"],["svgIcon","radar-iec",1,"ob"],[3,"closed"],[3,"note","id","interacting"],[3,"region","id","related","interacting"],[3,"waypoint","id","related","interacting"],[3,"route","id","related","interacting"],[3,"connect","disconnect"],[3,"edit","move","panTo","note","id","interacting"],[3,"edit","panTo","region","id","related","interacting"],[3,"edit","panTo","waypoint","id","related","interacting"],[3,"edit","activate","panTo","route","id","related","interacting"],["mat-list-item",""],["mat-icon-button","",3,"click"],["mat-icon-button","","target","_blank","matTooltip","Open Instruments in window.","matTooltipPosition","right",3,"href"],["mat-icon-button","","matTooltip","Previous plugin","matTooltipPosition","below",3,"click","disabled"],["mat-icon-button","","matTooltip","Next plugin","matTooltipPosition","below",3,"click","disabled"],[2,"position","fixed","bottom","0","top","48px","overflow","auto","-webkit-overfow-scrolling","touch"],["sandbox","allow-scripts allow-same-origin allow-forms",2,"width","345px","height","100%",3,"src"],["mat-icon-button","","target","_blank","matTooltip","Open Instruments in window.","matTooltipPosition","right",3,"click","href"],["mode","query"],[3,"close","apData"],[3,"save","close"],[1,"leftTop","buttonPanel"],[1,"buttonPanelItem"],["mat-mini-fab","","matBadge","!","matBadgeOverlap","true","matTooltip","Menu","matTooltipPosition","right","aria-hidden","false",1,"button-secondary",3,"disabled","matBadgeHidden","matMenuTriggerFor"],[1,"buttonPanel","left"],[1,"leftMenuPanel"],[1,"statusBar"],[1,"statusBarItem"],[1,"rightTop","buttonPanel"],["mat-mini-fab","","matTooltipPosition","before",1,"button-secondary",3,"click","matTooltip"],[1,"buttonPanel","right",3,"top"],["mat-mini-fab","","matTooltip","Alarms","matTooltipPosition","left","matBadgeOverlap","true","aria-hidden","false",1,"button-warn",3,"click","matBadge","matBadgeHidden"],["svgIcon","alert-list",1,"ob"],["mat-mini-fab","","matTooltip","Routes, Waypoints, Notes, etc.","matTooltipPosition","right",1,"button-accent",3,"disabled","matMenuTriggerFor"],["mat-mini-fab","","matTooltip","Draw / Measure / Select","matTooltipPosition","right",1,"button-toolbar",3,"disabled","matMenuTriggerFor"],["mat-mini-fab","","matTooltipPosition","right",3,"click","ngClass","matTooltip"],[1,"ob",3,"svgIcon"],["mat-mini-fab","","matTooltipPosition","right",3,"click","ngClass","disabled","matTooltip"],["svgIcon","cent-iec",1,"ob"],["mat-mini-fab","","matTooltip","More actions","matTooltipPosition","right",1,"button-toolbar",3,"disabled","matMenuTriggerFor"],["mat-mini-fab","","matTooltip","Exit playback mode","matTooltipPosition","right",1,"button-warn",3,"click"],["mat-mini-fab","","matTooltip","What's New","matTooltipPosition","right",1,"button-accent",3,"click"],[3,"showSelf","radius","raised"],[3,"activate","deactivate","select","points","notes","closed","activeRoute","editingRouteId"],[3,"select","goto","deactivate","center","notes","closed","activeWaypoint","editingWaypointId"],[3,"closed","selectedCharts"],[3,"select","pan","closed","notes"],[3,"select","pan","closed","regions"],[3,"center","closed"],[3,"properties","closed","focusVessel","pan","focusId"],[3,"closed","showSelf","radius","raised"],["matTooltip","WakeLock is turned off","matTooltipPosition","below"],["matTooltip","Course data is hidden","matTooltipPosition","below"],["matTooltip","Vessels are hidden","matTooltipPosition","below"],["matTooltip","Notes are hidden","matTooltipPosition","below"],["matTooltip","No server messages!","matTooltipPosition","below",2,"background-color","red","color","white"],[1,"buttonPanel","right"],[1,"instrumentPanelToggle","buttonPanelItem"],["mat-mini-fab","","matTooltip","Constrain map zoom.","matTooltipPosition","before",3,"click","ngClass"],["mat-mini-fab","","matTooltip","Invert feature text color.","matTooltipPosition","before",3,"click","ngClass"],["mat-mini-fab","","matTooltip","Instruments","matTooltipPosition","before",1,"button-toolbar"],["mat-mini-fab","","matTooltip","Instruments","matTooltipPosition","before",1,"button-toolbar",3,"click"],["mat-mini-fab","","matTooltip","Web Audio off! Click to enable.","matTooltipPosition","before",1,"button-toolbar",3,"click"],["mat-mini-fab","","matTooltipPosition","before",3,"click","ngClass","matTooltip"],[3,"selected"],[3,"click","src","muted"],["mat-mini-fab","","matTooltip","Autopilot","matTooltipPosition","before",3,"click","ngClass"],["svgIcon","command-autopilot",1,"ob"],["mat-mini-fab","","matTooltip","Radar","matTooltipPosition","before",3,"click","ngClass","disabled"],["mat-mini-fab","","matTooltipPosition","before",1,"button-toolbar",3,"click","matTooltip"],[2,"border-radius","5px"],[2,"text-align","center"],[3,"alerts"],[1,"alarmPanel"],[2,"margin-bottom","5px"],[3,"closed","alerts"],[3,"nextPoint","routeEnd","audioStatus","alert","acknowledged","silenced","doNotPlaySound"],[3,"finish","cancel","undo"],[3,"index","total","circular"],[2,"display","flex","flex-wrap","nowrap"],[3,"selected","index","total","circular"],[1,"mat-app-background",2,"display","flex"],[2,"width","40px"],["mat-icon-button","","matTooltip","Course Settings",3,"click"],["svgIcon","navigation-route",1,"ob"],["mat-icon-button","","matTooltip","Autopilot Console","matTooltipPosition","above","matTooltip","Engage Autopilot",3,"click","disabled"],["svgIcon","command-autopilot",1,"ob",3,"color"],["mat-icon-button","","matTooltip","Restart XTE",3,"click"],["mat-icon-button","","matTooltip","Reverse route direction","matTooltipPosition","above",3,"click","disabled"],[3,"color"],[3,"title","value","units"],[3,"value"],[3,"title","value"],["subTitle","RT",3,"title","value","units"],["subTitle","RT",3,"value"],["subTitle","RT",3,"title","value"],[3,"radarClick","action"]],template:function(e,n){e&1&&(a(0,"div",7)(1,"div",8)(2,"mat-menu",null,0)(4,"button",9),u("click",function(){return n.displayLeftMenu("routeList",!0)}),b(5,"mat-icon",10),p(6," \xA0Routes "),s(),a(7,"button",9),u("click",function(){return n.displayLeftMenu("waypointList",!0)}),a(8,"mat-icon",11),p(9,"location_on"),s(),p(10," \xA0Waypoints "),s(),a(11,"button",9),u("click",function(){return n.displayLeftMenu("noteList",!0)}),a(12,"mat-icon"),p(13,"local_offer"),s(),p(14," \xA0Notes "),s(),a(15,"button",9),u("click",function(){return n.displayLeftMenu("regionList",!0)}),a(16,"mat-icon"),p(17,"tab_unselected"),s(),p(18," \xA0Regions "),s(),a(19,"button",9),u("click",function(){return n.displayLeftMenu("chartList",!0)}),a(20,"mat-icon"),p(21,"map"),s(),p(22," \xA0Charts "),s(),a(23,"button",9),u("click",function(){return n.displayLeftMenu("weatherList",!0)}),a(24,"mat-icon"),p(25,"cloud"),s(),p(26," \xA0Weather "),s(),f(27,Fd,4,0,"button",12),f(28,$d,4,0,"button",12),b(29,"mat-divider"),a(30,"button",12)(31,"ap-file-input",13),u("chosen",function(r){return n.importFile(r)}),b(32,"mat-icon",14),p(33," Import "),s()(),a(34,"button",9),u("click",function(){return n.exportToGPX()}),b(35,"mat-icon",15),p(36," \xA0Export "),s(),b(37,"mat-divider"),f(38,Bd,4,0,"button",12),f(39,qd,3,0,"div"),s(),a(40,"mat-menu",null,1),f(42,Ud,11,1),f(43,Hd,11,0),a(44,"a",9),u("click",function(){return n.toggleCourseData()}),a(45,"mat-icon"),p(46),s(),a(47,"span"),p(48),s()(),a(49,"a",9),u("click",function(){return n.toggleAisTargets()}),a(50,"mat-icon"),p(51),s(),a(52,"span"),p(53),s()(),a(54,"a",9),u("click",function(){return n.toggleNotes()}),a(55,"mat-icon"),p(56),s(),a(57,"span"),p(58),s()(),f(59,Wd,6,0),b(60,"mat-divider"),a(61,"a",9),u("click",function(){return n.openSettings()}),a(62,"mat-icon"),p(63,"settings"),s(),a(64,"span"),p(65,"Settings"),s()(),b(66,"mat-divider"),a(67,"a",9),u("click",function(){return n.openFeatureBrowser()}),a(68,"mat-icon",16),p(69,"tips_and_updates"),s(),a(70,"span"),p(71,"What's New"),s()()(),a(72,"mat-menu",null,2)(74,"a",9),u("click",function(){return n.mapInteract.startMeasuring("LineString")}),a(75,"mat-icon"),p(76,"straighten"),s(),a(77,"span"),p(78,"Measure"),s()(),a(79,"a",9),u("click",function(){return n.mapInteract.startMeasuring("Circle")}),a(80,"mat-icon"),p(81,"swap_vertical_circle"),s(),a(82,"span"),p(83,"Measure Radius"),s()(),b(84,"mat-divider"),a(85,"a",9),u("click",function(){return n.drawFeature("route")}),a(86,"mat-icon",17),p(87,"draw"),s(),a(88,"span"),p(89,"Draw Route"),s()(),a(90,"a",9),u("click",function(){return n.toggleRouteBuilderConsole(!0)}),b(91,"mat-icon",18),a(92,"span"),p(93,"Build Route"),s()(),b(94,"mat-divider"),f(95,Gd,5,0,"a",12),a(96,"a",9),u("click",function(){return n.drawFeature("waypoint")}),a(97,"mat-icon",11),p(98,"add_location_alt"),s(),a(99,"span"),p(100,"Drop Waypoint"),s()(),b(101,"mat-divider"),f(102,jd,5,0,"a",12),a(103,"a",9),u("click",function(){return n.drawFeature("region")}),a(104,"mat-icon"),p(105,"tab_unselected"),s(),a(106,"span"),p(107,"Draw Region"),s()()(),a(108,"mat-menu",null,3),f(110,Kd,6,2),f(111,Xd,5,0,"a",12),f(112,Yd,5,1,"a",12),a(113,"a",9),u("click",function(){return n.displayLeftMenu("aisList",!0)}),a(114,"mat-icon"),p(115,"directions_boat"),s(),a(116,"span"),p(117,"Vessels"),s()(),a(118,"a",9),u("click",function(){return n.importResourceSet()}),a(119,"mat-icon"),p(120,"upload"),s(),a(121,"span"),p(122,"Resource Sets"),s()(),f(123,Jd,5,0,"a",12),b(124,"mat-divider"),a(125,"a",9),u("click",function(){return n.openSettings()}),a(126,"mat-icon"),p(127,"settings"),s(),a(128,"span"),p(129,"Settings"),s()(),b(130,"mat-divider"),a(131,"a",9),u("click",function(){return n.openAbout()}),a(132,"mat-icon",16),p(133,"info_outline"),s(),a(134,"span"),p(135,"About"),s()(),a(136,"a",9),u("click",function(){return n.openFeatureBrowser()}),a(137,"mat-icon",16),p(138,"tips_and_updates"),s(),a(139,"span"),p(140,"What's New"),s()(),a(141,"button",9),u("click",function(){return n.app.showHelp()}),a(142,"mat-icon",16),p(143,"help"),s(),a(144,"span"),p(145,"Help"),s()()(),a(146,"div",19)(147,"mat-sidenav-container",20)(148,"mat-sidenav",21,4),f(150,rp,6,5,"info-panel")(151,lp,17,4,"div",22),s(),a(152,"mat-sidenav-content",23),f(153,cp,2,0,"div",24),f(154,dp,1,1,"autopilot-console",25),f(155,pp,1,0,"route-builder"),f(156,Zp,19,17),a(157,"div",26),u("dragover",function(r){return n.mapDragOver(r)})("drop",function(r){return n.mapDrop(r)}),a(158,"fb-map",27,5),u("drawEnded",function(r){return n.handleDrawEnded(r)})("activate",function(r){return n.activateRoute(r)})("deactivate",function(){return n.clearDestination()})("exitMovingMap",function(r){return n.toggleMoveMap(r)})("resumeMovingMap",function(){return n.resumeMoveMap()})("focusVessel",function(r){return n.switchActiveVessel(r)})("info",function(r){return n.featureProperties(r)})("menuItemSelected",function(r){return n.handleContextMenuSelection(r)}),s()(),b(160,"fb-plotterext-overlay")(161,"fb-pe-window-layer",28),a(162,"div",29),b(163,"img",30,6),s(),f(165,Qp,8,1,"div",31),f(166,eu,4,1),f(167,tu,1,0,"fb-interact-help"),f(168,_u,3,2,"div",32),f(169,fu,1,1,"mfb-container",33),s()(),b(170,"fb-plotterext-panel-drawer")(171,"fb-plotterext-runtimes"),s()()()),e&2&&(v("ngClass",ue(49,Ld,n.app.config.display.darkMode.enabled,n.stream.selfNightMode()||n.app.uiCtrl().forceNightMode)),c(27),h(n.app.featureFlags().resourceGroups?27:-1),c(),h(n.app.featureFlags().infoLayers?28:-1),c(3),v("astext",!0),c(7),h(n.app.featureFlags().resourceTracks?38:-1),c(),h(n.app.config.resources.paths.length!==0?39:-1),c(3),h(n.app.config.vessels.trail&&n.app.selfTrail().length!==0?42:-1),c(),h(n.course.courseData().position?43:-1),c(3),B(n.app.config.ui.showCourseData?"visibility_off":"compare_arrows"),c(2),pe("",n.app.config.ui.showCourseData?"Hide":"Show"," Course Data"),c(3),B(n.app.config.ui.showAisTargets?"visibility_off":"directions_boat"),c(2),pe("",n.app.config.ui.showAisTargets?"Hide":"Show"," Vessels"),c(3),B(n.app.config.ui.showNotes?"visibility_off":"local_offer"),c(2),pe("",n.app.config.ui.showNotes?"Hide":"Show"," Notes"),c(),h(n.app.featureFlags().weatherApi&&n.app.data.vessels.showSelf?59:-1),c(36),h(n.app.data.vessels.showSelf?95:-1),c(7),h(n.app.config.map.zoomLevel>=n.app.config.resources.notes.minZoom?102:-1),c(8),h(!n.app.hostDef.params.token&&n.app.data.loginRequired?110:-1),c(),h(!n.isInteracting()&&n.app.featureFlags().anchorApi?111:-1),c(),h(!n.isInteracting()&&n.app.featureFlags().radarApi&&n.radarApi.radarId()&&!n.app.instrumentPanel().open&&n.app.data.vessels.showSelf?112:-1),c(11),h(n.features.playbackAPI?123:-1),c(25),G("width",n.app.instrumentPanel().open?"350px":"250px"),v("disableClose",!1),c(2),h(n.infoPanel.item&&!n.app.instrumentPanel().open?150:151),c(3),h(n.app.sIsFetching()?153:-1),c(),h(n.app.uiCtrl().autopilotConsole?154:-1),c(),h(n.app.uiCtrl().routeBuilder?155:-1),c(),h(!n.app.kioskMode()&&!n.app.uiCtrl().suppressContextMenu?156:-1),c(2),v("scaleUnits",n.app.config.units.distance)("setFocus",n.mapSetFocus())("mapCenter",n.mapCenter())("mapZoom",n.app.config.map.zoomLevel)("northUp",n.app.uiConfig().mapNorthUp)("movingMap",n.app.uiConfig().mapMove)("vesselTrail",n.app.selfTrail())("activeRoute",n.app.data.activeRoute)("dblClickZoom",n.app.config.map.doubleClickZoom)("overZoomTiles",n.app.config.map.overZoomTiles)("measureMode",n.mapInteract.isMeasuring())("drawMode",n.mapInteract.isDrawing()),c(3),v("inset",!n.app.kioskMode()&&!n.app.uiCtrl().suppressContextMenu?54:0),c(2),G("transform",n.getOrientation()),c(2),h(n.mode===1?165:-1),c(),h(n.app.kioskMode()?-1:166),c(),h(n.isInteracting()?167:-1),c(),h(n.isInteracting()?-1:168),c(),h(!n.isInteracting()&&!n.app.kioskMode()?169:-1))},dependencies:[lt,at,rt,st,yo,Zt,xo,dt,wo,vo,Pe,ti,Ae,si,ai,ri,oi,he,fe,it,nt,Ni,Vi,$n,Fn,_i,fi,hi,gi,Ci,Ti,Si,po,fo,ao,oo,io,lo,Xi,Ki,co,Di,Li,Qi,ji,uo,St,Mt,At,kt],styles:["mat-sidenav-container[_ngcontent-%COMP%]{height:100%}mat-sidenav[_ngcontent-%COMP%]{width:200px}mat-nav-list[_ngcontent-%COMP%]{padding-top:0}.appframe[_ngcontent-%COMP%]{width:100vw;height:100vh;background-color:#000;color:#fff;overflow:hidden}.view[_ngcontent-%COMP%]{inset:0;overflow:hidden;scrollbar-width:none;position:fixed;border-top:silver 0px solid;display:flex;flex-direction:row}.view[_ngcontent-%COMP%] .pe-view-main[_ngcontent-%COMP%]{flex:1 1 auto;min-width:0;height:100%}.leftMenuPanel[_ngcontent-%COMP%]{position:absolute;top:0;left:0;bottom:0;padding-left:0;z-index:5000;background-color:#c8c8c866;width:315px}.statusBar[_ngcontent-%COMP%]{width:max-content;z-index:4800;position:absolute;right:55px;top:20px;padding:1px;overflow:hidden;text-align:right;display:flex}.statusBarItem[_ngcontent-%COMP%]{padding-left:5px}.statusBarItem[_ngcontent-%COMP%] .mat-icon[_ngcontent-%COMP%]{background-color:#ffffff80;color:#000;border-radius:10px}.buttonPanel[_ngcontent-%COMP%]{width:50px;z-index:4800;position:absolute;padding:5px 2px 2px;overflow:auto;scrollbar-width:none}.buttonPanel.rightTop[_ngcontent-%COMP%]{right:0;top:0;padding:9px 2px 10px}.buttonPanel.leftTop[_ngcontent-%COMP%]{left:0;top:0;padding:9px 2px 10px}.buttonPanel.left[_ngcontent-%COMP%]{top:60px;left:0;bottom:0}.buttonPanel.right[_ngcontent-%COMP%]{top:60px;right:0;bottom:80px}.buttonPanel[_ngcontent-%COMP%] .buttonPanelItem[_ngcontent-%COMP%]{text-align:center;height:48px;padding:5px 0}.mapButton[_ngcontent-%COMP%]{position:fixed;z-index:4900}.alarmPanel[_ngcontent-%COMP%]{position:absolute;z-index:4902;top:55px;left:15%;right:15%}.measurePanel[_ngcontent-%COMP%]{font-family:roboto;font-size:10pt}.playbackPanel[_ngcontent-%COMP%]{position:absolute;z-index:4900;bottom:150px;left:50px;top:auto;width:100px;border:gray 1px solid;border-radius:5px;font-family:roboto;text-align:center}.navdataPanel[_ngcontent-%COMP%]{position:absolute;z-index:4901;bottom:30px;left:10px;max-width:calc(100% - 75px);max-height:100px;text-align:center;display:flex;flex-wrap:nowrap;overflow-x:auto;overflow-y:hidden;border:gray 1px solid}.bottomSheet[_ngcontent-%COMP%]{position:absolute;z-index:4902;bottom:0;left:15%;min-width:400px;max-width:100%;height:180px;overflow:auto}.bottomSheet[_ngcontent-%COMP%] .title[_ngcontent-%COMP%]{flex:1 1 auto;text-align:center;font-family:roboto;font-weight:500;line-height:2.5em}.control[_ngcontent-%COMP%]{display:flex;align-items:center;justify-content:flex-start;margin:20px}.ol-mouse-position[_ngcontent-%COMP%]{position:fixed;bottom:10px;right:45%;color:#1e1e1e;font-family:roboto;background-color:#fafafab3}.ol-zoom[_ngcontent-%COMP%]{position:fixed;top:10px;left:100px;color:#1e1e1e;font-family:roboto;background-color:transparent;height:45px}.instrumentPanelToggle[_ngcontent-%COMP%]{display:block}@media only screen and (max-width:650px){.bottomSheet[_ngcontent-%COMP%]{left:0;min-width:100%}}@media only screen and (max-width:800px){.instrumentPanelToggle[_ngcontent-%COMP%]{display:none}}@media only screen and (max-height:600px){.navdataPanel[_ngcontent-%COMP%]{left:50px;max-width:calc(100% - 115px)}}"]})};Bn(It,{providers:[Nn({eventCoalescing:!0,runCoalescing:!0}),zn(qn())]}).then(i=>{try{if(new URLSearchParams(window.location.search).has("perfprobe")){let t=i.injector.get(X),e=window;e.__cd=0,t.onMicrotaskEmpty.subscribe(()=>{e.__cd++})}}catch(t){}}).catch(i=>console.error(i));
|
|
466
|
+
Do you want to start from the first point?`,"Start Route").subscribe(g=>{g&&r()});return}r(d)})}routeNextPoint(t){this.course.rejoinRouteAt(t),this.focusMap()}featureProperties(t){return O(this,null,function*(){let e;if(t.type==="route")try{let n=!!t.resource,o;n?o=t.resource[1]:(this.app.sIsFetching.set(!0),o=yield this.skres.fromServer("routes",t.id),this.app.sIsFetching.set(!1)),o&&this.bottomSheet.open(Ii,{disableClose:!0,data:{title:"Route Properties",resource:[t.id,o,!1],type:t.type,noButtons:n}}).afterDismissed().subscribe(r=>{r&&this.clearDestination(),this.focusMap()})}catch(n){this.app.sIsFetching.set(!1),this.app.parseHttpErrorResponse(n)}else if(t.type==="aton"||t.type==="meteo"){let n,o,r;t.type==="meteo"?(e=this.app.data.meteo.get(t.id),n="Meteo Properties",o="air",r=t.type):t.id.slice(0,3)==="sar"?(e=this.app.data.sar.get(t.id),n="SaR Properties",o="tour",r="sar"):(e=this.app.data.atons.get(t.id),n="AtoN Properties",o="beenhere",r="aton"),e&&this.bottomSheet.open($i,{disableClose:!0,data:{title:n,target:e,id:t.id,icon:o,type:r}}).afterDismissed().subscribe(()=>this.focusMap())}else if(t.type==="aircraft")e=this.app.data.aircraft.get(t.id),e&&this.bottomSheet.open(zi,{disableClose:!0,data:{title:"Aircraft Properties",target:e,id:t.id}}).afterDismissed().subscribe(()=>this.focusMap());else if(t.type==="alarm")this.notiMgr.showAlertInfo(t.id);else if(t.type==="rset")e=this.skresOther.fromResourceSetCache(t.id),e&&this.bottomSheet.open(eo,{disableClose:!0,data:{id:t.id,item:e}}).afterDismissed().subscribe(()=>{this.focusMap()});else{let n=t.type==="self"?t.type:t.id.includes("vessels.")?t.id.split(".")[1]:t.id;try{this.app.sIsFetching.set(!0),e=yield this.skres.vesselFromServer(n),this.app.sIsFetching.set(!1),e&&this.bottomSheet.open(Bi,{disableClose:!0,data:{title:"Vessel Properties",target:e}}).afterDismissed().subscribe(()=>this.focusMap())}catch(o){this.app.sIsFetching.set(!1),this.app.parseHttpErrorResponse(o)}}})}mapDragOver(t){t.preventDefault()}mapDrop(t){if(t.preventDefault(),t.dataTransfer.files)if(t.dataTransfer.files.length>1)this.app.showAlert("Load Resources",`Multiple files provided!
|
|
467
|
+
Please select only one file for processing.`);else{let e=new FileReader;if(e.onerror=()=>{this.app.showAlert("File Load error","There was an error reading the file contents!")},!t.dataTransfer.files[0].name)return;let n=t.dataTransfer.files[0].name;e.onload=()=>{this.processGPX({name:n,data:e.result})},e.readAsText(t.dataTransfer.files[0])}}switchActiveVessel(t=null){if(this.app.data.vessels.activeId=t,!t)this.app.data.vessels.active=this.app.data.vessels.self;else{let e=this.app.data.vessels.aisTargets.get(t);e?(this.app.data.vessels.active=e,this.sideright.close()):(this.app.data.vessels.active=this.app.data.vessels.self,this.app.data.vessels.activeId=null)}this.app.data.activeRoute=null,this.clearCourseData(),this.app.debug(`** Active vessel: ${this.app.data.vessels.activeId} `),this.app.debug(this.app.data.vessels.active)}switchMode(t,e){this.app.debug(`switchMode from: ${this.mode} to ${t}`),t===1?(this.app.db.saveTrail("self",this.app.selfTrail()),this.app.selfTrail.set([])):this.app.db.getTrail("self").then(n=>{this.app.selfTrail.update(()=>n&&n.value?n.value:[])}),this.switchActiveVessel(),this.openSKStream(e,t,!0)}showSelectMode(){this.mode===0?this.app.showConfirm("Do you want to change to History Playback mode?","Switch Mode").subscribe(t=>{t&&this.showPlaybackSettings()}):this.app.showConfirm("Do you want to exit History Playback mode?","Exit History Playback").subscribe(t=>{t&&this.switchMode(0)})}handleSelectionEnded(t){t.mode==="seedChart"&&this.skres.seedChartCache(t.data,t.bbox)}drawFeature(t){this.mapInteract.startDrawing(t)}onRouteInfoEdit(t){let e=this.routeBuffers.getForRoute(t);e&&(!e.saved||e.dirty)?this.saveRouteBuffer(e.routeId):this.skres.editRouteInfo(t)}saveRouteBuffer(t){return O(this,null,function*(){try{let e=yield this.plotterExt.saveBuffer(t,{dialog:!0,promote:!0});e&&this.infoPanel.open("routes",e.href)}catch(e){}})}handleDrawEnded(t){switch(this.mapInteract.isDrawing(),this.app.data.editingId="",this.mapInteract.draw.resourceType){case"note":{let e={position:t.coordinates};this.mapInteract.draw.properties.group&&(e.group=this.mapInteract.draw.properties.group),this.skres.showNoteEditor(e);break}case"waypoint":this.skres.newWaypointAt(t.coordinates);break;case"route":this.routeBuffers.create({points:jt(t.coordinates,t.coordsMetadata)});break;case"region":{let e=new _i;e.feature.geometry.coordinates=[Ut.normaliseCoords(t.coordinates)],this.skres.newRegion(e);break}}}handleInteractionFinish(){this.mapInteract.isDrawing()?this.fbMap.finishDrawing():this.closeInteraction(!0)}handleInteractionUndo(){this.fbMap.undoInteraction()}onDocumentKeydown(t){!Eo(t)||!this.mapInteract.canUndo()||(t.preventDefault(),this.handleInteractionUndo())}closeInteraction(t=!1){if(this.app.data.editingId="",this.mapInteract.isBoxSelecting()&&this.mapInteract.stopBoxSelection(),this.mapInteract.isMeasuring()&&this.mapInteract.stopMeasuring(),this.mapInteract.isDrawing()&&this.mapInteract.stopDrawing(),this.mapInteract.isModifying()&&(this.mapInteract.stopModifying(),this.app.data.activeRouteIsEditing=!1,this.mapInteract.draw.forSave?.id)){if(this.mapInteract.draw.forSave.id==="anchor"){this.mapInteract.draw.forSave=null,this.focusMap();return}let e=this.mapInteract.draw.forSave.id.split(".");if(e[0]==="route"){this.applyModifyResult(t);return}this.app.showConfirm(`Do you want to save the changes made to ${e[0]}?`,"Save Changes").subscribe(n=>this.applyModifyResult(n))}}applyModifyResult(t){let e=this.mapInteract.draw.forSave.id.split("."),n=this.mapInteract.draw.forSave.coords;if(t){if(e[0]==="route"){let o=this.routeBuffers.get(e[1]);if(o&&!o.saved){let r=this.mapInteract.draw.forSave.coordsMetadata;this.routeBuffers.replace(e[1],jt(n,r))}else this.plotterExt.saveNativeRouteEdit(e[1],n,this.mapInteract.draw.forSave.coordsMetadata)}e[0]==="waypoint"&&(this.skres.updateWaypointPosition(e[1],n),e[1]===this.app.data.activeWaypoint&&this.course.setDestination({latitude:n[1],longitude:n[0]})),e[0]==="note"&&this.skres.updateNotePosition(e[1],n),e[0]==="region"&&this.skres.updateRegionCoords(e[1],n)}else{if(e[0]==="route"){let o=this.routeBuffers.get(e[1]);o&&(!o.saved||o.dirty)?this.routeBuffers.refresh():this.skres.refreshRoutes()}e[0]==="waypoint"&&this.skres.refreshWaypoints(),e[0]==="note"&&this.skres.refreshNotes(),e[0]==="region"&&this.skres.refreshRegions()}this.mapInteract.draw.forSave=null,this.focusMap()}loadSymbolsThenFetchResources(){return O(this,null,function*(){yield this.symbols.load(),di(this.symbols),this.fetchResources(!0)})}fetchResources(t=!1){this.skres.refreshRoutes(),this.skres.refreshWaypoints(),this.skres.refreshCharts(),this.skres.refreshRegions(),t&&this.fetchOtherResources()}fetchOtherResources(){this.skres.refreshTracks(),this.skresOther.refreshResourceSetsInBounds()}openSKStream(t=null,e=0,n=!1){if(n){this.streamOptions={options:t,toMode:e},this.stream.close();return}this.stream.sendConfig(this.app.config),this.stream.open(t)}queryAfterConnect(){this.signalk.server.info.version.split(".")[0]==="1"&&this.app.showAlert("Unsupported Server Version:",`The connected Signal K server is not supported by this version of Freeboard-SK.
|
|
468
|
+
Signal K server version 2 or later is required!`),this.app.alignCustomResourcesPaths(),this.signalk.api.getSelf().subscribe(t=>{this.stream.post({cmd:"vessel",options:{context:"self",name:t.name}}),this.anchor.queryAnchorStatus(void 0,this.app.data.vessels.self.position),this.radarApi.init()},t=>{t.status&&t.status===401&&this.showLogin(null,!1,!0),this.app.debug("No vessel data available!")})}onConnect(t){this.app.showMessage("Connection Open.",!1,2e3),this.app.debug(t),this.queryAfterConnect(),this.startTimers(),this.temporaryRoutes.sweep()}onClose(t){if(this.app.debug("onClose: STREAM connection closed..."),this.app.debug(t),this.stopTimers(),t.result)this.openSKStream(this.streamOptions.options,this.streamOptions.toMode);else{let e={title:"Connection Closed:",buttonText:"Re-connect",message:""};t.playback?(e.buttonText="OK",e.message="Unable to open Playback connection.",this.app.showAlert(e.message,e.title,e.buttonText).subscribe(()=>{this.mode===0?this.switchMode(this.mode):this.showPlaybackSettings()})):this.reconnecting||(this.reconnecting=!0,setTimeout(()=>{this.reconnecting=!1,this.openSKStream(this.streamOptions.options,this.mode)},5e3))}}reconnecting=!1;onError(t){this.app.showMessage("Connection Error!",!1,2e3),console.warn("Stream Error!",t)}onMessage(t){if(t.action==="hello"){this.app.debug(t),t.playback?this.mode=1:(this.mode=0,this.stream.subscribe()),this.app.data.selfId=t.self;return}else if(t.action==="update"){if(this.mode===1){let e=new Date(t.timestamp);this.playbackTime.update(()=>`${e.toDateString().slice(4)} ${e.toTimeString().slice(0,8)}`)}else this.playbackTime.set(null),this.setDarkTheme();this.updateNavPanel()}}updateNavPanel(){this.navDataPanel.update(()=>({show:!!(this.app.data.activeRoute||this.app.data.activeWaypoint||this.course.courseData().position),nextPointCtrl:!!this.app.data.activeRoute,apModeColor:this.app.data.vessels.self.autopilot.enabled?"primary":"",apModeText:this.app.data.vessels.self.autopilot.default?`Autopilot: ${this.app.data.vessels.self.autopilot.default}`:""}))}static \u0275fac=function(e){return new(e||i)};static \u0275cmp=I({type:i,selectors:[["app-root"]],viewQuery:function(e,n){if(e&1&&Q(Ed,5)(Td,5),e&2){let o;N(o=F())&&(n.sideright=o.first),N(o=F())&&(n.fbMap=o.first)}},hostBindings:function(e,n){e&1&&u("visibilitychange",function(){return n.onVisibilityChange()},Oe)("keydown",function(r){return n.onDocumentKeydown(r)},Oe)},decls:171,vars:52,consts:[["layersmenu","matMenu"],["settingsmenu","matMenu"],["editmenu","matMenu"],["mainmenu","matMenu"],["sideright",""],["fbMap",""],["northArrow",""],[3,"ngClass"],[1,"appframe","mat-app-background"],["mat-menu-item","",3,"click"],["svgIcon","route",1,"icon-route"],[1,"icon-waypoint"],["mat-menu-item",""],["accept",".gpx,.json",3,"chosen","astext"],["svgIcon","route-import",1,"ob"],["svgIcon","route-export",1,"ob"],[1,"icon-accent"],["svgIcon","bearing-distance"],[1,"icon-route"],["svgIcon","route-planning",1,"icon-route"],["theme-main","",1,"view"],["hasBackdrop","false",1,"pe-view-main"],["mode","side","position","end",3,"disableClose"],[2,"display","flex","flex-direction","column","position","relative"],[2,"overflow","hidden"],[2,"z-index","4700","position","fixed","top","0px","left","0px","width","100%"],[3,"apData"],[2,"display","relative","width","100%","height","100%",3,"dragover","drop"],[3,"drawEnded","activate","deactivate","exitMovingMap","resumeMovingMap","focusVessel","info","menuItemSelected","scaleUnits","setFocus","mapCenter","mapZoom","northUp","movingMap","vesselTrail","activeRoute","dblClickZoom","overZoomTiles","measureMode","drawMode"],[3,"inset"],[2,"position","absolute","top","60px","left","56px","width","50px"],["src","./assets/img/north_arrow.svg","width","50","height","70"],[1,"playbackPanel","mat-app-background"],[1,"navdataPanel"],[3,"action"],[1,"icon-warn"],["svgIcon","chart-display-settings-iec",1,"ob"],["matBadge","!","matBadgeOverlap","true","matBadgeSize","medium","matBadgePosition","below after","aria-hidden","false",3,"matBadgeHidden"],["svgIcon","radar-iec",1,"ob"],[3,"closed"],[3,"note","id","interacting"],[3,"region","id","related","interacting"],[3,"waypoint","id","related","interacting"],[3,"route","id","related","interacting"],[3,"connect","disconnect"],[3,"edit","move","panTo","note","id","interacting"],[3,"edit","panTo","region","id","related","interacting"],[3,"edit","panTo","waypoint","id","related","interacting"],[3,"edit","activate","panTo","route","id","related","interacting"],["mat-list-item",""],["mat-icon-button","",3,"click"],["mat-icon-button","","target","_blank","matTooltip","Open Instruments in window.","matTooltipPosition","right",3,"href"],["mat-icon-button","","matTooltip","Previous plugin","matTooltipPosition","below",3,"click","disabled"],["mat-icon-button","","matTooltip","Next plugin","matTooltipPosition","below",3,"click","disabled"],[2,"position","fixed","bottom","0","top","48px","overflow","auto","-webkit-overfow-scrolling","touch"],["sandbox","allow-scripts allow-same-origin allow-forms",2,"width","345px","height","100%",3,"src"],["mat-icon-button","","target","_blank","matTooltip","Open Instruments in window.","matTooltipPosition","right",3,"click","href"],["mode","query"],[3,"close","apData"],[3,"save","close"],[1,"leftTop","buttonPanel"],[1,"buttonPanelItem"],["mat-mini-fab","","matBadge","!","matBadgeOverlap","true","matTooltip","Menu","matTooltipPosition","right","aria-hidden","false",1,"button-secondary",3,"disabled","matBadgeHidden","matMenuTriggerFor"],[1,"buttonPanel","left"],[1,"leftMenuPanel"],[1,"statusBar"],[1,"statusBarItem"],[1,"rightTop","buttonPanel"],["mat-mini-fab","","matTooltipPosition","before",1,"button-secondary",3,"click","matTooltip"],[1,"buttonPanel","right",3,"top"],["mat-mini-fab","","matTooltip","Alarms","matTooltipPosition","left","matBadgeOverlap","true","aria-hidden","false",1,"button-warn",3,"click","matBadge","matBadgeHidden"],["svgIcon","alert-list",1,"ob"],["mat-mini-fab","","matTooltip","Routes, Waypoints, Notes, etc.","matTooltipPosition","right",1,"button-accent",3,"disabled","matMenuTriggerFor"],["mat-mini-fab","","matTooltip","Draw / Measure / Select","matTooltipPosition","right",1,"button-toolbar",3,"disabled","matMenuTriggerFor"],["mat-mini-fab","","matTooltipPosition","right",3,"click","ngClass","matTooltip"],[1,"ob",3,"svgIcon"],["mat-mini-fab","","matTooltipPosition","right",3,"click","ngClass","disabled","matTooltip"],["svgIcon","cent-iec",1,"ob"],["mat-mini-fab","","matTooltip","More actions","matTooltipPosition","right",1,"button-toolbar",3,"disabled","matMenuTriggerFor"],["mat-mini-fab","","matTooltip","Exit playback mode","matTooltipPosition","right",1,"button-warn",3,"click"],["mat-mini-fab","","matTooltip","What's New","matTooltipPosition","right",1,"button-accent",3,"click"],[3,"showSelf","radius","raised"],[3,"activate","deactivate","select","points","notes","closed","activeRoute","editingRouteId"],[3,"select","goto","deactivate","center","notes","closed","activeWaypoint","editingWaypointId"],[3,"closed","selectedCharts"],[3,"select","pan","closed","notes"],[3,"select","pan","closed","regions"],[3,"center","closed"],[3,"properties","closed","focusVessel","pan","focusId"],[3,"closed","showSelf","radius","raised"],["matTooltip","WakeLock is turned off","matTooltipPosition","below"],["matTooltip","Course data is hidden","matTooltipPosition","below"],["matTooltip","Vessels are hidden","matTooltipPosition","below"],["matTooltip","Notes are hidden","matTooltipPosition","below"],["matTooltip","No server messages!","matTooltipPosition","below",2,"background-color","red","color","white"],[1,"buttonPanel","right"],[1,"instrumentPanelToggle","buttonPanelItem"],["mat-mini-fab","","matTooltip","Constrain map zoom.","matTooltipPosition","before",3,"click","ngClass"],["mat-mini-fab","","matTooltip","Invert feature text color.","matTooltipPosition","before",3,"click","ngClass"],["mat-mini-fab","","matTooltip","Instruments","matTooltipPosition","before",1,"button-toolbar"],["mat-mini-fab","","matTooltip","Instruments","matTooltipPosition","before",1,"button-toolbar",3,"click"],["mat-mini-fab","","matTooltip","Web Audio off! Click to enable.","matTooltipPosition","before",1,"button-toolbar",3,"click"],["mat-mini-fab","","matTooltipPosition","before",3,"click","ngClass","matTooltip"],[3,"selected"],[3,"click","src","muted"],["mat-mini-fab","","matTooltip","Autopilot","matTooltipPosition","before",3,"click","ngClass"],["svgIcon","command-autopilot",1,"ob"],["mat-mini-fab","","matTooltip","Radar","matTooltipPosition","before",3,"click","ngClass","disabled"],["mat-mini-fab","","matTooltipPosition","before",1,"button-toolbar",3,"click","matTooltip"],[2,"border-radius","5px"],[2,"text-align","center"],[3,"alerts"],[1,"alarmPanel"],[2,"margin-bottom","5px"],[3,"closed","alerts"],[3,"nextPoint","routeEnd","audioStatus","alert","acknowledged","silenced","doNotPlaySound"],[3,"finish","cancel","undo"],[3,"index","total","circular"],[2,"display","flex","flex-wrap","nowrap"],[3,"selected","index","total","circular"],[1,"mat-app-background",2,"display","flex"],[2,"width","40px"],["mat-icon-button","","matTooltip","Course Settings",3,"click"],["svgIcon","navigation-route",1,"ob"],["mat-icon-button","","matTooltip","Autopilot Console","matTooltipPosition","above","matTooltip","Engage Autopilot",3,"click","disabled"],["svgIcon","command-autopilot",1,"ob",3,"color"],["mat-icon-button","","matTooltip","Restart XTE",3,"click"],["mat-icon-button","","matTooltip","Reverse route direction","matTooltipPosition","above",3,"click","disabled"],[3,"color"],[3,"title","value","units"],[3,"value"],[3,"title","value"],["subTitle","RT",3,"title","value","units"],["subTitle","RT",3,"value"],["subTitle","RT",3,"title","value"],[3,"radarClick","action"]],template:function(e,n){e&1&&(a(0,"div",7)(1,"div",8)(2,"mat-menu",null,0)(4,"button",9),u("click",function(){return n.displayLeftMenu("routeList",!0)}),b(5,"mat-icon",10),p(6," \xA0Routes "),s(),a(7,"button",9),u("click",function(){return n.displayLeftMenu("waypointList",!0)}),a(8,"mat-icon",11),p(9,"location_on"),s(),p(10," \xA0Waypoints "),s(),a(11,"button",9),u("click",function(){return n.displayLeftMenu("noteList",!0)}),a(12,"mat-icon"),p(13,"local_offer"),s(),p(14," \xA0Notes "),s(),a(15,"button",9),u("click",function(){return n.displayLeftMenu("regionList",!0)}),a(16,"mat-icon"),p(17,"tab_unselected"),s(),p(18," \xA0Regions "),s(),a(19,"button",9),u("click",function(){return n.displayLeftMenu("chartList",!0)}),a(20,"mat-icon"),p(21,"map"),s(),p(22," \xA0Charts "),s(),a(23,"button",9),u("click",function(){return n.displayLeftMenu("weatherList",!0)}),a(24,"mat-icon"),p(25,"cloud"),s(),p(26," \xA0Weather "),s(),f(27,Fd,4,0,"button",12),f(28,Bd,4,0,"button",12),b(29,"mat-divider"),a(30,"button",12)(31,"ap-file-input",13),u("chosen",function(r){return n.importFile(r)}),b(32,"mat-icon",14),p(33," Import "),s()(),a(34,"button",9),u("click",function(){return n.exportToGPX()}),b(35,"mat-icon",15),p(36," \xA0Export "),s(),b(37,"mat-divider"),f(38,$d,4,0,"button",12),f(39,qd,3,0,"div"),s(),a(40,"mat-menu",null,1),f(42,Ud,11,1),f(43,Hd,11,0),a(44,"a",9),u("click",function(){return n.toggleCourseData()}),a(45,"mat-icon"),p(46),s(),a(47,"span"),p(48),s()(),a(49,"a",9),u("click",function(){return n.toggleAisTargets()}),a(50,"mat-icon"),p(51),s(),a(52,"span"),p(53),s()(),a(54,"a",9),u("click",function(){return n.toggleNotes()}),a(55,"mat-icon"),p(56),s(),a(57,"span"),p(58),s()(),f(59,Wd,6,0),b(60,"mat-divider"),a(61,"a",9),u("click",function(){return n.openSettings()}),a(62,"mat-icon"),p(63,"settings"),s(),a(64,"span"),p(65,"Settings"),s()(),b(66,"mat-divider"),a(67,"a",9),u("click",function(){return n.openFeatureBrowser()}),a(68,"mat-icon",16),p(69,"tips_and_updates"),s(),a(70,"span"),p(71,"What's New"),s()()(),a(72,"mat-menu",null,2)(74,"a",9),u("click",function(){return n.mapInteract.startMeasuring("LineString")}),a(75,"mat-icon"),p(76,"straighten"),s(),a(77,"span"),p(78,"Measure"),s()(),a(79,"a",9),u("click",function(){return n.mapInteract.startMeasuring("BearingDistance")}),b(80,"mat-icon",17),a(81,"span"),p(82,"Bearing & Distance"),s()(),b(83,"mat-divider"),a(84,"a",9),u("click",function(){return n.drawFeature("route")}),a(85,"mat-icon",18),p(86,"draw"),s(),a(87,"span"),p(88,"Draw Route"),s()(),a(89,"a",9),u("click",function(){return n.toggleRouteBuilderConsole(!0)}),b(90,"mat-icon",19),a(91,"span"),p(92,"Build Route"),s()(),b(93,"mat-divider"),f(94,Gd,5,0,"a",12),a(95,"a",9),u("click",function(){return n.drawFeature("waypoint")}),a(96,"mat-icon",11),p(97,"add_location_alt"),s(),a(98,"span"),p(99,"Drop Waypoint"),s()(),b(100,"mat-divider"),f(101,jd,5,0,"a",12),a(102,"a",9),u("click",function(){return n.drawFeature("region")}),a(103,"mat-icon"),p(104,"tab_unselected"),s(),a(105,"span"),p(106,"Draw Region"),s()()(),a(107,"mat-menu",null,3),f(109,Kd,6,2),f(110,Xd,5,0,"a",12),f(111,Yd,5,1,"a",12),a(112,"a",9),u("click",function(){return n.displayLeftMenu("aisList",!0)}),a(113,"mat-icon"),p(114,"directions_boat"),s(),a(115,"span"),p(116,"Vessels"),s()(),a(117,"a",9),u("click",function(){return n.importResourceSet()}),a(118,"mat-icon"),p(119,"upload"),s(),a(120,"span"),p(121,"Resource Sets"),s()(),f(122,Jd,5,0,"a",12),b(123,"mat-divider"),a(124,"a",9),u("click",function(){return n.openSettings()}),a(125,"mat-icon"),p(126,"settings"),s(),a(127,"span"),p(128,"Settings"),s()(),b(129,"mat-divider"),a(130,"a",9),u("click",function(){return n.openAbout()}),a(131,"mat-icon",16),p(132,"info_outline"),s(),a(133,"span"),p(134,"About"),s()(),a(135,"a",9),u("click",function(){return n.openFeatureBrowser()}),a(136,"mat-icon",16),p(137,"tips_and_updates"),s(),a(138,"span"),p(139,"What's New"),s()(),a(140,"button",9),u("click",function(){return n.app.showHelp()}),a(141,"mat-icon",16),p(142,"help"),s(),a(143,"span"),p(144,"Help"),s()()(),a(145,"div",20)(146,"mat-sidenav-container",21)(147,"mat-sidenav",22,4),f(149,rp,6,5,"info-panel")(150,lp,17,4,"div",23),s(),a(151,"mat-sidenav-content",24),f(152,cp,2,0,"div",25),f(153,dp,1,1,"autopilot-console",26),f(154,pp,1,0,"route-builder"),f(155,Zp,19,17),a(156,"div",27),u("dragover",function(r){return n.mapDragOver(r)})("drop",function(r){return n.mapDrop(r)}),a(157,"fb-map",28,5),u("drawEnded",function(r){return n.handleDrawEnded(r)})("activate",function(r){return n.activateRoute(r)})("deactivate",function(){return n.clearDestination()})("exitMovingMap",function(r){return n.toggleMoveMap(r)})("resumeMovingMap",function(){return n.resumeMoveMap()})("focusVessel",function(r){return n.switchActiveVessel(r)})("info",function(r){return n.featureProperties(r)})("menuItemSelected",function(r){return n.handleContextMenuSelection(r)}),s()(),b(159,"fb-plotterext-overlay")(160,"fb-pe-window-layer",29),a(161,"div",30),b(162,"img",31,6),s(),f(164,Qp,8,1,"div",32),f(165,eu,4,1),f(166,tu,1,0,"fb-interact-help"),f(167,_u,3,2,"div",33),f(168,fu,1,1,"mfb-container",34),s()(),b(169,"fb-plotterext-panel-drawer")(170,"fb-plotterext-runtimes"),s()()()),e&2&&(v("ngClass",ue(49,Ld,n.app.config.display.darkMode.enabled,n.stream.selfNightMode()||n.app.uiCtrl().forceNightMode)),c(27),h(n.app.featureFlags().resourceGroups?27:-1),c(),h(n.app.featureFlags().infoLayers?28:-1),c(3),v("astext",!0),c(7),h(n.app.featureFlags().resourceTracks?38:-1),c(),h(n.app.config.resources.paths.length!==0?39:-1),c(3),h(n.app.config.vessels.trail&&n.app.selfTrail().length!==0?42:-1),c(),h(n.course.courseData().position?43:-1),c(3),$(n.app.config.ui.showCourseData?"visibility_off":"compare_arrows"),c(2),pe("",n.app.config.ui.showCourseData?"Hide":"Show"," Course Data"),c(3),$(n.app.config.ui.showAisTargets?"visibility_off":"directions_boat"),c(2),pe("",n.app.config.ui.showAisTargets?"Hide":"Show"," Vessels"),c(3),$(n.app.config.ui.showNotes?"visibility_off":"local_offer"),c(2),pe("",n.app.config.ui.showNotes?"Hide":"Show"," Notes"),c(),h(n.app.featureFlags().weatherApi&&n.app.data.vessels.showSelf?59:-1),c(35),h(n.app.data.vessels.showSelf?94:-1),c(7),h(n.app.config.map.zoomLevel>=n.app.config.resources.notes.minZoom?101:-1),c(8),h(!n.app.hostDef.params.token&&n.app.data.loginRequired?109:-1),c(),h(!n.isInteracting()&&n.app.featureFlags().anchorApi?110:-1),c(),h(!n.isInteracting()&&n.app.featureFlags().radarApi&&n.radarApi.radarId()&&!n.app.instrumentPanel().open&&n.app.data.vessels.showSelf?111:-1),c(11),h(n.features.playbackAPI?122:-1),c(25),G("width",n.app.instrumentPanel().open?"350px":"250px"),v("disableClose",!1),c(2),h(n.infoPanel.item&&!n.app.instrumentPanel().open?149:150),c(3),h(n.app.sIsFetching()?152:-1),c(),h(n.app.uiCtrl().autopilotConsole?153:-1),c(),h(n.app.uiCtrl().routeBuilder?154:-1),c(),h(!n.app.kioskMode()&&!n.app.uiCtrl().suppressContextMenu?155:-1),c(2),v("scaleUnits",n.app.config.units.distance)("setFocus",n.mapSetFocus())("mapCenter",n.mapCenter())("mapZoom",n.app.config.map.zoomLevel)("northUp",n.app.uiConfig().mapNorthUp)("movingMap",n.app.uiConfig().mapMove)("vesselTrail",n.app.selfTrail())("activeRoute",n.app.data.activeRoute)("dblClickZoom",n.app.config.map.doubleClickZoom)("overZoomTiles",n.app.config.map.overZoomTiles)("measureMode",n.mapInteract.isMeasuring())("drawMode",n.mapInteract.isDrawing()),c(3),v("inset",!n.app.kioskMode()&&!n.app.uiCtrl().suppressContextMenu?54:0),c(2),G("transform",n.getOrientation()),c(2),h(n.mode===1?164:-1),c(),h(n.app.kioskMode()?-1:165),c(),h(n.isInteracting()?166:-1),c(),h(n.isInteracting()?-1:167),c(),h(!n.isInteracting()&&!n.app.kioskMode()?168:-1))},dependencies:[lt,at,rt,st,yo,Qt,xo,dt,wo,vo,Pe,ni,Ae,li,si,ai,ri,he,fe,it,nt,Ni,Vi,$n,Bn,fi,hi,gi,Ci,bi,Ti,Si,po,fo,ao,oo,io,lo,Xi,Ki,co,Ri,Li,Qi,ji,uo,St,Mt,At,kt],styles:["mat-sidenav-container[_ngcontent-%COMP%]{height:100%}mat-sidenav[_ngcontent-%COMP%]{width:200px}mat-nav-list[_ngcontent-%COMP%]{padding-top:0}.appframe[_ngcontent-%COMP%]{width:100vw;height:100vh;background-color:#000;color:#fff;overflow:hidden}.view[_ngcontent-%COMP%]{inset:0;overflow:hidden;scrollbar-width:none;position:fixed;border-top:silver 0px solid;display:flex;flex-direction:row}.view[_ngcontent-%COMP%] .pe-view-main[_ngcontent-%COMP%]{flex:1 1 auto;min-width:0;height:100%}.leftMenuPanel[_ngcontent-%COMP%]{position:absolute;top:0;left:0;bottom:0;padding-left:0;z-index:5000;background-color:#c8c8c866;width:315px}.statusBar[_ngcontent-%COMP%]{width:max-content;z-index:4800;position:absolute;right:55px;top:20px;padding:1px;overflow:hidden;text-align:right;display:flex}.statusBarItem[_ngcontent-%COMP%]{padding-left:5px}.statusBarItem[_ngcontent-%COMP%] .mat-icon[_ngcontent-%COMP%]{background-color:#ffffff80;color:#000;border-radius:10px}.buttonPanel[_ngcontent-%COMP%]{width:50px;z-index:4800;position:absolute;padding:5px 2px 2px;overflow:auto;scrollbar-width:none}.buttonPanel.rightTop[_ngcontent-%COMP%]{right:0;top:0;padding:9px 2px 10px}.buttonPanel.leftTop[_ngcontent-%COMP%]{left:0;top:0;padding:9px 2px 10px}.buttonPanel.left[_ngcontent-%COMP%]{top:60px;left:0;bottom:0}.buttonPanel.right[_ngcontent-%COMP%]{top:60px;right:0;bottom:80px}.buttonPanel[_ngcontent-%COMP%] .buttonPanelItem[_ngcontent-%COMP%]{text-align:center;height:48px;padding:5px 0}.mapButton[_ngcontent-%COMP%]{position:fixed;z-index:4900}.alarmPanel[_ngcontent-%COMP%]{position:absolute;z-index:4902;top:55px;left:15%;right:15%}.measurePanel[_ngcontent-%COMP%]{font-family:roboto;font-size:10pt}.playbackPanel[_ngcontent-%COMP%]{position:absolute;z-index:4900;bottom:150px;left:50px;top:auto;width:100px;border:gray 1px solid;border-radius:5px;font-family:roboto;text-align:center}.navdataPanel[_ngcontent-%COMP%]{position:absolute;z-index:4901;bottom:30px;left:10px;max-width:calc(100% - 75px);max-height:100px;text-align:center;display:flex;flex-wrap:nowrap;overflow-x:auto;overflow-y:hidden;border:gray 1px solid}.bottomSheet[_ngcontent-%COMP%]{position:absolute;z-index:4902;bottom:0;left:15%;min-width:400px;max-width:100%;height:180px;overflow:auto}.bottomSheet[_ngcontent-%COMP%] .title[_ngcontent-%COMP%]{flex:1 1 auto;text-align:center;font-family:roboto;font-weight:500;line-height:2.5em}.control[_ngcontent-%COMP%]{display:flex;align-items:center;justify-content:flex-start;margin:20px}.ol-mouse-position[_ngcontent-%COMP%]{position:fixed;bottom:10px;right:45%;color:#1e1e1e;font-family:roboto;background-color:#fafafab3}.ol-zoom[_ngcontent-%COMP%]{position:fixed;top:10px;left:100px;color:#1e1e1e;font-family:roboto;background-color:transparent;height:45px}.instrumentPanelToggle[_ngcontent-%COMP%]{display:block}@media only screen and (max-width:650px){.bottomSheet[_ngcontent-%COMP%]{left:0;min-width:100%}}@media only screen and (max-width:800px){.instrumentPanelToggle[_ngcontent-%COMP%]{display:none}}@media only screen and (max-height:600px){.navdataPanel[_ngcontent-%COMP%]{left:50px;max-width:calc(100% - 115px)}}"]})};zn(It,{providers:[Fn({eventCoalescing:!0,runCoalescing:!0}),qn(Un())]}).then(i=>{try{if(new URLSearchParams(window.location.search).has("perfprobe")){let t=i.injector.get(X),e=window;e.__cd=0,t.onMicrotaskEmpty.subscribe(()=>{e.__cd++})}}catch(t){}}).catch(i=>console.error(i));
|