@idmwx/idmui-gl3 4.4.2 → 4.4.3
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 +1092 -1049
- package/dist/index.umd.cjs +11 -11
- package/dist/mapbox/src/components/layer.vue.d.ts +5 -1
- package/dist/mapbox/src/components/weather/current.vue.d.ts +2 -9
- package/dist/mapbox/src/components/weather/wind.vue.d.ts +1 -12
- package/dist/style.css +1 -1
- package/package.json +1 -1
package/dist/index.js
CHANGED
|
@@ -1,24 +1,24 @@
|
|
|
1
|
-
var
|
|
2
|
-
var
|
|
3
|
-
var
|
|
4
|
-
import { resolveComponent as
|
|
5
|
-
import * as
|
|
6
|
-
import
|
|
1
|
+
var at = Object.defineProperty;
|
|
2
|
+
var it = (a, e, t) => e in a ? at(a, e, { enumerable: !0, configurable: !0, writable: !0, value: t }) : a[e] = t;
|
|
3
|
+
var R = (a, e, t) => (it(a, typeof e != "symbol" ? e + "" : e, t), t);
|
|
4
|
+
import { resolveComponent as P, openBlock as x, createElementBlock as C, createElementVNode as l, normalizeStyle as U, createVNode as k, withCtx as K, normalizeClass as j, Fragment as Ae, renderList as $e, toDisplayString as S, createCommentVNode as B, createTextVNode as Fe, pushScopeId as H, popScopeId as G, withDirectives as je, vShow as Ne, createStaticVNode as rt, mergeProps as E } from "vue";
|
|
5
|
+
import * as L from "@turf/turf";
|
|
6
|
+
import ot from "@mapbox/sphericalmercator";
|
|
7
7
|
import Z from "moment";
|
|
8
|
-
import
|
|
9
|
-
import { TropicalHelper as
|
|
10
|
-
import
|
|
11
|
-
var
|
|
12
|
-
class
|
|
8
|
+
import te from "mapbox-gl";
|
|
9
|
+
import { TropicalHelper as Qe, LngLatHelper as D, LaneHelper as ee } from "@idm-plugin/geo";
|
|
10
|
+
import ne from "axios";
|
|
11
|
+
var st = Object.defineProperty, nt = (a, e, t) => e in a ? st(a, e, { enumerable: !0, configurable: !0, writable: !0, value: t }) : a[e] = t, Ce = (a, e, t) => (nt(a, typeof e != "symbol" ? e + "" : e, t), t);
|
|
12
|
+
class De {
|
|
13
13
|
}
|
|
14
|
-
|
|
14
|
+
Ce(De, "LEVEL", {
|
|
15
15
|
Basic: 1,
|
|
16
16
|
Prime: 2,
|
|
17
17
|
Supper: 1024
|
|
18
18
|
});
|
|
19
|
-
class
|
|
19
|
+
class Me {
|
|
20
20
|
}
|
|
21
|
-
|
|
21
|
+
Ce(Me, "WEATHER_LAYERS", [
|
|
22
22
|
{
|
|
23
23
|
weight: 1,
|
|
24
24
|
name: "Wind",
|
|
@@ -243,7 +243,7 @@ fe(Ce, "WEATHER_LAYERS", [
|
|
|
243
243
|
type: "jpg"
|
|
244
244
|
}
|
|
245
245
|
]), // 其它图层
|
|
246
|
-
|
|
246
|
+
Ce(Me, "OTHER_LAYERS", [
|
|
247
247
|
{
|
|
248
248
|
weight: 1,
|
|
249
249
|
name: "War Zones",
|
|
@@ -355,9 +355,9 @@ fe(Ce, "OTHER_LAYERS", [
|
|
|
355
355
|
type: "origin"
|
|
356
356
|
}
|
|
357
357
|
]);
|
|
358
|
-
class
|
|
358
|
+
class Oe {
|
|
359
359
|
}
|
|
360
|
-
|
|
360
|
+
Ce(Oe, "WEATHER_TAG", [
|
|
361
361
|
{
|
|
362
362
|
weight: 4,
|
|
363
363
|
// 2^2
|
|
@@ -383,7 +383,7 @@ fe(Te, "WEATHER_TAG", [
|
|
|
383
383
|
positive: !0
|
|
384
384
|
}
|
|
385
385
|
]), // 航行相关标签, 2^11 <= weight <= 2^20
|
|
386
|
-
|
|
386
|
+
Ce(Oe, "SAILING_TAG", [
|
|
387
387
|
{
|
|
388
388
|
weight: 2048,
|
|
389
389
|
// 2^11
|
|
@@ -425,7 +425,7 @@ fe(Te, "SAILING_TAG", [
|
|
|
425
425
|
positive: !0
|
|
426
426
|
}
|
|
427
427
|
]), // 其他标签, 2^21 <= weight <= 2^31
|
|
428
|
-
|
|
428
|
+
Ce(Oe, "OTHER_TAG", [
|
|
429
429
|
{
|
|
430
430
|
weight: 2097152,
|
|
431
431
|
// 2^21
|
|
@@ -480,7 +480,7 @@ const T = (a, e) => {
|
|
|
480
480
|
for (const [r, i] of e)
|
|
481
481
|
t[r] = i;
|
|
482
482
|
return t;
|
|
483
|
-
},
|
|
483
|
+
}, lt = {
|
|
484
484
|
name: "IdmGlLayer",
|
|
485
485
|
props: {
|
|
486
486
|
map: {
|
|
@@ -514,19 +514,22 @@ const T = (a, e) => {
|
|
|
514
514
|
autoActive: !0,
|
|
515
515
|
otherLayers: [],
|
|
516
516
|
layers: {
|
|
517
|
-
weather: [
|
|
518
|
-
|
|
517
|
+
weather: [
|
|
518
|
+
...Me.WEATHER_LAYERS.filter((a) => !["swell-height", "swell-direction", "current-direction", "current-speed"].includes(a.key))
|
|
519
|
+
],
|
|
520
|
+
other: [...Me.OTHER_LAYERS.filter((a) => a.key !== "world12nm" && a.enabled)]
|
|
519
521
|
},
|
|
520
522
|
weatherLayersCache: "weatherLayersCache",
|
|
521
523
|
autoActiveCache: "autoActiveCache",
|
|
522
524
|
otherLayersCache: "otherLayersCache",
|
|
525
|
+
collectedLayerCache: "collectedLayerCache",
|
|
523
526
|
sourceCache: "defaultSourceCache",
|
|
524
527
|
showCoord: !1,
|
|
525
528
|
showMeasure: !1,
|
|
526
529
|
showPoint: !1,
|
|
527
530
|
show3d: !1,
|
|
528
531
|
version: {
|
|
529
|
-
v: "0.0.
|
|
532
|
+
v: "0.0.7",
|
|
530
533
|
k: "glCacheVersion"
|
|
531
534
|
},
|
|
532
535
|
right: 10,
|
|
@@ -536,8 +539,8 @@ const T = (a, e) => {
|
|
|
536
539
|
computed: {
|
|
537
540
|
computeLayerClass() {
|
|
538
541
|
return function(a, e) {
|
|
539
|
-
let t = "layer";
|
|
540
|
-
return e.some((r) => r.key === a.key) && (t = "layer active"), (!a.enabled || this.rampColorLayers.includes(a.key) && this.mapProjection === "globe") && (t = "layer disabled"), t;
|
|
542
|
+
let t = "layer flex-between";
|
|
543
|
+
return e.some((r) => r.key === a.key) && (t = "layer flex-between active"), (!a.enabled || this.rampColorLayers.includes(a.key) && this.mapProjection === "globe") && (t = "layer flex-between disabled"), t;
|
|
541
544
|
};
|
|
542
545
|
}
|
|
543
546
|
},
|
|
@@ -549,20 +552,24 @@ const T = (a, e) => {
|
|
|
549
552
|
this.right = (((a = document.getElementsByClassName("right-bar")[0]) == null ? void 0 : a.clientWidth) || 0) + 10;
|
|
550
553
|
});
|
|
551
554
|
}
|
|
555
|
+
},
|
|
556
|
+
source: {
|
|
557
|
+
handler(a, e) {
|
|
558
|
+
a && e && a !== e && this.handleConfirm();
|
|
559
|
+
}
|
|
552
560
|
}
|
|
553
561
|
},
|
|
554
562
|
mounted() {
|
|
555
563
|
const a = localStorage.getItem(this.version.k);
|
|
556
|
-
this.version.v !== a && (localStorage.removeItem(this.weatherLayersCache), localStorage.setItem(this.version.k, this.version.v));
|
|
557
|
-
let e = localStorage.getItem(this.
|
|
558
|
-
|
|
559
|
-
let t = JSON.parse(
|
|
560
|
-
e || '[{"weight":1,"name":"Wind","key":"wind","enabled":true,"type":"json","particle":true},{"weight":4096,"name":"Pressure","key":"prmsl","enabled":true,"type":"json"},{"weight":256,"name":"Tropicals","key":"tropicals","enabled":true,"type":"json"}]'
|
|
564
|
+
this.version.v !== a && (localStorage.removeItem(this.weatherLayersCache), localStorage.removeItem(this.collectedLayerCache), localStorage.removeItem(this.otherLayersCache), localStorage.removeItem("windFeatherCache"), localStorage.removeItem("currentJsonCache"), localStorage.setItem(this.version.k, this.version.v));
|
|
565
|
+
let e = localStorage.getItem(this.collectedLayerCache), t = JSON.parse(
|
|
566
|
+
e || '[{"weight":1,"name":"Wind","key":"wind","collected":true},{"weight":4096,"name":"Pressure","key":"prmsl","collected":true},{"weight":256,"name":"Tropicals","key":"tropicals","collected":true}]'
|
|
561
567
|
);
|
|
562
|
-
this.
|
|
563
|
-
|
|
564
|
-
|
|
565
|
-
|
|
568
|
+
this.layers.weather.forEach((r) => {
|
|
569
|
+
r.collected = !!t.some((i) => i.key === r.key && i.collected);
|
|
570
|
+
}), e = localStorage.getItem(this.autoActiveCache), this.autoActive = e !== "false", e = localStorage.getItem(this.weatherLayersCache), t = JSON.parse(
|
|
571
|
+
e || '[{"weight":1,"name":"Wind","key":"wind","enabled":true,"type":"json","particle":true},{"weight":4096,"name":"Pressure","key":"prmsl","enabled":true,"type":"json"},{"weight":256,"name":"Tropicals","key":"tropicals","enabled":true,"type":"json"}]'
|
|
572
|
+
), this.weatherLayers = t, this.autoActive && (this.activeWeatherLayers = [...t]), e = localStorage.getItem(this.otherLayersCache), t = JSON.parse(e || '[{"weight":4,"name":"ECA Zones","key":"eca-zones","enabled":true,"type":"json"}]'), this.otherLayers = t, e = localStorage.getItem(this.sourceCache), this.source = e || "GFS", this.handleConfirm();
|
|
566
573
|
},
|
|
567
574
|
methods: {
|
|
568
575
|
handleConfirm() {
|
|
@@ -573,6 +580,12 @@ const T = (a, e) => {
|
|
|
573
580
|
return !1;
|
|
574
581
|
this.weatherLayers.some((e) => e.key === a.key) ? (this.weatherLayers = this.weatherLayers.filter((e) => e.key !== a.key), this.activeWeatherLayers = this.activeWeatherLayers.filter((e) => e.key !== a.key)) : this.weatherLayers.length < 12 && a.enabled && (["png", "jpg"].includes(a.type) && (this.weatherLayers = this.weatherLayers.filter((e) => e.type === "json"), this.activeWeatherLayers = this.activeWeatherLayers.filter((e) => e.type === "json")), this.weatherLayers.push(a), this.activeWeatherLayers.push(a)), localStorage.setItem(this.weatherLayersCache, JSON.stringify(this.weatherLayers)), this.$emit("weather", this.weatherLayers, this.activeWeatherLayers, this.source), localStorage.setItem(this.autoActiveCache, this.autoActive), localStorage.setItem(this.sourceCache, this.source);
|
|
575
582
|
},
|
|
583
|
+
handleWeatherLayerCollect(a) {
|
|
584
|
+
var e;
|
|
585
|
+
if (!a.collected && ((e = this.layers.weather.filter((t) => t.collected)) == null ? void 0 : e.length) >= 6)
|
|
586
|
+
return !1;
|
|
587
|
+
a.collected = !a.collected, localStorage.setItem(this.collectedLayerCache, JSON.stringify(this.layers.weather)), this.$emit("handleToggleVersion");
|
|
588
|
+
},
|
|
576
589
|
handleActiveWeatherLayerPick(a) {
|
|
577
590
|
if (this.rampColorLayers.includes(a.key) && this.mapProjection === "globe")
|
|
578
591
|
return !1;
|
|
@@ -583,7 +596,7 @@ const T = (a, e) => {
|
|
|
583
596
|
for (const e of this.weatherLayers)
|
|
584
597
|
a.weight > e.weight && a.weight & e.weight && this.activeWeatherLayers.push(e);
|
|
585
598
|
}
|
|
586
|
-
this
|
|
599
|
+
this.handleWeatherLayerPick(a);
|
|
587
600
|
},
|
|
588
601
|
handleOtherLayerPick(a) {
|
|
589
602
|
this.otherLayers.some((e) => e.key === a.key) ? this.otherLayers = this.otherLayers.filter((e) => e.key !== a.key) : a.enabled && this.otherLayers.push(a), localStorage.setItem(this.otherLayersCache, JSON.stringify(this.otherLayers)), this.$emit("other", this.otherLayers);
|
|
@@ -602,137 +615,213 @@ const T = (a, e) => {
|
|
|
602
615
|
},
|
|
603
616
|
handle3DToggle() {
|
|
604
617
|
this.show3d = !this.show3d, this.$emit("3d", this.show3d);
|
|
605
|
-
},
|
|
606
|
-
handleSourceToggle(a) {
|
|
607
|
-
this.source = a, this.handleConfirm();
|
|
608
618
|
}
|
|
609
619
|
}
|
|
610
|
-
},
|
|
611
|
-
|
|
612
|
-
|
|
613
|
-
|
|
614
|
-
|
|
615
|
-
|
|
616
|
-
|
|
620
|
+
}, ct = { class: "idm-gl3-layer" }, ht = { class: "bar-item layer-bars" }, dt = /* @__PURE__ */ l("span", { class: "iconfont" }, "", -1), pt = [
|
|
621
|
+
dt
|
|
622
|
+
], mt = { class: "bar-item tool-bars" }, ut = /* @__PURE__ */ l("span", { class: "iconfont" }, "", -1), yt = [
|
|
623
|
+
ut
|
|
624
|
+
], ft = /* @__PURE__ */ l("span", { class: "iconfont" }, "", -1), gt = [
|
|
625
|
+
ft
|
|
626
|
+
], bt = /* @__PURE__ */ l("span", { class: "iconfont" }, "", -1), vt = [
|
|
627
|
+
bt
|
|
628
|
+
], wt = /* @__PURE__ */ l("span", { class: "iconfont" }, "", -1), _t = [
|
|
629
|
+
wt
|
|
630
|
+
], Lt = ["onClick"], xt = /* @__PURE__ */ l("div", { class: "checkbox" }, null, -1), Ct = { class: "header-box flex-between" }, kt = /* @__PURE__ */ l("div", null, "Layers", -1), St = { class: "weather-layers card-bg" }, zt = /* @__PURE__ */ l("div", { class: "layers-title flex-between" }, [
|
|
631
|
+
/* @__PURE__ */ l("div", null, "Weather Layers")
|
|
632
|
+
], -1), Pt = { class: "layers-body" }, Tt = ["onClick"], It = /* @__PURE__ */ l("div", { class: "checkbox" }, null, -1), Et = ["onClick"], Rt = {
|
|
633
|
+
key: 0,
|
|
634
|
+
class: "iconfont bookmark active"
|
|
635
|
+
}, At = {
|
|
636
|
+
key: 1,
|
|
637
|
+
class: "iconfont bookmark inactive"
|
|
638
|
+
}, Dt = /* @__PURE__ */ l("div", { class: "tip flex-start" }, [
|
|
639
|
+
/* @__PURE__ */ l("i", {
|
|
640
|
+
class: "iconfont bookmark",
|
|
641
|
+
style: { "align-self": "flex-start", padding: "5px 5px 0 0" }
|
|
642
|
+
}, ""),
|
|
643
|
+
/* @__PURE__ */ l("div", null, "Bookmark your favorite layer to homepage(Max 6)")
|
|
644
|
+
], -1), Mt = { class: "other-layers card-bg" }, $t = /* @__PURE__ */ l("div", { class: "layers-title" }, "Other Layers", -1), jt = { class: "layers-body" }, Nt = ["onClick"], Bt = { class: "flex-start" }, Wt = /* @__PURE__ */ l("div", { class: "switch flex-center" }, [
|
|
645
|
+
/* @__PURE__ */ l("i", { class: "iconfont open" }, ""),
|
|
646
|
+
/* @__PURE__ */ l("i", { class: "iconfont close" }, "")
|
|
647
|
+
], -1), Ot = { class: "source-layers card-bg" }, Ft = /* @__PURE__ */ l("span", { class: "layers-title" }, "Forecast Model", -1), Vt = { class: "layers-body" };
|
|
648
|
+
function Ut(a, e, t, r, i, o) {
|
|
649
|
+
const s = P("ElTooltip"), n = P("ElRadio"), c = P("ElRadioGroup"), d = P("ElScrollbar");
|
|
650
|
+
return x(), C("div", ct, [
|
|
617
651
|
l("div", {
|
|
618
652
|
class: "menu-bar-box",
|
|
619
|
-
style:
|
|
653
|
+
style: U({ top: t.top + 10 + "px", right: i.right + "px" })
|
|
620
654
|
}, [
|
|
621
|
-
l("div",
|
|
622
|
-
|
|
623
|
-
|
|
624
|
-
|
|
625
|
-
|
|
626
|
-
|
|
627
|
-
|
|
655
|
+
l("div", ht, [
|
|
656
|
+
k(s, {
|
|
657
|
+
placement: "left",
|
|
658
|
+
effect: "light",
|
|
659
|
+
content: "Menu"
|
|
660
|
+
}, {
|
|
661
|
+
default: K(() => [
|
|
662
|
+
l("div", {
|
|
663
|
+
class: j(t.layerToggle ? "menu-icon active" : "menu-icon"),
|
|
664
|
+
onClick: e[0] || (e[0] = (...h) => o.handleMenuToggle && o.handleMenuToggle(...h))
|
|
665
|
+
}, pt, 2)
|
|
666
|
+
]),
|
|
667
|
+
_: 1
|
|
668
|
+
})
|
|
628
669
|
])
|
|
629
670
|
], 4),
|
|
630
671
|
l("div", {
|
|
631
672
|
class: "menu-bar-box",
|
|
632
|
-
style:
|
|
673
|
+
style: U({ top: t.top + 160 + "px", right: i.right + "px" })
|
|
633
674
|
}, [
|
|
634
|
-
l("div",
|
|
635
|
-
|
|
636
|
-
|
|
637
|
-
|
|
638
|
-
|
|
639
|
-
|
|
640
|
-
|
|
641
|
-
|
|
642
|
-
|
|
643
|
-
|
|
644
|
-
|
|
645
|
-
|
|
646
|
-
|
|
647
|
-
|
|
648
|
-
|
|
649
|
-
|
|
650
|
-
|
|
651
|
-
|
|
652
|
-
|
|
653
|
-
|
|
654
|
-
|
|
655
|
-
|
|
656
|
-
|
|
657
|
-
|
|
658
|
-
|
|
675
|
+
l("div", mt, [
|
|
676
|
+
k(s, {
|
|
677
|
+
placement: "left",
|
|
678
|
+
effect: "light",
|
|
679
|
+
content: "Measure"
|
|
680
|
+
}, {
|
|
681
|
+
default: K(() => [
|
|
682
|
+
l("div", {
|
|
683
|
+
class: j(i.showMeasure ? "menu-icon active" : "menu-icon"),
|
|
684
|
+
onClick: e[1] || (e[1] = (...h) => o.handleMeasureToggle && o.handleMeasureToggle(...h))
|
|
685
|
+
}, yt, 2)
|
|
686
|
+
]),
|
|
687
|
+
_: 1
|
|
688
|
+
}),
|
|
689
|
+
k(s, {
|
|
690
|
+
placement: "left",
|
|
691
|
+
effect: "light",
|
|
692
|
+
content: "Point Meteo"
|
|
693
|
+
}, {
|
|
694
|
+
default: K(() => [
|
|
695
|
+
l("div", {
|
|
696
|
+
class: j(i.showPoint ? "menu-icon active" : "menu-icon"),
|
|
697
|
+
onClick: e[2] || (e[2] = (...h) => o.handlePointToggle && o.handlePointToggle(...h))
|
|
698
|
+
}, gt, 2)
|
|
699
|
+
]),
|
|
700
|
+
_: 1
|
|
701
|
+
}),
|
|
702
|
+
k(s, {
|
|
703
|
+
placement: "left",
|
|
704
|
+
effect: "light",
|
|
705
|
+
content: "Grid"
|
|
706
|
+
}, {
|
|
707
|
+
default: K(() => [
|
|
708
|
+
l("div", {
|
|
709
|
+
class: j(i.showCoord ? "menu-icon active" : "menu-icon"),
|
|
710
|
+
onClick: e[3] || (e[3] = (...h) => o.handleCoordToggle && o.handleCoordToggle(...h))
|
|
711
|
+
}, vt, 2)
|
|
712
|
+
]),
|
|
713
|
+
_: 1
|
|
714
|
+
}),
|
|
715
|
+
k(s, {
|
|
716
|
+
placement: "left",
|
|
717
|
+
effect: "light",
|
|
718
|
+
content: "3D"
|
|
719
|
+
}, {
|
|
720
|
+
default: K(() => [
|
|
721
|
+
l("div", {
|
|
722
|
+
class: j(i.show3d ? "menu-icon active" : "menu-icon"),
|
|
723
|
+
onClick: e[4] || (e[4] = (...h) => o.handle3DToggle && o.handle3DToggle(...h))
|
|
724
|
+
}, _t, 2)
|
|
725
|
+
]),
|
|
726
|
+
_: 1
|
|
727
|
+
})
|
|
659
728
|
])
|
|
660
729
|
], 4),
|
|
661
730
|
l("div", {
|
|
662
731
|
class: "active-layers",
|
|
663
|
-
style:
|
|
732
|
+
style: U({ right: i.right + "px", bottom: "100px" })
|
|
664
733
|
}, [
|
|
665
|
-
(x(!0),
|
|
666
|
-
key:
|
|
667
|
-
class: j(o.computeLayerClass(
|
|
668
|
-
onClick: (
|
|
734
|
+
(x(!0), C(Ae, null, $e(i.layers.weather.filter((h) => h.collected), (h) => (x(), C("div", {
|
|
735
|
+
key: h.key,
|
|
736
|
+
class: j(o.computeLayerClass(h, i.activeWeatherLayers)),
|
|
737
|
+
onClick: (p) => o.handleActiveWeatherLayerPick(h)
|
|
669
738
|
}, [
|
|
670
|
-
|
|
671
|
-
l("span", null,
|
|
672
|
-
], 10,
|
|
739
|
+
xt,
|
|
740
|
+
l("span", null, S(h.name), 1)
|
|
741
|
+
], 10, Lt))), 128))
|
|
673
742
|
], 4),
|
|
674
743
|
l("div", {
|
|
675
744
|
class: "available-layers flex-center",
|
|
676
|
-
style:
|
|
745
|
+
style: U({ top: t.top + "px", right: t.layerToggle ? "0px" : "-240px" })
|
|
677
746
|
}, [
|
|
678
|
-
l("div", {
|
|
679
|
-
class: "side-bar",
|
|
680
|
-
style: $({ right: t.layerToggle ? "0px" : "-240px" }),
|
|
681
|
-
onClick: e[5] || (e[5] = (...s) => o.handleMenuToggle && o.handleMenuToggle(...s))
|
|
682
|
-
}, e[14] || (e[14] = [
|
|
683
|
-
l("i", { class: "iconfont" }, "", -1)
|
|
684
|
-
]), 4),
|
|
685
747
|
l("div", {
|
|
686
748
|
class: j(["list-box", t.layerToggle ? "right-bar" : ""])
|
|
687
749
|
}, [
|
|
688
|
-
|
|
689
|
-
|
|
690
|
-
|
|
691
|
-
|
|
692
|
-
|
|
693
|
-
|
|
694
|
-
|
|
695
|
-
|
|
696
|
-
|
|
697
|
-
|
|
698
|
-
|
|
699
|
-
|
|
750
|
+
l("div", Ct, [
|
|
751
|
+
kt,
|
|
752
|
+
l("div", {
|
|
753
|
+
class: "iconfont close-btn",
|
|
754
|
+
onClick: e[5] || (e[5] = (...h) => o.handleMenuToggle && o.handleMenuToggle(...h))
|
|
755
|
+
}, "")
|
|
756
|
+
]),
|
|
757
|
+
k(d, { style: { flex: "1" } }, {
|
|
758
|
+
default: K(() => [
|
|
759
|
+
l("div", St, [
|
|
760
|
+
zt,
|
|
761
|
+
l("div", Pt, [
|
|
762
|
+
(x(!0), C(Ae, null, $e(i.layers.weather, (h) => (x(), C(Ae, {
|
|
763
|
+
key: h.key
|
|
700
764
|
}, [
|
|
701
|
-
|
|
765
|
+
h.hide ? B("", !0) : (x(), C("div", {
|
|
702
766
|
key: 0,
|
|
703
|
-
class: j(o.computeLayerClass(
|
|
704
|
-
onClick: (c) => o.handleWeatherLayerPick(s)
|
|
767
|
+
class: j(o.computeLayerClass(h, i.weatherLayers))
|
|
705
768
|
}, [
|
|
706
|
-
|
|
707
|
-
|
|
708
|
-
|
|
709
|
-
|
|
769
|
+
l("div", {
|
|
770
|
+
class: "flex-start",
|
|
771
|
+
onClick: (p) => o.handleWeatherLayerPick(h)
|
|
772
|
+
}, [
|
|
773
|
+
It,
|
|
774
|
+
l("span", null, S(h.name), 1)
|
|
775
|
+
], 8, Tt),
|
|
776
|
+
l("div", {
|
|
777
|
+
onClick: (p) => o.handleWeatherLayerCollect(h)
|
|
778
|
+
}, [
|
|
779
|
+
h.collected ? (x(), C("i", Rt, "")) : (x(), C("i", At, ""))
|
|
780
|
+
], 8, Et)
|
|
781
|
+
], 2))
|
|
782
|
+
], 64))), 128)),
|
|
783
|
+
Dt
|
|
710
784
|
])
|
|
711
785
|
]),
|
|
712
|
-
l("div",
|
|
713
|
-
|
|
714
|
-
l("div",
|
|
715
|
-
(x(!0),
|
|
716
|
-
key:
|
|
717
|
-
class: j(o.computeLayerClass(
|
|
718
|
-
onClick: (
|
|
786
|
+
l("div", Mt, [
|
|
787
|
+
$t,
|
|
788
|
+
l("div", jt, [
|
|
789
|
+
(x(!0), C(Ae, null, $e(i.layers.other, (h) => (x(), C("div", {
|
|
790
|
+
key: h.key,
|
|
791
|
+
class: j(o.computeLayerClass(h, i.otherLayers)),
|
|
792
|
+
onClick: (p) => o.handleOtherLayerPick(h)
|
|
719
793
|
}, [
|
|
720
|
-
|
|
721
|
-
|
|
722
|
-
|
|
794
|
+
l("div", Bt, [
|
|
795
|
+
Wt,
|
|
796
|
+
l("span", null, S(h.name), 1)
|
|
797
|
+
])
|
|
798
|
+
], 10, Nt))), 128))
|
|
723
799
|
])
|
|
724
800
|
]),
|
|
725
|
-
l("div",
|
|
726
|
-
|
|
727
|
-
l("div",
|
|
728
|
-
|
|
729
|
-
|
|
730
|
-
|
|
731
|
-
|
|
732
|
-
|
|
733
|
-
|
|
734
|
-
|
|
735
|
-
|
|
801
|
+
l("div", Ot, [
|
|
802
|
+
Ft,
|
|
803
|
+
l("div", Vt, [
|
|
804
|
+
k(c, {
|
|
805
|
+
modelValue: i.source,
|
|
806
|
+
"onUpdate:modelValue": e[6] || (e[6] = (h) => i.source = h),
|
|
807
|
+
class: "layer-radio flex-col-center-start"
|
|
808
|
+
}, {
|
|
809
|
+
default: K(() => [
|
|
810
|
+
k(n, { value: "GFS" }, {
|
|
811
|
+
default: K(() => [
|
|
812
|
+
Fe("GFS")
|
|
813
|
+
]),
|
|
814
|
+
_: 1
|
|
815
|
+
}),
|
|
816
|
+
k(n, { value: "CMEMS" }, {
|
|
817
|
+
default: K(() => [
|
|
818
|
+
Fe("CMEMS")
|
|
819
|
+
]),
|
|
820
|
+
_: 1
|
|
821
|
+
})
|
|
822
|
+
]),
|
|
823
|
+
_: 1
|
|
824
|
+
}, 8, ["modelValue"])
|
|
736
825
|
])
|
|
737
826
|
])
|
|
738
827
|
]),
|
|
@@ -742,8 +831,8 @@ function ht(a, e, t, r, i, o) {
|
|
|
742
831
|
], 4)
|
|
743
832
|
]);
|
|
744
833
|
}
|
|
745
|
-
const
|
|
746
|
-
const
|
|
834
|
+
const Zt = /* @__PURE__ */ T(lt, [["render", Ut]]);
|
|
835
|
+
const Ht = {
|
|
747
836
|
name: "IdmWindBarb",
|
|
748
837
|
props: {
|
|
749
838
|
map: {
|
|
@@ -767,9 +856,6 @@ const dt = {
|
|
|
767
856
|
},
|
|
768
857
|
toggleVersion: {
|
|
769
858
|
type: Number
|
|
770
|
-
},
|
|
771
|
-
weatherLayers: {
|
|
772
|
-
type: Object
|
|
773
859
|
}
|
|
774
860
|
},
|
|
775
861
|
emits: ["particle"],
|
|
@@ -777,8 +863,9 @@ const dt = {
|
|
|
777
863
|
return {
|
|
778
864
|
source: "wind-barb-source",
|
|
779
865
|
barbs: [0, 2, 5, 10, 15, 20, 25, 30, 35, 40, 45, 50, 55, 60, 65, 70, 75, 80, 85, 90, 95, 100, 105],
|
|
780
|
-
empty:
|
|
781
|
-
showFeather: !1,
|
|
866
|
+
empty: L.featureCollection([]),
|
|
867
|
+
showFeather: localStorage.getItem("windFeatherCache") === "true" || !1,
|
|
868
|
+
windFeatherCache: "windFeatherCache",
|
|
782
869
|
right: 10,
|
|
783
870
|
bottom: 125,
|
|
784
871
|
windBarbLoaded: !1
|
|
@@ -794,34 +881,19 @@ const dt = {
|
|
|
794
881
|
},
|
|
795
882
|
showParticle: {
|
|
796
883
|
handler() {
|
|
797
|
-
this.showFeather = !this.showParticle;
|
|
798
884
|
},
|
|
799
885
|
immediate: !0
|
|
800
886
|
},
|
|
801
887
|
showFeather: {
|
|
802
888
|
handler() {
|
|
803
|
-
this.handleToggle();
|
|
889
|
+
localStorage.setItem(this.windFeatherCache, this.showFeather), this.handleToggle();
|
|
804
890
|
},
|
|
805
891
|
immediate: !0
|
|
806
892
|
},
|
|
807
893
|
toggleVersion: {
|
|
808
894
|
handler() {
|
|
809
|
-
var a;
|
|
810
|
-
this.right = (((a = document.getElementsByClassName("right-bar")[0]) == null ? void 0 : a.clientWidth) || 0) + 10;
|
|
811
|
-
},
|
|
812
|
-
immediate: !0
|
|
813
|
-
},
|
|
814
|
-
"current.version": {
|
|
815
|
-
handler() {
|
|
816
|
-
var a, e, t;
|
|
817
|
-
this.bottom = (a = this.current) != null && a.active ? (((e = document.getElementsByClassName("active-layers")[0]) == null ? void 0 : e.clientHeight) || 0) + 135 : (((t = document.getElementsByClassName("active-layers")[0]) == null ? void 0 : t.clientHeight) || 0) + 105;
|
|
818
|
-
},
|
|
819
|
-
immediate: !0
|
|
820
|
-
},
|
|
821
|
-
weatherLayers: {
|
|
822
|
-
handler() {
|
|
823
|
-
var a, e, t;
|
|
824
|
-
this.bottom = (a = this.current) != null && a.active ? (((e = document.getElementsByClassName("active-layers")[0]) == null ? void 0 : e.clientHeight) || 0) + 135 : (((t = document.getElementsByClassName("active-layers")[0]) == null ? void 0 : t.clientHeight) || 0) + 105;
|
|
895
|
+
var a, e, t, r;
|
|
896
|
+
this.right = (((a = document.getElementsByClassName("right-bar")[0]) == null ? void 0 : a.clientWidth) || 0) + 10, this.bottom = (e = this.current) != null && e.active ? (((t = document.getElementsByClassName("active-layers")[0]) == null ? void 0 : t.clientHeight) || 0) + 138 : (((r = document.getElementsByClassName("active-layers")[0]) == null ? void 0 : r.clientHeight) || 0) + 108;
|
|
825
897
|
},
|
|
826
898
|
immediate: !0
|
|
827
899
|
}
|
|
@@ -838,28 +910,28 @@ const dt = {
|
|
|
838
910
|
}, 500);
|
|
839
911
|
else if (this.wind) {
|
|
840
912
|
const i = (/* @__PURE__ */ new Date()).valueOf();
|
|
841
|
-
let o = 0,
|
|
842
|
-
if ((a = this.wind) != null && a.active && (
|
|
843
|
-
(r = this.map) == null || r.getSource(this.source).setData(
|
|
913
|
+
let o = 0, s = 0, n = this.empty;
|
|
914
|
+
if ((a = this.wind) != null && a.active && (n = (e = this.wind) == null ? void 0 : e.data), (t = this.map) != null && t.getSource(this.source))
|
|
915
|
+
(r = this.map) == null || r.getSource(this.source).setData(n), s = (/* @__PURE__ */ new Date()).valueOf() - (i + o), console.log("[wind] update elapsed: ", s, ", total: ", o += s);
|
|
844
916
|
else {
|
|
845
|
-
this.map.addSource(this.source, { type: "geojson", data:
|
|
917
|
+
this.map.addSource(this.source, { type: "geojson", data: n });
|
|
846
918
|
for (let c = 0; c < (this.barbs ?? []).length - 1; c++) {
|
|
847
|
-
const
|
|
919
|
+
const d = (this.barbs ?? [])[c] || 0, h = (this.barbs ?? [])[c + 1] || 0, p = d < 10 ? `00${d}kts` : d < 100 ? `0${d}kts` : `${d}kts`;
|
|
848
920
|
this.map.addLayer(
|
|
849
921
|
{
|
|
850
|
-
id:
|
|
922
|
+
id: p,
|
|
851
923
|
type: "symbol",
|
|
852
924
|
filter: [
|
|
853
925
|
"all",
|
|
854
926
|
// @ts-ignore
|
|
855
|
-
[">=", "spd",
|
|
927
|
+
[">=", "spd", d],
|
|
856
928
|
// @ts-ignore
|
|
857
|
-
["<", "spd",
|
|
929
|
+
["<", "spd", h]
|
|
858
930
|
],
|
|
859
931
|
source: this.source,
|
|
860
932
|
layout: {
|
|
861
933
|
"symbol-placement": "point",
|
|
862
|
-
"icon-image":
|
|
934
|
+
"icon-image": p,
|
|
863
935
|
// mapbox sprite
|
|
864
936
|
"icon-size": 0.14,
|
|
865
937
|
"icon-offset": [0, -20],
|
|
@@ -881,7 +953,7 @@ const dt = {
|
|
|
881
953
|
this.beforeLayer
|
|
882
954
|
);
|
|
883
955
|
}
|
|
884
|
-
this.windBarbLoaded = !0,
|
|
956
|
+
this.windBarbLoaded = !0, s = (/* @__PURE__ */ new Date()).valueOf() - (i + o), console.log("[wind] add elapsed: ", s, ", total: ", o += s);
|
|
885
957
|
}
|
|
886
958
|
}
|
|
887
959
|
},
|
|
@@ -902,63 +974,45 @@ const dt = {
|
|
|
902
974
|
this.map.getSource(this.source) && this.map.removeSource(this.source), this.windBarbLoaded = !1;
|
|
903
975
|
}
|
|
904
976
|
}
|
|
905
|
-
},
|
|
906
|
-
|
|
907
|
-
|
|
908
|
-
},
|
|
909
|
-
|
|
910
|
-
|
|
911
|
-
|
|
912
|
-
|
|
913
|
-
|
|
914
|
-
|
|
915
|
-
key: 1,
|
|
916
|
-
class: "iconfont"
|
|
917
|
-
};
|
|
918
|
-
function bt(a, e, t, r, i, o) {
|
|
919
|
-
var n;
|
|
920
|
-
return (n = t.wind) != null && n.active ? (x(), _("div", mt, [
|
|
977
|
+
}, Gt = { key: 0 }, Jt = /* @__PURE__ */ l("div", { class: "checkbox" }, null, -1), Xt = /* @__PURE__ */ l("span", null, "Wind Particles", -1), Yt = [
|
|
978
|
+
Jt,
|
|
979
|
+
Xt
|
|
980
|
+
], qt = /* @__PURE__ */ l("div", { class: "checkbox" }, null, -1), Qt = /* @__PURE__ */ l("span", null, "Wind Feather", -1), Kt = [
|
|
981
|
+
qt,
|
|
982
|
+
Qt
|
|
983
|
+
];
|
|
984
|
+
function ea(a, e, t, r, i, o) {
|
|
985
|
+
var s;
|
|
986
|
+
return (s = t.wind) != null && s.active ? (x(), C("div", Gt, [
|
|
921
987
|
l("div", {
|
|
922
|
-
class: "flex-center tool-bars",
|
|
923
|
-
style:
|
|
988
|
+
class: "flex-center wind-tool-bars",
|
|
989
|
+
style: U([{ position: "absolute" }, { right: i.right + "px", bottom: i.bottom + "px" }])
|
|
924
990
|
}, [
|
|
925
|
-
t.mapProjection === "mercator" ? (x(),
|
|
991
|
+
t.mapProjection === "mercator" ? (x(), C("div", {
|
|
926
992
|
key: 0,
|
|
927
|
-
class: "flex-start",
|
|
928
|
-
onClick: e[0] || (e[0] = (...
|
|
929
|
-
},
|
|
930
|
-
|
|
931
|
-
|
|
932
|
-
|
|
933
|
-
|
|
934
|
-
])) : B("", !0),
|
|
935
|
-
t.showParticle ? (x(), _("div", {
|
|
936
|
-
key: 1,
|
|
937
|
-
class: "flex-start",
|
|
938
|
-
style: { "margin-left": "16px" },
|
|
939
|
-
onClick: e[1] || (e[1] = (s) => i.showFeather = !i.showFeather)
|
|
940
|
-
}, [
|
|
941
|
-
i.showFeather ? (x(), _("i", ft, "")) : (x(), _("i", gt, "")),
|
|
942
|
-
l("span", {
|
|
943
|
-
class: j(i.showFeather ? "active" : "")
|
|
944
|
-
}, "Wind Feather", 2)
|
|
945
|
-
])) : B("", !0)
|
|
993
|
+
class: j(["item-bar flex-start", t.showParticle ? "active" : "inactive"]),
|
|
994
|
+
onClick: e[0] || (e[0] = (...n) => o.handleParticle && o.handleParticle(...n))
|
|
995
|
+
}, Yt, 2)) : B("", !0),
|
|
996
|
+
l("div", {
|
|
997
|
+
class: j(["item-bar flex-start", i.showFeather ? "active" : "inactive"]),
|
|
998
|
+
onClick: e[1] || (e[1] = (n) => i.showFeather = !i.showFeather)
|
|
999
|
+
}, Kt, 2)
|
|
946
1000
|
], 4)
|
|
947
1001
|
])) : B("", !0);
|
|
948
1002
|
}
|
|
949
|
-
const
|
|
950
|
-
class
|
|
1003
|
+
const ta = /* @__PURE__ */ T(Ht, [["render", ea]]);
|
|
1004
|
+
class Ve {
|
|
951
1005
|
constructor(e) {
|
|
952
|
-
|
|
953
|
-
|
|
954
|
-
|
|
955
|
-
|
|
956
|
-
|
|
957
|
-
|
|
958
|
-
|
|
959
|
-
|
|
960
|
-
|
|
961
|
-
this.map = e, this.mercator = new
|
|
1006
|
+
R(this, "map");
|
|
1007
|
+
R(this, "mercator");
|
|
1008
|
+
R(this, "rampColorLayer");
|
|
1009
|
+
R(this, "rampColorSource");
|
|
1010
|
+
R(this, "particleLayer");
|
|
1011
|
+
R(this, "particleSource");
|
|
1012
|
+
R(this, "rampColorCanvas");
|
|
1013
|
+
R(this, "particleCanvas");
|
|
1014
|
+
R(this, "ratio");
|
|
1015
|
+
this.map = e, this.mercator = new ot(), 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;
|
|
962
1016
|
}
|
|
963
1017
|
/**
|
|
964
1018
|
* 转换为[-180, 180]的经度,且包含转换次数
|
|
@@ -992,8 +1046,8 @@ class Re {
|
|
|
992
1046
|
* @param [lb.x, lb.y, rt.x, rt.y]
|
|
993
1047
|
*/
|
|
994
1048
|
getBoundPixel() {
|
|
995
|
-
const e = this.map.getBounds(), t = this.map.getZoom() + 1, r = [e._ne.lng, e._ne.lat], i = [e._sw.lng, e._sw.lat], [o,
|
|
996
|
-
return [
|
|
1049
|
+
const e = this.map.getBounds(), t = this.map.getZoom() + 1, r = [e._ne.lng, e._ne.lat], i = [e._sw.lng, e._sw.lat], [o, s] = this.convertNLng(r[0]), [n, c] = this.convertNLng(i[0]), [d, h] = this.mercator.px([o, r[1]], t), [p, g] = this.mercator.px([n, i[1]], t), u = Math.round(this.mercator.size * Math.pow(2, t) * (s + c));
|
|
1050
|
+
return [p, g, d + u, h];
|
|
997
1051
|
}
|
|
998
1052
|
/**
|
|
999
1053
|
* [视窗边界像素宽度]
|
|
@@ -1008,13 +1062,13 @@ class Re {
|
|
|
1008
1062
|
* @param zoom
|
|
1009
1063
|
*/
|
|
1010
1064
|
getWorldCopy(e, t) {
|
|
1011
|
-
const r = 2 ** t, [i, o,
|
|
1012
|
-
for (let
|
|
1013
|
-
for (let
|
|
1014
|
-
c.push([
|
|
1015
|
-
return c.map((
|
|
1016
|
-
const
|
|
1017
|
-
return [
|
|
1065
|
+
const r = 2 ** t, [i, o, s, n] = e.map((h) => ~~(h / (r * 256))), c = [];
|
|
1066
|
+
for (let h = n; h <= o; h++)
|
|
1067
|
+
for (let p = i; p <= s; p++)
|
|
1068
|
+
c.push([p, h]);
|
|
1069
|
+
return c.map((h) => {
|
|
1070
|
+
const p = 2 ** t * 256;
|
|
1071
|
+
return [h[0] * p, h[1] * p, p];
|
|
1018
1072
|
});
|
|
1019
1073
|
}
|
|
1020
1074
|
resize() {
|
|
@@ -1030,7 +1084,7 @@ class Re {
|
|
|
1030
1084
|
t !== r && this.map.setLayoutProperty(this.particleLayer, "visibility", r);
|
|
1031
1085
|
}
|
|
1032
1086
|
}
|
|
1033
|
-
class
|
|
1087
|
+
class Le {
|
|
1034
1088
|
/**
|
|
1035
1089
|
* 创建着色器
|
|
1036
1090
|
* @see https://webglfundamentals.org/webgl/lessons/zh_cn/webgl-shaders-and-glsl.html
|
|
@@ -1055,9 +1109,9 @@ class ye {
|
|
|
1055
1109
|
* @param width??
|
|
1056
1110
|
* @param height??
|
|
1057
1111
|
*/
|
|
1058
|
-
createTexture(e, t, r, i, o,
|
|
1112
|
+
createTexture(e, t, r, i, o, s, n) {
|
|
1059
1113
|
const c = e.createTexture();
|
|
1060
|
-
return e.bindTexture(e.TEXTURE_2D, c), e.texParameteri(e.TEXTURE_2D, e.TEXTURE_MIN_FILTER, t), e.texParameteri(e.TEXTURE_2D, e.TEXTURE_MAG_FILTER, r), e.texParameteri(e.TEXTURE_2D, e.TEXTURE_WRAP_S, i), e.texParameteri(e.TEXTURE_2D, e.TEXTURE_WRAP_T, i), o instanceof Uint8Array ? e.texImage2D(e.TEXTURE_2D, 0, e.RGBA,
|
|
1114
|
+
return e.bindTexture(e.TEXTURE_2D, c), e.texParameteri(e.TEXTURE_2D, e.TEXTURE_MIN_FILTER, t), e.texParameteri(e.TEXTURE_2D, e.TEXTURE_MAG_FILTER, r), e.texParameteri(e.TEXTURE_2D, e.TEXTURE_WRAP_S, i), e.texParameteri(e.TEXTURE_2D, e.TEXTURE_WRAP_T, i), o instanceof Uint8Array ? e.texImage2D(e.TEXTURE_2D, 0, e.RGBA, s, n, 0, e.RGBA, e.UNSIGNED_BYTE, o) : e.texImage2D(e.TEXTURE_2D, 0, e.RGBA, e.RGBA, e.UNSIGNED_BYTE, o), e.bindTexture(e.TEXTURE_2D, null), c;
|
|
1061
1115
|
}
|
|
1062
1116
|
/**
|
|
1063
1117
|
* 创建数据资源
|
|
@@ -1080,8 +1134,8 @@ class ye {
|
|
|
1080
1134
|
* @param fragmentSchema
|
|
1081
1135
|
*/
|
|
1082
1136
|
createProgram(e, t, r) {
|
|
1083
|
-
const i = e.createProgram(), o = this.createShader(e, e.VERTEX_SHADER, t),
|
|
1084
|
-
if (i && o &&
|
|
1137
|
+
const i = e.createProgram(), o = this.createShader(e, e.VERTEX_SHADER, t), s = this.createShader(e, e.FRAGMENT_SHADER, r);
|
|
1138
|
+
if (i && o && s && (e.attachShader(i, o), e.attachShader(i, s), e.linkProgram(i), !e.getProgramParameter(i, e.LINK_STATUS)))
|
|
1085
1139
|
throw new Error(e.getProgramInfoLog(i) || "error happened while creating ramp color program");
|
|
1086
1140
|
return i;
|
|
1087
1141
|
}
|
|
@@ -1094,15 +1148,15 @@ class ye {
|
|
|
1094
1148
|
createProgramWrapper(e, t, r) {
|
|
1095
1149
|
const i = this.createProgram(e, t, r);
|
|
1096
1150
|
if (i) {
|
|
1097
|
-
const o = { program: i },
|
|
1098
|
-
for (let c = 0; c < n; c++) {
|
|
1099
|
-
const h = e.getActiveAttrib(i, c);
|
|
1100
|
-
o[h.name] = e.getAttribLocation(i, h.name);
|
|
1101
|
-
}
|
|
1102
|
-
const s = e.getProgramParameter(i, e.ACTIVE_UNIFORMS);
|
|
1151
|
+
const o = { program: i }, s = e.getProgramParameter(i, e.ACTIVE_ATTRIBUTES);
|
|
1103
1152
|
for (let c = 0; c < s; c++) {
|
|
1104
|
-
const
|
|
1105
|
-
o[
|
|
1153
|
+
const d = e.getActiveAttrib(i, c);
|
|
1154
|
+
o[d.name] = e.getAttribLocation(i, d.name);
|
|
1155
|
+
}
|
|
1156
|
+
const n = e.getProgramParameter(i, e.ACTIVE_UNIFORMS);
|
|
1157
|
+
for (let c = 0; c < n; c++) {
|
|
1158
|
+
const d = e.getActiveUniform(i, c);
|
|
1159
|
+
o[d.name] = e.getUniformLocation(i, d.name);
|
|
1106
1160
|
}
|
|
1107
1161
|
return o;
|
|
1108
1162
|
}
|
|
@@ -1112,21 +1166,21 @@ class ye {
|
|
|
1112
1166
|
* @param colors
|
|
1113
1167
|
*/
|
|
1114
1168
|
setup(e, t, r = !1, i, o) {
|
|
1115
|
-
const
|
|
1116
|
-
|
|
1117
|
-
const
|
|
1118
|
-
if (
|
|
1119
|
-
const c =
|
|
1120
|
-
return t.forEach(([
|
|
1121
|
-
c.addColorStop(
|
|
1122
|
-
}),
|
|
1123
|
-
canvas:
|
|
1169
|
+
const s = document.createElement("canvas");
|
|
1170
|
+
s.width = 256, s.height = 1;
|
|
1171
|
+
const n = s.getContext("2d");
|
|
1172
|
+
if (n && e) {
|
|
1173
|
+
const c = n == null ? void 0 : n.createLinearGradient(0, 0, 256, 0);
|
|
1174
|
+
return t.forEach(([d, h]) => {
|
|
1175
|
+
c.addColorStop(d, h);
|
|
1176
|
+
}), n.fillStyle = c, n.fillRect(0, 0, 256, 1), {
|
|
1177
|
+
canvas: s,
|
|
1124
1178
|
texture: this.createTexture(
|
|
1125
1179
|
e,
|
|
1126
1180
|
e.LINEAR,
|
|
1127
1181
|
e.LINEAR,
|
|
1128
1182
|
e.CLAMP_TO_EDGE,
|
|
1129
|
-
r ? new Uint8Array(
|
|
1183
|
+
r ? new Uint8Array(n.getImageData(0, 0, 256, 1).data) : s,
|
|
1130
1184
|
i,
|
|
1131
1185
|
o
|
|
1132
1186
|
)
|
|
@@ -1135,53 +1189,53 @@ class ye {
|
|
|
1135
1189
|
}
|
|
1136
1190
|
setupParticle(e, t = 1e3) {
|
|
1137
1191
|
const r = Math.ceil(Math.sqrt(t)), i = r * r, o = new Uint8Array(i * 4);
|
|
1138
|
-
for (let
|
|
1139
|
-
o[
|
|
1140
|
-
const
|
|
1141
|
-
for (let
|
|
1142
|
-
c[
|
|
1143
|
-
const
|
|
1144
|
-
return { resolution: r, total: i, texture0:
|
|
1192
|
+
for (let h = 0; h < o.length; h++)
|
|
1193
|
+
o[h] = Math.floor(Math.random() * 256);
|
|
1194
|
+
const s = this.createTexture(e, e.NEAREST, e.NEAREST, e.CLAMP_TO_EDGE, o, r, r), n = this.createTexture(e, e.NEAREST, e.NEAREST, e.CLAMP_TO_EDGE, o, r, r), c = new Float32Array(i);
|
|
1195
|
+
for (let h = 0; h < i; h++)
|
|
1196
|
+
c[h] = h;
|
|
1197
|
+
const d = this.createDataBuffer(e, "array", c);
|
|
1198
|
+
return { resolution: r, total: i, texture0: s, texture1: n, indexBuffer: d };
|
|
1145
1199
|
}
|
|
1146
1200
|
bind(e, t, r) {
|
|
1147
1201
|
const i = this.createProgram(e, t, r);
|
|
1148
1202
|
if (i) {
|
|
1149
|
-
const o = this.createDataBuffer(e, "array", void 0),
|
|
1150
|
-
e.enableVertexAttribArray(
|
|
1151
|
-
const
|
|
1152
|
-
this.createDataBuffer(e, "array",
|
|
1203
|
+
const o = this.createDataBuffer(e, "array", void 0), s = e.getAttribLocation(i, "a_position");
|
|
1204
|
+
e.enableVertexAttribArray(s), e.vertexAttribPointer(s, 2, e.FLOAT, !1, 0, 0);
|
|
1205
|
+
const n = new Float32Array([0, 0, 1, 0, 0, 1, 0, 1, 1, 0, 1, 1]);
|
|
1206
|
+
this.createDataBuffer(e, "array", n);
|
|
1153
1207
|
const c = e.getAttribLocation(i, "a_texCoord");
|
|
1154
1208
|
return e.enableVertexAttribArray(c), e.vertexAttribPointer(c, 2, e.FLOAT, !1, 0, 0), { program: i, aPositionBuffer: o };
|
|
1155
1209
|
}
|
|
1156
1210
|
return {};
|
|
1157
1211
|
}
|
|
1158
|
-
bindParticle(e, t, r, i, o,
|
|
1159
|
-
const
|
|
1160
|
-
return { particle:
|
|
1212
|
+
bindParticle(e, t, r, i, o, s) {
|
|
1213
|
+
const n = this.createProgramWrapper(e, t, r), c = this.createProgramWrapper(e, i, o), d = this.createProgramWrapper(e, i, s), h = this.createDataBuffer(e, "array", new Float32Array([0, 0, 1, 0, 0, 1, 0, 1, 1, 0, 1, 1])), p = e.createFramebuffer();
|
|
1214
|
+
return { particle: n, screen: c, update: d, quadBuffer: h, frameBuffer: p };
|
|
1161
1215
|
}
|
|
1162
|
-
draw(e, t, r, i, o,
|
|
1163
|
-
var c,
|
|
1216
|
+
draw(e, t, r, i, o, s, n) {
|
|
1217
|
+
var c, d;
|
|
1164
1218
|
if (t && r) {
|
|
1165
|
-
e.resize(), t == null || t.viewport(0, 0, (c = t == null ? void 0 : t.canvas) == null ? void 0 : c.width, (
|
|
1219
|
+
e.resize(), t == null || t.viewport(0, 0, (c = t == null ? void 0 : t.canvas) == null ? void 0 : c.width, (d = t == null ? void 0 : t.canvas) == null ? void 0 : d.height), t.clearColor(0, 0, 0, 0), t.clear(t.COLOR_BUFFER_BIT | t.DEPTH_BUFFER_BIT);
|
|
1166
1220
|
try {
|
|
1167
|
-
const
|
|
1168
|
-
if (t.useProgram(r), t.uniform2f(
|
|
1221
|
+
const h = t.getUniformLocation(r, "u_resolution"), p = t.getUniformLocation(r, "u_image"), g = t.getUniformLocation(r, "u_color");
|
|
1222
|
+
if (t.useProgram(r), t.uniform2f(h, t.canvas.width * e.ratio, t.canvas.height * e.ratio), t.activeTexture(t.TEXTURE0), t.bindTexture(t.TEXTURE_2D, i), t.uniform1i(p, 0), t.activeTexture(t.TEXTURE1), t.bindTexture(t.TEXTURE_2D, o), t.uniform1i(g, 1), n != null && n.uvRange && (n != null && n.sRange)) {
|
|
1169
1223
|
const m = t.getUniformLocation(r, "u_range_u_v"), v = t.getUniformLocation(r, "u_range_s");
|
|
1170
|
-
t.uniform2f(m,
|
|
1224
|
+
t.uniform2f(m, n.uvRange[0], n.uvRange[1]), t.uniform2f(v, n.sRange[0], n.sRange[1]);
|
|
1171
1225
|
}
|
|
1172
1226
|
const u = e.getBoundPixel(), y = e.map.getZoom() + 1, f = e.getWorldCopy(u, y);
|
|
1173
1227
|
for (const m of f) {
|
|
1174
|
-
const v = (m[0] - u[0]) * e.ratio, b = (m[1] - u[3]) * e.ratio,
|
|
1175
|
-
t.bindBuffer(t.ARRAY_BUFFER,
|
|
1228
|
+
const v = (m[0] - u[0]) * e.ratio, b = (m[1] - u[3]) * e.ratio, _ = m[2] * e.ratio, [z, w, A, M] = [v, _ + v, b, _ + b], $ = new Float32Array([z, A, w, A, z, M, z, M, w, A, w, M]);
|
|
1229
|
+
t.bindBuffer(t.ARRAY_BUFFER, s), t.bufferData(t.ARRAY_BUFFER, $, t.STATIC_DRAW), t.drawArrays(t.TRIANGLES, 0, 6);
|
|
1176
1230
|
}
|
|
1177
|
-
} catch (
|
|
1178
|
-
console.log(`render failed...${
|
|
1231
|
+
} catch (h) {
|
|
1232
|
+
console.log(`render failed...${h}`);
|
|
1179
1233
|
}
|
|
1180
1234
|
}
|
|
1181
1235
|
}
|
|
1182
1236
|
drawParticle(e, t, r, i, o) {
|
|
1183
|
-
var
|
|
1184
|
-
t && (t == null || t.viewport(0, 0, (
|
|
1237
|
+
var s, n;
|
|
1238
|
+
t && (t == null || t.viewport(0, 0, (s = t == null ? void 0 : t.canvas) == null ? void 0 : s.width, (n = t == null ? void 0 : t.canvas) == null ? void 0 : n.height), t.disable(t.DEPTH_TEST), t.disable(t.STENCIL_TEST), t.activeTexture(t.TEXTURE0), t.bindTexture(t.TEXTURE_2D, r), t.activeTexture(t.TEXTURE1), t.bindTexture(t.TEXTURE_2D, i.texture0), this.renderScreen(e, t, i, o), this.updateParticles(e, t, i, o));
|
|
1185
1239
|
}
|
|
1186
1240
|
renderScreen(e, t, r, i) {
|
|
1187
1241
|
t.bindFramebuffer(t.FRAMEBUFFER, r.frameBuffer), t.framebufferTexture2D(t.FRAMEBUFFER, t.COLOR_ATTACHMENT0, t.TEXTURE_2D, r.screenTexture, 0), t.viewport(0, 0, t.canvas.width, t.canvas.height), this.renderScreenTexture(t, r.backgroundTexture, r.screen, r.quadBuffer, 0.95), this.renderParticles(e, t, r, i), t.bindFramebuffer(t.FRAMEBUFFER, null), this.renderScreenTexture(t, r.screenTexture, r.screen, r.quadBuffer, 1);
|
|
@@ -1199,11 +1253,11 @@ class ye {
|
|
|
1199
1253
|
}
|
|
1200
1254
|
}
|
|
1201
1255
|
updateParticles(e, t, r, i) {
|
|
1202
|
-
var
|
|
1256
|
+
var s, n;
|
|
1203
1257
|
if (t) {
|
|
1204
1258
|
t.bindFramebuffer(t.FRAMEBUFFER, r.frameBuffer), t.framebufferTexture2D(t.FRAMEBUFFER, t.COLOR_ATTACHMENT0, t.TEXTURE_2D, r.texture1, 0), t.viewport(0, 0, r.resolution, r.resolution), t.useProgram(r.update.program), t.bindBuffer(t.ARRAY_BUFFER, r.quadBuffer), t.enableVertexAttribArray(r.update.a_pos), t.vertexAttribPointer(r.update.a_pos, 2, t.FLOAT, !1, 0, 0), t.uniform1i(r.update.u_factor, 0), t.uniform1i(r.update.u_particles, 1);
|
|
1205
1259
|
const c = e.getBoundRange();
|
|
1206
|
-
t.uniform4f(r.update.u_viewport, c[0], c[1], c[2], c[3]), t.uniform1f(r.update.u_rand_seed, Math.random()), t.uniform2f(r.update.u_factor_res, (
|
|
1260
|
+
t.uniform4f(r.update.u_viewport, c[0], c[1], c[2], c[3]), t.uniform1f(r.update.u_rand_seed, Math.random()), t.uniform2f(r.update.u_factor_res, (s = r == null ? void 0 : r.image) == null ? void 0 : s.width, (n = r == null ? void 0 : r.image) == null ? void 0 : n.height), t.uniform2f(r.update.u_factor_min, i.uvRange[0], i.uvRange[0]), t.uniform2f(r.update.u_factor_max, i.uvRange[1], i.uvRange[1]), t.uniform1f(r.update.u_speed_factor, i.speedFactor * e.ratio), t.uniform1f(r.update.u_drop_rate, i.dropRate), t.uniform1f(r.update.u_drop_rate_bump, i.dropRateBump), t.drawArrays(t.TRIANGLES, 0, 6);
|
|
1207
1261
|
}
|
|
1208
1262
|
const o = r.texture0;
|
|
1209
1263
|
r.texture0 = r.texture1, r.texture1 = o;
|
|
@@ -1220,10 +1274,10 @@ class ye {
|
|
|
1220
1274
|
});
|
|
1221
1275
|
}
|
|
1222
1276
|
}
|
|
1223
|
-
class
|
|
1277
|
+
class N {
|
|
1224
1278
|
}
|
|
1225
1279
|
// 顶点渲染
|
|
1226
|
-
|
|
1280
|
+
R(N, "vertexSchema", `
|
|
1227
1281
|
//canvas 坐标系上的坐标 (x, y)
|
|
1228
1282
|
attribute vec2 a_position; //像素坐标
|
|
1229
1283
|
attribute vec2 a_texCoord; //纹理坐标
|
|
@@ -1238,7 +1292,7 @@ I(W, "vertexSchema", `
|
|
|
1238
1292
|
gl_Position = vec4(position * vec2(1, -1), 0.0, 1.0);
|
|
1239
1293
|
v_texCoord = a_texCoord;
|
|
1240
1294
|
}`), // 类如风、流等u v双变量片元渲染
|
|
1241
|
-
|
|
1295
|
+
R(N, "uvFragmentSchema", `
|
|
1242
1296
|
precision mediump float;
|
|
1243
1297
|
uniform sampler2D u_image;
|
|
1244
1298
|
uniform vec2 u_range_u_v;
|
|
@@ -1257,7 +1311,7 @@ I(W, "uvFragmentSchema", `
|
|
|
1257
1311
|
|
|
1258
1312
|
gl_FragColor = color;
|
|
1259
1313
|
}`), // 类如浪、气压等单变量片元渲染
|
|
1260
|
-
|
|
1314
|
+
R(N, "fragmentSchema", `
|
|
1261
1315
|
precision mediump float;
|
|
1262
1316
|
uniform sampler2D u_image; // 灰度
|
|
1263
1317
|
uniform sampler2D u_color; // 色值映射
|
|
@@ -1268,9 +1322,9 @@ I(W, "fragmentSchema", `
|
|
|
1268
1322
|
vec4 color = texture2D(u_color, vec2(rgba.r, 0));
|
|
1269
1323
|
gl_FragColor = color;
|
|
1270
1324
|
}`);
|
|
1271
|
-
class
|
|
1325
|
+
class V {
|
|
1272
1326
|
}
|
|
1273
|
-
|
|
1327
|
+
R(V, "vertexSchema", `
|
|
1274
1328
|
precision mediump float;
|
|
1275
1329
|
|
|
1276
1330
|
attribute float a_index; // 索引
|
|
@@ -1294,7 +1348,7 @@ I(U, "vertexSchema", `
|
|
|
1294
1348
|
gl_PointSize = 1.0;
|
|
1295
1349
|
// gl_PointSize = u_point;
|
|
1296
1350
|
gl_Position = vec4(2.0 * v_particle_pos.x - 1.0, 1.0 - 2.0 * v_particle_pos.y, 0, 1);
|
|
1297
|
-
}`),
|
|
1351
|
+
}`), R(V, "fragmentSchema", `
|
|
1298
1352
|
precision mediump float;
|
|
1299
1353
|
|
|
1300
1354
|
uniform sampler2D u_factor;
|
|
@@ -1316,7 +1370,7 @@ I(U, "vertexSchema", `
|
|
|
1316
1370
|
|
|
1317
1371
|
float f = 1.0 - uv.b;
|
|
1318
1372
|
gl_FragColor = texture2D(u_color_ramp, ramp_pos) * f;
|
|
1319
|
-
}`),
|
|
1373
|
+
}`), R(V, "quadVertSchema", `
|
|
1320
1374
|
precision mediump float;
|
|
1321
1375
|
|
|
1322
1376
|
attribute vec2 a_pos;
|
|
@@ -1326,7 +1380,7 @@ I(U, "vertexSchema", `
|
|
|
1326
1380
|
void main() {
|
|
1327
1381
|
v_tex_pos = a_pos;
|
|
1328
1382
|
gl_Position = vec4(1.0 - 2.0 * a_pos, 0, 1);
|
|
1329
|
-
}`),
|
|
1383
|
+
}`), R(V, "screenFragmentSchema", `
|
|
1330
1384
|
precision mediump float;
|
|
1331
1385
|
|
|
1332
1386
|
uniform sampler2D u_screen;
|
|
@@ -1338,7 +1392,7 @@ I(U, "vertexSchema", `
|
|
|
1338
1392
|
vec4 color = texture2D(u_screen, 1.0 - v_tex_pos);
|
|
1339
1393
|
// a hack to guarantee opacity fade out even with a value close to 1.0
|
|
1340
1394
|
gl_FragColor = vec4(floor(255.0 * color * u_opacity) / 255.0);
|
|
1341
|
-
}`),
|
|
1395
|
+
}`), R(V, "updateFragmentSchema", `
|
|
1342
1396
|
precision mediump float;
|
|
1343
1397
|
|
|
1344
1398
|
uniform sampler2D u_particles;
|
|
@@ -1417,14 +1471,14 @@ I(U, "vertexSchema", `
|
|
|
1417
1471
|
fract(pos * 255.0),
|
|
1418
1472
|
floor(pos * 255.0) / 255.0);
|
|
1419
1473
|
}`);
|
|
1420
|
-
class
|
|
1474
|
+
class aa {
|
|
1421
1475
|
constructor(e = "eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9.eyJpZCI6ImNseTVudHJzYzAwNWUwbHBsZHkyaDRqczMiLCJyb2xlIjoxLCJuYW1lIjoiZmFrZUBvcm13eC5jb20iLCJwbGF0SWQiOiJnZDBtdDFkIiwiY29tcGFueSI6eyJpZCI6bnVsbCwiY2hpbGRyZW4iOltdfSwiaWF0IjoxNzIzMDI0MDI0LCJleHAiOjM5MzA1NDQwMjR9.RrKcdcMnq-FxBLJQ-i6lx2FscDE46y8EvHIemPW4HTg") {
|
|
1422
|
-
|
|
1423
|
-
|
|
1424
|
-
|
|
1425
|
-
|
|
1426
|
-
|
|
1427
|
-
|
|
1476
|
+
R(this, "token");
|
|
1477
|
+
R(this, "mapboxCustomer");
|
|
1478
|
+
R(this, "i4");
|
|
1479
|
+
R(this, "hi");
|
|
1480
|
+
R(this, "td");
|
|
1481
|
+
R(this, "windy");
|
|
1428
1482
|
this.token = e, this.mapboxCustomer = {
|
|
1429
1483
|
source: this.initialOnlineStyle().sources.composite,
|
|
1430
1484
|
layers: {
|
|
@@ -3021,14 +3075,14 @@ class wt {
|
|
|
3021
3075
|
};
|
|
3022
3076
|
}
|
|
3023
3077
|
}
|
|
3024
|
-
const
|
|
3078
|
+
const ia = {
|
|
3025
3079
|
name: "IdmWindParticle",
|
|
3026
3080
|
props: {
|
|
3027
3081
|
factor: {
|
|
3028
3082
|
type: Object
|
|
3029
3083
|
},
|
|
3030
3084
|
viewport: {
|
|
3031
|
-
type:
|
|
3085
|
+
type: Ve
|
|
3032
3086
|
},
|
|
3033
3087
|
bottom: {
|
|
3034
3088
|
type: String,
|
|
@@ -3045,7 +3099,7 @@ const Lt = {
|
|
|
3045
3099
|
texture: void 0,
|
|
3046
3100
|
rampColor: void 0,
|
|
3047
3101
|
aPositionBuffer: void 0,
|
|
3048
|
-
webgl: new
|
|
3102
|
+
webgl: new Le(),
|
|
3049
3103
|
etime: void 0,
|
|
3050
3104
|
wrapper: void 0,
|
|
3051
3105
|
animation: void 0,
|
|
@@ -3099,8 +3153,8 @@ const Lt = {
|
|
|
3099
3153
|
}
|
|
3100
3154
|
},
|
|
3101
3155
|
handleClear() {
|
|
3102
|
-
var a, e, t, r, i, o,
|
|
3103
|
-
(a = this.viewport) == null || a.toggle(!1), (e = this.viewport) == null || e.toggleParticle(!1), this.context = void 0, this.particleContext = void 0, this.etime = void 0, this.initial = !0, (r = (t = this.viewport) == null ? void 0 : t.map) == null || r.off("resize", this.handleResize), (o = (i = this.viewport) == null ? void 0 : i.map) == null || o.off("movestart", this.handlePause), (
|
|
3156
|
+
var a, e, t, r, i, o, s, n;
|
|
3157
|
+
(a = this.viewport) == null || a.toggle(!1), (e = this.viewport) == null || e.toggleParticle(!1), this.context = void 0, this.particleContext = void 0, this.etime = void 0, this.initial = !0, (r = (t = this.viewport) == null ? void 0 : t.map) == null || r.off("resize", this.handleResize), (o = (i = this.viewport) == null ? void 0 : i.map) == null || o.off("movestart", this.handlePause), (n = (s = this.viewport) == null ? void 0 : s.map) == null || n.off("moveend", this.handlePlay), this.handlePause();
|
|
3104
3158
|
},
|
|
3105
3159
|
handleSetup() {
|
|
3106
3160
|
if (!this.context) {
|
|
@@ -3135,7 +3189,7 @@ const Lt = {
|
|
|
3135
3189
|
[1, "rgb(91, 136, 161)"]
|
|
3136
3190
|
];
|
|
3137
3191
|
this.rampColor = this.webgl.setup(this.context, a);
|
|
3138
|
-
const { program: e, aPositionBuffer: t } = this.webgl.bind(this.context,
|
|
3192
|
+
const { program: e, aPositionBuffer: t } = this.webgl.bind(this.context, N.vertexSchema, N.uvFragmentSchema);
|
|
3139
3193
|
this.program = e, this.aPositionBuffer = t;
|
|
3140
3194
|
}
|
|
3141
3195
|
this.handleParticleSetup();
|
|
@@ -3149,11 +3203,11 @@ const Lt = {
|
|
|
3149
3203
|
];
|
|
3150
3204
|
this.wrapper = this.webgl.bindParticle(
|
|
3151
3205
|
this.particleContext,
|
|
3152
|
-
|
|
3153
|
-
|
|
3154
|
-
|
|
3155
|
-
|
|
3156
|
-
|
|
3206
|
+
V.vertexSchema,
|
|
3207
|
+
V.fragmentSchema,
|
|
3208
|
+
V.quadVertSchema,
|
|
3209
|
+
V.screenFragmentSchema,
|
|
3210
|
+
V.updateFragmentSchema
|
|
3157
3211
|
), this.wrapper.color = this.webgl.setup(this.particleContext, a, !0, 16, 16), this.wrapper = { ...this.wrapper, ...this.webgl.setupParticle(this.particleContext, 9e3), ...this.webgl.resize(this.viewport, this.particleContext) }, this.viewport.map.on("resize", this.handleResize), this.viewport.map.on("movestart", this.handlePause), this.viewport.map.on("moveend", this.handlePlay);
|
|
3158
3212
|
}
|
|
3159
3213
|
},
|
|
@@ -3183,27 +3237,27 @@ const Lt = {
|
|
|
3183
3237
|
});
|
|
3184
3238
|
}
|
|
3185
3239
|
}
|
|
3186
|
-
},
|
|
3187
|
-
|
|
3188
|
-
|
|
3189
|
-
|
|
3240
|
+
}, le = (a) => (H("data-v-64887571"), a = a(), G(), a), ra = { key: 0 }, oa = /* @__PURE__ */ le(() => /* @__PURE__ */ l("span", null, "kts", -1)), sa = /* @__PURE__ */ le(() => /* @__PURE__ */ l("span", null, "0", -1)), na = /* @__PURE__ */ le(() => /* @__PURE__ */ l("span", null, "5", -1)), la = /* @__PURE__ */ le(() => /* @__PURE__ */ l("span", null, "10", -1)), ca = /* @__PURE__ */ le(() => /* @__PURE__ */ l("span", null, "20", -1)), ha = /* @__PURE__ */ le(() => /* @__PURE__ */ l("span", null, "30", -1)), da = /* @__PURE__ */ le(() => /* @__PURE__ */ l("span", null, "40", -1)), pa = /* @__PURE__ */ le(() => /* @__PURE__ */ l("span", null, "60", -1)), ma = [
|
|
3241
|
+
oa,
|
|
3242
|
+
sa,
|
|
3243
|
+
na,
|
|
3244
|
+
la,
|
|
3245
|
+
ca,
|
|
3246
|
+
ha,
|
|
3247
|
+
da,
|
|
3248
|
+
pa
|
|
3249
|
+
];
|
|
3250
|
+
function ua(a, e, t, r, i, o) {
|
|
3251
|
+
var s;
|
|
3252
|
+
return (s = t.factor) != null && s.active ? (x(), C("div", ra, [
|
|
3190
3253
|
l("div", {
|
|
3191
3254
|
class: "legend-bars flex-center",
|
|
3192
|
-
style:
|
|
3193
|
-
},
|
|
3194
|
-
l("span", null, "kts", -1),
|
|
3195
|
-
l("span", null, "0", -1),
|
|
3196
|
-
l("span", null, "5", -1),
|
|
3197
|
-
l("span", null, "10", -1),
|
|
3198
|
-
l("span", null, "20", -1),
|
|
3199
|
-
l("span", null, "30", -1),
|
|
3200
|
-
l("span", null, "40", -1),
|
|
3201
|
-
l("span", null, "60", -1)
|
|
3202
|
-
]), 4)
|
|
3255
|
+
style: U([{ position: "absolute" }, { right: i.right + "px", bottom: t.bottom }])
|
|
3256
|
+
}, ma, 4)
|
|
3203
3257
|
])) : B("", !0);
|
|
3204
3258
|
}
|
|
3205
|
-
const
|
|
3206
|
-
const
|
|
3259
|
+
const ya = /* @__PURE__ */ T(ia, [["render", ua], ["__scopeId", "data-v-64887571"]]);
|
|
3260
|
+
const fa = {
|
|
3207
3261
|
name: "IdmCurrent",
|
|
3208
3262
|
props: {
|
|
3209
3263
|
map: {
|
|
@@ -3228,20 +3282,18 @@ const kt = {
|
|
|
3228
3282
|
},
|
|
3229
3283
|
toggleVersion: {
|
|
3230
3284
|
type: Number
|
|
3231
|
-
},
|
|
3232
|
-
weatherLayers: {
|
|
3233
|
-
type: Object
|
|
3234
3285
|
}
|
|
3235
3286
|
},
|
|
3236
|
-
emits: ["particle"],
|
|
3287
|
+
emits: ["particle", "handleToggleVersion"],
|
|
3237
3288
|
data() {
|
|
3238
3289
|
return {
|
|
3239
3290
|
source: "current-source",
|
|
3240
3291
|
directionLayer: "current-direction-layer",
|
|
3241
3292
|
speedLayer: "current-speed-layer",
|
|
3242
3293
|
speedLabelLayer: "current-speed-label-layer",
|
|
3243
|
-
empty:
|
|
3244
|
-
showJson: !1,
|
|
3294
|
+
empty: L.featureCollection([]),
|
|
3295
|
+
showJson: localStorage.getItem("currentJsonCache") === "true" || !1,
|
|
3296
|
+
currentJsonCache: "currentJsonCache",
|
|
3245
3297
|
right: 10,
|
|
3246
3298
|
bottom: 95
|
|
3247
3299
|
};
|
|
@@ -3250,40 +3302,32 @@ const kt = {
|
|
|
3250
3302
|
"current.version": {
|
|
3251
3303
|
handler() {
|
|
3252
3304
|
var a;
|
|
3253
|
-
(a = this.current) != null && a.active ? this.handleRender() : this.handleClear();
|
|
3305
|
+
(a = this.current) != null && a.active ? this.handleRender() : this.handleClear(), this.$emit("handleToggleVersion");
|
|
3254
3306
|
},
|
|
3255
3307
|
deep: !0
|
|
3256
3308
|
},
|
|
3257
3309
|
showParticle: {
|
|
3258
3310
|
handler() {
|
|
3259
|
-
this.showJson = !this.showParticle;
|
|
3260
3311
|
},
|
|
3261
3312
|
immediate: !0
|
|
3262
3313
|
},
|
|
3263
3314
|
showJson: {
|
|
3264
3315
|
handler() {
|
|
3265
|
-
this.handleToggle();
|
|
3316
|
+
this.showJson, localStorage.setItem(this.currentJsonCache, this.showJson), this.handleToggle();
|
|
3266
3317
|
},
|
|
3267
3318
|
immediate: !0
|
|
3268
3319
|
},
|
|
3269
3320
|
toggleVersion: {
|
|
3270
3321
|
handler() {
|
|
3271
|
-
var a;
|
|
3272
|
-
this.right = (((a = document.getElementsByClassName("right-bar")[0]) == null ? void 0 : a.clientWidth) || 0) + 10;
|
|
3273
|
-
},
|
|
3274
|
-
immediate: !0
|
|
3275
|
-
},
|
|
3276
|
-
weatherLayers: {
|
|
3277
|
-
handler() {
|
|
3278
|
-
var a;
|
|
3279
|
-
this.bottom = (((a = document.getElementsByClassName("active-layers")[0]) == null ? void 0 : a.clientHeight) || 0) + 105;
|
|
3322
|
+
var a, e;
|
|
3323
|
+
this.right = (((a = document.getElementsByClassName("right-bar")[0]) == null ? void 0 : a.clientWidth) || 0) + 10, this.bottom = (((e = document.getElementsByClassName("active-layers")[0]) == null ? void 0 : e.clientHeight) || 0) + 108;
|
|
3280
3324
|
},
|
|
3281
3325
|
immediate: !0
|
|
3282
3326
|
}
|
|
3283
3327
|
},
|
|
3284
3328
|
methods: {
|
|
3285
|
-
handleParticle() {
|
|
3286
|
-
this.$emit("particle", { particle:
|
|
3329
|
+
handleParticle(a) {
|
|
3330
|
+
this.$emit("particle", { particle: a, key: "current", weight: 96 });
|
|
3287
3331
|
},
|
|
3288
3332
|
handleRender() {
|
|
3289
3333
|
var a, e;
|
|
@@ -3363,59 +3407,41 @@ const kt = {
|
|
|
3363
3407
|
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);
|
|
3364
3408
|
}
|
|
3365
3409
|
}
|
|
3366
|
-
},
|
|
3367
|
-
|
|
3368
|
-
|
|
3369
|
-
},
|
|
3370
|
-
|
|
3371
|
-
|
|
3372
|
-
|
|
3373
|
-
|
|
3374
|
-
|
|
3375
|
-
|
|
3376
|
-
key: 1,
|
|
3377
|
-
class: "iconfont"
|
|
3378
|
-
};
|
|
3379
|
-
function Et(a, e, t, r, i, o) {
|
|
3380
|
-
var n;
|
|
3381
|
-
return (n = t.current) != null && n.active ? (x(), _("div", St, [
|
|
3410
|
+
}, ga = { key: 0 }, ba = /* @__PURE__ */ l("div", { class: "checkbox" }, null, -1), va = /* @__PURE__ */ l("span", null, "Current Particles", -1), wa = [
|
|
3411
|
+
ba,
|
|
3412
|
+
va
|
|
3413
|
+
], _a = /* @__PURE__ */ l("div", { class: "checkbox" }, null, -1), La = /* @__PURE__ */ l("span", null, "Current Isoband", -1), xa = [
|
|
3414
|
+
_a,
|
|
3415
|
+
La
|
|
3416
|
+
];
|
|
3417
|
+
function Ca(a, e, t, r, i, o) {
|
|
3418
|
+
var s;
|
|
3419
|
+
return (s = t.current) != null && s.active ? (x(), C("div", ga, [
|
|
3382
3420
|
l("div", {
|
|
3383
|
-
class: "flex-center tool-bars",
|
|
3384
|
-
style:
|
|
3421
|
+
class: "flex-center current-tool-bars",
|
|
3422
|
+
style: U([{ position: "absolute" }, { right: i.right + "px", bottom: i.bottom + "px" }])
|
|
3385
3423
|
}, [
|
|
3386
|
-
t.mapProjection === "mercator" ? (x(),
|
|
3424
|
+
t.mapProjection === "mercator" ? (x(), C("div", {
|
|
3387
3425
|
key: 0,
|
|
3388
|
-
class: "flex-start",
|
|
3389
|
-
onClick: e[0] || (e[0] = (
|
|
3390
|
-
},
|
|
3391
|
-
|
|
3392
|
-
|
|
3393
|
-
|
|
3394
|
-
|
|
3395
|
-
])) : B("", !0),
|
|
3396
|
-
t.showParticle ? (x(), _("div", {
|
|
3397
|
-
key: 1,
|
|
3398
|
-
class: "flex-start",
|
|
3399
|
-
style: { "margin-left": "16px" },
|
|
3400
|
-
onClick: e[1] || (e[1] = (s) => i.showJson = !i.showJson)
|
|
3401
|
-
}, [
|
|
3402
|
-
i.showJson ? (x(), _("i", Tt, "")) : (x(), _("i", Rt, "")),
|
|
3403
|
-
l("span", {
|
|
3404
|
-
class: j(i.showJson ? "active" : "")
|
|
3405
|
-
}, "Current", 2)
|
|
3406
|
-
])) : B("", !0)
|
|
3426
|
+
class: j(["flex-start item-bar", t.showParticle ? "active" : "inactive"]),
|
|
3427
|
+
onClick: e[0] || (e[0] = (n) => o.handleParticle(!t.showParticle))
|
|
3428
|
+
}, wa, 2)) : B("", !0),
|
|
3429
|
+
l("div", {
|
|
3430
|
+
class: j(["flex-start item-bar", i.showJson ? "active" : "inactive"]),
|
|
3431
|
+
onClick: e[1] || (e[1] = (n) => i.showJson = !i.showJson)
|
|
3432
|
+
}, xa, 2)
|
|
3407
3433
|
], 4)
|
|
3408
3434
|
])) : B("", !0);
|
|
3409
3435
|
}
|
|
3410
|
-
const
|
|
3411
|
-
const
|
|
3436
|
+
const ka = /* @__PURE__ */ T(fa, [["render", Ca]]);
|
|
3437
|
+
const Sa = {
|
|
3412
3438
|
name: "IdmCurrentParticle",
|
|
3413
3439
|
props: {
|
|
3414
3440
|
factor: {
|
|
3415
3441
|
type: Object
|
|
3416
3442
|
},
|
|
3417
3443
|
viewport: {
|
|
3418
|
-
type:
|
|
3444
|
+
type: Ve
|
|
3419
3445
|
},
|
|
3420
3446
|
bottom: {
|
|
3421
3447
|
type: String,
|
|
@@ -3432,7 +3458,7 @@ const At = {
|
|
|
3432
3458
|
texture: void 0,
|
|
3433
3459
|
rampColor: void 0,
|
|
3434
3460
|
aPositionBuffer: void 0,
|
|
3435
|
-
webgl: new
|
|
3461
|
+
webgl: new Le(),
|
|
3436
3462
|
etime: void 0,
|
|
3437
3463
|
wrapper: void 0,
|
|
3438
3464
|
animation: void 0,
|
|
@@ -3486,8 +3512,8 @@ const At = {
|
|
|
3486
3512
|
}
|
|
3487
3513
|
},
|
|
3488
3514
|
handleClear() {
|
|
3489
|
-
var a, e, t, r, i, o,
|
|
3490
|
-
(a = this.viewport) == null || a.toggle(!1), (e = this.viewport) == null || e.toggleParticle(!1), this.context = void 0, this.particleContext = void 0, this.etime = void 0, this.initial = !0, (r = (t = this.viewport) == null ? void 0 : t.map) == null || r.off("resize", this.handleResize), (o = (i = this.viewport) == null ? void 0 : i.map) == null || o.off("movestart", this.handlePause), (
|
|
3515
|
+
var a, e, t, r, i, o, s, n;
|
|
3516
|
+
(a = this.viewport) == null || a.toggle(!1), (e = this.viewport) == null || e.toggleParticle(!1), this.context = void 0, this.particleContext = void 0, this.etime = void 0, this.initial = !0, (r = (t = this.viewport) == null ? void 0 : t.map) == null || r.off("resize", this.handleResize), (o = (i = this.viewport) == null ? void 0 : i.map) == null || o.off("movestart", this.handlePause), (n = (s = this.viewport) == null ? void 0 : s.map) == null || n.off("moveend", this.handlePlay), this.handlePause();
|
|
3491
3517
|
},
|
|
3492
3518
|
handleSetup() {
|
|
3493
3519
|
if (!this.context) {
|
|
@@ -3513,7 +3539,7 @@ const At = {
|
|
|
3513
3539
|
[1, "rgb(195,194,194)"]
|
|
3514
3540
|
];
|
|
3515
3541
|
this.rampColor = this.webgl.setup(this.context, a);
|
|
3516
|
-
const { program: e, aPositionBuffer: t } = this.webgl.bind(this.context,
|
|
3542
|
+
const { program: e, aPositionBuffer: t } = this.webgl.bind(this.context, N.vertexSchema, N.uvFragmentSchema);
|
|
3517
3543
|
this.program = e, this.aPositionBuffer = t;
|
|
3518
3544
|
}
|
|
3519
3545
|
this.handleParticleSetup();
|
|
@@ -3527,11 +3553,11 @@ const At = {
|
|
|
3527
3553
|
];
|
|
3528
3554
|
this.wrapper = this.webgl.bindParticle(
|
|
3529
3555
|
this.particleContext,
|
|
3530
|
-
|
|
3531
|
-
|
|
3532
|
-
|
|
3533
|
-
|
|
3534
|
-
|
|
3556
|
+
V.vertexSchema,
|
|
3557
|
+
V.fragmentSchema,
|
|
3558
|
+
V.quadVertSchema,
|
|
3559
|
+
V.screenFragmentSchema,
|
|
3560
|
+
V.updateFragmentSchema
|
|
3535
3561
|
), this.wrapper.color = this.webgl.setup(this.particleContext, a, !0, 16, 16), this.wrapper = {
|
|
3536
3562
|
...this.wrapper,
|
|
3537
3563
|
...this.webgl.setupParticle(this.particleContext, 12e3),
|
|
@@ -3565,25 +3591,25 @@ const At = {
|
|
|
3565
3591
|
});
|
|
3566
3592
|
}
|
|
3567
3593
|
}
|
|
3568
|
-
},
|
|
3569
|
-
|
|
3570
|
-
|
|
3571
|
-
|
|
3594
|
+
}, xe = (a) => (H("data-v-6d4fd206"), a = a(), G(), a), za = { key: 0 }, Pa = /* @__PURE__ */ xe(() => /* @__PURE__ */ l("span", null, "kts", -1)), Ta = /* @__PURE__ */ xe(() => /* @__PURE__ */ l("span", null, "0", -1)), Ia = /* @__PURE__ */ xe(() => /* @__PURE__ */ l("span", null, "0.4", -1)), Ea = /* @__PURE__ */ xe(() => /* @__PURE__ */ l("span", null, "0.8", -1)), Ra = /* @__PURE__ */ xe(() => /* @__PURE__ */ l("span", null, "1.6", -1)), Aa = /* @__PURE__ */ xe(() => /* @__PURE__ */ l("span", null, "2", -1)), Da = /* @__PURE__ */ xe(() => /* @__PURE__ */ l("span", null, "3.2", -1)), Ma = [
|
|
3595
|
+
Pa,
|
|
3596
|
+
Ta,
|
|
3597
|
+
Ia,
|
|
3598
|
+
Ea,
|
|
3599
|
+
Ra,
|
|
3600
|
+
Aa,
|
|
3601
|
+
Da
|
|
3602
|
+
];
|
|
3603
|
+
function $a(a, e, t, r, i, o) {
|
|
3604
|
+
var s;
|
|
3605
|
+
return (s = t.factor) != null && s.active ? (x(), C("div", za, [
|
|
3572
3606
|
l("div", {
|
|
3573
3607
|
class: "legend-bars flex-center",
|
|
3574
|
-
style:
|
|
3575
|
-
},
|
|
3576
|
-
l("span", null, "kts", -1),
|
|
3577
|
-
l("span", null, "0", -1),
|
|
3578
|
-
l("span", null, "0.4", -1),
|
|
3579
|
-
l("span", null, "0.8", -1),
|
|
3580
|
-
l("span", null, "1.6", -1),
|
|
3581
|
-
l("span", null, "2", -1),
|
|
3582
|
-
l("span", null, "3.2", -1)
|
|
3583
|
-
]), 4)
|
|
3608
|
+
style: U([{ position: "absolute" }, { right: i.right + "px", bottom: t.bottom }])
|
|
3609
|
+
}, Ma, 4)
|
|
3584
3610
|
])) : B("", !0);
|
|
3585
3611
|
}
|
|
3586
|
-
const
|
|
3612
|
+
const ja = /* @__PURE__ */ T(Sa, [["render", $a], ["__scopeId", "data-v-6d4fd206"]]), Na = {
|
|
3587
3613
|
name: "IdmSigWave",
|
|
3588
3614
|
props: {
|
|
3589
3615
|
map: {
|
|
@@ -3601,7 +3627,7 @@ const jt = /* @__PURE__ */ T(At, [["render", Mt], ["__scopeId", "data-v-13f659b1
|
|
|
3601
3627
|
source: "sig-wave-source",
|
|
3602
3628
|
heightLayer: "sig-wave-height-layer",
|
|
3603
3629
|
heightLabelLayer: "sig-wave-height-label-layer",
|
|
3604
|
-
empty:
|
|
3630
|
+
empty: L.featureCollection([])
|
|
3605
3631
|
};
|
|
3606
3632
|
},
|
|
3607
3633
|
watch: {
|
|
@@ -3694,10 +3720,10 @@ const jt = /* @__PURE__ */ T(At, [["render", Mt], ["__scopeId", "data-v-13f659b1
|
|
|
3694
3720
|
}
|
|
3695
3721
|
}
|
|
3696
3722
|
};
|
|
3697
|
-
function
|
|
3698
|
-
return x(),
|
|
3723
|
+
function Ba(a, e, t, r, i, o) {
|
|
3724
|
+
return x(), C("div");
|
|
3699
3725
|
}
|
|
3700
|
-
const
|
|
3726
|
+
const Wa = /* @__PURE__ */ T(Na, [["render", Ba]]), Oa = {
|
|
3701
3727
|
name: "IdmSwell",
|
|
3702
3728
|
props: {
|
|
3703
3729
|
map: {
|
|
@@ -3716,7 +3742,7 @@ const Wt = /* @__PURE__ */ T(Bt, [["render", Nt]]), Ot = {
|
|
|
3716
3742
|
directionLayer: "swell-direction-layer",
|
|
3717
3743
|
heightLayer: "swell-height-layer",
|
|
3718
3744
|
heightLabelLayer: "swell-height-label-layer",
|
|
3719
|
-
empty:
|
|
3745
|
+
empty: L.featureCollection([])
|
|
3720
3746
|
};
|
|
3721
3747
|
},
|
|
3722
3748
|
watch: {
|
|
@@ -3835,10 +3861,10 @@ const Wt = /* @__PURE__ */ T(Bt, [["render", Nt]]), Ot = {
|
|
|
3835
3861
|
}
|
|
3836
3862
|
}
|
|
3837
3863
|
};
|
|
3838
|
-
function
|
|
3839
|
-
return x(),
|
|
3864
|
+
function Fa(a, e, t, r, i, o) {
|
|
3865
|
+
return x(), C("div");
|
|
3840
3866
|
}
|
|
3841
|
-
const
|
|
3867
|
+
const Va = /* @__PURE__ */ T(Oa, [["render", Fa]]), Ua = {
|
|
3842
3868
|
name: "IdmPrmsl",
|
|
3843
3869
|
props: {
|
|
3844
3870
|
map: {
|
|
@@ -3860,7 +3886,7 @@ const $t = /* @__PURE__ */ T(Ot, [["render", Ft]]), Vt = {
|
|
|
3860
3886
|
layer: "prmsl-layer",
|
|
3861
3887
|
labelLayer: "prmsl-label-layer",
|
|
3862
3888
|
pointLabelLayer: "prmsl-point-label-layer",
|
|
3863
|
-
empty:
|
|
3889
|
+
empty: L.featureCollection([])
|
|
3864
3890
|
};
|
|
3865
3891
|
},
|
|
3866
3892
|
watch: {
|
|
@@ -3881,8 +3907,8 @@ const $t = /* @__PURE__ */ T(Ot, [["render", Ft]]), Vt = {
|
|
|
3881
3907
|
}, 500);
|
|
3882
3908
|
else if (this.prmsl) {
|
|
3883
3909
|
const r = (/* @__PURE__ */ new Date()).valueOf();
|
|
3884
|
-
let i = 0, o = 0,
|
|
3885
|
-
this.prmsl.active && (
|
|
3910
|
+
let i = 0, o = 0, s = this.empty;
|
|
3911
|
+
this.prmsl.active && (s = this.prmsl.data), (a = this.map) != null && a.getSource(this.source) ? ((e = this.map) == null || e.getSource(this.source).setData(s), o = (/* @__PURE__ */ new Date()).valueOf() - (r + i), console.log("[prmsl] update elapsed: ", o, ", total: ", i += o)) : (this.map.addSource(this.source, { type: "geojson", data: s }), this.map.addLayer(
|
|
3886
3912
|
{
|
|
3887
3913
|
id: this.layer,
|
|
3888
3914
|
type: "line",
|
|
@@ -3963,10 +3989,10 @@ const $t = /* @__PURE__ */ T(Ot, [["render", Ft]]), Vt = {
|
|
|
3963
3989
|
}
|
|
3964
3990
|
}
|
|
3965
3991
|
};
|
|
3966
|
-
function
|
|
3967
|
-
return x(),
|
|
3992
|
+
function Za(a, e, t, r, i, o) {
|
|
3993
|
+
return x(), C("div");
|
|
3968
3994
|
}
|
|
3969
|
-
const
|
|
3995
|
+
const Ha = /* @__PURE__ */ T(Ua, [["render", Za]]), Ga = {
|
|
3970
3996
|
name: "IdmIceberg",
|
|
3971
3997
|
props: {
|
|
3972
3998
|
map: {
|
|
@@ -3983,7 +4009,7 @@ const Zt = /* @__PURE__ */ T(Vt, [["render", Ut]]), Ht = {
|
|
|
3983
4009
|
return {
|
|
3984
4010
|
source: "iceberg-source",
|
|
3985
4011
|
layer: "iceberg-layer",
|
|
3986
|
-
empty:
|
|
4012
|
+
empty: L.featureCollection([])
|
|
3987
4013
|
};
|
|
3988
4014
|
},
|
|
3989
4015
|
watch: {
|
|
@@ -4023,11 +4049,11 @@ const Zt = /* @__PURE__ */ T(Vt, [["render", Ut]]), Ht = {
|
|
|
4023
4049
|
}
|
|
4024
4050
|
}
|
|
4025
4051
|
};
|
|
4026
|
-
function
|
|
4027
|
-
return x(),
|
|
4052
|
+
function Ja(a, e, t, r, i, o) {
|
|
4053
|
+
return x(), C("div");
|
|
4028
4054
|
}
|
|
4029
|
-
const
|
|
4030
|
-
const
|
|
4055
|
+
const Xa = /* @__PURE__ */ T(Ga, [["render", Ja]]);
|
|
4056
|
+
const Ya = {
|
|
4031
4057
|
name: "IdmTropicals",
|
|
4032
4058
|
props: {
|
|
4033
4059
|
map: {
|
|
@@ -4047,7 +4073,7 @@ const Xt = {
|
|
|
4047
4073
|
emits: ["tropical", "tropicalProbability"],
|
|
4048
4074
|
data() {
|
|
4049
4075
|
return {
|
|
4050
|
-
helper:
|
|
4076
|
+
helper: De,
|
|
4051
4077
|
source: "tropicals-source",
|
|
4052
4078
|
clusterSource: "tropicals-cluster-source",
|
|
4053
4079
|
historyLayer: "tropicals-history-layer",
|
|
@@ -4065,9 +4091,9 @@ const Xt = {
|
|
|
4065
4091
|
showTropicals: !1,
|
|
4066
4092
|
activeTropicals: void 0,
|
|
4067
4093
|
activeTropicalsMarker: void 0,
|
|
4068
|
-
empty:
|
|
4094
|
+
empty: L.featureCollection([]),
|
|
4069
4095
|
circleSource: "circle-source",
|
|
4070
|
-
circleSourceData:
|
|
4096
|
+
circleSourceData: L.featureCollection([]),
|
|
4071
4097
|
circleLayer: "tropical-circle-layer"
|
|
4072
4098
|
};
|
|
4073
4099
|
},
|
|
@@ -4114,29 +4140,29 @@ const Xt = {
|
|
|
4114
4140
|
var r, i;
|
|
4115
4141
|
const a = ((i = (r = this.tropicals) == null ? void 0 : r.data) == null ? void 0 : i.features) || [], e = Z().utc().hour(), t = [];
|
|
4116
4142
|
a.forEach((o) => {
|
|
4117
|
-
var
|
|
4118
|
-
(
|
|
4143
|
+
var s, n, c;
|
|
4144
|
+
(s = o.properties) != null && s.name && !t.includes((n = o.properties) == null ? void 0 : n.name) && t.push((c = o.properties) == null ? void 0 : c.name);
|
|
4119
4145
|
}), t.forEach((o) => {
|
|
4120
|
-
var
|
|
4121
|
-
let
|
|
4122
|
-
const c = a.filter((
|
|
4123
|
-
var
|
|
4124
|
-
return ((g = (
|
|
4146
|
+
var d;
|
|
4147
|
+
let s = 0, n;
|
|
4148
|
+
const c = a.filter((h) => {
|
|
4149
|
+
var p, g;
|
|
4150
|
+
return ((g = (p = h.properties) == null ? void 0 : p.category) == null ? void 0 : g.split("-")[0]) === o;
|
|
4125
4151
|
});
|
|
4126
|
-
(
|
|
4127
|
-
var
|
|
4128
|
-
return ((
|
|
4129
|
-
})[0]) == null ||
|
|
4152
|
+
(d = c.filter((h) => {
|
|
4153
|
+
var p, g;
|
|
4154
|
+
return ((p = h.geometry) == null ? void 0 : p.type) === "LineString" && ((g = h.properties) == null ? void 0 : g.type) === "forecast";
|
|
4155
|
+
})[0]) == null || d.properties.model, c.forEach((h, p) => {
|
|
4130
4156
|
var g, u, y, f, m, v;
|
|
4131
|
-
((g =
|
|
4132
|
-
}), c.map((
|
|
4157
|
+
((g = h.geometry) == null ? void 0 : g.type) === "Point" && ((u = h.properties) == null ? void 0 : u.type) === "history" && (s = p, n = n === void 0 ? p : n), ((y = h.geometry) == null ? void 0 : y.type) === "Point" && ((f = h.properties) == null ? void 0 : f.type) === "forecast" && n === void 0 && (n = p), ((m = h.geometry) == null ? void 0 : m.type) === "LineString" && ((v = h.properties) == null || v.type);
|
|
4158
|
+
}), c.map((h, p) => {
|
|
4133
4159
|
var g, u, y, f, m, v, b;
|
|
4134
|
-
if (((g =
|
|
4135
|
-
|
|
4136
|
-
const
|
|
4137
|
-
|
|
4160
|
+
if (((g = h.geometry) == null ? void 0 : g.type) === "LineString" && ((u = h.properties) == null || u.type), ((y = h.geometry) == null ? void 0 : y.type) === "Point" && ((f = h.properties) == null ? void 0 : f.type) === "forecast" && (h.properties.name = o, h.properties.format = Z(h.properties.date).utcOffset(this.timeZone).format(`MMM-DD,HHmm [(utc ${this.computeTimezone})]`)), ((m = h.geometry) == null ? void 0 : m.type) === "Point" && ((v = h.properties) == null ? void 0 : v.type) === "history") {
|
|
4161
|
+
h.properties.format = Z(h.properties.date).utcOffset(this.timeZone).format(`MMM-DD,HHmm [(utc ${this.computeTimezone})]`);
|
|
4162
|
+
const _ = Z((b = h.properties) == null ? void 0 : b.date).utc().format("HHmm") === Z().utc().hour(Math.floor(e / 6) * 6).minute("00").format("HHmm");
|
|
4163
|
+
h.properties.showHistoryLabel = _ || p === s, h.properties.showNameLabel = p === s, h.properties.name = o;
|
|
4138
4164
|
}
|
|
4139
|
-
return
|
|
4165
|
+
return h;
|
|
4140
4166
|
});
|
|
4141
4167
|
}), this.handleInit();
|
|
4142
4168
|
},
|
|
@@ -4171,7 +4197,7 @@ const Xt = {
|
|
|
4171
4197
|
));
|
|
4172
4198
|
},
|
|
4173
4199
|
handleRender() {
|
|
4174
|
-
var a, e, t, r, i, o,
|
|
4200
|
+
var a, e, t, r, i, o, s, n, c, d;
|
|
4175
4201
|
if (!this.map)
|
|
4176
4202
|
setTimeout(() => {
|
|
4177
4203
|
this.handleRender();
|
|
@@ -4277,9 +4303,9 @@ const Xt = {
|
|
|
4277
4303
|
],
|
|
4278
4304
|
"text-halo-width": 4
|
|
4279
4305
|
}
|
|
4280
|
-
}), y = (/* @__PURE__ */ new Date()).valueOf() - (g + u), console.log("[tropical] add elapsed: ", y, ", total: ", u += y)), (o = this.map) != null && o.getSource(this.clusterSource) ? ((
|
|
4306
|
+
}), y = (/* @__PURE__ */ new Date()).valueOf() - (g + u), console.log("[tropical] add elapsed: ", y, ", total: ", u += y)), (o = this.map) != null && o.getSource(this.clusterSource) ? ((n = this.map) == null || n.getSource(this.clusterSource).setData((s = this.tropicals) != null && s.active ? this.tropicals.data : this.empty), y = (/* @__PURE__ */ new Date()).valueOf() - (g + u), console.log("[tropical] update elapsed: ", y, ", total: ", u += y)) : (this.map.addSource(this.clusterSource, {
|
|
4281
4307
|
type: "geojson",
|
|
4282
|
-
data: (c = this.tropicals) != null && c.active ? (
|
|
4308
|
+
data: (c = this.tropicals) != null && c.active ? (d = this.tropicals) == null ? void 0 : d.data : this.empty
|
|
4283
4309
|
// cluster: true,
|
|
4284
4310
|
// clusterRadius: 10, // 聚合半径
|
|
4285
4311
|
}), this.map.addLayer({
|
|
@@ -4397,10 +4423,10 @@ const Xt = {
|
|
|
4397
4423
|
}), y = (/* @__PURE__ */ new Date()).valueOf() - (g + u), console.log("[tropical] add elapsed: ", y, ", total: ", u += y));
|
|
4398
4424
|
}
|
|
4399
4425
|
this.handleDrawCircle();
|
|
4400
|
-
const
|
|
4401
|
-
this.interpolateData = JSON.parse(JSON.stringify(
|
|
4402
|
-
const
|
|
4403
|
-
console.log(
|
|
4426
|
+
const h = Qe.interpolate(this.tropicals, 1);
|
|
4427
|
+
this.interpolateData = JSON.parse(JSON.stringify(h));
|
|
4428
|
+
const p = this.interpolateData.filter((g) => g.properties.name === "kristy" && g.properties.model === "ecmwf");
|
|
4429
|
+
console.log(p), this.handleDateChange();
|
|
4404
4430
|
}
|
|
4405
4431
|
},
|
|
4406
4432
|
handleClear() {
|
|
@@ -4408,14 +4434,14 @@ const Xt = {
|
|
|
4408
4434
|
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), (a = this.interpolateMarkers) == null || a.forEach((e) => e == null ? void 0 : e.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));
|
|
4409
4435
|
},
|
|
4410
4436
|
handleDateChange() {
|
|
4411
|
-
var a, e, t, r, i, o,
|
|
4412
|
-
if ((a = this.interpolateMarkers) == null || a.forEach((
|
|
4413
|
-
const
|
|
4414
|
-
|
|
4415
|
-
|
|
4416
|
-
}), (t = this.map) != null && t.getSource(this.interpolateSource) ? (r = this.map) == null || r.getSource(this.interpolateSource).setData(
|
|
4437
|
+
var a, e, t, r, i, o, s, n, c, d, h, p, g, u, y, f, m, v, b, _, z, w, A, M, $, W, O, J, de, pe, me, ue, ye, fe, ge, ie;
|
|
4438
|
+
if ((a = this.interpolateMarkers) == null || a.forEach((X) => X == null ? void 0 : X.remove()), this.circleSourceData.features = [], (e = this.interpolateData) != null && e.length && this.tropicals.active) {
|
|
4439
|
+
const X = Z(this.date).utc().set({ minute: 0, second: 0, millisecond: 0 }), Y = this.interpolateData.filter((I) => I.properties.date === X.format() && !I.properties.disabled), be = this.handleComputePolygons(Y), q = L.featureCollection([...Y]);
|
|
4440
|
+
be.forEach((I) => {
|
|
4441
|
+
q.features.push(I);
|
|
4442
|
+
}), (t = this.map) != null && t.getSource(this.interpolateSource) ? (r = this.map) == null || r.getSource(this.interpolateSource).setData(q) : ((i = this.map) == null || i.addSource(this.interpolateSource, {
|
|
4417
4443
|
type: "geojson",
|
|
4418
|
-
data:
|
|
4444
|
+
data: q
|
|
4419
4445
|
}), (o = this.map) == null || o.addLayer({
|
|
4420
4446
|
id: this.interpolateLineLayer,
|
|
4421
4447
|
type: "line",
|
|
@@ -4427,17 +4453,17 @@ const Xt = {
|
|
|
4427
4453
|
"line-width": 1
|
|
4428
4454
|
}
|
|
4429
4455
|
})), this.interpolateMarkers = [];
|
|
4430
|
-
for (const
|
|
4431
|
-
if (!
|
|
4432
|
-
let
|
|
4433
|
-
((
|
|
4434
|
-
const
|
|
4456
|
+
for (const I of Y)
|
|
4457
|
+
if (!I.properties.disabled) {
|
|
4458
|
+
let F = "#f44336";
|
|
4459
|
+
((n = (s = I.properties) == null ? void 0 : s.wind) == null ? void 0 : n.spd) < 17.2 || !((d = (c = I.properties) == null ? void 0 : c.wind) != null && d.spd) ? F = "#03f869" : ((p = (h = I.properties) == null ? void 0 : h.wind) == null ? void 0 : p.spd) >= 17.2 && ((u = (g = I.properties) == null ? void 0 : g.wind) == null ? void 0 : u.spd) < 24.5 ? F = "#f2f202" : ((f = (y = I.properties) == null ? void 0 : y.wind) == null ? void 0 : f.spd) >= 24.5 && ((v = (m = I.properties) == null ? void 0 : m.wind) == null ? void 0 : v.spd) < 32.7 ? F = "#ff9100" : ((_ = (b = I.properties) == null ? void 0 : b.wind) == null ? void 0 : _.spd) >= 32.7 && ((w = (z = I.properties) == null ? void 0 : z.wind) == null ? void 0 : w.spd) < 41.5 ? F = "#f44336" : ((M = (A = I.properties) == null ? void 0 : A.wind) == null ? void 0 : M.spd) >= 41.5 && ((W = ($ = I.properties) == null ? void 0 : $.wind) == null ? void 0 : W.spd) < 51 ? F = "#f903d0" : ((J = (O = I.properties) == null ? void 0 : O.wind) == null ? void 0 : J.spd) >= 51 ? F = "#8702f9" : F = "#f44336";
|
|
4460
|
+
const ve = `<svg t="1719918955501"
|
|
4435
4461
|
class="icon" viewBox="0 0 1024 1024" xmlns="http://www.w3.org/2000/svg" p-id="18382"
|
|
4436
4462
|
xmlns:xlink="http://www.w3.org/1999/xlink" width="200" height="200">
|
|
4437
4463
|
<path
|
|
4438
4464
|
d="M515.17000001 169.34666667c41-77.73 95.33-96 95.33-96-240 0-434.5 194.53-434.5 434.5 0 186.47 150.78 337.7 337.06 338.48C472.11000001 923.66666667 418.00000001 941.83666667 418.00000001 941.83666667c240 0 434.5-194.54 434.5-434.5l0.5 0.5C853.00000001 321.10666667 701.81000001 169.66666667 515.17000001 169.34666667z m-0.67 468A129.5 129.5 0 1 1 644.00000001 507.83666667a129.5 129.5 0 0 1-129.5 129.5z"
|
|
4439
|
-
fill="${
|
|
4440
|
-
<path d="M514.50000001 507.83666667m-129.5 0a129.5 129.5 0 1 0 259 0 129.5 129.5 0 1 0-259 0Z" fill="${
|
|
4465
|
+
fill="${F}" p-id="18383"></path>
|
|
4466
|
+
<path d="M514.50000001 507.83666667m-129.5 0a129.5 129.5 0 1 0 259 0 129.5 129.5 0 1 0-259 0Z" fill="${F}"
|
|
4441
4467
|
p-id="18384"></path>
|
|
4442
4468
|
<path
|
|
4443
4469
|
d="M517.16666667 654.67c-80.23 0-145.5-65.27-145.5-145.5s65.27-145.5 145.5-145.5S662.66666667 428.94 662.66666667 509.17s-65.27 145.5-145.5 145.5z m0-259A113.5 113.5 0 1 0 630.66666667 509.17a113.63 113.63 0 0 0-113.5-113.5z"
|
|
@@ -4445,27 +4471,27 @@ const Xt = {
|
|
|
4445
4471
|
<path
|
|
4446
4472
|
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"
|
|
4447
4473
|
fill="#ffffff" p-id="18386"></path>
|
|
4448
|
-
</svg>`,
|
|
4449
|
-
|
|
4450
|
-
const
|
|
4451
|
-
if (this.interpolateMarkers.push(
|
|
4452
|
-
const
|
|
4453
|
-
(
|
|
4454
|
-
|
|
4455
|
-
), (
|
|
4456
|
-
|
|
4457
|
-
), (
|
|
4458
|
-
|
|
4474
|
+
</svg>`, Q = document.createElement("div");
|
|
4475
|
+
Q.className = "hurricane-hourly-marker", Q.innerHTML = `<div class="${I.geometry.coordinates[1] >= 0 ? "center north" : "center south"}">${ve}</div>`;
|
|
4476
|
+
const we = new te.Marker(Q).setLngLat(I.geometry.coordinates).addTo(this.map);
|
|
4477
|
+
if (this.interpolateMarkers.push(we), (de = I.properties) != null && de.showCircle) {
|
|
4478
|
+
const re = { radius: 100, coordinates: I.geometry.coordinates }, oe = { radius: 200, coordinates: I.geometry.coordinates }, se = { radius: 500, coordinates: I.geometry.coordinates };
|
|
4479
|
+
(pe = this.circleSourceData) == null || pe.features.push(
|
|
4480
|
+
L.circle(re.coordinates, re.radius, { steps: 100, units: "kilometers", properties: { type: "tropicalCircle" } })
|
|
4481
|
+
), (me = this.circleSourceData) == null || me.features.push(
|
|
4482
|
+
L.circle(oe.coordinates, oe.radius, { steps: 100, units: "kilometers", properties: { type: "tropicalCircle" } })
|
|
4483
|
+
), (ue = this.circleSourceData) == null || ue.features.push(
|
|
4484
|
+
L.circle(se.coordinates, se.radius, { steps: 100, units: "kilometers", properties: { type: "tropicalCircle" } })
|
|
4459
4485
|
);
|
|
4460
4486
|
}
|
|
4461
|
-
(
|
|
4487
|
+
(fe = (ye = this.map) == null ? void 0 : ye.getSource(this.circleSource)) == null || fe.setData(this.circleSourceData);
|
|
4462
4488
|
}
|
|
4463
4489
|
} else
|
|
4464
|
-
(
|
|
4490
|
+
(ge = this.map) != null && ge.getSource(this.interpolateSource) && ((ie = this.map) == null || ie.getSource(this.interpolateSource).setData(this.empty));
|
|
4465
4491
|
},
|
|
4466
4492
|
handleClick(a) {
|
|
4467
|
-
var o,
|
|
4468
|
-
const e = a.features[0], t = (
|
|
4493
|
+
var o, s, n, c, d, h, p, g;
|
|
4494
|
+
const e = a.features[0], t = (s = (o = this.tropicals) == null ? void 0 : o.data) == null ? void 0 : s.features.filter(
|
|
4469
4495
|
(u) => {
|
|
4470
4496
|
var y;
|
|
4471
4497
|
return u.geometry.type === "LineString" && u.properties.type === "forecast" && u.properties.name === ((y = e == null ? void 0 : e.properties) == null ? void 0 : y.name);
|
|
@@ -4475,30 +4501,30 @@ const Xt = {
|
|
|
4475
4501
|
var f, m, v, b;
|
|
4476
4502
|
return ((f = u.properties) == null ? void 0 : f.model) === "cma" ? -1 : ((m = u.properties) == null ? void 0 : m.model) === "jma" ? ((v = y.properties) == null ? void 0 : v.model) === "cma" ? 1 : -1 : u.properties.model === "ecmwf" ? ["jma", "cma"].includes((b = y.properties) == null ? void 0 : b.model) ? 1 : -1 : 0;
|
|
4477
4503
|
});
|
|
4478
|
-
const r = (c = (
|
|
4504
|
+
const r = (c = (n = this.tropicals) == null ? void 0 : n.data) == null ? void 0 : c.features.filter(
|
|
4479
4505
|
(u) => {
|
|
4480
4506
|
var y;
|
|
4481
4507
|
return u.geometry.type === "LineString" && u.properties.type === "history" && u.properties.name === ((y = e == null ? void 0 : e.properties) == null ? void 0 : y.name);
|
|
4482
4508
|
}
|
|
4483
4509
|
);
|
|
4484
4510
|
this.activeTropicals = {
|
|
4485
|
-
name: (
|
|
4511
|
+
name: (d = e == null ? void 0 : e.properties) == null ? void 0 : d.name,
|
|
4486
4512
|
forecasts: t.map((u) => u.properties),
|
|
4487
|
-
history: (
|
|
4488
|
-
showCircle: (g = (
|
|
4513
|
+
history: (h = r[0]) == null ? void 0 : h.properties,
|
|
4514
|
+
showCircle: (g = (p = t[0]) == null ? void 0 : p.properties) == null ? void 0 : g.showCircle
|
|
4489
4515
|
}, this.showTropicals = !0;
|
|
4490
4516
|
const i = document.getElementById("active-tropical");
|
|
4491
|
-
this.activeTropicalsMarker ? this.activeTropicalsMarker.setLngLat([a.lngLat.lng, a.lngLat.lat]) : this.activeTropicalsMarker = new
|
|
4517
|
+
this.activeTropicalsMarker ? this.activeTropicalsMarker.setLngLat([a.lngLat.lng, a.lngLat.lat]) : this.activeTropicalsMarker = new te.Marker(i).setLngLat([a.lngLat.lng, a.lngLat.lat]).setOffset([220, 0]).addTo(this.map);
|
|
4492
4518
|
},
|
|
4493
4519
|
handleForecastToggle(a) {
|
|
4494
|
-
var r, i, o,
|
|
4520
|
+
var r, i, o, s, n, c;
|
|
4495
4521
|
a.disabled = !a.disabled;
|
|
4496
4522
|
const e = `${a.name}-${a.model}`, t = (i = (r = this.map) == null ? void 0 : r.getSource(this.source)._data) == null ? void 0 : i.features;
|
|
4497
|
-
t.forEach((
|
|
4498
|
-
|
|
4499
|
-
}), this.interpolateData.forEach((
|
|
4500
|
-
|
|
4501
|
-
}), (
|
|
4523
|
+
t.forEach((d) => {
|
|
4524
|
+
d.properties.category === e && (d.properties.disabled = a.disabled);
|
|
4525
|
+
}), this.interpolateData.forEach((d) => {
|
|
4526
|
+
d.properties.category === e && (d.properties.disabled = a.disabled);
|
|
4527
|
+
}), (s = (o = this.map) == null ? void 0 : o.getSource(this.source)) == null || s.setData(L.featureCollection(t)), (c = (n = this.map) == null ? void 0 : n.getSource(this.clusterSource)) == null || c.setData(L.featureCollection(t)), this.handleDateChange();
|
|
4502
4528
|
},
|
|
4503
4529
|
handleStrikeProbability(a) {
|
|
4504
4530
|
this.$emit("tropicalProbability", a);
|
|
@@ -4537,110 +4563,110 @@ const Xt = {
|
|
|
4537
4563
|
nw: r.r7nw >= 0 ? r.r7nw : void 0
|
|
4538
4564
|
}, o = this.handleComputeArc(t.geometry.coordinates, i, { ...t.properties, level: 7 });
|
|
4539
4565
|
e.push(o);
|
|
4540
|
-
const
|
|
4566
|
+
const s = {
|
|
4541
4567
|
ne: r.r10ne >= 0 ? r.r10ne : void 0,
|
|
4542
4568
|
se: r.r10se >= 0 ? r.r10se : void 0,
|
|
4543
4569
|
sw: r.r10sw >= 0 ? r.r10sw : void 0,
|
|
4544
4570
|
nw: r.r10nw >= 0 ? r.r10nw : void 0
|
|
4545
|
-
},
|
|
4546
|
-
e.push(
|
|
4571
|
+
}, n = this.handleComputeArc(t.geometry.coordinates, s, { ...t.properties, level: 10 });
|
|
4572
|
+
e.push(n);
|
|
4547
4573
|
}
|
|
4548
4574
|
return e;
|
|
4549
4575
|
},
|
|
4550
4576
|
handleComputeArc(a, e, t) {
|
|
4551
4577
|
var o;
|
|
4552
4578
|
const r = [];
|
|
4553
|
-
for (const
|
|
4554
|
-
const
|
|
4579
|
+
for (const s in e) {
|
|
4580
|
+
const n = e[s] ?? 0;
|
|
4555
4581
|
let c;
|
|
4556
|
-
switch (
|
|
4582
|
+
switch (s) {
|
|
4557
4583
|
case "ne":
|
|
4558
|
-
c =
|
|
4584
|
+
c = L.lineArc(a, n * 1.852, 0, 90, { steps: n > 0 ? 64 : 1 });
|
|
4559
4585
|
break;
|
|
4560
4586
|
case "se":
|
|
4561
|
-
c =
|
|
4587
|
+
c = L.lineArc(a, n * 1.852, 90, 180, { steps: n > 0 ? 64 : 1 });
|
|
4562
4588
|
break;
|
|
4563
4589
|
case "sw":
|
|
4564
|
-
c =
|
|
4590
|
+
c = L.lineArc(a, n * 1.852, 180, 270, { steps: n > 0 ? 64 : 1 });
|
|
4565
4591
|
break;
|
|
4566
4592
|
case "nw":
|
|
4567
|
-
c =
|
|
4593
|
+
c = L.lineArc(a, n * 1.852, 270, 360, { steps: n > 0 ? 64 : 1 });
|
|
4568
4594
|
break;
|
|
4569
4595
|
}
|
|
4570
4596
|
r.push(...(o = c == null ? void 0 : c.geometry) == null ? void 0 : o.coordinates);
|
|
4571
4597
|
}
|
|
4572
|
-
const i =
|
|
4573
|
-
return
|
|
4598
|
+
const i = L.lineString(r);
|
|
4599
|
+
return L.lineToPolygon(i, { properties: t });
|
|
4574
4600
|
}
|
|
4575
4601
|
}
|
|
4576
|
-
},
|
|
4602
|
+
}, Ue = (a) => (H("data-v-35ea0576"), a = a(), G(), a), qa = {
|
|
4577
4603
|
id: "active-tropical",
|
|
4578
4604
|
class: "active-tropical"
|
|
4579
|
-
},
|
|
4605
|
+
}, Qa = { class: "header-box" }, Ka = { class: "main" }, ei = { key: 0 }, ti = { class: "sub" }, ai = {
|
|
4580
4606
|
id: "meteoBox",
|
|
4581
4607
|
class: "main-box"
|
|
4582
|
-
},
|
|
4608
|
+
}, ii = { class: "content" }, ri = { class: "row" }, oi = {
|
|
4583
4609
|
class: "col col-left",
|
|
4584
4610
|
style: { "justify-content": "flex-start" }
|
|
4585
|
-
},
|
|
4611
|
+
}, si = /* @__PURE__ */ Ue(() => /* @__PURE__ */ l("label", null, "Wind speed : ", -1)), ni = {
|
|
4586
4612
|
class: "col col-right",
|
|
4587
4613
|
style: { "justify-content": "flex-start" }
|
|
4588
|
-
},
|
|
4614
|
+
}, li = /* @__PURE__ */ Ue(() => /* @__PURE__ */ l("label", null, "Pressure : ", -1)), ci = { class: "row" }, hi = {
|
|
4589
4615
|
class: "col col-24",
|
|
4590
4616
|
style: { "justify-content": "flex-start" }
|
|
4591
|
-
},
|
|
4592
|
-
function
|
|
4593
|
-
var
|
|
4594
|
-
return
|
|
4595
|
-
l("div",
|
|
4617
|
+
}, di = /* @__PURE__ */ Ue(() => /* @__PURE__ */ l("label", { style: { width: "max-content" } }, "Forecast Models : ", -1)), pi = { class: "forecast-models" }, mi = ["onClick"], ui = /* @__PURE__ */ rt('<div class="row" style="padding:0;height:1px;margin:10px 0;background:var(--idm-black-1);" data-v-35ea0576></div><div class="row" style="padding:2px 10px;" data-v-35ea0576><div class="legend" data-v-35ea0576><div class="icon td" data-v-35ea0576></div><div class="label" data-v-35ea0576>TD</div></div><div class="legend" data-v-35ea0576><div class="icon ts" data-v-35ea0576></div><div class="label" data-v-35ea0576>TS</div></div><div class="legend" data-v-35ea0576><div class="icon sts" data-v-35ea0576></div><div class="label" data-v-35ea0576>STS</div></div><div class="legend" data-v-35ea0576><div class="icon ty" data-v-35ea0576></div><div class="label" data-v-35ea0576>TY</div></div><div class="legend" data-v-35ea0576><div class="icon sty" data-v-35ea0576></div><div class="label" data-v-35ea0576>STY</div></div><div class="legend" data-v-35ea0576><div class="icon supper-ty" data-v-35ea0576></div><div class="label" data-v-35ea0576>Super TY</div></div></div><div class="row" style="padding:2px 10px;" data-v-35ea0576><div class="legend" data-v-35ea0576><div class="icon history" data-v-35ea0576></div><div class="label" data-v-35ea0576>History</div></div><div class="legend" data-v-35ea0576><div class="icon r7" data-v-35ea0576></div><div class="label" data-v-35ea0576>35kts Radii</div></div><div class="legend" data-v-35ea0576><div class="icon r10" data-v-35ea0576></div><div class="label" data-v-35ea0576>50kts Radii</div></div></div>', 3), yi = { class: "more" };
|
|
4618
|
+
function fi(a, e, t, r, i, o) {
|
|
4619
|
+
var s, n, c, d, h, p, g, u, y, f, m, v, b, _, z;
|
|
4620
|
+
return je((x(), C("div", qa, [
|
|
4621
|
+
l("div", Qa, [
|
|
4596
4622
|
l("div", {
|
|
4597
4623
|
class: "iconfont close-btn",
|
|
4598
4624
|
onClick: e[0] || (e[0] = (w) => i.showTropicals = !1)
|
|
4599
4625
|
}, ""),
|
|
4600
|
-
l("div",
|
|
4601
|
-
(
|
|
4602
|
-
|
|
4626
|
+
l("div", Ka, [
|
|
4627
|
+
(n = (s = i.activeTropicals) == null ? void 0 : s.history) != null && n.level ? (x(), C("span", ei, S((d = (c = i.activeTropicals) == null ? void 0 : c.history) == null ? void 0 : d.level) + " , ", 1)) : B("", !0),
|
|
4628
|
+
Fe(S((h = i.activeTropicals) == null ? void 0 : h.name), 1)
|
|
4603
4629
|
]),
|
|
4604
|
-
l("div",
|
|
4630
|
+
l("div", ti, " Last update: " + S(o.computeTime(((g = (p = i.activeTropicals) == null ? void 0 : p.history) == null ? void 0 : g.updated) || ((f = (y = (u = i.activeTropicals) == null ? void 0 : u.forecasts) == null ? void 0 : y.filter((w) => !w.disabled)[0]) == null ? void 0 : f.date))), 1)
|
|
4605
4631
|
]),
|
|
4606
|
-
l("div",
|
|
4607
|
-
l("div",
|
|
4608
|
-
l("div",
|
|
4609
|
-
l("div",
|
|
4610
|
-
|
|
4611
|
-
l("span", null,
|
|
4632
|
+
l("div", ai, [
|
|
4633
|
+
l("div", ii, [
|
|
4634
|
+
l("div", ri, [
|
|
4635
|
+
l("div", oi, [
|
|
4636
|
+
si,
|
|
4637
|
+
l("span", null, S(((v = (m = i.activeTropicals) == null ? void 0 : m.history) == null ? void 0 : v.kts) || "-") + "[kts]", 1)
|
|
4612
4638
|
]),
|
|
4613
|
-
l("div",
|
|
4614
|
-
|
|
4615
|
-
l("span", null,
|
|
4639
|
+
l("div", ni, [
|
|
4640
|
+
li,
|
|
4641
|
+
l("span", null, S(((_ = (b = i.activeTropicals) == null ? void 0 : b.history) == null ? void 0 : _.pressure) || "-") + "[hPa]", 1)
|
|
4616
4642
|
])
|
|
4617
4643
|
]),
|
|
4618
|
-
l("div",
|
|
4619
|
-
l("div",
|
|
4620
|
-
|
|
4621
|
-
l("div",
|
|
4622
|
-
(x(!0),
|
|
4623
|
-
var M,
|
|
4624
|
-
return x(),
|
|
4644
|
+
l("div", ci, [
|
|
4645
|
+
l("div", hi, [
|
|
4646
|
+
di,
|
|
4647
|
+
l("div", pi, [
|
|
4648
|
+
(x(!0), C(Ae, null, $e((z = i.activeTropicals) == null ? void 0 : z.forecasts, (w, A) => {
|
|
4649
|
+
var M, $, W, O;
|
|
4650
|
+
return x(), C("div", {
|
|
4625
4651
|
key: A,
|
|
4626
4652
|
class: j([
|
|
4627
4653
|
"model",
|
|
4628
4654
|
w.disabled ? "" : "active",
|
|
4629
|
-
A > 0 && A < ((
|
|
4655
|
+
A > 0 && A < (($ = (M = i.activeTropicals) == null ? void 0 : M.forecasts) == null ? void 0 : $.length) - 1 && ((O = (W = i.activeTropicals) == null ? void 0 : W.forecasts) == null ? void 0 : O.length) > 2 ? "center-child" : ""
|
|
4630
4656
|
]),
|
|
4631
|
-
onClick: (
|
|
4657
|
+
onClick: (J) => o.handleForecastToggle(w)
|
|
4632
4658
|
}, [
|
|
4633
4659
|
l("span", {
|
|
4634
4660
|
class: j(w.model)
|
|
4635
|
-
},
|
|
4636
|
-
], 10,
|
|
4661
|
+
}, S(w.model), 3)
|
|
4662
|
+
], 10, mi);
|
|
4637
4663
|
}), 128))
|
|
4638
4664
|
])
|
|
4639
4665
|
])
|
|
4640
4666
|
]),
|
|
4641
|
-
|
|
4667
|
+
ui
|
|
4642
4668
|
]),
|
|
4643
|
-
l("div",
|
|
4669
|
+
l("div", yi, [
|
|
4644
4670
|
l("div", {
|
|
4645
4671
|
class: "button",
|
|
4646
4672
|
onClick: e[1] || (e[1] = (w) => o.handleStrikeProbability(i.activeTropicals))
|
|
@@ -4648,11 +4674,11 @@ function pa(a, e, t, r, i, o) {
|
|
|
4648
4674
|
])
|
|
4649
4675
|
])
|
|
4650
4676
|
], 512)), [
|
|
4651
|
-
[
|
|
4677
|
+
[Ne, i.showTropicals && !a.$attrs.hideTropicalsLegend]
|
|
4652
4678
|
]);
|
|
4653
4679
|
}
|
|
4654
|
-
const
|
|
4655
|
-
const
|
|
4680
|
+
const Ke = /* @__PURE__ */ T(Ya, [["render", fi], ["__scopeId", "data-v-35ea0576"]]);
|
|
4681
|
+
const gi = {
|
|
4656
4682
|
name: "IdmPrecip3h",
|
|
4657
4683
|
props: {
|
|
4658
4684
|
factor: {
|
|
@@ -4680,7 +4706,7 @@ const da = {
|
|
|
4680
4706
|
texture: void 0,
|
|
4681
4707
|
rampColor: void 0,
|
|
4682
4708
|
aPositionBuffer: void 0,
|
|
4683
|
-
webgl: new
|
|
4709
|
+
webgl: new Le(),
|
|
4684
4710
|
etime: void 0,
|
|
4685
4711
|
right: 10
|
|
4686
4712
|
};
|
|
@@ -4740,7 +4766,7 @@ const da = {
|
|
|
4740
4766
|
[1, "rgba(197,5,58,0.8)"]
|
|
4741
4767
|
];
|
|
4742
4768
|
this.rampColor = this.webgl.setup(this.context, a);
|
|
4743
|
-
const { program: e, aPositionBuffer: t } = this.webgl.bind(this.context,
|
|
4769
|
+
const { program: e, aPositionBuffer: t } = this.webgl.bind(this.context, N.vertexSchema, N.fragmentSchema);
|
|
4744
4770
|
this.program = e, this.aPositionBuffer = t;
|
|
4745
4771
|
}
|
|
4746
4772
|
},
|
|
@@ -4753,27 +4779,27 @@ const da = {
|
|
|
4753
4779
|
this.webgl.draw(this.viewport, this.context, this.program, this.texture, this.rampColor.texture, this.aPositionBuffer), this.viewport.toggle(!0);
|
|
4754
4780
|
}
|
|
4755
4781
|
}
|
|
4756
|
-
},
|
|
4757
|
-
|
|
4758
|
-
|
|
4759
|
-
|
|
4782
|
+
}, ce = (a) => (H("data-v-9708a7a3"), a = a(), G(), a), bi = { key: 0 }, vi = /* @__PURE__ */ ce(() => /* @__PURE__ */ l("span", null, "mm", -1)), wi = /* @__PURE__ */ ce(() => /* @__PURE__ */ l("span", null, "1.5", -1)), _i = /* @__PURE__ */ ce(() => /* @__PURE__ */ l("span", null, "2", -1)), Li = /* @__PURE__ */ ce(() => /* @__PURE__ */ l("span", null, "3", -1)), xi = /* @__PURE__ */ ce(() => /* @__PURE__ */ l("span", null, "7", -1)), Ci = /* @__PURE__ */ ce(() => /* @__PURE__ */ l("span", null, "10", -1)), ki = /* @__PURE__ */ ce(() => /* @__PURE__ */ l("span", null, "20", -1)), Si = /* @__PURE__ */ ce(() => /* @__PURE__ */ l("span", null, "30", -1)), zi = [
|
|
4783
|
+
vi,
|
|
4784
|
+
wi,
|
|
4785
|
+
_i,
|
|
4786
|
+
Li,
|
|
4787
|
+
xi,
|
|
4788
|
+
Ci,
|
|
4789
|
+
ki,
|
|
4790
|
+
Si
|
|
4791
|
+
];
|
|
4792
|
+
function Pi(a, e, t, r, i, o) {
|
|
4793
|
+
var s;
|
|
4794
|
+
return (s = t.factor) != null && s.active ? (x(), C("div", bi, [
|
|
4760
4795
|
l("div", {
|
|
4761
4796
|
class: "legend-bars flex-center",
|
|
4762
|
-
style:
|
|
4763
|
-
},
|
|
4764
|
-
l("span", null, "mm", -1),
|
|
4765
|
-
l("span", null, "1.5", -1),
|
|
4766
|
-
l("span", null, "2", -1),
|
|
4767
|
-
l("span", null, "3", -1),
|
|
4768
|
-
l("span", null, "7", -1),
|
|
4769
|
-
l("span", null, "10", -1),
|
|
4770
|
-
l("span", null, "20", -1),
|
|
4771
|
-
l("span", null, "30", -1)
|
|
4772
|
-
]), 4)
|
|
4797
|
+
style: U([{ position: "absolute" }, { right: i.right + "px", bottom: t.bottom }])
|
|
4798
|
+
}, zi, 4)
|
|
4773
4799
|
])) : B("", !0);
|
|
4774
4800
|
}
|
|
4775
|
-
const
|
|
4776
|
-
const
|
|
4801
|
+
const Ti = /* @__PURE__ */ T(gi, [["render", Pi], ["__scopeId", "data-v-9708a7a3"]]);
|
|
4802
|
+
const Ii = {
|
|
4777
4803
|
name: "IdmVisibility",
|
|
4778
4804
|
props: {
|
|
4779
4805
|
factor: {
|
|
@@ -4801,7 +4827,7 @@ const fa = {
|
|
|
4801
4827
|
texture: void 0,
|
|
4802
4828
|
rampColor: void 0,
|
|
4803
4829
|
aPositionBuffer: void 0,
|
|
4804
|
-
webgl: new
|
|
4830
|
+
webgl: new Le(),
|
|
4805
4831
|
etime: void 0
|
|
4806
4832
|
};
|
|
4807
4833
|
},
|
|
@@ -4854,7 +4880,7 @@ const fa = {
|
|
|
4854
4880
|
[1, "rgba(144,144,144,0)"]
|
|
4855
4881
|
];
|
|
4856
4882
|
this.rampColor = this.webgl.setup(this.context, a);
|
|
4857
|
-
const { program: e, aPositionBuffer: t } = this.webgl.bind(this.context,
|
|
4883
|
+
const { program: e, aPositionBuffer: t } = this.webgl.bind(this.context, N.vertexSchema, N.fragmentSchema);
|
|
4858
4884
|
this.program = e, this.aPositionBuffer = t;
|
|
4859
4885
|
}
|
|
4860
4886
|
},
|
|
@@ -4867,25 +4893,25 @@ const fa = {
|
|
|
4867
4893
|
this.webgl.draw(this.viewport, this.context, this.program, this.texture, this.rampColor.texture, this.aPositionBuffer), this.viewport.toggle(!0);
|
|
4868
4894
|
}
|
|
4869
4895
|
}
|
|
4870
|
-
},
|
|
4871
|
-
|
|
4872
|
-
|
|
4873
|
-
|
|
4896
|
+
}, ke = (a) => (H("data-v-f7b2fb08"), a = a(), G(), a), Ei = { key: 0 }, Ri = /* @__PURE__ */ ke(() => /* @__PURE__ */ l("span", null, "nm", -1)), Ai = /* @__PURE__ */ ke(() => /* @__PURE__ */ l("span", null, "0", -1)), Di = /* @__PURE__ */ ke(() => /* @__PURE__ */ l("span", null, "0.5", -1)), Mi = /* @__PURE__ */ ke(() => /* @__PURE__ */ l("span", null, "1.5", -1)), $i = /* @__PURE__ */ ke(() => /* @__PURE__ */ l("span", null, "3", -1)), ji = /* @__PURE__ */ ke(() => /* @__PURE__ */ l("span", null, "9", -1)), Ni = [
|
|
4897
|
+
Ri,
|
|
4898
|
+
Ai,
|
|
4899
|
+
Di,
|
|
4900
|
+
Mi,
|
|
4901
|
+
$i,
|
|
4902
|
+
ji
|
|
4903
|
+
];
|
|
4904
|
+
function Bi(a, e, t, r, i, o) {
|
|
4905
|
+
var s;
|
|
4906
|
+
return (s = t.factor) != null && s.active ? (x(), C("div", Ei, [
|
|
4874
4907
|
l("div", {
|
|
4875
4908
|
class: "legend-bars flex-center",
|
|
4876
|
-
style:
|
|
4877
|
-
},
|
|
4878
|
-
l("span", null, "nm", -1),
|
|
4879
|
-
l("span", null, "0", -1),
|
|
4880
|
-
l("span", null, "0.5", -1),
|
|
4881
|
-
l("span", null, "1.5", -1),
|
|
4882
|
-
l("span", null, "3", -1),
|
|
4883
|
-
l("span", null, "9", -1)
|
|
4884
|
-
]), 4)
|
|
4909
|
+
style: U([{ position: "absolute" }, { right: a.right + "px", bottom: t.bottom }])
|
|
4910
|
+
}, Ni, 4)
|
|
4885
4911
|
])) : B("", !0);
|
|
4886
4912
|
}
|
|
4887
|
-
const
|
|
4888
|
-
const
|
|
4913
|
+
const Wi = /* @__PURE__ */ T(Ii, [["render", Bi], ["__scopeId", "data-v-f7b2fb08"]]);
|
|
4914
|
+
const Oi = {
|
|
4889
4915
|
name: "IdmWaterTemp",
|
|
4890
4916
|
props: {
|
|
4891
4917
|
factor: {
|
|
@@ -4913,7 +4939,7 @@ const wa = {
|
|
|
4913
4939
|
texture: void 0,
|
|
4914
4940
|
rampColor: void 0,
|
|
4915
4941
|
aPositionBuffer: void 0,
|
|
4916
|
-
webgl: new
|
|
4942
|
+
webgl: new Le(),
|
|
4917
4943
|
etime: void 0,
|
|
4918
4944
|
right: 10
|
|
4919
4945
|
};
|
|
@@ -4974,7 +5000,7 @@ const wa = {
|
|
|
4974
5000
|
//
|
|
4975
5001
|
];
|
|
4976
5002
|
this.rampColor = this.webgl.setup(this.context, a);
|
|
4977
|
-
const { program: e, aPositionBuffer: t } = this.webgl.bind(this.context,
|
|
5003
|
+
const { program: e, aPositionBuffer: t } = this.webgl.bind(this.context, N.vertexSchema, N.fragmentSchema);
|
|
4978
5004
|
this.program = e, this.aPositionBuffer = t;
|
|
4979
5005
|
}
|
|
4980
5006
|
},
|
|
@@ -4987,25 +5013,25 @@ const wa = {
|
|
|
4987
5013
|
this.webgl.draw(this.viewport, this.context, this.program, this.texture, this.rampColor.texture, this.aPositionBuffer), this.viewport.toggle(!0);
|
|
4988
5014
|
}
|
|
4989
5015
|
}
|
|
4990
|
-
},
|
|
4991
|
-
|
|
4992
|
-
|
|
4993
|
-
|
|
5016
|
+
}, Se = (a) => (H("data-v-7521f582"), a = a(), G(), a), Fi = { key: 0 }, Vi = /* @__PURE__ */ Se(() => /* @__PURE__ */ l("span", null, "°C", -1)), Ui = /* @__PURE__ */ Se(() => /* @__PURE__ */ l("span", null, "0", -1)), Zi = /* @__PURE__ */ Se(() => /* @__PURE__ */ l("span", null, "10", -1)), Hi = /* @__PURE__ */ Se(() => /* @__PURE__ */ l("span", null, "20", -1)), Gi = /* @__PURE__ */ Se(() => /* @__PURE__ */ l("span", null, "30", -1)), Ji = /* @__PURE__ */ Se(() => /* @__PURE__ */ l("span", null, "40", -1)), Xi = [
|
|
5017
|
+
Vi,
|
|
5018
|
+
Ui,
|
|
5019
|
+
Zi,
|
|
5020
|
+
Hi,
|
|
5021
|
+
Gi,
|
|
5022
|
+
Ji
|
|
5023
|
+
];
|
|
5024
|
+
function Yi(a, e, t, r, i, o) {
|
|
5025
|
+
var s;
|
|
5026
|
+
return (s = t.factor) != null && s.active ? (x(), C("div", Fi, [
|
|
4994
5027
|
l("div", {
|
|
4995
5028
|
class: "legend-bars flex-center",
|
|
4996
|
-
style:
|
|
4997
|
-
},
|
|
4998
|
-
l("span", null, "°C", -1),
|
|
4999
|
-
l("span", null, "0", -1),
|
|
5000
|
-
l("span", null, "10", -1),
|
|
5001
|
-
l("span", null, "20", -1),
|
|
5002
|
-
l("span", null, "30", -1),
|
|
5003
|
-
l("span", null, "40", -1)
|
|
5004
|
-
]), 4)
|
|
5029
|
+
style: U([{ position: "absolute" }, { right: i.right + "px", bottom: t.bottom }])
|
|
5030
|
+
}, Xi, 4)
|
|
5005
5031
|
])) : B("", !0);
|
|
5006
5032
|
}
|
|
5007
|
-
const
|
|
5008
|
-
const
|
|
5033
|
+
const qi = /* @__PURE__ */ T(Oi, [["render", Yi], ["__scopeId", "data-v-7521f582"]]);
|
|
5034
|
+
const Qi = {
|
|
5009
5035
|
name: "IdmTemp",
|
|
5010
5036
|
props: {
|
|
5011
5037
|
factor: {
|
|
@@ -5033,7 +5059,7 @@ const Ca = {
|
|
|
5033
5059
|
texture: void 0,
|
|
5034
5060
|
rampColor: void 0,
|
|
5035
5061
|
aPositionBuffer: void 0,
|
|
5036
|
-
webgl: new
|
|
5062
|
+
webgl: new Le(),
|
|
5037
5063
|
etime: void 0,
|
|
5038
5064
|
right: 10
|
|
5039
5065
|
};
|
|
@@ -5097,7 +5123,7 @@ const Ca = {
|
|
|
5097
5123
|
[1, "rgb(138, 43, 10)"]
|
|
5098
5124
|
];
|
|
5099
5125
|
this.rampColor = this.webgl.setup(this.context, a);
|
|
5100
|
-
const { program: e, aPositionBuffer: t } = this.webgl.bind(this.context,
|
|
5126
|
+
const { program: e, aPositionBuffer: t } = this.webgl.bind(this.context, N.vertexSchema, N.fragmentSchema);
|
|
5101
5127
|
this.program = e, this.aPositionBuffer = t;
|
|
5102
5128
|
}
|
|
5103
5129
|
},
|
|
@@ -5110,27 +5136,27 @@ const Ca = {
|
|
|
5110
5136
|
this.webgl.draw(this.viewport, this.context, this.program, this.texture, this.rampColor.texture, this.aPositionBuffer), this.viewport.toggle(!0);
|
|
5111
5137
|
}
|
|
5112
5138
|
}
|
|
5113
|
-
},
|
|
5114
|
-
|
|
5115
|
-
|
|
5116
|
-
|
|
5139
|
+
}, he = (a) => (H("data-v-25daaa82"), a = a(), G(), a), Ki = { key: 0 }, er = /* @__PURE__ */ he(() => /* @__PURE__ */ l("span", null, "°C", -1)), tr = /* @__PURE__ */ he(() => /* @__PURE__ */ l("span", null, "-20", -1)), ar = /* @__PURE__ */ he(() => /* @__PURE__ */ l("span", null, "-10", -1)), ir = /* @__PURE__ */ he(() => /* @__PURE__ */ l("span", null, "0", -1)), rr = /* @__PURE__ */ he(() => /* @__PURE__ */ l("span", null, "10", -1)), or = /* @__PURE__ */ he(() => /* @__PURE__ */ l("span", null, "20", -1)), sr = /* @__PURE__ */ he(() => /* @__PURE__ */ l("span", null, "30", -1)), nr = /* @__PURE__ */ he(() => /* @__PURE__ */ l("span", null, "40", -1)), lr = [
|
|
5140
|
+
er,
|
|
5141
|
+
tr,
|
|
5142
|
+
ar,
|
|
5143
|
+
ir,
|
|
5144
|
+
rr,
|
|
5145
|
+
or,
|
|
5146
|
+
sr,
|
|
5147
|
+
nr
|
|
5148
|
+
];
|
|
5149
|
+
function cr(a, e, t, r, i, o) {
|
|
5150
|
+
var s;
|
|
5151
|
+
return (s = t.factor) != null && s.active ? (x(), C("div", Ki, [
|
|
5117
5152
|
l("div", {
|
|
5118
5153
|
class: "legend-bars flex-center",
|
|
5119
|
-
style:
|
|
5120
|
-
},
|
|
5121
|
-
l("span", null, "°C", -1),
|
|
5122
|
-
l("span", null, "-20", -1),
|
|
5123
|
-
l("span", null, "-10", -1),
|
|
5124
|
-
l("span", null, "0", -1),
|
|
5125
|
-
l("span", null, "10", -1),
|
|
5126
|
-
l("span", null, "20", -1),
|
|
5127
|
-
l("span", null, "30", -1),
|
|
5128
|
-
l("span", null, "40", -1)
|
|
5129
|
-
]), 4)
|
|
5154
|
+
style: U([{ position: "absolute" }, { right: i.right + "px", bottom: t.bottom }])
|
|
5155
|
+
}, lr, 4)
|
|
5130
5156
|
])) : B("", !0);
|
|
5131
5157
|
}
|
|
5132
|
-
const
|
|
5133
|
-
const
|
|
5158
|
+
const hr = /* @__PURE__ */ T(Qi, [["render", cr], ["__scopeId", "data-v-25daaa82"]]);
|
|
5159
|
+
const dr = {
|
|
5134
5160
|
name: "IdmArctic",
|
|
5135
5161
|
props: {
|
|
5136
5162
|
factor: {
|
|
@@ -5158,7 +5184,7 @@ const Pa = {
|
|
|
5158
5184
|
texture: void 0,
|
|
5159
5185
|
rampColor: void 0,
|
|
5160
5186
|
aPositionBuffer: void 0,
|
|
5161
|
-
webgl: new
|
|
5187
|
+
webgl: new Le(),
|
|
5162
5188
|
etime: void 0,
|
|
5163
5189
|
right: 10
|
|
5164
5190
|
};
|
|
@@ -5213,7 +5239,7 @@ const Pa = {
|
|
|
5213
5239
|
// 2m
|
|
5214
5240
|
];
|
|
5215
5241
|
this.rampColor = this.webgl.setup(this.context, a);
|
|
5216
|
-
const { program: e, aPositionBuffer: t } = this.webgl.bind(this.context,
|
|
5242
|
+
const { program: e, aPositionBuffer: t } = this.webgl.bind(this.context, N.vertexSchema, N.fragmentSchema);
|
|
5217
5243
|
this.program = e, this.aPositionBuffer = t;
|
|
5218
5244
|
}
|
|
5219
5245
|
},
|
|
@@ -5226,25 +5252,25 @@ const Pa = {
|
|
|
5226
5252
|
this.webgl.draw(this.viewport, this.context, this.program, this.texture, this.rampColor.texture, this.aPositionBuffer), this.viewport.toggle(!0);
|
|
5227
5253
|
}
|
|
5228
5254
|
}
|
|
5229
|
-
},
|
|
5230
|
-
|
|
5231
|
-
|
|
5232
|
-
|
|
5255
|
+
}, ze = (a) => (H("data-v-5bb73794"), a = a(), G(), a), pr = { key: 0 }, mr = /* @__PURE__ */ ze(() => /* @__PURE__ */ l("span", null, "m", -1)), ur = /* @__PURE__ */ ze(() => /* @__PURE__ */ l("span", null, "0", -1)), yr = /* @__PURE__ */ ze(() => /* @__PURE__ */ l("span", null, "0.5", -1)), fr = /* @__PURE__ */ ze(() => /* @__PURE__ */ l("span", null, "1", -1)), gr = /* @__PURE__ */ ze(() => /* @__PURE__ */ l("span", null, "1.5", -1)), br = /* @__PURE__ */ ze(() => /* @__PURE__ */ l("span", null, "2", -1)), vr = [
|
|
5256
|
+
mr,
|
|
5257
|
+
ur,
|
|
5258
|
+
yr,
|
|
5259
|
+
fr,
|
|
5260
|
+
gr,
|
|
5261
|
+
br
|
|
5262
|
+
];
|
|
5263
|
+
function wr(a, e, t, r, i, o) {
|
|
5264
|
+
var s;
|
|
5265
|
+
return (s = t.factor) != null && s.active ? (x(), C("div", pr, [
|
|
5233
5266
|
l("div", {
|
|
5234
5267
|
class: "legend-bars flex-center",
|
|
5235
|
-
style:
|
|
5236
|
-
},
|
|
5237
|
-
l("span", null, "m", -1),
|
|
5238
|
-
l("span", null, "0", -1),
|
|
5239
|
-
l("span", null, "0.5", -1),
|
|
5240
|
-
l("span", null, "1", -1),
|
|
5241
|
-
l("span", null, "1.5", -1),
|
|
5242
|
-
l("span", null, "2", -1)
|
|
5243
|
-
]), 4)
|
|
5268
|
+
style: U([{ position: "absolute" }, { right: i.right + "px", bottom: t.bottom }])
|
|
5269
|
+
}, vr, 4)
|
|
5244
5270
|
])) : B("", !0);
|
|
5245
5271
|
}
|
|
5246
|
-
const
|
|
5247
|
-
const
|
|
5272
|
+
const _r = /* @__PURE__ */ T(dr, [["render", wr], ["__scopeId", "data-v-5bb73794"]]);
|
|
5273
|
+
const Lr = {
|
|
5248
5274
|
name: "IdmPoint",
|
|
5249
5275
|
emits: ["point", "more"],
|
|
5250
5276
|
props: {
|
|
@@ -5266,7 +5292,7 @@ const Ia = {
|
|
|
5266
5292
|
return {
|
|
5267
5293
|
showMeteo: !1,
|
|
5268
5294
|
meteoMarker: void 0,
|
|
5269
|
-
helper:
|
|
5295
|
+
helper: De
|
|
5270
5296
|
};
|
|
5271
5297
|
},
|
|
5272
5298
|
watch: {
|
|
@@ -5327,71 +5353,71 @@ const Ia = {
|
|
|
5327
5353
|
var a;
|
|
5328
5354
|
if (this.meteo) {
|
|
5329
5355
|
const e = document.getElementById("point-meteo");
|
|
5330
|
-
this.meteoMarker ? (a = this.meteoMarker) == null || a.setLngLat([this.meteo.lng, this.meteo.lat]) : this.meteoMarker = new
|
|
5356
|
+
this.meteoMarker ? (a = this.meteoMarker) == null || a.setLngLat([this.meteo.lng, this.meteo.lat]) : this.meteoMarker = new te.Marker(e).setLngLat([this.meteo.lng, this.meteo.lat]).addTo(this.map);
|
|
5331
5357
|
}
|
|
5332
5358
|
}
|
|
5333
5359
|
}
|
|
5334
|
-
},
|
|
5360
|
+
}, ae = (a) => (H("data-v-d13117a4"), a = a(), G(), a), xr = {
|
|
5335
5361
|
id: "point-meteo",
|
|
5336
5362
|
class: "point-meteo"
|
|
5337
|
-
},
|
|
5338
|
-
function
|
|
5339
|
-
var
|
|
5340
|
-
return
|
|
5341
|
-
l("div",
|
|
5342
|
-
l("div",
|
|
5363
|
+
}, Cr = { class: "meteo-box" }, kr = { class: "header-box" }, Sr = { class: "main" }, zr = { class: "sub" }, Pr = { class: "main-box" }, Tr = { class: "flex-space" }, Ir = /* @__PURE__ */ ae(() => /* @__PURE__ */ l("label", null, "Wind", -1)), Er = { class: "flex-space" }, Rr = /* @__PURE__ */ ae(() => /* @__PURE__ */ l("label", null, "Wind.Wave", -1)), Ar = { class: "flex-space" }, Dr = /* @__PURE__ */ ae(() => /* @__PURE__ */ l("label", null, "Swell", -1)), Mr = { class: "flex-space" }, $r = /* @__PURE__ */ ae(() => /* @__PURE__ */ l("label", null, "Sig.Wave", -1)), jr = { class: "flex-space" }, Nr = /* @__PURE__ */ ae(() => /* @__PURE__ */ l("label", null, "Current", -1)), Br = { class: "flex-space" }, Wr = /* @__PURE__ */ ae(() => /* @__PURE__ */ l("label", null, "Precip", -1)), Or = { class: "flex-space" }, Fr = /* @__PURE__ */ ae(() => /* @__PURE__ */ l("label", null, "Visibility", -1)), Vr = { class: "flex-space" }, Ur = /* @__PURE__ */ ae(() => /* @__PURE__ */ l("label", null, "Temp", -1)), Zr = { class: "flex-space" }, Hr = /* @__PURE__ */ ae(() => /* @__PURE__ */ l("label", null, "Water Temp", -1));
|
|
5364
|
+
function Gr(a, e, t, r, i, o) {
|
|
5365
|
+
var s, n, c, d, h, p, g, u, y, f, m, v, b, _, z, w, A, M, $, W, O, J, de, pe, me, ue, ye, fe, ge, ie, X, Y, be, q, I, F, ve, Q, we, re, oe, se, Pe, Te, Ie, Ee, Re;
|
|
5366
|
+
return je((x(), C("div", xr, [
|
|
5367
|
+
l("div", Cr, [
|
|
5368
|
+
l("div", kr, [
|
|
5343
5369
|
l("div", {
|
|
5344
5370
|
class: "iconfont close",
|
|
5345
|
-
onClick: e[0] || (e[0] = (
|
|
5371
|
+
onClick: e[0] || (e[0] = (We) => i.showMeteo = !1)
|
|
5346
5372
|
}, ""),
|
|
5347
|
-
l("div",
|
|
5348
|
-
l("div",
|
|
5373
|
+
l("div", Sr, S(o.computeLat((s = t.meteo) == null ? void 0 : s.lat)) + "," + S(o.computeLng((n = t.meteo) == null ? void 0 : n.lng)), 1),
|
|
5374
|
+
l("div", zr, S(o.computeTime((c = t.meteo) == null ? void 0 : c.utc)), 1)
|
|
5349
5375
|
]),
|
|
5350
|
-
l("div",
|
|
5351
|
-
l("div",
|
|
5352
|
-
|
|
5353
|
-
l("span", null,
|
|
5376
|
+
l("div", Pr, [
|
|
5377
|
+
l("div", Tr, [
|
|
5378
|
+
Ir,
|
|
5379
|
+
l("span", null, S(((h = (d = t.meteo) == null ? void 0 : d.wind) == null ? void 0 : h.direction) || "-") + "/" + S(o.roundPrecision((g = (p = t.meteo) == null ? void 0 : p.wind) == null ? void 0 : g.kts, 1)) + "[kts]/" + S((y = (u = t.meteo) == null ? void 0 : u.wind) == null ? void 0 : y.scale) + "[BF]/" + S(o.roundPrecision((m = (f = t.meteo) == null ? void 0 : f.gusts) == null ? void 0 : m.kts, 1)) + "[kts]", 1)
|
|
5354
5380
|
]),
|
|
5355
|
-
l("div",
|
|
5356
|
-
|
|
5357
|
-
l("span", null,
|
|
5381
|
+
l("div", Er, [
|
|
5382
|
+
Rr,
|
|
5383
|
+
l("span", null, S(((_ = (b = (v = t.meteo) == null ? void 0 : v.wave) == null ? void 0 : b.wd) == null ? void 0 : _.direction) || "-") + "/" + S(o.roundPrecision((A = (w = (z = t.meteo) == null ? void 0 : z.wave) == null ? void 0 : w.wd) == null ? void 0 : A.height, 1)) + "[m]/" + S(o.roundPrecision((W = ($ = (M = t.meteo) == null ? void 0 : M.wave) == null ? void 0 : $.wd) == null ? void 0 : W.period, 1)) + "[s]", 1)
|
|
5358
5384
|
]),
|
|
5359
|
-
l("div",
|
|
5360
|
-
|
|
5361
|
-
l("span", null,
|
|
5385
|
+
l("div", Ar, [
|
|
5386
|
+
Dr,
|
|
5387
|
+
l("span", null, S(((de = (J = (O = t.meteo) == null ? void 0 : O.wave) == null ? void 0 : J.swell) == null ? void 0 : de.direction) || "-") + "/" + S(o.roundPrecision((ue = (me = (pe = t.meteo) == null ? void 0 : pe.wave) == null ? void 0 : me.swell) == null ? void 0 : ue.height, 1)) + "[m]/" + S(o.roundPrecision((ge = (fe = (ye = t.meteo) == null ? void 0 : ye.wave) == null ? void 0 : fe.swell) == null ? void 0 : ge.period, 1)) + "[s]", 1)
|
|
5362
5388
|
]),
|
|
5363
|
-
l("div",
|
|
5364
|
-
|
|
5365
|
-
l("span", null,
|
|
5389
|
+
l("div", Mr, [
|
|
5390
|
+
$r,
|
|
5391
|
+
l("span", null, S(((Y = (X = (ie = t.meteo) == null ? void 0 : ie.wave) == null ? void 0 : X.sig) == null ? void 0 : Y.direction) || "-") + "/" + S(o.roundPrecision((I = (q = (be = t.meteo) == null ? void 0 : be.wave) == null ? void 0 : q.sig) == null ? void 0 : I.height, 1)) + "[m]/" + S(o.roundPrecision((Q = (ve = (F = t.meteo) == null ? void 0 : F.wave) == null ? void 0 : ve.sig) == null ? void 0 : Q.period, 1)) + "[s]", 1)
|
|
5366
5392
|
]),
|
|
5367
|
-
l("div",
|
|
5368
|
-
|
|
5369
|
-
l("span", null,
|
|
5393
|
+
l("div", jr, [
|
|
5394
|
+
Nr,
|
|
5395
|
+
l("span", null, S(((re = (we = t.meteo) == null ? void 0 : we.current) == null ? void 0 : re.direction) || "-") + "/" + S(o.roundPrecision((se = (oe = t.meteo) == null ? void 0 : oe.current) == null ? void 0 : se.kts, 2)) + "[kts]", 1)
|
|
5370
5396
|
]),
|
|
5371
|
-
l("div",
|
|
5372
|
-
|
|
5373
|
-
l("span", null,
|
|
5397
|
+
l("div", Br, [
|
|
5398
|
+
Wr,
|
|
5399
|
+
l("span", null, S(o.roundPrecision((Te = (Pe = t.meteo) == null ? void 0 : Pe.precip) == null ? void 0 : Te.inter6h, 2)) + "[mm]", 1)
|
|
5374
5400
|
]),
|
|
5375
|
-
l("div",
|
|
5376
|
-
|
|
5377
|
-
l("span", null,
|
|
5401
|
+
l("div", Or, [
|
|
5402
|
+
Fr,
|
|
5403
|
+
l("span", null, S(o.roundPrecision(((Ie = t.meteo) == null ? void 0 : Ie.visibility) / 1852, 0)) + "[nm]", 1)
|
|
5378
5404
|
]),
|
|
5379
|
-
l("div",
|
|
5380
|
-
|
|
5381
|
-
l("span", null,
|
|
5405
|
+
l("div", Vr, [
|
|
5406
|
+
Ur,
|
|
5407
|
+
l("span", null, S(o.roundPrecision((Ee = t.meteo) == null ? void 0 : Ee.temp, 0)) + "[°C]", 1)
|
|
5382
5408
|
]),
|
|
5383
|
-
l("div",
|
|
5384
|
-
|
|
5385
|
-
l("span", null,
|
|
5409
|
+
l("div", Zr, [
|
|
5410
|
+
Hr,
|
|
5411
|
+
l("span", null, S(o.roundPrecision((Re = t.meteo) == null ? void 0 : Re.waterTemp, 2)) + "[°C]", 1)
|
|
5386
5412
|
])
|
|
5387
5413
|
]),
|
|
5388
5414
|
B("", !0)
|
|
5389
5415
|
])
|
|
5390
5416
|
], 512)), [
|
|
5391
|
-
[
|
|
5417
|
+
[Ne, i.showMeteo]
|
|
5392
5418
|
]);
|
|
5393
5419
|
}
|
|
5394
|
-
const
|
|
5420
|
+
const Jr = /* @__PURE__ */ T(Lr, [["render", Gr], ["__scopeId", "data-v-d13117a4"]]), Xr = {
|
|
5395
5421
|
name: "IdmWarZone",
|
|
5396
5422
|
props: {
|
|
5397
5423
|
map: {
|
|
@@ -5481,10 +5507,10 @@ const Xa = /* @__PURE__ */ T(Ia, [["render", Ja], ["__scopeId", "data-v-d13117a4
|
|
|
5481
5507
|
}
|
|
5482
5508
|
}
|
|
5483
5509
|
};
|
|
5484
|
-
function
|
|
5485
|
-
return x(),
|
|
5510
|
+
function Yr(a, e, t, r, i, o) {
|
|
5511
|
+
return x(), C("div");
|
|
5486
5512
|
}
|
|
5487
|
-
const
|
|
5513
|
+
const qr = /* @__PURE__ */ T(Xr, [["render", Yr]]), Qr = {
|
|
5488
5514
|
name: "IdmGmdssArea",
|
|
5489
5515
|
props: {
|
|
5490
5516
|
map: {
|
|
@@ -5604,10 +5630,10 @@ const Qa = /* @__PURE__ */ T(Ya, [["render", qa]]), Ka = {
|
|
|
5604
5630
|
}
|
|
5605
5631
|
}
|
|
5606
5632
|
};
|
|
5607
|
-
function
|
|
5608
|
-
return x(),
|
|
5633
|
+
function Kr(a, e, t, r, i, o) {
|
|
5634
|
+
return x(), C("div");
|
|
5609
5635
|
}
|
|
5610
|
-
const
|
|
5636
|
+
const eo = /* @__PURE__ */ T(Qr, [["render", Kr]]), to = {
|
|
5611
5637
|
name: "IdmEcaZone",
|
|
5612
5638
|
props: {
|
|
5613
5639
|
map: {
|
|
@@ -5695,11 +5721,11 @@ const ti = /* @__PURE__ */ T(Ka, [["render", ei]]), ai = {
|
|
|
5695
5721
|
}
|
|
5696
5722
|
}
|
|
5697
5723
|
};
|
|
5698
|
-
function
|
|
5699
|
-
return x(),
|
|
5724
|
+
function ao(a, e, t, r, i, o) {
|
|
5725
|
+
return x(), C("div");
|
|
5700
5726
|
}
|
|
5701
|
-
const
|
|
5702
|
-
const
|
|
5727
|
+
const io = /* @__PURE__ */ T(to, [["render", ao]]);
|
|
5728
|
+
const ro = {
|
|
5703
5729
|
name: "IdmAlertZone",
|
|
5704
5730
|
props: {
|
|
5705
5731
|
map: {
|
|
@@ -5742,7 +5768,7 @@ const oi = {
|
|
|
5742
5768
|
if (t) {
|
|
5743
5769
|
this.showZone = !0, this.form = { ...t.properties };
|
|
5744
5770
|
const i = document.getElementById("idm-gl3-zone-info");
|
|
5745
|
-
this.marker ? this.marker.setLngLat([a.lngLat.lng, a.lngLat.lat]) : this.marker = new
|
|
5771
|
+
this.marker ? this.marker.setLngLat([a.lngLat.lng, a.lngLat.lat]) : this.marker = new te.Marker(i).setLngLat([a.lngLat.lng, a.lngLat.lat]).setOffset([0, 0]).addTo(this.map);
|
|
5746
5772
|
}
|
|
5747
5773
|
},
|
|
5748
5774
|
handleRender() {
|
|
@@ -5829,24 +5855,24 @@ const oi = {
|
|
|
5829
5855
|
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);
|
|
5830
5856
|
}
|
|
5831
5857
|
}
|
|
5832
|
-
},
|
|
5833
|
-
function
|
|
5834
|
-
var
|
|
5835
|
-
return
|
|
5858
|
+
}, oo = { id: "idm-gl3-zone-info" }, so = ["innerHTML"];
|
|
5859
|
+
function no(a, e, t, r, i, o) {
|
|
5860
|
+
var s;
|
|
5861
|
+
return je((x(), C("div", oo, [
|
|
5836
5862
|
l("div", {
|
|
5837
5863
|
class: "iconfont close",
|
|
5838
|
-
onClick: e[0] || (e[0] = (
|
|
5864
|
+
onClick: e[0] || (e[0] = (n) => i.showZone = !1)
|
|
5839
5865
|
}, ""),
|
|
5840
5866
|
l("div", {
|
|
5841
5867
|
class: "rich-context",
|
|
5842
|
-
innerHTML: (
|
|
5843
|
-
}, null, 8,
|
|
5868
|
+
innerHTML: (s = i.form) == null ? void 0 : s.name
|
|
5869
|
+
}, null, 8, so)
|
|
5844
5870
|
], 512)), [
|
|
5845
|
-
[
|
|
5871
|
+
[Ne, i.showZone]
|
|
5846
5872
|
]);
|
|
5847
5873
|
}
|
|
5848
|
-
const
|
|
5849
|
-
const
|
|
5874
|
+
const lo = /* @__PURE__ */ T(ro, [["render", no]]);
|
|
5875
|
+
const co = {
|
|
5850
5876
|
name: "IdmPort",
|
|
5851
5877
|
props: {
|
|
5852
5878
|
map: {
|
|
@@ -5899,7 +5925,7 @@ const hi = {
|
|
|
5899
5925
|
if (t) {
|
|
5900
5926
|
this.showPort = !0, this.form = { ...t.properties }, this.form.lng = t.geometry.coordinates[0], this.form.lat = t.geometry.coordinates[1];
|
|
5901
5927
|
const i = document.getElementById("port-info");
|
|
5902
|
-
this.marker ? this.marker.setLngLat([a.lngLat.lng, a.lngLat.lat]) : this.marker = new
|
|
5928
|
+
this.marker ? this.marker.setLngLat([a.lngLat.lng, a.lngLat.lat]) : this.marker = new te.Marker(i).setLngLat([a.lngLat.lng, a.lngLat.lat]).setOffset([0, -85]).addTo(this.map);
|
|
5903
5929
|
}
|
|
5904
5930
|
},
|
|
5905
5931
|
handleEmit() {
|
|
@@ -5938,41 +5964,41 @@ const hi = {
|
|
|
5938
5964
|
this.showPort = !1, this.map.getLayer(this.layer) && this.map.removeLayer(this.layer), this.map.getSource(this.source) && this.map.removeSource(this.source);
|
|
5939
5965
|
}
|
|
5940
5966
|
}
|
|
5941
|
-
},
|
|
5967
|
+
}, Be = (a) => (H("data-v-035470f6"), a = a(), G(), a), ho = { id: "port-info" }, po = { class: "port-box" }, mo = { class: "flex-start" }, uo = /* @__PURE__ */ Be(() => /* @__PURE__ */ l("label", null, "Name : ", -1)), yo = { class: "flex-start" }, fo = /* @__PURE__ */ Be(() => /* @__PURE__ */ l("label", null, "Position : ", -1)), go = { class: "flex-start" }, bo = /* @__PURE__ */ Be(() => /* @__PURE__ */ l("label", null, "LoCode : ", -1)), vo = {
|
|
5942
5968
|
class: "flex-start",
|
|
5943
5969
|
style: { "align-items": "flex-start" }
|
|
5944
|
-
};
|
|
5945
|
-
function
|
|
5946
|
-
return
|
|
5970
|
+
}, wo = /* @__PURE__ */ Be(() => /* @__PURE__ */ l("label", null, "Region : ", -1));
|
|
5971
|
+
function _o(a, e, t, r, i, o) {
|
|
5972
|
+
return je((x(), C("div", ho, [
|
|
5947
5973
|
l("div", {
|
|
5948
5974
|
class: "close iconfont",
|
|
5949
|
-
onClick: e[0] || (e[0] = (
|
|
5975
|
+
onClick: e[0] || (e[0] = (s) => i.showPort = !1)
|
|
5950
5976
|
}, ""),
|
|
5951
|
-
l("div",
|
|
5952
|
-
l("div",
|
|
5953
|
-
|
|
5977
|
+
l("div", po, [
|
|
5978
|
+
l("div", mo, [
|
|
5979
|
+
uo,
|
|
5954
5980
|
l("span", {
|
|
5955
|
-
onClick: e[1] || (e[1] = (...
|
|
5956
|
-
},
|
|
5981
|
+
onClick: e[1] || (e[1] = (...s) => o.handleEmit && o.handleEmit(...s))
|
|
5982
|
+
}, S(i.form.name), 1)
|
|
5957
5983
|
]),
|
|
5958
|
-
l("div",
|
|
5959
|
-
|
|
5960
|
-
l("span", null,
|
|
5984
|
+
l("div", yo, [
|
|
5985
|
+
fo,
|
|
5986
|
+
l("span", null, S(o.computeLat(i.form.lat)) + ", " + S(o.computeLng(i.form.lng)), 1)
|
|
5961
5987
|
]),
|
|
5962
|
-
l("div",
|
|
5963
|
-
|
|
5964
|
-
l("span", null,
|
|
5988
|
+
l("div", go, [
|
|
5989
|
+
bo,
|
|
5990
|
+
l("span", null, S(i.form.loCode || "-"), 1)
|
|
5965
5991
|
]),
|
|
5966
|
-
l("div",
|
|
5967
|
-
|
|
5968
|
-
l("span", null,
|
|
5992
|
+
l("div", vo, [
|
|
5993
|
+
wo,
|
|
5994
|
+
l("span", null, S(i.form.zoneName || "-"), 1)
|
|
5969
5995
|
])
|
|
5970
5996
|
])
|
|
5971
5997
|
], 512)), [
|
|
5972
|
-
[
|
|
5998
|
+
[Ne, i.showPort]
|
|
5973
5999
|
]);
|
|
5974
6000
|
}
|
|
5975
|
-
const
|
|
6001
|
+
const Lo = /* @__PURE__ */ T(co, [["render", _o], ["__scopeId", "data-v-035470f6"]]), xo = {
|
|
5976
6002
|
name: "IdmLoadLine",
|
|
5977
6003
|
props: {
|
|
5978
6004
|
map: {
|
|
@@ -6042,10 +6068,10 @@ const bi = /* @__PURE__ */ T(hi, [["render", gi], ["__scopeId", "data-v-035470f6
|
|
|
6042
6068
|
}
|
|
6043
6069
|
}
|
|
6044
6070
|
};
|
|
6045
|
-
function
|
|
6046
|
-
return x(),
|
|
6071
|
+
function Co(a, e, t, r, i, o) {
|
|
6072
|
+
return x(), C("div");
|
|
6047
6073
|
}
|
|
6048
|
-
const
|
|
6074
|
+
const ko = /* @__PURE__ */ T(xo, [["render", Co]]), So = {
|
|
6049
6075
|
name: "IdmTimezone",
|
|
6050
6076
|
props: {
|
|
6051
6077
|
map: {
|
|
@@ -6210,10 +6236,10 @@ const Li = /* @__PURE__ */ T(vi, [["render", wi]]), xi = {
|
|
|
6210
6236
|
}
|
|
6211
6237
|
}
|
|
6212
6238
|
};
|
|
6213
|
-
function
|
|
6214
|
-
return x(),
|
|
6239
|
+
function zo(a, e, t, r, i, o) {
|
|
6240
|
+
return x(), C("div");
|
|
6215
6241
|
}
|
|
6216
|
-
const
|
|
6242
|
+
const Po = /* @__PURE__ */ T(So, [["render", zo]]), To = {
|
|
6217
6243
|
name: "IdmVoluntaryReportingArea",
|
|
6218
6244
|
props: {
|
|
6219
6245
|
map: {
|
|
@@ -6301,10 +6327,10 @@ const Ci = /* @__PURE__ */ T(xi, [["render", _i]]), ki = {
|
|
|
6301
6327
|
}
|
|
6302
6328
|
}
|
|
6303
6329
|
};
|
|
6304
|
-
function
|
|
6305
|
-
return x(),
|
|
6330
|
+
function Io(a, e, t, r, i, o) {
|
|
6331
|
+
return x(), C("div");
|
|
6306
6332
|
}
|
|
6307
|
-
const
|
|
6333
|
+
const Eo = /* @__PURE__ */ T(To, [["render", Io]]), Ro = {
|
|
6308
6334
|
name: "IdmSpecialArea",
|
|
6309
6335
|
props: {
|
|
6310
6336
|
map: {
|
|
@@ -6394,10 +6420,10 @@ const zi = /* @__PURE__ */ T(ki, [["render", Si]]), Pi = {
|
|
|
6394
6420
|
}
|
|
6395
6421
|
}
|
|
6396
6422
|
};
|
|
6397
|
-
function
|
|
6398
|
-
return x(),
|
|
6423
|
+
function Ao(a, e, t, r, i, o) {
|
|
6424
|
+
return x(), C("div");
|
|
6399
6425
|
}
|
|
6400
|
-
const
|
|
6426
|
+
const Do = /* @__PURE__ */ T(Ro, [["render", Ao]]), Mo = {
|
|
6401
6427
|
name: "IdmTerminator",
|
|
6402
6428
|
props: {
|
|
6403
6429
|
map: {
|
|
@@ -6446,11 +6472,11 @@ const Ri = /* @__PURE__ */ T(Pi, [["render", Ti]]), Ei = {
|
|
|
6446
6472
|
}
|
|
6447
6473
|
}
|
|
6448
6474
|
};
|
|
6449
|
-
function
|
|
6450
|
-
return x(),
|
|
6475
|
+
function $o(a, e, t, r, i, o) {
|
|
6476
|
+
return x(), C("div");
|
|
6451
6477
|
}
|
|
6452
|
-
const
|
|
6453
|
-
const
|
|
6478
|
+
const jo = /* @__PURE__ */ T(Mo, [["render", $o]]);
|
|
6479
|
+
const No = {
|
|
6454
6480
|
name: "IdmLatLng",
|
|
6455
6481
|
props: {
|
|
6456
6482
|
map: {
|
|
@@ -6557,7 +6583,7 @@ const Di = {
|
|
|
6557
6583
|
handleZoomEnd() {
|
|
6558
6584
|
var e;
|
|
6559
6585
|
const a = this.handleComputeLatLngs();
|
|
6560
|
-
(e = this.map) == null || e.getSource(this.source).setData(
|
|
6586
|
+
(e = this.map) == null || e.getSource(this.source).setData(L.featureCollection(a));
|
|
6561
6587
|
},
|
|
6562
6588
|
handleRender() {
|
|
6563
6589
|
if (this.map) {
|
|
@@ -6605,19 +6631,19 @@ const Di = {
|
|
|
6605
6631
|
(a = this.map) != null && a.getLayer(this.layer) && ((e = this.map) == null || e.removeLayer(this.layer)), (t = this.map) != null && t.getLayer(this.labelLayer) && ((r = this.map) == null || r.removeLayer(this.labelLayer)), (i = this.map) != null && i.getSource(this.source) && ((o = this.map) == null || o.removeSource(this.source));
|
|
6606
6632
|
}
|
|
6607
6633
|
}
|
|
6608
|
-
};
|
|
6609
|
-
function
|
|
6610
|
-
return i.lngLat ? (x(),
|
|
6634
|
+
}, Bo = (a) => (H("data-v-73241fe7"), a = a(), G(), a), Wo = /* @__PURE__ */ Bo(() => /* @__PURE__ */ l("span", null, ", ", -1));
|
|
6635
|
+
function Oo(a, e, t, r, i, o) {
|
|
6636
|
+
return i.lngLat ? (x(), C("div", {
|
|
6611
6637
|
key: 0,
|
|
6612
6638
|
class: "lat-lng-tip",
|
|
6613
|
-
style:
|
|
6639
|
+
style: U({ right: i.right + "px", bottom: t.bottom })
|
|
6614
6640
|
}, [
|
|
6615
|
-
l("span", null,
|
|
6616
|
-
|
|
6617
|
-
l("span", null,
|
|
6641
|
+
l("span", null, S(i.lngLat.lat.pretty), 1),
|
|
6642
|
+
Wo,
|
|
6643
|
+
l("span", null, S(i.lngLat.lng.pretty), 1)
|
|
6618
6644
|
], 4)) : B("", !0);
|
|
6619
6645
|
}
|
|
6620
|
-
const
|
|
6646
|
+
const et = /* @__PURE__ */ T(No, [["render", Oo], ["__scopeId", "data-v-73241fe7"]]), Fo = {
|
|
6621
6647
|
name: "IdmMeasure",
|
|
6622
6648
|
props: {
|
|
6623
6649
|
map: {
|
|
@@ -6658,13 +6684,13 @@ const Fe = /* @__PURE__ */ T(Di, [["render", Mi], ["__scopeId", "data-v-b0d1ad79
|
|
|
6658
6684
|
},
|
|
6659
6685
|
methods: {
|
|
6660
6686
|
handleBind() {
|
|
6661
|
-
var a, e, t, r, i, o,
|
|
6687
|
+
var a, e, t, r, i, o, s, n, c, d;
|
|
6662
6688
|
if (this.show)
|
|
6663
6689
|
(a = this.map) == null || a.getCanvas().addEventListener("keydown", this.handleKeydown), (e = this.map) == null || e.on("mousemove", this.handleMove), (t = this.map) == null || t.on("dblclick", this.handleDblClick), (r = this.map) == null || r.on("click", this.handleClick), (i = this.map) == null || i.on("contextmenu", this.handleContextmenu), this.map && (this.map.getCanvas().style.cursor = "crosshair");
|
|
6664
6690
|
else {
|
|
6665
|
-
(o = this.map) == null || o.getCanvas().removeEventListener("keydown", this.handleKeydown), (
|
|
6666
|
-
for (const
|
|
6667
|
-
this.handleClear(
|
|
6691
|
+
(o = this.map) == null || o.getCanvas().removeEventListener("keydown", this.handleKeydown), (s = this.map) == null || s.off("mousemove", this.handleMove), (n = this.map) == null || n.off("dblclick", this.handleDblClick), (c = this.map) == null || c.off("click", this.handleClick), (d = this.map) == null || d.off("contextmenu", this.handleContextmenu);
|
|
6692
|
+
for (const h of this.geojson)
|
|
6693
|
+
this.handleClear(h, !0);
|
|
6668
6694
|
this.geojson = [], this.map && (this.map.getCanvas().style.cursor = "grab");
|
|
6669
6695
|
}
|
|
6670
6696
|
},
|
|
@@ -6676,14 +6702,14 @@ const Fe = /* @__PURE__ */ T(Di, [["render", Mi], ["__scopeId", "data-v-b0d1ad79
|
|
|
6676
6702
|
}
|
|
6677
6703
|
},
|
|
6678
6704
|
handleDrag(a) {
|
|
6679
|
-
var t, r, i, o,
|
|
6705
|
+
var t, r, i, o, s, n, c, d, h, p;
|
|
6680
6706
|
const e = (r = (t = a.target) == null ? void 0 : t._element) == null ? void 0 : r.id;
|
|
6681
6707
|
if ((e == null ? void 0 : e.split("-").length) === 2) {
|
|
6682
6708
|
const g = this.geojson.filter((m) => m.id === e.split("-")[0])[0];
|
|
6683
6709
|
this.pointMarkers[g.id].filter((m) => {
|
|
6684
6710
|
var v;
|
|
6685
6711
|
return ((v = m._element) == null ? void 0 : v.id) === e;
|
|
6686
|
-
})[0].setLngLat([(o = (i = a.target) == null ? void 0 : i._lngLat) == null ? void 0 : o.lng, (
|
|
6712
|
+
})[0].setLngLat([(o = (i = a.target) == null ? void 0 : i._lngLat) == null ? void 0 : o.lng, (n = (s = a.target) == null ? void 0 : s._lngLat) == null ? void 0 : n.lat]);
|
|
6687
6713
|
let y;
|
|
6688
6714
|
g.features.forEach((m, v) => {
|
|
6689
6715
|
if (m.geometry.type === "Point" && m.properties.id == e.split("-")[1]) {
|
|
@@ -6695,22 +6721,22 @@ const Fe = /* @__PURE__ */ T(Di, [["render", Mi], ["__scopeId", "data-v-b0d1ad79
|
|
|
6695
6721
|
this.handleTmpPointUpdate(
|
|
6696
6722
|
g,
|
|
6697
6723
|
f[y - 1],
|
|
6698
|
-
{ lng: (
|
|
6724
|
+
{ lng: (d = (c = a.target) == null ? void 0 : c._lngLat) == null ? void 0 : d.lng, lat: (p = (h = a.target) == null ? void 0 : h._lngLat) == null ? void 0 : p.lat, properties: f[y].properties },
|
|
6699
6725
|
y === f.length - 1 ? void 0 : f[y + 1]
|
|
6700
6726
|
);
|
|
6701
6727
|
}
|
|
6702
6728
|
},
|
|
6703
6729
|
handleDragEnd(a) {
|
|
6704
|
-
var t, r, i, o,
|
|
6730
|
+
var t, r, i, o, s, n, c, d, h, p;
|
|
6705
6731
|
const e = (r = (t = a.target) == null ? void 0 : t._element) == null ? void 0 : r.id;
|
|
6706
6732
|
if ((e == null ? void 0 : e.split("-").length) === 2) {
|
|
6707
6733
|
const g = this.geojson.filter((f) => f.id === e.split("-")[0])[0];
|
|
6708
6734
|
this.pointMarkers[g.id].filter((f) => {
|
|
6709
6735
|
var m;
|
|
6710
6736
|
return ((m = f._element) == null ? void 0 : m.id) === e;
|
|
6711
|
-
})[0].setLngLat([(o = (i = a.target) == null ? void 0 : i._lngLat) == null ? void 0 : o.lng, (
|
|
6737
|
+
})[0].setLngLat([(o = (i = a.target) == null ? void 0 : i._lngLat) == null ? void 0 : o.lng, (n = (s = a.target) == null ? void 0 : s._lngLat) == null ? void 0 : n.lat]);
|
|
6712
6738
|
const y = g.features.filter((f) => f.geometry.type === "Point" && f.properties.id == e.split("-")[1])[0];
|
|
6713
|
-
y.geometry.coordinates = [(
|
|
6739
|
+
y.geometry.coordinates = [(d = (c = a.target) == null ? void 0 : c._lngLat) == null ? void 0 : d.lng, (p = (h = a.target) == null ? void 0 : h._lngLat) == null ? void 0 : p.lat], g.features = g.features.filter((f) => f.geometry.type === "Point"), this.handlePointUpdate(g);
|
|
6714
6740
|
}
|
|
6715
6741
|
},
|
|
6716
6742
|
handleContextmenu(a) {
|
|
@@ -6718,27 +6744,27 @@ const Fe = /* @__PURE__ */ T(Di, [["render", Mi], ["__scopeId", "data-v-b0d1ad79
|
|
|
6718
6744
|
a.preventDefault(), (t = this.contextmenu) == null || t.remove();
|
|
6719
6745
|
const e = (o = (i = (r = a.originalEvent) == null ? void 0 : r.target) == null ? void 0 : i.parentElement) == null ? void 0 : o.id;
|
|
6720
6746
|
if ((e == null ? void 0 : e.split("-").length) === 2) {
|
|
6721
|
-
const
|
|
6722
|
-
if (
|
|
6723
|
-
const
|
|
6724
|
-
|
|
6747
|
+
const n = this.geojson.filter((c) => c.id === e.split("-")[0])[0].features.filter((c) => c.geometry.type === "Point");
|
|
6748
|
+
if (n.length > 2 && n.filter((d) => d.properties.id === (e == null ? void 0 : e.split("-")[1]))[0]) {
|
|
6749
|
+
const d = document.createElement("div");
|
|
6750
|
+
d.className = "point-contextmenu-marker", d.innerHTML = `<span id="del-${e}" class="del-point">Del</span>`, this.contextmenu = new te.Marker(d).setOffset([24, 0]).setLngLat([a.lngLat.lng, a.lngLat.lat]).addTo(this.map);
|
|
6725
6751
|
}
|
|
6726
6752
|
}
|
|
6727
6753
|
},
|
|
6728
6754
|
handleClick(a) {
|
|
6729
|
-
var t, r, i, o,
|
|
6755
|
+
var t, r, i, o, s;
|
|
6730
6756
|
(t = this.contextmenu) == null || t.remove();
|
|
6731
6757
|
const e = a.originalEvent.target.className;
|
|
6732
6758
|
if (e === "marker-close") {
|
|
6733
|
-
const
|
|
6734
|
-
c && this.handleClear(c, !0), this.geojson = this.geojson.filter((
|
|
6759
|
+
const n = (i = (r = a.originalEvent) == null ? void 0 : r.srcElement) == null ? void 0 : i.id, c = this.geojson.filter((d) => d.id === n)[0];
|
|
6760
|
+
c && this.handleClear(c, !0), this.geojson = this.geojson.filter((d) => d.id !== n);
|
|
6735
6761
|
} else if (e === "del-point") {
|
|
6736
|
-
const
|
|
6737
|
-
c.features = c.features.filter((
|
|
6762
|
+
const n = (s = (o = a.originalEvent.target.id) == null ? void 0 : o.replace("del-", "")) == null ? void 0 : s.split("-"), c = this.geojson.filter((d) => d.id === n[0])[0];
|
|
6763
|
+
c.features = c.features.filter((d) => d.geometry.type === "Point" && d.properties.id !== n[1]), this.handlePointUpdate(c);
|
|
6738
6764
|
} else if (e !== "marker-label") {
|
|
6739
|
-
let
|
|
6740
|
-
|
|
6741
|
-
const c =
|
|
6765
|
+
let n = this.geojson.at(-1);
|
|
6766
|
+
n || (n = L.featureCollection([], { id: (/* @__PURE__ */ new Date()).getTime().toString() }), this.geojson.push(n)), n.features = n.features.filter((d) => d.geometry.type === "Point");
|
|
6767
|
+
const c = L.feature(
|
|
6742
6768
|
{
|
|
6743
6769
|
type: "Point",
|
|
6744
6770
|
coordinates: [a.lngLat.lng, a.lngLat.lat]
|
|
@@ -6748,7 +6774,7 @@ const Fe = /* @__PURE__ */ T(Di, [["render", Mi], ["__scopeId", "data-v-b0d1ad79
|
|
|
6748
6774
|
mode: this.navigation
|
|
6749
6775
|
}
|
|
6750
6776
|
);
|
|
6751
|
-
|
|
6777
|
+
n.features.push(c), this.handlePointUpdate(n);
|
|
6752
6778
|
}
|
|
6753
6779
|
},
|
|
6754
6780
|
handlePointUpdate(a) {
|
|
@@ -6757,35 +6783,35 @@ const Fe = /* @__PURE__ */ T(Di, [["render", Mi], ["__scopeId", "data-v-b0d1ad79
|
|
|
6757
6783
|
let t = 0;
|
|
6758
6784
|
const r = [];
|
|
6759
6785
|
for (let i = 1; i < e.length; i++) {
|
|
6760
|
-
const o = e[i - 1],
|
|
6761
|
-
t = D.roundPrecision(t +
|
|
6786
|
+
const o = e[i - 1], s = e[i], n = o.properties, c = { lng: o.geometry.coordinates[0], lat: o.geometry.coordinates[1] }, d = { lng: s.geometry.coordinates[0], lat: s.geometry.coordinates[1] }, h = ee.calculateDistance(c, d, n.mode === "RL", 2), p = ee.calculateBearing(c, d, n.mode === "RL", 2);
|
|
6787
|
+
t = D.roundPrecision(t + h, 2);
|
|
6762
6788
|
let g;
|
|
6763
|
-
|
|
6764
|
-
const u =
|
|
6765
|
-
u.properties.dist =
|
|
6789
|
+
n.mode === "RL" ? g = D.convertToMonotonicLng([c, d]) : g = D.convertToMonotonicLng(ee.interpolateCoordinates(c, d, 200));
|
|
6790
|
+
const u = L.lineString(g.map((y) => [y.lng, y.lat]));
|
|
6791
|
+
u.properties.dist = h, u.properties.bearing = p, u.properties.total = t, r.push(u);
|
|
6766
6792
|
}
|
|
6767
6793
|
e.push(...r), a.total = t;
|
|
6768
6794
|
}
|
|
6769
6795
|
return this.handleRender(a), a;
|
|
6770
6796
|
},
|
|
6771
6797
|
handleTmpPointUpdate(a, e, t, r) {
|
|
6772
|
-
const i =
|
|
6773
|
-
let o,
|
|
6798
|
+
const i = L.featureCollection([]);
|
|
6799
|
+
let o, s;
|
|
6774
6800
|
if (e) {
|
|
6775
|
-
const c = e.properties,
|
|
6776
|
-
o =
|
|
6777
|
-
let
|
|
6778
|
-
c.mode === "RL" ?
|
|
6779
|
-
const g =
|
|
6780
|
-
g.properties.dist = o, g.properties.bearing =
|
|
6801
|
+
const c = e.properties, d = { lng: e.geometry.coordinates[0], lat: e.geometry.coordinates[1] }, h = { lng: t.lng, lat: t.lat };
|
|
6802
|
+
o = ee.calculateDistance(d, h, c.mode === "RL", 2), s = ee.calculateBearing(d, h, c.mode === "RL", 2);
|
|
6803
|
+
let p;
|
|
6804
|
+
c.mode === "RL" ? p = D.convertToMonotonicLng([d, h]) : p = D.convertToMonotonicLng(ee.interpolateCoordinates(d, h, 200));
|
|
6805
|
+
const g = L.lineString(p.map((u) => [u.lng, u.lat]));
|
|
6806
|
+
g.properties.dist = o, g.properties.bearing = s, i.features.push(g);
|
|
6781
6807
|
}
|
|
6782
6808
|
if (r) {
|
|
6783
|
-
const c = t.properties,
|
|
6784
|
-
o =
|
|
6785
|
-
let
|
|
6786
|
-
c.mode === "RL" ?
|
|
6787
|
-
const g =
|
|
6788
|
-
g.properties.dist = o, g.properties.bearing =
|
|
6809
|
+
const c = t.properties, d = t, h = { lng: r.geometry.coordinates[0], lat: r.geometry.coordinates[1] };
|
|
6810
|
+
o = ee.calculateDistance(d, h, c.mode === "RL", 2), s = ee.calculateBearing(d, h, c.mode === "RL", 2);
|
|
6811
|
+
let p;
|
|
6812
|
+
c.mode === "RL" ? p = D.convertToMonotonicLng([d, h]) : p = D.convertToMonotonicLng(ee.interpolateCoordinates(d, h, 200));
|
|
6813
|
+
const g = L.lineString(p.map((u) => [u.lng, u.lat]));
|
|
6814
|
+
g.properties.dist = o, g.properties.bearing = s, i.features.push(g);
|
|
6789
6815
|
}
|
|
6790
6816
|
this.map.getSource(this.tmpSource) ? this.map.getSource(this.tmpSource).setData(i) : this.map.addSource(this.tmpSource, {
|
|
6791
6817
|
type: "geojson",
|
|
@@ -6824,25 +6850,25 @@ const Fe = /* @__PURE__ */ T(Di, [["render", Mi], ["__scopeId", "data-v-b0d1ad79
|
|
|
6824
6850
|
"text-halo-blur": 0
|
|
6825
6851
|
}
|
|
6826
6852
|
});
|
|
6827
|
-
let
|
|
6828
|
-
if (r ?
|
|
6829
|
-
this.tipMarker._element.innerHTML =
|
|
6853
|
+
let n;
|
|
6854
|
+
if (r ? n = '<div class="marker-label">Drag and drop</div>' : n = `<div class="marker-label">Tol distance: <b>${D.roundPrecision((a.total ?? 0) + o, 2)}</b>nm, bearing: <b>${s}</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)
|
|
6855
|
+
this.tipMarker._element.innerHTML = n, this.tipMarker.setLngLat([t.lng, t.lat]);
|
|
6830
6856
|
else {
|
|
6831
6857
|
const c = document.createElement("div");
|
|
6832
|
-
c.className = "tip-marker", c.innerHTML =
|
|
6858
|
+
c.className = "tip-marker", c.innerHTML = n, this.tipMarker = new te.Marker(c).setOffset([140, 0]).setLngLat([t.lng, t.lat]).addTo(this.map);
|
|
6833
6859
|
}
|
|
6834
6860
|
},
|
|
6835
6861
|
handleMove(a) {
|
|
6836
6862
|
this.map.getCanvas().style.cursor = "crosshair";
|
|
6837
6863
|
let e = this.geojson.at(-1);
|
|
6838
|
-
e || (e =
|
|
6864
|
+
e || (e = L.featureCollection([], { id: (/* @__PURE__ */ new Date()).getTime().toString() }), this.geojson.push(e));
|
|
6839
6865
|
const t = e.features.filter((r) => r.geometry.type === "Point");
|
|
6840
6866
|
t != null && t.length && this.handleTmpPointUpdate(e, t.at(-1), { lng: a.lngLat.lng, lat: a.lngLat.lat });
|
|
6841
6867
|
},
|
|
6842
6868
|
handleDblClick(a) {
|
|
6843
6869
|
a.preventDefault();
|
|
6844
6870
|
let e = this.geojson.at(-1);
|
|
6845
|
-
e.closed = !0, this.handleRender(e), e =
|
|
6871
|
+
e.closed = !0, this.handleRender(e), e = L.featureCollection([], { id: (/* @__PURE__ */ new Date()).getTime().toString() }), this.geojson.push(e);
|
|
6846
6872
|
},
|
|
6847
6873
|
handleRender(a) {
|
|
6848
6874
|
var e;
|
|
@@ -6883,33 +6909,33 @@ const Fe = /* @__PURE__ */ T(Di, [["render", Mi], ["__scopeId", "data-v-b0d1ad79
|
|
|
6883
6909
|
"text-halo-blur": 0
|
|
6884
6910
|
}
|
|
6885
6911
|
});
|
|
6886
|
-
const o = a.features.filter((
|
|
6887
|
-
for (const
|
|
6888
|
-
const
|
|
6889
|
-
|
|
6890
|
-
const c = new
|
|
6912
|
+
const o = a.features.filter((s) => s.geometry.type === "Point");
|
|
6913
|
+
for (const s of o) {
|
|
6914
|
+
const n = document.createElement("div");
|
|
6915
|
+
n.id = `${a.id}-${s.properties.id}`, n.className = `${a.closed ? "point-marker closed" : "point-marker"}`, n.innerHTML = '<div class="marker-circle"></div>';
|
|
6916
|
+
const c = new te.Marker({ element: n, draggable: !0, contextmenu: !0 }).setLngLat(s.geometry.coordinates).addTo(this.map);
|
|
6891
6917
|
c.on("drag", this.handleDrag), c.on("dragend", this.handleDragEnd), this.pointMarkers[a.id] ? this.pointMarkers[a.id].push(c) : this.pointMarkers[a.id] = [c];
|
|
6892
6918
|
}
|
|
6893
6919
|
if (a.closed) {
|
|
6894
|
-
const
|
|
6895
|
-
|
|
6920
|
+
const s = o.at(-1), c = a.features.filter((h) => h.geometry.type === "LineString").at(-1), d = document.createElement("div");
|
|
6921
|
+
d.className = "point-summary-marker", d.innerHTML = `<div id="${a.id}" class="marker-close">×</div><div class="marker-label">Tol: ${c.properties.total}nm</div>`, this.closeMarkers[a.id] = new te.Marker(d).setOffset([60, 0]).setLngLat(s.geometry.coordinates).addTo(this.map);
|
|
6896
6922
|
}
|
|
6897
6923
|
}
|
|
6898
6924
|
},
|
|
6899
6925
|
handleClear(a, e = !0) {
|
|
6900
|
-
var o,
|
|
6926
|
+
var o, s, n, c, d, h, p, g, u;
|
|
6901
6927
|
const t = `${a.id}-${this.source}`, r = `${a.id}-${this.layer}`, i = `${a.id}-${this.labelLayer}`;
|
|
6902
|
-
(o = this.map) != null && o.getLayer(r) && this.map.removeLayer(r), (
|
|
6928
|
+
(o = this.map) != null && o.getLayer(r) && this.map.removeLayer(r), (s = this.map) != null && s.getLayer(i) && this.map.removeLayer(i), (n = this.map) != null && n.getLayer(this.tmpLayer) && this.map.removeLayer(this.tmpLayer), (c = this.map) != null && c.getLayer(this.tmpLabelLayer) && this.map.removeLayer(this.tmpLabelLayer), (d = this.closeMarkers[a.id]) == null || d.remove(), this.closeMarkers[a.id] = void 0, (h = this.pointMarkers[a.id]) == null || h.forEach((y) => {
|
|
6903
6929
|
y == null || y.remove();
|
|
6904
|
-
}), this.pointMarkers[a.id] = [], (
|
|
6930
|
+
}), this.pointMarkers[a.id] = [], (p = this.tipMarker) == null || p.remove(), this.tipMarker = void 0, e && ((g = this.map) != null && g.getSource(t)) && this.map.removeSource(t), e && ((u = this.map) != null && u.getSource(this.tmpSource)) && this.map.removeSource(this.tmpSource);
|
|
6905
6931
|
}
|
|
6906
6932
|
}
|
|
6907
6933
|
};
|
|
6908
|
-
function
|
|
6909
|
-
return x(),
|
|
6934
|
+
function Vo(a, e, t, r, i, o) {
|
|
6935
|
+
return x(), C("div");
|
|
6910
6936
|
}
|
|
6911
|
-
const
|
|
6912
|
-
const
|
|
6937
|
+
const Uo = /* @__PURE__ */ T(Fo, [["render", Vo]]);
|
|
6938
|
+
const Zo = {
|
|
6913
6939
|
name: "IdmENC",
|
|
6914
6940
|
props: {
|
|
6915
6941
|
map: {
|
|
@@ -6940,8 +6966,8 @@ const Wi = {
|
|
|
6940
6966
|
emits: ["enc"],
|
|
6941
6967
|
data() {
|
|
6942
6968
|
return {
|
|
6943
|
-
helper:
|
|
6944
|
-
vendor: this.$attrs.permission &
|
|
6969
|
+
helper: De,
|
|
6970
|
+
vendor: this.$attrs.permission & De.LEVEL.Supper ? "hi" : "i4",
|
|
6945
6971
|
right: 10
|
|
6946
6972
|
};
|
|
6947
6973
|
},
|
|
@@ -6961,64 +6987,64 @@ const Wi = {
|
|
|
6961
6987
|
}
|
|
6962
6988
|
},
|
|
6963
6989
|
methods: {}
|
|
6964
|
-
},
|
|
6965
|
-
|
|
6966
|
-
|
|
6990
|
+
}, tt = (a) => (H("data-v-cda8e470"), a = a(), G(), a), Ho = { key: 0 }, Go = { class: "bar-item" }, Jo = /* @__PURE__ */ tt(() => /* @__PURE__ */ l("span", { class: "iconfont" }, "HI", -1)), Xo = [
|
|
6991
|
+
Jo
|
|
6992
|
+
], Yo = /* @__PURE__ */ tt(() => /* @__PURE__ */ l("span", { class: "iconfont" }, "I4", -1)), qo = [
|
|
6993
|
+
Yo
|
|
6994
|
+
];
|
|
6995
|
+
function Qo(a, e, t, r, i, o) {
|
|
6996
|
+
return t.enabled && t.permission & i.helper.LEVEL.Supper ? (x(), C("div", Ho, [
|
|
6967
6997
|
l("div", {
|
|
6968
6998
|
class: "menu-bar-box",
|
|
6969
|
-
style:
|
|
6999
|
+
style: U({ position: "absolute", right: i.right + "px", bottom: t.bottom })
|
|
6970
7000
|
}, [
|
|
6971
|
-
l("div",
|
|
7001
|
+
l("div", Go, [
|
|
6972
7002
|
l("div", {
|
|
6973
7003
|
class: j(i.vendor === "hi" ? "menu-icon active" : "menu-icon"),
|
|
6974
|
-
onClick: e[0] || (e[0] = (
|
|
6975
|
-
},
|
|
6976
|
-
l("span", { class: "iconfont" }, "HI", -1)
|
|
6977
|
-
]), 2),
|
|
7004
|
+
onClick: e[0] || (e[0] = (s) => i.vendor = "hi")
|
|
7005
|
+
}, Xo, 2),
|
|
6978
7006
|
l("div", {
|
|
6979
7007
|
class: j(i.vendor === "i4" ? "menu-icon active" : "menu-icon"),
|
|
6980
|
-
onClick: e[1] || (e[1] = (
|
|
6981
|
-
},
|
|
6982
|
-
l("span", { class: "iconfont" }, "I4", -1)
|
|
6983
|
-
]), 2)
|
|
7008
|
+
onClick: e[1] || (e[1] = (s) => i.vendor = "i4")
|
|
7009
|
+
}, qo, 2)
|
|
6984
7010
|
])
|
|
6985
7011
|
], 4)
|
|
6986
7012
|
])) : B("", !0);
|
|
6987
7013
|
}
|
|
6988
|
-
const
|
|
6989
|
-
const
|
|
7014
|
+
const Ko = /* @__PURE__ */ T(Zo, [["render", Qo], ["__scopeId", "data-v-cda8e470"]]);
|
|
7015
|
+
const es = {
|
|
6990
7016
|
name: "IdmGLV2",
|
|
6991
7017
|
components: {
|
|
6992
|
-
IdmGlLayer:
|
|
6993
|
-
IdmWindBarb:
|
|
6994
|
-
IdmWindParticle:
|
|
6995
|
-
IdmCurrents:
|
|
6996
|
-
IdmCurrentParticle:
|
|
6997
|
-
IdmSigWave:
|
|
6998
|
-
IdmSwell:
|
|
6999
|
-
IdmPrmsl:
|
|
7018
|
+
IdmGlLayer: Zt,
|
|
7019
|
+
IdmWindBarb: ta,
|
|
7020
|
+
IdmWindParticle: ya,
|
|
7021
|
+
IdmCurrents: ka,
|
|
7022
|
+
IdmCurrentParticle: ja,
|
|
7023
|
+
IdmSigWave: Wa,
|
|
7024
|
+
IdmSwell: Va,
|
|
7025
|
+
IdmPrmsl: Ha,
|
|
7000
7026
|
// IdmIceEdge,
|
|
7001
|
-
IdmIceberg:
|
|
7002
|
-
IdmTropicals:
|
|
7003
|
-
IdmPrecip3h:
|
|
7004
|
-
IdmVisibility:
|
|
7005
|
-
IdmWaterTemp:
|
|
7006
|
-
IdmTemp:
|
|
7007
|
-
IdmArctic:
|
|
7008
|
-
IdmWarZone:
|
|
7009
|
-
IdmGmdssArea:
|
|
7010
|
-
IdmEcaZone:
|
|
7011
|
-
IdmAlertZone:
|
|
7012
|
-
IdmPort:
|
|
7013
|
-
IdmLoadLine:
|
|
7014
|
-
IdmTimezone:
|
|
7015
|
-
IdmVRA:
|
|
7016
|
-
IdmSpecialArea:
|
|
7017
|
-
IdmTerminator:
|
|
7018
|
-
IdmLatLng:
|
|
7019
|
-
IdmMeasure:
|
|
7020
|
-
IdmPoint:
|
|
7021
|
-
IdmENC:
|
|
7027
|
+
IdmIceberg: Xa,
|
|
7028
|
+
IdmTropicals: Ke,
|
|
7029
|
+
IdmPrecip3h: Ti,
|
|
7030
|
+
IdmVisibility: Wi,
|
|
7031
|
+
IdmWaterTemp: qi,
|
|
7032
|
+
IdmTemp: hr,
|
|
7033
|
+
IdmArctic: _r,
|
|
7034
|
+
IdmWarZone: qr,
|
|
7035
|
+
IdmGmdssArea: eo,
|
|
7036
|
+
IdmEcaZone: io,
|
|
7037
|
+
IdmAlertZone: lo,
|
|
7038
|
+
IdmPort: Lo,
|
|
7039
|
+
IdmLoadLine: ko,
|
|
7040
|
+
IdmTimezone: Po,
|
|
7041
|
+
IdmVRA: Eo,
|
|
7042
|
+
IdmSpecialArea: Do,
|
|
7043
|
+
IdmTerminator: jo,
|
|
7044
|
+
IdmLatLng: et,
|
|
7045
|
+
IdmMeasure: Uo,
|
|
7046
|
+
IdmPoint: Jr,
|
|
7047
|
+
IdmENC: Ko
|
|
7022
7048
|
},
|
|
7023
7049
|
props: {
|
|
7024
7050
|
map: {
|
|
@@ -7065,7 +7091,7 @@ const Ui = {
|
|
|
7065
7091
|
enc: "",
|
|
7066
7092
|
// enc: 'i4',
|
|
7067
7093
|
defaultMeteoToken: "eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9.eyJpZCI6ImNseTVudHJzYzAwNWUwbHBsZHkyaDRqczMiLCJyb2xlIjoxLCJuYW1lIjoiZmFrZUBvcm13eC5jb20iLCJwbGF0SWQiOiJnZDBtdDFkIiwiY29tcGFueSI6eyJpZCI6bnVsbCwiY2hpbGRyZW4iOltdfSwiaWF0IjoxNzIzMDI0MDI0LCJleHAiOjM5MzA1NDQwMjR9.RrKcdcMnq-FxBLJQ-i6lx2FscDE46y8EvHIemPW4HTg",
|
|
7068
|
-
helper: new
|
|
7094
|
+
helper: new aa()
|
|
7069
7095
|
};
|
|
7070
7096
|
},
|
|
7071
7097
|
watch: {
|
|
@@ -7079,22 +7105,22 @@ const Ui = {
|
|
|
7079
7105
|
},
|
|
7080
7106
|
map: {
|
|
7081
7107
|
handler() {
|
|
7082
|
-
this.map && (this.map.on("zoomend", this.handleDragEndWithZoom4Json), this.map.on("dragend", this.handleDragEndWithZoom4Json), this.map.on("move", this.handleDragEndWithZoom4Image), this.viewport = new
|
|
7108
|
+
this.map && (this.map.on("zoomend", this.handleDragEndWithZoom4Json), this.map.on("dragend", this.handleDragEndWithZoom4Json), this.map.on("move", this.handleDragEndWithZoom4Image), this.viewport = new Ve(this.map), this.handleRampColorInitial());
|
|
7083
7109
|
},
|
|
7084
7110
|
immediate: !0
|
|
7085
7111
|
},
|
|
7086
7112
|
enc: {
|
|
7087
7113
|
handler(a, e) {
|
|
7088
|
-
var t, r, i, o,
|
|
7089
|
-
a ? ((r = (t = this.map) == null ? void 0 : t.getLayer(a)) == null || r.setLayoutProperty("visibility", "visible"), (o = (i = this.map) == null ? void 0 : i.getLayer(e)) == null || o.setLayoutProperty("visibility", "none")) : ((
|
|
7114
|
+
var t, r, i, o, s, n, c, d;
|
|
7115
|
+
a ? ((r = (t = this.map) == null ? void 0 : t.getLayer(a)) == null || r.setLayoutProperty("visibility", "visible"), (o = (i = this.map) == null ? void 0 : i.getLayer(e)) == null || o.setLayoutProperty("visibility", "none")) : ((n = (s = this.map) == null ? void 0 : s.getLayer("i4")) == null || n.setLayoutProperty("visibility", "none"), (d = (c = this.map) == null ? void 0 : c.getLayer("hi")) == null || d.setLayoutProperty("visibility", "none"));
|
|
7090
7116
|
}
|
|
7091
7117
|
},
|
|
7092
7118
|
activeWeatherLayers: {
|
|
7093
7119
|
handler() {
|
|
7094
|
-
var a, e, t, r, i, o,
|
|
7120
|
+
var a, e, t, r, i, o, s, n, c, d, h, p, g, u, y, f, m, v;
|
|
7095
7121
|
if (!this.map)
|
|
7096
7122
|
return !1;
|
|
7097
|
-
this.activeWeatherLayers.length > 0 ? ((e = (a = this.map) == null ? void 0 : a.getLayer(this.enc)) == null || e.setLayoutProperty("visibility", "none"), (r = (t = this.map) == null ? void 0 : t.getLayer(this.helper.mapboxCustomer.layers.countryBoundary.id)) == null || r.setLayoutProperty("visibility", "visible"), (o = this.map) != null && o.getLayer((i = this.viewport) == null ? void 0 : i.rampColorLayer) && ((
|
|
7123
|
+
this.activeWeatherLayers.length > 0 ? ((e = (a = this.map) == null ? void 0 : a.getLayer(this.enc)) == null || e.setLayoutProperty("visibility", "none"), (r = (t = this.map) == null ? void 0 : t.getLayer(this.helper.mapboxCustomer.layers.countryBoundary.id)) == null || r.setLayoutProperty("visibility", "visible"), (o = this.map) != null && o.getLayer((i = this.viewport) == null ? void 0 : i.rampColorLayer) && ((s = this.map) != null && s.getLayer(this.helper.mapboxCustomer.layers.countryBoundary.id)) && this.mapProjection === "mercator" && ((c = this.map) == null || c.moveLayer((n = this.viewport) == null ? void 0 : n.rampColorLayer, this.helper.mapboxCustomer.layers.countryBoundary.id)), (h = this.map) != null && h.getLayer((d = this.viewport) == null ? void 0 : d.particleLayer) && ((p = this.map) != null && p.getLayer(this.helper.mapboxCustomer.layers.countryBoundary.id)) && this.mapProjection === "mercator" && ((u = this.map) == null || u.moveLayer((g = this.viewport) == null ? void 0 : g.particleLayer, this.helper.mapboxCustomer.layers.countryBoundary.id))) : ((f = (y = this.map) == null ? void 0 : y.getLayer(this.enc)) == null || f.setLayoutProperty("visibility", "visible"), (v = (m = this.map) == null ? void 0 : m.getLayer(this.helper.mapboxCustomer.layers.countryBoundary.id)) == null || v.setLayoutProperty("visibility", "none"));
|
|
7098
7124
|
},
|
|
7099
7125
|
immediate: !0
|
|
7100
7126
|
}
|
|
@@ -7141,13 +7167,13 @@ const Ui = {
|
|
|
7141
7167
|
},
|
|
7142
7168
|
methods: {
|
|
7143
7169
|
async fetchWeatherLayers(a = { tropicals: !1 }) {
|
|
7144
|
-
var i, o,
|
|
7170
|
+
var i, o, s, n, c, d, h, p;
|
|
7145
7171
|
const e = (/* @__PURE__ */ new Date()).valueOf();
|
|
7146
7172
|
let t = 0, r = 0;
|
|
7147
7173
|
if (this.map) {
|
|
7148
7174
|
const g = ((i = this.map) == null ? void 0 : i.getZoom()) + 1, u = (o = this.map) == null ? void 0 : o.getBounds(), y = `${u._sw.lng},${u._sw.lat},${u._ne.lng},${u._ne.lat}`;
|
|
7149
7175
|
if (this.handleRampColorState(), this.particleFactor) {
|
|
7150
|
-
const f =
|
|
7176
|
+
const f = Me.WEATHER_LAYERS.find((m) => {
|
|
7151
7177
|
var v;
|
|
7152
7178
|
return ((v = m.peer) == null ? void 0 : v.weight) === this.particleFactor.weight;
|
|
7153
7179
|
});
|
|
@@ -7156,16 +7182,16 @@ const Ui = {
|
|
|
7156
7182
|
if (this.weatherWeight > 0) {
|
|
7157
7183
|
let f = this.weatherWeight, m;
|
|
7158
7184
|
if (a.tropicals || this.weatherWeight & 256 && (m = this.weatherLayers.tropicals, m && (f -= 256, m.version = Math.random() + 1)), f > 0) {
|
|
7159
|
-
const v = await
|
|
7185
|
+
const v = await ne.get(`${this.gateway}/api/arc/weather/layers/links?l=${f}&v=${this.source}&z=${g}&bbox=${y}&t=${this.ts}`, {
|
|
7160
7186
|
headers: {
|
|
7161
7187
|
Authorization: this.token || this.defaultMeteoToken
|
|
7162
7188
|
}
|
|
7163
7189
|
});
|
|
7164
|
-
if (r = (/* @__PURE__ */ new Date()).valueOf() - (e + t), console.log("weather links elapsed: ", r, ", total: ", t += r), ((
|
|
7165
|
-
const b = (
|
|
7190
|
+
if (r = (/* @__PURE__ */ new Date()).valueOf() - (e + t), console.log("weather links elapsed: ", r, ", total: ", t += r), ((s = v == null ? void 0 : v.data) == null ? void 0 : s.code) === 0) {
|
|
7191
|
+
const b = (n = v == null ? void 0 : v.data) == null ? void 0 : n.data, _ = [];
|
|
7166
7192
|
for (const w in b)
|
|
7167
|
-
w === "ice-edge" && (b[w] = "https://idm-hz.oss-cn-hangzhou.aliyuncs.com/test/sea_ice_contours.geojson"), w !== "tropicals" &&
|
|
7168
|
-
|
|
7193
|
+
w === "ice-edge" && (b[w] = "https://idm-hz.oss-cn-hangzhou.aliyuncs.com/test/sea_ice_contours.geojson"), w !== "tropicals" && _.push(
|
|
7194
|
+
ne.get(b[w], {
|
|
7169
7195
|
headers: {
|
|
7170
7196
|
Authorization: this.token || this.defaultMeteoToken,
|
|
7171
7197
|
key: w
|
|
@@ -7175,23 +7201,23 @@ const Ui = {
|
|
|
7175
7201
|
console.log(`[${w}] fetch layer error: ${A}`);
|
|
7176
7202
|
})
|
|
7177
7203
|
);
|
|
7178
|
-
const
|
|
7179
|
-
this.weatherLayers = {},
|
|
7180
|
-
var
|
|
7181
|
-
const A = ((
|
|
7204
|
+
const z = await Promise.all(_);
|
|
7205
|
+
this.weatherLayers = {}, z.map((w) => {
|
|
7206
|
+
var $, W, O, J;
|
|
7207
|
+
const A = (($ = w == null ? void 0 : w.data) == null ? void 0 : $.data) || (w == null ? void 0 : w.data), M = (O = (W = w == null ? void 0 : w.config) == null ? void 0 : W.headers) == null ? void 0 : O.key;
|
|
7182
7208
|
M && A && (this.weatherLayers[M] = {
|
|
7183
7209
|
raw: A,
|
|
7184
|
-
type: ((
|
|
7210
|
+
type: ((J = w == null ? void 0 : w.config) == null ? void 0 : J.responseType) === "blob" ? "image" : "json",
|
|
7185
7211
|
etime: this.ts
|
|
7186
7212
|
});
|
|
7187
|
-
}), b.tropicals &&
|
|
7213
|
+
}), b.tropicals && ne.get(b.tropicals, {
|
|
7188
7214
|
headers: {
|
|
7189
7215
|
Authorization: this.token || this.defaultMeteoToken,
|
|
7190
7216
|
key: "tropicals"
|
|
7191
7217
|
}
|
|
7192
7218
|
}).then((w) => {
|
|
7193
|
-
var
|
|
7194
|
-
const A =
|
|
7219
|
+
var $, W, O;
|
|
7220
|
+
const A = Qe.convert2Geojson((($ = w == null ? void 0 : w.data) == null ? void 0 : $.data) || (w == null ? void 0 : w.data)), M = (O = (W = w == null ? void 0 : w.config) == null ? void 0 : W.headers) == null ? void 0 : O.key;
|
|
7195
7221
|
this.weatherLayers[M] = {
|
|
7196
7222
|
data: A,
|
|
7197
7223
|
active: !0,
|
|
@@ -7203,20 +7229,20 @@ const Ui = {
|
|
|
7203
7229
|
});
|
|
7204
7230
|
}
|
|
7205
7231
|
if (r = (/* @__PURE__ */ new Date()).valueOf() - (e + t), console.log("weather layers elapsed: ", r, ", total: ", t += r), this.weatherLayers["swell-direction"] || this.weatherLayers["swell-height"]) {
|
|
7206
|
-
const b = (c = this.weatherLayers["swell-direction"]) == null ? void 0 : c.raw,
|
|
7232
|
+
const b = (c = this.weatherLayers["swell-direction"]) == null ? void 0 : c.raw, _ = (d = this.weatherLayers["swell-height"]) == null ? void 0 : d.raw;
|
|
7207
7233
|
delete this.weatherLayers["swell-direction"], delete this.weatherLayers["swell-height"], this.weatherLayers.swell = {
|
|
7208
7234
|
type: "json",
|
|
7209
7235
|
direction: b,
|
|
7210
|
-
height: { raw:
|
|
7236
|
+
height: { raw: _ },
|
|
7211
7237
|
etime: this.ts
|
|
7212
7238
|
};
|
|
7213
7239
|
}
|
|
7214
7240
|
if (this.weatherLayers["current-direction"] || this.weatherLayers["current-speed"]) {
|
|
7215
|
-
const b = (
|
|
7241
|
+
const b = (h = this.weatherLayers["current-direction"]) == null ? void 0 : h.raw, _ = (p = this.weatherLayers["current-speed"]) == null ? void 0 : p.raw;
|
|
7216
7242
|
delete this.weatherLayers["current-direction"], delete this.weatherLayers["current-speed"], this.weatherLayers.current = {
|
|
7217
7243
|
type: "json",
|
|
7218
7244
|
direction: b,
|
|
7219
|
-
speed: { raw:
|
|
7245
|
+
speed: { raw: _ },
|
|
7220
7246
|
etime: this.ts
|
|
7221
7247
|
};
|
|
7222
7248
|
}
|
|
@@ -7232,58 +7258,58 @@ const Ui = {
|
|
|
7232
7258
|
if (this.map) {
|
|
7233
7259
|
let o = this.otherWeight;
|
|
7234
7260
|
if (o) {
|
|
7235
|
-
let
|
|
7236
|
-
if (this.otherWeight & 2048 && (o = this.otherWeight - 2048,
|
|
7261
|
+
let s = !1;
|
|
7262
|
+
if (this.otherWeight & 2048 && (o = this.otherWeight - 2048, s = !0), o) {
|
|
7237
7263
|
if (a.all) {
|
|
7238
|
-
const
|
|
7264
|
+
const n = await ne.get(`${this.gateway}/api/arc/other/layers/links?l=${o}&t=${this.ts}`, {
|
|
7239
7265
|
headers: {
|
|
7240
7266
|
Authorization: this.token || this.defaultMeteoToken
|
|
7241
7267
|
}
|
|
7242
7268
|
});
|
|
7243
|
-
if (((e =
|
|
7244
|
-
const c = (t =
|
|
7245
|
-
for (const
|
|
7246
|
-
|
|
7247
|
-
|
|
7269
|
+
if (((e = n == null ? void 0 : n.data) == null ? void 0 : e.code) === 0) {
|
|
7270
|
+
const c = (t = n == null ? void 0 : n.data) == null ? void 0 : t.data, d = [];
|
|
7271
|
+
for (const p in c)
|
|
7272
|
+
d.push(
|
|
7273
|
+
ne.get(c[p], {
|
|
7248
7274
|
headers: {
|
|
7249
7275
|
Authorization: this.token || this.defaultMeteoToken,
|
|
7250
|
-
key:
|
|
7276
|
+
key: p
|
|
7251
7277
|
}
|
|
7252
7278
|
})
|
|
7253
7279
|
);
|
|
7254
|
-
const
|
|
7255
|
-
this.otherLayers = { enc:
|
|
7280
|
+
const h = await Promise.all(d);
|
|
7281
|
+
this.otherLayers = { enc: s }, h.map((p) => {
|
|
7256
7282
|
var y, f, m;
|
|
7257
|
-
const g = ((y =
|
|
7283
|
+
const g = ((y = p == null ? void 0 : p.data) == null ? void 0 : y.data) || (p == null ? void 0 : p.data), u = (m = (f = p == null ? void 0 : p.config) == null ? void 0 : f.headers) == null ? void 0 : m.key;
|
|
7258
7284
|
this.otherLayers[u] = g;
|
|
7259
7285
|
});
|
|
7260
7286
|
}
|
|
7261
7287
|
} else if (a.dayNight && o & 1024) {
|
|
7262
|
-
const
|
|
7288
|
+
const n = await ne.get(`${this.gateway}/api/arc/other/layers/links?l=1024&t=${this.ts}`, {
|
|
7263
7289
|
headers: {
|
|
7264
7290
|
Authorization: this.token || this.defaultMeteoToken
|
|
7265
7291
|
}
|
|
7266
7292
|
});
|
|
7267
|
-
if (((r =
|
|
7268
|
-
const c = (i =
|
|
7269
|
-
for (const
|
|
7270
|
-
|
|
7271
|
-
|
|
7293
|
+
if (((r = n == null ? void 0 : n.data) == null ? void 0 : r.code) === 0) {
|
|
7294
|
+
const c = (i = n == null ? void 0 : n.data) == null ? void 0 : i.data, d = [];
|
|
7295
|
+
for (const p in c)
|
|
7296
|
+
d.push(
|
|
7297
|
+
ne.get(c[p], {
|
|
7272
7298
|
headers: {
|
|
7273
7299
|
Authorization: this.token || this.defaultMeteoToken,
|
|
7274
|
-
key:
|
|
7300
|
+
key: p
|
|
7275
7301
|
}
|
|
7276
7302
|
})
|
|
7277
7303
|
);
|
|
7278
|
-
(await Promise.all(
|
|
7304
|
+
(await Promise.all(d)).map((p) => {
|
|
7279
7305
|
var y, f, m;
|
|
7280
|
-
const g = ((y =
|
|
7306
|
+
const g = ((y = p == null ? void 0 : p.data) == null ? void 0 : y.data) || (p == null ? void 0 : p.data), u = (m = (f = p == null ? void 0 : p.config) == null ? void 0 : f.headers) == null ? void 0 : m.key;
|
|
7281
7307
|
this.otherLayers[u] = g;
|
|
7282
7308
|
});
|
|
7283
7309
|
}
|
|
7284
7310
|
}
|
|
7285
7311
|
} else
|
|
7286
|
-
this.otherLayers = { enc:
|
|
7312
|
+
this.otherLayers = { enc: s };
|
|
7287
7313
|
} else
|
|
7288
7314
|
this.otherLayers = {};
|
|
7289
7315
|
this.handleBeforeLayerToggle();
|
|
@@ -7299,7 +7325,7 @@ const Ui = {
|
|
|
7299
7325
|
this.activeWindLayer = !!this.activeWeatherLayers.find((e) => e.key === "wind"), this.$refs.layer && (this.$refs.layer.activeWeatherLayers = this.activeWeatherLayers);
|
|
7300
7326
|
},
|
|
7301
7327
|
handleRampColorInitial() {
|
|
7302
|
-
var a, e, t, r, i, o,
|
|
7328
|
+
var a, e, t, r, i, o, s, n, c, d, h, p;
|
|
7303
7329
|
this.viewport.map.getSource((a = this.viewport) == null ? void 0 : a.rampColorSource) || this.viewport.map.addSource((e = this.viewport) == null ? void 0 : e.rampColorSource, {
|
|
7304
7330
|
type: "canvas",
|
|
7305
7331
|
canvas: (t = this.viewport) == null ? void 0 : t.rampColorCanvas,
|
|
@@ -7315,16 +7341,16 @@ const Ui = {
|
|
|
7315
7341
|
}
|
|
7316
7342
|
},
|
|
7317
7343
|
this.beforeLayer
|
|
7318
|
-
), this.viewport.map.getSource((
|
|
7344
|
+
), this.viewport.map.getSource((s = this.viewport) == null ? void 0 : s.particleSource) || this.viewport.map.addSource((n = this.viewport) == null ? void 0 : n.particleSource, {
|
|
7319
7345
|
type: "canvas",
|
|
7320
7346
|
canvas: (c = this.viewport) == null ? void 0 : c.particleCanvas,
|
|
7321
7347
|
animate: !0,
|
|
7322
7348
|
coordinates: this.viewport.getBoundLngLat()
|
|
7323
|
-
}), this.viewport.map.getLayer((
|
|
7349
|
+
}), this.viewport.map.getLayer((d = this.viewport) == null ? void 0 : d.particleLayer) || this.viewport.map.addLayer(
|
|
7324
7350
|
{
|
|
7325
7351
|
type: "raster",
|
|
7326
|
-
id: (
|
|
7327
|
-
source: (
|
|
7352
|
+
id: (h = this.viewport) == null ? void 0 : h.particleLayer,
|
|
7353
|
+
source: (p = this.viewport) == null ? void 0 : p.particleSource,
|
|
7328
7354
|
layout: {
|
|
7329
7355
|
visibility: "none"
|
|
7330
7356
|
}
|
|
@@ -7333,34 +7359,34 @@ const Ui = {
|
|
|
7333
7359
|
);
|
|
7334
7360
|
},
|
|
7335
7361
|
handleDragEndWithZoom4Json() {
|
|
7336
|
-
var h, p,
|
|
7362
|
+
var d, h, p, g;
|
|
7337
7363
|
const a = (/* @__PURE__ */ new Date()).valueOf();
|
|
7338
7364
|
let e = 0, t = 0;
|
|
7339
|
-
const r = (
|
|
7365
|
+
const r = (d = this.map) == null ? void 0 : d.getBounds(), i = this.map.getZoom(), o = D.convertToStdLng(r._sw.lng), s = D.convertToStdLng(r._ne.lng), n = Math.floor(r._sw.lat), c = Math.ceil(r._ne.lat);
|
|
7340
7366
|
for (const u in this.weatherLayers)
|
|
7341
7367
|
if (this.weatherLayers[u].active && this.weatherLayers[u].type === "json") {
|
|
7342
7368
|
this.weatherLayers[u].active = !1, this.weatherLayers[u].version = Math.random() + 1;
|
|
7343
7369
|
let y = [];
|
|
7344
7370
|
if (["swell", "current"].includes(u)) {
|
|
7345
|
-
const f = ((
|
|
7371
|
+
const f = ((h = this.weatherLayers[u]) == null ? void 0 : h.direction) || {};
|
|
7346
7372
|
for (const m in f)
|
|
7347
|
-
if (m >
|
|
7373
|
+
if (m > n && m < c && (!(i <= this.zoom) || m % (i < this.zoom / 2 ? 5 : 3) === 0)) {
|
|
7348
7374
|
const v = f[m].lng;
|
|
7349
|
-
o >
|
|
7350
|
-
var
|
|
7351
|
-
if ((b >= o && b <= 180 || b >= -180 && b <=
|
|
7352
|
-
const w =
|
|
7353
|
-
val: f[m].val[
|
|
7354
|
-
spd: (
|
|
7375
|
+
o > s ? v.forEach((b, _) => {
|
|
7376
|
+
var z;
|
|
7377
|
+
if ((b >= o && b <= 180 || b >= -180 && b <= s) && (!(i <= this.zoom) || b % (i < this.zoom / 2 ? 5 : 3) === 0)) {
|
|
7378
|
+
const w = L.point([b, m], {
|
|
7379
|
+
val: f[m].val[_],
|
|
7380
|
+
spd: (z = f[m].spd) == null ? void 0 : z[_]
|
|
7355
7381
|
});
|
|
7356
7382
|
y.push(w);
|
|
7357
7383
|
}
|
|
7358
|
-
}) : v.forEach((b,
|
|
7359
|
-
var
|
|
7360
|
-
if (b >= o && b <=
|
|
7361
|
-
const w =
|
|
7362
|
-
val: f[m].val[
|
|
7363
|
-
spd: (
|
|
7384
|
+
}) : v.forEach((b, _) => {
|
|
7385
|
+
var z;
|
|
7386
|
+
if (b >= o && b <= s && (!(i <= this.zoom) || b % (i < this.zoom / 2 ? 5 : 3) === 0)) {
|
|
7387
|
+
const w = L.point([b, m], {
|
|
7388
|
+
val: f[m].val[_],
|
|
7389
|
+
spd: (z = f[m].spd) == null ? void 0 : z[_]
|
|
7364
7390
|
});
|
|
7365
7391
|
y.push(w);
|
|
7366
7392
|
}
|
|
@@ -7371,15 +7397,15 @@ const Ui = {
|
|
|
7371
7397
|
if (m) {
|
|
7372
7398
|
if (!m.data) {
|
|
7373
7399
|
const v = [];
|
|
7374
|
-
for (const b in (
|
|
7375
|
-
const
|
|
7376
|
-
for (const
|
|
7400
|
+
for (const b in (p = m.raw) == null ? void 0 : p.LineString) {
|
|
7401
|
+
const _ = m.raw.LineString[b];
|
|
7402
|
+
for (const z of _)
|
|
7377
7403
|
v.push(
|
|
7378
|
-
|
|
7404
|
+
L.lineString(z, {
|
|
7379
7405
|
val: Number(b)
|
|
7380
7406
|
})
|
|
7381
7407
|
);
|
|
7382
|
-
m.data =
|
|
7408
|
+
m.data = L.featureCollection(v);
|
|
7383
7409
|
}
|
|
7384
7410
|
}
|
|
7385
7411
|
if (m.data) {
|
|
@@ -7394,16 +7420,16 @@ const Ui = {
|
|
|
7394
7420
|
if (m) {
|
|
7395
7421
|
if (!m.data) {
|
|
7396
7422
|
const b = [];
|
|
7397
|
-
for (const
|
|
7398
|
-
const
|
|
7399
|
-
for (const w of
|
|
7423
|
+
for (const _ in (g = m.raw) == null ? void 0 : g.Polygon) {
|
|
7424
|
+
const z = m.raw.Polygon[_];
|
|
7425
|
+
for (const w of z)
|
|
7400
7426
|
b.push(
|
|
7401
|
-
|
|
7402
|
-
val: Number(
|
|
7427
|
+
L.polygon(w, {
|
|
7428
|
+
val: Number(_)
|
|
7403
7429
|
})
|
|
7404
7430
|
);
|
|
7405
7431
|
}
|
|
7406
|
-
m.data =
|
|
7432
|
+
m.data = L.featureCollection(b);
|
|
7407
7433
|
}
|
|
7408
7434
|
const v = i < this.zoom ? m.data.features.filter((b) => b.properties.val > 0.5) : m.data.features;
|
|
7409
7435
|
y = y.concat(v), t = (/* @__PURE__ */ new Date()).valueOf() - (a + e), console.log("speed elapsed: ", t, ", total: ", e += t);
|
|
@@ -7412,23 +7438,23 @@ const Ui = {
|
|
|
7412
7438
|
} else if (u === "wind") {
|
|
7413
7439
|
const f = this.weatherLayers.wind.raw;
|
|
7414
7440
|
for (const m in f)
|
|
7415
|
-
if (m >
|
|
7441
|
+
if (m > n && m < c && (!(i <= this.zoom) || m % (i < this.zoom / 2 ? 5 : 3) === 0)) {
|
|
7416
7442
|
const v = f[m].lng;
|
|
7417
|
-
o >
|
|
7418
|
-
if ((b >= o && b <= 180 || b >= -180 && b <=
|
|
7419
|
-
const
|
|
7420
|
-
val: f[m].val[
|
|
7421
|
-
spd: f[m].spd[
|
|
7443
|
+
o > s ? v.forEach((b, _) => {
|
|
7444
|
+
if ((b >= o && b <= 180 || b >= -180 && b <= s) && (!(i <= this.zoom) || b % (i < this.zoom / 2 ? 5 : 3) === 0)) {
|
|
7445
|
+
const z = L.point([b, m], {
|
|
7446
|
+
val: f[m].val[_],
|
|
7447
|
+
spd: f[m].spd[_]
|
|
7422
7448
|
});
|
|
7423
|
-
y.push(
|
|
7449
|
+
y.push(z);
|
|
7424
7450
|
}
|
|
7425
|
-
}) : v.forEach((b,
|
|
7426
|
-
if (b >= o && b <=
|
|
7427
|
-
const
|
|
7428
|
-
val: f[m].val[
|
|
7429
|
-
spd: f[m].spd[
|
|
7451
|
+
}) : v.forEach((b, _) => {
|
|
7452
|
+
if (b >= o && b <= s && (!(i <= this.zoom) || b % (i < this.zoom / 2 ? 5 : 3) === 0)) {
|
|
7453
|
+
const z = L.point([b, m], {
|
|
7454
|
+
val: f[m].val[_],
|
|
7455
|
+
spd: f[m].spd[_]
|
|
7430
7456
|
});
|
|
7431
|
-
y.push(
|
|
7457
|
+
y.push(z);
|
|
7432
7458
|
}
|
|
7433
7459
|
});
|
|
7434
7460
|
}
|
|
@@ -7442,18 +7468,18 @@ const Ui = {
|
|
|
7442
7468
|
const m = [];
|
|
7443
7469
|
for (const v in f.Polygon) {
|
|
7444
7470
|
const b = f.Polygon[v];
|
|
7445
|
-
for (const
|
|
7471
|
+
for (const _ of b)
|
|
7446
7472
|
m.push(
|
|
7447
|
-
|
|
7473
|
+
L.polygon(_, {
|
|
7448
7474
|
val: Number(v)
|
|
7449
7475
|
})
|
|
7450
7476
|
);
|
|
7451
7477
|
}
|
|
7452
7478
|
for (const v in f.Point) {
|
|
7453
7479
|
const b = f.Point[v];
|
|
7454
|
-
for (const
|
|
7480
|
+
for (const _ of b)
|
|
7455
7481
|
m.push(
|
|
7456
|
-
...
|
|
7482
|
+
...L.points(_, {
|
|
7457
7483
|
val: Number(v)
|
|
7458
7484
|
}).features
|
|
7459
7485
|
);
|
|
@@ -7471,19 +7497,19 @@ const Ui = {
|
|
|
7471
7497
|
const m = [];
|
|
7472
7498
|
for (const v in f.LineString) {
|
|
7473
7499
|
const b = f.LineString[v];
|
|
7474
|
-
for (const
|
|
7500
|
+
for (const _ of b)
|
|
7475
7501
|
m.push(
|
|
7476
|
-
|
|
7502
|
+
L.lineString(_, {
|
|
7477
7503
|
val: Number(v)
|
|
7478
7504
|
})
|
|
7479
7505
|
);
|
|
7480
7506
|
}
|
|
7481
7507
|
for (const v in f.Point)
|
|
7482
|
-
f.Point[v].lng.forEach((b,
|
|
7508
|
+
f.Point[v].lng.forEach((b, _) => {
|
|
7483
7509
|
b = D.convertToStdLng(b), m.push(
|
|
7484
|
-
|
|
7485
|
-
val: f.Point[v].val[
|
|
7486
|
-
type: f.Point[v].type[
|
|
7510
|
+
L.point([b, v], {
|
|
7511
|
+
val: f.Point[v].val[_],
|
|
7512
|
+
type: f.Point[v].type[_]
|
|
7487
7513
|
})
|
|
7488
7514
|
);
|
|
7489
7515
|
});
|
|
@@ -7500,9 +7526,9 @@ const Ui = {
|
|
|
7500
7526
|
const m = [];
|
|
7501
7527
|
for (const v in f.LineString) {
|
|
7502
7528
|
const b = f.LineString[v];
|
|
7503
|
-
for (const
|
|
7529
|
+
for (const _ of b)
|
|
7504
7530
|
m.push(
|
|
7505
|
-
|
|
7531
|
+
L.lineString(_, {
|
|
7506
7532
|
val: Number(v)
|
|
7507
7533
|
})
|
|
7508
7534
|
);
|
|
@@ -7512,7 +7538,7 @@ const Ui = {
|
|
|
7512
7538
|
}
|
|
7513
7539
|
t = (/* @__PURE__ */ new Date()).valueOf() - (a + e);
|
|
7514
7540
|
}
|
|
7515
|
-
console.log(u, " elapsed: ", t, ", total: ", e += t), y.length && (this.weatherLayers[u].data =
|
|
7541
|
+
console.log(u, " elapsed: ", t, ", total: ", e += t), y.length && (this.weatherLayers[u].data = L.featureCollection(y)), this.weatherLayers[u].active = !0, this.weatherLayers[u].version = Math.random() + 1;
|
|
7516
7542
|
}
|
|
7517
7543
|
},
|
|
7518
7544
|
handleDragEndWithZoom4Image() {
|
|
@@ -7524,11 +7550,11 @@ const Ui = {
|
|
|
7524
7550
|
return a.features.forEach((o) => {
|
|
7525
7551
|
if (o.geometry.type !== "Point")
|
|
7526
7552
|
if (r > i) {
|
|
7527
|
-
let
|
|
7528
|
-
|
|
7553
|
+
let s = [r, e._sw.lat, 180, e._ne.lat], n = L.bboxClip(o, s);
|
|
7554
|
+
n.geometry.coordinates.length && t.push(n), s = [-180, e._sw.lat, i, e._ne.lat], n = L.bboxClip(o, s), n.geometry.coordinates.length && t.push(n);
|
|
7529
7555
|
} else {
|
|
7530
|
-
const
|
|
7531
|
-
|
|
7556
|
+
const s = [r, e._sw.lat, i, e._ne.lat], n = L.bboxClip(o, s);
|
|
7557
|
+
n.geometry.coordinates.length && t.push(n);
|
|
7532
7558
|
}
|
|
7533
7559
|
else
|
|
7534
7560
|
t.push(o);
|
|
@@ -7545,8 +7571,8 @@ const Ui = {
|
|
|
7545
7571
|
this.handleBeforeLayerToggle();
|
|
7546
7572
|
},
|
|
7547
7573
|
handleBeforeLayerToggle() {
|
|
7548
|
-
var a, e, t, r, i, o,
|
|
7549
|
-
(a = this.map) != null && a.getLayer(this.beforeLayer) && ((e = this.activeWeatherLayers) != null && e.length || (t = this.otherLayers) != null && t["war-zones"] || (r = this.otherLayers) != null && r["gmdss-areas"] || (i = this.otherLayers) != null && i["load-lines"] || (o = this.otherLayers) != null && o["high-risk-area"] || (
|
|
7574
|
+
var a, e, t, r, i, o, s, n, c, d, h, p, g;
|
|
7575
|
+
(a = this.map) != null && a.getLayer(this.beforeLayer) && ((e = this.activeWeatherLayers) != null && e.length || (t = this.otherLayers) != null && t["war-zones"] || (r = this.otherLayers) != null && r["gmdss-areas"] || (i = this.otherLayers) != null && i["load-lines"] || (o = this.otherLayers) != null && o["high-risk-area"] || (s = this.otherLayers) != null && s["time-zones"] || (n = this.otherLayers) != null && n.pirates || (c = this.otherLayers) != null && c.ports || (d = this.otherLayers) != null && d.enc || (h = this.otherLayers) != null && h["voluntary-reporting-area"] || (p = this.otherLayers) != null && p["eca-zones"] || (g = this.otherLayers) != null && g["special-area"]) && this.map.setLayoutProperty(this.beforeLayer, "visibility", "visible");
|
|
7550
7576
|
},
|
|
7551
7577
|
handleDateChange(a = { tropicals: !1 }) {
|
|
7552
7578
|
this.fetchWeatherLayers(a), this.fetchOtherLayers({ dayNight: !0 });
|
|
@@ -7558,9 +7584,16 @@ const Ui = {
|
|
|
7558
7584
|
}, 500);
|
|
7559
7585
|
else {
|
|
7560
7586
|
this.activeWeatherLayers = e;
|
|
7561
|
-
const r = this.activeWeatherLayers.some(
|
|
7562
|
-
|
|
7563
|
-
|
|
7587
|
+
const r = this.activeWeatherLayers.some(
|
|
7588
|
+
(s) => {
|
|
7589
|
+
var n;
|
|
7590
|
+
return ["wind", "current"].includes(s.key) && (!((n = Object.keys(s)) != null && n.some((c) => c === "particle")) || !!s.particle);
|
|
7591
|
+
}
|
|
7592
|
+
), i = this.activeWeatherLayers.some((s) => ["png", "jpg"].includes(s.type));
|
|
7593
|
+
r && !i ? (this.activeWeatherLayers.forEach((s) => {
|
|
7594
|
+
["wind", "current"].includes(s.key) && (this.particleFactor = s);
|
|
7595
|
+
}), this.particleFactor.particle = !0) : i && this.particleFactor && (this.particleFactor.particle = !1);
|
|
7596
|
+
const o = e == null ? void 0 : e.reduce((s, n) => s + (s & (n == null ? void 0 : n.weight) ? 0 : n == null ? void 0 : n.weight), 0);
|
|
7564
7597
|
this.weatherWeight !== o || this.source !== t ? (this.source = t, this.weatherWeight = o, this.fetchWeatherLayers({ tropicals: !1 })) : this.handleWeatherLayerToggle();
|
|
7565
7598
|
}
|
|
7566
7599
|
},
|
|
@@ -7581,7 +7614,7 @@ const Ui = {
|
|
|
7581
7614
|
ts: e.utc().format(),
|
|
7582
7615
|
wt: !0,
|
|
7583
7616
|
src: this.source
|
|
7584
|
-
}, r = await
|
|
7617
|
+
}, r = await ne.get(`${this.gateway}/api/arc/meteo/query`, {
|
|
7585
7618
|
params: t,
|
|
7586
7619
|
headers: {
|
|
7587
7620
|
Authorization: this.token || this.defaultMeteoToken
|
|
@@ -7593,25 +7626,32 @@ const Ui = {
|
|
|
7593
7626
|
});
|
|
7594
7627
|
},
|
|
7595
7628
|
handle3dToggle(a) {
|
|
7596
|
-
var e, t, r, i, o,
|
|
7597
|
-
a ? (this.map.setProjection("globe"), this.mapProjection = "globe", (t = this.map) != null && t.getLayer((e = this.viewport) == null ? void 0 : e.rampColorLayer) && ((r = this.map) != null && r.getLayer(this.helper.mapboxCustomer.layers.water.id)) && ((o = this.map) == null || o.moveLayer((i = this.viewport) == null ? void 0 : i.rampColorLayer, this.helper.mapboxCustomer.layers.water.id)), (
|
|
7629
|
+
var e, t, r, i, o, s, n, c, d, h, p, g, u, y, f, m, v, b, _, z;
|
|
7630
|
+
a ? (this.map.setProjection("globe"), this.mapProjection = "globe", (t = this.map) != null && t.getLayer((e = this.viewport) == null ? void 0 : e.rampColorLayer) && ((r = this.map) != null && r.getLayer(this.helper.mapboxCustomer.layers.water.id)) && ((o = this.map) == null || o.moveLayer((i = this.viewport) == null ? void 0 : i.rampColorLayer, this.helper.mapboxCustomer.layers.water.id)), (n = this.map) != null && n.getLayer((s = this.viewport) == null ? void 0 : s.particleLayer) && ((c = this.map) != null && c.getLayer(this.helper.mapboxCustomer.layers.water.id)) && ((h = this.map) == null || h.moveLayer((d = this.viewport) == null ? void 0 : d.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(), (g = this.map) != null && g.getLayer((p = this.viewport) == null ? void 0 : p.rampColorLayer) && ((u = this.map) != null && u.getLayer(this.helper.mapboxCustomer.layers.countryBoundary.id)) && ((f = this.map) == null || f.moveLayer((y = this.viewport) == null ? void 0 : y.rampColorLayer, this.helper.mapboxCustomer.layers.countryBoundary.id)), (v = this.map) != null && v.getLayer((m = this.viewport) == null ? void 0 : m.particleLayer) && ((b = this.map) != null && b.getLayer(this.helper.mapboxCustomer.layers.countryBoundary.id)) && ((z = this.map) == null || z.moveLayer((_ = this.viewport) == null ? void 0 : _.particleLayer, this.helper.mapboxCustomer.layers.countryBoundary.id)));
|
|
7598
7631
|
},
|
|
7599
7632
|
handleParticle(a) {
|
|
7600
|
-
this.particleFactor = a, this.
|
|
7633
|
+
this.particleFactor = a, this.weatherLayers[a.key] && (this.weatherLayers[a.key].particle = a.particle), this.activeWeatherLayers.forEach((r) => {
|
|
7634
|
+
r.key === a.key && (r.particle = a.particle);
|
|
7635
|
+
});
|
|
7636
|
+
let e = localStorage.getItem("weatherLayersCache");
|
|
7637
|
+
const t = JSON.parse(e) || [];
|
|
7638
|
+
t == null || t.forEach((r) => {
|
|
7639
|
+
r.key === a.key && (r.particle = a.particle);
|
|
7640
|
+
}), localStorage.setItem("weatherLayersCache", JSON.stringify(t)), this.fetchWeatherLayers({ tropicals: !1 });
|
|
7601
7641
|
},
|
|
7602
7642
|
handleToggleVersion() {
|
|
7603
7643
|
this.$emit("toggleVersion", Math.random());
|
|
7604
7644
|
}
|
|
7605
7645
|
}
|
|
7606
|
-
},
|
|
7646
|
+
}, ts = {
|
|
7607
7647
|
key: 0,
|
|
7608
7648
|
className: "map-gl-home"
|
|
7609
7649
|
};
|
|
7610
|
-
function
|
|
7611
|
-
var
|
|
7612
|
-
const
|
|
7613
|
-
return t.map ? (x(),
|
|
7614
|
-
|
|
7650
|
+
function as(a, e, t, r, i, o) {
|
|
7651
|
+
var ie, X, Y, be, q, I, F, ve, Q, we, re, oe, se, Pe, Te, Ie, Ee, Re, We, Ze, He, Ge, Je, Xe, Ye, qe;
|
|
7652
|
+
const s = P("IdmGlLayer"), n = P("IdmENC"), c = P("IdmSigWave"), d = P("IdmSwell"), h = P("IdmPrmsl"), p = P("IdmIceberg"), g = P("IdmTropicals"), u = P("IdmCurrents"), y = P("IdmCurrentParticle"), f = P("IdmWindBarb"), m = P("IdmWindParticle"), v = P("IdmPrecip3h"), b = P("IdmVisibility"), _ = P("IdmWaterTemp"), z = P("IdmTemp"), w = P("IdmArctic"), A = P("IdmWarZone"), M = P("IdmGmdssArea"), $ = P("IdmEcaZone"), W = P("IdmAlertZone"), O = P("IdmPort"), J = P("IdmLoadLine"), de = P("IdmTimezone"), pe = P("IdmVRA"), me = P("IdmSpecialArea"), ue = P("IdmTerminator"), ye = P("IdmLatLng"), fe = P("IdmMeasure"), ge = P("IdmPoint");
|
|
7653
|
+
return t.map ? (x(), C("div", ts, [
|
|
7654
|
+
k(s, E({
|
|
7615
7655
|
ref: "layer",
|
|
7616
7656
|
map: t.map,
|
|
7617
7657
|
"toggle-version": t.toggleVersion,
|
|
@@ -7619,69 +7659,72 @@ function Hi(a, e, t, r, i, o) {
|
|
|
7619
7659
|
}, a.$attrs, {
|
|
7620
7660
|
onWeather: o.handleWeatherLayerChange,
|
|
7621
7661
|
onOther: o.handleOtherLayerChange,
|
|
7622
|
-
onCoordinate: e[0] || (e[0] = (
|
|
7623
|
-
onMeasure: e[1] || (e[1] = (
|
|
7624
|
-
onPoint: e[2] || (e[2] = (
|
|
7662
|
+
onCoordinate: e[0] || (e[0] = (_e) => i.showCoord = _e),
|
|
7663
|
+
onMeasure: e[1] || (e[1] = (_e) => i.showMeasure = _e),
|
|
7664
|
+
onPoint: e[2] || (e[2] = (_e) => i.showPoint = _e),
|
|
7625
7665
|
on3d: o.handle3dToggle,
|
|
7626
7666
|
onHandleToggleVersion: o.handleToggleVersion
|
|
7627
7667
|
}), null, 16, ["map", "toggle-version", "map-projection", "onWeather", "onOther", "on3d", "onHandleToggleVersion"]),
|
|
7628
|
-
|
|
7668
|
+
k(n, E({
|
|
7629
7669
|
map: t.map,
|
|
7630
7670
|
token: t.token,
|
|
7631
|
-
enabled: (
|
|
7671
|
+
enabled: (ie = i.otherLayers) == null ? void 0 : ie.enc,
|
|
7632
7672
|
"toggle-version": t.toggleVersion
|
|
7633
7673
|
}, a.$attrs, {
|
|
7634
|
-
onEnc: e[3] || (e[3] = (
|
|
7674
|
+
onEnc: e[3] || (e[3] = (_e) => i.enc = _e)
|
|
7635
7675
|
}), null, 16, ["map", "token", "enabled", "toggle-version"]),
|
|
7636
|
-
|
|
7676
|
+
k(c, E({
|
|
7637
7677
|
map: t.map,
|
|
7638
|
-
"sig-wave": (
|
|
7678
|
+
"sig-wave": (X = i.weatherLayers) == null ? void 0 : X["sig-wave-height"],
|
|
7639
7679
|
"before-layer": t.beforeLayer
|
|
7640
7680
|
}, a.$attrs), null, 16, ["map", "sig-wave", "before-layer"]),
|
|
7641
|
-
|
|
7681
|
+
k(d, E({
|
|
7642
7682
|
map: t.map,
|
|
7643
|
-
swell: (
|
|
7683
|
+
swell: (Y = i.weatherLayers) == null ? void 0 : Y.swell,
|
|
7644
7684
|
"before-layer": t.beforeLayer
|
|
7645
7685
|
}, a.$attrs), null, 16, ["map", "swell", "before-layer"]),
|
|
7646
|
-
|
|
7686
|
+
k(h, E({
|
|
7647
7687
|
map: t.map,
|
|
7648
|
-
prmsl: (
|
|
7688
|
+
prmsl: (be = i.weatherLayers) == null ? void 0 : be.prmsl,
|
|
7649
7689
|
"before-layer": t.beforeLayer,
|
|
7650
7690
|
"active-weather-layers": i.activeWeatherLayers
|
|
7651
7691
|
}, a.$attrs), null, 16, ["map", "prmsl", "before-layer", "active-weather-layers"]),
|
|
7652
|
-
|
|
7692
|
+
k(p, E({
|
|
7653
7693
|
map: t.map,
|
|
7654
|
-
iceberg: (
|
|
7694
|
+
iceberg: (q = i.weatherLayers) == null ? void 0 : q.iceberg,
|
|
7655
7695
|
"before-layer": t.beforeLayer
|
|
7656
7696
|
}, a.$attrs), null, 16, ["map", "iceberg", "before-layer"]),
|
|
7657
|
-
|
|
7697
|
+
k(g, E({
|
|
7658
7698
|
map: t.map,
|
|
7659
7699
|
date: t.ts,
|
|
7660
|
-
tropicals: (
|
|
7700
|
+
tropicals: (I = i.weatherLayers) == null ? void 0 : I.tropicals,
|
|
7661
7701
|
"before-layer": t.beforeLayer
|
|
7662
7702
|
}, a.$attrs), null, 16, ["map", "date", "tropicals", "before-layer"]),
|
|
7663
|
-
|
|
7703
|
+
k(u, E({
|
|
7664
7704
|
map: t.map,
|
|
7665
7705
|
"map-projection": i.mapProjection,
|
|
7666
|
-
current: (
|
|
7706
|
+
current: (F = i.weatherLayers) == null ? void 0 : F.current,
|
|
7667
7707
|
"before-layer": t.beforeLayer,
|
|
7668
7708
|
"show-particle": i.showCurrentParticle,
|
|
7669
7709
|
"margin-bottom": i.activeWindLayer ? i.showRampColor ? "84px" : "56px" : i.showRampColor ? "56px" : "30px",
|
|
7670
7710
|
"toggle-version": t.toggleVersion,
|
|
7671
7711
|
"weather-layers": i.weatherLayers
|
|
7672
|
-
}, a.$attrs, {
|
|
7673
|
-
|
|
7712
|
+
}, a.$attrs, {
|
|
7713
|
+
onParticle: o.handleParticle,
|
|
7714
|
+
onHandleToggleVersion: o.handleToggleVersion
|
|
7715
|
+
}), null, 16, ["map", "map-projection", "current", "before-layer", "show-particle", "margin-bottom", "toggle-version", "weather-layers", "onParticle", "onHandleToggleVersion"]),
|
|
7716
|
+
k(y, E({
|
|
7674
7717
|
viewport: i.viewport,
|
|
7675
|
-
factor: (
|
|
7718
|
+
factor: (ve = i.weatherLayers) == null ? void 0 : ve["current-particle"],
|
|
7676
7719
|
"before-layer": t.beforeLayer,
|
|
7677
7720
|
"toggle-version": t.toggleVersion
|
|
7678
7721
|
}, a.$attrs), null, 16, ["viewport", "factor", "before-layer", "toggle-version"]),
|
|
7679
|
-
|
|
7722
|
+
k(f, E({
|
|
7680
7723
|
ref: "windBarb",
|
|
7681
7724
|
map: t.map,
|
|
7682
7725
|
"map-projection": i.mapProjection,
|
|
7683
|
-
wind: (
|
|
7684
|
-
current: (
|
|
7726
|
+
wind: (Q = i.weatherLayers) == null ? void 0 : Q.wind,
|
|
7727
|
+
current: (we = i.weatherLayers) == null ? void 0 : we.current,
|
|
7685
7728
|
"before-layer": t.beforeLayer,
|
|
7686
7729
|
"margin-bottom": i.showRampColor ? "56px" : "30px",
|
|
7687
7730
|
"show-particle": i.showWindParticle
|
|
@@ -7690,120 +7733,120 @@ function Hi(a, e, t, r, i, o) {
|
|
|
7690
7733
|
"weather-layers": i.weatherLayers,
|
|
7691
7734
|
onParticle: o.handleParticle
|
|
7692
7735
|
}), null, 16, ["map", "map-projection", "wind", "current", "before-layer", "margin-bottom", "show-particle", "toggle-version", "weather-layers", "onParticle"]),
|
|
7693
|
-
|
|
7736
|
+
k(m, E({
|
|
7694
7737
|
viewport: i.viewport,
|
|
7695
|
-
factor: (
|
|
7738
|
+
factor: (re = i.weatherLayers) == null ? void 0 : re["wind-particle"],
|
|
7696
7739
|
"before-layer": t.beforeLayer,
|
|
7697
7740
|
"toggle-version": t.toggleVersion
|
|
7698
7741
|
}, a.$attrs), null, 16, ["viewport", "factor", "before-layer", "toggle-version"]),
|
|
7699
|
-
|
|
7742
|
+
k(v, E({
|
|
7700
7743
|
viewport: i.viewport,
|
|
7701
|
-
factor: (
|
|
7744
|
+
factor: (oe = i.weatherLayers) == null ? void 0 : oe.precip3h,
|
|
7702
7745
|
"before-layer": t.beforeLayer,
|
|
7703
7746
|
"toggle-version": t.toggleVersion
|
|
7704
7747
|
}, a.$attrs), null, 16, ["viewport", "factor", "before-layer", "toggle-version"]),
|
|
7705
|
-
|
|
7748
|
+
k(b, E({
|
|
7706
7749
|
viewport: i.viewport,
|
|
7707
|
-
factor: (
|
|
7750
|
+
factor: (se = i.weatherLayers) == null ? void 0 : se.visibility,
|
|
7708
7751
|
"before-layer": t.beforeLayer,
|
|
7709
7752
|
"toggle-version": t.toggleVersion
|
|
7710
7753
|
}, a.$attrs), null, 16, ["viewport", "factor", "before-layer", "toggle-version"]),
|
|
7711
|
-
|
|
7754
|
+
k(_, E({
|
|
7712
7755
|
viewport: i.viewport,
|
|
7713
|
-
factor: (
|
|
7756
|
+
factor: (Pe = i.weatherLayers) == null ? void 0 : Pe["water-temp"],
|
|
7714
7757
|
"before-layer": t.beforeLayer,
|
|
7715
7758
|
"toggle-version": t.toggleVersion
|
|
7716
7759
|
}, a.$attrs), null, 16, ["viewport", "factor", "before-layer", "toggle-version"]),
|
|
7717
|
-
|
|
7760
|
+
k(z, E({
|
|
7718
7761
|
viewport: i.viewport,
|
|
7719
|
-
factor: (
|
|
7762
|
+
factor: (Te = i.weatherLayers) == null ? void 0 : Te.temp,
|
|
7720
7763
|
"before-layer": t.beforeLayer,
|
|
7721
7764
|
"toggle-version": t.toggleVersion
|
|
7722
7765
|
}, a.$attrs), null, 16, ["viewport", "factor", "before-layer", "toggle-version"]),
|
|
7723
|
-
|
|
7766
|
+
k(w, E({
|
|
7724
7767
|
viewport: i.viewport,
|
|
7725
|
-
factor: (
|
|
7768
|
+
factor: (Ie = i.weatherLayers) == null ? void 0 : Ie.arctic,
|
|
7726
7769
|
"before-layer": t.beforeLayer,
|
|
7727
7770
|
"toggle-version": t.toggleVersion
|
|
7728
7771
|
}, a.$attrs), null, 16, ["viewport", "factor", "before-layer", "toggle-version"]),
|
|
7729
|
-
|
|
7772
|
+
k(A, E({
|
|
7730
7773
|
map: t.map,
|
|
7731
|
-
zone: (
|
|
7774
|
+
zone: (Ee = i.otherLayers) == null ? void 0 : Ee["war-zones"],
|
|
7732
7775
|
"before-layer": t.beforeLayer
|
|
7733
7776
|
}, a.$attrs), null, 16, ["map", "zone", "before-layer"]),
|
|
7734
|
-
|
|
7777
|
+
k(M, E({
|
|
7735
7778
|
map: t.map,
|
|
7736
|
-
area: (
|
|
7779
|
+
area: (Re = i.otherLayers) == null ? void 0 : Re["gmdss-areas"],
|
|
7737
7780
|
"before-layer": t.beforeLayer
|
|
7738
7781
|
}, a.$attrs), null, 16, ["map", "area", "before-layer"]),
|
|
7739
|
-
|
|
7782
|
+
k($, E({
|
|
7740
7783
|
map: t.map,
|
|
7741
|
-
zone: (
|
|
7784
|
+
zone: (We = i.otherLayers) == null ? void 0 : We["eca-zones"],
|
|
7742
7785
|
"before-layer": t.beforeLayer
|
|
7743
7786
|
}, a.$attrs), null, 16, ["map", "zone", "before-layer"]),
|
|
7744
|
-
|
|
7787
|
+
k(W, E({
|
|
7745
7788
|
map: t.map,
|
|
7746
|
-
zone: (
|
|
7789
|
+
zone: (Ze = i.otherLayers) == null ? void 0 : Ze["alert-zones"],
|
|
7747
7790
|
"before-layer": t.beforeLayer
|
|
7748
7791
|
}, a.$attrs), null, 16, ["map", "zone", "before-layer"]),
|
|
7749
|
-
|
|
7792
|
+
k(O, E({
|
|
7750
7793
|
map: t.map,
|
|
7751
|
-
port: (
|
|
7794
|
+
port: (He = i.otherLayers) == null ? void 0 : He.ports,
|
|
7752
7795
|
"before-layer": t.beforeLayer
|
|
7753
7796
|
}, a.$attrs), null, 16, ["map", "port", "before-layer"]),
|
|
7754
|
-
|
|
7797
|
+
k(J, E({
|
|
7755
7798
|
map: t.map,
|
|
7756
|
-
line: (
|
|
7799
|
+
line: (Ge = i.otherLayers) == null ? void 0 : Ge["load-lines"],
|
|
7757
7800
|
"before-layer": t.beforeLayer
|
|
7758
7801
|
}, a.$attrs), null, 16, ["map", "line", "before-layer"]),
|
|
7759
|
-
|
|
7802
|
+
k(de, E({
|
|
7760
7803
|
map: t.map,
|
|
7761
|
-
zone: (
|
|
7804
|
+
zone: (Je = i.otherLayers) == null ? void 0 : Je["time-zones"],
|
|
7762
7805
|
"before-layer": t.beforeLayer
|
|
7763
7806
|
}, a.$attrs), null, 16, ["map", "zone", "before-layer"]),
|
|
7764
|
-
|
|
7807
|
+
k(pe, E({
|
|
7765
7808
|
map: t.map,
|
|
7766
|
-
area: (
|
|
7809
|
+
area: (Xe = i.otherLayers) == null ? void 0 : Xe["voluntary-reporting-area"],
|
|
7767
7810
|
"before-layer": t.beforeLayer
|
|
7768
7811
|
}, a.$attrs), null, 16, ["map", "area", "before-layer"]),
|
|
7769
|
-
|
|
7812
|
+
k(me, E({
|
|
7770
7813
|
map: t.map,
|
|
7771
|
-
area: (
|
|
7814
|
+
area: (Ye = i.otherLayers) == null ? void 0 : Ye["special-area"],
|
|
7772
7815
|
"before-layer": t.beforeLayer
|
|
7773
7816
|
}, a.$attrs), null, 16, ["map", "area", "before-layer"]),
|
|
7774
|
-
|
|
7817
|
+
k(ue, E({
|
|
7775
7818
|
map: t.map,
|
|
7776
|
-
area: (
|
|
7819
|
+
area: (qe = i.otherLayers) == null ? void 0 : qe["day-night"]
|
|
7777
7820
|
}, a.$attrs), null, 16, ["map", "area"]),
|
|
7778
|
-
|
|
7821
|
+
k(ye, E({
|
|
7779
7822
|
map: t.map,
|
|
7780
7823
|
show: i.showCoord,
|
|
7781
7824
|
"toggle-version": t.toggleVersion
|
|
7782
7825
|
}, a.$attrs), null, 16, ["map", "show", "toggle-version"]),
|
|
7783
|
-
|
|
7826
|
+
k(fe, E({
|
|
7784
7827
|
map: t.map,
|
|
7785
7828
|
show: i.showMeasure
|
|
7786
7829
|
}, a.$attrs), null, 16, ["map", "show"]),
|
|
7787
|
-
|
|
7830
|
+
k(ge, E({
|
|
7788
7831
|
map: t.map,
|
|
7789
7832
|
show: i.showPoint,
|
|
7790
7833
|
meteo: i.meteo
|
|
7791
7834
|
}, a.$attrs, { onPoint: o.handlePointChange }), null, 16, ["map", "show", "meteo", "onPoint"])
|
|
7792
7835
|
])) : B("", !0);
|
|
7793
7836
|
}
|
|
7794
|
-
const
|
|
7837
|
+
const is = /* @__PURE__ */ T(es, [["render", as]]), ds = {
|
|
7795
7838
|
install(a) {
|
|
7796
|
-
a.component("MapboxGL",
|
|
7839
|
+
a.component("MapboxGL", is), a.component("TropicalGL", Ke), a.component("LatLngGL", et);
|
|
7797
7840
|
}
|
|
7798
7841
|
};
|
|
7799
7842
|
export {
|
|
7800
|
-
|
|
7801
|
-
|
|
7802
|
-
|
|
7803
|
-
|
|
7804
|
-
|
|
7805
|
-
|
|
7806
|
-
|
|
7807
|
-
|
|
7808
|
-
|
|
7843
|
+
et as LatLngGL,
|
|
7844
|
+
is as MapboxGL,
|
|
7845
|
+
ds as MapboxGLPlugin,
|
|
7846
|
+
aa as MapboxHelper,
|
|
7847
|
+
V as ParticleSchema,
|
|
7848
|
+
Ke as TropicalGL,
|
|
7849
|
+
Ve as Viewport,
|
|
7850
|
+
Le as WebGL,
|
|
7851
|
+
N as WebGLSchema
|
|
7809
7852
|
};
|