vuesp-components 2.2.2 → 2.2.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.
Files changed (41) hide show
  1. package/README.md +23 -0
  2. package/dist/VDialog.vue_vue_type_script_setup_true_lang-DCDCQsoz.js +664 -0
  3. package/dist/components/app/AppHeader.vue.d.ts.map +1 -1
  4. package/dist/components/app/AppNav.vue.d.ts +3 -0
  5. package/dist/components/app/AppNav.vue.d.ts.map +1 -1
  6. package/dist/components/card/main/CardMain.vue.d.ts.map +1 -1
  7. package/dist/components/card/main/types.d.ts +1 -0
  8. package/dist/components/card/main/types.d.ts.map +1 -1
  9. package/dist/components/dashboard/cards/CardBase.vue.d.ts +54 -36
  10. package/dist/components/dashboard/cards/CardBase.vue.d.ts.map +1 -1
  11. package/dist/components/dashboard/cards/CardButton.vue.d.ts +6 -4
  12. package/dist/components/dashboard/cards/CardButton.vue.d.ts.map +1 -1
  13. package/dist/components/dashboard/cards/CardDate.vue.d.ts +6 -4
  14. package/dist/components/dashboard/cards/CardDate.vue.d.ts.map +1 -1
  15. package/dist/components/dashboard/cards/CardDimmer.vue.d.ts +6 -4
  16. package/dist/components/dashboard/cards/CardDimmer.vue.d.ts.map +1 -1
  17. package/dist/components/dashboard/cards/CardInfo.vue.d.ts +6 -4
  18. package/dist/components/dashboard/cards/CardInfo.vue.d.ts.map +1 -1
  19. package/dist/components/dashboard/cards/CardInput.vue.d.ts +6 -4
  20. package/dist/components/dashboard/cards/CardInput.vue.d.ts.map +1 -1
  21. package/dist/components/dashboard/cards/CardList.vue.d.ts +6 -4
  22. package/dist/components/dashboard/cards/CardList.vue.d.ts.map +1 -1
  23. package/dist/components/index.es.js +1123 -1066
  24. package/dist/components/ui/button/VButton.vue.d.ts.map +1 -1
  25. package/dist/components/ui/button/types.d.ts +1 -1
  26. package/dist/components/ui/button/types.d.ts.map +1 -1
  27. package/dist/components/ui/dropdown/VDropdown.vue.d.ts.map +1 -1
  28. package/dist/components/ui/table/VTable.vue.d.ts.map +1 -1
  29. package/dist/components/ui/tabs/VTabs.vue.d.ts.map +1 -1
  30. package/dist/dashboard/index.d.ts +2 -14
  31. package/dist/dashboard/index.d.ts.map +1 -1
  32. package/dist/dashboard/index.es.js +52 -32
  33. package/dist/dashboard/types.d.ts +3 -15
  34. package/dist/dashboard/types.d.ts.map +1 -1
  35. package/dist/index.es.js +16 -25
  36. package/dist/style.css +1 -1
  37. package/dist/theme.css +132 -0
  38. package/dist/types/messages.d.ts +14 -1
  39. package/dist/types/messages.d.ts.map +1 -1
  40. package/package.json +10 -3
  41. package/dist/VDialog.vue_vue_type_script_setup_true_lang-BLLrcXdW.js +0 -652
@@ -1,12 +1,12 @@
1
- import { defineComponent as S, resolveComponent as Be, openBlock as f, createElementBlock as v, Fragment as I, createCommentVNode as T, createElementVNode as o, normalizeClass as V, createVNode as h, withCtx as y, createBlock as j, renderSlot as k, markRaw as N, computed as M, withModifiers as q, toDisplayString as $, unref as W, TransitionGroup as Le, renderList as R, mergeProps as H, ref as A, watch as re, resolveDynamicComponent as xe, Transition as _e, normalizeStyle as fe, createTextVNode as D, normalizeProps as F, guardReactiveProps as U, onMounted as le, onUnmounted as Me, reactive as Qe, useTemplateRef as Ae, withDirectives as De, vShow as et, vModelText as tt, createSlots as nt, isRef as st } from "vue";
2
- import { a as lt, V as Ie, i as E, g as je, f as $e, j as ce, k as ot, c as at, h as it, d as se, _ as He, e as Z } from "../VDialog.vue_vue_type_script_setup_true_lang-BLLrcXdW.js";
3
- import { b as ua, l as ma } from "../VDialog.vue_vue_type_script_setup_true_lang-BLLrcXdW.js";
4
- import { f as rt, t as ct, g as dt, u as ue, s as ut, d as mt } from "../app-B45sALrX.js";
1
+ import { defineComponent as S, resolveComponent as Ee, openBlock as f, createElementBlock as v, Fragment as D, createCommentVNode as B, createElementVNode as o, normalizeClass as T, createVNode as g, withCtx as y, createBlock as j, renderSlot as k, markRaw as O, computed as M, withModifiers as q, toDisplayString as $, unref as W, TransitionGroup as Le, renderList as N, mergeProps as P, ref as A, watch as re, resolveDynamicComponent as ue, Transition as _e, normalizeStyle as pe, createTextVNode as I, normalizeProps as U, guardReactiveProps as R, onMounted as le, onUnmounted as Me, reactive as Qe, useTemplateRef as Ae, withDirectives as De, vShow as et, vModelText as tt, createSlots as nt, isRef as st } from "vue";
2
+ import { a as lt, V as Ie, j as E, h as je, g as $e, k as ce, l as ot, d as at, i as it, e as se, _ as Pe, f as Z } from "../VDialog.vue_vue_type_script_setup_true_lang-DCDCQsoz.js";
3
+ import { b as ga, m as ba } from "../VDialog.vue_vue_type_script_setup_true_lang-DCDCQsoz.js";
4
+ import { f as rt, t as ct, g as dt, u as me, s as ut, d as mt } from "../app-B45sALrX.js";
5
5
  import { d as ke, e as ft, o as pt } from "../useDialog-ALG4kFE7.js";
6
6
  import { getDataValue as vt } from "../dashboard/index.es.js";
