@aerogel/core 0.1.0 → 0.1.1-next.d86959f8ee7dcf2194447eb424c1095912a5e5f8

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.
@@ -1,38 +1,38 @@
1
- var kt = Object.defineProperty;
2
- var St = (t, s, e) => s in t ? kt(t, s, { enumerable: !0, configurable: !0, writable: !0, value: e }) : t[s] = e;
3
- var _ = (t, s, e) => St(t, typeof s != "symbol" ? s + "" : s, e);
4
- import { markRaw as E, Comment as Tt, Text as Mt, Static as Ht, inject as X, reactive as pe, nextTick as Oe, unref as o, watchEffect as Y, defineComponent as g, computed as c, createBlock as h, openBlock as u, mergeProps as H, withCtx as f, renderSlot as w, createPropsRestProxy as N, onUnmounted as ge, ref as U, readonly as ve, useAttrs as Ne, onMounted as Et, watch as Me, toRaw as Vt, createVNode as p, normalizeProps as ne, guardReactiveProps as ae, createTextVNode as I, toDisplayString as x, normalizeClass as k, createElementBlock as b, Fragment as D, renderList as F, provide as le, resolveDynamicComponent as W, useSlots as He, createCommentVNode as T, createElementVNode as y, h as Lt, toRef as Re, useTemplateRef as G, withModifiers as We, withDirectives as Ke, vModelCheckbox as It, normalizeStyle as qt, resolveComponent as zt, createApp as Rt, vModelText as Pt } from "vue";
5
- import { JSError as be, stringToSlug as At, tap as ee, MagicObject as Qe, PromisedValue as K, Storage as O, objectOnly as oe, arrayFrom as Je, isEmpty as xe, objectDeepClone as Dt, fail as Q, facade as te, arrayRemove as Se, getEnv as jt, updateLocationQueryParameters as Bt, forever as Ft, toString as B, isDevelopment as J, isTesting as Ee, after as ue, uuid as re, required as Ut, isObject as ce, objectWithoutEmpty as Ze, stringMatchAll as Xe, objectWithout as Ot, noop as Nt, debounce as Wt, value as Kt, isInstanceOf as Pe, stringExcerpt as Qt, arraySorted as Jt, ListenersManager as Zt, toError as Xt, round as Yt } from "@noeldemartin/utils";
1
+ var St = Object.defineProperty;
2
+ var Tt = (t, s, e) => s in t ? St(t, s, { enumerable: !0, configurable: !0, writable: !0, value: e }) : t[s] = e;
3
+ var _ = (t, s, e) => Tt(t, typeof s != "symbol" ? s + "" : s, e);
4
+ import { markRaw as E, Comment as Mt, Text as Ht, Static as Et, inject as X, reactive as pe, unref as o, onUnmounted as ge, ref as U, computed as c, readonly as ve, nextTick as Oe, useAttrs as Ne, onMounted as Vt, watch as Me, toRaw as Lt, watchEffect as Y, defineComponent as g, createBlock as h, openBlock as u, mergeProps as H, withCtx as f, renderSlot as w, createPropsRestProxy as N, createVNode as p, normalizeProps as ne, guardReactiveProps as ae, createTextVNode as I, toDisplayString as x, normalizeClass as k, createElementBlock as b, Fragment as D, renderList as F, provide as le, resolveDynamicComponent as W, useSlots as He, createCommentVNode as T, createElementVNode as y, h as It, toRef as Re, useTemplateRef as G, withModifiers as We, withDirectives as Ke, vModelCheckbox as qt, normalizeStyle as zt, resolveComponent as Rt, createApp as Pt, vModelText as At } from "vue";
5
+ import { JSError as be, stringToSlug as Dt, tap as ee, MagicObject as Qe, PromisedValue as K, Storage as O, objectOnly as oe, arrayFrom as Je, isEmpty as xe, objectDeepClone as jt, fail as Q, facade as te, arrayRemove as Se, getEnv as Bt, updateLocationQueryParameters as Ft, forever as Ut, toString as B, objectWithout as Ot, noop as Nt, debounce as Wt, stringMatchAll as Ze, isDevelopment as J, isTesting as Ee, after as ue, uuid as re, required as Kt, isObject as ce, objectWithoutEmpty as Xe, value as Qt, isInstanceOf as Pe, stringExcerpt as Jt, arraySorted as Zt, ListenersManager as Xt, toError as Yt, round as Gt } from "@noeldemartin/utils";
6
6
  import j from "virtual:aerogel";
7
- import { createPinia as Gt, setActivePinia as es, defineStore as ts } from "pinia";
8
- import ss from "dompurify";
9
- import { marked as rs, Renderer as Ae } from "marked";
10
- import ns from "clsx";
11
- import { cva as as } from "class-variance-authority";
12
- import { twMerge as ls } from "tailwind-merge";
13
- import { Primitive as os, SelectValue as De, SelectTrigger as is, SelectIcon as us, SelectItem as cs, SelectItemText as ds, SelectPortal as ps, SelectContent as ms, SelectViewport as fs, SelectRoot as hs, Label as gs, useForwardExpose as Ve, SwitchRoot as vs, SwitchThumb as bs, DialogRoot as ys, DialogPortal as ws, DialogContent as $s, DialogDescription as _s, DialogOverlay as xs, DialogTitle as Cs, ToastClose as ks, ToastRoot as Ss, ToastProvider as Ts, ToastViewport as Ms, DropdownMenuItem as Hs, DropdownMenuContent as Es, DropdownMenuRoot as Vs, DropdownMenuTrigger as Ls, DropdownMenuPortal as Is } from "reka-ui";
7
+ import { createPinia as es, setActivePinia as ts, defineStore as ss } from "pinia";
8
+ import rs from "dompurify";
9
+ import { marked as ns, Renderer as Ae } from "marked";
10
+ import as from "clsx";
11
+ import { cva as ls } from "class-variance-authority";
12
+ import { twMerge as os } from "tailwind-merge";
13
+ import { Primitive as is, SelectValue as De, SelectTrigger as us, SelectIcon as cs, SelectItem as ds, SelectItemText as ps, SelectPortal as ms, SelectContent as fs, SelectViewport as hs, SelectRoot as gs, Label as vs, useForwardExpose as Ve, SwitchRoot as bs, SwitchThumb as ys, DialogRoot as ws, DialogPortal as $s, DialogContent as _s, DialogDescription as xs, DialogOverlay as Cs, DialogTitle as ks, ToastClose as Ss, ToastRoot as Ts, ToastProvider as Ms, ToastViewport as Hs, DropdownMenuItem as Es, DropdownMenuContent as Vs, DropdownMenuRoot as Ls, DropdownMenuTrigger as Is, DropdownMenuPortal as qs } from "reka-ui";
14
14
  class Te extends be {
15
15
  constructor(s, e) {
16
16
  super(`Service '${s}' failed booting`, { cause: e });
17
17
  }
18
18
  }
