@eodash/eodash 5.0.0-alpha.1.8 → 5.0.0-alpha.2

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (80) hide show
  1. package/README.md +1 -1
  2. package/bin/app.js +1 -4
  3. package/bin/cli.js +26 -29
  4. package/bin/main.js +9 -0
  5. package/bin/serverConfig.js +65 -35
  6. package/bin/types.d.ts +52 -0
  7. package/bin/utils.js +91 -21
  8. package/core/App.vue +10 -12
  9. package/core/SuspensedDashboard.ce.vue +59 -0
  10. package/core/asWebComponent.d.ts +18 -0
  11. package/core/asWebComponent.js +12 -0
  12. package/core/components/DashboardLayout.vue +23 -27
  13. package/core/components/DynamicWebComponent.vue +6 -6
  14. package/core/components/Footer.vue +11 -12
  15. package/core/components/Header.vue +5 -29
  16. package/core/components/Loading.vue +27 -0
  17. package/core/components/MobileLayout.vue +34 -63
  18. package/core/composables/DefineEodash.js +57 -0
  19. package/core/composables/DefineWidgets.js +26 -15
  20. package/core/composables/index.js +139 -67
  21. package/core/eodash.js +100 -0
  22. package/core/main.js +2 -4
  23. package/core/plugins/index.js +3 -12
  24. package/core/plugins/vuetify.js +5 -2
  25. package/core/store/Actions.js +0 -28
  26. package/core/store/States.js +12 -3
  27. package/core/store/stac.js +7 -5
  28. package/core/types.d.ts +148 -124
  29. package/core/utils/eodashSTAC.js +164 -0
  30. package/core/utils/helpers.js +40 -0
  31. package/core/utils/index.js +28 -0
  32. package/core/utils/keys.js +6 -0
  33. package/core/views/Dashboard.vue +33 -23
  34. package/core/vite-env.d.ts +16 -2
  35. package/dist/.gitkeep +0 -0
  36. package/dist/DashboardLayout-YLfAa8wH.js +168 -0
  37. package/dist/DynamicWebComponent-BDOQsEcj.js +57 -0
  38. package/dist/EodashDatePicker-DlehqSgz.js +1645 -0
  39. package/dist/EodashItemFilter-TSp7XRGy.js +51 -0
  40. package/dist/EodashMap-DInb9cfS.js +53405 -0
  41. package/dist/Footer-CIzHgJbK.js +118 -0
  42. package/dist/Header-C5PSB8Uc.js +609 -0
  43. package/dist/IframeWrapper-DYHQQRUh.js +19 -0
  44. package/dist/MobileLayout-DZmqrpub.js +523 -0
  45. package/dist/VBtn-CFPhsIX8.js +1106 -0
  46. package/dist/VMain-deI9jyIf.js +35 -0
  47. package/dist/WidgetsContainer-D_PLP1qf.js +122 -0
  48. package/dist/_commonjsHelpers-DaMA6jEr.js +8 -0
  49. package/dist/asWebComponent-BKe6Spni.js +11323 -0
  50. package/dist/basedecoder-Qm25PwVp-CHo5Pomv.js +89 -0
  51. package/dist/color-D72nEBIR.js +115 -0
  52. package/dist/decoder-kAoyGIq9-HAkjSTCt.js +10 -0
  53. package/dist/deflate-Be2Arps5-hDqMz3RA.js +10 -0
  54. package/dist/dimensions-BZkmIizV.js +53 -0
  55. package/dist/eo-dash.js +6 -0
  56. package/dist/eox-itemfilter-DcQkRD2l.js +7537 -0
  57. package/dist/eox-map-BJ9SIixs.js +36205 -0
  58. package/dist/eox-stacinfo-B-YrT7Ug.js +13698 -0
  59. package/dist/forwardRefs-Bxeu9Obx.js +142 -0
  60. package/dist/index-8ch8xKfa.js +152 -0
  61. package/dist/index-DIt8GjSR.js +65 -0
  62. package/dist/jpeg-DNfUpLwy-Fjan-04T.js +515 -0
  63. package/dist/lerc-C9VL9kri-DyVxBvsf.js +1029 -0
  64. package/dist/lzw-BOMhmEDy-Dboc93VO.js +84 -0
  65. package/dist/packbits-DaUD6MLm-Bu1PoTGa.js +24 -0
  66. package/dist/pako.esm-C3kYPGGQ-BMki8cQY.js +1087 -0
  67. package/dist/raw-CcGKjn8q-DFOt-i8n.js +9 -0
  68. package/dist/ssrBoot-Cm5pWM14.js +17 -0
  69. package/dist/style.css +5 -0
  70. package/dist/webfontloader-CyOFAuFB.js +471 -0
  71. package/dist/webimage-D2c098k3-DLj1LQxB.js +19 -0
  72. package/package.json +41 -12
  73. package/widgets/EodashDatePicker.vue +56 -0
  74. package/widgets/EodashItemFilter.vue +60 -0
  75. package/widgets/EodashMap.vue +82 -0
  76. package/widgets/WidgetsContainer.vue +1 -1
  77. package/core/composables/DefineConfig.js +0 -45
  78. package/core/eodashConfig.js +0 -136
  79. package/core/plugins/router.js +0 -20
  80. package/core/store/Keys.js +0 -6
