@aerogel/core 0.1.1-next.d86959f8ee7dcf2194447eb424c1095912a5e5f8 → 0.1.1-next.fb520688df1cb99debb744172bd6f7f9e8a5f2d0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (35) hide show
  1. package/dist/aerogel-core.d.ts +220 -261
  2. package/dist/aerogel-core.js +1363 -1367
  3. package/dist/aerogel-core.js.map +1 -1
  4. package/package.json +3 -2
  5. package/src/components/AppOverlays.vue +3 -2
  6. package/src/components/contracts/AlertModal.ts +1 -1
  7. package/src/components/contracts/Button.ts +1 -1
  8. package/src/components/contracts/ConfirmModal.ts +5 -2
  9. package/src/components/contracts/Modal.ts +6 -3
  10. package/src/components/contracts/PromptModal.ts +6 -2
  11. package/src/components/contracts/Toast.ts +1 -1
  12. package/src/components/headless/HeadlessInputInput.vue +13 -5
  13. package/src/components/headless/HeadlessModal.vue +6 -34
  14. package/src/components/headless/HeadlessModalContent.vue +5 -12
  15. package/src/components/index.ts +0 -1
  16. package/src/components/ui/AdvancedOptions.vue +4 -13
  17. package/src/components/ui/Button.vue +1 -0
  18. package/src/components/ui/ConfirmModal.vue +7 -2
  19. package/src/components/ui/Details.vue +20 -0
  20. package/src/components/ui/Form.vue +1 -1
  21. package/src/components/ui/Modal.vue +26 -25
  22. package/src/components/ui/PromptModal.vue +7 -2
  23. package/src/components/ui/Toast.vue +1 -0
  24. package/src/components/ui/index.ts +1 -1
  25. package/src/forms/FormController.ts +4 -0
  26. package/src/ui/UI.state.ts +0 -11
  27. package/src/ui/UI.ts +42 -125
  28. package/src/ui/index.ts +1 -0
  29. package/src/ui/modals.ts +36 -0
  30. package/src/utils/composition/reactiveSet.test.ts +32 -0
  31. package/src/utils/composition/reactiveSet.ts +53 -0
  32. package/src/utils/index.ts +2 -0
  33. package/src/utils/time.ts +2 -0
  34. package/src/components/AppModals.vue +0 -14
  35. package/src/components/ui/ModalContext.vue +0 -31