19
- function qs() {
20
- return j.namespace ?? At(j.name);
19
+ function zs() {
20
+ return j.namespace ?? Dt(j.name);
21
21
  }
22
22
  let Le = null;
23
23
  function Ye() {
24
- return Le ?? zs();
24
+ return Le ?? Rs();
25
25
  }
26
- function zs() {
27
- return ee(Gt(), (t) => {
28
- Le = t, es(t);
26
+ function Rs() {
27
+ return ee(es(), (t) => {
28
+ Le = t, ts(t);
29
29
  });
30
30
  }
31
- function Rs() {
31
+ function Ps() {
32
32
  return Le ?? Ye();
33
33
  }
34
- function Ps(t, s) {
35
- return Ye(), ts(t, s)();
34
+ function As(t, s) {
35
+ return Ye(), ss(t, s)();
36
36
  }
37
37
  function ye(t) {
38
38
  var s;
@@ -82,7 +82,7 @@ let we = (ke = class extends Qe {
82
82
  _(this, "_watchers");
83
83
  _(this, "_store");
84
84
  const e = this.getComputedStateDefinition();
85
- this._name = this.getName() ?? new.target.name, this._booted = new K(), this._computedStateKeys = new Set(Object.keys(e)), this._watchers = this.getStateWatchers(), this._store = this.usesStore() && Ps(this._name, {
85
+ this._name = this.getName() ?? new.target.name, this._booted = new K(), this._computedStateKeys = new Set(Object.keys(e)), this._watchers = this.getStateWatchers(), this._store = this.usesStore() && As(this._name, {
86
86
  state: () => this.getInitialState(),
87
87
  // eslint-disable-next-line @typescript-eslint/no-explicit-any
88
88
  getters: e
@@ -132,7 +132,7 @@ let we = (ke = class extends Qe {
132
132
  this.setState({ [e]: r });
133
133
  }
134
134
  get storageKey() {
135
- return `${qs()}:${this._name}`;
135
+ return `${zs()}:${this._name}`;
136
136
  }
137
137
  onStateUpdated(e, r) {
138
138
  const n = oe(e, this.static("persist"));
@@ -146,7 +146,7 @@ let we = (ke = class extends Qe {
146
146
  const r = O.get(this.storageKey);
147
147
  r && O.set(this.storageKey, {
148
148
  ...r,
149
- ...this.serializePersistedState(Dt(e))
149
+ ...this.serializePersistedState(jt(e))
150
150
  });
151
151
  }
152
152
  usesStore() {
@@ -189,12 +189,12 @@ let we = (ke = class extends Qe {
189
189
  return this._store ? this._store : Q(`Failed getting '${this._name}' store`);
190
190
  }
191
191
  }, _(ke, "persist", []), ke);
192
- const ll = {
192
+ const ol = {
193
193
  Low: -256,
194
194
  Default: 0,
195
195
  High: 256
196
196
  };
197
- class As extends we {
197
+ class Ds extends we {
198
198
  constructor() {
199
199
  super(...arguments);
200
200
  _(this, "listeners", {});
@@ -247,16 +247,16 @@ class As extends we {
247
247
  i.includes(a) || (i.push(a), i.sort((m, C) => C - m), l[a] = []), ($ = l[a]) == null || $.push(n);
248
248
  }
249
249
  }
250
- const R = te(As);
251
- function ol(t) {
250
+ const R = te(Ds);
251
+ function il(t) {
252
252
  return t;
253
253
  }
254
- const Ds = ye({
254
+ const js = ye({
255
255
  name: "app",
256
256
  initialState: {
257
257
  plugins: {},
258
258
  instance: null,
259
- environment: jt() ?? "development",
259
+ environment: Bt() ?? "development",
260
260
  version: j.version,
261
261
  sourceUrl: j.sourceUrl,
262
262
  settings: []
@@ -273,7 +273,7 @@ const Ds = ye({
273
273
  }
274
274
  }
275
275
  });
276
- class js extends Ds {
276
+ class Bs extends js {
277
277
  constructor() {
278
278
  super(...arguments);
279
279
  _(this, "name", j.name);
@@ -293,7 +293,7 @@ class js extends Ds {
293
293
  return await this.ready.then(e);
294
294
  }
295
295
  async reload(e) {
296
- e && Bt(e), location.reload(), await Ft();
296
+ e && Ft(e), location.reload(), await Ut();
297
297
  }
298
298
  plugin(e) {
299
299
  return this.plugins[e] ?? null;
@@ -306,11 +306,11 @@ class js extends Ds {
306
306
  R.once("application-ready", () => this.ready.resolve()), R.once("application-mounted", () => this.mounted.resolve());
307
307
  }
308
308
  }
309
- const A = te(js);
310
- function il(t) {
309
+ const A = te(Bs);
310
+ function ul(t) {
311
311
  return t;
312
312
  }
313
- async function Bs(t, ...s) {
313
+ async function Fs(t, ...s) {
314
314
  A.setState(
315
315
  "plugins",
316
316
  t.reduce(
@@ -319,28 +319,28 @@ async function Bs(t, ...s) {
319
319
  )
320
320
  ), await Promise.all(t.map((e) => e.install(...s)) ?? []);
321
321
  }
322
- function Fs(t) {
322
+ function Us(t) {
323
323
  return Object.entries(t.props ?? {}).reduce((s, [e, r]) => s + `${e}="${B(r)}"`, "");
324
324
  }
325
- function ul(t) {
325
+ function cl(t) {
326
326
  return t;
327
327
  }
328
- function Us(t) {
328
+ function Os(t) {
329
329
  const s = X(t);
330
330
  return s ? pe(s) : void 0;
331
331
  }
332
332
  function V(t, s) {
333
- return Us(t) ?? Q(s ?? `Could not resolve '${B(t)}' injection key`);
333
+ return Os(t) ?? Q(s ?? `Could not resolve '${B(t)}' injection key`);
334
334
  }
335
- function Os(t, s) {
335
+ function Ns(t, s) {
336
336
  return X(t) ?? Q(s ?? `Could not resolve '${B(t)}' injection key`);
337
337
  }
338
338
  function Ge(t) {
339
- return typeof t == "string" ? t : t.type === Tt ? "" : t.type === Mt || t.type === Ht ? t.children : t.type === "br" ? `
339
+ return typeof t == "string" ? t : t.type === Mt ? "" : t.type === Ht || t.type === Et ? t.children : t.type === "br" ? `
340
340
 
341
- ` : `<${t.type} ${Fs(t)}>${Array.from(t.children).map(Ge).join("")}</${t.type}>`;
341
+ ` : `<${t.type} ${Us(t)}>${Array.from(t.children).map(Ge).join("")}</${t.type}>`;
342
342
  }
343
- const Ce = /* @__PURE__ */ new WeakMap(), Ns = {
343
+ const Ce = /* @__PURE__ */ new WeakMap(), Ws = {
344
344
  mounted(t, { value: s, modifiers: e }) {
345
345
  const r = typeof s == "function" ? s : null, n = () => {
346
346
  const a = t.getBoundingClientRect();
@@ -352,19 +352,238 @@ const Ce = /* @__PURE__ */ new WeakMap(), Ns = {
352
352
  var s;
353
353
  (s = Ce.get(t)) == null || s.unobserve(t), Ce.delete(t);
354
354
  }
355
- }, Ws = {
356
- measure: Ns
357
- }, Ks = {
355
+ };
356
+ function et(t, s) {
357
+ const { baseClasses: e, ...r } = t, { baseClasses: n, ...a } = s, i = ls(n, a);
358
+ return M(i(r), o(e));
359
+ }
360
+ function M(...t) {
361
+ return os(as(t));
362
+ }
363
+ function tt(t, s) {
364
+ const e = R.on(t, s);
365
+ ge(() => e());
366
+ }
367
+ const Ks = {
368
+ required: (t) => t ? void 0 : "required"
369
+ };
370
+ function Qs(t, s) {
371
+ var e;
372
+ if (t == null)
373
+ return !0;
374
+ switch (s.type) {
375
+ case "string":
376
+ return typeof t == "string";
377
+ case "enum":
378
+ return !!((e = s.values) != null && e.includes(t));
379
+ case "number":
380
+ return typeof t == "number";
381
+ case "boolean":
382
+ return typeof t == "boolean";
383
+ case "date":
384
+ return t instanceof Date;
385
+ case "object":
386
+ return typeof t == "object";
387
+ }
388
+ }
389
+ const de = { ...Ks };
390
+ function dl(t, s) {
391
+ de[t] = s;
392
+ }
393
+ function Js(t, s) {
394
+ return Qs(t, s) ? [] : ["invalid_value"];
395
+ }
396
+ function Zs(t, s) {
397
+ var r;
398
+ const e = (r = de[s]) == null ? void 0 : r.call(de, t);
399
+ return e ? Je(e) : [];
400
+ }
401
+ const pl = Symbol(), je = /* @__PURE__ */ new WeakMap();
402
+ class Xs extends Qe {
403
+ constructor(e) {
404
+ super();
405
+ _(this, "errors");
406
+ _(this, "_fields");
407
+ _(this, "_data");
408
+ _(this, "_submitted");
409
+ _(this, "_errors");
410
+ _(this, "_listeners", {});
411
+ this._fields = e, this._submitted = U(!1), this._data = this.getInitialData(e), this._errors = this.getInitialErrors(e), je.set(
412
+ this,
413
+ c(() => !Object.values(this._errors).some((r) => r !== null))
414
+ ), this.errors = ve(this._errors);
415
+ }
416
+ get valid() {
417
+ var e;
418
+ return !!((e = je.get(this)) != null && e.value);
419
+ }
420
+ get submitted() {
421
+ return this._submitted.value;
422
+ }
423
+ setFieldValue(e, r) {
424
+ const n = this._fields[e] ?? Q(`Trying to set undefined '${B(e)}' field`);
425
+ this._data[e] = n.type === "string" && (n.trim ?? !0) ? B(r).trim() : r, this._submitted.value && this.validate();
426
+ }
427
+ getFieldValue(e) {
428
+ return this._data[e];
429
+ }
430
+ getFieldRules(e) {
431
+ var r, n;
432
+ return ((n = (r = this._fields[e]) == null ? void 0 : r.rules) == null ? void 0 : n.split("|")) ?? [];
433
+ }
434
+ getFieldType(e) {
435
+ var r;
436
+ return ((r = this._fields[e]) == null ? void 0 : r.type) ?? null;
437
+ }
438
+ data() {
439
+ return { ...this._data };
440
+ }
441
+ validate() {
442
+ const e = Object.entries(this._fields).reduce(
443
+ (r, [n, a]) => (r[n] = this.getFieldErrors(n, a), r),
444
+ {}
445
+ );
446
+ return this.resetErrors(e), this.valid;
447
+ }
448
+ reset(e = {}) {
449
+ this._submitted.value = !1, e.keepData || this.resetData(), e.keepErrors || this.resetErrors();
450
+ }
451
+ submit() {
452
+ var r;
453
+ this._submitted.value = !0;
454
+ const e = this.validate();
455
+ return e && ((r = this._listeners.submit) == null || r.forEach((n) => n())), e;
456
+ }
457
+ on(e, r) {
458
+ var n, a;
459
+ return (n = this._listeners)[e] ?? (n[e] = []), (a = this._listeners[e]) == null || a.push(r), () => this.off(e, r);
460
+ }
461
+ off(e, r) {
462
+ Se(this._listeners[e] ?? [], r);
463
+ }
464
+ async focus(e) {
465
+ var r;
466
+ await Oe(), (r = this._listeners.focus) == null || r.forEach((n) => n(e));
467
+ }
468
+ __get(e) {
469
+ return e in this._fields ? this.getFieldValue(e) : super.__get(e);
470
+ }
471
+ __set(e, r) {
472
+ if (!(e in this._fields)) {
473
+ super.__set(e, r);
474
+ return;
475
+ }
476
+ this.setFieldValue(e, r);
477
+ }
478
+ getFieldErrors(e, r) {
479
+ var l;
480
+ const n = [], a = this._data[e], i = ((l = r.rules) == null ? void 0 : l.split("|")) ?? [];
481
+ n.push(...Js(a, r));
482
+ for (const d of i)
483
+ d !== "required" && a == null || n.push(...Zs(a, d));
484
+ return n.length > 0 ? n : null;
485
+ }
486
+ getInitialData(e) {
487
+ if (this.static().isConjuring())
488
+ return {};
489
+ const r = Object.entries(e).reduce((n, [a, i]) => (n[a] = i.default ?? null, n), {});
490
+ return pe(r);
491
+ }
492
+ getInitialErrors(e) {
493
+ if (this.static().isConjuring())
494
+ return {};
495
+ const r = Object.keys(e).reduce((n, a) => (n[a] = null, n), {});
496
+ return pe(r);
497
+ }
498
+ resetData() {
499
+ for (const [e, r] of Object.entries(this._fields))
500
+ this._data[e] = r.default ?? null;
501
+ }
502
+ resetErrors(e) {
503
+ Object.keys(this._errors).forEach((r) => delete this._errors[r]), e && Object.assign(this._errors, e);
504
+ }
505
+ }
506
+ function st(t, s) {
507
+ const e = X("form", null), r = e == null ? void 0 : e.on("focus", (n) => t.name === n && s());
508
+ ge(() => r == null ? void 0 : r());
509
+ }
510
+ function rt(t) {
511
+ return new Xs(t);
512
+ }
513
+ function Ie() {
514
+ const t = Ne(), s = c(() => t.class);
515
+ return [c(() => Ot(t, "class")), s];
516
+ }
517
+ function ml(t) {
518
+ let s = Nt;
519
+ Vt(() => s = t()), ge(() => s());
520
+ }
521
+ function fl(t, s) {
522
+ const e = pe(O.get(t) ?? s);
523
+ return Me(e, () => O.set(t, Lt(e))), e;
524
+ }
525
+ function hl(t) {
526
+ const s = U(), e = c(t);
527
+ return Me(e, async () => s.value = await e.value, { immediate: !0 }), s;
528
+ }
529
+ function gl(t, s) {
530
+ const e = s ? t : {}, r = s ?? t, n = U(e.initial ?? null), a = Wt((i) => n.value = i, e.delay ?? 300);
531
+ return Y(() => a(r())), n;
532
+ }
533
+ let ie = null;
534
+ function Ys() {
535
+ return ee(new Ae(), (t) => {
536
+ t.link = function(s) {
537
+ const e = Ae.prototype.link.apply(this, [s]);
538
+ return s.href.startsWith("#") ? e : e.replace("<a", '<a target="_blank"');
539
+ };
540
+ });
541
+ }
542
+ function Gs(t) {
543
+ const s = Ze(t, /<a[^>]*href="#action:([^"]+)"[^>]*>([^<]+)<\/a>/g);
544
+ for (const [e, r, n] of s)
545
+ t = t.replace(e, `<button type="button" data-markdown-action="${r}">${n}</button>`);
546
+ return t;
547
+ }
548
+ function er(t) {
549
+ const s = Ze(t, /<a[^>]*href="#route:([^"]+)"[^>]*>([^<]+)<\/a>/g);
550
+ for (const [e, r, n] of s) {
551
+ const a = (ie == null ? void 0 : ie.resolve(r)) ?? r;
552
+ t = t.replace(e, `<a data-markdown-route="${r}" href="${a}">${n}</a>`);
553
+ }
554
+ return t;
555
+ }
556
+ function tr() {
557
+ return ie;
558
+ }
559
+ function vl(t) {
560
+ ie = t;
561
+ }
562
+ function sr(t) {
563
+ let s = ns(t, { renderer: Ys(), async: !1 });
564
+ return s = nt(s), s = Gs(s), s = er(s), s;
565
+ }
566
+ function nt(t) {
567
+ return rs.sanitize(t, { ADD_ATTR: ["target"] });
568
+ }
569
+ const rr = {
570
+ mounted(t, { value: s }) {
571
+ t.innerHTML = nt(s);
572
+ }
573
+ }, nr = {
574
+ measure: Ws,
575
+ "safe-html": rr
576
+ }, ar = {
358
577
  install(t, s) {
359
578
  const e = {
360
- ...Ws,
579
+ ...nr,
361
580
  ...s.directives
362
581
  };
363
582
  for (const [r, n] of Object.entries(e))
364
583
  t.directive(r, n);
365
584
  }
366
585
  };
367
- class Qs extends we {
586
+ class lr extends we {
368
587
  constructor() {
369
588
  super(...arguments);
370
589
  _(this, "cache");
@@ -385,23 +604,23 @@ class Qs extends we {
385
604
  });
386
605
  }
387
606
  }
388
- const cl = te(Qs);
389
- class Js extends we {
607
+ const bl = te(lr);
608
+ class or extends we {
390
609
  async purge() {
391
610
  await R.emit("purge-storage");
392
611
  }
393
612
  }
394
- const et = te(Js);
395
- function dl(t, s) {
613
+ const at = te(or);
614
+ function yl(t, s) {
396
615
  return {
397
616
  ...t,
398
617
  ...oe(s, Object.keys(t))
399
618
  };
400
619
  }
401
- const Zs = {
620
+ const ir = {
402
621
  $app: A,
403
622
  $events: R,
404
- $storage: et
623
+ $storage: at
405
624
  };
406
625
  async function $e(t, s) {
407
626
  await Promise.all(
@@ -413,28 +632,28 @@ async function $e(t, s) {
413
632
  })
414
633
  ), Object.assign(t.config.globalProperties, s), (J() || Ee()) && Object.assign(globalThis, s);
415
634
  }
416
- const Xs = {
635
+ const ur = {
417
636
  async install(t, s) {
418
637
  var r;
419
638
  const e = {
420
- ...Zs,
639
+ ...ir,
421
640
  ...s.services
422
641
  };
423
- t.use(Rs()), (r = s.settings) == null || r.forEach((n) => A.addSetting(n)), await $e(t, e);
642
+ t.use(Ps()), (r = s.settings) == null || r.forEach((n) => A.addSetting(n)), await $e(t, e);
424
643
  }
425
- }, tt = 768, me = {
644
+ }, lt = 768, me = {
426
645
  Mobile: "mobile",
427
646
  Desktop: "desktop"
428
647
  };
429
- function st() {
430
- return globalThis.innerWidth > tt ? me.Desktop : me.Mobile;
648
+ function ot() {
649
+ return globalThis.innerWidth > lt ? me.Desktop : me.Mobile;
431
650
  }
432
- const Ys = ye({
651
+ const cr = ye({
433
652
  name: "ui",
434
653
  initialState: {
435
654
  modals: [],
436
655
  toasts: [],
437
- layout: st()
656
+ layout: ot()
438
657
  },
439
658
  computed: {
440
659
  desktop: ({ layout: t }) => t === me.Desktop,
@@ -442,7 +661,7 @@ const Ys = ye({
442
661
  openModals: ({ modals: t }) => t.filter(({ closing: s }) => !s)
443
662
  }
444
663
  });
445
- class Gs extends Ys {
664
+ class dr extends cr {
446
665
  constructor() {
447
666
  super(...arguments);
448
667
  _(this, "modalCallbacks", {});
@@ -558,7 +777,7 @@ class Gs extends Ys {
558
777
  }
559
778
  async closeAllModals() {
560
779
  for (; this.modals.length > 0; )
561
- await this.closeModal(Ut(this.modals[this.modals.length - 1]).id);
780
+ await this.closeModal(Kt(this.modals[this.modals.length - 1]).id);
562
781
  }
563
782
  async boot() {
564
783
  this.watchModalEvents(), this.watchMountedEvent(), this.watchViewportBreakpoints();
@@ -590,11 +809,11 @@ class Gs extends Ys {
590
809
  watchViewportBreakpoints() {
591
810
  if (!globalThis.matchMedia)
592
811
  return;
593
- globalThis.matchMedia(`(min-width: ${tt}px)`).addEventListener("change", () => this.setState({ layout: st() }));
812
+ globalThis.matchMedia(`(min-width: ${lt}px)`).addEventListener("change", () => this.setState({ layout: ot() }));
594
813
  }
595
814
  }
596
- const z = te(Gs);
597
- class er {
815
+ const z = te(dr);
816
+ class pr {
598
817
  constructor(s, e) {
599
818
  this.locale = s, this.fallbackLocale = e;
600
819
  }
@@ -620,7 +839,7 @@ class er {
620
839
  return J() && console.warn("Lang provider is missing"), e;
621
840
  }
622
841
  }
623
- const tr = ye({
842
+ const mr = ye({
624
843
  name: "lang",
625
844
  persist: ["locale", "fallbackLocale"],
626
845
  initialState: {
@@ -629,11 +848,11 @@ const tr = ye({
629
848
  fallbackLocale: "en"
630
849
  }
631
850
  });
632
- class sr extends tr {
851
+ class fr extends mr {
633
852
  constructor() {
634
853
  super();
635
854
  _(this, "provider");
636
- this.provider = new er(
855
+ this.provider = new pr(
637
856
  this.getState("locale") ?? this.getBrowserLocale(),
638
857
  this.getState("fallbackLocale")
639
858
  );
@@ -661,7 +880,7 @@ class sr extends tr {
661
880
  );
662
881
  }
663
882
  }
664
- const Z = te(sr), rt = Z.translate.bind(Z), S = Z.translateWithDefault.bind(Z), rr = ye({
883
+ const Z = te(fr), it = Z.translate.bind(Z), S = Z.translateWithDefault.bind(Z), hr = ye({
665
884
  name: "errors",
666
885
  initialState: {
667
886
  logs: [],
@@ -674,7 +893,7 @@ const Z = te(sr), rt = Z.translate.bind(Z), S = Z.translateWithDefault.bind(Z),
674
893
  hasStartupErrors: ({ startupErrors: t }) => t.length > 0
675
894
  }
676
895
  });
677
- class nr extends rr {
896
+ class gr extends hr {
678
897
  constructor() {
679
898
  super(...arguments);
680
899
  _(this, "forceReporting", !1);
@@ -750,7 +969,7 @@ class nr extends rr {
750
969
  return ce(e) && "title" in e;
751
970
  }
752
971
  async createErrorReport(e) {
753
- return typeof e == "string" ? { title: e } : e instanceof Error || e instanceof be ? this.createErrorReportFromError(e) : ce(e) ? Ze({
972
+ return typeof e == "string" ? { title: e } : e instanceof Error || e instanceof be ? this.createErrorReportFromError(e) : ce(e) ? Xe({
754
973
  title: B(
755
974
  e.name ?? e.title ?? S("errors.unknown", "Unknown Error")
756
975
  ),
@@ -776,44 +995,7 @@ class nr extends rr {
776
995
  };
777
996
  }
778
997
  }
779
- const nt = te(nr);
780
- let ie = null;
781
- function ar() {
782
- return ee(new Ae(), (t) => {
783
- t.link = function(s) {
784
- const e = Ae.prototype.link.apply(this, [s]);
785
- return s.href.startsWith("#") ? e : e.replace("<a", '<a target="_blank"');
786
- };
787
- });
788
- }
789
- function lr(t) {
790
- const s = Xe(t, /<a[^>]*href="#action:([^"]+)"[^>]*>([^<]+)<\/a>/g);
791
- for (const [e, r, n] of s)
792
- t = t.replace(e, `<button type="button" data-markdown-action="${r}">${n}</button>`);
793
- return t;
794
- }
795
- function or(t) {
796
- const s = Xe(t, /<a[^>]*href="#route:([^"]+)"[^>]*>([^<]+)<\/a>/g);
797
- for (const [e, r, n] of s) {
798
- const a = (ie == null ? void 0 : ie.resolve(r)) ?? r;
799
- t = t.replace(e, `<a data-markdown-route="${r}" href="${a}">${n}</a>`);
800
- }
801
- return t;
802
- }
803
- function ir() {
804
- return ie;
805
- }
806
- function pl(t) {
807
- ie = t;
808
- }
809
- function ur(t) {
810
- let s = rs(t, { renderer: ar(), async: !1 });
811
- return s = cr(s), s = lr(s), s = or(s), s;
812
- }
813
- function cr(t) {
814
- return ss.sanitize(t, { ADD_ATTR: ["target"] });
815
- }
816
- const at = /* @__PURE__ */ g({
998
+ const ut = te(gr), ct = /* @__PURE__ */ g({
817
999
  __name: "HeadlessButton",
818
1000
  props: {
819
1001
  class: {},
@@ -831,7 +1013,7 @@ const at = /* @__PURE__ */ g({
831
1013
  setup(t) {
832
1014
  const s = c(() => t.as ? { as: t.as } : t.route ? {
833
1015
  as: z.resolveComponent("router-link") ?? "a",
834
- to: Ze({
1016
+ to: Xe({
835
1017
  name: t.route,
836
1018
  params: t.routeParams,
837
1019
  query: t.routeQuery
@@ -844,7 +1026,7 @@ const at = /* @__PURE__ */ g({
844
1026
  as: "button",
845
1027
  type: t.submit ? "submit" : "button"
846
1028
  });
847
- return (e, r) => (u(), h(o(os), H({
1029
+ return (e, r) => (u(), h(o(is), H({
848
1030
  class: t.class,
849
1031
  "as-child": e.asChild,
850
1032
  disabled: e.disabled
@@ -855,15 +1037,7 @@ const at = /* @__PURE__ */ g({
855
1037
  _: 3
856
1038
  }, 16, ["class", "as-child", "disabled"]));
857
1039
  }
858
- });
859
- function lt(t, s) {
860
- const { baseClasses: e, ...r } = t, { baseClasses: n, ...a } = s, i = as(n, a);
861
- return M(i(r), o(e));
862
- }
863
- function M(...t) {
864
- return ls(ns(t));
865
- }
866
- const q = /* @__PURE__ */ g({
1040
+ }), q = /* @__PURE__ */ g({
867
1041
  __name: "Button",
868
1042
  props: {
869
1043
  class: {},
@@ -879,7 +1053,7 @@ const q = /* @__PURE__ */ g({
879
1053
  as: {}
880
1054
  },
881
1055
  setup(t) {
882
- const s = N(t, ["class", "size", "variant", "disabled"]), e = c(() => lt(
1056
+ const s = N(t, ["class", "size", "variant", "disabled"]), e = c(() => et(
883
1057
  { baseClasses: t.class, variant: t.variant, size: t.size, disabled: t.disabled },
884
1058
  {
885
1059
  baseClasses: "focus-visible:outline focus-visible:outline-2 focus-visible:outline-offset-2",
@@ -974,7 +1148,7 @@ const q = /* @__PURE__ */ g({
974
1148
  }
975
1149
  }
976
1150
  ));
977
- return (r, n) => (u(), h(at, H({
1151
+ return (r, n) => (u(), h(ct, H({
978
1152
  class: e.value,
979
1153
  disabled: r.disabled
980
1154
  }, s), {
@@ -985,180 +1159,10 @@ const q = /* @__PURE__ */ g({
985
1159
  }, 16, ["class", "disabled"]));
986
1160
  }
987
1161
  });
988
- function dr(t) {
1162
+ function vr(t) {
989
1163
  return typeof t == "object" && t !== null && "label" in t;
990
1164
  }
991
- function ot(t, s) {
992
- const e = R.on(t, s);
993
- ge(() => e());
994
- }
995
- const pr = {
996
- required: (t) => t ? void 0 : "required"
997
- };
998
- function mr(t, s) {
999
- var e;
1000
- if (t == null)
1001
- return !0;
1002
- switch (s.type) {
1003
- case "string":
1004
- return typeof t == "string";
1005
- case "enum":
1006
- return !!((e = s.values) != null && e.includes(t));
1007
- case "number":
1008
- return typeof t == "number";
1009
- case "boolean":
1010
- return typeof t == "boolean";
1011
- case "date":
1012
- return t instanceof Date;
1013
- case "object":
1014
- return typeof t == "object";
1015
- }
1016
- }
1017
- const de = { ...pr };
1018
- function ml(t, s) {
1019
- de[t] = s;
1020
- }
1021
- function fr(t, s) {
1022
- return mr(t, s) ? [] : ["invalid_value"];
1023
- }
1024
- function hr(t, s) {
1025
- var r;
1026
- const e = (r = de[s]) == null ? void 0 : r.call(de, t);
1027
- return e ? Je(e) : [];
1028
- }
1029
- const fl = Symbol(), je = /* @__PURE__ */ new WeakMap();
1030
- class gr extends Qe {
1031
- constructor(e) {
1032
- super();
1033
- _(this, "errors");
1034
- _(this, "_fields");
1035
- _(this, "_data");
1036
- _(this, "_submitted");
1037
- _(this, "_errors");
1038
- _(this, "_listeners", {});
1039
- this._fields = e, this._submitted = U(!1), this._data = this.getInitialData(e), this._errors = this.getInitialErrors(e), je.set(
1040
- this,
1041
- c(() => !Object.values(this._errors).some((r) => r !== null))
1042
- ), this.errors = ve(this._errors);
1043
- }
1044
- get valid() {
1045
- var e;
1046
- return !!((e = je.get(this)) != null && e.value);
1047
- }
1048
- get submitted() {
1049
- return this._submitted.value;
1050
- }
1051
- setFieldValue(e, r) {
1052
- const n = this._fields[e] ?? Q(`Trying to set undefined '${B(e)}' field`);
1053
- this._data[e] = n.type === "string" && (n.trim ?? !0) ? B(r).trim() : r, this._submitted.value && this.validate();
1054
- }
1055
- getFieldValue(e) {
1056
- return this._data[e];
1057
- }
1058
- getFieldRules(e) {
1059
- var r, n;
1060
- return ((n = (r = this._fields[e]) == null ? void 0 : r.rules) == null ? void 0 : n.split("|")) ?? [];
1061
- }
1062
- getFieldType(e) {
1063
- var r;
1064
- return ((r = this._fields[e]) == null ? void 0 : r.type) ?? null;
1065
- }
1066
- data() {
1067
- return { ...this._data };
1068
- }
1069
- validate() {
1070
- const e = Object.entries(this._fields).reduce(
1071
- (r, [n, a]) => (r[n] = this.getFieldErrors(n, a), r),
1072
- {}
1073
- );
1074
- return this.resetErrors(e), this.valid;
1075
- }
1076
- reset(e = {}) {
1077
- this._submitted.value = !1, e.keepData || this.resetData(), e.keepErrors || this.resetErrors();
1078
- }
1079
- submit() {
1080
- var r;
1081
- this._submitted.value = !0;
1082
- const e = this.validate();
1083
- return e && ((r = this._listeners.submit) == null || r.forEach((n) => n())), e;
1084
- }
1085
- on(e, r) {
1086
- var n, a;
1087
- return (n = this._listeners)[e] ?? (n[e] = []), (a = this._listeners[e]) == null || a.push(r), () => this.off(e, r);
1088
- }
1089
- off(e, r) {
1090
- Se(this._listeners[e] ?? [], r);
1091
- }
1092
- async focus(e) {
1093
- var r;
1094
- await Oe(), (r = this._listeners.focus) == null || r.forEach((n) => n(e));
1095
- }
1096
- __get(e) {
1097
- return e in this._fields ? this.getFieldValue(e) : super.__get(e);
1098
- }
1099
- __set(e, r) {
1100
- if (!(e in this._fields)) {
1101
- super.__set(e, r);
1102
- return;
1103
- }
1104
- this.setFieldValue(e, r);
1105
- }
1106
- getFieldErrors(e, r) {
1107
- var l;
1108
- const n = [], a = this._data[e], i = ((l = r.rules) == null ? void 0 : l.split("|")) ?? [];
1109
- n.push(...fr(a, r));
1110
- for (const d of i)
1111
- d !== "required" && a == null || n.push(...hr(a, d));
1112
- return n.length > 0 ? n : null;
1113
- }
1114
- getInitialData(e) {
1115
- if (this.static().isConjuring())
1116
- return {};
1117
- const r = Object.entries(e).reduce((n, [a, i]) => (n[a] = i.default ?? null, n), {});
1118
- return pe(r);
1119
- }
1120
- getInitialErrors(e) {
1121
- if (this.static().isConjuring())
1122
- return {};
1123
- const r = Object.keys(e).reduce((n, a) => (n[a] = null, n), {});
1124
- return pe(r);
1125
- }
1126
- resetData() {
1127
- for (const [e, r] of Object.entries(this._fields))
1128
- this._data[e] = r.default ?? null;
1129
- }
1130
- resetErrors(e) {
1131
- Object.keys(this._errors).forEach((r) => delete this._errors[r]), e && Object.assign(this._errors, e);
1132
- }
1133
- }
1134
- function it(t, s) {
1135
- const e = X("form", null), r = e == null ? void 0 : e.on("focus", (n) => t.name === n && s());
1136
- ge(() => r == null ? void 0 : r());
1137
- }
1138
- function ut(t) {
1139
- return new gr(t);
1140
- }
1141
- function Ie() {
1142
- const t = Ne(), s = c(() => t.class);
1143
- return [c(() => Ot(t, "class")), s];
1144
- }
1145
- function hl(t) {
1146
- let s = Nt;
1147
- Et(() => s = t()), ge(() => s());
1148
- }
1149
- function gl(t, s) {
1150
- const e = pe(O.get(t) ?? s);
1151
- return Me(e, () => O.set(t, Vt(e))), e;
1152
- }
1153
- function vl(t) {
1154
- const s = U(), e = c(t);
1155
- return Me(e, async () => s.value = await e.value, { immediate: !0 }), s;
1156
- }
1157
- function bl(t, s) {
1158
- const e = s ? t : {}, r = s ?? t, n = U(e.initial ?? null), a = Wt((i) => n.value = i, e.delay ?? 300);
1159
- return Y(() => a(r())), n;
1160
- }
1161
- const ct = /* @__PURE__ */ g({
1165
+ const dt = /* @__PURE__ */ g({
1162
1166
  __name: "HeadlessSelectValue",
1163
1167
  setup(t) {
1164
1168
  const s = V(
@@ -1178,28 +1182,28 @@ const ct = /* @__PURE__ */ g({
1178
1182
  placeholder: o(s).placeholder
1179
1183
  }, null, 8, ["placeholder"]));
1180
1184
  }
1181
- }), dt = /* @__PURE__ */ g({
1185
+ }), pt = /* @__PURE__ */ g({
1182
1186
  __name: "HeadlessSelectTrigger",
1183
1187
  setup(t) {
1184
1188
  const s = V(
1185
1189
  "select",
1186
1190
  "<HeadlessSelectTrigger> must be a child of a <HeadlessSelect>"
1187
1191
  );
1188
- return (e, r) => (u(), h(o(is), {
1192
+ return (e, r) => (u(), h(o(us), {
1189
1193
  id: o(s).id
1190
1194
  }, {
1191
1195
  default: f(() => [
1192
1196
  w(e.$slots, "default", {}, () => [
1193
- p(ct, {
1197
+ p(dt, {
1194
1198
  placeholder: o(s).placeholder
1195
1199
  }, null, 8, ["placeholder"]),
1196
- p(o(us))
1200
+ p(o(cs))
1197
1201
  ])
1198
1202
  ]),
1199
1203
  _: 3
1200
1204
  }, 8, ["id"]));
1201
1205
  }
1202
- }), pt = /* @__PURE__ */ g({
1206
+ }), mt = /* @__PURE__ */ g({
1203
1207
  __name: "HeadlessSelectOption",
1204
1208
  props: {
1205
1209
  value: {},
@@ -1217,9 +1221,9 @@ const ct = /* @__PURE__ */ g({
1217
1221
  const r = (n = s.options) == null ? void 0 : n.find((a) => a.value === t.value);
1218
1222
  return r ? r.label : B(t.value);
1219
1223
  });
1220
- return (r, n) => (u(), h(o(cs), ne(ae(r.$props)), {
1224
+ return (r, n) => (u(), h(o(ds), ne(ae(r.$props)), {
1221
1225
  default: f(() => [
1222
- p(o(ds), null, {
1226
+ p(o(ps), null, {
1223
1227
  default: f(() => [
1224
1228
  w(r.$slots, "default", {}, () => [
1225
1229
  I(x(e.value), 1)
@@ -1231,7 +1235,7 @@ const ct = /* @__PURE__ */ g({
1231
1235
  _: 3
1232
1236
  }, 16));
1233
1237
  }
1234
- }), mt = /* @__PURE__ */ g({
1238
+ }), ft = /* @__PURE__ */ g({
1235
1239
  __name: "HeadlessSelectOptions",
1236
1240
  props: {
1237
1241
  class: {},
@@ -1242,9 +1246,9 @@ const ct = /* @__PURE__ */ g({
1242
1246
  "select",
1243
1247
  "<HeadlessSelectOptions> must be a child of a <HeadlessSelect>"
1244
1248
  ), e = c(() => M("min-w-(--reka-select-trigger-width) max-h-(--reka-select-content-available-height)", t.class));
1245
- return (r, n) => (u(), h(o(ps), null, {
1249
+ return (r, n) => (u(), h(o(ms), null, {
1246
1250
  default: f(() => [
1247
- p(o(ms), {
1251
+ p(o(fs), {
1248
1252
  position: "popper",
1249
1253
  class: k(e.value),
1250
1254
  align: o(s).align,
@@ -1252,12 +1256,12 @@ const ct = /* @__PURE__ */ g({
1252
1256
  "side-offset": 4
1253
1257
  }, {
1254
1258
  default: f(() => [
1255
- p(o(fs), {
1259
+ p(o(hs), {
1256
1260
  class: k(r.innerClass)
1257
1261
  }, {
1258
1262
  default: f(() => [
1259
1263
  w(r.$slots, "default", {}, () => [
1260
- (u(!0), b(D, null, F(o(s).options ?? [], (a) => (u(), h(pt, {
1264
+ (u(!0), b(D, null, F(o(s).options ?? [], (a) => (u(), h(mt, {
1261
1265
  key: a.key,
1262
1266
  value: a.value
1263
1267
  }, null, 8, ["value"]))), 128))
@@ -1272,7 +1276,7 @@ const ct = /* @__PURE__ */ g({
1272
1276
  _: 3
1273
1277
  }));
1274
1278
  }
1275
- }), vr = /* @__PURE__ */ g({
1279
+ }), br = /* @__PURE__ */ g({
1276
1280
  inheritAttrs: !1,
1277
1281
  __name: "HeadlessSelect",
1278
1282
  props: {
@@ -1294,7 +1298,7 @@ const ct = /* @__PURE__ */ g({
1294
1298
  setup(t, { expose: s, emit: e }) {
1295
1299
  const r = e, n = X("form", null), a = c(() => n && t.name ? n.getFieldValue(t.name) : t.modelValue), i = c(() => a.value), l = c(() => !n || !t.name ? null : n.errors[t.name] ?? null), d = c(() => t.options ? t.options.map((m) => ({
1296
1300
  key: re(),
1297
- label: t.renderOption ? t.renderOption(m) : dr(m) ? Kt(m.label) : B(m),
1301
+ label: t.renderOption ? t.renderOption(m) : vr(m) ? Qt(m.label) : B(m),
1298
1302
  value: m
1299
1303
  })) : null), v = {
1300
1304
  labelClass: t.labelClass,
@@ -1328,7 +1332,7 @@ const ct = /* @__PURE__ */ g({
1328
1332
  function $(m) {
1329
1333
  v.update(m);
1330
1334
  }
1331
- return le("select", v), s(v), (m, C) => (u(), h(o(hs), {
1335
+ return le("select", v), s(v), (m, C) => (u(), h(o(gs), {
1332
1336
  "model-value": i.value,
1333
1337
  by: m.compareOptions,
1334
1338
  "onUpdate:modelValue": C[0] || (C[0] = (L) => $(L))
@@ -1340,8 +1344,8 @@ const ct = /* @__PURE__ */ g({
1340
1344
  modelValue: m.modelValue,
1341
1345
  open: L
1342
1346
  }, () => [
1343
- p(dt),
1344
- p(mt)
1347
+ p(pt),
1348
+ p(ft)
1345
1349
  ])
1346
1350
  ]),
1347
1351
  _: 2
@@ -1361,7 +1365,7 @@ const ct = /* @__PURE__ */ g({
1361
1365
  "select",
1362
1366
  "<HeadlessSelectLabel> must be a child of a <HeadlessSelect>"
1363
1367
  ), e = He(), r = c(() => !!(s.label || e.default));
1364
- return (n, a) => r.value ? (u(), h(o(gs), H({
1368
+ return (n, a) => r.value ? (u(), h(o(vs), H({
1365
1369
  key: 0,
1366
1370
  for: o(s).id
1367
1371
  }, n.$props), {
@@ -1373,7 +1377,7 @@ const ct = /* @__PURE__ */ g({
1373
1377
  _: 3
1374
1378
  }, 16, ["for"])) : T("", !0);
1375
1379
  }
1376
- }), ft = /* @__PURE__ */ g({
1380
+ }), ht = /* @__PURE__ */ g({
1377
1381
  __name: "SelectLabel",
1378
1382
  props: {
1379
1383
  class: {}
@@ -1406,7 +1410,7 @@ const ct = /* @__PURE__ */ g({
1406
1410
  "relative flex max-w-[calc(100vw-2rem)] cursor-pointer items-center truncate rounded-md gap-2 px-2 py-1 text-sm select-none *:truncate group-data-[highlighted]:bg-gray-100 group-data-[state=checked]:font-semibold group-data-[state=unchecked]:opacity-50",
1407
1411
  t.innerClass
1408
1412
  ));
1409
- return (r, n) => (u(), h(pt, {
1413
+ return (r, n) => (u(), h(mt, {
1410
1414
  class: k(s.value),
1411
1415
  value: r.value
1412
1416
  }, {
@@ -1420,7 +1424,7 @@ const ct = /* @__PURE__ */ g({
1420
1424
  _: 3
1421
1425
  }, 8, ["class", "value"]));
1422
1426
  }
1423
- }), ht = /* @__PURE__ */ g({
1427
+ }), gt = /* @__PURE__ */ g({
1424
1428
  __name: "SelectOptions",
1425
1429
  props: {
1426
1430
  class: {}
@@ -1431,7 +1435,7 @@ const ct = /* @__PURE__ */ g({
1431
1435
  s.optionsClass,
1432
1436
  t.class
1433
1437
  ));
1434
- return (r, n) => (u(), h(mt, {
1438
+ return (r, n) => (u(), h(ft, {
1435
1439
  class: k(e.value)
1436
1440
  }, {
1437
1441
  default: f(() => {
@@ -1466,20 +1470,20 @@ const ct = /* @__PURE__ */ g({
1466
1470
  _: 3
1467
1471
  }, 8, ["class"]));
1468
1472
  }
1469
- }), br = {
1473
+ }), yr = {
1470
1474
  viewBox: "0 0 20 20",
1471
1475
  width: "1.2em",
1472
1476
  height: "1.2em"
1473
1477
  };
1474
- function yr(t, s) {
1475
- return u(), b("svg", br, s[0] || (s[0] = [
1478
+ function wr(t, s) {
1479
+ return u(), b("svg", yr, s[0] || (s[0] = [
1476
1480
  y("path", {
1477
1481
  fill: "currentColor",
1478
1482
  d: "m9.293 12.95l.707.707L15.657 8l-1.414-1.414L10 10.828L5.757 6.586L4.343 8z"
1479
1483
  }, null, -1)
1480
1484
  ]));
1481
1485
  }
1482
- const wr = E({ name: "zondicons-cheveron-down", render: yr }), gt = /* @__PURE__ */ g({
1486
+ const $r = E({ name: "zondicons-cheveron-down", render: wr }), vt = /* @__PURE__ */ g({
1483
1487
  __name: "SelectTrigger",
1484
1488
  props: {
1485
1489
  class: {}
@@ -1491,17 +1495,17 @@ const wr = E({ name: "zondicons-cheveron-down", render: yr }), gt = /* @__PURE__
1491
1495
  { "mt-1": s.label },
1492
1496
  t.class
1493
1497
  ));
1494
- return (r, n) => (u(), h(dt, {
1498
+ return (r, n) => (u(), h(pt, {
1495
1499
  class: k(e.value)
1496
1500
  }, {
1497
1501
  default: f(() => [
1498
- p(ct, { class: "col-start-1 row-start-1 truncate pr-6" }),
1499
- p(o(wr), { class: "col-start-1 row-start-1 size-5 self-center justify-self-end text-gray-500 sm:size-4" })
1502
+ p(dt, { class: "col-start-1 row-start-1 truncate pr-6" }),
1503
+ p(o($r), { class: "col-start-1 row-start-1 size-5 self-center justify-self-end text-gray-500 sm:size-4" })
1500
1504
  ]),
1501
1505
  _: 1
1502
1506
  }, 8, ["class"]));
1503
1507
  }
1504
- }), $r = /* @__PURE__ */ g({
1508
+ }), _r = /* @__PURE__ */ g({
1505
1509
  __name: "Select",
1506
1510
  props: {
1507
1511
  as: {},
@@ -1521,20 +1525,20 @@ const wr = E({ name: "zondicons-cheveron-down", render: yr }), gt = /* @__PURE__
1521
1525
  emits: ["update:modelValue"],
1522
1526
  setup(t) {
1523
1527
  const { forwardRef: s } = Ve();
1524
- return (e, r) => (u(), h(vr, H({ ref: o(s) }, e.$props, {
1528
+ return (e, r) => (u(), h(br, H({ ref: o(s) }, e.$props, {
1525
1529
  "onUpdate:modelValue": r[0] || (r[0] = (n) => e.$emit("update:modelValue", n))
1526
1530
  }), {
1527
1531
  default: f(() => [
1528
- p(ft),
1532
+ p(ht),
1529
1533
  w(e.$slots, "default", {}, () => [
1530
- p(gt),
1531
- p(ht)
1534
+ p(vt),
1535
+ p(gt)
1532
1536
  ])
1533
1537
  ]),
1534
1538
  _: 3
1535
1539
  }, 16));
1536
1540
  }
1537
- }), _r = { class: "grow" }, xr = /* @__PURE__ */ g({
1541
+ }), xr = { class: "grow" }, Cr = /* @__PURE__ */ g({
1538
1542
  __name: "Language",
1539
1543
  setup(t) {
1540
1544
  const s = Z.getBrowserLocale(), e = c(() => [null, ...Z.locales]);
@@ -1543,7 +1547,7 @@ const wr = E({ name: "zondicons-cheveron-down", render: yr }), gt = /* @__PURE__
1543
1547
  locale: j.locales[s] ?? s
1544
1548
  });
1545
1549
  }
1546
- return (n, a) => (u(), h($r, {
1550
+ return (n, a) => (u(), h(_r, {
1547
1551
  modelValue: n.$lang.locale,
1548
1552
  "onUpdate:modelValue": a[0] || (a[0] = (i) => n.$lang.locale = i),
1549
1553
  class: "flex flex-col items-start md:flex-row",
@@ -1552,8 +1556,8 @@ const wr = E({ name: "zondicons-cheveron-down", render: yr }), gt = /* @__PURE__
1552
1556
  "render-option": r
1553
1557
  }, {
1554
1558
  default: f(() => [
1555
- y("div", _r, [
1556
- p(ft, { class: "text-base font-semibold" }, {
1559
+ y("div", xr, [
1560
+ p(ht, { class: "text-base font-semibold" }, {
1557
1561
  default: f(() => [
1558
1562
  I(x(n.$td("settings.locale", "Language")), 1)
1559
1563
  ]),
@@ -1567,25 +1571,25 @@ const wr = E({ name: "zondicons-cheveron-down", render: yr }), gt = /* @__PURE__
1567
1571
  ]),
1568
1572
  p(q, {
1569
1573
  variant: "ghost",
1570
- as: gt,
1574
+ as: vt,
1571
1575
  class: "grid w-auto outline-none"
1572
1576
  }),
1573
- p(ht)
1577
+ p(gt)
1574
1578
  ]),
1575
1579
  _: 1
1576
1580
  }, 8, ["modelValue", "options"]));
1577
1581
  }
1578
- }), Cr = [
1582
+ }), kr = [
1579
1583
  {
1580
1584
  priority: 100,
1581
- component: xr
1585
+ component: Cr
1582
1586
  }
1583
- ], kr = { $lang: Z }, Sr = {
1587
+ ], Sr = { $lang: Z }, Tr = {
1584
1588
  async install(t) {
1585
1589
  var s;
1586
- (s = t.config.globalProperties).$t ?? (s.$t = rt), t.config.globalProperties.$td = S, Cr.forEach((e) => A.addSetting(e)), await $e(t, kr);
1590
+ (s = t.config.globalProperties).$t ?? (s.$t = it), t.config.globalProperties.$td = S, kr.forEach((e) => A.addSetting(e)), await $e(t, Sr);
1587
1591
  }
1588
- }, Tr = /* @__PURE__ */ g({
1592
+ }, Mr = /* @__PURE__ */ g({
1589
1593
  __name: "Markdown",
1590
1594
  props: {
1591
1595
  as: {},
@@ -1597,12 +1601,12 @@ const wr = E({ name: "zondicons-cheveron-down", render: yr }), gt = /* @__PURE__
1597
1601
  actions: {}
1598
1602
  },
1599
1603
  setup(t) {
1600
- const s = Ne(), e = He(), r = c(() => e.default ? e.default().map(Ge).join("") : t.text ?? (t.langKey && (t.langDefault ? S(t.langKey, t.langDefault, t.langParams ?? {}) : rt(t.langKey, t.langParams ?? {})))), n = c(() => {
1604
+ const s = Ne(), e = He(), r = c(() => e.default ? e.default().map(Ge).join("") : t.text ?? (t.langKey && (t.langDefault ? S(t.langKey, t.langDefault, t.langParams ?? {}) : it(t.langKey, t.langParams ?? {})))), n = c(() => {
1601
1605
  if (!r.value)
1602
1606
  return null;
1603
- let l = ur(r.value);
1607
+ let l = sr(r.value);
1604
1608
  return t.inline && (l = l.replace("<p>", "<span>").replace("</p>", "</span>")), l;
1605
- }), a = () => Lt(t.as ?? (t.inline ? "span" : "div"), {
1609
+ }), a = () => It(t.as ?? (t.inline ? "span" : "div"), {
1606
1610
  innerHTML: n.value,
1607
1611
  onClick: i,
1608
1612
  ...s,
@@ -1616,19 +1620,19 @@ const wr = E({ name: "zondicons-cheveron-down", render: yr }), gt = /* @__PURE__
1616
1620
  return;
1617
1621
  }
1618
1622
  if (Pe(d, HTMLAnchorElement) && d.dataset.markdownRoute) {
1619
- const m = ir();
1623
+ const m = tr();
1620
1624
  m && (l.preventDefault(), m.visit(d.dataset.markdownRoute));
1621
1625
  return;
1622
1626
  }
1623
1627
  }
1624
1628
  return (l, d) => (u(), h(a));
1625
1629
  }
1626
- }), Mr = (t, s) => {
1630
+ }), Hr = (t, s) => {
1627
1631
  const e = t.__vccOpts || t;
1628
1632
  for (const [r, n] of s)
1629
1633
  e[r] = n;
1630
1634
  return e;
1631
- }, P = /* @__PURE__ */ Mr(Tr, [["__scopeId", "data-v-8b211cfb"]]), Hr = { class: "flex-grow" }, Er = ["id"], Vr = /* @__PURE__ */ g({
1635
+ }, P = /* @__PURE__ */ Hr(Mr, [["__scopeId", "data-v-8b211cfb"]]), Er = { class: "flex-grow" }, Vr = ["id"], Lr = /* @__PURE__ */ g({
1632
1636
  __name: "Setting",
1633
1637
  props: {
1634
1638
  title: {},
@@ -1642,11 +1646,11 @@ const wr = E({ name: "zondicons-cheveron-down", render: yr }), gt = /* @__PURE__
1642
1646
  return (e, r) => (u(), b("div", {
1643
1647
  class: k(["mt-4 flex", { "flex-col": e.layout === "vertical" }])
1644
1648
  }, [
1645
- y("div", Hr, [
1649
+ y("div", Er, [
1646
1650
  y("h3", {
1647
1651
  id: e.titleId,
1648
1652
  class: "text-base font-semibold"
1649
- }, x(e.title), 9, Er),
1653
+ }, x(e.title), 9, Vr),
1650
1654
  e.description ? (u(), h(P, {
1651
1655
  key: 0,
1652
1656
  text: e.description,
@@ -1660,7 +1664,7 @@ const wr = E({ name: "zondicons-cheveron-down", render: yr }), gt = /* @__PURE__
1660
1664
  ], 2)
1661
1665
  ], 2));
1662
1666
  }
1663
- }), Lr = ["for"], Ir = /* @__PURE__ */ g({
1667
+ }), Ir = ["for"], qr = /* @__PURE__ */ g({
1664
1668
  inheritAttrs: !1,
1665
1669
  __name: "HeadlessSwitch",
1666
1670
  props: {
@@ -1703,8 +1707,8 @@ const wr = E({ name: "zondicons-cheveron-down", render: yr }), gt = /* @__PURE__
1703
1707
  key: 0,
1704
1708
  for: i.id,
1705
1709
  class: k(l.labelClass)
1706
- }, x(l.label), 11, Lr)) : T("", !0),
1707
- p(o(vs), H({
1710
+ }, x(l.label), 11, Ir)) : T("", !0),
1711
+ p(o(bs), H({
1708
1712
  id: i.id,
1709
1713
  name: l.name,
1710
1714
  "model-value": i.value.value
@@ -1713,7 +1717,7 @@ const wr = E({ name: "zondicons-cheveron-down", render: yr }), gt = /* @__PURE__
1713
1717
  "onUpdate:modelValue": d[0] || (d[0] = (v) => l.$emit("update:modelValue", v))
1714
1718
  }), {
1715
1719
  default: f(() => [
1716
- p(o(bs), {
1720
+ p(o(ys), {
1717
1721
  class: k(l.thumbClass)
1718
1722
  }, null, 8, ["class"])
1719
1723
  ]),
@@ -1721,25 +1725,25 @@ const wr = E({ name: "zondicons-cheveron-down", render: yr }), gt = /* @__PURE__
1721
1725
  }, 16, ["id", "name", "model-value", "class"])
1722
1726
  ], 2));
1723
1727
  }
1724
- }), qr = /* @__PURE__ */ g({
1728
+ }), zr = /* @__PURE__ */ g({
1725
1729
  __name: "Switch",
1726
1730
  setup(t) {
1727
- return (s, e) => (u(), h(Ir, {
1731
+ return (s, e) => (u(), h(qr, {
1728
1732
  class: "flex flex-row items-center gap-1",
1729
1733
  "input-class": "disabled:opacity-50 disabled:cursor-not-allowed data-[state=checked]:bg-primary-600 data-[state=unchecked]:bg-gray-200 relative inline-flex h-6 w-11 shrink-0 cursor-pointer rounded-full border-2 border-transparent transition-colors duration-200 ease-in-out focusdisabled:opacity-50 disabled:cursor-not-allowed :ring-2 focus:ring-primary-600 focus:ring-offset-2 focus:outline-hidden",
1730
1734
  "thumb-class": "data-[state=checked]:translate-x-5 data-[state=unchecked]:translate-x-0 pointer-events-none inline-block size-5 transform rounded-full bg-white shadow-sm ring-0 transition duration-200 ease-in-out"
1731
1735
  }));
1732
1736
  }
1733
- }), zr = /* @__PURE__ */ g({
1737
+ }), Rr = /* @__PURE__ */ g({
1734
1738
  __name: "Debug",
1735
1739
  setup(t) {
1736
- return (s, e) => (u(), h(Vr, {
1740
+ return (s, e) => (u(), h(Lr, {
1737
1741
  "title-id": "debug-setting",
1738
1742
  title: s.$td("settings.debug", "Debugging"),
1739
1743
  description: s.$td("settings.debugDescription", "Enable debugging with [Eruda](https://eruda.liriliri.io/).")
1740
1744
  }, {
1741
1745
  default: f(() => [
1742
- p(qr, {
1746
+ p(zr, {
1743
1747
  modelValue: s.$errors.debug,
1744
1748
  "onUpdate:modelValue": e[0] || (e[0] = (r) => s.$errors.debug = r),
1745
1749
  "aria-labelledby": "debug-setting"
@@ -1748,17 +1752,17 @@ const wr = E({ name: "zondicons-cheveron-down", render: yr }), gt = /* @__PURE__
1748
1752
  _: 1
1749
1753
  }, 8, ["title", "description"]));
1750
1754
  }
1751
- }), Rr = [
1755
+ }), Pr = [
1752
1756
  {
1753
1757
  priority: 10,
1754
- component: zr
1758
+ component: Rr
1755
1759
  }
1756
- ], vt = [];
1757
- function yl(t) {
1758
- vt.push(t);
1760
+ ], bt = [];
1761
+ function wl(t) {
1762
+ bt.push(t);
1759
1763
  }
1760
- function bt(t) {
1761
- for (const s of vt) {
1764
+ function yt(t) {
1765
+ for (const s of bt) {
1762
1766
  const e = s(t);
1763
1767
  if (e)
1764
1768
  return e;
@@ -1767,36 +1771,36 @@ function bt(t) {
1767
1771
  }
1768
1772
  class Ue extends be {
1769
1773
  }
1770
- const Pr = { $errors: nt }, Ar = (t) => (nt.report(t), !0);
1771
- function Dr(t, s = () => !1) {
1772
- const e = (r) => s(r) || Ar(r);
1774
+ const Ar = { $errors: ut }, Dr = (t) => (ut.report(t), !0);
1775
+ function jr(t, s = () => !1) {
1776
+ const e = (r) => s(r) || Dr(r);
1773
1777
  t.config.errorHandler = e, globalThis.onerror = (r, n, a, i, l) => e(l ?? r), globalThis.onunhandledrejection = (r) => e(r.reason);
1774
1778
  }
1775
- const jr = {
1779
+ const Br = {
1776
1780
  async install(t, s) {
1777
- Dr(t, s.handleError), Rr.forEach((e) => A.addSetting(e)), await $e(t, Pr);
1781
+ jr(t, s.handleError), Pr.forEach((e) => A.addSetting(e)), await $e(t, Ar);
1778
1782
  }
1779
- }, Br = {
1783
+ }, Fr = {
1780
1784
  async install() {
1781
1785
  Ee() && (globalThis.testingRuntime = {
1782
1786
  on: (...t) => R.on(...t),
1783
1787
  service: (t) => A.service(t)
1784
1788
  });
1785
1789
  }
1786
- }, Fr = {
1790
+ }, Ur = {
1787
1791
  viewBox: "0 0 20 20",
1788
1792
  width: "1.2em",
1789
1793
  height: "1.2em"
1790
1794
  };
1791
- function Ur(t, s) {
1792
- return u(), b("svg", Fr, s[0] || (s[0] = [
1795
+ function Or(t, s) {
1796
+ return u(), b("svg", Ur, s[0] || (s[0] = [
1793
1797
  y("path", {
1794
1798
  fill: "currentColor",
1795
1799
  d: "M10 8.586L2.929 1.515L1.515 2.929L8.586 10l-7.071 7.071l1.414 1.414L10 11.414l7.071 7.071l1.414-1.414L11.414 10l7.071-7.071l-1.414-1.414z"
1796
1800
  }, null, -1)
1797
1801
  ]));
1798
1802
  }
1799
- const Or = E({ name: "zondicons-close", render: Ur }), Nr = /* @__PURE__ */ g({
1803
+ const Nr = E({ name: "zondicons-close", render: Or }), Wr = /* @__PURE__ */ g({
1800
1804
  __name: "HeadlessModal",
1801
1805
  props: {
1802
1806
  persistent: { type: Boolean },
@@ -1812,19 +1816,19 @@ const Or = E({ name: "zondicons-close", render: Ur }), Nr = /* @__PURE__ */ g({
1812
1816
  );
1813
1817
  s({ close: i, $content: e });
1814
1818
  const { forwardRef: n } = Ve(), a = U(!1);
1815
- le("$modalContentRef", e), ot("close-modal", async ({ id: l, result: d }) => {
1819
+ le("$modalContentRef", e), tt("close-modal", async ({ id: l, result: d }) => {
1816
1820
  l === r.id && await i(d);
1817
1821
  });
1818
1822
  async function i(l) {
1819
1823
  a.value || (await R.emit("modal-will-close", { modal: r, result: l }), a.value = !0, await R.emit("modal-has-closed", { modal: r, result: l }));
1820
1824
  }
1821
- return (l, d) => (u(), h(o(ys), {
1825
+ return (l, d) => (u(), h(o(ws), {
1822
1826
  ref: o(n),
1823
1827
  open: "",
1824
1828
  "onUpdate:open": d[0] || (d[0] = (v) => l.persistent || i())
1825
1829
  }, {
1826
1830
  default: f(() => [
1827
- p(o(ws), null, {
1831
+ p(o($s), null, {
1828
1832
  default: f(() => [
1829
1833
  w(l.$slots, "default", { close: i })
1830
1834
  ]),
@@ -1834,7 +1838,7 @@ const Or = E({ name: "zondicons-close", render: Ur }), Nr = /* @__PURE__ */ g({
1834
1838
  _: 3
1835
1839
  }, 512));
1836
1840
  }
1837
- }), yt = /* @__PURE__ */ g({
1841
+ }), wt = /* @__PURE__ */ g({
1838
1842
  __name: "ModalContext",
1839
1843
  props: {
1840
1844
  modal: {},
@@ -1852,17 +1856,17 @@ const Or = E({ name: "zondicons-close", render: Ur }), Nr = /* @__PURE__ */ g({
1852
1856
  childIndex: Re(s, "childIndex")
1853
1857
  }), (r, n) => (u(), h(W(r.modal.component), ne(ae(e.value)), null, 16));
1854
1858
  }
1855
- }), Wr = /* @__PURE__ */ g({
1859
+ }), Kr = /* @__PURE__ */ g({
1856
1860
  __name: "HeadlessModalContent",
1857
1861
  setup(t) {
1858
1862
  const { childIndex: s = 0 } = V(
1859
1863
  "modal",
1860
1864
  "could not obtain modal reference from <HeadlessModalContent>, did you render this component manually? Show it using $ui.modal() instead"
1861
- ), e = Os("$modalContentRef"), r = G("$contentRef"), n = c(() => z.modals[s] ?? null);
1862
- return Y(() => e.value = r.value), (a, i) => (u(), h(o($s), { ref: "$contentRef" }, {
1865
+ ), e = Ns("$modalContentRef"), r = G("$contentRef"), n = c(() => z.modals[s] ?? null);
1866
+ return Y(() => e.value = r.value), (a, i) => (u(), h(o(_s), { ref: "$contentRef" }, {
1863
1867
  default: f(() => [
1864
1868
  w(a.$slots, "default"),
1865
- n.value ? (u(), h(yt, {
1869
+ n.value ? (u(), h(wt, {
1866
1870
  key: 0,
1867
1871
  "child-index": o(s) + 1,
1868
1872
  modal: n.value
@@ -1871,21 +1875,21 @@ const Or = E({ name: "zondicons-close", render: Ur }), Nr = /* @__PURE__ */ g({
1871
1875
  _: 3
1872
1876
  }, 512));
1873
1877
  }
1874
- }), Kr = /* @__PURE__ */ g({
1878
+ }), Qr = /* @__PURE__ */ g({
1875
1879
  __name: "HeadlessModalDescription",
1876
1880
  props: {
1877
1881
  asChild: { type: Boolean },
1878
1882
  as: {}
1879
1883
  },
1880
1884
  setup(t) {
1881
- return (s, e) => (u(), h(o(_s), ne(ae(s.$props)), {
1885
+ return (s, e) => (u(), h(o(xs), ne(ae(s.$props)), {
1882
1886
  default: f(() => [
1883
1887
  w(s.$slots, "default")
1884
1888
  ]),
1885
1889
  _: 3
1886
1890
  }, 16));
1887
1891
  }
1888
- }), Qr = /* @__PURE__ */ g({
1892
+ }), Jr = /* @__PURE__ */ g({
1889
1893
  __name: "HeadlessModalOverlay",
1890
1894
  props: {
1891
1895
  forceMount: { type: Boolean },
@@ -1893,31 +1897,31 @@ const Or = E({ name: "zondicons-close", render: Ur }), Nr = /* @__PURE__ */ g({
1893
1897
  as: {}
1894
1898
  },
1895
1899
  setup(t) {
1896
- return (s, e) => (u(), h(o(xs), ne(ae(s.$props)), {
1900
+ return (s, e) => (u(), h(o(Cs), ne(ae(s.$props)), {
1897
1901
  default: f(() => [
1898
1902
  w(s.$slots, "default")
1899
1903
  ]),
1900
1904
  _: 3
1901
1905
  }, 16));
1902
1906
  }
1903
- }), Jr = /* @__PURE__ */ g({
1907
+ }), Zr = /* @__PURE__ */ g({
1904
1908
  __name: "HeadlessModalTitle",
1905
1909
  props: {
1906
1910
  asChild: { type: Boolean },
1907
1911
  as: {}
1908
1912
  },
1909
1913
  setup(t) {
1910
- return (s, e) => (u(), h(o(Cs), ne(ae(s.$props)), {
1914
+ return (s, e) => (u(), h(o(ks), ne(ae(s.$props)), {
1911
1915
  default: f(() => [
1912
1916
  w(s.$slots, "default")
1913
1917
  ]),
1914
1918
  _: 3
1915
1919
  }, 16));
1916
1920
  }
1917
- }), Zr = {
1921
+ }), Xr = {
1918
1922
  key: 0,
1919
1923
  class: "absolute top-0 right-0 hidden pt-3.5 pr-2.5 sm:block"
1920
- }, Xr = ["onClick"], Yr = { class: "sr-only" }, se = /* @__PURE__ */ g({
1924
+ }, Yr = ["onClick"], Gr = { class: "sr-only" }, se = /* @__PURE__ */ g({
1921
1925
  __name: "Modal",
1922
1926
  props: {
1923
1927
  persistent: { type: Boolean },
@@ -1952,32 +1956,32 @@ const Or = E({ name: "zondicons-close", render: Ur }), Nr = /* @__PURE__ */ g({
1952
1956
  },
1953
1957
  t.wrapperClass
1954
1958
  ));
1955
- return ot("modal-will-close", async ({ modal: { id: m } }) => {
1959
+ return tt("modal-will-close", async ({ modal: { id: m } }) => {
1956
1960
  m === i.modal.id && await ue({ ms: 300 });
1957
- }), (m, C) => (u(), h(Nr, H(e, {
1961
+ }), (m, C) => (u(), h(Wr, H(e, {
1958
1962
  ref: (L) => o(r)(L),
1959
1963
  persistent: m.persistent
1960
1964
  }), {
1961
1965
  default: f(({ close: L }) => [
1962
- p(Qr, {
1966
+ p(Jr, {
1963
1967
  class: k(["fixed inset-0 animate-[fade-in_var(--tw-duration)_ease-in-out] transition-opacity duration-300 will-change-[opacity]", {
1964
1968
  "bg-black/30": o(i).childIndex === 1,
1965
1969
  "opacity-0": o(i).childIndex === 1 && o(i).modal.closing
1966
1970
  }])
1967
1971
  }, null, 8, ["class"]),
1968
- p(Wr, H(d.value, { class: $.value }), {
1972
+ p(Kr, H(d.value, { class: $.value }), {
1969
1973
  default: f(() => [
1970
- !m.persistent && !m.closeHidden ? (u(), b("div", Zr, [
1974
+ !m.persistent && !m.closeHidden ? (u(), b("div", Xr, [
1971
1975
  y("button", {
1972
1976
  type: "button",
1973
1977
  class: "clickable z-10 rounded-full p-2.5 text-gray-400 hover:text-gray-500",
1974
1978
  onClick: (_e) => L()
1975
1979
  }, [
1976
- y("span", Yr, x(m.$td("ui.close", "Close")), 1),
1977
- p(o(Or), { class: "size-4" })
1978
- ], 8, Xr)
1980
+ y("span", Gr, x(m.$td("ui.close", "Close")), 1),
1981
+ p(o(Nr), { class: "size-4" })
1982
+ ], 8, Yr)
1979
1983
  ])) : T("", !0),
1980
- m.title ? (u(), h(Jr, {
1984
+ m.title ? (u(), h(Zr, {
1981
1985
  key: 1,
1982
1986
  class: k(["px-4 pt-5 text-base font-semibold text-gray-900", {
1983
1987
  "sr-only": m.titleHidden,
@@ -1993,7 +1997,7 @@ const Or = E({ name: "zondicons-close", render: Ur }), Nr = /* @__PURE__ */ g({
1993
1997
  ]),
1994
1998
  _: 1
1995
1999
  }, 8, ["class"])) : T("", !0),
1996
- m.description ? (u(), h(Kr, {
2000
+ m.description ? (u(), h(Qr, {
1997
2001
  key: 2,
1998
2002
  class: k(["px-4 pt-1 pb-2", { "sr-only": m.descriptionHidden }])
1999
2003
  }, {
@@ -2018,18 +2022,18 @@ const Or = E({ name: "zondicons-close", render: Ur }), Nr = /* @__PURE__ */ g({
2018
2022
  }, 16, ["persistent"]));
2019
2023
  }
2020
2024
  });
2021
- function Gr(t) {
2025
+ function en(t) {
2022
2026
  const s = c(() => t.title ?? S("ui.alert", "Alert")), e = c(() => !t.title);
2023
2027
  return { renderedTitle: s, titleHidden: e };
2024
2028
  }
2025
- const en = /* @__PURE__ */ g({
2029
+ const tn = /* @__PURE__ */ g({
2026
2030
  __name: "AlertModal",
2027
2031
  props: {
2028
2032
  title: {},
2029
2033
  message: {}
2030
2034
  },
2031
2035
  setup(t, { expose: s }) {
2032
- const e = t, { renderedTitle: r, titleHidden: n } = Gr(e);
2036
+ const e = t, { renderedTitle: r, titleHidden: n } = en(e);
2033
2037
  return s(), (a, i) => (u(), h(se, {
2034
2038
  title: o(r),
2035
2039
  "title-hidden": o(n)
@@ -2040,7 +2044,7 @@ const en = /* @__PURE__ */ g({
2040
2044
  _: 1
2041
2045
  }, 8, ["title", "title-hidden"]));
2042
2046
  }
2043
- }), wt = /* @__PURE__ */ g({
2047
+ }), $t = /* @__PURE__ */ g({
2044
2048
  __name: "Form",
2045
2049
  props: {
2046
2050
  form: {}
@@ -2062,8 +2066,8 @@ const en = /* @__PURE__ */ g({
2062
2066
  ], 32));
2063
2067
  }
2064
2068
  });
2065
- function tn(t) {
2066
- const s = ut(
2069
+ function sn(t) {
2070
+ const s = rt(
2067
2071
  Object.entries(t.checkboxes ?? {}).reduce(
2068
2072
  (i, [l, d]) => ({
2069
2073
  [l]: {
@@ -2078,10 +2082,10 @@ function tn(t) {
2078
2082
  ), e = c(() => t.title ?? S("ui.confirm", "Confirm")), r = c(() => !t.title), n = c(() => t.acceptText ?? S("ui.accept", "Ok")), a = c(() => t.cancelText ?? S("ui.cancel", "Cancel"));
2079
2083
  return { form: s, renderedTitle: e, titleHidden: r, renderedAcceptText: n, renderedCancelText: a };
2080
2084
  }
2081
- const sn = {
2085
+ const rn = {
2082
2086
  key: 0,
2083
2087
  class: "mt-4 flex flex-col text-sm text-gray-600"
2084
- }, rn = { class: "flex items-center" }, nn = ["onUpdate:modelValue", "required"], an = { class: "ml-1.5" }, ln = { class: "mt-4 flex flex-row-reverse gap-2" }, on = /* @__PURE__ */ g({
2088
+ }, nn = { class: "flex items-center" }, an = ["onUpdate:modelValue", "required"], ln = { class: "ml-1.5" }, on = { class: "mt-4 flex flex-row-reverse gap-2" }, un = /* @__PURE__ */ g({
2085
2089
  __name: "ConfirmModal",
2086
2090
  props: {
2087
2091
  title: {},
@@ -2095,14 +2099,14 @@ const sn = {
2095
2099
  required: { type: Boolean }
2096
2100
  },
2097
2101
  setup(t, { expose: s }) {
2098
- const e = N(t, ["cancelVariant"]), { form: r, renderedTitle: n, titleHidden: a, renderedAcceptText: i, renderedCancelText: l } = tn(e);
2102
+ const e = N(t, ["cancelVariant"]), { form: r, renderedTitle: n, titleHidden: a, renderedAcceptText: i, renderedCancelText: l } = sn(e);
2099
2103
  return s(), (d, v) => (u(), h(se, {
2100
2104
  title: o(n),
2101
2105
  "title-hidden": o(a),
2102
2106
  persistent: ""
2103
2107
  }, {
2104
2108
  default: f(({ close: $ }) => [
2105
- p(wt, {
2109
+ p($t, {
2106
2110
  form: o(r),
2107
2111
  onSubmit: (m) => $([!0, o(r).data()])
2108
2112
  }, {
@@ -2111,22 +2115,22 @@ const sn = {
2111
2115
  text: d.message,
2112
2116
  actions: d.actions
2113
2117
  }, null, 8, ["text", "actions"]),
2114
- d.checkboxes ? (u(), b("ul", sn, [
2118
+ d.checkboxes ? (u(), b("ul", rn, [
2115
2119
  (u(!0), b(D, null, F(d.checkboxes, (m, C) => (u(), b("li", { key: C }, [
2116
- y("label", rn, [
2120
+ y("label", nn, [
2117
2121
  Ke(y("input", {
2118
2122
  "onUpdate:modelValue": (L) => o(r)[C] = L,
2119
2123
  type: "checkbox",
2120
2124
  required: m.required,
2121
2125
  class: "border-primary-600 text-primary-600 hover:bg-primary-50 hover:checked:bg-primary-500 focus:ring-primary-600 focus-visible:ring-primary-600 rounded border-2"
2122
- }, null, 8, nn), [
2123
- [It, o(r)[C]]
2126
+ }, null, 8, an), [
2127
+ [qt, o(r)[C]]
2124
2128
  ]),
2125
- y("span", an, x(m.label), 1)
2129
+ y("span", ln, x(m.label), 1)
2126
2130
  ])
2127
2131
  ]))), 128))
2128
2132
  ])) : T("", !0),
2129
- y("div", ln, [
2133
+ y("div", on, [
2130
2134
  p(q, {
2131
2135
  variant: d.acceptVariant,
2132
2136
  submit: ""
@@ -2154,85 +2158,85 @@ const sn = {
2154
2158
  _: 1
2155
2159
  }, 8, ["title", "title-hidden"]));
2156
2160
  }
2157
- }), un = {
2161
+ }), cn = {
2158
2162
  viewBox: "0 0 20 20",
2159
2163
  width: "1.2em",
2160
2164
  height: "1.2em"
2161
2165
  };
2162
- function cn(t, s) {
2163
- return u(), b("svg", un, s[0] || (s[0] = [
2166
+ function dn(t, s) {
2167
+ return u(), b("svg", cn, s[0] || (s[0] = [
2164
2168
  y("path", {
2165
2169
  fill: "currentColor",
2166
2170
  d: "M7.05 9.293L6.343 10L12 15.657l1.414-1.414L9.172 10l4.242-4.243L12 4.343z"
2167
2171
  }, null, -1)
2168
2172
  ]));
2169
2173
  }
2170
- const dn = E({ name: "zondicons-cheveron-left", render: cn }), pn = {
2174
+ const pn = E({ name: "zondicons-cheveron-left", render: dn }), mn = {
2171
2175
  viewBox: "0 0 20 20",
2172
2176
  width: "1.2em",
2173
2177
  height: "1.2em"
2174
2178
  };
2175
- function mn(t, s) {
2176
- return u(), b("svg", pn, s[0] || (s[0] = [
2179
+ function fn(t, s) {
2180
+ return u(), b("svg", mn, s[0] || (s[0] = [
2177
2181
  y("path", {
2178
2182
  fill: "currentColor",
2179
2183
  d: "m12.95 10.707l.707-.707L8 4.343L6.586 5.757L10.828 10l-4.242 4.243L8 15.657z"
2180
2184
  }, null, -1)
2181
2185
  ]));
2182
2186
  }
2183
- const $t = E({ name: "zondicons-cheveron-right", render: mn }), fn = {
2187
+ const _t = E({ name: "zondicons-cheveron-right", render: fn }), hn = {
2184
2188
  viewBox: "0 0 20 20",
2185
2189
  width: "1.2em",
2186
2190
  height: "1.2em"
2187
2191
  };
2188
- function hn(t, s) {
2189
- return u(), b("svg", fn, s[0] || (s[0] = [
2192
+ function gn(t, s) {
2193
+ return u(), b("svg", hn, s[0] || (s[0] = [
2190
2194
  y("path", {
2191
2195
  fill: "currentColor",
2192
2196
  d: "M2.93 17.07A10 10 0 1 1 17.07 2.93A10 10 0 0 1 2.93 17.07M9 5v6h2V5zm0 8v2h2v-2z"
2193
2197
  }, null, -1)
2194
2198
  ]));
2195
2199
  }
2196
- const qe = E({ name: "zondicons-exclamation-solid", render: hn }), gn = {
2200
+ const qe = E({ name: "zondicons-exclamation-solid", render: gn }), vn = {
2197
2201
  viewBox: "0 0 24 24",
2198
2202
  width: "1.2em",
2199
2203
  height: "1.2em"
2200
2204
  };
2201
- function vn(t, s) {
2202
- return u(), b("svg", gn, s[0] || (s[0] = [
2205
+ function bn(t, s) {
2206
+ return u(), b("svg", vn, s[0] || (s[0] = [
2203
2207
  y("path", {
2204
2208
  fill: "currentColor",
2205
2209
  d: "M20 19V7H4v12zm0-16a2 2 0 0 1 2 2v14a2 2 0 0 1-2 2H4a2 2 0 0 1-2-2V5a2 2 0 0 1 2-2zm-7 14v-2h5v2zm-3.42-4L5.57 9H8.4l3.3 3.3c.39.39.39 1.03 0 1.42L8.42 17H5.59z"
2206
2210
  }, null, -1)
2207
2211
  ]));
2208
2212
  }
2209
- const bn = E({ name: "mdi-console", render: vn }), yn = {
2213
+ const yn = E({ name: "mdi-console", render: bn }), wn = {
2210
2214
  viewBox: "0 0 20 20",
2211
2215
  width: "1.2em",
2212
2216
  height: "1.2em"
2213
2217
  };
2214
- function wn(t, s) {
2215
- return u(), b("svg", yn, s[0] || (s[0] = [
2218
+ function $n(t, s) {
2219
+ return u(), b("svg", wn, s[0] || (s[0] = [
2216
2220
  y("path", {
2217
2221
  fill: "currentColor",
2218
2222
  d: "M6 6V2c0-1.1.9-2 2-2h10a2 2 0 0 1 2 2v10a2 2 0 0 1-2 2h-4v4a2 2 0 0 1-2 2H2a2 2 0 0 1-2-2V8c0-1.1.9-2 2-2zm2 0h4a2 2 0 0 1 2 2v4h4V2H8zM2 8v10h10V8z"
2219
2223
  }, null, -1)
2220
2224
  ]));
2221
2225
  }
2222
- const $n = E({ name: "zondicons-copy", render: wn }), _n = {
2226
+ const _n = E({ name: "zondicons-copy", render: $n }), xn = {
2223
2227
  viewBox: "0 0 24 24",
2224
2228
  width: "1.2em",
2225
2229
  height: "1.2em"
2226
2230
  };
2227
- function xn(t, s) {
2228
- return u(), b("svg", _n, s[0] || (s[0] = [
2231
+ function Cn(t, s) {
2232
+ return u(), b("svg", xn, s[0] || (s[0] = [
2229
2233
  y("path", {
2230
2234
  fill: "currentColor",
2231
2235
  d: "M12 2A10 10 0 0 0 2 12c0 4.42 2.87 8.17 6.84 9.5c.5.08.66-.23.66-.5v-1.69c-2.77.6-3.36-1.34-3.36-1.34c-.46-1.16-1.11-1.47-1.11-1.47c-.91-.62.07-.6.07-.6c1 .07 1.53 1.03 1.53 1.03c.87 1.52 2.34 1.07 2.91.83c.09-.65.35-1.09.63-1.34c-2.22-.25-4.55-1.11-4.55-4.92c0-1.11.38-2 1.03-2.71c-.1-.25-.45-1.29.1-2.64c0 0 .84-.27 2.75 1.02c.79-.22 1.65-.33 2.5-.33s1.71.11 2.5.33c1.91-1.29 2.75-1.02 2.75-1.02c.55 1.35.2 2.39.1 2.64c.65.71 1.03 1.6 1.03 2.71c0 3.82-2.34 4.66-4.57 4.91c.36.31.69.92.69 1.85V21c0 .27.16.59.67.5C19.14 20.16 22 16.42 22 12A10 10 0 0 0 12 2"
2232
2236
  }, null, -1)
2233
2237
  ]));
2234
2238
  }
2235
- const Cn = E({ name: "mdi-github", render: xn }), kn = { class: "flex" }, Sn = { class: "sr-only" }, Tn = /* @__PURE__ */ g({
2239
+ const kn = E({ name: "mdi-github", render: Cn }), Sn = { class: "flex" }, Tn = { class: "sr-only" }, Mn = /* @__PURE__ */ g({
2236
2240
  __name: "ErrorReportModalButtons",
2237
2241
  props: {
2238
2242
  report: {}
@@ -2247,7 +2251,7 @@ const Cn = E({ name: "mdi-github", render: xn }), kn = { class: "flex" }, Sn = {
2247
2251
  "",
2248
2252
  "Error details:",
2249
2253
  "```",
2250
- Qt(
2254
+ Jt(
2251
2255
  s.report.details ?? "Details missing from report",
2252
2256
  1800 - a.length - A.sourceUrl.length
2253
2257
  ).trim(),
@@ -2261,7 +2265,7 @@ const Cn = E({ name: "mdi-github", render: xn }), kn = { class: "flex" }, Sn = {
2261
2265
  {
2262
2266
  id: "clipboard",
2263
2267
  description: "Copy to clipboard",
2264
- iconComponent: $n,
2268
+ iconComponent: _n,
2265
2269
  async click() {
2266
2270
  await navigator.clipboard.writeText(`${e.value}
2267
2271
 
@@ -2271,7 +2275,7 @@ ${s.report.details}`), z.toast(S("errors.copiedToClipboard", "Debug information
2271
2275
  {
2272
2276
  id: "console",
2273
2277
  description: "Log to console",
2274
- iconComponent: bn,
2278
+ iconComponent: yn,
2275
2279
  click() {
2276
2280
  const a = s.report.error ?? s.report;
2277
2281
  window.error = a, console.error(a), z.toast(
@@ -2287,12 +2291,12 @@ ${s.report.details}`), z.toast(S("errors.copiedToClipboard", "Debug information
2287
2291
  r.value && a.push({
2288
2292
  id: "github",
2289
2293
  description: "Report in GitHub",
2290
- iconComponent: Cn,
2294
+ iconComponent: kn,
2291
2295
  url: r.value
2292
2296
  });
2293
2297
  }
2294
2298
  ));
2295
- return (a, i) => (u(), b("div", kn, [
2299
+ return (a, i) => (u(), b("div", Sn, [
2296
2300
  (u(!0), b(D, null, F(n.value, (l) => w(a.$slots, "default", H({ ref_for: !0 }, l), () => [
2297
2301
  p(q, {
2298
2302
  size: "icon",
@@ -2303,7 +2307,7 @@ ${s.report.details}`), z.toast(S("errors.copiedToClipboard", "Debug information
2303
2307
  onClick: l.click
2304
2308
  }, {
2305
2309
  default: f(() => [
2306
- y("span", Sn, x(a.$td(`errors.report_${l.id}`, l.description)), 1),
2310
+ y("span", Tn, x(a.$td(`errors.report_${l.id}`, l.description)), 1),
2307
2311
  (u(), h(W(l.iconComponent), {
2308
2312
  class: "size-4",
2309
2313
  "aria-hidden": "true"
@@ -2314,7 +2318,7 @@ ${s.report.details}`), z.toast(S("errors.copiedToClipboard", "Debug information
2314
2318
  ])), 256))
2315
2319
  ]));
2316
2320
  }
2317
- }), Mn = /* @__PURE__ */ g({
2321
+ }), Hn = /* @__PURE__ */ g({
2318
2322
  __name: "ErrorReportModalTitle",
2319
2323
  props: {
2320
2324
  report: {},
@@ -2329,7 +2333,7 @@ ${s.report.details}`), z.toast(S("errors.copiedToClipboard", "Debug information
2329
2333
  }, null, 8, ["text"]));
2330
2334
  }
2331
2335
  });
2332
- function Hn(t) {
2336
+ function En(t) {
2333
2337
  const s = U(t.reports.includes(t.report) ? t.reports.indexOf(t.report) : 0), e = c(() => t.reports[s.value]), r = c(
2334
2338
  () => {
2335
2339
  var i;
@@ -2344,17 +2348,17 @@ function Hn(t) {
2344
2348
  activeReport: e
2345
2349
  };
2346
2350
  }
2347
- const En = { class: "px-4 pt-5 pb-4" }, Vn = { class: "flex justify-between gap-4" }, Ln = { class: "flex items-center gap-2" }, In = {
2351
+ const Vn = { class: "px-4 pt-5 pb-4" }, Ln = { class: "flex justify-between gap-4" }, In = { class: "flex items-center gap-2" }, qn = {
2348
2352
  key: 0,
2349
2353
  class: "flex gap-0.5"
2350
- }, qn = { class: "-mt-2 max-h-[75vh] overflow-auto bg-red-800/10" }, zn = ["textContent"], Rn = /* @__PURE__ */ g({
2354
+ }, zn = { class: "-mt-2 max-h-[75vh] overflow-auto bg-red-800/10" }, Rn = ["textContent"], Pn = /* @__PURE__ */ g({
2351
2355
  __name: "ErrorReportModal",
2352
2356
  props: {
2353
2357
  report: {},
2354
2358
  reports: {}
2355
2359
  },
2356
2360
  setup(t, { expose: s }) {
2357
- const e = t, { activeReportIndex: r, details: n, nextReportText: a, previousReportText: i, activeReport: l } = Hn(e);
2361
+ const e = t, { activeReportIndex: r, details: n, nextReportText: a, previousReportText: i, activeReport: l } = En(e);
2358
2362
  return s(), (d, v) => (u(), h(se, {
2359
2363
  title: d.$td("errors.report", "Error report"),
2360
2364
  "title-hidden": "",
@@ -2363,17 +2367,17 @@ const En = { class: "px-4 pt-5 pb-4" }, Vn = { class: "flex justify-between gap-
2363
2367
  "wrapper-class": "sm:w-auto sm:min-w-lg sm:max-w-[80vw]"
2364
2368
  }, {
2365
2369
  default: f(() => [
2366
- y("div", En, [
2367
- y("h2", Vn, [
2368
- y("div", Ln, [
2370
+ y("div", Vn, [
2371
+ y("h2", Ln, [
2372
+ y("div", In, [
2369
2373
  p(o(qe), { class: "size-5 text-red-600" }),
2370
- p(Mn, {
2374
+ p(Hn, {
2371
2375
  class: "text-lg leading-6 font-semibold text-gray-900",
2372
2376
  report: o(l),
2373
2377
  "current-report": o(r) + 1,
2374
2378
  "total-reports": d.reports.length
2375
2379
  }, null, 8, ["report", "current-report", "total-reports"]),
2376
- d.reports.length > 1 ? (u(), b("span", In, [
2380
+ d.reports.length > 1 ? (u(), b("span", qn, [
2377
2381
  p(q, {
2378
2382
  size: "icon",
2379
2383
  variant: "ghost",
@@ -2383,7 +2387,7 @@ const En = { class: "px-4 pt-5 pb-4" }, Vn = { class: "flex justify-between gap-
2383
2387
  onClick: v[0] || (v[0] = ($) => r.value--)
2384
2388
  }, {
2385
2389
  default: f(() => [
2386
- p(o(dn), { class: "size-4" })
2390
+ p(o(pn), { class: "size-4" })
2387
2391
  ]),
2388
2392
  _: 1
2389
2393
  }, 8, ["disabled", "aria-label", "title"]),
@@ -2396,13 +2400,13 @@ const En = { class: "px-4 pt-5 pb-4" }, Vn = { class: "flex justify-between gap-
2396
2400
  onClick: v[1] || (v[1] = ($) => r.value++)
2397
2401
  }, {
2398
2402
  default: f(() => [
2399
- p(o($t), { class: "size-4" })
2403
+ p(o(_t), { class: "size-4" })
2400
2404
  ]),
2401
2405
  _: 1
2402
2406
  }, 8, ["disabled", "aria-label", "title"])
2403
2407
  ])) : T("", !0)
2404
2408
  ]),
2405
- p(Tn, {
2409
+ p(Mn, {
2406
2410
  report: o(l),
2407
2411
  class: "gap-0.5"
2408
2412
  }, null, 8, ["report"])
@@ -2413,23 +2417,23 @@ const En = { class: "px-4 pt-5 pb-4" }, Vn = { class: "flex justify-between gap-
2413
2417
  class: "text-gray-600"
2414
2418
  }, null, 8, ["text"])) : T("", !0)
2415
2419
  ]),
2416
- y("div", qn, [
2420
+ y("div", zn, [
2417
2421
  y("pre", {
2418
2422
  class: "p-4 text-xs text-red-800",
2419
2423
  textContent: x(o(n))
2420
- }, null, 8, zn)
2424
+ }, null, 8, Rn)
2421
2425
  ])
2422
2426
  ]),
2423
2427
  _: 1
2424
2428
  }, 8, ["title"]));
2425
2429
  }
2426
- }), Pn = {
2430
+ }), An = {
2427
2431
  viewBox: "0 0 24 24",
2428
2432
  width: "1.2em",
2429
2433
  height: "1.2em"
2430
2434
  };
2431
- function An(t, s) {
2432
- return u(), b("svg", Pn, s[0] || (s[0] = [
2435
+ function Dn(t, s) {
2436
+ return u(), b("svg", An, s[0] || (s[0] = [
2433
2437
  y("path", {
2434
2438
  fill: "currentColor",
2435
2439
  d: "M12,1A11,11,0,1,0,23,12,11,11,0,0,0,12,1Zm0,19a8,8,0,1,1,8-8A8,8,0,0,1,12,20Z",
@@ -2449,7 +2453,7 @@ function An(t, s) {
2449
2453
  ], -1)
2450
2454
  ]));
2451
2455
  }
2452
- const Dn = E({ name: "svg-spinners-90-ring-with-bg", render: An }), jn = { class: "mt-1 h-2 w-full overflow-hidden rounded-full bg-gray-200" }, Bn = { class: "sr-only" }, Fn = /* @__PURE__ */ g({
2456
+ const jn = E({ name: "svg-spinners-90-ring-with-bg", render: Dn }), Bn = { class: "mt-1 h-2 w-full overflow-hidden rounded-full bg-gray-200" }, Fn = { class: "sr-only" }, Un = /* @__PURE__ */ g({
2453
2457
  __name: "ProgressBar",
2454
2458
  props: {
2455
2459
  filledClass: {},
@@ -2465,24 +2469,24 @@ const Dn = E({ name: "svg-spinners-90-ring-with-bg", render: An }), jn = { class
2465
2469
  s && s(), e.value = t.job ? t.job.progress : 0, s = t.job && t.job.listeners.add({ onUpdated: (a) => e.value = a });
2466
2470
  },
2467
2471
  { immediate: !0 }
2468
- ), ge(() => s && s()), (a, i) => (u(), b("div", jn, [
2472
+ ), ge(() => s && s()), (a, i) => (u(), b("div", Bn, [
2469
2473
  y("div", {
2470
2474
  class: k(r.value),
2471
- style: qt(`transform:translateX(-${(1 - n.value) * 100}%)`)
2475
+ style: zt(`transform:translateX(-${(1 - n.value) * 100}%)`)
2472
2476
  }, null, 6),
2473
- y("span", Bn, x(a.$td("ui.progress", "{progress}% complete", {
2477
+ y("span", Fn, x(a.$td("ui.progress", "{progress}% complete", {
2474
2478
  progress: n.value * 100
2475
2479
  })), 1)
2476
2480
  ]));
2477
2481
  }
2478
2482
  });
2479
- function Un(t) {
2483
+ function On(t) {
2480
2484
  const s = c(() => t.title ?? S("ui.loading", "Loading")), e = c(
2481
2485
  () => t.message ?? S("ui.loadingInProgress", "Loading in progress...")
2482
2486
  ), r = c(() => typeof t.progress == "number" || !!t.job), n = c(() => !t.title);
2483
2487
  return { renderedTitle: s, renderedMessage: e, titleHidden: n, showProgress: r };
2484
2488
  }
2485
- const On = /* @__PURE__ */ g({
2489
+ const Nn = /* @__PURE__ */ g({
2486
2490
  __name: "LoadingModal",
2487
2491
  props: {
2488
2492
  title: {},
@@ -2491,7 +2495,7 @@ const On = /* @__PURE__ */ g({
2491
2495
  job: {}
2492
2496
  },
2493
2497
  setup(t, { expose: s }) {
2494
- const e = t, { renderedTitle: r, renderedMessage: n, titleHidden: a, showProgress: i } = Un(e);
2498
+ const e = t, { renderedTitle: r, renderedMessage: n, titleHidden: a, showProgress: i } = On(e);
2495
2499
  return s(), (l, d) => (u(), h(se, {
2496
2500
  persistent: "",
2497
2501
  class: k(["flex", { "flex-col-reverse": o(i), "items-center justify-center gap-2": !o(i) }]),
@@ -2500,12 +2504,12 @@ const On = /* @__PURE__ */ g({
2500
2504
  "title-hidden": o(a)
2501
2505
  }, {
2502
2506
  default: f(() => [
2503
- o(i) ? (u(), h(Fn, {
2507
+ o(i) ? (u(), h(Un, {
2504
2508
  key: 0,
2505
2509
  progress: l.progress,
2506
2510
  job: l.job,
2507
2511
  class: "min-w-[min(400px,80vw)]"
2508
- }, null, 8, ["progress", "job"])) : (u(), h(o(Dn), {
2512
+ }, null, 8, ["progress", "job"])) : (u(), h(o(jn), {
2509
2513
  key: 1,
2510
2514
  class: "text-primary-600 mr-1 size-6"
2511
2515
  })),
@@ -2551,7 +2555,7 @@ const On = /* @__PURE__ */ g({
2551
2555
  _: 3
2552
2556
  }));
2553
2557
  }
2554
- }), Nn = ["for"], fe = /* @__PURE__ */ g({
2558
+ }), Wn = ["for"], fe = /* @__PURE__ */ g({
2555
2559
  __name: "HeadlessInputLabel",
2556
2560
  setup(t) {
2557
2561
  const s = V("input", "<HeadlessInputLabel> must be a child of a <HeadlessInput>"), e = He(), r = c(() => !!(s.label || e.default));
@@ -2562,9 +2566,9 @@ const On = /* @__PURE__ */ g({
2562
2566
  w(n.$slots, "default", {}, () => [
2563
2567
  I(x(o(s).label), 1)
2564
2568
  ])
2565
- ], 8, Nn)) : T("", !0);
2569
+ ], 8, Wn)) : T("", !0);
2566
2570
  }
2567
- }), Wn = ["id", "name", "checked", "type", "required", "aria-invalid", "aria-describedby"], _t = /* @__PURE__ */ g({
2571
+ }), Kn = ["id", "name", "checked", "type", "required", "aria-invalid", "aria-describedby"], xt = /* @__PURE__ */ g({
2568
2572
  __name: "HeadlessInputInput",
2569
2573
  props: {
2570
2574
  type: {}
@@ -2594,7 +2598,7 @@ const On = /* @__PURE__ */ g({
2594
2598
  return s.value.value;
2595
2599
  }
2596
2600
  }
2597
- return it(e, () => {
2601
+ return st(e, () => {
2598
2602
  var $;
2599
2603
  return ($ = s.value) == null ? void 0 : $.focus();
2600
2604
  }), Y(() => {
@@ -2615,9 +2619,9 @@ const On = /* @__PURE__ */ g({
2615
2619
  "aria-invalid": o(e).errors ? "true" : "false",
2616
2620
  "aria-describedby": o(e).errors ? `${o(e).id}-error` : o(e).description ? `${o(e).id}-description` : void 0,
2617
2621
  onInput: d
2618
- }, null, 40, Wn));
2622
+ }, null, 40, Kn));
2619
2623
  }
2620
- }), xt = /* @__PURE__ */ g({
2624
+ }), Ct = /* @__PURE__ */ g({
2621
2625
  inheritAttrs: !1,
2622
2626
  __name: "HeadlessInputDescription",
2623
2627
  setup(t) {
@@ -2634,19 +2638,19 @@ const On = /* @__PURE__ */ g({
2634
2638
  }), null, 16, ["id", "text"])) : T("", !0)
2635
2639
  ]);
2636
2640
  }
2637
- }), Kn = ["id"], he = /* @__PURE__ */ g({
2641
+ }), Qn = ["id"], he = /* @__PURE__ */ g({
2638
2642
  __name: "HeadlessInputError",
2639
2643
  setup(t) {
2640
2644
  const s = V("input", "<HeadlessInputError> must be a child of a <HeadlessInput>"), e = c(() => s.errors ? S(`errors.${s.errors[0]}`, `Error: ${s.errors[0]}`) : null);
2641
2645
  return (r, n) => e.value ? (u(), b("p", {
2642
2646
  key: 0,
2643
2647
  id: `${o(s).id}-error`
2644
- }, x(e.value), 9, Kn)) : T("", !0);
2648
+ }, x(e.value), 9, Qn)) : T("", !0);
2645
2649
  }
2646
- }), Qn = {
2650
+ }), Jn = {
2647
2651
  key: 0,
2648
2652
  class: "pointer-events-none absolute inset-y-0 right-0 flex items-center pr-3"
2649
- }, Jn = /* @__PURE__ */ g({
2653
+ }, Zn = /* @__PURE__ */ g({
2650
2654
  inheritAttrs: !1,
2651
2655
  __name: "Input",
2652
2656
  props: {
@@ -2686,12 +2690,12 @@ const On = /* @__PURE__ */ g({
2686
2690
  y("div", {
2687
2691
  class: k(a.value)
2688
2692
  }, [
2689
- p(_t, H(o(r), { class: i.value }), null, 16, ["class"]),
2690
- (v = e.value) != null && v.errors ? (u(), b("div", Qn, [
2693
+ p(xt, H(o(r), { class: i.value }), null, 16, ["class"]),
2694
+ (v = e.value) != null && v.errors ? (u(), b("div", Jn, [
2691
2695
  p(o(qe), { class: "size-5 text-red-500" })
2692
2696
  ])) : T("", !0)
2693
2697
  ], 2),
2694
- p(xt, { class: "mt-2 text-sm text-gray-600" }),
2698
+ p(Ct, { class: "mt-2 text-sm text-gray-600" }),
2695
2699
  p(he, { class: "mt-2 text-sm text-red-600" })
2696
2700
  ];
2697
2701
  }),
@@ -2699,21 +2703,21 @@ const On = /* @__PURE__ */ g({
2699
2703
  }, 16, ["label", "class"]));
2700
2704
  }
2701
2705
  });
2702
- function wl(t, s = {}) {
2706
+ function $l(t, s = {}) {
2703
2707
  return {
2704
2708
  default: t,
2705
2709
  type: "boolean",
2706
2710
  rules: s.rules
2707
2711
  };
2708
2712
  }
2709
- function $l(t, s = {}) {
2713
+ function _l(t, s = {}) {
2710
2714
  return {
2711
2715
  default: t,
2712
2716
  type: "date",
2713
2717
  rules: s.rules
2714
2718
  };
2715
2719
  }
2716
- function _l(t, s, e = {}) {
2720
+ function xl(t, s, e = {}) {
2717
2721
  return {
2718
2722
  default: s,
2719
2723
  type: "enum",
@@ -2721,21 +2725,21 @@ function _l(t, s, e = {}) {
2721
2725
  values: t
2722
2726
  };
2723
2727
  }
2724
- function xl(t) {
2728
+ function Cl(t) {
2725
2729
  return {
2726
2730
  default: t,
2727
2731
  type: "boolean",
2728
2732
  rules: "required"
2729
2733
  };
2730
2734
  }
2731
- function Cl(t) {
2735
+ function kl(t) {
2732
2736
  return {
2733
2737
  default: t,
2734
2738
  type: "date",
2735
2739
  rules: "required"
2736
2740
  };
2737
2741
  }
2738
- function kl(t, s) {
2742
+ function Sl(t, s) {
2739
2743
  return {
2740
2744
  default: s,
2741
2745
  type: "enum",
@@ -2743,55 +2747,55 @@ function kl(t, s) {
2743
2747
  values: t
2744
2748
  };
2745
2749
  }
2746
- function Sl(t) {
2750
+ function Tl(t) {
2747
2751
  return {
2748
2752
  default: t,
2749
2753
  type: "number",
2750
2754
  rules: "required"
2751
2755
  };
2752
2756
  }
2753
- function Tl(t) {
2757
+ function Ml(t) {
2754
2758
  return {
2755
2759
  default: t,
2756
2760
  type: "object",
2757
2761
  rules: "required"
2758
2762
  };
2759
2763
  }
2760
- function Zn(t) {
2764
+ function Xn(t) {
2761
2765
  return {
2762
2766
  default: t,
2763
2767
  type: "string",
2764
2768
  rules: "required"
2765
2769
  };
2766
2770
  }
2767
- function Ml(t, s = {}) {
2771
+ function Hl(t, s = {}) {
2768
2772
  return {
2769
2773
  default: t,
2770
2774
  type: "number",
2771
2775
  rules: s.rules
2772
2776
  };
2773
2777
  }
2774
- function Hl(t, s = {}) {
2778
+ function El(t, s = {}) {
2775
2779
  return {
2776
2780
  default: t,
2777
2781
  type: "object",
2778
2782
  rules: s.rules
2779
2783
  };
2780
2784
  }
2781
- function El(t, s = {}) {
2785
+ function Vl(t, s = {}) {
2782
2786
  return {
2783
2787
  default: t,
2784
2788
  type: "string",
2785
2789
  rules: s.rules
2786
2790
  };
2787
2791
  }
2788
- function Xn(t) {
2789
- const s = ut({
2790
- draft: Zn(t.defaultValue ?? "")
2792
+ function Yn(t) {
2793
+ const s = rt({
2794
+ draft: Xn(t.defaultValue ?? "")
2791
2795
  }), e = c(() => t.title ?? t.message), r = c(() => t.title ? t.message : null), n = c(() => t.acceptText ?? S("ui.accept", "Ok")), a = c(() => t.cancelText ?? S("ui.cancel", "Cancel"));
2792
2796
  return { form: s, renderedTitle: e, renderedMessage: r, renderedAcceptText: n, renderedCancelText: a };
2793
2797
  }
2794
- const Yn = { class: "mt-4 flex flex-row-reverse gap-2" }, Gn = /* @__PURE__ */ g({
2798
+ const Gn = { class: "mt-4 flex flex-row-reverse gap-2" }, ea = /* @__PURE__ */ g({
2795
2799
  __name: "PromptModal",
2796
2800
  props: {
2797
2801
  title: {},
@@ -2805,13 +2809,13 @@ const Yn = { class: "mt-4 flex flex-row-reverse gap-2" }, Gn = /* @__PURE__ */ g
2805
2809
  cancelVariant: { default: "secondary" }
2806
2810
  },
2807
2811
  setup(t, { expose: s }) {
2808
- const e = N(t, ["cancelVariant"]), { form: r, renderedTitle: n, renderedMessage: a, renderedAcceptText: i, renderedCancelText: l } = Xn(e);
2812
+ const e = N(t, ["cancelVariant"]), { form: r, renderedTitle: n, renderedMessage: a, renderedAcceptText: i, renderedCancelText: l } = Yn(e);
2809
2813
  return s(), (d, v) => (u(), h(se, {
2810
2814
  title: o(n),
2811
2815
  persistent: ""
2812
2816
  }, {
2813
2817
  default: f(({ close: $ }) => [
2814
- p(wt, {
2818
+ p($t, {
2815
2819
  form: o(r),
2816
2820
  onSubmit: (m) => $(o(r).draft)
2817
2821
  }, {
@@ -2820,13 +2824,13 @@ const Yn = { class: "mt-4 flex flex-row-reverse gap-2" }, Gn = /* @__PURE__ */ g
2820
2824
  key: 0,
2821
2825
  text: o(a)
2822
2826
  }, null, 8, ["text"])) : T("", !0),
2823
- p(Jn, {
2827
+ p(Zn, {
2824
2828
  name: "draft",
2825
2829
  class: "mt-2",
2826
2830
  placeholder: d.placeholder,
2827
2831
  label: d.label
2828
2832
  }, null, 8, ["placeholder", "label"]),
2829
- y("div", Yn, [
2833
+ y("div", Gn, [
2830
2834
  p(q, {
2831
2835
  variant: d.acceptVariant,
2832
2836
  submit: ""
@@ -2853,59 +2857,59 @@ const Yn = { class: "mt-4 flex flex-row-reverse gap-2" }, Gn = /* @__PURE__ */ g
2853
2857
  _: 1
2854
2858
  }, 8, ["title"]));
2855
2859
  }
2856
- }), ea = {
2860
+ }), ta = {
2857
2861
  viewBox: "0 0 24 24",
2858
2862
  width: "1.2em",
2859
2863
  height: "1.2em"
2860
2864
  };
2861
- function ta(t, s) {
2862
- return u(), b("svg", ea, s[0] || (s[0] = [
2865
+ function sa(t, s) {
2866
+ return u(), b("svg", ta, s[0] || (s[0] = [
2863
2867
  y("path", {
2864
2868
  fill: "currentColor",
2865
2869
  d: "M12 21q-1.625 0-3.012-.8T6.8 18H4v-2h2.1q-.075-.5-.088-1T6 14H4v-2h2q0-.5.012-1t.088-1H4V8h2.8q.35-.575.788-1.075T8.6 6.05L7 4.4L8.4 3l2.15 2.15q.7-.225 1.425-.225t1.425.225L15.6 3L17 4.4l-1.65 1.65q.575.375 1.038.862T17.2 8H20v2h-2.1q.075.5.088 1T18 12h2v2h-2q0 .5-.013 1t-.087 1H20v2h-2.8q-.8 1.4-2.187 2.2T12 21m-2-5h4v-2h-4zm0-4h4v-2h-4z"
2866
2870
  }, null, -1)
2867
2871
  ]));
2868
2872
  }
2869
- const sa = E({ name: "material-symbols-bug-report", render: ta }), ra = {
2873
+ const ra = E({ name: "material-symbols-bug-report", render: sa }), na = {
2870
2874
  viewBox: "0 0 24 24",
2871
2875
  width: "1.2em",
2872
2876
  height: "1.2em"
2873
2877
  };
2874
- function na(t, s) {
2875
- return u(), b("svg", ra, s[0] || (s[0] = [
2878
+ function aa(t, s) {
2879
+ return u(), b("svg", na, s[0] || (s[0] = [
2876
2880
  y("path", {
2877
2881
  fill: "currentColor",
2878
2882
  d: "M7 21q-.825 0-1.412-.587T5 19V6q-.425 0-.712-.288T4 5t.288-.712T5 4h4q0-.425.288-.712T10 3h4q.425 0 .713.288T15 4h4q.425 0 .713.288T20 5t-.288.713T19 6v13q0 .825-.587 1.413T17 21zm5-7.1l1.9 1.9q.275.275.7.275t.7-.275t.275-.7t-.275-.7l-1.9-1.9l1.9-1.9q.275-.275.275-.7t-.275-.7t-.7-.275t-.7.275L12 11.1l-1.9-1.9q-.275-.275-.7-.275t-.7.275t-.275.7t.275.7l1.9 1.9l-1.9 1.9q-.275.275-.275.7t.275.7t.7.275t.7-.275z"
2879
2883
  }, null, -1)
2880
2884
  ]));
2881
2885
  }
2882
- const aa = E({ name: "material-symbols-delete-forever-rounded", render: na }), la = {
2886
+ const la = E({ name: "material-symbols-delete-forever-rounded", render: aa }), oa = {
2883
2887
  viewBox: "0 0 24 24",
2884
2888
  width: "1.2em",
2885
2889
  height: "1.2em"
2886
2890
  };
2887
- function oa(t, s) {
2888
- return u(), b("svg", la, s[0] || (s[0] = [
2891
+ function ia(t, s) {
2892
+ return u(), b("svg", oa, s[0] || (s[0] = [
2889
2893
  y("path", {
2890
2894
  fill: "currentColor",
2891
2895
  d: "M11.25 13.5q.95 0 1.6-.65t.65-1.6t-.65-1.6t-1.6-.65t-1.6.65t-.65 1.6t.65 1.6t1.6.65m4.825 4l-2.625-2.625q-.5.325-1.062.475t-1.138.15q-1.775 0-3.012-1.237T7 11.25t1.238-3.012T11.25 7t3.013 1.238T15.5 11.25q0 .575-.162 1.138t-.488 1.062l2.65 2.65zM5 21q-.825 0-1.412-.587T3 19v-4h2v4h4v2zm10 0v-2h4v-4h2v4q0 .825-.587 1.413T19 21zM3 9V5q0-.825.588-1.412T5 3h4v2H5v4zm16 0V5h-4V3h4q.825 0 1.413.588T21 5v4z"
2892
2896
  }, null, -1)
2893
2897
  ]));
2894
2898
  }
2895
- const ia = E({ name: "material-symbols-frame-inspect", render: oa }), ua = {
2899
+ const ua = E({ name: "material-symbols-frame-inspect", render: ia }), ca = {
2896
2900
  viewBox: "0 0 24 24",
2897
2901
  width: "1.2em",
2898
2902
  height: "1.2em"
2899
2903
  };
2900
- function ca(t, s) {
2901
- return u(), b("svg", ua, s[0] || (s[0] = [
2904
+ function da(t, s) {
2905
+ return u(), b("svg", ca, s[0] || (s[0] = [
2902
2906
  y("path", {
2903
2907
  fill: "currentColor",
2904
2908
  d: "M12 20q-3.35 0-5.675-2.325T4 12t2.325-5.675T12 4q1.725 0 3.3.712T18 6.75V5q0-.425.288-.712T19 4t.713.288T20 5v5q0 .425-.288.713T19 11h-5q-.425 0-.712-.288T13 10t.288-.712T14 9h3.2q-.8-1.4-2.187-2.2T12 6Q9.5 6 7.75 7.75T6 12t1.75 4.25T12 18q1.7 0 3.113-.862t2.187-2.313q.2-.35.563-.487t.737-.013q.4.125.575.525t-.025.75q-1.025 2-2.925 3.2T12 20"
2905
2909
  }, null, -1)
2906
2910
  ]));
2907
2911
  }
2908
- const da = E({ name: "material-symbols-refresh-rounded", render: ca }), pa = { class: "grid grow place-items-center" }, ma = { class: "flex flex-col items-center p-8" }, fa = { class: "mt-0 mb-0 text-center text-4xl font-medium text-red-600" }, ha = { class: "mt-4 grid grid-cols-1 gap-2 sm:grid-cols-2 [&_button]:justify-start sm:[&_button]:size-32 sm:[&_button]:flex-col sm:[&_button]:justify-center [&_svg]:size-6 sm:[&_svg]:size-8" }, ga = /* @__PURE__ */ g({
2912
+ const pa = E({ name: "material-symbols-refresh-rounded", render: da }), ma = { class: "grid grow place-items-center" }, fa = { class: "flex flex-col items-center p-8" }, ha = { class: "mt-0 mb-0 text-center text-4xl font-medium text-red-600" }, ga = { class: "mt-4 grid grid-cols-1 gap-2 sm:grid-cols-2 [&_button]:justify-start sm:[&_button]:size-32 sm:[&_button]:flex-col sm:[&_button]:justify-center [&_svg]:size-6 sm:[&_svg]:size-8" }, va = /* @__PURE__ */ g({
2909
2913
  __name: "StartupCrash",
2910
2914
  setup(t) {
2911
2915
  async function s() {
@@ -2921,14 +2925,14 @@ Do you still want to proceed?`
2921
2925
  acceptVariant: "danger",
2922
2926
  acceptText: S("startupCrash.purgeConfirmAccept", "Purge device")
2923
2927
  }
2924
- ) && (await et.purge(), await A.reload());
2928
+ ) && (await at.purge(), await A.reload());
2925
2929
  }
2926
2930
  return (e, r) => {
2927
- const n = zt("i-majesticons-exclamation");
2928
- return u(), b("div", pa, [
2929
- y("div", ma, [
2931
+ const n = Rt("i-majesticons-exclamation");
2932
+ return u(), b("div", ma, [
2933
+ y("div", fa, [
2930
2934
  p(n, { class: "size-20 text-red-600" }),
2931
- y("h1", fa, x(e.$td("startupCrash.title", "Oops, something went wrong!")), 1),
2935
+ y("h1", ha, x(e.$td("startupCrash.title", "Oops, something went wrong!")), 1),
2932
2936
  p(P, {
2933
2937
  text: e.$td(
2934
2938
  "startupCrash.message",
@@ -2936,13 +2940,13 @@ Do you still want to proceed?`
2936
2940
  ),
2937
2941
  class: "mt-4 text-center"
2938
2942
  }, null, 8, ["text"]),
2939
- y("div", ha, [
2943
+ y("div", ga, [
2940
2944
  p(q, {
2941
2945
  variant: "danger",
2942
2946
  onClick: r[0] || (r[0] = (a) => e.$app.reload())
2943
2947
  }, {
2944
2948
  default: f(() => [
2945
- p(o(da)),
2949
+ p(o(pa)),
2946
2950
  I(" " + x(e.$td("startupCrash.reload", "Try again")), 1)
2947
2951
  ]),
2948
2952
  _: 1
@@ -2952,7 +2956,7 @@ Do you still want to proceed?`
2952
2956
  onClick: r[1] || (r[1] = (a) => e.$errors.inspect(e.$errors.startupErrors))
2953
2957
  }, {
2954
2958
  default: f(() => [
2955
- p(o(sa)),
2959
+ p(o(ra)),
2956
2960
  I(" " + x(e.$td("startupCrash.inspect", "View error details")), 1)
2957
2961
  ]),
2958
2962
  _: 1
@@ -2962,7 +2966,7 @@ Do you still want to proceed?`
2962
2966
  onClick: r[2] || (r[2] = (a) => s())
2963
2967
  }, {
2964
2968
  default: f(() => [
2965
- p(o(aa)),
2969
+ p(o(la)),
2966
2970
  I(" " + x(e.$td("startupCrash.purge", "Purge device")), 1)
2967
2971
  ]),
2968
2972
  _: 1
@@ -2972,7 +2976,7 @@ Do you still want to proceed?`
2972
2976
  onClick: r[3] || (r[3] = (a) => e.$errors.debug = !e.$errors.debug)
2973
2977
  }, {
2974
2978
  default: f(() => [
2975
- p(o(ia)),
2979
+ p(o(ua)),
2976
2980
  I(" " + x(e.$td("startupCrash.debug", "Toggle debugging")), 1)
2977
2981
  ]),
2978
2982
  _: 1
@@ -2982,13 +2986,13 @@ Do you still want to proceed?`
2982
2986
  ]);
2983
2987
  };
2984
2988
  }
2985
- }), Ct = /* @__PURE__ */ g({
2989
+ }), kt = /* @__PURE__ */ g({
2986
2990
  __name: "HeadlessToastAction",
2987
2991
  props: {
2988
2992
  action: {}
2989
2993
  },
2990
2994
  setup(t) {
2991
- return (s, e) => (u(), h(W(s.action.dismiss ? o(ks) : "button"), {
2995
+ return (s, e) => (u(), h(W(s.action.dismiss ? o(Ss) : "button"), {
2992
2996
  type: "button",
2993
2997
  onClick: s.action.click
2994
2998
  }, {
@@ -2998,7 +3002,7 @@ Do you still want to proceed?`
2998
3002
  _: 1
2999
3003
  }, 8, ["onClick"]));
3000
3004
  }
3001
- }), va = { key: 0 }, ba = /* @__PURE__ */ g({
3005
+ }), ba = { key: 0 }, ya = /* @__PURE__ */ g({
3002
3006
  __name: "HeadlessToast",
3003
3007
  props: {
3004
3008
  message: {},
@@ -3006,11 +3010,11 @@ Do you still want to proceed?`
3006
3010
  variant: {}
3007
3011
  },
3008
3012
  setup(t) {
3009
- return (s, e) => (u(), h(o(Ss), null, {
3013
+ return (s, e) => (u(), h(o(Ts), null, {
3010
3014
  default: f(() => [
3011
3015
  w(s.$slots, "default", {}, () => [
3012
- s.message ? (u(), b("span", va, x(s.message), 1)) : T("", !0),
3013
- (u(!0), b(D, null, F(s.actions, (r, n) => (u(), h(Ct, {
3016
+ s.message ? (u(), b("span", ba, x(s.message), 1)) : T("", !0),
3017
+ (u(!0), b(D, null, F(s.actions, (r, n) => (u(), h(kt, {
3014
3018
  key: n,
3015
3019
  action: r
3016
3020
  }, null, 8, ["action"]))), 128))
@@ -3019,7 +3023,7 @@ Do you still want to proceed?`
3019
3023
  _: 3
3020
3024
  }));
3021
3025
  }
3022
- }), ya = /* @__PURE__ */ g({
3026
+ }), wa = /* @__PURE__ */ g({
3023
3027
  __name: "Toast",
3024
3028
  props: {
3025
3029
  message: {},
@@ -3028,7 +3032,7 @@ Do you still want to proceed?`
3028
3032
  class: {}
3029
3033
  },
3030
3034
  setup(t, { expose: s }) {
3031
- const e = c(() => lt(
3035
+ const e = c(() => et(
3032
3036
  { baseClasses: t.class, variant: t.variant },
3033
3037
  {
3034
3038
  baseClasses: "flex items-center gap-2 rounded-md p-2 ring-1 shadow-lg border-gray-200",
@@ -3043,7 +3047,7 @@ Do you still want to proceed?`
3043
3047
  }
3044
3048
  }
3045
3049
  ));
3046
- return s(), (r, n) => (u(), h(ba, {
3050
+ return s(), (r, n) => (u(), h(ya, {
3047
3051
  class: k(e.value)
3048
3052
  }, {
3049
3053
  default: f(() => [
@@ -3056,84 +3060,84 @@ Do you still want to proceed?`
3056
3060
  key: i,
3057
3061
  action: a,
3058
3062
  variant: r.variant,
3059
- as: Ct
3063
+ as: kt
3060
3064
  }, null, 8, ["action", "variant"]))), 128))
3061
3065
  ]),
3062
3066
  _: 1
3063
3067
  }, 8, ["class"]));
3064
3068
  }
3065
- }), wa = { $ui: z }, $a = {
3069
+ }), $a = { $ui: z }, _a = {
3066
3070
  async install(t, s) {
3067
3071
  const e = {
3068
- "alert-modal": en,
3069
- "confirm-modal": on,
3070
- "error-report-modal": Rn,
3071
- "loading-modal": On,
3072
- "prompt-modal": Gn,
3073
- "startup-crash": ga,
3074
- toast: ya,
3072
+ "alert-modal": tn,
3073
+ "confirm-modal": un,
3074
+ "error-report-modal": Pn,
3075
+ "loading-modal": Nn,
3076
+ "prompt-modal": ea,
3077
+ "startup-crash": va,
3078
+ toast: wa,
3075
3079
  ...s.components
3076
3080
  };
3077
3081
  for (const [r, n] of Object.entries(e))
3078
3082
  z.registerComponent(r, n);
3079
- await $e(t, wa);
3083
+ await $e(t, $a);
3080
3084
  }
3081
3085
  };
3082
- async function _a(t, s = {}) {
3086
+ async function xa(t, s = {}) {
3083
3087
  var r;
3084
- const e = [Br, Ks, jr, Sr, Xs, $a, ...s.plugins ?? []];
3085
- A.instance = t, await Bs(e, t, s), await ((r = s.install) == null ? void 0 : r.call(s, t)), await R.emit("application-ready");
3088
+ const e = [Fr, ar, Br, Tr, ur, _a, ...s.plugins ?? []];
3089
+ A.instance = t, await Fs(e, t, s), await ((r = s.install) == null ? void 0 : r.call(s, t)), await R.emit("application-ready");
3086
3090
  }
3087
- async function Vl(t, s = {}) {
3091
+ async function Ll(t, s = {}) {
3088
3092
  var r;
3089
- const e = Rt(t);
3090
- J() && (window.$aerogel = e), await _a(e, s), e.mount("#app"), (r = e._container) == null || r.classList.remove("loading"), await R.emit("application-mounted");
3093
+ const e = Pt(t);
3094
+ J() && (window.$aerogel = e), await xa(e, s), e.mount("#app"), (r = e._container) == null || r.classList.remove("loading"), await R.emit("application-mounted");
3091
3095
  }
3092
- const xa = { key: 0 }, Ca = /* @__PURE__ */ g({
3096
+ const Ca = { key: 0 }, ka = /* @__PURE__ */ g({
3093
3097
  __name: "AppModals",
3094
3098
  setup(t) {
3095
3099
  const s = c(() => z.modals[0] ?? null);
3096
- return (e, r) => s.value ? (u(), b("aside", xa, [
3097
- p(yt, {
3100
+ return (e, r) => s.value ? (u(), b("aside", Ca, [
3101
+ p(wt, {
3098
3102
  "child-index": 1,
3099
3103
  modal: s.value
3100
3104
  }, null, 8, ["modal"])
3101
3105
  ])) : T("", !0);
3102
3106
  }
3103
- }), ka = /* @__PURE__ */ g({
3107
+ }), Sa = /* @__PURE__ */ g({
3104
3108
  __name: "AppToasts",
3105
3109
  setup(t) {
3106
- return (s, e) => (u(), h(o(Ts), null, {
3110
+ return (s, e) => (u(), h(o(Ms), null, {
3107
3111
  default: f(() => [
3108
3112
  (u(!0), b(D, null, F(s.$ui.toasts, (r) => (u(), h(W(r.component), H({
3109
3113
  id: r.id,
3110
3114
  key: r.id,
3111
3115
  ref_for: !0
3112
3116
  }, r.properties), null, 16, ["id"]))), 128)),
3113
- p(o(Ms), { class: "fixed right-0 bottom-0 z-50 flex flex-col items-end space-y-4 px-4 py-6 sm:p-6" })
3117
+ p(o(Hs), { class: "fixed right-0 bottom-0 z-50 flex flex-col items-end space-y-4 px-4 py-6 sm:p-6" })
3114
3118
  ]),
3115
3119
  _: 1
3116
3120
  }));
3117
3121
  }
3118
- }), Sa = /* @__PURE__ */ g({
3122
+ }), Ta = /* @__PURE__ */ g({
3119
3123
  __name: "AppOverlays",
3120
3124
  setup(t) {
3121
3125
  return (s, e) => (u(), b(D, null, [
3122
- p(Ca),
3123
- p(ka)
3126
+ p(ka),
3127
+ p(Sa)
3124
3128
  ], 64));
3125
3129
  }
3126
- }), Ta = { class: "flex min-h-full flex-col text-base leading-tight font-normal text-gray-900 antialiased" }, Ll = /* @__PURE__ */ g({
3130
+ }), Ma = { class: "flex min-h-full flex-col text-base leading-tight font-normal text-gray-900 antialiased" }, Il = /* @__PURE__ */ g({
3127
3131
  __name: "AppLayout",
3128
3132
  setup(t) {
3129
- return (s, e) => (u(), b("div", Ta, [
3133
+ return (s, e) => (u(), b("div", Ma, [
3130
3134
  s.$errors.hasStartupErrors ? w(s.$slots, "startup-crash", { key: 0 }, () => [
3131
3135
  (u(), h(W(s.$ui.requireComponent("startup-crash"))))
3132
3136
  ]) : w(s.$slots, "default", { key: 1 }),
3133
- p(Sa)
3137
+ p(Ta)
3134
3138
  ]));
3135
3139
  }
3136
- }), Ma = ["id", "name", "value", "required", "aria-invalid", "aria-describedby"], Ha = /* @__PURE__ */ g({
3140
+ }), Ha = ["id", "name", "value", "required", "aria-invalid", "aria-describedby"], Ea = /* @__PURE__ */ g({
3137
3141
  __name: "HeadlessInputTextArea",
3138
3142
  setup(t) {
3139
3143
  const s = G("$textAreaRef"), e = V(
@@ -3143,7 +3147,7 @@ const xa = { key: 0 }, Ca = /* @__PURE__ */ g({
3143
3147
  function a() {
3144
3148
  s.value && e.update(s.value.value);
3145
3149
  }
3146
- return it(e, () => {
3150
+ return st(e, () => {
3147
3151
  var i;
3148
3152
  return (i = s.value) == null ? void 0 : i.focus();
3149
3153
  }), (i, l) => (u(), b("textarea", {
@@ -3155,22 +3159,22 @@ const xa = { key: 0 }, Ca = /* @__PURE__ */ g({
3155
3159
  "aria-invalid": o(e).errors ? "true" : "false",
3156
3160
  "aria-describedby": o(e).errors ? `${o(e).id}-error` : o(e).description ? `${o(e).id}-description` : void 0,
3157
3161
  onInput: a
3158
- }, null, 40, Ma));
3162
+ }, null, 40, Ha));
3159
3163
  }
3160
- }), Ea = { class: "group" }, Va = { class: "-ml-2 flex w-[max-content] items-center rounded-lg py-2 pr-3 pl-1 hover:bg-gray-100 focus-visible:outline focus-visible:outline-gray-700" }, La = { class: "pt-2 pl-4" }, Il = /* @__PURE__ */ g({
3164
+ }), Va = { class: "group" }, La = { class: "-ml-2 flex w-[max-content] items-center rounded-lg py-2 pr-3 pl-1 hover:bg-gray-100 focus-visible:outline focus-visible:outline-gray-700" }, Ia = { class: "pt-2 pl-4" }, ql = /* @__PURE__ */ g({
3161
3165
  __name: "AdvancedOptions",
3162
3166
  setup(t) {
3163
- return (s, e) => (u(), b("details", Ea, [
3164
- y("summary", Va, [
3165
- p(o($t), { class: "size-6 transition-transform group-open:rotate-90" }),
3167
+ return (s, e) => (u(), b("details", Va, [
3168
+ y("summary", La, [
3169
+ p(o(_t), { class: "size-6 transition-transform group-open:rotate-90" }),
3166
3170
  y("span", null, x(s.$td("ui.advancedOptions", "Advanced options")), 1)
3167
3171
  ]),
3168
- y("div", La, [
3172
+ y("div", Ia, [
3169
3173
  w(s.$slots, "default")
3170
3174
  ])
3171
3175
  ]));
3172
3176
  }
3173
- }), Ia = { class: "flex h-6 items-center" }, ql = /* @__PURE__ */ g({
3177
+ }), qa = { class: "flex h-6 items-center" }, zl = /* @__PURE__ */ g({
3174
3178
  inheritAttrs: !1,
3175
3179
  __name: "Checkbox",
3176
3180
  props: {
@@ -3201,8 +3205,8 @@ const xa = { key: 0 }, Ca = /* @__PURE__ */ g({
3201
3205
  "onUpdate:modelValue": v[0] || (v[0] = ($) => d.$emit("update:modelValue", $))
3202
3206
  }), {
3203
3207
  default: f(() => [
3204
- y("div", Ia, [
3205
- p(_t, H(o(r), {
3208
+ y("div", qa, [
3209
+ p(xt, H(o(r), {
3206
3210
  type: "checkbox",
3207
3211
  class: i.value
3208
3212
  }), null, 16, ["class"])
@@ -3229,7 +3233,7 @@ const xa = { key: 0 }, Ca = /* @__PURE__ */ g({
3229
3233
  _: 3
3230
3234
  }, 16, ["class"]));
3231
3235
  }
3232
- }), qa = /* @__PURE__ */ g({
3236
+ }), za = /* @__PURE__ */ g({
3233
3237
  __name: "DropdownMenuOption",
3234
3238
  props: {
3235
3239
  class: {},
@@ -3242,7 +3246,7 @@ const xa = { key: 0 }, Ca = /* @__PURE__ */ g({
3242
3246
  "flex w-full items-center gap-2 rounded-lg px-2 py-2 text-sm text-gray-900 data-[highlighted]:bg-gray-100",
3243
3247
  t.class
3244
3248
  ));
3245
- return (r, n) => (u(), h(o(Hs), H({ class: e.value }, s, {
3249
+ return (r, n) => (u(), h(o(Es), H({ class: e.value }, s, {
3246
3250
  onSelect: n[0] || (n[0] = (a) => r.$emit("select"))
3247
3251
  }), {
3248
3252
  default: f(() => [
@@ -3251,24 +3255,24 @@ const xa = { key: 0 }, Ca = /* @__PURE__ */ g({
3251
3255
  _: 3
3252
3256
  }, 16, ["class"]));
3253
3257
  }
3254
- }), za = /* @__PURE__ */ g({
3258
+ }), Ra = /* @__PURE__ */ g({
3255
3259
  __name: "DropdownMenuOptions",
3256
3260
  setup(t) {
3257
3261
  const s = V(
3258
3262
  "dropdown-menu",
3259
3263
  "<DropdownMenuOptions> must be a child of a <DropdownMenu>"
3260
3264
  );
3261
- return (e, r) => (u(), h(o(Es), {
3265
+ return (e, r) => (u(), h(o(Vs), {
3262
3266
  class: "gap-y-0.5 rounded-lg bg-white p-1.5 shadow-lg ring-1 ring-black/5",
3263
3267
  align: o(s).align,
3264
3268
  side: o(s).side
3265
3269
  }, {
3266
3270
  default: f(() => [
3267
3271
  w(e.$slots, "default", {}, () => [
3268
- (u(!0), b(D, null, F(o(s).options, (n, a) => (u(), h(qa, H(
3272
+ (u(!0), b(D, null, F(o(s).options, (n, a) => (u(), h(za, H(
3269
3273
  {
3270
3274
  key: a,
3271
- as: n.route || n.href ? at : void 0,
3275
+ as: n.route || n.href ? ct : void 0,
3272
3276
  class: n.class,
3273
3277
  ref_for: !0
3274
3278
  },
@@ -3295,7 +3299,7 @@ const xa = { key: 0 }, Ca = /* @__PURE__ */ g({
3295
3299
  _: 3
3296
3300
  }, 8, ["align", "side"]));
3297
3301
  }
3298
- }), zl = /* @__PURE__ */ g({
3302
+ }), Rl = /* @__PURE__ */ g({
3299
3303
  __name: "DropdownMenu",
3300
3304
  props: {
3301
3305
  align: {},
@@ -3311,18 +3315,18 @@ const xa = { key: 0 }, Ca = /* @__PURE__ */ g({
3311
3315
  return (r = t.options) == null ? void 0 : r.filter(Boolean);
3312
3316
  })
3313
3317
  };
3314
- return le("dropdown-menu", e), s(e), (r, n) => (u(), h(o(Vs), null, {
3318
+ return le("dropdown-menu", e), s(e), (r, n) => (u(), h(o(Ls), null, {
3315
3319
  default: f(() => [
3316
- p(o(Ls), null, {
3320
+ p(o(Is), null, {
3317
3321
  default: f(() => [
3318
3322
  w(r.$slots, "default")
3319
3323
  ]),
3320
3324
  _: 3
3321
3325
  }),
3322
- p(o(Is), null, {
3326
+ p(o(qs), null, {
3323
3327
  default: f(() => [
3324
3328
  w(r.$slots, "options", {}, () => [
3325
- p(za)
3329
+ p(Ra)
3326
3330
  ])
3327
3331
  ]),
3328
3332
  _: 3
@@ -3331,7 +3335,7 @@ const xa = { key: 0 }, Ca = /* @__PURE__ */ g({
3331
3335
  _: 3
3332
3336
  }));
3333
3337
  }
3334
- }), Ra = ["aria-hidden"], Pa = ["tabindex", "aria-label", "type"], Rl = /* @__PURE__ */ g({
3338
+ }), Pa = ["aria-hidden"], Aa = ["tabindex", "aria-label", "type"], Pl = /* @__PURE__ */ g({
3335
3339
  __name: "EditableContent",
3336
3340
  props: {
3337
3341
  type: { default: "text" },
@@ -3388,39 +3392,39 @@ const xa = { key: 0 }, Ca = /* @__PURE__ */ g({
3388
3392
  onKeyup: C[1] || (C[1] = (L) => m.$emit("update", a.value)),
3389
3393
  onFocus: C[2] || (C[2] = (L) => v()),
3390
3394
  onBlur: C[3] || (C[3] = (L) => $())
3391
- }, null, 42, Pa), [
3392
- [Pt, a.value]
3395
+ }, null, 42, Aa), [
3396
+ [At, a.value]
3393
3397
  ])
3394
- ], 40, Ra)
3398
+ ], 40, Pa)
3395
3399
  ], 2));
3396
3400
  }
3397
- }), Aa = {
3401
+ }), Da = {
3398
3402
  viewBox: "0 0 512 512",
3399
3403
  width: "1.2em",
3400
3404
  height: "1.2em"
3401
3405
  };
3402
- function Da(t, s) {
3403
- return u(), b("svg", Aa, s[0] || (s[0] = [
3406
+ function ja(t, s) {
3407
+ return u(), b("svg", Da, s[0] || (s[0] = [
3404
3408
  y("path", {
3405
3409
  fill: "currentColor",
3406
3410
  d: "M449.07 399.08L278.64 82.58c-12.08-22.44-44.26-22.44-56.35 0L51.87 399.08A32 32 0 0 0 80 446.25h340.89a32 32 0 0 0 28.18-47.17m-198.6-1.83a20 20 0 1 1 20-20a20 20 0 0 1-20 20m21.72-201.15l-5.74 122a16 16 0 0 1-32 0l-5.74-121.95a21.73 21.73 0 0 1 21.5-22.69h.21a21.74 21.74 0 0 1 21.73 22.7Z"
3407
3411
  }, null, -1)
3408
3412
  ]));
3409
3413
  }
3410
- const ja = E({ name: "ion-warning", render: Da }), Ba = {
3414
+ const Ba = E({ name: "ion-warning", render: ja }), Fa = {
3411
3415
  viewBox: "0 0 20 20",
3412
3416
  width: "1.2em",
3413
3417
  height: "1.2em"
3414
3418
  };
3415
- function Fa(t, s) {
3416
- return u(), b("svg", Ba, s[0] || (s[0] = [
3419
+ function Ua(t, s) {
3420
+ return u(), b("svg", Fa, s[0] || (s[0] = [
3417
3421
  y("path", {
3418
3422
  fill: "currentColor",
3419
3423
  d: "M.2 10a11 11 0 0 1 19.6 0A11 11 0 0 1 .2 10m9.8 4a4 4 0 1 0 0-8a4 4 0 0 0 0 8m0-2a2 2 0 1 1 0-4a2 2 0 0 1 0 4"
3420
3424
  }, null, -1)
3421
3425
  ]));
3422
3426
  }
3423
- const Ua = E({ name: "zondicons-view-show", render: Fa }), Oa = { class: "font-medium" }, Na = ["datetime"], Wa = /* @__PURE__ */ g({
3427
+ const Oa = E({ name: "zondicons-view-show", render: Ua }), Na = { class: "font-medium" }, Wa = ["datetime"], Ka = /* @__PURE__ */ g({
3424
3428
  __name: "ErrorLogsModal",
3425
3429
  setup(t) {
3426
3430
  return (s, e) => (u(), h(se, {
@@ -3433,14 +3437,14 @@ const Ua = E({ name: "zondicons-view-show", render: Fa }), Oa = { class: "font-m
3433
3437
  class: "mb-2 flex max-w-prose min-w-56 justify-between py-2 last:mb-0"
3434
3438
  }, [
3435
3439
  y("div", null, [
3436
- y("h3", Oa, x(r.report.title), 1),
3440
+ y("h3", Na, x(r.report.title), 1),
3437
3441
  y("time", {
3438
3442
  datetime: r.date.toISOString(),
3439
3443
  class: "text-xs text-gray-700"
3440
- }, x(r.date.toLocaleTimeString()), 9, Na),
3444
+ }, x(r.date.toLocaleTimeString()), 9, Wa),
3441
3445
  p(P, {
3442
3446
  class: "text-sm text-gray-500",
3443
- text: r.report.description ?? o(bt)(r.report)
3447
+ text: r.report.description ?? o(yt)(r.report)
3444
3448
  }, null, 8, ["text"])
3445
3449
  ]),
3446
3450
  p(q, {
@@ -3455,7 +3459,7 @@ const Ua = E({ name: "zondicons-view-show", render: Fa }), Oa = { class: "font-m
3455
3459
  )
3456
3460
  }, {
3457
3461
  default: f(() => [
3458
- p(o(Ua), {
3462
+ p(o(Oa), {
3459
3463
  class: "size-4",
3460
3464
  "aria-hidden": "true"
3461
3465
  })
@@ -3468,7 +3472,7 @@ const Ua = E({ name: "zondicons-view-show", render: Fa }), Oa = { class: "font-m
3468
3472
  _: 1
3469
3473
  }, 8, ["title"]));
3470
3474
  }
3471
- }), Pl = /* @__PURE__ */ g({
3475
+ }), Al = /* @__PURE__ */ g({
3472
3476
  __name: "ErrorLogs",
3473
3477
  setup(t) {
3474
3478
  return (s, e) => s.$errors.logs.length > 0 ? (u(), h(q, {
@@ -3477,27 +3481,27 @@ const Ua = E({ name: "zondicons-view-show", render: Fa }), Oa = { class: "font-m
3477
3481
  variant: "ghost",
3478
3482
  title: s.$td("errors.viewLogs", "View error logs"),
3479
3483
  "aria-label": s.$td("errors.viewLogs", "View error logs"),
3480
- onClick: e[0] || (e[0] = (r) => s.$ui.modal(Wa))
3484
+ onClick: e[0] || (e[0] = (r) => s.$ui.modal(Ka))
3481
3485
  }, {
3482
3486
  default: f(() => [
3483
- p(o(ja), { class: "size-6 text-red-500" })
3487
+ p(o(Ba), { class: "size-6 text-red-500" })
3484
3488
  ]),
3485
3489
  _: 1
3486
3490
  }, 8, ["title", "aria-label"])) : T("", !0);
3487
3491
  }
3488
- }), Al = /* @__PURE__ */ g({
3492
+ }), Dl = /* @__PURE__ */ g({
3489
3493
  __name: "ErrorMessage",
3490
3494
  props: {
3491
3495
  error: {}
3492
3496
  },
3493
3497
  setup(t) {
3494
- const s = c(() => bt(t.error));
3498
+ const s = c(() => yt(t.error));
3495
3499
  return (e, r) => (u(), h(P, {
3496
3500
  text: s.value,
3497
3501
  inline: ""
3498
3502
  }, null, 8, ["text"]));
3499
3503
  }
3500
- }), Dl = /* @__PURE__ */ g({
3504
+ }), jl = /* @__PURE__ */ g({
3501
3505
  __name: "Link",
3502
3506
  props: {
3503
3507
  class: {},
@@ -3519,10 +3523,10 @@ const Ua = E({ name: "zondicons-view-show", render: Fa }), Oa = { class: "font-m
3519
3523
  _: 3
3520
3524
  }, 16));
3521
3525
  }
3522
- }), jl = /* @__PURE__ */ g({
3526
+ }), Bl = /* @__PURE__ */ g({
3523
3527
  __name: "SettingsModal",
3524
3528
  setup(t) {
3525
- const s = c(() => Jt(A.settings, "priority", "desc"));
3529
+ const s = c(() => Zt(A.settings, "priority", "desc"));
3526
3530
  return (e, r) => (u(), h(se, {
3527
3531
  title: e.$td("settings.title", "Settings")
3528
3532
  }, {
@@ -3532,10 +3536,10 @@ const Ua = E({ name: "zondicons-view-show", render: Fa }), Oa = { class: "font-m
3532
3536
  _: 1
3533
3537
  }, 8, ["title"]));
3534
3538
  }
3535
- }), Ka = {
3539
+ }), Qa = {
3536
3540
  key: 0,
3537
3541
  class: "pointer-events-none absolute inset-y-0 right-0 flex items-center pr-3"
3538
- }, Bl = /* @__PURE__ */ g({
3542
+ }, Fl = /* @__PURE__ */ g({
3539
3543
  inheritAttrs: !1,
3540
3544
  __name: "TextArea",
3541
3545
  props: {
@@ -3575,12 +3579,12 @@ const Ua = E({ name: "zondicons-view-show", render: Fa }), Oa = { class: "font-m
3575
3579
  y("div", {
3576
3580
  class: k(a.value)
3577
3581
  }, [
3578
- p(Ha, H(o(r), { class: i.value }), null, 16, ["class"]),
3579
- (v = e.value) != null && v.errors ? (u(), b("div", Ka, [
3582
+ p(Ea, H(o(r), { class: i.value }), null, 16, ["class"]),
3583
+ (v = e.value) != null && v.errors ? (u(), b("div", Qa, [
3580
3584
  p(o(qe), { class: "size-5 text-red-500" })
3581
3585
  ])) : T("", !0)
3582
3586
  ], 2),
3583
- p(xt, { class: "mt-2 text-sm text-gray-600" }),
3587
+ p(Ct, { class: "mt-2 text-sm text-gray-600" }),
3584
3588
  p(he, { class: "mt-2 text-sm text-red-600" })
3585
3589
  ];
3586
3590
  }),
@@ -3588,7 +3592,7 @@ const Ua = E({ name: "zondicons-view-show", render: Fa }), Oa = { class: "font-m
3588
3592
  }, 16, ["label", "class"]));
3589
3593
  }
3590
3594
  });
3591
- class Fl {
3595
+ class Ul {
3592
3596
  constructor() {
3593
3597
  _(this, "status");
3594
3598
  _(this, "_listeners");
@@ -3596,7 +3600,7 @@ class Fl {
3596
3600
  _(this, "_cancelled");
3597
3601
  _(this, "_started");
3598
3602
  _(this, "_completed");
3599
- this.status = this.getInitialStatus(), this._listeners = new Zt(), this._started = new K(), this._completed = new K();
3603
+ this.status = this.getInitialStatus(), this._listeners = new Xt(), this._started = new K(), this._completed = new K();
3600
3604
  }
3601
3605
  async start() {
3602
3606
  this.beforeStart(), this._started.resolve();
@@ -3605,7 +3609,7 @@ class Fl {
3605
3609
  } catch (s) {
3606
3610
  if (s instanceof Ue)
3607
3611
  return;
3608
- throw ee(Xt(s), (e) => {
3612
+ throw ee(Yt(s), (e) => {
3609
3613
  this._completed.reject(e);
3610
3614
  });
3611
3615
  }
@@ -3649,7 +3653,7 @@ class Fl {
3649
3653
  throw this._cancelled.resolve(), new Ue();
3650
3654
  }
3651
3655
  calculateCurrentProgress(s) {
3652
- return s ?? (s = this.status), s.completed ? 1 : s.children ? Yt(
3656
+ return s ?? (s = this.status), s.completed ? 1 : s.children ? Gt(
3653
3657
  s.children.reduce((e, r) => e + this.calculateCurrentProgress(r), 0) / s.children.length,
3654
3658
  2
3655
3659
  ) : 0;
@@ -3663,147 +3667,148 @@ class Fl {
3663
3667
  return { ...s };
3664
3668
  }
3665
3669
  }
3666
- async function Ul(t) {
3670
+ async function Ol(t) {
3667
3671
  await t.start();
3668
3672
  }
3669
3673
  export {
3670
- Il as AdvancedOptions,
3671
- en as AlertModal,
3674
+ ql as AdvancedOptions,
3675
+ tn as AlertModal,
3672
3676
  A as App,
3673
- Ll as AppLayout,
3674
- Ca as AppModals,
3675
- Sa as AppOverlays,
3676
- js as AppService,
3677
- ka as AppToasts,
3677
+ Il as AppLayout,
3678
+ ka as AppModals,
3679
+ Ta as AppOverlays,
3680
+ Bs as AppService,
3681
+ Sa as AppToasts,
3678
3682
  q as Button,
3679
- cl as Cache,
3680
- Qs as CacheService,
3681
- ql as Checkbox,
3682
- on as ConfirmModal,
3683
- zl as DropdownMenu,
3684
- qa as DropdownMenuOption,
3685
- za as DropdownMenuOptions,
3686
- Rl as EditableContent,
3687
- Pl as ErrorLogs,
3688
- Wa as ErrorLogsModal,
3689
- Al as ErrorMessage,
3690
- Rn as ErrorReportModal,
3691
- Tn as ErrorReportModalButtons,
3692
- Mn as ErrorReportModalTitle,
3693
- nt as Errors,
3694
- ll as EventListenerPriorities,
3683
+ bl as Cache,
3684
+ lr as CacheService,
3685
+ zl as Checkbox,
3686
+ un as ConfirmModal,
3687
+ Rl as DropdownMenu,
3688
+ za as DropdownMenuOption,
3689
+ Ra as DropdownMenuOptions,
3690
+ Pl as EditableContent,
3691
+ Al as ErrorLogs,
3692
+ Ka as ErrorLogsModal,
3693
+ Dl as ErrorMessage,
3694
+ Pn as ErrorReportModal,
3695
+ Mn as ErrorReportModalButtons,
3696
+ Hn as ErrorReportModalTitle,
3697
+ ut as Errors,
3698
+ ol as EventListenerPriorities,
3695
3699
  R as Events,
3696
- As as EventsService,
3697
- wt as Form,
3698
- gr as FormController,
3699
- at as HeadlessButton,
3700
+ Ds as EventsService,
3701
+ $t as Form,
3702
+ Xs as FormController,
3703
+ ct as HeadlessButton,
3700
3704
  ze as HeadlessInput,
3701
- xt as HeadlessInputDescription,
3705
+ Ct as HeadlessInputDescription,
3702
3706
  he as HeadlessInputError,
3703
- _t as HeadlessInputInput,
3707
+ xt as HeadlessInputInput,
3704
3708
  fe as HeadlessInputLabel,
3705
- Ha as HeadlessInputTextArea,
3706
- Nr as HeadlessModal,
3707
- Wr as HeadlessModalContent,
3708
- Kr as HeadlessModalDescription,
3709
- Qr as HeadlessModalOverlay,
3710
- Jr as HeadlessModalTitle,
3711
- vr as HeadlessSelect,
3709
+ Ea as HeadlessInputTextArea,
3710
+ Wr as HeadlessModal,
3711
+ Kr as HeadlessModalContent,
3712
+ Qr as HeadlessModalDescription,
3713
+ Jr as HeadlessModalOverlay,
3714
+ Zr as HeadlessModalTitle,
3715
+ br as HeadlessSelect,
3712
3716
  Be as HeadlessSelectLabel,
3713
- pt as HeadlessSelectOption,
3714
- mt as HeadlessSelectOptions,
3715
- dt as HeadlessSelectTrigger,
3716
- ct as HeadlessSelectValue,
3717
- Ir as HeadlessSwitch,
3718
- ba as HeadlessToast,
3719
- Jn as Input,
3720
- Fl as Job,
3717
+ mt as HeadlessSelectOption,
3718
+ ft as HeadlessSelectOptions,
3719
+ pt as HeadlessSelectTrigger,
3720
+ dt as HeadlessSelectValue,
3721
+ qr as HeadlessSwitch,
3722
+ ya as HeadlessToast,
3723
+ Zn as Input,
3724
+ Ul as Job,
3721
3725
  Ue as JobCancelledError,
3722
3726
  Z as Lang,
3723
3727
  me as Layouts,
3724
- Dl as Link,
3725
- On as LoadingModal,
3726
- tt as MOBILE_BREAKPOINT,
3728
+ jl as Link,
3729
+ Nn as LoadingModal,
3730
+ lt as MOBILE_BREAKPOINT,
3727
3731
  P as Markdown,
3728
3732
  se as Modal,
3729
- yt as ModalContext,
3730
- Fn as ProgressBar,
3731
- Gn as PromptModal,
3732
- $r as Select,
3733
- ft as SelectLabel,
3733
+ wt as ModalContext,
3734
+ Un as ProgressBar,
3735
+ ea as PromptModal,
3736
+ _r as Select,
3737
+ ht as SelectLabel,
3734
3738
  Fe as SelectOption,
3735
- ht as SelectOptions,
3736
- gt as SelectTrigger,
3739
+ gt as SelectOptions,
3740
+ vt as SelectTrigger,
3737
3741
  we as Service,
3738
3742
  Te as ServiceBootError,
3739
- Vr as Setting,
3740
- jl as SettingsModal,
3741
- ga as StartupCrash,
3742
- et as Storage,
3743
- qr as Switch,
3744
- Bl as TextArea,
3745
- ya as Toast,
3743
+ Lr as Setting,
3744
+ Bl as SettingsModal,
3745
+ va as StartupCrash,
3746
+ at as Storage,
3747
+ zr as Switch,
3748
+ Fl as TextArea,
3749
+ wa as Toast,
3746
3750
  z as UI,
3747
- Gs as UIService,
3748
- fl as __valueType,
3749
- qs as appNamespace,
3750
- wl as booleanInput,
3751
+ dr as UIService,
3752
+ pl as __valueType,
3753
+ nr as aerogelDirectives,
3754
+ zs as appNamespace,
3755
+ $l as booleanInput,
3751
3756
  $e as bootServices,
3752
- Vl as bootstrap,
3753
- _a as bootstrapApplication,
3757
+ Ll as bootstrap,
3758
+ xa as bootstrapApplication,
3754
3759
  M as classes,
3755
- vl as computedAsync,
3756
- bl as computedDebounce,
3757
- $l as dateInput,
3758
- ul as defineDirective,
3759
- ml as defineFormValidationRule,
3760
- il as definePlugin,
3760
+ hl as computedAsync,
3761
+ gl as computedDebounce,
3762
+ _l as dateInput,
3763
+ cl as defineDirective,
3764
+ dl as defineFormValidationRule,
3765
+ ul as definePlugin,
3761
3766
  ye as defineServiceState,
3762
- Ps as defineServiceStore,
3763
- ol as defineSettings,
3764
- Ul as dispatch,
3765
- _l as enumInput,
3766
- st as getCurrentLayout,
3767
- bt as getErrorMessage,
3768
- ir as getMarkdownRouter,
3769
- Rs as getPiniaStore,
3770
- dr as hasSelectOptionLabel,
3771
- Os as injectOrFail,
3772
- Us as injectReactive,
3767
+ As as defineServiceStore,
3768
+ il as defineSettings,
3769
+ Ol as dispatch,
3770
+ xl as enumInput,
3771
+ ot as getCurrentLayout,
3772
+ yt as getErrorMessage,
3773
+ tr as getMarkdownRouter,
3774
+ Ps as getPiniaStore,
3775
+ vr as hasSelectOptionLabel,
3776
+ Ns as injectOrFail,
3777
+ Os as injectReactive,
3773
3778
  V as injectReactiveOrFail,
3774
- Bs as installPlugins,
3775
- Ml as numberInput,
3776
- Hl as objectInput,
3777
- hl as onCleanMounted,
3778
- it as onFormFocus,
3779
- gl as persistent,
3780
- yl as registerErrorHandler,
3781
- ur as renderMarkdown,
3779
+ Fs as installPlugins,
3780
+ Hl as numberInput,
3781
+ El as objectInput,
3782
+ ml as onCleanMounted,
3783
+ st as onFormFocus,
3784
+ fl as persistent,
3785
+ wl as registerErrorHandler,
3786
+ sr as renderMarkdown,
3782
3787
  Ge as renderVNode,
3783
- dl as replaceExisting,
3784
- xl as requiredBooleanInput,
3785
- Cl as requiredDateInput,
3786
- kl as requiredEnumInput,
3787
- Sl as requiredNumberInput,
3788
- Tl as requiredObjectInput,
3789
- Zn as requiredStringInput,
3790
- zs as resetPiniaStore,
3791
- cr as safeHtml,
3792
- pl as setMarkdownRouter,
3793
- El as stringInput,
3794
- rt as translate,
3788
+ yl as replaceExisting,
3789
+ Cl as requiredBooleanInput,
3790
+ kl as requiredDateInput,
3791
+ Sl as requiredEnumInput,
3792
+ Tl as requiredNumberInput,
3793
+ Ml as requiredObjectInput,
3794
+ Xn as requiredStringInput,
3795
+ Rs as resetPiniaStore,
3796
+ nt as safeHtml,
3797
+ vl as setMarkdownRouter,
3798
+ Vl as stringInput,
3799
+ it as translate,
3795
3800
  S as translateWithDefault,
3796
- Gr as useAlertModal,
3797
- tn as useConfirmModal,
3798
- Hn as useErrorReportModal,
3799
- ot as useEvent,
3800
- ut as useForm,
3801
+ en as useAlertModal,
3802
+ sn as useConfirmModal,
3803
+ En as useErrorReportModal,
3804
+ tt as useEvent,
3805
+ rt as useForm,
3801
3806
  Ie as useInputAttrs,
3802
- Un as useLoadingModal,
3803
- Xn as usePromptModal,
3804
- hr as validate,
3805
- fr as validateType,
3807
+ On as useLoadingModal,
3808
+ Yn as usePromptModal,
3809
+ Zs as validate,
3810
+ Js as validateType,
3806
3811
  de as validators,
3807
- lt as variantClasses
3812
+ et as variantClasses
3808
3813
  };
3809
3814
  //# sourceMappingURL=aerogel-core.js.map