@idmui/spot 0.1.5 → 0.1.7
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/Spot/src/index.vue.d.ts +1 -0
- package/dist/index.js +441 -440
- package/dist/index.umd.cjs +1 -1
- package/dist/style.css +1 -1
- package/package.json +2 -2
package/dist/index.js
CHANGED
|
@@ -1,567 +1,567 @@
|
|
|
1
|
-
import
|
|
2
|
-
import
|
|
3
|
-
import { Search as
|
|
4
|
-
import { LngLatHelper as
|
|
5
|
-
import * as
|
|
6
|
-
import { markRaw as
|
|
7
|
-
import
|
|
8
|
-
class
|
|
9
|
-
static pickHourly(
|
|
10
|
-
var h, s,
|
|
11
|
-
const
|
|
12
|
-
if (
|
|
13
|
-
const d =
|
|
14
|
-
let
|
|
15
|
-
if (
|
|
16
|
-
for (const
|
|
17
|
-
const c =
|
|
18
|
-
|
|
19
|
-
temp: (
|
|
20
|
-
apparentTemp: (
|
|
21
|
-
rh: (
|
|
22
|
-
dp: (
|
|
1
|
+
import X from "moment";
|
|
2
|
+
import ee from "moment-timezone";
|
|
3
|
+
import { Search as Ce } from "@element-plus/icons-vue";
|
|
4
|
+
import { LngLatHelper as ue } from "@idm-plugin/geo";
|
|
5
|
+
import * as ke from "echarts";
|
|
6
|
+
import { markRaw as Pe, resolveComponent as we, openBlock as n, createElementBlock as o, createElementVNode as i, createVNode as ge, withCtx as ve, Fragment as b, renderList as x, createBlock as He, toDisplayString as f, createCommentVNode as be, createTextVNode as _, normalizeClass as z, normalizeStyle as ce } from "vue";
|
|
7
|
+
import De from "axios";
|
|
8
|
+
class Se {
|
|
9
|
+
static pickHourly(e, t) {
|
|
10
|
+
var h, s, w, M, C, S, L, N, I, P, H, a, r, K, D, R, A, E, G, F, O, B, V, U, Z, J, Y, j, g, k, p, y, W, v, q, te, ae, re, oe, T, se, m, ie, u, le, he, de, xe;
|
|
11
|
+
const fe = typeof t == "string" ? X(t) : t, $ = e == null ? void 0 : e.weather, ye = e == null ? void 0 : e.marine, _e = X((s = (h = $ == null ? void 0 : $[0]) == null ? void 0 : h.hourly) == null ? void 0 : s.date).utc(), pe = _e.clone().add((C = (M = (w = $ == null ? void 0 : $[0]) == null ? void 0 : w.hourly) == null ? void 0 : M.time) == null ? void 0 : C.at(0), "h"), Le = _e.clone().add((N = (L = (S = $ == null ? void 0 : $[0]) == null ? void 0 : S.hourly) == null ? void 0 : L.time) == null ? void 0 : N.at(-1), "h"), ze = [];
|
|
12
|
+
if (fe.isBetween(pe, Le, "millisecond", "[]")) {
|
|
13
|
+
const d = fe.utc().diff(pe, "h", !1);
|
|
14
|
+
let Q, ne;
|
|
15
|
+
if ($)
|
|
16
|
+
for (const me of $) {
|
|
17
|
+
const c = me.hourly;
|
|
18
|
+
Q = {
|
|
19
|
+
temp: (I = c.temperature_2m) == null ? void 0 : I.at(d),
|
|
20
|
+
apparentTemp: (P = c.apparent_temperature) == null ? void 0 : P.at(d),
|
|
21
|
+
rh: (H = c.relative_humidity_2m) == null ? void 0 : H.at(d),
|
|
22
|
+
dp: (a = c.dew_point_2m) == null ? void 0 : a.at(d),
|
|
23
23
|
precip: {
|
|
24
|
-
probability: (
|
|
25
|
-
sum: (
|
|
24
|
+
probability: (r = c.precipitation_probability) == null ? void 0 : r.at(d),
|
|
25
|
+
sum: (K = c.precipitation) == null ? void 0 : K.at(d)
|
|
26
26
|
},
|
|
27
|
-
pmsl: (
|
|
28
|
-
psurf: (
|
|
29
|
-
code: (
|
|
30
|
-
visibility: this.m2nm((
|
|
27
|
+
pmsl: (D = c.pressure_msl) == null ? void 0 : D.at(d),
|
|
28
|
+
psurf: (R = c.surface_pressure) == null ? void 0 : R.at(d),
|
|
29
|
+
code: (A = c.weather_code) == null ? void 0 : A.at(d),
|
|
30
|
+
visibility: this.m2nm((E = c.visibility) == null ? void 0 : E.at(d)),
|
|
31
31
|
wind: {
|
|
32
|
-
speed: (
|
|
33
|
-
kts: (
|
|
34
|
-
degree: (
|
|
35
|
-
bearing: ((
|
|
36
|
-
gusts: (
|
|
32
|
+
speed: (G = c.wind_speed_10m) == null ? void 0 : G.at(d),
|
|
33
|
+
kts: (F = c.wind_speed_10m) == null ? void 0 : F.at(d),
|
|
34
|
+
degree: (O = c.wind_direction_10m) == null ? void 0 : O.at(d),
|
|
35
|
+
bearing: ((B = c.wind_direction_10m) == null ? void 0 : B.at(d)) !== null ? (((V = c.wind_direction_10m) == null ? void 0 : V.at(d)) + 180) % 360 : null,
|
|
36
|
+
gusts: (U = c.wind_gusts_10m) == null ? void 0 : U.at(d)
|
|
37
37
|
},
|
|
38
|
-
isDay: (
|
|
38
|
+
isDay: (Z = c.is_day) == null ? void 0 : Z.at(d)
|
|
39
39
|
};
|
|
40
|
-
const { name:
|
|
41
|
-
|
|
40
|
+
const { name: Ne, url: Ie, bg: Me } = this.parseWeatherCode(Q.code, Q.isDay);
|
|
41
|
+
Q.name = Ne, Q.url = Ie, Q.bg = Me, Q.wind.scale = this.beaufort(this.kts2ms(Q.wind.kts)), Q.wind.direction = this.degree2Direction(Q.wind.degree);
|
|
42
42
|
}
|
|
43
|
-
if (
|
|
44
|
-
for (const
|
|
45
|
-
const c =
|
|
46
|
-
|
|
43
|
+
if (ye)
|
|
44
|
+
for (const me of ye) {
|
|
45
|
+
const c = me.hourly;
|
|
46
|
+
ne = {
|
|
47
47
|
wave: {
|
|
48
48
|
sig: {
|
|
49
|
-
height: (
|
|
50
|
-
degree: (
|
|
51
|
-
bearing: ((
|
|
52
|
-
period: (
|
|
49
|
+
height: (J = c.wave_height) == null ? void 0 : J.at(d),
|
|
50
|
+
degree: (Y = c.wave_direction) == null ? void 0 : Y.at(d),
|
|
51
|
+
bearing: ((j = c.wave_direction) == null ? void 0 : j.at(d)) !== null ? (((g = c.wave_direction) == null ? void 0 : g.at(d)) + 180) % 360 : null,
|
|
52
|
+
period: (k = c.wave_period) == null ? void 0 : k.at(d)
|
|
53
53
|
},
|
|
54
54
|
swell: {
|
|
55
|
-
height: (
|
|
56
|
-
degree: (
|
|
57
|
-
bearing: ((
|
|
58
|
-
period: (
|
|
59
|
-
peakPeriod: (
|
|
55
|
+
height: (p = c.swell_wave_height) == null ? void 0 : p.at(d),
|
|
56
|
+
degree: (y = c.swell_wave_direction) == null ? void 0 : y.at(d),
|
|
57
|
+
bearing: ((W = c.swell_wave_direction) == null ? void 0 : W.at(d)) !== null ? (((v = c.swell_wave_direction) == null ? void 0 : v.at(d)) + 180) % 360 : null,
|
|
58
|
+
period: (q = c.swell_wave_period) == null ? void 0 : q.at(d),
|
|
59
|
+
peakPeriod: (te = c.swell_wave_peak_period) == null ? void 0 : te.at(d)
|
|
60
60
|
},
|
|
61
61
|
wd: {
|
|
62
|
-
height: (
|
|
63
|
-
degree: (
|
|
64
|
-
bearing: ((
|
|
65
|
-
period: (
|
|
66
|
-
peakPeriod: (
|
|
62
|
+
height: (ae = c.wind_wave_height) == null ? void 0 : ae.at(d),
|
|
63
|
+
degree: (re = c.wind_wave_direction) == null ? void 0 : re.at(d),
|
|
64
|
+
bearing: ((oe = c.wind_wave_direction) == null ? void 0 : oe.at(d)) !== null ? (((T = c.wind_wave_direction) == null ? void 0 : T.at(d)) + 180) % 360 : null,
|
|
65
|
+
period: (se = c.wind_wave_period) == null ? void 0 : se.at(d),
|
|
66
|
+
peakPeriod: (m = c.wind_wave_peak_period) == null ? void 0 : m.at(d)
|
|
67
67
|
}
|
|
68
68
|
},
|
|
69
69
|
current: {
|
|
70
|
-
speed: (
|
|
71
|
-
kts: (
|
|
72
|
-
degree: (
|
|
73
|
-
bearing: ((
|
|
70
|
+
speed: (ie = c.ocean_current_velocity) == null ? void 0 : ie.at(d),
|
|
71
|
+
kts: (u = c.ocean_current_velocity) == null ? void 0 : u.at(d),
|
|
72
|
+
degree: (le = c.ocean_current_direction) == null ? void 0 : le.at(d),
|
|
73
|
+
bearing: ((he = c.ocean_current_direction) == null ? void 0 : he.at(d)) ?? null
|
|
74
74
|
},
|
|
75
|
-
sst: (
|
|
76
|
-
height: (
|
|
77
|
-
},
|
|
75
|
+
sst: (de = c.sea_surface_temperature) == null ? void 0 : de.at(d),
|
|
76
|
+
height: (xe = c.sea_level_height_msl) == null ? void 0 : xe.at(d)
|
|
77
|
+
}, ne.wave = this.parseWave(ne.wave), ne.current.direction = this.degree2Direction(ne.current.degree);
|
|
78
78
|
}
|
|
79
|
-
|
|
80
|
-
utc:
|
|
81
|
-
weather: { ...
|
|
82
|
-
...
|
|
79
|
+
ze.push({
|
|
80
|
+
utc: pe.add(d, "h").format(),
|
|
81
|
+
weather: { ...Q },
|
|
82
|
+
...ne
|
|
83
83
|
});
|
|
84
84
|
}
|
|
85
|
-
return
|
|
85
|
+
return ze;
|
|
86
86
|
}
|
|
87
|
-
static toLegacy(
|
|
87
|
+
static toLegacy(e) {
|
|
88
88
|
return {
|
|
89
|
-
wind:
|
|
90
|
-
visibility:
|
|
91
|
-
temp:
|
|
92
|
-
prmsl:
|
|
89
|
+
wind: e.weather.wind,
|
|
90
|
+
visibility: e.weather.visibility,
|
|
91
|
+
temp: e.weather.temp,
|
|
92
|
+
prmsl: e.weather.pmsl,
|
|
93
93
|
gusts: {
|
|
94
|
-
kts:
|
|
94
|
+
kts: e.weather.wind.gusts
|
|
95
95
|
},
|
|
96
|
-
precip:
|
|
97
|
-
code:
|
|
98
|
-
name:
|
|
99
|
-
url:
|
|
100
|
-
wave:
|
|
101
|
-
current:
|
|
102
|
-
sst:
|
|
103
|
-
height:
|
|
104
|
-
utc:
|
|
96
|
+
precip: e.weather.precip,
|
|
97
|
+
code: e.weather.code,
|
|
98
|
+
name: e.weather.name,
|
|
99
|
+
url: e.weather.url,
|
|
100
|
+
wave: e.wave,
|
|
101
|
+
current: e.current,
|
|
102
|
+
sst: e.sst,
|
|
103
|
+
height: e.height,
|
|
104
|
+
utc: e.utc
|
|
105
105
|
};
|
|
106
106
|
}
|
|
107
|
-
static pickDaily(
|
|
108
|
-
var h, s,
|
|
109
|
-
const
|
|
110
|
-
if (
|
|
111
|
-
let
|
|
112
|
-
const m =
|
|
113
|
-
if (
|
|
114
|
-
for (const
|
|
115
|
-
const
|
|
116
|
-
|
|
117
|
-
code: (
|
|
107
|
+
static pickDaily(e, t) {
|
|
108
|
+
var h, s, w, M, C, S, L, N, I, P, H, a, r, K, D, R, A, E, G, F, O, B, V, U, Z, J, Y, j, g, k, p, y, W;
|
|
109
|
+
const v = typeof t == "string" ? X(t) : t, q = e == null ? void 0 : e.weather, te = e == null ? void 0 : e.marine, ae = X((w = (s = (h = q == null ? void 0 : q[0]) == null ? void 0 : h.daily) == null ? void 0 : s.time) == null ? void 0 : w.at(0)), re = X((S = (C = (M = q == null ? void 0 : q[0]) == null ? void 0 : M.daily) == null ? void 0 : C.time) == null ? void 0 : S.at(-1)), oe = [];
|
|
110
|
+
if (v.isBetween(ae, re, "millisecond", "[]")) {
|
|
111
|
+
let T, se;
|
|
112
|
+
const m = v.diff(ae, "d", !1);
|
|
113
|
+
if (q)
|
|
114
|
+
for (const ie of q) {
|
|
115
|
+
const u = ie.daily;
|
|
116
|
+
T = {
|
|
117
|
+
code: (L = u.weather_code) == null ? void 0 : L.at(m),
|
|
118
118
|
temp: {
|
|
119
|
-
max: (
|
|
120
|
-
min: (
|
|
121
|
-
mean: (
|
|
119
|
+
max: (N = u.temperature_2m_max) == null ? void 0 : N.at(m),
|
|
120
|
+
min: (I = u.temperature_2m_min) == null ? void 0 : I.at(m),
|
|
121
|
+
mean: (P = u.temperature_2m_mean) == null ? void 0 : P.at(m)
|
|
122
122
|
},
|
|
123
123
|
apparentTemp: {
|
|
124
|
-
max: (
|
|
125
|
-
min: (
|
|
124
|
+
max: (H = u.apparent_temperature_max) == null ? void 0 : H.at(m),
|
|
125
|
+
min: (a = u.apparent_temperature_min) == null ? void 0 : a.at(m)
|
|
126
126
|
},
|
|
127
127
|
precip: {
|
|
128
|
-
sum: (
|
|
129
|
-
hours: (
|
|
130
|
-
probability: (
|
|
128
|
+
sum: (r = u.precipitation_sum) == null ? void 0 : r.at(m),
|
|
129
|
+
hours: (K = u.precipitation_hours) == null ? void 0 : K.at(m),
|
|
130
|
+
probability: (D = u.precipitation_probability_max) == null ? void 0 : D.at(m)
|
|
131
131
|
},
|
|
132
132
|
rh: {
|
|
133
|
-
max: (
|
|
134
|
-
min: (
|
|
135
|
-
mean: (
|
|
133
|
+
max: (R = u.relative_humidity_2m_max) == null ? void 0 : R.at(m),
|
|
134
|
+
min: (A = u.relative_humidity_2m_min) == null ? void 0 : A.at(m),
|
|
135
|
+
mean: (E = u.relative_humidity_2m_mean) == null ? void 0 : E.at(m)
|
|
136
136
|
},
|
|
137
137
|
wind: {
|
|
138
|
-
speed: (
|
|
139
|
-
kts: (
|
|
140
|
-
degree: (
|
|
141
|
-
gusts: (
|
|
138
|
+
speed: (G = u.wind_speed_10m_max) == null ? void 0 : G.at(m),
|
|
139
|
+
kts: (F = u.wind_speed_10m_max) == null ? void 0 : F.at(m),
|
|
140
|
+
degree: (O = u.wind_direction_10m_dominant) == null ? void 0 : O.at(m),
|
|
141
|
+
gusts: (B = u.wind_gusts_10m_max) == null ? void 0 : B.at(m)
|
|
142
142
|
}
|
|
143
143
|
};
|
|
144
|
-
const { name:
|
|
145
|
-
|
|
144
|
+
const { name: le, url: he, bg: de } = this.parseWeatherCode(T.code, !0);
|
|
145
|
+
T.name = le, T.url = he, T.bg = de, T.wind.scale = this.beaufort(this.kts2ms(T.wind.kts)), T.wind.direction = this.degree2Direction(T.wind.degree);
|
|
146
146
|
}
|
|
147
|
-
if (
|
|
148
|
-
for (const
|
|
149
|
-
const
|
|
150
|
-
|
|
147
|
+
if (te)
|
|
148
|
+
for (const ie of te) {
|
|
149
|
+
const u = ie.daily;
|
|
150
|
+
se = {
|
|
151
151
|
wave: {
|
|
152
152
|
sig: {
|
|
153
|
-
height: (
|
|
154
|
-
degree: (
|
|
155
|
-
period: (
|
|
153
|
+
height: (V = u.wave_height_max) == null ? void 0 : V.at(m),
|
|
154
|
+
degree: (U = u.wave_direction_dominant) == null ? void 0 : U.at(m),
|
|
155
|
+
period: (Z = u.wave_period_max) == null ? void 0 : Z.at(m)
|
|
156
156
|
},
|
|
157
157
|
swell: {
|
|
158
|
-
height: (
|
|
159
|
-
degree: (
|
|
160
|
-
period: (
|
|
161
|
-
peakPeriod: (
|
|
158
|
+
height: (J = u.swell_wave_height_max) == null ? void 0 : J.at(m),
|
|
159
|
+
degree: (Y = u.wave_direction_dominant) == null ? void 0 : Y.at(m),
|
|
160
|
+
period: (j = u.swell_wave_period_max) == null ? void 0 : j.at(m),
|
|
161
|
+
peakPeriod: (g = u.swell_wave_peak_period_max) == null ? void 0 : g.at(m)
|
|
162
162
|
},
|
|
163
163
|
wd: {
|
|
164
|
-
height: (
|
|
165
|
-
degree: (
|
|
166
|
-
period: (
|
|
167
|
-
peakPeriod: (
|
|
164
|
+
height: (k = u.wind_wave_height_max) == null ? void 0 : k.at(m),
|
|
165
|
+
degree: (p = u.wind_wave_direction_dominant) == null ? void 0 : p.at(m),
|
|
166
|
+
period: (y = u.wind_wave_period_max) == null ? void 0 : y.at(m),
|
|
167
|
+
peakPeriod: (W = u.wind_wave_peak_period_max) == null ? void 0 : W.at(m)
|
|
168
168
|
}
|
|
169
169
|
}
|
|
170
|
-
},
|
|
170
|
+
}, se.wave = this.parseWave(se.wave);
|
|
171
171
|
}
|
|
172
|
-
|
|
173
|
-
utc:
|
|
174
|
-
weather: { ...
|
|
175
|
-
...
|
|
172
|
+
oe.push({
|
|
173
|
+
utc: ae.add(m, "d").utc().format(),
|
|
174
|
+
weather: { ...T },
|
|
175
|
+
...se
|
|
176
176
|
});
|
|
177
177
|
}
|
|
178
|
-
return
|
|
178
|
+
return oe;
|
|
179
179
|
}
|
|
180
|
-
static parseWave(
|
|
181
|
-
return
|
|
180
|
+
static parseWave(e) {
|
|
181
|
+
return e.sig.direction = this.degree2Direction(e.sig.degree), e.swell.direction = this.degree2Direction(e.swell.degree), e.wd.direction = this.degree2Direction(e.wd.degree), e.sig.scale = this.douglas(e.sig.height), e.swell.scale = this.douglas(e.swell.height), e.wd.scale = this.douglas(e.wd.height), e;
|
|
182
182
|
}
|
|
183
|
-
static parseWeatherCode(
|
|
184
|
-
const h = this.weatherCode(
|
|
185
|
-
return (
|
|
183
|
+
static parseWeatherCode(e, t) {
|
|
184
|
+
const h = this.weatherCode(e);
|
|
185
|
+
return (t ? h.day : h.night) || {};
|
|
186
186
|
}
|
|
187
|
-
static weatherCode(
|
|
188
|
-
const
|
|
189
|
-
code:
|
|
187
|
+
static weatherCode(e) {
|
|
188
|
+
const t = {
|
|
189
|
+
code: e
|
|
190
190
|
};
|
|
191
|
-
switch (
|
|
191
|
+
switch (e) {
|
|
192
192
|
case 0:
|
|
193
|
-
|
|
193
|
+
t.day = {
|
|
194
194
|
name: "Sunny",
|
|
195
195
|
url: "https://osshz.idmwx.com/asset/weather/01d.svg",
|
|
196
196
|
bg: "https://osshz.idmwx.com/asset/weather/bg1.png"
|
|
197
|
-
},
|
|
197
|
+
}, t.night = {
|
|
198
198
|
name: "Clear",
|
|
199
199
|
url: "https://osshz.idmwx.com/asset/weather/01n.svg",
|
|
200
200
|
bg: "https://osshz.idmwx.com/asset/weather/bg1.png"
|
|
201
201
|
};
|
|
202
202
|
break;
|
|
203
203
|
case 1:
|
|
204
|
-
|
|
204
|
+
t.day = {
|
|
205
205
|
name: "Mainly Sunny",
|
|
206
206
|
url: "https://osshz.idmwx.com/asset/weather/01d.svg",
|
|
207
207
|
bg: "https://osshz.idmwx.com/asset/weather/bg1.png"
|
|
208
|
-
},
|
|
208
|
+
}, t.night = {
|
|
209
209
|
name: "Mainly Clear",
|
|
210
210
|
url: "https://osshz.idmwx.com/asset/weather/01n.svg",
|
|
211
211
|
bg: "https://osshz.idmwx.com/asset/weather/bg1.png"
|
|
212
212
|
};
|
|
213
213
|
break;
|
|
214
214
|
case 2:
|
|
215
|
-
|
|
215
|
+
t.day = {
|
|
216
216
|
name: "Partly Cloudy",
|
|
217
217
|
url: "https://osshz.idmwx.com/asset/weather/02d.svg",
|
|
218
218
|
bg: "https://osshz.idmwx.com/asset/weather/bg2.png"
|
|
219
|
-
},
|
|
219
|
+
}, t.night = {
|
|
220
220
|
name: "Partly Cloudy",
|
|
221
221
|
url: "https://osshz.idmwx.com/asset/weather/02n.svg",
|
|
222
222
|
bg: "https://osshz.idmwx.com/asset/weather/bg2.png"
|
|
223
223
|
};
|
|
224
224
|
break;
|
|
225
225
|
case 3:
|
|
226
|
-
|
|
226
|
+
t.day = {
|
|
227
227
|
name: "Overcast",
|
|
228
228
|
url: "https://osshz.idmwx.com/asset/weather/04d.svg",
|
|
229
229
|
bg: "https://osshz.idmwx.com/asset/weather/bg3.png"
|
|
230
|
-
},
|
|
230
|
+
}, t.night = {
|
|
231
231
|
name: "Overcast",
|
|
232
232
|
url: "https://osshz.idmwx.com/asset/weather/04n.svg",
|
|
233
233
|
bg: "https://osshz.idmwx.com/asset/weather/bg3.png"
|
|
234
234
|
};
|
|
235
235
|
break;
|
|
236
236
|
case 45:
|
|
237
|
-
|
|
237
|
+
t.day = {
|
|
238
238
|
name: "Foggy",
|
|
239
239
|
url: "https://osshz.idmwx.com/asset/weather/50d.svg",
|
|
240
240
|
bg: "https://osshz.idmwx.com/asset/weather/bg4.png"
|
|
241
|
-
},
|
|
241
|
+
}, t.night = {
|
|
242
242
|
name: "Foggy",
|
|
243
243
|
url: "https://osshz.idmwx.com/asset/weather/50n.svg",
|
|
244
244
|
bg: "https://osshz.idmwx.com/asset/weather/bg4.png"
|
|
245
245
|
};
|
|
246
246
|
break;
|
|
247
247
|
case 48:
|
|
248
|
-
|
|
248
|
+
t.day = {
|
|
249
249
|
name: "Rime Fog",
|
|
250
250
|
url: "https://osshz.idmwx.com/asset/weather/50d.svg",
|
|
251
251
|
bg: "https://osshz.idmwx.com/asset/weather/bg4.png"
|
|
252
|
-
},
|
|
252
|
+
}, t.night = {
|
|
253
253
|
name: "Rime Fog",
|
|
254
254
|
url: "https://osshz.idmwx.com/asset/weather/50n.svg",
|
|
255
255
|
bg: "https://osshz.idmwx.com/asset/weather/bg4.png"
|
|
256
256
|
};
|
|
257
257
|
break;
|
|
258
258
|
case 51:
|
|
259
|
-
|
|
259
|
+
t.day = {
|
|
260
260
|
name: "Light Drizzle",
|
|
261
261
|
url: "https://osshz.idmwx.com/asset/weather/14d.svg",
|
|
262
262
|
bg: "https://osshz.idmwx.com/asset/weather/bg5.png"
|
|
263
|
-
},
|
|
263
|
+
}, t.night = {
|
|
264
264
|
name: "Light Drizzle",
|
|
265
265
|
url: "https://osshz.idmwx.com/asset/weather/09n.svg",
|
|
266
266
|
bg: "https://osshz.idmwx.com/asset/weather/bg5.png"
|
|
267
267
|
};
|
|
268
268
|
break;
|
|
269
269
|
case 53:
|
|
270
|
-
|
|
270
|
+
t.day = {
|
|
271
271
|
name: "Drizzle",
|
|
272
272
|
url: "https://osshz.idmwx.com/asset/weather/14d.svg",
|
|
273
273
|
bg: "https://osshz.idmwx.com/asset/weather/bg5.png"
|
|
274
|
-
},
|
|
274
|
+
}, t.night = {
|
|
275
275
|
name: "Drizzle",
|
|
276
276
|
url: "https://osshz.idmwx.com/asset/weather/09n.svg",
|
|
277
277
|
bg: "https://osshz.idmwx.com/asset/weather/bg5.png"
|
|
278
278
|
};
|
|
279
279
|
break;
|
|
280
280
|
case 55:
|
|
281
|
-
|
|
281
|
+
t.day = {
|
|
282
282
|
name: "Heavy Drizzle",
|
|
283
283
|
url: "https://osshz.idmwx.com/asset/weather/15d.svg",
|
|
284
284
|
bg: "https://osshz.idmwx.com/asset/weather/bg5.png"
|
|
285
|
-
},
|
|
285
|
+
}, t.night = {
|
|
286
286
|
name: "Heavy Drizzle",
|
|
287
287
|
url: "https://osshz.idmwx.com/asset/weather/15n.svg",
|
|
288
288
|
bg: "https://osshz.idmwx.com/asset/weather/bg5.png"
|
|
289
289
|
};
|
|
290
290
|
break;
|
|
291
291
|
case 56:
|
|
292
|
-
|
|
292
|
+
t.day = {
|
|
293
293
|
name: "Light Freezing Drizzle",
|
|
294
294
|
url: "https://osshz.idmwx.com/asset/weather/14d.svg",
|
|
295
295
|
bg: "https://osshz.idmwx.com/asset/weather/bg5.png"
|
|
296
|
-
},
|
|
296
|
+
}, t.night = {
|
|
297
297
|
name: "Light Freezing Drizzle",
|
|
298
298
|
url: "https://osshz.idmwx.com/asset/weather/09n.svg",
|
|
299
299
|
bg: "https://osshz.idmwx.com/asset/weather/bg5.png"
|
|
300
300
|
};
|
|
301
301
|
break;
|
|
302
302
|
case 57:
|
|
303
|
-
|
|
303
|
+
t.day = {
|
|
304
304
|
name: "Freezing Drizzle",
|
|
305
305
|
url: "https://osshz.idmwx.com/asset/weather/14d.svg",
|
|
306
306
|
bg: "https://osshz.idmwx.com/asset/weather/bg5.png"
|
|
307
|
-
},
|
|
307
|
+
}, t.night = {
|
|
308
308
|
name: "Freezing Drizzle",
|
|
309
309
|
url: "https://osshz.idmwx.com/asset/weather/09n.svg",
|
|
310
310
|
bg: "https://osshz.idmwx.com/asset/weather/bg5.png"
|
|
311
311
|
};
|
|
312
312
|
break;
|
|
313
313
|
case 61:
|
|
314
|
-
|
|
314
|
+
t.day = {
|
|
315
315
|
name: "Light Rain",
|
|
316
316
|
url: "https://osshz.idmwx.com/asset/weather/16d.svg",
|
|
317
317
|
bg: "https://osshz.idmwx.com/asset/weather/bg5.png"
|
|
318
|
-
},
|
|
318
|
+
}, t.night = {
|
|
319
319
|
name: "Light Rain",
|
|
320
320
|
url: "https://osshz.idmwx.com/asset/weather/10n.svg",
|
|
321
321
|
bg: "https://osshz.idmwx.com/asset/weather/bg5.png"
|
|
322
322
|
};
|
|
323
323
|
break;
|
|
324
324
|
case 63:
|
|
325
|
-
|
|
325
|
+
t.day = {
|
|
326
326
|
name: "Rain",
|
|
327
327
|
url: "https://osshz.idmwx.com/asset/weather/16d.svg",
|
|
328
328
|
bg: "https://osshz.idmwx.com/asset/weather/bg5.png"
|
|
329
|
-
},
|
|
329
|
+
}, t.night = {
|
|
330
330
|
name: "Rain",
|
|
331
331
|
url: "https://osshz.idmwx.com/asset/weather/10n.svg",
|
|
332
332
|
bg: "https://osshz.idmwx.com/asset/weather/bg5.png"
|
|
333
333
|
};
|
|
334
334
|
break;
|
|
335
335
|
case 65:
|
|
336
|
-
|
|
336
|
+
t.day = {
|
|
337
337
|
name: "Heavy Rain",
|
|
338
338
|
url: "https://osshz.idmwx.com/asset/weather/16d.svg",
|
|
339
339
|
bg: "https://osshz.idmwx.com/asset/weather/bg5.png"
|
|
340
|
-
},
|
|
340
|
+
}, t.night = {
|
|
341
341
|
name: "Heavy Rain",
|
|
342
342
|
url: "https://osshz.idmwx.com/asset/weather/10n.svg",
|
|
343
343
|
bg: "https://osshz.idmwx.com/asset/weather/bg5.png"
|
|
344
344
|
};
|
|
345
345
|
break;
|
|
346
346
|
case 66:
|
|
347
|
-
|
|
347
|
+
t.day = {
|
|
348
348
|
name: "Light Freezing Rain",
|
|
349
349
|
url: "https://osshz.idmwx.com/asset/weather/16d.svg",
|
|
350
350
|
bg: "https://osshz.idmwx.com/asset/weather/bg5.png"
|
|
351
|
-
},
|
|
351
|
+
}, t.night = {
|
|
352
352
|
name: "Light Freezing Rain",
|
|
353
353
|
url: "https://osshz.idmwx.com/asset/weather/10n.svg",
|
|
354
354
|
bg: "https://osshz.idmwx.com/asset/weather/bg5.png"
|
|
355
355
|
};
|
|
356
356
|
break;
|
|
357
357
|
case 67:
|
|
358
|
-
|
|
358
|
+
t.day = {
|
|
359
359
|
name: "Freezing Rain",
|
|
360
360
|
url: "https://osshz.idmwx.com/asset/weather/16d.svg",
|
|
361
361
|
bg: "https://osshz.idmwx.com/asset/weather/bg5.png"
|
|
362
|
-
},
|
|
362
|
+
}, t.night = {
|
|
363
363
|
name: "Freezing Rain",
|
|
364
364
|
url: "https://osshz.idmwx.com/asset/weather/10n.svg",
|
|
365
365
|
bg: "https://osshz.idmwx.com/asset/weather/bg5.png"
|
|
366
366
|
};
|
|
367
367
|
break;
|
|
368
368
|
case 71:
|
|
369
|
-
|
|
369
|
+
t.day = {
|
|
370
370
|
name: "Light Snow",
|
|
371
371
|
url: "https://osshz.idmwx.com/asset/weather/17d.svg",
|
|
372
372
|
bg: "https://osshz.idmwx.com/asset/weather/bg6.png"
|
|
373
|
-
},
|
|
373
|
+
}, t.night = {
|
|
374
374
|
name: "Light Snow",
|
|
375
375
|
url: "https://osshz.idmwx.com/asset/weather/13n.svg",
|
|
376
376
|
bg: "https://osshz.idmwx.com/asset/weather/bg6.png"
|
|
377
377
|
};
|
|
378
378
|
break;
|
|
379
379
|
case 73:
|
|
380
|
-
|
|
380
|
+
t.day = {
|
|
381
381
|
name: "Snow",
|
|
382
382
|
url: "https://osshz.idmwx.com/asset/weather/17d.svg",
|
|
383
383
|
bg: "https://osshz.idmwx.com/asset/weather/bg6.png"
|
|
384
|
-
},
|
|
384
|
+
}, t.night = {
|
|
385
385
|
name: "Snow",
|
|
386
386
|
url: "https://osshz.idmwx.com/asset/weather/13n.svg",
|
|
387
387
|
bg: "https://osshz.idmwx.com/asset/weather/bg6.png"
|
|
388
388
|
};
|
|
389
389
|
break;
|
|
390
390
|
case 75:
|
|
391
|
-
|
|
391
|
+
t.day = {
|
|
392
392
|
name: "Heavy Snow",
|
|
393
393
|
url: "https://osshz.idmwx.com/asset/weather/17d.svg",
|
|
394
394
|
bg: "https://osshz.idmwx.com/asset/weather/bg6.png"
|
|
395
|
-
},
|
|
395
|
+
}, t.night = {
|
|
396
396
|
name: "Heavy Snow",
|
|
397
397
|
url: "https://osshz.idmwx.com/asset/weather/13n.svg",
|
|
398
398
|
bg: "https://osshz.idmwx.com/asset/weather/bg6.png"
|
|
399
399
|
};
|
|
400
400
|
break;
|
|
401
401
|
case 77:
|
|
402
|
-
|
|
402
|
+
t.day = {
|
|
403
403
|
name: "Snow Grains",
|
|
404
404
|
url: "https://osshz.idmwx.com/asset/weather/17d.svg",
|
|
405
405
|
bg: "https://osshz.idmwx.com/asset/weather/bg6.png"
|
|
406
|
-
},
|
|
406
|
+
}, t.night = {
|
|
407
407
|
name: "Snow Grains",
|
|
408
408
|
url: "https://osshz.idmwx.com/asset/weather/13n.svg",
|
|
409
409
|
bg: "https://osshz.idmwx.com/asset/weather/bg6.png"
|
|
410
410
|
};
|
|
411
411
|
break;
|
|
412
412
|
case 80:
|
|
413
|
-
|
|
413
|
+
t.day = {
|
|
414
414
|
name: "Light Showers",
|
|
415
415
|
url: "https://osshz.idmwx.com/asset/weather/09d.svg",
|
|
416
416
|
bg: "https://osshz.idmwx.com/asset/weather/bg5.png"
|
|
417
|
-
},
|
|
417
|
+
}, t.night = {
|
|
418
418
|
name: "Light Showers",
|
|
419
419
|
url: "https://osshz.idmwx.com/asset/weather/09n.svg",
|
|
420
420
|
bg: "https://osshz.idmwx.com/asset/weather/bg5.png"
|
|
421
421
|
};
|
|
422
422
|
break;
|
|
423
423
|
case 81:
|
|
424
|
-
|
|
424
|
+
t.day = {
|
|
425
425
|
name: "Showers",
|
|
426
426
|
url: "https://osshz.idmwx.com/asset/weather/09d.svg",
|
|
427
427
|
bg: "https://osshz.idmwx.com/asset/weather/bg5.png"
|
|
428
|
-
},
|
|
428
|
+
}, t.night = {
|
|
429
429
|
name: "Showers",
|
|
430
430
|
url: "https://osshz.idmwx.com/asset/weather/09n.svg",
|
|
431
431
|
bg: "https://osshz.idmwx.com/asset/weather/bg5.png"
|
|
432
432
|
};
|
|
433
433
|
break;
|
|
434
434
|
case 82:
|
|
435
|
-
|
|
435
|
+
t.day = {
|
|
436
436
|
name: "Heavy Showers",
|
|
437
437
|
url: "https://osshz.idmwx.com/asset/weather/09d.svg",
|
|
438
438
|
bg: "https://osshz.idmwx.com/asset/weather/bg5.png"
|
|
439
|
-
},
|
|
439
|
+
}, t.night = {
|
|
440
440
|
name: "Heavy Showers",
|
|
441
441
|
url: "https://osshz.idmwx.com/asset/weather/09n.svg",
|
|
442
442
|
bg: "https://osshz.idmwx.com/asset/weather/bg5.png"
|
|
443
443
|
};
|
|
444
444
|
break;
|
|
445
445
|
case 85:
|
|
446
|
-
|
|
446
|
+
t.day = {
|
|
447
447
|
name: "Light Snow Showers",
|
|
448
448
|
url: "https://osshz.idmwx.com/asset/weather/13d.svg",
|
|
449
449
|
bg: "https://osshz.idmwx.com/asset/weather/bg6.png"
|
|
450
|
-
},
|
|
450
|
+
}, t.night = {
|
|
451
451
|
name: "Light Snow Showers",
|
|
452
452
|
url: "https://osshz.idmwx.com/asset/weather/13n.svg",
|
|
453
453
|
bg: "https://osshz.idmwx.com/asset/weather/bg6.png"
|
|
454
454
|
};
|
|
455
455
|
break;
|
|
456
456
|
case 86:
|
|
457
|
-
|
|
457
|
+
t.day = {
|
|
458
458
|
name: "Snow Showers",
|
|
459
459
|
url: "https://osshz.idmwx.com/asset/weather/13d.svg",
|
|
460
460
|
bg: "https://osshz.idmwx.com/asset/weather/bg6.png"
|
|
461
|
-
},
|
|
461
|
+
}, t.night = {
|
|
462
462
|
name: "Snow Showers",
|
|
463
463
|
url: "https://osshz.idmwx.com/asset/weather/13n.svg",
|
|
464
464
|
bg: "https://osshz.idmwx.com/asset/weather/bg6.png"
|
|
465
465
|
};
|
|
466
466
|
break;
|
|
467
467
|
case 95:
|
|
468
|
-
|
|
468
|
+
t.day = {
|
|
469
469
|
name: "Thunderstorm",
|
|
470
470
|
url: "https://osshz.idmwx.com/asset/weather/11d.svg",
|
|
471
471
|
bg: "https://osshz.idmwx.com/asset/weather/bg5.png"
|
|
472
|
-
},
|
|
472
|
+
}, t.night = {
|
|
473
473
|
name: "Thunderstorm",
|
|
474
474
|
url: "https://osshz.idmwx.com/asset/weather/11n.svg",
|
|
475
475
|
bg: "https://osshz.idmwx.com/asset/weather/bg5.png"
|
|
476
476
|
};
|
|
477
477
|
break;
|
|
478
478
|
case 96:
|
|
479
|
-
|
|
479
|
+
t.day = {
|
|
480
480
|
name: "Light Thunderstorms With Hail",
|
|
481
481
|
url: "https://osshz.idmwx.com/asset/weather/11d.svg",
|
|
482
482
|
bg: "https://osshz.idmwx.com/asset/weather/bg5.png"
|
|
483
|
-
},
|
|
483
|
+
}, t.night = {
|
|
484
484
|
name: "Light Thunderstorms With Hail",
|
|
485
485
|
url: "https://osshz.idmwx.com/asset/weather/11n.svg",
|
|
486
486
|
bg: "https://osshz.idmwx.com/asset/weather/bg5.png"
|
|
487
487
|
};
|
|
488
488
|
break;
|
|
489
489
|
case 99:
|
|
490
|
-
|
|
490
|
+
t.day = {
|
|
491
491
|
name: "Thunderstorms With Hail",
|
|
492
492
|
url: "https://osshz.idmwx.com/asset/weather/11d.svg",
|
|
493
493
|
bg: "https://osshz.idmwx.com/asset/weather/bg5.png"
|
|
494
|
-
},
|
|
494
|
+
}, t.night = {
|
|
495
495
|
name: "Thunderstorms With Hail",
|
|
496
496
|
url: "https://osshz.idmwx.com/asset/weather/11n.svg",
|
|
497
497
|
bg: "https://osshz.idmwx.com/asset/weather/bg5.png"
|
|
498
498
|
};
|
|
499
499
|
break;
|
|
500
500
|
}
|
|
501
|
-
return
|
|
501
|
+
return t;
|
|
502
502
|
}
|
|
503
|
-
static kts2ms(
|
|
504
|
-
return isNaN(
|
|
503
|
+
static kts2ms(e) {
|
|
504
|
+
return isNaN(e) || e === null ? e : Math.round(e * 1852 / 3600 * 1e4) / 1e4;
|
|
505
505
|
}
|
|
506
|
-
static kts2kmh(
|
|
507
|
-
return isNaN(
|
|
506
|
+
static kts2kmh(e) {
|
|
507
|
+
return isNaN(e) || e === null ? e : e * 1.852;
|
|
508
508
|
}
|
|
509
|
-
static m2nm(
|
|
510
|
-
return isNaN(
|
|
509
|
+
static m2nm(e) {
|
|
510
|
+
return isNaN(e) || e === null ? e : Math.round(e / 1e3 / 1.852 * 1e4) / 1e4;
|
|
511
511
|
}
|
|
512
|
-
static kmh2kts(
|
|
513
|
-
return isNaN(
|
|
512
|
+
static kmh2kts(e) {
|
|
513
|
+
return isNaN(e) || e === null ? e : this.ms2kts(e * 1e3 / 3600);
|
|
514
514
|
}
|
|
515
|
-
static ms2kts(
|
|
516
|
-
return isNaN(
|
|
515
|
+
static ms2kts(e) {
|
|
516
|
+
return isNaN(e) || e === null ? e : Math.round(e * 3600 / 1852 * 1e4) / 1e4;
|
|
517
517
|
}
|
|
518
518
|
/**
|
|
519
519
|
* 角度转为弧度
|
|
520
520
|
* @param degree
|
|
521
521
|
*/
|
|
522
|
-
static degree2Radian(
|
|
523
|
-
if (isNaN(
|
|
524
|
-
return
|
|
525
|
-
let
|
|
526
|
-
return
|
|
522
|
+
static degree2Radian(e) {
|
|
523
|
+
if (isNaN(e) || e === null)
|
|
524
|
+
return e;
|
|
525
|
+
let t = e % 360 / 360 * 2 * Math.PI;
|
|
526
|
+
return t = t < 0 ? t + 2 * Math.PI : t, t;
|
|
527
527
|
}
|
|
528
528
|
/**
|
|
529
529
|
* 将方位角转换为方向
|
|
530
530
|
* @param degree 角度[-360,360]
|
|
531
531
|
* @return {string}
|
|
532
532
|
*/
|
|
533
|
-
static degree2Direction(
|
|
534
|
-
const
|
|
535
|
-
if (isNaN(
|
|
533
|
+
static degree2Direction(e) {
|
|
534
|
+
const t = this.degree2Radian(e);
|
|
535
|
+
if (isNaN(t) || t === null)
|
|
536
536
|
return null;
|
|
537
537
|
let h = "N/A";
|
|
538
538
|
const s = Math.PI / 16;
|
|
539
|
-
return
|
|
539
|
+
return t < s ? h = "N" : t >= s && t < 3 * s ? h = "NNE" : t >= 3 * s && t < 5 * s ? h = "NE" : t >= 5 * s && t < 7 * s ? h = "ENE" : t >= 7 * s && t < 9 * s ? h = "E" : t >= 9 * s && t < 11 * s ? h = "ESE" : t >= 11 * s && t < 13 * s ? h = "SE" : t >= 13 * s && t < 15 * s ? h = "SSE" : t >= 15 * s && t < 17 * s ? h = "S" : t >= 17 * s && t < 19 * s ? h = "SSW" : t >= 19 * s && t < 21 * s ? h = "SW" : t >= 21 * s && t < 23 * s ? h = "WSW" : t >= 23 * s && t < 25 * s ? h = "W" : t >= 25 * s && t < 27 * s ? h = "WNW" : t >= 27 * s && t < 29 * s ? h = "NW" : t >= 29 * s && t < 31 * s ? h = "NNW" : t >= 31 * s && t < 32 * s && (h = "N"), h;
|
|
540
540
|
}
|
|
541
541
|
/**
|
|
542
542
|
* 计算风力蒲福等级
|
|
543
543
|
* @param speed m/s
|
|
544
544
|
* @returns {number}
|
|
545
545
|
*/
|
|
546
|
-
static beaufort(
|
|
547
|
-
let
|
|
548
|
-
return isNaN(
|
|
546
|
+
static beaufort(e) {
|
|
547
|
+
let t = 0;
|
|
548
|
+
return isNaN(e) || (e = Math.round(e * 10) / 10, e <= 0.2 ? t = 0 : e <= 1.5 ? t = 1 : e <= 3.3 ? t = 2 : e <= 5.4 ? t = 3 : e <= 7.9 ? t = 4 : e <= 10.7 ? t = 5 : e <= 13.8 ? t = 6 : e <= 17.1 ? t = 7 : e <= 20.7 ? t = 8 : e <= 22.4 ? t = 9 : e <= 28.4 ? t = 10 : e <= 32.6 ? t = 11 : e > 32.6 && (t = 12)), t;
|
|
549
549
|
}
|
|
550
550
|
/**
|
|
551
551
|
* 计算海浪等级
|
|
552
552
|
* @param height 高度 m
|
|
553
553
|
*/
|
|
554
|
-
static douglas(
|
|
555
|
-
let
|
|
556
|
-
return isNaN(
|
|
554
|
+
static douglas(e) {
|
|
555
|
+
let t = "Calm";
|
|
556
|
+
return isNaN(e) || e <= 0.1 ? t = "Calm" : e <= 0.5 ? t = "Smooth" : e <= 1.25 ? t = "Slight" : e <= 2.5 ? t = "Moderate" : e <= 4 ? t = "Rough" : e <= 6 ? t = "VeryRough" : e <= 9 ? t = "High" : e <= 14 ? t = "VeryHigh" : t = "Precipitous", t;
|
|
557
557
|
}
|
|
558
558
|
}
|
|
559
|
-
const
|
|
560
|
-
const
|
|
561
|
-
for (const [h, s] of
|
|
562
|
-
|
|
563
|
-
return
|
|
564
|
-
},
|
|
559
|
+
const We = (l, e) => {
|
|
560
|
+
const t = l.__vccOpts || l;
|
|
561
|
+
for (const [h, s] of e)
|
|
562
|
+
t[h] = s;
|
|
563
|
+
return t;
|
|
564
|
+
}, Te = {
|
|
565
565
|
name: "SpotReport",
|
|
566
566
|
props: {
|
|
567
567
|
token: {
|
|
@@ -570,7 +570,7 @@ const St = (l, t) => {
|
|
|
570
570
|
},
|
|
571
571
|
ts: {
|
|
572
572
|
type: String,
|
|
573
|
-
default:
|
|
573
|
+
default: X().utc().format()
|
|
574
574
|
},
|
|
575
575
|
timeZone: {
|
|
576
576
|
type: Number,
|
|
@@ -586,7 +586,8 @@ const St = (l, t) => {
|
|
|
586
586
|
return {
|
|
587
587
|
placeholder: "search for port name or coordinates",
|
|
588
588
|
searchName: void 0,
|
|
589
|
-
rawSearchIcon:
|
|
589
|
+
rawSearchIcon: Pe(Ce),
|
|
590
|
+
positionOffset: void 0,
|
|
590
591
|
positionGmt: void 0,
|
|
591
592
|
issuedDate: void 0,
|
|
592
593
|
meteoData: {},
|
|
@@ -605,49 +606,49 @@ const St = (l, t) => {
|
|
|
605
606
|
computed: {
|
|
606
607
|
computeHourL() {
|
|
607
608
|
return function(l) {
|
|
608
|
-
return l ? `${
|
|
609
|
+
return l ? `${ee(l).tz(this.positionGmt).format("HH")}` : "-";
|
|
609
610
|
};
|
|
610
611
|
},
|
|
611
612
|
computeHourZ() {
|
|
612
613
|
return function(l) {
|
|
613
|
-
return l ? `${
|
|
614
|
+
return l ? `${X(l).utc().format("HH")}Z` : "-";
|
|
614
615
|
};
|
|
615
616
|
},
|
|
616
617
|
computeWeek() {
|
|
617
618
|
return function(l) {
|
|
618
|
-
return l ? `${
|
|
619
|
+
return l ? `${ee(l).tz(this.positionGmt).format("dddd")}` : "-";
|
|
619
620
|
};
|
|
620
621
|
},
|
|
621
622
|
computeMMMDD() {
|
|
622
623
|
return function(l) {
|
|
623
|
-
return l ? `${
|
|
624
|
+
return l ? `${ee(l).tz(this.positionGmt).format("MMM-DD")}` : "-";
|
|
624
625
|
};
|
|
625
626
|
},
|
|
626
627
|
computeLat() {
|
|
627
|
-
return function(l,
|
|
628
|
-
return
|
|
628
|
+
return function(l, e = 4) {
|
|
629
|
+
return ue.lat2pretty(l, e).pretty;
|
|
629
630
|
};
|
|
630
631
|
},
|
|
631
632
|
computeLng() {
|
|
632
|
-
return function(l,
|
|
633
|
-
return
|
|
633
|
+
return function(l, e = 4) {
|
|
634
|
+
return ue.lng2pretty(l, e).pretty;
|
|
634
635
|
};
|
|
635
636
|
},
|
|
636
637
|
roundPrecision() {
|
|
637
|
-
return function(l,
|
|
638
|
-
return isNaN(l) ? "-" :
|
|
638
|
+
return function(l, e = 4) {
|
|
639
|
+
return isNaN(l) ? "-" : ue.roundPrecision(l, e);
|
|
639
640
|
};
|
|
640
641
|
}
|
|
641
642
|
},
|
|
642
643
|
watch: {
|
|
643
644
|
"report.version": {
|
|
644
645
|
handler() {
|
|
645
|
-
var l,
|
|
646
|
+
var l, e, t;
|
|
646
647
|
this.report && (this.meteoData = this.report, this.position = {
|
|
647
648
|
id: this.report.portId,
|
|
648
649
|
lat: (l = this.report) == null ? void 0 : l.lat,
|
|
649
|
-
lng: (
|
|
650
|
-
name: ((
|
|
650
|
+
lng: (e = this.report) == null ? void 0 : e.lng,
|
|
651
|
+
name: ((t = this.report) == null ? void 0 : t.searchName) || this.computeLat(this.report.lat) + "," + this.computeLng(this.report.lng)
|
|
651
652
|
}, this.handleRender());
|
|
652
653
|
}
|
|
653
654
|
}
|
|
@@ -659,14 +660,14 @@ const St = (l, t) => {
|
|
|
659
660
|
});
|
|
660
661
|
},
|
|
661
662
|
initInfo() {
|
|
662
|
-
var l, t;
|
|
663
|
-
this.loading = !1, this.positionGmt = (
|
|
664
|
-
var
|
|
665
|
-
return
|
|
663
|
+
var l, e, t, h;
|
|
664
|
+
this.loading = !1, this.positionGmt = (e = (l = this.meteoData.weather) == null ? void 0 : l[0]) == null ? void 0 : e.timezone, this.positionOffset = (h = (t = this.meteoData.weather) == null ? void 0 : t[0]) == null ? void 0 : h.offset, this.issuedDate = X(this.ts).utc().format("MMM-DD/HHmm[Z], YYYY"), this.activeIndex = ee(this.ts).tz(this.positionGmt).hour(), this.pickedDate = ee(this.ts).tz(this.positionGmt).set({ hour: 0, minute: 0, second: 0, millisecond: 0 }).format(), this.collectList = JSON.parse(localStorage.getItem("idmCollectList") || "[]"), this.positionList = JSON.parse(JSON.stringify(this.collectList)), this.isCollected = this.collectList.some((s) => {
|
|
665
|
+
var w;
|
|
666
|
+
return s.name === ((w = this.position) == null ? void 0 : w.name);
|
|
666
667
|
});
|
|
667
668
|
},
|
|
668
669
|
initTableData() {
|
|
669
|
-
var l,
|
|
670
|
+
var l, e, t, h, s, w, M, C, S, L, N, I, P, H, a, r, K, D, R, A, E, G, F, O, B, V, U, Z, J, Y, j, g, k, p;
|
|
670
671
|
this.tableData = {
|
|
671
672
|
hours: [],
|
|
672
673
|
utcHours: [],
|
|
@@ -693,52 +694,52 @@ const St = (l, t) => {
|
|
|
693
694
|
seaLevel: [],
|
|
694
695
|
seaTemp: []
|
|
695
696
|
};
|
|
696
|
-
for (let
|
|
697
|
-
const W =
|
|
697
|
+
for (let y = 0; y < 24; y++) {
|
|
698
|
+
const W = X(this.pickedDate).clone().add(y, "h").format();
|
|
698
699
|
this.tableData.hours.push(W);
|
|
699
|
-
const
|
|
700
|
-
this.tableData.weatherUrls.push((
|
|
700
|
+
const v = ((l = Se.pickHourly(this.meteoData, W)) == null ? void 0 : l[0]) || {};
|
|
701
|
+
this.tableData.weatherUrls.push((e = v.weather) == null ? void 0 : e.url), this.tableData.weatherNames.push(((t = v.weather) == null ? void 0 : t.name) ?? "-"), this.tableData.temp.push(this.roundPrecision((h = v.weather) == null ? void 0 : h.temp, 0) ?? "-"), this.tableData.precipProbability.push(this.roundPrecision((w = (s = v.weather) == null ? void 0 : s.precip) == null ? void 0 : w.probability, 0) ?? "-"), this.tableData.precip1h.push(this.roundPrecision((C = (M = v.weather) == null ? void 0 : M.precip) == null ? void 0 : C.sum, 0) ?? "-"), this.tableData.visibility.push(this.roundPrecision((S = v.weather) == null ? void 0 : S.visibility, 0) ?? "-"), this.tableData.humidity.push(this.roundPrecision((L = v.weather) == null ? void 0 : L.rh, 0) ?? "-"), this.tableData.windSpeed.push(this.roundPrecision((I = (N = v.weather) == null ? void 0 : N.wind) == null ? void 0 : I.kts, 1)), this.tableData.windDir.push((H = (P = v.weather) == null ? void 0 : P.wind) == null ? void 0 : H.bearing), this.tableData.windGust.push(this.roundPrecision((r = (a = v.weather) == null ? void 0 : a.wind) == null ? void 0 : r.gusts, 1) ?? "-"), this.tableData.sigwaveHeight.push(this.roundPrecision((D = (K = v.wave) == null ? void 0 : K.sig) == null ? void 0 : D.height, 1) ?? "-"), this.tableData.sigwaveDir.push((A = (R = v.wave) == null ? void 0 : R.sig) == null ? void 0 : A.bearing), this.tableData.windwaveHeight.push(this.roundPrecision((G = (E = v.wave) == null ? void 0 : E.wd) == null ? void 0 : G.height, 1) ?? "-"), this.tableData.windwaveDir.push((O = (F = v.wave) == null ? void 0 : F.wd) == null ? void 0 : O.bearing), this.tableData.windwavePeriod.push(this.roundPrecision((V = (B = v.wave) == null ? void 0 : B.wd) == null ? void 0 : V.period, 1) ?? "-"), this.tableData.swellHeight.push(this.roundPrecision((Z = (U = v.wave) == null ? void 0 : U.swell) == null ? void 0 : Z.height, 1) ?? "-"), this.tableData.swellDir.push((Y = (J = v.wave) == null ? void 0 : J.swell) == null ? void 0 : Y.bearing), this.tableData.swellPeriod.push(this.roundPrecision((g = (j = v.wave) == null ? void 0 : j.swell) == null ? void 0 : g.period, 1) ?? "-"), this.tableData.currentSpeed.push(this.roundPrecision((k = v.current) == null ? void 0 : k.speed, 1) ?? "-"), this.tableData.currentDir.push((p = v.current) == null ? void 0 : p.bearing), this.tableData.seaLevel.push(this.roundPrecision(v.height, 1) ?? "-"), this.tableData.seaTemp.push(this.roundPrecision(v.sst, 0) ?? "-");
|
|
701
702
|
}
|
|
702
703
|
},
|
|
703
704
|
initEchart() {
|
|
704
|
-
var
|
|
705
|
-
const l = [],
|
|
706
|
-
for (let
|
|
707
|
-
const k =
|
|
708
|
-
l.push(
|
|
709
|
-
const
|
|
710
|
-
h.push(this.roundPrecision((
|
|
705
|
+
var R, A, E, G, F, O, B, V, U, Z, J, Y, j;
|
|
706
|
+
const l = [], e = [], t = [], h = [], s = [], w = [], M = [], C = [], S = [], L = [], N = {};
|
|
707
|
+
for (let g = 0; g < 7; g++) {
|
|
708
|
+
const k = X(this.pickedDate).clone().add(g, "d");
|
|
709
|
+
l.push(ee(k).tz(this.positionGmt).format("yyyy-MM-DD")), e.push(this.computeMMMDD(k)), t.push(g === 0 ? "Today" : this.computeWeek(k));
|
|
710
|
+
const p = ((R = Se.pickDaily(this.meteoData, k)) == null ? void 0 : R[0]) || {};
|
|
711
|
+
h.push(this.roundPrecision((E = (A = p.weather) == null ? void 0 : A.temp) == null ? void 0 : E.min, 0)), s.push(this.roundPrecision((F = (G = p.weather) == null ? void 0 : G.temp) == null ? void 0 : F.max, 0)), C.push(this.roundPrecision((B = (O = p.weather) == null ? void 0 : O.wind) == null ? void 0 : B.kts, 1) ?? "- kts"), L.push(this.roundPrecision((U = (V = p.weather) == null ? void 0 : V.precip) == null ? void 0 : U.sum, 0) ?? "- mm"), w.push({ symbol: "image://" + ((Z = p.weather) == null ? void 0 : Z.url) }), M.push((J = p.weather) == null ? void 0 : J.name), S.push((j = (Y = p.weather) == null ? void 0 : Y.wind) == null ? void 0 : j.degree);
|
|
711
712
|
}
|
|
712
|
-
const I = Math.max(...s.filter((
|
|
713
|
+
const I = Math.max(...s.filter((g) => typeof g == "number" && !isNaN(g))) - Math.min(...h.filter((g) => typeof g == "number" && !isNaN(g))), P = Math.min(...h.filter((g) => typeof g == "number" && !isNaN(g))) - 1.5 * I, H = Math.max(...s.filter((g) => typeof g == "number" && !isNaN(g))) + 2 * I, a = 4 + 0.5 / l.length * 92 + "%", r = "data:image/svg+xml;base64," + window.btoa(
|
|
713
714
|
unescape(
|
|
714
715
|
encodeURIComponent(
|
|
715
716
|
'<svg t="1740385441519" class="icon" viewBox="0 0 1024 1024" version="1.1" xmlns="http://www.w3.org/2000/svg" p-id="10951" width="200" height="200"><path d="M512 804.83593751A276.87183211 276.87183211 0 0 1 235.12816789 527.9641054Q235.12816789 375.21005376 512 13.82031251q276.87183211 361.30792288 276.87183211 514.14379289a276.87183211 276.87183211 0 0 1-276.87183211 276.87183211zM294.4461577 527.9641054a217.47202472 217.47202472 0 0 0 217.5538423 217.55384231 19.79993605 19.79993605 0 1 0 0-39.51805453 177.9539702 177.9539702 0 0 1-177.9539702-178.03578778 19.79993605 19.79993605 0 0 0-39.5998721 0z" fill="#0c73a8" p-id="10952"></path></svg>'
|
|
716
717
|
)
|
|
717
718
|
)
|
|
718
|
-
),
|
|
719
|
+
), K = "data:image/svg+xml;base64," + window.btoa(
|
|
719
720
|
unescape(
|
|
720
721
|
encodeURIComponent(
|
|
721
722
|
'<svg t="1740383449285" class="icon" viewBox="0 0 1024 1024" version="1.1" xmlns="http://www.w3.org/2000/svg" p-id="10797" width="200" height="200"><path d="M133.8 579l-44.4-44.4c-18.8-18.8-18.8-49.2 0-67.8L478 78c18.8-18.8 49.2-18.8 67.8 0l388.6 388.6c18.8 18.8 18.8 49.2 0 67.8L890 578.8c-19 19-50 18.6-68.6-0.8L592 337.2V912c0 26.6-21.4 48-48 48h-64c-26.6 0-48-21.4-48-48V337.2L202.4 578.2c-18.6 19.6-49.6 20-68.6 0.8z" fill="#ffffff" p-id="10798"></path></svg>'
|
|
722
723
|
)
|
|
723
724
|
)
|
|
724
725
|
), D = new Image(64, 64);
|
|
725
|
-
D.src =
|
|
726
|
-
for (let
|
|
727
|
-
const
|
|
728
|
-
|
|
729
|
-
const
|
|
730
|
-
W.translate(
|
|
731
|
-
const
|
|
732
|
-
N[`WindIcon${
|
|
726
|
+
D.src = K, D.onload = () => {
|
|
727
|
+
for (let p = 0; p < 7; p++) {
|
|
728
|
+
const y = document.createElement("canvas"), W = y.getContext("2d");
|
|
729
|
+
y.width = D.width, y.height = D.height;
|
|
730
|
+
const q = S[p] * (Math.PI / 180);
|
|
731
|
+
W.translate(y.width / 2, y.height / 2), W.rotate(q), W.translate(-D.width / 2, -D.height / 2), W.drawImage(D, 0, 0, 64, 64);
|
|
732
|
+
const te = y.toDataURL();
|
|
733
|
+
N[`WindIcon${p}`] = {
|
|
733
734
|
height: 12,
|
|
734
735
|
width: 12,
|
|
735
736
|
align: "left",
|
|
736
737
|
backgroundColor: {
|
|
737
|
-
image:
|
|
738
|
+
image: te
|
|
738
739
|
}
|
|
739
740
|
};
|
|
740
741
|
}
|
|
741
|
-
const
|
|
742
|
+
const g = ke.init(document.getElementById("weather-chart")), k = {
|
|
742
743
|
grid: {
|
|
743
744
|
bottom: 0,
|
|
744
745
|
top: 0,
|
|
@@ -749,8 +750,8 @@ const St = (l, t) => {
|
|
|
749
750
|
trigger: "item",
|
|
750
751
|
show: !0,
|
|
751
752
|
position: "right",
|
|
752
|
-
formatter: function(
|
|
753
|
-
return
|
|
753
|
+
formatter: function(p) {
|
|
754
|
+
return p.seriesName === "Weather Icon" ? M[p.dataIndex] : !1;
|
|
754
755
|
}
|
|
755
756
|
},
|
|
756
757
|
legend: {
|
|
@@ -912,7 +913,7 @@ const St = (l, t) => {
|
|
|
912
913
|
singleAxisIndex: 0,
|
|
913
914
|
coordinateSystem: "singleAxis",
|
|
914
915
|
type: "scatter",
|
|
915
|
-
data:
|
|
916
|
+
data: t,
|
|
916
917
|
label: {
|
|
917
918
|
show: !0,
|
|
918
919
|
color: "#fff",
|
|
@@ -925,7 +926,7 @@ const St = (l, t) => {
|
|
|
925
926
|
singleAxisIndex: 1,
|
|
926
927
|
coordinateSystem: "singleAxis",
|
|
927
928
|
type: "scatter",
|
|
928
|
-
data:
|
|
929
|
+
data: e,
|
|
929
930
|
label: {
|
|
930
931
|
show: !0,
|
|
931
932
|
color: "#fff",
|
|
@@ -938,7 +939,7 @@ const St = (l, t) => {
|
|
|
938
939
|
singleAxisIndex: 2,
|
|
939
940
|
coordinateSystem: "singleAxis",
|
|
940
941
|
type: "scatter",
|
|
941
|
-
data:
|
|
942
|
+
data: w,
|
|
942
943
|
symbolSize: 36
|
|
943
944
|
},
|
|
944
945
|
{
|
|
@@ -1004,8 +1005,8 @@ const St = (l, t) => {
|
|
|
1004
1005
|
vertical: "center"
|
|
1005
1006
|
}
|
|
1006
1007
|
},
|
|
1007
|
-
formatter: function(
|
|
1008
|
-
return `{WindIcon${
|
|
1008
|
+
formatter: function(p) {
|
|
1009
|
+
return `{WindIcon${p.dataIndex}|}{title|${p.value}} kts`;
|
|
1009
1010
|
}
|
|
1010
1011
|
},
|
|
1011
1012
|
symbolSize: 0
|
|
@@ -1033,31 +1034,31 @@ const St = (l, t) => {
|
|
|
1033
1034
|
vertical: "center"
|
|
1034
1035
|
}
|
|
1035
1036
|
},
|
|
1036
|
-
formatter: function(
|
|
1037
|
-
return `{dIcon|}{title|${
|
|
1037
|
+
formatter: function(p) {
|
|
1038
|
+
return `{dIcon|}{title|${p.value}} mm`;
|
|
1038
1039
|
}
|
|
1039
1040
|
},
|
|
1040
1041
|
symbolSize: 0
|
|
1041
1042
|
}
|
|
1042
1043
|
]
|
|
1043
1044
|
};
|
|
1044
|
-
|
|
1045
|
-
const
|
|
1046
|
-
this.pickedDate =
|
|
1045
|
+
g.setOption(k), g.on("click", (p) => {
|
|
1046
|
+
const y = p.dataIndex;
|
|
1047
|
+
this.pickedDate = ee(l[y]).tz(this.positionGmt).set({ hour: 0, minute: 0, second: 0, millisecond: 0 }).format(), this.pickedWeek = y === 0 ? "Today" : this.computeWeek(this.pickedDate), this.activeIndex = y === 0 ? ee(this.ts).tz(this.positionGmt).hour() : void 0, this.initTableData(), k.series[3].markArea = {
|
|
1047
1048
|
itemStyle: {
|
|
1048
1049
|
color: "rgb(71,143,206)"
|
|
1049
1050
|
},
|
|
1050
1051
|
data: [
|
|
1051
1052
|
[
|
|
1052
1053
|
{
|
|
1053
|
-
x: 4 +
|
|
1054
|
+
x: 4 + y / l.length * 92 + "%"
|
|
1054
1055
|
},
|
|
1055
1056
|
{
|
|
1056
|
-
x: 4 + (
|
|
1057
|
+
x: 4 + (y + 1) / l.length * 92 + "%"
|
|
1057
1058
|
}
|
|
1058
1059
|
]
|
|
1059
1060
|
]
|
|
1060
|
-
},
|
|
1061
|
+
}, g.setOption(k);
|
|
1061
1062
|
});
|
|
1062
1063
|
};
|
|
1063
1064
|
},
|
|
@@ -1066,24 +1067,24 @@ const St = (l, t) => {
|
|
|
1066
1067
|
},
|
|
1067
1068
|
async fetchSuggestPosition(l) {
|
|
1068
1069
|
var h;
|
|
1069
|
-
const
|
|
1070
|
-
if (!
|
|
1070
|
+
const e = l.replaceAll(",", ",");
|
|
1071
|
+
if (!e)
|
|
1071
1072
|
return this.positionList = this.collectList, !1;
|
|
1072
|
-
const
|
|
1073
|
+
const t = await De.get(`https://cbe.idmwx.com/api/arc/ports/suggest?n=${e}`, {
|
|
1073
1074
|
headers: {
|
|
1074
1075
|
Authorization: this.token
|
|
1075
1076
|
}
|
|
1076
1077
|
});
|
|
1077
|
-
(
|
|
1078
|
+
(t == null ? void 0 : t.data.code) === 0 && (this.positionList = (h = t == null ? void 0 : t.data.data) == null ? void 0 : h.map((s) => (s.name = s.id ? s.name : this.computeLat(s.lat) + ", " + this.computeLng(s.lng), s)));
|
|
1078
1079
|
},
|
|
1079
1080
|
async handleFetchMeteo() {
|
|
1080
|
-
var
|
|
1081
|
+
var t, h, s;
|
|
1081
1082
|
if (!this.searchName)
|
|
1082
1083
|
return !1;
|
|
1083
1084
|
this.position = {
|
|
1084
|
-
portId: (
|
|
1085
|
-
lat: (h = this.positionList.find((
|
|
1086
|
-
lng: (s = this.positionList.find((
|
|
1085
|
+
portId: (t = this.positionList.find((w) => w.name === this.searchName)) == null ? void 0 : t.id,
|
|
1086
|
+
lat: (h = this.positionList.find((w) => w.name === this.searchName)) == null ? void 0 : h.lat,
|
|
1087
|
+
lng: (s = this.positionList.find((w) => w.name === this.searchName)) == null ? void 0 : s.lng,
|
|
1087
1088
|
name: this.searchName
|
|
1088
1089
|
}, this.$emit("url", this.position), this.handleClear();
|
|
1089
1090
|
const l = {
|
|
@@ -1092,48 +1093,48 @@ const St = (l, t) => {
|
|
|
1092
1093
|
// datetime: this.ts ? moment(this.ts).utc().add(-1,'d').format() : moment().add(-1,'d').utc().format(),
|
|
1093
1094
|
forecastDays: 8,
|
|
1094
1095
|
selfHosted: !1
|
|
1095
|
-
},
|
|
1096
|
+
}, e = await De.post("https://cbe.idmwx.com/api/arc/meteo2/spot/forecast", l, {
|
|
1096
1097
|
headers: {
|
|
1097
1098
|
Authorization: this.token
|
|
1098
1099
|
}
|
|
1099
1100
|
});
|
|
1100
|
-
(
|
|
1101
|
-
...
|
|
1101
|
+
(e == null ? void 0 : e.data.code) === 0 && (this.meteoData = {
|
|
1102
|
+
...e == null ? void 0 : e.data.data
|
|
1102
1103
|
}), this.handleRender();
|
|
1103
1104
|
},
|
|
1104
1105
|
handleClear() {
|
|
1105
|
-
this.loading = !0, this.meteoData = {}, this.isCollected = !1,
|
|
1106
|
+
this.loading = !0, this.meteoData = {}, this.isCollected = !1, ke.dispose(document.getElementById("weather-chart"));
|
|
1106
1107
|
}
|
|
1107
1108
|
}
|
|
1108
|
-
},
|
|
1109
|
+
}, Re = { class: "spot-report" }, Ae = { class: "header-box flex-between" }, Ee = { class: "bg" }, Ge = { class: "search-box flex-start" }, Fe = { class: "content-box" }, Oe = { class: "title-box flex-between" }, Be = { class: "main-title" }, Ve = { class: "sub-title" }, Ue = { class: "flex-end" }, Ze = {
|
|
1109
1110
|
key: 0,
|
|
1110
1111
|
id: "weather-chart"
|
|
1111
|
-
},
|
|
1112
|
+
}, Je = {
|
|
1112
1113
|
key: 1,
|
|
1113
1114
|
class: "weather-chart flex-center"
|
|
1114
|
-
},
|
|
1115
|
+
}, Ye = {
|
|
1115
1116
|
key: 2,
|
|
1116
1117
|
class: "weather-chart flex-center"
|
|
1117
|
-
},
|
|
1118
|
+
}, je = {
|
|
1118
1119
|
key: 3,
|
|
1119
1120
|
class: "card-box"
|
|
1120
|
-
},
|
|
1121
|
+
}, qe = { class: "date" }, Qe = { class: "basic-table" }, Ke = { class: "day" }, Xe = { class: "hour" }, $e = { class: "icon" }, et = ["src"], tt = { class: "text" }, st = { class: "text" }, at = { class: "text" }, it = { class: "text" }, nt = { class: "text" }, ot = { class: "text" }, rt = { key: 1 }, lt = { class: "text" }, ht = { class: "text" }, dt = { class: "wave-current-table" }, ct = { class: "text" }, pt = { class: "text" }, mt = { key: 1 }, ut = { class: "text" }, wt = { class: "text" }, gt = { class: "text" }, vt = { key: 1 }, bt = { class: "text" }, xt = { class: "text" }, ft = { class: "text" }, yt = { key: 1 }, _t = { class: "text" }, zt = { class: "sea-table" }, kt = { class: "text" }, Dt = { class: "text" }, St = {
|
|
1121
1122
|
key: 4,
|
|
1122
1123
|
class: "card-box flex-center"
|
|
1123
|
-
},
|
|
1124
|
+
}, Lt = {
|
|
1124
1125
|
key: 5,
|
|
1125
1126
|
class: "card-box flex-center"
|
|
1126
1127
|
};
|
|
1127
|
-
function
|
|
1128
|
+
function Nt(l, e, t, h, s, w) {
|
|
1128
1129
|
var L, N, I, P, H;
|
|
1129
|
-
const M =
|
|
1130
|
-
return n(), o("div",
|
|
1131
|
-
i("div",
|
|
1132
|
-
i("div",
|
|
1133
|
-
i("div",
|
|
1134
|
-
|
|
1130
|
+
const M = we("ElOption"), C = we("ElSelect"), S = we("ElTooltip");
|
|
1131
|
+
return n(), o("div", Re, [
|
|
1132
|
+
i("div", Ae, [
|
|
1133
|
+
i("div", Ee, [
|
|
1134
|
+
i("div", Ge, [
|
|
1135
|
+
ge(C, {
|
|
1135
1136
|
modelValue: s.searchName,
|
|
1136
|
-
"onUpdate:modelValue":
|
|
1137
|
+
"onUpdate:modelValue": e[0] || (e[0] = (a) => s.searchName = a),
|
|
1137
1138
|
filterable: "",
|
|
1138
1139
|
class: "input",
|
|
1139
1140
|
clearable: "",
|
|
@@ -1141,13 +1142,13 @@ function fe(l, t, e, h, s, v) {
|
|
|
1141
1142
|
placeholder: s.placeholder,
|
|
1142
1143
|
autocomplete: "",
|
|
1143
1144
|
"remote-show-suffix": "",
|
|
1144
|
-
onFocus:
|
|
1145
|
-
onBlur:
|
|
1146
|
-
"remote-method":
|
|
1147
|
-
onChange:
|
|
1145
|
+
onFocus: e[1] || (e[1] = (a) => s.placeholder = ""),
|
|
1146
|
+
onBlur: e[2] || (e[2] = (a) => s.placeholder = "search for port name or coordinates"),
|
|
1147
|
+
"remote-method": w.fetchSuggestPosition,
|
|
1148
|
+
onChange: w.handleFetchMeteo
|
|
1148
1149
|
}, {
|
|
1149
|
-
default:
|
|
1150
|
-
(n(!0), o(b, null, x(s.positionList, (a) => (n(),
|
|
1150
|
+
default: ve(() => [
|
|
1151
|
+
(n(!0), o(b, null, x(s.positionList, (a) => (n(), He(M, {
|
|
1151
1152
|
key: a.name,
|
|
1152
1153
|
label: a.name,
|
|
1153
1154
|
value: a.name
|
|
@@ -1158,447 +1159,447 @@ function fe(l, t, e, h, s, v) {
|
|
|
1158
1159
|
])
|
|
1159
1160
|
])
|
|
1160
1161
|
]),
|
|
1161
|
-
i("div",
|
|
1162
|
-
i("div",
|
|
1162
|
+
i("div", Fe, [
|
|
1163
|
+
i("div", Oe, [
|
|
1163
1164
|
i("div", null, [
|
|
1164
|
-
i("div",
|
|
1165
|
-
i("div",
|
|
1165
|
+
i("div", Be, "Weather forecast for " + f(((L = s.position) == null ? void 0 : L.name) || "-") + " ( " + f(s.positionOffset) + " )", 1),
|
|
1166
|
+
i("div", Ve, "At " + f((N = s.position) != null && N.portId ? "port" : "coordinates") + ", issued " + f(s.issuedDate), 1)
|
|
1166
1167
|
]),
|
|
1167
|
-
i("div",
|
|
1168
|
-
|
|
1168
|
+
i("div", Ue, [
|
|
1169
|
+
ge(S, {
|
|
1169
1170
|
placement: "left",
|
|
1170
1171
|
effect: "light",
|
|
1171
1172
|
content: s.isCollected ? "remove the port/coordinate from the search list" : "add the port/coordinate to the search list",
|
|
1172
1173
|
"show-after": 1e3
|
|
1173
1174
|
}, {
|
|
1174
|
-
default:
|
|
1175
|
+
default: ve(() => [
|
|
1175
1176
|
s.isCollected ? (n(), o("span", {
|
|
1176
1177
|
key: 0,
|
|
1177
1178
|
class: "iconfont icon active",
|
|
1178
|
-
onClick:
|
|
1179
|
+
onClick: e[3] || (e[3] = (...a) => w.handleCollect && w.handleCollect(...a))
|
|
1179
1180
|
}, "")) : (n(), o("span", {
|
|
1180
1181
|
key: 1,
|
|
1181
1182
|
class: "iconfont icon",
|
|
1182
|
-
onClick:
|
|
1183
|
+
onClick: e[4] || (e[4] = (...a) => w.handleCollect && w.handleCollect(...a))
|
|
1183
1184
|
}, ""))
|
|
1184
1185
|
]),
|
|
1185
1186
|
_: 1
|
|
1186
1187
|
}, 8, ["content"])
|
|
1187
1188
|
])
|
|
1188
1189
|
]),
|
|
1189
|
-
(I = s.position) != null && I.name && !s.loading ? (n(), o("div",
|
|
1190
|
-
(P = s.position) != null && P.name && !s.loading ? (n(), o("div",
|
|
1191
|
-
i("div",
|
|
1192
|
-
i("table",
|
|
1193
|
-
i("tr",
|
|
1194
|
-
|
|
1190
|
+
(I = s.position) != null && I.name && !s.loading ? (n(), o("div", Ze)) : s.loading ? (n(), o("div", Je, "Loading....")) : s.position.name ? be("", !0) : (n(), o("div", Ye, "No Data")),
|
|
1191
|
+
(P = s.position) != null && P.name && !s.loading ? (n(), o("div", je, [
|
|
1192
|
+
i("div", qe, f(s.pickedWeek) + " " + f(w.computeMMMDD(s.pickedDate)), 1),
|
|
1193
|
+
i("table", Qe, [
|
|
1194
|
+
i("tr", Ke, [
|
|
1195
|
+
e[5] || (e[5] = i("th", {
|
|
1195
1196
|
rowspan: "1",
|
|
1196
1197
|
colspan: "1",
|
|
1197
1198
|
class: "tr-title"
|
|
1198
1199
|
}, [
|
|
1199
|
-
|
|
1200
|
+
_("Local time"),
|
|
1200
1201
|
i("span", { class: "unit" }, "(LT)")
|
|
1201
1202
|
], -1)),
|
|
1202
1203
|
(n(!0), o(b, null, x(s.tableData.hours, (a, r) => (n(), o("th", {
|
|
1203
1204
|
rowspan: "1",
|
|
1204
1205
|
colspan: "1",
|
|
1205
|
-
class:
|
|
1206
|
+
class: z(s.activeIndex === r ? "active" : ""),
|
|
1206
1207
|
key: Math.random() + "local"
|
|
1207
|
-
}, f(
|
|
1208
|
+
}, f(w.computeHourL(a)), 3))), 128))
|
|
1208
1209
|
]),
|
|
1209
|
-
i("tr",
|
|
1210
|
-
|
|
1210
|
+
i("tr", Xe, [
|
|
1211
|
+
e[6] || (e[6] = i("th", {
|
|
1211
1212
|
rowspan: "1",
|
|
1212
1213
|
colspan: "1",
|
|
1213
1214
|
class: "tr-title"
|
|
1214
1215
|
}, [
|
|
1215
|
-
|
|
1216
|
+
_("UTC"),
|
|
1216
1217
|
i("span", { class: "unit" })
|
|
1217
1218
|
], -1)),
|
|
1218
1219
|
(n(!0), o(b, null, x(s.tableData.hours, (a, r) => (n(), o("th", {
|
|
1219
1220
|
rowspan: "1",
|
|
1220
1221
|
colspan: "1",
|
|
1221
|
-
class:
|
|
1222
|
+
class: z(s.activeIndex === r ? "active" : ""),
|
|
1222
1223
|
key: Math.random() + "z"
|
|
1223
|
-
}, f(
|
|
1224
|
+
}, f(w.computeHourZ(a)), 3))), 128))
|
|
1224
1225
|
]),
|
|
1225
|
-
i("tr",
|
|
1226
|
-
|
|
1226
|
+
i("tr", $e, [
|
|
1227
|
+
e[7] || (e[7] = i("td", {
|
|
1227
1228
|
rowspan: "1",
|
|
1228
1229
|
colspan: "1",
|
|
1229
1230
|
class: "tr-title"
|
|
1230
1231
|
}, [
|
|
1231
|
-
|
|
1232
|
+
_("Weather"),
|
|
1232
1233
|
i("span", { class: "unit" })
|
|
1233
1234
|
], -1)),
|
|
1234
1235
|
(n(!0), o(b, null, x(s.tableData.weatherUrls, (a, r) => (n(), o("td", {
|
|
1235
1236
|
rowspan: "1",
|
|
1236
1237
|
colspan: "1",
|
|
1237
|
-
class:
|
|
1238
|
+
class: z(s.activeIndex === r ? "active" : ""),
|
|
1238
1239
|
key: Math.random() + "url"
|
|
1239
1240
|
}, [
|
|
1240
|
-
|
|
1241
|
+
ge(S, {
|
|
1241
1242
|
placement: "top",
|
|
1242
1243
|
effect: "light",
|
|
1243
1244
|
content: s.tableData.weatherNames[r],
|
|
1244
1245
|
"show-after": 500
|
|
1245
1246
|
}, {
|
|
1246
|
-
default:
|
|
1247
|
+
default: ve(() => [
|
|
1247
1248
|
a ? (n(), o("img", {
|
|
1248
1249
|
key: 0,
|
|
1249
1250
|
class: "iconfont weather-icon",
|
|
1250
1251
|
src: a
|
|
1251
|
-
}, null, 8,
|
|
1252
|
+
}, null, 8, et)) : be("", !0)
|
|
1252
1253
|
]),
|
|
1253
1254
|
_: 2
|
|
1254
1255
|
}, 1032, ["content"])
|
|
1255
1256
|
], 2))), 128))
|
|
1256
1257
|
]),
|
|
1257
|
-
i("tr",
|
|
1258
|
-
|
|
1258
|
+
i("tr", tt, [
|
|
1259
|
+
e[8] || (e[8] = i("td", {
|
|
1259
1260
|
rowspan: "1",
|
|
1260
1261
|
colspan: "1",
|
|
1261
1262
|
class: "tr-title"
|
|
1262
1263
|
}, [
|
|
1263
|
-
|
|
1264
|
+
_("Temperature"),
|
|
1264
1265
|
i("span", { class: "unit" }, "°C")
|
|
1265
1266
|
], -1)),
|
|
1266
1267
|
(n(!0), o(b, null, x(s.tableData.temp, (a, r) => (n(), o("td", {
|
|
1267
1268
|
rowspan: "1",
|
|
1268
1269
|
colspan: "1",
|
|
1269
|
-
class:
|
|
1270
|
+
class: z(s.activeIndex === r ? "active" : ""),
|
|
1270
1271
|
key: Math.random() + a
|
|
1271
1272
|
}, f(a), 3))), 128))
|
|
1272
1273
|
]),
|
|
1273
|
-
i("tr",
|
|
1274
|
-
|
|
1274
|
+
i("tr", st, [
|
|
1275
|
+
e[9] || (e[9] = i("td", {
|
|
1275
1276
|
rowspan: "1",
|
|
1276
1277
|
colspan: "1",
|
|
1277
1278
|
class: "tr-title"
|
|
1278
1279
|
}, [
|
|
1279
|
-
|
|
1280
|
+
_("Precipitation Probability"),
|
|
1280
1281
|
i("span", { class: "unit" }, "%")
|
|
1281
1282
|
], -1)),
|
|
1282
1283
|
(n(!0), o(b, null, x(s.tableData.precipProbability, (a, r) => (n(), o("td", {
|
|
1283
1284
|
rowspan: "1",
|
|
1284
1285
|
colspan: "1",
|
|
1285
|
-
class:
|
|
1286
|
+
class: z(s.activeIndex === r ? "active" : ""),
|
|
1286
1287
|
key: Math.random() + a
|
|
1287
1288
|
}, f(a), 3))), 128))
|
|
1288
1289
|
]),
|
|
1289
|
-
i("tr",
|
|
1290
|
-
|
|
1290
|
+
i("tr", at, [
|
|
1291
|
+
e[10] || (e[10] = i("td", {
|
|
1291
1292
|
rowspan: "1",
|
|
1292
1293
|
colspan: "1",
|
|
1293
1294
|
class: "tr-title"
|
|
1294
1295
|
}, [
|
|
1295
|
-
|
|
1296
|
+
_("Precipitation 1h"),
|
|
1296
1297
|
i("span", { class: "unit" }, "mm")
|
|
1297
1298
|
], -1)),
|
|
1298
1299
|
(n(!0), o(b, null, x(s.tableData.precip1h, (a, r) => (n(), o("td", {
|
|
1299
1300
|
rowspan: "1",
|
|
1300
1301
|
colspan: "1",
|
|
1301
|
-
class:
|
|
1302
|
+
class: z(s.activeIndex === r ? "active" : ""),
|
|
1302
1303
|
key: Math.random() + a
|
|
1303
1304
|
}, f(a), 3))), 128))
|
|
1304
1305
|
]),
|
|
1305
|
-
i("tr",
|
|
1306
|
-
|
|
1306
|
+
i("tr", it, [
|
|
1307
|
+
e[11] || (e[11] = i("td", {
|
|
1307
1308
|
rowspan: "1",
|
|
1308
1309
|
colspan: "1",
|
|
1309
1310
|
class: "tr-title"
|
|
1310
1311
|
}, [
|
|
1311
|
-
|
|
1312
|
+
_("Visibility"),
|
|
1312
1313
|
i("span", { class: "unit" }, "nm")
|
|
1313
1314
|
], -1)),
|
|
1314
1315
|
(n(!0), o(b, null, x(s.tableData.visibility, (a, r) => (n(), o("td", {
|
|
1315
1316
|
rowspan: "1",
|
|
1316
1317
|
colspan: "1",
|
|
1317
|
-
class:
|
|
1318
|
+
class: z(s.activeIndex === r ? "active" : ""),
|
|
1318
1319
|
key: Math.random() + a
|
|
1319
1320
|
}, f(a), 3))), 128))
|
|
1320
1321
|
]),
|
|
1321
|
-
i("tr",
|
|
1322
|
-
|
|
1322
|
+
i("tr", nt, [
|
|
1323
|
+
e[12] || (e[12] = i("td", {
|
|
1323
1324
|
rowspan: "1",
|
|
1324
1325
|
colspan: "1",
|
|
1325
1326
|
class: "tr-title"
|
|
1326
1327
|
}, [
|
|
1327
|
-
|
|
1328
|
+
_("Relative Humidity"),
|
|
1328
1329
|
i("span", { class: "unit" }, "%")
|
|
1329
1330
|
], -1)),
|
|
1330
1331
|
(n(!0), o(b, null, x(s.tableData.humidity, (a, r) => (n(), o("td", {
|
|
1331
1332
|
rowspan: "1",
|
|
1332
1333
|
colspan: "1",
|
|
1333
|
-
class:
|
|
1334
|
+
class: z(s.activeIndex === r ? "active" : ""),
|
|
1334
1335
|
key: Math.random() + a
|
|
1335
1336
|
}, f(a), 3))), 128))
|
|
1336
1337
|
]),
|
|
1337
|
-
i("tr",
|
|
1338
|
-
|
|
1338
|
+
i("tr", ot, [
|
|
1339
|
+
e[13] || (e[13] = i("td", {
|
|
1339
1340
|
rowspan: "1",
|
|
1340
1341
|
colspan: "1",
|
|
1341
1342
|
class: "tr-title"
|
|
1342
1343
|
}, [
|
|
1343
|
-
|
|
1344
|
+
_("Wind direction"),
|
|
1344
1345
|
i("span", { class: "unit" })
|
|
1345
1346
|
], -1)),
|
|
1346
1347
|
(n(!0), o(b, null, x(s.tableData.windDir, (a, r) => (n(), o("td", {
|
|
1347
1348
|
rowspan: "1",
|
|
1348
1349
|
colspan: "1",
|
|
1349
|
-
class:
|
|
1350
|
+
class: z(s.activeIndex === r ? "active" : ""),
|
|
1350
1351
|
key: Math.random() + a
|
|
1351
1352
|
}, [
|
|
1352
|
-
isNaN(a) ? (n(), o("span",
|
|
1353
|
+
isNaN(a) ? (n(), o("span", rt, "-")) : (n(), o("span", {
|
|
1353
1354
|
key: 0,
|
|
1354
1355
|
class: "iconfont icon",
|
|
1355
|
-
style:
|
|
1356
|
+
style: ce({ display: "inline-block", transform: `rotate(${a}deg)` })
|
|
1356
1357
|
}, "", 4))
|
|
1357
1358
|
], 2))), 128))
|
|
1358
1359
|
]),
|
|
1359
|
-
i("tr",
|
|
1360
|
-
|
|
1360
|
+
i("tr", lt, [
|
|
1361
|
+
e[14] || (e[14] = i("td", {
|
|
1361
1362
|
rowspan: "1",
|
|
1362
1363
|
colspan: "1",
|
|
1363
1364
|
class: "tr-title"
|
|
1364
1365
|
}, [
|
|
1365
|
-
|
|
1366
|
+
_("Wind speed"),
|
|
1366
1367
|
i("span", { class: "unit" }, "kts")
|
|
1367
1368
|
], -1)),
|
|
1368
1369
|
(n(!0), o(b, null, x(s.tableData.windSpeed, (a, r) => (n(), o("td", {
|
|
1369
1370
|
rowspan: "1",
|
|
1370
1371
|
colspan: "1",
|
|
1371
|
-
class:
|
|
1372
|
+
class: z(s.activeIndex === r ? "active" : ""),
|
|
1372
1373
|
key: Math.random() + a
|
|
1373
1374
|
}, f(a), 3))), 128))
|
|
1374
1375
|
]),
|
|
1375
|
-
i("tr",
|
|
1376
|
-
|
|
1376
|
+
i("tr", ht, [
|
|
1377
|
+
e[15] || (e[15] = i("td", {
|
|
1377
1378
|
rowspan: "1",
|
|
1378
1379
|
colspan: "1",
|
|
1379
1380
|
class: "tr-title"
|
|
1380
1381
|
}, [
|
|
1381
|
-
|
|
1382
|
+
_("Wind gust"),
|
|
1382
1383
|
i("span", { class: "unit" }, "kts")
|
|
1383
1384
|
], -1)),
|
|
1384
1385
|
(n(!0), o(b, null, x(s.tableData.windGust, (a, r) => (n(), o("td", {
|
|
1385
1386
|
rowspan: "1",
|
|
1386
1387
|
colspan: "1",
|
|
1387
|
-
class:
|
|
1388
|
+
class: z(s.activeIndex === r ? "active" : ""),
|
|
1388
1389
|
key: Math.random() + a
|
|
1389
1390
|
}, f(a), 3))), 128))
|
|
1390
1391
|
])
|
|
1391
1392
|
]),
|
|
1392
|
-
|
|
1393
|
-
i("table",
|
|
1394
|
-
i("tr",
|
|
1395
|
-
|
|
1393
|
+
e[27] || (e[27] = i("div", { style: { "text-align": "center", padding: "3px" } }, null, -1)),
|
|
1394
|
+
i("table", dt, [
|
|
1395
|
+
i("tr", ct, [
|
|
1396
|
+
e[16] || (e[16] = i("td", {
|
|
1396
1397
|
rowspan: "1",
|
|
1397
1398
|
colspan: "1",
|
|
1398
1399
|
class: "tr-title"
|
|
1399
1400
|
}, [
|
|
1400
|
-
|
|
1401
|
+
_("Wind wave height"),
|
|
1401
1402
|
i("span", { class: "unit" }, "m")
|
|
1402
1403
|
], -1)),
|
|
1403
1404
|
(n(!0), o(b, null, x(s.tableData.windwaveHeight, (a, r) => (n(), o("td", {
|
|
1404
1405
|
rowspan: "1",
|
|
1405
1406
|
colspan: "1",
|
|
1406
|
-
class:
|
|
1407
|
+
class: z(s.activeIndex === r ? "active" : ""),
|
|
1407
1408
|
key: Math.random() + a
|
|
1408
1409
|
}, f(a), 3))), 128))
|
|
1409
1410
|
]),
|
|
1410
|
-
i("tr",
|
|
1411
|
-
|
|
1411
|
+
i("tr", pt, [
|
|
1412
|
+
e[17] || (e[17] = i("td", {
|
|
1412
1413
|
rowspan: "1",
|
|
1413
1414
|
colspan: "1",
|
|
1414
1415
|
class: "tr-title"
|
|
1415
1416
|
}, [
|
|
1416
|
-
|
|
1417
|
+
_("Wind wave direction"),
|
|
1417
1418
|
i("span", { class: "unit" })
|
|
1418
1419
|
], -1)),
|
|
1419
1420
|
(n(!0), o(b, null, x(s.tableData.windwaveDir, (a, r) => (n(), o("td", {
|
|
1420
1421
|
rowspan: "1",
|
|
1421
1422
|
colspan: "1",
|
|
1422
|
-
class:
|
|
1423
|
+
class: z(s.activeIndex === r ? "active" : ""),
|
|
1423
1424
|
key: Math.random() + a
|
|
1424
1425
|
}, [
|
|
1425
|
-
isNaN(a) ? (n(), o("span",
|
|
1426
|
+
isNaN(a) ? (n(), o("span", mt, "-")) : (n(), o("span", {
|
|
1426
1427
|
key: 0,
|
|
1427
1428
|
class: "iconfont icon",
|
|
1428
|
-
style:
|
|
1429
|
+
style: ce({ display: "inline-block", transform: `rotate(${a}deg)` })
|
|
1429
1430
|
}, "", 4))
|
|
1430
1431
|
], 2))), 128))
|
|
1431
1432
|
]),
|
|
1432
|
-
i("tr",
|
|
1433
|
-
|
|
1433
|
+
i("tr", ut, [
|
|
1434
|
+
e[18] || (e[18] = i("td", {
|
|
1434
1435
|
rowspan: "1",
|
|
1435
1436
|
colspan: "1",
|
|
1436
1437
|
class: "tr-title"
|
|
1437
1438
|
}, [
|
|
1438
|
-
|
|
1439
|
+
_("Wind wave period"),
|
|
1439
1440
|
i("span", { class: "unit" }, "s")
|
|
1440
1441
|
], -1)),
|
|
1441
1442
|
(n(!0), o(b, null, x(s.tableData.windwavePeriod, (a, r) => (n(), o("td", {
|
|
1442
1443
|
rowspan: "1",
|
|
1443
1444
|
colspan: "1",
|
|
1444
|
-
class:
|
|
1445
|
+
class: z(s.activeIndex === r ? "active" : ""),
|
|
1445
1446
|
key: Math.random() + a
|
|
1446
1447
|
}, f(a), 3))), 128))
|
|
1447
1448
|
]),
|
|
1448
|
-
i("tr",
|
|
1449
|
-
|
|
1449
|
+
i("tr", wt, [
|
|
1450
|
+
e[19] || (e[19] = i("td", {
|
|
1450
1451
|
rowspan: "1",
|
|
1451
1452
|
colspan: "1",
|
|
1452
1453
|
class: "tr-title"
|
|
1453
1454
|
}, [
|
|
1454
|
-
|
|
1455
|
+
_("Swell height"),
|
|
1455
1456
|
i("span", { class: "unit" }, "m")
|
|
1456
1457
|
], -1)),
|
|
1457
1458
|
(n(!0), o(b, null, x(s.tableData.swellHeight, (a, r) => (n(), o("td", {
|
|
1458
1459
|
rowspan: "1",
|
|
1459
1460
|
colspan: "1",
|
|
1460
|
-
class:
|
|
1461
|
+
class: z(s.activeIndex === r ? "active" : ""),
|
|
1461
1462
|
key: Math.random() + a
|
|
1462
1463
|
}, f(a), 3))), 128))
|
|
1463
1464
|
]),
|
|
1464
|
-
i("tr",
|
|
1465
|
-
|
|
1465
|
+
i("tr", gt, [
|
|
1466
|
+
e[20] || (e[20] = i("td", {
|
|
1466
1467
|
rowspan: "1",
|
|
1467
1468
|
colspan: "1",
|
|
1468
1469
|
class: "tr-title"
|
|
1469
1470
|
}, [
|
|
1470
|
-
|
|
1471
|
+
_("Swell direction"),
|
|
1471
1472
|
i("span", { class: "unit" })
|
|
1472
1473
|
], -1)),
|
|
1473
1474
|
(n(!0), o(b, null, x(s.tableData.swellDir, (a, r) => (n(), o("td", {
|
|
1474
1475
|
rowspan: "1",
|
|
1475
1476
|
colspan: "1",
|
|
1476
|
-
class:
|
|
1477
|
+
class: z(s.activeIndex === r ? "active" : ""),
|
|
1477
1478
|
key: Math.random() + a
|
|
1478
1479
|
}, [
|
|
1479
|
-
isNaN(a) ? (n(), o("span",
|
|
1480
|
+
isNaN(a) ? (n(), o("span", vt, "-")) : (n(), o("span", {
|
|
1480
1481
|
key: 0,
|
|
1481
1482
|
class: "iconfont icon",
|
|
1482
|
-
style:
|
|
1483
|
+
style: ce({ display: "inline-block", transform: `rotate(${a}deg)` })
|
|
1483
1484
|
}, "", 4))
|
|
1484
1485
|
], 2))), 128))
|
|
1485
1486
|
]),
|
|
1486
|
-
i("tr",
|
|
1487
|
-
|
|
1487
|
+
i("tr", bt, [
|
|
1488
|
+
e[21] || (e[21] = i("td", {
|
|
1488
1489
|
rowspan: "1",
|
|
1489
1490
|
colspan: "1",
|
|
1490
1491
|
class: "tr-title"
|
|
1491
1492
|
}, [
|
|
1492
|
-
|
|
1493
|
+
_("Swell period"),
|
|
1493
1494
|
i("span", { class: "unit" }, "s")
|
|
1494
1495
|
], -1)),
|
|
1495
1496
|
(n(!0), o(b, null, x(s.tableData.swellPeriod, (a, r) => (n(), o("td", {
|
|
1496
1497
|
rowspan: "1",
|
|
1497
1498
|
colspan: "1",
|
|
1498
|
-
class:
|
|
1499
|
+
class: z(s.activeIndex === r ? "active" : ""),
|
|
1499
1500
|
key: Math.random() + a
|
|
1500
1501
|
}, f(a), 3))), 128))
|
|
1501
1502
|
]),
|
|
1502
|
-
i("tr",
|
|
1503
|
-
|
|
1503
|
+
i("tr", xt, [
|
|
1504
|
+
e[22] || (e[22] = i("td", {
|
|
1504
1505
|
rowspan: "1",
|
|
1505
1506
|
colspan: "1",
|
|
1506
1507
|
class: "tr-title"
|
|
1507
1508
|
}, [
|
|
1508
|
-
|
|
1509
|
+
_("Sig wave height"),
|
|
1509
1510
|
i("span", { class: "unit" }, "m")
|
|
1510
1511
|
], -1)),
|
|
1511
1512
|
(n(!0), o(b, null, x(s.tableData.sigwaveHeight, (a, r) => (n(), o("td", {
|
|
1512
1513
|
rowspan: "1",
|
|
1513
1514
|
colspan: "1",
|
|
1514
|
-
class:
|
|
1515
|
+
class: z(s.activeIndex === r ? "active" : ""),
|
|
1515
1516
|
key: Math.random() + a
|
|
1516
1517
|
}, f(a), 3))), 128))
|
|
1517
1518
|
]),
|
|
1518
|
-
i("tr",
|
|
1519
|
-
|
|
1519
|
+
i("tr", ft, [
|
|
1520
|
+
e[23] || (e[23] = i("td", {
|
|
1520
1521
|
rowspan: "1",
|
|
1521
1522
|
colspan: "1",
|
|
1522
1523
|
class: "tr-title"
|
|
1523
1524
|
}, [
|
|
1524
|
-
|
|
1525
|
+
_("Current direction"),
|
|
1525
1526
|
i("span", { class: "unit" })
|
|
1526
1527
|
], -1)),
|
|
1527
1528
|
(n(!0), o(b, null, x(s.tableData.currentDir, (a, r) => (n(), o("td", {
|
|
1528
1529
|
rowspan: "1",
|
|
1529
1530
|
colspan: "1",
|
|
1530
|
-
class:
|
|
1531
|
+
class: z(s.activeIndex === r ? "active" : ""),
|
|
1531
1532
|
key: Math.random() + a
|
|
1532
1533
|
}, [
|
|
1533
|
-
isNaN(a) ? (n(), o("span",
|
|
1534
|
+
isNaN(a) ? (n(), o("span", yt, "-")) : (n(), o("span", {
|
|
1534
1535
|
key: 0,
|
|
1535
1536
|
class: "iconfont icon",
|
|
1536
|
-
style:
|
|
1537
|
+
style: ce({ display: "inline-block", transform: `rotate(${a}deg)` })
|
|
1537
1538
|
}, "", 4))
|
|
1538
1539
|
], 2))), 128))
|
|
1539
1540
|
]),
|
|
1540
|
-
i("tr",
|
|
1541
|
-
|
|
1541
|
+
i("tr", _t, [
|
|
1542
|
+
e[24] || (e[24] = i("td", {
|
|
1542
1543
|
rowspan: "1",
|
|
1543
1544
|
colspan: "1",
|
|
1544
1545
|
class: "tr-title"
|
|
1545
1546
|
}, [
|
|
1546
|
-
|
|
1547
|
+
_("Current speed"),
|
|
1547
1548
|
i("span", { class: "unit" }, "kts")
|
|
1548
1549
|
], -1)),
|
|
1549
1550
|
(n(!0), o(b, null, x(s.tableData.currentSpeed, (a, r) => (n(), o("td", {
|
|
1550
1551
|
rowspan: "1",
|
|
1551
1552
|
colspan: "1",
|
|
1552
|
-
class:
|
|
1553
|
+
class: z(s.activeIndex === r ? "active" : ""),
|
|
1553
1554
|
key: Math.random() + a
|
|
1554
1555
|
}, f(a), 3))), 128))
|
|
1555
1556
|
])
|
|
1556
1557
|
]),
|
|
1557
|
-
|
|
1558
|
-
i("table",
|
|
1559
|
-
i("tr",
|
|
1560
|
-
|
|
1558
|
+
e[28] || (e[28] = i("div", { style: { "text-align": "center", padding: "3px" } }, null, -1)),
|
|
1559
|
+
i("table", zt, [
|
|
1560
|
+
i("tr", kt, [
|
|
1561
|
+
e[25] || (e[25] = i("td", {
|
|
1561
1562
|
rowspan: "1",
|
|
1562
1563
|
colspan: "1",
|
|
1563
1564
|
class: "tr-title"
|
|
1564
1565
|
}, [
|
|
1565
|
-
|
|
1566
|
+
_("Sea level height"),
|
|
1566
1567
|
i("span", { class: "unit" }, "m")
|
|
1567
1568
|
], -1)),
|
|
1568
1569
|
(n(!0), o(b, null, x(s.tableData.seaLevel, (a, r) => (n(), o("td", {
|
|
1569
1570
|
rowspan: "1",
|
|
1570
1571
|
colspan: "1",
|
|
1571
|
-
class:
|
|
1572
|
+
class: z(s.activeIndex === r ? "active" : ""),
|
|
1572
1573
|
key: Math.random() + a
|
|
1573
1574
|
}, f(a), 3))), 128))
|
|
1574
1575
|
]),
|
|
1575
|
-
i("tr",
|
|
1576
|
-
|
|
1576
|
+
i("tr", Dt, [
|
|
1577
|
+
e[26] || (e[26] = i("td", {
|
|
1577
1578
|
rowspan: "1",
|
|
1578
1579
|
colspan: "1",
|
|
1579
1580
|
class: "tr-title"
|
|
1580
1581
|
}, [
|
|
1581
|
-
|
|
1582
|
+
_("Sea surface temperature"),
|
|
1582
1583
|
i("span", { class: "unit" }, "°C")
|
|
1583
1584
|
], -1)),
|
|
1584
1585
|
(n(!0), o(b, null, x(s.tableData.seaTemp, (a, r) => (n(), o("td", {
|
|
1585
1586
|
rowspan: "1",
|
|
1586
1587
|
colspan: "1",
|
|
1587
|
-
class:
|
|
1588
|
+
class: z(s.activeIndex === r ? "active" : ""),
|
|
1588
1589
|
key: Math.random() + a
|
|
1589
1590
|
}, f(a), 3))), 128))
|
|
1590
1591
|
])
|
|
1591
1592
|
])
|
|
1592
|
-
])) : s.loading ? (n(), o("div",
|
|
1593
|
+
])) : s.loading ? (n(), o("div", St, "Loading....")) : (H = s.position) != null && H.name ? be("", !0) : (n(), o("div", Lt, "No Data"))
|
|
1593
1594
|
])
|
|
1594
1595
|
]);
|
|
1595
1596
|
}
|
|
1596
|
-
const
|
|
1597
|
+
const It = /* @__PURE__ */ We(Te, [["render", Nt], ["__scopeId", "data-v-3ab7a0ef"]]), Rt = {
|
|
1597
1598
|
install(l) {
|
|
1598
|
-
l.component("SpotReport",
|
|
1599
|
+
l.component("SpotReport", It);
|
|
1599
1600
|
}
|
|
1600
1601
|
};
|
|
1601
1602
|
export {
|
|
1602
|
-
|
|
1603
|
-
|
|
1603
|
+
It as SpotReport,
|
|
1604
|
+
Rt as SpotReportPlugin
|
|
1604
1605
|
};
|