@idmwx/idmui-gl3 4.7.9 → 4.8.1

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
package/dist/index.js CHANGED
@@ -1,21 +1,21 @@
1
1
  var G0 = Object.defineProperty;
2
- var V0 = (z, M, b) => M in z ? G0(z, M, { enumerable: !0, configurable: !0, writable: !0, value: b }) : z[M] = b;
3
- var V = (z, M, b) => (V0(z, typeof M != "symbol" ? M + "" : M, b), b);
4
- import { LayerHelper as x0, CompanyHelper as S0 } from "@idm-plugin/tag";
5
- import { resolveComponent as S, openBlock as l, createElementBlock as f, createElementVNode as c, normalizeStyle as o0, createVNode as T, withCtx as A0, normalizeClass as J, Fragment as K, renderList as $, toDisplayString as _, createCommentVNode as F, createTextVNode as b0, withDirectives as X0, createStaticVNode as K0, vShow as v0, defineComponent as J0, withModifiers as C0, mergeProps as j } from "vue";
6
- import * as w from "@turf/turf";
7
- import Q0 from "@mapbox/sphericalmercator";
8
- import H from "moment";
9
- import g0 from "mapbox-gl";
10
- import { TropicalHelper as I0, LngLatHelper as M0, LaneHelper as B0 } from "@idm-plugin/geo";
11
- import { Meteo2Assist as D0 } from "@idm-plugin/meteo";
12
- import y0 from "axios";
13
- const I = (z, M) => {
2
+ var U0 = (z, M, b) => M in z ? G0(z, M, { enumerable: !0, configurable: !0, writable: !0, value: b }) : z[M] = b;
3
+ var J = (z, M, b) => (U0(z, typeof M != "symbol" ? M + "" : M, b), b);
4
+ import { LayerHelper as x0, CompanyHelper as I0 } from "@idm-plugin/tag";
5
+ import { resolveComponent as x, openBlock as W, createElementBlock as l, createElementVNode as c, normalizeStyle as o0, createVNode as w, withCtx as e0, normalizeClass as Y, Fragment as j, renderList as U, toDisplayString as v, createCommentVNode as _, createTextVNode as b0, withDirectives as y0, createStaticVNode as K0, vShow as X0, defineComponent as J0, withModifiers as T0, mergeProps as Q } from "vue";
6
+ import * as C from "@turf/turf";
7
+ import Y0 from "@mapbox/sphericalmercator";
8
+ import F from "moment";
9
+ import w0 from "mapbox-gl";
10
+ import { TropicalHelper as Q0, LngLatHelper as M0, LaneHelper as g0 } from "@idm-plugin/geo";
11
+ import { Meteo2Assist as k0 } from "@idm-plugin/meteo";
12
+ import N0 from "axios";
13
+ const k = (z, M) => {
14
14
  const b = z.__vccOpts || z;
15
15
  for (const [O, p] of M)
16
16
  b[O] = p;
17
17
  return b;
18
- }, $0 = {
18
+ }, V0 = {
19
19
  name: "IdmGlLayer",
20
20
  props: {
21
21
  map: {
@@ -184,7 +184,7 @@ const I = (z, M) => {
184
184
  this.show3d = !this.show3d, this.$emit("3d", this.show3d);
185
185
  }
186
186
  }
187
- }, Z0 = { class: "idm-gl3-layer" }, Y0 = { class: "bar-item layer-bars" }, M1 = { class: "bar-item tool-bars" }, b1 = { class: "flex-between" }, z1 = {
187
+ }, Z0 = { class: "idm-gl3-layer" }, $0 = { class: "bar-item layer-bars" }, M1 = { class: "bar-item tool-bars" }, b1 = { class: "flex-between" }, z1 = {
188
188
  key: 0,
189
189
  class: "iconfont active"
190
190
  }, p1 = {
@@ -193,16 +193,16 @@ const I = (z, M) => {
193
193
  }, O1 = ["onClick"], o1 = ["onClick"], c1 = {
194
194
  key: 0,
195
195
  class: "flex-start"
196
- }, e1 = {
196
+ }, A1 = {
197
197
  key: 1,
198
198
  class: "flex-start"
199
- }, A1 = { class: "header-box flex-between" }, t1 = { class: "weather-layers card-bg" }, a1 = { class: "layers-title flex-between" }, q1 = {
199
+ }, e1 = { class: "header-box flex-between" }, t1 = { class: "weather-layers card-bg" }, a1 = { class: "layers-title flex-between" }, q1 = {
200
200
  key: 0,
201
201
  class: "iconfont active"
202
202
  }, i1 = {
203
203
  key: 1,
204
204
  class: "iconfont"
205
- }, r1 = { class: "layers-body" }, n1 = { class: "flex-start" }, d1 = ["onClick"], W1 = ["onClick"], s1 = {
205
+ }, r1 = { class: "layers-body" }, n1 = { class: "flex-start" }, d1 = ["onClick"], s1 = ["onClick"], W1 = {
206
206
  key: 0,
207
207
  class: "flex-start"
208
208
  }, l1 = {
@@ -214,30 +214,30 @@ const I = (z, M) => {
214
214
  }, L1 = {
215
215
  key: 1,
216
216
  class: "iconfont bookmark-icon inactive"
217
- }, R1 = { class: "other-layers card-bg" }, h1 = { class: "layers-body" }, m1 = ["onClick"], N1 = { class: "flex-start" }, B1 = { class: "switch flex-center" }, y1 = {
217
+ }, R1 = { class: "other-layers card-bg" }, h1 = { class: "layers-body" }, m1 = ["onClick"], B1 = { class: "flex-start" }, g1 = { class: "switch flex-center" }, N1 = {
218
218
  key: 0,
219
219
  class: "iconfont active"
220
- }, g1 = {
220
+ }, y1 = {
221
221
  key: 1,
222
222
  class: "iconfont"
223
- }, X1 = { class: "source-layers card-bg" }, v1 = { class: "layers-body" };
224
- function T1(z, M, b, O, p, o) {
225
- const e = S("ElTooltip"), t = S("ElRadio"), q = S("ElRadioGroup"), r = S("ElScrollbar");
226
- return l(), f("div", Z0, [
223
+ }, X1 = { class: "source-layers card-bg" }, w1 = { class: "layers-body" };
224
+ function C1(z, M, b, O, p, o) {
225
+ const A = x("ElTooltip"), t = x("ElRadio"), q = x("ElRadioGroup"), n = x("ElScrollbar");
226
+ return W(), l("div", Z0, [
227
227
  c("div", {
228
228
  class: "menu-bar-box",
229
229
  style: o0({ top: b.top + 10 + "px", right: p.right + "px" })
230
230
  }, [
231
- c("div", Y0, [
232
- T(e, {
231
+ c("div", $0, [
232
+ w(A, {
233
233
  placement: "left",
234
234
  effect: "light",
235
235
  content: "Menu",
236
236
  "show-after": 1e3
237
237
  }, {
238
- default: A0(() => [
238
+ default: e0(() => [
239
239
  c("div", {
240
- class: J(b.layerToggle ? "menu-icon active" : "menu-icon"),
240
+ class: Y(b.layerToggle ? "menu-icon active" : "menu-icon"),
241
241
  onClick: M[0] || (M[0] = (...a) => o.handleMenuToggle && o.handleMenuToggle(...a))
242
242
  }, M[17] || (M[17] = [
243
243
  c("span", { class: "iconfont" }, "", -1)
@@ -252,15 +252,15 @@ function T1(z, M, b, O, p, o) {
252
252
  style: o0({ top: b.top + 160 + "px", right: p.right + "px" })
253
253
  }, [
254
254
  c("div", M1, [
255
- T(e, {
255
+ w(A, {
256
256
  placement: "left",
257
257
  effect: "light",
258
258
  content: "Measure",
259
259
  "show-after": 1e3
260
260
  }, {
261
- default: A0(() => [
261
+ default: e0(() => [
262
262
  c("div", {
263
- class: J(p.showMeasure ? "menu-icon active" : "menu-icon"),
263
+ class: Y(p.showMeasure ? "menu-icon active" : "menu-icon"),
264
264
  onClick: M[1] || (M[1] = (...a) => o.handleMeasureToggle && o.handleMeasureToggle(...a))
265
265
  }, M[18] || (M[18] = [
266
266
  c("span", { class: "iconfont" }, "", -1)
@@ -268,15 +268,15 @@ function T1(z, M, b, O, p, o) {
268
268
  ]),
269
269
  _: 1
270
270
  }),
271
- T(e, {
271
+ w(A, {
272
272
  placement: "left",
273
273
  effect: "light",
274
274
  content: "Point Meteo",
275
275
  "show-after": 1e3
276
276
  }, {
277
- default: A0(() => [
277
+ default: e0(() => [
278
278
  c("div", {
279
- class: J(p.showPoint ? "menu-icon active" : "menu-icon"),
279
+ class: Y(p.showPoint ? "menu-icon active" : "menu-icon"),
280
280
  onClick: M[2] || (M[2] = (...a) => o.handlePointToggle && o.handlePointToggle(...a))
281
281
  }, M[19] || (M[19] = [
282
282
  c("span", { class: "iconfont" }, "", -1)
@@ -284,15 +284,15 @@ function T1(z, M, b, O, p, o) {
284
284
  ]),
285
285
  _: 1
286
286
  }),
287
- T(e, {
287
+ w(A, {
288
288
  placement: "left",
289
289
  effect: "light",
290
290
  content: "Grid",
291
291
  "show-after": 1e3
292
292
  }, {
293
- default: A0(() => [
293
+ default: e0(() => [
294
294
  c("div", {
295
- class: J(p.showCoord ? "menu-icon active" : "menu-icon"),
295
+ class: Y(p.showCoord ? "menu-icon active" : "menu-icon"),
296
296
  onClick: M[3] || (M[3] = (...a) => o.handleCoordToggle && o.handleCoordToggle(...a))
297
297
  }, M[20] || (M[20] = [
298
298
  c("span", { class: "iconfont" }, "", -1)
@@ -300,15 +300,15 @@ function T1(z, M, b, O, p, o) {
300
300
  ]),
301
301
  _: 1
302
302
  }),
303
- T(e, {
303
+ w(A, {
304
304
  placement: "left",
305
305
  effect: "light",
306
306
  content: "3D",
307
307
  "show-after": 1e3
308
308
  }, {
309
- default: A0(() => [
309
+ default: e0(() => [
310
310
  c("div", {
311
- class: J(p.show3d ? "menu-icon active" : "menu-icon"),
311
+ class: Y(p.show3d ? "menu-icon active" : "menu-icon"),
312
312
  onClick: M[4] || (M[4] = (...a) => o.handle3DToggle && o.handle3DToggle(...a))
313
313
  }, M[21] || (M[21] = [
314
314
  c("span", { class: "iconfont" }, "", -1)
@@ -318,7 +318,7 @@ function T1(z, M, b, O, p, o) {
318
318
  })
319
319
  ])
320
320
  ], 4),
321
- o.hasCollectedLayers ? (l(), f("div", {
321
+ o.hasCollectedLayers ? (W(), l("div", {
322
322
  key: 0,
323
323
  class: "active-layers",
324
324
  style: o0({ right: p.right + "px", bottom: "100px" })
@@ -330,59 +330,59 @@ function T1(z, M, b, O, p, o) {
330
330
  style: { "font-size": "28px", "margin-right": "0" },
331
331
  onClick: M[5] || (M[5] = (...a) => o.toggleAutoActive && o.toggleAutoActive(...a))
332
332
  }, [
333
- p.autoActive ? (l(), f("i", z1, "")) : (l(), f("i", p1, ""))
333
+ p.autoActive ? (W(), l("i", z1, "")) : (W(), l("i", p1, ""))
334
334
  ])
335
335
  ]),
336
- (l(!0), f(K, null, $(p.layers.weather.filter((a) => a.collected), (a) => (l(), f("div", {
336
+ (W(!0), l(j, null, U(p.layers.weather.filter((a) => a.collected), (a) => (W(), l("div", {
337
337
  key: a.key,
338
- class: J(o.computeLayerClass(a, p.activeWeatherLayers))
338
+ class: Y(o.computeLayerClass(a, p.activeWeatherLayers))
339
339
  }, [
340
340
  c("div", {
341
341
  class: "checkbox",
342
- onClick: (i) => o.handleWeatherLayerPick(a)
342
+ onClick: (r) => o.handleWeatherLayerPick(a)
343
343
  }, null, 8, O1),
344
344
  c("span", {
345
345
  class: "name",
346
- onClick: (i) => o.handleWeatherLayerPick(a)
347
- }, _(a.name), 9, o1),
348
- a.key === "wind" && p.activeWeatherLayers.some((i) => i.key === a.key) ? (l(), f("div", c1, [
346
+ onClick: (r) => o.handleWeatherLayerPick(a)
347
+ }, v(a.name), 9, o1),
348
+ a.key === "wind" && p.activeWeatherLayers.some((r) => r.key === a.key) ? (W(), l("div", c1, [
349
349
  c("i", {
350
- class: J(["iconfont sub-layer-icon", b.showWindParticle ? "active" : ""]),
351
- onClick: M[6] || (M[6] = (i) => o.handleToggleWindParticle())
350
+ class: Y(["iconfont sub-layer-icon", b.showWindParticle ? "active" : ""]),
351
+ onClick: M[6] || (M[6] = (r) => o.handleToggleWindParticle())
352
352
  }, "", 2),
353
353
  c("i", {
354
- class: J(["iconfont sub-layer-icon", b.showWindFeather ? "active" : ""]),
355
- onClick: M[7] || (M[7] = (i) => o.handleToggleWindFeather())
354
+ class: Y(["iconfont sub-layer-icon", b.showWindFeather ? "active" : ""]),
355
+ onClick: M[7] || (M[7] = (r) => o.handleToggleWindFeather())
356
356
  }, "", 2)
357
- ])) : F("", !0),
358
- a.key === "current" && p.activeWeatherLayers.some((i) => i.key === a.key) ? (l(), f("div", e1, [
357
+ ])) : _("", !0),
358
+ a.key === "current" && p.activeWeatherLayers.some((r) => r.key === a.key) ? (W(), l("div", A1, [
359
359
  c("i", {
360
- class: J(["iconfont sub-layer-icon", b.showCurrentParticle ? "active" : ""]),
361
- onClick: M[8] || (M[8] = (i) => o.handleToggleCurrentParticle())
360
+ class: Y(["iconfont sub-layer-icon", b.showCurrentParticle ? "active" : ""]),
361
+ onClick: M[8] || (M[8] = (r) => o.handleToggleCurrentParticle())
362
362
  }, "", 2),
363
363
  c("i", {
364
- class: J(["iconfont sub-layer-icon", b.showCurrentIsoband ? "active" : ""]),
365
- onClick: M[9] || (M[9] = (i) => o.handleToggleCurrentIsoband())
364
+ class: Y(["iconfont sub-layer-icon", b.showCurrentIsoband ? "active" : ""]),
365
+ onClick: M[9] || (M[9] = (r) => o.handleToggleCurrentIsoband())
366
366
  }, "", 2)
367
- ])) : F("", !0)
367
+ ])) : _("", !0)
368
368
  ], 2))), 128))
369
- ], 4)) : F("", !0),
369
+ ], 4)) : _("", !0),
370
370
  c("div", {
371
371
  class: "available-layers flex-center",
372
372
  style: o0({ top: b.top + "px", right: b.layerToggle ? "0px" : "-240px" })
373
373
  }, [
374
374
  c("div", {
375
- class: J(["list-box", b.layerToggle ? "right-bar" : ""])
375
+ class: Y(["list-box", b.layerToggle ? "right-bar" : ""])
376
376
  }, [
377
- c("div", A1, [
377
+ c("div", e1, [
378
378
  M[23] || (M[23] = c("div", null, "Layers", -1)),
379
379
  c("div", {
380
380
  class: "iconfont close-btn",
381
381
  onClick: M[10] || (M[10] = (...a) => o.handleMenuToggle && o.handleMenuToggle(...a))
382
382
  }, "")
383
383
  ]),
384
- T(r, { style: { flex: "1" } }, {
385
- default: A0(() => [
384
+ w(n, { style: { flex: "1" } }, {
385
+ default: e0(() => [
386
386
  c("div", t1, [
387
387
  c("div", a1, [
388
388
  M[24] || (M[24] = c("div", null, "Weather Layers", -1)),
@@ -391,51 +391,51 @@ function T1(z, M, b, O, p, o) {
391
391
  style: { "margin-right": "0" },
392
392
  onClick: M[11] || (M[11] = (...a) => o.toggleAutoActive && o.toggleAutoActive(...a))
393
393
  }, [
394
- p.autoActive ? (l(), f("i", q1, "")) : (l(), f("i", i1, ""))
394
+ p.autoActive ? (W(), l("i", q1, "")) : (W(), l("i", i1, ""))
395
395
  ])
396
396
  ]),
397
397
  c("div", r1, [
398
- (l(!0), f(K, null, $(p.layers.weather, (a) => (l(), f(K, {
398
+ (W(!0), l(j, null, U(p.layers.weather, (a) => (W(), l(j, {
399
399
  key: a.key
400
400
  }, [
401
- a.hide ? F("", !0) : (l(), f("div", {
401
+ a.hide ? _("", !0) : (W(), l("div", {
402
402
  key: 0,
403
- class: J(o.computeLayerClass(a, p.activeWeatherLayers))
403
+ class: Y(o.computeLayerClass(a, p.activeWeatherLayers))
404
404
  }, [
405
405
  c("div", n1, [
406
406
  c("div", {
407
407
  class: "checkbox",
408
- onClick: (i) => o.handleWeatherLayerPick(a)
408
+ onClick: (r) => o.handleWeatherLayerPick(a)
409
409
  }, null, 8, d1),
410
410
  c("span", {
411
411
  class: "name",
412
- onClick: (i) => o.handleWeatherLayerPick(a)
413
- }, _(a.name), 9, W1),
414
- a.key === "wind" && p.activeWeatherLayers.some((i) => i.key === a.key) ? (l(), f("div", s1, [
412
+ onClick: (r) => o.handleWeatherLayerPick(a)
413
+ }, v(a.name), 9, s1),
414
+ a.key === "wind" && p.activeWeatherLayers.some((r) => r.key === a.key) ? (W(), l("div", W1, [
415
415
  c("i", {
416
- class: J(["iconfont sub-layer-icon", b.showWindParticle ? "active" : ""]),
417
- onClick: M[12] || (M[12] = (i) => o.handleToggleWindParticle())
416
+ class: Y(["iconfont sub-layer-icon", b.showWindParticle ? "active" : ""]),
417
+ onClick: M[12] || (M[12] = (r) => o.handleToggleWindParticle())
418
418
  }, "", 2),
419
419
  c("i", {
420
- class: J(["iconfont sub-layer-icon", b.showWindFeather ? "active" : ""]),
421
- onClick: M[13] || (M[13] = (i) => o.handleToggleWindFeather())
420
+ class: Y(["iconfont sub-layer-icon", b.showWindFeather ? "active" : ""]),
421
+ onClick: M[13] || (M[13] = (r) => o.handleToggleWindFeather())
422
422
  }, "", 2)
423
- ])) : F("", !0),
424
- a.key === "current" && p.activeWeatherLayers.some((i) => i.key === a.key) ? (l(), f("div", l1, [
423
+ ])) : _("", !0),
424
+ a.key === "current" && p.activeWeatherLayers.some((r) => r.key === a.key) ? (W(), l("div", l1, [
425
425
  c("i", {
426
- class: J(["iconfont sub-layer-icon", b.showCurrentParticle ? "active" : ""]),
427
- onClick: M[14] || (M[14] = (i) => o.handleToggleCurrentParticle())
426
+ class: Y(["iconfont sub-layer-icon", b.showCurrentParticle ? "active" : ""]),
427
+ onClick: M[14] || (M[14] = (r) => o.handleToggleCurrentParticle())
428
428
  }, "", 2),
429
429
  c("i", {
430
- class: J(["iconfont sub-layer-icon", b.showCurrentIsoband ? "active" : ""]),
431
- onClick: M[15] || (M[15] = (i) => o.handleToggleCurrentIsoband())
430
+ class: Y(["iconfont sub-layer-icon", b.showCurrentIsoband ? "active" : ""]),
431
+ onClick: M[15] || (M[15] = (r) => o.handleToggleCurrentIsoband())
432
432
  }, "", 2)
433
- ])) : F("", !0)
433
+ ])) : _("", !0)
434
434
  ]),
435
435
  c("div", {
436
- onClick: (i) => o.handleWeatherLayerCollect(a)
436
+ onClick: (r) => o.handleWeatherLayerCollect(a)
437
437
  }, [
438
- a.collected ? (l(), f("i", u1, "")) : (l(), f("i", L1, ""))
438
+ a.collected ? (W(), l("i", u1, "")) : (W(), l("i", L1, ""))
439
439
  ], 8, f1)
440
440
  ], 2))
441
441
  ], 64))), 128)),
@@ -451,18 +451,18 @@ function T1(z, M, b, O, p, o) {
451
451
  c("div", R1, [
452
452
  M[26] || (M[26] = c("div", { class: "layers-title" }, "Other Layers", -1)),
453
453
  c("div", h1, [
454
- (l(!0), f(K, null, $(p.layers.other, (a) => {
455
- var i;
456
- return l(), f("div", {
454
+ (W(!0), l(j, null, U(p.layers.other, (a) => {
455
+ var r;
456
+ return W(), l("div", {
457
457
  key: a.key,
458
- class: J(["layer flex-between", o.computeLayerClass(a, p.activeOtherLayers)]),
458
+ class: Y(["layer flex-between", o.computeLayerClass(a, p.activeOtherLayers)]),
459
459
  onClick: (L) => o.handleOtherLayerPick(a)
460
460
  }, [
461
- c("div", N1, [
462
- c("div", B1, [
463
- (i = o.computeLayerClass(a, p.activeOtherLayers)) != null && i.includes("active") ? (l(), f("i", y1, "")) : (l(), f("i", g1, ""))
461
+ c("div", B1, [
462
+ c("div", g1, [
463
+ (r = o.computeLayerClass(a, p.activeOtherLayers)) != null && r.includes("active") ? (W(), l("i", N1, "")) : (W(), l("i", y1, ""))
464
464
  ]),
465
- c("span", null, _(a.name), 1)
465
+ c("span", null, v(a.name), 1)
466
466
  ])
467
467
  ], 10, m1);
468
468
  }), 128))
@@ -470,21 +470,21 @@ function T1(z, M, b, O, p, o) {
470
470
  ]),
471
471
  c("div", X1, [
472
472
  M[29] || (M[29] = c("span", { class: "layers-title" }, "Forecast Model", -1)),
473
- c("div", v1, [
474
- T(q, {
473
+ c("div", w1, [
474
+ w(q, {
475
475
  modelValue: p.source,
476
476
  "onUpdate:modelValue": M[16] || (M[16] = (a) => p.source = a),
477
477
  class: "layer-radio flex-col-center-start"
478
478
  }, {
479
- default: A0(() => [
480
- T(t, { value: "GFS" }, {
481
- default: A0(() => M[27] || (M[27] = [
479
+ default: e0(() => [
480
+ w(t, { value: "GFS" }, {
481
+ default: e0(() => M[27] || (M[27] = [
482
482
  b0("GFS")
483
483
  ])),
484
484
  _: 1
485
485
  }),
486
- T(t, { value: "CMEMS" }, {
487
- default: A0(() => M[28] || (M[28] = [
486
+ w(t, { value: "CMEMS" }, {
487
+ default: e0(() => M[28] || (M[28] = [
488
488
  b0("CMEMS")
489
489
  ])),
490
490
  _: 1
@@ -501,8 +501,8 @@ function T1(z, M, b, O, p, o) {
501
501
  ], 4)
502
502
  ]);
503
503
  }
504
- const w1 = /* @__PURE__ */ I($0, [["render", T1]]);
505
- const C1 = {
504
+ const v1 = /* @__PURE__ */ k(V0, [["render", C1]]);
505
+ const T1 = {
506
506
  name: "IdmWindBarb",
507
507
  props: {
508
508
  map: {
@@ -537,7 +537,7 @@ const C1 = {
537
537
  return {
538
538
  source: "wind-barb-source",
539
539
  barbs: [0, 2, 5, 10, 15, 20, 25, 30, 35, 40, 45, 50, 55, 60, 65, 70, 75, 80, 85, 90, 95, 100, 105],
540
- empty: w.featureCollection([]),
540
+ empty: C.featureCollection([]),
541
541
  right: 10,
542
542
  bottom: 125,
543
543
  windBarbLoaded: !1
@@ -585,28 +585,28 @@ const C1 = {
585
585
  }, 500);
586
586
  else if (this.wind) {
587
587
  const p = (/* @__PURE__ */ new Date()).valueOf();
588
- let o = 0, e = 0, t = this.empty;
588
+ let o = 0, A = 0, t = this.empty;
589
589
  if ((z = this.wind) != null && z.active && (t = (M = this.wind) == null ? void 0 : M.data), (b = this.map) != null && b.getSource(this.source))
590
- (O = this.map) == null || O.getSource(this.source).setData(t), e = (/* @__PURE__ */ new Date()).valueOf() - (p + o), console.log("[wind] update elapsed: ", e, ", total: ", o += e);
590
+ (O = this.map) == null || O.getSource(this.source).setData(t), A = (/* @__PURE__ */ new Date()).valueOf() - (p + o), console.log("[wind] update elapsed: ", A, ", total: ", o += A);
591
591
  else {
592
592
  this.map.addSource(this.source, { type: "geojson", data: t });
593
593
  for (let q = 0; q < (this.barbs ?? []).length - 1; q++) {
594
- const r = (this.barbs ?? [])[q] || 0, a = (this.barbs ?? [])[q + 1] || 0, i = r < 10 ? `00${r}kts` : r < 100 ? `0${r}kts` : `${r}kts`;
594
+ const n = (this.barbs ?? [])[q] || 0, a = (this.barbs ?? [])[q + 1] || 0, r = n < 10 ? `00${n}kts` : n < 100 ? `0${n}kts` : `${n}kts`;
595
595
  this.map.addLayer(
596
596
  {
597
- id: i,
597
+ id: r,
598
598
  type: "symbol",
599
599
  filter: [
600
600
  "all",
601
601
  // @ts-ignore
602
- [">=", "spd", r],
602
+ [">=", "spd", n],
603
603
  // @ts-ignore
604
604
  ["<", "spd", a]
605
605
  ],
606
606
  source: this.source,
607
607
  layout: {
608
608
  "symbol-placement": "point",
609
- "icon-image": i,
609
+ "icon-image": r,
610
610
  // mapbox sprite
611
611
  "icon-size": 0.14,
612
612
  "icon-offset": [0, -20],
@@ -628,7 +628,7 @@ const C1 = {
628
628
  this.beforeLayer
629
629
  );
630
630
  }
631
- this.windBarbLoaded = !0, e = (/* @__PURE__ */ new Date()).valueOf() - (p + o), console.log("[wind] add elapsed: ", e, ", total: ", o += e);
631
+ this.windBarbLoaded = !0, A = (/* @__PURE__ */ new Date()).valueOf() - (p + o), console.log("[wind] add elapsed: ", A, ", total: ", o += A);
632
632
  }
633
633
  }
634
634
  },
@@ -649,24 +649,24 @@ const C1 = {
649
649
  this.map.getSource(this.source) && this.map.removeSource(this.source), this.windBarbLoaded = !1;
650
650
  }
651
651
  }
652
- }, _1 = { key: 0 };
652
+ }, E1 = { key: 0 };
653
653
  function x1(z, M, b, O, p, o) {
654
- var e;
655
- return (e = b.wind) != null && e.active ? (l(), f("div", _1)) : F("", !0);
654
+ var A;
655
+ return (A = b.wind) != null && A.active ? (W(), l("div", E1)) : _("", !0);
656
656
  }
657
- const S1 = /* @__PURE__ */ I(C1, [["render", x1]]);
658
- class E0 {
657
+ const I1 = /* @__PURE__ */ k(T1, [["render", x1]]);
658
+ class D0 {
659
659
  constructor(M) {
660
- V(this, "map");
661
- V(this, "mercator");
662
- V(this, "rampColorLayer");
663
- V(this, "rampColorSource");
664
- V(this, "particleLayer");
665
- V(this, "particleSource");
666
- V(this, "rampColorCanvas");
667
- V(this, "particleCanvas");
668
- V(this, "ratio");
669
- this.map = M, this.mercator = new Q0(), this.rampColorLayer = "ramp-color-layer", this.rampColorSource = "ramp-color-source", this.particleLayer = "particle-layer", this.particleSource = "particle-source", this.rampColorCanvas = document.createElement("canvas"), this.particleCanvas = document.createElement("canvas"), this.ratio = window.devicePixelRatio;
660
+ J(this, "map");
661
+ J(this, "mercator");
662
+ J(this, "rampColorLayer");
663
+ J(this, "rampColorSource");
664
+ J(this, "particleLayer");
665
+ J(this, "particleSource");
666
+ J(this, "rampColorCanvas");
667
+ J(this, "particleCanvas");
668
+ J(this, "ratio");
669
+ this.map = M, this.mercator = new Y0(), this.rampColorLayer = "ramp-color-layer", this.rampColorSource = "ramp-color-source", this.particleLayer = "particle-layer", this.particleSource = "particle-source", this.rampColorCanvas = document.createElement("canvas"), this.particleCanvas = document.createElement("canvas"), this.ratio = window.devicePixelRatio;
670
670
  }
671
671
  /**
672
672
  * 转换为[-180, 180]的经度,且包含转换次数
@@ -700,8 +700,8 @@ class E0 {
700
700
  * @param [lb.x, lb.y, rt.x, rt.y]
701
701
  */
702
702
  getBoundPixel() {
703
- const M = this.map.getBounds(), b = this.map.getZoom() + 1, O = [M._ne.lng, M._ne.lat], p = [M._sw.lng, M._sw.lat], [o, e] = this.convertNLng(O[0]), [t, q] = this.convertNLng(p[0]), [r, a] = this.mercator.px([o, O[1]], b), [i, L] = this.mercator.px([t, p[1]], b), n = Math.round(this.mercator.size * Math.pow(2, b) * (e + q));
704
- return [i, L, r + n, a];
703
+ const M = this.map.getBounds(), b = this.map.getZoom() + 1, O = [M._ne.lng, M._ne.lat], p = [M._sw.lng, M._sw.lat], [o, A] = this.convertNLng(O[0]), [t, q] = this.convertNLng(p[0]), [n, a] = this.mercator.px([o, O[1]], b), [r, L] = this.mercator.px([t, p[1]], b), d = Math.round(this.mercator.size * Math.pow(2, b) * (A + q));
704
+ return [r, L, n + d, a];
705
705
  }
706
706
  /**
707
707
  * [视窗边界像素宽度]
@@ -716,13 +716,13 @@ class E0 {
716
716
  * @param zoom
717
717
  */
718
718
  getWorldCopy(M, b) {
719
- const O = 2 ** b, [p, o, e, t] = M.map((a) => ~~(a / (O * 256))), q = [];
719
+ const O = 2 ** b, [p, o, A, t] = M.map((a) => ~~(a / (O * 256))), q = [];
720
720
  for (let a = t; a <= o; a++)
721
- for (let i = p; i <= e; i++)
722
- q.push([i, a]);
721
+ for (let r = p; r <= A; r++)
722
+ q.push([r, a]);
723
723
  return q.map((a) => {
724
- const i = 2 ** b * 256;
725
- return [a[0] * i, a[1] * i, i];
724
+ const r = 2 ** b * 256;
725
+ return [a[0] * r, a[1] * r, r];
726
726
  });
727
727
  }
728
728
  resize() {
@@ -738,7 +738,7 @@ class E0 {
738
738
  b !== O && this.map.setLayoutProperty(this.particleLayer, "visibility", O);
739
739
  }
740
740
  }
741
- class T0 {
741
+ class C0 {
742
742
  /**
743
743
  * 创建着色器
744
744
  * @see https://webglfundamentals.org/webgl/lessons/zh_cn/webgl-shaders-and-glsl.html
@@ -763,9 +763,9 @@ class T0 {
763
763
  * @param width??
764
764
  * @param height??
765
765
  */
766
- createTexture(M, b, O, p, o, e, t) {
766
+ createTexture(M, b, O, p, o, A, t) {
767
767
  const q = M.createTexture();
768
- return M.bindTexture(M.TEXTURE_2D, q), M.texParameteri(M.TEXTURE_2D, M.TEXTURE_MIN_FILTER, b), M.texParameteri(M.TEXTURE_2D, M.TEXTURE_MAG_FILTER, O), M.texParameteri(M.TEXTURE_2D, M.TEXTURE_WRAP_S, p), M.texParameteri(M.TEXTURE_2D, M.TEXTURE_WRAP_T, p), o instanceof Uint8Array ? M.texImage2D(M.TEXTURE_2D, 0, M.RGBA, e, t, 0, M.RGBA, M.UNSIGNED_BYTE, o) : M.texImage2D(M.TEXTURE_2D, 0, M.RGBA, M.RGBA, M.UNSIGNED_BYTE, o), M.bindTexture(M.TEXTURE_2D, null), q;
768
+ return M.bindTexture(M.TEXTURE_2D, q), M.texParameteri(M.TEXTURE_2D, M.TEXTURE_MIN_FILTER, b), M.texParameteri(M.TEXTURE_2D, M.TEXTURE_MAG_FILTER, O), M.texParameteri(M.TEXTURE_2D, M.TEXTURE_WRAP_S, p), M.texParameteri(M.TEXTURE_2D, M.TEXTURE_WRAP_T, p), o instanceof Uint8Array ? M.texImage2D(M.TEXTURE_2D, 0, M.RGBA, A, t, 0, M.RGBA, M.UNSIGNED_BYTE, o) : M.texImage2D(M.TEXTURE_2D, 0, M.RGBA, M.RGBA, M.UNSIGNED_BYTE, o), M.bindTexture(M.TEXTURE_2D, null), q;
769
769
  }
770
770
  /**
771
771
  * 创建数据资源
@@ -788,8 +788,8 @@ class T0 {
788
788
  * @param fragmentSchema
789
789
  */
790
790
  createProgram(M, b, O) {
791
- const p = M.createProgram(), o = this.createShader(M, M.VERTEX_SHADER, b), e = this.createShader(M, M.FRAGMENT_SHADER, O);
792
- if (p && o && e && (M.attachShader(p, o), M.attachShader(p, e), M.linkProgram(p), !M.getProgramParameter(p, M.LINK_STATUS)))
791
+ const p = M.createProgram(), o = this.createShader(M, M.VERTEX_SHADER, b), A = this.createShader(M, M.FRAGMENT_SHADER, O);
792
+ if (p && o && A && (M.attachShader(p, o), M.attachShader(p, A), M.linkProgram(p), !M.getProgramParameter(p, M.LINK_STATUS)))
793
793
  throw new Error(M.getProgramInfoLog(p) || "error happened while creating ramp color program");
794
794
  return p;
795
795
  }
@@ -802,15 +802,15 @@ class T0 {
802
802
  createProgramWrapper(M, b, O) {
803
803
  const p = this.createProgram(M, b, O);
804
804
  if (p) {
805
- const o = { program: p }, e = M.getProgramParameter(p, M.ACTIVE_ATTRIBUTES);
806
- for (let q = 0; q < e; q++) {
807
- const r = M.getActiveAttrib(p, q);
808
- o[r.name] = M.getAttribLocation(p, r.name);
805
+ const o = { program: p }, A = M.getProgramParameter(p, M.ACTIVE_ATTRIBUTES);
806
+ for (let q = 0; q < A; q++) {
807
+ const n = M.getActiveAttrib(p, q);
808
+ o[n.name] = M.getAttribLocation(p, n.name);
809
809
  }
810
810
  const t = M.getProgramParameter(p, M.ACTIVE_UNIFORMS);
811
811
  for (let q = 0; q < t; q++) {
812
- const r = M.getActiveUniform(p, q);
813
- o[r.name] = M.getUniformLocation(p, r.name);
812
+ const n = M.getActiveUniform(p, q);
813
+ o[n.name] = M.getUniformLocation(p, n.name);
814
814
  }
815
815
  return o;
816
816
  }
@@ -820,21 +820,21 @@ class T0 {
820
820
  * @param colors
821
821
  */
822
822
  setup(M, b, O = !1, p, o) {
823
- const e = document.createElement("canvas");
824
- e.width = 256, e.height = 1;
825
- const t = e.getContext("2d");
823
+ const A = document.createElement("canvas");
824
+ A.width = 256, A.height = 1;
825
+ const t = A.getContext("2d");
826
826
  if (t && M) {
827
827
  const q = t == null ? void 0 : t.createLinearGradient(0, 0, 256, 0);
828
- return b.forEach(([r, a]) => {
829
- q.addColorStop(r, a);
828
+ return b.forEach(([n, a]) => {
829
+ q.addColorStop(n, a);
830
830
  }), t.fillStyle = q, t.fillRect(0, 0, 256, 1), {
831
- canvas: e,
831
+ canvas: A,
832
832
  texture: this.createTexture(
833
833
  M,
834
834
  M.LINEAR,
835
835
  M.LINEAR,
836
836
  M.CLAMP_TO_EDGE,
837
- O ? new Uint8Array(t.getImageData(0, 0, 256, 1).data) : e,
837
+ O ? new Uint8Array(t.getImageData(0, 0, 256, 1).data) : A,
838
838
  p,
839
839
  o
840
840
  )
@@ -845,17 +845,17 @@ class T0 {
845
845
  const O = Math.ceil(Math.sqrt(b)), p = O * O, o = new Uint8Array(p * 4);
846
846
  for (let a = 0; a < o.length; a++)
847
847
  o[a] = Math.floor(Math.random() * 256);
848
- const e = this.createTexture(M, M.NEAREST, M.NEAREST, M.CLAMP_TO_EDGE, o, O, O), t = this.createTexture(M, M.NEAREST, M.NEAREST, M.CLAMP_TO_EDGE, o, O, O), q = new Float32Array(p);
848
+ const A = this.createTexture(M, M.NEAREST, M.NEAREST, M.CLAMP_TO_EDGE, o, O, O), t = this.createTexture(M, M.NEAREST, M.NEAREST, M.CLAMP_TO_EDGE, o, O, O), q = new Float32Array(p);
849
849
  for (let a = 0; a < p; a++)
850
850
  q[a] = a;
851
- const r = this.createDataBuffer(M, "array", q);
852
- return { resolution: O, total: p, texture0: e, texture1: t, indexBuffer: r };
851
+ const n = this.createDataBuffer(M, "array", q);
852
+ return { resolution: O, total: p, texture0: A, texture1: t, indexBuffer: n };
853
853
  }
854
854
  bind(M, b, O) {
855
855
  const p = this.createProgram(M, b, O);
856
856
  if (p) {
857
- const o = this.createDataBuffer(M, "array", void 0), e = M.getAttribLocation(p, "a_position");
858
- M.enableVertexAttribArray(e), M.vertexAttribPointer(e, 2, M.FLOAT, !1, 0, 0);
857
+ const o = this.createDataBuffer(M, "array", void 0), A = M.getAttribLocation(p, "a_position");
858
+ M.enableVertexAttribArray(A), M.vertexAttribPointer(A, 2, M.FLOAT, !1, 0, 0);
859
859
  const t = new Float32Array([0, 0, 1, 0, 0, 1, 0, 1, 1, 0, 1, 1]);
860
860
  this.createDataBuffer(M, "array", t);
861
861
  const q = M.getAttribLocation(p, "a_texCoord");
@@ -863,24 +863,24 @@ class T0 {
863
863
  }
864
864
  return {};
865
865
  }
866
- bindParticle(M, b, O, p, o, e) {
867
- const t = this.createProgramWrapper(M, b, O), q = this.createProgramWrapper(M, p, o), r = this.createProgramWrapper(M, p, e), a = this.createDataBuffer(M, "array", new Float32Array([0, 0, 1, 0, 0, 1, 0, 1, 1, 0, 1, 1])), i = M.createFramebuffer();
868
- return { particle: t, screen: q, update: r, quadBuffer: a, frameBuffer: i };
866
+ bindParticle(M, b, O, p, o, A) {
867
+ const t = this.createProgramWrapper(M, b, O), q = this.createProgramWrapper(M, p, o), n = this.createProgramWrapper(M, p, A), a = this.createDataBuffer(M, "array", new Float32Array([0, 0, 1, 0, 0, 1, 0, 1, 1, 0, 1, 1])), r = M.createFramebuffer();
868
+ return { particle: t, screen: q, update: n, quadBuffer: a, frameBuffer: r };
869
869
  }
870
- draw(M, b, O, p, o, e, t) {
871
- var q, r;
870
+ draw(M, b, O, p, o, A, t) {
871
+ var q, n;
872
872
  if (b && O) {
873
- M.resize(), b == null || b.viewport(0, 0, (q = b == null ? void 0 : b.canvas) == null ? void 0 : q.width, (r = b == null ? void 0 : b.canvas) == null ? void 0 : r.height), b.clearColor(0, 0, 0, 0), b.clear(b.COLOR_BUFFER_BIT | b.DEPTH_BUFFER_BIT);
873
+ M.resize(), b == null || b.viewport(0, 0, (q = b == null ? void 0 : b.canvas) == null ? void 0 : q.width, (n = b == null ? void 0 : b.canvas) == null ? void 0 : n.height), b.clearColor(0, 0, 0, 0), b.clear(b.COLOR_BUFFER_BIT | b.DEPTH_BUFFER_BIT);
874
874
  try {
875
- const a = b.getUniformLocation(O, "u_resolution"), i = b.getUniformLocation(O, "u_image"), L = b.getUniformLocation(O, "u_color");
876
- if (b.useProgram(O), b.uniform2f(a, b.canvas.width * M.ratio, b.canvas.height * M.ratio), b.activeTexture(b.TEXTURE0), b.bindTexture(b.TEXTURE_2D, p), b.uniform1i(i, 0), b.activeTexture(b.TEXTURE1), b.bindTexture(b.TEXTURE_2D, o), b.uniform1i(L, 1), t != null && t.uvRange && (t != null && t.sRange)) {
877
- const d = b.getUniformLocation(O, "u_range_u_v"), m = b.getUniformLocation(O, "u_range_s");
878
- b.uniform2f(d, t.uvRange[0], t.uvRange[1]), b.uniform2f(m, t.sRange[0], t.sRange[1]);
875
+ const a = b.getUniformLocation(O, "u_resolution"), r = b.getUniformLocation(O, "u_image"), L = b.getUniformLocation(O, "u_color");
876
+ if (b.useProgram(O), b.uniform2f(a, b.canvas.width * M.ratio, b.canvas.height * M.ratio), b.activeTexture(b.TEXTURE0), b.bindTexture(b.TEXTURE_2D, p), b.uniform1i(r, 0), b.activeTexture(b.TEXTURE1), b.bindTexture(b.TEXTURE_2D, o), b.uniform1i(L, 1), t != null && t.uvRange && (t != null && t.sRange)) {
877
+ const s = b.getUniformLocation(O, "u_range_u_v"), m = b.getUniformLocation(O, "u_range_s");
878
+ b.uniform2f(s, t.uvRange[0], t.uvRange[1]), b.uniform2f(m, t.sRange[0], t.sRange[1]);
879
879
  }
880
- const n = M.getBoundPixel(), h = M.map.getZoom() + 1, u = M.getWorldCopy(n, h);
881
- for (const d of u) {
882
- const m = (d[0] - n[0]) * M.ratio, R = (d[1] - n[3]) * M.ratio, X = d[2] * M.ratio, [x, g, U, y] = [m, X + m, R, X + R], C = new Float32Array([x, U, g, U, x, y, x, y, g, U, g, y]);
883
- b.bindBuffer(b.ARRAY_BUFFER, e), b.bufferData(b.ARRAY_BUFFER, C, b.STATIC_DRAW), b.drawArrays(b.TRIANGLES, 0, 6);
880
+ const d = M.getBoundPixel(), h = M.map.getZoom() + 1, u = M.getWorldCopy(d, h);
881
+ for (const s of u) {
882
+ const m = (s[0] - d[0]) * M.ratio, R = (s[1] - d[3]) * M.ratio, y = s[2] * M.ratio, [T, N, H, K] = [m, y + m, R, y + R], V = new Float32Array([T, H, N, H, T, K, T, K, N, H, N, K]);
883
+ b.bindBuffer(b.ARRAY_BUFFER, A), b.bufferData(b.ARRAY_BUFFER, V, b.STATIC_DRAW), b.drawArrays(b.TRIANGLES, 0, 6);
884
884
  }
885
885
  } catch (a) {
886
886
  console.log(`render failed...${a}`);
@@ -888,8 +888,8 @@ class T0 {
888
888
  }
889
889
  }
890
890
  drawParticle(M, b, O, p, o) {
891
- var e, t;
892
- b && (b == null || b.viewport(0, 0, (e = b == null ? void 0 : b.canvas) == null ? void 0 : e.width, (t = b == null ? void 0 : b.canvas) == null ? void 0 : t.height), b.disable(b.DEPTH_TEST), b.disable(b.STENCIL_TEST), b.activeTexture(b.TEXTURE0), b.bindTexture(b.TEXTURE_2D, O), b.activeTexture(b.TEXTURE1), b.bindTexture(b.TEXTURE_2D, p.texture0), this.renderScreen(M, b, p, o), this.updateParticles(M, b, p, o));
891
+ var A, t;
892
+ b && (b == null || b.viewport(0, 0, (A = b == null ? void 0 : b.canvas) == null ? void 0 : A.width, (t = b == null ? void 0 : b.canvas) == null ? void 0 : t.height), b.disable(b.DEPTH_TEST), b.disable(b.STENCIL_TEST), b.activeTexture(b.TEXTURE0), b.bindTexture(b.TEXTURE_2D, O), b.activeTexture(b.TEXTURE1), b.bindTexture(b.TEXTURE_2D, p.texture0), this.renderScreen(M, b, p, o), this.updateParticles(M, b, p, o));
893
893
  }
894
894
  renderScreen(M, b, O, p) {
895
895
  b.bindFramebuffer(b.FRAMEBUFFER, O.frameBuffer), b.framebufferTexture2D(b.FRAMEBUFFER, b.COLOR_ATTACHMENT0, b.TEXTURE_2D, O.screenTexture, 0), b.viewport(0, 0, b.canvas.width, b.canvas.height), this.renderScreenTexture(b, O.backgroundTexture, O.screen, O.quadBuffer, 0.95), this.renderParticles(M, b, O, p), b.bindFramebuffer(b.FRAMEBUFFER, null), this.renderScreenTexture(b, O.screenTexture, O.screen, O.quadBuffer, 1);
@@ -907,11 +907,11 @@ class T0 {
907
907
  }
908
908
  }
909
909
  updateParticles(M, b, O, p) {
910
- var e, t;
910
+ var A, t;
911
911
  if (b) {
912
912
  b.bindFramebuffer(b.FRAMEBUFFER, O.frameBuffer), b.framebufferTexture2D(b.FRAMEBUFFER, b.COLOR_ATTACHMENT0, b.TEXTURE_2D, O.texture1, 0), b.viewport(0, 0, O.resolution, O.resolution), b.useProgram(O.update.program), b.bindBuffer(b.ARRAY_BUFFER, O.quadBuffer), b.enableVertexAttribArray(O.update.a_pos), b.vertexAttribPointer(O.update.a_pos, 2, b.FLOAT, !1, 0, 0), b.uniform1i(O.update.u_factor, 0), b.uniform1i(O.update.u_particles, 1);
913
913
  const q = M.getBoundRange();
914
- b.uniform4f(O.update.u_viewport, q[0], q[1], q[2], q[3]), b.uniform1f(O.update.u_rand_seed, Math.random()), b.uniform2f(O.update.u_factor_res, (e = O == null ? void 0 : O.image) == null ? void 0 : e.width, (t = O == null ? void 0 : O.image) == null ? void 0 : t.height), b.uniform2f(O.update.u_factor_min, p.uvRange[0], p.uvRange[0]), b.uniform2f(O.update.u_factor_max, p.uvRange[1], p.uvRange[1]), b.uniform1f(O.update.u_speed_factor, p.speedFactor * M.ratio), b.uniform1f(O.update.u_drop_rate, p.dropRate), b.uniform1f(O.update.u_drop_rate_bump, p.dropRateBump), b.drawArrays(b.TRIANGLES, 0, 6);
914
+ b.uniform4f(O.update.u_viewport, q[0], q[1], q[2], q[3]), b.uniform1f(O.update.u_rand_seed, Math.random()), b.uniform2f(O.update.u_factor_res, (A = O == null ? void 0 : O.image) == null ? void 0 : A.width, (t = O == null ? void 0 : O.image) == null ? void 0 : t.height), b.uniform2f(O.update.u_factor_min, p.uvRange[0], p.uvRange[0]), b.uniform2f(O.update.u_factor_max, p.uvRange[1], p.uvRange[1]), b.uniform1f(O.update.u_speed_factor, p.speedFactor * M.ratio), b.uniform1f(O.update.u_drop_rate, p.dropRate), b.uniform1f(O.update.u_drop_rate_bump, p.dropRateBump), b.drawArrays(b.TRIANGLES, 0, 6);
915
915
  }
916
916
  const o = O.texture0;
917
917
  O.texture0 = O.texture1, O.texture1 = o;
@@ -928,10 +928,10 @@ class T0 {
928
928
  });
929
929
  }
930
930
  }
931
- class e0 {
931
+ class A0 {
932
932
  }
933
933
  // 顶点渲染
934
- V(e0, "vertexSchema", `
934
+ J(A0, "vertexSchema", `
935
935
  //canvas 坐标系上的坐标 (x, y)
936
936
  attribute vec2 a_position; //像素坐标
937
937
  attribute vec2 a_texCoord; //纹理坐标
@@ -946,7 +946,7 @@ V(e0, "vertexSchema", `
946
946
  gl_Position = vec4(position * vec2(1, -1), 0.0, 1.0);
947
947
  v_texCoord = a_texCoord;
948
948
  }`), // 类如风、流等u v双变量片元渲染
949
- V(e0, "uvFragmentSchema", `
949
+ J(A0, "uvFragmentSchema", `
950
950
  precision mediump float;
951
951
  uniform sampler2D u_image;
952
952
  uniform vec2 u_range_u_v;
@@ -965,7 +965,7 @@ V(e0, "uvFragmentSchema", `
965
965
 
966
966
  gl_FragColor = color;
967
967
  }`), // 类如浪、气压等单变量片元渲染
968
- V(e0, "fragmentSchema", `
968
+ J(A0, "fragmentSchema", `
969
969
  precision mediump float;
970
970
  uniform sampler2D u_image; // 灰度
971
971
  uniform sampler2D u_color; // 色值映射
@@ -978,7 +978,7 @@ V(e0, "fragmentSchema", `
978
978
  }`);
979
979
  class q0 {
980
980
  }
981
- V(q0, "vertexSchema", `
981
+ J(q0, "vertexSchema", `
982
982
  precision mediump float;
983
983
 
984
984
  attribute float a_index; // 索引
@@ -1002,7 +1002,7 @@ V(q0, "vertexSchema", `
1002
1002
  gl_PointSize = 1.0;
1003
1003
  // gl_PointSize = u_point;
1004
1004
  gl_Position = vec4(2.0 * v_particle_pos.x - 1.0, 1.0 - 2.0 * v_particle_pos.y, 0, 1);
1005
- }`), V(q0, "fragmentSchema", `
1005
+ }`), J(q0, "fragmentSchema", `
1006
1006
  precision mediump float;
1007
1007
 
1008
1008
  uniform sampler2D u_factor;
@@ -1024,7 +1024,7 @@ V(q0, "vertexSchema", `
1024
1024
 
1025
1025
  float f = 1.0 - uv.b;
1026
1026
  gl_FragColor = texture2D(u_color_ramp, ramp_pos) * f;
1027
- }`), V(q0, "quadVertSchema", `
1027
+ }`), J(q0, "quadVertSchema", `
1028
1028
  precision mediump float;
1029
1029
 
1030
1030
  attribute vec2 a_pos;
@@ -1034,7 +1034,7 @@ V(q0, "vertexSchema", `
1034
1034
  void main() {
1035
1035
  v_tex_pos = a_pos;
1036
1036
  gl_Position = vec4(1.0 - 2.0 * a_pos, 0, 1);
1037
- }`), V(q0, "screenFragmentSchema", `
1037
+ }`), J(q0, "screenFragmentSchema", `
1038
1038
  precision mediump float;
1039
1039
 
1040
1040
  uniform sampler2D u_screen;
@@ -1046,7 +1046,7 @@ V(q0, "vertexSchema", `
1046
1046
  vec4 color = texture2D(u_screen, 1.0 - v_tex_pos);
1047
1047
  // a hack to guarantee opacity fade out even with a value close to 1.0
1048
1048
  gl_FragColor = vec4(floor(255.0 * color * u_opacity) / 255.0);
1049
- }`), V(q0, "updateFragmentSchema", `
1049
+ }`), J(q0, "updateFragmentSchema", `
1050
1050
  precision mediump float;
1051
1051
 
1052
1052
  uniform sampler2D u_particles;
@@ -1125,14 +1125,14 @@ V(q0, "vertexSchema", `
1125
1125
  fract(pos * 255.0),
1126
1126
  floor(pos * 255.0) / 255.0);
1127
1127
  }`);
1128
- class E1 {
1128
+ class D1 {
1129
1129
  constructor(M = "eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9.eyJpZCI6ImNseTVudHJzYzAwNWUwbHBsZHkyaDRqczMiLCJyb2xlIjoxLCJuYW1lIjoiZmFrZUBvcm13eC5jb20iLCJwbGF0SWQiOiJnZDBtdDFkIiwiY29tcGFueSI6eyJpZCI6bnVsbCwiY2hpbGRyZW4iOltdfSwiaWF0IjoxNzIzMDI0MDI0LCJleHAiOjM5MzA1NDQwMjR9.RrKcdcMnq-FxBLJQ-i6lx2FscDE46y8EvHIemPW4HTg") {
1130
- V(this, "token");
1131
- V(this, "mapboxCustomer");
1132
- V(this, "i4");
1133
- V(this, "hi");
1134
- V(this, "td");
1135
- V(this, "windy");
1130
+ J(this, "token");
1131
+ J(this, "mapboxCustomer");
1132
+ J(this, "i4");
1133
+ J(this, "hi");
1134
+ J(this, "td");
1135
+ J(this, "windy");
1136
1136
  this.token = M, this.mapboxCustomer = {
1137
1137
  source: this.initialOnlineStyle().sources.composite,
1138
1138
  layers: {
@@ -2736,7 +2736,7 @@ const P1 = {
2736
2736
  type: Object
2737
2737
  },
2738
2738
  viewport: {
2739
- type: E0
2739
+ type: D0
2740
2740
  },
2741
2741
  bottom: {
2742
2742
  type: String,
@@ -2753,7 +2753,7 @@ const P1 = {
2753
2753
  texture: void 0,
2754
2754
  rampColor: void 0,
2755
2755
  aPositionBuffer: void 0,
2756
- webgl: new T0(),
2756
+ webgl: new C0(),
2757
2757
  etime: void 0,
2758
2758
  wrapper: void 0,
2759
2759
  animation: void 0,
@@ -2807,8 +2807,8 @@ const P1 = {
2807
2807
  }
2808
2808
  },
2809
2809
  handleClear() {
2810
- var z, M, b, O, p, o, e, t;
2811
- (z = this.viewport) == null || z.toggle(!1), (M = this.viewport) == null || M.toggleParticle(!1), this.context = void 0, this.particleContext = void 0, this.etime = void 0, this.initial = !0, (O = (b = this.viewport) == null ? void 0 : b.map) == null || O.off("resize", this.handleResize), (o = (p = this.viewport) == null ? void 0 : p.map) == null || o.off("movestart", this.handlePause), (t = (e = this.viewport) == null ? void 0 : e.map) == null || t.off("moveend", this.handlePlay), this.handlePause();
2810
+ var z, M, b, O, p, o, A, t;
2811
+ (z = this.viewport) == null || z.toggle(!1), (M = this.viewport) == null || M.toggleParticle(!1), this.context = void 0, this.particleContext = void 0, this.etime = void 0, this.initial = !0, (O = (b = this.viewport) == null ? void 0 : b.map) == null || O.off("resize", this.handleResize), (o = (p = this.viewport) == null ? void 0 : p.map) == null || o.off("movestart", this.handlePause), (t = (A = this.viewport) == null ? void 0 : A.map) == null || t.off("moveend", this.handlePlay), this.handlePause();
2812
2812
  },
2813
2813
  handleSetup() {
2814
2814
  if (!this.context) {
@@ -2843,7 +2843,7 @@ const P1 = {
2843
2843
  [1, "rgb(91, 136, 161)"]
2844
2844
  ];
2845
2845
  this.rampColor = this.webgl.setup(this.context, z);
2846
- const { program: M, aPositionBuffer: b } = this.webgl.bind(this.context, e0.vertexSchema, e0.uvFragmentSchema);
2846
+ const { program: M, aPositionBuffer: b } = this.webgl.bind(this.context, A0.vertexSchema, A0.uvFragmentSchema);
2847
2847
  this.program = M, this.aPositionBuffer = b;
2848
2848
  }
2849
2849
  this.handleParticleSetup();
@@ -2891,10 +2891,10 @@ const P1 = {
2891
2891
  });
2892
2892
  }
2893
2893
  }
2894
- }, k1 = { key: 0 };
2895
- function D1(z, M, b, O, p, o) {
2896
- var e;
2897
- return (e = b.factor) != null && e.active ? (l(), f("div", k1, [
2894
+ }, S1 = { key: 0 };
2895
+ function k1(z, M, b, O, p, o) {
2896
+ var A;
2897
+ return (A = b.factor) != null && A.active ? (W(), l("div", S1, [
2898
2898
  c("div", {
2899
2899
  class: "legend-bars flex-center",
2900
2900
  style: o0([{ position: "absolute" }, { right: p.right + "px", bottom: b.bottom }])
@@ -2908,10 +2908,10 @@ function D1(z, M, b, O, p, o) {
2908
2908
  c("span", null, "40", -1),
2909
2909
  c("span", null, "60", -1)
2910
2910
  ]), 4)
2911
- ])) : F("", !0);
2911
+ ])) : _("", !0);
2912
2912
  }
2913
- const I1 = /* @__PURE__ */ I(P1, [["render", D1], ["__scopeId", "data-v-14070127"]]);
2914
- const j1 = {
2913
+ const Q1 = /* @__PURE__ */ k(P1, [["render", k1], ["__scopeId", "data-v-14070127"]]);
2914
+ const H1 = {
2915
2915
  name: "IdmCurrent",
2916
2916
  props: {
2917
2917
  map: {
@@ -2949,7 +2949,7 @@ const j1 = {
2949
2949
  directionLayer: "current-direction-layer",
2950
2950
  speedLayer: "current-speed-layer",
2951
2951
  speedLabelLayer: "current-speed-label-layer",
2952
- empty: w.featureCollection([]),
2952
+ empty: C.featureCollection([]),
2953
2953
  right: 10,
2954
2954
  bottom: 95
2955
2955
  };
@@ -3064,12 +3064,12 @@ const j1 = {
3064
3064
  this.map.getLayer(this.speedLayer) && this.map.removeLayer(this.speedLayer), this.map.getLayer(this.speedLabelLayer) && this.map.removeLayer(this.speedLabelLayer), this.map.getLayer(this.directionLayer) && this.map.removeLayer(this.directionLayer), this.map.getSource(this.source) && this.map.removeSource(this.source);
3065
3065
  }
3066
3066
  }
3067
- }, U1 = { key: 0 };
3068
- function F1(z, M, b, O, p, o) {
3069
- var e;
3070
- return (e = b.current) != null && e.active ? (l(), f("div", U1)) : F("", !0);
3067
+ }, _1 = { key: 0 };
3068
+ function j1(z, M, b, O, p, o) {
3069
+ var A;
3070
+ return (A = b.current) != null && A.active ? (W(), l("div", _1)) : _("", !0);
3071
3071
  }
3072
- const H1 = /* @__PURE__ */ I(j1, [["render", F1]]);
3072
+ const F1 = /* @__PURE__ */ k(H1, [["render", j1]]);
3073
3073
  const G1 = {
3074
3074
  name: "IdmCurrentParticle",
3075
3075
  props: {
@@ -3077,7 +3077,7 @@ const G1 = {
3077
3077
  type: Object
3078
3078
  },
3079
3079
  viewport: {
3080
- type: E0
3080
+ type: D0
3081
3081
  },
3082
3082
  bottom: {
3083
3083
  type: String,
@@ -3094,7 +3094,7 @@ const G1 = {
3094
3094
  texture: void 0,
3095
3095
  rampColor: void 0,
3096
3096
  aPositionBuffer: void 0,
3097
- webgl: new T0(),
3097
+ webgl: new C0(),
3098
3098
  etime: void 0,
3099
3099
  wrapper: void 0,
3100
3100
  animation: void 0,
@@ -3148,8 +3148,8 @@ const G1 = {
3148
3148
  }
3149
3149
  },
3150
3150
  handleClear() {
3151
- var z, M, b, O, p, o, e, t;
3152
- (z = this.viewport) == null || z.toggle(!1), (M = this.viewport) == null || M.toggleParticle(!1), this.context = void 0, this.particleContext = void 0, this.etime = void 0, this.initial = !0, (O = (b = this.viewport) == null ? void 0 : b.map) == null || O.off("resize", this.handleResize), (o = (p = this.viewport) == null ? void 0 : p.map) == null || o.off("movestart", this.handlePause), (t = (e = this.viewport) == null ? void 0 : e.map) == null || t.off("moveend", this.handlePlay), this.handlePause();
3151
+ var z, M, b, O, p, o, A, t;
3152
+ (z = this.viewport) == null || z.toggle(!1), (M = this.viewport) == null || M.toggleParticle(!1), this.context = void 0, this.particleContext = void 0, this.etime = void 0, this.initial = !0, (O = (b = this.viewport) == null ? void 0 : b.map) == null || O.off("resize", this.handleResize), (o = (p = this.viewport) == null ? void 0 : p.map) == null || o.off("movestart", this.handlePause), (t = (A = this.viewport) == null ? void 0 : A.map) == null || t.off("moveend", this.handlePlay), this.handlePause();
3153
3153
  },
3154
3154
  handleSetup() {
3155
3155
  if (!this.context) {
@@ -3175,7 +3175,7 @@ const G1 = {
3175
3175
  [1, "rgb(195,194,194)"]
3176
3176
  ];
3177
3177
  this.rampColor = this.webgl.setup(this.context, z);
3178
- const { program: M, aPositionBuffer: b } = this.webgl.bind(this.context, e0.vertexSchema, e0.uvFragmentSchema);
3178
+ const { program: M, aPositionBuffer: b } = this.webgl.bind(this.context, A0.vertexSchema, A0.uvFragmentSchema);
3179
3179
  this.program = M, this.aPositionBuffer = b;
3180
3180
  }
3181
3181
  this.handleParticleSetup();
@@ -3227,10 +3227,10 @@ const G1 = {
3227
3227
  });
3228
3228
  }
3229
3229
  }
3230
- }, V1 = { key: 0 };
3230
+ }, U1 = { key: 0 };
3231
3231
  function K1(z, M, b, O, p, o) {
3232
- var e;
3233
- return (e = b.factor) != null && e.active ? (l(), f("div", V1, [
3232
+ var A;
3233
+ return (A = b.factor) != null && A.active ? (W(), l("div", U1, [
3234
3234
  c("div", {
3235
3235
  class: "legend-bars flex-center",
3236
3236
  style: o0([{ position: "absolute" }, { right: p.right + "px", bottom: b.bottom }])
@@ -3243,9 +3243,9 @@ function K1(z, M, b, O, p, o) {
3243
3243
  c("span", null, "2", -1),
3244
3244
  c("span", null, "3.2", -1)
3245
3245
  ]), 4)
3246
- ])) : F("", !0);
3246
+ ])) : _("", !0);
3247
3247
  }
3248
- const J1 = /* @__PURE__ */ I(G1, [["render", K1], ["__scopeId", "data-v-163d1f9a"]]), Q1 = {
3248
+ const J1 = /* @__PURE__ */ k(G1, [["render", K1], ["__scopeId", "data-v-163d1f9a"]]), Y1 = {
3249
3249
  name: "IdmSigWave",
3250
3250
  props: {
3251
3251
  map: {
@@ -3266,7 +3266,7 @@ const J1 = /* @__PURE__ */ I(G1, [["render", K1], ["__scopeId", "data-v-163d1f9a
3266
3266
  source: "sig-wave-source",
3267
3267
  heightLayer: "sig-wave-height-layer",
3268
3268
  heightLabelLayer: "sig-wave-height-label-layer",
3269
- empty: w.featureCollection([])
3269
+ empty: C.featureCollection([])
3270
3270
  };
3271
3271
  },
3272
3272
  watch: {
@@ -3364,10 +3364,10 @@ const J1 = /* @__PURE__ */ I(G1, [["render", K1], ["__scopeId", "data-v-163d1f9a
3364
3364
  }
3365
3365
  }
3366
3366
  };
3367
- function $1(z, M, b, O, p, o) {
3368
- return l(), f("div");
3367
+ function V1(z, M, b, O, p, o) {
3368
+ return W(), l("div");
3369
3369
  }
3370
- const Z1 = /* @__PURE__ */ I(Q1, [["render", $1]]), Y1 = {
3370
+ const Z1 = /* @__PURE__ */ k(Y1, [["render", V1]]), $1 = {
3371
3371
  name: "IdmSwell",
3372
3372
  props: {
3373
3373
  map: {
@@ -3389,7 +3389,7 @@ const Z1 = /* @__PURE__ */ I(Q1, [["render", $1]]), Y1 = {
3389
3389
  directionLayer: "swell-direction-layer",
3390
3390
  heightLayer: "swell-height-layer",
3391
3391
  heightLabelLayer: "swell-height-label-layer",
3392
- empty: w.featureCollection([])
3392
+ empty: C.featureCollection([])
3393
3393
  };
3394
3394
  },
3395
3395
  watch: {
@@ -3523,9 +3523,9 @@ const Z1 = /* @__PURE__ */ I(Q1, [["render", $1]]), Y1 = {
3523
3523
  }
3524
3524
  };
3525
3525
  function M2(z, M, b, O, p, o) {
3526
- return l(), f("div");
3526
+ return W(), l("div");
3527
3527
  }
3528
- const b2 = /* @__PURE__ */ I(Y1, [["render", M2]]), z2 = {
3528
+ const b2 = /* @__PURE__ */ k($1, [["render", M2]]), z2 = {
3529
3529
  name: "IdmPrmsl",
3530
3530
  props: {
3531
3531
  map: {
@@ -3550,7 +3550,7 @@ const b2 = /* @__PURE__ */ I(Y1, [["render", M2]]), z2 = {
3550
3550
  layer: "prmsl-layer",
3551
3551
  labelLayer: "prmsl-label-layer",
3552
3552
  pointLabelLayer: "prmsl-point-label-layer",
3553
- empty: w.featureCollection([])
3553
+ empty: C.featureCollection([])
3554
3554
  };
3555
3555
  },
3556
3556
  watch: {
@@ -3580,8 +3580,8 @@ const b2 = /* @__PURE__ */ I(Y1, [["render", M2]]), z2 = {
3580
3580
  }, 500);
3581
3581
  else if (this.prmsl) {
3582
3582
  const O = (/* @__PURE__ */ new Date()).valueOf();
3583
- let p = 0, o = 0, e = this.empty;
3584
- this.prmsl.active && (e = this.prmsl.data), (z = this.map) != null && z.getSource(this.source) ? ((M = this.map) == null || M.getSource(this.source).setData(e), o = (/* @__PURE__ */ new Date()).valueOf() - (O + p), console.log("[prmsl] update elapsed: ", o, ", total: ", p += o)) : (this.map.addSource(this.source, { type: "geojson", data: e }), this.map.addLayer(
3583
+ let p = 0, o = 0, A = this.empty;
3584
+ this.prmsl.active && (A = this.prmsl.data), (z = this.map) != null && z.getSource(this.source) ? ((M = this.map) == null || M.getSource(this.source).setData(A), o = (/* @__PURE__ */ new Date()).valueOf() - (O + p), console.log("[prmsl] update elapsed: ", o, ", total: ", p += o)) : (this.map.addSource(this.source, { type: "geojson", data: A }), this.map.addLayer(
3585
3585
  {
3586
3586
  id: this.layer,
3587
3587
  type: "line",
@@ -3663,9 +3663,9 @@ const b2 = /* @__PURE__ */ I(Y1, [["render", M2]]), z2 = {
3663
3663
  }
3664
3664
  };
3665
3665
  function p2(z, M, b, O, p, o) {
3666
- return l(), f("div");
3666
+ return W(), l("div");
3667
3667
  }
3668
- const O2 = /* @__PURE__ */ I(z2, [["render", p2]]), o2 = {
3668
+ const O2 = /* @__PURE__ */ k(z2, [["render", p2]]), o2 = {
3669
3669
  name: "IdmIceberg",
3670
3670
  props: {
3671
3671
  map: {
@@ -3682,7 +3682,7 @@ const O2 = /* @__PURE__ */ I(z2, [["render", p2]]), o2 = {
3682
3682
  return {
3683
3683
  source: "iceberg-source",
3684
3684
  layer: "iceberg-layer",
3685
- empty: w.featureCollection([])
3685
+ empty: C.featureCollection([])
3686
3686
  };
3687
3687
  },
3688
3688
  watch: {
@@ -3723,10 +3723,10 @@ const O2 = /* @__PURE__ */ I(z2, [["render", p2]]), o2 = {
3723
3723
  }
3724
3724
  };
3725
3725
  function c2(z, M, b, O, p, o) {
3726
- return l(), f("div");
3726
+ return W(), l("div");
3727
3727
  }
3728
- const e2 = /* @__PURE__ */ I(o2, [["render", c2]]);
3729
- const A2 = {
3728
+ const A2 = /* @__PURE__ */ k(o2, [["render", c2]]);
3729
+ const e2 = {
3730
3730
  name: "IdmTropicals",
3731
3731
  props: {
3732
3732
  map: {
@@ -3746,7 +3746,7 @@ const A2 = {
3746
3746
  emits: ["tropical", "tropicalProbability"],
3747
3747
  data() {
3748
3748
  return {
3749
- helper: S0,
3749
+ helper: I0,
3750
3750
  source: "tropicals-source",
3751
3751
  clusterSource: "tropicals-cluster-source",
3752
3752
  historyLayer: "tropicals-history-layer",
@@ -3764,9 +3764,9 @@ const A2 = {
3764
3764
  showTropicals: !1,
3765
3765
  activeTropicals: void 0,
3766
3766
  activeTropicalsMarker: void 0,
3767
- empty: w.featureCollection([]),
3767
+ empty: C.featureCollection([]),
3768
3768
  circleSource: "circle-source",
3769
- circleSourceData: w.featureCollection([]),
3769
+ circleSourceData: C.featureCollection([]),
3770
3770
  circleLayer: "tropical-circle-layer"
3771
3771
  };
3772
3772
  },
@@ -3774,7 +3774,7 @@ const A2 = {
3774
3774
  computeTime() {
3775
3775
  return function(z) {
3776
3776
  if (z) {
3777
- const M = H(z).utc().utcOffset(this.timeZone), b = this.timeZone < 0 ? this.timeZone : "+" + this.timeZone;
3777
+ const M = F(z).utc().utcOffset(this.timeZone), b = this.timeZone < 0 ? this.timeZone : "+" + this.timeZone;
3778
3778
  return `${M.format("MMM-DD,HHmm")}[ UTC ${b} ] ( ${M == null ? void 0 : M.fromNow()} )`;
3779
3779
  }
3780
3780
  return "-";
@@ -3811,29 +3811,29 @@ const A2 = {
3811
3811
  methods: {
3812
3812
  handleRefresh() {
3813
3813
  var O, p;
3814
- const z = ((p = (O = this.tropicals) == null ? void 0 : O.data) == null ? void 0 : p.features) || [], M = H().utc().hour(), b = [];
3814
+ const z = ((p = (O = this.tropicals) == null ? void 0 : O.data) == null ? void 0 : p.features) || [], M = F().utc().hour(), b = [];
3815
3815
  z.forEach((o) => {
3816
- var e, t, q;
3817
- (e = o.properties) != null && e.name && !b.includes((t = o.properties) == null ? void 0 : t.name) && b.push((q = o.properties) == null ? void 0 : q.name);
3816
+ var A, t, q;
3817
+ (A = o.properties) != null && A.name && !b.includes((t = o.properties) == null ? void 0 : t.name) && b.push((q = o.properties) == null ? void 0 : q.name);
3818
3818
  }), b.forEach((o) => {
3819
- var r;
3820
- let e = 0, t;
3819
+ var n;
3820
+ let A = 0, t;
3821
3821
  const q = z.filter((a) => {
3822
- var i, L;
3823
- return ((L = (i = a.properties) == null ? void 0 : i.category) == null ? void 0 : L.split("-")[0]) === o;
3822
+ var r, L;
3823
+ return ((L = (r = a.properties) == null ? void 0 : r.category) == null ? void 0 : L.split("-")[0]) === o;
3824
3824
  });
3825
- (r = q.filter((a) => {
3826
- var i, L;
3827
- return ((i = a.geometry) == null ? void 0 : i.type) === "LineString" && ((L = a.properties) == null ? void 0 : L.type) === "forecast";
3828
- })[0]) == null || r.properties.model, q.forEach((a, i) => {
3829
- var L, n, h, u, d, m;
3830
- ((L = a.geometry) == null ? void 0 : L.type) === "Point" && ((n = a.properties) == null ? void 0 : n.type) === "history" && (e = i, t = t === void 0 ? i : t), ((h = a.geometry) == null ? void 0 : h.type) === "Point" && ((u = a.properties) == null ? void 0 : u.type) === "forecast" && t === void 0 && (t = i), ((d = a.geometry) == null ? void 0 : d.type) === "LineString" && ((m = a.properties) == null || m.type);
3831
- }), q.map((a, i) => {
3832
- var L, n, h, u, d, m, R;
3833
- if (((L = a.geometry) == null ? void 0 : L.type) === "LineString" && ((n = a.properties) == null || n.type), ((h = a.geometry) == null ? void 0 : h.type) === "Point" && ((u = a.properties) == null ? void 0 : u.type) === "forecast" && (a.properties.name = o, a.properties.format = H(a.properties.date).utcOffset(this.timeZone).format(`MMM-DD,HHmm [(utc ${this.computeTimezone})]`)), ((d = a.geometry) == null ? void 0 : d.type) === "Point" && ((m = a.properties) == null ? void 0 : m.type) === "history") {
3834
- a.properties.format = H(a.properties.date).utcOffset(this.timeZone).format(`MMM-DD,HHmm [(utc ${this.computeTimezone})]`);
3835
- const X = H((R = a.properties) == null ? void 0 : R.date).utc().format("HHmm") === H().utc().hour(Math.floor(M / 6) * 6).minute("00").format("HHmm");
3836
- a.properties.showHistoryLabel = X || i === e, a.properties.showNameLabel = i === e, a.properties.name = o;
3825
+ (n = q.filter((a) => {
3826
+ var r, L;
3827
+ return ((r = a.geometry) == null ? void 0 : r.type) === "LineString" && ((L = a.properties) == null ? void 0 : L.type) === "forecast";
3828
+ })[0]) == null || n.properties.model, q.forEach((a, r) => {
3829
+ var L, d, h, u, s, m;
3830
+ ((L = a.geometry) == null ? void 0 : L.type) === "Point" && ((d = a.properties) == null ? void 0 : d.type) === "history" && (A = r, t = t === void 0 ? r : t), ((h = a.geometry) == null ? void 0 : h.type) === "Point" && ((u = a.properties) == null ? void 0 : u.type) === "forecast" && t === void 0 && (t = r), ((s = a.geometry) == null ? void 0 : s.type) === "LineString" && ((m = a.properties) == null || m.type);
3831
+ }), q.map((a, r) => {
3832
+ var L, d, h, u, s, m, R;
3833
+ if (((L = a.geometry) == null ? void 0 : L.type) === "LineString" && ((d = a.properties) == null || d.type), ((h = a.geometry) == null ? void 0 : h.type) === "Point" && ((u = a.properties) == null ? void 0 : u.type) === "forecast" && (a.properties.name = o, a.properties.format = F(a.properties.date).utcOffset(this.timeZone).format(`MMM-DD,HHmm [(utc ${this.computeTimezone})]`)), ((s = a.geometry) == null ? void 0 : s.type) === "Point" && ((m = a.properties) == null ? void 0 : m.type) === "history") {
3834
+ a.properties.format = F(a.properties.date).utcOffset(this.timeZone).format(`MMM-DD,HHmm [(utc ${this.computeTimezone})]`);
3835
+ const y = F((R = a.properties) == null ? void 0 : R.date).utc().format("HHmm") === F().utc().hour(Math.floor(M / 6) * 6).minute("00").format("HHmm");
3836
+ a.properties.showHistoryLabel = y || r === A, a.properties.showNameLabel = r === A, a.properties.name = o;
3837
3837
  }
3838
3838
  return a;
3839
3839
  });
@@ -3870,16 +3870,16 @@ const A2 = {
3870
3870
  ));
3871
3871
  },
3872
3872
  handleRender() {
3873
- var z, M, b, O, p, o, e, t, q, r;
3873
+ var z, M, b, O, p, o, A, t, q, n;
3874
3874
  if (!this.map)
3875
3875
  setTimeout(() => {
3876
3876
  this.handleRender();
3877
3877
  }, 500);
3878
3878
  else {
3879
3879
  if (this.tropicals) {
3880
- const i = (/* @__PURE__ */ new Date()).valueOf();
3881
- let L = 0, n = 0;
3882
- (z = this.map) != null && z.getSource(this.source) ? ((b = this.map) == null || b.getSource(this.source).setData((M = this.tropicals) != null && M.active ? this.tropicals.data : this.empty), n = (/* @__PURE__ */ new Date()).valueOf() - (i + L), console.log("[tropicals] update elapsed: ", n, ", total: ", L += n)) : (this.map.addSource(this.source, {
3880
+ const r = (/* @__PURE__ */ new Date()).valueOf();
3881
+ let L = 0, d = 0;
3882
+ (z = this.map) != null && z.getSource(this.source) ? ((b = this.map) == null || b.getSource(this.source).setData((M = this.tropicals) != null && M.active ? this.tropicals.data : this.empty), d = (/* @__PURE__ */ new Date()).valueOf() - (r + L), console.log("[tropicals] update elapsed: ", d, ", total: ", L += d)) : (this.map.addSource(this.source, {
3883
3883
  type: "geojson",
3884
3884
  data: (O = this.tropicals) != null && O.active ? (p = this.tropicals) == null ? void 0 : p.data : this.empty
3885
3885
  }), this.map.addLayer({
@@ -3976,9 +3976,9 @@ const A2 = {
3976
3976
  ],
3977
3977
  "text-halo-width": 4
3978
3978
  }
3979
- }), n = (/* @__PURE__ */ new Date()).valueOf() - (i + L), console.log("[tropical] add elapsed: ", n, ", total: ", L += n)), (o = this.map) != null && o.getSource(this.clusterSource) ? ((t = this.map) == null || t.getSource(this.clusterSource).setData((e = this.tropicals) != null && e.active ? this.tropicals.data : this.empty), n = (/* @__PURE__ */ new Date()).valueOf() - (i + L), console.log("[tropical] update elapsed: ", n, ", total: ", L += n)) : (this.map.addSource(this.clusterSource, {
3979
+ }), d = (/* @__PURE__ */ new Date()).valueOf() - (r + L), console.log("[tropical] add elapsed: ", d, ", total: ", L += d)), (o = this.map) != null && o.getSource(this.clusterSource) ? ((t = this.map) == null || t.getSource(this.clusterSource).setData((A = this.tropicals) != null && A.active ? this.tropicals.data : this.empty), d = (/* @__PURE__ */ new Date()).valueOf() - (r + L), console.log("[tropical] update elapsed: ", d, ", total: ", L += d)) : (this.map.addSource(this.clusterSource, {
3980
3980
  type: "geojson",
3981
- data: (q = this.tropicals) != null && q.active ? (r = this.tropicals) == null ? void 0 : r.data : this.empty
3981
+ data: (q = this.tropicals) != null && q.active ? (n = this.tropicals) == null ? void 0 : n.data : this.empty
3982
3982
  // cluster: true,
3983
3983
  // clusterRadius: 10, // 聚合半径
3984
3984
  }), this.map.addLayer({
@@ -4093,11 +4093,11 @@ const A2 = {
4093
4093
  "text-halo-color": "#0033ff",
4094
4094
  "text-halo-width": 4
4095
4095
  }
4096
- }), n = (/* @__PURE__ */ new Date()).valueOf() - (i + L), console.log("[tropical] add elapsed: ", n, ", total: ", L += n));
4096
+ }), d = (/* @__PURE__ */ new Date()).valueOf() - (r + L), console.log("[tropical] add elapsed: ", d, ", total: ", L += d));
4097
4097
  }
4098
4098
  this.handleDrawCircle();
4099
- const a = I0.interpolate(this.tropicals, 1);
4100
- this.interpolateData = JSON.parse(JSON.stringify(a)), this.interpolateData.filter((i) => i.properties.name === "kristy" && i.properties.model === "ecmwf"), this.handleDateChange();
4099
+ const a = Q0.interpolate(this.tropicals, 1);
4100
+ this.interpolateData = JSON.parse(JSON.stringify(a)), this.interpolateData.filter((r) => r.properties.name === "kristy" && r.properties.model === "ecmwf"), this.handleDateChange();
4101
4101
  }
4102
4102
  },
4103
4103
  handleClear() {
@@ -4105,14 +4105,14 @@ const A2 = {
4105
4105
  this.map && (this.map.getLayer(this.historyLayer) && this.map.removeLayer(this.historyLayer), this.map.getLayer(this.forecastLayer) && this.map.removeLayer(this.forecastLayer), this.map.getLayer(this.forecastModelLayer) && this.map.removeLayer(this.forecastModelLayer), this.map.getLayer(this.forecastNameLayer) && this.map.removeLayer(this.forecastNameLayer), this.map.getLayer(this.pointCircleLayer) && this.map.removeLayer(this.pointCircleLayer), this.map.getLayer(this.pointCircleLayer + "-border") && this.map.removeLayer(this.pointCircleLayer + "-border"), this.map.getLayer(this.pointLabelLayer) && this.map.removeLayer(this.pointLabelLayer), this.map.getLayer(this.historyPointCircleLayer) && this.map.removeLayer(this.historyPointCircleLayer), this.map.getLayer(this.historyPointCircleLayer + "-border") && this.map.removeLayer(this.historyPointCircleLayer + "-border"), this.map.getLayer(this.historyPointCircleLayer + "-inner") && this.map.removeLayer(this.historyPointCircleLayer + "-inner"), this.map.getLayer(this.historyPointLabelLayer) && this.map.removeLayer(this.historyPointLabelLayer), this.map.getLayer(this.interpolateLineLayer) && this.map.removeLayer(this.interpolateLineLayer), (z = this.interpolateMarkers) == null || z.forEach((M) => M == null ? void 0 : M.remove()), this.map.getSource(this.source) && this.map.removeSource(this.source), this.map.getSource(this.clusterSource) && this.map.removeSource(this.clusterSource), this.map.getSource(this.interpolateSource) && this.map.removeSource(this.interpolateSource), this.map.getLayer(this.circleLayer) && this.map.removeLayer(this.circleLayer), this.map.getSource(this.circleSource) && this.map.removeSource(this.circleSource));
4106
4106
  },
4107
4107
  handleDateChange() {
4108
- var z, M, b, O, p, o, e, t, q, r, a, i, L, n, h, u, d, m, R, X, x, g, U, y, C, Z, Y, i0, L0, R0, r0, f0, O0, h0, m0, d0;
4109
- if ((z = this.interpolateMarkers) == null || z.forEach((n0) => n0 == null ? void 0 : n0.remove()), this.circleSourceData.features = [], (M = this.interpolateData) != null && M.length && this.tropicals.active) {
4110
- const n0 = H(this.date).utc().set({ minute: 0, second: 0, millisecond: 0 }), W0 = this.interpolateData.filter((k) => k.properties.date === n0.format() && !k.properties.disabled), N0 = this.handleComputePolygons(W0), s0 = w.featureCollection([...W0]);
4111
- N0.forEach((k) => {
4112
- s0.features.push(k);
4113
- }), (b = this.map) != null && b.getSource(this.interpolateSource) ? (O = this.map) == null || O.getSource(this.interpolateSource).setData(s0) : ((p = this.map) == null || p.addSource(this.interpolateSource, {
4108
+ var z, M, b, O, p, o, A, t, q, n, a, r, L, d, h, u, s, m, R, y, T, N, H, K, V, $, g, E, n0, d0, i0, L0, O0, h0, m0, s0;
4109
+ if ((z = this.interpolateMarkers) == null || z.forEach((r0) => r0 == null ? void 0 : r0.remove()), this.circleSourceData.features = [], (M = this.interpolateData) != null && M.length && this.tropicals.active) {
4110
+ const r0 = F(this.date).utc().set({ minute: 0, second: 0, millisecond: 0 }), W0 = this.interpolateData.filter((P) => P.properties.date === r0.format() && !P.properties.disabled), B0 = this.handleComputePolygons(W0), l0 = C.featureCollection([...W0]);
4111
+ B0.forEach((P) => {
4112
+ l0.features.push(P);
4113
+ }), (b = this.map) != null && b.getSource(this.interpolateSource) ? (O = this.map) == null || O.getSource(this.interpolateSource).setData(l0) : ((p = this.map) == null || p.addSource(this.interpolateSource, {
4114
4114
  type: "geojson",
4115
- data: s0
4115
+ data: l0
4116
4116
  }), (o = this.map) == null || o.addLayer({
4117
4117
  id: this.interpolateLineLayer,
4118
4118
  type: "line",
@@ -4124,10 +4124,10 @@ const A2 = {
4124
4124
  "line-width": 1
4125
4125
  }
4126
4126
  })), this.interpolateMarkers = [];
4127
- for (const k of W0)
4128
- if (!k.properties.disabled) {
4127
+ for (const P of W0)
4128
+ if (!P.properties.disabled) {
4129
4129
  let z0 = "#f44336";
4130
- ((t = (e = k.properties) == null ? void 0 : e.wind) == null ? void 0 : t.spd) < 17.2 || !((r = (q = k.properties) == null ? void 0 : q.wind) != null && r.spd) ? z0 = "#03f869" : ((i = (a = k.properties) == null ? void 0 : a.wind) == null ? void 0 : i.spd) >= 17.2 && ((n = (L = k.properties) == null ? void 0 : L.wind) == null ? void 0 : n.spd) < 24.5 ? z0 = "#f2f202" : ((u = (h = k.properties) == null ? void 0 : h.wind) == null ? void 0 : u.spd) >= 24.5 && ((m = (d = k.properties) == null ? void 0 : d.wind) == null ? void 0 : m.spd) < 32.7 ? z0 = "#ff9100" : ((X = (R = k.properties) == null ? void 0 : R.wind) == null ? void 0 : X.spd) >= 32.7 && ((g = (x = k.properties) == null ? void 0 : x.wind) == null ? void 0 : g.spd) < 41.5 ? z0 = "#f44336" : ((y = (U = k.properties) == null ? void 0 : U.wind) == null ? void 0 : y.spd) >= 41.5 && ((Z = (C = k.properties) == null ? void 0 : C.wind) == null ? void 0 : Z.spd) < 51 ? z0 = "#f903d0" : ((i0 = (Y = k.properties) == null ? void 0 : Y.wind) == null ? void 0 : i0.spd) >= 51 ? z0 = "#8702f9" : z0 = "#f44336";
4130
+ ((t = (A = P.properties) == null ? void 0 : A.wind) == null ? void 0 : t.spd) < 17.2 || !((n = (q = P.properties) == null ? void 0 : q.wind) != null && n.spd) ? z0 = "#03f869" : ((r = (a = P.properties) == null ? void 0 : a.wind) == null ? void 0 : r.spd) >= 17.2 && ((d = (L = P.properties) == null ? void 0 : L.wind) == null ? void 0 : d.spd) < 24.5 ? z0 = "#f2f202" : ((u = (h = P.properties) == null ? void 0 : h.wind) == null ? void 0 : u.spd) >= 24.5 && ((m = (s = P.properties) == null ? void 0 : s.wind) == null ? void 0 : m.spd) < 32.7 ? z0 = "#ff9100" : ((y = (R = P.properties) == null ? void 0 : R.wind) == null ? void 0 : y.spd) >= 32.7 && ((N = (T = P.properties) == null ? void 0 : T.wind) == null ? void 0 : N.spd) < 41.5 ? z0 = "#f44336" : ((K = (H = P.properties) == null ? void 0 : H.wind) == null ? void 0 : K.spd) >= 41.5 && (($ = (V = P.properties) == null ? void 0 : V.wind) == null ? void 0 : $.spd) < 51 ? z0 = "#f903d0" : ((E = (g = P.properties) == null ? void 0 : g.wind) == null ? void 0 : E.spd) >= 51 ? z0 = "#8702f9" : z0 = "#f44336";
4131
4131
  const t0 = `<svg t="1719918955501"
4132
4132
  class="icon" viewBox="0 0 1024 1024" xmlns="http://www.w3.org/2000/svg" p-id="18382"
4133
4133
  xmlns:xlink="http://www.w3.org/1999/xlink" width="200" height="200">
@@ -4142,60 +4142,60 @@ const A2 = {
4142
4142
  <path
4143
4143
  d="M420.66666667 959.17a16.08 16.08 0 0 1-15.91-13.49A15.89 15.89 0 0 1 415.50666667 928c1.49-0.55 38.88-14.76 72.79-65.52A354.55 354.55 0 0 1 162.66666667 509.17a450.14 450.14 0 0 1 450.5-450.5 16.07 16.07 0 0 1 15.91 13.48 15.88 15.88 0 0 1-10.75 17.66c-1.58 0.58-39.13 14.9-73.07 65.95A354.22 354.22 0 0 1 871.66666667 509.17a16 16 0 0 1-0.52 4.05A450.14 450.14 0 0 1 420.66666667 959.17zM554.80666667 94.72C351.57666667 123.2 194.66666667 298.21 194.66666667 509.17c0 177.08 144.06 321.74 321.13 322.48a16 16 0 0 1 14.07 23.49c-16.11 30.42-34.27 52.37-50.85 68C682.25666667 894.63 839.16666667 719.63 839.16666667 508.67a15.94 15.94 0 0 1 0.47-3.86C837.30666667 329.33 693.82666667 187 517.80666667 186.67A16 16 0 0 1 503.66666667 163.21c16.21-30.69 34.47-52.79 51.14-68.49z"
4144
4144
  fill="#ffffff" p-id="18386"></path>
4145
- </svg>`, E = document.createElement("div");
4146
- E.className = "hurricane-hourly-marker", E.innerHTML = `<div class="${k.geometry.coordinates[1] >= 0 ? "center north" : "center south"}">${t0}</div>`;
4147
- const p0 = new g0.Marker(E).setLngLat(k.geometry.coordinates).addTo(this.map);
4148
- if (this.interpolateMarkers.push(p0), (L0 = k.properties) != null && L0.showCircle) {
4149
- const l0 = { radius: 100, coordinates: k.geometry.coordinates }, c0 = { radius: 200, coordinates: k.geometry.coordinates }, u0 = { radius: 500, coordinates: k.geometry.coordinates };
4150
- (R0 = this.circleSourceData) == null || R0.features.push(
4151
- w.circle(l0.coordinates, l0.radius, { steps: 100, units: "kilometers", properties: { type: "tropicalCircle" } })
4152
- ), (r0 = this.circleSourceData) == null || r0.features.push(
4153
- w.circle(c0.coordinates, c0.radius, { steps: 100, units: "kilometers", properties: { type: "tropicalCircle" } })
4154
- ), (f0 = this.circleSourceData) == null || f0.features.push(
4155
- w.circle(u0.coordinates, u0.radius, { steps: 100, units: "kilometers", properties: { type: "tropicalCircle" } })
4145
+ </svg>`, I = document.createElement("div");
4146
+ I.className = "hurricane-hourly-marker", I.innerHTML = `<div class="${P.geometry.coordinates[1] >= 0 ? "center north" : "center south"}">${t0}</div>`;
4147
+ const p0 = new w0.Marker(I).setLngLat(P.geometry.coordinates).addTo(this.map);
4148
+ if (this.interpolateMarkers.push(p0), (n0 = P.properties) != null && n0.showCircle) {
4149
+ const f0 = { radius: 100, coordinates: P.geometry.coordinates }, u0 = { radius: 200, coordinates: P.geometry.coordinates }, R0 = { radius: 500, coordinates: P.geometry.coordinates };
4150
+ (d0 = this.circleSourceData) == null || d0.features.push(
4151
+ C.circle(f0.coordinates, f0.radius, { steps: 100, units: "kilometers", properties: { type: "tropicalCircle" } })
4152
+ ), (i0 = this.circleSourceData) == null || i0.features.push(
4153
+ C.circle(u0.coordinates, u0.radius, { steps: 100, units: "kilometers", properties: { type: "tropicalCircle" } })
4154
+ ), (L0 = this.circleSourceData) == null || L0.features.push(
4155
+ C.circle(R0.coordinates, R0.radius, { steps: 100, units: "kilometers", properties: { type: "tropicalCircle" } })
4156
4156
  );
4157
4157
  }
4158
4158
  (h0 = (O0 = this.map) == null ? void 0 : O0.getSource(this.circleSource)) == null || h0.setData(this.circleSourceData);
4159
4159
  }
4160
4160
  } else
4161
- (m0 = this.map) != null && m0.getSource(this.interpolateSource) && ((d0 = this.map) == null || d0.getSource(this.interpolateSource).setData(this.empty));
4161
+ (m0 = this.map) != null && m0.getSource(this.interpolateSource) && ((s0 = this.map) == null || s0.getSource(this.interpolateSource).setData(this.empty));
4162
4162
  },
4163
4163
  handleClick(z) {
4164
- var o, e, t, q, r, a, i, L;
4165
- const M = z.features[0], b = (e = (o = this.tropicals) == null ? void 0 : o.data) == null ? void 0 : e.features.filter(
4166
- (n) => {
4164
+ var o, A, t, q, n, a, r, L;
4165
+ const M = z.features[0], b = (A = (o = this.tropicals) == null ? void 0 : o.data) == null ? void 0 : A.features.filter(
4166
+ (d) => {
4167
4167
  var h;
4168
- return n.geometry.type === "LineString" && n.properties.type === "forecast" && n.properties.name === ((h = M == null ? void 0 : M.properties) == null ? void 0 : h.name);
4168
+ return d.geometry.type === "LineString" && d.properties.type === "forecast" && d.properties.name === ((h = M == null ? void 0 : M.properties) == null ? void 0 : h.name);
4169
4169
  }
4170
4170
  );
4171
- b.sort((n, h) => {
4172
- var u, d, m, R;
4173
- return ((u = n.properties) == null ? void 0 : u.model) === "cma" ? -1 : ((d = n.properties) == null ? void 0 : d.model) === "jma" ? ((m = h.properties) == null ? void 0 : m.model) === "cma" ? 1 : -1 : n.properties.model === "ecmwf" ? ["jma", "cma"].includes((R = h.properties) == null ? void 0 : R.model) ? 1 : -1 : 0;
4171
+ b.sort((d, h) => {
4172
+ var u, s, m, R;
4173
+ return ((u = d.properties) == null ? void 0 : u.model) === "cma" ? -1 : ((s = d.properties) == null ? void 0 : s.model) === "jma" ? ((m = h.properties) == null ? void 0 : m.model) === "cma" ? 1 : -1 : d.properties.model === "ecmwf" ? ["jma", "cma"].includes((R = h.properties) == null ? void 0 : R.model) ? 1 : -1 : 0;
4174
4174
  });
4175
4175
  const O = (q = (t = this.tropicals) == null ? void 0 : t.data) == null ? void 0 : q.features.filter(
4176
- (n) => {
4176
+ (d) => {
4177
4177
  var h;
4178
- return n.geometry.type === "LineString" && n.properties.type === "history" && n.properties.name === ((h = M == null ? void 0 : M.properties) == null ? void 0 : h.name);
4178
+ return d.geometry.type === "LineString" && d.properties.type === "history" && d.properties.name === ((h = M == null ? void 0 : M.properties) == null ? void 0 : h.name);
4179
4179
  }
4180
4180
  );
4181
4181
  this.activeTropicals = {
4182
- name: (r = M == null ? void 0 : M.properties) == null ? void 0 : r.name,
4183
- forecasts: b.map((n) => n.properties),
4182
+ name: (n = M == null ? void 0 : M.properties) == null ? void 0 : n.name,
4183
+ forecasts: b.map((d) => d.properties),
4184
4184
  history: (a = O[0]) == null ? void 0 : a.properties,
4185
- showCircle: (L = (i = b[0]) == null ? void 0 : i.properties) == null ? void 0 : L.showCircle
4185
+ showCircle: (L = (r = b[0]) == null ? void 0 : r.properties) == null ? void 0 : L.showCircle
4186
4186
  }, this.showTropicals = !0;
4187
4187
  const p = document.getElementById("active-tropical");
4188
- this.activeTropicalsMarker ? this.activeTropicalsMarker.setLngLat([z.lngLat.lng, z.lngLat.lat]) : this.activeTropicalsMarker = new g0.Marker(p).setLngLat([z.lngLat.lng, z.lngLat.lat]).setOffset([220, 0]).addTo(this.map);
4188
+ this.activeTropicalsMarker ? this.activeTropicalsMarker.setLngLat([z.lngLat.lng, z.lngLat.lat]) : this.activeTropicalsMarker = new w0.Marker(p).setLngLat([z.lngLat.lng, z.lngLat.lat]).setOffset([220, 0]).addTo(this.map);
4189
4189
  },
4190
4190
  handleForecastToggle(z) {
4191
- var O, p, o, e, t, q;
4191
+ var O, p, o, A, t, q;
4192
4192
  z.disabled = !z.disabled;
4193
4193
  const M = `${z.name}-${z.model}`, b = (p = (O = this.map) == null ? void 0 : O.getSource(this.source)._data) == null ? void 0 : p.features;
4194
- b.forEach((r) => {
4195
- r.properties.category === M && (r.properties.disabled = z.disabled);
4196
- }), this.interpolateData.forEach((r) => {
4197
- r.properties.category === M && (r.properties.disabled = z.disabled);
4198
- }), (e = (o = this.map) == null ? void 0 : o.getSource(this.source)) == null || e.setData(w.featureCollection(b)), (q = (t = this.map) == null ? void 0 : t.getSource(this.clusterSource)) == null || q.setData(w.featureCollection(b)), this.handleDateChange();
4194
+ b.forEach((n) => {
4195
+ n.properties.category === M && (n.properties.disabled = z.disabled);
4196
+ }), this.interpolateData.forEach((n) => {
4197
+ n.properties.category === M && (n.properties.disabled = z.disabled);
4198
+ }), (A = (o = this.map) == null ? void 0 : o.getSource(this.source)) == null || A.setData(C.featureCollection(b)), (q = (t = this.map) == null ? void 0 : t.getSource(this.clusterSource)) == null || q.setData(C.featureCollection(b)), this.handleDateChange();
4199
4199
  },
4200
4200
  handleStrikeProbability(z) {
4201
4201
  this.$emit("tropicalProbability", z);
@@ -4234,12 +4234,12 @@ const A2 = {
4234
4234
  nw: O.r7nw >= 0 ? O.r7nw : void 0
4235
4235
  }, o = this.handleComputeArc(b.geometry.coordinates, p, { ...b.properties, level: 7 });
4236
4236
  M.push(o);
4237
- const e = {
4237
+ const A = {
4238
4238
  ne: O.r10ne >= 0 ? O.r10ne : void 0,
4239
4239
  se: O.r10se >= 0 ? O.r10se : void 0,
4240
4240
  sw: O.r10sw >= 0 ? O.r10sw : void 0,
4241
4241
  nw: O.r10nw >= 0 ? O.r10nw : void 0
4242
- }, t = this.handleComputeArc(b.geometry.coordinates, e, { ...b.properties, level: 10 });
4242
+ }, t = this.handleComputeArc(b.geometry.coordinates, A, { ...b.properties, level: 10 });
4243
4243
  M.push(t);
4244
4244
  }
4245
4245
  return M;
@@ -4247,27 +4247,27 @@ const A2 = {
4247
4247
  handleComputeArc(z, M, b) {
4248
4248
  var o;
4249
4249
  const O = [];
4250
- for (const e in M) {
4251
- const t = M[e] ?? 0;
4250
+ for (const A in M) {
4251
+ const t = M[A] ?? 0;
4252
4252
  let q;
4253
- switch (e) {
4253
+ switch (A) {
4254
4254
  case "ne":
4255
- q = w.lineArc(z, t * 1.852, 0, 90, { steps: t > 0 ? 64 : 1 });
4255
+ q = C.lineArc(z, t * 1.852, 0, 90, { steps: t > 0 ? 64 : 1 });
4256
4256
  break;
4257
4257
  case "se":
4258
- q = w.lineArc(z, t * 1.852, 90, 180, { steps: t > 0 ? 64 : 1 });
4258
+ q = C.lineArc(z, t * 1.852, 90, 180, { steps: t > 0 ? 64 : 1 });
4259
4259
  break;
4260
4260
  case "sw":
4261
- q = w.lineArc(z, t * 1.852, 180, 270, { steps: t > 0 ? 64 : 1 });
4261
+ q = C.lineArc(z, t * 1.852, 180, 270, { steps: t > 0 ? 64 : 1 });
4262
4262
  break;
4263
4263
  case "nw":
4264
- q = w.lineArc(z, t * 1.852, 270, 360, { steps: t > 0 ? 64 : 1 });
4264
+ q = C.lineArc(z, t * 1.852, 270, 360, { steps: t > 0 ? 64 : 1 });
4265
4265
  break;
4266
4266
  }
4267
4267
  O.push(...(o = q == null ? void 0 : q.geometry) == null ? void 0 : o.coordinates);
4268
4268
  }
4269
- const p = w.lineString(O);
4270
- return w.lineToPolygon(p, { properties: b });
4269
+ const p = C.lineString(O);
4270
+ return C.lineToPolygon(p, { properties: b });
4271
4271
  }
4272
4272
  }
4273
4273
  }, t2 = {
@@ -4276,7 +4276,7 @@ const A2 = {
4276
4276
  }, a2 = { class: "header-box" }, q2 = { class: "main" }, i2 = { key: 0 }, r2 = { class: "sub" }, n2 = {
4277
4277
  id: "meteoBox",
4278
4278
  class: "main-box"
4279
- }, d2 = { class: "content" }, W2 = { class: "row" }, s2 = {
4279
+ }, d2 = { class: "content" }, s2 = { class: "row" }, W2 = {
4280
4280
  class: "col col-left",
4281
4281
  style: { "justify-content": "flex-start" }
4282
4282
  }, l2 = {
@@ -4287,49 +4287,49 @@ const A2 = {
4287
4287
  style: { "justify-content": "flex-start" }
4288
4288
  }, L2 = { class: "forecast-models" }, R2 = ["onClick"], h2 = { class: "more" };
4289
4289
  function m2(z, M, b, O, p, o) {
4290
- var e, t, q, r, a, i, L, n, h, u, d, m, R, X, x;
4291
- return X0((l(), f("div", t2, [
4290
+ var A, t, q, n, a, r, L, d, h, u, s, m, R, y, T;
4291
+ return y0((W(), l("div", t2, [
4292
4292
  c("div", a2, [
4293
4293
  c("div", {
4294
4294
  class: "iconfont close-btn",
4295
- onClick: M[0] || (M[0] = (g) => p.showTropicals = !1)
4295
+ onClick: M[0] || (M[0] = (N) => p.showTropicals = !1)
4296
4296
  }, ""),
4297
4297
  c("div", q2, [
4298
- (t = (e = p.activeTropicals) == null ? void 0 : e.history) != null && t.level ? (l(), f("span", i2, _((r = (q = p.activeTropicals) == null ? void 0 : q.history) == null ? void 0 : r.level) + " , ", 1)) : F("", !0),
4299
- b0(_((a = p.activeTropicals) == null ? void 0 : a.name), 1)
4298
+ (t = (A = p.activeTropicals) == null ? void 0 : A.history) != null && t.level ? (W(), l("span", i2, v((n = (q = p.activeTropicals) == null ? void 0 : q.history) == null ? void 0 : n.level) + " , ", 1)) : _("", !0),
4299
+ b0(v((a = p.activeTropicals) == null ? void 0 : a.name), 1)
4300
4300
  ]),
4301
- c("div", r2, " Last update: " + _(o.computeTime(((L = (i = p.activeTropicals) == null ? void 0 : i.history) == null ? void 0 : L.updated) || ((u = (h = (n = p.activeTropicals) == null ? void 0 : n.forecasts) == null ? void 0 : h.filter((g) => !g.disabled)[0]) == null ? void 0 : u.date))), 1)
4301
+ c("div", r2, " Last update: " + v(o.computeTime(((L = (r = p.activeTropicals) == null ? void 0 : r.history) == null ? void 0 : L.updated) || ((u = (h = (d = p.activeTropicals) == null ? void 0 : d.forecasts) == null ? void 0 : h.filter((N) => !N.disabled)[0]) == null ? void 0 : u.date))), 1)
4302
4302
  ]),
4303
4303
  c("div", n2, [
4304
4304
  c("div", d2, [
4305
- c("div", W2, [
4306
- c("div", s2, [
4305
+ c("div", s2, [
4306
+ c("div", W2, [
4307
4307
  M[2] || (M[2] = c("label", null, "Wind speed : ", -1)),
4308
- c("span", null, _(((m = (d = p.activeTropicals) == null ? void 0 : d.history) == null ? void 0 : m.kts) || "-") + "[kts]", 1)
4308
+ c("span", null, v(((m = (s = p.activeTropicals) == null ? void 0 : s.history) == null ? void 0 : m.kts) || "-") + "[kts]", 1)
4309
4309
  ]),
4310
4310
  c("div", l2, [
4311
4311
  M[3] || (M[3] = c("label", null, "Pressure : ", -1)),
4312
- c("span", null, _(((X = (R = p.activeTropicals) == null ? void 0 : R.history) == null ? void 0 : X.pressure) || "-") + "[hPa]", 1)
4312
+ c("span", null, v(((y = (R = p.activeTropicals) == null ? void 0 : R.history) == null ? void 0 : y.pressure) || "-") + "[hPa]", 1)
4313
4313
  ])
4314
4314
  ]),
4315
4315
  c("div", f2, [
4316
4316
  c("div", u2, [
4317
4317
  M[4] || (M[4] = c("label", { style: { width: "max-content" } }, "Forecast Models : ", -1)),
4318
4318
  c("div", L2, [
4319
- (l(!0), f(K, null, $((x = p.activeTropicals) == null ? void 0 : x.forecasts, (g, U) => {
4320
- var y, C, Z, Y;
4321
- return l(), f("div", {
4322
- key: U,
4323
- class: J([
4319
+ (W(!0), l(j, null, U((T = p.activeTropicals) == null ? void 0 : T.forecasts, (N, H) => {
4320
+ var K, V, $, g;
4321
+ return W(), l("div", {
4322
+ key: H,
4323
+ class: Y([
4324
4324
  "model",
4325
- g.disabled ? "" : "active",
4326
- U > 0 && U < ((C = (y = p.activeTropicals) == null ? void 0 : y.forecasts) == null ? void 0 : C.length) - 1 && ((Y = (Z = p.activeTropicals) == null ? void 0 : Z.forecasts) == null ? void 0 : Y.length) > 2 ? "center-child" : ""
4325
+ N.disabled ? "" : "active",
4326
+ H > 0 && H < ((V = (K = p.activeTropicals) == null ? void 0 : K.forecasts) == null ? void 0 : V.length) - 1 && ((g = ($ = p.activeTropicals) == null ? void 0 : $.forecasts) == null ? void 0 : g.length) > 2 ? "center-child" : ""
4327
4327
  ]),
4328
- onClick: (i0) => o.handleForecastToggle(g)
4328
+ onClick: (E) => o.handleForecastToggle(N)
4329
4329
  }, [
4330
4330
  c("span", {
4331
- class: J(g.model)
4332
- }, _(g.model), 3)
4331
+ class: Y(N.model)
4332
+ }, v(N.model), 3)
4333
4333
  ], 10, R2);
4334
4334
  }), 128))
4335
4335
  ])
@@ -4340,16 +4340,16 @@ function m2(z, M, b, O, p, o) {
4340
4340
  c("div", h2, [
4341
4341
  c("div", {
4342
4342
  class: "button",
4343
- onClick: M[1] || (M[1] = (g) => o.handleStrikeProbability(p.activeTropicals))
4343
+ onClick: M[1] || (M[1] = (N) => o.handleStrikeProbability(p.activeTropicals))
4344
4344
  }, "Strike Probability >>")
4345
4345
  ])
4346
4346
  ])
4347
4347
  ], 512)), [
4348
- [v0, p.showTropicals && !z.$attrs.hideTropicalsLegend]
4348
+ [X0, p.showTropicals && !z.$attrs.hideTropicalsLegend]
4349
4349
  ]);
4350
4350
  }
4351
- const j0 = /* @__PURE__ */ I(A2, [["render", m2], ["__scopeId", "data-v-44a4e671"]]);
4352
- const N2 = {
4351
+ const H0 = /* @__PURE__ */ k(e2, [["render", m2], ["__scopeId", "data-v-44a4e671"]]);
4352
+ const B2 = {
4353
4353
  name: "IdmPrecip3h",
4354
4354
  props: {
4355
4355
  factor: {
@@ -4377,7 +4377,7 @@ const N2 = {
4377
4377
  texture: void 0,
4378
4378
  rampColor: void 0,
4379
4379
  aPositionBuffer: void 0,
4380
- webgl: new T0(),
4380
+ webgl: new C0(),
4381
4381
  etime: void 0,
4382
4382
  right: 10
4383
4383
  };
@@ -4437,7 +4437,7 @@ const N2 = {
4437
4437
  [1, "rgba(197,5,58,0.8)"]
4438
4438
  ];
4439
4439
  this.rampColor = this.webgl.setup(this.context, z);
4440
- const { program: M, aPositionBuffer: b } = this.webgl.bind(this.context, e0.vertexSchema, e0.fragmentSchema);
4440
+ const { program: M, aPositionBuffer: b } = this.webgl.bind(this.context, A0.vertexSchema, A0.fragmentSchema);
4441
4441
  this.program = M, this.aPositionBuffer = b;
4442
4442
  }
4443
4443
  },
@@ -4450,10 +4450,10 @@ const N2 = {
4450
4450
  this.webgl.draw(this.viewport, this.context, this.program, this.texture, this.rampColor.texture, this.aPositionBuffer), this.viewport.toggle(!0);
4451
4451
  }
4452
4452
  }
4453
- }, B2 = { key: 0 };
4454
- function y2(z, M, b, O, p, o) {
4455
- var e;
4456
- return (e = b.factor) != null && e.active ? (l(), f("div", B2, [
4453
+ }, g2 = { key: 0 };
4454
+ function N2(z, M, b, O, p, o) {
4455
+ var A;
4456
+ return (A = b.factor) != null && A.active ? (W(), l("div", g2, [
4457
4457
  c("div", {
4458
4458
  class: "legend-bars flex-center",
4459
4459
  style: o0([{ position: "absolute" }, { right: p.right + "px", bottom: b.bottom }])
@@ -4467,9 +4467,9 @@ function y2(z, M, b, O, p, o) {
4467
4467
  c("span", null, "20", -1),
4468
4468
  c("span", null, "30", -1)
4469
4469
  ]), 4)
4470
- ])) : F("", !0);
4470
+ ])) : _("", !0);
4471
4471
  }
4472
- const g2 = /* @__PURE__ */ I(N2, [["render", y2], ["__scopeId", "data-v-e83717bd"]]);
4472
+ const y2 = /* @__PURE__ */ k(B2, [["render", N2], ["__scopeId", "data-v-e83717bd"]]);
4473
4473
  const X2 = {
4474
4474
  name: "IdmVisibility",
4475
4475
  props: {
@@ -4498,7 +4498,7 @@ const X2 = {
4498
4498
  texture: void 0,
4499
4499
  rampColor: void 0,
4500
4500
  aPositionBuffer: void 0,
4501
- webgl: new T0(),
4501
+ webgl: new C0(),
4502
4502
  etime: void 0
4503
4503
  };
4504
4504
  },
@@ -4551,7 +4551,7 @@ const X2 = {
4551
4551
  [1, "rgba(144,144,144,0)"]
4552
4552
  ];
4553
4553
  this.rampColor = this.webgl.setup(this.context, z);
4554
- const { program: M, aPositionBuffer: b } = this.webgl.bind(this.context, e0.vertexSchema, e0.fragmentSchema);
4554
+ const { program: M, aPositionBuffer: b } = this.webgl.bind(this.context, A0.vertexSchema, A0.fragmentSchema);
4555
4555
  this.program = M, this.aPositionBuffer = b;
4556
4556
  }
4557
4557
  },
@@ -4564,10 +4564,10 @@ const X2 = {
4564
4564
  this.webgl.draw(this.viewport, this.context, this.program, this.texture, this.rampColor.texture, this.aPositionBuffer), this.viewport.toggle(!0);
4565
4565
  }
4566
4566
  }
4567
- }, v2 = { key: 0 };
4568
- function T2(z, M, b, O, p, o) {
4569
- var e;
4570
- return (e = b.factor) != null && e.active ? (l(), f("div", v2, [
4567
+ }, w2 = { key: 0 };
4568
+ function C2(z, M, b, O, p, o) {
4569
+ var A;
4570
+ return (A = b.factor) != null && A.active ? (W(), l("div", w2, [
4571
4571
  c("div", {
4572
4572
  class: "legend-bars flex-center",
4573
4573
  style: o0([{ position: "absolute" }, { right: z.right + "px", bottom: b.bottom }])
@@ -4579,10 +4579,10 @@ function T2(z, M, b, O, p, o) {
4579
4579
  c("span", null, "3", -1),
4580
4580
  c("span", null, "9", -1)
4581
4581
  ]), 4)
4582
- ])) : F("", !0);
4582
+ ])) : _("", !0);
4583
4583
  }
4584
- const w2 = /* @__PURE__ */ I(X2, [["render", T2], ["__scopeId", "data-v-1c8a9237"]]);
4585
- const C2 = {
4584
+ const v2 = /* @__PURE__ */ k(X2, [["render", C2], ["__scopeId", "data-v-1c8a9237"]]);
4585
+ const T2 = {
4586
4586
  name: "IdmWaterTemp",
4587
4587
  props: {
4588
4588
  factor: {
@@ -4610,7 +4610,7 @@ const C2 = {
4610
4610
  texture: void 0,
4611
4611
  rampColor: void 0,
4612
4612
  aPositionBuffer: void 0,
4613
- webgl: new T0(),
4613
+ webgl: new C0(),
4614
4614
  etime: void 0,
4615
4615
  right: 10
4616
4616
  };
@@ -4671,7 +4671,7 @@ const C2 = {
4671
4671
  //
4672
4672
  ];
4673
4673
  this.rampColor = this.webgl.setup(this.context, z);
4674
- const { program: M, aPositionBuffer: b } = this.webgl.bind(this.context, e0.vertexSchema, e0.fragmentSchema);
4674
+ const { program: M, aPositionBuffer: b } = this.webgl.bind(this.context, A0.vertexSchema, A0.fragmentSchema);
4675
4675
  this.program = M, this.aPositionBuffer = b;
4676
4676
  }
4677
4677
  },
@@ -4684,10 +4684,10 @@ const C2 = {
4684
4684
  this.webgl.draw(this.viewport, this.context, this.program, this.texture, this.rampColor.texture, this.aPositionBuffer), this.viewport.toggle(!0);
4685
4685
  }
4686
4686
  }
4687
- }, _2 = { key: 0 };
4687
+ }, E2 = { key: 0 };
4688
4688
  function x2(z, M, b, O, p, o) {
4689
- var e;
4690
- return (e = b.factor) != null && e.active ? (l(), f("div", _2, [
4689
+ var A;
4690
+ return (A = b.factor) != null && A.active ? (W(), l("div", E2, [
4691
4691
  c("div", {
4692
4692
  class: "legend-bars flex-center",
4693
4693
  style: o0([{ position: "absolute" }, { right: p.right + "px", bottom: b.bottom }])
@@ -4699,10 +4699,10 @@ function x2(z, M, b, O, p, o) {
4699
4699
  c("span", null, "30", -1),
4700
4700
  c("span", null, "40", -1)
4701
4701
  ]), 4)
4702
- ])) : F("", !0);
4702
+ ])) : _("", !0);
4703
4703
  }
4704
- const S2 = /* @__PURE__ */ I(C2, [["render", x2], ["__scopeId", "data-v-8974924d"]]);
4705
- const E2 = {
4704
+ const I2 = /* @__PURE__ */ k(T2, [["render", x2], ["__scopeId", "data-v-8974924d"]]);
4705
+ const D2 = {
4706
4706
  name: "IdmTemp",
4707
4707
  props: {
4708
4708
  factor: {
@@ -4730,7 +4730,7 @@ const E2 = {
4730
4730
  texture: void 0,
4731
4731
  rampColor: void 0,
4732
4732
  aPositionBuffer: void 0,
4733
- webgl: new T0(),
4733
+ webgl: new C0(),
4734
4734
  etime: void 0,
4735
4735
  right: 10
4736
4736
  };
@@ -4794,7 +4794,7 @@ const E2 = {
4794
4794
  [1, "rgb(138, 43, 10)"]
4795
4795
  ];
4796
4796
  this.rampColor = this.webgl.setup(this.context, z);
4797
- const { program: M, aPositionBuffer: b } = this.webgl.bind(this.context, e0.vertexSchema, e0.fragmentSchema);
4797
+ const { program: M, aPositionBuffer: b } = this.webgl.bind(this.context, A0.vertexSchema, A0.fragmentSchema);
4798
4798
  this.program = M, this.aPositionBuffer = b;
4799
4799
  }
4800
4800
  },
@@ -4808,9 +4808,9 @@ const E2 = {
4808
4808
  }
4809
4809
  }
4810
4810
  }, P2 = { key: 0 };
4811
- function k2(z, M, b, O, p, o) {
4812
- var e;
4813
- return (e = b.factor) != null && e.active ? (l(), f("div", P2, [
4811
+ function S2(z, M, b, O, p, o) {
4812
+ var A;
4813
+ return (A = b.factor) != null && A.active ? (W(), l("div", P2, [
4814
4814
  c("div", {
4815
4815
  class: "legend-bars flex-center",
4816
4816
  style: o0([{ position: "absolute" }, { right: p.right + "px", bottom: b.bottom }])
@@ -4824,10 +4824,10 @@ function k2(z, M, b, O, p, o) {
4824
4824
  c("span", null, "30", -1),
4825
4825
  c("span", null, "40", -1)
4826
4826
  ]), 4)
4827
- ])) : F("", !0);
4827
+ ])) : _("", !0);
4828
4828
  }
4829
- const D2 = /* @__PURE__ */ I(E2, [["render", k2], ["__scopeId", "data-v-d709ba86"]]);
4830
- const I2 = {
4829
+ const k2 = /* @__PURE__ */ k(D2, [["render", S2], ["__scopeId", "data-v-d709ba86"]]);
4830
+ const Q2 = {
4831
4831
  name: "IdmArctic",
4832
4832
  props: {
4833
4833
  factor: {
@@ -4855,7 +4855,7 @@ const I2 = {
4855
4855
  texture: void 0,
4856
4856
  rampColor: void 0,
4857
4857
  aPositionBuffer: void 0,
4858
- webgl: new T0(),
4858
+ webgl: new C0(),
4859
4859
  etime: void 0,
4860
4860
  right: 10
4861
4861
  };
@@ -4910,7 +4910,7 @@ const I2 = {
4910
4910
  // 2m
4911
4911
  ];
4912
4912
  this.rampColor = this.webgl.setup(this.context, z);
4913
- const { program: M, aPositionBuffer: b } = this.webgl.bind(this.context, e0.vertexSchema, e0.fragmentSchema);
4913
+ const { program: M, aPositionBuffer: b } = this.webgl.bind(this.context, A0.vertexSchema, A0.fragmentSchema);
4914
4914
  this.program = M, this.aPositionBuffer = b;
4915
4915
  }
4916
4916
  },
@@ -4923,10 +4923,10 @@ const I2 = {
4923
4923
  this.webgl.draw(this.viewport, this.context, this.program, this.texture, this.rampColor.texture, this.aPositionBuffer), this.viewport.toggle(!0);
4924
4924
  }
4925
4925
  }
4926
- }, j2 = { key: 0 };
4927
- function U2(z, M, b, O, p, o) {
4928
- var e;
4929
- return (e = b.factor) != null && e.active ? (l(), f("div", j2, [
4926
+ }, H2 = { key: 0 };
4927
+ function _2(z, M, b, O, p, o) {
4928
+ var A;
4929
+ return (A = b.factor) != null && A.active ? (W(), l("div", H2, [
4930
4930
  c("div", {
4931
4931
  class: "legend-bars flex-center",
4932
4932
  style: o0([{ position: "absolute" }, { right: p.right + "px", bottom: b.bottom }])
@@ -4938,15 +4938,15 @@ function U2(z, M, b, O, p, o) {
4938
4938
  c("span", null, "1.5", -1),
4939
4939
  c("span", null, "2", -1)
4940
4940
  ]), 4)
4941
- ])) : F("", !0);
4941
+ ])) : _("", !0);
4942
4942
  }
4943
- const F2 = /* @__PURE__ */ I(I2, [["render", U2], ["__scopeId", "data-v-5bb73794"]]);
4943
+ const j2 = /* @__PURE__ */ k(Q2, [["render", _2], ["__scopeId", "data-v-5bb73794"]]);
4944
4944
  /*! Element Plus Icons Vue v2.3.1 */
4945
- var H2 = /* @__PURE__ */ J0({
4945
+ var F2 = /* @__PURE__ */ J0({
4946
4946
  name: "LocationFilled",
4947
4947
  __name: "location-filled",
4948
4948
  setup(z) {
4949
- return (M, b) => (l(), f("svg", {
4949
+ return (M, b) => (W(), l("svg", {
4950
4950
  xmlns: "http://www.w3.org/2000/svg",
4951
4951
  viewBox: "0 0 1024 1024"
4952
4952
  }, [
@@ -4956,11 +4956,11 @@ var H2 = /* @__PURE__ */ J0({
4956
4956
  })
4957
4957
  ]));
4958
4958
  }
4959
- }), G2 = H2, V2 = typeof globalThis < "u" ? globalThis : typeof window < "u" ? window : typeof global < "u" ? global : typeof self < "u" ? self : {};
4959
+ }), G2 = F2, U2 = typeof globalThis < "u" ? globalThis : typeof window < "u" ? window : typeof global < "u" ? global : typeof self < "u" ? self : {};
4960
4960
  function K2(z) {
4961
4961
  return z && z.__esModule && Object.prototype.hasOwnProperty.call(z, "default") ? z.default : z;
4962
4962
  }
4963
- var U0 = { exports: {} }, F0 = { exports: {} };
4963
+ var _0 = { exports: {} }, j0 = { exports: {} };
4964
4964
  (function(z) {
4965
4965
  //! moment-timezone.js
4966
4966
  //! version : 0.5.47
@@ -4968,276 +4968,276 @@ var U0 = { exports: {} }, F0 = { exports: {} };
4968
4968
  //! license : MIT
4969
4969
  //! github.com/moment/moment-timezone
4970
4970
  (function(M, b) {
4971
- z.exports ? z.exports = b(H) : b(M.moment);
4972
- })(V2, function(M) {
4971
+ z.exports ? z.exports = b(F) : b(M.moment);
4972
+ })(U2, function(M) {
4973
4973
  M.version === void 0 && M.default && (M = M.default);
4974
- var b = "0.5.47", O = {}, p = {}, o = {}, e = {}, t = {}, q;
4974
+ var b = "0.5.47", O = {}, p = {}, o = {}, A = {}, t = {}, q;
4975
4975
  (!M || typeof M.version != "string") && t0("Moment Timezone requires Moment.js. See https://momentjs.com/timezone/docs/#/use-it/browser/");
4976
- var r = M.version.split("."), a = +r[0], i = +r[1];
4977
- (a < 2 || a === 2 && i < 6) && t0("Moment Timezone requires Moment.js >= 2.6.0. You are using Moment.js " + M.version + ". See momentjs.com");
4978
- function L(A) {
4979
- return A > 96 ? A - 87 : A > 64 ? A - 29 : A - 48;
4980
- }
4981
- function n(A) {
4982
- var W = 0, s = A.split("."), N = s[0], v = s[1] || "", P = 1, Q, D = 0, G = 1;
4983
- for (A.charCodeAt(0) === 45 && (W = 1, G = -1), W; W < N.length; W++)
4984
- Q = L(N.charCodeAt(W)), D = 60 * D + Q;
4985
- for (W = 0; W < v.length; W++)
4986
- P = P / 60, Q = L(v.charCodeAt(W)), D += Q * P;
4987
- return D * G;
4988
- }
4989
- function h(A) {
4990
- for (var W = 0; W < A.length; W++)
4991
- A[W] = n(A[W]);
4992
- }
4993
- function u(A, W) {
4994
- for (var s = 0; s < W; s++)
4995
- A[s] = Math.round((A[s - 1] || 0) + A[s] * 6e4);
4996
- A[W - 1] = 1 / 0;
4997
- }
4998
- function d(A, W) {
4999
- var s = [], N;
5000
- for (N = 0; N < W.length; N++)
5001
- s[N] = A[W[N]];
5002
- return s;
5003
- }
5004
- function m(A) {
5005
- var W = A.split("|"), s = W[2].split(" "), N = W[3].split(""), v = W[4].split(" ");
5006
- return h(s), h(N), h(v), u(v, N.length), {
5007
- name: W[0],
5008
- abbrs: d(W[1].split(" "), N),
5009
- offsets: d(s, N),
5010
- untils: v,
5011
- population: W[5] | 0
4976
+ var n = M.version.split("."), a = +n[0], r = +n[1];
4977
+ (a < 2 || a === 2 && r < 6) && t0("Moment Timezone requires Moment.js >= 2.6.0. You are using Moment.js " + M.version + ". See momentjs.com");
4978
+ function L(e) {
4979
+ return e > 96 ? e - 87 : e > 64 ? e - 29 : e - 48;
4980
+ }
4981
+ function d(e) {
4982
+ var i = 0, f = e.split("."), B = f[0], X = f[1] || "", D = 1, Z, S = 0, G = 1;
4983
+ for (e.charCodeAt(0) === 45 && (i = 1, G = -1), i; i < B.length; i++)
4984
+ Z = L(B.charCodeAt(i)), S = 60 * S + Z;
4985
+ for (i = 0; i < X.length; i++)
4986
+ D = D / 60, Z = L(X.charCodeAt(i)), S += Z * D;
4987
+ return S * G;
4988
+ }
4989
+ function h(e) {
4990
+ for (var i = 0; i < e.length; i++)
4991
+ e[i] = d(e[i]);
4992
+ }
4993
+ function u(e, i) {
4994
+ for (var f = 0; f < i; f++)
4995
+ e[f] = Math.round((e[f - 1] || 0) + e[f] * 6e4);
4996
+ e[i - 1] = 1 / 0;
4997
+ }
4998
+ function s(e, i) {
4999
+ var f = [], B;
5000
+ for (B = 0; B < i.length; B++)
5001
+ f[B] = e[i[B]];
5002
+ return f;
5003
+ }
5004
+ function m(e) {
5005
+ var i = e.split("|"), f = i[2].split(" "), B = i[3].split(""), X = i[4].split(" ");
5006
+ return h(f), h(B), h(X), u(X, B.length), {
5007
+ name: i[0],
5008
+ abbrs: s(i[1].split(" "), B),
5009
+ offsets: s(f, B),
5010
+ untils: X,
5011
+ population: i[5] | 0
5012
5012
  };
5013
5013
  }
5014
- function R(A) {
5015
- A && this._set(m(A));
5014
+ function R(e) {
5015
+ e && this._set(m(e));
5016
5016
  }
5017
- function X(A, W) {
5018
- var s = W.length;
5019
- if (A < W[0])
5017
+ function y(e, i) {
5018
+ var f = i.length;
5019
+ if (e < i[0])
5020
5020
  return 0;
5021
- if (s > 1 && W[s - 1] === 1 / 0 && A >= W[s - 2])
5022
- return s - 1;
5023
- if (A >= W[s - 1])
5021
+ if (f > 1 && i[f - 1] === 1 / 0 && e >= i[f - 2])
5022
+ return f - 1;
5023
+ if (e >= i[f - 1])
5024
5024
  return -1;
5025
- for (var N, v = 0, P = s - 1; P - v > 1; )
5026
- N = Math.floor((v + P) / 2), W[N] <= A ? v = N : P = N;
5027
- return P;
5025
+ for (var B, X = 0, D = f - 1; D - X > 1; )
5026
+ B = Math.floor((X + D) / 2), i[B] <= e ? X = B : D = B;
5027
+ return D;
5028
5028
  }
5029
5029
  R.prototype = {
5030
- _set: function(A) {
5031
- this.name = A.name, this.abbrs = A.abbrs, this.untils = A.untils, this.offsets = A.offsets, this.population = A.population;
5030
+ _set: function(e) {
5031
+ this.name = e.name, this.abbrs = e.abbrs, this.untils = e.untils, this.offsets = e.offsets, this.population = e.population;
5032
5032
  },
5033
- _index: function(A) {
5034
- var W = +A, s = this.untils, N;
5035
- if (N = X(W, s), N >= 0)
5036
- return N;
5033
+ _index: function(e) {
5034
+ var i = +e, f = this.untils, B;
5035
+ if (B = y(i, f), B >= 0)
5036
+ return B;
5037
5037
  },
5038
5038
  countries: function() {
5039
- var A = this.name;
5040
- return Object.keys(o).filter(function(W) {
5041
- return o[W].zones.indexOf(A) !== -1;
5039
+ var e = this.name;
5040
+ return Object.keys(o).filter(function(i) {
5041
+ return o[i].zones.indexOf(e) !== -1;
5042
5042
  });
5043
5043
  },
5044
- parse: function(A) {
5045
- var W = +A, s = this.offsets, N = this.untils, v = N.length - 1, P, Q, D, G;
5046
- for (G = 0; G < v; G++)
5047
- if (P = s[G], Q = s[G + 1], D = s[G && G - 1], P < Q && E.moveAmbiguousForward ? P = Q : P > D && E.moveInvalidForward && (P = D), W < N[G] - P * 6e4)
5048
- return s[G];
5049
- return s[v];
5044
+ parse: function(e) {
5045
+ var i = +e, f = this.offsets, B = this.untils, X = B.length - 1, D, Z, S, G;
5046
+ for (G = 0; G < X; G++)
5047
+ if (D = f[G], Z = f[G + 1], S = f[G && G - 1], D < Z && I.moveAmbiguousForward ? D = Z : D > S && I.moveInvalidForward && (D = S), i < B[G] - D * 6e4)
5048
+ return f[G];
5049
+ return f[X];
5050
5050
  },
5051
- abbr: function(A) {
5052
- return this.abbrs[this._index(A)];
5051
+ abbr: function(e) {
5052
+ return this.abbrs[this._index(e)];
5053
5053
  },
5054
- offset: function(A) {
5055
- return t0("zone.offset has been deprecated in favor of zone.utcOffset"), this.offsets[this._index(A)];
5054
+ offset: function(e) {
5055
+ return t0("zone.offset has been deprecated in favor of zone.utcOffset"), this.offsets[this._index(e)];
5056
5056
  },
5057
- utcOffset: function(A) {
5058
- return this.offsets[this._index(A)];
5057
+ utcOffset: function(e) {
5058
+ return this.offsets[this._index(e)];
5059
5059
  }
5060
5060
  };
5061
- function x(A, W) {
5062
- this.name = A, this.zones = W;
5061
+ function T(e, i) {
5062
+ this.name = e, this.zones = i;
5063
5063
  }
5064
- function g(A) {
5065
- var W = A.toTimeString(), s = W.match(/\([a-z ]+\)/i);
5066
- s && s[0] ? (s = s[0].match(/[A-Z]/g), s = s ? s.join("") : void 0) : (s = W.match(/[A-Z]{3,5}/g), s = s ? s[0] : void 0), s === "GMT" && (s = void 0), this.at = +A, this.abbr = s, this.offset = A.getTimezoneOffset();
5064
+ function N(e) {
5065
+ var i = e.toTimeString(), f = i.match(/\([a-z ]+\)/i);
5066
+ f && f[0] ? (f = f[0].match(/[A-Z]/g), f = f ? f.join("") : void 0) : (f = i.match(/[A-Z]{3,5}/g), f = f ? f[0] : void 0), f === "GMT" && (f = void 0), this.at = +e, this.abbr = f, this.offset = e.getTimezoneOffset();
5067
5067
  }
5068
- function U(A) {
5069
- this.zone = A, this.offsetScore = 0, this.abbrScore = 0;
5068
+ function H(e) {
5069
+ this.zone = e, this.offsetScore = 0, this.abbrScore = 0;
5070
5070
  }
5071
- U.prototype.scoreOffsetAt = function(A) {
5072
- this.offsetScore += Math.abs(this.zone.utcOffset(A.at) - A.offset), this.zone.abbr(A.at).replace(/[^A-Z]/g, "") !== A.abbr && this.abbrScore++;
5071
+ H.prototype.scoreOffsetAt = function(e) {
5072
+ this.offsetScore += Math.abs(this.zone.utcOffset(e.at) - e.offset), this.zone.abbr(e.at).replace(/[^A-Z]/g, "") !== e.abbr && this.abbrScore++;
5073
5073
  };
5074
- function y(A, W) {
5075
- for (var s, N; N = ((W.at - A.at) / 12e4 | 0) * 6e4; )
5076
- s = new g(new Date(A.at + N)), s.offset === A.offset ? A = s : W = s;
5077
- return A;
5078
- }
5079
- function C() {
5080
- var A = (/* @__PURE__ */ new Date()).getFullYear() - 2, W = new g(new Date(A, 0, 1)), s = W.offset, N = [W], v, P, Q, D;
5081
- for (D = 1; D < 48; D++)
5082
- Q = new Date(A, D, 1).getTimezoneOffset(), Q !== s && (P = new g(new Date(A, D, 1)), v = y(W, P), N.push(v), N.push(new g(new Date(v.at + 6e4))), W = P, s = Q);
5083
- for (D = 0; D < 4; D++)
5084
- N.push(new g(new Date(A + D, 0, 1))), N.push(new g(new Date(A + D, 6, 1)));
5085
- return N;
5086
- }
5087
- function Z(A, W) {
5088
- return A.offsetScore !== W.offsetScore ? A.offsetScore - W.offsetScore : A.abbrScore !== W.abbrScore ? A.abbrScore - W.abbrScore : A.zone.population !== W.zone.population ? W.zone.population - A.zone.population : W.zone.name.localeCompare(A.zone.name);
5089
- }
5090
- function Y(A, W) {
5091
- var s, N;
5092
- for (h(W), s = 0; s < W.length; s++)
5093
- N = W[s], t[N] = t[N] || {}, t[N][A] = !0;
5094
- }
5095
- function i0(A) {
5096
- var W = A.length, s = {}, N = [], v = {}, P, Q, D, G;
5097
- for (P = 0; P < W; P++)
5098
- if (D = A[P].offset, !v.hasOwnProperty(D)) {
5099
- G = t[D] || {};
5100
- for (Q in G)
5101
- G.hasOwnProperty(Q) && (s[Q] = !0);
5102
- v[D] = !0;
5074
+ function K(e, i) {
5075
+ for (var f, B; B = ((i.at - e.at) / 12e4 | 0) * 6e4; )
5076
+ f = new N(new Date(e.at + B)), f.offset === e.offset ? e = f : i = f;
5077
+ return e;
5078
+ }
5079
+ function V() {
5080
+ var e = (/* @__PURE__ */ new Date()).getFullYear() - 2, i = new N(new Date(e, 0, 1)), f = i.offset, B = [i], X, D, Z, S;
5081
+ for (S = 1; S < 48; S++)
5082
+ Z = new Date(e, S, 1).getTimezoneOffset(), Z !== f && (D = new N(new Date(e, S, 1)), X = K(i, D), B.push(X), B.push(new N(new Date(X.at + 6e4))), i = D, f = Z);
5083
+ for (S = 0; S < 4; S++)
5084
+ B.push(new N(new Date(e + S, 0, 1))), B.push(new N(new Date(e + S, 6, 1)));
5085
+ return B;
5086
+ }
5087
+ function $(e, i) {
5088
+ return e.offsetScore !== i.offsetScore ? e.offsetScore - i.offsetScore : e.abbrScore !== i.abbrScore ? e.abbrScore - i.abbrScore : e.zone.population !== i.zone.population ? i.zone.population - e.zone.population : i.zone.name.localeCompare(e.zone.name);
5089
+ }
5090
+ function g(e, i) {
5091
+ var f, B;
5092
+ for (h(i), f = 0; f < i.length; f++)
5093
+ B = i[f], t[B] = t[B] || {}, t[B][e] = !0;
5094
+ }
5095
+ function E(e) {
5096
+ var i = e.length, f = {}, B = [], X = {}, D, Z, S, G;
5097
+ for (D = 0; D < i; D++)
5098
+ if (S = e[D].offset, !X.hasOwnProperty(S)) {
5099
+ G = t[S] || {};
5100
+ for (Z in G)
5101
+ G.hasOwnProperty(Z) && (f[Z] = !0);
5102
+ X[S] = !0;
5103
5103
  }
5104
- for (P in s)
5105
- s.hasOwnProperty(P) && N.push(e[P]);
5106
- return N;
5104
+ for (D in f)
5105
+ f.hasOwnProperty(D) && B.push(A[D]);
5106
+ return B;
5107
5107
  }
5108
- function L0() {
5108
+ function n0() {
5109
5109
  try {
5110
- var A = Intl.DateTimeFormat().resolvedOptions().timeZone;
5111
- if (A && A.length > 3) {
5112
- var W = e[r0(A)];
5113
- if (W)
5114
- return W;
5115
- t0("Moment Timezone found " + A + " from the Intl api, but did not have that data loaded.");
5110
+ var e = Intl.DateTimeFormat().resolvedOptions().timeZone;
5111
+ if (e && e.length > 3) {
5112
+ var i = A[i0(e)];
5113
+ if (i)
5114
+ return i;
5115
+ t0("Moment Timezone found " + e + " from the Intl api, but did not have that data loaded.");
5116
5116
  }
5117
5117
  } catch {
5118
5118
  }
5119
- var s = C(), N = s.length, v = i0(s), P = [], Q, D, G;
5120
- for (D = 0; D < v.length; D++) {
5121
- for (Q = new U(O0(v[D])), G = 0; G < N; G++)
5122
- Q.scoreOffsetAt(s[G]);
5123
- P.push(Q);
5119
+ var f = V(), B = f.length, X = E(f), D = [], Z, S, G;
5120
+ for (S = 0; S < X.length; S++) {
5121
+ for (Z = new H(O0(X[S])), G = 0; G < B; G++)
5122
+ Z.scoreOffsetAt(f[G]);
5123
+ D.push(Z);
5124
5124
  }
5125
- return P.sort(Z), P.length > 0 ? P[0].zone.name : void 0;
5125
+ return D.sort($), D.length > 0 ? D[0].zone.name : void 0;
5126
5126
  }
5127
- function R0(A) {
5128
- return (!q || A) && (q = L0()), q;
5127
+ function d0(e) {
5128
+ return (!q || e) && (q = n0()), q;
5129
5129
  }
5130
- function r0(A) {
5131
- return (A || "").toLowerCase().replace(/\//g, "_");
5130
+ function i0(e) {
5131
+ return (e || "").toLowerCase().replace(/\//g, "_");
5132
5132
  }
5133
- function f0(A) {
5134
- var W, s, N, v;
5135
- for (typeof A == "string" && (A = [A]), W = 0; W < A.length; W++)
5136
- N = A[W].split("|"), s = N[0], v = r0(s), O[v] = A[W], e[v] = s, Y(v, N[2].split(" "));
5133
+ function L0(e) {
5134
+ var i, f, B, X;
5135
+ for (typeof e == "string" && (e = [e]), i = 0; i < e.length; i++)
5136
+ B = e[i].split("|"), f = B[0], X = i0(f), O[X] = e[i], A[X] = f, g(X, B[2].split(" "));
5137
5137
  }
5138
- function O0(A, W) {
5139
- A = r0(A);
5140
- var s = O[A], N;
5141
- return s instanceof R ? s : typeof s == "string" ? (s = new R(s), O[A] = s, s) : p[A] && W !== O0 && (N = O0(p[A], O0)) ? (s = O[A] = new R(), s._set(N), s.name = e[A], s) : null;
5138
+ function O0(e, i) {
5139
+ e = i0(e);
5140
+ var f = O[e], B;
5141
+ return f instanceof R ? f : typeof f == "string" ? (f = new R(f), O[e] = f, f) : p[e] && i !== O0 && (B = O0(p[e], O0)) ? (f = O[e] = new R(), f._set(B), f.name = A[e], f) : null;
5142
5142
  }
5143
5143
  function h0() {
5144
- var A, W = [];
5145
- for (A in e)
5146
- e.hasOwnProperty(A) && (O[A] || O[p[A]]) && e[A] && W.push(e[A]);
5147
- return W.sort();
5144
+ var e, i = [];
5145
+ for (e in A)
5146
+ A.hasOwnProperty(e) && (O[e] || O[p[e]]) && A[e] && i.push(A[e]);
5147
+ return i.sort();
5148
5148
  }
5149
5149
  function m0() {
5150
5150
  return Object.keys(o);
5151
5151
  }
5152
- function d0(A) {
5153
- var W, s, N, v;
5154
- for (typeof A == "string" && (A = [A]), W = 0; W < A.length; W++)
5155
- s = A[W].split("|"), N = r0(s[0]), v = r0(s[1]), p[N] = v, e[N] = s[0], p[v] = N, e[v] = s[1];
5156
- }
5157
- function n0(A) {
5158
- var W, s, N, v;
5159
- if (!(!A || !A.length))
5160
- for (W = 0; W < A.length; W++)
5161
- v = A[W].split("|"), s = v[0].toUpperCase(), N = v[1].split(" "), o[s] = new x(
5162
- s,
5163
- N
5152
+ function s0(e) {
5153
+ var i, f, B, X;
5154
+ for (typeof e == "string" && (e = [e]), i = 0; i < e.length; i++)
5155
+ f = e[i].split("|"), B = i0(f[0]), X = i0(f[1]), p[B] = X, A[B] = f[0], p[X] = B, A[X] = f[1];
5156
+ }
5157
+ function r0(e) {
5158
+ var i, f, B, X;
5159
+ if (!(!e || !e.length))
5160
+ for (i = 0; i < e.length; i++)
5161
+ X = e[i].split("|"), f = X[0].toUpperCase(), B = X[1].split(" "), o[f] = new T(
5162
+ f,
5163
+ B
5164
5164
  );
5165
5165
  }
5166
- function W0(A) {
5167
- return A = A.toUpperCase(), o[A] || null;
5166
+ function W0(e) {
5167
+ return e = e.toUpperCase(), o[e] || null;
5168
5168
  }
5169
- function N0(A, W) {
5170
- if (A = W0(A), !A)
5169
+ function B0(e, i) {
5170
+ if (e = W0(e), !e)
5171
5171
  return null;
5172
- var s = A.zones.sort();
5173
- return W ? s.map(function(N) {
5174
- var v = O0(N);
5172
+ var f = e.zones.sort();
5173
+ return i ? f.map(function(B) {
5174
+ var X = O0(B);
5175
5175
  return {
5176
- name: N,
5177
- offset: v.utcOffset(/* @__PURE__ */ new Date())
5176
+ name: B,
5177
+ offset: X.utcOffset(/* @__PURE__ */ new Date())
5178
5178
  };
5179
- }) : s;
5179
+ }) : f;
5180
5180
  }
5181
- function s0(A) {
5182
- f0(A.zones), d0(A.links), n0(A.countries), E.dataVersion = A.version;
5181
+ function l0(e) {
5182
+ L0(e.zones), s0(e.links), r0(e.countries), I.dataVersion = e.version;
5183
5183
  }
5184
- function k(A) {
5185
- return k.didShowError || (k.didShowError = !0, t0("moment.tz.zoneExists('" + A + "') has been deprecated in favor of !moment.tz.zone('" + A + "')")), !!O0(A);
5184
+ function P(e) {
5185
+ return P.didShowError || (P.didShowError = !0, t0("moment.tz.zoneExists('" + e + "') has been deprecated in favor of !moment.tz.zone('" + e + "')")), !!O0(e);
5186
5186
  }
5187
- function z0(A) {
5188
- var W = A._f === "X" || A._f === "x";
5189
- return !!(A._a && A._tzm === void 0 && !W);
5187
+ function z0(e) {
5188
+ var i = e._f === "X" || e._f === "x";
5189
+ return !!(e._a && e._tzm === void 0 && !i);
5190
5190
  }
5191
- function t0(A) {
5192
- typeof console < "u" && typeof console.error == "function" && console.error(A);
5191
+ function t0(e) {
5192
+ typeof console < "u" && typeof console.error == "function" && console.error(e);
5193
5193
  }
5194
- function E(A) {
5195
- var W = Array.prototype.slice.call(arguments, 0, -1), s = arguments[arguments.length - 1], N = M.utc.apply(null, W), v;
5196
- return !M.isMoment(A) && z0(N) && (v = O0(s)) && N.add(v.parse(N), "minutes"), N.tz(s), N;
5194
+ function I(e) {
5195
+ var i = Array.prototype.slice.call(arguments, 0, -1), f = arguments[arguments.length - 1], B = M.utc.apply(null, i), X;
5196
+ return !M.isMoment(e) && z0(B) && (X = O0(f)) && B.add(X.parse(B), "minutes"), B.tz(f), B;
5197
5197
  }
5198
- E.version = b, E.dataVersion = "", E._zones = O, E._links = p, E._names = e, E._countries = o, E.add = f0, E.link = d0, E.load = s0, E.zone = O0, E.zoneExists = k, E.guess = R0, E.names = h0, E.Zone = R, E.unpack = m, E.unpackBase60 = n, E.needsOffset = z0, E.moveInvalidForward = !0, E.moveAmbiguousForward = !1, E.countries = m0, E.zonesForCountry = N0;
5198
+ I.version = b, I.dataVersion = "", I._zones = O, I._links = p, I._names = A, I._countries = o, I.add = L0, I.link = s0, I.load = l0, I.zone = O0, I.zoneExists = P, I.guess = d0, I.names = h0, I.Zone = R, I.unpack = m, I.unpackBase60 = d, I.needsOffset = z0, I.moveInvalidForward = !0, I.moveAmbiguousForward = !1, I.countries = m0, I.zonesForCountry = B0;
5199
5199
  var p0 = M.fn;
5200
- M.tz = E, M.defaultZone = null, M.updateOffset = function(A, W) {
5201
- var s = M.defaultZone, N;
5202
- if (A._z === void 0 && (s && z0(A) && !A._isUTC && A.isValid() && (A._d = M.utc(A._a)._d, A.utc().add(s.parse(A), "minutes")), A._z = s), A._z)
5203
- if (N = A._z.utcOffset(A), Math.abs(N) < 16 && (N = N / 60), A.utcOffset !== void 0) {
5204
- var v = A._z;
5205
- A.utcOffset(-N, W), A._z = v;
5200
+ M.tz = I, M.defaultZone = null, M.updateOffset = function(e, i) {
5201
+ var f = M.defaultZone, B;
5202
+ if (e._z === void 0 && (f && z0(e) && !e._isUTC && e.isValid() && (e._d = M.utc(e._a)._d, e.utc().add(f.parse(e), "minutes")), e._z = f), e._z)
5203
+ if (B = e._z.utcOffset(e), Math.abs(B) < 16 && (B = B / 60), e.utcOffset !== void 0) {
5204
+ var X = e._z;
5205
+ e.utcOffset(-B, i), e._z = X;
5206
5206
  } else
5207
- A.zone(N, W);
5208
- }, p0.tz = function(A, W) {
5209
- if (A) {
5210
- if (typeof A != "string")
5211
- throw new Error("Time zone name must be a string, got " + A + " [" + typeof A + "]");
5212
- return this._z = O0(A), this._z ? M.updateOffset(this, W) : t0("Moment Timezone has no data for " + A + ". See http://momentjs.com/timezone/docs/#/data-loading/."), this;
5207
+ e.zone(B, i);
5208
+ }, p0.tz = function(e, i) {
5209
+ if (e) {
5210
+ if (typeof e != "string")
5211
+ throw new Error("Time zone name must be a string, got " + e + " [" + typeof e + "]");
5212
+ return this._z = O0(e), this._z ? M.updateOffset(this, i) : t0("Moment Timezone has no data for " + e + ". See http://momentjs.com/timezone/docs/#/data-loading/."), this;
5213
5213
  }
5214
5214
  if (this._z)
5215
5215
  return this._z.name;
5216
5216
  };
5217
- function l0(A) {
5217
+ function f0(e) {
5218
5218
  return function() {
5219
- return this._z ? this._z.abbr(this) : A.call(this);
5219
+ return this._z ? this._z.abbr(this) : e.call(this);
5220
5220
  };
5221
5221
  }
5222
- function c0(A) {
5222
+ function u0(e) {
5223
5223
  return function() {
5224
- return this._z = null, A.apply(this, arguments);
5224
+ return this._z = null, e.apply(this, arguments);
5225
5225
  };
5226
5226
  }
5227
- function u0(A) {
5227
+ function R0(e) {
5228
5228
  return function() {
5229
- return arguments.length > 0 && (this._z = null), A.apply(this, arguments);
5229
+ return arguments.length > 0 && (this._z = null), e.apply(this, arguments);
5230
5230
  };
5231
5231
  }
5232
- p0.zoneName = l0(p0.zoneName), p0.zoneAbbr = l0(p0.zoneAbbr), p0.utc = c0(p0.utc), p0.local = c0(p0.local), p0.utcOffset = u0(p0.utcOffset), M.tz.setDefault = function(A) {
5233
- return (a < 2 || a === 2 && i < 9) && t0("Moment Timezone setDefault() requires Moment.js >= 2.9.0. You are using Moment.js " + M.version + "."), M.defaultZone = A ? O0(A) : null, M;
5232
+ p0.zoneName = f0(p0.zoneName), p0.zoneAbbr = f0(p0.zoneAbbr), p0.utc = u0(p0.utc), p0.local = u0(p0.local), p0.utcOffset = R0(p0.utcOffset), M.tz.setDefault = function(e) {
5233
+ return (a < 2 || a === 2 && r < 9) && t0("Moment Timezone setDefault() requires Moment.js >= 2.9.0. You are using Moment.js " + M.version + "."), M.defaultZone = e ? O0(e) : null, M;
5234
5234
  };
5235
- var B = M.momentProperties;
5236
- return Object.prototype.toString.call(B) === "[object Array]" ? (B.push("_z"), B.push("_a")) : B && (B._z = null), M;
5235
+ var c0 = M.momentProperties;
5236
+ return Object.prototype.toString.call(c0) === "[object Array]" ? (c0.push("_z"), c0.push("_a")) : c0 && (c0._z = null), M;
5237
5237
  });
5238
- })(F0);
5239
- var J2 = F0.exports;
5240
- const Q2 = "2025a", $2 = [
5238
+ })(j0);
5239
+ var J2 = j0.exports;
5240
+ const Y2 = "2025a", V2 = [
5241
5241
  "Africa/Abidjan|LMT GMT|g.8 0|01|-2ldXH.Q|48e5",
5242
5242
  "Africa/Nairobi|LMT +0230 EAT +0245|-2r.g -2u -30 -2J|012132|-2ua2r.g N6nV.g 3Fbu h1cu dzbJ|47e5",
5243
5243
  "Africa/Algiers|LMT PMT WET WEST CET CEST|-c.c -9.l 0 -10 -10 -20|01232323232323232454542423234542324|-3bQ0c.c MDA2.P cNb9.l HA0 19A0 1iM0 11c0 1oo0 Wo0 1rc0 QM0 1EM0 UM0 DA0 Imo0 rd0 De0 9Xz0 1fb0 1ap0 16K0 2yo0 mEp0 hwL0 jxA0 11A0 dDd0 17b0 11B0 1cN0 2Dy0 1cN0 1fB0 1cL0|26e5",
@@ -5835,7 +5835,7 @@ const Q2 = "2025a", $2 = [
5835
5835
  "Pacific/Tarawa|Pacific/Majuro",
5836
5836
  "Pacific/Tarawa|Pacific/Wake",
5837
5837
  "Pacific/Tarawa|Pacific/Wallis"
5838
- ], Y2 = [
5838
+ ], $2 = [
5839
5839
  "AD|Europe/Andorra",
5840
5840
  "AE|Asia/Dubai",
5841
5841
  "AF|Asia/Kabul",
@@ -6084,16 +6084,16 @@ const Q2 = "2025a", $2 = [
6084
6084
  "ZM|Africa/Maputo Africa/Lusaka",
6085
6085
  "ZW|Africa/Maputo Africa/Harare"
6086
6086
  ], MM = {
6087
- version: Q2,
6088
- zones: $2,
6087
+ version: Y2,
6088
+ zones: V2,
6089
6089
  links: Z2,
6090
- countries: Y2
6090
+ countries: $2
6091
6091
  };
6092
- var bM = U0.exports = J2;
6092
+ var bM = _0.exports = J2;
6093
6093
  bM.tz.load(MM);
6094
- var zM = U0.exports;
6095
- const _0 = /* @__PURE__ */ K2(zM);
6096
- const pM = {
6094
+ var zM = _0.exports;
6095
+ const E0 = /* @__PURE__ */ K2(zM), pM = "data:image/gif;base64,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";
6096
+ const OM = {
6097
6097
  name: "IdmPoint",
6098
6098
  components: { LocationFilled: G2 },
6099
6099
  props: {
@@ -6120,8 +6120,9 @@ const pM = {
6120
6120
  data() {
6121
6121
  return {
6122
6122
  showMeteo: !1,
6123
+ loading: !1,
6123
6124
  point: {},
6124
- meteoTime: H().utc().format(),
6125
+ meteoTime: F().utc().format(),
6125
6126
  meteoData: void 0,
6126
6127
  tableData: {
6127
6128
  hours: [void 0, void 0, void 0, void 0, void 0, void 0, void 0, void 0],
@@ -6149,6 +6150,7 @@ const pM = {
6149
6150
  seaTemp: []
6150
6151
  },
6151
6152
  currentHourData: void 0,
6153
+ positionOffset: void 0,
6152
6154
  positionGmt: void 0,
6153
6155
  localDate: void 0,
6154
6156
  meteoMarker: void 0,
@@ -6171,7 +6173,7 @@ const pM = {
6171
6173
  handler() {
6172
6174
  var z;
6173
6175
  if (this.showMeteo = !0, this.showMeteo && this.ts && this.meteoTime) {
6174
- const M = Math.ceil((z = H(this.ts)) == null ? void 0 : z.diff(H(), "d", !0)), b = M > 0 ? 15 - M : 15;
6176
+ const M = Math.ceil((z = F(this.ts)) == null ? void 0 : z.diff(F(), "d", !0)), b = M > 0 ? 15 - M : 15;
6175
6177
  this.fetchMeteoData(this.point, this.ts, b);
6176
6178
  }
6177
6179
  }
@@ -6180,11 +6182,11 @@ const pM = {
6180
6182
  handler() {
6181
6183
  var z, M;
6182
6184
  if (this.showMeteo && this.ts && this.meteoTime) {
6183
- const b = (z = H(this.ts)) == null ? void 0 : z.diff(H(this.meteoTime), "d", !0);
6185
+ const b = (z = F(this.ts)) == null ? void 0 : z.diff(F(this.meteoTime), "d", !0);
6184
6186
  if (b >= 0 && b <= 14)
6185
6187
  this.meteoData && this.initTableData(this.meteoData);
6186
6188
  else if (b > 14) {
6187
- const O = Math.ceil((M = H(this.ts)) == null ? void 0 : M.diff(H(), "d", !0));
6189
+ const O = Math.ceil((M = F(this.ts)) == null ? void 0 : M.diff(F(), "d", !0));
6188
6190
  if (O <= 15) {
6189
6191
  const p = O > 0 ? 15 - O : 15;
6190
6192
  this.fetchMeteoData(this.point, this.ts, p);
@@ -6199,12 +6201,12 @@ const pM = {
6199
6201
  computed: {
6200
6202
  computeHourL() {
6201
6203
  return function(z) {
6202
- return z ? `${_0(z).tz(this.positionGmt).format("HH")}` : "-";
6204
+ return z ? `${E0(z).tz(this.positionGmt).format("HH")}` : "-";
6203
6205
  };
6204
6206
  },
6205
6207
  computeHourZ() {
6206
6208
  return function(z) {
6207
- return z ? `${H(z).utc().format("HH")}Z` : "-";
6209
+ return z ? `${F(z).utc().format("HH")}Z` : "-";
6208
6210
  };
6209
6211
  },
6210
6212
  computeLat() {
@@ -6227,49 +6229,50 @@ const pM = {
6227
6229
  },
6228
6230
  methods: {
6229
6231
  async fetchMeteoData(z, M, b) {
6230
- this.point = z, this.clearTable(), this.tableData.hours = [void 0, void 0, void 0, void 0, void 0, void 0, void 0, void 0], this.handleRender();
6231
- let O = M ? H(M).utc().format() : H().utc().format(), p = {
6232
+ this.point = z, this.loading = !0, this.clearTable(), this.tableData.hours = [void 0, void 0, void 0, void 0, void 0, void 0, void 0, void 0], this.handleRender();
6233
+ let O = M ? F(M).utc().format() : F().utc().format(), p = {
6232
6234
  lat: z.lat,
6233
6235
  lng: z.lng,
6234
6236
  datetime: O,
6235
6237
  forecastDays: b ?? 15
6236
6238
  // selfHosted: false
6237
- }, o = await y0.post(`${this.gateway}/api/arc/meteo2/spot/forecast`, p, {
6239
+ }, o = await N0.post(`${this.gateway}/api/arc/meteo2/spot/forecast`, p, {
6238
6240
  headers: {
6239
6241
  Authorization: this.token || this.defaultMeteoToken
6240
6242
  }
6241
6243
  });
6242
- (o == null ? void 0 : o.data.code) === 0 ? (this.meteoData = o == null ? void 0 : o.data.data, this.meteoTime = O, this.initTableData(this.meteoData)) : (this.clearTable(), this.tableData.hours = [void 0, void 0, void 0, void 0, void 0, void 0, void 0, void 0], this.handleRender()), H(this.startTs).diff(H(), "d", !0) < -1 && (O = M ? H(M).add(-14, "d").utc().format() : H().utc().format(), p = {
6244
+ (o == null ? void 0 : o.data.code) === 0 ? (this.meteoData = o == null ? void 0 : o.data.data, this.meteoTime = O, this.loading = !1, this.initTableData(this.meteoData)) : (this.loading = !1, this.tableData.hours = [void 0, void 0, void 0, void 0, void 0, void 0, void 0, void 0], this.handleRender()), F(this.startTs).diff(F(), "d", !0) < -1 && (O = M ? F(M).add(-14, "d").utc().format() : F().utc().format(), p = {
6243
6245
  lat: z.lat,
6244
6246
  lng: z.lng,
6245
6247
  datetime: O,
6246
6248
  forecastDays: 15
6247
- }, o = await y0.post(`${this.gateway}/api/arc/meteo2/spot/forecast`, p, {
6249
+ }, o = await N0.post(`${this.gateway}/api/arc/meteo2/spot/forecast`, p, {
6248
6250
  headers: {
6249
6251
  Authorization: this.token || this.defaultMeteoToken
6250
6252
  }
6251
6253
  }), (o == null ? void 0 : o.data.code) === 0 && (this.historyMeteoData = o == null ? void 0 : o.data.data));
6252
6254
  },
6253
6255
  initTableData(z) {
6254
- var b, O, p, o, e, t, q, r, a, i, L, n, h, u, d, m, R, X, x, g, U, y, C, Z, Y, i0, L0, R0, r0, f0, O0, h0, m0, d0, n0, W0, N0, s0, k, z0, t0, E, p0, l0;
6255
- this.clearTable(), this.currentHourData = ((b = D0.pickHourly(z, this.ts ? H(this.ts) : H())) == null ? void 0 : b[0]) || {}, this.positionGmt = (p = (O = z == null ? void 0 : z.weather) == null ? void 0 : O[0]) == null ? void 0 : p.timezone, this.localDate = (e = (o = _0(this.ts)) == null ? void 0 : o.tz(this.positionGmt)) == null ? void 0 : e.format("MMM-DD/HHmm[LT]");
6256
- const M = document.getElementById("meteoMainBox");
6257
- if (((q = (t = this.currentHourData) == null ? void 0 : t.weather) == null ? void 0 : q.code) === 0 && ((a = (r = this.currentHourData) == null ? void 0 : r.weather) == null ? void 0 : a.isDay) === 0)
6258
- M.className = "main-box night-bg";
6259
- else {
6260
- const c0 = (L = (i = this.currentHourData) == null ? void 0 : i.weather) == null ? void 0 : L.bg;
6261
- c0 ? (M.className = "main-box font-color-white", M.style.backgroundImage = `url(${c0})`, (c0 === "https://osshz.idmwx.com/asset/weather/bg2.png" || c0 === "https://osshz.idmwx.com/asset/weather/bg5.png") && (M.style.backgroundPosition = "right bottom")) : M.className = "main-box day-bg";
6262
- }
6263
- for (let c0 = 0; c0 < 8; c0++) {
6264
- const u0 = _0(this.ts).tz(this.positionGmt).add(3 * c0, "h").format();
6265
- this.tableData.hours.push(u0);
6266
- const B = ((n = D0.pickHourly(z, u0)) == null ? void 0 : n[0]) || {};
6267
- this.tableData.weatherUrls.push((h = B == null ? void 0 : B.weather) == null ? void 0 : h.url), this.tableData.weatherNames.push(((u = B == null ? void 0 : B.weather) == null ? void 0 : u.name) ?? "-"), this.tableData.temp.push(this.roundPrecision((d = B == null ? void 0 : B.weather) == null ? void 0 : d.temp, 0) ?? "-"), this.tableData.precipProbability.push(this.roundPrecision((R = (m = B == null ? void 0 : B.weather) == null ? void 0 : m.precip) == null ? void 0 : R.probability, 0) ?? "-"), this.tableData.precip1h.push(this.roundPrecision((x = (X = B == null ? void 0 : B.weather) == null ? void 0 : X.precip) == null ? void 0 : x.sum, 0) ?? "-"), this.tableData.visibility.push(this.roundPrecision((g = B == null ? void 0 : B.weather) == null ? void 0 : g.visibility, 0) ?? "-"), this.tableData.windSpeed.push(this.roundPrecision((y = (U = B == null ? void 0 : B.weather) == null ? void 0 : U.wind) == null ? void 0 : y.kts, 1) ?? "-"), this.tableData.windDir.push((Z = (C = B == null ? void 0 : B.weather) == null ? void 0 : C.wind) == null ? void 0 : Z.bearing), this.tableData.windGust.push(this.roundPrecision((i0 = (Y = B == null ? void 0 : B.weather) == null ? void 0 : Y.wind) == null ? void 0 : i0.gusts, 1) ?? "-"), this.tableData.sigwaveHeight.push(this.roundPrecision((R0 = (L0 = B == null ? void 0 : B.wave) == null ? void 0 : L0.sig) == null ? void 0 : R0.height, 1) ?? "-"), this.tableData.sigwaveDir.push((f0 = (r0 = B == null ? void 0 : B.wave) == null ? void 0 : r0.sig) == null ? void 0 : f0.bearing), this.tableData.windwaveHeight.push(this.roundPrecision((h0 = (O0 = B == null ? void 0 : B.wave) == null ? void 0 : O0.wd) == null ? void 0 : h0.height, 1) ?? "-"), this.tableData.windwaveDir.push((d0 = (m0 = B == null ? void 0 : B.wave) == null ? void 0 : m0.wd) == null ? void 0 : d0.bearing), this.tableData.windwavePeriod.push(this.roundPrecision((W0 = (n0 = B == null ? void 0 : B.wave) == null ? void 0 : n0.wd) == null ? void 0 : W0.period, 1) ?? "-"), this.tableData.swellHeight.push(this.roundPrecision((s0 = (N0 = B == null ? void 0 : B.wave) == null ? void 0 : N0.swell) == null ? void 0 : s0.height, 1) ?? "-"), this.tableData.swellDir.push((z0 = (k = B == null ? void 0 : B.wave) == null ? void 0 : k.swell) == null ? void 0 : z0.bearing), this.tableData.swellPeriod.push(this.roundPrecision((E = (t0 = B == null ? void 0 : B.wave) == null ? void 0 : t0.swell) == null ? void 0 : E.period, 1) ?? "-"), this.tableData.currentSpeed.push(this.roundPrecision((p0 = B == null ? void 0 : B.current) == null ? void 0 : p0.speed, 1) ?? "-"), this.tableData.currentDir.push((l0 = B == null ? void 0 : B.current) == null ? void 0 : l0.bearing), this.tableData.seaLevel.push(this.roundPrecision(B == null ? void 0 : B.height, 1) ?? "-"), this.tableData.seaTemp.push(this.roundPrecision(B == null ? void 0 : B.sst, 0) ?? "-");
6268
- }
6256
+ var M, b, O, p, o, A, t;
6257
+ this.clearTable(), this.currentHourData = ((M = k0.pickHourly(z, this.ts ? F(this.ts) : F())) == null ? void 0 : M[0]) || {}, this.positionGmt = (O = (b = z == null ? void 0 : z.weather) == null ? void 0 : b[0]) == null ? void 0 : O.timezone, this.positionOffset = (o = (p = z == null ? void 0 : z.weather) == null ? void 0 : p[0]) == null ? void 0 : o.offset, this.localDate = (t = (A = E0(this.ts)) == null ? void 0 : A.tz(this.positionGmt)) == null ? void 0 : t.format("MMM-DD/HHmm[LT]"), this.$nextTick(() => {
6258
+ var n, a, r, L, d, h, u, s, m, R, y, T, N, H, K, V, $, g, E, n0, d0, i0, L0, O0, h0, m0, s0, r0, W0, B0, l0, P, z0, t0, I, p0, f0, u0, R0;
6259
+ const q = document.getElementById("meteoMainBox");
6260
+ if (q.className = "main-box", q.style.backgroundImage = null, q.style.backgroundPosition = "top left", ((a = (n = this.currentHourData) == null ? void 0 : n.weather) == null ? void 0 : a.code) === 0 && ((L = (r = this.currentHourData) == null ? void 0 : r.weather) == null ? void 0 : L.isDay) === 0)
6261
+ q.className = "main-box night-bg";
6262
+ else {
6263
+ const c0 = (h = (d = this.currentHourData) == null ? void 0 : d.weather) == null ? void 0 : h.bg;
6264
+ c0 ? (q.className = "main-box font-color-white", q.style.backgroundImage = `url(${c0})`, (c0 === "https://osshz.idmwx.com/asset/weather/bg2.png" || c0 === "https://osshz.idmwx.com/asset/weather/bg5.png") && (q.style.backgroundPosition = "right bottom")) : q.className = "main-box day-bg";
6265
+ }
6266
+ for (let c0 = 0; c0 < 8; c0++) {
6267
+ const e = E0(this.ts).tz(this.positionGmt).add(3 * c0, "h").format();
6268
+ this.tableData.hours.push(e);
6269
+ const i = ((u = k0.pickHourly(z, e)) == null ? void 0 : u[0]) || {};
6270
+ this.tableData.temp.push(this.roundPrecision((s = i == null ? void 0 : i.weather) == null ? void 0 : s.temp, 0) ?? "-"), this.tableData.precipProbability.push(this.roundPrecision((R = (m = i == null ? void 0 : i.weather) == null ? void 0 : m.precip) == null ? void 0 : R.probability, 0) ?? "-"), this.tableData.precip1h.push(this.roundPrecision((T = (y = i == null ? void 0 : i.weather) == null ? void 0 : y.precip) == null ? void 0 : T.sum, 0) ?? "-"), this.tableData.visibility.push(this.roundPrecision((N = i == null ? void 0 : i.weather) == null ? void 0 : N.visibility, 0) ?? "-"), this.tableData.windSpeed.push(this.roundPrecision((K = (H = i == null ? void 0 : i.weather) == null ? void 0 : H.wind) == null ? void 0 : K.kts, 1) ?? "-"), this.tableData.windDir.push(($ = (V = i == null ? void 0 : i.weather) == null ? void 0 : V.wind) == null ? void 0 : $.bearing), this.tableData.windGust.push(this.roundPrecision((E = (g = i == null ? void 0 : i.weather) == null ? void 0 : g.wind) == null ? void 0 : E.gusts, 1) ?? "-"), this.tableData.sigwaveHeight.push(this.roundPrecision((d0 = (n0 = i == null ? void 0 : i.wave) == null ? void 0 : n0.sig) == null ? void 0 : d0.height, 1) ?? "-"), this.tableData.sigwaveDir.push((L0 = (i0 = i == null ? void 0 : i.wave) == null ? void 0 : i0.sig) == null ? void 0 : L0.bearing), this.tableData.windwaveHeight.push(this.roundPrecision((h0 = (O0 = i == null ? void 0 : i.wave) == null ? void 0 : O0.wd) == null ? void 0 : h0.height, 1) ?? "-"), this.tableData.windwaveDir.push((s0 = (m0 = i == null ? void 0 : i.wave) == null ? void 0 : m0.wd) == null ? void 0 : s0.bearing), this.tableData.windwavePeriod.push(this.roundPrecision((W0 = (r0 = i == null ? void 0 : i.wave) == null ? void 0 : r0.wd) == null ? void 0 : W0.period, 1) ?? "-"), this.tableData.swellHeight.push(this.roundPrecision((l0 = (B0 = i == null ? void 0 : i.wave) == null ? void 0 : B0.swell) == null ? void 0 : l0.height, 1) ?? "-"), this.tableData.swellDir.push((z0 = (P = i == null ? void 0 : i.wave) == null ? void 0 : P.swell) == null ? void 0 : z0.bearing), this.tableData.swellPeriod.push(this.roundPrecision((I = (t0 = i == null ? void 0 : i.wave) == null ? void 0 : t0.swell) == null ? void 0 : I.period, 1) ?? "-"), this.tableData.currentSpeed.push(this.roundPrecision((p0 = i == null ? void 0 : i.current) == null ? void 0 : p0.speed, 1) ?? "-"), this.tableData.currentDir.push((f0 = i == null ? void 0 : i.current) == null ? void 0 : f0.bearing), this.tableData.seaLevel.push(this.roundPrecision(i == null ? void 0 : i.height, 1) ?? "-"), this.tableData.seaTemp.push(this.roundPrecision(i == null ? void 0 : i.sst, 0) ?? "-"), this.tableData.weatherUrls.push((u0 = i == null ? void 0 : i.weather) == null ? void 0 : u0.url), this.tableData.weatherNames.push(((R0 = i == null ? void 0 : i.weather) == null ? void 0 : R0.name) ?? "-");
6271
+ }
6272
+ });
6269
6273
  },
6270
6274
  clearTable() {
6271
- const z = document.getElementById("meteoMainBox");
6272
- z.className = "main-box", z.style.backgroundImage = null, z.style.backgroundPosition = "top left", this.currentHourData = {}, this.positionGmt = void 0, this.localDate = void 0, this.tableData = {
6275
+ this.currentHourData = {}, this.positionGmt = void 0, this.localDate = void 0, this.tableData = {
6273
6276
  hours: [],
6274
6277
  weatherUrls: [],
6275
6278
  weatherNames: [],
@@ -6318,107 +6321,115 @@ const pM = {
6318
6321
  this.$nextTick(() => {
6319
6322
  var M;
6320
6323
  const z = document.getElementById("point-meteo");
6321
- this.point && (this.meteoMarker ? (M = this.meteoMarker) == null || M.setLngLat([this.point.lng, this.point.lat]) : this.meteoMarker = new g0.Marker(z).setLngLat([this.point.lng, this.point.lat]).addTo(this.map));
6324
+ this.point && (this.meteoMarker ? (M = this.meteoMarker) == null || M.setLngLat([this.point.lng, this.point.lat]) : this.meteoMarker = new w0.Marker(z).setLngLat([this.point.lng, this.point.lat]).addTo(this.map));
6322
6325
  });
6323
6326
  }
6324
6327
  }
6325
- }, OM = {
6328
+ }, oM = {
6326
6329
  id: "point-meteo",
6327
6330
  class: "point-meteo"
6328
- }, oM = { class: "meteo-box" }, cM = { class: "header-box flex-between" }, eM = { class: "flex-center" }, AM = { class: "lnglat" }, tM = {
6331
+ }, cM = { class: "meteo-box" }, AM = { class: "header-box flex-between" }, eM = { class: "flex-center" }, tM = { class: "lnglat" }, aM = {
6332
+ key: 0,
6329
6333
  class: "main-box",
6330
6334
  id: "meteoMainBox"
6331
- }, aM = { class: "summary-row flex-between" }, qM = { class: "summary flex-center" }, iM = ["src"], rM = {
6335
+ }, qM = { class: "summary-row flex-between" }, iM = { class: "summary flex-center" }, rM = ["src"], nM = {
6332
6336
  key: 1,
6333
6337
  class: "icon flex-center",
6334
6338
  style: { "margin-right": "5px" }
6335
- }, nM = { class: "temp" }, dM = { class: "des info" }, WM = { class: "flex-start" }, sM = { class: "flex-start" }, lM = { class: "flex-start" }, fM = { class: "date flex-col-center-end" }, uM = { class: "" }, LM = { class: "" }, RM = { class: "detail-box" }, hM = { class: "menu-header flex-start" }, mM = { class: "basic-table" }, NM = { class: "hour" }, BM = { class: "hour" }, yM = { class: "icon" }, gM = ["src"], XM = { class: "text" }, vM = { class: "text" }, TM = { class: "text" }, wM = { class: "text" }, CM = { class: "wave-current-table" }, _M = { class: "hour" }, xM = { class: "hour" }, SM = { class: "icon" }, EM = ["src"], PM = { class: "text" }, kM = { class: "text" }, DM = { class: "text" }, IM = { class: "text" }, jM = { class: "sea-table" }, UM = { class: "hour" }, FM = { class: "hour" }, HM = { class: "icon" }, GM = ["src"], VM = { class: "text" }, KM = { class: "text" };
6336
- function JM(z, M, b, O, p, o) {
6337
- var r, a, i, L, n, h, u, d, m, R, X, x, g, U;
6338
- const e = S("LocationFilled"), t = S("ElIcon"), q = S("ElTooltip");
6339
- return l(), f("div", null, [
6340
- X0(c("div", OM, [
6341
- c("div", oM, [
6342
- c("div", cM, [
6339
+ }, dM = { class: "temp" }, sM = { class: "des info" }, WM = { class: "flex-start" }, lM = { class: "flex-start" }, fM = { class: "flex-start" }, uM = { class: "date flex-col-center-end" }, LM = { class: "" }, RM = { class: "" }, hM = { class: "detail-box" }, mM = { class: "menu-header flex-start" }, BM = { class: "basic-table" }, gM = { class: "hour" }, NM = { class: "hour" }, yM = { class: "icon" }, XM = ["src"], wM = { class: "text" }, CM = { class: "text" }, vM = { class: "text" }, TM = { class: "text" }, EM = { class: "wave-current-table" }, xM = { class: "hour" }, IM = { class: "hour" }, DM = { class: "icon" }, PM = ["src"], SM = { class: "text" }, kM = { class: "text" }, QM = { class: "text" }, HM = { class: "text" }, _M = { class: "sea-table" }, jM = { class: "hour" }, FM = { class: "hour" }, GM = { class: "icon" }, UM = ["src"], KM = { class: "text" }, JM = { class: "text" }, YM = { class: "text" }, VM = { class: "text" }, ZM = {
6340
+ key: 1,
6341
+ class: "main-box flex-center"
6342
+ };
6343
+ function $M(z, M, b, O, p, o) {
6344
+ var n, a, r, L, d, h, u, s, m, R, y, T, N, H, K, V, $;
6345
+ const A = x("LocationFilled"), t = x("ElIcon"), q = x("ElTooltip");
6346
+ return W(), l("div", null, [
6347
+ y0(c("div", oM, [
6348
+ c("div", cM, [
6349
+ c("div", AM, [
6343
6350
  c("div", eM, [
6344
- T(t, { size: "22" }, {
6345
- default: A0(() => [
6346
- T(e)
6351
+ w(t, { size: "22" }, {
6352
+ default: e0(() => [
6353
+ w(A)
6347
6354
  ]),
6348
6355
  _: 1
6349
6356
  }),
6350
- c("div", AM, _(o.computeLat((r = p.point) == null ? void 0 : r.lat)) + "," + _(o.computeLng((a = p.point) == null ? void 0 : a.lng)), 1)
6357
+ c("div", tM, v(o.computeLat((n = p.point) == null ? void 0 : n.lat)) + "," + v(o.computeLng((a = p.point) == null ? void 0 : a.lng)), 1)
6351
6358
  ]),
6352
6359
  c("div", {
6353
6360
  class: "iconfont close",
6354
- onClick: M[0] || (M[0] = (y) => p.showMeteo = !1)
6361
+ onClick: M[0] || (M[0] = (g) => p.showMeteo = !1)
6355
6362
  }, "")
6356
6363
  ]),
6357
- c("div", tM, [
6358
- c("div", aM, [
6359
- c("div", qM, [
6360
- T(q, {
6364
+ p.loading ? (W(), l("div", ZM, M[30] || (M[30] = [
6365
+ c("img", { src: pM }, null, -1)
6366
+ ]))) : (W(), l("div", aM, [
6367
+ y0(c("div", qM, [
6368
+ c("div", iM, [
6369
+ w(q, {
6361
6370
  placement: "top",
6362
6371
  effect: "light",
6363
- content: (L = (i = p.currentHourData) == null ? void 0 : i.weather) == null ? void 0 : L.name,
6372
+ content: (L = (r = p.currentHourData) == null ? void 0 : r.weather) == null ? void 0 : L.name,
6364
6373
  "show-after": 1e3
6365
6374
  }, {
6366
- default: A0(() => {
6367
- var y, C, Z, Y;
6375
+ default: e0(() => {
6376
+ var g, E, n0, d0;
6368
6377
  return [
6369
- (C = (y = p.currentHourData) == null ? void 0 : y.weather) != null && C.url ? (l(), f("img", {
6378
+ (E = (g = p.currentHourData) == null ? void 0 : g.weather) != null && E.url ? (W(), l("img", {
6370
6379
  key: 0,
6371
6380
  class: "iconfont icon",
6372
6381
  style: { "margin-right": "5px" },
6373
- src: (Y = (Z = p.currentHourData) == null ? void 0 : Z.weather) == null ? void 0 : Y.url
6374
- }, null, 8, iM)) : (l(), f("span", rM))
6382
+ src: (d0 = (n0 = p.currentHourData) == null ? void 0 : n0.weather) == null ? void 0 : d0.url
6383
+ }, null, 8, rM)) : (W(), l("span", nM))
6375
6384
  ];
6376
6385
  }),
6377
6386
  _: 1
6378
6387
  }, 8, ["content"]),
6379
- c("div", nM, [
6388
+ c("div", dM, [
6380
6389
  c("div", null, [
6381
- b0(_(o.roundPrecision((h = (n = p.currentHourData) == null ? void 0 : n.weather) == null ? void 0 : h.temp, 0)), 1),
6390
+ b0(v(o.roundPrecision((h = (d = p.currentHourData) == null ? void 0 : d.weather) == null ? void 0 : h.temp, 0)), 1),
6382
6391
  M[4] || (M[4] = c("span", { style: { "font-size": "14px" } }, "°C", -1))
6383
6392
  ])
6384
6393
  ]),
6385
- c("div", dM, [
6394
+ c("div", sM, [
6386
6395
  c("div", WM, [
6387
6396
  M[5] || (M[5] = c("label", null, "Precip : ", -1)),
6388
- c("span", null, _(o.roundPrecision((m = (d = (u = p.currentHourData) == null ? void 0 : u.weather) == null ? void 0 : d.precip) == null ? void 0 : m.sum, 0)) + " mm", 1)
6397
+ c("span", null, v(o.roundPrecision((m = (s = (u = p.currentHourData) == null ? void 0 : u.weather) == null ? void 0 : s.precip) == null ? void 0 : m.sum, 0)) + " mm", 1)
6389
6398
  ]),
6390
- c("div", sM, [
6399
+ c("div", lM, [
6391
6400
  M[6] || (M[6] = c("label", null, "Visibility : ", -1)),
6392
- c("span", null, _(o.roundPrecision((X = (R = p.currentHourData) == null ? void 0 : R.weather) == null ? void 0 : X.visibility, 0)) + " nm", 1)
6401
+ c("span", null, v(o.roundPrecision((y = (R = p.currentHourData) == null ? void 0 : R.weather) == null ? void 0 : y.visibility, 0)) + " nm", 1)
6393
6402
  ]),
6394
- c("div", lM, [
6403
+ c("div", fM, [
6395
6404
  M[7] || (M[7] = c("label", null, "Wind : ", -1)),
6396
- c("span", null, _(o.roundPrecision((U = (g = (x = p.currentHourData) == null ? void 0 : x.weather) == null ? void 0 : g.wind) == null ? void 0 : U.kts, 1)) + " kts", 1)
6405
+ c("span", null, v(o.roundPrecision((H = (N = (T = p.currentHourData) == null ? void 0 : T.weather) == null ? void 0 : N.wind) == null ? void 0 : H.kts, 1)) + " kts", 1)
6397
6406
  ])
6398
6407
  ])
6399
6408
  ]),
6400
- c("div", fM, [
6401
- c("div", uM, _(p.localDate), 1),
6402
- c("div", LM, _(p.positionGmt), 1)
6409
+ c("div", uM, [
6410
+ c("div", LM, v(p.localDate), 1),
6411
+ c("div", RM, "UTC " + v(p.positionOffset), 1)
6403
6412
  ])
6413
+ ], 512), [
6414
+ [X0, (K = p.currentHourData) == null ? void 0 : K.weather]
6404
6415
  ]),
6405
- c("div", RM, [
6406
- c("div", hM, [
6416
+ y0(c("div", hM, [
6417
+ c("div", mM, [
6407
6418
  c("div", {
6408
- class: J(["menu-item", p.activeIndex === 1 ? "active" : ""]),
6409
- onClick: M[1] || (M[1] = C0((y) => o.handleSelectTab(1), ["prevent"]))
6419
+ class: Y(["menu-item", p.activeIndex === 1 ? "active" : ""]),
6420
+ onClick: M[1] || (M[1] = T0((g) => o.handleSelectTab(1), ["prevent"]))
6410
6421
  }, "Basis", 2),
6411
6422
  c("div", {
6412
- class: J(["menu-item", p.activeIndex === 2 ? "active" : ""]),
6413
- onClick: M[2] || (M[2] = C0((y) => o.handleSelectTab(2), ["prevent"]))
6423
+ class: Y(["menu-item", p.activeIndex === 2 ? "active" : ""]),
6424
+ onClick: M[2] || (M[2] = T0((g) => o.handleSelectTab(2), ["prevent"]))
6414
6425
  }, "Wave & Current", 2),
6415
6426
  c("div", {
6416
- class: J(["menu-item", p.activeIndex === 3 ? "active" : ""]),
6417
- onClick: M[3] || (M[3] = C0((y) => o.handleSelectTab(3), ["prevent"]))
6427
+ class: Y(["menu-item", p.activeIndex === 3 ? "active" : ""]),
6428
+ onClick: M[3] || (M[3] = T0((g) => o.handleSelectTab(3), ["prevent"]))
6418
6429
  }, "Sea Surface", 2)
6419
6430
  ]),
6420
- X0(c("table", mM, [
6421
- c("tr", NM, [
6431
+ y0(c("table", BM, [
6432
+ c("tr", gM, [
6422
6433
  M[8] || (M[8] = c("th", {
6423
6434
  rowspan: "1",
6424
6435
  colspan: "1",
@@ -6427,13 +6438,13 @@ function JM(z, M, b, O, p, o) {
6427
6438
  b0("Hours"),
6428
6439
  c("span", { class: "unit" }, "(LT)")
6429
6440
  ], -1)),
6430
- (l(!0), f(K, null, $(p.tableData.hours, (y) => (l(), f("th", {
6441
+ (W(!0), l(j, null, U(p.tableData.hours, (g) => (W(), l("th", {
6431
6442
  rowspan: "1",
6432
6443
  colspan: "1",
6433
6444
  key: Math.random()
6434
- }, _(o.computeHourL(y)), 1))), 128))
6445
+ }, v(o.computeHourL(g)), 1))), 128))
6435
6446
  ]),
6436
- c("tr", BM, [
6447
+ c("tr", NM, [
6437
6448
  M[9] || (M[9] = c("th", {
6438
6449
  rowspan: "1",
6439
6450
  colspan: "1",
@@ -6442,11 +6453,11 @@ function JM(z, M, b, O, p, o) {
6442
6453
  b0("UTC"),
6443
6454
  c("span", { class: "unit" })
6444
6455
  ], -1)),
6445
- (l(!0), f(K, null, $(p.tableData.hours, (y) => (l(), f("th", {
6456
+ (W(!0), l(j, null, U(p.tableData.hours, (g) => (W(), l("th", {
6446
6457
  rowspan: "1",
6447
6458
  colspan: "1",
6448
6459
  key: Math.random()
6449
- }, _(o.computeHourZ(y)), 1))), 128))
6460
+ }, v(o.computeHourZ(g)), 1))), 128))
6450
6461
  ]),
6451
6462
  c("tr", yM, [
6452
6463
  M[10] || (M[10] = c("th", {
@@ -6454,29 +6465,29 @@ function JM(z, M, b, O, p, o) {
6454
6465
  colspan: "1",
6455
6466
  class: "tr-title"
6456
6467
  }, null, -1)),
6457
- (l(!0), f(K, null, $(p.tableData.weatherUrls, (y, C) => (l(), f("th", {
6468
+ (W(!0), l(j, null, U(p.tableData.weatherUrls, (g, E) => (W(), l("th", {
6458
6469
  rowspan: "1",
6459
6470
  colspan: "1",
6460
6471
  key: Math.random()
6461
6472
  }, [
6462
- T(q, {
6473
+ w(q, {
6463
6474
  placement: "top",
6464
6475
  effect: "light",
6465
- content: p.tableData.weatherNames[C],
6476
+ content: p.tableData.weatherNames[E],
6466
6477
  "show-after": 500
6467
6478
  }, {
6468
- default: A0(() => [
6469
- y ? (l(), f("img", {
6479
+ default: e0(() => [
6480
+ g ? (W(), l("img", {
6470
6481
  key: 0,
6471
6482
  class: "iconfont weather-icon",
6472
- src: y
6473
- }, null, 8, gM)) : F("", !0)
6483
+ src: g
6484
+ }, null, 8, XM)) : _("", !0)
6474
6485
  ]),
6475
6486
  _: 2
6476
6487
  }, 1032, ["content"])
6477
6488
  ]))), 128))
6478
6489
  ]),
6479
- c("tr", XM, [
6490
+ c("tr", wM, [
6480
6491
  M[11] || (M[11] = c("td", {
6481
6492
  rowspan: "1",
6482
6493
  colspan: "1",
@@ -6485,13 +6496,13 @@ function JM(z, M, b, O, p, o) {
6485
6496
  b0("Temp"),
6486
6497
  c("span", { class: "unit" }, "°C")
6487
6498
  ], -1)),
6488
- (l(!0), f(K, null, $(p.tableData.temp, (y) => (l(), f("td", {
6499
+ (W(!0), l(j, null, U(p.tableData.temp, (g) => (W(), l("td", {
6489
6500
  rowspan: "1",
6490
6501
  colspan: "1",
6491
6502
  key: Math.random()
6492
- }, _(y), 1))), 128))
6503
+ }, v(g), 1))), 128))
6493
6504
  ]),
6494
- c("tr", vM, [
6505
+ c("tr", CM, [
6495
6506
  M[12] || (M[12] = c("td", {
6496
6507
  rowspan: "1",
6497
6508
  colspan: "1",
@@ -6500,13 +6511,13 @@ function JM(z, M, b, O, p, o) {
6500
6511
  b0("Precip"),
6501
6512
  c("span", { class: "unit" }, "mm")
6502
6513
  ], -1)),
6503
- (l(!0), f(K, null, $(p.tableData.precip1h, (y) => (l(), f("td", {
6514
+ (W(!0), l(j, null, U(p.tableData.precip1h, (g) => (W(), l("td", {
6504
6515
  rowspan: "1",
6505
6516
  colspan: "1",
6506
6517
  key: Math.random()
6507
- }, _(y), 1))), 128))
6518
+ }, v(g), 1))), 128))
6508
6519
  ]),
6509
- c("tr", TM, [
6520
+ c("tr", vM, [
6510
6521
  M[13] || (M[13] = c("td", {
6511
6522
  rowspan: "1",
6512
6523
  colspan: "1",
@@ -6515,13 +6526,13 @@ function JM(z, M, b, O, p, o) {
6515
6526
  b0("Visibility"),
6516
6527
  c("span", { class: "unit" }, "nm")
6517
6528
  ], -1)),
6518
- (l(!0), f(K, null, $(p.tableData.visibility, (y) => (l(), f("td", {
6529
+ (W(!0), l(j, null, U(p.tableData.visibility, (g) => (W(), l("td", {
6519
6530
  rowspan: "1",
6520
6531
  colspan: "1",
6521
6532
  key: Math.random()
6522
- }, _(y), 1))), 128))
6533
+ }, v(g), 1))), 128))
6523
6534
  ]),
6524
- c("tr", wM, [
6535
+ c("tr", TM, [
6525
6536
  M[14] || (M[14] = c("td", {
6526
6537
  rowspan: "1",
6527
6538
  colspan: "1",
@@ -6530,24 +6541,24 @@ function JM(z, M, b, O, p, o) {
6530
6541
  b0("Wind"),
6531
6542
  c("span", { class: "unit" }, "kts")
6532
6543
  ], -1)),
6533
- (l(!0), f(K, null, $(p.tableData.windSpeed, (y, C) => (l(), f("td", {
6544
+ (W(!0), l(j, null, U(p.tableData.windSpeed, (g, E) => (W(), l("td", {
6534
6545
  rowspan: "1",
6535
6546
  colspan: "1",
6536
6547
  key: Math.random()
6537
6548
  }, [
6538
- isNaN(p.tableData.windDir[C]) ? F("", !0) : (l(), f("span", {
6549
+ isNaN(p.tableData.windDir[E]) ? _("", !0) : (W(), l("span", {
6539
6550
  key: 0,
6540
6551
  class: "iconfont icon blue",
6541
- style: o0({ display: "inline-block", transform: `rotate(${p.tableData.windDir[C]}deg)` })
6552
+ style: o0({ display: "inline-block", transform: `rotate(${p.tableData.windDir[E]}deg)` })
6542
6553
  }, "", 4)),
6543
- c("span", null, _(y), 1)
6554
+ c("span", null, v(g), 1)
6544
6555
  ]))), 128))
6545
6556
  ])
6546
6557
  ], 512), [
6547
- [v0, p.activeIndex === 1]
6558
+ [X0, p.activeIndex === 1]
6548
6559
  ]),
6549
- X0(c("table", CM, [
6550
- c("tr", _M, [
6560
+ y0(c("table", EM, [
6561
+ c("tr", xM, [
6551
6562
  M[15] || (M[15] = c("th", {
6552
6563
  rowspan: "1",
6553
6564
  colspan: "1",
@@ -6556,13 +6567,13 @@ function JM(z, M, b, O, p, o) {
6556
6567
  b0("Hours"),
6557
6568
  c("span", { class: "unit" }, "(LT)")
6558
6569
  ], -1)),
6559
- (l(!0), f(K, null, $(p.tableData.hours, (y) => (l(), f("th", {
6570
+ (W(!0), l(j, null, U(p.tableData.hours, (g) => (W(), l("th", {
6560
6571
  rowspan: "1",
6561
6572
  colspan: "1",
6562
6573
  key: Math.random()
6563
- }, _(o.computeHourL(y)), 1))), 128))
6574
+ }, v(o.computeHourL(g)), 1))), 128))
6564
6575
  ]),
6565
- c("tr", xM, [
6576
+ c("tr", IM, [
6566
6577
  M[16] || (M[16] = c("th", {
6567
6578
  rowspan: "1",
6568
6579
  colspan: "1",
@@ -6571,40 +6582,40 @@ function JM(z, M, b, O, p, o) {
6571
6582
  b0("UTC"),
6572
6583
  c("span", { class: "unit" })
6573
6584
  ], -1)),
6574
- (l(!0), f(K, null, $(p.tableData.hours, (y) => (l(), f("th", {
6585
+ (W(!0), l(j, null, U(p.tableData.hours, (g) => (W(), l("th", {
6575
6586
  rowspan: "1",
6576
6587
  colspan: "1",
6577
6588
  key: Math.random()
6578
- }, _(o.computeHourZ(y)), 1))), 128))
6589
+ }, v(o.computeHourZ(g)), 1))), 128))
6579
6590
  ]),
6580
- c("tr", SM, [
6591
+ c("tr", DM, [
6581
6592
  M[17] || (M[17] = c("th", {
6582
6593
  rowspan: "1",
6583
6594
  colspan: "1"
6584
6595
  }, null, -1)),
6585
- (l(!0), f(K, null, $(p.tableData.weatherUrls, (y, C) => (l(), f("th", {
6596
+ (W(!0), l(j, null, U(p.tableData.weatherUrls, (g, E) => (W(), l("th", {
6586
6597
  rowspan: "1",
6587
6598
  colspan: "1",
6588
6599
  key: Math.random()
6589
6600
  }, [
6590
- T(q, {
6601
+ w(q, {
6591
6602
  placement: "top",
6592
6603
  effect: "light",
6593
- content: p.tableData.weatherNames[C],
6604
+ content: p.tableData.weatherNames[E],
6594
6605
  "show-after": 500
6595
6606
  }, {
6596
- default: A0(() => [
6597
- y ? (l(), f("img", {
6607
+ default: e0(() => [
6608
+ g ? (W(), l("img", {
6598
6609
  key: 0,
6599
6610
  class: "iconfont weather-icon",
6600
- src: y
6601
- }, null, 8, EM)) : F("", !0)
6611
+ src: g
6612
+ }, null, 8, PM)) : _("", !0)
6602
6613
  ]),
6603
6614
  _: 2
6604
6615
  }, 1032, ["content"])
6605
6616
  ]))), 128))
6606
6617
  ]),
6607
- c("tr", PM, [
6618
+ c("tr", SM, [
6608
6619
  M[18] || (M[18] = c("td", {
6609
6620
  rowspan: "1",
6610
6621
  colspan: "1",
@@ -6613,17 +6624,17 @@ function JM(z, M, b, O, p, o) {
6613
6624
  b0("Sig Wave"),
6614
6625
  c("span", { class: "unit" }, "m")
6615
6626
  ], -1)),
6616
- (l(!0), f(K, null, $(p.tableData.sigwaveHeight, (y, C) => (l(), f("td", {
6627
+ (W(!0), l(j, null, U(p.tableData.sigwaveHeight, (g, E) => (W(), l("td", {
6617
6628
  rowspan: "1",
6618
6629
  colspan: "1",
6619
6630
  key: Math.random()
6620
6631
  }, [
6621
- isNaN(p.tableData.sigwaveDir[C]) ? F("", !0) : (l(), f("span", {
6632
+ isNaN(p.tableData.sigwaveDir[E]) ? _("", !0) : (W(), l("span", {
6622
6633
  key: 0,
6623
6634
  class: "iconfont icon blue",
6624
- style: o0({ display: "inline-block", transform: `rotate(${p.tableData.sigwaveDir[C]}deg)` })
6635
+ style: o0({ display: "inline-block", transform: `rotate(${p.tableData.sigwaveDir[E]}deg)` })
6625
6636
  }, "", 4)),
6626
- c("span", null, _(y), 1)
6637
+ c("span", null, v(g), 1)
6627
6638
  ]))), 128))
6628
6639
  ]),
6629
6640
  c("tr", kM, [
@@ -6635,20 +6646,20 @@ function JM(z, M, b, O, p, o) {
6635
6646
  b0("Wind Wave"),
6636
6647
  c("span", { class: "unit" }, "m")
6637
6648
  ], -1)),
6638
- (l(!0), f(K, null, $(p.tableData.windwaveHeight, (y, C) => (l(), f("td", {
6649
+ (W(!0), l(j, null, U(p.tableData.windwaveHeight, (g, E) => (W(), l("td", {
6639
6650
  rowspan: "1",
6640
6651
  colspan: "1",
6641
6652
  key: Math.random()
6642
6653
  }, [
6643
- isNaN(p.tableData.sigwaveDir[C]) ? F("", !0) : (l(), f("span", {
6654
+ isNaN(p.tableData.sigwaveDir[E]) ? _("", !0) : (W(), l("span", {
6644
6655
  key: 0,
6645
6656
  class: "iconfont icon orange",
6646
- style: o0({ display: "inline-block", transform: `rotate(${p.tableData.sigwaveDir[C]}deg)` })
6657
+ style: o0({ display: "inline-block", transform: `rotate(${p.tableData.sigwaveDir[E]}deg)` })
6647
6658
  }, "", 4)),
6648
- c("span", null, _(y), 1)
6659
+ c("span", null, v(g), 1)
6649
6660
  ]))), 128))
6650
6661
  ]),
6651
- c("tr", DM, [
6662
+ c("tr", QM, [
6652
6663
  M[20] || (M[20] = c("td", {
6653
6664
  rowspan: "1",
6654
6665
  colspan: "1",
@@ -6657,20 +6668,20 @@ function JM(z, M, b, O, p, o) {
6657
6668
  b0("Swell"),
6658
6669
  c("span", { class: "unit" }, "m")
6659
6670
  ], -1)),
6660
- (l(!0), f(K, null, $(p.tableData.swellHeight, (y, C) => (l(), f("td", {
6671
+ (W(!0), l(j, null, U(p.tableData.swellHeight, (g, E) => (W(), l("td", {
6661
6672
  rowspan: "1",
6662
6673
  colspan: "1",
6663
6674
  key: Math.random()
6664
6675
  }, [
6665
- isNaN(p.tableData.swellDir[C]) ? F("", !0) : (l(), f("span", {
6676
+ isNaN(p.tableData.swellDir[E]) ? _("", !0) : (W(), l("span", {
6666
6677
  key: 0,
6667
6678
  class: "iconfont icon orange",
6668
- style: o0({ display: "inline-block", transform: `rotate(${p.tableData.swellDir[C]}deg)` })
6679
+ style: o0({ display: "inline-block", transform: `rotate(${p.tableData.swellDir[E]}deg)` })
6669
6680
  }, "", 4)),
6670
- c("span", null, _(y), 1)
6681
+ c("span", null, v(g), 1)
6671
6682
  ]))), 128))
6672
6683
  ]),
6673
- c("tr", IM, [
6684
+ c("tr", HM, [
6674
6685
  M[21] || (M[21] = c("td", {
6675
6686
  rowspan: "1",
6676
6687
  colspan: "1",
@@ -6679,25 +6690,25 @@ function JM(z, M, b, O, p, o) {
6679
6690
  b0("Current"),
6680
6691
  c("span", { class: "unit" }, "kts")
6681
6692
  ], -1)),
6682
- (l(!0), f(K, null, $(p.tableData.currentSpeed, (y, C) => (l(), f("td", {
6693
+ (W(!0), l(j, null, U(p.tableData.currentSpeed, (g, E) => (W(), l("td", {
6683
6694
  rowspan: "1",
6684
6695
  colspan: "1",
6685
6696
  key: Math.random()
6686
6697
  }, [
6687
- isNaN(p.tableData.currentDir[C]) ? F("", !0) : (l(), f("span", {
6698
+ isNaN(p.tableData.currentDir[E]) ? _("", !0) : (W(), l("span", {
6688
6699
  key: 0,
6689
6700
  class: "iconfont icon gray",
6690
6701
  id: "meteoGrayIcon",
6691
- style: o0({ display: "inline-block", transform: `rotate(${p.tableData.currentDir[C]}deg)` })
6702
+ style: o0({ display: "inline-block", transform: `rotate(${p.tableData.currentDir[E]}deg)` })
6692
6703
  }, "", 4)),
6693
- c("span", null, _(y), 1)
6704
+ c("span", null, v(g), 1)
6694
6705
  ]))), 128))
6695
6706
  ])
6696
6707
  ], 512), [
6697
- [v0, p.activeIndex === 2]
6708
+ [X0, p.activeIndex === 2]
6698
6709
  ]),
6699
- X0(c("table", jM, [
6700
- c("tr", UM, [
6710
+ y0(c("table", _M, [
6711
+ c("tr", jM, [
6701
6712
  M[22] || (M[22] = c("th", {
6702
6713
  rowspan: "1",
6703
6714
  colspan: "1",
@@ -6706,11 +6717,11 @@ function JM(z, M, b, O, p, o) {
6706
6717
  b0("Hours"),
6707
6718
  c("span", { class: "unit" }, "(LT)")
6708
6719
  ], -1)),
6709
- (l(!0), f(K, null, $(p.tableData.hours, (y) => (l(), f("th", {
6720
+ (W(!0), l(j, null, U(p.tableData.hours, (g) => (W(), l("th", {
6710
6721
  rowspan: "1",
6711
6722
  colspan: "1",
6712
6723
  key: Math.random()
6713
- }, _(o.computeHourL(y)), 1))), 128))
6724
+ }, v(o.computeHourL(g)), 1))), 128))
6714
6725
  ]),
6715
6726
  c("tr", FM, [
6716
6727
  M[23] || (M[23] = c("th", {
@@ -6721,41 +6732,41 @@ function JM(z, M, b, O, p, o) {
6721
6732
  b0("UTC"),
6722
6733
  c("span", { class: "unit" })
6723
6734
  ], -1)),
6724
- (l(!0), f(K, null, $(p.tableData.hours, (y) => (l(), f("th", {
6735
+ (W(!0), l(j, null, U(p.tableData.hours, (g) => (W(), l("th", {
6725
6736
  rowspan: "1",
6726
6737
  colspan: "1",
6727
6738
  key: Math.random()
6728
- }, _(o.computeHourZ(y)), 1))), 128))
6739
+ }, v(o.computeHourZ(g)), 1))), 128))
6729
6740
  ]),
6730
- c("tr", HM, [
6741
+ c("tr", GM, [
6731
6742
  M[24] || (M[24] = c("th", {
6732
6743
  rowspan: "1",
6733
6744
  colspan: "1",
6734
6745
  class: "tr-title"
6735
6746
  }, null, -1)),
6736
- (l(!0), f(K, null, $(p.tableData.weatherUrls, (y, C) => (l(), f("th", {
6747
+ (W(!0), l(j, null, U(p.tableData.weatherUrls, (g, E) => (W(), l("th", {
6737
6748
  rowspan: "1",
6738
6749
  colspan: "1",
6739
6750
  key: Math.random()
6740
6751
  }, [
6741
- T(q, {
6752
+ w(q, {
6742
6753
  placement: "top",
6743
6754
  effect: "light",
6744
- content: p.tableData.weatherNames[C],
6755
+ content: p.tableData.weatherNames[E],
6745
6756
  "show-after": 500
6746
6757
  }, {
6747
- default: A0(() => [
6748
- y ? (l(), f("img", {
6758
+ default: e0(() => [
6759
+ g ? (W(), l("img", {
6749
6760
  key: 0,
6750
6761
  class: "iconfont weather-icon",
6751
- src: y
6752
- }, null, 8, GM)) : F("", !0)
6762
+ src: g
6763
+ }, null, 8, UM)) : _("", !0)
6753
6764
  ]),
6754
6765
  _: 2
6755
6766
  }, 1032, ["content"])
6756
6767
  ]))), 128))
6757
6768
  ]),
6758
- c("tr", VM, [
6769
+ c("tr", KM, [
6759
6770
  M[25] || (M[25] = c("td", {
6760
6771
  rowspan: "1",
6761
6772
  colspan: "1",
@@ -6764,13 +6775,13 @@ function JM(z, M, b, O, p, o) {
6764
6775
  b0("SeaLevel"),
6765
6776
  c("span", { class: "unit" }, "m")
6766
6777
  ], -1)),
6767
- (l(!0), f(K, null, $(p.tableData.seaLevel, (y) => (l(), f("td", {
6778
+ (W(!0), l(j, null, U(p.tableData.seaLevel, (g) => (W(), l("td", {
6768
6779
  rowspan: "1",
6769
6780
  colspan: "1",
6770
6781
  key: Math.random()
6771
- }, _(y), 1))), 128))
6782
+ }, v(g), 1))), 128))
6772
6783
  ]),
6773
- c("tr", KM, [
6784
+ c("tr", JM, [
6774
6785
  M[26] || (M[26] = c("td", {
6775
6786
  rowspan: "1",
6776
6787
  colspan: "1",
@@ -6779,27 +6790,55 @@ function JM(z, M, b, O, p, o) {
6779
6790
  b0("SeaTemp"),
6780
6791
  c("span", { class: "unit" }, "°C")
6781
6792
  ], -1)),
6782
- (l(!0), f(K, null, $(p.tableData.seaTemp, (y) => (l(), f("td", {
6793
+ (W(!0), l(j, null, U(p.tableData.seaTemp, (g) => (W(), l("td", {
6783
6794
  rowspan: "1",
6784
6795
  colspan: "1",
6785
6796
  key: Math.random()
6786
- }, _(y), 1))), 128))
6797
+ }, v(g), 1))), 128))
6798
+ ]),
6799
+ c("tr", YM, [
6800
+ M[27] || (M[27] = c("td", {
6801
+ rowspan: "1",
6802
+ colspan: "1",
6803
+ class: "tr-title"
6804
+ }, [
6805
+ c("span", { class: "unit" })
6806
+ ], -1)),
6807
+ (W(!0), l(j, null, U(p.tableData.seaTemp, (g) => (W(), l("td", {
6808
+ rowspan: "1",
6809
+ colspan: "1",
6810
+ key: Math.random()
6811
+ }))), 128))
6812
+ ]),
6813
+ c("tr", VM, [
6814
+ M[28] || (M[28] = c("td", {
6815
+ rowspan: "1",
6816
+ colspan: "1",
6817
+ class: "tr-title"
6818
+ }, [
6819
+ c("span", { class: "unit" })
6820
+ ], -1)),
6821
+ (W(!0), l(j, null, U(p.tableData.seaTemp, (g) => (W(), l("td", {
6822
+ rowspan: "1",
6823
+ colspan: "1",
6824
+ key: Math.random()
6825
+ }))), 128))
6787
6826
  ])
6788
6827
  ], 512), [
6789
- [v0, p.activeIndex === 3]
6828
+ [X0, p.activeIndex === 3]
6790
6829
  ])
6791
- ])
6792
- ]),
6793
- M[27] || (M[27] = c("div", { class: "more" }, [
6794
- c("span", { class: "more" }, "More >>")
6795
- ], -1))
6830
+ ], 512), [
6831
+ [X0, (($ = (V = p.tableData) == null ? void 0 : V.hours) == null ? void 0 : $.length) > 0]
6832
+ ]),
6833
+ M[29] || (M[29] = c("div", { class: "more" }, "More >>", -1))
6834
+ ]))
6796
6835
  ])
6797
6836
  ], 512), [
6798
- [v0, p.showMeteo]
6837
+ [X0, p.showMeteo]
6799
6838
  ])
6800
6839
  ]);
6801
6840
  }
6802
- const QM = /* @__PURE__ */ I(pM, [["render", JM], ["__scopeId", "data-v-f1da5f57"]]), $M = {
6841
+ const Mb = /* @__PURE__ */ k(OM, [["render", $M], ["__scopeId", "data-v-afd8d681"]]), bb = {
6803
6842
  name: "IdmWarZone",
6804
6843
  props: {
6805
6844
  map: {
@@ -6889,10 +6928,10 @@ const QM = /* @__PURE__ */ I(pM, [["render", JM], ["__scopeId", "data-v-f1da5f57
6889
6928
  }
6890
6929
  }
6891
6930
  };
6892
- function ZM(z, M, b, O, p, o) {
6893
- return l(), f("div");
6931
+ function zb(z, M, b, O, p, o) {
6932
+ return W(), l("div");
6894
6933
  }
6895
- const YM = /* @__PURE__ */ I($M, [["render", ZM]]), Mb = {
6934
+ const pb = /* @__PURE__ */ k(bb, [["render", zb]]), Ob = {
6896
6935
  name: "IdmGmdssArea",
6897
6936
  props: {
6898
6937
  map: {
@@ -7012,10 +7051,10 @@ const YM = /* @__PURE__ */ I($M, [["render", ZM]]), Mb = {
7012
7051
  }
7013
7052
  }
7014
7053
  };
7015
- function bb(z, M, b, O, p, o) {
7016
- return l(), f("div");
7054
+ function ob(z, M, b, O, p, o) {
7055
+ return W(), l("div");
7017
7056
  }
7018
- const zb = /* @__PURE__ */ I(Mb, [["render", bb]]), pb = {
7057
+ const cb = /* @__PURE__ */ k(Ob, [["render", ob]]), Ab = {
7019
7058
  name: "IdmEcaZone",
7020
7059
  props: {
7021
7060
  map: {
@@ -7103,11 +7142,11 @@ const zb = /* @__PURE__ */ I(Mb, [["render", bb]]), pb = {
7103
7142
  }
7104
7143
  }
7105
7144
  };
7106
- function Ob(z, M, b, O, p, o) {
7107
- return l(), f("div");
7145
+ function eb(z, M, b, O, p, o) {
7146
+ return W(), l("div");
7108
7147
  }
7109
- const ob = /* @__PURE__ */ I(pb, [["render", Ob]]);
7110
- const cb = {
7148
+ const tb = /* @__PURE__ */ k(Ab, [["render", eb]]);
7149
+ const ab = {
7111
7150
  name: "IdmAlertZone",
7112
7151
  props: {
7113
7152
  map: {
@@ -7150,7 +7189,7 @@ const cb = {
7150
7189
  if (b) {
7151
7190
  this.showZone = !0, this.form = { ...b.properties };
7152
7191
  const p = document.getElementById("idm-gl3-zone-info");
7153
- this.marker ? this.marker.setLngLat([z.lngLat.lng, z.lngLat.lat]) : this.marker = new g0.Marker(p).setLngLat([z.lngLat.lng, z.lngLat.lat]).setOffset([0, 0]).addTo(this.map);
7192
+ this.marker ? this.marker.setLngLat([z.lngLat.lng, z.lngLat.lat]) : this.marker = new w0.Marker(p).setLngLat([z.lngLat.lng, z.lngLat.lat]).setOffset([0, 0]).addTo(this.map);
7154
7193
  }
7155
7194
  },
7156
7195
  handleRender() {
@@ -7237,24 +7276,24 @@ const cb = {
7237
7276
  this.map.getLayer(this.polygonLayer) && this.map.removeLayer(this.polygonLayer), this.map.getLayer(this.polygonLayer + "-border") && this.map.removeLayer(this.polygonLayer + "-border"), this.map.getLayer(this.polygonLabelLayer) && this.map.removeLayer(this.polygonLabelLayer), this.map.getLayer(this.lineLayer) && this.map.removeLayer(this.lineLayer), this.map.getLayer(this.lineLabelLayer) && this.map.removeLayer(this.lineLabelLayer), this.map.getLayer(this.pointLayer) && this.map.removeLayer(this.pointLayer), this.map.getSource(this.source) && this.map.removeSource(this.source);
7238
7277
  }
7239
7278
  }
7240
- }, eb = { id: "idm-gl3-zone-info" }, Ab = ["innerHTML"];
7241
- function tb(z, M, b, O, p, o) {
7242
- var e;
7243
- return X0((l(), f("div", eb, [
7279
+ }, qb = { id: "idm-gl3-zone-info" }, ib = ["innerHTML"];
7280
+ function rb(z, M, b, O, p, o) {
7281
+ var A;
7282
+ return y0((W(), l("div", qb, [
7244
7283
  c("div", {
7245
7284
  class: "iconfont close",
7246
7285
  onClick: M[0] || (M[0] = (t) => p.showZone = !1)
7247
7286
  }, ""),
7248
7287
  c("div", {
7249
7288
  class: "rich-context",
7250
- innerHTML: (e = p.form) == null ? void 0 : e.name
7251
- }, null, 8, Ab)
7289
+ innerHTML: (A = p.form) == null ? void 0 : A.name
7290
+ }, null, 8, ib)
7252
7291
  ], 512)), [
7253
- [v0, p.showZone]
7292
+ [X0, p.showZone]
7254
7293
  ]);
7255
7294
  }
7256
- const ab = /* @__PURE__ */ I(cb, [["render", tb]]);
7257
- const qb = {
7295
+ const nb = /* @__PURE__ */ k(ab, [["render", rb]]);
7296
+ const db = {
7258
7297
  name: "IdmPort",
7259
7298
  props: {
7260
7299
  map: {
@@ -7307,7 +7346,7 @@ const qb = {
7307
7346
  if (b) {
7308
7347
  this.showPort = !0, this.form = { ...b.properties }, this.form.lng = b.geometry.coordinates[0], this.form.lat = b.geometry.coordinates[1];
7309
7348
  const p = document.getElementById("port-info");
7310
- this.marker ? this.marker.setLngLat([z.lngLat.lng, z.lngLat.lat]) : this.marker = new g0.Marker(p).setLngLat([z.lngLat.lng, z.lngLat.lat]).setOffset([0, -85]).addTo(this.map);
7349
+ this.marker ? this.marker.setLngLat([z.lngLat.lng, z.lngLat.lat]) : this.marker = new w0.Marker(p).setLngLat([z.lngLat.lng, z.lngLat.lat]).setOffset([0, -85]).addTo(this.map);
7311
7350
  }
7312
7351
  },
7313
7352
  handleEmit() {
@@ -7346,41 +7385,41 @@ const qb = {
7346
7385
  this.showPort = !1, this.map.getLayer(this.layer) && this.map.removeLayer(this.layer), this.map.getSource(this.source) && this.map.removeSource(this.source);
7347
7386
  }
7348
7387
  }
7349
- }, ib = { id: "port-info" }, rb = { class: "port-box" }, nb = { class: "flex-start" }, db = { class: "flex-start" }, Wb = { class: "flex-start" }, sb = {
7388
+ }, sb = { id: "port-info" }, Wb = { class: "port-box" }, lb = { class: "flex-start" }, fb = { class: "flex-start" }, ub = { class: "flex-start" }, Lb = {
7350
7389
  class: "flex-start",
7351
7390
  style: { "align-items": "flex-start" }
7352
7391
  };
7353
- function lb(z, M, b, O, p, o) {
7354
- return X0((l(), f("div", ib, [
7392
+ function Rb(z, M, b, O, p, o) {
7393
+ return y0((W(), l("div", sb, [
7355
7394
  c("div", {
7356
7395
  class: "close iconfont",
7357
- onClick: M[0] || (M[0] = (e) => p.showPort = !1)
7396
+ onClick: M[0] || (M[0] = (A) => p.showPort = !1)
7358
7397
  }, ""),
7359
- c("div", rb, [
7360
- c("div", nb, [
7398
+ c("div", Wb, [
7399
+ c("div", lb, [
7361
7400
  M[2] || (M[2] = c("label", null, "Name : ", -1)),
7362
7401
  c("span", {
7363
- onClick: M[1] || (M[1] = (...e) => o.handleEmit && o.handleEmit(...e))
7364
- }, _(p.form.name), 1)
7402
+ onClick: M[1] || (M[1] = (...A) => o.handleEmit && o.handleEmit(...A))
7403
+ }, v(p.form.name), 1)
7365
7404
  ]),
7366
- c("div", db, [
7405
+ c("div", fb, [
7367
7406
  M[3] || (M[3] = c("label", null, "Position : ", -1)),
7368
- c("span", null, _(o.computeLat(p.form.lat)) + ", " + _(o.computeLng(p.form.lng)), 1)
7407
+ c("span", null, v(o.computeLat(p.form.lat)) + ", " + v(o.computeLng(p.form.lng)), 1)
7369
7408
  ]),
7370
- c("div", Wb, [
7409
+ c("div", ub, [
7371
7410
  M[4] || (M[4] = c("label", null, "LoCode : ", -1)),
7372
- c("span", null, _(p.form.loCode || "-"), 1)
7411
+ c("span", null, v(p.form.loCode || "-"), 1)
7373
7412
  ]),
7374
- c("div", sb, [
7413
+ c("div", Lb, [
7375
7414
  M[5] || (M[5] = c("label", null, "Region : ", -1)),
7376
- c("span", null, _(p.form.zoneName || "-"), 1)
7415
+ c("span", null, v(p.form.zoneName || "-"), 1)
7377
7416
  ])
7378
7417
  ])
7379
7418
  ], 512)), [
7380
- [v0, p.showPort]
7419
+ [X0, p.showPort]
7381
7420
  ]);
7382
7421
  }
7383
- const fb = /* @__PURE__ */ I(qb, [["render", lb], ["__scopeId", "data-v-c07e4c45"]]), ub = {
7422
+ const hb = /* @__PURE__ */ k(db, [["render", Rb], ["__scopeId", "data-v-c07e4c45"]]), mb = {
7384
7423
  name: "IdmLoadLine",
7385
7424
  props: {
7386
7425
  map: {
@@ -7450,10 +7489,10 @@ const fb = /* @__PURE__ */ I(qb, [["render", lb], ["__scopeId", "data-v-c07e4c45
7450
7489
  }
7451
7490
  }
7452
7491
  };
7453
- function Lb(z, M, b, O, p, o) {
7454
- return l(), f("div");
7492
+ function Bb(z, M, b, O, p, o) {
7493
+ return W(), l("div");
7455
7494
  }
7456
- const Rb = /* @__PURE__ */ I(ub, [["render", Lb]]), hb = {
7495
+ const gb = /* @__PURE__ */ k(mb, [["render", Bb]]), Nb = {
7457
7496
  name: "IdmTimezone",
7458
7497
  props: {
7459
7498
  map: {
@@ -7618,10 +7657,10 @@ const Rb = /* @__PURE__ */ I(ub, [["render", Lb]]), hb = {
7618
7657
  }
7619
7658
  }
7620
7659
  };
7621
- function mb(z, M, b, O, p, o) {
7622
- return l(), f("div");
7660
+ function yb(z, M, b, O, p, o) {
7661
+ return W(), l("div");
7623
7662
  }
7624
- const Nb = /* @__PURE__ */ I(hb, [["render", mb]]), Bb = {
7663
+ const Xb = /* @__PURE__ */ k(Nb, [["render", yb]]), wb = {
7625
7664
  name: "IdmVoluntaryReportingArea",
7626
7665
  props: {
7627
7666
  map: {
@@ -7709,10 +7748,10 @@ const Nb = /* @__PURE__ */ I(hb, [["render", mb]]), Bb = {
7709
7748
  }
7710
7749
  }
7711
7750
  };
7712
- function yb(z, M, b, O, p, o) {
7713
- return l(), f("div");
7751
+ function Cb(z, M, b, O, p, o) {
7752
+ return W(), l("div");
7714
7753
  }
7715
- const gb = /* @__PURE__ */ I(Bb, [["render", yb]]), Xb = {
7754
+ const vb = /* @__PURE__ */ k(wb, [["render", Cb]]), Tb = {
7716
7755
  name: "IdmSpecialArea",
7717
7756
  props: {
7718
7757
  map: {
@@ -7802,10 +7841,10 @@ const gb = /* @__PURE__ */ I(Bb, [["render", yb]]), Xb = {
7802
7841
  }
7803
7842
  }
7804
7843
  };
7805
- function vb(z, M, b, O, p, o) {
7806
- return l(), f("div");
7844
+ function Eb(z, M, b, O, p, o) {
7845
+ return W(), l("div");
7807
7846
  }
7808
- const Tb = /* @__PURE__ */ I(Xb, [["render", vb]]), wb = {
7847
+ const xb = /* @__PURE__ */ k(Tb, [["render", Eb]]), Ib = {
7809
7848
  name: "IdmTerminator",
7810
7849
  props: {
7811
7850
  map: {
@@ -7854,11 +7893,11 @@ const Tb = /* @__PURE__ */ I(Xb, [["render", vb]]), wb = {
7854
7893
  }
7855
7894
  }
7856
7895
  };
7857
- function Cb(z, M, b, O, p, o) {
7858
- return l(), f("div");
7896
+ function Db(z, M, b, O, p, o) {
7897
+ return W(), l("div");
7859
7898
  }
7860
- const _b = /* @__PURE__ */ I(wb, [["render", Cb]]);
7861
- const xb = {
7899
+ const Pb = /* @__PURE__ */ k(Ib, [["render", Db]]);
7900
+ const Sb = {
7862
7901
  name: "IdmLatLng",
7863
7902
  props: {
7864
7903
  map: {
@@ -7965,7 +8004,7 @@ const xb = {
7965
8004
  handleZoomEnd() {
7966
8005
  var M;
7967
8006
  const z = this.handleComputeLatLngs();
7968
- (M = this.map) == null || M.getSource(this.source).setData(w.featureCollection(z));
8007
+ (M = this.map) == null || M.getSource(this.source).setData(C.featureCollection(z));
7969
8008
  },
7970
8009
  handleRender() {
7971
8010
  if (this.map) {
@@ -8014,18 +8053,18 @@ const xb = {
8014
8053
  }
8015
8054
  }
8016
8055
  };
8017
- function Sb(z, M, b, O, p, o) {
8018
- return p.lngLat ? (l(), f("div", {
8056
+ function kb(z, M, b, O, p, o) {
8057
+ return p.lngLat ? (W(), l("div", {
8019
8058
  key: 0,
8020
8059
  class: "lat-lng-tip",
8021
8060
  style: o0({ right: p.right + "px", bottom: b.bottom })
8022
8061
  }, [
8023
- c("span", null, _(p.lngLat.lat.pretty), 1),
8062
+ c("span", null, v(p.lngLat.lat.pretty), 1),
8024
8063
  M[0] || (M[0] = c("span", null, ", ", -1)),
8025
- c("span", null, _(p.lngLat.lng.pretty), 1)
8026
- ], 4)) : F("", !0);
8064
+ c("span", null, v(p.lngLat.lng.pretty), 1)
8065
+ ], 4)) : _("", !0);
8027
8066
  }
8028
- const H0 = /* @__PURE__ */ I(xb, [["render", Sb], ["__scopeId", "data-v-ad66a24c"]]), Eb = {
8067
+ const F0 = /* @__PURE__ */ k(Sb, [["render", kb], ["__scopeId", "data-v-ad66a24c"]]), Qb = {
8029
8068
  name: "IdmMeasure",
8030
8069
  props: {
8031
8070
  map: {
@@ -8066,11 +8105,11 @@ const H0 = /* @__PURE__ */ I(xb, [["render", Sb], ["__scopeId", "data-v-ad66a24c
8066
8105
  },
8067
8106
  methods: {
8068
8107
  handleBind() {
8069
- var z, M, b, O, p, o, e, t, q, r;
8108
+ var z, M, b, O, p, o, A, t, q, n;
8070
8109
  if (this.show)
8071
8110
  (z = this.map) == null || z.getCanvas().addEventListener("keydown", this.handleKeydown), (M = this.map) == null || M.on("mousemove", this.handleMove), (b = this.map) == null || b.on("dblclick", this.handleDblClick), (O = this.map) == null || O.on("click", this.handleClick), (p = this.map) == null || p.on("contextmenu", this.handleContextmenu), this.map && (this.map.getCanvas().style.cursor = "crosshair");
8072
8111
  else {
8073
- (o = this.map) == null || o.getCanvas().removeEventListener("keydown", this.handleKeydown), (e = this.map) == null || e.off("mousemove", this.handleMove), (t = this.map) == null || t.off("dblclick", this.handleDblClick), (q = this.map) == null || q.off("click", this.handleClick), (r = this.map) == null || r.off("contextmenu", this.handleContextmenu);
8112
+ (o = this.map) == null || o.getCanvas().removeEventListener("keydown", this.handleKeydown), (A = this.map) == null || A.off("mousemove", this.handleMove), (t = this.map) == null || t.off("dblclick", this.handleDblClick), (q = this.map) == null || q.off("click", this.handleClick), (n = this.map) == null || n.off("contextmenu", this.handleContextmenu);
8074
8113
  for (const a of this.geojson)
8075
8114
  this.handleClear(a, !0);
8076
8115
  this.geojson = [], this.map && (this.map.getCanvas().style.cursor = "grab");
@@ -8084,41 +8123,41 @@ const H0 = /* @__PURE__ */ I(xb, [["render", Sb], ["__scopeId", "data-v-ad66a24c
8084
8123
  }
8085
8124
  },
8086
8125
  handleDrag(z) {
8087
- var b, O, p, o, e, t, q, r, a, i;
8126
+ var b, O, p, o, A, t, q, n, a, r;
8088
8127
  const M = (O = (b = z.target) == null ? void 0 : b._element) == null ? void 0 : O.id;
8089
8128
  if ((M == null ? void 0 : M.split("-").length) === 2) {
8090
- const L = this.geojson.filter((d) => d.id === M.split("-")[0])[0];
8091
- this.pointMarkers[L.id].filter((d) => {
8129
+ const L = this.geojson.filter((s) => s.id === M.split("-")[0])[0];
8130
+ this.pointMarkers[L.id].filter((s) => {
8092
8131
  var m;
8093
- return ((m = d._element) == null ? void 0 : m.id) === M;
8094
- })[0].setLngLat([(o = (p = z.target) == null ? void 0 : p._lngLat) == null ? void 0 : o.lng, (t = (e = z.target) == null ? void 0 : e._lngLat) == null ? void 0 : t.lat]);
8132
+ return ((m = s._element) == null ? void 0 : m.id) === M;
8133
+ })[0].setLngLat([(o = (p = z.target) == null ? void 0 : p._lngLat) == null ? void 0 : o.lng, (t = (A = z.target) == null ? void 0 : A._lngLat) == null ? void 0 : t.lat]);
8095
8134
  let h;
8096
- L.features.forEach((d, m) => {
8097
- if (d.geometry.type === "Point" && d.properties.id == M.split("-")[1]) {
8135
+ L.features.forEach((s, m) => {
8136
+ if (s.geometry.type === "Point" && s.properties.id == M.split("-")[1]) {
8098
8137
  h = m;
8099
8138
  return;
8100
8139
  }
8101
8140
  });
8102
- const u = L.features.filter((d) => d.geometry.type === "Point");
8141
+ const u = L.features.filter((s) => s.geometry.type === "Point");
8103
8142
  this.handleTmpPointUpdate(
8104
8143
  L,
8105
8144
  u[h - 1],
8106
- { lng: (r = (q = z.target) == null ? void 0 : q._lngLat) == null ? void 0 : r.lng, lat: (i = (a = z.target) == null ? void 0 : a._lngLat) == null ? void 0 : i.lat, properties: u[h].properties },
8145
+ { lng: (n = (q = z.target) == null ? void 0 : q._lngLat) == null ? void 0 : n.lng, lat: (r = (a = z.target) == null ? void 0 : a._lngLat) == null ? void 0 : r.lat, properties: u[h].properties },
8107
8146
  h === u.length - 1 ? void 0 : u[h + 1]
8108
8147
  );
8109
8148
  }
8110
8149
  },
8111
8150
  handleDragEnd(z) {
8112
- var b, O, p, o, e, t, q, r, a, i;
8151
+ var b, O, p, o, A, t, q, n, a, r;
8113
8152
  const M = (O = (b = z.target) == null ? void 0 : b._element) == null ? void 0 : O.id;
8114
8153
  if ((M == null ? void 0 : M.split("-").length) === 2) {
8115
8154
  const L = this.geojson.filter((u) => u.id === M.split("-")[0])[0];
8116
8155
  this.pointMarkers[L.id].filter((u) => {
8117
- var d;
8118
- return ((d = u._element) == null ? void 0 : d.id) === M;
8119
- })[0].setLngLat([(o = (p = z.target) == null ? void 0 : p._lngLat) == null ? void 0 : o.lng, (t = (e = z.target) == null ? void 0 : e._lngLat) == null ? void 0 : t.lat]);
8156
+ var s;
8157
+ return ((s = u._element) == null ? void 0 : s.id) === M;
8158
+ })[0].setLngLat([(o = (p = z.target) == null ? void 0 : p._lngLat) == null ? void 0 : o.lng, (t = (A = z.target) == null ? void 0 : A._lngLat) == null ? void 0 : t.lat]);
8120
8159
  const h = L.features.filter((u) => u.geometry.type === "Point" && u.properties.id == M.split("-")[1])[0];
8121
- h.geometry.coordinates = [(r = (q = z.target) == null ? void 0 : q._lngLat) == null ? void 0 : r.lng, (i = (a = z.target) == null ? void 0 : a._lngLat) == null ? void 0 : i.lat], L.features = L.features.filter((u) => u.geometry.type === "Point"), this.handlePointUpdate(L);
8160
+ h.geometry.coordinates = [(n = (q = z.target) == null ? void 0 : q._lngLat) == null ? void 0 : n.lng, (r = (a = z.target) == null ? void 0 : a._lngLat) == null ? void 0 : r.lat], L.features = L.features.filter((u) => u.geometry.type === "Point"), this.handlePointUpdate(L);
8122
8161
  }
8123
8162
  },
8124
8163
  handleContextmenu(z) {
@@ -8127,26 +8166,26 @@ const H0 = /* @__PURE__ */ I(xb, [["render", Sb], ["__scopeId", "data-v-ad66a24c
8127
8166
  const M = (o = (p = (O = z.originalEvent) == null ? void 0 : O.target) == null ? void 0 : p.parentElement) == null ? void 0 : o.id;
8128
8167
  if ((M == null ? void 0 : M.split("-").length) === 2) {
8129
8168
  const t = this.geojson.filter((q) => q.id === M.split("-")[0])[0].features.filter((q) => q.geometry.type === "Point");
8130
- if (t.length > 2 && t.filter((r) => r.properties.id === (M == null ? void 0 : M.split("-")[1]))[0]) {
8131
- const r = document.createElement("div");
8132
- r.className = "point-contextmenu-marker", r.innerHTML = `<span id="del-${M}" class="del-point">Del</span>`, this.contextmenu = new g0.Marker(r).setOffset([24, 0]).setLngLat([z.lngLat.lng, z.lngLat.lat]).addTo(this.map);
8169
+ if (t.length > 2 && t.filter((n) => n.properties.id === (M == null ? void 0 : M.split("-")[1]))[0]) {
8170
+ const n = document.createElement("div");
8171
+ n.className = "point-contextmenu-marker", n.innerHTML = `<span id="del-${M}" class="del-point">Del</span>`, this.contextmenu = new w0.Marker(n).setOffset([24, 0]).setLngLat([z.lngLat.lng, z.lngLat.lat]).addTo(this.map);
8133
8172
  }
8134
8173
  }
8135
8174
  },
8136
8175
  handleClick(z) {
8137
- var b, O, p, o, e;
8176
+ var b, O, p, o, A;
8138
8177
  (b = this.contextmenu) == null || b.remove();
8139
8178
  const M = z.originalEvent.target.className;
8140
8179
  if (M === "marker-close") {
8141
- const t = (p = (O = z.originalEvent) == null ? void 0 : O.srcElement) == null ? void 0 : p.id, q = this.geojson.filter((r) => r.id === t)[0];
8142
- q && this.handleClear(q, !0), this.geojson = this.geojson.filter((r) => r.id !== t);
8180
+ const t = (p = (O = z.originalEvent) == null ? void 0 : O.srcElement) == null ? void 0 : p.id, q = this.geojson.filter((n) => n.id === t)[0];
8181
+ q && this.handleClear(q, !0), this.geojson = this.geojson.filter((n) => n.id !== t);
8143
8182
  } else if (M === "del-point") {
8144
- const t = (e = (o = z.originalEvent.target.id) == null ? void 0 : o.replace("del-", "")) == null ? void 0 : e.split("-"), q = this.geojson.filter((r) => r.id === t[0])[0];
8145
- q.features = q.features.filter((r) => r.geometry.type === "Point" && r.properties.id !== t[1]), this.handlePointUpdate(q);
8183
+ const t = (A = (o = z.originalEvent.target.id) == null ? void 0 : o.replace("del-", "")) == null ? void 0 : A.split("-"), q = this.geojson.filter((n) => n.id === t[0])[0];
8184
+ q.features = q.features.filter((n) => n.geometry.type === "Point" && n.properties.id !== t[1]), this.handlePointUpdate(q);
8146
8185
  } else if (M !== "marker-label") {
8147
8186
  let t = this.geojson.at(-1);
8148
- t || (t = w.featureCollection([], { id: (/* @__PURE__ */ new Date()).getTime().toString() }), this.geojson.push(t)), t.features = t.features.filter((r) => r.geometry.type === "Point");
8149
- const q = w.feature(
8187
+ t || (t = C.featureCollection([], { id: (/* @__PURE__ */ new Date()).getTime().toString() }), this.geojson.push(t)), t.features = t.features.filter((n) => n.geometry.type === "Point");
8188
+ const q = C.feature(
8150
8189
  {
8151
8190
  type: "Point",
8152
8191
  coordinates: [z.lngLat.lng, z.lngLat.lat]
@@ -8165,35 +8204,35 @@ const H0 = /* @__PURE__ */ I(xb, [["render", Sb], ["__scopeId", "data-v-ad66a24c
8165
8204
  let b = 0;
8166
8205
  const O = [];
8167
8206
  for (let p = 1; p < M.length; p++) {
8168
- const o = M[p - 1], e = M[p], t = o.properties, q = { lng: o.geometry.coordinates[0], lat: o.geometry.coordinates[1] }, r = { lng: e.geometry.coordinates[0], lat: e.geometry.coordinates[1] }, a = B0.calculateDistance(q, r, t.mode === "RL", 2), i = B0.calculateBearing(q, r, t.mode === "RL", 2);
8207
+ const o = M[p - 1], A = M[p], t = o.properties, q = { lng: o.geometry.coordinates[0], lat: o.geometry.coordinates[1] }, n = { lng: A.geometry.coordinates[0], lat: A.geometry.coordinates[1] }, a = g0.calculateDistance(q, n, t.mode === "RL", 2), r = g0.calculateBearing(q, n, t.mode === "RL", 2);
8169
8208
  b = M0.roundPrecision(b + a, 2);
8170
8209
  let L;
8171
- t.mode === "RL" ? L = M0.convertToMonotonicLng([q, r]) : L = M0.convertToMonotonicLng(B0.interpolateCoordinates(q, r, 200));
8172
- const n = w.lineString(L.map((h) => [h.lng, h.lat]));
8173
- n.properties.dist = a, n.properties.bearing = i, n.properties.total = b, O.push(n);
8210
+ t.mode === "RL" ? L = M0.convertToMonotonicLng([q, n]) : L = M0.convertToMonotonicLng(g0.interpolateCoordinates(q, n, 200));
8211
+ const d = C.lineString(L.map((h) => [h.lng, h.lat]));
8212
+ d.properties.dist = a, d.properties.bearing = r, d.properties.total = b, O.push(d);
8174
8213
  }
8175
8214
  M.push(...O), z.total = b;
8176
8215
  }
8177
8216
  return this.handleRender(z), z;
8178
8217
  },
8179
8218
  handleTmpPointUpdate(z, M, b, O) {
8180
- const p = w.featureCollection([]);
8181
- let o, e;
8219
+ const p = C.featureCollection([]);
8220
+ let o, A;
8182
8221
  if (M) {
8183
- const q = M.properties, r = { lng: M.geometry.coordinates[0], lat: M.geometry.coordinates[1] }, a = { lng: b.lng, lat: b.lat };
8184
- o = B0.calculateDistance(r, a, q.mode === "RL", 2), e = B0.calculateBearing(r, a, q.mode === "RL", 2);
8185
- let i;
8186
- q.mode === "RL" ? i = M0.convertToMonotonicLng([r, a]) : i = M0.convertToMonotonicLng(B0.interpolateCoordinates(r, a, 200));
8187
- const L = w.lineString(i.map((n) => [n.lng, n.lat]));
8188
- L.properties.dist = o, L.properties.bearing = e, p.features.push(L);
8222
+ const q = M.properties, n = { lng: M.geometry.coordinates[0], lat: M.geometry.coordinates[1] }, a = { lng: b.lng, lat: b.lat };
8223
+ o = g0.calculateDistance(n, a, q.mode === "RL", 2), A = g0.calculateBearing(n, a, q.mode === "RL", 2);
8224
+ let r;
8225
+ q.mode === "RL" ? r = M0.convertToMonotonicLng([n, a]) : r = M0.convertToMonotonicLng(g0.interpolateCoordinates(n, a, 200));
8226
+ const L = C.lineString(r.map((d) => [d.lng, d.lat]));
8227
+ L.properties.dist = o, L.properties.bearing = A, p.features.push(L);
8189
8228
  }
8190
8229
  if (O) {
8191
- const q = b.properties, r = b, a = { lng: O.geometry.coordinates[0], lat: O.geometry.coordinates[1] };
8192
- o = B0.calculateDistance(r, a, q.mode === "RL", 2), e = B0.calculateBearing(r, a, q.mode === "RL", 2);
8193
- let i;
8194
- q.mode === "RL" ? i = M0.convertToMonotonicLng([r, a]) : i = M0.convertToMonotonicLng(B0.interpolateCoordinates(r, a, 200));
8195
- const L = w.lineString(i.map((n) => [n.lng, n.lat]));
8196
- L.properties.dist = o, L.properties.bearing = e, p.features.push(L);
8230
+ const q = b.properties, n = b, a = { lng: O.geometry.coordinates[0], lat: O.geometry.coordinates[1] };
8231
+ o = g0.calculateDistance(n, a, q.mode === "RL", 2), A = g0.calculateBearing(n, a, q.mode === "RL", 2);
8232
+ let r;
8233
+ q.mode === "RL" ? r = M0.convertToMonotonicLng([n, a]) : r = M0.convertToMonotonicLng(g0.interpolateCoordinates(n, a, 200));
8234
+ const L = C.lineString(r.map((d) => [d.lng, d.lat]));
8235
+ L.properties.dist = o, L.properties.bearing = A, p.features.push(L);
8197
8236
  }
8198
8237
  this.map.getSource(this.tmpSource) ? this.map.getSource(this.tmpSource).setData(p) : this.map.addSource(this.tmpSource, {
8199
8238
  type: "geojson",
@@ -8233,24 +8272,24 @@ const H0 = /* @__PURE__ */ I(xb, [["render", Sb], ["__scopeId", "data-v-ad66a24c
8233
8272
  }
8234
8273
  });
8235
8274
  let t;
8236
- if (O ? t = '<div class="marker-label">Drag and drop</div>' : t = `<div class="marker-label">Tol distance: <b>${M0.roundPrecision((z.total ?? 0) + o, 2)}</b>nm, bearing: <b>${e}</b>°</div><div class="marker-label">${this.navigation === "RL" ? "RL" : "GC"} mode, using 'Shift' to switch</div><div class="marker-label">Double click to end</div>`, this.tipMarker)
8275
+ if (O ? t = '<div class="marker-label">Drag and drop</div>' : t = `<div class="marker-label">Tol distance: <b>${M0.roundPrecision((z.total ?? 0) + o, 2)}</b>nm, bearing: <b>${A}</b>°</div><div class="marker-label">${this.navigation === "RL" ? "RL" : "GC"} mode, using 'Shift' to switch</div><div class="marker-label">Double click to end</div>`, this.tipMarker)
8237
8276
  this.tipMarker._element.innerHTML = t, this.tipMarker.setLngLat([b.lng, b.lat]);
8238
8277
  else {
8239
8278
  const q = document.createElement("div");
8240
- q.className = "tip-marker", q.innerHTML = t, this.tipMarker = new g0.Marker(q).setOffset([140, 0]).setLngLat([b.lng, b.lat]).addTo(this.map);
8279
+ q.className = "tip-marker", q.innerHTML = t, this.tipMarker = new w0.Marker(q).setOffset([140, 0]).setLngLat([b.lng, b.lat]).addTo(this.map);
8241
8280
  }
8242
8281
  },
8243
8282
  handleMove(z) {
8244
8283
  this.map.getCanvas().style.cursor = "crosshair";
8245
8284
  let M = this.geojson.at(-1);
8246
- M || (M = w.featureCollection([], { id: (/* @__PURE__ */ new Date()).getTime().toString() }), this.geojson.push(M));
8285
+ M || (M = C.featureCollection([], { id: (/* @__PURE__ */ new Date()).getTime().toString() }), this.geojson.push(M));
8247
8286
  const b = M.features.filter((O) => O.geometry.type === "Point");
8248
8287
  b != null && b.length && this.handleTmpPointUpdate(M, b.at(-1), { lng: z.lngLat.lng, lat: z.lngLat.lat });
8249
8288
  },
8250
8289
  handleDblClick(z) {
8251
8290
  z.preventDefault();
8252
8291
  let M = this.geojson.at(-1);
8253
- M.closed = !0, this.handleRender(M), M = w.featureCollection([], { id: (/* @__PURE__ */ new Date()).getTime().toString() }), this.geojson.push(M);
8292
+ M.closed = !0, this.handleRender(M), M = C.featureCollection([], { id: (/* @__PURE__ */ new Date()).getTime().toString() }), this.geojson.push(M);
8254
8293
  },
8255
8294
  handleRender(z) {
8256
8295
  var M;
@@ -8291,33 +8330,33 @@ const H0 = /* @__PURE__ */ I(xb, [["render", Sb], ["__scopeId", "data-v-ad66a24c
8291
8330
  "text-halo-blur": 0
8292
8331
  }
8293
8332
  });
8294
- const o = z.features.filter((e) => e.geometry.type === "Point");
8295
- for (const e of o) {
8333
+ const o = z.features.filter((A) => A.geometry.type === "Point");
8334
+ for (const A of o) {
8296
8335
  const t = document.createElement("div");
8297
- t.id = `${z.id}-${e.properties.id}`, t.className = `${z.closed ? "point-marker closed" : "point-marker"}`, t.innerHTML = '<div class="marker-circle"></div>';
8298
- const q = new g0.Marker({ element: t, draggable: !0, contextmenu: !0 }).setLngLat(e.geometry.coordinates).addTo(this.map);
8336
+ t.id = `${z.id}-${A.properties.id}`, t.className = `${z.closed ? "point-marker closed" : "point-marker"}`, t.innerHTML = '<div class="marker-circle"></div>';
8337
+ const q = new w0.Marker({ element: t, draggable: !0, contextmenu: !0 }).setLngLat(A.geometry.coordinates).addTo(this.map);
8299
8338
  q.on("drag", this.handleDrag), q.on("dragend", this.handleDragEnd), this.pointMarkers[z.id] ? this.pointMarkers[z.id].push(q) : this.pointMarkers[z.id] = [q];
8300
8339
  }
8301
8340
  if (z.closed) {
8302
- const e = o.at(-1), q = z.features.filter((a) => a.geometry.type === "LineString").at(-1), r = document.createElement("div");
8303
- r.className = "point-summary-marker", r.innerHTML = `<div id="${z.id}" class="marker-close">×</div><div class="marker-label">Tol: ${q.properties.total}nm</div>`, this.closeMarkers[z.id] = new g0.Marker(r).setOffset([60, 0]).setLngLat(e.geometry.coordinates).addTo(this.map);
8341
+ const A = o.at(-1), q = z.features.filter((a) => a.geometry.type === "LineString").at(-1), n = document.createElement("div");
8342
+ n.className = "point-summary-marker", n.innerHTML = `<div id="${z.id}" class="marker-close">×</div><div class="marker-label">Tol: ${q.properties.total}nm</div>`, this.closeMarkers[z.id] = new w0.Marker(n).setOffset([60, 0]).setLngLat(A.geometry.coordinates).addTo(this.map);
8304
8343
  }
8305
8344
  }
8306
8345
  },
8307
8346
  handleClear(z, M = !0) {
8308
- var o, e, t, q, r, a, i, L, n;
8347
+ var o, A, t, q, n, a, r, L, d;
8309
8348
  const b = `${z.id}-${this.source}`, O = `${z.id}-${this.layer}`, p = `${z.id}-${this.labelLayer}`;
8310
- (o = this.map) != null && o.getLayer(O) && this.map.removeLayer(O), (e = this.map) != null && e.getLayer(p) && this.map.removeLayer(p), (t = this.map) != null && t.getLayer(this.tmpLayer) && this.map.removeLayer(this.tmpLayer), (q = this.map) != null && q.getLayer(this.tmpLabelLayer) && this.map.removeLayer(this.tmpLabelLayer), (r = this.closeMarkers[z.id]) == null || r.remove(), this.closeMarkers[z.id] = void 0, (a = this.pointMarkers[z.id]) == null || a.forEach((h) => {
8349
+ (o = this.map) != null && o.getLayer(O) && this.map.removeLayer(O), (A = this.map) != null && A.getLayer(p) && this.map.removeLayer(p), (t = this.map) != null && t.getLayer(this.tmpLayer) && this.map.removeLayer(this.tmpLayer), (q = this.map) != null && q.getLayer(this.tmpLabelLayer) && this.map.removeLayer(this.tmpLabelLayer), (n = this.closeMarkers[z.id]) == null || n.remove(), this.closeMarkers[z.id] = void 0, (a = this.pointMarkers[z.id]) == null || a.forEach((h) => {
8311
8350
  h == null || h.remove();
8312
- }), this.pointMarkers[z.id] = [], (i = this.tipMarker) == null || i.remove(), this.tipMarker = void 0, M && ((L = this.map) != null && L.getSource(b)) && this.map.removeSource(b), M && ((n = this.map) != null && n.getSource(this.tmpSource)) && this.map.removeSource(this.tmpSource);
8351
+ }), this.pointMarkers[z.id] = [], (r = this.tipMarker) == null || r.remove(), this.tipMarker = void 0, M && ((L = this.map) != null && L.getSource(b)) && this.map.removeSource(b), M && ((d = this.map) != null && d.getSource(this.tmpSource)) && this.map.removeSource(this.tmpSource);
8313
8352
  }
8314
8353
  }
8315
8354
  };
8316
- function Pb(z, M, b, O, p, o) {
8317
- return l(), f("div");
8355
+ function Hb(z, M, b, O, p, o) {
8356
+ return W(), l("div");
8318
8357
  }
8319
- const kb = /* @__PURE__ */ I(Eb, [["render", Pb]]);
8320
- const Db = {
8358
+ const _b = /* @__PURE__ */ k(Qb, [["render", Hb]]);
8359
+ const jb = {
8321
8360
  name: "IdmENC",
8322
8361
  props: {
8323
8362
  map: {
@@ -8348,8 +8387,8 @@ const Db = {
8348
8387
  emits: ["enc"],
8349
8388
  data() {
8350
8389
  return {
8351
- helper: S0,
8352
- vendor: this.$attrs.permission & S0.LEVEL.Supper ? "hi" : "i4",
8390
+ helper: I0,
8391
+ vendor: this.$attrs.permission & I0.LEVEL.Supper ? "hi" : "i4",
8353
8392
  right: 10
8354
8393
  };
8355
8394
  },
@@ -8369,24 +8408,24 @@ const Db = {
8369
8408
  }
8370
8409
  },
8371
8410
  methods: {}
8372
- }, Ib = { key: 0 }, jb = { class: "bar-item" };
8411
+ }, Fb = { key: 0 }, Gb = { class: "bar-item" };
8373
8412
  function Ub(z, M, b, O, p, o) {
8374
- const e = S("ElTooltip");
8375
- return b.enabled && b.permission & p.helper.LEVEL.Supper ? (l(), f("div", Ib, [
8413
+ const A = x("ElTooltip");
8414
+ return b.enabled && b.permission & p.helper.LEVEL.Supper ? (W(), l("div", Fb, [
8376
8415
  c("div", {
8377
8416
  class: "menu-bar-box",
8378
8417
  style: o0({ position: "absolute", right: p.right + "px", bottom: b.bottom })
8379
8418
  }, [
8380
- c("div", jb, [
8381
- T(e, {
8419
+ c("div", Gb, [
8420
+ w(A, {
8382
8421
  placement: "left",
8383
8422
  effect: "light",
8384
8423
  content: "Hifleet",
8385
8424
  "show-after": 1e3
8386
8425
  }, {
8387
- default: A0(() => [
8426
+ default: e0(() => [
8388
8427
  c("div", {
8389
- class: J(p.vendor === "hi" ? "menu-icon active" : "menu-icon"),
8428
+ class: Y(p.vendor === "hi" ? "menu-icon active" : "menu-icon"),
8390
8429
  onClick: M[0] || (M[0] = (t) => p.vendor = "hi")
8391
8430
  }, M[2] || (M[2] = [
8392
8431
  c("span", { class: "iconfont" }, "HI", -1)
@@ -8394,15 +8433,15 @@ function Ub(z, M, b, O, p, o) {
8394
8433
  ]),
8395
8434
  _: 1
8396
8435
  }),
8397
- T(e, {
8436
+ w(A, {
8398
8437
  placement: "left",
8399
8438
  effect: "light",
8400
8439
  content: "I4insight",
8401
8440
  "show-after": 1e3
8402
8441
  }, {
8403
- default: A0(() => [
8442
+ default: e0(() => [
8404
8443
  c("div", {
8405
- class: J(p.vendor === "i4" ? "menu-icon active" : "menu-icon"),
8444
+ class: Y(p.vendor === "i4" ? "menu-icon active" : "menu-icon"),
8406
8445
  onClick: M[1] || (M[1] = (t) => p.vendor = "i4")
8407
8446
  }, M[3] || (M[3] = [
8408
8447
  c("span", { class: "iconfont" }, "I4", -1)
@@ -8412,42 +8451,42 @@ function Ub(z, M, b, O, p, o) {
8412
8451
  })
8413
8452
  ])
8414
8453
  ], 4)
8415
- ])) : F("", !0);
8454
+ ])) : _("", !0);
8416
8455
  }
8417
- const Fb = /* @__PURE__ */ I(Db, [["render", Ub], ["__scopeId", "data-v-7301123d"]]);
8418
- const Hb = {
8456
+ const Kb = /* @__PURE__ */ k(jb, [["render", Ub], ["__scopeId", "data-v-7301123d"]]);
8457
+ const Jb = {
8419
8458
  name: "IdmGLV2",
8420
8459
  components: {
8421
- IdmGlLayer: w1,
8422
- IdmWindBarb: S1,
8423
- IdmWindParticle: I1,
8424
- IdmCurrents: H1,
8460
+ IdmGlLayer: v1,
8461
+ IdmWindBarb: I1,
8462
+ IdmWindParticle: Q1,
8463
+ IdmCurrents: F1,
8425
8464
  IdmCurrentParticle: J1,
8426
8465
  IdmSigWave: Z1,
8427
8466
  IdmSwell: b2,
8428
8467
  IdmPrmsl: O2,
8429
8468
  // IdmIceEdge,
8430
- IdmIceberg: e2,
8431
- IdmTropicals: j0,
8432
- IdmPrecip3h: g2,
8433
- IdmVisibility: w2,
8434
- IdmWaterTemp: S2,
8435
- IdmTemp: D2,
8436
- IdmArctic: F2,
8437
- IdmWarZone: YM,
8438
- IdmGmdssArea: zb,
8439
- IdmEcaZone: ob,
8440
- IdmAlertZone: ab,
8441
- IdmPort: fb,
8442
- IdmLoadLine: Rb,
8443
- IdmTimezone: Nb,
8444
- IdmVRA: gb,
8445
- IdmSpecialArea: Tb,
8446
- IdmTerminator: _b,
8447
- IdmLatLng: H0,
8448
- IdmMeasure: kb,
8449
- IdmPoint: QM,
8450
- IdmENC: Fb
8469
+ IdmIceberg: A2,
8470
+ IdmTropicals: H0,
8471
+ IdmPrecip3h: y2,
8472
+ IdmVisibility: v2,
8473
+ IdmWaterTemp: I2,
8474
+ IdmTemp: k2,
8475
+ IdmArctic: j2,
8476
+ IdmWarZone: pb,
8477
+ IdmGmdssArea: cb,
8478
+ IdmEcaZone: tb,
8479
+ IdmAlertZone: nb,
8480
+ IdmPort: hb,
8481
+ IdmLoadLine: gb,
8482
+ IdmTimezone: Xb,
8483
+ IdmVRA: vb,
8484
+ IdmSpecialArea: xb,
8485
+ IdmTerminator: Pb,
8486
+ IdmLatLng: F0,
8487
+ IdmMeasure: _b,
8488
+ IdmPoint: Mb,
8489
+ IdmENC: Kb
8451
8490
  },
8452
8491
  props: {
8453
8492
  map: {
@@ -8495,13 +8534,13 @@ const Hb = {
8495
8534
  showCurrentParticle: !1,
8496
8535
  enc: "",
8497
8536
  defaultMeteoToken: "eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9.eyJpZCI6ImNseTVudHJzYzAwNWUwbHBsZHkyaDRqczMiLCJyb2xlIjoxLCJuYW1lIjoiZmFrZUBvcm13eC5jb20iLCJwbGF0SWQiOiJnZDBtdDFkIiwiY29tcGFueSI6eyJpZCI6bnVsbCwiY2hpbGRyZW4iOltdfSwiaWF0IjoxNzIzMDI0MDI0LCJleHAiOjM5MzA1NDQwMjR9.RrKcdcMnq-FxBLJQ-i6lx2FscDE46y8EvHIemPW4HTg",
8498
- helper: new E1()
8537
+ helper: new D1()
8499
8538
  };
8500
8539
  },
8501
8540
  watch: {
8502
8541
  ts: {
8503
8542
  handler(z, M) {
8504
- z && M && H(z).utc().format("yyyy-MM-DD HH") !== H(M).utc().format("yyyy-MM-DD HH") && this.$nextTick(() => {
8543
+ z && M && F(z).utc().format("yyyy-MM-DD HH") !== F(M).utc().format("yyyy-MM-DD HH") && this.$nextTick(() => {
8505
8544
  this.handleDateChange({ tropicals: !1 });
8506
8545
  });
8507
8546
  },
@@ -8509,22 +8548,22 @@ const Hb = {
8509
8548
  },
8510
8549
  map: {
8511
8550
  handler() {
8512
- this.map && (this.map.on("zoomend", this.handleDragEndWithZoom4Json), this.map.on("dragend", this.handleDragEndWithZoom4Json), this.map.on("move", this.handleDragEndWithZoom4Image), this.viewport = new E0(this.map), this.handleRampColorInitial());
8551
+ this.map && (this.map.on("zoomend", this.handleDragEndWithZoom4Json), this.map.on("dragend", this.handleDragEndWithZoom4Json), this.map.on("move", this.handleDragEndWithZoom4Image), this.viewport = new D0(this.map), this.handleRampColorInitial());
8513
8552
  },
8514
8553
  immediate: !0
8515
8554
  },
8516
8555
  enc: {
8517
8556
  handler(z, M) {
8518
- var b, O, p, o, e, t, q, r;
8519
- z ? ((O = (b = this.map) == null ? void 0 : b.getLayer(z)) == null || O.setLayoutProperty("visibility", "visible"), (o = (p = this.map) == null ? void 0 : p.getLayer(M)) == null || o.setLayoutProperty("visibility", "none")) : ((t = (e = this.map) == null ? void 0 : e.getLayer("i4")) == null || t.setLayoutProperty("visibility", "none"), (r = (q = this.map) == null ? void 0 : q.getLayer("hi")) == null || r.setLayoutProperty("visibility", "none"));
8557
+ var b, O, p, o, A, t, q, n;
8558
+ z ? ((O = (b = this.map) == null ? void 0 : b.getLayer(z)) == null || O.setLayoutProperty("visibility", "visible"), (o = (p = this.map) == null ? void 0 : p.getLayer(M)) == null || o.setLayoutProperty("visibility", "none")) : ((t = (A = this.map) == null ? void 0 : A.getLayer("i4")) == null || t.setLayoutProperty("visibility", "none"), (n = (q = this.map) == null ? void 0 : q.getLayer("hi")) == null || n.setLayoutProperty("visibility", "none"));
8520
8559
  }
8521
8560
  },
8522
8561
  activeWeatherLayers: {
8523
8562
  handler() {
8524
- var z, M, b, O, p, o, e, t, q, r, a, i, L, n, h, u, d, m;
8563
+ var z, M, b, O, p, o, A, t, q, n, a, r, L, d, h, u, s, m;
8525
8564
  if (!this.map)
8526
8565
  return !1;
8527
- this.activeWeatherLayers.length > 0 ? ((M = (z = this.map) == null ? void 0 : z.getLayer(this.enc)) == null || M.setLayoutProperty("visibility", "none"), (O = (b = this.map) == null ? void 0 : b.getLayer(this.helper.mapboxCustomer.layers.countryBoundary.id)) == null || O.setLayoutProperty("visibility", "visible"), (o = this.map) != null && o.getLayer((p = this.viewport) == null ? void 0 : p.rampColorLayer) && ((e = this.map) != null && e.getLayer(this.helper.mapboxCustomer.layers.countryBoundary.id)) && this.mapProjection === "mercator" && ((q = this.map) == null || q.moveLayer((t = this.viewport) == null ? void 0 : t.rampColorLayer, this.helper.mapboxCustomer.layers.countryBoundary.id)), (a = this.map) != null && a.getLayer((r = this.viewport) == null ? void 0 : r.particleLayer) && ((i = this.map) != null && i.getLayer(this.helper.mapboxCustomer.layers.countryBoundary.id)) && this.mapProjection === "mercator" && ((n = this.map) == null || n.moveLayer((L = this.viewport) == null ? void 0 : L.particleLayer, this.helper.mapboxCustomer.layers.countryBoundary.id))) : ((u = (h = this.map) == null ? void 0 : h.getLayer(this.enc)) == null || u.setLayoutProperty("visibility", "visible"), (m = (d = this.map) == null ? void 0 : d.getLayer(this.helper.mapboxCustomer.layers.countryBoundary.id)) == null || m.setLayoutProperty("visibility", "none")), this.$emit("activeWeatherLayers", this.activeWeatherLayers);
8566
+ this.activeWeatherLayers.length > 0 ? ((M = (z = this.map) == null ? void 0 : z.getLayer(this.enc)) == null || M.setLayoutProperty("visibility", "none"), (O = (b = this.map) == null ? void 0 : b.getLayer(this.helper.mapboxCustomer.layers.countryBoundary.id)) == null || O.setLayoutProperty("visibility", "visible"), (o = this.map) != null && o.getLayer((p = this.viewport) == null ? void 0 : p.rampColorLayer) && ((A = this.map) != null && A.getLayer(this.helper.mapboxCustomer.layers.countryBoundary.id)) && this.mapProjection === "mercator" && ((q = this.map) == null || q.moveLayer((t = this.viewport) == null ? void 0 : t.rampColorLayer, this.helper.mapboxCustomer.layers.countryBoundary.id)), (a = this.map) != null && a.getLayer((n = this.viewport) == null ? void 0 : n.particleLayer) && ((r = this.map) != null && r.getLayer(this.helper.mapboxCustomer.layers.countryBoundary.id)) && this.mapProjection === "mercator" && ((d = this.map) == null || d.moveLayer((L = this.viewport) == null ? void 0 : L.particleLayer, this.helper.mapboxCustomer.layers.countryBoundary.id))) : ((u = (h = this.map) == null ? void 0 : h.getLayer(this.enc)) == null || u.setLayoutProperty("visibility", "visible"), (m = (s = this.map) == null ? void 0 : s.getLayer(this.helper.mapboxCustomer.layers.countryBoundary.id)) == null || m.setLayoutProperty("visibility", "none")), this.$emit("activeWeatherLayers", this.activeWeatherLayers);
8528
8567
  },
8529
8568
  immediate: !0
8530
8569
  },
@@ -8576,59 +8615,59 @@ const Hb = {
8576
8615
  },
8577
8616
  methods: {
8578
8617
  async fetchWeatherLayers(z = { tropicals: !1 }) {
8579
- var p, o, e, t, q, r, a, i;
8618
+ var p, o, A, t, q, n, a, r;
8580
8619
  const M = (/* @__PURE__ */ new Date()).valueOf();
8581
8620
  let b = 0, O = 0;
8582
8621
  if (this.map) {
8583
- const L = ((p = this.map) == null ? void 0 : p.getZoom()) + 1, n = (o = this.map) == null ? void 0 : o.getBounds(), h = `${n._sw.lng},${n._sw.lat},${n._ne.lng},${n._ne.lat}`;
8622
+ const L = ((p = this.map) == null ? void 0 : p.getZoom()) + 1, d = (o = this.map) == null ? void 0 : o.getBounds(), h = `${d._sw.lng},${d._sw.lat},${d._ne.lng},${d._ne.lat}`;
8584
8623
  if (this.particleFactor) {
8585
- const u = x0.WEATHER_LAYERS.find((d) => {
8624
+ const u = x0.WEATHER_LAYERS.find((s) => {
8586
8625
  var m;
8587
- return ((m = d.peer) == null ? void 0 : m.weight) === this.particleFactor.weight;
8626
+ return ((m = s.peer) == null ? void 0 : m.weight) === this.particleFactor.weight;
8588
8627
  });
8589
8628
  this.particleFactor.particle ? this.weatherWeight = this.weatherWeight & u.weight ? this.weatherWeight : this.weatherWeight + u.weight : this.weatherWeight = this.weatherWeight & u.weight ? this.weatherWeight - u.weight : this.weatherWeight;
8590
8629
  }
8591
8630
  if (this.weatherWeight > 0) {
8592
- let u = this.weatherWeight, d;
8593
- if (z.tropicals || this.weatherWeight & 256 && (d = this.weatherLayers.tropicals, d && (u -= 256, d.version = Math.random() + 1)), u > 0) {
8594
- const m = await y0.get(`${this.gateway}/api/arc/weather/layers/links?l=${u}&v=${this.source}&z=${L}&bbox=${h}&t=${this.ts}`, {
8631
+ let u = this.weatherWeight, s;
8632
+ if (z.tropicals || this.weatherWeight & 256 && (s = this.weatherLayers.tropicals, s && (u -= 256, s.version = Math.random() + 1)), u > 0) {
8633
+ const m = await N0.get(`${this.gateway}/api/arc/weather/layers/links?l=${u}&v=${this.source}&z=${L}&bbox=${h}&t=${this.ts}`, {
8595
8634
  headers: {
8596
8635
  Authorization: this.token || this.defaultMeteoToken
8597
8636
  }
8598
8637
  });
8599
- if (O = (/* @__PURE__ */ new Date()).valueOf() - (M + b), console.log("weather links elapsed: ", O, ", total: ", b += O), ((e = m == null ? void 0 : m.data) == null ? void 0 : e.code) === 0) {
8600
- const R = (t = m == null ? void 0 : m.data) == null ? void 0 : t.data, X = [];
8601
- for (const g in R)
8602
- g === "ice-edge" && (R[g] = "https://idm-hz.oss-cn-hangzhou.aliyuncs.com/test/sea_ice_contours.geojson"), g !== "tropicals" && X.push(
8603
- y0.get(R[g], {
8638
+ if (O = (/* @__PURE__ */ new Date()).valueOf() - (M + b), console.log("weather links elapsed: ", O, ", total: ", b += O), ((A = m == null ? void 0 : m.data) == null ? void 0 : A.code) === 0) {
8639
+ const R = (t = m == null ? void 0 : m.data) == null ? void 0 : t.data, y = [];
8640
+ for (const N in R)
8641
+ N === "ice-edge" && (R[N] = "https://idm-hz.oss-cn-hangzhou.aliyuncs.com/test/sea_ice_contours.geojson"), N !== "tropicals" && y.push(
8642
+ N0.get(R[N], {
8604
8643
  headers: {
8605
8644
  Authorization: this.token || this.defaultMeteoToken,
8606
- key: g
8645
+ key: N
8607
8646
  },
8608
- responseType: /\.(jpg|png)$/.test(R[g]) ? "blob" : "json"
8609
- }).catch((U) => {
8610
- console.log(`[${g}] fetch layer error: ${U}`);
8647
+ responseType: /\.(jpg|png)$/.test(R[N]) ? "blob" : "json"
8648
+ }).catch((H) => {
8649
+ console.log(`[${N}] fetch layer error: ${H}`);
8611
8650
  })
8612
8651
  );
8613
- const x = await Promise.all(X);
8614
- this.weatherLayers = {}, x.map((g) => {
8615
- var C, Z, Y, i0;
8616
- const U = ((C = g == null ? void 0 : g.data) == null ? void 0 : C.data) || (g == null ? void 0 : g.data), y = (Y = (Z = g == null ? void 0 : g.config) == null ? void 0 : Z.headers) == null ? void 0 : Y.key;
8617
- y && U && (this.weatherLayers[y] = {
8618
- raw: U,
8619
- type: ((i0 = g == null ? void 0 : g.config) == null ? void 0 : i0.responseType) === "blob" ? "image" : "json",
8652
+ const T = await Promise.all(y);
8653
+ this.weatherLayers = {}, T.map((N) => {
8654
+ var V, $, g, E;
8655
+ const H = ((V = N == null ? void 0 : N.data) == null ? void 0 : V.data) || (N == null ? void 0 : N.data), K = (g = ($ = N == null ? void 0 : N.config) == null ? void 0 : $.headers) == null ? void 0 : g.key;
8656
+ K && H && (this.weatherLayers[K] = {
8657
+ raw: H,
8658
+ type: ((E = N == null ? void 0 : N.config) == null ? void 0 : E.responseType) === "blob" ? "image" : "json",
8620
8659
  etime: this.ts
8621
8660
  });
8622
- }), R.tropicals && y0.get(R.tropicals, {
8661
+ }), R.tropicals && N0.get(R.tropicals, {
8623
8662
  headers: {
8624
8663
  Authorization: this.token || this.defaultMeteoToken,
8625
8664
  key: "tropicals"
8626
8665
  }
8627
- }).then((g) => {
8628
- var C, Z, Y;
8629
- const U = I0.convert2Geojson(((C = g == null ? void 0 : g.data) == null ? void 0 : C.data) || (g == null ? void 0 : g.data)), y = (Y = (Z = g == null ? void 0 : g.config) == null ? void 0 : Z.headers) == null ? void 0 : Y.key;
8630
- this.weatherLayers[y] = {
8631
- data: U,
8666
+ }).then((N) => {
8667
+ var V, $, g;
8668
+ const H = Q0.convert2Geojson(((V = N == null ? void 0 : N.data) == null ? void 0 : V.data) || (N == null ? void 0 : N.data)), K = (g = ($ = N == null ? void 0 : N.config) == null ? void 0 : $.headers) == null ? void 0 : g.key;
8669
+ this.weatherLayers[K] = {
8670
+ data: H,
8632
8671
  active: !0,
8633
8672
  cached: !1,
8634
8673
  type: "json",
@@ -8638,25 +8677,25 @@ const Hb = {
8638
8677
  });
8639
8678
  }
8640
8679
  if (O = (/* @__PURE__ */ new Date()).valueOf() - (M + b), console.log("weather layers elapsed: ", O, ", total: ", b += O), this.weatherLayers["swell-direction"] || this.weatherLayers["swell-height"]) {
8641
- const R = (q = this.weatherLayers["swell-direction"]) == null ? void 0 : q.raw, X = (r = this.weatherLayers["swell-height"]) == null ? void 0 : r.raw;
8680
+ const R = (q = this.weatherLayers["swell-direction"]) == null ? void 0 : q.raw, y = (n = this.weatherLayers["swell-height"]) == null ? void 0 : n.raw;
8642
8681
  delete this.weatherLayers["swell-direction"], delete this.weatherLayers["swell-height"], this.weatherLayers.swell = {
8643
8682
  type: "json",
8644
8683
  direction: R,
8645
- height: { raw: X },
8684
+ height: { raw: y },
8646
8685
  etime: this.ts
8647
8686
  };
8648
8687
  }
8649
8688
  if (this.weatherLayers["current-direction"] || this.weatherLayers["current-speed"]) {
8650
- const R = (a = this.weatherLayers["current-direction"]) == null ? void 0 : a.raw, X = (i = this.weatherLayers["current-speed"]) == null ? void 0 : i.raw;
8689
+ const R = (a = this.weatherLayers["current-direction"]) == null ? void 0 : a.raw, y = (r = this.weatherLayers["current-speed"]) == null ? void 0 : r.raw;
8651
8690
  delete this.weatherLayers["current-direction"], delete this.weatherLayers["current-speed"], this.weatherLayers.current = {
8652
8691
  type: "json",
8653
8692
  direction: R,
8654
- speed: { raw: X },
8693
+ speed: { raw: y },
8655
8694
  etime: this.ts
8656
8695
  };
8657
8696
  }
8658
8697
  }
8659
- d && (d.etime = this.ts, d.cached = !0, this.weatherLayers.tropicals = d);
8698
+ s && (s.etime = this.ts, s.cached = !0, this.weatherLayers.tropicals = s);
8660
8699
  }
8661
8700
  this.handleWeatherLayerToggle(), this.handleDragEndWithZoom4Json();
8662
8701
  }
@@ -8667,58 +8706,58 @@ const Hb = {
8667
8706
  if (this.map) {
8668
8707
  let o = this.otherWeight;
8669
8708
  if (o) {
8670
- let e = !1;
8671
- if (this.otherWeight & 2048 && (o = this.otherWeight - 2048, e = !0), o) {
8709
+ let A = !1;
8710
+ if (this.otherWeight & 2048 && (o = this.otherWeight - 2048, A = !0), o) {
8672
8711
  if (z.all) {
8673
- const t = await y0.get(`${this.gateway}/api/arc/other/layers/links?l=${o}&t=${this.ts}`, {
8712
+ const t = await N0.get(`${this.gateway}/api/arc/other/layers/links?l=${o}&t=${this.ts}`, {
8674
8713
  headers: {
8675
8714
  Authorization: this.token || this.defaultMeteoToken
8676
8715
  }
8677
8716
  });
8678
8717
  if (((M = t == null ? void 0 : t.data) == null ? void 0 : M.code) === 0) {
8679
- const q = (b = t == null ? void 0 : t.data) == null ? void 0 : b.data, r = [];
8680
- for (const i in q)
8681
- r.push(
8682
- y0.get(q[i], {
8718
+ const q = (b = t == null ? void 0 : t.data) == null ? void 0 : b.data, n = [];
8719
+ for (const r in q)
8720
+ n.push(
8721
+ N0.get(q[r], {
8683
8722
  headers: {
8684
8723
  Authorization: this.token || this.defaultMeteoToken,
8685
- key: i
8724
+ key: r
8686
8725
  }
8687
8726
  })
8688
8727
  );
8689
- const a = await Promise.all(r);
8690
- this.otherLayers = { enc: e }, a.map((i) => {
8691
- var h, u, d;
8692
- const L = ((h = i == null ? void 0 : i.data) == null ? void 0 : h.data) || (i == null ? void 0 : i.data), n = (d = (u = i == null ? void 0 : i.config) == null ? void 0 : u.headers) == null ? void 0 : d.key;
8693
- this.otherLayers[n] = L;
8728
+ const a = await Promise.all(n);
8729
+ this.otherLayers = { enc: A }, a.map((r) => {
8730
+ var h, u, s;
8731
+ const L = ((h = r == null ? void 0 : r.data) == null ? void 0 : h.data) || (r == null ? void 0 : r.data), d = (s = (u = r == null ? void 0 : r.config) == null ? void 0 : u.headers) == null ? void 0 : s.key;
8732
+ this.otherLayers[d] = L;
8694
8733
  });
8695
8734
  }
8696
8735
  } else if (z.dayNight && o & 1024) {
8697
- const t = await y0.get(`${this.gateway}/api/arc/other/layers/links?l=1024&t=${this.ts}`, {
8736
+ const t = await N0.get(`${this.gateway}/api/arc/other/layers/links?l=1024&t=${this.ts}`, {
8698
8737
  headers: {
8699
8738
  Authorization: this.token || this.defaultMeteoToken
8700
8739
  }
8701
8740
  });
8702
8741
  if (((O = t == null ? void 0 : t.data) == null ? void 0 : O.code) === 0) {
8703
- const q = (p = t == null ? void 0 : t.data) == null ? void 0 : p.data, r = [];
8704
- for (const i in q)
8705
- r.push(
8706
- y0.get(q[i], {
8742
+ const q = (p = t == null ? void 0 : t.data) == null ? void 0 : p.data, n = [];
8743
+ for (const r in q)
8744
+ n.push(
8745
+ N0.get(q[r], {
8707
8746
  headers: {
8708
8747
  Authorization: this.token || this.defaultMeteoToken,
8709
- key: i
8748
+ key: r
8710
8749
  }
8711
8750
  })
8712
8751
  );
8713
- (await Promise.all(r)).map((i) => {
8714
- var h, u, d;
8715
- const L = ((h = i == null ? void 0 : i.data) == null ? void 0 : h.data) || (i == null ? void 0 : i.data), n = (d = (u = i == null ? void 0 : i.config) == null ? void 0 : u.headers) == null ? void 0 : d.key;
8716
- this.otherLayers[n] = L;
8752
+ (await Promise.all(n)).map((r) => {
8753
+ var h, u, s;
8754
+ const L = ((h = r == null ? void 0 : r.data) == null ? void 0 : h.data) || (r == null ? void 0 : r.data), d = (s = (u = r == null ? void 0 : r.config) == null ? void 0 : u.headers) == null ? void 0 : s.key;
8755
+ this.otherLayers[d] = L;
8717
8756
  });
8718
8757
  }
8719
8758
  }
8720
8759
  } else
8721
- this.otherLayers = { enc: e };
8760
+ this.otherLayers = { enc: A };
8722
8761
  } else
8723
8762
  this.otherLayers = {};
8724
8763
  this.handleBeforeLayerToggle();
@@ -8734,7 +8773,7 @@ const Hb = {
8734
8773
  this.activeWindLayer = !!this.activeWeatherLayers.find((M) => M.key === "wind"), this.$refs.layer && (this.$refs.layer.activeWeatherLayers = this.activeWeatherLayers);
8735
8774
  },
8736
8775
  handleRampColorInitial() {
8737
- var z, M, b, O, p, o, e, t, q, r, a, i;
8776
+ var z, M, b, O, p, o, A, t, q, n, a, r;
8738
8777
  this.viewport.map.getSource((z = this.viewport) == null ? void 0 : z.rampColorSource) || this.viewport.map.addSource((M = this.viewport) == null ? void 0 : M.rampColorSource, {
8739
8778
  type: "canvas",
8740
8779
  canvas: (b = this.viewport) == null ? void 0 : b.rampColorCanvas,
@@ -8750,16 +8789,16 @@ const Hb = {
8750
8789
  }
8751
8790
  },
8752
8791
  this.beforeLayer
8753
- ), this.viewport.map.getSource((e = this.viewport) == null ? void 0 : e.particleSource) || this.viewport.map.addSource((t = this.viewport) == null ? void 0 : t.particleSource, {
8792
+ ), this.viewport.map.getSource((A = this.viewport) == null ? void 0 : A.particleSource) || this.viewport.map.addSource((t = this.viewport) == null ? void 0 : t.particleSource, {
8754
8793
  type: "canvas",
8755
8794
  canvas: (q = this.viewport) == null ? void 0 : q.particleCanvas,
8756
8795
  animate: !0,
8757
8796
  coordinates: this.viewport.getBoundLngLat()
8758
- }), this.viewport.map.getLayer((r = this.viewport) == null ? void 0 : r.particleLayer) || this.viewport.map.addLayer(
8797
+ }), this.viewport.map.getLayer((n = this.viewport) == null ? void 0 : n.particleLayer) || this.viewport.map.addLayer(
8759
8798
  {
8760
8799
  type: "raster",
8761
8800
  id: (a = this.viewport) == null ? void 0 : a.particleLayer,
8762
- source: (i = this.viewport) == null ? void 0 : i.particleSource,
8801
+ source: (r = this.viewport) == null ? void 0 : r.particleSource,
8763
8802
  layout: {
8764
8803
  visibility: "none"
8765
8804
  }
@@ -8768,186 +8807,186 @@ const Hb = {
8768
8807
  );
8769
8808
  },
8770
8809
  handleDragEndWithZoom4Json() {
8771
- var r, a, i, L;
8810
+ var n, a, r, L;
8772
8811
  const z = (/* @__PURE__ */ new Date()).valueOf();
8773
8812
  let M = 0, b = 0;
8774
- const O = (r = this.map) == null ? void 0 : r.getBounds(), p = this.map.getZoom(), o = M0.convertToStdLng(O._sw.lng), e = M0.convertToStdLng(O._ne.lng), t = Math.floor(O._sw.lat), q = Math.ceil(O._ne.lat);
8775
- for (const n in this.weatherLayers)
8776
- if (this.weatherLayers[n].active && this.weatherLayers[n].type === "json") {
8777
- this.weatherLayers[n].active = !1, this.weatherLayers[n].version = Math.random() + 1;
8813
+ const O = (n = this.map) == null ? void 0 : n.getBounds(), p = this.map.getZoom(), o = M0.convertToStdLng(O._sw.lng), A = M0.convertToStdLng(O._ne.lng), t = Math.floor(O._sw.lat), q = Math.ceil(O._ne.lat);
8814
+ for (const d in this.weatherLayers)
8815
+ if (this.weatherLayers[d].active && this.weatherLayers[d].type === "json") {
8816
+ this.weatherLayers[d].active = !1, this.weatherLayers[d].version = Math.random() + 1;
8778
8817
  let h = [];
8779
- if (["swell", "current"].includes(n)) {
8780
- const u = ((a = this.weatherLayers[n]) == null ? void 0 : a.direction) || {};
8781
- for (const d in u)
8782
- if (d > t && d < q && (!(p <= this.zoom) || d % (p < this.zoom / 2 ? 5 : 3) === 0)) {
8783
- const m = u[d].lng;
8784
- o > e ? m.forEach((R, X) => {
8785
- var x;
8786
- if ((R >= o && R <= 180 || R >= -180 && R <= e) && (!(p <= this.zoom) || R % (p < this.zoom / 2 ? 5 : 3) === 0)) {
8787
- const g = w.point([R, d], {
8788
- val: u[d].val[X],
8789
- spd: (x = u[d].spd) == null ? void 0 : x[X]
8818
+ if (["swell", "current"].includes(d)) {
8819
+ const u = ((a = this.weatherLayers[d]) == null ? void 0 : a.direction) || {};
8820
+ for (const s in u)
8821
+ if (s > t && s < q && (!(p <= this.zoom) || s % (p < this.zoom / 2 ? 5 : 3) === 0)) {
8822
+ const m = u[s].lng;
8823
+ o > A ? m.forEach((R, y) => {
8824
+ var T;
8825
+ if ((R >= o && R <= 180 || R >= -180 && R <= A) && (!(p <= this.zoom) || R % (p < this.zoom / 2 ? 5 : 3) === 0)) {
8826
+ const N = C.point([R, s], {
8827
+ val: u[s].val[y],
8828
+ spd: (T = u[s].spd) == null ? void 0 : T[y]
8790
8829
  });
8791
- h.push(g);
8830
+ h.push(N);
8792
8831
  }
8793
- }) : m.forEach((R, X) => {
8794
- var x;
8795
- if (R >= o && R <= e && (!(p <= this.zoom) || R % (p < this.zoom / 2 ? 5 : 3) === 0)) {
8796
- const g = w.point([R, d], {
8797
- val: u[d].val[X],
8798
- spd: (x = u[d].spd) == null ? void 0 : x[X]
8832
+ }) : m.forEach((R, y) => {
8833
+ var T;
8834
+ if (R >= o && R <= A && (!(p <= this.zoom) || R % (p < this.zoom / 2 ? 5 : 3) === 0)) {
8835
+ const N = C.point([R, s], {
8836
+ val: u[s].val[y],
8837
+ spd: (T = u[s].spd) == null ? void 0 : T[y]
8799
8838
  });
8800
- h.push(g);
8839
+ h.push(N);
8801
8840
  }
8802
8841
  });
8803
8842
  }
8804
- if (b = (/* @__PURE__ */ new Date()).valueOf() - (z + M), console.log("direction elapsed: ", b, ", total: ", M += b), n === "swell") {
8805
- const d = this.weatherLayers[n].height;
8806
- if (d) {
8807
- if (!d.data) {
8843
+ if (b = (/* @__PURE__ */ new Date()).valueOf() - (z + M), console.log("direction elapsed: ", b, ", total: ", M += b), d === "swell") {
8844
+ const s = this.weatherLayers[d].height;
8845
+ if (s) {
8846
+ if (!s.data) {
8808
8847
  const m = [];
8809
- for (const R in (i = d.raw) == null ? void 0 : i.LineString) {
8810
- const X = d.raw.LineString[R];
8811
- for (const x of X)
8848
+ for (const R in (r = s.raw) == null ? void 0 : r.LineString) {
8849
+ const y = s.raw.LineString[R];
8850
+ for (const T of y)
8812
8851
  m.push(
8813
- w.lineString(x, {
8852
+ C.lineString(T, {
8814
8853
  val: Number(R)
8815
8854
  })
8816
8855
  );
8817
- d.data = w.featureCollection(m);
8856
+ s.data = C.featureCollection(m);
8818
8857
  }
8819
8858
  }
8820
- if (d.data) {
8821
- const m = this.handleBboxClip(d.data, O);
8859
+ if (s.data) {
8860
+ const m = this.handleBboxClip(s.data, O);
8822
8861
  h = h.concat(m);
8823
8862
  }
8824
8863
  b = (/* @__PURE__ */ new Date()).valueOf() - (z + M), console.log("height elapsed: ", b, ", total: ", M += b);
8825
8864
  }
8826
8865
  }
8827
- if (n === "current") {
8828
- const d = this.weatherLayers[n].speed;
8829
- if (d) {
8830
- if (!d.data) {
8866
+ if (d === "current") {
8867
+ const s = this.weatherLayers[d].speed;
8868
+ if (s) {
8869
+ if (!s.data) {
8831
8870
  const R = [];
8832
- for (const X in (L = d.raw) == null ? void 0 : L.Polygon) {
8833
- const x = d.raw.Polygon[X];
8834
- for (const g of x)
8871
+ for (const y in (L = s.raw) == null ? void 0 : L.Polygon) {
8872
+ const T = s.raw.Polygon[y];
8873
+ for (const N of T)
8835
8874
  R.push(
8836
- w.polygon(g, {
8837
- val: Number(X)
8875
+ C.polygon(N, {
8876
+ val: Number(y)
8838
8877
  })
8839
8878
  );
8840
8879
  }
8841
- d.data = w.featureCollection(R);
8880
+ s.data = C.featureCollection(R);
8842
8881
  }
8843
- const m = p < this.zoom ? d.data.features.filter((R) => R.properties.val > 0.5) : d.data.features;
8882
+ const m = p < this.zoom ? s.data.features.filter((R) => R.properties.val > 0.5) : s.data.features;
8844
8883
  h = h.concat(m), b = (/* @__PURE__ */ new Date()).valueOf() - (z + M), console.log("speed elapsed: ", b, ", total: ", M += b);
8845
8884
  }
8846
8885
  }
8847
- } else if (n === "wind") {
8886
+ } else if (d === "wind") {
8848
8887
  const u = this.weatherLayers.wind.raw;
8849
- for (const d in u)
8850
- if (d > t && d < q && (!(p <= this.zoom) || d % (p < this.zoom / 2 ? 5 : 3) === 0)) {
8851
- const m = u[d].lng;
8852
- o > e ? m.forEach((R, X) => {
8853
- if ((R >= o && R <= 180 || R >= -180 && R <= e) && (!(p <= this.zoom) || R % (p < this.zoom / 2 ? 5 : 3) === 0)) {
8854
- const x = w.point([R, d], {
8855
- val: u[d].val[X],
8856
- spd: u[d].spd[X]
8888
+ for (const s in u)
8889
+ if (s > t && s < q && (!(p <= this.zoom) || s % (p < this.zoom / 2 ? 5 : 3) === 0)) {
8890
+ const m = u[s].lng;
8891
+ o > A ? m.forEach((R, y) => {
8892
+ if ((R >= o && R <= 180 || R >= -180 && R <= A) && (!(p <= this.zoom) || R % (p < this.zoom / 2 ? 5 : 3) === 0)) {
8893
+ const T = C.point([R, s], {
8894
+ val: u[s].val[y],
8895
+ spd: u[s].spd[y]
8857
8896
  });
8858
- h.push(x);
8897
+ h.push(T);
8859
8898
  }
8860
- }) : m.forEach((R, X) => {
8861
- if (R >= o && R <= e && (!(p <= this.zoom) || R % (p < this.zoom / 2 ? 5 : 3) === 0)) {
8862
- const x = w.point([R, d], {
8863
- val: u[d].val[X],
8864
- spd: u[d].spd[X]
8899
+ }) : m.forEach((R, y) => {
8900
+ if (R >= o && R <= A && (!(p <= this.zoom) || R % (p < this.zoom / 2 ? 5 : 3) === 0)) {
8901
+ const T = C.point([R, s], {
8902
+ val: u[s].val[y],
8903
+ spd: u[s].spd[y]
8865
8904
  });
8866
- h.push(x);
8905
+ h.push(T);
8867
8906
  }
8868
8907
  });
8869
8908
  }
8870
8909
  b = (/* @__PURE__ */ new Date()).valueOf() - (z + M), console.log("wind barb elapsed: ", b, ", total: ", M += b);
8871
- } else if (n === "sig-wave-height") {
8872
- if (this.weatherLayers[n].data)
8873
- h = this.weatherLayers[n].data;
8910
+ } else if (d === "sig-wave-height") {
8911
+ if (this.weatherLayers[d].data)
8912
+ h = this.weatherLayers[d].data;
8874
8913
  else {
8875
- const u = this.weatherLayers[n].raw;
8914
+ const u = this.weatherLayers[d].raw;
8876
8915
  if (u) {
8877
- const d = [];
8916
+ const s = [];
8878
8917
  for (const m in u.Polygon) {
8879
8918
  const R = u.Polygon[m];
8880
- for (const X of R)
8881
- d.push(
8882
- w.polygon(X, {
8919
+ for (const y of R)
8920
+ s.push(
8921
+ C.polygon(y, {
8883
8922
  val: Number(m)
8884
8923
  })
8885
8924
  );
8886
8925
  }
8887
8926
  for (const m in u.Point) {
8888
8927
  const R = u.Point[m];
8889
- for (const X of R)
8890
- d.push(
8891
- ...w.points(X, {
8928
+ for (const y of R)
8929
+ s.push(
8930
+ ...C.points(y, {
8892
8931
  val: Number(m)
8893
8932
  }).features
8894
8933
  );
8895
8934
  }
8896
- h = h.concat(d);
8935
+ h = h.concat(s);
8897
8936
  }
8898
8937
  }
8899
8938
  b = (/* @__PURE__ */ new Date()).valueOf() - (z + M), console.log("sigWave elapsed: ", b, ", total: ", M += b);
8900
- } else if (n === "prmsl") {
8901
- if (this.weatherLayers[n].data)
8902
- h = this.weatherLayers[n].data;
8939
+ } else if (d === "prmsl") {
8940
+ if (this.weatherLayers[d].data)
8941
+ h = this.weatherLayers[d].data;
8903
8942
  else {
8904
- const u = this.weatherLayers[n].raw;
8943
+ const u = this.weatherLayers[d].raw;
8905
8944
  if (u) {
8906
- const d = [];
8945
+ const s = [];
8907
8946
  for (const m in u.LineString) {
8908
8947
  const R = u.LineString[m];
8909
- for (const X of R)
8910
- d.push(
8911
- w.lineString(X, {
8948
+ for (const y of R)
8949
+ s.push(
8950
+ C.lineString(y, {
8912
8951
  val: Number(m)
8913
8952
  })
8914
8953
  );
8915
8954
  }
8916
8955
  for (const m in u.Point)
8917
- u.Point[m].lng.forEach((R, X) => {
8918
- R = M0.convertToStdLng(R), d.push(
8919
- w.point([R, m], {
8920
- val: u.Point[m].val[X],
8921
- type: u.Point[m].type[X]
8956
+ u.Point[m].lng.forEach((R, y) => {
8957
+ R = M0.convertToStdLng(R), s.push(
8958
+ C.point([R, m], {
8959
+ val: u.Point[m].val[y],
8960
+ type: u.Point[m].type[y]
8922
8961
  })
8923
8962
  );
8924
8963
  });
8925
- h = h.concat(d);
8964
+ h = h.concat(s);
8926
8965
  }
8927
8966
  }
8928
8967
  b = (/* @__PURE__ */ new Date()).valueOf() - (z + M), console.log("prmsl elapsed: ", b, ", total: ", M += b);
8929
- } else if (n === "arctic" || n === "iceberg") {
8930
- if (this.weatherLayers[n].data)
8931
- h = this.weatherLayers[n].data;
8968
+ } else if (d === "arctic" || d === "iceberg") {
8969
+ if (this.weatherLayers[d].data)
8970
+ h = this.weatherLayers[d].data;
8932
8971
  else {
8933
- const u = this.weatherLayers[n].raw;
8972
+ const u = this.weatherLayers[d].raw;
8934
8973
  if (u) {
8935
- const d = [];
8974
+ const s = [];
8936
8975
  for (const m in u.LineString) {
8937
8976
  const R = u.LineString[m];
8938
- for (const X of R)
8939
- d.push(
8940
- w.lineString(X, {
8977
+ for (const y of R)
8978
+ s.push(
8979
+ C.lineString(y, {
8941
8980
  val: Number(m)
8942
8981
  })
8943
8982
  );
8944
8983
  }
8945
- h = h.concat(d);
8984
+ h = h.concat(s);
8946
8985
  }
8947
8986
  }
8948
8987
  b = (/* @__PURE__ */ new Date()).valueOf() - (z + M);
8949
8988
  }
8950
- console.log(n, " elapsed: ", b, ", total: ", M += b), h.length && (this.weatherLayers[n].data = w.featureCollection(h)), this.weatherLayers[n].active = !0, this.weatherLayers[n].version = Math.random() + 1;
8989
+ console.log(d, " elapsed: ", b, ", total: ", M += b), h.length && (this.weatherLayers[d].data = C.featureCollection(h)), this.weatherLayers[d].active = !0, this.weatherLayers[d].version = Math.random() + 1;
8951
8990
  }
8952
8991
  },
8953
8992
  handleDragEndWithZoom4Image() {
@@ -8959,10 +8998,10 @@ const Hb = {
8959
8998
  return z.features.forEach((o) => {
8960
8999
  if (o.geometry.type !== "Point")
8961
9000
  if (O > p) {
8962
- let e = [O, M._sw.lat, 180, M._ne.lat], t = w.bboxClip(o, e);
8963
- t.geometry.coordinates.length && b.push(t), e = [-180, M._sw.lat, p, M._ne.lat], t = w.bboxClip(o, e), t.geometry.coordinates.length && b.push(t);
9001
+ let A = [O, M._sw.lat, 180, M._ne.lat], t = C.bboxClip(o, A);
9002
+ t.geometry.coordinates.length && b.push(t), A = [-180, M._sw.lat, p, M._ne.lat], t = C.bboxClip(o, A), t.geometry.coordinates.length && b.push(t);
8964
9003
  } else {
8965
- const e = [O, M._sw.lat, p, M._ne.lat], t = w.bboxClip(o, e);
9004
+ const A = [O, M._sw.lat, p, M._ne.lat], t = C.bboxClip(o, A);
8966
9005
  t.geometry.coordinates.length && b.push(t);
8967
9006
  }
8968
9007
  else
@@ -8980,8 +9019,8 @@ const Hb = {
8980
9019
  this.handleBeforeLayerToggle();
8981
9020
  },
8982
9021
  handleBeforeLayerToggle() {
8983
- var z, M, b, O, p, o, e, t, q, r, a, i, L;
8984
- (z = this.map) != null && z.getLayer(this.beforeLayer) && ((M = this.activeWeatherLayers) != null && M.length || (b = this.otherLayers) != null && b["war-zones"] || (O = this.otherLayers) != null && O["gmdss-areas"] || (p = this.otherLayers) != null && p["load-lines"] || (o = this.otherLayers) != null && o["high-risk-area"] || (e = this.otherLayers) != null && e["time-zones"] || (t = this.otherLayers) != null && t.pirates || (q = this.otherLayers) != null && q.ports || (r = this.otherLayers) != null && r.enc || (a = this.otherLayers) != null && a["voluntary-reporting-area"] || (i = this.otherLayers) != null && i["eca-zones"] || (L = this.otherLayers) != null && L["special-area"]) && this.map.setLayoutProperty(this.beforeLayer, "visibility", "visible");
9022
+ var z, M, b, O, p, o, A, t, q, n, a, r, L;
9023
+ (z = this.map) != null && z.getLayer(this.beforeLayer) && ((M = this.activeWeatherLayers) != null && M.length || (b = this.otherLayers) != null && b["war-zones"] || (O = this.otherLayers) != null && O["gmdss-areas"] || (p = this.otherLayers) != null && p["load-lines"] || (o = this.otherLayers) != null && o["high-risk-area"] || (A = this.otherLayers) != null && A["time-zones"] || (t = this.otherLayers) != null && t.pirates || (q = this.otherLayers) != null && q.ports || (n = this.otherLayers) != null && n.enc || (a = this.otherLayers) != null && a["voluntary-reporting-area"] || (r = this.otherLayers) != null && r["eca-zones"] || (L = this.otherLayers) != null && L["special-area"]) && this.map.setLayoutProperty(this.beforeLayer, "visibility", "visible");
8985
9024
  },
8986
9025
  handleDateChange(z = { tropicals: !1 }) {
8987
9026
  this.fetchWeatherLayers(z), this.fetchOtherLayers({ dayNight: !0 });
@@ -8991,14 +9030,14 @@ const Hb = {
8991
9030
  this.activeWeatherLayers = JSON.parse(JSON.stringify(z));
8992
9031
  const b = this.activeWeatherLayers.some(
8993
9032
  (o) => {
8994
- var e;
8995
- return ["wind", "current"].includes(o.key) && (!((e = Object.keys(o)) != null && e.some((t) => t === "particle")) || !!o.particle);
9033
+ var A;
9034
+ return ["wind", "current"].includes(o.key) && (!((A = Object.keys(o)) != null && A.some((t) => t === "particle")) || !!o.particle);
8996
9035
  }
8997
9036
  ), O = this.activeWeatherLayers.some((o) => ["png", "jpg"].includes(o.type));
8998
9037
  b && !O ? (this.activeWeatherLayers.forEach((o) => {
8999
9038
  o.key === "wind" && o.particle && (this.particleFactor = o, this.showWindParticle = !0), o.key === "current" && o.particle && (this.particleFactor = o, this.showCurrentParticle = !0);
9000
9039
  }), this.particleFactor.particle = !0) : O && this.particleFactor && (this.particleFactor.particle = !1);
9001
- const p = z == null ? void 0 : z.reduce((o, e) => o + (o & (e == null ? void 0 : e.weight) ? 0 : e == null ? void 0 : e.weight), 0);
9040
+ const p = z == null ? void 0 : z.reduce((o, A) => o + (o & (A == null ? void 0 : A.weight) ? 0 : A == null ? void 0 : A.weight), 0);
9002
9041
  this.weatherWeight !== p || this.source !== M ? (this.source = M, this.weatherWeight = p, this.fetchWeatherLayers({ tropicals: !1 })) : this.handleWeatherLayerToggle();
9003
9042
  }) : setTimeout(() => {
9004
9043
  this.handleWeatherLayerChange(z, M);
@@ -9015,8 +9054,8 @@ const Hb = {
9015
9054
  }
9016
9055
  },
9017
9056
  handle3dToggle(z) {
9018
- var M, b, O, p, o, e, t, q, r, a, i, L, n, h, u, d, m, R, X, x;
9019
- z ? (this.map.setProjection("globe"), this.mapProjection = "globe", (b = this.map) != null && b.getLayer((M = this.viewport) == null ? void 0 : M.rampColorLayer) && ((O = this.map) != null && O.getLayer(this.helper.mapboxCustomer.layers.water.id)) && ((o = this.map) == null || o.moveLayer((p = this.viewport) == null ? void 0 : p.rampColorLayer, this.helper.mapboxCustomer.layers.water.id)), (t = this.map) != null && t.getLayer((e = this.viewport) == null ? void 0 : e.particleLayer) && ((q = this.map) != null && q.getLayer(this.helper.mapboxCustomer.layers.water.id)) && ((a = this.map) == null || a.moveLayer((r = this.viewport) == null ? void 0 : r.particleLayer, this.helper.mapboxCustomer.layers.water.id)), this.map.off("zoomend", this.handleDragEndWithZoom4Json), this.map.off("dragend", this.handleDragEndWithZoom4Json), this.map.off("move", this.handleDragEndWithZoom4Image)) : (this.map.setProjection("mercator"), this.mapProjection = "mercator", this.map.on("zoomend", this.handleDragEndWithZoom4Json), this.map.on("dragend", this.handleDragEndWithZoom4Json), this.map.on("move", this.handleDragEndWithZoom4Image), this.handleDragEndWithZoom4Image(), this.handleDragEndWithZoom4Json(), (L = this.map) != null && L.getLayer((i = this.viewport) == null ? void 0 : i.rampColorLayer) && ((n = this.map) != null && n.getLayer(this.helper.mapboxCustomer.layers.countryBoundary.id)) && ((u = this.map) == null || u.moveLayer((h = this.viewport) == null ? void 0 : h.rampColorLayer, this.helper.mapboxCustomer.layers.countryBoundary.id)), (m = this.map) != null && m.getLayer((d = this.viewport) == null ? void 0 : d.particleLayer) && ((R = this.map) != null && R.getLayer(this.helper.mapboxCustomer.layers.countryBoundary.id)) && ((x = this.map) == null || x.moveLayer((X = this.viewport) == null ? void 0 : X.particleLayer, this.helper.mapboxCustomer.layers.countryBoundary.id)));
9057
+ var M, b, O, p, o, A, t, q, n, a, r, L, d, h, u, s, m, R, y, T;
9058
+ z ? (this.map.setProjection("globe"), this.mapProjection = "globe", (b = this.map) != null && b.getLayer((M = this.viewport) == null ? void 0 : M.rampColorLayer) && ((O = this.map) != null && O.getLayer(this.helper.mapboxCustomer.layers.water.id)) && ((o = this.map) == null || o.moveLayer((p = this.viewport) == null ? void 0 : p.rampColorLayer, this.helper.mapboxCustomer.layers.water.id)), (t = this.map) != null && t.getLayer((A = this.viewport) == null ? void 0 : A.particleLayer) && ((q = this.map) != null && q.getLayer(this.helper.mapboxCustomer.layers.water.id)) && ((a = this.map) == null || a.moveLayer((n = this.viewport) == null ? void 0 : n.particleLayer, this.helper.mapboxCustomer.layers.water.id)), this.map.off("zoomend", this.handleDragEndWithZoom4Json), this.map.off("dragend", this.handleDragEndWithZoom4Json), this.map.off("move", this.handleDragEndWithZoom4Image)) : (this.map.setProjection("mercator"), this.mapProjection = "mercator", this.map.on("zoomend", this.handleDragEndWithZoom4Json), this.map.on("dragend", this.handleDragEndWithZoom4Json), this.map.on("move", this.handleDragEndWithZoom4Image), this.handleDragEndWithZoom4Image(), this.handleDragEndWithZoom4Json(), (L = this.map) != null && L.getLayer((r = this.viewport) == null ? void 0 : r.rampColorLayer) && ((d = this.map) != null && d.getLayer(this.helper.mapboxCustomer.layers.countryBoundary.id)) && ((u = this.map) == null || u.moveLayer((h = this.viewport) == null ? void 0 : h.rampColorLayer, this.helper.mapboxCustomer.layers.countryBoundary.id)), (m = this.map) != null && m.getLayer((s = this.viewport) == null ? void 0 : s.particleLayer) && ((R = this.map) != null && R.getLayer(this.helper.mapboxCustomer.layers.countryBoundary.id)) && ((T = this.map) == null || T.moveLayer((y = this.viewport) == null ? void 0 : y.particleLayer, this.helper.mapboxCustomer.layers.countryBoundary.id)));
9020
9059
  },
9021
9060
  handleParticle(z) {
9022
9061
  this.particleFactor = z, this.weatherLayers[z.key] && (this.weatherLayers[z.key].particle = z.particle), this.activeWeatherLayers.map((O) => {
@@ -9034,15 +9073,15 @@ const Hb = {
9034
9073
  this.$emit("toggleVersion", Math.random());
9035
9074
  }
9036
9075
  }
9037
- }, Gb = {
9076
+ }, Yb = {
9038
9077
  key: 0,
9039
9078
  className: "map-gl-home"
9040
9079
  };
9041
9080
  function Vb(z, M, b, O, p, o) {
9042
- var d0, n0, W0, N0, s0, k, z0, t0, E, p0, l0, c0, u0, B, A, W, s, N, v, P, Q, D, G, w0, P0, k0;
9043
- const e = S("IdmGlLayer"), t = S("IdmENC"), q = S("IdmSigWave"), r = S("IdmSwell"), a = S("IdmPrmsl"), i = S("IdmIceberg"), L = S("IdmTropicals"), n = S("IdmCurrents"), h = S("IdmCurrentParticle"), u = S("IdmWindBarb"), d = S("IdmWindParticle"), m = S("IdmPrecip3h"), R = S("IdmVisibility"), X = S("IdmWaterTemp"), x = S("IdmTemp"), g = S("IdmArctic"), U = S("IdmWarZone"), y = S("IdmGmdssArea"), C = S("IdmEcaZone"), Z = S("IdmAlertZone"), Y = S("IdmPort"), i0 = S("IdmLoadLine"), L0 = S("IdmTimezone"), R0 = S("IdmVRA"), r0 = S("IdmSpecialArea"), f0 = S("IdmTerminator"), O0 = S("IdmLatLng"), h0 = S("IdmMeasure"), m0 = S("IdmPoint");
9044
- return b.map ? (l(), f("div", Gb, [
9045
- T(e, j({
9081
+ var s0, r0, W0, B0, l0, P, z0, t0, I, p0, f0, u0, R0, c0, e, i, f, B, X, D, Z, S, G, v0, P0, S0;
9082
+ const A = x("IdmGlLayer"), t = x("IdmENC"), q = x("IdmSigWave"), n = x("IdmSwell"), a = x("IdmPrmsl"), r = x("IdmIceberg"), L = x("IdmTropicals"), d = x("IdmCurrents"), h = x("IdmCurrentParticle"), u = x("IdmWindBarb"), s = x("IdmWindParticle"), m = x("IdmPrecip3h"), R = x("IdmVisibility"), y = x("IdmWaterTemp"), T = x("IdmTemp"), N = x("IdmArctic"), H = x("IdmWarZone"), K = x("IdmGmdssArea"), V = x("IdmEcaZone"), $ = x("IdmAlertZone"), g = x("IdmPort"), E = x("IdmLoadLine"), n0 = x("IdmTimezone"), d0 = x("IdmVRA"), i0 = x("IdmSpecialArea"), L0 = x("IdmTerminator"), O0 = x("IdmLatLng"), h0 = x("IdmMeasure"), m0 = x("IdmPoint");
9083
+ return b.map ? (W(), l("div", Yb, [
9084
+ w(A, Q({
9046
9085
  ref: "layer",
9047
9086
  map: b.map,
9048
9087
  "toggle-version": b.toggleVersion,
@@ -9064,44 +9103,44 @@ function Vb(z, M, b, O, p, o) {
9064
9103
  on3d: o.handle3dToggle,
9065
9104
  onHandleToggleVersion: o.handleToggleVersion
9066
9105
  }), null, 16, ["map", "toggle-version", "map-projection", "showWindFeather", "showWindParticle", "showCurrentIsoband", "showCurrentParticle", "onWeather", "onOther", "on3d", "onHandleToggleVersion"]),
9067
- T(t, j({
9106
+ w(t, Q({
9068
9107
  map: b.map,
9069
9108
  token: b.token,
9070
- enabled: (d0 = p.otherLayers) == null ? void 0 : d0.enc,
9109
+ enabled: (s0 = p.otherLayers) == null ? void 0 : s0.enc,
9071
9110
  "toggle-version": b.toggleVersion
9072
9111
  }, z.$attrs, {
9073
9112
  onEnc: M[7] || (M[7] = (a0) => p.enc = a0)
9074
9113
  }), null, 16, ["map", "token", "enabled", "toggle-version"]),
9075
- T(q, j({
9114
+ w(q, Q({
9076
9115
  map: b.map,
9077
- "sig-wave": (n0 = p.weatherLayers) == null ? void 0 : n0["sig-wave-height"],
9116
+ "sig-wave": (r0 = p.weatherLayers) == null ? void 0 : r0["sig-wave-height"],
9078
9117
  "before-layer": b.beforeLayer,
9079
9118
  activeWeatherLayers: p.activeWeatherLayers
9080
9119
  }, z.$attrs), null, 16, ["map", "sig-wave", "before-layer", "activeWeatherLayers"]),
9081
- T(r, j({
9120
+ w(n, Q({
9082
9121
  map: b.map,
9083
9122
  swell: (W0 = p.weatherLayers) == null ? void 0 : W0.swell,
9084
9123
  "before-layer": b.beforeLayer,
9085
9124
  activeWeatherLayers: p.activeWeatherLayers
9086
9125
  }, z.$attrs), null, 16, ["map", "swell", "before-layer", "activeWeatherLayers"]),
9087
- T(a, j({
9126
+ w(a, Q({
9088
9127
  map: b.map,
9089
- prmsl: (N0 = p.weatherLayers) == null ? void 0 : N0.prmsl,
9128
+ prmsl: (B0 = p.weatherLayers) == null ? void 0 : B0.prmsl,
9090
9129
  "before-layer": b.beforeLayer,
9091
9130
  "active-weather-layers": p.activeWeatherLayers
9092
9131
  }, z.$attrs), null, 16, ["map", "prmsl", "before-layer", "active-weather-layers"]),
9093
- T(i, j({
9132
+ w(r, Q({
9094
9133
  map: b.map,
9095
- iceberg: (s0 = p.weatherLayers) == null ? void 0 : s0.iceberg,
9134
+ iceberg: (l0 = p.weatherLayers) == null ? void 0 : l0.iceberg,
9096
9135
  "before-layer": b.beforeLayer
9097
9136
  }, z.$attrs), null, 16, ["map", "iceberg", "before-layer"]),
9098
- T(L, j({
9137
+ w(L, Q({
9099
9138
  map: b.map,
9100
9139
  date: b.ts,
9101
- tropicals: (k = p.weatherLayers) == null ? void 0 : k.tropicals,
9140
+ tropicals: (P = p.weatherLayers) == null ? void 0 : P.tropicals,
9102
9141
  "before-layer": b.beforeLayer
9103
9142
  }, z.$attrs), null, 16, ["map", "date", "tropicals", "before-layer"]),
9104
- T(n, j({
9143
+ w(d, Q({
9105
9144
  map: b.map,
9106
9145
  "map-projection": p.mapProjection,
9107
9146
  current: (z0 = p.weatherLayers) == null ? void 0 : z0.current,
@@ -9115,17 +9154,17 @@ function Vb(z, M, b, O, p, o) {
9115
9154
  onParticle: o.handleParticle,
9116
9155
  onHandleToggleVersion: o.handleToggleVersion
9117
9156
  }), null, 16, ["map", "map-projection", "current", "before-layer", "showCurrentIsoband", "showCurrentParticle", "margin-bottom", "toggle-version", "weather-layers", "onParticle", "onHandleToggleVersion"]),
9118
- T(h, j({
9157
+ w(h, Q({
9119
9158
  viewport: p.viewport,
9120
9159
  factor: (t0 = p.weatherLayers) == null ? void 0 : t0["current-particle"],
9121
9160
  "before-layer": b.beforeLayer,
9122
9161
  "toggle-version": b.toggleVersion
9123
9162
  }, z.$attrs), null, 16, ["viewport", "factor", "before-layer", "toggle-version"]),
9124
- T(u, j({
9163
+ w(u, Q({
9125
9164
  ref: "windBarb",
9126
9165
  map: b.map,
9127
9166
  "map-projection": p.mapProjection,
9128
- wind: (E = p.weatherLayers) == null ? void 0 : E.wind,
9167
+ wind: (I = p.weatherLayers) == null ? void 0 : I.wind,
9129
9168
  current: (p0 = p.weatherLayers) == null ? void 0 : p0.current,
9130
9169
  "before-layer": b.beforeLayer,
9131
9170
  "margin-bottom": p.showRampColor ? "56px" : "30px",
@@ -9136,101 +9175,101 @@ function Vb(z, M, b, O, p, o) {
9136
9175
  "weather-layers": p.weatherLayers,
9137
9176
  onParticle: o.handleParticle
9138
9177
  }), null, 16, ["map", "map-projection", "wind", "current", "before-layer", "margin-bottom", "showWindFeather", "showWindParticle", "toggle-version", "weather-layers", "onParticle"]),
9139
- T(d, j({
9178
+ w(s, Q({
9140
9179
  viewport: p.viewport,
9141
- factor: (l0 = p.weatherLayers) == null ? void 0 : l0["wind-particle"],
9180
+ factor: (f0 = p.weatherLayers) == null ? void 0 : f0["wind-particle"],
9142
9181
  "before-layer": b.beforeLayer,
9143
9182
  "toggle-version": b.toggleVersion
9144
9183
  }, z.$attrs), null, 16, ["viewport", "factor", "before-layer", "toggle-version"]),
9145
- T(m, j({
9184
+ w(m, Q({
9146
9185
  viewport: p.viewport,
9147
- factor: (c0 = p.weatherLayers) == null ? void 0 : c0.precip3h,
9186
+ factor: (u0 = p.weatherLayers) == null ? void 0 : u0.precip3h,
9148
9187
  "before-layer": b.beforeLayer,
9149
9188
  "toggle-version": b.toggleVersion
9150
9189
  }, z.$attrs), null, 16, ["viewport", "factor", "before-layer", "toggle-version"]),
9151
- T(R, j({
9190
+ w(R, Q({
9152
9191
  viewport: p.viewport,
9153
- factor: (u0 = p.weatherLayers) == null ? void 0 : u0.visibility,
9192
+ factor: (R0 = p.weatherLayers) == null ? void 0 : R0.visibility,
9154
9193
  "before-layer": b.beforeLayer,
9155
9194
  "toggle-version": b.toggleVersion
9156
9195
  }, z.$attrs), null, 16, ["viewport", "factor", "before-layer", "toggle-version"]),
9157
- T(X, j({
9196
+ w(y, Q({
9158
9197
  viewport: p.viewport,
9159
- factor: (B = p.weatherLayers) == null ? void 0 : B["water-temp"],
9198
+ factor: (c0 = p.weatherLayers) == null ? void 0 : c0["water-temp"],
9160
9199
  "before-layer": b.beforeLayer,
9161
9200
  "toggle-version": b.toggleVersion
9162
9201
  }, z.$attrs), null, 16, ["viewport", "factor", "before-layer", "toggle-version"]),
9163
- T(x, j({
9202
+ w(T, Q({
9164
9203
  viewport: p.viewport,
9165
- factor: (A = p.weatherLayers) == null ? void 0 : A.temp,
9204
+ factor: (e = p.weatherLayers) == null ? void 0 : e.temp,
9166
9205
  "before-layer": b.beforeLayer,
9167
9206
  "toggle-version": b.toggleVersion
9168
9207
  }, z.$attrs), null, 16, ["viewport", "factor", "before-layer", "toggle-version"]),
9169
- T(g, j({
9208
+ w(N, Q({
9170
9209
  viewport: p.viewport,
9171
- factor: (W = p.weatherLayers) == null ? void 0 : W.arctic,
9210
+ factor: (i = p.weatherLayers) == null ? void 0 : i.arctic,
9172
9211
  "before-layer": b.beforeLayer,
9173
9212
  "toggle-version": b.toggleVersion
9174
9213
  }, z.$attrs), null, 16, ["viewport", "factor", "before-layer", "toggle-version"]),
9175
- T(U, j({
9214
+ w(H, Q({
9176
9215
  map: b.map,
9177
- zone: (s = p.otherLayers) == null ? void 0 : s["war-zones"],
9216
+ zone: (f = p.otherLayers) == null ? void 0 : f["war-zones"],
9178
9217
  "before-layer": b.beforeLayer
9179
9218
  }, z.$attrs), null, 16, ["map", "zone", "before-layer"]),
9180
- T(y, j({
9219
+ w(K, Q({
9181
9220
  map: b.map,
9182
- area: (N = p.otherLayers) == null ? void 0 : N["gmdss-areas"],
9221
+ area: (B = p.otherLayers) == null ? void 0 : B["gmdss-areas"],
9183
9222
  "before-layer": b.beforeLayer
9184
9223
  }, z.$attrs), null, 16, ["map", "area", "before-layer"]),
9185
- T(C, j({
9224
+ w(V, Q({
9186
9225
  map: b.map,
9187
- zone: (v = p.otherLayers) == null ? void 0 : v["eca-zones"],
9226
+ zone: (X = p.otherLayers) == null ? void 0 : X["eca-zones"],
9188
9227
  "before-layer": b.beforeLayer
9189
9228
  }, z.$attrs), null, 16, ["map", "zone", "before-layer"]),
9190
- T(Z, j({
9229
+ w($, Q({
9191
9230
  map: b.map,
9192
- zone: (P = p.otherLayers) == null ? void 0 : P["alert-zones"],
9231
+ zone: (D = p.otherLayers) == null ? void 0 : D["alert-zones"],
9193
9232
  "before-layer": b.beforeLayer
9194
9233
  }, z.$attrs), null, 16, ["map", "zone", "before-layer"]),
9195
- T(Y, j({
9234
+ w(g, Q({
9196
9235
  map: b.map,
9197
- port: (Q = p.otherLayers) == null ? void 0 : Q.ports,
9236
+ port: (Z = p.otherLayers) == null ? void 0 : Z.ports,
9198
9237
  "before-layer": b.beforeLayer
9199
9238
  }, z.$attrs), null, 16, ["map", "port", "before-layer"]),
9200
- T(i0, j({
9239
+ w(E, Q({
9201
9240
  map: b.map,
9202
- line: (D = p.otherLayers) == null ? void 0 : D["load-lines"],
9241
+ line: (S = p.otherLayers) == null ? void 0 : S["load-lines"],
9203
9242
  "before-layer": b.beforeLayer
9204
9243
  }, z.$attrs), null, 16, ["map", "line", "before-layer"]),
9205
- T(L0, j({
9244
+ w(n0, Q({
9206
9245
  map: b.map,
9207
9246
  zone: (G = p.otherLayers) == null ? void 0 : G["time-zones"],
9208
9247
  "before-layer": b.beforeLayer
9209
9248
  }, z.$attrs), null, 16, ["map", "zone", "before-layer"]),
9210
- T(R0, j({
9249
+ w(d0, Q({
9211
9250
  map: b.map,
9212
- area: (w0 = p.otherLayers) == null ? void 0 : w0["voluntary-reporting-area"],
9251
+ area: (v0 = p.otherLayers) == null ? void 0 : v0["voluntary-reporting-area"],
9213
9252
  "before-layer": b.beforeLayer
9214
9253
  }, z.$attrs), null, 16, ["map", "area", "before-layer"]),
9215
- T(r0, j({
9254
+ w(i0, Q({
9216
9255
  map: b.map,
9217
9256
  area: (P0 = p.otherLayers) == null ? void 0 : P0["special-area"],
9218
9257
  "before-layer": b.beforeLayer
9219
9258
  }, z.$attrs), null, 16, ["map", "area", "before-layer"]),
9220
- T(f0, j({
9259
+ w(L0, Q({
9221
9260
  map: b.map,
9222
- area: (k0 = p.otherLayers) == null ? void 0 : k0["day-night"]
9261
+ area: (S0 = p.otherLayers) == null ? void 0 : S0["day-night"]
9223
9262
  }, z.$attrs), null, 16, ["map", "area"]),
9224
- T(O0, j({
9263
+ w(O0, Q({
9225
9264
  map: b.map,
9226
9265
  show: p.showCoord,
9227
9266
  "toggle-version": b.toggleVersion
9228
9267
  }, z.$attrs), null, 16, ["map", "show", "toggle-version"]),
9229
- T(h0, j({
9268
+ w(h0, Q({
9230
9269
  map: b.map,
9231
9270
  show: p.showMeasure
9232
9271
  }, z.$attrs), null, 16, ["map", "show"]),
9233
- T(m0, j({
9272
+ w(m0, Q({
9234
9273
  ref: "idmPoint",
9235
9274
  map: b.map,
9236
9275
  show: p.showPoint,
@@ -9239,21 +9278,21 @@ function Vb(z, M, b, O, p, o) {
9239
9278
  token: b.token,
9240
9279
  gateway: p.gateway
9241
9280
  }, z.$attrs), null, 16, ["map", "show", "meteo", "ts", "token", "gateway"])
9242
- ])) : F("", !0);
9281
+ ])) : _("", !0);
9243
9282
  }
9244
- const Kb = /* @__PURE__ */ I(Hb, [["render", Vb]]), Oz = {
9283
+ const Zb = /* @__PURE__ */ k(Jb, [["render", Vb]]), ez = {
9245
9284
  install(z) {
9246
- z.component("MapboxGL", Kb), z.component("TropicalGL", j0), z.component("LatLngGL", H0);
9285
+ z.component("MapboxGL", Zb), z.component("TropicalGL", H0), z.component("LatLngGL", F0);
9247
9286
  }
9248
9287
  };
9249
9288
  export {
9250
- H0 as LatLngGL,
9251
- Kb as MapboxGL,
9252
- Oz as MapboxGLPlugin,
9253
- E1 as MapboxHelper,
9289
+ F0 as LatLngGL,
9290
+ Zb as MapboxGL,
9291
+ ez as MapboxGLPlugin,
9292
+ D1 as MapboxHelper,
9254
9293
  q0 as ParticleSchema,
9255
- j0 as TropicalGL,
9256
- E0 as Viewport,
9257
- T0 as WebGL,
9258
- e0 as WebGLSchema
9294
+ H0 as TropicalGL,
9295
+ D0 as Viewport,
9296
+ C0 as WebGL,
9297
+ A0 as WebGLSchema
9259
9298
  };