@@ -1,42 +1,44 @@
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";
1
+ var qt = Object.defineProperty;
2
+ var At = (t, s, e) => s in t ? qt(t, s, { enumerable: !0, configurable: !0, writable: !0, value: e }) : t[s] = e;
3
+ var _ = (t, s, e) => At(t, typeof s != "symbol" ? s + "" : s, e);
4
+ import { markRaw as V, Comment as Pt, Text as Dt, Static as jt, inject as X, reactive as ge, unref as l, onUnmounted as we, ref as N, computed as c, readonly as $e, nextTick as Bt, useAttrs as tt, onMounted as st, watch as Le, toRaw as Ft, customRef as Ut, watchEffect as Y, defineComponent as h, createBlock as f, openBlock as o, mergeProps as H, withCtx as m, renderSlot as $, createPropsRestProxy as K, createVNode as d, normalizeProps as ue, guardReactiveProps as ce, createTextVNode as L, toDisplayString as C, normalizeClass as x, createElementBlock as y, Fragment as D, renderList as U, provide as de, resolveDynamicComponent as G, useSlots as Ie, createCommentVNode as M, createElementVNode as b, h as Ot, useTemplateRef as ee, withModifiers as rt, withDirectives as nt, vModelCheckbox as Nt, normalizeStyle as Wt, resolveComponent as Kt, createApp as Qt, vModelText as Jt } from "vue";
5
+ import { JSError as _e, stringToSlug as Zt, tap as te, MagicObject as at, PromisedValue as Q, Storage as O, objectOnly as ne, arrayFrom as lt, isEmpty as ke, objectDeepClone as Xt, fail as W, facade as se, arrayRemove as He, getEnv as Yt, updateLocationQueryParameters as Gt, forever as es, toString as B, objectWithout as ts, noop as ss, debounce as rs, stringMatchAll as ot, isDevelopment as J, isTesting as ze, after as le, uuid as ie, isObject as fe, objectWithoutEmpty as it, value as ns, isInstanceOf as Oe, stringExcerpt as as, arraySorted as ls, ListenersManager as os, toError as is, round as us } from "@noeldemartin/utils";
6
6
  import j from "virtual:aerogel";
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
- class Te extends be {
7
+ import { createPinia as cs, setActivePinia as ds, defineStore as ps } from "pinia";
8
+ import ms from "dompurify";
9
+ import { marked as fs, Renderer as Ne } from "marked";
10
+ import { injectModal as ut, useModal as hs, createModal as gs, showModal as We, closeModal as Ke, modals as ae, ModalComponent as vs, ModalsPortal as bs } from "@noeldemartin/vue-modals";
11
+ import { ModalComponent as po, ModalsPortal as mo, closeModal as fo, createModal as ho, injectModal as go, modals as vo, showModal as bo } from "@noeldemartin/vue-modals";
12
+ import ys from "clsx";
13
+ import { cva as ws } from "class-variance-authority";
14
+ import { twMerge as $s } from "tailwind-merge";
15
+ import { Primitive as _s, SelectValue as Qe, SelectTrigger as Cs, SelectIcon as xs, SelectItem as Ss, SelectItemText as ks, SelectPortal as Ts, SelectContent as Ms, SelectViewport as Es, SelectRoot as Hs, Label as Vs, useForwardExpose as Re, SwitchRoot as Ls, SwitchThumb as Is, DialogRoot as zs, DialogPortal as Rs, DialogContent as qs, DialogDescription as As, DialogOverlay as Ps, DialogTitle as Ds, ToastClose as js, ToastRoot as Bs, ToastProvider as Fs, ToastViewport as Us, DropdownMenuItem as Os, DropdownMenuContent as Ns, DropdownMenuRoot as Ws, DropdownMenuTrigger as Ks, DropdownMenuPortal as Qs } from "reka-ui";
16
+ class Ve extends _e {
15
17
  constructor(s, e) {
16
18
  super(`Service '${s}' failed booting`, { cause: e });
17
19
  }
18
20
  }
19
- function zs() {
20
- return j.namespace ?? Dt(j.name);
21
+ function Js() {
22
+ return j.namespace ?? Zt(j.name);
21
23
  }
22
- let Le = null;
23
- function Ye() {
24
- return Le ?? Rs();
24
+ let qe = null;
25
+ function ct() {
26
+ return qe ?? Zs();
25
27
  }
26
- function Rs() {
27
- return ee(es(), (t) => {
28
- Le = t, ts(t);
28
+ function Zs() {
29
+ return te(cs(), (t) => {
30
+ qe = t, ds(t);
29
31
  });
30
32
  }
31
- function Ps() {
32
- return Le ?? Ye();
33
+ function Xs() {
34
+ return qe ?? ct();
33
35
  }
34
- function As(t, s) {
35
- return Ye(), ss(t, s)();
36
+ function Ys(t, s) {
37
+ return ct(), ps(t, s)();
36
38
  }
37
- function ye(t) {
39
+ function Ce(t) {
38
40
  var s;
39
- return s = class extends we {
41
+ return s = class extends xe {
40
42
  usesStore() {
41
43
  return !0;
42
44
  }
@@ -72,8 +74,8 @@ To fix this problem, declare your initialState as a function instead.`
72
74
  }
73
75
  }, _(s, "persist", t.persist ?? []), s;
74
76
  }
75
- var ke;
76
- let we = (ke = class extends Qe {
77
+ var Ee;
78
+ let xe = (Ee = class extends at {
77
79
  constructor() {
78
80
  super();
79
81
  _(this, "_name");
@@ -82,7 +84,7 @@ let we = (ke = class extends Qe {
82
84
  _(this, "_watchers");
83
85
  _(this, "_store");
84
86
  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() && As(this._name, {
87
+ this._name = this.getName() ?? new.target.name, this._booted = new Q(), this._computedStateKeys = new Set(Object.keys(e)), this._watchers = this.getStateWatchers(), this._store = this.usesStore() && Ys(this._name, {
86
88
  state: () => this.getInitialState(),
87
89
  // eslint-disable-next-line @typescript-eslint/no-explicit-any
88
90
  getters: e
@@ -95,7 +97,7 @@ let we = (ke = class extends Qe {
95
97
  return super.static(e);
96
98
  }
97
99
  launch() {
98
- const e = (r) => this._booted.reject(new Te(this._name, r));
100
+ const e = (r) => this._booted.reject(new Ve(this._name, r));
99
101
  try {
100
102
  this.frameworkBoot().then(() => this.boot()).then(() => this._booted.resolve()).catch(e);
101
103
  } catch (r) {
@@ -116,14 +118,14 @@ let we = (ke = class extends Qe {
116
118
  setState(e, r) {
117
119
  if (!this._store)
118
120
  return;
119
- const n = typeof e == "string" ? { [e]: r } : e, a = oe(this._store.$state, Object.keys(n));
121
+ const n = typeof e == "string" ? { [e]: r } : e, a = ne(this._store.$state, Object.keys(n));
120
122
  Object.assign(this._store.$state, n), this.onStateUpdated(n, a);
121
123
  }
122
124
  updatePersistedState(e) {
123
125
  if (!this._store)
124
126
  return;
125
- const r = Je(e), n = oe(this._store.$state, r);
126
- xe(n) || this.onPersistentStateUpdated(n);
127
+ const r = lt(e), n = ne(this._store.$state, r);
128
+ ke(n) || this.onPersistentStateUpdated(n);
127
129
  }
128
130
  __get(e) {
129
131
  return this.hasState(e) ? this.getState(e) : super.__get(e);
@@ -132,21 +134,21 @@ let we = (ke = class extends Qe {
132
134
  this.setState({ [e]: r });
133
135
  }
134
136
  get storageKey() {
135
- return `${zs()}:${this._name}`;
137
+ return `${Js()}:${this._name}`;
136
138
  }
137
139
  onStateUpdated(e, r) {
138
- const n = oe(e, this.static("persist"));
139
- xe(n) || this.onPersistentStateUpdated(n);
140
+ const n = ne(e, this.static("persist"));
141
+ ke(n) || this.onPersistentStateUpdated(n);
140
142
  for (const a in e) {
141
- const i = this._watchers[a];
142
- !i || e[a] === r[a] || i.call(this, e[a], r[a]);
143
+ const u = this._watchers[a];
144
+ !u || e[a] === r[a] || u.call(this, e[a], r[a]);
143
145
  }
144
146
  }
145
147
  onPersistentStateUpdated(e) {
146
148
  const r = O.get(this.storageKey);
147
149
  r && O.set(this.storageKey, {
148
150
  ...r,
149
- ...this.serializePersistedState(jt(e))
151
+ ...this.serializePersistedState(Xt(e))
150
152
  });
151
153
  }
152
154
  usesStore() {
@@ -176,25 +178,25 @@ let we = (ke = class extends Qe {
176
178
  async boot() {
177
179
  }
178
180
  restorePersistedState() {
179
- if (!(!this.usesStore() || xe(this.static("persist")))) {
181
+ if (!(!this.usesStore() || ke(this.static("persist")))) {
180
182
  if (O.has(this.storageKey)) {
181
183
  const e = O.require(this.storageKey);
182
184
  this.setState(this.deserializePersistedState(e));
183
185
  return;
184
186
  }
185
- O.set(this.storageKey, oe(this.getState(), this.static("persist")));
187
+ O.set(this.storageKey, ne(this.getState(), this.static("persist")));
186
188
  }
187
189
  }
188
190
  requireStore() {
189
- return this._store ? this._store : Q(`Failed getting '${this._name}' store`);
191
+ return this._store ? this._store : W(`Failed getting '${this._name}' store`);
190
192
  }
191
- }, _(ke, "persist", []), ke);
192
- const ol = {
193
+ }, _(Ee, "persist", []), Ee);
194
+ const xl = {
193
195
  Low: -256,
194
196
  Default: 0,
195
197
  High: 256
196
198
  };
197
- class Ds extends we {
199
+ class Gs extends xe {
198
200
  constructor() {
199
201
  super(...arguments);
200
202
  _(this, "listeners", {});
@@ -208,55 +210,55 @@ class Ds extends we {
208
210
  async emit(e, r) {
209
211
  var a;
210
212
  const n = this.listeners[e] ?? { priorities: [], handlers: {} };
211
- for (const i of n.priorities)
212
- await Promise.all(((a = n.handlers[i]) == null ? void 0 : a.map((l) => l(r))) ?? []);
213
+ for (const u of n.priorities)
214
+ await Promise.all(((a = n.handlers[u]) == null ? void 0 : a.map((i) => i(r))) ?? []);
213
215
  }
214
216
  // prettier-ignore
215
217
  /* eslint-enable max-len */
216
218
  on(e, r, n) {
217
- const a = typeof r == "function" ? {} : typeof r == "number" ? { priority: r } : r, i = typeof r == "function" ? r : n;
218
- return this.registerListener(e, a, i), () => this.off(e, i);
219
+ const a = typeof r == "function" ? {} : typeof r == "number" ? { priority: r } : r, u = typeof r == "function" ? r : n;
220
+ return this.registerListener(e, a, u), () => this.off(e, u);
219
221
  }
220
222
  // prettier-ignore
221
223
  /* eslint-enable max-len */
222
224
  once(e, r, n) {
223
225
  let a = null;
224
- const i = typeof r == "function" ? {} : r, l = typeof r == "function" ? r : n;
225
- return ee(
226
+ const u = typeof r == "function" ? {} : r, i = typeof r == "function" ? r : n;
227
+ return te(
226
228
  () => a && this.off(e, a),
227
- (d) => {
228
- a = (...v) => (d(), l(...v)), this.registerListener(e, i, l);
229
+ (p) => {
230
+ a = (...g) => (p(), i(...g)), this.registerListener(e, u, i);
229
231
  }
230
232
  );
231
233
  }
232
234
  off(e, r) {
233
- var i;
235
+ var u;
234
236
  const n = this.listeners[e];
235
237
  if (!n)
236
238
  return;
237
239
  const a = [...n.priorities];
238
- for (const l of a)
239
- Se(n.handlers[l] ?? [], r), ((i = n.handlers[l]) == null ? void 0 : i.length) === 0 && (delete n.handlers[l], Se(n.priorities, l));
240
+ for (const i of a)
241
+ He(n.handlers[i] ?? [], r), ((u = n.handlers[i]) == null ? void 0 : u.length) === 0 && (delete n.handlers[i], He(n.priorities, i));
240
242
  n.priorities.length === 0 && delete this.listeners[e];
241
243
  }
242
244
  registerListener(e, r, n) {
243
- var d, v, $;
245
+ var p, g, w;
244
246
  const a = r.priority ?? 0;
245
247
  e in this.listeners || (this.listeners[e] = { priorities: [], handlers: {} });
246
- const i = ((d = this.listeners[e]) == null ? void 0 : d.priorities) ?? Q(`priorities missing for event '${e}'`), l = ((v = this.listeners[e]) == null ? void 0 : v.handlers) ?? Q(`handlers missing for event '${e}'`);
247
- i.includes(a) || (i.push(a), i.sort((m, C) => C - m), l[a] = []), ($ = l[a]) == null || $.push(n);
248
+ const u = ((p = this.listeners[e]) == null ? void 0 : p.priorities) ?? W(`priorities missing for event '${e}'`), i = ((g = this.listeners[e]) == null ? void 0 : g.handlers) ?? W(`handlers missing for event '${e}'`);
249
+ u.includes(a) || (u.push(a), u.sort((v, k) => k - v), i[a] = []), (w = i[a]) == null || w.push(n);
248
250
  }
249
251
  }
250
- const R = te(Ds);
251
- function il(t) {
252
+ const F = se(Gs);
253
+ function Sl(t) {
252
254
  return t;
253
255
  }
254
- const js = ye({
256
+ const er = Ce({
255
257
  name: "app",
256
258
  initialState: {
257
259
  plugins: {},
258
260
  instance: null,
259
- environment: Bt() ?? "development",
261
+ environment: Yt() ?? "development",
260
262
  version: j.version,
261
263
  sourceUrl: j.sourceUrl,
262
264
  settings: []
@@ -273,12 +275,12 @@ const js = ye({
273
275
  }
274
276
  }
275
277
  });
276
- class Bs extends js {
278
+ class tr extends er {
277
279
  constructor() {
278
280
  super(...arguments);
279
281
  _(this, "name", j.name);
280
- _(this, "ready", new K());
281
- _(this, "mounted", new K());
282
+ _(this, "ready", new Q());
283
+ _(this, "mounted", new Q());
282
284
  }
283
285
  isReady() {
284
286
  return this.ready.isResolved();
@@ -287,13 +289,13 @@ class Bs extends js {
287
289
  return this.mounted.isResolved();
288
290
  }
289
291
  addSetting(e) {
290
- this.settings.push(E(e));
292
+ this.settings.push(V(e));
291
293
  }
292
294
  async whenReady(e) {
293
295
  return await this.ready.then(e);
294
296
  }
295
297
  async reload(e) {
296
- e && Ft(e), location.reload(), await Ut();
298
+ e && Gt(e), location.reload(), await es();
297
299
  }
298
300
  plugin(e) {
299
301
  return this.plugins[e] ?? null;
@@ -303,14 +305,14 @@ class Bs extends js {
303
305
  return ((r = this.instance) == null ? void 0 : r.config.globalProperties[e]) ?? null;
304
306
  }
305
307
  async boot() {
306
- R.once("application-ready", () => this.ready.resolve()), R.once("application-mounted", () => this.mounted.resolve());
308
+ F.once("application-ready", () => this.ready.resolve()), F.once("application-mounted", () => this.mounted.resolve());
307
309
  }
308
310
  }
309
- const A = te(Bs);
310
- function ul(t) {
311
+ const A = se(tr);
312
+ function kl(t) {
311
313
  return t;
312
314
  }
313
- async function Fs(t, ...s) {
315
+ async function sr(t, ...s) {
314
316
  A.setState(
315
317
  "plugins",
316
318
  t.reduce(
@@ -319,55 +321,55 @@ async function Fs(t, ...s) {
319
321
  )
320
322
  ), await Promise.all(t.map((e) => e.install(...s)) ?? []);
321
323
  }
322
- function Us(t) {
324
+ function rr(t) {
323
325
  return Object.entries(t.props ?? {}).reduce((s, [e, r]) => s + `${e}="${B(r)}"`, "");
324
326
  }
325
- function cl(t) {
327
+ function Tl(t) {
326
328
  return t;
327
329
  }
328
- function Os(t) {
330
+ function nr(t) {
329
331
  const s = X(t);
330
- return s ? pe(s) : void 0;
332
+ return s ? ge(s) : void 0;
331
333
  }
332
- function V(t, s) {
333
- return Os(t) ?? Q(s ?? `Could not resolve '${B(t)}' injection key`);
334
+ function R(t, s) {
335
+ return nr(t) ?? W(s ?? `Could not resolve '${B(t)}' injection key`);
334
336
  }
335
- function Ns(t, s) {
336
- return X(t) ?? Q(s ?? `Could not resolve '${B(t)}' injection key`);
337
+ function ar(t, s) {
338
+ return X(t) ?? W(s ?? `Could not resolve '${B(t)}' injection key`);
337
339
  }
338
- function Ge(t) {
339
- return typeof t == "string" ? t : t.type === Mt ? "" : t.type === Ht || t.type === Et ? t.children : t.type === "br" ? `
340
+ function dt(t) {
341
+ return typeof t == "string" ? t : t.type === Pt ? "" : t.type === Dt || t.type === jt ? t.children : t.type === "br" ? `
340
342
 
341
- ` : `<${t.type} ${Us(t)}>${Array.from(t.children).map(Ge).join("")}</${t.type}>`;
343
+ ` : `<${t.type} ${rr(t)}>${Array.from(t.children).map(dt).join("")}</${t.type}>`;
342
344
  }
343
- const Ce = /* @__PURE__ */ new WeakMap(), Ws = {
345
+ const Te = /* @__PURE__ */ new WeakMap(), lr = {
344
346
  mounted(t, { value: s, modifiers: e }) {
345
347
  const r = typeof s == "function" ? s : null, n = () => {
346
348
  const a = t.getBoundingClientRect();
347
349
  e.css && (t.style.setProperty("--width", `${a.width}px`), t.style.setProperty("--height", `${a.height}px`)), r == null || r({ width: a.width, height: a.height });
348
350
  };
349
- e.watch && Ce.set(t, ee(new ResizeObserver(n)).observe(t)), n();
351
+ e.watch && Te.set(t, te(new ResizeObserver(n)).observe(t)), n();
350
352
  },
351
353
  unmounted(t) {
352
354
  var s;
353
- (s = Ce.get(t)) == null || s.unobserve(t), Ce.delete(t);
355
+ (s = Te.get(t)) == null || s.unobserve(t), Te.delete(t);
354
356
  }
355
357
  };
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));
358
+ function pt(t, s) {
359
+ const { baseClasses: e, ...r } = t, { baseClasses: n, ...a } = s, u = ws(n, a);
360
+ return E(u(r), l(e));
359
361
  }
360
- function M(...t) {
361
- return os(as(t));
362
+ function E(...t) {
363
+ return $s(ys(t));
362
364
  }
363
- function tt(t, s) {
364
- const e = R.on(t, s);
365
- ge(() => e());
365
+ function Ml(t, s) {
366
+ const e = F.on(t, s);
367
+ we(() => e());
366
368
  }
367
- const Ks = {
369
+ const or = {
368
370
  required: (t) => t ? void 0 : "required"
369
371
  };
370
- function Qs(t, s) {
372
+ function ir(t, s) {
371
373
  var e;
372
374
  if (t == null)
373
375
  return !0;
@@ -386,20 +388,20 @@ function Qs(t, s) {
386
388
  return typeof t == "object";
387
389
  }
388
390
  }
389
- const de = { ...Ks };
390
- function dl(t, s) {
391
- de[t] = s;
391
+ const he = { ...or };
392
+ function El(t, s) {
393
+ he[t] = s;
392
394
  }
393
- function Js(t, s) {
394
- return Qs(t, s) ? [] : ["invalid_value"];
395
+ function ur(t, s) {
396
+ return ir(t, s) ? [] : ["invalid_value"];
395
397
  }
396
- function Zs(t, s) {
398
+ function cr(t, s) {
397
399
  var r;
398
- const e = (r = de[s]) == null ? void 0 : r.call(de, t);
399
- return e ? Je(e) : [];
400
+ const e = (r = he[s]) == null ? void 0 : r.call(he, t);
401
+ return e ? lt(e) : [];
400
402
  }
401
- const pl = Symbol(), je = /* @__PURE__ */ new WeakMap();
402
- class Xs extends Qe {
403
+ const Hl = Symbol(), Je = /* @__PURE__ */ new WeakMap();
404
+ class dr extends at {
403
405
  constructor(e) {
404
406
  super();
405
407
  _(this, "errors");
@@ -408,20 +410,20 @@ class Xs extends Qe {
408
410
  _(this, "_submitted");
409
411
  _(this, "_errors");
410
412
  _(this, "_listeners", {});
411
- this._fields = e, this._submitted = U(!1), this._data = this.getInitialData(e), this._errors = this.getInitialErrors(e), je.set(
413
+ this._fields = e, this._submitted = N(!1), this._data = this.getInitialData(e), this._errors = this.getInitialErrors(e), Je.set(
412
414
  this,
413
415
  c(() => !Object.values(this._errors).some((r) => r !== null))
414
- ), this.errors = ve(this._errors);
416
+ ), this.errors = $e(this._errors);
415
417
  }
416
418
  get valid() {
417
419
  var e;
418
- return !!((e = je.get(this)) != null && e.value);
420
+ return !!((e = Je.get(this)) != null && e.value);
419
421
  }
420
422
  get submitted() {
421
423
  return this._submitted.value;
422
424
  }
423
425
  setFieldValue(e, r) {
424
- const n = this._fields[e] ?? Q(`Trying to set undefined '${B(e)}' field`);
426
+ const n = this._fields[e] ?? W(`Trying to set undefined '${B(e)}' field`);
425
427
  this._data[e] = n.type === "string" && (n.trim ?? !0) ? B(r).trim() : r, this._submitted.value && this.validate();
426
428
  }
427
429
  getFieldValue(e) {
@@ -431,6 +433,9 @@ class Xs extends Qe {
431
433
  var r, n;
432
434
  return ((n = (r = this._fields[e]) == null ? void 0 : r.rules) == null ? void 0 : n.split("|")) ?? [];
433
435
  }
436
+ setFieldErrors(e, r) {
437
+ this._errors[e] = r;
438
+ }
434
439
  getFieldType(e) {
435
440
  var r;
436
441
  return ((r = this._fields[e]) == null ? void 0 : r.type) ?? null;
@@ -459,11 +464,11 @@ class Xs extends Qe {
459
464
  return (n = this._listeners)[e] ?? (n[e] = []), (a = this._listeners[e]) == null || a.push(r), () => this.off(e, r);
460
465
  }
461
466
  off(e, r) {
462
- Se(this._listeners[e] ?? [], r);
467
+ He(this._listeners[e] ?? [], r);
463
468
  }
464
469
  async focus(e) {
465
470
  var r;
466
- await Oe(), (r = this._listeners.focus) == null || r.forEach((n) => n(e));
471
+ await Bt(), (r = this._listeners.focus) == null || r.forEach((n) => n(e));
467
472
  }
468
473
  __get(e) {
469
474
  return e in this._fields ? this.getFieldValue(e) : super.__get(e);
@@ -476,24 +481,24 @@ class Xs extends Qe {
476
481
  this.setFieldValue(e, r);
477
482
  }
478
483
  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
+ var i;
485
+ const n = [], a = this._data[e], u = ((i = r.rules) == null ? void 0 : i.split("|")) ?? [];
486
+ n.push(...ur(a, r));
487
+ for (const p of u)
488
+ p !== "required" && a == null || n.push(...cr(a, p));
484
489
  return n.length > 0 ? n : null;
485
490
  }
486
491
  getInitialData(e) {
487
492
  if (this.static().isConjuring())
488
493
  return {};
489
- const r = Object.entries(e).reduce((n, [a, i]) => (n[a] = i.default ?? null, n), {});
490
- return pe(r);
494
+ const r = Object.entries(e).reduce((n, [a, u]) => (n[a] = u.default ?? null, n), {});
495
+ return ge(r);
491
496
  }
492
497
  getInitialErrors(e) {
493
498
  if (this.static().isConjuring())
494
499
  return {};
495
500
  const r = Object.keys(e).reduce((n, a) => (n[a] = null, n), {});
496
- return pe(r);
501
+ return ge(r);
497
502
  }
498
503
  resetData() {
499
504
  for (const [e, r] of Object.entries(this._fields))
@@ -503,87 +508,114 @@ class Xs extends Qe {
503
508
  Object.keys(this._errors).forEach((r) => delete this._errors[r]), e && Object.assign(this._errors, e);
504
509
  }
505
510
  }
506
- function st(t, s) {
511
+ function mt(t, s) {
507
512
  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());
513
+ we(() => r == null ? void 0 : r());
509
514
  }
510
- function rt(t) {
511
- return new Xs(t);
515
+ function ft(t) {
516
+ return new dr(t);
512
517
  }
513
- function Ie() {
514
- const t = Ne(), s = c(() => t.class);
515
- return [c(() => Ot(t, "class")), s];
518
+ function Ae() {
519
+ const t = tt(), s = c(() => t.class);
520
+ return [c(() => ts(t, "class")), s];
516
521
  }
517
- function ml(t) {
518
- let s = Nt;
519
- Vt(() => s = t()), ge(() => s());
522
+ function Vl(t) {
523
+ let s = ss;
524
+ st(() => s = t()), we(() => s());
520
525
  }
521
- function fl(t, s) {
522
- const e = pe(O.get(t) ?? s);
523
- return Me(e, () => O.set(t, Lt(e))), e;
526
+ function Ll(t, s) {
527
+ const e = ge(O.get(t) ?? s);
528
+ return Le(e, () => O.set(t, Ft(e))), e;
524
529
  }
525
- function hl(t) {
526
- const s = U(), e = c(t);
527
- return Me(e, async () => s.value = await e.value, { immediate: !0 }), s;
530
+ function pr(t) {
531
+ let s = new Set(t), e, r;
532
+ const n = Ut((a, u) => (r = a, e = u, {
533
+ get: () => s,
534
+ set: () => W("Attempted to write read-only reactive set")
535
+ }));
536
+ return {
537
+ values() {
538
+ return r(), Array.from(n.value.values());
539
+ },
540
+ has(a) {
541
+ return r(), n.value.has(a);
542
+ },
543
+ add(a) {
544
+ e(), n.value.add(a);
545
+ },
546
+ delete(a) {
547
+ e(), n.value.delete(a);
548
+ },
549
+ clear() {
550
+ e(), n.value.clear();
551
+ },
552
+ reset(a) {
553
+ e(), s = new Set(a);
554
+ }
555
+ };
528
556
  }
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);
557
+ function Il(t) {
558
+ const s = N(), e = c(t);
559
+ return Le(e, async () => s.value = await e.value, { immediate: !0 }), s;
560
+ }
561
+ function zl(t, s) {
562
+ const e = s ? t : {}, r = s ?? t, n = N(e.initial ?? null), a = rs((u) => n.value = u, e.delay ?? 300);
531
563
  return Y(() => a(r())), n;
532
564
  }
533
- let ie = null;
534
- function Ys() {
535
- return ee(new Ae(), (t) => {
565
+ let oe = null;
566
+ function mr() {
567
+ return te(new Ne(), (t) => {
536
568
  t.link = function(s) {
537
- const e = Ae.prototype.link.apply(this, [s]);
569
+ const e = Ne.prototype.link.apply(this, [s]);
538
570
  return s.href.startsWith("#") ? e : e.replace("<a", '<a target="_blank"');
539
571
  };
540
572
  });
541
573
  }
542
- function Gs(t) {
543
- const s = Ze(t, /<a[^>]*href="#action:([^"]+)"[^>]*>([^<]+)<\/a>/g);
574
+ function fr(t) {
575
+ const s = ot(t, /<a[^>]*href="#action:([^"]+)"[^>]*>([^<]+)<\/a>/g);
544
576
  for (const [e, r, n] of s)
545
577
  t = t.replace(e, `<button type="button" data-markdown-action="${r}">${n}</button>`);
546
578
  return t;
547
579
  }
548
- function er(t) {
549
- const s = Ze(t, /<a[^>]*href="#route:([^"]+)"[^>]*>([^<]+)<\/a>/g);
580
+ function hr(t) {
581
+ const s = ot(t, /<a[^>]*href="#route:([^"]+)"[^>]*>([^<]+)<\/a>/g);
550
582
  for (const [e, r, n] of s) {
551
- const a = (ie == null ? void 0 : ie.resolve(r)) ?? r;
583
+ const a = (oe == null ? void 0 : oe.resolve(r)) ?? r;
552
584
  t = t.replace(e, `<a data-markdown-route="${r}" href="${a}">${n}</a>`);
553
585
  }
554
586
  return t;
555
587
  }
556
- function tr() {
557
- return ie;
588
+ function gr() {
589
+ return oe;
558
590
  }
559
- function vl(t) {
560
- ie = t;
591
+ function Rl(t) {
592
+ oe = t;
561
593
  }
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;
594
+ function vr(t) {
595
+ let s = fs(t, { renderer: mr(), async: !1 });
596
+ return s = ht(s), s = fr(s), s = hr(s), s;
565
597
  }
566
- function nt(t) {
567
- return rs.sanitize(t, { ADD_ATTR: ["target"] });
598
+ function ht(t) {
599
+ return ms.sanitize(t, { ADD_ATTR: ["target"] });
568
600
  }
569
- const rr = {
601
+ const br = 6e4, Ze = -(/* @__PURE__ */ new Date()).getTimezoneOffset() * -br, yr = {
570
602
  mounted(t, { value: s }) {
571
- t.innerHTML = nt(s);
603
+ t.innerHTML = ht(s);
572
604
  }
573
- }, nr = {
574
- measure: Ws,
575
- "safe-html": rr
576
- }, ar = {
605
+ }, wr = {
606
+ measure: lr,
607
+ "safe-html": yr
608
+ }, $r = {
577
609
  install(t, s) {
578
610
  const e = {
579
- ...nr,
611
+ ...wr,
580
612
  ...s.directives
581
613
  };
582
614
  for (const [r, n] of Object.entries(e))
583
615
  t.directive(r, n);
584
616
  }
585
617
  };
586
- class lr extends we {
618
+ class _r extends xe {
587
619
  constructor() {
588
620
  super(...arguments);
589
621
  _(this, "cache");
@@ -599,72 +631,79 @@ class lr extends we {
599
631
  (await n.keys(e)).length !== 0 && await n.put(e, r);
600
632
  }
601
633
  async open() {
602
- return this.cache = this.cache ?? ee(new K(), (e) => {
634
+ return this.cache = this.cache ?? te(new Q(), (e) => {
603
635
  caches.open("app").then((r) => e.resolve(r));
604
636
  });
605
637
  }
606
638
  }
607
- const bl = te(lr);
608
- class or extends we {
639
+ const ql = se(_r);
640
+ class Cr extends xe {
609
641
  async purge() {
610
- await R.emit("purge-storage");
642
+ await F.emit("purge-storage");
611
643
  }
612
644
  }
613
- const at = te(or);
614
- function yl(t, s) {
645
+ const gt = se(Cr);
646
+ function Al(t, s) {
615
647
  return {
616
648
  ...t,
617
- ...oe(s, Object.keys(t))
649
+ ...ne(s, Object.keys(t))
618
650
  };
619
651
  }
620
- const ir = {
652
+ const xr = {
621
653
  $app: A,
622
- $events: R,
623
- $storage: at
654
+ $events: F,
655
+ $storage: gt
624
656
  };
625
- async function $e(t, s) {
657
+ async function Se(t, s) {
626
658
  await Promise.all(
627
659
  Object.entries(s).map(async ([e, r]) => {
628
660
  await r.launch().catch((n) => {
629
- var a, i;
630
- return (i = (a = t.config).errorHandler) == null ? void 0 : i.call(a, n, null, `Failed launching ${e}.`);
661
+ var a, u;
662
+ return (u = (a = t.config).errorHandler) == null ? void 0 : u.call(a, n, null, `Failed launching ${e}.`);
631
663
  });
632
664
  })
633
- ), Object.assign(t.config.globalProperties, s), (J() || Ee()) && Object.assign(globalThis, s);
665
+ ), Object.assign(t.config.globalProperties, s), (J() || ze()) && Object.assign(globalThis, s);
634
666
  }
635
- const ur = {
667
+ const Sr = {
636
668
  async install(t, s) {
637
669
  var r;
638
670
  const e = {
639
- ...ir,
671
+ ...xr,
640
672
  ...s.services
641
673
  };
642
- t.use(Ps()), (r = s.settings) == null || r.forEach((n) => A.addSetting(n)), await $e(t, e);
643
- }
644
- }, lt = 768, me = {
674
+ t.use(Xs()), (r = s.settings) == null || r.forEach((n) => A.addSetting(n)), await Se(t, e);
675
+ }
676
+ }, Xe = /* @__PURE__ */ new WeakSet();
677
+ function Pe() {
678
+ const t = ut(), { close: s, remove: e, ...r } = hs(Xe.has(t) ? {} : { removeOnClose: !1 });
679
+ return Xe.add(t), {
680
+ ...r,
681
+ async close(n) {
682
+ s(n), await le(1e3), e();
683
+ }
684
+ };
685
+ }
686
+ const vt = 768, ve = {
645
687
  Mobile: "mobile",
646
688
  Desktop: "desktop"
647
689
  };
648
- function ot() {
649
- return globalThis.innerWidth > lt ? me.Desktop : me.Mobile;
690
+ function bt() {
691
+ return globalThis.innerWidth > vt ? ve.Desktop : ve.Mobile;
650
692
  }
651
- const cr = ye({
693
+ const kr = Ce({
652
694
  name: "ui",
653
695
  initialState: {
654
- modals: [],
655
696
  toasts: [],
656
- layout: ot()
697
+ layout: bt()
657
698
  },
658
699
  computed: {
659
- desktop: ({ layout: t }) => t === me.Desktop,
660
- mobile: ({ layout: t }) => t === me.Mobile,
661
- openModals: ({ modals: t }) => t.filter(({ closing: s }) => !s)
700
+ desktop: ({ layout: t }) => t === ve.Desktop,
701
+ mobile: ({ layout: t }) => t === ve.Mobile
662
702
  }
663
703
  });
664
- class dr extends cr {
704
+ class Tr extends kr {
665
705
  constructor() {
666
706
  super(...arguments);
667
- _(this, "modalCallbacks", {});
668
707
  _(this, "components", {});
669
708
  }
670
709
  registerComponent(e, r) {
@@ -674,7 +713,7 @@ class dr extends cr {
674
713
  return this.components[e] ?? null;
675
714
  }
676
715
  requireComponent(e) {
677
- return this.resolveComponent(e) ?? Q(`UI Component '${e}' is not defined!`);
716
+ return this.resolveComponent(e) ?? W(`UI Component '${e}' is not defined!`);
678
717
  }
679
718
  alert(e, r) {
680
719
  const n = () => typeof r != "string" ? { message: e } : {
@@ -686,7 +725,7 @@ class dr extends cr {
686
725
  // prettier-ignore
687
726
  /* eslint-enable max-len */
688
727
  async confirm(e, r, n) {
689
- const i = typeof r != "string" ? {
728
+ const u = typeof r != "string" ? {
690
729
  ...r ?? {},
691
730
  message: e,
692
731
  required: !!(r != null && r.required)
@@ -695,31 +734,31 @@ class dr extends cr {
695
734
  title: e,
696
735
  message: r,
697
736
  required: !!(n != null && n.required)
698
- }, l = await this.modalForm(this.requireComponent("confirm-modal"), i), d = typeof l == "object" ? l[0] : l ?? !1, v = typeof l == "object" ? l[1] : Object.entries(i.checkboxes ?? {}).reduce(
699
- ($, [m, { default: C }]) => ({
700
- [m]: C ?? !1,
701
- ...$
737
+ }, { response: i } = await this.modal(this.requireComponent("confirm-modal"), u), p = typeof i == "object" ? i[0] : i ?? !1, g = typeof i == "object" ? i[1] : Object.entries(u.checkboxes ?? {}).reduce(
738
+ (w, [v, { default: k }]) => ({
739
+ [v]: k ?? !1,
740
+ ...w
702
741
  }),
703
742
  {}
704
743
  );
705
- for (const [$, m] of Object.entries(i.checkboxes ?? {}))
706
- if (!(!m.required || v[$]))
707
- return d && J() && console.warn(`Confirmed confirm modal was suppressed because required '${$}' checkbox was missing`), [!1, v];
708
- return "checkboxes" in i ? [d, v] : d;
744
+ for (const [w, v] of Object.entries(u.checkboxes ?? {}))
745
+ if (!(!v.required || g[w]))
746
+ return p && J() && console.warn(`Confirmed confirm modal was suppressed because required '${w}' checkbox was missing`), [!1, g];
747
+ return "checkboxes" in u ? [p, g] : p;
709
748
  }
710
749
  async prompt(e, r, n) {
711
- const a = (n == null ? void 0 : n.trim) ?? !0, i = () => typeof r != "string" ? {
750
+ const a = (n == null ? void 0 : n.trim) ?? !0, u = () => typeof r != "string" ? {
712
751
  message: e,
713
752
  ...r ?? {}
714
753
  } : {
715
754
  title: e,
716
755
  message: r,
717
756
  ...n ?? {}
718
- }, l = await this.modalForm(this.requireComponent("prompt-modal"), i());
719
- return (a && typeof l == "string" ? l == null ? void 0 : l.trim() : l) ?? null;
757
+ }, { response: i } = await this.modal(this.requireComponent("prompt-modal"), u());
758
+ return (a && typeof i == "string" ? i == null ? void 0 : i.trim() : i) ?? null;
720
759
  }
721
760
  async loading(e, r) {
722
- const n = (m) => typeof m == "function" ? Promise.resolve(m()) : m, a = () => {
761
+ const n = (v) => typeof v == "function" ? Promise.resolve(v()) : v, a = () => {
723
762
  if (typeof e == "string")
724
763
  return {
725
764
  props: { message: e },
@@ -727,93 +766,59 @@ class dr extends cr {
727
766
  };
728
767
  if (typeof e == "function" || e instanceof Promise)
729
768
  return { operationPromise: n(e) };
730
- const { delay: m, ...C } = e;
769
+ const { delay: v, ...k } = e;
731
770
  return {
732
- props: C,
733
- delay: o(m),
771
+ props: k,
772
+ delay: l(v),
734
773
  operationPromise: n(r)
735
774
  };
736
775
  };
737
- let i = !1;
738
- const { operationPromise: l, props: d, delay: v } = a();
739
- if (v && await Promise.race([ue({ ms: v }).then(() => i = !0), l]), v && !i)
740
- return l;
741
- const $ = await this.modal(this.requireComponent("loading-modal"), d);
776
+ let u = !1;
777
+ const { operationPromise: i, props: p, delay: g } = a();
778
+ if (g && await Promise.race([le({ ms: g }).then(() => u = !0), i]), g && !u)
779
+ return i;
780
+ const w = gs(this.requireComponent("loading-modal"), p);
781
+ We(w);
742
782
  try {
743
- const m = await l;
744
- return await ue({ ms: 500 }), m;
783
+ const v = await i;
784
+ return await le({ ms: 500 }), v;
745
785
  } finally {
746
- await this.closeModal($.id);
786
+ await Ke(w.id, { removeAfter: 1e3 });
747
787
  }
748
788
  }
749
789
  toast(e, r = {}) {
750
- const { component: n, ...a } = r, i = {
751
- id: re(),
790
+ const { component: n, ...a } = r, u = {
791
+ id: ie(),
752
792
  properties: { message: e, ...a },
753
- component: E(n ?? this.requireComponent("toast"))
793
+ component: V(n ?? this.requireComponent("toast"))
754
794
  };
755
- this.setState("toasts", this.toasts.concat(i));
756
- }
757
- async modal(e, r) {
758
- const n = re(), a = {}, i = {
759
- id: n,
760
- closing: !1,
761
- properties: r ?? {},
762
- component: E(e),
763
- beforeClose: new Promise((d) => a.willClose = d),
764
- afterClose: new Promise((d) => a.hasClosed = d)
765
- }, l = this.modals.concat(i);
766
- return this.modalCallbacks[i.id] = a, this.setState({ modals: l }), await Oe(), i;
767
- }
768
- async modalForm(e, r) {
769
- return await (await this.modal(e, r)).beforeClose;
770
- }
771
- async closeModal(e, r) {
772
- if (!A.isMounted()) {
773
- await this.removeModal(e, r);
774
- return;
775
- }
776
- await R.emit("close-modal", { id: e, result: r });
795
+ this.setState("toasts", this.toasts.concat(u));
796
+ }
797
+ modal(e, r) {
798
+ return We(e, r ?? {});
777
799
  }
778
800
  async closeAllModals() {
779
- for (; this.modals.length > 0; )
780
- await this.closeModal(Kt(this.modals[this.modals.length - 1]).id);
801
+ await Promise.all(ae.value.map(({ id: e }) => Ke(e, { removeAfter: 1e3 })));
781
802
  }
782
803
  async boot() {
783
- this.watchModalEvents(), this.watchMountedEvent(), this.watchViewportBreakpoints();
784
- }
785
- async removeModal(e, r) {
786
- var n, a;
787
- this.setState(
788
- "modals",
789
- this.modals.filter((i) => i.id !== e)
790
- ), (a = (n = this.modalCallbacks[e]) == null ? void 0 : n.hasClosed) == null || a.call(n, r), delete this.modalCallbacks[e];
791
- }
792
- watchModalEvents() {
793
- R.on("modal-will-close", ({ modal: { id: e }, result: r }) => {
794
- var a, i;
795
- const n = this.modals.find((l) => e === l.id);
796
- n && (n.closing = !0), (i = (a = this.modalCallbacks[e]) == null ? void 0 : a.willClose) == null || i.call(a, r);
797
- }), R.on("modal-has-closed", async ({ modal: { id: e }, result: r }) => {
798
- await this.removeModal(e, r);
799
- });
804
+ this.watchMountedEvent(), this.watchViewportBreakpoints();
800
805
  }
801
806
  watchMountedEvent() {
802
- R.once("application-mounted", async () => {
807
+ F.once("application-mounted", async () => {
803
808
  if (!globalThis.document || !globalThis.getComputedStyle)
804
809
  return;
805
810
  const e = globalThis.document.getElementById("splash");
806
- e && (globalThis.getComputedStyle(e).opacity !== "0" && (e.style.opacity = "0", await ue({ ms: 600 })), e.remove());
811
+ e && (globalThis.getComputedStyle(e).opacity !== "0" && (e.style.opacity = "0", await le({ ms: 600 })), e.remove());
807
812
  });
808
813
  }
809
814
  watchViewportBreakpoints() {
810
815
  if (!globalThis.matchMedia)
811
816
  return;
812
- globalThis.matchMedia(`(min-width: ${lt}px)`).addEventListener("change", () => this.setState({ layout: ot() }));
817
+ globalThis.matchMedia(`(min-width: ${vt}px)`).addEventListener("change", () => this.setState({ layout: bt() }));
813
818
  }
814
819
  }
815
- const z = te(dr);
816
- class pr {
820
+ const P = se(Tr);
821
+ class Mr {
817
822
  constructor(s, e) {
818
823
  this.locale = s, this.fallbackLocale = e;
819
824
  }
@@ -839,7 +844,7 @@ class pr {
839
844
  return J() && console.warn("Lang provider is missing"), e;
840
845
  }
841
846
  }
842
- const mr = ye({
847
+ const Er = Ce({
843
848
  name: "lang",
844
849
  persist: ["locale", "fallbackLocale"],
845
850
  initialState: {
@@ -848,11 +853,11 @@ const mr = ye({
848
853
  fallbackLocale: "en"
849
854
  }
850
855
  });
851
- class fr extends mr {
856
+ class Hr extends Er {
852
857
  constructor() {
853
858
  super();
854
859
  _(this, "provider");
855
- this.provider = new pr(
860
+ this.provider = new Mr(
856
861
  this.getState("locale") ?? this.getBrowserLocale(),
857
862
  this.getState("fallbackLocale")
858
863
  );
@@ -880,7 +885,7 @@ class fr extends mr {
880
885
  );
881
886
  }
882
887
  }
883
- const Z = te(fr), it = Z.translate.bind(Z), S = Z.translateWithDefault.bind(Z), hr = ye({
888
+ const Z = se(Hr), yt = Z.translate.bind(Z), S = Z.translateWithDefault.bind(Z), Vr = Ce({
884
889
  name: "errors",
885
890
  initialState: {
886
891
  logs: [],
@@ -893,7 +898,7 @@ const Z = te(fr), it = Z.translate.bind(Z), S = Z.translateWithDefault.bind(Z),
893
898
  hasStartupErrors: ({ startupErrors: t }) => t.length > 0
894
899
  }
895
900
  });
896
- class gr extends hr {
901
+ class Lr extends Vr {
897
902
  constructor() {
898
903
  super(...arguments);
899
904
  _(this, "forceReporting", !1);
@@ -908,18 +913,18 @@ class gr extends hr {
908
913
  }
909
914
  async inspect(e, r) {
910
915
  if (Array.isArray(e) && e.length === 0) {
911
- z.alert(S("errors.inspectEmpty", "Nothing to inspect!"));
916
+ P.alert(S("errors.inspectEmpty", "Nothing to inspect!"));
912
917
  return;
913
918
  }
914
919
  const n = Array.isArray(e) ? e[0] : this.isErrorReport(e) ? e : await this.createErrorReport(e), a = Array.isArray(e) ? e : r ?? [n];
915
- z.modal(z.requireComponent("error-report-modal"), { report: n, reports: a });
920
+ P.modal(P.requireComponent("error-report-modal"), { report: n, reports: a });
916
921
  }
917
922
  async report(e, r) {
918
- if (await R.emit("error", { error: e, message: r }), Ee("unit") || (J() && this.logError(e), !this.enabled))
923
+ if (await F.emit("error", { error: e, message: r }), ze("unit") || (J() && this.logError(e), !this.enabled))
919
924
  throw e;
920
925
  if (!A.isMounted()) {
921
- const i = await this.createStartupErrorReport(e);
922
- i && this.setState({ startupErrors: this.startupErrors.concat(i) });
926
+ const u = await this.createStartupErrorReport(e);
927
+ u && this.setState({ startupErrors: this.startupErrors.concat(u) });
923
928
  return;
924
929
  }
925
930
  const n = await this.createErrorReport(e), a = {
@@ -927,7 +932,7 @@ class gr extends hr {
927
932
  seen: !1,
928
933
  date: /* @__PURE__ */ new Date()
929
934
  };
930
- z.toast(
935
+ P.toast(
931
936
  r ?? S("errors.notice", "Something went wrong, but it's not your fault. Try again!"),
932
937
  {
933
938
  variant: "danger",
@@ -935,7 +940,7 @@ class gr extends hr {
935
940
  {
936
941
  label: S("errors.viewDetails", "View details"),
937
942
  dismiss: !0,
938
- click: () => z.modal(z.requireComponent("error-report-modal"), { report: n, reports: [n] })
943
+ click: () => P.modal(P.requireComponent("error-report-modal"), { report: n, reports: [n] })
939
944
  }
940
945
  ]
941
946
  }
@@ -963,13 +968,13 @@ class gr extends hr {
963
968
  });
964
969
  }
965
970
  logError(e) {
966
- console.error(e), ce(e) && e.cause && this.logError(e.cause);
971
+ console.error(e), fe(e) && e.cause && this.logError(e.cause);
967
972
  }
968
973
  isErrorReport(e) {
969
- return ce(e) && "title" in e;
974
+ return fe(e) && "title" in e;
970
975
  }
971
976
  async createErrorReport(e) {
972
- return typeof e == "string" ? { title: e } : e instanceof Error || e instanceof be ? this.createErrorReportFromError(e) : ce(e) ? Xe({
977
+ return typeof e == "string" ? { title: e } : e instanceof Error || e instanceof _e ? this.createErrorReportFromError(e) : fe(e) ? it({
973
978
  title: B(
974
979
  e.name ?? e.title ?? S("errors.unknown", "Unknown Error")
975
980
  ),
@@ -983,7 +988,7 @@ class gr extends hr {
983
988
  };
984
989
  }
985
990
  async createStartupErrorReport(e) {
986
- return e instanceof Te ? e.cause instanceof Te ? null : this.createErrorReport(e.cause) : this.createErrorReport(e);
991
+ return e instanceof Ve ? e.cause instanceof Ve ? null : this.createErrorReport(e.cause) : this.createErrorReport(e);
987
992
  }
988
993
  createErrorReportFromError(e, r = {}) {
989
994
  return {
@@ -995,7 +1000,7 @@ class gr extends hr {
995
1000
  };
996
1001
  }
997
1002
  }
998
- const ut = te(gr), ct = /* @__PURE__ */ g({
1003
+ const wt = se(Lr), $t = /* @__PURE__ */ h({
999
1004
  __name: "HeadlessButton",
1000
1005
  props: {
1001
1006
  class: {},
@@ -1012,8 +1017,8 @@ const ut = te(gr), ct = /* @__PURE__ */ g({
1012
1017
  },
1013
1018
  setup(t) {
1014
1019
  const s = c(() => t.as ? { as: t.as } : t.route ? {
1015
- as: z.resolveComponent("router-link") ?? "a",
1016
- to: Xe({
1020
+ as: P.resolveComponent("router-link") ?? "a",
1021
+ to: it({
1017
1022
  name: t.route,
1018
1023
  params: t.routeParams,
1019
1024
  query: t.routeQuery
@@ -1026,18 +1031,18 @@ const ut = te(gr), ct = /* @__PURE__ */ g({
1026
1031
  as: "button",
1027
1032
  type: t.submit ? "submit" : "button"
1028
1033
  });
1029
- return (e, r) => (u(), h(o(is), H({
1034
+ return (e, r) => (o(), f(l(_s), H({
1030
1035
  class: t.class,
1031
1036
  "as-child": e.asChild,
1032
1037
  disabled: e.disabled
1033
1038
  }, s.value), {
1034
- default: f(() => [
1035
- w(e.$slots, "default")
1039
+ default: m(() => [
1040
+ $(e.$slots, "default")
1036
1041
  ]),
1037
1042
  _: 3
1038
1043
  }, 16, ["class", "as-child", "disabled"]));
1039
1044
  }
1040
- }), q = /* @__PURE__ */ g({
1045
+ }), I = /* @__PURE__ */ h({
1041
1046
  __name: "Button",
1042
1047
  props: {
1043
1048
  class: {},
@@ -1053,7 +1058,7 @@ const ut = te(gr), ct = /* @__PURE__ */ g({
1053
1058
  as: {}
1054
1059
  },
1055
1060
  setup(t) {
1056
- const s = N(t, ["class", "size", "variant", "disabled"]), e = c(() => et(
1061
+ const s = K(t, ["class", "size", "variant", "disabled"]), e = c(() => pt(
1057
1062
  { baseClasses: t.class, variant: t.variant, size: t.size, disabled: t.disabled },
1058
1063
  {
1059
1064
  baseClasses: "focus-visible:outline focus-visible:outline-2 focus-visible:outline-offset-2",
@@ -1062,6 +1067,7 @@ const ut = te(gr), ct = /* @__PURE__ */ g({
1062
1067
  default: "bg-primary-600 text-white focus-visible:outline-primary-600",
1063
1068
  secondary: "bg-background text-gray-900 ring-gray-300",
1064
1069
  danger: "bg-red-600 text-white focus-visible:outline-red-600",
1070
+ warning: "bg-yellow-600 text-white focus-visible:outline-yellow-600",
1065
1071
  ghost: "bg-transparent",
1066
1072
  outline: "bg-transparent text-primary-600 ring-primary-600",
1067
1073
  link: "text-links"
@@ -1148,62 +1154,62 @@ const ut = te(gr), ct = /* @__PURE__ */ g({
1148
1154
  }
1149
1155
  }
1150
1156
  ));
1151
- return (r, n) => (u(), h(ct, H({
1157
+ return (r, n) => (o(), f($t, H({
1152
1158
  class: e.value,
1153
1159
  disabled: r.disabled
1154
1160
  }, s), {
1155
- default: f(() => [
1156
- w(r.$slots, "default")
1161
+ default: m(() => [
1162
+ $(r.$slots, "default")
1157
1163
  ]),
1158
1164
  _: 3
1159
1165
  }, 16, ["class", "disabled"]));
1160
1166
  }
1161
1167
  });
1162
- function vr(t) {
1168
+ function Ir(t) {
1163
1169
  return typeof t == "object" && t !== null && "label" in t;
1164
1170
  }
1165
- const dt = /* @__PURE__ */ g({
1171
+ const _t = /* @__PURE__ */ h({
1166
1172
  __name: "HeadlessSelectValue",
1167
1173
  setup(t) {
1168
- const s = V(
1174
+ const s = R(
1169
1175
  "select",
1170
1176
  "<HeadlessSelectValue> must be a child of a <HeadlessSelect>"
1171
1177
  );
1172
- return (e, r) => e.$slots.default ? (u(), h(o(De), {
1178
+ return (e, r) => e.$slots.default ? (o(), f(l(Qe), {
1173
1179
  key: 0,
1174
- placeholder: o(s).placeholder
1180
+ placeholder: l(s).placeholder
1175
1181
  }, {
1176
- default: f(() => [
1177
- w(e.$slots, "default")
1182
+ default: m(() => [
1183
+ $(e.$slots, "default")
1178
1184
  ]),
1179
1185
  _: 3
1180
- }, 8, ["placeholder"])) : (u(), h(o(De), {
1186
+ }, 8, ["placeholder"])) : (o(), f(l(Qe), {
1181
1187
  key: 1,
1182
- placeholder: o(s).placeholder
1188
+ placeholder: l(s).placeholder
1183
1189
  }, null, 8, ["placeholder"]));
1184
1190
  }
1185
- }), pt = /* @__PURE__ */ g({
1191
+ }), Ct = /* @__PURE__ */ h({
1186
1192
  __name: "HeadlessSelectTrigger",
1187
1193
  setup(t) {
1188
- const s = V(
1194
+ const s = R(
1189
1195
  "select",
1190
1196
  "<HeadlessSelectTrigger> must be a child of a <HeadlessSelect>"
1191
1197
  );
1192
- return (e, r) => (u(), h(o(us), {
1193
- id: o(s).id
1198
+ return (e, r) => (o(), f(l(Cs), {
1199
+ id: l(s).id
1194
1200
  }, {
1195
- default: f(() => [
1196
- w(e.$slots, "default", {}, () => [
1197
- p(dt, {
1198
- placeholder: o(s).placeholder
1201
+ default: m(() => [
1202
+ $(e.$slots, "default", {}, () => [
1203
+ d(_t, {
1204
+ placeholder: l(s).placeholder
1199
1205
  }, null, 8, ["placeholder"]),
1200
- p(o(cs))
1206
+ d(l(xs))
1201
1207
  ])
1202
1208
  ]),
1203
1209
  _: 3
1204
1210
  }, 8, ["id"]));
1205
1211
  }
1206
- }), mt = /* @__PURE__ */ g({
1212
+ }), xt = /* @__PURE__ */ h({
1207
1213
  __name: "HeadlessSelectOption",
1208
1214
  props: {
1209
1215
  value: {},
@@ -1213,7 +1219,7 @@ const dt = /* @__PURE__ */ g({
1213
1219
  as: {}
1214
1220
  },
1215
1221
  setup(t) {
1216
- const s = V(
1222
+ const s = R(
1217
1223
  "select",
1218
1224
  "<HeadlessSelectOption> must be a child of a <HeadlessSelect>"
1219
1225
  ), e = c(() => {
@@ -1221,12 +1227,12 @@ const dt = /* @__PURE__ */ g({
1221
1227
  const r = (n = s.options) == null ? void 0 : n.find((a) => a.value === t.value);
1222
1228
  return r ? r.label : B(t.value);
1223
1229
  });
1224
- return (r, n) => (u(), h(o(ds), ne(ae(r.$props)), {
1225
- default: f(() => [
1226
- p(o(ps), null, {
1227
- default: f(() => [
1228
- w(r.$slots, "default", {}, () => [
1229
- I(x(e.value), 1)
1230
+ return (r, n) => (o(), f(l(Ss), ue(ce(r.$props)), {
1231
+ default: m(() => [
1232
+ d(l(ks), null, {
1233
+ default: m(() => [
1234
+ $(r.$slots, "default", {}, () => [
1235
+ L(C(e.value), 1)
1230
1236
  ])
1231
1237
  ]),
1232
1238
  _: 3
@@ -1235,33 +1241,33 @@ const dt = /* @__PURE__ */ g({
1235
1241
  _: 3
1236
1242
  }, 16));
1237
1243
  }
1238
- }), ft = /* @__PURE__ */ g({
1244
+ }), St = /* @__PURE__ */ h({
1239
1245
  __name: "HeadlessSelectOptions",
1240
1246
  props: {
1241
1247
  class: {},
1242
1248
  innerClass: {}
1243
1249
  },
1244
1250
  setup(t) {
1245
- const s = V(
1251
+ const s = R(
1246
1252
  "select",
1247
1253
  "<HeadlessSelectOptions> must be a child of a <HeadlessSelect>"
1248
- ), e = c(() => M("min-w-(--reka-select-trigger-width) max-h-(--reka-select-content-available-height)", t.class));
1249
- return (r, n) => (u(), h(o(ms), null, {
1250
- default: f(() => [
1251
- p(o(fs), {
1254
+ ), e = c(() => E("min-w-(--reka-select-trigger-width) max-h-(--reka-select-content-available-height)", t.class));
1255
+ return (r, n) => (o(), f(l(Ts), null, {
1256
+ default: m(() => [
1257
+ d(l(Ms), {
1252
1258
  position: "popper",
1253
- class: k(e.value),
1254
- align: o(s).align,
1255
- side: o(s).side,
1259
+ class: x(e.value),
1260
+ align: l(s).align,
1261
+ side: l(s).side,
1256
1262
  "side-offset": 4
1257
1263
  }, {
1258
- default: f(() => [
1259
- p(o(hs), {
1260
- class: k(r.innerClass)
1264
+ default: m(() => [
1265
+ d(l(Es), {
1266
+ class: x(r.innerClass)
1261
1267
  }, {
1262
- default: f(() => [
1263
- w(r.$slots, "default", {}, () => [
1264
- (u(!0), b(D, null, F(o(s).options ?? [], (a) => (u(), h(mt, {
1268
+ default: m(() => [
1269
+ $(r.$slots, "default", {}, () => [
1270
+ (o(!0), y(D, null, U(l(s).options ?? [], (a) => (o(), f(xt, {
1265
1271
  key: a.key,
1266
1272
  value: a.value
1267
1273
  }, null, 8, ["value"]))), 128))
@@ -1276,7 +1282,7 @@ const dt = /* @__PURE__ */ g({
1276
1282
  _: 3
1277
1283
  }));
1278
1284
  }
1279
- }), br = /* @__PURE__ */ g({
1285
+ }), zr = /* @__PURE__ */ h({
1280
1286
  inheritAttrs: !1,
1281
1287
  __name: "HeadlessSelect",
1282
1288
  props: {
@@ -1296,56 +1302,56 @@ const dt = /* @__PURE__ */ g({
1296
1302
  },
1297
1303
  emits: ["update:modelValue"],
1298
1304
  setup(t, { expose: s, emit: e }) {
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) => ({
1300
- key: re(),
1301
- label: t.renderOption ? t.renderOption(m) : vr(m) ? Qt(m.label) : B(m),
1302
- value: m
1303
- })) : null), v = {
1305
+ const r = e, n = X("form", null), a = c(() => n && t.name ? n.getFieldValue(t.name) : t.modelValue), u = c(() => a.value), i = c(() => !n || !t.name ? null : n.errors[t.name] ?? null), p = c(() => t.options ? t.options.map((v) => ({
1306
+ key: ie(),
1307
+ label: t.renderOption ? t.renderOption(v) : Ir(v) ? ns(v.label) : B(v),
1308
+ value: v
1309
+ })) : null), g = {
1304
1310
  labelClass: t.labelClass,
1305
1311
  optionsClass: t.optionsClass,
1306
1312
  align: t.align,
1307
1313
  side: t.side,
1308
1314
  value: a,
1309
- id: `select-${re()}`,
1315
+ id: `select-${ie()}`,
1310
1316
  name: c(() => t.name),
1311
1317
  label: c(() => t.label),
1312
1318
  description: c(() => t.description),
1313
1319
  placeholder: c(() => t.placeholder ?? S("ui.select", "Select an option")),
1314
- options: d,
1320
+ options: p,
1315
1321
  selectedOption: c(() => {
1316
- var m;
1317
- return (m = d.value) == null ? void 0 : m.find((C) => C.value === t.modelValue);
1322
+ var v;
1323
+ return (v = p.value) == null ? void 0 : v.find((k) => k.value === t.modelValue);
1318
1324
  }),
1319
- errors: ve(l),
1325
+ errors: $e(i),
1320
1326
  required: c(() => {
1321
1327
  if (!(!t.name || !n))
1322
1328
  return n.getFieldRules(t.name).includes("required");
1323
1329
  }),
1324
- update(m) {
1330
+ update(v) {
1325
1331
  if (n && t.name) {
1326
- n.setFieldValue(t.name, m);
1332
+ n.setFieldValue(t.name, v);
1327
1333
  return;
1328
1334
  }
1329
- r("update:modelValue", m);
1335
+ r("update:modelValue", v);
1330
1336
  }
1331
1337
  };
1332
- function $(m) {
1333
- v.update(m);
1338
+ function w(v) {
1339
+ g.update(v);
1334
1340
  }
1335
- return le("select", v), s(v), (m, C) => (u(), h(o(gs), {
1336
- "model-value": i.value,
1337
- by: m.compareOptions,
1338
- "onUpdate:modelValue": C[0] || (C[0] = (L) => $(L))
1341
+ return de("select", g), s(g), (v, k) => (o(), f(l(Hs), {
1342
+ "model-value": u.value,
1343
+ by: v.compareOptions,
1344
+ "onUpdate:modelValue": k[0] || (k[0] = (q) => w(q))
1339
1345
  }, {
1340
- default: f(({ open: L }) => [
1341
- (u(), h(W(m.as), ne(ae(m.$attrs)), {
1342
- default: f(() => [
1343
- w(m.$slots, "default", {
1344
- modelValue: m.modelValue,
1345
- open: L
1346
+ default: m(({ open: q }) => [
1347
+ (o(), f(G(v.as), ue(ce(v.$attrs)), {
1348
+ default: m(() => [
1349
+ $(v.$slots, "default", {
1350
+ modelValue: v.modelValue,
1351
+ open: q
1346
1352
  }, () => [
1347
- p(pt),
1348
- p(ft)
1353
+ d(Ct),
1354
+ d(St)
1349
1355
  ])
1350
1356
  ]),
1351
1357
  _: 2
@@ -1354,50 +1360,50 @@ const dt = /* @__PURE__ */ g({
1354
1360
  _: 3
1355
1361
  }, 8, ["model-value", "by"]));
1356
1362
  }
1357
- }), Be = /* @__PURE__ */ g({
1363
+ }), Ye = /* @__PURE__ */ h({
1358
1364
  __name: "HeadlessSelectLabel",
1359
1365
  props: {
1360
1366
  asChild: { type: Boolean },
1361
1367
  as: {}
1362
1368
  },
1363
1369
  setup(t) {
1364
- const s = V(
1370
+ const s = R(
1365
1371
  "select",
1366
1372
  "<HeadlessSelectLabel> must be a child of a <HeadlessSelect>"
1367
- ), e = He(), r = c(() => !!(s.label || e.default));
1368
- return (n, a) => r.value ? (u(), h(o(vs), H({
1373
+ ), e = Ie(), r = c(() => !!(s.label || e.default));
1374
+ return (n, a) => r.value ? (o(), f(l(Vs), H({
1369
1375
  key: 0,
1370
- for: o(s).id
1376
+ for: l(s).id
1371
1377
  }, n.$props), {
1372
- default: f(() => [
1373
- w(n.$slots, "default", {}, () => [
1374
- I(x(o(s).label), 1)
1378
+ default: m(() => [
1379
+ $(n.$slots, "default", {}, () => [
1380
+ L(C(l(s).label), 1)
1375
1381
  ])
1376
1382
  ]),
1377
1383
  _: 3
1378
- }, 16, ["for"])) : T("", !0);
1384
+ }, 16, ["for"])) : M("", !0);
1379
1385
  }
1380
- }), ht = /* @__PURE__ */ g({
1386
+ }), kt = /* @__PURE__ */ h({
1381
1387
  __name: "SelectLabel",
1382
1388
  props: {
1383
1389
  class: {}
1384
1390
  },
1385
1391
  setup(t) {
1386
- const s = V("select", "<SelectLabel> must be a child of a <Select>"), e = c(() => M("block text-sm leading-6 font-medium text-gray-900", s.labelClass, t.class));
1387
- return (r, n) => r.$slots.default ? (u(), h(Be, {
1392
+ const s = R("select", "<SelectLabel> must be a child of a <Select>"), e = c(() => E("block text-sm leading-6 font-medium text-gray-900", s.labelClass, t.class));
1393
+ return (r, n) => r.$slots.default ? (o(), f(Ye, {
1388
1394
  key: 0,
1389
- class: k(e.value)
1395
+ class: x(e.value)
1390
1396
  }, {
1391
- default: f(() => [
1392
- w(r.$slots, "default")
1397
+ default: m(() => [
1398
+ $(r.$slots, "default")
1393
1399
  ]),
1394
1400
  _: 3
1395
- }, 8, ["class"])) : (u(), h(Be, {
1401
+ }, 8, ["class"])) : (o(), f(Ye, {
1396
1402
  key: 1,
1397
- class: k(e.value)
1403
+ class: x(e.value)
1398
1404
  }, null, 8, ["class"]));
1399
1405
  }
1400
- }), Fe = /* @__PURE__ */ g({
1406
+ }), Ge = /* @__PURE__ */ h({
1401
1407
  __name: "SelectOption",
1402
1408
  props: {
1403
1409
  value: {},
@@ -1405,62 +1411,62 @@ const dt = /* @__PURE__ */ g({
1405
1411
  innerClass: {}
1406
1412
  },
1407
1413
  setup(t) {
1408
- const s = c(() => M("group p-1 outline-none", t.class)), e = c(() => M(
1414
+ const s = c(() => E("group p-1 outline-none", t.class)), e = c(() => E(
1409
1415
  // eslint-disable-next-line vue/max-len
1410
1416
  "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",
1411
1417
  t.innerClass
1412
1418
  ));
1413
- return (r, n) => (u(), h(mt, {
1414
- class: k(s.value),
1419
+ return (r, n) => (o(), f(xt, {
1420
+ class: x(s.value),
1415
1421
  value: r.value
1416
1422
  }, {
1417
- default: f(() => [
1418
- y("div", {
1419
- class: k(e.value)
1423
+ default: m(() => [
1424
+ b("div", {
1425
+ class: x(e.value)
1420
1426
  }, [
1421
- w(r.$slots, "default")
1427
+ $(r.$slots, "default")
1422
1428
  ], 2)
1423
1429
  ]),
1424
1430
  _: 3
1425
1431
  }, 8, ["class", "value"]));
1426
1432
  }
1427
- }), gt = /* @__PURE__ */ g({
1433
+ }), Tt = /* @__PURE__ */ h({
1428
1434
  __name: "SelectOptions",
1429
1435
  props: {
1430
1436
  class: {}
1431
1437
  },
1432
1438
  setup(t) {
1433
- const s = V("select", "<SelectOptions> must be a child of a <Select>"), e = c(() => M(
1439
+ const s = R("select", "<SelectOptions> must be a child of a <Select>"), e = c(() => E(
1434
1440
  "z-50 overflow-auto rounded-lg bg-white text-base shadow-lg ring-1 ring-black/5 focus:outline-hidden",
1435
1441
  s.optionsClass,
1436
1442
  t.class
1437
1443
  ));
1438
- return (r, n) => (u(), h(ft, {
1439
- class: k(e.value)
1444
+ return (r, n) => (o(), f(St, {
1445
+ class: x(e.value)
1440
1446
  }, {
1441
- default: f(() => {
1447
+ default: m(() => {
1442
1448
  var a;
1443
1449
  return [
1444
- (a = o(s).options) != null && a.length ? w(r.$slots, "default", { key: 0 }, () => {
1445
- var i;
1450
+ (a = l(s).options) != null && a.length ? $(r.$slots, "default", { key: 0 }, () => {
1451
+ var u;
1446
1452
  return [
1447
- (u(!0), b(D, null, F(((i = o(s)) == null ? void 0 : i.options) ?? [], (l) => (u(), h(Fe, {
1448
- key: l.key,
1449
- value: l.value
1453
+ (o(!0), y(D, null, U(((u = l(s)) == null ? void 0 : u.options) ?? [], (i) => (o(), f(Ge, {
1454
+ key: i.key,
1455
+ value: i.value
1450
1456
  }, {
1451
- default: f(() => [
1452
- I(x(l.label), 1)
1457
+ default: m(() => [
1458
+ L(C(i.label), 1)
1453
1459
  ]),
1454
1460
  _: 2
1455
1461
  }, 1032, ["value"]))), 128))
1456
1462
  ];
1457
- }) : w(r.$slots, "default", { key: 1 }, () => [
1458
- p(Fe, {
1463
+ }) : $(r.$slots, "default", { key: 1 }, () => [
1464
+ d(Ge, {
1459
1465
  disabled: "",
1460
1466
  value: null
1461
1467
  }, {
1462
- default: f(() => [
1463
- I(x(r.$td("ui.selectEmpty", "No options available")), 1)
1468
+ default: m(() => [
1469
+ L(C(r.$td("ui.selectEmpty", "No options available")), 1)
1464
1470
  ]),
1465
1471
  _: 1
1466
1472
  })
@@ -1470,42 +1476,42 @@ const dt = /* @__PURE__ */ g({
1470
1476
  _: 3
1471
1477
  }, 8, ["class"]));
1472
1478
  }
1473
- }), yr = {
1479
+ }), Rr = {
1474
1480
  viewBox: "0 0 20 20",
1475
1481
  width: "1.2em",
1476
1482
  height: "1.2em"
1477
1483
  };
1478
- function wr(t, s) {
1479
- return u(), b("svg", yr, s[0] || (s[0] = [
1480
- y("path", {
1484
+ function qr(t, s) {
1485
+ return o(), y("svg", Rr, s[0] || (s[0] = [
1486
+ b("path", {
1481
1487
  fill: "currentColor",
1482
1488
  d: "m9.293 12.95l.707.707L15.657 8l-1.414-1.414L10 10.828L5.757 6.586L4.343 8z"
1483
1489
  }, null, -1)
1484
1490
  ]));
1485
1491
  }
1486
- const $r = E({ name: "zondicons-cheveron-down", render: wr }), vt = /* @__PURE__ */ g({
1492
+ const Ar = V({ name: "zondicons-cheveron-down", render: qr }), Mt = /* @__PURE__ */ h({
1487
1493
  __name: "SelectTrigger",
1488
1494
  props: {
1489
1495
  class: {}
1490
1496
  },
1491
1497
  setup(t) {
1492
- const s = V("select", "<SelectTrigger> must be a child of a <Select>"), e = c(() => M(
1498
+ const s = R("select", "<SelectTrigger> must be a child of a <Select>"), e = c(() => E(
1493
1499
  // eslint-disable-next-line vue/max-len
1494
1500
  "focus:outline-primary-600 data-[state=open]:outline-primary-600 grid w-full cursor-default grid-cols-1 rounded-md bg-white py-1.5 pr-2 pl-3 text-left text-gray-900 outline-1 -outline-offset-1 outline-gray-300 focus:outline-2 focus:-outline-offset-2 sm:text-sm/6",
1495
1501
  { "mt-1": s.label },
1496
1502
  t.class
1497
1503
  ));
1498
- return (r, n) => (u(), h(pt, {
1499
- class: k(e.value)
1504
+ return (r, n) => (o(), f(Ct, {
1505
+ class: x(e.value)
1500
1506
  }, {
1501
- default: f(() => [
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" })
1507
+ default: m(() => [
1508
+ d(_t, { class: "col-start-1 row-start-1 truncate pr-6" }),
1509
+ d(l(Ar), { class: "col-start-1 row-start-1 size-5 self-center justify-self-end text-gray-500 sm:size-4" })
1504
1510
  ]),
1505
1511
  _: 1
1506
1512
  }, 8, ["class"]));
1507
1513
  }
1508
- }), _r = /* @__PURE__ */ g({
1514
+ }), Pr = /* @__PURE__ */ h({
1509
1515
  __name: "Select",
1510
1516
  props: {
1511
1517
  as: {},
@@ -1524,21 +1530,21 @@ const $r = E({ name: "zondicons-cheveron-down", render: wr }), vt = /* @__PURE__
1524
1530
  },
1525
1531
  emits: ["update:modelValue"],
1526
1532
  setup(t) {
1527
- const { forwardRef: s } = Ve();
1528
- return (e, r) => (u(), h(br, H({ ref: o(s) }, e.$props, {
1533
+ const { forwardRef: s } = Re();
1534
+ return (e, r) => (o(), f(zr, H({ ref: l(s) }, e.$props, {
1529
1535
  "onUpdate:modelValue": r[0] || (r[0] = (n) => e.$emit("update:modelValue", n))
1530
1536
  }), {
1531
- default: f(() => [
1532
- p(ht),
1533
- w(e.$slots, "default", {}, () => [
1534
- p(vt),
1535
- p(gt)
1537
+ default: m(() => [
1538
+ d(kt),
1539
+ $(e.$slots, "default", {}, () => [
1540
+ d(Mt),
1541
+ d(Tt)
1536
1542
  ])
1537
1543
  ]),
1538
1544
  _: 3
1539
1545
  }, 16));
1540
1546
  }
1541
- }), xr = { class: "grow" }, Cr = /* @__PURE__ */ g({
1547
+ }), Dr = { class: "grow" }, jr = /* @__PURE__ */ h({
1542
1548
  __name: "Language",
1543
1549
  setup(t) {
1544
1550
  const s = Z.getBrowserLocale(), e = c(() => [null, ...Z.locales]);
@@ -1547,49 +1553,49 @@ const $r = E({ name: "zondicons-cheveron-down", render: wr }), vt = /* @__PURE__
1547
1553
  locale: j.locales[s] ?? s
1548
1554
  });
1549
1555
  }
1550
- return (n, a) => (u(), h(_r, {
1556
+ return (n, a) => (o(), f(Pr, {
1551
1557
  modelValue: n.$lang.locale,
1552
- "onUpdate:modelValue": a[0] || (a[0] = (i) => n.$lang.locale = i),
1558
+ "onUpdate:modelValue": a[0] || (a[0] = (u) => n.$lang.locale = u),
1553
1559
  class: "flex flex-col items-start md:flex-row",
1554
1560
  as: "div",
1555
1561
  options: e.value,
1556
1562
  "render-option": r
1557
1563
  }, {
1558
- default: f(() => [
1559
- y("div", xr, [
1560
- p(ht, { class: "text-base font-semibold" }, {
1561
- default: f(() => [
1562
- I(x(n.$td("settings.locale", "Language")), 1)
1564
+ default: m(() => [
1565
+ b("div", Dr, [
1566
+ d(kt, { class: "text-base font-semibold" }, {
1567
+ default: m(() => [
1568
+ L(C(n.$td("settings.locale", "Language")), 1)
1563
1569
  ]),
1564
1570
  _: 1
1565
1571
  }),
1566
- p(P, {
1572
+ d(z, {
1567
1573
  "lang-key": "settings.localeDescription",
1568
1574
  "lang-default": "Choose the application's language.",
1569
1575
  class: "mt-1 text-sm text-gray-500"
1570
1576
  })
1571
1577
  ]),
1572
- p(q, {
1578
+ d(I, {
1573
1579
  variant: "ghost",
1574
- as: vt,
1580
+ as: Mt,
1575
1581
  class: "grid w-auto outline-none"
1576
1582
  }),
1577
- p(gt)
1583
+ d(Tt)
1578
1584
  ]),
1579
1585
  _: 1
1580
1586
  }, 8, ["modelValue", "options"]));
1581
1587
  }
1582
- }), kr = [
1588
+ }), Br = [
1583
1589
  {
1584
1590
  priority: 100,
1585
- component: Cr
1591
+ component: jr
1586
1592
  }
1587
- ], Sr = { $lang: Z }, Tr = {
1593
+ ], Fr = { $lang: Z }, Ur = {
1588
1594
  async install(t) {
1589
1595
  var s;
1590
- (s = t.config.globalProperties).$t ?? (s.$t = it), t.config.globalProperties.$td = S, kr.forEach((e) => A.addSetting(e)), await $e(t, Sr);
1596
+ (s = t.config.globalProperties).$t ?? (s.$t = yt), t.config.globalProperties.$td = S, Br.forEach((e) => A.addSetting(e)), await Se(t, Fr);
1591
1597
  }
1592
- }, Mr = /* @__PURE__ */ g({
1598
+ }, Or = /* @__PURE__ */ h({
1593
1599
  __name: "Markdown",
1594
1600
  props: {
1595
1601
  as: {},
@@ -1601,38 +1607,38 @@ const $r = E({ name: "zondicons-cheveron-down", render: wr }), vt = /* @__PURE__
1601
1607
  actions: {}
1602
1608
  },
1603
1609
  setup(t) {
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(() => {
1610
+ const s = tt(), e = Ie(), r = c(() => e.default ? e.default().map(dt).join("") : t.text ?? (t.langKey && (t.langDefault ? S(t.langKey, t.langDefault, t.langParams ?? {}) : yt(t.langKey, t.langParams ?? {})))), n = c(() => {
1605
1611
  if (!r.value)
1606
1612
  return null;
1607
- let l = sr(r.value);
1608
- return t.inline && (l = l.replace("<p>", "<span>").replace("</p>", "</span>")), l;
1609
- }), a = () => It(t.as ?? (t.inline ? "span" : "div"), {
1613
+ let i = vr(r.value);
1614
+ return t.inline && (i = i.replace("<p>", "<span>").replace("</p>", "</span>")), i;
1615
+ }), a = () => Ot(t.as ?? (t.inline ? "span" : "div"), {
1610
1616
  innerHTML: n.value,
1611
- onClick: i,
1617
+ onClick: u,
1612
1618
  ...s,
1613
1619
  class: `${s.class ?? ""} ${t.inline ? "" : "prose"}`
1614
1620
  });
1615
- async function i(l) {
1616
- var v, $;
1617
- const { target: d } = l;
1618
- if (Pe(d, HTMLElement) && d.dataset.markdownAction) {
1619
- ($ = (v = t.actions) == null ? void 0 : v[d.dataset.markdownAction]) == null || $.call(v);
1621
+ async function u(i) {
1622
+ var g, w;
1623
+ const { target: p } = i;
1624
+ if (Oe(p, HTMLElement) && p.dataset.markdownAction) {
1625
+ (w = (g = t.actions) == null ? void 0 : g[p.dataset.markdownAction]) == null || w.call(g);
1620
1626
  return;
1621
1627
  }
1622
- if (Pe(d, HTMLAnchorElement) && d.dataset.markdownRoute) {
1623
- const m = tr();
1624
- m && (l.preventDefault(), m.visit(d.dataset.markdownRoute));
1628
+ if (Oe(p, HTMLAnchorElement) && p.dataset.markdownRoute) {
1629
+ const v = gr();
1630
+ v && (i.preventDefault(), v.visit(p.dataset.markdownRoute));
1625
1631
  return;
1626
1632
  }
1627
1633
  }
1628
- return (l, d) => (u(), h(a));
1634
+ return (i, p) => (o(), f(a));
1629
1635
  }
1630
- }), Hr = (t, s) => {
1636
+ }), Nr = (t, s) => {
1631
1637
  const e = t.__vccOpts || t;
1632
1638
  for (const [r, n] of s)
1633
1639
  e[r] = n;
1634
1640
  return e;
1635
- }, P = /* @__PURE__ */ Hr(Mr, [["__scopeId", "data-v-8b211cfb"]]), Er = { class: "flex-grow" }, Vr = ["id"], Lr = /* @__PURE__ */ g({
1641
+ }, z = /* @__PURE__ */ Nr(Or, [["__scopeId", "data-v-8b211cfb"]]), Wr = { class: "flex-grow" }, Kr = ["id"], Qr = /* @__PURE__ */ h({
1636
1642
  __name: "Setting",
1637
1643
  props: {
1638
1644
  title: {},
@@ -1642,29 +1648,29 @@ const $r = E({ name: "zondicons-cheveron-down", render: wr }), vt = /* @__PURE__
1642
1648
  layout: { default: "horizontal" }
1643
1649
  },
1644
1650
  setup(t) {
1645
- const s = c(() => M(t.class, "flex flex-col justify-center gap-1"));
1646
- return (e, r) => (u(), b("div", {
1647
- class: k(["mt-4 flex", { "flex-col": e.layout === "vertical" }])
1651
+ const s = c(() => E(t.class, "flex flex-col justify-center gap-1"));
1652
+ return (e, r) => (o(), y("div", {
1653
+ class: x(["mt-4 flex", { "flex-col": e.layout === "vertical" }])
1648
1654
  }, [
1649
- y("div", Er, [
1650
- y("h3", {
1655
+ b("div", Wr, [
1656
+ b("h3", {
1651
1657
  id: e.titleId,
1652
1658
  class: "text-base font-semibold"
1653
- }, x(e.title), 9, Vr),
1654
- e.description ? (u(), h(P, {
1659
+ }, C(e.title), 9, Kr),
1660
+ e.description ? (o(), f(z, {
1655
1661
  key: 0,
1656
1662
  text: e.description,
1657
1663
  class: "mt-1 text-sm text-gray-500"
1658
- }, null, 8, ["text"])) : T("", !0)
1664
+ }, null, 8, ["text"])) : M("", !0)
1659
1665
  ]),
1660
- y("div", {
1661
- class: k(s.value)
1666
+ b("div", {
1667
+ class: x(s.value)
1662
1668
  }, [
1663
- w(e.$slots, "default")
1669
+ $(e.$slots, "default")
1664
1670
  ], 2)
1665
1671
  ], 2));
1666
1672
  }
1667
- }), Ir = ["for"], qr = /* @__PURE__ */ g({
1673
+ }), Jr = ["for"], Zr = /* @__PURE__ */ h({
1668
1674
  inheritAttrs: !1,
1669
1675
  __name: "HeadlessSwitch",
1670
1676
  props: {
@@ -1679,71 +1685,71 @@ const $r = E({ name: "zondicons-cheveron-down", render: wr }), vt = /* @__PURE__
1679
1685
  },
1680
1686
  emits: ["update:modelValue"],
1681
1687
  setup(t, { expose: s, emit: e }) {
1682
- const r = e, n = X("form", null), a = c(() => !n || !t.name ? null : n.errors[t.name] ?? null), i = {
1683
- id: `switch-${re()}`,
1688
+ const r = e, n = X("form", null), a = c(() => !n || !t.name ? null : n.errors[t.name] ?? null), u = {
1689
+ id: `switch-${ie()}`,
1684
1690
  name: c(() => t.name),
1685
1691
  label: c(() => t.label),
1686
1692
  description: c(() => t.description),
1687
1693
  value: c(() => n && t.name ? n.getFieldValue(t.name) : t.modelValue),
1688
- errors: ve(a),
1694
+ errors: $e(a),
1689
1695
  required: c(() => {
1690
1696
  if (!(!t.name || !n))
1691
1697
  return n.getFieldRules(t.name).includes("required");
1692
1698
  }),
1693
- update(l) {
1699
+ update(i) {
1694
1700
  if (n && t.name) {
1695
- n.setFieldValue(t.name, l);
1701
+ n.setFieldValue(t.name, i);
1696
1702
  return;
1697
1703
  }
1698
- r("update:modelValue", l);
1704
+ r("update:modelValue", i);
1699
1705
  }
1700
1706
  };
1701
- return s(i), Y(() => {
1707
+ return s(u), Y(() => {
1702
1708
  !t.description && !a.value || console.warn("Errors and description not implemented in <HeadlessSwitch>");
1703
- }), (l, d) => (u(), b("div", {
1704
- class: k(t.class)
1709
+ }), (i, p) => (o(), y("div", {
1710
+ class: x(t.class)
1705
1711
  }, [
1706
- l.label ? (u(), b("label", {
1712
+ i.label ? (o(), y("label", {
1707
1713
  key: 0,
1708
- for: i.id,
1709
- class: k(l.labelClass)
1710
- }, x(l.label), 11, Ir)) : T("", !0),
1711
- p(o(bs), H({
1712
- id: i.id,
1713
- name: l.name,
1714
- "model-value": i.value.value
1715
- }, l.$attrs, {
1716
- class: l.inputClass,
1717
- "onUpdate:modelValue": d[0] || (d[0] = (v) => l.$emit("update:modelValue", v))
1714
+ for: u.id,
1715
+ class: x(i.labelClass)
1716
+ }, C(i.label), 11, Jr)) : M("", !0),
1717
+ d(l(Ls), H({
1718
+ id: u.id,
1719
+ name: i.name,
1720
+ "model-value": u.value.value
1721
+ }, i.$attrs, {
1722
+ class: i.inputClass,
1723
+ "onUpdate:modelValue": p[0] || (p[0] = (g) => i.$emit("update:modelValue", g))
1718
1724
  }), {
1719
- default: f(() => [
1720
- p(o(ys), {
1721
- class: k(l.thumbClass)
1725
+ default: m(() => [
1726
+ d(l(Is), {
1727
+ class: x(i.thumbClass)
1722
1728
  }, null, 8, ["class"])
1723
1729
  ]),
1724
1730
  _: 1
1725
1731
  }, 16, ["id", "name", "model-value", "class"])
1726
1732
  ], 2));
1727
1733
  }
1728
- }), zr = /* @__PURE__ */ g({
1734
+ }), Xr = /* @__PURE__ */ h({
1729
1735
  __name: "Switch",
1730
1736
  setup(t) {
1731
- return (s, e) => (u(), h(qr, {
1737
+ return (s, e) => (o(), f(Zr, {
1732
1738
  class: "flex flex-row items-center gap-1",
1733
1739
  "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",
1734
1740
  "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"
1735
1741
  }));
1736
1742
  }
1737
- }), Rr = /* @__PURE__ */ g({
1743
+ }), Yr = /* @__PURE__ */ h({
1738
1744
  __name: "Debug",
1739
1745
  setup(t) {
1740
- return (s, e) => (u(), h(Lr, {
1746
+ return (s, e) => (o(), f(Qr, {
1741
1747
  "title-id": "debug-setting",
1742
1748
  title: s.$td("settings.debug", "Debugging"),
1743
1749
  description: s.$td("settings.debugDescription", "Enable debugging with [Eruda](https://eruda.liriliri.io/).")
1744
1750
  }, {
1745
- default: f(() => [
1746
- p(zr, {
1751
+ default: m(() => [
1752
+ d(Xr, {
1747
1753
  modelValue: s.$errors.debug,
1748
1754
  "onUpdate:modelValue": e[0] || (e[0] = (r) => s.$errors.debug = r),
1749
1755
  "aria-labelledby": "debug-setting"
@@ -1752,55 +1758,55 @@ const $r = E({ name: "zondicons-cheveron-down", render: wr }), vt = /* @__PURE__
1752
1758
  _: 1
1753
1759
  }, 8, ["title", "description"]));
1754
1760
  }
1755
- }), Pr = [
1761
+ }), Gr = [
1756
1762
  {
1757
1763
  priority: 10,
1758
- component: Rr
1764
+ component: Yr
1759
1765
  }
1760
- ], bt = [];
1761
- function wl(t) {
1762
- bt.push(t);
1766
+ ], Et = [];
1767
+ function Pl(t) {
1768
+ Et.push(t);
1763
1769
  }
1764
- function yt(t) {
1765
- for (const s of bt) {
1770
+ function Ht(t) {
1771
+ for (const s of Et) {
1766
1772
  const e = s(t);
1767
1773
  if (e)
1768
1774
  return e;
1769
1775
  }
1770
- return typeof t == "string" ? t : t instanceof Error || t instanceof be ? t.message : ce(t) ? B(t.message ?? t.description ?? "Unknown error object") : S("errors.unknown", "Unknown Error");
1776
+ return typeof t == "string" ? t : t instanceof Error || t instanceof _e ? t.message : fe(t) ? B(t.message ?? t.description ?? "Unknown error object") : S("errors.unknown", "Unknown Error");
1771
1777
  }
1772
- class Ue extends be {
1778
+ class et extends _e {
1773
1779
  }
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);
1777
- t.config.errorHandler = e, globalThis.onerror = (r, n, a, i, l) => e(l ?? r), globalThis.onunhandledrejection = (r) => e(r.reason);
1780
+ const en = { $errors: wt }, tn = (t) => (wt.report(t), !0);
1781
+ function sn(t, s = () => !1) {
1782
+ const e = (r) => s(r) || tn(r);
1783
+ t.config.errorHandler = e, globalThis.onerror = (r, n, a, u, i) => e(i ?? r), globalThis.onunhandledrejection = (r) => e(r.reason);
1778
1784
  }
1779
- const Br = {
1785
+ const rn = {
1780
1786
  async install(t, s) {
1781
- jr(t, s.handleError), Pr.forEach((e) => A.addSetting(e)), await $e(t, Ar);
1787
+ sn(t, s.handleError), Gr.forEach((e) => A.addSetting(e)), await Se(t, en);
1782
1788
  }
1783
- }, Fr = {
1789
+ }, nn = {
1784
1790
  async install() {
1785
- Ee() && (globalThis.testingRuntime = {
1786
- on: (...t) => R.on(...t),
1791
+ ze() && (globalThis.testingRuntime = {
1792
+ on: (...t) => F.on(...t),
1787
1793
  service: (t) => A.service(t)
1788
1794
  });
1789
1795
  }
1790
- }, Ur = {
1796
+ }, an = {
1791
1797
  viewBox: "0 0 20 20",
1792
1798
  width: "1.2em",
1793
1799
  height: "1.2em"
1794
1800
  };
1795
- function Or(t, s) {
1796
- return u(), b("svg", Ur, s[0] || (s[0] = [
1797
- y("path", {
1801
+ function ln(t, s) {
1802
+ return o(), y("svg", an, s[0] || (s[0] = [
1803
+ b("path", {
1798
1804
  fill: "currentColor",
1799
1805
  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"
1800
1806
  }, null, -1)
1801
1807
  ]));
1802
1808
  }
1803
- const Nr = E({ name: "zondicons-close", render: Or }), Wr = /* @__PURE__ */ g({
1809
+ const on = V({ name: "zondicons-close", render: ln }), un = /* @__PURE__ */ h({
1804
1810
  __name: "HeadlessModal",
1805
1811
  props: {
1806
1812
  persistent: { type: Boolean },
@@ -1810,27 +1816,18 @@ const Nr = E({ name: "zondicons-close", render: Or }), Wr = /* @__PURE__ */ g({
1810
1816
  descriptionHidden: { type: Boolean }
1811
1817
  },
1812
1818
  setup(t, { expose: s }) {
1813
- const e = U(null), { modal: r } = V(
1814
- "modal",
1815
- "could not obtain modal reference from <HeadlessModal>, did you render this component manually? Show it using $ui.modal() instead"
1816
- );
1817
- s({ close: i, $content: e });
1818
- const { forwardRef: n } = Ve(), a = U(!1);
1819
- le("$modalContentRef", e), tt("close-modal", async ({ id: l, result: d }) => {
1820
- l === r.id && await i(d);
1821
- });
1822
- async function i(l) {
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 }));
1824
- }
1825
- return (l, d) => (u(), h(o(ws), {
1826
- ref: o(n),
1819
+ const e = N(null), { close: r } = Pe();
1820
+ s({ $content: e });
1821
+ const { forwardRef: n } = Re();
1822
+ return de("$modalContentRef", e), (a, u) => (o(), f(l(zs), {
1823
+ ref: l(n),
1827
1824
  open: "",
1828
- "onUpdate:open": d[0] || (d[0] = (v) => l.persistent || i())
1825
+ "onUpdate:open": u[0] || (u[0] = (i) => a.persistent || i || l(r)())
1829
1826
  }, {
1830
- default: f(() => [
1831
- p(o($s), null, {
1832
- default: f(() => [
1833
- w(l.$slots, "default", { close: i })
1827
+ default: m(() => [
1828
+ d(l(Rs), null, {
1829
+ default: m(() => [
1830
+ $(a.$slots, "default", { close: l(r) })
1834
1831
  ]),
1835
1832
  _: 3
1836
1833
  })
@@ -1838,58 +1835,36 @@ const Nr = E({ name: "zondicons-close", render: Or }), Wr = /* @__PURE__ */ g({
1838
1835
  _: 3
1839
1836
  }, 512));
1840
1837
  }
1841
- }), wt = /* @__PURE__ */ g({
1842
- __name: "ModalContext",
1843
- props: {
1844
- modal: {},
1845
- childIndex: {}
1846
- },
1847
- setup(t) {
1848
- const s = t, e = c(() => {
1849
- const r = {};
1850
- for (const n in s.modal.properties)
1851
- r[n] = o(s.modal.properties[n]);
1852
- return r;
1853
- });
1854
- return le("modal", {
1855
- modal: Re(s, "modal"),
1856
- childIndex: Re(s, "childIndex")
1857
- }), (r, n) => (u(), h(W(r.modal.component), ne(ae(e.value)), null, 16));
1858
- }
1859
- }), Kr = /* @__PURE__ */ g({
1838
+ }), cn = /* @__PURE__ */ h({
1860
1839
  __name: "HeadlessModalContent",
1861
1840
  setup(t) {
1862
- const { childIndex: s = 0 } = V(
1863
- "modal",
1864
- "could not obtain modal reference from <HeadlessModalContent>, did you render this component manually? Show it using $ui.modal() instead"
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" }, {
1867
- default: f(() => [
1868
- w(a.$slots, "default"),
1869
- n.value ? (u(), h(wt, {
1841
+ const { child: s } = Pe(), e = ar("$modalContentRef"), r = ee("$contentRef");
1842
+ return Y(() => e.value = r.value), (n, a) => (o(), f(l(qs), { ref: "$contentRef" }, {
1843
+ default: m(() => [
1844
+ $(n.$slots, "default"),
1845
+ l(s) ? (o(), f(l(vs), {
1870
1846
  key: 0,
1871
- "child-index": o(s) + 1,
1872
- modal: n.value
1873
- }, null, 8, ["child-index", "modal"])) : T("", !0)
1847
+ is: l(s)
1848
+ }, null, 8, ["is"])) : M("", !0)
1874
1849
  ]),
1875
1850
  _: 3
1876
1851
  }, 512));
1877
1852
  }
1878
- }), Qr = /* @__PURE__ */ g({
1853
+ }), dn = /* @__PURE__ */ h({
1879
1854
  __name: "HeadlessModalDescription",
1880
1855
  props: {
1881
1856
  asChild: { type: Boolean },
1882
1857
  as: {}
1883
1858
  },
1884
1859
  setup(t) {
1885
- return (s, e) => (u(), h(o(xs), ne(ae(s.$props)), {
1886
- default: f(() => [
1887
- w(s.$slots, "default")
1860
+ return (s, e) => (o(), f(l(As), ue(ce(s.$props)), {
1861
+ default: m(() => [
1862
+ $(s.$slots, "default")
1888
1863
  ]),
1889
1864
  _: 3
1890
1865
  }, 16));
1891
1866
  }
1892
- }), Jr = /* @__PURE__ */ g({
1867
+ }), pn = /* @__PURE__ */ h({
1893
1868
  __name: "HeadlessModalOverlay",
1894
1869
  props: {
1895
1870
  forceMount: { type: Boolean },
@@ -1897,31 +1872,31 @@ const Nr = E({ name: "zondicons-close", render: Or }), Wr = /* @__PURE__ */ g({
1897
1872
  as: {}
1898
1873
  },
1899
1874
  setup(t) {
1900
- return (s, e) => (u(), h(o(Cs), ne(ae(s.$props)), {
1901
- default: f(() => [
1902
- w(s.$slots, "default")
1875
+ return (s, e) => (o(), f(l(Ps), ue(ce(s.$props)), {
1876
+ default: m(() => [
1877
+ $(s.$slots, "default")
1903
1878
  ]),
1904
1879
  _: 3
1905
1880
  }, 16));
1906
1881
  }
1907
- }), Zr = /* @__PURE__ */ g({
1882
+ }), mn = /* @__PURE__ */ h({
1908
1883
  __name: "HeadlessModalTitle",
1909
1884
  props: {
1910
1885
  asChild: { type: Boolean },
1911
1886
  as: {}
1912
1887
  },
1913
1888
  setup(t) {
1914
- return (s, e) => (u(), h(o(ks), ne(ae(s.$props)), {
1915
- default: f(() => [
1916
- w(s.$slots, "default")
1889
+ return (s, e) => (o(), f(l(Ds), ue(ce(s.$props)), {
1890
+ default: m(() => [
1891
+ $(s.$slots, "default")
1917
1892
  ]),
1918
1893
  _: 3
1919
1894
  }, 16));
1920
1895
  }
1921
- }), Xr = {
1896
+ }), fn = {
1922
1897
  key: 0,
1923
1898
  class: "absolute top-0 right-0 hidden pt-3.5 pr-2.5 sm:block"
1924
- }, Yr = ["onClick"], Gr = { class: "sr-only" }, se = /* @__PURE__ */ g({
1899
+ }, hn = ["onClick"], gn = { class: "sr-only" }, Me = pr(), re = /* @__PURE__ */ h({
1925
1900
  __name: "Modal",
1926
1901
  props: {
1927
1902
  persistent: { type: Boolean },
@@ -1934,117 +1909,120 @@ const Nr = E({ name: "zondicons-close", render: Or }), Wr = /* @__PURE__ */ g({
1934
1909
  closeHidden: { type: Boolean }
1935
1910
  },
1936
1911
  setup(t, { expose: s }) {
1937
- const e = N(t, ["class", "wrapperClass", "title", "titleHidden", "description", "persistent", "closeHidden"]);
1912
+ const e = K(t, ["class", "wrapperClass", "title", "titleHidden", "description", "persistent", "closeHidden"]);
1938
1913
  s({
1939
- close: async (m) => {
1940
- var C;
1941
- return (C = a.value) == null ? void 0 : C.close(m);
1942
- },
1943
1914
  $content: c(() => {
1944
- var m;
1945
- return (m = a.value) == null ? void 0 : m.$content;
1915
+ var T;
1916
+ return (T = i.value) == null ? void 0 : T.$content;
1946
1917
  })
1947
1918
  });
1948
- const { forwardRef: r, currentRef: n } = Ve(), a = n, i = V("modal"), l = c(() => !i.modal.closing && i.childIndex === z.openModals.length), d = c(() => t.description ? {} : { "aria-describedby": void 0 }), v = c(() => M("max-h-[90vh] overflow-auto px-4 pb-4", { "pt-4": !t.title || t.titleHidden }, t.class)), $ = c(() => M(
1919
+ const { forwardRef: r, currentRef: n } = Re(), { id: a, visible: u } = Pe(), i = n, p = ut(), g = c(
1920
+ () => {
1921
+ var T;
1922
+ return u.value && ((T = ae.value.toReversed().find((Be) => Be.visible.value)) == null ? void 0 : T.id) === a.value;
1923
+ }
1924
+ ), w = c(() => ae.value.find((T) => T.visible.value)), v = c(() => ae.value.some((T) => Me.has(T))), k = c(() => t.description ? {} : { "aria-describedby": void 0 }), q = c(() => E("max-h-[90vh] overflow-auto px-4 pb-4", { "pt-4": !t.title || t.titleHidden }, t.class)), pe = c(() => E(
1949
1925
  "isolate fixed top-1/2 left-1/2 z-50 w-full max-w-[calc(100%-2rem)] -translate-x-1/2 -translate-y-1/2",
1950
1926
  "overflow-hidden rounded-lg bg-white text-left shadow-xl sm:max-w-lg",
1951
- "animate-[fade-in_var(--tw-duration)_ease-in-out,grow_var(--tw-duration)_ease-in-out]",
1927
+ Me.has(p.value) || "animate-[fade-in_var(--tw-duration)_ease-in-out,grow_var(--tw-duration)_ease-in-out]",
1952
1928
  "transition-[scale,opacity] will-change-[scale,opacity] duration-300",
1953
1929
  {
1954
- "scale-50 opacity-0": !l.value,
1955
- "scale-100 opacity-100": l.value
1930
+ "scale-50 opacity-0": !g.value,
1931
+ "scale-100 opacity-100": g.value
1956
1932
  },
1957
1933
  t.wrapperClass
1958
1934
  ));
1959
- return tt("modal-will-close", async ({ modal: { id: m } }) => {
1960
- m === i.modal.id && await ue({ ms: 300 });
1961
- }), (m, C) => (u(), h(Wr, H(e, {
1962
- ref: (L) => o(r)(L),
1963
- persistent: m.persistent
1935
+ return st(() => le(500).then(() => Me.add(p.value))), (T, Be) => (o(), f(un, H(e, {
1936
+ ref: (me) => l(r)(me),
1937
+ persistent: T.persistent
1964
1938
  }), {
1965
- default: f(({ close: L }) => [
1966
- p(Jr, {
1967
- class: k(["fixed inset-0 animate-[fade-in_var(--tw-duration)_ease-in-out] transition-opacity duration-300 will-change-[opacity]", {
1968
- "bg-black/30": o(i).childIndex === 1,
1969
- "opacity-0": o(i).childIndex === 1 && o(i).modal.closing
1970
- }])
1971
- }, null, 8, ["class"]),
1972
- p(Kr, H(d.value, { class: $.value }), {
1973
- default: f(() => [
1974
- !m.persistent && !m.closeHidden ? (u(), b("div", Xr, [
1975
- y("button", {
1976
- type: "button",
1977
- class: "clickable z-10 rounded-full p-2.5 text-gray-400 hover:text-gray-500",
1978
- onClick: (_e) => L()
1939
+ default: m(({ close: me }) => {
1940
+ var Fe, Ue;
1941
+ return [
1942
+ d(pn, {
1943
+ class: x(["fixed inset-0 transition-opacity duration-300 will-change-[opacity]", {
1944
+ "animate-[fade-in_var(--tw-duration)_ease-in-out]": !v.value,
1945
+ "bg-black/30": ((Fe = w.value) == null ? void 0 : Fe.id) === l(a) || !w.value && ((Ue = l(ae)[0]) == null ? void 0 : Ue.id) === l(a),
1946
+ "opacity-0": !w.value
1947
+ }])
1948
+ }, null, 8, ["class"]),
1949
+ d(cn, H(k.value, { class: pe.value }), {
1950
+ default: m(() => [
1951
+ !T.persistent && !T.closeHidden ? (o(), y("div", fn, [
1952
+ b("button", {
1953
+ type: "button",
1954
+ class: "clickable z-10 rounded-full p-2.5 text-gray-400 hover:text-gray-500",
1955
+ onClick: (cl) => me()
1956
+ }, [
1957
+ b("span", gn, C(T.$td("ui.close", "Close")), 1),
1958
+ d(l(on), { class: "size-4" })
1959
+ ], 8, hn)
1960
+ ])) : M("", !0),
1961
+ T.title ? (o(), f(mn, {
1962
+ key: 1,
1963
+ class: x(["px-4 pt-5 text-base font-semibold text-gray-900", {
1964
+ "sr-only": T.titleHidden,
1965
+ "pb-0": T.description && !T.descriptionHidden,
1966
+ "pb-2": !T.description || T.descriptionHidden
1967
+ }])
1968
+ }, {
1969
+ default: m(() => [
1970
+ d(z, {
1971
+ text: T.title,
1972
+ inline: ""
1973
+ }, null, 8, ["text"])
1974
+ ]),
1975
+ _: 1
1976
+ }, 8, ["class"])) : M("", !0),
1977
+ T.description ? (o(), f(dn, {
1978
+ key: 2,
1979
+ class: x(["px-4 pt-1 pb-2", { "sr-only": T.descriptionHidden }])
1980
+ }, {
1981
+ default: m(() => [
1982
+ d(z, {
1983
+ text: T.description,
1984
+ class: "text-sm leading-6 text-gray-500"
1985
+ }, null, 8, ["text"])
1986
+ ]),
1987
+ _: 1
1988
+ }, 8, ["class"])) : M("", !0),
1989
+ b("div", {
1990
+ class: x(q.value)
1979
1991
  }, [
1980
- y("span", Gr, x(m.$td("ui.close", "Close")), 1),
1981
- p(o(Nr), { class: "size-4" })
1982
- ], 8, Yr)
1983
- ])) : T("", !0),
1984
- m.title ? (u(), h(Zr, {
1985
- key: 1,
1986
- class: k(["px-4 pt-5 text-base font-semibold text-gray-900", {
1987
- "sr-only": m.titleHidden,
1988
- "pb-0": m.description && !m.descriptionHidden,
1989
- "pb-2": !m.description || m.descriptionHidden
1990
- }])
1991
- }, {
1992
- default: f(() => [
1993
- p(P, {
1994
- text: m.title,
1995
- inline: ""
1996
- }, null, 8, ["text"])
1997
- ]),
1998
- _: 1
1999
- }, 8, ["class"])) : T("", !0),
2000
- m.description ? (u(), h(Qr, {
2001
- key: 2,
2002
- class: k(["px-4 pt-1 pb-2", { "sr-only": m.descriptionHidden }])
2003
- }, {
2004
- default: f(() => [
2005
- p(P, {
2006
- text: m.description,
2007
- class: "text-sm leading-6 text-gray-500"
2008
- }, null, 8, ["text"])
2009
- ]),
2010
- _: 1
2011
- }, 8, ["class"])) : T("", !0),
2012
- y("div", {
2013
- class: k(v.value)
2014
- }, [
2015
- w(m.$slots, "default", { close: L })
2016
- ], 2)
2017
- ]),
2018
- _: 2
2019
- }, 1040, ["class"])
2020
- ]),
1992
+ $(T.$slots, "default", { close: me })
1993
+ ], 2)
1994
+ ]),
1995
+ _: 2
1996
+ }, 1040, ["class"])
1997
+ ];
1998
+ }),
2021
1999
  _: 3
2022
2000
  }, 16, ["persistent"]));
2023
2001
  }
2024
2002
  });
2025
- function en(t) {
2003
+ function vn(t) {
2026
2004
  const s = c(() => t.title ?? S("ui.alert", "Alert")), e = c(() => !t.title);
2027
2005
  return { renderedTitle: s, titleHidden: e };
2028
2006
  }
2029
- const tn = /* @__PURE__ */ g({
2007
+ const bn = /* @__PURE__ */ h({
2030
2008
  __name: "AlertModal",
2031
2009
  props: {
2032
2010
  title: {},
2033
2011
  message: {}
2034
2012
  },
2035
2013
  setup(t, { expose: s }) {
2036
- const e = t, { renderedTitle: r, titleHidden: n } = en(e);
2037
- return s(), (a, i) => (u(), h(se, {
2038
- title: o(r),
2039
- "title-hidden": o(n)
2014
+ const e = t, { renderedTitle: r, titleHidden: n } = vn(e);
2015
+ return s(), (a, u) => (o(), f(re, {
2016
+ title: l(r),
2017
+ "title-hidden": l(n)
2040
2018
  }, {
2041
- default: f(() => [
2042
- p(P, { text: a.message }, null, 8, ["text"])
2019
+ default: m(() => [
2020
+ d(z, { text: a.message }, null, 8, ["text"])
2043
2021
  ]),
2044
2022
  _: 1
2045
2023
  }, 8, ["title", "title-hidden"]));
2046
2024
  }
2047
- }), $t = /* @__PURE__ */ g({
2025
+ }), Vt = /* @__PURE__ */ h({
2048
2026
  __name: "Form",
2049
2027
  props: {
2050
2028
  form: {}
@@ -2056,36 +2034,33 @@ const tn = /* @__PURE__ */ g({
2056
2034
  return Y((n) => {
2057
2035
  var a;
2058
2036
  e == null || e(), e = (a = t.form) == null ? void 0 : a.on("submit", () => r("submit")), n(() => e == null ? void 0 : e());
2059
- }), le("form", t.form), (n, a) => (u(), b("form", {
2060
- onSubmit: a[0] || (a[0] = We((i) => {
2061
- var l;
2062
- return (l = n.form) == null ? void 0 : l.submit();
2063
- }, ["prevent"]))
2037
+ }), de("form", t.form), (n, a) => (o(), y("form", {
2038
+ onSubmit: a[0] || (a[0] = rt((u) => n.form ? n.form.submit() : n.$emit("submit"), ["prevent"]))
2064
2039
  }, [
2065
- w(n.$slots, "default")
2040
+ $(n.$slots, "default")
2066
2041
  ], 32));
2067
2042
  }
2068
2043
  });
2069
- function sn(t) {
2070
- const s = rt(
2044
+ function yn(t) {
2045
+ const s = ft(
2071
2046
  Object.entries(t.checkboxes ?? {}).reduce(
2072
- (i, [l, d]) => ({
2073
- [l]: {
2047
+ (u, [i, p]) => ({
2048
+ [i]: {
2074
2049
  type: "boolean",
2075
- default: d.default,
2076
- required: d.required ? "required" : void 0
2050
+ default: p.default,
2051
+ required: p.required ? "required" : void 0
2077
2052
  },
2078
- ...i
2053
+ ...u
2079
2054
  }),
2080
2055
  {}
2081
2056
  )
2082
2057
  ), 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"));
2083
2058
  return { form: s, renderedTitle: e, titleHidden: r, renderedAcceptText: n, renderedCancelText: a };
2084
2059
  }
2085
- const rn = {
2060
+ const wn = {
2086
2061
  key: 0,
2087
2062
  class: "mt-4 flex flex-col text-sm text-gray-600"
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({
2063
+ }, $n = { class: "flex items-center" }, _n = ["onUpdate:modelValue", "required"], Cn = { class: "ml-1.5" }, xn = { class: "mt-4 flex flex-row-reverse gap-2" }, Sn = /* @__PURE__ */ h({
2089
2064
  __name: "ConfirmModal",
2090
2065
  props: {
2091
2066
  title: {},
@@ -2098,55 +2073,56 @@ const rn = {
2098
2073
  actions: {},
2099
2074
  required: { type: Boolean }
2100
2075
  },
2076
+ emits: ["close"],
2101
2077
  setup(t, { expose: s }) {
2102
- const e = N(t, ["cancelVariant"]), { form: r, renderedTitle: n, titleHidden: a, renderedAcceptText: i, renderedCancelText: l } = sn(e);
2103
- return s(), (d, v) => (u(), h(se, {
2104
- title: o(n),
2105
- "title-hidden": o(a),
2078
+ const e = K(t, ["cancelVariant"]), { form: r, renderedTitle: n, titleHidden: a, renderedAcceptText: u, renderedCancelText: i } = yn(e);
2079
+ return s(), (p, g) => (o(), f(re, {
2080
+ title: l(n),
2081
+ "title-hidden": l(a),
2106
2082
  persistent: ""
2107
2083
  }, {
2108
- default: f(({ close: $ }) => [
2109
- p($t, {
2110
- form: o(r),
2111
- onSubmit: (m) => $([!0, o(r).data()])
2084
+ default: m(({ close: w }) => [
2085
+ d(Vt, {
2086
+ form: l(r),
2087
+ onSubmit: (v) => w([!0, l(r).data()])
2112
2088
  }, {
2113
- default: f(() => [
2114
- p(P, {
2115
- text: d.message,
2116
- actions: d.actions
2089
+ default: m(() => [
2090
+ d(z, {
2091
+ text: p.message,
2092
+ actions: p.actions
2117
2093
  }, null, 8, ["text", "actions"]),
2118
- d.checkboxes ? (u(), b("ul", rn, [
2119
- (u(!0), b(D, null, F(d.checkboxes, (m, C) => (u(), b("li", { key: C }, [
2120
- y("label", nn, [
2121
- Ke(y("input", {
2122
- "onUpdate:modelValue": (L) => o(r)[C] = L,
2094
+ p.checkboxes ? (o(), y("ul", wn, [
2095
+ (o(!0), y(D, null, U(p.checkboxes, (v, k) => (o(), y("li", { key: k }, [
2096
+ b("label", $n, [
2097
+ nt(b("input", {
2098
+ "onUpdate:modelValue": (q) => l(r)[k] = q,
2123
2099
  type: "checkbox",
2124
- required: m.required,
2100
+ required: v.required,
2125
2101
  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"
2126
- }, null, 8, an), [
2127
- [qt, o(r)[C]]
2102
+ }, null, 8, _n), [
2103
+ [Nt, l(r)[k]]
2128
2104
  ]),
2129
- y("span", ln, x(m.label), 1)
2105
+ b("span", Cn, C(v.label), 1)
2130
2106
  ])
2131
2107
  ]))), 128))
2132
- ])) : T("", !0),
2133
- y("div", on, [
2134
- p(q, {
2135
- variant: d.acceptVariant,
2108
+ ])) : M("", !0),
2109
+ b("div", xn, [
2110
+ d(I, {
2111
+ variant: p.acceptVariant,
2136
2112
  submit: ""
2137
2113
  }, {
2138
- default: f(() => [
2139
- I(x(o(i)), 1)
2114
+ default: m(() => [
2115
+ L(C(l(u)), 1)
2140
2116
  ]),
2141
2117
  _: 1
2142
2118
  }, 8, ["variant"]),
2143
- d.required ? T("", !0) : (u(), h(q, {
2119
+ p.required ? M("", !0) : (o(), f(I, {
2144
2120
  key: 0,
2145
- variant: d.cancelVariant,
2146
- onClick: (m) => $(!1)
2121
+ variant: p.cancelVariant,
2122
+ onClick: (v) => w(!1)
2147
2123
  }, {
2148
- default: f(() => [
2149
- I(x(o(l)), 1)
2124
+ default: m(() => [
2125
+ L(C(l(i)), 1)
2150
2126
  ]),
2151
2127
  _: 2
2152
2128
  }, 1032, ["variant", "onClick"]))
@@ -2158,85 +2134,85 @@ const rn = {
2158
2134
  _: 1
2159
2135
  }, 8, ["title", "title-hidden"]));
2160
2136
  }
2161
- }), cn = {
2137
+ }), kn = {
2162
2138
  viewBox: "0 0 20 20",
2163
2139
  width: "1.2em",
2164
2140
  height: "1.2em"
2165
2141
  };
2166
- function dn(t, s) {
2167
- return u(), b("svg", cn, s[0] || (s[0] = [
2168
- y("path", {
2142
+ function Tn(t, s) {
2143
+ return o(), y("svg", kn, s[0] || (s[0] = [
2144
+ b("path", {
2169
2145
  fill: "currentColor",
2170
2146
  d: "M7.05 9.293L6.343 10L12 15.657l1.414-1.414L9.172 10l4.242-4.243L12 4.343z"
2171
2147
  }, null, -1)
2172
2148
  ]));
2173
2149
  }
2174
- const pn = E({ name: "zondicons-cheveron-left", render: dn }), mn = {
2150
+ const Mn = V({ name: "zondicons-cheveron-left", render: Tn }), En = {
2175
2151
  viewBox: "0 0 20 20",
2176
2152
  width: "1.2em",
2177
2153
  height: "1.2em"
2178
2154
  };
2179
- function fn(t, s) {
2180
- return u(), b("svg", mn, s[0] || (s[0] = [
2181
- y("path", {
2155
+ function Hn(t, s) {
2156
+ return o(), y("svg", En, s[0] || (s[0] = [
2157
+ b("path", {
2182
2158
  fill: "currentColor",
2183
2159
  d: "m12.95 10.707l.707-.707L8 4.343L6.586 5.757L10.828 10l-4.242 4.243L8 15.657z"
2184
2160
  }, null, -1)
2185
2161
  ]));
2186
2162
  }
2187
- const _t = E({ name: "zondicons-cheveron-right", render: fn }), hn = {
2163
+ const Lt = V({ name: "zondicons-cheveron-right", render: Hn }), Vn = {
2188
2164
  viewBox: "0 0 20 20",
2189
2165
  width: "1.2em",
2190
2166
  height: "1.2em"
2191
2167
  };
2192
- function gn(t, s) {
2193
- return u(), b("svg", hn, s[0] || (s[0] = [
2194
- y("path", {
2168
+ function Ln(t, s) {
2169
+ return o(), y("svg", Vn, s[0] || (s[0] = [
2170
+ b("path", {
2195
2171
  fill: "currentColor",
2196
2172
  d: "M2.93 17.07A10 10 0 1 1 17.07 2.93A10 10 0 0 1 2.93 17.07M9 5v6h2V5zm0 8v2h2v-2z"
2197
2173
  }, null, -1)
2198
2174
  ]));
2199
2175
  }
2200
- const qe = E({ name: "zondicons-exclamation-solid", render: gn }), vn = {
2176
+ const De = V({ name: "zondicons-exclamation-solid", render: Ln }), In = {
2201
2177
  viewBox: "0 0 24 24",
2202
2178
  width: "1.2em",
2203
2179
  height: "1.2em"
2204
2180
  };
2205
- function bn(t, s) {
2206
- return u(), b("svg", vn, s[0] || (s[0] = [
2207
- y("path", {
2181
+ function zn(t, s) {
2182
+ return o(), y("svg", In, s[0] || (s[0] = [
2183
+ b("path", {
2208
2184
  fill: "currentColor",
2209
2185
  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"
2210
2186
  }, null, -1)
2211
2187
  ]));
2212
2188
  }
2213
- const yn = E({ name: "mdi-console", render: bn }), wn = {
2189
+ const Rn = V({ name: "mdi-console", render: zn }), qn = {
2214
2190
  viewBox: "0 0 20 20",
2215
2191
  width: "1.2em",
2216
2192
  height: "1.2em"
2217
2193
  };
2218
- function $n(t, s) {
2219
- return u(), b("svg", wn, s[0] || (s[0] = [
2220
- y("path", {
2194
+ function An(t, s) {
2195
+ return o(), y("svg", qn, s[0] || (s[0] = [
2196
+ b("path", {
2221
2197
  fill: "currentColor",
2222
2198
  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"
2223
2199
  }, null, -1)
2224
2200
  ]));
2225
2201
  }
2226
- const _n = E({ name: "zondicons-copy", render: $n }), xn = {
2202
+ const Pn = V({ name: "zondicons-copy", render: An }), Dn = {
2227
2203
  viewBox: "0 0 24 24",
2228
2204
  width: "1.2em",
2229
2205
  height: "1.2em"
2230
2206
  };
2231
- function Cn(t, s) {
2232
- return u(), b("svg", xn, s[0] || (s[0] = [
2233
- y("path", {
2207
+ function jn(t, s) {
2208
+ return o(), y("svg", Dn, s[0] || (s[0] = [
2209
+ b("path", {
2234
2210
  fill: "currentColor",
2235
2211
  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"
2236
2212
  }, null, -1)
2237
2213
  ]));
2238
2214
  }
2239
- const kn = E({ name: "mdi-github", render: Cn }), Sn = { class: "flex" }, Tn = { class: "sr-only" }, Mn = /* @__PURE__ */ g({
2215
+ const Bn = V({ name: "mdi-github", render: jn }), Fn = { class: "flex" }, Un = { class: "sr-only" }, On = /* @__PURE__ */ h({
2240
2216
  __name: "ErrorReportModalButtons",
2241
2217
  props: {
2242
2218
  report: {}
@@ -2245,13 +2221,13 @@ const kn = E({ name: "mdi-github", render: Cn }), Sn = { class: "flex" }, Tn = {
2245
2221
  const s = t, e = c(() => s.report.description ? `${s.report.title}: ${s.report.description}` : s.report.title), r = c(() => {
2246
2222
  if (!A.sourceUrl)
2247
2223
  return !1;
2248
- const a = encodeURIComponent(e.value), i = encodeURIComponent(
2224
+ const a = encodeURIComponent(e.value), u = encodeURIComponent(
2249
2225
  [
2250
2226
  "[Please, explain here what you were trying to do when this error appeared]",
2251
2227
  "",
2252
2228
  "Error details:",
2253
2229
  "```",
2254
- Jt(
2230
+ as(
2255
2231
  s.report.details ?? "Details missing from report",
2256
2232
  1800 - a.length - A.sourceUrl.length
2257
2233
  ).trim(),
@@ -2259,26 +2235,26 @@ const kn = E({ name: "mdi-github", render: Cn }), Sn = { class: "flex" }, Tn = {
2259
2235
  ].join(`
2260
2236
  `)
2261
2237
  );
2262
- return `${A.sourceUrl}/issues/new?title=${a}&body=${i}`;
2263
- }), n = c(() => ee(
2238
+ return `${A.sourceUrl}/issues/new?title=${a}&body=${u}`;
2239
+ }), n = c(() => te(
2264
2240
  [
2265
2241
  {
2266
2242
  id: "clipboard",
2267
2243
  description: "Copy to clipboard",
2268
- iconComponent: _n,
2244
+ iconComponent: Pn,
2269
2245
  async click() {
2270
2246
  await navigator.clipboard.writeText(`${e.value}
2271
2247
 
2272
- ${s.report.details}`), z.toast(S("errors.copiedToClipboard", "Debug information copied to clipboard"));
2248
+ ${s.report.details}`), P.toast(S("errors.copiedToClipboard", "Debug information copied to clipboard"));
2273
2249
  }
2274
2250
  },
2275
2251
  {
2276
2252
  id: "console",
2277
2253
  description: "Log to console",
2278
- iconComponent: yn,
2254
+ iconComponent: Rn,
2279
2255
  click() {
2280
2256
  const a = s.report.error ?? s.report;
2281
- window.error = a, console.error(a), z.toast(
2257
+ window.error = a, console.error(a), P.toast(
2282
2258
  S(
2283
2259
  "errors.addedToConsole",
2284
2260
  "You can now use the **error** variable in the console"
@@ -2291,24 +2267,24 @@ ${s.report.details}`), z.toast(S("errors.copiedToClipboard", "Debug information
2291
2267
  r.value && a.push({
2292
2268
  id: "github",
2293
2269
  description: "Report in GitHub",
2294
- iconComponent: kn,
2270
+ iconComponent: Bn,
2295
2271
  url: r.value
2296
2272
  });
2297
2273
  }
2298
2274
  ));
2299
- return (a, i) => (u(), b("div", Sn, [
2300
- (u(!0), b(D, null, F(n.value, (l) => w(a.$slots, "default", H({ ref_for: !0 }, l), () => [
2301
- p(q, {
2275
+ return (a, u) => (o(), y("div", Fn, [
2276
+ (o(!0), y(D, null, U(n.value, (i) => $(a.$slots, "default", H({ ref_for: !0 }, i), () => [
2277
+ d(I, {
2302
2278
  size: "icon",
2303
2279
  variant: "ghost",
2304
2280
  class: "group whitespace-nowrap",
2305
- href: l.url,
2306
- title: a.$td(`errors.report_${l.id}`, l.description),
2307
- onClick: l.click
2281
+ href: i.url,
2282
+ title: a.$td(`errors.report_${i.id}`, i.description),
2283
+ onClick: i.click
2308
2284
  }, {
2309
- default: f(() => [
2310
- y("span", Tn, x(a.$td(`errors.report_${l.id}`, l.description)), 1),
2311
- (u(), h(W(l.iconComponent), {
2285
+ default: m(() => [
2286
+ b("span", Un, C(a.$td(`errors.report_${i.id}`, i.description)), 1),
2287
+ (o(), f(G(i.iconComponent), {
2312
2288
  class: "size-4",
2313
2289
  "aria-hidden": "true"
2314
2290
  }))
@@ -2318,7 +2294,7 @@ ${s.report.details}`), z.toast(S("errors.copiedToClipboard", "Debug information
2318
2294
  ])), 256))
2319
2295
  ]));
2320
2296
  }
2321
- }), Hn = /* @__PURE__ */ g({
2297
+ }), Nn = /* @__PURE__ */ h({
2322
2298
  __name: "ErrorReportModalTitle",
2323
2299
  props: {
2324
2300
  report: {},
@@ -2327,17 +2303,17 @@ ${s.report.details}`), z.toast(S("errors.copiedToClipboard", "Debug information
2327
2303
  },
2328
2304
  setup(t) {
2329
2305
  const s = c(() => !t.totalReports || t.totalReports <= 1 ? t.report.title : `${t.report.title} (${t.currentReport}/${t.totalReports})`);
2330
- return (e, r) => (u(), h(P, {
2306
+ return (e, r) => (o(), f(z, {
2331
2307
  text: s.value,
2332
2308
  inline: ""
2333
2309
  }, null, 8, ["text"]));
2334
2310
  }
2335
2311
  });
2336
- function En(t) {
2337
- const s = U(t.reports.includes(t.report) ? t.reports.indexOf(t.report) : 0), e = c(() => t.reports[s.value]), r = c(
2312
+ function Wn(t) {
2313
+ const s = N(t.reports.includes(t.report) ? t.reports.indexOf(t.report) : 0), e = c(() => t.reports[s.value]), r = c(
2338
2314
  () => {
2339
- var i;
2340
- return ((i = e.value.details) == null ? void 0 : i.trim()) || S("errors.detailsEmpty", "This error is missing a stacktrace.");
2315
+ var u;
2316
+ return ((u = e.value.details) == null ? void 0 : u.trim()) || S("errors.detailsEmpty", "This error is missing a stacktrace.");
2341
2317
  }
2342
2318
  ), n = S("errors.previousReport", "Show previous report"), a = S("errors.nextReport", "Show next report");
2343
2319
  return {
@@ -2348,102 +2324,102 @@ function En(t) {
2348
2324
  activeReport: e
2349
2325
  };
2350
2326
  }
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 = {
2327
+ const Kn = { class: "px-4 pt-5 pb-4" }, Qn = { class: "flex justify-between gap-4" }, Jn = { class: "flex items-center gap-2" }, Zn = {
2352
2328
  key: 0,
2353
2329
  class: "flex gap-0.5"
2354
- }, zn = { class: "-mt-2 max-h-[75vh] overflow-auto bg-red-800/10" }, Rn = ["textContent"], Pn = /* @__PURE__ */ g({
2330
+ }, Xn = { class: "-mt-2 max-h-[75vh] overflow-auto bg-red-800/10" }, Yn = ["textContent"], Gn = /* @__PURE__ */ h({
2355
2331
  __name: "ErrorReportModal",
2356
2332
  props: {
2357
2333
  report: {},
2358
2334
  reports: {}
2359
2335
  },
2360
2336
  setup(t, { expose: s }) {
2361
- const e = t, { activeReportIndex: r, details: n, nextReportText: a, previousReportText: i, activeReport: l } = En(e);
2362
- return s(), (d, v) => (u(), h(se, {
2363
- title: d.$td("errors.report", "Error report"),
2337
+ const e = t, { activeReportIndex: r, details: n, nextReportText: a, previousReportText: u, activeReport: i } = Wn(e);
2338
+ return s(), (p, g) => (o(), f(re, {
2339
+ title: p.$td("errors.report", "Error report"),
2364
2340
  "title-hidden": "",
2365
2341
  "close-hidden": "",
2366
2342
  class: "p-0",
2367
2343
  "wrapper-class": "sm:w-auto sm:min-w-lg sm:max-w-[80vw]"
2368
2344
  }, {
2369
- default: f(() => [
2370
- y("div", Vn, [
2371
- y("h2", Ln, [
2372
- y("div", In, [
2373
- p(o(qe), { class: "size-5 text-red-600" }),
2374
- p(Hn, {
2345
+ default: m(() => [
2346
+ b("div", Kn, [
2347
+ b("h2", Qn, [
2348
+ b("div", Jn, [
2349
+ d(l(De), { class: "size-5 text-red-600" }),
2350
+ d(Nn, {
2375
2351
  class: "text-lg leading-6 font-semibold text-gray-900",
2376
- report: o(l),
2377
- "current-report": o(r) + 1,
2378
- "total-reports": d.reports.length
2352
+ report: l(i),
2353
+ "current-report": l(r) + 1,
2354
+ "total-reports": p.reports.length
2379
2355
  }, null, 8, ["report", "current-report", "total-reports"]),
2380
- d.reports.length > 1 ? (u(), b("span", qn, [
2381
- p(q, {
2356
+ p.reports.length > 1 ? (o(), y("span", Zn, [
2357
+ d(I, {
2382
2358
  size: "icon",
2383
2359
  variant: "ghost",
2384
- disabled: o(r) === 0,
2385
- "aria-label": o(i),
2386
- title: o(i),
2387
- onClick: v[0] || (v[0] = ($) => r.value--)
2360
+ disabled: l(r) === 0,
2361
+ "aria-label": l(u),
2362
+ title: l(u),
2363
+ onClick: g[0] || (g[0] = (w) => r.value--)
2388
2364
  }, {
2389
- default: f(() => [
2390
- p(o(pn), { class: "size-4" })
2365
+ default: m(() => [
2366
+ d(l(Mn), { class: "size-4" })
2391
2367
  ]),
2392
2368
  _: 1
2393
2369
  }, 8, ["disabled", "aria-label", "title"]),
2394
- p(q, {
2370
+ d(I, {
2395
2371
  size: "icon",
2396
2372
  variant: "ghost",
2397
- disabled: o(r) === d.reports.length - 1,
2398
- "aria-label": o(a),
2399
- title: o(a),
2400
- onClick: v[1] || (v[1] = ($) => r.value++)
2373
+ disabled: l(r) === p.reports.length - 1,
2374
+ "aria-label": l(a),
2375
+ title: l(a),
2376
+ onClick: g[1] || (g[1] = (w) => r.value++)
2401
2377
  }, {
2402
- default: f(() => [
2403
- p(o(_t), { class: "size-4" })
2378
+ default: m(() => [
2379
+ d(l(Lt), { class: "size-4" })
2404
2380
  ]),
2405
2381
  _: 1
2406
2382
  }, 8, ["disabled", "aria-label", "title"])
2407
- ])) : T("", !0)
2383
+ ])) : M("", !0)
2408
2384
  ]),
2409
- p(Mn, {
2410
- report: o(l),
2385
+ d(On, {
2386
+ report: l(i),
2411
2387
  class: "gap-0.5"
2412
2388
  }, null, 8, ["report"])
2413
2389
  ]),
2414
- o(l).description ? (u(), h(P, {
2390
+ l(i).description ? (o(), f(z, {
2415
2391
  key: 0,
2416
- text: o(l).description,
2392
+ text: l(i).description,
2417
2393
  class: "text-gray-600"
2418
- }, null, 8, ["text"])) : T("", !0)
2394
+ }, null, 8, ["text"])) : M("", !0)
2419
2395
  ]),
2420
- y("div", zn, [
2421
- y("pre", {
2396
+ b("div", Xn, [
2397
+ b("pre", {
2422
2398
  class: "p-4 text-xs text-red-800",
2423
- textContent: x(o(n))
2424
- }, null, 8, Rn)
2399
+ textContent: C(l(n))
2400
+ }, null, 8, Yn)
2425
2401
  ])
2426
2402
  ]),
2427
2403
  _: 1
2428
2404
  }, 8, ["title"]));
2429
2405
  }
2430
- }), An = {
2406
+ }), ea = {
2431
2407
  viewBox: "0 0 24 24",
2432
2408
  width: "1.2em",
2433
2409
  height: "1.2em"
2434
2410
  };
2435
- function Dn(t, s) {
2436
- return u(), b("svg", An, s[0] || (s[0] = [
2437
- y("path", {
2411
+ function ta(t, s) {
2412
+ return o(), y("svg", ea, s[0] || (s[0] = [
2413
+ b("path", {
2438
2414
  fill: "currentColor",
2439
2415
  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",
2440
2416
  opacity: ".25"
2441
2417
  }, null, -1),
2442
- y("path", {
2418
+ b("path", {
2443
2419
  fill: "currentColor",
2444
2420
  d: "M10.14,1.16a11,11,0,0,0-9,8.92A1.59,1.59,0,0,0,2.46,12,1.52,1.52,0,0,0,4.11,10.7a8,8,0,0,1,6.66-6.61A1.42,1.42,0,0,0,12,2.69h0A1.57,1.57,0,0,0,10.14,1.16Z"
2445
2421
  }, [
2446
- y("animateTransform", {
2422
+ b("animateTransform", {
2447
2423
  attributeName: "transform",
2448
2424
  dur: "0.75s",
2449
2425
  repeatCount: "indefinite",
@@ -2453,7 +2429,7 @@ function Dn(t, s) {
2453
2429
  ], -1)
2454
2430
  ]));
2455
2431
  }
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({
2432
+ const sa = V({ name: "svg-spinners-90-ring-with-bg", render: ta }), ra = { class: "mt-1 h-2 w-full overflow-hidden rounded-full bg-gray-200" }, na = { class: "sr-only" }, aa = /* @__PURE__ */ h({
2457
2433
  __name: "ProgressBar",
2458
2434
  props: {
2459
2435
  filledClass: {},
@@ -2462,31 +2438,31 @@ const jn = E({ name: "svg-spinners-90-ring-with-bg", render: Dn }), Bn = { class
2462
2438
  },
2463
2439
  setup(t) {
2464
2440
  let s;
2465
- const e = U(0), r = c(() => M("size-full transition-transform duration-500 rounded-r-full ease-linear bg-primary-600", t.filledClass)), n = c(() => typeof t.progress == "number" ? t.progress : e.value);
2466
- return Me(
2441
+ const e = N(0), r = c(() => E("size-full transition-transform duration-500 rounded-r-full ease-linear bg-primary-600", t.filledClass)), n = c(() => typeof t.progress == "number" ? t.progress : e.value);
2442
+ return Le(
2467
2443
  () => t.job,
2468
2444
  () => {
2469
2445
  s && s(), e.value = t.job ? t.job.progress : 0, s = t.job && t.job.listeners.add({ onUpdated: (a) => e.value = a });
2470
2446
  },
2471
2447
  { immediate: !0 }
2472
- ), ge(() => s && s()), (a, i) => (u(), b("div", Bn, [
2473
- y("div", {
2474
- class: k(r.value),
2475
- style: zt(`transform:translateX(-${(1 - n.value) * 100}%)`)
2448
+ ), we(() => s && s()), (a, u) => (o(), y("div", ra, [
2449
+ b("div", {
2450
+ class: x(r.value),
2451
+ style: Wt(`transform:translateX(-${(1 - n.value) * 100}%)`)
2476
2452
  }, null, 6),
2477
- y("span", Fn, x(a.$td("ui.progress", "{progress}% complete", {
2453
+ b("span", na, C(a.$td("ui.progress", "{progress}% complete", {
2478
2454
  progress: n.value * 100
2479
2455
  })), 1)
2480
2456
  ]));
2481
2457
  }
2482
2458
  });
2483
- function On(t) {
2459
+ function la(t) {
2484
2460
  const s = c(() => t.title ?? S("ui.loading", "Loading")), e = c(
2485
2461
  () => t.message ?? S("ui.loadingInProgress", "Loading in progress...")
2486
2462
  ), r = c(() => typeof t.progress == "number" || !!t.job), n = c(() => !t.title);
2487
2463
  return { renderedTitle: s, renderedMessage: e, titleHidden: n, showProgress: r };
2488
2464
  }
2489
- const Nn = /* @__PURE__ */ g({
2465
+ const oa = /* @__PURE__ */ h({
2490
2466
  __name: "LoadingModal",
2491
2467
  props: {
2492
2468
  title: {},
@@ -2495,30 +2471,30 @@ const Nn = /* @__PURE__ */ g({
2495
2471
  job: {}
2496
2472
  },
2497
2473
  setup(t, { expose: s }) {
2498
- const e = t, { renderedTitle: r, renderedMessage: n, titleHidden: a, showProgress: i } = On(e);
2499
- return s(), (l, d) => (u(), h(se, {
2474
+ const e = t, { renderedTitle: r, renderedMessage: n, titleHidden: a, showProgress: u } = la(e);
2475
+ return s(), (i, p) => (o(), f(re, {
2500
2476
  persistent: "",
2501
- class: k(["flex", { "flex-col-reverse": o(i), "items-center justify-center gap-2": !o(i) }]),
2477
+ class: x(["flex", { "flex-col-reverse": l(u), "items-center justify-center gap-2": !l(u) }]),
2502
2478
  "wrapper-class": "w-auto",
2503
- title: o(r),
2504
- "title-hidden": o(a)
2479
+ title: l(r),
2480
+ "title-hidden": l(a)
2505
2481
  }, {
2506
- default: f(() => [
2507
- o(i) ? (u(), h(Un, {
2482
+ default: m(() => [
2483
+ l(u) ? (o(), f(aa, {
2508
2484
  key: 0,
2509
- progress: l.progress,
2510
- job: l.job,
2485
+ progress: i.progress,
2486
+ job: i.job,
2511
2487
  class: "min-w-[min(400px,80vw)]"
2512
- }, null, 8, ["progress", "job"])) : (u(), h(o(jn), {
2488
+ }, null, 8, ["progress", "job"])) : (o(), f(l(sa), {
2513
2489
  key: 1,
2514
2490
  class: "text-primary-600 mr-1 size-6"
2515
2491
  })),
2516
- p(P, { text: o(n) }, null, 8, ["text"])
2492
+ d(z, { text: l(n) }, null, 8, ["text"])
2517
2493
  ]),
2518
2494
  _: 1
2519
2495
  }, 8, ["title", "title-hidden", "class"]));
2520
2496
  }
2521
- }), ze = /* @__PURE__ */ g({
2497
+ }), je = /* @__PURE__ */ h({
2522
2498
  __name: "HeadlessInput",
2523
2499
  props: {
2524
2500
  name: {},
@@ -2529,128 +2505,133 @@ const Nn = /* @__PURE__ */ g({
2529
2505
  },
2530
2506
  emits: ["update:modelValue"],
2531
2507
  setup(t, { expose: s, emit: e }) {
2532
- const r = e, n = X("form", null), a = c(() => !n || !t.name ? null : n.errors[t.name] ?? null), i = {
2533
- id: `input-${re()}`,
2508
+ const r = e, n = X("form", null), a = c(() => !n || !t.name ? null : n.errors[t.name] ?? null), u = {
2509
+ id: `input-${ie()}`,
2534
2510
  name: c(() => t.name),
2535
2511
  label: c(() => t.label),
2536
2512
  description: c(() => t.description),
2537
2513
  value: c(() => n && t.name ? n.getFieldValue(t.name) : t.modelValue),
2538
- errors: ve(a),
2514
+ errors: $e(a),
2539
2515
  required: c(() => {
2540
2516
  if (!(!t.name || !n))
2541
2517
  return n.getFieldRules(t.name).includes("required");
2542
2518
  }),
2543
- update(l) {
2519
+ update(i) {
2544
2520
  if (n && t.name) {
2545
- n.setFieldValue(t.name, l);
2521
+ n.setFieldValue(t.name, i);
2546
2522
  return;
2547
2523
  }
2548
- r("update:modelValue", l);
2524
+ r("update:modelValue", i);
2549
2525
  }
2550
2526
  };
2551
- return le("input", i), s(i), (l, d) => (u(), h(W(l.as), null, {
2552
- default: f(() => [
2553
- w(l.$slots, "default")
2527
+ return de("input", u), s(u), (i, p) => (o(), f(G(i.as), null, {
2528
+ default: m(() => [
2529
+ $(i.$slots, "default")
2554
2530
  ]),
2555
2531
  _: 3
2556
2532
  }));
2557
2533
  }
2558
- }), Wn = ["for"], fe = /* @__PURE__ */ g({
2534
+ }), ia = ["for"], be = /* @__PURE__ */ h({
2559
2535
  __name: "HeadlessInputLabel",
2560
2536
  setup(t) {
2561
- const s = V("input", "<HeadlessInputLabel> must be a child of a <HeadlessInput>"), e = He(), r = c(() => !!(s.label || e.default));
2562
- return (n, a) => r.value ? (u(), b("label", {
2537
+ const s = R("input", "<HeadlessInputLabel> must be a child of a <HeadlessInput>"), e = Ie(), r = c(() => !!(s.label || e.default));
2538
+ return (n, a) => r.value ? (o(), y("label", {
2563
2539
  key: 0,
2564
- for: o(s).id
2540
+ for: l(s).id
2565
2541
  }, [
2566
- w(n.$slots, "default", {}, () => [
2567
- I(x(o(s).label), 1)
2542
+ $(n.$slots, "default", {}, () => [
2543
+ L(C(l(s).label), 1)
2568
2544
  ])
2569
- ], 8, Wn)) : T("", !0);
2545
+ ], 8, ia)) : M("", !0);
2570
2546
  }
2571
- }), Kn = ["id", "name", "checked", "type", "required", "aria-invalid", "aria-describedby"], xt = /* @__PURE__ */ g({
2547
+ }), ua = ["id", "name", "checked", "type", "required", "aria-invalid", "aria-describedby"], It = /* @__PURE__ */ h({
2572
2548
  __name: "HeadlessInputInput",
2573
2549
  props: {
2574
2550
  type: {}
2575
2551
  },
2576
2552
  setup(t) {
2577
- const s = G("$inputRef"), e = V("input", "<HeadlessInputInput> must be a child of a <HeadlessInput>"), r = X("form", null), n = c(() => e.name ?? void 0), a = c(() => e.value), i = c(() => {
2553
+ const s = ee("$inputRef"), e = R("input", "<HeadlessInputInput> must be a child of a <HeadlessInput>"), r = X("form", null), n = c(() => e.name ?? void 0), a = c(() => e.value), u = c(() => {
2578
2554
  if (t.type)
2579
2555
  return t.type;
2580
- const $ = (n.value && (r == null ? void 0 : r.getFieldType(n.value))) ?? "";
2581
- return ["text", "email", "number", "tel", "url"].includes($) ? $ : "text";
2582
- }), l = c(() => {
2583
- if (t.type === "checkbox")
2556
+ const w = (n.value && (r == null ? void 0 : r.getFieldType(n.value))) ?? "";
2557
+ return ["text", "email", "number", "tel", "url"].includes(w) ? w : "text";
2558
+ }), i = c(() => {
2559
+ if (u.value === "checkbox")
2584
2560
  return !!a.value;
2585
2561
  });
2586
- function d() {
2587
- s.value && e.update(v());
2562
+ function p() {
2563
+ s.value && e.update(g());
2588
2564
  }
2589
- function v() {
2565
+ function g() {
2590
2566
  if (!s.value)
2591
2567
  return null;
2592
- switch (t.type) {
2568
+ switch (u.value) {
2593
2569
  case "checkbox":
2594
2570
  return s.value.checked;
2595
2571
  case "date":
2596
- return s.value.valueAsDate;
2572
+ case "time":
2573
+ case "datetime-local":
2574
+ return new Date(Math.round(s.value.valueAsNumber / 6e4) * 6e4 + Ze);
2575
+ case "number":
2576
+ return s.value.valueAsNumber;
2597
2577
  default:
2598
2578
  return s.value.value;
2599
2579
  }
2600
2580
  }
2601
- return st(e, () => {
2602
- var $;
2603
- return ($ = s.value) == null ? void 0 : $.focus();
2581
+ return mt(e, () => {
2582
+ var w;
2583
+ return (w = s.value) == null ? void 0 : w.focus();
2604
2584
  }), Y(() => {
2605
2585
  if (s.value) {
2606
- if (t.type === "date" && a.value instanceof Date) {
2607
- s.value.valueAsDate = a.value;
2586
+ if (["date", "time", "datetime-local"].includes(u.value) && a.value instanceof Date) {
2587
+ const w = Math.round(a.value.getTime() / 6e4) * 6e4;
2588
+ s.value.valueAsNumber = w - Ze, e.update(new Date(w));
2608
2589
  return;
2609
2590
  }
2610
2591
  s.value.value = a.value ?? null;
2611
2592
  }
2612
- }), ($, m) => (u(), b("input", {
2613
- id: o(e).id,
2593
+ }), (w, v) => (o(), y("input", {
2594
+ id: l(e).id,
2614
2595
  ref: "$inputRef",
2615
2596
  name: n.value,
2616
- checked: l.value,
2617
- type: i.value,
2618
- required: o(e).required ?? void 0,
2619
- "aria-invalid": o(e).errors ? "true" : "false",
2620
- "aria-describedby": o(e).errors ? `${o(e).id}-error` : o(e).description ? `${o(e).id}-description` : void 0,
2621
- onInput: d
2622
- }, null, 40, Kn));
2623
- }
2624
- }), Ct = /* @__PURE__ */ g({
2597
+ checked: i.value,
2598
+ type: u.value,
2599
+ required: l(e).required ?? void 0,
2600
+ "aria-invalid": l(e).errors ? "true" : "false",
2601
+ "aria-describedby": l(e).errors ? `${l(e).id}-error` : l(e).description ? `${l(e).id}-description` : void 0,
2602
+ onInput: p
2603
+ }, null, 40, ua));
2604
+ }
2605
+ }), zt = /* @__PURE__ */ h({
2625
2606
  inheritAttrs: !1,
2626
2607
  __name: "HeadlessInputDescription",
2627
2608
  setup(t) {
2628
- const s = V(
2609
+ const s = R(
2629
2610
  "input",
2630
2611
  "<HeadlessInputDescription> must be a child of a <HeadlessInput>"
2631
2612
  ), e = c(() => typeof s.description == "string" ? s.description : ""), r = c(() => !!s.description);
2632
- return (n, a) => w(n.$slots, "default", {
2633
- id: `${o(s).id}-description`
2613
+ return (n, a) => $(n.$slots, "default", {
2614
+ id: `${l(s).id}-description`
2634
2615
  }, () => [
2635
- r.value ? (u(), h(P, H({ key: 0 }, n.$attrs, {
2636
- id: `${o(s).id}-description`,
2616
+ r.value ? (o(), f(z, H({ key: 0 }, n.$attrs, {
2617
+ id: `${l(s).id}-description`,
2637
2618
  text: e.value
2638
- }), null, 16, ["id", "text"])) : T("", !0)
2619
+ }), null, 16, ["id", "text"])) : M("", !0)
2639
2620
  ]);
2640
2621
  }
2641
- }), Qn = ["id"], he = /* @__PURE__ */ g({
2622
+ }), ca = ["id"], ye = /* @__PURE__ */ h({
2642
2623
  __name: "HeadlessInputError",
2643
2624
  setup(t) {
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);
2645
- return (r, n) => e.value ? (u(), b("p", {
2625
+ const s = R("input", "<HeadlessInputError> must be a child of a <HeadlessInput>"), e = c(() => s.errors ? S(`errors.${s.errors[0]}`, `Error: ${s.errors[0]}`) : null);
2626
+ return (r, n) => e.value ? (o(), y("p", {
2646
2627
  key: 0,
2647
- id: `${o(s).id}-error`
2648
- }, x(e.value), 9, Qn)) : T("", !0);
2628
+ id: `${l(s).id}-error`
2629
+ }, C(e.value), 9, ca)) : M("", !0);
2649
2630
  }
2650
- }), Jn = {
2631
+ }), da = {
2651
2632
  key: 0,
2652
2633
  class: "pointer-events-none absolute inset-y-0 right-0 flex items-center pr-3"
2653
- }, Zn = /* @__PURE__ */ g({
2634
+ }, pa = /* @__PURE__ */ h({
2654
2635
  inheritAttrs: !1,
2655
2636
  __name: "Input",
2656
2637
  props: {
@@ -2663,61 +2644,61 @@ const Nn = /* @__PURE__ */ g({
2663
2644
  },
2664
2645
  emits: ["update:modelValue"],
2665
2646
  setup(t) {
2666
- const s = N(t, ["label", "inputClass", "wrapperClass"]), e = G("$inputRef"), [r, n] = Ie(), a = c(() => M("relative rounded-md shadow-2xs", { "mt-1": t.label }, t.wrapperClass)), i = c(() => {
2667
- var l, d, v;
2668
- return M(
2647
+ const s = K(t, ["label", "inputClass", "wrapperClass"]), e = ee("$inputRef"), [r, n] = Ae(), a = c(() => E("relative rounded-md shadow-2xs", { "mt-1": t.label }, t.wrapperClass)), u = c(() => {
2648
+ var i, p, g;
2649
+ return E(
2669
2650
  // eslint-disable-next-line vue/max-len
2670
2651
  "block w-full rounded-md border-0 py-1.5 ring-1 ring-inset focus:ring-2 focus:ring-inset sm:text-sm sm:leading-6",
2671
2652
  {
2672
- "focus:ring-primary-600": !((l = e.value) != null && l.errors),
2673
- "text-gray-900 shadow-2xs ring-gray-900/10 placeholder:text-gray-400": !((d = e.value) != null && d.errors),
2674
- "pr-10 text-red-900 ring-red-900/10 placeholder:text-red-300 focus:ring-red-500": (v = e.value) == null ? void 0 : v.errors
2653
+ "focus:ring-primary-600": !((i = e.value) != null && i.errors),
2654
+ "text-gray-900 shadow-2xs ring-gray-900/10 placeholder:text-gray-400": !((p = e.value) != null && p.errors),
2655
+ "pr-10 text-red-900 ring-red-900/10 placeholder:text-red-300 focus:ring-red-500": (g = e.value) == null ? void 0 : g.errors
2675
2656
  },
2676
2657
  t.inputClass
2677
2658
  );
2678
2659
  });
2679
- return (l, d) => (u(), h(ze, H({
2660
+ return (i, p) => (o(), f(je, H({
2680
2661
  ref: "$inputRef",
2681
- label: l.label,
2682
- class: o(n)
2662
+ label: i.label,
2663
+ class: l(n)
2683
2664
  }, s, {
2684
- "onUpdate:modelValue": d[0] || (d[0] = (v) => l.$emit("update:modelValue", v))
2665
+ "onUpdate:modelValue": p[0] || (p[0] = (g) => i.$emit("update:modelValue", g))
2685
2666
  }), {
2686
- default: f(() => {
2687
- var v;
2667
+ default: m(() => {
2668
+ var g;
2688
2669
  return [
2689
- p(fe, { class: "block text-sm leading-6 font-medium text-gray-900" }),
2690
- y("div", {
2691
- class: k(a.value)
2670
+ d(be, { class: "block text-sm leading-6 font-medium text-gray-900" }),
2671
+ b("div", {
2672
+ class: x(a.value)
2692
2673
  }, [
2693
- p(xt, H(o(r), { class: i.value }), null, 16, ["class"]),
2694
- (v = e.value) != null && v.errors ? (u(), b("div", Jn, [
2695
- p(o(qe), { class: "size-5 text-red-500" })
2696
- ])) : T("", !0)
2674
+ d(It, H(l(r), { class: u.value }), null, 16, ["class"]),
2675
+ (g = e.value) != null && g.errors ? (o(), y("div", da, [
2676
+ d(l(De), { class: "size-5 text-red-500" })
2677
+ ])) : M("", !0)
2697
2678
  ], 2),
2698
- p(Ct, { class: "mt-2 text-sm text-gray-600" }),
2699
- p(he, { class: "mt-2 text-sm text-red-600" })
2679
+ d(zt, { class: "mt-2 text-sm text-gray-600" }),
2680
+ d(ye, { class: "mt-2 text-sm text-red-600" })
2700
2681
  ];
2701
2682
  }),
2702
2683
  _: 1
2703
2684
  }, 16, ["label", "class"]));
2704
2685
  }
2705
2686
  });
2706
- function $l(t, s = {}) {
2687
+ function Dl(t, s = {}) {
2707
2688
  return {
2708
2689
  default: t,
2709
2690
  type: "boolean",
2710
2691
  rules: s.rules
2711
2692
  };
2712
2693
  }
2713
- function _l(t, s = {}) {
2694
+ function jl(t, s = {}) {
2714
2695
  return {
2715
2696
  default: t,
2716
2697
  type: "date",
2717
2698
  rules: s.rules
2718
2699
  };
2719
2700
  }
2720
- function xl(t, s, e = {}) {
2701
+ function Bl(t, s, e = {}) {
2721
2702
  return {
2722
2703
  default: s,
2723
2704
  type: "enum",
@@ -2725,21 +2706,21 @@ function xl(t, s, e = {}) {
2725
2706
  values: t
2726
2707
  };
2727
2708
  }
2728
- function Cl(t) {
2709
+ function Fl(t) {
2729
2710
  return {
2730
2711
  default: t,
2731
2712
  type: "boolean",
2732
2713
  rules: "required"
2733
2714
  };
2734
2715
  }
2735
- function kl(t) {
2716
+ function Ul(t) {
2736
2717
  return {
2737
2718
  default: t,
2738
2719
  type: "date",
2739
2720
  rules: "required"
2740
2721
  };
2741
2722
  }
2742
- function Sl(t, s) {
2723
+ function Ol(t, s) {
2743
2724
  return {
2744
2725
  default: s,
2745
2726
  type: "enum",
@@ -2747,55 +2728,55 @@ function Sl(t, s) {
2747
2728
  values: t
2748
2729
  };
2749
2730
  }
2750
- function Tl(t) {
2731
+ function Nl(t) {
2751
2732
  return {
2752
2733
  default: t,
2753
2734
  type: "number",
2754
2735
  rules: "required"
2755
2736
  };
2756
2737
  }
2757
- function Ml(t) {
2738
+ function Wl(t) {
2758
2739
  return {
2759
2740
  default: t,
2760
2741
  type: "object",
2761
2742
  rules: "required"
2762
2743
  };
2763
2744
  }
2764
- function Xn(t) {
2745
+ function ma(t) {
2765
2746
  return {
2766
2747
  default: t,
2767
2748
  type: "string",
2768
2749
  rules: "required"
2769
2750
  };
2770
2751
  }
2771
- function Hl(t, s = {}) {
2752
+ function Kl(t, s = {}) {
2772
2753
  return {
2773
2754
  default: t,
2774
2755
  type: "number",
2775
2756
  rules: s.rules
2776
2757
  };
2777
2758
  }
2778
- function El(t, s = {}) {
2759
+ function Ql(t, s = {}) {
2779
2760
  return {
2780
2761
  default: t,
2781
2762
  type: "object",
2782
2763
  rules: s.rules
2783
2764
  };
2784
2765
  }
2785
- function Vl(t, s = {}) {
2766
+ function Jl(t, s = {}) {
2786
2767
  return {
2787
2768
  default: t,
2788
2769
  type: "string",
2789
2770
  rules: s.rules
2790
2771
  };
2791
2772
  }
2792
- function Yn(t) {
2793
- const s = rt({
2794
- draft: Xn(t.defaultValue ?? "")
2773
+ function fa(t) {
2774
+ const s = ft({
2775
+ draft: ma(t.defaultValue ?? "")
2795
2776
  }), 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"));
2796
2777
  return { form: s, renderedTitle: e, renderedMessage: r, renderedAcceptText: n, renderedCancelText: a };
2797
2778
  }
2798
- const Gn = { class: "mt-4 flex flex-row-reverse gap-2" }, ea = /* @__PURE__ */ g({
2779
+ const ha = { class: "mt-4 flex flex-row-reverse gap-2" }, ga = /* @__PURE__ */ h({
2799
2780
  __name: "PromptModal",
2800
2781
  props: {
2801
2782
  title: {},
@@ -2808,44 +2789,45 @@ const Gn = { class: "mt-4 flex flex-row-reverse gap-2" }, ea = /* @__PURE__ */ g
2808
2789
  cancelText: {},
2809
2790
  cancelVariant: { default: "secondary" }
2810
2791
  },
2792
+ emits: ["close"],
2811
2793
  setup(t, { expose: s }) {
2812
- const e = N(t, ["cancelVariant"]), { form: r, renderedTitle: n, renderedMessage: a, renderedAcceptText: i, renderedCancelText: l } = Yn(e);
2813
- return s(), (d, v) => (u(), h(se, {
2814
- title: o(n),
2794
+ const e = K(t, ["cancelVariant"]), { form: r, renderedTitle: n, renderedMessage: a, renderedAcceptText: u, renderedCancelText: i } = fa(e);
2795
+ return s(), (p, g) => (o(), f(re, {
2796
+ title: l(n),
2815
2797
  persistent: ""
2816
2798
  }, {
2817
- default: f(({ close: $ }) => [
2818
- p($t, {
2819
- form: o(r),
2820
- onSubmit: (m) => $(o(r).draft)
2799
+ default: m(({ close: w }) => [
2800
+ d(Vt, {
2801
+ form: l(r),
2802
+ onSubmit: (v) => w(l(r).draft)
2821
2803
  }, {
2822
- default: f(() => [
2823
- o(a) ? (u(), h(P, {
2804
+ default: m(() => [
2805
+ l(a) ? (o(), f(z, {
2824
2806
  key: 0,
2825
- text: o(a)
2826
- }, null, 8, ["text"])) : T("", !0),
2827
- p(Zn, {
2807
+ text: l(a)
2808
+ }, null, 8, ["text"])) : M("", !0),
2809
+ d(pa, {
2828
2810
  name: "draft",
2829
2811
  class: "mt-2",
2830
- placeholder: d.placeholder,
2831
- label: d.label
2812
+ placeholder: p.placeholder,
2813
+ label: p.label
2832
2814
  }, null, 8, ["placeholder", "label"]),
2833
- y("div", Gn, [
2834
- p(q, {
2835
- variant: d.acceptVariant,
2815
+ b("div", ha, [
2816
+ d(I, {
2817
+ variant: p.acceptVariant,
2836
2818
  submit: ""
2837
2819
  }, {
2838
- default: f(() => [
2839
- I(x(o(i)), 1)
2820
+ default: m(() => [
2821
+ L(C(l(u)), 1)
2840
2822
  ]),
2841
2823
  _: 1
2842
2824
  }, 8, ["variant"]),
2843
- p(q, {
2844
- variant: d.cancelVariant,
2845
- onClick: (m) => $()
2825
+ d(I, {
2826
+ variant: p.cancelVariant,
2827
+ onClick: (v) => w()
2846
2828
  }, {
2847
- default: f(() => [
2848
- I(x(o(l)), 1)
2829
+ default: m(() => [
2830
+ L(C(l(i)), 1)
2849
2831
  ]),
2850
2832
  _: 2
2851
2833
  }, 1032, ["variant", "onClick"])
@@ -2857,63 +2839,63 @@ const Gn = { class: "mt-4 flex flex-row-reverse gap-2" }, ea = /* @__PURE__ */ g
2857
2839
  _: 1
2858
2840
  }, 8, ["title"]));
2859
2841
  }
2860
- }), ta = {
2842
+ }), va = {
2861
2843
  viewBox: "0 0 24 24",
2862
2844
  width: "1.2em",
2863
2845
  height: "1.2em"
2864
2846
  };
2865
- function sa(t, s) {
2866
- return u(), b("svg", ta, s[0] || (s[0] = [
2867
- y("path", {
2847
+ function ba(t, s) {
2848
+ return o(), y("svg", va, s[0] || (s[0] = [
2849
+ b("path", {
2868
2850
  fill: "currentColor",
2869
2851
  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"
2870
2852
  }, null, -1)
2871
2853
  ]));
2872
2854
  }
2873
- const ra = E({ name: "material-symbols-bug-report", render: sa }), na = {
2855
+ const ya = V({ name: "material-symbols-bug-report", render: ba }), wa = {
2874
2856
  viewBox: "0 0 24 24",
2875
2857
  width: "1.2em",
2876
2858
  height: "1.2em"
2877
2859
  };
2878
- function aa(t, s) {
2879
- return u(), b("svg", na, s[0] || (s[0] = [
2880
- y("path", {
2860
+ function $a(t, s) {
2861
+ return o(), y("svg", wa, s[0] || (s[0] = [
2862
+ b("path", {
2881
2863
  fill: "currentColor",
2882
2864
  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"
2883
2865
  }, null, -1)
2884
2866
  ]));
2885
2867
  }
2886
- const la = E({ name: "material-symbols-delete-forever-rounded", render: aa }), oa = {
2868
+ const _a = V({ name: "material-symbols-delete-forever-rounded", render: $a }), Ca = {
2887
2869
  viewBox: "0 0 24 24",
2888
2870
  width: "1.2em",
2889
2871
  height: "1.2em"
2890
2872
  };
2891
- function ia(t, s) {
2892
- return u(), b("svg", oa, s[0] || (s[0] = [
2893
- y("path", {
2873
+ function xa(t, s) {
2874
+ return o(), y("svg", Ca, s[0] || (s[0] = [
2875
+ b("path", {
2894
2876
  fill: "currentColor",
2895
2877
  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"
2896
2878
  }, null, -1)
2897
2879
  ]));
2898
2880
  }
2899
- const ua = E({ name: "material-symbols-frame-inspect", render: ia }), ca = {
2881
+ const Sa = V({ name: "material-symbols-frame-inspect", render: xa }), ka = {
2900
2882
  viewBox: "0 0 24 24",
2901
2883
  width: "1.2em",
2902
2884
  height: "1.2em"
2903
2885
  };
2904
- function da(t, s) {
2905
- return u(), b("svg", ca, s[0] || (s[0] = [
2906
- y("path", {
2886
+ function Ta(t, s) {
2887
+ return o(), y("svg", ka, s[0] || (s[0] = [
2888
+ b("path", {
2907
2889
  fill: "currentColor",
2908
2890
  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"
2909
2891
  }, null, -1)
2910
2892
  ]));
2911
2893
  }
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({
2894
+ const Ma = V({ name: "material-symbols-refresh-rounded", render: Ta }), Ea = { class: "grid grow place-items-center" }, Ha = { class: "flex flex-col items-center p-8" }, Va = { class: "mt-0 mb-0 text-center text-4xl font-medium text-red-600" }, La = { 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" }, Ia = /* @__PURE__ */ h({
2913
2895
  __name: "StartupCrash",
2914
2896
  setup(t) {
2915
2897
  async function s() {
2916
- await z.confirm(
2898
+ await P.confirm(
2917
2899
  S("startupCrash.purgeConfirmTitle", "Delete everything?"),
2918
2900
  S(
2919
2901
  "startupCrash.purgeConfirmMessage",
@@ -2925,59 +2907,59 @@ Do you still want to proceed?`
2925
2907
  acceptVariant: "danger",
2926
2908
  acceptText: S("startupCrash.purgeConfirmAccept", "Purge device")
2927
2909
  }
2928
- ) && (await at.purge(), await A.reload());
2910
+ ) && (await gt.purge(), await A.reload());
2929
2911
  }
2930
2912
  return (e, r) => {
2931
- const n = Rt("i-majesticons-exclamation");
2932
- return u(), b("div", ma, [
2933
- y("div", fa, [
2934
- p(n, { class: "size-20 text-red-600" }),
2935
- y("h1", ha, x(e.$td("startupCrash.title", "Oops, something went wrong!")), 1),
2936
- p(P, {
2913
+ const n = Kt("i-majesticons-exclamation");
2914
+ return o(), y("div", Ea, [
2915
+ b("div", Ha, [
2916
+ d(n, { class: "size-20 text-red-600" }),
2917
+ b("h1", Va, C(e.$td("startupCrash.title", "Oops, something went wrong!")), 1),
2918
+ d(z, {
2937
2919
  text: e.$td(
2938
2920
  "startupCrash.message",
2939
2921
  "There was a problem starting the application, but here's some things you can do:"
2940
2922
  ),
2941
2923
  class: "mt-4 text-center"
2942
2924
  }, null, 8, ["text"]),
2943
- y("div", ga, [
2944
- p(q, {
2925
+ b("div", La, [
2926
+ d(I, {
2945
2927
  variant: "danger",
2946
2928
  onClick: r[0] || (r[0] = (a) => e.$app.reload())
2947
2929
  }, {
2948
- default: f(() => [
2949
- p(o(pa)),
2950
- I(" " + x(e.$td("startupCrash.reload", "Try again")), 1)
2930
+ default: m(() => [
2931
+ d(l(Ma)),
2932
+ L(" " + C(e.$td("startupCrash.reload", "Try again")), 1)
2951
2933
  ]),
2952
2934
  _: 1
2953
2935
  }),
2954
- p(q, {
2936
+ d(I, {
2955
2937
  variant: "danger",
2956
2938
  onClick: r[1] || (r[1] = (a) => e.$errors.inspect(e.$errors.startupErrors))
2957
2939
  }, {
2958
- default: f(() => [
2959
- p(o(ra)),
2960
- I(" " + x(e.$td("startupCrash.inspect", "View error details")), 1)
2940
+ default: m(() => [
2941
+ d(l(ya)),
2942
+ L(" " + C(e.$td("startupCrash.inspect", "View error details")), 1)
2961
2943
  ]),
2962
2944
  _: 1
2963
2945
  }),
2964
- p(q, {
2946
+ d(I, {
2965
2947
  variant: "danger",
2966
2948
  onClick: r[2] || (r[2] = (a) => s())
2967
2949
  }, {
2968
- default: f(() => [
2969
- p(o(la)),
2970
- I(" " + x(e.$td("startupCrash.purge", "Purge device")), 1)
2950
+ default: m(() => [
2951
+ d(l(_a)),
2952
+ L(" " + C(e.$td("startupCrash.purge", "Purge device")), 1)
2971
2953
  ]),
2972
2954
  _: 1
2973
2955
  }),
2974
- p(q, {
2956
+ d(I, {
2975
2957
  variant: "danger",
2976
2958
  onClick: r[3] || (r[3] = (a) => e.$errors.debug = !e.$errors.debug)
2977
2959
  }, {
2978
- default: f(() => [
2979
- p(o(ua)),
2980
- I(" " + x(e.$td("startupCrash.debug", "Toggle debugging")), 1)
2960
+ default: m(() => [
2961
+ d(l(Sa)),
2962
+ L(" " + C(e.$td("startupCrash.debug", "Toggle debugging")), 1)
2981
2963
  ]),
2982
2964
  _: 1
2983
2965
  })
@@ -2986,23 +2968,23 @@ Do you still want to proceed?`
2986
2968
  ]);
2987
2969
  };
2988
2970
  }
2989
- }), kt = /* @__PURE__ */ g({
2971
+ }), Rt = /* @__PURE__ */ h({
2990
2972
  __name: "HeadlessToastAction",
2991
2973
  props: {
2992
2974
  action: {}
2993
2975
  },
2994
2976
  setup(t) {
2995
- return (s, e) => (u(), h(W(s.action.dismiss ? o(Ss) : "button"), {
2977
+ return (s, e) => (o(), f(G(s.action.dismiss ? l(js) : "button"), {
2996
2978
  type: "button",
2997
2979
  onClick: s.action.click
2998
2980
  }, {
2999
- default: f(() => [
3000
- I(x(s.action.label), 1)
2981
+ default: m(() => [
2982
+ L(C(s.action.label), 1)
3001
2983
  ]),
3002
2984
  _: 1
3003
2985
  }, 8, ["onClick"]));
3004
2986
  }
3005
- }), ba = { key: 0 }, ya = /* @__PURE__ */ g({
2987
+ }), za = { key: 0 }, Ra = /* @__PURE__ */ h({
3006
2988
  __name: "HeadlessToast",
3007
2989
  props: {
3008
2990
  message: {},
@@ -3010,11 +2992,11 @@ Do you still want to proceed?`
3010
2992
  variant: {}
3011
2993
  },
3012
2994
  setup(t) {
3013
- return (s, e) => (u(), h(o(Ts), null, {
3014
- default: f(() => [
3015
- w(s.$slots, "default", {}, () => [
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, {
2995
+ return (s, e) => (o(), f(l(Bs), null, {
2996
+ default: m(() => [
2997
+ $(s.$slots, "default", {}, () => [
2998
+ s.message ? (o(), y("span", za, C(s.message), 1)) : M("", !0),
2999
+ (o(!0), y(D, null, U(s.actions, (r, n) => (o(), f(Rt, {
3018
3000
  key: n,
3019
3001
  action: r
3020
3002
  }, null, 8, ["action"]))), 128))
@@ -3023,7 +3005,7 @@ Do you still want to proceed?`
3023
3005
  _: 3
3024
3006
  }));
3025
3007
  }
3026
- }), wa = /* @__PURE__ */ g({
3008
+ }), qa = /* @__PURE__ */ h({
3027
3009
  __name: "Toast",
3028
3010
  props: {
3029
3011
  message: {},
@@ -3032,14 +3014,15 @@ Do you still want to proceed?`
3032
3014
  class: {}
3033
3015
  },
3034
3016
  setup(t, { expose: s }) {
3035
- const e = c(() => et(
3017
+ const e = c(() => pt(
3036
3018
  { baseClasses: t.class, variant: t.variant },
3037
3019
  {
3038
3020
  baseClasses: "flex items-center gap-2 rounded-md p-2 ring-1 shadow-lg border-gray-200",
3039
3021
  variants: {
3040
3022
  variant: {
3041
3023
  secondary: "bg-gray-900 text-white ring-black",
3042
- danger: "bg-red-50 text-red-900 ring-red-100"
3024
+ danger: "bg-red-50 text-red-900 ring-red-100",
3025
+ warning: "bg-yellow-50 text-yellow-900 ring-yellow-100"
3043
3026
  }
3044
3027
  },
3045
3028
  defaultVariants: {
@@ -3047,134 +3030,137 @@ Do you still want to proceed?`
3047
3030
  }
3048
3031
  }
3049
3032
  ));
3050
- return s(), (r, n) => (u(), h(ya, {
3051
- class: k(e.value)
3033
+ return s(), (r, n) => (o(), f(Ra, {
3034
+ class: x(e.value)
3052
3035
  }, {
3053
- default: f(() => [
3054
- r.message ? (u(), h(P, {
3036
+ default: m(() => [
3037
+ r.message ? (o(), f(z, {
3055
3038
  key: 0,
3056
3039
  text: r.message,
3057
3040
  inline: ""
3058
- }, null, 8, ["text"])) : T("", !0),
3059
- (u(!0), b(D, null, F(r.actions, (a, i) => (u(), h(q, {
3060
- key: i,
3041
+ }, null, 8, ["text"])) : M("", !0),
3042
+ (o(!0), y(D, null, U(r.actions, (a, u) => (o(), f(I, {
3043
+ key: u,
3061
3044
  action: a,
3062
3045
  variant: r.variant,
3063
- as: kt
3046
+ as: Rt
3064
3047
  }, null, 8, ["action", "variant"]))), 128))
3065
3048
  ]),
3066
3049
  _: 1
3067
3050
  }, 8, ["class"]));
3068
3051
  }
3069
- }), $a = { $ui: z }, _a = {
3052
+ }), Aa = { $ui: P }, Pa = {
3070
3053
  async install(t, s) {
3071
3054
  const e = {
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,
3055
+ "alert-modal": bn,
3056
+ "confirm-modal": Sn,
3057
+ "error-report-modal": Gn,
3058
+ "loading-modal": oa,
3059
+ "prompt-modal": ga,
3060
+ "startup-crash": Ia,
3061
+ toast: qa,
3079
3062
  ...s.components
3080
3063
  };
3081
3064
  for (const [r, n] of Object.entries(e))
3082
- z.registerComponent(r, n);
3083
- await $e(t, $a);
3065
+ P.registerComponent(r, n);
3066
+ await Se(t, Aa);
3084
3067
  }
3085
3068
  };
3086
- async function xa(t, s = {}) {
3069
+ async function Da(t, s = {}) {
3087
3070
  var r;
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");
3071
+ const e = [nn, $r, rn, Ur, Sr, Pa, ...s.plugins ?? []];
3072
+ A.instance = t, await sr(e, t, s), await ((r = s.install) == null ? void 0 : r.call(s, t)), await F.emit("application-ready");
3090
3073
  }
3091
- async function Ll(t, s = {}) {
3074
+ async function Zl(t, s = {}) {
3092
3075
  var r;
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");
3076
+ const e = Qt(t);
3077
+ J() && (window.$aerogel = e), await Da(e, s), e.mount("#app"), (r = e._container) == null || r.classList.remove("loading"), await F.emit("application-mounted");
3095
3078
  }
3096
- const Ca = { key: 0 }, ka = /* @__PURE__ */ g({
3097
- __name: "AppModals",
3098
- setup(t) {
3099
- const s = c(() => z.modals[0] ?? null);
3100
- return (e, r) => s.value ? (u(), b("aside", Ca, [
3101
- p(wt, {
3102
- "child-index": 1,
3103
- modal: s.value
3104
- }, null, 8, ["modal"])
3105
- ])) : T("", !0);
3106
- }
3107
- }), Sa = /* @__PURE__ */ g({
3079
+ const ja = /* @__PURE__ */ h({
3108
3080
  __name: "AppToasts",
3109
3081
  setup(t) {
3110
- return (s, e) => (u(), h(o(Ms), null, {
3111
- default: f(() => [
3112
- (u(!0), b(D, null, F(s.$ui.toasts, (r) => (u(), h(W(r.component), H({
3082
+ return (s, e) => (o(), f(l(Fs), null, {
3083
+ default: m(() => [
3084
+ (o(!0), y(D, null, U(s.$ui.toasts, (r) => (o(), f(G(r.component), H({
3113
3085
  id: r.id,
3114
- key: r.id,
3115
- ref_for: !0
3116
- }, r.properties), null, 16, ["id"]))), 128)),
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" })
3086
+ key: r.id
3087
+ }, { ref_for: !0 }, r.properties), null, 16, ["id"]))), 128)),
3088
+ d(l(Us), { class: "fixed right-0 bottom-0 z-50 flex flex-col items-end space-y-4 px-4 py-6 sm:p-6" })
3118
3089
  ]),
3119
3090
  _: 1
3120
3091
  }));
3121
3092
  }
3122
- }), Ta = /* @__PURE__ */ g({
3093
+ }), Ba = /* @__PURE__ */ h({
3123
3094
  __name: "AppOverlays",
3124
3095
  setup(t) {
3125
- return (s, e) => (u(), b(D, null, [
3126
- p(ka),
3127
- p(Sa)
3096
+ return (s, e) => (o(), y(D, null, [
3097
+ d(l(bs), { nested: "" }),
3098
+ d(ja)
3128
3099
  ], 64));
3129
3100
  }
3130
- }), Ma = { class: "flex min-h-full flex-col text-base leading-tight font-normal text-gray-900 antialiased" }, Il = /* @__PURE__ */ g({
3101
+ }), Fa = { class: "flex min-h-full flex-col text-base leading-tight font-normal text-gray-900 antialiased" }, Xl = /* @__PURE__ */ h({
3131
3102
  __name: "AppLayout",
3132
3103
  setup(t) {
3133
- return (s, e) => (u(), b("div", Ma, [
3134
- s.$errors.hasStartupErrors ? w(s.$slots, "startup-crash", { key: 0 }, () => [
3135
- (u(), h(W(s.$ui.requireComponent("startup-crash"))))
3136
- ]) : w(s.$slots, "default", { key: 1 }),
3137
- p(Ta)
3104
+ return (s, e) => (o(), y("div", Fa, [
3105
+ s.$errors.hasStartupErrors ? $(s.$slots, "startup-crash", { key: 0 }, () => [
3106
+ (o(), f(G(s.$ui.requireComponent("startup-crash"))))
3107
+ ]) : $(s.$slots, "default", { key: 1 }),
3108
+ d(Ba)
3138
3109
  ]));
3139
3110
  }
3140
- }), Ha = ["id", "name", "value", "required", "aria-invalid", "aria-describedby"], Ea = /* @__PURE__ */ g({
3111
+ }), Ua = ["id", "name", "value", "required", "aria-invalid", "aria-describedby"], Oa = /* @__PURE__ */ h({
3141
3112
  __name: "HeadlessInputTextArea",
3142
3113
  setup(t) {
3143
- const s = G("$textAreaRef"), e = V(
3114
+ const s = ee("$textAreaRef"), e = R(
3144
3115
  "input",
3145
3116
  "<HeadlessInputTextArea> must be a child of a <HeadlessInput>"
3146
3117
  ), r = c(() => e.name ?? void 0), n = c(() => e.value);
3147
3118
  function a() {
3148
3119
  s.value && e.update(s.value.value);
3149
3120
  }
3150
- return st(e, () => {
3151
- var i;
3152
- return (i = s.value) == null ? void 0 : i.focus();
3153
- }), (i, l) => (u(), b("textarea", {
3154
- id: o(e).id,
3121
+ return mt(e, () => {
3122
+ var u;
3123
+ return (u = s.value) == null ? void 0 : u.focus();
3124
+ }), (u, i) => (o(), y("textarea", {
3125
+ id: l(e).id,
3155
3126
  ref: "$textAreaRef",
3156
3127
  name: r.value,
3157
3128
  value: n.value,
3158
- required: o(e).required ?? void 0,
3159
- "aria-invalid": o(e).errors ? "true" : "false",
3160
- "aria-describedby": o(e).errors ? `${o(e).id}-error` : o(e).description ? `${o(e).id}-description` : void 0,
3129
+ required: l(e).required ?? void 0,
3130
+ "aria-invalid": l(e).errors ? "true" : "false",
3131
+ "aria-describedby": l(e).errors ? `${l(e).id}-error` : l(e).description ? `${l(e).id}-description` : void 0,
3161
3132
  onInput: a
3162
- }, null, 40, Ha));
3133
+ }, null, 40, Ua));
3163
3134
  }
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({
3165
- __name: "AdvancedOptions",
3135
+ }), Na = { class: "group" }, Wa = { 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" }, Ka = { class: "pt-2 pl-4" }, Qa = /* @__PURE__ */ h({
3136
+ __name: "Details",
3137
+ props: {
3138
+ label: {}
3139
+ },
3166
3140
  setup(t) {
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" }),
3170
- y("span", null, x(s.$td("ui.advancedOptions", "Advanced options")), 1)
3141
+ return (s, e) => (o(), y("details", Na, [
3142
+ b("summary", Wa, [
3143
+ d(l(Lt), { class: "size-6 transition-transform group-open:rotate-90" }),
3144
+ b("span", null, C(s.label), 1)
3171
3145
  ]),
3172
- y("div", Ia, [
3173
- w(s.$slots, "default")
3146
+ b("div", Ka, [
3147
+ $(s.$slots, "default")
3174
3148
  ])
3175
3149
  ]));
3176
3150
  }
3177
- }), qa = { class: "flex h-6 items-center" }, zl = /* @__PURE__ */ g({
3151
+ }), Yl = /* @__PURE__ */ h({
3152
+ __name: "AdvancedOptions",
3153
+ setup(t) {
3154
+ return (s, e) => (o(), f(Qa, {
3155
+ label: s.$td("ui.advancedOptions", "Advanced options")
3156
+ }, {
3157
+ default: m(() => [
3158
+ $(s.$slots, "default")
3159
+ ]),
3160
+ _: 3
3161
+ }, 8, ["label"]));
3162
+ }
3163
+ }), Ja = { class: "flex h-6 items-center" }, Gl = /* @__PURE__ */ h({
3178
3164
  inheritAttrs: !1,
3179
3165
  __name: "Checkbox",
3180
3166
  props: {
@@ -3187,53 +3173,53 @@ const Ca = { key: 0 }, ka = /* @__PURE__ */ g({
3187
3173
  },
3188
3174
  emits: ["update:modelValue"],
3189
3175
  setup(t) {
3190
- const s = N(t, ["inputClass", "labelClass"]), e = G("$inputRef"), [r, n] = Ie(), a = c(() => M("relative flex items-start", n.value)), i = c(() => {
3191
- var d, v;
3192
- return M(
3176
+ const s = K(t, ["inputClass", "labelClass"]), e = ee("$inputRef"), [r, n] = Ae(), a = c(() => E("relative flex items-start", n.value)), u = c(() => {
3177
+ var p, g;
3178
+ return E(
3193
3179
  "size-4 rounded text-primary-600 not-checked:hover:bg-gray-200 checked:hover:text-primary-500 checked:border-0",
3194
3180
  {
3195
- "border-gray-300 focus:ring-primary-600": !((d = e.value) != null && d.errors),
3196
- "border-red-400 border-2 focus:ring-red-600": (v = e.value) == null ? void 0 : v.errors
3181
+ "border-gray-300 focus:ring-primary-600": !((p = e.value) != null && p.errors),
3182
+ "border-red-400 border-2 focus:ring-red-600": (g = e.value) == null ? void 0 : g.errors
3197
3183
  },
3198
3184
  t.inputClass
3199
3185
  );
3200
- }), l = c(() => M("ml-2 text-sm leading-6", t.labelClass));
3201
- return (d, v) => (u(), h(ze, H({
3186
+ }), i = c(() => E("ml-2 text-sm leading-6", t.labelClass));
3187
+ return (p, g) => (o(), f(je, H({
3202
3188
  ref: "$inputRef",
3203
3189
  class: a.value
3204
3190
  }, s, {
3205
- "onUpdate:modelValue": v[0] || (v[0] = ($) => d.$emit("update:modelValue", $))
3191
+ "onUpdate:modelValue": g[0] || (g[0] = (w) => p.$emit("update:modelValue", w))
3206
3192
  }), {
3207
- default: f(() => [
3208
- y("div", qa, [
3209
- p(xt, H(o(r), {
3193
+ default: m(() => [
3194
+ b("div", Ja, [
3195
+ d(It, H(l(r), {
3210
3196
  type: "checkbox",
3211
- class: i.value
3197
+ class: u.value
3212
3198
  }), null, 16, ["class"])
3213
3199
  ]),
3214
- d.$slots.default ? (u(), b("div", {
3200
+ p.$slots.default ? (o(), y("div", {
3215
3201
  key: 0,
3216
- class: k(l.value)
3202
+ class: x(i.value)
3217
3203
  }, [
3218
- p(fe, { class: "text-gray-900" }, {
3219
- default: f(() => [
3220
- w(d.$slots, "default")
3204
+ d(be, { class: "text-gray-900" }, {
3205
+ default: m(() => [
3206
+ $(p.$slots, "default")
3221
3207
  ]),
3222
3208
  _: 3
3223
3209
  }),
3224
- p(he, { class: "text-red-600" })
3225
- ], 2)) : d.label ? (u(), b("div", {
3210
+ d(ye, { class: "text-red-600" })
3211
+ ], 2)) : p.label ? (o(), y("div", {
3226
3212
  key: 1,
3227
- class: k(l.value)
3213
+ class: x(i.value)
3228
3214
  }, [
3229
- p(fe, { class: "text-gray-900" }),
3230
- p(he, { class: "text-red-600" })
3231
- ], 2)) : T("", !0)
3215
+ d(be, { class: "text-gray-900" }),
3216
+ d(ye, { class: "text-red-600" })
3217
+ ], 2)) : M("", !0)
3232
3218
  ]),
3233
3219
  _: 3
3234
3220
  }, 16, ["class"]));
3235
3221
  }
3236
- }), za = /* @__PURE__ */ g({
3222
+ }), Za = /* @__PURE__ */ h({
3237
3223
  __name: "DropdownMenuOption",
3238
3224
  props: {
3239
3225
  class: {},
@@ -3242,40 +3228,40 @@ const Ca = { key: 0 }, ka = /* @__PURE__ */ g({
3242
3228
  },
3243
3229
  emits: ["select"],
3244
3230
  setup(t) {
3245
- const s = N(t, ["class"]), e = c(() => M(
3231
+ const s = K(t, ["class"]), e = c(() => E(
3246
3232
  "flex w-full items-center gap-2 rounded-lg px-2 py-2 text-sm text-gray-900 data-[highlighted]:bg-gray-100",
3247
3233
  t.class
3248
3234
  ));
3249
- return (r, n) => (u(), h(o(Es), H({ class: e.value }, s, {
3235
+ return (r, n) => (o(), f(l(Os), H({ class: e.value }, s, {
3250
3236
  onSelect: n[0] || (n[0] = (a) => r.$emit("select"))
3251
3237
  }), {
3252
- default: f(() => [
3253
- w(r.$slots, "default")
3238
+ default: m(() => [
3239
+ $(r.$slots, "default")
3254
3240
  ]),
3255
3241
  _: 3
3256
3242
  }, 16, ["class"]));
3257
3243
  }
3258
- }), Ra = /* @__PURE__ */ g({
3244
+ }), Xa = /* @__PURE__ */ h({
3259
3245
  __name: "DropdownMenuOptions",
3260
3246
  setup(t) {
3261
- const s = V(
3247
+ const s = R(
3262
3248
  "dropdown-menu",
3263
3249
  "<DropdownMenuOptions> must be a child of a <DropdownMenu>"
3264
3250
  );
3265
- return (e, r) => (u(), h(o(Vs), {
3251
+ return (e, r) => (o(), f(l(Ns), {
3266
3252
  class: "gap-y-0.5 rounded-lg bg-white p-1.5 shadow-lg ring-1 ring-black/5",
3267
- align: o(s).align,
3268
- side: o(s).side
3253
+ align: l(s).align,
3254
+ side: l(s).side
3269
3255
  }, {
3270
- default: f(() => [
3271
- w(e.$slots, "default", {}, () => [
3272
- (u(!0), b(D, null, F(o(s).options, (n, a) => (u(), h(za, H(
3256
+ default: m(() => [
3257
+ $(e.$slots, "default", {}, () => [
3258
+ (o(!0), y(D, null, U(l(s).options, (n, a) => (o(), f(Za, H(
3273
3259
  {
3274
3260
  key: a,
3275
- as: n.route || n.href ? ct : void 0,
3276
- class: n.class,
3277
- ref_for: !0
3261
+ as: n.route || n.href ? $t : void 0,
3262
+ class: n.class
3278
3263
  },
3264
+ { ref_for: !0 },
3279
3265
  n.route || n.href ? {
3280
3266
  href: n.href,
3281
3267
  route: n.route,
@@ -3283,14 +3269,14 @@ const Ca = { key: 0 }, ka = /* @__PURE__ */ g({
3283
3269
  routeQuery: n.routeQuery
3284
3270
  } : {},
3285
3271
  {
3286
- onSelect: (i) => {
3287
- var l;
3288
- return (l = n.click) == null ? void 0 : l.call(n);
3272
+ onSelect: (u) => {
3273
+ var i;
3274
+ return (i = n.click) == null ? void 0 : i.call(n);
3289
3275
  }
3290
3276
  }
3291
3277
  ), {
3292
- default: f(() => [
3293
- I(x(n.label), 1)
3278
+ default: m(() => [
3279
+ L(C(n.label), 1)
3294
3280
  ]),
3295
3281
  _: 2
3296
3282
  }, 1040, ["as", "class", "onSelect"]))), 128))
@@ -3299,7 +3285,7 @@ const Ca = { key: 0 }, ka = /* @__PURE__ */ g({
3299
3285
  _: 3
3300
3286
  }, 8, ["align", "side"]));
3301
3287
  }
3302
- }), Rl = /* @__PURE__ */ g({
3288
+ }), eo = /* @__PURE__ */ h({
3303
3289
  __name: "DropdownMenu",
3304
3290
  props: {
3305
3291
  align: {},
@@ -3315,18 +3301,18 @@ const Ca = { key: 0 }, ka = /* @__PURE__ */ g({
3315
3301
  return (r = t.options) == null ? void 0 : r.filter(Boolean);
3316
3302
  })
3317
3303
  };
3318
- return le("dropdown-menu", e), s(e), (r, n) => (u(), h(o(Ls), null, {
3319
- default: f(() => [
3320
- p(o(Is), null, {
3321
- default: f(() => [
3322
- w(r.$slots, "default")
3304
+ return de("dropdown-menu", e), s(e), (r, n) => (o(), f(l(Ws), null, {
3305
+ default: m(() => [
3306
+ d(l(Ks), null, {
3307
+ default: m(() => [
3308
+ $(r.$slots, "default")
3323
3309
  ]),
3324
3310
  _: 3
3325
3311
  }),
3326
- p(o(qs), null, {
3327
- default: f(() => [
3328
- w(r.$slots, "options", {}, () => [
3329
- p(Ra)
3312
+ d(l(Qs), null, {
3313
+ default: m(() => [
3314
+ $(r.$slots, "options", {}, () => [
3315
+ d(Xa)
3330
3316
  ])
3331
3317
  ]),
3332
3318
  _: 3
@@ -3335,7 +3321,7 @@ const Ca = { key: 0 }, ka = /* @__PURE__ */ g({
3335
3321
  _: 3
3336
3322
  }));
3337
3323
  }
3338
- }), Pa = ["aria-hidden"], Aa = ["tabindex", "aria-label", "type"], Pl = /* @__PURE__ */ g({
3324
+ }), Ya = ["aria-hidden"], Ga = ["tabindex", "aria-label", "type"], to = /* @__PURE__ */ h({
3339
3325
  __name: "EditableContent",
3340
3326
  props: {
3341
3327
  type: { default: "text" },
@@ -3348,106 +3334,106 @@ const Ca = { key: 0 }, ka = /* @__PURE__ */ g({
3348
3334
  },
3349
3335
  emits: ["update", "save"],
3350
3336
  setup(t, { emit: s }) {
3351
- const e = s, r = G("$inputRef"), n = U(null), a = U(t.text), i = c(() => M("inline whitespace-pre", t.contentClass)), l = c(() => M("invisible whitespace-pre", t.contentClass)), d = c(() => M("absolute inset-0 h-full w-full resize-none border-0 bg-transparent p-0 focus:ring-0", t.contentClass));
3352
- function v() {
3337
+ const e = s, r = ee("$inputRef"), n = N(null), a = N(t.text), u = c(() => E("inline whitespace-pre", t.contentClass)), i = c(() => E("invisible whitespace-pre", t.contentClass)), p = c(() => E("absolute inset-0 h-full w-full resize-none border-0 bg-transparent p-0 focus:ring-0", t.contentClass));
3338
+ function g() {
3353
3339
  n.value = t.text;
3354
3340
  }
3355
- function $() {
3341
+ function w() {
3356
3342
  n.value && (t.type !== "number" && a.value.trim().length === 0 && (a.value = n.value, e("update", a.value)), n.value = null, e("save"));
3357
3343
  }
3358
- return Y(() => a.value = t.text), (m, C) => (u(), b("div", {
3359
- class: k(["relative", { "pointer-events-none!": m.disabled && !n.value }])
3344
+ return Y(() => a.value = t.text), (v, k) => (o(), y("div", {
3345
+ class: x(["relative", { "pointer-events-none!": v.disabled && !n.value }])
3360
3346
  }, [
3361
- n.value ? (u(), b("span", {
3347
+ n.value ? (o(), y("span", {
3362
3348
  key: 1,
3363
- class: k(l.value)
3364
- }, x(a.value), 3)) : (u(), b("div", {
3349
+ class: x(i.value)
3350
+ }, C(a.value), 3)) : (o(), y("div", {
3365
3351
  key: 0,
3366
- class: k(i.value)
3352
+ class: x(u.value)
3367
3353
  }, [
3368
- w(m.$slots, "default")
3354
+ $(v.$slots, "default")
3369
3355
  ], 2)),
3370
- m.type === "number" ? (u(), b("span", {
3356
+ v.type === "number" ? (o(), y("span", {
3371
3357
  key: 2,
3372
- class: k(["inline-block transition-[width]", n.value ? "w-5" : "w-0"])
3373
- }, null, 2)) : T("", !0),
3374
- y("form", {
3358
+ class: x(["inline-block transition-[width]", n.value ? "w-5" : "w-0"])
3359
+ }, null, 2)) : M("", !0),
3360
+ b("form", {
3375
3361
  class: "w-full",
3376
- "aria-hidden": m.formAriaHidden,
3377
- onSubmit: C[4] || (C[4] = We((L) => {
3378
- var _e;
3379
- return (_e = r.value) == null ? void 0 : _e.blur();
3362
+ "aria-hidden": v.formAriaHidden,
3363
+ onSubmit: k[4] || (k[4] = rt((q) => {
3364
+ var pe;
3365
+ return (pe = r.value) == null ? void 0 : pe.blur();
3380
3366
  }, ["prevent"]))
3381
3367
  }, [
3382
- Ke(y("input", {
3368
+ nt(b("input", {
3383
3369
  ref: "$inputRef",
3384
- "onUpdate:modelValue": C[0] || (C[0] = (L) => a.value = L),
3385
- tabindex: m.tabindex ?? void 0,
3386
- "aria-label": m.ariaLabel ?? void 0,
3387
- type: m.type,
3388
- class: k([
3389
- d.value,
3390
- { "opacity-0": !n.value, "appearance-textfield": !n.value && m.type === "number" }
3370
+ "onUpdate:modelValue": k[0] || (k[0] = (q) => a.value = q),
3371
+ tabindex: v.tabindex ?? void 0,
3372
+ "aria-label": v.ariaLabel ?? void 0,
3373
+ type: v.type,
3374
+ class: x([
3375
+ p.value,
3376
+ { "opacity-0": !n.value, "appearance-textfield": !n.value && v.type === "number" }
3391
3377
  ]),
3392
- onKeyup: C[1] || (C[1] = (L) => m.$emit("update", a.value)),
3393
- onFocus: C[2] || (C[2] = (L) => v()),
3394
- onBlur: C[3] || (C[3] = (L) => $())
3395
- }, null, 42, Aa), [
3396
- [At, a.value]
3378
+ onKeyup: k[1] || (k[1] = (q) => v.$emit("update", a.value)),
3379
+ onFocus: k[2] || (k[2] = (q) => g()),
3380
+ onBlur: k[3] || (k[3] = (q) => w())
3381
+ }, null, 42, Ga), [
3382
+ [Jt, a.value]
3397
3383
  ])
3398
- ], 40, Pa)
3384
+ ], 40, Ya)
3399
3385
  ], 2));
3400
3386
  }
3401
- }), Da = {
3387
+ }), el = {
3402
3388
  viewBox: "0 0 512 512",
3403
3389
  width: "1.2em",
3404
3390
  height: "1.2em"
3405
3391
  };
3406
- function ja(t, s) {
3407
- return u(), b("svg", Da, s[0] || (s[0] = [
3408
- y("path", {
3392
+ function tl(t, s) {
3393
+ return o(), y("svg", el, s[0] || (s[0] = [
3394
+ b("path", {
3409
3395
  fill: "currentColor",
3410
3396
  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"
3411
3397
  }, null, -1)
3412
3398
  ]));
3413
3399
  }
3414
- const Ba = E({ name: "ion-warning", render: ja }), Fa = {
3400
+ const sl = V({ name: "ion-warning", render: tl }), rl = {
3415
3401
  viewBox: "0 0 20 20",
3416
3402
  width: "1.2em",
3417
3403
  height: "1.2em"
3418
3404
  };
3419
- function Ua(t, s) {
3420
- return u(), b("svg", Fa, s[0] || (s[0] = [
3421
- y("path", {
3405
+ function nl(t, s) {
3406
+ return o(), y("svg", rl, s[0] || (s[0] = [
3407
+ b("path", {
3422
3408
  fill: "currentColor",
3423
3409
  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"
3424
3410
  }, null, -1)
3425
3411
  ]));
3426
3412
  }
3427
- const Oa = E({ name: "zondicons-view-show", render: Ua }), Na = { class: "font-medium" }, Wa = ["datetime"], Ka = /* @__PURE__ */ g({
3413
+ const al = V({ name: "zondicons-view-show", render: nl }), ll = { class: "font-medium" }, ol = ["datetime"], il = /* @__PURE__ */ h({
3428
3414
  __name: "ErrorLogsModal",
3429
3415
  setup(t) {
3430
- return (s, e) => (u(), h(se, {
3416
+ return (s, e) => (o(), f(re, {
3431
3417
  title: s.$td("errors.report", "Errors ({count})", { count: s.$errors.logs.length })
3432
3418
  }, {
3433
- default: f(() => [
3434
- y("ol", null, [
3435
- (u(!0), b(D, null, F(s.$errors.logs, (r, n) => (u(), b("li", {
3419
+ default: m(() => [
3420
+ b("ol", null, [
3421
+ (o(!0), y(D, null, U(s.$errors.logs, (r, n) => (o(), y("li", {
3436
3422
  key: n,
3437
3423
  class: "mb-2 flex max-w-prose min-w-56 justify-between py-2 last:mb-0"
3438
3424
  }, [
3439
- y("div", null, [
3440
- y("h3", Na, x(r.report.title), 1),
3441
- y("time", {
3425
+ b("div", null, [
3426
+ b("h3", ll, C(r.report.title), 1),
3427
+ b("time", {
3442
3428
  datetime: r.date.toISOString(),
3443
3429
  class: "text-xs text-gray-700"
3444
- }, x(r.date.toLocaleTimeString()), 9, Wa),
3445
- p(P, {
3430
+ }, C(r.date.toLocaleTimeString()), 9, ol),
3431
+ d(z, {
3446
3432
  class: "text-sm text-gray-500",
3447
- text: r.report.description ?? o(yt)(r.report)
3433
+ text: r.report.description ?? l(Ht)(r.report)
3448
3434
  }, null, 8, ["text"])
3449
3435
  ]),
3450
- p(q, {
3436
+ d(I, {
3451
3437
  size: "icon",
3452
3438
  variant: "ghost",
3453
3439
  "aria-label": s.$td("errors.viewDetails", "View details"),
@@ -3455,11 +3441,11 @@ const Oa = E({ name: "zondicons-view-show", render: Ua }), Na = { class: "font-m
3455
3441
  class: "self-center",
3456
3442
  onClick: (a) => s.$errors.inspect(
3457
3443
  r.report,
3458
- s.$errors.logs.map(({ report: i }) => i)
3444
+ s.$errors.logs.map(({ report: u }) => u)
3459
3445
  )
3460
3446
  }, {
3461
- default: f(() => [
3462
- p(o(Oa), {
3447
+ default: m(() => [
3448
+ d(l(al), {
3463
3449
  class: "size-4",
3464
3450
  "aria-hidden": "true"
3465
3451
  })
@@ -3472,36 +3458,36 @@ const Oa = E({ name: "zondicons-view-show", render: Ua }), Na = { class: "font-m
3472
3458
  _: 1
3473
3459
  }, 8, ["title"]));
3474
3460
  }
3475
- }), Al = /* @__PURE__ */ g({
3461
+ }), so = /* @__PURE__ */ h({
3476
3462
  __name: "ErrorLogs",
3477
3463
  setup(t) {
3478
- return (s, e) => s.$errors.logs.length > 0 ? (u(), h(q, {
3464
+ return (s, e) => s.$errors.logs.length > 0 ? (o(), f(I, {
3479
3465
  key: 0,
3480
3466
  size: "icon",
3481
3467
  variant: "ghost",
3482
3468
  title: s.$td("errors.viewLogs", "View error logs"),
3483
3469
  "aria-label": s.$td("errors.viewLogs", "View error logs"),
3484
- onClick: e[0] || (e[0] = (r) => s.$ui.modal(Ka))
3470
+ onClick: e[0] || (e[0] = (r) => s.$ui.modal(il))
3485
3471
  }, {
3486
- default: f(() => [
3487
- p(o(Ba), { class: "size-6 text-red-500" })
3472
+ default: m(() => [
3473
+ d(l(sl), { class: "size-6 text-red-500" })
3488
3474
  ]),
3489
3475
  _: 1
3490
- }, 8, ["title", "aria-label"])) : T("", !0);
3476
+ }, 8, ["title", "aria-label"])) : M("", !0);
3491
3477
  }
3492
- }), Dl = /* @__PURE__ */ g({
3478
+ }), ro = /* @__PURE__ */ h({
3493
3479
  __name: "ErrorMessage",
3494
3480
  props: {
3495
3481
  error: {}
3496
3482
  },
3497
3483
  setup(t) {
3498
- const s = c(() => yt(t.error));
3499
- return (e, r) => (u(), h(P, {
3484
+ const s = c(() => Ht(t.error));
3485
+ return (e, r) => (o(), f(z, {
3500
3486
  text: s.value,
3501
3487
  inline: ""
3502
3488
  }, null, 8, ["text"]));
3503
3489
  }
3504
- }), jl = /* @__PURE__ */ g({
3490
+ }), no = /* @__PURE__ */ h({
3505
3491
  __name: "Link",
3506
3492
  props: {
3507
3493
  class: {},
@@ -3516,30 +3502,30 @@ const Oa = E({ name: "zondicons-view-show", render: Ua }), Na = { class: "font-m
3516
3502
  as: {}
3517
3503
  },
3518
3504
  setup(t) {
3519
- return (s, e) => (u(), h(q, H({ variant: "link" }, s.$props), {
3520
- default: f(() => [
3521
- w(s.$slots, "default")
3505
+ return (s, e) => (o(), f(I, H({ variant: "link" }, s.$props), {
3506
+ default: m(() => [
3507
+ $(s.$slots, "default")
3522
3508
  ]),
3523
3509
  _: 3
3524
3510
  }, 16));
3525
3511
  }
3526
- }), Bl = /* @__PURE__ */ g({
3512
+ }), ao = /* @__PURE__ */ h({
3527
3513
  __name: "SettingsModal",
3528
3514
  setup(t) {
3529
- const s = c(() => Zt(A.settings, "priority", "desc"));
3530
- return (e, r) => (u(), h(se, {
3515
+ const s = c(() => ls(A.settings, "priority", "desc"));
3516
+ return (e, r) => (o(), f(re, {
3531
3517
  title: e.$td("settings.title", "Settings")
3532
3518
  }, {
3533
- default: f(() => [
3534
- (u(!0), b(D, null, F(s.value, (n, a) => (u(), h(W(n.component), { key: a }))), 128))
3519
+ default: m(() => [
3520
+ (o(!0), y(D, null, U(s.value, (n, a) => (o(), f(G(n.component), { key: a }))), 128))
3535
3521
  ]),
3536
3522
  _: 1
3537
3523
  }, 8, ["title"]));
3538
3524
  }
3539
- }), Qa = {
3525
+ }), ul = {
3540
3526
  key: 0,
3541
3527
  class: "pointer-events-none absolute inset-y-0 right-0 flex items-center pr-3"
3542
- }, Fl = /* @__PURE__ */ g({
3528
+ }, lo = /* @__PURE__ */ h({
3543
3529
  inheritAttrs: !1,
3544
3530
  __name: "TextArea",
3545
3531
  props: {
@@ -3552,47 +3538,47 @@ const Oa = E({ name: "zondicons-view-show", render: Ua }), Na = { class: "font-m
3552
3538
  },
3553
3539
  emits: ["update:modelValue"],
3554
3540
  setup(t) {
3555
- const s = N(t, ["label", "inputClass", "wrapperClass"]), e = G("$inputRef"), [r, n] = Ie(), a = c(() => M("relative rounded-md shadow-2xs", { "mt-1": t.label }, t.wrapperClass)), i = c(() => {
3556
- var l, d, v;
3557
- return M(
3541
+ const s = K(t, ["label", "inputClass", "wrapperClass"]), e = ee("$inputRef"), [r, n] = Ae(), a = c(() => E("relative rounded-md shadow-2xs", { "mt-1": t.label }, t.wrapperClass)), u = c(() => {
3542
+ var i, p, g;
3543
+ return E(
3558
3544
  // eslint-disable-next-line vue/max-len
3559
3545
  "block w-full rounded-md border-0 py-1.5 ring-1 ring-inset focus:ring-2 focus:ring-inset sm:text-sm sm:leading-6",
3560
3546
  {
3561
- "focus:ring-primary-600": !((l = e.value) != null && l.errors),
3562
- "text-gray-900 shadow-2xs ring-gray-900/10 placeholder:text-gray-400": !((d = e.value) != null && d.errors),
3563
- "pr-10 text-red-900 ring-red-900/10 placeholder:text-red-300 focus:ring-red-500": (v = e.value) == null ? void 0 : v.errors
3547
+ "focus:ring-primary-600": !((i = e.value) != null && i.errors),
3548
+ "text-gray-900 shadow-2xs ring-gray-900/10 placeholder:text-gray-400": !((p = e.value) != null && p.errors),
3549
+ "pr-10 text-red-900 ring-red-900/10 placeholder:text-red-300 focus:ring-red-500": (g = e.value) == null ? void 0 : g.errors
3564
3550
  },
3565
3551
  t.inputClass
3566
3552
  );
3567
3553
  });
3568
- return (l, d) => (u(), h(ze, H({
3554
+ return (i, p) => (o(), f(je, H({
3569
3555
  ref: "$inputRef",
3570
- label: l.label,
3571
- class: o(n)
3556
+ label: i.label,
3557
+ class: l(n)
3572
3558
  }, s, {
3573
- "onUpdate:modelValue": d[0] || (d[0] = (v) => l.$emit("update:modelValue", v))
3559
+ "onUpdate:modelValue": p[0] || (p[0] = (g) => i.$emit("update:modelValue", g))
3574
3560
  }), {
3575
- default: f(() => {
3576
- var v;
3561
+ default: m(() => {
3562
+ var g;
3577
3563
  return [
3578
- p(fe, { class: "block text-sm leading-6 font-medium text-gray-900" }),
3579
- y("div", {
3580
- class: k(a.value)
3564
+ d(be, { class: "block text-sm leading-6 font-medium text-gray-900" }),
3565
+ b("div", {
3566
+ class: x(a.value)
3581
3567
  }, [
3582
- p(Ea, H(o(r), { class: i.value }), null, 16, ["class"]),
3583
- (v = e.value) != null && v.errors ? (u(), b("div", Qa, [
3584
- p(o(qe), { class: "size-5 text-red-500" })
3585
- ])) : T("", !0)
3568
+ d(Oa, H(l(r), { class: u.value }), null, 16, ["class"]),
3569
+ (g = e.value) != null && g.errors ? (o(), y("div", ul, [
3570
+ d(l(De), { class: "size-5 text-red-500" })
3571
+ ])) : M("", !0)
3586
3572
  ], 2),
3587
- p(Ct, { class: "mt-2 text-sm text-gray-600" }),
3588
- p(he, { class: "mt-2 text-sm text-red-600" })
3573
+ d(zt, { class: "mt-2 text-sm text-gray-600" }),
3574
+ d(ye, { class: "mt-2 text-sm text-red-600" })
3589
3575
  ];
3590
3576
  }),
3591
3577
  _: 1
3592
3578
  }, 16, ["label", "class"]));
3593
3579
  }
3594
3580
  });
3595
- class Ul {
3581
+ class oo {
3596
3582
  constructor() {
3597
3583
  _(this, "status");
3598
3584
  _(this, "_listeners");
@@ -3600,22 +3586,22 @@ class Ul {
3600
3586
  _(this, "_cancelled");
3601
3587
  _(this, "_started");
3602
3588
  _(this, "_completed");
3603
- this.status = this.getInitialStatus(), this._listeners = new Xt(), this._started = new K(), this._completed = new K();
3589
+ this.status = this.getInitialStatus(), this._listeners = new os(), this._started = new Q(), this._completed = new Q();
3604
3590
  }
3605
3591
  async start() {
3606
3592
  this.beforeStart(), this._started.resolve();
3607
3593
  try {
3608
3594
  await this.updateProgress(), await this.run(), await this.updateProgress(), this._completed.resolve();
3609
3595
  } catch (s) {
3610
- if (s instanceof Ue)
3596
+ if (s instanceof et)
3611
3597
  return;
3612
- throw ee(Yt(s), (e) => {
3598
+ throw te(is(s), (e) => {
3613
3599
  this._completed.reject(e);
3614
3600
  });
3615
3601
  }
3616
3602
  }
3617
3603
  async cancel() {
3618
- this._cancelled = new K(), await this._cancelled;
3604
+ this._cancelled = new Q(), await this._cancelled;
3619
3605
  }
3620
3606
  serialize() {
3621
3607
  return this.serializeStatus(this.status);
@@ -3650,10 +3636,10 @@ class Ul {
3650
3636
  }
3651
3637
  assertNotCancelled() {
3652
3638
  if (this._cancelled)
3653
- throw this._cancelled.resolve(), new Ue();
3639
+ throw this._cancelled.resolve(), new et();
3654
3640
  }
3655
3641
  calculateCurrentProgress(s) {
3656
- return s ?? (s = this.status), s.completed ? 1 : s.children ? Gt(
3642
+ return s ?? (s = this.status), s.completed ? 1 : s.children ? us(
3657
3643
  s.children.reduce((e, r) => e + this.calculateCurrentProgress(r), 0) / s.children.length,
3658
3644
  2
3659
3645
  ) : 0;
@@ -3667,148 +3653,158 @@ class Ul {
3667
3653
  return { ...s };
3668
3654
  }
3669
3655
  }
3670
- async function Ol(t) {
3656
+ async function io(t) {
3671
3657
  await t.start();
3672
3658
  }
3673
3659
  export {
3674
- ql as AdvancedOptions,
3675
- tn as AlertModal,
3660
+ Yl as AdvancedOptions,
3661
+ bn as AlertModal,
3676
3662
  A as App,
3677
- Il as AppLayout,
3678
- ka as AppModals,
3679
- Ta as AppOverlays,
3680
- Bs as AppService,
3681
- Sa as AppToasts,
3682
- q as Button,
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,
3699
- R as Events,
3700
- Ds as EventsService,
3701
- $t as Form,
3702
- Xs as FormController,
3703
- ct as HeadlessButton,
3704
- ze as HeadlessInput,
3705
- Ct as HeadlessInputDescription,
3706
- he as HeadlessInputError,
3707
- xt as HeadlessInputInput,
3708
- fe as HeadlessInputLabel,
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,
3716
- Be as HeadlessSelectLabel,
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,
3725
- Ue as JobCancelledError,
3663
+ Xl as AppLayout,
3664
+ Ba as AppOverlays,
3665
+ tr as AppService,
3666
+ ja as AppToasts,
3667
+ I as Button,
3668
+ ql as Cache,
3669
+ _r as CacheService,
3670
+ Gl as Checkbox,
3671
+ Sn as ConfirmModal,
3672
+ Qa as Details,
3673
+ eo as DropdownMenu,
3674
+ Za as DropdownMenuOption,
3675
+ Xa as DropdownMenuOptions,
3676
+ to as EditableContent,
3677
+ so as ErrorLogs,
3678
+ il as ErrorLogsModal,
3679
+ ro as ErrorMessage,
3680
+ Gn as ErrorReportModal,
3681
+ On as ErrorReportModalButtons,
3682
+ Nn as ErrorReportModalTitle,
3683
+ wt as Errors,
3684
+ xl as EventListenerPriorities,
3685
+ F as Events,
3686
+ Gs as EventsService,
3687
+ Vt as Form,
3688
+ dr as FormController,
3689
+ $t as HeadlessButton,
3690
+ je as HeadlessInput,
3691
+ zt as HeadlessInputDescription,
3692
+ ye as HeadlessInputError,
3693
+ It as HeadlessInputInput,
3694
+ be as HeadlessInputLabel,
3695
+ Oa as HeadlessInputTextArea,
3696
+ un as HeadlessModal,
3697
+ cn as HeadlessModalContent,
3698
+ dn as HeadlessModalDescription,
3699
+ pn as HeadlessModalOverlay,
3700
+ mn as HeadlessModalTitle,
3701
+ zr as HeadlessSelect,
3702
+ Ye as HeadlessSelectLabel,
3703
+ xt as HeadlessSelectOption,
3704
+ St as HeadlessSelectOptions,
3705
+ Ct as HeadlessSelectTrigger,
3706
+ _t as HeadlessSelectValue,
3707
+ Zr as HeadlessSwitch,
3708
+ Ra as HeadlessToast,
3709
+ pa as Input,
3710
+ oo as Job,
3711
+ et as JobCancelledError,
3712
+ Ze as LOCAL_TIMEZONE_OFFSET,
3726
3713
  Z as Lang,
3727
- me as Layouts,
3728
- jl as Link,
3729
- Nn as LoadingModal,
3730
- lt as MOBILE_BREAKPOINT,
3731
- P as Markdown,
3732
- se as Modal,
3733
- wt as ModalContext,
3734
- Un as ProgressBar,
3735
- ea as PromptModal,
3736
- _r as Select,
3737
- ht as SelectLabel,
3738
- Fe as SelectOption,
3739
- gt as SelectOptions,
3740
- vt as SelectTrigger,
3741
- we as Service,
3742
- Te as ServiceBootError,
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,
3750
- z as UI,
3751
- dr as UIService,
3752
- pl as __valueType,
3753
- nr as aerogelDirectives,
3754
- zs as appNamespace,
3755
- $l as booleanInput,
3756
- $e as bootServices,
3757
- Ll as bootstrap,
3758
- xa as bootstrapApplication,
3759
- M as classes,
3760
- hl as computedAsync,
3761
- gl as computedDebounce,
3762
- _l as dateInput,
3763
- cl as defineDirective,
3764
- dl as defineFormValidationRule,
3765
- ul as definePlugin,
3766
- ye as defineServiceState,
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,
3778
- V as injectReactiveOrFail,
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,
3787
- Ge as renderVNode,
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,
3714
+ ve as Layouts,
3715
+ no as Link,
3716
+ oa as LoadingModal,
3717
+ br as MINUTE_MILLISECONDS,
3718
+ vt as MOBILE_BREAKPOINT,
3719
+ z as Markdown,
3720
+ re as Modal,
3721
+ po as ModalComponent,
3722
+ mo as ModalsPortal,
3723
+ aa as ProgressBar,
3724
+ ga as PromptModal,
3725
+ Pr as Select,
3726
+ kt as SelectLabel,
3727
+ Ge as SelectOption,
3728
+ Tt as SelectOptions,
3729
+ Mt as SelectTrigger,
3730
+ xe as Service,
3731
+ Ve as ServiceBootError,
3732
+ Qr as Setting,
3733
+ ao as SettingsModal,
3734
+ Ia as StartupCrash,
3735
+ gt as Storage,
3736
+ Xr as Switch,
3737
+ lo as TextArea,
3738
+ qa as Toast,
3739
+ P as UI,
3740
+ Tr as UIService,
3741
+ Hl as __valueType,
3742
+ wr as aerogelDirectives,
3743
+ Js as appNamespace,
3744
+ Dl as booleanInput,
3745
+ Se as bootServices,
3746
+ Zl as bootstrap,
3747
+ Da as bootstrapApplication,
3748
+ E as classes,
3749
+ fo as closeModal,
3750
+ Il as computedAsync,
3751
+ zl as computedDebounce,
3752
+ ho as createModal,
3753
+ jl as dateInput,
3754
+ Tl as defineDirective,
3755
+ El as defineFormValidationRule,
3756
+ kl as definePlugin,
3757
+ Ce as defineServiceState,
3758
+ Ys as defineServiceStore,
3759
+ Sl as defineSettings,
3760
+ io as dispatch,
3761
+ Bl as enumInput,
3762
+ bt as getCurrentLayout,
3763
+ Ht as getErrorMessage,
3764
+ gr as getMarkdownRouter,
3765
+ Xs as getPiniaStore,
3766
+ Ir as hasSelectOptionLabel,
3767
+ go as injectModal,
3768
+ ar as injectOrFail,
3769
+ nr as injectReactive,
3770
+ R as injectReactiveOrFail,
3771
+ sr as installPlugins,
3772
+ vo as modals,
3773
+ Kl as numberInput,
3774
+ Ql as objectInput,
3775
+ Vl as onCleanMounted,
3776
+ mt as onFormFocus,
3777
+ Ll as persistent,
3778
+ pr as reactiveSet,
3779
+ Pl as registerErrorHandler,
3780
+ vr as renderMarkdown,
3781
+ dt as renderVNode,
3782
+ Al as replaceExisting,
3783
+ Fl as requiredBooleanInput,
3784
+ Ul as requiredDateInput,
3785
+ Ol as requiredEnumInput,
3786
+ Nl as requiredNumberInput,
3787
+ Wl as requiredObjectInput,
3788
+ ma as requiredStringInput,
3789
+ Zs as resetPiniaStore,
3790
+ ht as safeHtml,
3791
+ Rl as setMarkdownRouter,
3792
+ bo as showModal,
3793
+ Jl as stringInput,
3794
+ yt as translate,
3800
3795
  S as translateWithDefault,
3801
- en as useAlertModal,
3802
- sn as useConfirmModal,
3803
- En as useErrorReportModal,
3804
- tt as useEvent,
3805
- rt as useForm,
3806
- Ie as useInputAttrs,
3807
- On as useLoadingModal,
3808
- Yn as usePromptModal,
3809
- Zs as validate,
3810
- Js as validateType,
3811
- de as validators,
3812
- et as variantClasses
3796
+ vn as useAlertModal,
3797
+ yn as useConfirmModal,
3798
+ Wn as useErrorReportModal,
3799
+ Ml as useEvent,
3800
+ ft as useForm,
3801
+ Ae as useInputAttrs,
3802
+ la as useLoadingModal,
3803
+ Pe as useModal,
3804
+ fa as usePromptModal,
3805
+ cr as validate,
3806
+ ur as validateType,
3807
+ he as validators,
3808
+ pt as variantClasses
3813
3809
  };
3814
3810
  //# sourceMappingURL=aerogel-core.js.map