@eodash/eodash 5.0.0-alpha.2.4 → 5.0.0-alpha.2.6

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 +31 -7
  2. package/core/client/App.vue +6 -7
  3. package/core/client/SuspensedDashboard.ce.vue +59 -45
  4. package/core/client/asWebComponent.d.ts +10 -5
  5. package/core/client/asWebComponent.js +6 -6
  6. package/core/client/components/DashboardLayout.vue +63 -21
  7. package/core/client/components/DynamicWebComponent.vue +44 -44
  8. package/core/client/components/ErrorAlert.vue +24 -7
  9. package/core/client/components/Footer.vue +34 -15
  10. package/core/client/components/Header.vue +10 -5
  11. package/core/client/components/IframeWrapper.vue +4 -4
  12. package/core/client/components/Loading.vue +17 -18
  13. package/core/client/components/MobileLayout.vue +82 -29
  14. package/core/client/composables/DefineEodash.js +38 -28
  15. package/core/client/composables/DefineWidgets.js +105 -79
  16. package/core/client/composables/index.js +43 -141
  17. package/core/client/eodash.js +46 -39
  18. package/core/client/main.js +2 -2
  19. package/core/client/plugins/index.js +11 -9
  20. package/core/client/plugins/vuetify.js +9 -10
  21. package/core/client/render.js +4 -5
  22. package/core/client/store/States.js +8 -13
  23. package/core/client/store/index.js +14 -11
  24. package/core/client/store/stac.js +51 -37
  25. package/core/client/types.d.ts +173 -248
  26. package/core/client/utils/eodashSTAC.js +151 -66
  27. package/core/client/utils/helpers.js +18 -20
  28. package/core/client/utils/index.js +25 -14
  29. package/core/client/utils/keys.js +2 -2
  30. package/core/client/views/Dashboard.vue +70 -42
  31. package/core/client/vite-env.d.ts +19 -17
  32. package/dist/client/DashboardLayout-BuDcv6LM.js +156 -0
  33. package/dist/client/{DynamicWebComponent-C4Hotc4H.js → DynamicWebComponent-BEP4rVce.js} +7 -7
  34. package/dist/client/EodashDatePicker-oFb1zt5E.js +1211 -0
  35. package/dist/client/EodashItemFilter-BElmgrST.js +63 -0
  36. package/dist/client/{EodashMap-CGrQjZ1P.js → EodashMap-DXyOgcEd.js} +11333 -14025
  37. package/dist/client/Footer-CoPx6UXQ.js +115 -0
  38. package/dist/client/Header-C-zX31Ys.js +635 -0
  39. package/dist/client/{IframeWrapper-Cg3GMmfW.js → IframeWrapper-2w2ye0zM.js} +4 -4
  40. package/dist/client/MobileLayout-C9OVcP12.js +945 -0
  41. package/dist/client/{VMain-BHYlmRic.js → VMain-Dm43jd43.js} +8 -8
  42. package/dist/client/{WidgetsContainer-dje9QSk0.js → WidgetsContainer-BS87sLqk.js} +12 -5
  43. package/dist/client/asWebComponent-CpQUVi2N.js +20135 -0
  44. package/dist/client/{basedecoder-Qm25PwVp-CHo5Pomv.js → basedecoder-DHcBySSe-BmCFNFnw.js} +5 -6
  45. package/dist/client/{decoder-HRvnjnEI-BQ2rajuJ.js → decoder-CP4lv0Kb-BHrv68IA.js} +1 -1
  46. package/dist/client/deflate-BXt-9JA_-CWfClgpK.js +10 -0
  47. package/dist/client/eo-dash.js +3 -3
  48. package/dist/client/eodashSTAC-Q7kbX1Gy.js +2788 -0
  49. package/dist/client/{eox-itemfilter-DcQkRD2l.js → eox-itemfilter-TaBxgqq_.js} +1002 -974
  50. package/dist/client/{eox-map-C3DL31fp.js → eox-map-L7abwKTR.js} +5677 -5695
  51. package/dist/client/forwardRefs-BVFQ82G4.js +183 -0
  52. package/dist/client/{index-CaDDfJYE.js → index-dOzyv_xR.js} +43 -74
  53. package/dist/client/{jpeg-DNfUpLwy-Fjan-04T.js → jpeg-BAgeD1d3-oeHbFPUL.js} +5 -6
  54. package/dist/client/{lerc-_E46UbWQ-Beu35ovS.js → lerc-DzVumYtB-rm1Xco54.js} +5 -7
  55. package/dist/client/{lzw-BOMhmEDy-Dboc93VO.js → lzw-LAGDNbSC-DkP96qO9.js} +1 -1
  56. package/dist/client/{packbits-DaUD6MLm-Bu1PoTGa.js → packbits-BlDR4Kj5-C66n1-zr.js} +1 -1
  57. package/dist/client/{pako.esm-C3kYPGGQ-BMki8cQY.js → pako.esm-CB1uQYY0-DB0PYm1P.js} +6 -12
  58. package/dist/client/{raw-CcGKjn8q-DFOt-i8n.js → raw-CMGvRjfu-BRi6E4i1.js} +1 -1
  59. package/dist/client/{ssrBoot-Dd7m-btU.js → ssrBoot-L9KejErM.js} +3 -3
  60. package/dist/client/style.css +2 -2
  61. package/dist/client/transition-DCePIwYR.js +34 -0
  62. package/dist/client/{webfontloader-CyOFAuFB.js → webfontloader-qotgY98I.js} +56 -92
  63. package/dist/client/{webimage-D2c098k3-DLj1LQxB.js → webimage-BM_pbLN3-L2cGWK5l.js} +1 -1
  64. package/dist/node/cli.js +3 -3
  65. package/dist/node/types.d.ts +32 -38
  66. package/package.json +13 -14
  67. package/widgets/EodashDatePicker.vue +145 -41
  68. package/widgets/EodashItemFilter.vue +41 -22
  69. package/widgets/EodashMap.vue +87 -20
  70. package/widgets/WidgetsContainer.vue +45 -27
  71. package/dist/client/DashboardLayout-ZaSRMD1M.js +0 -149
  72. package/dist/client/EodashDatePicker-C4kKjxKy.js +0 -1653
  73. package/dist/client/EodashItemFilter-cBHC0YEM.js +0 -51
  74. package/dist/client/Footer-pS636dEP.js +0 -118
  75. package/dist/client/Header-DQuaLdjl.js +0 -605
  76. package/dist/client/MobileLayout-BLXFBWI_.js +0 -987
  77. package/dist/client/asWebComponent-Bvb3xkxI.js +0 -13311
  78. package/dist/client/deflate-Be2Arps5-hDqMz3RA.js +0 -10
  79. package/dist/client/forwardRefs-Bxeu9Obx.js +0 -142
  80. package/dist/client/index-DlNICb3T.js +0 -34