@@ -0,0 +1,523 @@
1
+ import { p as j, o as pe, g as K, r as E, c as h, u as J, a as m, F as X, m as O, I as te, b as xe, d as ke, e as ge, f as Ce, h as we, s as _, i as le, j as ze, w as Te, k as Ve, l as Pe, n as _e, t as T, q as Re, v as Be, x as Me, y as Ie, z as Ee, A as ae, B as Oe, C as $e, D as V, E as A, G as F, H as se, J as R, K as W, L as oe, M as ne, N as ie, O as ue, P as re, Q as Ae } from "./asWebComponent-BKe6Spni.js";
2
+ import { m as Fe, V as Y, a as He, u as De, b as ce, c as Ge, d as Le } from "./VBtn-CFPhsIX8.js";
3
+ import { u as Ne, a as qe } from "./color-D72nEBIR.js";
4
+ import { f as Ue, a as We, s as Xe } from "./forwardRefs-Bxeu9Obx.js";
5
+ import { V as ve } from "./index-8ch8xKfa.js";
6
+ import { V as Ye } from "./VMain-deI9jyIf.js";
7
+ const be = Symbol.for("vuetify:v-tabs"), je = j({
8
+ fixed: Boolean,
9
+ sliderColor: String,
10
+ hideSlider: Boolean,
11
+ direction: {
12
+ type: String,
13
+ default: "horizontal"
14
+ },
15
+ ...pe(Fe({
16
+ selectedClass: "v-tab--selected",
17
+ variant: "text"
18
+ }), ["active", "block", "flat", "location", "position", "symbol"])
19
+ }, "VTab"), he = K()({
20
+ name: "VTab",
21
+ props: je(),
22
+ setup(e, u) {
23
+ let {
24
+ slots: v,
25
+ attrs: r
26
+ } = u;
27
+ const {
28
+ textColorClasses: b,
29
+ textColorStyles: c
30
+ } = Ne(e, "sliderColor"), a = E(), o = E(), t = h(() => e.direction === "horizontal"), n = h(() => a.value?.group?.isSelected.value ?? !1);
31
+ function d(s) {
32
+ let {
33
+ value: g
34
+ } = s;
35
+ if (g) {
36
+ const x = a.value?.$el.parentElement?.querySelector(".v-tab--selected .v-tab__slider"), f = o.value;
37
+ if (!x || !f)
38
+ return;
39
+ const B = getComputedStyle(x).color, S = x.getBoundingClientRect(), k = f.getBoundingClientRect(), p = t.value ? "x" : "y", z = t.value ? "X" : "Y", M = t.value ? "right" : "bottom", C = t.value ? "width" : "height", H = S[p], D = k[p], w = H > D ? S[M] - k[M] : S[p] - k[p], P = Math.sign(w) > 0 ? t.value ? "right" : "bottom" : Math.sign(w) < 0 ? t.value ? "left" : "top" : "center", G = (Math.abs(w) + (Math.sign(w) < 0 ? S[C] : k[C])) / Math.max(S[C], k[C]) || 0, L = S[C] / k[C] || 0, $ = 1.5;
40
+ We(f, {
41
+ backgroundColor: [B, "currentcolor"],
42
+ transform: [`translate${z}(${w}px) scale${z}(${L})`, `translate${z}(${w / $}px) scale${z}(${(G - 1) / $ + 1})`, "none"],
43
+ transformOrigin: Array(3).fill(P)
44
+ }, {
45
+ duration: 225,
46
+ easing: Xe
47
+ });
48
+ }
49
+ }
50
+ return J(() => {
51
+ const s = Y.filterProps(e);
52
+ return m(Y, O({
53
+ symbol: be,
54
+ ref: a,
55
+ class: ["v-tab", e.class],
56
+ style: e.style,
57
+ tabindex: n.value ? 0 : -1,
58
+ role: "tab",
59
+ "aria-selected": String(n.value),
60
+ active: !1
61
+ }, s, r, {
62
+ block: e.fixed,
63
+ maxWidth: e.fixed ? 300 : void 0,
64
+ "onGroup:selected": d
65
+ }), {
66
+ ...v,
67
+ default: () => m(X, null, [v.default?.() ?? e.text, !e.hideSlider && m("div", {
68
+ ref: o,
69
+ class: ["v-tab__slider", b.value],
70
+ style: c.value
71
+ }, null)])
72
+ });
73
+ }), Ue({}, a);
74
+ }
75
+ });
76
+ function de(e) {
77
+ const v = Math.abs(e);
78
+ return Math.sign(e) * (v / ((1 / 0.501 - 2) * (1 - v) + 1));
79
+ }
80
+ function fe(e) {
81
+ let {
82
+ selectedElement: u,
83
+ containerSize: v,
84
+ contentSize: r,
85
+ isRtl: b,
86
+ currentScrollOffset: c,
87
+ isHorizontal: a
88
+ } = e;
89
+ const o = a ? u.clientWidth : u.clientHeight, t = a ? u.offsetLeft : u.offsetTop, n = b && a ? r - t - o : t, d = v + c, s = o + n, g = o * 0.4;
90
+ return n <= c ? c = Math.max(n - g, 0) : d <= s && (c = Math.min(c - (d - s - g), r - v)), c;
91
+ }
92
+ function Ke(e) {
93
+ let {
94
+ selectedElement: u,
95
+ containerSize: v,
96
+ contentSize: r,
97
+ isRtl: b,
98
+ isHorizontal: c
99
+ } = e;
100
+ const a = c ? u.clientWidth : u.clientHeight, o = c ? u.offsetLeft : u.offsetTop, t = b && c ? r - o - a / 2 - v / 2 : o + a / 2 - v / 2;
101
+ return Math.min(r - v, Math.max(0, t));
102
+ }
103
+ const Je = Symbol.for("vuetify:v-slide-group"), ye = j({
104
+ centerActive: Boolean,
105
+ direction: {
106
+ type: String,
107
+ default: "horizontal"
108
+ },
109
+ symbol: {
110
+ type: null,
111
+ default: Je
112
+ },
113
+ nextIcon: {
114
+ type: te,
115
+ default: "$next"
116
+ },
117
+ prevIcon: {
118
+ type: te,
119
+ default: "$prev"
120
+ },
121
+ showArrows: {
122
+ type: [Boolean, String],
123
+ validator: (e) => typeof e == "boolean" || ["always", "desktop", "mobile"].includes(e)
124
+ },
125
+ ...xe(),
126
+ ...ke(),
127
+ ...ge(),
128
+ ...He({
129
+ selectedClass: "v-slide-group-item--active"
130
+ })
131
+ }, "VSlideGroup"), me = K()({
132
+ name: "VSlideGroup",
133
+ props: ye(),
134
+ emits: {
135
+ "update:modelValue": (e) => !0
136
+ },
137
+ setup(e, u) {
138
+ let {
139
+ slots: v
140
+ } = u;
141
+ const {
142
+ isRtl: r
143
+ } = Ce(), {
144
+ displayClasses: b,
145
+ mobile: c
146
+ } = we(e), a = De(e, e.symbol), o = _(!1), t = _(0), n = _(0), d = _(0), s = h(() => e.direction === "horizontal"), {
147
+ resizeRef: g,
148
+ contentRect: x
149
+ } = le(), {
150
+ resizeRef: f,
151
+ contentRect: B
152
+ } = le(), S = h(() => a.selected.value.length ? a.items.value.findIndex((l) => l.id === a.selected.value[0]) : -1), k = h(() => a.selected.value.length ? a.items.value.findIndex((l) => l.id === a.selected.value[a.selected.value.length - 1]) : -1);
153
+ if (ze) {
154
+ let l = -1;
155
+ Te(() => [a.selected.value, x.value, B.value, s.value], () => {
156
+ cancelAnimationFrame(l), l = requestAnimationFrame(() => {
157
+ if (x.value && B.value) {
158
+ const i = s.value ? "width" : "height";
159
+ n.value = x.value[i], d.value = B.value[i], o.value = n.value + 1 < d.value;
160
+ }
161
+ if (S.value >= 0 && f.value) {
162
+ const i = f.value.children[k.value];
163
+ S.value === 0 || !o.value ? t.value = 0 : e.centerActive ? t.value = Ke({
164
+ selectedElement: i,
165
+ containerSize: n.value,
166
+ contentSize: d.value,
167
+ isRtl: r.value,
168
+ isHorizontal: s.value
169
+ }) : o.value && (t.value = fe({
170
+ selectedElement: i,
171
+ containerSize: n.value,
172
+ contentSize: d.value,
173
+ isRtl: r.value,
174
+ currentScrollOffset: t.value,
175
+ isHorizontal: s.value
176
+ }));
177
+ }
178
+ });
179
+ });
180
+ }
181
+ const p = _(!1);
182
+ let z = 0, M = 0;
183
+ function C(l) {
184
+ const i = s.value ? "clientX" : "clientY";
185
+ M = (r.value && s.value ? -1 : 1) * t.value, z = l.touches[0][i], p.value = !0;
186
+ }
187
+ function H(l) {
188
+ if (!o.value)
189
+ return;
190
+ const i = s.value ? "clientX" : "clientY", I = r.value && s.value ? -1 : 1;
191
+ t.value = I * (M + z - l.touches[0][i]);
192
+ }
193
+ function D(l) {
194
+ const i = d.value - n.value;
195
+ t.value < 0 || !o.value ? t.value = 0 : t.value >= i && (t.value = i), p.value = !1;
196
+ }
197
+ function w() {
198
+ g.value && (g.value[s.value ? "scrollLeft" : "scrollTop"] = 0);
199
+ }
200
+ const P = _(!1);
201
+ function Q(l) {
202
+ if (P.value = !0, !(!o.value || !f.value)) {
203
+ for (const i of l.composedPath())
204
+ for (const I of f.value.children)
205
+ if (I === i) {
206
+ t.value = fe({
207
+ selectedElement: I,
208
+ containerSize: n.value,
209
+ contentSize: d.value,
210
+ isRtl: r.value,
211
+ currentScrollOffset: t.value,
212
+ isHorizontal: s.value
213
+ });
214
+ return;
215
+ }
216
+ }
217
+ }
218
+ function G(l) {
219
+ P.value = !1;
220
+ }
221
+ function L(l) {
222
+ !P.value && !(l.relatedTarget && f.value?.contains(l.relatedTarget)) && y();
223
+ }
224
+ function $(l) {
225
+ f.value && (s.value ? l.key === "ArrowRight" ? y(r.value ? "prev" : "next") : l.key === "ArrowLeft" && y(r.value ? "next" : "prev") : l.key === "ArrowDown" ? y("next") : l.key === "ArrowUp" && y("prev"), l.key === "Home" ? y("first") : l.key === "End" && y("last"));
226
+ }
227
+ function y(l) {
228
+ if (f.value)
229
+ if (!l)
230
+ Ve(f.value)[0]?.focus();
231
+ else if (l === "next") {
232
+ const i = f.value.querySelector(":focus")?.nextElementSibling;
233
+ i ? i.focus() : y("first");
234
+ } else if (l === "prev") {
235
+ const i = f.value.querySelector(":focus")?.previousElementSibling;
236
+ i ? i.focus() : y("last");
237
+ } else
238
+ l === "first" ? f.value.firstElementChild?.focus() : l === "last" && f.value.lastElementChild?.focus();
239
+ }
240
+ function N(l) {
241
+ const i = t.value + (l === "prev" ? -1 : 1) * n.value;
242
+ t.value = Pe(i, 0, d.value - n.value);
243
+ }
244
+ const Se = h(() => {
245
+ let l = t.value > d.value - n.value ? -(d.value - n.value) + de(d.value - n.value - t.value) : -t.value;
246
+ t.value <= 0 && (l = de(-t.value));
247
+ const i = r.value && s.value ? -1 : 1;
248
+ return {
249
+ transform: `translate${s.value ? "X" : "Y"}(${i * l}px)`,
250
+ transition: p.value ? "none" : "",
251
+ willChange: p.value ? "transform" : ""
252
+ };
253
+ }), q = h(() => ({
254
+ next: a.next,
255
+ prev: a.prev,
256
+ select: a.select,
257
+ isSelected: a.isSelected
258
+ })), U = h(() => {
259
+ switch (e.showArrows) {
260
+ case "always":
261
+ return !0;
262
+ case "desktop":
263
+ return !c.value;
264
+ case !0:
265
+ return o.value || Math.abs(t.value) > 0;
266
+ case "mobile":
267
+ return c.value || o.value || Math.abs(t.value) > 0;
268
+ default:
269
+ return !c.value && (o.value || Math.abs(t.value) > 0);
270
+ }
271
+ }), Z = h(() => Math.abs(t.value) > 0), ee = h(() => d.value > Math.abs(t.value) + n.value);
272
+ return J(() => m(e.tag, {
273
+ class: ["v-slide-group", {
274
+ "v-slide-group--vertical": !s.value,
275
+ "v-slide-group--has-affixes": U.value,
276
+ "v-slide-group--is-overflowing": o.value
277
+ }, b.value, e.class],
278
+ style: e.style,
279
+ tabindex: P.value || a.selected.value.length ? -1 : 0,
280
+ onFocus: L
281
+ }, {
282
+ default: () => [U.value && m("div", {
283
+ key: "prev",
284
+ class: ["v-slide-group__prev", {
285
+ "v-slide-group__prev--disabled": !Z.value
286
+ }],
287
+ onClick: () => Z.value && N("prev")
288
+ }, [v.prev?.(q.value) ?? m(ve, null, {
289
+ default: () => [m(ce, {
290
+ icon: r.value ? e.nextIcon : e.prevIcon
291
+ }, null)]
292
+ })]), m("div", {
293
+ key: "container",
294
+ ref: g,
295
+ class: "v-slide-group__container",
296
+ onScroll: w
297
+ }, [m("div", {
298
+ ref: f,
299
+ class: "v-slide-group__content",
300
+ style: Se.value,
301
+ onTouchstartPassive: C,
302
+ onTouchmovePassive: H,
303
+ onTouchendPassive: D,
304
+ onFocusin: Q,
305
+ onFocusout: G,
306
+ onKeydown: $
307
+ }, [v.default?.(q.value)])]), U.value && m("div", {
308
+ key: "next",
309
+ class: ["v-slide-group__next", {
310
+ "v-slide-group__next--disabled": !ee.value
311
+ }],
312
+ onClick: () => ee.value && N("next")
313
+ }, [v.next?.(q.value) ?? m(ve, null, {
314
+ default: () => [m(ce, {
315
+ icon: r.value ? e.prevIcon : e.nextIcon
316
+ }, null)]
317
+ })])]
318
+ })), {
319
+ selected: a.selected,
320
+ scrollTo: N,
321
+ scrollOffset: t,
322
+ focus: y
323
+ };
324
+ }
325
+ });
326
+ function Qe(e) {
327
+ return e ? e.map((u) => Me(u) ? u : {
328
+ text: u,
329
+ value: u
330
+ }) : [];
331
+ }
332
+ const Ze = j({
333
+ alignTabs: {
334
+ type: String,
335
+ default: "start"
336
+ },
337
+ color: String,
338
+ fixedTabs: Boolean,
339
+ items: {
340
+ type: Array,
341
+ default: () => []
342
+ },
343
+ stacked: Boolean,
344
+ bgColor: String,
345
+ grow: Boolean,
346
+ height: {
347
+ type: [Number, String],
348
+ default: void 0
349
+ },
350
+ hideSlider: Boolean,
351
+ sliderColor: String,
352
+ ...ye({
353
+ mandatory: "force"
354
+ }),
355
+ ...Ge(),
356
+ ...ge()
357
+ }, "VTabs"), et = K()({
358
+ name: "VTabs",
359
+ props: Ze(),
360
+ emits: {
361
+ "update:modelValue": (e) => !0
362
+ },
363
+ setup(e, u) {
364
+ let {
365
+ slots: v
366
+ } = u;
367
+ const r = _e(e, "modelValue"), b = h(() => Qe(e.items)), {
368
+ densityClasses: c
369
+ } = Le(e), {
370
+ backgroundColorClasses: a,
371
+ backgroundColorStyles: o
372
+ } = qe(T(e, "bgColor"));
373
+ return Re({
374
+ VTab: {
375
+ color: T(e, "color"),
376
+ direction: T(e, "direction"),
377
+ stacked: T(e, "stacked"),
378
+ fixed: T(e, "fixedTabs"),
379
+ sliderColor: T(e, "sliderColor"),
380
+ hideSlider: T(e, "hideSlider")
381
+ }
382
+ }), J(() => {
383
+ const t = me.filterProps(e);
384
+ return m(me, O(t, {
385
+ modelValue: r.value,
386
+ "onUpdate:modelValue": (n) => r.value = n,
387
+ class: ["v-tabs", `v-tabs--${e.direction}`, `v-tabs--align-tabs-${e.alignTabs}`, {
388
+ "v-tabs--fixed-tabs": e.fixedTabs,
389
+ "v-tabs--grow": e.grow,
390
+ "v-tabs--stacked": e.stacked
391
+ }, c.value, a.value, e.class],
392
+ style: [{
393
+ "--v-tabs-height": Be(e.height)
394
+ }, o.value, e.style],
395
+ role: "tablist",
396
+ symbol: be
397
+ }), {
398
+ default: () => [v.default ? v.default() : b.value.map((n) => m(he, O(n, {
399
+ key: n.text
400
+ }), null))]
401
+ });
402
+ }), {};
403
+ }
404
+ }), it = {
405
+ __name: "MobileLayout",
406
+ setup(e) {
407
+ const u = (
408
+ /** @type {import("@/types").Eodash} */
409
+ Ie(Ee)
410
+ ), v = u.template.widgets, r = ae(v), [b] = ae([u.template?.background]), { mainRect: c } = Oe(), a = E(-1), o = E(null), t = E("");
411
+ return $e(() => {
412
+ t.value = c.value.bottom + /** @type {HTMLElement} */
413
+ (o.value?.$el?.clientHeight ?? 0) + "px";
414
+ }), (n, d) => (V(), A(Ye, {
415
+ class: "overflow-hidden",
416
+ style: { height: "91dvh" }
417
+ }, {
418
+ default: F(() => [
419
+ (V(), A(
420
+ se(R(b).component),
421
+ O({ id: "bg-widget" }, R(b).props),
422
+ null,
423
+ 16
424
+ /* FULL_PROPS */
425
+ )),
426
+ (V(!0), W(
427
+ X,
428
+ null,
429
+ oe(R(r), (s, g) => ne((V(), W(
430
+ "div",
431
+ {
432
+ id: "overlay",
433
+ class: "pa-2",
434
+ key: g,
435
+ style: ie({
436
+ bottom: t.value,
437
+ position: "absolute",
438
+ overflow: "hidden",
439
+ width: "100%",
440
+ left: 0,
441
+ top: R(c).top + "px",
442
+ zIndex: 1,
443
+ background: "rgb(var(--v-theme-surface))"
444
+ })
445
+ },
446
+ [
447
+ m(Y, {
448
+ icon: "",
449
+ variant: "text",
450
+ style: { height: "5%", position: "relative" },
451
+ onClick: d[0] || (d[0] = (x) => a.value = -1)
452
+ }, {
453
+ default: F(() => [
454
+ ue("✕")
455
+ ]),
456
+ _: 1
457
+ /* STABLE */
458
+ }),
459
+ ne((V(), A(
460
+ se(s.value.component),
461
+ O({
462
+ style: { height: "94% !important" },
463
+ key: s.value.id
464
+ }, s.value.props),
465
+ null,
466
+ 16
467
+ /* FULL_PROPS */
468
+ )), [
469
+ [re, a.value === g]
470
+ ])
471
+ ],
472
+ 4
473
+ /* STYLE */
474
+ )), [
475
+ [re, a.value === g]
476
+ ])),
477
+ 128
478
+ /* KEYED_FRAGMENT */
479
+ )),
480
+ m(et, {
481
+ ref_key: "tabs",
482
+ ref: o,
483
+ "align-tabs": "center",
484
+ "bg-color": "surface",
485
+ style: ie({ position: "relative", bottom: (R(c).bottom || 48) + "px", zIndex: 10 }),
486
+ "show-arrows": "",
487
+ modelValue: a.value,
488
+ "onUpdate:modelValue": d[1] || (d[1] = (s) => a.value = s)
489
+ }, {
490
+ default: F(() => [
491
+ (V(!0), W(
492
+ X,
493
+ null,
494
+ oe(R(r), (s, g) => (V(), A(he, {
495
+ key: g,
496
+ value: g
497
+ }, {
498
+ default: F(() => [
499
+ ue(
500
+ Ae(s.value.title),
501
+ 1
502
+ /* TEXT */
503
+ )
504
+ ]),
505
+ _: 2
506
+ /* DYNAMIC */
507
+ }, 1032, ["value"]))),
508
+ 128
509
+ /* KEYED_FRAGMENT */
510
+ ))
511
+ ]),
512
+ _: 1
513
+ /* STABLE */
514
+ }, 8, ["style", "modelValue"])
515
+ ]),
516
+ _: 1
517
+ /* STABLE */
518
+ }));
519
+ }
520
+ };
521
+ export {
522
+ it as default
523
+ };