@idmwx/idmui-gl4 0.8.1 → 0.8.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/dist/index.js CHANGED
@@ -483,13 +483,13 @@ const Va = {
483
483
  }
484
484
  }, Ya = ["innerHTML"];
485
485
  function Za(t, e, o, i, a, r) {
486
- const s = w("VBtn"), c = w("v-card-text"), n = w("v-card");
487
- return He((b(), j(n, {
486
+ const s = w("VBtn"), n = w("v-card-text"), c = w("v-card");
487
+ return He((b(), j(c, {
488
488
  class: "scroll",
489
489
  id: "idm-gl4-zone-info"
490
490
  }, {
491
491
  default: g(() => [
492
- m(c, null, {
492
+ m(n, null, {
493
493
  default: g(() => {
494
494
  var u;
495
495
  return [
@@ -630,13 +630,13 @@ const qa = {
630
630
  }
631
631
  }, Ka = { class: "port-box d-flex flex-column justify-center align-start ga-2" }, Qa = { class: "d-flex justify-start align-center" }, Ja = { class: "d-flex justify-start align-center" }, $a = { class: "d-flex justify-start align-center" }, ei = { class: "d-flex justify-start align-center" };
632
632
  function ti(t, e, o, i, a, r) {
633
- const s = w("VBtn"), c = w("v-card-text"), n = w("v-divider"), u = w("v-btn"), p = w("v-card-actions"), d = w("v-card");
633
+ const s = w("VBtn"), n = w("v-card-text"), c = w("v-divider"), u = w("v-btn"), p = w("v-card-actions"), d = w("v-card");
634
634
  return He((b(), j(d, {
635
635
  id: "port-info",
636
636
  ref: "idmPortInfo"
637
637
  }, {
638
638
  default: g(() => [
639
- m(c, { class: "pr-8" }, {
639
+ m(n, { class: "pr-8" }, {
640
640
  default: g(() => [
641
641
  m(s, {
642
642
  icon: "",
@@ -675,7 +675,7 @@ function ti(t, e, o, i, a, r) {
675
675
  ]),
676
676
  _: 1
677
677
  }),
678
- m(n),
678
+ m(c),
679
679
  m(p, { class: "d-flex justify-end align-center" }, {
680
680
  default: g(() => [
681
681
  m(u, {
@@ -1433,10 +1433,10 @@ const Ci = {
1433
1433
  }
1434
1434
  }, Si = { class: "port-box d-flex flex-column justify-center align-start ga-2" }, Mi = { class: "d-flex justify-start align-center" }, Ti = { class: "d-flex justify-start align-center" }, Ii = { class: "d-flex justify-start align-center" }, Ai = { class: "d-flex justify-start align-center" };
1435
1435
  function Ri(t, e, o, i, a, r) {
1436
- const s = w("VBtn"), c = w("v-card-text"), n = w("v-card");
1437
- return He((b(), j(n, { id: "tidal-station-info" }, {
1436
+ const s = w("VBtn"), n = w("v-card-text"), c = w("v-card");
1437
+ return He((b(), j(c, { id: "tidal-station-info" }, {
1438
1438
  default: g(() => [
1439
- m(c, { class: "pr-8" }, {
1439
+ m(n, { class: "pr-8" }, {
1440
1440
  default: g(() => [
1441
1441
  m(s, {
1442
1442
  icon: "",
@@ -1693,14 +1693,14 @@ const ji = {
1693
1693
  }
1694
1694
  };
1695
1695
  function Ni(t, e, o, i, a, r) {
1696
- var s, c, n;
1696
+ var s, n, c;
1697
1697
  return b(), T("div", {
1698
1698
  class: "idm-lat-lng-tip-gl4 pa-2 text-caption text-right rounded",
1699
1699
  style: ae({ right: a.right + "px" })
1700
1700
  }, [
1701
1701
  l("div", null, y((s = a.lngLat) == null ? void 0 : s.lat), 1),
1702
- l("div", null, y((c = a.lngLat) == null ? void 0 : c.lng), 1),
1703
- l("div", null, y((n = a.lngLat) == null ? void 0 : n.str), 1)
1702
+ l("div", null, y((n = a.lngLat) == null ? void 0 : n.lng), 1),
1703
+ l("div", null, y((c = a.lngLat) == null ? void 0 : c.str), 1)
1704
1704
  ], 4);
1705
1705
  }
1706
1706
  const Sa = /* @__PURE__ */ Z(ji, [["render", Ni]]);
@@ -1871,16 +1871,16 @@ const Fi = {
1871
1871
  let e = this.layerWeight;
1872
1872
  if (e) {
1873
1873
  if (t.all) {
1874
- const s = this.assistGateway[Math.round(Math.random() * (this.assistGateway.length - 1))], c = await Be.get(`${s}/api/arc/other/layers/links?l=${e}&t=${this.realTime}`, {
1874
+ const s = this.assistGateway[Math.round(Math.random() * (this.assistGateway.length - 1))], n = await Be.get(`${s}/api/arc/other/layers/links?l=${e}&t=${this.realTime}`, {
1875
1875
  headers: {
1876
1876
  Authorization: this.token || this.defaultMeteoToken
1877
1877
  }
1878
1878
  });
1879
- if (((o = c == null ? void 0 : c.data) == null ? void 0 : o.code) === 0) {
1880
- const n = (i = c == null ? void 0 : c.data) == null ? void 0 : i.data, u = [];
1881
- for (const d in n)
1879
+ if (((o = n == null ? void 0 : n.data) == null ? void 0 : o.code) === 0) {
1880
+ const c = (i = n == null ? void 0 : n.data) == null ? void 0 : i.data, u = [];
1881
+ for (const d in c)
1882
1882
  u.push(
1883
- Be.get(n[d], {
1883
+ Be.get(c[d], {
1884
1884
  headers: {
1885
1885
  Authorization: this.token || this.defaultMeteoToken,
1886
1886
  key: d
@@ -1894,16 +1894,16 @@ const Fi = {
1894
1894
  });
1895
1895
  }
1896
1896
  } else if (t.dayNight && e & 1024) {
1897
- const s = this.assistGateway[Math.round(Math.random() * (this.assistGateway.length - 1))], c = await Be.get(`${s}/api/arc/other/layers/links?l=1024&t=${this.realTime}`, {
1897
+ const s = this.assistGateway[Math.round(Math.random() * (this.assistGateway.length - 1))], n = await Be.get(`${s}/api/arc/other/layers/links?l=1024&t=${this.realTime}`, {
1898
1898
  headers: {
1899
1899
  Authorization: this.token || this.defaultMeteoToken
1900
1900
  }
1901
1901
  });
1902
- if (((a = c == null ? void 0 : c.data) == null ? void 0 : a.code) === 0) {
1903
- const n = (r = c == null ? void 0 : c.data) == null ? void 0 : r.data, u = [];
1904
- for (const d in n)
1902
+ if (((a = n == null ? void 0 : n.data) == null ? void 0 : a.code) === 0) {
1903
+ const c = (r = n == null ? void 0 : n.data) == null ? void 0 : r.data, u = [];
1904
+ for (const d in c)
1905
1905
  u.push(
1906
- Be.get(n[d], {
1906
+ Be.get(c[d], {
1907
1907
  headers: {
1908
1908
  Authorization: this.token || this.defaultMeteoToken,
1909
1909
  key: d
@@ -1943,13 +1943,13 @@ const Fi = {
1943
1943
  }, Qi = { class: "text-body-2 text-center pt-1" };
1944
1944
  function Ji(t, e, o, i, a, r) {
1945
1945
  var $, ee, Q, le, de, pe, me, K, ie, ue;
1946
- const s = w("VBtn"), c = w("VTooltip"), n = w("VCardTitle"), u = w("VCardItem"), p = w("VCheckbox"), d = w("VCardText"), f = w("VCard"), z = w("IdmTideStations"), x = w("IdmIceAreas"), S = w("IdmWorld12nm"), C = w("IdmWorldMarine"), N = w("IdmChinaRoute"), M = w("IdmWarZone"), L = w("IdmGmdssArea"), v = w("IdmEcaZone"), _ = w("IdmAlertZone"), P = w("IdmPort"), k = w("IdmLoadLine"), I = w("IdmTimezone"), V = w("IdmVRA"), X = w("IdmSpecialArea"), q = w("IdmTerminator"), Y = w("IdmLatLng");
1946
+ const s = w("VBtn"), n = w("VTooltip"), c = w("VCardTitle"), u = w("VCardItem"), p = w("VCheckbox"), d = w("VCardText"), f = w("VCard"), z = w("IdmTideStations"), x = w("IdmIceAreas"), S = w("IdmWorld12nm"), C = w("IdmWorldMarine"), N = w("IdmChinaRoute"), M = w("IdmWarZone"), L = w("IdmGmdssArea"), v = w("IdmEcaZone"), _ = w("IdmAlertZone"), P = w("IdmPort"), k = w("IdmLoadLine"), I = w("IdmTimezone"), V = w("IdmVRA"), X = w("IdmSpecialArea"), q = w("IdmTerminator"), Y = w("IdmLatLng");
1947
1947
  return b(), T("div", Hi, [
1948
1948
  l("div", {
1949
1949
  class: "menu-bar-box transition px-1 rounded",
1950
1950
  style: ae({ top: o.top + 10 + "px", right: a.right + "px" })
1951
1951
  }, [
1952
- m(c, {
1952
+ m(n, {
1953
1953
  text: t.$t("layer.mapLayers"),
1954
1954
  location: "left"
1955
1955
  }, {
@@ -2002,7 +2002,7 @@ function Ji(t, e, o, i, a, r) {
2002
2002
  default: g(() => [
2003
2003
  m(u, { class: "border-b-thin" }, {
2004
2004
  default: g(() => [
2005
- m(n, {
2005
+ m(c, {
2006
2006
  class: "text-subtitle-1 font-weight-medium",
2007
2007
  style: { "font-size": "16px !important" }
2008
2008
  }, {
@@ -2055,7 +2055,7 @@ function Ji(t, e, o, i, a, r) {
2055
2055
  default: g(() => [
2056
2056
  m(u, { class: "border-b-thin" }, {
2057
2057
  default: g(() => [
2058
- m(n, {
2058
+ m(c, {
2059
2059
  class: "text-subtitle-1 font-weight-medium",
2060
2060
  style: { "font-size": "16px !important" }
2061
2061
  }, {
@@ -2094,7 +2094,7 @@ function Ji(t, e, o, i, a, r) {
2094
2094
  default: g(() => [
2095
2095
  m(u, { class: "border-b-thin" }, {
2096
2096
  default: g(() => [
2097
- m(n, {
2097
+ m(c, {
2098
2098
  class: "text-subtitle-1 font-weight-medium",
2099
2099
  style: { "font-size": "16px !important" }
2100
2100
  }, {
@@ -2133,7 +2133,7 @@ function Ji(t, e, o, i, a, r) {
2133
2133
  default: g(() => [
2134
2134
  m(u, { class: "border-b-thin" }, {
2135
2135
  default: g(() => [
2136
- m(n, {
2136
+ m(c, {
2137
2137
  class: "text-subtitle-1 font-weight-medium",
2138
2138
  style: { "font-size": "16px !important" }
2139
2139
  }, {
@@ -2318,7 +2318,7 @@ class io {
2318
2318
  const e = (x = this.map) == null ? void 0 : x.getBounds();
2319
2319
  if (!e)
2320
2320
  return [];
2321
- const o = ((S = this.map) == null ? void 0 : S.getZoom()) + 1, i = [e._ne.lng, e._ne.lat], a = [e._sw.lng, e._sw.lat], [r, s] = this.convertNLng(i[0]), [c, n] = this.convertNLng(a[0]), [u, p] = this.mercator.px([r, i[1]], o), [d, f] = this.mercator.px([c, a[1]], o), z = Math.round(this.mercator.size * Math.pow(2, o) * (s + n));
2321
+ const o = ((S = this.map) == null ? void 0 : S.getZoom()) + 1, i = [e._ne.lng, e._ne.lat], a = [e._sw.lng, e._sw.lat], [r, s] = this.convertNLng(i[0]), [n, c] = this.convertNLng(a[0]), [u, p] = this.mercator.px([r, i[1]], o), [d, f] = this.mercator.px([n, a[1]], o), z = Math.round(this.mercator.size * Math.pow(2, o) * (s + c));
2322
2322
  return [d, f, u + z, p];
2323
2323
  }
2324
2324
  /**
@@ -2334,11 +2334,11 @@ class io {
2334
2334
  * @param zoom
2335
2335
  */
2336
2336
  getWorldCopy(e, o) {
2337
- const i = 2 ** o, [a, r, s, c] = e.map((p) => ~~(p / (i * 256))), n = [];
2338
- for (let p = c; p <= r; p++)
2337
+ const i = 2 ** o, [a, r, s, n] = e.map((p) => ~~(p / (i * 256))), c = [];
2338
+ for (let p = n; p <= r; p++)
2339
2339
  for (let d = a; d <= s; d++)
2340
- n.push([d, p]);
2341
- return n.map((p) => {
2340
+ c.push([d, p]);
2341
+ return c.map((p) => {
2342
2342
  const d = 2 ** o * 256;
2343
2343
  return [p[0] * d, p[1] * d, d];
2344
2344
  });
@@ -2383,9 +2383,9 @@ class Ne {
2383
2383
  * @param width??
2384
2384
  * @param height??
2385
2385
  */
2386
- createTexture(e, o, i, a, r, s, c) {
2387
- const n = e.createTexture();
2388
- return e.bindTexture(e.TEXTURE_2D, n), e.texParameteri(e.TEXTURE_2D, e.TEXTURE_MIN_FILTER, o), e.texParameteri(e.TEXTURE_2D, e.TEXTURE_MAG_FILTER, i), e.texParameteri(e.TEXTURE_2D, e.TEXTURE_WRAP_S, a), e.texParameteri(e.TEXTURE_2D, e.TEXTURE_WRAP_T, a), r instanceof Uint8Array ? e.texImage2D(e.TEXTURE_2D, 0, e.RGBA, s, c, 0, e.RGBA, e.UNSIGNED_BYTE, r) : e.texImage2D(e.TEXTURE_2D, 0, e.RGBA, e.RGBA, e.UNSIGNED_BYTE, r), e.bindTexture(e.TEXTURE_2D, null), n;
2386
+ createTexture(e, o, i, a, r, s, n) {
2387
+ const c = e.createTexture();
2388
+ return e.bindTexture(e.TEXTURE_2D, c), e.texParameteri(e.TEXTURE_2D, e.TEXTURE_MIN_FILTER, o), e.texParameteri(e.TEXTURE_2D, e.TEXTURE_MAG_FILTER, i), e.texParameteri(e.TEXTURE_2D, e.TEXTURE_WRAP_S, a), e.texParameteri(e.TEXTURE_2D, e.TEXTURE_WRAP_T, a), r instanceof Uint8Array ? e.texImage2D(e.TEXTURE_2D, 0, e.RGBA, s, n, 0, e.RGBA, e.UNSIGNED_BYTE, r) : e.texImage2D(e.TEXTURE_2D, 0, e.RGBA, e.RGBA, e.UNSIGNED_BYTE, r), e.bindTexture(e.TEXTURE_2D, null), c;
2389
2389
  }
2390
2390
  /**
2391
2391
  * 创建数据资源
@@ -2423,13 +2423,13 @@ class Ne {
2423
2423
  const a = this.createProgram(e, o, i);
2424
2424
  if (a) {
2425
2425
  const r = { program: a }, s = e.getProgramParameter(a, e.ACTIVE_ATTRIBUTES);
2426
- for (let n = 0; n < s; n++) {
2427
- const u = e.getActiveAttrib(a, n);
2426
+ for (let c = 0; c < s; c++) {
2427
+ const u = e.getActiveAttrib(a, c);
2428
2428
  r[u.name] = e.getAttribLocation(a, u.name);
2429
2429
  }
2430
- const c = e.getProgramParameter(a, e.ACTIVE_UNIFORMS);
2431
- for (let n = 0; n < c; n++) {
2432
- const u = e.getActiveUniform(a, n);
2430
+ const n = e.getProgramParameter(a, e.ACTIVE_UNIFORMS);
2431
+ for (let c = 0; c < n; c++) {
2432
+ const u = e.getActiveUniform(a, c);
2433
2433
  r[u.name] = e.getUniformLocation(a, u.name);
2434
2434
  }
2435
2435
  return r;
@@ -2442,19 +2442,19 @@ class Ne {
2442
2442
  setup(e, o, i = !1, a, r) {
2443
2443
  const s = document.createElement("canvas");
2444
2444
  s.width = 256, s.height = 1;
2445
- const c = s.getContext("2d");
2446
- if (c && e) {
2447
- const n = c == null ? void 0 : c.createLinearGradient(0, 0, 256, 0);
2445
+ const n = s.getContext("2d");
2446
+ if (n && e) {
2447
+ const c = n == null ? void 0 : n.createLinearGradient(0, 0, 256, 0);
2448
2448
  return o.forEach(([u, p]) => {
2449
- n.addColorStop(u, p);
2450
- }), c.fillStyle = n, c.fillRect(0, 0, 256, 1), {
2449
+ c.addColorStop(u, p);
2450
+ }), n.fillStyle = c, n.fillRect(0, 0, 256, 1), {
2451
2451
  canvas: s,
2452
2452
  texture: this.createTexture(
2453
2453
  e,
2454
2454
  e.LINEAR,
2455
2455
  e.LINEAR,
2456
2456
  e.CLAMP_TO_EDGE,
2457
- i ? new Uint8Array(c.getImageData(0, 0, 256, 1).data) : s,
2457
+ i ? new Uint8Array(n.getImageData(0, 0, 256, 1).data) : s,
2458
2458
  a,
2459
2459
  r
2460
2460
  )
@@ -2465,32 +2465,32 @@ class Ne {
2465
2465
  const i = Math.ceil(Math.sqrt(o)), a = i * i, r = new Uint8Array(a * 4);
2466
2466
  for (let p = 0; p < r.length; p++)
2467
2467
  r[p] = Math.floor(Math.random() * 256);
2468
- const s = this.createTexture(e, e.NEAREST, e.NEAREST, e.CLAMP_TO_EDGE, r, i, i), c = this.createTexture(e, e.NEAREST, e.NEAREST, e.CLAMP_TO_EDGE, r, i, i), n = new Float32Array(a);
2468
+ const s = this.createTexture(e, e.NEAREST, e.NEAREST, e.CLAMP_TO_EDGE, r, i, i), n = this.createTexture(e, e.NEAREST, e.NEAREST, e.CLAMP_TO_EDGE, r, i, i), c = new Float32Array(a);
2469
2469
  for (let p = 0; p < a; p++)
2470
- n[p] = p;
2471
- const u = this.createDataBuffer(e, "array", n);
2472
- return { resolution: i, total: a, texture0: s, texture1: c, indexBuffer: u };
2470
+ c[p] = p;
2471
+ const u = this.createDataBuffer(e, "array", c);
2472
+ return { resolution: i, total: a, texture0: s, texture1: n, indexBuffer: u };
2473
2473
  }
2474
2474
  bind(e, o, i) {
2475
2475
  const a = this.createProgram(e, o, i);
2476
2476
  if (a) {
2477
2477
  const r = this.createDataBuffer(e, "array", void 0), s = e.getAttribLocation(a, "a_position");
2478
2478
  e.enableVertexAttribArray(s), e.vertexAttribPointer(s, 2, e.FLOAT, !1, 0, 0);
2479
- const c = new Float32Array([0, 0, 1, 0, 0, 1, 0, 1, 1, 0, 1, 1]);
2480
- this.createDataBuffer(e, "array", c);
2481
- const n = e.getAttribLocation(a, "a_texCoord");
2482
- return e.enableVertexAttribArray(n), e.vertexAttribPointer(n, 2, e.FLOAT, !1, 0, 0), { program: a, aPositionBuffer: r };
2479
+ const n = new Float32Array([0, 0, 1, 0, 0, 1, 0, 1, 1, 0, 1, 1]);
2480
+ this.createDataBuffer(e, "array", n);
2481
+ const c = e.getAttribLocation(a, "a_texCoord");
2482
+ return e.enableVertexAttribArray(c), e.vertexAttribPointer(c, 2, e.FLOAT, !1, 0, 0), { program: a, aPositionBuffer: r };
2483
2483
  }
2484
2484
  return {};
2485
2485
  }
2486
2486
  bindParticle(e, o, i, a, r, s) {
2487
- const c = this.createProgramWrapper(e, o, i), n = this.createProgramWrapper(e, a, r), u = this.createProgramWrapper(e, a, s), p = this.createDataBuffer(e, "array", new Float32Array([0, 0, 1, 0, 0, 1, 0, 1, 1, 0, 1, 1])), d = e.createFramebuffer();
2488
- return { particle: c, screen: n, update: u, quadBuffer: p, frameBuffer: d };
2487
+ const n = this.createProgramWrapper(e, o, i), c = this.createProgramWrapper(e, a, r), u = this.createProgramWrapper(e, a, s), p = this.createDataBuffer(e, "array", new Float32Array([0, 0, 1, 0, 0, 1, 0, 1, 1, 0, 1, 1])), d = e.createFramebuffer();
2488
+ return { particle: n, screen: c, update: u, quadBuffer: p, frameBuffer: d };
2489
2489
  }
2490
- draw(e, o, i, a, r, s, c) {
2491
- var n, u;
2490
+ draw(e, o, i, a, r, s, n) {
2491
+ var c, u;
2492
2492
  if (o && i) {
2493
- e.resize(), o == null || o.viewport(0, 0, (n = o == null ? void 0 : o.canvas) == null ? void 0 : n.width, (u = o == null ? void 0 : o.canvas) == null ? void 0 : u.height), o.clearColor(0, 0, 0, 0), o.clear(o.COLOR_BUFFER_BIT | o.DEPTH_BUFFER_BIT);
2493
+ e.resize(), o == null || o.viewport(0, 0, (c = o == null ? void 0 : o.canvas) == null ? void 0 : c.width, (u = o == null ? void 0 : o.canvas) == null ? void 0 : u.height), o.clearColor(0, 0, 0, 0), o.clear(o.COLOR_BUFFER_BIT | o.DEPTH_BUFFER_BIT);
2494
2494
  try {
2495
2495
  o.useProgram(i);
2496
2496
  const p = {
@@ -2501,7 +2501,7 @@ class Ne {
2501
2501
  uvRange: o.getUniformLocation(i, "u_range_u_v"),
2502
2502
  sRange: o.getUniformLocation(i, "u_range_s")
2503
2503
  };
2504
- p.resolution && o.uniform2f(p.resolution, o.canvas.width * e.ratio, o.canvas.height * e.ratio), o.activeTexture(o.TEXTURE0), o.bindTexture(o.TEXTURE_2D, a), p.image && o.uniform1i(p.image, 0), o.activeTexture(o.TEXTURE1), o.bindTexture(o.TEXTURE_2D, r), p.color && o.uniform1i(p.color, 1), c != null && c.uvRange && (c != null && c.sRange) && (p.uvRange && o.uniform2f(p.uvRange, c.uvRange[0], c.uvRange[1]), p.sRange && o.uniform2f(p.sRange, c.sRange[0], c.sRange[1])), p.scale && o.uniform1f(p.scale, (c == null ? void 0 : c.scale) || 1);
2504
+ p.resolution && o.uniform2f(p.resolution, o.canvas.width * e.ratio, o.canvas.height * e.ratio), o.activeTexture(o.TEXTURE0), o.bindTexture(o.TEXTURE_2D, a), p.image && o.uniform1i(p.image, 0), o.activeTexture(o.TEXTURE1), o.bindTexture(o.TEXTURE_2D, r), p.color && o.uniform1i(p.color, 1), n != null && n.uvRange && (n != null && n.sRange) && (p.uvRange && o.uniform2f(p.uvRange, n.uvRange[0], n.uvRange[1]), p.sRange && o.uniform2f(p.sRange, n.sRange[0], n.sRange[1])), p.scale && o.uniform1f(p.scale, (n == null ? void 0 : n.scale) || 1);
2505
2505
  const d = e.getBoundPixel(), f = e.map.getZoom() + 1, z = e.getWorldCopy(d, f);
2506
2506
  for (const x of z) {
2507
2507
  const S = (x[0] - d[0]) * e.ratio, C = (x[1] - d[3]) * e.ratio, N = x[2] * e.ratio, [M, L, v, _] = [S, N + S, C, N + C], P = new Float32Array([M, v, L, v, M, _, M, _, L, v, L, _]);
@@ -2513,8 +2513,8 @@ class Ne {
2513
2513
  }
2514
2514
  }
2515
2515
  drawParticle(e, o, i, a, r) {
2516
- var s, c;
2517
- o && (o == null || o.viewport(0, 0, (s = o == null ? void 0 : o.canvas) == null ? void 0 : s.width, (c = o == null ? void 0 : o.canvas) == null ? void 0 : c.height), o.disable(o.DEPTH_TEST), o.disable(o.STENCIL_TEST), o.activeTexture(o.TEXTURE0), o.bindTexture(o.TEXTURE_2D, i), o.activeTexture(o.TEXTURE1), o.bindTexture(o.TEXTURE_2D, a.texture0), this.renderScreen(e, o, a, r), this.updateParticles(e, o, a, r));
2516
+ var s, n;
2517
+ o && (o == null || o.viewport(0, 0, (s = o == null ? void 0 : o.canvas) == null ? void 0 : s.width, (n = o == null ? void 0 : o.canvas) == null ? void 0 : n.height), o.disable(o.DEPTH_TEST), o.disable(o.STENCIL_TEST), o.activeTexture(o.TEXTURE0), o.bindTexture(o.TEXTURE_2D, i), o.activeTexture(o.TEXTURE1), o.bindTexture(o.TEXTURE_2D, a.texture0), this.renderScreen(e, o, a, r), this.updateParticles(e, o, a, r));
2518
2518
  }
2519
2519
  renderScreen(e, o, i, a) {
2520
2520
  o.bindFramebuffer(o.FRAMEBUFFER, i.frameBuffer), o.framebufferTexture2D(o.FRAMEBUFFER, o.COLOR_ATTACHMENT0, o.TEXTURE_2D, i.screenTexture, 0), o.viewport(0, 0, o.canvas.width, o.canvas.height), this.renderScreenTexture(o, i.backgroundTexture, i.screen, i.quadBuffer, 0.95), this.renderParticles(e, o, i, a), o.bindFramebuffer(o.FRAMEBUFFER, null), this.renderScreenTexture(o, i.screenTexture, i.screen, i.quadBuffer, 1);
@@ -2532,11 +2532,11 @@ class Ne {
2532
2532
  }
2533
2533
  }
2534
2534
  updateParticles(e, o, i, a) {
2535
- var s, c;
2535
+ var s, n;
2536
2536
  if (o) {
2537
2537
  o.bindFramebuffer(o.FRAMEBUFFER, i.frameBuffer), o.framebufferTexture2D(o.FRAMEBUFFER, o.COLOR_ATTACHMENT0, o.TEXTURE_2D, i.texture1, 0), o.viewport(0, 0, i.resolution, i.resolution), o.useProgram(i.update.program), o.bindBuffer(o.ARRAY_BUFFER, i.quadBuffer), o.enableVertexAttribArray(i.update.a_pos), o.vertexAttribPointer(i.update.a_pos, 2, o.FLOAT, !1, 0, 0), o.uniform1i(i.update.u_factor, 0), o.uniform1i(i.update.u_particles, 1);
2538
- const n = e.getBoundRange();
2539
- o.uniform4f(i.update.u_viewport, n[0], n[1], n[2], n[3]), o.uniform1f(i.update.u_rand_seed, Math.random()), o.uniform2f(i.update.u_factor_res, (s = i == null ? void 0 : i.image) == null ? void 0 : s.width, (c = i == null ? void 0 : i.image) == null ? void 0 : c.height), o.uniform2f(i.update.u_factor_min, a.uvRange[0], a.uvRange[0]), o.uniform2f(i.update.u_factor_max, a.uvRange[1], a.uvRange[1]), o.uniform1f(i.update.u_speed_factor, a.speedFactor * e.ratio), o.uniform1f(i.update.u_drop_rate, a.dropRate), o.uniform1f(i.update.u_drop_rate_bump, a.dropRateBump), o.drawArrays(o.TRIANGLES, 0, 6);
2538
+ const c = e.getBoundRange();
2539
+ o.uniform4f(i.update.u_viewport, c[0], c[1], c[2], c[3]), o.uniform1f(i.update.u_rand_seed, Math.random()), o.uniform2f(i.update.u_factor_res, (s = i == null ? void 0 : i.image) == null ? void 0 : s.width, (n = i == null ? void 0 : i.image) == null ? void 0 : n.height), o.uniform2f(i.update.u_factor_min, a.uvRange[0], a.uvRange[0]), o.uniform2f(i.update.u_factor_max, a.uvRange[1], a.uvRange[1]), o.uniform1f(i.update.u_speed_factor, a.speedFactor * e.ratio), o.uniform1f(i.update.u_drop_rate, a.dropRate), o.uniform1f(i.update.u_drop_rate_bump, a.dropRateBump), o.drawArrays(o.TRIANGLES, 0, 6);
2540
2540
  }
2541
2541
  const r = i.texture0;
2542
2542
  i.texture0 = i.texture1, i.texture1 = r;
@@ -2849,13 +2849,13 @@ const er = {
2849
2849
  }, 500);
2850
2850
  else if (this.wind) {
2851
2851
  const a = (/* @__PURE__ */ new Date()).valueOf();
2852
- let r = 0, s = 0, c = this.empty;
2853
- if ((t = this.wind) != null && t.active && (c = (e = this.wind) == null ? void 0 : e.data), (o = this.map) != null && o.getSource(this.source))
2854
- (i = this.map) == null || i.getSource(this.source).setData(c), s = (/* @__PURE__ */ new Date()).valueOf() - (a + r), console.log("[windBarbs] update elapsed: ", s, ", total: ", r += s);
2852
+ let r = 0, s = 0, n = this.empty;
2853
+ if ((t = this.wind) != null && t.active && (n = (e = this.wind) == null ? void 0 : e.data), (o = this.map) != null && o.getSource(this.source))
2854
+ (i = this.map) == null || i.getSource(this.source).setData(n), s = (/* @__PURE__ */ new Date()).valueOf() - (a + r), console.log("[windBarbs] update elapsed: ", s, ", total: ", r += s);
2855
2855
  else {
2856
- this.map.addSource(this.source, { type: "geojson", data: c });
2857
- for (let n = 0; n < (this.barbs ?? []).length - 1; n++) {
2858
- const u = (this.barbs ?? [])[n] || 0, p = (this.barbs ?? [])[n + 1] || 0, d = u < 10 ? `00${u}kts` : u < 100 ? `0${u}kts` : `${u}kts`, f = new Image(48, 48), z = "data:image/svg+xml;base64," + window.btoa(unescape(encodeURIComponent(this.svgs[d])));
2856
+ this.map.addSource(this.source, { type: "geojson", data: n });
2857
+ for (let c = 0; c < (this.barbs ?? []).length - 1; c++) {
2858
+ const u = (this.barbs ?? [])[c] || 0, p = (this.barbs ?? [])[c + 1] || 0, d = u < 10 ? `00${u}kts` : u < 100 ? `0${u}kts` : `${u}kts`, f = new Image(48, 48), z = "data:image/svg+xml;base64," + window.btoa(unescape(encodeURIComponent(this.svgs[d])));
2859
2859
  f.src = z, f.onload = () => {
2860
2860
  this.map.hasImage(d + "-icon") || this.map.addImage(d + "-icon", f), this.map.addLayer(
2861
2861
  {
@@ -3216,13 +3216,13 @@ const sr = /* @__PURE__ */ Z(ir, [["render", lr]]), nr = {
3216
3216
  this.beforeLayer
3217
3217
  );
3218
3218
  const s = new Image(48, 48);
3219
- let c = '<svg class="icon" viewBox="0 0 1024 1024" xmlns="http://www.w3.org/2000/svg" p-id="12518" width="200" height="200"><path d="M481.386772 959.514313 481.386772 334.713224c-56.000432 37.288255-92.523253 55.876612-142.312216 57.787124 85.834924-84.884272 130.528845-195.161888 172.552961-328.434218 40.259936 133.272329 89.39296 238.731196 172.622546 328.434218-54.105269-5.729491-86.780459-21.201881-146.338926-58.965973l0 625.979938L481.386772 959.514313z" p-id="12519" fill="#ffffff"></path></svg>', n = "data:image/svg+xml;base64," + window.btoa(unescape(encodeURIComponent(c)));
3220
- s.src = n;
3219
+ let n = '<svg class="icon" viewBox="0 0 1024 1024" xmlns="http://www.w3.org/2000/svg" p-id="12518" width="200" height="200"><path d="M481.386772 959.514313 481.386772 334.713224c-56.000432 37.288255-92.523253 55.876612-142.312216 57.787124 85.834924-84.884272 130.528845-195.161888 172.552961-328.434218 40.259936 133.272329 89.39296 238.731196 172.622546 328.434218-54.105269-5.729491-86.780459-21.201881-146.338926-58.965973l0 625.979938L481.386772 959.514313z" p-id="12519" fill="#ffffff"></path></svg>', c = "data:image/svg+xml;base64," + window.btoa(unescape(encodeURIComponent(n)));
3220
+ s.src = c;
3221
3221
  const u = new Image(48, 48);
3222
- c = `<svg width="20" height="20" viewBox="0 0 20 20" fill="none" xmlns="http://www.w3.org/2000/svg">
3222
+ n = `<svg width="20" height="20" viewBox="0 0 20 20" fill="none" xmlns="http://www.w3.org/2000/svg">
3223
3223
  <path d="M10 2.5V17.5" stroke="#fff" stroke-width="2" stroke-linecap="round" stroke-linejoin="round"/>
3224
3224
  <path d="M5 7.5L10 2.5L15 7.5" stroke="#fff" stroke-width="2" stroke-linecap="round" stroke-linejoin="round"/>
3225
- </svg>`, n = "data:image/svg+xml;base64," + window.btoa(unescape(encodeURIComponent(c))), u.src = n;
3225
+ </svg>`, c = "data:image/svg+xml;base64," + window.btoa(unescape(encodeURIComponent(n))), u.src = c;
3226
3226
  const p = [u];
3227
3227
  let d = 0;
3228
3228
  p.forEach((f) => {
@@ -3836,8 +3836,8 @@ const vr = /* @__PURE__ */ Z(wr, [["render", xr]]), _r = {
3836
3836
  }
3837
3837
  }, this.beforeLayer);
3838
3838
  const s = new Image(72, 72);
3839
- let c = '<svg t="1752721890391" class="icon" viewBox="0 0 1024 1024" version="1.1" xmlns="http://www.w3.org/2000/svg" p-id="12518" width="200" height="200"><path d="M481.386772 959.514313 481.386772 334.713224c-56.000432 37.288255-92.523253 55.876612-142.312216 57.787124 85.834924-84.884272 130.528845-195.161888 172.552961-328.434218 40.259936 133.272329 89.39296 238.731196 172.622546 328.434218-54.105269-5.729491-86.780459-21.201881-146.338926-58.965973l0 625.979938L481.386772 959.514313z" p-id="12519" fill="#ffffff"></path></svg>', n = "data:image/svg+xml;base64," + window.btoa(unescape(encodeURIComponent(c)));
3840
- s.src = n, s.onload = () => {
3839
+ let n = '<svg t="1752721890391" class="icon" viewBox="0 0 1024 1024" version="1.1" xmlns="http://www.w3.org/2000/svg" p-id="12518" width="200" height="200"><path d="M481.386772 959.514313 481.386772 334.713224c-56.000432 37.288255-92.523253 55.876612-142.312216 57.787124 85.834924-84.884272 130.528845-195.161888 172.552961-328.434218 40.259936 133.272329 89.39296 238.731196 172.622546 328.434218-54.105269-5.729491-86.780459-21.201881-146.338926-58.965973l0 625.979938L481.386772 959.514313z" p-id="12519" fill="#ffffff"></path></svg>', c = "data:image/svg+xml;base64," + window.btoa(unescape(encodeURIComponent(n)));
3840
+ s.src = c, s.onload = () => {
3841
3841
  this.map.hasImage("swellDirIconWhite") || this.map.addImage("swellDirIconWhite", s), this.map.addLayer(
3842
3842
  {
3843
3843
  id: this.directionLayer,
@@ -4039,14 +4039,14 @@ const zr = /* @__PURE__ */ Z(_r, [["render", kr]]), Lr = {
4039
4039
  class: "legend-tip-btn-gl4"
4040
4040
  };
4041
4041
  function Cr(t, e, o, i, a, r) {
4042
- var n;
4043
- const s = w("VBtn"), c = w("VTooltip");
4044
- return (n = o.prmsl) != null && n.active ? (b(), T("div", Pr, [
4042
+ var c;
4043
+ const s = w("VBtn"), n = w("VTooltip");
4044
+ return (c = o.prmsl) != null && c.active ? (b(), T("div", Pr, [
4045
4045
  l("div", {
4046
4046
  class: "menu-bar-box pa-1 rounded",
4047
4047
  style: ae({ right: a.right + "px" })
4048
4048
  }, [
4049
- m(c, {
4049
+ m(n, {
4050
4050
  text: "Map Layers",
4051
4051
  location: "left"
4052
4052
  }, {
@@ -5074,12 +5074,14 @@ const al = {
5074
5074
  },
5075
5075
  checkList: {
5076
5076
  handler(t, e) {
5077
- this.handleCheckListChange(t, e), this.$emit("weatherCheckList", t), this.autoActive && this.checkList.length ? this.$parent.$refs.idmBottomBar.handleToggle("weather", !0) : this.$parent.$refs.idmBottomBar.handleToggle("weather", !1);
5077
+ var o, i, a, r, s, n;
5078
+ this.handleCheckListChange(t, e), this.$emit("weatherCheckList", t), this.autoActive && this.checkList.length ? (a = (i = (o = this.$parent) == null ? void 0 : o.$refs) == null ? void 0 : i.idmBottomBar) == null || a.handleToggle("weather", !0) : (n = (s = (r = this.$parent) == null ? void 0 : r.$refs) == null ? void 0 : s.idmBottomBar) == null || n.handleToggle("weather", !1);
5078
5079
  }
5079
5080
  },
5080
5081
  autoActive: {
5081
5082
  handler(t) {
5082
- localStorage.setItem(this.cache.autoActiveKey, this.autoActive), this.activeWeatherLayers = this.autoActive ? this.allLayers.filter((e) => this.checkList.includes(e.key)) : [], this.handleWeatherLayerChange(), this.autoActive && this.checkList.length ? this.$parent.$refs.idmBottomBar.handleToggle("weather", !0) : this.$parent.$refs.idmBottomBar.handleToggle("weather", !1), this.$emit("autoActive", this.autoActive);
5083
+ var e, o, i, a, r, s;
5084
+ localStorage.setItem(this.cache.autoActiveKey, this.autoActive), this.activeWeatherLayers = this.autoActive ? this.allLayers.filter((n) => this.checkList.includes(n.key)) : [], this.handleWeatherLayerChange(), this.autoActive && this.checkList.length ? (i = (o = (e = this.$parent) == null ? void 0 : e.$refs) == null ? void 0 : o.idmBottomBar) == null || i.handleToggle("weather", !0) : (s = (r = (a = this.$parent) == null ? void 0 : a.$refs) == null ? void 0 : r.idmBottomBar) == null || s.handleToggle("weather", !1), this.$emit("autoActive", this.autoActive);
5083
5085
  }
5084
5086
  },
5085
5087
  iceToggleValue: {
@@ -5147,7 +5149,7 @@ const al = {
5147
5149
  (t == null ? void 0 : t.data.code) === 0 && (this.models = t == null ? void 0 : t.data.data);
5148
5150
  },
5149
5151
  async fetchWeatherLayers(t = {}) {
5150
- var a, r, s, c, n, u, p, d, f;
5152
+ var a, r, s, n, c, u, p, d, f;
5151
5153
  const e = (/* @__PURE__ */ new Date()).valueOf();
5152
5154
  let o = 0, i = 0;
5153
5155
  if (this.map) {
@@ -5170,8 +5172,8 @@ const al = {
5170
5172
  }
5171
5173
  }
5172
5174
  );
5173
- if (i = (/* @__PURE__ */ new Date()).valueOf() - (e + o), console.log("weather links elapsed: ", i, ", total: ", o += i), ((c = M == null ? void 0 : M.data) == null ? void 0 : c.code) === 0) {
5174
- const L = (n = M == null ? void 0 : M.data) == null ? void 0 : n.data, v = [];
5175
+ if (i = (/* @__PURE__ */ new Date()).valueOf() - (e + o), console.log("weather links elapsed: ", i, ", total: ", o += i), ((n = M == null ? void 0 : M.data) == null ? void 0 : n.code) === 0) {
5176
+ const L = (c = M == null ? void 0 : M.data) == null ? void 0 : c.data, v = [];
5175
5177
  for (const P in L)
5176
5178
  v.push(
5177
5179
  Be.get(L[P], {
@@ -5237,7 +5239,7 @@ const al = {
5237
5239
  }, 500);
5238
5240
  },
5239
5241
  handleRampColorInitial() {
5240
- var t, e, o, i, a, r, s, c, n, u, p, d;
5242
+ var t, e, o, i, a, r, s, n, c, u, p, d;
5241
5243
  this.viewport.map.getSource((t = this.viewport) == null ? void 0 : t.rampColorSource) || this.viewport.map.addSource((e = this.viewport) == null ? void 0 : e.rampColorSource, {
5242
5244
  type: "canvas",
5243
5245
  canvas: (o = this.viewport) == null ? void 0 : o.rampColorCanvas,
@@ -5253,9 +5255,9 @@ const al = {
5253
5255
  }
5254
5256
  },
5255
5257
  this.beforeLayer
5256
- ), this.viewport.map.getSource((s = this.viewport) == null ? void 0 : s.particleSource) || this.viewport.map.addSource((c = this.viewport) == null ? void 0 : c.particleSource, {
5258
+ ), this.viewport.map.getSource((s = this.viewport) == null ? void 0 : s.particleSource) || this.viewport.map.addSource((n = this.viewport) == null ? void 0 : n.particleSource, {
5257
5259
  type: "canvas",
5258
- canvas: (n = this.viewport) == null ? void 0 : n.particleCanvas,
5260
+ canvas: (c = this.viewport) == null ? void 0 : c.particleCanvas,
5259
5261
  animate: !0,
5260
5262
  coordinates: this.viewport.getBoundLngLat()
5261
5263
  }), this.viewport.map.getLayer((u = this.viewport) == null ? void 0 : u.particleLayer) || this.viewport.map.addLayer(
@@ -5274,7 +5276,7 @@ const al = {
5274
5276
  var u, p, d, f, z, x, S;
5275
5277
  const t = (/* @__PURE__ */ new Date()).valueOf();
5276
5278
  let e = 0, o = 0;
5277
- const i = (u = this.map) == null ? void 0 : u.getBounds(), a = (p = this.map) == null ? void 0 : p.getZoom(), r = oe.convertToStdLng(i._sw.lng), s = oe.convertToStdLng(i._ne.lng), c = Math.floor(i._sw.lat), n = Math.ceil(i._ne.lat);
5279
+ const i = (u = this.map) == null ? void 0 : u.getBounds(), a = (p = this.map) == null ? void 0 : p.getZoom(), r = oe.convertToStdLng(i._sw.lng), s = oe.convertToStdLng(i._ne.lng), n = Math.floor(i._sw.lat), c = Math.ceil(i._ne.lat);
5278
5280
  for (const C in this.weatherLayers) {
5279
5281
  let N = !1;
5280
5282
  if (this.weatherLayers[C].active && this.weatherLayers[C].type === "json") {
@@ -5283,7 +5285,7 @@ const al = {
5283
5285
  N = !0;
5284
5286
  const L = ((d = this.weatherLayers[C]) == null ? void 0 : d.direction) || {};
5285
5287
  for (const _ in L)
5286
- if (_ > c && _ < n && (!(a <= this.zoom) || _ % (a < 2 ? 10 : a < 4 ? 5 : 3) === 0)) {
5288
+ if (_ > n && _ < c && (!(a <= this.zoom) || _ % (a < 2 ? 10 : a < 4 ? 5 : 3) === 0)) {
5287
5289
  const P = L[_].lng;
5288
5290
  r > s ? P.forEach((k, I) => {
5289
5291
  var V, X, q, Y, $, ee;
@@ -5347,7 +5349,7 @@ const al = {
5347
5349
  N = !0;
5348
5350
  const L = ((z = this.weatherLayers[C]) == null ? void 0 : z.direction) || {};
5349
5351
  for (const _ in L)
5350
- if (_ > c && _ < n && (!(a <= this.zoom) || _ % (a < 2 ? 10 : a < 4 ? 5 : 3) === 0)) {
5352
+ if (_ > n && _ < c && (!(a <= this.zoom) || _ % (a < 2 ? 10 : a < 4 ? 5 : 3) === 0)) {
5351
5353
  const P = L[_].lng;
5352
5354
  r > s ? P.forEach((k, I) => {
5353
5355
  var V, X, q, Y, $, ee;
@@ -5408,7 +5410,7 @@ const al = {
5408
5410
  N = !0;
5409
5411
  const L = this.weatherLayers.wind.raw;
5410
5412
  for (const v in L)
5411
- if (v > c && v < n && (!(a <= this.zoom) || v % (a < 2 ? 10 : a < 4 ? 5 : 3) === 0)) {
5413
+ if (v > n && v < c && (!(a <= this.zoom) || v % (a < 2 ? 10 : a < 4 ? 5 : 3) === 0)) {
5412
5414
  const _ = L[v].lng;
5413
5415
  r > s ? _.forEach((P, k) => {
5414
5416
  var I, V, X, q;
@@ -5531,11 +5533,11 @@ const al = {
5531
5533
  return t.features.forEach((r) => {
5532
5534
  if (r.geometry.type !== "Point")
5533
5535
  if (i > a) {
5534
- let s = [i, e._sw.lat, 180, e._ne.lat], c = E.bboxClip(r, s);
5535
- c.geometry.coordinates.length && o.push(c), s = [-180, e._sw.lat, a, e._ne.lat], c = E.bboxClip(r, s), c.geometry.coordinates.length && o.push(c);
5536
+ let s = [i, e._sw.lat, 180, e._ne.lat], n = E.bboxClip(r, s);
5537
+ n.geometry.coordinates.length && o.push(n), s = [-180, e._sw.lat, a, e._ne.lat], n = E.bboxClip(r, s), n.geometry.coordinates.length && o.push(n);
5536
5538
  } else {
5537
- const s = [i, e._sw.lat, a, e._ne.lat], c = E.bboxClip(r, s);
5538
- c.geometry.coordinates.length && o.push(c);
5539
+ const s = [i, e._sw.lat, a, e._ne.lat], n = E.bboxClip(r, s);
5540
+ n.geometry.coordinates.length && o.push(n);
5539
5541
  }
5540
5542
  else
5541
5543
  o.push(r);
@@ -5560,13 +5562,13 @@ const al = {
5560
5562
  }, wl = { class: "text-body-1 py-2" }, xl = { class: "text-body-1 font-weight-medium" }, vl = { class: "text-body-2 opacity-70" }, _l = { class: "text-body-2 opacity-70 mb-3" }, kl = { class: "text-body-1 font-weight-medium" }, zl = { class: "text-body-2 opacity-70" }, Ll = { class: "text-body-2 opacity-70 mb-3" }, Pl = { class: "text-body-1 py-2" }, Cl = { class: "text-body-1 font-weight-medium" }, Sl = { class: "text-body-2 opacity-70" }, Ml = { class: "text-body-2 opacity-70 mb-3" }, Tl = { class: "text-body-1 font-weight-medium" }, Il = { class: "text-body-2 opacity-70" }, Al = { class: "text-body-2 opacity-70 mb-3" }, Rl = { class: "text-body-1 py-2" }, Dl = { class: "text-body-1 font-weight-medium" }, Ol = { class: "text-body-2 opacity-70" }, Bl = { class: "text-body-2 opacity-70 mb-3" };
5561
5563
  function El(t, e, o, i, a, r) {
5562
5564
  var pe, me, K, ie, ue, F, ne, xe, ve, Se, Me, Te, Ie, Ae, ye;
5563
- const s = w("VBtn"), c = w("VTooltip"), n = w("VCol"), u = w("VRow"), p = w("VCardText"), d = w("VDivider"), f = w("VCard"), z = w("VSwitch"), x = w("VCardTitle"), S = w("VCardItem"), C = w("VCheckbox"), N = w("VRadio"), M = w("VBtnToggle"), L = w("IdmWindBarb"), v = w("IdmSigWaveHeight"), _ = w("IdmCurrentDirection"), P = w("IdmPrmsl"), k = w("IdmWindParticle"), I = w("IdmCurrentParticle"), V = w("IdmWave"), X = w("IdmSwell"), q = w("IdmIceEdge"), Y = w("IdmIceCover"), $ = w("IdmIceThickness"), ee = w("IdmPrecip3h"), Q = w("IdmVisibility"), le = w("IdmWaterTemp"), de = w("IdmTemp");
5565
+ const s = w("VBtn"), n = w("VTooltip"), c = w("VCol"), u = w("VRow"), p = w("VCardText"), d = w("VDivider"), f = w("VCard"), z = w("VSwitch"), x = w("VCardTitle"), S = w("VCardItem"), C = w("VCheckbox"), N = w("VRadio"), M = w("VBtnToggle"), L = w("IdmWindBarb"), v = w("IdmSigWaveHeight"), _ = w("IdmCurrentDirection"), P = w("IdmPrmsl"), k = w("IdmWindParticle"), I = w("IdmCurrentParticle"), V = w("IdmWave"), X = w("IdmSwell"), q = w("IdmIceEdge"), Y = w("IdmIceCover"), $ = w("IdmIceThickness"), ee = w("IdmPrecip3h"), Q = w("IdmVisibility"), le = w("IdmWaterTemp"), de = w("IdmTemp");
5564
5566
  return b(), T("div", il, [
5565
5567
  l("div", {
5566
5568
  class: "menu-bar-box transition pa-1",
5567
5569
  style: ae({ top: o.top + 94 + "px", right: a.right + "px" })
5568
5570
  }, [
5569
- m(c, {
5571
+ m(n, {
5570
5572
  text: t.$t("weather.weatherLayers"),
5571
5573
  location: "left"
5572
5574
  }, {
@@ -5593,7 +5595,7 @@ function El(t, e, o, i, a, r) {
5593
5595
  class: "menu-bar-box pa-1 rounded",
5594
5596
  style: ae({ right: a.right + "px" })
5595
5597
  }, [
5596
- m(c, {
5598
+ m(n, {
5597
5599
  text: "Legend",
5598
5600
  location: "left"
5599
5601
  }, {
@@ -5628,7 +5630,7 @@ function El(t, e, o, i, a, r) {
5628
5630
  e[9] || (e[9] = l("div", { class: "text-body-1 font-weight-600 mb-2" }, "Wind Level", -1)),
5629
5631
  m(u, { class: "ma-0 ml-n1 text-body-2" }, {
5630
5632
  default: g(() => [
5631
- (b(!0), T(ke, null, Le(a.legend.barbs, (H, te) => (b(), j(n, {
5633
+ (b(!0), T(ke, null, Le(a.legend.barbs, (H, te) => (b(), j(c, {
5632
5634
  key: H,
5633
5635
  cols: "6",
5634
5636
  class: "d-flex flex-row justify-start align-center py-1 px-0 ma-0"
@@ -5660,7 +5662,7 @@ function El(t, e, o, i, a, r) {
5660
5662
  style: { width: "100px" }
5661
5663
  }, {
5662
5664
  default: g(() => [
5663
- (b(!0), T(ke, null, Le(a.legend.sigWaveHeight, (H, te) => (b(), j(n, {
5665
+ (b(!0), T(ke, null, Le(a.legend.sigWaveHeight, (H, te) => (b(), j(c, {
5664
5666
  key: te,
5665
5667
  cols: "12",
5666
5668
  class: "d-flex flex-row justify-start align-center py-1 px-0 ma-0"
@@ -5692,7 +5694,7 @@ function El(t, e, o, i, a, r) {
5692
5694
  style: { width: "110px" }
5693
5695
  }, {
5694
5696
  default: g(() => [
5695
- (b(!0), T(ke, null, Le(a.legend.current, (H, te) => (b(), j(n, {
5697
+ (b(!0), T(ke, null, Le(a.legend.current, (H, te) => (b(), j(c, {
5696
5698
  key: te,
5697
5699
  cols: "12",
5698
5700
  class: "d-flex flex-row justify-center align-center py-1 px-0 ma-0"
@@ -6382,21 +6384,21 @@ class Ca {
6382
6384
  var o, i;
6383
6385
  e = e == null ? void 0 : e.toLowerCase(), e = e === "ec" ? "ecmwf" : e;
6384
6386
  const a = e.toLowerCase().split(","), r = [], s = [];
6385
- for (const c of a) {
6386
- let n = eo.find((p) => {
6387
+ for (const n of a) {
6388
+ let c = eo.find((p) => {
6387
6389
  var d, f, z;
6388
- return ((d = p.models) == null ? void 0 : d.includes(c)) || ((f = p.alias) == null ? void 0 : f.toLowerCase()) === c || ((z = p.name) == null ? void 0 : z.toLowerCase()) === c;
6390
+ return ((d = p.models) == null ? void 0 : d.includes(n)) || ((f = p.alias) == null ? void 0 : f.toLowerCase()) === n || ((z = p.name) == null ? void 0 : z.toLowerCase()) === n;
6389
6391
  }), u = to.find((p) => {
6390
6392
  var d, f, z;
6391
- return ((d = p.models) == null ? void 0 : d.includes(c)) || ((f = p.alias) == null ? void 0 : f.toLowerCase()) === c || ((z = p.name) == null ? void 0 : z.toLowerCase()) === c;
6393
+ return ((d = p.models) == null ? void 0 : d.includes(n)) || ((f = p.alias) == null ? void 0 : f.toLowerCase()) === n || ((z = p.name) == null ? void 0 : z.toLowerCase()) === n;
6392
6394
  });
6393
- n = n || eo.find((p) => {
6395
+ c = c || eo.find((p) => {
6394
6396
  var d, f;
6395
6397
  return ((d = p.alias) == null ? void 0 : d.toLowerCase()) === ((f = u == null ? void 0 : u.alias) == null ? void 0 : f.toLowerCase());
6396
6398
  }), u = u || to.find((p) => {
6397
6399
  var d, f;
6398
- return ((d = p.alias) == null ? void 0 : d.toLowerCase()) === ((f = n == null ? void 0 : n.alias) == null ? void 0 : f.toLowerCase());
6399
- }), n = n || eo[0], u = u || to[0], r.push((o = n.models) != null && o.includes(c) ? c : n.model), s.push((i = u.models) != null && i.includes(c) ? c : u.model);
6400
+ return ((d = p.alias) == null ? void 0 : d.toLowerCase()) === ((f = c == null ? void 0 : c.alias) == null ? void 0 : f.toLowerCase());
6401
+ }), c = c || eo[0], u = u || to[0], r.push((o = c.models) != null && o.includes(n) ? n : c.model), s.push((i = u.models) != null && i.includes(n) ? n : u.model);
6400
6402
  }
6401
6403
  return {
6402
6404
  weatherModels: r.join(","),
@@ -6413,8 +6415,8 @@ class Ca {
6413
6415
  }), a;
6414
6416
  }
6415
6417
  static pickHourly(e, o) {
6416
- var i, a, r, s, c, n, u, p, d, f, z, x, S, C, N, M, L, v, _, P, k, I, V, X, q, Y, $, ee, Q, le, de, pe, me, K, ie, ue, F, ne, xe, ve, Se, Me, Te, Ie, Ae, ye, H, te, je, Pe;
6417
- const he = typeof o == "string" ? D(o) : o, ge = e == null ? void 0 : e.weather, W = e == null ? void 0 : e.marine, _e = D((a = (i = ge == null ? void 0 : ge[0]) == null ? void 0 : i.hourly) == null ? void 0 : a.date).utc(), J = _e.clone().add((c = (s = (r = ge == null ? void 0 : ge[0]) == null ? void 0 : r.hourly) == null ? void 0 : s.time) == null ? void 0 : c.at(0), "h"), re = _e.clone().add((p = (u = (n = ge == null ? void 0 : ge[0]) == null ? void 0 : n.hourly) == null ? void 0 : u.time) == null ? void 0 : p.at(-1), "h"), Re = [];
6418
+ var i, a, r, s, n, c, u, p, d, f, z, x, S, C, N, M, L, v, _, P, k, I, V, X, q, Y, $, ee, Q, le, de, pe, me, K, ie, ue, F, ne, xe, ve, Se, Me, Te, Ie, Ae, ye, H, te, je, Pe;
6419
+ const he = typeof o == "string" ? D(o) : o, ge = e == null ? void 0 : e.weather, W = e == null ? void 0 : e.marine, _e = D((a = (i = ge == null ? void 0 : ge[0]) == null ? void 0 : i.hourly) == null ? void 0 : a.date).utc(), J = _e.clone().add((n = (s = (r = ge == null ? void 0 : ge[0]) == null ? void 0 : r.hourly) == null ? void 0 : s.time) == null ? void 0 : n.at(0), "h"), re = _e.clone().add((p = (u = (c = ge == null ? void 0 : ge[0]) == null ? void 0 : c.hourly) == null ? void 0 : u.time) == null ? void 0 : p.at(-1), "h"), Re = [];
6418
6420
  if (he.isBetween(J, re, "millisecond", "[]")) {
6419
6421
  const R = he.utc().diff(J, "h", !1);
6420
6422
  let fe, Ce;
@@ -6500,16 +6502,16 @@ class Ca {
6500
6502
  return Re;
6501
6503
  }
6502
6504
  static toLegacy(e) {
6503
- var o, i, a, r, s, c, n, u, p, d;
6505
+ var o, i, a, r, s, n, c, u, p, d;
6504
6506
  return {
6505
6507
  wind: (o = e == null ? void 0 : e.weather) == null ? void 0 : o.wind,
6506
6508
  visibility: (i = e == null ? void 0 : e.weather) == null ? void 0 : i.visibility,
6507
6509
  temp: (a = e == null ? void 0 : e.weather) == null ? void 0 : a.temp,
6508
6510
  prmsl: (r = e == null ? void 0 : e.weather) == null ? void 0 : r.pmsl,
6509
6511
  gusts: {
6510
- kts: (c = (s = e == null ? void 0 : e.weather) == null ? void 0 : s.wind) == null ? void 0 : c.gusts
6512
+ kts: (n = (s = e == null ? void 0 : e.weather) == null ? void 0 : s.wind) == null ? void 0 : n.gusts
6511
6513
  },
6512
- precip: (n = e == null ? void 0 : e.weather) == null ? void 0 : n.precip,
6514
+ precip: (c = e == null ? void 0 : e.weather) == null ? void 0 : c.precip,
6513
6515
  code: (u = e == null ? void 0 : e.weather) == null ? void 0 : u.code,
6514
6516
  name: (p = e == null ? void 0 : e.weather) == null ? void 0 : p.name,
6515
6517
  url: (d = e == null ? void 0 : e.weather) == null ? void 0 : d.url,
@@ -6522,8 +6524,8 @@ class Ca {
6522
6524
  };
6523
6525
  }
6524
6526
  static pickDaily(e, o) {
6525
- var i, a, r, s, c, n, u, p, d, f, z, x, S, C, N, M, L, v, _, P, k, I, V, X, q, Y, $, ee, Q, le, de, pe, me, K, ie, ue, F, ne, xe, ve, Se, Me, Te, Ie;
6526
- const Ae = typeof o == "string" ? D(o) : o, ye = e == null ? void 0 : e.weather, H = e == null ? void 0 : e.marine, te = D((r = (a = (i = ye == null ? void 0 : ye[0]) == null ? void 0 : i.daily) == null ? void 0 : a.time) == null ? void 0 : r.at(0)), je = D((n = (c = (s = ye == null ? void 0 : ye[0]) == null ? void 0 : s.daily) == null ? void 0 : c.time) == null ? void 0 : n.at(-1)), Pe = [];
6527
+ var i, a, r, s, n, c, u, p, d, f, z, x, S, C, N, M, L, v, _, P, k, I, V, X, q, Y, $, ee, Q, le, de, pe, me, K, ie, ue, F, ne, xe, ve, Se, Me, Te, Ie;
6528
+ const Ae = typeof o == "string" ? D(o) : o, ye = e == null ? void 0 : e.weather, H = e == null ? void 0 : e.marine, te = D((r = (a = (i = ye == null ? void 0 : ye[0]) == null ? void 0 : i.daily) == null ? void 0 : a.time) == null ? void 0 : r.at(0)), je = D((c = (n = (s = ye == null ? void 0 : ye[0]) == null ? void 0 : s.daily) == null ? void 0 : n.time) == null ? void 0 : c.at(-1)), Pe = [];
6527
6529
  if (Ae.isBetween(te, je, "millisecond", "[]")) {
6528
6530
  let he, ge;
6529
6531
  const W = Ae.diff(te, "d", !1);
@@ -7146,15 +7148,15 @@ const Nl = {
7146
7148
  async fetchTropicals() {
7147
7149
  var a, r, s;
7148
7150
  const t = (/* @__PURE__ */ new Date()).valueOf();
7149
- let e = 0, o = 0, i = (a = oo.WEATHER_LAYERS.find((c) => c.key === "tropicals")) == null ? void 0 : a.weight;
7151
+ let e = 0, o = 0, i = (a = oo.WEATHER_LAYERS.find((n) => n.key === "tropicals")) == null ? void 0 : a.weight;
7150
7152
  if (i > 0) {
7151
- const c = this.assistGateway[Math.round(Math.random() * (this.assistGateway.length - 1))], n = await Be.get(`${c}/api/arc/weather/layers2/links?l=${i}&v=${this.forecastModel}&t=${this.realTime}`, {
7153
+ const n = this.assistGateway[Math.round(Math.random() * (this.assistGateway.length - 1))], c = await Be.get(`${n}/api/arc/weather/layers2/links?l=${i}&v=${this.forecastModel}&t=${this.realTime}`, {
7152
7154
  headers: {
7153
7155
  Authorization: this.token || this.defaultMeteoToken
7154
7156
  }
7155
7157
  });
7156
- if (o = (/* @__PURE__ */ new Date()).valueOf() - (t + e), console.log("weather links elapsed: ", o, ", total: ", e += o), ((r = n == null ? void 0 : n.data) == null ? void 0 : r.code) === 0) {
7157
- const u = (s = n == null ? void 0 : n.data) == null ? void 0 : s.data;
7158
+ if (o = (/* @__PURE__ */ new Date()).valueOf() - (t + e), console.log("weather links elapsed: ", o, ", total: ", e += o), ((r = c == null ? void 0 : c.data) == null ? void 0 : r.code) === 0) {
7159
+ const u = (s = c == null ? void 0 : c.data) == null ? void 0 : s.data;
7158
7160
  await Be.get(u.tropicals, {
7159
7161
  headers: {
7160
7162
  Authorization: this.token || this.defaultMeteoToken,
@@ -7169,7 +7171,7 @@ const Nl = {
7169
7171
  active: !0,
7170
7172
  cached: !0,
7171
7173
  type: "json",
7172
- etime: n.data.etime,
7174
+ etime: c.data.etime,
7173
7175
  version: Math.random() + 1
7174
7176
  }, this.handleInit());
7175
7177
  }).catch((p) => {
@@ -7182,12 +7184,12 @@ const Nl = {
7182
7184
  handleRefresh() {
7183
7185
  var e, o;
7184
7186
  (((o = (e = this.tropicals) == null ? void 0 : e.data) == null ? void 0 : o.features) || []).forEach((i) => {
7185
- var a, r, s, c;
7186
- ((a = i.geometry) == null ? void 0 : a.type) === "Point" && ((r = i.properties) != null && r.important) && (i.properties.format = (c = (s = D(i.properties.date)) == null ? void 0 : s.utcOffset(this.timeZone)) == null ? void 0 : c.format(`MMM-DD/HHmm [(utc${this.computeTimezone})]`));
7187
+ var a, r, s, n;
7188
+ ((a = i.geometry) == null ? void 0 : a.type) === "Point" && ((r = i.properties) != null && r.important) && (i.properties.format = (n = (s = D(i.properties.date)) == null ? void 0 : s.utcOffset(this.timeZone)) == null ? void 0 : n.format(`MMM-DD/HHmm [(utc${this.computeTimezone})]`));
7187
7189
  }), this.handleInit();
7188
7190
  },
7189
7191
  handleInit() {
7190
- var t, e, o, i, a, r, s, c, n, u;
7192
+ var t, e, o, i, a, r, s, n, c, u;
7191
7193
  this.tropicals && (this.handleRender(), (t = this.map) == null || t.on(
7192
7194
  "click",
7193
7195
  [
@@ -7201,10 +7203,10 @@ const Nl = {
7201
7203
  this.historyPointLabelLayer
7202
7204
  ],
7203
7205
  this.handleClick
7204
- )), ((i = (o = (e = this.tropicals) == null ? void 0 : e.data) == null ? void 0 : o.features) == null ? void 0 : i.length) > 0 ? (s = (r = (a = this.$parent) == null ? void 0 : a.$refs) == null ? void 0 : r.idmBottomBar) == null || s.handleToggle("tropical", !0) : (u = (n = (c = this.$parent) == null ? void 0 : c.$refs) == null ? void 0 : n.idmBottomBar) == null || u.handleToggle("tropical", !1);
7206
+ )), ((i = (o = (e = this.tropicals) == null ? void 0 : e.data) == null ? void 0 : o.features) == null ? void 0 : i.length) > 0 ? (s = (r = (a = this.$parent) == null ? void 0 : a.$refs) == null ? void 0 : r.idmBottomBar) == null || s.handleToggle("tropical", !0) : (u = (c = (n = this.$parent) == null ? void 0 : n.$refs) == null ? void 0 : c.idmBottomBar) == null || u.handleToggle("tropical", !1);
7205
7207
  },
7206
7208
  handleRender() {
7207
- var t, e, o, i, a, r, s, c, n, u;
7209
+ var t, e, o, i, a, r, s, n, c, u;
7208
7210
  if (!this.map)
7209
7211
  setTimeout(() => {
7210
7212
  this.handleRender();
@@ -7310,9 +7312,9 @@ const Nl = {
7310
7312
  ],
7311
7313
  "text-halo-width": 4
7312
7314
  }
7313
- }), z = (/* @__PURE__ */ new Date()).valueOf() - (d + f), console.log("[tropical] add elapsed: ", z, ", total: ", f += z)), (r = this.map) != null && r.getSource(this.clusterSource) ? ((c = this.map) == null || c.getSource(this.clusterSource).setData((s = this.tropicals) != null && s.active ? this.tropicals.data : this.empty), z = (/* @__PURE__ */ new Date()).valueOf() - (d + f), console.log("[tropical] update elapsed: ", z, ", total: ", f += z)) : (this.map.addSource(this.clusterSource, {
7315
+ }), z = (/* @__PURE__ */ new Date()).valueOf() - (d + f), console.log("[tropical] add elapsed: ", z, ", total: ", f += z)), (r = this.map) != null && r.getSource(this.clusterSource) ? ((n = this.map) == null || n.getSource(this.clusterSource).setData((s = this.tropicals) != null && s.active ? this.tropicals.data : this.empty), z = (/* @__PURE__ */ new Date()).valueOf() - (d + f), console.log("[tropical] update elapsed: ", z, ", total: ", f += z)) : (this.map.addSource(this.clusterSource, {
7314
7316
  type: "geojson",
7315
- data: (n = this.tropicals) != null && n.active ? (u = this.tropicals) == null ? void 0 : u.data : this.empty
7317
+ data: (c = this.tropicals) != null && c.active ? (u = this.tropicals) == null ? void 0 : u.data : this.empty
7316
7318
  // cluster: true,
7317
7319
  // clusterRadius: 10, // 聚合半径
7318
7320
  }), this.map.addLayer({
@@ -7451,7 +7453,7 @@ const Nl = {
7451
7453
  ), this.showTropicalsInfo = !1;
7452
7454
  },
7453
7455
  handleDateChange() {
7454
- var t, e, o, i, a, r, s, c, n, u, p, d, f, z, x, S, C, N, M, L, v, _, P, k, I, V, X, q, Y, $, ee, Q;
7456
+ var t, e, o, i, a, r, s, n, c, u, p, d, f, z, x, S, C, N, M, L, v, _, P, k, I, V, X, q, Y, $, ee, Q;
7455
7457
  if ((t = this.interpolateMarkers) == null || t.forEach((le) => le == null ? void 0 : le.remove()), this.circleSourceData.features = [], (e = this.interpolateData) != null && e.length && this.tropicals.active) {
7456
7458
  const le = D(this.realTime).utc().set({ minute: 0, second: 0, millisecond: 0 }), de = this.interpolateData.filter((K) => K.properties.date === (le == null ? void 0 : le.format()) && !K.properties.disabled), pe = this.handleComputePolygons(de), me = E.featureCollection([...de]);
7457
7459
  pe.forEach((K) => {
@@ -7473,7 +7475,7 @@ const Nl = {
7473
7475
  for (const K of de)
7474
7476
  if (!K.properties.disabled) {
7475
7477
  let ie = "#f44336";
7476
- ((c = (s = K.properties) == null ? void 0 : s.wind) == null ? void 0 : c.kts) < 32 || !((u = (n = K.properties) == null ? void 0 : n.wind) != null && u.kts) ? ie = "#03f869" : ((d = (p = K.properties) == null ? void 0 : p.wind) == null ? void 0 : d.kts) >= 32 && ((z = (f = K.properties) == null ? void 0 : f.wind) == null ? void 0 : z.kts) < 47 ? ie = "#f2f202" : ((S = (x = K.properties) == null ? void 0 : x.wind) == null ? void 0 : S.kts) >= 47 && ((N = (C = K.properties) == null ? void 0 : C.wind) == null ? void 0 : N.kts) < 63 ? ie = "#ff9100" : ((L = (M = K.properties) == null ? void 0 : M.wind) == null ? void 0 : L.kts) >= 63 && ((_ = (v = K.properties) == null ? void 0 : v.wind) == null ? void 0 : _.kts) < 79 ? ie = "#f44336" : ((k = (P = K.properties) == null ? void 0 : P.wind) == null ? void 0 : k.kts) >= 79 && ((V = (I = K.properties) == null ? void 0 : I.wind) == null ? void 0 : V.kts) < 94 ? ie = "#f903d0" : ((q = (X = K.properties) == null ? void 0 : X.wind) == null ? void 0 : q.kts) >= 94 ? ie = "#8702f9" : ie = "#f44336";
7478
+ ((n = (s = K.properties) == null ? void 0 : s.wind) == null ? void 0 : n.kts) < 32 || !((u = (c = K.properties) == null ? void 0 : c.wind) != null && u.kts) ? ie = "#03f869" : ((d = (p = K.properties) == null ? void 0 : p.wind) == null ? void 0 : d.kts) >= 32 && ((z = (f = K.properties) == null ? void 0 : f.wind) == null ? void 0 : z.kts) < 47 ? ie = "#f2f202" : ((S = (x = K.properties) == null ? void 0 : x.wind) == null ? void 0 : S.kts) >= 47 && ((N = (C = K.properties) == null ? void 0 : C.wind) == null ? void 0 : N.kts) < 63 ? ie = "#ff9100" : ((L = (M = K.properties) == null ? void 0 : M.wind) == null ? void 0 : L.kts) >= 63 && ((_ = (v = K.properties) == null ? void 0 : v.wind) == null ? void 0 : _.kts) < 79 ? ie = "#f44336" : ((k = (P = K.properties) == null ? void 0 : P.wind) == null ? void 0 : k.kts) >= 79 && ((V = (I = K.properties) == null ? void 0 : I.wind) == null ? void 0 : V.kts) < 94 ? ie = "#f903d0" : ((q = (X = K.properties) == null ? void 0 : X.wind) == null ? void 0 : q.kts) >= 94 ? ie = "#8702f9" : ie = "#f44336";
7477
7479
  const ue = `<svg t="1719918955501"
7478
7480
  class="icon" viewBox="0 0 1024 1024" xmlns="http://www.w3.org/2000/svg" p-id="18382"
7479
7481
  xmlns:xlink="http://www.w3.org/1999/xlink" width="200" height="200">
@@ -7497,13 +7499,13 @@ const Nl = {
7497
7499
  (ee = this.map) != null && ee.getSource(this.interpolateSource) && ((Q = this.map) == null || Q.getSource(this.interpolateSource).setData(this.empty));
7498
7500
  },
7499
7501
  handleClick(t) {
7500
- var r, s, c, n, u, p, d, f;
7502
+ var r, s, n, c, u, p, d, f;
7501
7503
  const e = t.features[0], o = (s = (r = this.tropicals) == null ? void 0 : r.data) == null ? void 0 : s.features.filter(
7502
7504
  (z) => {
7503
7505
  var x;
7504
7506
  return z.geometry.type === "LineString" && z.properties.type === "forecast" && z.properties.name === ((x = e == null ? void 0 : e.properties) == null ? void 0 : x.name);
7505
7507
  }
7506
- ), i = (n = (c = this.tropicals) == null ? void 0 : c.data) == null ? void 0 : n.features.filter(
7508
+ ), i = (c = (n = this.tropicals) == null ? void 0 : n.data) == null ? void 0 : c.features.filter(
7507
7509
  (z) => {
7508
7510
  var x;
7509
7511
  return z.geometry.type === "LineString" && z.properties.type === "history" && z.properties.name === ((x = e == null ? void 0 : e.properties) == null ? void 0 : x.name);
@@ -7519,14 +7521,14 @@ const Nl = {
7519
7521
  this.activeTropicalsMarker ? this.activeTropicalsMarker.setLngLat([t.lngLat.lng, t.lngLat.lat]) : this.activeTropicalsMarker = new we.Marker(a).setLngLat([t.lngLat.lng, t.lngLat.lat]).setOffset([220, 0]).addTo(this.map);
7520
7522
  },
7521
7523
  handleForecastToggle(t) {
7522
- var i, a, r, s, c, n;
7524
+ var i, a, r, s, n, c;
7523
7525
  t.disabled = !t.disabled;
7524
7526
  const e = `${t.name}-${t.model}`, o = (a = (i = this.map) == null ? void 0 : i.getSource(this.source)._data) == null ? void 0 : a.features;
7525
7527
  o.forEach((u) => {
7526
7528
  u.properties.category === e && (u.properties.disabled = t.disabled);
7527
7529
  }), this.interpolateData.forEach((u) => {
7528
7530
  u.properties.category === e && (u.properties.disabled = t.disabled);
7529
- }), (s = (r = this.map) == null ? void 0 : r.getSource(this.source)) == null || s.setData(E.featureCollection(o)), (n = (c = this.map) == null ? void 0 : c.getSource(this.clusterSource)) == null || n.setData(E.featureCollection(o)), this.handleDateChange();
7531
+ }), (s = (r = this.map) == null ? void 0 : r.getSource(this.source)) == null || s.setData(E.featureCollection(o)), (c = (n = this.map) == null ? void 0 : n.getSource(this.clusterSource)) == null || c.setData(E.featureCollection(o)), this.handleDateChange();
7530
7532
  },
7531
7533
  handleStrikeProbability(t) {
7532
7534
  this.$emit("tropicalProbability", t);
@@ -7570,8 +7572,8 @@ const Nl = {
7570
7572
  se: i.r10se >= 0 ? i.r10se : void 0,
7571
7573
  sw: i.r10sw >= 0 ? i.r10sw : void 0,
7572
7574
  nw: i.r10nw >= 0 ? i.r10nw : void 0
7573
- }, c = this.handleComputeArc(o.geometry.coordinates, s, { ...o.properties, level: 10 });
7574
- e.push(c);
7575
+ }, n = this.handleComputeArc(o.geometry.coordinates, s, { ...o.properties, level: 10 });
7576
+ e.push(n);
7575
7577
  }
7576
7578
  return e;
7577
7579
  },
@@ -7579,23 +7581,23 @@ const Nl = {
7579
7581
  var r;
7580
7582
  const i = [];
7581
7583
  for (const s in e) {
7582
- const c = e[s] ?? 0;
7583
- let n;
7584
+ const n = e[s] ?? 0;
7585
+ let c;
7584
7586
  switch (s) {
7585
7587
  case "ne":
7586
- n = E.lineArc(t, c, 0, 90, { steps: c > 0 ? 32 : 1, units: "nauticalmiles" });
7588
+ c = E.lineArc(t, n, 0, 90, { steps: n > 0 ? 32 : 1, units: "nauticalmiles" });
7587
7589
  break;
7588
7590
  case "se":
7589
- n = E.lineArc(t, c, 90, 180, { steps: c > 0 ? 32 : 1, units: "nauticalmiles" });
7591
+ c = E.lineArc(t, n, 90, 180, { steps: n > 0 ? 32 : 1, units: "nauticalmiles" });
7590
7592
  break;
7591
7593
  case "sw":
7592
- n = E.lineArc(t, c, 180, 270, { steps: c > 0 ? 32 : 1, units: "nauticalmiles" });
7594
+ c = E.lineArc(t, n, 180, 270, { steps: n > 0 ? 32 : 1, units: "nauticalmiles" });
7593
7595
  break;
7594
7596
  case "nw":
7595
- n = E.lineArc(t, c, 270, 360, { steps: c > 0 ? 32 : 1, units: "nauticalmiles" });
7597
+ c = E.lineArc(t, n, 270, 360, { steps: n > 0 ? 32 : 1, units: "nauticalmiles" });
7596
7598
  break;
7597
7599
  }
7598
- i.push(...(r = n == null ? void 0 : n.geometry) == null ? void 0 : r.coordinates);
7600
+ i.push(...(r = c == null ? void 0 : c.geometry) == null ? void 0 : r.coordinates);
7599
7601
  }
7600
7602
  const a = E.lineString(i);
7601
7603
  return E.lineToPolygon(a, { properties: o });
@@ -7615,13 +7617,13 @@ const Nl = {
7615
7617
  style: { height: "80px" }
7616
7618
  }, os = { class: "pa-1 d-flex justify-space-between align-center" }, as = { class: "pa-1 d-flex justify-space-between align-center" };
7617
7619
  function is(t, e, o, i, a, r) {
7618
- const s = w("VBtn"), c = w("VTooltip"), n = w("VCardText"), u = w("VDivider"), p = w("VCardActions"), d = w("VCard");
7620
+ const s = w("VBtn"), n = w("VTooltip"), c = w("VCardText"), u = w("VDivider"), p = w("VCardActions"), d = w("VCard");
7619
7621
  return b(), T("div", Fl, [
7620
7622
  l("div", {
7621
7623
  class: "menu-bar-box transition pa-1",
7622
7624
  style: ae({ top: o.top + 134 + "px", right: a.right + "px" })
7623
7625
  }, [
7624
- m(c, {
7626
+ m(n, {
7625
7627
  text: t.$t("tropical.tropicals"),
7626
7628
  location: "left"
7627
7629
  }, {
@@ -7649,7 +7651,7 @@ function is(t, e, o, i, a, r) {
7649
7651
  elevation: "16"
7650
7652
  }, {
7651
7653
  default: g(() => [
7652
- m(n, null, {
7654
+ m(c, null, {
7653
7655
  default: g(() => {
7654
7656
  var f, z, x, S, C, N, M, L, v, _;
7655
7657
  return [
@@ -7674,7 +7676,7 @@ function is(t, e, o, i, a, r) {
7674
7676
  _: 1
7675
7677
  }),
7676
7678
  m(u),
7677
- m(n, { class: "text-body-1" }, {
7679
+ m(c, { class: "text-body-1" }, {
7678
7680
  default: g(() => {
7679
7681
  var f, z, x, S, C, N, M, L, v;
7680
7682
  return [
@@ -7784,7 +7786,7 @@ function is(t, e, o, i, a, r) {
7784
7786
  elevation: "16"
7785
7787
  }, {
7786
7788
  default: g(() => [
7787
- m(n, null, {
7789
+ m(c, null, {
7788
7790
  default: g(() => [
7789
7791
  He(l("div", os, e[15] || (e[15] = [
7790
7792
  l("div", { class: "legend d-flex justify-start align-center" }, [
@@ -8009,7 +8011,7 @@ const rs = {
8009
8011
  style: { height: "56px" }
8010
8012
  };
8011
8013
  function ms(t, e, o, i, a, r) {
8012
- const s = w("VBtn"), c = w("VDatePicker"), n = w("VDivider"), u = w("VListItemTitle"), p = w("VListItem"), d = w("VList"), f = w("VCardText"), z = w("VCardActions"), x = w("VCard");
8014
+ const s = w("VBtn"), n = w("VDatePicker"), c = w("VDivider"), u = w("VListItemTitle"), p = w("VListItem"), d = w("VList"), f = w("VCardText"), z = w("VCardActions"), x = w("VCard");
8013
8015
  return b(), T("div", ls, [
8014
8016
  m(s, {
8015
8017
  text: "",
@@ -8030,7 +8032,7 @@ function ms(t, e, o, i, a, r) {
8030
8032
  m(f, { class: "w-100 flex-1-1-0 d-flex pa-0" }, {
8031
8033
  default: g(() => [
8032
8034
  l("div", ss, [
8033
- m(c, {
8035
+ m(n, {
8034
8036
  modelValue: a.currentDate,
8035
8037
  "onUpdate:modelValue": e[0] || (e[0] = (S) => a.currentDate = S),
8036
8038
  min: a.dateRange[0],
@@ -8044,7 +8046,7 @@ function ms(t, e, o, i, a, r) {
8044
8046
  "onUpdate:month": r.handleUpdateMonth
8045
8047
  }, null, 8, ["modelValue", "min", "max", "mode-icon", "onUpdate:month"])
8046
8048
  ]),
8047
- m(n, {
8049
+ m(c, {
8048
8050
  class: "h-100",
8049
8051
  vertical: ""
8050
8052
  }),
@@ -8081,7 +8083,7 @@ function ms(t, e, o, i, a, r) {
8081
8083
  ]),
8082
8084
  _: 1
8083
8085
  }),
8084
- m(n),
8086
+ m(c),
8085
8087
  m(z, {
8086
8088
  class: "justify-end pa-0 pr-4",
8087
8089
  style: { height: "50px" }
@@ -8355,10 +8357,10 @@ const hs = {
8355
8357
  (a == null ? void 0 : a.data.code) === 0 && (this.meteoData = a == null ? void 0 : a.data.data), this.loading = !1;
8356
8358
  },
8357
8359
  initTableData(t) {
8358
- var o, i, a, r, s, c, n, u, p, d, f, z, x, S, C, N, M, L, v, _, P, k, I, V, X, q, Y, $, ee, Q, le, de, pe, me, K, ie, ue, F, ne, xe, ve;
8360
+ var o, i, a, r, s, n, c, u, p, d, f, z, x, S, C, N, M, L, v, _, P, k, I, V, X, q, Y, $, ee, Q, le, de, pe, me, K, ie, ue, F, ne, xe, ve;
8359
8361
  this.currentHourData = {}, this.positionGmt = (i = (o = t == null ? void 0 : t.weather) == null ? void 0 : o[0]) == null ? void 0 : i.timezone, this.positionOffset = (r = (a = t == null ? void 0 : t.weather) == null ? void 0 : a[0]) == null ? void 0 : r.offset;
8360
8362
  const e = ((s = ao.pickHourly(t, D(this.form.dateTime))) == null ? void 0 : s[0]) || {};
8361
- this.currentHourData.utc = e.utc, this.currentHourData.lat = this.form.lat, this.currentHourData.lng = this.form.lng, this.currentHourData.temp = this.roundPrecision((c = e == null ? void 0 : e.weather) == null ? void 0 : c.temp, 0) ?? "-", this.currentHourData.precipProbability = this.roundPrecision((u = (n = e == null ? void 0 : e.weather) == null ? void 0 : n.precip) == null ? void 0 : u.probability, 0) ?? "-", this.currentHourData.precip1h = this.roundPrecision((d = (p = e == null ? void 0 : e.weather) == null ? void 0 : p.precip) == null ? void 0 : d.sum, 0) ?? "-", this.currentHourData.visibility = this.roundPrecision((f = e == null ? void 0 : e.weather) == null ? void 0 : f.visibility, 0) ?? "-", this.currentHourData.windSpeed = this.roundPrecision((x = (z = e == null ? void 0 : e.weather) == null ? void 0 : z.wind) == null ? void 0 : x.kts, 1) ?? "-", this.currentHourData.windDir = (C = (S = e == null ? void 0 : e.weather) == null ? void 0 : S.wind) == null ? void 0 : C.direction, this.currentHourData.windLevel = this.roundPrecision((M = (N = e == null ? void 0 : e.weather) == null ? void 0 : N.wind) == null ? void 0 : M.scale, 0) ?? "-", this.currentHourData.windGust = this.roundPrecision((v = (L = e == null ? void 0 : e.weather) == null ? void 0 : L.wind) == null ? void 0 : v.gusts, 1) ?? "-", this.currentHourData.sigwaveHeight = this.roundPrecision((P = (_ = e == null ? void 0 : e.wave) == null ? void 0 : _.sig) == null ? void 0 : P.height, 1) ?? "-", this.currentHourData.sigwaveDir = (I = (k = e == null ? void 0 : e.wave) == null ? void 0 : k.sig) == null ? void 0 : I.direction, this.currentHourData.sigwavePeriod = this.roundPrecision((X = (V = e == null ? void 0 : e.wave) == null ? void 0 : V.sig) == null ? void 0 : X.period, 1) ?? "-", this.currentHourData.windwaveHeight = this.roundPrecision((Y = (q = e == null ? void 0 : e.wave) == null ? void 0 : q.wd) == null ? void 0 : Y.height, 1) ?? "-", this.currentHourData.windwaveDir = (ee = ($ = e == null ? void 0 : e.wave) == null ? void 0 : $.wd) == null ? void 0 : ee.direction, this.currentHourData.windwavePeriod = this.roundPrecision((le = (Q = e == null ? void 0 : e.wave) == null ? void 0 : Q.wd) == null ? void 0 : le.period, 1) ?? "-", this.currentHourData.swellHeight = this.roundPrecision((pe = (de = e == null ? void 0 : e.wave) == null ? void 0 : de.swell) == null ? void 0 : pe.height, 1) ?? "-", this.currentHourData.swellDir = (K = (me = e == null ? void 0 : e.wave) == null ? void 0 : me.swell) == null ? void 0 : K.direction, this.currentHourData.swellPeriod = this.roundPrecision((ue = (ie = e == null ? void 0 : e.wave) == null ? void 0 : ie.swell) == null ? void 0 : ue.period, 1) ?? "-", this.currentHourData.currentSpeed = this.roundPrecision((F = e == null ? void 0 : e.current) == null ? void 0 : F.speed, 1) ?? "-", this.currentHourData.currentDir = (ne = e == null ? void 0 : e.current) == null ? void 0 : ne.direction, this.currentHourData.currentSpeed = this.roundPrecision((xe = e == null ? void 0 : e.current) == null ? void 0 : xe.speed, 1) ?? "-", this.currentHourData.seaLevel = this.roundPrecision(e == null ? void 0 : e.height, 1) ?? "-", this.currentHourData.seaTemp = this.roundPrecision(e == null ? void 0 : e.sst, 0) ?? "-", this.currentHourData.weatherUrls = (ve = e == null ? void 0 : e.weather) == null ? void 0 : ve.url;
8363
+ this.currentHourData.utc = e.utc, this.currentHourData.lat = this.form.lat, this.currentHourData.lng = this.form.lng, this.currentHourData.temp = this.roundPrecision((n = e == null ? void 0 : e.weather) == null ? void 0 : n.temp, 0) ?? "-", this.currentHourData.precipProbability = this.roundPrecision((u = (c = e == null ? void 0 : e.weather) == null ? void 0 : c.precip) == null ? void 0 : u.probability, 0) ?? "-", this.currentHourData.precip1h = this.roundPrecision((d = (p = e == null ? void 0 : e.weather) == null ? void 0 : p.precip) == null ? void 0 : d.sum, 0) ?? "-", this.currentHourData.visibility = this.roundPrecision((f = e == null ? void 0 : e.weather) == null ? void 0 : f.visibility, 0) ?? "-", this.currentHourData.windSpeed = this.roundPrecision((x = (z = e == null ? void 0 : e.weather) == null ? void 0 : z.wind) == null ? void 0 : x.kts, 1) ?? "-", this.currentHourData.windDir = (C = (S = e == null ? void 0 : e.weather) == null ? void 0 : S.wind) == null ? void 0 : C.direction, this.currentHourData.windLevel = this.roundPrecision((M = (N = e == null ? void 0 : e.weather) == null ? void 0 : N.wind) == null ? void 0 : M.scale, 0) ?? "-", this.currentHourData.windGust = this.roundPrecision((v = (L = e == null ? void 0 : e.weather) == null ? void 0 : L.wind) == null ? void 0 : v.gusts, 1) ?? "-", this.currentHourData.sigwaveHeight = this.roundPrecision((P = (_ = e == null ? void 0 : e.wave) == null ? void 0 : _.sig) == null ? void 0 : P.height, 1) ?? "-", this.currentHourData.sigwaveDir = (I = (k = e == null ? void 0 : e.wave) == null ? void 0 : k.sig) == null ? void 0 : I.direction, this.currentHourData.sigwavePeriod = this.roundPrecision((X = (V = e == null ? void 0 : e.wave) == null ? void 0 : V.sig) == null ? void 0 : X.period, 1) ?? "-", this.currentHourData.windwaveHeight = this.roundPrecision((Y = (q = e == null ? void 0 : e.wave) == null ? void 0 : q.wd) == null ? void 0 : Y.height, 1) ?? "-", this.currentHourData.windwaveDir = (ee = ($ = e == null ? void 0 : e.wave) == null ? void 0 : $.wd) == null ? void 0 : ee.direction, this.currentHourData.windwavePeriod = this.roundPrecision((le = (Q = e == null ? void 0 : e.wave) == null ? void 0 : Q.wd) == null ? void 0 : le.period, 1) ?? "-", this.currentHourData.swellHeight = this.roundPrecision((pe = (de = e == null ? void 0 : e.wave) == null ? void 0 : de.swell) == null ? void 0 : pe.height, 1) ?? "-", this.currentHourData.swellDir = (K = (me = e == null ? void 0 : e.wave) == null ? void 0 : me.swell) == null ? void 0 : K.direction, this.currentHourData.swellPeriod = this.roundPrecision((ue = (ie = e == null ? void 0 : e.wave) == null ? void 0 : ie.swell) == null ? void 0 : ue.period, 1) ?? "-", this.currentHourData.currentSpeed = this.roundPrecision((F = e == null ? void 0 : e.current) == null ? void 0 : F.speed, 1) ?? "-", this.currentHourData.currentDir = (ne = e == null ? void 0 : e.current) == null ? void 0 : ne.direction, this.currentHourData.currentSpeed = this.roundPrecision((xe = e == null ? void 0 : e.current) == null ? void 0 : xe.speed, 1) ?? "-", this.currentHourData.seaLevel = this.roundPrecision(e == null ? void 0 : e.height, 1) ?? "-", this.currentHourData.seaTemp = this.roundPrecision(e == null ? void 0 : e.sst, 0) ?? "-", this.currentHourData.weatherUrls = (ve = e == null ? void 0 : e.weather) == null ? void 0 : ve.url;
8362
8364
  },
8363
8365
  handleBind() {
8364
8366
  var t, e;
@@ -8428,13 +8430,13 @@ const hs = {
8428
8430
  "aria-hidden": "true"
8429
8431
  }, zs = ["xlink:href"], Ls = { class: "d-flex justify-start align-center" }, Ps = { class: "mx-2" };
8430
8432
  function Cs(t, e, o, i, a, r) {
8431
- const s = w("VBtn"), c = w("VTooltip"), n = w("VCardTitle"), u = w("VDivider"), p = w("VTextField"), d = w("VCol"), f = w("VRow"), z = w("DateTimePicker"), x = w("VBtnToggle"), S = w("VCardActions"), C = w("VForm"), N = w("VCardText"), M = w("VCard"), L = w("VIcon");
8433
+ const s = w("VBtn"), n = w("VTooltip"), c = w("VCardTitle"), u = w("VDivider"), p = w("VTextField"), d = w("VCol"), f = w("VRow"), z = w("DateTimePicker"), x = w("VBtnToggle"), S = w("VCardActions"), C = w("VForm"), N = w("VCardText"), M = w("VCard"), L = w("VIcon");
8432
8434
  return b(), T("div", ds, [
8433
8435
  l("div", {
8434
8436
  class: "menu-bar-box transition pa-1",
8435
8437
  style: ae({ top: o.top + 174 + "px", right: a.right + "px" })
8436
8438
  }, [
8437
- m(c, {
8439
+ m(n, {
8438
8440
  text: t.$t("spot.spotsMeteo"),
8439
8441
  location: "left"
8440
8442
  }, {
@@ -8462,7 +8464,7 @@ function Cs(t, e, o, i, a, r) {
8462
8464
  style: ae({ top: o.top + 174 + "px", right: a.right + 50 + "px" })
8463
8465
  }, {
8464
8466
  default: g(() => [
8465
- m(n, { class: "d-flex justify-space-between align-center" }, {
8467
+ m(c, { class: "d-flex justify-space-between align-center" }, {
8466
8468
  default: g(() => [
8467
8469
  e[10] || (e[10] = l("div", { class: "d-flex justify-start align-center" }, [
8468
8470
  l("div", { class: "text-h6 font-weight-600 mx-2" }, "Spot Weather")
@@ -8786,7 +8788,7 @@ function Cs(t, e, o, i, a, r) {
8786
8788
  style: { width: "490px", "z-index": "9" }
8787
8789
  }, {
8788
8790
  default: g(() => [
8789
- m(n, { class: "d-flex justify-space-between align-center" }, {
8791
+ m(c, { class: "d-flex justify-space-between align-center" }, {
8790
8792
  default: g(() => {
8791
8793
  var v, _;
8792
8794
  return [
@@ -9136,14 +9138,14 @@ const Ms = {
9136
9138
  }
9137
9139
  },
9138
9140
  handleDrag(t) {
9139
- var o, i, a, r, s, c, n, u, p, d;
9141
+ var o, i, a, r, s, n, c, u, p, d;
9140
9142
  const e = (i = (o = t.target) == null ? void 0 : o._element) == null ? void 0 : i.id;
9141
9143
  if ((e == null ? void 0 : e.split("-").length) === 2) {
9142
9144
  const f = this.geojson.filter((C) => C.id === e.split("-")[0])[0];
9143
9145
  this.pointMarkers[f.id].filter((C) => {
9144
9146
  var N;
9145
9147
  return ((N = C._element) == null ? void 0 : N.id) === e;
9146
- })[0].setLngLat([(r = (a = t.target) == null ? void 0 : a._lngLat) == null ? void 0 : r.lng, (c = (s = t.target) == null ? void 0 : s._lngLat) == null ? void 0 : c.lat]);
9148
+ })[0].setLngLat([(r = (a = t.target) == null ? void 0 : a._lngLat) == null ? void 0 : r.lng, (n = (s = t.target) == null ? void 0 : s._lngLat) == null ? void 0 : n.lat]);
9147
9149
  let x;
9148
9150
  f.features.forEach((C, N) => {
9149
9151
  if (C.geometry.type === "Point" && C.properties.id === e.split("-")[1]) {
@@ -9155,22 +9157,22 @@ const Ms = {
9155
9157
  this.handleTmpPointUpdate(
9156
9158
  f,
9157
9159
  S[x - 1],
9158
- { lng: (u = (n = t.target) == null ? void 0 : n._lngLat) == null ? void 0 : u.lng, lat: (d = (p = t.target) == null ? void 0 : p._lngLat) == null ? void 0 : d.lat, properties: S[x].properties },
9160
+ { lng: (u = (c = t.target) == null ? void 0 : c._lngLat) == null ? void 0 : u.lng, lat: (d = (p = t.target) == null ? void 0 : p._lngLat) == null ? void 0 : d.lat, properties: S[x].properties },
9159
9161
  x === S.length - 1 ? void 0 : S[x + 1]
9160
9162
  );
9161
9163
  }
9162
9164
  },
9163
9165
  handleDragEnd(t) {
9164
- var o, i, a, r, s, c, n, u, p, d;
9166
+ var o, i, a, r, s, n, c, u, p, d;
9165
9167
  const e = (i = (o = t.target) == null ? void 0 : o._element) == null ? void 0 : i.id;
9166
9168
  if ((e == null ? void 0 : e.split("-").length) === 2) {
9167
9169
  const f = this.geojson.filter((S) => S.id === e.split("-")[0])[0];
9168
9170
  this.pointMarkers[f.id].filter((S) => {
9169
9171
  var C;
9170
9172
  return ((C = S._element) == null ? void 0 : C.id) === e;
9171
- })[0].setLngLat([(r = (a = t.target) == null ? void 0 : a._lngLat) == null ? void 0 : r.lng, (c = (s = t.target) == null ? void 0 : s._lngLat) == null ? void 0 : c.lat]);
9173
+ })[0].setLngLat([(r = (a = t.target) == null ? void 0 : a._lngLat) == null ? void 0 : r.lng, (n = (s = t.target) == null ? void 0 : s._lngLat) == null ? void 0 : n.lat]);
9172
9174
  const x = f.features.filter((S) => S.geometry.type === "Point" && S.properties.id === e.split("-")[1])[0];
9173
- x.geometry.coordinates = [(u = (n = t.target) == null ? void 0 : n._lngLat) == null ? void 0 : u.lng, (d = (p = t.target) == null ? void 0 : p._lngLat) == null ? void 0 : d.lat], f.features = f.features.filter((S) => S.geometry.type === "Point"), this.handlePointUpdate(f);
9175
+ x.geometry.coordinates = [(u = (c = t.target) == null ? void 0 : c._lngLat) == null ? void 0 : u.lng, (d = (p = t.target) == null ? void 0 : p._lngLat) == null ? void 0 : d.lat], f.features = f.features.filter((S) => S.geometry.type === "Point"), this.handlePointUpdate(f);
9174
9176
  }
9175
9177
  },
9176
9178
  handleContextmenu(t) {
@@ -9178,26 +9180,26 @@ const Ms = {
9178
9180
  t.preventDefault(), (o = this.contextmenu) == null || o.remove();
9179
9181
  const e = (r = (a = (i = t.originalEvent) == null ? void 0 : i.target) == null ? void 0 : a.parentElement) == null ? void 0 : r.id;
9180
9182
  if ((e == null ? void 0 : e.split("-").length) === 2) {
9181
- const c = this.geojson.filter((n) => n.id === e.split("-")[0])[0].features.filter((n) => n.geometry.type === "Point");
9182
- if (c.length > 2 && c.filter((u) => u.properties.id === (e == null ? void 0 : e.split("-")[1]))[0]) {
9183
+ const n = this.geojson.filter((c) => c.id === e.split("-")[0])[0].features.filter((c) => c.geometry.type === "Point");
9184
+ if (n.length > 2 && n.filter((u) => u.properties.id === (e == null ? void 0 : e.split("-")[1]))[0]) {
9183
9185
  const u = document.createElement("div");
9184
9186
  u.className = "idm-gl4-measure-contextmenu-marker", u.innerHTML = `<span id="del-${e}" class="del-point">${$t("actions.detele")}</span>`, this.contextmenu = new we.Marker(u).setOffset([24, 0]).setLngLat([t.lngLat.lng, t.lngLat.lat]).addTo(this.map);
9185
9187
  }
9186
9188
  }
9187
9189
  },
9188
9190
  handleClick(t) {
9189
- var o, i, a, r, s, c;
9191
+ var o, i, a, r, s, n;
9190
9192
  (o = this.contextmenu) == null || o.remove();
9191
9193
  const e = t.originalEvent.target.className;
9192
9194
  if (e === "marker-close") {
9193
- const n = (a = (i = t.originalEvent) == null ? void 0 : i.srcElement) == null ? void 0 : a.id, u = this.geojson.filter((p) => p.id === n)[0];
9194
- u && this.handleClear(u, !0), this.geojson = this.geojson.filter((p) => p.id !== n), !this.toggle && !((r = this.geojson) != null && r.some((p) => p.closed)) && this.handleUnbind();
9195
+ const c = (a = (i = t.originalEvent) == null ? void 0 : i.srcElement) == null ? void 0 : a.id, u = this.geojson.filter((p) => p.id === c)[0];
9196
+ u && this.handleClear(u, !0), this.geojson = this.geojson.filter((p) => p.id !== c), !this.toggle && !((r = this.geojson) != null && r.some((p) => p.closed)) && this.handleUnbind();
9195
9197
  } else if (e === "del-point") {
9196
- const n = (c = (s = t.originalEvent.target.id) == null ? void 0 : s.replace("del-", "")) == null ? void 0 : c.split("-"), u = this.geojson.filter((p) => p.id === n[0])[0];
9197
- u.features = u.features.filter((p) => p.geometry.type === "Point" && p.properties.id !== n[1]), this.handlePointUpdate(u);
9198
+ const c = (n = (s = t.originalEvent.target.id) == null ? void 0 : s.replace("del-", "")) == null ? void 0 : n.split("-"), u = this.geojson.filter((p) => p.id === c[0])[0];
9199
+ u.features = u.features.filter((p) => p.geometry.type === "Point" && p.properties.id !== c[1]), this.handlePointUpdate(u);
9198
9200
  } else if (e !== "marker-label" && this.toggle) {
9199
- let n = this.geojson.at(-1);
9200
- n || (n = E.featureCollection([], { id: (/* @__PURE__ */ new Date()).getTime().toString() }), this.geojson.push(n)), n.features = n.features.filter((p) => p.geometry.type === "Point");
9201
+ let c = this.geojson.at(-1);
9202
+ c || (c = E.featureCollection([], { id: (/* @__PURE__ */ new Date()).getTime().toString() }), this.geojson.push(c)), c.features = c.features.filter((p) => p.geometry.type === "Point");
9201
9203
  const u = E.feature(
9202
9204
  {
9203
9205
  type: "Point",
@@ -9209,7 +9211,7 @@ const Ms = {
9209
9211
  sumLabel: "Start"
9210
9212
  }
9211
9213
  );
9212
- n.features.push(u), this.handlePointUpdate(n);
9214
+ c.features.push(u), this.handlePointUpdate(c);
9213
9215
  }
9214
9216
  },
9215
9217
  handlePointUpdate(t) {
@@ -9218,14 +9220,14 @@ const Ms = {
9218
9220
  let o = 0;
9219
9221
  const i = [];
9220
9222
  for (let a = 1; a < e.length; a++) {
9221
- const r = e[a - 1], s = e[a], c = r.properties, n = { lng: r.geometry.coordinates[0], lat: r.geometry.coordinates[1] }, u = { lng: s.geometry.coordinates[0], lat: s.geometry.coordinates[1] }, p = Fe.calculateDistance(n, u, c.mode === "RL", 4), d = Fe.calculateBearing(n, u, c.mode === "RL", 2);
9223
+ const r = e[a - 1], s = e[a], n = r.properties, c = { lng: r.geometry.coordinates[0], lat: r.geometry.coordinates[1] }, u = { lng: s.geometry.coordinates[0], lat: s.geometry.coordinates[1] }, p = Fe.calculateDistance(c, u, n.mode === "RL", 4), d = Fe.calculateBearing(c, u, n.mode === "RL", 2);
9222
9224
  o = oe.roundPrecision(o + p, 4);
9223
9225
  let f;
9224
- c.mode === "RL" ? f = oe.convertToMonotonicLng([n, u]) : f = oe.convertToMonotonicLng(Fe.interpolateCoordinates(n, u, 200));
9226
+ n.mode === "RL" ? f = oe.convertToMonotonicLng([c, u]) : f = oe.convertToMonotonicLng(Fe.interpolateCoordinates(c, u, 200));
9225
9227
  const z = E.lineString(f.map((S) => [S.lng, S.lat]));
9226
9228
  z.properties.dist = p, z.properties.bearing = d, z.properties.total = o, z.properties.name = "Line " + this.currentLineIndex, i.push(z);
9227
9229
  const x = e[a];
9228
- x.properties.totalDist = oe.roundPrecision((c.totalDist ? c.totalDist : 0) + p, 4), x.properties.sumLabel = x.properties.totalDist + " nm";
9230
+ x.properties.totalDist = oe.roundPrecision((n.totalDist ? n.totalDist : 0) + p, 4), x.properties.sumLabel = x.properties.totalDist + " nm";
9229
9231
  }
9230
9232
  e.push(...i), t.total = o;
9231
9233
  }
@@ -9235,18 +9237,18 @@ const Ms = {
9235
9237
  const a = E.featureCollection([]);
9236
9238
  let r, s;
9237
9239
  if (e) {
9238
- const n = e.properties, u = { lng: e.geometry.coordinates[0], lat: e.geometry.coordinates[1] }, p = { lng: o.lng, lat: o.lat };
9239
- r = Fe.calculateDistance(u, p, n.mode === "RL", 4), s = Fe.calculateBearing(u, p, n.mode === "RL", 2);
9240
+ const c = e.properties, u = { lng: e.geometry.coordinates[0], lat: e.geometry.coordinates[1] }, p = { lng: o.lng, lat: o.lat };
9241
+ r = Fe.calculateDistance(u, p, c.mode === "RL", 4), s = Fe.calculateBearing(u, p, c.mode === "RL", 2);
9240
9242
  let d;
9241
- n.mode === "RL" ? d = oe.convertToMonotonicLng([u, p]) : d = oe.convertToMonotonicLng(Fe.interpolateCoordinates(u, p, 200));
9243
+ c.mode === "RL" ? d = oe.convertToMonotonicLng([u, p]) : d = oe.convertToMonotonicLng(Fe.interpolateCoordinates(u, p, 200));
9242
9244
  const f = E.lineString(d.map((z) => [z.lng, z.lat]));
9243
9245
  f.properties.dist = r, f.properties.bearing = s, a.features.push(f);
9244
9246
  }
9245
9247
  if (i) {
9246
- const n = o.properties, u = o, p = { lng: i.geometry.coordinates[0], lat: i.geometry.coordinates[1] };
9247
- r = Fe.calculateDistance(u, p, n.mode === "RL", 4), s = Fe.calculateBearing(u, p, n.mode === "RL", 2);
9248
+ const c = o.properties, u = o, p = { lng: i.geometry.coordinates[0], lat: i.geometry.coordinates[1] };
9249
+ r = Fe.calculateDistance(u, p, c.mode === "RL", 4), s = Fe.calculateBearing(u, p, c.mode === "RL", 2);
9248
9250
  let d;
9249
- n.mode === "RL" ? d = oe.convertToMonotonicLng([u, p]) : d = oe.convertToMonotonicLng(Fe.interpolateCoordinates(u, p, 200));
9251
+ c.mode === "RL" ? d = oe.convertToMonotonicLng([u, p]) : d = oe.convertToMonotonicLng(Fe.interpolateCoordinates(u, p, 200));
9250
9252
  const f = E.lineString(d.map((z) => [z.lng, z.lat]));
9251
9253
  f.properties.dist = r, f.properties.bearing = s, a.features.push(f);
9252
9254
  }
@@ -9288,22 +9290,22 @@ const Ms = {
9288
9290
  // 'text-halo-blur': 0,
9289
9291
  }
9290
9292
  });
9291
- let c;
9293
+ let n;
9292
9294
  if (i)
9293
- c = `<div class="marker-label">${this.$t("measure.dragTips")}</div>`;
9295
+ n = `<div class="marker-label">${this.$t("measure.dragTips")}</div>`;
9294
9296
  else {
9295
- const n = oe.roundPrecision((t.total ?? 0) + r, 1);
9296
- c = `<div class="marker-label">${this.$t("measure.totalDistance")}: <b>${n}</b>nm, ${this.$t(
9297
+ const c = oe.roundPrecision((t.total ?? 0) + r, 1);
9298
+ n = `<div class="marker-label">${this.$t("measure.totalDistance")}: <b>${c}</b>nm, ${this.$t(
9297
9299
  "measure.bearing"
9298
9300
  )}: <b>${s}</b>°</div><div class="marker-label"> ${this.$t("measure.mode")}${this.navigation === "RL" ? "RL" : "GC"}, ${this.$t(
9299
9301
  "measure.switchTips"
9300
9302
  )}</div><div class="marker-label">${this.$t("measure.clickTips")}</div>`;
9301
9303
  }
9302
9304
  if (this.tipMarker)
9303
- this.tipMarker._element.innerHTML = c, this.tipMarker.setLngLat([o.lng, o.lat]);
9305
+ this.tipMarker._element.innerHTML = n, this.tipMarker.setLngLat([o.lng, o.lat]);
9304
9306
  else {
9305
- const n = document.createElement("div");
9306
- n.className = "idm-gl4-measure-tip-marker", n.innerHTML = c, this.tipMarker = new we.Marker(n).setOffset([140, 0]).setLngLat([o.lng, o.lat]).addTo(this.map);
9307
+ const c = document.createElement("div");
9308
+ c.className = "idm-gl4-measure-tip-marker", c.innerHTML = n, this.tipMarker = new we.Marker(c).setOffset([140, 0]).setLngLat([o.lng, o.lat]).addTo(this.map);
9307
9309
  }
9308
9310
  },
9309
9311
  handleMove(t) {
@@ -9375,41 +9377,41 @@ const Ms = {
9375
9377
  // 'text-halo-blur': 0,
9376
9378
  }
9377
9379
  });
9378
- const s = t.features.filter((c) => c.geometry.type === "Point");
9379
- for (const c of s) {
9380
- const n = document.createElement("div");
9381
- n.id = `${t.id}-${c.properties.id}`, n.className = `${t.closed ? "idm-gl4-measure-marker closed" : "idm-gl4-measure-marker"}`, n.innerHTML = '<div class="marker-circle"></div>';
9382
- const u = new we.Marker({ element: n, draggable: !0, contextmenu: !0 }).setLngLat(c.geometry.coordinates).addTo(this.map);
9380
+ const s = t.features.filter((n) => n.geometry.type === "Point");
9381
+ for (const n of s) {
9382
+ const c = document.createElement("div");
9383
+ c.id = `${t.id}-${n.properties.id}`, c.className = `${t.closed ? "idm-gl4-measure-marker closed" : "idm-gl4-measure-marker"}`, c.innerHTML = '<div class="marker-circle"></div>';
9384
+ const u = new we.Marker({ element: c, draggable: !0, contextmenu: !0 }).setLngLat(n.geometry.coordinates).addTo(this.map);
9383
9385
  u.on("drag", this.handleDrag), u.on("dragend", this.handleDragEnd), this.pointMarkers[t.id] ? this.pointMarkers[t.id].push(u) : this.pointMarkers[t.id] = [u];
9384
9386
  }
9385
9387
  if (t.closed) {
9386
- const c = s.at(-1), u = t.features.filter((d) => d.geometry.type === "LineString").at(-1), p = document.createElement("div");
9387
- p.className = "idm-gl4-measure-summary-marker", p.innerHTML = `<div id="${t.id}" class="marker-close">×</div><div class="marker-label">${u.properties.name}</div>`, this.closeMarkers[t.id] = new we.Marker(p).setOffset([0, -30]).setLngLat(c.geometry.coordinates).addTo(this.map);
9388
+ const n = s.at(-1), u = t.features.filter((d) => d.geometry.type === "LineString").at(-1), p = document.createElement("div");
9389
+ p.className = "idm-gl4-measure-summary-marker", p.innerHTML = `<div id="${t.id}" class="marker-close">×</div><div class="marker-label">${u.properties.name}</div>`, this.closeMarkers[t.id] = new we.Marker(p).setOffset([0, -30]).setLngLat(n.geometry.coordinates).addTo(this.map);
9388
9390
  }
9389
9391
  }
9390
9392
  },
9391
9393
  handleClear(t, e = !0) {
9392
- var s, c, n, u, p, d, f, z, x, S;
9394
+ var s, n, c, u, p, d, f, z, x, S;
9393
9395
  const o = `${t.id}-${this.source}`, i = `${t.id}-${this.layer}`, a = `${t.id}-${this.labelLayer}`, r = `${t.id}-${this.sumLayer}`;
9394
- (s = this.map) != null && s.getLayer(i) && this.map.removeLayer(i), (c = this.map) != null && c.getLayer(a) && this.map.removeLayer(a), (n = this.map) != null && n.getLayer(r) && this.map.removeLayer(r), (u = this.map) != null && u.getLayer(this.tmpLayer) && this.map.removeLayer(this.tmpLayer), (p = this.map) != null && p.getLayer(this.tmpLabelLayer) && this.map.removeLayer(this.tmpLabelLayer), (d = this.closeMarkers[t.id]) == null || d.remove(), this.closeMarkers[t.id] = void 0, (f = this.pointMarkers[t.id]) == null || f.forEach((C) => {
9396
+ (s = this.map) != null && s.getLayer(i) && this.map.removeLayer(i), (n = this.map) != null && n.getLayer(a) && this.map.removeLayer(a), (c = this.map) != null && c.getLayer(r) && this.map.removeLayer(r), (u = this.map) != null && u.getLayer(this.tmpLayer) && this.map.removeLayer(this.tmpLayer), (p = this.map) != null && p.getLayer(this.tmpLabelLayer) && this.map.removeLayer(this.tmpLabelLayer), (d = this.closeMarkers[t.id]) == null || d.remove(), this.closeMarkers[t.id] = void 0, (f = this.pointMarkers[t.id]) == null || f.forEach((C) => {
9395
9397
  C == null || C.remove();
9396
9398
  }), this.pointMarkers[t.id] = [], (z = this.tipMarker) == null || z.remove(), this.tipMarker = void 0, e && ((x = this.map) != null && x.getSource(o)) && this.map.removeSource(o), e && ((S = this.map) != null && S.getSource(this.tmpSource)) && this.map.removeSource(this.tmpSource);
9397
9399
  }
9398
9400
  }
9399
9401
  }, Ts = { class: "idm-gl4-measure" };
9400
9402
  function Is(t, e, o, i, a, r) {
9401
- const s = w("VBtn"), c = w("VTooltip");
9403
+ const s = w("VBtn"), n = w("VTooltip");
9402
9404
  return b(), T("div", Ts, [
9403
9405
  l("div", {
9404
9406
  class: "menu-bar-box transition pa-1",
9405
9407
  style: ae({ top: o.top + 214 + "px", right: a.right + "px" })
9406
9408
  }, [
9407
- m(c, {
9409
+ m(n, {
9408
9410
  text: t.$t("measure.measure"),
9409
9411
  location: "left"
9410
9412
  }, {
9411
- activator: g(({ props: n }) => [
9412
- m(s, B(n, {
9413
+ activator: g(({ props: c }) => [
9414
+ m(s, B(c, {
9413
9415
  "min-width": "32",
9414
9416
  width: "32",
9415
9417
  height: "32",
@@ -9551,7 +9553,7 @@ const Rs = {
9551
9553
  class: "list d-flex flex-wrap pa-2 rounded ga-2"
9552
9554
  }, Fs = ["onClick"], Hs = { class: "btn-box d-flex justify-start align-center rounded ga-2 py-1 px-3" }, Ws = { class: "text-body-1" };
9553
9555
  function Gs(t, e, o, i, a, r) {
9554
- const s = w("DateTimePicker"), c = w("VListItemTitle"), n = w("VListItem"), u = w("VList"), p = w("VMenu"), d = w("VBtn"), f = w("VDivider"), z = w("VTooltip");
9556
+ const s = w("DateTimePicker"), n = w("VListItemTitle"), c = w("VListItem"), u = w("VList"), p = w("VMenu"), d = w("VBtn"), f = w("VDivider"), z = w("VTooltip");
9555
9557
  return b(), T("div", Ds, [
9556
9558
  Object.values(a.show).includes(!0) ? (b(), T("div", {
9557
9559
  key: 0,
@@ -9581,7 +9583,7 @@ function Gs(t, e, o, i, a, r) {
9581
9583
  default: g(() => [
9582
9584
  m(u, { class: "pa-1" }, {
9583
9585
  default: g(() => [
9584
- (b(!0), T(ke, null, Le(a.intervalOptions, (x, S) => (b(), j(n, {
9586
+ (b(!0), T(ke, null, Le(a.intervalOptions, (x, S) => (b(), j(c, {
9585
9587
  key: S,
9586
9588
  value: x,
9587
9589
  variant: a.intervalHour === x ? "tonal" : "text",
@@ -9594,7 +9596,7 @@ function Gs(t, e, o, i, a, r) {
9594
9596
  class: "pa-0 text-center text-body-1"
9595
9597
  }, {
9596
9598
  default: g(() => [
9597
- m(c, {
9599
+ m(n, {
9598
9600
  onClick: (C) => a.intervalHour = x
9599
9601
  }, {
9600
9602
  default: g(() => [
@@ -9922,7 +9924,7 @@ const Us = /* @__PURE__ */ Z(Rs, [["render", Gs]]), Vs = {
9922
9924
  class: "map-gl4-home"
9923
9925
  };
9924
9926
  function Zs(t, e, o, i, a, r) {
9925
- const s = w("IdmOtherLayer"), c = w("IdmWeatherLayer"), n = w("IdmTropicals"), u = w("IdmMeasure"), p = w("IdmSpot"), d = w("IdmBottomBar");
9927
+ const s = w("IdmOtherLayer"), n = w("IdmWeatherLayer"), c = w("IdmTropicals"), u = w("IdmMeasure"), p = w("IdmSpot"), d = w("IdmBottomBar");
9926
9928
  return b(), T("div", Ys, [
9927
9929
  m(s, B({
9928
9930
  ref: "idmOtherLayers",
@@ -9940,7 +9942,7 @@ function Zs(t, e, o, i, a, r) {
9940
9942
  a.otherCheckList = f, a.layerVersion = a.layerVersion + 1;
9941
9943
  })
9942
9944
  }), null, 16, ["token", "default-meteo-token", "map", "real-time", "gateway", "assist-gateway", "forecast-model", "map-feather"]),
9943
- m(c, B({
9945
+ m(n, B({
9944
9946
  ref: "idmWeatherLayers",
9945
9947
  map: o.map,
9946
9948
  "before-layer": "empty-layer-2",
@@ -9959,7 +9961,7 @@ function Zs(t, e, o, i, a, r) {
9959
9961
  a.weatherCheckList = f, a.layerVersion = a.layerVersion + 1;
9960
9962
  })
9961
9963
  }), null, 16, ["map", "real-time", "token", "default-meteo-token", "gateway", "assist-gateway", "forecast-model", "map-feather"]),
9962
- m(n, B({
9964
+ m(c, B({
9963
9965
  map: o.map,
9964
9966
  token: o.token,
9965
9967
  "default-meteo-token": a.defaultMeteoToken,
@@ -10003,7 +10005,7 @@ class qs {
10003
10005
  se(this, "hi");
10004
10006
  se(this, "td");
10005
10007
  se(this, "windy");
10006
- var o, i, a, r, s, c, n, u, p, d, f, z, x, S, C, N, M, L, v, _, P, k, I, V, X, q, Y, $, ee, Q, le, de, pe, me, K, ie, ue, F, ne, xe, ve, Se, Me, Te, Ie, Ae, ye, H, te, je, Pe, he, ge, W, _e, J, re, Re, R, fe, Ce, De, Oe, A, U, Ue, Ve, Ye, ze, Ze, Xe, qe, Ke, Qe, Je, $e, et, tt, ot, at, it, rt, lt, st, nt, ct, mt, ht, dt, pt, ut, gt, ft, yt, bt, wt, xt, vt, _t, kt, zt, Lt, Pt, Ct, St, Mt, Tt, It, At, Rt, Dt, Ot, Bt, Et, jt, Nt, Ft, Ht, Wt, Gt, Ut, Vt, Yt, Zt, Xt, qt, Kt, Qt, Jt, lo, so, no, co, mo, ho, po, uo, go, fo, yo, bo, wo, xo, vo, _o, ko, zo, Lo, Po, Co, So, Mo, To, Io, Ao, Ro, Do, Oo, Bo, Eo, jo, No, Fo, Ho, Wo, Go, Uo, Vo, Yo, Zo, Xo, qo, Ko, Qo, Jo, $o, ea, ta, oa, aa, ia, ra, la, sa, na, ca, ma, ha, da, pa, ua, ga, fa, ya, ba, wa, xa, va, _a, ka, za, La;
10008
+ var o, i, a, r, s, n, c, u, p, d, f, z, x, S, C, N, M, L, v, _, P, k, I, V, X, q, Y, $, ee, Q, le, de, pe, me, K, ie, ue, F, ne, xe, ve, Se, Me, Te, Ie, Ae, ye, H, te, je, Pe, he, ge, W, _e, J, re, Re, R, fe, Ce, De, Oe, A, U, Ue, Ve, Ye, ze, Ze, Xe, qe, Ke, Qe, Je, $e, et, tt, ot, at, it, rt, lt, st, nt, ct, mt, ht, dt, pt, ut, gt, ft, yt, bt, wt, xt, vt, _t, kt, zt, Lt, Pt, Ct, St, Mt, Tt, It, At, Rt, Dt, Ot, Bt, Et, jt, Nt, Ft, Ht, Wt, Gt, Ut, Vt, Yt, Zt, Xt, qt, Kt, Qt, Jt, lo, so, no, co, mo, ho, po, uo, go, fo, yo, bo, wo, xo, vo, _o, ko, zo, Lo, Po, Co, So, Mo, To, Io, Ao, Ro, Do, Oo, Bo, Eo, jo, No, Fo, Ho, Wo, Go, Uo, Vo, Yo, Zo, Xo, qo, Ko, Qo, Jo, $o, ea, ta, oa, aa, ia, ra, la, sa, na, ca, ma, ha, da, pa, ua, ga, fa, ya, ba, wa, xa, va, _a, ka, za, La;
10007
10009
  this.i4 = {
10008
10010
  source: {
10009
10011
  type: "raster",
@@ -28277,8 +28279,8 @@ class qs {
28277
28279
  layers: [
28278
28280
  (i = (o = this.originStyle) == null ? void 0 : o.light.layers) == null ? void 0 : i.find((h) => h.id === "land"),
28279
28281
  (r = (a = this.originStyle) == null ? void 0 : a.light.layers) == null ? void 0 : r.find((h) => h.id === "water"),
28280
- (c = (s = this.originStyle) == null ? void 0 : s.light.layers) == null ? void 0 : c.find((h) => h.id === "ice-area-fill"),
28281
- (u = (n = this.originStyle) == null ? void 0 : n.light.layers) == null ? void 0 : u.find((h) => h.id === "ice-area-line"),
28282
+ (n = (s = this.originStyle) == null ? void 0 : s.light.layers) == null ? void 0 : n.find((h) => h.id === "ice-area-fill"),
28283
+ (u = (c = this.originStyle) == null ? void 0 : c.light.layers) == null ? void 0 : u.find((h) => h.id === "ice-area-line"),
28282
28284
  (d = (p = this.originStyle) == null ? void 0 : p.light.layers) == null ? void 0 : d.find((h) => h.id === "empty-layer-0"),
28283
28285
  (z = (f = this.originStyle) == null ? void 0 : f.light.layers) == null ? void 0 : z.find((h) => h.id === "empty-layer-1"),
28284
28286
  (S = (x = this.originStyle) == null ? void 0 : x.light.layers) == null ? void 0 : S.find((h) => h.id === "country-boundaries"),