@@ -0,0 +1,1211 @@
1
+ import { aB as Ve, aC as _e, p as z, r as R, L as $, as as de, w as B, aD as _, aE as at, aF as we, aG as oe, aH as ae, aI as Ee, c as h, D as me, aJ as rt, aK as Se, C as V, ap as xe, at as ye, aL as Ne, aM as it, ah as He, x as ge, aN as pe, d as M, aO as lt, s as G, H as st, Z as Ie, aP as $e, q as ct, aQ as ut, ay as ft, aR as vt, e as dt, ac as mt, h as yt, g as je, y as We, i as gt, j as ht, Q as bt, R as wt, ad as Et, aj as St, aS as xt, a as qe, b as T, aT as pt, t as ue, B as kt, v as Ot, F as ze, ab as Ct, aU as Pt, o as At, aV as Tt, aW as Bt, aX as Ue, T as Lt, aw as Rt, aY as Mt, aZ as Ft, $ as re, a6 as Dt, a1 as X, a3 as ie, a_ as Vt, W as _t, a9 as ke, a$ as Nt, b0 as Ht, a0 as Oe, M as Ce, b1 as It, V as Pe, b2 as $t, b3 as Z } from "./asWebComponent-CpQUVi2N.js";
2
+ import { t as jt, e as Wt } from "./eodashSTAC-Q7kbX1Gy.js";
3
+ import { g as qt, B as le, c as Ae, n as zt, m as Ut, u as Yt, b as Ye, a as Gt, s as Kt, f as Xt } from "./forwardRefs-BVFQ82G4.js";
4
+ import { m as Zt, M as Qt } from "./transition-DCePIwYR.js";
5
+ const Q = /* @__PURE__ */ new WeakMap();
6
+ function Jt(e, t) {
7
+ Object.keys(t).forEach((n) => {
8
+ if (Ve(n)) {
9
+ const a = _e(n), r = Q.get(e);
10
+ if (t[n] == null)
11
+ r?.forEach((i) => {
12
+ const [o, l] = i;
13
+ o === a && (e.removeEventListener(a, l), r.delete(i));
14
+ });
15
+ else if (!r || ![...r].some((i) => i[0] === a && i[1] === t[n])) {
16
+ e.addEventListener(a, t[n]);
17
+ const i = r || /* @__PURE__ */ new Set();
18
+ i.add([a, t[n]]), Q.has(e) || Q.set(e, i);
19
+ }
20
+ } else
21
+ t[n] == null ? e.removeAttribute(n) : e.setAttribute(n, t[n]);
22
+ });
23
+ }
24
+ function en(e, t) {
25
+ Object.keys(t).forEach((n) => {
26
+ if (Ve(n)) {
27
+ const a = _e(n), r = Q.get(e);
28
+ r?.forEach((i) => {
29
+ const [o, l] = i;
30
+ o === a && (e.removeEventListener(a, l), r.delete(i));
31
+ });
32
+ } else
33
+ e.removeAttribute(n);
34
+ });
35
+ }
36
+ function Ge(e) {
37
+ if (typeof e.getRootNode != "function") {
38
+ for (; e.parentNode; ) e = e.parentNode;
39
+ return e !== document ? null : document;
40
+ }
41
+ const t = e.getRootNode();
42
+ return t !== document && t.getRootNode({
43
+ composed: !0
44
+ }) !== document ? null : t;
45
+ }
46
+ function tn(e) {
47
+ let t = arguments.length > 1 && arguments[1] !== void 0 ? arguments[1] : !1;
48
+ for (; e; ) {
49
+ if (t ? nn(e) : he(e)) return e;
50
+ e = e.parentElement;
51
+ }
52
+ return document.scrollingElement;
53
+ }
54
+ function J(e, t) {
55
+ const n = [];
56
+ if (t && e && !t.contains(e)) return n;
57
+ for (; e && (he(e) && n.push(e), e !== t); )
58
+ e = e.parentElement;
59
+ return n;
60
+ }
61
+ function he(e) {
62
+ if (!e || e.nodeType !== Node.ELEMENT_NODE) return !1;
63
+ const t = window.getComputedStyle(e);
64
+ return t.overflowY === "scroll" || t.overflowY === "auto" && e.scrollHeight > e.clientHeight;
65
+ }
66
+ function nn(e) {
67
+ if (!e || e.nodeType !== Node.ELEMENT_NODE) return !1;
68
+ const t = window.getComputedStyle(e);
69
+ return ["scroll", "auto"].includes(t.overflowY);
70
+ }
71
+ function on(e) {
72
+ for (; e; ) {
73
+ if (window.getComputedStyle(e).position === "fixed")
74
+ return !0;
75
+ e = e.offsetParent;
76
+ }
77
+ return !1;
78
+ }
79
+ function an() {
80
+ return !0;
81
+ }
82
+ function Ke(e, t, n) {
83
+ if (!e || Xe(e, n) === !1) return !1;
84
+ const a = Ge(t);
85
+ if (typeof ShadowRoot < "u" && a instanceof ShadowRoot && a.host === e.target) return !1;
86
+ const r = (typeof n.value == "object" && n.value.include || (() => []))();
87
+ return r.push(t), !r.some((i) => i?.contains(e.target));
88
+ }
89
+ function Xe(e, t) {
90
+ return (typeof t.value == "object" && t.value.closeConditional || an)(e);
91
+ }
92
+ function rn(e, t, n) {
93
+ const a = typeof n.value == "function" ? n.value : n.value.handler;
94
+ t._clickOutside.lastMousedownWasOutside && Ke(e, t, n) && setTimeout(() => {
95
+ Xe(e, n) && a && a(e);
96
+ }, 0);
97
+ }
98
+ function Te(e, t) {
99
+ const n = Ge(e);
100
+ t(document), typeof ShadowRoot < "u" && n instanceof ShadowRoot && t(n);
101
+ }
102
+ const ln = {
103
+ // [data-app] may not be found
104
+ // if using bind, inserted makes
105
+ // sure that the root element is
106
+ // available, iOS does not support
107
+ // clicks on body
108
+ mounted(e, t) {
109
+ const n = (r) => rn(r, e, t), a = (r) => {
110
+ e._clickOutside.lastMousedownWasOutside = Ke(r, e, t);
111
+ };
112
+ Te(e, (r) => {
113
+ r.addEventListener("click", n, !0), r.addEventListener("mousedown", a, !0);
114
+ }), e._clickOutside || (e._clickOutside = {
115
+ lastMousedownWasOutside: !1
116
+ }), e._clickOutside[t.instance.$.uid] = {
117
+ onClick: n,
118
+ onMousedown: a
119
+ };
120
+ },
121
+ unmounted(e, t) {
122
+ e._clickOutside && (Te(e, (n) => {
123
+ if (!n || !e._clickOutside?.[t.instance.$.uid]) return;
124
+ const {
125
+ onClick: a,
126
+ onMousedown: r
127
+ } = e._clickOutside[t.instance.$.uid];
128
+ n.removeEventListener("click", a, !0), n.removeEventListener("mousedown", r, !0);
129
+ }), delete e._clickOutside[t.instance.$.uid]);
130
+ }
131
+ };
132
+ function se(e, t) {
133
+ return {
134
+ x: e.x + t.x,
135
+ y: e.y + t.y
136
+ };
137
+ }
138
+ function sn(e, t) {
139
+ return {
140
+ x: e.x - t.x,
141
+ y: e.y - t.y
142
+ };
143
+ }
144
+ function Be(e, t) {
145
+ if (e.side === "top" || e.side === "bottom") {
146
+ const {
147
+ side: n,
148
+ align: a
149
+ } = e, r = a === "left" ? 0 : a === "center" ? t.width / 2 : a === "right" ? t.width : a, i = n === "top" ? 0 : n === "bottom" ? t.height : n;
150
+ return se({
151
+ x: r,
152
+ y: i
153
+ }, t);
154
+ } else if (e.side === "left" || e.side === "right") {
155
+ const {
156
+ side: n,
157
+ align: a
158
+ } = e, r = n === "left" ? 0 : n === "right" ? t.width : n, i = a === "top" ? 0 : a === "center" ? t.height / 2 : a === "bottom" ? t.height : a;
159
+ return se({
160
+ x: r,
161
+ y: i
162
+ }, t);
163
+ }
164
+ return se({
165
+ x: t.width / 2,
166
+ y: t.height / 2
167
+ }, t);
168
+ }
169
+ const Ze = {
170
+ static: fn,
171
+ // specific viewport position, usually centered
172
+ connected: dn
173
+ // connected to a certain element
174
+ }, cn = z({
175
+ locationStrategy: {
176
+ type: [String, Function],
177
+ default: "static",
178
+ validator: (e) => typeof e == "function" || e in Ze
179
+ },
180
+ location: {
181
+ type: String,
182
+ default: "bottom"
183
+ },
184
+ origin: {
185
+ type: String,
186
+ default: "auto"
187
+ },
188
+ offset: [Number, String, Array]
189
+ }, "VOverlay-location-strategies");
190
+ function un(e, t) {
191
+ const n = R({}), a = R();
192
+ $ && de(() => !!(t.isActive.value && e.locationStrategy), (i) => {
193
+ B(() => e.locationStrategy, i), _(() => {
194
+ window.removeEventListener("resize", r), a.value = void 0;
195
+ }), window.addEventListener("resize", r, {
196
+ passive: !0
197
+ }), typeof e.locationStrategy == "function" ? a.value = e.locationStrategy(t, e, n)?.updateLocation : a.value = Ze[e.locationStrategy](t, e, n)?.updateLocation;
198
+ });
199
+ function r(i) {
200
+ a.value?.(i);
201
+ }
202
+ return {
203
+ contentStyles: n,
204
+ updateLocation: a
205
+ };
206
+ }
207
+ function fn() {
208
+ }
209
+ function vn(e, t) {
210
+ t ? e.style.removeProperty("left") : e.style.removeProperty("right");
211
+ const n = zt(e);
212
+ return t ? n.x += parseFloat(e.style.right || 0) : n.x -= parseFloat(e.style.left || 0), n.y -= parseFloat(e.style.top || 0), n;
213
+ }
214
+ function dn(e, t, n) {
215
+ (Array.isArray(e.target.value) || on(e.target.value)) && Object.assign(n.value, {
216
+ position: "fixed",
217
+ top: 0,
218
+ [e.isRtl.value ? "right" : "left"]: 0
219
+ });
220
+ const {
221
+ preferredAnchor: r,
222
+ preferredOrigin: i
223
+ } = at(() => {
224
+ const f = we(t.location, e.isRtl.value), v = t.origin === "overlap" ? f : t.origin === "auto" ? oe(f) : we(t.origin, e.isRtl.value);
225
+ return f.side === v.side && f.align === ae(v).align ? {
226
+ preferredAnchor: Ee(f),
227
+ preferredOrigin: Ee(v)
228
+ } : {
229
+ preferredAnchor: f,
230
+ preferredOrigin: v
231
+ };
232
+ }), [o, l, c, u] = ["minWidth", "minHeight", "maxWidth", "maxHeight"].map((f) => h(() => {
233
+ const v = parseFloat(t[f]);
234
+ return isNaN(v) ? 1 / 0 : v;
235
+ })), d = h(() => {
236
+ if (Array.isArray(t.offset))
237
+ return t.offset;
238
+ if (typeof t.offset == "string") {
239
+ const f = t.offset.split(" ").map(parseFloat);
240
+ return f.length < 2 && f.push(0), f;
241
+ }
242
+ return typeof t.offset == "number" ? [t.offset, 0] : [0, 0];
243
+ });
244
+ let b = !1;
245
+ const x = new ResizeObserver(() => {
246
+ b && g();
247
+ });
248
+ B([e.target, e.contentEl], (f, v) => {
249
+ let [O, L] = f, [w, E] = v;
250
+ w && !Array.isArray(w) && x.unobserve(w), O && !Array.isArray(O) && x.observe(O), E && x.unobserve(E), L && x.observe(L);
251
+ }, {
252
+ immediate: !0
253
+ }), _(() => {
254
+ x.disconnect();
255
+ });
256
+ function g() {
257
+ if (b = !1, requestAnimationFrame(() => b = !0), !e.target.value || !e.contentEl.value) return;
258
+ const f = qt(e.target.value), v = vn(e.contentEl.value, e.isRtl.value), O = J(e.contentEl.value), L = 12;
259
+ O.length || (O.push(document.documentElement), e.contentEl.value.style.top && e.contentEl.value.style.left || (v.x -= parseFloat(document.documentElement.style.getPropertyValue("--v-body-scroll-x") || 0), v.y -= parseFloat(document.documentElement.style.getPropertyValue("--v-body-scroll-y") || 0)));
260
+ const w = O.reduce((p, S) => {
261
+ const m = S.getBoundingClientRect(), y = new le({
262
+ x: S === document.documentElement ? 0 : m.x,
263
+ y: S === document.documentElement ? 0 : m.y,
264
+ width: S.clientWidth,
265
+ height: S.clientHeight
266
+ });
267
+ return p ? new le({
268
+ x: Math.max(p.left, y.left),
269
+ y: Math.max(p.top, y.top),
270
+ width: Math.min(p.right, y.right) - Math.max(p.left, y.left),
271
+ height: Math.min(p.bottom, y.bottom) - Math.max(p.top, y.top)
272
+ }) : y;
273
+ }, void 0);
274
+ w.x += L, w.y += L, w.width -= L * 2, w.height -= L * 2;
275
+ let E = {
276
+ anchor: r.value,
277
+ origin: i.value
278
+ };
279
+ function N(p) {
280
+ const S = new le(v), m = Be(p.anchor, f), y = Be(p.origin, S);
281
+ let {
282
+ x: C,
283
+ y: D
284
+ } = sn(m, y);
285
+ switch (p.anchor.side) {
286
+ case "top":
287
+ D -= d.value[0];
288
+ break;
289
+ case "bottom":
290
+ D += d.value[0];
291
+ break;
292
+ case "left":
293
+ C -= d.value[0];
294
+ break;
295
+ case "right":
296
+ C += d.value[0];
297
+ break;
298
+ }
299
+ switch (p.anchor.align) {
300
+ case "top":
301
+ D -= d.value[1];
302
+ break;
303
+ case "bottom":
304
+ D += d.value[1];
305
+ break;
306
+ case "left":
307
+ C -= d.value[1];
308
+ break;
309
+ case "right":
310
+ C += d.value[1];
311
+ break;
312
+ }
313
+ return S.x += C, S.y += D, S.width = Math.min(S.width, c.value), S.height = Math.min(S.height, u.value), {
314
+ overflows: Ae(S, w),
315
+ x: C,
316
+ y: D
317
+ };
318
+ }
319
+ let F = 0, A = 0;
320
+ const s = {
321
+ x: 0,
322
+ y: 0
323
+ }, H = {
324
+ x: !1,
325
+ y: !1
326
+ };
327
+ let U = -1;
328
+ for (; ; ) {
329
+ if (U++ > 10) {
330
+ rt("Infinite loop detected in connectedLocationStrategy");
331
+ break;
332
+ }
333
+ const {
334
+ x: p,
335
+ y: S,
336
+ overflows: m
337
+ } = N(E);
338
+ F += p, A += S, v.x += p, v.y += S;
339
+ {
340
+ const y = Se(E.anchor), C = m.x.before || m.x.after, D = m.y.before || m.y.after;
341
+ let j = !1;
342
+ if (["x", "y"].forEach((P) => {
343
+ if (P === "x" && C && !H.x || P === "y" && D && !H.y) {
344
+ const I = {
345
+ anchor: {
346
+ ...E.anchor
347
+ },
348
+ origin: {
349
+ ...E.origin
350
+ }
351
+ }, W = P === "x" ? y === "y" ? ae : oe : y === "y" ? oe : ae;
352
+ I.anchor = W(I.anchor), I.origin = W(I.origin);
353
+ const {
354
+ overflows: q
355
+ } = N(I);
356
+ (q[P].before <= m[P].before && q[P].after <= m[P].after || q[P].before + q[P].after < (m[P].before + m[P].after) / 2) && (E = I, j = H[P] = !0);
357
+ }
358
+ }), j) continue;
359
+ }
360
+ m.x.before && (F += m.x.before, v.x += m.x.before), m.x.after && (F -= m.x.after, v.x -= m.x.after), m.y.before && (A += m.y.before, v.y += m.y.before), m.y.after && (A -= m.y.after, v.y -= m.y.after);
361
+ {
362
+ const y = Ae(v, w);
363
+ s.x = w.width - y.x.before - y.x.after, s.y = w.height - y.y.before - y.y.after, F += y.x.before, v.x += y.x.before, A += y.y.before, v.y += y.y.before;
364
+ }
365
+ break;
366
+ }
367
+ const te = Se(E.anchor);
368
+ return Object.assign(n.value, {
369
+ "--v-overlay-anchor-origin": `${E.anchor.side} ${E.anchor.align}`,
370
+ transformOrigin: `${E.origin.side} ${E.origin.align}`,
371
+ // transform: `translate(${pixelRound(x)}px, ${pixelRound(y)}px)`,
372
+ top: V(ce(A)),
373
+ left: e.isRtl.value ? void 0 : V(ce(F)),
374
+ right: e.isRtl.value ? V(ce(-F)) : void 0,
375
+ minWidth: V(te === "y" ? Math.min(o.value, f.width) : o.value),
376
+ maxWidth: V(Le(xe(s.x, o.value === 1 / 0 ? 0 : o.value, c.value))),
377
+ maxHeight: V(Le(xe(s.y, l.value === 1 / 0 ? 0 : l.value, u.value)))
378
+ }), {
379
+ available: s,
380
+ contentBox: v
381
+ };
382
+ }
383
+ return B(() => [r.value, i.value, t.offset, t.minWidth, t.minHeight, t.maxWidth, t.maxHeight], () => g()), me(() => {
384
+ const f = g();
385
+ if (!f) return;
386
+ const {
387
+ available: v,
388
+ contentBox: O
389
+ } = f;
390
+ O.height > v.y && requestAnimationFrame(() => {
391
+ g(), requestAnimationFrame(() => {
392
+ g();
393
+ });
394
+ });
395
+ }), {
396
+ updateLocation: g
397
+ };
398
+ }
399
+ function ce(e) {
400
+ return Math.round(e * devicePixelRatio) / devicePixelRatio;
401
+ }
402
+ function Le(e) {
403
+ return Math.ceil(e * devicePixelRatio) / devicePixelRatio;
404
+ }
405
+ let fe = !0;
406
+ const ee = [];
407
+ function mn(e) {
408
+ !fe || ee.length ? (ee.push(e), ve()) : (fe = !1, e(), ve());
409
+ }
410
+ let Re = -1;
411
+ function ve() {
412
+ cancelAnimationFrame(Re), Re = requestAnimationFrame(() => {
413
+ const e = ee.shift();
414
+ e && e(), ee.length ? ve() : fe = !0;
415
+ });
416
+ }
417
+ const Qe = {
418
+ none: null,
419
+ close: hn,
420
+ block: bn,
421
+ reposition: wn
422
+ }, yn = z({
423
+ scrollStrategy: {
424
+ type: [String, Function],
425
+ default: "block",
426
+ validator: (e) => typeof e == "function" || e in Qe
427
+ }
428
+ }, "VOverlay-scroll-strategies");
429
+ function gn(e, t) {
430
+ if (!$) return;
431
+ let n;
432
+ ye(async () => {
433
+ n?.stop(), t.isActive.value && e.scrollStrategy && (n = Ne(), await new Promise((a) => setTimeout(a)), n.active && n.run(() => {
434
+ typeof e.scrollStrategy == "function" ? e.scrollStrategy(t, e, n) : Qe[e.scrollStrategy]?.(t, e, n);
435
+ }));
436
+ }), _(() => {
437
+ n?.stop();
438
+ });
439
+ }
440
+ function hn(e) {
441
+ function t(n) {
442
+ e.isActive.value = !1;
443
+ }
444
+ Je(e.targetEl.value ?? e.contentEl.value, t);
445
+ }
446
+ function bn(e, t) {
447
+ const n = e.root.value?.offsetParent, a = [.../* @__PURE__ */ new Set([...J(e.targetEl.value, t.contained ? n : void 0), ...J(e.contentEl.value, t.contained ? n : void 0)])].filter((o) => !o.classList.contains("v-overlay-scroll-blocked")), r = window.innerWidth - document.documentElement.offsetWidth, i = ((o) => he(o) && o)(n || document.documentElement);
448
+ i && e.root.value.classList.add("v-overlay--scroll-blocked"), a.forEach((o, l) => {
449
+ o.style.setProperty("--v-body-scroll-x", V(-o.scrollLeft)), o.style.setProperty("--v-body-scroll-y", V(-o.scrollTop)), o !== document.documentElement && o.style.setProperty("--v-scrollbar-offset", V(r)), o.classList.add("v-overlay-scroll-blocked");
450
+ }), _(() => {
451
+ a.forEach((o, l) => {
452
+ const c = parseFloat(o.style.getPropertyValue("--v-body-scroll-x")), u = parseFloat(o.style.getPropertyValue("--v-body-scroll-y")), d = o.style.scrollBehavior;
453
+ o.style.scrollBehavior = "auto", o.style.removeProperty("--v-body-scroll-x"), o.style.removeProperty("--v-body-scroll-y"), o.style.removeProperty("--v-scrollbar-offset"), o.classList.remove("v-overlay-scroll-blocked"), o.scrollLeft = -c, o.scrollTop = -u, o.style.scrollBehavior = d;
454
+ }), i && e.root.value.classList.remove("v-overlay--scroll-blocked");
455
+ });
456
+ }
457
+ function wn(e, t, n) {
458
+ let a = !1, r = -1, i = -1;
459
+ function o(l) {
460
+ mn(() => {
461
+ const c = performance.now();
462
+ e.updateLocation.value?.(l), a = (performance.now() - c) / (1e3 / 60) > 2;
463
+ });
464
+ }
465
+ i = (typeof requestIdleCallback > "u" ? (l) => l() : requestIdleCallback)(() => {
466
+ n.run(() => {
467
+ Je(e.targetEl.value ?? e.contentEl.value, (l) => {
468
+ a ? (cancelAnimationFrame(r), r = requestAnimationFrame(() => {
469
+ r = requestAnimationFrame(() => {
470
+ o(l);
471
+ });
472
+ })) : o(l);
473
+ });
474
+ });
475
+ }), _(() => {
476
+ typeof cancelIdleCallback < "u" && cancelIdleCallback(i), cancelAnimationFrame(r);
477
+ });
478
+ }
479
+ function Je(e, t) {
480
+ const n = [document, ...J(e)];
481
+ n.forEach((a) => {
482
+ a.addEventListener("scroll", t, {
483
+ passive: !0
484
+ });
485
+ }), _(() => {
486
+ n.forEach((a) => {
487
+ a.removeEventListener("scroll", t);
488
+ });
489
+ });
490
+ }
491
+ const En = Symbol.for("vuetify:v-menu"), Sn = z({
492
+ closeDelay: [Number, String],
493
+ openDelay: [Number, String]
494
+ }, "delay");
495
+ function xn(e, t) {
496
+ let n = () => {
497
+ };
498
+ function a(o) {
499
+ n?.();
500
+ const l = Number(o ? e.openDelay : e.closeDelay);
501
+ return new Promise((c) => {
502
+ n = it(l, () => {
503
+ t?.(o), c(o);
504
+ });
505
+ });
506
+ }
507
+ function r() {
508
+ return a(!0);
509
+ }
510
+ function i() {
511
+ return a(!1);
512
+ }
513
+ return {
514
+ clearDelay: n,
515
+ runOpenDelay: r,
516
+ runCloseDelay: i
517
+ };
518
+ }
519
+ const pn = z({
520
+ target: [String, Object],
521
+ activator: [String, Object],
522
+ activatorProps: {
523
+ type: Object,
524
+ default: () => ({})
525
+ },
526
+ openOnClick: {
527
+ type: Boolean,
528
+ default: void 0
529
+ },
530
+ openOnHover: Boolean,
531
+ openOnFocus: {
532
+ type: Boolean,
533
+ default: void 0
534
+ },
535
+ closeOnContentClick: Boolean,
536
+ ...Sn()
537
+ }, "VOverlay-activator");
538
+ function kn(e, t) {
539
+ let {
540
+ isActive: n,
541
+ isTop: a
542
+ } = t;
543
+ const r = He("useActivator"), i = R();
544
+ let o = !1, l = !1, c = !0;
545
+ const u = h(() => e.openOnFocus || e.openOnFocus == null && e.openOnHover), d = h(() => e.openOnClick || e.openOnClick == null && !e.openOnHover && !u.value), {
546
+ runOpenDelay: b,
547
+ runCloseDelay: x
548
+ } = xn(e, (s) => {
549
+ s === (e.openOnHover && o || u.value && l) && !(e.openOnHover && n.value && !a.value) && (n.value !== s && (c = !0), n.value = s);
550
+ }), g = R(), f = {
551
+ onClick: (s) => {
552
+ s.stopPropagation(), i.value = s.currentTarget || s.target, n.value || (g.value = [s.clientX, s.clientY]), n.value = !n.value;
553
+ },
554
+ onMouseenter: (s) => {
555
+ s.sourceCapabilities?.firesTouchEvents || (o = !0, i.value = s.currentTarget || s.target, b());
556
+ },
557
+ onMouseleave: (s) => {
558
+ o = !1, x();
559
+ },
560
+ onFocus: (s) => {
561
+ lt(s.target, ":focus-visible") !== !1 && (l = !0, s.stopPropagation(), i.value = s.currentTarget || s.target, b());
562
+ },
563
+ onBlur: (s) => {
564
+ l = !1, s.stopPropagation(), x();
565
+ }
566
+ }, v = h(() => {
567
+ const s = {};
568
+ return d.value && (s.onClick = f.onClick), e.openOnHover && (s.onMouseenter = f.onMouseenter, s.onMouseleave = f.onMouseleave), u.value && (s.onFocus = f.onFocus, s.onBlur = f.onBlur), s;
569
+ }), O = h(() => {
570
+ const s = {};
571
+ if (e.openOnHover && (s.onMouseenter = () => {
572
+ o = !0, b();
573
+ }, s.onMouseleave = () => {
574
+ o = !1, x();
575
+ }), u.value && (s.onFocusin = () => {
576
+ l = !0, b();
577
+ }, s.onFocusout = () => {
578
+ l = !1, x();
579
+ }), e.closeOnContentClick) {
580
+ const H = ge(En, null);
581
+ s.onClick = () => {
582
+ n.value = !1, H?.closeParents();
583
+ };
584
+ }
585
+ return s;
586
+ }), L = h(() => {
587
+ const s = {};
588
+ return e.openOnHover && (s.onMouseenter = () => {
589
+ c && (o = !0, c = !1, b());
590
+ }, s.onMouseleave = () => {
591
+ o = !1, x();
592
+ }), s;
593
+ });
594
+ B(a, (s) => {
595
+ s && (e.openOnHover && !o && (!u.value || !l) || u.value && !l && (!e.openOnHover || !o)) && (n.value = !1);
596
+ }), B(n, (s) => {
597
+ s || setTimeout(() => {
598
+ g.value = void 0;
599
+ });
600
+ }, {
601
+ flush: "post"
602
+ });
603
+ const w = pe();
604
+ ye(() => {
605
+ w.value && me(() => {
606
+ i.value = w.el;
607
+ });
608
+ });
609
+ const E = pe(), N = h(() => e.target === "cursor" && g.value ? g.value : E.value ? E.el : et(e.target, r) || i.value), F = h(() => Array.isArray(N.value) ? void 0 : N.value);
610
+ let A;
611
+ return B(() => !!e.activator, (s) => {
612
+ s && $ ? (A = Ne(), A.run(() => {
613
+ On(e, r, {
614
+ activatorEl: i,
615
+ activatorEvents: v
616
+ });
617
+ })) : A && A.stop();
618
+ }, {
619
+ flush: "post",
620
+ immediate: !0
621
+ }), _(() => {
622
+ A?.stop();
623
+ }), {
624
+ activatorEl: i,
625
+ activatorRef: w,
626
+ target: N,
627
+ targetEl: F,
628
+ targetRef: E,
629
+ activatorEvents: v,
630
+ contentEvents: O,
631
+ scrimEvents: L
632
+ };
633
+ }
634
+ function On(e, t, n) {
635
+ let {
636
+ activatorEl: a,
637
+ activatorEvents: r
638
+ } = n;
639
+ B(() => e.activator, (c, u) => {
640
+ if (u && c !== u) {
641
+ const d = l(u);
642
+ d && o(d);
643
+ }
644
+ c && me(() => i());
645
+ }, {
646
+ immediate: !0
647
+ }), B(() => e.activatorProps, () => {
648
+ i();
649
+ }), _(() => {
650
+ o();
651
+ });
652
+ function i() {
653
+ let c = arguments.length > 0 && arguments[0] !== void 0 ? arguments[0] : l(), u = arguments.length > 1 && arguments[1] !== void 0 ? arguments[1] : e.activatorProps;
654
+ c && Jt(c, M(r.value, u));
655
+ }
656
+ function o() {
657
+ let c = arguments.length > 0 && arguments[0] !== void 0 ? arguments[0] : l(), u = arguments.length > 1 && arguments[1] !== void 0 ? arguments[1] : e.activatorProps;
658
+ c && en(c, M(r.value, u));
659
+ }
660
+ function l() {
661
+ let c = arguments.length > 0 && arguments[0] !== void 0 ? arguments[0] : e.activator;
662
+ const u = et(c, t);
663
+ return a.value = u?.nodeType === Node.ELEMENT_NODE ? u : void 0, a.value;
664
+ }
665
+ }
666
+ function et(e, t) {
667
+ if (!e) return;
668
+ let n;
669
+ if (e === "parent") {
670
+ let a = t?.proxy?.$el?.parentNode;
671
+ for (; a?.hasAttribute("data-no-activator"); )
672
+ a = a.parentNode;
673
+ n = a;
674
+ } else typeof e == "string" ? n = document.querySelector(e) : "$el" in e ? n = e.$el : n = e;
675
+ return n;
676
+ }
677
+ function Cn() {
678
+ if (!$) return G(!1);
679
+ const {
680
+ ssr: e
681
+ } = st();
682
+ if (e) {
683
+ const t = G(!1);
684
+ return Ie(() => {
685
+ t.value = !0;
686
+ }), t;
687
+ } else
688
+ return G(!0);
689
+ }
690
+ const Me = Symbol.for("vuetify:stack"), Y = $e([]);
691
+ function Pn(e, t, n) {
692
+ const a = He("useStack"), r = !n, i = ge(Me, void 0), o = $e({
693
+ activeChildren: /* @__PURE__ */ new Set()
694
+ });
695
+ ct(Me, o);
696
+ const l = G(+t.value);
697
+ de(e, () => {
698
+ const d = Y.at(-1)?.[1];
699
+ l.value = d ? d + 10 : +t.value, r && Y.push([a.uid, l.value]), i?.activeChildren.add(a.uid), _(() => {
700
+ if (r) {
701
+ const b = ut(Y).findIndex((x) => x[0] === a.uid);
702
+ Y.splice(b, 1);
703
+ }
704
+ i?.activeChildren.delete(a.uid);
705
+ });
706
+ });
707
+ const c = G(!0);
708
+ r && ye(() => {
709
+ const d = Y.at(-1)?.[0] === a.uid;
710
+ setTimeout(() => c.value = d);
711
+ });
712
+ const u = h(() => !o.activeChildren.size);
713
+ return {
714
+ globalTop: ft(c),
715
+ localTop: u,
716
+ stackStyles: h(() => ({
717
+ zIndex: l.value
718
+ }))
719
+ };
720
+ }
721
+ function An(e) {
722
+ return {
723
+ teleportTarget: h(() => {
724
+ const n = e.value;
725
+ if (n === !0 || !$) return;
726
+ const a = n === !1 ? document.body : typeof n == "string" ? document.querySelector(n) : n;
727
+ if (a == null) {
728
+ vt(`Unable to locate target ${n}`);
729
+ return;
730
+ }
731
+ let r = a.querySelector(":scope > .v-overlay-container");
732
+ return r || (r = document.createElement("div"), r.className = "v-overlay-container", a.appendChild(r)), r;
733
+ })
734
+ };
735
+ }
736
+ function Tn(e) {
737
+ const {
738
+ modelValue: t,
739
+ color: n,
740
+ ...a
741
+ } = e;
742
+ return T(Ct, {
743
+ name: "fade-transition",
744
+ appear: !0
745
+ }, {
746
+ default: () => [e.modelValue && T("div", M({
747
+ class: ["v-overlay__scrim", e.color.backgroundColorClasses.value],
748
+ style: e.color.backgroundColorStyles.value
749
+ }, a), null)]
750
+ });
751
+ }
752
+ const tt = z({
753
+ absolute: Boolean,
754
+ attach: [Boolean, String, Object],
755
+ closeOnBack: {
756
+ type: Boolean,
757
+ default: !0
758
+ },
759
+ contained: Boolean,
760
+ contentClass: null,
761
+ contentProps: null,
762
+ disabled: Boolean,
763
+ opacity: [Number, String],
764
+ noClickAnimation: Boolean,
765
+ modelValue: Boolean,
766
+ persistent: Boolean,
767
+ scrim: {
768
+ type: [Boolean, String],
769
+ default: !0
770
+ },
771
+ zIndex: {
772
+ type: [Number, String],
773
+ default: 2e3
774
+ },
775
+ ...pn(),
776
+ ...dt(),
777
+ ...mt(),
778
+ ...Ut(),
779
+ ...cn(),
780
+ ...yn(),
781
+ ...yt(),
782
+ ...Zt()
783
+ }, "VOverlay"), Fe = je()({
784
+ name: "VOverlay",
785
+ directives: {
786
+ ClickOutside: ln
787
+ },
788
+ inheritAttrs: !1,
789
+ props: {
790
+ _disableGlobalStack: Boolean,
791
+ ...tt()
792
+ },
793
+ emits: {
794
+ "click:outside": (e) => !0,
795
+ "update:modelValue": (e) => !0,
796
+ afterEnter: () => !0,
797
+ afterLeave: () => !0
798
+ },
799
+ setup(e, t) {
800
+ let {
801
+ slots: n,
802
+ attrs: a,
803
+ emit: r
804
+ } = t;
805
+ const i = We(e, "modelValue"), o = h({
806
+ get: () => i.value,
807
+ set: (k) => {
808
+ k && e.disabled || (i.value = k);
809
+ }
810
+ }), {
811
+ themeClasses: l
812
+ } = gt(e), {
813
+ rtlClasses: c,
814
+ isRtl: u
815
+ } = ht(), {
816
+ hasContent: d,
817
+ onAfterLeave: b
818
+ } = Yt(e, o), x = bt(h(() => typeof e.scrim == "string" ? e.scrim : null)), {
819
+ globalTop: g,
820
+ localTop: f,
821
+ stackStyles: v
822
+ } = Pn(o, wt(e, "zIndex"), e._disableGlobalStack), {
823
+ activatorEl: O,
824
+ activatorRef: L,
825
+ target: w,
826
+ targetEl: E,
827
+ targetRef: N,
828
+ activatorEvents: F,
829
+ contentEvents: A,
830
+ scrimEvents: s
831
+ } = kn(e, {
832
+ isActive: o,
833
+ isTop: f
834
+ }), H = h(() => O?.value?.getRootNode()), {
835
+ teleportTarget: U
836
+ } = An(h(() => e.attach || e.contained || H.value instanceof ShadowRoot ? H.value : !1)), {
837
+ dimensionStyles: te
838
+ } = Et(e), p = Cn(), {
839
+ scopeId: S
840
+ } = Ye();
841
+ B(() => e.disabled, (k) => {
842
+ k && (o.value = !1);
843
+ });
844
+ const m = R(), y = R(), C = R(), {
845
+ contentStyles: D,
846
+ updateLocation: j
847
+ } = un(e, {
848
+ isRtl: u,
849
+ contentEl: C,
850
+ target: w,
851
+ isActive: o
852
+ });
853
+ gn(e, {
854
+ root: m,
855
+ contentEl: C,
856
+ targetEl: E,
857
+ isActive: o,
858
+ updateLocation: j
859
+ });
860
+ function P(k) {
861
+ r("click:outside", k), e.persistent ? K() : o.value = !1;
862
+ }
863
+ function I(k) {
864
+ return o.value && g.value && // If using scrim, only close if clicking on it rather than anything opened on top
865
+ (!e.scrim || k.target === y.value);
866
+ }
867
+ $ && B(o, (k) => {
868
+ k ? window.addEventListener("keydown", W) : window.removeEventListener("keydown", W);
869
+ }, {
870
+ immediate: !0
871
+ }), St(() => {
872
+ $ && window.removeEventListener("keydown", W);
873
+ });
874
+ function W(k) {
875
+ k.key === "Escape" && g.value && (e.persistent ? K() : (o.value = !1, C.value?.contains(document.activeElement) && O.value?.focus()));
876
+ }
877
+ const q = xt();
878
+ de(() => e.closeOnBack, () => {
879
+ Pt(q, (k) => {
880
+ g.value && o.value ? (k(!1), e.persistent ? K() : o.value = !1) : k();
881
+ });
882
+ });
883
+ const be = R();
884
+ B(() => o.value && (e.absolute || e.contained) && U.value == null, (k) => {
885
+ if (k) {
886
+ const ne = tn(m.value);
887
+ ne && ne !== document.scrollingElement && (be.value = ne.scrollTop);
888
+ }
889
+ });
890
+ function K() {
891
+ e.noClickAnimation || C.value && Gt(C.value, [{
892
+ transformOrigin: "center"
893
+ }, {
894
+ transform: "scale(1.03)"
895
+ }, {
896
+ transformOrigin: "center"
897
+ }], {
898
+ duration: 150,
899
+ easing: Kt
900
+ });
901
+ }
902
+ function nt() {
903
+ r("afterEnter");
904
+ }
905
+ function ot() {
906
+ b(), r("afterLeave");
907
+ }
908
+ return qe(() => T(ze, null, [n.activator?.({
909
+ isActive: o.value,
910
+ targetRef: N,
911
+ props: M({
912
+ ref: L
913
+ }, F.value, e.activatorProps)
914
+ }), p.value && d.value && T(pt, {
915
+ disabled: !U.value,
916
+ to: U.value
917
+ }, {
918
+ default: () => [T("div", M({
919
+ class: ["v-overlay", {
920
+ "v-overlay--absolute": e.absolute || e.contained,
921
+ "v-overlay--active": o.value,
922
+ "v-overlay--contained": e.contained
923
+ }, l.value, c.value, e.class],
924
+ style: [v.value, {
925
+ "--v-overlay-opacity": e.opacity,
926
+ top: V(be.value)
927
+ }, e.style],
928
+ ref: m
929
+ }, S, a), [T(Tn, M({
930
+ color: x,
931
+ modelValue: o.value && !!e.scrim,
932
+ ref: y
933
+ }, s.value), null), T(Qt, {
934
+ appear: !0,
935
+ persisted: !0,
936
+ transition: e.transition,
937
+ target: w.value,
938
+ onAfterEnter: nt,
939
+ onAfterLeave: ot
940
+ }, {
941
+ default: () => [ue(T("div", M({
942
+ ref: C,
943
+ class: ["v-overlay__content", e.contentClass],
944
+ style: [te.value, D.value]
945
+ }, A.value, e.contentProps), [n.default?.({
946
+ isActive: o
947
+ })]), [[kt, o.value], [Ot("click-outside"), {
948
+ handler: P,
949
+ closeConditional: I,
950
+ include: () => [O.value]
951
+ }]])]
952
+ })])]
953
+ })])), {
954
+ activatorEl: O,
955
+ scrimEl: y,
956
+ target: w,
957
+ animateClick: K,
958
+ contentEl: C,
959
+ globalTop: g,
960
+ localTop: f,
961
+ updateLocation: j
962
+ };
963
+ }
964
+ }), Bn = z({
965
+ id: String,
966
+ text: String,
967
+ ...At(tt({
968
+ closeOnBack: !1,
969
+ location: "end",
970
+ locationStrategy: "connected",
971
+ eager: !0,
972
+ minWidth: 0,
973
+ offset: 10,
974
+ openOnClick: !1,
975
+ openOnHover: !0,
976
+ origin: "auto",
977
+ scrim: !1,
978
+ scrollStrategy: "reposition",
979
+ transition: !1
980
+ }), ["absolute", "persistent"])
981
+ }, "VTooltip"), Ln = je()({
982
+ name: "VTooltip",
983
+ props: Bn(),
984
+ emits: {
985
+ "update:modelValue": (e) => !0
986
+ },
987
+ setup(e, t) {
988
+ let {
989
+ slots: n
990
+ } = t;
991
+ const a = We(e, "modelValue"), {
992
+ scopeId: r
993
+ } = Ye(), i = Tt(), o = h(() => e.id || `v-tooltip-${i}`), l = R(), c = h(() => e.location.split(" ").length > 1 ? e.location : e.location + " center"), u = h(() => e.origin === "auto" || e.origin === "overlap" || e.origin.split(" ").length > 1 || e.location.split(" ").length > 1 ? e.origin : e.origin + " center"), d = h(() => e.transition ? e.transition : a.value ? "scale-transition" : "fade-transition"), b = h(() => M({
994
+ "aria-describedby": o.value
995
+ }, e.activatorProps));
996
+ return qe(() => {
997
+ const x = Fe.filterProps(e);
998
+ return T(Fe, M({
999
+ ref: l,
1000
+ class: ["v-tooltip", e.class],
1001
+ style: e.style,
1002
+ id: o.value
1003
+ }, x, {
1004
+ modelValue: a.value,
1005
+ "onUpdate:modelValue": (g) => a.value = g,
1006
+ transition: d.value,
1007
+ absolute: !0,
1008
+ location: c.value,
1009
+ origin: u.value,
1010
+ persistent: !0,
1011
+ role: "tooltip",
1012
+ activatorProps: b.value,
1013
+ _disableGlobalStack: !0
1014
+ }, r), {
1015
+ activator: n.activator,
1016
+ default: function() {
1017
+ for (var g = arguments.length, f = new Array(g), v = 0; v < g; v++)
1018
+ f[v] = arguments[v];
1019
+ return n.default?.(...f) ?? e.text;
1020
+ }
1021
+ });
1022
+ }), Xt({}, l);
1023
+ }
1024
+ });
1025
+ function Rn(e, t) {
1026
+ const n = typeof e == "string" ? Bt(e) : e, a = Mn(n, t);
1027
+ return {
1028
+ mounted: a,
1029
+ updated: a,
1030
+ unmounted(r) {
1031
+ Ue(null, r);
1032
+ }
1033
+ };
1034
+ }
1035
+ function Mn(e, t) {
1036
+ return function(n, a, r) {
1037
+ const i = typeof t == "function" ? t(a) : t, o = a.value?.text ?? a.value ?? i?.text, l = Lt(a.value) ? a.value : {}, c = () => o ?? n.innerHTML, u = (r.ctx === a.instance.$ ? Fn(r, a.instance.$)?.provides : r.ctx?.provides) ?? a.instance.$.provides, d = Rt(e, M(i, l), c);
1038
+ d.appContext = Object.assign(/* @__PURE__ */ Object.create(null), a.instance.$.appContext, {
1039
+ provides: u
1040
+ }), Ue(d, n);
1041
+ };
1042
+ }
1043
+ function Fn(e, t) {
1044
+ const n = /* @__PURE__ */ new Set(), a = (i) => {
1045
+ for (const o of i) {
1046
+ if (!o) continue;
1047
+ if (o === e)
1048
+ return !0;
1049
+ n.add(o);
1050
+ let l;
1051
+ if (o.suspense ? l = a([o.ssContent]) : Array.isArray(o.children) ? l = a(o.children) : o.component?.vnode && (l = a([o.component?.subTree])), l)
1052
+ return l;
1053
+ n.delete(o);
1054
+ }
1055
+ return !1;
1056
+ };
1057
+ if (!a([t.subTree]))
1058
+ throw new Error("Could not find original vnode");
1059
+ const r = Array.from(n).reverse();
1060
+ for (const i of r)
1061
+ if (i.component)
1062
+ return i.component;
1063
+ return t;
1064
+ }
1065
+ const De = Rn(Ln, (e) => ({
1066
+ activator: "parent",
1067
+ location: e.arg?.replace("-", " ") ?? "top",
1068
+ text: typeof e.value == "boolean" ? void 0 : e.value
1069
+ })), Dn = {
1070
+ class: "flex rounded-lg border border-gray-300 dark:border-gray-600",
1071
+ style: { margin: "2px" }
1072
+ }, Vn = ["value"], $n = {
1073
+ __name: "EodashDatePicker",
1074
+ setup(e) {
1075
+ function t(o) {
1076
+ if (r.value && r.value.length > 0) {
1077
+ let l = o ? 1 / 0 : -1 / 0;
1078
+ r.value.forEach((c) => {
1079
+ c?.dates && c.dates.forEach((u) => {
1080
+ u instanceof Date && (!o && u.getTime() > l || o && u.getTime() < l) && (l = u.getTime());
1081
+ });
1082
+ }), l !== 0 && (i.value = new Date(l));
1083
+ }
1084
+ }
1085
+ const n = (
1086
+ /** @type {import("@/types").Eodash} */
1087
+ ge(_t)
1088
+ ), a = R({
1089
+ input: "YYYY-MM-DD"
1090
+ }), r = R([]), i = h({
1091
+ get() {
1092
+ return Z.value ? new Date(Z.value) : /* @__PURE__ */ new Date();
1093
+ },
1094
+ /** @param {Date | string} updatedDate */
1095
+ set(o) {
1096
+ o instanceof Date && !isNaN(o.getTime()) ? Z.value = new Date(
1097
+ o.getTime() - o.getTimezoneOffset() * 6e4
1098
+ ).toISOString() : Z.value = (/* @__PURE__ */ new Date()).toISOString();
1099
+ }
1100
+ });
1101
+ return Ie(() => {
1102
+ const { selectedStac: o } = Mt(Ft());
1103
+ B(
1104
+ [o],
1105
+ async ([l]) => {
1106
+ if (l) {
1107
+ const c = jt(
1108
+ `./${l.id}/collection.json`,
1109
+ n.stacEndpoint
1110
+ ), u = Wt(
1111
+ o.value,
1112
+ c
1113
+ ), d = [
1114
+ "#009E73",
1115
+ "#0072B2",
1116
+ "#E69F00",
1117
+ "#CC79A7",
1118
+ "#56B4E9",
1119
+ "#D55E00"
1120
+ ];
1121
+ for (let b = 0; b < u.length; b++) {
1122
+ const g = (await (await fetch(u[b])).json()).links.filter(
1123
+ (f) => f.rel === "item" && "datetime" in f
1124
+ ).map(
1125
+ (f) => new Date(f.datetime)
1126
+ );
1127
+ r.value = [
1128
+ {
1129
+ bar: {
1130
+ style: {
1131
+ backgroundColor: d[b % d.length]
1132
+ }
1133
+ },
1134
+ dates: g
1135
+ }
1136
+ ];
1137
+ }
1138
+ }
1139
+ },
1140
+ { immediate: !0 }
1141
+ );
1142
+ }), (o, l) => (re(), Dt(
1143
+ ze,
1144
+ null,
1145
+ [
1146
+ T(ie(Ht), {
1147
+ modelValue: i.value,
1148
+ "onUpdate:modelValue": l[0] || (l[0] = (c) => i.value = c),
1149
+ masks: a.value,
1150
+ attributes: r.value
1151
+ }, {
1152
+ default: X(({ inputValue: c, inputEvents: u }) => [
1153
+ ke("div", Dn, [
1154
+ ke("input", M({ value: c }, Nt(u, !0), {
1155
+ style: { margin: "1px" },
1156
+ class: "flex-grow px-1 py-1 bg-white dark:bg-gray-700"
1157
+ }), null, 16, Vn)
1158
+ ])
1159
+ ]),
1160
+ _: 1
1161
+ /* STABLE */
1162
+ }, 8, ["modelValue", "masks", "attributes"]),
1163
+ T(Vt, {
1164
+ align: "center",
1165
+ justify: "center",
1166
+ style: { "margin-top": "6px" }
1167
+ }, {
1168
+ default: X(() => [
1169
+ ue((re(), Oe(Pe, {
1170
+ style: { padding: "0px", "margin-right": "4px" },
1171
+ density: "compact",
1172
+ onClick: l[1] || (l[1] = (c) => t(!0))
1173
+ }, {
1174
+ default: X(() => [
1175
+ T(Ce, {
1176
+ icon: [ie(It)]
1177
+ }, null, 8, ["icon"])
1178
+ ]),
1179
+ _: 1
1180
+ /* STABLE */
1181
+ })), [
1182
+ [De, "Set date to oldest available dataset", "bottom"]
1183
+ ]),
1184
+ ue((re(), Oe(Pe, {
1185
+ style: { padding: "0px", "margin-left": "4px" },
1186
+ density: "compact",
1187
+ onClick: l[2] || (l[2] = (c) => t(!1))
1188
+ }, {
1189
+ default: X(() => [
1190
+ T(Ce, {
1191
+ icon: [ie($t)]
1192
+ }, null, 8, ["icon"])
1193
+ ]),
1194
+ _: 1
1195
+ /* STABLE */
1196
+ })), [
1197
+ [De, "Set date to latest available dataset", "bottom"]
1198
+ ])
1199
+ ]),
1200
+ _: 1
1201
+ /* STABLE */
1202
+ })
1203
+ ],
1204
+ 64
1205
+ /* STABLE_FRAGMENT */
1206
+ ));
1207
+ }
1208
+ };
1209
+ export {
1210
+ $n as default
1211
+ };