manolis-ui 0.21.1 → 0.22.4

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
@@ -1,8 +1,8 @@
1
- import { defineComponent as j, computed as U, createElementBlock as i, openBlock as o, normalizeClass as $, createCommentVNode as z, renderSlot as B, createTextVNode as _e, createElementVNode as n, Fragment as A, renderList as X, toDisplayString as T, ref as h, watch as q, h as Oe, onMounted as de, withDirectives as Se, createVNode as oe, isRef as We, vModelCheckbox as Ke, unref as ee, provide as Xe, onUnmounted as Ee, normalizeStyle as Ie, Transition as Pe, withCtx as be, inject as Ye, useId as Ge, defineAsyncComponent as ze, nextTick as me, onBeforeUnmount as Ve, withModifiers as ne, createBlock as ce, resolveDynamicComponent as Te, mergeProps as Be, withKeys as pe, resolveComponent as De, vModelText as Ae, useSlots as Je, Comment as Ze, vShow as Qe, readonly as et, TransitionGroup as tt } from "vue";
2
- const lt = ["disabled"], at = {
1
+ import { defineComponent as z, computed as _, createElementBlock as r, openBlock as s, normalizeClass as w, createCommentVNode as S, renderSlot as $, createTextVNode as je, createElementVNode as u, Fragment as N, renderList as U, toDisplayString as T, ref as b, watch as R, h as Le, onMounted as pe, withDirectives as ke, createVNode as re, isRef as Je, vModelCheckbox as He, unref as te, provide as Ze, onUnmounted as Re, normalizeStyle as be, Transition as qe, withCtx as ye, inject as Qe, useId as et, defineAsyncComponent as Pe, nextTick as he, onBeforeUnmount as Ee, withModifiers as oe, createBlock as fe, resolveDynamicComponent as Ve, mergeProps as ie, withKeys as ge, resolveComponent as Ae, vModelText as Ue, useSlots as tt, Comment as at, vShow as lt, readonly as nt, TransitionGroup as st } from "vue";
2
+ const ot = ["disabled"], it = {
3
3
  key: 0,
4
4
  class: "loading loading-spinner"
5
- }, _a = /* @__PURE__ */ j({
5
+ }, yn = /* @__PURE__ */ z({
6
6
  __name: "ButtonComponent",
7
7
  props: {
8
8
  outlined: { type: Boolean, default: !1 },
@@ -14,8 +14,8 @@ const lt = ["disabled"], at = {
14
14
  disabled: { type: Boolean, default: !1 }
15
15
  },
16
16
  setup(e) {
17
- const c = e, l = U(() => {
18
- switch (c.size) {
17
+ const n = e, a = _(() => {
18
+ switch (n.size) {
19
19
  case "large":
20
20
  return "btn-lg";
21
21
  case "small":
@@ -29,8 +29,8 @@ const lt = ["disabled"], at = {
29
29
  default:
30
30
  return "";
31
31
  }
32
- }), t = U(() => {
33
- switch (c.type) {
32
+ }), t = _(() => {
33
+ switch (n.type) {
34
34
  case "neutral":
35
35
  return "btn-neutral";
36
36
  case "primary":
@@ -54,8 +54,8 @@ const lt = ["disabled"], at = {
54
54
  default:
55
55
  return "btn-neutral";
56
56
  }
57
- }), r = U(() => {
58
- switch (c.shape) {
57
+ }), o = _(() => {
58
+ switch (n.shape) {
59
59
  case "square":
60
60
  return "btn-square";
61
61
  case "circle":
@@ -64,27 +64,27 @@ const lt = ["disabled"], at = {
64
64
  return "";
65
65
  }
66
66
  });
67
- return (a, s) => (o(), i("button", {
68
- class: $([
67
+ return (i, l) => (s(), r("button", {
68
+ class: w([
69
69
  "btn",
70
- { "btn-outline": c.outlined },
71
- { "btn-active": c.active },
70
+ { "btn-outline": n.outlined },
71
+ { "btn-active": n.active },
72
72
  t.value,
73
- l.value,
74
- r.value
73
+ a.value,
74
+ o.value
75
75
  ]),
76
- disabled: c.disabled
76
+ disabled: n.disabled
77
77
  }, [
78
- e.loading ? (o(), i("span", at)) : z("", !0),
79
- B(a.$slots, "default", {}, () => [
80
- s[0] || (s[0] = _e("Submit", -1))
78
+ e.loading ? (s(), r("span", it)) : S("", !0),
79
+ $(i.$slots, "default", {}, () => [
80
+ l[0] || (l[0] = je("Submit", -1))
81
81
  ])
82
- ], 10, lt));
82
+ ], 10, ot));
83
83
  }
84
- }), nt = {
84
+ }), rt = {
85
85
  tabindex: "0",
86
86
  class: "z-1 bg-base-100 shadow-sm p-2 rounded-sm min-w-[inherit] md:min-w-full xl:min-w-52 dropdown-content menu"
87
- }, ot = ["href"], Ea = /* @__PURE__ */ j({
87
+ }, ut = ["href"], wn = /* @__PURE__ */ z({
88
88
  __name: "dropdown",
89
89
  props: {
90
90
  items: {},
@@ -94,35 +94,35 @@ const lt = ["disabled"], at = {
94
94
  forceOpen: { type: Boolean, default: !1 }
95
95
  },
96
96
  setup(e) {
97
- const c = {
97
+ const n = {
98
98
  left: "dropdown-left",
99
99
  right: "dropdown-right",
100
100
  bottom: "dropdown-bottom",
101
101
  top: "dropdown-top"
102
- }, l = {
102
+ }, a = {
103
103
  start: "",
104
104
  end: "dropdown-end"
105
105
  }, t = e;
106
- return (r, a) => (o(), i("div", {
107
- class: $(["dropdown", c[t.position], l[t.floatPosition], { "dropdown-open": t.forceOpen }, { "dropdown-hover": t.openOnHover }])
106
+ return (o, i) => (s(), r("div", {
107
+ class: w(["dropdown", n[t.position], a[t.floatPosition], { "dropdown-open": t.forceOpen }, { "dropdown-hover": t.openOnHover }])
108
108
  }, [
109
- B(r.$slots, "default", {
109
+ $(o.$slots, "default", {
110
110
  tabindex: "0",
111
111
  role: "button"
112
112
  }, () => [
113
- a[0] || (a[0] = n("div", { class: "m-1 btn" }, "Open dropdown", -1))
113
+ i[0] || (i[0] = u("div", { class: "m-1 btn" }, "Open dropdown", -1))
114
114
  ]),
115
- n("ul", nt, [
116
- (o(!0), i(A, null, X(e.items, (s) => (o(), i("li", null, [
117
- n("a", {
118
- href: s.link
119
- }, T(s.text), 9, ot)
115
+ u("ul", rt, [
116
+ (s(!0), r(N, null, U(e.items, (l) => (s(), r("li", null, [
117
+ u("a", {
118
+ href: l.link
119
+ }, T(l.text), 9, ut)
120
120
  ]))), 256)),
121
- B(r.$slots, "additional")
121
+ $(o.$slots, "additional")
122
122
  ])
123
123
  ], 2));
124
124
  }
125
- }), st = { class: "modal-box" }, it = { class: "modal-action" }, La = /* @__PURE__ */ j({
125
+ }), ct = { class: "modal-box" }, dt = { class: "modal-action" }, $n = /* @__PURE__ */ z({
126
126
  __name: "modal",
127
127
  props: {
128
128
  position: { default: "center" },
@@ -130,48 +130,48 @@ const lt = ["disabled"], at = {
130
130
  forceOpen: { type: [Boolean, null], default: null }
131
131
  },
132
132
  setup(e) {
133
- const c = e, l = {
133
+ const n = e, a = {
134
134
  top: "modal-top",
135
135
  bottom: "modal-bottom",
136
136
  center: "modal-middle"
137
- }, t = h(null), r = () => {
138
- var s;
139
- (s = t.value) == null || s.showModal();
140
- }, a = () => {
141
- var s;
142
- (s = t.value) == null || s.close();
137
+ }, t = b(null), o = () => {
138
+ var l;
139
+ (l = t.value) == null || l.showModal();
140
+ }, i = () => {
141
+ var l;
142
+ (l = t.value) == null || l.close();
143
143
  };
144
- return q(
145
- () => c.forceOpen,
146
- (s) => {
147
- s == !0 && r(), s == !1 && a();
144
+ return R(
145
+ () => n.forceOpen,
146
+ (l) => {
147
+ l == !0 && o(), l == !1 && i();
148
148
  }
149
- ), (s, m) => (o(), i(A, null, [
150
- c.forceOpen == null ? (o(), i("span", {
149
+ ), (l, d) => (s(), r(N, null, [
150
+ n.forceOpen == null ? (s(), r("span", {
151
151
  key: 0,
152
152
  class: "w-fit cursor-pointer",
153
- onClick: r
153
+ onClick: o
154
154
  }, [
155
- B(s.$slots, "trigger", { role: "button" }, () => [
156
- m[0] || (m[0] = n("button", { class: "btn" }, "Open", -1))
155
+ $(l.$slots, "trigger", { role: "button" }, () => [
156
+ d[0] || (d[0] = u("button", { class: "btn" }, "Open", -1))
157
157
  ])
158
- ])) : z("", !0),
159
- n("dialog", {
158
+ ])) : S("", !0),
159
+ u("dialog", {
160
160
  ref_key: "dialog",
161
161
  ref: t,
162
- class: $(["modal", l[c.position]])
162
+ class: w(["modal", a[n.position]])
163
163
  }, [
164
- n("div", st, [
165
- B(s.$slots, "default"),
166
- n("div", it, [
167
- B(s.$slots, "actions"),
168
- n("form", {
164
+ u("div", ct, [
165
+ $(l.$slots, "default"),
166
+ u("div", dt, [
167
+ $(l.$slots, "actions"),
168
+ u("form", {
169
169
  method: "dialog",
170
- onSubmit: a,
171
- class: $(e.withBackdrop ? "modal-backdrop" : "")
170
+ onSubmit: i,
171
+ class: w(e.withBackdrop ? "modal-backdrop" : "")
172
172
  }, [
173
- B(s.$slots, "close-button", {}, () => [
174
- m[1] || (m[1] = n("button", { class: "btn" }, "Close", -1))
173
+ $(l.$slots, "close-button", {}, () => [
174
+ d[1] || (d[1] = u("button", { class: "btn" }, "Close", -1))
175
175
  ])
176
176
  ], 34)
177
177
  ])
@@ -179,22 +179,22 @@ const lt = ["disabled"], at = {
179
179
  ], 2)
180
180
  ], 64));
181
181
  }
182
- }), rt = { class: "flex justify-center items-center swap-on" }, ut = { class: "flex justify-center items-center swap-off" }, ja = /* @__PURE__ */ j({
182
+ }), ft = { class: "flex justify-center items-center swap-on" }, vt = { class: "flex justify-center items-center swap-off" }, xn = /* @__PURE__ */ z({
183
183
  __name: "swap",
184
184
  props: {
185
185
  effect: {}
186
186
  },
187
187
  setup(e) {
188
- const c = e;
189
- return (l, t) => (o(), i("label", {
190
- class: $(["swap", c.effect ? `swap-${e.effect}` : ""])
188
+ const n = e;
189
+ return (a, t) => (s(), r("label", {
190
+ class: w(["swap", n.effect ? `swap-${e.effect}` : ""])
191
191
  }, [
192
- t[0] || (t[0] = n("input", { type: "checkbox" }, null, -1)),
193
- n("div", rt, [
194
- B(l.$slots, "on")
192
+ t[0] || (t[0] = u("input", { type: "checkbox" }, null, -1)),
193
+ u("div", ft, [
194
+ $(a.$slots, "on")
195
195
  ]),
196
- n("div", ut, [
197
- B(l.$slots, "off")
196
+ u("div", vt, [
197
+ $(a.$slots, "off")
198
198
  ])
199
199
  ], 2));
200
200
  }
@@ -205,14 +205,14 @@ const lt = ["disabled"], at = {
205
205
  * This source code is licensed under the ISC license.
206
206
  * See the LICENSE file in the root directory of this source tree.
207
207
  */
208
- const ct = (e) => e.replace(/([a-z0-9])([A-Z])/g, "$1-$2").toLowerCase();
208
+ const mt = (e) => e.replace(/([a-z0-9])([A-Z])/g, "$1-$2").toLowerCase();
209
209
  /**
210
210
  * @license lucide-vue-next v0.468.0 - ISC
211
211
  *
212
212
  * This source code is licensed under the ISC license.
213
213
  * See the LICENSE file in the root directory of this source tree.
214
214
  */
215
- var $e = {
215
+ var Me = {
216
216
  xmlns: "http://www.w3.org/2000/svg",
217
217
  width: 24,
218
218
  height: 24,
@@ -229,18 +229,18 @@ var $e = {
229
229
  * This source code is licensed under the ISC license.
230
230
  * See the LICENSE file in the root directory of this source tree.
231
231
  */
232
- const dt = ({ size: e, strokeWidth: c = 2, absoluteStrokeWidth: l, color: t, iconNode: r, name: a, class: s, ...m }, { slots: u }) => Oe(
232
+ const pt = ({ size: e, strokeWidth: n = 2, absoluteStrokeWidth: a, color: t, iconNode: o, name: i, class: l, ...d }, { slots: c }) => Le(
233
233
  "svg",
234
234
  {
235
- ...$e,
236
- width: e || $e.width,
237
- height: e || $e.height,
238
- stroke: t || $e.stroke,
239
- "stroke-width": l ? Number(c) * 24 / Number(e) : c,
240
- class: ["lucide", `lucide-${ct(a ?? "icon")}`],
241
- ...m
235
+ ...Me,
236
+ width: e || Me.width,
237
+ height: e || Me.height,
238
+ stroke: t || Me.stroke,
239
+ "stroke-width": a ? Number(n) * 24 / Number(e) : n,
240
+ class: ["lucide", `lucide-${mt(i ?? "icon")}`],
241
+ ...d
242
242
  },
243
- [...r.map((g) => Oe(...g)), ...u.default ? [u.default()] : []]
243
+ [...o.map((h) => Le(...h)), ...c.default ? [c.default()] : []]
244
244
  );
245
245
  /**
246
246
  * @license lucide-vue-next v0.468.0 - ISC
@@ -248,11 +248,11 @@ const dt = ({ size: e, strokeWidth: c = 2, absoluteStrokeWidth: l, color: t, ico
248
248
  * This source code is licensed under the ISC license.
249
249
  * See the LICENSE file in the root directory of this source tree.
250
250
  */
251
- const ye = (e, c) => (l, { slots: t }) => Oe(
252
- dt,
251
+ const Ce = (e, n) => (a, { slots: t }) => Le(
252
+ pt,
253
253
  {
254
- ...l,
255
- iconNode: c,
254
+ ...a,
255
+ iconNode: n,
256
256
  name: e
257
257
  },
258
258
  t
@@ -263,7 +263,7 @@ const ye = (e, c) => (l, { slots: t }) => Oe(
263
263
  * This source code is licensed under the ISC license.
264
264
  * See the LICENSE file in the root directory of this source tree.
265
265
  */
266
- const vt = ye("ChevronDownIcon", [
266
+ const ht = Ce("ChevronDownIcon", [
267
267
  ["path", { d: "m6 9 6 6 6-6", key: "qrunsl" }]
268
268
  ]);
269
269
  /**
@@ -272,7 +272,7 @@ const vt = ye("ChevronDownIcon", [
272
272
  * This source code is licensed under the ISC license.
273
273
  * See the LICENSE file in the root directory of this source tree.
274
274
  */
275
- const ft = ye("CircleXIcon", [
275
+ const gt = Ce("CircleXIcon", [
276
276
  ["circle", { cx: "12", cy: "12", r: "10", key: "1mglay" }],
277
277
  ["path", { d: "m15 9-6 6", key: "1uzhvr" }],
278
278
  ["path", { d: "m9 9 6 6", key: "z0biqf" }]
@@ -283,7 +283,7 @@ const ft = ye("CircleXIcon", [
283
283
  * This source code is licensed under the ISC license.
284
284
  * See the LICENSE file in the root directory of this source tree.
285
285
  */
286
- const mt = ye("MoonIcon", [
286
+ const bt = Ce("MoonIcon", [
287
287
  ["path", { d: "M12 3a6 6 0 0 0 9 9 9 9 0 1 1-9-9Z", key: "a7tn18" }]
288
288
  ]);
289
289
  /**
@@ -292,7 +292,7 @@ const mt = ye("MoonIcon", [
292
292
  * This source code is licensed under the ISC license.
293
293
  * See the LICENSE file in the root directory of this source tree.
294
294
  */
295
- const Re = ye("SearchIcon", [
295
+ const We = Ce("SearchIcon", [
296
296
  ["circle", { cx: "11", cy: "11", r: "8", key: "4ej97u" }],
297
297
  ["path", { d: "m21 21-4.3-4.3", key: "1qie3q" }]
298
298
  ]);
@@ -302,7 +302,7 @@ const Re = ye("SearchIcon", [
302
302
  * This source code is licensed under the ISC license.
303
303
  * See the LICENSE file in the root directory of this source tree.
304
304
  */
305
- const pt = ye("SunIcon", [
305
+ const yt = Ce("SunIcon", [
306
306
  ["circle", { cx: "12", cy: "12", r: "4", key: "4exip2" }],
307
307
  ["path", { d: "M12 2v2", key: "tus03m" }],
308
308
  ["path", { d: "M12 20v2", key: "1lh1kg" }],
@@ -312,53 +312,53 @@ const pt = ye("SunIcon", [
312
312
  ["path", { d: "M20 12h2", key: "1q8mjw" }],
313
313
  ["path", { d: "m6.34 17.66-1.41 1.41", key: "1m8zz5" }],
314
314
  ["path", { d: "m19.07 4.93-1.41 1.41", key: "1shlcs" }]
315
- ]), ht = (e, c) => {
316
- const l = h(null);
317
- return de(() => {
315
+ ]), wt = (e, n) => {
316
+ const a = b(null);
317
+ return pe(() => {
318
318
  if (typeof window < "u") {
319
319
  const t = window.localStorage.getItem(e);
320
- l.value = t ? JSON.parse(t) : c;
320
+ a.value = t ? JSON.parse(t) : n;
321
321
  }
322
- }), q(l, (t) => {
322
+ }), R(a, (t) => {
323
323
  typeof window < "u" && window.localStorage.setItem(e, JSON.stringify(t));
324
- }), l;
325
- }, gt = { class: "swap-rotate swap" }, bt = ["true-value", "false-value"], Pa = /* @__PURE__ */ j({
324
+ }), a;
325
+ }, $t = { class: "swap-rotate swap" }, xt = ["true-value", "false-value"], kn = /* @__PURE__ */ z({
326
326
  __name: "theme-controller",
327
327
  props: {
328
328
  lightTheme: { default: "light" },
329
329
  darkTheme: { default: "dark" }
330
330
  },
331
331
  setup(e) {
332
- const c = e, l = ht("theme", c.lightTheme);
333
- function t(r) {
334
- typeof window < "u" && window.document && document.documentElement.setAttribute("data-theme", r);
332
+ const n = e, a = wt("theme", n.lightTheme);
333
+ function t(o) {
334
+ typeof window < "u" && window.document && document.documentElement.setAttribute("data-theme", o);
335
335
  }
336
- return de(() => t(l.value ? l.value : "")), q(l, (r) => {
337
- t(r);
338
- }), (r, a) => (o(), i("label", gt, [
339
- Se(n("input", {
336
+ return pe(() => t(a.value ? a.value : "")), R(a, (o) => {
337
+ t(o);
338
+ }), (o, i) => (s(), r("label", $t, [
339
+ ke(u("input", {
340
340
  type: "checkbox",
341
341
  class: "theme-controller",
342
- "onUpdate:modelValue": a[0] || (a[0] = (s) => We(l) ? l.value = s : null),
343
- "true-value": c.lightTheme,
344
- "false-value": c.darkTheme
345
- }, null, 8, bt), [
346
- [Ke, ee(l)]
342
+ "onUpdate:modelValue": i[0] || (i[0] = (l) => Je(a) ? a.value = l : null),
343
+ "true-value": n.lightTheme,
344
+ "false-value": n.darkTheme
345
+ }, null, 8, xt), [
346
+ [He, te(a)]
347
347
  ]),
348
- oe(ee(pt), { class: "swap-off fill-current" }),
349
- oe(ee(mt), { class: "swap-on fill-current" })
348
+ re(te(yt), { class: "swap-off fill-current" }),
349
+ re(te(bt), { class: "swap-on fill-current" })
350
350
  ]));
351
351
  }
352
- }), yt = {
352
+ }), kt = {
353
353
  key: 0,
354
354
  class: "join join-vertical w-full"
355
- }, wt = ["name"], xt = {
355
+ }, Ct = ["name"], zt = {
356
356
  key: 1,
357
357
  type: "checkbox"
358
- }, kt = { class: "collapse-title font-bold text-2xl lg:text-4xl" }, $t = { class: "collapse-content" }, Ct = ["innerHTML"], St = ["name"], It = {
358
+ }, St = { class: "collapse-title font-bold text-2xl lg:text-4xl" }, _t = { class: "collapse-content" }, Bt = ["innerHTML"], It = ["name"], Mt = {
359
359
  key: 1,
360
360
  type: "checkbox"
361
- }, Mt = { class: "collapse-title font-bold text-2xl lg:text-4xl" }, zt = { class: "collapse-content" }, Tt = ["innerHTML"], Ra = /* @__PURE__ */ j({
361
+ }, Tt = { class: "collapse-title font-bold text-2xl lg:text-4xl" }, Vt = { class: "collapse-content" }, jt = ["innerHTML"], Cn = /* @__PURE__ */ z({
362
362
  __name: "accordion",
363
363
  props: {
364
364
  name: {},
@@ -368,44 +368,44 @@ const pt = ye("SunIcon", [
368
368
  toggle: { type: Boolean, default: !1 }
369
369
  },
370
370
  setup(e) {
371
- const c = e;
372
- return (l, t) => c.joinItems ? (o(), i("div", yt, [
373
- (o(!0), i(A, null, X(c.items, (r, a) => (o(), i("div", {
374
- class: $(["collapse border border-base-300 join-item", [e.icon ? `collapse-${e.icon}` : ""]]),
375
- key: a
371
+ const n = e;
372
+ return (a, t) => n.joinItems ? (s(), r("div", kt, [
373
+ (s(!0), r(N, null, U(n.items, (o, i) => (s(), r("div", {
374
+ class: w(["collapse border border-base-300 join-item", [e.icon ? `collapse-${e.icon}` : ""]]),
375
+ key: i
376
376
  }, [
377
- e.toggle ? (o(), i("input", xt)) : (o(), i("input", {
377
+ e.toggle ? (s(), r("input", zt)) : (s(), r("input", {
378
378
  key: 0,
379
379
  type: "radio",
380
380
  name: e.name,
381
381
  value: "true"
382
- }, null, 8, wt)),
383
- n("div", kt, T(r.title), 1),
384
- n("div", $t, [
385
- n("span", {
386
- innerHTML: r.content
387
- }, null, 8, Ct)
382
+ }, null, 8, Ct)),
383
+ u("div", St, T(o.title), 1),
384
+ u("div", _t, [
385
+ u("span", {
386
+ innerHTML: o.content
387
+ }, null, 8, Bt)
388
388
  ])
389
389
  ], 2))), 128))
390
- ])) : (o(!0), i(A, { key: 1 }, X(c.items, (r, a) => (o(), i("div", {
391
- class: $(["collapse border border-base-300", [e.icon ? `collapse-${e.icon}` : ""]]),
392
- key: a
390
+ ])) : (s(!0), r(N, { key: 1 }, U(n.items, (o, i) => (s(), r("div", {
391
+ class: w(["collapse border border-base-300", [e.icon ? `collapse-${e.icon}` : ""]]),
392
+ key: i
393
393
  }, [
394
- e.toggle ? (o(), i("input", It)) : (o(), i("input", {
394
+ e.toggle ? (s(), r("input", Mt)) : (s(), r("input", {
395
395
  key: 0,
396
396
  type: "radio",
397
397
  name: e.name,
398
398
  value: "true"
399
- }, null, 8, St)),
400
- n("div", Mt, T(r.title), 1),
401
- n("div", zt, [
402
- n("span", {
403
- innerHTML: r.content
404
- }, null, 8, Tt)
399
+ }, null, 8, It)),
400
+ u("div", Tt, T(o.title), 1),
401
+ u("div", Vt, [
402
+ u("span", {
403
+ innerHTML: o.content
404
+ }, null, 8, jt)
405
405
  ])
406
406
  ], 2))), 128));
407
407
  }
408
- }), Bt = ["src"], Dt = { class: "text-xl" }, Aa = /* @__PURE__ */ j({
408
+ }), Dt = ["src"], Ot = { class: "text-xl" }, zn = /* @__PURE__ */ z({
409
409
  __name: "avatar",
410
410
  props: {
411
411
  image: {},
@@ -414,32 +414,32 @@ const pt = ye("SunIcon", [
414
414
  fullyRounded: { type: Boolean, default: !1 }
415
415
  },
416
416
  setup(e) {
417
- const c = e, l = h(c.onlineStatus);
418
- return q(
419
- () => c.onlineStatus,
417
+ const n = e, a = b(n.onlineStatus);
418
+ return R(
419
+ () => n.onlineStatus,
420
420
  (t) => {
421
- t && (l.value = t);
421
+ t && (a.value = t);
422
422
  }
423
- ), (t, r) => (o(), i("div", {
424
- class: $(["avatar", [{ "avatar-online": l.value === "online" }, { "avatar-offline": l.value === "offline" }]])
423
+ ), (t, o) => (s(), r("div", {
424
+ class: w(["avatar", [{ "avatar-online": a.value === "online" }, { "avatar-offline": a.value === "offline" }]])
425
425
  }, [
426
- e.image ? (o(), i("div", {
426
+ e.image ? (s(), r("div", {
427
427
  key: 0,
428
- class: $(["rounded", [{ "rounded-full": e.fullyRounded }, { rounded: !e.fullyRounded }]])
428
+ class: w(["rounded", [{ "rounded-full": e.fullyRounded }, { rounded: !e.fullyRounded }]])
429
429
  }, [
430
- n("img", {
430
+ u("img", {
431
431
  src: e.image,
432
432
  class: "w-full h-full"
433
- }, null, 8, Bt)
434
- ], 2)) : (o(), i("div", {
433
+ }, null, 8, Dt)
434
+ ], 2)) : (s(), r("div", {
435
435
  key: 1,
436
- class: $(["flex justify-center bg-neutral p-[25%] rounded w-16 text-neutral-content text-center", [{ "rounded-full": e.fullyRounded }, { rounded: !e.fullyRounded }]])
436
+ class: w(["flex justify-center bg-neutral p-[25%] rounded w-16 text-neutral-content text-center", [{ "rounded-full": e.fullyRounded }, { rounded: !e.fullyRounded }]])
437
437
  }, [
438
- n("p", Dt, T(e.initials), 1)
438
+ u("p", Ot, T(e.initials), 1)
439
439
  ], 2))
440
440
  ], 2));
441
441
  }
442
- }), Na = /* @__PURE__ */ j({
442
+ }), Sn = /* @__PURE__ */ z({
443
443
  __name: "badge",
444
444
  props: {
445
445
  color: { default: "neutral" },
@@ -447,7 +447,7 @@ const pt = ye("SunIcon", [
447
447
  size: { default: "medium" }
448
448
  },
449
449
  setup(e) {
450
- const c = e, l = {
450
+ const n = e, a = {
451
451
  "extra small": "badge-xs",
452
452
  small: "badge-sm",
453
453
  medium: "badge-md",
@@ -463,25 +463,25 @@ const pt = ye("SunIcon", [
463
463
  warning: "badge-warning",
464
464
  error: "badge-error"
465
465
  };
466
- return (r, a) => (o(), i("span", {
467
- class: $(["badge", l[c.size], t[c.color], { "badge-outline": c.outline }])
466
+ return (o, i) => (s(), r("span", {
467
+ class: w(["badge", a[n.size], t[n.color], { "badge-outline": n.outline }])
468
468
  }, [
469
- B(r.$slots, "default")
469
+ $(o.$slots, "default")
470
470
  ], 2));
471
471
  }
472
- }), Ot = ["src", "alt"], Vt = {
472
+ }), Pt = ["src", "alt"], At = {
473
473
  key: 0,
474
474
  class: "card-body"
475
- }, _t = {
475
+ }, Lt = {
476
476
  key: 0,
477
477
  class: "group-hover:text-primary text-lg text-left cursor-pointer card-title"
478
478
  }, Et = {
479
479
  key: 1,
480
480
  class: "text-left"
481
- }, Lt = { class: "flex-col flex-nowrap mt-auto card-actions empty:hidden" }, jt = {
481
+ }, Rt = { class: "flex-col flex-nowrap mt-auto card-actions empty:hidden" }, Nt = {
482
482
  key: 1,
483
483
  class: "card-body"
484
- }, qa = /* @__PURE__ */ j({
484
+ }, _n = /* @__PURE__ */ z({
485
485
  __name: "card",
486
486
  props: {
487
487
  imgUrl: { default: "" },
@@ -498,68 +498,68 @@ const pt = ye("SunIcon", [
498
498
  horizontal: { type: Boolean, default: !1 }
499
499
  },
500
500
  setup(e) {
501
- const c = e, l = h(c.outlined);
502
- return q(
503
- () => c.outlined,
501
+ const n = e, a = b(n.outlined);
502
+ return R(
503
+ () => n.outlined,
504
504
  (t) => {
505
- l.value = t;
505
+ a.value = t;
506
506
  }
507
- ), (t, r) => (o(), i("div", {
508
- class: $(["group bg-base-100 shadow-xl rounded-sm min-w-64 max-w-full h-full card card-compact", [
509
- { "border-4 border-primary": l.value },
507
+ ), (t, o) => (s(), r("div", {
508
+ class: w(["group bg-base-100 shadow-xl rounded-sm min-w-64 max-w-full h-full card card-compact", [
509
+ { "border-4 border-primary": a.value },
510
510
  e.color ?? "",
511
511
  e.background,
512
512
  { "card-side": e.horizontal }
513
513
  ]])
514
514
  }, [
515
- n("figure", {
516
- class: $([{ "contents!": e.horizontal && e.imgWidth }])
515
+ u("figure", {
516
+ class: w([{ "contents!": e.horizontal && e.imgWidth }])
517
517
  }, [
518
- e.imgUrl || e.imgUrl && !e.loading ? (o(), i("img", {
518
+ e.imgUrl || e.imgUrl && !e.loading ? (s(), r("img", {
519
519
  key: 0,
520
520
  src: e.imgUrl,
521
521
  alt: e.alt,
522
- class: $(["rounded-sm object-cover", [
522
+ class: w(["rounded-sm object-cover", [
523
523
  {
524
524
  hidden: e.loading
525
525
  },
526
526
  !e.horizontal && e.imgHeight ? e.imgHeight : "h-full",
527
527
  e.horizontal && e.imgWidth ? e.imgWidth : "w-full"
528
528
  ]])
529
- }, null, 10, Ot)) : z("", !0),
530
- e.loading && e.imgUrl ? (o(), i("div", {
529
+ }, null, 10, Pt)) : S("", !0),
530
+ e.loading && e.imgUrl ? (s(), r("div", {
531
531
  key: 1,
532
- class: $(["w-full skeleton", e.imgHeight])
533
- }, null, 2)) : z("", !0)
532
+ class: w(["w-full skeleton", e.imgHeight])
533
+ }, null, 2)) : S("", !0)
534
534
  ], 2),
535
- e.loading ? z("", !0) : (o(), i("div", Vt, [
536
- e.title ? (o(), i("h2", _t, T(e.title), 1)) : z("", !0),
537
- B(t.$slots, "details", { class: "empty:hidden" }),
538
- e.description ? (o(), i("p", Et, T(e.description), 1)) : z("", !0),
539
- n("div", Lt, [
540
- B(t.$slots, "actions")
535
+ e.loading ? S("", !0) : (s(), r("div", At, [
536
+ e.title ? (s(), r("h2", Lt, T(e.title), 1)) : S("", !0),
537
+ $(t.$slots, "details", { class: "empty:hidden" }),
538
+ e.description ? (s(), r("p", Et, T(e.description), 1)) : S("", !0),
539
+ u("div", Rt, [
540
+ $(t.$slots, "actions")
541
541
  ])
542
542
  ])),
543
- e.loading ? (o(), i("div", jt, [...r[0] || (r[0] = [
544
- n("div", { class: "flex flex-col gap-4 w-52" }, [
545
- n("div", { class: "w-28 h-4 skeleton" }),
546
- n("div", { class: "w-full h-4 skeleton" }),
547
- n("div", { class: "w-full h-4 skeleton" })
543
+ e.loading ? (s(), r("div", Nt, [...o[0] || (o[0] = [
544
+ u("div", { class: "flex flex-col gap-4 w-52" }, [
545
+ u("div", { class: "w-28 h-4 skeleton" }),
546
+ u("div", { class: "w-full h-4 skeleton" }),
547
+ u("div", { class: "w-full h-4 skeleton" })
548
548
  ], -1)
549
- ])])) : z("", !0)
549
+ ])])) : S("", !0)
550
550
  ], 2));
551
551
  }
552
- }), Ne = Symbol("CarouselItemStyle"), Pt = { class: "relative h-full" }, Rt = {
552
+ }), Ke = Symbol("CarouselItemStyle"), Ft = {
553
553
  key: 0,
554
554
  class: "flex-shrink-0"
555
- }, At = {
555
+ }, qt = {
556
556
  key: 0,
557
557
  class: "flex-shrink-0"
558
- }, Nt = {
558
+ }, Wt = {
559
559
  key: 1,
560
560
  id: "carousel-indicators",
561
561
  class: "bottom-5 z-10 absolute flex justify-center gap-2 py-2 w-full"
562
- }, qt = ["onClick", "aria-label"], Ft = /* @__PURE__ */ j({
562
+ }, Ht = ["onClick", "aria-label"], Ut = /* @__PURE__ */ z({
563
563
  __name: "carousel",
564
564
  props: {
565
565
  showIndicators: {
@@ -574,7 +574,7 @@ const pt = ye("SunIcon", [
574
574
  type: String,
575
575
  default: "horizontal",
576
576
  required: !1,
577
- validator: (e) => e == "horizontal" || e == "vertical"
577
+ validator: (e) => e === "horizontal" || e === "vertical"
578
578
  },
579
579
  initialSlide: {
580
580
  type: Number,
@@ -592,7 +592,8 @@ const pt = ye("SunIcon", [
592
592
  },
593
593
  slideDuration: {
594
594
  type: Number,
595
- default: 300,
595
+ default: 250,
596
+ // Snappier transition like YouTube Shorts
596
597
  validator: (e) => e >= 0
597
598
  },
598
599
  breakpoints: {
@@ -612,265 +613,490 @@ const pt = ye("SunIcon", [
612
613
  default: 3e3,
613
614
  // Default to 3 seconds
614
615
  validator: (e) => e > 0
616
+ },
617
+ containerBreakout: {
618
+ type: Boolean,
619
+ default: !1
620
+ },
621
+ peekAmount: {
622
+ type: Number,
623
+ default: 0,
624
+ validator: (e) => e >= 0
615
625
  }
616
626
  },
617
- setup(e, { expose: c }) {
618
- const l = e, t = h(l.initialSlide), r = h(null), a = h(null), s = h(0), m = h(!1), u = h(0), g = h(0), S = h(!1), R = h(0), V = h(0), v = h(0), O = h(0), M = h(0), H = h(0), N = h(0), W = h(null), Z = h(null), te = h(0), f = h(null), y = U(() => {
619
- const C = Object.keys(l.breakpoints).map(Number).sort((E, F) => E - F);
620
- let k = {};
621
- for (const E of C)
622
- g.value >= E && (k = { ...k, ...l.breakpoints[E] });
623
- return k;
624
- }), b = U(() => y.value.slidesPerView ?? l.slidesPerView), I = U(() => y.value.gap ?? l.gap), d = U(() => {
625
- const C = l.sliderOrientation === "horizontal", E = `calc((100% - ${b.value > 1 ? (b.value - 1) * I.value : 0}px) / ${b.value})`;
626
- return C ? {
627
- width: E
628
- } : { height: E };
627
+ setup(e, { expose: n }) {
628
+ const a = e, t = b(a.initialSlide), o = b(null), i = b(null), l = b(0), d = b(!1), c = b(0), h = b(0), M = b(!1), A = b(0), O = b(0), v = b(0), D = b(0), V = b(0), W = b(0), F = b(0), K = b(null), J = b(null), ae = b(0), m = b(null), x = _(() => {
629
+ const g = Object.keys(a.breakpoints).map(Number).sort((P, E) => P - E);
630
+ let C = {};
631
+ for (const P of g)
632
+ h.value >= P && (C = { ...C, ...a.breakpoints[P] });
633
+ return C;
634
+ }), k = _(() => x.value.slidesPerView ?? a.slidesPerView), j = _(() => x.value.gap ?? a.gap), f = _(() => x.value.containerBreakout ?? a.containerBreakout), B = _(() => {
635
+ if (!f.value) return 0;
636
+ const g = x.value.peekAmount;
637
+ if (g !== void 0) {
638
+ if (g > 0) return g;
639
+ } else if (a.peekAmount > 0)
640
+ return a.peekAmount;
641
+ if (o.value) {
642
+ const C = o.value.parentElement;
643
+ if (C) {
644
+ const E = window.getComputedStyle(C).maxWidth;
645
+ if (E && E !== "none") {
646
+ const X = parseFloat(E), q = window.innerWidth;
647
+ if (q > X) {
648
+ const ne = (q - X) / 2;
649
+ return Math.min(ne, 80);
650
+ }
651
+ }
652
+ }
653
+ }
654
+ return 0;
655
+ }), I = _(() => {
656
+ const g = {};
657
+ return f.value && B.value > 0 && (a.sliderOrientation === "horizontal" ? (g.marginLeft = `-${B.value}px`, g.marginRight = `-${B.value}px`, g.width = `calc(100% + ${B.value * 2}px)`) : (g.marginTop = `-${B.value}px`, g.marginBottom = `-${B.value}px`, g.height = `calc(100% + ${B.value * 2}px)`)), g;
658
+ }), H = _(() => {
659
+ const g = {
660
+ gap: `${j.value}px`
661
+ };
662
+ return f.value && B.value > 0 && (a.sliderOrientation === "horizontal" ? (g.paddingLeft = `${B.value}px`, g.paddingRight = `${B.value}px`) : (g.paddingTop = `${B.value}px`, g.paddingBottom = `${B.value}px`)), g;
663
+ }), ee = _(() => {
664
+ const g = a.sliderOrientation === "horizontal", P = `calc((100% - ${k.value > 1 ? (k.value - 1) * j.value : 0}px) / ${k.value})`;
665
+ return g ? {
666
+ width: P
667
+ } : { height: P };
629
668
  });
630
- Xe(Ne, d);
631
- const D = () => {
632
- a.value ? u.value = a.value.children.length : u.value = 0;
633
- }, w = () => {
634
- if (!r.value || b.value <= 0) return 0;
635
- const k = l.sliderOrientation === "horizontal" ? r.value.offsetWidth : r.value.offsetHeight, E = (b.value - 1) * I.value;
636
- return k <= 0 ? 0 : (k - E) / b.value;
637
- }, _ = U(() => {
638
- if (!r.value || u.value === 0 || b.value === 0) return 0;
639
- const k = l.sliderOrientation === "horizontal" ? r.value.offsetWidth : r.value.offsetHeight, E = w(), F = u.value * (E + I.value) - I.value;
640
- return Math.max(0, F - k);
641
- }), P = async (C, k = !1) => {
642
- if (!r.value || b.value <= 0 || m.value || (D(), u.value === 0)) return;
643
- const E = w();
644
- if (E <= 0) return;
645
- const F = E + I.value, J = _.value;
646
- let K = C;
647
- l.infinite ? K = (C % u.value + u.value) % u.value : K = Math.max(0, Math.min(C, u.value - b.value));
648
- const ae = K * F, G = l.infinite ? ae : Math.max(0, Math.min(ae, J));
649
- if (k || l.slideDuration === 0) {
650
- a.value && (a.value.style.transitionDuration = "0ms", a.value.style.transform = l.sliderOrientation === "horizontal" ? `translate3d(${-G}px, 0, 0)` : `translate3d(0, ${-G}px, 0)`), s.value = G, t.value = K, m.value = !1, l.autoplay && he();
669
+ Ze(Ke, ee);
670
+ const G = () => {
671
+ i.value ? c.value = i.value.children.length : c.value = 0;
672
+ }, le = () => {
673
+ if (!o.value || k.value <= 0) return 0;
674
+ let C = a.sliderOrientation === "horizontal" ? o.value.offsetWidth : o.value.offsetHeight;
675
+ f.value && B.value > 0 && (C = C - B.value * 2);
676
+ const P = (k.value - 1) * j.value;
677
+ return C <= 0 ? 0 : (C - P) / k.value;
678
+ }, p = _(() => {
679
+ if (!o.value || c.value === 0 || k.value === 0) return 0;
680
+ let C = a.sliderOrientation === "horizontal" ? o.value.offsetWidth : o.value.offsetHeight;
681
+ f.value && B.value > 0 && (C = C - B.value * 2);
682
+ const P = le(), E = c.value * (P + j.value) - j.value;
683
+ return Math.max(0, E - C);
684
+ }), y = async (g, C = !1) => {
685
+ if (!o.value || k.value <= 0 || d.value || (G(), c.value === 0)) return;
686
+ const P = le();
687
+ if (P <= 0) return;
688
+ const E = P + j.value, X = p.value;
689
+ let q = g;
690
+ a.infinite ? q = (g % c.value + c.value) % c.value : q = Math.max(0, Math.min(g, c.value - k.value));
691
+ const ne = q * E, Y = a.infinite ? ne : Math.max(0, Math.min(ne, X));
692
+ if (C || a.slideDuration === 0) {
693
+ i.value && (i.value.style.transitionDuration = "0ms", i.value.style.transform = a.sliderOrientation === "horizontal" ? `translate3d(${-Y}px, 0, 0)` : `translate3d(0, ${-Y}px, 0)`), l.value = Y, t.value = q, d.value = !1, a.autoplay && xe();
651
694
  return;
652
695
  }
653
- m.value = !0;
654
- const se = s.value, le = G - se, ge = performance.now(), fe = (ke) => {
655
- if (!a.value) return;
656
- const He = ke - ge, je = Math.min(1, He / l.slideDuration), Ue = 1 - Math.pow(1 - je, 3), Me = se + le * Ue;
657
- a.value.style.transform = l.sliderOrientation === "horizontal" ? `translate3d(${-Me}px, 0, 0)` : `translate3d(0, ${-Me}px, 0)`, s.value = Me, je < 1 ? W.value = requestAnimationFrame(fe) : (a.value.style.transform = l.sliderOrientation === "horizontal" ? `translate3d(${-G}px, 0, 0)` : `translate3d(0, ${-G}px, 0)`, s.value = G, t.value = K, m.value = !1, l.autoplay && he(), W.value = null);
696
+ d.value = !0;
697
+ const se = l.value, Q = Y - se, ce = performance.now(), de = (ue) => {
698
+ if (!i.value) return;
699
+ const me = ue - ce, Fe = Math.min(1, me / a.slideDuration), Ye = 1 - Math.pow(1 - Fe, 3), Oe = se + Q * Ye;
700
+ i.value.style.transform = a.sliderOrientation === "horizontal" ? `translate3d(${-Oe}px, 0, 0)` : `translate3d(0, ${-Oe}px, 0)`, l.value = Oe, Fe < 1 ? K.value = requestAnimationFrame(de) : (i.value.style.transform = a.sliderOrientation === "horizontal" ? `translate3d(${-Y}px, 0, 0)` : `translate3d(0, ${-Y}px, 0)`, l.value = Y, t.value = q, d.value = !1, a.autoplay && xe(), K.value = null);
658
701
  };
659
- W.value = requestAnimationFrame(fe);
660
- }, Q = () => {
661
- l.infinite && t.value >= u.value - b.value ? P(0) : P(t.value + 1);
662
- }, ue = () => {
663
- l.infinite && t.value <= 0 ? P(u.value - b.value) : P(t.value - 1);
664
- }, p = (C) => {
665
- P(C);
666
- }, x = (C) => {
667
- m.value && W.value && (l.autoplay && we(), cancelAnimationFrame(W.value), m.value = !1);
668
- const k = "touches" in C ? C.touches[0] : C;
669
- R.value = k.clientX, V.value = k.clientY, f.value = null, v.value = s.value, O.value = 0, M.value = 0, H.value = 0, N.value = performance.now(), r.value && (r.value.style.scrollSnapType = "none"), document.addEventListener("mousemove", L, { passive: !1 }), document.addEventListener("mouseup", ie), document.addEventListener("touchmove", L, { passive: !1 }), document.addEventListener("touchend", ie);
670
- }, L = (C) => {
671
- const k = "touches" in C ? C.touches[0] : C;
672
- if (!f.value) {
673
- const ge = Math.abs(k.clientX - R.value), fe = Math.abs(k.clientY - V.value), ke = 5;
674
- if (ge > ke || fe > ke)
675
- if (l.sliderOrientation === "horizontal")
676
- if (ge > fe)
677
- f.value = "horizontal", S.value = !0;
702
+ K.value = requestAnimationFrame(de);
703
+ }, L = () => {
704
+ a.infinite && t.value >= c.value - k.value ? y(0) : y(t.value + 1);
705
+ }, Z = () => {
706
+ a.infinite && t.value <= 0 ? y(c.value - k.value) : y(Math.max(0, t.value - 1));
707
+ }, we = (g) => {
708
+ y(g);
709
+ }, $e = (g) => {
710
+ d.value && K.value && (a.autoplay && Be(), cancelAnimationFrame(K.value), d.value = !1);
711
+ const C = "touches" in g ? g.touches[0] : g;
712
+ A.value = C.clientX, O.value = C.clientY, m.value = null, v.value = l.value, D.value = 0, V.value = 0, W.value = 0, F.value = performance.now(), o.value && (o.value.style.scrollSnapType = "none"), document.addEventListener("mousemove", ze, { passive: !1 }), document.addEventListener("mouseup", _e), document.addEventListener("touchmove", ze, { passive: !1 }), document.addEventListener("touchend", _e);
713
+ }, ze = (g) => {
714
+ const C = "touches" in g ? g.touches[0] : g;
715
+ if (!m.value) {
716
+ const ce = Math.abs(C.clientX - A.value), de = Math.abs(C.clientY - O.value), ue = 3;
717
+ if (ce > ue || de > ue)
718
+ if (a.sliderOrientation === "horizontal")
719
+ if (ce > de)
720
+ m.value = "horizontal", M.value = !0;
678
721
  else {
679
- Y();
722
+ Se();
680
723
  return;
681
724
  }
682
- else if (fe > ge)
683
- f.value = "vertical", S.value = !0;
725
+ else if (de > ce)
726
+ m.value = "vertical", M.value = !0;
684
727
  else {
685
- Y();
728
+ Se();
686
729
  return;
687
730
  }
688
731
  else
689
732
  return;
690
733
  }
691
- if (!S.value || !a.value || !r.value) return;
692
- C.cancelable && C.preventDefault();
693
- const E = performance.now(), F = E - N.value, J = l.sliderOrientation === "horizontal" ? k.clientX : k.clientY, K = l.sliderOrientation === "horizontal" ? R.value : V.value, ae = l.sliderOrientation === "horizontal" ? M.value || K : H.value || K, G = J - ae;
694
- F > 0 && (O.value = G / F * 1e3);
695
- const se = J - K;
696
- let le = v.value - se;
697
- le < 0 ? le = le * 0.3 : le > _.value && (le = _.value + (le - _.value) * 0.3), te.value = le, a.value.style.transform = l.sliderOrientation === "horizontal" ? `translate3d(${-te.value}px, 0, 0)` : `translate3d(0, ${-te.value}px, 0)`, l.sliderOrientation === "horizontal" ? M.value = J : H.value = J, N.value = E;
698
- }, Y = () => {
699
- document.removeEventListener("mousemove", L), document.removeEventListener("mouseup", ie), document.removeEventListener("touchmove", L), document.removeEventListener("touchend", ie);
700
- }, ie = () => {
701
- if (!S.value || !r.value || !a.value) return;
702
- const k = l.sliderOrientation === "horizontal" ? v.value - (M.value - R.value) : v.value - (H.value - V.value), E = Math.max(0, Math.min(k, _.value)), F = w() + I.value;
703
- if (S.value = !1, Y(), s.value = E, l.infinite) {
704
- if (k < 0) {
705
- P(u.value - 1);
734
+ if (!M.value || !i.value || !o.value) return;
735
+ g.cancelable && g.preventDefault();
736
+ const P = performance.now(), E = P - F.value, X = a.sliderOrientation === "horizontal" ? C.clientX : C.clientY, q = a.sliderOrientation === "horizontal" ? A.value : O.value, ne = a.sliderOrientation === "horizontal" ? V.value || q : W.value || q, Y = X - ne;
737
+ if (E > 0) {
738
+ const ce = Y / E * 1e3;
739
+ D.value = D.value * 0.7 + ce * 0.3;
740
+ }
741
+ const se = X - q;
742
+ let Q = v.value - se;
743
+ Q < 0 ? Q = Q * 0.4 : Q > p.value && (Q = p.value + (Q - p.value) * 0.4), ae.value = Q, i.value.style.transform = a.sliderOrientation === "horizontal" ? `translate3d(${-ae.value}px, 0, 0)` : `translate3d(0, ${-ae.value}px, 0)`, a.sliderOrientation === "horizontal" ? V.value = X : W.value = X, F.value = P;
744
+ }, Se = () => {
745
+ document.removeEventListener("mousemove", ze), document.removeEventListener("mouseup", _e), document.removeEventListener("touchmove", ze), document.removeEventListener("touchend", _e);
746
+ }, _e = () => {
747
+ if (!M.value || !o.value || !i.value) {
748
+ Se();
749
+ return;
750
+ }
751
+ const g = a.sliderOrientation === "horizontal", C = g ? v.value - (V.value - A.value) : v.value - (W.value - O.value), P = Math.max(0, Math.min(C, p.value)), E = le() + j.value;
752
+ if (M.value = !1, Se(), l.value = P, a.infinite) {
753
+ if (C < 0) {
754
+ y(c.value - 1);
706
755
  return;
707
- } else if (k > _.value) {
708
- P(0);
756
+ } else if (C > p.value) {
757
+ y(0);
709
758
  return;
710
759
  }
711
- } else if (k < 0) {
712
- P(0);
760
+ } else if (C < 0) {
761
+ y(0);
713
762
  return;
714
- } else if (k > _.value) {
715
- const G = Math.max(0, u.value - Math.floor(b.value));
716
- P(G);
763
+ } else if (C > p.value) {
764
+ const me = Math.max(0, c.value - Math.floor(k.value));
765
+ y(me);
717
766
  return;
718
767
  }
719
- const J = Math.max(0, u.value - Math.floor(b.value)), K = 100, ae = Math.round(E / F);
720
- if (Math.abs(O.value) > K) {
721
- const G = -Math.sign(O.value), se = ae + G;
722
- P(Math.max(0, Math.min(J, se)));
768
+ const X = Math.max(0, c.value - Math.floor(k.value)), q = 300, ne = 0.2, Y = Math.round(P / E), se = g ? V.value - A.value : W.value - O.value, Q = Math.abs(se), de = le() * ne;
769
+ let ue = Y;
770
+ if (Math.abs(D.value) > q) {
771
+ const me = -Math.sign(D.value);
772
+ ue = t.value + me;
773
+ } else if (Q > de) {
774
+ const me = se > 0 ? -1 : 1;
775
+ ue = t.value + me;
723
776
  } else
724
- P(Math.max(0, Math.min(J, ae)));
725
- }, ve = () => {
726
- !l.autoplay || Z.value !== null || (Z.value = setInterval(() => {
727
- Q();
728
- }, l.autoplayInterval));
729
- }, we = () => {
730
- Z.value !== null && (clearInterval(Z.value), Z.value = null);
731
- }, he = () => {
732
- we(), setTimeout(() => {
733
- ve();
777
+ ue = Y;
778
+ y(Math.max(0, Math.min(X, ue)));
779
+ }, De = () => {
780
+ !a.autoplay || J.value !== null || (J.value = setInterval(() => {
781
+ L();
782
+ }, a.autoplayInterval));
783
+ }, Be = () => {
784
+ J.value !== null && (clearInterval(J.value), J.value = null);
785
+ }, xe = () => {
786
+ Be(), setTimeout(() => {
787
+ De();
734
788
  }, 500);
735
- }, xe = h(null), qe = (C) => {
736
- if (!C || C.length === 0)
789
+ }, Ie = b(null), Xe = (g) => {
790
+ if (!g || g.length === 0)
737
791
  return;
738
- const { width: k } = C[0].contentRect;
739
- Math.abs(k - g.value) > 1 && (g.value = k);
740
- }, Fe = () => {
741
- if (!r.value || b.value <= 0 || (D(), u.value === 0)) return;
742
- const C = w();
743
- if (C <= 0) return;
744
- const k = Math.max(0, u.value - b.value), E = Math.min(Math.max(0, l.initialSlide), k), F = E * (C + I.value), J = _.value, K = Math.max(0, Math.min(F, J));
745
- a.value && (a.value.style.transitionDuration = "0ms", a.value.style.transform = l.sliderOrientation === "horizontal" ? `translate3d(${-K}px, 0, 0)` : `translate3d(0, ${-K}px, 0)`), s.value = K, t.value = E;
792
+ const { width: C } = g[0].contentRect;
793
+ Math.abs(C - h.value) > 1 && (h.value = C);
794
+ }, Ge = () => {
795
+ if (!o.value || k.value <= 0 || (G(), c.value === 0)) return;
796
+ const g = le();
797
+ if (g <= 0) return;
798
+ const C = Math.max(0, c.value - k.value), P = Math.min(Math.max(0, a.initialSlide), C), E = P * (g + j.value), X = p.value, q = Math.max(0, Math.min(E, X));
799
+ i.value && (i.value.style.transitionDuration = "0ms", i.value.style.transform = a.sliderOrientation === "horizontal" ? `translate3d(${-q}px, 0, 0)` : `translate3d(0, ${-q}px, 0)`), l.value = q, t.value = P;
746
800
  };
747
- let Le = !1;
748
- return de(() => {
749
- var k, E, F, J, K, ae, G, se;
750
- g.value = window.innerWidth;
751
- const C = q(u, (le) => {
752
- le > 0 && !Le && (Fe(), Le = !0, C());
801
+ let Ne = !1;
802
+ return pe(() => {
803
+ var C, P, E, X, q, ne, Y, se;
804
+ h.value = window.innerWidth;
805
+ const g = R(c, (Q) => {
806
+ Q > 0 && !Ne && (Ge(), Ne = !0, g());
753
807
  });
754
- l.autoplay && ve(), D(), r.value && (xe.value = new ResizeObserver(qe), xe.value.observe(r.value)), (k = r.value) == null || k.addEventListener("mousedown", x), (E = r.value) == null || E.addEventListener("touchstart", x, { passive: !0 }), l.showNavigationButtons && ((K = (J = (F = r.value) == null ? void 0 : F.parentElement) == null ? void 0 : J.querySelector(".absolute.flex.justify-between")) == null || K.addEventListener("click", he)), l.showIndicators && ((se = (G = (ae = r.value) == null ? void 0 : ae.parentElement) == null ? void 0 : G.querySelector(".bottom-5.flex.justify-center")) == null || se.addEventListener("click", he));
755
- }), Ee(() => {
756
- xe.value && xe.value.disconnect(), we();
757
- }), q(() => l.autoplay, (C) => {
758
- C ? ve() : we();
759
- }), q(() => l.autoplayInterval, he), q(() => l.initialSlide, (C) => {
760
- requestAnimationFrame(() => P(C, !0));
761
- }), q([b, I], () => {
808
+ a.autoplay && De(), G(), o.value && (Ie.value = new ResizeObserver(Xe), Ie.value.observe(o.value)), (C = o.value) == null || C.addEventListener("mousedown", $e), (P = o.value) == null || P.addEventListener("touchstart", $e, { passive: !1 }), a.showNavigationButtons && ((q = (X = (E = o.value) == null ? void 0 : E.parentElement) == null ? void 0 : X.querySelector(".absolute.flex.justify-between")) == null || q.addEventListener("click", xe)), a.showIndicators && ((se = (Y = (ne = o.value) == null ? void 0 : ne.parentElement) == null ? void 0 : Y.querySelector(".bottom-5.flex.justify-center")) == null || se.addEventListener("click", xe));
809
+ }), Re(() => {
810
+ Ie.value && Ie.value.disconnect(), Be();
811
+ }), R(() => a.autoplay, (g) => {
812
+ g ? De() : Be();
813
+ }), R(() => a.autoplayInterval, xe), R(() => a.initialSlide, (g) => {
814
+ requestAnimationFrame(() => y(g, !0));
815
+ }), R([k, j], () => {
816
+ requestAnimationFrame(() => {
817
+ requestAnimationFrame(() => {
818
+ if (G(), c.value === 0) return;
819
+ const g = Math.max(0, c.value - k.value), C = Math.min(t.value, g);
820
+ y(C, !0);
821
+ });
822
+ });
823
+ }), R(h, () => {
762
824
  requestAnimationFrame(() => {
763
825
  requestAnimationFrame(() => {
764
- if (D(), u.value === 0) return;
765
- const C = Math.max(0, u.value - b.value), k = Math.min(t.value, C);
766
- P(k, !0);
826
+ if (G(), c.value === 0) return;
827
+ const g = Math.max(0, c.value - k.value), C = Math.min(t.value, g);
828
+ y(C, !0);
767
829
  });
768
830
  });
769
- }), c({ scrollToSlide: P }), (C, k) => (o(), i("div", Pt, [
770
- n("div", {
831
+ }), n({ scrollToSlide: y }), (g, C) => (s(), r("div", {
832
+ class: "relative h-full",
833
+ style: be(I.value)
834
+ }, [
835
+ u("div", {
771
836
  ref_key: "carouselContainer",
772
- ref: r,
773
- class: $(["rounded w-full h-full carousel", [{ "carousel-horizontal": e.sliderOrientation == "horizontal" }, { "carousel-vertical": e.sliderOrientation == "vertical" }, { "cursor-grabbing !select-none": S.value }]]),
837
+ ref: o,
838
+ class: w(["rounded w-full h-full carousel", [{ "carousel-horizontal": e.sliderOrientation === "horizontal" }, { "carousel-vertical": e.sliderOrientation === "vertical" }, { "cursor-grabbing !select-none": M.value }]]),
774
839
  style: { scrollSnapType: "none" }
775
840
  }, [
776
- n("div", {
841
+ u("div", {
777
842
  ref_key: "slidesContainer",
778
- ref: a,
779
- class: $(["w-full h-full transition-transform duration-0 ease-out", e.sliderOrientation === "horizontal" ? "flex" : "block"]),
780
- style: Ie({ gap: `${I.value}px` })
843
+ ref: i,
844
+ class: w(["w-full h-full transition-transform duration-0 ease-out", e.sliderOrientation === "horizontal" ? "flex" : "block"]),
845
+ style: be(H.value)
781
846
  }, [
782
- B(C.$slots, "default", {}, void 0, !0)
847
+ $(g.$slots, "default", {}, void 0, !0)
783
848
  ], 6)
784
849
  ], 2),
785
- e.showNavigationButtons ? (o(), i("div", {
850
+ e.showNavigationButtons ? (s(), r("div", {
786
851
  key: 0,
787
- class: $([{ "top-1/2 right-5 left-5 z-10 absolute flex justify-between items-center -translate-y-1/2 transform": e.sliderOrientation === "horizontal" }, { "right-0 absolute flex justify-between items-center -translate-y-1/2 transform rotate-90 top-1/2 gap-3": e.sliderOrientation === "vertical" }])
852
+ class: w([{ "top-1/2 right-5 left-5 z-10 absolute flex justify-between items-center -translate-y-1/2 transform": e.sliderOrientation === "horizontal" }, { "right-0 absolute flex justify-between items-center -translate-y-1/2 transform rotate-90 top-1/2 gap-3": e.sliderOrientation === "vertical" }])
788
853
  }, [
789
- oe(Pe, { name: "fade" }, {
790
- default: be(() => [
791
- l.infinite || t.value > 0 ? (o(), i("div", Rt, [
792
- n("div", {
793
- onClick: ue,
854
+ re(qe, { name: "fade" }, {
855
+ default: ye(() => [
856
+ a.infinite || t.value > 0 ? (s(), r("div", Ft, [
857
+ u("div", {
858
+ onClick: Z,
794
859
  role: "button",
795
860
  "aria-label": "Previous Slide"
796
861
  }, [
797
- B(C.$slots, "prevButton", {}, () => [
798
- k[0] || (k[0] = n("button", {
862
+ $(g.$slots, "prevButton", {}, () => [
863
+ C[0] || (C[0] = u("button", {
799
864
  class: "btn btn-circle text-xs",
800
865
  tabindex: "-1"
801
866
  }, "❮", -1))
802
867
  ], !0)
803
868
  ])
804
- ])) : z("", !0)
869
+ ])) : S("", !0)
805
870
  ]),
806
871
  _: 3
807
872
  }),
808
- k[2] || (k[2] = n("div", { class: "flex-grow" }, null, -1)),
809
- oe(Pe, { name: "fade" }, {
810
- default: be(() => [
811
- l.infinite || t.value < u.value - b.value ? (o(), i("div", At, [
812
- n("div", {
813
- onClick: Q,
873
+ C[2] || (C[2] = u("div", { class: "flex-grow" }, null, -1)),
874
+ re(qe, { name: "fade" }, {
875
+ default: ye(() => [
876
+ a.infinite || t.value < c.value - k.value ? (s(), r("div", qt, [
877
+ u("div", {
878
+ onClick: L,
814
879
  role: "button",
815
880
  "aria-label": "Next Slide"
816
881
  }, [
817
- B(C.$slots, "nextButton", {}, () => [
818
- k[1] || (k[1] = n("button", {
882
+ $(g.$slots, "nextButton", {}, () => [
883
+ C[1] || (C[1] = u("button", {
819
884
  class: "btn btn-circle text-xs",
820
885
  tabindex: "-1"
821
886
  }, "❯", -1))
822
887
  ], !0)
823
888
  ])
824
- ])) : z("", !0)
889
+ ])) : S("", !0)
825
890
  ]),
826
891
  _: 3
827
892
  })
828
- ], 2)) : z("", !0),
829
- e.showIndicators ? (o(), i("div", Nt, [
830
- (o(!0), i(A, null, X(u.value, (E, F) => (o(), i("button", {
831
- key: `dot-${F}`,
832
- onClick: (J) => p(F),
833
- class: $(["btn btn-circle btn-xs", { "btn-active": F === t.value }]),
834
- "aria-label": `Go to slide ${F + 1}`
835
- }, null, 10, qt))), 128))
836
- ])) : z("", !0)
837
- ]));
893
+ ], 2)) : S("", !0),
894
+ e.showIndicators ? (s(), r("div", Wt, [
895
+ (s(!0), r(N, null, U(c.value, (P, E) => (s(), r("button", {
896
+ key: `dot-${E}`,
897
+ onClick: (X) => we(E),
898
+ class: w(["btn btn-circle btn-xs", { "btn-active": E === t.value }]),
899
+ "aria-label": `Go to slide ${E + 1}`
900
+ }, null, 10, Ht))), 128))
901
+ ])) : S("", !0)
902
+ ], 4));
838
903
  }
839
- }), re = (e, c) => {
840
- const l = e.__vccOpts || e;
841
- for (const [t, r] of c)
842
- l[t] = r;
843
- return l;
844
- }, Fa = /* @__PURE__ */ re(Ft, [["__scopeId", "data-v-d9ad9601"]]), Ht = /* @__PURE__ */ j({
904
+ }), ve = (e, n) => {
905
+ const a = e.__vccOpts || e;
906
+ for (const [t, o] of n)
907
+ a[t] = o;
908
+ return a;
909
+ }, Bn = /* @__PURE__ */ ve(Ut, [["__scopeId", "data-v-5a0871a3"]]), Kt = /* @__PURE__ */ z({
845
910
  __name: "carouselItem",
846
911
  setup(e) {
847
- const c = Ye(Ne, h({}));
848
- return (l, t) => (o(), i("div", {
912
+ const n = Qe(Ke, b({}));
913
+ return (a, t) => (s(), r("div", {
849
914
  class: "w-full h-full carousel-item",
850
- style: Ie(ee(c))
915
+ style: be(te(n))
851
916
  }, [
852
- B(l.$slots, "default", {}, void 0, !0)
917
+ $(a.$slots, "default", {}, void 0, !0)
853
918
  ], 4));
854
919
  }
855
- }), Ha = /* @__PURE__ */ re(Ht, [["__scopeId", "data-v-507384bc"]]), Ut = { class: "flex gap-4 bg-base-100 w-full tabs tabs-boxed" }, Wt = ["onClick"], Kt = {
920
+ }), In = /* @__PURE__ */ ve(Kt, [["__scopeId", "data-v-507384bc"]]), Xt = {
921
+ key: 0,
922
+ class: "chat-image"
923
+ }, Gt = {
924
+ key: 1,
925
+ class: "chat-header"
926
+ }, Yt = {
927
+ key: 2,
928
+ class: "chat-footer"
929
+ }, Mn = /* @__PURE__ */ z({
930
+ __name: "chat",
931
+ props: {
932
+ position: {},
933
+ color: {}
934
+ },
935
+ setup(e) {
936
+ const n = e, a = _(() => `chat chat-${n.position}`), t = _(() => {
937
+ const o = ["chat-bubble"];
938
+ return n.color && o.push(`chat-bubble-${n.color}`), o.join(" ");
939
+ });
940
+ return (o, i) => (s(), r("div", {
941
+ class: w(a.value)
942
+ }, [
943
+ o.$slots.image ? (s(), r("div", Xt, [
944
+ $(o.$slots, "image")
945
+ ])) : S("", !0),
946
+ o.$slots.header ? (s(), r("div", Gt, [
947
+ $(o.$slots, "header")
948
+ ])) : S("", !0),
949
+ u("div", {
950
+ class: w(t.value)
951
+ }, [
952
+ $(o.$slots, "default")
953
+ ], 2),
954
+ o.$slots.footer ? (s(), r("div", Yt, [
955
+ $(o.$slots, "footer")
956
+ ])) : S("", !0)
957
+ ], 2));
958
+ }
959
+ }), Jt = { class: "countdown" }, Zt = ["aria-label"], Tn = /* @__PURE__ */ z({
960
+ __name: "countdown",
961
+ props: {
962
+ value: {}
963
+ },
964
+ setup(e) {
965
+ return (n, a) => (s(), r("span", Jt, [
966
+ u("span", {
967
+ style: be({ "--value": e.value }),
968
+ "aria-label": String(e.value),
969
+ "aria-live": "polite"
970
+ }, T(e.value), 13, Zt)
971
+ ]));
972
+ }
973
+ }), Vn = /* @__PURE__ */ z({
974
+ __name: "kbd",
975
+ props: {
976
+ size: {}
977
+ },
978
+ setup(e) {
979
+ const n = e, a = _(() => {
980
+ const t = ["kbd"];
981
+ return n.size && t.push(`kbd-${n.size}`), t.join(" ");
982
+ });
983
+ return (t, o) => (s(), r("kbd", {
984
+ class: w(a.value)
985
+ }, [
986
+ $(t.$slots, "default")
987
+ ], 2));
988
+ }
989
+ }), jn = /* @__PURE__ */ z({
990
+ __name: "stats",
991
+ props: {
992
+ vertical: { type: Boolean, default: !1 },
993
+ horizontal: { type: Boolean, default: !1 }
994
+ },
995
+ setup(e) {
996
+ const n = e, a = _(() => {
997
+ const t = ["stats"];
998
+ return n.vertical ? t.push("stats-vertical") : n.horizontal && t.push("stats-horizontal"), t.join(" ");
999
+ });
1000
+ return (t, o) => (s(), r("div", {
1001
+ class: w(a.value)
1002
+ }, [
1003
+ $(t.$slots, "default")
1004
+ ], 2));
1005
+ }
1006
+ }), Qt = { class: "stat" }, ea = {
1007
+ key: 0,
1008
+ class: "stat-figure"
1009
+ }, ta = {
1010
+ key: 1,
1011
+ class: "stat-title"
1012
+ }, aa = {
1013
+ key: 2,
1014
+ class: "stat-value"
1015
+ }, la = {
1016
+ key: 3,
1017
+ class: "stat-desc"
1018
+ }, na = {
1019
+ key: 4,
1020
+ class: "stat-actions"
1021
+ }, Dn = /* @__PURE__ */ z({
1022
+ __name: "stat",
1023
+ props: {
1024
+ title: {},
1025
+ value: {},
1026
+ desc: {}
1027
+ },
1028
+ setup(e) {
1029
+ return (n, a) => (s(), r("div", Qt, [
1030
+ n.$slots.figure ? (s(), r("div", ea, [
1031
+ $(n.$slots, "figure")
1032
+ ])) : S("", !0),
1033
+ e.title ? (s(), r("div", ta, T(e.title), 1)) : S("", !0),
1034
+ e.value ? (s(), r("div", aa, T(e.value), 1)) : S("", !0),
1035
+ e.desc ? (s(), r("div", la, T(e.desc), 1)) : S("", !0),
1036
+ n.$slots.actions ? (s(), r("div", na, [
1037
+ $(n.$slots, "actions")
1038
+ ])) : S("", !0)
1039
+ ]));
1040
+ }
1041
+ }), sa = { class: "overflow-x-auto" }, On = /* @__PURE__ */ z({
1042
+ __name: "table",
1043
+ props: {
1044
+ zebra: { type: Boolean, default: !1 },
1045
+ pinRows: { type: Boolean, default: !1 },
1046
+ pinCols: { type: Boolean, default: !1 },
1047
+ size: {}
1048
+ },
1049
+ setup(e) {
1050
+ const n = e, a = _(() => {
1051
+ const t = ["table"];
1052
+ return n.zebra && t.push("table-zebra"), n.pinRows && t.push("table-pin-rows"), n.pinCols && t.push("table-pin-cols"), n.size && t.push(`table-${n.size}`), t.join(" ");
1053
+ });
1054
+ return (t, o) => (s(), r("div", sa, [
1055
+ u("table", {
1056
+ class: w(a.value)
1057
+ }, [
1058
+ $(t.$slots, "default")
1059
+ ], 2)
1060
+ ]));
1061
+ }
1062
+ }), Pn = /* @__PURE__ */ z({
1063
+ __name: "timeline",
1064
+ props: {
1065
+ vertical: { type: Boolean, default: !1 },
1066
+ horizontal: { type: Boolean, default: !1 },
1067
+ compact: { type: Boolean, default: !1 },
1068
+ snapIcon: { type: Boolean, default: !1 }
1069
+ },
1070
+ setup(e) {
1071
+ const n = e, a = _(() => {
1072
+ const t = ["timeline"];
1073
+ return n.vertical ? t.push("timeline-vertical") : n.horizontal && t.push("timeline-horizontal"), n.compact && t.push("timeline-compact"), n.snapIcon && t.push("timeline-snap-icon"), t.join(" ");
1074
+ });
1075
+ return (t, o) => (s(), r("ul", {
1076
+ class: w(a.value)
1077
+ }, [
1078
+ $(t.$slots, "default")
1079
+ ], 2));
1080
+ }
1081
+ }), oa = { class: "flex gap-4 bg-base-100 w-full tabs tabs-boxed" }, ia = ["onClick"], ra = {
856
1082
  key: 0,
857
1083
  class: "inline-component-wrapper flex grow justify-center items-center w-full h-full"
858
- }, Xt = {
1084
+ }, ua = {
859
1085
  key: 1,
860
1086
  class: "flex flex-col"
861
- }, Yt = { class: "text-sm" }, Gt = {
1087
+ }, ca = { class: "text-sm" }, da = {
862
1088
  key: 0,
863
1089
  class: "opacity-75 overflow-hidden text-xs truncate ..."
864
- }, Jt = {
1090
+ }, fa = {
865
1091
  key: 1,
866
1092
  class: "hidden md:block opacity-35 overflow-hidden text-xs truncate ..."
867
- }, Zt = { class: "hidden" }, Qt = ["id"], el = { class: "modal-box" }, tl = { class: "font-bold text-lg" }, ll = ["name", "checked"], al = { class: "collapse-title flex justify-between items-center pr-4 w-full font-medium text-xl" }, nl = {
1093
+ }, va = { class: "hidden" }, ma = ["id"], pa = { class: "modal-box" }, ha = { class: "font-bold text-lg" }, ga = ["name", "checked"], ba = { class: "collapse-title flex justify-between items-center pr-4 w-full font-medium text-xl" }, ya = {
868
1094
  key: 0,
869
1095
  class: "opacity-75 overflow-hidden text-sm truncate ..."
870
- }, ol = {
1096
+ }, wa = {
871
1097
  key: 1,
872
1098
  class: "opacity-35 text-sm"
873
- }, sl = { class: "collapse-content flex place-content-center p-0" }, il = /* @__PURE__ */ j({
1099
+ }, $a = { class: "collapse-content flex place-content-center p-0" }, xa = /* @__PURE__ */ z({
874
1100
  __name: "advancedSearch",
875
1101
  props: {
876
1102
  searchOptions: {},
@@ -879,121 +1105,121 @@ const pt = ye("SunIcon", [
879
1105
  value: {}
880
1106
  },
881
1107
  emits: ["search", "update:search-data"],
882
- setup(e, { emit: c }) {
883
- const l = e, t = c, r = l.id ?? `advancedSearch-${Ge()}`, a = h(null), s = h(null), m = {
884
- datetime: ze(() => Promise.resolve().then(() => $l)),
885
- "standard-select": ze(() => import("./select-Cz4vf_YE.js")),
1108
+ setup(e, { emit: n }) {
1109
+ const a = e, t = n, o = a.id ?? `advancedSearch-${et()}`, i = b(null), l = b(null), d = {
1110
+ datetime: Pe(() => Promise.resolve().then(() => Ea)),
1111
+ "standard-select": Pe(() => import("./select-Cz4vf_YE.js")),
886
1112
  // Add other components here when you create them:
887
1113
  // 'custom-range': defineAsyncComponent(() => import('./CustomRange.vue')),
888
1114
  // 'custom-number': defineAsyncComponent(() => import('./CustomNumber.vue')),
889
- "custom-text": ze(() => import("./inputField-BxT95oyM.js"))
1115
+ "custom-text": Pe(() => import("./inputField-BxT95oyM.js"))
890
1116
  // 'custom-select': defineAsyncComponent(() => import('./CustomSelect.vue')),
891
- }, u = h({}), g = h({
1117
+ }, c = b({}), h = b({
892
1118
  left: "0px",
893
1119
  top: "0px",
894
1120
  transform: "translateX(0%)"
895
- }), S = h(null), R = (f) => {
896
- var y;
897
- if (f.value === void 0 || f.value === null || f.value === "")
1121
+ }), M = b(null), A = (m) => {
1122
+ var x;
1123
+ if (m.value === void 0 || m.value === null || m.value === "")
898
1124
  return "";
899
- switch (f.type) {
1125
+ switch (m.type) {
900
1126
  case "datetime":
901
- if (typeof f.value == "string")
1127
+ if (typeof m.value == "string")
902
1128
  try {
903
- const b = new Date(f.value);
904
- if (!isNaN(b.getTime()))
905
- return b.toLocaleString();
1129
+ const k = new Date(m.value);
1130
+ if (!isNaN(k.getTime()))
1131
+ return k.toLocaleString();
906
1132
  } catch {
907
1133
  }
908
- else if (f.range && typeof f.value == "object" && f.value !== null && "start" in f.value && "end" in f.value)
1134
+ else if (m.range && typeof m.value == "object" && m.value !== null && "start" in m.value && "end" in m.value)
909
1135
  try {
910
- const b = new Date(f.value.start), I = new Date(f.value.end);
911
- if (!isNaN(b.getTime()) && !isNaN(I.getTime()))
912
- return `${b.toLocaleDateString()} - ${I.toLocaleDateString()}`;
1136
+ const k = new Date(m.value.start), j = new Date(m.value.end);
1137
+ if (!isNaN(k.getTime()) && !isNaN(j.getTime()))
1138
+ return `${k.toLocaleDateString()} - ${j.toLocaleDateString()}`;
913
1139
  } catch {
914
1140
  }
915
1141
  break;
916
1142
  case "custom-range":
917
- if (typeof f.value == "object" && f.value !== null && "start" in f.value && "end" in f.value)
918
- return `${f.value.start} - ${f.value.end}`;
1143
+ if (typeof m.value == "object" && m.value !== null && "start" in m.value && "end" in m.value)
1144
+ return `${m.value.start} - ${m.value.end}`;
919
1145
  break;
920
1146
  case "custom-number":
921
- if (typeof f.value == "number")
922
- return f.value.toString();
1147
+ if (typeof m.value == "number")
1148
+ return m.value.toString();
923
1149
  break;
924
1150
  case "standard-select":
925
1151
  case "custom-select":
926
- if ((y = f.props) != null && y.options && Array.isArray(f.props.options)) {
927
- const b = f.props.options.find(
928
- (I) => I.value === f.value
1152
+ if ((x = m.props) != null && x.options && Array.isArray(m.props.options)) {
1153
+ const k = m.props.options.find(
1154
+ (j) => j.value === m.value
929
1155
  );
930
- if (b)
931
- return b.text;
1156
+ if (k)
1157
+ return k.text;
932
1158
  }
933
- return String(f.value);
1159
+ return String(m.value);
934
1160
  case "custom-text":
935
- if (typeof f.value == "string")
936
- return f.value;
1161
+ if (typeof m.value == "string")
1162
+ return m.value;
937
1163
  break;
938
1164
  }
939
- return String(f.value);
1165
+ return String(m.value);
940
1166
  };
941
- function V(f) {
942
- var d, D;
943
- const y = (d = a.value) == null ? void 0 : d.name;
944
- if (!y) {
1167
+ function O(m) {
1168
+ var f, B;
1169
+ const x = (f = i.value) == null ? void 0 : f.name;
1170
+ if (!x) {
945
1171
  console.warn("componentValueUpdated called but no active tab.");
946
1172
  return;
947
1173
  }
948
- const b = (D = l.searchOptions.find(
949
- (w) => (w == null ? void 0 : w.category) === l.currentCategory
950
- )) == null ? void 0 : D.tabs, I = b == null ? void 0 : b.find(
951
- (w) => w.name === y
1174
+ const k = (B = a.searchOptions.find(
1175
+ (I) => (I == null ? void 0 : I.category) === a.currentCategory
1176
+ )) == null ? void 0 : B.tabs, j = k == null ? void 0 : k.find(
1177
+ (I) => I.name === x
952
1178
  );
953
- I ? (I.value = f, t("update:search-data", {
954
- tab: I.name,
955
- data: f
1179
+ j ? (j.value = m, t("update:search-data", {
1180
+ tab: j.name,
1181
+ data: m
956
1182
  })) : console.error(
957
- `Tab with name "${y}" not found in current category.`
1183
+ `Tab with name "${x}" not found in current category.`
958
1184
  );
959
1185
  }
960
- function v(f) {
961
- V(f);
1186
+ function v(m) {
1187
+ O(m);
962
1188
  }
963
- function O() {
1189
+ function D() {
964
1190
  t("search");
965
1191
  }
966
- async function M(f) {
967
- var I;
968
- const y = document.getElementById(`advancedSearchMobile-${r}`), b = y && y.contains(f.target);
969
- ((I = a.value) == null ? void 0 : I.displayMode) === "popup" && S.value && !S.value.contains(f.target) && !b && (await me(), a.value = null);
1192
+ async function V(m) {
1193
+ var j;
1194
+ const x = document.getElementById(`advancedSearchMobile-${o}`), k = x && x.contains(m.target);
1195
+ ((j = i.value) == null ? void 0 : j.displayMode) === "popup" && M.value && !M.value.contains(m.target) && !k && (await he(), i.value = null);
970
1196
  }
971
- async function H() {
1197
+ async function W() {
972
1198
  if (typeof window < "u" && window.innerWidth <= 768) {
973
- const f = document.getElementById(
974
- `advancedSearchMobile-${r}`
1199
+ const m = document.getElementById(
1200
+ `advancedSearchMobile-${o}`
975
1201
  );
976
- f ? (a.value = null, f.showModal()) : console.warn(
977
- `Mobile modal element not found. Ensure it exists with id="advancedSearchMobile-${r}".`
1202
+ m ? (i.value = null, m.showModal()) : console.warn(
1203
+ `Mobile modal element not found. Ensure it exists with id="advancedSearchMobile-${o}".`
978
1204
  );
979
1205
  }
980
1206
  }
981
- async function N(f) {
982
- var b, I, d;
1207
+ async function F(m) {
1208
+ var k, j, f;
983
1209
  if (typeof window < "u" && window.innerWidth <= 768) {
984
- H();
1210
+ W();
985
1211
  return;
986
1212
  }
987
- const y = f.displayMode ?? "popup";
988
- if (((b = a.value) == null ? void 0 : b.name) === f.name && ((I = a.value) == null ? void 0 : I.displayMode) === y)
989
- a.value = null;
990
- else if (a.value = { ...f, displayMode: y }, await me(), ((d = a.value) == null ? void 0 : d.displayMode) === "popup") {
991
- const D = u.value[f.name];
992
- if (D && S.value) {
993
- const w = D.getBoundingClientRect(), _ = S.value.getBoundingClientRect(), P = w.bottom - _.top, Q = w.left + w.width / 2 - _.left;
994
- g.value = {
995
- left: `${Q}px`,
996
- top: `${P + 8}px`,
1213
+ const x = m.displayMode ?? "popup";
1214
+ if (((k = i.value) == null ? void 0 : k.name) === m.name && ((j = i.value) == null ? void 0 : j.displayMode) === x)
1215
+ i.value = null;
1216
+ else if (i.value = { ...m, displayMode: x }, await he(), ((f = i.value) == null ? void 0 : f.displayMode) === "popup") {
1217
+ const B = c.value[m.name];
1218
+ if (B && M.value) {
1219
+ const I = B.getBoundingClientRect(), H = M.value.getBoundingClientRect(), ee = I.bottom - H.top, G = I.left + I.width / 2 - H.left;
1220
+ h.value = {
1221
+ left: `${G}px`,
1222
+ top: `${ee + 8}px`,
997
1223
  // Add a small gap
998
1224
  transform: "translateX(-50%)"
999
1225
  // Center horizontally
@@ -1001,198 +1227,224 @@ const pt = ye("SunIcon", [
1001
1227
  } else
1002
1228
  console.error(
1003
1229
  "Tab element or search container not found for positioning:",
1004
- f.name
1230
+ m.name
1005
1231
  );
1006
1232
  }
1007
1233
  }
1008
- const W = (f) => {
1009
- const y = f.relatedTarget;
1234
+ const K = (m) => {
1235
+ const x = m.relatedTarget;
1010
1236
  setTimeout(() => {
1011
- var b;
1012
- ((b = a.value) == null ? void 0 : b.displayMode) === "inline" && S.value && (!y || !S.value.contains(y)) ? (console.log("Blur detected outside container, closing inline view."), a.value = null) : console.log(
1237
+ var k;
1238
+ ((k = i.value) == null ? void 0 : k.displayMode) === "inline" && M.value && (!x || !M.value.contains(x)) ? (console.log("Blur detected outside container, closing inline view."), i.value = null) : console.log(
1013
1239
  "Blur detected, but staying within container or not an inline tab."
1014
1240
  );
1015
1241
  }, 50);
1016
- }, Z = () => {
1017
- console.log("Enter key pressed on inline component, closing inline view."), a.value = null;
1242
+ }, J = () => {
1243
+ console.log("Enter key pressed on inline component, closing inline view."), i.value = null;
1018
1244
  };
1019
- q(s, (f) => {
1020
- var y;
1245
+ R(l, (m) => {
1246
+ var x;
1021
1247
  console.log(
1022
1248
  "advanced-search: inlineComponentRef changed. New Value:",
1023
- f
1024
- ), console.log("advanced-search: activeTab.value:", a.value), f && ((y = a.value) == null ? void 0 : y.displayMode) === "inline" ? (console.log(
1249
+ m
1250
+ ), console.log("advanced-search: activeTab.value:", i.value), m && ((x = i.value) == null ? void 0 : x.displayMode) === "inline" ? (console.log(
1025
1251
  "advanced-search: Inline component ref is available and active tab is inline. Attempting to focus child input..."
1026
- ), me(() => {
1252
+ ), he(() => {
1027
1253
  console.log(
1028
1254
  "advanced-search: Inside nextTick. Attempting to call child's focus method..."
1029
- ), console.log("advanced-search: Type of newValue:", typeof f), console.log(
1255
+ ), console.log("advanced-search: Type of newValue:", typeof m), console.log(
1030
1256
  "advanced-search: Does newValue have focusInput?",
1031
- typeof f.focusInput == "function"
1032
- ), f && typeof f.focusInput == "function" ? (console.log(
1257
+ typeof m.focusInput == "function"
1258
+ ), m && typeof m.focusInput == "function" ? (console.log(
1033
1259
  "advanced-search: Calling exposed focusInput() method on child instance."
1034
- ), f.focusInput()) : console.warn(
1260
+ ), m.focusInput()) : console.warn(
1035
1261
  'advanced-search: Child inline component instance does not expose a "focusInput" method or is not ready.',
1036
- f
1262
+ m
1037
1263
  );
1038
1264
  })) : console.log(
1039
- f ? "advanced-search: inlineComponentRef available, but active tab is not inline." : "advanced-search: inlineComponentRef is now null (component likely unmounted)."
1265
+ m ? "advanced-search: inlineComponentRef available, but active tab is not inline." : "advanced-search: inlineComponentRef is now null (component likely unmounted)."
1040
1266
  );
1041
- }), de(() => {
1042
- document.addEventListener("click", M), window.addEventListener("resize", te);
1043
- }), Ve(() => {
1044
- document.removeEventListener("click", M), window.removeEventListener("resize", te);
1267
+ }), pe(() => {
1268
+ document.addEventListener("click", V), window.addEventListener("resize", ae);
1269
+ }), Ee(() => {
1270
+ document.removeEventListener("click", V), window.removeEventListener("resize", ae);
1045
1271
  });
1046
- const te = () => {
1047
- var f, y;
1272
+ const ae = () => {
1273
+ var m, x;
1048
1274
  if (typeof window < "u") {
1049
- const b = window.innerWidth <= 768, I = a.value !== null && (a.value.displayMode === "popup" || a.value.displayMode === "inline") && window.innerWidth > 768;
1050
- !b && (((f = a.value) == null ? void 0 : f.displayMode) === "popup" || ((y = a.value) == null ? void 0 : y.displayMode) === "inline") && window.innerWidth <= 768 && (console.log("Resizing to mobile, closing active tab."), a.value = null), b && !I && a.value !== null && (console.log(
1275
+ const k = window.innerWidth <= 768, j = i.value !== null && (i.value.displayMode === "popup" || i.value.displayMode === "inline") && window.innerWidth > 768;
1276
+ !k && (((m = i.value) == null ? void 0 : m.displayMode) === "popup" || ((x = i.value) == null ? void 0 : x.displayMode) === "inline") && window.innerWidth <= 768 && (console.log("Resizing to mobile, closing active tab."), i.value = null), k && !j && i.value !== null && (console.log(
1051
1277
  "Resizing to desktop from potential mobile active state, closing active tab."
1052
- ), a.value = null);
1053
- const d = document.getElementById(
1054
- `advancedSearchMobile-${r}`
1278
+ ), i.value = null);
1279
+ const f = document.getElementById(
1280
+ `advancedSearchMobile-${o}`
1055
1281
  );
1056
- d != null && d.open && !b && (console.log("Modal is open on desktop, closing modal and active tab."), d.close(), a.value = null);
1282
+ f != null && f.open && !k && (console.log("Modal is open on desktop, closing modal and active tab."), f.close(), i.value = null);
1057
1283
  }
1058
1284
  };
1059
- return (f, y) => {
1060
- var b, I;
1061
- return o(), i(A, null, [
1062
- n("div", {
1285
+ return (m, x) => {
1286
+ var k, j;
1287
+ return s(), r(N, null, [
1288
+ u("div", {
1063
1289
  ref_key: "searchContainer",
1064
- ref: S,
1290
+ ref: M,
1065
1291
  class: "w-full"
1066
1292
  }, [
1067
- n("div", {
1293
+ u("div", {
1068
1294
  class: "group/search relative flex place-items-center shadow-md p-2 border-2 border-base-300/25 rounded-sm w-full transition-all cursor-pointer md:cursor-auto",
1069
- onClick: H
1295
+ onClick: W
1070
1296
  }, [
1071
- n("div", Ut, [
1072
- (o(!0), i(A, null, X(((b = l.searchOptions.find(
1073
- (d) => d.category === l.currentCategory
1074
- )) == null ? void 0 : b.tabs) || [], (d, D) => {
1075
- var w, _, P, Q, ue;
1076
- return o(), i("button", {
1077
- key: `${d.name}-${D}`,
1078
- onClick: ne((p) => N(d), ["stop"]),
1079
- class: $([{
1080
- "tab-active": ((w = a.value) == null ? void 0 : w.name) === d.name,
1081
- "tab-active-inline": ((_ = a.value) == null ? void 0 : _.name) === d.name && ((P = a.value) == null ? void 0 : P.displayMode) === "inline"
1297
+ u("div", oa, [
1298
+ (s(!0), r(N, null, U(((k = a.searchOptions.find(
1299
+ (f) => f.category === a.currentCategory
1300
+ )) == null ? void 0 : k.tabs) || [], (f, B) => {
1301
+ var I, H, ee, G, le;
1302
+ return s(), r("button", {
1303
+ key: `${f.name}-${B}`,
1304
+ onClick: oe((p) => F(f), ["stop"]),
1305
+ class: w([{
1306
+ "tab-active": ((I = i.value) == null ? void 0 : I.name) === f.name,
1307
+ "tab-active-inline": ((H = i.value) == null ? void 0 : H.name) === f.name && ((ee = i.value) == null ? void 0 : ee.displayMode) === "inline"
1082
1308
  // Add new class
1083
1309
  }, "group/searchitem after:top-0 after:-right-2 after:absolute relative first-of-type:flex-auto last-of-type:flex-auto after:bg-base-200 hover:bg-base-200 p-1 rounded-sm w-auto after:w-px after:h-10 overflow-x-hidden text-start md:after:content-[''] after:content-none last-of-type:after:content-none"]),
1084
1310
  ref_for: !0,
1085
- ref: (p) => u.value[d.name] = p
1311
+ ref: (p) => c.value[f.name] = p
1086
1312
  }, [
1087
- ((Q = a.value) == null ? void 0 : Q.name) === d.name && ((ue = a.value) == null ? void 0 : ue.displayMode) === "inline" ? (o(), i("div", Kt, [
1088
- (o(), ce(Te(m[a.value.type]), Be({ ref_for: !0 }, a.value.props || {}, {
1089
- modelValue: a.value.value,
1090
- onUpdated: y[0] || (y[0] = (p) => v(p)),
1091
- "onUpdate:modelValue": y[1] || (y[1] = (p) => v(p)),
1092
- onBlur: W,
1093
- onKeydown: pe(ne(Z, ["stop", "prevent"]), ["enter"]),
1313
+ ((G = i.value) == null ? void 0 : G.name) === f.name && ((le = i.value) == null ? void 0 : le.displayMode) === "inline" ? (s(), r("div", ra, [
1314
+ (s(), fe(Ve(d[i.value.type]), ie({ ref_for: !0 }, i.value.props || {}, {
1315
+ modelValue: i.value.value,
1316
+ onUpdated: x[0] || (x[0] = (p) => v(p)),
1317
+ "onUpdate:modelValue": x[1] || (x[1] = (p) => v(p)),
1318
+ onBlur: K,
1319
+ onKeydown: ge(oe(J, ["stop", "prevent"]), ["enter"]),
1094
1320
  ref_for: !0,
1095
1321
  ref_key: "inlineComponentRef",
1096
- ref: s
1322
+ ref: l
1097
1323
  }), null, 16, ["modelValue", "onKeydown"]))
1098
- ])) : (o(), i("div", Xt, [
1099
- n("p", Yt, T(d.name), 1),
1100
- d.value !== void 0 && d.value !== null && d.value !== "" ? (o(), i("p", Gt, T(R(d)), 1)) : (o(), i("p", Jt, T(d.description), 1))
1324
+ ])) : (s(), r("div", ua, [
1325
+ u("p", ca, T(f.name), 1),
1326
+ f.value !== void 0 && f.value !== null && f.value !== "" ? (s(), r("p", da, T(A(f)), 1)) : (s(), r("p", fa, T(f.description), 1))
1101
1327
  ]))
1102
- ], 10, Wt);
1328
+ ], 10, ia);
1103
1329
  }), 128))
1104
1330
  ]),
1105
- a.value && a.value.displayMode === "popup" ? (o(), i("div", {
1331
+ i.value && i.value.displayMode === "popup" ? (s(), r("div", {
1106
1332
  key: 0,
1107
1333
  class: "absolute flex shadow-sm mt-4 w-fit max-w-full transition-all tab-content",
1108
- style: Ie(g.value)
1334
+ style: be(h.value)
1109
1335
  }, [
1110
- (o(), ce(Te(m[a.value.type]), Be(a.value.props || {}, {
1111
- modelValue: a.value.value,
1112
- onUpdated: y[2] || (y[2] = (d) => V(d)),
1113
- "onUpdate:modelValue": y[3] || (y[3] = (d) => V(d))
1336
+ (s(), fe(Ve(d[i.value.type]), ie(i.value.props || {}, {
1337
+ modelValue: i.value.value,
1338
+ onUpdated: x[2] || (x[2] = (f) => O(f)),
1339
+ "onUpdate:modelValue": x[3] || (x[3] = (f) => O(f))
1114
1340
  }), null, 16, ["modelValue"]))
1115
- ], 4)) : z("", !0),
1116
- n("button", {
1341
+ ], 4)) : S("", !0),
1342
+ u("button", {
1117
1343
  title: "search",
1118
1344
  type: "submit",
1119
1345
  class: "ml-1 btn btn-primary btn-square",
1120
- onClick: ne(O, ["stop"])
1346
+ onClick: oe(D, ["stop"])
1121
1347
  }, [
1122
- oe(ee(Re), {
1348
+ re(te(We), {
1123
1349
  size: 24,
1124
1350
  color: "white"
1125
1351
  })
1126
1352
  ])
1127
1353
  ]),
1128
- n("div", Zt, [
1129
- n("button", {
1354
+ u("div", va, [
1355
+ u("button", {
1130
1356
  title: "search",
1131
- onClick: y[4] || (y[4] = () => {
1357
+ onClick: x[4] || (x[4] = () => {
1132
1358
  })
1133
1359
  }, [
1134
- oe(ee(Re), {
1360
+ re(te(We), {
1135
1361
  size: 24,
1136
1362
  color: "white"
1137
1363
  })
1138
1364
  ])
1139
1365
  ])
1140
1366
  ], 512),
1141
- n("dialog", {
1142
- id: `advancedSearchMobile-${ee(r)}`,
1367
+ u("dialog", {
1368
+ id: `advancedSearchMobile-${te(o)}`,
1143
1369
  class: "modal"
1144
1370
  }, [
1145
- n("div", el, [
1146
- B(f.$slots, "additionalForMobile", {}, () => [
1147
- n("h3", tl, T(e.currentCategory), 1)
1371
+ u("div", pa, [
1372
+ $(m.$slots, "additionalForMobile", {}, () => [
1373
+ u("h3", ha, T(e.currentCategory), 1)
1148
1374
  ], !0),
1149
- (o(!0), i(A, null, X(((I = l.searchOptions.find(
1150
- (d) => d.category === l.currentCategory
1151
- )) == null ? void 0 : I.tabs) || [], (d, D) => (o(), i("div", {
1375
+ (s(!0), r(N, null, U(((j = a.searchOptions.find(
1376
+ (f) => f.category === a.currentCategory
1377
+ )) == null ? void 0 : j.tabs) || [], (f, B) => (s(), r("div", {
1152
1378
  class: "collapse bg-base-200 my-4",
1153
- key: d.name
1379
+ key: f.name
1154
1380
  }, [
1155
- n("input", {
1381
+ u("input", {
1156
1382
  type: "radio",
1157
- name: `accordion-${ee(r)}`,
1158
- checked: D === 0
1159
- }, null, 8, ll),
1160
- n("div", al, [
1161
- n("div", null, T(d.name), 1),
1162
- d.value !== void 0 && d.value !== null && d.value !== "" ? (o(), i("div", nl, T(R(d)), 1)) : (o(), i("div", ol, T(d.description), 1))
1383
+ name: `accordion-${te(o)}`,
1384
+ checked: B === 0
1385
+ }, null, 8, ga),
1386
+ u("div", ba, [
1387
+ u("div", null, T(f.name), 1),
1388
+ f.value !== void 0 && f.value !== null && f.value !== "" ? (s(), r("div", ya, T(A(f)), 1)) : (s(), r("div", wa, T(f.description), 1))
1163
1389
  ]),
1164
- n("div", sl, [
1165
- y[7] || (y[7] = n("br", null, null, -1)),
1166
- (o(), ce(Te(m[d.type]), Be({ ref_for: !0 }, d.props || {}, {
1167
- modelValue: d.value,
1168
- onUpdated: y[5] || (y[5] = (w) => V(w)),
1169
- "onUpdate:modelValue": y[6] || (y[6] = (w) => V(w))
1390
+ u("div", $a, [
1391
+ x[7] || (x[7] = u("br", null, null, -1)),
1392
+ (s(), fe(Ve(d[f.type]), ie({ ref_for: !0 }, f.props || {}, {
1393
+ modelValue: f.value,
1394
+ onUpdated: x[5] || (x[5] = (I) => O(I)),
1395
+ "onUpdate:modelValue": x[6] || (x[6] = (I) => O(I))
1170
1396
  }), null, 16, ["modelValue"]))
1171
1397
  ])
1172
1398
  ]))), 128)),
1173
- n("div", { class: "modal-action" }, [
1174
- n("form", { method: "dialog" }, [
1175
- n("button", {
1399
+ u("div", { class: "modal-action" }, [
1400
+ u("form", { method: "dialog" }, [
1401
+ u("button", {
1176
1402
  class: "btn btn-primary",
1177
- onClick: O
1403
+ onClick: D
1178
1404
  }, " Close and Search ")
1179
1405
  ])
1180
1406
  ])
1181
1407
  ])
1182
- ], 8, Qt)
1408
+ ], 8, ma)
1183
1409
  ], 64);
1184
1410
  };
1185
1411
  }
1186
- }), Ua = /* @__PURE__ */ re(il, [["__scopeId", "data-v-577c3624"]]), rl = { class: "z-30 relative flex items-center bg-base-100 date-filter-input px-4 border-2 border-primary rounded-md w-full min-h-10 font-semibold text-primary text-sm" }, ul = { key: 0 }, cl = { key: 1 }, dl = ["id", "onKeydown"], vl = {
1412
+ }), An = /* @__PURE__ */ ve(xa, [["__scopeId", "data-v-577c3624"]]), ka = ["checked", "disabled"], Ln = /* @__PURE__ */ z({
1413
+ inheritAttrs: !1,
1414
+ __name: "checkbox",
1415
+ props: {
1416
+ modelValue: { type: Boolean, default: !1 },
1417
+ color: {},
1418
+ size: {},
1419
+ disabled: { type: Boolean, default: !1 }
1420
+ },
1421
+ emits: ["update:modelValue"],
1422
+ setup(e, { emit: n }) {
1423
+ const a = e, t = n, o = _(() => {
1424
+ const l = ["checkbox"];
1425
+ return a.color && l.push(`checkbox-${a.color}`), a.size && l.push(`checkbox-${a.size}`), l.join(" ");
1426
+ }), i = (l) => {
1427
+ const d = l.target;
1428
+ t("update:modelValue", d.checked);
1429
+ };
1430
+ return (l, d) => (s(), r("input", ie({
1431
+ type: "checkbox",
1432
+ class: o.value,
1433
+ checked: e.modelValue,
1434
+ disabled: e.disabled,
1435
+ onChange: i
1436
+ }, l.$attrs), null, 16, ka));
1437
+ }
1438
+ }), Ca = { class: "z-30 relative flex items-center bg-base-100 date-filter-input px-4 border-2 border-primary rounded-md w-full min-h-10 font-semibold text-primary text-sm" }, za = { key: 0 }, Sa = { key: 1 }, _a = ["id", "onKeydown"], Ba = {
1187
1439
  key: 2,
1188
1440
  class: "flex justify-center p-4"
1189
- }, fl = { class: "join items-center gap-2 max-w-2xs md:max-w-full justify-between max-md:input max-md:input-bordered !rounded overflow-hidden mx-auto" }, ml = { class: "join-item" }, pl = ["id", "disabled", "value"], hl = { class: "join-item" }, gl = ["id", "disabled", "value"], bl = {
1441
+ }, Ia = { class: "join items-center gap-2 max-w-2xs md:max-w-full justify-between max-md:input max-md:input-bordered !rounded overflow-hidden mx-auto" }, Ma = { class: "join-item" }, Ta = ["id", "disabled", "value"], Va = { class: "join-item" }, ja = ["id", "disabled", "value"], Da = {
1190
1442
  key: 3,
1191
1443
  class: "p-4 min-w-2xs"
1192
- }, yl = ["id", "disabled", "value"], wl = {
1444
+ }, Oa = ["id", "disabled", "value"], Pa = {
1193
1445
  key: 4,
1194
1446
  class: "flex px-4 my-4 w-full justify-end"
1195
- }, xl = /* @__PURE__ */ j({
1447
+ }, Aa = /* @__PURE__ */ z({
1196
1448
  __name: "datetimePicker",
1197
1449
  props: {
1198
1450
  mode: { default: "datetime" },
@@ -1211,21 +1463,21 @@ const pt = ye("SunIcon", [
1211
1463
  disableDefaultValue: { type: Boolean, default: !1 }
1212
1464
  },
1213
1465
  emits: ["update:modelValue", "change"],
1214
- setup(e, { emit: c }) {
1215
- const l = typeof window < "u", t = e, r = c, a = h(null), s = h(!1), m = h(null), u = h(null), g = h(null), S = h(null), R = h(null), V = h({
1466
+ setup(e, { emit: n }) {
1467
+ const a = typeof window < "u", t = e, o = n, i = b(null), l = b(!1), d = b(null), c = b(null), h = b(null), M = b(null), A = b(null), O = b({
1216
1468
  from: "",
1217
1469
  to: "",
1218
1470
  single: ""
1219
- }), v = h({
1471
+ }), v = b({
1220
1472
  single: null,
1221
1473
  start: null,
1222
1474
  end: null
1223
- }), O = (p) => p instanceof Date ? p.toISOString() : p, M = (p) => p.split("T")[0] || "", H = (p) => {
1224
- const x = p instanceof Date ? p : new Date(p);
1225
- if (isNaN(x.getTime())) return "";
1226
- const L = String(x.getHours()).padStart(2, "0"), Y = String(x.getMinutes()).padStart(2, "0");
1227
- return `${L}:${Y}`;
1228
- }, N = () => {
1475
+ }), D = (p) => p instanceof Date ? p.toISOString() : p, V = (p) => p.split("T")[0] || "", W = (p) => {
1476
+ const y = p instanceof Date ? p : new Date(p);
1477
+ if (isNaN(y.getTime())) return "";
1478
+ const L = String(y.getHours()).padStart(2, "0"), Z = String(y.getMinutes()).padStart(2, "0");
1479
+ return `${L}:${Z}`;
1480
+ }, F = () => {
1229
1481
  if (t.disableDefaultValue && !t.initialDate)
1230
1482
  return;
1231
1483
  let p = t.initialDate;
@@ -1235,43 +1487,43 @@ const pt = ye("SunIcon", [
1235
1487
  }
1236
1488
  if (!p) return;
1237
1489
  if (t.range && typeof p == "object" && "start" in p) {
1238
- const L = O(p.start), Y = O(p.end);
1239
- v.value.start = M(L), v.value.end = M(Y), t.mode !== "date" && (V.value.from = H(L), V.value.to = H(Y));
1490
+ const L = D(p.start), Z = D(p.end);
1491
+ v.value.start = V(L), v.value.end = V(Z), t.mode !== "date" && (O.value.from = W(L), O.value.to = W(Z));
1240
1492
  return;
1241
1493
  }
1242
- const x = O(p);
1243
- v.value.single = M(x), t.mode !== "date" && (V.value.single = H(x));
1244
- }, W = U(() => {
1245
- const p = (x) => {
1246
- if (!x) return "";
1494
+ const y = D(p);
1495
+ v.value.single = V(y), t.mode !== "date" && (O.value.single = W(y));
1496
+ }, K = _(() => {
1497
+ const p = (y) => {
1498
+ if (!y) return "";
1247
1499
  try {
1248
- return (/* @__PURE__ */ new Date(x + "T00:00:00")).toLocaleDateString(t.locale);
1500
+ return (/* @__PURE__ */ new Date(y + "T00:00:00")).toLocaleDateString(t.locale);
1249
1501
  } catch {
1250
- return x;
1502
+ return y;
1251
1503
  }
1252
1504
  };
1253
1505
  return t.range ? v.value.start && v.value.end ? `${p(v.value.start)} - ${p(v.value.end)}` : "" : v.value.single ? p(v.value.single) : "";
1254
- }), Z = () => {
1255
- if (m.value)
1256
- v.value.single = m.value.value || null;
1257
- else if (u.value) {
1258
- const p = u.value.value;
1506
+ }), J = () => {
1507
+ if (d.value)
1508
+ v.value.single = d.value.value || null;
1509
+ else if (c.value) {
1510
+ const p = c.value.value;
1259
1511
  if (typeof p == "string" && p.includes("/")) {
1260
- const [x, L] = p.split("/");
1261
- v.value.start = x || null, v.value.end = L || null;
1512
+ const [y, L] = p.split("/");
1513
+ v.value.start = y || null, v.value.end = L || null;
1262
1514
  }
1263
1515
  }
1264
- }, te = () => v.value.start && v.value.end ? `${v.value.start}/${v.value.end}` : null, f = () => {
1516
+ }, ae = () => v.value.start && v.value.end ? `${v.value.start}/${v.value.end}` : null, m = () => {
1265
1517
  if (t.range) {
1266
- const L = v.value.start, Y = v.value.end;
1267
- if (!L || !Y) return null;
1518
+ const L = v.value.start, Z = v.value.end;
1519
+ if (!L || !Z) return null;
1268
1520
  if (t.mode === "date")
1269
- return { start: L, end: Y };
1521
+ return { start: L, end: Z };
1270
1522
  if (t.mode === "datetime") {
1271
- const ie = V.value.from || "00:00", ve = V.value.to || "23:59";
1523
+ const we = O.value.from || "00:00", $e = O.value.to || "23:59";
1272
1524
  return {
1273
- start: `${L}T${ie}:00`,
1274
- end: `${Y}T${ve}:00`
1525
+ start: `${L}T${we}:00`,
1526
+ end: `${Z}T${$e}:00`
1275
1527
  };
1276
1528
  }
1277
1529
  return null;
@@ -1279,103 +1531,103 @@ const pt = ye("SunIcon", [
1279
1531
  const p = v.value.single;
1280
1532
  if (!p) return null;
1281
1533
  if (t.mode === "date") return p;
1282
- const x = V.value.single || "00:00";
1283
- return `${p}T${x}:00`;
1284
- }, y = async () => {
1285
- Z();
1286
- const p = f();
1287
- r("update:modelValue", p), r("change", p);
1288
- }, b = () => me(y), I = (p) => {
1289
- const x = p.target;
1290
- t.range ? x === S.value ? V.value.from = x.value : V.value.to = x.value : V.value.single = x.value, y();
1291
- }, d = () => {
1292
- s.value = !s.value;
1293
- }, D = () => {
1294
- y(), s.value = !1;
1295
- }, w = (p) => {
1296
- !t.popup || !s.value || setTimeout(() => {
1297
- const x = a.value, L = p.target, Y = `date-picker-${t.id}-popup`;
1298
- x && !x.contains(L) && !L.closest(`#${Y}`) && D();
1534
+ const y = O.value.single || "00:00";
1535
+ return `${p}T${y}:00`;
1536
+ }, x = async () => {
1537
+ J();
1538
+ const p = m();
1539
+ o("update:modelValue", p), o("change", p);
1540
+ }, k = () => he(x), j = (p) => {
1541
+ const y = p.target;
1542
+ t.range ? y === M.value ? O.value.from = y.value : O.value.to = y.value : O.value.single = y.value, x();
1543
+ }, f = () => {
1544
+ l.value = !l.value;
1545
+ }, B = () => {
1546
+ x(), l.value = !1;
1547
+ }, I = (p) => {
1548
+ !t.popup || !l.value || setTimeout(() => {
1549
+ const y = i.value, L = p.target, Z = `date-picker-${t.id}-popup`;
1550
+ y && !y.contains(L) && !L.closest(`#${Z}`) && B();
1299
1551
  }, 0);
1300
- }, _ = () => D(), P = () => {
1301
- y(), t.popup && (s.value = !1);
1302
- }, Q = () => {
1303
- var x;
1304
- const p = t.range ? u.value : m.value;
1305
- (x = p == null ? void 0 : p.navigate) == null || x.call(p, -1);
1306
- }, ue = () => {
1307
- var x;
1308
- const p = t.range ? u.value : m.value;
1309
- (x = p == null ? void 0 : p.navigate) == null || x.call(p, 1);
1552
+ }, H = () => B(), ee = () => {
1553
+ x(), t.popup && (l.value = !1);
1554
+ }, G = () => {
1555
+ var y;
1556
+ const p = t.range ? c.value : d.value;
1557
+ (y = p == null ? void 0 : p.navigate) == null || y.call(p, -1);
1558
+ }, le = () => {
1559
+ var y;
1560
+ const p = t.range ? c.value : d.value;
1561
+ (y = p == null ? void 0 : p.navigate) == null || y.call(p, 1);
1310
1562
  };
1311
- return de(() => {
1312
- l && import("./cally-ZU3K2Th7.js").catch((p) => console.warn("Failed to load cally:", p)), N();
1313
- }), q(v, async () => {
1314
- if (await me(), m.value && v.value.single) {
1563
+ return pe(() => {
1564
+ a && import("./cally-ZU3K2Th7.js").catch((p) => console.warn("Failed to load cally:", p)), F();
1565
+ }), R(v, async () => {
1566
+ if (await he(), d.value && v.value.single) {
1315
1567
  const p = v.value.single;
1316
- m.value.value !== p && (m.value.value = p);
1568
+ d.value.value !== p && (d.value.value = p);
1317
1569
  }
1318
- if (u.value) {
1319
- const p = te();
1320
- p && u.value.value !== p && (u.value.value = p);
1570
+ if (c.value) {
1571
+ const p = ae();
1572
+ p && c.value.value !== p && (c.value.value = p);
1321
1573
  }
1322
- y();
1323
- }, { deep: !0 }), q([v, m, u], async () => {
1324
- await me(), m.value && v.value.single && !m.value.value && (m.value.value = v.value.single), u.value && v.value.start && v.value.end && !u.value.value && (u.value.value = `${v.value.start}/${v.value.end}`), y();
1325
- }), q([g, S, R], y), (p, x) => {
1326
- const L = De("calendar-month"), Y = De("calendar-date"), ie = De("calendar-range");
1327
- return o(), i("div", {
1574
+ x();
1575
+ }, { deep: !0 }), R([v, d, c], async () => {
1576
+ await he(), d.value && v.value.single && !d.value.value && (d.value.value = v.value.single), c.value && v.value.start && v.value.end && !c.value.value && (c.value.value = `${v.value.start}/${v.value.end}`), x();
1577
+ }), R([h, M, A], x), (p, y) => {
1578
+ const L = Ae("calendar-month"), Z = Ae("calendar-date"), we = Ae("calendar-range");
1579
+ return s(), r("div", {
1328
1580
  class: "inline-block relative w-fit lg:w-full",
1329
1581
  ref_key: "pickerContainer",
1330
- ref: a,
1331
- onMousedownCapture: w
1582
+ ref: i,
1583
+ onMousedownCapture: I
1332
1584
  }, [
1333
- t.popup ? (o(), i("div", {
1585
+ t.popup ? (s(), r("div", {
1334
1586
  key: 0,
1335
1587
  class: "flex items-center gap-2 cursor-pointer w-full",
1336
- onClick: x[0] || (x[0] = (ve) => t.disabled ? null : d())
1588
+ onClick: y[0] || (y[0] = ($e) => t.disabled ? null : f())
1337
1589
  }, [
1338
- n("div", rl, [
1339
- W.value ? (o(), i("span", cl, T(W.value), 1)) : (o(), i("span", ul, T(t.placeholder), 1))
1590
+ u("div", Ca, [
1591
+ K.value ? (s(), r("span", Sa, T(K.value), 1)) : (s(), r("span", za, T(t.placeholder), 1))
1340
1592
  ])
1341
- ])) : z("", !0),
1342
- s.value || !t.popup ? (o(), i("div", {
1593
+ ])) : S("", !0),
1594
+ l.value || !t.popup ? (s(), r("div", {
1343
1595
  key: 1,
1344
- class: $(["z-50 bg-base-100 rounded-md w-full min-w-xs overflow-hidden", { "absolute top-full left-0 mt-2 shadow-lg": t.popup, "mt-2": !t.popup }]),
1596
+ class: w(["z-50 bg-base-100 rounded-md w-full min-w-xs overflow-hidden", { "absolute top-full left-0 mt-2 shadow-lg": t.popup, "mt-2": !t.popup }]),
1345
1597
  id: `date-picker-${t.id}-popup`,
1346
1598
  onKeydown: [
1347
- x[1] || (x[1] = pe(ne(() => {
1599
+ y[1] || (y[1] = ge(oe(() => {
1348
1600
  }, ["prevent", "stop"]), ["tab"])),
1349
- pe(_, ["esc"]),
1350
- pe(ne(P, ["prevent"]), ["enter"])
1601
+ ge(H, ["esc"]),
1602
+ ge(oe(ee, ["prevent"]), ["enter"])
1351
1603
  ]
1352
1604
  }, [
1353
- !t.range && t.mode !== "time" && l ? (o(), ce(Y, {
1605
+ !t.range && t.mode !== "time" && a ? (s(), fe(Z, {
1354
1606
  key: 0,
1355
1607
  class: "cally w-full",
1356
1608
  ref_key: "datePicker",
1357
- ref: m,
1609
+ ref: d,
1358
1610
  id: `${t.id}-date`,
1359
1611
  min: t.min,
1360
1612
  max: t.max,
1361
1613
  disabled: t.disabled,
1362
1614
  "first-day-of-week": t.firstDayOfWeek,
1363
- onChange: b
1615
+ onChange: k
1364
1616
  }, {
1365
- default: be(() => [
1366
- n("button", {
1617
+ default: ye(() => [
1618
+ u("button", {
1367
1619
  slot: "previous",
1368
1620
  class: "btn-outline btn btn-primary md:btn-sm",
1369
- onClick: Q
1370
- }, [...x[2] || (x[2] = [
1371
- n("svg", {
1621
+ onClick: G
1622
+ }, [...y[2] || (y[2] = [
1623
+ u("svg", {
1372
1624
  xmlns: "http://www.w3.org/2000/svg",
1373
1625
  class: "w-4 h-4",
1374
1626
  fill: "none",
1375
1627
  viewBox: "0 0 24 24",
1376
1628
  stroke: "currentColor"
1377
1629
  }, [
1378
- n("path", {
1630
+ u("path", {
1379
1631
  "stroke-linecap": "round",
1380
1632
  "stroke-linejoin": "round",
1381
1633
  "stroke-width": "2",
@@ -1383,19 +1635,19 @@ const pt = ye("SunIcon", [
1383
1635
  })
1384
1636
  ], -1)
1385
1637
  ])]),
1386
- n("button", {
1638
+ u("button", {
1387
1639
  slot: "next",
1388
1640
  class: "btn-outline btn btn-primary md:btn-sm",
1389
- onClick: ue
1390
- }, [...x[3] || (x[3] = [
1391
- n("svg", {
1641
+ onClick: le
1642
+ }, [...y[3] || (y[3] = [
1643
+ u("svg", {
1392
1644
  xmlns: "http://www.w3.org/2000/svg",
1393
1645
  class: "w-4 h-4",
1394
1646
  fill: "none",
1395
1647
  viewBox: "0 24 24",
1396
1648
  stroke: "currentColor"
1397
1649
  }, [
1398
- n("path", {
1650
+ u("path", {
1399
1651
  "stroke-linecap": "round",
1400
1652
  "stroke-linejoin": "round",
1401
1653
  "stroke-width": "2",
@@ -1403,38 +1655,38 @@ const pt = ye("SunIcon", [
1403
1655
  })
1404
1656
  ], -1)
1405
1657
  ])]),
1406
- oe(L, {
1658
+ re(L, {
1407
1659
  locale: t.locale
1408
1660
  }, null, 8, ["locale"])
1409
1661
  ]),
1410
1662
  _: 1
1411
- }, 8, ["id", "min", "max", "disabled", "first-day-of-week"])) : z("", !0),
1412
- t.range && t.mode !== "time" && l ? (o(), ce(ie, {
1663
+ }, 8, ["id", "min", "max", "disabled", "first-day-of-week"])) : S("", !0),
1664
+ t.range && t.mode !== "time" && a ? (s(), fe(we, {
1413
1665
  key: 1,
1414
1666
  class: "cally w-full",
1415
1667
  ref_key: "rangeDatePicker",
1416
- ref: u,
1668
+ ref: c,
1417
1669
  id: `${t.id}-date-range`,
1418
1670
  min: t.min,
1419
1671
  max: t.max,
1420
1672
  disabled: t.disabled,
1421
1673
  "first-day-of-week": t.firstDayOfWeek,
1422
- onChange: b
1674
+ onChange: k
1423
1675
  }, {
1424
- default: be(() => [
1425
- n("button", {
1676
+ default: ye(() => [
1677
+ u("button", {
1426
1678
  slot: "previous",
1427
1679
  class: "btn-outline btn btn-primary md:btn-sm",
1428
- onClick: Q
1429
- }, [...x[4] || (x[4] = [
1430
- n("svg", {
1680
+ onClick: G
1681
+ }, [...y[4] || (y[4] = [
1682
+ u("svg", {
1431
1683
  xmlns: "http://www.w3.org/2000/svg",
1432
1684
  class: "w-4 h-4",
1433
1685
  fill: "none",
1434
1686
  viewBox: "0 0 24 24",
1435
1687
  stroke: "currentColor"
1436
1688
  }, [
1437
- n("path", {
1689
+ u("path", {
1438
1690
  "stroke-linecap": "round",
1439
1691
  "stroke-linejoin": "round",
1440
1692
  "stroke-width": "2",
@@ -1442,19 +1694,19 @@ const pt = ye("SunIcon", [
1442
1694
  })
1443
1695
  ], -1)
1444
1696
  ])]),
1445
- n("button", {
1697
+ u("button", {
1446
1698
  slot: "next",
1447
1699
  class: "btn-outline btn btn-primary md:btn-sm",
1448
- onClick: ue
1449
- }, [...x[5] || (x[5] = [
1450
- n("svg", {
1700
+ onClick: le
1701
+ }, [...y[5] || (y[5] = [
1702
+ u("svg", {
1451
1703
  xmlns: "http://www.w3.org/2000/svg",
1452
1704
  class: "w-4 h-4",
1453
1705
  fill: "none",
1454
1706
  viewBox: "0 24 24",
1455
1707
  stroke: "currentColor"
1456
1708
  }, [
1457
- n("path", {
1709
+ u("path", {
1458
1710
  "stroke-linecap": "round",
1459
1711
  "stroke-linejoin": "round",
1460
1712
  "stroke-width": "2",
@@ -1462,74 +1714,164 @@ const pt = ye("SunIcon", [
1462
1714
  })
1463
1715
  ], -1)
1464
1716
  ])]),
1465
- oe(L, {
1717
+ re(L, {
1466
1718
  locale: t.locale
1467
1719
  }, null, 8, ["locale"])
1468
1720
  ]),
1469
1721
  _: 1
1470
- }, 8, ["id", "min", "max", "disabled", "first-day-of-week"])) : z("", !0),
1471
- t.range && t.mode !== "date" ? (o(), i("div", vl, [
1472
- n("div", fl, [
1473
- n("div", ml, [
1474
- n("input", {
1722
+ }, 8, ["id", "min", "max", "disabled", "first-day-of-week"])) : S("", !0),
1723
+ t.range && t.mode !== "date" ? (s(), r("div", Ba, [
1724
+ u("div", Ia, [
1725
+ u("div", Ma, [
1726
+ u("input", {
1475
1727
  class: "text-center hover:border-b-2 hover:-mb-0.5 open:bg-primary open:p-1 open:-m-0.5 open:rounded w-full relative",
1476
1728
  type: "time",
1477
1729
  ref_key: "timeFromInput",
1478
- ref: S,
1730
+ ref: M,
1479
1731
  id: `${t.id}-time-from`,
1480
1732
  placeholder: "from",
1481
- onChange: I,
1733
+ onChange: j,
1482
1734
  disabled: t.disabled,
1483
- value: V.value.from || ""
1484
- }, null, 40, pl)
1735
+ value: O.value.from || ""
1736
+ }, null, 40, Ta)
1485
1737
  ]),
1486
- x[6] || (x[6] = n("svg", {
1738
+ y[6] || (y[6] = u("svg", {
1487
1739
  class: "join-item",
1488
1740
  viewBox: "0 0 1024 1024",
1489
1741
  width: "1em"
1490
1742
  }, [
1491
- n("path", { d: "M873.1 596.2l-164-208A32 32 0 00684 376h-64.8c-6.7 0-10.4 7.7-6.3 13l144.3 183H152c-4.4 0-8 3.6-8 8v60c0 4.4 3.6 8 8 8h695.9c26.8 0 41.7-30.8 25.2-51.8z" })
1743
+ u("path", { d: "M873.1 596.2l-164-208A32 32 0 00684 376h-64.8c-6.7 0-10.4 7.7-6.3 13l144.3 183H152c-4.4 0-8 3.6-8 8v60c0 4.4 3.6 8 8 8h695.9c26.8 0 41.7-30.8 25.2-51.8z" })
1492
1744
  ], -1)),
1493
- n("div", hl, [
1494
- n("input", {
1745
+ u("div", Va, [
1746
+ u("input", {
1495
1747
  class: "text-center hover:border-b-2 hover:-mb-0.5 open:bg-primary open:p-1 open:-m-0.5 open:rounded w-full relative",
1496
1748
  type: "time",
1497
1749
  ref_key: "timeToInput",
1498
- ref: R,
1750
+ ref: A,
1499
1751
  id: `${t.id}-time-to`,
1500
- onChange: I,
1752
+ onChange: j,
1501
1753
  disabled: t.disabled,
1502
- value: V.value.to || ""
1503
- }, null, 40, gl)
1754
+ value: O.value.to || ""
1755
+ }, null, 40, ja)
1504
1756
  ])
1505
1757
  ])
1506
- ])) : z("", !0),
1507
- !t.range && t.mode !== "date" ? (o(), i("div", bl, [
1508
- n("input", {
1758
+ ])) : S("", !0),
1759
+ !t.range && t.mode !== "date" ? (s(), r("div", Da, [
1760
+ u("input", {
1509
1761
  class: "open:bg-primary open:rounded w-full input input-bordered justify-center",
1510
1762
  type: "time",
1511
1763
  ref_key: "timeInput",
1512
- ref: g,
1764
+ ref: h,
1513
1765
  id: `${t.id}-time`,
1514
- onChange: I,
1766
+ onChange: j,
1515
1767
  disabled: t.disabled,
1516
- value: V.value.single || ""
1517
- }, null, 40, yl)
1518
- ])) : z("", !0),
1519
- t.popup && t.closeText ? (o(), i("div", wl, [
1520
- n("button", {
1768
+ value: O.value.single || ""
1769
+ }, null, 40, Oa)
1770
+ ])) : S("", !0),
1771
+ t.popup && t.closeText ? (s(), r("div", Pa, [
1772
+ u("button", {
1521
1773
  class: "btn btn-primary max-lg:w-full",
1522
- onClick: D
1774
+ onClick: B
1523
1775
  }, T(t.closeText), 1)
1524
- ])) : z("", !0)
1525
- ], 42, dl)) : z("", !0)
1776
+ ])) : S("", !0)
1777
+ ], 42, _a)) : S("", !0)
1526
1778
  ], 544);
1527
1779
  };
1528
1780
  }
1529
- }), kl = /* @__PURE__ */ re(xl, [["__scopeId", "data-v-ca3752e5"]]), $l = /* @__PURE__ */ Object.freeze(/* @__PURE__ */ Object.defineProperty({
1781
+ }), La = /* @__PURE__ */ ve(Aa, [["__scopeId", "data-v-ca3752e5"]]), Ea = /* @__PURE__ */ Object.freeze(/* @__PURE__ */ Object.defineProperty({
1530
1782
  __proto__: null,
1531
- default: kl
1532
- }, Symbol.toStringTag, { value: "Module" })), Cl = ["value", "checked", "onChange", "disabled"], Wa = /* @__PURE__ */ j({
1783
+ default: La
1784
+ }, Symbol.toStringTag, { value: "Module" })), Ra = ["accept", "multiple", "disabled"], En = /* @__PURE__ */ z({
1785
+ inheritAttrs: !1,
1786
+ __name: "fileInput",
1787
+ props: {
1788
+ accept: {},
1789
+ multiple: { type: Boolean, default: !1 },
1790
+ color: {},
1791
+ size: {},
1792
+ ghost: { type: Boolean, default: !1 },
1793
+ disabled: { type: Boolean, default: !1 }
1794
+ },
1795
+ emits: ["change"],
1796
+ setup(e, { emit: n }) {
1797
+ const a = e, t = n, o = _(() => {
1798
+ const l = ["file-input"];
1799
+ return a.ghost && l.push("file-input-ghost"), a.color && l.push(`file-input-${a.color}`), a.size && l.push(`file-input-${a.size}`), l.join(" ");
1800
+ }), i = (l) => {
1801
+ const d = l.target;
1802
+ t("change", d.files);
1803
+ };
1804
+ return (l, d) => (s(), r("input", ie({
1805
+ type: "file",
1806
+ class: o.value,
1807
+ accept: e.accept,
1808
+ multiple: e.multiple,
1809
+ disabled: e.disabled,
1810
+ onChange: i
1811
+ }, l.$attrs), null, 16, Ra));
1812
+ }
1813
+ }), Na = ["value", "checked", "disabled", "name"], Rn = /* @__PURE__ */ z({
1814
+ inheritAttrs: !1,
1815
+ __name: "radio",
1816
+ props: {
1817
+ modelValue: {},
1818
+ value: {},
1819
+ name: {},
1820
+ color: {},
1821
+ size: {},
1822
+ disabled: { type: Boolean, default: !1 }
1823
+ },
1824
+ emits: ["update:modelValue"],
1825
+ setup(e, { emit: n }) {
1826
+ const a = e, t = n, o = _(() => {
1827
+ const l = ["radio"];
1828
+ return a.color && l.push(`radio-${a.color}`), a.size && l.push(`radio-${a.size}`), l.join(" ");
1829
+ }), i = () => {
1830
+ t("update:modelValue", a.value);
1831
+ };
1832
+ return (l, d) => (s(), r("input", ie({
1833
+ type: "radio",
1834
+ class: o.value,
1835
+ value: e.value,
1836
+ checked: e.modelValue === e.value,
1837
+ disabled: e.disabled,
1838
+ name: e.name,
1839
+ onChange: i
1840
+ }, l.$attrs), null, 16, Na));
1841
+ }
1842
+ }), Fa = ["min", "max", "step", "value", "disabled"], Nn = /* @__PURE__ */ z({
1843
+ inheritAttrs: !1,
1844
+ __name: "range",
1845
+ props: {
1846
+ modelValue: { default: 0 },
1847
+ min: { default: 0 },
1848
+ max: { default: 100 },
1849
+ step: { default: 1 },
1850
+ color: {},
1851
+ size: {},
1852
+ disabled: { type: Boolean, default: !1 }
1853
+ },
1854
+ emits: ["update:modelValue"],
1855
+ setup(e, { emit: n }) {
1856
+ const a = e, t = n, o = _(() => {
1857
+ const l = ["range"];
1858
+ return a.color && l.push(`range-${a.color}`), a.size && l.push(`range-${a.size}`), l.join(" ");
1859
+ }), i = (l) => {
1860
+ const d = l.target;
1861
+ t("update:modelValue", Number(d.value));
1862
+ };
1863
+ return (l, d) => (s(), r("input", ie({
1864
+ type: "range",
1865
+ class: o.value,
1866
+ min: e.min,
1867
+ max: e.max,
1868
+ step: e.step,
1869
+ value: e.modelValue,
1870
+ disabled: e.disabled,
1871
+ onInput: i
1872
+ }, l.$attrs), null, 16, Fa));
1873
+ }
1874
+ }), qa = ["value", "checked", "onChange", "disabled"], Fn = /* @__PURE__ */ z({
1533
1875
  __name: "rating",
1534
1876
  props: {
1535
1877
  initialRating: { default: 0 },
@@ -1542,34 +1884,34 @@ const pt = ye("SunIcon", [
1542
1884
  gap: { default: 0 }
1543
1885
  },
1544
1886
  setup(e) {
1545
- const c = e, l = h(c.initialRating);
1546
- q(
1547
- () => c.initialRating,
1548
- (r) => {
1549
- l.value = r;
1887
+ const n = e, a = b(n.initialRating);
1888
+ R(
1889
+ () => n.initialRating,
1890
+ (o) => {
1891
+ a.value = o;
1550
1892
  }
1551
1893
  );
1552
- const t = (r) => {
1553
- l.value = r;
1894
+ const t = (o) => {
1895
+ a.value = o;
1554
1896
  };
1555
- return (r, a) => (o(), i("div", {
1556
- class: $(["rating", [
1557
- `rating-${c.size}`,
1897
+ return (o, i) => (s(), r("div", {
1898
+ class: w(["rating", [
1899
+ `rating-${n.size}`,
1558
1900
  { "rating-half": e.halfStars },
1559
1901
  { "pointer-events-none": !e.isInteractive }
1560
1902
  ]])
1561
1903
  }, [
1562
- (o(!0), i(A, null, X(e.numberOfStars * (e.halfStars ? 2 : 1), (s) => (o(), i("input", {
1563
- key: s,
1904
+ (s(!0), r(N, null, U(e.numberOfStars * (e.halfStars ? 2 : 1), (l) => (s(), r("input", {
1905
+ key: l,
1564
1906
  type: "radio",
1565
- value: e.halfStars ? s * 0.5 : s,
1566
- checked: l.value === (e.halfStars ? s * 0.5 : s),
1567
- onChange: (m) => e.isInteractive ? t(e.halfStars ? s * 0.5 : s) : null,
1568
- class: $(["mask", [
1907
+ value: e.halfStars ? l * 0.5 : l,
1908
+ checked: a.value === (e.halfStars ? l * 0.5 : l),
1909
+ onChange: (d) => e.isInteractive ? t(e.halfStars ? l * 0.5 : l) : null,
1910
+ class: w(["mask", [
1569
1911
  {
1570
1912
  // 'bg-yellow-400': rating >= (halfStars ? i * 0.5 : i),
1571
- "mask-half-1": e.halfStars && s % 2 !== 0,
1572
- "mask-half-2": e.halfStars && s % 2 === 0,
1913
+ "mask-half-1": e.halfStars && l % 2 !== 0,
1914
+ "mask-half-2": e.halfStars && l % 2 === 0,
1573
1915
  "cursor-pointer": e.isInteractive,
1574
1916
  "cursor-default": !e.isInteractive,
1575
1917
  "mask-star": e.shape === "star",
@@ -1586,16 +1928,16 @@ const pt = ye("SunIcon", [
1586
1928
  "mask-triangle-3": e.shape === "triangle-left",
1587
1929
  "mask-triangle-4": e.shape === "triangle-right"
1588
1930
  },
1589
- l.value >= (e.halfStars ? s * 0.5 : s) ? c.color : ""
1931
+ a.value >= (e.halfStars ? l * 0.5 : l) ? n.color : ""
1590
1932
  ]]),
1591
- style: Ie({
1592
- marginRight: e.halfStars && s % 2 === 0 ? `${c.gap}px` : e.halfStars ? "0" : `${c.gap}px`
1933
+ style: be({
1934
+ marginRight: e.halfStars && l % 2 === 0 ? `${n.gap}px` : e.halfStars ? "0" : `${n.gap}px`
1593
1935
  }),
1594
1936
  disabled: !e.isInteractive
1595
- }, null, 46, Cl))), 128))
1937
+ }, null, 46, qa))), 128))
1596
1938
  ], 2));
1597
1939
  }
1598
- }), Sl = { class: "badge" }, Il = ["onClick"], Ml = { class: "opacity-75" }, zl = ["placeholder"], Ka = /* @__PURE__ */ j({
1940
+ }), Wa = { class: "badge" }, Ha = ["onClick"], Ua = { class: "opacity-75" }, Ka = ["placeholder"], qn = /* @__PURE__ */ z({
1599
1941
  __name: "taginput",
1600
1942
  props: {
1601
1943
  modelValue: {},
@@ -1604,61 +1946,61 @@ const pt = ye("SunIcon", [
1604
1946
  class: {}
1605
1947
  },
1606
1948
  emits: ["update:modelValue"],
1607
- setup(e, { emit: c }) {
1608
- const l = e, t = c, r = h([...l.modelValue]), a = l.maxTagAmount === void 0 ? -1 : l.maxTagAmount, s = h(null), m = h(""), u = U(() => a < 0 || r.value.length < a), g = () => {
1609
- const v = m.value.trim();
1610
- v && !r.value.includes(v) && (r.value.push(v), t("update:modelValue", r.value), m.value = "");
1611
- }, S = (v) => {
1612
- r.value = r.value.filter((O) => O !== v), t("update:modelValue", r.value);
1613
- }, R = () => {
1614
- m.value === "" && (r.value.pop(), t("update:modelValue", r.value));
1615
- }, V = (v) => {
1616
- v.key === "Enter" ? g() : v.key === "Backspace" && m.value === "" && R();
1949
+ setup(e, { emit: n }) {
1950
+ const a = e, t = n, o = b([...a.modelValue]), i = a.maxTagAmount === void 0 ? -1 : a.maxTagAmount, l = b(null), d = b(""), c = _(() => i < 0 || o.value.length < i), h = () => {
1951
+ const v = d.value.trim();
1952
+ v && !o.value.includes(v) && (o.value.push(v), t("update:modelValue", o.value), d.value = "");
1953
+ }, M = (v) => {
1954
+ o.value = o.value.filter((D) => D !== v), t("update:modelValue", o.value);
1955
+ }, A = () => {
1956
+ d.value === "" && (o.value.pop(), t("update:modelValue", o.value));
1957
+ }, O = (v) => {
1958
+ v.key === "Enter" ? h() : v.key === "Backspace" && d.value === "" && A();
1617
1959
  };
1618
- return q(() => l.modelValue, (v) => {
1619
- r.value = [...v];
1620
- }), (v, O) => (o(), i("div", {
1621
- class: $(["flex flex-wrap gap-2 bg-base-100 shadow px-4 py-6 border border-base-content/20 rounded", v.$props.class])
1960
+ return R(() => a.modelValue, (v) => {
1961
+ o.value = [...v];
1962
+ }), (v, D) => (s(), r("div", {
1963
+ class: w(["flex flex-wrap gap-2 bg-base-100 shadow px-4 py-6 border border-base-content/20 rounded", v.$props.class])
1622
1964
  }, [
1623
- (o(!0), i(A, null, X(r.value, (M) => B(v.$slots, "tag", {
1624
- key: M,
1625
- tag: M
1965
+ (s(!0), r(N, null, U(o.value, (V) => $(v.$slots, "tag", {
1966
+ key: V,
1967
+ tag: V
1626
1968
  }, () => [
1627
- n("div", Sl, [
1628
- n("button", {
1969
+ u("div", Wa, [
1970
+ u("button", {
1629
1971
  class: "px-1! py-0! h-fit font-bold cursor-pointer",
1630
- onClick: (H) => S(M),
1972
+ onClick: (W) => M(V),
1631
1973
  "aria-label": "Remove tag"
1632
- }, "X", 8, Il),
1633
- n("span", Ml, T(M), 1)
1974
+ }, "X", 8, Ha),
1975
+ u("span", Ua, T(V), 1)
1634
1976
  ])
1635
1977
  ])), 128)),
1636
- B(v.$slots, "input", { showInput: u.value }, () => [
1637
- u.value ? Se((o(), i("input", {
1978
+ $(v.$slots, "input", { showInput: c.value }, () => [
1979
+ c.value ? ke((s(), r("input", {
1638
1980
  key: 0,
1639
1981
  ref_key: "inputRef",
1640
- ref: s,
1641
- "onUpdate:modelValue": O[0] || (O[0] = (M) => m.value = M),
1982
+ ref: l,
1983
+ "onUpdate:modelValue": D[0] || (D[0] = (V) => d.value = V),
1642
1984
  type: "text",
1643
1985
  placeholder: e.placeholder || "Type here",
1644
1986
  class: "h-full input input-ghost",
1645
- onKeydown: V,
1987
+ onKeydown: O,
1646
1988
  "aria-label": "Add tags"
1647
- }, null, 40, zl)), [
1648
- [Ae, m.value]
1649
- ]) : z("", !0)
1989
+ }, null, 40, Ka)), [
1990
+ [Ue, d.value]
1991
+ ]) : S("", !0)
1650
1992
  ])
1651
1993
  ], 2));
1652
1994
  }
1653
- }), Tl = { class: "w-full max-w-xs form-control" }, Bl = {
1995
+ }), Xa = { class: "w-full max-w-xs form-control" }, Ga = {
1654
1996
  key: 0,
1655
1997
  class: "label"
1656
- }, Dl = { class: "label-text" }, Ol = ["value"], Vl = {
1998
+ }, Ya = { class: "label-text" }, Ja = ["value"], Za = {
1657
1999
  key: 0,
1658
2000
  value: "",
1659
2001
  disabled: "",
1660
2002
  selected: ""
1661
- }, _l = ["value"], Xa = /* @__PURE__ */ j({
2003
+ }, Qa = ["value"], Wn = /* @__PURE__ */ z({
1662
2004
  __name: "select",
1663
2005
  props: {
1664
2006
  options: {},
@@ -1667,45 +2009,45 @@ const pt = ye("SunIcon", [
1667
2009
  modelValue: {}
1668
2010
  },
1669
2011
  emits: ["update:modelValue"],
1670
- setup(e, { expose: c, emit: l }) {
2012
+ setup(e, { expose: n, emit: a }) {
1671
2013
  console.log(e.placeholder);
1672
- const r = l, a = h(null), s = (u) => {
1673
- const g = u.target;
1674
- r("update:modelValue", g.value);
2014
+ const o = a, i = b(null), l = (c) => {
2015
+ const h = c.target;
2016
+ o("update:modelValue", h.value);
1675
2017
  };
1676
- return c({
2018
+ return n({
1677
2019
  focusInput: () => {
1678
- var u;
1679
- console.log("select.vue: focusInput method called."), (u = a.value) == null || u.focus();
2020
+ var c;
2021
+ console.log("select.vue: focusInput method called."), (c = i.value) == null || c.focus();
1680
2022
  }
1681
2023
  // You can expose other properties or methods here if needed by the parent
1682
2024
  // e.g., the current value: modelValue
1683
- }), (u, g) => (o(), i("div", Tl, [
1684
- e.label ? (o(), i("label", Bl, [
1685
- n("span", Dl, T(e.label), 1)
1686
- ])) : z("", !0),
1687
- n("select", {
2025
+ }), (c, h) => (s(), r("div", Xa, [
2026
+ e.label ? (s(), r("label", Ga, [
2027
+ u("span", Ya, T(e.label), 1)
2028
+ ])) : S("", !0),
2029
+ u("select", {
1688
2030
  ref_key: "selectElement",
1689
- ref: a,
2031
+ ref: i,
1690
2032
  class: "rounded-md w-full select-bordered select",
1691
2033
  value: e.modelValue,
1692
- onChange: s
2034
+ onChange: l
1693
2035
  }, [
1694
- e.placeholder ? (o(), i("option", Vl, T(e.placeholder), 1)) : z("", !0),
1695
- (o(!0), i(A, null, X(e.options, (S) => (o(), i("option", {
1696
- key: S.value,
1697
- value: S.value
1698
- }, T(S.text), 9, _l))), 128))
1699
- ], 40, Ol)
2036
+ e.placeholder ? (s(), r("option", Za, T(e.placeholder), 1)) : S("", !0),
2037
+ (s(!0), r(N, null, U(e.options, (M) => (s(), r("option", {
2038
+ key: M.value,
2039
+ value: M.value
2040
+ }, T(M.text), 9, Qa))), 128))
2041
+ ], 40, Ja)
1700
2042
  ]));
1701
2043
  }
1702
- }), El = {
2044
+ }), el = {
1703
2045
  key: 0,
1704
2046
  class: "label"
1705
- }, Ll = { class: "label-text" }, jl = ["onKeydown", "aria-expanded", "aria-activedescendant"], Pl = ["placeholder", "disabled"], Rl = {
2047
+ }, tl = { class: "label-text" }, al = ["onKeydown", "aria-expanded", "aria-activedescendant"], ll = ["placeholder", "disabled"], nl = {
1706
2048
  class: "top-full z-10 absolute bg-base-100 shadow-lg mt-1 rounded-md w-full dropdown-content",
1707
2049
  role: "listbox"
1708
- }, Al = { class: "flex-nowrap p-0 w-[inherit] max-h-60 overflow-y-auto menu" }, Nl = ["onMousedown", "id", "aria-selected"], Ya = {
2050
+ }, sl = { class: "flex-nowrap p-0 w-[inherit] max-h-60 overflow-y-auto menu" }, ol = ["onMousedown", "id", "aria-selected"], Hn = {
1709
2051
  __name: "filterableSelect",
1710
2052
  props: {
1711
2053
  // Array of options: [{ value: any, text: string }, ...]
@@ -1735,193 +2077,193 @@ const pt = ye("SunIcon", [
1735
2077
  }
1736
2078
  },
1737
2079
  emits: ["update:modelValue", "select", "clear"],
1738
- setup(e, { expose: c, emit: l }) {
1739
- const t = e, r = l, a = Je(), s = U(() => {
1740
- const D = (a.default ? a.default() : []).filter((w) => w.type !== Ze);
1741
- return console.log("hasDefaultSlotContent computed:", D.length > 0), D.length > 0;
1742
- }), m = h(""), u = h(null), g = h(!1), S = h(null), R = h(null), V = h(null), v = h(null), O = () => {
1743
- g.value = !t.disabled;
1744
- }, M = () => {
1745
- g.value = !1, v.value = null, s.value || (u.value && m.value !== u.value.text ? m.value = u.value.text : u.value || (m.value = ""));
1746
- }, H = () => {
1747
- g.value ? M() : O();
1748
- }, N = U(() => {
1749
- const d = m.value ? m.value.toLowerCase() : "";
1750
- return d === "" && !g.value ? [] : t.options.filter(
1751
- (w) => w && w.text ? w.text.toLowerCase().includes(d) : ""
2080
+ setup(e, { expose: n, emit: a }) {
2081
+ const t = e, o = a, i = tt(), l = _(() => {
2082
+ const B = (i.default ? i.default() : []).filter((I) => I.type !== at);
2083
+ return console.log("hasDefaultSlotContent computed:", B.length > 0), B.length > 0;
2084
+ }), d = b(""), c = b(null), h = b(!1), M = b(null), A = b(null), O = b(null), v = b(null), D = () => {
2085
+ h.value = !t.disabled;
2086
+ }, V = () => {
2087
+ h.value = !1, v.value = null, l.value || (c.value && d.value !== c.value.text ? d.value = c.value.text : c.value || (d.value = ""));
2088
+ }, W = () => {
2089
+ h.value ? V() : D();
2090
+ }, F = _(() => {
2091
+ const f = d.value ? d.value.toLowerCase() : "";
2092
+ return f === "" && !h.value ? [] : t.options.filter(
2093
+ (I) => I && I.text ? I.text.toLowerCase().includes(f) : ""
1752
2094
  );
1753
2095
  });
1754
- q(
2096
+ R(
1755
2097
  () => t.modelValue,
1756
- (d, D) => {
1757
- if (d !== D && M(), d == null)
1758
- u.value = null, !g.value && !s.value && (m.value = "");
2098
+ (f, B) => {
2099
+ if (f !== B && V(), f == null)
2100
+ c.value = null, !h.value && !l.value && (d.value = "");
1759
2101
  else {
1760
- const w = t.options.find((_) => _.value === d);
1761
- w ? (u.value = w, !g.value && !s.value && (m.value = w.text)) : (u.value = null, !g.value && !s.value && (m.value = ""));
2102
+ const I = t.options.find((H) => H.value === f);
2103
+ I ? (c.value = I, !h.value && !l.value && (d.value = I.text)) : (c.value = null, !h.value && !l.value && (d.value = ""));
1762
2104
  }
1763
2105
  },
1764
2106
  { immediate: !0 }
1765
2107
  // Run immediately on component mount
1766
2108
  );
1767
- const W = (d) => {
1768
- R.value && !R.value.contains(d.target) && M();
1769
- }, Z = () => {
2109
+ const K = (f) => {
2110
+ A.value && !A.value.contains(f.target) && V();
2111
+ }, J = () => {
1770
2112
  setTimeout(() => {
1771
- R.value && !R.value.contains(document.activeElement) && M();
2113
+ A.value && !A.value.contains(document.activeElement) && V();
1772
2114
  }, 100);
1773
2115
  };
1774
- q(g, (d) => {
1775
- d ? setTimeout(() => {
1776
- document.addEventListener("click", W);
1777
- }, 0) : document.removeEventListener("click", W);
1778
- }), Ve(() => {
1779
- document.removeEventListener("click", W), window.removeEventListener("keydown", I);
2116
+ R(h, (f) => {
2117
+ f ? setTimeout(() => {
2118
+ document.addEventListener("click", K);
2119
+ }, 0) : document.removeEventListener("click", K);
2120
+ }), Ee(() => {
2121
+ document.removeEventListener("click", K), window.removeEventListener("keydown", j);
1780
2122
  });
1781
- const te = () => {
2123
+ const ae = () => {
1782
2124
  if (t.disabled) return;
1783
- const d = u.value;
1784
- r("update:modelValue", null), d && r("clear", d);
1785
- }, f = (d) => {
1786
- u.value = d, s.value || (m.value = d.text), r("update:modelValue", d.value), r("select", d), M();
1787
- }, y = () => {
1788
- N.value.length > 0 && f(N.value[0]);
1789
- }, b = () => {
1790
- g.value || O();
1791
- }, I = (d) => {
1792
- if (!g.value || N.value.length === 0) return;
1793
- const D = N.value.findIndex(
1794
- (_, P) => "option-" + P === v.value
2125
+ const f = c.value;
2126
+ o("update:modelValue", null), f && o("clear", f);
2127
+ }, m = (f) => {
2128
+ c.value = f, l.value || (d.value = f.text), o("update:modelValue", f.value), o("select", f), V();
2129
+ }, x = () => {
2130
+ F.value.length > 0 && m(F.value[0]);
2131
+ }, k = () => {
2132
+ h.value || D();
2133
+ }, j = (f) => {
2134
+ if (!h.value || F.value.length === 0) return;
2135
+ const B = F.value.findIndex(
2136
+ (H, ee) => "option-" + ee === v.value
1795
2137
  );
1796
- let w = -1;
1797
- if (d.key === "ArrowDown")
1798
- d.preventDefault(), w = (D + 1) % N.value.length;
1799
- else if (d.key === "ArrowUp")
1800
- d.preventDefault(), w = (D - 1 + N.value.length) % N.value.length;
1801
- else if (d.key === "Enter" && v.value) {
1802
- d.preventDefault();
1803
- const _ = N.value.find(
1804
- (P, Q) => "option-" + Q === v.value
2138
+ let I = -1;
2139
+ if (f.key === "ArrowDown")
2140
+ f.preventDefault(), I = (B + 1) % F.value.length;
2141
+ else if (f.key === "ArrowUp")
2142
+ f.preventDefault(), I = (B - 1 + F.value.length) % F.value.length;
2143
+ else if (f.key === "Enter" && v.value) {
2144
+ f.preventDefault();
2145
+ const H = F.value.find(
2146
+ (ee, G) => "option-" + G === v.value
1805
2147
  );
1806
- _ && f(_);
2148
+ H && m(H);
1807
2149
  return;
1808
- } else if (d.key === "Escape") {
1809
- d.preventDefault(), M(), V.value && V.value.focus();
2150
+ } else if (f.key === "Escape") {
2151
+ f.preventDefault(), V(), O.value && O.value.focus();
1810
2152
  return;
1811
- } else if (s.value)
2153
+ } else if (l.value)
1812
2154
  return;
1813
- if (w !== -1) {
1814
- v.value = "option-" + w;
1815
- const _ = document.getElementById(v.value);
1816
- _ && requestAnimationFrame(() => {
1817
- _.scrollIntoView({ block: "nearest", behavior: "smooth" });
2155
+ if (I !== -1) {
2156
+ v.value = "option-" + I;
2157
+ const H = document.getElementById(v.value);
2158
+ H && requestAnimationFrame(() => {
2159
+ H.scrollIntoView({ block: "nearest", behavior: "smooth" });
1818
2160
  });
1819
2161
  }
1820
2162
  };
1821
- return q(g, (d) => {
1822
- d ? (window.addEventListener("keydown", I), !s.value && !m.value && u.value && (m.value = u.value.text)) : window.removeEventListener("keydown", I);
1823
- }), Ve(() => {
1824
- document.removeEventListener("click", W), window.removeEventListener("keydown", I);
1825
- }), c({
1826
- isDropdownOpen: g,
2163
+ return R(h, (f) => {
2164
+ f ? (window.addEventListener("keydown", j), !l.value && !d.value && c.value && (d.value = c.value.text)) : window.removeEventListener("keydown", j);
2165
+ }), Ee(() => {
2166
+ document.removeEventListener("click", K), window.removeEventListener("keydown", j);
2167
+ }), n({
2168
+ isDropdownOpen: h,
1827
2169
  // Expose state
1828
- selectedItem: u,
2170
+ selectedItem: c,
1829
2171
  // Expose selected item
1830
- openDropdown: O,
2172
+ openDropdown: D,
1831
2173
  // Expose method to open
1832
- closeDropdown: M,
2174
+ closeDropdown: V,
1833
2175
  // Expose method to close
1834
- toggleDropdown: H,
2176
+ toggleDropdown: W,
1835
2177
  // Expose method to toggle
1836
- selectItem: f,
2178
+ selectItem: m,
1837
2179
  // Expose method to select an item programmatically
1838
- filterText: m,
2180
+ filterText: d,
1839
2181
  // Expose filter text (useful if parent controls filtering)
1840
- hasDefaultSlotContent: s
2182
+ hasDefaultSlotContent: l
1841
2183
  // Expose to know if the default slot is used
1842
- }), (d, D) => (o(), i("div", {
2184
+ }), (f, B) => (s(), r("div", {
1843
2185
  class: "relative w-full max-w-xs form-control",
1844
2186
  ref_key: "componentRoot",
1845
- ref: R
2187
+ ref: A
1846
2188
  }, [
1847
- e.label ? (o(), i("label", El, [
1848
- n("span", Ll, T(e.label), 1)
1849
- ])) : z("", !0),
1850
- n("div", {
1851
- class: $(["flex items-center input-bordered rounded-md w-fit cursor-pointer", { input: !s.value, select: !s.value }]),
2189
+ e.label ? (s(), r("label", el, [
2190
+ u("span", tl, T(e.label), 1)
2191
+ ])) : S("", !0),
2192
+ u("div", {
2193
+ class: w(["flex items-center input-bordered rounded-md w-fit cursor-pointer", { input: !l.value, select: !l.value }]),
1852
2194
  style: { "background-image": "unset", "padding-right": "0.5rem" },
1853
2195
  tabindex: " 0",
1854
- onClick: D[1] || (D[1] = (w) => s.value ? H() : O()),
2196
+ onClick: B[1] || (B[1] = (I) => l.value ? W() : D()),
1855
2197
  onKeydown: [
1856
- pe(ne(y, ["prevent"]), ["enter"]),
1857
- pe(ne(y, ["prevent"]), ["space"])
2198
+ ge(oe(x, ["prevent"]), ["enter"]),
2199
+ ge(oe(x, ["prevent"]), ["space"])
1858
2200
  ],
1859
- onBlur: Z,
2201
+ onBlur: J,
1860
2202
  role: "combobox",
1861
2203
  "aria-haspopup": "listbox",
1862
- "aria-expanded": g.value,
2204
+ "aria-expanded": h.value,
1863
2205
  "aria-activedescendant": v.value,
1864
2206
  "aria-autocomplete": "list",
1865
2207
  ref_key: "activatorWrapper",
1866
- ref: V
2208
+ ref: O
1867
2209
  }, [
1868
- B(d.$slots, "default", {}, () => [
1869
- s.value ? z("", !0) : Se((o(), i("input", {
2210
+ $(f.$slots, "default", {}, () => [
2211
+ l.value ? S("", !0) : ke((s(), r("input", {
1870
2212
  key: 0,
1871
2213
  type: "text",
1872
2214
  placeholder: e.placeholder,
1873
2215
  class: "bg-transparent border-none focus:outline-none w-full",
1874
- "onUpdate:modelValue": D[0] || (D[0] = (w) => m.value = w),
2216
+ "onUpdate:modelValue": B[0] || (B[0] = (I) => d.value = I),
1875
2217
  ref_key: "filterInput",
1876
- ref: S,
1877
- onFocus: O,
1878
- onInput: b,
2218
+ ref: M,
2219
+ onFocus: D,
2220
+ onInput: k,
1879
2221
  tabindex: "-1",
1880
2222
  disabled: t.disabled
1881
- }, null, 40, Pl)), [
1882
- [Ae, m.value]
2223
+ }, null, 40, ll)), [
2224
+ [Ue, d.value]
1883
2225
  ])
1884
2226
  ]),
1885
- u.value && !e.disabled ? (o(), ce(ee(ft), {
2227
+ c.value && !e.disabled ? (s(), fe(te(gt), {
1886
2228
  key: 0,
1887
2229
  size: 20,
1888
2230
  class: "mx-2 text-base-content/50 hover:text-base-content/80 cursor-pointer",
1889
- onClick: ne(te, ["stop"])
1890
- })) : z("", !0),
1891
- oe(ee(vt), {
1892
- class: $([{ "rotate-180": g.value }, "mx-2 cursor-pointer text-base-content/60 hover:text-base-content/80"]),
2231
+ onClick: oe(ae, ["stop"])
2232
+ })) : S("", !0),
2233
+ re(te(ht), {
2234
+ class: w([{ "rotate-180": h.value }, "mx-2 cursor-pointer text-base-content/60 hover:text-base-content/80"]),
1893
2235
  size: 20,
1894
- onClick: ne(H, ["stop"])
2236
+ onClick: oe(W, ["stop"])
1895
2237
  }, null, 8, ["class"])
1896
- ], 42, jl),
1897
- Se(n("div", Rl, [
1898
- n("ul", Al, [
1899
- (o(!0), i(A, null, X(N.value, (w, _) => (o(), i("li", {
1900
- key: w.value,
1901
- onMousedown: ne((P) => f(w), ["prevent"]),
2238
+ ], 42, al),
2239
+ ke(u("div", nl, [
2240
+ u("ul", sl, [
2241
+ (s(!0), r(N, null, U(F.value, (I, H) => (s(), r("li", {
2242
+ key: I.value,
2243
+ onMousedown: oe((ee) => m(I), ["prevent"]),
1902
2244
  class: "hover:bg-base-200 rounded-md w-full cursor-pointer",
1903
- id: "option-" + _,
2245
+ id: "option-" + H,
1904
2246
  role: "option",
1905
- "aria-selected": u.value && u.value.value === w.value
2247
+ "aria-selected": c.value && c.value.value === I.value
1906
2248
  }, [
1907
- n("a", null, T(w.text), 1)
1908
- ], 40, Nl))), 128))
2249
+ u("a", null, T(I.text), 1)
2250
+ ], 40, ol))), 128))
1909
2251
  ])
1910
2252
  ], 512), [
1911
- [Qe, g.value && N.value.length > 0]
2253
+ [lt, h.value && F.value.length > 0]
1912
2254
  ])
1913
2255
  ], 512));
1914
2256
  }
1915
- }, ql = { class: "w-full max-w-xs form-control" }, Fl = {
2257
+ }, il = { class: "w-full max-w-xs form-control" }, rl = {
1916
2258
  key: 0,
1917
2259
  class: "label"
1918
- }, Hl = { class: "label-text" }, Ul = ["type", "placeholder", "disabled", "value"], Wl = {
2260
+ }, ul = { class: "label-text" }, cl = ["type", "placeholder", "disabled", "value"], dl = {
1919
2261
  key: 1,
1920
2262
  class: "label"
1921
- }, Kl = { class: "label-text-alt text-error validator-hint" }, Xl = {
2263
+ }, fl = { class: "label-text-alt text-error validator-hint" }, vl = {
1922
2264
  key: 2,
1923
2265
  class: "label"
1924
- }, Yl = { class: "label-text-alt text-success validator-hint" }, Ga = /* @__PURE__ */ j({
2266
+ }, ml = { class: "label-text-alt text-success validator-hint" }, Un = /* @__PURE__ */ z({
1925
2267
  __name: "inputField",
1926
2268
  props: {
1927
2269
  modelValue: { default: "" },
@@ -1937,43 +2279,43 @@ const pt = ye("SunIcon", [
1937
2279
  disabled: { type: Boolean, default: !1 }
1938
2280
  },
1939
2281
  emits: ["update:modelValue", "validate"],
1940
- setup(e, { expose: c, emit: l }) {
1941
- const t = e, r = l, a = h(null), s = h(!1), m = h(""), u = U(() => {
1942
- var H, N, W, Z;
1943
- let v = !0, O = "";
1944
- const M = t.modelValue;
1945
- return (H = t.rules) != null && H.required && (M == null || M === "") && (v = !1, O = "This field is required."), v && ((N = t.rules) == null ? void 0 : N.minLength) !== void 0 && typeof M == "string" && M.length < t.rules.minLength && (v = !1, O = `Must be at least ${t.rules.minLength} characters.`), v && ((W = t.rules) == null ? void 0 : W.maxLength) !== void 0 && typeof M == "string" && M.length > t.rules.maxLength && (v = !1, O = `Cannot exceed ${t.rules.maxLength} characters.`), v && ((Z = t.rules) != null && Z.email) && typeof M == "string" && M && (/^[^\s@]+@[^\s@]+\.[^\s@]+$/.test(M) || (v = !1, O = "Please enter a valid email address.")), m.value = O, r("validate", v), v;
1946
- }), g = U(() => s.value && !u.value), S = (v) => {
1947
- const O = v.target;
1948
- r("update:modelValue", O.value), s.value && u.value;
1949
- }, R = () => {
1950
- s.value = !0, u.value;
2282
+ setup(e, { expose: n, emit: a }) {
2283
+ const t = e, o = a, i = b(null), l = b(!1), d = b(""), c = _(() => {
2284
+ var W, F, K, J;
2285
+ let v = !0, D = "";
2286
+ const V = t.modelValue;
2287
+ return (W = t.rules) != null && W.required && (V == null || V === "") && (v = !1, D = "This field is required."), v && ((F = t.rules) == null ? void 0 : F.minLength) !== void 0 && typeof V == "string" && V.length < t.rules.minLength && (v = !1, D = `Must be at least ${t.rules.minLength} characters.`), v && ((K = t.rules) == null ? void 0 : K.maxLength) !== void 0 && typeof V == "string" && V.length > t.rules.maxLength && (v = !1, D = `Cannot exceed ${t.rules.maxLength} characters.`), v && ((J = t.rules) != null && J.email) && typeof V == "string" && V && (/^[^\s@]+@[^\s@]+\.[^\s@]+$/.test(V) || (v = !1, D = "Please enter a valid email address.")), d.value = D, o("validate", v), v;
2288
+ }), h = _(() => l.value && !c.value), M = (v) => {
2289
+ const D = v.target;
2290
+ o("update:modelValue", D.value), l.value && c.value;
2291
+ }, A = () => {
2292
+ l.value = !0, c.value;
1951
2293
  };
1952
- return q(
2294
+ return R(
1953
2295
  () => t.modelValue,
1954
2296
  () => {
1955
- s.value && u.value;
2297
+ l.value && c.value;
1956
2298
  }
1957
- ), c({
2299
+ ), n({
1958
2300
  focusInput: () => {
1959
2301
  var v;
1960
- console.log("inputField.vue: focusInput method called."), (v = a.value) == null || v.focus();
2302
+ console.log("inputField.vue: focusInput method called."), (v = i.value) == null || v.focus();
1961
2303
  },
1962
- isValid: u,
1963
- isTouched: s,
1964
- errorMessage: m
1965
- }), (v, O) => (o(), i("div", ql, [
1966
- e.label ? (o(), i("label", Fl, [
1967
- n("span", Hl, T(e.label), 1)
1968
- ])) : z("", !0),
1969
- B(v.$slots, "default"),
1970
- n("input", {
2304
+ isValid: c,
2305
+ isTouched: l,
2306
+ errorMessage: d
2307
+ }), (v, D) => (s(), r("div", il, [
2308
+ e.label ? (s(), r("label", rl, [
2309
+ u("span", ul, T(e.label), 1)
2310
+ ])) : S("", !0),
2311
+ $(v.$slots, "default"),
2312
+ u("input", {
1971
2313
  ref_key: "inputElement",
1972
- ref: a,
2314
+ ref: i,
1973
2315
  type: e.type,
1974
2316
  placeholder: e.placeholder,
1975
2317
  disabled: t.disabled,
1976
- class: $(["input-bordered rounded-md w-full input validator", [
2318
+ class: w(["input-bordered rounded-md w-full input validator", [
1977
2319
  {
1978
2320
  // Size classes - Apply based on size prop
1979
2321
  "input-xs": e.size === "xs",
@@ -1985,33 +2327,89 @@ const pt = ye("SunIcon", [
1985
2327
  "input-ghost": e.style === "ghost",
1986
2328
  // Color classes - Apply only if NOT in an error state AND NOT in a validation success state.
1987
2329
  // This ensures validation feedback overrides base colors.
1988
- "input-neutral": e.color === "neutral" && !g.value && !(u.value && s.value && e.needsValidation),
1989
- "input-primary": e.color === "primary" && !g.value && !(u.value && s.value && e.needsValidation),
1990
- "input-secondary": e.color === "secondary" && !g.value && !(u.value && s.value && e.needsValidation),
1991
- "input-accent": e.color === "accent" && !g.value && !(u.value && s.value && e.needsValidation),
1992
- "input-info": e.color === "info" && !g.value && !(u.value && s.value && e.needsValidation),
1993
- "input-success": e.color === "success" && !g.value && !(u.value && s.value && e.needsValidation),
2330
+ "input-neutral": e.color === "neutral" && !h.value && !(c.value && l.value && e.needsValidation),
2331
+ "input-primary": e.color === "primary" && !h.value && !(c.value && l.value && e.needsValidation),
2332
+ "input-secondary": e.color === "secondary" && !h.value && !(c.value && l.value && e.needsValidation),
2333
+ "input-accent": e.color === "accent" && !h.value && !(c.value && l.value && e.needsValidation),
2334
+ "input-info": e.color === "info" && !h.value && !(c.value && l.value && e.needsValidation),
2335
+ "input-success": e.color === "success" && !h.value && !(c.value && l.value && e.needsValidation),
1994
2336
  // Color success applies only if not in error or validation success state
1995
- "input-warning": e.color === "warning" && !g.value && !(u.value && s.value && e.needsValidation),
2337
+ "input-warning": e.color === "warning" && !h.value && !(c.value && l.value && e.needsValidation),
1996
2338
  // Validation state classes - These take precedence visually via conditions or CSS specificity.
1997
- "input-error": g.value,
2339
+ "input-error": h.value,
1998
2340
  // Apply error style if validation fails
1999
- "input-success-validation": u.value && s.value && !g.value && e.needsValidation
2341
+ "input-success-validation": c.value && l.value && !h.value && e.needsValidation
2000
2342
  // Apply validation success style if valid, touched, not error, AND validation is needed. Using a distinct name 'input-success-validation' is recommended to avoid CSS conflicts with the 'input-success' color class.
2001
2343
  }
2002
2344
  ]]),
2003
2345
  value: e.modelValue,
2004
- onInput: S,
2005
- onBlur: R
2006
- }, null, 42, Ul),
2007
- g.value ? (o(), i("div", Wl, [
2008
- n("span", Kl, T(m.value), 1)
2009
- ])) : u.value && s.value && e.successMessage ? (o(), i("div", Xl, [
2010
- n("span", Yl, T(e.successMessage), 1)
2011
- ])) : z("", !0)
2346
+ onInput: M,
2347
+ onBlur: A
2348
+ }, null, 42, cl),
2349
+ h.value ? (s(), r("div", dl, [
2350
+ u("span", fl, T(d.value), 1)
2351
+ ])) : c.value && l.value && e.successMessage ? (s(), r("div", vl, [
2352
+ u("span", ml, T(e.successMessage), 1)
2353
+ ])) : S("", !0)
2012
2354
  ]));
2013
2355
  }
2014
- }), Ja = /* @__PURE__ */ j({
2356
+ }), pl = ["value", "placeholder", "disabled", "rows"], Kn = /* @__PURE__ */ z({
2357
+ inheritAttrs: !1,
2358
+ __name: "textarea",
2359
+ props: {
2360
+ modelValue: { default: "" },
2361
+ placeholder: {},
2362
+ rows: { default: 3 },
2363
+ color: {},
2364
+ size: {},
2365
+ ghost: { type: Boolean, default: !1 },
2366
+ disabled: { type: Boolean, default: !1 }
2367
+ },
2368
+ emits: ["update:modelValue"],
2369
+ setup(e, { emit: n }) {
2370
+ const a = e, t = n, o = _(() => {
2371
+ const l = ["textarea"];
2372
+ return a.ghost && l.push("textarea-ghost"), a.color && l.push(`textarea-${a.color}`), a.size && l.push(`textarea-${a.size}`), l.join(" ");
2373
+ }), i = (l) => {
2374
+ const d = l.target;
2375
+ t("update:modelValue", d.value);
2376
+ };
2377
+ return (l, d) => (s(), r("textarea", ie({
2378
+ class: o.value,
2379
+ value: e.modelValue,
2380
+ placeholder: e.placeholder,
2381
+ disabled: e.disabled,
2382
+ rows: e.rows,
2383
+ onInput: i
2384
+ }, l.$attrs), null, 16, pl));
2385
+ }
2386
+ }), hl = ["checked", "disabled"], Xn = /* @__PURE__ */ z({
2387
+ inheritAttrs: !1,
2388
+ __name: "toggle",
2389
+ props: {
2390
+ modelValue: { type: Boolean, default: !1 },
2391
+ color: {},
2392
+ size: {},
2393
+ disabled: { type: Boolean, default: !1 }
2394
+ },
2395
+ emits: ["update:modelValue"],
2396
+ setup(e, { emit: n }) {
2397
+ const a = e, t = n, o = _(() => {
2398
+ const l = ["toggle"];
2399
+ return a.color && l.push(`toggle-${a.color}`), a.size && l.push(`toggle-${a.size}`), l.join(" ");
2400
+ }), i = (l) => {
2401
+ const d = l.target;
2402
+ t("update:modelValue", d.checked);
2403
+ };
2404
+ return (l, d) => (s(), r("input", ie({
2405
+ type: "checkbox",
2406
+ class: o.value,
2407
+ checked: e.modelValue,
2408
+ disabled: e.disabled,
2409
+ onChange: i
2410
+ }, l.$attrs), null, 16, hl));
2411
+ }
2412
+ }), Gn = /* @__PURE__ */ z({
2015
2413
  __name: "loader",
2016
2414
  props: {
2017
2415
  loading: { type: Boolean, default: !0 },
@@ -2020,15 +2418,15 @@ const pt = ye("SunIcon", [
2020
2418
  color: { default: "primary" }
2021
2419
  },
2022
2420
  setup(e) {
2023
- const c = e, l = h(c.loading);
2024
- return q(
2025
- () => c.loading,
2421
+ const n = e, a = b(n.loading);
2422
+ return R(
2423
+ () => n.loading,
2026
2424
  (t) => {
2027
- l.value = t;
2425
+ a.value = t;
2028
2426
  }
2029
- ), (t, r) => l.value ? (o(), i("span", {
2427
+ ), (t, o) => a.value ? (s(), r("span", {
2030
2428
  key: 0,
2031
- class: $(["loading", [
2429
+ class: w(["loading", [
2032
2430
  { "loading-xs": e.size === "xs" },
2033
2431
  { "loading-sm": e.size === "sm" },
2034
2432
  { "loading-md": e.size === "md" },
@@ -2051,29 +2449,66 @@ const pt = ye("SunIcon", [
2051
2449
  { "text-warning": e.color === "warning" },
2052
2450
  { "text-error": e.color === "error" }
2053
2451
  ]])
2054
- }, null, 2)) : z("", !0);
2452
+ }, null, 2)) : S("", !0);
2055
2453
  }
2056
- }), Ce = h([]);
2057
- function Gl() {
2058
- const e = (l, t = "default", r = 5e3) => {
2059
- const a = Math.random().toString(36).substring(2, 9);
2060
- Ce.value.push({
2061
- id: a,
2062
- message: l,
2454
+ }), gl = ["value", "max"], Yn = /* @__PURE__ */ z({
2455
+ inheritAttrs: !1,
2456
+ __name: "progress",
2457
+ props: {
2458
+ value: {},
2459
+ max: { default: 100 },
2460
+ color: {}
2461
+ },
2462
+ setup(e) {
2463
+ const n = e, a = _(() => {
2464
+ const t = ["progress"];
2465
+ return n.color && t.push(`progress-${n.color}`), t.join(" ");
2466
+ });
2467
+ return (t, o) => (s(), r("progress", ie({
2468
+ class: a.value,
2469
+ value: e.value,
2470
+ max: e.max
2471
+ }, t.$attrs), null, 16, gl));
2472
+ }
2473
+ }), Jn = /* @__PURE__ */ z({
2474
+ __name: "skeleton",
2475
+ props: {
2476
+ text: { type: Boolean, default: !1 },
2477
+ width: {},
2478
+ height: {}
2479
+ },
2480
+ setup(e) {
2481
+ const n = e, a = _(() => {
2482
+ const t = ["skeleton"];
2483
+ return n.text && t.push("skeleton-text"), t.join(" ");
2484
+ });
2485
+ return (t, o) => (s(), r("div", {
2486
+ class: w(a.value)
2487
+ }, [
2488
+ $(t.$slots, "default")
2489
+ ], 2));
2490
+ }
2491
+ }), Te = b([]);
2492
+ function bl() {
2493
+ const e = (a, t = "default", o = 5e3) => {
2494
+ const i = Math.random().toString(36).substring(2, 9);
2495
+ Te.value.push({
2496
+ id: i,
2497
+ message: a,
2063
2498
  type: t,
2064
- duration: r
2499
+ duration: o
2065
2500
  });
2066
- }, c = (l) => {
2067
- Ce.value = Ce.value.filter((t) => t.id !== l);
2501
+ }, n = (a) => {
2502
+ Te.value = Te.value.filter((t) => t.id !== a);
2068
2503
  };
2069
2504
  return {
2070
2505
  // Expose a read-only version of the toasts array
2071
- toasts: et(Ce),
2506
+ toasts: nt(Te),
2072
2507
  addToast: e,
2073
- removeToast: c
2508
+ removeToast: n
2074
2509
  };
2075
2510
  }
2076
- const Jl = ["value"], Zl = /* @__PURE__ */ j({
2511
+ const yl = ["value"], wl = /* @__PURE__ */ z({
2077
2512
  __name: "ToastNotification",
2078
2513
  props: {
2079
2514
  toast: {
@@ -2082,22 +2517,22 @@ const Jl = ["value"], Zl = /* @__PURE__ */ j({
2082
2517
  }
2083
2518
  },
2084
2519
  emits: ["remove"],
2085
- setup(e, { emit: c }) {
2086
- const l = e, t = c, r = h(100);
2087
- let a = null, s = null;
2088
- de(() => {
2089
- const u = l.toast.duration, g = Date.now();
2090
- a = setTimeout(() => {
2091
- t("remove", l.toast.id);
2092
- }, u), s = setInterval(() => {
2093
- const S = Date.now() - g, R = Math.max(0, u - S);
2094
- r.value = R / u * 100, R === 0 && clearInterval(s);
2520
+ setup(e, { emit: n }) {
2521
+ const a = e, t = n, o = b(100);
2522
+ let i = null, l = null;
2523
+ pe(() => {
2524
+ const c = a.toast.duration, h = Date.now();
2525
+ i = setTimeout(() => {
2526
+ t("remove", a.toast.id);
2527
+ }, c), l = setInterval(() => {
2528
+ const M = Date.now() - h, A = Math.max(0, c - M);
2529
+ o.value = A / c * 100, A === 0 && clearInterval(l);
2095
2530
  }, 50);
2096
- }), Ee(() => {
2097
- a && clearTimeout(a), s && clearInterval(s);
2531
+ }), Re(() => {
2532
+ i && clearTimeout(i), l && clearInterval(l);
2098
2533
  });
2099
- const m = U(() => {
2100
- switch (l.toast.type) {
2534
+ const d = _(() => {
2535
+ switch (a.toast.type) {
2101
2536
  case "success":
2102
2537
  return "alert-success";
2103
2538
  case "warning":
@@ -2110,19 +2545,19 @@ const Jl = ["value"], Zl = /* @__PURE__ */ j({
2110
2545
  return "";
2111
2546
  }
2112
2547
  });
2113
- return (u, g) => (o(), i("div", {
2548
+ return (c, h) => (s(), r("div", {
2114
2549
  role: "alert",
2115
- class: $(["alert z-60", m.value, "shadow-lg"])
2550
+ class: w(["alert z-60", d.value, "shadow-lg"])
2116
2551
  }, [
2117
- n("span", null, T(e.toast.message), 1),
2118
- n("progress", {
2119
- class: $(["progress absolute bottom-0 left-0 w-full progress-neutral"]),
2120
- value: r.value,
2552
+ u("span", null, T(e.toast.message), 1),
2553
+ u("progress", {
2554
+ class: w(["progress absolute bottom-0 left-0 w-full progress-neutral"]),
2555
+ value: o.value,
2121
2556
  max: "100"
2122
- }, null, 8, Jl)
2557
+ }, null, 8, yl)
2123
2558
  ], 2));
2124
2559
  }
2125
- }), Ql = /* @__PURE__ */ re(Zl, [["__scopeId", "data-v-bc0c6917"]]), ea = /* @__PURE__ */ j({
2560
+ }), $l = /* @__PURE__ */ ve(wl, [["__scopeId", "data-v-bc0c6917"]]), xl = /* @__PURE__ */ z({
2126
2561
  __name: "ToastContainer",
2127
2562
  props: {
2128
2563
  position: {
@@ -2132,38 +2567,55 @@ const Jl = ["value"], Zl = /* @__PURE__ */ j({
2132
2567
  }
2133
2568
  },
2134
2569
  setup(e) {
2135
- const c = e, { toasts: l, removeToast: t } = Gl(), r = U(() => {
2136
- const [a, s] = c.position.split("-");
2570
+ const n = e, { toasts: a, removeToast: t } = bl(), o = _(() => {
2571
+ const [i, l] = n.position.split("-");
2137
2572
  return {
2138
- "toast-top": a === "top",
2139
- "toast-middle": a === "middle",
2140
- "toast-bottom": a === "bottom",
2141
- "toast-start": s === "start",
2142
- "toast-center": s === "center",
2143
- "toast-end": s === "end"
2573
+ "toast-top": i === "top",
2574
+ "toast-middle": i === "middle",
2575
+ "toast-bottom": i === "bottom",
2576
+ "toast-start": l === "start",
2577
+ "toast-center": l === "center",
2578
+ "toast-end": l === "end"
2144
2579
  };
2145
2580
  });
2146
- return (a, s) => (o(), i("div", {
2147
- class: $(["toast z-50", r.value])
2581
+ return (i, l) => (s(), r("div", {
2582
+ class: w(["toast z-50", o.value])
2148
2583
  }, [
2149
- oe(tt, { name: "toast-fade" }, {
2150
- default: be(() => [
2151
- (o(!0), i(A, null, X(ee(l), (m) => (o(), ce(Ql, {
2152
- key: m.id,
2153
- toast: m,
2154
- onRemove: (u) => ee(t)(m.id)
2584
+ re(st, { name: "toast-fade" }, {
2585
+ default: ye(() => [
2586
+ (s(!0), r(N, null, U(te(a), (d) => (s(), fe($l, {
2587
+ key: d.id,
2588
+ toast: d,
2589
+ onRemove: (c) => te(t)(d.id)
2155
2590
  }, null, 8, ["toast", "onRemove"]))), 128))
2156
2591
  ]),
2157
2592
  _: 1
2158
2593
  })
2159
2594
  ], 2));
2160
2595
  }
2161
- }), Za = /* @__PURE__ */ re(ea, [["__scopeId", "data-v-e10fa884"]]), ta = {
2596
+ }), Zn = /* @__PURE__ */ ve(xl, [["__scopeId", "data-v-e10fa884"]]), Qn = /* @__PURE__ */ z({
2597
+ __name: "toast",
2598
+ props: {
2599
+ position: { default: "end" },
2600
+ vertical: { default: "bottom" }
2601
+ },
2602
+ setup(e) {
2603
+ const n = e, a = _(() => {
2604
+ const t = ["toast"];
2605
+ return n.position && t.push(`toast-${n.position}`), n.vertical && t.push(`toast-${n.vertical}`), t.join(" ");
2606
+ });
2607
+ return (t, o) => (s(), r("div", {
2608
+ class: w(a.value)
2609
+ }, [
2610
+ $(t.$slots, "default")
2611
+ ], 2));
2612
+ }
2613
+ }), kl = {
2162
2614
  xmlns: "http://www.w3.org/2000/svg",
2163
2615
  fill: "none",
2164
2616
  viewBox: "0 0 24 24",
2165
2617
  class: "w-6 h-6 stroke-current shrink-0"
2166
- }, la = ["d"], aa = { class: "empty:hidden" }, Qa = /* @__PURE__ */ j({
2618
+ }, Cl = ["d"], zl = { class: "empty:hidden" }, es = /* @__PURE__ */ z({
2167
2619
  __name: "alert",
2168
2620
  props: {
2169
2621
  type: { default: "default" },
@@ -2172,12 +2624,12 @@ const Jl = ["value"], Zl = /* @__PURE__ */ j({
2172
2624
  modelValue: { type: Boolean, default: !0 }
2173
2625
  },
2174
2626
  emits: ["update:modelValue"],
2175
- setup(e, { emit: c }) {
2176
- const l = e, t = c, r = U({
2177
- get: () => l.modelValue,
2178
- set: (u) => t("update:modelValue", u)
2179
- }), a = U(() => {
2180
- switch (l.type) {
2627
+ setup(e, { emit: n }) {
2628
+ const a = e, t = n, o = _({
2629
+ get: () => a.modelValue,
2630
+ set: (c) => t("update:modelValue", c)
2631
+ }), i = _(() => {
2632
+ switch (a.type) {
2181
2633
  case "info":
2182
2634
  return "alert-info";
2183
2635
  case "success":
@@ -2189,8 +2641,8 @@ const Jl = ["value"], Zl = /* @__PURE__ */ j({
2189
2641
  default:
2190
2642
  return "";
2191
2643
  }
2192
- }), s = U(() => {
2193
- switch (l.type) {
2644
+ }), l = _(() => {
2645
+ switch (a.type) {
2194
2646
  case "info":
2195
2647
  return "M13 16h-1v-4h-1m1-4h.01M21 12a9 9 0 11-18 0 9 9 0 0118 0z";
2196
2648
  case "success":
@@ -2202,42 +2654,105 @@ const Jl = ["value"], Zl = /* @__PURE__ */ j({
2202
2654
  default:
2203
2655
  return "M13 16h-1v-4h-1m1-4h.01M21 12a9 9 0 11-18 0 9 9 0 0118 0z";
2204
2656
  }
2205
- }), m = () => {
2206
- r.value = !1;
2657
+ }), d = () => {
2658
+ o.value = !1;
2207
2659
  };
2208
- return (u, g) => r.value ? (o(), i("div", {
2660
+ return (c, h) => o.value ? (s(), r("div", {
2209
2661
  key: 0,
2210
2662
  role: "alert",
2211
- class: $(["alert", a.value])
2663
+ class: w(["alert", i.value])
2212
2664
  }, [
2213
- B(u.$slots, "icon", { class: "w-6 h-6" }, () => [
2214
- (o(), i("svg", ta, [
2215
- n("path", {
2665
+ $(c.$slots, "icon", { class: "w-6 h-6" }, () => [
2666
+ (s(), r("svg", kl, [
2667
+ u("path", {
2216
2668
  "stroke-linecap": "round",
2217
2669
  "stroke-linejoin": "round",
2218
2670
  "stroke-width": "2",
2219
- d: s.value
2220
- }, null, 8, la)
2671
+ d: l.value
2672
+ }, null, 8, Cl)
2221
2673
  ]))
2222
2674
  ]),
2223
- n("span", null, T(e.message), 1),
2224
- n("div", aa, [
2225
- e.closable ? (o(), i("button", {
2675
+ u("span", null, T(e.message), 1),
2676
+ u("div", zl, [
2677
+ e.closable ? (s(), r("button", {
2226
2678
  key: 0,
2227
2679
  class: "btn btn-sm btn-ghost",
2228
- onClick: m
2229
- }, "Close")) : z("", !0),
2230
- B(u.$slots, "default")
2680
+ onClick: d
2681
+ }, "Close")) : S("", !0),
2682
+ $(c.$slots, "default")
2683
+ ])
2684
+ ], 2)) : S("", !0);
2685
+ }
2686
+ }), ts = /* @__PURE__ */ z({
2687
+ __name: "divider",
2688
+ props: {
2689
+ vertical: { type: Boolean, default: !1 },
2690
+ horizontal: { type: Boolean, default: !1 },
2691
+ color: {},
2692
+ position: {}
2693
+ },
2694
+ setup(e) {
2695
+ const n = e, a = _(() => {
2696
+ const t = ["divider"];
2697
+ return n.vertical ? t.push("divider-vertical") : n.horizontal && t.push("divider-horizontal"), n.color && t.push(`divider-${n.color}`), n.position && t.push(`divider-${n.position}`), t.join(" ");
2698
+ });
2699
+ return (t, o) => (s(), r("div", {
2700
+ class: w(a.value)
2701
+ }, [
2702
+ $(t.$slots, "default")
2703
+ ], 2));
2704
+ }
2705
+ }), Sl = ["id"], _l = { class: "drawer-content" }, Bl = { class: "drawer-side" }, Il = ["for"], as = /* @__PURE__ */ z({
2706
+ __name: "drawer",
2707
+ props: {
2708
+ id: {},
2709
+ modelValue: { type: Boolean, default: !1 },
2710
+ end: { type: Boolean, default: !1 },
2711
+ open: { type: Boolean, default: !1 }
2712
+ },
2713
+ emits: ["update:modelValue"],
2714
+ setup(e, { emit: n }) {
2715
+ const a = e, t = n, o = b(a.modelValue || a.open);
2716
+ R(o, (l) => {
2717
+ t("update:modelValue", l);
2718
+ }), R(() => a.modelValue, (l) => {
2719
+ o.value = l;
2720
+ });
2721
+ const i = _(() => {
2722
+ const l = ["drawer"];
2723
+ return a.end && l.push("drawer-end"), a.open && l.push("drawer-open"), l.join(" ");
2724
+ });
2725
+ return (l, d) => (s(), r("div", {
2726
+ class: w(i.value)
2727
+ }, [
2728
+ ke(u("input", {
2729
+ id: e.id,
2730
+ type: "checkbox",
2731
+ class: "drawer-toggle",
2732
+ "onUpdate:modelValue": d[0] || (d[0] = (c) => o.value = c)
2733
+ }, null, 8, Sl), [
2734
+ [He, o.value]
2735
+ ]),
2736
+ u("div", _l, [
2737
+ $(l.$slots, "content")
2738
+ ]),
2739
+ u("div", Bl, [
2740
+ u("label", {
2741
+ for: e.id,
2742
+ "aria-label": "close sidebar",
2743
+ class: "drawer-overlay"
2744
+ }, null, 8, Il),
2745
+ $(l.$slots, "sidebar")
2231
2746
  ])
2232
- ], 2)) : z("", !0);
2747
+ ], 2));
2233
2748
  }
2234
- }), na = { class: "container flex flex-col sm:flex-row" }, oa = { class: "footer-title" }, sa = ["href"], ia = {
2749
+ }), Ml = { class: "container flex flex-col sm:flex-row" }, Tl = { class: "footer-title" }, Vl = ["href"], jl = {
2235
2750
  key: 0,
2236
2751
  class: "sm:hidden w-full"
2237
- }, ra = { class: "border-b-2 border-base-100 last:border-b-0 w-full" }, ua = {
2752
+ }, Dl = { class: "border-b-2 border-base-100 last:border-b-0 w-full" }, Ol = {
2238
2753
  tabindex: "0",
2239
2754
  class: "collapse collapse-plus w-full"
2240
- }, ca = { class: "collapse-title font-bold text-lg collapsible-footer-title" }, da = { class: "collapse-content flex w-full text-sm" }, va = { class: "flex flex-col gap-2.5" }, fa = { class: "w-full" }, ma = ["href"], pa = { class: "sm:w-1/4" }, en = /* @__PURE__ */ j({
2755
+ }, Pl = { class: "collapse-title font-bold text-lg collapsible-footer-title" }, Al = { class: "collapse-content flex w-full text-sm" }, Ll = { class: "flex flex-col gap-2.5" }, El = { class: "w-full" }, Rl = ["href"], Nl = { class: "sm:w-1/4" }, ls = /* @__PURE__ */ z({
2241
2756
  __name: "footer",
2242
2757
  props: {
2243
2758
  items: {},
@@ -2247,127 +2762,299 @@ const Jl = ["value"], Zl = /* @__PURE__ */ j({
2247
2762
  rows: { default: 1 }
2248
2763
  },
2249
2764
  setup(e) {
2250
- const c = e;
2251
- return (l, t) => (o(), i("div", {
2252
- class: $(["mx-auto md:px-10 py-10 text-base-content", [e.background ?? "bg-base-200", e.color ?? "text-base-content"]])
2765
+ const n = e;
2766
+ return (a, t) => (s(), r("div", {
2767
+ class: w(["mx-auto md:px-10 py-10 text-base-content", [e.background ?? "bg-base-200", e.color ?? "text-base-content"]])
2253
2768
  }, [
2254
- n("footer", na, [
2255
- n("div", {
2256
- class: $(["footer sm:footer-horizontal sm:w-3/4", [{ "sm:grid-rows-1": c.rows === 1 }, { "sm:grid-rows-2": c.rows === 2 }, { "sm:grid-rows-3": c.rows === 3 }]])
2769
+ u("footer", Ml, [
2770
+ u("div", {
2771
+ class: w(["footer sm:footer-horizontal sm:w-3/4", [{ "sm:grid-rows-1": n.rows === 1 }, { "sm:grid-rows-2": n.rows === 2 }, { "sm:grid-rows-3": n.rows === 3 }]])
2257
2772
  }, [
2258
- (o(!0), i(A, null, X(c.items, (r) => (o(), i("nav", {
2259
- class: $([{ "hidden sm:grid w-max": e.collapseOnMobile }])
2773
+ (s(!0), r(N, null, U(n.items, (o) => (s(), r("nav", {
2774
+ class: w([{ "hidden sm:grid w-max": e.collapseOnMobile }])
2260
2775
  }, [
2261
- n("h6", oa, T(r.title), 1),
2262
- (o(!0), i(A, null, X(r.items, (a) => (o(), i("a", {
2776
+ u("h6", Tl, T(o.title), 1),
2777
+ (s(!0), r(N, null, U(o.items, (i) => (s(), r("a", {
2263
2778
  class: "link link-hover",
2264
- href: a.link
2265
- }, T(a.text), 9, sa))), 256))
2779
+ href: i.link
2780
+ }, T(i.text), 9, Vl))), 256))
2266
2781
  ], 2))), 256)),
2267
- n("nav", {
2268
- class: $(["empty:hidden", [{ "hidden sm:grid": e.collapseOnMobile }]])
2782
+ u("nav", {
2783
+ class: w(["empty:hidden", [{ "hidden sm:grid": e.collapseOnMobile }]])
2269
2784
  }, [
2270
- B(l.$slots, "extra-row")
2785
+ $(a.$slots, "extra-row")
2271
2786
  ], 2),
2272
- e.collapseOnMobile ? (o(), i("nav", ia, [
2273
- (o(!0), i(A, null, X(c.items, (r) => (o(), i("ul", ra, [
2274
- n("div", ua, [
2275
- n("div", ca, T(r.title), 1),
2276
- n("div", da, [
2277
- n("ul", va, [
2278
- (o(!0), i(A, null, X(r.items, (a) => (o(), i("li", fa, [
2279
- n("a", {
2787
+ e.collapseOnMobile ? (s(), r("nav", jl, [
2788
+ (s(!0), r(N, null, U(n.items, (o) => (s(), r("ul", Dl, [
2789
+ u("div", Ol, [
2790
+ u("div", Pl, T(o.title), 1),
2791
+ u("div", Al, [
2792
+ u("ul", Ll, [
2793
+ (s(!0), r(N, null, U(o.items, (i) => (s(), r("li", El, [
2794
+ u("a", {
2280
2795
  class: "w-full font-medium link link-hover",
2281
- href: a.link
2282
- }, T(a.text), 9, ma)
2796
+ href: i.link
2797
+ }, T(i.text), 9, Rl)
2283
2798
  ]))), 256))
2284
2799
  ])
2285
2800
  ])
2286
2801
  ])
2287
2802
  ]))), 256))
2288
- ])) : z("", !0)
2803
+ ])) : S("", !0)
2289
2804
  ], 2),
2290
- n("aside", pa, [
2291
- B(l.$slots, "default")
2805
+ u("aside", Nl, [
2806
+ $(a.$slots, "default")
2292
2807
  ])
2293
2808
  ])
2294
2809
  ], 2));
2295
2810
  }
2296
- }), ha = {}, ga = { class: "min-h-40 container hero" }, ba = { class: "px-0! text-center hero-content" }, ya = { class: "mt-9 text-4xl" };
2297
- function wa(e, c) {
2298
- return o(), i("div", ga, [
2299
- n("div", ba, [
2300
- n("div", null, [
2301
- n("h1", ya, [
2302
- B(e.$slots, "title", {}, () => [
2303
- c[0] || (c[0] = _e("hero title", -1))
2811
+ }), Fl = {}, ql = { class: "min-h-40 container hero" }, Wl = { class: "px-0! text-center hero-content" }, Hl = { class: "mt-9 text-4xl" };
2812
+ function Ul(e, n) {
2813
+ return s(), r("div", ql, [
2814
+ u("div", Wl, [
2815
+ u("div", null, [
2816
+ u("h1", Hl, [
2817
+ $(e.$slots, "title", {}, () => [
2818
+ n[0] || (n[0] = je("hero title", -1))
2304
2819
  ])
2305
2820
  ]),
2306
- n("p", null, [
2307
- B(e.$slots, "description", { class: "py-9" })
2821
+ u("p", null, [
2822
+ $(e.$slots, "description", { class: "py-9" })
2308
2823
  ]),
2309
- B(e.$slots, "call-to-action-block", { class: "max-w-full" }, () => [
2310
- c[1] || (c[1] = n("button", { class: "btn btn-primary" }, "Call to action", -1))
2824
+ $(e.$slots, "call-to-action-block", { class: "max-w-full" }, () => [
2825
+ n[1] || (n[1] = u("button", { class: "btn btn-primary" }, "Call to action", -1))
2311
2826
  ])
2312
2827
  ])
2313
2828
  ])
2314
2829
  ]);
2315
2830
  }
2316
- const tn = /* @__PURE__ */ re(ha, [["render", wa]]), xa = { class: "flex flex-row place-content-center gap-4 categories" }, ka = ["onClick"], ln = /* @__PURE__ */ j({
2831
+ const ns = /* @__PURE__ */ ve(Fl, [["render", Ul]]), ss = /* @__PURE__ */ z({
2832
+ __name: "join",
2833
+ props: {
2834
+ vertical: { type: Boolean, default: !1 },
2835
+ horizontal: { type: Boolean, default: !1 }
2836
+ },
2837
+ setup(e) {
2838
+ const n = e, a = _(() => {
2839
+ const t = ["join"];
2840
+ return n.vertical ? t.push("join-vertical") : n.horizontal && t.push("join-horizontal"), t.join(" ");
2841
+ });
2842
+ return (t, o) => (s(), r("div", {
2843
+ class: w(a.value)
2844
+ }, [
2845
+ $(t.$slots, "default")
2846
+ ], 2));
2847
+ }
2848
+ }), os = /* @__PURE__ */ z({
2849
+ __name: "stack",
2850
+ props: {
2851
+ position: {}
2852
+ },
2853
+ setup(e) {
2854
+ const n = e, a = _(() => {
2855
+ const t = ["stack"];
2856
+ return n.position && t.push(`stack-${n.position}`), t.join(" ");
2857
+ });
2858
+ return (t, o) => (s(), r("div", {
2859
+ class: w(a.value)
2860
+ }, [
2861
+ $(t.$slots, "default")
2862
+ ], 2));
2863
+ }
2864
+ }), Kl = { class: "breadcrumbs" }, Xl = {
2865
+ key: 0,
2866
+ xmlns: "http://www.w3.org/2000/svg",
2867
+ fill: "none",
2868
+ viewBox: "0 0 24 24",
2869
+ class: "w-4 h-4 mr-2 stroke-current"
2870
+ }, Gl = ["d"], is = /* @__PURE__ */ z({
2871
+ __name: "breadcrumbs",
2872
+ props: {
2873
+ items: {}
2874
+ },
2875
+ emits: ["click"],
2876
+ setup(e, { emit: n }) {
2877
+ const a = n, t = (o, i) => {
2878
+ a("click", o, i);
2879
+ };
2880
+ return (o, i) => (s(), r("div", Kl, [
2881
+ u("ul", null, [
2882
+ (s(!0), r(N, null, U(e.items, (l, d) => (s(), r("li", { key: d }, [
2883
+ (s(), fe(Ve(l.href ? "a" : "span"), {
2884
+ href: l.href,
2885
+ onClick: (c) => t(l, c)
2886
+ }, {
2887
+ default: ye(() => [
2888
+ l.icon ? (s(), r("svg", Xl, [
2889
+ u("path", {
2890
+ "stroke-linecap": "round",
2891
+ "stroke-linejoin": "round",
2892
+ "stroke-width": "2",
2893
+ d: l.icon
2894
+ }, null, 8, Gl)
2895
+ ])) : S("", !0),
2896
+ je(" " + T(l.label), 1)
2897
+ ]),
2898
+ _: 2
2899
+ }, 1032, ["href", "onClick"]))
2900
+ ]))), 128))
2901
+ ])
2902
+ ]));
2903
+ }
2904
+ }), Yl = { class: "flex flex-row place-content-center gap-4 categories" }, Jl = ["onClick"], rs = /* @__PURE__ */ z({
2317
2905
  __name: "categoryNavigation",
2318
2906
  props: {
2319
2907
  searchOptions: {},
2320
2908
  currentCategory: {}
2321
2909
  },
2322
2910
  emits: ["update:currentCategory"],
2323
- setup(e, { emit: c }) {
2324
- const l = e, t = c;
2325
- function r(a) {
2326
- t("update:currentCategory", a);
2911
+ setup(e, { emit: n }) {
2912
+ const a = e, t = n;
2913
+ function o(i) {
2914
+ t("update:currentCategory", i);
2327
2915
  }
2328
- return (a, s) => (o(), i("div", xa, [
2329
- (o(!0), i(A, null, X(l.searchOptions, (m) => (o(), i("div", {
2330
- key: m.category
2916
+ return (i, l) => (s(), r("div", Yl, [
2917
+ (s(!0), r(N, null, U(a.searchOptions, (d) => (s(), r("div", {
2918
+ key: d.category
2331
2919
  }, [
2332
- n("button", {
2333
- onClick: (u) => r(m.category),
2334
- class: $(["truncate btn btn-ghost", { "font-semibold": l.currentCategory === m.category }])
2335
- }, T(m.category), 11, ka)
2920
+ u("button", {
2921
+ onClick: (c) => o(d.category),
2922
+ class: w(["truncate btn btn-ghost", { "font-semibold": a.currentCategory === d.category }])
2923
+ }, T(d.category), 11, Jl)
2336
2924
  ]))), 128))
2337
2925
  ]));
2338
2926
  }
2339
- }), $a = { class: "md:flex hidden navbar-start" }, Ca = { class: "md:flex justify-center items-center hidden navbar-center" }, Sa = { class: "md:flex hidden navbar-end" }, Ia = { class: "navbar-bottom md:flex hidden" }, Ma = /* @__PURE__ */ j({
2927
+ }), us = /* @__PURE__ */ z({
2928
+ __name: "menu",
2929
+ props: {
2930
+ horizontal: { type: Boolean, default: !1 },
2931
+ vertical: { type: Boolean, default: !1 },
2932
+ size: {}
2933
+ },
2934
+ setup(e) {
2935
+ const n = e, a = _(() => {
2936
+ const t = ["menu"];
2937
+ return n.horizontal ? t.push("menu-horizontal") : n.vertical && t.push("menu-vertical"), n.size && t.push(`menu-${n.size}`), t.join(" ");
2938
+ });
2939
+ return (t, o) => (s(), r("ul", {
2940
+ class: w(a.value)
2941
+ }, [
2942
+ $(t.$slots, "default")
2943
+ ], 2));
2944
+ }
2945
+ }), Zl = {
2946
+ key: 0,
2947
+ class: "navbar-start"
2948
+ }, Ql = {
2949
+ key: 1,
2950
+ class: "navbar-center"
2951
+ }, en = {
2952
+ key: 2,
2953
+ class: "navbar-end"
2954
+ }, cs = /* @__PURE__ */ z({
2955
+ __name: "navbar",
2956
+ props: {
2957
+ bg: {}
2958
+ },
2959
+ setup(e) {
2960
+ const n = e, a = _(() => n.bg ? `bg-${n.bg}` : "");
2961
+ return (t, o) => (s(), r("div", {
2962
+ class: w(["navbar", a.value])
2963
+ }, [
2964
+ t.$slots.start ? (s(), r("div", Zl, [
2965
+ $(t.$slots, "start")
2966
+ ])) : S("", !0),
2967
+ t.$slots.center ? (s(), r("div", Ql, [
2968
+ $(t.$slots, "center")
2969
+ ])) : S("", !0),
2970
+ t.$slots.end ? (s(), r("div", en, [
2971
+ $(t.$slots, "end")
2972
+ ])) : S("", !0),
2973
+ $(t.$slots, "default")
2974
+ ], 2));
2975
+ }
2976
+ }), tn = { class: "md:flex hidden navbar-start" }, an = { class: "md:flex justify-center items-center hidden navbar-center" }, ln = { class: "md:flex hidden navbar-end" }, nn = { class: "navbar-bottom md:flex hidden" }, sn = /* @__PURE__ */ z({
2340
2977
  __name: "navigationBar",
2341
2978
  props: {
2342
2979
  isCollapsed: { type: Boolean, default: !0 }
2343
2980
  },
2344
2981
  setup(e) {
2345
- const c = e;
2346
- return (l, t) => (o(), i("nav", {
2347
- class: $(["place-items-start border-primary bg-base-100 px-5 py-5 border-b-4 transition-all navbar navigationbar", c.isCollapsed ? "collapsed" : ""])
2982
+ const n = e;
2983
+ return (a, t) => (s(), r("nav", {
2984
+ class: w(["place-items-start border-primary bg-base-100 px-5 py-5 border-b-4 transition-all navbar navigationbar", n.isCollapsed ? "collapsed" : ""])
2348
2985
  }, [
2349
- n("div", $a, [
2350
- B(l.$slots, "start", {}, void 0, !0)
2986
+ u("div", tn, [
2987
+ $(a.$slots, "start", {}, void 0, !0)
2351
2988
  ]),
2352
- n("div", Ca, [
2353
- B(l.$slots, "center", {}, void 0, !0)
2989
+ u("div", an, [
2990
+ $(a.$slots, "center", {}, void 0, !0)
2354
2991
  ]),
2355
- n("div", Sa, [
2356
- B(l.$slots, "end", {}, void 0, !0)
2992
+ u("div", ln, [
2993
+ $(a.$slots, "end", {}, void 0, !0)
2357
2994
  ]),
2358
- n("div", Ia, [
2359
- B(l.$slots, "bottom", {}, void 0, !0)
2995
+ u("div", nn, [
2996
+ $(a.$slots, "bottom", {}, void 0, !0)
2360
2997
  ])
2361
2998
  ], 2));
2362
2999
  }
2363
- }), an = /* @__PURE__ */ re(Ma, [["__scopeId", "data-v-8ddb2b45"]]), za = {
3000
+ }), ds = /* @__PURE__ */ ve(sn, [["__scopeId", "data-v-8ddb2b45"]]), on = { class: "join" }, rn = ["disabled"], un = ["disabled"], cn = ["onClick"], dn = ["disabled"], fn = ["disabled"], fs = /* @__PURE__ */ z({
3001
+ __name: "pagination",
3002
+ props: {
3003
+ currentPage: {},
3004
+ totalPages: {},
3005
+ maxVisible: { default: 5 },
3006
+ showFirstLast: { type: Boolean, default: !1 }
3007
+ },
3008
+ emits: ["update:currentPage"],
3009
+ setup(e, { emit: n }) {
3010
+ const a = e, t = n, o = _(() => {
3011
+ const l = [], d = Math.floor(a.maxVisible / 2);
3012
+ let c = Math.max(1, a.currentPage - d), h = Math.min(a.totalPages, c + a.maxVisible - 1);
3013
+ h - c < a.maxVisible - 1 && (c = Math.max(1, h - a.maxVisible + 1));
3014
+ for (let M = c; M <= h; M++)
3015
+ l.push(M);
3016
+ return l;
3017
+ }), i = (l) => {
3018
+ l >= 1 && l <= a.totalPages && l !== a.currentPage && t("update:currentPage", l);
3019
+ };
3020
+ return (l, d) => (s(), r("div", on, [
3021
+ e.showFirstLast ? (s(), r("button", {
3022
+ key: 0,
3023
+ class: "join-item btn",
3024
+ disabled: e.currentPage === 1,
3025
+ onClick: d[0] || (d[0] = (c) => i(1))
3026
+ }, " « ", 8, rn)) : S("", !0),
3027
+ u("button", {
3028
+ class: "join-item btn",
3029
+ disabled: e.currentPage === 1,
3030
+ onClick: d[1] || (d[1] = (c) => i(e.currentPage - 1))
3031
+ }, " ‹ ", 8, un),
3032
+ (s(!0), r(N, null, U(o.value, (c) => (s(), r("button", {
3033
+ key: c,
3034
+ class: w(["join-item btn", { "btn-active": c === e.currentPage }]),
3035
+ onClick: (h) => i(c)
3036
+ }, T(c), 11, cn))), 128)),
3037
+ u("button", {
3038
+ class: "join-item btn",
3039
+ disabled: e.currentPage === e.totalPages,
3040
+ onClick: d[2] || (d[2] = (c) => i(e.currentPage + 1))
3041
+ }, " › ", 8, dn),
3042
+ e.showFirstLast ? (s(), r("button", {
3043
+ key: 1,
3044
+ class: "join-item btn",
3045
+ disabled: e.currentPage === e.totalPages,
3046
+ onClick: d[3] || (d[3] = (c) => i(e.totalPages))
3047
+ }, " » ", 8, fn)) : S("", !0)
3048
+ ]));
3049
+ }
3050
+ }), vn = {
2364
3051
  key: 0,
2365
3052
  class: "hidden top-4 right-0 absolute md:flex gap-4"
2366
- }, Ta = ["onClick", "aria-selected"], Ba = {
3053
+ }, mn = ["onClick", "aria-selected"], pn = {
2367
3054
  key: 0,
2368
3055
  role: "tabpanel",
2369
3056
  class: "p-6 border-x-0 border-t-2 border-b-0 border-base-300 max-w-full overflow-x-auto tab-content"
2370
- }, Da = { class: "p-6 border-x-0 border-t-2 border-b-0 border-base-300 max-w-full" }, nn = /* @__PURE__ */ j({
3057
+ }, hn = { class: "p-6 border-x-0 border-t-2 border-b-0 border-base-300 max-w-full" }, vs = /* @__PURE__ */ z({
2371
3058
  __name: "tab",
2372
3059
  props: {
2373
3060
  items: {},
@@ -2376,62 +3063,62 @@ const tn = /* @__PURE__ */ re(ha, [["render", wa]]), xa = { class: "flex flex-ro
2376
3063
  buttonOnlyMode: { type: Boolean, default: !1 }
2377
3064
  },
2378
3065
  emits: ["tab-changed"],
2379
- setup(e, { emit: c }) {
2380
- const l = e, t = h(l.items[0]), r = c;
2381
- function a(u) {
2382
- t.value = u, r("tab-changed", u);
3066
+ setup(e, { emit: n }) {
3067
+ const a = e, t = b(a.items[0]), o = n;
3068
+ function i(c) {
3069
+ t.value = c, o("tab-changed", c);
2383
3070
  }
2384
- function s() {
2385
- const g = (l.items.indexOf(t.value) + 1) % l.items.length;
2386
- a(l.items[g]);
3071
+ function l() {
3072
+ const h = (a.items.indexOf(t.value) + 1) % a.items.length;
3073
+ i(a.items[h]);
2387
3074
  }
2388
- function m() {
2389
- const g = (l.items.indexOf(t.value) - 1 + l.items.length) % l.items.length;
2390
- a(l.items[g]);
3075
+ function d() {
3076
+ const h = (a.items.indexOf(t.value) - 1 + a.items.length) % a.items.length;
3077
+ i(a.items[h]);
2391
3078
  }
2392
- return de(() => {
2393
- l.items && a(l.items[0]);
2394
- }), Ee(() => {
2395
- l.rotateTabsAfter && l.rotateTabsAfter > 0 && setInterval(() => {
2396
- s();
2397
- }, l.rotateTabsAfter * 1e3);
2398
- }), (u, g) => (o(), i(A, null, [
2399
- n("div", {
3079
+ return pe(() => {
3080
+ a.items && i(a.items[0]);
3081
+ }), Re(() => {
3082
+ a.rotateTabsAfter && a.rotateTabsAfter > 0 && setInterval(() => {
3083
+ l();
3084
+ }, a.rotateTabsAfter * 1e3);
3085
+ }), (c, h) => (s(), r(N, null, [
3086
+ u("div", {
2400
3087
  role: "tablist",
2401
- class: $(["relative tabs-bordered w-full tabs tabs-lg", { "flex-nowrap overflow-x-auto": e.buttonOnlyMode }])
3088
+ class: w(["relative tabs-bordered w-full tabs tabs-lg", { "flex-nowrap overflow-x-auto": e.buttonOnlyMode }])
2402
3089
  }, [
2403
- e.withControlls ? (o(), i("div", za, [
2404
- n("button", {
2405
- onClick: g[0] || (g[0] = (S) => m()),
3090
+ e.withControlls ? (s(), r("div", vn, [
3091
+ u("button", {
3092
+ onClick: h[0] || (h[0] = (M) => d()),
2406
3093
  class: "cursor-pointer"
2407
3094
  }, "Previous"),
2408
- n("button", {
2409
- onClick: g[1] || (g[1] = (S) => s()),
3095
+ u("button", {
3096
+ onClick: h[1] || (h[1] = (M) => l()),
2410
3097
  class: "text-primary cursor-pointer"
2411
3098
  }, "Next")
2412
- ])) : z("", !0),
2413
- (o(!0), i(A, null, X(e.items, (S) => (o(), i(A, null, [
2414
- n("a", {
3099
+ ])) : S("", !0),
3100
+ (s(!0), r(N, null, U(e.items, (M) => (s(), r(N, null, [
3101
+ u("a", {
2415
3102
  type: "button",
2416
3103
  role: "tab",
2417
- class: $(["min-w-max tab", S === t.value ? "bg-primary text-base-100" : ""]),
2418
- onClick: (R) => a(S),
2419
- "aria-selected": t.value == S
2420
- }, T(S), 11, Ta),
2421
- e.buttonOnlyMode ? z("", !0) : (o(), i("div", Ba, [
2422
- B(u.$slots, `${S}-tab`)
3104
+ class: w(["min-w-max tab", M === t.value ? "bg-primary text-base-100" : ""]),
3105
+ onClick: (A) => i(M),
3106
+ "aria-selected": t.value == M
3107
+ }, T(M), 11, mn),
3108
+ e.buttonOnlyMode ? S("", !0) : (s(), r("div", pn, [
3109
+ $(c.$slots, `${M}-tab`)
2423
3110
  ]))
2424
3111
  ], 64))), 256))
2425
3112
  ], 2),
2426
- n("div", Da, [
2427
- B(u.$slots, "default")
3113
+ u("div", hn, [
3114
+ $(c.$slots, "default")
2428
3115
  ])
2429
3116
  ], 64));
2430
3117
  }
2431
- }), Oa = {
3118
+ }), gn = {
2432
3119
  key: 0,
2433
3120
  class: "step-icon"
2434
- }, on = /* @__PURE__ */ j({
3121
+ }, ms = /* @__PURE__ */ z({
2435
3122
  __name: "steps",
2436
3123
  props: {
2437
3124
  vertical: { type: Boolean, default: !1 },
@@ -2441,31 +3128,31 @@ const tn = /* @__PURE__ */ re(ha, [["render", wa]]), xa = { class: "flex flex-ro
2441
3128
  bars: { type: Boolean, default: !1 }
2442
3129
  },
2443
3130
  setup(e) {
2444
- const c = e, l = (t) => t < c.progress ? "complete" : t === c.progress ? "active" : "incomplete";
2445
- return (t, r) => (o(), i("ul", {
2446
- class: $(["w-full steps", {
2447
- "steps-vertical flex flex-col h-full min-h-max": c.vertical,
2448
- "lg:steps-horizontal flex flex-wrap": c.wrap
3131
+ const n = e, a = (t) => t < n.progress ? "complete" : t === n.progress ? "active" : "incomplete";
3132
+ return (t, o) => (s(), r("ul", {
3133
+ class: w(["w-full steps", {
3134
+ "steps-vertical flex flex-col h-full min-h-max": n.vertical,
3135
+ "lg:steps-horizontal flex flex-wrap": n.wrap
2449
3136
  }])
2450
3137
  }, [
2451
- (o(!0), i(A, null, X(c.steps, (a, s) => (o(), i("li", {
2452
- key: s,
2453
- class: $(["step", {
2454
- "step-primary": a.color === "primary" && l(s) === "complete" || !a.color && l(s) === "complete",
2455
- "step-secondary": a.color === "secondary" && l(s) === "complete",
2456
- "step-accent": a.color === "accent" && l(s) === "complete",
2457
- "step-info": a.color === "info" && l(s) === "complete",
2458
- "step-success": a.color === "success" && l(s) === "complete",
2459
- "step-warning": a.color === "warning" && l(s) === "complete",
2460
- "step-error": a.color === "error" && l(s) === "complete",
2461
- "step-neutral": l(s) === "incomplete",
2462
- "step-active": l(s) === "active",
2463
- "step-complete": l(s) === "complete",
2464
- bars: c.bars
3138
+ (s(!0), r(N, null, U(n.steps, (i, l) => (s(), r("li", {
3139
+ key: l,
3140
+ class: w(["step", {
3141
+ "step-primary": i.color === "primary" && a(l) === "complete" || !i.color && a(l) === "complete",
3142
+ "step-secondary": i.color === "secondary" && a(l) === "complete",
3143
+ "step-accent": i.color === "accent" && a(l) === "complete",
3144
+ "step-info": i.color === "info" && a(l) === "complete",
3145
+ "step-success": i.color === "success" && a(l) === "complete",
3146
+ "step-warning": i.color === "warning" && a(l) === "complete",
3147
+ "step-error": i.color === "error" && a(l) === "complete",
3148
+ "step-neutral": a(l) === "incomplete",
3149
+ "step-active": a(l) === "active",
3150
+ "step-complete": a(l) === "complete",
3151
+ bars: n.bars
2465
3152
  }])
2466
3153
  }, [
2467
- a.icon ? (o(), i("span", Oa, T(a.icon), 1)) : z("", !0),
2468
- _e(" " + T(a.title), 1)
3154
+ i.icon ? (s(), r("span", gn, T(i.icon), 1)) : S("", !0),
3155
+ je(" " + T(i.title), 1)
2469
3156
  ], 2))), 128))
2470
3157
  ], 2));
2471
3158
  }
@@ -2473,33 +3160,57 @@ const tn = /* @__PURE__ */ re(ha, [["render", wa]]), xa = { class: "flex flex-ro
2473
3160
  typeof document > "u" && (globalThis.document = {});
2474
3161
  typeof window > "u" && (globalThis.window = globalThis);
2475
3162
  export {
2476
- Ra as Accordion,
2477
- Ua as AdvancedSearch,
2478
- Qa as Alert,
2479
- Aa as Avatar,
2480
- Na as Badge,
2481
- _a as ButtonComponent,
2482
- qa as Card,
2483
- Fa as Carousel,
2484
- Ha as CarouselItem,
2485
- ln as CategoryNavigation,
2486
- kl as DatetimePicker,
2487
- Ea as Dropdown,
2488
- Ya as FilterableSelect,
2489
- en as Footer,
2490
- tn as Hero,
2491
- Ga as InputField,
2492
- Ja as Loader,
2493
- La as Modal,
2494
- an as NavigationBar,
2495
- Wa as Rating,
2496
- Xa as Selector,
2497
- on as Steps,
2498
- ja as Swap,
2499
- nn as Tab,
2500
- Ka as TagInput,
2501
- Pa as ThemeController,
2502
- Za as Toast,
2503
- Gl as ToastComposable,
2504
- Ql as ToastNotification
3163
+ Cn as Accordion,
3164
+ An as AdvancedSearch,
3165
+ es as Alert,
3166
+ zn as Avatar,
3167
+ Sn as Badge,
3168
+ is as Breadcrumbs,
3169
+ yn as ButtonComponent,
3170
+ _n as Card,
3171
+ Bn as Carousel,
3172
+ In as CarouselItem,
3173
+ rs as CategoryNavigation,
3174
+ Mn as Chat,
3175
+ Ln as Checkbox,
3176
+ Tn as Countdown,
3177
+ La as DatetimePicker,
3178
+ ts as Divider,
3179
+ as as Drawer,
3180
+ wn as Dropdown,
3181
+ En as FileInput,
3182
+ Hn as FilterableSelect,
3183
+ ls as Footer,
3184
+ ns as Hero,
3185
+ Un as InputField,
3186
+ ss as Join,
3187
+ Vn as Kbd,
3188
+ Gn as Loader,
3189
+ us as Menu,
3190
+ $n as Modal,
3191
+ cs as Navbar,
3192
+ ds as NavigationBar,
3193
+ fs as Pagination,
3194
+ Yn as Progress,
3195
+ Rn as Radio,
3196
+ Nn as Range,
3197
+ Fn as Rating,
3198
+ Wn as Selector,
3199
+ Jn as Skeleton,
3200
+ os as Stack,
3201
+ Dn as Stat,
3202
+ jn as Stats,
3203
+ ms as Steps,
3204
+ xn as Swap,
3205
+ vs as Tab,
3206
+ On as Table,
3207
+ qn as TagInput,
3208
+ Kn as Textarea,
3209
+ kn as ThemeController,
3210
+ Pn as Timeline,
3211
+ Zn as Toast,
3212
+ Qn as ToastComponent,
3213
+ bl as ToastComposable,
3214
+ $l as ToastNotification,
3215
+ Xn as Toggle
2505
3216
  };