@aerogel/core 0.1.1-next.01bc3a1d850a91b650f8cade6c0dd8e44109e0d8 → 0.1.1-next.0b544d441ec041428b1de47cb039d0725ce1b92c

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