@svgrid/grid-wc 2.0.1 → 2.2.1

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
@@ -0,0 +1,2011 @@
1
+ import { A as e, B as t, C as n, D as r, E as i, F as a, G as o, J as s, K as c, L as l, O as u, P as d, Q as f, R as p, T as m, V as h, X as g, Y as _, Z as v, _ as y, a as b, b as x, c as S, d as C, et as w, j as T, k as E, l as D, m as ee, n as O, q as k, rt as A, s as j, tt as M, u as te, v as N, w as P, z as F } from "./client-DOa609yZ.js";
2
+ import { a as I, i as L, n as ne, r as R, t as z } from "./editor-contract-peBDxir_.js";
3
+ import { n as B, r as V, t as H } from "./popover-WsGlvtQv.js";
4
+ import { t as re } from "./dismissable-DvhBKm3q.js";
5
+ //#region ../grid/dist/datetime/date-core.js
6
+ function U(e) {
7
+ if (e == null) return null;
8
+ let t = e instanceof Date ? new Date(e.getTime()) : new Date(e);
9
+ return isNaN(t.getTime()) ? null : t;
10
+ }
11
+ function W(e) {
12
+ return new Date(e.getFullYear(), e.getMonth(), e.getDate());
13
+ }
14
+ function ie(e) {
15
+ return new Date(e.getFullYear(), e.getMonth(), 1);
16
+ }
17
+ function ae(e) {
18
+ return new Date(e.getFullYear(), e.getMonth() + 1, 0);
19
+ }
20
+ function G(e) {
21
+ return ae(e).getDate();
22
+ }
23
+ function oe(e, t = 0) {
24
+ let n = W(e), r = (n.getDay() - t + 7) % 7;
25
+ return n.setDate(n.getDate() - r), n;
26
+ }
27
+ function K(e, t) {
28
+ return !e || !t ? !1 : e.getFullYear() === t.getFullYear() && e.getMonth() === t.getMonth() && e.getDate() === t.getDate();
29
+ }
30
+ function se(e, t) {
31
+ return !e || !t ? !1 : e.getFullYear() === t.getFullYear() && e.getMonth() === t.getMonth();
32
+ }
33
+ function q(e, t) {
34
+ let n = W(e).getTime(), r = W(t).getTime();
35
+ return n < r ? -1 : +(n > r);
36
+ }
37
+ function J(e, t) {
38
+ let n = new Date(e.getTime());
39
+ return n.setDate(n.getDate() + t), n;
40
+ }
41
+ function ce(e, t) {
42
+ let n = e.getDate(), r = new Date(e.getFullYear(), e.getMonth() + t, 1, e.getHours(), e.getMinutes(), e.getSeconds(), e.getMilliseconds());
43
+ return r.setDate(Math.min(n, G(r))), r;
44
+ }
45
+ function le(e, t) {
46
+ return ce(e, t * 12);
47
+ }
48
+ function ue(e, t, n) {
49
+ return t && e.getTime() < t.getTime() ? new Date(t.getTime()) : n && e.getTime() > n.getTime() ? new Date(n.getTime()) : e;
50
+ }
51
+ function Y(e) {
52
+ let t = W(e), n = (t.getDay() + 6) % 7;
53
+ t.setDate(t.getDate() - n + 3);
54
+ let r = new Date(t.getFullYear(), 0, 4), i = (r.getDay() + 6) % 7;
55
+ r.setDate(r.getDate() - i + 3);
56
+ let a = t.getTime() - r.getTime();
57
+ return 1 + Math.round(a / (168 * 3600 * 1e3));
58
+ }
59
+ function de(e) {
60
+ let t = Math.floor(e / 10) * 10;
61
+ return {
62
+ start: t,
63
+ end: t + 9
64
+ };
65
+ }
66
+ function X(e, t = 0, n = 6) {
67
+ let r = ie(e), i = oe(r, t), a = [], o = i;
68
+ for (let e = 0; e < n; e++) {
69
+ let e = [], t = Y(o);
70
+ for (let n = 0; n < 7; n++) e.push({
71
+ date: o,
72
+ inMonth: o.getMonth() === r.getMonth() && o.getFullYear() === r.getFullYear(),
73
+ week: t
74
+ }), o = J(o, 1);
75
+ a.push(e);
76
+ }
77
+ return a;
78
+ }
79
+ function Z(e = 0) {
80
+ return Array.from({ length: 7 }, (t, n) => (e + n) % 7);
81
+ }
82
+ function fe(e, t) {
83
+ return new Date(e.getFullYear(), e.getMonth(), e.getDate(), t.getHours(), t.getMinutes(), t.getSeconds(), t.getMilliseconds());
84
+ }
85
+ //#endregion
86
+ //#region ../grid/dist/recurrence.js
87
+ var pe = 864e5, Q = (e) => Math.round(W(e).getTime() / pe), me = (e) => new Date(e.getFullYear(), e.getMonth() + 1, 0).getDate();
88
+ function he(e, t) {
89
+ return t === -1 ? e.getDate() + 7 > me(e) : Math.floor((e.getDate() - 1) / 7) + 1 === t;
90
+ }
91
+ function ge(e, t) {
92
+ let n = t.count && t.count >= 1 && t.from != null ? ve(t) : t, r = W(e), i = n.from == null ? null : W(U(n.from) ?? r), a = n.until == null ? null : W(U(n.until) ?? r);
93
+ if (i && r < i || a && r > a) return !1;
94
+ let o = Math.max(1, Math.floor(n.interval ?? 1));
95
+ switch (n.freq) {
96
+ case "daily": return i ? (Q(r) - Q(i)) % o === 0 : !0;
97
+ case "weekly": {
98
+ let e = n.weekdays && n.weekdays.length ? n.weekdays : i ? [i.getDay()] : null;
99
+ return !(!e || !e.includes(r.getDay()) || o > 1 && i && Math.round((oe(r, 0).getTime() - oe(i, 0).getTime()) / (pe * 7)) % o !== 0);
100
+ }
101
+ case "monthly": return _e(r, n) ? i ? ((r.getFullYear() - i.getFullYear()) * 12 + (r.getMonth() - i.getMonth())) % o === 0 : !0 : !1;
102
+ case "yearly": return n.month != null && r.getMonth() !== n.month || !_e(r, n) ? !1 : i ? (r.getFullYear() - i.getFullYear()) % o === 0 : n.month != null || n.day != null || n.weekOfMonth != null;
103
+ }
104
+ }
105
+ function _e(e, t) {
106
+ if (t.weekOfMonth != null && t.weekdays && t.weekdays.length) return t.weekdays.includes(e.getDay()) && he(e, t.weekOfMonth);
107
+ let n = t.from == null ? null : (U(t.from) ?? e).getDate(), r = t.day ?? n;
108
+ if (r == null) return !1;
109
+ let i = r < 0 ? me(e) + r + 1 : r;
110
+ return e.getDate() === i;
111
+ }
112
+ function ve(e) {
113
+ let t = U(e.from);
114
+ if (!t) return {
115
+ ...e,
116
+ count: void 0
117
+ };
118
+ let n = {
119
+ ...e,
120
+ count: void 0
121
+ }, r = W(t), i = 0, a = r, o = 0;
122
+ for (; o++ < 4e3 * 12 && !(ge(r, n) && (i++, a = r, i >= e.count));) r = new Date(r.getFullYear(), r.getMonth(), r.getDate() + 1);
123
+ let s = a, c = e.until == null ? null : W(U(e.until) ?? s), l = c && c < s ? c : s;
124
+ return {
125
+ ...n,
126
+ until: l
127
+ };
128
+ }
129
+ function ye(e, t) {
130
+ return t ? (Array.isArray(t) ? t : [t]).some((t) => ge(e, t)) : !1;
131
+ }
132
+ //#endregion
133
+ //#region ../grid/dist/SvField.svelte
134
+ var be = e("<span class=\"sv-field__req svelte-xtfnp5\" aria-hidden=\"true\">*</span>"), xe = e("<label class=\"sv-field__label svelte-xtfnp5\"> <!></label>"), Se = e("<span class=\"sv-field__spinner svelte-xtfnp5\" role=\"status\" aria-label=\"Loading\"></span>"), Ce = e("<span class=\"sv-field__labelrow svelte-xtfnp5\"><!> <!></span>"), we = e("<span class=\"sv-field__req svelte-xtfnp5\" aria-hidden=\"true\">*</span>"), Te = e("<label class=\"sv-field__float-label svelte-xtfnp5\"> <!></label>"), Ee = e("<span class=\"sv-field__adorn sv-field__adorn--lead svelte-xtfnp5\"><!></span>"), De = e("<span class=\"sv-field__affix sv-field__affix--pre svelte-xtfnp5\"> </span>"), Oe = e("<span class=\"sv-field__affix sv-field__affix--suf svelte-xtfnp5\"> </span>"), ke = e("<span class=\"sv-field__adorn sv-field__adorn--trail svelte-xtfnp5\"><!></span>"), Ae = e("<span class=\"sv-field__action-txt svelte-xtfnp5\"> </span>"), je = e("<button class=\"sv-field__action svelte-xtfnp5\" type=\"button\" tabindex=\"-1\"><!></button>"), Me = e("<button class=\"sv-field__clear svelte-xtfnp5\" type=\"button\" tabindex=\"-1\">&times;</button>"), Ne = e("<div><!> <!> <!> <span class=\"sv-field__slot svelte-xtfnp5\"><!></span> <!> <!> <!> <!></div>"), Pe = e("<span class=\"sv-field__error svelte-xtfnp5\" role=\"alert\"> </span>"), Fe = e("<span class=\"sv-field__hint svelte-xtfnp5\"> </span>"), Ie = e("<div><!> <!> <!></div>");
135
+ function Le(e, s) {
136
+ M(s, !0);
137
+ let d = O(s, "required", 3, !1), p = O(s, "block", 3, !1), h = O(s, "loading", 3, !1), g = O(s, "frame", 3, !1), _ = O(s, "invalid", 3, !1), v = O(s, "size", 3, "md"), b = O(s, "disabled", 3, !1), x = O(s, "readonly", 3, !1), S = O(s, "clearable", 3, !1), T = O(s, "showClear", 3, !1), D = O(s, "clearLabel", 3, "Clear"), ee = O(s, "labelMode", 3, "static"), j = O(s, "filled", 3, !1), te = f(() => s.width == null ? void 0 : typeof s.width == "number" ? `${s.width}px` : s.width), P = f(() => ee() === "floating" && g() && !!s.label), F = f(() => s.dir === "ltr" || s.dir === "rtl" ? s.dir : void 0);
138
+ var I = Ie();
139
+ let L;
140
+ var z = o(I), B = (e) => {
141
+ var n = Ce(), i = o(n), a = (e) => {
142
+ var n = xe(), i = o(n, !0), a = k(i), c = (e) => {
143
+ u(e, be());
144
+ };
145
+ m(a, (e) => {
146
+ d() && e(c);
147
+ }), A(n), t(() => {
148
+ C(n, "for", s.id), r(i, s.label);
149
+ }), u(e, n);
150
+ };
151
+ m(i, (e) => {
152
+ s.label && !l(P) && e(a);
153
+ });
154
+ var c = k(i, 2), f = (e) => {
155
+ u(e, Se());
156
+ };
157
+ m(c, (e) => {
158
+ h() && e(f);
159
+ }), A(n), u(e, n);
160
+ };
161
+ m(z, (e) => {
162
+ (s.label && !l(P) || h()) && e(B);
163
+ });
164
+ var V = k(z, 2), H = (e) => {
165
+ var f = Ne();
166
+ let h, g;
167
+ var w = o(f), ee = (e) => {
168
+ var n = Te(), i = o(n, !0), a = k(i), c = (e) => {
169
+ u(e, we());
170
+ };
171
+ m(a, (e) => {
172
+ d() && e(c);
173
+ }), A(n), t(() => {
174
+ C(n, "for", s.id), r(i, s.label);
175
+ }), u(e, n);
176
+ };
177
+ m(w, (e) => {
178
+ l(P) && e(ee);
179
+ });
180
+ var O = k(w, 2), M = (e) => {
181
+ var t = Ee();
182
+ i(o(t), () => s.leading), A(t), u(e, t);
183
+ };
184
+ m(O, (e) => {
185
+ s.leading && e(M);
186
+ });
187
+ var F = k(O, 2), I = (e) => {
188
+ var n = De(), i = o(n, !0);
189
+ A(n), t(() => r(i, s.prefix)), u(e, n);
190
+ };
191
+ m(F, (e) => {
192
+ s.prefix && e(I);
193
+ });
194
+ var L = k(F, 2);
195
+ i(o(L), () => s.children), A(L);
196
+ var ne = k(L, 2), R = (e) => {
197
+ var n = Oe(), i = o(n, !0);
198
+ A(n), t(() => r(i, s.suffix)), u(e, n);
199
+ };
200
+ m(ne, (e) => {
201
+ s.suffix && e(R);
202
+ });
203
+ var z = k(ne, 2), B = (e) => {
204
+ var t = ke();
205
+ i(o(t), () => s.trailing), A(t), u(e, t);
206
+ };
207
+ m(z, (e) => {
208
+ s.trailing && e(B);
209
+ });
210
+ var V = k(z, 2), H = (e) => {
211
+ var d = E();
212
+ n(c(d), 17, () => s.actions, (e) => e.label, (e, n) => {
213
+ var s = je(), d = o(s), f = (e) => {
214
+ var t = E();
215
+ i(c(t), () => l(n).icon), u(e, t);
216
+ }, p = (e) => {
217
+ var i = Ae(), a = o(i, !0);
218
+ A(i), t(() => r(a, l(n).label)), u(e, i);
219
+ };
220
+ m(d, (e) => {
221
+ l(n).icon ? e(f) : e(p, -1);
222
+ }), A(s), t(() => {
223
+ C(s, "aria-label", l(n).label), C(s, "title", l(n).label), s.disabled = b() || l(n).disabled;
224
+ }), a("click", s, () => l(n).onClick()), u(e, s);
225
+ }), u(e, d);
226
+ };
227
+ m(V, (e) => {
228
+ s.actions?.length && e(H);
229
+ });
230
+ var re = k(V, 2), U = (e) => {
231
+ var n = Me();
232
+ t(() => C(n, "aria-label", D())), a("click", n, () => s.onclear?.()), u(e, n);
233
+ };
234
+ m(re, (e) => {
235
+ S() && T() && !b() && !x() && e(U);
236
+ }), A(f), t(() => {
237
+ h = N(f, 1, `sv-field__control sv-field--${v() ?? ""}`, "svelte-xtfnp5", h, {
238
+ "is-invalid": _(),
239
+ "is-disabled": b(),
240
+ "is-readonly": x(),
241
+ "is-filled": j()
242
+ }), g = y(f, "", g, { width: p() ? void 0 : l(te) });
243
+ }), u(e, f);
244
+ }, re = (e) => {
245
+ var t = E();
246
+ i(c(t), () => s.children), u(e, t);
247
+ };
248
+ m(V, (e) => {
249
+ g() ? e(H) : e(re, -1);
250
+ });
251
+ var U = k(V, 2), W = (e) => {
252
+ var n = Pe(), i = o(n, !0);
253
+ A(n), t((e) => {
254
+ C(n, "id", e), r(i, s.error);
255
+ }, [() => ne(s.id)]), u(e, n);
256
+ }, ie = (e) => {
257
+ var n = Fe(), i = o(n, !0);
258
+ A(n), t((e) => {
259
+ C(n, "id", e), r(i, s.hint);
260
+ }, [() => R(s.id)]), u(e, n);
261
+ };
262
+ m(U, (e) => {
263
+ s.error ? e(W) : s.hint && e(ie, 1);
264
+ }), A(I), t(() => {
265
+ L = N(I, 1, "sv-field svelte-xtfnp5", null, L, {
266
+ "sv-field--block": p(),
267
+ "sv-field--floating": l(P)
268
+ }), C(I, "dir", l(F)), I.dir = I.dir;
269
+ }), u(e, I), w();
270
+ }
271
+ d(["click"]);
272
+ //#endregion
273
+ //#region ../grid/dist/datetime/date-selection.js
274
+ var Re = () => ({
275
+ dates: [],
276
+ anchor: null,
277
+ rangeStart: null
278
+ });
279
+ function ze(e, t) {
280
+ return e.some((e) => K(e, t));
281
+ }
282
+ function Be(e, t) {
283
+ let n = q(e, t) <= 0 ? W(e) : W(t), r = q(e, t) <= 0 ? W(t) : W(e), i = [], a = n;
284
+ for (; q(a, r) <= 0;) i.push(a), a = J(a, 1);
285
+ return i;
286
+ }
287
+ function Ve(e) {
288
+ let t = [];
289
+ for (let n of e) t.some((e) => K(e, n)) || t.push(W(n));
290
+ return t.sort((e, t) => e.getTime() - t.getTime()), t;
291
+ }
292
+ function He(e, t) {
293
+ return ze(e, t) ? e.filter((e) => !K(e, t)) : [...e, W(t)];
294
+ }
295
+ function Ue(e, t, n, r = {}, i = 0) {
296
+ let a = W(t), o = () => ({
297
+ dates: [a],
298
+ anchor: a,
299
+ rangeStart: null
300
+ });
301
+ switch (n) {
302
+ case "none": return { ...e };
303
+ case "default":
304
+ case "one": return o();
305
+ case "zeroOrOne": return ze(e.dates, a) && e.dates.length === 1 ? Re() : o();
306
+ case "many":
307
+ case "zeroOrMany": return {
308
+ dates: Ve(He(e.dates, a)),
309
+ anchor: a,
310
+ rangeStart: null
311
+ };
312
+ case "oneOrMany": {
313
+ let t = He(e.dates, a);
314
+ return {
315
+ dates: Ve(t.length === 0 ? [a] : t),
316
+ anchor: a,
317
+ rangeStart: null
318
+ };
319
+ }
320
+ case "oneExtended": return r.shift && e.anchor ? {
321
+ dates: Be(e.anchor, a),
322
+ anchor: e.anchor,
323
+ rangeStart: null
324
+ } : r.ctrl ? {
325
+ dates: Ve(He(e.dates, a)),
326
+ anchor: a,
327
+ rangeStart: null
328
+ } : o();
329
+ case "week": {
330
+ let e = oe(a, i);
331
+ return {
332
+ dates: Array.from({ length: 7 }, (t, n) => J(e, n)),
333
+ anchor: e,
334
+ rangeStart: null
335
+ };
336
+ }
337
+ case "range": return e.rangeStart ? {
338
+ dates: Be(e.rangeStart, a),
339
+ anchor: e.rangeStart,
340
+ rangeStart: null
341
+ } : {
342
+ dates: [a],
343
+ anchor: a,
344
+ rangeStart: a
345
+ };
346
+ default: return o();
347
+ }
348
+ }
349
+ //#endregion
350
+ //#region ../grid/dist/datetime/date-restrict.js
351
+ function We(e) {
352
+ if (!e) return [];
353
+ let t = [];
354
+ for (let n of e) {
355
+ let e = U(n);
356
+ e && t.push(e);
357
+ }
358
+ return t;
359
+ }
360
+ function Ge(e, t, n) {
361
+ let r = U(t ?? null), i = U(n ?? null);
362
+ return !!(r && q(e, r) < 0 || i && q(e, i) > 0);
363
+ }
364
+ function Ke(e, t) {
365
+ return t ? typeof t == "function" ? t(e) : We(t).some((t) => K(t, e)) : !1;
366
+ }
367
+ function qe(e, t) {
368
+ return Ge(e, t.min, t.max) || Ke(e, t.restrictedDates);
369
+ }
370
+ function Je(e, t) {
371
+ return t ? typeof t == "function" ? t(e) : We(t).some((t) => K(t, e)) : !1;
372
+ }
373
+ //#endregion
374
+ //#region ../grid/dist/createCalendar.svelte.js
375
+ var Ye = () => typeof navigator < "u" ? navigator.language : "en-US";
376
+ function Xe(e) {
377
+ if (e == null) return [];
378
+ let t = Array.isArray(e) ? e : [e], n = [];
379
+ for (let e of t) {
380
+ let t = U(e);
381
+ t && n.push(W(t));
382
+ }
383
+ return n;
384
+ }
385
+ function Ze(e) {
386
+ let t = () => e.selectionMode?.() ?? "one", n = () => e.firstDayOfWeek?.() ?? 0, r = () => e.weeks?.() ?? 6, i = () => Math.max(1, e.months?.() ?? 1), a = () => e.displayMode?.() ?? "month", o = () => e.disabled?.() ?? !1, c = () => e.readonly?.() ?? !1, u = () => e.locale?.() ?? Ye(), d = () => e.dayNameFormat?.() ?? "short", p = () => e.monthNameFormat?.() ?? "long", m = g(s(Re())), y = g(s(W(/* @__PURE__ */ new Date()))), b = g("month"), x = g(s(W(/* @__PURE__ */ new Date()))), S = g(null), C = "fade", w = g(0), T = f(() => ({
387
+ min: e.min?.() ?? null,
388
+ max: e.max?.() ?? null,
389
+ restrictedDates: e.restrictedDates?.() ?? null
390
+ })), E = f(() => !o() && !c()), D = "￿", ee = !1;
391
+ h(() => {
392
+ let t = Xe(e.value()), n = t.map((e) => e.getTime()).join(",");
393
+ if (n !== D && (D = n, _(m, {
394
+ dates: t,
395
+ anchor: t[t.length - 1] ?? null,
396
+ rangeStart: null
397
+ }, !0), !ee)) {
398
+ ee = !0;
399
+ let e = t[0] ?? W(/* @__PURE__ */ new Date());
400
+ _(y, W(e), !0), _(x, W(e), !0), _(b, a(), !0);
401
+ }
402
+ });
403
+ let O = f(() => new Intl.DateTimeFormat(u(), { weekday: d() })), k = f(() => new Intl.DateTimeFormat(u(), {
404
+ month: p(),
405
+ year: "numeric"
406
+ })), A = f(() => new Intl.DateTimeFormat(u(), { month: "short" })), j = f(() => new Intl.DateTimeFormat(u(), {
407
+ weekday: "long",
408
+ year: "numeric",
409
+ month: "long",
410
+ day: "numeric"
411
+ })), M = f(() => Z(n()).map((e) => {
412
+ let t = new Date(2021, 7, 1 + e);
413
+ return {
414
+ label: l(O).format(t),
415
+ weekday: e
416
+ };
417
+ })), te = f(() => Array.from({ length: i() }, (e, t) => {
418
+ let i = ce(l(y), t);
419
+ return {
420
+ month: i,
421
+ title: l(k).format(i),
422
+ matrix: X(i, n(), r())
423
+ };
424
+ })), N = f(() => {
425
+ if (t() !== "range") return null;
426
+ let e = l(m).rangeStart;
427
+ return !e || !l(S) ? null : Be(e, l(S));
428
+ }), P = (e) => !!l(N) && l(N).some((t) => K(t, e));
429
+ function F(t, n) {
430
+ return {
431
+ disabled: qe(t, l(T)),
432
+ selected: ze(l(m).dates, t),
433
+ important: Je(t, e.importantDates?.() ?? null),
434
+ today: K(t, /* @__PURE__ */ new Date()),
435
+ outside: !se(t, n),
436
+ focused: K(t, l(x)),
437
+ preview: P(t),
438
+ recurring: ye(t, e.recurrence?.() ?? null)
439
+ };
440
+ }
441
+ let I = f(() => l(b) === "month" ? l(k).format(l(y)) : l(b) === "year" ? String(l(y).getFullYear()) : (() => {
442
+ let { start: e, end: t } = de(l(y).getFullYear());
443
+ return `${e} - ${t}`;
444
+ })()), L = f(() => Array.from({ length: 12 }, (e, t) => ({
445
+ index: t,
446
+ label: l(A).format(new Date(l(y).getFullYear(), t, 1)),
447
+ current: t === (/* @__PURE__ */ new Date()).getMonth() && l(y).getFullYear() === (/* @__PURE__ */ new Date()).getFullYear(),
448
+ selected: l(m).dates.some((e) => e.getMonth() === t && e.getFullYear() === l(y).getFullYear())
449
+ }))), ne = f(() => {
450
+ let { start: e } = de(l(y).getFullYear());
451
+ return Array.from({ length: 12 }, (t, n) => {
452
+ let r = e - 1 + n;
453
+ return {
454
+ year: r,
455
+ outside: n === 0 || n === 11,
456
+ current: r === (/* @__PURE__ */ new Date()).getFullYear(),
457
+ selected: l(m).dates.some((e) => e.getFullYear() === r)
458
+ };
459
+ });
460
+ }), R = f(() => t() === "zeroOrOne" || t() === "zeroOrMany" || t() === "none");
461
+ function z(t) {
462
+ _(m, t, !0), D = t.dates.map((e) => e.getTime()).join(","), e.onChange?.(t.dates.map((e) => new Date(e.getTime())));
463
+ }
464
+ function B(e, r) {
465
+ !l(E) || qe(e, l(T)) || (_(x, W(e), !0), z(Ue(l(m), e, t(), {
466
+ ctrl: r?.ctrlKey || r?.metaKey,
467
+ shift: r?.shiftKey
468
+ }, n())));
469
+ }
470
+ function V(t, n = l(b)) {
471
+ _(y, W(t), !0), _(b, n, !0), v(w), e.onNavigate?.(l(y), l(b));
472
+ }
473
+ function H() {
474
+ C = "drillUp", l(b) === "month" ? V(l(y), "year") : l(b) === "year" && V(l(y), "decade");
475
+ }
476
+ function re(e) {
477
+ C = e === 1 ? "next" : "prev", l(b) === "month" ? V(ce(l(y), e)) : l(b) === "year" ? V(le(l(y), e)) : V(le(l(y), e * 10));
478
+ }
479
+ function ie(e) {
480
+ C = "drillDown", V(new Date(l(y).getFullYear(), e, 1), "month"), _(x, new Date(l(y).getFullYear(), e, Math.min(l(x).getDate(), 28)), !0);
481
+ }
482
+ function ae(e) {
483
+ C = "drillDown", V(new Date(e, l(y).getMonth(), 1), "year");
484
+ }
485
+ function G() {
486
+ C = "fade";
487
+ let e = /* @__PURE__ */ new Date();
488
+ V(e, "month"), _(x, W(e), !0), l(E) && B(e);
489
+ }
490
+ let oe = (e) => new Date(e.getFullYear(), e.getMonth(), 1);
491
+ function q(e) {
492
+ if (!l(E)) return;
493
+ let t = typeof e.value == "function" ? e.value() : e.value, n = Array.isArray(t), r = n ? t : [t, t], i = U(r[0]), a = U(r[1]);
494
+ i && (_(x, W(i), !0), C = "fade", _(y, oe(i), !0), v(w), z(n && a ? {
495
+ dates: Be(i, a),
496
+ anchor: W(a),
497
+ rangeStart: null
498
+ } : {
499
+ dates: [W(i)],
500
+ anchor: W(i),
501
+ rangeStart: null
502
+ }));
503
+ }
504
+ function ue() {
505
+ l(E) && z(Re());
506
+ }
507
+ let Y = (e) => _(S, e, !0);
508
+ function fe(e) {
509
+ (e.key === "Enter" || e.key === " ") && (e.preventDefault(), l(b) === "year" ? ie(l(x).getMonth()) : ae(l(x).getFullYear()));
510
+ }
511
+ function pe(e) {
512
+ if (l(b) !== "month") return fe(e);
513
+ let t = null;
514
+ switch (e.key) {
515
+ case "ArrowLeft":
516
+ t = J(l(x), -1);
517
+ break;
518
+ case "ArrowRight":
519
+ t = J(l(x), 1);
520
+ break;
521
+ case "ArrowUp":
522
+ t = J(l(x), -7);
523
+ break;
524
+ case "ArrowDown":
525
+ t = J(l(x), 7);
526
+ break;
527
+ case "Home":
528
+ t = J(l(x), -((l(x).getDay() - n() + 7) % 7));
529
+ break;
530
+ case "End":
531
+ t = J(l(x), 6 - (l(x).getDay() - n() + 7) % 7);
532
+ break;
533
+ case "PageUp":
534
+ t = e.shiftKey ? le(l(x), -1) : ce(l(x), -1);
535
+ break;
536
+ case "PageDown":
537
+ t = e.shiftKey ? le(l(x), 1) : ce(l(x), 1);
538
+ break;
539
+ case "Enter":
540
+ case " ":
541
+ e.preventDefault(), B(l(x), e);
542
+ return;
543
+ default: return;
544
+ }
545
+ t && (e.preventDefault(), _(x, W(t), !0), se(l(x), l(y)) || V(l(x), "month"));
546
+ }
547
+ return {
548
+ get view() {
549
+ return l(y);
550
+ },
551
+ get mode() {
552
+ return l(b);
553
+ },
554
+ get title() {
555
+ return l(I);
556
+ },
557
+ get panels() {
558
+ return l(te);
559
+ },
560
+ get weekdayHeaders() {
561
+ return l(M);
562
+ },
563
+ get yearCells() {
564
+ return l(L);
565
+ },
566
+ get decadeCells() {
567
+ return l(ne);
568
+ },
569
+ get selectedDates() {
570
+ return l(m).dates;
571
+ },
572
+ get previewRange() {
573
+ return l(N);
574
+ },
575
+ get focusDate() {
576
+ return l(x);
577
+ },
578
+ get hoverDate() {
579
+ return l(S);
580
+ },
581
+ get canClear() {
582
+ return l(R);
583
+ },
584
+ get isInteractive() {
585
+ return l(E);
586
+ },
587
+ get navToken() {
588
+ return l(w);
589
+ },
590
+ get navDir() {
591
+ return C;
592
+ },
593
+ dayState: F,
594
+ inPreview: P,
595
+ formatFullDate: (e) => l(j).format(e),
596
+ formatMonthTitle: (e) => l(k).format(e),
597
+ pickDay: B,
598
+ step: re,
599
+ drillUp: H,
600
+ pickMonth: ie,
601
+ pickYear: ae,
602
+ goToday: G,
603
+ applyPreset: q,
604
+ clearSelection: ue,
605
+ setHover: Y,
606
+ onKeydown: pe,
607
+ navProps(e) {
608
+ return {
609
+ type: "button",
610
+ disabled: o(),
611
+ "aria-label": e === 1 ? "Next" : "Previous",
612
+ onclick: () => re(e)
613
+ };
614
+ },
615
+ titleProps() {
616
+ return {
617
+ type: "button",
618
+ disabled: o() || l(b) === "decade",
619
+ "aria-live": "polite",
620
+ onclick: H
621
+ };
622
+ },
623
+ gridProps() {
624
+ return {
625
+ role: "grid",
626
+ "aria-label": l(I),
627
+ tabindex: -1,
628
+ onkeydown: pe
629
+ };
630
+ },
631
+ dayProps(t, n) {
632
+ let r = F(t.date, n);
633
+ return {
634
+ type: "button",
635
+ role: "gridcell",
636
+ "aria-selected": r.selected,
637
+ "aria-disabled": r.disabled,
638
+ "aria-current": r.today ? "date" : void 0,
639
+ "aria-label": l(j).format(t.date),
640
+ title: e.dateTooltip?.()?.(t.date) ?? void 0,
641
+ tabindex: r.focused ? 0 : -1,
642
+ disabled: r.disabled || o(),
643
+ onclick: (e) => B(t.date, e),
644
+ onpointerenter: () => Y(t.date),
645
+ onpointerleave: () => Y(null)
646
+ };
647
+ },
648
+ monthCellProps(e) {
649
+ return {
650
+ type: "button",
651
+ disabled: o(),
652
+ onclick: () => ie(e)
653
+ };
654
+ },
655
+ yearCellProps(e) {
656
+ return {
657
+ type: "button",
658
+ disabled: o(),
659
+ onclick: () => ae(e)
660
+ };
661
+ },
662
+ presetProps(e) {
663
+ return {
664
+ type: "button",
665
+ disabled: !l(E),
666
+ onclick: () => q(e)
667
+ };
668
+ }
669
+ };
670
+ }
671
+ //#endregion
672
+ //#region ../grid/dist/SvCalendar.svelte
673
+ var Qe = e("<button> </button>"), $e = e("<div class=\"sv-cal__presets svelte-y9pep3\" role=\"group\"></div>"), et = e("<div class=\"sv-cal__panel-title svelte-y9pep3\"> </div>"), tt = e("<span class=\"sv-cal__wk-head svelte-y9pep3\" aria-hidden=\"true\">#</span>"), nt = e("<span class=\"sv-cal__weekday svelte-y9pep3\" role=\"columnheader\"> </span>"), rt = e("<div class=\"sv-cal__weekdays svelte-y9pep3\" role=\"row\"><!> <!></div>"), it = e("<span class=\"sv-cal__wk svelte-y9pep3\" aria-hidden=\"true\"> </span>"), at = e("<span class=\"sv-cal__day sv-cal__day--empty svelte-y9pep3\" role=\"gridcell\" aria-hidden=\"true\"></span>"), ot = e("<span class=\"sv-cal__daybody svelte-y9pep3\"><!></span>"), st = e("<button><span class=\"sv-cal__daynum svelte-y9pep3\"> </span><!></button>"), ct = e("<div class=\"sv-cal__week svelte-y9pep3\" role=\"row\"><!> <!></div>"), lt = e("<div class=\"sv-cal__panel\"><!> <!> <!></div>"), ut = e("<div></div>"), dt = e("<button> </button>"), ft = e("<div></div>"), pt = e("<button> </button>"), mt = e("<div></div>"), ht = e("<button type=\"button\" class=\"sv-cal__foot-btn svelte-y9pep3\"> </button>"), gt = e("<div class=\"sv-cal__footer svelte-y9pep3\"><button type=\"button\" class=\"sv-cal__foot-btn svelte-y9pep3\"> </button> <!></div>"), _t = e("<input type=\"hidden\"/>"), vt = e("<div role=\"group\"><!> <div class=\"sv-cal__main svelte-y9pep3\"><div class=\"sv-cal__header svelte-y9pep3\"><button><svg viewBox=\"0 0 24 24\" width=\"16\" height=\"16\" fill=\"none\" stroke=\"currentColor\" stroke-width=\"2\" stroke-linecap=\"round\" stroke-linejoin=\"round\" class=\"svelte-y9pep3\"><path d=\"M15 18l-6-6 6-6\"></path></svg></button> <button> </button> <button><svg viewBox=\"0 0 24 24\" width=\"16\" height=\"16\" fill=\"none\" stroke=\"currentColor\" stroke-width=\"2\" stroke-linecap=\"round\" stroke-linejoin=\"round\" class=\"svelte-y9pep3\"><path d=\"M9 18l6-6-6-6\"></path></svg></button></div> <div class=\"sv-cal__view svelte-y9pep3\"><!></div> <!></div> <!></div>");
674
+ function yt(e, s) {
675
+ M(s, !0);
676
+ let d = (e) => {
677
+ var d = vt();
678
+ let p;
679
+ var h = o(d), g = (e) => {
680
+ var i = $e();
681
+ n(i, 21, () => s.presets, P, (e, n) => {
682
+ var i = Qe();
683
+ D(i, (e) => ({
684
+ class: "sv-cal__preset",
685
+ ...e
686
+ }), [() => Q.presetProps(l(n))], void 0, void 0, "svelte-y9pep3");
687
+ var a = o(i, !0);
688
+ A(i), t(() => r(a, l(n).label)), u(e, i);
689
+ }), A(i), t(() => C(i, "aria-label", l(Z).shortcuts)), u(e, i);
690
+ };
691
+ m(h, (e) => {
692
+ s.presets && s.presets.length && e(g);
693
+ });
694
+ var v = k(h, 2), y = o(v), w = o(y);
695
+ D(w, (e) => ({
696
+ class: "sv-cal__nav",
697
+ ...e
698
+ }), [() => Q.navProps(-1)], void 0, void 0, "svelte-y9pep3");
699
+ var O = k(w, 2);
700
+ D(O, (e) => ({
701
+ class: "sv-cal__title",
702
+ ...e
703
+ }), [() => Q.titleProps()], void 0, void 0, "svelte-y9pep3");
704
+ var j = o(O, !0);
705
+ A(O), D(k(O, 2), (e) => ({
706
+ class: "sv-cal__nav",
707
+ ...e
708
+ }), [() => Q.navProps(1)], void 0, void 0, "svelte-y9pep3"), A(y);
709
+ var M = k(y, 2), F = o(M), I = (e) => {
710
+ var a = ut();
711
+ D(a, (e) => ({
712
+ class: "sv-cal__panels",
713
+ ...e
714
+ }), [() => Q.gridProps()], void 0, void 0, "svelte-y9pep3"), n(a, 21, () => Q.panels, (e) => e.month.getTime(), (e, a) => {
715
+ var d = lt(), p = o(d), h = (e) => {
716
+ var n = et(), i = o(n, !0);
717
+ A(n), t(() => r(i, l(a).title)), u(e, n);
718
+ };
719
+ m(p, (e) => {
720
+ H() > 1 && e(h);
721
+ });
722
+ var g = k(p, 2), _ = (e) => {
723
+ var i = rt(), a = o(i), s = (e) => {
724
+ u(e, tt());
725
+ };
726
+ m(a, (e) => {
727
+ V() && e(s);
728
+ }), n(k(a, 2), 17, () => Q.weekdayHeaders, (e) => e.weekday, (e, n) => {
729
+ var i = nt(), a = o(i, !0);
730
+ A(i), t(() => r(a, l(n).label)), u(e, i);
731
+ }), A(i), u(e, i);
732
+ };
733
+ m(g, (e) => {
734
+ re() || e(_);
735
+ }), n(k(g, 2), 17, () => l(a).matrix, P, (e, d) => {
736
+ var p = ct(), h = o(p), g = (e) => {
737
+ var n = it(), i = o(n, !0);
738
+ A(n), t(() => r(i, l(d)[0]?.week)), u(e, n);
739
+ };
740
+ m(h, (e) => {
741
+ V() && e(g);
742
+ }), n(k(h, 2), 17, () => l(d), (e) => e.date.getTime(), (e, n) => {
743
+ let d = f(() => Q.dayState(l(n).date, l(a).month));
744
+ var p = E(), h = c(p), g = (e) => {
745
+ u(e, at());
746
+ }, _ = (e) => {
747
+ var c = st();
748
+ D(c, (e) => ({
749
+ class: "sv-cal__day",
750
+ ...e,
751
+ [S]: {
752
+ "is-selected": l(d).selected,
753
+ "is-today": l(d).today,
754
+ "is-outside": l(d).outside,
755
+ "is-important": l(d).important,
756
+ "is-preview": l(d).preview,
757
+ "is-focused": l(d).focused,
758
+ "is-recurring": l(d).recurring
759
+ }
760
+ }), [() => Q.dayProps(l(n), l(a).month)], void 0, void 0, "svelte-y9pep3");
761
+ var f = o(c), p = o(f, !0);
762
+ A(f);
763
+ var h = k(f), g = (e) => {
764
+ var t = ot();
765
+ i(o(t), () => s.day, () => l(n).date, () => l(d)), A(t), u(e, t);
766
+ };
767
+ m(h, (e) => {
768
+ s.day && e(g);
769
+ }), A(c), t((e) => r(p, e), [() => l(n).date.getDate()]), u(e, c);
770
+ };
771
+ m(h, (e) => {
772
+ l(d).outside && l(pe) ? e(g) : e(_, -1);
773
+ }), u(e, p);
774
+ }), A(p), u(e, p);
775
+ }), A(d), u(e, d);
776
+ }), A(a), u(e, a);
777
+ }, L = (e) => {
778
+ var i = ft();
779
+ D(i, (e) => ({
780
+ class: "sv-cal__grid-mode",
781
+ ...e
782
+ }), [() => Q.gridProps()], void 0, void 0, "svelte-y9pep3"), n(i, 21, () => Q.yearCells, (e) => e.index, (e, n) => {
783
+ var i = dt();
784
+ D(i, (e) => ({
785
+ class: "sv-cal__cell",
786
+ ...e,
787
+ [S]: {
788
+ "is-today": l(n).current,
789
+ "is-selected": l(n).selected
790
+ }
791
+ }), [() => Q.monthCellProps(l(n).index)], void 0, void 0, "svelte-y9pep3");
792
+ var a = o(i, !0);
793
+ A(i), t(() => r(a, l(n).label)), u(e, i);
794
+ }), A(i), u(e, i);
795
+ }, ne = (e) => {
796
+ var i = mt();
797
+ D(i, (e) => ({
798
+ class: "sv-cal__grid-mode",
799
+ ...e
800
+ }), [() => Q.gridProps()], void 0, void 0, "svelte-y9pep3"), n(i, 21, () => Q.decadeCells, (e) => e.year, (e, n) => {
801
+ var i = pt();
802
+ D(i, (e) => ({
803
+ class: "sv-cal__cell",
804
+ ...e,
805
+ [S]: {
806
+ "is-outside": l(n).outside,
807
+ "is-today": l(n).current,
808
+ "is-selected": l(n).selected
809
+ }
810
+ }), [() => Q.yearCellProps(l(n).year)], void 0, void 0, "svelte-y9pep3");
811
+ var a = o(i, !0);
812
+ A(i), t(() => r(a, l(n).year)), u(e, i);
813
+ }), A(i), u(e, i);
814
+ };
815
+ m(F, (e) => {
816
+ Q.mode === "month" ? e(I) : Q.mode === "year" ? e(L, 1) : e(ne, -1);
817
+ }), A(M), b(M, (e) => _(he, e), () => l(he));
818
+ var R = k(M, 2), z = (e) => {
819
+ var n = gt(), i = o(n), s = o(i, !0);
820
+ A(i);
821
+ var c = k(i, 2), d = (e) => {
822
+ var n = ht(), i = o(n, !0);
823
+ A(n), t(() => {
824
+ n.disabled = G(), r(i, l(Z).clear);
825
+ }), a("click", n, function(...e) {
826
+ Q.clearSelection?.apply(this, e);
827
+ }), u(e, n);
828
+ };
829
+ m(c, (e) => {
830
+ Q.canClear && e(d);
831
+ }), A(n), t(() => {
832
+ i.disabled = G(), r(s, l(Z).today);
833
+ }), a("click", i, function(...e) {
834
+ Q.goToday?.apply(this, e);
835
+ }), u(e, n);
836
+ };
837
+ m(R, (e) => {
838
+ ae() && e(z);
839
+ }), A(v), x(v, (e) => ve?.(e));
840
+ var B = k(v, 2), U = (e) => {
841
+ var n = _t();
842
+ te(n), t((e) => {
843
+ C(n, "name", s.name), ee(n, e);
844
+ }, [() => Q.selectedDates.map((e) => e.toISOString()).join(",")]), u(e, n);
845
+ };
846
+ m(B, (e) => {
847
+ s.name && e(U);
848
+ }), A(d), t(() => {
849
+ p = N(d, 1, "sv-cal svelte-y9pep3", null, p, {
850
+ "sv-cal--disabled": G(),
851
+ "sv-cal--invalid": ue(),
852
+ "sv-cal--with-presets": s.presets && s.presets.length,
853
+ "sv-cal--band": T() === "range" || T() === "week",
854
+ "sv-cal--rich": !!s.day
855
+ }), C(d, "id", l(de)), C(d, "aria-label", s.label ?? l(Z).label), C(d, "aria-disabled", G()), C(d, "dir", l(fe)), r(j, Q.title), d.dir = d.dir;
856
+ }), u(e, d);
857
+ }, v = {
858
+ label: "Calendar",
859
+ shortcuts: "Shortcuts",
860
+ today: "Today",
861
+ clear: "Clear",
862
+ prev: "Previous",
863
+ next: "Next"
864
+ }, y = O(s, "value", 3, null), T = O(s, "selectionMode", 3, "one"), j = O(s, "min", 3, null), F = O(s, "max", 3, null), ne = O(s, "restrictedDates", 3, null), R = O(s, "importantDates", 3, null), z = O(s, "firstDayOfWeek", 3, 0), B = O(s, "weeks", 3, 6), V = O(s, "weekNumbers", 3, !1), H = O(s, "months", 3, 1), re = O(s, "hideDayNames", 3, !1), U = O(s, "hideOtherMonthDays", 3, !1), W = O(s, "dayNameFormat", 3, "short"), ie = O(s, "monthNameFormat", 3, "long"), ae = O(s, "footer", 3, !1), G = O(s, "disabled", 3, !1), oe = O(s, "readonly", 3, !1), K = O(s, "locale", 19, () => typeof navigator < "u" ? navigator.language : "en-US"), se = O(s, "displayMode", 3, "month"), q = O(s, "animate", 3, !1), J = O(s, "wheelNavigation", 3, !1), ce = O(s, "recurrence", 3, null), le = O(s, "required", 3, !1), ue = O(s, "invalid", 3, !1), Y = L("sv-cal"), de = f(() => s.id ?? Y), X = f(() => !!(s.label || s.hint || s.error)), Z = f(() => I(v, s.messages)), fe = f(() => s.dir === "ltr" || s.dir === "rtl" ? s.dir : void 0), pe = f(() => U() || H() > 1), Q = Ze({
865
+ value: () => y(),
866
+ onChange: (e) => s.onChange?.(e),
867
+ onNavigate: (e, t) => s.onNavigate?.(e, t),
868
+ selectionMode: () => T(),
869
+ min: () => j(),
870
+ max: () => F(),
871
+ restrictedDates: () => ne(),
872
+ importantDates: () => R(),
873
+ firstDayOfWeek: () => z(),
874
+ weeks: () => B(),
875
+ months: () => H(),
876
+ displayMode: () => se(),
877
+ disabled: () => G(),
878
+ readonly: () => oe(),
879
+ locale: () => K(),
880
+ dayNameFormat: () => W(),
881
+ monthNameFormat: () => ie(),
882
+ dateTooltip: () => s.dateTooltip,
883
+ recurrence: () => ce()
884
+ }), me = f(() => q() === !0 ? "slide" : q() || "none"), he = g(void 0), ge = !1;
885
+ function _e() {
886
+ if (l(me) === "none" || !l(he) || typeof l(he).animate != "function") return;
887
+ let e = l(me) === "slide", t = Q.navDir, n = e ? t === "next" ? {
888
+ transform: "translateX(34px)",
889
+ opacity: 0
890
+ } : t === "prev" ? {
891
+ transform: "translateX(-34px)",
892
+ opacity: 0
893
+ } : t === "drillDown" ? {
894
+ transform: "scale(0.85)",
895
+ opacity: 0
896
+ } : t === "drillUp" ? {
897
+ transform: "scale(1.14)",
898
+ opacity: 0
899
+ } : { opacity: 0 } : {
900
+ opacity: 0,
901
+ transform: "scale(0.98)"
902
+ };
903
+ l(he).animate([n, {
904
+ transform: "none",
905
+ opacity: 1
906
+ }], {
907
+ duration: e && (t === "next" || t === "prev") ? 300 : 220,
908
+ easing: "cubic-bezier(0.16, 1, 0.3, 1)"
909
+ });
910
+ }
911
+ h(() => {
912
+ if (Q.navToken, !ge) {
913
+ ge = !0;
914
+ return;
915
+ }
916
+ p(_e);
917
+ });
918
+ function ve(e) {
919
+ let t = (e) => {
920
+ !J() || G() || (e.preventDefault(), Q.step(e.deltaY > 0 || e.deltaX > 0 ? 1 : -1));
921
+ };
922
+ return e.addEventListener("wheel", t, { passive: !1 }), { destroy: () => e.removeEventListener("wheel", t) };
923
+ }
924
+ var ye = E(), be = c(ye), xe = (e) => {
925
+ Le(e, {
926
+ get id() {
927
+ return l(de);
928
+ },
929
+ get label() {
930
+ return s.label;
931
+ },
932
+ get hint() {
933
+ return s.hint;
934
+ },
935
+ get error() {
936
+ return s.error;
937
+ },
938
+ get required() {
939
+ return le();
940
+ },
941
+ get dir() {
942
+ return s.dir;
943
+ },
944
+ children: (e, t) => {
945
+ d(e);
946
+ },
947
+ $$slots: { default: !0 }
948
+ });
949
+ }, Se = (e) => {
950
+ d(e);
951
+ };
952
+ m(be, (e) => {
953
+ l(X) ? e(xe) : e(Se, -1);
954
+ }), u(e, ye), w();
955
+ }
956
+ d(["click"]);
957
+ //#endregion
958
+ //#region ../grid/dist/createTimePicker.svelte.js
959
+ var bt = 240, xt = bt / 2, St = xt - 22, Ct = xt - 58;
960
+ function wt(e, t) {
961
+ let n = (e - 90) * Math.PI / 180;
962
+ return {
963
+ x: xt + t * Math.cos(n),
964
+ y: xt + t * Math.sin(n)
965
+ };
966
+ }
967
+ function Tt(e) {
968
+ if (e == null) {
969
+ let e = /* @__PURE__ */ new Date();
970
+ return {
971
+ h: e.getHours(),
972
+ m: e.getMinutes()
973
+ };
974
+ }
975
+ if (typeof e == "string") {
976
+ let t = e.match(/^(\d{1,2}):(\d{2})(?::(\d{2}))?/);
977
+ if (t) return {
978
+ h: Math.min(23, +t[1]),
979
+ m: Math.min(59, +t[2])
980
+ };
981
+ let n = new Date(e);
982
+ if (!isNaN(n.getTime())) return {
983
+ h: n.getHours(),
984
+ m: n.getMinutes()
985
+ };
986
+ let r = /* @__PURE__ */ new Date();
987
+ return {
988
+ h: r.getHours(),
989
+ m: r.getMinutes()
990
+ };
991
+ }
992
+ let t = new Date(e);
993
+ return {
994
+ h: t.getHours(),
995
+ m: t.getMinutes()
996
+ };
997
+ }
998
+ function Et(e) {
999
+ let t = () => e.format?.() ?? "24-hour", n = () => e.minuteInterval?.() ?? 1, r = () => e.autoSwitchToMinutes?.() ?? !0, i = () => e.disabled?.() ?? !1, a = () => e.readonly?.() ?? !1, o = f(() => t() === "12-hour"), s = f(() => !i() && !a()), c = g(0), u = g(0), d = g("hour"), p = !1, m = "￿";
1000
+ h(() => {
1001
+ let { h: t, m: n } = Tt(e.value()), r = `${t}:${n}`;
1002
+ r !== m && (m = r, _(c, t, !0), _(u, n, !0), p || (p = !0, _(d, e.selection?.() ?? "hour", !0)));
1003
+ });
1004
+ let v = f(() => l(o) ? l(c) % 12 == 0 ? 12 : l(c) % 12 : l(c)), y = f(() => l(c) >= 12), b = f(() => String(l(u)).padStart(2, "0")), x = f(() => {
1005
+ let e = [];
1006
+ if (l(o)) for (let t = 0; t < 12; t++) {
1007
+ let n = t === 0 ? 12 : t, r = wt(t * 30, St);
1008
+ e.push({
1009
+ label: String(n),
1010
+ x: r.x,
1011
+ y: r.y,
1012
+ value: n,
1013
+ ring: "outer"
1014
+ });
1015
+ }
1016
+ else for (let t = 0; t < 12; t++) {
1017
+ let n = wt(t * 30, St), r = wt(t * 30, Ct), i = t + 12, a = t;
1018
+ e.push({
1019
+ label: String(i).padStart(2, "0"),
1020
+ x: n.x,
1021
+ y: n.y,
1022
+ value: i,
1023
+ ring: "outer"
1024
+ }), e.push({
1025
+ label: a === 0 ? "00" : String(a).padStart(2, "0"),
1026
+ x: r.x,
1027
+ y: r.y,
1028
+ value: a,
1029
+ ring: "inner"
1030
+ });
1031
+ }
1032
+ return e;
1033
+ }), S = f(() => Array.from({ length: 12 }, (e, t) => {
1034
+ let n = t * 5, r = wt(t * 30, St);
1035
+ return {
1036
+ label: String(n).padStart(2, "0"),
1037
+ x: r.x,
1038
+ y: r.y,
1039
+ value: n,
1040
+ ring: "outer"
1041
+ };
1042
+ })), C = f(() => l(d) === "hour" ? l(o) ? l(v) % 12 * 30 : l(c) % 12 * 30 : l(u) * 6), w = f(() => l(d) === "hour" && !l(o) && l(c) % 12 === l(c) && l(c) < 12 ? Ct : St), T = f(() => wt(l(C), l(w)));
1043
+ function E() {
1044
+ let t = /* @__PURE__ */ new Date();
1045
+ t.setHours(l(c), l(u), 0, 0), e.onChange?.(t);
1046
+ }
1047
+ let D = (e) => {
1048
+ let t = Math.max(1, Math.floor(n()));
1049
+ return Math.round(e / t) * t % 60;
1050
+ };
1051
+ function ee(e) {
1052
+ _(d, e, !0);
1053
+ }
1054
+ function O(e) {
1055
+ _(u, D(e), !0), m = `${l(c)}:${l(u)}`, E();
1056
+ }
1057
+ function k(e) {
1058
+ e !== l(y) && (_(c, e ? l(c) % 12 + 12 : l(c) % 12, !0), m = `${l(c)}:${l(u)}`, E());
1059
+ }
1060
+ function A(e, t) {
1061
+ if (l(s)) if (l(d) === "hour") {
1062
+ let n = Math.round(e / 30) % 12;
1063
+ if (l(o)) {
1064
+ let e = (n === 0 ? 12 : n) % 12;
1065
+ _(c, l(y) ? e + 12 : e, !0);
1066
+ } else _(c, t < 160 / 2 ? n : n + 12, !0);
1067
+ m = `${l(c)}:${l(u)}`, E();
1068
+ } else O(Math.round(e / 6) % 60);
1069
+ }
1070
+ function j() {
1071
+ l(d) === "hour" && r() && _(d, "minute");
1072
+ }
1073
+ function M(e) {
1074
+ if (!l(s)) return;
1075
+ let t = l(d) === "minute" ? Math.max(1, Math.floor(n())) : 1;
1076
+ e.key === "ArrowUp" || e.key === "ArrowRight" ? (e.preventDefault(), l(d) === "hour" ? _(c, (l(c) + 1) % 24) : _(u, (l(u) + t) % 60), m = `${l(c)}:${l(u)}`, E()) : e.key === "ArrowDown" || e.key === "ArrowLeft" ? (e.preventDefault(), l(d) === "hour" ? _(c, (l(c) + 23) % 24) : _(u, (l(u) - t + 60) % 60), m = `${l(c)}:${l(u)}`, E()) : e.key === "Tab" && !e.shiftKey && l(d) === "hour" && _(d, "minute");
1077
+ }
1078
+ function te() {
1079
+ let e = /* @__PURE__ */ new Date();
1080
+ _(c, e.getHours(), !0), _(u, e.getMinutes(), !0), m = `${l(c)}:${l(u)}`, E();
1081
+ }
1082
+ function N(e) {
1083
+ return l(o) ? e.value === l(v) : e.value === l(c);
1084
+ }
1085
+ return {
1086
+ SIZE: bt,
1087
+ C: xt,
1088
+ get hours() {
1089
+ return l(c);
1090
+ },
1091
+ get minutes() {
1092
+ return l(u);
1093
+ },
1094
+ get selection() {
1095
+ return l(d);
1096
+ },
1097
+ get is12() {
1098
+ return l(o);
1099
+ },
1100
+ get isInteractive() {
1101
+ return l(s);
1102
+ },
1103
+ get displayHour() {
1104
+ return l(v);
1105
+ },
1106
+ get isPm() {
1107
+ return l(y);
1108
+ },
1109
+ get mm() {
1110
+ return l(b);
1111
+ },
1112
+ get hourTicks() {
1113
+ return l(x);
1114
+ },
1115
+ get minuteTicks() {
1116
+ return l(S);
1117
+ },
1118
+ get handEnd() {
1119
+ return l(T);
1120
+ },
1121
+ isActiveHour: N,
1122
+ setSelection: ee,
1123
+ setMinute: O,
1124
+ setAmPm: k,
1125
+ pointerSelect: A,
1126
+ endPointer: j,
1127
+ onKeydown: M,
1128
+ now: te,
1129
+ segProps(e) {
1130
+ return {
1131
+ type: "button",
1132
+ disabled: i(),
1133
+ onclick: () => ee(e)
1134
+ };
1135
+ },
1136
+ ampmProps(e) {
1137
+ return {
1138
+ type: "button",
1139
+ disabled: i(),
1140
+ onclick: () => k(e)
1141
+ };
1142
+ },
1143
+ dialProps() {
1144
+ return {
1145
+ role: "slider",
1146
+ tabindex: i() ? -1 : 0,
1147
+ "aria-label": l(d) === "hour" ? "Hour" : "Minute",
1148
+ "aria-valuenow": l(d) === "hour" ? l(c) : l(u),
1149
+ "aria-valuemin": 0,
1150
+ "aria-valuemax": l(d) === "hour" ? 23 : 59,
1151
+ onkeydown: M
1152
+ };
1153
+ },
1154
+ nowProps() {
1155
+ return {
1156
+ type: "button",
1157
+ disabled: i(),
1158
+ onclick: te
1159
+ };
1160
+ }
1161
+ };
1162
+ }
1163
+ //#endregion
1164
+ //#region ../grid/dist/SvTimePicker.svelte
1165
+ var Dt = e("<div class=\"sv-tp__ampm svelte-qdm31c\"><button> </button> <button> </button></div>"), Ot = T("<text dominant-baseline=\"central\" text-anchor=\"middle\"> </text>"), kt = T("<text dominant-baseline=\"central\" text-anchor=\"middle\"> </text>"), At = e("<div class=\"sv-tp__footer svelte-qdm31c\"><button> </button></div>"), jt = e("<input type=\"hidden\"/>"), Mt = e("<div role=\"group\"><div class=\"sv-tp__head svelte-qdm31c\"><button> </button> <span class=\"sv-tp__colon svelte-qdm31c\">:</span> <button> </button> <!></div> <svg><circle class=\"sv-tp__face svelte-qdm31c\"></circle><line class=\"sv-tp__hand svelte-qdm31c\"></line><circle class=\"sv-tp__hub svelte-qdm31c\" r=\"3\"></circle><circle class=\"sv-tp__knob svelte-qdm31c\" r=\"15\"></circle><!></svg> <!> <!></div>");
1166
+ function Nt(e, i) {
1167
+ M(i, !0);
1168
+ let a = (e) => {
1169
+ var a = Mt();
1170
+ let s;
1171
+ var d = o(a), f = o(d);
1172
+ D(f, (e) => ({
1173
+ class: "sv-tp__seg",
1174
+ ...e,
1175
+ [S]: { "is-active": B.selection === "hour" }
1176
+ }), [() => B.segProps("hour")], void 0, void 0, "svelte-qdm31c");
1177
+ var p = o(f, !0);
1178
+ A(f);
1179
+ var h = k(f, 4);
1180
+ D(h, (e) => ({
1181
+ class: "sv-tp__seg",
1182
+ ...e,
1183
+ [S]: { "is-active": B.selection === "minute" }
1184
+ }), [() => B.segProps("minute")], void 0, void 0, "svelte-qdm31c");
1185
+ var g = o(h, !0);
1186
+ A(h);
1187
+ var y = k(h, 2), x = (e) => {
1188
+ var n = Dt(), i = o(n);
1189
+ D(i, (e) => ({
1190
+ ...e,
1191
+ [S]: { "is-active": !B.isPm }
1192
+ }), [() => B.ampmProps(!1)], void 0, void 0, "svelte-qdm31c");
1193
+ var a = o(i, !0);
1194
+ A(i);
1195
+ var s = k(i, 2);
1196
+ D(s, (e) => ({
1197
+ ...e,
1198
+ [S]: { "is-active": B.isPm }
1199
+ }), [() => B.ampmProps(!0)], void 0, void 0, "svelte-qdm31c");
1200
+ var c = o(s, !0);
1201
+ A(s), A(n), t(() => {
1202
+ r(a, l(R).am), r(c, l(R).pm);
1203
+ }), u(e, n);
1204
+ };
1205
+ m(y, (e) => {
1206
+ B.is12 && e(x);
1207
+ }), A(d);
1208
+ var w = k(d, 2);
1209
+ D(w, (e) => ({
1210
+ class: "sv-tp__dial",
1211
+ viewBox: `0 0 ${B.SIZE} ${B.SIZE}`,
1212
+ width: "100%",
1213
+ ...e,
1214
+ onpointerdown: U,
1215
+ onpointermove: W,
1216
+ onpointerup: ie,
1217
+ onpointercancel: ie
1218
+ }), [() => B.dialProps()], void 0, void 0, "svelte-qdm31c");
1219
+ var T = o(w), O = k(T), M = k(O), P = k(M), I = k(P), L = (e) => {
1220
+ var i = E();
1221
+ n(c(i), 17, () => B.hourTicks, (e) => e.ring + "-" + e.value, (e, n) => {
1222
+ var i = Ot();
1223
+ let a;
1224
+ var s = o(i, !0);
1225
+ A(i), t((e) => {
1226
+ a = N(i, 0, "sv-tp__num svelte-qdm31c", null, a, e), C(i, "x", l(n).x), C(i, "y", l(n).y), r(s, l(n).label);
1227
+ }, [() => ({
1228
+ "is-active": B.isActiveHour(l(n)),
1229
+ "is-inner": l(n).ring === "inner"
1230
+ })]), u(e, i);
1231
+ }), u(e, i);
1232
+ }, ne = (e) => {
1233
+ var i = E();
1234
+ n(c(i), 17, () => B.minuteTicks, (e) => e.value, (e, n) => {
1235
+ var i = kt();
1236
+ let a;
1237
+ var s = o(i, !0);
1238
+ A(i), t(() => {
1239
+ a = N(i, 0, "sv-tp__num svelte-qdm31c", null, a, { "is-active": l(n).value === B.minutes }), C(i, "x", l(n).x), C(i, "y", l(n).y), r(s, l(n).label);
1240
+ }), u(e, i);
1241
+ }), u(e, i);
1242
+ };
1243
+ m(I, (e) => {
1244
+ B.selection === "hour" ? e(L) : e(ne, -1);
1245
+ }), A(w), b(w, (e) => V = e, () => V);
1246
+ var H = k(w, 2), re = (e) => {
1247
+ var n = At(), i = o(n);
1248
+ D(i, (e) => ({
1249
+ class: "sv-tp__now",
1250
+ ...e
1251
+ }), [() => B.nowProps()], void 0, void 0, "svelte-qdm31c");
1252
+ var a = o(i, !0);
1253
+ A(i), A(n), t(() => r(a, l(R).now)), u(e, n);
1254
+ };
1255
+ m(H, (e) => {
1256
+ _() && e(re);
1257
+ });
1258
+ var ae = k(H, 2), G = (e) => {
1259
+ var n = jt();
1260
+ te(n), t((e) => {
1261
+ C(n, "name", i.name), ee(n, e);
1262
+ }, [() => `${String(B.hours).padStart(2, "0")}:${B.mm}`]), u(e, n);
1263
+ };
1264
+ m(ae, (e) => {
1265
+ i.name && e(G);
1266
+ }), A(a), t((e) => {
1267
+ s = N(a, 1, "sv-tp svelte-qdm31c", null, s, {
1268
+ "sv-tp--disabled": v(),
1269
+ "sv-tp--invalid": j()
1270
+ }), C(a, "id", l(F)), C(a, "aria-label", i.label ?? l(R).label), C(a, "dir", l(z)), r(p, e), r(g, B.mm), C(T, "cx", B.C), C(T, "cy", B.C), C(T, "r", B.C - 4), C(O, "x1", B.C), C(O, "y1", B.C), C(O, "x2", B.handEnd.x), C(O, "y2", B.handEnd.y), C(M, "cx", B.C), C(M, "cy", B.C), C(P, "cx", B.handEnd.x), C(P, "cy", B.handEnd.y), a.dir = a.dir;
1271
+ }, [() => String(B.displayHour).padStart(2, "0")]), u(e, a);
1272
+ }, s = {
1273
+ label: "Time picker",
1274
+ am: "AM",
1275
+ pm: "PM",
1276
+ now: "Now"
1277
+ }, d = O(i, "value", 3, null), p = O(i, "format", 3, "24-hour"), h = O(i, "minuteInterval", 3, 1), g = O(i, "autoSwitchToMinutes", 3, !0), _ = O(i, "footer", 3, !1), v = O(i, "disabled", 3, !1), y = O(i, "readonly", 3, !1), x = O(i, "selection", 3, "hour"), T = O(i, "required", 3, !1), j = O(i, "invalid", 3, !1), P = L("sv-tp"), F = f(() => i.id ?? P), ne = f(() => !!(i.label || i.hint || i.error)), R = f(() => I(s, i.messages)), z = f(() => i.dir === "ltr" || i.dir === "rtl" ? i.dir : void 0), B = Et({
1278
+ value: () => d(),
1279
+ onChange: (e) => i.onChange?.(e),
1280
+ format: () => p(),
1281
+ minuteInterval: () => h(),
1282
+ autoSwitchToMinutes: () => g(),
1283
+ disabled: () => v(),
1284
+ readonly: () => y(),
1285
+ selection: () => x()
1286
+ }), V = null, H = !1;
1287
+ function re(e) {
1288
+ let t = V.getBoundingClientRect(), n = B.SIZE / t.width, r = (e.clientX - t.left) * n - B.C, i = (e.clientY - t.top) * n - B.C, a = Math.atan2(i, r) * 180 / Math.PI + 90;
1289
+ return a < 0 && (a += 360), {
1290
+ angle: a,
1291
+ dist: Math.hypot(r, i)
1292
+ };
1293
+ }
1294
+ function U(e) {
1295
+ if (!B.isInteractive) return;
1296
+ H = !0, V?.setPointerCapture(e.pointerId);
1297
+ let { angle: t, dist: n } = re(e);
1298
+ B.pointerSelect(t, n);
1299
+ }
1300
+ function W(e) {
1301
+ if (!H) return;
1302
+ let { angle: t, dist: n } = re(e);
1303
+ B.pointerSelect(t, n);
1304
+ }
1305
+ function ie(e) {
1306
+ H && (H = !1, V?.releasePointerCapture(e.pointerId), B.endPointer());
1307
+ }
1308
+ var ae = E(), G = c(ae), oe = (e) => {
1309
+ Le(e, {
1310
+ get id() {
1311
+ return l(F);
1312
+ },
1313
+ get label() {
1314
+ return i.label;
1315
+ },
1316
+ get hint() {
1317
+ return i.hint;
1318
+ },
1319
+ get error() {
1320
+ return i.error;
1321
+ },
1322
+ get required() {
1323
+ return T();
1324
+ },
1325
+ get dir() {
1326
+ return i.dir;
1327
+ },
1328
+ children: (e, t) => {
1329
+ a(e);
1330
+ },
1331
+ $$slots: { default: !0 }
1332
+ });
1333
+ }, K = (e) => {
1334
+ a(e);
1335
+ };
1336
+ m(G, (e) => {
1337
+ l(ne) ? e(oe) : e(K, -1);
1338
+ }), u(e, ae), w();
1339
+ }
1340
+ //#endregion
1341
+ //#region ../grid/dist/datetime/date-format.js
1342
+ var Pt = [
1343
+ "dddd",
1344
+ "ddd",
1345
+ "dd",
1346
+ "d",
1347
+ "MMMM",
1348
+ "MMM",
1349
+ "MM",
1350
+ "M",
1351
+ "yyyy",
1352
+ "yy",
1353
+ "HH",
1354
+ "H",
1355
+ "hh",
1356
+ "h",
1357
+ "mm",
1358
+ "m",
1359
+ "ss",
1360
+ "s",
1361
+ "fff",
1362
+ "ff",
1363
+ "f",
1364
+ "tt",
1365
+ "t"
1366
+ ];
1367
+ function Ft(e) {
1368
+ let t = [], n = 0;
1369
+ for (; n < e.length;) {
1370
+ let r = e[n];
1371
+ if (r === "\\" && n + 1 < e.length) {
1372
+ t.push({ literal: e[n + 1] }), n += 2;
1373
+ continue;
1374
+ }
1375
+ if (r === "'") {
1376
+ let r = n + 1, i = "";
1377
+ for (; r < e.length && e[r] !== "'";) i += e[r], r++;
1378
+ t.push({ literal: i }), n = r + 1;
1379
+ continue;
1380
+ }
1381
+ let i = null;
1382
+ for (let t of Pt) if (e.startsWith(t, n)) {
1383
+ i = t;
1384
+ break;
1385
+ }
1386
+ i ? (t.push({ token: i }), n += i.length) : (t.push({ literal: r }), n += 1);
1387
+ }
1388
+ return t;
1389
+ }
1390
+ var $ = (e, t) => String(Math.abs(e)).padStart(t, "0"), It = /* @__PURE__ */ new Map(), Lt = /* @__PURE__ */ new Map(), Rt = /* @__PURE__ */ new Map();
1391
+ function zt(e) {
1392
+ let t = It.get(e);
1393
+ if (!t) {
1394
+ let n = new Intl.DateTimeFormat(e, { month: "long" }), r = new Intl.DateTimeFormat(e, { month: "short" });
1395
+ t = {
1396
+ long: Array.from({ length: 12 }, (e, t) => n.format(new Date(2021, t, 1))),
1397
+ short: Array.from({ length: 12 }, (e, t) => r.format(new Date(2021, t, 1)))
1398
+ }, It.set(e, t);
1399
+ }
1400
+ return t;
1401
+ }
1402
+ function Bt(e) {
1403
+ let t = Lt.get(e);
1404
+ if (!t) {
1405
+ let n = new Intl.DateTimeFormat(e, { weekday: "long" }), r = new Intl.DateTimeFormat(e, { weekday: "short" });
1406
+ t = {
1407
+ long: Array.from({ length: 7 }, (e, t) => n.format(new Date(2021, 7, 1 + t))),
1408
+ short: Array.from({ length: 7 }, (e, t) => r.format(new Date(2021, 7, 1 + t)))
1409
+ }, Lt.set(e, t);
1410
+ }
1411
+ return t;
1412
+ }
1413
+ function Vt(e) {
1414
+ let t = Rt.get(e);
1415
+ if (!t) {
1416
+ let n = new Intl.DateTimeFormat(e, {
1417
+ hour: "numeric",
1418
+ hour12: !0
1419
+ });
1420
+ t = {
1421
+ am: n.formatToParts(new Date(2021, 0, 1, 9)).find((e) => e.type === "dayPeriod")?.value ?? "AM",
1422
+ pm: n.formatToParts(new Date(2021, 0, 1, 21)).find((e) => e.type === "dayPeriod")?.value ?? "PM"
1423
+ }, Rt.set(e, t);
1424
+ }
1425
+ return t;
1426
+ }
1427
+ function Ht(e, t, n = "en-US") {
1428
+ let r = Ft(t), i = e.getHours(), a = i % 12 == 0 ? 12 : i % 12, o = e.getMilliseconds(), s = "";
1429
+ for (let t of r) {
1430
+ if ("literal" in t) {
1431
+ s += t.literal;
1432
+ continue;
1433
+ }
1434
+ switch (t.token) {
1435
+ case "d":
1436
+ s += String(e.getDate());
1437
+ break;
1438
+ case "dd":
1439
+ s += $(e.getDate(), 2);
1440
+ break;
1441
+ case "ddd":
1442
+ s += Bt(n).short[e.getDay()];
1443
+ break;
1444
+ case "dddd":
1445
+ s += Bt(n).long[e.getDay()];
1446
+ break;
1447
+ case "M":
1448
+ s += String(e.getMonth() + 1);
1449
+ break;
1450
+ case "MM":
1451
+ s += $(e.getMonth() + 1, 2);
1452
+ break;
1453
+ case "MMM":
1454
+ s += zt(n).short[e.getMonth()];
1455
+ break;
1456
+ case "MMMM":
1457
+ s += zt(n).long[e.getMonth()];
1458
+ break;
1459
+ case "yy":
1460
+ s += $(e.getFullYear() % 100, 2);
1461
+ break;
1462
+ case "yyyy":
1463
+ s += $(e.getFullYear(), 4);
1464
+ break;
1465
+ case "H":
1466
+ s += String(i);
1467
+ break;
1468
+ case "HH":
1469
+ s += $(i, 2);
1470
+ break;
1471
+ case "h":
1472
+ s += String(a);
1473
+ break;
1474
+ case "hh":
1475
+ s += $(a, 2);
1476
+ break;
1477
+ case "m":
1478
+ s += String(e.getMinutes());
1479
+ break;
1480
+ case "mm":
1481
+ s += $(e.getMinutes(), 2);
1482
+ break;
1483
+ case "s":
1484
+ s += String(e.getSeconds());
1485
+ break;
1486
+ case "ss":
1487
+ s += $(e.getSeconds(), 2);
1488
+ break;
1489
+ case "f":
1490
+ s += $(o, 3).slice(0, 1);
1491
+ break;
1492
+ case "ff":
1493
+ s += $(o, 3).slice(0, 2);
1494
+ break;
1495
+ case "fff":
1496
+ s += $(o, 3);
1497
+ break;
1498
+ case "t":
1499
+ s += (i < 12 ? Vt(n).am : Vt(n).pm).slice(0, 1);
1500
+ break;
1501
+ case "tt":
1502
+ s += i < 12 ? Vt(n).am : Vt(n).pm;
1503
+ break;
1504
+ default: s += t.token;
1505
+ }
1506
+ }
1507
+ return s;
1508
+ }
1509
+ var Ut = {
1510
+ d: 2,
1511
+ dd: 2,
1512
+ M: 2,
1513
+ MM: 2,
1514
+ yy: 2,
1515
+ yyyy: 4,
1516
+ H: 2,
1517
+ HH: 2,
1518
+ h: 2,
1519
+ hh: 2,
1520
+ m: 2,
1521
+ mm: 2,
1522
+ s: 2,
1523
+ ss: 2,
1524
+ f: 1,
1525
+ ff: 2,
1526
+ fff: 3
1527
+ };
1528
+ function Wt(e, t, n) {
1529
+ let r = 0;
1530
+ for (; r < n && t + r < e.length && e[t + r] >= "0" && e[t + r] <= "9";) r++;
1531
+ return r === 0 ? null : {
1532
+ value: parseInt(e.slice(t, t + r), 10),
1533
+ len: r
1534
+ };
1535
+ }
1536
+ function Gt(e, t, n) {
1537
+ let r = n.map((e, t) => ({
1538
+ name: e,
1539
+ index: t
1540
+ })).sort((e, t) => t.name.length - e.name.length), i = e.slice(t).toLowerCase();
1541
+ for (let { name: e, index: t } of r) if (e && i.startsWith(e.toLowerCase())) return {
1542
+ index: t,
1543
+ len: e.length
1544
+ };
1545
+ return null;
1546
+ }
1547
+ function Kt(e, t, n = "en-US", r = 2029, i) {
1548
+ let a = Ft(t), o = {}, s = 0, c = e;
1549
+ for (let e of a) {
1550
+ if ("literal" in e) {
1551
+ for (let t of e.literal) {
1552
+ if (t === " ") {
1553
+ for (; c[s] === " ";) s++;
1554
+ continue;
1555
+ }
1556
+ if (c[s] !== t) return null;
1557
+ s++;
1558
+ }
1559
+ continue;
1560
+ }
1561
+ let t = e.token;
1562
+ switch (t) {
1563
+ case "ddd":
1564
+ case "dddd": {
1565
+ let e = Gt(c, s, Bt(n)[t === "ddd" ? "short" : "long"]);
1566
+ if (!e) return null;
1567
+ s += e.len;
1568
+ break;
1569
+ }
1570
+ case "MMM":
1571
+ case "MMMM": {
1572
+ let e = Gt(c, s, zt(n)[t === "MMM" ? "short" : "long"]);
1573
+ if (!e) return null;
1574
+ o.month = e.index, s += e.len;
1575
+ break;
1576
+ }
1577
+ case "t":
1578
+ case "tt": {
1579
+ let e = Vt(n), t = c.slice(s).toLowerCase();
1580
+ if (t.startsWith(e.pm.toLowerCase())) o.isPm = !0, s += e.pm.length;
1581
+ else if (t.startsWith(e.am.toLowerCase())) o.isPm = !1, s += e.am.length;
1582
+ else if (t.startsWith(e.pm.slice(0, 1).toLowerCase())) o.isPm = !0, s += 1;
1583
+ else if (t.startsWith(e.am.slice(0, 1).toLowerCase())) o.isPm = !1, s += 1;
1584
+ else return null;
1585
+ break;
1586
+ }
1587
+ default: {
1588
+ let e = Wt(c, s, Ut[t] ?? 2);
1589
+ if (!e) return null;
1590
+ s += e.len;
1591
+ let n = e.value;
1592
+ switch (t) {
1593
+ case "d":
1594
+ case "dd":
1595
+ o.day = n;
1596
+ break;
1597
+ case "M":
1598
+ case "MM":
1599
+ o.month = n - 1;
1600
+ break;
1601
+ case "yy":
1602
+ o.year = n <= r % 100 ? 2e3 + n : 1900 + n;
1603
+ break;
1604
+ case "yyyy":
1605
+ o.year = n;
1606
+ break;
1607
+ case "H":
1608
+ case "HH":
1609
+ o.hour = n;
1610
+ break;
1611
+ case "h":
1612
+ case "hh":
1613
+ o.hour12 = n;
1614
+ break;
1615
+ case "m":
1616
+ case "mm":
1617
+ o.minute = n;
1618
+ break;
1619
+ case "s":
1620
+ case "ss":
1621
+ o.second = n;
1622
+ break;
1623
+ case "f":
1624
+ o.ms = n * 100;
1625
+ break;
1626
+ case "ff":
1627
+ o.ms = n * 10;
1628
+ break;
1629
+ case "fff":
1630
+ o.ms = n;
1631
+ break;
1632
+ }
1633
+ }
1634
+ }
1635
+ }
1636
+ if (s !== c.length && c.slice(s).trim() !== "") return null;
1637
+ let l = i ?? new Date(1970, 0, 1), u = o.hour;
1638
+ u == null && o.hour12 != null && (u = o.hour12 % 12, o.isPm && (u += 12));
1639
+ let d = o.year ?? l.getFullYear(), f = o.month ?? l.getMonth(), p = o.day ?? l.getDate(), m = new Date(d, f, p, u ?? l.getHours(), o.minute ?? l.getMinutes(), o.second ?? l.getSeconds(), o.ms ?? l.getMilliseconds());
1640
+ return o.day != null && m.getDate() !== p || o.month != null && m.getMonth() !== f || isNaN(m.getTime()) ? null : m;
1641
+ }
1642
+ //#endregion
1643
+ //#region ../grid/dist/createDateTimePicker.svelte.js
1644
+ var qt = () => typeof navigator < "u" ? navigator.language : "en-US";
1645
+ function Jt(e) {
1646
+ let t = () => e.formatString?.() ?? "yyyy-MM-dd HH:mm", n = () => e.nullable?.() ?? !0, r = () => e.locale?.() ?? qt(), i = () => e.dropDownDisplayMode?.() ?? "both", a = () => e.spinButtons?.() ?? !1, o = () => e.stepMinutes?.() ?? 1, s = () => e.disabled?.() ?? !1, c = () => e.readonly?.() ?? !1, u = f(() => !s() && !c()), d = f(() => U(e.min?.() ?? null)), p = f(() => U(e.max?.() ?? null)), m = g(null), v = g(""), y = "￿";
1647
+ h(() => {
1648
+ let n = U(e.value()), i = n ? String(n.getTime()) : "null";
1649
+ i !== y && (y = i, _(m, n, !0), _(v, n ? Ht(n, t(), r()) : "", !0));
1650
+ });
1651
+ let b = g(!1), x = g("date"), S = f(() => i() !== "time"), C = f(() => i() !== "calendar");
1652
+ function w(n) {
1653
+ let i = n ? ue(n, l(d), l(p)) : null;
1654
+ _(m, i, !0), y = i ? String(i.getTime()) : "null", _(v, i ? Ht(i, t(), r()) : "", !0), e.onChange?.(i);
1655
+ }
1656
+ function T() {
1657
+ let e = l(v).trim();
1658
+ if (!e) {
1659
+ n() ? w(null) : _(v, l(m) ? Ht(l(m), t(), r()) : "", !0);
1660
+ return;
1661
+ }
1662
+ let i = Kt(e, t(), r(), 2029, l(m) ?? /* @__PURE__ */ new Date());
1663
+ i ? w(i) : _(v, l(m) ? Ht(l(m), t(), r()) : "", !0);
1664
+ }
1665
+ function E(e) {
1666
+ let t = l(m) ?? /* @__PURE__ */ new Date();
1667
+ w(new Date(t.getTime() + e * 6e4));
1668
+ }
1669
+ function D(t) {
1670
+ let n = t[0];
1671
+ n && (w(fe(n, l(m) ?? W(n))), i() === "calendar" ? (_(b, !1), e.onCommit?.(l(m))) : i() === "both" && _(x, "time"));
1672
+ }
1673
+ function ee(e) {
1674
+ w(fe(l(m) ?? /* @__PURE__ */ new Date(), e));
1675
+ }
1676
+ function O() {
1677
+ !l(u) || l(b) || (_(x, i() === "time" ? "time" : "date", !0), _(b, !0));
1678
+ }
1679
+ function k() {
1680
+ _(b, !1);
1681
+ }
1682
+ function A() {
1683
+ (l(b) ? k : O)();
1684
+ }
1685
+ function j(e) {
1686
+ _(x, e, !0);
1687
+ }
1688
+ function M(t) {
1689
+ t.key === "Enter" ? (t.preventDefault(), T(), k(), e.onCommit?.(l(m))) : t.key === "Escape" ? (k(), e.onCancel?.()) : t.key === "ArrowDown" && (t.altKey || !l(v)) ? (t.preventDefault(), O()) : a() && t.key === "ArrowUp" ? (t.preventDefault(), E(o())) : a() && t.key === "ArrowDown" && (t.preventDefault(), E(-o()));
1690
+ }
1691
+ return {
1692
+ get current() {
1693
+ return l(m);
1694
+ },
1695
+ get text() {
1696
+ return l(v);
1697
+ },
1698
+ set text(e) {
1699
+ _(v, e, !0);
1700
+ },
1701
+ get open() {
1702
+ return l(b);
1703
+ },
1704
+ get tab() {
1705
+ return l(x);
1706
+ },
1707
+ get isInteractive() {
1708
+ return l(u);
1709
+ },
1710
+ get showDateTab() {
1711
+ return l(S);
1712
+ },
1713
+ get showTimeTab() {
1714
+ return l(C);
1715
+ },
1716
+ commit: w,
1717
+ commitFromText: T,
1718
+ bump: E,
1719
+ onCalendarChange: D,
1720
+ onTimeChange: ee,
1721
+ openPanel: O,
1722
+ closePanel: k,
1723
+ toggle: A,
1724
+ setTab: j,
1725
+ onInputKeydown: M,
1726
+ inputProps() {
1727
+ return {
1728
+ id: e.id?.(),
1729
+ type: "text",
1730
+ disabled: s(),
1731
+ readonly: c(),
1732
+ ...z({
1733
+ id: e.id?.(),
1734
+ invalid: e.invalid?.(),
1735
+ required: e.required?.(),
1736
+ error: e.error?.(),
1737
+ hint: e.hint?.(),
1738
+ ariaLabel: e.ariaLabel?.()
1739
+ }),
1740
+ onblur: T,
1741
+ onkeydown: M
1742
+ };
1743
+ },
1744
+ toggleProps() {
1745
+ return {
1746
+ type: "button",
1747
+ "aria-label": e.toggleLabel?.() ?? "Open picker",
1748
+ "aria-haspopup": "dialog",
1749
+ "aria-expanded": l(b),
1750
+ disabled: !l(u),
1751
+ tabindex: -1,
1752
+ onclick: A
1753
+ };
1754
+ },
1755
+ clearProps() {
1756
+ return {
1757
+ type: "button",
1758
+ "aria-label": e.clearLabel?.() ?? "Clear",
1759
+ onclick: () => w(null)
1760
+ };
1761
+ },
1762
+ spinProps(e) {
1763
+ return {
1764
+ type: "button",
1765
+ tabindex: -1,
1766
+ "aria-label": e === 1 ? "Increment" : "Decrement",
1767
+ disabled: !l(u),
1768
+ onclick: () => E(e * o())
1769
+ };
1770
+ },
1771
+ tabProps(e) {
1772
+ return {
1773
+ type: "button",
1774
+ role: "tab",
1775
+ "aria-selected": l(x) === e,
1776
+ onclick: () => j(e)
1777
+ };
1778
+ }
1779
+ };
1780
+ }
1781
+ //#endregion
1782
+ //#region ../grid/dist/SvDateTimePicker.svelte
1783
+ var Yt = e("<div class=\"sv-dtp__spin svelte-8dgo1g\"><button>▲</button> <button>▼</button></div>"), Xt = e("<button>&times;</button>"), Zt = e("<div class=\"sv-dtp__tabs\" role=\"tablist\"><button> </button> <button> </button></div>"), Qt = e("<div class=\"sv-dtp__panel\" role=\"dialog\"><!> <div class=\"sv-dtp__body\"><!></div></div>"), $t = e("<input type=\"hidden\"/>"), en = e("<div><div><!> <input/> <!> <button><svg viewBox=\"0 0 24 24\" width=\"16\" height=\"16\" fill=\"none\" stroke=\"currentColor\" stroke-width=\"2\" stroke-linecap=\"round\" stroke-linejoin=\"round\"><rect x=\"3\" y=\"4\" width=\"18\" height=\"18\" rx=\"2\"></rect><path d=\"M16 2v4M8 2v4M3 10h18\"></path></svg></button></div> <!> <!></div>");
1784
+ function tn(e, n) {
1785
+ M(n, !0);
1786
+ let i = {
1787
+ dialog: "Choose date and time",
1788
+ date: "DATE",
1789
+ time: "TIME",
1790
+ clear: "Clear",
1791
+ open: "Open picker"
1792
+ }, c = O(n, "value", 3, null), d = O(n, "formatString", 3, "yyyy-MM-dd HH:mm"), p = O(n, "min", 3, null), v = O(n, "max", 3, null), T = O(n, "nullable", 3, !0), E = O(n, "placeholder", 3, "Select date & time"), P = O(n, "disabled", 3, !1), ne = O(n, "readonly", 3, !1), R = O(n, "locale", 19, () => typeof navigator < "u" ? navigator.language : "en-US"), z = O(n, "firstDayOfWeek", 3, 0), U = O(n, "weekNumbers", 3, !1), W = O(n, "hourFormat", 3, "24-hour"), ie = O(n, "minuteInterval", 3, 1), ae = O(n, "dropDownDisplayMode", 3, "both"), G = O(n, "spinButtons", 3, !1), oe = O(n, "stepMinutes", 3, 1), K = O(n, "autoOpen", 3, !1), se = O(n, "block", 3, !1), q = O(n, "animate", 3, !1), J = O(n, "invalid", 3, !1), ce = O(n, "required", 3, !1), le = L("sv-dtp"), ue = f(() => n.id ?? le), Y = f(() => I(i, n.messages)), de = f(() => n.dir === "ltr" || n.dir === "rtl" ? n.dir : void 0), X = Jt({
1793
+ value: () => c(),
1794
+ onChange: (e) => n.onChange?.(e),
1795
+ onCommit: (e) => n.onCommit?.(e),
1796
+ onCancel: () => n.onCancel?.(),
1797
+ formatString: () => d(),
1798
+ min: () => p(),
1799
+ max: () => v(),
1800
+ nullable: () => T(),
1801
+ locale: () => R(),
1802
+ dropDownDisplayMode: () => ae(),
1803
+ spinButtons: () => G(),
1804
+ stepMinutes: () => oe(),
1805
+ disabled: () => P(),
1806
+ readonly: () => ne(),
1807
+ toggleLabel: () => l(Y).open,
1808
+ clearLabel: () => l(Y).clear,
1809
+ id: () => l(ue),
1810
+ invalid: () => J(),
1811
+ required: () => ce(),
1812
+ error: () => n.error,
1813
+ hint: () => n.hint,
1814
+ ariaLabel: () => n.ariaLabel
1815
+ }), Z = g(null), fe = g(null), pe = g(s({
1816
+ top: 0,
1817
+ left: 0,
1818
+ width: 0,
1819
+ openUpward: !1,
1820
+ maxHeight: 0,
1821
+ availHeight: 0
1822
+ }));
1823
+ function Q() {
1824
+ l(Z) && _(pe, H(l(Z).getBoundingClientRect(), {
1825
+ estimatedHeight: 360,
1826
+ minWidth: 300
1827
+ }), !0);
1828
+ }
1829
+ h(() => {
1830
+ if (!X.open) return;
1831
+ Q();
1832
+ let e = () => Q();
1833
+ window.addEventListener("scroll", e, !0), window.addEventListener("resize", e);
1834
+ let t = re({
1835
+ element: () => [l(Z), l(fe)],
1836
+ onDismiss: () => X.closePanel(),
1837
+ closeOnEscape: !1
1838
+ });
1839
+ return t.activate(), () => {
1840
+ window.removeEventListener("scroll", e, !0), window.removeEventListener("resize", e), t.release();
1841
+ };
1842
+ });
1843
+ function me(e) {
1844
+ K() && (e.focus(), X.openPanel());
1845
+ }
1846
+ function he(e) {
1847
+ let t = e.relatedTarget;
1848
+ t && (l(Z)?.contains(t) || l(fe)?.contains(t)) || n.onCommit?.(X.current);
1849
+ }
1850
+ Le(e, {
1851
+ get id() {
1852
+ return l(ue);
1853
+ },
1854
+ get label() {
1855
+ return n.label;
1856
+ },
1857
+ get hint() {
1858
+ return n.hint;
1859
+ },
1860
+ get error() {
1861
+ return n.error;
1862
+ },
1863
+ get required() {
1864
+ return ce();
1865
+ },
1866
+ get dir() {
1867
+ return n.dir;
1868
+ },
1869
+ get block() {
1870
+ return se();
1871
+ },
1872
+ children: (e, i) => {
1873
+ var s = en();
1874
+ let c;
1875
+ var d = o(s);
1876
+ let f;
1877
+ var h = o(d), g = (e) => {
1878
+ var t = Yt(), n = o(t);
1879
+ D(n, (e) => ({ ...e }), [() => X.spinProps(1)], void 0, void 0, "svelte-8dgo1g"), D(k(n, 2), (e) => ({ ...e }), [() => X.spinProps(-1)], void 0, void 0, "svelte-8dgo1g"), A(t), u(e, t);
1880
+ };
1881
+ m(h, (e) => {
1882
+ G() && e(g);
1883
+ });
1884
+ var w = k(h, 2);
1885
+ D(w, (e) => ({
1886
+ class: "sv-dtp__input",
1887
+ placeholder: E(),
1888
+ ...e
1889
+ }), [() => X.inputProps()], void 0, void 0, "svelte-8dgo1g", !0), F(() => j(w, () => X.text, (e) => X.text = e)), x(w, (e) => me?.(e));
1890
+ var O = k(w, 2), M = (e) => {
1891
+ var t = Xt();
1892
+ D(t, (e) => ({
1893
+ class: "sv-dtp__clear",
1894
+ ...e
1895
+ }), [() => X.clearProps()], void 0, void 0, "svelte-8dgo1g"), u(e, t);
1896
+ };
1897
+ m(O, (e) => {
1898
+ T() && X.current && X.isInteractive && e(M);
1899
+ }), D(k(O, 2), (e) => ({
1900
+ class: "sv-dtp__toggle",
1901
+ ...e
1902
+ }), [() => X.toggleProps()], void 0, void 0, "svelte-8dgo1g"), A(d), b(d, (e) => _(Z, e), () => l(Z));
1903
+ var I = k(d, 2), L = (e) => {
1904
+ var n = Qt();
1905
+ let i;
1906
+ var a = o(n), s = (e) => {
1907
+ var n = Zt(), i = o(n);
1908
+ D(i, (e) => ({
1909
+ ...e,
1910
+ [S]: { "is-active": X.tab === "date" }
1911
+ }), [() => X.tabProps("date")], void 0, void 0, "svelte-8dgo1g");
1912
+ var a = o(i, !0);
1913
+ A(i);
1914
+ var s = k(i, 2);
1915
+ D(s, (e) => ({
1916
+ ...e,
1917
+ [S]: { "is-active": X.tab === "time" }
1918
+ }), [() => X.tabProps("time")], void 0, void 0, "svelte-8dgo1g");
1919
+ var c = o(s, !0);
1920
+ A(s), A(n), t(() => {
1921
+ r(a, l(Y).date), r(c, l(Y).time);
1922
+ }), u(e, n);
1923
+ };
1924
+ m(a, (e) => {
1925
+ X.showDateTab && X.showTimeTab && e(s);
1926
+ });
1927
+ var c = k(a, 2), d = o(c), f = (e) => {
1928
+ yt(e, {
1929
+ get value() {
1930
+ return X.current;
1931
+ },
1932
+ selectionMode: "one",
1933
+ get min() {
1934
+ return p();
1935
+ },
1936
+ get max() {
1937
+ return v();
1938
+ },
1939
+ get firstDayOfWeek() {
1940
+ return z();
1941
+ },
1942
+ get weekNumbers() {
1943
+ return U();
1944
+ },
1945
+ get locale() {
1946
+ return R();
1947
+ },
1948
+ get animate() {
1949
+ return q();
1950
+ },
1951
+ get dir() {
1952
+ return l(de);
1953
+ },
1954
+ get onChange() {
1955
+ return X.onCalendarChange;
1956
+ }
1957
+ });
1958
+ }, h = (e) => {
1959
+ Nt(e, {
1960
+ get value() {
1961
+ return X.current;
1962
+ },
1963
+ get format() {
1964
+ return W();
1965
+ },
1966
+ get minuteInterval() {
1967
+ return ie();
1968
+ },
1969
+ footer: !0,
1970
+ get dir() {
1971
+ return l(de);
1972
+ },
1973
+ get onChange() {
1974
+ return X.onTimeChange;
1975
+ }
1976
+ });
1977
+ };
1978
+ m(d, (e) => {
1979
+ X.tab === "date" && X.showDateTab ? e(f) : X.showTimeTab && e(h, 1);
1980
+ }), A(c), A(n), b(n, (e) => _(fe, e), () => l(fe)), x(n, (e) => V?.(e)), x(n, (e, t) => B?.(e, t), () => ({ up: l(pe).openUpward })), t(() => {
1981
+ C(n, "aria-label", l(Y).dialog), C(n, "dir", l(de)), i = y(n, "", i, {
1982
+ position: "fixed",
1983
+ top: `${l(pe).top}px`,
1984
+ left: `${l(pe).left}px`
1985
+ }), n.dir = n.dir;
1986
+ }), u(e, n);
1987
+ };
1988
+ m(I, (e) => {
1989
+ X.open && e(L);
1990
+ });
1991
+ var ne = k(I, 2), H = (e) => {
1992
+ var r = $t();
1993
+ te(r), t((e) => {
1994
+ C(r, "name", n.name), ee(r, e);
1995
+ }, [() => X.current ? X.current.toISOString() : ""]), u(e, r);
1996
+ };
1997
+ m(ne, (e) => {
1998
+ n.name && e(H);
1999
+ }), A(s), t(() => {
2000
+ c = N(s, 1, "sv-dtp svelte-8dgo1g", null, c, {
2001
+ "sv-dtp--disabled": P(),
2002
+ "sv-dtp--block": se()
2003
+ }), C(s, "dir", l(de)), f = N(d, 1, "sv-dtp__field svelte-8dgo1g", null, f, { "is-invalid": J() }), s.dir = s.dir;
2004
+ }), a("focusout", s, he), u(e, s);
2005
+ },
2006
+ $$slots: { default: !0 }
2007
+ }), w();
2008
+ }
2009
+ d(["focusout"]);
2010
+ //#endregion
2011
+ export { tn as default };