7
- import { useForm as gt } from "../composables/index.es.js";
8
- import { required as ht, maxLen as bt } from "../validate/index.es.js";
9
- const yt = { class: "no-scrollbar flex flex-col overflow-y-auto duration-300 ease-linear h-full" }, Io = /* @__PURE__ */ S({
7
+ import { useForm as ht } from "../composables/index.es.js";
8
+ import { required as gt, maxLen as bt } from "../validate/index.es.js";
9
+ const yt = { class: "no-scrollbar flex flex-col overflow-y-auto duration-300 ease-linear h-full" }, Fo = /* @__PURE__ */ S({
10
10
  __name: "AppAside",
11
11
  props: {
12
12
  isSidebar: { type: Boolean, default: !1 }
@@ -16,21 +16,21 @@ const yt = { class: "no-scrollbar flex flex-col overflow-y-auto duration-300 eas
16
16
  const l = n, s = () => {
17
17
  e.isSidebar && l("sidebar", !e.isSidebar);
18
18
  };
19
- return (t, a) => {
20
- const c = Be("router-link");
21
- return f(), v(I, null, [
19
+ return (t, i) => {
20
+ const d = Ee("router-link");
21
+ return f(), v(D, null, [
22
22
  e.isSidebar ? (f(), v("div", {
23
23
  key: 0,
24
24
  class: "lg:hidden overlay fixed left-0 top-0 h-full w-full bg-black/40 z-10 bg-blur",
25
25
  onClick: s
26
- })) : T("", !0),
26
+ })) : B("", !0),
27
27
  o("aside", {
28
- class: V([e.isSidebar ? "translate-x-0 lg:w-[90px]" : "-translate-x-full", "overflow-x-hidden fixed top-0 left-0 z-10 flex lg:static h-full w-[290px] flex-col overflow-y-auto border-r border-gray-200 px-5 transition-all duration-350 lg:translate-x-0 dark:border-gray-800 bg-white dark:bg-gray-900"])
28
+ class: T([e.isSidebar ? "translate-x-0 lg:w-[90px]" : "-translate-x-full", "overflow-x-hidden fixed top-0 left-0 z-10 flex lg:static h-full w-[290px] flex-col overflow-y-auto border-r border-gray-200/70 bg-white/70 px-5 backdrop-blur-2xl transition-all duration-350 lg:translate-x-0 dark:border-white/10 dark:bg-[#07112c]/70"])
29
29
  }, [
30
30
  o("div", {
31
- class: V([e.isSidebar ? "justify-center" : "justify-between", "sidebar-header flex items-center gap-2 pt-6 pb-6 justify-between"])
31
+ class: T([e.isSidebar ? "justify-center" : "justify-between", "sidebar-header flex items-center gap-2 border-b border-gray-200/60 pt-6 pb-6 justify-between dark:border-white/5"])
32
32
  }, [
33
- h(c, { to: "/" }, {
33
+ g(d, { to: "/" }, {
34
34
  default: y(() => [
35
35
  e.isSidebar ? (f(), j(lt, {
36
36
  key: 0,
@@ -63,7 +63,7 @@ function _t(e, n) {
63
63
  }, null, -1)
64
64
  ])]);
65
65
  }
66
- const Pe = N({ name: "ri-more-line", render: _t }), $t = {
66
+ const He = O({ name: "ri-more-line", render: _t }), $t = {
67
67
  viewBox: "0 0 24 24",
68
68
  width: "1.2em",
69
69
  height: "1.2em"
@@ -76,7 +76,7 @@ function kt(e, n) {
76
76
  }, null, -1)
77
77
  ])]);
78
78
  }
79
- const wt = N({ name: "ri-logout-box-line", render: kt }), Ct = {
79
+ const wt = O({ name: "ri-logout-box-line", render: kt }), Ct = {
80
80
  viewBox: "0 0 24 24",
81
81
  width: "1.2em",
82
82
  height: "1.2em"
@@ -89,7 +89,7 @@ function St(e, n) {
89
89
  }, null, -1)
90
90
  ])]);
91
91
  }
92
- const Ne = N({ name: "ri-notification-line", render: St }), zt = {
92
+ const Ne = O({ name: "ri-notification-line", render: St }), zt = {
93
93
  viewBox: "0 0 24 24",
94
94
  width: "1.2em",
95
95
  height: "1.2em"
@@ -102,20 +102,20 @@ function Vt(e, n) {
102
102
  }, null, -1)
103
103
  ])]);
104
104
  }
105
- const Tt = N({ name: "ri-moon-line", render: Vt }), Et = {
105
+ const Tt = O({ name: "ri-moon-line", render: Vt }), Bt = {
106
106
  viewBox: "0 0 24 24",
107
107
  width: "1.2em",
108
108
  height: "1.2em"
109
109
  };
110
- function Bt(e, n) {
111
- return f(), v("svg", Et, [...n[0] || (n[0] = [
110
+ function Et(e, n) {
111
+ return f(), v("svg", Bt, [...n[0] || (n[0] = [
112
112
  o("path", {
113
113
  fill: "currentColor",
114
114
  d: "M12 18a6 6 0 1 1 0-12a6 6 0 0 1 0 12m0-2a4 4 0 1 0 0-8a4 4 0 0 0 0 8M11 1h2v3h-2zm0 19h2v3h-2zM3.515 4.929l1.414-1.414L7.05 5.636L5.636 7.05zM16.95 18.364l1.414-1.414l2.121 2.121l-1.414 1.414zm2.121-14.85l1.414 1.415l-2.121 2.121l-1.414-1.414zM5.636 16.95l1.414 1.414l-2.121 2.121l-1.414-1.414zM23 11v2h-3v-2zM4 11v2H1v-2z"
115
115
  }, null, -1)
116
116
  ])]);
117
117
  }
118
- const Lt = N({ name: "ri-sun-line", render: Bt }), Mt = {
118
+ const Lt = O({ name: "ri-sun-line", render: Et }), Mt = {
119
119
  viewBox: "0 0 24 24",
120
120
  width: "1.2em",
121
121
  height: "1.2em"
@@ -128,7 +128,7 @@ function At(e, n) {
128
128
  }, null, -1)
129
129
  ])]);
130
130
  }
131
- const Dt = N({ name: "ri-menu-line", render: At }), It = { class: "bg-white dark:bg-gray-900 border-b border-gray-300 dark:border-gray-700 left-0 w-full z-10 sticky top-0" }, jt = { class: "px-4 py-4 sm:px-6 lg:px-8" }, Ht = { class: "container mx-auto flex flex-auto items-center" }, Pt = { class: "lg:hidden h-[30px]" }, Nt = { class: "gap-4 hidden lg:flex" }, Ot = { class: "lg:hidden flex gap-4" }, Ft = { class: "ms-2" }, jo = /* @__PURE__ */ S({
131
+ const Dt = O({ name: "ri-menu-line", render: At }), It = { class: "glass-header relative sticky top-0 left-0 z-10 w-full border-b shadow-[0_20px_60px_-35px_rgba(0,0,0,0.9)]" }, jt = { class: "px-4 py-4 sm:px-6 lg:px-8" }, Pt = { class: "container mx-auto flex flex-auto items-center" }, Ht = { class: "lg:hidden h-[30px]" }, Nt = { class: "gap-4 hidden lg:flex" }, Ot = { class: "lg:hidden flex gap-4" }, Ft = { class: "ms-2" }, Uo = /* @__PURE__ */ S({
132
132
  __name: "AppHeader",
133
133
  props: {
134
134
  changeTheme: { type: Function },
@@ -140,95 +140,96 @@ const Dt = N({ name: "ri-menu-line", render: At }), It = { class: "bg-white dark
140
140
  { name: "Theme", value: 1 },
141
141
  { name: "Notification", value: 2 },
142
142
  { name: "Logout", value: 3 }
143
- ], t = M(() => !!e.notifications.find((i) => i.isNew)), a = (i) => l("sidebar", i), c = (i) => l("notif", i), r = async () => await fetch("/", { headers: { Authorization: "Basic AAAAAAAAAAAAAAAAAAA=" } }), u = () => {
143
+ ], t = M(() => !!e.notifications.find((r) => r.isNew)), i = (r) => l("sidebar", r), d = (r) => l("notif", r), c = async () => await fetch("/", { headers: { Authorization: "Basic AAAAAAAAAAAAAAAAAAA=" } }), u = () => {
144
144
  e.changeTheme && e.changeTheme();
145
- }, d = ({ value: i }, m) => {
146
- i == 1 && u(), i == 2 && c(m), i == 3 && r();
145
+ }, a = ({ value: r }, m) => {
146
+ r == 1 && u(), r == 2 && d(m), r == 3 && c();
147
147
  };
148
- return (i, m) => {
149
- const p = Dt, b = Be("router-link"), g = Lt, x = Tt, z = Ne, B = wt, w = Pe;
148
+ return (r, m) => {
149
+ const p = Dt, b = Ee("router-link"), h = Lt, x = Tt, z = Ne, V = wt, w = He;
150
150
  return f(), v("header", It, [
151
+ m[3] || (m[3] = o("div", { class: "pointer-events-none absolute inset-x-0 top-0 h-px bg-gradient-to-r from-transparent via-white/35 to-transparent" }, null, -1)),
151
152
  o("div", jt, [
152
- o("div", Ht, [
153
- h(E, {
153
+ o("div", Pt, [
154
+ g(E, {
154
155
  type: "icon",
155
- onClick: a
156
+ onClick: i
156
157
  }, {
157
158
  default: y(() => [
158
- h(p, { class: "size-5" })
159
+ g(p, { class: "size-5" })
159
160
  ]),
160
161
  _: 1
161
162
  }),
162
163
  m[1] || (m[1] = o("div", { class: "lg:hidden flex-auto" }, null, -1)),
163
- o("div", Pt, [
164
- h(b, { to: "/" }, {
164
+ o("div", Ht, [
165
+ g(b, { to: "/" }, {
165
166
  default: y(() => [
166
- h(Ie, { class: "h-[30px] text-primary" })
167
+ g(Ie, { class: "h-[30px] text-primary" })
167
168
  ]),
168
169
  _: 1
169
170
  })
170
171
  ]),
171
172
  m[2] || (m[2] = o("div", { class: "flex-auto" }, null, -1)),
172
173
  o("div", Nt, [
173
- h(E, {
174
+ g(E, {
174
175
  type: "icon",
175
176
  onClick: u
176
177
  }, {
177
178
  default: y(() => [
178
- h(g, { class: "dark:hidden" }),
179
- h(x, { class: "hidden dark:flex" })
179
+ g(h, { class: "dark:hidden" }),
180
+ g(x, { class: "hidden dark:flex" })
180
181
  ]),
181
182
  _: 1
182
183
  }),
183
- h(E, {
184
+ g(E, {
184
185
  type: "icon",
185
- onClick: c
186
+ onClick: d
186
187
  }, {
187
188
  default: y(() => [
188
189
  o("span", {
189
- class: V([t.value ? "flex" : "hidden", "absolute right-0 top-0.5 z-1 h-2 w-2 rounded-full bg-orange-400"])
190
+ class: T([t.value ? "flex" : "hidden", "absolute right-0 top-0.5 z-1 h-2 w-2 rounded-full bg-orange-400"])
190
191
  }, [...m[0] || (m[0] = [
191
192
  o("span", { class: "absolute -z-1 inline-flex h-full w-full animate-ping rounded-full bg-orange-400 opacity-75" }, null, -1)
192
193
  ])], 2),
193
- h(z, { class: "size-5" })
194
+ g(z, { class: "size-5" })
194
195
  ]),
195
196
  _: 1
196
197
  }),
197
- h(E, {
198
+ g(E, {
198
199
  type: "icon",
199
- onClick: q(r, ["prevent"])
200
+ onClick: q(c, ["prevent"])
200
201
  }, {
201
202
  default: y(() => [
202
- h(B, { class: "size-5" })
203
+ g(V, { class: "size-5" })
203
204
  ]),
204
205
  _: 1
205
206
  })
206
207
  ]),
207
208
  o("div", Ot, [
208
- h(je, {
209
+ g(je, {
209
210
  left: "unset",
210
211
  right: "0",
211
212
  top: "0"
212
213
  }, {
213
- activator: y(({ on: P }) => [
214
- h(E, {
214
+ activator: y(({ on: H }) => [
215
+ g(E, {
215
216
  type: "icon",
216
217
  class: "flex",
217
- onClick: P.click
218
+ onClick: H.click
218
219
  }, {
219
220
  default: y(() => [
220
- h(w)
221
+ g(w)
221
222
  ]),
222
223
  _: 1
223
224
  }, 8, ["onClick"])
224
225
  ]),
225
226
  default: y(() => [
226
- h($e, {
227
+ g($e, {
227
228
  items: s,
228
- onClick: d
229
+ onClick: a
229
230
  }, {
230
- default: y(({ item: P }) => [
231
- o("span", Ft, $(P.name), 1)
231
+ default: y(({ item: H }) => [
232
+ o("span", Ft, $(H.name), 1)
232
233
  ]),
233
234
  _: 1
234
235
  })
@@ -254,25 +255,25 @@ const Dt = N({ name: "ri-menu-line", render: At }), It = { class: "bg-white dark
254
255
  },
255
256
  emits: ["remove", "read"],
256
257
  setup(e, { emit: n }) {
257
- const l = e, s = n, t = ["", "bg-green-500", "bg-red-500", "bg-yellow-500", "bg-blue-500"], a = (u) => t[u], c = (u) => s("remove", u), r = (u) => s("read", u);
258
- return (u, d) => {
259
- const i = Ne, m = ce;
258
+ const l = e, s = n, t = ["", "bg-green-500", "bg-red-500", "bg-yellow-500", "bg-blue-500"], i = (u) => t[u], d = (u) => s("remove", u), c = (u) => s("read", u);
259
+ return (u, a) => {
260
+ const r = Ne, m = ce;
260
261
  return f(), v("div", Ut, [
261
262
  o("div", {
262
- class: V(["absolute left-0 top-0 w-[3px] h-full", a(l.color)])
263
+ class: T(["absolute left-0 top-0 w-[3px] h-full", i(l.color)])
263
264
  }, null, 2),
264
- h(E, {
265
+ g(E, {
265
266
  class: "shrink-0",
266
267
  type: "icon",
267
- onClick: r
268
+ onClick: c
268
269
  }, {
269
270
  default: y(() => [
270
271
  o("span", {
271
- class: V([l.isNew ? "flex" : "hidden", "absolute right-0 top-0.5 z-1 h-2 w-2 rounded-full bg-orange-400"])
272
- }, [...d[0] || (d[0] = [
272
+ class: T([l.isNew ? "flex" : "hidden", "absolute right-0 top-0.5 z-1 h-2 w-2 rounded-full bg-orange-400"])
273
+ }, [...a[0] || (a[0] = [
273
274
  o("span", { class: "absolute -z-1 inline-flex h-full w-full animate-ping rounded-full bg-orange-400 opacity-75" }, null, -1)
274
275
  ])], 2),
275
- h(i, { class: "size-5" })
276
+ g(r, { class: "size-5" })
276
277
  ]),
277
278
  _: 1
278
279
  }),
@@ -280,14 +281,14 @@ const Dt = N({ name: "ri-menu-line", render: At }), It = { class: "bg-white dark
280
281
  o("div", null, $(l.text), 1),
281
282
  o("div", Kt, $(W(rt)(l.date)) + " (" + $(W(ct)(l.date)) + ")", 1)
282
283
  ]),
283
- h(E, {
284
+ g(E, {
284
285
  class: "shrink-0",
285
286
  type: "icon",
286
287
  size: "sm",
287
- onClick: c
288
+ onClick: d
288
289
  }, {
289
290
  default: y(() => [
290
- h(m, { class: "size-4" })
291
+ g(m, { class: "size-4" })
291
292
  ]),
292
293
  _: 1
293
294
  })
@@ -297,7 +298,7 @@ const Dt = N({ name: "ri-menu-line", render: At }), It = { class: "bg-white dark
297
298
  }), qt = { class: "no-scrollbar flex flex-col overflow-y-auto duration-300 ease-linear h-full" }, Gt = {
298
299
  key: 0,
299
300
  class: "flex flex-col gap-2 p-2"
300
- }, Ho = /* @__PURE__ */ S({
301
+ }, Ro = /* @__PURE__ */ S({
301
302
  __name: "AppNotification",
302
303
  props: {
303
304
  value: { type: Boolean },
@@ -305,20 +306,20 @@ const Dt = N({ name: "ri-menu-line", render: At }), It = { class: "bg-white dark
305
306
  },
306
307
  emits: ["close", "remove", "read"],
307
308
  setup(e, { emit: n }) {
308
- const l = e, s = n, t = M(() => !!l.notifications.find((d) => d.isNew)), a = M(() => !!l.notifications.length), c = (d) => s("close", d), r = (d) => s("remove", d), u = (d) => s("read", d);
309
- return (d, i) => (f(), v(I, null, [
309
+ const l = e, s = n, t = M(() => !!l.notifications.find((a) => a.isNew)), i = M(() => !!l.notifications.length), d = (a) => s("close", a), c = (a) => s("remove", a), u = (a) => s("read", a);
310
+ return (a, r) => (f(), v(D, null, [
310
311
  l.value ? (f(), v("div", {
311
312
  key: 0,
312
313
  class: "overlay fixed left-0 top-0 h-full w-full bg-black/40 bg-blur",
313
- onClick: c
314
- })) : T("", !0),
314
+ onClick: d
315
+ })) : B("", !0),
315
316
  o("aside", {
316
- class: V([l.value ? "translate-x-0 " : "translate-x-full", "overflow-x-hidden fixed top-[73px] right-0 flex h-[calc(100%-73px)] w-[290px] md:w-80 border-l border-gray-200 flex-col overflow-y-auto transition-all duration-350 dark:border-gray-800 bg-white dark:bg-gray-900"])
317
+ class: T([l.value ? "translate-x-0 " : "translate-x-full", "overflow-x-hidden fixed top-[73px] right-0 flex h-[calc(100%-73px)] w-[290px] md:w-80 border-l border-gray-200/70 flex-col overflow-y-auto transition-all duration-350 dark:border-white/10 bg-white/90 backdrop-blur-2xl dark:bg-[#07112c]/80"])
317
318
  }, [
318
319
  o("div", qt, [
319
- k(d.$slots, "header", { isNew: t.value }),
320
- a.value ? (f(), v("div", Gt, [
321
- h(Le, {
320
+ k(a.$slots, "header", { isNew: t.value }),
321
+ i.value ? (f(), v("div", Gt, [
322
+ g(Le, {
322
323
  "enter-active-class": "transition-all duration-300 ",
323
324
  "enter-from-class": "opacity-0 translate-x-1/2",
324
325
  "enter-to-class": "opacity-100 translate-x-0",
@@ -327,14 +328,14 @@ const Dt = N({ name: "ri-menu-line", render: At }), It = { class: "bg-white dark
327
328
  "leave-to-class": "opacity-0 translate-x-1/2"
328
329
  }, {
329
330
  default: y(() => [
330
- (f(!0), v(I, null, R(l.notifications, (m) => (f(), v("div", {
331
+ (f(!0), v(D, null, N(l.notifications, (m) => (f(), v("div", {
331
332
  key: m.date,
332
333
  class: "relative"
333
334
  }, [
334
- k(d.$slots, "card", { item: m }, () => [
335
- h(Wt, H({ ref_for: !0 }, m, {
336
- class: "bg-gray-200/50 dark:bg-gray-800/50 rounded-md",
337
- onRemove: (p) => r(m),
335
+ k(a.$slots, "card", { item: m }, () => [
336
+ g(Wt, P({ ref_for: !0 }, m, {
337
+ class: "rounded-md border border-gray-200/60 bg-white/50 dark:border-white/5 dark:bg-white/[0.03]",
338
+ onRemove: (p) => c(m),
338
339
  onRead: (p) => u(m)
339
340
  }), null, 16, ["onRemove", "onRead"])
340
341
  ])
@@ -342,7 +343,7 @@ const Dt = N({ name: "ri-menu-line", render: At }), It = { class: "bg-white dark
342
343
  ]),
343
344
  _: 3
344
345
  })
345
- ])) : k(d.$slots, "empty", {}, void 0, void 0, 1)
346
+ ])) : k(a.$slots, "empty", {}, void 0, void 0, 1)
346
347
  ])
347
348
  ], 2)
348
349
  ], 64));
@@ -356,7 +357,7 @@ function Yt(e, n) {
356
357
  ])
357
358
  ]);
358
359
  }
359
- const Po = /* @__PURE__ */ ot(Zt, [["render", Yt]]), Qt = {
360
+ const Ko = /* @__PURE__ */ ot(Zt, [["render", Yt]]), Qt = {
360
361
  viewBox: "0 0 24 24",
361
362
  width: "1.2em",
362
363
  height: "1.2em"
@@ -369,7 +370,10 @@ function en(e, n) {
369
370
  }, null, -1)
370
371
  ])]);
371
372
  }
372
- const tn = N({ name: "ri-arrow-right-s-line", render: en }), nn = { class: "mb-4 flex flex-col gap-2" }, sn = { class: "size-6 flex-[0_0_24px] opacity-60" }, ln = ["onClick"], on = { class: "flex flex-col gap-2" }, an = { class: "flex gap-2 ms-8" }, rn = { class: "size-5 flex-[0_0_24px]" }, cn = { class: "flex-1 first-letter:uppercase text-sm" }, No = /* @__PURE__ */ S({
373
+ const tn = O({ name: "ri-arrow-right-s-line", render: en }), nn = { class: "mb-4 flex flex-col gap-2" }, sn = { class: "size-6 flex-[0_0_24px] opacity-60" }, ln = ["onClick"], on = { class: "flex flex-col gap-2" }, an = { class: "flex gap-2 ms-8" }, rn = { class: "size-5 flex-[0_0_24px]" }, cn = { class: "flex-1 first-letter:uppercase text-sm" }, dn = {
374
+ key: 0,
375
+ class: "mt-2"
376
+ }, un = { class: "flex flex-col gap-2" }, mn = { class: "flex gap-2 ms-14" }, fn = { class: "size-5 flex-[0_0_24px]" }, pn = { class: "flex-1 first-letter:uppercase text-sm" }, Wo = /* @__PURE__ */ S({
373
377
  __name: "AppNav",
374
378
  props: {
375
379
  menu: { default: () => [] },
@@ -378,84 +382,116 @@ const tn = N({ name: "ri-arrow-right-s-line", render: en }), nn = { class: "mb-4
378
382
  },
379
383
  emits: ["sidebar"],
380
384
  setup(e, { emit: n }) {
381
- const l = n, s = A(""), t = ({ name: c }) => {
382
- e.isSidebar && l("sidebar", !e.isSidebar), s.value !== c && (s.value = s.value === c ? "" : c);
383
- }, a = (c) => e.fullPath === c;
385
+ const l = n, s = A(""), t = ({ name: a }) => {
386
+ e.isSidebar && l("sidebar", !e.isSidebar), s.value !== a && (s.value = s.value === a ? "" : a);
387
+ }, i = (a) => e.fullPath === a, d = (a) => a ? e.fullPath === a || e.fullPath.startsWith(a) : !1, c = (a, r) => !a.path || r === "/" || a.path === "/" ? !1 : a.path === r || r.includes(a.path), u = (a, r) => (a == null ? void 0 : a.find(
388
+ (m) => {
389
+ var p;
390
+ return c(m, r) || ((p = m.children) == null ? void 0 : p.some(
391
+ (b) => {
392
+ var h;
393
+ return c(b, r) || ((h = b.children) == null ? void 0 : h.some((x) => c(x, r)));
394
+ }
395
+ ));
396
+ }
397
+ )) ?? null;
384
398
  return re(
385
399
  () => e.menu,
386
400
  () => {
387
- var c;
388
- return s.value = ((c = dt(e.menu, e.fullPath)) == null ? void 0 : c.name) || "";
401
+ var a;
402
+ return s.value = ((a = u(e.menu, e.fullPath) ?? dt(e.menu, e.fullPath)) == null ? void 0 : a.name) || "";
389
403
  }
390
- ), (c, r) => {
391
- const u = tn;
404
+ ), (a, r) => {
405
+ const m = tn;
392
406
  return f(), v("nav", null, [
393
407
  o("ul", nn, [
394
- (f(!0), v(I, null, R(e.menu, (d) => (f(), v("li", {
395
- key: d.name
408
+ (f(!0), v(D, null, N(e.menu, (p) => (f(), v("li", {
409
+ key: p.name
396
410
  }, [
397
- (f(), j(xe(d.path ? "router-link" : "span"), {
398
- to: d.path,
399
- class: V(["flex gap-2 items-center px-3 py-2 rounded", a(d.path) ? "bg-blue-500/10" : "hover:bg-gray-500/10"]),
400
- onClick: q((i) => t(d), ["prevent", "stop"])
411
+ (f(), j(ue(p.path ? "router-link" : "span"), {
412
+ to: p.path,
413
+ class: T(["flex gap-2 items-center px-3 py-2 rounded", i(p.path) ? "bg-primary/10 text-primary" : "hover:bg-white/5"]),
414
+ onClick: q((b) => t(p), ["prevent", "stop"])
401
415
  }, {
402
416
  default: y(() => [
403
417
  o("div", sn, [
404
- k(c.$slots, "icon", { item: d })
418
+ k(a.$slots, "icon", { item: p })
405
419
  ]),
406
420
  o("span", {
407
- class: V(["flex-1 first-letter:uppercase text-sm", e.isSidebar ? "lg:hidden" : ""])
408
- }, $(d.name), 3),
421
+ class: T(["flex-1 first-letter:uppercase text-sm", e.isSidebar ? "lg:hidden" : ""])
422
+ }, $(p.name), 3),
409
423
  o("button", {
410
- class: V(["cursor-pointer", [e.isSidebar ? "lg:hidden" : ""]]),
411
- onClick: q((i) => t(d), ["prevent", "stop"])
424
+ class: T(["cursor-pointer", [e.isSidebar ? "lg:hidden" : ""]]),
425
+ onClick: q((b) => t(p), ["prevent", "stop"])
412
426
  }, [
413
- d.children ? (f(), j(u, { key: 0 })) : T("", !0)
427
+ p.children ? (f(), j(m, { key: 0 })) : B("", !0)
414
428
  ], 10, ln)
415
429
  ]),
416
430
  _: 2
417
431
  }, 1032, ["to", "class", "onClick"])),
418
- d.children ? (f(), v("div", {
432
+ p.children ? (f(), v("div", {
419
433
  key: 0,
420
- class: V(["translate transform overflow-hidden mt-2", [e.isSidebar ? "lg:hidden" : "", s.value === d.name ? "block" : "hidden"]])
434
+ class: T(["translate transform overflow-hidden mt-2", [e.isSidebar ? "lg:hidden" : "", s.value === p.name ? "block" : "hidden"]])
421
435
  }, [
422
436
  o("ul", on, [
423
- (f(!0), v(I, null, R(d.children, ({ name: i, path: m, icon: p }) => (f(), v("li", { key: i }, [
424
- (f(), j(xe(m ? "router-link" : "span"), {
425
- to: m,
426
- class: V(["flex gap-2 items-center px-3 py-2 rounded", a(m) ? "bg-blue-500/10" : "hover:bg-gray-500/10"])
437
+ (f(!0), v(D, null, N(p.children, ({ name: b, path: h, icon: x, children: z }) => (f(), v("li", { key: b }, [
438
+ (f(), j(ue(h ? "router-link" : "span"), {
439
+ to: h,
440
+ class: T(["flex gap-2 items-center px-3 py-2 rounded", i(h) ? "bg-primary/10 text-primary" : "hover:bg-white/5"])
427
441
  }, {
428
442
  default: y(() => [
429
443
  o("div", an, [
430
444
  o("div", rn, [
431
- k(c.$slots, "icon-children", {
432
- item: { name: i, path: m, icon: p }
445
+ k(a.$slots, "icon-children", {
446
+ item: { name: b, path: h, icon: x }
433
447
  })
434
448
  ]),
435
- o("span", cn, $(i), 1)
449
+ o("span", cn, $(b), 1)
436
450
  ])
437
451
  ]),
438
452
  _: 2
439
- }, 1032, ["to", "class"]))
453
+ }, 1032, ["to", "class"])),
454
+ z != null && z.length && d(h) ? (f(), v("div", dn, [
455
+ o("ul", un, [
456
+ (f(!0), v(D, null, N(z, (V) => (f(), v("li", {
457
+ key: V.name
458
+ }, [
459
+ (f(), j(ue(V.path ? "router-link" : "span"), {
460
+ to: V.path,
461
+ class: T(["flex gap-2 items-center px-3 py-2 rounded", i(V.path) ? "bg-primary/10 text-primary" : "hover:bg-white/5"])
462
+ }, {
463
+ default: y(() => [
464
+ o("div", mn, [
465
+ o("div", fn, [
466
+ k(a.$slots, "icon-children", { item: V })
467
+ ]),
468
+ o("span", pn, $(V.name), 1)
469
+ ])
470
+ ]),
471
+ _: 2
472
+ }, 1032, ["to", "class"]))
473
+ ]))), 128))
474
+ ])
475
+ ])) : B("", !0)
440
476
  ]))), 128))
441
477
  ])
442
- ], 2)) : T("", !0)
478
+ ], 2)) : B("", !0)
443
479
  ]))), 128))
444
480
  ])
445
481
  ]);
446
482
  };
447
483
  }
448
- }), dn = {
484
+ }), vn = {
449
485
  key: 0,
450
- class: "w-full min-w-[260px] max-w-xs p-4 bg-white rounded shadow-lg dark:bg-gray-800",
486
+ class: "glass-panel w-full min-w-[260px] max-w-xs p-4 shadow-lg",
451
487
  role: "alert"
452
- }, un = { class: "flex items-center gap-4 text-sm" }, mn = {
488
+ }, hn = { class: "flex items-center gap-4 text-sm" }, gn = {
453
489
  key: 0,
454
490
  class: "text-green-600"
455
- }, fn = {
491
+ }, bn = {
456
492
  key: 1,
457
- class: "relative block h-4 w-full rounded overflow-hidden bg-gray-200 dark:bg-gray-900/50 select-none mt-2"
458
- }, pn = { class: "absolute left-[140px] top-1/2 -translate-1/2 text-sm font-bold text-black dark:text-white text-center leading-none" }, vn = { class: "absolute left-[140px] top-1/2 -translate-1/2 text-sm font-bold text-white text-center leading-none" }, Oo = /* @__PURE__ */ S({
493
+ class: "relative mt-2 block h-4 w-full select-none overflow-hidden rounded-md bg-gray-200/70 dark:bg-white/10"
494
+ }, yn = { class: "absolute left-[140px] top-1/2 -translate-1/2 text-sm font-bold text-black dark:text-white text-center leading-none" }, xn = { class: "absolute left-[140px] top-1/2 -translate-1/2 text-sm font-bold text-white text-center leading-none" }, qo = /* @__PURE__ */ S({
459
495
  __name: "AppProgress",
460
496
  props: {
461
497
  timeout: { default: 5e3 },
@@ -466,15 +502,15 @@ const tn = N({ name: "ri-arrow-right-s-line", render: en }), nn = { class: "mb-4
466
502
  length: { default: 0 }
467
503
  },
468
504
  setup(e) {
469
- const n = A(!1), l = M(() => !!e.length), s = M(() => !!(l.value && t.value === 100 && !e.status)), t = M(() => e.status ? Math.ceil(e.size * 100 / e.length) : 100), a = ke(() => {
505
+ const n = A(!1), l = M(() => !!e.length), s = M(() => !!(l.value && t.value === 100 && !e.status)), t = M(() => e.status ? Math.ceil(e.size * 100 / e.length) : 100), i = ke(() => {
470
506
  n.value = !1;
471
507
  }, e.timeout);
472
508
  return re(
473
509
  () => [e.size, e.status],
474
510
  () => {
475
- n.value = !0, a();
511
+ n.value = !0, i();
476
512
  }
477
- ), (c, r) => {
513
+ ), (d, c) => {
478
514
  const u = ce;
479
515
  return f(), j(_e, {
480
516
  "enter-active-class": "duration-300 ease-out",
@@ -485,40 +521,40 @@ const tn = N({ name: "ri-arrow-right-s-line", render: en }), nn = { class: "mb-4
485
521
  "leave-to-class": "transform opacity-0 -translate-y-8"
486
522
  }, {
487
523
  default: y(() => [
488
- n.value ? (f(), v("div", dn, [
489
- o("div", un, [
490
- k(c.$slots, "default", { isDone: s.value }, () => [
491
- r[1] || (r[1] = o("div", { class: "flex-auto" }, "Progress...", -1)),
492
- s.value ? (f(), v("span", mn, "Done")) : T("", !0)
524
+ n.value ? (f(), v("div", vn, [
525
+ o("div", hn, [
526
+ k(d.$slots, "default", { isDone: s.value }, () => [
527
+ c[1] || (c[1] = o("div", { class: "flex-auto" }, "Progress...", -1)),
528
+ s.value ? (f(), v("span", gn, "Done")) : B("", !0)
493
529
  ]),
494
530
  o("button", {
495
531
  class: "cursor-pointer transition text-gray-700 dark:text-gray-400 self-start hover:text-gray-600",
496
- onClick: r[0] || (r[0] = (d) => n.value = !1)
532
+ onClick: c[0] || (c[0] = (a) => n.value = !1)
497
533
  }, [
498
- h(u, { class: "size-4" })
534
+ g(u, { class: "size-4" })
499
535
  ])
500
536
  ]),
501
537
  l.value ? (f(), v("div", {
502
538
  key: 0,
503
539
  class: "h-[2px] fixed top-0 left-0 w-full bg-blue-600 transition-all duration-500",
504
- style: fe(`width: ${t.value}%`)
505
- }, null, 4)) : T("", !0),
506
- l.value ? (f(), v("div", fn, [
507
- o("div", pn, $(t.value) + "%", 1),
540
+ style: pe(`width: ${t.value}%`)
541
+ }, null, 4)) : B("", !0),
542
+ l.value ? (f(), v("div", bn, [
543
+ o("div", yn, $(t.value) + "%", 1),
508
544
  o("div", {
509
545
  class: "bg-blue-600 rounded h-4 overflow-hidden relative transition-all duration-500",
510
- style: fe(`width: ${t.value}%`)
546
+ style: pe(`width: ${t.value}%`)
511
547
  }, [
512
- o("div", vn, $(t.value) + "%", 1)
548
+ o("div", xn, $(t.value) + "%", 1)
513
549
  ], 4)
514
- ])) : T("", !0)
515
- ])) : T("", !0)
550
+ ])) : B("", !0)
551
+ ])) : B("", !0)
516
552
  ]),
517
553
  _: 3
518
554
  });
519
555
  };
520
556
  }
521
- }), gn = { class: "my-4 text-gray-700 dark:text-gray-400" }, hn = { class: "flex flex-col md:flex-row flex-wrap md:gap-4 text-sm" }, bn = { class: "flex gap-2" }, yn = { class: "text-gray-700 dark:text-gray-400" }, xn = { class: "flex gap-2" }, _n = { class: "flex gap-2" }, $n = { class: "text-gray-700 dark:text-gray-400" }, kn = { class: "flex gap-2" }, wn = { class: "text-gray-700 dark:text-gray-400" }, Cn = { class: "flex flex-col gap-4 text-sm" }, Sn = { class: "flex gap-4" }, Fo = /* @__PURE__ */ S({
557
+ }), _n = { class: "my-4 text-gray-700 dark:text-gray-400" }, $n = { class: "flex flex-col md:flex-row flex-wrap md:gap-4 text-sm" }, kn = { class: "flex gap-2" }, wn = { class: "text-gray-700 dark:text-gray-400" }, Cn = { class: "flex gap-2" }, Sn = { class: "flex gap-2" }, zn = { class: "text-gray-700 dark:text-gray-400" }, Vn = { class: "flex gap-2" }, Tn = { class: "text-gray-700 dark:text-gray-400" }, Bn = { class: "flex flex-col gap-4 text-sm" }, En = { class: "flex gap-4" }, Go = /* @__PURE__ */ S({
522
558
  __name: "BlockInfo",
523
559
  props: {
524
560
  pkg: {},
@@ -533,55 +569,55 @@ const tn = N({ name: "ri-arrow-right-s-line", render: en }), nn = { class: "mb-4
533
569
  },
534
570
  setup(e) {
535
571
  const n = M(() => e.firmware.join(".")), l = M(() => {
536
- var t, a, c, r, u, d, i;
572
+ var t, i, d, c, u, a, r;
537
573
  const s = [];
538
- return (t = e.pkg) != null && t.homepage && s.push({ name: "homepage", href: e.pkg.homepage }), (c = (a = e.pkg) == null ? void 0 : a.repository) != null && c.url && s.push({ name: "repository", href: e.pkg.repository.url }), (u = (r = e.pkg) == null ? void 0 : r.bugs) != null && u.url && s.push({ name: "bugs", href: e.pkg.bugs.url }), (d = e.pkg) != null && d.author && s.push({ name: "author", href: `mailto:${(i = e.pkg) == null ? void 0 : i.author}` }), s;
574
+ return (t = e.pkg) != null && t.homepage && s.push({ name: "homepage", href: e.pkg.homepage }), (d = (i = e.pkg) == null ? void 0 : i.repository) != null && d.url && s.push({ name: "repository", href: e.pkg.repository.url }), (u = (c = e.pkg) == null ? void 0 : c.bugs) != null && u.url && s.push({ name: "bugs", href: e.pkg.bugs.url }), (a = e.pkg) != null && a.author && s.push({ name: "author", href: `mailto:${(r = e.pkg) == null ? void 0 : r.author}` }), s;
539
575
  });
540
576
  return (s, t) => {
541
- var a, c;
577
+ var i, d;
542
578
  return f(), v("div", null, [
543
- o("p", gn, $((a = e.pkg) == null ? void 0 : a.description), 1),
544
- o("div", hn, [
545
- o("div", bn, [
546
- t[0] || (t[0] = D(" Firmware (hw): ", -1)),
547
- o("span", yn, $(n.value), 1)
579
+ o("p", _n, $((i = e.pkg) == null ? void 0 : i.description), 1),
580
+ o("div", $n, [
581
+ o("div", kn, [
582
+ t[0] || (t[0] = I(" Firmware (hw): ", -1)),
583
+ o("span", wn, $(n.value), 1)
548
584
  ]),
549
- o("div", xn, [
550
- o("div", _n, [
551
- t[1] || (t[1] = D(" Version (web): ", -1)),
552
- o("span", $n, $((c = e.pkg) == null ? void 0 : c.version), 1)
585
+ o("div", Cn, [
586
+ o("div", Sn, [
587
+ t[1] || (t[1] = I(" Version (web): ", -1)),
588
+ o("span", zn, $((d = e.pkg) == null ? void 0 : d.version), 1)
553
589
  ])
554
590
  ]),
555
591
  t[3] || (t[3] = o("div", { class: "flex-auto" }, null, -1)),
556
- o("div", kn, [
557
- t[2] || (t[2] = D(" ID: ", -1)),
558
- o("span", wn, $(e.id.toString(16)), 1)
592
+ o("div", Vn, [
593
+ t[2] || (t[2] = I(" ID: ", -1)),
594
+ o("span", Tn, $(e.id.toString(16)), 1)
559
595
  ])
560
596
  ]),
561
597
  t[4] || (t[4] = o("hr", { class: "dark:text-gray-700 text-gray-200 my-2" }, null, -1)),
562
- o("div", Cn, [
563
- o("div", Sn, [
598
+ o("div", Bn, [
599
+ o("div", En, [
564
600
  k(s.$slots, "links", { links: l.value })
565
601
  ])
566
602
  ])
567
603
  ]);
568
604
  };
569
605
  }
570
- }), zn = ["onClick"], Vn = { class: "mr-2" }, Tn = { class: "text-sm" }, En = { class: "text-gray-400 text-xs" }, Bn = {
606
+ }), Ln = ["onClick"], Mn = { class: "mr-2" }, An = { class: "text-sm" }, Dn = { class: "text-gray-400 text-xs" }, In = {
571
607
  key: 0,
572
608
  class: "flex justify-center"
573
- }, Ln = { class: "flex justify-end mt-4" }, Uo = /* @__PURE__ */ S({
609
+ }, jn = { class: "flex justify-end mt-4" }, Zo = /* @__PURE__ */ S({
574
610
  __name: "BlockScan",
575
611
  props: {
576
612
  items: { default: () => [] }
577
613
  },
578
614
  emits: ["scan", "select"],
579
615
  setup(e, { emit: n }) {
580
- const l = n, s = ["OPEN", "WEP", "WPA_PSK", "WPA2_PSK", "WPA_WPA2_PSK", "MAX", "", "NO", "AUTO"], t = (c) => l("select", c), a = (c) => l("scan", c);
581
- return (c, r) => {
582
- const u = at, d = $e, i = it, m = E;
616
+ const l = n, s = ["OPEN", "WEP", "WPA_PSK", "WPA2_PSK", "WPA_WPA2_PSK", "MAX", "", "NO", "AUTO"], t = (d) => l("select", d), i = (d) => l("scan", d);
617
+ return (d, c) => {
618
+ const u = at, a = $e, r = it, m = E;
583
619
  return f(), v("div", null, [
584
- h(d, {
620
+ g(a, {
585
621
  items: e.items,
586
622
  class: "bg-transparent! ring-0!"
587
623
  }, {
@@ -590,27 +626,27 @@ const tn = N({ name: "ri-arrow-right-s-line", render: en }), nn = { class: "mb-4
590
626
  class: "flex items-center w-full",
591
627
  onClick: (b) => t(p)
592
628
  }, [
593
- o("div", Vn, [
594
- h(u, F(U(p)), null, 16)
629
+ o("div", Mn, [
630
+ g(u, U(R(p)), null, 16)
595
631
  ]),
596
632
  o("div", null, [
597
- o("div", Tn, $(p.ssid), 1),
598
- o("div", En, $(c.$t("security")) + " : " + $(s[p.encryptionType] || "unknown"), 1)
633
+ o("div", An, $(p.ssid), 1),
634
+ o("div", Dn, $(d.$t("security")) + " : " + $(s[p.encryptionType] || "unknown"), 1)
599
635
  ])
600
- ], 8, zn)
636
+ ], 8, Ln)
601
637
  ]),
602
638
  _: 1
603
639
  }, 8, ["items"]),
604
- e.items.length ? T("", !0) : (f(), v("div", Bn, [
605
- h(i, { class: "text-primary" })
640
+ e.items.length ? B("", !0) : (f(), v("div", In, [
641
+ g(r, { class: "text-primary" })
606
642
  ])),
607
- o("div", Ln, [
608
- h(m, {
643
+ o("div", jn, [
644
+ g(m, {
609
645
  color: "blue",
610
- onClick: a
646
+ onClick: i
611
647
  }, {
612
648
  default: y(() => [
613
- D($(c.$t("scan")), 1)
649
+ I($(d.$t("scan")), 1)
614
650
  ]),
615
651
  _: 1
616
652
  })
@@ -618,7 +654,7 @@ const tn = N({ name: "ri-arrow-right-s-line", render: en }), nn = { class: "mb-4
618
654
  ]);
619
655
  };
620
656
  }
621
- }), Mn = { class: "md:flex items-center mb-4" }, An = { class: "flex-auto text-gray-600 bg:text-gray-400 mb-2" }, Dn = { class: "md:max-w-50" }, In = { class: "flex items-center mb-4" }, jn = { class: "flex-auto text-gray-600 bg:text-gray-400" }, Hn = { class: "flex items-center mb-4" }, Pn = { class: "flex-auto text-gray-600 bg:text-gray-400" }, Ro = /* @__PURE__ */ S({
657
+ }), Pn = { class: "md:flex items-center mb-4" }, Hn = { class: "flex-auto text-gray-600 bg:text-gray-400 mb-2" }, Nn = { class: "md:max-w-50" }, On = { class: "flex items-center mb-4" }, Fn = { class: "flex-auto text-gray-600 bg:text-gray-400" }, Un = { class: "flex items-center mb-4" }, Rn = { class: "flex-auto text-gray-600 bg:text-gray-400" }, Jo = /* @__PURE__ */ S({
622
658
  __name: "BlockService",
623
659
  props: {
624
660
  locale: {},
@@ -626,47 +662,47 @@ const tn = N({ name: "ri-arrow-right-s-line", render: en }), nn = { class: "mb-4
626
662
  },
627
663
  emits: ["reboot", "reset", "locale"],
628
664
  setup(e, { emit: n }) {
629
- const l = n, s = (a) => l("locale", a), t = (a) => {
630
- var c;
631
- return (c = e.locales.find((r) => r.value === a)) == null ? void 0 : c.name;
665
+ const l = n, s = (i) => l("locale", i), t = (i) => {
666
+ var d;
667
+ return (d = e.locales.find((c) => c.value === i)) == null ? void 0 : d.name;
632
668
  };
633
- return (a, c) => {
634
- const r = se, u = E;
635
- return f(), v(I, null, [
636
- o("div", Mn, [
637
- o("div", An, $(a.$t("selectLang")), 1),
638
- o("div", Dn, [
639
- h(r, {
669
+ return (i, d) => {
670
+ const c = se, u = E;
671
+ return f(), v(D, null, [
672
+ o("div", Pn, [
673
+ o("div", Hn, $(i.$t("selectLang")), 1),
674
+ o("div", Nn, [
675
+ g(c, {
640
676
  "model-value": t(e.locale),
641
- label: a.$t("lang"),
677
+ label: i.$t("lang"),
642
678
  items: e.locales,
643
679
  onChange: s
644
680
  }, null, 8, ["model-value", "label", "items"])
645
681
  ])
646
682
  ]),
647
- o("div", In, [
648
- o("div", jn, $(a.$t("rebootDev")), 1),
649
- h(u, {
683
+ o("div", On, [
684
+ o("div", Fn, $(i.$t("rebootDev")), 1),
685
+ g(u, {
650
686
  class: "min-w-[100px]",
651
687
  color: "red",
652
688
  outline: "",
653
- onClick: c[0] || (c[0] = (d) => l("reboot", d))
689
+ onClick: d[0] || (d[0] = (a) => l("reboot", a))
654
690
  }, {
655
691
  default: y(() => [
656
- D($(a.$t("reboot")), 1)
692
+ I($(i.$t("reboot")), 1)
657
693
  ]),
658
694
  _: 1
659
695
  })
660
696
  ]),
661
- o("div", Hn, [
662
- o("div", Pn, $(a.$t("resetConf")), 1),
663
- h(u, {
697
+ o("div", Un, [
698
+ o("div", Rn, $(i.$t("resetConf")), 1),
699
+ g(u, {
664
700
  class: "min-w-[100px]",
665
701
  color: "red",
666
- onClick: c[1] || (c[1] = (d) => l("reset", d))
702
+ onClick: d[1] || (d[1] = (a) => l("reset", a))
667
703
  }, {
668
704
  default: y(() => [
669
- D($(a.$t("reset")), 1)
705
+ I($(i.$t("reset")), 1)
670
706
  ]),
671
707
  _: 1
672
708
  })
@@ -674,7 +710,7 @@ const tn = N({ name: "ri-arrow-right-s-line", render: en }), nn = { class: "mb-4
674
710
  ], 64);
675
711
  };
676
712
  }
677
- }), Nn = { class: "grid grid-cols-1 gap-4 lg:max-w-[360px] min-w-[250px]" }, On = { class: "flex flex-col w-full items-center gap-2" }, Fn = ["title"], Un = { class: "absolute left-[110px] top-1/2 -translate-1/2 text-sm font-bold text-black dark:text-white text-center leading-none" }, Rn = { class: "absolute left-[110px] top-1/2 -translate-1/2 text-sm font-bold text-white text-center leading-none" }, Kn = { class: "flex justify-between w-full text-xs" }, Wn = { class: "text-gray-500 dark:text-gray-400" }, qn = { class: "text-sm" }, Gn = { class: "text-gray-500 dark:text-gray-400 text-left" }, Zn = { class: "text-right text-xs" }, Ko = /* @__PURE__ */ S({
713
+ }), Kn = { class: "grid grid-cols-1 gap-4 lg:max-w-[360px] min-w-[250px]" }, Wn = { class: "flex flex-col w-full items-center gap-2" }, qn = ["title"], Gn = { class: "absolute left-[110px] top-1/2 -translate-1/2 text-center text-sm font-bold leading-none text-gray-900 dark:text-white" }, Zn = { class: "absolute left-[110px] top-1/2 -translate-1/2 text-sm font-bold text-white text-center leading-none" }, Jn = { class: "flex justify-between w-full text-xs" }, Xn = { class: "text-gray-500 dark:text-white/50" }, Yn = { class: "text-sm" }, Qn = { class: "text-gray-500 dark:text-white/50 text-left" }, es = { class: "text-right text-xs" }, Xo = /* @__PURE__ */ S({
678
714
  __name: "BlockStatus",
679
715
  props: {
680
716
  pkg: {},
@@ -691,10 +727,10 @@ const tn = N({ name: "ri-arrow-right-s-line", render: en }), nn = { class: "mb-4
691
727
  const n = A(e.uptime);
692
728
  let l = null;
693
729
  const s = M(() => e.firmware.join(".")), t = M(() => [
694
- { name: "used", value: ue(e.usedBytes) },
695
- { name: "available", value: ue(e.totalBytes - e.usedBytes) },
696
- { name: "total", value: ue(e.totalBytes) }
697
- ]), a = M(() => {
730
+ { name: "used", value: me(e.usedBytes) },
731
+ { name: "available", value: me(e.totalBytes - e.usedBytes) },
732
+ { name: "total", value: me(e.totalBytes) }
733
+ ]), i = M(() => {
698
734
  var u;
699
735
  return [
700
736
  { name: "uptime", value: ut(n.value) },
@@ -702,124 +738,124 @@ const tn = N({ name: "ri-arrow-right-s-line", render: en }), nn = { class: "mb-4
702
738
  { name: "firmware", value: s.value },
703
739
  { name: "version", value: (u = e.pkg) == null ? void 0 : u.version }
704
740
  ];
705
- }), c = M(() => e.usedBytes ? Math.round(e.usedBytes * 100 / e.totalBytes) : 0), r = () => {
706
- n.value++, l = setTimeout(r, 1e3);
741
+ }), d = M(() => e.usedBytes ? Math.round(e.usedBytes * 100 / e.totalBytes) : 0), c = () => {
742
+ n.value++, l = setTimeout(c, 1e3);
707
743
  };
708
744
  return le(() => {
709
- r();
745
+ c();
710
746
  }), Me(() => {
711
747
  n.value = 0, l && clearTimeout(l);
712
- }), (u, d) => {
713
- var i, m, p;
714
- return f(), v("div", Nn, [
715
- o("div", On, [
748
+ }), (u, a) => {
749
+ var r, m, p;
750
+ return f(), v("div", Kn, [
751
+ o("div", Wn, [
716
752
  o("div", {
717
- class: "relative block h-4 w-full rounded overflow-hidden bg-gray-200 dark:bg-gray-800 select-none",
718
- title: `${c.value}%`
753
+ class: "relative block h-4 w-full select-none overflow-hidden rounded-md bg-gray-200/70 dark:bg-white/10",
754
+ title: `${d.value}%`
719
755
  }, [
720
- o("div", Un, $(c.value) + "%", 1),
756
+ o("div", Gn, $(d.value) + "%", 1),
721
757
  o("div", {
722
- class: "bg-blue-600 rounded h-4 overflow-hidden relative transition-all duration-500",
723
- style: fe(`width: ${c.value}%`)
758
+ class: "relative h-4 overflow-hidden rounded-md bg-primary transition-all duration-500",
759
+ style: pe(`width: ${d.value}%`)
724
760
  }, [
725
- o("div", Rn, $(c.value) + "%", 1)
761
+ o("div", Zn, $(d.value) + "%", 1)
726
762
  ], 4)
727
- ], 8, Fn),
728
- o("div", Kn, [
729
- (f(!0), v(I, null, R(t.value, (b) => (f(), v("div", {
763
+ ], 8, qn),
764
+ o("div", Jn, [
765
+ (f(!0), v(D, null, N(t.value, (b) => (f(), v("div", {
730
766
  key: b.name,
731
767
  class: "flex-auto"
732
768
  }, [
733
- o("div", Wn, [
769
+ o("div", Xn, [
734
770
  k(u.$slots, "name", { item: b })
735
771
  ]),
736
772
  o("div", null, $(b.value), 1)
737
773
  ]))), 128))
738
774
  ])
739
775
  ]),
740
- o("div", qn, [
741
- (f(!0), v(I, null, R(a.value, (b) => (f(), v("div", {
776
+ o("div", Yn, [
777
+ (f(!0), v(D, null, N(i.value, (b) => (f(), v("div", {
742
778
  key: b.name,
743
779
  class: "flex justify-between items-center"
744
780
  }, [
745
- o("div", Gn, [
781
+ o("div", Qn, [
746
782
  k(u.$slots, "name", { item: b })
747
783
  ]),
748
- o("div", Zn, $(b.value), 1)
784
+ o("div", es, $(b.value), 1)
749
785
  ]))), 128))
750
786
  ]),
751
787
  o("div", null, [
752
788
  k(u.$slots, "default", {
753
- home: (i = e.pkg) == null ? void 0 : i.homepage,
789
+ home: (r = e.pkg) == null ? void 0 : r.homepage,
754
790
  repo: (p = (m = e.pkg) == null ? void 0 : m.repository) == null ? void 0 : p.url
755
791
  })
756
792
  ])
757
793
  ]);
758
794
  };
759
795
  }
760
- }), Jn = { class: "flex items-center cursor-pointer" }, Xn = /* @__PURE__ */ S({
796
+ }), ts = { class: "flex items-center cursor-pointer" }, ns = /* @__PURE__ */ S({
761
797
  __name: "VFile",
762
798
  emits: ["change"],
763
799
  setup(e, { emit: n }) {
764
800
  const l = n, s = async (t) => {
765
- const a = t.target;
766
- a.files && l("change", a.files);
801
+ const i = t.target;
802
+ i.files && l("change", i.files);
767
803
  };
768
- return (t, a) => (f(), v("label", Jn, [
769
- o("input", H({
804
+ return (t, i) => (f(), v("label", ts, [
805
+ o("input", P({
770
806
  type: "file",
771
807
  class: "hidden"
772
808
  }, t.$attrs, { onChange: s }), null, 16),
773
809
  k(t.$slots, "default")
774
810
  ]));
775
811
  }
776
- }), Yn = { class: "md:flex" }, Qn = { class: "text-gray-600 bg:text-gray-400 first-letter:uppercase min-w-19" }, Wo = /* @__PURE__ */ S({
812
+ }), ss = { class: "md:flex" }, ls = { class: "text-gray-600 bg:text-gray-400 first-letter:uppercase min-w-19" }, Yo = /* @__PURE__ */ S({
777
813
  __name: "BlockUpdate",
778
814
  emits: ["update"],
779
815
  setup(e, { emit: n }) {
780
- const l = n, s = Qe({ firmware: null, littlefs: null }), t = (r) => r ? Array.from(r).map((u) => `${u.name} (${ue(u.size)})`).join("") : "", a = (r, u) => {
781
- const d = new FormData();
782
- for (let i = 0; i < r.length; i++) {
783
- const m = r.item(i);
816
+ const l = n, s = Qe({ firmware: null, littlefs: null }), t = (c) => c ? Array.from(c).map((u) => `${u.name} (${me(u.size)})`).join("") : "", i = (c, u) => {
817
+ const a = new FormData();
818
+ for (let r = 0; r < c.length; r++) {
819
+ const m = c.item(r);
784
820
  if (!m) return;
785
- d.append(`file[${i}]`, m, u);
821
+ a.append(`file[${r}]`, m, u);
786
822
  }
787
- return d;
788
- }, c = (r, u) => {
823
+ return a;
824
+ }, d = (c, u) => {
789
825
  if (!u) return;
790
- const d = a(u, r);
791
- d && l("update", r, d);
826
+ const a = i(u, c);
827
+ a && l("update", c, a);
792
828
  };
793
- return (r, u) => {
794
- const d = E;
829
+ return (c, u) => {
830
+ const a = E;
795
831
  return f(), v("div", null, [
796
- (f(!0), v(I, null, R(s, (i, m) => (f(), v("div", {
832
+ (f(!0), v(D, null, N(s, (r, m) => (f(), v("div", {
797
833
  key: m,
798
834
  class: "mb-4 flex items-center"
799
835
  }, [
800
- h(Xn, {
836
+ g(ns, {
801
837
  accept: ".bin",
802
838
  onChange: (p) => s[m] = p,
803
839
  class: "flex-auto"
804
840
  }, {
805
841
  default: y(() => [
806
- o("div", Yn, [
807
- o("h6", Qn, $(m) + ":", 1),
808
- k(r.$slots, "default", {
809
- file: t(i)
842
+ o("div", ss, [
843
+ o("h6", ls, $(m) + ":", 1),
844
+ k(c.$slots, "default", {
845
+ file: t(r)
810
846
  })
811
847
  ])
812
848
  ]),
813
849
  _: 2
814
850
  }, 1032, ["onChange"]),
815
- h(d, {
851
+ g(a, {
816
852
  class: "min-w-[100px]",
817
853
  color: "blue",
818
- disabled: !i,
819
- onClick: (p) => c(`${m}.bin`, i)
854
+ disabled: !r,
855
+ onClick: (p) => d(`${m}.bin`, r)
820
856
  }, {
821
857
  default: y(() => [
822
- D($(r.$t("btnUpdate")), 1)
858
+ I($(c.$t("btnUpdate")), 1)
823
859
  ]),
824
860
  _: 1
825
861
  }, 8, ["disabled", "onClick"])
@@ -827,20 +863,20 @@ const tn = N({ name: "ri-arrow-right-s-line", render: en }), nn = { class: "mb-4
827
863
  ]);
828
864
  };
829
865
  }
830
- }), es = {
866
+ }), os = {
831
867
  viewBox: "0 0 24 24",
832
868
  width: "1.2em",
833
869
  height: "1.2em"
834
870
  };
835
- function ts(e, n) {
836
- return f(), v("svg", es, [...n[0] || (n[0] = [
871
+ function as(e, n) {
872
+ return f(), v("svg", os, [...n[0] || (n[0] = [
837
873
  o("path", {
838
874
  fill: "currentColor",
839
875
  d: "M12.172 12L9.343 9.173l1.415-1.414L15 12l-4.242 4.242l-1.415-1.414z"
840
876
  }, null, -1)
841
877
  ])]);
842
878
  }
843
- const Oe = N({ name: "ri-arrow-drop-right-line", render: ts }), ns = { class: "flex items-center gap-1.5" }, qo = /* @__PURE__ */ S({
879
+ const Oe = O({ name: "ri-arrow-drop-right-line", render: as }), is = { class: "flex items-center gap-1.5" }, Qo = /* @__PURE__ */ S({
844
880
  __name: "BlockBreadcrumb",
845
881
  props: {
846
882
  items: { default: () => [] }
@@ -848,219 +884,223 @@ const Oe = N({ name: "ri-arrow-drop-right-line", render: ts }), ns = { class: "f
848
884
  emits: ["click"],
849
885
  setup(e, { emit: n }) {
850
886
  const l = n, s = (t) => l("click", t);
851
- return (t, a) => {
852
- const c = Oe;
887
+ return (t, i) => {
888
+ const d = Oe;
853
889
  return f(), v("nav", null, [
854
- o("ol", ns, [
855
- (f(!0), v(I, null, R(e.items, (r, u) => (f(), v("li", {
890
+ o("ol", is, [
891
+ (f(!0), v(D, null, N(e.items, (c, u) => (f(), v("li", {
856
892
  key: u,
857
- class: V(["inline-flex items-center gap-1.5 text-sm text-gray-500 dark:text-gray-400", r.path ? "" : "text-gray-800 dark:text-white/90"])
893
+ class: T(["inline-flex items-center gap-1.5 text-sm text-gray-500 dark:text-gray-400", c.path ? "" : "text-gray-800 dark:text-white/90"])
858
894
  }, [
859
- k(t.$slots, "default", { item: r }, () => [
860
- (f(), j(xe(r.path ? "a" : "span"), {
861
- href: r.path,
862
- onClick: (d) => s(r)
895
+ k(t.$slots, "default", { item: c }, () => [
896
+ (f(), j(ue(c.path ? "a" : "span"), {
897
+ href: c.path,
898
+ onClick: (a) => s(c)
863
899
  }, {
864
900
  default: y(() => [
865
- D($(r.name), 1)
901
+ I($(c.name), 1)
866
902
  ]),
867
903
  _: 2
868
904
  }, 1032, ["href", "onClick"]))
869
905
  ]),
870
- r.path ? (f(), j(c, {
906
+ c.path ? (f(), j(d, {
871
907
  key: 0,
872
908
  class: "rotate-270"
873
- })) : T("", !0)
909
+ })) : B("", !0)
874
910
  ], 2))), 128))
875
911
  ])
876
912
  ]);
877
913
  };
878
914
  }
879
- }), ss = {
915
+ }), rs = {
880
916
  viewBox: "0 0 24 24",
881
917
  width: "1.2em",
882
918
  height: "1.2em"
883
919
  };
884
- function ls(e, n) {
885
- return f(), v("svg", ss, [...n[0] || (n[0] = [
920
+ function cs(e, n) {
921
+ return f(), v("svg", rs, [...n[0] || (n[0] = [
886
922
  o("path", {
887
923
  fill: "currentColor",
888
924
  d: "M7 6V3a1 1 0 0 1 1-1h12a1 1 0 0 1 1 1v14a1 1 0 0 1-1 1h-3v3c0 .552-.45 1-1.007 1H4.007A1 1 0 0 1 3 21l.003-14c0-.552.45-1 1.006-1zM5.002 8L5 20h10V8zM9 6h8v10h2V4H9zm-2 5h6v2H7zm0 4h6v2H7z"
889
925
  }, null, -1)
890
926
  ])]);
891
927
  }
892
- const os = N({ name: "ri-file-copy2-line", render: ls }), as = { class: "flex-auto flex justify-between" }, is = { class: "text-sm text-gray-500 font-medium line-clamp-2 overflow-hidden" }, rs = { class: "text-sm text-ellipsis overflow-hidden text-nowrap" }, cs = {
928
+ const ds = O({ name: "ri-file-copy2-line", render: cs }), us = { class: "flex-auto flex justify-between" }, ms = { class: "text-sm text-gray-500 font-medium line-clamp-2 overflow-hidden" }, fs = { class: "text-sm text-ellipsis overflow-hidden text-nowrap" }, ps = {
893
929
  key: 0,
894
930
  class: "absolute left-1/2 top-1/2 size-[calc(50%)] text-gray-200/30 dark:text-gray-800/30 -translate-1/2"
895
- }, ds = { class: "min-h-60 relative" }, us = { class: "pt-6" }, ms = { class: "text-center text-3xl text-ellipsis overflow-hidden" }, fs = { class: "text-center text-xl mt-4" }, oe = /* @__PURE__ */ S({
931
+ }, vs = { class: "min-h-60 relative" }, hs = { class: "pt-6" }, gs = { class: "text-center text-3xl text-ellipsis overflow-hidden" }, bs = { class: "text-center text-xl mt-4" }, oe = /* @__PURE__ */ S({
896
932
  __name: "CardBase",
897
933
  props: {
898
934
  size: {},
899
- id: {},
900
- name: {},
901
- type: {},
902
935
  icon: {},
903
936
  value: {},
904
937
  valueTo: {},
905
938
  opts: {},
939
+ id: {},
940
+ name: {},
941
+ type: {},
942
+ entityType: {},
906
943
  args: {},
907
- set: {},
908
944
  get: {},
909
- getTo: {}
945
+ getTo: {},
946
+ set: {},
947
+ meta: {}
910
948
  },
911
949
  emits: ["edit", "close", "click", "clone", "open", "setState"],
912
950
  setup(e, { emit: n }) {
913
- const l = e, s = n, t = A(!1), a = M(() => ["button", "dimmer"].includes(l.type || "") && l.value ? "text-amber-500" : "text-gray-400"), c = (m) => s("edit", m), r = (m) => s("clone", m), u = () => t.value = !0, d = (m) => s("open", m), i = (m) => {
951
+ const l = e, s = n, t = A(!1), i = M(() => ["button", "dimmer"].includes(l.type || "") && l.value ? "text-amber-500" : "text-gray-400"), d = (m) => s("edit", m), c = (m) => s("clone", m), u = () => t.value = !0, a = (m) => s("open", m), r = (m) => {
914
952
  t.value = !1, s("close", m);
915
953
  };
916
954
  return (m, p) => {
917
- const b = Pe, g = os;
955
+ const b = He, h = ds;
918
956
  return f(), v("div", {
919
- class: "flex flex-col border relative aspect-square rounded-md bg-white dark:bg-gray-900 border-b border-gray-300 dark:border-gray-700 p-2 hover-effect transition-all cursor-pointer",
957
+ class: "glass-panel relative flex aspect-square cursor-pointer flex-col p-2 transition-all hover:border-primary/25 hover:shadow-[inset_0_1px_0_rgba(255,255,255,0.18),0_0_50px_-18px_rgba(40,183,240,0.25)]",
920
958
  onClick: u
921
959
  }, [
922
- o("div", as, [
960
+ o("div", us, [
923
961
  o("div", {
924
- class: V([a.value, "size-8 animate-shake"])
962
+ class: T([i.value, "size-8 animate-shake"])
925
963
  }, [
926
- k(m.$slots, "icon", F(U(l)))
964
+ k(m.$slots, "icon", U(R(l)))
927
965
  ], 2),
928
- k(m.$slots, "header", F(U(l)))
966
+ k(m.$slots, "header", U(R(l)))
929
967
  ]),
930
968
  o("div", null, [
931
- k(m.$slots, "body", F(U(l)), () => [
932
- o("h6", is, [
933
- k(m.$slots, "name", F(U(l)), () => [
934
- D($(l.name), 1)
969
+ k(m.$slots, "body", U(R(l)), () => [
970
+ o("h6", ms, [
971
+ k(m.$slots, "name", U(R(l)), () => [
972
+ I($(l.name), 1)
935
973
  ])
936
974
  ]),
937
- o("div", rs, [
938
- k(m.$slots, "value", F(U(l)), () => [
939
- D($(l.valueTo || l.value), 1)
975
+ o("div", fs, [
976
+ k(m.$slots, "value", U(R(l)), () => [
977
+ I($(l.valueTo || l.value), 1)
940
978
  ])
941
979
  ])
942
980
  ])
943
981
  ]),
944
- l.icon ? (f(), v("div", cs, [
945
- k(m.$slots, "icon", F(U(l)))
946
- ])) : T("", !0),
947
- t.value ? (f(), j(He, {
982
+ l.icon ? (f(), v("div", ps, [
983
+ k(m.$slots, "icon", U(R(l)))
984
+ ])) : B("", !0),
985
+ t.value ? (f(), j(Pe, {
948
986
  key: 1,
949
987
  size: l.size || "sm",
950
988
  title: e.name,
951
- onClose: i,
952
- onOpen: d
989
+ onClose: r,
990
+ onOpen: a
953
991
  }, {
954
992
  "header-btn": y(() => [
955
- h(E, {
993
+ g(E, {
956
994
  color: "transparent",
957
- onClick: c
995
+ onClick: d
958
996
  }, {
959
997
  default: y(() => [
960
- h(b)
998
+ g(b)
961
999
  ]),
962
1000
  _: 1
963
1001
  }),
964
- h(E, {
1002
+ g(E, {
965
1003
  color: "transparent",
966
- onClick: r
1004
+ onClick: c
967
1005
  }, {
968
1006
  default: y(() => [
969
- h(g, { class: "size-4 text-gray-500" })
1007
+ g(h, { class: "size-4 text-gray-500" })
970
1008
  ]),
971
1009
  _: 1
972
1010
  })
973
1011
  ]),
974
1012
  default: y(() => [
975
- o("div", ds, [
976
- o("div", us, [
977
- o("h3", ms, [
978
- k(m.$slots, "dialog-name", F(U(l)), () => [
979
- D($(l.name), 1)
1013
+ o("div", vs, [
1014
+ o("div", hs, [
1015
+ o("h3", gs, [
1016
+ k(m.$slots, "dialog-name", U(R(l)), () => [
1017
+ I($(l.name), 1)
980
1018
  ])
981
1019
  ]),
982
- k(m.$slots, "dialog", F(U(l))),
983
- o("p", fs, [
984
- k(m.$slots, "dialog-value", F(U(l)), () => [
985
- D($(l.valueTo || l.value), 1)
1020
+ k(m.$slots, "dialog", U(R(l))),
1021
+ o("p", bs, [
1022
+ k(m.$slots, "dialog-value", U(R(l)), () => [
1023
+ I($(l.valueTo || l.value), 1)
986
1024
  ])
987
1025
  ])
988
1026
  ])
989
1027
  ])
990
1028
  ]),
991
1029
  _: 3
992
- }, 8, ["size", "title"])) : T("", !0)
1030
+ }, 8, ["size", "title"])) : B("", !0)
993
1031
  ]);
994
1032
  };
995
1033
  }
996
- }), ps = {
1034
+ }), ys = {
997
1035
  viewBox: "0 0 24 24",
998
1036
  width: "1.2em",
999
1037
  height: "1.2em"
1000
1038
  };
1001
- function vs(e, n) {
1002
- return f(), v("svg", ps, [...n[0] || (n[0] = [
1039
+ function xs(e, n) {
1040
+ return f(), v("svg", ys, [...n[0] || (n[0] = [
1003
1041
  o("path", {
1004
1042
  fill: "currentColor",
1005
1043
  d: "m6.265 3.807l1.147 1.639a8 8 0 1 0 9.176 0l1.147-1.639A9.99 9.99 0 0 1 22 12c0 5.523-4.477 10-10 10S2 17.523 2 12a9.99 9.99 0 0 1 4.265-8.193M11 12V2h2v10z"
1006
1044
  }, null, -1)
1007
1045
  ])]);
1008
1046
  }
1009
- const gs = N({ name: "ri-shut-down-line", render: vs }), hs = { class: "flex justify-end" }, bs = { class: "flex justify-center py-4" }, Go = /* @__PURE__ */ S({
1047
+ const _s = O({ name: "ri-shut-down-line", render: xs }), $s = { class: "flex justify-end" }, ks = { class: "flex justify-center py-4" }, ea = /* @__PURE__ */ S({
1010
1048
  __name: "CardButton",
1011
1049
  props: {
1012
1050
  size: {},
1013
- id: {},
1014
- name: {},
1015
- type: {},
1016
1051
  icon: {},
1017
1052
  value: {},
1018
1053
  valueTo: {},
1019
1054
  opts: {},
1055
+ id: {},
1056
+ name: {},
1057
+ type: {},
1058
+ entityType: {},
1020
1059
  args: {},
1021
- set: {},
1022
1060
  get: {},
1023
- getTo: {}
1061
+ getTo: {},
1062
+ set: {},
1063
+ meta: {}
1024
1064
  },
1025
1065
  emits: ["edit", "close", "click", "clone", "open", "setState"],
1026
1066
  setup(e, { emit: n }) {
1027
- const l = e, s = n, t = ({ opts: c = {} }) => {
1028
- const { disabled: r } = c;
1029
- return { disabled: r };
1030
- }, a = () => s("setState", !l.value);
1031
- return (c, r) => {
1032
- const u = gs;
1033
- return f(), j(oe, H(l, {
1034
- onClick: r[0] || (r[0] = (d) => s("click", d)),
1035
- onEdit: r[1] || (r[1] = (d) => s("edit", d)),
1036
- onClone: r[2] || (r[2] = (d) => s("clone", d))
1067
+ const l = e, s = n, t = ({ opts: d = {} }) => {
1068
+ const { disabled: c } = d;
1069
+ return { disabled: c };
1070
+ }, i = () => s("setState", !l.value);
1071
+ return (d, c) => {
1072
+ const u = _s;
1073
+ return f(), j(oe, P(l, {
1074
+ onClick: c[0] || (c[0] = (a) => s("click", a)),
1075
+ onEdit: c[1] || (c[1] = (a) => s("edit", a)),
1076
+ onClone: c[2] || (c[2] = (a) => s("clone", a))
1037
1077
  }), {
1038
- icon: y((d) => [
1039
- k(c.$slots, "icon", F(U(d)))
1078
+ icon: y((a) => [
1079
+ k(d.$slots, "icon", U(R(a)))
1040
1080
  ]),
1041
- header: y((d) => [
1042
- o("div", hs, [
1043
- h(E, H(t(d), {
1081
+ header: y((a) => [
1082
+ o("div", $s, [
1083
+ g(E, P(t(a), {
1044
1084
  type: "icon",
1045
1085
  class: l.value ? "text-amber-500" : "text-gray-500",
1046
- onClick: q(a, ["stop"])
1086
+ onClick: q(i, ["stop"])
1047
1087
  }), {
1048
1088
  default: y(() => [
1049
- h(u, { class: "size-8" })
1089
+ g(u, { class: "size-8" })
1050
1090
  ]),
1051
1091
  _: 1
1052
1092
  }, 16, ["class"])
1053
1093
  ])
1054
1094
  ]),
1055
- dialog: y((d) => [
1056
- o("div", bs, [
1057
- h(E, H(t(d), {
1095
+ dialog: y((a) => [
1096
+ o("div", ks, [
1097
+ g(E, P(t(a), {
1058
1098
  type: "icon",
1059
1099
  class: ["size-18", l.value ? "text-amber-500" : "text-gray-500"],
1060
- onClick: q(a, ["stop"])
1100
+ onClick: q(i, ["stop"])
1061
1101
  }), {
1062
1102
  default: y(() => [
1063
- h(u, { class: "size-16" })
1103
+ g(u, { class: "size-16" })
1064
1104
  ]),
1065
1105
  _: 1
1066
1106
  }, 16, ["class"])
@@ -1070,87 +1110,89 @@ const gs = N({ name: "ri-shut-down-line", render: vs }), hs = { class: "flex jus
1070
1110
  }, 16);
1071
1111
  };
1072
1112
  }
1073
- }), ys = {
1113
+ }), ws = {
1074
1114
  viewBox: "0 0 24 24",
1075
1115
  width: "1.2em",
1076
1116
  height: "1.2em"
1077
1117
  };
1078
- function xs(e, n) {
1079
- return f(), v("svg", ys, [...n[0] || (n[0] = [
1118
+ function Cs(e, n) {
1119
+ return f(), v("svg", ws, [...n[0] || (n[0] = [
1080
1120
  o("path", {
1081
1121
  fill: "currentColor",
1082
1122
  d: "M12 22C6.477 22 2 17.523 2 12S6.477 2 12 2s10 4.477 10 10s-4.477 10-10 10m0-2a8 8 0 1 0 0-16a8 8 0 0 0 0 16m1-8h4v2h-6V7h2z"
1083
1123
  }, null, -1)
1084
1124
  ])]);
1085
1125
  }
1086
- const _s = N({ name: "ri-time-line", render: xs }), $s = { class: "flex justify-center relative mx-2 my-6" }, Zo = /* @__PURE__ */ S({
1126
+ const Ss = O({ name: "ri-time-line", render: Cs }), zs = { class: "flex justify-center relative mx-2 my-6" }, ta = /* @__PURE__ */ S({
1087
1127
  __name: "CardDate",
1088
1128
  props: {
1089
1129
  size: {},
1090
- id: {},
1091
- name: {},
1092
- type: {},
1093
1130
  icon: {},
1094
1131
  value: {},
1095
1132
  valueTo: {},
1096
1133
  opts: {},
1134
+ id: {},
1135
+ name: {},
1136
+ type: {},
1137
+ entityType: {},
1097
1138
  args: {},
1098
- set: {},
1099
1139
  get: {},
1100
- getTo: {}
1140
+ getTo: {},
1141
+ set: {},
1142
+ meta: {}
1101
1143
  },
1102
1144
  emits: ["edit", "close", "click", "clone", "open", "setState"],
1103
1145
  setup(e, { emit: n }) {
1104
- const l = e, s = n, t = Ae("time"), a = (d) => new Date(+d * 1e3).toISOString().slice(0, 16), c = (d) => {
1146
+ const l = e, s = n, t = Ae("time"), i = (a) => new Date(+a * 1e3).toISOString().slice(0, 16), d = (a) => {
1105
1147
  var m;
1106
- const i = (m = d == null ? void 0 : d.target) == null ? void 0 : m.valueAsNumber;
1107
- i && s("setState", i / 1e3);
1108
- }, r = ({ name: d, value: i, opts: m = {} }) => {
1148
+ const r = (m = a == null ? void 0 : a.target) == null ? void 0 : m.valueAsNumber;
1149
+ r && s("setState", r / 1e3);
1150
+ }, c = ({ name: a, value: r, opts: m = {} }) => {
1109
1151
  const { disabled: p } = m;
1110
- return { label: d, modelValue: a(i), disabled: p };
1152
+ return { label: a, modelValue: i(r), disabled: p };
1111
1153
  }, u = () => {
1112
- var i, m;
1113
- const d = (m = (i = t.value) == null ? void 0 : i.$el) == null ? void 0 : m.querySelector("input");
1114
- d != null && d.showPicker && d.showPicker();
1154
+ var r, m;
1155
+ const a = (m = (r = t.value) == null ? void 0 : r.$el) == null ? void 0 : m.querySelector("input");
1156
+ a != null && a.showPicker && a.showPicker();
1115
1157
  };
1116
- return (d, i) => {
1117
- const m = _s;
1118
- return f(), j(oe, H(l, {
1119
- onClick: i[0] || (i[0] = (p) => s("click", p)),
1120
- onEdit: i[1] || (i[1] = (p) => s("edit", p)),
1121
- onClone: i[2] || (i[2] = (p) => s("clone", p))
1158
+ return (a, r) => {
1159
+ const m = Ss;
1160
+ return f(), j(oe, P(l, {
1161
+ onClick: r[0] || (r[0] = (p) => s("click", p)),
1162
+ onEdit: r[1] || (r[1] = (p) => s("edit", p)),
1163
+ onClone: r[2] || (r[2] = (p) => s("clone", p))
1122
1164
  }), {
1123
1165
  icon: y((p) => [
1124
- k(d.$slots, "icon", F(U(p)))
1166
+ k(a.$slots, "icon", U(R(p)))
1125
1167
  ]),
1126
1168
  header: y((p) => [
1127
1169
  o("div", null, [
1128
- h(E, {
1170
+ g(E, {
1129
1171
  type: "icon",
1130
1172
  class: "text-gray-500",
1131
1173
  onClick: q(u, ["stop"])
1132
1174
  }, {
1133
1175
  default: y(() => [
1134
- h(m, { class: "size-7" })
1176
+ g(m, { class: "size-7" })
1135
1177
  ]),
1136
1178
  _: 1
1137
1179
  }),
1138
- h(Z, H({
1180
+ g(Z, P({
1139
1181
  ref_key: "time",
1140
1182
  ref: t
1141
- }, r(p), {
1183
+ }, c(p), {
1142
1184
  type: "datetime-local",
1143
1185
  class: "size-0",
1144
1186
  hidden: "",
1145
- onChange: c
1187
+ onChange: d
1146
1188
  }), null, 16)
1147
1189
  ])
1148
1190
  ]),
1149
1191
  dialog: y((p) => [
1150
- o("div", $s, [
1151
- h(Z, H(r(p), {
1192
+ o("div", zs, [
1193
+ g(Z, P(c(p), {
1152
1194
  type: "datetime-local",
1153
- onChange: c
1195
+ onChange: d
1154
1196
  }), null, 16)
1155
1197
  ])
1156
1198
  ]),
@@ -1158,56 +1200,58 @@ const _s = N({ name: "ri-time-line", render: xs }), $s = { class: "flex justify-
1158
1200
  }, 16);
1159
1201
  };
1160
1202
  }
1161
- }), ks = { class: "flex justify-end" }, ws = { class: "flex justify-end" }, Cs = {
1162
- class: /* @__PURE__ */ V("text-blue-600 dark:text-blue-400")
1163
- }, Ss = {
1203
+ }), Vs = { class: "flex justify-end" }, Ts = { class: "flex justify-end" }, Bs = {
1204
+ class: /* @__PURE__ */ T("text-blue-600 dark:text-blue-400")
1205
+ }, Es = {
1164
1206
  width: "30",
1165
1207
  height: "30",
1166
1208
  viewBox: "-7.5 -7.5 75 75",
1167
1209
  version: "1.1",
1168
1210
  style: { transform: "rotate(-90deg)" }
1169
- }, zs = ["stroke-dashoffset"], Vs = { class: "absolute top-1/2 left-1/2 -translate-1/2 text-white z-10 font-bold text-xl" }, Jo = /* @__PURE__ */ S({
1211
+ }, Ls = ["stroke-dashoffset"], Ms = { class: "absolute top-1/2 left-1/2 -translate-1/2 text-white z-10 font-bold text-xl" }, na = /* @__PURE__ */ S({
1170
1212
  __name: "CardDimmer",
1171
1213
  props: {
1172
1214
  size: {},
1173
- id: {},
1174
- name: {},
1175
- type: {},
1176
1215
  icon: {},
1177
1216
  value: {},
1178
1217
  valueTo: {},
1179
1218
  opts: {},
1219
+ id: {},
1220
+ name: {},
1221
+ type: {},
1222
+ entityType: {},
1180
1223
  args: {},
1181
- set: {},
1182
1224
  get: {},
1183
- getTo: {}
1225
+ getTo: {},
1226
+ set: {},
1227
+ meta: {}
1184
1228
  },
1185
1229
  emits: ["edit", "close", "click", "clone", "open", "setState"],
1186
1230
  setup(e, { emit: n }) {
1187
- const l = e, s = n, t = A(0), a = ({ opts: i, value: m }) => Math.round(100 * +m / ((i == null ? void 0 : i.max) || 255)), c = ({ opts: i, value: m }) => Math.round(187 - +m / ((i == null ? void 0 : i.max) || 255) * 187), r = ({ value: i, opts: m }) => {
1188
- const { min: p = 0, max: b = 255, step: g = 1, disabled: x } = m || {};
1189
- return { min: p, max: b, step: g, value: i, disabled: !!x, class: x ? "" : "cursor-pointer" };
1190
- }, u = (i) => s("setState", +i.target.value || 0), d = ({ value: i }) => {
1191
- +i != 0 ? (t.value = +i, s("setState", 0)) : s("setState", i ? 0 : t.value || 255);
1231
+ const l = e, s = n, t = A(0), i = ({ opts: r, value: m }) => Math.round(100 * +m / ((r == null ? void 0 : r.max) || 255)), d = ({ opts: r, value: m }) => Math.round(187 - +m / ((r == null ? void 0 : r.max) || 255) * 187), c = ({ value: r, opts: m }) => {
1232
+ const { min: p = 0, max: b = 255, step: h = 1, disabled: x } = m || {};
1233
+ return { min: p, max: b, step: h, value: r, disabled: !!x, class: x ? "" : "cursor-pointer" };
1234
+ }, u = (r) => s("setState", +r.target.value || 0), a = ({ value: r }) => {
1235
+ +r != 0 ? (t.value = +r, s("setState", 0)) : s("setState", r ? 0 : t.value || 255);
1192
1236
  };
1193
- return (i, m) => (f(), j(oe, H(l, {
1237
+ return (r, m) => (f(), j(oe, P(l, {
1194
1238
  onClick: m[0] || (m[0] = (p) => s("click", p)),
1195
1239
  onEdit: m[1] || (m[1] = (p) => s("edit", p)),
1196
1240
  onClone: m[2] || (m[2] = (p) => s("clone", p))
1197
1241
  }), {
1198
1242
  icon: y((p) => [
1199
- k(i.$slots, "icon", F(U(p)))
1243
+ k(r.$slots, "icon", U(R(p)))
1200
1244
  ]),
1201
1245
  header: y((p) => [
1202
- o("div", ks, [
1203
- o("div", ws, [
1204
- h(E, H(r(p), {
1246
+ o("div", Vs, [
1247
+ o("div", Ts, [
1248
+ g(E, P(c(p), {
1205
1249
  type: "icon",
1206
- onClick: q((b) => d(p), ["stop"])
1250
+ onClick: q((b) => a(p), ["stop"])
1207
1251
  }), {
1208
1252
  default: y(() => [
1209
- o("div", Cs, [
1210
- (f(), v("svg", Ss, [
1253
+ o("div", Bs, [
1254
+ (f(), v("svg", Es, [
1211
1255
  m[3] || (m[3] = o("circle", {
1212
1256
  class: "stroke-gray-300 dark:stroke-gray-700",
1213
1257
  r: "30",
@@ -1223,10 +1267,10 @@ const _s = N({ name: "ri-time-line", render: xs }), $s = { class: "flex justify-
1223
1267
  stroke: "currentColor",
1224
1268
  "stroke-width": "8",
1225
1269
  "stroke-linecap": "butt",
1226
- "stroke-dashoffset": c(p),
1270
+ "stroke-dashoffset": d(p),
1227
1271
  fill: "transparent",
1228
1272
  "stroke-dasharray": "187"
1229
- }, null, 8, zs)
1273
+ }, null, 8, Ls)
1230
1274
  ]))
1231
1275
  ])
1232
1276
  ]),
@@ -1237,15 +1281,15 @@ const _s = N({ name: "ri-time-line", render: xs }), $s = { class: "flex justify-
1237
1281
  ]),
1238
1282
  dialog: y((p) => [
1239
1283
  o("div", {
1240
- class: V(["flex justify-center relative mx-2 my-6", r(p).disabled ? "opacity-40" : ""])
1284
+ class: T(["flex justify-center relative mx-2 my-6", c(p).disabled ? "opacity-40" : ""])
1241
1285
  }, [
1242
1286
  m[4] || (m[4] = o("div", { class: "absolute h-10 w-full top-0 left-0 bg-gray-400 dark:bg-gray-700 z-0 rounded-md" }, null, -1)),
1243
1287
  o("div", {
1244
1288
  class: "absolute h-10 top-0 left-0 bg-blue-600 dark:bg-blue-400 z-0 rounded-md transition-[width_0.3s_linear]",
1245
- style: fe(`width: ${a(p)}%`)
1289
+ style: pe(`width: ${i(p)}%`)
1246
1290
  }, null, 4),
1247
- o("div", Vs, $(a(p)) + " %", 1),
1248
- o("input", H({ type: "range" }, r(p), {
1291
+ o("div", Ms, $(i(p)) + " %", 1),
1292
+ o("input", P({ type: "range" }, c(p), {
1249
1293
  class: "w-full h-10 z-10 appearance-none opacity-0",
1250
1294
  onChange: u
1251
1295
  }), null, 16)
@@ -1254,32 +1298,34 @@ const _s = N({ name: "ri-time-line", render: xs }), $s = { class: "flex justify-
1254
1298
  _: 3
1255
1299
  }, 16));
1256
1300
  }
1257
- }), Xo = /* @__PURE__ */ S({
1301
+ }), sa = /* @__PURE__ */ S({
1258
1302
  __name: "CardInfo",
1259
1303
  props: {
1260
1304
  size: {},
1261
- id: {},
1262
- name: {},
1263
- type: {},
1264
1305
  icon: {},
1265
1306
  value: {},
1266
1307
  valueTo: {},
1267
1308
  opts: {},
1309
+ id: {},
1310
+ name: {},
1311
+ type: {},
1312
+ entityType: {},
1268
1313
  args: {},
1269
- set: {},
1270
1314
  get: {},
1271
- getTo: {}
1315
+ getTo: {},
1316
+ set: {},
1317
+ meta: {}
1272
1318
  },
1273
1319
  emits: ["edit", "close", "click", "clone", "open", "setState"],
1274
1320
  setup(e, { emit: n }) {
1275
1321
  const l = e, s = n;
1276
- return (t, a) => (f(), j(oe, H(l, {
1277
- onClick: a[0] || (a[0] = (c) => s("click", c)),
1278
- onEdit: a[1] || (a[1] = (c) => s("edit", c)),
1279
- onClone: a[2] || (a[2] = (c) => s("clone", c))
1322
+ return (t, i) => (f(), j(oe, P(l, {
1323
+ onClick: i[0] || (i[0] = (d) => s("click", d)),
1324
+ onEdit: i[1] || (i[1] = (d) => s("edit", d)),
1325
+ onClone: i[2] || (i[2] = (d) => s("clone", d))
1280
1326
  }), {
1281
- icon: y((c) => [
1282
- k(t.$slots, "icon", F(U(c)))
1327
+ icon: y((d) => [
1328
+ k(t.$slots, "icon", U(R(d)))
1283
1329
  ]),
1284
1330
  default: y(() => [
1285
1331
  k(t.$slots, "dialog")
@@ -1287,54 +1333,56 @@ const _s = N({ name: "ri-time-line", render: xs }), $s = { class: "flex justify-
1287
1333
  _: 3
1288
1334
  }, 16));
1289
1335
  }
1290
- }), Ts = { class: "flex justify-center relative mx-2 my-6" }, Yo = /* @__PURE__ */ S({
1336
+ }), As = { class: "flex justify-center relative mx-2 my-6" }, la = /* @__PURE__ */ S({
1291
1337
  __name: "CardInput",
1292
1338
  props: {
1293
1339
  size: {},
1294
- id: {},
1295
- name: {},
1296
- type: {},
1297
1340
  icon: {},
1298
1341
  value: {},
1299
1342
  valueTo: {},
1300
1343
  opts: {},
1344
+ id: {},
1345
+ name: {},
1346
+ type: {},
1347
+ entityType: {},
1301
1348
  args: {},
1302
- set: {},
1303
1349
  get: {},
1304
- getTo: {}
1350
+ getTo: {},
1351
+ set: {},
1352
+ meta: {}
1305
1353
  },
1306
1354
  emits: ["edit", "close", "click", "clone", "open", "setState"],
1307
1355
  setup(e, { emit: n }) {
1308
- const l = e, s = n, t = A(l.value || ""), a = ({ name: r, opts: u = {} }) => {
1309
- const { disabled: d } = u;
1310
- return { label: r, disabled: d };
1311
- }, c = (r) => s("setState", r.target.value);
1356
+ const l = e, s = n, t = A(l.value || ""), i = ({ name: c, opts: u = {} }) => {
1357
+ const { disabled: a } = u;
1358
+ return { label: c, disabled: a };
1359
+ }, d = (c) => s("setState", c.target.value);
1312
1360
  return re(
1313
1361
  () => l.value,
1314
- (r) => {
1315
- t.value = r;
1362
+ (c) => {
1363
+ t.value = c;
1316
1364
  }
1317
- ), (r, u) => {
1318
- const d = Oe;
1319
- return f(), j(oe, H(l, {
1320
- onClick: u[1] || (u[1] = (i) => s("click", i)),
1321
- onEdit: u[2] || (u[2] = (i) => s("edit", i)),
1322
- onClone: u[3] || (u[3] = (i) => s("clone", i))
1365
+ ), (c, u) => {
1366
+ const a = Oe;
1367
+ return f(), j(oe, P(l, {
1368
+ onClick: u[1] || (u[1] = (r) => s("click", r)),
1369
+ onEdit: u[2] || (u[2] = (r) => s("edit", r)),
1370
+ onClone: u[3] || (u[3] = (r) => s("clone", r))
1323
1371
  }), {
1324
- icon: y((i) => [
1325
- k(r.$slots, "icon", F(U(i)))
1372
+ icon: y((r) => [
1373
+ k(c.$slots, "icon", U(R(r)))
1326
1374
  ]),
1327
- dialog: y((i) => [
1328
- o("div", Ts, [
1329
- h(Z, H({
1375
+ dialog: y((r) => [
1376
+ o("div", As, [
1377
+ g(Z, P({
1330
1378
  modelValue: t.value,
1331
1379
  "onUpdate:modelValue": u[0] || (u[0] = (m) => t.value = m)
1332
- }, a(i), {
1333
- onEnter: c,
1334
- onBlur: c
1380
+ }, i(r), {
1381
+ onEnter: d,
1382
+ onBlur: d
1335
1383
  }), {
1336
1384
  icon: y(() => [
1337
- h(d, { class: "size-8" })
1385
+ g(a, { class: "size-8" })
1338
1386
  ]),
1339
1387
  _: 1
1340
1388
  }, 16, ["modelValue"])
@@ -1344,80 +1392,82 @@ const _s = N({ name: "ri-time-line", render: xs }), $s = { class: "flex justify-
1344
1392
  }, 16);
1345
1393
  };
1346
1394
  }
1347
- }), Es = {
1395
+ }), Ds = {
1348
1396
  viewBox: "0 0 24 24",
1349
1397
  width: "1.2em",
1350
1398
  height: "1.2em"
1351
1399
  };
1352
- function Bs(e, n) {
1353
- return f(), v("svg", Es, [...n[0] || (n[0] = [
1400
+ function Is(e, n) {
1401
+ return f(), v("svg", Ds, [...n[0] || (n[0] = [
1354
1402
  o("path", {
1355
1403
  fill: "currentColor",
1356
1404
  d: "M8 4h13v2H8zm-5-.5h3v3H3zm0 7h3v3H3zm0 7h3v3H3zM8 11h13v2H8zm0 7h13v2H8z"
1357
1405
  }, null, -1)
1358
1406
  ])]);
1359
1407
  }
1360
- const Ls = N({ name: "ri-list-check", render: Bs }), Ms = { class: "flex justify-center py-4" }, Qo = /* @__PURE__ */ S({
1408
+ const js = O({ name: "ri-list-check", render: Is }), Ps = { class: "flex justify-center py-4" }, oa = /* @__PURE__ */ S({
1361
1409
  __name: "CardList",
1362
1410
  props: {
1363
1411
  size: {},
1364
- id: {},
1365
- name: {},
1366
- type: {},
1367
1412
  icon: {},
1368
1413
  value: {},
1369
1414
  valueTo: {},
1370
1415
  opts: {},
1416
+ id: {},
1417
+ name: {},
1418
+ type: {},
1419
+ entityType: {},
1371
1420
  args: {},
1372
- set: {},
1373
1421
  get: {},
1374
- getTo: {}
1422
+ getTo: {},
1423
+ set: {},
1424
+ meta: {}
1375
1425
  },
1376
1426
  emits: ["edit", "close", "click", "clone", "open", "setState"],
1377
1427
  setup(e, { emit: n }) {
1378
- const l = e, s = n, t = ({ value: r }) => s("setState", r), a = ({ opts: r, value: u }) => {
1379
- var d;
1380
- return Array.isArray(r == null ? void 0 : r.items) && ((d = r == null ? void 0 : r.items.find((i) => i.value == u)) == null ? void 0 : d.name) || u;
1381
- }, c = ({ name: r, value: u, opts: d = {} }) => {
1428
+ const l = e, s = n, t = ({ value: c }) => s("setState", c), i = ({ opts: c, value: u }) => {
1429
+ var a;
1430
+ return Array.isArray(c == null ? void 0 : c.items) && ((a = c == null ? void 0 : c.items.find((r) => r.value == u)) == null ? void 0 : a.name) || u;
1431
+ }, d = ({ name: c, value: u, opts: a = {} }) => {
1382
1432
  var b;
1383
- const { items: i = [], disabled: m } = d, p = ((b = i.find((g) => g.value == u)) == null ? void 0 : b.name) || u;
1384
- return { label: r, modelValue: p, items: i, disabled: !!m };
1433
+ const { items: r = [], disabled: m } = a, p = ((b = r.find((h) => h.value == u)) == null ? void 0 : b.name) || u;
1434
+ return { label: c, modelValue: p, items: r, disabled: !!m };
1385
1435
  };
1386
- return (r, u) => {
1387
- const d = Ls;
1388
- return f(), j(oe, H(l, {
1389
- onClick: u[1] || (u[1] = (i) => s("click", i)),
1390
- onEdit: u[2] || (u[2] = (i) => s("edit", i)),
1391
- onClone: u[3] || (u[3] = (i) => s("clone", i))
1436
+ return (c, u) => {
1437
+ const a = js;
1438
+ return f(), j(oe, P(l, {
1439
+ onClick: u[1] || (u[1] = (r) => s("click", r)),
1440
+ onEdit: u[2] || (u[2] = (r) => s("edit", r)),
1441
+ onClone: u[3] || (u[3] = (r) => s("clone", r))
1392
1442
  }), {
1393
- icon: y((i) => [
1394
- k(r.$slots, "icon", F(U(i)))
1443
+ icon: y((r) => [
1444
+ k(c.$slots, "icon", U(R(r)))
1395
1445
  ]),
1396
- value: y((i) => [
1397
- D($(a(i)), 1)
1446
+ value: y((r) => [
1447
+ I($(i(r)), 1)
1398
1448
  ]),
1399
- "dialog-value": y((i) => [
1400
- D($(a(i)), 1)
1449
+ "dialog-value": y((r) => [
1450
+ I($(i(r)), 1)
1401
1451
  ]),
1402
- header: y((i) => [
1452
+ header: y((r) => [
1403
1453
  o("div", {
1404
1454
  onClick: u[0] || (u[0] = q(() => {
1405
1455
  }, ["prevent", "stop"]))
1406
1456
  }, [
1407
- h(se, H(c(i), {
1457
+ g(se, P(d(r), {
1408
1458
  "is-popup": "",
1409
1459
  top: "0",
1410
1460
  left: "-115px",
1411
1461
  onChange: t
1412
1462
  }), {
1413
1463
  activator: y(({ on: m }) => [
1414
- h(E, {
1464
+ g(E, {
1415
1465
  type: "icon",
1416
1466
  class: "text-gray-500",
1417
1467
  onClick: q(m.click, ["stop"])
1418
1468
  }, {
1419
1469
  default: y(() => [
1420
- h(d, { class: "size-6" })
1470
+ g(a, { class: "size-6" })
1421
1471
  ]),
1422
1472
  _: 1
1423
1473
  }, 8, ["onClick"])
@@ -1426,9 +1476,9 @@ const Ls = N({ name: "ri-list-check", render: Bs }), Ms = { class: "flex justify
1426
1476
  }, 16)
1427
1477
  ])
1428
1478
  ]),
1429
- dialog: y((i) => [
1430
- o("div", Ms, [
1431
- h(se, H(c(i), {
1479
+ dialog: y((r) => [
1480
+ o("div", Ps, [
1481
+ g(se, P(d(r), {
1432
1482
  top: "-50%",
1433
1483
  left: "50%",
1434
1484
  onChange: t
@@ -1439,33 +1489,33 @@ const Ls = N({ name: "ri-list-check", render: Bs }), Ms = { class: "flex justify
1439
1489
  }, 16);
1440
1490
  };
1441
1491
  }
1442
- }), As = {
1492
+ }), Hs = {
1443
1493
  viewBox: "0 0 24 24",
1444
1494
  width: "1.2em",
1445
1495
  height: "1.2em"
1446
1496
  };
1447
- function Ds(e, n) {
1448
- return f(), v("svg", As, [...n[0] || (n[0] = [
1497
+ function Ns(e, n) {
1498
+ return f(), v("svg", Hs, [...n[0] || (n[0] = [
1449
1499
  o("path", {
1450
1500
  fill: "currentColor",
1451
1501
  d: "M15.5 5a3.5 3.5 0 1 0 0 7a3.5 3.5 0 0 0 0-7M10 8.5a5.5 5.5 0 1 1 10.032 3.117l2.675 2.676l-1.414 1.414l-2.675-2.675A5.5 5.5 0 0 1 10 8.5M3 4h5v2H3zm0 7h5v2H3zm18 7v2H3v-2z"
1452
1502
  }, null, -1)
1453
1503
  ])]);
1454
1504
  }
1455
- const Is = N({ name: "ri-menu-search-line", render: Ds }), js = {
1505
+ const Os = O({ name: "ri-menu-search-line", render: Ns }), Fs = {
1456
1506
  viewBox: "0 0 24 24",
1457
1507
  width: "1.2em",
1458
1508
  height: "1.2em"
1459
1509
  };
1460
- function Hs(e, n) {
1461
- return f(), v("svg", js, [...n[0] || (n[0] = [
1510
+ function Us(e, n) {
1511
+ return f(), v("svg", Fs, [...n[0] || (n[0] = [
1462
1512
  o("path", {
1463
1513
  fill: "currentColor",
1464
1514
  d: "M11 11V5h2v6h6v2h-6v6h-2v-6H5v-2z"
1465
1515
  }, null, -1)
1466
1516
  ])]);
1467
1517
  }
1468
- const pe = N({ name: "ri-add-line", render: Hs }), Ps = { class: "flex w-full relative" }, Ns = { class: "flex gap-2 flex-wrap flex-auto px-2 py-1" }, Os = ["disabled"], Fe = /* @__PURE__ */ S({
1518
+ const ve = O({ name: "ri-add-line", render: Us }), Rs = { class: "flex w-full relative" }, Ks = { class: "flex gap-2 flex-wrap flex-auto px-2 py-1" }, Ws = ["disabled"], Fe = /* @__PURE__ */ S({
1469
1519
  __name: "VTextWrapper",
1470
1520
  props: {
1471
1521
  active: { type: Boolean },
@@ -1476,65 +1526,65 @@ const pe = N({ name: "ri-add-line", render: Hs }), Ps = { class: "flex w-full re
1476
1526
  emits: ["icon"],
1477
1527
  setup(e, { emit: n }) {
1478
1528
  const l = n, s = M(() => e.active ? "top-0 left-3 text-xs" : "top-1/2"), t = M(() => [e.disabled ? "border-gray-400 opacity-40" : "border-gray-300 hover:border-gray-400 dark:border-gray-700/50 hover:dark:border-gray-600/50"]);
1479
- return (a, c) => {
1480
- const r = pe;
1481
- return f(), v("div", Ps, [
1529
+ return (i, d) => {
1530
+ const c = ve;
1531
+ return f(), v("div", Rs, [
1482
1532
  o("div", {
1483
- class: V(["relative w-full min-h-[40px] border border-gray-300 dark:border-gray-700 flex items-center rounded transition bg-white dark:bg-gray-800", t.value])
1533
+ class: T(["glass-inset relative flex min-h-[40px] w-full items-center rounded-md transition focus-within:border-primary/60", t.value])
1484
1534
  }, [
1485
1535
  o("span", {
1486
- class: V(["absolute left-4 transition-all rounded -translate-y-1/2 text-gray-600 dark:text-gray-400", s.value])
1536
+ class: T(["absolute left-4 transition-all rounded -translate-y-1/2 text-gray-600 dark:text-gray-400", s.value])
1487
1537
  }, $(e.label), 3),
1488
- o("div", Ns, [
1489
- k(a.$slots, "default")
1538
+ o("div", Ks, [
1539
+ k(i.$slots, "default")
1490
1540
  ]),
1491
- e.hideIcon ? T("", !0) : (f(), v("button", {
1541
+ e.hideIcon ? B("", !0) : (f(), v("button", {
1492
1542
  key: 0,
1493
1543
  disabled: e.disabled,
1494
- class: V([{ "cursor-pointer": !e.disabled }, "h-full flex items-center justify-center text-gray-400 border-l border-gray-300 dark:border-gray-700/50 flex-[0_0_50px]"]),
1495
- onClick: c[0] || (c[0] = (u) => l("icon", u))
1544
+ class: T([{ "cursor-pointer": !e.disabled }, "h-full flex items-center justify-center text-gray-400 border-l border-gray-300 dark:border-gray-700/50 flex-[0_0_50px]"]),
1545
+ onClick: d[0] || (d[0] = (u) => l("icon", u))
1496
1546
  }, [
1497
- k(a.$slots, "icon", {}, () => [
1498
- h(r, { class: "size-4" })
1547
+ k(i.$slots, "icon", {}, () => [
1548
+ g(c, { class: "size-4" })
1499
1549
  ])
1500
- ], 10, Os))
1550
+ ], 10, Ws))
1501
1551
  ], 2)
1502
1552
  ]);
1503
1553
  };
1504
1554
  }
1505
- }), Fs = {
1555
+ }), qs = {
1506
1556
  viewBox: "0 0 24 24",
1507
1557
  width: "1.2em",
1508
1558
  height: "1.2em"
1509
1559
  };
1510
- function Us(e, n) {
1511
- return f(), v("svg", Fs, [...n[0] || (n[0] = [
1560
+ function Gs(e, n) {
1561
+ return f(), v("svg", qs, [...n[0] || (n[0] = [
1512
1562
  o("path", {
1513
1563
  fill: "currentColor",
1514
1564
  d: "M7 6V3a1 1 0 0 1 1-1h12a1 1 0 0 1 1 1v14a1 1 0 0 1-1 1h-3v3c0 .552-.45 1-1.007 1H4.007A1 1 0 0 1 3 21l.003-14c0-.552.45-1 1.006-1zM5.002 8L5 20h10V8zM9 6h8v10h2V4H9z"
1515
1565
  }, null, -1)
1516
1566
  ])]);
1517
1567
  }
1518
- const Rs = N({ name: "ri-file-copy-line", render: Us }), Ks = {
1568
+ const Zs = O({ name: "ri-file-copy-line", render: Gs }), Js = {
1519
1569
  viewBox: "0 0 24 24",
1520
1570
  width: "1.2em",
1521
1571
  height: "1.2em"
1522
1572
  };
1523
- function Ws(e, n) {
1524
- return f(), v("svg", Ks, [...n[0] || (n[0] = [
1573
+ function Xs(e, n) {
1574
+ return f(), v("svg", Js, [...n[0] || (n[0] = [
1525
1575
  o("path", {
1526
1576
  fill: "currentColor",
1527
1577
  d: "M2 4a1 1 0 0 1 1-1h7.414l2 2H21a1 1 0 0 1 1 1v14a1 1 0 0 1-1 1H3c-.55 0-1-.45-1-1zm8.586 2l-1-1H4v2h5.586zM4 9v10h16V7h-7.586l-2 2z"
1528
1578
  }, null, -1)
1529
1579
  ])]);
1530
1580
  }
1531
- const qs = N({ name: "ri-folder6-line", render: Ws }), Gs = ["onClick"], Zs = {
1581
+ const Ys = O({ name: "ri-folder6-line", render: Xs }), Qs = ["onClick"], el = {
1532
1582
  key: 0,
1533
1583
  class: "me-1"
1534
- }, Js = { class: "dark:text-gray-300" }, Xs = { class: "flex gap-3 items-center z-10" }, Ys = {
1584
+ }, tl = { class: "dark:text-gray-300" }, nl = { class: "flex gap-3 items-center z-10" }, sl = {
1535
1585
  key: 0,
1536
1586
  class: "flex ps-5"
1537
- }, Qs = { class: "font-medium dark:text-gray-300" }, Ue = /* @__PURE__ */ S({
1587
+ }, ll = { class: "font-medium dark:text-gray-300" }, Ue = /* @__PURE__ */ S({
1538
1588
  __name: "VListObject",
1539
1589
  props: {
1540
1590
  items: { default: () => ({}) },
@@ -1543,82 +1593,82 @@ const qs = N({ name: "ri-folder6-line", render: Ws }), Gs = ["onClick"], Zs = {
1543
1593
  },
1544
1594
  emits: ["click"],
1545
1595
  setup(e, { emit: n }) {
1546
- const l = n, s = () => "before:absolute before:w-full before:h-8 before:t-0 before:left-0 before:border-b before:border-gray-200 dark:before:border-gray-800/50 hover:before:bg-gray-400/10", t = A({}), { text: a, copy: c, copied: r, isSupported: u } = ft(), d = (b) => {
1596
+ const l = n, s = () => "before:absolute before:w-full before:h-8 before:t-0 before:left-0 before:border-b before:border-gray-200 dark:before:border-gray-800/50 hover:before:bg-gray-400/10", t = A({}), { text: i, copy: d, copied: c, isSupported: u } = ft(), a = (b) => {
1547
1597
  t.value[b] = !t.value[b];
1548
- }, i = (b) => typeof b == "object", m = (b) => `${e.path ? e.path + "." : ""}${b}`, p = (b, g) => {
1549
- l("click", { key: b, path: m(b), isObject: g });
1598
+ }, r = (b) => typeof b == "object", m = (b) => `${e.path ? e.path + "." : ""}${b}`, p = (b, h) => {
1599
+ l("click", { key: b, path: m(b), isObject: h });
1550
1600
  };
1551
- return (b, g) => {
1552
- const x = qs, z = Rs, B = pe;
1601
+ return (b, h) => {
1602
+ const x = Ys, z = Zs, V = ve;
1553
1603
  return f(), v("ul", null, [
1554
- (f(!0), v(I, null, R(e.items, (w, P) => (f(), v("li", {
1555
- key: P,
1556
- class: V(i(w) ? "" : `flex items-center ${s()}`)
1604
+ (f(!0), v(D, null, N(e.items, (w, H) => (f(), v("li", {
1605
+ key: H,
1606
+ class: T(r(w) ? "" : `flex items-center ${s()}`)
1557
1607
  }, [
1558
1608
  o("div", {
1559
- class: V(["flex items-center cursor-pointer ps-2 h-8", i(w) ? `${s()}` : ""]),
1560
- onClick: (J) => d(P)
1609
+ class: T(["flex items-center cursor-pointer ps-2 h-8", r(w) ? `${s()}` : ""]),
1610
+ onClick: (J) => a(H)
1561
1611
  }, [
1562
- i(w) ? (f(), v("div", Zs, [
1563
- h(x, { class: "size-5" })
1564
- ])) : T("", !0),
1565
- o("div", Js, $(P), 1),
1612
+ r(w) ? (f(), v("div", el, [
1613
+ g(x, { class: "size-5" })
1614
+ ])) : B("", !0),
1615
+ o("div", tl, $(H), 1),
1566
1616
  W(u) ? (f(), j(E, {
1567
1617
  key: 1,
1568
1618
  class: "opacity-20 hover:opacity-70 transition-all",
1569
1619
  color: "transparent",
1570
1620
  size: "sm",
1571
- onClick: q((J) => W(c)(m(P)), ["stop"])
1621
+ onClick: q((J) => W(d)(m(H)), ["stop"])
1572
1622
  }, {
1573
1623
  default: y(() => [
1574
- h(z, { class: "size-5" })
1624
+ g(z, { class: "size-5" })
1575
1625
  ]),
1576
1626
  _: 1
1577
- }, 8, ["onClick"])) : T("", !0),
1578
- W(a) === m(P) ? (f(), v("span", {
1627
+ }, 8, ["onClick"])) : B("", !0),
1628
+ W(i) === m(H) ? (f(), v("span", {
1579
1629
  key: 2,
1580
- class: V(["text-gray-500 transition-all duration-1000 text-sm", W(r) ? "opacity-100" : "opacity-0"])
1581
- }, $(b.$t("copied")), 3)) : T("", !0),
1582
- !e.onlyValue && i(w) ? (f(), v(I, { key: 3 }, [
1583
- g[1] || (g[1] = o("div", { class: "flex-auto" }, null, -1)),
1584
- o("div", Xs, [
1585
- h(E, {
1630
+ class: T(["text-gray-500 transition-all duration-1000 text-sm", W(c) ? "opacity-100" : "opacity-0"])
1631
+ }, $(b.$t("copied")), 3)) : B("", !0),
1632
+ !e.onlyValue && r(w) ? (f(), v(D, { key: 3 }, [
1633
+ h[1] || (h[1] = o("div", { class: "flex-auto" }, null, -1)),
1634
+ o("div", nl, [
1635
+ g(E, {
1586
1636
  class: "opacity-20 hover:opacity-70 transition-all",
1587
1637
  color: "transparent",
1588
1638
  size: "sm",
1589
1639
  title: b.$t("add"),
1590
- onClick: q((J) => p(P, i(w)), ["stop"])
1640
+ onClick: q((J) => p(H, r(w)), ["stop"])
1591
1641
  }, {
1592
1642
  default: y(() => [
1593
- h(B, { class: "size-5" })
1643
+ g(V, { class: "size-5" })
1594
1644
  ]),
1595
1645
  _: 1
1596
1646
  }, 8, ["title", "onClick"])
1597
1647
  ])
1598
- ], 64)) : T("", !0)
1599
- ], 10, Gs),
1600
- i(w) ? (f(), v("div", Ys, [
1601
- De(h(Ue, {
1648
+ ], 64)) : B("", !0)
1649
+ ], 10, Qs),
1650
+ r(w) ? (f(), v("div", sl, [
1651
+ De(g(Ue, {
1602
1652
  class: "flex-auto",
1603
- path: m(P),
1653
+ path: m(H),
1604
1654
  items: w,
1605
1655
  onlyValue: e.onlyValue,
1606
- onClick: g[0] || (g[0] = (J) => l("click", J))
1656
+ onClick: h[0] || (h[0] = (J) => l("click", J))
1607
1657
  }, null, 8, ["path", "items", "onlyValue"]), [
1608
- [et, t.value[P]]
1658
+ [et, t.value[H]]
1609
1659
  ])
1610
- ])) : (f(), v(I, { key: 1 }, [
1611
- g[2] || (g[2] = o("div", { class: "flex-auto gap-3" }, null, -1)),
1612
- o("div", Qs, $(w), 1),
1613
- h(E, {
1660
+ ])) : (f(), v(D, { key: 1 }, [
1661
+ h[2] || (h[2] = o("div", { class: "flex-auto gap-3" }, null, -1)),
1662
+ o("div", ll, $(w), 1),
1663
+ g(E, {
1614
1664
  class: "opacity-20 hover:opacity-70 transition-all",
1615
1665
  color: "gray",
1616
1666
  size: "sm",
1617
1667
  title: b.$t("add"),
1618
- onClick: q((J) => p(P, i(w)), ["stop"])
1668
+ onClick: q((J) => p(H, r(w)), ["stop"])
1619
1669
  }, {
1620
1670
  default: y(() => [
1621
- h(B, { class: "size-5" })
1671
+ g(V, { class: "size-5" })
1622
1672
  ]),
1623
1673
  _: 1
1624
1674
  }, 8, ["title", "onClick"])
@@ -1627,7 +1677,7 @@ const qs = N({ name: "ri-folder6-line", render: Ws }), Gs = ["onClick"], Zs = {
1627
1677
  ]);
1628
1678
  };
1629
1679
  }
1630
- }), el = { class: "" }, tl = { class: "flex border-b border-gray-200 dark:border-gray-700" }, nl = ["onClick"], sl = { class: "px-4 py-2" }, ll = { class: "relative my-4" }, ol = { key: 0 }, al = /* @__PURE__ */ S({
1680
+ }), ol = { class: "glass-inset rounded-md p-1" }, al = { class: "flex gap-1" }, il = ["onClick"], rl = { class: "px-4 py-2" }, cl = { class: "relative my-4" }, dl = { key: 0 }, ul = /* @__PURE__ */ S({
1631
1681
  __name: "VTabs",
1632
1682
  props: {
1633
1683
  value: {},
@@ -1635,41 +1685,46 @@ const qs = N({ name: "ri-folder6-line", render: Ws }), Gs = ["onClick"], Zs = {
1635
1685
  },
1636
1686
  emits: ["click"],
1637
1687
  setup(e, { expose: n, emit: l }) {
1638
- const s = l, t = A(e.value || 0), a = (r) => [t.value === r ? "" : "before:hidden"], c = (r) => {
1639
- t.value = r, s("click", r);
1688
+ const s = l, t = A(e.value || 0), i = (c) => [
1689
+ t.value === c ? "bg-primary/10 text-primary" : "text-gray-500 hover:bg-white/5 dark:text-white/50 dark:hover:bg-white/5"
1690
+ ], d = (c) => {
1691
+ t.value = c, s("click", c);
1640
1692
  };
1641
1693
  return n({
1642
- setActiveTab: c,
1694
+ setActiveTab: d,
1643
1695
  activeTab: t
1644
- }), (r, u) => (f(), v("div", el, [
1645
- o("div", tl, [
1646
- (f(!0), v(I, null, R(e.items, (d, i) => (f(), v("div", {
1647
- key: i,
1648
- class: "relative flex-auto"
1649
- }, [
1650
- o("button", {
1651
- class: "w-full",
1652
- onClick: (m) => c(i)
1696
+ }), (c, u) => (f(), v("div", null, [
1697
+ o("div", ol, [
1698
+ o("div", al, [
1699
+ (f(!0), v(D, null, N(e.items, (a, r) => (f(), v("div", {
1700
+ key: r,
1701
+ class: "relative flex-auto"
1653
1702
  }, [
1654
- o("div", {
1655
- class: V([a(i), "font-medium text-lg transition cursor-pointer before:h-[2px] before:absolute before:w-full before:bg-blue-700 before:left-0 before:bottom-0"])
1703
+ o("button", {
1704
+ type: "button",
1705
+ class: "w-full",
1706
+ onClick: (m) => d(r)
1656
1707
  }, [
1657
- k(r.$slots, "header", {
1658
- tab: d,
1659
- i
1660
- }, () => [
1661
- o("div", sl, $(d.title), 1)
1662
- ])
1663
- ], 2)
1664
- ], 8, nl)
1665
- ]))), 128))
1708
+ o("div", {
1709
+ class: T([i(r), "rounded-md px-3 py-2 font-medium text-lg transition"])
1710
+ }, [
1711
+ k(c.$slots, "header", {
1712
+ tab: a,
1713
+ i: r
1714
+ }, () => [
1715
+ o("div", rl, $(a.title), 1)
1716
+ ])
1717
+ ], 2)
1718
+ ], 8, il)
1719
+ ]))), 128))
1720
+ ])
1666
1721
  ]),
1667
- o("div", ll, [
1668
- (f(!0), v(I, null, R(e.items, (d, i) => (f(), v("div", {
1669
- key: i,
1722
+ o("div", cl, [
1723
+ (f(!0), v(D, null, N(e.items, (a, r) => (f(), v("div", {
1724
+ key: r,
1670
1725
  class: "tab-panel"
1671
1726
  }, [
1672
- h(_e, {
1727
+ g(_e, {
1673
1728
  "enter-active-class": "transition-all duration-300 ease-out",
1674
1729
  "enter-from-class": "transform opacity-0 translate-x-2",
1675
1730
  "enter-to-class": "transform opacity-100 translate-x-0",
@@ -1678,9 +1733,9 @@ const qs = N({ name: "ri-folder6-line", render: Ws }), Gs = ["onClick"], Zs = {
1678
1733
  "leave-to-class": "transform opacity-0 -translate-x-2"
1679
1734
  }, {
1680
1735
  default: y(() => [
1681
- t.value === i ? (f(), v("div", ol, [
1682
- k(r.$slots, `tab-${i}`)
1683
- ])) : T("", !0)
1736
+ t.value === r ? (f(), v("div", dl, [
1737
+ k(c.$slots, `tab-${r}`)
1738
+ ])) : B("", !0)
1684
1739
  ]),
1685
1740
  _: 2
1686
1741
  }, 1024)
@@ -1688,7 +1743,7 @@ const qs = N({ name: "ri-folder6-line", render: Ws }), Gs = ["onClick"], Zs = {
1688
1743
  ])
1689
1744
  ]));
1690
1745
  }
1691
- }), il = { class: "flex gap-1 text-amber-500 self-start text-nowrap select-none" }, rl = ["title", "onMouseenter", "onMouseleave"], cl = { class: "flex flex-auto" }, dl = ["disabled"], ge = /* @__PURE__ */ S({
1746
+ }), ml = { class: "flex gap-1 text-amber-500 self-start text-nowrap select-none" }, fl = ["title", "onMouseenter", "onMouseleave"], pl = { class: "flex flex-auto" }, vl = ["disabled"], ge = /* @__PURE__ */ S({
1692
1747
  __name: "VFunc",
1693
1748
  props: {
1694
1749
  label: {},
@@ -1699,32 +1754,32 @@ const qs = N({ name: "ri-folder6-line", render: Ws }), Gs = ["onClick"], Zs = {
1699
1754
  },
1700
1755
  emits: ["change", "icon", "hover"],
1701
1756
  setup(e, { emit: n }) {
1702
- const l = n, s = ["v", "a", "b", "c"], t = A(e.value || ""), a = (u) => {
1757
+ const l = n, s = ["v", "a", "b", "c"], t = A(e.value || ""), i = (u) => {
1703
1758
  try {
1704
1759
  return new Function(u), !0;
1705
- } catch (d) {
1706
- return console.warn(d), !1;
1760
+ } catch (a) {
1761
+ return console.warn(a), !1;
1707
1762
  }
1708
- }, c = ke((u) => {
1709
- const d = u.target;
1710
- a(d.value) && l("change", d.value);
1711
- }, 500), r = (u) => l("icon", u);
1763
+ }, d = ke((u) => {
1764
+ const a = u.target;
1765
+ i(a.value) && l("change", a.value);
1766
+ }, 500), c = (u) => l("icon", u);
1712
1767
  return re(
1713
1768
  () => e.value,
1714
1769
  () => {
1715
1770
  e.value && (t.value = e.value);
1716
1771
  }
1717
- ), (u, d) => {
1718
- const i = ce, m = pe;
1772
+ ), (u, a) => {
1773
+ const r = ce, m = ve;
1719
1774
  return f(), j(Fe, {
1720
1775
  active: !!e.value,
1721
1776
  disabled: e.disabled,
1722
1777
  label: e.label,
1723
1778
  hideIcon: e.hideIcon,
1724
- onIcon: r
1779
+ onIcon: c
1725
1780
  }, {
1726
1781
  icon: y(() => [
1727
- e.value ? (f(), j(i, {
1782
+ e.value ? (f(), j(r, {
1728
1783
  key: 0,
1729
1784
  class: "size-4"
1730
1785
  })) : (f(), j(m, {
@@ -1733,39 +1788,39 @@ const qs = N({ name: "ri-folder6-line", render: Ws }), Gs = ["onClick"], Zs = {
1733
1788
  }))
1734
1789
  ]),
1735
1790
  default: y(() => [
1736
- e.value ? (f(), v(I, { key: 0 }, [
1737
- o("div", il, [
1738
- d[3] || (d[3] = D(" ( ", -1)),
1739
- (f(!0), v(I, null, R(e.args, (p, b) => (f(), v(I, { key: p }, [
1791
+ e.value ? (f(), v(D, { key: 0 }, [
1792
+ o("div", ml, [
1793
+ a[3] || (a[3] = I(" ( ", -1)),
1794
+ (f(!0), v(D, null, N(e.args, (p, b) => (f(), v(D, { key: p }, [
1740
1795
  o("span", {
1741
1796
  class: "text-blue-400/80",
1742
1797
  title: p,
1743
- onMouseenter: (g) => l("hover", "enter", b),
1744
- onMouseleave: (g) => l("hover", "leave", b)
1745
- }, $(s[b]), 41, rl),
1746
- d[2] || (d[2] = o("span", { class: "last:hidden" }, ",", -1))
1798
+ onMouseenter: (h) => l("hover", "enter", b),
1799
+ onMouseleave: (h) => l("hover", "leave", b)
1800
+ }, $(s[b]), 41, fl),
1801
+ a[2] || (a[2] = o("span", { class: "last:hidden" }, ",", -1))
1747
1802
  ], 64))), 128)),
1748
- d[4] || (d[4] = D(" ) => ", -1))
1803
+ a[4] || (a[4] = I(" ) => ", -1))
1749
1804
  ]),
1750
- o("div", cl, [
1805
+ o("div", pl, [
1751
1806
  De(o("textarea", {
1752
- "onUpdate:modelValue": d[0] || (d[0] = (p) => t.value = p),
1807
+ "onUpdate:modelValue": a[0] || (a[0] = (p) => t.value = p),
1753
1808
  class: "outline-0 w-full resize-none field-sizing-content",
1754
1809
  type: "text",
1755
1810
  disabled: e.disabled,
1756
- onInput: d[1] || (d[1] = //@ts-ignore
1757
- (...p) => W(c) && W(c)(...p))
1758
- }, null, 40, dl), [
1811
+ onInput: a[1] || (a[1] = //@ts-ignore
1812
+ (...p) => W(d) && W(d)(...p))
1813
+ }, null, 40, vl), [
1759
1814
  [tt, t.value]
1760
1815
  ])
1761
1816
  ])
1762
- ], 64)) : T("", !0)
1817
+ ], 64)) : B("", !0)
1763
1818
  ]),
1764
1819
  _: 1
1765
1820
  }, 8, ["active", "disabled", "label", "hideIcon"]);
1766
1821
  };
1767
1822
  }
1768
- }), ul = ["checked", "disabled"], ml = { class: "text-sm ms-2 peer-disabled:opacity-40" }, fl = /* @__PURE__ */ S({
1823
+ }), hl = ["checked", "disabled"], gl = { class: "text-sm ms-2 peer-disabled:opacity-40" }, bl = /* @__PURE__ */ S({
1769
1824
  __name: "VCheckbox",
1770
1825
  props: {
1771
1826
  modelValue: { type: [Number, Boolean], default: !1 },
@@ -1773,22 +1828,22 @@ const qs = N({ name: "ri-folder6-line", render: Ws }), Gs = ["onClick"], Zs = {
1773
1828
  },
1774
1829
  emits: ["update:modelValue", "click"],
1775
1830
  setup(e, { emit: n }) {
1776
- const l = n, s = (a) => {
1777
- const c = a.target;
1778
- l("update:modelValue", c.checked);
1779
- }, t = (a) => l("click", a);
1780
- return (a, c) => (f(), v("label", {
1781
- class: V(["inline-flex items-center relative", { "cursor-pointer": !e.disabled }]),
1831
+ const l = n, s = (i) => {
1832
+ const d = i.target;
1833
+ l("update:modelValue", d.checked);
1834
+ }, t = (i) => l("click", i);
1835
+ return (i, d) => (f(), v("label", {
1836
+ class: T(["inline-flex items-center relative", { "cursor-pointer": !e.disabled }]),
1782
1837
  onClick: t
1783
1838
  }, [
1784
1839
  o("input", {
1785
1840
  type: "checkbox",
1786
1841
  checked: !!e.modelValue,
1787
1842
  disabled: e.disabled,
1788
- class: "peer size-5 transition-all appearance-none rounded border border-gray-300 dark:border-gray-700 disabled:opacity-40 not-disabled:cursor-pointer",
1843
+ class: "peer size-5 appearance-none rounded-md border border-gray-300/80 bg-white/50 transition-all checked:border-[var(--accent-blue)] checked:bg-blue-50 dark:checked:border-[var(--accent-blue)] dark:checked:bg-[var(--accent-blue)] disabled:opacity-40 not-disabled:cursor-pointer dark:border-white/15 dark:bg-white/[0.04]",
1789
1844
  onChange: s
1790
- }, null, 40, ul),
1791
- c[0] || (c[0] = o("button", { class: "absolute opacity-0 peer-checked:opacity-100 peer-disabled:opacity-40 top-1/2 left-[10px] transform -translate-x-1/2 -translate-y-1/2 pointer-events-none" }, [
1845
+ }, null, 40, hl),
1846
+ d[0] || (d[0] = o("button", { class: "pointer-events-none absolute left-[10px] top-1/2 -translate-x-1/2 -translate-y-1/2 text-[var(--accent-blue)] opacity-0 peer-checked:opacity-100 peer-disabled:opacity-40 dark:text-white" }, [
1792
1847
  o("svg", {
1793
1848
  class: "h-3.5 w-3.5",
1794
1849
  viewBox: "0 0 20 20",
@@ -1803,18 +1858,18 @@ const qs = N({ name: "ri-folder6-line", render: Ws }), Gs = ["onClick"], Zs = {
1803
1858
  })
1804
1859
  ])
1805
1860
  ], -1)),
1806
- o("span", ml, [
1807
- k(a.$slots, "default")
1861
+ o("span", gl, [
1862
+ k(i.$slots, "default")
1808
1863
  ])
1809
1864
  ], 2));
1810
1865
  }
1811
- }), pl = { class: "flex flex-col" }, vl = { class: "flex gap-4 mb-6" }, gl = {
1866
+ }), yl = { class: "flex flex-col" }, xl = { class: "flex gap-4 mb-6" }, _l = {
1812
1867
  key: 0,
1813
1868
  class: "flex gap-4"
1814
- }, hl = {
1869
+ }, $l = {
1815
1870
  key: 1,
1816
1871
  class: ""
1817
- }, bl = { class: "flex flex-col md:flex-row gap-4" }, yl = { class: "flex gap-4" }, xl = { class: "flex justify-between flex-auto" }, _l = ["onClick"], $l = /* @__PURE__ */ S({
1872
+ }, kl = { class: "flex flex-col md:flex-row gap-4" }, wl = { class: "flex gap-4" }, Cl = { class: "flex justify-between flex-auto" }, Sl = ["onClick"], zl = /* @__PURE__ */ S({
1818
1873
  __name: "ItemOptions",
1819
1874
  props: {
1820
1875
  min: { default: 0 },
@@ -1827,110 +1882,110 @@ const qs = N({ name: "ri-folder6-line", render: Ws }), Gs = ["onClick"], Zs = {
1827
1882
  },
1828
1883
  emits: ["update"],
1829
1884
  setup(e, { emit: n }) {
1830
- const l = n, s = M(() => e.items.map((g, x) => ({ ...g, id: ++x }))), t = A({ name: "", value: "" }), a = M(() => e.items.length + 1), c = M(() => {
1831
- var g;
1832
- return !((g = t.value) != null && g.id);
1833
- }), r = (g) => e.type === g, u = (g, x) => l("update", g, x), d = (g) => g.map(({ name: x, value: z }) => ({ name: x, value: z })), i = ({ id: g, name: x, value: z }) => t.value = { id: g, name: x, value: z }, m = () => {
1834
- const g = a.value;
1835
- t.value = { name: `New_${g}`, value: `${g}`, id: g }, u("items", d([...s.value, t.value]));
1836
- }, p = (g) => {
1837
- t.value.name === g.name && (t.value = { name: "", value: "" }), u("items", d(s.value.filter((x) => x.value !== g.value)));
1885
+ const l = n, s = M(() => e.items.map((h, x) => ({ ...h, id: ++x }))), t = A({ name: "", value: "" }), i = M(() => e.items.length + 1), d = M(() => {
1886
+ var h;
1887
+ return !((h = t.value) != null && h.id);
1888
+ }), c = (h) => e.type === h, u = (h, x) => l("update", h, x), a = (h) => h.map(({ name: x, value: z }) => ({ name: x, value: z })), r = ({ id: h, name: x, value: z }) => t.value = { id: h, name: x, value: z }, m = () => {
1889
+ const h = i.value;
1890
+ t.value = { name: `New_${h}`, value: `${h}`, id: h }, u("items", a([...s.value, t.value]));
1891
+ }, p = (h) => {
1892
+ t.value.name === h.name && (t.value = { name: "", value: "" }), u("items", a(s.value.filter((x) => x.value !== h.value)));
1838
1893
  }, b = ke(() => {
1839
- const g = t.value;
1840
- if (!g.name || !g.value) return;
1841
- const x = s.value.map((z) => z.id === g.id ? g : z);
1842
- u("items", d(x));
1894
+ const h = t.value;
1895
+ if (!h.name || !h.value) return;
1896
+ const x = s.value.map((z) => z.id === h.id ? h : z);
1897
+ u("items", a(x));
1843
1898
  }, 300);
1844
- return (g, x) => {
1845
- const z = ce, B = pe;
1846
- return f(), v("div", pl, [
1847
- o("div", vl, [
1848
- h(fl, {
1899
+ return (h, x) => {
1900
+ const z = ce, V = ve;
1901
+ return f(), v("div", yl, [
1902
+ o("div", xl, [
1903
+ g(bl, {
1849
1904
  modelValue: e.disabled,
1850
1905
  "onUpdate:modelValue": x[0] || (x[0] = (w) => u("disabled", w ? 1 : 0))
1851
1906
  }, {
1852
1907
  default: y(() => [...x[6] || (x[6] = [
1853
- D("Disabled", -1)
1908
+ I("Disabled", -1)
1854
1909
  ])]),
1855
1910
  _: 1
1856
1911
  }, 8, ["modelValue"])
1857
1912
  ]),
1858
- r("dimmer") ? (f(), v("div", gl, [
1859
- h(Z, {
1913
+ c("dimmer") ? (f(), v("div", _l, [
1914
+ g(Z, {
1860
1915
  modelValue: e.min,
1861
1916
  label: "Min",
1862
1917
  "onUpdate:modelValue": x[1] || (x[1] = (w) => u("min", +w))
1863
1918
  }, null, 8, ["modelValue"]),
1864
- h(Z, {
1919
+ g(Z, {
1865
1920
  modelValue: e.max,
1866
1921
  label: "Max",
1867
1922
  "onUpdate:modelValue": x[2] || (x[2] = (w) => u("max", +w))
1868
1923
  }, null, 8, ["modelValue"]),
1869
- h(Z, {
1924
+ g(Z, {
1870
1925
  modelValue: e.step,
1871
1926
  label: "Step",
1872
1927
  "onUpdate:modelValue": x[3] || (x[3] = (w) => u("step", +w))
1873
1928
  }, null, 8, ["modelValue"])
1874
- ])) : T("", !0),
1875
- r("list") ? (f(), v("div", hl, [
1876
- o("div", bl, [
1877
- h(Z, {
1929
+ ])) : B("", !0),
1930
+ c("list") ? (f(), v("div", $l, [
1931
+ o("div", kl, [
1932
+ g(Z, {
1878
1933
  modelValue: t.value.name,
1879
1934
  "onUpdate:modelValue": [
1880
1935
  x[4] || (x[4] = (w) => t.value.name = w),
1881
1936
  W(b)
1882
1937
  ],
1883
- disabled: c.value,
1938
+ disabled: d.value,
1884
1939
  label: "Name"
1885
1940
  }, null, 8, ["modelValue", "disabled", "onUpdate:modelValue"]),
1886
- h(Z, {
1941
+ g(Z, {
1887
1942
  modelValue: t.value.value,
1888
1943
  "onUpdate:modelValue": [
1889
1944
  x[5] || (x[5] = (w) => t.value.value = w),
1890
1945
  W(b)
1891
1946
  ],
1892
- disabled: c.value,
1947
+ disabled: d.value,
1893
1948
  label: "Value"
1894
1949
  }, null, 8, ["modelValue", "disabled", "onUpdate:modelValue"])
1895
1950
  ]),
1896
- o("div", yl, [
1897
- h(se, {
1951
+ o("div", wl, [
1952
+ g(se, {
1898
1953
  "model-value": t.value.value,
1899
1954
  label: "List",
1900
1955
  items: s.value,
1901
1956
  top: "unset",
1902
1957
  bottom: "0",
1903
- onChange: i
1958
+ onChange: r
1904
1959
  }, {
1905
1960
  item: y(({ item: w }) => [
1906
- o("div", xl, [
1961
+ o("div", Cl, [
1907
1962
  o("span", null, $(w.name), 1),
1908
1963
  o("button", {
1909
1964
  class: "cursor-pointer size-4",
1910
- onClick: q((P) => p(w), ["prevent", "stop"])
1965
+ onClick: q((H) => p(w), ["prevent", "stop"])
1911
1966
  }, [
1912
- h(z)
1913
- ], 8, _l)
1967
+ g(z)
1968
+ ], 8, Sl)
1914
1969
  ])
1915
1970
  ]),
1916
1971
  _: 1
1917
1972
  }, 8, ["model-value", "items"]),
1918
- h(E, {
1973
+ g(E, {
1919
1974
  class: "px-4",
1920
1975
  color: "blue",
1921
1976
  onClick: m
1922
1977
  }, {
1923
1978
  default: y(() => [
1924
- h(B)
1979
+ g(V)
1925
1980
  ]),
1926
1981
  _: 1
1927
1982
  })
1928
1983
  ])
1929
- ])) : T("", !0)
1984
+ ])) : B("", !0)
1930
1985
  ]);
1931
1986
  };
1932
1987
  }
1933
- }), kl = { class: "flex flex-col" }, wl = { class: "flex flex-col md:flex-row gap-6 min-h-[300px]" }, Cl = { class: "flex-auto order-1" }, Sl = { class: "flex-auto gap-x-2 order-1" }, zl = { class: "grid grid-cols-1 md:grid-cols-2 gap-6" }, Vl = { class: "flex gap-2 items-center" }, Tl = { class: "flex flex-col gap-4" }, El = { class: "flex gap-2 flex-wrap flex-auto px-2 py-1" }, Bl = { class: "relative group" }, Ll = { class: "select-none" }, Ml = ["onClick"], Al = { class: "flex justify-center order-0 md:order-1 md:mt-11" }, Dl = { class: "flex-[0_0_130px] size-[130px]" }, Il = { class: "flex gap-4 justify-end" }, jl = { class: "relative min-h-[200px] max-h-100dvh overflow-auto scrollbar" }, ea = /* @__PURE__ */ S({
1988
+ }), Vl = { class: "flex flex-col" }, Tl = { class: "flex flex-col md:flex-row gap-6 min-h-[300px]" }, Bl = { class: "flex-auto order-1" }, El = { class: "flex-auto gap-x-2 order-1" }, Ll = { class: "grid grid-cols-1 md:grid-cols-2 gap-6" }, Ml = { class: "flex gap-2 items-center" }, Al = { class: "flex flex-col gap-4" }, Dl = { class: "flex gap-2 flex-wrap flex-auto px-2 py-1" }, Il = { class: "relative group" }, jl = { class: "select-none" }, Pl = ["onClick"], Hl = { class: "flex justify-center order-0 md:order-1 md:mt-11" }, Nl = { class: "flex-[0_0_130px] size-[130px]" }, Ol = { class: "flex gap-4 justify-end" }, Fl = { class: "relative min-h-[200px] max-h-100dvh overflow-auto scrollbar" }, aa = /* @__PURE__ */ S({
1934
1989
  __name: "ItemEdit",
1935
1990
  props: {
1936
1991
  items: {},
@@ -1951,32 +2006,32 @@ const qs = N({ name: "ri-folder6-line", render: Ws }), Gs = ["onClick"], Zs = {
1951
2006
  set: "",
1952
2007
  get: "",
1953
2008
  getTo: ""
1954
- }), a = A(!1), c = M(() => {
2009
+ }), i = A(!1), d = M(() => {
1955
2010
  var _;
1956
2011
  return !((_ = e.item) != null && _.id);
1957
- }), r = M(() => !!e.items.filter((_) => {
2012
+ }), c = M(() => !!e.items.filter((_) => {
1958
2013
  var C;
1959
2014
  return _.id !== ((C = e.item) == null ? void 0 : C.id);
1960
- }).find((_) => _.id === (t == null ? void 0 : t.value.id))), u = M(() => t.value.type === "info"), d = M(() => {
2015
+ }).find((_) => _.id === (t == null ? void 0 : t.value.id))), u = M(() => t.value.type === "info"), a = M(() => {
1961
2016
  var _;
1962
2017
  return (_ = t.value.args) == null ? void 0 : _.length;
1963
- }), i = M(() => t.value.args.length > 3), m = M(() => {
1964
- if (r.value) return !0;
2018
+ }), r = M(() => t.value.args.length > 3), m = M(() => {
2019
+ if (c.value) return !0;
1965
2020
  const { id: _, args: C } = t.value;
1966
2021
  return !_ || !C.length;
1967
2022
  }), p = ({ value: _ }) => t.value.icon = _, b = ({ value: _ }) => {
1968
2023
  const C = _;
1969
2024
  t.value.type = C, delete t.value.opts, ["button", "list", "dimmer"].includes(C) && (_ === "button" && (t.value.opts = {}), _ === "list" && (t.value.opts = { items: [] }), _ === "dimmer" && (t.value.opts = { min: 0, max: 255, step: 1 }));
1970
- }, g = (_) => {
2025
+ }, h = (_) => {
1971
2026
  _ === "get" && (t.value.get ? delete t.value.get : t.value.get = "v"), _ === "set" && (t.value.set ? delete t.value.set : t.value.set = "v"), _ === "getTo" && (t.value.getTo ? delete t.value.getTo : t.value.getTo = "v");
1972
- }, x = (_) => l("button", _, t.value), z = (_) => t.value.args = t.value.args.filter((C) => C !== _), B = ({ path: _ }) => {
1973
- !t.value.args.length && !t.value.id && (t.value.id = _), t.value.args.push(_), a.value = !1;
1974
- }, w = A(-1), P = (_) => w.value === _, J = (_, C) => {
2027
+ }, x = (_) => l("button", _, t.value), z = (_) => t.value.args = t.value.args.filter((C) => C !== _), V = ({ path: _ }) => {
2028
+ !t.value.args.length && !t.value.id && (t.value.id = _), t.value.args.push(_), i.value = !1;
2029
+ }, w = A(-1), H = (_) => w.value === _, J = (_, C) => {
1975
2030
  _ === "enter" && (w.value = C), _ === "leave" && (w.value = -1);
1976
- }, ve = (_, C) => {
2031
+ }, he = (_, C) => {
1977
2032
  _ === "set" && (t.value.set = C), _ === "get" && (t.value.get = C), _ === "getTo" && (t.value.getTo = C), C || delete t.value[_];
1978
2033
  }, Ze = () => {
1979
- a.value = !0;
2034
+ i.value = !0;
1980
2035
  }, Je = (_, C) => {
1981
2036
  t.value.opts || (t.value.opts = {}), t.value.opts[_] = C, _ === "disabled" && !C && delete t.value.opts[_];
1982
2037
  };
@@ -1984,32 +2039,32 @@ const qs = N({ name: "ri-folder6-line", render: Ws }), Gs = ["onClick"], Zs = {
1984
2039
  var _;
1985
2040
  (_ = e.item) != null && _.id && (t.value = mt(e.item));
1986
2041
  }), (_, C) => {
1987
- const Xe = Is, Ye = ce;
1988
- return f(), v("div", kl, [
1989
- o("div", wl, [
1990
- o("div", Cl, [
1991
- h(al, {
2042
+ const Xe = Os, Ye = ce;
2043
+ return f(), v("div", Vl, [
2044
+ o("div", Tl, [
2045
+ o("div", Bl, [
2046
+ g(ul, {
1992
2047
  class: "flex-auto min-h-75",
1993
2048
  value: 0,
1994
2049
  items: s
1995
2050
  }, {
1996
2051
  "tab-0": y(() => [
1997
- o("div", Sl, [
1998
- h(Z, {
2052
+ o("div", El, [
2053
+ g(Z, {
1999
2054
  modelValue: t.value.id,
2000
2055
  "onUpdate:modelValue": C[0] || (C[0] = (L) => t.value.id = L),
2001
2056
  label: "ID",
2002
- message: r.value ? _.$t("used") : ""
2057
+ message: c.value ? _.$t("used") : ""
2003
2058
  }, nt({ _: 2 }, [
2004
- d.value ? void 0 : {
2059
+ a.value ? void 0 : {
2005
2060
  name: "icon",
2006
2061
  fn: y(() => [
2007
- h(E, {
2062
+ g(E, {
2008
2063
  color: "transparent",
2009
2064
  onClick: Ze
2010
2065
  }, {
2011
2066
  default: y(() => [
2012
- h(Xe)
2067
+ g(Xe)
2013
2068
  ]),
2014
2069
  _: 1
2015
2070
  })
@@ -2017,13 +2072,13 @@ const qs = N({ name: "ri-folder6-line", render: Ws }), Gs = ["onClick"], Zs = {
2017
2072
  key: "0"
2018
2073
  }
2019
2074
  ]), 1032, ["modelValue", "message"]),
2020
- h(Z, {
2075
+ g(Z, {
2021
2076
  modelValue: t.value.name,
2022
2077
  "onUpdate:modelValue": C[1] || (C[1] = (L) => t.value.name = L),
2023
2078
  label: "Name"
2024
2079
  }, null, 8, ["modelValue"]),
2025
- o("div", zl, [
2026
- h(se, {
2080
+ o("div", Ll, [
2081
+ g(se, {
2027
2082
  "model-value": t.value.icon,
2028
2083
  bottom: "0",
2029
2084
  top: "unset",
@@ -2033,7 +2088,7 @@ const qs = N({ name: "ri-folder6-line", render: Ws }), Gs = ["onClick"], Zs = {
2033
2088
  onChange: p
2034
2089
  }, {
2035
2090
  item: y(({ item: L }) => [
2036
- o("div", Vl, [
2091
+ o("div", Ml, [
2037
2092
  k(_.$slots, "icon", {
2038
2093
  icon: L.value
2039
2094
  }),
@@ -2042,7 +2097,7 @@ const qs = N({ name: "ri-folder6-line", render: Ws }), Gs = ["onClick"], Zs = {
2042
2097
  ]),
2043
2098
  _: 3
2044
2099
  }, 8, ["model-value", "items"]),
2045
- h(se, {
2100
+ g(se, {
2046
2101
  "model-value": t.value.type,
2047
2102
  bottom: "0",
2048
2103
  top: "unset",
@@ -2054,23 +2109,23 @@ const qs = N({ name: "ri-folder6-line", render: Ws }), Gs = ["onClick"], Zs = {
2054
2109
  ])
2055
2110
  ]),
2056
2111
  "tab-1": y(() => [
2057
- o("div", Tl, [
2058
- h(Fe, {
2112
+ o("div", Al, [
2113
+ g(Fe, {
2059
2114
  active: !!t.value.args.length,
2060
- disabled: i.value,
2115
+ disabled: r.value,
2061
2116
  label: "Arguments",
2062
- onIcon: C[2] || (C[2] = (L) => a.value = !0)
2117
+ onIcon: C[2] || (C[2] = (L) => i.value = !0)
2063
2118
  }, {
2064
2119
  default: y(() => [
2065
- o("div", El, [
2066
- (f(!0), v(I, null, R(t.value.args, (L, Se) => (f(), v("div", {
2120
+ o("div", Dl, [
2121
+ (f(!0), v(D, null, N(t.value.args, (L, Se) => (f(), v("div", {
2067
2122
  key: L,
2068
2123
  class: "flex items-center rounded-full bg-gray-200 dark:bg-gray-900/50 px-2 py-[2px] text-xs"
2069
2124
  }, [
2070
- o("div", Bl, [
2071
- o("span", Ll, $(L), 1),
2125
+ o("div", Il, [
2126
+ o("span", jl, $(L), 1),
2072
2127
  o("div", {
2073
- class: V(["fixed left-1/2 top-1/2 p-4 text-white bg-gray-900 rounded-md group-hover:visible invisible opacity-0 group-hover:opacity-100 z-50 transition-all -translate-1/2", P(Se) ? "visible opacity-100" : ""])
2128
+ class: T(["fixed left-1/2 top-1/2 p-4 text-white bg-gray-900 rounded-md group-hover:visible invisible opacity-0 group-hover:opacity-100 z-50 transition-all -translate-1/2", H(Se) ? "visible opacity-100" : ""])
2074
2129
  }, [
2075
2130
  o("pre", null, $(W(vt)(L, e.object)), 1)
2076
2131
  ], 2)
@@ -2078,46 +2133,46 @@ const qs = N({ name: "ri-folder6-line", render: Ws }), Gs = ["onClick"], Zs = {
2078
2133
  Se || t.value.args.length < 2 ? (f(), v("button", {
2079
2134
  key: 0,
2080
2135
  class: "cursor-pointer ms-1",
2081
- onClick: (Vo) => z(L)
2136
+ onClick: (Ao) => z(L)
2082
2137
  }, [
2083
- h(Ye, { class: "size-5" })
2084
- ], 8, Ml)) : T("", !0)
2138
+ g(Ye, { class: "size-5" })
2139
+ ], 8, Pl)) : B("", !0)
2085
2140
  ]))), 128))
2086
2141
  ])
2087
2142
  ]),
2088
2143
  _: 1
2089
2144
  }, 8, ["active", "disabled"]),
2090
- h(ge, {
2145
+ g(ge, {
2091
2146
  value: t.value.set,
2092
2147
  args: t.value.args,
2093
- disabled: !d.value || u.value,
2148
+ disabled: !a.value || u.value,
2094
2149
  label: "Set",
2095
- onIcon: C[3] || (C[3] = (L) => g("set")),
2150
+ onIcon: C[3] || (C[3] = (L) => h("set")),
2096
2151
  onHover: J,
2097
- onChange: C[4] || (C[4] = (L) => ve("set", L))
2152
+ onChange: C[4] || (C[4] = (L) => he("set", L))
2098
2153
  }, null, 8, ["value", "args", "disabled"]),
2099
- h(ge, {
2154
+ g(ge, {
2100
2155
  value: t.value.get,
2101
2156
  args: t.value.args,
2102
- disabled: !d.value,
2157
+ disabled: !a.value,
2103
2158
  label: "Get",
2104
- onIcon: C[5] || (C[5] = (L) => g("get")),
2159
+ onIcon: C[5] || (C[5] = (L) => h("get")),
2105
2160
  onHover: J,
2106
- onChange: C[6] || (C[6] = (L) => ve("get", L))
2161
+ onChange: C[6] || (C[6] = (L) => he("get", L))
2107
2162
  }, null, 8, ["value", "args", "disabled"]),
2108
- h(ge, {
2163
+ g(ge, {
2109
2164
  value: t.value.getTo,
2110
2165
  args: t.value.args,
2111
- disabled: !d.value,
2166
+ disabled: !a.value,
2112
2167
  label: "GetTo",
2113
- onIcon: C[7] || (C[7] = (L) => g("getTo")),
2168
+ onIcon: C[7] || (C[7] = (L) => h("getTo")),
2114
2169
  onHover: J,
2115
- onChange: C[8] || (C[8] = (L) => ve("getTo", L))
2170
+ onChange: C[8] || (C[8] = (L) => he("getTo", L))
2116
2171
  }, null, 8, ["value", "args", "disabled"])
2117
2172
  ])
2118
2173
  ]),
2119
2174
  "tab-2": y(() => [
2120
- h($l, H(t.value.opts, {
2175
+ g(zl, P(t.value.opts, {
2121
2176
  value: t.value.value,
2122
2177
  type: t.value.type,
2123
2178
  onUpdate: Je
@@ -2126,67 +2181,67 @@ const qs = N({ name: "ri-folder6-line", render: Ws }), Gs = ["onClick"], Zs = {
2126
2181
  _: 3
2127
2182
  })
2128
2183
  ]),
2129
- o("div", Al, [
2130
- o("div", Dl, [
2184
+ o("div", Hl, [
2185
+ o("div", Nl, [
2131
2186
  k(_.$slots, "default", { item: t.value })
2132
2187
  ])
2133
2188
  ])
2134
2189
  ]),
2135
- o("div", Il, [
2136
- h(E, {
2190
+ o("div", Ol, [
2191
+ g(E, {
2137
2192
  class: "px-4",
2138
2193
  color: "blue",
2139
2194
  disabled: m.value,
2140
- onClick: C[9] || (C[9] = (L) => x(c.value ? "add" : "save"))
2195
+ onClick: C[9] || (C[9] = (L) => x(d.value ? "add" : "save"))
2141
2196
  }, {
2142
2197
  default: y(() => [
2143
- D($(c.value ? _.$t("add") : _.$t("save")), 1)
2198
+ I($(d.value ? _.$t("add") : _.$t("save")), 1)
2144
2199
  ]),
2145
2200
  _: 1
2146
2201
  }, 8, ["disabled"]),
2147
- h(E, {
2202
+ g(E, {
2148
2203
  class: "px-4",
2149
2204
  color: "red",
2150
2205
  outline: "",
2151
2206
  onClick: C[10] || (C[10] = (L) => x("remove"))
2152
2207
  }, {
2153
2208
  default: y(() => [
2154
- D($(_.$t("remove")), 1)
2209
+ I($(_.$t("remove")), 1)
2155
2210
  ]),
2156
2211
  _: 1
2157
2212
  })
2158
2213
  ]),
2159
- a.value ? (f(), j(He, {
2214
+ i.value ? (f(), j(Pe, {
2160
2215
  key: 0,
2161
2216
  size: "md",
2162
2217
  title: _.$t("select"),
2163
- onClose: C[11] || (C[11] = (L) => a.value = !1)
2218
+ onClose: C[11] || (C[11] = (L) => i.value = !1)
2164
2219
  }, {
2165
2220
  default: y(() => [
2166
- o("div", jl, [
2167
- h(Ue, {
2221
+ o("div", Fl, [
2222
+ g(Ue, {
2168
2223
  items: e.object,
2169
- onlyValue: !d.value,
2170
- onClick: B
2224
+ onlyValue: !a.value,
2225
+ onClick: V
2171
2226
  }, null, 8, ["items", "onlyValue"])
2172
2227
  ])
2173
2228
  ]),
2174
2229
  _: 1
2175
- }, 8, ["title"])) : T("", !0)
2230
+ }, 8, ["title"])) : B("", !0)
2176
2231
  ]);
2177
2232
  };
2178
2233
  }
2179
- }), ze = { position: "relative", boxSizing: "border-box", overflow: "hidden", fontSize: "16px", fontFamily: 'Menlo, Consolas, "Liberation Mono", Monaco, "Lucida Console", monospace' }, Hl = { lineHeight: "inherit", whiteSpace: "pre-wrap", wordBreak: "keep-all", overflowWrap: "break-word", background: "none", position: "absolute", width: "100%", height: "100%", zIndex: "1", resize: "none", caretColor: "currentColor", padding: "inherit", outline: "none", fontSize: "inherit", fontFamily: "inherit", letterSpacing: "inherit", boxSizing: "border-box", border: "none", top: "0px", left: "0px", color: "inherit", overflow: "hidden", "-webkit-font-smoothing": "antialiased", "-webkit-text-fill-color": "transparent" }, Pl = { lineHeight: "inherit", position: "relative", whiteSpace: "pre-wrap", wordBreak: "keep-all", padding: "0", width: "100%", margin: "0", pointerEvents: "none", boxSizing: "border-box", overflowWrap: "break-word", fontFamily: "inherit" }, Nl = { lineHeight: "inherit", position: "absolute", width: "100%", height: "100%", whiteSpace: "pre-wrap", wordBreak: "keep-all", padding: "inherit", margin: "0", top: "0px", left: "0px", pointerEvents: "none", boxSizing: "border-box", overflowWrap: "break-word", fontFamily: "inherit" }, Re = (e) => Ke(e);
2234
+ }), ze = { position: "relative", boxSizing: "border-box", overflow: "hidden", fontSize: "16px", fontFamily: 'Menlo, Consolas, "Liberation Mono", Monaco, "Lucida Console", monospace' }, Ul = { lineHeight: "inherit", whiteSpace: "pre-wrap", wordBreak: "keep-all", overflowWrap: "break-word", background: "none", position: "absolute", width: "100%", height: "100%", zIndex: "1", resize: "none", caretColor: "currentColor", padding: "inherit", outline: "none", fontSize: "inherit", fontFamily: "inherit", letterSpacing: "inherit", boxSizing: "border-box", border: "none", top: "0px", left: "0px", color: "inherit", overflow: "hidden", "-webkit-font-smoothing": "antialiased", "-webkit-text-fill-color": "transparent" }, Rl = { lineHeight: "inherit", position: "relative", whiteSpace: "pre-wrap", wordBreak: "keep-all", padding: "0", width: "100%", margin: "0", pointerEvents: "none", boxSizing: "border-box", overflowWrap: "break-word", fontFamily: "inherit" }, Kl = { lineHeight: "inherit", position: "absolute", width: "100%", height: "100%", whiteSpace: "pre-wrap", wordBreak: "keep-all", padding: "inherit", margin: "0", top: "0px", left: "0px", pointerEvents: "none", boxSizing: "border-box", overflowWrap: "break-word", fontFamily: "inherit" }, Re = (e) => Ke(e);
2180
2235
  function Ve(e) {
2181
2236
  const n = Array.isArray(e) ? e : [e];
2182
- return n.length === 0 ? Re : (l) => n.reduce((s, t, a) => t(s, { html: a > 0 }), l);
2237
+ return n.length === 0 ? Re : (l) => n.reduce((s, t, i) => t(s, { html: i > 0 }), l);
2183
2238
  }
2184
- class Ol {
2239
+ class Wl {
2185
2240
  constructor(n, l = {}) {
2186
2241
  if (this.lines = null, !n) throw new Error("selector is not defined");
2187
2242
  if (this.root = n instanceof Node ? n : document.querySelector(n), !this.root) throw new Error(`element with "${n}" selector is not exist`);
2188
- const s = { value: "", styles: {}, plugins: [], highlighter: Re }, { highlighters: t, ...a } = l;
2189
- this.options = { ...s, ...a, highlighter: t ? Ve(t) : s.highlighter }, this.options.value = this.options.value == null ? "" : String(this.options.value), this.init();
2243
+ const s = { value: "", styles: {}, plugins: [], highlighter: Re }, { highlighters: t, ...i } = l;
2244
+ this.options = { ...s, ...i, highlighter: t ? Ve(t) : s.highlighter }, this.options.value = this.options.value == null ? "" : String(this.options.value), this.init();
2190
2245
  }
2191
2246
  init() {
2192
2247
  this.textarea = document.createElement("textarea"), this.textarea.setAttribute("spellcheck", "false"), this.textarea.setAttribute("autocapitalize", "off"), this.textarea.setAttribute("autocorrect", "off"), this.textarea.setAttribute("autocomplete", "off"), this.pre = document.createElement("pre");
@@ -2195,16 +2250,16 @@ class Ol {
2195
2250
  const l = this.root.style;
2196
2251
  n.forEach((s) => {
2197
2252
  this.initialRootStyles[s] = l[s] || "";
2198
- }), Object.assign(this.root.style, ze, this.options.styles), Object.assign(this.textarea.style, Hl), Object.assign(this.pre.style, Pl), this.basePaddingLeft = this.root.style.paddingLeft || "", this.root.appendChild(this.textarea), this.root.appendChild(this.pre), this.addTextareaEvents(), this.update({ value: this.options.value }), this.updateLines();
2253
+ }), Object.assign(this.root.style, ze, this.options.styles), Object.assign(this.textarea.style, Ul), Object.assign(this.pre.style, Rl), this.basePaddingLeft = this.root.style.paddingLeft || "", this.root.appendChild(this.textarea), this.root.appendChild(this.pre), this.addTextareaEvents(), this.update({ value: this.options.value }), this.updateLines();
2199
2254
  }
2200
2255
  addTextareaEvents() {
2201
2256
  this.handleEvent = (n) => {
2202
2257
  if (n.type === "keydown" && this.textarea.readOnly) return;
2203
2258
  const l = n;
2204
2259
  if (l.isComposing || l.keyCode === 229) return;
2205
- const s = function(t, a) {
2206
- const { value: c, selectionStart: r, selectionEnd: u } = a.target;
2207
- return t.reduce((d, i) => ({ ...d, ...i(d, a) }), { value: c, selectionStart: r, selectionEnd: u });
2260
+ const s = function(t, i) {
2261
+ const { value: d, selectionStart: c, selectionEnd: u } = i.target;
2262
+ return t.reduce((a, r) => ({ ...a, ...r(a, i) }), { value: d, selectionStart: c, selectionEnd: u });
2208
2263
  }(this.options.plugins, n);
2209
2264
  this.update(s);
2210
2265
  }, this.textarea.addEventListener("input", this.handleEvent), this.textarea.addEventListener("keydown", this.handleEvent), this.textarea.addEventListener("compositionend", this.handleEvent);
@@ -2219,8 +2274,8 @@ class Ol {
2219
2274
  const { highlighters: l, ...s } = n;
2220
2275
  if (this.options = { ...this.options, ...s, highlighter: l ? Ve(l) : this.options.highlighter }, n.styles) {
2221
2276
  const t = this.root.style;
2222
- Object.keys(n.styles).forEach((a) => {
2223
- a in this.initialRootStyles || (this.initialRootStyles[a] = t[a] || "");
2277
+ Object.keys(n.styles).forEach((i) => {
2278
+ i in this.initialRootStyles || (this.initialRootStyles[i] = t[i] || "");
2224
2279
  }), Object.assign(this.root.style, n.styles), ("paddingLeft" in n.styles || "padding" in n.styles) && (this.basePaddingLeft = this.root.style.paddingLeft || "");
2225
2280
  }
2226
2281
  this.lines && !this.options.lineNumbers && (de(this.lines), this.lines = null, this.root.style.paddingLeft = this.basePaddingLeft), n.value != null && this.update({ value: n.value }), this.render();
@@ -2231,7 +2286,7 @@ class Ol {
2231
2286
  }
2232
2287
  updateLines() {
2233
2288
  if (!this.options.lineNumbers) return;
2234
- this.lines || (this.lines = document.createElement("pre"), this.root.appendChild(this.lines), Object.assign(this.lines.style, Nl));
2289
+ this.lines || (this.lines = document.createElement("pre"), this.root.appendChild(this.lines), Object.assign(this.lines.style, Kl));
2235
2290
  const n = this.value.split(`
2236
2291
  `), l = n.length.toString().length;
2237
2292
  this.root.style.paddingLeft = `${l + 1}ch`, this.lines.innerHTML = n.map((s, t) => `${`<span class="yace-line" style="position: absolute; opacity: .3; left: 0; width: ${l}ch; text-align: right">${1 + t}</span>`}${`<span style="color: transparent; pointer-events: none">${Ke(s)}</span>`}`).join(`
@@ -2250,171 +2305,171 @@ function de(e) {
2250
2305
  function Ke(e) {
2251
2306
  return e.replace(/&/g, "&amp;").replace(/</g, "&lt;").replace(/>/g, "&gt;").replace(/"/g, "&quot;").replace(/'/g, "&#039;");
2252
2307
  }
2253
- const Te = { alt: "altKey", control: "ctrlKey", ctrl: "ctrlKey", meta: "metaKey", shift: "shiftKey", "ctrl/cmd": typeof window < "u" && window.navigator && /Mac|iPod|iPhone|iPad/.test(window.navigator.platform) ? "metaKey" : "ctrlKey" }, Fl = { add: "=" }, Ul = { ";": "semicolon", "=": "equal", ",": "comma", "-": "minus", ".": "period", "/": "slash", "`": "backquote", "[": "bracketleft", "\\": "backslash", "]": "bracketright", "'": "quote" };
2308
+ const Te = { alt: "altKey", control: "ctrlKey", ctrl: "ctrlKey", meta: "metaKey", shift: "shiftKey", "ctrl/cmd": typeof window < "u" && window.navigator && /Mac|iPod|iPhone|iPad/.test(window.navigator.platform) ? "metaKey" : "ctrlKey" }, ql = { add: "=" }, Gl = { ";": "semicolon", "=": "equal", ",": "comma", "-": "minus", ".": "period", "/": "slash", "`": "backquote", "[": "bracketleft", "\\": "backslash", "]": "bracketright", "'": "quote" };
2254
2309
  function ie(e, n) {
2255
- const l = e.split("+").reduce((u, d) => Te[d] ? (u.modifiers[Te[d]] = !0, u) : { ...u, key: Fl[d] || d.toLowerCase() }, { modifiers: { altKey: !1, ctrlKey: !1, metaKey: !1, shiftKey: !1 }, key: null }), s = Object.keys(l.modifiers).every((u) => l.modifiers[u] ? n[u] : !n[u]);
2310
+ const l = e.split("+").reduce((u, a) => Te[a] ? (u.modifiers[Te[a]] = !0, u) : { ...u, key: ql[a] || a.toLowerCase() }, { modifiers: { altKey: !1, ctrlKey: !1, metaKey: !1, shiftKey: !1 }, key: null }), s = Object.keys(l.modifiers).every((u) => l.modifiers[u] ? n[u] : !n[u]);
2256
2311
  if (!l.key) return s;
2257
- const t = n.key != null && n.key.toLowerCase() === l.key, a = (c = l.key, /^[a-z]$/.test(c) ? `key${c}` : /^[0-9]$/.test(c) ? `digit${c}` : Ul[c] || null);
2258
- var c;
2259
- const r = !n.isComposing && a != null && n.code != null && n.code.toLowerCase() === a;
2260
- return s && (t || r);
2312
+ const t = n.key != null && n.key.toLowerCase() === l.key, i = (d = l.key, /^[a-z]$/.test(d) ? `key${d}` : /^[0-9]$/.test(d) ? `digit${d}` : Gl[d] || null);
2313
+ var d;
2314
+ const c = !n.isComposing && i != null && n.code != null && n.code.toLowerCase() === i;
2315
+ return s && (t || c);
2261
2316
  }
2262
- function Rl(e = {}) {
2317
+ function Zl(e = {}) {
2263
2318
  const n = Math.max(1, e.limit == null ? 300 : e.limit), l = e.coalesceMs == null ? 300 : e.coalesceMs;
2264
- let s = [], t = null, a = null;
2265
- const c = (r) => {
2266
- s = s.slice(0, t + 1), s.push(r), s.length > n && (s = s.slice(s.length - n)), t = s.length - 1;
2319
+ let s = [], t = null, i = null;
2320
+ const d = (c) => {
2321
+ s = s.slice(0, t + 1), s.push(c), s.length > n && (s = s.slice(s.length - n)), t = s.length - 1;
2267
2322
  };
2268
- return (r, u) => {
2269
- const d = u.type === "keydown" && ie("ctrl/cmd+z", u), i = u.type === "keydown" && (ie("ctrl/cmd+shift+z", u) || ie("ctrl+y", u));
2270
- if ((d || i) && u.preventDefault(), t === null) return s = [r], void (t = 0);
2271
- if (d) return a = null, s[t].value !== r.value ? c(r) : s[t] = r, t = Math.max(0, t - 1), s[t];
2272
- if (i) return a = null, s[t].value !== r.value ? void c(r) : (t = Math.min(s.length - 1, t + 1), s[t]);
2273
- if (u.type === "keydown") return s[t].value !== r.value ? (a = null, void c(r)) : void (s[t] = r);
2323
+ return (c, u) => {
2324
+ const a = u.type === "keydown" && ie("ctrl/cmd+z", u), r = u.type === "keydown" && (ie("ctrl/cmd+shift+z", u) || ie("ctrl+y", u));
2325
+ if ((a || r) && u.preventDefault(), t === null) return s = [c], void (t = 0);
2326
+ if (a) return i = null, s[t].value !== c.value ? d(c) : s[t] = c, t = Math.max(0, t - 1), s[t];
2327
+ if (r) return i = null, s[t].value !== c.value ? void d(c) : (t = Math.min(s.length - 1, t + 1), s[t]);
2328
+ if (u.type === "keydown") return s[t].value !== c.value ? (i = null, void d(c)) : void (s[t] = c);
2274
2329
  if (u.type === "input") {
2275
- const m = u.timeStamp, p = m != null && a != null && m - a <= l;
2276
- if (a = m ?? null, p) return void (s[t] = r);
2277
- c(r);
2330
+ const m = u.timeStamp, p = m != null && i != null && m - i <= l;
2331
+ if (i = m ?? null, p) return void (s[t] = c);
2332
+ d(c);
2278
2333
  }
2279
2334
  };
2280
2335
  }
2281
- const Kl = () => (e, n) => {
2336
+ const Jl = () => (e, n) => {
2282
2337
  const { value: l, selectionStart: s, selectionEnd: t } = e;
2283
2338
  if (!ie("enter", n) || n.type !== "keydown") return;
2284
- const a = l.substring(0, s).split(`
2285
- `).pop(), c = /^\s+/.exec(a);
2286
- if (!c) return;
2339
+ const i = l.substring(0, s).split(`
2340
+ `).pop(), d = /^\s+/.exec(i);
2341
+ if (!d) return;
2287
2342
  n.preventDefault();
2288
- const r = `
2289
- ` + c[0];
2290
- return { value: l.substring(0, s) + r + l.substring(t), selectionStart: s + r.length, selectionEnd: s + r.length };
2291
- }, Wl = () => (e, n) => {
2343
+ const c = `
2344
+ ` + d[0];
2345
+ return { value: l.substring(0, s) + c + l.substring(t), selectionStart: s + c.length, selectionEnd: s + c.length };
2346
+ }, Xl = () => (e, n) => {
2292
2347
  if (typeof KeyboardEvent > "u" || !(n instanceof KeyboardEvent) || n.key !== "Enter")
2293
2348
  return;
2294
2349
  const { value: l, selectionStart: s, selectionEnd: t } = e;
2295
2350
  if (s !== t)
2296
2351
  return;
2297
- const a = l.lastIndexOf(`
2298
- `, s - 1) + 1, c = l.indexOf(`
2299
- `, s), r = c === -1 ? l.length : c;
2300
- if (l.slice(s, r).trim().length > 0)
2352
+ const i = l.lastIndexOf(`
2353
+ `, s - 1) + 1, d = l.indexOf(`
2354
+ `, s), c = d === -1 ? l.length : d;
2355
+ if (l.slice(s, c).trim().length > 0)
2301
2356
  return;
2302
- const i = l.substring(a, r).trimEnd();
2303
- if (i.endsWith(";") || i.length === 0)
2357
+ const r = l.substring(i, c).trimEnd();
2358
+ if (r.endsWith(";") || r.length === 0)
2304
2359
  return;
2305
- const m = l.slice(0, r) + ";" + l.slice(r), p = s + 1;
2360
+ const m = l.slice(0, c) + ";" + l.slice(c), p = s + 1;
2306
2361
  return {
2307
2362
  value: m,
2308
2363
  selectionStart: p,
2309
2364
  selectionEnd: p
2310
2365
  };
2311
2366
  };
2312
- let we = [], K = null, O = 0, X = [], Q = null, ee = null, Ce, We, G = null, ne = null;
2313
- const ql = (e) => {
2314
- const { customSuggestions: n = [], minPrefixLength: l = 1, maxSuggestions: s = 20, tabSize: t = 2, tooltip: a = { enabled: !0 }, i18n: c, renderMenu: r, renderTooltip: u } = e;
2315
- if (!r || !u)
2367
+ let we = [], K = null, F = 0, X = [], Q = null, ee = null, Ce, We, G = null, ne = null;
2368
+ const Yl = (e) => {
2369
+ const { customSuggestions: n = [], minPrefixLength: l = 1, maxSuggestions: s = 20, tabSize: t = 2, tooltip: i = { enabled: !0 }, i18n: d, renderMenu: c, renderTooltip: u } = e;
2370
+ if (!c || !u)
2316
2371
  throw new Error("renderMenu and renderTooltip are required");
2317
- return we = [...n].map((d) => c(d)), Ce = r, We = u, (d, i) => {
2318
- if (typeof KeyboardEvent > "u" || !(i instanceof KeyboardEvent))
2372
+ return we = [...n].map((a) => d(a)), Ce = c, We = u, (a, r) => {
2373
+ if (typeof KeyboardEvent > "u" || !(r instanceof KeyboardEvent))
2319
2374
  return;
2320
- const { value: m, selectionStart: p } = d, b = i.target;
2321
- if (ee = b, a.enabled !== !1 && !b.dataset.tooltipInitialized && (b.dataset.tooltipInitialized = "true", b.addEventListener("mouseup", () => {
2322
- setTimeout(() => Ee(b), 100);
2375
+ const { value: m, selectionStart: p } = a, b = r.target;
2376
+ if (ee = b, i.enabled !== !1 && !b.dataset.tooltipInitialized && (b.dataset.tooltipInitialized = "true", b.addEventListener("mouseup", () => {
2377
+ setTimeout(() => Be(b), 100);
2323
2378
  }), b.addEventListener("keyup", () => {
2324
- setTimeout(() => Ee(b), 100);
2379
+ setTimeout(() => Be(b), 100);
2325
2380
  })), K) {
2326
- switch (i.key) {
2381
+ switch (r.key) {
2327
2382
  case "ArrowDown":
2328
- return i.preventDefault(), O < X.length - 1 && (O++, te()), { ...d };
2383
+ return r.preventDefault(), F < X.length - 1 && (F++, te()), { ...a };
2329
2384
  case "ArrowUp":
2330
- return i.preventDefault(), O > 0 && (O--, te()), { ...d };
2385
+ return r.preventDefault(), F > 0 && (F--, te()), { ...a };
2331
2386
  case "Enter":
2332
- if (i.preventDefault(), X[O]) {
2333
- const g = be(d, X[O]);
2334
- return Y(), g;
2387
+ if (r.preventDefault(), X[F]) {
2388
+ const h = ye(a, X[F]);
2389
+ return Y(), h;
2335
2390
  }
2336
2391
  return;
2337
2392
  case "Tab":
2338
- if (i.preventDefault(), X[O]) {
2339
- const g = be(d, X[O]);
2340
- return Y(), g;
2393
+ if (r.preventDefault(), X[F]) {
2394
+ const h = ye(a, X[F]);
2395
+ return Y(), h;
2341
2396
  }
2342
2397
  return;
2343
2398
  case "Escape":
2344
- return i.preventDefault(), Y(), { ...d };
2399
+ return r.preventDefault(), Y(), { ...a };
2345
2400
  case "Backspace":
2346
2401
  setTimeout(() => {
2347
2402
  if (ee) {
2348
- const g = ee.value, x = ee.selectionStart, z = me(g, x), B = g.slice(z, x);
2349
- if (B.length < l)
2403
+ const h = ee.value, x = ee.selectionStart, z = fe(h, x), V = h.slice(z, x);
2404
+ if (V.length < l)
2350
2405
  Y();
2351
2406
  else {
2352
- const w = he(B).slice(0, s);
2353
- w.length === 0 ? Y() : (X = w, O = 0, te());
2407
+ const w = be(V).slice(0, s);
2408
+ w.length === 0 ? Y() : (X = w, F = 0, te());
2354
2409
  }
2355
2410
  }
2356
2411
  }, 0);
2357
2412
  return;
2358
2413
  }
2359
- if (["ArrowDown", "ArrowUp", "Enter", "Tab", "Escape", "Backspace"].includes(i.key))
2360
- return { ...d };
2414
+ if (["ArrowDown", "ArrowUp", "Enter", "Tab", "Escape", "Backspace"].includes(r.key))
2415
+ return { ...a };
2361
2416
  }
2362
- if (ie("tab", i)) {
2363
- i.preventDefault();
2364
- const g = me(m, p), x = m.slice(g, p);
2417
+ if (ie("tab", r)) {
2418
+ r.preventDefault();
2419
+ const h = fe(m, p), x = m.slice(h, p);
2365
2420
  if (x.length > 0) {
2366
- const P = he(x);
2367
- if (P.length > 0)
2368
- return be(d, P[0]);
2421
+ const H = be(x);
2422
+ if (H.length > 0)
2423
+ return ye(a, H[0]);
2369
2424
  }
2370
- const z = " ".repeat(t), B = m.slice(0, p) + z + m.slice(p), w = p + t;
2425
+ const z = " ".repeat(t), V = m.slice(0, p) + z + m.slice(p), w = p + t;
2371
2426
  return {
2372
- value: B,
2427
+ value: V,
2373
2428
  selectionStart: w,
2374
2429
  selectionEnd: w
2375
2430
  };
2376
2431
  }
2377
- if (!(i.key.length !== 1 || i.ctrlKey || i.metaKey || i.altKey))
2432
+ if (!(r.key.length !== 1 || r.ctrlKey || r.metaKey || r.altKey))
2378
2433
  return Q && clearTimeout(Q), Q = setTimeout(() => {
2379
2434
  Q = null;
2380
- const g = b.value, x = b.selectionStart, z = me(g, x), B = g.slice(z, x);
2381
- if (B.length < l) {
2435
+ const h = b.value, x = b.selectionStart, z = fe(h, x), V = h.slice(z, x);
2436
+ if (V.length < l) {
2382
2437
  Y();
2383
2438
  return;
2384
2439
  }
2385
- let w = he(B);
2440
+ let w = be(V);
2386
2441
  if (w = w.slice(0, s), w.length === 0) {
2387
2442
  Y();
2388
2443
  return;
2389
2444
  }
2390
- X = w, O = 0, K ? te() : Gl(b, w);
2391
- }, 0), { ...d };
2445
+ X = w, F = 0, K ? te() : Ql(b, w);
2446
+ }, 0), { ...a };
2392
2447
  };
2393
2448
  };
2394
- function he(e) {
2449
+ function be(e) {
2395
2450
  const n = e.toLowerCase();
2396
2451
  return we.filter((l) => {
2397
2452
  const s = l.label.toLowerCase();
2398
2453
  return s.startsWith(n) || s.includes(n) || s.split("_").map((t) => t[0]).join("").startsWith(n);
2399
2454
  }).sort((l, s) => {
2400
- const t = l.label.toLowerCase(), a = s.label.toLowerCase(), c = t.startsWith(n), r = a.startsWith(n);
2401
- if (c && !r) return -1;
2402
- if (!c && r) return 1;
2403
- const u = t.indexOf(n), d = a.indexOf(n);
2404
- return u !== d ? u - d : t.length !== a.length ? t.length - a.length : t.localeCompare(a);
2455
+ const t = l.label.toLowerCase(), i = s.label.toLowerCase(), d = t.startsWith(n), c = i.startsWith(n);
2456
+ if (d && !c) return -1;
2457
+ if (!d && c) return 1;
2458
+ const u = t.indexOf(n), a = i.indexOf(n);
2459
+ return u !== a ? u - a : t.length !== i.length ? t.length - i.length : t.localeCompare(i);
2405
2460
  });
2406
2461
  }
2407
- function me(e, n) {
2462
+ function fe(e, n) {
2408
2463
  let l = n;
2409
2464
  for (; l > 0 && /[a-zA-Z0-9_$]/.test(e[l - 1]); )
2410
2465
  l--;
2411
2466
  return l;
2412
2467
  }
2413
- function Gl(e, n) {
2414
- Y(), X = n, O = 0;
2468
+ function Ql(e, n) {
2469
+ Y(), X = n, F = 0;
2415
2470
  const l = qe(e);
2416
- K = Ce(n, O, (s) => {
2417
- O = s, te();
2471
+ K = Ce(n, F, (s) => {
2472
+ F = s, te();
2418
2473
  }), Object.assign(K.style, {
2419
2474
  position: "fixed",
2420
2475
  left: `${l.left}px`,
@@ -2424,8 +2479,8 @@ function Gl(e, n) {
2424
2479
  }
2425
2480
  function te() {
2426
2481
  if (!K || !ee) return;
2427
- const e = Ce(X, O, (l) => {
2428
- O = l, te();
2482
+ const e = Ce(X, F, (l) => {
2483
+ F = l, te();
2429
2484
  }), n = K.getBoundingClientRect();
2430
2485
  K.replaceWith(e), K = e, Object.assign(K.style, {
2431
2486
  position: "fixed",
@@ -2434,43 +2489,43 @@ function te() {
2434
2489
  zIndex: "10000"
2435
2490
  });
2436
2491
  }
2437
- function be(e, n) {
2438
- const { value: l, selectionStart: s } = e, t = me(l, s), a = n.insert || n.label, c = /\$\{([^}]*)\}/g;
2439
- let r = a;
2492
+ function ye(e, n) {
2493
+ const { value: l, selectionStart: s } = e, t = fe(l, s), i = n.insert || n.label, d = /\$\{([^}]*)\}/g;
2494
+ let c = i;
2440
2495
  const u = [];
2441
- let d;
2442
- for (; (d = c.exec(a)) !== null; ) {
2443
- const g = d[1], x = d.index, z = d[0].length;
2444
- u.push({ index: x, text: g, length: z });
2496
+ let a;
2497
+ for (; (a = d.exec(i)) !== null; ) {
2498
+ const h = a[1], x = a.index, z = a[0].length;
2499
+ u.push({ index: x, text: h, length: z });
2445
2500
  }
2446
- r = a.replace(/\$\{([^}]*)\}/g, "$1");
2447
- const i = u[0];
2448
- let m = t + r.length, p = t + r.length;
2449
- if (i) {
2450
- let g = 0, x = 0, z = !1;
2451
- for (; x < a.length && !z; ) {
2452
- const B = u.find((w) => w.index === x);
2453
- B ? (g += B.text.length, x += B.length, B === i && (m = t + g - B.text.length, p = t + g, z = !0)) : (g++, x++);
2501
+ c = i.replace(/\$\{([^}]*)\}/g, "$1");
2502
+ const r = u[0];
2503
+ let m = t + c.length, p = t + c.length;
2504
+ if (r) {
2505
+ let h = 0, x = 0, z = !1;
2506
+ for (; x < i.length && !z; ) {
2507
+ const V = u.find((w) => w.index === x);
2508
+ V ? (h += V.text.length, x += V.length, V === r && (m = t + h - V.text.length, p = t + h, z = !0)) : (h++, x++);
2454
2509
  }
2455
2510
  }
2456
2511
  return {
2457
- value: l.slice(0, t) + r + l.slice(s),
2512
+ value: l.slice(0, t) + c + l.slice(s),
2458
2513
  selectionStart: m,
2459
2514
  selectionEnd: p
2460
2515
  };
2461
2516
  }
2462
2517
  function Y() {
2463
- Q && (clearTimeout(Q), Q = null), K && (K.remove(), K = null, X = [], O = 0, ee = null);
2518
+ Q && (clearTimeout(Q), Q = null), K && (K.remove(), K = null, X = [], F = 0, ee = null);
2464
2519
  }
2465
2520
  function qe(e) {
2466
- const n = e.getBoundingClientRect(), { value: l, selectionStart: s } = e, a = l.substring(0, s).split(`
2467
- `), c = a.length, r = a[a.length - 1] || "", u = parseInt(getComputedStyle(e).lineHeight) || 20;
2521
+ const n = e.getBoundingClientRect(), { value: l, selectionStart: s } = e, i = l.substring(0, s).split(`
2522
+ `), d = i.length, c = i[i.length - 1] || "", u = parseInt(getComputedStyle(e).lineHeight) || 20;
2468
2523
  return {
2469
- left: n.left + 10 + r.length * 8,
2470
- top: n.top + (c - 1) * u
2524
+ left: n.left + 10 + c.length * 8,
2525
+ top: n.top + (d - 1) * u
2471
2526
  };
2472
2527
  }
2473
- function Ee(e) {
2528
+ function Be(e) {
2474
2529
  ne && clearTimeout(ne), ne = setTimeout(() => {
2475
2530
  const n = e.selectionStart, l = e.selectionEnd;
2476
2531
  if (n === l) {
@@ -2482,13 +2537,13 @@ function Ee(e) {
2482
2537
  ae();
2483
2538
  return;
2484
2539
  }
2485
- const t = we.find((r) => r.label === s);
2540
+ const t = we.find((c) => c.label === s);
2486
2541
  if (!t) {
2487
2542
  ae();
2488
2543
  return;
2489
2544
  }
2490
- const a = qe(e), c = We(t, a);
2491
- c.style.opacity = "0", G && G.remove(), G = c, document.body.appendChild(G), requestAnimationFrame(() => {
2545
+ const i = qe(e), d = We(t, i);
2546
+ d.style.opacity = "0", G && G.remove(), G = d, document.body.appendChild(G), requestAnimationFrame(() => {
2492
2547
  G && (G.style.opacity = "1");
2493
2548
  }), setTimeout(() => ae(), 3e3);
2494
2549
  }, 300);
@@ -2502,47 +2557,47 @@ typeof document < "u" && document.addEventListener("mousedown", (e) => {
2502
2557
  const n = e.target;
2503
2558
  K && !K.contains(n) && Y(), G && !G.contains(n) && ae();
2504
2559
  });
2505
- const ye = (e) => e.replace(/&/g, "&amp;").replace(/</g, "&lt;").replace(/>/g, "&gt;"), Zl = ["else", "end", "call", "fade"], Jl = (e) => e.replace(/[.*+?^${}()|[\]\\]/g, "\\$&"), Xl = (e) => {
2506
- const n = e.filter((r) => r.type !== "var").map((r) => r.label), c = `(\\/\\/[^\\n]*)|('[^'\\n]*')|(\\b\\d+(?:\\.\\d+)?\\b)|(\\b(?:${Array.from(/* @__PURE__ */ new Set([...Zl, ...n])).map(Jl).join("|")})\\b)|(\\$[a-zA-Z_][a-zA-Z0-9_]*)|(\\b(?:btn_\\d+(?:_\\d+)?)\\b)|([;:(){}])`;
2507
- return new RegExp(c, "g");
2508
- }, Yl = (e) => (n) => {
2509
- const l = Xl(e);
2560
+ const xe = (e) => e.replace(/&/g, "&amp;").replace(/</g, "&lt;").replace(/>/g, "&gt;"), eo = ["else", "end", "call", "fade"], to = (e) => e.replace(/[.*+?^${}()|[\]\\]/g, "\\$&"), no = (e) => {
2561
+ const n = e.filter((c) => c.type !== "var").map((c) => c.label), d = `(\\/\\/[^\\n]*)|('[^'\\n]*')|(\\b\\d+(?:\\.\\d+)?\\b)|(\\b(?:${Array.from(/* @__PURE__ */ new Set([...eo, ...n])).map(to).join("|")})\\b)|(\\$[a-zA-Z_][a-zA-Z0-9_]*)|(\\b(?:btn_\\d+(?:_\\d+)?)\\b)|([;:(){}])`;
2562
+ return new RegExp(d, "g");
2563
+ }, so = (e) => (n) => {
2564
+ const l = no(e);
2510
2565
  let s = "", t = 0;
2511
- for (const a of n.matchAll(l)) {
2512
- const [c, r, u, d, i, m, p, b] = a;
2513
- let g = "";
2514
- r ? g = "comment" : u ? g = "str" : d ? g = "num" : i ? g = "word" : m ? g = "var" : p ? g = "event" : b && (g = "operator"), s += ye(n.slice(t, a.index)), s += `<span class="tok--${g}">${ye(c)}</span>`, t = a.index + c.length;
2566
+ for (const i of n.matchAll(l)) {
2567
+ const [d, c, u, a, r, m, p, b] = i;
2568
+ let h = "";
2569
+ c ? h = "comment" : u ? h = "str" : a ? h = "num" : r ? h = "word" : m ? h = "var" : p ? h = "event" : b && (h = "operator"), s += xe(n.slice(t, i.index)), s += `<span class="tok--${h}">${xe(d)}</span>`, t = i.index + d.length;
2515
2570
  }
2516
- return s += ye(n.slice(t)), s;
2571
+ return s += xe(n.slice(t)), s;
2517
2572
  }, Ge = {
2518
2573
  word: "text-blue-600 dark:text-blue-400",
2519
2574
  func: "text-yellow-600 dark:text-yellow-400",
2520
2575
  var: "text-cyan-600 dark:text-cyan-400",
2521
2576
  event: "text-purple-600 dark:text-purple-400"
2522
- }, Ql = (e, n, l) => {
2577
+ }, lo = (e, n, l) => {
2523
2578
  const s = document.createElement("div");
2524
2579
  return s.className = `
2525
2580
  fixed z-[10000] min-w-[250px] max-w-[400px] max-h-[250px]
2526
2581
  overflow-y-auto p-1 rounded-lg shadow-lg border
2527
2582
  border-gray-200 dark:border-gray-700 bg-white dark:bg-gray-800
2528
2583
  text-sm font-mono scrollbar pointer-events-none
2529
- `, e.forEach((t, a) => {
2530
- const c = a === n, r = document.createElement("div");
2531
- r.className = `
2584
+ `, e.forEach((t, i) => {
2585
+ const d = i === n, c = document.createElement("div");
2586
+ c.className = `
2532
2587
  flex items-center justify-between gap-2 px-3 py-1.5 cursor-pointer
2533
2588
  rounded transition-colors duration-100 border-l-2
2534
- ${c ? "border-blue-500 dark:border-blue-400 bg-blue-50 dark:bg-blue-900/30" : "border-transparent hover:bg-gray-100 dark:hover:bg-gray-700"}
2589
+ ${d ? "border-blue-500 dark:border-blue-400 bg-blue-50 dark:bg-blue-900/30" : "border-transparent hover:bg-gray-100 dark:hover:bg-gray-700"}
2535
2590
  `;
2536
2591
  const u = Ge[t.type] || "text-gray-700 dark:text-gray-300";
2537
- r.innerHTML = `
2592
+ c.innerHTML = `
2538
2593
  <div class="flex items-center gap-2 flex-1">
2539
2594
  <span class="${u} font-medium">${t.label}</span>
2540
2595
  ${t.detail ? `<span class="text-xs text-gray-500 dark:text-gray-400 ml-2">${t.detail}</span>` : ""}
2541
2596
  </div>
2542
2597
  ${t.description ? `<span class="text-xs text-gray-400 dark:text-gray-500">${t.description}</span>` : ""}
2543
- `, r.addEventListener("click", () => l(a)), s.appendChild(r);
2598
+ `, c.addEventListener("click", () => l(i)), s.appendChild(c);
2544
2599
  }), s;
2545
- }, eo = (e, n) => {
2600
+ }, oo = (e, n) => {
2546
2601
  const l = document.createElement("div");
2547
2602
  l.className = `
2548
2603
  fixed z-[10001] px-3 py-2 font-mono text-sm max-w-[300px]
@@ -2556,12 +2611,12 @@ const ye = (e) => e.replace(/&/g, "&amp;").replace(/</g, "&lt;").replace(/>/g, "
2556
2611
  `;
2557
2612
  let t = `<div class="font-medium ${Ge[e.type] || "text-gray-700 dark:text-gray-300"}">${e.label}</div>`;
2558
2613
  e.detail && (t += `<div class="text-gray-500 dark:text-gray-400 mt-0.5 text-xs">${e.detail}</div>`), e.description && (t += `<div class="text-gray-400 dark:text-gray-500 text-xs mt-1 pt-1 border-t border-gray-200 dark:border-gray-700">${e.description}</div>`), l.innerHTML = t;
2559
- const a = document.createElement("div");
2560
- return a.className = `
2614
+ const i = document.createElement("div");
2615
+ return i.className = `
2561
2616
  absolute bottom-[-6px] left-1/2 w-2.5 h-2.5 -translate-x-1/2 rotate-45
2562
2617
  bg-white dark:bg-gray-800 border-r border-b border-gray-200 dark:border-gray-700
2563
- `, l.appendChild(a), l;
2564
- }, to = [
2618
+ `, l.appendChild(i), l;
2619
+ }, ao = [
2565
2620
  { label: "if", type: "word", insert: `if:\${$v0<10};
2566
2621
 
2567
2622
  else;
@@ -2596,7 +2651,7 @@ end;`, detail: "event(name: string)" },
2596
2651
  { label: "$e", type: "var", insert: "$e${0}", detail: "var event" },
2597
2652
  { label: "$c", type: "var", insert: "$c${0}", detail: "var call" },
2598
2653
  { label: "$p", type: "var", insert: "$p${0}", detail: "gpio" }
2599
- ], ta = /* @__PURE__ */ S({
2654
+ ], ia = /* @__PURE__ */ S({
2600
2655
  __name: "ScriptEditor",
2601
2656
  props: {
2602
2657
  modelValue: {},
@@ -2606,64 +2661,64 @@ end;`, detail: "event(name: string)" },
2606
2661
  setup(e, { emit: n }) {
2607
2662
  const l = n;
2608
2663
  let s;
2609
- const t = [...to, ...e.suggestions];
2664
+ const t = [...ao, ...e.suggestions];
2610
2665
  return re(
2611
2666
  () => e.modelValue,
2612
- (a) => {
2613
- s.update({ value: a });
2667
+ (i) => {
2668
+ s.update({ value: i });
2614
2669
  }
2615
2670
  ), le(() => {
2616
- s = new Ol("#editor", {
2671
+ s = new Wl("#editor", {
2617
2672
  value: e.modelValue,
2618
2673
  lineNumbers: !0,
2619
- highlighters: [Yl(t)],
2674
+ highlighters: [so(t)],
2620
2675
  plugins: [
2621
- Rl(),
2622
- Kl(),
2623
- ql({
2676
+ Zl(),
2677
+ Jl(),
2678
+ Yl({
2624
2679
  customSuggestions: t,
2625
2680
  minPrefixLength: 1,
2626
2681
  maxSuggestions: 20,
2627
- i18n: (a) => a,
2682
+ i18n: (i) => i,
2628
2683
  tooltip: {
2629
2684
  enabled: !0
2630
2685
  },
2631
- renderMenu: Ql,
2632
- renderTooltip: eo
2686
+ renderMenu: lo,
2687
+ renderTooltip: oo
2633
2688
  }),
2634
- Wl()
2689
+ Xl()
2635
2690
  ],
2636
2691
  styles: { fontSize: "14px" }
2637
- }), s.onUpdate((a) => {
2638
- l("update:modelValue", a);
2692
+ }), s.onUpdate((i) => {
2693
+ l("update:modelValue", i);
2639
2694
  });
2640
2695
  }), Me(() => {
2641
2696
  s.destroy();
2642
- }), (a, c) => (f(), v("div", null, [...c[0] || (c[0] = [
2697
+ }), (i, d) => (f(), v("div", null, [...d[0] || (d[0] = [
2643
2698
  o("div", {
2644
2699
  class: "",
2645
2700
  id: "editor"
2646
2701
  }, null, -1)
2647
2702
  ])]));
2648
2703
  }
2649
- }), no = { class: "max-w-4xl mx-auto" }, so = {
2704
+ }), io = { class: "max-w-4xl mx-auto" }, ro = {
2650
2705
  key: 0,
2651
2706
  class: "text-sm"
2652
- }, lo = {
2707
+ }, co = {
2653
2708
  key: 0,
2654
2709
  class: "text-gray-500"
2655
- }, oo = {
2710
+ }, uo = {
2656
2711
  key: 1,
2657
2712
  class: "text-red-600"
2658
- }, ao = ["innerHTML"], io = "https://raw.githubusercontent.com/bondrogeen/vuesp/refs/heads/master/github/docs/scriptrunner/", ro = "https://cdn.jsdelivr.net/npm/marked/lib/marked.umd.js", na = /* @__PURE__ */ S({
2713
+ }, mo = ["innerHTML"], fo = "https://raw.githubusercontent.com/bondrogeen/vuesp/refs/heads/master/github/docs/scriptrunner/", po = "https://cdn.jsdelivr.net/npm/marked/lib/marked.umd.js", ra = /* @__PURE__ */ S({
2659
2714
  __name: "ScriptViewDocs",
2660
2715
  props: {
2661
2716
  lang: { default: "en" }
2662
2717
  },
2663
2718
  setup(e) {
2664
- const n = A(""), l = A(""), s = A(null), t = A(!1), a = A(null);
2665
- let c = null;
2666
- const r = () => new Promise((i, m) => {
2719
+ const n = A(""), l = A(""), s = A(null), t = A(!1), i = A(null);
2720
+ let d = null;
2721
+ const c = () => new Promise((r, m) => {
2667
2722
  if (typeof window > "u" || typeof document > "u") {
2668
2723
  m(new Error("Markdown loading is available only in a browser"));
2669
2724
  return;
@@ -2673,116 +2728,116 @@ end;`, detail: "event(name: string)" },
2673
2728
  gfm: !0,
2674
2729
  breaks: !0,
2675
2730
  headerIds: !1
2676
- }), i(window.marked);
2731
+ }), r(window.marked);
2677
2732
  return;
2678
2733
  }
2679
2734
  const p = document.createElement("script");
2680
- p.src = ro, p.async = !0, p.onload = () => {
2735
+ p.src = po, p.async = !0, p.onload = () => {
2681
2736
  window.marked ? (window.marked.setOptions({
2682
2737
  gfm: !0,
2683
2738
  breaks: !0,
2684
2739
  headerIds: !1
2685
- }), i(window.marked)) : m(new Error("Marked library not found after loading"));
2740
+ }), r(window.marked)) : m(new Error("Marked library not found after loading"));
2686
2741
  }, p.onerror = () => {
2687
2742
  m(new Error("Failed to load Marked library from CDN"));
2688
2743
  }, document.head.appendChild(p);
2689
- }), u = (i) => {
2690
- const m = i.split(`
2744
+ }), u = (r) => {
2745
+ const m = r.split(`
2691
2746
  `), p = {};
2692
2747
  let b = !0;
2693
- for (const g of m) {
2694
- if (b && g.startsWith("#")) {
2748
+ for (const h of m) {
2749
+ if (b && h.startsWith("#")) {
2695
2750
  b = !1;
2696
2751
  continue;
2697
2752
  }
2698
- if (b && g.includes(":")) {
2699
- const [x, z] = g.split(":").map((B) => B.trim());
2753
+ if (b && h.includes(":")) {
2754
+ const [x, z] = h.split(":").map((V) => V.trim());
2700
2755
  x && z && (x.toLowerCase().includes("version") && (p.version = z), (x.toLowerCase().includes("обновлено") || x.toLowerCase().includes("updated")) && (p.updated = z));
2701
2756
  }
2702
2757
  }
2703
2758
  return p;
2704
- }, d = async (i) => {
2705
- if (!c) {
2706
- a.value = "error";
2759
+ }, a = async (r) => {
2760
+ if (!d) {
2761
+ i.value = "error";
2707
2762
  return;
2708
2763
  }
2709
- t.value = !0, a.value = null, l.value = "";
2764
+ t.value = !0, i.value = null, l.value = "";
2710
2765
  try {
2711
- const m = `${io}${i}.md`, p = await fetch(m);
2766
+ const m = `${fo}${r}.md`, p = await fetch(m);
2712
2767
  if (!p.ok)
2713
2768
  throw new Error(`HTTP ${p.status}: ${p.statusText}`);
2714
2769
  const b = await p.text();
2715
- n.value = b, s.value = u(b), l.value = c.parse(b);
2770
+ n.value = b, s.value = u(b), l.value = d.parse(b);
2716
2771
  } catch (m) {
2717
2772
  const p = m instanceof Error ? m.message : "";
2718
- a.value = p, console.error("Error loading docs:", m);
2773
+ i.value = p, console.error("Error loading docs:", m);
2719
2774
  } finally {
2720
2775
  t.value = !1;
2721
2776
  }
2722
2777
  };
2723
2778
  return le(async () => {
2724
2779
  try {
2725
- c = await r();
2726
- const i = e.lang ? "ru" : "en";
2727
- await d(i);
2728
- } catch (i) {
2729
- const m = i instanceof Error ? i.message : "";
2730
- a.value = m, console.error("Initialization error:", i);
2780
+ d = await c();
2781
+ const r = e.lang ? "ru" : "en";
2782
+ await a(r);
2783
+ } catch (r) {
2784
+ const m = r instanceof Error ? r.message : "";
2785
+ i.value = m, console.error("Initialization error:", r);
2731
2786
  }
2732
- }), (i, m) => (f(), v("div", no, [
2733
- t.value || a.value ? (f(), v("div", so, [
2734
- t.value ? (f(), v("span", lo, "⏳")) : T("", !0),
2735
- a.value ? (f(), v("span", oo, "❌ " + $(a.value), 1)) : T("", !0)
2736
- ])) : T("", !0),
2787
+ }), (r, m) => (f(), v("div", io, [
2788
+ t.value || i.value ? (f(), v("div", ro, [
2789
+ t.value ? (f(), v("span", co, "⏳")) : B("", !0),
2790
+ i.value ? (f(), v("span", uo, "❌ " + $(i.value), 1)) : B("", !0)
2791
+ ])) : B("", !0),
2737
2792
  o("div", {
2738
2793
  class: "docs-content",
2739
2794
  innerHTML: l.value
2740
- }, null, 8, ao)
2795
+ }, null, 8, mo)
2741
2796
  ]));
2742
2797
  }
2743
- }), co = { class: "my-4" }, sa = /* @__PURE__ */ S({
2798
+ }), vo = { class: "my-4" }, ca = /* @__PURE__ */ S({
2744
2799
  __name: "ScriptDialog",
2745
2800
  props: {
2746
2801
  idScript: {}
2747
2802
  },
2748
2803
  emits: ["add", "close"],
2749
2804
  setup(e, { emit: n }) {
2750
- const l = n, { defineField: s, handleSubmit: t, isValid: a } = gt({
2805
+ const l = n, { defineField: s, handleSubmit: t, isValid: i } = ht({
2751
2806
  validationSchema: () => ({
2752
- name: [ht, bt(8)]
2807
+ name: [gt, bt(8)]
2753
2808
  })
2754
- }), [c, r] = s("name"), u = () => {
2755
- l("add", c.value);
2756
- }, d = t(() => {
2757
- u(), c.value = "", l("close", new Event("close"));
2809
+ }), [d, c] = s("name"), u = () => {
2810
+ l("add", d.value);
2811
+ }, a = t(() => {
2812
+ u(), d.value = "", l("close", new Event("close"));
2758
2813
  });
2759
2814
  return le(() => {
2760
- e.idScript || (c.value = "boot");
2761
- }), (i, m) => {
2815
+ e.idScript || (d.value = "boot");
2816
+ }), (r, m) => {
2762
2817
  const p = Z, b = E;
2763
- return f(), v("div", co, [
2764
- h(p, H({
2765
- modelValue: W(c),
2766
- "onUpdate:modelValue": m[0] || (m[0] = (g) => st(c) ? c.value = g : null)
2767
- }, W(r), {
2818
+ return f(), v("div", vo, [
2819
+ g(p, P({
2820
+ modelValue: W(d),
2821
+ "onUpdate:modelValue": m[0] || (m[0] = (h) => st(d) ? d.value = h : null)
2822
+ }, W(c), {
2768
2823
  disabled: !e.idScript,
2769
- label: i.$t("name")
2824
+ label: r.$t("name")
2770
2825
  }), null, 16, ["modelValue", "disabled", "label"]),
2771
- h(b, {
2826
+ g(b, {
2772
2827
  class: "w-full",
2773
2828
  color: "blue",
2774
- disabled: !W(a),
2775
- onClick: W(d)
2829
+ disabled: !W(i),
2830
+ onClick: W(a)
2776
2831
  }, {
2777
2832
  default: y(() => [
2778
- D($(i.$t("add")), 1)
2833
+ I($(r.$t("add")), 1)
2779
2834
  ]),
2780
2835
  _: 1
2781
2836
  }, 8, ["disabled", "onClick"])
2782
2837
  ]);
2783
2838
  };
2784
2839
  }
2785
- }), la = /* @__PURE__ */ S({
2840
+ }), da = /* @__PURE__ */ S({
2786
2841
  __name: "VAutocomplete",
2787
2842
  props: {
2788
2843
  modelValue: { default: "" },
@@ -2793,31 +2848,31 @@ end;`, detail: "event(name: string)" },
2793
2848
  },
2794
2849
  emits: ["update:modelValue", "select"],
2795
2850
  setup(e, { emit: n }) {
2796
- const l = n, s = (a) => l("update:modelValue", a), t = (a, c) => {
2797
- a.click(new Event("click")), l("select", c);
2851
+ const l = n, s = (i) => l("update:modelValue", i), t = (i, d) => {
2852
+ i.click(new Event("click")), l("select", d);
2798
2853
  };
2799
- return (a, c) => (f(), j(je, H(a.$attrs, {
2854
+ return (i, d) => (f(), j(je, P(i.$attrs, {
2800
2855
  top: "50px",
2801
2856
  "hide-on-click": ""
2802
2857
  }), {
2803
- activator: y(({ on: r }) => [
2804
- h(Z, {
2858
+ activator: y(({ on: c }) => [
2859
+ g(Z, {
2805
2860
  "model-value": e.modelValue,
2806
2861
  name: e.name,
2807
2862
  message: e.message,
2808
2863
  label: e.label,
2809
2864
  "onUpdate:modelValue": s,
2810
- onClick: r.open
2865
+ onClick: c.open
2811
2866
  }, null, 8, ["model-value", "name", "message", "label", "onClick"])
2812
2867
  ]),
2813
- default: y(({ on: r }) => [
2814
- h($e, {
2868
+ default: y(({ on: c }) => [
2869
+ g($e, {
2815
2870
  items: e.items,
2816
- onClick: (u) => t(r, u)
2871
+ onClick: (u) => t(c, u)
2817
2872
  }, {
2818
2873
  default: y(({ item: u }) => [
2819
- k(a.$slots, "default", { item: u }, () => [
2820
- D($(u.name), 1)
2874
+ k(i.$slots, "default", { item: u }, () => [
2875
+ I($(u.name), 1)
2821
2876
  ])
2822
2877
  ]),
2823
2878
  _: 3
@@ -2826,20 +2881,20 @@ end;`, detail: "event(name: string)" },
2826
2881
  _: 3
2827
2882
  }, 16));
2828
2883
  }
2829
- }), uo = {
2884
+ }), ho = {
2830
2885
  viewBox: "0 0 24 24",
2831
2886
  width: "1.2em",
2832
2887
  height: "1.2em"
2833
2888
  };
2834
- function mo(e, n) {
2835
- return f(), v("svg", uo, [...n[0] || (n[0] = [
2889
+ function go(e, n) {
2890
+ return f(), v("svg", ho, [...n[0] || (n[0] = [
2836
2891
  o("path", {
2837
2892
  fill: "currentColor",
2838
2893
  d: "m12 15l-4.243-4.242l1.415-1.414L12 12.172l2.828-2.828l1.415 1.414z"
2839
2894
  }, null, -1)
2840
2895
  ])]);
2841
2896
  }
2842
- const fo = N({ name: "ri-arrow-drop-down-line", render: mo }), po = { class: "v-expansion__content max-h-0 overflow-hidden transition-all duration-300" }, vo = { class: "p-4" }, oa = /* @__PURE__ */ S({
2897
+ const bo = O({ name: "ri-arrow-drop-down-line", render: go }), yo = { class: "v-expansion__content max-h-0 overflow-hidden transition-all duration-300" }, xo = { class: "p-4" }, ua = /* @__PURE__ */ S({
2843
2898
  __name: "VExpansion",
2844
2899
  props: {
2845
2900
  label: { default: "" },
@@ -2848,19 +2903,19 @@ const fo = N({ name: "ri-arrow-drop-down-line", render: mo }), po = { class: "v-
2848
2903
  setup(e) {
2849
2904
  const n = A(null), l = A(e.value), s = () => {
2850
2905
  if (!n.value) return;
2851
- const a = n.value.querySelector(".v-expansion__content");
2852
- a && (a.style.maxHeight = l.value ? `${a.scrollHeight}px` : "0");
2906
+ const i = n.value.querySelector(".v-expansion__content");
2907
+ i && (i.style.maxHeight = l.value ? `${i.scrollHeight}px` : "0");
2853
2908
  }, t = () => {
2854
2909
  l.value = !l.value, s();
2855
2910
  };
2856
2911
  return le(() => {
2857
2912
  s();
2858
- }), (a, c) => {
2859
- const r = fo;
2913
+ }), (i, d) => {
2914
+ const c = bo;
2860
2915
  return f(), v("div", {
2861
2916
  ref_key: "root",
2862
2917
  ref: n,
2863
- class: "border-b dark:border-gray-700 border-gray-200"
2918
+ class: "glass-inset mb-2 overflow-hidden rounded-md"
2864
2919
  }, [
2865
2920
  o("div", {
2866
2921
  class: "cursor-pointer min-h-[60px] px-4 flex items-center justify-between",
@@ -2868,23 +2923,23 @@ const fo = N({ name: "ri-arrow-drop-down-line", render: mo }), po = { class: "v-
2868
2923
  }, [
2869
2924
  o("h4", null, $(e.label), 1),
2870
2925
  o("div", {
2871
- class: V(["transition text-gray-400", { "rotate-x-180": l.value }])
2926
+ class: T(["transition text-gray-400", { "rotate-x-180": l.value }])
2872
2927
  }, [
2873
- h(r, { class: "size-6" })
2928
+ g(c, { class: "size-6" })
2874
2929
  ], 2)
2875
2930
  ]),
2876
- o("div", po, [
2877
- o("div", vo, [
2878
- k(a.$slots, "default")
2931
+ o("div", yo, [
2932
+ o("div", xo, [
2933
+ k(i.$slots, "default")
2879
2934
  ])
2880
2935
  ])
2881
2936
  ], 512);
2882
2937
  };
2883
2938
  }
2884
- }), go = ["onDragstart", "onDragenter"], ho = {
2939
+ }), _o = ["onDragstart", "onDragenter"], $o = {
2885
2940
  key: 0,
2886
2941
  class: "absolute inset-0 border border-dashed border-blue-600 rounded"
2887
- }, aa = /* @__PURE__ */ S({
2942
+ }, ma = /* @__PURE__ */ S({
2888
2943
  __name: "VDragDrop",
2889
2944
  props: {
2890
2945
  items: {},
@@ -2892,31 +2947,31 @@ const fo = N({ name: "ri-arrow-drop-down-line", render: mo }), po = { class: "v-
2892
2947
  },
2893
2948
  emits: ["update:items", "order-change"],
2894
2949
  setup(e, { emit: n }) {
2895
- const l = n, s = A(null), t = A(0), a = A(-1), c = ({ id: m }) => ({
2950
+ const l = n, s = A(null), t = A(0), i = A(-1), d = ({ id: m }) => ({
2896
2951
  "opacity-30 scale-105 z-10": s.value === m,
2897
2952
  "transition-transform duration-200": s.value !== m
2898
- }), r = (m, p, b) => {
2953
+ }), c = (m, p, b) => {
2899
2954
  s.value = p, t.value = b, m.dataTransfer.effectAllowed = "move";
2900
2955
  }, u = (m) => {
2901
- s.value !== null && (a.value = m);
2902
- }, d = () => {
2903
- s.value = null, a.value = -1;
2904
- }, i = (m) => {
2905
- if (m.preventDefault(), s.value && a.value !== -1) {
2906
- const p = e.items.findIndex((g) => g[e.itemKey] === s.value), b = a.value;
2956
+ s.value !== null && (i.value = m);
2957
+ }, a = () => {
2958
+ s.value = null, i.value = -1;
2959
+ }, r = (m) => {
2960
+ if (m.preventDefault(), s.value && i.value !== -1) {
2961
+ const p = e.items.findIndex((h) => h[e.itemKey] === s.value), b = i.value;
2907
2962
  if (p !== b && b !== -1) {
2908
- const g = [...e.items], [x] = g.splice(p, 1);
2909
- g.splice(b, 0, x), l("update:items", g), l("order-change", { fromIndex: p, toIndex: b, movedItem: x, newOrder: g });
2963
+ const h = [...e.items], [x] = h.splice(p, 1);
2964
+ h.splice(b, 0, x), l("update:items", h), l("order-change", { fromIndex: p, toIndex: b, movedItem: x, newOrder: h });
2910
2965
  }
2911
2966
  }
2912
- a.value = -1;
2967
+ i.value = -1;
2913
2968
  };
2914
2969
  return (m, p) => (f(), v("div", {
2915
2970
  onDragover: p[1] || (p[1] = q(() => {
2916
2971
  }, ["prevent"])),
2917
- onDrop: i
2972
+ onDrop: r
2918
2973
  }, [
2919
- h(Le, {
2974
+ g(Le, {
2920
2975
  "enter-active-class": "transition-all duration-300 ease",
2921
2976
  "enter-from-class": "opacity-0 translate-x-8",
2922
2977
  "enter-to-class": "opacity-100 translate-x-0",
@@ -2926,33 +2981,33 @@ const fo = N({ name: "ri-arrow-drop-down-line", render: mo }), po = { class: "v-
2926
2981
  "move-class": "transition-all duration-300 ease"
2927
2982
  }, {
2928
2983
  default: y(() => [
2929
- (f(!0), v(I, null, R(e.items, (b, g) => (f(), v("div", {
2984
+ (f(!0), v(D, null, N(e.items, (b, h) => (f(), v("div", {
2930
2985
  key: `${b.id}_drug`,
2931
- class: V(["relative group", c(b)]),
2986
+ class: T(["relative group", d(b)]),
2932
2987
  draggable: "true",
2933
- onDragstart: (x) => r(x, b.id, g),
2934
- onDragenter: (x) => u(g),
2935
- onDragend: d,
2988
+ onDragstart: (x) => c(x, b.id, h),
2989
+ onDragenter: (x) => u(h),
2990
+ onDragend: a,
2936
2991
  onDragover: p[0] || (p[0] = q(() => {
2937
2992
  }, ["prevent"]))
2938
2993
  }, [
2939
2994
  k(m.$slots, "default", {
2940
2995
  item: b,
2941
2996
  key: b.id,
2942
- index: g,
2997
+ index: h,
2943
2998
  isDragging: s.value === b.id
2944
2999
  }),
2945
- a.value === g && s.value !== b.id ? (f(), v("div", ho)) : T("", !0)
2946
- ], 42, go))), 128))
3000
+ i.value === h && s.value !== b.id ? (f(), v("div", $o)) : B("", !0)
3001
+ ], 42, _o))), 128))
2947
3002
  ]),
2948
3003
  _: 3
2949
3004
  })
2950
3005
  ], 32));
2951
3006
  }
2952
- }), bo = { class: "min-w-full" }, yo = { class: "border-y border-gray-200 py-3 dark:border-gray-800" }, xo = { class: "bg-gray-200 dark:bg-gray-800" }, _o = { class: "flex items-center" }, $o = { class: "divide-y divide-gray-100 dark:divide-gray-800" }, ko = ["onClick"], wo = { class: "flex items-center text-gray-700 dark:text-gray-400" }, Co = { key: 1 }, So = {
3007
+ }), ko = { class: "glass-inset overflow-hidden rounded-md" }, wo = { class: "min-w-full" }, Co = { class: "border-y border-gray-200/70 py-3 dark:border-white/10" }, So = { class: "bg-gray-100/70 dark:bg-white/[0.04]" }, zo = { class: "flex items-center" }, Vo = { class: "divide-y divide-gray-100 dark:divide-white/5" }, To = ["onClick"], Bo = { class: "flex items-center text-gray-700 dark:text-white/70" }, Eo = { key: 1 }, Lo = {
2953
3008
  class: "py-3 whitespace-nowrap",
2954
3009
  colspan: "9"
2955
- }, zo = { class: "flex items-center justify-center text-theme-sm text-gray-700 dark:text-gray-400 px-2" }, ia = /* @__PURE__ */ S({
3010
+ }, Mo = { class: "flex items-center justify-center px-2 text-sm text-gray-500 dark:text-white/50" }, fa = /* @__PURE__ */ S({
2956
3011
  __name: "VTable",
2957
3012
  props: {
2958
3013
  headers: { default: () => [] },
@@ -2960,55 +3015,57 @@ const fo = N({ name: "ri-arrow-drop-down-line", render: mo }), po = { class: "v-
2960
3015
  },
2961
3016
  emits: ["click"],
2962
3017
  setup(e, { emit: n }) {
2963
- const l = n, s = (c, r) => l("click", c, r), t = (c) => (c == null ? void 0 : c.className) || "", a = (c, { key: r }) => c == null ? void 0 : c[r];
2964
- return (c, r) => (f(), v("table", bo, [
2965
- o("thead", yo, [
2966
- o("tr", xo, [
2967
- (f(!0), v(I, null, R(e.headers, (u, d) => (f(), v("th", {
2968
- key: d,
2969
- class: V(["py-2 whitespace-nowrap text-gray-500 dark:text-gray-400 font-normal px-4", t(u)])
2970
- }, [
2971
- k(c.$slots, "header", {
2972
- item: u,
2973
- i: d
2974
- }, () => [
2975
- o("div", _o, $(u.name), 1)
2976
- ])
2977
- ], 2))), 128))
2978
- ])
2979
- ]),
2980
- o("tbody", $o, [
2981
- e.items.length ? (f(!0), v(I, { key: 0 }, R(e.items, (u, d) => (f(), v("tr", {
2982
- key: d,
2983
- class: "hover:bg-gray-50/50 dark:hover:bg-gray-800/50",
2984
- onClick: (i) => s(u, i)
2985
- }, [
2986
- (f(!0), v(I, null, R(e.headers, (i, m) => (f(), v("td", {
2987
- key: m,
2988
- class: "py-2 px-4"
2989
- }, [
2990
- o("div", wo, [
2991
- k(c.$slots, i.key, {
3018
+ const l = n, s = (d, c) => l("click", d, c), t = (d) => (d == null ? void 0 : d.className) || "", i = (d, { key: c }) => d == null ? void 0 : d[c];
3019
+ return (d, c) => (f(), v("div", ko, [
3020
+ o("table", wo, [
3021
+ o("thead", Co, [
3022
+ o("tr", So, [
3023
+ (f(!0), v(D, null, N(e.headers, (u, a) => (f(), v("th", {
3024
+ key: a,
3025
+ class: T(["px-4 py-2 whitespace-nowrap font-normal text-gray-500 dark:text-white/50", t(u)])
3026
+ }, [
3027
+ k(d.$slots, "header", {
2992
3028
  item: u,
2993
- i: d
3029
+ i: a
2994
3030
  }, () => [
2995
- D($(a(u, i)), 1)
3031
+ o("div", zo, $(u.name), 1)
2996
3032
  ])
2997
- ])
2998
- ]))), 128))
2999
- ], 8, ko))), 128)) : (f(), v("tr", Co, [
3000
- o("td", So, [
3001
- o("div", zo, [
3002
- k(c.$slots, "empty", {}, () => [
3003
- r[0] || (r[0] = D("The list is empty", -1))
3033
+ ], 2))), 128))
3034
+ ])
3035
+ ]),
3036
+ o("tbody", Vo, [
3037
+ e.items.length ? (f(!0), v(D, { key: 0 }, N(e.items, (u, a) => (f(), v("tr", {
3038
+ key: a,
3039
+ class: "transition-colors hover:bg-primary/[0.04] dark:hover:bg-white/[0.04]",
3040
+ onClick: (r) => s(u, r)
3041
+ }, [
3042
+ (f(!0), v(D, null, N(e.headers, (r, m) => (f(), v("td", {
3043
+ key: m,
3044
+ class: "py-2 px-4"
3045
+ }, [
3046
+ o("div", Bo, [
3047
+ k(d.$slots, r.key, {
3048
+ item: u,
3049
+ i: a
3050
+ }, () => [
3051
+ I($(i(u, r)), 1)
3052
+ ])
3053
+ ])
3054
+ ]))), 128))
3055
+ ], 8, To))), 128)) : (f(), v("tr", Eo, [
3056
+ o("td", Lo, [
3057
+ o("div", Mo, [
3058
+ k(d.$slots, "empty", {}, () => [
3059
+ c[0] || (c[0] = I("The list is empty", -1))
3060
+ ])
3004
3061
  ])
3005
3062
  ])
3006
- ])
3007
- ]))
3063
+ ]))
3064
+ ])
3008
3065
  ])
3009
3066
  ]));
3010
3067
  }
3011
- }), ra = /* @__PURE__ */ S({
3068
+ }), pa = /* @__PURE__ */ S({
3012
3069
  __name: "VTooltip",
3013
3070
  props: {
3014
3071
  timeout: {},
@@ -3020,7 +3077,7 @@ const fo = N({ name: "ri-arrow-drop-down-line", render: mo }), po = { class: "v-
3020
3077
  }, s = () => {
3021
3078
  n.value = !1;
3022
3079
  }, t = Ae("tooltip");
3023
- return pt(t, () => s()), (a, c) => (f(), v("div", {
3080
+ return pt(t, () => s()), (i, d) => (f(), v("div", {
3024
3081
  ref: "tooltip",
3025
3082
  class: "relative v-tooltip",
3026
3083
  onMouseenter: l,
@@ -3030,9 +3087,9 @@ const fo = N({ name: "ri-arrow-drop-down-line", render: mo }), po = { class: "v-
3030
3087
  type: "button",
3031
3088
  onClick: l
3032
3089
  }, [
3033
- k(a.$slots, "activator")
3090
+ k(i.$slots, "activator")
3034
3091
  ]),
3035
- h(_e, {
3092
+ g(_e, {
3036
3093
  "enter-active-class": "duration-300 ease-out",
3037
3094
  "enter-from-class": "transform opacity-0 -translate-y-2",
3038
3095
  "enter-to-class": "opacity-100 translate-y-0",
@@ -3041,7 +3098,7 @@ const fo = N({ name: "ri-arrow-drop-down-line", render: mo }), po = { class: "v-
3041
3098
  "leave-to-class": "transform opacity-0 -translate-y-2"
3042
3099
  }, {
3043
3100
  default: y(() => [
3044
- k(a.$slots, "default", { show: n.value })
3101
+ k(i.$slots, "default", { show: n.value })
3045
3102
  ]),
3046
3103
  _: 3
3047
3104
  })
@@ -3049,51 +3106,51 @@ const fo = N({ name: "ri-arrow-drop-down-line", render: mo }), po = { class: "v-
3049
3106
  }
3050
3107
  });
3051
3108
  export {
3052
- Io as AppAside,
3053
- jo as AppHeader,
3054
- No as AppNav,
3055
- Ho as AppNotification,
3056
- Po as AppOverlay,
3057
- Oo as AppProgress,
3058
- qo as BlockBreadcrumb,
3059
- Fo as BlockInfo,
3060
- Uo as BlockScan,
3061
- Ro as BlockService,
3062
- Ko as BlockStatus,
3063
- Wo as BlockUpdate,
3109
+ Fo as AppAside,
3110
+ Uo as AppHeader,
3111
+ Wo as AppNav,
3112
+ Ro as AppNotification,
3113
+ Ko as AppOverlay,
3114
+ qo as AppProgress,
3115
+ Qo as BlockBreadcrumb,
3116
+ Go as BlockInfo,
3117
+ Zo as BlockScan,
3118
+ Jo as BlockService,
3119
+ Xo as BlockStatus,
3120
+ Yo as BlockUpdate,
3064
3121
  oe as CardBase,
3065
- Go as CardButton,
3066
- Zo as CardDate,
3067
- Jo as CardDimmer,
3068
- Xo as CardInfo,
3069
- Yo as CardInput,
3070
- Qo as CardList,
3071
- ua as CardMain,
3122
+ ea as CardButton,
3123
+ ta as CardDate,
3124
+ na as CardDimmer,
3125
+ sa as CardInfo,
3126
+ la as CardInput,
3127
+ oa as CardList,
3128
+ ga as CardMain,
3072
3129
  Wt as CardNotification,
3073
- ea as ItemEdit,
3074
- sa as ScriptDialog,
3075
- ta as ScriptEditor,
3076
- na as ScriptViewDocs,
3077
- la as VAutocomplete,
3130
+ aa as ItemEdit,
3131
+ ca as ScriptDialog,
3132
+ ia as ScriptEditor,
3133
+ ra as ScriptViewDocs,
3134
+ da as VAutocomplete,
3078
3135
  E as VButton,
3079
- fl as VCheckbox,
3080
- He as VDialog,
3081
- aa as VDragDrop,
3136
+ bl as VCheckbox,
3137
+ Pe as VDialog,
3138
+ ma as VDragDrop,
3082
3139
  je as VDropdown,
3083
- oa as VExpansion,
3084
- Xn as VFile,
3140
+ ua as VExpansion,
3141
+ ns as VFile,
3085
3142
  ge as VFunc,
3086
3143
  Ie as VIconLogo,
3087
3144
  lt as VIconLogoMini,
3088
3145
  $e as VList,
3089
3146
  Ue as VListObject,
3090
3147
  it as VLoader,
3091
- ma as VPopup,
3148
+ ba as VPopup,
3092
3149
  se as VSelect,
3093
- ia as VTable,
3094
- al as VTabs,
3150
+ fa as VTable,
3151
+ ul as VTabs,
3095
3152
  Z as VTextField,
3096
3153
  Fe as VTextWrapper,
3097
- ra as VTooltip,
3154
+ pa as VTooltip,
3098
3155
  at as VWifiIcon
3099
3156
  };